[ { "slug": "gmail", "name": "Gmail", "logo": "https://logos.composio.dev/api/gmail", "description": "Gmail is Google’s email service, featuring spam protection, search functions, and seamless integration with other G Suite apps for productivity", "category": "email", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 63, "triggerCount": 2, "version": "20260703_00", "tools": [ { "slug": "GMAIL_ADD_LABEL_TO_EMAIL", "name": "Modify email labels", "description": "Adds and/or removes specified Gmail labels for a message; ensure `message_id` and all `label_ids` are valid (use 'listLabels' for custom label IDs)." }, { "slug": "GMAIL_BATCH_DELETE_MESSAGES", "name": "Batch delete Gmail messages", "description": "Tool to permanently delete multiple Gmail messages in bulk, bypassing Trash with no recovery possible. Use when you need to efficiently remove large numbers of emails (e.g., retention enforcement, mailbox hygiene). Use GMAIL_MOVE_TO_TRASH instead when reversibility may be needed. Always obtain explicit user confirmation and verify a sample of message IDs before executing. High-volume calls may trigger 429 rateLimitExceeded or 403 userRateLimitExceeded errors; apply exponential backoff." }, { "slug": "GMAIL_BATCH_MODIFY_MESSAGES", "name": "Batch modify Gmail messages", "description": "Modify labels on multiple Gmail messages in one efficient API call. Supports up to 1,000 messages per request for bulk operations like archiving, marking as read/unread, or applying custom labels. High-volume calls may return 429 rateLimitExceeded or 403 userRateLimitExceeded; apply exponential backoff." }, { "slug": "GMAIL_CREATE_EMAIL_DRAFT", "name": "Create email draft", "description": "Creates a Gmail email draft. While all fields are optional per the Gmail API, practical validation requires at least one of recipient_email, cc, or bcc and at least one of subject or body. Supports To/Cc/Bcc recipients, subject, plain/HTML body (ensure `is_html=True` for HTML), attachments, and threading. Returns a draft_id that must be used as-is with GMAIL_SEND_DRAFT — synthetic or stale IDs will fail. When creating a draft reply to an existing thread (thread_id provided), leave subject empty to stay in the same thread; setting a subject will create a NEW thread instead. HTTP 429 may occur on rapid creation/send sequences; apply exponential backoff." }, { "slug": "GMAIL_CREATE_FILTER", "name": "Create Gmail filter", "description": "Tool to create a new Gmail filter with specified criteria and actions. Use when the user wants to automatically organize incoming messages based on sender, subject, size, or other criteria. Note: you can only create a maximum of 1,000 filters per account." }, { "slug": "GMAIL_CREATE_LABEL", "name": "Create label", "description": "Creates a new label with a unique name in the specified user's Gmail account. Returns a labelId (e.g., 'Label_123') required for downstream tools like GMAIL_ADD_LABEL_TO_EMAIL, GMAIL_BATCH_MODIFY_MESSAGES, and GMAIL_MODIFY_THREAD_LABELS — those tools do not accept display names." }, { "slug": "GMAIL_CREATE_PROMPT_POST", "name": "Create Prompt Post", "description": "Send a one-shot prompt to the Sanity Content Agent. Stateless one-shot prompt endpoint. No thread management or message persistence. Ideal for simple, single-turn interactions. Use when you need to send a single prompt and receive a response without maintaining conversation context." }, { "slug": "GMAIL_DELETE_DRAFT", "name": "Delete Draft", "description": "Permanently deletes a specific Gmail draft using its ID with no recovery possible; verify the correct `draft_id` and obtain explicit user confirmation before calling. Ensure the draft exists and the user has necessary permissions for the given `user_id`." }, { "slug": "GMAIL_DELETE_FILTER", "name": "Delete Gmail filter", "description": "Tool to permanently delete a Gmail filter by its ID. Use when you need to remove an existing email filtering rule." }, { "slug": "GMAIL_DELETE_LABEL", "name": "Delete label from account (permanent)", "description": "Permanently DELETES a user-created Gmail label from the account (not from a message). WARNING: This action DELETES the label definition itself, removing it from all messages. System labels (INBOX, SENT, UNREAD, etc.) cannot be deleted. To add/remove labels from specific messages, use GMAIL_ADD_LABEL_TO_EMAIL action instead." }, { "slug": "GMAIL_DELETE_MESSAGE", "name": "Delete message", "description": "Permanently deletes a specific email message by its ID from a Gmail mailbox; for `user_id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access." }, { "slug": "GMAIL_DELETE_THREAD", "name": "Delete thread", "description": "Tool to immediately and permanently delete a specified thread and all its messages. This operation cannot be undone. Use threads.trash instead for reversible deletion." }, { "slug": "GMAIL_FETCH_EMAILS", "name": "Fetch emails", "description": "Fetches a list of email messages from a Gmail account, supporting filtering, pagination, and optional full content retrieval. Results are NOT sorted by recency; sort by internalDate client-side. The messages field may be absent or empty (valid no-results state); always null-check before accessing messageId or threadId. Null-check subject and header fields before string operations. For large result sets, prefer ids_only=true or metadata-only listing, then hydrate via GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID." }, { "slug": "GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID", "name": "Fetch message by message ID", "description": "Fetches a specific email message by its ID, provided the `message_id` exists and is accessible to the authenticated `user_id`. Spam/trash messages are excluded unless upstream list/search calls used `include_spam_trash=true`. Use `internalDate` (milliseconds since epoch) rather than header `Date` for recency checks." }, { "slug": "GMAIL_FETCH_MESSAGE_BY_THREAD_ID", "name": "Fetch Message by Thread ID", "description": "Retrieves messages from a Gmail thread using its `thread_id`, where the thread must be accessible by the specified `user_id`. Returns a `messages` array; `thread_id` is not echoed in the response. Message order is not guaranteed — sort by `internalDate` to find oldest/newest. Check `labelIds` per message to filter drafts. Concurrent bulk calls may trigger 403 `userRateLimitExceeded` or 429; cap concurrency ~10 and use exponential backoff." }, { "slug": "GMAIL_FORWARD_MESSAGE", "name": "Forward email message", "description": "Forward an existing Gmail message to specified recipients, preserving original body and attachments. Verify recipients and content before forwarding to avoid unintended exposure. Bulk forwarding may trigger 429/5xx rate limits; keep concurrency to 5–10 and apply backoff. Messages near Gmail's size limits may fail; reconstruct a smaller draft if needed." }, { "slug": "GMAIL_GET_ATTACHMENT", "name": "Get Gmail attachment", "description": "Retrieves a specific attachment by ID from a message in a user's Gmail mailbox, requiring valid message and attachment IDs. Returns the downloaded file with its MIME type and filename. Attachments exceeding ~25 MB may be exposed as Google Drive links — use GOOGLEDRIVE_DOWNLOAD_FILE when a Drive file_id is present instead." }, { "slug": "GMAIL_GET_AUTO_FORWARDING", "name": "Get Auto-Forwarding Settings", "description": "Tool to get the auto-forwarding setting for the specified account. Use when you need to retrieve the current auto-forwarding configuration including enabled status, forwarding email address, and message disposition." }, { "slug": "GMAIL_GET_CONTACTS", "name": "Get contacts", "description": "Fetches contacts (connections) for the authenticated Google account, allowing selection of specific data fields and pagination. Only covers saved contacts and 'Other Contacts'; email-header-only senders are out of scope. Contact records may have sparse data — handle missing fields gracefully. People API shares a per-user QPS quota; HTTP 429 requires exponential backoff (1s, 2s, 4s)." }, { "slug": "GMAIL_GET_DRAFT", "name": "Get Draft", "description": "Retrieves a single Gmail draft by its ID. Use this to fetch and inspect draft content before sending via GMAIL_SEND_DRAFT. The format parameter controls the level of detail returned." }, { "slug": "GMAIL_GET_FILTER", "name": "Get Gmail filter", "description": "Tool to retrieve a specific Gmail filter by its ID. Use when you need to inspect the criteria and actions of an existing filter." }, { "slug": "GMAIL_GET_LABEL", "name": "Get label details", "description": "Gets details for a specified Gmail label. Use this to retrieve label information including name, type, visibility settings, message/thread counts, and color." }, { "slug": "GMAIL_GET_LANGUAGE_SETTINGS", "name": "Get Language Settings", "description": "Tool to retrieve the language settings for a Gmail user. Use when you need to determine the display language preference for the authenticated user or a specific Gmail account." }, { "slug": "GMAIL_GET_PEOPLE", "name": "Get People", "description": "Retrieves either a specific person's details (using `resource_name`) or lists 'Other Contacts' (if `other_contacts` is true), with `person_fields` specifying the data to return. Scope is limited to the authenticated user's own contacts and 'Other Contacts' history only." }, { "slug": "GMAIL_GET_PROFILE", "name": "Get Profile", "description": "Retrieves Gmail profile information (email address, aggregate messagesTotal/threadsTotal, historyId) for a user. messagesTotal counts individual emails; threadsTotal counts conversations; neither is per-label — use GMAIL_FETCH_EMAILS with label filters for label-specific counts. The returned historyId seeds incremental sync via GMAIL_LIST_HISTORY; if historyIdTooOld is returned, rescan with GMAIL_FETCH_EMAILS before resuming. Response may be wrapped under a top-level data field; unwrap before reading fields. A successful call confirms mailbox connectivity but not full mailbox access if granted scopes are narrow. Use the returned email address to dynamically identify the authenticated account rather than hard-coding it." }, { "slug": "GMAIL_GET_VACATION_SETTINGS", "name": "Get Vacation Settings", "description": "Tool to retrieve vacation responder settings for a Gmail user. Use when you need to check if out-of-office auto-replies are configured and view their content." }, { "slug": "GMAIL_IMPORT_MESSAGE", "name": "Import message", "description": "Tool to import a message into the user's mailbox with standard email delivery scanning and classification. Use when you need to add an existing email to a Gmail account without sending it through SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages." }, { "slug": "GMAIL_INSERT_MESSAGE", "name": "Insert message into mailbox", "description": "Tool to insert a message into the user's mailbox similar to IMAP APPEND. Use when you need to add an email directly to a mailbox bypassing most scanning and classification. This does not send a message." }, { "slug": "GMAIL_LIST_CSE_IDENTITIES", "name": "List CSE identities", "description": "Tool to list client-side encrypted identities for an authenticated user. Use when you need to retrieve CSE identity configurations including key pair associations." }, { "slug": "GMAIL_LIST_CSE_KEYPAIRS", "name": "List CSE key pairs", "description": "Tool to list client-side encryption key pairs for an authenticated user. Use when you need to retrieve CSE keypair configurations including public keys and enablement states. Supports pagination for large result sets." }, { "slug": "GMAIL_LIST_DRAFTS", "name": "List Drafts", "description": "Retrieves a paginated list of email drafts from a user's Gmail account. Use verbose=true to get full draft details including subject, body, sender, and timestamp. Draft ordering is non-guaranteed; iterate using page_token until it is absent to retrieve all drafts. Newly created drafts may not appear immediately. Rapid calls may trigger 403 userRateLimitExceeded or 429 errors; apply exponential backoff (1s, 2s, 4s) before retrying." }, { "slug": "GMAIL_LIST_FILTERS", "name": "List Gmail filters", "description": "Tool to list all Gmail filters (rules) in the mailbox. Use for security audits to detect malicious filter rules or before creating new filters to avoid duplicates." }, { "slug": "GMAIL_LIST_FORWARDING_ADDRESSES", "name": "List forwarding addresses", "description": "Tool to list all forwarding addresses for the specified Gmail account. Use when you need to retrieve the email addresses that are allowed to be used for forwarding messages." }, { "slug": "GMAIL_LIST_HISTORY", "name": "List Gmail history", "description": "Tool to list Gmail mailbox change history since a known startHistoryId. Use for incremental mailbox syncs. Persist the latest historyId as a checkpoint across sessions; without it, incremental sync is unreliable. An empty history list in the response is valid and means no new changes occurred." }, { "slug": "GMAIL_LIST_LABELS", "name": "List Gmail labels", "description": "Retrieves all system and user-created labels for a Gmail account in a single unpaginated response. Primary use: obtain internal label IDs (e.g., 'Label_123') required by other Gmail tools — display names cannot be used as label identifiers and cause silent failures or errors. System labels (INBOX, UNREAD, SPAM, TRASH, etc.) are case-sensitive and must be used exactly as returned; INBOX, SPAM, and TRASH are read-only and cannot be added/removed via label modification tools. The Gmail search 'label:' operator accepts display names, but label_ids parameters in tools like GMAIL_FETCH_EMAILS require internal IDs from this tool — mixing conventions yields zero results silently. Do not hardcode label IDs across sessions; refresh via this tool on conflict errors." }, { "slug": "GMAIL_LIST_MESSAGES", "name": "List Gmail messages (Deprecated)", "description": "DEPRECATED: Use GMAIL_FETCH_EMAILS instead. Lists the messages in the user's mailbox. Use when you need to retrieve a list of email messages with optional filtering by labels or search query." }, { "slug": "GMAIL_LIST_SEND_AS", "name": "List send-as aliases", "description": "Lists the send-as aliases for a Gmail account, including the primary address and custom 'from' aliases. Use when you need to retrieve available sending addresses for composing emails." }, { "slug": "GMAIL_LIST_SMIME_INFO", "name": "List S/MIME configs", "description": "Lists S/MIME configs for the specified send-as alias. Use when you need to retrieve all S/MIME certificate configurations associated with a specific send-as email address." }, { "slug": "GMAIL_LIST_THREADS", "name": "List threads", "description": "Retrieves a list of email threads from a Gmail account, identified by `user_id` (email address or 'me'), supporting filtering and pagination. Spam and trash are excluded by default unless explicitly targeted via `label:spam` or `label:trash` in the query." }, { "slug": "GMAIL_MODIFY_THREAD_LABELS", "name": "Modify thread labels", "description": "Adds or removes specified existing label IDs from a Gmail thread, affecting all its messages; ensure the thread ID is valid. To modify a single message only, use a message-level tool instead." }, { "slug": "GMAIL_MOVE_THREAD_TO_TRASH", "name": "Trash thread", "description": "Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash." }, { "slug": "GMAIL_MOVE_TO_TRASH", "name": "Move to Trash", "description": "Moves an existing, non-deleted email message to the trash for the specified user. Trashed messages are recoverable and still count toward storage quota until purged. Prefer this over GMAIL_BATCH_DELETE_MESSAGES when recovery may be needed. For bulk operations, use GMAIL_BATCH_MODIFY_MESSAGES or GMAIL_BATCH_DELETE_MESSAGES instead of repeated calls to this tool." }, { "slug": "GMAIL_PATCH_LABEL", "name": "Patch Label", "description": "Patches the specified user-created label. System labels (e.g., INBOX, SENT, SPAM) cannot be modified and will be rejected." }, { "slug": "GMAIL_PATCH_SEND_AS", "name": "Patch send-as alias", "description": "Tool to patch the specified send-as alias for a Gmail user. Use when you need to update properties of an existing send-as email address such as display name, reply-to address, signature, default status, or SMTP configuration." }, { "slug": "GMAIL_REMOVE_LABEL", "name": "Remove label (Deprecated)", "description": "DEPRECATED: Use GMAIL_DELETE_LABEL instead. Permanently deletes a specific, existing user-created Gmail label by its ID for a user; cannot delete system labels." }, { "slug": "GMAIL_REPLY_TO_THREAD", "name": "Reply to email thread", "description": "Sends a reply within a specific Gmail thread using the original thread's subject; do not provide a custom subject as it will start a new conversation instead of replying in-thread. Requires a valid `thread_id` and at least one of `recipient_email`, `cc`, or `bcc`. Supports optional file attachments." }, { "slug": "GMAIL_SEARCH_PEOPLE", "name": "Search People", "description": "Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'Other Contacts'. Only searches the authenticated user's contact directory — people existing solely in message headers won't appear; use GMAIL_FETCH_EMAILS for those. Results may be zero or multiple; never auto-select from ambiguous results. Results paginate via next_page_token; follow until empty and deduplicate by email. Many records lack emailAddresses or names even when requested — handle missing keys. Directory/organization policies may suppress entries." }, { "slug": "GMAIL_SEND_DRAFT", "name": "Send Draft", "description": "Sends an existing draft email AS-IS to recipients already defined within the draft. IMPORTANT: This action does NOT accept recipient parameters (to, cc, bcc). The Gmail API's drafts/send endpoint sends drafts to whatever recipients are already set in the draft's To, Cc, and Bcc headers - it cannot add or override recipients. If the draft has no recipients, you must either: 1. Create a new draft with recipients using GMAIL_CREATE_EMAIL_DRAFT, then send it 2. Use GMAIL_SEND_EMAIL to send a new email directly with recipients. Send is immediate and irreversible — confirm recipients and content before calling. No scheduling support; trigger at the desired UTC time externally. Gmail enforces ~25 MB message size limit and daily send caps (~500 recipients/day personal, ~2,000/day Workspace)." }, { "slug": "GMAIL_SEND_EMAIL", "name": "Send Email", "description": "Sends an email via Gmail API using the authenticated user's Google profile display name. Sends immediately and is irreversible — confirm recipients, subject, body, and attachments before calling. At least one of 'to' (or 'recipient_email'), 'cc', or 'bcc' must be provided. At least one of subject or body must be provided. Requires `is_html=True` if the body contains HTML. All common file types including PNG, JPG, PDF, MP4, etc. are supported as attachments. Gmail API limits total message size to ~25 MB after base64 encoding. To reply in an existing thread, use GMAIL_REPLY_TO_THREAD instead. No scheduled send support; enforce timing externally." }, { "slug": "GMAIL_SETTINGS_GET_IMAP", "name": "Get IMAP Settings", "description": "Retrieves the IMAP settings for a Gmail user account, including whether IMAP is enabled, auto-expunge behavior, expunge behavior, and maximum folder size." }, { "slug": "GMAIL_SETTINGS_GET_POP", "name": "Get POP settings", "description": "Tool to retrieve POP settings for a Gmail account. Use when you need to check the current POP configuration including access window and message disposition." }, { "slug": "GMAIL_SETTINGS_SEND_AS_GET", "name": "Get send-as alias", "description": "Tool to retrieve a specific send-as alias configuration for a Gmail user. Use when you need to get details about a send-as email address including display name, signature, SMTP settings, and verification status. Fails with HTTP 404 if the specified address is not a member of the send-as collection." }, { "slug": "GMAIL_STOP_WATCH", "name": "Stop watch notifications", "description": "Tool to stop receiving push notifications for a Gmail mailbox. Use when you need to disable watch notifications previously set up via the watch endpoint." }, { "slug": "GMAIL_UNTRASH_MESSAGE", "name": "Untrash Message", "description": "Tool to remove a message from trash in Gmail. Use when you need to restore a previously trashed email message." }, { "slug": "GMAIL_UNTRASH_THREAD", "name": "Untrash thread", "description": "Tool to remove a thread from trash in Gmail. Use when you need to restore a deleted thread and its messages." }, { "slug": "GMAIL_UPDATE_DRAFT", "name": "Update draft", "description": "Updates (replaces) an existing Gmail draft's content in-place by draft ID. This action replaces the entire draft content with the new message - it does not patch individual fields. All fields are optional; if not provided, you should provide complete draft content to avoid data loss." }, { "slug": "GMAIL_UPDATE_IMAP_SETTINGS", "name": "Update IMAP settings", "description": "Tool to update IMAP settings for a Gmail account. Use when you need to modify IMAP configuration such as enabling/disabling IMAP, setting auto-expunge behavior, or configuring folder size limits." }, { "slug": "GMAIL_UPDATE_LABEL", "name": "Update Label", "description": "Tool to update the properties of an existing Gmail label. Use when you need to modify label name, visibility settings, or color." }, { "slug": "GMAIL_UPDATE_LANGUAGE_SETTINGS", "name": "Update Language Settings", "description": "Tool to update the language settings for a Gmail user. Use when you need to change the display language preference for the authenticated user or a specific Gmail account. The returned displayLanguage may differ from the requested value if Gmail selects a close variant." }, { "slug": "GMAIL_UPDATE_POP_SETTINGS", "name": "Update POP settings", "description": "Tool to update POP settings for a Gmail account. Use when you need to configure POP access window or message disposition behavior." }, { "slug": "GMAIL_UPDATE_SEND_AS", "name": "Update send-as alias", "description": "Tool to update a send-as alias for a Gmail user. Use when you need to modify display name, signature, reply-to address, or SMTP settings for a send-as email address. Gmail sanitizes HTML signatures before saving. Addresses other than the primary can only be updated by service accounts with domain-wide authority." }, { "slug": "GMAIL_UPDATE_USER_ATTRIBUTES_VALUES", "name": "Update User Attributes Values", "description": "Update user attribute values for a resource. Use this action to set or update custom attributes for a user within an organization or project. When setting a value for an attribute key that also exists in SAML, the Sanity value will take precedence and shadow the SAML value." }, { "slug": "GMAIL_UPDATE_VACATION_SETTINGS", "name": "Update Vacation Settings", "description": "Tool to update vacation responder settings for a Gmail user. Use when you need to configure out-of-office auto-replies." } ], "triggers": [ { "slug": "GMAIL_EMAIL_SENT_TRIGGER", "name": "Email Sent", "description": "Triggers when a Gmail message is sent by the authenticated user. It polls the\n 'SENT' label and emits metadata including sender, recipients, subject, timestamp,\n and thread ID." }, { "slug": "GMAIL_NEW_GMAIL_MESSAGE", "name": "New Gmail Message Received Trigger", "description": "Triggers when a new message is received in Gmail." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gmail_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/contacts.readonly,https://www.googleapis.com/auth/contacts.other.readonly,https://www.googleapis.com/auth/profile.language.read,https://www.googleapis.com/auth/user.addresses.read,https://www.googleapis.com/auth/user.birthday.read,https://www.googleapis.com/auth/user.emails.read,https://www.googleapis.com/auth/user.phonenumbers.read,https://www.googleapis.com/auth/profile.emails.read,https://mail.google.com/" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "composio", "name": "Composio", "logo": "https://logos.composio.dev/api/composio", "description": "Composio enables AI Agents and LLMs to authenticate and integrate with various tools via function calling.", "category": "ai agents", "authSchemes": [ "NO_AUTH" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COMPOSIO_CHECK_ACTIVE_CONNECTION", "name": "Check active connection (deprecated)", "description": "Deprecated: use check active connections instead for bulk operations. check active connection status for a toolkit or specific connected account id. returns connection details if active, or required parameters for establishing connection if none exists. active connections enable agent actions on the toolkit." }, { "slug": "COMPOSIO_CHECK_ACTIVE_CONNECTIONS", "name": "Check multiple active connections", "description": "Check active connection status for multiple toolkits or specific connected account ids. returns connection details if active, or required parameters for establishing connection if none exists. active connections enable agent actions on toolkits." }, { "slug": "COMPOSIO_CREATE_PLAN", "name": "Create Plan", "description": "\nThis is a workflow builder that ensures the LLM produces a complete, step-by-step plan for any use case.\nWHEN TO CALL:\n- Call this tool based on COMPOSIO_SEARCH_TOOLS output. If search tools response indicates create_plan should be called and the usecase is not easy, call it.\n- Use this tool after COMPOSIO_SEARCH_TOOLS or COMPOSIO_MANAGE_CONNECTIONS to generate an execution plan for the user's use case.\n- USE for medium or hard tasks — skip it for easy ones.\n- If the user switches to a new use case in the same chat and COMPOSIO_SEARCH_TOOLS again instructs you to call the planner, you MUST call this tool again for that new use case.\n\nMemory Integration:\n- You can choose to add the memory received from the search tool into the known_fields parameter of the plan function to enhance planning with discovered relationships and information.\n\nOutputs a complete plan with sections such as \"workflow_steps\", \"complexity_assessment\", \"decision_matrix\", \"failure_handling\" \"output_format\", and more as needed.\n\nIf you skip this step for non-easy tasks, workflows will likely be incomplete, or fail during execution for complex tasks.\nCalling it guarantees reliable, accurate, and end-to-end workflows aligned with the available tools and connections.\n " }, { "slug": "COMPOSIO_ENABLE_TRIGGER", "name": "Enable trigger", "description": "Enable a specific trigger for the authenticated user." }, { "slug": "COMPOSIO_EXECUTE_TOOL", "name": "Execute Composio Tool", "description": "Execute a tool using the composio api." }, { "slug": "COMPOSIO_GET_DEPENDENCY_GRAPH", "name": "Get Tool Dependency Graph", "description": "Get the dependency graph for a given tool, showing related parent tools that might be useful. this action calls the composio labs dependency graph api to retrieve tools that are commonly used together with or before the specified tool. this helps discover related tools and understand common workflows." }, { "slug": "COMPOSIO_GET_REQUIRED_PARAMETERS", "name": "Get required parameters for connection", "description": "Gets the required parameters for connecting to a toolkit via initiate connection. returns the exact parameter names and types needed for initiate connection's parameters field. supports api keys, oauth credentials, connection fields, and hybrid authentication scenarios. if has default credentials is true, you can call initiate connection with empty parameters for seamless oauth flow." }, { "slug": "COMPOSIO_GET_RESPONSE_SCHEMA", "name": "Get response schema", "description": "Retrieves the response schema for a specified composio tool. this action fetches the complete response schema definition for any valid composio tool, returning it as a dictionary that describes the expected response structure." }, { "slug": "COMPOSIO_INITIATE_CONNECTION", "name": "Initiate connection", "description": "Initiate a connection to a toolkit with comprehensive authentication support. supports all authentication scenarios: 1. composio default oauth (no parameters needed) 2. custom oauth (user's client id/client secret) 3. api key/bearer token authentication 4. basic auth (username/password) 5. hybrid scenarios (oauth + connection fields like site name) 6. connection-only fields (subdomain, api key at connection level) 7. no authentication required automatically detects and validates auth config vs connection fields, provides helpful error messages for missing parameters." }, { "slug": "COMPOSIO_LIST_TOOLKITS", "name": "List toolkits", "description": "List all the available toolkits on composio with filtering options." }, { "slug": "COMPOSIO_LIST_TRIGGERS", "name": "List triggers", "description": "List available triggers and their configuration schemas." }, { "slug": "COMPOSIO_MANAGE_CONNECTIONS", "name": "Manage connections", "description": "\nCreate or manage connections to user's apps. Returns a branded authentication link that works for OAuth, API keys, and all other auth types.\n\nCall policy:\n- First call COMPOSIO_SEARCH_TOOLS for the user's query.\n- If COMPOSIO_SEARCH_TOOLS indicates there is no active connection for a toolkit, call COMPOSIO_MANAGE_CONNECTIONS with the exact toolkit name(s) returned.\n- Use exact toolkit slugs returned by COMPOSIO_SEARCH_TOOLS; never invent toolkit names.\n- NEVER execute any toolkit tool without an ACTIVE connection.\n\nTool Behavior:\n- If a connection is Active, the tool returns the connection details. Always use this to verify connection status and fetch metadata.\n- If a connection is not Active, returns a authentication link (redirect_url) to create new connection.\n- If reinitiate_all is true, the tool forces reconnections for all toolkits, even if they already have active connections.\n\nWorkflow after initiating connection:\n- Always show the returned redirect_url as a FORMATTED MARKDOWN LINK to the user, and ask them to click on the link to finish authentication.\n- Begin executing tools only after the connection for that toolkit is confirmed Active.\n " }, { "slug": "COMPOSIO_MULTI_EXECUTE_TOOL", "name": "Multi Execute Composio Tools", "description": "\n Fast and parallel tool executor for tools discovered through COMPOSIO_SEARCH_TOOLS. Use this tool to execute up to 50 tools in parallel across apps only when they're logically independent (no ordering/output dependencies). Response contains structured outputs ready for immediate analysis - avoid reprocessing them via remote bash/workbench tools.\n\nPrerequisites:\n- Always use valid tool slugs and their arguments. NEVER invent tool slugs or argument fields. ALWAYS pass STRICTLY schema-compliant arguments with each tool execution.\n- Ensure an ACTIVE connection exists for the toolkits that are going to be executed. If none exists, MUST initiate one via COMPOSIO_MANAGE_CONNECTIONS before execution.\n- Only batch tools that are logically independent - no ordering, no output-to-input dependencies, and no intra-call chaining (tools in one call can't use each other's outputs). DO NOT pass dummy or placeholder inputs; always resolve required inputs using appropriate tools first.\n\nUsage guidelines:\n- If COMPOSIO_SEARCH_TOOLS returns a tool that can perform the task, prefer calling it via this executor. Do not write custom API calls or ad-hoc scripts for tasks that can be completed by available Composio tools.\n- Prefer parallel execution: group independent tools into a single multi-execute call where possible.\n- Predictively set sync_response_to_workbench=true if the response may be large or needed for later scripting. It still shows response inline; if the actual response data turns out small and easy to handle, keep everything inline and SKIP workbench usage.\n- Responses contain structured outputs for each tool. RULE: Small data - process yourself inline; large data - process in the workbench.\n- ALWAYS include inline references/links to sources in MARKDOWN format directly next to the relevant text. Eg provide slack thread links alongside with summary, render document links instead of raw IDs.\n\nRestrictions: Some tools or toolkits may be disabled in this environment. If the response indicates a restriction, inform the user and STOP execution immediately. Do NOT attempt workarounds or speculative actions.\n\n\n- CRITICAL: You MUST always include the 'memory' parameter - never omit it. Even if you think there's nothing to remember, include an empty object {} for memory.\n\nMemory Storage:\n- CRITICAL FORMAT: Memory must be a dictionary where keys are app names (strings) and values are arrays of strings. NEVER pass nested objects or dictionaries as values.\n- CORRECT format: {\"slack\": [\"Channel general has ID C1234567\"], \"gmail\": [\"John's email is john@example.com\"]}\n- Write memory entries in natural, descriptive language - NOT as key-value pairs. Use full sentences that clearly describe the relationship or information.\n- ONLY store information that will be valuable for future tool executions - focus on persistent data that saves API calls.\n- STORE: ID mappings, entity relationships, configs, stable identifiers.\n- DO NOT STORE: Action descriptions, temporary status updates, logs, or \"sent/fetched\" confirmations.\n- Examples of GOOD memory (store these):\n * \"The important channel in Slack has ID C1234567 and is called #general\"\n * \"The team's main repository is owned by user 'teamlead' with ID 98765\"\n * \"The user prefers markdown docs with professional writing, no emojis\" (user_preference)\n- Examples of BAD memory (DON'T store these):\n * \"Successfully sent email to john@example.com with message hi\"\n * \"Fetching emails from last day (Sep 6, 2025) for analysis\"\n- Do not repeat the memories stored or found previously.\n" }, { "slug": "COMPOSIO_REMOTE_BASH_TOOL", "name": "Run bash commands", "description": "\n Execute bash commands in a REMOTE sandbox for file operations, data processing, and system tasks. Essential for handling large tool responses saved to remote files. **Hard 3-minute (180s) execution limit** — break large tasks into smaller commands.\n PRIMARY USE CASES:\n- Process large tool responses saved by COMPOSIO_MULTI_EXECUTE_TOOL to remote sandbox\n- File system operations, extract specific information from JSON with shell tools like jq, awk, sed, grep, etc.\n- Commands run from /home/user directory by default\n " }, { "slug": "COMPOSIO_REMOTE_WORKBENCH", "name": "Execute Code remotely in work bench", "description": "\n Process **REMOTE FILES** or script BULK TOOL EXECUTIONS using Python code IN A REMOTE SANDBOX. If you can see the data in chat, DON'T USE THIS TOOL.\n**ONLY** use this when processing **data stored in a remote file** or when scripting bulk tool executions.\n\nDO NOT USE\n- When the complete response is already inline/in-memory, or you only need quick parsing, summarization, or basic math.\n\nUSE IF\n- To parse/analyze tool outputs saved by COMPOSIO_MULTI_EXECUTE_TOOL to a remote file in the sandbox or to script multi-tool chains there.\n- For bulk or repeated executions of known Composio tools (e.g., add a label to 100 emails).\n- To call APIs via proxy_execute when no Composio tool exists for that API.\n\n\nOUTPUTS\n- Returns a compact result or, if too long, artifacts under `/mnt/files/.composio/output` (cloud-backed FUSE mount, persisted across sandbox restarts).\n\nIMPORTANT CODING RULES:\n 1. Stepwise Execution: Split work into small steps. Save intermediate outputs to `/mnt/files/` (cloud-backed, persisted across failures/timeouts) or variables. Call COMPOSIO_REMOTE_WORKBENCH again for the next step.\n 2. Notebook Persistence: This is a persistent Jupyter notebook cell: variables, functions, imports, and in-memory state persist across executions. Helper functions are preloaded.\n 3. Top-level cells: Do not use `return`; Jupyter only allows it inside functions. For final values, end with `output` or `print(output)`, not `return output`.\n 4. Parallelism & Timeout (CRITICAL): There is a **hard 3-minute (180s) execution limit** per cell. Always prioritize PARALLEL execution using ThreadPoolExecutor for bulk operations - e.g., call run_composio_tool or invoke_llm across rows. If data is large, split it into smaller batches across cells.\n 5. Checkpoints: Save checkpoints to `/mnt/files/` so that long runs can be resumed from the last completed step, even after a timeout or sandbox restart.\n 6. Schema Safety: Never assume the response schema for run_composio_tool if not known already from previous tools. To inspect schema, either run a simple request **outside** the workbench or use invoke_llm helper.\n 7. LLM Helpers: Always use invoke_llm helper for summary, analysis, or field extraction on results; prefer it for much better results over ad hoc filtering.\n 8. Avoid Meta Loops: Do not use run_composio_tool to call COMPOSIO_* meta tools. Only use it for app tools.\n 9. Pagination: Use when data spans multiple pages. Continue fetching pages with the returned next_page_token or cursor until none remains. Parallelize page fetches when the tool supports page_number.\n 10. No Hardcoding: Never hardcode data. Load it from files or tool responses, iterating to construct intermediate or final inputs/outputs.\n 11. If the final output is in a workbench file, use upload_local_file to download it - never expose the raw workbench file path to the user. Prefer to download useful artifacts after task is complete.\n\n\nENV & HELPERS:\n- Home directory: `/home/user`.\n- NOTE: Helper functions already initialized in the workbench - DO NOT import or redeclare them:\n - \n`run_composio_tool(tool_slug: str, arguments: dict) -> tuple[Dict[str, Any], str]`: Execute a known Composio **app** tool. Do not invent names; match the tool input schema. Use for loops/parallel/bulk calls.\n i) run_composio_tool returns JSON with top-level \"data\". Parse carefully—structure may be nested.\n \n - \n`invoke_llm(query: str) -> tuple[str, str]`: Invoke an LLM for semantic tasks. Pass MAX 200k characters.\n i) NOTE Prompting guidance: When building prompts for invoke_llm, prefer f-strings (or concatenation) so literal braces stay intact. If using str.format, escape braces by doubling them ({{ }}).\n ii) Define the exact JSON schema you want and batch items into smaller groups to stay within token limit.\n\n - `upload_local_file(*file_paths) -> tuple[Dict[str, Any], str]`: Upload sandbox files to Composio S3/R2 storage for user-downloadable artifacts.\n - `proxy_execute(method, endpoint, toolkit, query_params=None, body=None, headers=None) -> tuple[Any, str]`: Call a toolkit API directly when no Composio tool exists. Only one toolkit can be invoked with proxy_execute per workbench call\n - `web_search(query: str) -> tuple[str, str]`: Search the web for information.\n - `smart_file_extract(sandbox_file_path: str, show_preview: bool = True) -> tuple[str, str]`: Extracts text from files in the sandbox (e.g., PDF, image).\n All helper functions return a tuple (result, error). Always check error before using result.\n\n## Python Helper Functions for LLM Scripting\n\n\n### run_composio_tool\nExecutes a known Composio tool via backend API. Do NOT call COMPOSIO_* meta tools to avoid cycles.\n\n def run_composio_tool(tool_slug: str, arguments: Dict[str, Any]) -> tuple[Dict[str, Any], str]\n # Returns: (tool_response_dict, error_message)\n # Success: ({\"data\": {actual_data}}, \"\") - Note the top-level data\n # Error: ({}, \"error_message\") or (response_data, \"error_message\")\n\n result, error = run_composio_tool(\"GMAIL_FETCH_EMAILS\", {\"max_results\": 1, \"user_id\": \"me\"})\n if error:\n print(\"GMAIL_FETCH_EMAILS error:\", error)\n else:\n email_data = result.get(\"data\", {})\n print(\"Fetched:\", email_data)\n \n\n\n### invoke_llm\nCalls LLM for reasoning, analysis, and semantic tasks. Pass MAX 200k characters.\n\n # Returns: (llm_response, error_message)\n\n # Example: analyze tool response with LLM\n tool_resp, err = run_composio_tool(\"GMAIL_FETCH_EMAILS\", {\"max_results\": 5, \"user_id\": \"me\"})\n if not err:\n parsed = tool_resp.get(\"data\", {})\n resp, err2 = invoke_llm(f\"Summarize these emails: {parsed}\")\n if not err2:\n print(resp)\n # TIP: batch prompts to reduce LLM calls.\n \n\n\n### upload_local_file\nUploads sandbox files to Composio S3/R2 storage for upload/download requests involving generated sandbox artifacts. Single files upload directly; multiple files are auto-zipped.\n\n # Returns: (result_dict, error_string)\n # Success: ({\"s3_url\": str, \"uploaded_file\": str, \"type\": str, \"id\": str, \"s3key\": str, \"message\": str}, \"\")\n # Error: ({}, \"error_message\")\n\n # Single file\n result, error = upload_local_file(\"/path/to/report.pdf\")\n\n # Multiple files are auto-zipped\n result, error = upload_local_file(\"/home/user/doc1.txt\", \"/home/user/doc2.txt\")\n\n if not error:\n print(\"Uploaded:\", result[\"s3_url\"])\n\n\n### proxy_execute\nDirect API call to a connected toolkit service.\n\n def proxy_execute(\n method: Literal[\"GET\",\"POST\",\"PUT\",\"DELETE\",\"PATCH\"],\n endpoint: str,\n toolkit: str,\n query_params: Optional[Dict[str, str]] = None,\n body: Optional[object] = None,\n headers: Optional[Dict[str, str]] = None,\n ) -> tuple[Any, str]\n # Returns: (response_data, error_message)\n\n # Example: GET request with query parameters\n query_params = {\"q\": \"is:unread\", \"maxResults\": \"10\"}\n data, error = proxy_execute(\"GET\", \"/gmail/v1/users/me/messages\", \"gmail\", query_params=query_params)\n if not error:\n print(\"Success:\", data)\n\n\n### web_search\nSearches the web via Exa AI.\n\n # Returns: (search_results_text, error_message)\n\n results, error = web_search(\"latest developments in AI\")\n if not error:\n print(\"Results:\", results)\n\n## Best Practices\n\n\n### Error-first pattern and Defensive parsing (print keys while narrowing)\n res, err = run_composio_tool(\"GMAIL_FETCH_EMAILS\", {\"max_results\": 5})\n if err:\n print(\"error:\", err)\n elif isinstance(res, dict):\n print(\"res keys:\", list(res.keys()))\n data = res.get(\"data\") or {}\n print(\"data keys:\", list(data.keys()))\n msgs = data.get(\"messages\") or []\n print(\"messages count:\", len(msgs))\n for m in msgs:\n print(\"subject:\", m.get(\"subject\", \"\"))\n\n### Parallelize within the 3-minute cell timeout\nAdjust concurrency so all tasks finish within 3 minutes.\n\n import concurrent.futures\n\n MAX_CONCURRENCY = 10 # Adjust as needed\n\n def process_one(item):\n result, error = run_composio_tool(\"GMAIL_SEND_EMAIL\", item)\n if error:\n return {\"status\": \"failed\", \"error\": error}\n return {\"status\": \"ok\", \"data\": result}\n\n with concurrent.futures.ThreadPoolExecutor(max_workers=MAX_CONCURRENCY) as ex:\n results = list(ex.map(process_one, items))\n \n\n " }, { "slug": "COMPOSIO_SEARCH_TOOLS", "name": "Search Composio Tools", "description": "\n Tool Server Info: Composio connects 500+ apps—Slack, GitHub, Notion, Google Workspace (Gmail, Sheets, Drive, Calendar), Microsoft (Outlook, Teams), X/Twitter, Figma, Web Search / Deep research, Browser tool (scrape URLs, browser automation), Meta apps (Instagram, Meta Ads), TikTok, and more—for seamless cross-app automation.\n Use this tool to discover relevant tools plus the recommended plan and common pitfalls for reliable execution.\n Always call this tool first whenever a user mentions or implies an external app, service, or workflow—never say \"I don't have access to X/Y app\" before calling it.\n\nUsage guidelines:\n - Use this tool whenever kicking off a task. Re-run it when you need additional tools/plans due to missing details, errors, or a changed use case.\n - If the user pivots to a different use case in same chat, you MUST call this tool again with the new use case and generate a new session_id.\n - Specify the use_case with a normalized description of the problem, query, or task. Be clear and precise. Queries can be simple single-app actions or multiple linked queries for complex cross-app workflows.\n - Pass known_fields along with use_case as a string of key–value hints (for example, \"channel_name: general\") to help the search resolve missing details such as IDs.\n \n\nSplitting guidelines (Important):\n 1. Atomic queries: 1 query = 1 tool call. Include hidden prerequisites (e.g., add \"get Linear issue\" before \"update Linear issue\").\n 2. Include app names: If user names a toolkit, include it in every sub query so intent stays scoped (e.g., \"fetch Gmail emails\", \"reply to Gmail email\").\n 3. English input: Translate non-English prompts while preserving intent and identifiers.\n\n Example:\n User query: \"send an email to John welcoming him and create a meeting invite for tomorrow\"\n Search call: queries: [\n {use_case: \"send an email to someone\", known_fields: \"recipient_name: John\"},\n {use_case: \"create a meeting invite\", known_fields: \"meeting_date: tomorrow\"}\n ]\n\nPlan review checklist (Important):\n - The response includes a detailed execution plan and common pitfalls. You MUST review this plan carefully, adapt it to your current context, and generate your own final step-by-step plan before execution. Execute the steps in order to ensure reliable and accurate execution. Skipping or ignoring required steps can lead to unexpected failures.\n - Check the plan and pitfalls for input parameter nuances (required fields, IDs, formats, limits). Before executing any tool, you MUST review its COMPLETE input schema and provide STRICTLY schema-compliant arguments to avoid invalid-input errors.\n - Determine whether pagination is needed; if a response returns a pagination token and completeness is implied, paginate until exhaustion and do not return partial results.\n\nResponse:\n - Tools & Input Schemas: The response lists toolkits (apps) and tools suitable for the task, along with their tool_slug, description, input schema / schemaRef, and related tools for prerequisites, alternatives, or next steps.\n - NOTE: Tools with schemaRef instead of input_schema require you to call COMPOSIO_GET_TOOL_SCHEMAS first to load their full input_schema before use.\n - Connection Info: If a toolkit has an active connection, the response includes it along with any available current user information. If no active connection exists, you MUST initiate a new connection via COMPOSIO_MANAGE_CONNECTIONS with the correct toolkit name. DO NOT execute any toolkit tool without an ACTIVE connection.\n - Time Info: The response includes the current UTC time for reference. You can reference UTC time from the response if needed.\n \n - The tools returned to you through this are to be called via COMPOSIO_MULTI_EXECUTE_TOOL. Ensure each tool execution specifies the correct tool_slug and arguments exactly as defined by the tool's input schema.\n - The response includes a memory parameter containing relevant information about the use case and the known fields that can be used to determine the flow of execution. Any user preferences in memory must be adhered to.\n\nSESSION: ALWAYS set this parameter, first for any workflow. Pass session: {generate_id: true} for new workflows OR session: {id: \"EXISTING_ID\"} to continue. ALWAYS use the returned session_id in ALL subsequent meta tool calls.\n " }, { "slug": "COMPOSIO_WAIT_FOR_CONNECTION", "name": "Wait for connection", "description": "Wait for connections to be established for given toolkits." }, { "slug": "COMPOSIO_WAIT_FOR_CONNECTIONS", "name": "Wait for connection", "description": "\nWait for user auth to finish. Call ONLY after you have shown the Auth link from COMPOSIO_MANAGE_CONNECTIONS.\nWait until mode=any/all toolkits reach a terminal state (ACTIVE/FAILED) or timeout.\n\nExample Input: { toolkits: [\"gmail\",\"outlook\"], mode: \"any\" }\n " }, { "slug": "COMPOSIO_GET_TOOL_SCHEMAS", "name": "Get Tool Schemas", "description": "Retrieve input schemas for tools by slug. Returns complete parameter definitions required to execute each tool. Only pass tool slugs returned by COMPOSIO_SEARCH_TOOLS — never guess or fabricate slugs. If unsure of the exact slug, call COMPOSIO_SEARCH_TOOLS first." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Composio", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "github", "name": "GitHub", "logo": "https://logos.composio.dev/api/github", "description": "GitHub is a code hosting platform for version control and collaboration, offering Git-based repository management, issue tracking, and continuous integration features", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 893, "triggerCount": 20, "version": "20260703_00", "tools": [ { "slug": "GITHUB_ABORT_REPOSITORY_MIGRATION", "name": "Abort Repository Migration", "description": "Tool to abort a repository migration that is queued or in progress. Use when you need to cancel an ongoing migration operation." }, { "slug": "GITHUB_ACCEPT_REPOSITORY_INVITATION", "name": "Accept a repository invitation", "description": "Accepts a PENDING repository invitation that has been issued to the authenticated user." }, { "slug": "GITHUB_ADD_APP_ACCESS_RESTRICTIONS", "name": "Add app access restrictions", "description": "Adds GitHub Apps to the list of apps allowed to push to a protected branch. The branch must already have protection rules with restrictions enabled. This endpoint only works for organization repositories, not personal repositories. Apps must be installed on the repository with 'contents' write permissions." }, { "slug": "GITHUB_ADD_A_REPOSITORY_COLLABORATOR", "name": "Add a repository collaborator", "description": "Adds a GitHub user as a repository collaborator, or updates their permission if already a collaborator; `permission` applies to organization-owned repositories (personal ones default to 'push' and ignore this field), and an invitation may be created or permissions updated directly." }, { "slug": "GITHUB_ADD_ASSIGNEES_TO_AN_ISSUE", "name": "Add assignees to an issue", "description": "Adds assignees to a GitHub issue. This action only adds users - it does not remove existing assignees. Changes are silently ignored if the authenticated user lacks push access to the repository." }, { "slug": "GITHUB_ADD_EMAIL_ADDRESS_FOR_AUTHENTICATED_USER", "name": "Add email for auth user", "description": "Adds one or more email addresses (which will be initially unverified) to the authenticated user's GitHub account; use this to associate new emails, noting an email verified for another account will error, while an existing email for the current user is accepted." }, { "slug": "GITHUB_ADD_FIELD_TO_USER_PROJECT", "name": "Add field to user project", "description": "Tool to add a custom field to a user-owned GitHub Projects V2 project. Use when you need to add fields like status, priority, or custom data to organize project items." }, { "slug": "GITHUB_ADD_ITEM_TO_USER_PROJECT", "name": "Add item to user project", "description": "Tool to add an issue or pull request to a user-owned GitHub project. Use when you need to add existing repository items to a project board." }, { "slug": "GITHUB_ADD_LABELS_TO_AN_ISSUE", "name": "Add labels to an issue", "description": "Adds labels (provided in the request body) to a repository issue; labels that do not already exist are created." }, { "slug": "GITHUB_ADD_ORG_RUNNER_LABELS", "name": "Add org runner labels", "description": "Adds new custom labels to an existing self-hosted runner for an organization; existing labels are not removed, and duplicates are not added." }, { "slug": "GITHUB_ADD_OR_UPDATE_TEAM_MEMBERSHIP_FOR_USER", "name": "Add or update team membership for a user", "description": "Adds a GitHub user to a team or updates their role (member or maintainer), inviting them to the organization if not already a member; idempotent, returning current details if no change is made." }, { "slug": "GITHUB_ADD_OR_UPDATE_TEAM_PROJECT_PERMISSIONS", "name": "Add or update team project permissions", "description": "Adds a classic project to a team or updates the team's permission on it. This endpoint grants or updates permissions for a team on a specific classic project (not Projects V2). The authenticated user must have admin permissions for the project. Both the team and project must belong to the same organization. Requirements: - The project must be a classic project (not GitHub Projects V2) - The authenticated user must have admin permissions on the project - The team and project must be in the same organization - Requires 'admin:org' scope for the authentication token Returns HTTP 204 No Content on success, 403 if project is not an org project, or 404 if the organization, team, or project is not found." }, { "slug": "GITHUB_ADD_OR_UPDATE_TEAM_REPOSITORY_PERMISSIONS", "name": "Add or update team repository permissions", "description": "Sets or updates a team's permission level for a repository within an organization; the team must be a member of the organization." }, { "slug": "GITHUB_ADD_PROJECT_COLLABORATOR", "name": "Add project collaborator", "description": "Adds a specified GitHub user as a collaborator to an existing organization project with a given permission level. Note: This endpoint is for organization projects (classic). You must be an organization owner or a project admin to add a collaborator. Classic projects are being deprecated in favor of the new Projects experience." }, { "slug": "GITHUB_ADD_REPOSITORY_TO_APP_INSTALLATION", "name": "Add a repository to an app installation", "description": "Adds a repository to a GitHub App installation, granting the app access; requires authenticated user to have admin rights for the repository and access to the installation." }, { "slug": "GITHUB_ADD_REPO_TO_ORG_SECRET_WITH_SELECTED_ACCESS", "name": "Add repo to org secret with selected access", "description": "Adds a repository to an existing organization-level GitHub Actions secret that is configured for 'selected' repository access." }, { "slug": "GITHUB_ADD_REPO_TO_ORG_SECRET_WITH_SELECTED_VISIBILITY", "name": "Add selected repo to org secret", "description": "Grants an existing repository access to an existing organization-level Dependabot secret when the secret's visibility is set to 'selected'; the repository must belong to the organization, and the call succeeds without change if access already exists." }, { "slug": "GITHUB_ADD_RUNNER_LABELS", "name": "Add runner labels", "description": "Adds and appends custom labels to a self-hosted repository runner, which must be registered and active." }, { "slug": "GITHUB_ADD_SELECTED_REPOSITORY_TO_ORGANIZATION_SECRET", "name": "Add selected repository to an organization secret", "description": "Adds a repository to an organization secret's access list when the secret's visibility is 'selected'; this operation is idempotent." }, { "slug": "GITHUB_ADD_SELECTED_REPOSITORY_TO_ORGANIZATION_VARIABLE", "name": "Add selected repository to an organization variable", "description": "Grants a repository access to an organization-level GitHub Actions variable, if that variable's visibility is set to 'selected_repositories'." }, { "slug": "GITHUB_ADD_SELECTED_REPOSITORY_TO_USER_SECRET", "name": "Add a selected repository to a user secret", "description": "Grants a specified repository access to an authenticated user's existing Codespaces secret, enabling Codespaces created for that repository to use the secret." }, { "slug": "GITHUB_ADD_SOCIAL_ACCOUNTS_FOR_AUTHENTICATED_USER", "name": "Add social accounts for the authenticated user", "description": "Adds one or more social media links (which must be valid, full URLs for platforms supported by GitHub) to the authenticated user's public GitHub profile." }, { "slug": "GITHUB_ADD_STATUS_CHECK_CONTEXTS", "name": "Add status check contexts", "description": "Adds status check contexts to a protected branch's required status checks. This action appends new status check contexts to the existing list of required status checks for a protected branch. The branch must already have branch protection enabled with status checks configured. Note: The 'contexts' parameter is deprecated by GitHub in favor of 'checks' array. For new implementations, consider using update_status_check_protection with the 'checks' parameter instead." }, { "slug": "GITHUB_ADD_SUB_ISSUE", "name": "Add sub-issue to an issue", "description": "Tool to add a sub-issue to a parent GitHub issue using GraphQL. Use when you need to establish a parent-child relationship between issues. Requires the 'sub_issues' GraphQL feature to be enabled." }, { "slug": "GITHUB_ADD_TEAM_ACCESS_RESTRICTIONS", "name": "Add team access restrictions", "description": "Adds teams to the list of teams with push access to a protected branch. This action grants additional teams push access to a protected branch. Unlike 'Set team access restrictions' (PUT), this action adds to the existing list rather than replacing it entirely. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must exist in the organization and have repository access" }, { "slug": "GITHUB_ADD_USER_ACCESS_RESTRICTIONS", "name": "Add user access restrictions", "description": "Adds users to the list of people allowed to push to a protected branch in an organization repository. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must already have protection rules with restrictions enabled - Users must have write access to the repository to be added - The combined total of users, apps, and teams is limited to 100 items" }, { "slug": "GITHUB_ADD_USERS_TO_CODESPACES_ACCESS_FOR_ORGANIZATION", "name": "Add users to codespaces access for an organization", "description": "Adds organization members to the list of users granted Codespaces access billed to the organization. IMPORTANT: This endpoint requires the organization's Codespaces billing access to be set to 'selected_members' mode. If not already configured, use the GITHUB_MANAGE_ACCESS_CONTROL_FOR_ORGANIZATION_CODESPACES action first to set visibility to 'selected_members'." }, { "slug": "GITHUB_API_ROOT", "name": "Get GitHub API root", "description": "Retrieves a map of all top-level GitHub REST API resource URLs and their templates." }, { "slug": "GITHUB_APPROVE_WORKFLOW_RUN_FOR_FORK_PULL_REQUEST", "name": "Approve a workflow run for a fork pull request", "description": "Approves a workflow run from a forked repository's pull request; call this when such a run requires manual approval due to workflow configuration." }, { "slug": "GITHUB_ASSIGN_ORGANIZATION_ROLE_TO_TEAM", "name": "Assign an organization role to a team", "description": "Assigns an existing organization-level role (identified by `role_id`) to a team (identified by `team_slug`) within a GitHub organization (`org`), provided the organization, team, and role already exist." }, { "slug": "GITHUB_ASSIGN_ORGANIZATION_ROLE_TO_USER", "name": "Assign an organization role to a user", "description": "Assigns a specific organization role to a user who is a member or an outside collaborator in a GitHub organization, using a valid role ID." }, { "slug": "GITHUB_AUTH_USER_DOCKER_CONFLICT_PACKAGES_LIST", "name": "List Docker Migration Conflicting Packages", "description": "List Docker packages with migration conflicts for the authenticated user. This endpoint lists all Docker packages owned by the authenticated user that encountered namespace conflicts during the Docker-to-GitHub Container Registry (GHCR) migration. Conflicts occur when a package with the same name exists in both the legacy Docker registry and GHCR. IMPORTANT: The Docker registry for GitHub Packages was deprecated on Feb 24, 2025. This endpoint may return a 400 error with message 'Package migration for docker is no longer supported' as the migration period has ended. In this case, the action returns an informative response instead of failing. Use case: Identifying packages that require manual migration to GHCR. Required scope: read:packages (for OAuth and personal access tokens)." }, { "slug": "GITHUB_BLOCK_USER", "name": "Block a user", "description": "Blocks an existing individual GitHub user (not an organization or your own account), preventing them from interacting with your account and repositories." }, { "slug": "GITHUB_BLOCK_USER_FROM_ORGANIZATION", "name": "Block a user from an organization", "description": "Blocks a GitHub user from an organization, preventing their contributions, collaboration, and forking of the organization's repositories. Requires admin or 'Blocking users' organization permission (write access)." }, { "slug": "GITHUB_CANCEL_GITHUB_PAGES_DEPLOYMENT", "name": "Cancel a GitHub Pages deployment", "description": "Cancels an existing, ongoing or queued GitHub Pages deployment for a repository using its `pages_deployment_id`." }, { "slug": "GITHUB_CANCEL_SPONSORSHIP", "name": "Cancel sponsorship", "description": "Tool to cancel an active GitHub sponsorship using GraphQL. Use when you need to terminate a sponsorship relationship between a sponsor and a sponsorable entity. Either sponsor ID/login and sponsorable ID/login must be provided." }, { "slug": "GITHUB_CANCEL_WORKFLOW_RUN", "name": "Cancel a workflow run", "description": "Cancels a workflow run in a GitHub repository if it is in a cancellable state (e.g., 'in_progress' or 'queued'). Returns 202 Accepted on success." }, { "slug": "GITHUB_CHECK_FOLLOWING", "name": "Check if following user", "description": "Check if the authenticated user is following a specified person on GitHub. Use this action when you need to verify whether the currently authenticated user follows another GitHub user. The action returns a boolean status and descriptive message." }, { "slug": "GITHUB_CHECK_IF_GIST_IS_STARRED", "name": "Check if a gist is starred", "description": "Checks if a gist is starred by the authenticated user. Returns `is_starred: true` if the gist is starred (HTTP 204), or `is_starred: false` if not starred (HTTP 404). Use this to verify star status before starring/unstarring a gist." }, { "slug": "GITHUB_CHECK_IF_PULL_REQUEST_HAS_BEEN_MERGED", "name": "Check if pull request merged", "description": "Checks if a specified GitHub pull request has been merged, indicated by a 204 HTTP status (merged) or 404 (not merged/found)." }, { "slug": "GITHUB_CHECK_IF_PULL_REQUEST_MERGED", "name": "Check if pull request merged", "description": "Checks if a pull request has been merged by querying the GitHub API. Use this action when you need to verify whether a specific pull request has been successfully merged into its target branch. The API returns a 204 status for merged PRs and 404 for unmerged PRs." }, { "slug": "GITHUB_CHECK_IF_REPO_STARRED_BY_AUTH_USER", "name": "Check if repo starred by auth user", "description": "DEPRECATED: Use `GITHUB_CHECK_IF_A_REPOSITORY_IS_STARRED_BY_THE_USER` instead." }, { "slug": "GITHUB_CHECK_IF_USER_CAN_BE_ASSIGNED", "name": "Check if a user can be assigned", "description": "Verifies if a GitHub user can be assigned to issues in a repository; assignability is confirmed by an HTTP 204 (No Content) response, resulting in an empty 'data' field in the response." }, { "slug": "GITHUB_CHECK_IF_USER_CAN_BE_ASSIGNED_TO_ISSUE", "name": "Check if a user can be assigned to an issue", "description": "Checks if a specified GitHub user can be assigned to a given issue within a repository." }, { "slug": "GITHUB_CHECK_IF_USER_FOLLOWS_ANOTHER_USER", "name": "Check if a user follows another user", "description": "Checks if a GitHub user `username` follows `target_user`; returns a 204 HTTP status if true, 404 if not or if users are invalid." }, { "slug": "GITHUB_CHECK_IF_USER_IS_BLOCKED_BY_AUTHENTICATED_USER", "name": "Check if a user is blocked by the authenticated user", "description": "Checks if the specified GitHub user is blocked by the authenticated user; a 204 No Content response indicates the user is blocked, while a 404 Not Found indicates they are not." }, { "slug": "GITHUB_CHECK_IF_USER_IS_BLOCKED_BY_ORGANIZATION", "name": "Check if a user is blocked by an organization", "description": "Checks if a GitHub user is blocked by an organization. Returns is_blocked=True if the user is blocked (HTTP 204), or is_blocked=False if not blocked (HTTP 404). Requires 'Blocking users' organization permission (read access)." }, { "slug": "GITHUB_CHECK_IF_USER_IS_REPOSITORY_COLLABORATOR", "name": "Check if a user is a repository collaborator", "description": "Checks if a user is a collaborator on a specified GitHub repository, returning a 204 status if they are, or a 404 status if they are not or if the repository/user does not exist." }, { "slug": "GITHUB_CHECK_PERSON_FOLLOWED_BY_AUTH_USER", "name": "Check if person is followed by authenticated user", "description": "Checks if the authenticated GitHub user follows a target GitHub user. Returns a structured response with is_following=True when following (HTTP 204), or is_following=False when not following (HTTP 404)." }, { "slug": "GITHUB_CHECK_PRIVATE_VULNERABILITY_REPORTING_STATUS", "name": "Check private vulnerability reporting status", "description": "Checks if private vulnerability reporting is enabled for the specified repository." }, { "slug": "GITHUB_CHECK_PUBLIC_ORGANIZATION_MEMBERSHIP_FOR_USER", "name": "Check public organization membership", "description": "Tool to check if a user is a public member of an organization. Use when you need to verify public organization membership status." }, { "slug": "GITHUB_CHECK_REPOSITORY_STARRED", "name": "Check if repository is starred", "description": "Check if a repository is starred by the authenticated user. Use this action when you need to verify whether the authenticated user has starred a specific repository. This is useful for confirming star status before performing star/unstar operations or displaying repository status." }, { "slug": "GITHUB_CHECK_TEAM_PERMISSIONS_FOR_A_PROJECT", "name": "Check team permissions for a project", "description": "Checks if a team has 'read', 'write', or 'admin' permissions for an organization's specific classic project, returning the project's details if access is confirmed." }, { "slug": "GITHUB_CHECK_TEAM_PERMISSIONS_FOR_A_REPOSITORY", "name": "Check team permissions for a repository", "description": "Checks a team's permissions for a specific repository within an organization, including permissions inherited from parent teams." }, { "slug": "GITHUB_CHECK_TOKEN", "name": "Check a token", "description": "Checks if a GitHub App or OAuth access_token is valid for the specified client_id and retrieves its details, typically to verify its active status and grants. NOTE: This endpoint requires Basic Authentication using the OAuth App's client_id as username and client_secret as password. The access_token parameter must be an OAuth token issued by the specified OAuth App." }, { "slug": "GITHUB_CLEAR_PROJECT_V2_ITEM_FIELD_VALUE", "name": "Clear Project V2 Item Field Value", "description": "Tool to clear the value of a field for an item in a GitHub Project V2. Use when you need to remove or reset a field value (text, number, date, assignees, labels, single-select, iteration, or milestone fields)." }, { "slug": "GITHUB_CLEAR_REPOSITORY_CACHE_BY_KEY", "name": "Clear repository cache by key", "description": "Deletes GitHub Actions caches from a repository matching a specific `key` and an optional Git `ref`, used to manage storage or clear outdated/corrupted caches; the action succeeds even if no matching caches are found to delete." }, { "slug": "GITHUB_CLEAR_SELF_HOSTED_RUNNER_ORG_LABELS", "name": "Clear self-hosted runner org labels", "description": "Removes all custom labels from a self-hosted runner for an organization; default labels (e.g., 'self-hosted', 'linux', 'x64') will remain." }, { "slug": "GITHUB_CLOSE_ISSUE", "name": "Close an issue", "description": "Close a GitHub issue by setting its state to closed. Use this action when you need to mark an issue as resolved or no longer relevant. Optionally specify a reason for closing (completed or not_planned) to provide context." }, { "slug": "GITHUB_CLOSE_PULL_REQUEST", "name": "Close a pull request", "description": "Closes an open pull request without merging it. The pull request state is set to \"closed\" and it can be reopened later if needed. Use this action when you want to reject or abandon a pull request without merging the proposed changes into the base branch. You must have write access to the repository to close pull requests." }, { "slug": "GITHUB_COMMIT_MULTIPLE_FILES", "name": "Commit Multiple Files", "description": "Tool to atomically create, update, or delete multiple files in a GitHub repository as a single commit. Uses Git Data APIs to avoid SHA mismatch conflicts that occur with the Contents API when multiple files are modified in parallel. Use when you need to make multi-file changes reliably. BRANCH CREATION: When committing to a new branch (e.g., 'fix/my-fix' or 'feature/new-feature'), you MUST provide 'base_branch' (typically 'main' or 'master') to create the branch from. If the branch already exists, base_branch is not needed. This action handles race conditions automatically: if the branch is updated by another commit between fetching the HEAD and updating the reference (resulting in a 422 'not a fast forward' error), the action will retry by refetching the HEAD and rebasing changes. Use max_retries to control this behavior." }, { "slug": "GITHUB_COMPARE_TWO_COMMITS", "name": "Compare two commits", "description": "Compares two commit points (commits, branches, tags, or SHAs) within a repository or across forks, using `BASE...HEAD` or `OWNER:REF...OWNER:REF` format for the `basehead` parameter." }, { "slug": "GITHUB_CONFIGURE_JIT_RUNNER_FOR_ORG", "name": "Configure JIT runner for an org", "description": "Generates a JIT configuration for a GitHub organization's new self-hosted runner to run a single job then unregister; requires admin:org scope and the runner_group_id must exist in the organization." }, { "slug": "GITHUB_CONFIGURE_OIDC_SUBJECT_CLAIM_TEMPLATE", "name": "Configure OIDC subject claim template", "description": "Sets or updates the OIDC subject claim customization template for an existing GitHub organization by specifying which claims (e.g., 'repo', 'actor') form the OIDC token's subject (`sub`). This action customizes which claim keys are included in the OIDC subject claim for the specified organization. It allows for fine-tuning the content of the subject claim based on organizational needs." }, { "slug": "GITHUB_CONVERT_ORG_MEMBER_TO_OUTSIDE_COLLABORATOR", "name": "Convert an organization member to outside collaborator", "description": "Converts an existing organization member, who is not an owner, to an outside collaborator, restricting their access to explicitly granted repositories." }, { "slug": "GITHUB_CONVERT_PULL_REQUEST_TO_DRAFT", "name": "Convert Pull Request to Draft", "description": "Converts an open pull request to draft status, indicating it is not ready for review. Use this action when you need to mark a PR as work-in-progress after it has been opened. Draft pull requests cannot be merged until they are marked as ready for review. This action is useful when additional work is needed before the PR can be reviewed or merged." }, { "slug": "GITHUB_CREATE_A_BLOB", "name": "Create a blob", "description": "Creates a Git blob in a repository, requiring content and encoding ('utf-8' or 'base64'). Requires write access to the repository." }, { "slug": "GITHUB_CREATE_A_CHECK_RUN", "name": "Create a check run", "description": "Creates a new check run for a specific commit in a repository, used by external services to report status, detailed feedback, annotations, and images directly within the GitHub UI. NOTE: This endpoint requires GitHub App authentication - OAuth tokens and personal access tokens cannot create check runs." }, { "slug": "GITHUB_CREATE_A_CHECK_SUITE", "name": "Create a check suite", "description": "Creates a new check suite for a specific commit (`head_sha`) in an original repository (not a fork). IMPORTANT: This endpoint requires a GitHub App installation access token - OAuth tokens and classic personal access tokens cannot use this endpoint. GitHub dispatches a `check_suite` webhook event with the `requested` action upon success." }, { "slug": "GITHUB_CREATE_A_CODESPACE_FOR_THE_AUTHENTICATED_USER", "name": "Create a codespace for the authenticated user", "description": "Creates a GitHub Codespace for the authenticated user, requiring a JSON request body with either `repository_id` (integer) or a `pull_request` object (containing `pull_request_number` (integer) and `repository_id` (integer)). This action allows users to set up a development environment quickly by creating a codespace from a specified repository or pull request." }, { "slug": "GITHUB_CREATE_A_CODESPACE_FROM_A_PULL_REQUEST", "name": "Create a codespace from a pull request", "description": "Creates a GitHub Codespace for an open pull request in a Codespaces-enabled repository, with options to customize its configuration." }, { "slug": "GITHUB_CREATE_A_CODESPACE_IN_A_REPOSITORY", "name": "Create a codespace in a repository", "description": "Creates a GitHub Codespace for the authenticated user in a specified repository, which must be accessible and use a valid `devcontainer.json` if `devcontainer_path` is specified." }, { "slug": "GITHUB_CREATE_A_COMMIT", "name": "Create a commit", "description": "Creates a new commit in a GitHub repository; the `tree` SHA and any `parents` SHAs must already exist in the repository." }, { "slug": "GITHUB_CREATE_A_COMMIT_COMMENT", "name": "Create a commit comment", "description": "Creates a comment on a specific commit, or on a specific line if `path` and `position` are provided." }, { "slug": "GITHUB_CREATE_A_COMMIT_STATUS", "name": "Create a commit status", "description": "Sets a commit's status (e.g., error, failure, pending, success from CI/CD) for a given SHA; max 1000 statuses per SHA/context." }, { "slug": "GITHUB_CREATE_A_CUSTOM_ORGANIZATION_ROLE", "name": "Create a custom organization role", "description": "Creates a custom role with defined permissions within a GitHub organization." }, { "slug": "GITHUB_CREATE_A_DEPLOY_KEY", "name": "Create a deploy key", "description": "Creates a deploy key for a repository; the repository must exist and be accessible, and the provided key must be a valid public SSH key." }, { "slug": "GITHUB_CREATE_A_DEPLOYMENT", "name": "Create a deployment", "description": "Creates a GitHub deployment for an existing repository, targeting a specific ref (branch, tag, or SHA) that must also exist within the repository." }, { "slug": "GITHUB_CREATE_A_DEPLOYMENT_BRANCH_POLICY", "name": "Create a deployment branch policy", "description": "Creates a deployment branch or tag policy for an existing environment in a GitHub repository, using a Ruby File.fnmatch pattern (where `*` doesn't match `/`) to specify which branches or tags are deployable." }, { "slug": "GITHUB_CREATE_A_DEPLOYMENT_STATUS", "name": "Create a deployment status", "description": "Creates a status for an existing deployment, updating its operational state, associated URLs, and description." }, { "slug": "GITHUB_CREATE_A_DISCUSSION", "name": "Create a discussion", "description": "Creates a new discussion post on a specific team's page within an organization." }, { "slug": "GITHUB_CREATE_A_DISCUSSION_COMMENT", "name": "Create a discussion comment", "description": "Creates a new comment on an existing team discussion within a GitHub organization." }, { "slug": "GITHUB_CREATE_A_FORK", "name": "Create a fork", "description": "Creates a fork of an accessible repository, optionally into a specific organization, with a new name, or copying only the default branch." }, { "slug": "GITHUB_CREATE_A_GIST", "name": "Create a gist", "description": "Creates a new gist on GitHub with provided files, an optional description, and public/secret visibility." }, { "slug": "GITHUB_CREATE_A_GIST_COMMENT", "name": "Create a gist comment", "description": "Creates a new comment on a specified GitHub gist." }, { "slug": "GITHUB_CREATE_A_GITHUB_APP_FROM_A_MANIFEST", "name": "Create a GitHub App from a manifest", "description": "Use this action to complete the GitHub App Manifest flow (step 3 of 3) by exchanging the temporary authorization `code` for the app's full configuration, including credentials and private key. The code is provided via redirect URL after creating the app through GitHub's web interface and must be used within 1 hour." }, { "slug": "GITHUB_CREATE_A_GITHUB_PAGES_DEPLOYMENT", "name": "Create a github pages deployment", "description": "Creates a GitHub Pages deployment for a repository using a specified artifact and OIDC token, provided GitHub Pages is enabled and the artifact (containing static assets) is accessible." }, { "slug": "GITHUB_CREATE_A_GITHUB_PAGES_SITE", "name": "Create a github pages site", "description": "Configures or updates GitHub Pages for a repository, setting build type and source; ensure a Pages workflow exists for 'workflow' `build_type`, or `source_branch` exists for 'legacy' or unspecified `build_type`. This action allows users to effectively manage their GitHub Pages site settings, specifying how the site is built and where the source files are located." }, { "slug": "GITHUB_CREATE_A_LABEL", "name": "Create a label", "description": "Creates a new label in a specified GitHub repository, provided the repository exists and the user has write permissions." }, { "slug": "GITHUB_CREATE_A_MILESTONE", "name": "Create a milestone", "description": "Creates a milestone in a GitHub repository for tracking progress on issues or pull requests; requires repository existence and user write permissions." }, { "slug": "GITHUB_CREATE_AN_AUTOLINK_REFERENCE_FOR_A_REPOSITORY", "name": "Create an autolink reference for a repository", "description": "Creates a repository autolink to automatically convert text references (e.g., 'TICKET-123') into hyperlinks, using a unique `key_prefix` and a `url_template` that includes ``." }, { "slug": "GITHUB_CREATE_AN_ENVIRONMENT_VARIABLE", "name": "Create an environment variable", "description": "Creates an encrypted environment variable for a pre-existing environment within a GitHub repository; will fail if the variable name already exists." }, { "slug": "GITHUB_CREATE_AN_ISSUE", "name": "Create an issue", "description": "Creates a new issue in a GitHub repository, requiring the repository to exist and have issues enabled; specific fields like assignees, milestone, or labels may require push access." }, { "slug": "GITHUB_CREATE_AN_ISSUE_COMMENT", "name": "Create an issue comment", "description": "Creates a new comment on an existing GitHub issue or pull request within the specified repository." }, { "slug": "GITHUB_CREATE_AN_ORGANIZATION_PROJECT", "name": "Create an organization project", "description": "Creates a new classic project board within a specified GitHub organization. Note: This action uses GitHub's Projects (classic) REST API. The classic projects feature may be disabled in some organizations, and GitHub recommends migrating to Projects V2 (accessible via GraphQL API) for new projects. Requirements: - The authenticated user must be an organization member with project creation permissions - Classic projects must be enabled for the organization - Requires 'repo' and 'admin:org' or 'write:org' scopes" }, { "slug": "GITHUB_CREATE_AN_ORGANIZATION_REPOSITORY", "name": "Create an organization repository", "description": "Creates a new repository within a specified GitHub organization, with options for detailed configuration including visibility, features, merge strategies, initial commit, and templates." }, { "slug": "GITHUB_CREATE_AN_ORGANIZATION_VARIABLE", "name": "Create an organization variable", "description": "Creates a new, uniquely named GitHub Actions variable for an organization, with configurable repository access visibility (all, private, or selected)." }, { "slug": "GITHUB_CREATE_AN_ORGANIZATION_WEBHOOK", "name": "Create an organization webhook", "description": "Creates a webhook for a GitHub organization to deliver event notifications to a configured URL." }, { "slug": "GITHUB_CREATE_A_PROJECT_CARD", "name": "Create a project card", "description": "Creates a project card in a GitHub project column (classic projects only). DEPRECATION NOTICE: GitHub Projects (classic) was sunset on August 23, 2024. This API only works with existing classic project columns. New classic projects cannot be created. Consider using GitHub Projects V2 (GraphQL API) instead. The request body must contain either: - `note`: A text note for the card - OR `content_id` AND `content_type`: To associate an issue or pull request" }, { "slug": "GITHUB_CREATE_A_PROJECT_COLUMN", "name": "Create a project column (Classic - Deprecated)", "description": "Creates a new column in a GitHub project (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/" }, { "slug": "GITHUB_CREATE_A_PULL_REQUEST", "name": "Create a pull request", "description": "Creates a pull request in a GitHub repository, requiring existing `base` and `head` branches; `title` or `issue` must be provided." }, { "slug": "GITHUB_CREATE_A_REFERENCE", "name": "Create a reference", "description": "Creates a NEW Git reference (branch or tag) in a repository. IMPORTANT: This action ONLY creates NEW references - if the reference already exists, it will fail with a 422 'Reference already exists' error. To update an existing reference, use the 'Update a reference' (GITHUB_UPDATE_A_REFERENCE) action instead. The repository must not be empty prior to this operation." }, { "slug": "GITHUB_CREATE_A_REGISTRATION_TOKEN_FOR_AN_ORGANIZATION", "name": "Create a registration token for an organization", "description": "Generates a temporary (one-hour) registration token to add a new self-hosted runner to an organization for GitHub Actions." }, { "slug": "GITHUB_CREATE_A_REGISTRATION_TOKEN_FOR_A_REPOSITORY", "name": "Create a registration token for a repository", "description": "Generates a time-limited token required to register a new self-hosted runner with a specific repository." }, { "slug": "GITHUB_CREATE_A_RELEASE", "name": "Create a release", "description": "Creates a release in a GitHub repository for a specified tag; the tag must be unique for published releases, and if a `discussion_category_name` is given, it must already exist." }, { "slug": "GITHUB_CREATE_A_REMOVE_TOKEN_FOR_AN_ORGANIZATION", "name": "Create a remove token for an organization", "description": "Generates a token, valid for one hour, to authenticate removing a self-hosted runner from an organization." }, { "slug": "GITHUB_CREATE_A_REMOVE_TOKEN_FOR_A_REPOSITORY", "name": "Create a remove token for a repository", "description": "Generates a temporary (one-hour validity) token required to unregister and remove a self-hosted runner from a repository." }, { "slug": "GITHUB_CREATE_A_REPLY_FOR_A_REVIEW_COMMENT", "name": "Create a reply for a review comment", "description": "Posts a reply to a specific review comment on a GitHub pull request, requiring the repository, pull request, and original comment to exist, and a non-empty reply body." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_DISPATCH_EVENT", "name": "Create a repository dispatch event", "description": "Triggers a GitHub Actions workflow or a webhook on a repository by creating a repository dispatch event, allowing programmatic triggering of workflows based on events outside of GitHub." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER", "name": "Create a repository for the authenticated user", "description": "Creates a new repository for the authenticated user, optionally within an organization if `team_id` is specified." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_FROM_AN_UNPUBLISHED_CODESPACE", "name": "Create a repository from an unpublished codespace", "description": "Publishes the specified codespace to a new repository, using the codespace's current state as the initial commit." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_PROJECT", "name": "Create a repository project", "description": "Creates a new GitHub Projects V2 project board linked to a specified repository. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub. The project is owned by the repository owner (user or organization) and linked to the specified repository." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_RULESET", "name": "Create a repository ruleset", "description": "Creates a uniquely named ruleset for a repository, defining rules for branches or tags with specified enforcement, conditions, and bypass actors." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_USING_A_TEMPLATE", "name": "Create a repository using a template", "description": "Creates a new repository from an existing template repository; the authenticated user must have access to the template and, if creating in an organization, repository creation permissions within it." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_VARIABLE", "name": "Create a repository variable", "description": "Creates a new, unencrypted variable in a repository for GitHub Actions workflows; fails if a variable with the same name already exists." }, { "slug": "GITHUB_CREATE_A_REPOSITORY_WEBHOOK", "name": "Create a repository webhook", "description": "Creates a webhook for a specified repository; requires admin permissions on the repository." }, { "slug": "GITHUB_CREATE_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST", "name": "Create a review comment for a pull request", "description": "Creates a review comment on a pull request's diff, targeting a specific line, range of lines, an entire file, or replying to an existing comment." }, { "slug": "GITHUB_CREATE_A_REVIEW_FOR_A_PULL_REQUEST", "name": "Create a review for a pull request", "description": "Creates a pull request review, allowing approval, change requests, or comments; `body` is required if `event` is `REQUEST_CHANGES` or `COMMENT`, and omitting `event` makes the review `PENDING`." }, { "slug": "GITHUB_CREATE_A_SCOPED_ACCESS_TOKEN", "name": "Create a scoped access token", "description": "Exchanges a user-to-server token for a new, fine-grained scoped access token for a GitHub App, requiring `client_id`, `access_token`, either `target` or `target_id`, and at least one permission; for repository-specific scoping, provide either `repositories` (names) or `repository_ids` (IDs), but not both." }, { "slug": "GITHUB_CREATE_A_SNAPSHOT_OF_DEPENDENCIES_FOR_A_REPOSITORY", "name": "Create a dependency snapshot", "description": "Creates a snapshot of a repository's dependencies to populate the GitHub dependency graph and enable security alerts; `sha` must be a 40-character commit ID, `ref` a fully qualified Git reference (e.g., `refs/heads/main`), and `scanned` an ISO 8601 timestamp." }, { "slug": "GITHUB_CREATE_A_TAG_OBJECT", "name": "Create a tag object", "description": "Creates an annotated Git tag object in a repository, pointing to an existing Git object (commit, tree, or blob) defined by its SHA and ensuring the `type` field correctly specifies the object's type." }, { "slug": "GITHUB_CREATE_A_TAG_PROTECTION_STATE_FOR_A_REPOSITORY", "name": "Create a tag protection state for a repository", "description": "DEPRECATED: This API was sunset on August 30, 2024. Use GITHUB_CREATE_A_REPOSITORY_RULESET instead to create tag protection rules via repository rulesets." }, { "slug": "GITHUB_CREATE_A_TEAM", "name": "Create a team", "description": "Creates a new team in an organization, optionally with maintainers, repositories, specific privacy, notification settings, or a parent team; if `parent_team_id` is given, `privacy` must be 'closed'." }, { "slug": "GITHUB_CREATE_A_TEMPORARY_PRIVATE_FORK", "name": "Create a temporary private fork", "description": "Creates a temporary private fork of the specified repository to address a security vulnerability, linking the fork to a GHSA ID that must be specifically associated with this repository; the fork may take up to 5 minutes to become accessible." }, { "slug": "GITHUB_CREATE_A_TREE", "name": "Create a tree", "description": "Creates a new Git tree object in a repository, defining file/directory structure by specifying tree entries, optionally building on a `base_tree` SHA; all provided SHAs must be valid." }, { "slug": "GITHUB_CREATE_A_USER_PROJECT", "name": "Create a user project", "description": "Creates a new GitHub Projects V2 project board for the authenticated user to organize and track issues, pull requests, and notes. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub." }, { "slug": "GITHUB_CREATE_A_WORKFLOW_DISPATCH_EVENT", "name": "Create a workflow dispatch event", "description": "Manually triggers a GitHub Actions workflow identified by `workflow_id` at a given `ref`, if the workflow is configured to accept `workflow_dispatch` events." }, { "slug": "GITHUB_CREATE_BRANCH", "name": "Create a branch", "description": "Creates a new branch in a GitHub repository pointing to a specified commit. Use this action when you need to create a new branch from an existing commit SHA. IMPORTANT: This action only creates NEW branches. If the branch already exists, it will fail with a 422 'Reference already exists' error. The repository must not be empty (must have at least one commit) before creating a branch." }, { "slug": "GITHUB_CREATE_COMMIT_SIGNATURE_PROTECTION", "name": "Create commit signature protection", "description": "Enables commit signature protection for a specified branch, requiring all new commits to be signed." }, { "slug": "GITHUB_CREATE_DEPLOYMENT_PROTECTION_RULE", "name": "Create a custom deployment protection rule on an environment", "description": "Enables a custom deployment protection rule for an existing environment in a repository by linking a configured GitHub App (via `integration_id`) to control deployments." }, { "slug": "GITHUB_CREATE_DRAFT_ITEM_FOR_USER_PROJECT", "name": "Create draft item for user project", "description": "Creates a draft issue item in a user-owned GitHub ProjectsV2. Use when you need to add a new draft item to track ideas or tasks in a user's project." }, { "slug": "GITHUB_CREATE_INFERENCE_CHAT_COMPLETIONS", "name": "Create inference chat completions", "description": "Tool to create chat completions using GitHub Models inference API. Use when you need to generate AI-powered text responses using models like GPT-4, Claude, or Llama through GitHub's inference endpoint." }, { "slug": "GITHUB_CREATE_INFERENCE_EMBEDDINGS", "name": "Create inference embeddings", "description": "Tool to create inference embeddings using GitHub's AI models. Use when you need to convert text into vector representations for similarity search, clustering, or other ML tasks." }, { "slug": "GITHUB_CREATE_ISSUE_TYPE", "name": "Create issue type", "description": "Create a new issue type for a GitHub organization. Requires the authenticated user to be an organization administrator. OAuth tokens need admin:org scope." }, { "slug": "GITHUB_CREATE_JIT_RUNNER_CONFIG", "name": "Create JIT runner config for repo", "description": "Generates a temporary Just-In-Time (JIT) configuration for a new self-hosted GitHub Actions runner for a repository; any specified non-default `runner_group_id` must be an existing runner group accessible by the repository." }, { "slug": "GITHUB_CREATE_OR_UPDATE_AN_ENVIRONMENT", "name": "Create or update an environment", "description": "Creates a new environment or updates an existing one in a GitHub repository, allowing configuration of deployment protection rules such as wait timers and reviewers; ensure `environment_name` is URL-encoded if it contains special characters." }, { "slug": "GITHUB_CREATE_OR_UPDATE_AN_ENVIRONMENT_SECRET", "name": "Create or update an environment secret", "description": "Creates or updates an environment secret with an `encrypted_value` that was encrypted using the public key identified by `key_id` for the specified environment." }, { "slug": "GITHUB_CREATE_OR_UPDATE_AN_ORGANIZATION_SECRET", "name": "Create or update an organization secret", "description": "Creates or updates an organization secret for GitHub Actions, requiring its value to be pre-encrypted via LibSodium using the organization's public key." }, { "slug": "GITHUB_CREATE_OR_UPDATE_A_REPOSITORY_SECRET", "name": "Create or update a repository secret", "description": "Creates or updates a GitHub Actions secret within a specific repository; use `encrypted_value` and `key_id` to set or change its value." }, { "slug": "GITHUB_CREATE_OR_UPDATE_A_SECRET_FOR_THE_AUTHENTICATED_USER", "name": "Create or update a secret for the authenticated user", "description": "Creates or updates a Codespaces secret for the authenticated user; `encrypted_value` must be encrypted with the public key (ID: `key_id`) from GitHub's 'Get public key for the authenticated user' endpoint." }, { "slug": "GITHUB_CREATE_OR_UPDATE_CUSTOM_PROPERTIES_FOR_AN_ORG", "name": "Create or update custom properties for an organization", "description": "Creates new custom property schemas or updates existing ones in bulk for a specified organization; each property definition must include `property_name` and `value_type`." }, { "slug": "GITHUB_CREATE_OR_UPDATE_CUSTOM_PROPERTY_ORG", "name": "Create or update a custom property for an organization", "description": "Creates a new custom property (name must be unique for creation) or updates an existing one for an organization to define metadata for its repositories." }, { "slug": "GITHUB_CREATE_OR_UPDATE_FILE_CONTENTS", "name": "Create or update file contents", "description": "Creates a new file or updates an existing file in a GitHub repository; SHA can be provided to validate file updates, automatically fetched if not provided." }, { "slug": "GITHUB_CREATE_OR_UPDATE_GITHUB_PAGES_SITE", "name": "Create or Update GitHub Pages Site", "description": "Tool to enable or update GitHub Pages configuration for a repository. Use when setting up GitHub Pages for static site deployment or modifying Pages settings like custom domains and HTTPS enforcement." }, { "slug": "GITHUB_CREATE_OR_UPDATE_REPO_SECRET_WITH_ENCRYPTED_VALUE", "name": "Create or update repo secret with encrypted value", "description": "Creates or updates a Dependabot secret in a repository using an `encrypted_value` (pre-encrypted with LibSodium using the repository's Dependabot public key) and its corresponding `key_id`. This action allows you to securely manage secrets for a given repository, ensuring that sensitive data remains protected during the update process. By providing the encrypted value alongside the key ID, you can seamlessly maintain the necessary credentials for your repository's operations." }, { "slug": "GITHUB_CREATE_REACTION_FOR_A_COMMIT_COMMENT", "name": "Create reaction for a commit comment", "description": "Creates an emoji reaction for a commit comment; if the user has already reacted with the same content, details of the existing reaction are returned." }, { "slug": "GITHUB_CREATE_REACTION_FOR_AN_ISSUE", "name": "Create reaction for an issue", "description": "Creates a reaction for a specified issue within a GitHub repository." }, { "slug": "GITHUB_CREATE_REACTION_FOR_AN_ISSUE_COMMENT", "name": "Create reaction for an issue comment", "description": "Creates a reaction for a specific comment on an issue within a GitHub repository." }, { "slug": "GITHUB_CREATE_REACTION_FOR_A_PULL_REQUEST_REVIEW_COMMENT", "name": "Create reaction for a pull request review comment", "description": "Adds a specified reaction to a pull request review comment within a GitHub repository." }, { "slug": "GITHUB_CREATE_REACTION_FOR_A_RELEASE", "name": "Create reaction for a release", "description": "Creates an emoji reaction for a specific, existing release in a GitHub repository." }, { "slug": "GITHUB_CREATE_REACTION_FOR_A_TEAM_DISCUSSION", "name": "Create reaction for a team discussion", "description": "Creates a reaction for a team discussion within a GitHub organization." }, { "slug": "GITHUB_CREATE_REACTION_FOR_A_TEAM_DISCUSSION_COMMENT", "name": "Create reaction for a team discussion comment", "description": "Adds a reaction to a team discussion comment, requiring the specified organization, team, discussion, and comment to exist." }, { "slug": "GITHUB_CREATE_REPOSITORY", "name": "Create repository", "description": "Creates a new repository for the authenticated user. Use this action when you need to create a new GitHub repository under the authenticated user's account. The repository name must be unique for the user, and various settings can be configured such as visibility (public/private), enabled features (issues, wiki, projects), and merge options." }, { "slug": "GITHUB_CREATE_SPONSORSHIP", "name": "Create sponsorship", "description": "Tool to start a new GitHub sponsorship or reactivate a past sponsorship using GraphQL. Use when you need to sponsor a maintainer through GitHub Sponsors with a specified amount and privacy level." }, { "slug": "GITHUB_CREATE_SPONSORS_TIER", "name": "Create Sponsors Tier", "description": "Tool to create a new payment tier for your GitHub Sponsors profile using GraphQL. Use when you need to add a new sponsorship tier with a specific monthly price and description. The amount is specified in dollars and will be converted to cents automatically." }, { "slug": "GITHUB_CREATE_UPDATE_ORG_SECRET_WITH_LIB_SODIUM", "name": "Create or Update Organization Secret with LibSodium", "description": "Creates or updates a Dependabot organization secret, requiring the secret value to be pre-encrypted with LibSodium using the organization's public key obtained from the 'Get an organization public key' endpoint." }, { "slug": "GITHUB_CREATE_USER_LIST", "name": "Create user list", "description": "Tool to create a new user list on GitHub. Use when you need to organize and group GitHub users for easier tracking and management." }, { "slug": "GITHUB_CREATE_VIEW_FOR_USER_PROJECT", "name": "Create view for user project", "description": "Tool to create a new view in a user-owned GitHub project (Projects V2). Use when you need to add a customized view with specific layout, filters, and visible fields to organize project items. Note: This action works with GitHub Projects V2. The view can be configured with different layouts (table, board, roadmap) and optional filters. The visible_fields parameter is not applicable to roadmap layouts." }, { "slug": "GITHUB_DECLINE_A_REPOSITORY_INVITATION", "name": "Decline a repository invitation", "description": "Declines a specific, pending repository invitation for the authenticated user, identified by its `invitation_id`." }, { "slug": "GITHUB_DELETE_ACCESS_RESTRICTIONS", "name": "Delete access restrictions", "description": "Removes all user, team, and app-based access restrictions from a protected branch." }, { "slug": "GITHUB_DELETE_ADMIN_BRANCH_PROTECTION", "name": "Delete admin branch protection", "description": "Removes admin enforcement from a protected branch (branch name cannot contain wildcard characters) in a repository." }, { "slug": "GITHUB_DELETE_A_FILE", "name": "Delete a file", "description": "Deletes a file by path from a GitHub repository. The file's blob SHA is automatically fetched if not provided." }, { "slug": "GITHUB_DELETE_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER", "name": "Delete a package version for the authenticated user", "description": "Deletes an existing package version associated with the authenticated user." }, { "slug": "GITHUB_DELETE_APP_AUTHORIZATION", "name": "Delete an app authorization", "description": "Deletes an OAuth application grant for a user, which revokes ALL OAuth tokens and their associated authorizations for the application. This endpoint is only accessible to OAuth App owners and requires Basic Authentication using the OAuth App's client_id and client_secret." }, { "slug": "GITHUB_DELETE_APP_TOKEN", "name": "Delete an app token", "description": "Revokes a single OAuth access token for an OAuth App or GitHub App with OAuth authorization. IMPORTANT: This endpoint requires Basic Authentication using the OAuth App's client_id as username and client_secret as password. It CANNOT be called with personal access tokens, GitHub App installation tokens, or any other token type. You must be the OAuth App owner to use this endpoint." }, { "slug": "GITHUB_DELETE_A_REFERENCE", "name": "Delete a reference", "description": "Deletes a Git reference from a repository; 'ref' must be fully qualified (e.g., 'refs/heads/branch' or 'refs/tags/tag')." }, { "slug": "GITHUB_DELETE_A_RELEASE", "name": "Delete a release", "description": "Permanently deletes a specific release, its assets, and potentially its associated Git tag from a repository." }, { "slug": "GITHUB_DELETE_A_RELEASE_ASSET", "name": "Delete a release asset", "description": "Deletes a specific release asset from a GitHub repository; this action is idempotent." }, { "slug": "GITHUB_DELETE_A_RELEASE_REACTION", "name": "Delete a release reaction", "description": "Deletes a reaction from a GitHub release, provided the repository, release, and reaction exist." }, { "slug": "GITHUB_DELETE_A_REPOSITORY", "name": "Delete a repository", "description": "Permanently deletes the specified repository; this is a destructive, irreversible action that requires admin privileges for the repository." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_INVITATION", "name": "Delete a repository invitation", "description": "Deletes an active repository invitation, permanently revoking a user's access to collaborate on the specified repository." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_RULESET", "name": "Delete a repository ruleset", "description": "Permanently deletes a repository ruleset." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_SECRET", "name": "Delete a repository secret", "description": "Deletes a named GitHub Actions secret from a specified repository; this operation is destructive and idempotent, and requires the repository to exist." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_SUBSCRIPTION", "name": "Delete a repository subscription", "description": "Deletes the authenticated user's subscription to a specified repository if it exists, effectively 'unwatching' it." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_VARIABLE", "name": "Delete a repository variable", "description": "Deletes a named variable (e.g., for GitHub Actions workflows) from a repository; the repository and the variable must already exist." }, { "slug": "GITHUB_DELETE_A_REPOSITORY_WEBHOOK", "name": "Delete a repository webhook", "description": "Deletes a specific webhook from a repository." }, { "slug": "GITHUB_DELETE_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST", "name": "Delete a review comment for a pull request", "description": "Deletes a specific pull request review comment." }, { "slug": "GITHUB_DELETE_ARTIFACT", "name": "Delete an artifact", "description": "Deletes a GitHub artifact by its ID within a repository, typically resulting in an empty response (HTTP 204 No Content) on success." }, { "slug": "GITHUB_DELETE_A_SECRET_FOR_THE_AUTHENTICATED_USER", "name": "Delete a secret for the authenticated user", "description": "Deletes an existing Codespaces secret for the authenticated user by `secret_name`. This is a destructive and irreversible operation. Returns 404 if the secret does not exist." }, { "slug": "GITHUB_DELETE_A_SELF_HOSTED_RUNNER_FROM_AN_ORGANIZATION", "name": "Delete a self hosted runner from an organization", "description": "Forces the removal of a self-hosted runner from a GitHub organization. This endpoint can be used to completely remove the runner when the machine you were using no longer exists. The runner will be immediately disconnected from GitHub Actions. Requires admin:org scope and organization admin access. Returns 204 No Content on successful deletion." }, { "slug": "GITHUB_DELETE_A_SELF_HOSTED_RUNNER_FROM_A_REPOSITORY", "name": "Delete a self hosted runner from a repository", "description": "Removes a specific self-hosted runner (by `runner_id`) from a repository, if registered there; this is idempotent." }, { "slug": "GITHUB_DELETE_A_TAG_PROTECTION_STATE_FOR_A_REPOSITORY", "name": "Delete a tag protection state for a repository", "description": "DEPRECATED: This API was sunset on August 30, 2024. Use GITHUB_DELETE_A_REPOSITORY_RULESET instead to manage tag protection rules via repository rulesets." }, { "slug": "GITHUB_DELETE_A_TEAM", "name": "Delete a team", "description": "Deletes a team (and any child teams) from an organization." }, { "slug": "GITHUB_DELETE_A_THREAD_SUBSCRIPTION", "name": "Delete a thread subscription", "description": "Call this to mute a specific notification thread by deleting the user's subscription; notifications may still occur if the user is @mentioned, comments, or due to repository watch settings." }, { "slug": "GITHUB_DELETE_AUTOLINK_REFERENCE", "name": "Delete an autolink reference from a repository", "description": "Deletes a specific autolink reference (which automatically links external resource IDs like JIRA-123 to URLs) from the specified repository." }, { "slug": "GITHUB_DELETE_A_WORKFLOW_RUN", "name": "Delete a workflow run", "description": "Deletes a specific workflow run from a repository." }, { "slug": "GITHUB_DELETE_BRANCH_PROTECTION", "name": "Delete branch protection", "description": "Removes all protection rules from a specific branch in a GitHub repository; the branch must currently have protection rules enabled." }, { "slug": "GITHUB_DELETE_CODE_SCANNING_ANALYSIS", "name": "Delete a code scanning analysis from a repository", "description": "Deletes a specific code scanning analysis by its ID from a repository; `confirm_delete` must be `true` if it's the last analysis of its type for a given tool and reference to prevent data loss." }, { "slug": "GITHUB_DELETE_CODESPACE", "name": "Delete a codespace for the authenticated user", "description": "Deletes a specific codespace owned by the authenticated user; this is a destructive action and the codespace must exist." }, { "slug": "GITHUB_DELETE_COMMIT_COMMENT", "name": "Delete a commit comment", "description": "Deletes a specific commit comment, identified by its `comment_id`, from the specified repository; the comment must exist." }, { "slug": "GITHUB_DELETE_COMMIT_COMMENT_REACTION", "name": "Delete a commit comment reaction", "description": "Deletes a reaction from a commit comment in a GitHub repository." }, { "slug": "GITHUB_DELETE_COMMIT_SIGNATURE_PROTECTION", "name": "Delete commit signature protection", "description": "Disables GPG commit signature protection for a specific branch in a GitHub repository, meaning commits pushed to this branch no longer require GPG signing." }, { "slug": "GITHUB_DELETE_CUSTOM_ORGANIZATION_ROLE", "name": "Delete a custom organization role", "description": "Deletes a custom organization role (which should not be actively assigned) by its ID; a 204 No Content response indicates success." }, { "slug": "GITHUB_DELETE_DEPENDEBOT_SECRET_BY_NAME", "name": "Delete dependabot secret by name", "description": "Deletes a specific Dependabot secret, identified by its name, from a given repository if both the repository and secret exist." }, { "slug": "GITHUB_DELETE_DEPLOY_KEY", "name": "Delete a deploy key", "description": "Deletes a specific deploy key from a repository; to change a key's properties or access scope, the existing key must be deleted and a new one created." }, { "slug": "GITHUB_DELETE_DEPLOYMENT", "name": "Delete a deployment", "description": "Permanently deletes a specified *inactive* deployment from a repository." }, { "slug": "GITHUB_DELETE_DEPLOYMENT_BRANCH_POLICY", "name": "Delete a deployment branch policy", "description": "Deletes a specific deployment branch or tag policy, identified by its ID, from a given environment within a repository." }, { "slug": "GITHUB_DELETE_DISCUSSION", "name": "Delete a discussion", "description": "Deletes a specific team discussion, identified by its number, from an organization's team." }, { "slug": "GITHUB_DELETE_DISCUSSION_COMMENT", "name": "Delete a discussion comment", "description": "Deletes a specific comment from an existing team discussion within an organization, provided the specified organization, team, discussion, and comment all exist." }, { "slug": "GITHUB_DELETE_EMAIL_ADDRESS", "name": "Delete authenticated user email address", "description": "Sends an empty request body to `DELETE /user/emails` to attempt deletion of user email addresses; the API typically requires specific emails, so outcome may vary." }, { "slug": "GITHUB_DELETE_ENVIRONMENT", "name": "Delete an environment", "description": "Deletes an existing deployment environment from an existing repository." }, { "slug": "GITHUB_DELETE_ENVIRONMENT_SECRET", "name": "Delete an environment secret", "description": "Deletes an existing and accessible secret from a specified environment within a GitHub repository, returning an empty dictionary on success or error details otherwise." }, { "slug": "GITHUB_DELETE_ENVIRONMENT_VARIABLE", "name": "Delete an environment variable", "description": "Deletes a named environment variable from a specified, existing environment within a GitHub repository." }, { "slug": "GITHUB_DELETE_GIST", "name": "Delete a gist", "description": "Permanently deletes an existing GitHub gist, specified by its `gist_id`; this action is destructive and cannot be undone." }, { "slug": "GITHUB_DELETE_GIST_COMMENT", "name": "Delete a gist comment", "description": "Deletes a specific comment from a GitHub Gist using its `gist_id` and `comment_id`." }, { "slug": "GITHUB_DELETE_GITHUB_ACTIONS_CACHE_BY_ID", "name": "Delete GitHub Actions cache by ID", "description": "Deletes a specific GitHub Actions cache from a repository using its unique `cache_id`." }, { "slug": "GITHUB_DELETE_GITHUB_PAGES_SITE", "name": "Delete a GitHub Pages site", "description": "Deletes the GitHub Pages site for the specified repository; completes without error if no site is currently enabled." }, { "slug": "GITHUB_DELETE_ISSUE_COMMENT", "name": "Delete an issue comment", "description": "Permanently deletes a specific comment by its ID from an issue or pull request, if the repository exists and the comment ID is valid." }, { "slug": "GITHUB_DELETE_ISSUE_COMMENT_REACTION", "name": "Delete an issue comment reaction", "description": "Deletes a reaction from an issue comment in a repository; the repository, comment, and reaction must exist." }, { "slug": "GITHUB_DELETE_ISSUE_REACTION", "name": "Delete an issue reaction", "description": "Permanently removes a specific reaction from an issue in a GitHub repository." }, { "slug": "GITHUB_DELETE_LABEL", "name": "Delete a label", "description": "Permanently removes an existing label from a repository." }, { "slug": "GITHUB_DELETE_MILESTONE", "name": "Delete a milestone", "description": "Deletes the specified milestone if it exists; this operation is idempotent, typically returning a 404 if the milestone is not found or already deleted." }, { "slug": "GITHUB_DELETE_ORGANIZATION", "name": "Delete an organization", "description": "Deletes a GitHub organization and its repositories; this is a destructive action and the organization name will be unavailable for reuse for approximately 90 days." }, { "slug": "GITHUB_DELETE_ORGANIZATION_SECRET", "name": "Delete an organization secret", "description": "Permanently deletes a secret from a GitHub organization, making it inaccessible to GitHub Actions workflows or other tools." }, { "slug": "GITHUB_DELETE_ORGANIZATION_VARIABLE", "name": "Delete an organization variable", "description": "Deletes a named GitHub Actions variable from a specified organization." }, { "slug": "GITHUB_DELETE_ORGANIZATION_WEBHOOK", "name": "Delete an organization webhook", "description": "Deletes a specific webhook, identified by `hook_id`, from an existing organization." }, { "slug": "GITHUB_DELETE_ORG_CODESPACE", "name": "Delete a codespace from the organization", "description": "Permanently deletes a specific codespace belonging to a member of the specified organization." }, { "slug": "GITHUB_DELETE_ORG_PACKAGE", "name": "Delete a package for an organization", "description": "Deletes a specific package in an organization; cannot delete public packages with over 5,000 downloads." }, { "slug": "GITHUB_DELETE_PACKAGE", "name": "Delete a package for the authenticated user", "description": "Permanently deletes a specific package owned by the authenticated user; public packages downloaded over 5,000 times cannot be deleted via this API." }, { "slug": "GITHUB_DELETE_PACKAGE_VERSION", "name": "Delete package version", "description": "Tool to delete a package version using GitHub GraphQL API. Use when you need to remove a specific version of a package by its global node ID." }, { "slug": "GITHUB_DELETE_PACKAGE_VERSION_FOR_AN_ORGANIZATION", "name": "Delete package version for an organization", "description": "Deletes a specific package version within an organization; requires admin permissions for packages with over 5,000 downloads." }, { "slug": "GITHUB_DELETE_PACKAGE_VERSION_FOR_A_USER", "name": "Delete package version for a user", "description": "Permanently and irreversibly deletes a specific version of a package owned by the specified user." }, { "slug": "GITHUB_DELETE_PENDING_REVIEW", "name": "Delete a pending review for a pull request", "description": "Deletes a pending (unsubmitted) review from a pull request; this is only possible if the review has not yet been submitted." }, { "slug": "GITHUB_DELETE_PROJECT", "name": "Delete a project", "description": "Deletes the specified GitHub project (Projects V2) using the GraphQL API. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects (classic) REST API was sunset on April 1, 2025 and is no longer available. The project is permanently deleted and cannot be recovered. The user must have admin permissions for the project to delete it." }, { "slug": "GITHUB_DELETE_PROJECT_CARD", "name": "Delete a project card (Classic - Deprecated)", "description": "Deletes a project card from a GitHub 'Project (classic)'; this operation is idempotent. DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action may return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/" }, { "slug": "GITHUB_DELETE_PROJECT_COLUMN", "name": "Delete a project field (column)", "description": "Deletes a project field (column) from a GitHub Projects V2 project using the GraphQL API. IMPORTANT: GitHub Classic Projects REST API was sunset on April 1, 2025. This action now uses the GitHub Projects V2 GraphQL API with the deleteProjectV2Field mutation. Note: The built-in Status field cannot be deleted as it is a core field in GitHub Projects V2. Only custom fields can be deleted." }, { "slug": "GITHUB_DELETE_PROJECT_ITEM_FOR_USER", "name": "Delete project item for user", "description": "Tool to delete a project item for a user in GitHub Projects V2. Use when you need to remove an item from a user's project. Requires the project item's GraphQL node ID (starts with 'PVTI_'). Uses the GitHub GraphQL API deleteProjectV2Item mutation." }, { "slug": "GITHUB_DELETE_PULL_REQUEST_COMMENT_REACTION", "name": "Delete a pull request comment reaction", "description": "Deletes a specific reaction from a pull request review comment, provided the comment and reaction exist on that comment within the specified repository." }, { "slug": "GITHUB_DELETE_PULL_REQUEST_REVIEW_PROTECTION", "name": "Delete pull request review protection", "description": "Disables the requirement for pull request reviews before merging for a specific, existing branch in an existing repository; this action is idempotent and will succeed even if the protection is not currently enabled." }, { "slug": "GITHUB_DELETE_REPO_CODESPACE_SECRET_BY_NAME", "name": "Delete repo codespace secret by name", "description": "Deletes a specific Codespace secret from a repository by its name; this action is idempotent and will succeed even if the secret doesn't exist." }, { "slug": "GITHUB_DELETE_SOCIAL_ACCOUNTS_FOR_THE_AUTHENTICATED_USER", "name": "Delete social accounts for the authenticated user", "description": "Deletes currently linked social media account URLs from the authenticated user's GitHub profile." }, { "slug": "GITHUB_DELETE_TEAM_DISCUSSION_COMMENT_REACTION", "name": "Delete team discussion comment reaction", "description": "Deletes a reaction from a team discussion comment, given the organization name, team slug, discussion number, comment number, and reaction ID." }, { "slug": "GITHUB_DELETE_TEAM_DISCUSSION_REACTION", "name": "Delete team discussion reaction", "description": "Permanently deletes a specific reaction from a team discussion within an organization." }, { "slug": "GITHUB_DELETE_USER_LIST", "name": "Delete User List", "description": "Tool to delete a GitHub user list using GraphQL. Use when you need to remove a user list from a GitHub account." }, { "slug": "GITHUB_DELETE_USER_PACKAGE", "name": "Delete a package for a user", "description": "Deletes a package owned by the specified user, requiring admin permissions for the authenticated user; deletion of public packages with over 5,000 downloads may require GitHub support." }, { "slug": "GITHUB_DELETE_WORKFLOW_RUN_LOGS", "name": "Delete workflow run logs", "description": "Deletes all logs for a specific workflow run in a GitHub repository, provided the repository and run exist." }, { "slug": "GITHUB_DISABLE_A_CUSTOM_PROTECTION_RULE_FOR_AN_ENVIRONMENT", "name": "Disable a custom protection rule for an environment", "description": "Disables a specific, currently active custom deployment protection rule for an existing environment within a GitHub repository." }, { "slug": "GITHUB_DISABLE_A_WORKFLOW", "name": "Disable a workflow", "description": "Disables a specified workflow (by ID or filename) in a given GitHub repository, preventing new automatic triggers; any in-progress runs will continue." }, { "slug": "GITHUB_DISABLE_PRIVATE_VULN_REPORTING_FOR_REPO", "name": "Disable private vulnerability reporting for a repository", "description": "Disables private vulnerability reporting for an existing GitHub repository, preventing direct private vulnerability reports to maintainers via GitHub's interface for this repository." }, { "slug": "GITHUB_DISABLE_REPOSITORY_ACTIONS_IN_ORG", "name": "Disable Repository Actions In Org", "description": "Removes a repository from the list of selected repositories enabled for GitHub Actions in an organization. Only works when the organization's `enabled_repositories` policy is set to `selected`. Requires admin:org scope." }, { "slug": "GITHUB_DISMISS_A_REVIEW_FOR_A_PULL_REQUEST", "name": "Dismiss a review for a pull request", "description": "Dismisses an APPROVED or CHANGES_REQUESTED review on a pull request with a mandatory explanatory message. IMPORTANT: Only reviews in APPROVED or CHANGES_REQUESTED state can be dismissed. Reviews in COMMENTED, PENDING, or already DISMISSED state will return a 422 error. To dismiss a review on a protected branch, you must be a repository admin or be authorized to dismiss pull request reviews." }, { "slug": "GITHUB_DOWNLOAD_AN_ARTIFACT", "name": "Download an artifact", "description": "Downloads a GitHub Actions workflow artifact as a ZIP file. Returns the artifact as a downloadable file. Use GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY or GITHUB_LIST_WORKFLOW_RUN_ARTIFACTS to get valid artifact IDs first." }, { "slug": "GITHUB_DOWNLOAD_A_REPOSITORY_ARCHIVE_TAR", "name": "Download a repository tarball", "description": "Downloads a repository's source code as a tarball (.tar.gz) archive for a specific Git reference, if the repository is accessible." }, { "slug": "GITHUB_DOWNLOAD_A_REPOSITORY_ARCHIVE_ZIP", "name": "Download a repository archive ZIP", "description": "Downloads a repository's source code as a ZIP archive for a specific Git reference (branch, tag, or commit SHA). IMPORTANT SIZE LIMITATION: This action may fail with 'payload too large' errors for large repositories due to platform size restrictions. If you encounter size limit issues, consider these alternatives: - Use GITHUB_GET_REPOSITORY_CONTENT to fetch specific files or directories (also lists directory contents) - Clone the repository using git if you need the full codebase Best suited for: small to medium repositories, downloading specific tagged releases, or quick code inspection." }, { "slug": "GITHUB_DOWNLOAD_JOB_LOGS_FOR_A_WORKFLOW_RUN", "name": "Download job logs for a workflow run", "description": "Downloads logs for a specific job in a GitHub Actions workflow run, contingent on the repository's existence and the job ID being valid and having produced logs." }, { "slug": "GITHUB_DOWNLOAD_WORKFLOW_RUN_ATTEMPT_LOGS", "name": "Download workflow run attempt logs", "description": "Downloads a ZIP archive of logs for a specific workflow run attempt. Returns a downloadable ZIP file containing logs for all jobs and steps in the workflow run." }, { "slug": "GITHUB_DOWNLOAD_WORKFLOW_RUN_LOGS", "name": "Download workflow run logs", "description": "Downloads logs for a specific GitHub Actions workflow run as a ZIP archive containing log files for each job in the workflow." }, { "slug": "GITHUB_ENABLE_A_WORKFLOW", "name": "Enable a workflow", "description": "Reactivates a currently disabled GitHub Actions workflow within a repository using its workflow ID or filename." }, { "slug": "GITHUB_ENABLE_GITHUB_ACTIONS_IN_SELECTED_REPOSITORIES", "name": "Enable GitHub actions in selected repositories", "description": "Sets the specific repositories that can use GitHub Actions within an organization by replacing the current list; only applies if the organization's Actions policy is 'selected repositories'." }, { "slug": "GITHUB_ENABLE_PRIVATE_VULN_REPORTING_FOR_REPO", "name": "Enable private vulnerability reporting for a repository", "description": "Enables private vulnerability reporting for a repository, allowing security researchers to privately submit vulnerability reports to maintainers." }, { "slug": "GITHUB_ENABLE_REPO_FOR_GITHUB_ACTIONS", "name": "Enable repo for Github Actions", "description": "Adds a repository to the list of selected repositories enabled for GitHub Actions in an organization. Requires the organization's 'enabled_repositories' policy to be set to 'selected'." }, { "slug": "GITHUB_ENCRYPT_AND_UPDATE_DEV_SECRET", "name": "Encrypt and update dev secret", "description": "Creates or updates a repository's development environment secret using an `encrypted_value` and its corresponding `key_id`; the secret must be pre-encrypted with the repository's Codespaces public key." }, { "slug": "GITHUB_ENCRYPT_ORG_DEV_ENV_SECRET", "name": "Encrypt org dev env secret", "description": "Creates or updates an organization's GitHub Codespaces secret using an encrypted value and its corresponding public key ID." }, { "slug": "GITHUB_EXPORT_A_CODESPACE_FOR_THE_AUTHENTICATED_USER", "name": "Export a codespace for the authenticated user", "description": "Triggers an export of a user's specified codespace, automatically stopping it if active, and returns its export status and download URL." }, { "slug": "GITHUB_EXPORT_SBOM_FOR_REPO", "name": "Export an SBOM for a repository", "description": "Exports the software bill of materials (SBOM) in SPDX JSON format for a repository, if its dependency graph is enabled and it has at least one commit." }, { "slug": "GITHUB_FIND_PULL_REQUESTS", "name": "Find Pull Requests", "description": "Primary tool to find and search pull requests. Supports filtering by repository, author, state, labels, and merge status, and returns structured PR data for reliable use in workflows. GitHub search results are capped at ~1000 total items; narrow filters when totals approach this limit. `created_since`/`updated_since` filter on creation/update timestamps, not `merged_at`; apply merge-date filtering client-side." }, { "slug": "GITHUB_FIND_REPOSITORIES", "name": "Find Repositories", "description": "AI-optimized repository search with smart filtering by language, stars, topics, and ownership. Builds intelligent search queries and returns clean, actionable repository data. Check `incomplete_results` in the response — when true, results are non-exhaustive. Search endpoints are rate-limited to ~30 requests/minute (vs. 5000/hour for general REST); apply backoff on 403/429. Total results are capped at ~1000 per query regardless of pagination." }, { "slug": "GITHUB_FOLLOW_ORGANIZATION_GRAPHQL", "name": "Follow Organization (GraphQL)", "description": "Tool to follow a GitHub organization using GraphQL. Use when you need to make the authenticated user follow an organization." }, { "slug": "GITHUB_FOLLOW_USER", "name": "Follow a user", "description": "Allows the authenticated user to follow the GitHub user specified by `username`; this action is idempotent and the user cannot follow themselves." }, { "slug": "GITHUB_FOLLOW_USER_GRAPHQL", "name": "Follow User (GraphQL)", "description": "Tool to follow a GitHub user using GraphQL. Use when you need to make the authenticated user follow another user." }, { "slug": "GITHUB_FORCE_CANCEL_WORKFLOW_RUN", "name": "Force cancel a workflow run", "description": "Forcefully cancels a queued or in-progress GitHub Actions workflow run, bypassing conditions like always() that would otherwise continue execution. Only use when the standard cancel endpoint fails. Cannot cancel completed workflow runs. Requires write permissions to the repository." }, { "slug": "GITHUB_FORK_GIST", "name": "Fork a gist", "description": "Forks a specified public gist, creating a copy under the authenticated user's account." }, { "slug": "GITHUB_GENERATE_RELEASE_NOTES", "name": "Generate release notes content for a release", "description": "Generates Markdown release notes content (listing changes, pull requests, and contributors) for a GitHub repository release, customizable via tags and a configuration file." }, { "slug": "GITHUB_GET_A_BLOB", "name": "Get a blob", "description": "Retrieves the raw, typically Base64-encoded, content of a file (blob) from a GitHub repository using its SHA hash, if the repository and blob SHA exist." }, { "slug": "GITHUB_GET_A_BRANCH", "name": "Get a branch", "description": "Retrieves detailed information for a specified branch within a GitHub repository." }, { "slug": "GITHUB_GET_ACCESS_RESTRICTIONS", "name": "Get access restrictions", "description": "Lists users, teams, and GitHub Apps with push access to a branch; this branch must be protected in repository settings for detailed restrictions, otherwise expect a 404 or empty response." }, { "slug": "GITHUB_GET_A_COMMIT", "name": "Get a commit", "description": "Retrieves a specific commit from a repository by its owner, name, and a valid commit reference (SHA, branch, or tag), supporting pagination for large diffs." }, { "slug": "GITHUB_GET_ADMIN_BRANCH_PROTECTION", "name": "Get admin branch protection", "description": "Checks if repository administrators are subject to the branch protection rules on a specific branch." }, { "slug": "GITHUB_GET_ALL_API_VERSIONS", "name": "Get all API versions", "description": "Retrieves all officially supported, date-based (e.g., \"2022-11-28\") versions of the GitHub REST API from the /versions endpoint." }, { "slug": "GITHUB_GET_ALL_CONTRIBUTOR_COMMIT_ACTIVITY", "name": "Get all contributor commit activity", "description": "Retrieves commit activity (total commits, weekly additions/deletions/commits) for all contributors to a repository; may require a retry if GitHub returns 202 while preparing data." }, { "slug": "GITHUB_GET_ALL_DEPLOYMENT_PROTECTION_RULES_FOR_ENV", "name": "Get all deployment protection rules for an environment", "description": "Lists all enabled custom deployment protection rules for a specific environment in a repository; the environment must exist and be configured for deployments." }, { "slug": "GITHUB_GET_A_MILESTONE", "name": "Get a milestone", "description": "Retrieves detailed information for a specific milestone within a GitHub repository by its number." }, { "slug": "GITHUB_GET_AN_APP", "name": "Get an app", "description": "Retrieves publicly available information for an existing GitHub App, identified by its unique URL-friendly `app_slug`." }, { "slug": "GITHUB_GET_AN_ARTIFACT", "name": "Get an artifact", "description": "Gets a specific artifact for a repository by `artifact_id`. This action retrieves the details of a specific artifact from a GitHub repository using the artifact's unique identifier. It allows users to access information about artifacts stored in the repository." }, { "slug": "GITHUB_GET_AN_ASSIGNMENT", "name": "Get an assignment", "description": "Retrieves detailed information for a specific GitHub Classroom assignment if the authenticated user is an administrator of the classroom." }, { "slug": "GITHUB_GET_AN_AUTOLINK_REFERENCE_OF_A_REPOSITORY", "name": "Get an autolink reference of a repository", "description": "Retrieves a specific autolink reference (which automatically hyperlinks text like 'JIRA-123' to an external system) for a repository using its unique ID; requires administrator access to the repository." }, { "slug": "GITHUB_GET_AN_ENVIRONMENT", "name": "Get an environment", "description": "Retrieves the details of a specific deployment environment for a given repository, including its name, configurations, and current status." }, { "slug": "GITHUB_GET_AN_ENVIRONMENT_PUBLIC_KEY", "name": "Get an environment public key", "description": "Retrieves the public key for a specified GitHub repository environment, used to encrypt secrets for GitHub Actions." }, { "slug": "GITHUB_GET_AN_ENVIRONMENT_SECRET", "name": "Get an environment secret", "description": "Retrieves metadata (name and timestamps) for a single secret in a GitHub Actions environment. Note: The actual secret value is never returned by this API for security reasons." }, { "slug": "GITHUB_GET_AN_ENVIRONMENT_VARIABLE", "name": "Get an environment variable", "description": "Retrieves a specific environment variable from a GitHub Actions environment by repository owner, repository name, environment name, and variable name." }, { "slug": "GITHUB_GET_AN_ISSUE", "name": "Get an issue", "description": "Retrieves detailed information about a specific issue in a repository using the owner, repository name, and issue number." }, { "slug": "GITHUB_GET_AN_ISSUE_COMMENT", "name": "Get an issue comment", "description": "Action to get an issue comment." }, { "slug": "GITHUB_GET_AN_ISSUE_EVENT", "name": "Get an issue event", "description": "Fetches details of a specific issue event for a given repository and event ID." }, { "slug": "GITHUB_GET_AN_ORGANIZATION", "name": "Get an organization", "description": "Get an organization" }, { "slug": "GITHUB_GET_AN_ORGANIZATION_PUBLIC_KEY", "name": "Get an organization public key", "description": "Action for `GetAnOrganizationPublicKey`." }, { "slug": "GITHUB_GET_AN_ORGANIZATION_ROLE", "name": "Get an organization role", "description": "Retrieves a specific GitHub organization role by its ID." }, { "slug": "GITHUB_GET_AN_ORGANIZATION_SECRET", "name": "Get an organization secret", "description": "Gets an organization secret's metadata (e.g., name, creation/update dates, visibility), but not its encrypted value." }, { "slug": "GITHUB_GET_AN_ORGANIZATION_VARIABLE", "name": "Get an organization variable", "description": "Retrieves details (name, value, visibility, timestamps) of a specific, existing variable for an existing GitHub organization." }, { "slug": "GITHUB_GET_AN_ORGANIZATION_WEBHOOK", "name": "Get an organization webhook", "description": "Retrieves the full configuration, including subscribed events and delivery settings, for an existing organization webhook." }, { "slug": "GITHUB_GET_A_PACKAGE_FOR_AN_ORGANIZATION", "name": "Get a package for an organization", "description": "Retrieves a specific package (by type and name) from an organization, if both the package and organization exist." }, { "slug": "GITHUB_GET_A_PACKAGE_FOR_A_USER", "name": "Get a package for a user", "description": "Retrieves metadata for a specific package owned by a GitHub user, using package type, name, and username as identifiers." }, { "slug": "GITHUB_GET_A_PACKAGE_FOR_THE_AUTHENTICATED_USER", "name": "Get a package for the authenticated user", "description": "Retrieves detailed information for a specific package owned by the authenticated user." }, { "slug": "GITHUB_GET_A_PACKAGE_VERSION_FOR_AN_ORGANIZATION", "name": "Get a package version for an organization", "description": "Retrieves detailed information for a specific version of a package within an organization." }, { "slug": "GITHUB_GET_A_PACKAGE_VERSION_FOR_A_USER", "name": "Get a package version for a user", "description": "Retrieves a specific public package version associated with a GitHub user." }, { "slug": "GITHUB_GET_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER", "name": "Get authenticated user package version", "description": "Retrieves detailed information for an existing specific package version associated with the authenticated user, identified by its type, name, and version ID." }, { "slug": "GITHUB_GET_A_PROJECT", "name": "Get a project", "description": "Retrieves detailed information for a specific GitHub project (V2) using its project number and owner. Note: This action uses GitHub's Projects V2 REST API. The legacy Projects (classic) REST API was sunset on April 1, 2025. The project is identified by its number (visible in the project URL) and owner (either a username or organization name). If no owner is specified, the authenticated user is assumed." }, { "slug": "GITHUB_GET_A_PROJECT_CARD", "name": "Get a project card", "description": "Retrieves all details of a specific project card, given its unique `card_id`. DEPRECATION NOTICE: GitHub Projects (classic) REST API was sunset on April 1, 2025. This action only works with existing classic project cards that were created before the sunset date. For new projects, use GitHub Projects V2 (GraphQL API) instead." }, { "slug": "GITHUB_GET_A_PROJECT_COLUMN", "name": "Get a project column (Classic - Deprecated)", "description": "Retrieves detailed information for a specific project column from GitHub Projects (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ Returns column details including: id, name, url, project_url, cards_url, node_id, created_at, and updated_at timestamps." }, { "slug": "GITHUB_GET_A_PULL_REQUEST", "name": "Get a pull request", "description": "Retrieves a specific pull request from a GitHub repository using its owner, repository name, and pull request number." }, { "slug": "GITHUB_GET_A_REFERENCE", "name": "Get a reference", "description": "Retrieves a specific Git reference (e.g., a branch, tag, or fully qualified like 'heads/main') from a GitHub repository. The reference must exist in the repository; use 'list_matching_references' first if unsure what references are available." }, { "slug": "GITHUB_GET_A_RELEASE", "name": "Get a release", "description": "Gets a specific release from a GitHub repository, provided the repository is accessible and the release exists." }, { "slug": "GITHUB_GET_A_RELEASE_ASSET", "name": "Get a release asset", "description": "Gets metadata for a specific release asset in a GitHub repository, including a `browser_download_url` for downloading the asset." }, { "slug": "GITHUB_GET_A_RELEASE_BY_TAG_NAME", "name": "Get a release by tag name", "description": "Gets a release from a GitHub repository by its tag name; the repository and a release with this tag must already exist." }, { "slug": "GITHUB_GET_A_REPOSITORY", "name": "Get a repository", "description": "Retrieves detailed information about an existing and accessible GitHub repository." }, { "slug": "GITHUB_GET_A_REPOSITORY_PUBLIC_KEY", "name": "Get a repository public key", "description": "Gets a repository's public key for encrypting secrets to be used in GitHub Actions, if the repository exists and is accessible." }, { "slug": "GITHUB_GET_A_REPOSITORY_README", "name": "Get a repository readme", "description": "Fetches the README file (if it exists and is accessible) from a specified GitHub repository, returning its Base64-encoded content and metadata." }, { "slug": "GITHUB_GET_A_REPOSITORY_README_FOR_A_DIRECTORY", "name": "Get a repository readme for a directory", "description": "Retrieves the README file from a specified directory within a GitHub repository, optionally at a given commit, branch, or tag." }, { "slug": "GITHUB_GET_A_REPOSITORY_RULESET", "name": "Get a repository ruleset", "description": "Retrieves a specific repository ruleset by its ID; if `includes_parents` is true, the search for this `ruleset_id` also extends to rulesets from parent organizations." }, { "slug": "GITHUB_GET_A_REPOSITORY_RULE_SUITE", "name": "Get a repository rule suite", "description": "Gets detailed information for a specific repository rule suite by its ID, including its evaluation status and the results of its individual rules." }, { "slug": "GITHUB_GET_A_REPOSITORY_SECRET", "name": "Get a repository secret", "description": "Gets metadata (name, creation/update timestamps) for an existing repository secret, excluding its encrypted value." }, { "slug": "GITHUB_GET_A_REPOSITORY_SUBSCRIPTION", "name": "Get a repository subscription", "description": "Gets the authenticated user's subscription details for a repository, indicating if they receive notifications." }, { "slug": "GITHUB_GET_A_REPOSITORY_VARIABLE", "name": "Get a repository variable", "description": "Gets a specific GitHub Actions variable by name from an accessible repository." }, { "slug": "GITHUB_GET_A_REPOSITORY_WEBHOOK", "name": "Get a repository webhook", "description": "Returns the configuration of an existing webhook for a given repository." }, { "slug": "GITHUB_GET_A_REVIEW_COMMENT_FOR_A_PULL_REQUEST", "name": "Get a review comment for a pull request", "description": "Retrieves a specific pull request review comment by its ID, provided the repository exists, is accessible, and the comment ID is valid." }, { "slug": "GITHUB_GET_A_REVIEW_FOR_A_PULL_REQUEST", "name": "Get a review for a pull request", "description": "Retrieves a specific review for a pull request using its owner, repository, pull request number, and review ID." }, { "slug": "GITHUB_GET_A_SECRET_FOR_THE_AUTHENTICATED_USER", "name": "Get a secret for the authenticated user", "description": "Retrieves metadata (name, timestamps, visibility; not the value) for a specific, existing development environment secret associated with the authenticated user's GitHub Codespaces." }, { "slug": "GITHUB_GET_A_SELF_HOSTED_RUNNER_FOR_AN_ORGANIZATION", "name": "Get a self hosted runner for an organization", "description": "Retrieves detailed information about a specific self-hosted runner registered within a GitHub organization." }, { "slug": "GITHUB_GET_A_SELF_HOSTED_RUNNER_FOR_A_REPOSITORY", "name": "Get a self hosted runner for a repository", "description": "Gets a specific self-hosted runner for a repository by its unique ID." }, { "slug": "GITHUB_GET_ASSIGNMENT_GRADES", "name": "Get assignment grades", "description": "Retrieves all grades for an existing GitHub Classroom assignment." }, { "slug": "GITHUB_GET_A_TAG", "name": "Get a tag", "description": "Retrieves detailed information for a specific Git tag object from a GitHub repository, using the SHA of the tag object itself." }, { "slug": "GITHUB_GET_A_TEAM_BY_NAME", "name": "Get a team by name", "description": "Retrieves a GitHub team by its slug from a specific organization." }, { "slug": "GITHUB_GET_A_THREAD", "name": "Get a thread", "description": "Retrieves a specific GitHub notification thread using its unique `thread_id`." }, { "slug": "GITHUB_GET_A_THREAD_SUBSCRIPTION_FOR_THE_AUTHENTICATED_USER", "name": "Get a thread subscription for the authenticated user", "description": "Retrieves the authenticated user's subscription details for a specific notification thread, identified by `thread_id`." }, { "slug": "GITHUB_GET_A_TREE", "name": "List repository files and directories", "description": "Browse and list all files/directories in a GitHub repository. Efficiently retrieves the complete repository structure in a single API call when used with recursive mode. Perfect for analyzing codebase structure, finding specific files, or getting an overview of repository contents without cloning." }, { "slug": "GITHUB_GET_A_USER", "name": "Get a user", "description": "Retrieves the public profile information for an existing GitHub user, specified by their username." }, { "slug": "GITHUB_GET_A_WEBHOOK_CONFIGURATION_FOR_AN_ORGANIZATION", "name": "Get a webhook configuration for an organization", "description": "Retrieves the configuration for a specific webhook associated with a GitHub organization." }, { "slug": "GITHUB_GET_A_WEBHOOK_CONFIGURATION_FOR_A_REPOSITORY", "name": "Get a webhook configuration for a repository", "description": "Returns the configuration for an existing webhook on the specified repository." }, { "slug": "GITHUB_GET_A_WEBHOOK_DELIVERY_FOR_AN_ORGANIZATION_WEBHOOK", "name": "Get a webhook delivery for an organization webhook", "description": "Returns detailed information for a specific delivery attempt of a webhook configured for the specified GitHub organization." }, { "slug": "GITHUB_GET_A_WORKFLOW", "name": "Get a workflow", "description": "Retrieves detailed information for a specific GitHub Actions workflow in a repository, identified by either its numeric ID or its filename." }, { "slug": "GITHUB_GET_A_WORKFLOW_RUN", "name": "Get a workflow run", "description": "Gets a specific workflow run by its ID from a GitHub repository." }, { "slug": "GITHUB_GET_A_WORKFLOW_RUN_ATTEMPT", "name": "Get a workflow run attempt", "description": "Retrieves detailed information for a specific attempt of a workflow run in a GitHub repository, including its status, conclusion, and timings." }, { "slug": "GITHUB_GET_BILLING_USAGE_REPORT_USER", "name": "Get billing usage report for user", "description": "Retrieves the billing usage report for a specified GitHub user. Use when you need to analyze billing costs and usage patterns." }, { "slug": "GITHUB_GET_BRANCH_PROTECTION", "name": "Get branch protection", "description": "Retrieves branch protection settings for a specific, existing, and accessible branch in a GitHub repository; protection feature availability varies by GitHub product plan." }, { "slug": "GITHUB_GET_CATALOG_MODELS", "name": "Get catalog models", "description": "Tool to retrieve the list of AI models available in the GitHub Models catalog. Use when you need to discover available models, their capabilities, token limits, and supported modalities." }, { "slug": "GITHUB_GET_CHECK_RUN", "name": "Get a check run", "description": "Retrieves detailed information for a specific check run within a GitHub repository." }, { "slug": "GITHUB_GET_CHECK_SUITE", "name": "Get a check suite", "description": "Retrieves a specific check suite (a collection of check runs) by its ID from a repository accessible to the authenticated user." }, { "slug": "GITHUB_GET_CLASSROOM", "name": "Get a classroom", "description": "Retrieves details for a specific GitHub Classroom. Requires the authenticated user to be an administrator of the classroom." }, { "slug": "GITHUB_GET_CODE_OF_CONDUCT", "name": "Get a code of conduct", "description": "Retrieves the full details of a specific GitHub code of conduct using its unique key." }, { "slug": "GITHUB_GET_CODE_OF_CONDUCT_GRAPH_QL", "name": "Get Code of Conduct (GraphQL)", "description": "Tool to look up a code of conduct by its key using GitHub's GraphQL API. Use when you need to fetch code of conduct details as part of a GraphQL workflow." }, { "slug": "GITHUB_GET_CODEQL_DATABASE", "name": "Get a CodeQL database for a repository", "description": "Gets an existing CodeQL database (including a download URL) for a specified language in an accessible repository, if one has been successfully built for that language." }, { "slug": "GITHUB_GET_CODE_SCANNING_ALERT", "name": "Get a code scanning alert", "description": "Retrieves a specific code scanning alert, which identifies potential code vulnerabilities or errors, by its number from the specified GitHub repository." }, { "slug": "GITHUB_GET_CODE_SCANNING_ANALYSIS", "name": "Get a code scanning analysis for a repository", "description": "Retrieves detailed information for a specific code scanning analysis on an accessible repository, identified by its `analysis_id`." }, { "slug": "GITHUB_GET_CODE_SCANNING_DEFAULT_SETUP", "name": "Get a code scanning default setup configuration", "description": "Gets the default setup configuration for code scanning in a repository, including state, languages, query suite, and schedule for a repository if it exists." }, { "slug": "GITHUB_GET_CODESPACE", "name": "Get a codespace for the authenticated user", "description": "Call to retrieve detailed information for a `codespace_name` belonging to the authenticated user, ensuring the codespace exists and is accessible." }, { "slug": "GITHUB_GET_COMMIT_AUTHORS", "name": "Get commit authors", "description": "Fetches commit authors identified during a repository import, used to map authors from an external VCS to GitHub accounts. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports." }, { "slug": "GITHUB_GET_COMMIT_COMMENT", "name": "Get a commit comment", "description": "Retrieves the full details of a specific commit comment in a GitHub repository, using its unique identifier." }, { "slug": "GITHUB_GET_COMMIT_OBJECT", "name": "Get a commit object", "description": "Retrieves detailed information (including author, committer, message, tree, parents, verification) for a specific commit in a GitHub repository, identified by its SHA." }, { "slug": "GITHUB_GET_COMMIT_SIGNATURE_PROTECTION", "name": "Get commit signature protection", "description": "Gets the commit signature protection status for a branch in a repository." }, { "slug": "GITHUB_GET_COMMIT_STATUSES", "name": "Get commit statuses", "description": "List all statuses for a commit reference (SHA, branch, or tag) in reverse chronological order. Use when you need to check CI/CD status results from various systems for a specific commit." }, { "slug": "GITHUB_GET_COMMUNITY_PROFILE_METRICS", "name": "Get community profile metrics", "description": "Retrieves a repository's community profile metrics, including health percentage and the presence of key community files (e.g., README, LICENSE)." }, { "slug": "GITHUB_GET_CONTEXTUAL_INFORMATION_FOR_A_USER", "name": "Get contextual information for a user", "description": "Gets contextual hovercard information for a GitHub user; `subject_type` and `subject_id` can be jointly provided for more specific details." }, { "slug": "GITHUB_GET_CUSTOM_DEPLOYMENT_PROTECTION_RULE", "name": "Get a custom deployment protection rule", "description": "Retrieves a specific custom deployment protection rule (used by GitHub Apps for external validation or manual approval of deployments) for a given environment in a repository." }, { "slug": "GITHUB_GET_DEFAULT_ATTRIBUTES_FOR_A_CODESPACE", "name": "Get default attributes for a codespace", "description": "Get pre-flight data (e.g., default location, devcontainer path) for creating a Codespace in a given repository (must exist and be accessible), optionally for a specific Git ref." }, { "slug": "GITHUB_GET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_AN_ORGANIZATION", "name": "Get default workflow permissions for an organization", "description": "Gets the default GITHUB_TOKEN workflow permissions and settings for a GitHub organization." }, { "slug": "GITHUB_GET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_A_REPOSITORY", "name": "Get default workflow permissions for a repository", "description": "Gets the default workflow permissions (`read` or `write`) for the GITHUB_TOKEN and whether it can approve pull request reviews in an existing and accessible repository." }, { "slug": "GITHUB_GET_DEPENDENCY_DIFF", "name": "Get a diff of the dependencies between commits", "description": "Gets the dependency diff between two Git revisions in a repository, where 'basehead' specifies the revisions and 'name' can optionally scope to a specific manifest file." }, { "slug": "GITHUB_GET_DEPLOY_KEY", "name": "Get a deploy key", "description": "Gets a specific deploy key, identified by its `key_id`, for the GitHub repository specified by `owner` and `repo`." }, { "slug": "GITHUB_GET_DEPLOYMENT", "name": "Get a deployment", "description": "Gets a specific deployment by ID from a repository, provided the repository and deployment ID exist." }, { "slug": "GITHUB_GET_DEPLOYMENT_BRANCH_POLICY", "name": "Get a deployment branch policy", "description": "Retrieves a specific deployment branch policy for an environment in a repository, identified by its unique ID." }, { "slug": "GITHUB_GET_DEPLOYMENT_STATUS", "name": "Get a deployment status", "description": "Retrieves a specific deployment status by its ID for a given deployment within a GitHub repository." }, { "slug": "GITHUB_GET_DETAILS_ABOUT_A_CODESPACE_EXPORT", "name": "Get details about a codespace export", "description": "Retrieves detailed information about a specific export of a codespace." }, { "slug": "GITHUB_GET_DISCUSSION", "name": "Get a discussion", "description": "Fetches a specific discussion by its number from a team within an organization. This is a read-only action that retrieves discussion details including title, body, author information, comment count, and reactions. The authenticated user must be a member of the organization to access team discussions." }, { "slug": "GITHUB_GET_DISCUSSION_COMMENT", "name": "Get a discussion comment", "description": "Fetches a specific comment from a team discussion within a specific organization." }, { "slug": "GITHUB_GET_EMOJIS", "name": "Get emojis", "description": "Lists all emojis available for use on GitHub, including custom and Unicode emojis." }, { "slug": "GITHUB_GET_ENTERPRISE_MEMBER_INVITATION", "name": "Get Enterprise Member Invitation", "description": "Tool to look up a pending enterprise unaffiliated member invitation by invitee and enterprise. Use when you need to check the status of a specific invitation." }, { "slug": "GITHUB_GET_FEEDS", "name": "Get feeds", "description": "Fetches a list of available GitHub feed URLs for the authenticated user." }, { "slug": "GITHUB_GET_GIST", "name": "Get a gist", "description": "Fetches a specific GitHub gist by its `gist_id`, returning comprehensive details if the gist exists." }, { "slug": "GITHUB_GET_GIST_COMMENT", "name": "Get a gist comment", "description": "Retrieves a specific Gist comment by its ID and the Gist's ID." }, { "slug": "GITHUB_GET_GIST_REVISION", "name": "Get a gist revision", "description": "Retrieves a specific revision of a gist." }, { "slug": "GITHUB_GET_GITHUB_ACTIONS_CACHE_USAGE_FOR_AN_ORGANIZATION", "name": "Get GitHub Actions cache usage for an organization", "description": "Retrieves total GitHub Actions cache usage statistics for an organization, including active cache count and size across all repositories." }, { "slug": "GITHUB_GET_GITHUB_ACTIONS_CACHE_USAGE_FOR_A_REPOSITORY", "name": "Get github actions cache usage for a repository", "description": "Retrieves the total count of active GitHub Actions caches and their combined size in bytes for a specified repository." }, { "slug": "GITHUB_GET_GITHUB_ACTIONS_PERMISSIONS_FOR_AN_ORGANIZATION", "name": "Get github actions permissions for an organization", "description": "Gets the GitHub Actions permissions for a specified organization, detailing repository enablement and allowed actions policies." }, { "slug": "GITHUB_GET_GITHUB_ACTIONS_PERMISSIONS_FOR_A_REPOSITORY", "name": "Get GitHub Actions permissions for a repository", "description": "Gets the GitHub Actions permissions policy for a repository, including its enabled status and the scope of allowed actions." }, { "slug": "GITHUB_GET_GITHUB_BILLING_PREMIUM_REQUEST_USAGE_REPORT_USER", "name": "Get billing premium request usage", "description": "Tool to get billing premium request usage report for a GitHub user. Use when you need to retrieve usage data for premium features like Copilot or AI models." }, { "slug": "GITHUB_GET_GITHUB_BILLING_USAGE_SUMMARY_FOR_USER", "name": "Get billing usage summary for user", "description": "Tool to retrieve billing usage summary for a GitHub user account. Use when tracking usage costs, monitoring billing details, or generating usage reports for a specific user. Note: This endpoint only returns data for the past 24 months and is currently in public preview." }, { "slug": "GITHUB_GET_GITHUB_META_INFORMATION", "name": "Get github meta information", "description": "Fetches GitHub's publicly available metadata, useful for configuring network security policies or IP allow-listing." }, { "slug": "GITHUB_GET_GITHUB_PAGES_BUILD", "name": "Get github pages build", "description": "Retrieves detailed information about a specific GitHub Pages build for a repository, which must have GitHub Pages enabled." }, { "slug": "GITHUB_GET_GITIGNORE_TEMPLATE", "name": "Get a gitignore template", "description": "Retrieves a specific .gitignore template from GitHub by its name, which must be an existing template in GitHub's collection." }, { "slug": "GITHUB_GET_GLOBAL_SECURITY_ADVISORY", "name": "Get a global security advisory", "description": "Retrieve a global GitHub security advisory by its GHSA identifier. Use this to get detailed information about vulnerabilities including severity, affected packages, CVSS scores, and references." }, { "slug": "GITHUB_GET_GRAPHQL_NODE", "name": "Fetch GraphQL Node", "description": "Tool to fetch any GitHub object by its global node ID. Use when you have a node_id and need to retrieve the corresponding object details." }, { "slug": "GITHUB_GET_GRAPHQL_RATE_LIMIT", "name": "Get GraphQL rate limit", "description": "Tool to retrieve the authenticated client's GitHub GraphQL API rate limit information. Use when you need to check remaining quota, current usage, or reset time for GraphQL requests." }, { "slug": "GITHUB_GET_INFORMATION_ABOUT_A_SARIF_UPLOAD", "name": "Get information about a sarif upload", "description": "Retrieves detailed information, including processing status and results URL, about a specific SARIF (Static Analysis Results Interchange Format) upload for a repository, uniquely identified by its sarif_id." }, { "slug": "GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION", "name": "Get interaction restrictions for an organization", "description": "Retrieves interaction restrictions for an organization, showing which GitHub user types can interact with its public repositories and when restrictions expire; returns an empty response if no restrictions are set." }, { "slug": "GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY", "name": "Get interaction restrictions for a repository", "description": "Retrieves active interaction restrictions for a repository, detailing which user groups are limited from activities like commenting or creating pull requests, and when these restrictions expire." }, { "slug": "GITHUB_GET_INTERACTION_RESTRICTIONS_FOR_PUBLIC_REPOS", "name": "Get interaction restrictions for public repositories", "description": "Retrieves currently active interaction restrictions for the authenticated user's public repositories." }, { "slug": "GITHUB_GET_ISSUE_COMMENTS", "name": "Get issue comments", "description": "Retrieves all comments for a specific GitHub issue in chronological order. Use this action when you need to view discussion history, analyze comment threads, or fetch comment details for a specific issue. Comments can be filtered by update time and paginated for large discussions." }, { "slug": "GITHUB_GET_LABEL", "name": "Get a label", "description": "Retrieves a specific label by its name from a specified GitHub repository." }, { "slug": "GITHUB_GET_LARGE_FILES", "name": "Get large files", "description": "Lists files larger than 100MB identified during a previous source import for the specified repository. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports." }, { "slug": "GITHUB_GET_LATEST_PAGES_BUILD", "name": "Get latest pages build", "description": "Retrieves information about the most recent GitHub Pages build for a repository, which must exist, be accessible, have GitHub Pages enabled, and have at least one prior build." }, { "slug": "GITHUB_GET_LICENSE", "name": "Get a license", "description": "Call this action to retrieve comprehensive details for a specific software license recognized by GitHub, using its unique license key." }, { "slug": "GITHUB_GET_LICENSE_GRAPH_QL", "name": "Get License (GraphQL)", "description": "Tool to look up an open source license by its SPDX ID using GitHub's GraphQL API. Use when you need to fetch license details for compliance tracking or repository setup." }, { "slug": "GITHUB_GET_OCTOCAT", "name": "Get octocat", "description": "Fetches an ASCII art representation of GitHub's Octocat, suitable for text-based displays." }, { "slug": "GITHUB_GET_OIDC_SUBJECT_CLAIM_TEMPLATE", "name": "Customize OIDC subject claim template", "description": "Retrieves the OpenID Connect (OIDC) subject claim customization template for a repository, which defines the `sub` claim structure in OIDC tokens for GitHub Actions workflows; returns the default configuration if no customization is applied." }, { "slug": "GITHUB_GET_ORG_ALLOWED_ACTIONS", "name": "Get allowed actions and workflows for an org", "description": "Gets the list of allowed actions and reusable workflows for an organization when the 'allowed_actions' policy is set to 'selected'." }, { "slug": "GITHUB_GET_ORGANIZATION_AUDIT_LOG", "name": "Get organization audit log", "description": "Tool to retrieve an organization's audit log events for security and compliance investigations. Use when tracking organizational changes, security audits, or compliance monitoring. Requires organization owner permissions and read:audit_log scope." }, { "slug": "GITHUB_GET_ORGANIZATION_CUSTOM_PROPERTY", "name": "Get a custom property for an organization", "description": "Retrieves the definition (schema) of a specific, existing custom property for an organization." }, { "slug": "GITHUB_GET_ORGANIZATION_PROJECT_ITEM", "name": "Get organization project item", "description": "Tool to get an item from an organization-owned GitHub Projects V2 project. Use when you need to retrieve details about a specific project item including its content, fields, timestamps, and creator information." }, { "slug": "GITHUB_GET_ORGANIZATION_PUBLIC_KEY", "name": "Get organization public key for Codespaces secrets", "description": "Retrieves an organization's public key, which must be used to encrypt secret values before they are configured for Codespaces." }, { "slug": "GITHUB_GET_ORGANIZATION_PUBLIC_KEY_FOR_DEPENDABOT", "name": "Fetch Public Key For Secret Encryption", "description": "Retrieves the public key for an existing GitHub organization, required for encrypting Dependabot secrets. Requires admin:org scope." }, { "slug": "GITHUB_GET_ORGANIZATION_TEAMS", "name": "Get organization teams", "description": "Retrieves a list of teams for a specified GitHub organization. Use this action when you need to list all teams, find team information, or explore team structure within an organization. Requires read:org scope and returns paginated results." }, { "slug": "GITHUB_GET_ORG_DEV_ENVIRONMENT_SECRET_SAFELY", "name": "Get org dev environment secret safely", "description": "Retrieves metadata for a specific secret available to an organization's GitHub Codespaces without exposing its encrypted value." }, { "slug": "GITHUB_GET_ORG_OIDC_SUBJECT_CLAIM_TEMPLATE", "name": "Get custom OIDC subject claim template", "description": "Retrieves the OpenID Connect (OIDC) subject claim customization template for a GitHub organization, which defines how the `sub` claim in OIDC tokens for workflows is constructed." }, { "slug": "GITHUB_GET_PAGES_DNS_HEALTH_CHECK", "name": "Get a dns health check for github pages", "description": "Retrieves the DNS health check status (e.g., CNAME/A records, HTTPS) for a GitHub Pages site; the check may be pending (HTTP 202) on initial calls or after site changes." }, { "slug": "GITHUB_GET_PAGES_SITE", "name": "Get a GitHub Pages site", "description": "Retrieves information for a GitHub Pages site, which must be enabled for the repository." }, { "slug": "GITHUB_GET_PAGE_VIEWS", "name": "Get page views", "description": "Retrieves page view statistics for a repository over the last 14 days, including total views, unique visitors, and a daily or weekly breakdown." }, { "slug": "GITHUB_GET_PENDING_DEPLOYMENTS_FOR_A_WORKFLOW_RUN", "name": "Get pending deployments for a workflow run", "description": "Retrieves pending deployment environments for a specific workflow run that are awaiting approval due to protection rules." }, { "slug": "GITHUB_GET_PROJECT_PERMISSION_FOR_A_USER", "name": "Get project permission for a user", "description": "Retrieves permission information for a GitHub project (classic) collaborator. Returns the permission level and full user object for a collaborator on a GitHub project (classic). The permission returned can be admin, write, read, or none." }, { "slug": "GITHUB_GET_PUBLIC_KEY_FOR_SECRET_ENCRYPTION", "name": "Get public key for secret encryption", "description": "Retrieves a repository's public key for encrypting GitHub Codespaces secrets; requires `repo` scope or equivalent read access to codespaces secrets for private repositories." }, { "slug": "GITHUB_GET_PUBLIC_KEY_FOR_THE_AUTHENTICATED_USER", "name": "Get public key for the authenticated user", "description": "Retrieves the authenticated user's public key for encrypting GitHub Codespaces secrets. The returned key must be used with libsodium sealed box encryption before creating or updating secrets via the API." }, { "slug": "GITHUB_GET_PULL_REQUEST_REVIEW_PROTECTION", "name": "Get pull request review protection", "description": "Retrieves the pull request review protection settings for a specific branch in a GitHub repository, if such protection is configured." }, { "slug": "GITHUB_GET_PULL_REQUESTS", "name": "Get Pull Requests", "description": "Retrieves a list of pull requests from a repository with flexible filtering options. Use this action when you need to list all pull requests in a repository, optionally filtered by state (open, closed, all), base branch, head branch, or sort order. Returns an array of pull request objects with comprehensive details including title, state, author, labels, timestamps, and branch information." }, { "slug": "GITHUB_GET_RATE_LIMIT_STATUS_FOR_THE_AUTHENTICATED_USER", "name": "Get rate limit status for the authenticated user", "description": "Retrieves the authenticated user's current GitHub API rate limit status, including usage and limits across different resource categories." }, { "slug": "GITHUB_GET_RAW_REPOSITORY_CONTENT", "name": "Get Raw Repository Content", "description": "Tool to fetch raw file content from a GitHub repository. Returns raw bytes in whatever format the file uses (JSON, CSV, binary, etc.) — parsing and validation are the caller's responsibility. Ensure owner, repo, ref, and path are consistent when combining with other GitHub tools to avoid mismatched-ref errors." }, { "slug": "GITHUB_GET_REPO_ALLOWED_ACTIONS", "name": "Get allowed actions and workflows for a repository", "description": "Gets the settings for allowed actions and reusable workflows in a repository. Requires the repository's `allowed_actions` policy to be set to `selected` (returns 409 if set to `all` or `local_only`)." }, { "slug": "GITHUB_GET_REPO_DEV_ENV_SECRET", "name": "Get repository development environment secret", "description": "Gets metadata (name, creation/update timestamps) for a specific, existing development environment secret (Codespaces secret) in a repository, without exposing its value." }, { "slug": "GITHUB_GET_REPOS_ATTESTATIONS", "name": "Get repository attestations", "description": "Tool to retrieve attestations by subject digest from a GitHub repository. Use when you need to verify or check attestations for a specific artifact identified by its SHA256 digest." }, { "slug": "GITHUB_GET_REPOSITORY_CLONES", "name": "Get repository clones", "description": "Retrieves the total number of clones and a breakdown of clone activity (daily or weekly) for a specified repository over the preceding 14 days." }, { "slug": "GITHUB_GET_REPOSITORY_CONTENT", "name": "Get repository content", "description": "Retrieves a file's Base64 encoded content or lists a directory's contents from a GitHub repository." }, { "slug": "GITHUB_GET_REPOSITORY_GRAPH_QL", "name": "Get Repository via GraphQL", "description": "Tool to lookup a repository by owner and name using GitHub's GraphQL API. Use when you need comprehensive repository information." }, { "slug": "GITHUB_GET_REPOSITORY_OWNER", "name": "Get Repository Owner", "description": "Tool to lookup a repository owner (User or Organization) by login using GitHub's GraphQL API. Use when you need to determine whether a login is a user or organization and retrieve basic profile information." }, { "slug": "GITHUB_GET_REPOSITORY_PERMISSIONS_FOR_A_USER", "name": "Get repository permissions for a user", "description": "Retrieves a specific user's permission level ('admin', 'write', 'read', or 'none') for a given repository, where 'maintain' role is reported as 'write' and 'triage' as 'read'." }, { "slug": "GITHUB_GET_REPOSITORY_PUBLIC_KEY_FOR_ENCRYPTION", "name": "Retrieve repo public key for encryption", "description": "Gets a repository's public key, used to encrypt secrets for Dependabot." }, { "slug": "GITHUB_GET_REPOSITORY_SECRET_SECURELY", "name": "Get repository secret securely", "description": "Retrieves metadata for an existing Dependabot secret in a repository, without exposing its encrypted value." }, { "slug": "GITHUB_GET_REPOSITORY_SECURITY_ADVISORY", "name": "Get repository security advisory", "description": "Tool to retrieve a repository security advisory using its GHSA identifier. Use when you need detailed information about a specific security vulnerability." }, { "slug": "GITHUB_GET_REPOSITORY_WEBHOOK_DELIVERY", "name": "Get a delivery for a repository webhook", "description": "Retrieves a specific delivery for a repository webhook, identified by its `hook_id` and `delivery_id`." }, { "slug": "GITHUB_GET_RULES_FOR_A_BRANCH", "name": "Get rules for a branch", "description": "Retrieves all active rules for a specific branch in a GitHub repository, excluding rules in 'evaluate' or 'disabled' status." }, { "slug": "GITHUB_GET_SINGLE_ORG_SECRET_WITHOUT_DECRYPTION", "name": "Get Organization Dependabot Secret", "description": "Gets a single organization Dependabot secret's metadata (name, timestamps, visibility) without revealing its encrypted value. Requires admin:org scope." }, { "slug": "GITHUB_GET_STATUS_CHECKS_PROTECTION", "name": "Get status checks protection", "description": "Retrieves the status check protection settings for a specific branch in a GitHub repository, if status check protection is enabled for it." }, { "slug": "GITHUB_GET_TEAM_MEMBERS", "name": "Get team members", "description": "Retrieves a list of members for a specific team within an organization. Returns team members including members of child teams. Use this action when you need to see who belongs to a team, optionally filtered by their role (member or maintainer). Requires the authenticated user to have read access to the team within the organization." }, { "slug": "GITHUB_GET_TEAM_MEMBERSHIP_FOR_A_USER", "name": "Get team membership for a user", "description": "Retrieves a user's role and membership status within a specific team in an organization. Returns membership details including role ('member' or 'maintainer') and state ('active' or 'pending'). If the user is not a member of the team, returns is_member=False with a descriptive message. Requires the authenticated user to be an organization member with visibility into the team." }, { "slug": "GITHUB_GET_TEAMS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH", "name": "Get teams with access to the protected branch", "description": "Lists teams with explicit push access to a protected branch, provided team restrictions are configured in the branch's protection settings; returns an empty list otherwise." }, { "slug": "GITHUB_GET_THE_AUTHENTICATED_USER", "name": "Get the authenticated user", "description": "Gets the profile information for the currently authenticated GitHub user, including potentially private details based on user settings." }, { "slug": "GITHUB_GET_THE_COMBINED_STATUS_FOR_A_SPECIFIC_REFERENCE", "name": "Get the combined status for a specific reference", "description": "Retrieves the aggregated commit status (e.g., success, failure, pending) from all checks for a specific reference (SHA, branch, or tag) in a GitHub repository." }, { "slug": "GITHUB_GET_THE_HOURLY_COMMIT_COUNT_FOR_EACH_DAY", "name": "Get the hourly commit count for each day", "description": "Retrieves the 'punch card' data, showing hourly commit counts for each day of the week for an existing and accessible repository." }, { "slug": "GITHUB_GET_THE_LAST_YEAR_OF_COMMIT_ACTIVITY", "name": "Get the last year of commit activity", "description": "Fetches weekly commit totals and daily commit counts for the last 52 weeks for a specified GitHub repository." }, { "slug": "GITHUB_GET_THE_LATEST_RELEASE", "name": "Get the latest release", "description": "Fetches the latest official (non-prerelease, non-draft) release for a GitHub repository; requires at least one such published release." }, { "slug": "GITHUB_GET_THE_LICENSE_FOR_A_REPOSITORY", "name": "Get the license for a repository", "description": "Retrieves the license file and its details for a repository, optionally from a specific Git reference (branch, tag, or commit SHA)." }, { "slug": "GITHUB_GET_THE_REVIEW_HISTORY_FOR_A_WORKFLOW_RUN", "name": "Get the review history for a workflow run", "description": "Retrieves the detailed approval history for a specific workflow run in a GitHub repository, detailing each review's environment, state, reviewer, and comments, to track the approval process for workflows, particularly automated deployments." }, { "slug": "GITHUB_GET_THE_STATUS_OF_A_GITHUB_PAGES_DEPLOYMENT", "name": "Get the status of a GitHub Pages deployment", "description": "Retrieves the status of a specific GitHub Pages deployment for a repository, which must have GitHub Pages enabled." }, { "slug": "GITHUB_GET_THE_WEEKLY_COMMIT_ACTIVITY", "name": "Get the weekly commit activity", "description": "Fetches the weekly commit activity (additions and deletions per week) for a repository over the past year; best for repositories with under 10,000 commits." }, { "slug": "GITHUB_GET_THE_WEEKLY_COMMIT_COUNT", "name": "Get the weekly commit count", "description": "Retrieves the weekly commit count for a repository, detailing commits by the owner and all contributors over the last 52 weeks; GitHub may return a 202 status or an empty response if statistics are being computed." }, { "slug": "GITHUB_GET_THE_ZEN_OF_GITHUB", "name": "Get the Zen of GitHub", "description": "Retrieves a random quote from GitHub's 'Zen of GitHub' collection, reflecting GitHub's design philosophies and offering humorous insights, useful for displaying GitHub wisdom or a lighthearted message." }, { "slug": "GITHUB_GET_TOP_REFERRAL_PATHS", "name": "Get top referral paths", "description": "Fetches the top 10 most viewed content paths for a repository from the last 14 days." }, { "slug": "GITHUB_GET_TOP_REFERRAL_SOURCES", "name": "Get top referral sources", "description": "Fetches the top 10 websites that referred traffic to a repository within the last 14 days." }, { "slug": "GITHUB_GET_USER_BY_ID", "name": "Get user by ID", "description": "Retrieves a GitHub user's profile information by their unique numeric account ID. Use when you know the user's numeric ID rather than their username." }, { "slug": "GITHUB_GET_USER_PROJECT_ITEM", "name": "Get user project item", "description": "Tool to get an item from a user-owned project in GitHub Projects V2. Use when you need to retrieve details about a specific item (issue, pull request, or draft issue) in a user's project board." }, { "slug": "GITHUB_GET_USERS_ATTESTATIONS", "name": "Get user attestations by subject digest", "description": "Tool to get attestations by subject digest for a GitHub user. Use when you need to retrieve attestation data for a specific artifact or resource identified by its subject digest." }, { "slug": "GITHUB_GET_USERS_PROJECTS_V2", "name": "Get user's projects v2", "description": "Tool to list GitHub Projects v2 for a specified user. Use when you need to retrieve all projects owned by a user with pagination support." }, { "slug": "GITHUB_GET_USERS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH", "name": "Get users with access to the protected branch", "description": "Lists users with explicit push access to a protected branch, provided its protection rule restricts pushes to specific users." }, { "slug": "GITHUB_GET_VIEWER_GRAPHQL", "name": "Get Viewer via GraphQL", "description": "Tool to retrieve the authenticated user's profile information via GitHub GraphQL. Use when working with GraphQL queries or need viewer details in GraphQL format." }, { "slug": "GITHUB_GET_WORKFLOW_EXTERNAL_ACCESS", "name": "Get workflow external access level", "description": "Gets the access level settings for a private repository, determining how workflows outside this repository can use its actions and reusable workflows." }, { "slug": "GITHUB_GET_WORKFLOW_RUN_JOB", "name": "Get a job for a workflow run", "description": "Retrieves detailed information for a specific job within a GitHub Actions workflow run, given its `job_id` which must be valid for the specified repository's workflow." }, { "slug": "GITHUB_GET_WORKFLOW_RUN_USAGE", "name": "Get workflow run usage", "description": "Gets the billable time, in milliseconds, for a specific workflow run, detailing time spent on various operating systems." }, { "slug": "GITHUB_GET_WORKFLOW_USAGE", "name": "Get workflow usage", "description": "Gets the billable time (in milliseconds, broken down by runner OS) for a specific workflow within a repository for the current billing cycle." }, { "slug": "GITHUB_IS_REPOSITORY_STARRED_BY_THE_USER", "name": "Check if repo starred by auth user", "description": "Use to determine if the authenticated user has starred a specific GitHub repository, which is confirmed by an HTTP 204 status (resulting in an empty dictionary in the response data); the action fails (e.g., HTTP 404) if the repository is not starred or does not exist." }, { "slug": "GITHUB_LIST_ACCEPTED_ASSIGNMENTS_FOR_AN_ASSIGNMENT", "name": "List accepted assignments for an assignment", "description": "Lists accepted assignments (student repositories created after acceptance) for an existing GitHub Classroom assignment, identified by its unique `assignment_id`." }, { "slug": "GITHUB_LIST_ACCESSIBLE_REPOSITORIES", "name": "List repositories accessible via GitHub App installation", "description": "Lists repositories that the authenticated user can access through a specific GitHub App installation. Returns repositories where the user has explicit :read, :write, or :admin permission through the installation. The response includes permission details for each repository. Prerequisites: - Requires a GitHub App user access token (not a standard OAuth token) - Use GITHUB_LIST_APP_INSTALLATIONS first to get valid installation IDs" }, { "slug": "GITHUB_LIST_APP_INSTALLATIONS", "name": "List app installations for user token", "description": "Lists GitHub App installations accessible to the authenticated user via their access token, including installation details, permissions, and repository access." }, { "slug": "GITHUB_LIST_APPS_WITH_ACCESS_TO_THE_PROTECTED_BRANCH", "name": "Get apps with access to the protected branch", "description": "Lists GitHub Apps with push access to a repository's protected branch." }, { "slug": "GITHUB_LIST_ARTIFACTS_FOR_A_REPOSITORY", "name": "List artifacts for a repository", "description": "Lists GitHub Actions workflow artifacts for a specified repository, which must exist." }, { "slug": "GITHUB_LIST_ASSIGNEES", "name": "List assignees", "description": "Lists users who can be assigned to issues in a repository, typically those with push access." }, { "slug": "GITHUB_LIST_ASSIGNMENTS_FOR_A_CLASSROOM", "name": "List assignments for a classroom", "description": "Lists all assignments for a given GitHub Classroom `classroom_id`; the classroom must exist and be accessible." }, { "slug": "GITHUB_LIST_ATTESTATION_REPOSITORIES", "name": "List attestation repositories", "description": "Tool to list attestation repositories for an organization. Use when you need to discover which repositories in an organization have attestations. Attestations provide verifiable metadata about software artifacts." }, { "slug": "GITHUB_LIST_AVAILABLE_MACHINE_TYPES_FOR_A_REPOSITORY", "name": "List available machine types for a repository", "description": "Lists machine types available for GitHub Codespaces in a repository, optionally using a Git ref to check compatibility based on prebuild availability and devcontainer configurations." }, { "slug": "GITHUB_LIST_BRANCHES", "name": "List branches", "description": "List branches in a GitHub repository. Returns branch names, commit information, and protection status. Use this action when you need to retrieve all branches in a repository, optionally filtered by protection status. This is useful for identifying available branches, checking which branches are protected, or preparing to create pull requests." }, { "slug": "GITHUB_LIST_BRANCHES_FOR_HEAD_COMMIT", "name": "List branches for head commit", "description": "Lists branches in an accessible repository where the provided commit SHA is the head, useful for identifying development lines based on that commit." }, { "slug": "GITHUB_LIST_CHECK_RUN_ANNOTATIONS", "name": "List check run annotations", "description": "Lists annotations for a specific check run in a GitHub repository, detailing issues like errors or warnings on particular code lines." }, { "slug": "GITHUB_LIST_CHECK_RUNS_FOR_A_REF", "name": "List check runs for a git ref", "description": "List GitHub check runs for a commit SHA, branch, or tag to assess CI status and conclusions. Use when you need reliable CI pass/fail signals beyond commit metadata." }, { "slug": "GITHUB_LIST_CHECK_RUNS_IN_A_CHECK_SUITE", "name": "List check runs in a check suite", "description": "Lists check runs for a specific check suite in a GitHub repository, optionally filtering by check name or status." }, { "slug": "GITHUB_LIST_CHECK_SUITES_FOR_A_GIT_REFERENCE", "name": "List check suites for a git reference", "description": "Lists check suites for a Git reference (commit SHA, branch, or tag) in a repository, optionally filtering by GitHub App ID or check run name." }, { "slug": "GITHUB_LIST_CHILD_TEAMS", "name": "List child teams", "description": "Lists the immediate child teams of a parent team within an organization." }, { "slug": "GITHUB_LIST_CLASSROOMS", "name": "List classrooms", "description": "Lists GitHub Classrooms to which the authenticated user has administrative access." }, { "slug": "GITHUB_LIST_CODEOWNERS_ERRORS", "name": "List codeowners errors", "description": "Lists syntax errors in a repository's CODEOWNERS file, which must be located at the root, `.github/`, or `docs/` directory for the specified ref." }, { "slug": "GITHUB_LIST_CODEQL_DATABASES_FOR_A_REPOSITORY", "name": "List CodeQL databases for a repository", "description": "Lists all CodeQL databases for a repository where CodeQL analysis has been previously run and completed." }, { "slug": "GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_AN_ORGANIZATION", "name": "List code scanning alerts for an organization", "description": "Lists code scanning alerts for a GitHub organization; use EITHER `tool_name` OR `tool_guid` if filtering by tool, not both." }, { "slug": "GITHUB_LIST_CODE_SCANNING_ALERTS_FOR_A_REPOSITORY", "name": "List code scanning alerts for a repository", "description": "Lists code scanning alerts for a repository, optionally filtering by tool (which must have produced scan results for the repository), Git reference, state, or severity." }, { "slug": "GITHUB_LIST_CODE_SCANNING_ANALYSES_FOR_A_REPOSITORY", "name": "List code scanning analyses for a repository", "description": "Lists code scanning analyses for an existing repository, optionally filtering by tool (name or GUID), Git reference, or SARIF ID." }, { "slug": "GITHUB_LIST_CODES_OF_CONDUCT", "name": "Get all codes of conduct", "description": "Retrieves all available codes of conduct from GitHub, often used to select one for a repository." }, { "slug": "GITHUB_LIST_CODES_OF_CONDUCT_GRAPHQL", "name": "List Codes of Conduct (GraphQL)", "description": "Tool to fetch all available codes of conduct using GitHub's GraphQL API. Use when you need to retrieve the complete list of codes of conduct that can be applied to repositories." }, { "slug": "GITHUB_LIST_CODESPACES_FOR_A_USER_IN_ORGANIZATION", "name": "List codespaces for a user in organization", "description": "Lists all GitHub Codespaces owned by a specified member of a given organization." }, { "slug": "GITHUB_LIST_CODESPACES_FOR_THE_AUTHENTICATED_USER", "name": "List codespaces for the authenticated user", "description": "Lists GitHub Codespaces for the authenticated user, optionally filtering by repository ID and supporting pagination." }, { "slug": "GITHUB_LIST_CODESPACES_FOR_THE_ORGANIZATION", "name": "List codespaces for the organization", "description": "Lists active/pending GitHub Codespaces for an existing organization; admins list all, members list their own." }, { "slug": "GITHUB_LIST_COMMENT_CHANGES", "name": "List comment changes across organization", "description": "Tool to list issue and PR comment changes across an organization's repositories efficiently. Use when monitoring comment activity without per-PR/per-issue polling. Filters organization events to return only comment-related events (IssueCommentEvent, PullRequestReviewCommentEvent, CommitCommentEvent). Note: Events are limited to the past 30 days and up to 300 events per timeline. Use ETag header for efficient polling to avoid rate limits." }, { "slug": "GITHUB_LIST_COMMENTS_FOR_A_PULL_REQUEST_REVIEW", "name": "List comments for a pull request review", "description": "Lists all comments for a specific review on a GitHub pull request." }, { "slug": "GITHUB_LIST_COMMIT_COMMENTS", "name": "List commit comments", "description": "Retrieves all comments for a specific commit in a GitHub repository, supporting pagination." }, { "slug": "GITHUB_LIST_COMMIT_COMMENTS_FOR_A_REPOSITORY", "name": "List commit comments for a repository", "description": "Lists all commit comments for a specified repository, which must exist and be accessible." }, { "slug": "GITHUB_LIST_COMMITS", "name": "List commits", "description": "Lists commits for a GitHub repository. Requires 'owner' (username/org) and 'repo' (repository name) parameters. Optionally filter by SHA/branch, path, author, committer, or date range." }, { "slug": "GITHUB_LIST_COMMITS_ON_A_PULL_REQUEST", "name": "List commits on a pull request", "description": "Lists commits for a pull request; requires the repository and pull request to exist and be accessible, and supports pagination." }, { "slug": "GITHUB_LIST_COMMONLY_USED_LICENSES", "name": "Get all commonly used licenses", "description": "Retrieves a list of commonly used software licenses from GitHub, optionally filtering for 'featured' licenses whose specific selection criteria by GitHub may vary." }, { "slug": "GITHUB_LIST_CUSTOM_PROPERTIES_FOR_AN_ORGANIZATION", "name": "Get all custom properties for an organization", "description": "Gets the schema definitions for all custom properties configured for an organization, not the specific values assigned to repositories." }, { "slug": "GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_A_REPOSITORY", "name": "Get all custom property values for a repository", "description": "Gets all custom property values for a repository. Custom properties are defined at the organization level, so this endpoint works with organization-owned repositories. Returns an empty array if no custom properties are set." }, { "slug": "GITHUB_LIST_CUSTOM_PROPERTY_VALUES_FOR_ORG_REPOS", "name": "List custom property values for organization repositories", "description": "Lists repositories in an organization with their custom property values. Requires 'Custom properties' organization permission (read)." }, { "slug": "GITHUB_LIST_DELIVERIES_FOR_AN_ORGANIZATION_WEBHOOK", "name": "List deliveries for an organization webhook", "description": "Retrieves a list of webhook deliveries for a specific webhook in an organization, allowing inspection of delivery history and details." }, { "slug": "GITHUB_LIST_DELIVERIES_FOR_A_REPOSITORY_WEBHOOK", "name": "List deliveries for a repository webhook", "description": "Retrieves delivery attempts for a specific repository webhook to inspect its history; ensure the webhook ID exists." }, { "slug": "GITHUB_LIST_DEPLOY_KEYS", "name": "List deploy keys", "description": "Lists deploy SSH keys for a specified repository; the repository must exist." }, { "slug": "GITHUB_LIST_DEPLOYMENT_BRANCH_POLICIES", "name": "List deployment branch policies", "description": "Lists all deployment branch policies for a specified environment in a GitHub repository." }, { "slug": "GITHUB_LIST_DEPLOYMENTS", "name": "List deployments", "description": "Lists deployments for a specified repository; repository must exist." }, { "slug": "GITHUB_LIST_DEPLOYMENT_STATUSES", "name": "List deployment statuses", "description": "Lists all statuses for a given deployment in a repository." }, { "slug": "GITHUB_LIST_DISCUSSION_COMMENTS", "name": "List discussion comments", "description": "Lists all comments for a specific team discussion within an organization. Note: Team discussions are deprecated as of 2023-11-28. Consider using GitHub Discussions instead. This endpoint requires the authenticated user to be a member of the organization and have access to the team's discussions." }, { "slug": "GITHUB_LIST_DISCUSSIONS", "name": "List discussions", "description": "Lists discussions for a specific team within an organization, with options for sorting, pagination, and filtering by pinned status. Note: Team discussions are deprecated as of 2023-11-28. Consider using GitHub Discussions instead. This endpoint requires the authenticated user to be a member of the organization and have access to the team's discussions." }, { "slug": "GITHUB_LIST_EMAIL_ADDRESSES_FOR_THE_AUTHENTICATED_USER", "name": "List email addresses for the authenticated user", "description": "Lists all email addresses for the authenticated user, including their primary status, verification status, and visibility. This action retrieves the complete list of email addresses associated with the authenticated user, providing important details such as which email is primary and whether the emails are verified." }, { "slug": "GITHUB_LIST_ENVIRONMENT_CUSTOM_DEPLOYMENT_RULES", "name": "List environment custom deployment rules", "description": "Lists all custom deployment protection rule integrations for a repository environment; the `environment_name` must be URL-encoded." }, { "slug": "GITHUB_LIST_ENVIRONMENTS", "name": "List environments", "description": "Retrieves all deployment environments for a specified repository, which are used to configure protection rules and secrets for different software lifecycle stages." }, { "slug": "GITHUB_LIST_ENVIRONMENT_SECRETS", "name": "List environment secrets", "description": "Lists the names and metadata (not values) of secrets for a specified, existing environment within an existing GitHub repository." }, { "slug": "GITHUB_LIST_ENVIRONMENT_VARIABLES", "name": "List environment variables", "description": "Lists all environment variables, which are plaintext key-value pairs for GitHub Actions workflows, for a specified environment within a GitHub repository." }, { "slug": "GITHUB_LIST_EVENTS_FOR_THE_AUTHENTICATED_USER", "name": "List events for the authenticated user", "description": "Lists public events for the specified GitHub user, or private events if authenticated as that user, in reverse chronological order." }, { "slug": "GITHUB_LIST_EVENTS_FOR_USER", "name": "List events for user", "description": "Lists events performed by a GitHub user in reverse chronological order. If authenticated as the specified user, you will see private events; otherwise, only public events are returned. Use this action when you need to retrieve a user's activity history, such as commits, pull requests, issues, and other GitHub actions." }, { "slug": "GITHUB_LIST_EVENTS_RECEIVED_BY_THE_AUTHENTICATED_USER", "name": "List events received by the authenticated user", "description": "Lists events a specific GitHub user received from followed users and watched repositories; returns private events if authenticated for `username`, otherwise public." }, { "slug": "GITHUB_LIST_FOLLOWERS_OF_A_USER", "name": "List followers of a user", "description": "Lists followers for a specified, existing GitHub user." }, { "slug": "GITHUB_LIST_FOLLOWERS_OF_THE_AUTHENTICATED_USER", "name": "List followers of the authenticated user", "description": "Lists users following the authenticated GitHub user, returning an empty list if the user has no followers." }, { "slug": "GITHUB_LIST_FOLLOWING_FOR_USER", "name": "List following for user", "description": "Lists the people that a GitHub user follows. Use this action when you need to retrieve the list of users that a specific GitHub user is following. The response includes public profile information for each followed user with pagination support." }, { "slug": "GITHUB_LIST_FORKS", "name": "List forks", "description": "Lists forks for a specified repository, which must exist, with options for sorting and pagination." }, { "slug": "GITHUB_LIST_GIST_COMMENTS", "name": "List gist comments", "description": "Lists comments for a specified GitHub Gist." }, { "slug": "GITHUB_LIST_GIST_COMMITS", "name": "List gist commits", "description": "Lists all commits for a specified gist." }, { "slug": "GITHUB_LIST_GIST_FORKS", "name": "List gist forks", "description": "Lists all forks for a given GitHub gist ID." }, { "slug": "GITHUB_LIST_GISTS_FOR_A_USER", "name": "List gists for a user", "description": "_lists public gists for a specified GitHub user._" }, { "slug": "GITHUB_LIST_GISTS_FOR_THE_AUTHENTICATED_USER", "name": "List gists for the authenticated user", "description": "Lists gists for the authenticated user, with optional filtering by update time and pagination." }, { "slug": "GITHUB_LIST_GITHUB_ACTIONS_CACHES_FOR_A_REPOSITORY", "name": "List github actions caches for a repository", "description": "Lists GitHub Actions caches for a repository, with options to filter by Git reference or cache key, and to sort and paginate results." }, { "slug": "GITHUB_LIST_GITHUB_PAGES_BUILDS", "name": "List GitHub Pages builds", "description": "Lists GitHub Pages builds for a repository; GitHub Pages must be enabled on the repository for builds to be listed." }, { "slug": "GITHUB_LIST_GITIGNORE_TEMPLATES", "name": "Get all gitignore templates", "description": "Retrieves all available .gitignore template names from GitHub (e.g., 'Python', 'Node', 'Java'), used for generating .gitignore files." }, { "slug": "GITHUB_LIST_GLOBAL_SECURITY_ADVISORIES", "name": "List global security advisories", "description": "Lists GitHub's global security advisories, filterable by various attributes including ID, type, ecosystem, severity, and dates." }, { "slug": "GITHUB_LIST_GPG_KEYS_FOR_A_USER", "name": "List GPG keys for a user", "description": "Tool to list GPG keys for a GitHub user. Use when you need to fetch the public GPG keys associated with a specific GitHub user account." }, { "slug": "GITHUB_LIST_INSTALLATION_REQUESTS_FOR_THE_AUTHENTICATED_APP", "name": "List installation requests for the authenticated app", "description": "Lists pending installation requests made by users or organizations for the authenticated GitHub App." }, { "slug": "GITHUB_LIST_INSTANCES_OF_A_CODE_SCANNING_ALERT", "name": "List instances of a code scanning alert", "description": "Lists all instances of a specific code scanning alert, optionally filtered by Git ref; requires code scanning to be enabled on the repository." }, { "slug": "GITHUB_LIST_ISSUE_COMMENTS", "name": "List issue comments", "description": "Lists comments for a specified issue in a GitHub repository." }, { "slug": "GITHUB_LIST_ISSUE_COMMENTS_FOR_A_REPOSITORY", "name": "List issue comments for a repository", "description": "Lists issue comments, including those on pull requests, for an accessible repository." }, { "slug": "GITHUB_LIST_ISSUE_DEPENDENCIES_BLOCKED_BY", "name": "List issue dependencies blocked by", "description": "Tool to list dependencies an issue is blocked by. Use when you need to retrieve all issues that are blocking a specific issue from being closed or completed." }, { "slug": "GITHUB_LIST_ISSUE_DEPENDENCIES_BLOCKING", "name": "List issue dependencies blocking", "description": "Tool to list dependencies an issue is blocking. Use when you need to see which issues are blocked by a specific issue." }, { "slug": "GITHUB_LIST_ISSUE_EVENTS", "name": "List issue events", "description": "Retrieves a list of all events for a specific issue within a GitHub repository." }, { "slug": "GITHUB_LIST_ISSUE_EVENTS_FOR_A_REPOSITORY", "name": "List issue events for a repository", "description": "Lists all issue events (e.g., closed, reopened, assigned) for a specified repository." }, { "slug": "GITHUB_LIST_ISSUES_ASSIGNED_TO_THE_AUTHENTICATED_USER", "name": "List issues for user", "description": "Lists GitHub issues for the authenticated user across visible repositories, with filtering by user relationship, state, labels, an ISO 8601 `since` timestamp (YYYY-MM-DDTHH:MM:SSZ), and sorting options; pull requests are typically included." }, { "slug": "GITHUB_LIST_ISSUE_TYPES", "name": "List issue types", "description": "List all issue types configured for a GitHub organization. Requires read:org scope for OAuth tokens." }, { "slug": "GITHUB_LIST_JOBS_FOR_A_WORKFLOW_RUN", "name": "List jobs for a workflow run", "description": "Lists jobs for a specific workflow run in a GitHub repository." }, { "slug": "GITHUB_LIST_JOBS_FOR_A_WORKFLOW_RUN_ATTEMPT", "name": "List jobs for a workflow run attempt", "description": "Lists jobs, including details like ID, status, and steps, for a specific attempt of a GitHub Actions workflow run." }, { "slug": "GITHUB_LIST_LABELS_FOR_AN_ISSUE", "name": "List labels for an issue", "description": "Lists all labels for a specified issue in a GitHub repository." }, { "slug": "GITHUB_LIST_LABELS_FOR_A_REPOSITORY", "name": "List labels for a repository", "description": "Retrieves all labels for a specified, existing GitHub repository." }, { "slug": "GITHUB_LIST_LABELS_FOR_A_SELF_HOSTED_RUNNER_FOR_A_REPOSITORY", "name": "List labels for a self-hosted runner for a repository", "description": "Lists all labels assigned to a specific self-hosted runner registered with the given repository." }, { "slug": "GITHUB_LIST_LABELS_FOR_ISSUES_IN_A_MILESTONE", "name": "List labels for issues in a milestone", "description": "Lists all labels for issues within a specific milestone in a repository." }, { "slug": "GITHUB_LIST_LABELS_FOR_SELF_HOSTED_RUNNER_ORG", "name": "List labels for a self-hosted runner for an organization", "description": "Lists all labels assigned to a specific self-hosted runner within a GitHub organization, which are used to route workflows." }, { "slug": "GITHUB_LIST_LICENSES_GRAPH_QL", "name": "List Licenses (GraphQL)", "description": "Tool to fetch all known open source licenses using GitHub's GraphQL API. Use when you need to retrieve the complete list of licenses that can be applied to repositories." }, { "slug": "GITHUB_LIST_MACHINE_TYPES_FOR_A_CODESPACE", "name": "List machine types for a codespace", "description": "Lists available machine types for a specific, accessible codespace, enabling it to be transitioned to a new hardware configuration." }, { "slug": "GITHUB_LIST_MATCHING_REFERENCES", "name": "List matching references", "description": "Lists all Git references (branches or tags) in a repository that start with the provided partial reference path (e.g., `heads/my-feature` or `tags/v1.2`)." }, { "slug": "GITHUB_LIST_MILESTONES", "name": "List milestones", "description": "Lists milestones, which track progress for groups of issues and pull requests, for an existing repository, allowing filtering by state and sorting." }, { "slug": "GITHUB_LIST_NOTIFICATIONS", "name": "List notifications for authenticated user", "description": "Tool to list notification threads for the authenticated user with efficient polling support. Use when you need to fetch the user's GitHub notification inbox with filters like unread/participating/since. Returns notification threads plus polling headers (Last-Modified, ETag, X-Poll-Interval) for efficient polling. IMPORTANT: This endpoint requires a Personal Access Token (classic) with 'notifications' or 'repo' scope. It does NOT work with GitHub App tokens or fine-grained personal access tokens. If the token type is incompatible, a clear error message will be returned." }, { "slug": "GITHUB_LIST_NOTIFICATIONS_FOR_THE_AUTHENTICATED_USER", "name": "List notifications for the authenticated user (Deprecated)", "description": "DEPRECATED: Use GITHUB_LIST_NOTIFICATIONS instead. Lists notifications for the authenticated user, sorted by most recent update, with filtering and pagination options." }, { "slug": "GITHUB_LIST_ORGANIZATION_CODESPACES_SECRETS", "name": "List org level codespaces secrets", "description": "Lists all Codespaces secrets available for a specified organization, which must exist." }, { "slug": "GITHUB_LIST_ORGANIZATION_EVENTS_FOR_THE_AUTHENTICATED_USER", "name": "List organization events for the authenticated user", "description": "Lists public events in a specified GitHub organization for the authenticated user's organization dashboard. Returns activities like repository pushes, pull requests, issues, forks, and other public events within the organization. The authenticated user must be a member of the organization to see events." }, { "slug": "GITHUB_LIST_ORGANIZATION_MEMBERS", "name": "List organization members", "description": "Tool to list all members of a GitHub organization. Returns a list of users who are members of the specified organization. Use this action when you need to retrieve the list of members in an organization, optionally filtered by role (admin/member) or two-factor authentication status. Organization owners can filter by 2FA status to identify members who need to enable or upgrade their 2FA methods." }, { "slug": "GITHUB_LIST_ORGANIZATION_MEMBERSHIPS_FOR_THE_AUTHENTICATED_U", "name": "List organization memberships for authenticated user", "description": "List organization memberships for authenticated user" }, { "slug": "GITHUB_LIST_ORGANIZATION_PROJECTS", "name": "List organization projects", "description": "Lists projects (V2) for a specified GitHub organization, with optional search query and cursor-based pagination." }, { "slug": "GITHUB_LIST_ORGANIZATION_REPOSITORIES", "name": "List organization repositories", "description": "Retrieves a list of repositories for a specified GitHub organization, allowing filtering by type and sorting." }, { "slug": "GITHUB_LIST_ORGANIZATION_ROLES_FOR_AN_ORGANIZATION", "name": "Get all organization roles for an organization", "description": "Lists all custom organization roles for an existing GitHub organization." }, { "slug": "GITHUB_LIST_ORGANIZATIONS", "name": "List organizations", "description": "Lists GitHub organizations for the authenticated user, sorted by ID in ascending order." }, { "slug": "GITHUB_LIST_ORGANIZATION_SECRETS", "name": "List organization secrets", "description": "Lists GitHub Actions secrets available for a specified organization." }, { "slug": "GITHUB_LIST_ORGANIZATIONS_FOR_A_USER", "name": "List organizations for a user", "description": "Lists public organizations for a specified GitHub user; the `username` must be a valid GitHub handle." }, { "slug": "GITHUB_LIST_ORGANIZATIONS_FOR_THE_AUTHENTICATED_USER", "name": "List organizations for the authenticated user", "description": "Lists organizations the authenticated GitHub user is a member of, returning details for each organization." }, { "slug": "GITHUB_LIST_ORGANIZATIONS_FOR_USER", "name": "List organizations for a user", "description": "List public organization memberships for a GitHub user. This returns all organizations where the specified user is a public member. Use this action when you need to discover which organizations a user publicly belongs to." }, { "slug": "GITHUB_LIST_ORGANIZATION_VARIABLES", "name": "List organization variables", "description": "Lists all GitHub Actions variables for a specified organization." }, { "slug": "GITHUB_LIST_ORGANIZATION_WEBHOOKS", "name": "List organization webhooks", "description": "Lists all webhooks for a specified GitHub organization; the organization must exist." }, { "slug": "GITHUB_LIST_ORG_FINE_GRAINED_PERMISSIONS", "name": "List organization fine-grained permissions", "description": "Lists all fine-grained permissions available in a GitHub organization for use in custom organization roles. These permissions define granular access controls that can be combined when creating custom roles. Note: This endpoint requires GitHub Enterprise Cloud with the custom organization roles feature enabled. The authenticated user must be an administrator or have the 'read_organization_custom_org_role' permission." }, { "slug": "GITHUB_LIST_ORG_ISSUES_FOR_THE_AUTHENTICATED_USER", "name": "List organization issues assigned to the authenticated user", "description": "Lists issues for the authenticated user within a specified GitHub organization, with options to filter by involvement type, state, labels, and to sort results." }, { "slug": "GITHUB_LIST_ORG_PACKAGE_VERSIONS", "name": "List package versions for an organization package", "description": "Lists all versions for a specified package, if it exists and is owned by the given GitHub organization." }, { "slug": "GITHUB_LIST_ORG_PROJECT_VIEW_ITEMS", "name": "List organization project view items", "description": "Tool to list items for an organization project view. Use when you need to retrieve all items from a specific view within a GitHub organization's Projects V2 project. Returns a list of project items with their content, metadata, and field values." }, { "slug": "GITHUB_LIST_ORG_REPOS_WITH_GITHUB_ACTIONS_ENABLED", "name": "List organization repositories with Github Actions enabled", "description": "Lists the selected repositories that are enabled for GitHub Actions in an organization. This endpoint only returns results when the organization's 'enabled_repositories' permission policy is configured to 'selected'. Requires admin:org scope and organization admin permissions." }, { "slug": "GITHUB_LIST_ORG_RESOURCE_ACCESS_TOKENS", "name": "List org resource access tokens", "description": "Lists approved fine-grained personal access tokens (PATs) with access to resources in a GitHub organization, optionally filtering by owner, repository, permissions, or last usage time. AUTHENTICATION REQUIREMENT: This endpoint requires GitHub App authentication with 'Personal access tokens' organization permissions (read). Standard personal access tokens CANNOT use this endpoint. The GitHub App must also have access to the organization." }, { "slug": "GITHUB_LIST_ORG_RESOURCES_WITH_PERSONAL_TOKENS", "name": "List org resources with personal tokens", "description": "Lists requests from organization members to access organization resources with fine-grained personal access tokens (pending, approved, or denied). Note: This endpoint requires GitHub App authentication with 'organization_personal_access_token_requests:read' permissions; it cannot be used with personal access tokens." }, { "slug": "GITHUB_LIST_ORG_SECRETS_WITHOUT_VALUES", "name": "List organization Dependabot secrets without values", "description": "Lists all Dependabot secrets (metadata like names, creation/update timestamps, but not their encrypted values) for a specified organization, which must exist." }, { "slug": "GITHUB_LIST_OUTSIDE_COLLABORATORS_FOR_AN_ORGANIZATION", "name": "List outside collaborators for an organization", "description": "Lists outside collaborators for a GitHub organization, with options to filter (e.g., by 2FA status) and paginate results." }, { "slug": "GITHUB_LIST_OWNED_PACKAGE_VERSIONS", "name": "List owned package versions", "description": "Lists all versions for an existing package owned by the authenticated user, identified by its type and name." }, { "slug": "GITHUB_LIST_PACKAGES_FOR_AN_ORGANIZATION", "name": "List packages for an organization", "description": "Lists GitHub Packages for an organization, noting specific interpretations for package_type and visibility parameters." }, { "slug": "GITHUB_LIST_PACKAGES_FOR_A_USER", "name": "List packages for a user", "description": "Lists packages for a specified GitHub user, filterable by package type and visibility." }, { "slug": "GITHUB_LIST_PACKAGES_FOR_THE_AUTHENTICATED_USER", "name": "List packages for the authenticated user's namespace", "description": "Lists packages of a specific type and visibility within the authenticated user's namespace on GitHub." }, { "slug": "GITHUB_LIST_PACKAGE_VERSIONS_FOR_A_PACKAGE_OWNED_BY_A_USER", "name": "List package versions for a package owned by a user", "description": "Lists all versions of a public package owned by a specific GitHub user, identified by package type, package name, and username." }, { "slug": "GITHUB_LIST_PENDING_TEAM_INVITATIONS", "name": "List pending team invitations", "description": "Lists all pending membership invitations for a specified team within an organization. The authenticated user must be an organization member with the read:org scope. The response includes invitation details such as the invitee's login/email, the role they're being invited to, and who sent the invitation. The 'role' field indicates the type of invitation: - 'direct_member': Regular organization member - 'admin': Organization administrator - 'billing_manager': Billing manager role - 'hiring_manager': Hiring manager role - 'reinstate': Reinstating a previous member Note: If the invitee is not a GitHub member, the 'login' field will be null and only the 'email' field will be populated." }, { "slug": "GITHUB_LIST_PROJECT_CARDS", "name": "List project cards (Classic - Deprecated)", "description": "Lists all project cards for a given column_id in GitHub Projects (classic). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ Returns a list of project cards including: id, node_id, url, note (or null for linked cards), creator info, content_url (for issue/PR cards), column_url, project_url, timestamps, and archived status." }, { "slug": "GITHUB_LIST_PROJECT_COLLABORATORS", "name": "List project collaborators (classic)", "description": "Lists collaborators for a GitHub Project (classic) by project ID. IMPORTANT: This action uses the Projects (classic) REST API which was sunset on April 1, 2025 for GitHub.com. The API may still be available on GitHub Enterprise Server versions before 3.17. For GitHub.com users: GitHub Projects (classic) has been replaced by the new Projects experience. The new Projects does not have a REST API for listing collaborators - use the GitHub web interface to manage project collaborators instead. You must be an organization owner or a project admin to list collaborators." }, { "slug": "GITHUB_LIST_PROJECT_COLUMNS", "name": "List project columns", "description": "Lists all of a GitHub project's columns (e.g., 'To Do', 'In Progress'); project_id must identify a valid, accessible project. Note: This action uses GitHub's Projects (classic) REST API. The Projects (classic) API was sunset on April 1, 2025. This action will return an empty columns list with an informative message for projects that no longer exist or when the API returns 404." }, { "slug": "GITHUB_LIST_PROJECT_FIELDS_FOR_USER", "name": "List project fields for user", "description": "Tool to list all fields in a GitHub Projects V2 project for a specific user. Use when you need to see available fields in a project." }, { "slug": "GITHUB_LIST_PROJECT_ITEMS_FOR_USER", "name": "List project items for user", "description": "Tool to list items for a user-owned GitHub project. Use when you need to retrieve all items (issues, pull requests, draft issues) from a specific project belonging to a user." }, { "slug": "GITHUB_LIST_PROJECT_VIEW_ITEMS_FOR_USER", "name": "List items for user project view", "description": "Tool to list items for a user's GitHub Projects (v2) view. Use when you need to retrieve items from a specific view of a user's project. Supports pagination and field filtering." }, { "slug": "GITHUB_LIST_PUBLIC_EMAILS_FOR_AUTH_USER", "name": "List public email addresses for the authenticated user", "description": "Lists the public email addresses for the authenticated user." }, { "slug": "GITHUB_LIST_PUBLIC_EVENTS", "name": "List public events", "description": "Lists public GitHub events, which may be delayed by up to 5 minutes, with support for pagination." }, { "slug": "GITHUB_LIST_PUBLIC_EVENTS_FOR_A_NETWORK_OF_REPOSITORIES", "name": "List public events for a network of repositories", "description": "Retrieves public events (up to 90 days old, newest first) for a GitHub repository network, including the repository and its forks." }, { "slug": "GITHUB_LIST_PUBLIC_EVENTS_FOR_A_USER", "name": "List public events for a user", "description": "Retrieves a list of public events for a specified GitHub user, in reverse chronological order." }, { "slug": "GITHUB_LIST_PUBLIC_EVENTS_RECEIVED_BY_A_USER", "name": "List public events received by a user", "description": "Lists public events for a specified GitHub user (e.g., activities in repositories they watch or are involved in); the target user's profile must be public, and if blocked by the authenticated user, a 404 error is returned." }, { "slug": "GITHUB_LIST_PUBLIC_GISTS", "name": "List public gists", "description": "Lists public gists from GitHub, optionally filtering by a 'since' timestamp and supporting pagination; results are generally newest first." }, { "slug": "GITHUB_LIST_PUBLIC_KEYS_FOR_A_USER", "name": "List public keys for a user", "description": "Lists the verified public SSH keys for a specified GitHub user." }, { "slug": "GITHUB_LIST_PUBLIC_ORGANIZATION_EVENTS", "name": "List public organization events", "description": "Lists public events for a specified GitHub organization, which must exist. This action retrieves the events that are publicly accessible for the organization specified. It returns a paginated list of events with details about each event." }, { "slug": "GITHUB_LIST_PUBLIC_ORGANIZATION_MEMBERS", "name": "List public organization members", "description": "Lists users who have publicly declared their membership in a specified, existing GitHub organization." }, { "slug": "GITHUB_LIST_PUBLIC_REPOSITORIES", "name": "List public repositories", "description": "Lists all public repositories on GitHub; use the `since` parameter with a repository ID from a previous result for pagination." }, { "slug": "GITHUB_LIST_PULL_REQUESTS", "name": "List pull requests", "description": "Lists pull requests for a GitHub repository. REQUIRES 'owner' AND 'repo' parameters - both are MANDATORY and must be provided in every call. Does NOT support filtering by assignee or date range - use GITHUB_FIND_PULL_REQUESTS instead for searching PRs by assignee, author, or across multiple repositories." }, { "slug": "GITHUB_LIST_PULL_REQUESTS_ASSOCIATED_WITH_A_COMMIT", "name": "List pull requests associated with a commit", "description": "Lists pull requests for a commit; returns merged PRs that introduced the commit if on the default branch, or open PRs including the commit if on other branches." }, { "slug": "GITHUB_LIST_PULL_REQUESTS_FILES", "name": "List pull requests files", "description": "Lists all files (including additions, modifications, and removals) associated with a specific pull request in a GitHub repository." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_A_COMMIT_COMMENT", "name": "List reactions for a commit comment", "description": "Lists reactions for a specific commit comment; this is a read-only operation." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_AN_ISSUE", "name": "List reactions for an issue", "description": "Lists reactions for a specific, existing issue within an accessible GitHub repository, optionally filtering by content type." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_AN_ISSUE_COMMENT", "name": "List reactions for an issue comment", "description": "Lists reactions for a specific issue comment in a GitHub repository, optionally filtering by content type." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_A_PULL_REQUEST_REVIEW_COMMENT", "name": "List reactions for a pull request review comment", "description": "Lists reactions for a pull request review comment in a repository, optionally filtering by reaction type." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_A_RELEASE", "name": "List reactions for a release", "description": "Lists all reactions, or optionally filters reactions by a specific content type, for a given GitHub release." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_A_TEAM_DISCUSSION", "name": "List reactions for a team discussion", "description": "Lists reactions for an existing team discussion within an organization. This endpoint allows you to retrieve all reactions (emoji responses) made to a specific team discussion. You can optionally filter by reaction type. Note: OAuth app tokens and personal access tokens (classic) need the `read:discussion` scope to use this endpoint." }, { "slug": "GITHUB_LIST_REACTIONS_FOR_A_TEAM_DISCUSSION_COMMENT", "name": "List reactions for a team discussion comment", "description": "Lists reactions for a specific comment in a team discussion within an organization, optionally filtering by content type." }, { "slug": "GITHUB_LIST_RELEASE_ASSETS", "name": "List release assets", "description": "Lists assets (e.g., compiled binaries, source code archives) for a specific GitHub release, identified by `release_id` which must be valid for an existing release in the repository." }, { "slug": "GITHUB_LIST_RELEASES", "name": "List releases", "description": "Retrieves a list of all releases (published, draft, and prerelease) for a specified repository." }, { "slug": "GITHUB_LIST_REPO_ACCESS_BY_TOKEN", "name": "List repo access by token", "description": "Lists repositories in an organization that a fine-grained personal access token has requested access to. Only GitHub Apps can use this endpoint. Requires 'Personal access token requests' organization permissions (read)." }, { "slug": "GITHUB_LIST_REPO_CODESPACES", "name": "List repo codespaces for authenticated user", "description": "Lists Codespaces the authenticated user can access within a specified, existing repository." }, { "slug": "GITHUB_LIST_REPO_DEV_CONTAINER_CONFIGS_FOR_USER", "name": "List repo dev container configs for user", "description": "Lists the `devcontainer.json` configurations available in a specified repository for use with GitHub Codespaces." }, { "slug": "GITHUB_LIST_REPO_INVITATIONS_FOR_AUTH_USER", "name": "List authenticated user's repository invitations", "description": "Lists all pending repository invitations for the authenticated user." }, { "slug": "GITHUB_LIST_REPO_NOTIFICATIONS_FOR_AUTH_USER", "name": "List repository notifications for the authenticated user", "description": "Retrieves notifications for the authenticated user from a specified repository, to which the user must have access." }, { "slug": "GITHUB_LIST_REPO_SECRETS_WITHOUT_VALUES", "name": "List repo secrets without values", "description": "Lists all Codespaces secrets available in a specific repository, without their encrypted values." }, { "slug": "GITHUB_LIST_REPOSITORIES", "name": "List repositories", "description": "Lists repositories accessible to the authenticated user based on visibility, affiliation, and type filters. Returns repositories owned by the user, those they collaborate on, or those accessible through organization membership. Use this action when you need to retrieve a comprehensive list of repositories the authenticated user can access, with options to filter by visibility (public/private), affiliation (owner/collaborator/organization), or type. Supports pagination for large result sets." }, { "slug": "GITHUB_LIST_REPOSITORIES_ACCESSIBLE_TO_THE_APP_INSTALLATION", "name": "List repos accessible to app installation", "description": "Lists repositories a GitHub App installation can access. IMPORTANT: This endpoint requires a GitHub App installation access token (ghs_* prefix) for authentication. OAuth/user access tokens (gho_*) or personal access tokens are not supported and will result in a 403 Forbidden error. Returns 'total_count' and 'repositories' array with pagination support." }, { "slug": "GITHUB_LIST_REPOSITORIES_FOR_A_USER", "name": "List repositories for a user", "description": "Lists public repositories for a specified GitHub user, who must have an existing account." }, { "slug": "GITHUB_LIST_REPOSITORIES_FOR_THE_AUTHENTICATED_USER", "name": "List repositories for the authenticated user", "description": "Lists repositories for the authenticated user; using 'type' with 'visibility' or 'affiliation' API parameters (not in this model) can cause a 422 error." }, { "slug": "GITHUB_LIST_REPOSITORIES_STARRED_BY_A_USER", "name": "List repositories starred by a user", "description": "Lists repositories a valid and existing GitHub user has starred." }, { "slug": "GITHUB_LIST_REPOSITORIES_STARRED_BY_THE_AUTHENTICATED_USER", "name": "List repositories starred by the authenticated user", "description": "Lists repositories the authenticated user has starred, optionally sorted and paginated, including star creation timestamps via 'application/vnd.github.star+json' media type." }, { "slug": "GITHUB_LIST_REPOSITORIES_WATCHED_BY_A_USER", "name": "List repositories watched by a user", "description": "Lists repositories a given GitHub user is watching; the username must be a valid and existing GitHub user handle." }, { "slug": "GITHUB_LIST_REPOSITORIES_WATCHED_BY_THE_AUTHENTICATED_USER", "name": "List repositories watched by the authenticated user", "description": "Lists repositories the authenticated user is watching (subscribed to for notifications). This action retrieves a list of repositories that the authenticated user is currently watching. It allows the user to manage their watched repositories effectively." }, { "slug": "GITHUB_LIST_REPOSITORIES_WITH_GITHUB_ACTIONS_CACHE_USAGE", "name": "List repos with ghactions cache usage", "description": "Retrieves a paginated list of GitHub Actions cache usage statistics for repositories within an existing GitHub organization." }, { "slug": "GITHUB_LIST_REPOSITORY_ACTIVITIES", "name": "List repository activities", "description": "Lists activities for a GitHub repository, ensuring the repository exists and is accessible." }, { "slug": "GITHUB_LIST_REPOSITORY_AUTOLINKS", "name": "Get all autolinks of a repository", "description": "Retrieves all autolinks (e.g., for JIRA issues) configured for a repository; requires admin permissions on the repository." }, { "slug": "GITHUB_LIST_REPOSITORY_COLLABORATORS", "name": "List repository collaborators", "description": "Lists collaborators for a specified repository, provided it exists and is accessible to the authenticated user." }, { "slug": "GITHUB_LIST_REPOSITORY_CONTRIBUTORS", "name": "List repository contributors", "description": "Lists contributors to a specified repository, sorted by number of contributions in descending order; the repository must exist and be accessible." }, { "slug": "GITHUB_LIST_REPOSITORY_EVENTS", "name": "List repository events", "description": "Lists chronological events (e.g., code pushes, issue activities, PR actions, forks) for a specified, existing GitHub repository." }, { "slug": "GITHUB_LIST_REPOSITORY_INVITATIONS", "name": "List repository invitations", "description": "Retrieves all pending (unaccepted or undeclined) collaboration invitations for a specified GitHub repository." }, { "slug": "GITHUB_LIST_REPOSITORY_ISSUES", "name": "List repository issues", "description": "Lists issues (including pull requests) from a GitHub repository. Requires BOTH 'owner' AND 'repo' parameters (e.g., owner='octocat', repo='Hello-World' for github.com/octocat/Hello-World)." }, { "slug": "GITHUB_LIST_REPOSITORY_LANGUAGES", "name": "List repository languages", "description": "Lists the programming languages used in a GitHub repository, returning a byte count for each language." }, { "slug": "GITHUB_LIST_REPOSITORY_ORGANIZATION_SECRETS", "name": "List repository organization secrets", "description": "Lists names of organization-level secrets shared with the specified repository; actual secret values are not returned and visibility depends on token access." }, { "slug": "GITHUB_LIST_REPOSITORY_ORGANIZATION_VARIABLES", "name": "List repository organization variables", "description": "Lists organization-level variables that are shared with a specific repository. The repository must belong to an organization (not a personal account)." }, { "slug": "GITHUB_LIST_REPOSITORY_PROJECTS", "name": "List repository projects", "description": "Lists Projects (classic) associated with a specific repository. Note: This action lists GitHub Projects (classic), which is GitHub's legacy project management feature. If the repository has Projects (classic) disabled or uses the newer Projects V2, this will return an empty list. Most modern repositories use Projects V2 (GraphQL API) instead of Projects (classic)." }, { "slug": "GITHUB_LIST_REPOSITORY_RULESETS", "name": "Get all repository rulesets", "description": "Retrieves all rulesets for a GitHub repository, which define conditions and actions for repository interactions (e.g., branch protections)." }, { "slug": "GITHUB_LIST_REPOSITORY_RULE_SUITES", "name": "List repository rule suites", "description": "Lists rule suite evaluations for a repository, allowing filtering by ref (non-wildcard), time period, actor, and result." }, { "slug": "GITHUB_LIST_REPOSITORY_SECRETS", "name": "List repository secrets", "description": "Lists metadata for all secrets in a GitHub repository, excluding their encrypted values." }, { "slug": "GITHUB_LIST_REPOSITORY_SECRETS_WITHOUT_DECRYPTING", "name": "List repository secrets without decrypting", "description": "Lists metadata (e.g., name, creation/update dates) for all Dependabot secrets in a repository; secret values are not included." }, { "slug": "GITHUB_LIST_REPOSITORY_SECURITY_ADVISORIES", "name": "List repository security advisories", "description": "Tool to list security advisories for a repository. Use when you need to retrieve security advisories published for a specific repository, optionally filtered by state." }, { "slug": "GITHUB_LIST_REPOSITORY_TAGS", "name": "List repository tags", "description": "Lists tags for a specified GitHub repository." }, { "slug": "GITHUB_LIST_REPOSITORY_TEAMS", "name": "List repository teams", "description": "Lists all teams with explicit permission to access the specified repository; the repository must exist." }, { "slug": "GITHUB_LIST_REPOSITORY_TOPICS", "name": "Get all repository topics", "description": "Retrieves all topics for a specified, existing, and accessible repository." }, { "slug": "GITHUB_LIST_REPOSITORY_VARIABLES", "name": "List repository variables", "description": "Lists plain text key-value variables for GitHub Actions workflows within a specific, accessible repository." }, { "slug": "GITHUB_LIST_REPOSITORY_WEBHOOKS", "name": "List repository webhooks", "description": "Retrieves a list of webhooks for a repository, which must exist and be accessible." }, { "slug": "GITHUB_LIST_REPOSITORY_WORKFLOWS", "name": "List repository workflows", "description": "Lists all GitHub Actions workflows for a specified repository, which must exist and be accessible." }, { "slug": "GITHUB_LIST_REQUESTED_REVIEWERS_FOR_A_PULL_REQUEST", "name": "Get all requested reviewers for a pull request", "description": "Gets all users and teams requested to review a specific pull request in a repository." }, { "slug": "GITHUB_LIST_REVIEW_COMMENTS_IN_A_REPOSITORY", "name": "List review comments in a repository", "description": "Lists all review comments on all pull requests within a specified repository." }, { "slug": "GITHUB_LIST_REVIEW_COMMENTS_ON_A_PULL_REQUEST", "name": "List review comments on a pull request", "description": "Lists all review comments on a specific pull request within a GitHub repository." }, { "slug": "GITHUB_LIST_REVIEWS_FOR_A_PULL_REQUEST", "name": "List reviews for a pull request", "description": "Lists submitted reviews chronologically for a specific pull request within a GitHub repository." }, { "slug": "GITHUB_LIST_RUNNER_APPLICATIONS_FOR_AN_ORGANIZATION", "name": "List runner applications for an organization", "description": "Lists downloadable GitHub Actions runner application binaries for setting up self-hosted runners in a GitHub organization. Returns download URLs and checksums for various OS/architecture combinations (linux/win/osx on x64/arm/arm64). Requires admin:org scope or fine-grained 'Self-hosted runners' read permission." }, { "slug": "GITHUB_LIST_RUNNER_APPLICATIONS_FOR_A_REPOSITORY", "name": "List runner applications for a repository", "description": "Lists available self-hosted runner application binaries for a specific repository, including their OS, architecture, and download URL." }, { "slug": "GITHUB_LIST_SECRET_SCANNING_ALERTS_FOR_A_REPOSITORY", "name": "List secret scanning alerts for a repository", "description": "List secret scanning alerts for a GitHub repository using first-party detections. Use this to retrieve detected secrets with filtering by state, type, resolution, and validity. Supports optional hiding of secret literals for security." }, { "slug": "GITHUB_LIST_SECRETS_FOR_THE_AUTHENTICATED_USER", "name": "List secrets for the authenticated user", "description": "Lists all Codespaces secrets accessible to the authenticated user for use within GitHub Codespaces." }, { "slug": "GITHUB_LIST_SECURITY_ADVISORIES_GRAPHQL", "name": "List security advisories (GraphQL)", "description": "Tool to list GitHub Security Advisories using the GraphQL API. Use when you need to query security vulnerabilities and malware advisories from the GitHub Advisory Database with advanced filtering and pagination options." }, { "slug": "GITHUB_LIST_SECURITY_VULNERABILITIES", "name": "List security vulnerabilities", "description": "Query software vulnerabilities documented by GitHub Security Advisories using GraphQL. Use this to find security issues in packages across ecosystems like npm, pip, maven, etc." }, { "slug": "GITHUB_LIST_SELECTED_REPOSITORIES_FOR_AN_ORGANIZATION_SECRET", "name": "List selected repositories for a Codespaces organization secret", "description": "Lists repositories that have been granted access to a Codespaces organization secret. Returns all repositories that have been selected when the visibility for repository access to a Codespaces secret is set to 'selected'. Requires admin:org scope and admin access to the organization. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections." }, { "slug": "GITHUB_LIST_SELECTED_REPOSITORIES_FOR_A_USER_SECRET", "name": "List selected repositories for a user secret", "description": "Lists repositories that have access to the specified user Codespaces secret. This endpoint retrieves all repositories that the authenticated user has granted access to for a specific user-level Codespaces secret. The secret must already exist for this endpoint to work. Use 'list_secrets_for_the_authenticated_user' to discover available secrets first. Note: The authenticated user must have Codespaces access enabled. OAuth tokens and personal access tokens require the 'codespace' or 'codespace:secrets' scope." }, { "slug": "GITHUB_LIST_SELECTED_REPOSITORIES_FOR_SECRET_ACCESS", "name": "List selected repos for secret access", "description": "Lists repositories within a specified organization that have been granted access to a particular Dependabot secret. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections. Requires 'admin:org' scope and the user must have admin access to the organization." }, { "slug": "GITHUB_LIST_SELECTED_REPOS_ORG_VARIABLE", "name": "List selected repositories for an organization variable", "description": "Lists repositories in an organization that can access a specific organization variable; supports pagination and returns an empty list if no repositories have been granted access. Note: This endpoint only works for variables with visibility set to 'selected' - attempting to use it on variables with 'all' or 'private' visibility will result in a 409 Conflict error." }, { "slug": "GITHUB_LIST_SELF_HOSTED_RUNNERS_FOR_AN_ORGANIZATION", "name": "List self hosted runners for an organization", "description": "Lists self-hosted runners for a GitHub organization, optionally filtering by name and paginating results, providing details for each runner such as OS, status, and labels." }, { "slug": "GITHUB_LIST_SELF_HOSTED_RUNNERS_FOR_A_REPOSITORY", "name": "List self hosted runners for a repository", "description": "Lists all self-hosted runners configured for a repository." }, { "slug": "GITHUB_LIST_SOCIAL_ACCOUNTS_FOR_A_USER", "name": "List social accounts for a user", "description": "Lists social media accounts publicly linked to an existing GitHub user's profile." }, { "slug": "GITHUB_LIST_SOCIAL_ACCOUNTS_FOR_THE_AUTHENTICATED_USER", "name": "List social accounts for the authenticated user", "description": "Lists all social media accounts linked to the authenticated user's GitHub profile. This action retrieves the social media accounts associated with the user's GitHub profile, allowing for easy management and visibility of connected accounts. The results include accounts such as Twitter, LinkedIn, and other platforms linked to the GitHub profile." }, { "slug": "GITHUB_LIST_SPONSORABLES", "name": "List Sponsorable Users and Organizations", "description": "Tool to list users and organizations who can be sponsored via GitHub Sponsors. Use when you need to discover sponsorable entities with optional filtering by dependency ecosystem." }, { "slug": "GITHUB_LIST_SSH_SIGNING_KEYS_FOR_A_USER", "name": "List SSH signing keys for user", "description": "Lists the public SSH signing keys for a specified GitHub user." }, { "slug": "GITHUB_LIST_STARGAZERS", "name": "List stargazers", "description": "Lists users who have starred the specified GitHub repository, which must exist." }, { "slug": "GITHUB_LIST_STARRED_GISTS", "name": "List starred gists", "description": "Retrieves a list of gists starred by the authenticated user." }, { "slug": "GITHUB_LIST_STARRED_REPOSITORIES_FOR_USER", "name": "List starred repositories for user", "description": "Lists public repositories that a user has starred. The list includes all public repositories starred by the specified user, sorted by when they were starred or last updated. Use this action when you need to retrieve the list of repositories a specific GitHub user has starred." }, { "slug": "GITHUB_LIST_STATUS_CHECK_CONTEXTS", "name": "Get all status check contexts", "description": "Fetches all required status check contexts for a protected branch; returns an empty list if the branch isn't protected or has no required checks." }, { "slug": "GITHUB_LIST_SUB_ISSUES", "name": "List sub-issues for an issue", "description": "Tool to list sub-issues for a specific GitHub issue. Use when you need to retrieve all sub-issues associated with a parent issue, supporting pagination for large hierarchies." }, { "slug": "GITHUB_LIST_SUBSCRIPTIONS_FOR_THE_AUTHENTICATED_USER", "name": "List marketplace subscriptions for authenticated user", "description": "Tool to list GitHub Marketplace subscriptions for the authenticated user. Use when you need to retrieve active marketplace app subscriptions including billing details, plan information, and trial status. Returns subscription information with account, plan, billing cycle, and pricing details." }, { "slug": "GITHUB_LIST_SUBSCRIPTIONS_FOR_THE_AUTHENTICATED_USER_STUBBED", "name": "List stubbed subscriptions for the authenticated user", "description": "Lists the authenticated user's stubbed (test/example data, not live) GitHub Marketplace subscriptions, useful for development or testing." }, { "slug": "GITHUB_LIST_TAG_PROTECTION_STATES_FOR_A_REPOSITORY", "name": "List tag protection states for a repository", "description": "DEPRECATED: Lists tag protection rules for a repository. This API was sunset on August 30, 2024. Use GITHUB_GET_ALL_REPOSITORY_RULESETS instead to view tag protection rules via repository rulesets." }, { "slug": "GITHUB_LIST_TEAM_MEMBERS", "name": "List team members", "description": "Lists members of a specific team within an organization, including members of child teams." }, { "slug": "GITHUB_LIST_TEAM_PROJECTS", "name": "List team projects", "description": "Lists GitHub projects accessible to a specific team within an organization." }, { "slug": "GITHUB_LIST_TEAM_REPOSITORIES", "name": "List team repositories", "description": "Lists repositories accessible to a specific team within a GitHub organization. Returns a list of repositories that the specified team has access to, including the team's permission level (admin, maintain, push, triage, pull) for each repository. Requires read:org scope and membership in the organization to access team data." }, { "slug": "GITHUB_LIST_TEAMS", "name": "List teams", "description": "Lists teams for a specified GitHub organization." }, { "slug": "GITHUB_LIST_TEAMS_FOR_THE_AUTHENTICATED_USER", "name": "List teams for the authenticated user", "description": "Lists all teams across all organizations to which the authenticated user belongs, supporting pagination." }, { "slug": "GITHUB_LIST_TEAMS_THAT_ARE_ASSIGNED_TO_AN_ORGANIZATION_ROLE", "name": "List teams assigned to an organization role", "description": "Lists teams assigned to a specific role within a GitHub organization. This endpoint requires organization administrator privileges. Use this to audit which teams have been granted specific organization-level permissions through roles. Note: Organization roles is a feature for enterprise-level GitHub organizations." }, { "slug": "GITHUB_LIST_THE_PEOPLE_A_USER_FOLLOWS", "name": "List the people a user follows", "description": "Lists GitHub users that a valid GitHub `username` is following, supporting pagination." }, { "slug": "GITHUB_LIST_THE_PEOPLE_THE_AUTHENTICATED_USER_FOLLOWS", "name": "List people the authenticated user follows", "description": "Lists people the authenticated user follows." }, { "slug": "GITHUB_LIST_TIMELINE_EVENTS_FOR_AN_ISSUE", "name": "List timeline events for an issue", "description": "Lists chronological events (e.g., comments, commits, label changes) for a specific issue in a GitHub repository." }, { "slug": "GITHUB_LIST_TOKEN_ACCESS_REPOSITORIES", "name": "List token access repositories", "description": "Lists repositories in an organization that a fine-grained personal access token has access to. Requires organization admin permissions or 'Personal access tokens' organization read permission. Only GitHub Apps can use this endpoint." }, { "slug": "GITHUB_LIST_USER_PROJECTS", "name": "List user projects", "description": "Retrieves a list of projects for a specified GitHub user, optionally filtering by state and supporting pagination; the username must be a valid GitHub handle. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects V1 REST API has been sunset by GitHub." }, { "slug": "GITHUB_LIST_USERS", "name": "List users", "description": "Retrieves all GitHub users (individuals and organizations) in chronological order of their sign-up date." }, { "slug": "GITHUB_LIST_USERS_BLOCKED_BY_AN_ORGANIZATION", "name": "List users blocked by an organization", "description": "Lists users blocked by a specified GitHub organization." }, { "slug": "GITHUB_LIST_USERS_BLOCKED_BY_THE_AUTHENTICATED_USER", "name": "List users blocked by the authenticated user", "description": "Lists users blocked by the authenticated user, returning an empty list if no users are blocked." }, { "slug": "GITHUB_LIST_USERS_THAT_ARE_ASSIGNED_TO_AN_ORGANIZATION_ROLE", "name": "List users assigned org role", "description": "Lists users assigned to a specific role within a GitHub organization." }, { "slug": "GITHUB_LIST_WATCHERS", "name": "List watchers", "description": "Retrieves a list of users watching a specific repository; the repository must be accessible to the authenticated user." }, { "slug": "GITHUB_LIST_WORKFLOW_RUN_ARTIFACTS", "name": "List workflow run artifacts", "description": "Lists artifacts (e.g., build outputs, test results) for a specific workflow run in a GitHub repository." }, { "slug": "GITHUB_LIST_WORKFLOW_RUNS_FOR_A_REPOSITORY", "name": "List workflow runs for a repository", "description": "Lists workflow runs for a repository, allowing filtering by actor, branch, event, status, creation date, check suite ID, or head SHA; the repository must exist and be accessible." }, { "slug": "GITHUB_LIST_WORKFLOW_RUNS_FOR_A_WORKFLOW", "name": "List workflow runs for a workflow", "description": "Lists runs for a specified, existing workflow (identified by ID or filename like `main.yml`) in a GitHub repository, with filtering options." }, { "slug": "GITHUB_LOCK_AN_ISSUE", "name": "Lock an issue", "description": "Locks an existing GitHub issue's conversation, preventing further comments; an optional reason can be specified." }, { "slug": "GITHUB_LOOKUP_ENTERPRISE_ADMINISTRATOR_INVITATION", "name": "Lookup Enterprise Administrator Invitation", "description": "Tool to look up a pending enterprise administrator invitation by invitee, enterprise, and role. Use when you need to check if a specific user has a pending invitation to become an enterprise administrator." }, { "slug": "GITHUB_LOOKUP_GITHUB_RESOURCE", "name": "Lookup GitHub Resource", "description": "Tool to lookup a GitHub resource by its URL. Use when you need to identify or retrieve information about a GitHub resource from its URL." }, { "slug": "GITHUB_LOOKUP_NODES_BY_IDS", "name": "Lookup nodes by IDs", "description": "Tool to lookup GitHub nodes by their global node IDs. Use when you need to retrieve multiple objects by their IDs in a single batch query." }, { "slug": "GITHUB_LOOKUP_ORGANIZATION_GRAPH_QL", "name": "Lookup Organization (GraphQL)", "description": "Tool to lookup a GitHub organization by login using GraphQL. Use when you need organization information via GraphQL API." }, { "slug": "GITHUB_LOOKUP_TOPIC_BY_NAME", "name": "Look Up Topic by Name", "description": "Tool to look up a GitHub topic by name using GraphQL. Use when you need to find information about a specific GitHub topic including its popularity (stargazer count) and related topics." }, { "slug": "GITHUB_MANAGE_ACCESS_CONTROL_FOR_ORGANIZATION_CODESPACES", "name": "Manage access control for organization codespaces", "description": "Sets the Codespaces access control policy for a GitHub organization, determining which members can use them. This endpoint requires admin permissions on the organization. The API returns HTTP 204 No Content on success." }, { "slug": "GITHUB_MANAGE_CUSTOM_PROPERTIES_FOR_ORG_REPOS", "name": "Manage custom properties for org repos", "description": "Creates or updates values for an organization's predefined custom properties across multiple repositories (up to 30)." }, { "slug": "GITHUB_MANAGE_SECRETS_IN_SELECTED_REPOSITORIES", "name": "List selected repositories for a GitHub Actions organization secret", "description": "Lists repositories within an organization that have been explicitly granted access to a specific GitHub Actions organization secret. Returns all repositories that have been selected when the visibility for repository access to an Actions secret is set to 'selected'. Requires admin:org scope and admin access to the organization. Note: This endpoint only returns results when the secret's visibility is set to 'selected'. Secrets with visibility 'all' or 'private' do not have specific repository selections." }, { "slug": "GITHUB_MAP_A_COMMIT_AUTHOR", "name": "Map a commit author", "description": "Updates Git author information (name and/or email) for an `author_id` obtained during a repository import, to correctly attribute commits. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports." }, { "slug": "GITHUB_MARK_A_THREAD_AS_DONE", "name": "Mark a thread as done", "description": "Marks the GitHub notification thread (identified by `thread_id`) as done or read for the authenticated user, effectively archiving it." }, { "slug": "GITHUB_MARK_A_THREAD_AS_READ", "name": "Mark a thread as read", "description": "Marks an existing GitHub notification thread, identified by its `thread_id`, as read." }, { "slug": "GITHUB_MARK_NOTIFICATIONS_AS_READ", "name": "Mark notifications as read", "description": "Marks notifications as read or unread, optionally for those updated at or before a `last_read_at` timestamp." }, { "slug": "GITHUB_MARK_PULL_REQUEST_READY_FOR_REVIEW", "name": "Mark pull request ready for review", "description": "Marks a draft pull request as ready for review using GitHub GraphQL API, transitioning it from draft to reviewable state. Use this action when a draft pull request has reached a stage where it is ready for team review and can potentially be merged. This action cannot be used on pull requests that are already marked as ready for review." }, { "slug": "GITHUB_MARK_REPOSITORY_NOTIFICATIONS_AS_READ", "name": "Mark repository notifications as read", "description": "Marks notifications in a repository as read; if 'last_read_at' is specified, notifications updated after this timestamp are not marked as read." }, { "slug": "GITHUB_MERGE_A_BRANCH", "name": "Merge a branch", "description": "Merges a head branch or commit SHA into a base branch in a repository; fails if there are merge conflicts requiring manual resolution." }, { "slug": "GITHUB_MERGE_A_PULL_REQUEST", "name": "Merge a pull request", "description": "Merges an open and mergeable pull request in a repository. A 405 error can occur for multiple reasons: (1) The PR is still in draft mode - convert it to ready-for-review first using GITHUB_UPDATE_A_PULL_REQUEST. (2) Branch protection rules are not satisfied - check for required approving reviews, status checks, or other repository rules that must be met before merging. (3) The base branch has been modified since the PR was last synced - update the PR branch first using GITHUB_UPDATE_A_PULL_REQUEST_BRANCH." }, { "slug": "GITHUB_MOVE_A_PROJECT_CARD", "name": "Move a project card (Classic - Deprecated)", "description": "Moves a project card to a specified position within a column (GitHub Classic Projects). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. It may still work on GitHub Enterprise Server instances where classic projects remain enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/ On success, the API returns HTTP 201 with an empty body, indicating the card was moved." }, { "slug": "GITHUB_MOVE_A_PROJECT_COLUMN", "name": "Move a project column (Classic - Deprecated)", "description": "Moves a column within a GitHub project (classic) to a new position. DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. The `position` parameter can be: - 'first': Move the column to the beginning of the project - 'last': Move the column to the end of the project - 'after:': Place the column after the specified column (e.g., 'after:67890') See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/" }, { "slug": "GITHUB_PING_AN_ORGANIZATION_WEBHOOK", "name": "Ping an organization webhook", "description": "Sends a 'ping' event to a specified, existing organization webhook to test its configuration and ensure it correctly receives events." }, { "slug": "GITHUB_PING_A_REPOSITORY_WEBHOOK", "name": "Ping a repository webhook", "description": "Pings an existing webhook on a repository to test its configuration and reachability by GitHub." }, { "slug": "GITHUB_PRIVATELY_REPORT_A_SECURITY_VULNERABILITY", "name": "Privately report a security vulnerability", "description": "Privately reports a security vulnerability to a repository's maintainers. IMPORTANT: You cannot report vulnerabilities to repositories you own - this API is for third-party security researchers to report to other repositories. The target repository must have private vulnerability reporting enabled. Specify EITHER `severity` OR `cvss_vector_string`, but not both." }, { "slug": "GITHUB_PUBLISH_SPONSORS_TIER_GRAPH_QL", "name": "Publish Sponsors Tier (GraphQL)", "description": "Tool to publish a draft GitHub Sponsors tier using GraphQL. Use when you need to make a draft sponsors tier visible to potential sponsors. The tier must already exist in draft status." }, { "slug": "GITHUB_REDELIVER_A_DELIVERY_FOR_AN_ORGANIZATION_WEBHOOK", "name": "Redeliver a delivery for an organization webhook", "description": "Redelivers a specific webhook delivery for a webhook within an organization, to resend an event that previously failed or was not processed." }, { "slug": "GITHUB_REDELIVER_A_DELIVERY_FOR_A_REPOSITORY_WEBHOOK", "name": "Redeliver a delivery for a repository webhook", "description": "Redelivers a specific, previously made webhook delivery (`delivery_id`) for a repository's webhook (`hook_id`)." }, { "slug": "GITHUB_REMOVE_A_CUSTOM_PROPERTY_FOR_AN_ORGANIZATION", "name": "Remove a custom property for an organization", "description": "Deletes a custom property, specified by `custom_property_name`, from an existing organization (`org`) for which the property is currently defined, preventing its future assignment to repositories." }, { "slug": "GITHUB_REMOVE_A_LABEL_FROM_AN_ISSUE", "name": "Remove a label from an issue", "description": "Removes a label currently applied to a specific issue in a repository." }, { "slug": "GITHUB_REMOVE_ALL_LABELS_FROM_AN_ISSUE", "name": "Remove all labels from an issue", "description": "Removes all labels from a specified issue in a GitHub repository; this operation is idempotent." }, { "slug": "GITHUB_REMOVE_ALL_ORGANIZATION_ROLES_FOR_A_TEAM", "name": "Remove all organization roles for a team", "description": "Revokes all organization roles for a team in an organization; this is destructive and succeeds even if the team initially has no roles." }, { "slug": "GITHUB_REMOVE_ALL_ORGANIZATION_ROLES_FOR_A_USER", "name": "Remove all organization roles for a user", "description": "Revokes all assigned organization-level roles from a specified user (who must be a member of the organization) within a GitHub organization, without removing the user from the organization or affecting repository-specific roles." }, { "slug": "GITHUB_REMOVE_AN_ORGANIZATION_MEMBER", "name": "Remove an organization member", "description": "Removes a member from a GitHub organization. This action permanently removes a user's membership from the specified organization, revoking their access to all organization resources, repositories, and teams. Requirements: - The authenticated user must be an organization owner - The target user must currently be a member of the organization Note: This action cannot be used to remove the last owner of an organization." }, { "slug": "GITHUB_REMOVE_AN_ORGANIZATION_ROLE_FROM_A_TEAM", "name": "Remove an organization role from a team", "description": "Revokes an organization role that a team currently possesses within an organization." }, { "slug": "GITHUB_REMOVE_AN_ORGANIZATION_ROLE_FROM_A_USER", "name": "Remove an organization role from a user", "description": "Removes a custom organization role from a user within a GitHub organization, provided the organization exists, the user is a member, and the role_id corresponds to a valid custom role in that organization." }, { "slug": "GITHUB_REMOVE_APP_ACCESS_RESTRICTIONS", "name": "Remove app access restrictions", "description": "Removes all GitHub App access restrictions from a protected branch in a repository; the branch must have protection rules configured, and this action does not alter user or team restrictions." }, { "slug": "GITHUB_REMOVE_A_PROJECT_FROM_A_TEAM", "name": "Remove a project from a team", "description": "Removes a project from a team within an organization; this action requires the project to be currently associated with the team." }, { "slug": "GITHUB_REMOVE_A_REPOSITORY_COLLABORATOR", "name": "Remove a repository collaborator", "description": "Removes a collaborator from a specified GitHub repository, provided the repository exists and the user is an existing collaborator." }, { "slug": "GITHUB_REMOVE_A_REPOSITORY_FROM_AN_APP_INSTALLATION", "name": "Remove a repository from an app installation", "description": "Removes a repository from a GitHub App installation for the authenticated user, given a valid `installation_id` and the `repository_id` of a repository currently linked to that installation; this operation is idempotent." }, { "slug": "GITHUB_REMOVE_A_REPOSITORY_FROM_A_TEAM", "name": "Remove a repository from a team", "description": "Disassociates a repository from a team; team members may lose access permissions, but the repository and team are not deleted." }, { "slug": "GITHUB_REMOVE_A_SELECTED_REPOSITORY_FROM_A_USER_SECRET", "name": "Remove a selected repository from a user secret", "description": "Removes a selected repository's access to a user's Codespaces secret; the secret must exist and the repository must have previously been granted access." }, { "slug": "GITHUB_REMOVE_ASSIGNEES_FROM_AN_ISSUE", "name": "Remove assignees from an issue", "description": "Removes specified assignees from a GitHub issue; requires push access, and invalid removal attempts are silently ignored." }, { "slug": "GITHUB_REMOVE_CUSTOM_LABEL_FROM_REPO_RUNNER", "name": "Remove custom label from repo runner", "description": "Removes a custom label from a repository's self-hosted runner; this operation is idempotent." }, { "slug": "GITHUB_REMOVE_CUSTOM_LABEL_FROM_SELF_HOSTED_RUNNER", "name": "Remove custom label from self hosted runner", "description": "Removes a currently assigned custom label (`name`) from a self-hosted runner (`runner_id`) in an organization (`org`). This action allows the organization to manage the labels associated with their runners effectively." }, { "slug": "GITHUB_REMOVE_CUSTOM_LABELS_FROM_SELF_HOSTED_REPO_RUNNER", "name": "Remove custom labels from self hosted repo runner", "description": "Removes all custom labels from a self-hosted runner registered at the repository level, leaving only its default labels and any labels inherited from its runner group or organization." }, { "slug": "GITHUB_REMOVE_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION", "name": "Remove interaction restrictions for an organization", "description": "Removes all interaction restrictions from public repositories in the specified GitHub organization, allowing all users to resume interactions." }, { "slug": "GITHUB_REMOVE_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY", "name": "Remove interaction restrictions for a repository", "description": "Removes all interaction restrictions for a repository, enabling all users to comment, open issues, and create pull requests by lifting any existing temporary interaction limits." }, { "slug": "GITHUB_REMOVE_ORG_DEV_ENV_SECRET_BY_NAME", "name": "Remove org dev env secret by name", "description": "Deletes a GitHub Codespaces secret from an organization by its name; this operation is idempotent." }, { "slug": "GITHUB_REMOVE_ORG_SECRET_BY_NAME", "name": "Remove org secret by name", "description": "Permanently removes a specific Dependabot secret, by its `secret_name`, from the GitHub `org`, making it unavailable to Dependabot for that organization." }, { "slug": "GITHUB_REMOVE_OUTSIDE_COLLABORATOR_FROM_AN_ORGANIZATION", "name": "Remove outside collaborator from an organization", "description": "Removes a user, who must be an outside collaborator, from the specified GitHub organization, revoking their access to all its repositories." }, { "slug": "GITHUB_REMOVE_PUBLIC_ORG_MEMBERSHIP", "name": "Remove public org membership", "description": "Removes the authenticated user's public organization membership, making it private. The user remains a member of the organization but their membership is no longer publicly visible. This operation is idempotent - calling it when the membership is already private will succeed." }, { "slug": "GITHUB_REMOVE_PUBLIC_REPO_INTERACTION_RESTRICTIONS", "name": "Remove user public repo interaction restrictions", "description": "Removes all interaction restrictions (limitations on comments, issues, or pull requests) from all public repositories owned by the authenticated user." }, { "slug": "GITHUB_REMOVE_REPO_FROM_ORG_DEV_ENV_SECRET", "name": "Remove repository from organization dev environment secret", "description": "Removes a repository's access to an organization-level Codespaces secret, if it was previously granted." }, { "slug": "GITHUB_REMOVE_REPO_FROM_ORG_SECRET_WITH_SELECTED_VISIBILITY", "name": "Remove selected repo from org secret", "description": "Revokes a specific repository's access to an organization-level Dependabot secret, applicable only when the secret has 'selected' visibility and the specified repository currently has access." }, { "slug": "GITHUB_REMOVE_REQUESTED_REVIEWERS_FROM_A_PULL_REQUEST", "name": "Remove requested reviewers from a pull request", "description": "Removes currently assigned user logins and/or team slugs from a GitHub pull request's list of requested reviewers." }, { "slug": "GITHUB_REMOVE_REVIEW_REQUEST", "name": "Remove review request", "description": "Removes requested reviewers from a pull request. Use this action when you need to cancel a review request that was previously sent to users or teams. Only users with push access to the repository can remove review requests." }, { "slug": "GITHUB_REMOVE_SELECTED_REPO_FROM_ORG_SECRET", "name": "Remove selected repository from an organization secret", "description": "Removes a specific repository's access to an organization-level secret; the repository must have been previously granted access to this secret." }, { "slug": "GITHUB_REMOVE_SELECTED_REPO_FROM_ORG_VARIABLE", "name": "Remove selected repository from an organization variable", "description": "Removes a repository's access to an organization variable that has 'selected' visibility. This endpoint removes a specific repository from an organization variable's access list. The variable must have its visibility set to 'selected' for this operation to work. Returns a 409 Conflict error if the variable visibility is not 'selected'." }, { "slug": "GITHUB_REMOVE_STATUS_CHECK_CONTEXTS", "name": "Remove status check contexts", "description": "Removes specified status check contexts from a protected branch's required status checks. This action removes the specified status check contexts from the existing list of required status checks for a protected branch. The branch must already have branch protection enabled with status checks configured. Note: The 'contexts' parameter is deprecated by GitHub in favor of 'checks' array. For new implementations, consider using update_status_check_protection with the 'checks' parameter instead." }, { "slug": "GITHUB_REMOVE_STATUS_CHECK_PROTECTION", "name": "Remove status check protection", "description": "Removes status check protection from a branch, disabling required status checks for merging pull requests; will only have an effect if status check protection is currently configured on the branch." }, { "slug": "GITHUB_REMOVE_TEAM_ACCESS_RESTRICTIONS", "name": "Remove team access restrictions", "description": "Removes specified teams from push access to a protected branch. This action removes teams from the list of teams with push access to a protected branch. Removing a team will also remove push access for any child teams. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must currently have push access to the branch" }, { "slug": "GITHUB_REMOVE_TEAM_MEMBERSHIP", "name": "Remove team membership", "description": "Tool to remove team membership for a user in an organization. Use when you need to revoke a user's membership from a specific team. This action is irreversible — the user must be explicitly re-added if you want to restore their team membership. Note that if team synchronization is set up, this operation may fail with a 403 Forbidden error." }, { "slug": "GITHUB_REMOVE_TEAM_MEMBERSHIP_FOR_A_USER", "name": "Remove team membership for a user", "description": "Removes a user from a specific team within an organization. This action requires admin:org scope permissions. It will fail if: - Team synchronization with an Identity Provider (IdP) is enabled (403 Forbidden) - The organization, team, or user membership doesn't exist (404 Not Found) - You don't have sufficient permissions to manage team memberships (403 Forbidden) Note: If the removed user was the last member and the team is not nested, the team may be deleted automatically." }, { "slug": "GITHUB_REMOVE_USER_ACCESS_RESTRICTIONS", "name": "Remove user access restrictions", "description": "Removes specified users from the list of people allowed to push to a protected branch. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must have protection rules with push restrictions enabled - Users being removed must currently have push access to the branch - The combined total of users, apps, and teams is limited to 100 items" }, { "slug": "GITHUB_REMOVE_USER_AS_A_COLLABORATOR", "name": "Remove user as a collaborator (classic project)", "description": "Removes a user as a collaborator from an organization project (classic). IMPORTANT: This action uses the Projects (classic) REST API which is being deprecated. The Projects (classic) feature was sunset on GitHub.com. This API may still work on GitHub Enterprise Server versions before 3.17. Requirements: - You must be an organization owner or a project admin to remove a collaborator - The user must already be a collaborator on the specified project - The project must be an organization project (classic), not a Projects V2 project For GitHub.com users: Consider using GitHub Projects V2 instead, which can be managed through the GraphQL API." }, { "slug": "GITHUB_REMOVE_USERS_CODESPACES_ACCESS_ORG", "name": "Remove users from codespaces access for an organization", "description": "Removes selected users from GitHub Codespaces billing access for an existing organization." }, { "slug": "GITHUB_RENAME_A_BRANCH", "name": "Rename a branch", "description": "Renames an existing branch in a GitHub repository; the new name must be unique and adhere to GitHub's naming conventions, and the current branch name cannot contain wildcard characters." }, { "slug": "GITHUB_RENDER_A_MARKDOWN_DOCUMENT", "name": "Render a markdown document", "description": "Renders Markdown to HTML; for 'gfm' mode, provide 'context' (owner/repo) to correctly link issues, pull requests, and user mentions." }, { "slug": "GITHUB_RENDER_MARKDOWN_RAW", "name": "Render Markdown (Raw Mode)", "description": "Tool to render raw Markdown text to HTML using GitHub's markdown API. Use when you need to convert plain Markdown content to HTML without GitHub-specific features like issue references or @mentions." }, { "slug": "GITHUB_REOPEN_ISSUE", "name": "Reopen an issue", "description": "Reopens a closed GitHub issue by changing its state to 'open' with state_reason 'reopened'. Use this action when you need to reopen a previously closed issue that requires further attention or work. Only users with push access to the repository can reopen issues." }, { "slug": "GITHUB_REOPEN_PULL_REQUEST", "name": "Reopen Pull Request", "description": "Reopens a previously closed pull request by setting its state to 'open'. This restores the pull request to an active state where it can be reviewed, commented on, and merged. Use this action when you need to reactivate a closed pull request that was closed prematurely or needs to be reconsidered for merging." }, { "slug": "GITHUB_REPLACE_ALL_REPOSITORY_TOPICS", "name": "Replace all repository topics", "description": "Replaces all topics of a repository." }, { "slug": "GITHUB_REPLACE_ORG_SECRET_VISIBILITY_TO_SELECTED", "name": "Replace org secret visibility to selected", "description": "Replaces the list of repositories that can access a Dependabot organization secret when the secret's visibility is already set to 'selected'." }, { "slug": "GITHUB_REPLACE_REPO_ACCESS_ON_ORG_DEV_ENV_SECRET_SET", "name": "Replace repository access for an org Codespaces secret", "description": "Replaces the list of repositories that can access an organization-level Codespaces secret. This operation completely replaces the existing list of repositories with the provided list. The secret must already have its visibility set to 'selected' for this operation to succeed. Use this when you want to set an exact list of repositories that should have access. Prerequisites: - The organization must exist and you must have admin:org scope - The Codespaces secret must already exist in the organization - The secret's visibility must be set to 'selected' (not 'all' or 'private') Returns HTTP 204 No Content on success, 404 if secret/org not found, 409 if visibility is not 'selected'." }, { "slug": "GITHUB_REQUEST_A_GITHUB_PAGES_BUILD", "name": "Request a github pages build", "description": "Manually triggers a GitHub Pages build for a repository if GitHub Pages is enabled, useful for deployments not automatically built or for retrying failed builds." }, { "slug": "GITHUB_REQUEST_REVIEWERS", "name": "Request reviewers for a pull request", "description": "Requests reviewers for a specific pull request identified by owner, repository, and pull request number. Use this action when you need to add individual users or teams as reviewers to an existing pull request. At least one of reviewers (individual users) or team_reviewers (teams) must be provided." }, { "slug": "GITHUB_REQUEST_REVIEWERS_FOR_A_PULL_REQUEST", "name": "Add reviewers to a specific pull request", "description": "Adds reviewers to a specific pull request identified by owner, repo, and pull_number. This is NOT a search action - it operates on an already-known PR number. Requires `owner`, `repo`, `pull_number`, and at least one of `reviewers` or `team_reviewers`." }, { "slug": "GITHUB_REREQUEST_A_CHECK_RUN", "name": "Rerequest a check run", "description": "Triggers a re-run of a specific check run in a GitHub repository, resetting its status to 'queued', clearing its conclusion, and triggering the `check_run` webhook with `rerequested` action. IMPORTANT: This endpoint requires GitHub App authentication with 'checks:write' permission. The check run can ONLY be re-requested by the same GitHub App that originally created it. OAuth tokens and personal access tokens (PAT) cannot use this endpoint." }, { "slug": "GITHUB_REREQUEST_A_CHECK_SUITE", "name": "Rerequest a check suite", "description": "Triggers a new run of an existing check suite within a repository, resetting its status to 'queued', clearing its conclusion, and triggering the `check_suite` webhook with `rerequested` action. IMPORTANT: This endpoint requires GitHub App authentication with 'checks:write' permission. OAuth tokens and classic personal access tokens (PAT) cannot use this endpoint. Only GitHub App user access tokens, GitHub App installation access tokens, or fine-grained personal access tokens with checks:write permission are supported." }, { "slug": "GITHUB_RE_RUN_A_JOB_FROM_A_WORKFLOW_RUN", "name": "Re-run a job from a workflow run", "description": "Re-runs a specific job and any dependent jobs from a GitHub Actions workflow run in the specified repository, optionally enabling debug logging." }, { "slug": "GITHUB_RE_RUN_A_WORKFLOW", "name": "Rerun a workflow", "description": "Re-runs a specific GitHub Actions workflow run identified by its owner, repository, and run ID, optionally enabling debug logging." }, { "slug": "GITHUB_RE_RUN_FAILED_JOBS_FROM_A_WORKFLOW_RUN", "name": "Rerun failed jobs from a workflow run", "description": "Re-runs all failed jobs and their dependent jobs from a specified workflow run if the run contains previously failed jobs." }, { "slug": "GITHUB_RESET_A_TOKEN", "name": "Reset a token", "description": "Invalidates the provided OAuth `access_token` and generates a new one for the GitHub OAuth App identified by `client_id`. Used for token rotation when a token may be compromised or for regular security maintenance. Note: This endpoint requires the OAuth App owner's credentials (client_id/client_secret for Basic Auth)." }, { "slug": "GITHUB_RESTORE_A_PACKAGE_FOR_AN_ORGANIZATION", "name": "Restore a package for an organization", "description": "Restores a package in an organization, provided it was deleted within the last 30 days." }, { "slug": "GITHUB_RESTORE_A_PACKAGE_FOR_A_USER", "name": "Restore a package for a user", "description": "Restores a user-owned package previously deleted from GitHub Packages, if restorable under GitHub's data retention policy (typically within 30 days of deletion)." }, { "slug": "GITHUB_RESTORE_A_PACKAGE_FOR_THE_AUTHENTICATED_USER", "name": "Restore a package for the authenticated user", "description": "Restores a package deleted by the authenticated user within the last 30 days, if its namespace and version are still available." }, { "slug": "GITHUB_RESTORE_A_PACKAGE_VERSION_FOR_THE_AUTHENTICATED_USER", "name": "Restore a package version for the authenticated user", "description": "Restores a package version that was deleted by the authenticated user within the last 30 days." }, { "slug": "GITHUB_RESTORE_PACKAGE_VERSION_FOR_AN_ORGANIZATION", "name": "Restore package version for an organization", "description": "Restores a package version for an organization, provided it was deleted within the last 30 days." }, { "slug": "GITHUB_RESTORE_PACKAGE_VERSION_FOR_A_USER", "name": "Restore package version for a user", "description": "Restores a specific, user-owned package version if it was deleted within the last 30 days and its original namespace and version name are still available." }, { "slug": "GITHUB_RETIRE_SPONSORS_TIER", "name": "Retire Sponsors Tier", "description": "Tool to retire a published payment tier from your GitHub Sponsors profile using GraphQL. Use when you need to prevent a tier from being used for new sponsorships. Existing sponsors at this tier remain unaffected." }, { "slug": "GITHUB_REVIEW_ACCESS_WITH_PERSONAL_TOKEN", "name": "Review access with personal token", "description": "Approves or denies a pending fine-grained personal access token request for organization resources; must be performed by a GitHub App." }, { "slug": "GITHUB_REVIEW_DEPLOYMENT_PROTECTION_RULES", "name": "Review Custom Deployment Rules For Workflow Run", "description": "Approves or rejects pending custom deployment protection rules for a workflow run. This endpoint allows GitHub Apps to review their own pending custom deployment protection rules for a specific workflow run. The review can either approve (allowing the deployment to proceed) or reject (blocking the deployment). **Important notes:** - GitHub Apps can only review their own custom deployment protection rules - This endpoint requires GitHub App installation access tokens with Deployments permission (write) - Custom deployment protection rules are available in public repos for all plans; for private/internal repos, GitHub Enterprise is required - Returns 204 No Content on success" }, { "slug": "GITHUB_REVIEW_PENDING_DEPLOYMENTS_FOR_A_WORKFLOW_RUN", "name": "Review pending deployments for a workflow run", "description": "Approves or rejects pending deployments for a specific workflow run that are in a 'waiting' state within specified, configured environments." }, { "slug": "GITHUB_REVIEW_RESOURCE_REQUESTS_WITH_FINE_GRAINED_TOKENS", "name": "Review PAT Requests in Bulk", "description": "Approves or denies multiple fine-grained personal access token requests for an organization in bulk. This endpoint processes multiple PAT request approvals or denials in a single API call. All specified pat_request_ids must refer to currently pending requests. Important: This endpoint can ONLY be called by GitHub Apps with the 'organization_personal_access_token_requests:write' permission. It cannot be called with personal access tokens or OAuth apps. On success, returns HTTP 202 Accepted with an empty body." }, { "slug": "GITHUB_REVOKE_AN_INSTALLATION_ACCESS_TOKEN", "name": "Revoke an installation access token", "description": "Revokes the GitHub App's current installation access token, immediately invalidating it for API authentication. IMPORTANT: This endpoint requires a GitHub App installation access token (ghs_* prefix) for authentication. OAuth tokens (gho_*) or personal access tokens are not supported and will result in a 403 Forbidden error. After successful revocation, the token becomes permanently invalid and cannot be used for any subsequent API calls. To continue API operations, a new installation access token must be generated." }, { "slug": "GITHUB_RUN_GRAPH_QL_QUERY", "name": "Run GraphQL Query", "description": "Tool to run an arbitrary GitHub GraphQL v4 query or mutation. Use when fetching multiple datasets in one batch. Cost-based rate limit: ~5,000 points/hour; keep field selections narrow, avoid deep nesting, and include rateLimit in responses to monitor quota. Responses are nested under data.data (e.g., data.data.repository.vulnerabilityAlerts); always inspect the errors array even on HTTP 200, as partial failures embed there. Paginate by looping on pageInfo.hasNextPage and advancing with pageInfo.endCursor. Search results cap at ~1,000 items per query; split by label, date range, or repository for full coverage. Use ProjectV2 nodes, not Classic Projects (deprecated). Parallel mutations (e.g., addProjectV2ItemById) can trigger transient conflicts; use sequential execution." }, { "slug": "GITHUB_RUN_GRAPH_QL_RELAY_QUERY", "name": "Run GraphQL Relay Query", "description": "Tool to run a GitHub GraphQL relay query. The relay field is a workaround for re-exposing the root query object. Use when you need to access root query fields through the relay context." }, { "slug": "GITHUB_SEARCH_CODE", "name": "Search code", "description": "Searches code file contents and paths on the default branch of GitHub repositories using a query string; searches only files under 384KB, returns max 1000 results by best match, and is optimized for precision." }, { "slug": "GITHUB_SEARCH_CODE_ALL_PAGES", "name": "Search code (all pages)", "description": "Tool to search code across multiple pages using GitHub's code search API. Use when single-page searches may miss matches and you need a full or capped result set. GitHub caps results at ~1,000 total items regardless of pagination; results for broad queries may be silently truncated. Only the default branch is indexed, and very large files may be excluded — treat results as potentially partial. Rate limit: ~30 requests/minute; honor `Retry-After` on 403/429 responses." }, { "slug": "GITHUB_SEARCH_COMMITS", "name": "Search commits", "description": "Finds commits on GitHub using a query string (q) supporting keywords and qualifiers, with options for sorting and pagination." }, { "slug": "GITHUB_SEARCH_COMMITS_BY_AUTHOR", "name": "Search commits by author across repos", "description": "Searches commits across GitHub using the Search API (e.g., by author/email/org/date range) without per-repo scanning. Use when you need to find commits by author, committer email, organization, or date ranges across multiple repositories. This avoids the need to list commits per repository and prevents 409 errors on empty repos." }, { "slug": "GITHUB_SEARCH_GITHUB_GRAPHQL", "name": "GitHub GraphQL Search", "description": "Tool to perform GitHub GraphQL searches across issues, pull requests, repositories, users, and discussions. Returns up to 1,000 results with cursor-based pagination. Use when you need structured search results with specific fields." }, { "slug": "GITHUB_SEARCH_ISSUES", "name": "Search issues and pull requests", "description": "Searches GitHub issues and pull requests using a flexible query with qualifiers, sorting, and pagination. Use this action when you need to find issues or pull requests across repositories using search criteria like author, labels, state, milestone, or date ranges. This action searches across all repositories accessible to the authenticated user unless constrained by qualifiers like repo:, user:, or org:." }, { "slug": "GITHUB_SEARCH_ISSUES_AND_PULL_REQUESTS", "name": "Search issues and pull requests", "description": "Searches GitHub for issues and pull requests. Supports keywords, qualifiers (repo:, org:, user:, state:, label:, author:, assignee:, mentions:, etc.), and type filters (is:issue, is:pr). Type filters cannot be used alone - they must be combined with at least one keyword or other qualifier. All other qualifiers work independently. The @me shorthand (e.g., assignee:@me, mentions:@me) is automatically resolved to your username. Logical operators (AND, OR, NOT) are supported but limited to a maximum of 5 operators total per query." }, { "slug": "GITHUB_SEARCH_LABELS", "name": "Search labels", "description": "Searches for labels within a GitHub repository by keywords in their names or descriptions." }, { "slug": "GITHUB_SEARCH_REPOSITORIES", "name": "Search repositories", "description": "Searches GitHub repositories using a flexible query (keywords, qualifiers) with sorting, ordering, and pagination. IMPORTANT: The 'q' parameter (search query) is REQUIRED and must always be provided." }, { "slug": "GITHUB_SEARCH_TOPICS", "name": "Search topics", "description": "Finds topics on GitHub using keywords and qualifiers with GitHub's search syntax, supporting pagination." }, { "slug": "GITHUB_SEARCH_USERS", "name": "Search users", "description": "Searches for users on GitHub by criteria like username, email, location, followers, or repository associations, using a flexible query string `q`." }, { "slug": "GITHUB_SET_ADMIN_BRANCH_PROTECTION", "name": "Set admin branch protection", "description": "Enables administrator enforcement on a branch, making existing protection rules also apply to administrators; branch protection rules must already be configured." }, { "slug": "GITHUB_SET_APP_ACCESS_RESTRICTIONS", "name": "Set app access restrictions", "description": "Replaces the list of GitHub Apps permitted to push to a protected branch. This action completely replaces the existing list of apps with push access - it does not add to or merge with the current list. Requirements: - The branch must already have protection rules enabled with push restrictions configured - Apps must be installed on the repository and have 'contents' write permission - Push restrictions are only available for organization-owned repositories with GitHub Team or Enterprise Cloud plans" }, { "slug": "GITHUB_SET_A_REPOSITORY_SUBSCRIPTION", "name": "Set a repository subscription", "description": "Sets the authenticated user's notification subscription for a repository." }, { "slug": "GITHUB_SET_A_THREAD_SUBSCRIPTION", "name": "Set a thread subscription", "description": "Sets whether a GitHub notification thread is ignored (muted) or unignored (unmuted), for a `thread_id` that must identify an existing notification thread." }, { "slug": "GITHUB_SET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_AN_ORGANIZATION", "name": "Set default workflow permissions for an organization", "description": "Updates an organization's default GITHUB_TOKEN permissions for workflows and whether GitHub Actions can approve pull requests; note that allowing Actions to approve pull requests (`can_approve_pull_request_reviews: true`) is a security risk." }, { "slug": "GITHUB_SET_DEFAULT_WORKFLOW_PERMISSIONS_FOR_A_REPOSITORY", "name": "Set default workflow permissions for a repository", "description": "Sets the default permissions for the GITHUB_TOKEN within a repository and configures whether GitHub Actions can approve pull requests." }, { "slug": "GITHUB_SET_EMAIL_VISIBILITY", "name": "Set primary email visibility", "description": "Sets the visibility ('public' or 'private') of the authenticated user's primary email address on GitHub, if one is configured." }, { "slug": "GITHUB_SET_GITHUB_ACTIONS_PERMISSIONS_FOR_AN_ORGANIZATION", "name": "Set GitHub Actions permissions for an organization", "description": "Sets the GitHub Actions permissions policy for an organization, specifying which repositories can run Actions and which actions/workflows are allowed; if 'selected' is chosen for either, manage the specific lists via other endpoints." }, { "slug": "GITHUB_SET_GITHUB_ACTIONS_PERMISSIONS_FOR_A_REPOSITORY", "name": "Set github actions permissions for a repository", "description": "Sets GitHub Actions permissions for a repository, enabling/disabling Actions and defining the policy for allowed actions and reusable workflows." }, { "slug": "GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_AN_ORGANIZATION", "name": "Set interaction restrictions for an organization", "description": "Limits interactions (comments, new issues, PRs) in an organization's public repositories by user type and duration, typically to mitigate high traffic or unwanted activity." }, { "slug": "GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_A_REPOSITORY", "name": "Set interaction restrictions for a repository", "description": "Temporarily limits which GitHub users (e.g., existing_users, contributors_only) can interact (comment, open issues, create pull requests) in a repository for a specified duration." }, { "slug": "GITHUB_SET_INTERACTION_RESTRICTIONS_FOR_YOUR_PUBLIC_REPOS", "name": "Set interaction restrictions for your public repositories", "description": "Sets or updates temporary interaction restrictions for all public repositories owned by the authenticated user, overriding any repository-specific limits." }, { "slug": "GITHUB_SET_LABELS_FOR_AN_ISSUE", "name": "Set labels for an issue", "description": "Replaces all existing labels on a GitHub issue with a new set of labels." }, { "slug": "GITHUB_SET_OIDC_SUBJECT_CLAIM_TEMPLATE", "name": "Set custom OIDC subject claim template", "description": "Sets the OpenID Connect (OIDC) subject claim template for a GitHub repository, allowing use of the default template or a custom one defined by `include_claim_keys` if `use_default` is `false`." }, { "slug": "GITHUB_SET_ORG_ALLOWED_ACTIONS", "name": "Set allowed actions and workflows for an organization", "description": "Sets the GitHub Actions permissions for an existing organization, specifying allowed GitHub-owned actions, verified creator actions, and action/workflow patterns from public repositories." }, { "slug": "GITHUB_SET_ORG_RUNNER_LABELS", "name": "Set custom labels for a self-hosted runner for an organization", "description": "Sets the custom labels for a self-hosted runner in an organization; this operation does not affect default system-assigned labels (e.g., 'self-hosted', 'linux', 'x64')." }, { "slug": "GITHUB_SET_REPO_ALLOWED_ACTIONS", "name": "Set repo allowed actions", "description": "Sets allowed GitHub Actions and reusable workflows for a repository, managing permissions for GitHub-owned, verified creator, or specific pattern-matched actions/workflows (note: `patterns_allowed` applies only to public repositories)." }, { "slug": "GITHUB_SET_REPO_RUNNER_LABELS", "name": "Set custom labels for repo runner", "description": "Replaces all custom labels for a specific self-hosted runner in a repository; an empty list for `labels` removes all existing custom labels." }, { "slug": "GITHUB_SET_SELECTED_REPOS_FOR_ORG_VARIABLE", "name": "Set selected repositories for an organization variable", "description": "Replaces the list of repositories that can access an organization-level variable; the variable's visibility must be 'selected'." }, { "slug": "GITHUB_SET_SELECTED_REPOSITORIES_FOR_AN_ORGANIZATION_SECRET", "name": "Set selected repositories for an organization secret", "description": "Replaces the list of repositories that can access an organization secret; only effective if the secret's visibility is 'selected'. Prerequisites: - The organization secret must already exist - The secret's visibility must be set to 'selected' (not 'all' or 'private') - Requires admin:org scope or actions secrets fine-grained permission This action completely replaces the repository access list. To add or remove individual repositories without affecting others, use the dedicated add/remove repository actions instead." }, { "slug": "GITHUB_SET_SELECTED_REPOSITORIES_FOR_A_USER_SECRET", "name": "Set selected repositories for a user secret", "description": "Defines the list of repositories permitted to access a specific Codespaces secret for the authenticated user." }, { "slug": "GITHUB_SET_STATUS_CHECK_CONTEXTS", "name": "Set status check contexts", "description": "Replaces required status check contexts for a protected branch, requiring admin permissions; an empty `contexts` array removes all checks." }, { "slug": "GITHUB_SET_TEAM_ACCESS_RESTRICTIONS", "name": "Set team access restrictions", "description": "Replaces the list of teams with push access to a protected branch. This action sets (replaces) the teams that have push access to a protected branch. Unlike 'Add team access restrictions' (POST), this action replaces the entire list rather than adding to it. Use an empty list to remove all team restrictions. Prerequisites: - The repository must be owned by an organization (not a personal account) - The branch must have protection rules enabled - The branch protection must have restrictions configured - The teams must exist in the organization and have repository access" }, { "slug": "GITHUB_SET_USER_ACCESS_RESTRICTIONS", "name": "Set user access restrictions", "description": "Replaces the list of users with push access to a protected branch in an organization repository. Important notes: - This action only works on organization-owned repositories (not personal repos) - The branch must already have protection rules with restrictions enabled - This REPLACES (not adds to) the existing list of users with push access - Users must have write access to the repository to be added - The combined total of users, apps, and teams is limited to 100 items - To add users without replacing, use the 'add_user_access_restrictions' action instead" }, { "slug": "GITHUB_SET_USER_INTERACTION_LIMIT_GRAPH_QL", "name": "Set User Interaction Limit (GraphQL)", "description": "Tool to set interaction limits on a user's public repositories using GraphQL. Use when you need to temporarily restrict who can comment, open issues, or create pull requests. Limits apply to the authenticated user or a specified user." }, { "slug": "GITHUB_SET_WORKFLOW_EXTERNAL_ACCESS", "name": "Set workflow access level outside repository", "description": "Sets the access level for workflows outside a repository to use actions and reusable workflows within that repository." }, { "slug": "GITHUB_STAR_A_GIST", "name": "Star a gist", "description": "Stars a GitHub gist identified by `gist_id`; this action is idempotent and returns a 204 No Content status upon success, even if the gist is already starred." }, { "slug": "GITHUB_STAR_A_REPOSITORY_FOR_THE_AUTHENTICATED_USER", "name": "Star a specified repository (requires owner and repo)", "description": "Stars a specified repository (identified by owner and repo name) for the authenticated user; this action is idempotent and succeeds even if the repository is already starred. Requires explicit repository identification via owner and repo parameters." }, { "slug": "GITHUB_START_A_CODESPACE_FOR_THE_AUTHENTICATED_USER", "name": "Start a codespace for the authenticated user", "description": "Initiates the startup process for an existing GitHub Codespace (identified by `codespace_name`) if it's in a startable state like 'Available' or 'Stopped'." }, { "slug": "GITHUB_STOP_A_CODESPACE_FOR_AN_ORGANIZATION_USER", "name": "Stop a codespace for an organization user", "description": "Stops a running codespace for an organization member. This action allows organization administrators to stop a codespace that belongs to a member of their organization. The codespace must be in a running state (e.g., 'Available') to be stopped. Required permissions: - OAuth/PAT: admin:org scope - Fine-grained tokens: 'Organization codespaces' (write) or 'Codespaces lifecycle admin' (write) Common HTTP responses: - 200: Codespace successfully stopped, returns codespace object - 304: Not modified (codespace already stopped) - 401: Authentication required - 403: Insufficient permissions (need admin:org) - 404: Organization, user, or codespace not found" }, { "slug": "GITHUB_STOP_A_CODESPACE_FOR_THE_AUTHENTICATED_USER", "name": "Stop a codespace for the authenticated user", "description": "Stops a running or available Codespace for the authenticated user, pausing its execution and billing." }, { "slug": "GITHUB_SUBMIT_A_REVIEW_FOR_A_PULL_REQUEST", "name": "Submit a review for a pull request", "description": "Finalizes a pending pull request review (identified by `review_id`) with a required `event` (APPROVE, REQUEST_CHANGES, COMMENT) and an optional `body`." }, { "slug": "GITHUB_SYNC_FORK_BRANCH_WITH_UPSTREAM", "name": "Sync a fork branch with the upstream repository", "description": "Synchronizes a branch in a forked GitHub repository with its upstream counterpart, assuming the repository is a fork, the branch exists, an upstream is configured, and the merge is conflict-free." }, { "slug": "GITHUB_TEST_REPOSITORY_WEBHOOK", "name": "Test the push repository webhook", "description": "Triggers a simulated push event to test a repository's push webhook; a test event is only delivered if the webhook is subscribed to 'push' events, otherwise, it returns 204 No Content without sending a POST." }, { "slug": "GITHUB_TRANSFER_A_REPOSITORY", "name": "Transfer a repository", "description": "Initiates a repository transfer to a new owner (who must accept the request); if the new owner is an organization, it must be configured to allow transfers." }, { "slug": "GITHUB_UNBLOCK_A_USER", "name": "Unblock a user", "description": "Unblocks a GitHub user, provided they are currently blocked by the authenticated user." }, { "slug": "GITHUB_UNBLOCK_USER_FROM_ORGANIZATION", "name": "Unblock a user from an organization", "description": "Unblocks a user from an organization, allowing renewed interaction with its resources, provided the user is currently blocked (otherwise, a 404 error may occur)." }, { "slug": "GITHUB_UNFOLLOW_A_USER", "name": "Unfollow a user", "description": "Unfollows an existing GitHub user; this action is idempotent, succeeding even if the authenticated user is not currently following them." }, { "slug": "GITHUB_UNFOLLOW_ORGANIZATION", "name": "Unfollow organization", "description": "Tool to unfollow a GitHub organization using GraphQL. Use when you need to stop following a specific organization on GitHub." }, { "slug": "GITHUB_UNFOLLOW_USER", "name": "Unfollow user", "description": "Tool to unfollow a GitHub user using GraphQL. Use when you need to stop following a specific user on GitHub." }, { "slug": "GITHUB_UNLOCK_AN_ISSUE", "name": "Unlock an issue", "description": "Unlocks a currently locked GitHub issue in the specified repository, allowing new comments and interactions." }, { "slug": "GITHUB_UNLOCK_ORGANIZATION_REPOSITORY", "name": "Unlock an organization repository", "description": "Unlocks a repository that was locked for migration within a GitHub organization. This action is part of the organization migrations workflow. When you start a migration with `lock_repositories=true`, the source repositories are locked to prevent changes during export. After the migration is complete and applied to the target instance, use this action to unlock the repositories so they can be accessed or deleted. Requirements: - You must be an organization owner to unlock repositories - The repository must be currently locked as part of the specified migration - This endpoint does not work with GitHub App tokens or fine-grained personal access tokens Typical workflow: 1. Start an organization migration with POST /orgs/{org}/migrations 2. Wait for the migration to complete (state: \"exported\") 3. Apply the migration to your target instance 4. Unlock each migrated repository using this action 5. Delete the source repositories if no longer needed" }, { "slug": "GITHUB_UNLOCK_USER_REPOSITORY", "name": "Unlock a user repository", "description": "Unlocks a repository (`repo_name`) that was locked as part of a user migration (`migration_id`), making it usable or deletable; this action requires the repository to be currently locked." }, { "slug": "GITHUB_UNSTAR_A_GIST", "name": "Unstar a gist", "description": "Removes a star from the specified gist; the action is idempotent and will not error if the gist was not previously starred by the user." }, { "slug": "GITHUB_UNSTAR_REPOSITORY", "name": "Unstar a repository", "description": "Removes the authenticated user's star from a specified repository, which must already be starred by the user." }, { "slug": "GITHUB_UPDATE_A_CHECK_RUN", "name": "Update a check run", "description": "Updates an existing check run for a specific commit in a repository, allowing modifications to its status, conclusion, output, and other details. NOTE: This endpoint requires GitHub App authentication with 'checks:write' permission - OAuth tokens and personal access tokens cannot update check runs." }, { "slug": "GITHUB_UPDATE_A_CODE_SCANNING_ALERT", "name": "Update a code scanning alert", "description": "Updates a specific code scanning alert in a GitHub repository, primarily to change its state (e.g., 'open' or 'dismissed')." }, { "slug": "GITHUB_UPDATE_A_COMMIT_COMMENT", "name": "Update a commit comment", "description": "Changes the body of an existing commit comment." }, { "slug": "GITHUB_UPDATE_A_CUSTOM_ORGANIZATION_ROLE", "name": "Update a custom organization role", "description": "Updates an existing custom role in an organization by modifying its name, description, or permissions; at least one of these fields must be provided." }, { "slug": "GITHUB_UPDATE_A_DEPLOYMENT_BRANCH_POLICY", "name": "Update a deployment branch policy", "description": "Updates the name pattern of an existing deployment branch policy for a specific environment in a repository." }, { "slug": "GITHUB_UPDATE_A_DISCUSSION", "name": "Update a discussion", "description": "Updates the title and/or body of a specific team discussion within an organization." }, { "slug": "GITHUB_UPDATE_A_DISCUSSION_COMMENT", "name": "Update a discussion comment", "description": "Updates the body of a comment in a team's discussion within an organization." }, { "slug": "GITHUB_UPDATE_A_GIST", "name": "Update a gist", "description": "Updates a gist's description, and/or its files (including content, filename changes, or deletion)." }, { "slug": "GITHUB_UPDATE_A_GIST_COMMENT", "name": "Update a gist comment", "description": "Updates an existing comment on a specified gist." }, { "slug": "GITHUB_UPDATE_A_LABEL", "name": "Update a label", "description": "Updates an existing label's name, color, or description within a specified repository." }, { "slug": "GITHUB_UPDATE_A_MILESTONE", "name": "Update a milestone", "description": "Updates a milestone in a repository, identified by `owner`, `repo`, and `milestone_number`, by allowing modification of its `title`, `state`, `description`, or `due_on`; at least one of these four attributes must be provided to perform an update." }, { "slug": "GITHUB_UPDATE_AN_ENVIRONMENT_VARIABLE", "name": "Update an environment variable", "description": "Updates an existing environment variable's name and/or value in a specific GitHub repository environment; requires providing either a new name or a new value." }, { "slug": "GITHUB_UPDATE_AN_ISSUE", "name": "Update an issue", "description": "Updates an existing GitHub issue's title, body, state, milestone, labels, or assignees; `state_reason` is only processed if `state` also changes, and use `null` or `[]` to clear applicable fields." }, { "slug": "GITHUB_UPDATE_AN_ISSUE_COMMENT", "name": "Update an issue comment", "description": "Updates an existing comment on an issue or pull request within a specified repository. You can only update comments that the authenticated user has permission to edit. The comment_id can be obtained from the list_issue_comments or get_an_issue_comment actions." }, { "slug": "GITHUB_UPDATE_AN_ORGANIZATION", "name": "Update an organization", "description": "Updates an organization's settings; changing security-related fields requires admin, owner, or security manager permissions." }, { "slug": "GITHUB_UPDATE_AN_ORGANIZATION_VARIABLE", "name": "Update an organization variable", "description": "Updates an existing GitHub Actions organization variable's name, value, or visibility (`all`, `private`, `selected`), requiring `selected_repository_ids` with valid repository IDs if visibility is `selected`." }, { "slug": "GITHUB_UPDATE_AN_ORGANIZATION_WEBHOOK", "name": "Update an organization webhook", "description": "Updates the configuration (URL, content type, secret, SSL verification), subscribed events, active status, or name of an existing webhook for a specified organization." }, { "slug": "GITHUB_UPDATE_A_PROJECT", "name": "Update a project", "description": "Updates an existing GitHub project (V2) attributes like title, description, visibility, and state. Note: This action uses GitHub's Projects V2 GraphQL API. The legacy Projects (classic) REST API was sunset on April 1, 2025. The project is identified by its number (visible in the project URL) and owner (either a username or organization name). If no owner is specified, the authenticated user is assumed. At least one field to update must be provided." }, { "slug": "GITHUB_UPDATE_A_PULL_REQUEST", "name": "Update a pull request", "description": "Updates an existing pull request, allowing changes to attributes like title, body, state, base branch, and maintainer modification settings." }, { "slug": "GITHUB_UPDATE_A_PULL_REQUEST_BRANCH", "name": "Update a pull request branch", "description": "Updates an open pull request's head branch by merging the latest changes from its base branch, if mergeable and repository merging is enabled; operates asynchronously." }, { "slug": "GITHUB_UPDATE_A_REFERENCE", "name": "Update a reference", "description": "Updates an existing Git reference (e.g., a branch or tag) to point to a specific commit SHA. By default, only allows fast-forward updates (where the new commit is a descendant of the current one). Set `force=true` to allow non-fast-forward updates that rewrite history. IMPORTANT: The reference must already exist - use 'Create a reference' action to create new refs." }, { "slug": "GITHUB_UPDATE_A_RELEASE", "name": "Update a release", "description": "Updates an existing release in a GitHub repository, allowing modification of its attributes; if linking a discussion, the `discussion_category_name` must refer to an existing category in the repository." }, { "slug": "GITHUB_UPDATE_A_RELEASE_ASSET", "name": "Update a release asset", "description": "Updates the name, label, or state of a release asset in a GitHub repository, requiring at least one of these properties to be provided for modification." }, { "slug": "GITHUB_UPDATE_A_REPOSITORY", "name": "Update a repository", "description": "Updates settings for an existing GitHub repository, such as name, description, visibility, merge strategies, and security configurations." }, { "slug": "GITHUB_UPDATE_A_REPOSITORY_INVITATION", "name": "Update a repository invitation", "description": "Updates an active repository invitation to modify the invited user's permissions; the specified repository and invitation must exist." }, { "slug": "GITHUB_UPDATE_A_REPOSITORY_RULESET", "name": "Update a repository ruleset", "description": "Updates an existing repository ruleset, identified by `ruleset_id` for a given repository, allowing partial updates to its configuration such as name, target, enforcement, bypass actors, conditions, and rules." }, { "slug": "GITHUB_UPDATE_A_REPOSITORY_VARIABLE", "name": "Update a repository variable", "description": "Updates the name and/or value of an existing GitHub Actions variable in a repository." }, { "slug": "GITHUB_UPDATE_A_REPOSITORY_WEBHOOK", "name": "Update a repository webhook", "description": "Updates the URL, content type, secret, SSL verification, events, or active status for an existing repository webhook, specified by `owner`, `repo`, and `hook_id`." }, { "slug": "GITHUB_UPDATE_A_TEAM", "name": "Update a team", "description": "Updates a team's settings (e.g., name, description, privacy, parent team) within a GitHub organization, identified by its slug and organization name." }, { "slug": "GITHUB_UPDATE_BRANCH_PROTECTION", "name": "Update branch protection", "description": "Updates the protection settings for an existing branch in a repository, which must not contain wildcard characters." }, { "slug": "GITHUB_UPDATE_CODE_SCANNING_DEFAULT_SETUP", "name": "Update a code scanning default setup configuration", "description": "Updates the default setup configuration for code scanning in a repository; GitHub Advanced Security must be enabled for the repository." }, { "slug": "GITHUB_UPDATE_CODESPACE", "name": "Update a codespace for the authenticated user", "description": "Updates an existing GitHub Codespace's machine type, display name, or recent folders for the authenticated user; machine type changes take effect on the next start." }, { "slug": "GITHUB_UPDATE_GIT_LFS_PREFERENCE", "name": "Update Git LFS Preference", "description": "Sets the Git Large File Storage (LFS) preference for a repository during a source import. NOTE: This endpoint has been deprecated by GitHub as of April 12, 2024, and is no longer available. The Source Imports REST API has been retired due to very low usage levels. Please use the GitHub Importer tool at https://github.com/new/import for repository imports." }, { "slug": "GITHUB_UPDATE_ISSUE_TYPE", "name": "Update issue type", "description": "Update an existing issue type for a GitHub organization. Requires the authenticated user to be an organization administrator. OAuth tokens need admin:org scope." }, { "slug": "GITHUB_UPDATE_ORGANIZATION_WEBHOOK_CONFIGURATION", "name": "Update a webhook configuration for an organization", "description": "Updates the configuration (URL, content type, secret, SSL verification) for an existing webhook within a specified organization." }, { "slug": "GITHUB_UPDATE_PROJECT_CARD", "name": "Update an existing project card (Classic - Deprecated)", "description": "Updates an existing project card's note and/or archived status (GitHub Classic Projects). DEPRECATION NOTICE: GitHub Projects (classic) and its REST API were sunset on April 1, 2025. This action will return 404 for most requests on GitHub.com. However, it may still work on GitHub Enterprise Server instances where classic projects are enabled. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/" }, { "slug": "GITHUB_UPDATE_PROJECT_COLUMN", "name": "Update an existing project column (Classic - Deprecated)", "description": "Updates the name of an existing column, identified by `column_id`, in a GitHub project (classic). DEPRECATION NOTICE: GitHub Classic Projects (V1) and its REST API were sunset on April 1, 2025. This action will return a 404 error on GitHub.com. For new projects, use GitHub Projects V2 which uses the GraphQL API instead. See: https://github.blog/changelog/2024-05-23-sunset-notice-projects-classic/" }, { "slug": "GITHUB_UPDATE_PULL_REQUEST_REVIEW", "name": "Update a review for a pull request", "description": "Updates the body text of an existing pull request review." }, { "slug": "GITHUB_UPDATE_PULL_REQUEST_REVIEW_COMMENT", "name": "Update a review comment for a pull request", "description": "Updates the body of an existing review comment on a pull request." }, { "slug": "GITHUB_UPDATE_PULL_REQUEST_REVIEW_PROTECTION", "name": "Update pull request review protection", "description": "Updates pull request review protection settings (e.g., required approvals, review dismissal, bypass allowances) for a branch; branch protection features must be available for the repository." }, { "slug": "GITHUB_UPDATE_REPOSITORY_PREFERENCES_FOR_CHECK_SUITES", "name": "Update repository preferences for check suites", "description": "Updates repository preferences for automatic Check Suite creation on code pushes, allowing configuration for specific GitHub Apps that must be installed on the repository with `checks:write` permission." }, { "slug": "GITHUB_UPDATE_REPOSITORY_WEBHOOK_CONFIGURATION", "name": "Update a webhook configuration for a repository", "description": "Updates the configuration (e.g., payload URL, content type, secret, SSL verification) for an existing webhook in a specified repository." }, { "slug": "GITHUB_UPDATE_RESOURCE_ACCESS_WITH_TOKENS", "name": "Update resource access with tokens", "description": "Revokes organization access for the personal access tokens identified by `pat_ids`; this action must be performed by a GitHub App, and `pat_ids` must be valid and associated with the organization. AUTHENTICATION REQUIREMENT: This endpoint requires GitHub App authentication with 'Personal access tokens' organization permissions (write). Standard personal access tokens CANNOT use this endpoint. The GitHub App must also have access to the organization." }, { "slug": "GITHUB_UPDATE_STATUS_CHECK_PROTECTION", "name": "Update status check protection", "description": "Updates required status checks for a branch, optionally requiring it to be up-to-date before merging." }, { "slug": "GITHUB_UPDATE_SUBSCRIPTION", "name": "Update Subscription", "description": "Tool to update notification subscription state for issues, pull requests, or discussions. Use when you need to subscribe, unsubscribe, or ignore notifications for a specific GitHub item." }, { "slug": "GITHUB_UPDATE_THE_AUTHENTICATED_USER", "name": "Update the authenticated user", "description": "Updates the authenticated user's GitHub profile; a new public email must be verified, and existing private emails remain private even if specified." }, { "slug": "GITHUB_UPDATE_TOKEN_ORG_ACCESS", "name": "Revoke Token Organization Access", "description": "Revokes a fine-grained personal access token's access to an organization. IMPORTANT: This endpoint can ONLY be called by GitHub Apps with 'Personal access tokens' organization permissions (write). Personal access tokens (PATs) cannot use this endpoint. Use GITHUB_LIST_ORG_RESOURCE_ACCESS_TOKENS to get valid pat_id values for tokens that have access to your organization." }, { "slug": "GITHUB_UPDATE_USER_LIST", "name": "Update User List", "description": "Tool to update an existing GitHub user list. Use when you need to modify the name, description, or privacy settings of a user list." }, { "slug": "GITHUB_UPDATE_USER_LISTS_FOR_ITEM", "name": "Update user lists for item", "description": "Tool to update which of the viewer's lists an item belongs to on GitHub. Use when you need to add an item (repository, issue, pull request, etc.) to specific user lists or move it between lists." }, { "slug": "GITHUB_UPDATE_USER_PROJECT_ITEM", "name": "Update Project V2 Item for User", "description": "Tool to update a field value for an item in a user's GitHub ProjectV2. Use when you need to modify a field value of an existing project item." }, { "slug": "GITHUB_UPDATE_USER_STATUS", "name": "Change User Status", "description": "Tool to update your status on GitHub. Use when you need to set or clear your GitHub profile status with an emoji, message, and availability indicator." }, { "slug": "GITHUB_UPLOAD_RELEASE_ASSET", "name": "Upload a release asset", "description": "Tool to upload a binary asset to an existing GitHub release. Use when you need to attach files like installers or backups to a release programmatically." }, { "slug": "GITHUB_UPLOAD_SARIF_ANALYSIS", "name": "Upload an analysis as sarif data", "description": "Uploads a gzipped and Base64 encoded SARIF file to a GitHub repository for a specific commit and reference; use `checkout_uri` if SARIF paths are absolute." }, { "slug": "GITHUB_UPSERT_REPO_CUSTOM_PROPERTY_VALUES", "name": "Create or update repository custom property values", "description": "Creates or updates up to 30 custom property values for a repository; custom properties must be predefined at the organization or repository level, and setting a property's value to `null` removes it." }, { "slug": "GITHUB_VALIDATE_CREDENTIAL", "name": "Validate credential", "description": "Validates GitHub API credentials by checking if they can successfully authenticate. Use this action when you need to verify that API credentials are valid and have not expired or been revoked. Returns whether the credentials are valid along with the authenticated user's username." }, { "slug": "GITHUB_VERIFY_DEV_CONTAINER_PERMISSIONS_ACCEPTED", "name": "Verify dev container permissions accepted", "description": "Verifies if the authenticated user has accepted permissions for a specific devcontainer configuration in a repository, typically to ensure awareness before a codespace is created or used." } ], "triggers": [ { "slug": "GITHUB_ARTIFACT_CREATED_TRIGGER", "name": "New Workflow Artifact Created", "description": "Triggers when a new workflow artifact is created in a GitHub repository.\n\n Monitors for newly created GitHub Actions workflow artifacts. Optionally\n filters by artifact name to restrict monitoring to specific artifacts." }, { "slug": "GITHUB_BRANCH_CHANGED_TRIGGER", "name": "Branch Changed", "description": "Triggers when a GitHub branch changes.\n\n Monitors a specific branch for:\n - New commits pushed (head commit SHA changes)\n - Protection status toggled (branch becomes protected or unprotected)\n - Protection settings changed, including: required status checks and their\n enforcement level, admin enforcement, required pull request reviews\n (dismiss stale reviews, code owner reviews, approving review count,\n last push approval), required linear history, force push allowance,\n deletion allowance, conversation resolution, branch locking, and fork\n syncing." }, { "slug": "GITHUB_BRANCH_CREATED_TRIGGER", "name": "New Branch Created", "description": "Triggers when a new branch is created in a GitHub repository.\n\n Detects newly created branches. Deleted branches do not fire events." }, { "slug": "GITHUB_CHECK_RUN_STATUS_CHANGED_TRIGGER", "name": "Check Run Status / Conclusion Changed", "description": "Triggers when a specific GitHub check run changes its status or conclusion.\n\n Monitors a single check run for changes to: status (queued, in_progress,\n completed, etc.), conclusion (success, failure, neutral, cancelled, skipped,\n timed_out, action_required), started_at, and completed_at." }, { "slug": "GITHUB_CHECK_SUITE_STATUS_CHANGED_TRIGGER", "name": "Check Suite Status / Conclusion Changed", "description": "Triggers when a GitHub check suite changes its status or conclusion for a given ref.\n\n Monitors all check suites associated with a git reference (branch, tag, or\n commit SHA) for changes to status (queued, in_progress, completed, etc.) and\n conclusion (success, failure, neutral, cancelled, skipped, timed_out,\n action_required, startup_failure, stale). Optionally filters by GitHub App ID." }, { "slug": "GITHUB_CODE_SCANNING_ALERT_CREATED_TRIGGER", "name": "New Code Scanning Alert Created", "description": "Triggers when a new code scanning alert is created in a repository.\n\n Fires an event for each newly created code scanning alert detected in\n the configured repository. Alerts can be filtered by Git reference,\n scanning tool, state, and severity. The payload includes the alert\n number, rule details, tool information, state, severity, and the\n location of the most recent instance." }, { "slug": "GITHUB_COLLABORATOR_ADDED_TRIGGER", "name": "New Repository Collaborator Added", "description": "Triggers when a new collaborator is added to a GitHub repository.\n\n Monitors the full list of collaborators on a repository and fires an event\n for each newly added collaborator. The payload includes the collaborator's\n GitHub username, account ID, profile URL, avatar URL, permission flags\n (pull, triage, push, maintain, admin), and assigned role name." }, { "slug": "GITHUB_COMMIT_EVENT", "name": "Commit Event", "description": "Triggered when a new commit is pushed to a repository." }, { "slug": "GITHUB_DEPLOYMENT_CREATED_TRIGGER", "name": "New Deployment Created", "description": "Triggers when a new deployment is created in a GitHub repository.\n\n Fires an event for each newly created deployment detected in the\n configured repository. Deployments can optionally be filtered by target\n environment. The payload includes the deployment ID, commit SHA, ref,\n task, environment, creator details, and timestamps." }, { "slug": "GITHUB_DEPLOYMENT_STATE_CHANGED_TRIGGER", "name": "GitHub Deployment State Changed", "description": "Triggers when a specific GitHub deployment's fields change.\n\n Monitors the following aspects of a single deployment:\n - ``environment`` -- the target environment name\n - ``original_environment`` -- the original environment name before normalization\n - ``description`` -- the human-readable deployment description\n - ``task`` -- the deployment task name\n - ``sha`` -- the commit SHA being deployed\n - ``ref`` -- the branch, tag, or SHA reference being deployed\n - ``updated_at`` -- the last-updated timestamp\n - ``transient_environment`` -- whether the environment is temporary\n - ``production_environment`` -- whether this is a production deployment\n\n When any of these fields change, an event is emitted containing the full\n current deployment details and a list of which fields changed." }, { "slug": "GITHUB_DEPLOYMENT_STATUS_CREATED", "name": "New Deployment Status Created", "description": "Triggers when a new deployment status is created for a specific deployment.\n\n Fires an event for each newly created deployment status on the monitored\n deployment. Deployment statuses represent state transitions such as\n pending, in_progress, success, failure, error, inactive, and queued.\n The payload includes the status state, creator, environment, description,\n timestamps, and relevant URLs." }, { "slug": "GITHUB_FOLLOWER_EVENT", "name": "Follower Changes", "description": "Triggers when new followers are detected on your GitHub account." }, { "slug": "GITHUB_GIT_REFERENCE_CREATED_TRIGGER", "name": "New Git Reference Created", "description": "Triggers when a new Git reference (branch or tag) matching a specified\n prefix is created in a repository.\n\n Fires an event for each newly created branch or tag whose name matches\n the configured prefix. Use ``ref_prefix`` to control what is monitored:\n - ``heads/`` to watch all branches\n - ``heads/feature/`` to watch only feature branches\n - ``tags/`` to watch all tags\n - ``tags/v`` to watch tags starting with 'v'\n\n The payload includes the full reference name, node ID, the SHA and type\n of the Git object the reference points to, and the reference API URL." }, { "slug": "GITHUB_ISSUE_ADDED_EVENT", "name": "Issue Added Event", "description": "Triggered when a new issue is added to the repository." }, { "slug": "GITHUB_ISSUE_ASSIGNED_TO_ME_TRIGGER", "name": "New Issue Assigned to Me", "description": "Triggers when a new issue is assigned to the authenticated user.\n\n Fires an event for each GitHub issue that is newly assigned to the\n authenticated user. Pull requests are automatically excluded -- only\n true issues are emitted. Issues can optionally be filtered by labels\n and state. The payload includes the issue number, title, body, state,\n labels, assignees, creator, repository details, and timestamps." }, { "slug": "GITHUB_ISSUE_COMMENT_CHANGED_TRIGGER", "name": "GitHub Issue Comment Changed", "description": "Triggers when a specific GitHub issue comment changes.\n\n Monitors the following fields for changes:\n\n - ``body`` -- the text content of the comment (detects edits)\n - ``updated_at`` -- the last-updated timestamp\n - ``reactions_*`` -- all individual reaction counts (thumbs up/down,\n laugh, confused, heart, hooray, eyes, rocket) and the total count\n\n When a change is detected, the payload includes the full current comment\n data plus a ``changed_fields`` list indicating exactly which fields\n were modified." }, { "slug": "GITHUB_ISSUE_COMMENT_CREATED_TRIGGER", "name": "New GitHub Issue Comment", "description": "Triggers when a new comment is added to a specific GitHub issue.\n\n Only genuinely new comments are emitted; edits to existing comments do\n not produce duplicate events. The payload includes the comment ID, text\n body, author details, timestamps, and direct links to the comment on\n GitHub." }, { "slug": "GITHUB_ISSUE_CREATED_TRIGGER", "name": "New Issue Created", "description": "Triggers when a new issue is created in a GitHub repository.\n\n Pull requests are automatically excluded -- only true issues produce events.\n Results can be filtered by labels, assignee, creator, and mentioned user.\n\n The payload includes the issue number, title, body, state, labels, assignees,\n comment count, creator details, timestamps, and direct links to the issue on\n GitHub." }, { "slug": "GITHUB_ISSUE_EVENT_OCCURRED_TRIGGER", "name": "New Issue Event", "description": "Triggers when a new issue event occurs in a GitHub repository.\n\n Covers all issue timeline events such as issues being closed, reopened,\n assigned, unassigned, labeled, unlabeled, milestoned, demilestoned,\n renamed, locked, or unlocked. Events can optionally be filtered by type.\n\n The payload includes the event type, timestamp, the actor who triggered\n the event, the affected issue details, and any associated commit\n references." }, { "slug": "GITHUB_ISSUE_LABEL_CHANGED_TRIGGER", "name": "GitHub Issue Labels Changed", "description": "Triggers when the labels on a specific GitHub issue change.\n\n Fires whenever a label is added to, removed from, or has its metadata\n (color, description) modified on the monitored issue. The payload\n includes:\n\n - ``current_labels`` -- the full set of labels currently on the issue\n - ``added_labels`` -- labels that were newly added\n - ``removed_label_names`` -- names of labels that were removed\n - ``changed_label_names`` -- labels whose metadata changed without\n being added or removed" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "github_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "repo,user,gist,notifications,project,workflow,codespace" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googlecalendar", "name": "Google Calendar", "logo": "https://logos.composio.dev/api/googlecalendar", "description": "Google Calendar is a time management tool providing scheduling features, event reminders, and integration with email and other apps for streamlined organization", "category": "scheduling & booking", "authSchemes": [ "OAUTH2" ], "toolCount": 49, "triggerCount": 7, "version": "20260703_00", "tools": [ { "slug": "GOOGLECALENDAR_ACL_DELETE", "name": "Delete ACL Rule", "description": "Deletes an access control rule from a Google Calendar. Use when you need to remove sharing permissions for a user, group, or domain." }, { "slug": "GOOGLECALENDAR_ACL_GET", "name": "Get ACL Rule", "description": "Retrieves a specific access control rule for a calendar. Use when you need to check permissions for a specific user, group, or domain." }, { "slug": "GOOGLECALENDAR_ACL_INSERT", "name": "Create ACL Rule", "description": "Creates an access control rule for a calendar. Use when you need to grant sharing permissions to a user, group, or domain." }, { "slug": "GOOGLECALENDAR_ACL_LIST", "name": "List ACL Rules", "description": "Retrieves the list of access control rules (ACLs) for a specified calendar, providing the necessary 'rule_id' values required for updating specific ACL rules." }, { "slug": "GOOGLECALENDAR_ACL_PATCH", "name": "Patch ACL Rule", "description": "Updates an existing access control rule for a calendar using patch semantics (partial update). This allows modifying specific fields without affecting other properties. IMPORTANT: The ACL rule must already exist on the calendar. This action cannot create new rules. If you receive a 404 Not Found error, the rule does not exist - use ACL insert to create it first, or use ACL list to verify available rules. Each patch request consumes three quota units. For domain-type ACL rules, if PATCH fails with 500 error, this action will automatically fallback to UPDATE method." }, { "slug": "GOOGLECALENDAR_ACL_UPDATE", "name": "Update ACL Rule", "description": "Updates an access control rule for the specified calendar." }, { "slug": "GOOGLECALENDAR_ACL_WATCH", "name": "Watch ACL Changes", "description": "Tool to watch for changes to ACL resources. Use when you need to set up real-time notifications for access control list modifications on a calendar." }, { "slug": "GOOGLECALENDAR_BATCH_EVENTS", "name": "Batch Events", "description": "Execute up to 1000 event mutations (create/patch/delete) in one Google Calendar HTTP batch request with per-item status/results. Use this to materially reduce round-trips for bulk operations like migrations, cleanup, or large-scale updates." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_DELETE", "name": "Remove Calendar from List", "description": "Tool to remove a calendar from the user's calendar list. Use when you need to unsubscribe from or hide a calendar from the user's list." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_GET", "name": "Get Single Calendar by ID", "description": "Retrieves metadata for a SINGLE specific calendar from the user's calendar list by its calendar ID. This action requires a calendarId parameter and returns details about that one calendar only. NOTE: This does NOT list all calendars. To list all calendars in the user's calendar list, use GOOGLECALENDAR_CALENDAR_LIST_LIST instead." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_INSERT", "name": "Insert Calendar into List", "description": "Inserts an existing calendar into the user's calendar list, making it visible in the UI. Calendars (e.g., newly created ones) won't appear in the list or UI until explicitly inserted." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_PATCH", "name": "Patch Calendar List Entry", "description": "Updates an existing calendar on the user's calendar list using patch semantics. This method allows partial updates, modifying only the specified fields." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_UPDATE", "name": "Update Calendar List Entry", "description": "Updates a calendar list entry's display/subscription settings (color, visibility, reminders, selection) for the authenticated user — does not modify the underlying calendar resource (title, timezone, etc.). To modify the calendar itself, use GOOGLECALENDAR_CALENDARS_UPDATE." }, { "slug": "GOOGLECALENDAR_CALENDAR_LIST_WATCH", "name": "Watch Calendar List", "description": "Watch for changes to CalendarList resources using push notifications. Use this to receive real-time updates when calendar list entries are modified." }, { "slug": "GOOGLECALENDAR_CALENDARS_DELETE", "name": "Delete Calendar", "description": "Deletes a secondary calendar that you own or have delete permissions on. Deletion is permanent and irreversible — verify the correct calendar_id before calling. You cannot delete your primary calendar or calendars you only have read/write access to. Use calendarList.list to find calendars with owner accessRole. For primary calendars, use calendars.clear instead. Parallel calls may trigger userRateLimitExceeded; sequence bulk deletions." }, { "slug": "GOOGLECALENDAR_CALENDARS_UPDATE", "name": "Update Calendar", "description": "Full PUT-style update that overwrites all calendar metadata fields; unspecified optional fields are cleared. Use GOOGLECALENDAR_PATCH_CALENDAR to update only a subset of fields. Mutates the underlying calendar resource (title, description, timeZone, etc.); use GOOGLECALENDAR_CALENDAR_LIST_UPDATE to change per-user display properties like color." }, { "slug": "GOOGLECALENDAR_CHANNELS_STOP", "name": "Stop Channel", "description": "Tool to stop watching resources through a notification channel. Use when you need to discontinue push notifications for a specific channel subscription." }, { "slug": "GOOGLECALENDAR_CLEAR_CALENDAR", "name": "Clear Calendar", "description": "Clears a primary calendar by deleting all events from it. The calendar itself is preserved; only its events are removed. Primary calendars cannot be deleted entirely." }, { "slug": "GOOGLECALENDAR_COLORS_GET", "name": "Get Color Definitions", "description": "Returns the color definitions for calendars and events. Use when you need to retrieve the available color palette for styling calendars or events." }, { "slug": "GOOGLECALENDAR_CREATE_CALENDAR", "name": "Create a new calendar", "description": "Creates a new secondary Google Calendar with the specified title and optional settings. Use this action when you need to create a new calendar for organizing events separately from the primary calendar. The authenticated user becomes the owner of the newly created calendar. Optional parameters include description, location, and timezone." }, { "slug": "GOOGLECALENDAR_CREATE_EVENT", "name": "Create Event", "description": "Create a Google Calendar event using start_datetime plus duration fields. The organizer is added as an attendee unless exclude_organizer is True. By default adds Google Meet link (works for Workspace, gracefully falls back for personal Gmail). Attendees can be email strings (required) or objects with email and optional fields. No conflict checking is performed; use GOOGLECALENDAR_FREE_BUSY_QUERY to detect overlaps before creating. Returns event id and htmlLink nested under data.response_data. Example: { \"start_datetime\": \"2025-01-16T13:00:00\", \"timezone\": \"America/New_York\", \"event_duration_hour\": 1, \"event_duration_minutes\": 30, \"summary\": \"Client sync\", \"attendees\": [\"required@example.com\", {\"email\": \"optional@example.com\", \"optional\": true}] }" }, { "slug": "GOOGLECALENDAR_DELETE_EVENT", "name": "Delete event", "description": "Deletes a specified event by `event_id` from a Google Calendar (`calendar_id`); idempotent — a 404 for an already-deleted event is a no-op. Bulk deletions may trigger `rateLimitExceeded` or `userRateLimitExceeded`; cap concurrency to 5–10 requests and apply exponential backoff." }, { "slug": "GOOGLECALENDAR_DUPLICATE_CALENDAR", "name": "Create a calendar", "description": "Creates a new, empty Google Calendar with the specified title (summary). Newly created calendars default to UTC timezone; use GOOGLECALENDAR_PATCH_CALENDAR afterward to set the desired timeZone if needed." }, { "slug": "GOOGLECALENDAR_EVENTS_GET", "name": "Get Event", "description": "Retrieves a SINGLE event by its unique event_id (REQUIRED). This action does NOT list or search events - it fetches ONE specific event when you already know its ID. If you want to list events within a time range, search for events, or filter by criteria like time_min/time_max, use GOOGLECALENDAR_EVENTS_LIST instead." }, { "slug": "GOOGLECALENDAR_EVENTS_IMPORT", "name": "Import Event", "description": "Tool to import an event as a private copy to a calendar. Use when you need to add an existing event to a calendar using its iCalUID. Only events with eventType='default' can be imported." }, { "slug": "GOOGLECALENDAR_EVENTS_INSTANCES", "name": "Get Event Instances", "description": "Returns instances of the specified recurring event. Use timeMin/timeMax to constrain the window; omitting bounds can return large result sets and is quota-heavy. On high-volume calls, 403 rateLimitExceeded or 429 too_many_requests may occur; apply exponential backoff (1s, 2s, 4s) before retrying." }, { "slug": "GOOGLECALENDAR_EVENTS_LIST", "name": "List Events", "description": "Returns events on the specified calendar. TIMEZONE WARNING: When using timeMin/timeMax with UTC timestamps (ending in 'Z'), the time window is interpreted in UTC regardless of the calendar's timezone. For example, querying '2026-01-19T00:00:00Z' to '2026-01-20T00:00:00Z' on a calendar in America/Los_Angeles (UTC-8) covers 2026-01-18 4pm to 2026-01-19 4pm local time, potentially missing events on the intended local date. To query for a specific local date, use timestamps with the appropriate timezone offset in timeMin/timeMax (e.g., '2026-01-19T00:00:00-08:00' for PST)." }, { "slug": "GOOGLECALENDAR_EVENTS_LIST_ALL_CALENDARS", "name": "List Events from All Calendars", "description": "Return a unified event list across all calendars in the user's calendar list for a given time range. Use when you need a single view of all events across multiple calendars. An inverted or incorrect time range silently returns empty results rather than an error. An empty `items` list means no events matched the filters—adjust `time_min`, `time_max`, or `q` before concluding no events exist." }, { "slug": "GOOGLECALENDAR_EVENTS_MOVE", "name": "Move Event", "description": "Moves an event to another calendar, i.e., changes an event's organizer." }, { "slug": "GOOGLECALENDAR_EVENTS_WATCH", "name": "Watch Events", "description": "Watch for changes to Events resources. Watch channels expire; persist the channel `id` per `calendarId` to re-establish watches after expiration or restarts." }, { "slug": "GOOGLECALENDAR_FIND_EVENT", "name": "Find event", "description": "Finds events in a specified Google Calendar using text query, time ranges (event start/end, last modification), and event types. Ensure `timeMin` is not chronologically after `timeMax` if both are provided. Results may span multiple pages; always follow `nextPageToken` until absent to avoid silently missing events. Validate the correct match from results by checking summary, start.dateTime, and organizer.email before using event_id for mutations. An empty `items` array means no events matched — widen filters rather than treating it as an error." }, { "slug": "GOOGLECALENDAR_FIND_FREE_SLOTS", "name": "Find free slots", "description": "Finds both free and busy time slots in Google Calendars for specified calendars within a defined time range. If `time_min` is not provided, defaults to the current timestamp in the specified timezone. If `time_max` is not provided, defaults to 23:59:59 of the day specified in `time_min` (if provided), otherwise defaults to 23:59:59 of the current day in the specified timezone. Returns busy intervals and calculates free slots by finding gaps between busy periods; `time_min` must precede `time_max` if both are provided. This action retrieves free and busy time slots for the specified calendars over a given time period. It analyzes the busy intervals from the calendars and provides calculated free slots based on the gaps in the busy periods. Returned free slots are unfiltered by duration; callers must filter intervals to those fully containing the required meeting length. No event metadata (titles, descriptions, links) is returned; use GOOGLECALENDAR_EVENTS_LIST for event details." }, { "slug": "GOOGLECALENDAR_FREE_BUSY_QUERY", "name": "Query Free/Busy Information (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_FIND_FREE_SLOTS instead (though this tool provides wider secondary/shared calendar coverage). Returns opaque busy intervals only—no event titles or details; use GOOGLECALENDAR_EVENTS_LIST when event details are needed." }, { "slug": "GOOGLECALENDAR_GET_CALENDAR", "name": "Get Google Calendar", "description": "Retrieves a specific Google Calendar, identified by `calendar_id`, to which the authenticated user has access. Response includes `timeZone` (IANA format, e.g., 'America/Los_Angeles') — use it directly when constructing `timeMin`/`timeMax` in other tools to avoid DST errors. An empty `defaultReminders` list is valid (no defaults configured). Insufficient `accessRole` may omit fields like `defaultReminders` and `colorId`." }, { "slug": "GOOGLECALENDAR_GET_CALENDAR_PROFILE", "name": "Get Calendar Profile (Deprecated)", "description": "DEPRECATED: Use CalendarListGet instead. Tool to retrieve the authenticated user's primary calendar profile. Use when you need to get information about the user's main calendar, including timezone, settings, and preferences." }, { "slug": "GOOGLECALENDAR_GET_CURRENT_DATE_TIME", "name": "Get current date and time", "description": "Gets the current date and time, allowing for a specific timezone offset. Call this tool first before computing relative dates (e.g., 'tomorrow', 'next Monday') to avoid off-by-one-day errors across timezones." }, { "slug": "GOOGLECALENDAR_LIST_BUILDINGS", "name": "List Buildings", "description": "Lists all buildings for a Google Workspace customer account with full details including addresses, coordinates, and floor names. Use this action when you need to retrieve the complete list of physical building locations configured in Google Workspace Calendar resources. This is useful for workspace administrators managing conference room and resource scheduling across multiple office buildings. Requires Google Workspace administrator privileges with Directory API access." }, { "slug": "GOOGLECALENDAR_LIST_CALENDAR_RESOURCES", "name": "List Calendar Resources", "description": "Retrieves calendar resources (such as conference rooms) from a Google Workspace domain using the Admin SDK Directory API. Use this action when you need to list available meeting rooms, conference spaces, or other bookable calendar resources in an organization. The action supports filtering by resource category, capacity, building location, and other criteria. IMPORTANT: This requires Admin SDK Directory API access and appropriate admin permissions - it is NOT available for personal Gmail accounts, only Google Workspace domains." }, { "slug": "GOOGLECALENDAR_LIST_CALENDARS", "name": "List Google Calendars", "description": "Retrieves calendars from the user's Google Calendar list, with options for pagination and filtering. Loop through all pages using nextPageToken until absent to avoid missing calendars. Use the primary flag and accessRole field from the response to identify calendars — display names are not valid calendar_id values. Read access (listing) does not imply write OAuth scopes." }, { "slug": "GOOGLECALENDAR_LIST_SETTINGS", "name": "List Calendar Settings (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_SETTINGS_LIST instead. Tool to return all user settings for the authenticated user. Use when you need to retrieve calendar settings." }, { "slug": "GOOGLECALENDAR_PATCH_CALENDAR", "name": "Patch Calendar", "description": "Partially updates (PATCHes) an existing Google Calendar, modifying only the fields provided. At least one of summary, description, location, or timezone must be provided. Empty strings for `description` or `location` clear them." }, { "slug": "GOOGLECALENDAR_PATCH_EVENT", "name": "Patch Event", "description": "Update specified fields of an existing event in a Google Calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar_id` and `event_id` are valid and the user has write access to the calendar." }, { "slug": "GOOGLECALENDAR_QUICK_ADD", "name": "Quick Add Event", "description": "Parses natural language text to quickly create a basic Google Calendar event with its title, date, and time, suitable for simple scheduling; does not support direct attendee addition or recurring events, and `calendar_id` must be valid if not 'primary'." }, { "slug": "GOOGLECALENDAR_REMOVE_ATTENDEE", "name": "Remove attendee from event", "description": "Removes an attendee from a specified event in a Google Calendar; the calendar and event must exist. Concurrent calls on the same event can overwrite attendee lists — apply changes sequentially per event." }, { "slug": "GOOGLECALENDAR_SETTINGS_GET", "name": "Get Calendar Setting", "description": "Tool to return a single user setting for the authenticated user. Use when you need to retrieve a specific calendar setting value." }, { "slug": "GOOGLECALENDAR_SETTINGS_LIST", "name": "List Settings", "description": "Returns all user settings for the authenticated user. Results include multiple settings keyed by id (e.g., `timeZone`); locate a specific setting by its `id` field. `timeZone` values are IANA identifiers (e.g., `America/New_York`) — use directly in datetime and event logic; align with `timeZone` from GOOGLECALENDAR_GET_CALENDAR for consistent notification times." }, { "slug": "GOOGLECALENDAR_SETTINGS_WATCH", "name": "Watch Settings", "description": "Watch for changes to Settings resources." }, { "slug": "GOOGLECALENDAR_SYNC_EVENTS", "name": "Sync Events (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_EVENTS_LIST instead. EventsList already handles syncToken with automatic param stripping. Synchronizes Google Calendar events, performing a full sync if no `sync_token` is provided or if a 410 GONE error (due to an expired token) necessitates it, otherwise performs an incremental sync for events changed since the `sync_token` was issued." }, { "slug": "GOOGLECALENDAR_UPDATE_EVENT", "name": "Update Google event", "description": "Updates an existing event in Google Calendar. REQUIRES event_id - you MUST first search for the event using GOOGLECALENDAR_FIND_EVENT or GOOGLECALENDAR_EVENTS_LIST to obtain the event_id. This is a full PUT replacement: omitted fields (including attendees, reminders, recurrence, conferencing) are cleared. Always provide the complete desired event state. Use GOOGLECALENDAR_PATCH_EVENT instead for partial edits." } ], "triggers": [ { "slug": "GOOGLECALENDAR_ATTENDEE_RESPONSE_CHANGED_TRIGGER", "name": "Attendee Response Changed", "description": "Polling trigger that fires when any attendee's RSVP changes to\n accepted, declined, or tentative. Returns attendee info and current status." }, { "slug": "GOOGLECALENDAR_EVENT_CANCELED_DELETED_TRIGGER", "name": "Event Canceled or Deleted", "description": "Triggers when a Google Calendar event is cancelled or deleted.\n Returns minimal data: event_id, summary (if available), and cancellation timestamp." }, { "slug": "GOOGLECALENDAR_EVENT_STARTING_SOON_TRIGGER", "name": "Event Starting Soon", "description": "Triggers when a calendar event is within a configured number of minutes from starting.\n Returns event details, time remaining, attendees, and join links when available." }, { "slug": "GOOGLECALENDAR_GOOGLE_CALENDAR_EVENT_CHANGE_TRIGGER", "name": "Calendar Event Changes", "description": "**SOON TO BE DEPRECATED** - Use Calendar Event Sync (polling trigger) instead.\n Real-time webhook trigger for calendar event changes. Returns event metadata only.\n For full event data, use Calendar Event Sync (polling trigger)." }, { "slug": "GOOGLECALENDAR_GOOGLE_CALENDAR_EVENT_CREATED_TRIGGER", "name": "Event Created", "description": "Polling trigger that fires when a new calendar event is created.\n Returns event ID, summary, start/end times, and organizer info." }, { "slug": "GOOGLECALENDAR_GOOGLE_CALENDAR_EVENT_SYNC_TRIGGER", "name": "Calendar Event Sync", "description": "Polling trigger that returns full event data including details, attendees, and metadata.\n For real-time notifications with basic info, use Calendar Event Changes (webhook)." }, { "slug": "GOOGLECALENDAR_GOOGLE_CALENDAR_EVENT_UPDATED_TRIGGER", "name": "Event Updated", "description": "Triggers when an existing Google Calendar event is modified. Returns the event ID,\n change type, and the specific fields that changed with their previous and new values." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googlecalendar_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/calendar,https://www.googleapis.com/auth/calendar.events" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "notion", "name": "Notion", "logo": "https://logos.composio.dev/api/notion", "description": "Notion centralizes notes, docs, wikis, and tasks in a unified workspace, letting teams build custom workflows for collaboration and knowledge management", "category": "notes", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 48, "triggerCount": 8, "version": "20260703_00", "tools": [ { "slug": "NOTION_ADD_MULTIPLE_PAGE_CONTENT", "name": "Add multiple content blocks (bulk, user-friendly)", "description": "Bulk-add content blocks to Notion. Text >2000 chars auto-splits. Parses markdown formatting. ⚠️ PARENT BLOCK TYPES: Content is added AS CHILDREN of parent_block_id. - To add content AFTER a heading, use PAGE ID as parent + heading ID in 'after' param. - Headings CANNOT have children unless is_toggleable=True. Simplified format: {'content': 'text', 'block_property': 'paragraph'} Full format for code: {'type': 'code', 'code': {'rich_text': [...], 'language': 'python'}} Array format also supported (auto-normalized): [{\"parent_block_id\": \"...\"}, {block1}, {block2}] => proper request structure" }, { "slug": "NOTION_ADD_PAGE_CONTENT", "name": "Add single content block to Notion page (Deprecated)", "description": "DEPRECATED: Use 'add_multiple_page_content' for better performance. Adds a single content block to a Notion page/block. CRITICAL: Notion API enforces a HARD LIMIT of 2000 characters per text.content field. Content exceeding 2000 chars is AUTOMATICALLY SPLIT into multiple sequential blocks. REQUIRED 'content' field for text blocks: paragraph, heading_1-3, callout, to_do, toggle, quote, list items. Parent blocks MUST be: Page, Toggle, To-do, Bulleted/Numbered List Item, Callout, or Quote. Common errors: - \"content.length should be ≤ 2000\": Text exceeds API limit (should be auto-handled) - \"Content is required for paragraph blocks\": Missing 'content' field for text blocks - \"object_not_found\": Invalid parent_block_id or no integration access For bulk operations, use 'add_multiple_page_content' instead." }, { "slug": "NOTION_APPEND_BLOCK_CHILDREN", "name": "Append raw Notion blocks (advanced API)", "description": "DEPRECATED: Use NOTION_APPEND_TEXT_BLOCKS, NOTION_APPEND_TASK_BLOCKS, NOTION_APPEND_CODE_BLOCKS, NOTION_APPEND_MEDIA_BLOCKS, NOTION_APPEND_LAYOUT_BLOCKS, or NOTION_APPEND_TABLE_BLOCKS instead. Appends raw Notion API blocks to parent. Text limited to 2000 chars per text.content field. Each block MUST have 'object':'block' and 'type'. Use rich_text arrays for text blocks." }, { "slug": "NOTION_APPEND_CODE_BLOCKS", "name": "Append code blocks (code, quote, equation)", "description": "Append code and technical blocks (code, quote, equation) to a Notion page. Use for: - Code snippets and programming examples (code) - Citations and highlighted quotes (quote) - Mathematical formulas and equations (equation) Supported block types: - code: Code with syntax highlighting (70+ languages including Python, JavaScript, Go, Rust, etc.) - quote: Block quotes for citations - equation: LaTeX/KaTeX mathematical expressions ⚠️ Code content is limited to 2000 characters per text.content field. For longer code, split into multiple code blocks. For other block types, use specialized actions: - append_text_blocks: paragraphs, headings, lists - append_task_blocks: to-do, toggle, callout - append_media_blocks: image, video, audio, files - append_layout_blocks: divider, columns, TOC - append_table_blocks: tables" }, { "slug": "NOTION_APPEND_LAYOUT_BLOCKS", "name": "Append layout blocks (divider, TOC, columns)", "description": "Append layout blocks (divider, TOC, breadcrumb, columns) to a Notion page. Supported types: - divider: Horizontal line separator - table_of_contents: Auto-generated from headings - breadcrumb: Page hierarchy navigation - column_list: Multi-column layout (requires 2+ columns, each with 1+ child block) For multi-column layouts, create column_list with column children in one request. Each column must contain at least 1 child block. For other blocks, use: append_text_blocks, append_task_blocks, append_code_blocks, append_media_blocks, or append_table_blocks." }, { "slug": "NOTION_APPEND_MEDIA_BLOCKS", "name": "Append media blocks (image, video, audio, files)", "description": "Append media blocks (image, video, audio, file, pdf, embed, bookmark) to a Notion page. Use for: - Images and screenshots (image) - YouTube/Vimeo videos or direct video URLs (video) - Audio files and podcasts (audio) - File downloads (file) - PDF documents (pdf) - Embedded content from Twitter, Figma, CodePen, etc. (embed) - Link previews with metadata (bookmark) All media blocks require external URLs. For other block types, use specialized actions: - append_text_blocks: paragraphs, headings, lists - append_task_blocks: to-do, toggle, callout - append_code_blocks: code, quote, equation - append_layout_blocks: divider, columns, TOC - append_table_blocks: tables" }, { "slug": "NOTION_APPEND_TABLE_BLOCKS", "name": "Append table blocks", "description": "Append table blocks to a Notion page. Use for structured tabular data like spreadsheets, comparison charts, and status trackers. Example: { \"table_width\": 3, \"has_column_header\": true, \"rows\": [ {\"cells\": [[{\"type\": \"text\", \"text\": {\"content\": \"Col1\"}}], [...], [...]]} ] } ⚠️ Cell content limited to 2000 chars per text.content field." }, { "slug": "NOTION_APPEND_TASK_BLOCKS", "name": "Append task blocks (to-do, toggle, callout)", "description": "Append task blocks (to-do, toggle, callout) to a Notion page or block. Supported block types: - to_do: Checkbox items (checkable/uncheckable) - toggle: Collapsible sections - callout: Highlighted boxes with emoji icons All three types support nested children (up to 2 levels of nesting). block_id must be a page or block that supports children (e.g., page, toggle, paragraph, list items, quote, callout, to_do). Blocks like divider, breadcrumb, equation do NOT support children. Limits: 2000 chars per text.content, max 100 blocks per request. For other blocks: append_text_blocks, append_code_blocks, append_media_blocks, append_layout_blocks, append_table_blocks." }, { "slug": "NOTION_APPEND_TEXT_BLOCKS", "name": "Append text blocks (paragraphs, headings, lists)", "description": "Append text blocks (paragraphs, headings, lists) to a Notion page. This is the most commonly used action for adding content to Notion. Use for: documentation, notes, articles, outlines, lists. Supported block types: - paragraph: Regular text - heading_1, heading_2, heading_3: Section headers - bulleted_list_item: Bullet points - numbered_list_item: Numbered lists ⚠️ Text content is limited to 2000 characters per text.content field. For other block types, use specialized actions: - append_task_blocks: to-do, toggle, callout - append_code_blocks: code, quote, equation - append_media_blocks: image, video, audio, files - append_layout_blocks: divider, columns, TOC - append_table_blocks: tables" }, { "slug": "NOTION_ARCHIVE_NOTION_PAGE", "name": "Archive Notion Page", "description": "Archives (moves to trash) or unarchives (restores from trash) a specified Notion page. Limitation: Workspace-level pages (top-level pages with no parent page or database) cannot be archived via the API and must be archived manually in the Notion UI." }, { "slug": "NOTION_CREATE_COMMENT", "name": "Create comment", "description": "Adds a comment to a Notion page (via `parent_page_id`) OR to an existing discussion thread (via `discussion_id`); cannot create new discussion threads on specific blocks (inline comments)." }, { "slug": "NOTION_CREATE_DATABASE", "name": "Create Notion Database", "description": "Creates a new Notion database as a subpage under a specified parent page with a defined properties schema. IMPORTANT NOTES: - The parent page MUST be shared with your integration, otherwise you'll get a 404 error - If you encounter conflict errors (409), retry the request as Notion may experience temporary save conflicts - For relation properties, you MUST provide the database_id of the related database - Parent ID must be a valid UUID format (with or without hyphens), not a template variable Use this action exclusively for creating new databases." }, { "slug": "NOTION_CREATE_FILE_UPLOAD", "name": "Create Notion file upload", "description": "Tool to create a Notion FileUpload object and retrieve an upload URL. Use when you need to automate attaching local or external files directly into Notion without external hosting." }, { "slug": "NOTION_CREATE_NOTION_PAGE", "name": "Create Notion page", "description": "Creates a new page in a Notion workspace under a specified parent page or database. Supports creating pages with markdown content using the native markdown parameter, or as an empty page that can be populated later. PREREQUISITES: - Parent page/database must exist and be accessible in your Notion workspace - Use search_pages or list_databases first to obtain valid parent IDs LIMITATIONS: - Cannot create root-level pages (must have a parent) - May encounter conflicts if creating pages too quickly - Title-based parent search is less reliable than using UUIDs - The markdown parameter is mutually exclusive with children/content parameters" }, { "slug": "NOTION_DELETE_BLOCK", "name": "Delete a block", "description": "Archives a Notion block, page, or database using its ID, which sets its 'archived' property to true (like moving to \"Trash\" in the UI) and allows it to be restored later. Note: This operation will fail if the block has an archived parent or ancestor in the hierarchy. You must unarchive the ancestor before archiving/deleting its descendants. IMPORTANT LIMITATION: Workspace-level pages (top-level pages that are direct children of the workspace, not contained within other pages or databases) cannot be archived via the Notion API. This is a documented Notion API restriction. Only pages that are children of other pages or databases can be deleted through this action." }, { "slug": "NOTION_DUPLICATE_PAGE", "name": "Duplicate page", "description": "Duplicates a Notion page, including all its content, properties, and nested blocks, under a specified parent page or workspace." }, { "slug": "NOTION_FETCH_ALL_BLOCK_CONTENTS", "name": "Fetch All Notion Block Contents", "description": "Tool to fetch all child blocks for a given Notion block. Use when you need a complete listing of a block's children beyond a single page; supports optional recursive expansion of nested blocks." }, { "slug": "NOTION_FETCH_BLOCK_CONTENTS", "name": "Fetch Notion Block Children", "description": "Retrieves a paginated list of direct, first-level child block objects along with contents for a given parent Notion block or page ID; use block IDs from the response for subsequent calls to access deeply nested content." }, { "slug": "NOTION_FETCH_BLOCK_METADATA", "name": "Fetch Notion block metadata", "description": "Fetches metadata for a Notion block (including pages, which are special blocks) using its UUID. Returns block type, properties, and basic info but not child content. Prerequisites: 1) Block/page must be shared with your integration, 2) Use valid block_id from API responses (not URLs). For child blocks, use fetch_block_contents instead. Common 404 errors mean the block isn't accessible to your integration." }, { "slug": "NOTION_FETCH_COMMENTS", "name": "Fetch comments", "description": "Fetches unresolved comments for a specified Notion block or page ID. The block/page must be shared with your Notion integration and the integration must have 'Read comments' capability enabled, otherwise a 404 error will be returned." }, { "slug": "NOTION_FETCH_DATA", "name": "Fetch Notion Data", "description": "Fetches Notion items (pages and/or databases) from the Notion workspace, use this to get minimal data about the items in the workspace with a query or list all items in the workspace with minimal data" }, { "slug": "NOTION_FETCH_DATABASE", "name": "Fetch Database", "description": "Fetches a Notion database's structural metadata (properties, title, etc.) via its `database_id`, not the data entries; `database_id` must reference an existing database." }, { "slug": "NOTION_FETCH_ROW", "name": "Fetch database row", "description": "Retrieves a Notion database row's properties and metadata; use fetch_block_contents for page content blocks." }, { "slug": "NOTION_GET_ABOUT_ME", "name": "Get About Me (Deprecated)", "description": "DEPRECATED: Use GetAboutUser instead. Retrieves the User object for the bot associated with the current Notion integration token, typically to obtain the bot's user ID for other API operations." }, { "slug": "NOTION_GET_ABOUT_USER", "name": "Get about user", "description": "Retrieves detailed information about a specific Notion user, such as their name, avatar, and email, based on their unique user ID." }, { "slug": "NOTION_GET_PAGE_MARKDOWN", "name": "Get page markdown", "description": "Retrieve a Notion page's full content rendered as Notion-flavored Markdown in a single API call. Use when you need the readable content of a page without recursive block-children fetching." }, { "slug": "NOTION_GET_PAGE_PROPERTY_ACTION", "name": "Get page property", "description": "Call this to get a specific property from a Notion page when you have a valid `page_id` and `property_id`; handles pagination for properties returning multiple items." }, { "slug": "NOTION_INSERT_ROW_DATABASE", "name": "Insert row database", "description": "Creates a new page (row) in a specified Notion database. Prerequisites: - Database must be shared with your integration - Property names AND types must match schema exactly (case-sensitive) - Use NOTION_FETCH_DATA with fetch_type='databases' first to get exact property names and types - Each database has ONE 'title' property; other text fields are 'rich_text' - Database must NOT have multiple data sources (synced databases are not supported) Common Errors: - 404: Database not shared with integration - 400 \"not a property\": Wrong property name - 400 \"expected to be X\": Wrong property type - 400 \"multiple_data_sources\": Database uses multiple data sources (not supported) Note: Rich text content in child_blocks is automatically truncated to 2000 characters per Notion API limits." }, { "slug": "NOTION_INSERT_ROW_FROM_NL", "name": "Insert Row From Natural Language", "description": "Creates a new row (page) in a Notion database from a natural language description. Fetches the database schema at runtime, uses an LLM to generate the correctly-formatted property payload, and creates the page." }, { "slug": "NOTION_LIST_DATA_SOURCE_TEMPLATES", "name": "List data source templates", "description": "Tool to list all templates for a Notion data source. Use when needing to discover template IDs/names for bulk page creation. Use after confirming the data_source_id." }, { "slug": "NOTION_LIST_FILE_UPLOADS", "name": "List Notion file uploads", "description": "Tool to retrieve file uploads for the current bot integration, sorted by most recent first. Use when you need to list all file uploads or paginate through file upload history." }, { "slug": "NOTION_LIST_USERS", "name": "List users", "description": "Retrieves a paginated list of users (excluding guests) from the Notion workspace; the number of users returned per page may be less than the requested `page_size`." }, { "slug": "NOTION_MOVE_PAGE", "name": "Move Page", "description": "Tool to move a Notion page to a new parent (page or database). Use when you need to reorganize page hierarchy. Important: To move to a database, use data_source_id (NOT database_id). Get the data source ID from the database object using NOTION_FETCH_DATABASE." }, { "slug": "NOTION_QUERY_DATABASE", "name": "Query database", "description": "Queries a Notion database to retrieve pages (rows). In Notion, databases are collections where each row is a page and columns are properties. Returns paginated results with metadata. Important requirements: - The database must be shared with your integration - Property names in sorts must match existing database properties exactly (case-sensitive) - For timestamp sorting, use 'created_time' or 'last_edited_time' (case-insensitive) - The start_cursor must be a valid UUID from a previous response's next_cursor field - Database IDs must be valid 32-character UUIDs (with or without hyphens) Use this action to: - Retrieve all or filtered database entries - Sort results by database properties or page timestamps - Paginate through large result sets - Get database content for processing or display" }, { "slug": "NOTION_QUERY_DATABASE_WITH_FILTER", "name": "Query database with filter", "description": "Tool to query a Notion database with server-side filtering, sorting, and pagination. Use when you need to retrieve a subset of rows by property, date, status, or other conditions." }, { "slug": "NOTION_QUERY_DATA_SOURCE", "name": "Query data source", "description": "Tool to query a Notion data source. Use when you need to retrieve pages or child data sources with filters, sorts, and pagination. Make paginated requests using cursors and optional property filters for efficient data retrieval." }, { "slug": "NOTION_REPLACE_PAGE_CONTENT", "name": "Replace page content (with backup)", "description": "Safely replaces a page's child blocks by optionally backing up current content, deleting existing children, then appending new children in batches. Use when you need to rebuild a page without leaving partial states. Notion does not provide atomic transactions; this tool orchestrates a multi-step workflow with optional backup to reduce risk." }, { "slug": "NOTION_RETRIEVE_COMMENT", "name": "Retrieve Comment", "description": "Tool to retrieve a specific comment by its ID. Use when you have a comment ID and need to fetch its details." }, { "slug": "NOTION_RETRIEVE_DATABASE_PROPERTY", "name": "Retrieve Database Property", "description": "Tool to retrieve a specific property object of a Notion database. Use when you need to get details about a single database column/property." }, { "slug": "NOTION_RETRIEVE_FILE_UPLOAD", "name": "Retrieve Notion file upload", "description": "Tool to retrieve details of a Notion File Upload object by its identifier. Use when you need to check the status or details of an existing file upload." }, { "slug": "NOTION_RETRIEVE_PAGE", "name": "Retrieve page", "description": "Retrieve a Notion page's properties/metadata (not block content) by page_id. Use when you have a page URL/ID and need to access its properties; for page content use block-children tools." }, { "slug": "NOTION_SEARCH_NOTION_PAGE", "name": "Search Notion pages and databases", "description": "Searches Notion pages and databases by title. Use specific search terms to find items by title (primary approach). KNOWN LIMITATIONS: (1) Search indexing is not immediate - recently shared items may not appear. (2) Search is not exhaustive - results may be incomplete. (3) Database pages return all custom properties with full nested structures, which can create large responses for databases with many properties - use filter_properties to reduce response size. FALLBACK STRATEGY: If a specific title search returns empty results despite knowing items exist, try an empty query to list all accessible items and filter client-side." }, { "slug": "NOTION_SEND_FILE_UPLOAD", "name": "Send file upload", "description": "Tool to transmit file contents to Notion for a file upload object. Use after creating a file upload object to send the actual file data." }, { "slug": "NOTION_UPDATE_BLOCK", "name": "Update block", "description": "Updates existing Notion block's text content. ⚠️ CRITICAL: Content limited to 2000 chars. Cannot change block type or archive blocks. Content exceeding 2000 chars will fail with validation error. For longer content, split across multiple blocks using add_multiple_page_content." }, { "slug": "NOTION_UPDATE_PAGE", "name": "Update Page", "description": "Update page properties, icon, cover, or archive status. IMPORTANT: Property names are workspace-specific and case-sensitive. Use NOTION_FETCH_ROW or NOTION_FETCH_DATABASE first to discover exact property names and valid select/status options. Common errors: - \"X is not a property that exists\": Discover properties with NOTION_FETCH_ROW - \"Invalid status option\": Check valid options with NOTION_FETCH_DATABASE - \"should be defined\": Wrap values: {'Field': {'type': value}} Property formats: title/rich_text use {'text': {'content': 'value'}}, select/status use {'name': 'option'}" }, { "slug": "NOTION_UPDATE_ROW_DATABASE", "name": "Update Database Row (Page)", "description": "Updates a specific row/page within a Notion database by its page UUID (row_id). IMPORTANT CLARIFICATION: This action updates INDIVIDUAL ROWS (pages) in a database, NOT the database structure. - To update a ROW/PAGE: Use THIS action with `row_id` (the page UUID) - To update DATABASE SCHEMA (columns, properties, title): Use NOTION_UPDATE_SCHEMA_DATABASE with `database_id` REQUIRED: `row_id` is MANDATORY. This is the UUID of the specific page/row to update. Do NOT pass `database_id` to this action - that parameter does not exist here. Common issues: (1) Use UUID from page URL, not the full URL (2) Ensure page is shared with integration (3) Match property names exactly as in database (4) Use 'status' type for Status properties, not 'select' (5) Retry on 409 Conflict errors (concurrent updates) Supports updating properties, icon, cover, or archiving the row." }, { "slug": "NOTION_UPDATE_SCHEMA_DATABASE", "name": "Update database schema", "description": "Updates an existing Notion database's schema including title, description, and/or properties (columns). IMPORTANT NOTES: - At least one update (title, description, or properties) must be provided - The database must be shared with your integration - Property names are case-sensitive and must match exactly - When changing a property to 'relation' type, you MUST provide the database_id of the target database - Removing properties will permanently delete that column and its data - Use NOTION_FETCH_DATA first to get the exact property names and database structure Common errors: - 'database_id' missing: Ensure you're passing the database_id parameter (not page_id) - 'data_source_id' undefined: When changing to relation type, database_id is required in PropertySchemaUpdate - Property name mismatch: Names must match exactly including case and special characters" }, { "slug": "NOTION_UPSERT_ROW_DATABASE", "name": "Upsert database rows", "description": "Tool to upsert rows in a Notion database by querying for existing rows and creating or updating them. Use when you need to sync data to Notion without creating duplicates. Each item is matched by a filter, then either created (if no match) or updated (if match found). Supports bulk operations with per-item error handling." } ], "triggers": [ { "slug": "NOTION_COMMENT_CREATED", "name": "Comment Created", "description": "Triggers when a new comment is created in Notion.\n\n Optional `page_id` filter scopes to comments on a specific page. When\n omitted, fires for any new comment in the workspace the integration\n has access to.\n\n Requires the 'Read comments' capability on the Notion integration. If\n a connection was authorized before that capability was enabled, the\n user must re-authorize the connection for comment events to flow." }, { "slug": "NOTION_DATABASE_CREATED", "name": "Database Created", "description": "Triggers when a new Notion database (the container) is created.\n\n A database is the post-2025-09-03 container that holds one or more data\n sources. This trigger fires for the container's creation event\n (`database.created`), distinct from `NOTION_DATASOURCE_CREATED` which\n fires when a new data source is added to an existing database.\n\n Most customers calling Notion's `POST /v1/databases` (the legacy API)\n or creating a database via the Notion UI will see this event. Adding a\n new data source to an existing database fires `data_source.created`\n instead — use `NOTION_DATASOURCE_CREATED` for that.\n\n Notion's payload puts `entity.type: \"block\"` (the container is a\n `child_database` block in the content tree) and `entity.id` is the\n database id." }, { "slug": "NOTION_DATASOURCE_CREATED", "name": "Data Source Created", "description": "Triggers when a new Notion data source is created.\n\n Fires workspace-wide. The payload's `data.parent` carries the data\n source's tree parent (typically the teamspace) for downstream\n filtering.\n\n A single template-based database creation can fire multiple\n `data_source.created` events at once — one per data source the\n template instantiates." }, { "slug": "NOTION_DATASOURCE_SCHEMA_UPDATED", "name": "Data Source Schema Updated", "description": "Triggers when a Notion data source's schema is updated.\n\n Fires on column add / remove / rename. Payload includes\n `data.updated_properties: [{id, name, action}]` so consumers can\n discriminate the kind of change downstream.\n\n Optional `data_source_id` filter scopes to schema changes on a single\n data source. When omitted, fires for any schema change in the\n workspace the integration has access to.\n\n Note: adding a column also fires `page.properties_updated` once per\n existing row in the data source. Customers wanting a single\n structural-change signal should use this trigger." }, { "slug": "NOTION_PAGE_CONTENT_UPDATED", "name": "Page Content Updated", "description": "Triggers when the body content of a Notion page is updated.\n\n Customer optionally scopes with at most one of:\n - data_source_id: any row in this data source\n - page_id: this specific page\n - parent_page_id: any page whose immediate parent is this page\n\n With none set, fires for any page content edit in the workspace the\n integration has access to. Notion aggregates content edits within a\n short window (~60s typical)." }, { "slug": "NOTION_PAGE_CREATED", "name": "Page Created", "description": "Triggers when a new Notion page is created.\n\n Customer optionally scopes with at most one of:\n - data_source_id: new row in this data source\n - parent_page_id: new sub-page under this page (immediate parent only)\n\n With neither set, fires for any new page in the workspace the\n integration has access to. Notion sends ~60s aggregation latency on\n most events." }, { "slug": "NOTION_PAGE_PROPERTIES_UPDATED", "name": "Page Properties Updated", "description": "Triggers when properties of a Notion page are updated.\n\n Customer optionally scopes with at most one of:\n - data_source_id: any row in this data source\n - page_id: this specific page\n - parent_page_id: any page whose immediate parent is this page\n\n With none set, fires for any property change in the workspace the\n integration has access to. Adding a column to a data source fires this\n trigger once per existing row. Customers can branch on\n `data.updated_properties` (array of property IDs) to filter downstream." }, { "slug": "NOTION_VIEW_CREATED", "name": "View Created", "description": "Triggers when a new Notion view is created.\n\n Fires workspace-wide. The payload includes `data.view_type`\n (`table`, `board`, `gallery`, `calendar`, `list`, `timeline`, `gantt`)\n and `data.parent` pointing at the view's tree parent (typically the\n teamspace), so customers can filter downstream." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "notion_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "notion_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Notion integration secret (starts with 'ntn_' or 'secret_'). Create one at notion.so/profile/integrations, then share your pages with the integration.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "googlesheets", "name": "Google Sheets", "logo": "https://logos.composio.dev/api/googlesheets", "description": "Google Sheets is a cloud-based spreadsheet tool enabling real-time collaboration, data analysis, and integration with other Google Workspace apps", "category": "spreadsheets", "authSchemes": [ "OAUTH2" ], "toolCount": 53, "triggerCount": 16, "version": "20260703_00", "tools": [ { "slug": "GOOGLESHEETS_ADD_SHEET", "name": "Add Sheet to Existing Spreadsheet", "description": "Adds a new sheet to a spreadsheet. Supports three sheet types: GRID, OBJECT, and DATA_SOURCE. SHEET TYPES: - GRID (default): Standard spreadsheet with rows/columns. Use properties to set dimensions, tab color, etc. - OBJECT: Sheet containing a chart. Requires objectSheetConfig with chartSpec (basicChart or pieChart). - DATA_SOURCE: Sheet connected to BigQuery. Requires dataSourceConfig with bigQuery spec and bigquery.readonly OAuth scope. OTHER NOTES: - Sheet names must be unique; use forceUnique=true to auto-append suffix (_2, _3) if name exists - For tab colors, use EITHER rgbColor OR themeColor, not both - Avoid 'index' when creating sheets in parallel (causes errors) - OBJECT sheets are created via addChart with position.newSheet=true - DATA_SOURCE sheets require bigquery.readonly OAuth scope Use cases: Add standard grid sheet, create chart on dedicated sheet, connect to BigQuery data source." }, { "slug": "GOOGLESHEETS_AGGREGATE_COLUMN_DATA", "name": "Aggregate Column Data", "description": "Searches for rows where a specific column matches a value and performs mathematical operations on data from another column." }, { "slug": "GOOGLESHEETS_APPEND_DIMENSION", "name": "Append Dimension", "description": "Tool to append new rows or columns to a sheet, increasing its size. Use when you need to add empty rows or columns to an existing sheet." }, { "slug": "GOOGLESHEETS_AUTO_RESIZE_DIMENSIONS", "name": "Auto-Resize Rows or Columns", "description": "Auto-fit column widths or row heights for a dimension range using batchUpdate.autoResizeDimensions. Use when you need to automatically adjust row heights or column widths to fit content after writing data." }, { "slug": "GOOGLESHEETS_BATCH_CLEAR_VALUES_BY_DATA_FILTER", "name": "Batch Clear Values By Data Filter", "description": "Clears one or more ranges of values from a spreadsheet using data filters. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges matching any of the specified data filters will be cleared. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc..) are kept." }, { "slug": "GOOGLESHEETS_BATCH_GET", "name": "Batch get spreadsheet", "description": "Retrieves data from specified cell ranges in a Google Spreadsheet." }, { "slug": "GOOGLESHEETS_BATCH_UPDATE", "name": "Batch update spreadsheet (Deprecated)", "description": "DEPRECATED: Use GOOGLESHEETS_VALUES_UPDATE instead. Write values to ONE range in a Google Sheet, or append as new rows if no start cell is given. IMPORTANT - This tool does NOT accept the Google Sheets API's native batch format: - WRONG: {\"data\": [{\"range\": \"...\", \"values\": [[...]]}], ...} - CORRECT: {\"sheet_name\": \"...\", \"values\": [[...]], \"first_cell_location\": \"...\", ...} To update MULTIPLE ranges, make SEPARATE CALLS to this tool for each range. Features: - Auto-expands grid for large datasets (prevents range errors) - Set first_cell_location to write at a specific position (e.g., \"A1\", \"B5\") - Omit first_cell_location to append values as new rows at the end Requirements: Target sheet must exist and spreadsheet must contain at least one worksheet." }, { "slug": "GOOGLESHEETS_BATCH_UPDATE_VALUES_BY_DATA_FILTER", "name": "Batch Update Values by Data Filter", "description": "Tool to update values in ranges matching data filters. Use when you need to update specific data in a Google Sheet based on criteria rather than fixed cell ranges." }, { "slug": "GOOGLESHEETS_CLEAR_BASIC_FILTER", "name": "Clear Basic Filter", "description": "Tool to clear the basic filter from a sheet. Use when you need to remove an existing basic filter from a specific sheet within a Google Spreadsheet." }, { "slug": "GOOGLESHEETS_CLEAR_VALUES", "name": "Clear spreadsheet values", "description": "Clears cell content (preserving formatting and notes) from a specified A1 notation range in a Google Spreadsheet; the range must correspond to an existing sheet and cells." }, { "slug": "GOOGLESHEETS_CREATE_CHART", "name": "Create Chart in Google Sheets", "description": "Create a chart in a Google Sheets spreadsheet using the specified data range and chart type. Conditional requirements: - Provide either a simple chart via chart_type + data_range (basicChart), OR supply a full chart_spec supporting all chart types. Exactly one approach should be used. - When using chart_spec, set exactly one of the union fields (basicChart | pieChart | bubbleChart | candlestickChart | histogramChart | waterfallChart | treemapChart | orgChart | scorecardChart)." }, { "slug": "GOOGLESHEETS_CREATE_GOOGLE_SHEET1", "name": "Create a Google Sheet", "description": "Creates a new Google Spreadsheet in Google Drive. If a title is provided, the spreadsheet will be created with that name. If no title is provided, Google will create a spreadsheet with a default name like 'Untitled spreadsheet'. Optionally create the spreadsheet in a specific folder by providing either: - folder_id: The Google Drive folder ID (preferred, unambiguous) - folder_name: The folder name (searches for exact match; if multiple folders match, returns choices) If neither folder_id nor folder_name is provided, the spreadsheet is created in the root Drive folder." }, { "slug": "GOOGLESHEETS_CREATE_SPREADSHEET_COLUMN", "name": "Create spreadsheet column", "description": "Creates a new column in a Google Spreadsheet. Specify the target sheet using sheet_id (numeric) or sheet_name (text). If neither is provided, defaults to the first sheet (sheet_id=0)." }, { "slug": "GOOGLESHEETS_CREATE_SPREADSHEET_ROW", "name": "Create spreadsheet row", "description": "Inserts a new, empty row into a specified sheet of a Google Spreadsheet at a given index, optionally inheriting formatting from the row above." }, { "slug": "GOOGLESHEETS_DELETE_CHART", "name": "Delete Chart from Google Sheets", "description": "Delete an existing chart from a Google Sheets spreadsheet. Use this action when you need to remove a chart that is no longer needed or needs to be replaced. This action is irreversible — once a chart is deleted, it cannot be recovered. The chart data source (the cells containing the data) remains unchanged; only the chart visualization is removed." }, { "slug": "GOOGLESHEETS_DELETE_DIMENSION", "name": "Delete Dimension (Rows/Columns)", "description": "Tool to delete specified rows or columns from a sheet in a Google Spreadsheet. Use when you need to remove a range of rows or columns." }, { "slug": "GOOGLESHEETS_DELETE_SHEET", "name": "Delete Sheet", "description": "Tool to delete a sheet (worksheet) from a spreadsheet. Use when you need to remove a specific sheet from a Google Sheet document." }, { "slug": "GOOGLESHEETS_EXECUTE_SQL", "name": "Execute SQL on Spreadsheet", "description": "DEPRECATED: Use direct Google Sheets actions instead: - GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for reads - GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_UPDATE_VALUES_BATCH / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND for writes Execute SQL queries against Google Sheets tables. Supports SELECT, INSERT, UPDATE, DELETE operations and WITH clauses (CTEs) with familiar SQL syntax. Tables are automatically detected and mapped from the spreadsheet structure." }, { "slug": "GOOGLESHEETS_FIND_REPLACE", "name": "Find and Replace in Spreadsheet", "description": "Tool to find and replace text in a Google Spreadsheet. Use when you need to fix formula errors, update values, or perform bulk text replacements across cells. Common use cases: - Fix #ERROR! cells by replacing with empty string or correct formula - Update old values with new ones across multiple cells - Fix formula references or patterns - Clean up data formatting issues" }, { "slug": "GOOGLESHEETS_FIND_WORKSHEET_BY_TITLE", "name": "Find worksheet by title (Deprecated)", "description": "DEPRECATED: Use GetSpreadsheetInfo instead. Finds a worksheet by its exact, case-sensitive title within a Google Spreadsheet; returns a boolean indicating if found and the matched worksheet's metadata when found, or None when not found." }, { "slug": "GOOGLESHEETS_FORMAT_CELL", "name": "Format cell", "description": "Applies text and background cell formatting to a specified range in a Google Sheets worksheet." }, { "slug": "GOOGLESHEETS_GET_BATCH_VALUES", "name": "Batch Get Spreadsheet Values (Deprecated)", "description": "DEPRECATED: Use GOOGLESHEETS_BATCH_GET instead. Tool to return one or more ranges of values from a spreadsheet. Use when you need to retrieve data from multiple ranges in a single request." }, { "slug": "GOOGLESHEETS_GET_CONDITIONAL_FORMAT_RULES", "name": "Get conditional format rules", "description": "List conditional formatting rules for each sheet (or a selected sheet) in a normalized, easy-to-edit form. Use when you need to view, audit, or prepare to modify conditional format rules." }, { "slug": "GOOGLESHEETS_GET_DATA_VALIDATION_RULES", "name": "Get Data Validation Rules", "description": "Tool to extract data validation rules from a Google Sheets spreadsheet. Use when you need to understand dropdown lists, allowed values, custom formulas, or other validation constraints for cells." }, { "slug": "GOOGLESHEETS_GET_SHEET_NAMES", "name": "Get sheet names", "description": "Lists all worksheet names from a specified Google Spreadsheet (which must exist), useful for discovering sheets before further operations." }, { "slug": "GOOGLESHEETS_GET_SPREADSHEET_BY_DATA_FILTER", "name": "Get Spreadsheet by Data Filter", "description": "Returns the spreadsheet at the given ID, filtered by the specified data filters. Use this tool when you need to retrieve specific subsets of data from a Google Sheet based on criteria like A1 notation, developer metadata, or grid ranges. Important: This action is designed for filtered data retrieval. While it accepts empty filters and returns full metadata in that case, GOOGLESHEETS_GET_SPREADSHEET_INFO is the recommended action for unfiltered spreadsheet retrieval." }, { "slug": "GOOGLESHEETS_GET_SPREADSHEET_INFO", "name": "Get spreadsheet info", "description": "Retrieves metadata for a Google Spreadsheet using its ID. By default, returns essential information (ID, title, sheet properties) to avoid payload size issues. Use the fields parameter for comprehensive metadata or specific fields." }, { "slug": "GOOGLESHEETS_GET_TABLE_SCHEMA", "name": "Get Table Schema", "description": "DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES and GOOGLESHEETS_GET_SPREADSHEET_INFO for sheet structure metadata, and GOOGLESHEETS_VALUES_GET for direct range inspection. This action is used to get the schema of a table in a Google Spreadsheet, call this action to get the schema of a table in a spreadsheet BEFORE YOU QUERY THE TABLE. Analyze table structure and infer column names, types, and constraints. Uses statistical analysis of sample data to determine the most likely data type for each column. Call this action after calling the LIST_TABLES action to get the schema of a table in a spreadsheet." }, { "slug": "GOOGLESHEETS_INSERT_DIMENSION", "name": "Insert Dimension in Google Sheet", "description": "Tool to insert new rows or columns into a sheet at a specified location. Use when you need to add empty rows or columns within an existing Google Sheet." }, { "slug": "GOOGLESHEETS_LIST_CHARTS", "name": "List Charts in Google Sheets", "description": "Lists all charts in a Google Sheets spreadsheet across all sheets, returning chart_id, sheet metadata, chart type, title, and position. Use this action when you need to discover what charts exist in a spreadsheet, retrieve chart IDs for update or delete operations, or inspect chart configurations. The default field mask in GOOGLESHEETS_GET_SPREADSHEET_INFO omits chart data, making this dedicated action necessary for chart discovery." }, { "slug": "GOOGLESHEETS_LIST_TABLES", "name": "List Tables in Spreadsheet", "description": "DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES for tab discovery and GOOGLESHEETS_GET_SPREADSHEET_INFO for full sheet metadata. This action is used to list all tables in a Google Spreadsheet, call this action to get the list of tables in a spreadsheet. Discover all tables in a Google Spreadsheet by analyzing sheet structure and detecting data patterns. Uses heuristic analysis to find header rows, data boundaries, and table structures." }, { "slug": "GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW", "name": "Look up spreadsheet row", "description": "Finds the first row in a Google Spreadsheet where a cell's entire content exactly matches the query string, searching within a specified A1 notation range or the first sheet by default." }, { "slug": "GOOGLESHEETS_MOVE_CHART", "name": "Move or Resize Chart in Google Sheets", "description": "Move or resize an existing chart on a Google Sheets spreadsheet. Use this action when you need to reposition a chart to a different location on the same or different sheet, move it to a brand-new sheet, or change its size. This action wraps the updateEmbeddedObjectPosition batchUpdate request type and supports three positioning modes: moving to a new sheet, moving to an existing sheet, or repositioning via pixel-perfect overlay coordinates." }, { "slug": "GOOGLESHEETS_MUTATE_CONDITIONAL_FORMAT_RULES", "name": "Mutate conditional format rules", "description": "Add, update, delete, or reorder conditional format rules on a Google Sheet. Use when you need to create, modify, or remove conditional formatting without manually building batchUpdate requests. Supports four operations: ADD (create new rule), UPDATE (replace existing rule), DELETE (remove rule), MOVE (reorder rules by changing index)." }, { "slug": "GOOGLESHEETS_QUERY_TABLE", "name": "Query Spreadsheet Table", "description": "DEPRECATED: Use GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for table reads and GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW for row lookup/filter workflows. Execute SQL-like SELECT queries against Google Spreadsheet tables. Table names correspond to sheet/tab names visible at the bottom of the spreadsheet. Use GOOGLESHEETS_LIST_TABLES first to discover available table names if unknown. Supports WHERE conditions, ORDER BY, LIMIT clauses." }, { "slug": "GOOGLESHEETS_SEARCH_DEVELOPER_METADATA", "name": "Search Developer Metadata", "description": "Tool to search for developer metadata in a spreadsheet. Use when you need to find specific metadata entries based on filters." }, { "slug": "GOOGLESHEETS_SEARCH_SPREADSHEETS", "name": "Search Spreadsheets", "description": "Search for Google Spreadsheets using various filters including name, content, date ranges, and more." }, { "slug": "GOOGLESHEETS_SET_BASIC_FILTER", "name": "Set Basic Filter", "description": "Tool to set a basic filter on a sheet in a Google Spreadsheet. Use when you need to filter or sort data within a specific range on a sheet." }, { "slug": "GOOGLESHEETS_SET_DATA_VALIDATION_RULE", "name": "Set Data Validation Rule", "description": "Tool to set or clear data validation rules (including dropdowns) on a range in Google Sheets. Use when you need to apply dropdown lists, range-based dropdowns, or custom formula validation to cells." }, { "slug": "GOOGLESHEETS_SHEET_FROM_JSON", "name": "Create sheet from JSON", "description": "DEPRECATED: Use GOOGLESHEETS_CREATE_GOOGLE_SHEET1 + GOOGLESHEETS_UPDATE_VALUES_BATCH (or GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND) instead. Creates a new Google Spreadsheet and populates its first worksheet from `sheet_json`. When data is provided, the first item's keys establish the headers. An empty list creates an empty worksheet." }, { "slug": "GOOGLESHEETS_SORT_RANGE", "name": "Sort Range", "description": "Sorts data within a specified range in a Google Sheet based on one or more sort criteria. Use this action when you need to reorder rows in a range by column values, with support for multi-level (cascading) sorts." }, { "slug": "GOOGLESHEETS_SPREADSHEETS_SHEETS_COPY_TO", "name": "Copy Sheet to Another Spreadsheet", "description": "Tool to copy a single sheet from a spreadsheet to another spreadsheet. Use when you need to duplicate a sheet into a different spreadsheet." }, { "slug": "GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND", "name": "Append Values to Spreadsheet", "description": "Tool to append values to a spreadsheet. Use when you need to add new data to the end of an existing table in a Google Sheet." }, { "slug": "GOOGLESHEETS_SPREADSHEETS_VALUES_BATCH_CLEAR", "name": "Batch Clear Spreadsheet Values", "description": "Tool to clear one or more ranges of values from a spreadsheet. Use when you need to remove data from specific cells or ranges while keeping formatting and other properties intact." }, { "slug": "GOOGLESHEETS_SPREADSHEETS_VALUES_BATCH_GET_BY_DATA_FILTER", "name": "Batch Get Spreadsheet Values by Data Filter", "description": "Tool to return one or more ranges of values from a spreadsheet that match the specified data filters. Use when you need to retrieve specific data sets based on filtering criteria rather than entire sheets or fixed ranges." }, { "slug": "GOOGLESHEETS_UPDATE_CHART", "name": "Update Chart in Google Sheets", "description": "Update the specification of an existing chart in a Google Sheets spreadsheet. Use this action when you need to modify an existing chart's properties such as its title, chart type, data ranges, colors, axes, or other visual settings. This action updates the chart's specification but does not change its position or size on the sheet." }, { "slug": "GOOGLESHEETS_UPDATE_DIMENSION_PROPERTIES", "name": "Update Dimension Properties (Hide/Unhide & Resize)", "description": "Tool to hide/unhide rows or columns and set row heights or column widths. Use when you need to change visibility or pixel sizing of dimensions in a Google Sheet." }, { "slug": "GOOGLESHEETS_UPDATE_SHEET_PROPERTIES", "name": "Update Sheet Properties", "description": "Tool to update properties of a sheet (worksheet) within a Google Spreadsheet, such as its title, index, visibility, tab color, or grid properties. Use this when you need to modify the metadata or appearance of a specific sheet." }, { "slug": "GOOGLESHEETS_UPDATE_SPREADSHEET_PROPERTIES", "name": "Update Spreadsheet Properties", "description": "Tool to update SPREADSHEET-LEVEL properties such as the spreadsheet's title, locale, time zone, or auto-recalculation settings. Use when you need to modify the overall configuration of a Google Spreadsheet. NOTE: To update individual SHEET properties (like renaming a specific sheet/tab), use GOOGLESHEETS_UPDATE_SHEET_PROPERTIES instead." }, { "slug": "GOOGLESHEETS_UPDATE_VALUES_BATCH", "name": "Batch update spreadsheet values", "description": "Tool to set values in one or more ranges of a spreadsheet. Use when you need to update multiple ranges in a single operation for better performance." }, { "slug": "GOOGLESHEETS_UPSERT_ROWS", "name": "Upsert Rows (Smart Update/Insert)", "description": "Upsert rows - update existing rows by key, append new ones. Automatically handles column mapping and partial updates. Use for: CRM syncs (match Lead ID), transaction imports (match Transaction ID), inventory updates (match SKU), calendar syncs (match Event ID). Features: - Auto-adds missing columns to sheet - Partial column updates (only update Phone + Status, preserve other columns) - Column order doesn't matter (auto-maps by header name) - Prevents duplicates by matching key column Example inputs: - Contact update: keyColumn='Email', headers=['Email','Phone','Status'], data=[['john@ex.com','555-0101','Active']] - Inventory sync: keyColumn='SKU', headers=['SKU','Stock','Price'], data=[['WIDGET-001',50,9.99],['GADGET-002',30,19.99]] - CRM lead update: keyColumn='Lead ID', headers=['Lead ID','Score','Status'], data=[['L-12345',85,'Hot']] - Partial update: keyColumn='Email', headers=['Email','Phone'] (only updates Phone, preserves Name/Address/etc)" }, { "slug": "GOOGLESHEETS_VALUES_GET", "name": "Get spreadsheet values", "description": "Returns a range of values from a spreadsheet. Use when you need to read data from specific cells or ranges in a Google Sheet." }, { "slug": "GOOGLESHEETS_VALUES_UPDATE", "name": "Update spreadsheet values", "description": "Tool to set values in a range of a Google Spreadsheet. Use when you need to update or overwrite existing cell values in a specific range." } ], "triggers": [ { "slug": "GOOGLESHEETS_AGGREGATE_METRIC_CHANGED_TRIGGER", "name": "Aggregate Metric Changed", "description": "Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet.\n This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value)\n and fires when the calculated result changes." }, { "slug": "GOOGLESHEETS_CELL_RANGE_VALUES_CHANGED_TRIGGER", "name": "Cell Range Values Changed", "description": "Triggers when values in a specified A1 range change in Google Sheets.\n This trigger monitors a specific cell or range of cells and fires when any values change." }, { "slug": "GOOGLESHEETS_CONDITIONAL_FORMAT_RULE_CHANGED_TRIGGER", "name": "Conditional Format Rule Changed", "description": "Triggers when conditional formatting rules change in a Google Spreadsheet.\n Detects when rules are added, updated, or removed.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESHEETS_DATA_VALIDATION_RULE_CHANGED_TRIGGER", "name": "Data Validation Rule Changed", "description": "Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESHEETS_DEVELOPER_METADATA_CHANGED_TRIGGER", "name": "Developer Metadata Changed", "description": "Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESHEETS_FILTERED_RANGE_VALUES_CHANGED_TRIGGER", "name": "Filtered Range Values Changed", "description": "Polling trigger that monitors Google Sheets filtered ranges for value changes.\n Uses snapshot-based diffing to detect when values matching a data filter change.\n Emits the matched values when changes are detected." }, { "slug": "GOOGLESHEETS_NEW_ROWS_TRIGGER", "name": "New Rows in Google Sheet", "description": "Simple polling trigger that monitors Google Sheets for new rows.\n Detects when new rows are added and returns the complete row data.\n Perfect for triggering any workflow based on new sheet entries." }, { "slug": "GOOGLESHEETS_NEW_SHEET_ADDED_TRIGGER", "name": "New Sheet Added in Google Spreadsheet", "description": "Polling trigger that detects when a new sheet is added to a Google Spreadsheet." }, { "slug": "GOOGLESHEETS_NEW_SPREADSHEET_CREATED_TRIGGER", "name": "New Spreadsheet Created", "description": "Triggers when a new Google Spreadsheet is created.\n This trigger monitors Google Spreadsheets and fires when new spreadsheets are detected.\n Uses timestamp filtering to efficiently detect newly created spreadsheets." }, { "slug": "GOOGLESHEETS_SPREADSHEET_METADATA_CHANGED_TRIGGER", "name": "Spreadsheet Metadata Changed", "description": "Polling trigger that detects when a Google Spreadsheet's metadata changes.\n Uses snapshot-based diffing to detect any changes in spreadsheet properties,\n sheets, named ranges, developer metadata, data sources, etc." }, { "slug": "GOOGLESHEETS_SPREADSHEET_PROPERTIES_CHANGED_TRIGGER", "name": "Spreadsheet Properties Changed", "description": "Polling trigger that detects when a Google Spreadsheet's top-level properties change.\n Monitors properties such as title, locale, timeZone, and autoRecalc settings." }, { "slug": "GOOGLESHEETS_SPREADSHEET_ROW_CHANGED_TRIGGER", "name": "Spreadsheet Row Changed", "description": "Triggers when a looked-up spreadsheet row changes.\n This trigger monitors a specific row (located by searching for a query value within a user-specified range)\n and fires when the row's values change, when the row appears, or when the row disappears." }, { "slug": "GOOGLESHEETS_SPREADSHEET_SEARCH_MATCH_TRIGGER", "name": "Spreadsheet Search Match", "description": "Triggers when a new spreadsheet appears that matches a saved search.\n This trigger uses snapshot-based diffing to detect when spreadsheets matching\n the search criteria are newly created or become visible to the user." }, { "slug": "GOOGLESHEETS_TABLE_QUERY_RESULT_CHANGED_TRIGGER", "name": "Table Query Result Changed", "description": "Triggers when the result set of a saved table query changes in Google Sheets.\n Detects rows added, removed, or updated in the query output.\n This trigger monitors the result of a SQL query against a Google Sheets table\n and fires when changes are detected." }, { "slug": "GOOGLESHEETS_TABLE_SCHEMA_CHANGED_TRIGGER", "name": "Table Schema Changed", "description": "Polling trigger that detects when a table's schema changes in Google Sheets.\n Monitors columns added/removed/renamed and inferred type/format changes.\n Uses snapshot-based diffing to compare schemas between polls." }, { "slug": "GOOGLESHEETS_WORKSHEET_NAMES_CHANGED_TRIGGER", "name": "Worksheet Names Changed", "description": "Triggers when the set of worksheet/tab names changes in a Google Spreadsheet.\n Detects when sheets are added, deleted, or renamed." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_sheets_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/spreadsheets,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "slack", "name": "Slack", "logo": "https://logos.composio.dev/api/slack", "description": "Slack is a channel-based messaging platform. With Slack, people can work together more effectively, connect all their software tools and services, and find the information they need to do their best work - all within a secure, enterprise-grade environment.", "category": "team chat", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 167, "triggerCount": 9, "version": "20260703_00", "tools": [ { "slug": "SLACK_ADD_CALL_PARTICIPANTS", "name": "Add call participants", "description": "Registers new participants added to a Slack call." }, { "slug": "SLACK_ADD_EMOJI", "name": "Add emoji", "description": "Adds a custom emoji to a Slack workspace given a unique name and an image URL; subject to workspace emoji limits." }, { "slug": "SLACK_ADD_EMOJI_ALIAS", "name": "Add an emoji alias", "description": "Adds an alias for an existing custom emoji in a Slack Enterprise Grid organization." }, { "slug": "SLACK_ADD_ENTERPRISE_USER_TO_WORKSPACE", "name": "Add Enterprise user to workspace", "description": "Adds an Enterprise user to a workspace. Use when you need to assign an existing Enterprise Grid user to a specific workspace with optional guest restrictions." }, { "slug": "SLACK_ADD_REACTION_TO_AN_ITEM", "name": "Add reaction to message", "description": "Adds a specified emoji reaction to an existing message in a Slack channel, identified by its timestamp; does not remove or retrieve reactions." }, { "slug": "SLACK_ADD_REMOTE_FILE", "name": "Add a remote file", "description": "Adds a reference to an external file (e.g., Google Drive, Dropbox) to Slack for discovery and sharing, requiring a unique `external_id` and an `external_url` accessible by Slack." }, { "slug": "SLACK_ADD_STAR", "name": "Add a star to an item", "description": "Stars a channel, file, file comment, or a specific message in Slack." }, { "slug": "SLACK_ADMIN_CONVERSATIONS_SEARCH", "name": "Search for channels in Enterprise organization", "description": "Tool to search for public or private channels in an Enterprise organization. Use when you need to find channels by name, type, or other criteria within an Enterprise Grid workspace." }, { "slug": "SLACK_API_TEST", "name": "Test Slack API connection", "description": "Tool to check API calling code by testing connectivity and authentication to the Slack API. Use when you need to verify that API credentials are valid and the connection is working properly." }, { "slug": "SLACK_ARCHIVE_CONVERSATION", "name": "Archive a Slack conversation", "description": "Archives a Slack conversation by its ID, rendering it read-only and hidden while retaining history, ideal for cleaning up inactive channels; be aware that some channels (like #general or certain DMs) cannot be archived and this may impact connected integrations." }, { "slug": "SLACK_ASSISTANT_SEARCH_CONTEXT", "name": "Real-time search", "description": "Search Slack messages, files, channels, and users via Real-time Search API. For queries referencing entities by name (users/channels/files), first resolve with content_types (users/channels/files) to get exact ID. If multiple matches, ask user to clarify before proceeding (e.g. ask for user email)." }, { "slug": "SLACK_ASSISTANT_SEARCH_INFO", "name": "Check search capabilities", "description": "Check if semantic (AI-powered) search is available on the Slack workspace. Returns whether natural language queries will trigger semantic search in assistant.search.context calls." }, { "slug": "SLACK_CHAT_POST_MESSAGE", "name": "Send message", "description": "(DEPRECATED: use `SLACK_SEND_MESSAGE`) Posts a message to a Slack channel, DM, or private group; requires at least one content field (`markdown_text`, `text`, `blocks`, or `attachments`) — omitting all causes a `no_text` error. Fails with `not_in_channel`, `channel_not_found`, or `channel_is_archived` if the bot lacks access. Body limit ~4000 characters. Rate-limited at ~1 req/sec (HTTP 429, honor `Retry-After`). Not idempotent — duplicate calls post duplicate messages." }, { "slug": "SLACK_CLOSE_DM", "name": "Close conversation channel", "description": "Closes a Slack direct message (DM) or multi-person direct message (MPDM) channel, removing it from the user's sidebar without deleting history; this action affects only the calling user's view." }, { "slug": "SLACK_CONVERT_CHANNEL_TO_PRIVATE", "name": "Convert public channel to private", "description": "Convert a public Slack channel to private using the Admin API. This is an Enterprise Grid only feature and requires an org-installed user token with admin.conversations:write scope." }, { "slug": "SLACK_CREATE_A_REMINDER", "name": "Create a reminder", "description": "Creates a Slack reminder with specified text and time; time accepts Unix timestamps, seconds from now, or natural language (e.g., 'in 15 minutes', 'every Thursday at 2pm')." }, { "slug": "SLACK_CREATE_CANVAS", "name": "Create Slack Canvas", "description": "Creates a new Slack Canvas with the specified title and optional content." }, { "slug": "SLACK_CREATE_CHANNEL", "name": "Create channel", "description": "Initiates a public or private channel-based conversation in a Slack workspace. Immediately creates the channel; invoke only after explicit user confirmation." }, { "slug": "SLACK_CREATE_CHANNEL_BASED_CONVERSATION", "name": "Create a channel-based conversation", "description": "Creates a new public or private Slack channel with a unique name; the channel can be org-wide, or team-specific if `team_id` is given (required if `org_wide` is false or not provided)." }, { "slug": "SLACK_CREATE_ENTERPRISE_TEAM", "name": "Create Enterprise team", "description": "Tool to create an Enterprise team in Slack. Use when you need to create a new team (workspace) within an Enterprise Grid organization. Requires admin.teams:write scope." }, { "slug": "SLACK_CREATE_SLACK_LIST", "name": "Create Slack List", "description": "Creates a new Slack List via `slackLists.create`. Provide a `name` and, optionally, a `description_blocks` description and a `schema` of typed columns. You can instead copy an existing List's structure with `copy_from_list_id` (and its rows via `include_copied_list_records`), or enable task-tracking columns with `todo_mode`. Returns the new List's `list_id`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_CREATE_SLACK_LIST_ITEM", "name": "Create Slack List item", "description": "Creates a new item (row) in a Slack List via `slackLists.items.create`. Set initial cell values with `initial_fields`; text columns require Block Kit `rich_text` (a plain string is wrapped automatically). Optionally duplicate an existing row with `duplicated_item_id` or create a subtask with `parent_item_id`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_CREATE_USER_GROUP", "name": "Create a Slack user group", "description": "Creates a new User Group (often referred to as a subteam) in a Slack workspace." }, { "slug": "SLACK_CUSTOMIZE_URL_UNFURL", "name": "Customize URL unfurl", "description": "Customizes URL previews (unfurling) in a specific Slack message using a URL-encoded JSON in `unfurls` to define custom content or remove existing previews." }, { "slug": "SLACK_DELETE_CANVAS", "name": "Delete Slack Canvas", "description": "Deletes a Slack Canvas permanently and irreversibly. Always confirm with the user before calling this tool." }, { "slug": "SLACK_DELETE_CHANNEL", "name": "Delete a public or private channel", "description": "Permanently and irreversibly deletes a specified public or private channel, including all its messages and files, within a Slack Enterprise Grid organization." }, { "slug": "SLACK_DELETE_FILE", "name": "Delete a file by ID", "description": "Permanently deletes an existing file from a Slack workspace using its unique file ID; this action is irreversible and also removes any associated comments or shares." }, { "slug": "SLACK_DELETE_FILE_COMMENT", "name": "Delete file comment", "description": "Deletes a specific comment from a file in Slack; this action is irreversible." }, { "slug": "SLACK_DELETE_MULTIPLE_SLACK_LIST_ITEMS", "name": "Delete multiple Slack List items", "description": "Deletes several items (rows) from a Slack List in one call via `slackLists.items.deleteMultiple`. This operation is ALL-OR-NOTHING: Slack returns a single `{\"ok\": true}` on success or `{\"ok\": false, \"error\": ...}` on failure, with NO per-item result array, so partial state cannot be reported. On failure, treat the whole batch as not deleted and retry the entire batch. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_DELETE_REMINDER", "name": "Delete a Slack reminder", "description": "Deletes an existing Slack reminder, typically when it is no longer relevant or a task is completed; this operation is irreversible." }, { "slug": "SLACK_DELETES_A_MESSAGE_FROM_A_CHAT", "name": "Delete a message from a chat", "description": "Deletes a message, identified by its channel ID and timestamp, from a Slack channel, private group, or direct message conversation; the authenticated user or bot must be the original poster." }, { "slug": "SLACK_DELETE_SCHEDULED_MESSAGE", "name": "Delete scheduled chat message", "description": "Deletes a pending, unsent scheduled message from the specified Slack channel, identified by its `scheduled_message_id`." }, { "slug": "SLACK_DELETE_SLACK_LIST_ACCESS", "name": "Delete Slack List access", "description": "Revokes sharing access on a Slack List via `slackLists.access.delete`. Provide the `list_id` and EXACTLY ONE of `channel_ids` or `user_ids` (they are mutually exclusive) to remove access for those channels or users. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_DELETE_SLACK_LIST_ITEM", "name": "Delete Slack List item", "description": "Deletes an item (row) from a Slack List via `slackLists.items.delete`. Identify the List with `list_id` and the row to remove with `id`. Deletion is permanent and cannot be undone. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_DELETE_USER_PROFILE_PHOTO", "name": "Delete user profile photo", "description": "Deletes the Slack profile photo for the user identified by the token, reverting them to the default avatar; this action is irreversible and succeeds even if no custom photo was set." }, { "slug": "SLACK_DISABLE_USER_GROUP", "name": "Disable a Slack user group", "description": "Disables a specified, currently enabled Slack User Group by its unique ID, effectively archiving it by setting its 'date_delete' timestamp; the group is not permanently deleted and can be re-enabled." }, { "slug": "SLACK_DOWNLOAD_SLACK_FILE", "name": "Download Slack file", "description": "Tool to download Slack file content and convert it to a publicly accessible URL. Use when you need to retrieve and download files that have been shared in Slack channels or conversations." }, { "slug": "SLACK_EDIT_CANVAS", "name": "Edit Slack Canvas", "description": "Edits a Slack Canvas with granular control over content placement. Supports replace, insert (before/after/start/end) operations for flexible content management." }, { "slug": "SLACK_ENABLE_PUBLIC_SHARING_OF_A_FILE", "name": "Share file public url", "description": "Enables public sharing for an existing Slack file by generating a publicly accessible URL; this action does not create new files. Once enabled, the file is accessible to anyone with the URL — verify intent before sharing sensitive or confidential files." }, { "slug": "SLACK_ENABLE_USER_GROUP", "name": "Enable a user group", "description": "Enables a disabled User Group in Slack using its ID, reactivating it for mentions and permissions; this action only changes the enabled status and cannot create new groups or modify other properties." }, { "slug": "SLACK_END_CALL", "name": "End a call", "description": "Ends an ongoing Slack call, identified by its ID (obtained from `calls.add`), optionally specifying the call's duration." }, { "slug": "SLACK_END_DND", "name": "End DND session", "description": "Ends the authenticated user's current Do Not Disturb (DND) session in Slack, affecting only DND status and making them available; if DND is not active, Slack acknowledges the request without changing status." }, { "slug": "SLACK_END_SNOOZE", "name": "End snooze", "description": "Ends the current user's snooze mode immediately." }, { "slug": "SLACK_FETCH_CONVERSATION_HISTORY", "name": "Fetch conversation history", "description": "Fetches a chronological list of messages and events from a specified Slack conversation, accessible by the authenticated user/bot, with options for pagination and time range filtering. IMPORTANT LIMITATION: This action only returns messages from the main channel timeline. Threaded replies are NOT returned by this endpoint. To retrieve threaded replies, use the SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION action (conversations.replies API) instead. The oldest/latest timestamp filters work reliably for filtering the main channel timeline, but cannot be used to retrieve individual threaded replies - even if you know the exact reply timestamp, setting oldest=latest to that timestamp will return an empty messages array. To get threaded replies: 1. Use this action to get parent messages (which include thread_ts, reply_count, latest_reply fields) 2. Use SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION with the parent's thread_ts to fetch all replies in that thread" }, { "slug": "SLACK_FETCH_ITEM_REACTIONS", "name": "Fetch item reactions", "description": "Fetches reactions for a Slack message, file, or file comment. Exactly one identifier path must be provided: `channel`+`timestamp`, `file`, or `file_comment`. Mixing identifiers (e.g., providing both `channel`+`timestamp` and `file`) causes errors. If the response omits the `reactions` field, the item has zero reactions." }, { "slug": "SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION", "name": "Retrieve conversation replies", "description": "Retrieves replies to a specific parent message in a Slack conversation, using the channel ID and the parent message's timestamp (`ts`). Note: The parent message in the response contains metadata (reply_count, reply_users, latest_reply) that indicates expected thread activity. If the returned messages array contains fewer replies than reply_count indicates, check: (1) has_more=true means pagination is needed, (2) recently posted replies may have timing delays, (3) some replies may be filtered by permissions or deleted. The composio_execution_message field will warn about any detected mismatches." }, { "slug": "SLACK_FETCH_TEAM_INFO", "name": "Fetch team info", "description": "Fetches comprehensive metadata about the current Slack team, or a specified team if the provided ID is accessible." }, { "slug": "SLACK_FIND_CHANNELS", "name": "Find channels", "description": "Find channels in a Slack workspace by any criteria - name, topic, purpose, or description. Returns channel IDs (C*/G* prefixed) required by most Slack tools — always resolve names to IDs here before passing to other tools. NOTE: This action searches channels and conversations visible to the authenticated user. Empty results may indicate: - No channels match the search query in name, topic, or purpose - The target private channel or DM is not accessible to the authenticated user because they are not a member - The connection lacks required read scopes (channels:read, groups:read, im:read, mpim:read). If empty, retry with exact_match=false or exclude_archived=false to avoid false negatives. In large workspaces, paginate using next_cursor to avoid missing matches. Check 'composio_execution_message' and 'total_channels_searched' in the response for details." }, { "slug": "SLACK_FIND_USER_BY_EMAIL_ADDRESS", "name": "Lookup users by email", "description": "Retrieves the Slack user object for an active user by their registered email address; requires the users:read.email OAuth scope. Fails with 'users_not_found' if the email is unregistered, the user is inactive, the account is a guest, or the email is hidden by workspace privacy settings." }, { "slug": "SLACK_FIND_USERS", "name": "Find users", "description": "Find users in a Slack workspace by any criteria - email, name, display name, or other text. Includes optimized email lookup for exact email matches. Zero results may reflect email visibility restrictions or workspace policies, not global absence. Repeated calls may trigger HTTP 429; honor the Retry-After header." }, { "slug": "SLACK_GET_APP_PERMISSION_SCOPES", "name": "Get app permission scopes", "description": "DEPRECATED: Use SLACK_TEST_AUTH instead. Preflight a Slack token by calling auth.test and returning the token's currently granted OAuth scopes (from response headers) to detect missing permissions before attempting admin actions. Use when you need to verify token capabilities or check for specific scopes before making API calls that require elevated permissions." }, { "slug": "SLACK_GET_AUDIT_ACTION_TYPES", "name": "Get Audit Action Types", "description": "Tool to retrieve information about action types available in the Slack Audit Logs API. Use when you need to know which action types can be used to filter audit logs or understand the categories of auditable actions in Slack." }, { "slug": "SLACK_GET_AUDIT_SCHEMAS", "name": "Get Audit Schemas", "description": "Tool to retrieve object schema information from the Slack Audit Logs API. Use when you need to understand the types of objects returned by audit log endpoints. Returns a list of all object types with descriptions." }, { "slug": "SLACK_GET_BOT_USER", "name": "Fetch bot user information", "description": "Fetches information for a specified, existing Slack bot user; will not work for regular user accounts or other integration types." }, { "slug": "SLACK_GET_CALL_INFO", "name": "Retrieve call information", "description": "Retrieves a point-in-time snapshot of a specific Slack call's information." }, { "slug": "SLACK_GET_CANVAS", "name": "Get Slack Canvas (Deprecated)", "description": "DEPRECATED: Use SLACK_RETRIEVE_DETAILED_INFORMATION_ABOUT_A_FILE instead. Retrieves a specific Slack Canvas by its ID, including its content and metadata." }, { "slug": "SLACK_GET_CHANNEL_CONVERSATION_PREFERENCES", "name": "Get channel conversation preferences", "description": "Retrieves conversation preferences (e.g., who can post, who can thread) for a specified channel, primarily for use within Slack Enterprise Grid environments." }, { "slug": "SLACK_GET_REMINDER", "name": "Get reminder information", "description": "Retrieves detailed information for an existing Slack reminder specified by its ID; this is a read-only operation." }, { "slug": "SLACK_GET_REMOTE_FILE", "name": "Get remote file", "description": "Retrieve information about a remote file added to Slack via the files.remote API. Does not work for standard Slack-hosted file uploads." }, { "slug": "SLACK_GET_SLACK_LIST_ITEM", "name": "Get Slack List item", "description": "Fetches a single item (row) from a Slack List via `slackLists.items.info`. Returns the row's `column_id`-keyed typed values along with metadata about the parent List. Set `include_is_subscribed` to also report whether the calling user is subscribed to the row. Requires a user token with the `lists:read` scope." }, { "slug": "SLACK_GET_TEAM_PROFILE", "name": "Retrieve team profile details", "description": "Retrieves all profile field definitions for a Slack team, optionally filtered by visibility, to understand the team's profile structure." }, { "slug": "SLACK_GET_UNREAD_MESSAGES_FROM_USER", "name": "Get unread messages from user", "description": "Retrieves unread direct messages from a specific user by opening their DM conversation, checking for unread messages, and fetching message history since the last read timestamp. Use this action when you need to check if a specific user has sent unread direct messages to the authenticated user, or when monitoring incoming DMs from particular users. Returns an empty messages array if there are no unread messages from the specified user. Note: This action only works for direct messages (DMs), not channel messages or group conversations." }, { "slug": "SLACK_GET_USER_DND_STATUS", "name": "Get team DND status", "description": "Retrieves a user's current Do Not Disturb status." }, { "slug": "SLACK_GET_USER_PRESENCE", "name": "Retrieve user presence", "description": "Retrieves a Slack user's current real-time presence (e.g., 'active', 'away') to determine their availability, noting this action does not provide historical data or status reasons." }, { "slug": "SLACK_GET_WORKSPACE_CONNECTIONS_FOR_CHANNEL", "name": "Get workspace connections for channel", "description": "Tool to get all workspaces a channel is connected to within an Enterprise org. Use when you need to determine which workspaces have access to a specific public or private channel in an Enterprise Grid organization." }, { "slug": "SLACK_GET_WORKSPACE_SETTINGS", "name": "Fetch workspace settings information", "description": "Retrieves detailed settings for a specific Slack workspace, primarily for administrators in an Enterprise Grid organization to view or audit workspace configurations." }, { "slug": "SLACK_INVITE_USERS_TO_A_SLACK_CHANNEL", "name": "Invite users to a Slack channel", "description": "Invites users to an existing Slack channel using their valid Slack User IDs. Response is always HTTP 200; inspect `ok`, `error`, and `errors` fields to confirm users were added." }, { "slug": "SLACK_INVITE_USER_TO_CHANNEL", "name": "Invite users to channel", "description": "Invites users to a specified Slack channel; this action is restricted to Enterprise Grid workspaces and requires the authenticated user to be a member of the target channel." }, { "slug": "SLACK_INVITE_USER_TO_WORKSPACE", "name": "Invite user to workspace", "description": "Invites a user to a Slack workspace and specified channels by email; use `resend=True` to re-process an existing invitation for a user not yet signed up." }, { "slug": "SLACK_JOIN_AN_EXISTING_CONVERSATION", "name": "Join conversation by channel id", "description": "Joins an existing Slack conversation (public channel, private channel, or multi-person direct message) by its ID, if the authenticated user has permission. Joining an already-joined channel returns a non-fatal no-op response. Private or restricted channel joins may fail with a permission error." }, { "slug": "SLACK_LEAVE_A_CONVERSATION", "name": "Leave conversation channel", "description": "(DEPRECATED: use `SLACK_LEAVE_CONVERSATION`) Leaves a Slack conversation given its channel ID; fails if leaving as the last member of a private channel or if used on a Slack Connect channel." }, { "slug": "SLACK_LEAVE_CONVERSATION", "name": "Leave conversation channel", "description": "Leaves a Slack conversation given its channel ID; fails if leaving as the last member of a private channel or if used on a Slack Connect channel." }, { "slug": "SLACK_LIST_ADMIN_APPS_APPROVED", "name": "List approved apps", "description": "Tool to list approved apps for an Enterprise Grid organization or workspace. Use when you need to retrieve the list of apps that have been approved for installation by workspace admins. Requires admin.apps:read scope and a user token from an org owner/admin context." }, { "slug": "SLACK_LIST_ADMIN_APPS_REQUESTS", "name": "List app requests", "description": "Tool to list pending app installation requests for a team/workspace. Use when you need to see which apps users have requested to install that haven't yet been approved or denied. Requires Enterprise Grid or Business+ plan with admin.apps:read scope." }, { "slug": "SLACK_LIST_ADMIN_EMOJI", "name": "List admin emoji", "description": "List custom emoji across an Enterprise Grid organization. Use when you need to retrieve all custom emoji for an entire Enterprise Grid org (not just a single workspace). Requires admin.teams:read scope and an admin token. For single workspace emoji, use the regular emoji.list method instead." }, { "slug": "SLACK_LIST_ALL_CHANNELS", "name": "List all channels", "description": "Lists conversations available to the user with various filters and search options. Always use resolved `channel_id` (not display names) for downstream operations, as names may be non-unique. The `created` field in results is a Unix epoch timestamp (UTC). Pagination across large workspaces may return HTTP 429 with a `Retry-After` header; honor the delay and resume from the last successful cursor." }, { "slug": "SLACK_LIST_ALL_USERS", "name": "List all users", "description": "Retrieves a paginated list of all users with profile details, status, and team memberships in a Slack workspace; data may not be real-time. Filter response fields `is_bot`, `is_app_user`, and `deleted` to build human-only rosters. Profile fields like `email` and `phone` may be absent depending on OAuth scopes and workspace privacy settings. Guest/restricted accounts may be omitted based on scopes—do not treat results as a complete directory. High-frequency calls risk HTTP 429; honor the `Retry-After` header and throttle to ~1–2 requests/second. Use stable user IDs rather than display names for mapping. Prefer SLACK_FIND_USERS for targeted lookups; cache results to avoid full-workspace fetches." }, { "slug": "SLACK_LIST_APPROVED_WORKSPACE_INVITE_REQUESTS", "name": "List approved workspace invite requests", "description": "List all approved workspace invite requests with pagination support. Use to review which invite requests have been approved and the details of each approval. Requires admin.invites:read scope and Enterprise Grid organization." }, { "slug": "SLACK_LIST_AUTH_TEAMS", "name": "List authorized teams", "description": "Obtains a paginated list of workspaces your org-wide app has been approved for. Use when you need to discover all workspaces within an organization where the app is installed." }, { "slug": "SLACK_LIST_AVAILABLE_WORKSPACES", "name": "List available workspaces", "description": "List Slack workspaces where both the connection and target user have access. Returns each workspace's team_id and name. Use this when: (1) the user references a workspace by name, (2) a user-specific tool requires team_id and you don't have one, or (3) a user-specific call fails with a team/workspace access error. Match the user's workspace name to a team_id from the results and pass that team_id to subsequent tools. If the name matches zero or multiple workspaces, ask the user to clarify. Only meaningful for org-level installs; single-workspace connections return the workspace only if the specified user's membership is visible to this token." }, { "slug": "SLACK_LIST_CANVASES", "name": "List Slack Canvases (Deprecated)", "description": "DEPRECATED: Use SLACK_LIST_FILES_WITH_FILTERS_IN_SLACK instead (pass types=\"canvas\" for equivalent behavior). Lists Slack Canvases with filtering by channel, user, timestamp, and page-based pagination. Uses Slack's files.list API with types=canvas filter. Only canvases accessible to the authenticated app are returned; missing canvases indicate permissions restrictions, not empty data. Use `paging.pages` in the response to determine total pages; iterate `page` with `count` to retrieve all results. Known limitations: - The 'user' filter may return canvases accessible to the specified user, not just canvases they created. - The 'ts_from' and 'ts_to' timestamp filters may not work reliably for canvas types. Consider client-side filtering on the 'created' field in the response if precise date filtering is required." }, { "slug": "SLACK_LIST_CONVERSATIONS", "name": "List conversations", "description": "List conversations (channels/DMs) accessible to a specified user (or the authenticated user if no user ID is provided), respecting shared membership for non-public channels. Returns conversation IDs (C* for channels, G* for group DMs), not display names. Absence of private channels, DMs, or MPIMs from results indicates token scope or membership limits, not that the conversation is nonexistent." }, { "slug": "SLACK_LIST_CUSTOM_EMOJIS", "name": "List team custom emojis", "description": "Retrieves all custom emojis for the Slack workspace (image URLs or aliases), not standard Unicode emojis; does not include usage statistics or creation dates." }, { "slug": "SLACK_LIST_DENIED_WORKSPACE_INVITE_REQUESTS", "name": "List denied workspace invite requests", "description": "Tool to list all denied workspace invite requests with details about who denied them and when. Use when you need to review or audit denied invitation requests." }, { "slug": "SLACK_LIST_ENTERPRISE_TEAMS", "name": "List Enterprise teams", "description": "List all teams (workspaces) in a Slack Enterprise Grid organization with pagination support. Use when you need to retrieve team IDs, names, domains, and metadata for all workspaces in an Enterprise. Requires admin.teams:read scope and Enterprise Grid organization." }, { "slug": "SLACK_LIST_FILES_WITH_FILTERS_IN_SLACK", "name": "List Slack files", "description": "Lists files and their metadata within a Slack workspace, filterable by user, channel, timestamp, or type; returns metadata only, not file content. Results are limited to files visible to the authenticated user — files in private channels or restricted to certain members require appropriate membership and permissions. For large workspaces, check `paging.pages` in the response to determine total pages when paginating." }, { "slug": "SLACK_LIST_IDP_GROUPS_LINKED_TO_CHANNEL", "name": "List IDP groups linked to channel", "description": "Lists IDP groups that have restricted access to a private Slack channel. Use when you need to see which identity provider groups can access a specific channel." }, { "slug": "SLACK_LIST_PENDING_WORKSPACE_INVITE_REQUESTS", "name": "List pending workspace invite requests", "description": "Tool to list all pending workspace invite requests. Use when you need to see who has been invited but hasn't joined yet. Requires admin.invites:read scope." }, { "slug": "SLACK_LIST_PINNED_ITEMS", "name": "List pinned items in a channel", "description": "Retrieves all messages and files pinned to a specified channel; the caller must have access to this channel." }, { "slug": "SLACK_LIST_REMINDERS", "name": "List reminders", "description": "Lists all reminders with their details for the authenticated Slack user; returns an empty array if no reminders exist (valid state, not an error). Reminder text is not unique—perform client-side matching on returned objects before extracting a reminder ID for use with SLACK_DELETE_A_SLACK_REMINDER." }, { "slug": "SLACK_LIST_REMOTE_FILES", "name": "List remote files", "description": "Retrieve information about a team's remote files." }, { "slug": "SLACK_LIST_RESTRICTED_APPS", "name": "List Restricted Apps", "description": "Tool to list restricted apps for an org or workspace. Use when you need to view apps that have been restricted from installation. Requires admin.apps:read scope and appropriate admin permissions." }, { "slug": "SLACK_LIST_SCHEDULED_MESSAGES", "name": "List scheduled messages", "description": "Retrieves a list of pending (not yet delivered) messages scheduled in a specific Slack channel, or across all accessible channels if no channel ID is provided, optionally filtered by time and paginated." }, { "slug": "SLACK_LIST_SLACK_LIST_ITEMS", "name": "List Slack List items", "description": "Lists the rows (items) in a Slack List via `slackLists.items.list`. Each row exposes `column_id`-keyed typed values (e.g. `rich_text`, `select`, `user`, `date`, `number`); the legacy `key`/`value` fields are deprecated. Results are cursor-paginated—you must paginate using `response_metadata.next_cursor` until it is empty, or rows are silently truncated to the first page. Set `archived=true` to return archived rows instead of active ones. Requires a user token with the `lists:read` scope." }, { "slug": "SLACK_LIST_STARRED_ITEMS", "name": "List starred items", "description": "Lists items starred by a user. Returns classic starred items only — does not reflect Slack's 'saved for later' feature. Use SLACK_SEARCH_MESSAGES or SLACK_SEARCH_ALL for broader saved-content queries." }, { "slug": "SLACK_LIST_UNREAD_CHANNEL_MESSAGES", "name": "List unread channel messages", "description": "Lists all unread messages in a specified Slack channel for the authenticated user. This action fetches messages that have been posted since the user's last read position in the channel. Use this action when you need to retrieve messages the user hasn't seen yet. The action determines the user's read position and returns all messages posted after that timestamp. Note: This only returns messages from the main channel timeline, not threaded replies. For threaded replies, use SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION." }, { "slug": "SLACK_LIST_USER_GROUP_MEMBERS", "name": "List all users in a user group", "description": "Retrieves a list of all user IDs within a specified Slack user group, with an option to include users from disabled groups." }, { "slug": "SLACK_LIST_USER_GROUPS", "name": "List user groups", "description": "Lists user groups in a Slack workspace, including user-created and default groups; results for large workspaces may be paginated." }, { "slug": "SLACK_LIST_USER_REACTIONS", "name": "List user reactions", "description": "Lists all reactions added by a specific user to messages, files, or file comments in Slack, useful for engagement analysis when the item content itself is not required. Results are paginated; check `response_metadata.next_cursor` and iterate with the `cursor` parameter to retrieve complete reaction history." }, { "slug": "SLACK_LIST_WORKSPACE_ADMINS", "name": "List workspace admins", "description": "Tool to list all admins on a given Slack workspace. Use when you need to identify workspace administrators. Requires Enterprise Grid organization and admin.teams:read scope." }, { "slug": "SLACK_LIST_WORKSPACE_OWNERS", "name": "List workspace owners", "description": "Tool to list all owners on a given Slack workspace. Use when you need to identify workspace ownership or admin structure. Requires admin.teams:read scope." }, { "slug": "SLACK_LIST_WORKSPACE_USERS", "name": "List admin users", "description": "Retrieves a paginated list of admin users for a specified Slack workspace." }, { "slug": "SLACK_LOOKUP_CANVAS_SECTIONS", "name": "Lookup Canvas Sections", "description": "Looks up section IDs in a Slack Canvas for use with targeted edit operations. Section IDs are needed for insert_after, insert_before, delete, and section-specific replace operations." }, { "slug": "SLACK_MANUALLY_SET_USER_PRESENCE", "name": "Set user presence", "description": "(DEPRECATED: use `SLACK_SET_USER_PRESENCE`) Manually sets a user's Slack presence, overriding automatic detection; this setting persists across connections but can be overridden by user actions or Slack's auto-away (e.g., after 10 mins of inactivity)." }, { "slug": "SLACK_OPEN_DM", "name": "Open DM", "description": "Opens or resumes a Slack direct message (DM) or multi-person direct message (MPIM) by providing either user IDs or an existing channel ID. Returns `already_open=true` when the DM exists — treat as success and reuse the returned `channel.id` (starts with 'D') for subsequent SLACK_SEND_MESSAGE calls; passing a username, email, or user ID directly to SLACK_SEND_MESSAGE causes `channel_not_found`. Avoid redundant calls when an existing DM channel ID is available." }, { "slug": "SLACK_PIN_ITEM", "name": "Pin an item to a channel", "description": "Pins a message to a specified Slack channel; the message must not already be pinned." }, { "slug": "SLACK_READ_AUDIT_LOGS", "name": "Read Audit Logs", "description": "Read Slack Enterprise Grid Audit Logs (logins, admin changes, app installs, channel/privacy changes, etc.) with server-side filters and pagination. Requires Enterprise Grid organization with auditlogs:read scope and a user token (xoxp-...) from an owner/admin context." }, { "slug": "SLACK_REMOVE_CALL_PARTICIPANTS", "name": "Remove call participants", "description": "Registers participants removed from a Slack call." }, { "slug": "SLACK_REMOVE_EMOJI", "name": "Remove emoji", "description": "Tool to remove a custom emoji across an Enterprise Grid organization. Use when you need to delete a custom emoji from the entire organization." }, { "slug": "SLACK_REMOVE_REACTION_FROM_ITEM", "name": "Remove reaction from item", "description": "Removes an emoji reaction from a message, file, or file comment in Slack. Provide exactly one targeting method: channel+timestamp together, file, or file_comment. Mixing methods or omitting all returns invalid_arguments." }, { "slug": "SLACK_REMOVE_REMOTE_FILE", "name": "Remove remote file", "description": "Removes the Slack reference to an external file (which must have been previously added via the remote files API), specified by either its `external_id` or `file` ID (one of which is required), without deleting the actual external file." }, { "slug": "SLACK_REMOVE_STAR", "name": "Remove a star from an item", "description": "Removes a star from a previously starred Slack item (message, file, file comment, channel, group, or DM), requiring identification via `file`, `file_comment`, `channel` (for channel/group/DM), or both `channel` and `timestamp` (for a message)." }, { "slug": "SLACK_REMOVE_USER_FROM_CONVERSATION", "name": "Remove user from conversation", "description": "Removes a specified user from a Slack conversation (channel); the caller must have permissions to remove users and cannot remove themselves using this action." }, { "slug": "SLACK_REMOVE_USER_FROM_WORKSPACE", "name": "Remove user from workspace", "description": "Tool to remove a user from a Slack workspace. Use when you need to revoke a user's access to a workspace." }, { "slug": "SLACK_RENAME_CONVERSATION", "name": "Rename a conversation", "description": "Renames a Slack channel, automatically adjusting the new name to meet naming conventions (e.g., converting to lowercase), which may affect integrations using the old name." }, { "slug": "SLACK_RENAME_EMOJI", "name": "Rename an emoji", "description": "Renames an existing custom emoji in a Slack workspace, updating all its instances." }, { "slug": "SLACK_RESET_USER_SESSIONS", "name": "Reset user sessions", "description": "Tool to wipe all valid sessions on all devices for a given user. Use when you need to force a user to re-authenticate due to security concerns or account changes." }, { "slug": "SLACK_RESTRICT_APP_INSTALLATION", "name": "Restrict app installation", "description": "Restrict an app for installation on a workspace. Use when you need to prevent an app from being installed on a specific workspace or enterprise organization." }, { "slug": "SLACK_RETRIEVE_A_USER_S_IDENTITY_DETAILS", "name": "Retrieve a user's identity details", "description": "Retrieves the authenticated user's and their team's identity, with details varying based on OAuth scopes (e.g., `identity.basic`, `identity.email`, `identity.avatar`)." }, { "slug": "SLACK_RETRIEVE_CONVERSATION_INFORMATION", "name": "Retrieve conversation information", "description": "Retrieves metadata for a Slack conversation by ID (e.g., name, purpose, creation date, with options for member count/locale), excluding message content. The `channel` parameter is effectively required. Private channels, DMs, or channels where the app lacks membership may return restricted data; check `is_archived` and `is_member` fields in the response to diagnose access issues. Bulk lookups may trigger HTTP 429 rate limiting; honor the `Retry-After` response header." }, { "slug": "SLACK_RETRIEVE_CONVERSATION_MEMBERS_LIST", "name": "Get conversation members", "description": "Retrieves a paginated list of active member IDs (not names, emails, or presence) for a specified Slack public channel, private channel, DM, or MPIM. Returns only user IDs; use a user-lookup tool to enrich member data." }, { "slug": "SLACK_RETRIEVE_CURRENT_USER_DND_STATUS", "name": "Retrieve user DND status", "description": "Retrieves a Slack user's current Do Not Disturb (DND) status to determine their availability before interaction; any specified user ID must be a valid Slack user ID." }, { "slug": "SLACK_RETRIEVE_DETAILED_INFORMATION_ABOUT_A_FILE", "name": "Retrieve detailed file information", "description": "Retrieves detailed metadata and paginated comments for a specific Slack file ID; does not download file content." }, { "slug": "SLACK_RETRIEVE_DETAILED_USER_INFORMATION", "name": "Retrieve detailed user information", "description": "Retrieves comprehensive information for a valid Slack user ID, excluding message history and channel memberships. Sensitive fields like `email` and `phone` require the `users:read.email` scope and may be silently omitted based on workspace privacy policies." }, { "slug": "SLACK_RETRIEVE_MESSAGE_PERMALINK_URL", "name": "Retrieve message permalink", "description": "Retrieves a permalink URL for a specific message in a Slack channel or conversation; the permalink respects Slack's privacy settings." }, { "slug": "SLACK_RETRIEVE_USER_PROFILE_INFORMATION", "name": "Retrieve user profile information", "description": "Retrieves profile information for a specified Slack user (defaults to the authenticated user if `user` ID is omitted); a provided `user` ID must be valid. Sensitive fields like email and phone may be silently omitted if required scopes (e.g., `users:read.email`) are not granted or workspace privacy policies restrict access." }, { "slug": "SLACK_REVOKE_FILE_PUBLIC_SHARING", "name": "Revoke a file's public url", "description": "Revokes a Slack file's public URL, making it private; this is a no-op if not already public and is irreversible." }, { "slug": "SLACK_RTM_CONNECT", "name": "Start RTM session", "description": "Starts a Real Time Messaging session and returns a WebSocket URL. Use when you need to establish a persistent RTM connection to receive real-time events from Slack." }, { "slug": "SLACK_RTM_START", "name": "Start RTM session", "description": "Starts a Real Time Messaging API session for Slack. Use when you need to establish an RTM connection with additional options beyond rtm.connect. Note: RTM API is deprecated; consider Socket Mode for new apps." }, { "slug": "SLACK_SCHEDULE_MESSAGE", "name": "Schedule message", "description": "Schedules a message to a Slack channel, DM, or private group for a future time (`post_at`), requiring `text`, `blocks`, or `attachments` for content; scheduling is limited to 120 days in advance." }, { "slug": "SLACK_SCIM_GET_CONFIG", "name": "Get SCIM service provider configuration", "description": "Tool to retrieve SCIM service provider configuration from Slack. Use when you need to discover Slack's SCIM API capabilities including supported authentication schemes, bulk operations, filtering, and other service provider features." }, { "slug": "SLACK_SEARCH_ALL", "name": "Search all content", "description": "Tool to search all messages and files. Use when you need unified content search across channels and files in one call. Results are scoped to content visible to the authenticated token; missing hits in private or restricted channels reflect permission/membership gaps. Response separates messages and files into distinct sections — explicitly read the files section for document results. Results are index-based and may lag several minutes behind real-time; use SLACK_FETCH_CONVERSATION_HISTORY for near-real-time per-channel coverage. Paginated searches exceeding ~1 req/sec may return HTTP 429 too_many_requests; honor the Retry-After header and resume from the last page." }, { "slug": "SLACK_SEARCH_MESSAGES", "name": "Search messages", "description": "Workspace‑wide Slack message search with date ranges and filters. Use `query` modifiers (e.g., in:#channel, from:@user, before/after:YYYY-MM-DD), sorting (score/timestamp), and pagination." }, { "slug": "SLACK_SEND_EPHEMERAL_MESSAGE", "name": "Send ephemeral message", "description": "Sends an ephemeral message visible only to the specified `user` in a channel; other channel members cannot see it. Both the bot and the target user must be members of the specified channel." }, { "slug": "SLACK_SEND_ME_MESSAGE", "name": "Share a me message in a channel", "description": "Sends a 'me message' (e.g., '/me is typing') to a Slack channel, where it's displayed as a third-person user action; messages are plain text and the channel must exist and be accessible." }, { "slug": "SLACK_SEND_MESSAGE", "name": "Send message", "description": "Posts a message to a Slack channel, DM, or private group. Provide exactly one visible content mode: `markdown_text` for normal Markdown content, or `blocks` for raw Slack Block Kit layouts. Use `fallback_text` only with `blocks`; it maps to Slack's top-level `text` fallback. Fails with `not_in_channel`, `channel_not_found`, or `channel_is_archived` if the bot lacks access. Rate-limited at ~1 req/sec (HTTP 429, honor `Retry-After`). Not idempotent — duplicate calls post duplicate messages." }, { "slug": "SLACK_SET_ADMIN_USER", "name": "Set admin user", "description": "Promotes an existing workspace member (guest, regular user, or owner) to admin status. Use when you need to grant admin privileges to a user." }, { "slug": "SLACK_SET_CONVERSATION_PREFS", "name": "Set conversation preferences", "description": "Sets the posting permissions for a public or private channel in Slack. Use this to control who can post messages, start threads, use @channel/@here mentions, and initiate huddles in a specific channel." }, { "slug": "SLACK_SET_CONVERSATION_PURPOSE", "name": "Set a conversation's purpose", "description": "Sets the purpose (a short description of its topic/goal, displayed in the header) for a Slack conversation; the calling user must be a member." }, { "slug": "SLACK_SET_DEFAULT_CHANNELS", "name": "Set default channels", "description": "Tool to set the default channels of a workspace. Use when you need to configure which channels new members automatically join." }, { "slug": "SLACK_SET_DND_DURATION", "name": "Set DND duration", "description": "Turns on Do Not Disturb mode for the current user, or changes its duration." }, { "slug": "SLACK_SET_PROFILE_PHOTO", "name": "Set profile photo", "description": "This method allows the user to set their profile image." }, { "slug": "SLACK_SET_READ_CURSOR_IN_A_CONVERSATION", "name": "Set conversation read cursor", "description": "Marks a message, specified by its timestamp (`ts`), as the most recently read for the authenticated user in the given `channel`, provided the user is a member of the channel and the message exists within it." }, { "slug": "SLACK_SET_SLACK_LIST_ACCESS", "name": "Set Slack List access", "description": "Grants or sets sharing access on a Slack List via `slackLists.access.set`. Grant `read`, `write`, or `owner` access to either channels (`channel_ids`) or users (`user_ids`) — exactly one of the two is required. The `owner` level is user-only and subject to additional server-side rules. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_SET_STATUS", "name": "Set Slack user profile information", "description": "(DEPRECATED: use `SLACK_SET_USER_PROFILE`) Updates a Slack user's profile, setting either individual fields or multiple fields via a JSON object." }, { "slug": "SLACK_SET_THE_TOPIC_OF_A_CONVERSATION", "name": "Set conversation topic", "description": "Sets or updates the topic for a specified Slack conversation." }, { "slug": "SLACK_SET_USER_ACTIVE", "name": "Mark user as active", "description": "Tool to mark a user as active in Slack. Note: This endpoint is deprecated and non-functional - it exists for backwards compatibility but does not perform any action." }, { "slug": "SLACK_SET_USER_PRESENCE", "name": "Set user presence", "description": "Manually sets a user's Slack presence, overriding automatic detection; this setting persists across connections but can be overridden by user actions or Slack's auto-away (e.g., after 10 mins of inactivity)." }, { "slug": "SLACK_SET_USER_PROFILE", "name": "Set Slack user profile information", "description": "Updates a Slack user's profile, setting either individual fields or multiple fields via a JSON object." }, { "slug": "SLACK_SET_WORKSPACE_DESCRIPTION", "name": "Set workspace description", "description": "Set the description of a given workspace. Use when you need to update or change the description text displayed for a Slack workspace." }, { "slug": "SLACK_SET_WORKSPACE_ICON", "name": "Set workspace icon", "description": "Sets the icon of a workspace. Use when you need to update or change the workspace icon image. The image must be publicly accessible and in a supported format (GIF, PNG, JPG, JPEG, HEIC, or HEIF)." }, { "slug": "SLACK_SET_WORKSPACE_NAME", "name": "Set workspace name", "description": "Set the name of a given Slack workspace. Use when you need to update the display name for a workspace in an Enterprise Grid organization." }, { "slug": "SLACK_SET_WORKSPACE_OWNER", "name": "Set workspace owner", "description": "Set an existing guest, regular user, or admin user to be a workspace owner. Use when you need to promote a workspace member to owner status. Requires an Enterprise Grid workspace." }, { "slug": "SLACK_SET_WORKSPACES_FOR_CHANNEL", "name": "Set workspaces for channel", "description": "Set the workspaces in an Enterprise grid org that connect to a channel. Use when you need to share a public or private channel with specific workspaces in an Enterprise Grid organization." }, { "slug": "SLACK_SHARE_REMOTE_FILE", "name": "Share a remote file in channels", "description": "Shares a remote file, which must already be registered with Slack, into specified Slack channels or direct message conversations." }, { "slug": "SLACK_START_CALL", "name": "Start call", "description": "Registers a new call in Slack using `calls.add` for third-party call integration; `created_by` is required if not using a user-specific token." }, { "slug": "SLACK_TEST_AUTH", "name": "Test authentication", "description": "Checks authentication and tells you who you are. Use to verify Slack API authentication is functional and to retrieve identity information about the authenticated user or bot." }, { "slug": "SLACK_UNARCHIVE_CHANNEL", "name": "Unarchive channel", "description": "Reverses conversation archival." }, { "slug": "SLACK_UNPIN_ITEM", "name": "Unpin message from channel", "description": "Unpins a message, identified by its timestamp, from a specified channel if the message is currently pinned there; this operation is destructive." }, { "slug": "SLACK_UPDATE_CALL_INFO", "name": "Update call information", "description": "Updates the title, join URL, or desktop app join URL for an existing Slack call identified by its ID." }, { "slug": "SLACK_UPDATE_REMOTE_FILE", "name": "Update an existing remote file", "description": "Updates metadata or content details for an existing remote file in Slack; this action cannot upload new files or change the fundamental file type." }, { "slug": "SLACK_UPDATES_A_SLACK_MESSAGE", "name": "Update a Slack message", "description": "Updates a Slack message by timestamp. Provide exactly one visible content mode: `markdown_text` for normal Markdown content, or `blocks` for raw Slack Block Kit layouts. Use `fallback_text` only with `blocks`; it maps to Slack's top-level `text` fallback." }, { "slug": "SLACK_UPDATE_SLACK_LIST", "name": "Update Slack List", "description": "Updates a Slack List's metadata via `slackLists.update`. Only the List's `name`, `description_blocks`, and `todo_mode` are editable here. The List to update is identified by its `id` (not `list_id`). Descriptions are rich text — a plain string is wrapped into a `rich_text` block automatically. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_UPDATE_SLACK_LIST_ITEM", "name": "Update Slack List item", "description": "Updates one or more cells in an EXISTING Slack List row via `slackLists.items.update`. Each cell is identified by `row_id` (an existing row ID matching `^Rec[A-Z0-9]{8,}$`) and `column_id` and carries a typed value; text columns require Block Kit `rich_text` (a plain string is wrapped automatically), and `select` takes the column's choice values (e.g. `[\"todo\"]`). Use it to UPDATE existing rows; the live API rejects `row_id_to_create` inside a cell (despite Slack's inline example), so to ADD a row use `create_slack_list_item`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACK_UPDATE_USER_GROUP", "name": "Update Slack user group", "description": "Updates an existing Slack User Group, which must be specified by an existing `usergroup` ID, with new optional details such as its name, description, handle, or default channels." }, { "slug": "SLACK_UPDATE_USER_GROUP_MEMBERS", "name": "Update user group members", "description": "Replaces all members of an existing Slack User Group with a new list of valid user IDs." }, { "slug": "SLACK_UPLOAD_OR_CREATE_A_FILE_IN_SLACK", "name": "Upload or create a file in Slack", "description": "Upload files, images, screenshots, documents, or any media to Slack channels or threads. Supports all file types including images (PNG, JPG, JPEG, GIF), documents (PDF, DOCX, TXT), code files, and more. Can share files publicly in channels or as thread replies with optional comments. Large files may fail with `upload_too_large`; use SLACK_ADD_A_REMOTE_FILE_FROM_A_SERVICE for large uploads. If the API returns `ok=false` with `method_deprecated`, fall back to SLACK_ADD_A_REMOTE_FILE_FROM_A_SERVICE or SLACK_SEND_MESSAGE with a URL." } ], "triggers": [ { "slug": "SLACK_CHANNEL_CREATED", "name": "New Channel Created Trigger", "description": "Triggered when a new channel is created in Slack." }, { "slug": "SLACK_CHANNEL_MESSAGE_RECEIVED", "name": "Channel Message Received", "description": "Triggered when a message is posted in a Slack channel\n (public, private, or multi-party IM). Does NOT match direct messages." }, { "slug": "SLACK_DIRECT_MESSAGE_RECEIVED", "name": "Direct Message Received", "description": "Triggered when a new direct message (DM) is sent to a user in Slack.\n Catches all DMs across all DM channels." }, { "slug": "SLACK_MESSAGE_REACTION_ADDED", "name": "Message Reaction Added", "description": "Triggered when a reaction is added to a message in Slack.\n Supports optional filtering by channel and emoji name." }, { "slug": "SLACK_MESSAGE_REACTION_REMOVED", "name": "Message Reaction Removed", "description": "Triggered when a reaction is removed from a message in Slack.\n Supports optional filtering by channel and emoji name." }, { "slug": "SLACK_REACTION_ADDED", "name": "Reaction Added Trigger", "description": "DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead.\n\n Triggered when a reaction is added to a message in Slack." }, { "slug": "SLACK_REACTION_REMOVED", "name": "Reaction Removed Trigger", "description": "DEPRECATED: use `SLACK_MESSAGE_REACTION_REMOVED` instead.\n\n Triggered when a reaction is removed from a message." }, { "slug": "SLACK_RECEIVE_BOT_MESSAGE", "name": "New Bot Message Received Trigger", "description": "DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` with\n `is_bot_message=true` instead.\n\n Triggered when a new bot message is posted to a Slack channel." }, { "slug": "SLACK_RECEIVE_MESSAGE", "name": "New Message Received Trigger", "description": "DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` instead.\n\n Triggered when a new message is posted to a Slack channel." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "slack_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "User Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "calls:read,calls:write,channels:history,channels:read,channels:write,chat:write,dnd:read,dnd:write,emoji:read,files:read,files:write,groups:history,groups:read,groups:write,im:history,im:read,im:write,links:read,links:write,lists:read,lists:write,mpim:history,mpim:read,mpim:write,pins:read,pins:write,reactions:read,reactions:write,reminders:read,reminders:write,remote_files:read,remote_files:share,search:read,search:read.files,search:read.im,search:read.mpim,search:read.private,search:read.public,search:read.users,team:read,usergroups:read,usergroups:write,users.profile:read,users.profile:write,users:read,users:read.email,users:write" }, { "name": "verification_token", "displayName": "Verification Token", "type": "string", "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.", "required": false, "default": null } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "generic_id", "displayName": "Slack Team ID", "type": "string", "description": "Optional Slack workspace ID used to scope the OAuth authorize flow to a specific team. When provided, Slack will only allow installation in this workspace. Leave unset to let users pick any workspace they have access to.", "required": false, "default": null } ] } } } ] }, { "slug": "supabase", "name": "Supabase", "logo": "https://logos.composio.dev/api/supabase", "description": "Supabase is an open-source backend-as-a-service providing a Postgres database, authentication, storage, and real-time subscription APIs for building modern applications", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 129, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SUPABASE_ALPHA_CREATE_API_KEY", "name": "Create project api key", "description": "Creates a 'publishable' or 'secret' API key for an existing Supabase project, optionally with a description; 'secret' keys can have customized JWT templates." }, { "slug": "SUPABASE_ALPHA_DELETE_API_KEY", "name": "Delete an API key from the project", "description": "Permanently deletes a specific API key (identified by `id`) from a Supabase project (identified by `ref`), revoking its access." }, { "slug": "SUPABASE_ALPHA_DELETE_THIRD_PARTY_AUTH_INTEGRATION", "name": "Delete third party auth config", "description": "Removes a third-party authentication provider (e.g., Google, GitHub) from a Supabase project's configuration; this immediately prevents users from logging in via that method." }, { "slug": "SUPABASE_ALPHA_GET_THIRD_PARTY_INTEGRATION", "name": "Get a third-party integration", "description": "Retrieves the detailed configuration for a specific third-party authentication (TPA) provider, identified by `tpa_id`, within an existing Supabase project specified by `ref`." }, { "slug": "SUPABASE_ALPHA_LIST_THIRD_PARTY_AUTH_INTEGRATIONS", "name": "List third-party auth integrations for project", "description": "Lists all configured third-party authentication provider integrations for an existing Supabase project (using its `ref`), suitable for read-only auditing or verifying current authentication settings." }, { "slug": "SUPABASE_ALPHA_UPDATE_API_KEY", "name": "Update an API key for the project", "description": "Updates an existing Supabase project API key's `description` and/or `secret_jwt_template` (which defines its `role`); does not regenerate the key string." }, { "slug": "SUPABASE_APPLY_A_MIGRATION", "name": "Apply a database migration", "description": "Tool to apply database migrations to a Supabase project. Use when you need to execute SQL schema changes, create tables, alter columns, or run other DDL/DML operations as part of a tracked migration. This is a Beta feature in the Supabase Management API." }, { "slug": "SUPABASE_BETA_ACTIVATE_CUSTOM_HOSTNAME", "name": "Beta activate custom hostname for project", "description": "Activates a previously configured custom hostname for a Supabase project, assuming DNS settings are verified externally." }, { "slug": "SUPABASE_BETA_ACTIVATE_VANITY_SUBDOMAIN", "name": "Activate vanity subdomain for project", "description": "Activates a vanity subdomain for the specified Supabase project (e.g., 'my-brand.supabase.co'). Important notes: - Vanity subdomains require a paid plan (Pro/Team/Enterprise) - Usage of vanity subdomains and custom domains is mutually exclusive - After activation, your project's auth services will no longer work on the original {project-ref}.supabase.co hostname - Schedule a downtime window to update client code and OAuth providers before activating" }, { "slug": "SUPABASE_BETA_AUTHORIZE_USER_THROUGH_OAUTH", "name": "Authorize user through OAuth", "description": "Generates a Supabase OAuth 2.0 authorization URL for user redirection. IMPORTANT: This action requires a pre-registered OAuth client_id and a redirect_uri that matches one of the pre-registered URIs for that OAuth application. Without a valid registered OAuth application, this endpoint will return a 400 error. To use this action: 1. Register an OAuth application in the Supabase dashboard 2. Use the client_id from the registered application 3. Ensure redirect_uri matches one of the registered callback URLs" }, { "slug": "SUPABASE_BETA_CHECK_VANITY_SUBDOMAIN_AVAILABILITY", "name": "Check vanity subdomain availability", "description": "Checks if a specific vanity subdomain is available for a Supabase project; this action does not reserve or assign the subdomain." }, { "slug": "SUPABASE_BETA_CREATE_READ_REPLICA", "name": "Setup read replica for project", "description": "Provisions a read-only replica for a Supabase project in a specified, Supabase-supported AWS region to enhance read performance and reduce latency." }, { "slug": "SUPABASE_BETA_ENABLE_DATABASE_WEBHOOKS", "name": "Enable project database webhooks", "description": "Enables database webhooks for the Supabase project `ref`, triggering real-time notifications for INSERT, UPDATE, or DELETE events." }, { "slug": "SUPABASE_BETA_GET_PROJECT_CUSTOM_HOSTNAME_CONFIG", "name": "Beta get project's custom hostname config", "description": "Retrieves a Supabase project's custom hostname configuration, including its status, SSL certificate, and ownership verification, noting that availability may depend on the project's plan." }, { "slug": "SUPABASE_BETA_GET_PROJECT_NETWORK_BANS", "name": "Retrieve network bans for project", "description": "Retrieves the list of banned IPv4 addresses for a Supabase project using its unique project reference string; this is a read-only operation." }, { "slug": "SUPABASE_BETA_GET_PROJECT_NETWORK_RESTRICTIONS", "name": "Get project network restrictions", "description": "Retrieves the network restriction settings (IP allowlists) for a Supabase project. Use this action to: - Check which IPv4/IPv6 CIDR blocks are allowed to connect to the project's database - Verify if network restrictions are enabled (entitlement: \"allowed\") or disabled (\"disallowed\") - Audit current network security configuration - Check if network restrictions have been modified (old_config present) Note: Default values 0.0.0.0/0 (IPv4) and ::/0 (IPv6) mean all IPs are allowed. Network restrictions require a Pro, Team, or Enterprise plan." }, { "slug": "SUPABASE_BETA_GET_PROJECT_PGSODIUM_CONFIG", "name": "Get project pgsodium config", "description": "Retrieves the PGSodium configuration, including the root encryption key, for an existing Supabase project identified by its `ref`." }, { "slug": "SUPABASE_BETA_GET_PROJECT_SSL_ENFORCEMENT_CONFIG", "name": "Get project SSL enforcement configuration", "description": "Retrieves the SSL enforcement configuration for a specified Supabase project, indicating if SSL connections are mandated for its database." }, { "slug": "SUPABASE_BETA_GET_VANITY_SUBDOMAIN_CONFIG", "name": "Get current vanity subdomain config", "description": "Fetches the current vanity subdomain configuration, including its status and custom domain name, for a Supabase project identified by its reference ID." }, { "slug": "SUPABASE_BETA_REMOVE_NETWORK_BANS", "name": "Remove project network bans", "description": "Removes specified IPv4 addresses from a Supabase project's network ban list, granting immediate access; IPs not currently banned are ignored." }, { "slug": "SUPABASE_BETA_REMOVE_READ_REPLICA", "name": "Remove read replica", "description": "Remove a read replica from a Supabase project (Pro plan or higher required). This beta endpoint initiates the removal of a specified read replica database. The operation is irreversible. Before removal, ensure all application traffic is redirected from the replica to the primary database. Requirements: - Project must be on Pro plan or higher - Bearer token with infra_read_replicas_write permission (FGA) - Valid read replica database identifier Note: Returns 201 on success with an empty response body." }, { "slug": "SUPABASE_BETA_RUN_SQL_QUERY", "name": "Execute project database query", "description": "Executes a given SQL query against the project's database; use for advanced data operations or when standard API endpoints are insufficient, ensuring queries are valid PostgreSQL and sanitized. Use the get_table_schemas or generate_type_script_types tool to retrieve the table schema, then base your query on it." }, { "slug": "SUPABASE_BETA_UPDATE_PROJECT_NETWORK_RESTRICTIONS", "name": "Beta update project network restrictions", "description": "Updates and applies network access restrictions (IPv4/IPv6 CIDR lists) for a Supabase project, which may terminate existing connections not matching the new rules." }, { "slug": "SUPABASE_BETA_UPGRADE_PROJECT_POSTGRES_VERSION", "name": "Upgrade the project's PostgreSQL version", "description": "Initiates an asynchronous upgrade of a Supabase project's PostgreSQL database to a specified `target_version` from a selected `release_channel`, returning a `tracking_id` to monitor status; the `target_version` must be available in the chosen channel." }, { "slug": "SUPABASE_COUNT_ACTION_RUNS", "name": "Count action runs", "description": "Counts the number of action runs for a Supabase project using a HEAD request. Use this when you need to retrieve the total count of action runs without fetching the full list of runs." }, { "slug": "SUPABASE_CREATE_A_PROJECT", "name": "Create new project", "description": "Creates a new Supabase project, requiring a unique name (no dots) within the organization; project creation is asynchronous." }, { "slug": "SUPABASE_CREATE_BULK_SECRETS", "name": "Bulk create secrets", "description": "Tool to bulk create secrets for a Supabase project. Use when you need to create multiple project secrets at once. Each secret name must not start with SUPABASE_." }, { "slug": "SUPABASE_CREATE_DATABASE_BRANCH", "name": "Create a database branch", "description": "Creates a new, isolated database branch from an existing Supabase project (identified by `ref`), useful for setting up separate environments like development or testing, which can optionally be linked to a Git branch." }, { "slug": "SUPABASE_CREATE_FUNCTION", "name": "Create a function", "description": "Creates a new serverless Edge Function for a Supabase project (identified by `ref`), requiring valid JavaScript/TypeScript in `body` and a project-unique `slug` identifier." }, { "slug": "SUPABASE_CREATE_LOGIN_ROLE", "name": "Create CLI login role", "description": "Creates a temporary CLI login role for database access with specified permissions; use when setting up CLI authentication for development or administrative tasks." }, { "slug": "SUPABASE_CREATE_ORGANIZATION", "name": "Create an organization", "description": "Creates a new Supabase organization, which serves as a top-level container for projects, billing, and team access." }, { "slug": "SUPABASE_CREATE_PROJECT_SIGNING_KEY", "name": "Create project signing key", "description": "Create a new signing key for JWT authentication in a Supabase project. The key is created in standby status by default and must be activated separately." }, { "slug": "SUPABASE_CREATE_SSO_PROVIDER", "name": "Create SSO provider configuration", "description": "Creates a new SAML 2.0 Single Sign-On (SSO) provider for a Supabase project, requiring either `metadata_xml` or `metadata_url` for SAML IdP configuration." }, { "slug": "SUPABASE_CREATE_THIRD_PARTY_AUTH_INTEGRATION", "name": "Create a new third-party auth integration", "description": "Call this to add a new third-party authentication method (OIDC or JWKS) to a Supabase project for integrating external identity providers (e.g., for SSO); the API may also support `custom_jwks` if sent directly." }, { "slug": "SUPABASE_DELETE_ALL_BRANCHES", "name": "Delete all branches", "description": "Disables preview branching for a Supabase project, which deletes all remaining branches. IMPORTANT: Before calling this endpoint, you must manually delete all non-default branches. The API will reject the request with a 422 error if non-default branches exist. Use this action when you need to completely disable the preview branching feature for a project. This action is irreversible - all branches will be permanently removed and preview branching will be disabled. Requirements: - Preview branching must be enabled on the project - All non-default branches must be deleted first - Project must be on Pro plan or above to have preview branching" }, { "slug": "SUPABASE_DELETE_CUSTOM_HOSTNAME_CONFIG", "name": "Delete custom hostname config", "description": "Deletes an active custom hostname configuration for the project identified by `ref`, reverting to the default Supabase-provided hostname; this action immediately makes the project inaccessible via the custom domain and requires subsequent updates to client, OAuth, and DNS settings." }, { "slug": "SUPABASE_DELETE_DATABASE_BRANCH", "name": "Delete branch by id", "description": "Permanently and irreversibly deletes a specific, non-default database branch by its `branch_id`, without affecting other branches." }, { "slug": "SUPABASE_DELETE_EDGE_FUNCTION", "name": "Delete edge function", "description": "Deletes an Edge Function from a Supabase project by its slug. Use this action when you need to permanently remove a deployed Edge Function that is no longer needed or should be replaced. This action is irreversible — the function cannot be recovered once deleted, though you can redeploy it from source if needed." }, { "slug": "SUPABASE_DELETE_FUNCTION", "name": "Delete an edge function by slug", "description": "Permanently deletes a specific Edge Function (by `function_slug`) from a Supabase project (by `ref`); this action is irreversible and requires prior existence of both project and function." }, { "slug": "SUPABASE_DELETE_LOGIN_ROLES", "name": "Delete CLI login roles", "description": "[Beta] Deletes existing login roles used by the Supabase CLI for the specified project. Use when you need to remove CLI authentication roles that were previously created for project access." }, { "slug": "SUPABASE_DELETE_PROJECT", "name": "Delete a project", "description": "Permanently and irreversibly deletes a Supabase project and all associated resources, including databases, storage, and configurations. This action is irreversible — the project cannot be recovered once deleted. Use when you need to completely remove a project from your organization." }, { "slug": "SUPABASE_DELETE_PROJECT_VANITY_SUBDOMAIN", "name": "Delete vanity subdomain for project", "description": "Permanently and irreversibly deletes an active vanity subdomain configuration for the specified Supabase project, reverting it to its default Supabase URL." }, { "slug": "SUPABASE_DELETE_SECRETS", "name": "Bulk delete secrets", "description": "Deletes one or more secrets from a Supabase project by their names. This action is irreversible - deleted secrets cannot be recovered. Use this action when you need to remove environment variables or configuration secrets that are no longer needed or should be replaced. Supports both single and bulk deletion operations through the same endpoint." }, { "slug": "SUPABASE_DELETE_SSO_PROVIDER", "name": "Remove an SSO provider", "description": "Deletes a specific SSO provider by its ID (`provider_id`) from a Supabase project (`ref`), which disables it and returns its details; ensure this action will not inadvertently lock out users." }, { "slug": "SUPABASE_DEPLOY_FUNCTION", "name": "Deploy function", "description": "Deploys Edge Functions to a Supabase project using multipart upload." }, { "slug": "SUPABASE_DISABLE_PREVIEW_BRANCHING", "name": "Disable preview branching", "description": "Disables the preview branching feature for an existing Supabase project, identified by its unique reference ID (`ref`). Note: Preview branching must be enabled on the project for this operation to succeed. If the project does not have preview branching enabled, a 422 error will be returned." }, { "slug": "SUPABASE_DISABLE_PROJECT_READONLY", "name": "Disable project readonly mode", "description": "Temporarily disables a Supabase project's read-only mode for 15 minutes to allow write operations (e.g., for maintenance or critical updates), after which it automatically reverts to read-only." }, { "slug": "SUPABASE_EXCHANGE_OAUTH_TOKEN", "name": "Exchange auth code for access and refresh token", "description": "(Beta) Implements the OAuth 2.0 token endpoint to exchange an authorization code or refresh token for access/refresh tokens, based on `grant_type`. This is a standard OAuth 2.0 token endpoint that uses application/x-www-form-urlencoded content type as per OAuth 2.0 specification. Requires a valid registered OAuth application client_id and client_secret. For authorization_code grant type: - Requires valid authorization code obtained from the OAuth authorization flow - Optionally requires code_verifier if PKCE was used during authorization For refresh_token grant type: - Requires valid refresh_token from a previous token exchange" }, { "slug": "SUPABASE_GENERATE_TYPESCRIPT_TYPES", "name": "Generate TypeScript types", "description": "Generates and retrieves TypeScript types from a Supabase project's database; any schemas specified in `included_schemas` must exist in the project." }, { "slug": "SUPABASE_GET_ACTION_RUN", "name": "Get action run status", "description": "Retrieves the status and details of a specific action run, including its steps, timestamps, and configuration. Use this to monitor or check the progress of an action execution." }, { "slug": "SUPABASE_GET_ACTION_RUN_LOGS", "name": "Get action run logs", "description": "Retrieves the execution logs for a specific action run by its ID. Use this to debug action executions, view output messages, and investigate errors that occurred during action runs." }, { "slug": "SUPABASE_GET_AUTH_CONFIG", "name": "Get project auth config", "description": "Retrieves the complete authentication configuration for a Supabase project. Use this action when you need to inspect auth settings, OAuth provider configurations, MFA policies, email/SMS templates, security policies, or webhook hooks. Returns all auth configuration fields including enabled providers (Apple, Google, GitHub, etc.), JWT settings, rate limits, password requirements, session policies, and mailer configuration. This is a read-only operation that does not modify any settings." }, { "slug": "SUPABASE_GET_AVAILABLE_REGIONS", "name": "Get Available Regions", "description": "Tool to get the list of available regions for creating a new Supabase project. Use when you need to determine which regions are available for project deployment, or to get region recommendations based on geographic location and instance size requirements. Note: This is a Beta endpoint." }, { "slug": "SUPABASE_GET_BRANCH", "name": "Get a database branch", "description": "Retrieves detailed information about a specific database branch by its name and project reference. Use this to check branch status, configuration, and metadata before performing operations on the branch." }, { "slug": "SUPABASE_GET_DATABASE_BRANCH_CONFIG", "name": "Get database branch config", "description": "Retrieves the read-only configuration and status for a Supabase database branch, typically for monitoring or verifying its settings." }, { "slug": "SUPABASE_GET_DATABASE_METADATA", "name": "Get Database Metadata", "description": "Gets database metadata for the given project. Returns information about databases, schemas, and tables structure. Note: This endpoint is deprecated and may be removed in future versions." }, { "slug": "SUPABASE_GET_FUNCTION", "name": "Retrieve a function", "description": "Retrieves detailed information, metadata, configuration, and status for a specific Edge Function using its project reference ID and function slug." }, { "slug": "SUPABASE_GET_FUNCTION_BODY", "name": "Retrieve a function body", "description": "Retrieves the source code (body) for a specified serverless Edge Function using its project reference and function slug; this is a read-only operation that does not execute the function or return runtime logs." }, { "slug": "SUPABASE_GET_HEALTH", "name": "Get API Health Status", "description": "Tool to check the health status of the Supabase API. Use when you need to verify API availability or troubleshoot connectivity issues." }, { "slug": "SUPABASE_GET_JIT_ACCESS_CONFIG", "name": "Get JIT access config", "description": "[Beta] Retrieves the project's just-in-time (JIT) access configuration, including user roles and their expiration settings. Use this to check temporary access grants and their validity periods." }, { "slug": "SUPABASE_GET_LEGACY_SIGNING_KEY", "name": "Get legacy signing key", "description": "Retrieves the signing key information for the JWT secret imported as signing key for this project. This endpoint is deprecated and will be removed in the future; check for HTTP 404 Not Found which indicates the endpoint is no longer available." }, { "slug": "SUPABASE_GET_MIGRATION", "name": "Get a migration", "description": "Retrieves a specific database migration entry from the migration history using its version identifier. Use when you need to inspect migration details, SQL statements, or rollback commands for a specific migration version." }, { "slug": "SUPABASE_GET_ORGANIZATION", "name": "Get information about an organization", "description": "Fetches comprehensive details for a specific Supabase organization using its unique slug." }, { "slug": "SUPABASE_GET_PERFORMANCE_ADVISORS", "name": "Get performance advisors", "description": "Retrieves project performance advisors for a Supabase project. Returns a list of performance lints that identify potential issues and optimization opportunities. Note: This endpoint is deprecated." }, { "slug": "SUPABASE_GET_PROJECT", "name": "Get project", "description": "Retrieves detailed information about a specific Supabase project by its unique reference ID. Use when you need to get comprehensive project details including status, database configuration, and metadata. Authentication: - Requires a valid Bearer token in the Authorization header. - Token format: 'Bearer ' where access_token is either: - A Personal Access Token (PAT) generated from https://supabase.com/dashboard/account/tokens - An OAuth2 access token with the 'project_admin_read' scope Required Scope: - project_admin_read: Allows retrieval of project information. Returns: Project object containing id, ref, name, organization details, region, status, database configuration, and created_at timestamp." }, { "slug": "SUPABASE_GET_PROJECT_API_KEY", "name": "Get project API key", "description": "Retrieves details of a specific API key for a Supabase project by its UUID. Use when you need to inspect a single key's configuration, type, or metadata." }, { "slug": "SUPABASE_GET_PROJECT_API_KEYS", "name": "Get project API keys", "description": "Retrieves all API keys for an existing Supabase project, specified by its unique reference ID (`ref`); this is a read-only operation." }, { "slug": "SUPABASE_GET_PROJECT_LEGACY_API_KEYS", "name": "Get project legacy API keys status", "description": "Checks whether JWT-based legacy API keys (anon, service_role) are enabled for a Supabase project. This API endpoint is deprecated and may be removed in the future (returns HTTP 404 Not Found when unavailable)." }, { "slug": "SUPABASE_GET_PROJECT_LOGS", "name": "Get project logs", "description": "Retrieves analytics logs for a Supabase project. Use this to fetch and analyze project logs including edge function logs, database logs, and API logs for monitoring and debugging." }, { "slug": "SUPABASE_GET_PROJECT_PGBOUNCER_CONFIG", "name": "Get project PgBouncer config", "description": "Retrieves the active PgBouncer configuration (PostgreSQL connection pooler) for a Supabase project, used for performance tuning, auditing, or getting the connection string." }, { "slug": "SUPABASE_GET_PROJECT_POSTGRES_CONFIG", "name": "Get project postgres config", "description": "Retrieves the current read-only PostgreSQL database configuration for a specified Supabase project's `ref`, noting that some advanced or security-sensitive details might be omitted from the response." }, { "slug": "SUPABASE_GET_PROJECT_POSTGREST_CONFIG", "name": "Get project's PostgREST config", "description": "Retrieves the PostgREST configuration for a specific Supabase project." }, { "slug": "SUPABASE_GET_PROJECT_READONLY_MODE_STATUS", "name": "Get project's read-only mode status", "description": "Retrieves the read-only mode status for a specified Supabase project to check its operational state; this action does not change the read-only state." }, { "slug": "SUPABASE_GET_PROJECT_SIGNING_KEYS", "name": "Get project signing keys", "description": "Tool to list all signing keys for a Supabase project. Use when you need to retrieve JWT signing keys for authentication verification or rotation management." }, { "slug": "SUPABASE_GET_PROJECT_SUPAVISOR_CONFIG", "name": "Get project Supavisor configuration", "description": "Retrieves the Supavisor (connection pooler) configuration for a specified Supabase project, identified by its reference ID." }, { "slug": "SUPABASE_GET_PROJECT_UPGRADE_ELIGIBILITY", "name": "Get Project Upgrade Eligibility", "description": "Checks a Supabase project's eligibility for an upgrade, verifying compatibility and identifying potential issues; this action does not perform the actual upgrade." }, { "slug": "SUPABASE_GET_PROJECT_UPGRADE_STATUS", "name": "Get project upgrade status", "description": "Retrieves the latest status of a Supabase project's database upgrade for monitoring purposes; does not initiate or modify upgrades." }, { "slug": "SUPABASE_GET_RESUMABLE_UPLOAD_BASE_OPTIONS", "name": "Get TUS resumable upload base options", "description": "Handles OPTIONS request for TUS Resumable uploads to discover server capabilities. Use when preparing resumable upload requests to verify supported TUS protocol versions and extensions." }, { "slug": "SUPABASE_GET_RESUMABLE_UPLOAD_OPTIONS", "name": "Get TUS resumable upload options", "description": "Handles OPTIONS request for TUS Resumable uploads to discover server capabilities. Use when preparing resumable upload requests to verify supported TUS protocol versions and extensions." }, { "slug": "SUPABASE_GET_SECURITY_ADVISORS", "name": "Get Security Advisors", "description": "Retrieves security advisor findings and recommendations for a Supabase project. Use when you need to audit project security posture, identify SQL-based security issues, or get remediation guidance. Note: This endpoint is deprecated and may be removed in future API versions." }, { "slug": "SUPABASE_GETS_PROJECT_S_AUTH_CONFIG", "name": "Get project's auth config", "description": "Retrieves the project's complete read-only authentication configuration, detailing all settings (e.g., providers, MFA, email/SMS, JWT, security policies) but excluding sensitive secrets." }, { "slug": "SUPABASE_GETS_PROJECT_S_SERVICE_HEALTH_STATUS", "name": "Get project's service health status", "description": "Retrieves the current health status for a Supabase project, for specified services or all services if the 'services' list is omitted." }, { "slug": "SUPABASE_GET_SQL_SNIPPET", "name": "Get a specific SQL snippet", "description": "Retrieves a specific SQL snippet by its unique identifier." }, { "slug": "SUPABASE_GET_SSO_PROVIDER", "name": "Get a SSO provider by its UUID", "description": "Retrieves the configuration details for a specific Single Sign-On (SSO) provider (e.g., SAML, Google, GitHub, Azure AD), identified by its UUID, within a Supabase project." }, { "slug": "SUPABASE_GET_TABLE_SCHEMAS", "name": "Get Table Schemas", "description": "Retrieves column details, types, and constraints for multiple database tables to help debug schema issues and write accurate SQL queries. Use the SUPABASE_LIST_TABLES action first to discover available tables, the fetch their detailed schemas." }, { "slug": "SUPABASE_HANDLE_RESUMABLE_UPLOAD_SIGN_OPTIONS", "name": "OPTIONS for resumable upload sign", "description": "Handles CORS preflight OPTIONS request for TUS resumable upload signing. Use when preparing cross-origin resumable upload requests to verify allowed methods and headers." }, { "slug": "SUPABASE_HANDLE_RESUMABLE_UPLOAD_SIGN_OPTIONS_WITH_ID", "name": "OPTIONS for resumable upload sign", "description": "Handles CORS preflight OPTIONS request for TUS resumable upload signing endpoints. Use when preparing cross-origin resumable upload requests to verify allowed methods and headers." }, { "slug": "SUPABASE_INVOKE_EDGE_FUNCTION", "name": "Invoke Edge Function", "description": "Tool to invoke a deployed Supabase Edge Function over HTTPS. Use for testing and debugging Edge Functions with configurable method, headers, body, and authentication." }, { "slug": "SUPABASE_LIST_ALL_ORGANIZATIONS", "name": "List all organizations", "description": "Lists all organizations (ID and name only) associated with the Supabase account, excluding project details within these organizations." }, { "slug": "SUPABASE_LIST_ALL_PROJECTS", "name": "List all projects", "description": "Retrieves a list of all Supabase projects, including their ID, name, region, and status, for the authenticated user. Authentication: - Requires a valid Bearer token in the Authorization header. - Token format: 'Bearer ' where access_token is either: - A Personal Access Token (PAT) generated from https://supabase.com/dashboard/account/tokens - An OAuth2 access token with the 'Projects.Read' scope Required Scope: - Projects.Read: Allows retrieval of project metadata. Returns: List of Project objects containing id, name, organization_id, region, status, database info, and created_at." }, { "slug": "SUPABASE_LIST_BACKUPS", "name": "List project database backups", "description": "Lists all database backups for a Supabase project, providing details on existing backups but not creating new ones or performing restores; availability may depend on plan and configuration." }, { "slug": "SUPABASE_LIST_BRANCHES", "name": "List database branches", "description": "Lists all database branches for a specified Supabase project, providing information about each branch's status, configuration, and metadata. Use this action when you need to view all branches in a project, check branch statuses, or identify available branches before performing operations. Database branches are useful for isolated development and testing of schema changes." }, { "slug": "SUPABASE_LIST_BUCKETS", "name": "List all buckets", "description": "Retrieves a list of all storage buckets for a Supabase project, without returning bucket contents or access policies." }, { "slug": "SUPABASE_LIST_DATABASE_BRANCHES", "name": "List all database branches", "description": "Lists all database branches for a specified Supabase project, used for isolated development and testing of schema changes; ensure the project reference ID is valid." }, { "slug": "SUPABASE_LIST_FUNCTIONS", "name": "List all functions", "description": "Lists metadata for all Edge Functions in a Supabase project (specified by 'ref'), excluding function code or logs; the project must exist." }, { "slug": "SUPABASE_LIST_MIGRATION_HISTORY", "name": "List migration history", "description": "Retrieves the list of applied database migration versions for a Supabase project. Use this to track which migrations have been applied to the project's database. This is a read-only operation that requires the project reference ID." }, { "slug": "SUPABASE_LIST_ORGANIZATION_MEMBERS", "name": "List members of an organization", "description": "Retrieves all members of a Supabase organization, identified by its unique slug, including their user ID, username, email, role, and MFA status." }, { "slug": "SUPABASE_LIST_PROJECT_SECRETS", "name": "List project secrets", "description": "Retrieves all secrets (environment variables) for a Supabase project by its reference ID. Use this action when you need to view the secrets configured for a project, such as API keys, database URLs, or other environment variables. Note that secret values in the response may be masked for security reasons." }, { "slug": "SUPABASE_LIST_SECRETS", "name": "List all secrets", "description": "Retrieves all secrets for a Supabase project using its reference ID; secret values in the response may be masked." }, { "slug": "SUPABASE_LIST_SQL_SNIPPETS", "name": "List SQL snippets for the logged in user", "description": "Retrieves a list of SQL snippets for the logged-in user, optionally filtered by a specific Supabase project if `project_ref` is provided." }, { "slug": "SUPABASE_LIST_SSO_PROVIDERS", "name": "List all SSO providers", "description": "Lists all configured Single Sign-On (SSO) providers for a Supabase project, requiring the project reference ID (`ref`) of an existing project." }, { "slug": "SUPABASE_LIST_TABLES", "name": "List Database Tables", "description": "Lists all tables and views in specified database schemas, providing a quick overview of database structure to help identify available tables before fetching detailed schemas." }, { "slug": "SUPABASE_MERGE_BRANCH", "name": "Merge a database branch", "description": "Merges a database branch, applying all schema changes and migrations from the branch to the target database. Use this action when you need to promote changes from a database branch to production or another target environment after testing and validation are complete. This operation is irreversible - once merged, the changes cannot be automatically rolled back." }, { "slug": "SUPABASE_PATCH_MIGRATION", "name": "Patch a migration", "description": "[Beta] Patches an existing entry in the project's migration history, updating the name or rollback script. Use this to correct migration metadata after the migration has been created." }, { "slug": "SUPABASE_PATCH_NETWORK_RESTRICTIONS", "name": "Patch project network restrictions", "description": "Updates project's network restrictions by incrementally adding or removing IPv4/IPv6 CIDR blocks. Use when you need to modify existing restrictions without replacing the entire configuration." }, { "slug": "SUPABASE_PUSH_BRANCH", "name": "Push a database branch", "description": "Pushes a database branch, applying migrations and changes to the specified branch. Use when you need to deploy schema changes or migrations to a database branch." }, { "slug": "SUPABASE_RESET_DATABASE_BRANCH", "name": "Reset a database branch", "description": "Resets an existing Supabase database branch, identified by `branch_id`, to its initial clean state, irreversibly deleting all its current data and schema changes." }, { "slug": "SUPABASE_RESTORE_PITR_BACKUP", "name": "Restore database PITR backup", "description": "Restores a Supabase project's database to a specific Unix timestamp using Point-in-Time Recovery (PITR), overwriting the current state; requires a paid plan with PITR and physical backups enabled." }, { "slug": "SUPABASE_RUN_READ_ONLY_QUERY", "name": "Execute read-only database query", "description": "[Beta] Run a SQL query as supabase_read_only_user. Use when you need to safely execute SELECT queries without risk of modifying data. Only read operations are allowed." }, { "slug": "SUPABASE_SELECT_FROM_TABLE", "name": "Select From Table", "description": "Tool to select rows from a Supabase/PostgREST table. Use for read-only queries with filtering, sorting, and pagination." }, { "slug": "SUPABASE_UPDATE_A_FUNCTION", "name": "Update a function", "description": "Updates an existing Supabase Edge Function's properties (like name, slug, source code, JWT settings, import map) identified by project `ref` and `function_slug`, supporting plain text code or ESZIP for the body. Use RETRIEVE_A_FUNCTION_BODY action first to get the current source code, as this action requires sending the complete function code, not just the changes." }, { "slug": "SUPABASE_UPDATE_API_KEY", "name": "Update API key", "description": "Updates an existing Supabase project API key's metadata including name, description, and JWT template configuration. This action modifies key properties without regenerating the actual key value. Use this action when you need to change a key's display name, update its description for better organization, or modify the JWT role template for secret-type keys. Note: This does not rotate or regenerate the key string itself - the key value remains unchanged unless explicitly revealed with reveal=true." }, { "slug": "SUPABASE_UPDATE_BRANCH", "name": "Update branch configuration", "description": "Updates the configuration of a Supabase database branch, allowing modification of its name, associated Git branch, notification URL, persistence settings, and status. Use this action when you need to modify branch settings after creation, such as linking to a different Git branch, changing the branch name, or updating persistence behavior. Note: Database branching requires a paid Supabase plan (Pro or higher)." }, { "slug": "SUPABASE_UPDATE_DATABASE_BRANCH_CONFIG", "name": "Update database branch config", "description": "Updates the configuration of a Supabase database branch, allowing modification of its name, associated Git branch, reset-on-push behavior, persistence, and status. Note: Database branching requires a paid Supabase plan (Pro or higher). This action requires a valid branch_id which must be exactly 20 lowercase alphabetic characters. Authentication: - Requires a valid Bearer token in the Authorization header. - Token format: 'Bearer ' Required Scope: - Environment:Write" }, { "slug": "SUPABASE_UPDATE_DATABASE_PASSWORD", "name": "Update database password", "description": "Updates the database password for a Supabase project. Use when needing to rotate credentials or recover database access." }, { "slug": "SUPABASE_UPDATE_FUNCTIONS", "name": "Bulk update functions", "description": "Tool to bulk update Edge Functions in a Supabase project. Use when you need to update multiple functions at once with new configurations such as status, version, or other properties." }, { "slug": "SUPABASE_UPDATE_JIT_ACCESS_CONFIG", "name": "Update JIT access config", "description": "[Beta] Update a Supabase project's just-in-time (JIT) access configuration. Use to enable or disable JIT access features for privileged operations on the project." }, { "slug": "SUPABASE_UPDATE_PGSODIUM_CONFIG", "name": "Update pgsodium root key", "description": "Critically updates or initializes a Supabase project's pgsodium root encryption key for security setup or key rotation, requiring secure backup of the new key to prevent irreversible data loss." }, { "slug": "SUPABASE_UPDATE_PROJECT", "name": "Update a project", "description": "Updates a Supabase project's configuration (currently supports updating the project name). Use when you need to rename an existing project." }, { "slug": "SUPABASE_UPDATE_PROJECT_AUTH_CONFIG", "name": "Update project's auth config", "description": "Update Supabase project Auth configuration via the Management API. Use to fix misconfigured Auth redirects, SMTP settings, or other auth parameters. Only provided fields are updated; others remain unchanged. Before updating, confirm the Auth service status is ACTIVE_HEALTHY by checking project health." }, { "slug": "SUPABASE_UPDATE_PROJECT_CUSTOM_HOSTNAME", "name": "Update project's custom hostname configuration", "description": "Updates the custom hostname for a Supabase project, requiring subsequent DNS changes to a user-controlled domain for SSL certificate issuance and domain ownership." }, { "slug": "SUPABASE_UPDATE_PROJECT_LEGACY_API_KEYS", "name": "Update project legacy API keys", "description": "Tool to disable or re-enable JWT-based legacy API keys (anon, service_role) for a Supabase project. Use when you need to toggle legacy API key access for security or migration purposes. Note: This API endpoint may be removed in the future - check for HTTP 404 Not Found if the endpoint is no longer available." }, { "slug": "SUPABASE_UPDATE_PROJECT_POSTGRES_CONFIG", "name": "Update project's postgres config", "description": "Updates specified PostgreSQL configuration parameters for an existing Supabase project (`ref`) to optimize database performance; note that unspecified parameters remain unchanged, and caution is advised as incorrect settings can impact stability or require a restart." }, { "slug": "SUPABASE_UPDATE_PROJECT_POSTGREST_CONFIG", "name": "Update project's PostgREST config", "description": "Updates PostgREST configuration settings (e.g., `max_rows`, `db_pool`, `db_schema`, `db_extra_search_path`) for a Supabase project to fine-tune API performance, data exposure, and database resource usage." }, { "slug": "SUPABASE_UPDATE_PROJECT_SUPAVISOR_CONFIG", "name": "Update database pooler config", "description": "Updates the Supavisor (database pooler) configuration, such as `default_pool_size`, for an existing Supabase project identified by `ref`; the `pool_mode` parameter in the request is deprecated and ignored." }, { "slug": "SUPABASE_UPDATE_SSL_ENFORCEMENT_CONFIG", "name": "Update SSL enforcement config", "description": "Updates the SSL enforcement configuration (enable/disable) for a specified Supabase project's database." }, { "slug": "SUPABASE_UPDATE_SSO_PROVIDER", "name": "Update an SSO provider by its UUID", "description": "Updates an existing SSO provider's SAML metadata, associated email domains, or attribute mappings for a Supabase project, identified by `ref` and `provider_id`." }, { "slug": "SUPABASE_UPSERT_MIGRATION", "name": "Upsert migration", "description": "Tool to upsert a database migration without applying it. Use when you need to track migration changes for a project. [Beta] This endpoint stores migration metadata without executing the SQL." }, { "slug": "SUPABASE_VERIFY_CUSTOM_HOSTNAME_DNS", "name": "Reverify custom hostname", "description": "Re-verifies DNS and SSL configurations for an existing custom hostname associated with a Supabase project." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "supabase_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "all" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The web address for the Supabase Management API. Most accounts can keep the default https://api.supabase.com — change it only if you self-host Supabase.", "required": true, "default": "https://api.supabase.com" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "supabase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The web address for the Supabase Management API. Most accounts can keep the default https://api.supabase.com — change it only if you self-host Supabase.", "required": true, "default": "https://api.supabase.com" }, { "name": "bearer_token", "displayName": "Supabase Personal Token", "type": "string", "description": "A personal access token starting with 'sbp_'. Create one at https://supabase.com/dashboard/account/tokens — it's shown only once, so copy it right away.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "outlook", "name": "Outlook", "logo": "https://logos.composio.dev/api/outlook", "description": "Outlook is Microsoft's email and calendaring platform integrating contacts and scheduling, enabling users to manage communications and events in a unified workspace", "category": "email", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 305, "triggerCount": 5, "version": "20260703_01", "tools": [ { "slug": "OUTLOOK_ACCEPT_EVENT", "name": "Accept calendar event invite", "description": "Accepts or tentatively accepts a calendar meeting invite on behalf of a user. Use this action when a user has received a meeting invitation and wants to indicate their attendance status (either confirmed or tentative). The organizer will receive a notification of the acceptance unless send_response is set to false." }, { "slug": "OUTLOOK_ADD_EVENT_ATTACHMENT", "name": "Add event attachment", "description": "Adds an attachment to a specific Outlook calendar event. Use when you need to attach a file or nested item to an existing event." }, { "slug": "OUTLOOK_ADD_MAIL_ATTACHMENT", "name": "Add mail attachment", "description": "Tool to add an attachment to an email message. Use when you have a message ID and need to attach a small (<3 MB) file or reference." }, { "slug": "OUTLOOK_BATCH_MOVE_MESSAGES", "name": "Batch move messages", "description": "Batch-move up to 20 Outlook messages to a destination folder in a single Microsoft Graph $batch call. Use when moving multiple messages to avoid per-message move API calls." }, { "slug": "OUTLOOK_BATCH_UPDATE_MESSAGES", "name": "Batch update messages", "description": "Batch-update up to 20 Outlook messages per call using Microsoft Graph JSON batching. Use when marking multiple messages read/unread or updating other properties to avoid per-message PATCH calls." }, { "slug": "OUTLOOK_CALENDAR_CREATE_EVENT", "name": "Create Calendar Event", "description": "Creates a new Outlook calendar event, ensuring `start_datetime` is chronologically before `end_datetime`." }, { "slug": "OUTLOOK_CANCEL_CALENDAR_EVENT", "name": "Cancel user's calendar event", "description": "Tool to cancel an event in a specific calendar for a specified user and send cancellation notifications to all attendees. Use when you need to cancel a meeting or event in a specific calendar on behalf of a user." }, { "slug": "OUTLOOK_CANCEL_CALENDAR_GROUP_CALENDAR_EVENT", "name": "Cancel user calendar group event", "description": "Tool to cancel an event in a user's calendar within a calendar group and send cancellation notifications to all attendees. Use when canceling a meeting or event for a specific user in a calendar that belongs to a calendar group." }, { "slug": "OUTLOOK_CANCEL_EVENT", "name": "Cancel user calendar event", "description": "Tool to cancel a calendar event for a specified user and send cancellation notifications to all attendees. Use when you need to cancel a meeting or event on behalf of a specific user." }, { "slug": "OUTLOOK_COPY_MAIL_FOLDER", "name": "Copy user's mail folder", "description": "Tool to copy a user's mail folder and its contents to another folder. Use when you need to duplicate a folder structure for a specific user's mailbox." }, { "slug": "OUTLOOK_COPY_ME_MAIL_FOLDER", "name": "Copy child mail folder", "description": "Tool to copy a child mail folder to a destination folder. Use when you need to duplicate a folder structure." }, { "slug": "OUTLOOK_COPY_MESSAGE", "name": "Copy message to folder", "description": "Tool to copy an email message to another folder within the user's mailbox. Use when duplicating messages to multiple folders for organization." }, { "slug": "OUTLOOK_COPY_MESSAGE_FROM_CHILD_FOLDER", "name": "Copy message from child folder", "description": "Tool to copy an email message from a child folder (nested folder) to another folder within the user's mailbox. Use when duplicating messages from nested folder structures." }, { "slug": "OUTLOOK_COPY_MESSAGE_FROM_MAIL_FOLDER", "name": "Copy user message from folder", "description": "Tool to copy a message from a specific user's mail folder to another folder. Use when you need to duplicate a message from a known source folder to a destination folder for a specific user." }, { "slug": "OUTLOOK_CREATE_ATTACHMENT_UPLOAD_SESSION", "name": "Create attachment upload session", "description": "Tool to create an upload session for large (>3 MB) message attachments. Use when you need to upload attachments in chunks." }, { "slug": "OUTLOOK_CREATE_ATTACHMENT_UPLOAD_SESSION_IN_CHILD_FOLDER", "name": "Create attachment upload session in child folder", "description": "Tool to create an upload session for large (>3 MB) message attachments in child mail folders. Use when you need to upload attachments to messages in nested folder structures." }, { "slug": "OUTLOOK_CREATE_CALENDAR", "name": "Create calendar", "description": "Tool to create a new calendar in the signed-in user's mailbox. Use when organizing events into a separate calendar." }, { "slug": "OUTLOOK_CREATE_CALENDAR_EVENT", "name": "Create Event in Calendar (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_CREATE_USER_CALENDAR_CALENDAR_EVENT instead. Tool to create a new event in a specific Outlook calendar. Use when you need to add an event to a particular calendar by its ID." }, { "slug": "OUTLOOK_CREATE_CALENDAR_EVENT_ATTACHMENT", "name": "Create calendar event attachment", "description": "Tool to create a new attachment for an event in a specific calendar. Use when you need to attach a file or item to an event within a particular calendar." }, { "slug": "OUTLOOK_CREATE_CALENDAR_EVENT_ATTACHMENT_UPLOAD_SESSION", "name": "Create calendar event attachment upload session", "description": "Tool to create an upload session for large calendar event attachments in a specific calendar. Use when attaching files larger than 3 MB to Outlook calendar events in a specific calendar." }, { "slug": "OUTLOOK_CREATE_CALENDAR_EVENT_IN_CALENDAR", "name": "Create event in specific calendar", "description": "Tool to create a new event in a specific calendar for a user. Use when you need to create events in a specific calendar (e.g., shared or secondary calendars)." }, { "slug": "OUTLOOK_CREATE_CALENDAR_GROUP", "name": "Create calendar group", "description": "Tool to create a new calendar group for a user. Use when needing to organize calendars into groups." }, { "slug": "OUTLOOK_CREATE_CALENDAR_GROUP_CALENDAR_EVENT_ATTACHMENT", "name": "Create user calendar group event attachment", "description": "Tool to create a new attachment for an event in a calendar within a calendar group for a specific user. Use when you need to attach a file or item to an event in a user's calendar group." }, { "slug": "OUTLOOK_CREATE_CALENDAR_GROUP_CALENDAR_EVENT_EXTENSION", "name": "Create event extension", "description": "Tool to create a new open extension on a calendar event within a specific calendar group and calendar. Use when you need to store custom data with an event." }, { "slug": "OUTLOOK_CREATE_CALENDAR_PERMISSION", "name": "Create Calendar Permission", "description": "Tool to create a calendar permission for a specific calendar in a calendar group. Use when granting access to a calendar for another user." }, { "slug": "OUTLOOK_CREATE_CAL_GROUP_EVENT_ATTACH_UPLOAD", "name": "Create calendar group event attachment upload session", "description": "Tool to create an upload session for large calendar group event attachments. Use when attaching files larger than 3 MB to events in calendar groups." }, { "slug": "OUTLOOK_CREATE_CONTACT", "name": "Create contact", "description": "Creates a new contact in a Microsoft Outlook user's contacts folder." }, { "slug": "OUTLOOK_CREATE_CONTACT_FOLDER", "name": "Create contact folder", "description": "Tool to create a new contact folder in the user's mailbox. Use when needing to organize contacts into custom folders." }, { "slug": "OUTLOOK_CREATE_CONTACT_FOLDER_CHILD_FOLDER", "name": "Create user contact folder child folder", "description": "Tool to create a child contact folder within a parent contact folder for a specific user. Use when you need to organize contacts into nested folder hierarchies for a given user." }, { "slug": "OUTLOOK_CREATE_DRAFT", "name": "Create email draft", "description": "Creates a new Outlook email draft with subject, body, recipients, and an optional attachment. This action creates a standalone draft for new conversations. To create a draft reply to an existing conversation/message, use the OUTLOOK_CREATE_DRAFT_REPLY action instead." }, { "slug": "OUTLOOK_CREATE_DRAFT_REPLY", "name": "Create a draft reply", "description": "Creates a draft reply in the specified user's Outlook mailbox to an existing message (identified by a valid `message_id`), optionally including a `comment` and CC/BCC recipients." }, { "slug": "OUTLOOK_CREATE_EMAIL_RULE", "name": "Create Email Rule", "description": "Create email rule filter with conditions and actions" }, { "slug": "OUTLOOK_CREATE_EVENT_ATTACHMENT", "name": "Create user calendar event attachment", "description": "Tool to create a new attachment for a user's calendar event. Use when you need to attach a file or item to an existing event in a specific user's calendar." }, { "slug": "OUTLOOK_CREATE_EVENT_ATTACHMENT_UPLOAD_SESSION", "name": "Create event attachment upload session", "description": "Tool to create an upload session for large calendar event attachments. Use when attaching files larger than 3 MB to Outlook calendar events." }, { "slug": "OUTLOOK_CREATE_FORWARD_DRAFT", "name": "Create user mail folder message forward draft", "description": "Tool to create a forward draft of an Outlook message for a specific user. Use when you need to prepare a forward email that can be edited before sending. The draft is created in the Drafts folder with the FW: prefix in the subject line." }, { "slug": "OUTLOOK_CREATE_MAIL_FOLDER", "name": "Create mail folder", "description": "Tool to create a new mail folder. Use when you need to organize email into a new folder." }, { "slug": "OUTLOOK_CREATE_MAIL_FOLDER_MESSAGE", "name": "Create message in mail folder", "description": "Tool to create a new message in a specific mail folder. Use when you need to create a draft message in a particular folder (e.g., drafts, custom folders)." }, { "slug": "OUTLOOK_CREATE_MAIL_FOLDER_MESSAGE_ATTACHMENT", "name": "Create mail folder message attachment", "description": "Tool to add an attachment to a message in a specific mail folder. Use when you need to attach a file to a message located in a particular mail folder." }, { "slug": "OUTLOOK_CREATE_MAIL_FOLDER_MESSAGE_ATTACHMENT_UPLOAD_SESSION", "name": "Create mail folder message attachment upload session", "description": "Tool to create an upload session for large (>3 MB) message attachments in a specific mail folder. Use when you need to upload attachments in chunks to a message located in a mail folder." }, { "slug": "OUTLOOK_CREATE_MAIL_FOLDER_MESSAGE_RULE", "name": "Create User Mail Folder Message Rule", "description": "Tool to create a message rule in a user's mail folder. Use when automating message processing with filters and actions." }, { "slug": "OUTLOOK_CREATE_MASTER_CATEGORY", "name": "Create master category (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_CREATE_USER_MASTER_CATEGORY instead. Tool to create a new category in the user's master category list. Use after selecting a unique display name." }, { "slug": "OUTLOOK_CREATE_ME_CALENDAR_EVENT_EXTENSION", "name": "Create user calendar event extension", "description": "Tool to create a new open extension on a calendar event for a specific user. Use when you need to store custom data with an event." }, { "slug": "OUTLOOK_CREATE_ME_CALENDAR_PERMISSION", "name": "Create user calendar permission", "description": "Tool to create a new calendar permission for a specific user's calendar. Use when you need to share another user's calendar with someone or grant access with specific permission levels." }, { "slug": "OUTLOOK_CREATE_ME_CHILD_FOLDER_MESSAGE", "name": "Create message in user's child folder", "description": "Tool to create a new draft message in a child folder within a user's mail folder. Use when creating messages in nested folder structures for a specific user's mailbox." }, { "slug": "OUTLOOK_CREATE_ME_CONTACT_FOLDERS_CONTACTS", "name": "Create user contact in folder", "description": "Tool to create a new contact in a specific user's contact folder. Use when you need to add a contact to a particular folder for a specified user." }, { "slug": "OUTLOOK_CREATE_ME_CONTACT_FOLDERS_CONTACTS_EXTENSIONS", "name": "Create user contact extension", "description": "Tool to create a new open extension on a contact within a user's contact folder. Use when you need to store custom data with a contact." }, { "slug": "OUTLOOK_CREATE_ME_CONTACT_FOLDERS_EXTENSIONS", "name": "Create contact extension", "description": "Tool to create a new open extension on a contact within a child folder. Use when you need to store custom data with a contact." }, { "slug": "OUTLOOK_CREATE_ME_CONTACT_IN_CHILD_FOLDER", "name": "Create contact in child folder", "description": "Tool to create a new contact in a child folder within a contact folder. Use when you need to add a contact to a specific nested folder structure." }, { "slug": "OUTLOOK_CREATE_ME_EVENT", "name": "Create calendar event for user", "description": "Tool to create a new calendar event for a specific user. Use when you need to create events in a user's calendar." }, { "slug": "OUTLOOK_CREATE_ME_EVENT_ATTACHMENT_UPLOAD_SESSION", "name": "Create me event attachment upload session", "description": "Tool to create an upload session for large event attachments. Use when attaching files larger than 3 MB to the authenticated user's Outlook events." }, { "slug": "OUTLOOK_CREATE_ME_FORWARD_DRAFT", "name": "Create forward draft", "description": "Tool to create a draft forward of an existing message. Use when you need to prepare a forward that can be edited before sending. The draft can be updated with recipients and additional content before being sent." }, { "slug": "OUTLOOK_CREATE_ME_INFERENCE_CLASSIFICATION_OVERRIDE", "name": "Create user Focused Inbox override", "description": "Tool to create a Focused Inbox override for a sender identified by SMTP address for a specific user. Use when you need to configure messages from a specific sender to always be classified as focused or other for a particular user." }, { "slug": "OUTLOOK_CREATE_ME_MAIL_FOLDER_MESSAGE_REPLY_ALL_DRAFT", "name": "Create reply-all draft for mail folder message", "description": "Deprecated: Use OUTLOOK_CREATE_REPLY_ALL_DRAFT instead, which supports both /me and /users/{user_id} endpoints with timezone support." }, { "slug": "OUTLOOK_CREATE_ME_MESSAGE_REPLY_ALL_DRAFT", "name": "Create reply-all draft for user message", "description": "Tool to create a draft reply-all to a user's message. Use when you need to create a draft reply to the sender and all recipients of an email message in a user's mailbox." }, { "slug": "OUTLOOK_CREATE_ME_REPLY_ALL_DRAFT", "name": "Create reply-all draft for child folder message", "description": "Tool to create a draft reply-all to a message in a child folder. Use when you need to create a draft reply to the sender and all recipients of a message located in a subfolder within a mail folder." }, { "slug": "OUTLOOK_CREATE_ME_REPLY_DRAFT", "name": "Create reply draft", "description": "Deprecated: Use OUTLOOK_CREATE_DRAFT_REPLY instead, which adds comment, cc_emails, and bcc_emails support." }, { "slug": "OUTLOOK_CREATE_MESSAGE_ATTACHMENT", "name": "Create message attachment", "description": "Tool to create an attachment for a message. Use when you need to attach a file or item to an existing message. Supports file attachments, item attachments, and reference attachments." }, { "slug": "OUTLOOK_CREATE_REPLY_ALL_DRAFT", "name": "Create reply-all draft in folder", "description": "Tool to create a reply-all draft for a message in a mail folder. Use when you need to create a draft reply to all recipients of an email." }, { "slug": "OUTLOOK_CREATE_TASK", "name": "Create To Do task", "description": "Tool to create a new task in Microsoft To Do within a specified task list. Use when adding tasks with title, due dates, reminders, importance levels, descriptions, categories, and linked resources." }, { "slug": "OUTLOOK_CREATE_USER_CALENDAR_EVENT_ATTACHMENT", "name": "Create user calendar event attachment", "description": "Tool to create a new attachment for an event in a specific user's calendar. Use when you need to attach a file or item to an event within a particular user's calendar." }, { "slug": "OUTLOOK_CREATE_USER_CALENDAR_GROUP_CALENDAR", "name": "Create calendar in user's calendar group", "description": "Tool to create a new calendar in a calendar group for a specific user. Use when organizing events into a separate calendar within a specific calendar group for a user." }, { "slug": "OUTLOOK_CREATE_USER_CALENDAR_GROUP_EVENT", "name": "Create user calendar group event", "description": "Tool to create a new calendar event in a specific user's calendar within a calendar group. Use when creating events for a particular user in a calendar that belongs to a calendar group." }, { "slug": "OUTLOOK_CREATE_USER_CONTACTS_EXTENSIONS", "name": "Create user contact extension", "description": "Tool to create a new open extension on a specific user's contact. Use when you need to store custom data with a contact for a specific user." }, { "slug": "OUTLOOK_CREATE_USER_EVENT_ATTACHMENT_UPLOAD_SESSION", "name": "Create user event attachment upload session", "description": "Deprecated: Use OUTLOOK_CREATE_ME_EVENT_ATTACHMENT_UPLOAD_SESSION instead, which supports both /me and /users/{user_id} endpoints." }, { "slug": "OUTLOOK_CREATE_USER_EVENT_CALENDAR_PERMISSION", "name": "Create calendar permission via event", "description": "Tool to create a calendar permission via an event's calendar. Use when granting calendar access through an event by specifying the event ID and user email address." }, { "slug": "OUTLOOK_CREATE_USER_MAIL_CHILD_FOLDER_MSG_EXT", "name": "Create user message extension", "description": "Tool to create a new open extension on a message in a child mail folder for any user. Use when you need to store custom data with a message in a nested folder structure." }, { "slug": "OUTLOOK_CREATE_USER_MAIL_FOLDER_MESSAGE_EXTENSION", "name": "Create user mail folder message extension", "description": "Tool to create a new open extension on a message in a user's mail folder. Use when you need to store custom data with a specific message in a user's mailbox." }, { "slug": "OUTLOOK_CREATE_USER_MAIL_FOLDER_MESSAGE_REPLY_DRAFT", "name": "Create reply draft for user mail folder message", "description": "Tool to create a reply draft for a message in a user's mail folder. Use when you need to prepare a reply without sending it immediately. The draft is created in the Drafts folder and includes the RE: prefix in the subject line." }, { "slug": "OUTLOOK_CREATE_USER_MAIL_FOLDERS_CHILD_FOLDERS", "name": "Create user mail folders child folders", "description": "Tool to create a new child folder under a specified mail folder for a user. Use when organizing email into nested folder hierarchies within a specific user's mailbox." }, { "slug": "OUTLOOK_CREATE_USER_MASTER_CATEGORY", "name": "Create user master category", "description": "Tool to create a new category in a user's master category list. Use when you need to add a category to organize email and calendar items for a specific user." }, { "slug": "OUTLOOK_CREATE_USER_MESSAGE", "name": "Create user message", "description": "Tool to create a new draft message in a user's mailbox. Use when creating draft messages for a specific user or the authenticated user." }, { "slug": "OUTLOOK_CREATE_USER_MESSAGE_ATTACHMENT", "name": "Create user message attachment", "description": "Tool to create an attachment on a message in a user's mail folder. Use when you need to attach a file or item to an existing message in a specific user's mailbox." }, { "slug": "OUTLOOK_DECLINE_EVENT", "name": "Decline calendar event", "description": "Tool to decline an invitation to a calendar event. Use when the user wants to decline a meeting or event invitation. The API returns 202 Accepted with no content on success." }, { "slug": "OUTLOOK_DELETE_CALENDAR", "name": "Delete calendar", "description": "Tool to delete a calendar other than the default calendar from a user's mailbox. Use when removing calendars that are no longer needed." }, { "slug": "OUTLOOK_DELETE_CALENDAR_EVENT", "name": "Delete calendar event", "description": "Tool to delete a calendar event from a user's Outlook calendar. Use when removing events that are no longer needed or were created in error." }, { "slug": "OUTLOOK_DELETE_CALENDAR_EVENT_ATTACHMENT", "name": "Delete user calendar event attachment", "description": "Tool to delete an attachment from an event in a specific user's calendar. Use when you need to remove a file or item attachment from an event in a calendar." }, { "slug": "OUTLOOK_DELETE_CALENDAR_EVENT_FROM_SPECIFIC_CALENDAR", "name": "Delete event from specific calendar", "description": "Tool to delete an event from a specific calendar in Outlook. Use when removing events from secondary or shared calendars by providing both calendar ID and event ID." }, { "slug": "OUTLOOK_DELETE_CALENDAR_FROM_GROUP", "name": "Delete user calendar group calendar", "description": "Tool to delete a calendar from a specific user's calendar group in Microsoft Outlook. Use when removing a calendar that belongs to a user's calendar group." }, { "slug": "OUTLOOK_DELETE_CALENDAR_GROUP", "name": "Delete calendar group", "description": "Tool to delete a calendar group other than the default calendar group. Use when removing unused calendar groups from the mailbox." }, { "slug": "OUTLOOK_DELETE_CALENDAR_GROUP_CALENDAR_EVENT", "name": "Delete user calendar group calendar event", "description": "Tool to delete a calendar event from a specific user's calendar within a calendar group. Use when removing events from calendars organized under calendar groups for a specific user." }, { "slug": "OUTLOOK_DELETE_CALENDAR_GROUP_EVENT_ATTACHMENT", "name": "Delete calendar group event attachment", "description": "Tool to delete an attachment from an event in a calendar within a calendar group. Use when you need to remove a file or item attachment from an event in a specific calendar group." }, { "slug": "OUTLOOK_DELETE_CALENDAR_GROUP_EVENT_PERMANENTLY", "name": "Permanently Delete Calendar Group Event", "description": "Tool to permanently delete a calendar event from a calendar within a calendar group. Use when you need to ensure an event cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CALENDAR_PERMANENTLY", "name": "Permanently Delete Calendar", "description": "Permanently deletes a calendar from a user's mailbox. Unlike standard DELETE, this action makes the calendar permanently unrecoverable. Use when you need to ensure a calendar cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CALENDAR_PERMISSION", "name": "Delete User Calendar Group Calendar Permission", "description": "Tool to delete a calendar permission from a user's calendar within a calendar group. Use when revoking calendar sharing access for specific users." }, { "slug": "OUTLOOK_DELETE_CHILD_CONTACT_FOLDER_PERMANENTLY", "name": "Permanently Delete Child Contact Folder", "description": "Permanently deletes a child contact folder. Unlike standard DELETE, this action makes the folder permanently unrecoverable. Use when you need to ensure a child contact folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CHILD_FOLDER_MESSAGE", "name": "Delete Child Folder Message", "description": "Tool to delete a message from a child mail folder in Outlook. Use when removing messages from nested folder structures or cleaning up messages in subfolders." }, { "slug": "OUTLOOK_DELETE_CONTACT", "name": "Delete Contact", "description": "Permanently deletes an existing contact, using its `contact_id` (obtainable via 'List User Contacts' or 'Get Contact'), from the Outlook contacts of the user specified by `user_id`." }, { "slug": "OUTLOOK_DELETE_CONTACT_FOLDER", "name": "Delete contact folder", "description": "Tool to delete a contact folder from the user's mailbox. Use when you need to remove an existing contact folder." }, { "slug": "OUTLOOK_DELETE_CONTACT_FOLDER_CHILD_FOLDER", "name": "Delete user contact folder child folder", "description": "Tool to delete a child contact folder from a parent contact folder for a specific user. Use when removing nested contact folders from a user's mailbox." }, { "slug": "OUTLOOK_DELETE_CONTACT_FOLDER_CONTACT", "name": "Delete Contact from Folder", "description": "Tool to permanently delete a contact from a specific contact folder. Use when removing contacts from organized folders in Outlook." }, { "slug": "OUTLOOK_DELETE_CONTACT_FOLDER_PERMANENTLY", "name": "Permanently Delete Contact Folder", "description": "Permanently deletes a contact folder. Unlike standard DELETE, this action makes the folder permanently unrecoverable. Use when you need to ensure a contact folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CONTACT_FROM_CHILD_FOLDER_PERMANENTLY", "name": "Permanently Delete User Contact from Child Folder", "description": "Tool to permanently delete a contact from a child folder for a specific user. Use when you need to ensure a contact cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CONTACT_FROM_FOLDER_PERMANENTLY", "name": "Permanently Delete Contact from Folder", "description": "Permanently deletes a contact from a specific contact folder. Unlike standard DELETE, this action makes the contact permanently unrecoverable. Use when you need to ensure a contact in a folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CONTACT_PERMANENTLY", "name": "Permanently Delete Contact", "description": "Permanently deletes a contact. Unlike standard DELETE, this action makes the contact permanently unrecoverable. Use when you need to ensure a contact cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_CONTACTS_EXTENSIONS", "name": "Delete contact extension", "description": "Tool to delete a navigation property extension from a contact within a child folder. Use when removing custom extension data from a contact." }, { "slug": "OUTLOOK_DELETE_EMAIL_RULE", "name": "Delete Email Rule", "description": "Delete an email rule permanently; deletion is irreversible. Confirm rule details with the user before executing. Removing a rule may alter the firing order and stop-processing behavior of remaining rules." }, { "slug": "OUTLOOK_DELETE_EVENT", "name": "Delete calendar event (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_DELETE_CALENDAR_EVENT instead. Tool to delete an event from the user's calendar. Use when removing calendar events. If this is a meeting, deleting it removes it from the organizer's calendar and sends a cancellation message to all attendees. Require explicit user confirmation before calling this action." }, { "slug": "OUTLOOK_DELETE_EVENT_ATTACHMENT", "name": "Delete event attachment", "description": "Tool to delete an attachment from an Outlook calendar event. Use when you need to remove a file or item attachment from an existing event." }, { "slug": "OUTLOOK_DELETE_EVENT_EXTENSION", "name": "Delete event extension", "description": "Tool to delete an open extension from a calendar event in a calendar group. Use when removing custom extension data that is no longer needed." }, { "slug": "OUTLOOK_DELETE_EVENT_PERMANENTLY", "name": "Permanently Delete Event", "description": "Permanently deletes a calendar event. Unlike standard DELETE, this action makes the event permanently unrecoverable. Use when you need to ensure an event cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_MAIL_FOLDER", "name": "Delete mail folder", "description": "Delete a mail folder from the user's mailbox. Use when you need to remove an existing mail folder." }, { "slug": "OUTLOOK_DELETE_MAIL_FOLDER_MESSAGE", "name": "Delete Mail Folder Message", "description": "Tool to delete a message from a specific mail folder in Outlook. Use when removing messages from a particular folder or cleaning up folder contents." }, { "slug": "OUTLOOK_DELETE_MASTER_CATEGORY", "name": "Delete master category", "description": "Tool to delete a category from the user's master category list. Use when removing unused or obsolete categories from the mailbox." }, { "slug": "OUTLOOK_DELETE_ME_CALENDAR_PERMISSION", "name": "Delete User Calendars Calendar Permission", "description": "Tool to delete a calendar permission from a specific user's calendar. Use when revoking access to a shared calendar." }, { "slug": "OUTLOOK_DELETE_ME_CONTACT_EXTENSION", "name": "Delete contact extension", "description": "Tool to delete an open extension from a contact. Use when removing custom data extensions that are no longer needed." }, { "slug": "OUTLOOK_DELETE_ME_CONTACT_FOLDER_CONTACT_EXTENSION", "name": "Delete user contact folder contact extension", "description": "Tool to delete an extension from a contact in a user's contact folder. Use when removing custom extension data from a contact." }, { "slug": "OUTLOOK_DELETE_ME_EVENT_EXTENSION", "name": "Delete user event extension", "description": "Tool to delete an open extension from a user's calendar event. Use when removing custom extension data that is no longer needed." }, { "slug": "OUTLOOK_DELETE_ME_EVENTS_ATTACHMENTS", "name": "Delete user event attachment", "description": "Tool to delete an attachment from a user's Outlook event. Use when you need to remove a file or item attachment from an existing event." }, { "slug": "OUTLOOK_DELETE_ME_INFERENCE_CLASSIFICATION_OVERRIDE", "name": "Delete inference classification override", "description": "Tool to delete an inference classification override for a specific sender. Use when removing custom Focused Inbox rules that were previously set." }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDER_CHILD_FOLDER", "name": "Delete mail folder child folder", "description": "Tool to delete a child mail folder from a parent mail folder. Use when removing nested mail folders from a user's mailbox." }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDER_CHILD_FOLDER_PERMANENTLY", "name": "Permanently Delete Child Mail Folder", "description": "Permanently deletes a child mail folder from a parent mail folder. Unlike standard DELETE, this action makes the folder permanently unrecoverable. Use when you need to ensure a child folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDER_MESSAGE_RULE", "name": "Delete mail folder message rule", "description": "Tool to delete a message rule from a specific mail folder. Use when you need to remove an email automation rule from a folder." }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDERS_CHILD_FOLDERS_MESSAGES_EXTENS", "name": "Delete user message extension", "description": "Delete user message extension" }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDERS_MESSAGES_ATTACHMENTS", "name": "Delete Message Attachment (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_DELETE_MESSAGE_ATTACHMENT instead. Tool to delete an attachment from a message in a mail folder. Use when removing file or item attachments from messages in Outlook mail folders." }, { "slug": "OUTLOOK_DELETE_ME_MAIL_FOLDERS_MESSAGES_EXTENSIONS", "name": "Delete message extension", "description": "Tool to delete a navigation property extension from a message within a mail folder. Use when removing custom extension data from a message." }, { "slug": "OUTLOOK_DELETE_ME_MESSAGES_ATTACHMENTS", "name": "Delete Message Attachment", "description": "Tool to delete an attachment from a message. Use when removing file or item attachments from messages in Outlook." }, { "slug": "OUTLOOK_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to permanently delete an Outlook email message by its message_id. Use when removing unwanted messages, cleaning up drafts, or performing mailbox maintenance." }, { "slug": "OUTLOOK_DELETE_MESSAGE_ATTACHMENT", "name": "Delete Message Attachment", "description": "Tool to delete an attachment from a message in a nested mail folder structure. Use when removing attachments from messages located in child folders within mail folders." }, { "slug": "OUTLOOK_DELETE_MESSAGE_EXTENSION", "name": "Delete message extension", "description": "Tool to delete an open extension from an Outlook message. Use when removing custom extension data that is no longer needed from a message." }, { "slug": "OUTLOOK_DELETE_MESSAGE_PERMANENTLY_FROM_FOLDER", "name": "Permanently Delete Message (Folder-Scoped) (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_PERMANENT_DELETE_MESSAGE instead. Tool to permanently delete a message from a specific mail folder. Use when you need to irreversibly delete a message with explicit folder context. The message is moved to the Purges folder and cannot be recovered." }, { "slug": "OUTLOOK_DELETE_PRIMARY_CALENDAR_PERMISSION", "name": "Delete User Calendar Permission", "description": "Tool to delete a calendar permission from a specific user's calendar. Use when revoking calendar sharing access for a particular user." }, { "slug": "OUTLOOK_DELETE_TODO_TASK", "name": "Delete To Do task", "description": "Tool to permanently delete a task from a Microsoft To Do task list. Use when removing a task that is no longer needed. This action cannot be undone." }, { "slug": "OUTLOOK_DELETE_USER_CALENDAR_EVENT_PERMANENTLY", "name": "Permanently Delete User Calendar Event", "description": "Tool to permanently delete a calendar event from a specific user's calendar. Use when you need to ensure an event cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_USER_CHILD_FOLDER_CONTACT", "name": "Delete Contact from User's Child Folder", "description": "Tool to delete a contact from a child folder in a user's contact folder. Use when you need to remove a contact from a specific child folder within a contact folder." }, { "slug": "OUTLOOK_DELETE_USER_CHILD_FOLDER_MESSAGE_PERMANENTLY", "name": "Delete User Child Folder Message Permanently", "description": "Tool to permanently delete a message from a user's child mail folder in Outlook. Unlike standard DELETE, this action makes the message unrecoverable by moving it to the Purges folder in the dumpster. Use when you need to ensure a message in a nested folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_USER_CONTACT_EXTENSION", "name": "Delete user contact extension", "description": "Deprecated: Use OUTLOOK_DELETE_CONTACTS_EXTENSIONS instead, which supports both /me and /users/{user_id} endpoints." }, { "slug": "OUTLOOK_DELETE_USER_EVENT_PERMANENTLY", "name": "Permanently Delete User Event", "description": "Tool to permanently delete a calendar event for a specified user. Use when you need to ensure an event cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_USER_MAIL_FOLDER_PERMANENTLY", "name": "Permanently Delete User Mail Folder", "description": "Permanently deletes a mail folder for a specific user. Unlike standard DELETE, this action makes the folder permanently unrecoverable. Use when you need to ensure a user's folder cannot be restored from deleted items." }, { "slug": "OUTLOOK_DELETE_USER_MESSAGE_ATTACHMENT", "name": "Delete user message attachment", "description": "Deprecated: Use OUTLOOK_DELETE_ME_MESSAGES_ATTACHMENTS instead, which supports both /me and /users/{user_id} endpoints." }, { "slug": "OUTLOOK_DISMISS_CALENDAR_EVENT_REMINDER", "name": "Dismiss user calendar event reminder", "description": "Tool to dismiss a reminder for a specific event in a user's calendar. Use when you need to turn off or remove a reminder alert for an event in a specific user's calendar." }, { "slug": "OUTLOOK_DISMISS_EVENT_REMINDER", "name": "Dismiss event reminder", "description": "Tool to dismiss a reminder for a specific calendar event. Use when you need to turn off or remove a reminder alert for an event." }, { "slug": "OUTLOOK_DISMISS_EVENT_REMINDER_FROM_GROUP", "name": "Dismiss user calendar group event reminder", "description": "Tool to dismiss a reminder for an event in a user's calendar within a calendar group. Use when you need to turn off a reminder for an event in a specific user's calendar group." }, { "slug": "OUTLOOK_DISMISS_USER_EVENT_REMINDER", "name": "Dismiss user event reminder", "description": "Tool to dismiss a reminder for a specific user's calendar event. Use when you need to turn off or remove a reminder alert for an event in a user's calendar." }, { "slug": "OUTLOOK_DOWNLOAD_OUTLOOK_ATTACHMENT", "name": "Download Outlook attachment", "description": "Downloads a specific file attachment from an email message in a Microsoft Outlook mailbox; the attachment must contain 'contentBytes' (binary data) and not be a link or embedded item. High-volume parallel calls may trigger HTTP 429 responses; honor the Retry-After header and use exponential backoff." }, { "slug": "OUTLOOK_FIND_MEETING_TIMES", "name": "Find Meeting Times", "description": "Suggests meeting times based on organizer and attendee availability, time constraints, and duration requirements. Use when you need to find optimal meeting slots across multiple participants' schedules." }, { "slug": "OUTLOOK_FORWARD_MESSAGE", "name": "Forward message", "description": "Tool to forward a message. Use when you need to send an existing email to new recipients." }, { "slug": "OUTLOOK_FORWARD_USER_CALENDAR_EVENT", "name": "Forward user calendar event", "description": "Tool to forward a calendar event from a specific user's calendar to new recipients. Use when you need to share an event from a particular calendar with additional people." }, { "slug": "OUTLOOK_GET_CALENDAR", "name": "Get specific calendar", "description": "Deprecated: Use OUTLOOK_GET_USER_CALENDAR instead, which supports both /me and /users/{user_id} endpoints and adds $select field filtering." }, { "slug": "OUTLOOK_GET_CALENDAR_EVENT", "name": "Get event from calendar", "description": "Tool to retrieve a specific event from a specified calendar. Use when you need to get details of an event that belongs to a specific calendar in the user's mailbox." }, { "slug": "OUTLOOK_GET_CALENDAR_EVENT_ATTACHMENT", "name": "Get calendar event attachment", "description": "Tool to retrieve a specific attachment from an event within a calendar. Use when you need to access attachment content from a calendar event." }, { "slug": "OUTLOOK_GET_CALENDAR_FROM_EVENT", "name": "Get calendar from event", "description": "Tool to retrieve the parent calendar that contains a specific event. Use when you need to get calendar details for a specific event in a calendar." }, { "slug": "OUTLOOK_GET_CALENDAR_FROM_GROUP", "name": "Get calendar from calendar group", "description": "Tool to retrieve a specific calendar from a calendar group in Microsoft Outlook. Use when you need to get details of a calendar that belongs to a specific calendar group." }, { "slug": "OUTLOOK_GET_CALENDAR_GROUP", "name": "Get calendar group", "description": "Tool to retrieve the properties and relationships of a calendar group object. Use when you need to get details of a specific calendar group by its ID." }, { "slug": "OUTLOOK_GET_CALENDAR_GROUP_CALENDAR_EVENT_EXTENSION", "name": "Get event extension", "description": "Tool to retrieve an open extension from a calendar event within a specific calendar group and calendar. Use when you need to access custom data stored with an event." }, { "slug": "OUTLOOK_GET_CALENDAR_GROUP_EVENT_ATTACHMENT", "name": "Get calendar group event attachment", "description": "Deprecated: Use OUTLOOK_GET_USER_CALENDAR_GROUP_EVENT_ATTACHMENT instead, which supports both /me and /users/{user_id} endpoints." }, { "slug": "OUTLOOK_GET_CALENDAR_GROUP_SCHEDULE", "name": "Get User Calendar Group Schedule", "description": "Tool to retrieve free/busy schedule information for a specific user's calendar within a calendar group. Use when you need availability data from a particular user's calendar that belongs to a calendar group." }, { "slug": "OUTLOOK_GET_CALENDAR_PERMISSION", "name": "Get user calendar permission", "description": "Tool to retrieve a specific calendar permission for a user's calendar. Use when you need to check who has access to a specific user's calendar and their permission level." }, { "slug": "OUTLOOK_GET_CALENDAR_PERMISSION_FROM_CALENDAR", "name": "Get user calendar permission", "description": "Tool to retrieve a specific calendar permission from a user's calendar. Use when you need to check who has access to a specific user's calendar and their permission level." }, { "slug": "OUTLOOK_GET_CALENDAR_SCHEDULE", "name": "Get Calendar Schedule", "description": "Tool to get free/busy schedule information for users, distribution lists, or resources. Use when you need to check availability for specific people or resources during a time period." }, { "slug": "OUTLOOK_GET_CALENDAR_VIEW", "name": "Get Calendar View", "description": "Get events ACTIVE during a time window (includes multi-day events). Use for \"what's on my calendar today/this week\" or availability checks. Returns events overlapping the time range. For keyword search or filters by category, use OUTLOOK_LIST_EVENTS instead." }, { "slug": "OUTLOOK_GET_CHILD_FOLDER_MESSAGE", "name": "Get child folder message", "description": "Tool to retrieve a specific email message from a child mail folder. Use when you need to access a message in a nested folder hierarchy." }, { "slug": "OUTLOOK_GET_CHILD_FOLDER_MESSAGE_CONTENT", "name": "Get child folder message MIME content", "description": "Tool to get the MIME content of a message from a child mail folder. Use when you need to download the raw MIME format of an email message for analysis or archival." }, { "slug": "OUTLOOK_GET_CHILD_MAIL_FOLDER", "name": "Get child mail folder", "description": "Tool to retrieve a specific child mail folder from a parent mail folder. Use when you need details about a specific subfolder within a folder hierarchy." }, { "slug": "OUTLOOK_GET_CONTACT_EXTENSION", "name": "Get contact extension", "description": "Tool to retrieve an open extension from a contact in Microsoft Graph. Use when you need to access custom data stored with a contact." }, { "slug": "OUTLOOK_GET_CONTACT_FOLDER", "name": "Get contact folder", "description": "Tool to retrieve a specific contact folder by ID. Use when you need details about a particular contact folder in the user's mailbox." }, { "slug": "OUTLOOK_GET_CONTACT_FOLDERS", "name": "List user contact folders", "description": "Tool to retrieve contact folders from a specific user's mailbox. Use when you need to list or browse contact folders for a given user." }, { "slug": "OUTLOOK_GET_CONTACT_FROM_FOLDER", "name": "Get contact from folder", "description": "Tool to retrieve a specific contact from a contact folder by its ID. Use when you need to access contact details from a specific folder rather than the default contacts location." }, { "slug": "OUTLOOK_GET_DRAFTS_MAIL_FOLDER", "name": "Get drafts mail folder", "description": "Tool to get the drafts mail folder. Use when you need to retrieve details about the drafts folder such as item counts and folder ID." }, { "slug": "OUTLOOK_GET_EVENT", "name": "Get calendar event", "description": "Retrieves the full details of a specific calendar event by its ID from a user's Outlook calendar, provided the event exists." }, { "slug": "OUTLOOK_GET_EVENT_ATTACHMENT", "name": "Get event attachment", "description": "Tool to retrieve a specific attachment from an Outlook calendar event by attachment ID. Use when you need to download or access the content of a particular event attachment." }, { "slug": "OUTLOOK_GET_EVENT_CALENDAR_FROM_GROUP", "name": "Get event calendar from calendar group", "description": "Tool to retrieve the calendar that contains a specific event within a calendar group. Use when you need to get calendar details for an event in a calendar group." }, { "slug": "OUTLOOK_GET_INFERENCE_CLASSIFICATION", "name": "Get inference classification", "description": "Tool to get inference classification settings for the authenticated user. Use when you need to retrieve the Focused Inbox configuration and sender-specific overrides that determine message classification." }, { "slug": "OUTLOOK_GET_MAILBOX_SETTINGS", "name": "Get mailbox settings", "description": "Tool to retrieve mailbox settings. Use when you need to view settings such as automatic replies, time zone, and working hours for the signed-in or specified user." }, { "slug": "OUTLOOK_GET_MAIL_DELTA", "name": "Get mail delta", "description": "Retrieve incremental changes (delta) of messages in a mailbox. FIRST RUN: Returns ALL messages in folder (use top=50 to limit). Response has @odata.deltaLink. SUBSEQUENT: Pass stored deltaLink to get only NEW/UPDATED/DELETED messages since last sync. Properties available: id, subject, from, receivedDateTime, isRead, etc. NOT available: internetMessageHeaders, full body, attachment content (response size limits)." }, { "slug": "OUTLOOK_GET_MAIL_FOLDER", "name": "Get mail folder", "description": "Tool to retrieve a mail folder by ID or well-known name. Use when you need to get details about a specific folder such as item counts, size, and folder properties." }, { "slug": "OUTLOOK_GET_MAIL_FOLDER_MESSAGE", "name": "Get mail folder message", "description": "Tool to retrieve a specific message from a mail folder by its ID. Use when you need to fetch full message details including subject, body, sender, recipients, timestamps, and other metadata from a specific mail folder." }, { "slug": "OUTLOOK_GET_MAIL_FOLDER_MESSAGE_RULE", "name": "Get user mail folder message rule", "description": "Tool to retrieve a specific message rule from a user's mail folder. Use when you need details about an email rule in a particular user's folder." }, { "slug": "OUTLOOK_GET_MAIL_TIPS", "name": "Get mail tips", "description": "Tool to retrieve mail tips such as automatic replies and mailbox full status. Use when you need to check recipient status before sending mail." }, { "slug": "OUTLOOK_GET_MASTER_CATEGORIES", "name": "Get master categories", "description": "Tool to retrieve the user's master category list. Use when you need to get all categories defined for the user." }, { "slug": "OUTLOOK_GET_MASTER_CATEGORY", "name": "Get master category", "description": "Tool to retrieve properties of a specific category from the user's master category list. Use when you need details about a specific category." }, { "slug": "OUTLOOK_GET_ME_CALENDAR", "name": "Get user's default calendar", "description": "Tool to get the properties and relationships of the signed-in user's default calendar. Use when you need to retrieve calendar details for the authenticated user." }, { "slug": "OUTLOOK_GET_ME_CONTACT_FOLDERS_CHILD_FOLDER", "name": "Get user child contact folder", "description": "Tool to retrieve a specific child contact folder for a user by ID. Use when you need details of a child folder nested within a parent contact folder for a specific user." }, { "slug": "OUTLOOK_GET_ME_CONTACT_FROM_CHILD_FOLDER", "name": "Get contact from child folder", "description": "Tool to retrieve a specific contact from a nested child folder within a contact folder. Use when you need contact details from a child folder." }, { "slug": "OUTLOOK_GET_ME_CONTACT_PHOTO", "name": "Get contact photo", "description": "Tool to get the binary media content of a contact's profile photo. Use when you need to download or retrieve a contact's picture." }, { "slug": "OUTLOOK_GET_ME_CONTACTS", "name": "Get contact", "description": "Retrieves a specific Outlook contact by its `contact_id` from the contacts of a specified `user_id` (defaults to 'me' for the authenticated user)." }, { "slug": "OUTLOOK_GET_ME_CONTACTS_EXTENSIONS", "name": "Get user contact extension", "description": "Tool to retrieve a specific open extension from a user's contact. Use when you need to access custom data stored with a contact." }, { "slug": "OUTLOOK_GET_ME_EVENT_ATTACHMENT", "name": "Get user event attachment", "description": "Tool to retrieve a specific attachment from a user's calendar event. Use when you need to access attachment details including content from a specific user's event." }, { "slug": "OUTLOOK_GET_ME_EVENT_CALENDAR", "name": "Get event calendar", "description": "Tool to retrieve the calendar that contains a specific event. Use when you need to get calendar details for an event." }, { "slug": "OUTLOOK_GET_ME_MAIL_FOLDER_MESSAGE_ATTACHMENT", "name": "Get mail folder message attachment (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_GET_USER_MESSAGES_ATTACHMENTS instead. Tool to get a specific attachment from a message in a mail folder. Use when you have the folder ID, message ID, and attachment ID." }, { "slug": "OUTLOOK_GET_ME_MAIL_FOLDERS_MESSAGES_EXTENSIONS", "name": "Get message extension", "description": "Tool to retrieve a specific extension from a message in a user's mailbox. Use when you need to read custom data stored in a message extension." }, { "slug": "OUTLOOK_GET_ME_MESSAGE_MIME_CONTENT", "name": "Get message MIME content", "description": "Tool to get the MIME content of a message. Use when you need to download the raw MIME format of an email message for analysis or archival." }, { "slug": "OUTLOOK_GET_ME_OUTLOOK", "name": "Get user outlook", "description": "Tool to retrieve the outlookUser object for a specified user. Use when you need to access the Outlook services entity for a user." }, { "slug": "OUTLOOK_GET_MESSAGE", "name": "Get email message", "description": "Retrieves a specific email message by its ID from the specified user's Outlook mailbox. Use the 'select' parameter to include specific fields like 'internetMessageHeaders' for filtering automated emails. Retries transient Microsoft Graph 404 responses with exponential backoff for up to 7.5 seconds because newly surfaced messages can be eventually consistent." }, { "slug": "OUTLOOK_GET_MESSAGE_EXTENSION", "name": "Get user message extension", "description": "Tool to retrieve a specific extension from a user's message. Use when you need to read custom data stored in a message extension." }, { "slug": "OUTLOOK_GET_NESTED_FOLDER_MESSAGE_ATTACHMENT", "name": "Get attachment from nested folder message", "description": "Tool to retrieve a specific attachment from a message located in a nested mail folder structure. Use when you need to get attachment details from messages in deeply nested folders." }, { "slug": "OUTLOOK_GET_PROFILE", "name": "Get Outlook profile", "description": "Retrieves the Microsoft Outlook profile for a specified user." }, { "slug": "OUTLOOK_GET_SCHEDULE", "name": "Get schedule", "description": "Retrieves free/busy schedule information for specified email addresses within a defined time window. Read-only; does not reserve time or prevent conflicts — verify availability before creating events." }, { "slug": "OUTLOOK_GET_SUPPORTED_LANGUAGES", "name": "Get supported languages", "description": "Tool to retrieve supported languages in the user's mailbox. Use when you need to display or select from available mailbox languages." }, { "slug": "OUTLOOK_GET_SUPPORTED_TIME_ZONES", "name": "Get supported time zones", "description": "Tool to get the list of time zones supported for a user as configured on their mailbox server. Use when setting up an Outlook client or configuring user time zone preferences." }, { "slug": "OUTLOOK_GET_USER_BY_EMAIL", "name": "Get user by email", "description": "Retrieves user details from Microsoft Graph by email address (userPrincipalName). Returns user properties including display name, job title, department, and contact information. Use this action when you need to look up a user's profile information using their email address." }, { "slug": "OUTLOOK_GET_USER_CALENDAR", "name": "Get user's calendar", "description": "Tool to get the properties and relationships of a specific calendar for a user. Use when you need to retrieve details for a particular calendar by its ID for any user." }, { "slug": "OUTLOOK_GET_USER_CALENDAR_ALLOWED_SHARING_ROLES", "name": "Get allowed calendar sharing roles for user calendar", "description": "Tool to retrieve allowed calendar sharing roles for a specific user on a given calendar. Use when you need to determine what permission levels can be granted to a user for sharing a specific calendar." }, { "slug": "OUTLOOK_GET_USER_CALENDAR_EVENT", "name": "Get user calendar event", "description": "Tool to retrieve a specific calendar event from a user's primary calendar. Use when you need detailed information about a particular event for a given user." }, { "slug": "OUTLOOK_GET_USER_CALENDAR_GROUP_CALENDAR_PERMISSION", "name": "Get user calendar group calendar permission", "description": "Tool to retrieve a specific calendar permission for a user's calendar within a calendar group. Use when you need to check access permissions for a specific calendar." }, { "slug": "OUTLOOK_GET_USER_CALENDAR_GROUP_EVENT", "name": "Get user calendar group event", "description": "Tool to retrieve a specific event from a user's calendar within a calendar group. Use when you need details of an event in a specific calendar group." }, { "slug": "OUTLOOK_GET_USER_CALENDAR_GROUP_EVENT_ATTACHMENT", "name": "Get user calendar group event attachment", "description": "Tool to retrieve a specific attachment from an event within a calendar group for a user. Use when you need to access attachment content from a calendar event in a user's calendar group." }, { "slug": "OUTLOOK_GET_USER_CHILD_FOLDER_MESSAGE", "name": "Get message from child folder", "description": "Tool to retrieve a specific message from a child folder within a user's mail folder hierarchy. Use when you need to access messages from nested folders where both parent and child folder IDs are known." }, { "slug": "OUTLOOK_GET_USER_EVENT_EXTENSION", "name": "Get event extension", "description": "Tool to retrieve a specific open type extension from a user's calendar event by its extension ID or name. Use when you need to access custom data stored in calendar event extensions." }, { "slug": "OUTLOOK_GET_USER_MESSAGES_ATTACHMENTS", "name": "Get user message attachment", "description": "Tool to retrieve a specific attachment from a message in a mail folder hierarchy. Use when you need to get attachment details including content from a specific folder path." }, { "slug": "OUTLOOK_LIST_CALENDAR_CALENDAR_VIEW", "name": "List Calendar Calendar View (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_LIST_ME_CALENDARS_CALENDAR_VIEW instead. Tool to list calendar events within a specified date/time range. Use when you need to retrieve events from the user's primary calendar that fall within a time window." }, { "slug": "OUTLOOK_LIST_CALENDAR_EVENT_ATTACHMENTS", "name": "List user calendar event attachments", "description": "Tool to list attachments for a calendar event within a specific calendar for a user. Use when you need to retrieve attachments from an event in a user's specific calendar." }, { "slug": "OUTLOOK_LIST_CALENDAR_GROUP_CALENDAR_EVENTS", "name": "List user calendar group calendar events", "description": "Tool to list events from a specific calendar within a calendar group for a user. Use when you need to retrieve events from a user's calendar that belongs to a specific calendar group." }, { "slug": "OUTLOOK_LIST_CALENDAR_GROUP_CALENDARS", "name": "List calendars in calendar group", "description": "Tool to retrieve calendars belonging to a specific calendar group. Use when you need to list calendars within a calendar group with optional OData queries." }, { "slug": "OUTLOOK_LIST_CALENDAR_GROUP_EVENT_ATTACHMENTS", "name": "List user calendar group event attachments", "description": "Tool to list attachments for a calendar event within a specific calendar group for a user. Use when you need to retrieve attachments from an event in a calendar that belongs to a calendar group for a specific user." }, { "slug": "OUTLOOK_LIST_CALENDAR_GROUPS", "name": "List Outlook calendar groups", "description": "Tool to list calendar groups in the signed-in user's mailbox. Use when you need to retrieve calendar groups with optional OData queries." }, { "slug": "OUTLOOK_LIST_CALENDAR_PERMISSIONS", "name": "List calendar permissions", "description": "Tool to list calendar permissions for a specific calendar within a calendar group. Use when you need to view sharing permissions for a calendar." }, { "slug": "OUTLOOK_LIST_CALENDARS", "name": "List Outlook calendars", "description": "Tool to list calendars in the signed-in user's mailbox. Use when you need to retrieve calendars with optional OData queries." }, { "slug": "OUTLOOK_LIST_CALENDAR_VIEW_DELTA", "name": "List calendar view delta", "description": "Tool to get calendar events that have been added, deleted, or updated in a calendar view. Use when you need to track changes to events within a specific time range." }, { "slug": "OUTLOOK_LIST_CHAT_MESSAGES", "name": "List chat messages", "description": "Tool to list messages in a Teams chat. Use when you need message IDs to select a specific message for further actions." }, { "slug": "OUTLOOK_LIST_CHATS", "name": "List Teams chats", "description": "Tool to list Teams chats. Use when you need chat IDs and topics to select a chat for further actions." }, { "slug": "OUTLOOK_LIST_CHILD_FOLDER_CONTACTS", "name": "List user child folder contacts", "description": "Tool to retrieve contacts from a user's child contact folder. Use when you need to access contacts organized in nested folder structures for a specific user." }, { "slug": "OUTLOOK_LIST_CHILD_FOLDER_MESSAGES", "name": "List child folder messages", "description": "Tool to list messages from a child folder within a parent mail folder. Use when you need to retrieve messages from a subfolder that exists within another folder." }, { "slug": "OUTLOOK_LIST_CHILD_MAIL_FOLDERS", "name": "List child mail folders", "description": "Tool to list subfolders (childFolders) under a specified Outlook mail folder. Use when navigating nested folder hierarchies or checking if a folder has subfolders." }, { "slug": "OUTLOOK_LIST_CONTACT_FOLDER_CHILD_FOLDERS", "name": "List contact folder child folders", "description": "Tool to list child folders under a specified contact folder. Use when navigating nested contact folder hierarchies or organizing contacts into subfolder structures." }, { "slug": "OUTLOOK_LIST_CONTACT_FOLDERS_DELTA", "name": "List contact folders delta", "description": "Tool to get contact folders that have been added, deleted, or updated. Use when tracking changes to contact folder structure without fetching all folders each time." }, { "slug": "OUTLOOK_LIST_CONTACTS", "name": "List Outlook contacts (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_LIST_USER_CONTACTS instead. Retrieves a user's Microsoft Outlook contacts, from the default or a specified contact folder." }, { "slug": "OUTLOOK_LIST_CONTACTS_DELTA", "name": "List contacts delta", "description": "Retrieve incremental changes (delta) of contacts in a specified folder. Use when syncing contacts without fetching the entire set each time. FIRST RUN: Returns ALL contacts in folder. Response has @odata.deltaLink. SUBSEQUENT: Pass stored deltaLink to get only NEW/UPDATED/DELETED contacts since last sync." }, { "slug": "OUTLOOK_LIST_EMAIL_RULES", "name": "List Email Rules", "description": "List all email rules from inbox. No server-side filtering is supported; all rule narrowing must be done client-side after retrieval. Each rule includes a `sequence` field defining execution order and may include a `stopProcessingRules` flag affecting downstream rule execution." }, { "slug": "OUTLOOK_LIST_EVENT_ATTACHMENTS", "name": "List event attachments", "description": "Tool to list attachments for a specific Outlook calendar event. Use when you have an event ID and need to view its attachments." }, { "slug": "OUTLOOK_LIST_EVENT_CALENDAR_CALENDAR_PERMISSIONS", "name": "List event calendar permissions", "description": "Tool to list calendar permissions for the calendar containing a specific event. Use when you need to see who has access to a calendar that contains a particular event." }, { "slug": "OUTLOOK_LIST_EVENT_INSTANCES", "name": "List event instances", "description": "Tool to retrieve individual occurrences of a recurring calendar event within a specified time range. Use when you need to get specific instances of a recurring meeting or event series." }, { "slug": "OUTLOOK_LIST_EVENTS", "name": "List events", "description": "Retrieves events from a user's Outlook calendar via Microsoft Graph API. Supports primary/secondary/shared calendars, pagination, filtering, property selection, sorting, and timezone specification. Use calendar_id to access non-primary calendars." }, { "slug": "OUTLOOK_LIST_INFERENCE_CLASSIFICATION_OVERRIDES", "name": "List Inference Classification Overrides", "description": "Tool to list inference classification overrides that control Focused Inbox sender rules. Use when you need to see which senders are configured to always appear in Focused or Other inbox." }, { "slug": "OUTLOOK_LIST_MAIL_FOLDER_MESSAGE_ATTACHMENTS", "name": "List mail folder message attachments", "description": "Tool to get attachments from a message in a specific mail folder. Use when you need to retrieve attachment metadata from a message located in a particular folder." }, { "slug": "OUTLOOK_LIST_MAIL_FOLDER_MESSAGE_RULES", "name": "List mail folder message rules", "description": "Tool to list message rules for a specific mail folder. Use when you need to retrieve rules configured for a particular folder." }, { "slug": "OUTLOOK_LIST_MAIL_FOLDER_MESSAGES", "name": "List mail folder messages", "description": "Tool to list messages from a specific mail folder including subfolders. Use when you need to retrieve messages from a particular folder or subfolder by its ID or well-known name." }, { "slug": "OUTLOOK_LIST_MAIL_FOLDERS", "name": "List mail folders", "description": "Tool to list a user's top-level mail folders. Use when you need folders like Inbox, Drafts, Sent Items; set include_hidden_folders=True to include hidden folders." }, { "slug": "OUTLOOK_LIST_MAIL_FOLDERS_DELTA", "name": "List mail folders delta", "description": "Tool to get incremental changes to mail folders. Use when you need to track additions, deletions, or updates to mail folders without fetching the entire folder list each time." }, { "slug": "OUTLOOK_LIST_MASTER_CATEGORIES", "name": "List master categories", "description": "Deprecated: Use OUTLOOK_GET_MASTER_CATEGORIES instead, which adds pagination (top/skip), filtering, field selection, and sorting." }, { "slug": "OUTLOOK_LIST_ME_CALENDAR_PERMISSIONS", "name": "List user calendar permissions", "description": "Tool to list calendar permissions for a specific user's calendar. Use when you need to see who has access to a user's calendar and their permission levels." }, { "slug": "OUTLOOK_LIST_ME_EVENT_INSTANCES", "name": "List me event instances (Deprecated)", "description": "DEPRECATED: Use OUTLOOK_LIST_EVENT_INSTANCES instead. Tool to retrieve individual occurrences of a recurring calendar event within a specified time range. Use when you need to get specific instances of a recurring meeting or event series from the authenticated user's primary calendar." }, { "slug": "OUTLOOK_LIST_MESSAGE_ATTACHMENTS_FROM_CHILD_FOLDER", "name": "List message attachments from child folder", "description": "Tool to list attachments from a message in a nested child mail folder. Use when you need to retrieve attachment metadata from a message located in a subfolder." }, { "slug": "OUTLOOK_LIST_MESSAGES", "name": "List Messages", "description": "Retrieves a list of email messages from a specified mail folder in an Outlook mailbox, with options for filtering (including by conversationId to get all messages in a thread), pagination, and sorting; ensure 'user_id' and 'folder' are valid, and all date/time strings are in ISO 8601 format." }, { "slug": "OUTLOOK_LIST_OUTLOOK_ATTACHMENTS", "name": "List Outlook attachments", "description": "Lists metadata (name, size, contentType, isInline — but not `contentBytes`) for all attachments of a specified Outlook email message. Returns fileAttachment, itemAttachment, and referenceAttachment types; only fileAttachment entries support download via OUTLOOK_DOWNLOAD_OUTLOOK_ATTACHMENT. Results include inline images and signatures — filter by `isInline == false` and check `contentType` to identify real document attachments. Results are nested under `data.response_data.value`." }, { "slug": "OUTLOOK_LIST_PLACES", "name": "List places", "description": "Retrieves a collection of place objects defined in a tenant by type. Places can include rooms, workspaces, buildings, floors, sections, desks, and room lists. When room_list_id is provided, returns only rooms or workspaces within that specific room list using the /places/{roomListId}/microsoft.graph.roomlist/rooms (or /workspaces) endpoint. Use this action when you need to discover available physical spaces or locations within an organization. Note: Before using this API, ensure that the Places settings are properly configured in the tenant." }, { "slug": "OUTLOOK_LIST_PRIMARY_CALENDAR_PERMISSIONS", "name": "List primary calendar permissions", "description": "Tool to list calendar permissions from a user's primary calendar. Use when you need to see who has access to the primary calendar and their permission levels." }, { "slug": "OUTLOOK_LIST_REMINDERS", "name": "List event reminders", "description": "Tool to retrieve reminders for events occurring within a specified time range. Use when you need to see upcoming reminders between two datetimes." }, { "slug": "OUTLOOK_LIST_SENT_ITEMS_MESSAGES", "name": "List sent items messages", "description": "Tool to list all messages in the SentItems mail folder of the signed-in user's mailbox. Use when you need to retrieve sent messages with optional filtering and sorting." }, { "slug": "OUTLOOK_LIST_TO_DO_LISTS", "name": "List To Do task lists", "description": "Tool to list Microsoft To Do task lists for the signed-in user. Use when you need to discover available task lists before listing or creating tasks. Returns todoTaskList objects with id and displayName that can be used in downstream operations." }, { "slug": "OUTLOOK_LIST_TODO_TASKS", "name": "List tasks from a To Do list", "description": "Tool to list tasks within a specified Microsoft To Do task list, including status and due dates. Use when retrieving tasks from a specific To Do list." }, { "slug": "OUTLOOK_LIST_USER_CALENDAR_EVENT_INSTANCES", "name": "List calendar event instances", "description": "Tool to retrieve instances (occurrences) of a recurring event from a specific calendar within a date range. Use when you need event instances from a particular calendar." }, { "slug": "OUTLOOK_LIST_USER_CALENDAR_EVENTS_ATTACHMENTS", "name": "List user calendar event attachments", "description": "Tool to list attachments for a user's calendar event. Use when you need to retrieve all attachments from a specific event in a user's calendar." }, { "slug": "OUTLOOK_LIST_USER_CALENDAR_GROUP_EVENT_INSTANCES", "name": "List event instances", "description": "Tool to list instances (occurrences) of a recurring event within a specified date range from a user's calendar in a calendar group. Use when you need to retrieve specific occurrences of a recurring event." }, { "slug": "OUTLOOK_LIST_USER_CALENDAR_GROUPS_CALENDAR_VIEW", "name": "Get Calendar View from User Calendar Group", "description": "Tool to get calendar view from a specific calendar within a calendar group for a user. Use when retrieving events from a calendar that belongs to a calendar group." }, { "slug": "OUTLOOK_LIST_USER_CALENDARS_CALENDAR_PERMISSIONS", "name": "List user calendar permissions", "description": "Tool to list calendar permissions for a specific user's specific calendar. Use when you need to see who has access to a user's calendar and their permission levels." }, { "slug": "OUTLOOK_LIST_USER_CALENDARS_EVENTS", "name": "List user calendars events", "description": "Tool to retrieve events from a specific calendar for a user. Use when you need to list calendar events for a specific user by user ID and calendar ID." }, { "slug": "OUTLOOK_LIST_USER_CALENDAR_VIEW", "name": "Get calendar view from user's calendar", "description": "Tool to get calendar view from a specific user's calendar. Use when you need to retrieve events that occur or overlap with a specified time window from a user's specific calendar by calendar ID." }, { "slug": "OUTLOOK_LIST_USER_CONTACTS", "name": "List user contacts", "description": "Tool to retrieve contacts from a specific user's mailbox. Use when you need to list or browse contacts for a given user." }, { "slug": "OUTLOOK_LIST_USERS", "name": "List users", "description": "Tool to list users in Microsoft Entra ID. Use when you need to retrieve a paginated list of users, optionally filtering or selecting specific properties. For single-user lookups, prefer a dedicated get-user tool — listing all users is significantly heavier and slower." }, { "slug": "OUTLOOK_MOVE_MAIL_FOLDER", "name": "Move mail folder", "description": "Tool to move a mail folder and its contents to another mail folder. Use when you need to reorganize the folder hierarchy." }, { "slug": "OUTLOOK_MOVE_ME_MAIL_FOLDER", "name": "Move child mail folder", "description": "Tool to move a child mail folder to a different parent folder. Use when you need to reorganize subfolders within the folder hierarchy." }, { "slug": "OUTLOOK_MOVE_MESSAGE", "name": "Move message to folder", "description": "Move a message to another folder within the specified user's mailbox. Creates a new copy in the destination folder and removes the original. The message_id changes after a successful move; use the ID returned in the response for any subsequent operations on the moved message. Retries transient Microsoft Graph 404 responses with exponential backoff for up to 7.5 seconds because newly surfaced messages can be eventually consistent. High-volume parallel moves can trigger HTTP 429 (MailboxConcurrency) throttling; honor the Retry-After header." }, { "slug": "OUTLOOK_MOVE_MESSAGE_FROM_CHILD_FOLDER", "name": "Move message from child folder", "description": "Tool to move a message from a child folder to another destination folder. Use when you need to move a message that exists within a specific folder hierarchy (parent folder → child folder → message)." }, { "slug": "OUTLOOK_MOVE_MESSAGE_FROM_FOLDER", "name": "Move message from folder", "description": "Tool to move a message from a specific mail folder to another destination folder. Use when you need to move a message and know both the source folder ID and the message ID." }, { "slug": "OUTLOOK_PERMANENT_DELETE_MESSAGE", "name": "Permanently Delete Message", "description": "Permanently deletes an Outlook message by moving it to the Purges folder in the dumpster. Unlike standard DELETE, this action makes the message unrecoverable by the user. IMPORTANT: This is NOT the same as DELETE - permanentDelete is irreversible and availability differs by national cloud deployments (not available in US Government L4, L5 (DOD), or China (21Vianet))." }, { "slug": "OUTLOOK_PIN_MESSAGE", "name": "Pin message", "description": "Tool to pin a message in an Outlook chat. Use when you want to mark an important message for quick access." }, { "slug": "OUTLOOK_QUERY_EMAILS", "name": "Query Emails", "description": "Query Outlook emails within a SINGLE folder using OData filters. Build precise server-side filters for dates, read status, importance, subjects, attachments, and conversations. Best for structured queries on message metadata within a specific folder. Returns up to 100 messages per request with pagination support. • Searches SINGLE folder only (inbox, sentitems, etc.) - NOT across all folders • For cross-folder/mailbox-wide search: Use OUTLOOK_SEARCH_MESSAGES • Server-side filters: dates, importance, isRead, hasAttachments, subjects, conversationId • Pagination: use the returned next_page_token (pass it back as page_token) until it is absent • Limitations: Recipient/body filtering requires OUTLOOK_SEARCH_MESSAGES" }, { "slug": "OUTLOOK_REPLY_EMAIL", "name": "Reply to Email", "description": "Sends a reply to an Outlook email message with optional HTML formatting, identified by `message_id`, allowing optional CC and BCC recipients." }, { "slug": "OUTLOOK_SEARCH_EVENTS", "name": "Search calendar events", "description": "Searches for calendar events in the authenticated user's primary calendar using the Microsoft Graph Search API. This action performs full-text search across event subject, body, location, and attendee information. Use this action when you need to find events by keyword or phrase rather than filtering by specific fields. For filtering by date range or specific properties, use the list events action instead." }, { "slug": "OUTLOOK_SEARCH_MESSAGES", "name": "Search Outlook messages", "description": "Search Outlook messages using powerful KQL syntax. Supports sender (from:), recipient (to:, cc:), subject, date filters (received:, sent:), attachments, and boolean logic. Only works with Microsoft 365/Enterprise accounts (no @hotmail.com/@outlook.com). Examples: 'from:user@example.com AND received>=2025-10-01', 'to:info@jcdn.nl AND subject:invoice', 'received>today-30 AND hasattachment:yes'" }, { "slug": "OUTLOOK_SEND_DRAFT", "name": "Send draft", "description": "Tool to send an existing draft message. Use after creating a draft when you want to deliver it to recipients immediately. Example: Send a draft message with ID 'AAMkAG…'." }, { "slug": "OUTLOOK_SEND_EMAIL", "name": "Send email", "description": "Sends an email with subject, body, recipients, and optional attachments via Microsoft Graph API. Supports comma-separated email addresses in the to_email field for multiple recipients. Accepts either a single file or a list of files as attachments. Attachments require a non-empty file with valid name and mimetype." }, { "slug": "OUTLOOK_SNOOZE_CALENDAR_GROUP_EVENT_REMINDER", "name": "Snooze user calendar group event reminder", "description": "Tool to snooze a reminder for a user's calendar event within a calendar group to a new time. Use when you need to postpone an event reminder for a specific user's calendar that belongs to a calendar group." }, { "slug": "OUTLOOK_SNOOZE_EVENT_REMINDER", "name": "Snooze event reminder", "description": "Tool to postpone an event reminder until a new time. Use when you need to delay a reminder for a calendar event." }, { "slug": "OUTLOOK_SNOOZE_USER_CALENDAR_EVENT_REMINDER", "name": "Snooze user calendar event reminder", "description": "Tool to snooze a reminder for a calendar event in a specific user calendar to a new time. Use when you need to postpone an event reminder for a specific calendar." }, { "slug": "OUTLOOK_SNOOZE_USER_EVENT_REMINDER", "name": "Snooze user event reminder", "description": "Tool to snooze a reminder for a user's calendar event to a new time. Use when you need to postpone an event reminder for a specific user." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_EVENT", "name": "Update calendar event", "description": "Updates specified fields of an existing Outlook calendar event. Implementation note: To avoid unintentionally clearing properties, the action first fetches the existing event, merges only the provided fields, and then PATCHes the merged updates. Unspecified fields remain unchanged." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_EVENT_IN_CALENDAR", "name": "Update event in specific calendar", "description": "Tool to update an event in a specific Outlook calendar. Use when you need to modify event details like subject, time, attendees, or location in a non-default calendar." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_GROUP", "name": "Update calendar group", "description": "Tool to update the properties of a calendar group object. Use when you need to rename a calendar group." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_GROUP_CALENDAR_PERMISSION", "name": "Update Calendar Group Calendar Permission", "description": "Tool to update a calendar permission within a calendar group. Use when changing access levels for calendars in specific groups." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_GROUPS_CALENDARS", "name": "Update user calendar in calendar group", "description": "Tool to update a calendar within a calendar group in a user's mailbox. Use when modifying calendar properties like name, color, or default calendar status." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_GROUPS_CALENDARS_EVENTS", "name": "Update user calendar group event", "description": "Tool to update an event in a calendar within a calendar group for a specific user. Use when modifying event details for a user's calendar." }, { "slug": "OUTLOOK_UPDATE_CALENDAR_PERMISSION", "name": "Update calendar permission", "description": "Tool to update calendar permission levels for share recipients or delegates. Use when you need to change the access level (role) for someone who has been granted access to a calendar." }, { "slug": "OUTLOOK_UPDATE_CHILD_FOLDER_CONTACT", "name": "Update child folder contact", "description": "Tool to update a contact in a child contact folder within a parent contact folder. Use when you need to modify contact properties such as name, email, phone numbers, or company details for contacts in nested folder structures." }, { "slug": "OUTLOOK_UPDATE_CONTACT", "name": "Update Contact", "description": "Updates an existing Outlook contact, identified by `contact_id` for the specified `user_id`, requiring at least one other field to be modified." }, { "slug": "OUTLOOK_UPDATE_CONTACT_FOLDER", "name": "Update user contact folder", "description": "Tool to update the properties of a contact folder for a specific user. Use when you need to rename or move an existing contact folder." }, { "slug": "OUTLOOK_UPDATE_CONTACT_FOLDER_CHILD_FOLDER", "name": "Update user contact folder child folder", "description": "Tool to update a child folder within a contact folder for a specific user. Use when you need to rename a child contact folder or move it to a different parent folder." }, { "slug": "OUTLOOK_UPDATE_CONTACT_FOLDERS_CONTACTS", "name": "Update contact in folder", "description": "Tool to update a contact within a specific contact folder. Use when you need to modify contact details for a contact stored in a particular folder." }, { "slug": "OUTLOOK_UPDATE_EMAIL", "name": "Update email message", "description": "Updates specified properties of an existing email message; `message_id` must identify a valid message within the specified `user_id`'s mailbox." }, { "slug": "OUTLOOK_UPDATE_EMAIL_RULE", "name": "Update Email Rule", "description": "Update an existing email rule" }, { "slug": "OUTLOOK_UPDATE_EVENT_EXTENSION", "name": "Update event extension", "description": "Tool to update an open extension on a calendar event in Microsoft Graph. Use when you need to modify custom properties stored in an event extension." }, { "slug": "OUTLOOK_UPDATE_EVENT_EXTENSION_IN_CALENDAR_GROUP", "name": "Update event extension in calendar group", "description": "Tool to update an open extension on a calendar event within a calendar group. Use when modifying custom properties stored in an event extension for events in calendar groups." }, { "slug": "OUTLOOK_UPDATE_INFERENCE_CLASSIFICATION", "name": "Update Inference Classification", "description": "Tool to update the inferenceClassification resource for a user. Use when needing to refresh or sync the Focused Inbox classification settings. Note: The inferenceClassification resource has no writable properties; actual message classification rules are managed through the overrides collection." }, { "slug": "OUTLOOK_UPDATE_MAILBOX_SETTINGS", "name": "Update mailbox settings", "description": "Tool to update mailbox settings for the signed-in user. Use when you need to configure automatic replies, default time zone, language, or working hours. Example: schedule automatic replies for vacation." }, { "slug": "OUTLOOK_UPDATE_MAIL_FOLDER", "name": "Update mail folder", "description": "Tool to update the display name of a mail folder. Use when you need to rename an existing mail folder." }, { "slug": "OUTLOOK_UPDATE_MASTER_CATEGORY", "name": "Update master category", "description": "Tool to update the color of a category in the user's master category list. Use when you need to change the color of an existing category. Note that the display name cannot be modified after creation." }, { "slug": "OUTLOOK_UPDATE_ME_CONTACTS_EXTENSIONS", "name": "Update contact extension", "description": "Tool to update an open extension on a contact in a contact folder. Use when you need to modify custom properties stored in a contact extension." }, { "slug": "OUTLOOK_UPDATE_TODO_TASK", "name": "Update To Do task", "description": "Tool to update an existing task in Microsoft To Do. Use when modifying a task's title, status, importance, due date, reminder, body, or categories. Only the fields you provide will be changed." }, { "slug": "OUTLOOK_UPDATE_USER_CALENDAR", "name": "Update user calendar", "description": "Tool to update the properties of a user's calendar. Use when you need to rename a calendar or change its color theme for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_CALENDAR_CALENDAR_EVENT", "name": "Update user calendar event", "description": "Deprecated: Use OUTLOOK_UPDATE_CALENDAR_EVENT_IN_CALENDAR instead, which supports both /me and /users/{user_id} endpoints and additional fields (is_all_day, importance, sensitivity, reminders)." }, { "slug": "OUTLOOK_UPDATE_USER_CALENDAR_EVENT", "name": "Update user calendar event", "description": "Tool to update an event in a specific user's calendar. Use when you need to modify calendar event properties for a user other than the signed-in user." }, { "slug": "OUTLOOK_UPDATE_USER_CALENDAR_PERMISSION", "name": "Update user calendar permission", "description": "Tool to update calendar permission levels for a specific user's calendar. Use when you need to change the access level (role) for someone who has been granted access to a user's calendar." }, { "slug": "OUTLOOK_UPDATE_USER_CALENDARS", "name": "Update user calendar by ID", "description": "Tool to update properties of a specific calendar by ID for a specific user. Use when you need to rename a user's calendar, change its color theme, or set it as the default calendar." }, { "slug": "OUTLOOK_UPDATE_USER_CHILD_FOLDER_MESSAGE", "name": "Update user child folder message", "description": "Tool to update a message in a child folder within a user's mailbox. Use when you need to modify message properties such as isRead status, importance, categories, or subject for messages in nested folder structures for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_CONTACT_EXTENSION", "name": "Update user contact extension", "description": "Tool to update an open extension on a contact in a user's contact folder. Use when you need to modify custom properties stored in a contact extension for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_CONTACTS_EXTENSIONS", "name": "Update user contact extension", "description": "Tool to update an open extension on a contact in a user's contact folder. Use when you need to modify custom properties stored in a contact extension for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_CONTACTS_EXTENSIONS_DIRECT", "name": "Update user contact extension (v3)", "description": "Tool to update an open extension on a contact directly under a user's contacts collection. Use when you need to modify custom properties stored in a contact extension." }, { "slug": "OUTLOOK_UPDATE_USER_EVENT_EXTENSION", "name": "Update user event extension", "description": "Deprecated: Use OUTLOOK_UPDATE_EVENT_EXTENSION_IN_CALENDAR_GROUP instead, which supports both /me and /users/{user_id} endpoints and uses the correct @odata.type prefix." }, { "slug": "OUTLOOK_UPDATE_USER_EVENTS_EXTENSIONS", "name": "Update user events extensions", "description": "Tool to update an open extension on a user's calendar event. Use when modifying custom properties stored in an event extension for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_INFERENCE_CLASSIFICATION_OVERRIDE", "name": "Update User Inference Classification Override", "description": "Tool to update the classification of messages from a specific sender in a user's Focused Inbox. Use when you need to change whether messages from a sender go to Focused or Other inbox for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_MAIL_FOLDER_MESSAGE", "name": "Update user mail folder message", "description": "Tool to update properties of a message in a specific mail folder for a user. Use when you need to modify message attributes like categories, read status, importance, or other properties for a message within a particular user's folder." }, { "slug": "OUTLOOK_UPDATE_USER_MAIL_FOLDER_MESSAGE_EXTENSION", "name": "Update user message extension", "description": "Tool to update an open extension on a message within a specific user's mail folder. Use when you need to modify custom properties stored in a message extension for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_MAIL_FOLDER_MESSAGE_RULE", "name": "Update user mail folder message rule", "description": "Tool to update a message rule in a user's mail folder. Use when you need to modify an existing rule's properties, conditions, actions, or exceptions for a specific user." }, { "slug": "OUTLOOK_UPDATE_USER_MAIL_FOLDERS_CHILD_FOLDERS", "name": "Update user mail folder child folder", "description": "Tool to update a child folder within a mail folder for a specific user. Use when you need to rename a child mail folder." }, { "slug": "OUTLOOK_UPDATE_USER_MESSAGE_EXTENSION", "name": "Update user message extension", "description": "Tool to update an open extension on a user's message. Use when you need to modify custom properties stored in a message extension for a specific user." } ], "triggers": [ { "slug": "OUTLOOK_CONTACT_TRIGGER", "name": "New Contact Added", "description": "Triggered when a new contact is added in the Outlook contacts." }, { "slug": "OUTLOOK_EVENT_CHANGE_TRIGGER", "name": "Calendar Event Changes", "description": "Triggered when a new calendar event occurs (created, updated, or deleted) in the Outlook calendar." }, { "slug": "OUTLOOK_EVENT_TRIGGER", "name": "New Calendar Event", "description": "Triggered when a new calendar event is created in the Outlook calendar." }, { "slug": "OUTLOOK_MESSAGE_TRIGGER", "name": "New Outlook Message", "description": "Triggered when a new message is received in the Outlook mailbox." }, { "slug": "OUTLOOK_SENT_MESSAGE_TRIGGER", "name": "New Sent Message", "description": "Triggered when a new message is sent from the Outlook mailbox." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "outlook_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Calendars.Read,Calendars.ReadWrite,Calendars.ReadWrite.Shared,Contacts.ReadWrite,Chat.ReadWrite,Mail.Read,Mail.ReadWrite,Mail.Send,MailboxSettings.Read,MailboxSettings.ReadWrite,offline_access,User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } }, { "mode": "S2S_OAUTH2", "name": "outlook_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & Secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Your Microsoft Entra (Azure AD) tenant ID in GUID format (e.g. \"a6a55c5f-0747-4804-a166-2b5dfc9ace2a\"). Found in Azure Portal > Microsoft Entra ID > Overview > Tenant ID.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "perplexityai", "name": "Perplexity AI", "logo": "https://logos.composio.dev/api/perplexityai", "description": "Perplexity AI provides conversational AI models for generating human-like text responses", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PERPLEXITYAI_CREATE_ASYNC_CHAT_COMPLETION", "name": "Create Async Chat Completion", "description": "Create Async Chat Completion (POST /v1/async/sonar). Submits an asynchronous chat completion request for long-running tasks. Returns immediately with a request ID that can be polled using the Get Async Chat Completion action. Only the 'sonar-deep-research' model is supported for async processing. Async jobs have a 7-day TTL. Deep research generates very long responses (10K-100K+ words) with exhaustive multi-source analysis. Use the idempotency_key to prevent duplicate submissions. Poll with Get Async Chat Completion using the returned request ID to retrieve results when status is COMPLETED." }, { "slug": "PERPLEXITYAI_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Perplexity Sonar Chat Completions (POST /v1/sonar). Generates web-grounded conversational AI responses with citations. Supports multiple Sonar models optimized for different use cases: - sonar: Fast, cost-effective for simple queries - sonar-pro: Enhanced quality for complex questions - sonar-reasoning-pro: Chain-of-thought reasoning with blocks - sonar-deep-research: Exhaustive multi-source research (generates very long responses, 10K+ words; prefer the async endpoint for this model) Features: web search grounding, citations, images, structured JSON output, search filtering by domain/date/language/recency, and streaming. Important constraints: - search_recency_filter and date filters (search_after_date_filter, search_before_date_filter, etc.) are mutually exclusive. Use one or the other, not both. - Messages with the 'tool' role must alternate with 'assistant' messages. A valid pattern is: system -> user -> assistant -> tool -> user. - The 'stop' parameter is not currently supported by the API." }, { "slug": "PERPLEXITYAI_CREATE_CONTEXTUALIZED_EMBEDDINGS", "name": "Create Contextualized Embeddings", "description": "Create Contextualized Embeddings (POST /v1/contextualizedembeddings). Generates document-aware embeddings where chunks from the same document share context. Unlike standard embeddings, these recognize sequential relationships within documents, improving retrieval quality. Models: pplx-embed-context-v1-0.6b (1024 dims) and pplx-embed-context-v1-4b (2560 dims). Both support Matryoshka dimension reduction and INT8/binary quantization." }, { "slug": "PERPLEXITYAI_CREATE_EMBEDDINGS", "name": "CreateEmbeddings", "description": "Generate vector embeddings for independent texts (queries, sentences, documents). This action takes one or more input texts and generates vector embeddings using Perplexity AI's embedding models. Embeddings are useful for semantic search, similarity matching, and machine learning downstream tasks. Supported models: - pplx-embed-v1-0.6b: Smaller, faster model (1024 dimensions) - pplx-embed-v1-4b: Larger, more accurate model (2560 dimensions) The output embeddings are base64-encoded for efficient transmission. Use the dimensions parameter to reduce embedding size for faster processing when full precision is not required (Matryoshka representation)." }, { "slug": "PERPLEXITYAI_EXECUTE_AGENT", "name": "Execute Agent", "description": "Create Agent Response (POST /v1/agent). Orchestrates multi-step agentic workflows with built-in tools (web search, URL fetching, function calling), reasoning, and multi-model support. Streaming is not supported by this action. At least one of 'model', 'models', or 'preset' must be provided. Available presets: 'fast-search', 'pro-search', 'deep-research'. The 'deep-research' preset generates very long responses (10K-100K+ words) with exhaustive multi-source analysis. Available models include Perplexity Sonar, OpenAI, Anthropic, Google, xAI, and NVIDIA models at direct provider rates. Use the List Models action to see available model identifiers." }, { "slug": "PERPLEXITYAI_GET_ASYNC_CHAT_COMPLETION", "name": "Get Async Chat Completion", "description": "Get Async Chat Completion (GET /v1/async/sonar/{id}). Retrieves the result of an asynchronous chat completion request by its ID. Use this to poll for the result after creating an async job. The response includes the status and, when completed, the full completion." }, { "slug": "PERPLEXITYAI_LIST_ASYNC_CHAT_COMPLETIONS", "name": "List Async Chat Completions", "description": "List Async Chat Completions (GET /v1/async/sonar). Retrieves a list of all asynchronous chat completion requests for the authenticated user. Use this to see the status of all your pending, completed, and failed async jobs." }, { "slug": "PERPLEXITYAI_LIST_MODELS", "name": "List Models", "description": "List Models (GET /v1/models). Lists models available for the Agent API. Returns model identifiers that can be used with the Agent endpoint. The response follows the OpenAI List Models format for compatibility. This is a public endpoint that does not require authentication." }, { "slug": "PERPLEXITYAI_SEARCH", "name": "Perplexity Search (Raw Results)", "description": "Search the Web (POST /search). Returns raw, ranked web search results directly from Perplexity's index without LLM processing. Faster and cheaper than chat completions when you need raw results. Supports filtering by domain, date, language, country, and recency. Max 20 results per request. Important: search_recency_filter and date filters (search_after_date_filter, search_before_date_filter, last_updated_after_filter, last_updated_before_filter) are mutually exclusive. Use one or the other, not both." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pplx_scheme", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret Perplexity API key, starting with 'pplx-'. Create one at console.perplexity.ai under API Keys — it's shown only once, so copy it immediately.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twitter", "name": "Twitter", "logo": "https://logos.composio.dev/api/twitter", "description": "Twitter, Inc. was an American social media company based in San Francisco, California, which operated and was named for named for its flagship social media network prior to its rebrand as X.", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 79, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TWITTER_ADD_LIST_MEMBER", "name": "Add a list member", "description": "Adds a user to a specified Twitter List; the list must be owned by the authenticated user." }, { "slug": "TWITTER_ADD_POST_TO_BOOKMARKS", "name": "Add post to bookmarks", "description": "Adds a specified, existing, and accessible Tweet to a user's bookmarks, with success indicated by the 'bookmarked' field in the response." }, { "slug": "TWITTER_APPEND_MEDIA_UPLOAD", "name": "Append Media Upload", "description": "Append data chunk to an ongoing media upload session on X/Twitter. Use this action during chunked media uploads to append each segment of media data in sequence." }, { "slug": "TWITTER_BOOKMARKS_BY_USER", "name": "Get bookmarks by user", "description": "Retrieves Tweets bookmarked by the authenticated user, where the provided User ID must match the authenticated user's ID." }, { "slug": "TWITTER_CREATE_ACTIVITY_SUBSCRIPTION", "name": "Create activity subscription", "description": "Tool to create a subscription for an X activity event. Use when you need to monitor specific user activities like profile updates, follows, or spaces events." }, { "slug": "TWITTER_CREATE_COMPLIANCE_JOB", "name": "Create compliance job", "description": "Creates a new compliance job to check the status of Tweet or user IDs; upload IDs as a plain text file (one ID per line) to the `upload_url` received in the response." }, { "slug": "TWITTER_CREATE_DM_CONVERSATION", "name": "Create group DM conversation", "description": "Creates a new group Direct Message (DM) conversation on Twitter. REQUIRED PARAMETERS: - conversation_type: Must be 'Group' - participant_ids: List of Twitter user IDs to include in the conversation - message: JSON object with the initial message. Must contain 'text' field. To include media attachments, use message.attachments array with media_id (NOT media_url): {\"text\": \"...\", \"attachments\": [{\"media_id\": \"1234567890\"}]} Note: Media must be uploaded first using the upload_media action to obtain a media_id." }, { "slug": "TWITTER_CREATE_LIST", "name": "Create a list", "description": "Creates a new, empty List on X (formerly Twitter), for which the provided name must be unique for the authenticated user; accounts are added separately." }, { "slug": "TWITTER_CREATION_OF_A_POST", "name": "Create a post", "description": "Creates a Tweet on Twitter; `text` is required unless `card_uri`, `media_media_ids`, `poll_options`, or `quote_tweet_id` is provided. Example - Creating a tweet with media and location: { \"text\": \"Check out our latest product update! 🚀\", \"media_media_ids\": [\"1455952740635586573\"], \"geo_place_id\": \"df51dec6f4ee2b2c\" } Example - Quote tweet with commentary: { \"text\": \"This is a game-changer for the industry! Here's why... 🧵\", \"quote_tweet_id\": \"1453828617121234945\" } Example - Reply to a tweet: { \"text\": \"Great point! Here's my take on this...\", \"reply_in_reply_to_tweet_id\": \"1453828617121234945\" }" }, { "slug": "TWITTER_DELETE_DM", "name": "Delete direct message", "description": "Permanently deletes a specific Twitter Direct Message (DM) event using its `event_id` if the authenticated user sent it; this action is irreversible and does not delete entire conversations." }, { "slug": "TWITTER_DELETE_LIST", "name": "Delete list", "description": "Permanently deletes a specified Twitter List using its ID, which must be owned by the authenticated user; this action is irreversible and the list must already exist." }, { "slug": "TWITTER_FOLLOWERS_BY_USER_ID", "name": "Get followers by user id", "description": "Retrieves a list of users who follow a specified public Twitter user ID." }, { "slug": "TWITTER_FOLLOWING_BY_USER_ID", "name": "Get following by user ID", "description": "Retrieves users followed by a specific Twitter user, allowing pagination and customization of returned user and tweet data fields via expansions." }, { "slug": "TWITTER_FOLLOW_LIST", "name": "Follow a list", "description": "Allows the authenticated user (`id`) to follow a specific Twitter List (`list_id`) they are permitted to access, subscribing them to the list's timeline; this does not automatically follow individual list members." }, { "slug": "TWITTER_FOLLOW_USER", "name": "Follow a user", "description": "Allows an authenticated user (path `id`) to follow another user (`target_user_id`), which results in a pending request if the target user's tweets are protected." }, { "slug": "TWITTER_FULL_ARCHIVE_SEARCH", "name": "Search full archive of tweets", "description": "Searches the full archive of public Tweets from March 2006 onwards; use 'start_time' and 'end_time' together for a defined time window." }, { "slug": "TWITTER_GET_BLOCKED_USERS", "name": "Get users blocked by user ID", "description": "Retrieves the authenticated user's own block list. IMPORTANT: You can only retrieve YOUR OWN block list - the `id` parameter must be the authenticated user's ID. Use the 'Get authenticated user' action first to obtain your user ID." }, { "slug": "TWITTER_GET_COMPLIANCE_JOB", "name": "Retrieve compliance job by id", "description": "Retrieves status, download/upload URLs, and other details for an existing Twitter compliance job specified by its unique ID." }, { "slug": "TWITTER_GET_COMPLIANCE_JOBS", "name": "Retrieve compliance jobs", "description": "Returns a list of recent compliance jobs, filtered by type (tweets or users) and optionally by status." }, { "slug": "TWITTER_GET_DM_CONVERSATION_EVENTS", "name": "Get DM events for a DM conversation", "description": "Fetches Direct Message (DM) events for a one-on-one conversation with a specified participant ID, ordered chronologically newest to oldest; does not support group DMs." }, { "slug": "TWITTER_GET_DM_EVENT", "name": "Get DM events by ID", "description": "Fetches a specific Direct Message (DM) event by its unique ID, allowing optional expansion of related data like users or tweets; ensure the `event_id` refers to an existing DM event accessible to the authenticated user." }, { "slug": "TWITTER_GET_LIST", "name": "Lookup list by ID", "description": "Returns metadata for a specific Twitter List, identified by its ID; does not return list members but can expand the owner's User object via the `expansions` parameter." }, { "slug": "TWITTER_GET_LIST_FOLLOWERS", "name": "Get list followers", "description": "Fetches a list of users who follow a specific Twitter List, identified by its ID; ensure the authenticated user has access if the list is private." }, { "slug": "TWITTER_GET_LIST_MEMBERS", "name": "Fetch list members by id", "description": "Fetches members of a specific Twitter List, identified by its unique ID." }, { "slug": "TWITTER_GET_MEDIA_UPLOAD_STATUS", "name": "Get Media Upload Status", "description": "Get the processing status of uploaded media (videos/GIFs) on X/Twitter. Only call this when the FINALIZE command returned a processing_info field. Poll every 3–5 seconds with a 60–120 second maximum timeout to avoid HTTP 429 errors. Response state cycles through 'pending', 'in_progress', 'succeeded', and 'failed'. Only attach media_id to a tweet when state is 'succeeded'. State 'failed' is terminal — requires a completely new upload via TWITTER_UPLOAD_MEDIA or TWITTER_UPLOAD_LARGE_MEDIA. Video/GIF processing takes 30–120 seconds; posting before 'succeeded' results in non-playable media." }, { "slug": "TWITTER_GET_MUTED_USERS", "name": "Get muted users", "description": "Returns user objects muted by the X user identified by the `id` path parameter." }, { "slug": "TWITTER_GET_OPENAPI_SPEC", "name": "Fetch OpenAPI specification", "description": "Fetches the OpenAPI specification (JSON) for Twitter's API v2, used to programmatically understand the API's structure for developing client libraries or tools." }, { "slug": "TWITTER_GET_POST_ANALYTICS", "name": "Get Post analytics", "description": "Tool to retrieve analytics data for specified Posts within a defined time range. Use when you need engagement metrics, impressions, or other analytics for one or more Posts. Requires OAuth 2.0 with tweet.read and users.read scopes." }, { "slug": "TWITTER_GET_POST_RETWEETERS_ACTION", "name": "Get post retweeters", "description": "Retrieves users who publicly retweeted a specified public Post ID, excluding Quote Tweets and retweets from private accounts." }, { "slug": "TWITTER_GET_POST_RETWEETS", "name": "Retrieve retweets of a post", "description": "Retrieves Tweets that Retweeted a specified public or authenticated-user-accessible Tweet ID, optionally customizing the response with fields and expansions." }, { "slug": "TWITTER_GET_POST_USAGE", "name": "Fetch tweet usage data", "description": "Fetches Tweet usage statistics for a Project (e.g., consumption, caps, daily breakdowns for Project & Client Apps) to monitor API limits; data can be retrieved for 1 to 90 days." }, { "slug": "TWITTER_GET_RECENT_DM_EVENTS", "name": "Get recent direct message events", "description": "Returns recent Direct Message events for the authenticated user, such as new messages or changes in conversation participants." }, { "slug": "TWITTER_GET_SPACE_BY_ID", "name": "Look up space by ID", "description": "Retrieves details for a Twitter Space by its ID, allowing for customization and expansion of related data, provided the Space ID is valid and accessible." }, { "slug": "TWITTER_GET_SPACE_POSTS", "name": "Retrieve posts from a space", "description": "Retrieves Tweets that were shared/posted during a Twitter Space broadcast. IMPORTANT: This endpoint returns Tweets that participants explicitly shared during the Space session, NOT audio transcripts, comments, or reactions. Most Spaces have zero associated Tweets, so empty results (result_count=0) are normal and expected. Twitter Spaces are primarily audio conversations - this endpoint only returns text Tweets that were shared alongside the audio." }, { "slug": "TWITTER_GET_SPACES_BY_CREATORS", "name": "Get spaces by creator IDs", "description": "Retrieves Twitter Spaces created by a list of specified User IDs, with options to customize returned data fields." }, { "slug": "TWITTER_GET_SPACES_BY_IDS", "name": "Get space information by IDs", "description": "Fetches detailed information for one or more Twitter Spaces (live, scheduled, or ended) by their unique IDs; at least one Space ID must be provided." }, { "slug": "TWITTER_GET_SPACE_TICKET_BUYERS", "name": "Fetch space ticket buyers list", "description": "Retrieves a list of users who purchased tickets for a specific, valid, and ticketed Twitter Space." }, { "slug": "TWITTER_GET_USER_BY_ID", "name": "Look up user by ID", "description": "Retrieves detailed public information for a Twitter user by their ID, optionally expanding related data (e.g., pinned tweets) and specifying particular user or tweet fields to return." }, { "slug": "TWITTER_GET_USER_FOLLOWED_LISTS", "name": "Get user's followed lists", "description": "Returns metadata (not Tweets) for lists a specific Twitter user follows, optionally including expanded owner details." }, { "slug": "TWITTER_GET_USER_LIST_MEMBERSHIPS", "name": "Get a user's list memberships", "description": "Retrieves all Twitter Lists a specified user is a member of, including public Lists and private Lists the authenticated user is authorized to view." }, { "slug": "TWITTER_GET_USER_OWNED_LISTS", "name": "Get a user's owned lists", "description": "Call this action to retrieve Lists created (owned) by a specific Twitter user, not Lists they follow or are subscribed to." }, { "slug": "TWITTER_GET_USER_PINNED_LISTS", "name": "Get a user's pinned lists", "description": "Retrieves the Lists a specific, existing Twitter user has pinned to their profile to highlight them." }, { "slug": "TWITTER_GET_USERS_BY_IDS", "name": "Look up users by IDs", "description": "Retrieves detailed information for specified X (formerly Twitter) user IDs, optionally customizing returned fields and expanding related entities." }, { "slug": "TWITTER_HIDE_REPLIES", "name": "Set reply visibility", "description": "Hides or unhides an existing reply Tweet. This action allows the authenticated user to hide or unhide a reply to a conversation they own (started). You can only hide replies to posts you authored. Note: Requires the tweet.moderate.write OAuth scope." }, { "slug": "TWITTER_INITIALIZE_MEDIA_UPLOAD", "name": "Initialize Media Upload", "description": "Initialize a media upload session for X/Twitter. Use this to start a chunked media upload process, which returns a media_id for subsequent APPEND and FINALIZE commands. Required for uploading large files or when using the chunked upload workflow." }, { "slug": "TWITTER_LIST_POST_LIKERS", "name": "List post likers", "description": "Retrieves users who have liked the Post (Tweet) identified by the provided ID." }, { "slug": "TWITTER_LIST_POSTS_TIMELINE_BY_LIST_ID", "name": "List posts timeline by list ID", "description": "Fetches the most recent Tweets posted by members of a specified Twitter List." }, { "slug": "TWITTER_MUTE_USER", "name": "Mute user by ID", "description": "Mutes a target user on behalf of an authenticated user, preventing the target's Tweets and Retweets from appearing in the authenticated user's home timeline without notifying the target." }, { "slug": "TWITTER_PIN_LIST", "name": "Pin a list", "description": "Pins a specified List to the authenticated user's profile, provided the List exists, the user has access rights, and the pin limit (typically 5 Lists) is not exceeded." }, { "slug": "TWITTER_POST_DELETE_BY_POST_ID", "name": "Delete tweet", "description": "Irreversibly deletes a specific Tweet by its ID; the Tweet may persist in third-party caches after deletion." }, { "slug": "TWITTER_POST_LOOKUP_BY_POST_ID", "name": "Look up post by id", "description": "Fetches comprehensive details for a single Tweet by its unique ID, provided the Tweet exists and is accessible." }, { "slug": "TWITTER_POST_LOOKUP_BY_POST_IDS", "name": "Get tweets by IDs", "description": "Retrieves detailed information for one or more Posts (Tweets) identified by their unique IDs, allowing selection of specific fields and expansions." }, { "slug": "TWITTER_RECENT_SEARCH", "name": "Search recent tweets", "description": "Searches Tweets from the last 7 days matching a query (using X's search syntax), ideal for real-time analysis, trend monitoring, or retrieving posts from specific users (e.g., `from:username`) DEFAULT FIELDS: Tweet objects always return 'id' and 'text' by default. User objects always return 'id', 'name', and 'username' by default when expanded. Do not request these default fields in field parameters. IMPORTANT LIMITATION - Impression Counts: The public_metrics.impression_count field returns 0 for search results from other users. Impression data is a non-public metric only available for tweets owned by the authenticated user. To filter by engagement, use retweet_count, like_count, or quote_count instead. Example - Get original tweets from Elon Musk since Sept 20, 2025: { \"query\": \"from:elonmusk -is:retweet -is:reply\", \"start_time\": \"2025-09-20T00:00:00Z\", \"max_results\": 50, \"tweet_fields\": [\"created_at\",\"public_metrics\",\"text\"], \"expansions\": [\"author_id\",\"attachments.media_keys\",\"referenced_tweets.id\"] }" }, { "slug": "TWITTER_REMOVE_LIST_MEMBER", "name": "Remove a list member", "description": "Removes a user from a Twitter List; the response `is_member` field will be `false` if removal was successful or the user was not a member, and the updated list of members is not returned." }, { "slug": "TWITTER_REMOVE_POST_FROM_BOOKMARKS", "name": "Remove a bookmarked post", "description": "Removes a Tweet, specified by `tweet_id`, from the authenticated user's bookmarks; the Tweet must have been previously bookmarked by the user for the action to have an effect." }, { "slug": "TWITTER_RETRIEVE_DM_CONVERSATION_EVENTS", "name": "Retrieve DM conversation events", "description": "Retrieves Direct Message (DM) events for a specific conversation ID on Twitter, useful for analyzing messages and participant activities." }, { "slug": "TWITTER_RETRIEVE_POSTS_THAT_QUOTE_A_POST", "name": "Retrieve posts that quote a post", "description": "Retrieves Tweets that quote a specified Tweet, requiring a valid Tweet ID." }, { "slug": "TWITTER_RETURNS_POST_OBJECTS_LIKED_BY_THE_PROVIDED_USER_ID", "name": "Retrieve liked tweets by user ID", "description": "Retrieves Tweets liked by a specified Twitter user, provided their liked tweets are public or accessible." }, { "slug": "TWITTER_RETWEET_POST", "name": "Retweet post", "description": "Retweets a Tweet for the authenticated user. The user ID is automatically fetched from the authenticated session - you only need to provide the tweet_id to retweet." }, { "slug": "TWITTER_SEARCH_FULL_ARCHIVE_COUNTS", "name": "Get full archive search counts", "description": "Returns a count of Tweets from the full archive that match a specified query, aggregated by day, hour, or minute; `start_time` must be before `end_time` if both are provided, and `since_id`/`until_id` cannot be used with `start_time`/`end_time`." }, { "slug": "TWITTER_SEARCH_RECENT_COUNTS", "name": "Fetch recent tweet counts", "description": "Retrieves the count of Tweets matching a specified search query within the last 7 days, aggregated by 'minute', 'hour', or 'day'." }, { "slug": "TWITTER_SEARCH_SPACES", "name": "Search for spaces", "description": "Searches for Twitter Spaces by a textual query, optionally filtering by state (live, scheduled, all) to discover audio conversations." }, { "slug": "TWITTER_SEND_A_NEW_MESSAGE_TO_A_USER", "name": "Send a new message to a user", "description": "Sends a new Direct Message with text and/or media (media_id for attachments must be pre-uploaded) to a specified Twitter user; this creates a new DM and does not modify existing messages." }, { "slug": "TWITTER_SEND_DM_TO_CONVERSATION", "name": "Send a new message to a DM conversation", "description": "Sends a message, with optional text and/or media attachments (using pre-uploaded `media_id`s), to a specified Twitter Direct Message conversation." }, { "slug": "TWITTER_STREAM_POST_LABELS", "name": "Get tweets label stream", "description": "Stream real-time Tweet label events (apply/remove). Requires Enterprise access and App-Only OAuth 2.0 auth. Returns PublicTweetNotice or PublicTweetUnviewable events. 403 errors indicate missing Enterprise access or wrong auth type." }, { "slug": "TWITTER_UNFOLLOW_LIST", "name": "Unfollow a list", "description": "Enables a user (via `id`) to unfollow a specific Twitter List (via `list_id`), which removes its tweets from their timeline and stops related notifications; the action reports `following: false` on success, even if the user was not initially following the list." }, { "slug": "TWITTER_UNFOLLOW_USER", "name": "Unfollow user", "description": "Allows the authenticated user to unfollow an existing Twitter user (`target_user_id`), which removes the follow relationship. The source user ID is automatically determined from the authenticated session." }, { "slug": "TWITTER_UNLIKE_POST", "name": "Unlike post", "description": "Allows an authenticated user (`id`) to remove their like from a specific post (`tweet_id`); the action is idempotent and completes successfully even if the post was not liked." }, { "slug": "TWITTER_UNMUTE_USER", "name": "Unmute a user by user ID", "description": "Unmutes a target user for the authenticated user, allowing them to see Tweets and notifications from the target user again. The source_user_id is automatically populated from the authenticated user's credentials." }, { "slug": "TWITTER_UNPIN_LIST", "name": "Unpin a list", "description": "Unpins a List (specified by list_id) from the authenticated user's profile. The user ID is automatically retrieved if not provided." }, { "slug": "TWITTER_UNRETWEET_POST", "name": "Unretweet post", "description": "Removes a user's retweet of a specified Post, if the user had previously retweeted it." }, { "slug": "TWITTER_UPDATE_LIST", "name": "Update list attributes", "description": "Updates an existing Twitter List's name, description, or privacy status, requiring the List ID and at least one mutable property." }, { "slug": "TWITTER_UPLOAD_LARGE_MEDIA", "name": "Upload Large Media", "description": "DEPRECATED: Use TWITTER_UPLOAD_MEDIA instead. Use this to upload a single media file to X/Twitter. Automatically uses chunked upload for GIFs, videos, and images larger than 5 MB. Max file size: 512 MB; max video duration: 140 seconds. After upload, poll TWITTER_GET_MEDIA_UPLOAD_STATUS until processing_info.state=='succeeded' before attaching the media_id to a tweet — GIFs and videos take 30–120 seconds to process. A terminal 'failed' state means the media_id is unusable and the file must be re-uploaded." }, { "slug": "TWITTER_UPLOAD_MEDIA", "name": "Upload Media", "description": "Upload media (images only) to X/Twitter using the v2 API. Supports tweet_image, dm_image, and subtitles media categories only. One file per call; the returned media_id expires (see expires_after_secs in response), so upload immediately before creating the tweet. For GIFs, videos, or any file larger than ~5 MB, use TWITTER_UPLOAD_LARGE_MEDIA instead." }, { "slug": "TWITTER_USER_HOME_TIMELINE_BY_USER_ID", "name": "Get user reverse chronological timeline", "description": "Retrieves the home timeline (reverse chronological feed) for the authenticated Twitter user. Returns tweets from accounts the user follows as well as the user's own tweets, in reverse chronological order. Useful for displaying the personalized feed without algorithmic sorting. CRITICAL: The 'id' parameter MUST be the authenticated user's own numeric Twitter user ID - use TWITTER_USER_LOOKUP_ME to get your ID first. This endpoint cannot fetch another user's home timeline, and passing any ID that doesn't match the authenticating user (including phone numbers or other user IDs) will result in an error. DEFAULT FIELDS: Tweet objects always return 'id' and 'text' by default. User objects always return 'id', 'name', and 'username' by default when expanded. Do not request these default fields in field parameters." }, { "slug": "TWITTER_USER_LIKE_POST", "name": "Like a tweet", "description": "Allows the authenticated user to like a specific, accessible Tweet, provided neither user has blocked the other and the authenticated user is not restricted from liking. The authenticated user's ID is automatically determined from the OAuth token - you only need to provide the tweet_id." }, { "slug": "TWITTER_USER_LOOKUP_BY_USERNAME", "name": "Look up user by username", "description": "Fetches public profile information for a valid and existing Twitter user by their username, optionally expanding related data like pinned Tweets; results may be limited for protected profiles not followed by the authenticated user." }, { "slug": "TWITTER_USER_LOOKUP_BY_USERNAMES", "name": "Look up users by username", "description": "Retrieves detailed information for 1 to 100 Twitter users by their usernames (each 1-15 alphanumeric characters/underscores), allowing customizable user/tweet fields and expansion of related data like pinned tweets." }, { "slug": "TWITTER_USER_LOOKUP_ME", "name": "Get authenticated user", "description": "Returns profile information for the currently authenticated X user, customizable via request fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "twitter_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "generic_id", "displayName": "Application Bearer Token", "type": "string", "description": "Bearer Token from your X Developer App (same App as the OAuth Client ID/Secret). Required for app-only actions: TWITTER_RECENT_SEARCH, TWITTER_RECENT_SEARCH_COUNTS, TWITTER_FULL_ARCHIVE_SEARCH, TWITTER_FULL_ARCHIVE_SEARCH_COUNTS, TWITTER_POST_LOOKUP_BY_POST_IDS, TWITTER_POST_USAGE, TWITTER_POSTS_LABEL_STREAM, TWITTER_CREATE_COMPLIANCE_JOB_REQUEST, TWITTER_RETRIEVE_COMPLIANCE_JOBS, TWITTER_RETRIEVE_COMPLIANCE_JOB_BY_ID.", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "dm.write,dm.read,mute.read,mute.write,space.read,tweet.write,tweet.read,tweet.moderate.write,users.read,follows.read,follows.write,like.read,like.write,list.read,list.write,block.read,block.write,bookmark.read,bookmark.write,media.write,offline.access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googledrive", "name": "Google Drive", "logo": "https://logos.composio.dev/api/googledrive", "description": "Google Drive is a cloud storage solution for uploading, sharing, and collaborating on files across devices, with robust search and offline access", "category": "file management & storage", "authSchemes": [ "OAUTH2" ], "toolCount": 90, "triggerCount": 7, "version": "20260703_01", "tools": [ { "slug": "GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE", "name": "Add file sharing preference (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_CREATE_PERMISSION instead; use GOOGLEDRIVE_UPDATE_PERMISSION to modify existing permissions (avoids duplicate entries). Modifies sharing permissions for an existing Google Drive file, granting a specified role to a user, group, domain, or 'anyone'. Bulk calls may trigger 403 rateLimitExceeded (~100 req/100s/user); use jittered exponential backoff." }, { "slug": "GOOGLEDRIVE_ADD_PARENT", "name": "Insert File Parent (v2)", "description": "Tool to add a parent folder for a file using Google Drive API v2. Use when you need to add a file to an additional folder." }, { "slug": "GOOGLEDRIVE_ADD_PROPERTY", "name": "Insert Property (v2 API)", "description": "Tool to add a property to a file, or update it if it already exists (v2 API). Use when you need to attach custom key-value metadata to a Google Drive file." }, { "slug": "GOOGLEDRIVE_COPY_FILE", "name": "Copy file (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_COPY_FILE_ADVANCED instead. Duplicates an existing file (not folders) in Google Drive by `file_id`; copy lands in same folder as original — use GOOGLEDRIVE_MOVE_FILE afterward for precise placement. Copy receives a new `file_id`; update stored references accordingly. For shared drives, requires organizer/manager rights." }, { "slug": "GOOGLEDRIVE_COPY_FILE_ADVANCED", "name": "Copy file with advanced options", "description": "Creates a copy of a file and applies any requested updates with patch semantics. Use when you need to duplicate a file with advanced options like label inclusion, visibility settings, or custom metadata." }, { "slug": "GOOGLEDRIVE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on a file in Google Drive. Returns a nested `data` object; extract `data.id` for the resulting comment identifier. Omit `anchor` and `quoted_file_content_*` for general file-level comments." }, { "slug": "GOOGLEDRIVE_CREATE_DRIVE", "name": "Create Shared Drive", "description": "Tool to create a new shared drive. Use when you need to programmatically create a new shared drive for collaboration or storage." }, { "slug": "GOOGLEDRIVE_CREATE_FILE", "name": "Create File or Folder", "description": "Creates a new file or folder in Google Drive. Supports both metadata-only creation (for folders and empty documents) and file upload with content. When file_to_upload is provided, uploads the actual file bytes; otherwise creates an empty file. Native Google file types (Docs, Sheets, Forms, etc.) and folders are created as empty shells when no content is provided; content must be added manually afterward. Newly created files are private by default — set sharing permissions afterward for collaboration. For shared-drive folders, use this tool with the target folder ID in `parents` rather than GOOGLEDRIVE_CREATE_FOLDER." }, { "slug": "GOOGLEDRIVE_CREATE_FILE_FROM_TEXT", "name": "Create a File from Text", "description": "Creates a new file in Google Drive from provided text content (up to 10MB), supporting various formats including automatic conversion to Google Workspace types. Returns flat metadata fields (`id`, `mimeType`, `name`) at the top level — not nested under a `file` object. Created files are private by default; use a sharing tool afterward for collaborative access. Rapid successive calls may trigger `403 rateLimitExceeded` or `429 userRateLimitExceeded`; apply exponential backoff between retries. Does not support shared-drive targets in all cases." }, { "slug": "GOOGLEDRIVE_CREATE_FOLDER", "name": "Create a folder", "description": "Creates a new folder in Google Drive, optionally within an EXISTING parent folder specified by its ID or name. The parent folder MUST already exist - use GOOGLEDRIVE_FIND_FOLDER first to verify the parent exists or find its ID. Google Drive permits duplicate folder names, so always store and reuse the folder ID returned by this action rather than relying on names for future lookups." }, { "slug": "GOOGLEDRIVE_CREATE_PERMISSION", "name": "Create Permission", "description": "Tool to create a permission for a file or shared drive. Use when you need to share a file or folder with users, groups, domains, or make it publicly accessible. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied." }, { "slug": "GOOGLEDRIVE_CREATE_PERMISSIONS_BATCH", "name": "Create Permissions Batch", "description": "Creates multiple permissions for files or shared drives in a single batch request. Use this action when you need to share multiple files with users, or share a single file with multiple users or groups simultaneously. Each permission in the batch can target a different file and specify different access levels. Batch operations are more efficient than creating permissions individually, with a maximum of 100 permissions per batch." }, { "slug": "GOOGLEDRIVE_CREATE_REPLY", "name": "Create Reply", "description": "Tool to create a reply to a comment in Google Drive. Use when you need to respond to an existing comment on a file." }, { "slug": "GOOGLEDRIVE_CREATE_SHORTCUT_TO_FILE", "name": "Create Shortcut to File/Folder", "description": "Tool to create a shortcut to a file or folder in Google Drive. Use when you need to link to an existing Drive item from another location without duplicating it. The shortcut receives its own distinct file ID (capture from response). No parent folder parameter exists; use GOOGLEDRIVE_MOVE_FILE after creation to place the shortcut in the desired location." }, { "slug": "GOOGLEDRIVE_CREATE_TEAM_DRIVE", "name": "Create Team Drive (Deprecated)", "description": "Tool to create a Team Drive. Deprecated: Use drives.create instead. Use when you need to create a Team Drive for collaboration." }, { "slug": "GOOGLEDRIVE_DELETE_CHILD", "name": "Delete Child (v2)", "description": "Tool to remove a child from a folder using Google Drive API v2. Use when you need to remove a file from a specific folder." }, { "slug": "GOOGLEDRIVE_DELETE_COMMENT", "name": "Delete Comment", "description": "Permanently deletes a comment thread (and all its replies) from a Google Drive file — this action is irreversible. To remove only a single reply within a thread, use GOOGLEDRIVE_DELETE_REPLY instead. Verify the exact comment content and comment_id before calling." }, { "slug": "GOOGLEDRIVE_DELETE_DRIVE", "name": "Delete Shared Drive", "description": "Tool to permanently delete a shared drive. Use when you need to remove a shared drive and its contents (if specified)." }, { "slug": "GOOGLEDRIVE_DELETE_FILE", "name": "Delete file", "description": "DEPRECATED: Use GOOGLEDRIVE_GOOGLE_DRIVE_DELETE_FOLDER_OR_FILE_ACTION instead. Tool to permanently delete a file owned by the user without moving it to trash. Use when permanent deletion is required. If the file belongs to a shared drive, the user must be an organizer on the parent folder." }, { "slug": "GOOGLEDRIVE_DELETE_PARENT", "name": "Delete Parent (v2)", "description": "Tool to remove a parent from a file using Google Drive API v2. Use when you need to remove a file from a specific folder." }, { "slug": "GOOGLEDRIVE_DELETE_PERMISSION", "name": "Delete Permission", "description": "Deletes a permission from a file by permission ID. Deletion is irreversible — confirm the target user, group, or permission type before executing. IMPORTANT: You must first call GOOGLEDRIVE_LIST_PERMISSIONS to get valid permission IDs. To fully revoke public access, the type='anyone' (link-sharing) permission must be explicitly deleted; revoking other permissions leaves the file publicly accessible via link. Use when you need to revoke access for a specific user or group from a file." }, { "slug": "GOOGLEDRIVE_DELETE_PROPERTY", "name": "Delete Property (v2 API)", "description": "Tool to delete a property from a file using Google Drive API v2. Use when you need to remove custom key-value metadata from a file." }, { "slug": "GOOGLEDRIVE_DELETE_REPLY", "name": "Delete Reply", "description": "Tool to delete a specific reply by reply ID. Deletion is irreversible; obtain explicit user confirmation before calling. Removes only the targeted reply, not the full comment thread — use GOOGLEDRIVE_DELETE_COMMENT to remove the entire thread." }, { "slug": "GOOGLEDRIVE_DELETE_REVISION", "name": "Delete Revision", "description": "Tool to permanently delete a file revision. Use when you need to remove a specific version of a binary file (images, videos, etc.). Cannot delete revisions for Google Docs/Sheets or the last remaining revision." }, { "slug": "GOOGLEDRIVE_DELETE_TEAM_DRIVE", "name": "Delete Team Drive (Deprecated)", "description": "Tool to permanently delete a Team Drive. Deprecated: Use drives.delete instead. Use when you need to remove a Team Drive using the legacy endpoint." }, { "slug": "GOOGLEDRIVE_DOWNLOAD_FILE", "name": "Download a file from Google Drive", "description": "Downloads a file from Google Drive by its ID. For Google Workspace documents (Docs, Sheets, Slides), optionally exports to a specified `mime_type`. For other file types, downloads in their native format regardless of mime_type. Examples: Export a Google Doc to plain text: {\"file_id\": \"1N2o5xQWmAbCdEfGhIJKlmnOPq\", \"mime_type\": \"text/plain\"} Download a Google Sheet as CSV: {\"file_id\": \"1ZyXwVuTsRqPoNmLkJiHgFeDcB\", \"mime_type\": \"text/csv\"}" }, { "slug": "GOOGLEDRIVE_DOWNLOAD_FILE2", "name": "Download file content (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_DOWNLOAD_FILE_OPERATION instead. Tool to download file content as a long-running operation. Use when you need to download files from Google Drive. Operations are valid for 24 hours from the time of creation." }, { "slug": "GOOGLEDRIVE_DOWNLOAD_FILE_OPERATION", "name": "Download file via operation", "description": "Tool to download file content using long-running operations. Use when you need to download Google Vids files or export Google Workspace documents as part of a long-running operation. Operations are valid for 24 hours from creation. Returns a response containing `downloaded_file_content.s3url` — a short-lived S3 URL; fetch the actual file bytes from that URL promptly after the call." }, { "slug": "GOOGLEDRIVE_EDIT_FILE", "name": "Edit File", "description": "Updates an existing Google Drive file with binary content by overwriting its entire content with new text (max 10MB). IMPORTANT: This action only works with files that have binary content (text files, PDFs, images, etc.). It does NOT support editing Google Workspace native files (Google Docs, Sheets, Slides, etc.). For Google Workspace files, use the Google Docs API, Google Sheets API, or Google Slides API directly. Preserves the original file_id (unlike GOOGLEDRIVE_UPLOAD_FILE which creates a new ID)." }, { "slug": "GOOGLEDRIVE_EMPTY_TRASH", "name": "Empty Trash", "description": "Tool to permanently and irreversibly delete ALL trashed files in the user's Google Drive or a specified shared drive. Recovery is impossible after execution — no Drive tool can restore items once trash is emptied. Affects every item in trash across the entire account or shared drive, not just files from the current workflow. Always obtain explicit user confirmation and clarify that recovery is impossible before executing. Provide driveId to target a specific shared drive's trash; omit to empty the user's root trash." }, { "slug": "GOOGLEDRIVE_EXPORT_GOOGLE_WORKSPACE_FILE", "name": "Export Google Workspace file", "description": "Exports a Google Workspace document to the requested MIME type and returns exported file content. Use when you need to export Google Docs, Sheets, Slides, Drawings, or Apps Script files to a specific format. Note: The exported content is limited to 10MB by Google Drive API." }, { "slug": "GOOGLEDRIVE_FIND_FILE", "name": "Find file", "description": "The comprehensive Google Drive search tool that handles all file and folder discovery needs. Use this for any file finding task - from simple name searches to complex queries with date filters, MIME types, permissions, custom properties, folder scoping, and more. Searches across My Drive and shared drives with full metadata support. Examples: - Find PDFs: q=\"mimeType = 'application/pdf'\" - Find recent files: q=\"modifiedTime > '2024-01-01T00:00:00'\" - Search by name: q=\"name contains 'report'\" - Files in folder: folderId=\"abc123\" or q=\"'FOLDER_ID' in parents\"" }, { "slug": "GOOGLEDRIVE_FIND_FOLDER", "name": "Find folder", "description": "Tool to find a folder in Google Drive by its name and optionally a parent folder. Use when you need to locate a specific folder to perform further actions like creating files in it or listing its contents." }, { "slug": "GOOGLEDRIVE_GENERATE_IDS", "name": "Generate File IDs", "description": "Generates a set of file IDs which can be provided in create or copy requests. Use when you need to pre-allocate IDs for new files or copies." }, { "slug": "GOOGLEDRIVE_GET_ABOUT", "name": "Get about", "description": "Tool to retrieve information about the user, the user's Drive, and system capabilities. Use when you need to check storage quotas, user details, or supported import/export formats. Note: storageQuota reflects My Drive (personal) storage only — it does not cover shared drives; use GOOGLEDRIVE_LIST_SHARED_DRIVES and GOOGLEDRIVE_GET_DRIVE for shared drive quotas. A successful response confirms base Drive read access only; write access and shared drive access must be verified separately." }, { "slug": "GOOGLEDRIVE_GET_APP", "name": "Get App", "description": "Tool to get information about a specific Drive app by ID. Use 'self' as the app ID to get information about the calling app." }, { "slug": "GOOGLEDRIVE_GET_CHANGE", "name": "Get Change (v2 - Deprecated)", "description": "Tool to get a specific change by ID from Google Drive v2 API. Deprecated: Use changes.getStartPageToken and changes.list to retrieve recent changes instead." }, { "slug": "GOOGLEDRIVE_GET_CHANGES_START_PAGE_TOKEN", "name": "Get Changes Start Page Token", "description": "Tool to get the starting pageToken for listing future changes in Google Drive. Returns only a token — pass it to GOOGLEDRIVE_LIST_CHANGES to retrieve actual changes. Persist this token; losing it requires a full rescan. The token is forward-looking: GOOGLEDRIVE_LIST_CHANGES may return no results if no changes have occurred since issuance. For simple recent-file lookups, prefer GOOGLEDRIVE_FIND_FILE; use this tool only for incremental change-feed workflows." }, { "slug": "GOOGLEDRIVE_GET_CHILD", "name": "Get Child Reference (v2)", "description": "Tool to get a specific child reference for a folder using Drive API v2. Use when you need to verify a specific file exists as a child of a folder." }, { "slug": "GOOGLEDRIVE_GET_COMMENT", "name": "Get Comment", "description": "Tool to get a comment by ID. Use when you need to retrieve a specific comment from a Google Drive file and have both the file ID and comment ID." }, { "slug": "GOOGLEDRIVE_GET_DRIVE", "name": "Get Shared Drive", "description": "Tool to get a shared drive by ID. Use when you need to retrieve information about a specific shared drive. To discover drive_ids, use GOOGLEDRIVE_LIST_SHARED_DRIVES first; GOOGLEDRIVE_GET_ABOUT reflects overall user storage, not individual shared drive details. Permission changes may have a brief propagation delay before appearing in results." }, { "slug": "GOOGLEDRIVE_GET_FILE_METADATA", "name": "Get File Metadata", "description": "Tool to get a file's metadata by ID. Use to verify `mimeType`, `parents`, and `trashed` status before destructive operations (delete/move/export), or to confirm `mimeType='application/vnd.google-apps.document'` before calling GOOGLEDOCS_* tools (non-native files require GOOGLEDRIVE_DOWNLOAD_FILE). Only returns metadata visible to the connected account; public access requires GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE. High-frequency calls risk `403 rateLimitExceeded`; apply exponential backoff." }, { "slug": "GOOGLEDRIVE_GET_FILE_PROPERTY", "name": "Get Property (v2)", "description": "Tool to get a property by its key using Google Drive API v2. Use when you need to retrieve a specific custom property attached to a file." }, { "slug": "GOOGLEDRIVE_GET_FILE_V2", "name": "Get File (v2 API) (Deprecated)", "description": "DEPRECATED: Use GetFileMetadata instead. Tool to get a file's metadata or content by ID from Google Drive API v2. Use when you need file metadata with alt=json, or file content with alt=media." }, { "slug": "GOOGLEDRIVE_GET_PARENT", "name": "Get Parent Reference (v2)", "description": "Tool to get a specific parent reference for a file using Drive API v2. Use when you need to retrieve information about a specific parent folder of a file." }, { "slug": "GOOGLEDRIVE_GET_PERMISSION", "name": "Get Permission", "description": "Gets a permission by ID. Use this tool to retrieve a specific permission for a file or shared drive. Newly created or updated permissions on shared drives may have a brief propagation delay before appearing." }, { "slug": "GOOGLEDRIVE_GET_PERMISSION_ID_FOR_EMAIL", "name": "Get Permission ID for Email", "description": "Tool to get the permission ID for an email address using the Drive API v2. Use when you need to convert an email address to its corresponding permission ID." }, { "slug": "GOOGLEDRIVE_GET_REPLY", "name": "Get Reply", "description": "Tool to get a specific reply to a comment on a file. Use when you need to retrieve the details of a particular reply." }, { "slug": "GOOGLEDRIVE_GET_REVISION", "name": "Get Revision", "description": "Tool to get a specific revision's metadata (name, modifiedTime, keepForever, etc.) by revision ID. Returns metadata only — not file content. Use a separate download tool to retrieve file content or restore a revision." }, { "slug": "GOOGLEDRIVE_GET_TEAM_DRIVE", "name": "Get Team Drive (Deprecated)", "description": "Tool to get metadata about a Team Drive by ID. Deprecated: Use the drives.get endpoint instead." }, { "slug": "GOOGLEDRIVE_GOOGLE_DRIVE_DELETE_FOLDER_OR_FILE_ACTION", "name": "Delete folder or file", "description": "Tool to delete a file or folder in Google Drive. Use when you need to permanently remove a specific file or folder using its ID. Note: This action is irreversible. Deleting a folder permanently removes all nested files and subfolders." }, { "slug": "GOOGLEDRIVE_HIDE_DRIVE", "name": "Hide Shared Drive", "description": "Tool to hide a shared drive from the default view. Use when you want to remove a shared drive from the user's main Google Drive interface without deleting it." }, { "slug": "GOOGLEDRIVE_INSERT_CHILD", "name": "Insert Child Into Folder (v2)", "description": "Tool to insert a file into a folder using Drive API v2. Use when you need to add an existing file to a folder." }, { "slug": "GOOGLEDRIVE_LIST_ACCESS_PROPOSALS", "name": "List Access Proposals", "description": "Tool to list pending access proposals on a file. Use when you need to retrieve access proposals for a specific file. Note: Only approvers can list access proposals; non-approvers will receive a 403 error." }, { "slug": "GOOGLEDRIVE_LIST_APPROVALS", "name": "List Approvals", "description": "Tool to list approvals on a file for workflow-based access control. Use when you need to retrieve all approvals associated with a specific file in Google Drive." }, { "slug": "GOOGLEDRIVE_LIST_CHANGES", "name": "List Changes", "description": "Tool to list the changes for a user or shared drive. Use when a full incremental change feed is needed (for simple recent-file lookups, prefer GOOGLEDRIVE_FIND_FILE instead). Tracks modifications such as creations, deletions, or permission changes. The pageToken is optional - if not provided, the current start page token will be automatically fetched; an empty result is valid if no recent activity has occurred. Example usage: ```json { \"pageToken\": \"22633\", \"pageSize\": 100, \"includeRemoved\": true } ``` Returns changes with timestamps, file IDs, and modification details. Paginate by following `nextPageToken` until it is absent — stopping early will silently omit changes. Save `newStartPageToken` to monitor future changes efficiently." }, { "slug": "GOOGLEDRIVE_LIST_CHILDREN_V2", "name": "List Folder Children (v2)", "description": "Tool to list a folder's children using Google Drive API v2. Use when you need to retrieve all files and folders within a specific folder." }, { "slug": "GOOGLEDRIVE_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list all comments for a file in Google Drive. Results are paginated; iterate using nextPageToken until absent to retrieve all comments. Filtering by author, content, or other criteria must be done client-side. Use commentId, createdTime, and author from results to uniquely identify comments before acting on them." }, { "slug": "GOOGLEDRIVE_LIST_FILE_LABELS", "name": "List File Labels", "description": "Tool to list the labels already applied to a file in Google Drive. An empty labels array is a valid response indicating no labels are applied, not an error. This tool shows only applied labels; label_id and field_id values required by other Drive label tools must be obtained from admin configuration." }, { "slug": "GOOGLEDRIVE_LIST_FILE_PROPERTIES", "name": "List Properties (v2 API)", "description": "Tool to list a file's properties in Google Drive API v2. Use when you need to retrieve custom properties (key-value pairs) attached to a file." }, { "slug": "GOOGLEDRIVE_LIST_FILES", "name": "List Files and Folders (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_FIND_FILE instead. Tool to list a user's files and folders in Google Drive. Use this to search or browse for files and folders based on various criteria." }, { "slug": "GOOGLEDRIVE_LIST_PERMISSIONS", "name": "List Permissions", "description": "Tool to list a file's permissions. Use when you need to retrieve all permissions associated with a specific file or shared drive." }, { "slug": "GOOGLEDRIVE_LIST_REPLIES", "name": "List Replies to Comment", "description": "Tool to list replies to a comment in Google Drive. Use this when you need to retrieve all replies associated with a specific comment on a file." }, { "slug": "GOOGLEDRIVE_LIST_REVISIONS", "name": "List File Revisions", "description": "Tool to list a file's revision metadata (not content) in Google Drive. Drive may prune old revisions, so history may be incomplete for frequently edited files. Filter client-side for specific revisionIds; do not assume the last entry is the active version." }, { "slug": "GOOGLEDRIVE_LIST_SHARED_DRIVES", "name": "List Shared Drives", "description": "Tool to list the user's shared drives. Use when you need to get a list of all shared drives accessible to the authenticated user. Results may differ from the web UI due to admin policies; listing a drive does not guarantee access to its contents. Paginated calls may trigger 403 rateLimitExceeded or 429 tooManyRequests; apply exponential backoff when iterating many pages." }, { "slug": "GOOGLEDRIVE_LIST_TEAM_DRIVES", "name": "List Team Drives (Deprecated)", "description": "Tool to list Team Drives (deprecated, use List Shared Drives instead). Use when you need to retrieve Team Drives using the legacy endpoint." }, { "slug": "GOOGLEDRIVE_MODIFY_FILE_LABELS", "name": "Modify File Labels", "description": "Modifies the set of labels applied to a file. Returns a list of the labels that were added or modified. Use when you need to programmatically change labels on a Google Drive file, such as adding, updating, or removing them." }, { "slug": "GOOGLEDRIVE_MOVE_FILE", "name": "Move File", "description": "Tool to move a file from one folder to another in Google Drive. To truly move (not just copy the parent), always provide both `add_parents` (destination folder ID) and `remove_parents` (source folder ID); omitting `remove_parents` leaves the file in multiple folders. Useful for reorganizing files, including newly created Google Docs/Sheets that default to Drive root." }, { "slug": "GOOGLEDRIVE_PARSE_FILE", "name": "Export or download a file", "description": "DEPRECATED: Exports Google Workspace files (max 10MB) to a specified format using `mime_type`, or downloads other file types; use `GOOGLEDRIVE_DOWNLOAD_FILE` instead." }, { "slug": "GOOGLEDRIVE_PATCH_PERMISSION", "name": "Patch Permission", "description": "Tool to update a permission using patch semantics. Use when you need to modify specific fields of an existing permission without affecting other fields. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied." }, { "slug": "GOOGLEDRIVE_PATCH_PROPERTY", "name": "Patch Property (v2 API)", "description": "Tool to update a property on a file using PATCH semantics (v2 API). Use when you need to partially update custom key-value metadata attached to a Google Drive file." }, { "slug": "GOOGLEDRIVE_RESUMABLE_UPLOAD", "name": "Resumable Upload", "description": "Tool to start and complete a Google Drive resumable upload session. Use for files larger than ~5 MB to avoid timeouts or size-limit failures. HTTP 308 means continue the session from the correct byte offset; HTTP 410 means the session expired and a full restart with a new session is required." }, { "slug": "GOOGLEDRIVE_STOP_WATCH_CHANNEL", "name": "Stop Watch Channel", "description": "Tool to stop watching resources through a specified channel. Use this when you want to stop receiving notifications for a previously established watch. Both `id` and `resourceId` must be saved from the original watch response — they cannot be retrieved after the fact." }, { "slug": "GOOGLEDRIVE_TRASH_FILE", "name": "Trash File", "description": "Tool to move a file or folder to trash (soft delete). Use when you need to delete a file but want to allow recovery via UNTRASH_FILE. This action is distinct from permanent deletion and provides a safer cleanup workflow." }, { "slug": "GOOGLEDRIVE_UNHIDE_DRIVE", "name": "Unhide Shared Drive", "description": "Tool to unhide a shared drive. Use when you need to restore a shared drive to the default view." }, { "slug": "GOOGLEDRIVE_UNTRASH_FILE", "name": "Untrash File", "description": "Tool to restore a file from the trash. Use when you need to recover a deleted file. This action updates the file's metadata to set the 'trashed' property to false. Only works while the file remains in trash — recovery is impossible after trash is emptied via GOOGLEDRIVE_EMPTY_TRASH or auto-purged by policy." }, { "slug": "GOOGLEDRIVE_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment on a Google Drive file. Use when you need to change the content of a comment. NOTE: The 'resolved' field is read-only in the Google Drive API. To resolve or reopen a comment, use CREATE_REPLY with action='resolve' or action='reopen'." }, { "slug": "GOOGLEDRIVE_UPDATE_DRIVE", "name": "Update Shared Drive", "description": "Tool to update the metadata for a shared drive. Use when you need to modify properties like the name, theme, background image, or restrictions of a shared drive." }, { "slug": "GOOGLEDRIVE_UPDATE_FILE_METADATA_PATCH", "name": "Update File Metadata (PATCH v2)", "description": "Tool to update file metadata using the Drive API v2 PATCH method. Use when you need to modify file properties like title, description, or labels using patch semantics." }, { "slug": "GOOGLEDRIVE_UPDATE_FILE_PROPERTY", "name": "Update Property (v2 API)", "description": "Tool to update a property on a file using Google Drive API v2. Use when you need to modify an existing custom property attached to a file." }, { "slug": "GOOGLEDRIVE_UPDATE_FILE_PUT", "name": "Update File (Metadata)", "description": "Updates file metadata. Uses PATCH semantics (partial update) as per Google Drive API v3 — only explicitly provided fields are updated, so omit fields you do not intend to overwrite. Use this tool to modify attributes of an existing file like its name, description, or parent folders. To move a file, supply add_parents and remove_parents together; omitting remove_parents creates multiple parents, omitting add_parents can orphan the file. Bulk updates may trigger 429 Too Many Requests; apply exponential backoff. Note: supports metadata updates only; file content updates are not yet implemented." }, { "slug": "GOOGLEDRIVE_UPDATE_FILE_REVISION_METADATA", "name": "Update File Revision Metadata", "description": "Updates ONLY the metadata properties of a specific file revision (keepForever, published, publishAuto, publishedOutsideDomain). IMPORTANT: This action does NOT update file content. To update file content, use EDIT_FILE or UPDATE_FILE_PUT instead. This action requires BOTH file_id AND revision_id parameters. Use LIST_REVISIONS to get available revision IDs for a file. Valid parameters: file_id (required), revision_id (required), keep_forever, published, publish_auto, published_outside_domain. Invalid parameters (use other actions): file_contents, mime_type, content, name - these are NOT supported by this action." }, { "slug": "GOOGLEDRIVE_UPDATE_PERMISSION", "name": "Update Permission", "description": "Tool to update a permission with patch semantics. Use when you need to modify an existing permission for a file or shared drive. Inherited or domain-managed permissions may not be editable; verify editability with GOOGLEDRIVE_LIST_PERMISSIONS before updating." }, { "slug": "GOOGLEDRIVE_UPDATE_REPLY", "name": "Update Reply", "description": "Tool to update a reply to a comment on a Google Drive file. Use when you need to modify the content of an existing reply." }, { "slug": "GOOGLEDRIVE_UPDATE_TEAM_DRIVE", "name": "Update Team Drive (Deprecated)", "description": "Tool to update a Team Drive's metadata. Deprecated: Use the drives.update endpoint instead. Use when you need to modify Team Drive properties." }, { "slug": "GOOGLEDRIVE_UPLOAD_FILE", "name": "Upload File", "description": "Uploads a file (max 5MB) to Google Drive, placing it in the specified folder or root if no valid folder ID is provided. Always creates a new file (never updates existing); use GOOGLEDRIVE_EDIT_FILE to update with a stable file_id. Uploaded files are private by default; configure sharing via GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE." }, { "slug": "GOOGLEDRIVE_UPLOAD_FROM_URL", "name": "Upload File from URL to Drive", "description": "Tool to fetch a file from a provided URL server-side and upload it into Google Drive. Use when you need to reliably persist externally hosted files into Drive without client-side downloads or temporary storage." }, { "slug": "GOOGLEDRIVE_UPLOAD_UPDATE_FILE", "name": "Upload/Update File Content", "description": "Tool to update file content in Google Drive by uploading new binary content. Use when you need to replace the contents of an existing file with new file data." }, { "slug": "GOOGLEDRIVE_WATCH_CHANGES", "name": "Watch Drive Changes", "description": "Tool to subscribe to changes for a user or shared drive in Google Drive. Use when you need to monitor a Google Drive for modifications and receive notifications at a specified webhook URL. Notifications may be batched rather than per-change; design handlers to be idempotent and fetch all changes since the last known page_token on each notification." }, { "slug": "GOOGLEDRIVE_WATCH_FILE", "name": "Watch File for Changes", "description": "Tool to subscribe to push notifications for changes to a specific file. Use when you need to monitor a file for modifications and receive real-time notifications at a webhook URL." } ], "triggers": [ { "slug": "GOOGLEDRIVE_COMMENT_ADDED_TRIGGER", "name": "Comment Added (Docs/Sheets/Slides)", "description": "Triggers when a new comment is added to Google Docs, Sheets, or Slides." }, { "slug": "GOOGLEDRIVE_FILE_CREATED_TRIGGER", "name": "File Created", "description": "Triggers when a new file is created in Google Drive." }, { "slug": "GOOGLEDRIVE_FILE_DELETED_OR_TRASHED_TRIGGER", "name": "File Deleted or Trashed", "description": "Triggers when a file is moved to trash or permanently deleted in Drive." }, { "slug": "GOOGLEDRIVE_FILE_SHARED_PERMISSIONS_ADDED", "name": "File Shared (Permissions Added)", "description": "Triggers when new sharing permissions are granted to a file or folder.\n\n Uses Drive's `changes.list` endpoint with inline `permissions` in the\n `fields` mask so each change carries the file's current permission set\n provider-atomically. We diff that against `seen_permission_keys` to\n identify newly added grants. Drive page tokens are the primary cursor;\n if Drive rejects a stored token, the trigger raises `PollingTriggerError`\n without clearing state rather than silently re-baselining and dropping\n events.\n\n Limitation: truly ephemeral permissions (added and revoked between two\n polls without any other file modification in between) are not detected.\n Drive Activity API would catch those but requires an additional OAuth\n scope and a different payload contract." }, { "slug": "GOOGLEDRIVE_FILE_UPDATED_TRIGGER", "name": "File Updated", "description": "Triggers when a file's metadata or content changes in Google Drive." }, { "slug": "GOOGLEDRIVE_GOOGLE_DRIVE_CHANGES", "name": "Google Drive Changes", "description": "Triggers when changes are detected in a Google Drive." }, { "slug": "GOOGLEDRIVE_NEW_FILE_MATCHING_QUERY_TRIGGER", "name": "New File Matching Query", "description": "Triggers when a new Google Drive file matches a provided query.\n\n This is the legacy query-centric trigger: it preserves Drive API query\n config such as ``corpora`` / ``driveId`` aliases and emits the historical\n ``file_matching_query`` event type. ``FileCreatedTrigger`` covers the\n broader \"new file\" case and emits ``file_created``." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_drive_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googledocs", "name": "Google Docs", "logo": "https://logos.composio.dev/api/googledocs", "description": "Google Docs is a cloud-based word processor with real-time collaboration, version history, and integration with other Google Workspace apps", "category": "documents", "authSchemes": [ "OAUTH2" ], "toolCount": 43, "triggerCount": 10, "version": "20260703_00", "tools": [ { "slug": "GOOGLEDOCS_COPY_DOCUMENT", "name": "Copy Google Document", "description": "Tool to create a copy of an existing Google Document. Use this to duplicate a document, for example, when using an existing document as a template. The copied document will have a default title (e.g., 'Copy of [original title]') if no new title is provided, and will be placed in the user's root Google Drive folder." }, { "slug": "GOOGLEDOCS_CREATE_AND_POPULATE_TABLE", "name": "Create and Populate Table in Google Doc", "description": "Creates a new table in a Google Document and populates its cells with provided text data in a single operation. Use this action when you need to insert a structured table with predefined content into a document. The action handles both table creation and cell population automatically, eliminating the need for separate operations." }, { "slug": "GOOGLEDOCS_CREATE_DOCUMENT", "name": "Create a document", "description": "Creates a new Google Docs document using the provided title as filename and inserts the initial text at the beginning if non-empty, returning the document's ID and metadata (excluding body content)." }, { "slug": "GOOGLEDOCS_CREATE_DOCUMENT2", "name": "Create blank document (Deprecated)", "description": "DEPRECATED: Use GOOGLEDOCS_CREATE_DOCUMENT instead. Tool to create a blank Google Docs document with a specified title. Use when you need to create a new, empty document." }, { "slug": "GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN", "name": "Create Document Markdown", "description": "Creates a new Google Docs document, optionally initializing it with a title and content provided as Markdown text." }, { "slug": "GOOGLEDOCS_CREATE_FOOTER", "name": "Create Footer", "description": "Tool to create a new footer in a Google Document. Use when you need to add a footer, optionally specifying its type and the section it applies to." }, { "slug": "GOOGLEDOCS_CREATE_FOOTNOTE", "name": "Create Footnote", "description": "Tool to create a new footnote in a Google Document. Use this when you need to add a footnote at a specific location or at the end of the document body." }, { "slug": "GOOGLEDOCS_CREATE_HEADER", "name": "Create Header", "description": "Tool to create a new header in a Google Document, optionally with text content. Use this tool when you need to add a header to a document. You can provide: - document_id: The ID of the document (required) - type: The header type (DEFAULT is the standard header) - text: Optional text content to add to the header - section_break_location: Optional location for section-specific headers" }, { "slug": "GOOGLEDOCS_CREATE_NAMED_RANGE", "name": "Create Named Range", "description": "Tool to create a new named range in a Google Document. Use this to assign a name to a specific part of the document for easier reference or programmatic manipulation." }, { "slug": "GOOGLEDOCS_CREATE_PARAGRAPH_BULLETS", "name": "Create Paragraph Bullets", "description": "Tool to add bullets to paragraphs within a specified range in a Google Document. Use when you need to format a list or a set of paragraphs as bullet points." }, { "slug": "GOOGLEDOCS_CREATE_TAB", "name": "Create Document Tab", "description": "Creates a new tab in a Google Docs document. Tabs allow you to organize document content into separate sections within a single document. Use this action when you need to add a new organizational tab to a document. When a tab is added at a specified index, all subsequent tabs' indexes are automatically incremented." }, { "slug": "GOOGLEDOCS_DELETE_CONTENT_RANGE", "name": "Delete Content Range in Document", "description": "Tool to delete a range of content from a Google Document. Use when you need to remove a specific portion of text or other structural elements within a document. Note: Every segment (body, header, footer, footnote) in Google Docs ends with a final newline character that cannot be deleted. Ensure the endIndex does not include this trailing newline." }, { "slug": "GOOGLEDOCS_DELETE_FOOTER", "name": "Delete Footer", "description": "Tool to delete a footer from a Google Document. Use when you need to remove a footer from a specific section or the default footer." }, { "slug": "GOOGLEDOCS_DELETE_HEADER", "name": "Delete Header", "description": "Deletes the header from the specified section or the default header if no section is specified. Use this tool to remove a header from a Google Document." }, { "slug": "GOOGLEDOCS_DELETE_NAMED_RANGE", "name": "Delete Named Range", "description": "Tool to delete a named range from a Google Document. Use when you need to remove a previously defined named range by its ID or name." }, { "slug": "GOOGLEDOCS_DELETE_PARAGRAPH_BULLETS", "name": "Delete Paragraph Bullets", "description": "Tool to remove bullets from paragraphs within a specified range in a Google Document. Use when you need to clear bullet formatting from a section of a document." }, { "slug": "GOOGLEDOCS_DELETE_TAB", "name": "Delete Tab", "description": "Deletes a tab from a Google Document. This action is irreversible — the tab cannot be recovered once removed. Use when you need to remove a tab and all its child tabs from a document's tab structure." }, { "slug": "GOOGLEDOCS_DELETE_TABLE_COLUMN", "name": "Delete Table Column", "description": "Tool to delete a column from a table in a Google Document. Use this tool when you need to remove a specific column from an existing table within a document." }, { "slug": "GOOGLEDOCS_DELETE_TABLE_ROW", "name": "Delete Table Row", "description": "Tool to delete a row from a table in a Google Document. Use when you need to remove a specific row from an existing table." }, { "slug": "GOOGLEDOCS_EXPORT_DOCUMENT_AS_PDF", "name": "Export Google Doc as PDF", "description": "Tool to export a Google Docs file as PDF using the Google Drive API. Use when you need to generate a PDF version of a Google Docs document for download or distribution. Note: Google Drive enforces a 10MB limit on export content." }, { "slug": "GOOGLEDOCS_GET_DOCUMENT_BY_ID", "name": "Get document by id", "description": "Retrieves an existing Google Document by its ID; will error if the document is not found." }, { "slug": "GOOGLEDOCS_GET_DOCUMENT_END_INDEX", "name": "Get Document End Index", "description": "Retrieves the end index and paragraph structure of a Google Document or specific segment. Use this action when you need to determine valid insertion points for text operations, especially before using insertText requests. The end index represents the maximum boundary of the document body or specified segment (header, footer, footnote, or tab)." }, { "slug": "GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT", "name": "Get document plain text", "description": "Retrieve a Google Doc by ID and return a best-effort plain-text rendering. Converts document structure into plain text including paragraphs, lists, and tables without requiring clients to traverse complex Docs API JSON." }, { "slug": "GOOGLEDOCS_INSERT_IMAGE_IN_TABLE_CELL", "name": "Insert Image in Table Cell", "description": "Inserts an image from a given URI into a specific table cell in a Google Document. Use this action when you need to add an image to a particular cell within a table. The action identifies the target cell by table start index, row index, and column index, then inserts the image at the specified position within that cell's content." }, { "slug": "GOOGLEDOCS_INSERT_INLINE_IMAGE", "name": "Insert Inline Image", "description": "Tool to insert an image from a given URI at a specified location in a Google Document as an inline image. Use when you need to add an image to a document programmatically." }, { "slug": "GOOGLEDOCS_INSERT_PAGE_BREAK", "name": "Insert Page Break", "description": "Tool to insert a page break into a Google Document. Use when you need to start new content on a fresh page, such as at the end of a chapter or section." }, { "slug": "GOOGLEDOCS_INSERT_TABLE_ACTION", "name": "Insert Table in Google Doc", "description": "Tool to insert a table into a Google Document. Use when you need to add a new table at a specific location or at the end of a segment (like document body, header, or footer) in a document." }, { "slug": "GOOGLEDOCS_INSERT_TABLE_COLUMN", "name": "Insert Table Column", "description": "Tool to insert a new column into a table in a Google Document. Use this tool when you need to add a column to an existing table at a specific location." }, { "slug": "GOOGLEDOCS_INSERT_TABLE_ROW", "name": "Insert Table Row", "description": "Inserts a new row into a table in a Google Document at a specified location. Use this action when you need to add a row to an existing table, either above or below a reference cell location." }, { "slug": "GOOGLEDOCS_INSERT_TEXT_ACTION", "name": "Insert Text into Document", "description": "Tool to insert a string of text at a specified location within a Google Document. Use when you need to add new text content to an existing document. IMPORTANT: Two ways to specify insertion location: 1. Use 'insertion_index' to insert at a specific position (index 1 is safe for document start) 2. Use 'append_to_end=true' to append text to the end of the document (recommended for appending) CRITICAL CONSTRAINT: When using insertion_index, the index MUST fall within the bounds of an EXISTING paragraph. You cannot insert text at arbitrary indices or at structural boundaries (e.g., table starts). The index must also be strictly less than the document's end index. To safely append text without index concerns, use append_to_end=true." }, { "slug": "GOOGLEDOCS_INSERT_TEXT_IN_TABLE_CELL", "name": "Insert Text in Table Cell", "description": "Inserts text into a specific cell of a table in a Google Document by row and column position. Use this action when you need to add or update text content in a table cell at a known row and column index. To use this action, you must first retrieve the document structure using GOOGLEDOCS_GET_DOCUMENT_BY_ID to find the table's start index. Then specify the target cell by its zero-based row and column indices (e.g., row_index=0, column_index=0 for the top-left cell)." }, { "slug": "GOOGLEDOCS_LIST_SPREADSHEET_CHARTS", "name": "Get Charts from Spreadsheet", "description": "Tool to retrieve a list of all charts from a specified Google Sheets spreadsheet. Use when you need to get chart IDs and their specifications for embedding or referencing elsewhere, such as in Google Docs." }, { "slug": "GOOGLEDOCS_REPLACE_ALL_TEXT", "name": "Replace All Text in Document", "description": "Tool to replace all occurrences of a specified text string with another text string throughout a Google Document. Use when you need to perform a global find and replace operation within a document." }, { "slug": "GOOGLEDOCS_REPLACE_IMAGE", "name": "Replace Image in Document", "description": "Tool to replace a specific image in a document with a new image from a URI. Use when you need to update an existing image within a Google Doc." }, { "slug": "GOOGLEDOCS_SEARCH_DOCUMENTS", "name": "Search Documents", "description": "Search for Google Documents using various filters including name, content, date ranges, and more." }, { "slug": "GOOGLEDOCS_UNMERGE_TABLE_CELLS", "name": "Unmerge Table Cells", "description": "Tool to unmerge previously merged cells in a table. Use this when you need to revert merged cells in a Google Document table back to their individual cell states." }, { "slug": "GOOGLEDOCS_UPDATE_DOCUMENT_BATCH", "name": "Update Document Batch (Deprecated)", "description": "DEPRECATED: Use UpdateExistingDocument instead. Tool to apply one or more updates to a Google Document. Use when you need to perform batch operations on a document, such as inserting text, updating styles, or modifying document structure. Supports 35+ request types including insertText, replaceAllText, updateTextStyle, createParagraphBullets, insertTable, createHeader/Footer, and more. Each request is validated before being applied. If any request is invalid, the entire operation fails and nothing is applied." }, { "slug": "GOOGLEDOCS_UPDATE_DOCUMENT_MARKDOWN", "name": "Update Document Markdown", "description": "Replaces the entire content of an existing Google Docs document with new Markdown text; requires edit permissions for the document." }, { "slug": "GOOGLEDOCS_UPDATE_DOCUMENT_SECTION_MARKDOWN", "name": "Update Document Section Markdown", "description": "Tool to insert or replace a section of a Google Docs document with Markdown content. Use when you need to update only a section of a document by specifying start and optional end indices. Supports full Markdown formatting." }, { "slug": "GOOGLEDOCS_UPDATE_DOCUMENT_STYLE", "name": "Update Document Style", "description": "Tool to update the overall document style, such as page size, margins, and default text direction. Use when you need to modify the global style settings of a Google Document." }, { "slug": "GOOGLEDOCS_UPDATE_EXISTING_DOCUMENT", "name": "Update existing document", "description": "Applies programmatic edits, such as text insertion, deletion, or formatting, to a specified Google Doc using the `batchUpdate` API method." }, { "slug": "GOOGLEDOCS_UPDATE_TABLE_ROW_STYLE", "name": "Update Table Row Style", "description": "Tool to update the style of a table row in a Google Document. Use when you need to modify the appearance of specific rows within a table, such as setting minimum row height or marking rows as headers." }, { "slug": "GOOGLEDOCS_UPDATE_TAB_PROPERTIES", "name": "Update Tab Properties", "description": "Updates properties of a document tab such as title, parent tab, index, and icon emoji. Use this action when you need to rename a tab, change its emoji icon, move it within the tab hierarchy, or reorganize tab structure." } ], "triggers": [ { "slug": "GOOGLEDOCS_DOCUMENT_CREATED_TRIGGER", "name": "New Document Created", "description": "Triggers when a new Google Doc is created.\n This trigger monitors Google Docs and fires when new documents are detected.\n Uses timestamp filtering to efficiently poll for new documents." }, { "slug": "GOOGLEDOCS_DOCUMENT_DELETED_TRIGGER", "name": "Document Deleted", "description": "Triggers when an existing Google Doc is deleted (moved to trash).\n This trigger monitors Google Docs and fires when documents are trashed." }, { "slug": "GOOGLEDOCS_DOCUMENT_PLACEHOLDER_FILLED_TRIGGER", "name": "Document Placeholder Filled", "description": "Triggers when a Google Doc's plain text changes such that a configured placeholder\n token/pattern is no longer present (i.e., the document has been filled in).\n\n This trigger monitors a specific Google Doc and fires when a placeholder pattern\n that was previously present is no longer found in the document's plain text." }, { "slug": "GOOGLEDOCS_DOCUMENT_SEARCH_UPDATE_TRIGGER", "name": "Document Search Update", "description": "Triggers when a Google Doc matching a user-defined search query is newly created or updated since the last poll.\n This trigger uses timestamp filtering to efficiently monitor documents." }, { "slug": "GOOGLEDOCS_DOCUMENT_STRUCTURE_CHANGED_TRIGGER", "name": "Document Structure Changed", "description": "Triggers when a Google Doc's structure changes (headers/footers added/removed, tables/images count changes).\n This trigger monitors a specific document for structural changes like:\n - Headers added or removed\n - Footers added or removed\n - Tables added or removed\n - Images (inline objects) added or removed\n - Positioned objects added or removed\n - Footnotes added or removed" }, { "slug": "GOOGLEDOCS_DOCUMENT_UPDATED_TRIGGER", "name": "Document Updated", "description": "Triggers when an existing Google Doc is updated or modified.\n This trigger monitors Google Docs and fires when documents are updated." }, { "slug": "GOOGLEDOCS_DOCUMENT_WORD_COUNT_THRESHOLD_TRIGGER", "name": "Document Word Count Threshold", "description": "Triggers when a Google Doc's word/character count crosses a user-defined threshold.\n This trigger monitors a specific Google Doc and fires when its word or character count\n becomes greater than or equal to the configured threshold value." }, { "slug": "GOOGLEDOCS_FOLDER_CREATED_TRIGGER", "name": "New Folder Created in Root", "description": "Triggers when a new folder is created in the root folder of Google Drive.\n This trigger monitors Google Drive and fires when new folders are detected in the root directory." }, { "slug": "GOOGLEDOCS_KEYWORD_DETECTED_TRIGGER", "name": "Keyword Detected in Document", "description": "Triggers when a specific keyword or phrase first appears in a Google Doc.\n This trigger monitors a Google Doc and fires once when the specified keyword is detected.\n After the keyword is found, the trigger will not fire again until reset." }, { "slug": "GOOGLEDOCS_PAGE_ADDED_TRIGGER", "name": "New Document Added", "description": "Triggers when a new Google Doc is added/created.\n This trigger monitors Google Docs and fires when new documents are detected." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_docs_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/documents,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "hubspot", "name": "HubSpot", "logo": "https://logos.composio.dev/api/hubspot", "description": "HubSpot is an inbound marketing, sales, and customer service platform integrating CRM, email automation, and analytics to facilitate lead nurturing and seamless customer experiences", "category": "crm", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 245, "triggerCount": 2, "version": "20260703_00", "tools": [ { "slug": "HUBSPOT_ADD_ASSET_ASSOCIATION", "name": "Add asset association", "description": "Associates an existing asset ('FORM', 'OBJECT_LIST', or 'EXTERNAL_WEB_URL') with a specified HubSpot marketing campaign." }, { "slug": "HUBSPOT_ADD_TOKEN_TO_EVENT_TEMPLATE", "name": "Add token to event template", "description": "Adds a new custom data token to an existing event template for a specified HubSpot application, optionally populating a CRM object property if objectPropertyName is provided." }, { "slug": "HUBSPOT_ARCHIVE_BATCH_OF_FEEDBACK_SUBMISSIONS", "name": "Archive batch of feedback submissions by id", "description": "Asynchronously archives a batch of HubSpot feedback submissions using their unique IDs, which must correspond to valid and existing submissions; the operation is queued, and submissions are moved from active views without being deleted." }, { "slug": "HUBSPOT_ARCHIVE_BATCH_OF_LINE_ITEMS", "name": "Archive batch of line items by id", "description": "Archives a batch of existing line items by their unique IDs in HubSpot CRM; this operation is irreversible via the API." }, { "slug": "HUBSPOT_ARCHIVE_BATCH_OF_OBJECTS", "name": "Archive batch of objects by id", "description": "Archives a batch of existing, non-archived CRM objects of a specified `objectType` by their IDs, effectively hiding them from active use." }, { "slug": "HUBSPOT_ARCHIVE_BATCH_OF_PROPERTIES", "name": "Archive batch of properties", "description": "Archives a batch of properties by their internal names for a specified HubSpot CRM object type; this operation is idempotent and safe to retry." }, { "slug": "HUBSPOT_ARCHIVE_BATCH_OF_QUOTES", "name": "Archive a batch of quotes by id", "description": "Archives a batch of existing quotes by their IDs, removing them from active views while keeping them accessible in your HubSpot account for viewing, downloading, cloning, or deletion; note that archived quotes cannot be restored to active status." }, { "slug": "HUBSPOT_ARCHIVE_COMPANIES", "name": "Archive companies", "description": "Archives multiple HubSpot companies by their IDs." }, { "slug": "HUBSPOT_ARCHIVE_COMPANY", "name": "Archive company", "description": "Archives an existing company in HubSpot CRM by its `companyId`, moving it to a recycling bin from which it can be restored, rather than permanently deleting it." }, { "slug": "HUBSPOT_ARCHIVE_CONTACT", "name": "Archive contact", "description": "Archives a HubSpot contact by its ID." }, { "slug": "HUBSPOT_ARCHIVE_CONTACTS", "name": "Archive contacts", "description": "Archives multiple HubSpot contacts by their IDs." }, { "slug": "HUBSPOT_ARCHIVE_CRM_OBJECT_BY_ID", "name": "Archive a CRM object by ID", "description": "Archives a specific HubSpot CRM object by its type and ID, moving it to the recycling bin; this action is irreversible via the API but objects can often be restored via the HubSpot UI." }, { "slug": "HUBSPOT_ARCHIVE_DEALS", "name": "Archive deals", "description": "Archives multiple HubSpot deals by their IDs." }, { "slug": "HUBSPOT_ARCHIVE_EMAIL", "name": "ArchiveEmail email", "description": "Archives the HubSpot email specified by `emailId` by moving it to the recycling bin, making it inaccessible unless restored." }, { "slug": "HUBSPOT_ARCHIVE_EMAILS", "name": "Archive emails", "description": "Archives multiple HubSpot emails by their IDs." }, { "slug": "HUBSPOT_ARCHIVE_FEEDBACK_SUBMISSION", "name": "Archive feedback submission", "description": "Archives an existing, non-archived Feedback Submission in HubSpot CRM by its ID, moving it to the recycling bin (not permanently deleting it)." }, { "slug": "HUBSPOT_ARCHIVE_LINE_ITEM", "name": "Archive line item by id", "description": "Archives a specific HubSpot line item by its ID, moving it to a recoverable state." }, { "slug": "HUBSPOT_ARCHIVE_PRODUCT", "name": "Archive product", "description": "Archives a HubSpot product by its ID." }, { "slug": "HUBSPOT_ARCHIVE_PRODUCTS", "name": "Archive products", "description": "Archives multiple HubSpot products by their IDs." }, { "slug": "HUBSPOT_ARCHIVE_PROPERTY_BY_OBJECT_TYPE_AND_NAME", "name": "Archive property by object type and name", "description": "Archives a specified CRM property by its object type and name, moving it to the recycling bin; note that some default HubSpot properties cannot be archived." }, { "slug": "HUBSPOT_ARCHIVE_PROPERTY_GROUP", "name": "Archive property group", "description": "Archives a HubSpot property group, making it inactive and hidden (not permanently deleted, allowing potential restoration) with immediate effect on its CRM visibility and usability." }, { "slug": "HUBSPOT_ARCHIVE_QUOTE", "name": "Archive quote object by id", "description": "Archives a HubSpot Quote object by ID, moving it to the recycling bin where it can be restored within 90 days." }, { "slug": "HUBSPOT_ARCHIVE_TICKET", "name": "Archive ticket", "description": "Archives a HubSpot ticket by its ID." }, { "slug": "HUBSPOT_ARCHIVE_TICKETS", "name": "Archive tickets", "description": "Archives multiple HubSpot tickets by their IDs." }, { "slug": "HUBSPOT_AUDIT_PIPELINE_CHANGES", "name": "Audit pipeline changes by id", "description": "Retrieves a reverse chronological audit log of all changes for a specific, existing HubSpot CRM pipeline, which is identified by its `pipelineId` and a valid `objectType` that supports pipelines (e.g., 'deals', 'tickets')." }, { "slug": "HUBSPOT_BATCH_READ_COMPANIES_BY_PROPERTIES", "name": "Batch read companies by properties", "description": "Batch-retrieves up to 100 HubSpot company records by their IDs in a single request. Supports custom ID properties (e.g., domain), selective property retrieval, and historical property values." }, { "slug": "HUBSPOT_BATCH_UPDATE_QUOTES", "name": "Batch update quotes", "description": "Updates multiple existing HubSpot quotes in a batch; each quote is identified by its object ID or a custom unique property (via `idProperty`), and only writable properties are modified." }, { "slug": "HUBSPOT_CANCEL_IMPORT", "name": "Cancel active import", "description": "Cancels an active HubSpot data import job using its `importId`; this action is irreversible, and any data already processed will remain." }, { "slug": "HUBSPOT_CLONE_MARKETING_EMAIL", "name": "Clone marketing email", "description": "Duplicates an existing HubSpot marketing email, identified by its `id`, into a new draft; an optional `cloneName` can be assigned to this new email copy." }, { "slug": "HUBSPOT_CONFIGURE_CALLING_EXTENSION_SETTINGS", "name": "Configure calling extension settings", "description": "Configures or updates settings for a HubSpot app's calling extension, including its name, UI URL, iframe dimensions, `isReady` status, and `supportsCustomObjects` flag, for the specified `appId`." }, { "slug": "HUBSPOT_CREATE_AB_TEST_VARIATION", "name": "Create A/B test variation", "description": "Creates a new A/B test variation for an existing HubSpot marketing email, using its `contentId`; the new variation is created as a draft that can be edited before publishing. This action only creates the variation—it does not start the A/B test or send emails. Note: If an active variation already exists for the email, a new one will not be created. Requires Marketing Hub Professional or Enterprise subscription." }, { "slug": "HUBSPOT_CREATE_AND_RETURN_A_NEW_PROPERTY_GROUP", "name": "Create a new property group", "description": "Creates a new, empty property group for a specified CRM object type in HubSpot, requiring a unique group name for that object type; properties must be added separately." }, { "slug": "HUBSPOT_CREATE_A_NEW_MARKETING_EMAIL", "name": "Create a new marketing email", "description": "Creates a new marketing email in HubSpot, allowing comprehensive configuration of content, recipients, sender details, A/B testing, scheduling, web version, and other settings; the internal `name` for the email is required." }, { "slug": "HUBSPOT_CREATE_ASSOCIATION", "name": "Create association for object type", "description": "Creates a new custom association definition (schema) for a custom object in HubSpot, specifying how this object type can relate to another object type; this defines the association type itself, not actual record-to-record links. Note: This endpoint requires crm.schemas.custom.write scope and only works with custom objects (not standard HubSpot objects like contacts or companies)." }, { "slug": "HUBSPOT_CREATE_BATCH_OF_FEEDBACK_SUBMISSIONS", "name": "Create batch of feedback submissions", "description": "Creates a batch of feedback submissions in HubSpot, ideal for bulk imports; all property names, `associationTypeId`s, and association `to_id`s must reference existing entities in HubSpot." }, { "slug": "HUBSPOT_CREATE_BATCH_OF_OBJECTS", "name": "Create batch of objects", "description": "Creates multiple CRM objects of a specified `objectType` (e.g., contacts, companies, deals) in a single batch operation, where each object can have its own set of properties and associations." }, { "slug": "HUBSPOT_CREATE_BATCH_OF_PROPERTIES", "name": "Create batch of properties", "description": "Efficiently creates multiple CRM properties in a single batch for a specified HubSpot object type (e.g., 'contacts', 'companies', custom object ID), ideal for schema setup or updates." }, { "slug": "HUBSPOT_CREATE_BATCH_OF_QUOTES", "name": "Create batch of quotes", "description": "Creates multiple HubSpot CRM quotes in a batch, ideal for bulk operations; provide meaningful quote details in `inputs` as property requirements can vary, and inspect response for individual quote statuses as partial success is possible." }, { "slug": "HUBSPOT_CREATE_CAMPAIGN", "name": "Create campaign", "description": "Creates a new HubSpot campaign." }, { "slug": "HUBSPOT_CREATE_CAMPAIGNS", "name": "Create campaigns", "description": "Creates multiple HubSpot campaigns by calling the single campaign creation endpoint for each campaign. Note: HubSpot does not provide a native batch create endpoint for campaigns. This action creates multiple campaigns by making individual API calls for each campaign in the batch." }, { "slug": "HUBSPOT_CREATE_COMPANIES", "name": "Create companies", "description": "Creates multiple new HubSpot companies in a single batch operation." }, { "slug": "HUBSPOT_CREATE_COMPANY", "name": "Create company", "description": "Creates a new HubSpot company." }, { "slug": "HUBSPOT_CREATE_CONTACT", "name": "Create contact", "description": "Creates a new HubSpot contact." }, { "slug": "HUBSPOT_CREATE_CONTACT_FROM_NL", "name": "Create Contact From Natural Language", "description": "Creates a new contact in HubSpot from a natural language description. Fetches the contact property schema at runtime, uses an LLM to generate the correct property payload, and creates the contact." }, { "slug": "HUBSPOT_CREATE_CONTACTS", "name": "Create contacts", "description": "Creates multiple new HubSpot contacts in a single batch operation." }, { "slug": "HUBSPOT_CREATE_CRM_OBJECT_FROM_NL", "name": "Create CRM Object From Natural Language", "description": "Creates a new CRM object (contact, deal, company, ticket, or custom object) in HubSpot from a natural language description. Fetches the object's property schema at runtime, uses an LLM to generate the correct property payload, and creates the object." }, { "slug": "HUBSPOT_CREATE_CRM_OBJECT_WITH_PROPERTIES", "name": "Create CRM object with properties", "description": "Creates a new HubSpot CRM object (e.g., contact, company, custom object) with specified `properties` (using valid internal names) and `associations` (to existing objects via valid type IDs)." }, { "slug": "HUBSPOT_CREATE_DEAL", "name": "Create deal", "description": "Creates a new HubSpot deal." }, { "slug": "HUBSPOT_CREATE_DEAL_FROM_NL", "name": "Create Deal From Natural Language", "description": "Creates a new deal in HubSpot from a natural language description. Fetches the deal property schema and pipeline stages at runtime, uses an LLM to generate the correct property payload, and creates the deal." }, { "slug": "HUBSPOT_CREATE_DEALS", "name": "Create deals", "description": "Creates multiple deals in HubSpot CRM; ensure any associated object IDs, deal stages, and pipeline IDs specified are valid and exist within the HubSpot account." }, { "slug": "HUBSPOT_CREATE_EMAIL", "name": "Create email", "description": "Creates a new HubSpot email engagement record. REQUIRED FIELDS in properties dict: - hs_email_subject: Subject line - hs_email_html: HTML content - hs_timestamp: Unix timestamp in milliseconds - hs_email_direction: One of 'EMAIL', 'INCOMING_EMAIL', 'FORWARDED_EMAIL', 'DRAFT_EMAIL' This creates an email engagement/activity record in HubSpot CRM, not a marketing email." }, { "slug": "HUBSPOT_CREATE_EMAILS", "name": "Create emails", "description": "Creates multiple HubSpot emails in a single batch operation." }, { "slug": "HUBSPOT_CREATE_EVENT_TEMPLATE_FOR_APP", "name": "Create event template for app", "description": "Creates a new event template for a HubSpot app, defining structure, custom properties (tokens), and appearance (Markdown with Handlebars) of custom timeline events for CRM objects; this template must exist before logging corresponding events." }, { "slug": "HUBSPOT_CREATE_FEEDBACK_SUBMISSION", "name": "Create feedback submission", "description": "Creates a new HubSpot feedback submission to record customer feedback (e.g., survey responses, support interactions), optionally associating it with CRM objects." }, { "slug": "HUBSPOT_CREATE_LINE_ITEM", "name": "Create line item", "description": "Creates a new HubSpot line item." }, { "slug": "HUBSPOT_CREATE_LINE_ITEMS", "name": "Create line items", "description": "Creates multiple HubSpot line items in a single batch operation." }, { "slug": "HUBSPOT_CREATE_MEETING", "name": "Create meeting", "description": "Creates a new meeting engagement in HubSpot CRM. Use this action when you need to log a meeting that occurred or schedule a future meeting with contacts, companies, or other CRM records. The meeting will appear on the timeline of associated records and can include details like title, time, location, notes, and outcome." }, { "slug": "HUBSPOT_CREATE_NOTE", "name": "Create note", "description": "Creates a new HubSpot CRM note. Use when you need to add a timestamped note with optional attachments and associations to contacts, companies, deals, or tickets." }, { "slug": "HUBSPOT_CREATE_OBJECT_ASSOCIATION", "name": "Create object association", "description": "Tool to create or label an association between two CRM records using HubSpot Associations v4 API. Use when you need to link records (e.g., contact to company, deal to contact) with explicit association labels." }, { "slug": "HUBSPOT_CREATE_OBJECT_SCHEMA", "name": "Create new object schema with custom properties", "description": "Creates a new custom object schema in HubSpot CRM with unique naming for schema and properties, defined display/required/searchable properties within the 'properties' list, provided immutable labels, and correctly configured 'enumeration' type properties (options/referencedObjectType)." }, { "slug": "HUBSPOT_CREATE_OR_UPDATE_DRAFT_VERSION", "name": "Create or update draft version", "description": "Creates or updates the draft version of a marketing email identified by `emailId`; if no draft exists, a new one is created from the current live version to prepare changes or A/B tests before publishing." }, { "slug": "HUBSPOT_CREATE_PIPELINE", "name": "Create pipeline for object type", "description": "Creates a new HubSpot pipeline for a specified CRM `objectType` (e.g., 'deals', 'tickets'), requiring the pipeline `label` be unique for that `objectType` and each stage `label` be unique within the pipeline." }, { "slug": "HUBSPOT_CREATE_PIPELINE_STAGE", "name": "Create pipeline stage", "description": "Creates a new stage in a specified HubSpot CRM pipeline for a given object type, such as 'deals' or 'tickets'." }, { "slug": "HUBSPOT_CREATE_PRODUCT", "name": "Create product", "description": "Creates a new HubSpot product. Note: Products are catalog items and cannot be directly associated with deals, contacts, or companies. To connect product information to a deal or quote, create a line item using HUBSPOT_CREATE_LINE_ITEM that references this product's ID via hs_product_id." }, { "slug": "HUBSPOT_CREATE_PRODUCTS", "name": "Create products", "description": "Creates multiple HubSpot products in a single batch operation." }, { "slug": "HUBSPOT_CREATE_PROPERTY_FOR_SPECIFIED_OBJECT_TYPE", "name": "Create property for specified object type", "description": "Creates a new custom property for a specified HubSpot CRM object type; ensure `groupName` refers to an existing property group for the `objectType`." }, { "slug": "HUBSPOT_CREATE_QUOTE_OBJECT", "name": "Create quote object", "description": "Creates a new quote object in HubSpot CRM with specified properties and associations." }, { "slug": "HUBSPOT_CREATE_TASK", "name": "Create task", "description": "Creates a new CRM task record. Use when adding a task with properties and optional associations." }, { "slug": "HUBSPOT_CREATE_TICKET", "name": "Create ticket", "description": "Creates a new HubSpot ticket." }, { "slug": "HUBSPOT_CREATE_TICKETS", "name": "Create tickets", "description": "Creates multiple HubSpot tickets in a batch, each with its own properties and associations; `inputs` list must not be empty, each item needs `properties`, and associations/custom properties must be validly defined using internal names for custom fields and ISO 8601 for dates." }, { "slug": "HUBSPOT_CREATE_TIMELINE_EVENT", "name": "Create timeline event based on template", "description": "Creates an immutable custom timeline event on a CRM object's record using a specified, existing event template (identified by `eventTemplateId`), optionally updating CRM object properties if defined in the template; requires `email`, `utk`, or `objectId` for association." }, { "slug": "HUBSPOT_CREATE_TIMELINE_EVENTS_BATCH", "name": "Create multiple timeline events batch", "description": "Creates multiple immutable timeline events in a batch, ideal for bulk data imports or real-time synchronizations, using a valid event template; may update CRM properties if the template is so configured." }, { "slug": "HUBSPOT_CREATE_WORKFLOW", "name": "Create workflow", "description": "Creates a new HubSpot workflow to automate processes; ensure `enrollmentCriteria` and `actions` use properties relevant to the specified `objectTypeId`." }, { "slug": "HUBSPOT_DELETE_CALL", "name": "Delete call", "description": "Permanently deletes a HubSpot call record by its ID. This action removes a call engagement from the CRM. Use this action when you need to remove a specific call record that is no longer needed or was created in error. This action is irreversible - the call record cannot be recovered once deleted." }, { "slug": "HUBSPOT_DELETE_CALLING_EXTENSION_SETTINGS", "name": "Delete calling extension settings", "description": "Permanently deletes the settings for a calling extension app, specified by its `appId`, rendering it unusable for all connected HubSpot accounts; this operation is irreversible." }, { "slug": "HUBSPOT_DELETE_CAMPAIGN", "name": "Delete campaign", "description": "Permanently deletes a marketing campaign from HubSpot using its `campaignGuid`; returns a 204 No Content status even if the campaign does not exist." }, { "slug": "HUBSPOT_DELETE_CAMPAIGNS_BATCH", "name": "Archive a batch of campaigns", "description": "Archives a batch of up to 50 marketing campaigns, hiding them from active views rather than permanently deleting them." }, { "slug": "HUBSPOT_DELETE_COMPANY_GDPR", "name": "Permanently delete company for GDPR compliance", "description": "Permanently deletes a company (identified by objectId) and its associated data from HubSpot for GDPR compliance; this action is irreversible and requires the company to exist." }, { "slug": "HUBSPOT_DELETE_CONTACT_GDPR", "name": "Permanently delete contact for GDPR compliance", "description": "Irreversibly erases a HubSpot contact and associated data per a GDPR request; if an email is given for a non-existent contact, it's blocklisted." }, { "slug": "HUBSPOT_DELETE_DEAL_GDPR", "name": "Archive deal (GDPR permanent delete not supported for deals)", "description": "Archives a HubSpot deal by its ID. Note: HubSpot's GDPR permanent deletion API only supports contacts, not deals. This action archives the deal (moves to recycling bin for 90 days) as the closest available functionality." }, { "slug": "HUBSPOT_DELETE_LINE_ITEMS_GDPR", "name": "Permanently delete line items for gdpr", "description": "Permanently deletes a specified line item and its associated content for GDPR compliance; this action is irreversible and cannot be undone." }, { "slug": "HUBSPOT_DELETE_MARKETING_EMAIL", "name": "Delete a marketing email", "description": "Permanently deletes a marketing email from your HubSpot account. This action cannot be undone." }, { "slug": "HUBSPOT_DELETE_MEETING", "name": "Delete meeting", "description": "Permanently deletes (archives) a HubSpot meeting by its ID, moving it to the recycling bin where it can be restored within 90 days. Use this action when you need to remove a meeting engagement from HubSpot's CRM. This action is irreversible via the API — the meeting cannot be recovered programmatically once deleted." }, { "slug": "HUBSPOT_DELETE_NOTE", "name": "Delete note", "description": "Archives a HubSpot note by its ID, removing it from active view. The note is archived rather than permanently deleted and can be restored within 90 days. Use this action when you need to remove a note from the CRM without permanently deleting it. This action is irreversible through the API - archived notes cannot be restored programmatically." }, { "slug": "HUBSPOT_DELETE_PIPELINE", "name": "Delete pipeline by id", "description": "Permanently deletes a HubSpot pipeline and all its stages by `pipelineId` and `objectType`; this is irreversible, so use validation flags to avoid errors if the pipeline is not empty." }, { "slug": "HUBSPOT_DELETE_PIPELINE_STAGE", "name": "Delete pipeline stage by id", "description": "Permanently deletes a specific pipeline stage for an `objectType` (e.g., 'deals', 'tickets') that supports pipelines; this operation is irreversible, so ensure no active CRM records are associated with the stage to prevent data issues." }, { "slug": "HUBSPOT_DELETE_SCHEMA", "name": "Delete schema by object type", "description": "Deletes a HubSpot custom object schema by `objectType`. With `archived=false` (default), it archives the schema (soft delete). With `archived=true`, it permanently deletes an already-archived schema (hard delete). Prerequisites: All object instances, associations, and properties must be deleted first." }, { "slug": "HUBSPOT_DELETE_TASK", "name": "Delete task", "description": "Archives a HubSpot task by its ID, removing it from active task lists. Use this action when you need to delete or remove a task from HubSpot CRM. The task is archived rather than permanently deleted and may be recoverable. This action is irreversible from the API perspective — the task cannot be directly unarchived via this action." }, { "slug": "HUBSPOT_DELETE_TIMELINE_EVENT_TEMPLATE", "name": "Delete timeline event template", "description": "Permanently and irreversibly deletes a specific timeline event template, identified by its `eventTemplateId`, from the application `appId`." }, { "slug": "HUBSPOT_DELETE_VIDEO_CONFERENCING_APP_SETTINGS", "name": "Delete video conferencing app settings", "description": "Irreversibly deletes all settings for a video conferencing application identified by its `appId` in HubSpot, removing its configuration and preventing it from functioning until reconfigured; existing meetings and historical data are unaffected. Note: This API requires developer API key (hapikey) authentication from your HubSpot developer account, not OAuth tokens." }, { "slug": "HUBSPOT_DELETE_WORKFLOW", "name": "Delete workflow", "description": "Permanently deletes a HubSpot workflow by its ID; deleted workflows cannot be restored via the API and the ID must exist." }, { "slug": "HUBSPOT_FETCH_IMPORT_ERROR_DETAILS", "name": "Fetch import error details", "description": "Fetches a paginated list of read-only error details for a specific HubSpot CRM import, requiring a valid `importId` for a processed import." }, { "slug": "HUBSPOT_FETCH_RECORDING_SETTINGS", "name": "Fetch recording settings by app ID", "description": "Fetches call recording settings for a specified, existing HubSpot calling extension app." }, { "slug": "HUBSPOT_FETCH_REVENUE", "name": "Fetch revenue", "description": "Fetches a revenue attribution report for a specified, existing marketing campaign, optionally using a specific attribution model and date range; if both start and end dates are given, `endDate` must not be earlier than `startDate`." }, { "slug": "HUBSPOT_GET_AB_EMAIL_VARIATION", "name": "Get the variation of an A/B marketing email", "description": "Retrieves the alternate variation of a specified A/B marketing email; the `emailId` must identify an email currently in an A/B test. Requires Marketing Hub Professional or Enterprise subscription." }, { "slug": "HUBSPOT_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Gets current HubSpot account info (email, hubId, user details) using access-token lookup." }, { "slug": "HUBSPOT_GET_ACTIVE_IMPORTS_LIST", "name": "Get active imports list", "description": "Retrieves a list of currently active import jobs in HubSpot for monitoring ongoing data operations." }, { "slug": "HUBSPOT_GET_AGGREGATED_STATISTIC_INTERVALS", "name": "Get aggregated statistic intervals", "description": "Retrieves aggregated statistics for marketing emails (e.g., send counts), grouped by specified time intervals within a defined time range." }, { "slug": "HUBSPOT_GET_AGGREGATED_STATISTICS", "name": "Get aggregated statistics", "description": "Retrieves aggregated statistics for marketing emails, optionally within an ISO8601 formatted time range, by email IDs, or specific email properties." }, { "slug": "HUBSPOT_GET_ALL_MARKETING_EMAILS_FOR_A_HUBSPOT_ACCOUNT", "name": "Get all marketing emails for a HubSpot account", "description": "Fetches a list of marketing emails from a HubSpot account, with options for filtering, sorting, pagination, and including performance statistics." }, { "slug": "HUBSPOT_GET_CAMPAIGN", "name": "Get campaign", "description": "Retrieves a HubSpot campaign by its ID." }, { "slug": "HUBSPOT_GET_CAMPAIGN_METRICS", "name": "Get campaign metrics", "description": "Retrieves key attribution metrics for an existing marketing campaign, identified by its `campaignGuid`, within an optional date range." }, { "slug": "HUBSPOT_GET_CAMPAIGNS", "name": "Get campaigns", "description": "Retrieves multiple HubSpot campaigns." }, { "slug": "HUBSPOT_GET_COMPANY", "name": "Get company", "description": "Retrieves a HubSpot company by its ID." }, { "slug": "HUBSPOT_GET_CONTACT_IDS", "name": "Get contact IDs", "description": "Fetches a list of contact IDs for a specific HubSpot campaign based on interaction type." }, { "slug": "HUBSPOT_GET_DEAL", "name": "Get deal", "description": "Retrieves a HubSpot deal by its ID." }, { "slug": "HUBSPOT_GET_DEALS", "name": "Get deals", "description": "Retrieves multiple HubSpot deals by their IDs in a single batch request." }, { "slug": "HUBSPOT_GET_EMAILS", "name": "Get emails", "description": "Retrieves multiple HubSpot email engagement records by their IDs in a single batch request." }, { "slug": "HUBSPOT_GET_EVENT_TEMPLATE", "name": "Get specific event template for app", "description": "Retrieves detailed information about a specific event template for a given application in HubSpot's CRM timeline." }, { "slug": "HUBSPOT_GET_IMPORT_RECORD_INFORMATION", "name": "Get import record information", "description": "Retrieves a comprehensive summary of a specific HubSpot CRM import record by its `importId`, including status, progress, updates, results, and errors; useful for monitoring and troubleshooting data imports." }, { "slug": "HUBSPOT_GET_MARKETING_EMAIL_DRAFT", "name": "Get draft version of a marketing email", "description": "Retrieves the draft version of a marketing email by its `emailId`; if no draft exists, returns the published version." }, { "slug": "HUBSPOT_GET_MARKETING_EMAIL_REVISION", "name": "Get a revision of a marketing email", "description": "Retrieves a specific, previously saved revision of a marketing email using its unique email ID and revision ID." }, { "slug": "HUBSPOT_GET_MARKETING_EMAIL_REVISIONS", "name": "Get revisions of a marketing email", "description": "Retrieves a paginated list of all historical versions (including full state like content, settings, metadata) for a specified, existing marketing email; revision ID -1 identifies the current version." }, { "slug": "HUBSPOT_GET_PIPELINE_BY_ID", "name": "Return pipeline by id", "description": "Retrieves a specific pipeline by its ID and CRM object type, detailing its stages and properties." }, { "slug": "HUBSPOT_GET_PIPELINE_STAGE_AUDIT", "name": "Get pipeline stage audit", "description": "Retrieves a reverse chronological list of all mutations (changes) for a specific pipeline stage, including CREATE and UPDATE events with timestamps and details." }, { "slug": "HUBSPOT_GET_PRODUCT", "name": "Get product", "description": "Retrieves a HubSpot product by its ID." }, { "slug": "HUBSPOT_GET_PRODUCTS", "name": "Get products", "description": "Retrieves multiple HubSpot products by their IDs." }, { "slug": "HUBSPOT_GET_QUOTE", "name": "Get quote by id", "description": "Retrieves a specific HubSpot quote by its unique identifier." }, { "slug": "HUBSPOT_GET_SEGMENT_MEMBERS", "name": "Get segment members", "description": "Tool to retrieve segment (list) members ordered by join timestamp. Use when you need to page through list membership data." }, { "slug": "HUBSPOT_GET_THE_DETAILS_OF_A_SPECIFIED_MARKETING_EMAIL", "name": "Get the details of a specified marketing email", "description": "Retrieves detailed information for a specific marketing email in HubSpot using its unique email ID, optionally including performance statistics and specific properties." }, { "slug": "HUBSPOT_GET_TICKET", "name": "Get ticket", "description": "Retrieves a HubSpot ticket by its ID." }, { "slug": "HUBSPOT_GET_TICKETS", "name": "Get tickets", "description": "Retrieves multiple HubSpot tickets by their IDs." }, { "slug": "HUBSPOT_GET_WORKFLOW_BY_ID", "name": "Get workflow by ID", "description": "Retrieves comprehensive details for an existing HubSpot workflow by its unique ID; unsupported actions are designated 'UNSUPPORTED_ACTION' in the response." }, { "slug": "HUBSPOT_GET_WORKFLOWS", "name": "Get all workflows", "description": "Retrieves a list of workflow summaries (ID, name, type, status) from HubSpot, using the 'limit' parameter for pagination." }, { "slug": "HUBSPOT_LIST_ASSETS", "name": "List assets", "description": "Lists assets of a specific `assetType` for a given HubSpot marketing `campaignGuid`, optionally including performance metrics for a date range." }, { "slug": "HUBSPOT_LIST_ASSOCIATION_TYPES", "name": "List association types", "description": "Lists all valid association types between two specified HubSpot CRM object types." }, { "slug": "HUBSPOT_LIST_COMPANIES", "name": "List companies", "description": "Retrieves a paginated list of HubSpot companies." }, { "slug": "HUBSPOT_LIST_COMPANY_ACTIVITIES", "name": "List company activities", "description": "List all activity/engagement associations from a company to a specified activity type (calls, emails, meetings, notes, or tasks). Returns the IDs of associated engagement records. Use this action when you need to retrieve all activities of a specific type for a company to build a timeline or activity history." }, { "slug": "HUBSPOT_LIST_COMPANY_CALLS", "name": "List company calls", "description": "Lists all calls associated with a specific HubSpot company. Returns call IDs and their association types with the company. Use this action when you need to retrieve all call activity records linked to a company without fetching full call details. For full call properties, use the returned call IDs with a call read action." }, { "slug": "HUBSPOT_LIST_COMPANY_MEETINGS", "name": "List company meetings", "description": "List all meetings associated with a specific company in HubSpot. Returns meeting IDs and association metadata for meetings linked to the company record. Use this action when you need to retrieve all meetings scheduled with or related to a particular company." }, { "slug": "HUBSPOT_LIST_CONTACT_NOTES", "name": "List contact notes", "description": "List all notes associated with a specific HubSpot contact. Returns note IDs and association metadata. Use this action when you need to retrieve all notes linked to a contact record. To get full note details (body, timestamp, etc.), use the note IDs with a batch read action." }, { "slug": "HUBSPOT_LIST_CONTACT_PROPERTIES", "name": "List contact properties", "description": "Lists all contact properties in your HubSpot account, including custom properties you've created. Use this action to discover: - Available property names for updating contacts - Custom properties specific to your HubSpot account - Property types and valid options for enumeration fields - Which properties are read-only vs writable" }, { "slug": "HUBSPOT_LIST_CONTACTS", "name": "List contacts", "description": "Retrieves a paginated list of HubSpot contacts." }, { "slug": "HUBSPOT_LIST_CONTACT_TASKS", "name": "List contact tasks", "description": "List all tasks associated with a specific contact. Returns task IDs and association metadata for tasks linked to the given contact. Use this action when you need to retrieve all tasks related to a contact, such as viewing pending action items or following up on contact-related to-dos." }, { "slug": "HUBSPOT_LIST_DEAL_ACTIVITIES", "name": "List deal activities", "description": "Retrieves activities (notes, calls, emails, meetings, tasks) associated with a specific HubSpot deal. Use this action when you need to view the complete activity timeline for a deal, including all engagement types. This provides a comprehensive view of interactions and communications related to the deal, which is useful for understanding deal history and next steps." }, { "slug": "HUBSPOT_LIST_DEAL_MEETINGS", "name": "List deal meetings", "description": "List all meetings associated with a specific deal in HubSpot. Returns meeting IDs and association metadata. Use this action when you need to retrieve meetings linked to a deal without fetching full meeting details. This is useful for understanding deal activity, tracking customer interactions, or building reports of engagement touchpoints." }, { "slug": "HUBSPOT_LIST_DEALS", "name": "List deals", "description": "Retrieves a paginated list of HubSpot deals." }, { "slug": "HUBSPOT_LIST_EMAILS", "name": "List Emails", "description": "Retrieves a paginated list of HubSpot emails, allowing selection of specific properties (with or without history), associated object IDs, and filtering by archive status." }, { "slug": "HUBSPOT_LIST_EVENT_TEMPLATES", "name": "List all event templates for app", "description": "Retrieves all event templates associated with a valid `appId` for an existing application in HubSpot's CRM Timeline." }, { "slug": "HUBSPOT_LIST_FEEDBACK_SUBMISSIONS", "name": "List feedback submissions page", "description": "Retrieves a paginated list of feedback submissions from HubSpot, allowing specification of properties (including history), associated object IDs, and filtering by archive status." }, { "slug": "HUBSPOT_LIST_GRANTED_SCOPES", "name": "List granted OAuth scopes", "description": "Tool to introspect the current OAuth access token and return its granted scopes and metadata. Use when you need to check which permissions are available before calling an endpoint (e.g., workflows, automation) to proactively detect missing scopes and provide clear remediation guidance." }, { "slug": "HUBSPOT_LIST_OBJECT_ASSOCIATIONS", "name": "List object associations", "description": "List all associations from a single CRM record to a specified target object type. Use when you need to expand associations for a single record without fetching the full CRM object." }, { "slug": "HUBSPOT_LIST_PRODUCTS", "name": "List products", "description": "Retrieves a paginated list of HubSpot products." }, { "slug": "HUBSPOT_LIST_QUOTES", "name": "List quotes page", "description": "Retrieves a paginated list of quotes, allowing selection of specific properties, property history, associated object IDs, and filtering by archived status." }, { "slug": "HUBSPOT_LIST_TICKETS", "name": "List tickets", "description": "Retrieves a paginated list of HubSpot tickets." }, { "slug": "HUBSPOT_MERGE_COMPANIES", "name": "Merge two companies of same type", "description": "Merges two existing company records of the same type in HubSpot CRM, where `objectIdToMerge` is absorbed into `primaryObjectId`; this operation is irreversible." }, { "slug": "HUBSPOT_MERGE_CONTACTS", "name": "Merge contacts", "description": "Merges two HubSpot contacts into one." }, { "slug": "HUBSPOT_MERGE_DEALS", "name": "Merge deals", "description": "Merges two HubSpot deals into one." }, { "slug": "HUBSPOT_MERGE_EMAILS", "name": "Merge emails", "description": "Merges two HubSpot emails into one." }, { "slug": "HUBSPOT_MERGE_FEEDBACK_SUBMISSIONS", "name": "Merge two feedback submissions", "description": "Merges two existing feedback submissions by ID, primarily for consolidating duplicates or related feedback; this operation is irreversible, and `primaryObjectId` values take precedence in conflicts." }, { "slug": "HUBSPOT_MERGE_LINE_ITEMS", "name": "Merge two line items of same type", "description": "Merges two line items, `objectIdToMerge` into `primaryObjectId`, which must be of the same type; `objectIdToMerge` is absorbed and the operation is irreversible." }, { "slug": "HUBSPOT_MERGE_OBJECTS", "name": "Merge two objects of same type", "description": "Merges two distinct HubSpot CRM objects of the same `objectType`, consolidating data into `primaryObjectId` (which is preserved) and deleting `objectIdToMerge`; this operation is permanent and irreversible." }, { "slug": "HUBSPOT_MERGE_PRODUCTS", "name": "Merge products", "description": "Merges two HubSpot products into one." }, { "slug": "HUBSPOT_MERGE_QUOTES", "name": "Merge two quotes of same type", "description": "Merges two distinct quotes of the same type by consolidating `objectIdToMerge` into `primaryObjectId` (e.g., for combining information or updating terms); this operation is irreversible." }, { "slug": "HUBSPOT_MERGE_TICKETS", "name": "Merge tickets", "description": "Merges two HubSpot tickets into one." }, { "slug": "HUBSPOT_PARTIALLY_UPDATE_CRM_OBJECT_BY_ID", "name": "Partially update CRM object by ID", "description": "Partially updates specified properties of a CRM object (e.g., contact, company, deal) identified by its type and ID, or optionally by a unique property value if `idProperty` is specified." }, { "slug": "HUBSPOT_PERMANENTLY_DELETE_CONTACT_VIA_GDPR", "name": "Permanently delete contact via GDPR", "description": "Permanently deletes a HubSpot contact and all its associated data for GDPR compliance, identifying the contact by its ID or another unique property." }, { "slug": "HUBSPOT_PUBLISH_MARKETING_EMAIL", "name": "Publish or send a marketing email", "description": "Publishes or sends a specified HubSpot marketing email that is valid and ready for sending; requires Marketing Hub Enterprise or the transactional email add-on." }, { "slug": "HUBSPOT_PURGE_SCHEMA", "name": "Purge schema by object type", "description": "Permanently and irreversibly deletes the schema for an existing `objectType` in HubSpot CRM; this deprecated endpoint should be used with extreme caution." }, { "slug": "HUBSPOT_READ_A_CRM_PROPERTY_BY_NAME", "name": "Read a CRM property by name", "description": "Reads a specific CRM property definition for a given HubSpot object type by its internal name." }, { "slug": "HUBSPOT_READ_ALL_PROPERTIES_FOR_OBJECT_TYPE", "name": "Read all properties for object type", "description": "Retrieves definitions and metadata (not actual values) for properties of a specified HubSpot CRM object type (e.g., 'contacts', 'companies', 'deals', or custom objects)." }, { "slug": "HUBSPOT_READ_APAGE_OF_OBJECTS_BY_TYPE", "name": "Read a page of objects by type", "description": "Retrieves a paginated list of objects for a specified and valid HubSpot CRM object type (e.g., 'contacts', 'companies', 'deals', or custom ID)." }, { "slug": "HUBSPOT_READ_ASSOCIATIONS_BATCH", "name": "Batch read associations", "description": "Tool to batch-read CRM associations (e.g., deals→contacts, deals→companies) for up to 1,000 source record IDs in one request. Use when you need to retrieve associated target IDs and association type metadata for multiple records efficiently, avoiding rate-limit issues from per-record GET calls." }, { "slug": "HUBSPOT_READ_BATCH_CRM_OBJECT_PROPERTIES", "name": "Read a batch of CRM object properties", "description": "Retrieves property definitions (metadata) for a batch of CRM object properties for a specified object type. Returns detailed information about property structure, data types, options, and configuration—not the actual property values of CRM records." }, { "slug": "HUBSPOT_READ_BATCH_FEEDBACK_SUBMISSIONS_BY_ID_OR_PROPERTY", "name": "Read batch feedback submissions by id or property", "description": "Retrieves up to 100 feedback submissions in a batch using their IDs or a specified unique `idProperty`, optionally including specified properties and their history." }, { "slug": "HUBSPOT_READ_BATCH_OF_CRM_OBJECTS_BY_ID_OR_PROPERTY_VALUES", "name": "Read batch of crm objects by id or property values", "description": "Reads a batch of CRM objects of a specified `objectType` using their HubSpot IDs or unique property values from the `inputs` list, allowing retrieval of specific `properties`, their historical values (`propertiesWithHistory`), and filtering by `archived` status." }, { "slug": "HUBSPOT_READ_BATCH_OF_LINE_ITEMS_BY_ID_OR_PROPERTY_VALUES", "name": "Read batch of line items by id or property values", "description": "Retrieves a batch of HubSpot CRM line items by their IDs, or optionally by values of a custom unique property defined in `idProperty`." }, { "slug": "HUBSPOT_READ_BATCH_OF_QUOTES_BY_PROPERTY_VALUES", "name": "Read batch of quotes by property values", "description": "Efficiently retrieves a batch of HubSpot CRM quotes by their IDs (or a specified unique property), optionally including archived quotes, specific properties, and property history." }, { "slug": "HUBSPOT_READ_BUDGET", "name": "Read budget", "description": "Fetches detailed budget (total, spent, remaining) and spend information for a marketing campaign, including an 'order' field for sequencing budget/spend items (0 is oldest)." }, { "slug": "HUBSPOT_READ_CONTACT", "name": "Read contact", "description": "Retrieves a HubSpot contact by its ID." }, { "slug": "HUBSPOT_READ_CONTACTS", "name": "Read contacts", "description": "Batch read multiple HubSpot contacts by their IDs or custom identifier property. This action retrieves up to 100 contacts per request using the HubSpot CRM batch read API. You can specify which contact properties to return and optionally include historical values for properties." }, { "slug": "HUBSPOT_READ_CRM_OBJECT_BY_ID", "name": "Read crm object by id", "description": "Retrieves a specific CRM object (e.g., contact, company, deal, ticket) by its ID or a unique property, optionally including specific properties, history, and associations." }, { "slug": "HUBSPOT_READ_EMAIL", "name": "ReadEmail Email", "description": "Call this to retrieve an existing HubSpot email by its `emailId` or an alternative unique `idProperty`." }, { "slug": "HUBSPOT_READ_FEEDBACK_SUBMISSION_BY_ID", "name": "Read feedback submission by id", "description": "Reads a HubSpot feedback submission by its ID, optionally using a custom unique 'idProperty', and allows specifying properties to return including history and associations." }, { "slug": "HUBSPOT_READ_PROPERTY_GROUP", "name": "Read a property group", "description": "Retrieves metadata for a specific property group of a given CRM object type, detailing its structure and attributes, but not the actual property values of CRM objects." }, { "slug": "HUBSPOT_READ_PROPERTY_GROUPS_FOR_OBJECT_TYPE", "name": "Read property groups for object type", "description": "Retrieves all property groups in a single call for a specified HubSpot CRM object type (e.g., 'contacts', 'companies'), returning only the groups themselves, not the individual properties within them." }, { "slug": "HUBSPOT_REMOVE_ASSET_ASSOCIATION", "name": "Remove asset association", "description": "Disassociates an asset from a HubSpot marketing campaign. Supports a wide range of asset types including forms, landing pages, emails, blog posts, workflows, static lists, and more." }, { "slug": "HUBSPOT_REMOVE_ASSOCIATION", "name": "Remove association between CRM records", "description": "Tool to remove all associations between two CRM records using the v4 associations endpoint. Use when unlinking records or cleaning up incorrect associations." }, { "slug": "HUBSPOT_REMOVE_ASSOCIATION_FROM_SCHEMA", "name": "Remove association from schema", "description": "Permanently removes a specified association definition (type) from a HubSpot object's schema, preventing future creations of this association type without affecting existing instances." }, { "slug": "HUBSPOT_REMOVE_DEAL", "name": "Remove deal", "description": "Removes a HubSpot deal by its ID." }, { "slug": "HUBSPOT_REMOVE_TOKEN_FROM_EVENT_TEMPLATE", "name": "Remove token from event template", "description": "Removes a token from a HubSpot event template, preventing its inclusion in new events created from that template." }, { "slug": "HUBSPOT_RENDER_EVENT_DETAIL_TEMPLATE", "name": "Render event detail template", "description": "Renders detailed information for a specific HubSpot CRM timeline event using a predefined event template, ignoring `extraData` references in the template not present in event data." }, { "slug": "HUBSPOT_RENDER_EVENT_HEADER_OR_DETAIL_AS_HTML", "name": "Render event header or detail as html", "description": "Renders an event's header or detail template as HTML for a specified event on the HubSpot CRM timeline, using a given event template ID and event ID." }, { "slug": "HUBSPOT_REPLACE_ALL_PROPERTIES_OF_PIPELINE", "name": "Replace all properties of pipeline", "description": "Overwrites an entire CRM pipeline (specified by `objectType` and `pipelineId`) and all its stages with a new definition, returning the updated pipeline." }, { "slug": "HUBSPOT_REPLACE_PIPELINE_STAGE_PROPERTIES", "name": "Replace pipeline stage properties", "description": "Replaces all properties of a specified pipeline stage; the new `label` must be unique within the pipeline, and if `objectType` is 'deals', the `metadata` must include a 'probability' key." }, { "slug": "HUBSPOT_RESET_DRAFT", "name": "Reset draft", "description": "Resets a marketing email's draft to its currently published (live) version, discarding all unpublished changes; the email must have a live version to revert to." }, { "slug": "HUBSPOT_RESTORE_EMAIL_REVISION", "name": "Restore a revision of a marketing email to draft state", "description": "Restores a specific revision of a marketing email to a DRAFT state, overwriting any existing draft." }, { "slug": "HUBSPOT_RESTORE_MARKETING_EMAIL_REVISION", "name": "Restore a revision of a marketing email", "description": "Restores a specific, existing, non-active revision of a marketing email to become the new live version for that email." }, { "slug": "HUBSPOT_RETRIEVE_ALL_OBJECT_SCHEMAS", "name": "Retrieve all object schemas", "description": "Retrieves all object schema definitions (not data records) for a HubSpot account, supporting retrieval of either active or archived schemas." }, { "slug": "HUBSPOT_RETRIEVE_ALL_PIPELINES_FOR_SPECIFIED_OBJECT_TYPE", "name": "Retrieve all pipelines for specified object type", "description": "Retrieves all pipelines in HubSpot for a specified CRM object type, such as deals or tickets." }, { "slug": "HUBSPOT_RETRIEVE_CALLING_SETTINGS_FOR_APP", "name": "Retrieve calling settings for app", "description": "Retrieves the read-only calling extension settings for a specific HubSpot app; the app must exist and have calling extensions configured." }, { "slug": "HUBSPOT_RETRIEVE_LINE_ITEM_BY_ID", "name": "Retrieve line item by id", "description": "Retrieves a HubSpot CRM line item by its ID or a specified unique property (`idProperty`)." }, { "slug": "HUBSPOT_RETRIEVE_LINE_ITEMS", "name": "Retrieve line items list", "description": "Fetches a paginated list of HubSpot CRM line items, allowing selection of specific properties (including history), associated object IDs, and filtering by archive status; ensure property and association names are valid HubSpot internal names." }, { "slug": "HUBSPOT_RETRIEVE_OBJECT_SCHEMA", "name": "Retrieve existing object schema", "description": "Fetches the detailed schema definition for a specified, existing standard or custom HubSpot CRM object type; this action is read-only and does not create or modify schemas." }, { "slug": "HUBSPOT_RETRIEVE_OWNER_BY_ID_OR_USER_ID", "name": "Retrieve owner by ID or user ID", "description": "Retrieves a specific HubSpot CRM owner by their ID, with options to specify ID type (owner or user) and to include archived records." }, { "slug": "HUBSPOT_RETRIEVE_OWNERS", "name": "Retrieve owners", "description": "Retrieves a list of all owners in the HubSpot CRM, including their ID, first name, last name, email, and user ID." }, { "slug": "HUBSPOT_RETRIEVE_PAGE_OF_CRM_OWNERS", "name": "Retrieve page of crm owners", "description": "Retrieves a paginated list of CRM owners from HubSpot, optionally filtering by email or archived status." }, { "slug": "HUBSPOT_RETRIEVE_PIPELINE_STAGE_BY_ID", "name": "Retrieve pipeline stage by id", "description": "Fetches detailed properties and metadata (e.g., label, display order, custom properties) for a specific stage within a HubSpot CRM pipeline, identified by its `objectType`, `pipelineId`, and `stageId`." }, { "slug": "HUBSPOT_RETRIEVE_PIPELINE_STAGES", "name": "Retrieve pipeline stages", "description": "Fetches all stages for a specified HubSpot CRM object type and pipeline ID." }, { "slug": "HUBSPOT_RETRIEVE_TIMELINE_EVENT_BY_IDS", "name": "Retrieve timeline event by ids", "description": "Retrieves a specific HubSpot CRM timeline event by its application ID, event template ID, and event ID, returning event details including timestamp, tokens, and associated object information." }, { "slug": "HUBSPOT_RETRIEVE_VIDEO_CONFERENCE_SETTINGS_BY_ID", "name": "Retrieve video conference settings by id", "description": "Retrieves video conference application settings, such as webhook URLs and user/account management configurations, for a specified `appId`." }, { "slug": "HUBSPOT_SEARCH_CAMPAIGNS", "name": "Search campaigns", "description": "Searches for HubSpot campaigns." }, { "slug": "HUBSPOT_SEARCH_COMPANIES", "name": "Search companies", "description": "Searches for HubSpot companies using flexible criteria and filters." }, { "slug": "HUBSPOT_SEARCH_CONTACTS_BY_CRITERIA", "name": "Search contacts by criteria", "description": "Searches for HubSpot contacts using a text query, specific filter criteria (filters in a group are ANDed, groups are ORed), sorting, and pagination to retrieve selected properties." }, { "slug": "HUBSPOT_SEARCH_CRM_OBJECTS_BY_CRITERIA", "name": "Search crm objects by criteria", "description": "Searches HubSpot CRM objects (e.g., 'contacts', 'companies') by `objectType` using complex criteria including filters, sorting, and pagination; property names used in filters, sorts, and returned properties must be valid for the specified `objectType`." }, { "slug": "HUBSPOT_SEARCH_DEALS", "name": "Search deals", "description": "Searches for HubSpot deals using flexible criteria and filters." }, { "slug": "HUBSPOT_SEARCH_EMAILS", "name": "Search emails", "description": "Searches for HubSpot emails using flexible criteria and filters." }, { "slug": "HUBSPOT_SEARCH_FEEDBACK_SUBMISSIONS", "name": "Search feedback submissions", "description": "Searches for feedback submissions in HubSpot CRM using text query, filter groups, sorting, and pagination, returning specified properties." }, { "slug": "HUBSPOT_SEARCH_LINE_ITEMS_BY_CRITERIA", "name": "Search line items by criteria", "description": "Searches HubSpot line items using criteria including filters, sorting, and pagination; `after` must be a valid cursor from a previous response, and `sorts`/`properties` must refer to valid line item property names." }, { "slug": "HUBSPOT_SEARCH_PRODUCTS", "name": "Search products", "description": "Searches for HubSpot products using flexible criteria and filters." }, { "slug": "HUBSPOT_SEARCH_QUOTES_BY_CRITERIA", "name": "Search quotes by criteria", "description": "Searches HubSpot CRM quotes using a text query, complex filter criteria, sorting, and pagination." }, { "slug": "HUBSPOT_SEARCH_TICKETS", "name": "Search tickets", "description": "Searches for HubSpot tickets using flexible criteria and filters." }, { "slug": "HUBSPOT_SET_CALL_RECORDING_SETTINGS", "name": "Set call recording settings", "description": "Configures the URL (`urlToRetrieveAuthedRecording`) that HubSpot uses to retrieve call recordings for a specified third-party calling app (`appId`). The URL must contain a %s placeholder which HubSpot replaces with the engagement's externalId. The calling app must be an existing calling extension app integrated with the HubSpot account." }, { "slug": "HUBSPOT_START_IMPORT", "name": "Initiate data import process", "description": "Call this action to start an asynchronous data import into HubSpot CRM using uploaded files and a detailed `importRequest` JSON configuration, ensuring this JSON correctly maps file columns to HubSpot properties and files align with these mappings." }, { "slug": "HUBSPOT_UPDATE_A_MARKETING_EMAIL", "name": "Update a marketing email", "description": "Updates properties of an existing marketing email identified by its `emailId`; unspecified fields retain their current values." }, { "slug": "HUBSPOT_UPDATE_BATCH_FEEDBACK_SUBMISSIONS", "name": "Update batch feedback submissions", "description": "Updates a batch of HubSpot feedback submissions; property keys must be existing internal HubSpot names and values must be correctly formatted strings." }, { "slug": "HUBSPOT_UPDATE_BATCH_OF_OBJECTS_BY_IDOR_PROPERTY_VALUES", "name": "Update a batch of objects by id or property values", "description": "Performs a batch update on a valid `objectType` where properties are writeable and any `idProperty` used is designated unique; updates can be partial." }, { "slug": "HUBSPOT_UPDATE_CALLING_APP_RECORDING_SETTINGS", "name": "Update calling app recording settings", "description": "Updates the recording settings, such as the URL for retrieving authenticated recordings, for a specific calling extension app identified by its `appId`." }, { "slug": "HUBSPOT_UPDATE_CALLING_EXTENSION_SETTINGS", "name": "Modify calling extension settings", "description": "Updates settings (e.g., display name, UI URL/dimensions, feature flags) for an existing calling extension app, identified by `appId`." }, { "slug": "HUBSPOT_UPDATE_CAMPAIGN", "name": "Update campaign", "description": "Partially updates specific, writable properties of an existing HubSpot marketing campaign identified by `campaignGuid`; an empty string value in `properties` clears a property." }, { "slug": "HUBSPOT_UPDATE_CAMPAIGNS", "name": "Update a batch of campaigns", "description": "Updates properties for up to 50 existing HubSpot marketing campaigns in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_COMPANIES", "name": "Update companies", "description": "Updates multiple HubSpot companies in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_COMPANY", "name": "Update company", "description": "Updates properties for an existing HubSpot company." }, { "slug": "HUBSPOT_UPDATE_CONTACT", "name": "Update contact", "description": "Updates properties for an existing HubSpot contact." }, { "slug": "HUBSPOT_UPDATE_CONTACTS", "name": "Update contacts", "description": "Updates multiple HubSpot contacts in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_CRM_PROPERTY", "name": "Update specific CRM property", "description": "Updates attributes of an existing HubSpot CRM property, identified by its `objectType` and `propertyName`; only provided fields are modified, and changing a property's `type` can cause data loss if incompatible with existing data." }, { "slug": "HUBSPOT_UPDATE_DEAL", "name": "Update deal", "description": "Updates properties for an existing HubSpot deal." }, { "slug": "HUBSPOT_UPDATE_DEALS", "name": "Update deals", "description": "Updates multiple HubSpot deals in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_EMAIL", "name": "UpdateEmail Email", "description": "Partially updates properties of an existing HubSpot email object, identified by `emailId` (as internal ID or custom unique property value if `idProperty` is given); the object must exist." }, { "slug": "HUBSPOT_UPDATE_EMAILS", "name": "Update emails", "description": "Updates multiple HubSpot emails in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_EVENT_TEMPLATE", "name": "Update existing event template", "description": "Updates an existing HubSpot event template's name, display templates, and tokens; providing `tokens` replaces the entire existing list, and the `id` in the request body must match `eventTemplateId` in the path." }, { "slug": "HUBSPOT_UPDATE_FEEDBACK_SUBMISSION", "name": "Update feedback submission by id", "description": "Partially updates writable properties of an existing HubSpot Feedback Submission, identified by its `feedbackSubmissionId` (which can be an internal object ID, or a unique property value if `idProperty` is specified)." }, { "slug": "HUBSPOT_UPDATE_LINE_ITEM", "name": "Update line item object partially", "description": "Partially updates specified properties of an existing HubSpot Line Item, identified by `lineItemId` (as HubSpot object ID or value of `idProperty` if used); new values overwrite existing ones, and an empty string clears a property." }, { "slug": "HUBSPOT_UPDATE_LINE_ITEMS", "name": "Update a batch of line items", "description": "Updates a batch of existing HubSpot CRM line items in a single operation, identifying each by its primary ID or a unique `idProperty` (which must be a unique identifier property in HubSpot), and modifies their specified properties." }, { "slug": "HUBSPOT_UPDATE_OBJECT_SCHEMA", "name": "Update existing object schema", "description": "Updates an existing custom object schema's metadata in HubSpot, such as its description, labels, display properties, required properties, searchable properties, and restorability, for a specified `objectType` that must already exist." }, { "slug": "HUBSPOT_UPDATE_PIPELINE", "name": "Partially update pipeline by id", "description": "Partially updates a CRM pipeline's label, display order, or restores an archived pipeline by setting `archived` to `false`." }, { "slug": "HUBSPOT_UPDATE_PIPELINE_STAGE", "name": "Update pipeline stage by ids", "description": "Partially updates a HubSpot CRM pipeline stage identified by `objectType`, `pipelineId`, and `stageId`, requiring `metadata` in the request; unspecified fields are unchanged." }, { "slug": "HUBSPOT_UPDATE_PRODUCT", "name": "Update product", "description": "Updates properties for an existing HubSpot product." }, { "slug": "HUBSPOT_UPDATE_PRODUCTS", "name": "Update products", "description": "Updates multiple HubSpot products in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_PROPERTY_GROUP", "name": "Partially update property group", "description": "Partially updates a property group's `displayOrder` or `label` for a specified CRM `objectType` in HubSpot." }, { "slug": "HUBSPOT_UPDATE_QUOTE", "name": "Partial update quote by quote id", "description": "Performs a partial update on an existing HubSpot quote's specified properties, identifying the quote by `quoteId` (either its internal ID or a custom unique property value if `idProperty` is provided)." }, { "slug": "HUBSPOT_UPDATE_TICKET", "name": "Update ticket", "description": "Updates properties for an existing HubSpot ticket." }, { "slug": "HUBSPOT_UPDATE_TICKETS", "name": "Update tickets", "description": "Updates multiple HubSpot tickets in a single batch operation." }, { "slug": "HUBSPOT_UPDATE_TOKEN_ON_EVENT_TEMPLATE", "name": "Update token on event template", "description": "Updates the label or options of an existing token within a specified HubSpot CRM event template; token name and data type remain unchanged." }, { "slug": "HUBSPOT_UPDATE_VIDEO_CONFERENCE_APP_SETTINGS", "name": "Update video conference app settings", "description": "Updates webhook URLs (for creating/updating/deleting meetings, fetching accounts, verifying users) for a video conference application specified by `appId`. Requires developer API key authentication. All URLs must use HTTPS protocol and be publicly accessible." } ], "triggers": [ { "slug": "HUBSPOT_CONTACT_CREATED_TRIGGER", "name": "Contact Created Trigger", "description": "Contact Created Trigger" }, { "slug": "HUBSPOT_DEAL_STAGE_UPDATED_TRIGGER", "name": "Deal Stage UpdatedTrigger", "description": "Deal Stage UpdatedTrigger" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "hubspot_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "account-info.security.read,accounting,cms.domains.read,cms.domains.write,crm.export,crm.import,crm.lists.read,crm.lists.write,crm.objects.companies.read,crm.objects.companies.write,crm.objects.contacts.read,crm.objects.contacts.write,crm.objects.deals.read,crm.objects.deals.write,crm.objects.marketing_events.read,crm.objects.marketing_events.write,crm.objects.owners.read,crm.objects.quotes.read,crm.objects.quotes.write,crm.schemas.companies.read,crm.schemas.companies.write,crm.schemas.contacts.read,crm.schemas.contacts.write,oauth,settings.users.read,settings.users.write,tickets,timeline,e-commerce,crm.objects.custom.read,crm.schemas.custom.read,content,sales-email-read" }, { "name": "optional_scopes", "displayName": "Optional Scopes", "type": "string", "description": "Additional HubSpot OAuth scopes to request through the optional_scopes authorization parameter. Every scope listed here must be enabled as an optional scope in your HubSpot developer app; HubSpot will reject the customer's authorization attempt if any requested scope is not activated. Enter scope names separated by spaces, for example \"transactional-email automation marketing.campaigns.read marketing.campaigns.write\". For available scopes and app configuration details, see https://developers.hubspot.com/docs/apps/developer-platform/build-apps/authentication/scopes.", "required": false, "default": "transactional-email automation marketing.campaigns.read marketing.campaigns.write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "hubspot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your HubSpot private app access token, starting with 'pat-'. In HubSpot, go to Settings → Integrations → Private Apps, open or create an app, and click 'Show token'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linear", "name": "Linear", "logo": "https://logos.composio.dev/api/linear", "description": "Linear is a streamlined issue tracking and project planning tool for modern teams, featuring fast workflows, keyboard shortcuts, and GitHub integrations", "category": "project management", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 47, "triggerCount": 12, "version": "20260703_01", "tools": [ { "slug": "LINEAR_ARCHIVE_ISSUE", "name": "Archive issue", "description": "Archives an existing Linear issue by its ID, removing it from active views while preserving its data for future reference. Use this action when you need to remove an issue from active work without permanently deleting it — for example, when an issue is no longer relevant, was created by mistake, or has been superseded by another issue. Archiving is reversible via the unarchive mutation, unlike permanent deletion. This action is irreversible through the API once completed, though issues can be manually unarchived in the Linear UI or via the issueUnarchive mutation." }, { "slug": "LINEAR_ARCHIVE_PROJECT", "name": "Archive Project", "description": "Archives an existing Linear project by its UUID, removing it from active views. Use this action when you need to mark a completed or obsolete project as archived. Archiving is reversible (projects can be unarchived later), but confirm the project name with the user before executing, especially in bulk operations." }, { "slug": "LINEAR_ARCHIVE_PROJECT_UPDATE", "name": "Archive Project Update", "description": "Archives a project update in Linear, hiding it from the default view while preserving its data. Use this action when you need to clean up old or obsolete project status updates without permanently deleting them. Archived updates can be unarchived later if needed. This action is irreversible only in the sense that the project update will be hidden from active views until explicitly unarchived." }, { "slug": "LINEAR_CREATE_ATTACHMENT", "name": "Create attachment", "description": "Creates a new attachment and associates it with a specific, existing Linear issue." }, { "slug": "LINEAR_CREATE_COMMENT_REACTION", "name": "Add reaction to comment", "description": "Tool to add a reaction to an existing Linear comment. Use when you want to programmatically react to a comment on an issue." }, { "slug": "LINEAR_CREATE_LINEAR_COMMENT", "name": "Create a comment", "description": "Creates a new comment on a specified Linear issue. This action modifies shared workspace data and is not reversible — confirm the target issue and comment content before executing." }, { "slug": "LINEAR_CREATE_LINEAR_ISSUE", "name": "Create linear issue", "description": "Creates a new issue in a specified Linear project and team, requiring team_id and title, and allowing optional properties like description, assignee, state, priority, cycle, and due date. All UUID parameters (state_id, assignee_id, cycle_id, label_ids, project_id) must belong to the same team as team_id. The created issue's id is returned in data.id — capture it for use as parent_id in sub-issues or follow-up operations. No template_id field exists; expand templates manually into title and description before calling." }, { "slug": "LINEAR_CREATE_LINEAR_ISSUE_RELATION", "name": "Create issue relation", "description": "Create a relationship between two Linear issues using the issueRelationCreate mutation. Use this to establish connections like 'blocks', 'duplicate', or 'related' between issues." }, { "slug": "LINEAR_CREATE_LINEAR_LABEL", "name": "Create a label", "description": "Creates a new label in Linear for a specified team, used to categorize and organize issues. Label names must be unique within each team. If a label with the same name already exists, the existing label will be returned. Both new and existing labels return the same object structure; check the label's `createdAt` or compare IDs to determine if creation occurred." }, { "slug": "LINEAR_CREATE_LINEAR_PROJECT", "name": "Create Project", "description": "Creates a new Linear project with specified name and team associations." }, { "slug": "LINEAR_CREATE_PROJECT_MILESTONE", "name": "Create Project Milestone", "description": "Tool to create a project milestone in Linear with a name and optional target date and sort order. Use when you need to add milestones to track progress within a project." }, { "slug": "LINEAR_CREATE_PROJECT_UPDATE", "name": "Create Project Update", "description": "Tool to create a project status update post for a Linear project. Use when you need to post progress updates, status reports, or announcements for a project." }, { "slug": "LINEAR_CREATE_TEAM", "name": "Create Team", "description": "Creates a new team in Linear with the specified name and key. Use this action when you need to create a new organizational unit or work group in a Linear workspace. Teams are fundamental organizational structures in Linear that group issues, projects, and members together. Once created, the team's key becomes the prefix for all issues created within that team (e.g., 'ENG-123'). IMPORTANT: The key must be unique across the workspace and cannot be changed after creation." }, { "slug": "LINEAR_DELETE_LINEAR_ISSUE", "name": "Delete issue", "description": "Archives an existing Linear issue by its ID, which is Linear's standard way of deleting issues; the operation is idempotent. Archiving is permanent with no built-in undo — confirm the issue identifier and title with the user before executing, especially in bulk operations." }, { "slug": "LINEAR_GET_ALL_LINEAR_TEAMS", "name": "Get all teams (Deprecated)", "description": "DEPRECATED: Use ListLinearTeams instead (returns paginated payloads with members and projects); this tool returns simpler id/name-level data for all teams visible to the connected workspace with no server-side filtering. Match teams on stable team id, not display name, as names are not guaranteed unique. Partial results reflect workspace permission scope, not tool failure. Skip this call if team_id values are already known." }, { "slug": "LINEAR_GET_ATTACHMENT", "name": "Download issue attachments", "description": "Downloads a specific attachment from a Linear issue; the `file_name` must include the correct file extension." }, { "slug": "LINEAR_GET_COMMENT", "name": "Get a comment", "description": "Retrieves a single Linear comment by its unique ID. Returns comprehensive details including the comment body, author, timestamps, associated issue, and thread information. Use this action when you need to fetch details about a specific comment, such as when displaying comment information, checking comment status, or retrieving comment content for processing. The comment ID can be obtained from issue queries, comment lists, or comment creation responses." }, { "slug": "LINEAR_GET_CURRENT_USER", "name": "Get current user", "description": "Gets the currently authenticated user's ID, name, email, and other profile information — this is the account behind the API token, which may be a bot or service account rather than a human user. Use the returned `id` field (nested under `data.viewer`) for downstream Linear operations requiring user ID filtering. To search or compare other workspace members, use LINEAR_LIST_LINEAR_USERS instead." }, { "slug": "LINEAR_GET_CYCLES_BY_TEAM_ID", "name": "Get cycles by team ID", "description": "Retrieves all cycles for a specified Linear team ID; cycles are time-boxed work periods (like sprints). Results are team-scoped to the given team_id. To identify the active cycle, check that the current date (in UTC) falls between a cycle's startAt and endAt fields; either field may be null. Results may be paginated — follow page_info cursors to retrieve all cycles." }, { "slug": "LINEAR_GET_ISSUE_DEFAULTS", "name": "Get create issue default params", "description": "Fetches a Linear team's default issue estimate and state, useful for pre-filling new issue forms." }, { "slug": "LINEAR_GET_LINEAR_ISSUE", "name": "Get Linear issue", "description": "Retrieves an existing Linear issue's comprehensive details, including id, identifier, title, description, timestamps, state, team, creator, attachments, comments (with user info and timestamps, use issue.comments.nodes for comment IDs), subscribers, and due date. Does not include parent, milestone, cycle, or relation graphs—use LINEAR_RUN_QUERY_OR_MUTATION for those. Optional fields (labels, project, state, assignee, cycle) may be null; guard against null when accessing nested properties. Returns null or 'Entity not found' for invalid IDs, cross-workspace IDs, or restricted teams. Rate limit: ~60 req/min; HTTP 429 on excess—apply exponential backoff and respect Retry-After headers." }, { "slug": "LINEAR_GET_LINEAR_PROJECT", "name": "Get Linear project", "description": "Retrieves a single Linear project by its unique identifier. Use when verifying a newly created or updated project, or when fetching detailed project information by ID." }, { "slug": "LINEAR_GET_PROJECT_UPDATE", "name": "Get Project Update", "description": "Retrieves a specific project update by its unique identifier. Use when you need to fetch details about a specific project status update, including the update content, health status, timestamps, and associated project information. This action is useful when verifying a newly created project update or retrieving historical project update information." }, { "slug": "LINEAR_LIST_COMMENTS", "name": "List comments", "description": "Lists comments from Linear workspace accessible to the authenticated user. Use this action when you need to retrieve comments for analysis, reporting, or tracking discussions across issues. The response includes comment content, timestamps, author information, and associated issue details. Supports pagination for large result sets." }, { "slug": "LINEAR_LIST_ISSUE_DRAFTS", "name": "List issue drafts", "description": "Tool to list issue drafts. Use when you need to fetch draft issues for review or further editing. Check `pageInfo.hasNextPage` in the response to determine if additional drafts exist beyond the current page." }, { "slug": "LINEAR_LIST_ISSUES_BY_TEAM_ID", "name": "List issues by team ID", "description": "Tool to list all issues for a specific Linear team, scoped by team ID. Use when you need to retrieve issues belonging to a particular team without fetching workspace-wide issues. This is more efficient than workspace-wide listing followed by client-side filtering." }, { "slug": "LINEAR_LIST_LINEAR_CYCLES", "name": "Get all cycles", "description": "Retrieves all cycles (time-boxed sprint iterations) org-wide from the Linear account; no filters applied. In large multi-team workspaces this produces heavy responses — filter client-side by team ID and date range using each cycle's startsAt/endsAt fields. Cycles are team-scoped; always group by team ID to avoid mixing sprints across teams. To identify the active sprint, verify the current UTC timestamp falls between startsAt and endsAt, and handle null startsAt/endsAt defensively. Timestamps are UTC. Results may be paginated; follow pageInfo.endCursor and hasNextPage until hasNextPage is false to avoid truncated lists." }, { "slug": "LINEAR_LIST_LINEAR_ISSUES", "name": "List Linear issues", "description": "Lists non-archived Linear issues; if project_id is not specified, issues from all accessible projects are returned. Can filter by assignee_id. Only project_id and assignee_id server-side filters are supported; label, state, team, cycle, or date filters must be done client-side or via LINEAR_RUN_QUERY_OR_MUTATION. Response is a flat issues array plus page_info object (not GraphQL nodes/pageInfo). Fields like cycle membership, dueDate, completedAt, comments, and attachments are absent; use LINEAR_GET_LINEAR_ISSUE for enrichment. state and labels are nested objects (labels as labels.nodes array). Response order is not guaranteed; sort client-side after collecting all pages. No team_id filter; scope by project_id or use LINEAR_RUN_QUERY_OR_MUTATION." }, { "slug": "LINEAR_LIST_LINEAR_LABELS", "name": "Get labels", "description": "Retrieves labels from Linear. If team_id is provided, returns labels for that specific team; if omitted, returns all labels across the workspace. Label names are not unique across teams — always use returned IDs, not names, and track each label ID with its team ID. In large workspaces, results may paginate; follow pageInfo.hasNextPage and pageInfo.endCursor to retrieve all labels." }, { "slug": "LINEAR_LIST_LINEAR_PROJECTS", "name": "List linear projects", "description": "Retrieves all projects from the Linear account. Returns a flat array (not a GraphQL connection) with fields id and name; use LINEAR_RUN_QUERY_OR_MUTATION for progress, state, issues, or team linkage. No server-side filtering: all workspace projects are returned regardless of team or name — filter client-side. Multiple projects can share identical names; always confirm project_id before downstream use. Results are permission-scoped to the connected user. Pagination: loop while page_info.hasNextPage is true, passing page_info.endCursor as after, or results will be silently truncated. HTTP 429 may occur in large workspaces; apply exponential backoff between calls." }, { "slug": "LINEAR_LIST_LINEAR_STATES", "name": "List Linear states", "description": "Retrieves all workflow states for a specified team in Linear, representing the stages an issue progresses through in that team's workflow. Returned state IDs are team-scoped — never reuse a stateId across different teams, as this causes validation errors or 'Entity not found' failures in tools like LINEAR_UPDATE_ISSUE. State names (e.g., 'Done', 'In Progress') are non-unique across teams; always resolve names to IDs via this tool for the specific team_id before using them in filters or mutations. Uses cursor-based pagination via pageInfo.hasNextPage and endCursor; iterate until hasNextPage is false to avoid missing states in large workspaces. Always fetch fresh state IDs rather than hardcoding or reusing stale values." }, { "slug": "LINEAR_LIST_LINEAR_TEAMS", "name": "Get teams", "description": "Retrieves all teams with their members and projects. Use stable team IDs or keys (not display names) for subsequent operations — names are non-unique. Results reflect only teams visible to the authenticated token scope; missing teams or members indicate permission limits. Large workspaces paginate via pageInfo.hasNextPage/endCursor — incomplete pagination silently drops teams or members. Members may belong to multiple teams; deduplicate user IDs when aggregating. Use LINEAR_GET_ALL_LINEAR_TEAMS instead when only identifiers are needed." }, { "slug": "LINEAR_LIST_LINEAR_USERS", "name": "List Linear users", "description": "Lists all workspace users (not team-scoped) with their IDs, names, emails, and active status. Display names are non-unique — use email to disambiguate before extracting an ID. Only assign users with `active: true`. Returned IDs are UUID strings; pass them as-is to fields like `assignee_id` — never substitute names, emails, or tokens. When joining with other tools, always join on IDs." }, { "slug": "LINEAR_LIST_PROJECT_UPDATES", "name": "List project updates", "description": "Retrieves all project updates from the Linear workspace. Project updates are status posts written by team members to communicate project progress, blockers, and health. Use when you need to fetch project update history, track project health over time, or review team communication. Returns a paginated list with fields including id, body, health, createdAt, url, user, and project. Results are permission-scoped to the connected user — only updates from accessible projects are returned. Pagination: loop while page_info.hasNextPage is true, passing page_info.endCursor as after, or results will be silently truncated. HTTP 429 may occur in large workspaces; apply exponential backoff between calls." }, { "slug": "LINEAR_REMOVE_ISSUE_LABEL", "name": "Remove label from Linear issue", "description": "Removes a specified label from an existing Linear issue using their IDs; successful even if the label isn't on the issue. Operation is irreversible — obtain explicit user approval before executing. Use this tool instead of LINEAR_UPDATE_ISSUE to avoid replacing the entire label set." }, { "slug": "LINEAR_REMOVE_REACTION", "name": "Remove reaction from comment", "description": "Tool to remove a reaction on a comment. Use when you have a reaction ID and need to delete it." }, { "slug": "LINEAR_RESOLVE_COMMENT", "name": "Resolve comment", "description": "Marks a Linear comment as resolved. This action is used when a comment thread or discussion has been addressed and should be marked as complete. Use this action when you need to resolve a comment after addressing the feedback or discussion it represents. The comment remains visible but is marked as resolved with a timestamp and the resolving user's information." }, { "slug": "LINEAR_RUN_QUERY_OR_MUTATION", "name": "Run Query or Mutation", "description": "Execute any GraphQL query or mutation against Linear's API. USE WHEN: No dedicated action exists, need complex filtering, custom fields, or schema discovery. *** INTROSPECTION FIRST - NEVER GUESS FIELD NAMES *** Run introspection before unknown operations: - query { __type(name: \"Issue\") { fields { name } } } - query { __type(name: \"Mutation\") { fields { name } } } Linear uses nested objects (project { id }), NOT scalar IDs (projectId). KEY: All IDs are UUIDs. Filter: { field: { eq: value } }. Pagination: nodes[] + pageInfo." }, { "slug": "LINEAR_SEARCH_ISSUES", "name": "Search Linear issues", "description": "Search Linear issues using full-text search across identifier, title, and description. Use when you need to find issues by keywords or specific identifiers. Note: This endpoint only supports full-text search; for structured filtering by team, project, assignee, state, or labels, use LIST_ISSUES_BY_TEAM_ID instead." }, { "slug": "LINEAR_UNARCHIVE_PROJECT_UPDATE", "name": "Unarchive Project Update", "description": "Unarchive a previously archived project update in Linear. Use this action when you need to restore an archived project update to make it visible and active again. Archived project updates are hidden from normal views but can be restored using this action. Use when a project update was archived by mistake or needs to be brought back into active use." }, { "slug": "LINEAR_UNRESOLVE_COMMENT", "name": "Unresolve a comment", "description": "Unresolves a previously resolved Linear comment, marking it as requiring attention again. Use this action when you need to reopen a comment thread that was previously marked as resolved. This is useful when additional discussion is needed or the resolution was premature." }, { "slug": "LINEAR_UPDATE_ISSUE", "name": "Update issue", "description": "Updates an existing Linear issue using its `issue_id`; requires at least one other attribute for modification, and all provided entity IDs (for state, assignee, labels, etc.) must be valid UUIDs — only `issueId` accepts key format (e.g., 'ENG-123'). All updated fields are fully overwritten, not merged; omit any field you do not intend to change." }, { "slug": "LINEAR_UPDATE_LINEAR_COMMENT", "name": "Update a comment", "description": "Tool to update an existing Linear comment's body text. Use when you need to edit or modify the content of a previously created comment." }, { "slug": "LINEAR_UPDATE_LINEAR_PROJECT", "name": "Update Project", "description": "Tool to update an existing Linear project. Use when you need to modify project properties like name, description, state, dates, or lead. All fields except project_id are optional - only provide the fields you want to update." }, { "slug": "LINEAR_UPDATE_PROJECT_UPDATE", "name": "Update Project Update", "description": "Tool to update an existing Linear project update post. Use this action when you need to modify a project update's content, health status, or diff visibility settings. All fields except the update ID are optional - only provide the fields you want to update. Changes are immediately visible to all team members viewing the project." }, { "slug": "LINEAR_UPDATE_TEAM", "name": "Update Team", "description": "Updates an existing Linear team's settings and configuration. Use when you need to modify team properties like name, description, key, cycle settings, workflow states, or other team-level configurations. All fields except team_id are optional - only provide the fields you want to update." }, { "slug": "LINEAR_VALIDATE_CREDENTIAL", "name": "Validate credential", "description": "Validates the Linear API credentials by checking if the authentication token can successfully query the current user. Use this action when you need to verify that API credentials are valid before performing other operations, or to confirm that authentication is working correctly. This is particularly useful for connection testing, credential verification flows, or troubleshooting authentication issues." } ], "triggers": [ { "slug": "LINEAR_COMMENT_EVENT_TRIGGER", "name": "Comment Received Trigger", "description": "Triggered when a comment is received." }, { "slug": "LINEAR_ISSUE_CREATED_TRIGGER", "name": "Issue Created Trigger", "description": "Triggered when a new issue is created." }, { "slug": "LINEAR_ISSUE_UPDATED_TRIGGER", "name": "Issue Updated Trigger", "description": "Triggered when an issue is updated. For example labels are changed, issue status is changed, etc." }, { "slug": "LINEAR_PRIVATE_TEAM_COMMENT_CREATED", "name": "Private Team Comment Created", "description": "Fires when a new comment is posted on an issue in a private Linear team (polled with the connected user's token)." }, { "slug": "LINEAR_PRIVATE_TEAM_ISSUE_CREATED", "name": "Private Team Issue Created", "description": "Fires when a new issue appears in a private Linear team (polled with the connected user's token)." }, { "slug": "LINEAR_PRIVATE_TEAM_ISSUE_PROPERTIES_UPDATED", "name": "Private Team Issue Properties Updated", "description": "Fires when properties on an issue change in a private Linear team (polled with the connected user's token)." }, { "slug": "LINEAR_PROJECT_CREATED", "name": "Project Created", "description": "Fires when a new Linear project is created. Covers projects in both public and private teams — polls with the connected user's token, so visibility matches what the connected user can see in Linear." }, { "slug": "LINEAR_PROJECT_PROPERTIES_UPDATED", "name": "Project Properties Updated", "description": "Fires when properties on a Linear project change (status, lead, target date, priority, etc.). Covers projects in both public and private teams — polls with the connected user's token." }, { "slug": "LINEAR_PROJECT_UPDATE_POSTED", "name": "Project Update Posted", "description": "Fires when a project status update is posted on the Linear project's Updates tab. Covers projects in both public and private teams — polls with the connected user's token." }, { "slug": "LINEAR_PUBLIC_TEAM_COMMENT_CREATED", "name": "Public Team Comment Created", "description": "Fires when a new comment is posted on a *public-team* Linear issue. For private teams (lock icon in Linear's sidebar) use `LINEAR_PRIVATE_TEAM_COMMENT_CREATED`." }, { "slug": "LINEAR_PUBLIC_TEAM_ISSUE_CREATED", "name": "Public Team Issue Created", "description": "Fires when a new issue is created in a Linear *public* team. For private teams (lock icon in Linear's sidebar) use `LINEAR_PRIVATE_TEAM_ISSUE_CREATED`." }, { "slug": "LINEAR_PUBLIC_TEAM_ISSUE_PROPERTIES_UPDATED", "name": "Public Team Issue Properties Updated", "description": "Fires when properties on a *public-team* Linear issue change (status, assignee, priority, labels, etc.). For private teams (lock icon in Linear's sidebar) use `LINEAR_PRIVATE_TEAM_ISSUE_PROPERTIES_UPDATED`." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "linear_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "admin,read,write,issues:create,comments:create" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "linear_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Linear personal API key (starts with 'lin_api_'). Create one in Linear under Settings → Security & access → Personal API keys; full access is simplest.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airtable", "name": "Airtable", "logo": "https://logos.composio.dev/api/airtable", "description": "Airtable merges spreadsheet functionality with database power, enabling teams to organize projects, track tasks, and collaborate through customizable views, automation, and integrations for data management", "category": "productivity", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 26, "triggerCount": 6, "version": "20260703_00", "tools": [ { "slug": "AIRTABLE_CREATE_BASE", "name": "Create base", "description": "Creates a new Airtable base with specified tables and fields within a workspace." }, { "slug": "AIRTABLE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on a specific Airtable record. Use when adding comments to records, mentioning collaborators using @[userId] syntax, or creating threaded comment replies. Supports optional parentCommentId for threaded conversations." }, { "slug": "AIRTABLE_CREATE_FIELD", "name": "Create Field", "description": "Creates a new field within a specified table in an Airtable base." }, { "slug": "AIRTABLE_CREATE_MULTIPLE_RECORDS", "name": "Create multiple records (Deprecated)", "description": "DEPRECATED: Use AIRTABLE_CREATE_RECORDS instead. Creates multiple new records in a specified Airtable table." }, { "slug": "AIRTABLE_CREATE_RECORD", "name": "Create a record (Deprecated)", "description": "DEPRECATED: Use CreateRecords instead. Creates a new record in a specified Airtable table; field values must conform to the table's column types." }, { "slug": "AIRTABLE_CREATE_RECORD_FROM_NATURAL_LANGUAGE", "name": "Create Record From Natural Language", "description": "Creates a new record in an Airtable table from a natural language description. Fetches the table schema, uses an LLM to generate the correct field payload, and creates the record with typecast enabled for automatic type conversion." }, { "slug": "AIRTABLE_CREATE_RECORDS", "name": "Create records", "description": "Tool to create multiple records (up to 10) in a specified Airtable table. Use when you need to add new rows to a table with field values. Rate limit: 5 requests per second per base." }, { "slug": "AIRTABLE_CREATE_TABLE", "name": "Create table", "description": "Creates a new table within a specified existing Airtable base, allowing definition of its name, description, and field structure." }, { "slug": "AIRTABLE_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment from a record in an Airtable table. Use when you need to remove an existing comment. Non-admin users can only delete their own comments; Enterprise Admins can delete any comment." }, { "slug": "AIRTABLE_DELETE_MULTIPLE_RECORDS", "name": "Delete multiple records", "description": "Tool to delete up to 10 specified records from a table within an Airtable base. Use when you need to remove multiple records in a single operation." }, { "slug": "AIRTABLE_DELETE_RECORD", "name": "Delete Record", "description": "Permanently deletes a specific record from an existing table within an existing Airtable base." }, { "slug": "AIRTABLE_GET_ATTACHMENT_INFO", "name": "Get Attachment Info", "description": "Retrieves attachment information from a specific field in an Airtable record. Returns metadata including file URLs, sizes, types, and thumbnails for all attachments in the specified field. Use this action when you need to access file metadata or download URLs for attachments stored in Airtable. Note that attachment URLs expire 2 hours after being retrieved from the API." }, { "slug": "AIRTABLE_GET_BASE_SCHEMA", "name": "Get Base Schema", "description": "Retrieves the detailed schema for a specified Airtable base, including its tables, fields, field types, and configurations, using the `baseId`." }, { "slug": "AIRTABLE_GET_RECORD", "name": "Get Record", "description": "Retrieves a specific record from an Airtable table by its record ID. Requires a known, valid record ID obtained from listing records or another API call - this tool cannot search or list records. Use the list records tool to find record IDs. Empty field values are not returned in the response." }, { "slug": "AIRTABLE_GET_USER_INFO", "name": "Get user information", "description": "Retrieves information, such as ID and permission scopes, for the currently authenticated Airtable user from the `/meta/whoami` endpoint." }, { "slug": "AIRTABLE_LIST_BASES", "name": "List bases", "description": "Retrieves all Airtable bases accessible to the authenticated user, which may include an 'offset' for pagination." }, { "slug": "AIRTABLE_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list comments on a specific Airtable record. Use when retrieving comments for a record, with optional pagination support for large comment threads." }, { "slug": "AIRTABLE_LIST_RECORDS", "name": "List records", "description": "Tool to list records from an Airtable table with filtering, sorting, and pagination. Use when you need to retrieve multiple records from a table with optional query parameters." }, { "slug": "AIRTABLE_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment on a specific Airtable record. Use when modifying comment text or updating user mentions using @[userId] syntax. API users can only update comments they have created." }, { "slug": "AIRTABLE_UPDATE_FIELD", "name": "Update Field", "description": "Updates a field's name or description in an Airtable table. Use this action to modify field metadata without changing the field's type or options. At least one of 'name' or 'description' must be provided." }, { "slug": "AIRTABLE_UPDATE_MULTIPLE_RECORDS", "name": "Update multiple records", "description": "Tool to update up to 10 records in an Airtable table with selective field modifications. Use when you need to modify multiple existing records or perform upsert operations. Updates are not performed atomically." }, { "slug": "AIRTABLE_UPDATE_MULTIPLE_RECORDS_PUT", "name": "Update multiple records (PUT)", "description": "Tool to destructively update multiple records in Airtable using PUT, clearing unspecified fields. Use when you need to fully replace record data or perform upsert operations. Supports up to 10 records per request." }, { "slug": "AIRTABLE_UPDATE_RECORD", "name": "Update record", "description": "Modifies specified fields of an existing record in an Airtable base and table; the base, table, and record must exist." }, { "slug": "AIRTABLE_UPDATE_RECORD_PUT", "name": "Update record (PUT)", "description": "Updates an existing record in an Airtable base using PUT method. Use when you want to replace all field values, clearing any unspecified fields. For partial updates that preserve unspecified fields, use the PATCH-based update action instead." }, { "slug": "AIRTABLE_UPDATE_TABLE", "name": "Update Table", "description": "Updates the name, description, and/or date dependency settings of a table in Airtable. Use this action to modify table metadata without changing the table's fields or views. At least one of 'name', 'description', or 'dateDependencySettings' must be provided." }, { "slug": "AIRTABLE_UPLOAD_ATTACHMENT", "name": "Upload attachment", "description": "Uploads a file attachment to a specified field in an Airtable record. Use when you need to add a file to an attachment field. The file must be provided as a base64-encoded string." } ], "triggers": [ { "slug": "AIRTABLE_BASE_METADATA_CHANGED_TRIGGER", "name": "Base Metadata Changed", "description": "Triggers when an existing Airtable base changes its name or permission level." }, { "slug": "AIRTABLE_BASE_SCHEMA_CHANGED_TRIGGER", "name": "Base Schema Changed", "description": "Triggers when tables, fields, or views change in an Airtable base." }, { "slug": "AIRTABLE_USER_PROFILE_CHANGED_TRIGGER", "name": "User Profile Changed", "description": "Triggers when the connected Airtable user's profile information changes." }, { "slug": "AIRTABLE_VIEW_CREATED_TRIGGER", "name": "View Created", "description": "Triggers when a new view is created in an Airtable base." }, { "slug": "AIRTABLE_VIEW_DELETED_TRIGGER", "name": "View Deleted", "description": "Triggers when a previously known Airtable view is deleted." }, { "slug": "AIRTABLE_VIEW_METADATA_CHANGED_TRIGGER", "name": "View Metadata Changed", "description": "Triggers when an Airtable view changes its name or type." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "airtable_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "data.records:read,data.records:write,data.recordComments:read,data.recordComments:write,schema.bases:read,schema.bases:write,user.email:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Your Airtable personal access token (starts with 'pat'), not a legacy API key. Create it at airtable.com/create/tokens and grant scopes plus access to your bases.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "codeinterpreter", "name": "Code Interpreter", "logo": "https://logos.composio.dev/api/codeinterpreter", "description": "CodeInterpreter extends Python-based coding environments with integrated data analysis, enabling developers to run scripts, visualize results, and prototype solutions inside supported platforms", "category": "developer tools", "authSchemes": [ "NO_AUTH" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "CODEINTERPRETER_CREATE_SANDBOX", "name": "Create Sandbox", "description": "Create a sandbox to execute python code in a Jupyter notebook cell. This is useful for agents to communicate, execute code, see output, read files, write files, etc. It's like you own personal computer, but in the cloud. Use /home/user folder to write/read files." }, { "slug": "CODEINTERPRETER_EXECUTE_CODE", "name": "Execute Code", "description": "Execute python code in a sandbox and return any result, stdout, stderr, and error. Use /home/user folder to write/read files. Try to not use plt.show() as the code is executed remotely. Use files for image/chart output instead." }, { "slug": "CODEINTERPRETER_GET_FILE_CMD", "name": "Get File", "description": "Get a file from the sandbox and returns the file. The files should be read from /home/user folder." }, { "slug": "CODEINTERPRETER_RUN_TERMINAL_CMD", "name": "Run Terminal Command", "description": "Run a command in the terminal and returns the stdout, stderr, and error code. Use /home/user folder to write/read files." }, { "slug": "CODEINTERPRETER_UPLOAD_FILE_CMD", "name": "Upload File", "description": "Upload a file to the sandbox environment. The files should be uploaded to the /home/user folder." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "CodeInterpreter", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "serpapi", "name": "SerpApi", "logo": "https://logos.composio.dev/api/serpapi", "description": "SerpApi provides a real-time API for structured search engine results, allowing developers to scrape, parse, and analyze SERP data for SEO and research", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERPAPI_BAIDU_SEARCH", "name": "Search Baidu with Query", "description": "Search Baidu (Chinese search engine) and retrieve search results. Requires a search query string in the 'q' parameter. Returns organic search results, answer boxes, and pagination info in JSON format." }, { "slug": "SERPAPI_BING_MAPS", "name": "Bing Maps Search", "description": "Tool to scrape Bing Maps results using SerpApi. Use when you need to find local businesses, places, or get detailed location information including addresses, phone numbers, ratings, reviews, and more. Supports searching by query or specific place ID." }, { "slug": "SERPAPI_BING_SEARCH", "name": "Bing Search", "description": "Retrieve Bing Search Engine Results via SerpAPI (requires active SerpAPI connection; if unavailable, use COMPOSIO_SEARCH_WEB or COMPOSIO_SEARCH_NEWS). Consumes SerpAPI credits per call; throttle to ~1–2 calls/second and apply exponential backoff on HTTP 429. Supports query, location, language, and device parameters. Set `location`, `mkt`, or `cc` explicitly when local relevance matters — result ranking is highly sensitive to localization." }, { "slug": "SERPAPI_DUCK_DUCK_GO_LIGHT_SEARCH", "name": "DuckDuckGo Light Search", "description": "Tool to access the world's fastest DuckDuckGo Search API via SerpApi. Scrapes DuckDuckGo search results in JSON format with critical data for faster response times, without extra-rich results. Use when you need quick DuckDuckGo search results with essential information. Supports location-based searches, date filtering, and pagination (15 results per page)." }, { "slug": "SERPAPI_DUCK_DUCK_GO_MAPS", "name": "DuckDuckGo Maps search", "description": "Scrapes DuckDuckGo Maps results via SerpApi. Use when searching for location-based information like businesses, restaurants, or services in a specific geographic area. Returns structured data including ratings, reviews, addresses, operating hours, and contact information." }, { "slug": "SERPAPI_DUCK_DUCK_GO_SEARCH", "name": "DuckDuckGo search", "description": "Performs a DuckDuckGo search via SerpApi to retrieve SERP data, including organic results, ads, and structured information. Requires a valid SerpApi connection configured in Composio. Results may be localized by region by default." }, { "slug": "SERPAPI_EBAY_SEARCH", "name": "eBay Search", "description": "Retrieve eBay Search Results via SerpApi (requires active SerpApi connected account). Supports parameters like nkw (query), location, etc. Returns product SERP data in JSON format. Listing prices and fees may be incomplete or inconsistent; verify total cost on the source page before comparing results." }, { "slug": "SERPAPI_EVENT_SEARCH", "name": "Search Google Events", "description": "Searches for events (e.g., concerts, festivals, conferences) by query, retrieving structured data from Google's event search results via the SerpApi Google Events engine." }, { "slug": "SERPAPI_FINANCE_SEARCH", "name": "Search finance", "description": "Retrieves structured financial information (e.g., company data, stock details, market trends, news) from Google Finance via SERP API based on a query. Requires active SerpApi credentials. Empty results for delisted, illiquid, or newly listed assets are valid 'no data' responses. High query volumes may trigger HTTP 429 rate limits; apply backoff on retries." }, { "slug": "SERPAPI_GET_AVAILABLE_LOCATION_OPTIONS_FOR_GOOGLE_SEARCHES", "name": "Get Location Options", "description": "Tool to get available location options for Google searches. Returns location names, codes, and identifiers that can be used in the location parameter. Use when you need to find valid location values for search queries." }, { "slug": "SERPAPI_GET_FACEBOOK_PROFILE", "name": "Get Facebook profile information", "description": "Tool to retrieve public information from a Facebook profile or page using SerpAPI. Use when you need to fetch profile details, bio, photos, followers, ratings, or contact information." }, { "slug": "SERPAPI_GET_GOOGLE_ABOUT_THIS_RESULT", "name": "Get Google About This Result", "description": "Tool to get Google 'About this result' information for a website. Use when you need detailed information about a specific URL including company details, social profiles, web citations, and reviews." }, { "slug": "SERPAPI_GET_GOOGLE_HOTELS_AUTOCOMPLETE_SUGGESTIONS", "name": "Get Google Hotels Autocomplete", "description": "Tool to get autocomplete suggestions for Google Hotels destination searches. Use when users need to search for hotel destinations, properties, or locations before performing a full hotel search." }, { "slug": "SERPAPI_GET_GOOGLE_IMAGES_RELATED_CONTENT", "name": "Get Google Images Related Content", "description": "Get related content for a specific Google Images result. Requires a related_content_id obtained from a Google Images search. Use when you need to find similar images or related visual content for a particular image." }, { "slug": "SERPAPI_GET_GOOGLE_PATENT_DETAILS", "name": "Get Google Patent Details", "description": "Tool to retrieve detailed information about a specific patent or scholar document from Google Patents via SerpApi. Use when you need patent details, claims, citations, inventors, assignees, legal events, or scholar publication information." }, { "slug": "SERPAPI_GET_SEARCH_ARCHIVE", "name": "Get Search Archive", "description": "Tool to retrieve results from a previous async search using its search ID. Use when you need to fetch results from searches submitted with async=true. Searches can be retrieved up to 31 days after completion." }, { "slug": "SERPAPI_GOOGLE_DOMAINS_LIST", "name": "Google Domains List", "description": "Retrieve the list of supported Google domains for search queries." }, { "slug": "SERPAPI_GOOGLE_FORUMS_SEARCH", "name": "Google Forums Search", "description": "Tool to scrape forum results from Google's Forums Platform using SerpApi. Use when you need to search forum discussions, get forum titles, dates, links, answers with voting data, and related searches." }, { "slug": "SERPAPI_GOOGLE_JOBS_SEARCH", "name": "Google Jobs Search", "description": "Retrieve Google Jobs Search Results via SerpApi. Returns job SERP data in JSON; key attributes like `work_from_home`, `posted_at`, `salary`, and `schedule_type` are nested under `detected_extensions` per job object and are often absent — treat as optional. Results may include stale postings; verify recency via `detected_extensions.posted_at`. Supports pagination, location filtering, and remote-job filtering." }, { "slug": "SERPAPI_GOOGLE_LENS_SEARCH", "name": "Google Lens search", "description": "Performs reverse image search using Google Lens to find visually similar images, products, and related content. Use when you need to identify objects, find similar products, or get information about images. Requires a publicly accessible image URL." }, { "slug": "SERPAPI_GOOGLE_LIGHT_SEARCH", "name": "Google Light Search", "description": "Retrieve Google Light Search Results via SerpApi. Requires an active SerpApi connection. Supports q, location, gl, hl, and other SERP parameters. Returns lightweight JSON SERP data; results are in organic_results (handle missing/empty gracefully). Snippets are shallow — follow citation URLs with BROWSER_TOOL_FETCH_WEBPAGE for full content. Rate limit: HTTP 429 under heavy use; keep to ~1–2 requests/sec with exponential backoff on retry." }, { "slug": "SERPAPI_GOOGLE_MAPS_POSTS", "name": "Google Maps Posts", "description": "Scrapes Google Maps Posts for a business location via SerpApi. Extracts local posts published by business owners including titles, descriptions, links, images, and publication dates. Returns 10 posts per page with pagination support." }, { "slug": "SERPAPI_GOOGLE_MAPS_SEARCH", "name": "Google maps search", "description": "Performs a Google Maps search via SERP API. Takes a query, optionally using specific GPS coordinates and pagination, returning structured location data." }, { "slug": "SERPAPI_GOOGLE_PLAY_PRODUCT", "name": "Google Play Product Search", "description": "Tool to retrieve detailed Google Play product information using SerpApi. Supports apps, movies, TV shows, audiobooks, and books. Use when you need product details, ratings, reviews, or media for Google Play Store items." }, { "slug": "SERPAPI_GOOGLE_SCHOLAR_AUTHOR", "name": "Google Scholar Author Profile", "description": "Scrapes full Google Scholar Author page including articles, citations, metrics, and co-authors. Use when you need detailed information about a specific researcher's publications and academic profile." }, { "slug": "SERPAPI_GOOGLE_SCHOLAR_CITE", "name": "Google Scholar Cite", "description": "Scrapes full Google Scholar Citations with multiple citation formats. Retrieves MLA, APA, Chicago, Harvard, and Vancouver style citations along with download links for BibTeX, EndNote, RefMan, and RefWorks. Use when you need formatted citations for a specific research paper identified by its Google Scholar ID." }, { "slug": "SERPAPI_GOOGLE_VIDEOS_LIGHT", "name": "Google Videos Light Search", "description": "Tool to scrape Google Videos results using SerpApi's ultra-fast Google Videos Light API. Use when you need video titles, links, thumbnails, snippets, upload dates, and durations from Google Videos search. This lighter version excludes rich results for faster response times." }, { "slug": "SERPAPI_HOTEL_SEARCH", "name": "Hotel Search", "description": "Retrieve Google Hotel Search Results. Supports parameters like q (query), location, etc. Returns hotel SERP data in JSON format." }, { "slug": "SERPAPI_IMAGE_SEARCH", "name": "Image search", "description": "Searches Google Images via SERP API for a given query, returning structured image results. Requires a valid SerpAPI authenticated connection. The number of results can be controlled using the 'num' parameter (1-100). If not specified, it defaults to 20 results." }, { "slug": "SERPAPI_NAVER_SEARCH", "name": "Naver Search", "description": "Tool to search Naver (South Korea's leading search engine) for Korean web results and content. Use when searching for Korean-language content, news, videos, images, or shopping results. Supports various search categories and filtering options including time periods and sorting." }, { "slug": "SERPAPI_NEWS_SEARCH", "name": "Search for news articles", "description": "Searches Google News (via SerpApi, `tbm=nws`) for articles matching a query; precise key-phrase queries yield best results. Auth is handled via SerpApi connection — do not pass api_key as a parameter. Results returned under `news_results` field (~10 items/page). Rate-limited: throttle to ~1 req/s; HTTP 429 on bursts — apply exponential backoff (1s, 2s, 4s). Covers news content only; pair with SERPAPI_SEARCH for broader web sources. Headlines/snippets only — use EXA_GET_CONTENTS_ACTION for full article text." }, { "slug": "SERPAPI_OPEN_TABLE_REVIEWS", "name": "OpenTable Reviews Search", "description": "Tool to scrape OpenTable restaurant reviews using SerpApi. Retrieves user reviews, ratings, restaurant responses, images, and AI-generated summaries. Use when you need detailed review data for OpenTable restaurants." }, { "slug": "SERPAPI_PLAY_SEARCH", "name": "Google Play Search", "description": "Retrieve Google Play Store Search Results. Supports parameters like q (query), gl, hl, etc. Returns app SERP data in JSON format." }, { "slug": "SERPAPI_SCHOLAR_SEARCH", "name": "Search Google Scholar", "description": "Searches Google Scholar via SerpApi for academic literature, papers, articles, and citations based on a query. Response results may include `inline_links.cited_by` and `resources` (PDF links), but these fields are not guaranteed; check for their existence and type before accessing." }, { "slug": "SERPAPI_SEARCH", "name": "Serp API search", "description": "Performs a real-time Google search via the SerpAPI connection (must be active; if unavailable, use COMPOSIO_SEARCH_WEB or other COMPOSIO_SEARCH_* tools). Returns ~10 organic results per page nested under results.organic_results — not a flat list; handle missing/empty arrays. Paginate via start offset or serpapi_pagination.next; max num=100; stop when domains plateau to avoid quota exhaustion. Rate-limited: throttle to 1–2 req/s; HTTP 429 on bursts — apply exponential backoff (1s, 2s, 4s). Derive result rank from array index (absolute rank = start + index; no explicit rank field). Lacks date-bound controls — embed recency terms in query or use SERPAPI_NEWS_SEARCH for time-sensitive queries. Results may include ads and sponsored content; prefer authoritative domains. Use vertical tools (SERPAPI_IMAGE_SEARCH, SERPAPI_NEWS_SEARCH, SERPAPI_YOU_TUBE_SEARCH, SERPAPI_GOOGLE_JOBS_SEARCH) for specialized query types." }, { "slug": "SERPAPI_SEARCH_APPLE_APP_STORE", "name": "Search Apple App Store", "description": "Tool to search Apple App Store for iOS and Mac apps. Returns app details including ratings, reviews, descriptions, and developer information. Use when you need to find apps on the Apple App Store or get information about specific apps." }, { "slug": "SERPAPI_SEARCH_GOOGLE_IMAGES_LIGHT", "name": "Google Images Light Search", "description": "Tool to scrape Google Images results using SerpApi's Google Images Light API. Use when you need fast image search with thumbnails, titles, sources, and original image URLs from Google Images. This lightweight version provides faster response times compared to the full Google Images API." }, { "slug": "SERPAPI_SEARCH_GOOGLE_LOCAL_SERVICES", "name": "Search Google Local Services", "description": "Search Google Local Services for service providers like electricians, plumbers, HVAC technicians, and more. Use when you need to find local service professionals with Google's guaranteed badge and verified business information." }, { "slug": "SERPAPI_SEARCH_YELP", "name": "Search Yelp businesses", "description": "Tool to search Yelp for businesses and places using SerpApi. Returns business listings with ratings, reviews, hours, contact information, and location details. Use when you need to find local businesses, restaurants, services, or read customer reviews." }, { "slug": "SERPAPI_SHOPPING_SEARCH", "name": "Shopping search", "description": "Searches Google Shopping via SerpAPI for a specific product, returning structured listings in results.shopping_results. Requires an active SerpAPI connection. Response fields such as rating, review_count, extracted_price, and extracted_old_price may be absent; null-check before ranking or computing discounts. Discount percentages in listings may reflect aggregate promotional claims, not per-item pricing." }, { "slug": "SERPAPI_TRENDS_SEARCH", "name": "Google Trends search", "description": "Fetches Google Trends data; returns relative 0–100 interest indices (not absolute volumes) meaningful only when comparing queries within the same request. The `query`'s format (single/multiple terms) must comply with the selected `data_type`." }, { "slug": "SERPAPI_WALMART_PRODUCT_REVIEWS", "name": "Walmart Product Reviews", "description": "Tool to scrape full Walmart product reviews using SerpApi's Walmart Product Reviews API. Retrieves ratings, review text, user information, and helpful votes for a specific product. Use when you need detailed customer feedback and sentiment analysis for Walmart products." }, { "slug": "SERPAPI_WALMART_SEARCH", "name": "Walmart Search", "description": "Retrieve Walmart Search Results. Supports parameters like query, location, store ID, etc. Returns product SERP data in JSON format." }, { "slug": "SERPAPI_YAHOO_SEARCH", "name": "Yahoo Search", "description": "Retrieve Yahoo! Search Engine Results. Supports query, location, language, and device parameters." }, { "slug": "SERPAPI_YAHOO_VIDEOS", "name": "Yahoo Videos Search", "description": "Scrape Yahoo! Videos results with position, title, thumbnail, link, preview, source, duration, date and more. Use when you need to search for video content on Yahoo! Videos." }, { "slug": "SERPAPI_YANDEX_IMAGES_SEARCH", "name": "Yandex Images Search", "description": "Tool to search Yandex Images for image results with advanced filters. Use when searching for images on Yandex with filters like size, color, type, or performing reverse image search." }, { "slug": "SERPAPI_YANDEX_SEARCH", "name": "Yandex Search", "description": "Retrieve Yandex Search Results. Supports parameters like text (query), location, etc. Returns SERP data in JSON format." }, { "slug": "SERPAPI_YOU_TUBE_SEARCH", "name": "YouTube Search", "description": "Retrieve YouTube Search Results. Supports parameters like search_query, location, etc. Returns video SERP data in JSON format." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "serpapi_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your SerpApi private API key, a 64-character string. Sign in and copy it from your Dashboard under 'Your Private API Key' at serpapi.com/manage-api-key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "jira", "name": "Jira", "logo": "https://logos.composio.dev/api/jira", "description": "A tool for bug tracking, issue tracking, and agile project management.", "category": "project management", "authSchemes": [ "OAUTH2", "S2S_OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 102, "triggerCount": 3, "version": "20260703_00", "tools": [ { "slug": "JIRA_ADD_ATTACHMENT", "name": "Add Attachment", "description": "Uploads and attaches a file to a Jira issue." }, { "slug": "JIRA_ADD_COMMENT", "name": "Add Comment", "description": "Adds a comment using Atlassian Document Format (ADF) for rich text to an existing Jira issue." }, { "slug": "JIRA_ADD_USERS_TO_PROJECT_ROLE", "name": "Add Users to Project Role", "description": "Adds users and optionally groups to a project role." }, { "slug": "JIRA_ADD_USER_TO_GROUP", "name": "Add User to Group", "description": "Adds a user to a Jira group." }, { "slug": "JIRA_ADD_WATCHER_TO_ISSUE", "name": "Add Watcher to Issue", "description": "Adds a user to an issue's watcher list by account ID. Requires the authenticated user to have permission to view the issue and manage watchers; insufficient permissions may result in silent failure or an error response." }, { "slug": "JIRA_ADD_WORKLOG", "name": "Add Worklog", "description": "Tool to add a worklog entry to a Jira issue. Use when logging time spent on an issue." }, { "slug": "JIRA_ANALYSE_EXPRESSION", "name": "Analyse Jira Expression", "description": "Analyses Jira expressions for syntax validation, type checking, and complexity analysis. Use when you need to validate Jira expression syntax before using it in automation rules, custom fields, or workflows." }, { "slug": "JIRA_ASSIGN_ISSUE", "name": "Assign Issue", "description": "Assigns a Jira issue to a user, default assignee, or unassigns; supports email/name lookup." }, { "slug": "JIRA_BULK_CREATE_ISSUE", "name": "Bulk Create Issues", "description": "Creates multiple Jira issues (up to 50 per call) with full feature support including markdown, assignee resolution, and priority handling." }, { "slug": "JIRA_CHECK_PERMISSIONS", "name": "Check User Permissions", "description": "Check user permissions for global and project-level operations in Jira. Use this action to verify whether a user has specific permissions at the system level or within projects. Useful for authorization checks before performing operations, or for auditing user access rights." }, { "slug": "JIRA_CREATE_BOARD", "name": "Create Board", "description": "Creates a new Jira board (kanban, scrum, or agility) with optional filter and location configuration. Use this action when you need to set up a new board for a project or create a personal board for tracking work. The board will organize and visualize issues based on the specified filter or project context." }, { "slug": "JIRA_CREATE_GROUP", "name": "Create Group", "description": "Creates a new group in Jira with the specified name." }, { "slug": "JIRA_CREATE_ISSUE", "name": "Create Issue", "description": "Creates a new Jira issue (e.g., bug, task, story) in a specified project. IMPORTANT: Different Jira projects may have custom required fields beyond the standard ones (summary, project_key, issue_type). If issue creation fails with 'field X is required', use JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS (requires projectIdOrKey and issueTypeId parameters) to discover available fields for your project, or check your Jira project's configuration. Custom fields can be provided via the 'additional_properties' parameter as a JSON string (e.g., '{\"customfield_12345\": \"value\"}'). Rapid bulk creation may trigger HTTP 429 rate limiting; throttle calls and use exponential backoff on 429 responses." }, { "slug": "JIRA_CREATE_ISSUE_LINK", "name": "Link Issues", "description": "Links two Jira issues using a specified link type with optional comment." }, { "slug": "JIRA_CREATE_JQL_AUTOCOMPLETEDATA", "name": "Get JQL Autocomplete Data", "description": "Retrieves JQL autocomplete reference data including reserved words, field names, and function names. Use when building JQL query editors or validating JQL syntax." }, { "slug": "JIRA_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new Jira project with required lead, template, and type configuration." }, { "slug": "JIRA_CREATE_SPRINT", "name": "Create Sprint", "description": "Creates a new sprint on a Jira board with optional start/end dates and goal." }, { "slug": "JIRA_CREATE_VERSION", "name": "Create Version", "description": "Creates a new version for releases or milestones in a Jira project." }, { "slug": "JIRA_DELETE_ATTACHMENT", "name": "Delete Attachment", "description": "Permanently deletes an attachment from Jira by its ID. This action is irreversible — the attachment cannot be recovered once removed. Use this action when you need to remove an unwanted file from a Jira issue." }, { "slug": "JIRA_DELETE_COMMENT", "name": "Delete Comment", "description": "Deletes a specific comment from a Jira issue using its ID and the issue's ID/key; requires user permission to delete comments on the issue." }, { "slug": "JIRA_DELETE_ISSUE", "name": "Delete Issue", "description": "Permanently and irreversibly deletes a Jira issue by its ID or key. Obtain explicit user confirmation before calling." }, { "slug": "JIRA_DELETE_VERSION", "name": "Delete Version", "description": "Deletes a Jira version and optionally reassigns its issues." }, { "slug": "JIRA_DELETE_WORKLOG", "name": "Delete Worklog", "description": "Deletes a worklog from a Jira issue with estimate adjustment options." }, { "slug": "JIRA_EDIT_ISSUE", "name": "Edit Issue", "description": "Updates an existing Jira issue with field values and operations. Supports direct field parameters (summary, description, assignee, priority, etc.) that are merged with the fields parameter. Direct parameters take precedence." }, { "slug": "JIRA_EVALUATE_JIRA_EXPRESSION", "name": "Evaluate Jira Expression", "description": "Tool to evaluate Jira expressions using the enhanced search API. Use when you need to extract or transform data from Jira using Jira expression language. Useful for complex data queries, transformations, and building custom objects from Jira data." }, { "slug": "JIRA_FETCH_BULK_ISSUES", "name": "Bulk Fetch Issues", "description": "Tool to bulk fetch multiple Jira issues by their IDs or keys (max 100 per call). Use when you need to retrieve details for multiple issues efficiently in a single API call." }, { "slug": "JIRA_FIND_USERS", "name": "Find Users (Deprecated)", "description": "DEPRECATED: Use JIRA_FIND_USERS2 instead. Searches for Jira users by email or display name to find account IDs; essential for assigning issues, adding watchers, and other user-related operations. Broad queries may return multiple matches — always disambiguate using full email before selecting an account_id. Results may include app/bot accounts; verify account_type is a human user before use in downstream operations." }, { "slug": "JIRA_FIND_USERS2", "name": "Find Users 2", "description": "Tool to find users in Jira by query string, account ID, or property search. Use when you need to search for users to assign to issues, add as watchers, or perform other user-related operations." }, { "slug": "JIRA_FIND_USERS_FOR_PICKER", "name": "Find Users For Picker", "description": "Find users for picker components by matching query against user attributes like display name and email." }, { "slug": "JIRA_GET_ALL_GROUPS", "name": "Get All Groups", "description": "Retrieves a page of groups from the Jira instance. Useful for resolving correct group names or IDs before passing them to other tools. Some returned groups are system-managed and may be inaccessible via other group operations. Use `start_at`/`max_results` to page through results." }, { "slug": "JIRA_GET_ALL_ISSUE_TYPE_SCHEMES", "name": "Get All Issue Type Schemes", "description": "Retrieves all Jira issue type schemes with optional filtering and pagination." }, { "slug": "JIRA_GET_ALL_PROJECTS", "name": "Get all projects", "description": "Retrieves all visible projects using the modern paginated Jira API with server-side filtering and pagination support. Results reflect only projects the authenticated user can access — small or empty result sets may indicate permission restrictions, not absence of projects. An empty `values` array means no projects matched the filters; relax `query`, `status`, or `categoryId` if unexpected. Project keys are mutable; prefer the stable numeric project ID for durable references in follow-up calls." }, { "slug": "JIRA_GET_ALL_STATUSES", "name": "Get Issue Statuses", "description": "Retrieves all issue statuses associated with workflows from Jira. Returns global statuses that may not be valid for every project or workflow scheme; verify a returned status is applicable to the specific project before use." }, { "slug": "JIRA_GET_ALL_USERS", "name": "Get All Users", "description": "Retrieves all users from the Jira instance including active, inactive, app accounts, and system accounts, with pagination support. On Jira Cloud, fields like `email_address` may be redacted due to privacy settings — never treat them as guaranteed present. Successful responses may silently omit users due to permission restrictions; a smaller-than-expected result set may reflect access limits, not absence of users." }, { "slug": "JIRA_GET_ATTACHMENT", "name": "Get Attachment", "description": "Retrieves the binary content of a Jira attachment by ID. Use when you need to download a specific file attached to an issue." }, { "slug": "JIRA_GET_ATTACHMENT_META", "name": "Get Attachment Meta", "description": "Tool to retrieve Jira attachment settings including upload limits and enabled status. Use when you need to check if attachments are enabled or determine the maximum file size allowed." }, { "slug": "JIRA_GET_COMMENT", "name": "Get Comment", "description": "Retrieves a specific comment by ID from a Jira issue with optional expansions." }, { "slug": "JIRA_GET_COMPONENTS", "name": "Get Component", "description": "Tool to retrieve components from Jira projects with search and filtering. Use when you need to list or find components across projects, optionally filtered by project IDs/keys or search query." }, { "slug": "JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS", "name": "Get Create Field Metadata for Issue Type", "description": "Tool to retrieve field metadata for a specific issue type in a project. Use this to discover required fields, allowed values, and field configurations before creating issues of a specific type." }, { "slug": "JIRA_GET_CURRENT_USER", "name": "Get Current User", "description": "Retrieves detailed information about the currently authenticated Jira user. The returned `accountId` is the correct identifier for fields like `lead_account_id` in JIRA_CREATE_PROJECT, JIRA_ADD_WATCHER_TO_ISSUE, and JIRA_REMOVE_WATCHER_FROM_ISSUE — never use email or username in those fields." }, { "slug": "JIRA_GET_DASHBOARDS", "name": "Get Dashboards", "description": "Tool to list and search Jira dashboards visible to the current user. Use when you need to discover available dashboards, filter by ownership or favorites, or retrieve dashboard details including permissions and popularity." }, { "slug": "JIRA_GET_FAVORITE_FILTERS", "name": "Get Favorite Filters", "description": "Tool to retrieve favorite filters for the current user. Use when you need to discover which saved filters the user has marked as favorites." }, { "slug": "JIRA_GET_FIELDS", "name": "Get fields", "description": "Tool to retrieve Jira issue fields metadata. Use before editing an issue to discover custom field IDs and names. Custom fields are addressed as customfield_XXXXX in API calls and cf[XXXXX] in JQL; using display names instead causes 400 Unknown field errors. Returns global metadata — cross-reference with JIRA_GET_ISSUE_EDIT_META before editing, as globally visible fields not listed there will also cause 400 errors when sent to JIRA_EDIT_ISSUE. Results are scoped to the authenticated user's permissions, so field sets may differ between users." }, { "slug": "JIRA_GET_FIELDS_PAGINATED", "name": "Get custom fields paginated", "description": "Tool to retrieve Jira fields in pages. Use when you need to filter or page through custom and system fields." }, { "slug": "JIRA_GET_FILTER", "name": "Get Filter", "description": "Retrieves a specific Jira saved filter by ID, including its JQL and sharing metadata, to reuse in subsequent searches. Use when you need to fetch filter details or extract the JQL query to run searches." }, { "slug": "JIRA_GET_GROUP", "name": "Get Group", "description": "Retrieves details of a specific Jira group by name or ID. Use JIRA_GET_ALL_GROUPS to discover valid group names/IDs first. Some system-managed groups may be inaccessible due to permission restrictions even when name/ID is known." }, { "slug": "JIRA_GET_INFO", "name": "Get Service Management Info", "description": "Retrieves runtime information for the Jira Service Management instance. Use when you need to check the version, build date, or license status." }, { "slug": "JIRA_GET_ISSUE", "name": "Get Issue", "description": "Retrieves a Jira issue by ID or key with customizable fields and expansions. Request only needed fields and expansions to avoid large responses. Use specific `customfield_*` keys in `fields` to verify updated values programmatically." }, { "slug": "JIRA_GET_ISSUE_CREATE_METADATA", "name": "Get Create Issue Metadata (Deprecated)", "description": "DEPRECATED: Use JIRA_GET_CREATE_METADATA_ISSUE_TYPE_FIELDS instead. This action wraps the deprecated query-based GET /issue/createmeta endpoint. Tool to retrieve issue creation metadata for Jira projects (available projects, issue types, and required fields)." }, { "slug": "JIRA_GET_ISSUE_EDIT_METADATA", "name": "Get Issue Edit Meta", "description": "Tool to retrieve editable fields for a Jira issue. Use before running an edit action to fetch custom field metadata and required fields." }, { "slug": "JIRA_GET_ISSUE_LINK_TYPES", "name": "Get Issue Link Types", "description": "Retrieves all configured issue link types from Jira." }, { "slug": "JIRA_GET_ISSUE_PICKER_SUGGESTIONS", "name": "Get issue picker", "description": "Tool to get issue picker suggestions from Jira. Use when you need to search for issues and get auto-completion suggestions." }, { "slug": "JIRA_GET_ISSUE_PROPERTY", "name": "Get Issue Property", "description": "Retrieves a custom property from a Jira issue by key." }, { "slug": "JIRA_GET_ISSUE_RESOLUTIONS", "name": "Get Issue Resolutions", "description": "Retrieves all available issue resolution types from Jira." }, { "slug": "JIRA_GET_ISSUE_TYPES", "name": "Get issue types", "description": "Retrieves all Jira issue types available to the user using the modern API v3 endpoint; results vary based on 'Administer Jira' global or 'Browse projects' project permissions. Response includes two shapes: global issue types (no scope field) and project-scoped types (include scope.project.id); deduplicate by id, not name. Always use issuetype.id (not display name) when referencing issue types in other API calls to avoid validation errors." }, { "slug": "JIRA_GET_ISSUE_WATCHERS", "name": "Get Issue Watchers", "description": "Retrieves users watching a Jira issue for update notifications. Watcher data access may be restricted by Jira permissions. Returns all watchers; filter client-side by `accountId` to check if a specific user is watching." }, { "slug": "JIRA_GET_ISSUE_WORKLOGS", "name": "Get Issue Worklogs (Deprecated)", "description": "DEPRECATED: Use JIRA_GET_WORKLOG instead. This action is deprecated because it lacks the expand parameter for worklog properties. Use JIRA_GET_WORKLOG which provides the same functionality plus the ability to expand worklog properties using the 'expand' parameter. Legacy description: Retrieves worklogs for a Jira issue with user permission checks." }, { "slug": "JIRA_GET_JQL_AUTOCOMPLETEDATA", "name": "Get JQL autocomplete reference data", "description": "Tool to retrieve JQL autocomplete reference data. Use when you need to discover available JQL fields, functions, and reserved words for building queries." }, { "slug": "JIRA_GET_JQL_AUTOCOMPLETEDATA_SUGGESTIONS", "name": "Get JQL autocomplete suggestions", "description": "Tool to get JQL field auto-complete suggestions. Use when building JQL queries to discover valid field values or predicate options." }, { "slug": "JIRA_GET_MY_PERMISSIONS", "name": "Get My Permissions", "description": "Tool to retrieve the user's permissions in Jira. Use when checking what actions the authenticated user can perform in a specific context (project, issue, or comment)." }, { "slug": "JIRA_GET_MYPREFERENCES_LOCALE", "name": "Get User Locale Preference", "description": "Tool to retrieve the locale preference of the currently authenticated Jira user. Use when you need to know the user's language and regional settings." }, { "slug": "JIRA_GET_PERMISSIONS", "name": "Get Permissions", "description": "Tool to retrieve all available Jira permissions. Use when you need to list all permission types that exist in Jira, including project and global permissions." }, { "slug": "JIRA_GET_PERMITTED_PROJECTS", "name": "Get Permitted Projects", "description": "Tool to retrieve projects where the current user has specific permissions. Use when you need to find which projects a user can access with certain permission levels." }, { "slug": "JIRA_GET_PROJECT", "name": "Get Project", "description": "Retrieves details of a Jira project by its ID or key." }, { "slug": "JIRA_GET_PROJECT_ROLES", "name": "Get Project Roles", "description": "Retrieves all available roles for a Jira project. Role IDs are project-specific and must not be reused across projects; call this action per project to obtain correct role IDs." }, { "slug": "JIRA_GET_PROJECT_TEMPLATES", "name": "Get Project Templates", "description": "Retrieves available Jira project templates for creating projects. Returns template keys that can be used with the Create Project action. Use this action when you need to discover valid project template keys before creating a project." }, { "slug": "JIRA_GET_PROJECT_TYPE", "name": "Get Project Type", "description": "Retrieves detailed information about a specific Jira project type by its key. Use when you need to get metadata about project types like software, service desk, business, or product discovery projects." }, { "slug": "JIRA_GET_PROJECT_VERSIONS", "name": "Get Project Versions", "description": "Retrieves all versions for a Jira project with optional expansion. Use version IDs from the response (not names) when setting fixVersions or affectedVersions on issues — submitting names alone causes 400 validation errors." }, { "slug": "JIRA_GET_RECENT_PROJECTS", "name": "Get Recent Projects", "description": "Retrieves a list of projects recently accessed by the authenticated user." }, { "slug": "JIRA_GET_REMOTE_ISSUE_LINKS", "name": "Get Issue Remote Links", "description": "Retrieves links from a Jira issue to external resources." }, { "slug": "JIRA_GET_SERVER_INFO", "name": "Get Server Info", "description": "Tool to retrieve Jira instance server information. Use when you need details about the Jira version, build, deployment type, or server configuration." }, { "slug": "JIRA_GET_SERVICE_DESK_REQUEST_TYPE_FIELDS", "name": "Get Service Desk Request Type Fields", "description": "Tool to retrieve JSM request type field metadata for filling out portal requests. Use when you need to know which fields are required and their valid values." }, { "slug": "JIRA_GET_SPRINT", "name": "Get Sprint", "description": "Retrieves detailed information about a specific sprint by its ID. Use this action when you need to fetch a single sprint's details directly by ID, such as checking sprint status, dates, goal, or metadata. For finding sprint IDs, use JIRA_LIST_SPRINTS first." }, { "slug": "JIRA_GET_SYSTEM_AVATARS", "name": "Get System Avatars", "description": "Tool to retrieve all system avatars for a specific type (issuetype, project, user, or priority). Use when you need to get a list of available default avatars that can be assigned to Jira entities." }, { "slug": "JIRA_GET_TRANSITIONS", "name": "Get Transitions", "description": "Retrieves available workflow transitions for a Jira issue. Always use the numeric `id` from the response when calling JIRA_TRANSITION_ISSUE — transition IDs are project/workflow-specific and must not be hardcoded or reused across different issues or projects. When multiple transitions share similar names, use `id` to disambiguate." }, { "slug": "JIRA_GET_UNIVERSAL_AVATAR_TYPE_OWNER", "name": "Get Universal Avatar Type Owner", "description": "Tool to retrieve all avatars (system and custom) for a specific type and entity in Jira. Use when you need to view available avatar options for projects, issue types, or priorities." }, { "slug": "JIRA_GET_UNIVERSAL_AVATAR_VIEW_TYPE", "name": "Get Universal Avatar View Type", "description": "Tool to retrieve the default avatar image for a specific type (project, issuetype, or priority) from Jira. Use when you need to download the default avatar for a type." }, { "slug": "JIRA_GET_USER_GROUPS", "name": "Get User Groups", "description": "Retrieves all groups for a specific Jira user by account ID. Use this action when you need to check group membership for a particular user, verify permissions, or audit user access. Essential for understanding which groups a user belongs to before performing group-related operations." }, { "slug": "JIRA_GET_VIEW_TYPE_AVATAR", "name": "Get Avatar Image", "description": "Tool to retrieve a specific avatar image by type and ID from Jira. Use when you need to download avatar images for projects, issue types, or priorities." }, { "slug": "JIRA_GET_VOTES", "name": "Get Issue Votes", "description": "Fetches voting details for a Jira issue; requires voting to be enabled in Jira's general settings." }, { "slug": "JIRA_GET_WORKLOG", "name": "Get Worklogs", "description": "Retrieves worklogs for a specified Jira issue." }, { "slug": "JIRA_LIST_ALL_PROJECTS", "name": "List All Projects (Deprecated)", "description": "DEPRECATED: Use JIRA_GET_ALL_PROJECTS instead. Tool to list all projects accessible to the user. Wraps the deprecated GET /project endpoint; prefer the paginated JIRA_GET_ALL_PROJECTS (GET /project/search)." }, { "slug": "JIRA_LIST_BOARDS", "name": "List Boards", "description": "Retrieves paginated Jira boards with filtering and sorting options. Use `start_at` and `max_results` together, looping through pages to retrieve all results." }, { "slug": "JIRA_LIST_COMMENTS", "name": "List Comments by IDs", "description": "Tool to retrieve multiple comments by their IDs in a single request. Use when you need to fetch specific comments efficiently. Supports up to 1000 comment IDs per request with optional expansion for rendered HTML and properties." }, { "slug": "JIRA_LIST_FILTERS", "name": "List Jira Filters", "description": "Tool to search and list Jira saved filters (saved searches) visible to the current user. Use when you need to discover existing filters, find filters by name or owner, or get filter details including JQL queries and sharing permissions." }, { "slug": "JIRA_LIST_GROUPS_PICKER", "name": "List Groups (Picker)", "description": "Tool to search and list groups using Jira's picker endpoint. Use when you need to find groups by name or get a filtered list of groups." }, { "slug": "JIRA_LIST_ISSUE_COMMENTS", "name": "List Issue Comments", "description": "Retrieves paginated comments from a Jira issue with optional ordering. Paginate by incrementing `start_at` by `max_results` until the cumulative count reaches the `total` field in the response. A response with `total=0` and an empty comments array means the issue has no comments." }, { "slug": "JIRA_LIST_PROJECT_TYPES", "name": "List Project Types", "description": "Retrieves all Jira project types available in the instance. Use when you need to discover available project types or list all types without filtering by a specific key." }, { "slug": "JIRA_LIST_SPRINTS", "name": "List Sprints", "description": "Retrieves paginated sprints from a Jira board with optional state filtering." }, { "slug": "JIRA_MOVE_ISSUE_TO_SPRINT", "name": "Move Issues to Sprint", "description": "Moves one or more Jira issues to a specified active sprint." }, { "slug": "JIRA_PARSE_JQL_QUERIES", "name": "Parse JQL Queries", "description": "Parse and validate JQL queries, returning their abstract syntax tree structure along with any errors or warnings. Use when you need to validate JQL syntax or understand query structure before execution." }, { "slug": "JIRA_REMOVE_USER_FROM_GROUP", "name": "Remove User from Group", "description": "Removes a user from a Jira group. This is a destructive operation that revokes group-based permissions; confirm intent before calling." }, { "slug": "JIRA_REMOVE_USER_FROM_PROJECT_ROLE", "name": "Remove User from Project Role", "description": "Removes a user or group from a project role." }, { "slug": "JIRA_REMOVE_WATCHER_FROM_ISSUE", "name": "Remove Watcher from Issue", "description": "Removes a user from an issue's watcher list by account ID." }, { "slug": "JIRA_SEARCH_APPROXIMATE_COUNT", "name": "Search Approximate Count", "description": "Count issues matching a JQL query using approximate count endpoint. Use when you need a fast count of issues without retrieving full issue details. The JQL query must be bounded (include at least one search restriction)." }, { "slug": "JIRA_SEARCH_DASHBOARDS", "name": "Search Dashboards", "description": "Tool to search for Jira dashboards with filtering, sorting, and pagination support. Use when you need to find dashboards by name, owner, sharing permissions, or status. Supports filtering by owner account ID, group, project, and dashboard name." }, { "slug": "JIRA_SEARCH_FOR_ISSUES_USING_JQL_GET", "name": "Search Issues Using JQL (GET)", "description": "Searches for Jira issues using JQL with pagination and field selection." }, { "slug": "JIRA_SEARCH_FOR_ISSUES_USING_JQL_POST", "name": "Search Issues Using JQL Enhanced (POST)", "description": "DEPRECATED: Use JIRA_SEARCH_ISSUES instead. Searches for Jira Cloud issues using Enhanced JQL via POST request; supports eventual consistency and token-based pagination. Use this POST endpoint for long/complex JQL to avoid HTTP 414 errors on GET-based search. IMPORTANT: This action is for Jira Cloud only and will not work with Jira Server or Data Center instances." }, { "slug": "JIRA_SEARCH_ISSUES", "name": "Search issues", "description": "Advanced Jira issue search supporting structured filters and raw JQL. At least one filter parameter (e.g., jql, project_key, updated_after) is required; calls with no parameters will be rejected." }, { "slug": "JIRA_SEND_NOTIFICATION_FOR_ISSUE", "name": "Send Notification for Issue", "description": "Sends a customized email notification for a Jira issue." }, { "slug": "JIRA_TRANSITION_ISSUE", "name": "Transition Issue", "description": "Transitions a Jira issue to a different workflow state, with support for transition name lookup and user assignment by email. IMPORTANT: Only fields that are on the transition's screen can be set during the transition. Which fields are available depends on the Jira workflow configuration and varies per project. Use JIRA_GET_TRANSITIONS with expand='transitions.fields' to check which fields a transition supports. If a field (e.g., assignee) is not on the transition screen, use a JIRA_EDIT_ISSUE action after the transition to set other fields." }, { "slug": "JIRA_UPDATE_COMMENT", "name": "Update Comment", "description": "Updates text content or visibility of an existing Jira comment." } ], "triggers": [ { "slug": "JIRA_NEW_ISSUE_TRIGGER", "name": "New Issue", "description": "Fires when a new issue is created in the Jira project you configure.\n\n Only issues created in that project produce an event." }, { "slug": "JIRA_NEW_PROJECT_TRIGGER", "name": "New Project", "description": "Triggered when a new project is added in Jira" }, { "slug": "JIRA_UPDATED_ISSUE_TRIGGER", "name": "Updated Issue", "description": "Fires when an existing issue is changed in the Jira project you configure —\n for example its status, assignee, or any other field on the issue is\n updated. Only issues in that project produce an event.\n\n It does not fire on comment activity: adding, editing, or deleting a\n comment on an issue will not produce an event from this trigger." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "jira_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read:jira-work,write:jira-work,manage:jira-project,manage:jira-configuration,read:jira-user,manage:jira-webhook,manage:jira-data-provider,read:servicedesk-request,manage:servicedesk-customer,write:servicedesk-request,read:servicemanagement-insight-objects,offline_access,read:sprint:jira-software,write:sprint:jira-software,read:board-scope:jira-software,write:board-scope:jira-software,read:project:jira,read:issue-type-scheme:jira" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "The part of your Jira web address before .atlassian.net — e.g. 'acme' for acme.atlassian.net. Open Jira and copy it from your browser's address bar.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "The part of your Jira web address before .atlassian.net — e.g. 'acme' for acme.atlassian.net. Open Jira and copy it from your browser's address bar.", "required": true, "default": null } ], "optional": [ { "name": "basic_encoded", "displayName": "Base Encode (Deprecated)", "type": "string", "description": "Deprecated — leave this blank. Composio builds it automatically from your email and API token above. Only fill if instructed, using the Base64 of 'email:api-token'.", "required": false, "default": null }, { "name": "generic_api_key", "displayName": "API Key (Required)", "type": "string", "description": "An Atlassian API token — it acts as your password. Create one at id.atlassian.com/manage-profile/security/api-tokens and copy it right away; it's shown only once.", "required": false, "default": null }, { "name": "generic_id", "displayName": "Jira Email (Required)", "type": "string", "description": "The email you sign in to Jira/Atlassian with (e.g. jane@acme.com). It must match the account that created the API token below.", "required": false, "default": null } ] } } }, { "mode": "S2S_OAUTH2", "name": "jira_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth Client ID from Atlassian admin service account credentials", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "OAuth Client Secret from Atlassian admin service account credentials", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "The part of your Jira web address before .atlassian.net — e.g. 'acme' for acme.atlassian.net. Open Jira and copy it from your browser's address bar.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "firecrawl", "name": "Firecrawl", "logo": "https://logos.composio.dev/api/firecrawl", "description": "Firecrawl automates web crawling and data extraction, enabling organizations to gather content, index sites, and gain insights from online sources at scale", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIRECRAWL_AGENT_CANCEL", "name": "Cancel an agent job", "description": "Tool to cancel an in-progress agent job by its ID. Use when you need to terminate an active agent operation. The API returns a success boolean upon cancellation." }, { "slug": "FIRECRAWL_BATCH_SCRAPE", "name": "Batch scrape multiple URLs", "description": "Tool to scrape multiple URLs in batch with concurrent processing. Use when you need to scrape multiple web pages efficiently with customizable formats and content filtering." }, { "slug": "FIRECRAWL_BATCH_SCRAPE_CANCEL", "name": "Cancel a batch scrape job", "description": "Tool to cancel a running batch scrape job using its unique identifier. Use when you need to terminate an in-progress batch scrape operation." }, { "slug": "FIRECRAWL_BATCH_SCRAPE_GET", "name": "Get batch scrape status", "description": "Retrieves the current status and results of a batch scrape job using the job ID. Use this to check batch scrape progress and retrieve scraped data." }, { "slug": "FIRECRAWL_BATCH_SCRAPE_GET_ERRORS", "name": "Get errors from batch scrape job", "description": "Tool to retrieve error details from a batch scrape job, including failed URLs and URLs blocked by robots.txt. Use when you need to debug or understand why certain pages failed to scrape in a batch operation." }, { "slug": "FIRECRAWL_CRAWL", "name": "Start a web crawl", "description": "Initiates a Firecrawl web crawl from a given URL, applying various filtering and content extraction rules, and polls until the job is complete; ensure the URL is accessible and any regex patterns for paths are valid." }, { "slug": "FIRECRAWL_CRAWL_CANCEL", "name": "Cancel a crawl job", "description": "Cancels an active or queued web crawl job using its ID; attempting to cancel completed, failed, or previously canceled jobs will not change their state." }, { "slug": "FIRECRAWL_CRAWL_DELETE", "name": "Cancel a crawl job", "description": "Tool to cancel a running crawl job by its ID. Use when you need to stop an active crawl operation. The API returns a status of 'cancelled' upon successful cancellation." }, { "slug": "FIRECRAWL_CRAWL_GET", "name": "Get crawl job status", "description": "Tool to retrieve the status and results of a Firecrawl crawl job. Use when you need to check the progress or get data from an ongoing or completed crawl operation. Returns crawl status, progress metrics, credits used, and the crawled page data." }, { "slug": "FIRECRAWL_CRAWL_GET_ERRORS", "name": "Get errors from a crawl job", "description": "Tool to retrieve errors from a Firecrawl crawl job. Use when you need to understand why certain pages failed to scrape or which URLs were blocked by robots.txt during a crawl operation." }, { "slug": "FIRECRAWL_CRAWL_LIST_ACTIVE", "name": "Get all active crawl jobs", "description": "Tool to retrieve all active crawl jobs for the authenticated team. Use when you need to see which crawl operations are currently running." }, { "slug": "FIRECRAWL_CRAWL_PARAMS_PREVIEW", "name": "Preview crawl parameters", "description": "Preview crawl parameters before starting a crawl by generating optimal configuration from natural language instructions. Use this tool to understand what crawl settings will be applied based on your requirements before executing a full crawl operation. The endpoint intelligently interprets natural language prompts to configure crawl parameters like include/exclude paths, depth limits, and domain scope." }, { "slug": "FIRECRAWL_CRAWL_V2", "name": "Start a web crawl (v2) [NEW]", "description": "[NEW v2 API] Initiates a Firecrawl v2 web crawl with enhanced features over v1: natural language prompts for automatic crawler configuration, crawlEntireDomain for sibling/parent page discovery, better depth control with maxDiscoveryDepth, subdomain support, and full webhook configuration. Polls until crawl is complete." }, { "slug": "FIRECRAWL_CREDIT_USAGE_GET", "name": "Get team credit usage", "description": "Tool to get current team credit usage information. Use when you need to check remaining credits or billing period details." }, { "slug": "FIRECRAWL_CREDIT_USAGE_GET_HISTORICAL", "name": "Get historical team credit usage", "description": "Tool to retrieve historical team credit usage on a monthly basis. Use when you need to analyze credit consumption patterns over time, optionally segmented by API key." }, { "slug": "FIRECRAWL_DEEP_RESEARCH", "name": "Perform deep research", "description": "Initiates an AI-powered deep research operation that autonomously explores the web to investigate any topic and synthesizes findings from multiple sources. Requires an active Firecrawl connection. The research process iteratively searches, analyzes, and synthesizes information across multiple web sources, providing comprehensive insights with source citations. Results include a final analysis, detailed activity timeline, and curated source list. Billing: 1 credit per URL analyzed. Control costs with the maxUrls parameter. Note: This API is in Alpha and being deprecated after June 30, 2025; prefer FIRECRAWL_SEARCH + FIRECRAWL_EXTRACT or COMPOSIO_SEARCH_WEB for durable workflows. Reserve this tool for cases requiring synthesized multi-source analysis — it is slower and more resource-intensive than FIRECRAWL_SEARCH." }, { "slug": "FIRECRAWL_EXTRACT", "name": "Extract structured data", "description": "Extracts structured data from web pages by initiating an extraction job and polling for completion; requires a natural language `prompt` or a JSON `schema` (one must be provided)." }, { "slug": "FIRECRAWL_EXTRACT_GET", "name": "Get extract job status", "description": "Tool to retrieve the status and results of a previously submitted extract job. Use when you need to check the progress or get the final results of an extraction operation." }, { "slug": "FIRECRAWL_GET_AGENT_STATUS", "name": "Get agent job status", "description": "Tool to get the status and results of an agent job. Use when you need to check if an agent job has completed and retrieve the collected data. Agent jobs autonomously search, navigate, and extract data from the web." }, { "slug": "FIRECRAWL_GET_DEEP_RESEARCH_STATUS", "name": "Get deep research status", "description": "Retrieves the status and results of a deep research job by its ID. Use when you need to check the progress or retrieve the final analysis of a deep research operation." }, { "slug": "FIRECRAWL_GET_THE_STATUS_OF_A_CRAWL_JOB", "name": "Get the status of a crawl job", "description": "Retrieves the current status, progress, and details of a web crawl job, using the job ID obtained when the crawl was initiated." }, { "slug": "FIRECRAWL_LLMS_TXT_GENERATE", "name": "Generate LLMs.txt for a website", "description": "Initiates an async job to generate an LLMs.txt file for a website, converting web content into LLM-friendly format. Returns a job ID to check status and retrieve results. Use when you need to create a standardized, machine-readable representation of website content for language models." }, { "slug": "FIRECRAWL_LLMS_TXT_GET", "name": "Get LLMs.txt generation job status", "description": "Tool to get the status and results of an LLMs.txt generation job. Use when you need to check if a job has completed and retrieve the generated content." }, { "slug": "FIRECRAWL_MAP_MULTIPLE_URLS_BASED_ON_OPTIONS", "name": "Map multiple URLs", "description": "Maps a website by discovering URLs from a starting base URL, with options to customize the crawl via search query, subdomain inclusion, sitemap handling, and result limits; search effectiveness is site-dependent." }, { "slug": "FIRECRAWL_QUEUE_GET", "name": "Get team queue status", "description": "Tool to retrieve metrics about the team's scrape queue. Use when you need to check queue status, job counts, or concurrency limits." }, { "slug": "FIRECRAWL_SCRAPE", "name": "Scrape URL", "description": "Scrapes a publicly accessible URL, optionally performing pre-scrape browser actions or extracting structured JSON using an LLM, to retrieve content in specified formats." }, { "slug": "FIRECRAWL_SEARCH", "name": "Search", "description": "Performs a web search for a query, scrapes content from the top search results using Firecrawl, and returns details in specified formats." }, { "slug": "FIRECRAWL_START_AGENT", "name": "Start an agent job", "description": "Tool to start an agent job for agentic web extraction with multi-page navigation and interaction capabilities. Use when you need to autonomously gather data from the web with complex navigation requirements. The agent can search, navigate, and extract information across multiple pages based on your natural language prompt." }, { "slug": "FIRECRAWL_TOKEN_USAGE_GET", "name": "Get team token usage", "description": "Tool to retrieve the current team's token usage and balance information for Firecrawl's Extract feature. Use when you need to check remaining token credits, plan allocation, or billing period details." }, { "slug": "FIRECRAWL_TOKEN_USAGE_GET_HISTORICAL", "name": "Get historical team token usage", "description": "Tool to retrieve historical team token usage on a monthly basis. Use when you need to analyze token consumption patterns over time, optionally segmented by API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "firecrawl_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The Firecrawl API web address. Most accounts can keep the default https://api.firecrawl.dev/v1. If you self-host Firecrawl, enter your server's address ending in /v1.", "required": true, "default": "https://api.firecrawl.dev/v1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Firecrawl API key, a token starting with fc- (e.g. fc-12345...). Sign in and copy it from the API Keys page: https://www.firecrawl.dev/app/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tavily", "name": "Tavily", "logo": "https://logos.composio.dev/api/tavily", "description": "Tavily offers search and data retrieval solutions, helping teams quickly locate and filter relevant information from documents, databases, or web sources", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TAVILY_CRAWL", "name": "Tavily crawl", "description": "Tool to perform intelligent graph-based website crawling with parallel path exploration and content extraction. Use when you need to traverse and extract content from multiple pages of a website following specific patterns or instructions. Supports depth/breadth controls, domain filtering, and natural language instructions for guided crawling." }, { "slug": "TAVILY_EXTRACT", "name": "Tavily extract", "description": "Tool to extract and parse web page content from specified URLs using Tavily's extract endpoint. Use when you need to retrieve clean, structured content from web pages with optional image extraction and content reranking based on query relevance." }, { "slug": "TAVILY_GET_USAGE", "name": "Get Tavily usage", "description": "Tool to retrieve API key and account usage statistics from Tavily. Use when you need to check credit consumption, limits, and per-endpoint usage for search, extract, crawl, map, and research operations." }, { "slug": "TAVILY_MAP", "name": "Tavily map website", "description": "Tool to map a website and discover its pages. Use when you need to scan a website and get a structured list of URLs/pages it contains without extracting full content." }, { "slug": "TAVILY_SEARCH", "name": "Tavily search", "description": "Use this to perform a web search via the Tavily API; offers controls for search depth, content types, result count, and domain filtering. Requires an active Tavily connection (401 = auth failure). Rate limit: ~2 req/s; apply exponential backoff on HTTP 429. Results are nested under response_data.results (not a flat list). Subject to HTTP 429 on rapid bursts." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tavily_scheme", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Tavily API key (starts with 'tvly-', e.g. tvly-dev-abc123). Sign in at app.tavily.com and copy it from the API Keys section; either key type works.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "youtube", "name": "YouTube", "logo": "https://logos.composio.dev/api/youtube", "description": "YouTube is a video-sharing platform with user-generated content, live streaming, and monetization opportunities, widely used for marketing, education, and entertainment", "category": "video & audio", "authSchemes": [ "OAUTH2" ], "toolCount": 51, "triggerCount": 4, "version": "20260703_01", "tools": [ { "slug": "YOUTUBE_ADD_VIDEO_TO_PLAYLIST", "name": "Add Video to Playlist", "description": "Tool to add a video to a playlist by inserting a playlist item. Use when organizing videos into playlists or building curated collections." }, { "slug": "YOUTUBE_CREATE_CHANNEL_SECTION", "name": "Insert Channel Section", "description": "Tool to create a new channel section for the authenticated user's YouTube channel. Use when organizing channel content into sections like featured playlists, recent uploads, or featured channels." }, { "slug": "YOUTUBE_CREATE_COMMENT_REPLY", "name": "Insert Comment Reply", "description": "Tool to create a reply to an existing YouTube comment. Use when responding to user comments or engaging in conversations on videos." }, { "slug": "YOUTUBE_CREATE_PLAYLIST", "name": "Create Playlist", "description": "Tool to create a new YouTube playlist on the authenticated user's channel. Use when organizing videos into collections or building curated playlists." }, { "slug": "YOUTUBE_DELETE_CHANNEL_SECTION", "name": "Delete Channel Section", "description": "Tool to delete a YouTube channel section. Use when you need to remove a channel section from a channel. The channel section must exist and the authenticated user must have permission to delete it." }, { "slug": "YOUTUBE_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a YouTube comment owned by the authenticated user or channel. Use when you need to remove a comment from a video. The comment must exist and be owned by the authenticated channel." }, { "slug": "YOUTUBE_DELETE_PLAYLIST", "name": "Delete Playlist", "description": "Tool to delete a YouTube playlist owned by the authenticated user/channel. Use when you need to permanently remove a playlist from YouTube. Requires explicit confirmation via `confirmDelete: true` to prevent accidental deletions." }, { "slug": "YOUTUBE_DELETE_PLAYLIST_ITEM", "name": "Delete Playlist Item", "description": "Tool to delete a playlist item (remove a video from a playlist). Use when removing specific videos from playlists." }, { "slug": "YOUTUBE_DELETE_VIDEO", "name": "Delete Video", "description": "Tool to delete a YouTube video owned by the authenticated user/channel. Use when you need to permanently remove a video from YouTube. Requires explicit confirmation via `confirmDelete: true` to prevent accidental deletions. The video must exist and be owned by the authenticated channel." }, { "slug": "YOUTUBE_GET_CHANNEL_ACTIVITIES", "name": "Get Channel Activities", "description": "Gets recent activities from a YouTube channel including video uploads, playlist additions, likes, and other channel events." }, { "slug": "YOUTUBE_GET_CHANNEL_ID_BY_HANDLE", "name": "Get channel ID by handle", "description": "Retrieves the YouTube Channel ID for a specific YouTube channel handle." }, { "slug": "YOUTUBE_GET_CHANNEL_STATISTICS", "name": "Get Channel Statistics", "description": "Gets detailed statistics for YouTube channels including subscriber counts, view counts, and video counts. Channels can be identified using their ID, handle (e.g., @Google), or username." }, { "slug": "YOUTUBE_GET_VIDEO_DETAILS_BATCH", "name": "Video Details Batch", "description": "Retrieves multiple YouTube video resource parts in a single batch call. Use when you need cohort-level metrics for many videos to reduce quota usage and latency." }, { "slug": "YOUTUBE_GET_VIDEO_RATING", "name": "Get Video Rating", "description": "Retrieves the ratings that the authorized user gave to a list of specified videos. Use when you need to check if a user has liked or disliked specific videos." }, { "slug": "YOUTUBE_LIST_CAPTION_TRACK", "name": "List captions", "description": "Retrieves a list of caption tracks for a YouTube video. Returns an empty items list if no captions are available. Raises ExecutionFailed if the video ID is invalid or not found." }, { "slug": "YOUTUBE_LIST_CHANNELS", "name": "List Channels", "description": "Lists YouTube channels by ID, handle, username, or ownership status, returning detailed channel information including metadata, statistics, and content details. Use this action when you need to retrieve comprehensive channel information by channel ID, handle (e.g., @username), or to list channels owned by or managed by the authenticated user. For finding channels by search query, use the search action instead." }, { "slug": "YOUTUBE_LIST_CHANNEL_SECTIONS", "name": "List Channel Sections", "description": "Tool to retrieve channel sections from YouTube. Use when you need to get the layout sections of a channel's homepage. Channel sections organize content into categories like playlists, uploads, or featured channels." }, { "slug": "YOUTUBE_LIST_CHANNEL_VIDEOS", "name": "List channel videos", "description": "Lists videos from a specified YouTube channel. This action primarily uses the playlistItems.list endpoint with the channel's uploads playlist, which is the recommended approach by YouTube. The uploads playlist ID is obtained by fetching the channel resource via the Channels API and extracting the playlist ID from contentDetails.relatedPlaylists.uploads field. If the uploads playlist returns a 404 error (which can happen due to a known YouTube API bug where the returned playlist ID doesn't actually exist), the action automatically falls back to the search.list endpoint to retrieve channel videos. Note that the search fallback has higher quota cost (100 units vs 1 unit) and is limited to 500 results. If a channel exists but has no uploads playlist (e.g., brand accounts, channels with all videos deleted, or channels that haven't uploaded any public content), an empty result set is returned instead of an error." }, { "slug": "YOUTUBE_LIST_COMMENTS", "name": "List Comments", "description": "List individual comments from YouTube videos. Returns comment details including author, text, timestamps, and engagement metrics. Use 'id' parameter to retrieve specific comments or 'parentId' to retrieve all replies to a top-level comment." }, { "slug": "YOUTUBE_LIST_COMMENT_THREADS", "name": "List Comment Threads (Deprecated)", "description": "DEPRECATED: Use YOUTUBE_LIST_COMMENT_THREADS2 instead. List comment threads from YouTube videos or channels for qualitative analysis and reporting. Returns top-level comments with optional replies (up to 5 per thread). Use the 'videoId' parameter to retrieve comments on a specific video (most common use case)." }, { "slug": "YOUTUBE_LIST_COMMENT_THREADS2", "name": "List Comment Threads", "description": "Tool to retrieve comment threads from YouTube videos or channels matching API request parameters. Use when you need to fetch comments with filtering by video, channel, or specific thread IDs." }, { "slug": "YOUTUBE_LIST_I18N_LANGUAGES", "name": "List I18n Languages", "description": "Returns a list of application languages that the YouTube website supports. Use this when you need to retrieve all available language options for YouTube's interface or to localize content." }, { "slug": "YOUTUBE_LIST_I18N_REGIONS", "name": "List I18n Regions", "description": "Tool to retrieve a list of content regions that the YouTube website supports. Returns region codes (ISO 3166-1 alpha-2) and localized region names. Use when you need to identify available geographic regions for content filtering or display." }, { "slug": "YOUTUBE_LIST_LIVE_CHAT_MESSAGES", "name": "List Live Chat Messages", "description": "Tool to list live chat messages for a specific chat. Use for monitoring live chat during broadcasts or retrieving chat history. Returns messages with author details, timestamps, and message types (text, Super Chat, moderation events)." }, { "slug": "YOUTUBE_LIST_MOST_POPULAR_VIDEOS", "name": "List Most Popular Videos", "description": "DEPRECATED: Use YOUTUBE_UPDATE_VIDEO instead. Tool to list the current most-popular (charts/trending) YouTube videos for a region and/or category via videos.list(chart=mostPopular). Use when you need to retrieve YouTube's official trending or most popular videos, not keyword-search approximations." }, { "slug": "YOUTUBE_LIST_PLAYLIST_IMAGES", "name": "List Playlist Images", "description": "Tool to retrieve playlist images associated with a specific playlist. Use when fetching custom thumbnail images for playlists." }, { "slug": "YOUTUBE_LIST_PLAYLIST_ITEMS", "name": "List Playlist Items", "description": "Tool to list videos in a playlist, with pagination support. Use when walking through a channel's uploads playlist to enumerate all videos." }, { "slug": "YOUTUBE_LIST_SUPER_CHAT_EVENTS", "name": "List Super Chat Events", "description": "Lists Super Chat events for a channel, showing supporter purchases during live streams. Returns Super Chat and Super Sticker events from the past 30 days. Use to track and acknowledge supporter contributions." }, { "slug": "YOUTUBE_LIST_USER_PLAYLISTS", "name": "List user playlists", "description": "Retrieves playlists owned by the authenticated user, implicitly using mine=True." }, { "slug": "YOUTUBE_LIST_USER_SUBSCRIPTIONS", "name": "List user subscriptions", "description": "Retrieves the authenticated user's YouTube channel subscriptions, allowing specification of response parts and pagination." }, { "slug": "YOUTUBE_LIST_VIDEO_ABUSE_REPORT_REASONS", "name": "List Video Abuse Report Reasons", "description": "Tool to retrieve a list of abuse report reasons that can be used to report abusive videos on YouTube. Use when you need to display available reporting categories or before calling videos.reportAbuse. Returns localized reason labels and optional secondary categorizations." }, { "slug": "YOUTUBE_LIST_VIDEO_CATEGORIES", "name": "List Video Categories", "description": "Tool to list YouTube video categories that can be associated with videos. Use when you need to retrieve available video categories for a specific region or get details about specific category IDs." }, { "slug": "YOUTUBE_LOAD_CAPTIONS", "name": "Download YouTube caption track", "description": "Downloads a specific YouTube caption track, which must be owned by the authenticated user, and returns its content as text. Note: This action requires you to own the video (YouTube Data API v3 restriction). Non-owned videos will return 403 Forbidden errors, including many auto-generated caption tracks." }, { "slug": "YOUTUBE_MARK_COMMENT_AS_SPAM", "name": "Mark Comment as Spam", "description": "Tool to mark one or more YouTube comments as spam. Use when moderating comments to flag spam content. Note: This endpoint is deprecated but still functional according to YouTube API documentation." }, { "slug": "YOUTUBE_MULTIPART_UPLOAD_VIDEO", "name": "Multipart upload video", "description": "Uploads a video to YouTube using multipart upload in a single request. Use when you want to upload both metadata and video file together. This action uploads the video file and metadata in one request, unlike resumable upload which requires two steps." }, { "slug": "YOUTUBE_POST_COMMENT", "name": "Post Comment on Video", "description": "Tool to post a new top-level comment on a YouTube video. Use when creating comments to engage with video content or respond to user requests." }, { "slug": "YOUTUBE_RATE_VIDEO", "name": "Rate Video", "description": "Tool to add a like or dislike rating to a YouTube video, or remove an existing rating. Use when you need to rate videos on behalf of the authenticated user." }, { "slug": "YOUTUBE_REPORT_VIDEO_ABUSE", "name": "Report Video for Abuse", "description": "Tool to report a YouTube video for containing abusive content. Use when you need to flag videos that violate YouTube's community guidelines or contain harmful content." }, { "slug": "YOUTUBE_SEARCH_YOU_TUBE", "name": "Search YouTube", "description": "Searches YouTube for videos, channels, or playlists using a query term, returning the raw API response." }, { "slug": "YOUTUBE_SET_COMMENT_MODERATION_STATUS", "name": "Set Comment Moderation Status", "description": "Tool to set the moderation status of one or more YouTube comments. Use when moderating comments to hold for review, publish, or reject them. Optionally ban the comment author when rejecting." }, { "slug": "YOUTUBE_SUBSCRIBE_CHANNEL", "name": "Subscribe to channel", "description": "Subscribes the authenticated user to a specified YouTube channel, identified by its unique `channelId` which must be valid and existing." }, { "slug": "YOUTUBE_UNSUBSCRIBE_CHANNEL", "name": "Unsubscribe from channel", "description": "Tool to unsubscribe the authenticated user from a YouTube channel by deleting a subscription. Use when you need to remove an existing subscription. The subscription ID can be obtained from the `YOUTUBE_LIST_USER_SUBSCRIPTIONS` tool." }, { "slug": "YOUTUBE_UPDATE_CAPTION", "name": "Update caption track", "description": "Updates a YouTube caption track's metadata such as name, language, or draft status. Use this to modify existing caption track properties without uploading new caption content. Note: Only properties specified in the snippet will be updated; unspecified properties retain their current values." }, { "slug": "YOUTUBE_UPDATE_CHANNEL", "name": "Update channel", "description": "Updates a channel's metadata including branding settings and localizations. Only brandingSettings, invideoPromotion, and localizations properties can be updated. Requires the channel to be owned by the authenticated user." }, { "slug": "YOUTUBE_UPDATE_CHANNEL_SECTION", "name": "Update Channel Section", "description": "Tool to update an existing YouTube channel section by ID. Use when modifying section properties like title, position, or featured content." }, { "slug": "YOUTUBE_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to modify the text of an existing YouTube comment. Use when updating or correcting a previously posted comment." }, { "slug": "YOUTUBE_UPDATE_PLAYLIST", "name": "Update Playlist", "description": "Tool to modify an existing YouTube playlist's metadata (title, description, privacy status). Use when updating playlist information for the authenticated user's channel." }, { "slug": "YOUTUBE_UPDATE_PLAYLIST_ITEM", "name": "Update Playlist Item", "description": "Tool to modify a playlist item's properties such as position or note. Use when reordering videos in a playlist or updating item metadata." }, { "slug": "YOUTUBE_UPDATE_THUMBNAIL", "name": "Update thumbnail", "description": "Sets the custom thumbnail for a YouTube video using an image from a URL. Requirements: - The authenticated user must own the video or have permission to edit it - The YouTube channel must be verified (phone verification required) to upload custom thumbnails - Image must be JPG, PNG, or GIF; under 2MB; recommended 1280x720 resolution (16:9 aspect ratio)" }, { "slug": "YOUTUBE_UPDATE_VIDEO", "name": "Update video", "description": "Updates metadata for a YouTube video identified by videoId, which must exist; an empty list for tags removes all existing tags." }, { "slug": "YOUTUBE_UPLOAD_VIDEO", "name": "Upload video", "description": "Uploads a video file to a YouTube channel; the video file must be in a YouTube-supported format." } ], "triggers": [ { "slug": "YOUTUBE_NEW_ACTIVITY_TRIGGER", "name": "New YouTube Activity", "description": "Triggers when a new activity is detected on a YouTube channel." }, { "slug": "YOUTUBE_NEW_PLAYLIST_ITEM_TRIGGER", "name": "New Item in YouTube Playlist", "description": "Triggers when a new item is added to a YouTube playlist." }, { "slug": "YOUTUBE_NEW_PLAYLIST_TRIGGER", "name": "New Playlist in YouTube Channel", "description": "Triggers when a new playlist is added to a YouTube channel." }, { "slug": "YOUTUBE_NEW_SUBSCRIPTION_TRIGGER", "name": "New YouTube Channel Subscription", "description": "Triggers when a new channel is subscribed." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAUTH2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/youtube,https://www.googleapis.com/auth/youtube.channel-memberships.creator,https://www.googleapis.com/auth/youtube.force-ssl,https://www.googleapis.com/auth/youtube.readonly,https://www.googleapis.com/auth/youtube.upload,https://www.googleapis.com/auth/youtubepartner,https://www.googleapis.com/auth/youtubepartner-channel-audit" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "slackbot", "name": "Slackbot", "logo": "https://logos.composio.dev/api/slackbot", "description": "Slackbot gives agents workspace-wide read access to a Slack workspace on behalf of the installing user - search messages and files, browse channel and thread history, and look up users and channels - while continuing to post and react as the bot. Includes direct messages and user email addresses so agents can search across DMs and resolve users by email.", "category": "team chat", "authSchemes": [ "OAUTH2" ], "toolCount": 101, "triggerCount": 9, "version": "20260703_00", "tools": [ { "slug": "SLACKBOT_ADD_CALL_PARTICIPANTS", "name": "Add call participants", "description": "Registers new participants added to a Slack call." }, { "slug": "SLACKBOT_ADD_REACTION_TO_AN_ITEM", "name": "Add reaction to message", "description": "Adds a specified emoji reaction to an existing message in a Slack channel, identified by its timestamp; does not remove or retrieve reactions." }, { "slug": "SLACKBOT_ADD_REMOTE_FILE", "name": "Add a remote file", "description": "Adds a reference to an external file (e.g., Google Drive, Dropbox) to Slack for discovery and sharing, requiring a unique `external_id` and an `external_url` accessible by Slack." }, { "slug": "SLACKBOT_ARCHIVE_CONVERSATION", "name": "Archive a Slack conversation", "description": "Archives a Slack conversation by its ID, rendering it read-only and hidden while retaining history, ideal for cleaning up inactive channels; be aware that some channels (like #general or certain DMs) cannot be archived and this may impact connected integrations." }, { "slug": "SLACKBOT_CLOSE_DM", "name": "Close conversation channel", "description": "Closes a Slack direct message (DM) or multi-person direct message (MPDM) channel, removing it from the user's sidebar without deleting history; this action affects only the calling user's view." }, { "slug": "SLACKBOT_CREATE_A_REMINDER", "name": "Create a reminder", "description": "Creates a Slack reminder with specified text and time; time accepts Unix timestamps, seconds from now, or natural language (e.g., 'in 15 minutes', 'every Thursday at 2pm')." }, { "slug": "SLACKBOT_CREATE_CANVAS", "name": "Create Slack Canvas", "description": "Creates a new Slack Canvas with the specified title and optional content." }, { "slug": "SLACKBOT_CREATE_CHANNEL", "name": "Create channel", "description": "Initiates a public or private channel-based conversation in a Slack workspace. Immediately creates the channel; invoke only after explicit user confirmation." }, { "slug": "SLACKBOT_CREATE_LIST", "name": "Create Slack List", "description": "Creates a new Slack List via `slackLists.create`. Provide a `name` and, optionally, a `description_blocks` description and a `schema` of typed columns. You can instead copy an existing List's structure with `copy_from_list_id` (and its rows via `include_copied_list_records`), or enable task-tracking columns with `todo_mode`. Returns the new List's `list_id`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_CREATE_LIST_ITEM", "name": "Create Slack List item", "description": "Creates a new item (row) in a Slack List via `slackLists.items.create`. Set initial cell values with `initial_fields`; text columns require Block Kit `rich_text` (a plain string is wrapped automatically). Optionally duplicate an existing row with `duplicated_item_id` or create a subtask with `parent_item_id`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_CREATE_USER_GROUP", "name": "Create a Slack user group", "description": "Creates a new User Group (often referred to as a subteam) in a Slack workspace." }, { "slug": "SLACKBOT_CUSTOMIZE_URL_UNFURL", "name": "Customize URL unfurl", "description": "Customizes URL previews (unfurling) in a specific Slack message using a URL-encoded JSON in `unfurls` to define custom content or remove existing previews." }, { "slug": "SLACKBOT_DELETE_CANVAS", "name": "Delete Slack Canvas", "description": "Deletes a Slack Canvas permanently and irreversibly. Always confirm with the user before calling this tool." }, { "slug": "SLACKBOT_DELETE_FILE", "name": "Delete a file by ID", "description": "Permanently deletes an existing file from a Slack workspace using its unique file ID; this action is irreversible and also removes any associated comments or shares." }, { "slug": "SLACKBOT_DELETE_FILE_COMMENT", "name": "Delete file comment", "description": "Deletes a specific comment from a file in Slack; this action is irreversible." }, { "slug": "SLACKBOT_DELETE_LIST_ACCESS", "name": "Delete Slack List access", "description": "Revokes sharing access on a Slack List via `slackLists.access.delete`. Provide the `list_id` and EXACTLY ONE of `channel_ids` or `user_ids` (they are mutually exclusive) to remove access for those channels or users. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_DELETE_LIST_ITEM", "name": "Delete Slack List item", "description": "Deletes an item (row) from a Slack List via `slackLists.items.delete`. Identify the List with `list_id` and the row to remove with `id`. Deletion is permanent and cannot be undone. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_DELETE_MULTIPLE_LIST_ITEMS", "name": "Delete multiple Slack List items", "description": "Deletes several items (rows) from a Slack List in one call via `slackLists.items.deleteMultiple`. This operation is ALL-OR-NOTHING: Slack returns a single `{\"ok\": true}` on success or `{\"ok\": false, \"error\": ...}` on failure, with NO per-item result array, so partial state cannot be reported. On failure, treat the whole batch as not deleted and retry the entire batch. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_DELETE_REMINDER", "name": "Delete a Slack reminder", "description": "Deletes an existing Slack reminder, typically when it is no longer relevant or a task is completed; this operation is irreversible." }, { "slug": "SLACKBOT_DELETES_A_MESSAGE_FROM_A_CHAT", "name": "Delete a message from a chat", "description": "Deletes a message, identified by its channel ID and timestamp, from a Slack channel, private group, or direct message conversation; the authenticated user or bot must be the original poster." }, { "slug": "SLACKBOT_DELETE_SCHEDULED_MESSAGE", "name": "Delete scheduled chat message", "description": "Deletes a pending, unsent scheduled message from the specified Slack channel, identified by its `scheduled_message_id`." }, { "slug": "SLACKBOT_DISABLE_USER_GROUP", "name": "Disable a Slack user group", "description": "Disables a specified, currently enabled Slack User Group by its unique ID, effectively archiving it by setting its 'date_delete' timestamp; the group is not permanently deleted and can be re-enabled." }, { "slug": "SLACKBOT_DOWNLOAD_FILE", "name": "Download Slack file", "description": "Tool to download Slack file content and convert it to a publicly accessible URL. Use when you need to retrieve and download files that have been shared in Slack channels or conversations." }, { "slug": "SLACKBOT_EDIT_CANVAS", "name": "Edit Slack Canvas", "description": "Edits a Slack Canvas with granular control over content placement. Supports replace, insert (before/after/start/end) operations for flexible content management." }, { "slug": "SLACKBOT_ENABLE_PUBLIC_SHARING_OF_A_FILE", "name": "Share file public url", "description": "Enables public sharing for an existing Slack file by generating a publicly accessible URL; this action does not create new files. Once enabled, the file is accessible to anyone with the URL — verify intent before sharing sensitive or confidential files." }, { "slug": "SLACKBOT_ENABLE_USER_GROUP", "name": "Enable a user group", "description": "Enables a disabled User Group in Slack using its ID, reactivating it for mentions and permissions; this action only changes the enabled status and cannot create new groups or modify other properties." }, { "slug": "SLACKBOT_END_CALL", "name": "End a call", "description": "Ends an ongoing Slack call, identified by its ID (obtained from `calls.add`), optionally specifying the call's duration." }, { "slug": "SLACKBOT_FETCH_CONVERSATION_HISTORY", "name": "Fetch conversation history", "description": "Fetches a chronological list of messages and events from a specified Slack conversation, accessible by the authenticated user/bot, with options for pagination and time range filtering. IMPORTANT LIMITATION: This action only returns messages from the main channel timeline. Threaded replies are NOT returned by this endpoint. To retrieve threaded replies, use the SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION action (conversations.replies API) instead. The oldest/latest timestamp filters work reliably for filtering the main channel timeline, but cannot be used to retrieve individual threaded replies - even if you know the exact reply timestamp, setting oldest=latest to that timestamp will return an empty messages array. To get threaded replies: 1. Use this action to get parent messages (which include thread_ts, reply_count, latest_reply fields) 2. Use SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION with the parent's thread_ts to fetch all replies in that thread" }, { "slug": "SLACKBOT_FETCH_ITEM_REACTIONS", "name": "Fetch item reactions", "description": "Fetches reactions for a Slack message, file, or file comment. Exactly one identifier path must be provided: `channel`+`timestamp`, `file`, or `file_comment`. Mixing identifiers (e.g., providing both `channel`+`timestamp` and `file`) causes errors. If the response omits the `reactions` field, the item has zero reactions." }, { "slug": "SLACKBOT_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION", "name": "Retrieve conversation replies", "description": "Retrieves replies to a specific parent message in a Slack conversation, using the channel ID and the parent message's timestamp (`ts`). Note: The parent message in the response contains metadata (reply_count, reply_users, latest_reply) that indicates expected thread activity. If the returned messages array contains fewer replies than reply_count indicates, check: (1) has_more=true means pagination is needed, (2) recently posted replies may have timing delays, (3) some replies may be filtered by permissions or deleted. The composio_execution_message field will warn about any detected mismatches." }, { "slug": "SLACKBOT_FETCH_TEAM_INFO", "name": "Fetch team info", "description": "Fetches comprehensive metadata about the current Slack team, or a specified team if the provided ID is accessible." }, { "slug": "SLACKBOT_FIND_CHANNELS", "name": "Find channels", "description": "Find channels in a Slack workspace by any criteria - name, topic, purpose, or description. Returns channel IDs (C*/G* prefixed) required by most Slack tools — always resolve names to IDs here before passing to other tools. NOTE: This action searches channels and conversations visible to the authenticated user. Empty results may indicate: - No channels match the search query in name, topic, or purpose - The target private channel or DM is not accessible to the authenticated user because they are not a member - The connection lacks required read scopes (channels:read, groups:read, im:read, mpim:read). If empty, retry with exact_match=false or exclude_archived=false to avoid false negatives. In large workspaces, paginate using next_cursor to avoid missing matches. Check 'composio_execution_message' and 'total_channels_searched' in the response for details." }, { "slug": "SLACKBOT_FIND_USER_BY_EMAIL_ADDRESS", "name": "Lookup users by email", "description": "Retrieves the Slack user object for an active user by their registered email address; requires the users:read.email OAuth scope. Fails with 'users_not_found' if the email is unregistered, the user is inactive, the account is a guest, or the email is hidden by workspace privacy settings." }, { "slug": "SLACKBOT_FIND_USERS", "name": "Find users", "description": "Find users in a Slack workspace by any criteria - email, name, display name, or other text. Includes optimized email lookup for exact email matches. Zero results may reflect email visibility restrictions or workspace policies, not global absence. Repeated calls may trigger HTTP 429; honor the Retry-After header." }, { "slug": "SLACKBOT_GET_BOT_USER", "name": "Fetch bot user information", "description": "Fetches information for a specified, existing Slack bot user; will not work for regular user accounts or other integration types." }, { "slug": "SLACKBOT_GET_CALL_INFO", "name": "Retrieve call information", "description": "Retrieves a point-in-time snapshot of a specific Slack call's information." }, { "slug": "SLACKBOT_GET_CANVAS", "name": "Get Slack Canvas (Deprecated)", "description": "DEPRECATED: Use SLACK_RETRIEVE_DETAILED_INFORMATION_ABOUT_A_FILE instead. Retrieves a specific Slack Canvas by its ID, including its content and metadata." }, { "slug": "SLACKBOT_GET_LIST_ITEM", "name": "Get Slack List item", "description": "Fetches a single item (row) from a Slack List via `slackLists.items.info`. Returns the row's `column_id`-keyed typed values along with metadata about the parent List. Set `include_is_subscribed` to also report whether the calling user is subscribed to the row. Requires a user token with the `lists:read` scope." }, { "slug": "SLACKBOT_GET_REMINDER", "name": "Get reminder information", "description": "Retrieves detailed information for an existing Slack reminder specified by its ID; this is a read-only operation." }, { "slug": "SLACKBOT_GET_REMOTE_FILE", "name": "Get remote file", "description": "Retrieve information about a remote file added to Slack via the files.remote API. Does not work for standard Slack-hosted file uploads." }, { "slug": "SLACKBOT_GET_TEAM_PROFILE", "name": "Retrieve team profile details", "description": "Retrieves all profile field definitions for a Slack team, optionally filtered by visibility, to understand the team's profile structure." }, { "slug": "SLACKBOT_GET_UNREAD_MESSAGES_FROM_USER", "name": "Get unread messages from user", "description": "Retrieves unread direct messages from a specific user by opening their DM conversation, checking for unread messages, and fetching message history since the last read timestamp. Use this action when you need to check if a specific user has sent unread direct messages to the authenticated user, or when monitoring incoming DMs from particular users. Returns an empty messages array if there are no unread messages from the specified user. Note: This action only works for direct messages (DMs), not channel messages or group conversations." }, { "slug": "SLACKBOT_GET_USER_DND_STATUS", "name": "Get team DND status", "description": "Retrieves a user's current Do Not Disturb status." }, { "slug": "SLACKBOT_GET_USER_PRESENCE", "name": "Retrieve user presence", "description": "Retrieves a Slack user's current real-time presence (e.g., 'active', 'away') to determine their availability, noting this action does not provide historical data or status reasons." }, { "slug": "SLACKBOT_INVITE_USERS_TO_A_CHANNEL", "name": "Invite users to a Slack channel", "description": "Invites users to an existing Slack channel using their valid Slack User IDs. Response is always HTTP 200; inspect `ok`, `error`, and `errors` fields to confirm users were added." }, { "slug": "SLACKBOT_JOIN_AN_EXISTING_CONVERSATION", "name": "Join conversation by channel id", "description": "Joins an existing Slack conversation (public channel, private channel, or multi-person direct message) by its ID, if the authenticated user has permission. Joining an already-joined channel returns a non-fatal no-op response. Private or restricted channel joins may fail with a permission error." }, { "slug": "SLACKBOT_LEAVE_CONVERSATION", "name": "Leave conversation channel", "description": "Leaves a Slack conversation given its channel ID; fails if leaving as the last member of a private channel or if used on a Slack Connect channel." }, { "slug": "SLACKBOT_LIST_ALL_CHANNELS", "name": "List all channels", "description": "Lists conversations available to the user with various filters and search options. Always use resolved `channel_id` (not display names) for downstream operations, as names may be non-unique. The `created` field in results is a Unix epoch timestamp (UTC). Pagination across large workspaces may return HTTP 429 with a `Retry-After` header; honor the delay and resume from the last successful cursor." }, { "slug": "SLACKBOT_LIST_ALL_USERS", "name": "List all users", "description": "Retrieves a paginated list of all users with profile details, status, and team memberships in a Slack workspace; data may not be real-time. Filter response fields `is_bot`, `is_app_user`, and `deleted` to build human-only rosters. Profile fields like `email` and `phone` may be absent depending on OAuth scopes and workspace privacy settings. Guest/restricted accounts may be omitted based on scopes—do not treat results as a complete directory. High-frequency calls risk HTTP 429; honor the `Retry-After` header and throttle to ~1–2 requests/second. Use stable user IDs rather than display names for mapping. Prefer SLACK_FIND_USERS for targeted lookups; cache results to avoid full-workspace fetches." }, { "slug": "SLACKBOT_LIST_AVAILABLE_WORKSPACES", "name": "List available workspaces", "description": "List Slack workspaces where both the connection and target user have access. Returns each workspace's team_id and name. Use this when: (1) the user references a workspace by name, (2) a user-specific tool requires team_id and you don't have one, or (3) a user-specific call fails with a team/workspace access error. Match the user's workspace name to a team_id from the results and pass that team_id to subsequent tools. If the name matches zero or multiple workspaces, ask the user to clarify. Only meaningful for org-level installs; single-workspace connections return the workspace only if the specified user's membership is visible to this token." }, { "slug": "SLACKBOT_LIST_CANVASES", "name": "List Slack Canvases (Deprecated)", "description": "DEPRECATED: Use SLACK_LIST_FILES_WITH_FILTERS_IN_SLACK instead (pass types=\"canvas\" for equivalent behavior). Lists Slack Canvases with filtering by channel, user, timestamp, and page-based pagination. Uses Slack's files.list API with types=canvas filter. Only canvases accessible to the authenticated app are returned; missing canvases indicate permissions restrictions, not empty data. Use `paging.pages` in the response to determine total pages; iterate `page` with `count` to retrieve all results. Known limitations: - The 'user' filter may return canvases accessible to the specified user, not just canvases they created. - The 'ts_from' and 'ts_to' timestamp filters may not work reliably for canvas types. Consider client-side filtering on the 'created' field in the response if precise date filtering is required." }, { "slug": "SLACKBOT_LIST_CONVERSATIONS", "name": "List conversations", "description": "List conversations (channels/DMs) accessible to a specified user (or the authenticated user if no user ID is provided), respecting shared membership for non-public channels. Returns conversation IDs (C* for channels, G* for group DMs), not display names. Absence of private channels, DMs, or MPIMs from results indicates token scope or membership limits, not that the conversation is nonexistent." }, { "slug": "SLACKBOT_LIST_CUSTOM_EMOJIS", "name": "List team custom emojis", "description": "Retrieves all custom emojis for the Slack workspace (image URLs or aliases), not standard Unicode emojis; does not include usage statistics or creation dates." }, { "slug": "SLACKBOT_LIST_FILES_WITH_FILTERS_IN_SLACK", "name": "List Slack files", "description": "Lists files and their metadata within a Slack workspace, filterable by user, channel, timestamp, or type; returns metadata only, not file content. Results are limited to files visible to the authenticated user — files in private channels or restricted to certain members require appropriate membership and permissions. For large workspaces, check `paging.pages` in the response to determine total pages when paginating." }, { "slug": "SLACKBOT_LIST_LIST_ITEMS", "name": "List Slack List items", "description": "Lists the rows (items) in a Slack List via `slackLists.items.list`. Each row exposes `column_id`-keyed typed values (e.g. `rich_text`, `select`, `user`, `date`, `number`); the legacy `key`/`value` fields are deprecated. Results are cursor-paginated—you must paginate using `response_metadata.next_cursor` until it is empty, or rows are silently truncated to the first page. Set `archived=true` to return archived rows instead of active ones. Requires a user token with the `lists:read` scope." }, { "slug": "SLACKBOT_LIST_PINNED_ITEMS", "name": "List pinned items in a channel", "description": "Retrieves all messages and files pinned to a specified channel; the caller must have access to this channel." }, { "slug": "SLACKBOT_LIST_REMINDERS", "name": "List reminders", "description": "Lists all reminders with their details for the authenticated Slack user; returns an empty array if no reminders exist (valid state, not an error). Reminder text is not unique—perform client-side matching on returned objects before extracting a reminder ID for use with SLACK_DELETE_A_SLACK_REMINDER." }, { "slug": "SLACKBOT_LIST_REMOTE_FILES", "name": "List remote files", "description": "Retrieve information about a team's remote files." }, { "slug": "SLACKBOT_LIST_UNREAD_CHANNEL_MESSAGES", "name": "List unread channel messages", "description": "Lists all unread messages in a specified Slack channel for the authenticated user. This action fetches messages that have been posted since the user's last read position in the channel. Use this action when you need to retrieve messages the user hasn't seen yet. The action determines the user's read position and returns all messages posted after that timestamp. Note: This only returns messages from the main channel timeline, not threaded replies. For threaded replies, use SLACK_FETCH_MESSAGE_THREAD_FROM_A_CONVERSATION." }, { "slug": "SLACKBOT_LIST_USER_GROUP_MEMBERS", "name": "List all users in a user group", "description": "Retrieves a list of all user IDs within a specified Slack user group, with an option to include users from disabled groups." }, { "slug": "SLACKBOT_LIST_USER_GROUPS", "name": "List user groups", "description": "Lists user groups in a Slack workspace, including user-created and default groups; results for large workspaces may be paginated." }, { "slug": "SLACKBOT_LIST_USER_REACTIONS", "name": "List user reactions", "description": "Lists all reactions added by a specific user to messages, files, or file comments in Slack, useful for engagement analysis when the item content itself is not required. Results are paginated; check `response_metadata.next_cursor` and iterate with the `cursor` parameter to retrieve complete reaction history." }, { "slug": "SLACKBOT_LOOKUP_CANVAS_SECTIONS", "name": "Lookup Canvas Sections", "description": "Looks up section IDs in a Slack Canvas for use with targeted edit operations. Section IDs are needed for insert_after, insert_before, delete, and section-specific replace operations." }, { "slug": "SLACKBOT_OPEN_DM", "name": "Open DM", "description": "Opens or resumes a Slack direct message (DM) or multi-person direct message (MPIM) by providing either user IDs or an existing channel ID. Returns `already_open=true` when the DM exists — treat as success and reuse the returned `channel.id` (starts with 'D') for subsequent SLACK_SEND_MESSAGE calls; passing a username, email, or user ID directly to SLACK_SEND_MESSAGE causes `channel_not_found`. Avoid redundant calls when an existing DM channel ID is available." }, { "slug": "SLACKBOT_PIN_ITEM", "name": "Pin an item to a channel", "description": "Pins a message to a specified Slack channel; the message must not already be pinned." }, { "slug": "SLACKBOT_REMOVE_CALL_PARTICIPANTS", "name": "Remove call participants", "description": "Registers participants removed from a Slack call." }, { "slug": "SLACKBOT_REMOVE_REACTION_FROM_ITEM", "name": "Remove reaction from item", "description": "Removes an emoji reaction from a message, file, or file comment in Slack. Provide exactly one targeting method: channel+timestamp together, file, or file_comment. Mixing methods or omitting all returns invalid_arguments." }, { "slug": "SLACKBOT_REMOVE_REMOTE_FILE", "name": "Remove remote file", "description": "Removes the Slack reference to an external file (which must have been previously added via the remote files API), specified by either its `external_id` or `file` ID (one of which is required), without deleting the actual external file." }, { "slug": "SLACKBOT_REMOVE_USER_FROM_CONVERSATION", "name": "Remove user from conversation", "description": "Removes a specified user from a Slack conversation (channel); the caller must have permissions to remove users and cannot remove themselves using this action." }, { "slug": "SLACKBOT_RENAME_CONVERSATION", "name": "Rename a conversation", "description": "Renames a Slack channel, automatically adjusting the new name to meet naming conventions (e.g., converting to lowercase), which may affect integrations using the old name." }, { "slug": "SLACKBOT_RETRIEVE_CONVERSATION_INFORMATION", "name": "Retrieve conversation information", "description": "Retrieves metadata for a Slack conversation by ID (e.g., name, purpose, creation date, with options for member count/locale), excluding message content. The `channel` parameter is effectively required. Private channels, DMs, or channels where the app lacks membership may return restricted data; check `is_archived` and `is_member` fields in the response to diagnose access issues. Bulk lookups may trigger HTTP 429 rate limiting; honor the `Retry-After` response header." }, { "slug": "SLACKBOT_RETRIEVE_CONVERSATION_MEMBERS_LIST", "name": "Get conversation members", "description": "Retrieves a paginated list of active member IDs (not names, emails, or presence) for a specified Slack public channel, private channel, DM, or MPIM. Returns only user IDs; use a user-lookup tool to enrich member data." }, { "slug": "SLACKBOT_RETRIEVE_CURRENT_USER_DND_STATUS", "name": "Retrieve user DND status", "description": "Retrieves a Slack user's current Do Not Disturb (DND) status to determine their availability before interaction; any specified user ID must be a valid Slack user ID." }, { "slug": "SLACKBOT_RETRIEVE_DETAILED_INFORMATION_ABOUT_A_FILE", "name": "Retrieve detailed file information", "description": "Retrieves detailed metadata and paginated comments for a specific Slack file ID; does not download file content." }, { "slug": "SLACKBOT_RETRIEVE_DETAILED_USER_INFORMATION", "name": "Retrieve detailed user information", "description": "Retrieves comprehensive information for a valid Slack user ID, excluding message history and channel memberships. Sensitive fields like `email` and `phone` require the `users:read.email` scope and may be silently omitted based on workspace privacy policies." }, { "slug": "SLACKBOT_RETRIEVE_USER_PROFILE_INFORMATION", "name": "Retrieve user profile information", "description": "Retrieves profile information for a specified Slack user (defaults to the authenticated user if `user` ID is omitted); a provided `user` ID must be valid. Sensitive fields like email and phone may be silently omitted if required scopes (e.g., `users:read.email`) are not granted or workspace privacy policies restrict access." }, { "slug": "SLACKBOT_REVOKE_FILE_PUBLIC_SHARING", "name": "Revoke a file's public url", "description": "Revokes a Slack file's public URL, making it private; this is a no-op if not already public and is irreversible." }, { "slug": "SLACKBOT_SCHEDULE_MESSAGE", "name": "Schedule message", "description": "Schedules a message to a Slack channel, DM, or private group for a future time (`post_at`), requiring `text`, `blocks`, or `attachments` for content; scheduling is limited to 120 days in advance." }, { "slug": "SLACKBOT_SEARCH_ALL", "name": "Search all content", "description": "Tool to search all messages and files. Use when you need unified content search across channels and files in one call. Results are scoped to content visible to the authenticated token; missing hits in private or restricted channels reflect permission/membership gaps. Response separates messages and files into distinct sections — explicitly read the files section for document results. Results are index-based and may lag several minutes behind real-time; use SLACK_FETCH_CONVERSATION_HISTORY for near-real-time per-channel coverage. Paginated searches exceeding ~1 req/sec may return HTTP 429 too_many_requests; honor the Retry-After header and resume from the last page." }, { "slug": "SLACKBOT_SEARCH_MESSAGES", "name": "Search messages", "description": "Workspace‑wide Slack message search with date ranges and filters. Use `query` modifiers (e.g., in:#channel, from:@user, before/after:YYYY-MM-DD), sorting (score/timestamp), and pagination." }, { "slug": "SLACKBOT_SEND_EPHEMERAL_MESSAGE", "name": "Send ephemeral message", "description": "Sends an ephemeral message visible only to the specified `user` in a channel; other channel members cannot see it. Both the bot and the target user must be members of the specified channel." }, { "slug": "SLACKBOT_SEND_ME_MESSAGE", "name": "Share a me message in a channel", "description": "Sends a 'me message' (e.g., '/me is typing') to a Slack channel, where it's displayed as a third-person user action; messages are plain text and the channel must exist and be accessible." }, { "slug": "SLACKBOT_SEND_MESSAGE", "name": "Send message", "description": "Posts a message to a Slack channel, DM, or private group. Provide exactly one visible content mode: `markdown_text` for normal Markdown content, or `blocks` for raw Slack Block Kit layouts. Use `fallback_text` only with `blocks`; it maps to Slack's top-level `text` fallback. Fails with `not_in_channel`, `channel_not_found`, or `channel_is_archived` if the bot lacks access. Rate-limited at ~1 req/sec (HTTP 429, honor `Retry-After`). Not idempotent — duplicate calls post duplicate messages." }, { "slug": "SLACKBOT_SET_CONVERSATION_PURPOSE", "name": "Set a conversation's purpose", "description": "Sets the purpose (a short description of its topic/goal, displayed in the header) for a Slack conversation; the calling user must be a member." }, { "slug": "SLACKBOT_SET_LIST_ACCESS", "name": "Set Slack List access", "description": "Grants or sets sharing access on a Slack List via `slackLists.access.set`. Grant `read`, `write`, or `owner` access to either channels (`channel_ids`) or users (`user_ids`) — exactly one of the two is required. The `owner` level is user-only and subject to additional server-side rules. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_SET_READ_CURSOR_IN_A_CONVERSATION", "name": "Set conversation read cursor", "description": "Marks a message, specified by its timestamp (`ts`), as the most recently read for the authenticated user in the given `channel`, provided the user is a member of the channel and the message exists within it." }, { "slug": "SLACKBOT_SET_THE_TOPIC_OF_A_CONVERSATION", "name": "Set conversation topic", "description": "Sets or updates the topic for a specified Slack conversation." }, { "slug": "SLACKBOT_SET_USER_ACTIVE", "name": "Mark user as active", "description": "Tool to mark a user as active in Slack. Note: This endpoint is deprecated and non-functional - it exists for backwards compatibility but does not perform any action." }, { "slug": "SLACKBOT_SET_USER_PRESENCE", "name": "Set user presence", "description": "Manually sets a user's Slack presence, overriding automatic detection; this setting persists across connections but can be overridden by user actions or Slack's auto-away (e.g., after 10 mins of inactivity)." }, { "slug": "SLACKBOT_SHARE_REMOTE_FILE", "name": "Share a remote file in channels", "description": "Shares a remote file, which must already be registered with Slack, into specified Slack channels or direct message conversations." }, { "slug": "SLACKBOT_START_CALL", "name": "Start call", "description": "Registers a new call in Slack using `calls.add` for third-party call integration; `created_by` is required if not using a user-specific token." }, { "slug": "SLACKBOT_UNARCHIVE_CHANNEL", "name": "Unarchive channel", "description": "Reverses conversation archival." }, { "slug": "SLACKBOT_UNPIN_ITEM", "name": "Unpin message from channel", "description": "Unpins a message, identified by its timestamp, from a specified channel if the message is currently pinned there; this operation is destructive." }, { "slug": "SLACKBOT_UPDATE_CALL_INFO", "name": "Update call information", "description": "Updates the title, join URL, or desktop app join URL for an existing Slack call identified by its ID." }, { "slug": "SLACKBOT_UPDATE_LIST", "name": "Update Slack List", "description": "Updates a Slack List's metadata via `slackLists.update`. Only the List's `name`, `description_blocks`, and `todo_mode` are editable here. The List to update is identified by its `id` (not `list_id`). Descriptions are rich text — a plain string is wrapped into a `rich_text` block automatically. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_UPDATE_LIST_ITEM", "name": "Update Slack List item", "description": "Updates one or more cells in an EXISTING Slack List row via `slackLists.items.update`. Each cell is identified by `row_id` (an existing row ID matching `^Rec[A-Z0-9]{8,}$`) and `column_id` and carries a typed value; text columns require Block Kit `rich_text` (a plain string is wrapped automatically), and `select` takes the column's choice values (e.g. `[\"todo\"]`). Use it to UPDATE existing rows; the live API rejects `row_id_to_create` inside a cell (despite Slack's inline example), so to ADD a row use `create_slack_list_item`. Requires a user token with the `lists:write` scope." }, { "slug": "SLACKBOT_UPDATE_REMOTE_FILE", "name": "Update an existing remote file", "description": "Updates metadata or content details for an existing remote file in Slack; this action cannot upload new files or change the fundamental file type." }, { "slug": "SLACKBOT_UPDATES_A_MESSAGE", "name": "Update a Slack message", "description": "Updates a Slack message by timestamp. Provide exactly one visible content mode: `markdown_text` for normal Markdown content, or `blocks` for raw Slack Block Kit layouts. Use `fallback_text` only with `blocks`; it maps to Slack's top-level `text` fallback." }, { "slug": "SLACKBOT_UPDATE_USER_GROUP", "name": "Update Slack user group", "description": "Updates an existing Slack User Group, which must be specified by an existing `usergroup` ID, with new optional details such as its name, description, handle, or default channels." }, { "slug": "SLACKBOT_UPDATE_USER_GROUP_MEMBERS", "name": "Update user group members", "description": "Replaces all members of an existing Slack User Group with a new list of valid user IDs." }, { "slug": "SLACKBOT_UPLOAD_OR_CREATE_A_FILE_IN_SLACK", "name": "Upload or create a file in Slack", "description": "Upload files, images, screenshots, documents, or any media to Slack channels or threads. Supports all file types including images (PNG, JPG, JPEG, GIF), documents (PDF, DOCX, TXT), code files, and more. Can share files publicly in channels or as thread replies with optional comments. Large files may fail with `upload_too_large`; use SLACK_ADD_A_REMOTE_FILE_FROM_A_SERVICE for large uploads. If the API returns `ok=false` with `method_deprecated`, fall back to SLACK_ADD_A_REMOTE_FILE_FROM_A_SERVICE or SLACK_SEND_MESSAGE with a URL." } ], "triggers": [ { "slug": "SLACKBOT_CHANNEL_CREATED", "name": "New Channel Created Trigger", "description": "Triggered when a new channel is created in Slack." }, { "slug": "SLACKBOT_CHANNEL_MESSAGE_RECEIVED", "name": "Channel Message Received", "description": "Triggered when a message is posted in a Slack channel\n (public, private, or multi-party IM). Does NOT match direct messages." }, { "slug": "SLACKBOT_DIRECT_MESSAGE_RECEIVED", "name": "Direct Message Received", "description": "Triggered when a new direct message (DM) is sent to a user in Slack.\n Catches all DMs across all DM channels." }, { "slug": "SLACKBOT_MESSAGE_REACTION_ADDED", "name": "Message Reaction Added", "description": "Triggered when a reaction is added to a message in Slack.\n Supports optional filtering by channel and emoji name." }, { "slug": "SLACKBOT_MESSAGE_REACTION_REMOVED", "name": "Message Reaction Removed", "description": "Triggered when a reaction is removed from a message in Slack.\n Supports optional filtering by channel and emoji name." }, { "slug": "SLACKBOT_REACTION_ADDED", "name": "Reaction Added Trigger", "description": "DEPRECATED: use `SLACK_MESSAGE_REACTION_ADDED` instead.\n\n Triggered when a reaction is added to a message in Slack." }, { "slug": "SLACKBOT_REACTION_REMOVED", "name": "Reaction Removed Trigger", "description": "DEPRECATED: use `SLACK_MESSAGE_REACTION_REMOVED` instead.\n\n Triggered when a reaction is removed from a message." }, { "slug": "SLACKBOT_RECEIVE_BOT_MESSAGE", "name": "New Bot Message Received Trigger", "description": "DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` with\n `is_bot_message=true` instead.\n\n Triggered when a new bot message is posted to a Slack channel." }, { "slug": "SLACKBOT_RECEIVE_MESSAGE", "name": "New Message Received Trigger", "description": "DEPRECATED: use `SLACK_CHANNEL_MESSAGE_RECEIVED` instead.\n\n Triggered when a new message is posted to a Slack channel." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "slack_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Bot Scopes", "type": "string", "description": "Scopes to request from the bot", "required": false, "default": "channels:history,chat:write,team:read,channels:read,users:read,reactions:read,reactions:write" }, { "name": "verification_token", "displayName": "Verification Token", "type": "string", "description": "Verification token required to verify the request is coming from slack. You can find it in the slack app settings just below the client id and secret. It is required to enable Slack triggers.", "required": false, "default": null } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "generic_id", "displayName": "Slack Team ID", "type": "string", "description": "Optional Slack workspace ID used to scope the OAuth authorize flow to a specific team. When provided, Slack will only allow installation in this workspace. Leave unset to let users pick any workspace they have access to.", "required": false, "default": null } ] } } } ] }, { "slug": "canvas", "name": "Canvas", "logo": "https://logos.composio.dev/api/canvas", "description": "Canvas is a learning management system supporting online courses, assignments, grading, and collaboration, widely used by schools and universities for virtual classrooms", "category": "online courses", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 574, "triggerCount": 6, "version": "20260703_00", "tools": [ { "slug": "CANVAS_ABORT_QUIZ_REPORT_GENERATION", "name": "Abort Quiz Report Generation", "description": "Aborts the generation of a quiz report or removes a previously generated one. Use when you need to cancel a report generation request or clean up an old report." }, { "slug": "CANVAS_ADD_CONVERSATION_MESSAGE", "name": "Add conversation message", "description": "Tool to add a message to an existing Canvas conversation. Use when sending a follow-up message to a conversation thread with specified recipients." }, { "slug": "CANVAS_ADD_COURSE_TO_FAVORITES", "name": "Add course to favorites", "description": "Tool to add a course to the current user's favorites. Use when you need to favorite a course for the authenticated user. If the course is already in the user's favorites, nothing happens." }, { "slug": "CANVAS_ADD_GROUP_TO_FAVORITES", "name": "Add group to favorites", "description": "Tool to add a group to the current user's favorites. Use when you need to mark a group as favorite for the authenticated user. If the group is already in the user's favorites, nothing happens." }, { "slug": "CANVAS_ADD_LAST_ATTENDED_DATE", "name": "Add last attended date", "description": "Tool to add or update the last attended date for a student enrollment in a course. Use when tracking student attendance by recording the last date a student attended the course." }, { "slug": "CANVAS_ADD_RECIPIENTS_TO_CONVERSATION", "name": "Add recipients to conversation", "description": "Tool to add recipients to an existing group conversation. Use when you need to add new participants to an ongoing conversation. Response includes the latest message showing who was added." }, { "slug": "CANVAS_ADD_USERS_TO_CONTENT_SHARE", "name": "Add users to content share", "description": "Tool to send a previously created content share to additional users. Use when you need to add more recipients to an existing content share." }, { "slug": "CANVAS_ANSWER_QUIZ_QUESTIONS", "name": "Answer quiz questions", "description": "Tool to provide or update answers to quiz questions for a quiz submission. Use when submitting answers for a quiz attempt. Requires a valid validation_token from quiz submission creation and the latest attempt number." }, { "slug": "CANVAS_ASSIGN_UNASSIGNED_MEMBERS_TO_GROUP_CATEGORY", "name": "Assign unassigned members to group category", "description": "Tool to assign unassigned members to groups within a group category. Use when you need to distribute users who are not yet in any group within the category. Returns a Progress object for async tracking by default, or group memberships when sync=true." }, { "slug": "CANVAS_CLEAR_COURSE_NICKNAMES", "name": "Clear Course Nicknames", "description": "Tool to remove all stored course nicknames for the current user. Use when you need to clear all custom course name preferences." }, { "slug": "CANVAS_CLOSE_NOTIFICATION_FOR_USER", "name": "Close notification for user", "description": "Tool to excuse/close an account notification for the current user. Use when the current user no longer wants to see a specific notification. If the `remove` parameter is set to true, the notification is permanently destroyed for all users (admin action)." }, { "slug": "CANVAS_CONCLUDE_DEACTIVATE_OR_DELETE_ENROLLMENT", "name": "Conclude, deactivate, or delete an enrollment", "description": "Tool to conclude, deactivate, or delete an enrollment in a Canvas course. Use when you need to end or remove a user's enrollment. If the task argument isn't given, the enrollment will be concluded." }, { "slug": "CANVAS_COPY_FILE_TO_FOLDER", "name": "Copy File to Folder", "description": "Copies an existing Canvas file to a specified destination folder. Use when you need to duplicate a file to another location." }, { "slug": "CANVAS_COPY_FOLDER", "name": "Copy Folder", "description": "Tool to copy a folder to another folder in Canvas. Use when you need to duplicate a folder structure with its contents to a destination folder." }, { "slug": "CANVAS_CREATE_ACCOUNT_NOTIFICATION", "name": "Create account notification", "description": "Creates a global notification within a Canvas account, ensuring `end_at` is after `start_at` and any specified `notification_roles` are valid." }, { "slug": "CANVAS_CREATE_A_CONTENT_MIGRATION4", "name": "Create a user content migration", "description": "Tool to create a content migration for a Canvas user. Use when you need to import content into a user's files from various sources (zip files, cartridges, etc.). If the migration requires a file upload, the actual processing starts once the file upload completes." }, { "slug": "CANVAS_CREATE_APPOINTMENT_GROUP", "name": "Create appointment group", "description": "Creates a new appointment group in Canvas for schedulable time slots within specified course or group contexts." }, { "slug": "CANVAS_CREATE_ASSIGNMENT", "name": "Create an assignment", "description": "Creates a new assignment within a specified course in Canvas LMS." }, { "slug": "CANVAS_CREATE_ASSIGNMENT_GRAPH_QL", "name": "Create assignment via GraphQL", "description": "Tool to create a new assignment in a Canvas course using the GraphQL API. Use when you need to create assignments with detailed configuration options including peer reviews, moderated grading, or assignment overrides." }, { "slug": "CANVAS_CREATE_ASSIGNMENT_GROUP", "name": "Create assignment group", "description": "Create a new assignment group for a course. Use when you need to add a new assignment group to organize assignments in a Canvas course." }, { "slug": "CANVAS_CREATE_ASSIGNMENT_OVERRIDE", "name": "Create assignment override", "description": "Creates an assignment override to adjust due/unlock/lock dates for an assignment in a course, targeting specific students (requires `title`), a group, or a course section; at least one target (`student_ids`, `group_id`, or `course_section_id`) is required." }, { "slug": "CANVAS_CREATE_BATCH_OVERRIDES_IN_A_COURSE", "name": "Batch create overrides in a course", "description": "Tool to batch create assignment overrides for multiple assignments in a course. Use when creating multiple overrides at once in a transactional manner (all succeed or none are created). Each override requires assignment_id and one of student_ids, group_id, or course_section_id." }, { "slug": "CANVAS_CREATE_BLACKOUT_DATE_FOR_COURSE", "name": "Create blackout date for course", "description": "Tool to create a blackout date for the given course context. Use when you need to define a period during which certain activities are restricted or unavailable for a specific course." }, { "slug": "CANVAS_CREATE_BOOKMARK", "name": "Create Bookmark", "description": "Creates a new bookmark for the authenticated user. Use when you need to save a shortcut link to a Canvas page or external resource for quick access." }, { "slug": "CANVAS_CREATE_CALENDAR_EVENT", "name": "Create Calendar Event", "description": "Creates a calendar event with options for recurrence (finite `rrule` series only), section-specific timings, and blackout dates within a specified context." }, { "slug": "CANVAS_CREATE_COMMUNICATION_CHANNEL", "name": "Create communication channel", "description": "Creates a new communication channel (e.g., email, SMS, push) for an existing Canvas user to receive notifications." }, { "slug": "CANVAS_CREATE_CONTENT_SHARE", "name": "Create content share", "description": "Shares a Canvas content item to specified users, if the sender has necessary permissions and receiver IDs are valid." }, { "slug": "CANVAS_CREATE_CONVERSATION", "name": "Create conversation", "description": "Use to send messages in Canvas by creating a new conversation or adding to an existing one; an existing conversation with the same recipients (and matching scope/filter, if specified) may be reused unless `force_new` is true." }, { "slug": "CANVAS_CREATE_CONVERSATION_GRAPH_QL", "name": "Create conversation via GraphQL", "description": "Tool to create a new conversation (message) between users in Canvas via GraphQL. Use when initiating a new conversation thread with specified recipients." }, { "slug": "CANVAS_CREATE_COURSE", "name": "Create a course", "description": "Creates a new course in Canvas within a specified account, with comprehensive configuration options. Returns a course object including `id` (course_id); retain this for subsequent module, page, and upload calls." }, { "slug": "CANVAS_CREATE_COURSE_GRADING_STANDARD", "name": "Create Course Grading Standard", "description": "Tool to create a new grading standard in a Canvas course. Use when you need to define a custom grading scale with grade labels and percentage thresholds for a specific course." }, { "slug": "CANVAS_CREATE_CUSTOM_GRADEBOOK_COLUMN", "name": "Create a custom gradebook column", "description": "Creates a new custom gradebook column in a course. Use when you need to add custom tracking fields like participation scores or extra credit to the gradebook." }, { "slug": "CANVAS_CREATE_DISCUSSION_ENTRY", "name": "Create discussion entry", "description": "Tool to create a new entry in a Canvas discussion topic. Use when posting a message with optional attachments to a discussion topic." }, { "slug": "CANVAS_CREATE_DISCUSSION_ENTRY_GRAPH_QL", "name": "Create discussion entry (GraphQL)", "description": "Tool to create a new entry in a Canvas discussion topic via GraphQL. Use when posting a message or reply to a discussion topic with optional file attachments." }, { "slug": "CANVAS_CREATE_DISCUSSION_TOPIC", "name": "Create discussion topic", "description": "Creates a new discussion topic in a specified Canvas course, allowing comprehensive configuration of its content, type, publication settings, engagement features, and associations." }, { "slug": "CANVAS_CREATE_DISCUSSION_TOPIC_GRAPH_QL", "name": "Create discussion topic (GraphQL)", "description": "Tool to create a new discussion topic in a course or group using the Canvas GraphQL API. Use when creating discussion topics with the GraphQL interface." }, { "slug": "CANVAS_CREATE_ENROLLMENT", "name": "Create enrollment", "description": "Enrolls a user in a Canvas course with a specified role and status; `associated_user_id` is required if `enrollment_type` is 'ObserverEnrollment'." }, { "slug": "CANVAS_CREATE_EPUB_EXPORT", "name": "Create ePub export", "description": "Tool to initiate an ePub export for a course. Use when you need to export course content in ePub format. Track progress using the Progress API URL returned in the response." }, { "slug": "CANVAS_CREATE_EXTERNAL_FEED", "name": "Create External Feed", "description": "Creates a new external RSS or Atom feed for a Canvas course. Use when you need to import external content into a course feed." }, { "slug": "CANVAS_CREATE_EXTERNAL_FEED_FOR_GROUP", "name": "Create External Feed for Group", "description": "Tool to create a new external RSS or Atom feed for a Canvas group. Use when you need to import external content into a group feed." }, { "slug": "CANVAS_CREATE_EXTERNAL_TOOL", "name": "Create external tool", "description": "Tool to create an external tool in a Canvas account. Use when you need to integrate an LTI tool or external application. If a client_id is supplied, Canvas will attempt to create a context external tool using the LTI 1.3 standard." }, { "slug": "CANVAS_CREATE_EXTERNAL_TOOL_IN_COURSE", "name": "Create external tool in course", "description": "Tool to create an external tool in the specified course. Use when you need to integrate an LTI tool or external application within a course context. If a client_id is supplied, Canvas will attempt to create a context external tool using the LTI 1.3 standard." }, { "slug": "CANVAS_CREATE_FILES", "name": "Create Files", "description": "Tool to initiate file upload to Canvas (Step 1 of 3-step process). Use when you need to upload a file to a course, user folder, group, or account. This action returns upload_url and upload_params needed for the actual file upload. After calling this, POST the file data to the upload_url with the returned parameters, then follow any redirect to complete the upload." }, { "slug": "CANVAS_CREATE_FOLDER", "name": "Create folder", "description": "Tool to create a folder in the specified context. Use when you need to create a new folder for organizing files in Canvas for a user." }, { "slug": "CANVAS_CREATE_FOLDER_IN_GROUP", "name": "Create Folder in Group", "description": "Tool to create a folder within a Canvas group. Use when you need to organize files in a group context." }, { "slug": "CANVAS_CREATE_GROUP", "name": "Create a group", "description": "Tool to create a new community group directly. Use when you need to create a group without specifying a group category. Groups created using this endpoint will be community groups." }, { "slug": "CANVAS_CREATE_GROUP_CATEGORY_COURSES", "name": "Create a group category in a course", "description": "Creates a new group category within a specified Canvas course. Use when you need to organize student groups for projects, study sessions, or collaborative activities within a course." }, { "slug": "CANVAS_CREATE_GROUP_CONTENT_MIGRATION", "name": "Create a content migration for group", "description": "Tool to create a content migration in a Canvas group. Use when you need to import content into a group from various sources. If the migration requires a file upload, the actual processing starts once the file upload completes." }, { "slug": "CANVAS_CREATE_GROUP_DISCUSSION_TOPIC", "name": "Create group discussion topic", "description": "Tool to create a new discussion topic in a Canvas group. Use when creating a discussion for group collaboration or communication." }, { "slug": "CANVAS_CREATE_GROUP_IN_SET", "name": "Create group in set", "description": "Tool to create a new group within a Canvas group set. Use when adding a new group to an existing group category." }, { "slug": "CANVAS_CREATE_GROUP_SET", "name": "Create a group set", "description": "Tool to create a new group set (group category) in a Canvas course or account. Use when organizing students into project teams or study groups." }, { "slug": "CANVAS_CREATE_LEARNING_OUTCOME", "name": "Create Learning Outcome", "description": "Tool to create a new learning outcome in Canvas using GraphQL. Use when you need to define a new learning objective or competency within an outcome group." }, { "slug": "CANVAS_CREATE_LINK_OUTCOME_COURSES", "name": "Create/Link an outcome in course", "description": "Tool to link an existing outcome or create a new outcome within a course outcome group. Use when associating outcomes with outcome groups in a Canvas course context. If outcome_id is provided, links the existing outcome; otherwise creates a new outcome with the provided details (title, description, ratings, mastery_points)." }, { "slug": "CANVAS_CREATE_LTI_RESOURCE_LINK", "name": "Create an LTI resource link", "description": "Creates a new LTI Resource Link in a Canvas course. Use when integrating LTI 1.3 external tools that can be launched or embedded in rich content." }, { "slug": "CANVAS_CREATE_MEMBERSHIP", "name": "Create a membership", "description": "Tool to join or request to join a group, depending on the join level of the group. Use when you need to add a user to a Canvas group. If the membership or join request already exists, it is simply returned." }, { "slug": "CANVAS_CREATE_MODULE", "name": "Create Module", "description": "Creates a new organizational module within a specified Canvas LMS course, with options for availability, sequencing, and prerequisites." }, { "slug": "CANVAS_CREATE_MODULE_GRAPH_QL", "name": "Create module (GraphQL)", "description": "Tool to create a new module in a Canvas course via GraphQL. Use when creating a module with basic settings (name) through the GraphQL API." }, { "slug": "CANVAS_CREATE_MODULE_ITEM", "name": "Create Module Item", "description": "Create and return a new module item within a Canvas course module. Use when you need to add content (assignments, pages, quizzes, files, discussions, external links, or subheaders) to an existing module." }, { "slug": "CANVAS_CREATE_OR_UPDATE_TIMETABLE_EVENTS", "name": "Create or Update Timetable Events", "description": "Tool to create or update timetable events for a course or course section. Use when you need to set up a complete schedule of events directly, rather than generating them from a timetable pattern. If a code is provided for an event, existing events with that code will be updated; otherwise, new events are created." }, { "slug": "CANVAS_CREATE_PAGE_FOR_COURSE", "name": "Create a page for a course", "description": "Creates a new wiki page in a specified Canvas course, with options for title, HTML body, editing permissions, publication, and designation as front page (which also requires publication)." }, { "slug": "CANVAS_CREATE_PAGE_FOR_GROUP", "name": "Create a page for a group", "description": "Creates a new wiki page in a specified Canvas group. Use when you need to create documentation, notes, or collaborative content for a group." }, { "slug": "CANVAS_CREATE_PLANNER_NOTE", "name": "Create a planner note", "description": "Create a planner note for the current user. Use when adding a personal to-do item or reminder to the Canvas planner." }, { "slug": "CANVAS_CREATE_PLANNER_OVERRIDE", "name": "Create a planner override", "description": "Tool to create a planner override for the current user. Use when marking planner items as complete or dismissing them from the opportunities list." }, { "slug": "CANVAS_CREATE_QUESTION_GROUP", "name": "Create Question Group", "description": "Tool to create one or more question groups for a quiz. Use when you need to organize quiz questions into groups for random selection." }, { "slug": "CANVAS_CREATE_QUIZ", "name": "Create Quiz", "description": "Creates a new quiz with various settings in a specified existing Canvas course; `assignment_group_id` applies only to graded quiz types." }, { "slug": "CANVAS_CREATE_QUIZ_QUESTION", "name": "Create a quiz question", "description": "Creates a new question for an existing quiz within a course; if `answers` are provided, their structure must align with `question_type`, and any `quiz_group_id` must be valid for an existing group in the quiz." }, { "slug": "CANVAS_CREATE_QUIZ_REPORT", "name": "Create Quiz Report", "description": "Tool to create a quiz report in Canvas. Generates either a student analysis or item analysis report for a quiz. If a matching report already exists and is current, it will be returned instead." }, { "slug": "CANVAS_CREATE_QUIZ_SUBMISSION", "name": "Create quiz submission (start quiz)", "description": "Tool to start taking a quiz by creating a quiz submission. Use when a student needs to begin a quiz-taking session. Returns the quiz submission with workflow_state indicating the session status (e.g., 'preview' for teacher previews)." }, { "slug": "CANVAS_CREATE_RUBRIC", "name": "Create Rubric", "description": "Tool to create a rubric in a Canvas course. Use when you need structured assessment criteria and optional association after confirming course context." }, { "slug": "CANVAS_CREATE_SINGLE_POLL", "name": "Create Single Poll", "description": "Tool to create a new poll for the current user in Canvas. Use when you need to create a poll with a question and optional description." }, { "slug": "CANVAS_CREATE_SINGLE_POLL_CHOICE", "name": "Create a single poll choice", "description": "Tool to create one or more poll choices for an existing poll in Canvas. Use when you need to add answer options to a poll." }, { "slug": "CANVAS_CREATE_SINGLE_POLL_SESSION", "name": "Create Single Poll Session", "description": "Tool to create a new poll session for a poll in Canvas. Use when you need to create a poll session associated with a specific course or course section." }, { "slug": "CANVAS_CREATE_SINGLE_POLL_SUBMISSION", "name": "Create a single poll submission", "description": "Tool to create a new poll submission for a poll session. Use when submitting a user's choice(s) for an active poll. The poll session must be published before submissions can be created." }, { "slug": "CANVAS_CREATE_SUBGROUP_COURSES", "name": "Create Subgroup in Course", "description": "Creates a new empty subgroup under the outcome group with the given title and description. Use when you need to add a new subgroup to organize outcomes within a course's outcome group hierarchy." }, { "slug": "CANVAS_CREATE_SUBMISSION_DRAFT", "name": "Create submission draft", "description": "Tool to create a draft submission for an assignment in Canvas via GraphQL. Use when a student needs to save work in progress before final submission, or when pre-populating submission content." }, { "slug": "CANVAS_CREATE_USER_INBOX_LABEL", "name": "Create user inbox label", "description": "Tool to create new user inbox labels in Canvas. Use when organizing inbox messages with custom labels." }, { "slug": "CANVAS_CREATE_USERS_CUSTOM_DATA", "name": "Create Users Custom Data", "description": "Tool to create or update custom data for a Canvas user within a specified namespace. Use when you need to store application-specific JSON data for a user. The namespace parameter (ns) is required to prevent data collisions between different applications." }, { "slug": "CANVAS_CREATE_USERS_TOKENS", "name": "Create User Token", "description": "Tool to create a new access token for a Canvas user. Use when you need to generate an API access token for authentication purposes." }, { "slug": "CANVAS_DELETE_ACCESS_TOKEN", "name": "Delete an access token", "description": "Tool to delete an access token for a Canvas user. Use when you need to revoke or remove an API access token. The ID can be the actual database ID of the token, or the 'token_hint' value." }, { "slug": "CANVAS_DELETE_A_MESSAGE", "name": "Delete messages from conversation", "description": "Tool to delete messages from a Canvas conversation. Note that this only affects this user's view of the conversation. If all messages are deleted, the conversation will be removed as well." }, { "slug": "CANVAS_DELETE_AN_ENTRY", "name": "Delete a discussion entry", "description": "Tool to delete a discussion entry. The entry must have been created by the current user, or the current user must have admin rights to the discussion. Use when removing an entry from a discussion topic. The entry will be marked deleted, and user_id and message will be cleared." }, { "slug": "CANVAS_DELETE_AN_ENTRY2", "name": "Delete a group discussion entry", "description": "Tool to delete a discussion entry in a group discussion. The entry must have been created by the current user, or the current user must have admin rights to the discussion. Use when removing an entry from a group discussion topic. The entry will be marked deleted, and user_id and message will be cleared." }, { "slug": "CANVAS_DELETE_AN_EXTERNAL_TOOL", "name": "Delete an external tool", "description": "Remove the specified external tool from a course. Use when you need to delete an external tool integration." }, { "slug": "CANVAS_DELETE_AN_OUTCOME_GROUP_COURSES", "name": "Delete an outcome group (courses)", "description": "Deletes an outcome group from a course. Deleting an outcome group also deletes all descendant outcome groups and outcome links. Linked outcomes are only deleted if all links to the outcome were deleted. Aligned outcomes cannot be deleted; if all remaining links to an aligned outcome are in this group's descendants, the deletion will fail." }, { "slug": "CANVAS_DELETE_APPOINTMENT_GROUP", "name": "Delete appointment group", "description": "Permanently deletes an existing appointment group by its ID; associated appointments may also be canceled or affected." }, { "slug": "CANVAS_DELETE_ASSIGNMENT", "name": "Delete an assignment", "description": "Soft-deletes a specific assignment within a course, returning the assignment object with its `workflow_state` updated to 'deleted'." }, { "slug": "CANVAS_DELETE_ASSIGNMENT_OVERRIDE", "name": "Delete assignment override", "description": "Deletes an assignment override and returns its former details. Use when you need to remove date exceptions or special accommodations that were previously set for specific students, groups, or sections." }, { "slug": "CANVAS_DELETE_BLACKOUT_DATE", "name": "Delete blackout date", "description": "Tool to delete a blackout date for the given course context. Use when you need to remove a previously scheduled blackout period." }, { "slug": "CANVAS_DELETE_BOOKMARK", "name": "Delete bookmark", "description": "Deletes a bookmark from the current user's bookmarks. Use when you need to remove a saved bookmark." }, { "slug": "CANVAS_DELETE_CALENDAR_EVENT", "name": "Delete a calendar event", "description": "Delete a calendar event from Canvas and return the deleted event details. Use when you need to remove a calendar event, optionally providing a cancellation reason for participants." }, { "slug": "CANVAS_DELETE_COMMENT_BANK_ITEM", "name": "Delete comment bank item", "description": "Tool to delete a comment bank item from Canvas. Use when you need to remove a previously saved grading comment that is no longer needed." }, { "slug": "CANVAS_DELETE_COMMUNICATION_CHANNEL", "name": "Delete a communication channel", "description": "Deletes an existing communication channel for a user. Use when you need to remove an email, SMS, or push notification channel from a user's account." }, { "slug": "CANVAS_DELETE_COMMUNICATION_CHANNEL_BY_TYPE_AND_ADDRESS", "name": "Delete communication channel by type and address", "description": "Deletes a communication channel by type and address. Use when you need to remove a specific email, SMS, or push notification channel from a user's account using the channel type and address instead of the channel ID." }, { "slug": "CANVAS_DELETE_CONVERSATION_MESSAGES", "name": "Delete conversation messages", "description": "Tool to delete specific messages from a Canvas conversation. Use when you need to remove one or more messages from a conversation thread by their message IDs." }, { "slug": "CANVAS_DELETE_CONVERSATIONS", "name": "Delete conversations", "description": "Tool to delete one or more Canvas conversations. Use when permanently removing conversation threads. Returns the deleted conversation IDs on success." }, { "slug": "CANVAS_DELETE_CUSTOM_DATA", "name": "Delete custom data", "description": "Tool to delete custom user data for a given namespace. Use when you need to remove arbitrary JSON data stored for a user in a specific namespace. Without a scope parameter, all custom data in the namespace is deleted." }, { "slug": "CANVAS_DELETE_CUSTOM_GRADEBOOK_COLUMN", "name": "Delete a custom gradebook column", "description": "Permanently deletes a custom gradebook column and its associated data from a course. This action cannot be undone." }, { "slug": "CANVAS_DELETE_CUSTOM_GRADE_STATUS", "name": "Delete custom grade status", "description": "Tool to delete a custom grade status from Canvas. Use when removing a custom grade status that is no longer needed." }, { "slug": "CANVAS_DELETE_DISCUSSION_ENTRY", "name": "Delete discussion entry", "description": "Tool to delete a discussion entry. Use when removing an entry from a discussion. Returns the deleted entry details." }, { "slug": "CANVAS_DELETE_DISCUSSION_TOPIC_GRAPH_QL", "name": "Delete discussion topic (GraphQL)", "description": "Tool to delete a discussion topic in Canvas via GraphQL. Returns the deleted discussion topic ID upon successful deletion." }, { "slug": "CANVAS_DELETE_EXTERNAL_FEED_FROM_GROUP", "name": "Delete external feed from group", "description": "Deletes the external feed from the specified group. Use when removing an RSS/Atom feed that was previously configured for the group." }, { "slug": "CANVAS_DELETE_FILE", "name": "Delete file", "description": "Tool to remove a file from Canvas. Use when comprehensive, irretrievable destruction of the file is needed. Set `replace` to true to destroy file previews and replace contents with a placeholder (requires special permissions)." }, { "slug": "CANVAS_DELETE_FOLDER", "name": "Delete a folder", "description": "Permanently deletes an existing folder specified by its unique ID." }, { "slug": "CANVAS_DELETE_GROUP", "name": "Delete a group", "description": "Deletes a group and removes all members. Use when you need to permanently delete a Canvas group by its ID." }, { "slug": "CANVAS_DELETE_GROUP_DISCUSSION_TOPIC", "name": "Delete group discussion topic", "description": "Deletes the discussion topic from a group. This will also delete the assignment, if it's an assignment discussion." }, { "slug": "CANVAS_DELETE_OUTCOME_LINKS", "name": "Delete outcome links", "description": "Tool to delete links between outcomes and content in Canvas. Use when removing outcome associations from course content." }, { "slug": "CANVAS_DELETE_PAGE_FOR_GROUP", "name": "Delete page for a group", "description": "Deletes a wiki page from a Canvas group. Use when you need to remove a specific page from a group's wiki." }, { "slug": "CANVAS_DELETE_PLANNER_NOTE", "name": "Delete a planner note", "description": "Delete a planner note for the current user. Use when removing a personal to-do item from the Canvas planner." }, { "slug": "CANVAS_DELETE_PLANNER_OVERRIDE", "name": "Delete a planner override", "description": "Delete a planner override for the current user. Use when removing customizations or dismissals from planner items." }, { "slug": "CANVAS_DELETE_POLL", "name": "Delete poll", "description": "Permanently deletes the poll identified by `id`; returns 204 No Content if successful." }, { "slug": "CANVAS_DELETE_POLL_CHOICE", "name": "Delete a poll choice", "description": "Tool to delete a poll choice from a Canvas poll. Use when you need to remove a specific choice option from an existing poll. Returns a 204 No Content response if the deletion was successful." }, { "slug": "CANVAS_DELETE_POLL_SESSION", "name": "Delete a poll session", "description": "Tool to permanently delete a poll session from a poll. Use when you need to remove a poll session. Returns a 204 No Content response on successful deletion." }, { "slug": "CANVAS_DELETE_QUIZ", "name": "Delete quiz", "description": "Permanently deletes the quiz identified by `quiz_id` from the course identified by `course_id`; this action cannot be undone." }, { "slug": "CANVAS_DELETE_SUBMISSION_DRAFT", "name": "Delete submission draft", "description": "Tool to delete a submission draft in Canvas via GraphQL. Use when removing a draft submission that has not been finalized." }, { "slug": "CANVAS_DELETE_USER_INBOX_LABEL", "name": "Delete user inbox label", "description": "Tool to delete user inbox labels in Canvas. Use when you need to remove one or more custom inbox labels from the current user's inbox." }, { "slug": "CANVAS_DELETE_USERS_CUSTOM_DATA_SCOPE", "name": "Delete user custom data scope", "description": "Tool to delete custom user data at a specific scope path. Use when you need to remove data stored at a particular location within the JSON structure for a user's custom data namespace." }, { "slug": "CANVAS_DEPARTMENT_LEVEL_GRADE_DATA_FOR_CURRENT_GRADES", "name": "Get current grades", "description": "Fetches current, aggregated grade data from Canvas analytics for a specified account ID." }, { "slug": "CANVAS_DEPARTMENT_LEVEL_GRADE_DATA_FOR_TERM_GRADES", "name": "Get term grade data", "description": "Retrieves department-level aggregated grade data for a specific academic term within a Canvas account." }, { "slug": "CANVAS_DRAFT_REPLY_TO_DISCUSSION", "name": "Post discussion entry or reply", "description": "Posts a new entry or reply to a Canvas discussion topic. Creates either a top-level entry (when entry_id is omitted) or a nested reply to an existing entry (when entry_id is provided). The entry is posted immediately and becomes visible to discussion participants." }, { "slug": "CANVAS_DUPLICATE_GROUP_DISCUSSION_TOPIC", "name": "Duplicate group discussion topic", "description": "Tool to duplicate an existing discussion topic in a Canvas group. Use when you need to create a copy of a group discussion topic with all its settings and content." }, { "slug": "CANVAS_EDIT_ASSIGNMENT", "name": "Edit assignment", "description": "Updates an existing assignment in a Canvas course (identified by `course_id` and `assignment_id`); only attributes explicitly provided in the request are modified." }, { "slug": "CANVAS_EDIT_CONVERSATION", "name": "Edit a conversation", "description": "Tool to update attributes for a single conversation in Canvas. Use when you need to star/unstar, subscribe/unsubscribe, or change the workflow state (read, unread, archived) of a specific conversation." }, { "slug": "CANVAS_EDIT_QUIZ", "name": "Edit a quiz", "description": "Modifies an existing Canvas quiz; only attributes with provided values in the request are updated." }, { "slug": "CANVAS_EDIT_USER", "name": "Edit User", "description": "Modifies an existing Canvas user's profile and settings. Use to update name, email, timezone, bio, pronouns, and other profile fields. To modify login credentials, use the logins API instead." }, { "slug": "CANVAS_EXPORT_CONTENT", "name": "Export content", "description": "Initiates an asynchronous export of course content from Canvas. Returns an export job ID and progress URL that can be used to track the export status and retrieve the exported file once complete. Supports exporting full courses (Common Cartridge), quizzes (QTI), or files (ZIP)." }, { "slug": "CANVAS_EXPORT_GROUP_CONTENT", "name": "Export group content", "description": "Tool to begin a content export job for a group. Groups only support ZIP format exports of files and folders. Returns an export job with a progress_url to track the export status using the Progress API. Once complete, the exported file can be downloaded via the attachment URL." }, { "slug": "CANVAS_EXPORT_USER_CONTENT", "name": "Export user content", "description": "Tool to begin a content export job for a user. Use when you need to export user content from Canvas in Common Cartridge, QTI, or ZIP format. Track progress using the Progress API via the progress_url returned in the response. Once complete, download the exported file via the attachment URL." }, { "slug": "CANVAS_FETCH_DATA", "name": "Fetch Data", "description": "Fetches a specific category of Canvas data (e.g., accounts, courses, users) by setting exactly one `get_*` boolean flag to true and providing any associated IDs. Supports pagination with per_page (default 100, max 100) and page (default 1) parameters to fetch large datasets." }, { "slug": "CANVAS_FIND_RECIPIENTS", "name": "Find recipients", "description": "Find valid recipients (users, courses and groups) that the current user can send messages to. Use when searching for message recipients or looking up specific users/contexts by id." }, { "slug": "CANVAS_GET_ACCOUNT_COURSE", "name": "Get a single course from account", "description": "Tool to retrieve information on a single course from a Canvas account. Use when you need to get detailed course information including optional data like teachers, term, permissions, or course progress." }, { "slug": "CANVAS_GET_ACCOUNT_GRAPH_QL", "name": "Get account (GraphQL)", "description": "Tool to retrieve account information by ID or SIS ID using the Canvas GraphQL API. Use when you need to fetch account details via GraphQL interface." }, { "slug": "CANVAS_GET_ACCOUNT_NOTIFICATIONS", "name": "Get Account Notifications", "description": "Tool to retrieve global account notifications for the current user in Canvas LMS. Use when you need to check announcements, alerts, or system-wide messages that admins have posted to the account." }, { "slug": "CANVAS_GET_ACCOUNTS_OUTCOME_GROUPS", "name": "Get accounts outcome groups", "description": "Tool to retrieve a specific outcome group from a Canvas account. Use when you need to fetch details about a specific outcome group including its title, description, parent group, and management URLs." }, { "slug": "CANVAS_GET_ACCOUNTS_THAT_USERS_CAN_CREATE_COURSES_IN", "name": "Get Accounts That Users Can Create Courses In", "description": "Retrieves Canvas accounts where the current user has permission to create courses; typically returns results only for administrators." }, { "slug": "CANVAS_GET_A_CONTENT_MIGRATION3", "name": "Get a content migration for group", "description": "Tool to retrieve data on an individual content migration from a Canvas group. Use when you need to check the status, progress, or details of a specific group migration." }, { "slug": "CANVAS_GET_A_CONTENT_MIGRATION4", "name": "Get a content migration for user", "description": "Tool to retrieve data on an individual content migration from a Canvas user. Use when you need to check the status, progress, or details of a specific user migration." }, { "slug": "CANVAS_GET_A_LATE_POLICY", "name": "Get a late policy", "description": "Tool to retrieve the late policy for a Canvas course. Use when you need to check the course's policy for handling late and missing submissions." }, { "slug": "CANVAS_GET_ALIGNED_ASSIGNMENTS_FOR_AN_OUTCOME", "name": "Get aligned assignments for an outcome", "description": "Retrieves outcome alignments for a student or assignment within a course. Use when you need to see which assignments are aligned to learning outcomes, optionally filtered by student or assignment." }, { "slug": "CANVAS_GET_ALL_ASSIGNMENTS", "name": "Get assignments for a specific course (requires course_id)", "description": "Retrieves assignments for a specific Canvas course. IMPORTANT: This action requires a course_id parameter - it does NOT retrieve assignments globally across all courses. You must first obtain a valid course_id (e.g., from CANVAS_LIST_COURSES) and provide it to retrieve that course's assignments. Results may be nested under a `response_data` array; inspect the JSON structure before iterating. `due_at` values are ISO 8601 strings in UTC. Filter on `published`, `locked_for_user`, and `has_submitted_submissions` fields to identify actionable assignments." }, { "slug": "CANVAS_GET_ALL_E_PORTFOLIOS_FOR_USER", "name": "Get All ePortfolios for User", "description": "Tool to retrieve all ePortfolios for a specified user from Canvas LMS. Use when you need to list a user's ePortfolio collection." }, { "slug": "CANVAS_GET_ALL_OUTCOME_GROUPS_FOR_CONTEXT", "name": "Get All Outcome Groups for Context", "description": "Tool to retrieve all outcome groups for an account context in Canvas. Use when you need to list learning outcome groups." }, { "slug": "CANVAS_GET_ALL_OUTCOME_GROUPS_FOR_CONTEXT2", "name": "Get all outcome groups for course", "description": "Tool to retrieve all outcome groups for a course context in Canvas. Use when you need to list learning outcome groups for a specific course." }, { "slug": "CANVAS_GET_ALL_OUTCOME_LINKS_FOR_CONTEXT", "name": "Get All Outcome Links for Context", "description": "Retrieves all outcome links for a Canvas account context. Use when you need to fetch the relationships between outcomes and outcome groups within an account." }, { "slug": "CANVAS_GET_ALL_OUTCOME_LINKS_FOR_CONTEXT2", "name": "Get All Outcome Links for Context (Courses)", "description": "Retrieves all outcome links for a Canvas course context. Use when you need to fetch the relationships between outcomes and outcome groups within a course." }, { "slug": "CANVAS_GET_ALL_PEER_REVIEWS", "name": "Get all peer reviews for submission", "description": "Retrieves all peer reviews for a specific submission within a Canvas assignment. Use when you need to view peer reviewers assigned to a student's submission." }, { "slug": "CANVAS_GET_ALL_PEER_REVIEWS_FOR_SECTION_ASSIGNMENT", "name": "Get all peer reviews for section assignment", "description": "Retrieves all peer reviews for a specific assignment within a Canvas section. Use when you need to view all peer review assignments for an entire section's assignment." }, { "slug": "CANVAS_GET_ALL_PEER_REVIEWS_FOR_SECTION_SUBMISSION", "name": "Get all peer reviews for section submission", "description": "Retrieves all peer reviews for a specific submission within a Canvas section assignment. Use when you need to view peer reviewers assigned to a student's submission in a specific section." }, { "slug": "CANVAS_GET_ALL_USERS", "name": "Get all users", "description": "Retrieves a list of users for a specified Canvas `account_id` (use 'self' for the current user's root account), supporting filtering, sorting, and pagination." }, { "slug": "CANVAS_GET_AN_ASSIGNMENT_GROUP", "name": "Get an assignment group", "description": "Retrieves the assignment group with the given id from a Canvas course. Use when you need to get details about a specific assignment group, including its name, position, weight, and optionally associated assignments." }, { "slug": "CANVAS_GET_A_PREFERENCE", "name": "Get notification preference", "description": "Fetches the notification preference for a specific notification on a given communication channel. Use to check how often a user wants to receive a particular type of notification." }, { "slug": "CANVAS_GET_A_PREFERENCE_BY_TYPE_AND_ADDRESS", "name": "Get notification preference by type and address", "description": "Fetches the notification preference for a specific notification on a given communication channel using channel type and address. Use when you need to check how often a user receives notifications for a particular event type on a specific communication channel." }, { "slug": "CANVAS_GET_A_SINGLE_EXTERNAL_TOOL2", "name": "Get a single external tool", "description": "Tool to retrieve detailed information for a specific external tool within a Canvas course. Use when you need to get configuration details, settings, or metadata for an external tool in a course context." }, { "slug": "CANVAS_GET_A_SINGLE_GROUP_MEMBERSHIP", "name": "Get a single group membership", "description": "Tool to retrieve a single group membership by its membership_id or user_id. Use when you need to check membership status, moderator privileges, or workflow state for a specific user in a group." }, { "slug": "CANVAS_GET_A_SINGLE_GROUP_MEMBERSHIP2", "name": "Get a single group membership by user ID", "description": "Tool to retrieve a single group membership by user_id. Use when you need to check membership status, moderator privileges, or workflow state for a specific user in a group." }, { "slug": "CANVAS_GET_ASSIGNMENT2", "name": "Get assignment (GraphQL)", "description": "Tool to retrieve information about a specific assignment by ID using the Canvas GraphQL API. Returns assignment details including submissions connection." }, { "slug": "CANVAS_GET_ASSIGNMENT_GROUP", "name": "Get assignment group", "description": "Tool to retrieve information about a specific assignment group by ID. Use when you need to fetch details about an assignment group including its name, position, weight, and state." }, { "slug": "CANVAS_GET_ASSIGNMENT_RUBRIC", "name": "Get Assignment Rubric", "description": "Fetches the detailed rubric for a specified assignment within a Canvas course; returns has_rubric=false if the assignment has no associated rubric." }, { "slug": "CANVAS_GET_AUDIT_LOGS", "name": "Get Audit Logs", "description": "Tool to access Canvas audit logs for a specified asset using the GraphQL API. Use when retrieving mutation logs to track changes and operations performed on accounts, courses, or users." }, { "slug": "CANVAS_GET_A_USERS_MOST_RECENTLY_GRADED", "name": "Get a user's most recently graded submissions", "description": "Retrieves a user's most recently graded submissions. Use 'self' as the user ID to get graded submissions for the authenticated user." }, { "slug": "CANVAS_GET_AUTHENTICATION_PROVIDER", "name": "Get Authentication Provider", "description": "Retrieves a specific authentication provider configuration for a Canvas account. Use when you need to view the configuration details of a specific authentication provider." }, { "slug": "CANVAS_GET_BOOKMARK", "name": "Get Bookmark", "description": "Retrieves the details for a specific bookmark by ID. Use when you need to fetch information about a particular bookmark for the authenticated user." }, { "slug": "CANVAS_GET_BRAND_VARIABLES", "name": "Get brand variables", "description": "Tool to retrieve all brand configuration variables for the Canvas account. Use when you need to access theme colors, logos, watermarks, or other branding customization settings." }, { "slug": "CANVAS_GET_CONTENT_SHARE", "name": "Get content share", "description": "Retrieves detailed information about a single content share by ID for a specified user. Use when you need to view the details of a specific shared content item." }, { "slug": "CANVAS_GET_CONTENT_SHARES_UNREAD_COUNT", "name": "Get content shares unread count", "description": "Tool to retrieve the count of unread content shares for the authenticated user. Use when you need to check how many content shares have not been read yet." }, { "slug": "CANVAS_GET_COURSE", "name": "Get course", "description": "Tool to retrieve information about a specific course by ID using the Canvas GraphQL API. Use when querying course details with either GraphQL or numeric identifiers." }, { "slug": "CANVAS_GET_COURSE_ACTIVITY_STREAM", "name": "Get course activity stream", "description": "Tool to retrieve the current user's course-specific activity stream, paginated. Use when you need to see recent activities in a specific course such as new discussions, announcements, assignments, and submissions." }, { "slug": "CANVAS_GET_COURSE_ACTIVITY_STREAM_SUMMARY", "name": "Get course activity stream summary", "description": "Tool to retrieve a summary of the current user's course-specific activity stream. Returns aggregated counts by activity type (discussions, conversations, messages, etc.) for the specified course. Use when you need an overview of activity in a specific course." }, { "slug": "CANVAS_GET_COURSE_LEVEL_PARTICIPATION_DATA", "name": "Get Course Activity", "description": "Retrieves daily activity analytics, such as page views and participation events, for a specified Canvas course." }, { "slug": "CANVAS_GET_COURSE_NICKNAME", "name": "Get course nickname", "description": "Retrieves the nickname for a specific Canvas course. Use when you need to get the user-defined alternate name for a course." }, { "slug": "CANVAS_GET_COURSE_PERMISSIONS", "name": "Get Course Permissions", "description": "Returns permission information for the calling user in the given course. Use when you need to check what actions the authenticated user is authorized to perform in a specific course." }, { "slug": "CANVAS_GET_COURSES12_ASSIGNMENTS", "name": "Batch retrieve assignment overrides", "description": "Tool to batch retrieve assignment overrides in a course. Use when you need to retrieve multiple assignment overrides at once by providing paired lists of override IDs and assignment IDs. Returns null for overrides that were not found or target sections/groups/students not visible to the current user." }, { "slug": "CANVAS_GET_COURSES_BLUEPRINT_SUBSCRIPTIONS_MIGRATIONS", "name": "Get Blueprint Subscription Migrations", "description": "Retrieves blueprint subscription migrations for a Canvas course. Use when you need to list sync operations from a blueprint course to an associated course." }, { "slug": "CANVAS_GET_COURSE_SETTINGS", "name": "Get course settings", "description": "Tool to retrieve settings for a specific Canvas course. Use when you need to check configuration options like student permissions, grading settings, or display preferences for a course." }, { "slug": "CANVAS_GET_COURSES_FOLDERS_BY_PATH", "name": "Get courses folders by path", "description": "Tool to retrieve folder hierarchy by resolving a path within a Canvas course. Use when you need to traverse a folder path or verify a folder exists at a specific location." }, { "slug": "CANVAS_GET_COURSES_FOLDERS_ROOT", "name": "Get course root folder", "description": "Tool to retrieve the root folder for a course. Use when you need to access the root folder from a course context by using 'root' as the folder identifier." }, { "slug": "CANVAS_GET_COURSES_GRAPH_QL", "name": "Get courses (GraphQL)", "description": "Tool to get all courses viewable by the current user using the Canvas GraphQL API. Use when retrieving the list of courses accessible to the authenticated user." }, { "slug": "CANVAS_GET_COURSES_OUTCOME_GROUPS", "name": "Get courses outcome groups", "description": "Retrieves a specific outcome group for a course. Use when you need to fetch detailed information about an outcome group." }, { "slug": "CANVAS_GET_CURRENT_USER", "name": "Get Current User", "description": "Retrieves detailed information about the currently authenticated user from the Canvas LMS." }, { "slug": "CANVAS_GET_CUSTOM_COLOR", "name": "Get Custom Color", "description": "Tool to retrieve the custom color that a user has saved for a specific course or context in Canvas. Use when you need to fetch user-specific color preferences for a course or other context." }, { "slug": "CANVAS_GET_CUSTOM_COLORS", "name": "Get Custom Colors", "description": "Tool to retrieve all custom colors saved by a user in Canvas LMS. Use when you need to fetch color customizations for courses or other Canvas objects." }, { "slug": "CANVAS_GET_DASHBOARD_POSITIONS", "name": "Get Dashboard Positions", "description": "Tool to retrieve all dashboard positions saved for a user. Use when you need to see the current order of dashboard cards for a specific user." }, { "slug": "CANVAS_GET_DEPARTMENT_LEVEL_COMPLETED_STATISTICS", "name": "Get department-level completed statistics", "description": "Retrieves department-level numeric statistics for all completed (concluded) courses within the default term for a specified Canvas account. Returns aggregate counts including courses, subaccounts, enrollments, discussion topics, media objects, attachments, and assignments. Note: Requires Canvas Analytics to be enabled on the instance." }, { "slug": "CANVAS_GET_DEPARTMENT_LEVEL_CURRENT_STATISTICS", "name": "Get department level current statistics", "description": "Fetches a snapshot of current numerical statistics for a Canvas account, requiring its valid ID." }, { "slug": "CANVAS_GET_DEPARTMENT_LEVEL_GRADE_DATA_COMPLETED_GRADES", "name": "Get department level completed grades", "description": "Retrieves the distribution of final grades (0-100, binned to whole numbers) for all completed courses in a Canvas account, where each data point represents one student's final grade in one course." }, { "slug": "CANVAS_GET_DEPARTMENT_LEVEL_TERM_STATISTICS", "name": "Get department level term statistics", "description": "Retrieves department-level statistics for a specific academic term, including counts of courses, teachers, students, discussion topics, media objects, attachments, and assignments. Requires the Canvas Analytics feature to be enabled." }, { "slug": "CANVAS_GET_DOCUMENT_ANNOTATIONS_READ_STATE", "name": "Get document annotations read state", "description": "Retrieves the read state of document annotations for a student's submission. Use when checking if a student has viewed feedback annotations on their submitted document." }, { "slug": "CANVAS_GET_ENROLLMENT_BY_ID", "name": "Get enrollment by ID", "description": "Retrieves a specific enrollment by its ID within a given account." }, { "slug": "CANVAS_GET_ENROLLMENT_INVITATIONS", "name": "Get Enrollment Invitations", "description": "Tool to retrieve pending enrollment invitations for the current user. Use when you need to check course invitations that the user has not yet accepted or rejected." }, { "slug": "CANVAS_GET_FEATURE_FLAG", "name": "Get feature flag for account", "description": "Tool to retrieve a specific feature flag for a given Canvas account. The flag may be defined on the account, or it may be inherited from a parent account. Check context_id and context_type fields to determine the source; if these fields are missing, the flag represents the global Canvas default." }, { "slug": "CANVAS_GET_FEATURE_FLAG_COURSES", "name": "Get feature flag for course", "description": "Get the feature flag that applies to a given Course. The flag may be defined on the course, or it may be inherited from a parent account. Check the context_id and context_type of the returned object to determine which is the case." }, { "slug": "CANVAS_GET_FILE", "name": "Get file", "description": "Tool to retrieve detailed metadata for a specific Canvas file by its ID. Use when you need information about a single file including its name, size, content type, URLs, and optionally the user who uploaded it." }, { "slug": "CANVAS_GET_FOLDER", "name": "Get folder", "description": "Retrieves details for a specific folder within a Canvas course. Use 'root' as the folder ID to get the root folder for the course context." }, { "slug": "CANVAS_GET_FOLDER_BY_ID", "name": "Get Folder By ID", "description": "Retrieves the details for a specific folder by its ID. Use 'root' as the ID to get the root folder for a context." }, { "slug": "CANVAS_GET_FULL_TOPIC_GROUPS", "name": "Get Full Topic for Groups", "description": "Tool to retrieve the full cached structure of a group discussion topic. Use when you need all entries, their authors, and message bodies in a hierarchical format. Note: May require that the user has posted in the topic; if required and the user has not posted, will respond with 403 Forbidden." }, { "slug": "CANVAS_GET_GLOBAL_OUTCOME_GROUP", "name": "Get Global Outcome Group", "description": "Retrieves a global outcome group by ID from Canvas. Use when you need to get details about a specific global learning outcome group." }, { "slug": "CANVAS_GET_GRADEBOOK_HISTORY_DAYS", "name": "Get gradebook history days", "description": "Retrieves a chronological list of dates with grading activity and the active graders for a specified course." }, { "slug": "CANVAS_GET_GROUP", "name": "Get a group", "description": "Retrieves detailed information for a single Canvas group by its ID. Use when you need to get information about a specific group including optional permissions and tab configurations." }, { "slug": "CANVAS_GET_GROUP_ACTIVITY_STREAM", "name": "Get group activity stream", "description": "Tool to retrieve the current user's group-specific activity stream, paginated. Use when you need to see recent activities in a specific group such as new discussions, announcements, and other group-related activities." }, { "slug": "CANVAS_GET_GROUP_ACTIVITY_STREAM_SUMMARY", "name": "Get Group Activity Stream Summary", "description": "Retrieves a summary of the current user's group-specific activity stream. Returns counts and unread counts for different activity types within the specified group." }, { "slug": "CANVAS_GET_GROUP_FOLDER", "name": "Get Group Folder", "description": "Retrieves the details for a folder within a Canvas group. Use 'root' as the folder ID to get the root folder for the group context." }, { "slug": "CANVAS_GET_GROUP_PERMISSIONS", "name": "Get Group Permissions", "description": "Returns permission information for the calling user in the given group. Use when you need to check what actions the authenticated user is authorized to perform in a specific group." }, { "slug": "CANVAS_GET_HELP_LINKS", "name": "Get account help links", "description": "Retrieves help links configured for the specified Canvas account. Use when you need to access help resources available to users in an account." }, { "slug": "CANVAS_GET_INTERNAL_SETTINGS", "name": "Get Internal Settings", "description": "Tool to retrieve all internal settings from Canvas using the GraphQL API. Use when you need to query system-level configuration settings." }, { "slug": "CANVAS_GET_KALTURA_CONFIG", "name": "Get Kaltura config", "description": "Tool to return the config information for the Kaltura plugin in JSON format. Use when you need to check Kaltura integration status or retrieve Kaltura service endpoints." }, { "slug": "CANVAS_GET_LEARNING_OUTCOME", "name": "Get learning outcome", "description": "Tool to retrieve learning outcome information by ID using the Canvas GraphQL API. Use when you need to fetch details about a specific learning outcome including its title and description." }, { "slug": "CANVAS_GET_LEARNING_OUTCOME_GROUP", "name": "Get learning outcome group", "description": "Tool to retrieve learning outcome group information by ID via GraphQL. Use when you need to fetch details about a specific learning outcome group including its title and description." }, { "slug": "CANVAS_GET_LEGACY_NODE", "name": "Get Legacy Node", "description": "Tool to fetch Canvas objects using REST-style numeric identifiers via GraphQL. Use when you have a legacy numeric ID and need to retrieve the corresponding object data through the GraphQL API." }, { "slug": "CANVAS_GET_MANUALLY_CREATED_COURSES_ACCOUNT", "name": "Get manually-created courses sub-account", "description": "Tool to retrieve the manually-created courses sub-account for the domain root account. Use when you need to identify the sub-account that contains courses created manually (as opposed to SIS-imported courses)." }, { "slug": "CANVAS_GET_MODULE_ITEM", "name": "Get Module Item", "description": "Tool to retrieve information about a specific module item by ID using the Canvas GraphQL API. Use when fetching details about a module item including its content, parent module, and metadata." }, { "slug": "CANVAS_GET_MODULE_ITEM_SEQUENCE", "name": "Get Module Item Sequence", "description": "Tool to find the module item sequence for a given asset in a Canvas course. Returns the current item, previous and next items in the sequence, and applicable mastery path rules. Use when you need to understand the navigation context of a course asset." }, { "slug": "CANVAS_GET_MY_INBOX_SETTINGS", "name": "Get my inbox settings", "description": "Tool to retrieve inbox settings for the current user in Canvas. Use when you need to check the authenticated user's signature settings or out-of-office configuration." }, { "slug": "CANVAS_GET_NEXT_APPOINTMENT", "name": "Get next appointment", "description": "Retrieves the next available appointment from Canvas appointment groups. Returns a single-element array if an appointment is available, or an empty array if none are available." }, { "slug": "CANVAS_GET_NODE", "name": "Get node by ID", "description": "Tool to fetch Canvas objects by their GraphQL global identifier using the node query. Follows the Relay Object Identification spec and works for most Canvas object types including courses, users, assignments, and more." }, { "slug": "CANVAS_GET_OUTCOME_CALCULATION_METHOD", "name": "Get outcome calculation method", "description": "Tool to retrieve outcome calculation method information by ID using the Canvas GraphQL API. Use when you need to fetch details about how outcomes are calculated for assessments." }, { "slug": "CANVAS_GET_OUTCOME_PROFICIENCY_GRAPH_QL", "name": "Get outcome proficiency (GraphQL)", "description": "Tool to retrieve outcome proficiency information for an account using the Canvas GraphQL API. Use when you need to fetch proficiency ratings and configuration for learning outcomes via GraphQL interface." }, { "slug": "CANVAS_GET_OUTCOME_RESULT_ROLLUPS", "name": "Get outcome result rollups", "description": "Tool to retrieve outcome result rollups for users and outcomes in a specified course context. Use when you need to analyze learning outcome performance data, either for individual users or as a course aggregate." }, { "slug": "CANVAS_GET_OUTCOME_RESULTS", "name": "Get Outcome Results", "description": "Tool to get outcome results for users and outcomes in a course context. Use when you need to retrieve learning outcome assessment results for students." }, { "slug": "CANVAS_GET_PAGE_FOR_COURSE", "name": "Get Page for a Course", "description": "Retrieves a specific content page (wiki or content page) by its URL or numeric ID from a specified Canvas course." }, { "slug": "CANVAS_GET_PROFICIENCY_RATINGS_FOR_COURSE", "name": "Get proficiency ratings for course", "description": "Retrieves course-level proficiency ratings for learning outcomes. If not defined for the requested course, it will return proficiency ratings from the account or nearest super-account with ratings defined. Use when you need to view the performance level definitions used for grading outcomes in a specific course." }, { "slug": "CANVAS_GET_PUBLIC_INLINE_PREVIEW_URL", "name": "Get public inline preview URL", "description": "Tool to determine the URL for inline preview of a Canvas file. Use when you need to access the public URL of a file." }, { "slug": "CANVAS_GET_QUIZ_REPORT", "name": "Get a quiz report", "description": "Retrieves the data for a single quiz report. Use when you need to check the status or download a previously generated quiz report." }, { "slug": "CANVAS_GET_QUIZ_STATISTICS", "name": "Get Quiz Statistics", "description": "Tool to fetch the latest quiz statistics for a Canvas quiz. Use when you need statistical data about quiz submissions, including per-question metrics and aggregate submission statistics." }, { "slug": "CANVAS_GET_QUIZ_SUBMISSIONS", "name": "Get quiz submissions", "description": "Retrieves all submissions for a specific quiz within a course; ensure `course_id` and `quiz_id` are valid and the quiz belongs to the course." }, { "slug": "CANVAS_GET_QUOTA_INFORMATION", "name": "Get Quota Information", "description": "Retrieves the total and used storage quota for a Canvas user. Use when you need to check storage space availability or usage." }, { "slug": "CANVAS_GET_QUOTA_INFORMATION_GROUPS", "name": "Get quota information for group", "description": "Returns the total and used storage quota for the group. Use this to check available storage space and monitor usage for a specific group." }, { "slug": "CANVAS_GET_REPORT_STATUS", "name": "Get report status", "description": "Retrieves the status of a previously initiated report in a Canvas account, specified by its type and ID." }, { "slug": "CANVAS_GET_ROOT_OUTCOME_GROUP_FOR_COURSE", "name": "Get Root Outcome Group for Course", "description": "Retrieves the root outcome group for a specified course context. Use when you need to access the top-level outcome group hierarchy for a course." }, { "slug": "CANVAS_GET_RUBRIC", "name": "Get rubric", "description": "Tool to retrieve rubric information by ID using the Canvas GraphQL API. Use when you need to fetch detailed rubric data including criteria, points, and configuration settings." }, { "slug": "CANVAS_GET_RUBRIC_ASSESSMENTS_READ_STATE", "name": "Get Rubric Assessments Read State", "description": "Tool to check whether new rubric comments/grading made on a submission have been seen by the student being assessed. Use when you need to verify if a student has reviewed their rubric feedback." }, { "slug": "CANVAS_GET_RUBRICS_UPLOAD_TEMPLATE", "name": "Get Rubrics Upload Template", "description": "Tool to retrieve a CSV template file for importing rubrics into Canvas. Use when you need the template format for bulk rubric imports." }, { "slug": "CANVAS_GET_RUNNING_BATCHES", "name": "Get running batches", "description": "Tool to retrieve any currently running conversation batches for the current user. Use when checking the status of bulk private messages that were sent asynchronously." }, { "slug": "CANVAS_GET_SECTION_INFORMATION", "name": "Get section information", "description": "Retrieves detailed information for a specific Canvas section within a course. Use when you need section details including optional student lists, enrollment data, or permissions." }, { "slug": "CANVAS_GET_SECTION_INFORMATION2", "name": "Get section information by ID", "description": "Retrieves detailed information for a specific Canvas section by section ID alone. Use when you have the section ID but not the course ID, or when you need section details with optional student lists, enrollment data, or permissions." }, { "slug": "CANVAS_GET_SECTION_SUBMISSION_SUMMARY", "name": "Get section assignment submission summary", "description": "Retrieves submission summary counts for a specific assignment within a section. Returns the number of submissions categorized as graded, ungraded, and not submitted based on gradeable students in the section." }, { "slug": "CANVAS_GET_SESSIONLESS_LAUNCH_URL", "name": "Get sessionless launch URL for external tool", "description": "Returns a sessionless launch URL for an external tool in Canvas. Prefers the resource_link_lookup_uuid parameter, but defaults to id, url, or launch_type if not provided. Use when you need to generate a launch URL for an external tool without requiring a user session." }, { "slug": "CANVAS_GET_SESSIONLESS_LAUNCH_URL_FOR_COURSE", "name": "Get sessionless launch URL for external tool in course", "description": "Returns a sessionless launch URL for an external tool in a Canvas course. Prefers the resource_link_lookup_uuid parameter, but defaults to id, url, or launch_type if not provided. Use when you need to generate a launch URL for an external tool in a specific course without requiring a user session." }, { "slug": "CANVAS_GET_SINGLE_ACCOUNT", "name": "Get a single account", "description": "Retrieve information on an individual account by ID or SIS account ID. Use when you need detailed account information for a specific account." }, { "slug": "CANVAS_GET_SINGLE_ASSIGNMENT_OVERRIDE", "name": "Get a single assignment override", "description": "Retrieves details of the assignment override with the given id for a specific assignment in a course." }, { "slug": "CANVAS_GET_SINGLE_CALENDAR_EVENT", "name": "Get single calendar event", "description": "Tool to retrieve a single calendar event or assignment by ID from Canvas. Use when you need detailed information about a specific calendar item." }, { "slug": "CANVAS_GET_SINGLE_CONVERSATION", "name": "Get a single conversation", "description": "Tool to retrieve detailed information for a single conversation including all messages and extended participant information. Use when you need complete conversation data beyond what's available in list responses." }, { "slug": "CANVAS_GET_SINGLE_COURSE", "name": "Get a single course", "description": "Retrieves detailed information for a specific Canvas course using its `course_id`, which must be valid, and allows for including additional data fields in the response via the `include` parameter. Concluded or unpublished courses may have restricted visibility depending on the caller's role; include 'concluded' in `include` to retrieve richer metadata for such courses." }, { "slug": "CANVAS_GET_SINGLE_EXTERNAL_TOOL", "name": "Get a single external tool", "description": "Tool to retrieve detailed information for a specific external tool within a Canvas account. Use when you need to get configuration details, settings, or metadata for an external tool." }, { "slug": "CANVAS_GET_SINGLE_GRADING_STANDARD_IN2", "name": "Get a single grading standard in course context", "description": "Retrieves a single grading standard for the given course context that is visible to the user. Use when you need to view the complete configuration and grading scheme of a specific grading standard within a course." }, { "slug": "CANVAS_GET_SINGLE_POLL", "name": "Get a single poll", "description": "Tool to retrieve a single poll by its ID from Canvas. Use when you need to fetch detailed information about a specific poll including its question, description, creation time, and aggregated results." }, { "slug": "CANVAS_GET_SINGLE_POLL_CHOICE", "name": "Get a single poll choice", "description": "Tool to retrieve a single poll choice by its ID from a Canvas poll. Use when you need to fetch detailed information about a specific poll choice option including its text, position, and correctness status." }, { "slug": "CANVAS_GET_SINGLE_QUIZ", "name": "Get a single quiz", "description": "Retrieves detailed information for a specific quiz in a Canvas course. Use when you need to view quiz settings, questions count, due dates, or other quiz metadata." }, { "slug": "CANVAS_GET_SINGLE_QUIZ_SUBMISSION", "name": "Get single quiz submission", "description": "Tool to retrieve a single quiz submission by ID. Use when you need details about a specific student's quiz attempt. Returns submission status, score, timing, and optionally related assignment, quiz, or user data." }, { "slug": "CANVAS_GET_SINGLE_SUBMISSION", "name": "Get single submission", "description": "Retrieves a specific submission for an assignment made by a particular user within a designated course." }, { "slug": "CANVAS_GET_SINGLE_SUBMISSION_BY_SECTION", "name": "Get single submission by section", "description": "Retrieves a specific submission for an assignment made by a particular user within a designated section. Use when you have section_id instead of course_id." }, { "slug": "CANVAS_GET_SINGLE_TOPIC", "name": "Get a single discussion topic", "description": "Tool to retrieve detailed information about a single discussion topic in a Canvas course. Use when you need to fetch data for a specific discussion topic by its ID." }, { "slug": "CANVAS_GET_SINGLE_TOPIC2", "name": "Get a single group discussion topic", "description": "Tool to retrieve detailed information about a single discussion topic within a Canvas group. Use when you need to fetch data for a specific discussion topic by its ID from a group context." }, { "slug": "CANVAS_GET_SINGLE_USER", "name": "Get Single User", "description": "Retrieves detailed information for a single user in a Canvas course. Accepts the same include[] parameters as the list users endpoint and returns a single user with the same fields." }, { "slug": "CANVAS_GET_STATUS_OF_LAST_REPORT", "name": "Get Status of Last Report", "description": "Tool to retrieve the status of the last generated report for a specific course in Canvas. Use when you need to check the completion status, download URL, or progress of a course report." }, { "slug": "CANVAS_GET_SUB_ACCOUNTS", "name": "Get sub-accounts of an account", "description": "List accounts that are sub-accounts of the given account. Use when you need to retrieve the organizational hierarchy of Canvas accounts." }, { "slug": "CANVAS_GET_SUBMISSION", "name": "Get submission", "description": "Tool to retrieve submission information by ID using the Canvas GraphQL API. Use when you need to fetch submission details including state, attempt number, and associated user/assignment data." }, { "slug": "CANVAS_GET_SUBMISSION_SUMMARY", "name": "Get assignment submission summary", "description": "Retrieves submission summary counts for a specific assignment. Returns the number of submissions categorized as graded, ungraded, and not submitted based on gradeable students." }, { "slug": "CANVAS_GET_TERMS_OF_SERVICE", "name": "Get terms of service", "description": "Tool to retrieve the terms of service for a Canvas account. Use when you need to access the terms of service content, acceptance requirements, or registration settings for an account." }, { "slug": "CANVAS_GET_THE_QUIZ_SUBMISSION", "name": "Get quiz submission", "description": "Tool to get the quiz submission for the current user in a specific quiz. Use when you need to retrieve submission details for the authenticated user." }, { "slug": "CANVAS_GET_UNREAD_COUNT", "name": "Get Unread Count", "description": "Tool to get the number of unread conversations for the current user. Use when you need to check how many unread conversations the authenticated user has." }, { "slug": "CANVAS_GET_UPLOADED_MEDIA_FOLDER_FOR_USER", "name": "Get uploaded media folder for user", "description": "Tool to retrieve the details for a designated upload folder that the user has rights to upload media to, creating it if it doesn't exist. Use when you need to access or manage the media upload folder for a specific course." }, { "slug": "CANVAS_GET_UPLOADED_MEDIA_FOLDER_FOR_USER_GROUPS", "name": "Get uploaded media folder for user (groups)", "description": "Tool to retrieve the details for a designated upload folder that the user has rights to upload media to within a group, creating it if it doesn't exist. Use when you need to access or manage the media upload folder for a specific group." }, { "slug": "CANVAS_GET_USER_ACTIVITY_STREAM_SUMMARY", "name": "Get user activity stream summary", "description": "Tool to retrieve a summary of the current user's global activity stream. Returns aggregated counts by activity type (discussions, conversations, messages, etc.) across all courses. Use when you need an overview of the user's activity across their entire Canvas account." }, { "slug": "CANVAS_GET_USER_ASSIGNMENT_ANALYTICS", "name": "Get user assignment analytics", "description": "Fetches detailed assignment-level analytics for a specific student in a designated course, including submission details and class performance statistics." }, { "slug": "CANVAS_GET_USER_AVATARS", "name": "Get User Avatars", "description": "Tool to retrieve available avatar options for a Canvas user. Use when you need to list all avatar choices for a user, including uploaded images and default options." }, { "slug": "CANVAS_GET_USER_CONTENT_EXPORT", "name": "Get user content export", "description": "Tool to retrieve information about a specific content export job for a user. Use when you need to check the status of a user's export and get the download URL when the export completes." }, { "slug": "CANVAS_GET_USER_COURSE_PROGRESS", "name": "Get user course progress", "description": "Retrieves the academic progress of a specific user within a given course." }, { "slug": "CANVAS_GET_USER_FILE", "name": "Get user file", "description": "Tool to retrieve detailed metadata for a specific file owned by a user. Use when you need information about a file in a user's context, including its name, size, content type, URLs, and optionally the user who uploaded it." }, { "slug": "CANVAS_GET_USER_FOLDER", "name": "Get user folder", "description": "Tool to retrieve details for a specific folder in a user's Canvas file space. Use 'root' as the folder ID to get the root folder, or 'self' as user_id for the current authenticated user." }, { "slug": "CANVAS_GET_USER_MIGRATION_ISSUE", "name": "Get user migration issue", "description": "Tool to retrieve detailed information about a specific migration issue for a user in Canvas. Use when you need to investigate issues that occurred during a user's content migration process." }, { "slug": "CANVAS_GET_USER_PARTICIPATION_ANALYTICS", "name": "Get user participation analytics", "description": "Retrieves page view activity and participation details for a specific student enrolled in a designated course." }, { "slug": "CANVAS_GET_USER_PROFILE", "name": "Get User Profile", "description": "Retrieves profile information for an existing Canvas user." }, { "slug": "CANVAS_GET_USERS_CUSTOM_DATA_SCOPE", "name": "Get Users Custom Data Scope", "description": "Tool to retrieve custom data stored for a Canvas user within a specified namespace and optional scope. Use when you need to fetch application-specific data that was previously stored for a user. The namespace parameter (ns) is required to prevent data collisions between different applications." }, { "slug": "CANVAS_GET_USERS_SELF_FILES", "name": "Get users self files", "description": "Tool to retrieve all files for the currently authenticated user. Use when you need to list files in the user's personal file storage. Supports filtering by content type, searching by filename, and sorting options." }, { "slug": "CANVAS_GET_USERS_TOKENS", "name": "Get User Token", "description": "Retrieves detailed information about a specific access token for a Canvas user. Use when you need to inspect token properties like expiration, scopes, or workflow state." }, { "slug": "CANVAS_GET_VISIBLE_COURSE_NAVIGATION_TOOLS", "name": "Get visible course navigation tools", "description": "Tool to get external tools with course_navigation placement that are visible to the requesting user. Use when you need to see which external tools appear in the course navigation menu for one or more courses." }, { "slug": "CANVAS_GET_VISIBLE_COURSE_NAVIGATION_TOOLS_FOR", "name": "Get visible course navigation tools", "description": "Retrieves external tools with course_navigation placement that are visible in the course navigation for a specific course. Use when you need to see which external tools appear in the course navigation menu for a given course." }, { "slug": "CANVAS_GRADE_COMMENT_SUBMISSION", "name": "Grade or comment on a submission", "description": "Updates a student's assignment submission with a grade, comment, sticker, or status change; requires `course_id`, `assignment_id`, `user_id`, and at least one update field. Rubric assessments are not supported and require a separate Canvas API call." }, { "slug": "CANVAS_GRADE_OR_COMMENT_ON_SUBMISSION_SECTIONS", "name": "Grade or comment on submission (sections)", "description": "Update grades and/or add comments to a student's assignment submission. Use when you need to provide feedback or scoring. Requires permission to manage grades when updating grades or rubric assessments." }, { "slug": "CANVAS_HIDE_ALL_STREAM_ITEMS", "name": "Hide all stream items", "description": "Tool to hide all activity stream items for the current user. Use when the user wants to clear their entire activity stream." }, { "slug": "CANVAS_HIDE_ASSIGNMENT_GRADES_FOR_SECTIONS", "name": "Hide assignment grades for sections", "description": "Tool to hide assignment grades for specific sections in Canvas. Use when you need to conceal grades from students in particular course sections, typically during grading periods or before releasing final grades." }, { "slug": "CANVAS_HIDE_STREAM_ITEM", "name": "Hide stream item", "description": "Tool to hide a stream item from the user's activity stream. Use when you want to remove a specific activity item from view." }, { "slug": "CANVAS_IMPORT_OUTCOME_GROUP_COURSES", "name": "Import an outcome group (courses)", "description": "Tool to import an outcome group into a Canvas course. Creates a new subgroup with the same title and description as the source, then creates links to the same outcomes and recursively imports subgroups. Use when duplicating outcome groups within or across courses. Set async=true for large imports to track progress." }, { "slug": "CANVAS_INVITE_OTHERS_TO_GROUP", "name": "Invite others to a group", "description": "Tool to send invitations to all supplied email addresses which will allow the receivers to join the group. Use when you need to add new members to a Canvas group via email invitation." }, { "slug": "CANVAS_LEAVE_GROUP", "name": "Leave a group", "description": "Tool to leave a group by removing the specified membership. Use when you need to remove a user from a group they are allowed to leave. Note: Some groups, such as sets of course groups created by teachers, cannot be left." }, { "slug": "CANVAS_LEAVE_GROUP2", "name": "Leave group", "description": "Tool to leave a group if allowed. Use when a user needs to exit a group membership. Note that some groups, such as course groups created by teachers, cannot be left by members." }, { "slug": "CANVAS_LIST_ACCOUNT_NOTIFICATIONS", "name": "List account notifications", "description": "Tool to retrieve all active global notifications for a Canvas account. Use when you need to check current announcements for the user. Closed notifications are excluded unless include_past is specified." }, { "slug": "CANVAS_LIST_ACCOUNTS_FOR_COURSE_ADMINS", "name": "List Accounts for Course Admins", "description": "Retrieves Canvas accounts visible to the current user due to their course-level administrative roles; no request parameters are needed." }, { "slug": "CANVAS_LIST_ACTIVITY_STREAM", "name": "List the activity stream", "description": "Retrieves the current user's global activity stream from Canvas, paginated. Returns recent activities across courses including discussions, conversations, messages, submissions, conferences, and announcements. Use to display user's recent Canvas activity or notifications." }, { "slug": "CANVAS_LIST_ALL_COURSES_GRAPH_QL", "name": "List all courses (GraphQL)", "description": "Tool to retrieve all courses that the user is enrolled in using the Canvas GraphQL API. Returns information about courses on the user's dashboard." }, { "slug": "CANVAS_LIST_ALL_FOLDERS", "name": "List all folders", "description": "Retrieves the paginated list of all folders for a specified Canvas course. Returns a flat list containing the root folder and all nested subfolders. This action is scoped to courses only." }, { "slug": "CANVAS_LIST_ALL_FOLDERS_GROUPS", "name": "List all folders for group", "description": "Retrieves the paginated list of all folders for a specified Canvas group. Returns a flat list containing the root folder and all nested subfolders." }, { "slug": "CANVAS_LIST_ALL_FOLDERS_USERS", "name": "List all folders for user", "description": "Tool to retrieve the paginated list of all folders for a specified Canvas user. Returns a flat list containing the root folder and all nested subfolders. Use when you need to access or browse a user's folder structure." }, { "slug": "CANVAS_LIST_ANNOUNCEMENTS", "name": "List Announcements", "description": "Tool to retrieve paginated list of announcements for specified courses and date range. Use when you need to fetch course announcements with optional filtering by dates and inclusion of additional context." }, { "slug": "CANVAS_LIST_APPOINTMENT_GROUPS", "name": "List appointment groups", "description": "Retrieves a list of Canvas appointment groups based on specified filters; any provided `context_codes` must be valid and accessible by the user." }, { "slug": "CANVAS_LIST_ASSIGNMENT_GROUPS", "name": "List assignment groups", "description": "Returns the paginated list of assignment groups for the current context. Use when you need to retrieve assignment groups for a course. The returned groups are sorted by their position field." }, { "slug": "CANVAS_LIST_ASSIGNMENT_OVERRIDES", "name": "List assignment overrides", "description": "Tool to retrieve the paginated list of overrides for an assignment. Use when you need to see which sections, groups, or students have custom due dates or availability settings for a specific assignment." }, { "slug": "CANVAS_LIST_ASSIGNMENTS_FOR_ASSIGNMENT_GROUP", "name": "List assignments for assignment group", "description": "Tool to retrieve the paginated list of assignments for a specific assignment group within a course. Use when you need assignments grouped by assignment group rather than all assignments for a course." }, { "slug": "CANVAS_LIST_ASSIGNMENTS_FOR_USER", "name": "List assignments for user in course", "description": "Tool to list assignments for a specific user in a Canvas course. Use when you need to retrieve assignments visible to a particular user, with optional filtering by due date, submission status, or search term. This endpoint respects user permissions and returns only assignments the specified user has rights to view." }, { "slug": "CANVAS_LIST_ASSIGNMENT_SUBMISSIONS", "name": "List assignment submissions", "description": "Retrieves submissions for a specific assignment within a course, optionally including related resources or grouping by student group for group assignments. Supports pagination to retrieve more than the default 10 submissions." }, { "slug": "CANVAS_LIST_ASSIGNMENT_SUBMISSIONS_BY_SECTION", "name": "List assignment submissions by section", "description": "Tool to list all submissions for an assignment within a specific section. Use when you need to retrieve submissions for a section-level assignment rather than a course-level assignment." }, { "slug": "CANVAS_LIST_AUTHENTICATION_EVENTS_FOR_USER", "name": "List Authentication Events for User", "description": "Tool to list authentication events (logins and logouts) for a given user from Canvas LMS audit logs. Use when you need to track user authentication activity or investigate login/logout history. Events are stored for one year and returned in descending chronological order." }, { "slug": "CANVAS_LIST_AVAILABLE_ACCOUNT_CALENDARS", "name": "List available account calendars", "description": "Returns a paginated list of account calendars available to the current user. Includes visible account calendars where the user has an account association." }, { "slug": "CANVAS_LIST_AVAILABLE_REPORTS", "name": "List Available Reports", "description": "Lists available reports (including those that can be or have been generated) for a valid Canvas account ID." }, { "slug": "CANVAS_LIST_AVAILABLE_TABS_FOR_COURSE", "name": "List Available Tabs for a Course", "description": "Tool to retrieve navigation tabs for a Canvas course. Use when you need to see available navigation options for a specific course." }, { "slug": "CANVAS_LIST_AVAILABLE_TABS_FOR_COURSE3", "name": "List Available Tabs for a Group", "description": "Tool to retrieve navigation tabs for a Canvas group. Use when you need to see available navigation options for a specific group." }, { "slug": "CANVAS_LIST_AVAILABLE_TABS_FOR_USER", "name": "List Available Tabs for User", "description": "Tool to retrieve a paginated list of navigation tabs available in a user context. Use when you need to discover what tabs (like Home, Assignments, Grades, etc.) are accessible for a specific user." }, { "slug": "CANVAS_LIST_BLACKOUT_DATES", "name": "List blackout dates for account", "description": "Retrieves the list of blackout dates for a Canvas account context. Blackout dates prevent scheduling assignments on specific dates in course pacing." }, { "slug": "CANVAS_LIST_BLUEPRINT_IMPORTS", "name": "List Blueprint Imports", "description": "Tool to list blueprint migrations imported into a course associated with a blueprint. Use when you need to see a paginated list of sync operations from a blueprint course to an associated course, starting with the most recent." }, { "slug": "CANVAS_LIST_BOOKMARKS", "name": "List Bookmarks", "description": "Returns the paginated list of bookmarks for the authenticated user. Use when you need to retrieve all bookmarks saved by the current user." }, { "slug": "CANVAS_LIST_CALENDAR_EVENTS", "name": "List calendar events for current user", "description": "Tool to retrieve the paginated list of calendar events or assignments for the current user. Use when you need to fetch upcoming events, assignments, or both with various filtering options like date ranges, context codes, and event types." }, { "slug": "CANVAS_LIST_CALENDAR_EVENTS_FOR_USER", "name": "List calendar events for a user", "description": "Retrieves calendar events and assignments for a specific user from Canvas LMS, supporting extensive filtering options detailed in the request schema. Returned due_at values are ISO 8601 UTC; convert to user's local timezone before display. For pending task identification, exclude items where locked_for_user is true or has_submitted_submissions is true. Results may be incomplete even when assignments exist; do not use as the sole source for pending task lists." }, { "slug": "CANVAS_LIST_CANVAS_ENABLED_FEATURES3", "name": "List Enabled Features for a User", "description": "Tool to retrieve a paginated list of enabled feature names for a Canvas user. Use when you need to check which optional features are currently active for a specific user." }, { "slug": "CANVAS_LIST_CANVAS_EXTERNAL_TOOLS2", "name": "List external tools for course", "description": "Tool to retrieve the paginated list of external tools for a course. Use when you need to discover LTI tools available in a course context." }, { "slug": "CANVAS_LIST_CLOSED_POLL_SESSIONS", "name": "List closed poll sessions", "description": "Tool to retrieve a paginated list of all closed poll sessions available to the current user. Use when you need to see which poll sessions have been closed and their results." }, { "slug": "CANVAS_LIST_COMM_MESSAGES", "name": "List communication messages", "description": "Retrieves communication messages from Canvas." }, { "slug": "CANVAS_LIST_COMMUNICATION_CHANNELS", "name": "List communication channels", "description": "Retrieves a list of communication channels associated with a specific user in Canvas." }, { "slug": "CANVAS_LIST_CONFERENCES_FOR_CURRENT_USER", "name": "List Conferences for Current User", "description": "Tool to retrieve the paginated list of conferences for all courses and groups the current user belongs to. Use when you need to get conferences for the authenticated user." }, { "slug": "CANVAS_LIST_CONTENT_EXPORTS", "name": "List content exports", "description": "Lists all content export jobs for a course. Content exports are snapshots of course content that can be downloaded as Common Cartridge (IMSCC), QTI, or ZIP files. Returns exports in reverse chronological order (newest first), including their status, type, and download URLs when available." }, { "slug": "CANVAS_LIST_CONTENT_EXPORTS_GROUPS", "name": "List content exports for groups", "description": "Lists all content export jobs for a group. Content exports are snapshots of group content that can be downloaded as Common Cartridge (IMSCC), QTI, or ZIP files. Returns exports in reverse chronological order (newest first), including their status, type, and download URLs when available." }, { "slug": "CANVAS_LIST_CONTENT_LICENSES", "name": "List content licenses for a course", "description": "Tool to retrieve a list of content licenses that can be applied to course content in Canvas. Use when you need to know what license options are available for a specific course." }, { "slug": "CANVAS_LIST_CONTENT_MIGRATIONS4", "name": "List content migrations for user", "description": "Tool to retrieve paginated content migrations for a specified user in Canvas. Use when you need to view the list of content migration operations initiated by or for a user." }, { "slug": "CANVAS_LIST_CONTENT_MIGRATIONS_GROUPS", "name": "List content migrations for groups", "description": "Lists all content migrations for a group. Content migrations allow importing group content from various sources like Common Cartridge files or external systems. Returns migrations with their current status, progress URLs, and any associated files or issues." }, { "slug": "CANVAS_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Tool to retrieve the paginated list of conversations for the current user, most recent ones first. Use when you need to fetch user conversations with optional filtering by scope (unread, starred, archived, sent) and context (courses, groups, users)." }, { "slug": "CANVAS_LIST_COUNTS_FOR_TODO_ITEMS", "name": "List counts for todo items", "description": "Get counts of different todo items for the current user, including assignments needing grading and assignments needing submitting. Note: Only counts the first 100 todo items." }, { "slug": "CANVAS_LIST_COURSE_BLACKOUT_DATES", "name": "List blackout dates for course", "description": "Tool to retrieve the list of blackout dates for a Canvas course. Use when you need to check which dates are blocked for assignments in course pacing." }, { "slug": "CANVAS_LIST_COURSE_NICKNAMES", "name": "List Course Nicknames", "description": "Tool to retrieve all course nicknames set by the current user. Use when you need to see all custom course name preferences." }, { "slug": "CANVAS_LIST_COURSES", "name": "List courses", "description": "Retrieves a list of the current user's courses from Canvas, optionally filtered by enrollment type and state. Excessive request frequency may return HTTP 429; respect the Retry-After header before retrying." }, { "slug": "CANVAS_LIST_COURSE_SECTIONS", "name": "List course sections", "description": "Tool to retrieve a paginated list of sections for a specific course. Use when you need to get all sections or search for specific sections within a course." }, { "slug": "CANVAS_LIST_COURSES_FOR_USER", "name": "List Courses for a User", "description": "Retrieves a list of courses in Canvas for a specified `user_id`, requiring observer or admin permissions to view courses for others." }, { "slug": "CANVAS_LIST_COURSE_SUBGROUPS", "name": "List Course Subgroups", "description": "Tool to retrieve a paginated list of immediate OutcomeGroup children of an outcome group in a course. Use when you need to explore the hierarchical structure of learning outcomes within a specific course." }, { "slug": "CANVAS_LIST_COURSES_WITH_THEIR_LATEST_E_PUB_EXPORT", "name": "List courses with their latest ePub export", "description": "Tool to list all courses a user is actively participating in and their latest ePub exports. Use when you need to see which courses have been exported and their export status." }, { "slug": "CANVAS_LIST_COURSE_TODO_ITEMS", "name": "List Course TODO Items", "description": "Returns the current user's course-specific todo items. Use this to get assignments that need grading or submission for a specific course. For full documentation, see the API documentation for user todo items in the Users API." }, { "slug": "CANVAS_LIST_COURSE_USERS", "name": "List Course Users", "description": "Retrieves a paginated list of users for a given Canvas `course_id` (which must be an existing course), supporting various filtering, sorting, and data inclusion options." }, { "slug": "CANVAS_LIST_CUSTOM_GRADEBOOK_COLUMNS", "name": "List custom gradebook columns", "description": "Returns a paginated list of all custom gradebook columns for a course. Use when you need to retrieve custom columns that instructors have added to the gradebook." }, { "slug": "CANVAS_LIST_DISCUSSION_ENTRIES", "name": "List Discussion Entries", "description": "Tool to retrieve paginated discussion entries for a specific discussion topic in a course. Use when needing to list all posts and replies under a given topic, supports pagination." }, { "slug": "CANVAS_LIST_DISCUSSION_ENTRY_LIST", "name": "List Discussion Entry List", "description": "Tool to retrieve a paginated list of discussion entries by their ids from a group discussion topic. Use when needing to fetch specific entries given their identifiers. May require that the user has posted in the topic; if required and user has not posted, returns 403 Forbidden with body 'require_initial_post'." }, { "slug": "CANVAS_LIST_DISCUSSION_TOPICS", "name": "List Discussion Topics", "description": "Retrieves a paginated list of discussion topics or announcements for a specified course." }, { "slug": "CANVAS_LIST_DISCUSSION_TOPICS2", "name": "List discussion topics for group", "description": "Tool to retrieve the paginated list of discussion topics for a specific group. Use when you need to list or browse discussion topics within a group context." }, { "slug": "CANVAS_LIST_ENABLED_FEATURES_COURSES", "name": "List Enabled Features for a Course", "description": "Tool to retrieve a paginated list of enabled feature names for a Canvas course. Use when you need to check which optional features are currently active on a specific course." }, { "slug": "CANVAS_LIST_ENROLLMENTS", "name": "List Enrollments", "description": "Tool to retrieve a paginated list of enrollments for a course, section, or user. Use when you need to query enrollments with filters like type, state, or role." }, { "slug": "CANVAS_LIST_ENROLLMENT_TERMS", "name": "List Enrollment Terms", "description": "Tool to retrieve a paginated list of all enrollment terms in an account. Use when you need to query terms with filters like workflow state or search by name." }, { "slug": "CANVAS_LIST_ENTRIES_BY_IDS", "name": "List Entries By IDs", "description": "Tool to retrieve specific discussion entries by their IDs from a discussion topic. May require user to have posted if topic requires initial post (responds with 403 Forbidden if not met)." }, { "slug": "CANVAS_LIST_ENTRIES_FOR_COLUMN", "name": "List entries for a column", "description": "Tool to retrieve entries from a custom gradebook column for a course. Use when you need to view data entered in custom columns. Note: Only returns entries for students with associated data; students without entries are excluded." }, { "slug": "CANVAS_LIST_ENTRY_REPLIES", "name": "List Entry Replies", "description": "Tool to retrieve replies for a specific discussion entry in a course. Use when needing to list all replies to a particular discussion entry." }, { "slug": "CANVAS_LIST_ENVIRONMENT_FEATURES", "name": "List environment features", "description": "Tool to return a hash of global feature options that pertain to the Canvas user interface. Use when you need to check which features are enabled in the Canvas environment." }, { "slug": "CANVAS_LIST_ENVIRONMENT_SETTINGS", "name": "List Environment Settings", "description": "Retrieves global environment settings for the root Canvas account. Use when you need to access instance-wide configuration values." }, { "slug": "CANVAS_LIST_EXTERNAL_FEEDS_FOR_GROUP", "name": "List external feeds for group", "description": "Tool to retrieve the paginated list of external RSS feeds for a group. Use when you need to discover what external feeds are configured to automatically create announcements in a group." }, { "slug": "CANVAS_LIST_EXTERNAL_TOOLS", "name": "List External Tools", "description": "Retrieves the paginated list of external tools for the specified Canvas account. Use to discover LTI tools available in the account context." }, { "slug": "CANVAS_LIST_FAVORITE_COURSES", "name": "List favorite courses", "description": "Tool to retrieve the paginated list of favorite courses for the current user. Use when you need to get the user's favorite courses. If the user has not chosen any favorites, then a selection of currently enrolled courses will be returned." }, { "slug": "CANVAS_LIST_FAVORITE_GROUPS", "name": "List favorite groups", "description": "Retrieves the paginated list of favorite groups for the current user. Use when you need to see which groups a user has favorited." }, { "slug": "CANVAS_LIST_FEATURES_COURSES", "name": "List Features for Course", "description": "Retrieves all feature flags for a Canvas course. Use when checking which features are available or enabled for a specific course." }, { "slug": "CANVAS_LIST_FEATURES_USERS", "name": "List Features for User", "description": "Retrieves a paginated list of all features that apply to a given User. Use when checking which features are available or enabled for a specific user." }, { "slug": "CANVAS_LIST_FILES", "name": "List Files", "description": "Fetches metadata (ID, name, size, type, URLs) for all files within a specified Canvas course." }, { "slug": "CANVAS_LIST_FILES_IN_FOLDER", "name": "List files in folder", "description": "Tool to list files within a specific Canvas folder. Use when you need to retrieve files from a particular folder by its ID." }, { "slug": "CANVAS_LIST_FOLDERS", "name": "List folders", "description": "Retrieves a list of immediate sub-folders within the specified `folder_id`." }, { "slug": "CANVAS_LIST_GLOBAL_SUBGROUPS", "name": "List Global Subgroups", "description": "Tool to retrieve a paginated list of immediate OutcomeGroup children of a global outcome group. Use when you need to explore the hierarchical structure of global learning outcomes." }, { "slug": "CANVAS_LIST_GRADEABLE_STUDENTS", "name": "List gradeable students", "description": "Tool to retrieve a paginated list of students eligible to submit a specific assignment. Use when you need to identify which students can submit work for grading. The caller must have permission to view grades in the course." }, { "slug": "CANVAS_LIST_GRADING_PERIODS_FOR_COURSE", "name": "List grading periods for a course", "description": "Returns the paginated list of grading periods for the current course. Use when you need to view grading period configurations for a specific course." }, { "slug": "CANVAS_LIST_GRADING_STANDARDS_AVAILABLE_IN_CONTEXT", "name": "List Grading Standards Available in Context", "description": "Tool to retrieve grading standards available in a Canvas course context. Use when you need to list or view the grading schemes configured for a specific course." }, { "slug": "CANVAS_LIST_GROUP_CATEGORIES_FOR_A_CONTEXT2", "name": "List group categories for a course", "description": "Tool to retrieve group categories in a course context. Use when you need to list all group categories for a specific course." }, { "slug": "CANVAS_LIST_GROUP_ENTRY_REPLIES", "name": "List Group Entry Replies", "description": "Tool to retrieve paginated replies to a top-level entry in a group discussion topic. Use when needing to list all replies to a particular discussion entry in a group. May require that the user has posted in the topic depending on topic settings." }, { "slug": "CANVAS_LIST_GROUP_EXTERNAL_TOOLS", "name": "List external tools for group", "description": "Tool to retrieve the paginated list of external tools for a group. Use when you need to discover LTI tools available in a group context." }, { "slug": "CANVAS_LIST_GROUP_FILES", "name": "List Group Files", "description": "Tool to retrieve the paginated list of files for a specified group in Canvas. Use when you need to access or list files within a group context." }, { "slug": "CANVAS_LIST_GROUP_MEMBERSHIPS", "name": "List Group Memberships", "description": "Tool to retrieve a paginated list of members in a Canvas group. Use when you need to query group memberships with optional workflow state filters." }, { "slug": "CANVAS_LIST_GROUPS_AVAILABLE_IN_CONTEXT", "name": "List groups available in a context", "description": "Tool to retrieve the paginated list of active groups in a course context that are visible to the user. Use when you need to list all groups available in a specific course." }, { "slug": "CANVAS_LIST_GROUPS_IN_ACCOUNT", "name": "List Groups in Account", "description": "Retrieves the paginated list of active groups in the specified Canvas account (use 'self' for current user's root account) that are visible to the user. Supports filtering by user membership and collaboration state." }, { "slug": "CANVAS_LIST_GROUPS_USERS", "name": "List group's users", "description": "Retrieves a paginated list of users in a Canvas group. Use when you need to see all members of a specific group." }, { "slug": "CANVAS_LIST_LICENSES", "name": "List Licenses", "description": "Retrieves a paginated list of licenses that can be applied to content in Canvas. Use when setting usage rights for files or determining available licensing options." }, { "slug": "CANVAS_LIST_LICENSES_GROUPS", "name": "List licenses for a group", "description": "Tool to retrieve a paginated list of content licenses that can be applied to group content in Canvas. Use when you need to know what license options are available for a specific group." }, { "slug": "CANVAS_LIST_LINKED_OUTCOMES", "name": "List linked outcomes for outcome group", "description": "Tool to retrieve a paginated list of the immediate OutcomeLink children of an outcome group. Use when you need to list outcomes linked to a specific outcome group within an account." }, { "slug": "CANVAS_LIST_LINKED_OUTCOMES2", "name": "List linked outcomes for course outcome group", "description": "Tool to retrieve a paginated list of the immediate OutcomeLink children of an outcome group in a course. Use when you need to list outcomes linked to a specific outcome group within a course context." }, { "slug": "CANVAS_LIST_LTI_LAUNCH_DEFINITIONS_COURSES", "name": "List LTI Launch Definitions for Course", "description": "Retrieves LTI launch definitions for a Canvas course. Use to discover LTI app placements available in the course context. Note: If placements parameter is not provided, an empty list will be returned." }, { "slug": "CANVAS_LIST_MANAGEABLE_ACCOUNTS", "name": "List Manageable Accounts", "description": "Retrieves Canvas accounts where the current user has permission to create or manage courses. Use when you need to see which accounts an admin can manage. List will be empty for students and teachers." }, { "slug": "CANVAS_LIST_MEDIA_OBJECTS", "name": "List Media Objects", "description": "Tool to list media objects associated with a Canvas course. Use when you need to retrieve video/audio attachments for a specific course." }, { "slug": "CANVAS_LIST_MEDIA_OBJECTS2", "name": "List Media Objects 2", "description": "Tool to list media objects created by the user for a Canvas course. Use when you need to retrieve video/audio content associated with a specific course." }, { "slug": "CANVAS_LIST_MEDIA_OBJECTS3", "name": "List Media Objects for Group", "description": "Tool to list media objects created by the user in a Canvas group. Use when you need to retrieve video/audio attachments for a specific group." }, { "slug": "CANVAS_LIST_MEDIA_OBJECTS4", "name": "List Media Objects for Group", "description": "Tool to list media objects associated with a Canvas group. Use when you need to retrieve video/audio content for a specific group." }, { "slug": "CANVAS_LIST_MEDIA_OBJECTS6", "name": "List Media Objects for User", "description": "Tool to list media objects created by the authenticated user. Use when you need to retrieve video/audio objects uploaded by the current user across all courses." }, { "slug": "CANVAS_LIST_MIGRATION_ISSUES", "name": "List migration issues", "description": "Retrieves paginated list of issues that occurred during a content migration. Use this to identify problems, warnings, or items requiring attention after importing content into Canvas. Issues are returned with details about their severity, current status, and links to investigate or resolve them." }, { "slug": "CANVAS_LIST_MIGRATION_SYSTEMS_GROUPS", "name": "List migration systems for group", "description": "Lists the currently available migration types for a Canvas group. Use this to determine which content import types are supported before creating a content migration. Migration types vary by Canvas instance and may include Common Cartridge, Canvas Cartridge, course copy, QTI, Moodle, and other importers." }, { "slug": "CANVAS_LIST_MIGRATION_SYSTEMS_USERS", "name": "List migration systems for user", "description": "Lists currently available migration types for importing content into a user's Canvas context. Use this to discover which migration systems are supported before creating a content migration." }, { "slug": "CANVAS_LIST_MISSING_SUBMISSIONS", "name": "List missing submissions for a user", "description": "List past-due assignments for which the student does not have a submission. The user making the request must either be the student, an admin, or a parent observer using the parent app. Use this to identify assignments that are overdue and still need to be completed." }, { "slug": "CANVAS_LIST_MODULE_ITEMS", "name": "List module items", "description": "Retrieves a paginated list of items (assignments, quizzes, pages, files, etc.) from a specific module in a Canvas course. Use when you need to see the contents and structure of a module." }, { "slug": "CANVAS_LIST_MODULES", "name": "List Modules", "description": "Tool to retrieve a paginated list of modules in a Canvas course. Use when you need to see all modules in a course, including their structure, items, and completion requirements." }, { "slug": "CANVAS_LIST_MY_ADMIN_ROLES", "name": "List My Admin Roles", "description": "Retrieves a paginated list of the current user's admin roles in a Canvas account. Use when you need to check what administrative permissions the authenticated user has within a specific account." }, { "slug": "CANVAS_LIST_NOTIFICATION_PREFERENCE_CATEGORIES", "name": "List notification preference categories", "description": "Fetches all notification preference categories for a specific communication channel. Use this to discover which notification categories are available for configuring user notification preferences." }, { "slug": "CANVAS_LIST_NOTIFICATION_PREFERENCES", "name": "List notification preferences", "description": "Tool to fetch all notification preferences for a given communication channel. Use when you need to retrieve how a user has configured notification delivery for a specific channel." }, { "slug": "CANVAS_LIST_OBSERVEES", "name": "List Observees", "description": "Retrieves a paginated list of observees for a Canvas user. All users can list their own observees; administrators can list observees for other users." }, { "slug": "CANVAS_LIST_OBSERVERS", "name": "List observers for a user", "description": "Retrieves a paginated list of observers linked to a given user. All users can list their own observers using user_id='self'. Administrators can list other users' observers by providing the specific user_id." }, { "slug": "CANVAS_LIST_OPENED_POLL_SESSIONS", "name": "List opened poll sessions", "description": "Tool to retrieve a paginated list of all opened poll sessions available to the current user. Use when you need to see which poll sessions are currently open." }, { "slug": "CANVAS_LIST_PAGES_FOR_COURSE", "name": "List pages for a course", "description": "Retrieves a list of wiki pages associated with a specific, existing course in Canvas. Supports pagination via `page` and `per_page` query parameters for courses with many pages." }, { "slug": "CANVAS_LIST_PAGES_FOR_GROUP", "name": "List pages for a group", "description": "Tool to retrieve a paginated list of wiki pages associated with a Canvas group. Use when you need to list pages for a specific group." }, { "slug": "CANVAS_LIST_PLANNER_ITEMS", "name": "List planner items for a user", "description": "List a user's cross-course Planner items (assignments, discussions, quizzes, etc.) within a date range, including Planner override/completion state. Use this to retrieve items from the Canvas dashboard/to-do planner view." }, { "slug": "CANVAS_LIST_PLANNER_NOTES", "name": "List planner notes", "description": "Retrieve the paginated list of planner notes for the current authenticated user. Use to fetch personal to-do items and reminders from the Canvas planner." }, { "slug": "CANVAS_LIST_PLANNER_OVERRIDES", "name": "List Planner Overrides", "description": "Retrieves planner overrides for the currently authenticated user. Planner overrides allow users to mark plannable items as complete or dismissed in the Canvas planner." }, { "slug": "CANVAS_LIST_POLL_CHOICES_IN_A_POLL", "name": "List poll choices in a poll", "description": "Returns the paginated list of poll choices in a poll. Use when you need to retrieve all available choices for a specific poll." }, { "slug": "CANVAS_LIST_POLLS", "name": "List polls for current user", "description": "Retrieves the paginated list of polls for the current authenticated user. Use when you need to view all polls created by or accessible to the user." }, { "slug": "CANVAS_LIST_POLL_SESSIONS_FOR_POLL", "name": "List poll sessions for a poll", "description": "Tool to retrieve the paginated list of poll sessions for a specific poll. Use when you need to see all sessions associated with a particular poll." }, { "slug": "CANVAS_LIST_PREFERENCES", "name": "List notification preferences", "description": "Fetches all notification preferences for a given communication channel. Use when you need to see all notification settings for a specific user's communication channel." }, { "slug": "CANVAS_LIST_QUESTIONS_IN_QUIZ", "name": "List questions in a quiz", "description": "Returns the paginated list of QuizQuestions in this quiz. Use when you need to retrieve all questions for a quiz, or questions from a specific submission attempt." }, { "slug": "CANVAS_LIST_QUIZZES_IN_COURSE", "name": "List Quizzes in Course", "description": "Retrieves a paginated list of quizzes for a specified, valid Canvas course, optionally filtering by a search term in the quiz title." }, { "slug": "CANVAS_LIST_RECEIVED_CONTENT_SHARES", "name": "List received content shares", "description": "Retrieves content shares received by the specified user from other users or courses within Canvas. Use 'self' as user_id to retrieve your own received shares." }, { "slug": "CANVAS_LIST_RECENT_HISTORY_FOR_A_USER", "name": "List Recent History for a User", "description": "Return a paginated list of the user's recent browsing history in Canvas. History entries are returned in descending order, newest to oldest. Use to track recently visited assignments, pages, discussions, and other Canvas items." }, { "slug": "CANVAS_LIST_REVISIONS_FOR_GROUP_PAGE", "name": "List revisions for a group page", "description": "Tool to retrieve a paginated list of revisions for a specific page in a Canvas group. Use when you need to view the history of changes made to a group page. Callers must have update rights on the page to see its revision history." }, { "slug": "CANVAS_LIST_ROLES", "name": "List Roles", "description": "Retrieves all available roles in a Canvas account. Use when verifying enrollment roles or mapping user capabilities." }, { "slug": "CANVAS_LIST_SECTION_ENROLLMENTS", "name": "List Section Enrollments", "description": "Tool to retrieve a paginated list of enrollments for a specific section. Use when you need to query section enrollments with filters like type, state, or role." }, { "slug": "CANVAS_LIST_SENT_CONTENT_SHARES", "name": "List sent content shares", "description": "Retrieves content shares sent by the specified user to other users or courses within Canvas." }, { "slug": "CANVAS_LIST_STUDENTS", "name": "List Students", "description": "Tool to retrieve the paginated list of students enrolled in a Canvas course. Use when you need to get student information for a specific course. DEPRECATED: The Canvas API recommends using the course users endpoint with enrollment_type='student' instead." }, { "slug": "CANVAS_LIST_SUBGROUPS", "name": "List Subgroups", "description": "Retrieves a paginated list of immediate outcome subgroups for a specified outcome group. Use when you need to fetch the child outcome groups within an account's outcome group hierarchy." }, { "slug": "CANVAS_LIST_SUBMISSIONS", "name": "List submissions", "description": "Fetches gradebook history submissions for a specific course, assignment, grader, and date from Canvas." }, { "slug": "CANVAS_LIST_SUBMISSIONSFOR_MULTIPLE_ASSIGNMENTS", "name": "List submissions for multiple assignments", "description": "Retrieves submissions from a Canvas course for specified assignments and/or students; the course must be accessible." }, { "slug": "CANVAS_LIST_SUBMISSIONS_FOR_MULTIPLE_ASSIGNMENTS_SECTIONS", "name": "List submissions for multiple assignments in section", "description": "Tool to retrieve submissions from a Canvas section for specified assignments and/or students. Use when you need section-level submission data across multiple assignments." }, { "slug": "CANVAS_LIST_THE_ACTIVITY_STREAM", "name": "List the activity stream", "description": "Tool to retrieve the current user's global activity stream, paginated. Use when you need to see recent activities, notifications, or updates across all courses and groups the user is enrolled in." }, { "slug": "CANVAS_LIST_TODO_ITEMS", "name": "List the current user's TODO items", "description": "Retrieves a paginated list of the current user's todo items in Canvas. Use when you need to see pending tasks that require action, such as assignments needing submission or grading." }, { "slug": "CANVAS_LIST_TOPIC_ENTRIES", "name": "List Topic Entries", "description": "Tool to retrieve paginated top-level entries in a group discussion topic. Use when needing to list discussion entries in a group. May respond with 403 Forbidden if the topic requires an initial post and the user has not posted." }, { "slug": "CANVAS_LIST_UNCOLLATED_SUBMISSION_VERSIONS", "name": "List uncollated submission versions", "description": "Retrieves a feed of uncollated submission versions from the Gradebook history for a course; any provided `assignment_id` must be valid for the course, and any `user_id` must be for a user enrolled in the course." }, { "slug": "CANVAS_LIST_UPCOMING_ASSIGNMENTS_CALENDAR_EVENTS", "name": "List Upcoming Assignments Calendar Events", "description": "Tool to retrieve a paginated list of the current user's upcoming events and assignments. Use when you need to see what's coming up on the user's calendar, including both calendar events and assignment due dates." }, { "slug": "CANVAS_LIST_USER_CONTENT_EXPORTS", "name": "List user content exports", "description": "Tool to retrieve a paginated list of past and pending content export jobs for a user. Use when you need to view export history or check export status for a user. Exports are returned newest first." }, { "slug": "CANVAS_LIST_USER_ENROLLMENTS", "name": "List User Enrollments", "description": "Tool to retrieve a paginated list of all enrollments for a specific user. Use when you need to query a user's enrollments across courses, with filters like type, state, or term." }, { "slug": "CANVAS_LIST_USER_FILES", "name": "List User Files", "description": "Retrieves the paginated list of files for a specific user. Use when you need to access or enumerate files uploaded by or accessible to a user." }, { "slug": "CANVAS_LIST_USER_LOGINS", "name": "List user logins", "description": "Retrieves a paginated list of user logins for the specified Canvas account. Use when you need to see all login credentials associated with an account." }, { "slug": "CANVAS_LIST_USER_LOGINS2", "name": "List User Logins", "description": "Tool to retrieve a paginated list of logins for a specific Canvas user. Use when you need to see all login credentials associated with a particular user ID." }, { "slug": "CANVAS_LIST_USERS_IN_COURSE", "name": "List users in course", "description": "Tool to return the paginated list of users in a Canvas course. Use when you need to retrieve users enrolled in a specific course with optional enrollment details." }, { "slug": "CANVAS_LIST_USERS_IN_GROUP_CATEGORY", "name": "List users in group category", "description": "Retrieve a paginated list of users in a group category. Use when you need to see all users within a specific group category or filter for unassigned users." }, { "slug": "CANVAS_LIST_YOUR_GROUPS", "name": "List your groups", "description": "Returns a paginated list of active groups for the current user. Use this to retrieve all groups the authenticated user belongs to, optionally filtered by context type (Account or Course)." }, { "slug": "CANVAS_MARK_ALL_CONVERSATIONS_AS_READ", "name": "Mark all conversations as read", "description": "Tool to mark all conversations as read for the current user. Use when you need to mark all conversation messages in the inbox as read." }, { "slug": "CANVAS_MARK_ALL_ENTRIES_AS_READ", "name": "Mark all entries as read", "description": "Tool to mark the discussion topic and all its entries as read. Use when you need to mark all entries in a discussion topic as read for the current user." }, { "slug": "CANVAS_MARK_ALL_ENTRIES_AS_READ2", "name": "Mark all group discussion entries as read", "description": "Tool to mark the discussion topic and all its entries as read in a group. Use when you need to mark all entries in a group discussion topic as read for the current user." }, { "slug": "CANVAS_MARK_ALL_ENTRIES_AS_UNREAD2", "name": "Mark all group discussion entries as unread", "description": "Tool to mark the discussion topic and all its entries as unread for a group. Use when you need to flag an entire group discussion and all its replies as unread." }, { "slug": "CANVAS_MARK_ALL_TOPIC_AS_READ", "name": "Mark all discussion topics as read", "description": "Mark the initial text of all discussion topics as read in a course. Use when you need to mark all discussion topics in a course as read for the current user." }, { "slug": "CANVAS_MARK_ALL_TOPIC_AS_READ2", "name": "Mark all group discussion topics as read", "description": "Mark the initial text of all discussion topics as read in a group. Use when you need to mark all discussion topics in a group as read for the current user." }, { "slug": "CANVAS_MARK_BULK_SUBMISSIONS_AS_READ", "name": "Mark bulk submissions as read", "description": "Marks multiple submissions as read in a single operation. Use when you need to mark several submissions as read at once instead of marking them individually." }, { "slug": "CANVAS_MARK_BULK_SUBMISSIONS_AS_READ2", "name": "Mark bulk submissions as read (section)", "description": "Marks multiple submissions as read for a specific section. Use when you need to mark several submissions as read at once for a section instead of marking them individually." }, { "slug": "CANVAS_MARK_DOCUMENT_ANNOTATIONS_AS_READ", "name": "Mark document annotations as read", "description": "Marks document annotations on a submitted assignment as read by the student. Use when a student has viewed feedback annotations on their submission. Only the student who owns the submission can mark annotations as read." }, { "slug": "CANVAS_MARK_DOCUMENT_ANNOTATIONS_AS_READ2", "name": "Mark document annotations as read (section)", "description": "Tool to mark annotations on a submitted document as read by the student. Use when a student needs to acknowledge they have viewed feedback annotations on their submitted document. Note: Document annotations are automatically marked as read when viewed in Canvas web." }, { "slug": "CANVAS_MARK_ENTRY_AS_READ_GROUPS", "name": "Mark group discussion entry as read", "description": "Tool to mark a discussion entry as read in a group context. Use when you need to change the read status of a specific discussion entry to read within a group discussion." }, { "slug": "CANVAS_MARK_GROUP_ENTRY_AS_UNREAD", "name": "Mark group discussion entry as unread", "description": "Tool to mark a group discussion entry as unread. Use when you need to change the read status of a specific discussion entry in a group back to unread." }, { "slug": "CANVAS_MARK_MODULE_ITEM_READ", "name": "Mark module item as read", "description": "Tool to mark a module item as read, fulfilling the 'must view' requirement. Use when accessing external content directly without using the html_url redirect that normally fulfills view requirements." }, { "slug": "CANVAS_MARK_RUBRIC_ASSESSMENTS_AS_READ", "name": "Mark rubric assessments as read", "description": "Tool to mark rubric comments/grading on a submission as read by the student. Use when a student needs to acknowledge they have viewed their rubric feedback. Note: Rubric assessments are automatically marked as read when viewed in Canvas web." }, { "slug": "CANVAS_MARK_RUBRIC_ASSESSMENTS_AS_READ_SECTIONS", "name": "Mark rubric assessments as read (sections)", "description": "Tool to mark rubric comments/grading on a submission as read by the student within a specific section. Use when a student needs to acknowledge they have viewed their rubric feedback. Only the student who owns the submission can use this endpoint." }, { "slug": "CANVAS_MARK_SUBMISSION_AS_READ_SECTIONS", "name": "Mark submission as read (sections)", "description": "Marks a student's submission as read for a specific assignment within a section. Use when you need to mark a submission as read in the context of a section rather than a course." }, { "slug": "CANVAS_MARK_SUBMISSION_AS_UNREAD", "name": "Mark submission as unread", "description": "Marks a student's submission as unread for a specific assignment. Use when you need to reset the read status of a submission to unread." }, { "slug": "CANVAS_MARK_SUBMISSION_COMMENTS_READ", "name": "Mark submission comments as read", "description": "Tool to mark submission comments as read in Canvas via GraphQL. Use when tracking which comments have been viewed or when updating read status for instructor feedback." }, { "slug": "CANVAS_MARK_TOPIC_AS_READ_GROUPS", "name": "Mark group discussion topic as read", "description": "Marks the initial text of a discussion topic as read for the current user in a group. Use when you need to flag a group discussion topic as read to indicate it has been reviewed." }, { "slug": "CANVAS_MARK_TOPIC_AS_UNREAD_GROUPS", "name": "Mark group discussion topic as unread", "description": "Marks the initial text of a group discussion topic as unread for the current user. Use when you need to flag a group discussion topic as unread to track it for later review." }, { "slug": "CANVAS_NEW_QUIZ_ACCOMMODATIONS_SET", "name": "Set quiz accommodations", "description": "EXPERIMENTAL: Sets quiz-level accommodations (extra time, extra attempts, reduced choices) for one or more students on a New Quiz. Sends a JSON array body; may return a partial success." }, { "slug": "CANVAS_NEW_QUIZ_COURSE_ACCOMMODATIONS_SET", "name": "Set course quiz accommodations", "description": "EXPERIMENTAL: Sets course-level accommodations (extra time, apply-to-in-progress, reduced choices) for one or more students. These accommodations apply to all New Quizzes in the course. Sends a JSON array body." }, { "slug": "CANVAS_NEW_QUIZ_CREATE", "name": "Create a new quiz", "description": "EXPERIMENTAL: Creates a New Quiz in a Canvas course with the specified title, dates, grading type, instructions, and nested quiz settings (attempts, result view, IP filtering, shuffling, time limit, etc.)." }, { "slug": "CANVAS_NEW_QUIZ_DELETE", "name": "Delete a new quiz", "description": "EXPERIMENTAL: Permanently deletes the New Quiz identified by `assignment_id` from the course identified by `course_id`; this action cannot be undone." }, { "slug": "CANVAS_NEW_QUIZ_GET", "name": "Get a new quiz", "description": "EXPERIMENTAL: Retrieves a single New Quiz from a Canvas course by its assignment ID. Use when you need to view settings, dates, instructions, or other metadata for a New Quiz." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_CREATE", "name": "Create a quiz item", "description": "EXPERIMENTAL: Creates a new QuestionItem in a New Quiz. The `entry` object describes the question body, interaction type, scoring, and feedback." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_DELETE", "name": "Delete a quiz item", "description": "EXPERIMENTAL: Permanently deletes a single quiz item (question) from a New Quiz; this action cannot be undone." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_GET", "name": "Get a quiz item", "description": "EXPERIMENTAL: Retrieves a single quiz item (question) from a New Quiz. Use to inspect item body, scoring, and interaction data." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_LIST", "name": "List quiz items", "description": "EXPERIMENTAL: Lists all items (questions) in a New Quiz. Use to enumerate items with their positions, points, and question data." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_MEDIA_UPLOAD_URL", "name": "Get items media upload URL", "description": "EXPERIMENTAL: Retrieves a presigned URL that can be used to upload media (images, audio, etc.) for use in New Quiz items." }, { "slug": "CANVAS_NEW_QUIZ_ITEM_UPDATE", "name": "Update a quiz item", "description": "EXPERIMENTAL: Updates an existing quiz item (question) in a New Quiz. All body fields are optional; only supplied fields are modified." }, { "slug": "CANVAS_NEW_QUIZ_LIST", "name": "List new quizzes", "description": "EXPERIMENTAL: Lists all New Quizzes in a Canvas course. Use to enumerate New Quizzes along with their settings and metadata." }, { "slug": "CANVAS_NEW_QUIZ_REPORT_CREATE", "name": "Create a new quiz report", "description": "EXPERIMENTAL: Creates a report for a New Quiz. Starts an asynchronous job and returns a Progress object the caller can poll. Report type is 'student_analysis' or 'item_analysis'; output format is 'csv' or 'json'." }, { "slug": "CANVAS_NEW_QUIZ_UPDATE", "name": "Update a new quiz", "description": "EXPERIMENTAL: Updates an existing New Quiz in a Canvas course. All body fields are optional; only supplied fields are modified." }, { "slug": "CANVAS_POST_ASSIGNMENT_GRADES_FOR_SECTIONS", "name": "Post assignment grades for sections", "description": "Tool to post assignment grades for specific sections in Canvas. Use when you need to release grades to students in particular course sections." }, { "slug": "CANVAS_POST_GROUP_DISCUSSION_ENTRY", "name": "Post group discussion entry", "description": "Tool to create a new entry in a Canvas group discussion topic. Use when posting a message with optional attachment to a group discussion topic." }, { "slug": "CANVAS_POST_GROUP_DISCUSSION_REPLY", "name": "Post group discussion reply", "description": "Tool to post a reply to a discussion entry in a group. Use when you need to add a reply to an entry in a group discussion topic. May require that the user has posted in the topic." }, { "slug": "CANVAS_PREVIEW_PROCESSED_HTML", "name": "Preview processed HTML", "description": "Tool to preview HTML content processed for a Canvas course. Use when you need to see how HTML will be rendered in Canvas after sanitization and link processing." }, { "slug": "CANVAS_PREVIEW_PROCESSED_HTML_FOR_GROUP", "name": "Preview processed HTML for group", "description": "Tool to preview HTML content processed for a specific Canvas group. Use when you need to see how HTML will be rendered after Canvas applies group-specific processing and security policies." }, { "slug": "CANVAS_QUERY_PROGRESS", "name": "Query progress", "description": "Tool to return completion and status information about an asynchronous job in Canvas LMS. Use when you need to check the status of a long-running operation." }, { "slug": "CANVAS_RATE_GROUP_DISCUSSION_ENTRY", "name": "Rate group discussion entry", "description": "Tool to rate a discussion entry in a Canvas group. Use when you need to add or remove a rating (like/unlike) on a group discussion entry." }, { "slug": "CANVAS_REDIRECT_TO_ASSIGNMENT_OVERRIDE_FOR_SECTION", "name": "Redirect to Assignment Override for Section", "description": "Tool to retrieve the assignment override for a specific section. Use when you need to fetch override details for a particular section's assignment. Returns 404 if no override exists." }, { "slug": "CANVAS_REDIRECT_TO_ROOT_OUTCOME_GROUP_FOR_CONTEXT", "name": "Redirect to Root Outcome Group for Context", "description": "Retrieves the root outcome group for a specified account context. Use when you need to access the top-level outcome group hierarchy for an account." }, { "slug": "CANVAS_REMOVE_CONTENT_SHARE", "name": "Remove content share", "description": "Tool to remove a content share from your list. Use 'self' as the user_id to remove your own content shares. Note that this endpoint does not delete other users' copies of the content share." }, { "slug": "CANVAS_REMOVE_COURSE_FROM_FAVORITES", "name": "Remove course from favorites", "description": "Tool to remove a course from the current user's favorites list. Use when you need to unfavorite a course for the authenticated user." }, { "slug": "CANVAS_REMOVE_COURSE_NICKNAME", "name": "Remove Course Nickname", "description": "Tool to remove the nickname for a specific course. Use when you need to clear a custom course name and revert to using the actual course name." }, { "slug": "CANVAS_REMOVE_FEATURE_FLAG_USERS", "name": "Remove feature flag for users", "description": "Remove feature flag for a given User. The flag must be defined directly on the User. After removal, the user will inherit feature flags from a higher account if any exist." }, { "slug": "CANVAS_REMOVE_GROUP_FROM_FAVORITES", "name": "Remove group from favorites", "description": "Tool to remove a group from the current user's favorites. Use when you need to unfavorite a group for the authenticated user." }, { "slug": "CANVAS_REMOVE_USAGE_RIGHTS_GROUPS", "name": "Remove usage rights from group files", "description": "Tool to remove copyright and license information from one or more files in a group. Use when you need to clear usage rights metadata from group files." }, { "slug": "CANVAS_REMOVE_USAGE_RIGHTS_USERS", "name": "Remove usage rights from user files", "description": "Tool to remove copyright and license information from one or more files for a user. Use when you need to clear usage rights metadata from user files." }, { "slug": "CANVAS_REORDER_CUSTOM_COLUMNS", "name": "Reorder custom gradebook columns", "description": "Reorders custom gradebook columns in a course. Use when you need to change the display order of custom columns in the gradebook." }, { "slug": "CANVAS_REORDER_PINNED_TOPICS_FOR_GROUP", "name": "Reorder pinned topics for group", "description": "Tool to reorder pinned discussion topics in a Canvas group. Use when you need to change the display order of pinned topics in a group." }, { "slug": "CANVAS_REPLY_TO_DISCUSSION_ENTRY", "name": "Reply to discussion entry", "description": "Tool to reply to a discussion entry. Use when you need to send a message to a discussion entry with optional attachments." }, { "slug": "CANVAS_RESET_COURSE_FAVORITES", "name": "Reset Course Favorites", "description": "Tool to reset the current user's course favorites to the default automatically generated list of enrolled courses. Use when you need to restore default favorites." }, { "slug": "CANVAS_RESET_GROUP_FAVORITES", "name": "Reset group favorites", "description": "Tool to reset the current user's group favorites to the default automatically generated list of enrolled groups. Use when you need to clear custom group favorites and restore the default selection." }, { "slug": "CANVAS_RESET_LINK_VERIFIER", "name": "Reset link verifier", "description": "Resets the link verifier for a file. Any existing links using the previous hard-coded verifier parameter will no longer automatically grant access. Requires manage files and become other users permissions." }, { "slug": "CANVAS_RESOLVE_FOLDER_PATH", "name": "Resolve Folder Path", "description": "Resolves a folder path and returns the complete hierarchy. Given the full path to a folder, returns a list of all Folders in the path hierarchy starting at the root folder and ending at the requested folder. Use when you need to navigate or verify folder structure within a user's files." }, { "slug": "CANVAS_RESOLVE_GROUP_FOLDER_PATH", "name": "Resolve group folder path", "description": "Tool to retrieve folder hierarchy by resolving a path within a Canvas group. Use when you need to traverse a folder path or verify a folder exists at a specific location within a group." }, { "slug": "CANVAS_RETRIEVE_ALL_QUIZ_REPORTS", "name": "Retrieve All Quiz Reports", "description": "Retrieves a list of all available reports for a specified quiz. Use when you need to see what quiz reports exist or check their status." }, { "slug": "CANVAS_RETRIEVE_ASSIGNMENT_OVERRIDDEN_DATES_FOR_CLASSIC", "name": "Retrieve assignment overridden dates for Classic Quizzes", "description": "Retrieves the actual due-at, unlock-at, and lock-at dates for Classic Quizzes based on assignment overrides active for the current API user. Use this to get personalized quiz dates that reflect section overrides, group overrides, or individual student overrides." }, { "slug": "CANVAS_RETRIEVE_ASSIGNMENT_OVERRIDDEN_DATES_FOR_NEW", "name": "Retrieve assignment overridden dates for New Quizzes", "description": "Retrieves the actual due-at, unlock-at, and lock-at dates for New Quizzes based on assignment overrides active for the current API user. Use this to get personalized quiz dates that reflect section overrides, group overrides, or individual student overrides." }, { "slug": "CANVAS_RETRIEVE_ENROLLMENT_TERM", "name": "Retrieve enrollment term", "description": "Retrieves detailed information for a specific enrollment term within a given root account in Canvas." }, { "slug": "CANVAS_RETRIEVE_INTERNAL_SETTING", "name": "Retrieve Internal Setting", "description": "Tool to retrieve a single internal setting by ID or name from Canvas LMS using the GraphQL API. Use when you need to fetch configuration or system settings." }, { "slug": "CANVAS_REVERT_GROUP_PAGE_TO_REVISION", "name": "Revert Group Page to Revision", "description": "Tool to revert a Canvas group page to a prior revision. Use when you need to restore a group page to a previous version, undoing recent changes." }, { "slug": "CANVAS_SAVE_ENABLED_ACCOUNT_CALENDARS", "name": "Save enabled account calendars", "description": "Tool to save user preferences for enabled account calendars and mark the feature as seen. Use when updating which account calendars a user has enabled or marking that the user has viewed the account calendars feature." }, { "slug": "CANVAS_SET_COURSE_NICKNAME", "name": "Set course nickname", "description": "Tool to set a nickname for a specific Canvas course. Use when you need to assign a custom name to a course that will appear in API outputs and the Canvas web interface." }, { "slug": "CANVAS_SET_EXTENSIONS_FOR_STUDENT_QUIZ_SUBMISSIONS", "name": "Set extensions for student quiz submissions", "description": "Tool to set extensions for student quiz submissions in Canvas. Use when you need to grant students additional attempts, extra time, or date extensions for a quiz. Returns success status (200 OK if successful, 403 Forbidden if not allowed to extend quizzes for this course)." }, { "slug": "CANVAS_SET_FEATURE_FLAG_COURSES", "name": "Set feature flag for course", "description": "Tool to set a feature flag for a given Course. Use when you need to enable or disable a Canvas feature at the course level. This call will fail if a parent account sets a feature flag for the same feature in any state other than \"allowed\"." }, { "slug": "CANVAS_SET_FEATURE_FLAG_USERS", "name": "Set feature flag for user", "description": "Tool to set a feature flag for a given User. Use when you need to enable or disable a Canvas feature at the user level. This call will fail if a parent account sets a feature flag for the same feature in any state other than \"allowed\"." }, { "slug": "CANVAS_SET_FRIENDLY_DESCRIPTION", "name": "Set friendly description", "description": "Tool to set a friendly description for a learning outcome in Canvas using GraphQL. Use when you need to add or update a user-friendly explanation for an outcome in a specific course or account context." }, { "slug": "CANVAS_SET_MODULE_ITEM_COMPLETION", "name": "Set module item completion", "description": "Tool to mark a module item as complete or incomplete in Canvas using the REST API. Use when tracking student progress or updating module item completion status. Uses PUT method to mark as done, DELETE method to mark as not done." }, { "slug": "CANVAS_SET_OVERRIDE_STATUS", "name": "Set override status", "description": "Tool to set an override status for a student's enrollment in Canvas. Use when applying or clearing a custom grade status for a student." }, { "slug": "CANVAS_SET_USAGE_RIGHTS_GROUPS", "name": "Set usage rights for group files", "description": "Sets copyright and license information for one or more files in a Canvas group. Use when you need to specify intellectual property rights for group materials." }, { "slug": "CANVAS_SET_USAGE_RIGHTS_USERS", "name": "Set usage rights for user files", "description": "Tool to set copyright and license information for one or more files in a user's account. Use when you need to specify intellectual property rights for user files." }, { "slug": "CANVAS_SHOW_AN_OBSERVEE", "name": "Show an observee", "description": "Tool to get information about an observed user. Use when you need to retrieve details about a user being observed by another user. Note that all users are allowed to view their own observees." }, { "slug": "CANVAS_SHOW_A_PLANNER_OVERRIDE", "name": "Show a planner override", "description": "Retrieve a specific planner override for the current user. Use when you need to check the completion or dismissal status of a plannable item in the user's planner." }, { "slug": "CANVAS_SHOW_CONTENT_EXPORT", "name": "Show content export", "description": "Retrieves information about a specific content export job for a course. Use this to check the status of an export and get the download URL when the export completes." }, { "slug": "CANVAS_SHOW_EPUB_EXPORT", "name": "Show ePub export", "description": "Tool to retrieve information about a single ePub export for a course. Use this to check the status of an export and get the download URL when the export completes." }, { "slug": "CANVAS_SHOW_FRONT_PAGE_FOR_GROUP", "name": "Show Front Page for Group", "description": "Tool to retrieve the front page content for a specific Canvas group. Use when you need to access the main wiki page of a group." }, { "slug": "CANVAS_SHOW_GROUP_CONTENT_EXPORT", "name": "Show group content export", "description": "Retrieves information about a specific content export job for a group. Use this to check the status of an export and get the download URL when the export completes." }, { "slug": "CANVAS_SHOW_GROUP_PAGE_REVISION", "name": "Show Group Page Revision", "description": "Tool to retrieve the metadata and optionally content of the latest revision of a page in a Canvas group. Use when you need to view the most recent version of a group page. Note that retrieving historic versions requires edit rights." }, { "slug": "CANVAS_SHOW_OUTCOME", "name": "Show an outcome", "description": "Retrieves detailed information for a specific outcome in Canvas using its ID. Use when you need to view outcome details, ratings, or mastery settings." }, { "slug": "CANVAS_SHOW_PAGE_FOR_GROUP", "name": "Show page for a group", "description": "Retrieves the content of a specific wiki page by its URL or numeric ID from a Canvas group. Use when you need to fetch the full content and metadata of a group's wiki page." }, { "slug": "CANVAS_SHOW_PLANNER_NOTE", "name": "Show a planner note", "description": "Retrieve a specific planner note for the current user. Use when fetching details of a personal to-do item from the Canvas planner." }, { "slug": "CANVAS_SHOW_REVISION_FOR_GROUP_PAGE", "name": "Show revision for group page", "description": "Tool to retrieve the metadata and optionally content of a specific revision of a group page. Use when you need to view a historic version of a page. Note that retrieving historic versions requires edit rights." }, { "slug": "CANVAS_SHOW_TEMPORARY_ENROLLMENT_STATUS", "name": "Show Temporary Enrollment Status", "description": "Tool to retrieve the temporary enrollment status for a Canvas user. Use when you need to check if a user is providing or receiving temporary enrollments, or if they have permission to provide temporary enrollments." }, { "slug": "CANVAS_SHOW_USER_DETAILS", "name": "Show User Details", "description": "Tool to retrieve detailed information about a specific Canvas user by ID. Use when you need to fetch profile data, permissions, and other user attributes for a given user." }, { "slug": "CANVAS_START_REPORT", "name": "Start a Report", "description": "Initiates an asynchronous report generation for a Canvas account, using a valid report type for the account; the response confirms initiation and may include progress tracking details." }, { "slug": "CANVAS_SUBMIT_ASSIGNMENT", "name": "Submit assignment", "description": "Tool to make a submission for an assignment in Canvas. Use when a student needs to submit their work for an assignment. You must be enrolled as a student in the course/section to do this. All online turn-in submission types are supported (text, URL, file upload, media recording, LTI launch, student annotation)." }, { "slug": "CANVAS_SUBSCRIBE_TO_DISCUSSION_TOPIC", "name": "Subscribe to discussion topic", "description": "Tool to subscribe or unsubscribe from a discussion topic to receive or stop receiving notifications. Use when managing discussion topic subscriptions via GraphQL." }, { "slug": "CANVAS_SUBSCRIBE_TO_TOPIC", "name": "Subscribe to a topic", "description": "Subscribe to a discussion topic to receive notifications about new entries. Use when you need to enable notifications for a specific discussion topic in a course." }, { "slug": "CANVAS_SUBSCRIBE_TO_TOPIC_IN_GROUP", "name": "Subscribe to a topic in group", "description": "Subscribe to a group discussion topic to receive notifications about new entries. On success, returns 204 No Content with an empty body." }, { "slug": "CANVAS_TRANSLATE_FILE_REFERENCE", "name": "Translate File Reference", "description": "Resolves a file's migration ID to its current representation within a specific Canvas course." }, { "slug": "CANVAS_UNSUBSCRIBE_FROM_TOPIC_IN_GROUP", "name": "Unsubscribe from a topic in group", "description": "Unsubscribe from a group discussion topic to stop receiving notifications about new entries. On success, returns 204 No Content with an empty body." }, { "slug": "CANVAS_UPDATE_A_CONTENT_MIGRATION4", "name": "Update a content migration for user", "description": "Tool to update a content migration for a user in Canvas. Use when you need to modify migration settings, handle file upload problems, or configure selective imports. Note: migration_type cannot be changed, and most settings changes after the migration has started will have no effect." }, { "slug": "CANVAS_UPDATE_A_MEMBERSHIP", "name": "Update a membership", "description": "Tool to accept a membership request or add/remove moderator rights for a group member. Use when you need to approve a user's request to join a group or modify their moderator status." }, { "slug": "CANVAS_UPDATE_AN_ENTRY", "name": "Update an entry", "description": "Tool to update an existing discussion entry. Use when editing a discussion entry's message content. The entry must have been created by the current user, or the current user must have admin rights to the discussion." }, { "slug": "CANVAS_UPDATE_A_PLANNER_OVERRIDE", "name": "Update a planner override", "description": "Update a planner override's visibility and completion status for the current user. Use this to mark planner items as complete/incomplete or dismiss/show them in the opportunities list." }, { "slug": "CANVAS_UPDATE_APPOINTMENT_GROUP", "name": "Update Appointment Group", "description": "Updates an existing Canvas appointment group by its ID; only provided fields are modified, but `publish` defaults to `False` if omitted. The `appointment_group_id` must be valid." }, { "slug": "CANVAS_UPDATE_A_PREFERENCE", "name": "Update notification preference", "description": "Tool to update the notification preference for a single notification on a specific communication channel. Use when changing how frequently a user receives a particular notification type." }, { "slug": "CANVAS_UPDATE_BOOKMARK", "name": "Update Bookmark", "description": "Updates an existing bookmark for the authenticated user. Use when you need to modify the name, URL, position, or metadata of a bookmark." }, { "slug": "CANVAS_UPDATE_CALENDAR_EVENT", "name": "Update Calendar Event", "description": "Tool to update an existing calendar event in Canvas. Use when you need to modify event details like title, description, timing, or location." }, { "slug": "CANVAS_UPDATE_COMMENT_BANK_ITEM", "name": "Update comment bank item", "description": "Tool to update an existing comment bank item in Canvas. Use when modifying the text of a previously saved grading comment." }, { "slug": "CANVAS_UPDATE_CONTENT_SHARE", "name": "Update a content share", "description": "Tool to mark a Canvas content share as read or unread. Use when updating the read state of a content share." }, { "slug": "CANVAS_UPDATE_CONVERSATION_PARTICIPANTS", "name": "Update conversation participants", "description": "Tool to batch update conversation workflow states in Canvas. Use when you need to mark conversations as read/unread, star/unstar, archive, or delete multiple conversations at once." }, { "slug": "CANVAS_UPDATE_COURSE", "name": "Update course", "description": "Updates an existing course, specified by its ID, with new attributes or triggers a lifecycle event like 'conclude' or 'delete'." }, { "slug": "CANVAS_UPDATE_COURSE_SETTINGS", "name": "Update course settings", "description": "Updates various settings for an existing course in Canvas, identified by `course_id`." }, { "slug": "CANVAS_UPDATE_CREATE_FRONT_PAGE_GROUPS", "name": "Update/Create Front Page for Groups", "description": "Tool to update or create the front page of a Canvas group wiki. Use when you need to modify the title or contents of the group front page." }, { "slug": "CANVAS_UPDATE_CUSTOM_COLOR", "name": "Update Custom Color", "description": "Tool to update the custom color for a user for a specific course or context in Canvas. Use when you need to set or modify user-specific color preferences for calendar and other UI elements." }, { "slug": "CANVAS_UPDATE_CUSTOM_GRADEBOOK_COLUMN", "name": "Update a custom gradebook column", "description": "Updates an existing custom gradebook column in a course. Use when you need to modify properties like title, position, visibility, or editability of a custom gradebook column." }, { "slug": "CANVAS_UPDATE_CUSTOM_GRADEBOOK_COLUMN_DATA", "name": "Bulk update custom gradebook column data", "description": "Bulk updates custom gradebook column data for multiple students. Use when you need to set or update content in custom columns for multiple student/column combinations in a single operation." }, { "slug": "CANVAS_UPDATE_DISCUSSION_ENTRIES_READ_STATE", "name": "Update discussion entries read state", "description": "Tool to update read state for discussion entries. Use when marking discussion entries as read or unread." }, { "slug": "CANVAS_UPDATE_DISCUSSION_ENTRY", "name": "Update discussion entry", "description": "Tool to update an existing discussion entry in Canvas via GraphQL. Use when editing the message content or file attachments of a previously posted discussion entry." }, { "slug": "CANVAS_UPDATE_DISCUSSION_ENTRY_PARTICIPANT", "name": "Update discussion entry participant", "description": "Tool to update a discussion entry participant's read state or rating. Use when marking entries as read/unread or changing ratings." }, { "slug": "CANVAS_UPDATE_DISCUSSION_READ_STATE", "name": "Update discussion read state", "description": "Tool to update the read state for a discussion topic in Canvas via GraphQL. Use when marking a discussion as read or unread for the current user." }, { "slug": "CANVAS_UPDATE_DISCUSSION_THREAD_READ_STATE", "name": "Update discussion thread read state", "description": "Tool to update the read state of a discussion entry. Use when marking a discussion entry as read or unread." }, { "slug": "CANVAS_UPDATE_DISCUSSION_TOPIC", "name": "Update discussion topic (GraphQL)", "description": "Tool to update an existing discussion topic using the Canvas GraphQL API. Use when modifying the title or message of a discussion topic." }, { "slug": "CANVAS_UPDATE_FILE", "name": "Update file", "description": "Modifies an existing file's name or relocates it to a new parent folder; the target folder, if specified, must be valid and in the file's original context." }, { "slug": "CANVAS_UPDATE_FOLDER", "name": "Update Folder", "description": "Updates an existing folder's properties (name, position, lock state, visibility) specified by its unique ID. Use when modifying folder attributes." }, { "slug": "CANVAS_UPDATE_GROUP_CONTENT_MIGRATION", "name": "Update a group content migration", "description": "Tool to update a content migration in a Canvas group. Use when you need to modify migration settings, handle file upload problems, configure selective imports, or specify which content to copy. Note: migration_type cannot be changed, and most settings changes after the migration has started will have no effect." }, { "slug": "CANVAS_UPDATE_GROUP_DISCUSSION_ENTRY", "name": "Update group discussion entry", "description": "Tool to update an existing discussion entry in a Canvas group. Use when editing a group discussion entry's message content. The entry must have been created by the current user, or the current user must have admin rights to the discussion." }, { "slug": "CANVAS_UPDATE_MULTIPLE_NOTIFICATION_PREFERENCES", "name": "Update multiple notification preferences", "description": "Update multiple notification preferences for a single communication channel at once. Use when you need to configure how often a user receives notifications for multiple event types on a specific communication channel." }, { "slug": "CANVAS_UPDATE_MULTIPLE_PREFERENCES_BY_CHANNEL_ID", "name": "Update multiple preferences by channel ID", "description": "Tool to change the preferences for multiple notifications for a single communication channel at once using the channel ID. Use when you need to configure how frequently (immediately, daily, weekly, or never) various notification types are sent to a specific communication channel." }, { "slug": "CANVAS_UPDATE_NOTIFICATION_PREFERENCES", "name": "Update notification preferences", "description": "Tool to update user notification preferences in Canvas using GraphQL. Use when configuring how and when a user receives notifications for specific categories through a communication channel." }, { "slug": "CANVAS_UPDATE_PAGE_FOR_COURSE", "name": "Update page for a course", "description": "Updates an existing wiki page in a Canvas course; if setting as front page, it must also be or be made published." }, { "slug": "CANVAS_UPDATE_PAGE_FOR_GROUP", "name": "Update a page for a group", "description": "Updates the title or contents of an existing wiki page in a Canvas group. Use when you need to modify group documentation, notes, or collaborative content." }, { "slug": "CANVAS_UPDATE_PLANNER_NOTE", "name": "Update a planner note", "description": "Update a planner note for the current user. Use when modifying an existing to-do item or reminder in the Canvas planner." }, { "slug": "CANVAS_UPDATE_PREFERENCE_BY_TYPE_AND_ADDRESS", "name": "Update notification preference by type and address", "description": "Tool to update the notification preference for a single notification on a communication channel identified by type and address. Use when changing how frequently a user receives a particular notification type on a specific channel." }, { "slug": "CANVAS_UPDATE_PREFERENCES_BY_CATEGORY", "name": "Update preferences by category", "description": "Tool to change notification preferences for all notifications in a category for a single communication channel. Use when updating the frequency setting for an entire notification category at once." }, { "slug": "CANVAS_UPDATE_QUIZ_SUBMISSION_SCORES", "name": "Update quiz submission scores", "description": "Updates scores, comments for questions, and/or applies fudge points to a specific quiz submission attempt; the attempt must be completed and referenced by valid, existing course, quiz, and submission IDs." }, { "slug": "CANVAS_UPDATE_RUBRIC_ASSESSMENT_READ_STATE", "name": "Update rubric assessment read state", "description": "Tool to update rubric assessment read state for submissions in Canvas via GraphQL. Use when marking rubric assessments as read for specific submissions." }, { "slug": "CANVAS_UPDATE_SINGLE_POLL", "name": "Update Single Poll", "description": "Tool to update an existing poll belonging to the current user. Use when you need to modify a poll's question or description." }, { "slug": "CANVAS_UPDATE_SINGLE_POLL_CHOICE", "name": "Update a single poll choice", "description": "Tool to update an existing poll choice for a poll in Canvas. Use when you need to modify the text, correctness status, or position of a poll choice." }, { "slug": "CANVAS_UPDATE_SINGLE_POLL_SESSION", "name": "Update Single Poll Session", "description": "Tool to update an existing poll session for a poll in Canvas. Use when you need to modify a poll session's attributes such as making results public or changing the associated course section." }, { "slug": "CANVAS_UPDATE_SPEED_GRADER_SETTINGS", "name": "Update SpeedGrader settings", "description": "Tool to update SpeedGrader settings in Canvas via GraphQL. Use when you need to configure SpeedGrader options such as enabling grade-by-question mode." }, { "slug": "CANVAS_UPDATE_SPLIT_SCREEN_VIEW_DEEPLY_NESTED_ALERT", "name": "Update split screen view deeply nested alert", "description": "Tool to update the split screen view deeply nested alert setting for a user. Use when enabling or disabling the deeply nested alert warning in split screen view mode." }, { "slug": "CANVAS_UPDATE_SUBMISSION_STUDENT_ENTERED_SCORE", "name": "Update submission student-entered score", "description": "Tool to update the student-entered score (what-if score) for a submission. Use when a student wants to set or modify a hypothetical score to calculate potential grades." }, { "slug": "CANVAS_UPDATE_SUBMISSION_WHAT_IF_SCORE", "name": "Update submission what-if score", "description": "Tool to enter a what-if score for a submission and receive calculated grades. Grade calculation is costly, so use sparingly. Use when students want to test hypothetical scores to see their impact on overall grades." }, { "slug": "CANVAS_UPDATE_TOPIC_FOR_GROUP", "name": "Update group discussion topic", "description": "Tool to update an existing discussion topic for a group. Use when modifying the title, message, publication settings, or engagement features of a group discussion topic." }, { "slug": "CANVAS_UPDATE_USER_DISCUSSIONS_SPLITSCREEN_VIEW", "name": "Update user discussions splitscreen view", "description": "Tool to update user discussions splitscreen view setting via Canvas GraphQL API. Use when enabling or disabling the splitscreen view for discussions." }, { "slug": "CANVAS_UPDATE_USER_SETTINGS", "name": "Update User Settings", "description": "Updates a Canvas user's preferences for various interface elements and content interaction behaviors." }, { "slug": "CANVAS_UPDATE_USERS_TEXT_EDITOR_PREFERENCE", "name": "Update user text editor preference", "description": "Tool to update a user's text editor preference. Use when you need to change the default text editor for a user in Canvas." }, { "slug": "CANVAS_UPDATE_USERS_TOKENS", "name": "Update User Token", "description": "Tool to update an existing access token for a Canvas user. Use when you need to modify token properties like purpose, expiration, scopes, or regenerate the token value." }, { "slug": "CANVAS_UPLOAD_COURSE_FILE", "name": "Upload a course file", "description": "Uploads a file to an accessible Canvas course, optionally to a specific folder (created if a non-existent `parent_folder_path` is provided) and with defined behavior for duplicate filenames." }, { "slug": "CANVAS_UPLOAD_FILE_TO_GROUP", "name": "Upload a file to group", "description": "Initiates file upload to a Canvas group (Step 1 of 3-step workflow). Returns upload_url and upload_params needed for Step 2. Only users with 'Manage Files' permission can upload to groups." }, { "slug": "CANVAS_UPLOAD_SUBMISSION_FILE", "name": "Upload submission file", "description": "Uploads a file for an assignment submission in Canvas (step 1 of submitting); the returned file can later be included in an actual submission. The specified user must be enrolled in the course with access to the assignment. Use 'self' for `user_id` to upload as the authenticated user, or specify another user's ID (requires masquerade permissions)." }, { "slug": "CANVAS_UPSERT_CUSTOM_GRADE_STATUS", "name": "Upsert custom grade status", "description": "Tool to create or update a custom grade status in Canvas. Use when you need to add a new custom grade status or modify an existing one." }, { "slug": "CANVAS_UPSERT_STANDARD_GRADE_STATUS", "name": "Upsert standard grade status", "description": "Tool to create or update a standard grade status in Canvas. Use when customizing standard grade status labels and colors. Standard grade statuses include: late, missing, excused, and none." }, { "slug": "CANVAS_VALIDATE_QUIZ_ACCESS_CODE", "name": "Validate quiz access code", "description": "Validates a quiz access code by checking if it matches the configured access code for the quiz. Use when verifying student-provided access codes before allowing quiz access." } ], "triggers": [ { "slug": "CANVAS_ASSIGNMENT_GRADED_TRIGGER", "name": "Canvas Assignment Graded", "description": "Polls Canvas for newly graded submissions for a specific assignment." }, { "slug": "CANVAS_NEW_ASSIGNMENT_SUBMISSION_TRIGGER", "name": "New Canvas Assignment Submission", "description": "Polls Canvas for new submissions to a specific assignment." }, { "slug": "CANVAS_NEW_CANVAS_DISCUSSION_MESSAGE_TRIGGER", "name": "New Canvas Discussion Message", "description": "Polls Canvas discussion topics for new messages." }, { "slug": "CANVAS_NEW_CANVAS_DISCUSSION_TRIGGER", "name": "New Canvas Discussion Topic", "description": "Polls a Canvas course for new discussion topics." }, { "slug": "CANVAS_NEW_COURSE_CREATED_TRIGGER", "name": "New Course Created for User", "description": "Polls Canvas for newly created courses for a specific user." }, { "slug": "CANVAS_NEW_FILE_UPLOADED_TRIGGER", "name": "New Canvas File Upload", "description": "Polls a Canvas course for new file uploads." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2 Authorization Code", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Canvas Base URL", "type": "string", "description": "The base URL of your Canvas instance (e.g., https://canvas.instructure.com).", "required": true, "default": "https://canvas.instructure.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "canavs_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Canvas Base URL", "type": "string", "description": "Your school's Canvas web address, e.g. https://myschool.instructure.com — copy it from your browser address bar. Include https:// and no trailing slash.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Acess token", "type": "string", "description": "Your Canvas API access token. In Canvas, go to Account → Settings → Approved Integrations → + New Access Token, then copy it right away — Canvas shows it only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bitbucket", "name": "Bitbucket", "logo": "https://logos.composio.dev/api/bitbucket", "description": "Bitbucket is a Git-based code hosting and collaboration platform supporting private and public repositories, enabling teams to manage and review code through pull requests and integrations", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 110, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BITBUCKET_APPROVE_PULL_REQUEST", "name": "Approve Pull Request", "description": "Tool to approve a pull request as the authenticated user. Use when you need to formally approve changes in a pull request review process." }, { "slug": "BITBUCKET_BROWSE_REPOSITORY_PATH", "name": "Browse repository path", "description": "Tool to retrieve content for a file path or browse directory contents at a specified revision in a Bitbucket repository. Use when you need flexible access to repository content - returns raw file data for files or paginated directory listings for directories." }, { "slug": "BITBUCKET_CREATE_BRANCH", "name": "Create a branch", "description": "Creates a new branch in a Bitbucket repository from a target commit hash; the branch name must be unique, adhere to Bitbucket's naming conventions, and not include the 'refs/heads/' prefix." }, { "slug": "BITBUCKET_CREATE_ISSUE", "name": "Create an issue", "description": "Creates a new issue in a Bitbucket repository, setting the authenticated user as reporter; ensures assignee (if provided) has repository access, and that any specified milestone, version, or component IDs exist." }, { "slug": "BITBUCKET_CREATE_ISSUE_COMMENT", "name": "Create an issue comment", "description": "Adds a new comment with markdown support to an existing Bitbucket issue." }, { "slug": "BITBUCKET_CREATE_PULL_REQUEST", "name": "Create a pull request", "description": "Creates a new pull request in a specified Bitbucket repository, ensuring the source branch exists and is distinct from the (optional) destination branch." }, { "slug": "BITBUCKET_CREATE_PULL_REQUEST_COMMENT", "name": "Create pull request comment", "description": "Creates a new comment on a Bitbucket pull request. Supports top-level comments, threaded replies, and inline code comments. Use when providing feedback on a PR, replying to existing comments, or commenting on specific code lines." }, { "slug": "BITBUCKET_CREATE_REPOSITORIES_COMMIT_REPORTS_ANNOTATIONS", "name": "Create commit report annotations", "description": "Adds multiple annotations to a commit report in bulk. Use when you need to add code analysis findings (vulnerabilities, code smells, bugs) to a report attached to a specific commit." }, { "slug": "BITBUCKET_CREATE_REPOSITORIES_COMMITS2", "name": "List commits from revision (POST)", "description": "Tool to list commits from a revision using POST method. Identical to GET endpoint but allows sending include/exclude parameters in request body to avoid URL length limits. Use when include/exclude parameters are too long for query strings." }, { "slug": "BITBUCKET_CREATE_REPOSITORY", "name": "Create repository", "description": "Creates a new Bitbucket 'git' repository in a specified workspace, defaulting to the workspace's oldest project if `project_key` is not provided." }, { "slug": "BITBUCKET_CREATE_SNIPPET_COMMENT", "name": "Create snippet comment", "description": "Posts a new top-level comment or a threaded reply to an existing comment on a specified Bitbucket snippet." }, { "slug": "BITBUCKET_CREATE_TEAMS_PIPELINES_CONFIG_VARIABLES", "name": "Create team pipeline variable", "description": "Creates a team-level pipeline configuration variable in Bitbucket. Use when you need to add environment variables or configuration values that should be available to all pipelines within a team." }, { "slug": "BITBUCKET_CREATE_USERS_PIPELINES_CONFIG_VARIABLES", "name": "Create user pipeline variable", "description": "Creates a user-level pipeline variable for Bitbucket pipelines. Use when you need to create account-level configuration variables that can be used across all repositories owned by the user." }, { "slug": "BITBUCKET_DECLINE_PULL_REQUEST", "name": "Decline Pull Request", "description": "Decline a Bitbucket Cloud pull request via the REST API. Use this action when you need to reject a pull request that should not be merged. This action is irreversible — once declined, the pull request cannot be reopened and must be recreated if needed." }, { "slug": "BITBUCKET_DELETE_COMMIT_COMMENT", "name": "Delete commit comment", "description": "Permanently deletes a specific comment on a commit. Use when removing outdated, incorrect, or unwanted feedback on a commit." }, { "slug": "BITBUCKET_DELETE_ISSUE", "name": "Delete issue", "description": "Permanently deletes a specific issue, identified by its `issue_id`, from the repository specified by `repo_slug` within the given `workspace`." }, { "slug": "BITBUCKET_DELETE_PULL_REQUEST_COMMENT", "name": "Delete pull request comment", "description": "Permanently deletes a specific pull request comment (top-level, inline, or threaded reply). Use when removing outdated, incorrect, or unwanted feedback from a pull request." }, { "slug": "BITBUCKET_DELETE_REPOSITORIES_COMMIT_REPORTS_ANNOTATIONS", "name": "Delete commit report annotation", "description": "Deletes a single annotation matching the provided ID from a commit report. Use when you need to remove a specific annotation from a code analysis report." }, { "slug": "BITBUCKET_DELETE_REPOSITORY", "name": "Delete repository", "description": "Permanently deletes a specified Bitbucket repository; this action is irreversible and does not affect forks." }, { "slug": "BITBUCKET_DELETE_SNIPPETS_WATCH", "name": "Delete snippet watch", "description": "Stops watching a specific snippet. Use when you want to unsubscribe from notifications for a snippet." }, { "slug": "BITBUCKET_DELETE_USER_PIPELINE_VARIABLE", "name": "Delete user pipeline variable", "description": "Permanently deletes a user-level pipeline configuration variable identified by its UUID. Use this to remove pipeline variables that are no longer needed at the account level." }, { "slug": "BITBUCKET_GET_BRANCH", "name": "Get branch", "description": "Retrieves detailed information about a specific branch in a Bitbucket repository. Use when you need to get branch metadata, the commit it points to, or verify a branch exists." }, { "slug": "BITBUCKET_GET_COMMIT_BUILD_STATUS", "name": "Get Commit Build Status", "description": "Get a specific build status for a commit in Bitbucket. Use when you need to check the status of a particular build/CI run for a commit." }, { "slug": "BITBUCKET_GET_COMMIT_CHANGES", "name": "Get Commit Changes", "description": "Tool to retrieve a page of changes made in a specified commit, showing all changed files with their change statistics (lines added/removed, status). Use when you need to enumerate files modified in a specific commit or commit range." }, { "slug": "BITBUCKET_GET_COMMIT_COMMENT", "name": "Get commit comment", "description": "Retrieves a specific comment from a commit by its ID. Use when you need to fetch details of a particular commit comment including content, author, timestamps, and inline location." }, { "slug": "BITBUCKET_GET_COMMIT_DIFF", "name": "Get Commit Diff", "description": "Tool to retrieve the unified diff between two provided revisions or for a single commit in a Bitbucket repository. Use when you need to see the actual code changes in a commit or between two commits. Supports filtering by file path and various diff options." }, { "slug": "BITBUCKET_GET_CURRENT_USER2", "name": "Get current user (v2)", "description": "Tool to retrieve complete profile information for the currently authenticated Bitbucket user. Use when you need comprehensive user details including account_id, username, nickname, and other profile fields." }, { "slug": "BITBUCKET_GET_DEPLOYMENT_ENVIRONMENT_VARIABLES", "name": "Get deployment environment variables", "description": "Retrieves deployment environment level variables for a specific Bitbucket repository environment. Use when you need to view or audit environment-specific configuration variables for deployments." }, { "slug": "BITBUCKET_GET_FILE_FROM_REPOSITORY", "name": "Get file from repository", "description": "Retrieves a specific file's content from a Bitbucket repository at a given commit (hash, branch, or tag), failing if the file path is invalid for that commit." }, { "slug": "BITBUCKET_GET_HOOK_EVENTS", "name": "Get hook events", "description": "Retrieves a paginated list of all valid webhook events for a specified entity type (repository or workspace). Use when you need to discover available webhook event types for subscription or webhook configuration." }, { "slug": "BITBUCKET_GET_OPENID_CONFIGURATION", "name": "Get OpenID configuration for OIDC in Pipelines", "description": "Retrieves the OpenID Connect discovery configuration for Bitbucket Pipelines OIDC. Use when integrating Bitbucket Pipelines with resource servers (AWS, GCP, Vault) using OpenID Connect authentication. Returns issuer URL, JWKS URI, and supported capabilities." }, { "slug": "BITBUCKET_GET_PULL_REQUEST", "name": "Get Pull Request", "description": "Get a single pull request by ID with complete details." }, { "slug": "BITBUCKET_GET_PULL_REQUEST_COMMENT", "name": "Get pull request comment", "description": "Tool to retrieve a specific comment from a pull request by its ID. Use when you need to fetch details of a particular pull request comment including content, author, timestamps, and inline location." }, { "slug": "BITBUCKET_GET_PULL_REQUEST_COMMITS", "name": "Get Pull Request Commits", "description": "Tool to retrieve commits for a specified pull request. Use when reviewing the commit history of a PR or analyzing changes included in a pull request." }, { "slug": "BITBUCKET_GET_PULL_REQUEST_DIFF", "name": "Get Pull Request Diff", "description": "Tool to fetch the unified diff for a Bitbucket pull request (follows 302 redirect to repository diff). Use when reviewing code changes in a PR. Supports optional truncation for large diffs via max_chars parameter." }, { "slug": "BITBUCKET_GET_PULL_REQUEST_DIFFSTAT", "name": "Get Pull Request Diffstat", "description": "Tool to get the diffstat for a Bitbucket pull request, showing all changed files with their change statistics (lines added/removed, status). Use when you need to enumerate files modified in a PR." }, { "slug": "BITBUCKET_GET_RAW_FILE_CONTENT", "name": "Get raw file content", "description": "DEPRECATED: Use BITBUCKET_GET_FILE_FROM_REPOSITORY instead. Tool to retrieve the raw content of a file from a Bitbucket repository at a specified commit, branch, or tag. Use when you need to read file contents from a specific revision." }, { "slug": "BITBUCKET_GET_REPOSITORIES_BRANCHING_MODEL", "name": "Get Repository Branching Model", "description": "Return the branching model as applied to the repository. Use when you need to understand the repository's branch workflow configuration, including development/production branches and branch type prefixes." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT", "name": "Get Repository Commit", "description": "Tool to retrieve detailed information about a specific commit in a Bitbucket repository. Use when you need to get complete commit details including author, message, date, parents, and related links." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT_COMMENTS", "name": "Get commit comments", "description": "Retrieves all comments on a specific commit in a Bitbucket repository. Returns both global and inline code comments. Use when you need to view feedback, discussions, or notes left on a specific commit." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT_REPORT", "name": "Get commit report", "description": "Returns a single report matching the provided ID from a commit. Use when you need to retrieve details of a specific analysis report (e.g., security scan, code coverage, test results, or bug report) for a commit." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT_REPORTS", "name": "Get Commit Reports", "description": "Tool to get reports linked to a specific commit. Use when you need to retrieve analysis results, test reports, security scans, or code coverage data associated with a commit." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT_REPORTS_ANNOTATIONS", "name": "Get commit report annotation", "description": "Returns a single annotation matching the provided ID from a commit report. Use when you need to retrieve details of a specific code analysis finding (e.g., vulnerability, code smell, or bug) identified in a commit." }, { "slug": "BITBUCKET_GET_REPOSITORIES_COMMIT_STATUSES", "name": "Get commit statuses", "description": "Returns all build statuses (e.g., CI/CD pipeline results) for a specific commit. Use when you need to check build status, verify test results, or monitor deployment pipelines for a particular commit." }, { "slug": "BITBUCKET_GET_REPOSITORIES_EFFECTIVE_BRANCHING_MODEL", "name": "Get effective branching model", "description": "Retrieves the effective branching model for a Bitbucket repository, showing which branching model is currently applied (including any inheritance from project-level settings). Use when you need to understand the repository's branch workflow configuration, including development and production branches and branch type prefixes." }, { "slug": "BITBUCKET_GET_REPOSITORIES_ENVIRONMENTS2", "name": "Get Repository Environment", "description": "Retrieve detailed information about a specific deployment environment in a Bitbucket repository. Use when you need to get environment configuration, deployment settings, or check environment properties like locks and restrictions." }, { "slug": "BITBUCKET_GET_REPOSITORIES_FILEHISTORY", "name": "Get file commit history", "description": "Returns a paginated list of commits that modified the specified file. Use when you need to track file changes over time, find who modified a file, or determine when a file was created or last changed." }, { "slug": "BITBUCKET_GET_REPOSITORIES_ISSUES_VOTE", "name": "Check if user voted for issue", "description": "Tool to check whether the authenticated user has voted for a specific issue in a Bitbucket repository. Use when you need to verify if the current user has already voted on an issue before attempting to vote or unvote." }, { "slug": "BITBUCKET_GET_REPOSITORIES_MERGE_BASE", "name": "Get Repositories Merge Base", "description": "Get the merge base (best common ancestor) between two commits in a Bitbucket repository. Use when you need to find the common ancestor commit between two branches or commits for comparison or merge operations." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES2", "name": "Get specific pipeline", "description": "Retrieve a specified pipeline from a Bitbucket repository. Use when you need to get detailed information about a specific pipeline execution including its status, build number, and results." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_CONFIG_CACHES", "name": "Get repository pipelines caches", "description": "Retrieves the repository pipelines caches. Use when you need to list all caches configured for Bitbucket Pipelines in a specific repository." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_CONFIG_RUNNERS", "name": "Get repository pipeline runners", "description": "Retrieves the list of self-hosted runners configured for a repository's pipelines. Use when you need to view available runners for pipeline execution." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_CONFIG_SCHEDULES", "name": "Get repository pipeline schedules", "description": "Retrieves configured pipeline schedules for a Bitbucket repository. Use when you need to view scheduled pipeline runs and their cron patterns." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_CONFIG_SSH_KNOWN_HOSTS", "name": "Get repository SSH known hosts", "description": "Retrieves repository-level SSH known hosts configured for Bitbucket Pipelines. Use when you need to list or verify SSH known hosts that Pipelines can connect to during builds." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_CONFIG_VARIABLES", "name": "Get repository pipeline variables", "description": "Retrieves repository-level pipeline variables for a specific Bitbucket repository. Use when you need to view or audit pipeline configuration variables that are scoped to a repository." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PIPELINES_STEPS", "name": "Get pipeline steps", "description": "Retrieves all steps for a given pipeline. Use when you need to inspect the individual steps of a pipeline execution, including their state, duration, and commands." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PULLREQUESTS_ACTIVITY", "name": "Get pull requests activity log", "description": "Get paginated activity log for all pull requests in a repository. Returns comments, updates, approvals, and request changes. Use when you need to track pull request activity history." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PULLREQUESTS_COMMENTS", "name": "Get pull request comments", "description": "Retrieves a paginated list of comments on a specific pull request in a Bitbucket repository. Returns global, inline, and threaded comments. Use when you need to view feedback, discussions, or reviews left on a pull request." }, { "slug": "BITBUCKET_GET_REPOSITORIES_PULLREQUESTS_STATUSES", "name": "Get pull request statuses", "description": "Returns all build statuses (e.g., CI/CD pipeline results) for a specific pull request. Use when you need to check build status, verify test results, or monitor deployment pipelines for a pull request." }, { "slug": "BITBUCKET_GET_REPOSITORIES_REFS", "name": "Get repository refs", "description": "Returns the branches and tags in the repository. Use when you need to list all refs (both branches and tags) in a single API call with optional filtering by type, name pattern, or commit hash." }, { "slug": "BITBUCKET_GET_REPOSITORIES_REFS_TAGS", "name": "Get tag", "description": "Retrieves detailed information about a specific tag in a Bitbucket repository. Use when you need to get tag metadata, target commit details, or verify a tag exists." }, { "slug": "BITBUCKET_GET_REPOSITORIES_SRC", "name": "Get repositories src", "description": "Lists the contents of the root directory on the repository's main branch without needing to specify a commit or branch. This endpoint redirects to the main branch automatically." }, { "slug": "BITBUCKET_GET_REPOSITORIES_WATCHERS", "name": "Get repository watchers", "description": "Retrieves a paginated list of all the watchers on the specified repository. Use when you need to see who is watching a particular repository." }, { "slug": "BITBUCKET_GET_REPOSITORY", "name": "Get repository", "description": "Retrieves detailed information about a specific repository in a Bitbucket workspace. Use when you need to get repository metadata, settings, or details." }, { "slug": "BITBUCKET_GET_REPOSITORY_PATCH", "name": "Get Repository Patch", "description": "Tool to retrieve the git patch content for a Bitbucket repository at a specified revision or commit range. Use when you need to review code changes, generate diffs, or analyze modifications between commits. Returns raw patch in unified diff format." }, { "slug": "BITBUCKET_GET_SNIPPET", "name": "Get snippet", "description": "Retrieves a specific Bitbucket snippet by its encoded ID from an existing workspace, returning its metadata and file structure." }, { "slug": "BITBUCKET_GET_SNIPPETS_WATCH", "name": "Get snippet watch status", "description": "Checks if the current user is watching a specific snippet. Use when you need to verify watch status for a snippet." }, { "slug": "BITBUCKET_GET_SSH_LATEST_KEYS", "name": "Get SSH keys for user", "description": "Retrieves a paginated list of SSH keys for a specified Bitbucket user. Use when you need to view or audit SSH keys configured for a user account." }, { "slug": "BITBUCKET_GET_USER", "name": "Get user", "description": "Retrieves public profile information for a specific Bitbucket user by username or UUID. Use when you need to get user details like display name, avatar, creation date, and links to related resources." }, { "slug": "BITBUCKET_GET_USER_EMAILS", "name": "Get user emails", "description": "Returns all the authenticated user's email addresses, both confirmed and unconfirmed. Use when you need to retrieve all email addresses associated with the current user's account." }, { "slug": "BITBUCKET_GET_USER_EMAILS2", "name": "Get user email details", "description": "Retrieves details about a specific email address for the authenticated user. Use when you need to check if an email is primary, confirmed, or verify email ownership." }, { "slug": "BITBUCKET_GET_USER_PERMISSIONS_REPOSITORIES", "name": "Get user permissions for repositories", "description": "Returns an object for each repository the caller has explicit access to, including their permission level. Use when you need to discover which repositories the authenticated user can access and their specific permissions." }, { "slug": "BITBUCKET_GET_USER_PERMISSIONS_WORKSPACES", "name": "Get user permissions for workspaces", "description": "Retrieves workspace memberships and permission levels for the authenticated user. Returns an object for each workspace the caller is a member of, along with their effective role (highest privilege level). Use when you need to determine which workspaces a user can access and their permission level in each." }, { "slug": "BITBUCKET_GET_USER_WORKSPACES", "name": "Get user workspaces", "description": "Tool to retrieve all workspaces accessible to the authenticated user. Use when you need to list workspaces the current user can access, optionally filtered by workspace slug or permission level." }, { "slug": "BITBUCKET_GET_WORKSPACE", "name": "Get workspace", "description": "Retrieves detailed information about a specific Bitbucket workspace. Use when you need to get workspace metadata, settings, or details." }, { "slug": "BITBUCKET_GET_WORKSPACES_PULLREQUESTS", "name": "Get Workspace Pull Requests by User", "description": "Tool to get all workspace pull requests authored by a specified user. Use when you need to retrieve pull requests created by a specific user across all repositories in a workspace." }, { "slug": "BITBUCKET_GET_WORKSPACES_SEARCH_CODE", "name": "Search code in workspace", "description": "Tool to search for code in the repositories of the specified workspace. Use when you need to find specific code patterns, function definitions, or text across all repositories in a workspace." }, { "slug": "BITBUCKET_LIST_BRANCHES", "name": "List branches", "description": "Lists branches in a Bitbucket repository with optional server-side filtering by name pattern (BBQL) and sorting. Use when you need to discover available branches, search for specific branch patterns, or navigate repository branch structure." }, { "slug": "BITBUCKET_LIST_COMMITS", "name": "List commits", "description": "Tool to retrieve a page of commits from a Bitbucket repository. Returns commits in reverse chronological order (newest first), similar to git log. Use when you need to browse commit history, filter commits by branch/tag, or restrict to commits affecting a specific path." }, { "slug": "BITBUCKET_LIST_COMMITS_FROM_REVISION", "name": "List commits from revision", "description": "Tool to list commits starting from a specific revision in a Bitbucket repository. Commits are paginated and returned in reverse chronological order. Use when you need to retrieve commit history from a specific commit, branch, or tag." }, { "slug": "BITBUCKET_LIST_COMMITS_ON_MASTER", "name": "List commits on master", "description": "Lists commits on the master branch of a Bitbucket repository. Use when you need to retrieve the commit history for the master branch, including commit messages, authors, dates, and parent relationships." }, { "slug": "BITBUCKET_LIST_DEPLOYMENTS", "name": "List deployments", "description": "Lists deployments for a specified Bitbucket repository. Use when you need to view deployment history and status across environments." }, { "slug": "BITBUCKET_LIST_ISSUES", "name": "List issues in a repository", "description": "Lists issues in a Bitbucket repository with optional filtering by state, priority, kind, or assignee. Use when you need to discover issue IDs or get an overview of repository issues." }, { "slug": "BITBUCKET_LIST_PIPELINES", "name": "List pipelines", "description": "Tool to find pipelines in a Bitbucket repository. Returns pipeline metadata including state, trigger, and duration. Use when you need to browse pipeline history or check pipeline status." }, { "slug": "BITBUCKET_LIST_PULL_REQUESTS", "name": "List pull requests", "description": "Lists pull requests in a specified, accessible Bitbucket repository, optionally filtering by state (OPEN, MERGED, DECLINED)." }, { "slug": "BITBUCKET_LIST_PULL_REQUEST_TASKS", "name": "List pull request tasks", "description": "Lists all tasks associated with a pull request in a Bitbucket repository. Use when you need to view or track tasks on a PR." }, { "slug": "BITBUCKET_LIST_REPOSITORIES", "name": "List all public repositories", "description": "Retrieves a paginated list of all public repositories on Bitbucket. Use when you need to discover or search across public repositories, optionally filtered by role, query string, creation date, or sorted by various fields." }, { "slug": "BITBUCKET_LIST_REPOSITORIES_ENVIRONMENTS", "name": "List repository environments", "description": "List all deployment environments configured for a Bitbucket repository. Use when you need to view available environments for deployments, check environment configurations, or select an environment for deployment operations." }, { "slug": "BITBUCKET_LIST_REPOSITORIES_IN_WORKSPACE", "name": "List repositories in workspace", "description": "Lists repositories in a specified Bitbucket workspace, accessible to the authenticated user, with options to filter by role or query string, and sort results. Responses are paginated; iterate using the `next` field in each response until it is absent to retrieve all repositories." }, { "slug": "BITBUCKET_LIST_REPOSITORY_FORKS", "name": "List repository forks", "description": "Retrieves a paginated list of all forks for a specific repository in a Bitbucket workspace. Returns repository objects for each fork with metadata like owner, creation date, and size. Use this action when you need to discover who has forked a repository or analyze fork relationships." }, { "slug": "BITBUCKET_LIST_REPOSITORY_PATHS", "name": "List repository paths", "description": "Lists file and directory entries under a repository path at a given revision, with optional breadth-first recursion via max_depth for repository traversal and scanning. Fails if the path points to a file rather than a directory." }, { "slug": "BITBUCKET_LIST_SNIPPETS", "name": "List snippets", "description": "Returns all snippets accessible to the authenticated user. Use when you need to discover or list snippets, optionally filtered by role (owner, contributor, or member)." }, { "slug": "BITBUCKET_LIST_TAGS", "name": "List tags", "description": "Lists tags in a Bitbucket repository with optional server-side filtering by name pattern or commit hash (BBQL) and sorting. Use when you need to discover available tags, search for specific tag patterns, or find tags pointing to specific commits." }, { "slug": "BITBUCKET_LIST_VERSIONS", "name": "List versions", "description": "Lists versions (milestones) in a Bitbucket repository's issue tracker. Use when you need to discover available versions for associating with issues, or to retrieve version IDs for use with create_issue." }, { "slug": "BITBUCKET_LIST_WORKSPACE_MEMBERS", "name": "List workspace members", "description": "Lists all members of a specified Bitbucket workspace; the workspace must exist." }, { "slug": "BITBUCKET_LIST_WORKSPACE_PROJECTS", "name": "List workspace projects", "description": "Lists projects in a specified Bitbucket workspace. Use when you need to retrieve all projects belonging to a workspace." }, { "slug": "BITBUCKET_LIST_WORKSPACES", "name": "List workspaces", "description": "Lists Bitbucket workspaces accessible to the authenticated user, optionally filtered and sorted. Results are paginated; follow the `next` field in each response to retrieve subsequent pages until `next` is absent. When multiple workspaces are returned, verify the correct `slug` or UUID before passing to downstream tools." }, { "slug": "BITBUCKET_MERGE_PULL_REQUEST", "name": "Merge Pull Request", "description": "Tool to merge a Bitbucket Cloud pull request via the REST API. Use when you need to complete a PR merge after approval and checks pass. Supports custom merge messages, merge strategies, and source branch deletion." }, { "slug": "BITBUCKET_REQUEST_PULL_REQUEST_CHANGES", "name": "Request Pull Request Changes", "description": "Tool to request changes on a pull request as the authenticated user. Use when you need to formally request changes in a pull request review process, indicating the PR needs modifications before approval." }, { "slug": "BITBUCKET_RESOLVE_PULL_REQUEST_COMMENT", "name": "Resolve pull request comment", "description": "Tool to resolve or reopen a pull request comment thread. Use when marking a comment as addressed during review or reopening a previously resolved thread." }, { "slug": "BITBUCKET_SEARCH_TEAM_CODE", "name": "Search code in team repositories", "description": "Search for code in repositories of a specified team. Matches can occur in file content or paths. Note: Teams endpoints were deprecated in Oct 2020; use workspace search endpoints for new integrations." }, { "slug": "BITBUCKET_SEARCH_USER_REPOSITORIES_CODE", "name": "Search code in user repositories", "description": "Tool to search for code in the repositories of a specified user. Use when you need to find specific code patterns, functions, or text across all repositories owned by a user." }, { "slug": "BITBUCKET_STOP_PIPELINE", "name": "Stop pipeline", "description": "Signal the stop of a pipeline and all of its steps that have not completed yet. This action is irreversible — once stopped, a pipeline cannot be restarted and must be re-triggered to run again. Use this action when you need to cancel a running pipeline execution that is no longer needed or was triggered incorrectly." }, { "slug": "BITBUCKET_UPDATE_INSIGHTS_PROJECTS_REPOS_COMMITS_REPORTS", "name": "Update commit insight report", "description": "Create or update an insight report for a commit. Creates a new report if it doesn't exist, or replaces the existing one if a report already exists for the given repository, commit, and report key. Note: replacing an existing report will be rejected if the authenticated user was not the creator of the specified report." }, { "slug": "BITBUCKET_UPDATE_ISSUE", "name": "Update an issue", "description": "Updates an existing issue in a Bitbucket repository by modifying specified attributes; requires `workspace`, `repo_slug`, `issue_id`, and at least one attribute to update." }, { "slug": "BITBUCKET_UPDATE_PULL_REQUEST", "name": "Update Pull Request", "description": "Tool to update an existing pull request's editable fields (e.g., title, description, reviewers) via the Bitbucket Cloud API. Use when you need to modify a pull request without creating a new one. Only sends fields that are explicitly provided to avoid accidental overwrites." }, { "slug": "BITBUCKET_UPDATE_REPOSITORIES_COMMIT_COMMENTS", "name": "Update commit comment", "description": "Updates the contents of a comment on a commit. Use when you need to modify an existing comment's text on a commit." }, { "slug": "BITBUCKET_UPDATE_REPOSITORIES_COMMIT_REPORTS_ANNOTATIONS", "name": "Update commit report annotation", "description": "Creates or updates an individual annotation for a commit report. Use when you need to add or modify code analysis findings (vulnerabilities, code smells, or bugs) identified in a commit." }, { "slug": "BITBUCKET_UPDATE_TEAMS_PIPELINES_CONFIG_VARIABLES", "name": "Update team pipeline variable", "description": "Updates a team-level pipeline configuration variable in Bitbucket. Use when you need to modify existing environment variables or configuration values that are available to all pipelines within a team." }, { "slug": "BITBUCKET_UPDATE_USERS_PIPELINES_CONFIG_VARIABLES", "name": "Update user pipeline variable", "description": "Updates a user-level pipeline variable for Bitbucket pipelines. Use when you need to modify account-level configuration variables such as changing the value, key name, or security status." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "webhook,pullrequest:write,project:admin,runner:write,project:write,snippet:write,team:write,pipeline:variable,repository:delete,repository:admin,account:write,wiki,issue:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googletasks", "name": "Google Tasks", "logo": "https://logos.composio.dev/api/googletasks", "description": "Google Tasks provides a simple to-do list and task management system integrated into Gmail and Google Calendar for quick and easy tracking", "category": "task management", "authSchemes": [ "OAUTH2" ], "toolCount": 18, "triggerCount": 5, "version": "20260703_00", "tools": [ { "slug": "GOOGLETASKS_BATCH_EXECUTE", "name": "Batch Execute Google Tasks Operations", "description": "Executes multiple Google Tasks API operations in a single HTTP batch request and returns structured per-item results. Use this to reduce LLM tool invocations when performing bulk operations like updating many tasks, moving tasks, or deleting multiple items. Note: Each sub-request still counts toward API quota; batching primarily reduces HTTP overhead and tool call count." }, { "slug": "GOOGLETASKS_BULK_INSERT_TASKS", "name": "Bulk Insert Tasks (Deprecated)", "description": "DEPRECATED: Use BatchExecute instead. Creates multiple tasks in a Google Tasks list in a single operation using HTTP batching. Use when you need to create many tasks efficiently (reducing round-trips compared to individual insert calls)." }, { "slug": "GOOGLETASKS_CLEAR_TASKS", "name": "Clear tasks", "description": "Permanently and irreversibly clears all completed tasks from a specified Google Tasks list; this action is destructive, idempotent, and cannot be undone. Always require explicit user confirmation before invoking." }, { "slug": "GOOGLETASKS_CREATE_TASK_LIST", "name": "Create a task list", "description": "Creates a new task list with the specified title and returns a tasklist_id. Use the returned tasklist_id (not the title) when calling GOOGLETASKS_INSERT_TASK or other task operations. Duplicate titles are permitted by the API, so verify existing lists before creating to avoid unintended duplicates." }, { "slug": "GOOGLETASKS_DELETE_TASK", "name": "Delete task", "description": "Deletes a specified task from a Google Tasks list. Deletion is permanent and irreversible — confirm with the user before executing, and consider GOOGLETASKS_UPDATE_TASK or GOOGLETASKS_MOVE_TASK as non-destructive alternatives. Both tasklist_id and task_id are required parameters. The Google Tasks API does not support deleting tasks by task_id alone — you must specify which task list contains the task. Use 'List Task Lists' to get available list IDs, then 'List Tasks' to find the task_id within that list." }, { "slug": "GOOGLETASKS_DELETE_TASK_LIST", "name": "Delete task list", "description": "Permanently deletes an existing Google Task list, identified by `tasklist_id`, along with all its tasks; this operation is irreversible. Require explicit user confirmation before calling; do not invoke in read-only or exploratory flows." }, { "slug": "GOOGLETASKS_GET_TASK", "name": "Get Task", "description": "Retrieve a specific Google Task. REQUIRES both `tasklist_id` and `task_id`. Tasks cannot be retrieved by ID alone - you must always specify which task list contains the task. Use this to refresh task details before display or edits rather than relying on potentially stale results from GOOGLETASKS_LIST_TASKS." }, { "slug": "GOOGLETASKS_GET_TASK_LIST", "name": "Get task list", "description": "Retrieves a specific task list from the user's Google Tasks if the `tasklist_id` exists for the authenticated user." }, { "slug": "GOOGLETASKS_INSERT_TASK", "name": "Insert Task", "description": "Creates a new task in a given `tasklist_id`, optionally as a subtask of an existing `task_parent` or positioned after an existing `task_previous` sibling, where both `task_parent` and `task_previous` must belong to the same `tasklist_id` if specified. IMPORTANT: Date fields (due, completed) accept various formats like '28 Sep 2025', '11:59 PM, 22 Sep 2025', or ISO format '2025-09-21T15:30:00Z' and will automatically convert them to RFC3339 format required by the API. Not idempotent — repeated calls with identical parameters create duplicate tasks; track returned task IDs to avoid duplication. High-volume inserts may trigger 403 rateLimitExceeded or 429; apply exponential backoff." }, { "slug": "GOOGLETASKS_LIST_ALL_TASKS", "name": "List All Tasks Across All Lists", "description": "Tool to list all tasks across all of the user's task lists with optional filters. Use when the agent needs to see all tasks without knowing which list to query first. Each returned task is annotated with its tasklist_id and tasklist_title for context." }, { "slug": "GOOGLETASKS_LIST_TASK_LISTS", "name": "List task lists", "description": "Fetches the authenticated user's task lists from Google Tasks; results may be paginated. Response contains task lists under the `items` key. Multiple lists may share similar names — confirm the correct list by ID before passing to other tools." }, { "slug": "GOOGLETASKS_LIST_TASKS", "name": "List Tasks", "description": "Retrieves tasks from a Google Tasks list; all date/time strings must be RFC3339 UTC, and `showCompleted` must be true if `completedMin` or `completedMax` are specified. Response key for tasks is `tasks` (not `items`). No full-text search; filter client-side by title/notes. Results ordered by position, not by date." }, { "slug": "GOOGLETASKS_MOVE_TASK", "name": "Move Task", "description": "Moves the specified task to another position in the task list or to a different task list. Use cases: - Reorder tasks within a list (use 'previous' parameter) - Create subtasks by moving a task under a parent (use 'parent' parameter) - Move tasks between different task lists (use 'destinationTasklist' parameter) - Move a subtask back to top-level (omit 'parent' parameter)" }, { "slug": "GOOGLETASKS_PATCH_TASK", "name": "Patch Task", "description": "Partially updates an existing task (identified by `task_id`) within a specific Google Task list (identified by `tasklist_id`), modifying only the provided attributes from `TaskInput` (e.g., `title`, `notes`, `due` date, `status`) and requiring both the task and list to exist." }, { "slug": "GOOGLETASKS_PATCH_TASK_LIST", "name": "Patch task list", "description": "Updates the title of an existing Google Tasks task list." }, { "slug": "GOOGLETASKS_UPDATE_TASK", "name": "Update Task (Deprecated)", "description": "DEPRECATED: Use GOOGLETASKS_PATCH_TASK instead. Full-update (PUT-style) operation that overwrites unspecified fields with empty/default values, which can cause data loss. Prefer GOOGLETASKS_PATCH_TASK unless a complete field replacement is explicitly required." }, { "slug": "GOOGLETASKS_UPDATE_TASK_FULL", "name": "Update Task (Full Replacement)", "description": "Tool to fully replace an existing Google Task using PUT method. Use when you need to update the entire task resource, not just specific fields. This method requires all required fields (id, title) and replaces the complete task, unlike PATCH which supports partial updates." }, { "slug": "GOOGLETASKS_UPDATE_TASK_LIST", "name": "Update Task List", "description": "Updates the authenticated user's specified task list." } ], "triggers": [ { "slug": "GOOGLETASKS_NEW_TASK_CREATED_TRIGGER", "name": "New Task Created", "description": "Triggers when a new task is created in a Google Tasks list.\n Uses timestamp filtering (updatedMin) to efficiently detect new tasks." }, { "slug": "GOOGLETASKS_NEW_TASK_LIST_CREATED_TRIGGER", "name": "New Task List Created", "description": "Triggers when a new Google Tasks task list is created.\n This trigger monitors Google Tasks and fires when new task lists are detected." }, { "slug": "GOOGLETASKS_TASK_DETAILS_CHANGED_TRIGGER", "name": "Task Details Changed", "description": "Triggers when a specific task's details change.\n This trigger monitors a single Google Task and fires when any of its details\n (title, notes, status, due date, completion, position) are modified." }, { "slug": "GOOGLETASKS_TASK_LIST_CHANGED_TRIGGER", "name": "Task List Changed", "description": "Triggers when a task list changes (title or content updates).\n This trigger monitors a specific Google Tasks list and fires when changes are detected." }, { "slug": "GOOGLETASKS_TASK_UPDATED_TRIGGER", "name": "Task Updated", "description": "Triggers when an existing task is updated in a Google Tasks list.\n This trigger monitors a specific task list and fires when tasks are modified." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/tasks" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "discord", "name": "Discord", "logo": "https://logos.composio.dev/api/discord", "description": "An instant messaging and VoIP social platform.", "category": "team chat", "authSchemes": [ "OAUTH2" ], "toolCount": 28, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "DISCORD_CONSUME_ENTITLEMENT", "name": "Consume Entitlement", "description": "Marks a one-time purchase consumable entitlement as consumed for a given application. Only applicable to entitlements backed by one-time purchase consumable SKUs." }, { "slug": "DISCORD_DELETE_TEST_ENTITLEMENT", "name": "Delete Test Entitlement", "description": "Deletes a currently active test entitlement for a given application. Use this to clean up test entitlements that are no longer needed." }, { "slug": "DISCORD_DELETE_USER_APPLICATION_ROLE_CONNECTION", "name": "Delete User Application Role Connection", "description": "Deletes the current user's application role connection for the specified application. Removes the platform metadata and linked role connection." }, { "slug": "DISCORD_EDIT_APPLICATION_COMMAND_PERMISSIONS", "name": "Edit Application Command Permissions", "description": "Edits the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE_GUILD and MANAGE_ROLES permissions in the target guild." }, { "slug": "DISCORD_GET_APPLICATION_COMMAND_PERMISSIONS", "name": "Get Application Command Permissions", "description": "Retrieves the permissions for a specific application command in a guild. Requires OAuth2 Bearer token (bot tokens will error). The authorizing user must have MANAGE_GUILD and MANAGE_ROLES permissions in the target guild." }, { "slug": "DISCORD_GET_BATCH_APPLICATION_COMMAND_PERMISSIONS", "name": "Get Batch Application Command Permissions", "description": "Retrieves permissions for all commands of an application in a guild. Returns a list of permission objects for each command. Requires OAuth2 Bearer token (Bot tokens will error)." }, { "slug": "DISCORD_GET_CURRENT_USER_APPLICATION_ENTITLEMENTS", "name": "Get Current User Application Entitlements", "description": "Tool to retrieve entitlements for the current user for a given application. Use when you need to check what premium offerings or subscriptions the authenticated user has access to." }, { "slug": "DISCORD_GET_GATEWAY", "name": "Get Gateway", "description": "Tool to retrieve a valid WebSocket (wss) URL for establishing a Gateway connection to Discord. Use when you need to connect to the Discord Gateway for real-time events." }, { "slug": "DISCORD_GET_GUILD_TEMPLATE", "name": "Get Guild Template", "description": "Tool to retrieve information about a Discord guild template using its unique template code. Use when you need to get details about a guild template for creating new servers." }, { "slug": "DISCORD_GET_GUILD_WIDGET", "name": "Get Guild Widget", "description": "Tool to retrieve the guild widget in JSON format. Use when you need to get public information about a Discord guild's widget that can be displayed on external websites. The widget must be enabled in the guild's server settings." }, { "slug": "DISCORD_GET_GUILD_WIDGET_PNG", "name": "Get Guild Widget PNG", "description": "Tool to retrieve a PNG image widget for a Discord guild. Use when you need a visual representation of the guild widget that can be displayed on external websites. The widget must be enabled in the guild's server settings." }, { "slug": "DISCORD_GET_INVITE", "name": "Get Invite (Deprecated)", "description": "DEPRECATED: Use DISCORD_INVITE_RESOLVE instead. Tool to retrieve information about a specific invite code. Use when you need to get details about a guild or channel associated with an invite. Response may be null or partial for expired, revoked, or inaccessible invites; do not infer guild membership or channel access from the response." }, { "slug": "DISCORD_GET_MY_GUILD_MEMBER", "name": "Get my guild member", "description": "Retrieves the guild member object for the currently authenticated user within a specified guild, including roles, nickname, join date, and permissions." }, { "slug": "DISCORD_GET_MY_OAUTH2_AUTHORIZATION", "name": "Get my OAuth2 authorization", "description": "Retrieves current OAuth2 authorization details for the application, including app info, scopes, token expiration, and user data (contingent on scopes like 'identify')." }, { "slug": "DISCORD_GET_MY_USER", "name": "Get My User", "description": "Fetches comprehensive profile information for the currently authenticated Discord user, including email if the 'email' scope is granted." }, { "slug": "DISCORD_GET_OPENID_CONNECT_USERINFO", "name": "Get OpenID Connect userinfo", "description": "Retrieve OpenID Connect compliant user information for the authenticated user. Returns standardized OIDC user claims (sub, email, nickname, picture, locale, etc.) following the OpenID Connect specification. Requires OAuth2 access token with 'openid' scope; additional fields require 'identify' and 'email' scopes." }, { "slug": "DISCORD_GET_PUBLIC_KEYS", "name": "Get Public Keys", "description": "Tool to retrieve Discord OAuth2 public keys. Use when you need to verify OAuth2 tokens or access public keys for cryptographic operations." }, { "slug": "DISCORD_GET_SKU_SUBSCRIPTION", "name": "Get SKU Subscription", "description": "Retrieves a specific subscription by ID for a given SKU. Use to check details of a single user subscription." }, { "slug": "DISCORD_GET_USER", "name": "Get User", "description": "Retrieve information about a Discord user. With OAuth Bearer token authentication, this returns the authenticated user's information (use '@me'). With Bot token authentication, you can query any user by their ID. Use this when you need user details like username, avatar, email (if email scope is granted), locale, premium status, or other profile information." }, { "slug": "DISCORD_GET_USER_APPLICATION_ROLE_CONNECTION", "name": "Get User Application Role Connection", "description": "Retrieves the application role connection for the currently authenticated user for a specified application. Requires the role_connections.write OAuth2 scope." }, { "slug": "DISCORD_INVITE_RESOLVE", "name": "Resolve Invite", "description": "Tool to resolve and retrieve information about a Discord invite code. Use when you need to get details about a guild, channel, or event associated with an invite code." }, { "slug": "DISCORD_LEAVE_GUILD", "name": "Leave Guild", "description": "Leaves a Discord guild (server) on behalf of the currently authenticated user." }, { "slug": "DISCORD_LIST_MY_CONNECTIONS", "name": "List My Connections", "description": "Retrieves a list of the authenticated user's connected third-party accounts on Discord." }, { "slug": "DISCORD_LIST_MY_GUILDS", "name": "List My Guilds", "description": "Lists the current user's guilds, returning partial data for each; primarily used for displaying server lists or verifying memberships." }, { "slug": "DISCORD_LIST_SKU_SUBSCRIPTIONS", "name": "List SKU Subscriptions", "description": "Lists all subscriptions for a given SKU. When using a Bot token, the user_id query parameter is required. Returns paginated subscription objects." }, { "slug": "DISCORD_LIST_STICKER_PACKS", "name": "List Sticker Packs", "description": "Tool to retrieve all available Discord Nitro sticker packs. Use when you need to list or browse official Discord sticker packs." }, { "slug": "DISCORD_MODIFY_CURRENT_USER", "name": "Modify Current User", "description": "Modifies the currently authenticated Discord user's profile. Can update username (limited to 2 changes per hour) and avatar." }, { "slug": "DISCORD_UPDATE_USER_APPLICATION_ROLE_CONNECTION", "name": "Update User Application Role Connection", "description": "Updates the application role connection for the currently authenticated user for a specified application. Requires the role_connections.write OAuth2 scope." } ], "triggers": [ { "slug": "DISCORD_NEW_MESSAGE_TRIGGER", "name": "New Discord Message Trigger", "description": "Polls a specific Discord channel for new messages." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "discord_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identify,email,connections,guilds,guilds.join,guilds.members.read,messages.read,openid" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "figma", "name": "Figma", "logo": "https://logos.composio.dev/api/figma", "description": "A collaborative interface design tool.", "category": "images & design", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIGMA_ADD_A_COMMENT_TO_A_FILE", "name": "Add a comment to a file", "description": "Posts a new comment to a Figma file or branch, optionally replying to an existing root comment (replies cannot be nested); `region_height` and `region_width` in `client_meta` must be positive if defining a comment region." }, { "slug": "FIGMA_ADD_A_REACTION_TO_A_COMMENT", "name": "Add a reaction to a comment", "description": "Posts a specified emoji reaction to an existing comment in a Figma file or branch, requiring valid file_key and comment_id." }, { "slug": "FIGMA_CREATE_A_WEBHOOK", "name": "Create a webhook", "description": "Creates a Figma webhook to receive POST notifications when specific events occur. Webhooks can monitor events at three scopes: - Team level: monitors all files in a team (requires team admin permissions) - Project level: monitors all files in a project (requires edit access) - File level: monitors a specific file (requires edit access) Upon creation, Figma sends an initial PING event to verify your endpoint (unless status is PAUSED). IMPORTANT: team_id, project_id, and file_key cannot be discovered programmatically. Extract them from Figma URLs or use FIGMA_DISCOVER_FIGMA_RESOURCES to parse URLs." }, { "slug": "FIGMA_CREATE_DEV_RESOURCES", "name": "Create dev resources", "description": "Creates and attaches multiple uniquely-URLed development resources to specified Figma nodes, up to 10 per node." }, { "slug": "FIGMA_CREATE_MODIFY_DELETE_VARIABLES", "name": "Create, modify, or delete variables", "description": "Manages variables, collections, modes, and their values in a Figma file via batch create/update/delete operations; use temporary IDs to link new related items in one request and ensure `variableModeValues` match the target variable's `resolvedType`." }, { "slug": "FIGMA_DELETE_A_COMMENT", "name": "Delete a comment", "description": "Deletes a specific comment from a Figma file or branch, provided the authenticated user is the original author of the comment." }, { "slug": "FIGMA_DELETE_A_REACTION", "name": "Delete a reaction", "description": "Deletes a specific emoji reaction from a comment in a Figma file; the user must have originally created the reaction." }, { "slug": "FIGMA_DELETE_A_WEBHOOK", "name": "Delete a webhook", "description": "Permanently deletes an existing webhook, identified by its unique `webhook_id`; this operation is irreversible." }, { "slug": "FIGMA_DELETE_DEV_RESOURCE", "name": "Delete dev resource", "description": "Deletes a development resource (used to link Figma design elements to external developer information like code or tasks) from a specified Figma file." }, { "slug": "FIGMA_DESIGN_TOKENS_TO_TAILWIND", "name": "Design tokens to tailwind", "description": "Convert design tokens to Tailwind CSS configuration. TWO-STEP WORKFLOW: 1. First, call FIGMA_EXTRACT_DESIGN_TOKENS with a Figma file_key to extract design tokens 2. Then, pass the returned DesignTokens object to this action's 'tokens' parameter This action generates: - tailwind.config.ts/js with theme extensions - Optional globals.css with font imports Note: Shadow colors can be provided in either string format (e.g., \"rgba(15, 110, 110, 0.32)\") or dictionary format (e.g., {\"r\": 0.059, \"g\": 0.431, \"b\": 0.431, \"a\": 0.32})." }, { "slug": "FIGMA_DETECT_BACKGROUND", "name": "Detect Background Layers", "description": "Detect background layers for selected nodes in a Figma file. This action analyzes the Figma document structure and identifies potential background elements for the given target nodes. It uses: - Geometric analysis (bounding box overlap/containment) - Z-index ordering (nodes earlier in the layer stack are behind later ones) - Visual properties (fills, node types) - Naming conventions (nodes named 'background', 'bg', etc.) Returns background candidates with confidence scores (0-1) and explanations." }, { "slug": "FIGMA_DISCOVER_FIGMA_RESOURCES", "name": "Discover Figma Resources", "description": "Smart Figma resource discovery - extract IDs from any Figma URL. Supports all URL formats: /file/, /design/, /board/, /proto/, /slides/ Example: figma.com/board/ABC123/Name → file_key=ABC123 Discovery workflow: team_id → projects → files → nodes Use extracted IDs with GetFileJson, DetectBackground, etc." }, { "slug": "FIGMA_DOWNLOAD_FIGMA_IMAGES", "name": "Download Figma Images", "description": "Download images from Figma file nodes. Renders specified nodes as images and downloads them. Supports PNG, SVG, JPG, and PDF formats. REQUIRED PARAMETERS: - file_key (string): The Figma file key from the URL - images (array): List of objects, each containing: - node_id (string, required): The node ID to export (e.g., \"1:2\") - file_name (string, required): Output filename with extension (e.g., \"logo.png\") - format (string, optional): One of 'png', 'svg', 'jpg', 'pdf'. Defaults to 'png' Example usage: { \"file_key\": \"abc123XYZ\", \"images\": [ {\"node_id\": \"1:2\", \"file_name\": \"logo.png\", \"format\": \"png\"} ] } To find node IDs, use FIGMA_GET_FILE_JSON or look in Figma URLs after 'node-id='. NOTE: Returned image URLs expire shortly after generation — download them immediately." }, { "slug": "FIGMA_EXTRACT_DESIGN_TOKENS", "name": "Extract design tokens", "description": "Extract design tokens from Figma files by combining styles, variables, and node-extracted values. Only values defined as Figma styles or variables are captured — any design values not encoded as styles/variables are silently omitted. Requires `file_variables:read` scope and a Figma plan that supports variables for full output; if variables return empty, supplement with FIGMA_GET_LOCAL_VARIABLES." }, { "slug": "FIGMA_EXTRACT_PROTOTYPE_INTERACTIONS", "name": "Extract Prototype Interactions", "description": "Extract prototype interactions and animations from Figma files. Required parameter: - file_key: The Figma file key extracted from a URL like 'https://www.figma.com/file/ABC123xyz/MyFile' (the 'ABC123xyz' part) Analyzes the prototype data to extract: - User interactions (clicks, hovers, etc.) - Transition animations - Component variant states - User flows and navigation" }, { "slug": "FIGMA_GET_ACTIVITY_LOGS", "name": "Get activity logs", "description": "Retrieves activity log events from Figma, allowing filtering by event types, time range, and pagination." }, { "slug": "FIGMA_GET_A_WEBHOOK", "name": "Get a webhook", "description": "Retrieves detailed information about a specific webhook by its ID, provided the webhook exists and is accessible to the user." }, { "slug": "FIGMA_GET_COMMENTS_IN_A_FILE", "name": "Get comments in a file", "description": "Retrieves all comments from an existing Figma file, identified by a valid `file_key`, returning details like content, author, position, and reactions, with an option for Markdown formatted content." }, { "slug": "FIGMA_GET_COMPONENT", "name": "Get component (Deprecated)", "description": "DEPRECATED: Use FIGMA_GET_FILE_NODES instead. Get component data with automatic simplification. Returns clean, AI-friendly component structure." }, { "slug": "FIGMA_GET_COMPONENT2", "name": "Get component", "description": "Fetches metadata for a specific component using its unique identifier. Use when you need to retrieve published component details from a team library." }, { "slug": "FIGMA_GET_COMPONENT_SET", "name": "Get component set", "description": "Retrieves detailed metadata for a specific published Figma component set using its unique `key`." }, { "slug": "FIGMA_GET_CURRENT_USER", "name": "Get current user", "description": "Retrieves detailed information for the currently authenticated Figma user." }, { "slug": "FIGMA_GET_DEV_RESOURCES", "name": "Get dev resources", "description": "Retrieves development resources (e.g., Jira/GitHub links) for a Figma main file, optionally filtering by specific node IDs." }, { "slug": "FIGMA_GET_FILE_COMPONENTS", "name": "Get file components", "description": "Retrieves published components from a Figma file, which must be a main file (not a branch) acting as a library." }, { "slug": "FIGMA_GET_FILE_COMPONENT_SETS", "name": "Get file component sets", "description": "Retrieves all published component sets from the specified Figma main file (file_key must not be for a branch)." }, { "slug": "FIGMA_GET_FILE_JSON", "name": "Get file json", "description": "Get Figma Design file data with automatic simplification. IMPORTANT: Only supports Design files (figma.com/design/{file_key}). FigJam board files (figma.com/board/{file_key}) and Slides files (figma.com/slides/{file_key}) are NOT supported and will return a 400 error: \"File type not supported by this endpoint\". This enhanced version automatically transforms verbose Figma JSON into clean, AI-friendly format with: - CSS-like property names - Deduplicated variables - Removed empty values - 70%+ size reduction Use simplify=False to get raw API response." }, { "slug": "FIGMA_GET_FILE_METADATA", "name": "Get file metadata", "description": "Get Figma file metadata including name, creator, last modification details, thumbnail, and access information. Use when you need quick file overview without the full document tree." }, { "slug": "FIGMA_GET_FILE_NODES", "name": "Get file nodes", "description": "Fetch JSON for specific node IDs from a Figma file to avoid full-file payload limits. Use when you already know target node IDs (from shallow file fetch or component listings) or when full-file JSON has hit payload limits. Prefer depth=1 for fast discovery." }, { "slug": "FIGMA_GET_FILES_IN_A_PROJECT", "name": "Get files in a project", "description": "Fetches a list of files in a Figma project, optionally including branch metadata." }, { "slug": "FIGMA_GET_FILE_STYLES", "name": "Get file styles", "description": "Retrieves a list of published styles (like colors, text attributes, effects, and layout grids) from a specified main Figma file (not a branch)." }, { "slug": "FIGMA_GET_IMAGE_FILLS", "name": "Get image fills", "description": "Retrieves temporary (14-day expiry) download URLs for all image fills in a Figma file; requires `imageRef` from `Paint` objects to map URLs." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_COMPONENT_ACTION_DATA", "name": "Get library analytics component action data", "description": "Retrieves component insertion and detachment analytics for a specified Figma library, groupable by 'component' or 'team' and filterable by a date range (YYYY-MM-DD)." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_COMPONENT_USAGE_DATA", "name": "Get library analytics component usage data", "description": "Retrieves component usage analytics for a specified Figma library file (identified by `file_key`), with data groupable by 'component' or 'file'." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_STYLE_ACTION_DATA", "name": "Get library analytics style action data", "description": "Retrieves style usage analytics (insertions, detachments) for a Figma library, grouped by 'style' or 'team'; if providing a date range, ensure end_date is not before start_date." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_STYLE_USAGE_DATA", "name": "Get library analytics style usage data", "description": "Retrieves style usage analytics for a published Figma library. Returns data about how styles (colors, text styles, effects, grids) from the library are being used across your organization. Requires Enterprise plan and library_analytics:read scope. Group results by 'style' to see per-style metrics or by 'file' to see which files use the library's styles." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_VARIABLE_ACTION_DATA", "name": "Get library analytics variable action data", "description": "Retrieves weekly, paginated analytics data on variable insertions and detachments for a specified Figma library (identified by `file_key`), groupable by 'variable' or 'team', and filterable by an optional date range. Note: Requires Enterprise plan and library_analytics:read scope." }, { "slug": "FIGMA_GET_LIBRARY_ANALYTICS_VARIABLE_USAGE_DATA", "name": "Get library analytics variable usage data", "description": "Retrieves paginated analytics data on variable usage from a specified Figma library, grouped by 'file' or 'variable', for libraries with enabled analytics." }, { "slug": "FIGMA_GET_LOCAL_VARIABLES", "name": "Get local variables", "description": "Retrieves all local/remote variables for a Figma file/branch; crucial for obtaining mode-specific values which `/v1/files/{file_key}/variables/published` omits." }, { "slug": "FIGMA_GET_PAYMENTS", "name": "Get payments", "description": "Retrieves a user's payment information for a Figma plugin, widget, or Community file; the authenticated identity must own the resource." }, { "slug": "FIGMA_GET_PROJECTS_IN_A_TEAM", "name": "Get projects in a team", "description": "Retrieves projects within a specified Figma team that are visible to the authenticated user." }, { "slug": "FIGMA_GET_PUBLISHED_VARIABLES", "name": "Get published variables", "description": "Retrieves variables published from a specified Figma file; this API is available only to full members of Enterprise organizations." }, { "slug": "FIGMA_GET_REACTIONS_FOR_A_COMMENT", "name": "Get reactions for a comment", "description": "Retrieves reactions for a specific comment in a Figma file." }, { "slug": "FIGMA_GET_SCIM_SERVICE_PROVIDER_CONFIG", "name": "Get SCIM service provider config", "description": "Get Figma's SCIM service provider configuration. Returns configuration details including which SCIM operations are supported (patch, bulk, filter, etc.), authentication schemes, and service capabilities." }, { "slug": "FIGMA_GET_STYLE", "name": "Get style", "description": "Retrieves detailed metadata for a specific style in Figma using its unique style key." }, { "slug": "FIGMA_GET_TEAM_COMPONENTS", "name": "Get team components", "description": "Retrieves components published in a specific Figma team's library; the team must have published components, otherwise an empty list is returned." }, { "slug": "FIGMA_GET_TEAM_COMPONENT_SETS", "name": "Get team component sets", "description": "Retrieves a paginated list of published component sets (collections of reusable UI elements) from a specified Figma team's library." }, { "slug": "FIGMA_GET_TEAM_STYLES", "name": "Get team styles", "description": "Retrieves a paginated list of published styles (fill colors, text styles, effects, grids) from a specified Figma team's library. Note: The team must have published styles in its library for this endpoint to return data. Teams without published styles will return an empty list." }, { "slug": "FIGMA_GET_TEAM_WEBHOOKS", "name": "Get webhooks", "description": "Retrieves all webhooks registered for a specified Figma context (team, project, or file). Uses the Figma Webhooks V2 API endpoint (GET /v2/webhooks) with context and context_id query parameters. This is the recommended approach as the legacy path-based endpoint (/v2/teams/{team_id}/webhooks) is deprecated. Note: team_id, project_id, and file_key cannot be discovered programmatically via the API. Extract them from Figma URLs or use FIGMA_DISCOVER_FIGMA_RESOURCES to parse URLs." }, { "slug": "FIGMA_GET_VERSIONS_OF_A_FILE", "name": "Get versions of a file", "description": "Retrieves the version history for a Figma file or branch, as specified by its `file_key`." }, { "slug": "FIGMA_GET_WEBHOOK_REQUESTS", "name": "Get webhook requests", "description": "Retrieves a history of webhook requests for a specific Figma webhook subscription; data is available for requests sent within the last seven days." }, { "slug": "FIGMA_RENDER_IMAGES_OF_FILE_NODES", "name": "Render images of file nodes", "description": "Render Figma nodes as images (PNG, JPG, SVG, PDF). Returns a map of node IDs to temporary image URLs (valid for 30 days). Images are capped at 32 megapixels; larger requests are automatically scaled down. REQUIRED PARAMETERS: - file_key: Figma file key from URL (e.g., 'abc123XYZ' from figma.com/design/abc123XYZ/...) - ids: Comma-separated node IDs to render (e.g., '1:2' or '1:2,1:3,1:4') NODE IDs: Found in Figma URLs after 'node-id=' or from FIGMA_GET_FILE_JSON response. FORMATS: - png/jpg: Raster images with optional scale (0.01-4.0) - svg: Vector graphics with text outline options - pdf: Document format COMMON ISSUES: - null value in images map = node failed to render (invalid ID, invisible, 0% opacity) - 404 error = file_key not found or no access - 429 error = rate limit exceeded, wait and retry" }, { "slug": "FIGMA_UPDATE_A_WEBHOOK", "name": "Update a webhook", "description": "Updates an existing Figma webhook, identified by `webhook_id`, allowing modification of its event type, endpoint, passcode, status, or description." }, { "slug": "FIGMA_UPDATE_DEV_RESOURCES", "name": "Update dev resources", "description": "Updates the name and/or URL of one or more existing Figma Dev Resources, each identified by its unique `id`." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "figma_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Figma is a collaborative design tool supporting real-time editing, prototyping, and feedback, helping product teams iterate on UI/UX in a single environment", "required": true, "default": "https://api.figma.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "file_comments:write,webhooks:write,current_user:read,file_content:read,file_comments:read,projects:read,library_assets:read,library_content:read,team_library_content:read,file_metadata:read,file_versions:read,webhooks:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "figma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The web address used to reach Figma's API. Most accounts can keep the default, https://api.figma.com — change it only if your company routes Figma traffic through a proxy.", "required": true, "default": "https://api.figma.com" }, { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Your Figma personal access token (starts with 'figd_'). Create one under Settings → Security, picking the scopes you need; copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "composio_search", "name": "Composio Search", "logo": "https://logos.composio.dev/api/composio_search", "description": "Composio Search provides comprehensive web search across travel (flights, hotels, events), e-commerce (Amazon, Walmart, shopping), financial markets, news, academic research, images, and location services.", "category": "ai agents", "authSchemes": [ "NO_AUTH" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COMPOSIO_SEARCH_AMAZON", "name": "Amazon Product Search", "description": "Search Amazon for products across different country marketplaces. This tool searches Amazon's product catalog with support for multiple international Amazon domains/marketplaces. Each domain serves a different country with local pricing, currency, shipping options, and product availability. Perfect for product research, international price comparison, and finding products available in specific countries. Returns product details, pricing in local currency, ratings, reviews, and seller information. Examples: query=\"gaming laptop\" + amazon_domain=\"amazon.com\" for US marketplace query=\"coffee maker\" + amazon_domain=\"amazon.de\" for German marketplace query=\"iPhone 15\" + amazon_domain=\"amazon.co.uk\" for UK marketplace with GBP pricing" }, { "slug": "COMPOSIO_SEARCH_DUCK_DUCK_GO", "name": "Composio DuckDuckGo Search", "description": "The DuckDuckGoSearch class utilizes the Composio DuckDuckGo Search API to perform searches, focusing on web information and details. It leverages the DuckDuckGo search engine via the Composio DuckDuckGo Search API to retrieve relevant web data based on the provided query." }, { "slug": "COMPOSIO_SEARCH_EVENT", "name": "Composio Google Events Search", "description": "Search for upcoming events, concerts, festivals, conferences, and other activities. Supports location-based search (city, neighborhood, address), date filtering (today, tomorrow, weekend, next week/month), virtual event discovery, international search with 100+ languages and countries, and pagination. If results are sparse or events_results_state is 'Fully empty', treat as limited coverage and try COMPOSIO_SEARCH_WEB instead of retrying. Rate limit: ~2 requests/second; apply exponential backoff (1s, 2s, 4s) on 429 errors. Examples: \"Tech conferences\" in \"San Francisco, CA\" with gl=\"us\" and hl=\"en\" | \"Virtual networking events\" with htichips=\"event_type:Virtual-Event,date:next_week\" | \"Music festivals\" in \"London, UK\" with gl=\"uk\" and hl=\"en\"" }, { "slug": "COMPOSIO_SEARCH_EXA_ANSWER", "name": "Exa Answer", "description": "Get answers with citations using the Exa API. DEPRECATED: Use COMPOSIO_SEARCH_WEB instead." }, { "slug": "COMPOSIO_SEARCH_EXA_SIMILARLINK", "name": "Composio Similarlinks", "description": "Perform a search to find similar links and retrieve a list of relevant results. The search can optionally return contents." }, { "slug": "COMPOSIO_SEARCH_FETCH_URL_CONTENT", "name": "Fetch URL Content", "description": "Fetch and extract clean, readable page text (markdown) from public web pages (HTML content) using the Exa API. Use when you need to retrieve actual content from search results or documentation links to extract setup steps, requirements, or citations. Only works with web page URLs - does not support direct links to images, PDFs, or other binary files." }, { "slug": "COMPOSIO_SEARCH_FINANCE", "name": "Composio Finance Search", "description": "Get real-time stock prices, market data, financial news, and company information with historical analysis. Retrieves stock quotes, market indices, cryptocurrency prices, exchange rates, and financial news. Supports discrete time windows (1D, 5D, 1M, 6M, YTD, 1Y, 5Y, MAX) for historical analysis. Returns numeric time-series graph data, summary information, and key events (6M+ windows only). Always verify finance_results_state in the response — HTTP 200 with status='Success' can still return empty data. Derived indicators (MACD, moving averages) are not included and must be computed from returned price series. Examples: query=\"AAPL:NASDAQ\" + window=\"1Y\" for Apple's 1-year chart query=\"GOOGL:NASDAQ\" + window=\"6M\" + hl=\"en\" for Alphabet with news events query=\"WMT:NYSE\" + window=\"MAX\" for Walmart's full history query=\"BTC-USD\" for Bitcoin query=\"EUR-USD\" for Euro/USD rate" }, { "slug": "COMPOSIO_SEARCH_FLIGHTS", "name": "Flight Search", "description": "Search for flights with comprehensive pricing, schedule, and airline information. This tool finds available flights between cities/airports with detailed pricing, multiple airlines, departure/arrival times, flight duration, and booking options. Supports round-trip and one-way searches, multiple passenger types (adults, children, infants), different travel classes, and international pricing in various currencies. Perfect for travel planning, price comparison, and finding the best flight options. You can use either: 1. Natural language query: query=\"Lahore to San Francisco\" or query=\"NYC to London on March 15, 2025\" 2. Structured parameters: departure_id=\"JFK\", arrival_id=\"LAX\", outbound_date=\"2025-12-25\" Examples: query=\"Lahore to San Francisco\" query=\"New York to London on December 25, 2025\" departure_id=\"JFK\" + arrival_id=\"LAX\" + outbound_date=\"2025-12-25\" + return_date=\"2025-12-30\" departure_id=\"LGA\" + arrival_id=\"LHR\" + outbound_date=\"2025-06-01\" + adults=2" }, { "slug": "COMPOSIO_SEARCH_GOOGLE_MAPS", "name": "Composio Google Maps Search", "description": "Performs a location-specific search via the Composio Google Maps Search API, returning results under `results.local_results` (multi-place queries) or `results.place_results` (single place); always handle both branches. Fields like `opening_hours`, `phone`, `rating`, and `user_reviews` may be absent — treat missing values as unknown. Check `business_status`: closed businesses (`CLOSED_PERMANENTLY`, `TEMPORARILY_CLOSED`) can appear in results; filter for `OPERATIONAL` entries. Rate-limit calls to ~1 req/sec; HTTP 429 / `OVER_QUERY_LIMIT` indicates quota exhaustion. `gps_coordinates` may appear under `place_results` or inside individual `local_results` items." }, { "slug": "COMPOSIO_SEARCH_GROQ_CHAT", "name": "Groq Chat Completion", "description": "Execute fast LLM inference using Groq's optimized hardware and API. Groq provides ultra-fast inference for open-source models including LLaMA 3, Mixtral, and Gemma via OpenAI-compatible chat completions API. Use cases: real-time chat, content generation, Q&A, code generation, summarization, translation. For structured JSON output, instruct the model explicitly to return valid JSON with no markdown code fences or prose; validate with json.loads — batches of 150+ items are prone to malformed JSON. Strip triple-backtick wrappers from code/JSON outputs before parsing. Always validate that the response contains at least one choice with non-empty message.content before downstream use. On HTTP 429 or 5xx errors, use exponential backoff with a small retry cap; limit concurrency to ~3 concurrent calls. Model-reported character/word counts are approximate — verify independently when strict limits matter." }, { "slug": "COMPOSIO_SEARCH_HOTELS", "name": "Hotel Search", "description": "Search for hotels and vacation rentals with comprehensive filtering and pricing. Returns results under results.properties and results.ads; extract numeric pricing from rate_per_night.extracted_lowest, total_rate.extracted_lowest, or extracted_price (fields vary by property). Deduplicate across sections using property_token. Additional pages available via serpapi_pagination.next_page_token. Start with minimal filters — combining max_price, min_price, hotel_class, free_cancellation, gl, or hl too strictly can return empty results. Examples: q=\"New York\" + check_in_date=\"2025-06-01\" + check_out_date=\"2025-06-05\" + adults=2 q=\"Paris\" + check_in_date=\"2025-03-15\" + check_out_date=\"2025-03-18\" + min_price=100 + max_price=300 q=\"Tokyo\" + check_in_date=\"2025-12-20\" + check_out_date=\"2025-12-25\" + hotel_class=\"4,5\" + sort_by=3" }, { "slug": "COMPOSIO_SEARCH_IMAGE", "name": "Composio Image Search", "description": "The ImageSearch class performs an image search using the Composio Image Search API, targeting image metadata and URLs (not binary data) via Google Images. Returns results under `results.images_results`; each entry exposes `original` (full resolution) and `thumbnail` (low resolution) URLs — verify URLs are publicly accessible before passing downstream. Check `license_details_url` per result before commercial reuse. The number of results is controlled by `num` (1–100, default 20). For >100 images, paginate using `serpapi_pagination.next`. Rate limit: throttle to ~1–2 calls/second; apply exponential backoff on HTTP 429." }, { "slug": "COMPOSIO_SEARCH_NEWS", "name": "Composio News Search", "description": "Search for the latest news articles and current events with smart filtering. Searches news-oriented sources only (not blogs, docs, or company pages). Results nest under `data.results.news_results`; a 200 response with empty `news_results` or `news_results_state: 'Fully empty'` means no results — broaden query or `when` window. Auto-correction (`showing_results_for`) can silently redirect queries; verify returned articles match intended topic. Only first page returned by default; follow `pagination.next` for more pages. Supports 100+ languages and countries. Use advanced operators like 'site:' for publisher filtering directly in your query. Examples: query=\"artificial intelligence\" + when=\"w\" for past week's AI news query=\"climate change\" + gl=\"us\" + hl=\"en\" for US climate news query=\"business news\" + when=\"d\" for today's business news query=\"site:bbc.com tesla\" + when=\"d\" for today's BBC Tesla news" }, { "slug": "COMPOSIO_SEARCH_NPPESNPI_LOOKUP", "name": "NPPES NPI Registry Lookup", "description": "Lookup US healthcare provider details from the CMS NPI Registry (NPPES) using an NPI number or search filters. Returns normalized structured fields including provider name, taxonomy/specialty, addresses, identifiers, and endpoints. Use this for deterministic, authoritative provider lookups when you need structured NPI/NPPES data rather than noisy web search results." }, { "slug": "COMPOSIO_SEARCH_SCHOLAR", "name": "Composio Scholar Search", "description": "Scholar API scrapes Google Scholar search results via SERP API, returning academic papers and scholarly articles. Results are nested under results.organic_results; access this key explicitly and use defensive .get() patterns as fields like DOI, citation_count, and author may be absent. Many results are paywalled — rely on titles, abstracts, and snippets when full text is unavailable. Results may include duplicate preprint and journal versions of the same work — deduplicate by DOI or normalized title. Only the first page is returned by default; follow pagination.next for additional pages. PDF links appear only under organic_results[n].resources where file_format is 'PDF'. Results may lag on recent work." }, { "slug": "COMPOSIO_SEARCH_SEC_FILINGS", "name": "Composio SEC EDGAR Filings Search", "description": "Retrieve authoritative SEC EDGAR filing metadata (10-K/10-Q/8-K etc.) and construct primary document/index URLs using SEC's public data APIs. Use when you need to search for company financial filings, annual reports, quarterly reports, or other SEC-mandated disclosures." }, { "slug": "COMPOSIO_SEARCH_SHOPPING", "name": "Composio Shopping Search", "description": "Search for products with advanced price filtering, location targeting, and deal discovery. This tool provides comprehensive product search with price range filtering, geographic targeting for local retailers, sorting by price (low to high, high to low), and filtering for free shipping or sale items. Perfect for product research, price comparison, finding deals, and discovering where to buy items. Returns product details, prices, availability, seller information, and reviews. Examples: query=\"gaming laptop\" + min_price=800 + max_price=1500 + sort_by=1 query=\"running shoes\" + location=\"Seattle, WA\" + free_shipping=True query=\"coffee maker\" + on_sale=True + gl=\"us\"" }, { "slug": "COMPOSIO_SEARCH_TAVILY", "name": "Composio LLM Search", "description": "The Composio LLM Search class serves as a gateway to the Composio LLM Search API, allowing users to perform searches across a broad range of content with multiple filtering options. It accommodates complex queries, including both keyword and phrase searches, with additional parameters to fine-tune the search results. This class enables a tailored search experience by allowing users to specify the search depth, include images and direct answers, apply domain-specific filters, and control the number of results returned. It is designed to meet various search requirements, from quick lookups to in-depth research." }, { "slug": "COMPOSIO_SEARCH_TRENDS", "name": "Composio Trends Search", "description": "Discover trending topics, search patterns, and popularity data. Analyzes search interest over time, compares multiple topics, and identifies rising trends. Returns normalized 0–100 relative interest indices (not absolute search volumes) via interest_over_time.timeline_data; values are objects with 'extracted_value' (may be string '<1'). The final timeline entry may have partial_data=true for incomplete periods. Data typically lags ~24–48 hours. Response schema varies by data_type: TIMESERIES returns timeline_data, GEO_MAP returns regional breakdowns, RELATED_TOPICS/RELATED_QUERIES return topic/query lists — parse accordingly. Ideal for market research, content planning, and SEO analysis." }, { "slug": "COMPOSIO_SEARCH_TRIP_ADVISOR", "name": "TripAdvisor Travel Search", "description": "Search TripAdvisor for travel recommendations and itinerary planning without authentication (unlike TRIPADVISOR_CONTENT_API_SEARCH_LOCATIONS and other TripAdvisor tools requiring an active connection). Searches attractions, restaurants, hotels, tours, and activities. Returns detailed ratings, reviews, photos, and traveler recommendations. Response data is nested under results → locations. Results may include evergreen articles alongside specific venues; verify result type before use in itineraries. Examples: query=\"things to do in Paris\" + ssrc=\"A\" for attractions only | query=\"best restaurants in Tokyo\" + ssrc=\"r\" | query=\"hotels in Bali\" + ssrc=\"h\" + tripadvisor_domain=\"tripadvisor.com\"" }, { "slug": "COMPOSIO_SEARCH_WALMART", "name": "Walmart Product Search", "description": "Search Walmart for products with price filtering. This tool searches Walmart's product catalog including groceries, electronics, clothing, home goods, pharmacy, and auto services. Supports basic price range filtering for finding products within budget. Results may appear under response.data.results.shopping_results or data.products — do not hardcode a single response shape. Results mix sponsored and organic listings; check ad/sponsorship flags when ranking. Some products omit fields like bought_last_month; handle nulls in sorting logic. Examples: query=\"wireless headphones\" + min_price=50 + max_price=200 query=\"gaming laptop\" + max_price=800 query=\"organic coffee\" + min_price=10" }, { "slug": "COMPOSIO_SEARCH_WEB", "name": "Composio Web Search", "description": "Perform a web search using the Exa API. Returns a nested structure: narrative summary under results.answer, sources under results.citations (and optionally results.organic_results). Prioritize results.citations as primary evidence over results.answer, which can be vague. Only indexes publicly available content — no paywalled, login-gated, or private content. No date filters enforced; include recency terms in query and verify dates in snippets manually. Throttle to ~1–2 requests/second; bursty queries trigger HTTP 429. Large responses may be stored remotely — use structure_info to locate results.answer and results.citations." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Composio Search", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "reddit", "name": "Reddit", "logo": "https://logos.composio.dev/api/reddit", "description": "Reddit is a social news platform with user-driven communities (subreddits), offering content sharing, discussions, and viral marketing opportunities for brands", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REDDIT_CREATE_REDDIT_POST", "name": "Create a Reddit post", "description": "Creates a new text or link post on a specified, existing Reddit subreddit, optionally applying a flair. Immediately publishes publicly visible content — confirm subreddit, title, and body with the user before executing. Posts may be silently removed post-submission by automoderator or subreddit rules (errors: SUBMIT_VALIDATION_BODY_BLACKLISTED_STRING, POST_GUIDANCE_VALIDATION_FAILED); verify visibility via the returned permalink. Rapid consecutive calls trigger RATELIMIT errors with cooldown hints." }, { "slug": "REDDIT_DELETE_REDDIT_COMMENT", "name": "Delete Reddit comment", "description": "Deletes a Reddit comment, identified by its fullname ID, if it was authored by the authenticated user. Deletion is permanent and irreversible." }, { "slug": "REDDIT_DELETE_REDDIT_POST", "name": "Delete a Reddit post", "description": "Permanently and irreversibly deletes a Reddit post by its ID. Confirm with the user before calling. Only works on posts authored by the authenticated account; attempting to delete another user's post will fail." }, { "slug": "REDDIT_EDIT_REDDIT_COMMENT_OR_POST", "name": "Edit comment or post", "description": "Edits the body text of the authenticated user's own existing comment or self-post on Reddit; cannot edit link posts or titles." }, { "slug": "REDDIT_GET", "name": "Get Reddit listing by sort", "description": "Tool to retrieve a listing of Reddit posts sorted by the specified criteria (hot, new, top, etc.). Use when you need to get posts from the Reddit front page or all of Reddit with a specific sort order. Supports pagination and time filtering for top/controversial sorts." }, { "slug": "REDDIT_GET_CONTROVERSIAL_POSTS", "name": "Get controversial posts from all subreddits", "description": "Tool to retrieve controversial posts from all subreddits with time filters. Use when you need to find the most controversial posts across Reddit from a specific time period (hour, day, week, month, year, or all-time). Returns a paginated listing of posts ranked by controversy within the specified time frame." }, { "slug": "REDDIT_GET_ME_PREFS", "name": "Get user preferences", "description": "Tool to retrieve preference settings of the logged in user. Use when you need to check user preferences or settings." }, { "slug": "REDDIT_GET_NEW", "name": "Get new posts from subreddit (Deprecated)", "description": "DEPRECATED: Use RetrieveRedditPost instead. Tool to retrieve newest posts from a subreddit sorted by creation time. Use when you need to find the most recently submitted posts to discover fresh content. Returns a paginated listing of posts ranked by newest first." }, { "slug": "REDDIT_GET_RANDOM", "name": "Get random Reddit post", "description": "Tool to retrieve a random public Reddit post from any subreddit. Use when you want to discover serendipitous content or need a random post for testing or entertainment purposes." }, { "slug": "REDDIT_GET_REDDIT_USER_ABOUT", "name": "Get user information", "description": "Retrieves information about a specified Reddit user account, including karma scores and gold status. Use when you need to get profile information for any public Reddit user." }, { "slug": "REDDIT_GET_R_TOP", "name": "Get top posts from subreddit", "description": "Tool to retrieve top-rated posts from a subreddit with time filters. Use when you need to find the most popular posts from a specific time period (hour, day, week, month, year, or all-time). Returns a paginated listing of posts ranked by score within the specified time frame." }, { "slug": "REDDIT_GET_SCOPES", "name": "Get OAuth scopes", "description": "Tool to retrieve all available OAuth scopes supported by the Reddit API. Use when you need to understand what permissions are available or check scope definitions." }, { "slug": "REDDIT_GET_SUBREDDIT_RULES", "name": "Get subreddit rules", "description": "Fetch the explicit posting rules for a subreddit to ensure compliance before posting or commenting. Use when you need to verify content meets community guidelines or explain subreddit requirements to users." }, { "slug": "REDDIT_GET_SUBREDDITS_SEARCH", "name": "Search subreddits", "description": "Tool to search subreddits by title and description. Use when you need to find subreddits matching a specific topic or keyword. Returns a paginated listing of subreddits with their details including subscribers, descriptions, and other metadata." }, { "slug": "REDDIT_GET_USER_FLAIR", "name": "Get user flair", "description": "Fetches the list of user flair assignments for a given subreddit. Returns paginated results with user flair details. Returned flair_id values are scoped to the specific subreddit and must not be reused across different subreddits." }, { "slug": "REDDIT_GET_USERNAME_AVAILABLE", "name": "Check username availability", "description": "Tool to check whether a username is available for registration on Reddit. Use when you need to verify if a username can be used to create a new account." }, { "slug": "REDDIT_LIST_SUBREDDIT_POST_FLAIRS", "name": "List subreddit post flairs", "description": "List available link/post flairs for a subreddit (including flair_template_id) so posts can satisfy flair-required validation. Use when you need to discover valid flair IDs before creating a post in a subreddit that requires flair. Note: Reddit may return empty or deny access if the authenticated user cannot set link flair and is not a moderator." }, { "slug": "REDDIT_POST_REDDIT_COMMENT", "name": "Post a comment", "description": "Posts a comment on Reddit, replying to an existing submission (post) or another comment. Fails if the target thread is locked, archived, or restricted — verify thread state beforehand. Rapid successive calls trigger Reddit RATELIMIT errors with explicit cooldown hints (e.g., 'take a break for 9 minutes'); honor the specified wait before retrying. A successful API response does not guarantee public visibility — automod or spam filters may silently remove the comment. Publishes immediately and publicly; confirm target and text before executing." }, { "slug": "REDDIT_RETRIEVE_POST_COMMENTS", "name": "Retrieve Comments for a Post", "description": "Retrieves all comments for a Reddit post given its base-36 article ID. Response is a two-element listings array: post metadata in `listings[0]`; comments in `listings[1].data.children` with text at each `[].data.body` and nested replies under each comment's `replies` field. Replies require recursive traversal to capture full discussion. Large, locked, or archived threads may return truncated trees or `more` placeholders rather than full results. Filter out comments where `body` is `[deleted]` or `[removed]`; use `parent_id` to reconstruct conversation flow. No time-filter parameter — compare `created_utc` against a UTC cutoff to filter by date." }, { "slug": "REDDIT_RETRIEVE_REDDIT_POST", "name": "Retrieve posts from subreddit", "description": "Retrieves posts from a specified, publicly accessible subreddit. Responses nest post data under `data.children[].data`; inspect the structure before parsing. Pagination uses a `data.after` cursor; deduplicate across pages by post `id`. No built-in date filtering; compare `created_utc` (Unix seconds, UTC) client-side. Rate limit: ~1–2 requests/second; back off on HTTP 429." }, { "slug": "REDDIT_RETRIEVE_SPECIFIC_COMMENT", "name": "Retrieve specific comment or post", "description": "Retrieves detailed information for a single Reddit comment or post using its fullname. Returns only the specified item, not surrounding thread context; use REDDIT_RETRIEVE_POST_COMMENTS for full discussion retrieval. Deleted, removed, or quarantined items may return empty or partial payloads." }, { "slug": "REDDIT_SEARCH_ACROSS_SUBREDDITS", "name": "Search across subreddits", "description": "Searches Reddit for posts/comments using a query. Results nested under `data.children[i].data` (kind `t3` for posts); a `posts` array may also appear — inspect actual response path. No native time-range filter; compare `created_utc` (Unix epoch, UTC) client-side for recency filtering. Empty `children` is a valid no-results outcome. Key post fields: `score`, `num_comments`, `created_utc`, `permalink`. Rate limit: ~1–2 requests/sec; HTTP 429 indicates throttling." }, { "slug": "REDDIT_TOGGLE_INBOX_REPLIES", "name": "Enable or disable inbox replies", "description": "Enable or disable inbox replies for a submission or comment. Use when you want to control whether you receive inbox notifications for replies to your own posts or comments." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "reddit_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identity,read,vote,submit,flair,edit" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "cal", "name": "Cal", "logo": "https://logos.composio.dev/api/cal", "description": "Cal simplifies meeting coordination by providing shareable booking pages, calendar syncing, and availability management to streamline the scheduling process", "category": "scheduling & booking", "authSchemes": [ "API_KEY", "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 175, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CAL_ADD_ATTENDEE", "name": "Add attendee", "description": "Tool to create a new attendee for an existing booking in Cal.com. Use when you need to add an additional participant to a scheduled event." }, { "slug": "CAL_ADD_MEMBER_TO_TEAM_USING_ORG_AND_TEAM_ID", "name": "Add member to team", "description": "Adds a new member to a specified team within an organization by creating a team membership." }, { "slug": "CAL_ADD_ORGANIZATION_ATTRIBUTE_OPTION", "name": "Add organization attribute option", "description": "Adds a new option to an organization's SINGLE_SELECT or MULTI_SELECT attribute. Use this action to extend the available choices for an existing attribute. For example, adding a new department option like \"Marketing\" to a \"Department\" attribute. Prerequisites: - The organization must exist and the user must have admin access - The attribute must already exist and be of type SINGLE_SELECT or MULTI_SELECT Common use cases: - Adding new department options to a department selector - Expanding location choices for a location attribute - Creating new priority levels for a priority field Note: While it's recommended to use unique slugs for clarity, the API may allow duplicate slugs." }, { "slug": "CAL_CANCEL_BOOKING_VIA_UID", "name": "Cancel booking via uid", "description": "Cancels an existing and active Cal.com booking using its unique identifier (UID)." }, { "slug": "CAL_CHECK_CALENDAR_VERSION2", "name": "Check calendar availability", "description": "Retrieves free/busy availability for a specified calendar to aid scheduling without revealing event details; requires an existing, accessible calendar, noting that data granularity can vary." }, { "slug": "CAL_CHECK_GCAL_SYNCHRONIZATION_STATUS", "name": "Check gcal synchronization status", "description": "Call this read-only action to verify the connection and synchronization status of a user's Google Calendar integration with Cal." }, { "slug": "CAL_CHECK_ICS_FEED_CALENDAR_ENDPOINT", "name": "Check ics feed calendar endpoint", "description": "Checks an ICS feed URL (expected as a query parameter) to verify its validity, accessibility, and iCalendar data integrity." }, { "slug": "CAL_CHECK_STRIPE_STATUS", "name": "Check Stripe status", "description": "Verifies if Stripe is correctly connected to the Cal scheduling system and functional for processing payments, reporting only on the integration's status." }, { "slug": "CAL_CHECK_TEAM_STRIPE_INTEGRATION_STATUS", "name": "Check team stripe integration status", "description": "Retrieves the Stripe integration status and related information for a team, primarily to verify account connection, subscription details, or payment setup; this is a read-only operation that does not modify Stripe settings." }, { "slug": "CAL_CONFIRM_BOOKING_BY_UID", "name": "Confirm booking by uid", "description": "Confirms an existing booking by `bookingUid` if the booking exists and is in a state allowing confirmation (e.g., not already cancelled or confirmed); this finalizes the booking, does not modify its details, and should typically be performed once." }, { "slug": "CAL_CONNECT_TO_CALENDAR", "name": "Connect to calendar", "description": "Initiates or checks the external connection status for a specified calendar, possibly returning a redirect URL for user authorization to complete integration, without altering calendar data." }, { "slug": "CAL_CREATE_MEMBERSHIP_FOR_ORGANIZATION", "name": "Create membership for organization", "description": "Creates a new membership for a user within a Cal.com organization. The caller must have admin/owner access to the organization, and the target user must already exist in the system. Use CAL_RETRIEVE_USERS_IN_ORGANIZATION to get valid user IDs." }, { "slug": "CAL_CREATE_OAUTH_CLIENT_USER", "name": "Create oauth client user", "description": "Creates a new managed user for a Cal.com Platform OAuth client. This is a Platform API endpoint that requires OAuth client credentials (clientId and x-cal-secret-key). The endpoint is deprecated as of December 2025 but remains functional for existing Platform customers. Key behaviors: - If `timeZone` is provided: A default working schedule (Mon-Fri, 9AM-5PM) is automatically created - If `timeZone` is omitted: No default schedule is created; you must manually create one via the `/schedules` endpoint before the user can receive bookings Returns access and refresh tokens for the created managed user that should be stored securely. Access tokens expire in 60 minutes; refresh tokens expire in 1 year." }, { "slug": "CAL_CREATE_OAUTH_CLIENT_WEBHOOK_CONFIGURATION", "name": "Create OAuth client webhook configuration", "description": "Creates a webhook configuration for an OAuth client to receive real-time event notifications from Cal.com. This is a Platform API endpoint that requires OAuth client credentials (clientId and x-cal-secret-key). Use this to set up automated workflows by subscribing to events like BOOKING_CREATED, BOOKING_CANCELLED, MEETING_ENDED, FORM_SUBMITTED, and more. The webhook will POST event data to your specified subscriberUrl. Key features: - Subscribe to multiple event triggers in a single webhook - Optionally customize the payload using a template - Secure webhooks with a secret for signature verification (X-Cal-Signature-256 header) - Control webhook activation status (active/inactive) Note: This endpoint is part of the deprecated Platform offering but remains functional for existing customers." }, { "slug": "CAL_CREATE_ORGANIZATION_ATTRIBUTES", "name": "Create organization attributes", "description": "Creates a new custom attribute for an existing organization, used to enhance data collection for event bookings or user profiles." }, { "slug": "CAL_CREATE_ORGANIZATION_TEAM_FORM_WORKFLOW", "name": "Create organization team form workflow", "description": "Tool to create a new workflow for routing forms within an organization team. Use when you need to set up automated actions (like sending emails or SMS) triggered by routing form submissions. Supports notification workflows with customizable triggers, steps, and activation settings." }, { "slug": "CAL_CREATE_ORGANIZATION_WEBHOOK_BY_ORG_ID", "name": "Create organization webhook by org ID", "description": "Creates a webhook for an organization that sends HTTP POST notifications to a specified URL when triggered by events (e.g., booking created, cancelled, meeting started). Returns the webhook configuration including its unique ID, which can be used to update or delete the webhook later." }, { "slug": "CAL_CREATE_OR_UPDATE_TEAM_PROFILE", "name": "Create or update team profile", "description": "Creates a new team profile, or updates one if a 'slug' matches, customizing branding, scheduling, privacy, and operational details." }, { "slug": "CAL_CREATE_PHONE_CALL_EVENT", "name": "Create phone call event", "description": "Schedules a phone call event in Cal.com using existing eventType, organization, and team IDs; this action only registers the event details and does not initiate the actual phone call." }, { "slug": "CAL_CREATE_PHONE_CALL_FOR_EVENT_TYPE", "name": "Create phone call for event type", "description": "Configures Cal.ai phone call automation for a team event type, enabling AI-powered outbound calls for appointment reminders or custom conversations. Requires team membership - first use CAL_GET_TEAMS_LIST to get a valid teamId, then CAL_GET_EVENT_TYPE_BY_TEAM_ID or CAL_RETRIEVE_TEAM_EVENT_TYPES to get an eventTypeId belonging to that team. Note: This creates the call configuration but does not immediately initiate a call. Cal.ai charges $0.29/minute for AI calls." }, { "slug": "CAL_CREATE_TEAM_EVENT_TYPE", "name": "Create team event type", "description": "Creates a new event type for a specified team in Cal.com; ensure `teamId`, any provided `scheduleId`, `hosts.userId`, and `destinationCalendar` details are valid and accessible." }, { "slug": "CAL_CREATE_TEAM_EVENT_TYPES_WITH_CUSTOM_OPTIONS", "name": "Create team event types with custom options", "description": "Creates a highly customizable Cal.com team event type with extensive scheduling, booking, and host assignment options; `schedulingType` is required, `lengthInMinutes` must be included in `lengthInMinutesOptions`, destination calendar details (from `/api/v2/calendars`) must be valid if provided, and host User IDs must be valid team members." }, { "slug": "CAL_CREATE_TEAM_IN_ORGANIZATION", "name": "Create team in organization", "description": "Creates a new team with customizable attributes within an existing and accessible Cal.com organization specified by orgId." }, { "slug": "CAL_CREATE_TEAM_INVITE_LINK", "name": "Create team invite link", "description": "Creates a shareable invite link for a Cal.com team that allows new members to join. Returns both the raw token and a complete invitation URL." }, { "slug": "CAL_CREATE_TEAM_MEMBERSHIP_WITH_ROLE", "name": "Create team membership with role", "description": "Adds a user to a team with a specified role, acceptance status, and impersonation settings; ensure `teamId` and `userId` refer to existing, valid entities." }, { "slug": "CAL_CREATE_USER_AVAILABILITY_SCHEDULE", "name": "Create user availability schedule", "description": "Creates a Cal.com user availability schedule, defining its name, timezone, weekly recurring availability, and specific date overrides; if `isDefault` is true, this schedule replaces any existing default and applies to event types not linked to a specific schedule." }, { "slug": "CAL_CREATE_USER_SCHEDULE_IN_ORGANIZATION", "name": "Create user schedule in organization", "description": "Creates a new schedule defining a user's availability with weekly slots and date-specific overrides in an organization; setting 'isDefault' to true may replace an existing default schedule for the user." }, { "slug": "CAL_CREATE_WEBHOOK_FOR_EVENT_TYPE", "name": "Create webhook for event type", "description": "Creates a webhook for an existing `eventTypeId` in Cal.com, sending notifications for specified `triggers` to a `subscriberUrl` that handles POST requests." }, { "slug": "CAL_DECLINE_BOOKING_WITH_REASON", "name": "Decline booking with reason", "description": "Declines a pending booking using its bookingUid, optionally with a reason; this action is irreversible and applies only to bookings awaiting confirmation." }, { "slug": "CAL_DELETE_ALL_TEAM_EVENT_TYPE_WEBHOOKS", "name": "Delete all team event type webhooks", "description": "Permanently deletes all webhooks associated with a specific team event type. Use when you need to remove all webhook configurations for a team's event type." }, { "slug": "CAL_DELETE_CONFERENCE_APP_CONNECTION", "name": "Delete conference app connection", "description": "Disconnects the specified conferencing application (e.g., 'zoom', 'google_meet') for the Cal.com account, immediately terminating any ongoing call or meeting; use with caution." }, { "slug": "CAL_DELETE_DESTINATION_CALENDAR_BY_ID", "name": "Delete destination calendar by id", "description": "Tool to remove an existing destination calendar by its unique ID. Use when you need to delete a destination calendar configuration." }, { "slug": "CAL_DELETE_EVENT_TYPE_BY_ID", "name": "Delete event type by id", "description": "Permanently deletes an existing event type by its ID, which invalidates its scheduling links; the operation is irreversible, and while existing bookings are unaffected, no new bookings can be made for this event type." }, { "slug": "CAL_DELETE_EVENT_TYPE_IN_TEAM", "name": "Delete event type in team", "description": "Permanently removes an event type's configuration from a team's scheduling options (e.g., for cleanup); this action is irreversible and requires the event type to be associated with the team." }, { "slug": "CAL_DELETE_MEMBERSHIP_IN_TEAM", "name": "Delete membership in team", "description": "Use to permanently remove a user's membership from a specific team within an organization, which revokes their team-associated access but does not remove them from the organization." }, { "slug": "CAL_DELETE_OAUTH_CLIENT_USER", "name": "Delete OAuth Client Managed User", "description": "Permanently removes a managed user's association with an OAuth client without deleting their Cal.com account. This is a Cal.com Platform API endpoint for developers who manage users through OAuth clients. Prerequisites: - A registered OAuth client application (provides clientId) - The OAuth client secret key (x_cal_secret_key) - A valid managed user ID that was created under this OAuth client The deleted user's information is returned in the response for confirmation. Note: This endpoint is marked as deprecated in Cal.com docs but remains functional for existing Platform customers." }, { "slug": "CAL_DELETE_OAUTH_CLIENT_WEBHOOK", "name": "Delete oauth client webhook", "description": "Permanently deletes a specific webhook for an OAuth client in Cal.com Platform API. This endpoint is part of the Cal.com Platform API and requires valid OAuth client credentials. When a webhook is deleted, it will stop receiving notifications for all configured event triggers. **Prerequisites:** - A Platform-enabled Cal.com organization (requires `isPlatform: true`) - Valid OAuth client credentials (clientId and x_cal_secret_key) - An existing webhook created for the OAuth client **Typical Use Case:** Remove webhook subscriptions that are no longer needed, helping to manage and clean up your OAuth client's notification endpoints. **Note:** This endpoint is marked as deprecated in Cal.com documentation and may be removed in future versions. Consider using alternative webhook management endpoints when available." }, { "slug": "CAL_DELETE_ORGANIZATION_ATTRIBUTE", "name": "Delete organization attribute", "description": "Permanently deletes an existing attribute (specified by `attributeId`) from an existing organization (specified by `orgId`); this action is irreversible and may affect features dependent on the attribute." }, { "slug": "CAL_DELETE_ORGANIZATION_ATTRIBUTE_OPTION", "name": "Delete organization attribute option", "description": "Permanently deletes a specified option from an organization's attribute. Use this action to remove an option value from attributes of type SINGLE_SELECT or MULTI_SELECT. This is useful for cleaning up unused or deprecated configuration choices. Note: This action is destructive and cannot be undone. The option will be permanently removed. Requires organization admin access." }, { "slug": "CAL_DELETE_ORGANIZATION_MEMBERSHIP", "name": "Delete organization membership", "description": "Irreversibly deletes a user's membership from an organization, removing all associated access and permissions; the response confirms deletion without returning details of the deleted membership." }, { "slug": "CAL_DELETE_ORG_WEBHOOK", "name": "Delete org webhook", "description": "Permanently deletes an organization-level webhook by its ID. This action removes the specified webhook from the organization, stopping all future notifications to its subscriber URL. The deletion is irreversible - the webhook configuration cannot be recovered after deletion. Requirements: - User must be authenticated and have admin permissions in the organization - The webhook must exist within the specified organization - Use 'retrieve_organization_webhooks_by_org_id' to list webhooks before deletion" }, { "slug": "CAL_DELETE_SCHEDULE_BY_ID", "name": "Delete schedule by id", "description": "Permanently deletes a specific schedule using its unique identifier, which must correspond to an existing schedule." }, { "slug": "CAL_DELETE_SELECTED_CALENDARS", "name": "Delete selected calendars", "description": "Removes a specified, currently selected calendar from the user's active list within the application, without deleting it from the external provider." }, { "slug": "CAL_DELETE_SELECTED_SLOT", "name": "Delete selected slot", "description": "Deletes a previously selected time slot from the Cal schedule using its `uid`; the slot must exist and this action is irreversible." }, { "slug": "CAL_DELETE_TEAM_BY_ID", "name": "Delete team by id", "description": "Permanently and irreversibly deletes an existing team and all its associated data from the Cal system, using the team's unique `teamId`." }, { "slug": "CAL_DELETE_TEAM_EVENT_TYPE_IN_ORGANIZATION", "name": "Delete team event type in organization", "description": "Permanently removes a team event type from an organization's scheduling configuration. Use when cleaning up unused event types or consolidating team scheduling options." }, { "slug": "CAL_DELETE_TEAM_FROM_ORGANIZATION", "name": "Delete team from organization", "description": "Permanently and irreversibly deletes a specific team from a Cal.com organization. WARNING: This action cannot be undone and will remove all associated team data including memberships, event types, and bookings. Requires ORG_ADMIN role in the organization." }, { "slug": "CAL_DELETE_TEAM_MEMBERSHIPS_BY_ID", "name": "Delete team memberships by id", "description": "Irreversibly removes a user's team membership in the Cal application, revoking access to that specific team; the user's overall Cal account remains active." }, { "slug": "CAL_DELETE_USER_ATTRIBUTE_OPTION", "name": "Delete user attribute option", "description": "Unassigns a specific attribute option from a user within an organization. Use this action to remove an attribute option assignment (e.g., skill, role, department) from a specific user. This does NOT delete the attribute option itself from the organization - it only removes the association between the user and that option. The attribute option must currently be assigned to the user. To find assigned attribute options for a user, use the 'Get all attribute options for a user' endpoint first. Requires organization admin access. The operation is reversible by re-assigning the attribute option to the user using the 'Assign attribute option to user' endpoint." }, { "slug": "CAL_DELETE_USER_FROM_ORGANIZATION", "name": "Delete user from organization", "description": "Permanently removes a user from a specific organization (user's system-wide account is unaffected), revoking their access rights therein; this action is irreversible via API and expects the user to be a current member." }, { "slug": "CAL_DELETE_USER_SCHEDULE", "name": "Delete user schedule", "description": "Permanently deletes a specific user's schedule, provided the organization, user, and schedule (identified by `orgId`, `userId`, and `scheduleId`) exist." }, { "slug": "CAL_DELETE_WEBHOOK_BY_ID", "name": "Delete webhook by id", "description": "Permanently deletes an existing webhook by its `webhookId`, stopping future notifications; this action is irreversible." }, { "slug": "CAL_DELETE_WEBHOOK_FOR_EVENT_TYPE", "name": "Delete webhook for event type", "description": "Permanently deletes a specific webhook for an event type, halting its real-time notifications; this operation is irreversible and leaves the event type and other webhooks untouched." }, { "slug": "CAL_DELETE_WEBHOOKS_FOR_EVENT_TYPE", "name": "Delete webhooks for event type", "description": "Call this to irreversibly delete all webhooks for a specific `eventTypeId` if the event type exists; details of deleted webhooks are not returned." }, { "slug": "CAL_DISCONNECT_CALENDAR_USING_CREDENTIAL_ID", "name": "Disconnect calendar using credential id", "description": "Disconnects a calendar integration by its provider name and credential ID, irreversibly revoking Cal's access; external calendar data remains unaffected." }, { "slug": "CAL_EDIT_ATTENDEE_BY_ID", "name": "Edit attendee by ID", "description": "Tool to edit an existing attendee in a Cal.com booking. Use when you need to update attendee details such as name, email, or timezone." }, { "slug": "CAL_EDIT_AVAILABILITY_BY_ID", "name": "Edit availability by ID", "description": "Tool to edit an existing availability by ID on Cal.com. Use when you need to update the days, start time, end time, or schedule association of an existing availability." }, { "slug": "CAL_EDIT_BOOKING_BY_ID", "name": "Edit booking by ID", "description": "Tool to edit an existing booking by its ID. Use when you need to update booking details such as title, description, status, or time." }, { "slug": "CAL_EDIT_EVENT_TYPE_BY_ID", "name": "Edit event type by ID", "description": "Tool to edit an existing Cal.com event type by ID. Use when you need to update event type settings like title, description, duration, locations, or booking configurations." }, { "slug": "CAL_EDIT_SELECTED_CALENDAR_BY_ID", "name": "Edit selected calendar by ID", "description": "Tool to edit a selected calendar by its composite ID in Cal.com. Use when you need to update an existing calendar integration." }, { "slug": "CAL_FETCH_ALL_BOOKINGS", "name": "Fetch all bookings", "description": "Fetches a list of bookings, optionally filtered by status, attendee, date range, or by event/team IDs (which must belong to/include the authenticated user respectively), with support for pagination and sorting." }, { "slug": "CAL_FETCH_EVENT_TYPE_DETAILS", "name": "Fetch event type details", "description": "Fetches all configuration settings and characteristics for a single event type (identified by orgId, teamId, and eventTypeId), which must exist and be accessible; this read-only action cannot list, create, or modify event types." }, { "slug": "CAL_FETCH_ORGANIZATION_ATTRIBUTE_BY_ID", "name": "Fetch organization attribute by id", "description": "Retrieves a specific attribute of an organization, useful for fetching a single data point instead of the entire organization record." }, { "slug": "CAL_FETCH_PROVIDER_ACCESS_TOKEN", "name": "Fetch provider access token", "description": "Fetches an OAuth access token for the specified `clientId` to authenticate API calls; this action only retrieves the token, not managing scheduling or calendar events." }, { "slug": "CAL_FETCH_SCHEDULE_BY_ID", "name": "Fetch schedule by id", "description": "Fetches comprehensive details for a specific, existing schedule using its `scheduleId`." }, { "slug": "CAL_FETCH_USER_SCHEDULE_BY_ORG_ID", "name": "Fetch user schedule by org id", "description": "Retrieves a specific user's schedule within an organization, returning availability windows, timezone settings, and date-specific overrides. Requires organization-level access permissions." }, { "slug": "CAL_FETCH_WEBHOOK_BY_EVENT_TYPE_ID", "name": "Fetch webhook by event type id", "description": "Retrieves details for a single, specific webhook using its `webhookId` and associated `eventTypeId`." }, { "slug": "CAL_FORCE_REFRESH_USER_OAUTH_CLIENT", "name": "Force refresh user oauth client", "description": "Forces an immediate refresh of OAuth tokens for a Platform managed user. This is a Cal.com Platform API endpoint (deprecated as of December 2025 but still functional for existing customers). Use this endpoint when you've lost a managed user's access or refresh tokens and need to obtain new ones. Prerequisites: - A registered OAuth client application with Cal.com (provides clientId and x_cal_secret_key) - The managed user must exist and be associated with your OAuth client - Valid OAuth client credentials (clientId and secret key) Token Validity: - Access tokens are valid for 60 minutes - Refresh tokens are valid for 1 year Important: Store the returned tokens securely in your database (e.g., as calAccessToken and calRefreshToken fields)." }, { "slug": "CAL_GET_ALL_TIMEZONES", "name": "Get all timezones", "description": "Retrieves all supported time zone identifiers (e.g., 'America/New_York', 'Europe/London') and their associated metadata, excluding specific DST changes or precise UTC offset details." }, { "slug": "CAL_GET_AVAILABLE_SLOTS_INFO", "name": "Get available slots info", "description": "Retrieves available time slots for scheduling by considering existing bookings and availability, based on criteria like a specified time range and event type." }, { "slug": "CAL_GET_BOOKING_REFERENCE_BY_ID", "name": "Get booking reference by id", "description": "Tool to find a specific booking reference by its ID. Use when you need to retrieve details about a single booking reference that links a booking to an external platform or calendar." }, { "slug": "CAL_GET_BOOKING_REFERENCES", "name": "Get booking references", "description": "Retrieves external references for a specific booking within an organization's team. Use when you need to get calendar or video platform integration details for a booking." }, { "slug": "CAL_GET_CONFERENCE_OAUTH_AUTHORIZATION_URL", "name": "Get conference OAuth authorization url", "description": "Generates an OAuth 2.0 authorization URL for a supported conferencing `app` to initiate or refresh its integration with Cal.com." }, { "slug": "CAL_GET_DEFAULT_SCHEDULE_DETAILS", "name": "Get default schedule details", "description": "Retrieves the Cal system's global default schedule configuration, not custom or user-specific ones." }, { "slug": "CAL_GET_DESTINATION_CALENDARS", "name": "Get destination calendars", "description": "Tool to retrieve all destination calendars configured for the authenticated user. Use when you need to find where new bookings will be created." }, { "slug": "CAL_GET_EVENT_TYPE_BY_TEAM_ID", "name": "Get event type by team id", "description": "Retrieves a specific event type by its ID, requiring that the event type is associated with the given team ID." }, { "slug": "CAL_GET_EVENT_TYPE_PRIVATE_LINKS", "name": "Get event type private links", "description": "Retrieves all private booking links for a specific event type. Private links allow sharing event booking URLs with restricted access, either time-limited or usage-limited." }, { "slug": "CAL_GET_GOOGLE_CALENDAR_OAUTH_AUTHENTICATION_URL", "name": "Get google calendar oauth authentication url", "description": "Generates the initial Google Calendar OAuth 2.0 authorization URL for user redirection to begin the authentication and authorization process." }, { "slug": "CAL_GET_OAUTH_CLIENTS_USER", "name": "Get oauth clients user", "description": "Retrieves all managed users associated with a Platform OAuth client. This endpoint is part of Cal.com's Platform API for managing users created through OAuth client credentials. Requires a valid Platform OAuth client ID and secret key, which are obtained when creating an OAuth client at https://app.cal.com/settings/platform/oauth-clients. Use this to: - List all users managed under your OAuth client - Audit user access and permissions - Retrieve user profile details (email, timezone, locale, avatar, etc.) Authentication: Requires both Bearer token (from auth metadata) and x-cal-secret-key header." }, { "slug": "CAL_GET_ORGANIZATION_ATTRIBUTE_ASSIGNED_OPTIONS", "name": "Get organization attribute assigned options", "description": "Retrieves all assigned attribute options for a specific attribute within an organization. This action returns the list of attribute options that have been assigned to users, along with which users have been assigned each option. For example, if you have a \"Department\" attribute, this will show which department options exist and which users are assigned to each department. Use cases: - View which users are assigned to specific attribute options - Monitor attribute option assignments across teams - Audit user attribute assignments for reporting - Filter results by specific option IDs or team IDs Prerequisites: - The organization must exist (use get_organization_id to retrieve your orgId) - The attribute must exist with options assigned to users" }, { "slug": "CAL_GET_ORGANIZATION_ATTRIBUTE_ASSIGNED_OPTIONS_BY_SLUG", "name": "Get organization attribute assigned options by slug", "description": "Tool to retrieve all assigned attribute options for a specific attribute by its slug within an organization. Use when you need to see which attribute options have been assigned to users, filtered by the attribute's slug identifier." }, { "slug": "CAL_GET_ORGANIZATION_ID", "name": "Get organization ID", "description": "Retrieves the organization ID associated with the currently authenticated user from the Cal.com /v2/me endpoint." }, { "slug": "CAL_GET_ORGANIZATION_SCHEDULES", "name": "Get organization schedules", "description": "Retrieves availability schedules for an organization. Returns schedules that define when users are available for bookings, including working hours, time zones, and date-specific overrides. These are not individual events or appointments, but rather the availability templates that determine when bookings can be made." }, { "slug": "CAL_GET_ORGANIZATION_TEAMS_EVENT_TYPES", "name": "Get organization teams event types", "description": "Retrieves event types, including names, durations, and custom settings for team scheduling, for all teams within an existing organization specified by `orgId`." }, { "slug": "CAL_GET_ORGANIZATION_TEAM_WORKFLOWS", "name": "Get organization team workflows", "description": "Retrieves workflows configured for a specific team within an organization. Returns workflow configurations including triggers, steps, and activation settings. Use when you need to list or inspect workflow automations for a team." }, { "slug": "CAL_GET_ORGANIZATION_USER_SCHEDULES", "name": "Get organization user schedules", "description": "Retrieves all availability schedules configured for a specific user within an organization. Returns detailed schedule information including time slots, timezones, and overrides. Does not include booked events or appointments." }, { "slug": "CAL_GET_PRIVATE_LINKS", "name": "Get private links for team event type", "description": "Get all private links for a team event type. Use this to retrieve both time-based (with expiration) and usage-based (with usage limits) private links for scheduling." }, { "slug": "CAL_GET_SCHEDULE_FOR_USER_IN_TEAM", "name": "Get schedule for user in team", "description": "Retrieves all availability schedules for a specific user within a team and organization. Returns schedule configurations including working hours, time zones, weekly availability patterns, default schedule designation, and date-specific overrides. Use this to understand when a team member is available for bookings. Requires valid userId (from team memberships), orgId (from organization list), and teamId (from teams list)." }, { "slug": "CAL_GET_SELECTED_CALENDAR_BY_ID", "name": "Get selected calendar by ID", "description": "Tool to retrieve a selected calendar by its compound ID (userId_integration_externalId). Use when you need to fetch details of a specific calendar that has been selected for synchronization." }, { "slug": "CAL_GET_STRIPE_CONNECT_INFO", "name": "Get stripe connect info", "description": "Retrieves Stripe Connect account details (ID, charges/payouts status, verification, settings) for the user's linked Cal.com account; response may be empty or indicate no integration if no account is linked." }, { "slug": "CAL_GET_STRIPE_CONNECT_URL", "name": "Get Stripe Connect URL for team", "description": "Tool to get Stripe Connect authorization URL for a team within an organization. Use when you need to obtain a URL that allows team members to connect their Stripe account for payment processing on Cal.com." }, { "slug": "CAL_GET_TEAM_BOOKINGS", "name": "Get team bookings", "description": "Retrieves all bookings for a specified team, optionally filtered by status, attendee details, date ranges, or event type IDs, with support for pagination and sorting." }, { "slug": "CAL_GET_TEAM_DEFAULT_CONFERENCING_APP", "name": "Get team default conferencing app", "description": "Retrieves the default conferencing application configured for a specific team within an organization. Use this to check which video platform (e.g., Zoom, Google Meet) is set as the team's default for scheduling meetings." }, { "slug": "CAL_GET_TEAM_DETAILS_BY_ORG_ID_AND_TEAM_ID", "name": "Get team details by organization ID and team ID", "description": "Retrieves comprehensive details for a specific team within an organization, including team metadata, configuration settings, branding options, and timezone/week preferences. Use this to get team information like name, slug, bio, timezone, branding colors, and visibility settings." }, { "slug": "CAL_GET_TEAM_EVENT_TYPE_WEBHOOK", "name": "Get team event type webhook", "description": "Retrieves details for a specific webhook configured on a team event type. Use when you need to inspect webhook configuration, verify settings, or troubleshoot webhook deliveries for team-managed event types." }, { "slug": "CAL_GET_TEAM_EVENT_TYPE_WEBHOOKS", "name": "Get team event type webhooks", "description": "Retrieves all webhooks configured for a specific team event type. Use this to audit webhook configurations or troubleshoot webhook delivery issues." }, { "slug": "CAL_GET_TEAM_INFORMATION_BY_TEAM_ID", "name": "Get team information by team ID", "description": "Retrieves detailed information about a specific Cal.com team by its ID. Returns team configuration including name, slug, branding (logo, colors, theme), timezone settings, and privacy options. Requires the authenticated user to be a member of the team. Use 'get_teams_list' to find available team IDs." }, { "slug": "CAL_GET_TEAM_ROUTING_FORMS", "name": "Get team routing forms", "description": "Retrieves routing forms for a specific team within an organization. Routing forms are used to collect information from potential bookers and route them to appropriate event types or team members based on their responses. Use this to fetch routing form configurations, fields, and routing logic for a team." }, { "slug": "CAL_GET_TEAM_SCHEDULES", "name": "Get team schedules", "description": "Retrieves availability schedules for all members of a specific team within an organization. Returns schedules that define when team members are available for bookings, including working hours, time zones, and date-specific overrides." }, { "slug": "CAL_GET_TEAMS_LIST", "name": "Get teams list", "description": "Retrieves all teams the user belongs to, including their names and members." }, { "slug": "CAL_GET_VERIFIED_PHONE_NUMBERS", "name": "Get verified phone numbers", "description": "Retrieves a paginated list of verified phone numbers for a specific organization team. Use when you need to get phone numbers that have been verified and associated with a team." }, { "slug": "CAL_GET_WEBHOOK_BY_ID", "name": "Get webhook by id", "description": "Retrieves details for an existing and accessible webhook by its ID; this is a read-only operation." }, { "slug": "CAL_HANDLE_CONFERENCING_OAUTH_CALLBACK_FOR_APP", "name": "Handle conferencing oauth callback for app", "description": "Processes an OAuth 2.0 callback for a conferencing `app`, exchanging the `code` and `state` for access credentials; ensure an OAuth flow was previously initiated." }, { "slug": "CAL_LIST_ATTENDEES", "name": "List all attendees", "description": "Tool to retrieve all attendees from Cal.com. Use when you need to get a complete list of all attendees across all bookings." }, { "slug": "CAL_LIST_BOOKING_REFERENCES", "name": "List booking references", "description": "Fetches one page of booking references in Cal.com. The Cal.com v2 API does not expose `/booking-references` for Bearer-token auth, so this action paginates the v2 `/bookings` endpoint and extracts each booking's `references` array. ONE Cal.com API call is made per invocation; pagination is caller-driven via the `cursor` parameter (Cal's keyset-by-booking-ID cursor) and the `next_cursor` field in the response." }, { "slug": "CAL_LIST_EVENT_TYPES", "name": "List event types", "description": "Retrieves Cal event types, filterable by `username` (required if `eventSlug` is provided), multiple `usernames`, or organization details (`orgSlug` or `orgId`)." }, { "slug": "CAL_LIST_ORGANIZATION_MEMBERSHIPS", "name": "List organization memberships", "description": "Retrieves all memberships for a given organization, including user details, roles, status, and membership dates." }, { "slug": "CAL_LIST_TEAM_EVENT_TYPES_BY_ORG_AND_TEAM_ID", "name": "List team event types by org and team id", "description": "Retrieves all event types for a specific team within an organization, optionally filtering by a specific event slug." }, { "slug": "CAL_MARK_BOOKING_ABSENT_FOR_UID", "name": "Mark booking absent for UID", "description": "Marks the host and/or specified attendees as absent for an existing booking, typically used after a scheduled event to record no-shows." }, { "slug": "CAL_MODIFY_ORGANIZATION_MEMBERSHIP_BY_ID", "name": "Modify organization membership by id", "description": "Updates an organization membership's status (accepted), role, or impersonation settings, identified by `orgId` and `membershipId` in the path; requires at least one of these fields in the request to apply changes." }, { "slug": "CAL_MODIFY_ORG_ATTRIBUTE_BY_ID", "name": "Modify org attribute by id", "description": "Partially updates an organization attribute using `orgId` and `attributeId`, allowing modification of its name, slug, type, or enabled status; changing the 'type' may affect existing data." }, { "slug": "CAL_PATCH_ORGANIZATION_ATTRIBUTE_OPTION", "name": "Patch organization attribute option", "description": "Partially updates a specific option for an organization's attribute, modifying its 'value' and/or 'slug'; at least one of 'value' or 'slug' must be provided." }, { "slug": "CAL_PATCH_ORGANIZATION_USER_DETAILS", "name": "Patch organization user details", "description": "Partially updates details for a user that exists within the specified organization." }, { "slug": "CAL_PATCH_TEAM_DETAILS_BY_ID", "name": "Patch team details by ID", "description": "Updates specified details for an existing team identified by `teamId`; unspecified fields remain unchanged." }, { "slug": "CAL_PATCH_WEBHOOK_EVENT_TYPE", "name": "Patch webhook event type", "description": "Updates configuration (e.g., payload template, active status, URL, triggers, secret) for an existing webhook tied to a specific event type." }, { "slug": "CAL_POST_CALENDAR_CREDENTIALS", "name": "Post calendar credentials", "description": "Use to submit/update authentication credentials (passed in the request body) for an existing calendar, enabling Cal to connect with external calendar services for synchronization." }, { "slug": "CAL_POST_CONFERENCING_APP_CONNECT", "name": "Connect conferencing app", "description": "Connects or reconnects Cal.com with a specified conferencing application to enable future virtual meeting scheduling, but does not itself create or schedule meetings." }, { "slug": "CAL_POST_NEW_BOOKING_REQUEST", "name": "Create a new booking", "description": "Creates a new booking for an event type at a specified start time. Use this action to schedule a meeting with a Cal.com user. Prerequisites: 1. Get a valid event type ID from list_event_types 2. Find an available time slot using get_available_slots_info 3. Provide attendee name and email in the 'responses' object 4. Specify timezone and language preferences The booking will be created with status 'ACCEPTED' if no confirmation is required, or 'PENDING' if the event type requires host confirmation." }, { "slug": "CAL_POST_ORG_ATTRIBUTE_OPTION_BY_USER", "name": "Assign or create attribute option for user", "description": "Assigns an existing attribute option (using `attributeOptionId`) or creates a new one (using `value`) for a user, linking it to a specified `attributeId` which must already exist within the organization." }, { "slug": "CAL_POST_SELECTED_CALENDARS", "name": "Add selected calendar", "description": "Links a new external calendar or updates an existing link to one, enabling synchronization with the Cal application by specifying the `integration` provider, the calendar's `externalId`, and the `credentialId`." }, { "slug": "CAL_POST_USER_TO_ORGANIZATION", "name": "Post user to organization", "description": "Adds a new user to an existing organization (identified by `orgId` in path), requiring user's `email` and allowing extensive optional profile customization." }, { "slug": "CAL_POST_WEBHOOK_EVENT", "name": "Create webhook subscription", "description": "Creates a new Cal.com webhook subscription to send real-time notifications for specified calendar events (like bookings, meetings, forms) to a publicly accessible subscriber URL. Supports custom payload templates and webhook signature verification via HMAC-SHA256." }, { "slug": "CAL_REASSIGN_BOOKING_TO_ANOTHER_USER", "name": "Reassign booking to another user", "description": "Reassigns an existing booking to a specified user. Requires cal-api-version 2024-08-13. The booking owner must be authorized to perform the reassignment." }, { "slug": "CAL_REASSIGN_BOOKING_WITH_UID", "name": "Reassign booking with uid", "description": "Reassigns the specified booking to a new team member, who is determined by the system rather than being specified in the request." }, { "slug": "CAL_REFRESH_OAUTH_TOKEN_FOR_CLIENT_ID", "name": "Refresh oauth token for client id", "description": "Refreshes an OAuth access token for a specified `clientId` and managed user using their `refreshToken`. This is a Cal.com Platform feature for developers building applications that manage users. Prerequisites: - A registered OAuth client application with Cal.com (provides clientId) - The OAuth client secret key (x_cal_secret_key) - A valid refresh token obtained when creating a managed user The endpoint implements refresh token rotation - both access and refresh tokens are returned. Access tokens expire after 60 minutes; refresh tokens expire after 1 year. Note: This endpoint is marked as deprecated in Cal.com docs and may be replaced in future versions." }, { "slug": "CAL_REQUEST_EMAIL_VERIFICATION_CODE", "name": "Request email verification code", "description": "Request an email verification code for a team's verified resources. Use this action when you need to verify an email address for a team. The API will send a verification code to the specified email address. After receiving the code, you'll need to use it with a separate verification endpoint to complete the email verification process. This is typically used to verify email addresses that will be used as verified resources within a team." }, { "slug": "CAL_RESCHEDULE_BOOKING_BY_UID", "name": "Reschedule booking by uid", "description": "Reschedules an existing booking (identified by `bookingUid`) to a new time. Requires the booking UID and the new start time in ISO 8601 format. Optionally, you can provide a rescheduling reason and the email of the person rescheduling." }, { "slug": "CAL_RESERVE_SLOT_FOR_EVENT", "name": "Reserve slot for event", "description": "Temporarily reserves an available time slot for an existing and bookable event type, useful for high-demand slots to prevent double-bookings while the user completes the booking." }, { "slug": "CAL_RETRIEVE_ATTRIBUTE_OPTIONS_FOR_ORG", "name": "Retrieve attribute options for org", "description": "Retrieves all available options for a specific attribute within an organization. This action returns the list of selectable options for SINGLE_SELECT or MULTI_SELECT type attributes. For example, if you have a \"Department\" attribute, this will return options like \"Engineering\", \"Marketing\", \"Sales\". Note: TEXT and NUMBER type attributes do not have options and will return an empty list. Use cases: - Retrieve available departments, locations, or other categorical options - Display attribute options in a user interface for selection - Validate that a specific option exists before assigning it to a user Prerequisites: - The organization must exist (use get_organization_id to retrieve your orgId) - The attribute must exist (use retrieve_organization_attributes to get attributeId) - Only SINGLE_SELECT and MULTI_SELECT attributes will have options" }, { "slug": "CAL_RETRIEVE_BOOKING_DETAILS_BY_UID", "name": "Retrieve booking details by uid", "description": "Fetches comprehensive details for an existing booking, identified by its `bookingUid`." }, { "slug": "CAL_RETRIEVE_CALENDAR_BUSY_TIMES", "name": "Retrieve calendar busy times", "description": "To find busy calendar slots for scheduling/conflict detection, call this with a valid `credentialId`, an `externalId` accessible by it, and a recognized IANA `loggedInUsersTz`; returns only busy intervals, not event details or free slots. Use credentialId/externalId for single calendar queries." }, { "slug": "CAL_RETRIEVE_CALENDAR_LIST", "name": "Retrieve calendar list", "description": "Retrieves a list of all calendar summaries (no event details) associated with the authenticated user's account." }, { "slug": "CAL_RETRIEVE_CURRENT_TEAM_FOR_ORGANIZATION", "name": "Retrieve current team for organization", "description": "Retrieves details of the team(s) for the currently authenticated user within the specified organization `orgId`." }, { "slug": "CAL_RETRIEVE_DEFAULT_CONFERENCING_SETTINGS", "name": "Retrieve default conferencing settings", "description": "Retrieves an account's or organization's read-only default conferencing settings in Cal.com (e.g., video platform, meeting duration) to inform event creation or ensure consistency." }, { "slug": "CAL_RETRIEVE_EVENT_TYPE_BY_ID", "name": "Retrieve event type by id", "description": "Retrieves comprehensive details for a specific, existing Cal.com event type using its unique ID; this is a read-only action and does not return associated events or bookings." }, { "slug": "CAL_RETRIEVE_MEMBERSHIP_FROM_ORGANIZATION", "name": "Retrieve membership from organization", "description": "Retrieves detailed information about a specific membership within a particular organization." }, { "slug": "CAL_RETRIEVE_MY_INFORMATION", "name": "Retrieve my information", "description": "Retrieves the authenticated user's core profile information (e.g., name, email, timezone); does not retrieve related data like calendar events or schedules." }, { "slug": "CAL_RETRIEVE_OAUTH_CLIENT_USER_BY_ID", "name": "Retrieve OAuth client user by ID", "description": "Retrieves detailed profile information for a specific managed user associated with an OAuth client. This endpoint is part of Cal.com's Platform API for OAuth client management. It requires: - A valid OAuth client ID (clientId) obtained from the Cal.com Platform dashboard - A valid managed user ID (userId) that was created via the create managed user endpoint - OAuth client secret key (x_cal_secret_key) for authentication Returns the user's profile including email, name, timezone, schedule settings, and custom metadata. Note: This endpoint requires Platform API access which is available to registered OAuth clients." }, { "slug": "CAL_RETRIEVE_OAUTH_CLIENT_WEBHOOK_BY_ID", "name": "Retrieve oauth client webhook by id", "description": "Retrieves detailed configuration for a specific webhook by ID from a Platform OAuth client. This Platform API endpoint requires OAuth client credentials (clientId and x-cal-secret-key) to access webhook settings including subscriber URL, active status, event triggers, payload template, and verification secret. Prerequisites: Platform OAuth client created at https://app.cal.com/settings/platform/oauth-clients with both client ID and secret key. Note: Platform offering deprecated Dec 2025, available only to existing enterprise customers. Use cases: Verify webhook config after creation, check active status for troubleshooting, retrieve secret for signature verification, audit settings." }, { "slug": "CAL_RETRIEVE_ORGANIZATION_ATTRIBUTES", "name": "Retrieve organization attributes", "description": "Retrieves detailed attributes (e.g., configurations, settings, metadata) for an organization, identified by its `orgId`, which must correspond to an existing organization." }, { "slug": "CAL_RETRIEVE_ORGANIZATION_ATTRIBUTES_OPTIONS", "name": "Retrieve organization attributes options", "description": "Retrieves all attribute options assigned to a specific user within an organization. Attribute options are customizable organizational metadata (like department, role, location, or team) that organizations define and assign to users for flexible categorization and management." }, { "slug": "CAL_RETRIEVE_ORGANIZATION_WEBHOOK_BY_ID", "name": "Retrieve organization webhook by id", "description": "Retrieves detailed information, including configuration and status, for a specific webhook by its ID (`webhookId`) within a given organization (`orgId`)." }, { "slug": "CAL_RETRIEVE_ORGANIZATION_WEBHOOKS_BY_ORG_ID", "name": "Retrieve organization webhooks by org ID", "description": "Retrieves all webhooks configured for a specific organization, returning an array of webhook objects with their configuration details (ID, triggers, subscriber URL, active status, etc.). Supports pagination via `take` and `skip` parameters. This is a read-only operation that does not modify any webhooks." }, { "slug": "CAL_RETRIEVE_PROVIDER_DETAILS", "name": "Retrieve provider details", "description": "Verifies and retrieves details for an OAuth client (provider) in Cal.com's Platform API. This endpoint is part of Cal.com's Platform API for managing OAuth clients. It verifies the OAuth client credentials (clientId and x-cal-secret-key) and returns provider details including the client ID, associated organization ID, and provider name. Use this to: - Verify that OAuth client credentials are valid - Retrieve the organization ID associated with an OAuth client - Get the registered name of the OAuth client/provider Authentication: Requires both the OAuth client ID (path parameter) and x-cal-secret-key (header). These credentials are obtained from https://app.cal.com/settings/platform/oauth-clients." }, { "slug": "CAL_RETRIEVE_SCHEDULES_LIST", "name": "Retrieve schedules list", "description": "Retrieve all availability schedules for the authenticated Cal.com user. This action returns a list of schedules that define when a user is available for bookings. Each schedule includes availability time blocks, timezone, and whether it's the default schedule. Use this to: - List all configured schedules for a user - Find the default schedule (isDefault=true) - Get schedule IDs for use with other actions like updating or deleting schedules Returns an empty list if no schedules are configured." }, { "slug": "CAL_RETRIEVE_TEAM_DETAILS_IN_ORGANIZATION", "name": "Retrieve team details in organization", "description": "Retrieves a paginated list of teams and their details for a specific organization ID; individual team member details or schedules are not included." }, { "slug": "CAL_RETRIEVE_TEAM_EVENT_TYPES", "name": "Retrieve team event types", "description": "Retrieves event types for a team within the Cal scheduling system; this action does not provide details on scheduled instances or member availability." }, { "slug": "CAL_RETRIEVE_TEAM_MEMBERSHIP_BY_ID", "name": "Retrieve team membership by id", "description": "Retrieves detailed information for a specific team membership by its ID within an organization's team. Returns membership details including the user's role (MEMBER, OWNER, or ADMIN), acceptance status, impersonation settings, and user profile information (email, name, username, avatar, bio). Requires organization-level access permissions." }, { "slug": "CAL_RETRIEVE_TEAM_MEMBERSHIP_DETAILS", "name": "Retrieve team membership details", "description": "Retrieves detailed attributes for a specific team membership by its ID and the team ID, such as member information, role, and status; does not list all team members." }, { "slug": "CAL_RETRIEVE_TEAM_MEMBERSHIPS", "name": "Retrieve team memberships", "description": "Retrieves all memberships for a team, including member details, roles (MEMBER/OWNER/ADMIN), and invitation acceptance status. Supports pagination via 'take' and 'skip' parameters. Use this action to list team members and their roles. The authenticated user must be a member of the team to access its memberships." }, { "slug": "CAL_RETRIEVE_TEAM_MEMBERSHIPS_FOR_ORGANIZATION", "name": "Retrieve team memberships for organization", "description": "Retrieves all user memberships for a specific team within an organization, including each member's role (OWNER, ADMIN, MEMBER), acceptance status, impersonation settings, and detailed user information (email, username, name, avatar, bio). Supports pagination via 'take' and 'skip' parameters." }, { "slug": "CAL_RETRIEVE_USERS_IN_ORGANIZATION", "name": "Retrieve users in organization", "description": "Retrieves users associated with a specific organization ID, excluding individual scheduling or calendar data; the `orgId` must be a valid identifier for an existing organization." }, { "slug": "CAL_RETRIEVE_V2_CONFERENCING_INFO", "name": "Retrieve v2 conferencing info", "description": "Retrieves an authenticated Cal user's or organization's video conferencing configurations, capabilities, and installed apps, useful for understanding options before scheduling or verifying setups; provider availability may vary by subscription or settings." }, { "slug": "CAL_RETRIEVE_WEBHOOK_DETAILS_FOR_OAUTH_CLIENT", "name": "Retrieve webhook details for OAuth client", "description": "Retrieves all webhook configurations for a specific OAuth client with optional pagination. This endpoint is part of Cal.com's Platform API for managing webhooks associated with OAuth clients. Use this to: - List all webhooks configured for an OAuth client - Audit webhook configurations and their active status - Review subscribed event triggers for each webhook - Retrieve webhook URLs and payload templates The response includes webhook details such as: - Webhook ID and creation timestamp - Target subscriber URL for notifications - Active/inactive status - List of subscribed event triggers (BOOKING_CREATED, BOOKING_CANCELLED, etc.) - Custom payload templates (if configured) Pagination is supported via `take` (limit) and `skip` (offset) parameters." }, { "slug": "CAL_RETRIEVE_WEBHOOKS_FOR_EVENT_TYPE", "name": "Retrieve webhooks for event type", "description": "Retrieves a paginated list of webhooks (including URLs, subscribed events, and status) for a specified, existing event type ID, useful for auditing configurations or troubleshooting." }, { "slug": "CAL_RETRIEVE_WEBHOOKS_LIST", "name": "Retrieve webhooks list", "description": "Retrieves a paginated list of webhooks from the user's Cal scheduling system account, which are used for real-time notifications on events like new bookings, cancellations, or updates." }, { "slug": "CAL_SAVE_CALENDAR_ENTRY", "name": "Save calendar entry", "description": "Saves or updates a calendar's settings using a GET request, typically for data already on the server or simple updates via query parameters." }, { "slug": "CAL_SAVE_CALENDAR_ICS_FEEDS", "name": "Save calendar ics feeds", "description": "Imports and saves one or more publicly accessible external iCalendar (ICS) feed URLs into the Cal.com calendar system." }, { "slug": "CAL_SAVE_OAUTH_CREDENTIALS_VIA_GCAL_API", "name": "Save OAuth credentials via GCal API", "description": "Completes the Google Calendar OAuth 2.0 flow by exchanging the `code` and `state` (received from Google's redirect after user consent) for access and refresh tokens." }, { "slug": "CAL_SAVE_STRIPE_DETAILS", "name": "Save stripe details", "description": "Completes the Stripe OAuth flow by saving Stripe details; call this when a user is redirected back from Stripe with an authorization `code` and `state`." }, { "slug": "CAL_SET_DEFAULT_CONFERENCING_APP", "name": "Set default conferencing app", "description": "Sets the specified, valid, and configured conferencing application as the default for new meetings for the authenticated user." }, { "slug": "CAL_UPDATE_DESTINATION_CALENDAR_INTEGRATION", "name": "Update destination calendar integration", "description": "Updates the destination calendar for syncing events, using `integration` and `externalId` (typically from `/calendars` endpoint)." }, { "slug": "CAL_UPDATE_OAUTH_CLIENT_USER_SETTINGS", "name": "Update OAuth client user settings", "description": "Updates specified profile and scheduling preference fields for a user associated with an OAuth client; `defaultScheduleId`, if provided, must be an existing, valid schedule for the user." }, { "slug": "CAL_UPDATE_OAUTH_CLIENT_WEBHOOK", "name": "Update oauth client webhook", "description": "Updates specified properties of an existing webhook for an OAuth client; omitted fields remain unchanged." }, { "slug": "CAL_UPDATE_PRIVATE_LINK", "name": "Update private link", "description": "Updates a private link for a team event type within an organization. Use to modify maxUsageCount for usage-based links or expiresAt for time-based links." }, { "slug": "CAL_UPDATE_SCHEDULE_BY_ID", "name": "Update schedule by ID", "description": "Updates an existing schedule by its ID, allowing partial modification of properties; providing `availability` or `overrides` replaces them entirely." }, { "slug": "CAL_UPDATE_TEAM_EVENT_TYPE", "name": "Update team event type", "description": "Tool to update a team event type in Cal.com. Use when modifying settings for a team's event type such as duration, description, scheduling, locations, or any other event configuration." }, { "slug": "CAL_UPDATE_TEAM_EVENT_TYPE_WEBHOOK", "name": "Update team event type webhook", "description": "Updates a webhook for a team event type. Use when you need to modify webhook configuration like active status, subscriber URL, triggers, or payload template." }, { "slug": "CAL_UPDATE_TEAM_INFORMATION_BY_ID", "name": "Update team information by id", "description": "Updates an existing team's information by its ID within a specified organization; the `slug`, if provided, must be unique within the organization." }, { "slug": "CAL_UPDATE_TEAM_MEMBERSHIP_BY_ID", "name": "Update team membership by id", "description": "Updates properties of an existing team membership. Supports partial updates - only provided fields are modified while others remain unchanged. Requires appropriate team permissions (admin or owner role). Use 'Get teams list' to find teamId and 'Retrieve team memberships' to find membershipId." }, { "slug": "CAL_UPDATE_TEAM_MEMBERSHIP_PROPERTIES", "name": "Update team membership properties", "description": "Updates attributes like acceptance status, role, or impersonation settings for an existing team membership within an organization. Only provided fields are changed (partial update). Requires organization admin or owner privileges. Use list memberships endpoint to get valid membershipId values." }, { "slug": "CAL_UPDATE_USER_PROFILE_DETAILS", "name": "Update user profile details", "description": "Updates the profile information and preferences for the authenticated user, affecting only the fields provided in the request." }, { "slug": "CAL_UPDATE_USER_SCHEDULE_IN_ORGANIZATION", "name": "Update user schedule in organization", "description": "Modifies an existing schedule for a specified user within an organization by updating only the provided fields; the organization, user, and schedule must already exist." }, { "slug": "CAL_UPDATE_WEBHOOK_BY_ID", "name": "Update webhook by id", "description": "Updates an existing Cal.com webhook by its `webhookId`, allowing partial modification of its attributes; only explicitly provided fields will be changed." }, { "slug": "CAL_UPDATE_WEBHOOK_FOR_ORGANIZATION", "name": "Update webhook for organization", "description": "Updates an existing webhook for an organization. Use this to modify webhook settings such as the subscriber URL, activation status, event triggers, or verification secret. Requires admin access to the organization. Only fields provided in the request will be updated; omitted fields retain their current values." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "cal_com_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Cal.com API.", "required": true, "default": "https://api.cal.com/" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "cal_com_api_key", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Cal.com API.", "required": true, "default": "https://api.cal.com/" } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to Cal.com. Use 'cal_' prefix for test mode and 'cal_live_' for live mode.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wrike", "name": "Wrike", "logo": "https://logos.composio.dev/api/wrike", "description": "Wrike is a project management and collaboration tool offering customizable workflows, Gantt charts, reporting, and resource management to boost team productivity", "category": "project management", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 144, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WRIKE_BULK_MODIFY_GROUPS", "name": "Bulk modify group members", "description": "Adds or removes members for multiple Wrike groups in a single request; all specified user IDs must correspond to existing Wrike users." }, { "slug": "WRIKE_COPY_FOLDER", "name": "Copy folder", "description": "Copies a Wrike folder synchronously to a specified parent location with customizable options. Use when duplicating folder structures, optionally copying descriptions, responsibles, custom fields, statuses, and rescheduling tasks." }, { "slug": "WRIKE_COPY_FOLDER_ASYNC", "name": "Copy folder async", "description": "Duplicate a folder asynchronously in Wrike, creating a copy in a specified parent location. Use when copying large folder structures that may take time to complete. Returns an async job ID for tracking progress." }, { "slug": "WRIKE_CREATE_ACCOUNT_WEBHOOKS", "name": "Create account webhooks", "description": "Creates a webhook for the current account to receive notifications about changes. Use when you need to set up real-time event notifications for tasks, folders, or other Wrike objects." }, { "slug": "WRIKE_CREATE_ASSETS", "name": "Create equipment asset", "description": "Tool to create equipment/asset in Wrike. Use when you need to add new equipment or assets to track in the system." }, { "slug": "WRIKE_CREATE_CUSTOMFIELD", "name": "Create custom field", "description": "Tool to create a new custom field in Wrike. Use when you need to define a new custom field for tasks, folders, or projects." }, { "slug": "WRIKE_CREATE_FOLDER", "name": "Create a folder", "description": "Creates a new Wrike subfolder within the specified `folderId`, optionally as a project if `customItemTypeId` is given; the folder is auto-shared with its creator." }, { "slug": "WRIKE_CREATE_FOLDER_BOOKING", "name": "Create folder booking", "description": "Tool to create a booking in a Wrike folder. Use when you need to allocate resources (users or placeholders) to a folder for a specific date range. Either responsibleId or responsiblePlaceholderId must be provided, and bookingDates must include at least two of: startDate, finishDate, or duration." }, { "slug": "WRIKE_CREATE_FOLDERS_APPROVALS", "name": "Create approval in folder", "description": "Tool to create a new approval in a Wrike folder. Use when you need to create an approval workflow for folder content review." }, { "slug": "WRIKE_CREATE_FOLDERS_COMMENTS", "name": "Create folder comment", "description": "Creates a new comment on a specified Wrike folder. Use when adding feedback, updates, or notes to a folder." }, { "slug": "WRIKE_CREATE_FOLDERS_TIMELOG_LOCK_PERIOD", "name": "Create timelog lock period for folder", "description": "Creates a timelog lock period for a specific folder. Timelogs on or before the specified period date will be locked and cannot be edited. Use when you need to prevent modifications to timelog entries up to a certain date." }, { "slug": "WRIKE_CREATE_FOLDER_WEBHOOK", "name": "Create a webhook on folder", "description": "Tool to create a webhook for a Wrike folder or project. Use when you need to set up real-time notifications for events occurring within a specific folder or its subfolders." }, { "slug": "WRIKE_CREATE_GROUP", "name": "Create a group", "description": "Creates a new user group in Wrike with a specified title, optionally setting members, parent group, avatar, and custom metadata." }, { "slug": "WRIKE_CREATE_INVITATION", "name": "Create invitation", "description": "Invites a user to a Wrike workspace by email, optionally with name, specifying EITHER `userTypeId` OR a combination of `role`/`external`; custom email subject/message available for paid accounts." }, { "slug": "WRIKE_CREATE_SPACES_TIMELOG_LOCK_PERIOD", "name": "Create space timelog lock period", "description": "Tool to create a timelog lock period for a space to prevent time entries from being edited. Use when you need to lock timelogs for specific dates, typically before creating payrolls or preparing invoices." }, { "slug": "WRIKE_CREATE_SPACE_WEBHOOK", "name": "Create space webhook", "description": "Tool to create a webhook on a Wrike space for receiving notifications about changes to tasks, folders, and projects. Use when you need to set up event-driven integrations for space-level changes." }, { "slug": "WRIKE_CREATE_TASK", "name": "Create task in folder", "description": "Creates a new task in a specified Wrike folder; if setting priority with `priorityBefore` or `priorityAfter`, the referenced task must be in the same folder or project." }, { "slug": "WRIKE_CREATE_TASK_ATTACHMENT", "name": "Create task attachment", "description": "Tool to upload a file attachment to a Wrike task. Use when you need to attach files to tasks." }, { "slug": "WRIKE_CREATE_TASK_COMMENT", "name": "Create task comment", "description": "Tool to create a new comment on a Wrike task. Use when you need to add a comment or note to a task." }, { "slug": "WRIKE_CREATE_TASKS_APPROVALS", "name": "Create task approval", "description": "Tool to create an approval on a specific task in Wrike. Use when you need to add an approval workflow to a task." }, { "slug": "WRIKE_CREATE_TASKS_DEPENDENCIES", "name": "Create task dependency", "description": "Tool to create a new dependency relationship between Wrike tasks. Use when you need to establish that one task must be completed before another can start or finish. Both tasks must have Planned scheduling type (not Backlog) for dependencies to work." }, { "slug": "WRIKE_CREATE_TASKS_TIMELOGS", "name": "Create task timelog", "description": "Tool to create a timelog entry for a specific task in Wrike. Use when you need to log time spent on a task." }, { "slug": "WRIKE_CREATE_TIMESHEETS", "name": "Create timesheet", "description": "Tool to create a timesheet for a user for a specified time period. Use when you need to initialize or retrieve a timesheet for a given week." }, { "slug": "WRIKE_CREATE_WORKFLOWS", "name": "Create workflows", "description": "Tool to create a new custom workflow in Wrike. Use when you need to create a new workflow with a specific name." }, { "slug": "WRIKE_DELETE_APPROVALS", "name": "Delete approval", "description": "Cancels/deletes an approval by its identifier. Use when removing an approval request that is no longer needed." }, { "slug": "WRIKE_DELETE_ASSET", "name": "Delete asset", "description": "Permanently deletes a Wrike asset/equipment by assetId. Use when removing equipment that is no longer needed." }, { "slug": "WRIKE_DELETE_ATTACHMENTS", "name": "Delete attachment", "description": "Tool to permanently delete a Wrike attachment by its ID. Use when removing an attachment from tasks or folders. This action is irreversible." }, { "slug": "WRIKE_DELETE_BOOKING", "name": "Delete booking", "description": "Permanently removes a resource booking allocation by its ID; use when deallocating resources from projects or tasks." }, { "slug": "WRIKE_DELETE_COMMENT", "name": "Delete comment", "description": "Permanently deletes a Wrike comment by its ID; this action is irreversible and the comment must exist." }, { "slug": "WRIKE_DELETE_CUSTOM_FIELD", "name": "Delete custom field by id", "description": "Permanently deletes a custom field by its ID; this action is irreversible and requires a valid, existing custom field ID." }, { "slug": "WRIKE_DELETE_DEPENDENCIES", "name": "Delete dependencies", "description": "Permanently removes a task dependency relationship by its ID; use when unlinking predecessor/successor task relationships." }, { "slug": "WRIKE_DELETE_FOLDER", "name": "Delete folder", "description": "Permanently deletes the folder specified by `folderId` and all its contents (e.g., tasks, documents, subfolders) from the Wrike workspace; this irreversible action is for when the folder is no longer needed and has no active tasks or dependencies that would block deletion." }, { "slug": "WRIKE_DELETE_FOLDERS_TIMELOG_LOCK_PERIOD", "name": "Delete timelog lock period for folder", "description": "Deletes a timelog lock period for a specific folder. This unlocks timelogs on or before the specified period date, allowing them to be edited again. Use when you need to remove a lock period and allow modifications to previously locked timelog entries." }, { "slug": "WRIKE_DELETE_GROUP", "name": "Delete group by id", "description": "Permanently deletes a group by its `groupId`; this action is irreversible and does not affect user accounts that were members of the group." }, { "slug": "WRIKE_DELETE_INIVTATION", "name": "Delete invitation", "description": "Permanently deletes an existing invitation, specified by its unique `invitationId`; this action cannot be undone." }, { "slug": "WRIKE_DELETE_JOB_ROLE", "name": "Delete job role", "description": "Permanently deletes a job role by its identifier; deleted job roles are removed from all tasks and users and cannot be restored." }, { "slug": "WRIKE_DELETE_SPACE", "name": "Delete space", "description": "Permanently deletes a Wrike space and all its contents by spaceId; this action is irreversible and should be used with caution." }, { "slug": "WRIKE_DELETE_SPACES_TIMELOG", "name": "Delete spaces timelog lock period", "description": "Tool to unlock (delete) a timelog lock period for a specific space in Wrike. Use when you need to remove a previously set lock period that prevents timelog modifications." }, { "slug": "WRIKE_DELETE_TASK", "name": "Delete task", "description": "Permanently deletes a Wrike task and all its associated data by its ID; this action is irreversible and the task must exist." }, { "slug": "WRIKE_DELETE_TIMELOG", "name": "Delete timelog", "description": "Permanently deletes a Wrike timelog entry by its ID; use when removing an incorrect or obsolete time log entry." }, { "slug": "WRIKE_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Tool to permanently delete a webhook by webhook_id. Use when you need to remove a webhook subscription. You can only delete webhooks created with the same API token." }, { "slug": "WRIKE_FETCH_ALL_TASKS", "name": "Fetch all tasks", "description": "Fetches tasks from a Wrike account, allowing filtering by status, due date, and subfolder inclusion, with customizable response fields and pagination." }, { "slug": "WRIKE_GET_ACCOUNT_INFORMATION", "name": "Get account information", "description": "Retrieves detailed Wrike account information, where the response content is influenced by selected fields, account subscription, and user permissions." }, { "slug": "WRIKE_GET_ALL_CUSTOM_FIELDS", "name": "Get all custom fields", "description": "Retrieves all custom field definitions (including ID, name, type, and settings) from the Wrike account; this returns the definitions themselves, not their specific values on Wrike items, and is useful for obtaining custom field IDs." }, { "slug": "WRIKE_GET_ALL_WEBHOOKS", "name": "Get all webhooks", "description": "Tool to retrieve a list of all webhooks created using the same API token. Use when you need to view all webhooks configured for the authenticated API app." }, { "slug": "WRIKE_GET_APPROVALS", "name": "Get approvals", "description": "Tool to retrieve all approvals accessible to the authenticated user. Use when you need to list approvals or check approval statuses across the workspace." }, { "slug": "WRIKE_GET_APPROVALS_BY_IDS", "name": "Get approvals by IDs", "description": "Tool to retrieve specific Wrike approvals by their IDs (up to 100). Use when you need to fetch approval details for known approval identifiers." }, { "slug": "WRIKE_GET_ASYNC_JOB", "name": "Get async job status", "description": "Tool to retrieve status and details for an asynchronous job in Wrike. Use this after initiating async operations (like launch_async endpoints) to check job progress, completion status, and retrieve results." }, { "slug": "WRIKE_GET_ATTACHMENTS", "name": "Get attachments by IDs", "description": "Tool to retrieve multiple Wrike attachments by their IDs (up to 100). Use when you need to fetch details for specific attachments using comma-separated attachment IDs." }, { "slug": "WRIKE_GET_ATTACHMENTS_DOWNLOAD", "name": "Download attachment", "description": "Tool to download a Wrike attachment file. Use when you need to retrieve the actual file content of an attachment by its ID." }, { "slug": "WRIKE_GET_ATTACHMENTS_PREVIEW", "name": "Get attachment preview", "description": "Tool to download a preview version of a Wrike attachment. Use when you need to retrieve a preview image of an attachment by its ID." }, { "slug": "WRIKE_GET_ATTACHMENTS_URL", "name": "Get attachment URL", "description": "Tool to get a public access URL for a Wrike attachment. Use when you need to retrieve a temporary URL to access or share an attachment. The returned URL is valid for 24 hours." }, { "slug": "WRIKE_GET_BOOKINGS", "name": "Get bookings", "description": "Retrieves one or more Wrike bookings by their IDs. Use when you need to fetch specific booking details for resource allocation and scheduling." }, { "slug": "WRIKE_GET_COLORS", "name": "Get colors", "description": "Tool to query the list of available colors in Wrike. Use when you need to retrieve color options for tasks, folders, or other Wrike entities." }, { "slug": "WRIKE_GET_COMMENTS", "name": "Get comments", "description": "Tool to retrieve all comments accessible to the authorized user. Use when you need to fetch comments across tasks and folders, optionally filtered by date range or text format." }, { "slug": "WRIKE_GET_COMMENTS_BY_IDS", "name": "Get comments by IDs", "description": "Tool to retrieve multiple Wrike comments by their IDs. Use when you need to fetch specific comments using comma-separated comment IDs (up to 100)." }, { "slug": "WRIKE_GET_CONTACT_HOURLY_RATES", "name": "Get contact hourly rates", "description": "Tool to retrieve hourly budget rates for up to 100 Wrike contacts. Use when you need to fetch budget rate information for one or multiple contacts." }, { "slug": "WRIKE_GET_CONTACTS", "name": "Get contacts", "description": "Retrieves a list of Wrike contacts (e.g., team members, clients, collaborators); response includes contact details but not their detailed task or project involvement." }, { "slug": "WRIKE_GET_CONTACTS_HISTORY", "name": "Get contacts history", "description": "Tool to access field modification history for Wrike contacts. Use when you need to track changes made to contact information over time." }, { "slug": "WRIKE_GET_CONTACT_TIMELOGS", "name": "Get contact timelogs", "description": "Tool to retrieve all timelog records created by a specific contact in Wrike. Use when you need to query time tracking entries for a particular user." }, { "slug": "WRIKE_GET_CUSTOM_ITEM_TYPES", "name": "Get custom item types", "description": "Tool to retrieve all custom item types from Wrike. Use when you need to discover available custom item type definitions for creating work items or understanding the custom item type structure." }, { "slug": "WRIKE_GET_DEPENDENCIES", "name": "Get dependencies by IDs", "description": "Tool to retrieve one or more Wrike dependencies by their IDs (up to 100). Use when you need to fetch details for specific dependencies using comma-separated dependency IDs." }, { "slug": "WRIKE_GET_FOLDER_BOOKINGS", "name": "Get folder bookings", "description": "Tool to query bookings for a specific folder in Wrike. Use when you need to retrieve booking information for resource allocation within a particular folder or project." }, { "slug": "WRIKE_GET_FOLDERS", "name": "Get folders", "description": "Retrieves folders and/or projects from Wrike, with filters; when using `nextPageToken`, all other filter parameters must match the initial request." }, { "slug": "WRIKE_GET_FOLDERS_APPROVALS", "name": "Get folder approvals", "description": "Tool to retrieve all approvals from a specific Wrike folder. Use when you need to fetch approval details for a folder using its folder ID." }, { "slug": "WRIKE_GET_FOLDERS_ATTACHMENTS", "name": "Get folder attachments", "description": "Tool to retrieve all attachments from a specific Wrike folder. Use when you need to fetch attachment metadata and optionally download URLs for files in a folder." }, { "slug": "WRIKE_GET_FOLDERS_BY_IDS", "name": "Get folders by IDs", "description": "Tool to retrieve multiple Wrike folders by their IDs. Use when you need to fetch details for specific folders using comma-separated folder IDs." }, { "slug": "WRIKE_GET_FOLDERS_COMMENTS", "name": "Get folder comments", "description": "Tool to retrieve comments from a specific Wrike folder. Use when you need to fetch all comments associated with a folder." }, { "slug": "WRIKE_GET_FOLDERS_HISTORY", "name": "Get folders history", "description": "Tool to access field modification history for Wrike folders. Use when you need to track changes made to folder information over time." }, { "slug": "WRIKE_GET_FOLDERS_HOURLY", "name": "Get folder hourly rates", "description": "Tool to retrieve hourly budget rates for a specific Wrike folder. Use when you need to fetch budget rate information configured for a folder or project." }, { "slug": "WRIKE_GET_FOLDERS_ROLLUPS", "name": "Get folder rollups", "description": "Tool to query rollup settings for items in a folder. Use when you need to fetch rollup configuration for a specific folder. Pagination is supported for folders with descendants=true, applying to the entire folder hierarchy." }, { "slug": "WRIKE_GET_FOLDERS_TASKS", "name": "Get folder tasks", "description": "Query tasks within a specific folder. Use this to retrieve all tasks contained in a folder, with optional filtering by status, due date, and metadata." }, { "slug": "WRIKE_GET_FOLDERS_TIMELOG_LOCK_PERIODS", "name": "Get folder timelog lock periods", "description": "Tool to query timelog lock periods for a specific folder. Use when you need to check which time periods are locked for timelog entries in a folder." }, { "slug": "WRIKE_GET_FOLDERS_TIMELOGS", "name": "Get folders timelogs", "description": "Tool to retrieve all timelog records for a specific folder. Use when you need to query time tracking data for a folder and its tasks." }, { "slug": "WRIKE_GET_IDS", "name": "Convert legacy v2 IDs to v4", "description": "Tool to convert legacy Wrike API v2 IDs to current v4 format. Use when you need to work with numeric IDs from the Wrike interface or legacy integrations and convert them to the alphanumeric v4 IDs required by the current API." }, { "slug": "WRIKE_GET_INFORMATION_ABOUT_SPECIFIC_CONTACT", "name": "Get specific contact information", "description": "Retrieves detailed information for a specific Wrike contact using their unique `contactId`, optionally including `metadata` and `customFields` if specified in the `fields` parameter." }, { "slug": "WRIKE_GET_JOB_ROLES", "name": "Get job roles by IDs", "description": "Tool to retrieve details for one or more Wrike job roles by job role IDs. Use when you need to fetch information about specific job roles." }, { "slug": "WRIKE_GET_PLACEHOLDER_HOURLY_RATES", "name": "Get placeholder hourly rates", "description": "Tool to retrieve hourly budget rates for one or more Wrike placeholders. Use when you need to fetch budget rate information for placeholders, supporting up to 100 IDs in a single request." }, { "slug": "WRIKE_GET_PLACEHOLDERS", "name": "Get placeholders by IDs", "description": "Tool to retrieve details for one or more Wrike placeholders by their IDs. Use when you need to fetch information about specific placeholders, supporting up to 100 IDs in a single request." }, { "slug": "WRIKE_GET_SPACE", "name": "Get space by ID", "description": "Tool to retrieve details for a single Wrike space by spaceId. Use when you need to fetch complete information about a specific space, typically after listing spaces to select one." }, { "slug": "WRIKE_GET_SPACE_CUSTOM_ITEM_TYPES", "name": "Get space custom item types", "description": "Tool to retrieve all custom item types scoped to a specific Wrike space. Use when you need to discover available custom item types for a space before creating work items based on these types." }, { "slug": "WRIKE_GET_SPACE_FOLDERS", "name": "Get space folders", "description": "Tool to retrieve the folder tree for a specific Wrike space. Use when you need to list all folders and projects within a space, optionally filtered by project type, authors, owners, title, or custom statuses." }, { "slug": "WRIKE_GET_SPACES_CUSTOMFIELDS", "name": "Get space custom fields", "description": "Tool to retrieve all custom fields defined for a specific Wrike space. Use when you need to discover what custom fields are available in a space before querying tasks or folders with custom field data." }, { "slug": "WRIKE_GET_SPACES_TASKS", "name": "Get spaces tasks", "description": "Tool to query tasks within a specific Wrike space. Use when you need to retrieve tasks from a particular space, with optional filtering by status, importance, title, and other criteria." }, { "slug": "WRIKE_GET_SPACES_WORKFLOWS", "name": "Get space workflows", "description": "Tool to query workflows for a specific Wrike space. Use when you need to retrieve the list of available workflows and their custom statuses for a space." }, { "slug": "WRIKE_GET_SPACE_TIMELOG_LOCK_PERIODS", "name": "Get space timelog lock periods", "description": "Tool to query timelog lock periods for a specific space. Use when you need to check which time periods are locked for timelog entries in a space." }, { "slug": "WRIKE_GET_SPECIFIC_USER", "name": "Get specific user", "description": "Retrieves detailed information about a specific user in Wrike using their unique user ID." }, { "slug": "WRIKE_GET_TASK_BY_ID", "name": "Get task by id", "description": "Retrieves read-only detailed information for a specific Wrike task by its unique ID, optionally allowing specification of fields to include in the response." }, { "slug": "WRIKE_GET_TASK_DEPENDENCIES", "name": "Get task dependencies", "description": "Retrieves all dependency relationships for a specific task. Use when you need to see which tasks the specified task depends on (predecessors) or which tasks depend on it (successors)." }, { "slug": "WRIKE_GET_TASKS_APPROVALS", "name": "Get task approvals", "description": "Retrieves all approval records for a specific task. Use when you need to see approval workflow status and decisions for a task." }, { "slug": "WRIKE_GET_TASKS_ATTACHMENTS", "name": "Get task attachments", "description": "Tool to retrieve all attachments from a specific Wrike task. Use when you need to fetch attachment metadata and optionally download URLs for files attached to a task." }, { "slug": "WRIKE_GET_TASKS_COMMENTS", "name": "Get task comments", "description": "Tool to retrieve all comments from a specific Wrike task. Use when you need to fetch comments associated with a task." }, { "slug": "WRIKE_GET_TASKS_HISTORY", "name": "Get tasks history", "description": "Query task field modification history for up to 100 tasks. Use when you need to retrieve the history of changes made to task fields. Returns information about who changed what fields, when the changes occurred, and the old and new values." }, { "slug": "WRIKE_GET_TASKS_ROLLUPS", "name": "Get task rollups", "description": "Tool to query rollup settings for a specific task. Use when you need to retrieve the rollup configuration that determines how custom field values are aggregated from subtasks." }, { "slug": "WRIKE_GET_TASKS_TIMELOG_LOCK_PERIODS", "name": "Get task timelog lock periods", "description": "Tool to query timelog lock periods for a specific task. Use when you need to check which time periods are locked for timelog entries on a task." }, { "slug": "WRIKE_GET_TASK_TIMELOGS", "name": "Get task timelogs", "description": "Retrieves all timelog records for a specific task. Use when you need to see time tracking entries for a task. Supports filtering by creation date, tracked date, and user." }, { "slug": "WRIKE_GET_TIMELOG_CATEGORIES", "name": "Get timelog categories", "description": "Tool to query the list of timelog categories in Wrike. Use when you need to retrieve available time tracking categories for categorizing timelog entries." }, { "slug": "WRIKE_GET_TIMELOGS", "name": "Get timelogs", "description": "Retrieves timelog records from Wrike with optional filters for dates, users, and task scope. Use to query time tracking data across tasks and projects." }, { "slug": "WRIKE_GET_TIMELOGS_BY_IDS", "name": "Get timelogs by IDs", "description": "Retrieves detailed information for one or more Wrike timelogs by their unique IDs (up to 100), optionally including export and lock status." }, { "slug": "WRIKE_GET_TIMESHEETS", "name": "Get timesheets", "description": "Tool to query timesheets from Wrike. Use when you need to retrieve user timesheets showing weekly tracked time, approval status, and timesheet periods." }, { "slug": "WRIKE_GET_TIMESHEET_SUBMISSION_RULES", "name": "Get timesheet submission rules", "description": "Tool to retrieve global timesheet submission rules across all work schedules. Use when you need to check timesheet submission configurations globally." }, { "slug": "WRIKE_GET_VERSION", "name": "Get API version", "description": "Tool to retrieve current Wrike API version information. Use when you need to check the API version being used or verify API compatibility." }, { "slug": "WRIKE_GET_WEBHOOK_BY_ID", "name": "Get webhook by ID", "description": "Tool to retrieve details for a specific webhook by webhook_id. Use when you need to inspect webhook configuration including the hook URL, status, events, and scope. You can only access webhooks created with the same API token." }, { "slug": "WRIKE_GET_WORKSCHEDULES_TIMESHEET", "name": "Get work schedule timesheet rules", "description": "Tool to retrieve timesheet submission rules for a specific work schedule. Use when you need to check the configuration of timesheet submission requirements for a work schedule." }, { "slug": "WRIKE_LAUNCH_FOLDER_BLUEPRINT_ASYNC", "name": "Launch folder blueprint async", "description": "Asynchronously launches a new project or folder structure in Wrike from a specified Folder Blueprint. Important Notes: - The folder_blueprint_id must be an actual launchable blueprint, NOT a BpRoot container. - Use WRIKE_LIST_FOLDER_BLUEPRINTS to get blueprint IDs. Look for child blueprints within the tree structure. - Blueprints with scope 'BpRoot' are root containers and cannot be launched directly. - The blueprint must fit within 250 items (subfolders, subprojects, and subtasks count towards this limit). - Returns an async job ID that can be used to track progress via the Async Job endpoint." }, { "slug": "WRIKE_LAUNCH_TASK_BLUEPRINT_ASYNC", "name": "Launch Task Blueprint Async", "description": "Asynchronously launches a Wrike Task Blueprint to create tasks/projects, requiring either `super_task_id` (parent task) or `parent_id` (parent folder/project) for placement." }, { "slug": "WRIKE_LIST_ATTACHMENTS", "name": "List all attachments", "description": "Tool to retrieve all attachments from the Wrike account. Use when you need to list attachments with optional date filtering and download URLs." }, { "slug": "WRIKE_LIST_FOLDER_BLUEPRINTS", "name": "List Folder Blueprints", "description": "Retrieves all account-level Folder Blueprints, which are templates for standardizing folder/project creation with predefined structures, custom fields, and workflows." }, { "slug": "WRIKE_LIST_PLACEHOLDERS", "name": "List all placeholders", "description": "Retrieves all placeholders accessible to the authenticated user; placeholders are templates used in Wrike for creating standardized tasks or projects." }, { "slug": "WRIKE_LIST_SPACE_FOLDER_BLUEPRINTS", "name": "List space folder blueprints", "description": "Lists all folder blueprints (templates for new folders/projects) within a specified Wrike space, requiring a valid and accessible space ID." }, { "slug": "WRIKE_LIST_SPACES", "name": "List spaces", "description": "Tool to list spaces the authorized user can access. Use when you need to discover valid spaceIds for downstream space-scoped operations like listing space blueprints." }, { "slug": "WRIKE_LIST_SPACE_TASK_BLUEPRINTS", "name": "List space task blueprints", "description": "Lists task blueprints (templates for creating tasks with consistent structures) available in a specific, accessible Wrike space." }, { "slug": "WRIKE_LIST_SUBFOLDERS_BY_FOLDER_ID", "name": "List subfolders by folder id", "description": "Lists subfolders (metadata only, not their contents) for an existing Wrike folder specified by `folderId`, supporting recursive descent, filtering, and pagination." }, { "slug": "WRIKE_LIST_TASK_BLUEPRINTS", "name": "List Task Blueprints", "description": "Retrieves a list of defined Task Blueprints (predefined task templates) from the Wrike account, supporting pagination." }, { "slug": "WRIKE_MODIFY_ACCOUNT", "name": "Update account metadata", "description": "Updates or adds custom key-value metadata to the Wrike account, useful for integrations, storing app-specific data, or mapping external system identifiers." }, { "slug": "WRIKE_MODIFY_FOLDER", "name": "Modify folder attributes", "description": "Modifies an existing Wrike folder: updates title, description, parents (not root/recycle bin), sharing, metadata, custom fields/columns; restores, converts to project, or manages access roles." }, { "slug": "WRIKE_MODIFY_GROUP", "name": "Modify group", "description": "Updates an existing Wrike user group's attributes like title, members, parent, avatar, or metadata, using its `groupId` and specifying only the fields to change." }, { "slug": "WRIKE_MODIFY_TASK", "name": "Modify task", "description": "Modifies an existing Wrike task by its ID, allowing updates to attributes such as title, status, dates, assignees, and custom fields; `priorityBefore` and `priorityAfter` are mutually exclusive, and parent folder IDs for `addParents`/`removeParents` cannot be the Recycle Bin." }, { "slug": "WRIKE_QUERY_CUSTOMFIELDS", "name": "Retrieve custom field by id", "description": "Retrieves a Wrike custom field's detailed information (e.g., type, possible values for dropdowns), properties, and metadata; the `customFieldId` must correspond to an existing custom field." }, { "slug": "WRIKE_QUERY_INVITATIONS", "name": "Query invitations", "description": "Retrieves all active invitations in Wrike, useful for viewing and auditing pending invitations or managing user onboarding." }, { "slug": "WRIKE_QUERY_JOB_ROLES", "name": "Query job roles", "description": "Tool to retrieve all available job roles in the Wrike account. Use when you need to discover job roles or get a complete list of roles without knowing specific IDs." }, { "slug": "WRIKE_QUERY_SPECIFIC_GROUP", "name": "Get group by id", "description": "Retrieves detailed information for a specific Wrike group using its `groupId`, optionally including 'metadata'." }, { "slug": "WRIKE_QUERY_WORKFLOWS", "name": "Query workflows", "description": "Fetches a list of all workflows with their detailed information from the Wrike account; this is a read-only action and does not support pagination or filtering through its parameters." }, { "slug": "WRIKE_RETRIEVE_LIST_OF_GROUPS", "name": "Retrieve list of groups", "description": "Retrieves a list of user groups from the Wrike account, supporting metadata filtering, pagination, and inclusion of specific fields; this is a read-only operation." }, { "slug": "WRIKE_SEARCH_EDISCOVERY", "name": "Search eDiscovery", "description": "Tool to perform eDiscovery search across Wrike items (folders, projects, tasks). Use when you need to find items matching specific search terms across different scopes. Supports wildcard searches and filtering by item types." }, { "slug": "WRIKE_UPDATE_APPROVALS", "name": "Update approval", "description": "Updates an existing Wrike approval by its ID, allowing modifications to the title, description, and due date." }, { "slug": "WRIKE_UPDATE_ASSET", "name": "Update asset", "description": "Tool to update a Wrike asset/equipment by ID. Use when you need to rename or modify an equipment asset in the system." }, { "slug": "WRIKE_UPDATE_ATTACHMENT", "name": "Update attachment", "description": "Tool to update a Wrike attachment by uploading new file content. Use when you need to replace an existing attachment with a new version." }, { "slug": "WRIKE_UPDATE_BOOKINGS", "name": "Update booking", "description": "Updates a Wrike booking's date range by ID. Use when you need to reschedule a resource booking by modifying its start and finish dates." }, { "slug": "WRIKE_UPDATE_COMMENT", "name": "Update comment", "description": "Tool to update an existing Wrike comment. Use when you need to modify the text content of a comment. Supports HTML formatting with limited tags." }, { "slug": "WRIKE_UPDATE_CUSTOM_FIELD_BY_ID", "name": "Update custom field by id", "description": "Updates properties of an existing Wrike custom field by its ID, such as its title, type, scope, or sharing settings." }, { "slug": "WRIKE_UPDATE_DEPENDENCY", "name": "Update dependency", "description": "Tool to modify an existing Wrike dependency relationship between tasks. Use when you need to update the dependency type or change which tasks are linked." }, { "slug": "WRIKE_UPDATE_FOLDERS_ROLLUPS", "name": "Update folder rollup settings", "description": "Tool to update rollup settings for a folder. Use when you need to enable or disable field aggregation from descendant items." }, { "slug": "WRIKE_UPDATE_INVITATION", "name": "Update invitation", "description": "Updates a pending Wrike invitation (`invitationId`) to resend it or change user's role/type (use EITHER `userTypeId` OR `role`/`external`)." }, { "slug": "WRIKE_UPDATE_JOB_ROLE", "name": "Update job role", "description": "Updates an existing Wrike job role by its ID, allowing modifications to the title and short title." }, { "slug": "WRIKE_UPDATE_METADATA_ON_SPECIFIC_CONTACT", "name": "Update metadata on a specific contact", "description": "Updates metadata, job role, or custom fields for an existing Wrike contact specified by `contactId`; if `jobRoleId` is provided, it must be a valid ID." }, { "slug": "WRIKE_UPDATE_SPECIFIC_USER", "name": "Update a specific user", "description": "Updates specified profile attributes (e.g., account ID, role, external status) for an existing Wrike user; unspecified fields remain unchanged. Note: The current API user can only update users they have permission to modify. Account owners, robot users, and the current user themselves typically cannot be modified. This action requires the 'amReadWriteUser' OAuth scope." }, { "slug": "WRIKE_UPDATE_TASKS_ROLLUPS", "name": "Update task rollup settings", "description": "Updates rollup settings for a task. Rollup settings control how field values aggregate from child tasks to parent tasks. Use this when you need to enable or disable automatic rollup calculations for specific fields like start dates, due dates, or custom fields." }, { "slug": "WRIKE_UPDATE_TIMELOGS", "name": "Update timelog entry", "description": "Tool to modify an existing timelog entry in Wrike. Use when you need to update the hours, comment, tracked date, or category of a time log." }, { "slug": "WRIKE_UPDATE_TIMESHEET_ROW", "name": "Update timesheet row", "description": "Updates a Wrike timesheet row by its ID, allowing modification of the timelog category. Use when you need to change the time tracking category for a timesheet entry." }, { "slug": "WRIKE_UPDATE_TIMESHEETS", "name": "Update timesheet", "description": "Tool to update a timesheet's approval status in Wrike. Use when you need to submit, approve, or reject a timesheet." }, { "slug": "WRIKE_UPDATE_WEBHOOK_STATE", "name": "Update webhook state", "description": "Tool to update the state of a Wrike webhook. Use when you need to re-enable a suspended webhook or suspend an active one. Wrike automatically suspends webhooks after 3 failed delivery attempts. Call this with status=Active to re-enable." }, { "slug": "WRIKE_UPDATE_WORKFLOW", "name": "Update workflow", "description": "Tool to modify an existing Wrike workflow. Use when you need to update a workflow's name or description. Requires amReadWriteWorkflow scope." }, { "slug": "WRIKE_UPDATE_WORKSCHEDULE_TIMESHEET_RULES", "name": "Update work schedule timesheet rules", "description": "Tool to update timesheet submission rules for a work schedule. Use when you need to configure or modify how timesheet submissions are validated and enforced for a specific work schedule." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "canva_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Wrike Base URL", "type": "string", "description": "The base URL of your Wrike instance (e.g., https://www.wrike.com).", "required": true, "default": "https://www.wrike.com/api/v4" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Default,wsReadOnly,wsReadWrite,amReadOnlyWorkflow,amReadWriteWorkflow,amReadOnlyInvitation,amReadWriteInvitation,amReadOnlyGroup,amReadWriteGroup,amReadOnlyUser,amReadWriteUser" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "exa", "name": "Exa", "logo": "https://logos.composio.dev/api/exa", "description": "Exa focuses on data extraction and search, helping teams gather, analyze, and visualize information from websites, APIs, or internal databases", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EXA_ANSWER", "name": "Generate an answer", "description": "Generates a direct, citation-backed answer to a clear natural language question or topic using Exa's search, adept at both specific answers and detailed summaries for open-ended queries. Response contains an `answer` field (summary) and a `citations` field (supporting URLs). Citations may include low-credibility sources; verify authoritative references for factual use." }, { "slug": "EXA_CREATE_IMPORT", "name": "Create Import", "description": "Tool to create a new import to upload data into a Webset. Use when you need to initialize an import before uploading the data file." }, { "slug": "EXA_CREATE_MONITOR", "name": "Create a Monitor", "description": "Tool to create a new Monitor. Use when you need to schedule automated updates for a Webset without manual runs." }, { "slug": "EXA_CREATE_RESEARCH", "name": "Create Research Task", "description": "Creates an asynchronous research task that explores the web, gathers sources, synthesizes findings, and returns results with citations. The API responds immediately with a researchId for polling completion status. Use this when you need to generate: 1. Structured JSON matching an outputSchema you provide 2. A detailed markdown report when no schema is provided After creation, poll the research task status using the researchId to retrieve the final results when completed." }, { "slug": "EXA_CREATE_WEBSET", "name": "Create Webset", "description": "Tool to create a new Webset with search, import, and enrichment setup. Use when you need to configure and seed a Webset in one call." }, { "slug": "EXA_DELETE_IMPORT", "name": "Delete import", "description": "Tool to delete an existing import. Use when you need to permanently remove an import by its ID." }, { "slug": "EXA_DELETE_WEBSET", "name": "Delete webset", "description": "Tool to delete a Webset. Use after confirming the Webset ID to permanently remove the Webset and all its items." }, { "slug": "EXA_FIND_SIMILAR", "name": "Find similar (Deprecated)", "description": "DEPRECATED: /findSimilar is a legacy endpoint and is no longer recommended for new integrations. Migrate to EXA_SEARCH with type='deep-lite' or 'deep' passing a URL-shaped query, optionally with the nested `contents` object for enrichment. Existing calls continue to work for now. Finds web pages semantically similar to a given URL using embeddings-based search, optionally retrieving full text, highlights, or summaries for results." }, { "slug": "EXA_GET_API_KEY", "name": "Get API Key", "description": "Tool to retrieve details of a specific API key by its ID. Use when you need to fetch information about an API key in the team management context." }, { "slug": "EXA_GET_CONTENTS_ACTION", "name": "Get contents from URLs or document IDs", "description": "Retrieve text / highlights / summary / subpages from URLs. The endpoint returns HTTP 200 even when individual URLs fail — always inspect `statuses[]` for CRAWL_NOT_FOUND, CRAWL_LIVECRAWL_TIMEOUT, SOURCE_NOT_AVAILABLE. Control freshness with `maxAgeHours` (0 = always livecrawl, -1 = cache only). Use `subpages` + `subpageTarget` to crawl linked pages within a site in one request." }, { "slug": "EXA_GET_EVENT", "name": "Get Event", "description": "Tool to get details of a specific event by its ID. Use when you have an event ID and need its full details." }, { "slug": "EXA_GET_RESEARCH", "name": "Get Research Task", "description": "Tool to retrieve the status and results of a previously created research task. Use the unique researchId returned from POST /research/v1 to poll until the task is finished." }, { "slug": "EXA_LIST_EVENTS", "name": "List events", "description": "Tool to list all events that have occurred in the system. Use when you need to paginate through the event history." }, { "slug": "EXA_LIST_IMPORTS", "name": "List imports", "description": "Tool to list all imports for the Webset. Use when you need to paginate through and monitor import jobs." }, { "slug": "EXA_LIST_RESEARCH", "name": "List research tasks", "description": "Tool to retrieve a paginated list of your research tasks. Use when you need to view or monitor research jobs with cursor-based pagination." }, { "slug": "EXA_LIST_WEBHOOKS", "name": "List webhooks", "description": "Tool to list all webhooks for Websets. Use when you need to view existing webhooks and paginate through results." }, { "slug": "EXA_SEARCH", "name": "Search", "description": "Web search via the Exa engine. Returns ranked results with optional per-result text/highlights/summary (set the nested `contents` object). For agent workflows prefer `contents.highlights=true` — 10× fewer tokens than full text. Pick `type` by latency tier: `instant`~250 ms · `fast`~450 ms · `auto`~1 s (default) · `deep-lite` ~4 s · `deep` 4–15 s · `deep-reasoning` 12–40 s. `includeDomains` and `excludeDomains` are mutually exclusive (max 1200 each). For `category=company` or `category=people`, date filters / `excludeDomains` are NOT supported and will 400." }, { "slug": "EXA_UPDATE_IMPORT", "name": "Update import", "description": "Tool to update an import configuration by ID. Use when you need to modify an import's title or metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "exa_scheme", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Exa API key, a long secret string that authorizes every search. Create or copy one at https://dashboard.exa.ai/api-keys (sign in first).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sentry", "name": "Sentry", "logo": "https://logos.composio.dev/api/sentry", "description": "Integrate Sentry to manage your error tracking and monitoring.", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 211, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENTRY_ACCESS_PROJECT_INFORMATION", "name": "Access project information", "description": "Retrieves detailed information for a Sentry project, given its existing organization and project ID or slug." }, { "slug": "SENTRY_ADD_A_SYMBOL_SOURCE_TO_A_PROJECT", "name": "Add a symbol source to a project", "description": "Tool to add a custom symbol source to a Sentry project. Use when configuring symbol sources for crash symbolication." }, { "slug": "SENTRY_ADD_ORGANIZATION_MEMBER_VIA_EMAIL", "name": "Add organization member via email", "description": "Invites a new member (or re-invites an existing non-accepted member) to a Sentry organization via email, allowing specification of organization and team roles." }, { "slug": "SENTRY_ADD_REMOVE_USER_EMAIL_BY_ID", "name": "Add or remove user email by id", "description": "Adds or removes a secondary email for an existing Sentry user, determined by whether the email already exists for that user." }, { "slug": "SENTRY_ADD_TEAM_MEMBER_IN_ORGANIZATION", "name": "Add team member in organization", "description": "Adds an existing member of an organization to one of its teams; the member must already belong to the organization, and the team must also belong to that organization." }, { "slug": "SENTRY_ADD_TEAM_TO_PROJECT", "name": "Add team to project", "description": "Grants a Sentry team access to a Sentry project within the specified Sentry organization." }, { "slug": "SENTRY_BULK_MUTATE_AN_ORGANIZATIONS_ISSUES", "name": "Bulk mutate an organization's issues", "description": "Bulk mutate various attributes on issues within an organization. Use when you need to update status, priority, assignment, or other attributes for multiple issues at once. Maximum of 1000 issues can be mutated, with a 100 issue limit per request." }, { "slug": "SENTRY_BULK_REMOVE_AN_ORGANIZATIONS_ISSUES", "name": "Bulk remove an organization's issues", "description": "Permanently removes issues from an organization. If IDs are provided, queries and filtering are ignored. Maximum of 1000 issues can be removed at once." }, { "slug": "SENTRY_CREATE_AN_ALERT_FOR_AN_ORGANIZATION", "name": "Create an alert for an organization", "description": "Creates a workflow alert for a Sentry organization using the New Monitors and Alerts system. Use when you need to set up automated alerting for issues based on trigger conditions and filters. Note: This endpoint is currently in beta and may change." }, { "slug": "SENTRY_CREATE_DASHBOARD_WITH_WIDGETS", "name": "Create dashboard with widgets", "description": "Creates a Sentry dashboard with widgets for an organization; `organization_id_or_slug` and specified `project` IDs must be valid, and `start`/`end` datetimes (if absolute range) must form a logical ISO 8601 range." }, { "slug": "SENTRY_CREATE_EXTERNAL_USER_FOR_ORGANIZATION", "name": "Create external user for organization", "description": "Links a Sentry user to an external identity provider's user within a Sentry organization; the Sentry user must be an organization member, an active integration for the provider must be configured, and `external_id` is typically required for the external user." }, { "slug": "SENTRY_CREATE_ORGANIZATION_ALERT_RULE", "name": "Create organization alert rule", "description": "Creates a Sentry metric alert rule for an organization, mandating a 'critical' trigger, typically for a single project, where actions may require Sentry integrations." }, { "slug": "SENTRY_CREATE_ORGANIZATION_MONITOR", "name": "Create organization monitor", "description": "Creates a new monitor (type 'cron_job') within a Sentry organization to track scheduled tasks, allowing configuration of its name, slug (which must be unique if provided), status, owner, and muting preferences for incidents." }, { "slug": "SENTRY_CREATE_ORGANIZATION_TEAM", "name": "Create organization team", "description": "Creates a new team in a Sentry organization, requiring either a 'slug' or 'name' to define the team." }, { "slug": "SENTRY_CREATE_PROJECT_KEY_WITH_OPTIONAL_RATE_LIMITING", "name": "Create project key with optional rate limiting", "description": "Creates a new client key (DSN) for an existing Sentry project, with optional custom rate limit configuration." }, { "slug": "SENTRY_CREATE_PROJECT_RULE_FOR_ALERTS", "name": "Create project rule for alerts", "description": "Creates a Sentry project alert rule by defining conditions, actions, and optional filters using specific JSON structures (detailed in parameter descriptions) to automate responses to event patterns for an existing organization and project." }, { "slug": "SENTRY_CREATE_PROJECT_WEBHOOK_SUBSCRIPTION", "name": "Create project webhook subscription", "description": "Registers a new webhook subscription for a Sentry project to send HTTP POST notifications to a specified URL for given events, provided the project has the 'servicehooks' feature enabled." }, { "slug": "SENTRY_CREATE_RELEASE_DEPLOY_FOR_ORG", "name": "Create release deploy for org", "description": "Creates a new deploy record in Sentry to track the introduction of a release version into a specific environment." }, { "slug": "SENTRY_CREATE_RELEASE_FOR_ORGANIZATION", "name": "Create release for organization", "description": "Creates a new Sentry release for an existing organization, associating it with specified projects that must belong to that organization." }, { "slug": "SENTRY_CREATE_SCIM_GROUP_FOR_ORGANIZATION", "name": "Create scim group for organization", "description": "Creates a new Sentry team (SCIM group) within an organization via the SCIM API. Requirements: - Organization must have SCIM enabled (requires Business Plan with SAML2) - Must use a SCIM bearer token (generated when SCIM is enabled) - Token must have 'team:admin' or 'team:write' scope Behavior: - A URL-friendly slug is auto-generated from displayName (e.g., 'My Team' → 'my-team') - Team is created with an empty member set - Members must be added separately through SCIM member operations - Returns SCIM 2.0 Group resource with unique ID Use this for SCIM provisioning workflows with identity providers like Okta or Azure AD." }, { "slug": "SENTRY_CREATE_SENTRY_EXTERNAL_ISSUE_LINK", "name": "Create sentry external issue link", "description": "Links an existing Sentry issue to an issue in an external service, or updates an existing link, requiring a configured Sentry App installation `uuid`." }, { "slug": "SENTRY_CREATE_TEAM_PROJECT_FOR_ORGANIZATION", "name": "Create team project for organization", "description": "Creates a new Sentry project for an existing organization and team, allowing configuration of its name, slug, platform, and default alert rules." }, { "slug": "SENTRY_CREATE_USER_FOR_SAML_INTEGRATION", "name": "Create user for SAML integration", "description": "Creates a new Sentry organization member via a SCIM request for SAML integration; this action does not support setting secondary emails." }, { "slug": "SENTRY_DELETE_A_CUSTOM_INTEGRATION", "name": "Delete a custom integration", "description": "Deletes a custom integration (Sentry App) by its ID or slug. Use when you need to permanently remove a custom integration from your organization. Requires org:admin scope." }, { "slug": "SENTRY_DELETE_AN_ALERT", "name": "Delete an alert", "description": "⚠️ This endpoint is currently in beta and may be subject to change. Deletes an alert. Use when you need to permanently remove an alert from an organization." }, { "slug": "SENTRY_DELETE_BULK_ALERTS", "name": "Delete bulk alerts", "description": "Bulk delete alerts for a given organization. Use when you need to delete multiple alerts at once. ⚠️ This endpoint is currently in beta and may be subject to change." }, { "slug": "SENTRY_DELETE_DSYMS_FOR_PROJECT", "name": "Delete dsyms for project", "description": "Permanently removes a specific Debug Information File (DIF), used for symbolicating crash reports, from the specified Sentry project and organization." }, { "slug": "SENTRY_DELETE_EXTERNAL_ISSUE_BY_UUID", "name": "Delete external issue by uuid", "description": "Unlinks an external issue (e.g., from Jira/GitHub), identified by `external_issue_id`, from the Sentry app installation specified by `uuid`." }, { "slug": "SENTRY_DELETE_EXTERNAL_TEAM_BY_ID", "name": "Delete an external team by id", "description": "Unlinks a previously established external team from a Sentry team; this action does not delete either the Sentry team or the external team." }, { "slug": "SENTRY_DELETE_EXTERNAL_USER_FROM_ORGANIZATION", "name": "Delete external user from organization", "description": "Deletes the link between an external user (from an integration provider like GitHub, Slack, GitLab, or MS Teams) and a Sentry user within the specified organization. This removes the association but does not delete the Sentry user itself. Requires org:admin or org:write permissions." }, { "slug": "SENTRY_DELETE_MEMBER_FROM_TEAM", "name": "Delete member from team", "description": "Removes an organization member from a Sentry team, revoking their team-specific permissions, provided the member is currently part of that team." }, { "slug": "SENTRY_DELETE_ORGANIZATION_ALERT_RULE", "name": "Delete organization alert rule", "description": "Permanently deletes a metric alert rule from a Sentry organization. This action removes the specified metric alert rule, stopping all monitoring and notifications associated with it. The deletion is immediate and cannot be undone. Metric alert rules monitor aggregated metrics (like error rates, latency, or custom metrics) and are different from issue alert rules which trigger on individual events. **Important**: Metric alert rules require a Sentry Business or Enterprise plan. If your organization is on a different plan, this endpoint will return a 404 Not Found error. **Common Use Cases**: - Cleaning up outdated or unnecessary alert rules - Removing test alert rules after validation - Decommissioning monitoring for deprecated services **Returns**: Success message on deletion (HTTP 202), or error details if the rule doesn't exist or cannot be deleted." }, { "slug": "SENTRY_DELETE_ORGANIZATION_DASHBOARD", "name": "Delete organization dashboard", "description": "Deletes a custom dashboard or tombstones (marks as deleted) a pre-built dashboard within a Sentry organization." }, { "slug": "SENTRY_DELETE_ORGANIZATION_DISCOVER_QUERY", "name": "Delete organization discover query", "description": "Permanently removes a specific saved Discover query (a configuration for exploring event data) from a Sentry organization. This action requires one of the following scopes: org:admin, org:read, or org:write. The Discover saved queries feature is only available on Business and Enterprise plans." }, { "slug": "SENTRY_DELETE_ORGANIZATION_INTEGRATION", "name": "Delete organization integration", "description": "Permanently removes an integration installation from a Sentry organization. This action requires the numeric integration ID, which can be obtained by first calling retrieve_organization_integrations_list. Required permissions: org:admin or org:integrations scope." }, { "slug": "SENTRY_DELETE_ORGANIZATION_ISSUE", "name": "Delete organization issue", "description": "Permanently deletes a specific Sentry issue, identified by its ID, from an organization; this operation is irreversible and idempotent." }, { "slug": "SENTRY_DELETE_ORGANIZATION_MEMBER", "name": "Delete organization member", "description": "Permanently removes a member from a Sentry organization, revoking their access to that organization and all its associated projects." }, { "slug": "SENTRY_DELETE_ORGANIZATION_MONITOR", "name": "Delete organization monitor", "description": "Deletes a Sentry cron monitor or, if `environment` is specified, only specific environments within that monitor." }, { "slug": "SENTRY_DELETE_ORGANIZATION_RELEASE", "name": "Delete organization release", "description": "Permanently and irreversibly removes a Sentry release, including all its associated files, identified by its version from the specified organization." }, { "slug": "SENTRY_DELETE_ORGANIZATION_RELEASE_FILE", "name": "Delete organization release file", "description": "Tool to delete a file from an organization release. Use when you need to remove a specific file associated with a release version in an organization." }, { "slug": "SENTRY_DELETE_ORG_NOTIFICATION_ACTION", "name": "Delete org notification action", "description": "Deletes a specific Spike Protection Notification Action for a Sentry organization, where `action_id` must be a valid action associated with the `organization_id_or_slug`." }, { "slug": "SENTRY_DELETE_PROJECT_BY_ID", "name": "Delete project by id", "description": "Schedules a Sentry project for asynchronous deletion within a specified organization, hiding it from most public views once the process begins." }, { "slug": "SENTRY_DELETE_PROJECT_HOOK", "name": "Delete project hook", "description": "Deletes a specific service hook from a Sentry project using its organization, project, and hook identifiers." }, { "slug": "SENTRY_DELETE_PROJECT_ISSUES", "name": "Delete project issues", "description": "Permanently removes specified issues from a Sentry project; if no issue IDs are provided, it removes the oldest 1000 issues." }, { "slug": "SENTRY_DELETE_PROJECT_KEY", "name": "Delete project key", "description": "Permanently deletes a specific client key (DSN) for a project, preventing it from being used to send events to Sentry." }, { "slug": "SENTRY_DELETE_PROJECT_MONITOR", "name": "Delete project monitor", "description": "Deletes a Sentry monitor, or optionally only its specified environments, for a given project." }, { "slug": "SENTRY_DELETE_PROJECT_REPLAY", "name": "Delete project replay", "description": "Permanently deletes a specific Sentry session replay (a video-like reproduction of user interactions, including console logs and network activity) from the specified project and organization." }, { "slug": "SENTRY_DELETE_PROJECT_RULE", "name": "Delete project rule", "description": "Permanently deletes a specific issue alert rule from an existing project within an existing Sentry organization." }, { "slug": "SENTRY_DELETE_PROJECT_TEAM_ASSOCIATION", "name": "Delete project team association", "description": "Revokes a team's access to a Sentry project; this operation is idempotent." }, { "slug": "SENTRY_DELETE_RELEASE_FILE_BY_ID", "name": "Delete release file by id", "description": "Permanently deletes a specific build artifact (e.g., source map, application bundle) associated with a project release." }, { "slug": "SENTRY_DELETE_SYMBOL_SOURCE_FROM_PROJECT", "name": "Delete a symbol source from a project", "description": "Deletes a custom symbol source from a Sentry project. Use when you need to remove a symbol source that is no longer needed or needs to be reconfigured." }, { "slug": "SENTRY_DELETE_TEAM_BY_ORGANIZATION_OR_TEAM_SLUG", "name": "Delete team by organization and team slug", "description": "Schedules a Sentry team for asynchronous deletion, which releases the team's slug for reuse upon successful scheduling." }, { "slug": "SENTRY_DELETE_TEAM_FROM_ORG_SCIM_V2", "name": "Delete a team from an organization (SCIM v2)", "description": "Permanently and irreversibly deletes a specific team from a Sentry organization via a SCIM v2 request, provided SCIM integration is enabled for the organization." }, { "slug": "SENTRY_DELETE_USER_EMAILS_BY_ID", "name": "Delete user emails by id", "description": "Permanently removes a Sentry user's email address; if multiple emails exist, Sentry's API logic (e.g., primary or previously marked) determines which is deleted." }, { "slug": "SENTRY_DELETE_USER_FROM_ORG", "name": "Delete user from org", "description": "Removes a SCIM-managed member from a Sentry organization that has SCIM enabled, permanently revoking their access." }, { "slug": "SENTRY_DISABLE_SPIKE_PROTECTION", "name": "Disable spike protection", "description": "Disables Spike Protection feature for specified projects within a Sentry organization. Use this when you need to turn off spike protection for one or more projects." }, { "slug": "SENTRY_FETCH_ALERTS", "name": "Fetch alerts", "description": "Retrieves a list of alerts (workflows) for a Sentry organization. Use to get alert configurations, statuses, and trigger details. ⚠️ Note: This endpoint is currently in beta and may be subject to change. It is supported by New Monitors and Alerts and may not be viewable in the UI today." }, { "slug": "SENTRY_FETCH_A_MONITOR", "name": "Fetch a monitor", "description": "Fetches detailed information for a specific monitor (detector) within an organization. Use when you need to retrieve monitor configuration, status, or settings. This endpoint is currently in beta and is supported by New Monitors and Alerts." }, { "slug": "SENTRY_FETCH_AN_ALERT", "name": "Fetch an alert", "description": "Retrieves detailed information for a specific alert workflow. Use when you need to get alert configuration, triggers, action filters, or monitoring status. This endpoint is currently in beta and supported by New Monitors and Alerts." }, { "slug": "SENTRY_FETCH_AN_ORGANIZATIONS_MONITORS", "name": "Fetch an organization's monitors", "description": "Retrieves monitors (detectors) for a Sentry organization. This endpoint is currently in beta and may be subject to change. Use when you need to list or query monitors for an organization." }, { "slug": "SENTRY_FETCH_ISSUE_EVENT_BY_ID", "name": "Fetch issue event by id", "description": "Retrieves the 'latest', 'oldest', or 'recommended' event for a Sentry issue within an organization, optionally filtered by environment(s)." }, { "slug": "SENTRY_FETCH_ORGANIZATION_ALERT_RULES", "name": "Fetch organization alert rules", "description": "Retrieves a list of active metric alert rules for an existing Sentry organization, identified by its ID or slug. Note: This endpoint returns metric alert rules only. If no metric alert rules exist for the organization, the API may return a 404 response which is handled gracefully by returning an empty list. For issue alert rules, use the project-level rules endpoint instead." }, { "slug": "SENTRY_FETCH_ORGANIZATION_RELEASE_THRESHOLD_STATUSES", "name": "Fetch organization release threshold statuses", "description": "Retrieves derived health statuses for release thresholds in a Sentry organization for a given time range, optionally filtered by environment, project, or release; `start` and `end` times must be provided together. **`[WARNING]`**: This API is experimental (Alpha) and subject to change!" }, { "slug": "SENTRY_FETCH_ORGANIZATION_REPLAY_COUNT", "name": "Fetch organization replay count", "description": "Retrieves the total count of session replays for a specified Sentry organization, filterable by time range, environment, project, and query." }, { "slug": "SENTRY_FETCH_ORGANIZATION_REPLAY_DETAILS", "name": "Fetch organization replay details", "description": "Retrieves detailed information for a specific replay session by ID within a Sentry organization, optionally filtering time-series data using `statsPeriod` or `start`/`end`, and further refining by projects, environments, or specific fields." }, { "slug": "SENTRY_FETCH_ORGANIZATION_REPLAY_SELECTORS", "name": "Fetch organization replay selectors", "description": "Retrieves replay selectors (CSS/DOM selectors from session replays) for a Sentry organization. Selectors include elements with dead clicks or rage clicks, useful for identifying UI issues. Returns selector details with click counts and associated project IDs. Use `statsPeriod` for time filtering (preferred over start/end)." }, { "slug": "SENTRY_FETCH_PROJECT_ENVIRONMENT_DETAILS", "name": "Fetch project environment details", "description": "Retrieves detailed information for a specific environment within a Sentry project." }, { "slug": "SENTRY_FETCH_PROJECT_OWNERSHIP_DETAILS", "name": "Fetch project ownership details", "description": "Retrieves the ownership configuration, like CODEOWNERS rules or Issue Owner settings, for a specified Sentry project." }, { "slug": "SENTRY_FETCH_PROJECT_RELEASE_FILES", "name": "Fetch project release files", "description": "Retrieves artifact files (e.g., source maps, debug information files) for a specific release version in a Sentry project; requires existing organization, project, and release version with associated files." }, { "slug": "SENTRY_FETCH_PROJECT_REPLAY_CLICKS", "name": "Fetch project replay clicks", "description": "Fetches a list of user click interactions for a specific Sentry session replay, including the clicked DOM element ID and timestamp." }, { "slug": "SENTRY_FETCH_REPLAY_RECORDING_SEGMENT", "name": "Fetch replay recording segment", "description": "Retrieves a specific recording segment for a Sentry replay, requiring valid organization, project, replay, and segment identifiers." }, { "slug": "SENTRY_FETCH_TAG_VALUES_FOR_ISSUE", "name": "Fetch Tag Values for Issue", "description": "Retrieves a list of distinct values for a specified tag key associated with an existing Sentry issue, useful for understanding tag manifestations like browser versions or affected users." }, { "slug": "SENTRY_GET_ACTIVATION_OF_ALERT_RULE_FOR_ORGANIZATION", "name": "Get activation of alert rule for organization", "description": "DEPRECATED: Retrieves all activations for a specific metric alert rule. ⚠️ WARNING: This endpoint has been removed from Sentry as of January 2025. The AlertRuleActivations feature was never fully released and has been completely removed from the Sentry codebase (database tables dropped in migration 0814). This action is retained for backwards compatibility but will fail with 404 errors. Sources: - https://github.com/getsentry/sentry/issues/81970 - https://github.com/getsentry/sentry/pull/83280 - https://github.com/getsentry/sentry/pull/83255" }, { "slug": "SENTRY_GET_ALERTS", "name": "Get alerts and monitors", "description": "Tool to retrieve all combined alert rules and monitors for a Sentry organization. Use when you need to get a unified view of both alert rules and cron monitors. This endpoint combines results from multiple sources into a single response." }, { "slug": "SENTRY_GET_INTEGRATION_DETAILS_BY_ORG", "name": "Get integration details by org", "description": "Retrieves details for a specific integration, identified by `integration_id`, installed within an existing Sentry organization, identified by `organization_id_or_slug`." }, { "slug": "SENTRY_GET_OLDEST_EVENT", "name": "Get oldest event", "description": "Retrieves the oldest (first) event associated with a Sentry issue within an organization. Use this action when you need to investigate the original occurrence of an issue to understand its root cause or initial context. This is particularly useful for debugging issues from their first appearance, analyzing initial error conditions, or determining when a problem first started occurring." }, { "slug": "SENTRY_GET_ORGANIZATION_BY_ID_OR_SLUG", "name": "Get organization by id or slug", "description": "Retrieves a Sentry organization by its ID or slug; use the `detailed` parameter to optionally exclude project and team details for a more concise response." }, { "slug": "SENTRY_GET_ORGANIZATION_DETAILS", "name": "Get organization details", "description": "Retrieves Sentry organizations accessible via the current authentication, with scope varying between user (all in region) and API key (linked org only) credentials." }, { "slug": "SENTRY_GET_ORGANIZATION_ENVIRONMENTS", "name": "Get organization environments", "description": "Lists deployment environments for a Sentry organization, optionally filtered by visibility status. Environments represent deployment contexts like 'production', 'staging', or 'development' where events are tracked. By default, only visible environments are returned. Use the visibility parameter to include hidden environments or view only hidden ones." }, { "slug": "SENTRY_GET_ORGANIZATION_ISSUE_DETAILS", "name": "Get organization issue details", "description": "Retrieves detailed information for a specific issue within a Sentry organization. Accepts both numeric issue IDs (e.g., '7159174717') and short IDs displayed in the Sentry UI (e.g., 'PROJECT-123', 'SENTRY-4V'). Short IDs are automatically resolved to numeric IDs before fetching issue details." }, { "slug": "SENTRY_GET_ORGANIZATION_RELEASE_VERSION", "name": "Get organization release version", "description": "Retrieves detailed information, including optional health data and statistics, for a specific release version within a Sentry organization." }, { "slug": "SENTRY_GET_ORGANIZATION_SESSIONS", "name": "Get organization sessions", "description": "Retrieves time series data for an organization's Sentry project release health sessions; note session duration data (e.g., using `avg(session.duration)`) may be incomplete after Jan 12, 2023, results are capped at 10,000 data points, `statsPeriod` overrides `start`/`end` timestamps, and the `interval` parameter (default/min '1h', max '1d', format like `statsPeriod`) dictates time series resolution and must cleanly divide one day." }, { "slug": "SENTRY_GET_ORGANIZATION_STATS_SUMMARY", "name": "Get organization stats summary", "description": "Retrieves summarized event statistics for a Sentry organization, aggregated by project, allowing queries for event counts or unique occurrences over a specified time period and resolution, with filtering by project, category, and outcome." }, { "slug": "SENTRY_GET_PROJECT_EVENTS", "name": "Get project events", "description": "Retrieves a list of error events for a specified project within a Sentry organization, with options for pagination and detail level." }, { "slug": "SENTRY_GET_PROJECT_EVENT_STATS", "name": "Get project event stats", "description": "Retrieves time-series event statistics for a Sentry project. Returns an array of [timestamp, count] data points showing event volumes over time. Use this to analyze event trends, monitor error rates, or generate custom dashboards. The endpoint supports different event types (received, rejected, blacklisted, generated) and time resolutions (10s, 1h, 1d). **Important**: This endpoint may change in the future without notice. Monitor Sentry's API changelog for updates. **Common use cases**: - Monitor error rates over time - Analyze event rejection patterns - Generate custom analytics dashboards - Track event volume trends" }, { "slug": "SENTRY_GET_PROJECT_HOOK", "name": "Get project hook", "description": "Retrieves detailed information for an existing service hook within a Sentry project. Service hooks (webhooks) are HTTP callbacks that notify external systems when specific events occur in Sentry, such as when alerts are triggered ('event.alert') or new events are processed ('event.created'). This action requires: - Authentication with 'project:read' scope - The hook_id (GUID) of an existing service hook, typically obtained from creating a hook or listing project hooks Common use cases: - Verifying hook configuration and status - Retrieving the webhook URL and secret for external system setup - Checking which events the hook is subscribed to - Auditing hook creation timestamps Note: The 'servicehooks' feature must be enabled on your Sentry plan to create or manage hooks, though reading existing hook details may be possible depending on your API permissions." }, { "slug": "SENTRY_GET_PROJECT_LIST", "name": "Get project list", "description": "Lists all Sentry projects the authenticated token has membership access to across all organizations. IMPORTANT: This endpoint returns projects where the token's user is a member. An empty result does NOT mean no projects exist - it means the token lacks project membership. This commonly happens when: - The auth token has organization-level access but not explicit project membership - Projects exist in organizations you can access, but you're not a project member If you receive an empty list but know projects exist, use SENTRY_RETRIEVE_ORGANIZATION_PROJECTS instead, which lists all projects within a specific organization (requires organization_id_or_slug parameter)." }, { "slug": "SENTRY_GET_PROJECT_MONITOR_BY_ID", "name": "Get project monitor by id", "description": "Retrieves detailed information for a specific Sentry cron monitor, provided the organization, project, and monitor exist." }, { "slug": "SENTRY_GET_PROJECT_RULE_DETAILS", "name": "Get project rule details", "description": "Retrieves detailed information for a specific issue alert rule within a Sentry project." }, { "slug": "SENTRY_GET_SCIM_GROUP_BY_TEAM_ID", "name": "Get SCIM group by team ID", "description": "Retrieves SCIM group information for a specific Sentry team. Returns the team's SCIM representation including ID, display name, and member list (limited to 10,000 members). Requires SCIM to be enabled for the organization (Business Plan with SAML2). Use this to query team details via the SCIM protocol for identity provider integrations." }, { "slug": "SENTRY_GET_SENTRY_APP_INSTALLATIONS_FOR_ORGANIZATION", "name": "Get sentry app installations for organization", "description": "Retrieves a list of Sentry App installations for a given organization, which must exist." }, { "slug": "SENTRY_GET_TEAM_MEMBERS_BY_ID_OR_SLUG", "name": "Get team members by id or slug", "description": "Retrieves all active members of a Sentry team with detailed user information, roles, and permissions. This endpoint returns members who have accepted their team invitation. Users with pending invitations are excluded from the results. Each member object includes comprehensive details such as user profile information, organization and team roles, authentication status, and membership flags." }, { "slug": "SENTRY_GET_WHO_VIEWED_REPLAY_BY_PROJECT", "name": "Get who viewed replay by project", "description": "Retrieves users who viewed a specific, existing session replay within a Sentry project and organization." }, { "slug": "SENTRY_INGEST_EVENT_VIA_DSN", "name": "Ingest event via DSN", "description": "Ingests a single custom event into a Sentry project using its DSN via the Envelope ingestion endpoint. This may create or update an issue group depending on Sentry's grouping algorithm. Note: Sentry does not provide a direct API to 'create an issue group'; issues are created from ingested events. This tool allows controlled generation of events for testing or workflows requiring synthetic events." }, { "slug": "SENTRY_LIST_AN_ORGANIZATION_S_CLIENT_KEYS", "name": "List an organization's client keys", "description": "Lists all client keys (DSNs) across all projects in an organization. Use when you need to audit keys organization-wide or filter keys by team or status." }, { "slug": "SENTRY_LIST_AN_ORGANIZATIONS_ISSUES", "name": "List an organization's issues", "description": "Returns a list of issues (error groups) for an organization. Use when you need to retrieve and analyze error patterns, track unresolved issues, or monitor issue trends. Default query applies 'is:unresolved issue.priority:[high,medium]'." }, { "slug": "SENTRY_LIST_A_PROJECTS_USER_FEEDBACK", "name": "List a project's user feedback", "description": "Retrieves a list of legacy user feedback items within a Sentry project. Use when you need to see user-reported feedback on errors. Note: This returns legacy User Reports, not submissions from the User Feedback Widget." }, { "slug": "SENTRY_LIST_A_TAGS_VALUES_FOR_AN_ISSUE", "name": "List a tag's values for an issue", "description": "Returns a list of values associated with this key for an issue. Use when you need to analyze tag values, their frequency, or timeline for specific issue tags." }, { "slug": "SENTRY_LIST_ORGANIZATION_DASHBOARDS", "name": "List organization dashboards", "description": "Retrieves a list of custom dashboards for a Sentry organization, with pagination support." }, { "slug": "SENTRY_LIST_ORGANIZATION_MEMBERS", "name": "List organization members", "description": "Lists all members, including those with pending invitations, for a Sentry organization." }, { "slug": "SENTRY_LIST_ORGANIZATION_RELEASES", "name": "List organization releases", "description": "Retrieves a list of releases for an existing Sentry organization, optionally filtering by a query string that matches the start of the release version." }, { "slug": "SENTRY_LIST_ORGANIZATION_REPOSITORIES", "name": "List organization repositories", "description": "Retrieves a list of version control repositories for a specific Sentry organization, which must exist and is identified by its ID or slug." }, { "slug": "SENTRY_LIST_ORGANIZATIONS", "name": "List organizations", "description": "Retrieves a list of organizations available to the authenticated session. Use this action when you need to discover which organizations the user has access to before performing operations on a specific organization. This is essential for organization-bound operations that require an organization_id_or_slug parameter. Note that API key requests only return the associated organization." }, { "slug": "SENTRY_LIST_ORGANIZATION_USER_TEAMS", "name": "List User's Teams in Organization", "description": "Retrieves a list of all teams that the authenticated user has access to within the specified Sentry organization." }, { "slug": "SENTRY_LIST_PROJECT_TAGS", "name": "List project tags", "description": "Retrieves all tags that have been recorded for events within a Sentry project, along with statistical information for each tag. Use when you need to understand what tags are available in a project and their usage patterns. This provides an overview of tag distribution and helps identify commonly used tags for filtering and analysis." }, { "slug": "SENTRY_LIST_PROJECT_USERS", "name": "List project users", "description": "Retrieves users who have interacted with or are recognized within a specific Sentry project, optionally filtered by a query." }, { "slug": "SENTRY_LIST_SCIM_V2_ORGANIZATION_USERS", "name": "List SCIM v2 organization users", "description": "Retrieves a paginated list of SCIM (System for Cross-domain Identity Management) users for a Sentry organization, allowing for filtering, pagination, and attribute exclusion." }, { "slug": "SENTRY_LIST_SEER_AI_MODELS", "name": "List Seer AI models", "description": "Retrieves the list of AI models currently used in production in Seer. Use when you need to discover which LLM models Seer is actively using." }, { "slug": "SENTRY_LIST_TEAMS_IN_ORGANIZATION", "name": "List teams in organization", "description": "Lists teams for an existing Sentry organization, optionally including project details and supporting pagination via a cursor." }, { "slug": "SENTRY_MANAGE_TEAM_EXTERNAL_INTEGRATIONS", "name": "Create an external team", "description": "Links an external team or channel (e.g., Slack, GitHub) to an existing Sentry team, using a pre-configured integration for the specified provider and its valid Sentry integration ID." }, { "slug": "SENTRY_MODIFY_ORGANIZATION_NOTIFICATION_ACTION", "name": "Modify organization notification action", "description": "Modifies an organization's notification action, specifically for `spike-protection` triggers." }, { "slug": "SENTRY_MODIFY_ORGANIZATION_SETTINGS", "name": "Modify organization settings", "description": "Updates settings for a Sentry organization, such as name, slug, member roles, privacy, and integrations; if `avatarType` is 'upload', `avatar` (base64 image) is required." }, { "slug": "SENTRY_MODIFY_RELEASE_FILE_ATTRIBUTES", "name": "Modify release file attributes", "description": "Updates attributes (e.g., name, distribution) of a specific file within an existing release, identified by organization, version, and file ID." }, { "slug": "SENTRY_MUTATE_AN_ORGANIZATION_S_ALERTS", "name": "Mutate an organization's alerts", "description": "Bulk enable or disable alerts for an organization. Use when you need to activate or deactivate multiple alerts at once. This endpoint is in beta and may change in the future." }, { "slug": "SENTRY_MUTATE_AN_ORGANIZATIONS_MONITORS", "name": "Mutate an organization's monitors", "description": "Bulk enable or disable monitors for an organization. This endpoint is in beta and may change. Use when you need to enable or disable multiple monitors at once based on filters." }, { "slug": "SENTRY_PATCH_SCIM_GROUP_OPERATIONS", "name": "Patch SCIM group operations", "description": "Performs SCIM PATCH operations (RFC 7644) to update attributes of a SCIM-enabled Sentry team, provided SCIM integration is active for the organization." }, { "slug": "SENTRY_PATCH_USER_ACTIVE_STATUS_IN_ORGANIZATION", "name": "Deactivate an organization member", "description": "Deactivates and permanently deletes a Sentry organization member by using a SCIM PATCH operation to set their 'active' attribute to 'false'." }, { "slug": "SENTRY_POST_SPIKE_PROTECTION_FOR_ORGANIZATION", "name": "Enable spike protection for an organization", "description": "Enables or updates Spike Protection for specified projects (or all projects using `['$all']`) within an existing Sentry organization, to which the projects must belong." }, { "slug": "SENTRY_QUERY_EXPLORE_EVENTS_IN_TIMESERIES_FORMAT", "name": "Query explore events in timeseries format", "description": "Retrieves explore data for a given organization as a timeseries. Use this to query timeseries data for 1 or many axis, with results optionally grouped by top events depending on parameters." }, { "slug": "SENTRY_RETRIEVE_A_CUSTOM_INTEGRATION_BY_ID_OR_SLUG", "name": "Retrieve a custom integration by id or slug", "description": "Retrieves detailed information about a custom integration (Sentry App) by its slug. Use this action when you need to: - Get configuration details of a custom integration including scopes, webhooks, and OAuth settings - Check the status and permissions of an integration - Retrieve integration metadata such as name, description, and avatar - Verify which events an integration subscribes to Note: Provide the integration's slug (case-sensitive), not its UUID." }, { "slug": "SENTRY_RETRIEVE_AGGREGATED_TEST_RESULT_METRICS", "name": "Retrieve aggregated test result metrics", "description": "Retrieves aggregated test result metrics for a repository, owner, and organization. Use when you need to analyze test performance and reliability metrics for a specific repository." }, { "slug": "SENTRY_RETRIEVE_ALERT_RULE_DETAILS", "name": "Retrieve alert rule details", "description": "Retrieves detailed information for a specific metric alert rule within a Sentry organization. Note: This endpoint is specifically for metric alert rules (organization-level alerts based on metrics like error count, latency, failure rate, etc.). For issue alert rules (project-level alerts triggered by events), use the project rules endpoint instead. The API may return 404 if: - The alert rule ID does not exist - The organization does not have metric alerts enabled - The organization does not exist or you don't have access" }, { "slug": "SENTRY_RETRIEVE_A_MONITOR", "name": "Retrieve a monitor", "description": "Retrieves detailed information for a specific monitor within an organization. Use when you need to check monitor configuration, status, schedule, environments, or alert settings." }, { "slug": "SENTRY_RETRIEVE_COMMIT_FILES_FOR_RELEASE", "name": "Retrieve commit files for release", "description": "Retrieves files changed in commits for a specified Sentry release; the release must exist and have linked commits." }, { "slug": "SENTRY_RETRIEVE_COMMITS_FOR_ORGANIZATION_REPO", "name": "Retrieve an organization's repository commits", "description": "Retrieves a list of commits for a given repository within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_CUSTOM_INTEG_ISSUE_LINKS_GIVEN_SENTRY_ISSUE", "name": "Retrieve custom integration issue links", "description": "Retrieves all external issue links for a Sentry issue. Returns connections between the Sentry issue and external tracking systems (e.g., Jira, GitHub Issues, Linear, GitLab, Asana) created through custom integrations or Sentry Apps. Use this to see what external tickets or issues are linked to a Sentry error." }, { "slug": "SENTRY_RETRIEVE_DATA_FORWARDERS_FOR_AN_ORGANIZATION", "name": "Retrieve data forwarders for an organization", "description": "Returns a list of data forwarders for an organization. Use when you need to retrieve all data forwarders configured for a specific organization." }, { "slug": "SENTRY_RETRIEVE_DSYM_FILES_FOR_PROJECT", "name": "Retrieve dsym files for project", "description": "Retrieve a list of debug information files (dSYM files) for a specified Sentry project, used for symbolication to display human-readable stack traces." }, { "slug": "SENTRY_RETRIEVE_EVENT_ID_FOR_ORGANIZATION", "name": "Retrieve event id for organization", "description": "Resolves a Sentry event ID to its project and issue details within an accessible Sentry organization." }, { "slug": "SENTRY_RETRIEVE_FILES_FOR_RELEASE", "name": "Retrieve files for release", "description": "Retrieves artifact files for a specific release version in a Sentry organization; the organization and release must exist, and the response `data` field will contain the file information as a dictionary." }, { "slug": "SENTRY_RETRIEVE_ISSUE_EVENTS_BY_ID", "name": "Retrieve issue events by id", "description": "Retrieves events for a specified Sentry `issue_id`, which must be an existing issue." }, { "slug": "SENTRY_RETRIEVE_ISSUE_HASHES_FOR_ORGANIZATION", "name": "Retrieve issue hashes for organization", "description": "Retrieves a list of grouping checksums (hashes) generated by Sentry for a specific issue within an organization, used for understanding event aggregation." }, { "slug": "SENTRY_RETRIEVE_ISSUE_TAG_DETAILS", "name": "Retrieve issue tag details", "description": "Retrieves detailed information (e.g., top values, counts) for a specific tag key on an existing Sentry issue; results are paginated (max 1000 values per page)." }, { "slug": "SENTRY_RETRIEVE_MONITOR_CHECKINS", "name": "Retrieve monitor checkins", "description": "Retrieves the history of check-ins for a Sentry monitor, providing insights into the health and performance of associated scheduled tasks." }, { "slug": "SENTRY_RETRIEVE_MONITOR_CHECKINS_BY_ORG", "name": "Retrieve monitor checkins by org", "description": "Retrieves check-ins (pings/heartbeats of a monitored cron job or task) for a specific monitor within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_NOTIFICATION_ACTION_BY_ORG_ID", "name": "Retrieve notification action by org id", "description": "Retrieves details for a specific Spike Protection Notification Action, which defines alerts for triggered spike protection rules, within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_DASHBOARD", "name": "Retrieve organization dashboard", "description": "Fetches detailed information about a specific custom dashboard within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_EVENTS", "name": "Retrieve organization events", "description": "Retrieves Discover event data for a Sentry organization; the `sort` field must be in the `field` list (not an equation), and `field` has a 20-item limit." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_INTEGRATIONS_LIST", "name": "Retrieve organization integrations list", "description": "Retrieves a list of available integrations for an existing Sentry organization." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_MEMBER", "name": "Retrieve organization member", "description": "Retrieves details for a Sentry organization member or pending invitee, including role, teams, and status, using their member ID and the organization's ID or slug." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_MONITORS", "name": "Retrieve organization monitors", "description": "Retrieves cron monitors for a Sentry organization, including details of nested monitor environments." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_PROJECTS", "name": "Retrieve organization projects", "description": "Retrieves a list of Sentry projects for a specified organization (which must be accessible), supporting pagination via cursor. Note: The {region} placeholder in the base URL is handled by the ApiAction framework, which overrides it with the base_url from auth metadata (typically 'https://sentry.io'). This ensures correct URL construction regardless of the region placeholder in the template." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_RELAY_USAGE", "name": "Retrieve organization relay usage", "description": "Retrieves a list of trusted Sentry Relays configured for an organization. Sentry Relay is a service that proxies events between your application and Sentry. This endpoint returns the configuration of trusted relays registered for an organization. Each trusted relay entry includes details such as the relay name, public key for authentication, and a description of its purpose. Note: This feature is typically available for organizations on Business and Enterprise plans that have Relay infrastructure enabled. Organizations without any configured relays will return an empty list. Use this to: - View all trusted relays configured for your organization - Verify relay configurations and public keys - Audit relay infrastructure setup" }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_RELEASE_COMMITS", "name": "Retrieve organization release commits", "description": "Retrieves a list of commits for a given release version in an existing Sentry organization, if the release exists." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_REPLAYS", "name": "Retrieve organization replays", "description": "Fetches session replays for a Sentry organization; use `statsPeriod` for relative time, or `start` and `end` (used together) for absolute time ranges." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_SCIM_GROUPS", "name": "Retrieve organization SCIM groups", "description": "Retrieves a paginated list of SCIM groups (teams) for a Sentry organization; the `members` field in the response for each group will contain at most 10,000 members." }, { "slug": "SENTRY_RETRIEVE_ORGANIZATION_STATS_V2", "name": "Retrieve organization stats v2", "description": "Retrieves Sentry organization event statistics; specify time range with `statsPeriod` OR both `start`/`end`; note that grouping by `project` returns a sum not a time-series, and `interval` (if used) must be 1h-1d and cleanly divide 24 hours." }, { "slug": "SENTRY_RETRIEVE_ORG_INTEGRATION_CONFIG", "name": "Retrieve org integration config", "description": "Retrieves configuration for all integrations, or a specific integration if `providerKey` is given, for an existing Sentry organization." }, { "slug": "SENTRY_RETRIEVE_PAGINATED_REPOSITORY_TOKENS", "name": "Retrieve paginated repository tokens", "description": "Retrieves a paginated list of repository tokens for a given owner. Use when you need to access repository tokens with pagination support." }, { "slug": "SENTRY_RETRIEVE_PROJECT_ENVIRONMENTS", "name": "Retrieve project environments", "description": "Retrieves a list of environments for an existing project within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_PROJECT_EVENT_BY_ID", "name": "Retrieve project event by id", "description": "Retrieves detailed information for a specific Sentry event using its ID, organization identifier, and project identifier." }, { "slug": "SENTRY_RETRIEVE_PROJECT_FILTER_DATA", "name": "Retrieve project filter data", "description": "Retrieves a Sentry project's current data filtering settings, used to ignore events from sources like localhost, web crawlers, or legacy browsers." }, { "slug": "SENTRY_RETRIEVE_PROJECT_HOOKS", "name": "Retrieve project hooks", "description": "Return a list of service hooks (webhooks) bound to a Sentry project, used to send notifications to external services upon event occurrences." }, { "slug": "SENTRY_RETRIEVE_PROJECT_ISSUES_LIST", "name": "Retrieve project issues list", "description": "Retrieves a list of issues for a Sentry project, defaulting to unresolved issues unless an empty `query` string is provided or specific `hashes` are used." }, { "slug": "SENTRY_RETRIEVE_PROJECT_KEY_DETAILS", "name": "Retrieve project key details", "description": "Retrieves details of a specific client key (DSN) for a Sentry project, which is used by Sentry SDKs to send event data." }, { "slug": "SENTRY_RETRIEVE_PROJECT_KEYS_BY_ORG_AND_PROJECT", "name": "List a project's client keys", "description": "Retrieves a list of client keys (DSNs), used by Sentry SDKs to send events, for a specified project within an organization." }, { "slug": "SENTRY_RETRIEVE_PROJECT_MEMBERS_LIST", "name": "Retrieve project members list", "description": "Retrieves active organization members belonging to any team assigned to the specified Sentry project." }, { "slug": "SENTRY_RETRIEVE_PROJECT_RELEASE_FILE_DETAILS", "name": "Retrieve project release file details", "description": "Retrieves metadata (default) or raw content (if `download` is true) for a specific file within a Sentry project's release version." }, { "slug": "SENTRY_RETRIEVE_PROJECT_RULES_BY_ORG_AND_PROJECT_ID", "name": "Retrieve project rules by org and project id", "description": "Retrieves a list of active issue alert rules associated with a specific project within an organization. Returns all active issue alert rules configured for the specified project, including their conditions, filters, actions, and metadata. This endpoint is useful for auditing alert configurations, managing alert rules programmatically, or understanding what alerts are active in a project." }, { "slug": "SENTRY_RETRIEVE_PROJECT_SYMBOL_SOURCES", "name": "Retrieve project symbol sources", "description": "Retrieves custom symbol sources for a Sentry project, either listing all or fetching a specific one if its ID is provided." }, { "slug": "SENTRY_RETRIEVE_PROJECT_TAG_VALUES", "name": "Retrieve project tag values", "description": "Retrieves up to 1000 unique values for a specified tag key that has been recorded for events within a Sentry project. Returns an empty list if the tag key doesn't exist or has no values recorded yet." }, { "slug": "SENTRY_RETRIEVE_PROJECT_TEAMS", "name": "Retrieve project teams", "description": "Retrieves a list of teams with explicit access to a specific project within a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_RELEASE_COMMITS", "name": "Retrieve release commits", "description": "Retrieves a list of commits associated with a specific release version within a Sentry project." }, { "slug": "SENTRY_RETRIEVE_RELEASE_DEPLOYMENTS", "name": "Retrieve release deployments", "description": "Retrieves a list of all deployment records for a specific release version in an organization, detailing each deployment's environment and timestamps." }, { "slug": "SENTRY_RETRIEVE_RELEASE_FILE_BY_ID", "name": "Retrieve release file by id", "description": "Retrieves a specific file's content or its metadata from a Sentry release, using the `download` parameter to choose between raw content or JSON metadata." }, { "slug": "SENTRY_RETRIEVE_REPLAY_RECORDING_SEGMENTS", "name": "Retrieve replay recording segments", "description": "Retrieves a paginated list of recording segments for a specific Sentry replay, used for reconstructing or analyzing the replay." }, { "slug": "SENTRY_RETRIEVE_SAVED_DISCOVER_QUERIES", "name": "Retrieve saved discover queries", "description": "Retrieves a paginated list of saved Discover queries for a Sentry organization. Returns saved query definitions that can be used to reproduce specific event searches and analyses. Supports filtering by name and sorting by various criteria (name, date, popularity, etc.). **Important**: This endpoint may return 404 if the Discover saved queries feature has been deprecated for the organization (organizations with 'discover-saved-queries-deprecation' feature flag). In such cases, the action gracefully returns an empty list with an explanatory message instead of failing. Organizations migrating to newer query systems may have this feature disabled." }, { "slug": "SENTRY_RETRIEVE_SAVED_DISCOVER_QUERY_FOR_ORGANIZATION", "name": "Retrieve saved discover query for organization", "description": "Retrieves a specific saved Discover query (a predefined set of filters and conditions for exploring event data) for a Sentry organization." }, { "slug": "SENTRY_RETRIEVE_SEER_ISSUE_FIX_STATE", "name": "Retrieve Seer issue fix state", "description": "Retrieves the current detailed state of an AI-assisted autofix process for a Sentry issue. Use when you need to check the progress, status, root cause analysis, proposed solutions, or code modifications for an autofix operation." }, { "slug": "SENTRY_RETRIEVE_SHORT_ID_FOR_ORGANIZATION", "name": "Retrieve short id for organization", "description": "Resolves a Sentry short ID (e.g., 'PROJECT-1A') to its complete issue details including organization slug, project slug, group ID, and full issue metadata. Use this to look up issue information when you have a short ID reference." }, { "slug": "SENTRY_RETRIEVE_SOURCE_MAP_DEBUG_EVENT", "name": "Retrieve source map debug event", "description": "Retrieves detailed debug information for diagnosing source map processing issues for a specific Sentry event, stack trace frame, and exception index. Note: The event must contain an exception with stack trace frames for this endpoint to return useful data." }, { "slug": "SENTRY_RETRIEVE_TEAM_INFO_VIA_ORGANIZATION_ID_OR_SLUG", "name": "Retrieve team info", "description": "Retrieves detailed information for an existing Sentry team within its organization, optionally expanding related data (e.g., projects) or collapsing sections (e.g., organization details)." }, { "slug": "SENTRY_RETRIEVE_TEAM_PROJECTS", "name": "Retrieve team projects", "description": "Retrieves a list of Sentry projects for a specific team within an organization, supporting pagination via a cursor." }, { "slug": "SENTRY_RETRIEVE_THE_CUSTOM_INTEGS_CREATED_BY_AN_ORG", "name": "Retrieve the custom integrations created by an organization", "description": "Retrieves custom integrations (Sentry Apps) created by an organization. Use when you need to list all custom integrations that the organization has developed." }, { "slug": "SENTRY_RETRIEVE_USER_EMAIL_INFORMATION", "name": "Retrieve user email information", "description": "Retrieves a list of email addresses for an existing Sentry user, identified by their `user_id`." }, { "slug": "SENTRY_RETRIEVE_USER_VIA_SCIM_API", "name": "Retrieve user via SCIM API", "description": "Retrieves an individual Sentry organization member's details using the SCIM v2 API. Returns a SCIM-formatted user resource containing the member's ID, username (email), email addresses, name (givenName and familyName), active status, and Sentry organization role. **Requirements**: This endpoint requires SCIM to be enabled for the organization, which requires a Business Plan subscription and SAML2 authentication enabled. A SCIM bearer token (not a regular API token) must be used for authentication. **Note**: Sentry's SCIM API does not support syncing passwords or setting user attributes other than 'active'." }, { "slug": "SENTRY_SAVE_ORGANIZATION_DISCOVER_QUERY", "name": "Save organization discover query", "description": "Saves a new Discover query with a unique name for a Sentry organization, allowing reuse of search criteria for analyzing event data (errors, transactions) across specified projects and environments." }, { "slug": "SENTRY_START_SEER_ISSUE_FIX", "name": "Start Seer issue fix", "description": "Trigger a Seer Issue Fix run for a specific issue. Use when you want to start an AI-assisted autofix process that operates asynchronously to identify root causes, propose solutions, generate code changes, and optionally create pull requests with fixes." }, { "slug": "SENTRY_SUBMIT_NOTIFICATION_ACTION_API_DATA", "name": "Submit notification action API data", "description": "Creates a Sentry notification action for 'spike-protection' triggers, requiring `integration_id` if `service_type` is 'slack', 'pagerduty', or 'opsgenie', and `target_identifier`/`target_display` if `service_type` is 'slack' or 'opsgenie'." }, { "slug": "SENTRY_SUBMIT_USER_FEEDBACK", "name": "Submit user feedback", "description": "Submits user feedback tied to a specific Sentry event. Use when you need to associate user-reported issues with specific error events. DEPRECATED: This endpoint is maintained for legacy SDKs; new implementations should use the User Feedback Widget. Feedback must be submitted within 30 minutes of event creation and can only be modified within 5 minutes of submission." }, { "slug": "SENTRY_SWITCH_TEAM_ROLE_FOR_MEMBER", "name": "Switch team role for member", "description": "Changes a member's role within a Sentry team, ensuring the member is already part of the team and that any organization-level role restrictions are respected." }, { "slug": "SENTRY_TOGGLE_PROJECT_FILTER_STATUS", "name": "Toggle project filter status", "description": "Updates the status or configuration of a specific inbound data filter for a Sentry project; use `active` for most filters, or `subfilters` if `filter_id` is `legacy-browsers`." }, { "slug": "SENTRY_UPDATE_A_MONITOR", "name": "Update a monitor", "description": "Updates a monitor's configuration and settings. Use when you need to modify monitor name, schedule, check-in margin, max runtime, timezone, or alert thresholds." }, { "slug": "SENTRY_UPDATE_A_MONITOR_BY_ID", "name": "Update a monitor by ID", "description": "Updates an existing Sentry monitor (detector) for metric-based issue detection. Use when you need to modify monitor configuration, thresholds, data sources, or enable/disable the monitor. Note: This endpoint is in beta and may change." }, { "slug": "SENTRY_UPDATE_AN_ALERT_BY_ID", "name": "Update an alert by ID", "description": "Tool to update an existing Sentry alert (workflow) by ID. Use when you need to modify alert settings like name, filters, triggers, or configuration. Note: This endpoint is in beta and supported by New Monitors and Alerts." }, { "slug": "SENTRY_UPDATE_AN_EXISTING_CUSTOM_INTEGRATION", "name": "Update an existing custom integration", "description": "Updates an existing custom integration (Sentry App) with new configuration. Use this action to modify integration settings such as name, scopes, webhook URL, or other configuration. You must provide the integration's slug or ID and the required fields (name and scopes)." }, { "slug": "SENTRY_UPDATE_A_PROJECTS_SYMBOL_SOURCE", "name": "Update a symbol source in a project", "description": "Updates an existing custom symbol source (HTTP, GCS, or S3) in a project for fetching debug symbols. Use when you need to modify the configuration of a symbol source identified by its ID." }, { "slug": "SENTRY_UPDATE_ENVIRONMENT_VISIBILITY", "name": "Update environment visibility", "description": "Updates the visibility of a specific environment within a Sentry project." }, { "slug": "SENTRY_UPDATE_EXTERNAL_TEAM_INTEGRATION", "name": "Update external team integration", "description": "Updates an existing external team integration's display name, provider, Sentry integration ID, or external ID; the `integration_id` must match a valid, configured Sentry integration for the organization and the specified `provider`." }, { "slug": "SENTRY_UPDATE_EXTERNAL_USER_FOR_ORGANIZATION", "name": "Update external user for organization", "description": "Updates attributes of an existing external user linkage (identified by `external_user_id`) within a Sentry organization (specified by `organization_id_or_slug`)." }, { "slug": "SENTRY_UPDATE_ISSUE_ATTRIBUTES_IN_ORGANIZATION", "name": "Update issue attributes in organization", "description": "Updates specified attributes of an existing Sentry issue within a Sentry organization, leaving other attributes unchanged." }, { "slug": "SENTRY_UPDATE_MONITOR_FOR_PROJECT", "name": "Update monitor for project", "description": "Updates a monitor for a project. Use when you need to modify monitor name, schedule, check-in margin, max runtime, timezone, status, owner, or alert thresholds for a project-level monitor." }, { "slug": "SENTRY_UPDATE_ORGANIZATION_ALERT_RULES", "name": "Update organization alert rules", "description": "Replaces an existing Sentry metric alert rule's configuration; fields not provided in the request are removed or reset. This action updates an existing metric alert rule. Note that this is a full replacement - any fields not provided will be removed or reset to defaults. Prerequisites: - The organization must have metric alerts feature enabled - The alert_rule_id must be a valid existing metric alert rule - Use SENTRY_FETCH_ORGANIZATION_ALERT_RULES to get existing alert rule IDs" }, { "slug": "SENTRY_UPDATE_ORGANIZATION_DASHBOARD", "name": "Update organization dashboard", "description": "Updates an existing custom dashboard, allowing modifications to its title, widgets, and data filters; providing `widgets`, `projects`, `environment`, `period`, `start`, `end`, or `filters` will overwrite existing settings for those fields." }, { "slug": "SENTRY_UPDATE_ORGANIZATION_MEMBER_ROLE", "name": "Update organization member role", "description": "Updates a Sentry organization member's organization-level role (`orgRole`) and/or their team roles (`teamRoles`), ensuring the initiator has permissions equivalent to both the member's current and intended new `orgRole` if `orgRole` is being modified." }, { "slug": "SENTRY_UPDATE_PROJECT_DETAILS", "name": "Update project details", "description": "Updates a Sentry project's settings (e.g., name, slug, platform, bookmark status); `isBookmarked` can be updated with `project:read` permission, other fields typically require `project:write` or `project:admin` permissions." }, { "slug": "SENTRY_UPDATE_PROJECT_ISSUE_STATUS_AND_DETAILS", "name": "Update project issue status and details", "description": "Bulk update attributes of issues in a Sentry project, targeting issues by a list of IDs or by a query status (which implies updating all matching issues if IDs are omitted)." }, { "slug": "SENTRY_UPDATE_PROJECT_KEY_CONFIGURATION", "name": "Update project key configuration", "description": "Updates configuration settings (e.g., name, status, rate limits, SDK options) for an existing Sentry client key (DSN), identified by `key_id`, within a specified `project_id_or_slug` and `organization_id_or_slug`." }, { "slug": "SENTRY_UPDATE_PROJECT_OWNERSHIP_SETTINGS", "name": "Update project ownership settings", "description": "Updates the ownership configuration settings (raw rules, fallthrough, auto-assignment, CODEOWNERS sync) for a Sentry project; omitted attributes retain their current values." }, { "slug": "SENTRY_UPDATE_PROJECT_RELEASE_FILE_DETAILS", "name": "Update project release file details", "description": "Updates the name (path) or distribution identifier of a specific file within an existing project release in Sentry." }, { "slug": "SENTRY_UPDATE_PROJECT_RULE_BY_ID", "name": "Update Project Rule By Id", "description": "Updates an existing Sentry project issue alert rule by `rule_id`, completely overwriting it; all rule fields must be provided in the request, as omitted fields may be cleared or reset to defaults." }, { "slug": "SENTRY_UPDATE_RELEASE_DETAILS_FOR_ORGANIZATION", "name": "Update release details for organization", "description": "Updates an existing Sentry release's details for an organization, including its reference, URL, release date, associated commits, or repository references." }, { "slug": "SENTRY_UPDATE_SAVED_QUERY_FOR_ORGANIZATION", "name": "Update a saved query for an organization", "description": "Updates an existing Discover saved query for a Sentry organization." }, { "slug": "SENTRY_UPDATE_TEAM_INFORMATION_BY_ORGANIZATION_ID", "name": "Update team information by organization id", "description": "Updates the slug for an existing team within a Sentry organization." }, { "slug": "SENTRY_UPDATE_USER_EMAIL", "name": "Update user email", "description": "Updates the primary email address for a Sentry user. The new email must already be added as a secondary email and be verified. **AUTHENTICATION REQUIREMENTS:** - Requires `user:write` scope - Typically requires a PERSONAL auth token (created from User Settings > Personal Tokens) - Internal integration tokens (organization-scoped) may not have permission for user-level operations **PREREQUISITES:** - The new email must already be added to the user's account as a secondary email - The email must be verified before it can be set as primary **COMMON ERRORS:** - 403 Forbidden: Token lacks user:write scope or is not a personal auth token - 400 Bad Request: Email is not already added to the account or is not verified" }, { "slug": "SENTRY_UPDATE_WEBHOOK_CONFIGURATION_XP", "name": "Update webhook configuration", "description": "Updates an existing Sentry service hook's target URL and subscribed event types for a given project and organization. Service hooks (webhooks) are HTTP callbacks that notify external systems when specific events occur in Sentry. This action allows you to modify the webhook's URL and change which events trigger notifications. Valid event types are: - 'event.alert': Triggered when alerts fire - 'event.created': Triggered when new events are processed Requirements: - Authentication with 'project:write' scope - The 'servicehooks' feature must be enabled for your Sentry plan - The hook_id must be a valid GUID from an existing service hook Common use cases: - Updating webhook URL when your endpoint changes - Modifying event subscriptions to receive different notification types - Reconfiguring webhooks for testing or production environments" }, { "slug": "SENTRY_UPLOAD_DSYMS_FILE_TO_PROJECT", "name": "Upload dsyms file to project", "description": "Uploads a dSYM (debug symbols) zip archive, containing an Apple .dSYM folder, to the specified Sentry project for symbolicating crash reports from Apple platforms." }, { "slug": "SENTRY_UPLOAD_FILE_TO_PROJECT_RELEASE", "name": "Upload file to project release", "description": "Uploads a file to a Sentry project release, for an existing organization, project, and version; uses `multipart/form-data` and the region-specific Sentry domain." }, { "slug": "SENTRY_UPLOAD_RELEASE_FILE_TO_ORGANIZATION", "name": "Upload release file to organization", "description": "Uploads a new file, such as a source map or debug information, to an existing release version in a Sentry organization." }, { "slug": "SENTRY_VALIDATE_CREDENTIAL", "name": "Validate credential", "description": "Validates Sentry API credentials by retrieving the authenticated user's information. Use this action when you need to verify that API credentials are valid and have not expired. This action returns the current user's profile along with authentication token details including scopes and expiration." }, { "slug": "SENTRY_VIEW_ORGANIZATION_NOTIFICATION_ACTIONS", "name": "View organization notification actions", "description": "Retrieves Spike Protection notification actions for a Sentry organization, filterable by project IDs or slugs (slugs take precedence); if `triggerType` is used, it must be 'spike-protection'." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "sentry_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "org:read,org:write,project:read,project:write,project:releases,team:read,team:write,member:read,member:write,event:read,event:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "snowflake", "name": "Snowflake", "logo": "https://logos.composio.dev/api/snowflake", "description": "Snowflake is a cloud-based data warehouse offering elastic scaling, secure data sharing, and SQL analytics across multiple cloud environments", "category": "databases", "authSchemes": [ "OAUTH2" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SNOWFLAKE_CANCEL_STATEMENT_EXECUTION", "name": "Cancel Statement Execution", "description": "Cancels the execution of a running SQL statement. Use this action to stop a long-running query." }, { "slug": "SNOWFLAKE_CHECK_STATEMENT_STATUS", "name": "Check Statement Status", "description": "Retrieves the status and results of a previously submitted SQL statement using its statement handle. Use this to poll async queries submitted via SNOWFLAKE_SUBMIT_SQL_STATEMENT; call repeatedly until status is no longer pending. Use SNOWFLAKE_CANCEL_STATEMENT to abort a hanging query." }, { "slug": "SNOWFLAKE_DROP_WAREHOUSE", "name": "Drop Warehouse", "description": "Drops (permanently deletes) a warehouse in Snowflake. This operation is irreversible — once a warehouse is dropped, it cannot be recovered. Use this action when you need to permanently remove a warehouse that is no longer needed. Requires OWNERSHIP privilege on the warehouse." }, { "slug": "SNOWFLAKE_EXECUTE_SQL", "name": "Execute SQL", "description": "Execute SQL statements in Snowflake and retrieve results. Supports SELECT queries for data retrieval, DDL statements (CREATE, ALTER, DROP) for schema management, and DML statements (INSERT, UPDATE, DELETE) for data modification. Returns comprehensive result metadata including column types, row counts, and execution status. Unquoted SQL identifiers are auto-uppercased by Snowflake — use matching case in `database`, `schema_name`, `warehouse`, and `role` parameters to avoid 'object not found' errors. Always apply explicit time-range filters and a LIMIT clause to unbounded SELECT queries to prevent large, slow result sets." }, { "slug": "SNOWFLAKE_FETCH_CATALOG_INTEGRATION", "name": "Fetch Catalog Integration", "description": "Retrieves detailed configuration and metadata for a specific catalog integration. Catalog integrations allow Snowflake to connect to external Apache Iceberg catalogs (AWS Glue, Snowflake Open Catalog/Polaris, or Apache Iceberg REST catalogs) to query Iceberg tables managed by those external systems." }, { "slug": "SNOWFLAKE_GET_ACTIVE_SCHEDULED_MAINTENANCES", "name": "Get Active Scheduled Maintenances", "description": "Retrieves a list of any active scheduled maintenances currently in the In Progress or Verifying state." }, { "slug": "SNOWFLAKE_GET_ALL_SCHEDULED_MAINTENANCES", "name": "Get All Scheduled Maintenances", "description": "Retrieves a list of the 50 most recent scheduled maintenances, including those in the Completed state." }, { "slug": "SNOWFLAKE_GET_COMPONENT_STATUS", "name": "Get Component Status", "description": "Retrieves the status of individual components, each listed with its current status." }, { "slug": "SNOWFLAKE_GET_STATUS_ROLLUP", "name": "Get Status Rollup", "description": "Retrieves the status rollup for the entire page, including indicators and human-readable descriptions of the blended component status." }, { "slug": "SNOWFLAKE_GET_STATUS_SUMMARY", "name": "Get Status Summary", "description": "Retrieves the current status summary from Snowflake's public status page (status.snowflake.com). Returns overall system status, operational status of all regional components (AWS, Azure, GCP regions), any unresolved incidents, and upcoming or in-progress scheduled maintenances. This is a public endpoint that provides global Snowflake service status, not account-specific information." }, { "slug": "SNOWFLAKE_GET_UNRESOLVED_INCIDENTS", "name": "Get Unresolved Incidents", "description": "Retrieves a list of any unresolved incidents from the Snowflake status page. This endpoint returns incidents currently in the Investigating, Identified, or Monitoring state. Returns an empty list if there are no active incidents. This is a public status page API that does not require authentication." }, { "slug": "SNOWFLAKE_GET_UPCOMING_SCHEDULED_MAINTENANCES", "name": "Get Upcoming Scheduled Maintenances", "description": "Retrieves upcoming scheduled maintenances from Snowflake's public status page. This action queries the Snowflake status API to get a list of any scheduled maintenance events that are still in the 'Scheduled' state (not yet started or completed). The response includes maintenance details such as impact level, scheduled time windows, incident updates, and direct links to the maintenance notices. Note: This uses Snowflake's public status API and does not require authentication." }, { "slug": "SNOWFLAKE_SHOW_DATABASES", "name": "Show Databases", "description": "Lists all databases for which you have access privileges. Shows database metadata including name, creation date, owner, retention time, and more. Can filter results and include dropped databases within Time Travel retention period." }, { "slug": "SNOWFLAKE_SHOW_SCHEMAS", "name": "Show Schemas", "description": "Lists all schemas for which you have access privileges. Shows schema metadata including name, creation date, owner, database, retention time, and more. Can filter results and include dropped schemas within Time Travel retention period." }, { "slug": "SNOWFLAKE_SHOW_TABLES", "name": "Show Tables", "description": "Lists all tables for which you have access privileges. Shows table metadata including name, creation date, owner, database, schema, row count, size in bytes, clustering keys, and more. Can filter results and include dropped tables within Time Travel retention period." }, { "slug": "SNOWFLAKE_SUBMIT_SQL_STATEMENT", "name": "Submit SQL Statement (Deprecated)", "description": "DEPRECATED: Use ExecuteSql instead. Submits a SQL statement for execution. Execution is asynchronous; monitor status with SNOWFLAKE_CHECK_STATEMENT_STATUS for long-running queries." }, { "slug": "SNOWFLAKE_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validates Snowflake credentials by executing a lightweight test query. Returns session information if credentials are valid, or error details if authentication fails. Use this action when you need to verify that API credentials are properly configured and have access to the Snowflake account before executing other operations. This check does not require compute resources (warehouse) and completes quickly." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "snowflake_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "refresh_token" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your Snowflake account identifier in 'orgname-accountname' format, e.g. 'myorg-account123'. In Snowsight, click your account (bottom left) → View account details.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hackernews", "name": "Hacker News", "logo": "https://logos.composio.dev/api/hackernews", "description": "Hacker News is a tech-focused news aggregator by Y Combinator, featuring user-submitted stories and discussions on startups, programming, and emerging trends", "category": "news & lifestyle", "authSchemes": [ "NO_AUTH" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HACKERNEWS_GET_ASK_STORIES", "name": "Get Ask HN Story IDs", "description": "Get up to 200 latest Ask HN story IDs from Hacker News. Returns an array of item IDs for Ask HN posts in ranked order." }, { "slug": "HACKERNEWS_GET_BEST_STORIES", "name": "Get Best HackerNews Stories", "description": "Get up to 500 best story IDs from HackerNews ranked by score. Returns story IDs only. Use the returned IDs with get_item_with_id action to fetch full story details." }, { "slug": "HACKERNEWS_GET_ITEM", "name": "Get Hacker News Item", "description": "Tool to get a Hacker News item by its unique ID from the Firebase API. Use when you need to retrieve details about a specific story, comment, job, poll, or pollopt." }, { "slug": "HACKERNEWS_GET_ITEM_WITH_ID", "name": "Get Hackernews Item", "description": "Get a specific item from Hacker News using its ID. Limits response size to prevent context overflow." }, { "slug": "HACKERNEWS_GET_JOB_STORIES", "name": "Get Job Story IDs", "description": "Get up to 200 latest job story IDs from Hacker News. Returns an array of item IDs for job postings that can be used to fetch full job details." }, { "slug": "HACKERNEWS_GET_LATEST_POSTS", "name": "Get Latest Hackernews Posts", "description": "Get the latest posts from Hacker News based on optional filters. Results can be limited using the size parameter." }, { "slug": "HACKERNEWS_GET_MAX_ITEM_ID", "name": "Get Max Item ID", "description": "Tool to get the current largest item ID from Hacker News. Use when you need to discover the most recent items or iterate through all items in the system by walking backward from this ID." }, { "slug": "HACKERNEWS_GET_NEW_STORIES", "name": "Get New Hacker News Stories", "description": "Get up to 500 newest story IDs from Hacker News. Returns an array of item IDs sorted by recency (most recent first). Use these IDs with the Get Item action to retrieve full story details." }, { "slug": "HACKERNEWS_GET_SHOW_STORIES", "name": "Get Show HN Stories", "description": "Tool to retrieve up to 200 latest Show HN story IDs from Hacker News. Use when you need to find recent Show HN posts where people share their projects, products, or creations." }, { "slug": "HACKERNEWS_GET_TOP_STORIES", "name": "Get Top HackerNews Stories", "description": "Get up to 500 top story IDs from HackerNews including jobs. Returns story IDs sorted by front page position. Use the returned IDs with get_item_with_id action to fetch full story details." }, { "slug": "HACKERNEWS_GET_UPDATES", "name": "Get Hacker News Updates", "description": "Get recently changed items and user profiles from Hacker News. Use this to monitor recent activity or updates on the platform." }, { "slug": "HACKERNEWS_GET_USER", "name": "Get Hacker News User", "description": "Retrieve a Hacker News user's public profile by their username. Returns the user's username, karma score, and optional bio/about text. Use this to look up information about HN community members." }, { "slug": "HACKERNEWS_GET_USER_BY_USERNAME", "name": "Get HackerNews User by Username", "description": "Tool to get a user profile by their case-sensitive username from the HackerNews Firebase API. Use when you need detailed user information including creation date, karma, bio, and submission history. Only users with public activity are available." }, { "slug": "HACKERNEWS_SEARCH_POSTS", "name": "Search Hackernews Posts", "description": "Search Hacker News posts using full-text search powered by Algolia. Use this action to find stories, comments, and discussions on Hacker News matching specific keywords. Supports filtering by post type (story, comment, show_hn, ask_hn) and by author." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "HackerNews", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "elevenlabs", "name": "ElevenLabs", "logo": "https://logos.composio.dev/api/elevenlabs", "description": "Create natural AI voices instantly in any language - perfect for video creators, developers, and businesses.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 155, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ELEVENLABS_ADD_A_PRONUNCIATION_DICTIONARY", "name": "Add a pronunciation dictionary from file", "description": "Adds a new pronunciation dictionary from a lexicon file to improve speech synthesis accuracy." }, { "slug": "ELEVENLABS_ADD_OUTBOUND_PHONE_NUMBER", "name": "Add outbound phone number", "description": "Tool to import/register a Twilio phone number or SIP trunk into ElevenLabs Agents Platform. Use when you need to provision a phone number for outbound calls and ELEVENLABS_GET_AGENT_DETAILS returns empty phone_numbers. This does NOT purchase a new number; it imports an existing provider configuration into your ElevenLabs workspace." }, { "slug": "ELEVENLABS_ADD_PROJECT", "name": "Add new project with attributes", "description": "Use to create a new ElevenLabs project for text-to-speech synthesis (e.g., audiobooks); a project `name` is required by the API for creation, and content can be initialized using `from_url` or `from_document`." }, { "slug": "ELEVENLABS_ADD_PRONUNCIATION_DICTIONARY_FROM_RULES", "name": "Add pronunciation dictionary from rules", "description": "Tool to create a new pronunciation dictionary from provided rules for ElevenLabs text-to-speech. Use when you need to define custom pronunciations for specific words or phrases to improve speech accuracy. Supports both alias rules (simple text replacements) and phoneme rules (IPA phonetic notation)." }, { "slug": "ELEVENLABS_ADD_RULES_TO_THE_PRONUNCIATION_DICTIONARY", "name": "Add rules to the pronunciation dictionary", "description": "Adds one or more custom pronunciation rules (alias or phoneme) to an existing pronunciation dictionary." }, { "slug": "ELEVENLABS_ADD_SHARING_VOICE", "name": "Add sharing voice", "description": "Adds an existing, shareable voice to a specified user's ElevenLabs account library under a new custom name, requiring the user's public ID and the voice ID." }, { "slug": "ELEVENLABS_ADD_VOICE", "name": "Add a voice", "description": "Adds a custom voice by uploading audio samples for voice cloning. Requires a name and at least one audio file. Recommended: 1-2 minutes of clear audio without background noise. Supported formats: mp3, wav, ogg. Returns a voice_id that can be used for text-to-speech after processing completes." }, { "slug": "ELEVENLABS_ATTACH_PHONE_NUMBER_TO_AGENT", "name": "Attach phone number to agent", "description": "Tool to assign or unassign an existing imported phone number to an agent by updating the phone number's assigned agent. Use when you need to programmatically route inbound calls to a specific agent or change agent assignment for a phone number." }, { "slug": "ELEVENLABS_CALCULATE_CONVAI_AGENT_LLM_USAGE", "name": "Calculate ConvAI Agent LLM Usage", "description": "Tool to calculate expected number of LLM tokens needed for a conversational AI agent. Use when estimating costs for an agent based on knowledge base size, prompt length, and RAG configuration." }, { "slug": "ELEVENLABS_CALCULATE_CONVAI_LLM_USAGE", "name": "Calculate ConvAI LLM Usage", "description": "Tool to calculate expected LLM usage costs for conversational AI agents. Use when you need to estimate pricing for different LLM models based on prompt length, knowledge base size, and RAG configuration." }, { "slug": "ELEVENLABS_CANCEL_CONVAI_BATCH_CALL", "name": "Cancel Batch Call", "description": "Tool to cancel a running batch call and set all recipients to cancelled status. Use when you need to stop an ongoing batch calling campaign." }, { "slug": "ELEVENLABS_CONVERT_CHAPTER", "name": "Convert chapter to audio", "description": "Converts the textual content of a chapter, identified by `chapter_id` within a `project_id`, into audio format." }, { "slug": "ELEVENLABS_CONVERT_PROJECT", "name": "Convert a project", "description": "Converts an existing ElevenLabs Studio project, including all its chapters and using its configured settings and voices, into speech." }, { "slug": "ELEVENLABS_CREATE_A_PREVIOUSLY_GENERATED_VOICE", "name": "Create a previously generated voice", "description": "Finalizes the creation of a voice using its `generated_voice_id` from a previous generation step by assigning a name, description, and optional labels." }, { "slug": "ELEVENLABS_CREATE_CONVAI_AGENT_TESTING", "name": "Create Conversational AI Agent Test", "description": "Tool to create a new ElevenLabs Conversational AI agent response test. Use when you need to set up automated testing for agent responses, tool calls, or conversation simulations. Supports three test types: 'llm' for response validation, 'tool_call' for tool execution verification, and 'simulation' for full conversation testing." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE", "name": "Add to ConvAI Knowledge Base", "description": "Tool to add documentation to ElevenLabs Conversational AI knowledge base by uploading a file or referencing a webpage URL. Use when you need to provide reference materials or documentation that agents can access during conversations. Exactly one of 'file' or 'url' must be specified." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE_FILE", "name": "Create ConvAI Knowledge Base File", "description": "Tool to create a knowledge base document from an uploaded file for ElevenLabs Conversational AI agents. Use when you need to provide documentation or reference material that agents can access during conversations. The uploaded file content will be indexed and made available to agents for answering user queries." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE_FOLDER", "name": "Create ConvAI Knowledge Base Folder", "description": "Tool to create a folder in the ElevenLabs ConvAI knowledge base for organizing documents. Use when you need to group related documents together in a hierarchical structure." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE_RAG_INDEX", "name": "Create ConvAI Knowledge Base RAG Index", "description": "Tool to compute or retrieve RAG indexes for multiple knowledge base documents in batch. Use when you need to enable semantic search on multiple knowledge base documents for conversational AI agents. This endpoint creates embeddings if missing or returns existing indexes, supporting up to 100 documents per request." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE_TEXT", "name": "Create Knowledge Base Text Document", "description": "Tool to create a knowledge base document with text content in ElevenLabs Conversational AI. Use when you need to add text-based information to the knowledge base for agent reference." }, { "slug": "ELEVENLABS_CREATE_CONVAI_KNOWLEDGE_BASE_URL", "name": "Create Knowledge Base URL Document", "description": "Tool to create a knowledge base document by scraping the given webpage. Use when you need to add a web page as a knowledge source for a conversational AI agent." }, { "slug": "ELEVENLABS_CREATE_CONVAI_SECRET", "name": "Create ConvAI Workspace Secret", "description": "Tool to create a new secret for the ElevenLabs ConvAI workspace. Use when you need to securely store API keys, tokens, or other sensitive values that your conversational AI agents can reference." }, { "slug": "ELEVENLABS_CREATE_CONVAI_TOOL", "name": "Create Conversational AI Tool", "description": "Tool to create a new conversational AI tool in ElevenLabs workspace. Use when adding custom tools for agents to execute during conversations. Supports webhook (external HTTP APIs), client (client-side execution), system (built-in), and MCP (Model Context Protocol) tool types." }, { "slug": "ELEVENLABS_CREATE_CONVERSATIONAL_AGENT", "name": "Create Conversational AI Agent", "description": "Tool to create a new ElevenLabs Conversational AI agent with specified configuration. Use when you need to programmatically set up an agent with custom prompts, voice settings, and behavior. After creating the agent, you can chain other tools to attach phone numbers or configure additional settings." }, { "slug": "ELEVENLABS_CREATE_MUSIC_PLAN", "name": "Generate Music Composition Plan", "description": "Tool to generate a music composition plan from a text prompt using ElevenLabs Music API. Use when you need to create a structured plan for music generation with defined styles, sections, and durations. The generated plan can be used as input for actual music generation or as a template for variations." }, { "slug": "ELEVENLABS_CREATES_AUDIONATIVE_ENABLED_PROJECT", "name": "Create an AudioNative enabled project", "description": "Creates an ElevenLabs AudioNative project, generating an embeddable audio player from a provided content file using text-to-speech, allowing customization of player appearance, audio settings, and conversion options." }, { "slug": "ELEVENLABS_CREATE_SIMILAR_VOICES", "name": "Get similar library voices", "description": "Returns a list of shared voices similar to the provided audio sample. Use when you need to find voice matches based on audio characteristics. If neither similarity_threshold nor top_k is provided, default values will be applied." }, { "slug": "ELEVENLABS_CREATE_SINGLE_USE_TOKEN", "name": "Create Single Use Token", "description": "Tool to generate a time-limited single-use token with embedded authentication for frontend clients. Use when you need secure, temporary access tokens for WebSocket connections or real-time services." }, { "slug": "ELEVENLABS_CREATE_WORKSPACE_WEBHOOK", "name": "Create Workspace Webhook", "description": "Tool to create a new webhook for the workspace with specified authentication type. Use when you need to configure a webhook endpoint to receive notifications from ElevenLabs. The webhook_secret returned should be stored securely for verifying webhook authenticity." }, { "slug": "ELEVENLABS_DELETE_CHAPTER", "name": "Delete chapter from project", "description": "Irreversibly deletes a specific, existing chapter from an existing project, typically to remove unwanted or obsolete content." }, { "slug": "ELEVENLABS_DELETE_CONVAI_AGENT", "name": "Delete Conversational AI Agent", "description": "Tool to permanently delete a Conversational AI agent by its unique identifier. Use when you need to remove an agent configuration from the ElevenLabs workspace." }, { "slug": "ELEVENLABS_DELETE_CONVAI_AGENT_TESTING", "name": "Delete agent response test", "description": "Tool to delete an agent response test by ID. Use when you need to remove a test result or clean up test data." }, { "slug": "ELEVENLABS_DELETE_CONVAI_BATCH_CALLING", "name": "Delete batch call", "description": "Tool to permanently delete a batch call and all associated recipient records. Conversations remain in history. Use when cleaning up completed or cancelled batch calls." }, { "slug": "ELEVENLABS_DELETE_CONVAI_CONVERSATION", "name": "Delete conversation by ID", "description": "Tool to delete a particular Conversational AI conversation by ID. Use when you need to remove a conversation from the system for cleanup, compliance, or data management purposes." }, { "slug": "ELEVENLABS_DELETE_CONVAI_KNOWLEDGE_BASE", "name": "Delete Knowledge Base Document or Folder", "description": "Tool to delete a document or folder from the knowledge base. Use when you need to remove a knowledge base document or folder that is no longer needed." }, { "slug": "ELEVENLABS_DELETE_CONVAI_KNOWLEDGE_BASE_RAG_INDEX", "name": "Delete ConvAI Knowledge Base RAG Index", "description": "Tool to delete RAG index for a knowledge base document. Use when you need to remove semantic search indexing from a document to free up resources or when the document no longer needs to be indexed." }, { "slug": "ELEVENLABS_DELETE_CONVAI_SECRET", "name": "Delete workspace secret", "description": "Tool to delete a workspace secret if it's not in use. Use when you need to remove unused secrets from the conversational AI workspace for security or cleanup purposes." }, { "slug": "ELEVENLABS_DELETE_CONVAI_TOOL", "name": "Delete conversational AI tool", "description": "Tool to delete a conversational AI tool from the workspace by ID. Use when you need to remove a tool configuration that is no longer needed or to clean up outdated tool definitions." }, { "slug": "ELEVENLABS_DELETE_DUBBING_PROJECT", "name": "Delete a dubbing project", "description": "Permanently deletes a dubbing project by its ID; this action is irreversible and the project cannot be recovered." }, { "slug": "ELEVENLABS_DELETE_HISTORY_ITEM", "name": "Delete history item", "description": "Permanently deletes a specific history item (including its audio file and metadata) using its `history_item_id`; this operation is irreversible and should be used with caution." }, { "slug": "ELEVENLABS_DELETE_MCP_SERVER", "name": "Delete MCP server", "description": "Tool to delete a specific MCP server configuration from the workspace. Use when you need to remove an MCP server that is no longer needed or to clean up outdated configurations." }, { "slug": "ELEVENLABS_DELETE_PHONE_NUMBER", "name": "Delete phone number by id", "description": "Tool to delete an imported phone number from the ElevenLabs workspace by ID. Use when you need to remove a phone number configuration for cleanup or to avoid stale configurations in automated environments." }, { "slug": "ELEVENLABS_DELETE_PROJECT", "name": "Delete project by id", "description": "Use to irreversibly delete a specific project by its `project_id`; the project must exist and be accessible, and this action cannot be undone." }, { "slug": "ELEVENLABS_DELETE_SAMPLE", "name": "Delete voice sample", "description": "Permanently deletes a specific voice sample for a given voice ID; this action is irreversible." }, { "slug": "ELEVENLABS_DELETE_VOICE", "name": "Delete voice by id", "description": "Permanently and irreversibly deletes a specific custom voice using its `voice_id`; the voice must exist and the authenticated user must have permission to delete it." }, { "slug": "ELEVENLABS_DELETE_WORKSPACE_WEBHOOK", "name": "Delete workspace webhook", "description": "Tool to delete a specified workspace webhook by its ID. Use when you need to remove a webhook configuration that is no longer needed or to clean up webhook integrations." }, { "slug": "ELEVENLABS_DOWNLOAD_HISTORY_ITEMS", "name": "Download history items", "description": "Downloads audio clips from history by ID(s), returning a single file or a ZIP archive, with an optional output format (e.g., 'wav'); provides only audio content, no metadata." }, { "slug": "ELEVENLABS_DUB_A_VIDEO_OR_AN_AUDIO_FILE", "name": "Dub a video or an audio file", "description": "Dub a video or audio file into a specified target language, requiring 'file' or 'source_url', 'target_lang', and 'csv_file' if 'mode' is 'manual'." }, { "slug": "ELEVENLABS_DUPLICATE_CONVAI_AGENT", "name": "Duplicate Conversational AI Agent", "description": "Tool to create a new agent by duplicating an existing one. Use when you need to clone an agent's configuration. The new agent will inherit all settings from the original agent but can be given a new name." }, { "slug": "ELEVENLABS_EDIT_VOICE", "name": "Edit voice", "description": "Updates the name, audio files, description, or labels for an existing voice model. The voice_id must be for a voice owned by you (cloned voices). Premade/default voices cannot be edited. The 'name' field is required for all edit operations. This endpoint uses multipart/form-data format for the request body." }, { "slug": "ELEVENLABS_EDIT_VOICE_SETTINGS", "name": "Edit voice settings", "description": "Edits key voice settings (e.g., stability, similarity enhancement, style exaggeration, speaker boost) for an existing voice, affecting all future audio generated with that voice ID." }, { "slug": "ELEVENLABS_GENERATE_A_RANDOM_VOICE", "name": "Generate a random voice", "description": "Generates a unique, random ElevenLabs text-to-speech voice based on input text and specified voice characteristics." }, { "slug": "ELEVENLABS_GET_AGENT_DETAILS", "name": "Get agent details", "description": "Tool to retrieve available Conversational AI agents and outbound-capable Twilio phone numbers. Use when selecting an agent and phone number for outbound calls. Always reference agents by agent_id (stable identifier), not agent_name (mutable). Returns basic metadata only — conversation_config and webhook settings require a separate ConvAI agent API call. Pass agent_id and agent_phone_number_id directly to ELEVENLABS_OUTBOUND_CALL; IDs must be current and owned by the authenticated account." }, { "slug": "ELEVENLABS_GET_AGENT_LINK", "name": "Get Agent Link", "description": "Tool to get the current shareable link for a Conversational AI agent. Use when you need to retrieve the link URL for sharing the agent with others." }, { "slug": "ELEVENLABS_GET_A_PROFILE_PAGE", "name": "Get user profile", "description": "Retrieves the profile information for the authenticated ElevenLabs user (identified by API key)." }, { "slug": "ELEVENLABS_GET_AUDIO_FROM_HISTORY_ITEM", "name": "Get audio from history item", "description": "Retrieves the audio content for a specific history item from ElevenLabs, using a `history_item_id` that must correspond to a previously generated audio." }, { "slug": "ELEVENLABS_GET_AUDIO_FROM_SAMPLE", "name": "Get sample audio", "description": "Retrieves the audio for a given `sample_id` that must belong to the specified `voice_id`." }, { "slug": "ELEVENLABS_GET_AUDIO_NATIVE_SETTINGS", "name": "Get audio native settings", "description": "Tool to retrieve player settings for a specific Audio Native project. Use when you need to check the current configuration of an audio-native project, including display settings, colors, and status." }, { "slug": "ELEVENLABS_GET_CHAPTER_BY_ID", "name": "Get chapter by ID", "description": "Fetches comprehensive details for a specific chapter within a given project, including its metadata (name, ID), conversion status, progress, download availability, and content statistics." }, { "slug": "ELEVENLABS_GET_CHAPTERS", "name": "Get chapters by project id", "description": "Retrieves a list of all chapters, their details, and conversion status for a project, useful for managing content or tracking progress." }, { "slug": "ELEVENLABS_GET_CHAPTER_SNAPSHOTS", "name": "Get chapter snapshots", "description": "Retrieves all saved version snapshots for a specific chapter within a given project, enabling review of its history or reversion to prior states." }, { "slug": "ELEVENLABS_GET_CONVAI_AGENT", "name": "Get Conversational AI Agent", "description": "Tool to retrieve the complete configuration for a specific Conversational AI agent by ID. Use when you need to inspect or audit an agent's settings, workflow, conversation config, or assigned channels." }, { "slug": "ELEVENLABS_GET_CONVAI_AGENT_KNOWLEDGE_BASE_SIZE", "name": "Get Agent Knowledge Base Size", "description": "Tool to retrieve the number of pages in a conversational AI agent's knowledge base. Use when you need to check the size of an agent's knowledge base content." }, { "slug": "ELEVENLABS_GET_CONVAI_AGENTS_SUMMARIES", "name": "Get ConvAI Agents Summaries", "description": "Tool to retrieve summaries for specified Conversational AI agents. Use when you need to fetch metadata such as name, tags, creation time, access level, and archival status for one or more agents." }, { "slug": "ELEVENLABS_GET_CONVAI_AGENTS_WIDGET", "name": "Get Agent Widget Config", "description": "Tool to retrieve the widget configuration for a Conversational AI agent. Use when you need to fetch display settings, colors, text content, and behavior options for an agent's embedded widget." }, { "slug": "ELEVENLABS_GET_CONVAI_AGENT_TESTING_BY_ID", "name": "Get Agent Response Test By ID", "description": "Tool to retrieve an ElevenLabs Conversational AI agent response test by its ID. Use when you need to fetch details of a specific test including its configuration, type, and test parameters." }, { "slug": "ELEVENLABS_GET_CONVAI_ANALYTICS_LIVE_COUNT", "name": "Get conversational AI analytics live count", "description": "Tool to retrieve the live count of active ongoing Conversational AI conversations. Use when monitoring real-time conversation activity or checking current load." }, { "slug": "ELEVENLABS_GET_CONVAI_BATCH_CALLING", "name": "Get batch call details", "description": "Tool to get detailed information about a batch call including all recipients. Use when you need to check the status, progress, or results of a previously submitted batch calling job." }, { "slug": "ELEVENLABS_GET_CONVAI_BATCH_CALLING_WORKSPACE", "name": "Get Batch Calls for Workspace", "description": "Tool to retrieve all batch calls for the current workspace. Use when you need to list all batch calling campaigns, check their status, or find specific batch calls by name or agent." }, { "slug": "ELEVENLABS_GET_CONVAI_CONVERSATIONS", "name": "Get Conversational AI Conversations", "description": "Tool to retrieve all conversations of agents that user owns. Use when you need to list conversations, optionally filtered by agent, time range, duration, rating, or other criteria. Supports pagination via cursor." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE", "name": "Get ConvAI Knowledge Base", "description": "Tool to retrieve a list of available knowledge base documents. Use when you need to browse, search, or filter knowledge base documents by name, type, folder, or ownership. Supports pagination via cursor for large result sets." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_CONTENT", "name": "Get Knowledge Base Document Content", "description": "Tool to retrieve the entire content of a document from the knowledge base. Use when you need to access or read the full text content of a knowledge base document." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_DEPENDENT_AGENTS", "name": "Get Knowledge Base Dependent Agents", "description": "Tool to retrieve a list of agents depending on a specific knowledge base document. Use when you need to identify which agents are using a particular document, either directly or transitively." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_DOCUMENTATION", "name": "Get Knowledge Base Documentation", "description": "Tool to get details about a specific documentation making up the agent's knowledge base. Use when you need to retrieve information about a knowledge base document, including its content, type, and metadata." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_RAG_INDEX", "name": "Get Knowledge Base RAG Index Overview", "description": "Tool to retrieve RAG index overview including total size and usage information. Use when you need to check storage limits, monitor usage, or understand which embedding models are consuming space in knowledge base documents." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_RAG_INDEXES", "name": "Get ConvAI Knowledge Base RAG Indexes", "description": "Tool to retrieve all RAG indexes for a specified knowledge base document. Use when you need to view the indexing status, models used, and usage statistics for a document's semantic search capabilities." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_SOURCE_FILE_URL", "name": "Get Knowledge Base Source File URL", "description": "Tool to get a signed URL to download the original source file of a file-type document from the knowledge base. Use when you need to download the original file that was uploaded to create a knowledge base document." }, { "slug": "ELEVENLABS_GET_CONVAI_KNOWLEDGE_BASE_SUMMARIES", "name": "Get Knowledge Base Summaries", "description": "Tool to retrieve knowledge base document summaries by their IDs. Use when you need to get summaries for multiple knowledge base documents in a single request." }, { "slug": "ELEVENLABS_GET_CONVAI_MCP_SERVER", "name": "Get ConvAI MCP Server", "description": "Tool to retrieve a specific MCP server configuration from the workspace. Use when you need to inspect details of an existing MCP server including its URL, transport type, approval policies, and dependent agents." }, { "slug": "ELEVENLABS_GET_CONVAI_MCP_SERVERS", "name": "Get ConvAI MCP Servers", "description": "Tool to retrieve all MCP (Model Context Protocol) server configurations available in the workspace. Use when you need to list all registered MCP servers or check which servers are available for conversational AI agents." }, { "slug": "ELEVENLABS_GET_CONVAI_MCP_SERVER_TOOLS", "name": "Get ConvAI MCP Server Tools", "description": "Tool to retrieve all tools available for a specific MCP server configuration. Use when you need to inspect what tools an MCP server provides or verify tool availability before using them." }, { "slug": "ELEVENLABS_GET_CONVAI_PHONE_NUMBER_BY_ID", "name": "Get Phone Number by ID", "description": "Tool to retrieve detailed configuration for a specific phone number by ID. Use when you need to inspect a phone number's provider details, capabilities, agent assignments, or SIP trunk configuration." }, { "slug": "ELEVENLABS_GET_CONVAI_SECRETS", "name": "Get ConvAI Workspace Secrets", "description": "Tool to retrieve all workspace secrets for the user. Use when you need to list stored secrets that can be used for authentication and integration with conversational AI agents. Supports pagination." }, { "slug": "ELEVENLABS_GET_CONVAI_SETTINGS", "name": "Get Convai Settings", "description": "Tool to retrieve Convai settings for the workspace. Use when you need to inspect webhook configurations, RAG retention settings, or MCP server capabilities." }, { "slug": "ELEVENLABS_GET_CONVAI_SETTINGS_DASHBOARD", "name": "Get Convai Dashboard Settings", "description": "Tool to retrieve Convai dashboard settings for the workspace. Use when you need to inspect configured dashboard charts for monitoring conversational AI performance." }, { "slug": "ELEVENLABS_GET_CONVAI_TEST_INVOCATIONS", "name": "List Test Invocations", "description": "Tool to list all test invocations for a specific conversational AI agent with pagination support. Use when you need to retrieve test invocation history, check test results, or paginate through large sets of test runs." }, { "slug": "ELEVENLABS_GET_CONVAI_TOOL", "name": "Get Conversational AI Tool", "description": "Tool to retrieve the complete configuration for a specific conversational AI tool by ID. Use when you need to inspect a tool's settings, type, or usage statistics from the workspace." }, { "slug": "ELEVENLABS_GET_CONVAI_TOOLS", "name": "Get ConvAI tools", "description": "Tool to retrieve all available tools in the workspace. Use when you need to list, search, or discover tools that can be used with Conversational AI agents." }, { "slug": "ELEVENLABS_GET_CONVAI_TOOLS_DEPENDENT_AGENTS", "name": "Get Tool Dependent Agents", "description": "Tool to retrieve a list of agents depending on a specific tool. Use when you need to identify which agents are using a particular tool in their configuration." }, { "slug": "ELEVENLABS_GET_CONVERSATION_BY_ID", "name": "Get conversation by ID", "description": "Tool to fetch full details for a single Conversational AI conversation by ID. Use when you need transcript-level analysis, metadata, or audio status flags for a specific conversation." }, { "slug": "ELEVENLABS_GET_CONVERSATION_SIGNED_URL", "name": "Get Conversation Signed URL", "description": "Tool to get a signed URL to start a conversation with an agent that requires authorization. Use when you need to obtain a secure WebSocket URL for initiating a conversation session." }, { "slug": "ELEVENLABS_GET_DEFAULT_VOICE_SETTINGS", "name": "Get default voice settings", "description": "Retrieves the ElevenLabs text-to-speech service's default voice settings (stability, similarity boost, style, speaker boost) that are applied when no voice-specific or request-specific settings are provided." }, { "slug": "ELEVENLABS_GET_DUBBED_FILE", "name": "Get dubbed audio for a language", "description": "Retrieves an existing dubbed audio file for a specific `dubbing_id` and `language_code`." }, { "slug": "ELEVENLABS_GET_DUBBING_PROJECT_METADATA", "name": "Get dubbing project metadata", "description": "Retrieves metadata and status for a specific dubbing project by its ID." }, { "slug": "ELEVENLABS_GET_DUBBING_TRANSCRIPTS_FORMAT", "name": "Get dubbing transcript in specific format", "description": "Retrieves the transcript for a specific dubbing project and language in the requested format (SRT, WebVTT, or JSON). Use this when you need subtitles or detailed transcript data with timing information for a dubbed video or audio." }, { "slug": "ELEVENLABS_GET_GENERATED_ITEMS", "name": "Get generated items", "description": "Retrieves metadata for a list of generated audio items from history, supporting pagination and optional filtering by voice ID." }, { "slug": "ELEVENLABS_GET_HISTORY_ITEM_BY_ID", "name": "Get history item by id", "description": "Retrieves detailed information (excluding the audio file) for a specific audio generation history item from ElevenLabs, using its unique ID." }, { "slug": "ELEVENLABS_GET_MCP_TOOL_CONFIG", "name": "Get MCP Tool Configuration", "description": "Tool to retrieve configuration overrides for a specific MCP tool within an MCP server. Use when you need to inspect the custom execution settings for individual tools." }, { "slug": "ELEVENLABS_GET_METADATA_FOR_A_PRONUNCIATION_DICTIONARY", "name": "Get pronunciation dictionary metadata", "description": "Retrieves metadata for a specific, existing pronunciation dictionary from ElevenLabs using its ID." }, { "slug": "ELEVENLABS_GET_MODELS", "name": "Get models", "description": "Retrieves a detailed list of all available ElevenLabs text-to-speech (TTS) models and their capabilities." }, { "slug": "ELEVENLABS_GET_PROJECT_BY_ID", "name": "Get project by ID", "description": "Use to retrieve all details for a specific project, including its chapters and their conversion statuses, by providing the project's unique ID." }, { "slug": "ELEVENLABS_GET_PROJECTS", "name": "Get projects", "description": "Fetches a list of all projects and their details associated with the user's ElevenLabs account; this is a read-only operation." }, { "slug": "ELEVENLABS_GET_PROJECT_SNAPSHOTS", "name": "Get project snapshots", "description": "Retrieves all available snapshots (saved states or versions) for an existing project, enabling history tracking, version comparison, or accessing specific states for playback/processing, particularly in text-to-speech workflows." }, { "slug": "ELEVENLABS_GET_PRONUNCIATION_DICTIONARIES", "name": "Get pronunciation dictionaries", "description": "Retrieves a paginated list of pronunciation dictionaries, used to customize how specific words or phrases are pronounced by the text-to-speech (TTS) engine." }, { "slug": "ELEVENLABS_GET_PRONUNCIATION_DICT_VERSION", "name": "Get pronunciation dictionary version", "description": "Downloads the Pronunciation Lexicon Specification (PLS) file for an existing version of a pronunciation dictionary from ElevenLabs, used to customize TTS pronunciation." }, { "slug": "ELEVENLABS_GET_SERVICE_ACCOUNTS", "name": "Get Service Accounts", "description": "Tool to list all service accounts in the workspace. Use when you need to view service accounts, their associated API keys, or manage workspace access." }, { "slug": "ELEVENLABS_GET_SHARED_VOICES", "name": "Get shared voices", "description": "Retrieves a paginated and filterable list of shared voices from the ElevenLabs Voice Library." }, { "slug": "ELEVENLABS_GET_SSO_PROVIDER_ADMIN", "name": "Get sso provider admin", "description": "Retrieves the SSO provider configuration for a specified workspace, typically for review purposes, and will indicate if no configuration exists." }, { "slug": "ELEVENLABS_GET_SUMMARIES_CONVAI_AGENT_TESTING_SUMMARIES", "name": "Get Agent Response Test Summaries", "description": "Tool to retrieve multiple agent response test summaries by their IDs. Use when you need to fetch summary information for multiple tests in a single request. Returns a dictionary mapping test IDs to their summary details including name, type, and timestamps." }, { "slug": "ELEVENLABS_GET_TRANSCRIPT_FOR_DUB", "name": "Get dubbing transcript by language", "description": "Retrieves the textual transcript for a specified dubbing project and language, if one exists for that language in the project." }, { "slug": "ELEVENLABS_GET_USAGE_CHARACTER_STATS", "name": "Get Usage Character Stats", "description": "Tool to retrieve usage metrics for the current user or entire workspace. Returns time-series data with configurable aggregation intervals and breakdown types. Use when analyzing character usage patterns, tracking consumption by voice, user, or other dimensions over time." }, { "slug": "ELEVENLABS_GET_USER_INFO", "name": "Get user info", "description": "Retrieves detailed information about the authenticated ElevenLabs user's account, including subscription, usage, API key, and status." }, { "slug": "ELEVENLABS_GET_USER_SUBSCRIPTION_INFO", "name": "Get user subscription info", "description": "Retrieves detailed subscription information for the currently authenticated ElevenLabs user." }, { "slug": "ELEVENLABS_GET_VOICE", "name": "Get voice", "description": "Retrieves comprehensive details for a specific, existing voice by its `voice_id`, optionally including its settings." }, { "slug": "ELEVENLABS_GET_VOICES", "name": "Get voices list", "description": "Retrieves a list of all available voices along with their detailed attributes and settings." }, { "slug": "ELEVENLABS_GET_VOICE_SETTINGS", "name": "Get voice settings", "description": "Retrieves the stability, similarity, style, and speaker boost settings for a specific, existing ElevenLabs voice using its `voice_id`." }, { "slug": "ELEVENLABS_GET_WORKSPACE_RESOURCE", "name": "Get workspace resource metadata", "description": "Tool to get metadata of a workspace resource by ID and type. Use when you need access control information, creator details, or sharing options for a specific resource." }, { "slug": "ELEVENLABS_GET_WORKSPACE_WEBHOOKS", "name": "Get Workspace Webhooks", "description": "Tool to list all webhooks configured for the workspace. Use when you need to view existing webhook configurations or verify webhook settings." }, { "slug": "ELEVENLABS_LIST_CONVAI_AGENT_TESTING", "name": "List Conversational AI Agent Tests", "description": "Tool to list all agent response tests with pagination support and optional search filtering. Use when you need to retrieve available tests, search tests by name, or paginate through large test collections." }, { "slug": "ELEVENLABS_LIST_DUBS", "name": "List Dubs", "description": "Tool to list dubbing projects you have access to. Use when you need to retrieve dubs, check their status, or paginate through available dubbing projects." }, { "slug": "ELEVENLABS_LIST_PHONE_NUMBERS", "name": "List Phone Numbers", "description": "Tool to list all imported phone numbers in the workspace. Use when you need to find available phone numbers, check their capabilities (inbound/outbound), or verify which agent is assigned to a number." }, { "slug": "ELEVENLABS_LIST_WHATSAPP_ACCOUNTS", "name": "List WhatsApp Accounts", "description": "Tool to list all WhatsApp accounts in the workspace. Use when you need to view available WhatsApp Business accounts, check which agents are assigned to WhatsApp numbers, or retrieve WhatsApp phone number details." }, { "slug": "ELEVENLABS_MOVE_BULK_CONVAI_KNOWLEDGE_BASE", "name": "Move Bulk Knowledge Base Items", "description": "Tool to move multiple documents or folders from one folder to another in the knowledge base. Use when you need to reorganize multiple knowledge base items at once by moving them to a different folder or to the root level." }, { "slug": "ELEVENLABS_MOVE_CONVAI_KNOWLEDGE_BASE", "name": "Move ConvAI Knowledge Base Entity", "description": "Tool to move a knowledge base document or folder to a different folder. Use when you need to reorganize your knowledge base by moving entities between folders or to the root level." }, { "slug": "ELEVENLABS_OUTBOUND_CALL", "name": "Outbound call", "description": "Tool to place an outbound call via SIP trunk. Use when you need to initiate a voice call through an ElevenLabs agent after obtaining required IDs. Prerequisites: - The API key must have Conversational AI (convai) permissions enabled. For write operations like initiating calls, ensure your API key has the appropriate convai write scope. - A valid SIP trunk phone number must be configured for outbound calls in ElevenLabs. - The SIP trunk must have valid outbound configuration with proper address and credentials. - The agent must be properly configured in the Conversational AI platform." }, { "slug": "ELEVENLABS_REDIRECT_TO_MINTLIFY", "name": "Get API documentation", "description": "Retrieves the content of the official ElevenLabs API documentation page hosted on Mintlify." }, { "slug": "ELEVENLABS_REGISTER_CALL_CONVAI_TWILIO", "name": "Register Twilio Call for ConvAI Agent", "description": "Tool to register a Twilio call and return TwiML to connect the call to an ElevenLabs Conversational AI agent. Use when you need to integrate ElevenLabs agents with your own Twilio infrastructure for inbound or outbound calls." }, { "slug": "ELEVENLABS_REMOVE_RULES_FROM_THE_PRONUNCIATION_DICTIONARY", "name": "Remove rules from pronunciation dictionary", "description": "Permanently removes exact-match pronunciation rules from a specified ElevenLabs pronunciation dictionary using a list of rule strings; non-matching rule strings are ignored and this action cannot add or modify rules." }, { "slug": "ELEVENLABS_RESUBMIT_CONVAI_TEST_INVOCATIONS", "name": "Resubmit Test Invocations", "description": "Tool to resubmit specific test runs from a test invocation for a conversational AI agent. Use when you need to re-run failed tests or specific test cases from a previous test invocation." }, { "slug": "ELEVENLABS_RETRY_CONVAI_BATCH_CALL", "name": "Retry Batch Call", "description": "Tool to retry a batch call, calling failed and no-response recipients again. Use when you need to retry unsuccessful calls from a previous batch calling campaign." }, { "slug": "ELEVENLABS_RUN_AGENT_TESTS", "name": "Run Agent Tests", "description": "Tool to run selected tests on a conversational AI agent with optional configuration overrides. Use when you need to execute automated tests on an agent to validate responses, tool calls, or conversation flows. Supports running up to 200 tests in a single invocation with optional branch-specific or configuration override testing." }, { "slug": "ELEVENLABS_SET_AGENT_AVATAR", "name": "Set Agent Avatar", "description": "Tool to set or update the avatar image for a Conversational AI agent displayed in the widget. Use when you need to customize the visual appearance of an agent by uploading a profile image." }, { "slug": "ELEVENLABS_SIMULATE_CONVAI_AGENTS_SIMULATE_CONVERSATION", "name": "Simulate Conversational AI Agent Conversation", "description": "Tool to run a simulated conversation between an agent and an AI user. Use when testing agent behavior with specific scenarios or evaluating conversation flow. Returns full transcript with analysis including success metrics and conversation summary." }, { "slug": "ELEVENLABS_SPEECH_TO_SPEECH", "name": "Speech to speech", "description": "Converts an input audio file to speech using a specified voice; if a `model_id` is provided, it must support speech-to-speech conversion." }, { "slug": "ELEVENLABS_SPEECH_TO_SPEECH_STREAMING", "name": "Speech to speech streaming", "description": "Converts an input audio stream to a different voice output stream in real-time, using a specified speech-to-speech model." }, { "slug": "ELEVENLABS_STREAM_AUDIO_ISOLATION", "name": "Stream audio isolation", "description": "Tool to remove background noise from audio and stream the isolated result. Use when you need to clean up audio recordings by isolating vocals/speech and removing unwanted background noise. The audio file must be at least 4.6 seconds long." }, { "slug": "ELEVENLABS_STREAM_CHAPTER_AUDIO", "name": "Stream chapter audio", "description": "Streams the audio for a specified chapter snapshot from an ElevenLabs project, optionally converting the output to MPEG format." }, { "slug": "ELEVENLABS_STREAM_CONVAI_AGENTS_SIMULATE_CONVERSATION", "name": "Stream ConvAI agent simulate conversation", "description": "Tool to run a simulated conversation between an agent and a simulated user, streaming back the response. Response is streamed as partial lists of messages that should be concatenated, with a final message containing conversation analysis once complete." }, { "slug": "ELEVENLABS_STREAM_PROJECT_AUDIO", "name": "Stream project audio", "description": "Streams audio from a specific project snapshot, optionally converting it to MPEG format." }, { "slug": "ELEVENLABS_STREAMS_ARCHIVE_WITH_PROJECT_AUDIO", "name": "Archive project snapshot", "description": "Archives an existing project snapshot by its ID, creating a permanent, immutable, and typically irreversible copy of its state." }, { "slug": "ELEVENLABS_SUBMIT_BATCH_CALL", "name": "Submit Batch Call", "description": "Tool to submit a batch call. Use when you need to initiate multiple calls (voice or WhatsApp) at once. Triggers real outbound calls immediately (if no scheduled_time_unix is set) or at the scheduled time — always confirm recipient list and call count with the user before executing." }, { "slug": "ELEVENLABS_TEXT_TO_SPEECH", "name": "Text to speech", "description": "Converts text to speech using a specified ElevenLabs voice and model, returning a downloadable audio file (use ELEVENLABS_TEXT_TO_SPEECH_STREAM for streaming instead). Keep `voice_id`, `model_id`, and `output_format` consistent across all chunks to avoid audible artifacts when concatenating. Some voice/model/format combinations require specific subscription tiers; test with a short sample before full runs. HTTP 429 on burst batches; respect `Retry-After` headers." }, { "slug": "ELEVENLABS_TEXT_TO_SPEECH_STREAM", "name": "Text to speech stream", "description": "Converts text to a spoken audio stream (no saved file or history entry); use the non-streaming text-to-speech tool when a persistent audio URL is needed. Allows latency optimization, specific output formats (some tier-dependent), and custom pronunciations; ensure the chosen model supports text-to-speech and text is preferably under 5000 characters. Keep voice_id, model_id, and output_format consistent across multi-chunk sessions to avoid audio artifacts." }, { "slug": "ELEVENLABS_UPDATE_AUDIO_NATIVE_CONTENT", "name": "Update Audio Native project content", "description": "Tool to update content for an Audio Native project by uploading a text or HTML file. Use when you need to refresh or change the content of an existing Audio Native project. Optionally auto-convert to audio and auto-publish the new snapshot." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_AGENT", "name": "Update Conversational AI Agent", "description": "Tool to update an existing ElevenLabs Conversational AI agent's settings. Use when you need to modify an agent's configuration, such as changing its name, conversation settings, workflow, or platform settings." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_AGENT_TESTING", "name": "Update Agent Response Test", "description": "Tool to update an existing ElevenLabs Conversational AI agent response test by ID. Use when you need to modify test configuration, chat history, success conditions, or other test parameters." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_KNOWLEDGE_BASE", "name": "Update Knowledge Base Document", "description": "Tool to update the name of a knowledge base document in ElevenLabs Conversational AI. Use when you need to rename an existing knowledge base document." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_SECRET", "name": "Update ConvAI Workspace Secret", "description": "Tool to update an existing secret in the ElevenLabs ConvAI workspace. Use when you need to modify the name or value of an existing API key, token, or other sensitive value stored in the workspace." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_SETTINGS", "name": "Update Convai Settings", "description": "Tool to update Convai settings for the workspace. Use when you need to modify webhook configurations, RAG retention settings, MCP server capabilities, or Livekit stack preferences." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_SETTINGS_DASHBOARD", "name": "Update Convai Dashboard Settings", "description": "Tool to update Convai dashboard settings for the workspace. Use when you need to configure dashboard charts for monitoring conversational AI performance." }, { "slug": "ELEVENLABS_UPDATE_CONVAI_TOOL", "name": "Update Conversational AI Tool", "description": "Tool to update an existing conversational AI tool in ElevenLabs workspace. Use when modifying tool settings, descriptions, API endpoints, or behavior configurations. Requires the complete tool_config object with all required fields for the tool type." }, { "slug": "ELEVENLABS_UPDATE_PRONUNCIATION_DICTIONARIES", "name": "Update project pronunciation dictionaries", "description": "Updates a project's pronunciation dictionaries on ElevenLabs to improve text-to-speech accuracy for specialized terms; note that while multiple dictionaries can be applied, the UI only displays the first." }, { "slug": "ELEVENLABS_UPDATE_PRONUNCIATION_DICTIONARY", "name": "Update pronunciation dictionary", "description": "Partially updates a pronunciation dictionary's metadata (name or archived status) without changing its version. Use when you need to rename or archive/unarchive a dictionary." }, { "slug": "ELEVENLABS_UPDATE_WORKSPACE_WEBHOOK", "name": "Update Workspace Webhook", "description": "Tool to update a specified workspace webhook by its ID. Use when you need to modify webhook settings such as the display name or enable/disable status." }, { "slug": "ELEVENLABS_VOICE_GENERATION_PARAMETERS", "name": "Voice generation parameters retrieval", "description": "Fetches configurable parameters for ElevenLabs voice generation, used to determine available settings (e.g., accents, character limits) prior to audio synthesis; returns metadata only, not audio." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "elevenlabs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ElevenLabs API key (starts with 'sk_'). Create one at elevenlabs.io/app/settings/api-keys and copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "microsoft_teams", "name": "Microsoft Teams", "logo": "https://logos.composio.dev/api/microsoft_teams", "description": "Microsoft Teams integrates chat, video meetings, and file storage within Microsoft 365, providing virtual collaboration and communication for distributed teams", "category": "team chat", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 169, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MICROSOFT_TEAMS_ADD_CHAT_MEMBER", "name": "Add chat member", "description": "Tool to add a conversationMember to a Microsoft Teams chat. Use when adding a user to an existing chat conversation." }, { "slug": "MICROSOFT_TEAMS_ADD_MEMBER_TO_CHANNEL", "name": "Add member to channel", "description": "Tool to add a member to a Microsoft Teams channel. Use this action when you need to grant a user access to a specific channel within a team, or when you need to add an owner to manage the channel." }, { "slug": "MICROSOFT_TEAMS_ADD_MEMBER_TO_TEAM", "name": "Add member to team", "description": "(DEPRECATED: use `MICROSOFT_TEAMS_ADD_TEAM_MEMBER`) Tool to add a user to a Microsoft Teams team. Use when granting or updating membership for a user." }, { "slug": "MICROSOFT_TEAMS_ADD_TAB", "name": "Add tab to channel", "description": "Tool to add a new tab to a Microsoft Teams channel. Use when you need to pin an app or website as a tab in a channel." }, { "slug": "MICROSOFT_TEAMS_ADD_TEAM_MEMBER", "name": "Add member to team", "description": "Tool to add a user to a Microsoft Teams team. Use when granting or updating membership for a user." }, { "slug": "MICROSOFT_TEAMS_ADD_TEAM_MEMBERS_BULK", "name": "Add team members (bulk)", "description": "Tool to add multiple members to a Microsoft Teams team in a single operation. Use when adding several users at once to improve efficiency." }, { "slug": "MICROSOFT_TEAMS_ARCHIVE_CHANNEL", "name": "Archive channel", "description": "Tool to archive a channel in a Microsoft Teams team. Use when you need to archive a specific channel within a team." }, { "slug": "MICROSOFT_TEAMS_ARCHIVE_GROUP_TEAM_CHANNEL", "name": "Archive team channel", "description": "Tool to archive a channel in a Microsoft Teams team using the group ID. Use when you need to archive a specific channel within a team." }, { "slug": "MICROSOFT_TEAMS_ARCHIVE_TEAM", "name": "Archive Teams team", "description": "Tool to archive a Microsoft Teams team. Use after confirming the team ID; returns 202 if accepted." }, { "slug": "MICROSOFT_TEAMS_CHATS_GET_ALL_CHATS", "name": "Get all chats", "description": "Retrieves all Microsoft Teams chats a specified user is part of, supporting filtering, property selection, and pagination." }, { "slug": "MICROSOFT_TEAMS_CHATS_GET_ALL_MESSAGES", "name": "Get all chat messages (Deprecated)", "description": "DEPRECATED: Use ListUserChatMessages instead. Retrieves all messages from a specified Microsoft Teams chat using the Microsoft Graph API, automatically handling pagination; ensure `chat_id` is valid and OData expressions in `filter` or `select` are correct." }, { "slug": "MICROSOFT_TEAMS_CLEAR_AUTOMATIC_LOCATION", "name": "Clear Automatic Location", "description": "Tool to clear the automatic location from a user's presence in Microsoft Teams. Use when you need to remove automatically-set location information from presence status." }, { "slug": "MICROSOFT_TEAMS_CLEAR_ME_PRESENCE_USER_PREFERRED", "name": "Clear User Preferred Presence", "description": "Tool to clear a user's preferred presence setting in Microsoft Teams. Use when you need to remove the user's manually set presence status and allow the system to automatically determine their presence based on activity. Supports both delegated (user) and application (S2S) authentication." }, { "slug": "MICROSOFT_TEAMS_CLEAR_MY_PRESENCE", "name": "Clear My Presence (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_CLEAR_PRESENCE instead. Tool to clear the authenticated user's presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the current user." }, { "slug": "MICROSOFT_TEAMS_CLEAR_PRESENCE", "name": "Clear Presence", "description": "Tool to clear the presence information for a user's application presence session in Microsoft Teams. Use when you need to remove presence information set by an application for the authenticated user. Note: This action can only clear presence for the authenticated user, not for other users." }, { "slug": "MICROSOFT_TEAMS_CLEAR_PRESENCE_AUTOMATIC_LOCATION", "name": "Clear Presence Automatic Location (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_CLEAR_AUTOMATIC_LOCATION instead. Tool to clear the automatic presence location for the authenticated user. Use when you need to remove automatically-detected location information from the user's presence status." }, { "slug": "MICROSOFT_TEAMS_CLEAR_PRESENCE_LOCATION", "name": "Clear Presence Location", "description": "Tool to clear the authenticated user's presence location. Use when you need to remove location information from the user's current presence status." }, { "slug": "MICROSOFT_TEAMS_CLONE_TEAM", "name": "Clone Team", "description": "Tool to clone a Microsoft Teams team using the team ID. Use when you need to create a copy of an existing team including its structure, channels, and tabs. This is an asynchronous operation; poll the returned location URL to monitor progress." }, { "slug": "MICROSOFT_TEAMS_CREATE_CALL_OPERATION", "name": "Create Call Operation", "description": "Tool to create a new operation for a communications call. Use when you need to initiate a new operation on an active call." }, { "slug": "MICROSOFT_TEAMS_CREATE_CHANNEL", "name": "Create a channel", "description": "Tool to create a new standard, private, or shared channel within a Microsoft Teams team. Use when you need to create a new channel for team collaboration." }, { "slug": "MICROSOFT_TEAMS_CREATE_CONTENT_SHARING_SESSION", "name": "Create Content Sharing Session", "description": "Tool to create a content sharing session in a Microsoft Teams call. Use when you need to initiate content sharing during an active call." }, { "slug": "MICROSOFT_TEAMS_CREATE_GROUP_TEAM_CHANNEL", "name": "Create channel in group team", "description": "Tool to create a new channel in a group's associated team. Use when you have a group ID and need to create a channel in its team." }, { "slug": "MICROSOFT_TEAMS_CREATE_MEETING", "name": "Create online meeting", "description": "Use to schedule a new standalone Microsoft Teams online meeting, i.e., one not linked to any calendar event." }, { "slug": "MICROSOFT_TEAMS_CREATE_OFFER_SHIFT_REQUEST", "name": "Create user offer shift request", "description": "Tool to create a new offer shift request in a user's joined team schedule. Use when a team member wants to offer their shift to another team member." }, { "slug": "MICROSOFT_TEAMS_CREATE_OPEN_SHIFT", "name": "Create open shifts", "description": "Tool to create a new open shift in a Microsoft Teams team schedule. Use when you need to publish available shifts that team members can claim." }, { "slug": "MICROSOFT_TEAMS_CREATE_OPEN_SHIFT_CHANGE_REQUEST", "name": "Create open shift change request", "description": "Tool to create a new open shift change request in a team schedule. Use when a team member wants to claim an available open shift." }, { "slug": "MICROSOFT_TEAMS_CREATE_OR_GET_ONLINE_MEETING", "name": "Create or get online meeting", "description": "Tool to create a new Microsoft Teams online meeting or retrieve an existing one based on externalId. Use when you need an idempotent meeting creation operation that returns an existing meeting if the externalId matches." }, { "slug": "MICROSOFT_TEAMS_CREATE_OR_UPDATE_SCHEDULE", "name": "Create or update schedule", "description": "Tool to create or replace a schedule object for a Microsoft Teams team. Use when you need to enable or configure scheduling features for a team." }, { "slug": "MICROSOFT_TEAMS_CREATE_SCHEDULE_DAY_NOTE", "name": "Create schedule day note", "description": "Tool to create a new day note in a team's schedule. Use when you need to add notes or reminders for a specific date in the team schedule. Day notes help communicate important information to team members for a particular day." }, { "slug": "MICROSOFT_TEAMS_CREATE_SCHEDULING_GROUP", "name": "Create scheduling group", "description": "Tool to create a new scheduling group in a team's schedule. Use when you need to organize team members into groups for shift scheduling and management. This action uses 'team_id' parameter naming which aligns with the Microsoft Graph API endpoint (/teams/{id}/schedule/schedulingGroups)." }, { "slug": "MICROSOFT_TEAMS_CREATE_SHIFT", "name": "Create team schedule shift", "description": "Tool to create a new shift in a Microsoft Teams team schedule. Use when you need to assign work shifts to team members with specific start/end times and details." }, { "slug": "MICROSOFT_TEAMS_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new Microsoft Teams team. Use when you need to provision a team with optional template, channels, and members." }, { "slug": "MICROSOFT_TEAMS_CREATE_TEAM_FROM_GROUP", "name": "Create Team From Group", "description": "Tool to create a new team under an existing Microsoft 365 group. Use when you need to add Teams capabilities to an existing group." }, { "slug": "MICROSOFT_TEAMS_CREATE_TIME_OFF", "name": "Create time off", "description": "Tool to create a new timeOff instance in a team's schedule. Use when you need to create approved time off for a team member (vacation, sick leave, etc.)." }, { "slug": "MICROSOFT_TEAMS_CREATE_TIME_OFF_REASON", "name": "Create time off reason", "description": "Tool to create a new time off reason in a team's schedule. Use when you need to define a new category for time off requests with a custom name and icon." }, { "slug": "MICROSOFT_TEAMS_CREATE_TIME_OFF_REQUEST", "name": "Create time off request", "description": "Tool to create a new time off request in a team's schedule. Use when a team member needs to request time off for vacation, sick leave, or other absences." }, { "slug": "MICROSOFT_TEAMS_CREATE_USER_ONLINE_MEETING", "name": "Create user online meeting", "description": "Tool to create a new Microsoft Teams online meeting for a specific user. Use when you need to create an online meeting on behalf of a user." }, { "slug": "MICROSOFT_TEAMS_DELETE_CALL_OPERATION", "name": "Delete Call Operation", "description": "Tool to delete a navigation property operation for a communications call. Use when you need to remove a specific commsOperation from a call." }, { "slug": "MICROSOFT_TEAMS_DELETE_CHANNEL", "name": "Delete team channel", "description": "Tool to delete a channel from a Microsoft Teams team. Use when you need to permanently remove a channel. Note that the General channel cannot be deleted." }, { "slug": "MICROSOFT_TEAMS_DELETE_DAY_NOTE", "name": "Delete team schedule day note", "description": "Tool to delete a day note from a Microsoft Teams schedule. Use when you need to remove a day note from a specific date in the team schedule. The If-Match header with ETag value is required for deletion." }, { "slug": "MICROSOFT_TEAMS_DELETE_OPEN_SHIFT", "name": "Delete open shift", "description": "Tool to delete an open shift from a Microsoft Teams schedule. Use when you need to remove an unfilled shift from the team schedule." }, { "slug": "MICROSOFT_TEAMS_DELETE_SCHEDULING_GROUP", "name": "Delete team scheduling group", "description": "Tool to delete a scheduling group from a Microsoft Teams team schedule. Use this when you need to remove a scheduling group from a specific team." }, { "slug": "MICROSOFT_TEAMS_DELETE_SHIFT", "name": "Delete team schedule shift", "description": "Tool to delete a shift from a Microsoft Teams team schedule. Use when you need to permanently remove a scheduled shift." }, { "slug": "MICROSOFT_TEAMS_DELETE_SOFT_MESSAGE", "name": "Soft-delete Teams channel message", "description": "Tool to soft-delete a message in a Teams channel. Use when you need to remove a message without permanently deleting it." }, { "slug": "MICROSOFT_TEAMS_DELETE_TAB", "name": "Delete channel tab", "description": "Tool to delete a tab from a Microsoft Teams channel. Use when you need to permanently remove a tab from a channel." }, { "slug": "MICROSOFT_TEAMS_DELETE_TEAM", "name": "Delete Teams team", "description": "Tool to delete a Microsoft Teams team. Use after confirming the target team ID." }, { "slug": "MICROSOFT_TEAMS_DELETE_TIME_OFF", "name": "Delete time off", "description": "Tool to delete a timeOff from a team's schedule. Use when you need to remove a scheduled time off entry from a team member's schedule." }, { "slug": "MICROSOFT_TEAMS_DELETE_TIME_OFF_REASON", "name": "Delete time off reason", "description": "Tool to delete a time off reason from a team's schedule. Use when you need to remove a time off reason. Note: This operation marks the time off reason as inactive rather than permanently deleting it." }, { "slug": "MICROSOFT_TEAMS_DELETE_TIME_OFF_REQUEST", "name": "Delete time off request", "description": "Tool to delete a time off request from a Microsoft Teams team schedule. Use when you need to permanently remove a time off request." }, { "slug": "MICROSOFT_TEAMS_DELETE_USER_ONLINE_MEETING", "name": "Delete User Online Meeting", "description": "Tool to delete an online meeting for a user. Use when you need to permanently remove an online meeting from a user's calendar." }, { "slug": "MICROSOFT_TEAMS_GET_CALL_OPERATION", "name": "Get call operation", "description": "Tool to get a specific commsOperation for a call. Use to check the status of long-running call operations." }, { "slug": "MICROSOFT_TEAMS_GET_CHANNEL", "name": "Get team channel", "description": "Tool to get a specific channel in a team. Use after obtaining valid team and channel IDs to fetch channel details." }, { "slug": "MICROSOFT_TEAMS_GET_CHANNEL_MESSAGE", "name": "Get Teams channel message", "description": "Retrieves a specific message from a Microsoft Teams channel using its Team, Channel, and Message IDs." }, { "slug": "MICROSOFT_TEAMS_GET_CHANNEL_MESSAGE_REPLY", "name": "Get channel message reply", "description": "Tool to retrieve a single reply to a message in a channel. Use when you need to get details of a specific reply message." }, { "slug": "MICROSOFT_TEAMS_GET_CHAT", "name": "Get chat", "description": "Tool to retrieve a single chat by ID. Use when you need to get details about a specific chat." }, { "slug": "MICROSOFT_TEAMS_GET_CHAT_LAST_MESSAGE_PREVIEW", "name": "Get chat last message preview (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_GET_CHAT instead. Tool to get lastMessagePreview from a chat. Use when you need to see the preview of the most recent message in a specific chat." }, { "slug": "MICROSOFT_TEAMS_GET_CHAT_MEMBER", "name": "Get chat member", "description": "Tool to get a specific conversation member from a Microsoft Teams chat. Use when you need details about a specific chat participant." }, { "slug": "MICROSOFT_TEAMS_GET_CHAT_MESSAGE", "name": "Get chat message", "description": "Tool to get a specific chat message. Use after confirming chat_id and message_id." }, { "slug": "MICROSOFT_TEAMS_GET_DAY_NOTE", "name": "Get day note", "description": "Tool to retrieve a specific day note from a team's schedule. Use when you need to view notes for a specific date in a team's schedule." }, { "slug": "MICROSOFT_TEAMS_GET_FILES_FOLDER", "name": "Get channel files folder", "description": "Tool to get the files folder (DriveItem) metadata for a specific channel in a Microsoft Teams team. Use when you need to access file storage information for a channel." }, { "slug": "MICROSOFT_TEAMS_GET_GROUP_TEAM_CHANNEL", "name": "Get group team channel (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_GET_CHANNEL instead. Tool to get a specific channel from a group's team. Use when you have a group ID and channel ID to fetch channel details." }, { "slug": "MICROSOFT_TEAMS_GET_MEETING_TRANSCRIPT_CONTENT", "name": "Get meeting transcript content", "description": "Retrieve the raw text/vtt content for a Microsoft Teams meeting transcript. Use this after listing meeting transcripts and selecting a transcript ID. The Microsoft Graph transcript APIs only support calendar-backed online meetings that have an available transcript; standalone meetings created only with the create onlineMeeting API can return 412." }, { "slug": "MICROSOFT_TEAMS_GET_MY_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve a user's profile (id/UPN/mail/displayName). Supports both delegated auth (use user_id='me') and application-only auth (specify user ID/UPN). Use when operations require user identity information (e.g., chat creation)." }, { "slug": "MICROSOFT_TEAMS_GET_OFFER_SHIFT_REQUEST", "name": "Get offer shift request", "description": "Tool to get a specific offer shift request from a Microsoft Teams schedule. Use when you need to retrieve details of a single offer shift request by its ID." }, { "slug": "MICROSOFT_TEAMS_GET_ONLINE_MEETING", "name": "Get online meeting", "description": "Tool to retrieve details of a specific Microsoft Teams online meeting by its ID. Use when you need to get the properties and relationships of an existing meeting." }, { "slug": "MICROSOFT_TEAMS_GET_OPEN_SHIFT", "name": "Get open shift", "description": "Tool to get a specific open shift from a Microsoft Teams schedule. Use when you need to retrieve details about a particular unassigned open shift by its ID." }, { "slug": "MICROSOFT_TEAMS_GET_OPEN_SHIFT_CHANGE_REQUEST", "name": "Get open shift change request", "description": "Tool to retrieve a specific open shift change request from a Microsoft Teams team's schedule. Use when you need to get details about a particular open shift request including its state, sender, and manager actions." }, { "slug": "MICROSOFT_TEAMS_GET_PRESENCE", "name": "Get User Presence", "description": "Tool to get a specific user's presence information. Use when checking availability status, activity, or work location for a particular user." }, { "slug": "MICROSOFT_TEAMS_GET_PRIMARY_CHANNEL", "name": "Get primary channel", "description": "Tool to get the default (General) channel of a team. Use when you need to access the primary channel without knowing its channel ID." }, { "slug": "MICROSOFT_TEAMS_GET_SCHEDULE", "name": "Get schedule", "description": "Tool to retrieve the properties and relationships of a schedule object. Use when you need to get schedule configuration details for a team." }, { "slug": "MICROSOFT_TEAMS_GET_SCHEDULING_GROUP", "name": "Get scheduling group", "description": "Tool to retrieve a specific scheduling group from a Microsoft Teams team's schedule. Use when you need to get details about a scheduling group including its members, status, and metadata." }, { "slug": "MICROSOFT_TEAMS_GET_SHIFT", "name": "Get shift", "description": "Tool to retrieve a shift by ID from a Microsoft Teams team schedule. Use when you need to get details of a specific shift assignment." }, { "slug": "MICROSOFT_TEAMS_GET_SWAP_SHIFTS_CHANGE_REQUEST", "name": "Get swap shifts change request", "description": "Tool to get a specific swap shift change request from a Microsoft Teams schedule. Use when you need to retrieve details of a single swap shift change request by its ID." }, { "slug": "MICROSOFT_TEAMS_GET_TAB", "name": "Get channel tab", "description": "Tool to get a specific tab in a Microsoft Teams channel. Use when you need to retrieve details of a particular tab." }, { "slug": "MICROSOFT_TEAMS_GET_TEAM_FROM_GROUP", "name": "Get Team", "description": "Tool to get a specific team. Use when full details of one team by ID are needed." }, { "slug": "MICROSOFT_TEAMS_GET_TEAM_MEMBER", "name": "Get team member", "description": "Tool to get a specific conversation member from a team. Use when retrieving details about a team member by their membership ID." }, { "slug": "MICROSOFT_TEAMS_GET_TEAM_OPERATION", "name": "Get Team Operation Status", "description": "Tool to retrieve the status of a Teams async operation using teamId and operationId. Use when you need to poll and track the progress of long-running operations like team creation or archiving. Microsoft recommends waiting at least 30 seconds between polling requests." }, { "slug": "MICROSOFT_TEAMS_GET_TEAMS_APP_DEFINITION", "name": "Get installed app in team", "description": "Tool to get an installed app in a Microsoft Teams team. Use when you need to retrieve details of a specific app installation." }, { "slug": "MICROSOFT_TEAMS_GET_TEAM_TEMPLATE", "name": "Get Team Template (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_GET_TEAM_FROM_GROUP with expand=\"template\" instead. Tool to get the template used to create a team. Use when you need to retrieve the template information for a specific team." }, { "slug": "MICROSOFT_TEAMS_GET_TIME_OFF", "name": "Get time off by ID", "description": "Tool to retrieve a specific time off entry from a Microsoft Teams team's schedule by ID. Use when you need to get details about a particular time off period including its dates, reason, and status." }, { "slug": "MICROSOFT_TEAMS_GET_TIME_OFF_REASON", "name": "Get time off reason", "description": "Tool to get a specific time off reason from a team's schedule. Use when you need to retrieve details about a time off reason including its display name, icon type, and active status." }, { "slug": "MICROSOFT_TEAMS_GET_TIME_OFF_REQUEST", "name": "Get time off request", "description": "Tool to retrieve a specific time off request from a team's schedule. Use when you need to check the status or details of a time off request." }, { "slug": "MICROSOFT_TEAMS_GET_USER_CHAT", "name": "Get user chat", "description": "Tool to retrieve a specific chat for a user. Use when you need to get details about a chat that a specific user is part of." }, { "slug": "MICROSOFT_TEAMS_GET_USER_TEAMWORK", "name": "Get User Teamwork", "description": "Tool to get userTeamwork settings for a specified user, including Microsoft Teams region and locale. Use when you need to determine user's Teams configuration or regional settings." }, { "slug": "MICROSOFT_TEAMS_HIDE_CHAT_FOR_USER", "name": "Hide chat for user", "description": "Tool to hide a Microsoft Teams chat for a specific user. Use when you need to hide a chat from a user's chat list. Note: The chat is automatically unhidden if an action such as sending a message is taken at the chat level." }, { "slug": "MICROSOFT_TEAMS_LIST_ASSOCIATED_TEAMS", "name": "List user's associated teams", "description": "Tool to list teams that a user is associated with in Microsoft Teams. Use when you need to get teams where a user is either a direct member or a member of a shared channel hosted in the team." }, { "slug": "MICROSOFT_TEAMS_LIST_CHANNEL_TABS", "name": "List channel tabs", "description": "Tool to list tabs from a Microsoft Teams channel. Use when you need to retrieve all tabs configured in a specific channel. Note: The Files tab (native to channels) is not returned by this API." }, { "slug": "MICROSOFT_TEAMS_LIST_CHAT", "name": "List chats (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_CHATS_GET_ALL_CHATS instead. Tool to list chats that the user is part of. Use when retrieving the list of chats for a user." }, { "slug": "MICROSOFT_TEAMS_LIST_CHAT_MEMBERS", "name": "List chat members (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_USERS_CHATS_LIST_MEMBERS instead. Tool to list members of a Microsoft Teams chat. Use when you need to retrieve the members of a specific one-on-one chat, group chat, or meeting chat." }, { "slug": "MICROSOFT_TEAMS_LIST_COMMUNICATIONS_CALLS_OPERATIONS", "name": "List Communications Call Operations", "description": "Tool to list operations on a Microsoft Teams call. Use when you need to retrieve the status of long-running operations like adding large gallery views, recording, or playing prompts on an active call." }, { "slug": "MICROSOFT_TEAMS_LIST_DELETED_TEAMS", "name": "List deleted teams", "description": "Tool to list deleted Microsoft Teams and their properties. Use when you need to retrieve a list of teams that have been deleted." }, { "slug": "MICROSOFT_TEAMS_LIST_GROUP_TEAM_CHANNELS", "name": "List group team channels (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_LIST_CHANNELS instead. Tool to list channels from a group's associated team. Use when you have a group ID and need to retrieve its team's channels." }, { "slug": "MICROSOFT_TEAMS_LIST_GROUP_TEAM_OPERATIONS", "name": "List Group Team Operations", "description": "Tool to list operations on a group's team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific group's team." }, { "slug": "MICROSOFT_TEAMS_LIST_INCOMING_CHANNELS", "name": "List team incoming channels", "description": "Tool to list incoming channels shared with a Microsoft Teams team. Use when you need to view channels from other teams that have been shared with this team." }, { "slug": "MICROSOFT_TEAMS_LIST_INSTALLED_APPS", "name": "List installed apps in team", "description": "Tool to list apps installed in a Microsoft Teams team. Use when you need to retrieve the collection of apps installed in a specific team." }, { "slug": "MICROSOFT_TEAMS_LIST_MEETING_TRANSCRIPTS", "name": "List meeting transcripts", "description": "List meeting transcripts for a Microsoft Teams online meeting. Retrieves all transcripts associated with a specific meeting, including metadata such as creation time, meeting organizer, and content URL. Use this action when you need to access or review the transcription records of a meeting, for example to extract meeting notes, analyze discussion topics, or maintain compliance records." }, { "slug": "MICROSOFT_TEAMS_LIST_MESSAGE_REPLIES", "name": "List channel message replies", "description": "Tool to list all replies to a specific message in a Microsoft Teams channel. Use when you need to retrieve the conversation thread for a particular message." }, { "slug": "MICROSOFT_TEAMS_LIST_OFFER_SHIFT_REQUESTS", "name": "List offer shift requests", "description": "Tool to list offer shift requests in a Microsoft Teams schedule. Use when you need to retrieve all offer shift requests for a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_ONLINE_MEETINGS", "name": "List user online meetings", "description": "Look up a Microsoft Teams online meeting for a user by identifier. This is effectively a 'lookup-by-identifier' endpoint, NOT a general-purpose list or search. Microsoft Graph REQUIRES an OData $filter predicate on /me/onlineMeetings and /users/{user_id}/onlineMeetings; without it the API returns HTTP 400 'Filter expression expected'. The only supported filter properties on this endpoint are JoinWebUrl and joinMeetingIdSettings/joinMeetingId (e.g. \"JoinWebUrl eq 'https://teams.microsoft.com/l/meetup-join/...'\" or \"joinMeetingIdSettings/joinMeetingId eq '1234567890'\"). subject and VideoTeleconferenceId are NOT supported here. If you already know the meeting id, prefer MICROSOFT_TEAMS_USERS_GET_ONLINE_MEETING. There is no Graph API for free-text searching a user's meetings by title." }, { "slug": "MICROSOFT_TEAMS_LIST_OPEN_SHIFT_CHANGE_REQUESTS", "name": "List open shift change requests", "description": "Tool to list open shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all open shift requests for a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_OPEN_SHIFTS", "name": "List open shifts", "description": "Tool to list open shifts in a Microsoft Teams schedule. Use when you need to retrieve all unassigned open shifts for a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_PEOPLE", "name": "List People", "description": "Retrieves a list of people relevant to a specified user from Microsoft Graph, noting the `search` parameter is only effective if `user_id` is 'me'." }, { "slug": "MICROSOFT_TEAMS_LIST_PINNED_MESSAGES", "name": "List pinned messages", "description": "Tool to retrieve the list of pinned messages in a Microsoft Teams chat. Use when you need to get all messages that have been pinned in a specific chat conversation." }, { "slug": "MICROSOFT_TEAMS_LIST_SCHEDULE_DAY_NOTES", "name": "List team schedule day notes", "description": "Tool to list all dayNotes from a team's schedule. Use when you need to retrieve all day notes or search/filter notes for specific dates in a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_SCHEDULING_GROUPS", "name": "List scheduling groups", "description": "Tool to list scheduling groups in a team's schedule. Use when you need to retrieve all scheduling groups for shift management and organization." }, { "slug": "MICROSOFT_TEAMS_LIST_SHIFTS", "name": "List shifts", "description": "Tool to list shifts in a Microsoft Teams schedule. Use when you need to retrieve all shifts for a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_SWAP_SHIFTS_CHANGE_REQUESTS", "name": "List swap shifts change requests", "description": "Tool to list swap shift change requests in a Microsoft Teams schedule. Use when you need to retrieve all swap shift requests for a team's schedule." }, { "slug": "MICROSOFT_TEAMS_LIST_TEAM_MEMBERS", "name": "List team members", "description": "Tool to list members of a Microsoft Teams team. Use when you need to retrieve the members of a specific team, for auditing or notifications." }, { "slug": "MICROSOFT_TEAMS_LIST_TEAM_OPERATIONS", "name": "List Team Operations", "description": "Tool to list operations from a team. Use when you need to retrieve all async operations (such as team creation, archiving, channel creation) for a specific team." }, { "slug": "MICROSOFT_TEAMS_LIST_TEAM_PERMISSION_GRANTS", "name": "List teams permission grants", "description": "Tool to list all resource-specific permission grants for a team with support for filtering, pagination, and sorting. Use when you need to identify which Microsoft Entra apps have access to a team and their corresponding permissions." }, { "slug": "MICROSOFT_TEAMS_LIST_TEAM_TEMPLATES", "name": "List Teams templates", "description": "Tool to list available Microsoft Teams templates. Use when retrieving templates for team creation or customization workflows." }, { "slug": "MICROSOFT_TEAMS_LIST_TIME_OFF", "name": "List team time off entries", "description": "Tool to list time off entries from a Microsoft Teams team's schedule. Use when you need to retrieve all time off periods for a team." }, { "slug": "MICROSOFT_TEAMS_LIST_TIME_OFF_REASONS", "name": "List team schedule time off reasons", "description": "Tool to get time off reasons from a team's schedule. Use when you need to retrieve the list of available time off reasons for scheduling in Microsoft Teams." }, { "slug": "MICROSOFT_TEAMS_LIST_TIME_OFF_REQUESTS", "name": "List time off requests", "description": "Tool to retrieve a list of time off requests from a Microsoft Teams team's schedule. Use when you need to view all time off requests including their status (pending, approved, declined), dates, and associated users." }, { "slug": "MICROSOFT_TEAMS_LIST_USER_CHAT_MEMBERS", "name": "List user's chat members", "description": "Tool to list members of a specific chat for a user in Microsoft Teams. Use when you need to retrieve the members of a specific user's chat, whether it's a one-on-one chat, group chat, or meeting chat." }, { "slug": "MICROSOFT_TEAMS_LIST_USER_CHAT_MESSAGES", "name": "List user chat messages", "description": "Tool to retrieve messages from a specific chat for a given user. Use when you need to access chat messages through the user context." }, { "slug": "MICROSOFT_TEAMS_LIST_USER_JOINED_TEAMS", "name": "List user joined teams", "description": "Tool to list the Teams that a specified user is a direct member of (joined teams). Use for access/membership audits when enumerating team members is access-restricted." }, { "slug": "MICROSOFT_TEAMS_LIST_USERS", "name": "List users", "description": "Tool to list all users in the organization. Use when you need to retrieve directory users with filtering, pagination, and field selection." }, { "slug": "MICROSOFT_TEAMS_MARK_CHAT_READ_FOR_USER", "name": "Mark chat as read for user", "description": "Tool to mark a chat as read for a specific user in Microsoft Teams. Use when you need to update the read status of a chat for a particular user." }, { "slug": "MICROSOFT_TEAMS_MARK_CHAT_UNREAD_FOR_USER", "name": "Mark chat as unread for user", "description": "Marks a specific chat as unread for a user by setting the last read message timestamp. Use when you need to mark messages after a certain time as unread." }, { "slug": "MICROSOFT_TEAMS_PIN_MESSAGE", "name": "Pin message in chat", "description": "Tool to pin a message in a Microsoft Teams chat. Use when you need to highlight an important message for quick access." }, { "slug": "MICROSOFT_TEAMS_POST_MESSAGE_REPLY", "name": "Reply to Teams channel message", "description": "Sends a reply to an existing message, identified by `message_id`, within a specific `channel_id` of a given `team_id` in Microsoft Teams." }, { "slug": "MICROSOFT_TEAMS_PROVISION_CHANNEL_EMAIL", "name": "Provision channel email address", "description": "Tool to provision an email address for a Microsoft Teams channel. Use when you need to enable email integration for a specific channel." }, { "slug": "MICROSOFT_TEAMS_REMOVE_CHANNEL_EMAIL", "name": "Remove channel email address", "description": "Tool to remove the email address of a channel in Microsoft Teams. Use when you need to disable email integration for a specific channel." }, { "slug": "MICROSOFT_TEAMS_REMOVE_CHAT_MEMBER", "name": "Remove chat member", "description": "Tool to remove a member from a Microsoft Teams chat. Use when you need to remove a user from a chat conversation." }, { "slug": "MICROSOFT_TEAMS_REMOVE_TEAM_MEMBER", "name": "Remove team member", "description": "Tool to remove a member from a Microsoft Teams team. Use when you need to remove a user from a team." }, { "slug": "MICROSOFT_TEAMS_REMOVE_TEAM_MEMBERS", "name": "Remove team members", "description": "Tool to remove multiple members from a Microsoft Teams team in bulk. Use when you need to remove one or more users from a team." }, { "slug": "MICROSOFT_TEAMS_SEARCH_FILES", "name": "Search Teams files", "description": "Search files in Microsoft Teams using KQL syntax. Find files by name, type, content, author, and modification date across all Teams and channels. Supports boolean logic and date ranges. Examples: 'filetype:pdf AND lastmodifiedtime>=2024-10-01', 'contract AND budget', 'filename:report AND author:user@example.com'" }, { "slug": "MICROSOFT_TEAMS_SEARCH_MESSAGES", "name": "Search Teams messages", "description": "Search Microsoft Teams messages using powerful KQL syntax. Supports sender (from:), date filters (sent:), attachments, and boolean logic. Works across all Teams chats and channels the user has access to. Examples: 'from:user@example.com AND sent>=2024-10-01', 'punchlist OR termination', 'sent>today-30 AND hasattachment:yes' NOTE: This action requires an organizational Microsoft 365 account (Azure AD/Entra ID). It does NOT work with personal Microsoft accounts (MSA) such as @outlook.com, @hotmail.com, or @live.com. If using a personal Microsoft account, this search will fail." }, { "slug": "MICROSOFT_TEAMS_SEND_ACTIVITY_NOTIFICATION", "name": "Send Activity Notification to Recipients", "description": "Tool to send activity notifications to specified recipients in Microsoft Teams. Use when you need to send custom notifications to users, team members, or channel members." }, { "slug": "MICROSOFT_TEAMS_SET_ME_PREFERRED_PRESENCE", "name": "Set My Preferred Presence (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_SET_USER_PREFERRED_PRESENCE instead. Tool to set the preferred availability and activity status for the current authenticated user. Use when you need to update your own presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists." }, { "slug": "MICROSOFT_TEAMS_SET_PRESENCE", "name": "Set Presence", "description": "Tool to set the presence information for a user's application presence session. Use when you need to update a user's presence state in Microsoft Teams. Valid combinations: Available/Available, Busy/InACall, Busy/InAConferenceCall, Away/Away, or DoNotDisturb/Presenting." }, { "slug": "MICROSOFT_TEAMS_SET_PRESENCE_AUTOMATIC_LOCATION", "name": "Set Presence Automatic Location", "description": "Tool to set the automatic presence location (office/remote/timeOff) for a specified user. Use when updating work location status in Microsoft Teams via automatic detection." }, { "slug": "MICROSOFT_TEAMS_SET_PRESENCE_MANUAL_LOCATION", "name": "Set Presence Manual Location (Deprecated)", "description": "DEPRECATED: Use MICROSOFT_TEAMS_SET_USER_PRESENCE_MANUAL_LOCATION instead. Tool to set the manual presence location (office/remote/timeOff) for the authenticated user. Use when updating work location status in Microsoft Teams." }, { "slug": "MICROSOFT_TEAMS_SET_USER_PREFERRED_PRESENCE", "name": "Set User Preferred Presence", "description": "Tool to set the preferred availability and activity status for a user. Use when you need to update a user's presence status in Microsoft Teams. Preferred presence takes effect only when at least one presence session exists for the user." }, { "slug": "MICROSOFT_TEAMS_SET_USER_PRESENCE_MANUAL_LOCATION", "name": "Set User Presence Manual Location", "description": "Tool to set the manual presence location (office/remote/timeOff) for a specific user. Use when updating work location status for a user in Microsoft Teams." }, { "slug": "MICROSOFT_TEAMS_SHARE_TEAM_SCHEDULE", "name": "Share Team Schedule", "description": "Tool to share a Microsoft Teams schedule for a specified time range. Use when you need to make a team's schedule visible to members." }, { "slug": "MICROSOFT_TEAMS_TEAMS_CREATE_CHANNEL", "name": "Create a channel", "description": "(DEPRECATED: use `MICROSOFT_TEAMS_CREATE_CHANNEL`) Tool to create a new standard, private, or shared channel within a Microsoft Teams team. Use when you need to create a new channel for team collaboration." }, { "slug": "MICROSOFT_TEAMS_TEAMS_CREATE_CHAT", "name": "Create Chat", "description": "Creates a new chat; if a 'oneOnOne' chat with the specified members already exists, its details are returned, while 'group' chats are always newly created. IMPORTANT: The authenticated user MUST be included as one of the members." }, { "slug": "MICROSOFT_TEAMS_TEAMS_LIST", "name": "List Teams", "description": "Retrieves Microsoft Teams accessible by the authenticated user, allowing filtering, property selection, and pagination." }, { "slug": "MICROSOFT_TEAMS_TEAMS_LIST_CHANNEL_MESSAGES", "name": "List channel messages", "description": "Tool to list messages in a Teams channel when team_id and channel_id are known (no chat_id required). Use this to enumerate channel message history and obtain message_id for follow-on operations like listing replies or getting message details." }, { "slug": "MICROSOFT_TEAMS_TEAMS_LIST_CHANNELS", "name": "List team channels", "description": "Retrieves channels for a specified Microsoft Teams team ID (must be valid and for an existing team), with options to include shared channels, filter results, and select properties." }, { "slug": "MICROSOFT_TEAMS_TEAMS_LIST_CHAT_MESSAGES", "name": "List chat messages (Deprecated)", "description": "DEPRECATED: Use ListUserChatMessages instead. Retrieves messages (newest first) from an existing and accessible Microsoft Teams one-on-one chat, group chat, or channel thread, specified by `chat_id`." }, { "slug": "MICROSOFT_TEAMS_TEAMS_POST_CHANNEL_MESSAGE", "name": "Send Channel Message", "description": "Posts a new top-level message to a channel in Microsoft Teams (does NOT reply to an existing message). Despite the file name 'reply_to_channel_chat', this action creates a brand-new message in the channel via POST /teams/{id}/channels/{id}/messages. To reply to an existing message thread, use the dedicated reply action instead." }, { "slug": "MICROSOFT_TEAMS_TEAMS_POST_CHAT_MESSAGE", "name": "Send message to Teams chat", "description": "Sends a non-empty message (text or HTML) to a specified, existing Microsoft Teams chat; content must be valid HTML if `content_type` is 'html'." }, { "slug": "MICROSOFT_TEAMS_TEAMS_POST_MESSAGE_REPLY", "name": "Reply to Teams channel message", "description": "(DEPRECATED: use `MICROSOFT_TEAMS_POST_MESSAGE_REPLY`) Sends a reply to an existing message, identified by `message_id`, within a specific `channel_id` of a given `team_id` in Microsoft Teams." }, { "slug": "MICROSOFT_TEAMS_UNARCHIVE_CHANNEL", "name": "Unarchive channel", "description": "Tool to unarchive a channel in a Microsoft Teams team. Use when you need to restore an archived channel to active state." }, { "slug": "MICROSOFT_TEAMS_UNARCHIVE_GROUP_TEAM_CHANNEL", "name": "Unarchive group team channel", "description": "Tool to unarchive a channel in a Microsoft Teams group's team. Use when you need to restore an archived channel to active state." }, { "slug": "MICROSOFT_TEAMS_UNARCHIVE_TEAM", "name": "Unarchive Teams team", "description": "Tool to unarchive a Microsoft Teams team. Use when you need to restore an archived team to active state." }, { "slug": "MICROSOFT_TEAMS_UNHIDE_CHAT_FOR_USER", "name": "Unhide Chat For User", "description": "Tool to unhide a chat for a specific user. Use when you need to make a hidden chat visible again in the user's chat list." }, { "slug": "MICROSOFT_TEAMS_UNPIN_MESSAGE", "name": "Unpin chat message", "description": "Tool to unpin a message from a Microsoft Teams chat. Use when you need to remove a pinned message." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CALL", "name": "Update Call", "description": "Tool to update the navigation property calls in Microsoft Teams communications. Use when you need to modify properties of an existing call." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CALL_OPERATION", "name": "Update Call Operation", "description": "Tool to update the navigation property operations in communications. Use when you need to modify properties of an existing call operation." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CALL_PARTICIPANT", "name": "Update Call Participant", "description": "Tool to update a participant in a Microsoft Teams call. Use when you need to modify participant properties such as lobby status." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CHANNEL", "name": "Update Teams channel", "description": "Tool to update channel properties in a Microsoft Teams group. Use when you need to modify channel description, display name, or favorite settings." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CHANNEL_MESSAGE", "name": "Update Teams channel message", "description": "Tool to update a message in a channel. Use when you need to modify an existing channel message after confirming channel and message IDs." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CHAT", "name": "Update Chat", "description": "Tool to update the properties of a chat. Use when you need to modify chat settings such as the topic." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CHAT_MESSAGE", "name": "Update Teams chat message", "description": "Tool to update a specific message in a chat. Use when you need to correct or modify a sent chat message." }, { "slug": "MICROSOFT_TEAMS_UPDATE_CONTENT_SHARING_SESSION", "name": "Update Content Sharing Session", "description": "Tool to update a content sharing session in a Microsoft Teams call. Use when you need to modify the properties of an existing content sharing session." }, { "slug": "MICROSOFT_TEAMS_UPDATE_DAY_NOTE", "name": "Update schedule day note", "description": "Tool to update an existing day note in a team's schedule. Use when you need to modify notes or reminders for a specific date in the team schedule." }, { "slug": "MICROSOFT_TEAMS_UPDATE_ONLINE_MEETING", "name": "Update online meeting", "description": "Tool to update the properties of an existing Microsoft Teams online meeting. Use when you need to modify meeting details such as subject, start time, or end time." }, { "slug": "MICROSOFT_TEAMS_UPDATE_OPEN_SHIFT", "name": "Update open shift", "description": "Tool to update an existing open shift in a Microsoft Teams team schedule. Use when you need to modify open shift details such as times, theme, notes, or open slot count." }, { "slug": "MICROSOFT_TEAMS_UPDATE_SCHEDULING_GROUP", "name": "Update scheduling group", "description": "Tool to replace/update a scheduling group in a team's schedule. Use when you need to modify properties of an existing scheduling group such as display name, active status, code, or member list." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TAB", "name": "Update Teams channel tab", "description": "Tool to update the properties of a tab in a Microsoft Teams channel. Use when you need to modify tab display name, configuration, or web URL." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update the properties of a team. Use when you need to modify team settings such as member, messaging, or fun settings." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TEAM_MEMBER", "name": "Update team member", "description": "Tool to update a team member's roles or properties in Microsoft Teams. Use when you need to change a member's role (e.g., promote to owner or demote to member)." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TEAM_SCHEDULE_SHIFT", "name": "Update team schedule shift", "description": "Tool to update an existing shift in a Microsoft Teams team schedule. Use when you need to modify shift details like times, assigned user, or notes." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TIME_OFF", "name": "Update time off", "description": "Tool to replace an existing timeOff entry in a team's schedule. Use when you need to update time off details including dates, reason, or status." }, { "slug": "MICROSOFT_TEAMS_UPDATE_TIME_OFF_REASON", "name": "Update time off reason", "description": "Tool to update a time off reason in a team's schedule. Use when you need to modify the display name, icon, active status, or code of an existing time off reason." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft-teams_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Channel.Create,Channel.ReadBasic.All,ChannelMessage.Read.All,ChannelMessage.ReadWrite,ChannelMessage.Send,ChannelSettings.ReadWrite.All,Chat.Create,Chat.Read,Chat.ReadBasic,Chat.ReadWrite,Chat.ReadWrite.All,ChatMessage.Read,ChatMessage.Send,Directory.ReadWrite.All,Group.ReadWrite.All,offline_access,People.Read.All,Presence.ReadWrite,Team.Create,Team.ReadBasic.All,TeamMember.ReadWrite.All,TeamsActivity.Read,TeamsActivity.Send,User.Read,OnlineMeetings.ReadWrite" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } }, { "mode": "S2S_OAUTH2", "name": "microsoft_teams_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & Secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Your Microsoft Entra (Azure AD) tenant ID in GUID format (e.g. \"a6a55c5f-0747-4804-a166-2b5dfc9ace2a\"). Found in Azure Portal > Microsoft Entra ID > Overview > Tenant ID.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "asana", "name": "Asana", "logo": "https://logos.composio.dev/api/asana", "description": "Tool to help teams organize, track, and manage their work.", "category": "project management", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 153, "triggerCount": 6, "version": "20260703_00", "tools": [ { "slug": "ASANA_ADD_FOLLOWERS_TO_PROJECT", "name": "Add Followers to Project", "description": "Tool to add followers to a project in Asana. Use this tool when you need to add one or more users as followers to a specific project. Followers will receive notifications when tasks are added to the project." }, { "slug": "ASANA_ADD_FOLLOWERS_TO_TASK", "name": "Add Followers to Task", "description": "Tool to add followers to a task in Asana. Use this tool when you need to add one or more users as followers to a specific task. This will notify them of updates to the task." }, { "slug": "ASANA_ADD_ITEM_TO_PORTFOLIO", "name": "Add item to portfolio", "description": "Add a project (or other supported item) to an Asana portfolio using the native addItem endpoint. Use when a workflow needs to attach a newly created project to a portfolio without using ASANA_SUBMIT_PARALLEL_REQUESTS." }, { "slug": "ASANA_ADD_MEMBERS_TO_PROJECT", "name": "Add Members to Project", "description": "Tool to add users to a project in Asana. Use this tool when you need to add one or more users as members to a specific project. Members can view and contribute to the project." }, { "slug": "ASANA_ADD_PROJECT_FOR_TASK", "name": "Add Project to Task", "description": "Tool to add a project to a task in Asana. Use when you need to associate a task with a project. Optionally position the task within the project using insert_before, insert_after, or section parameters." }, { "slug": "ASANA_ADD_SUPPORTING_RELATIONSHIP", "name": "Add Supporting Relationship to Goal", "description": "Tool to add a supporting goal relationship to a goal. Use when you want to link a project, task, portfolio, or another goal as a supporting resource to a specific goal in Asana." }, { "slug": "ASANA_ADD_TAG_TO_TASK", "name": "Add Tag to Task", "description": "Tool to add an existing tag to a task in Asana. Use when you need to add a tag for prioritization, routing, or automation workflows. Tags cannot be added via Update Task, so this dedicated endpoint is required." }, { "slug": "ASANA_ADD_TASK_DEPENDENCIES", "name": "Add Task Dependencies", "description": "Tool to add dependency relationships to an Asana task. Use when you need to mark one or more tasks as prerequisites (dependencies) for another task, ensuring the dependency tasks must be completed first." }, { "slug": "ASANA_ADD_TASK_TO_SECTION", "name": "Add task to section", "description": "Adds an existing task to a section, optionally positioning it before or after another task in that section; if no position is specified, the task is added to the end." }, { "slug": "ASANA_ADD_USER_TO_TEAM", "name": "Add User for Team", "description": "Tool to add a user to a team in Asana. Use this when you need to add a user to a specific team by providing their user GID, email, or \"me\" for the current user." }, { "slug": "ASANA_ADD_USER_TO_WORKSPACE", "name": "Add User for Workspace", "description": "Tool to add a user to a workspace or organization in Asana. Use this when you need to add a user to a specific workspace by providing their user GID, email, or \"me\" for the current user." }, { "slug": "ASANA_APPROVE_ACCESS_REQUEST", "name": "Approve Access Request", "description": "Tool to approve an access request in Asana. Use when you need to grant access to a resource that requires approval workflow." }, { "slug": "ASANA_CREATE_ACCESS_REQUEST", "name": "Create Access Request", "description": "Tool to create an access request in Asana. Use when you need to request access to a project or portfolio that you don't currently have access to." }, { "slug": "ASANA_CREATE_ALLOCATION", "name": "Create Allocation", "description": "Creates a new allocation. Use when you need to schedule or assign a specific amount of a user's time per week to a task or project within a defined period." }, { "slug": "ASANA_CREATE_A_PROJECT", "name": "Create a project", "description": "Creates a new Asana project in the specified workspace. Requires a `workspace` GID, and additionally a `team` GID if the workspace is an organization." }, { "slug": "ASANA_CREATE_A_TAG_IN_A_WORKSPACE", "name": "Create a tag in a workspace", "description": "Creates a new tag, with properties like name and color defined in the request body, within a specific Asana workspace (using `workspace_gid`); this tag helps categorize tasks, is confined to the workspace, and is not automatically applied to tasks." }, { "slug": "ASANA_CREATE_A_TASK", "name": "Create task in asana with specific details", "description": "Creates a new Asana task; requires 'workspace', 'parent', or 'projects' for association, and 'followers', 'projects', 'tags' are set only at creation." }, { "slug": "ASANA_CREATE_ATTACHMENT_FOR_OBJECT", "name": "Create Attachment for Object", "description": "Tool to upload an attachment or link an external resource to a task, project, or project_brief in Asana. Use when you need to attach a file or external URL to any Asana object." }, { "slug": "ASANA_CREATE_ATTACHMENT_FOR_TASK", "name": "Create Attachment for Task", "description": "Tool to upload an attachment to a task. Use when you need to attach a file to a specific task in Asana." }, { "slug": "ASANA_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a new custom field in a workspace. Use when you need to define a new field for tracking specific information within Asana tasks." }, { "slug": "ASANA_CREATE_ENUM_OPTION_FOR_CUSTOM_FIELD", "name": "Create Enum Option for Custom Field", "description": "Tool to create a new enum option for a custom field in Asana. Use this when you need to add a new selectable option to an existing custom field." }, { "slug": "ASANA_CREATE_MEMBERSHIP", "name": "Create Membership", "description": "Tool to create a membership by adding a user or team to a project, goal, or portfolio. Use when you need to grant access to an Asana resource." }, { "slug": "ASANA_CREATE_PROJECT_BRIEF", "name": "Create Project Brief", "description": "Tool to create a project brief for a project. Use when you need to add a detailed explanation (what and why) to a project." }, { "slug": "ASANA_CREATE_PROJECT_FOR_TEAM", "name": "Create project for team", "description": "Tool to create a project in a team. Use when you need to create a new project within a specific Asana team." }, { "slug": "ASANA_CREATE_PROJECT_FOR_WORKSPACE", "name": "Create project for workspace", "description": "Tool to create a project in a workspace. Use when you need to create a new project within a specific Asana workspace. Note: The team field is required when creating projects in workspaces." }, { "slug": "ASANA_CREATE_PROJECT_STATUS_UPDATE", "name": "Create Project Status Update", "description": "Tool to create a new status update on a project. Use when you need to communicate the current status, progress, or any blockers related to a specific project." }, { "slug": "ASANA_CREATE_SECTION_IN_PROJECT", "name": "Create a section in a project", "description": "Creates a new SECTION (not a task) in a project. Sections are organizational containers within a project used to group and categorize tasks (e.g., 'To Do', 'In Progress', 'Done', 'Backlog'). The new section can be optionally positioned relative to an existing section in the same project. IMPORTANT: This action creates SECTIONS only. Do NOT use this action to create tasks. To create a task, use the ASANA_CREATE_A_TASK action instead. Task-related fields like 'assignee', 'notes', 'due_date', 'description' are NOT supported by this action." }, { "slug": "ASANA_CREATE_STATUS_FOR_OBJECT", "name": "Create Status Update for Object", "description": "Tool to create a status update on a project, portfolio, or goal. Use when you need to communicate progress, blockers, or current state to all followers of an object." }, { "slug": "ASANA_CREATE_SUBTASK", "name": "Create subtask", "description": "Creates a new Asana subtask under an existing parent task (`task_gid`); `due_on` and `due_at` are mutually exclusive and cannot be set simultaneously." }, { "slug": "ASANA_CREATE_TAG", "name": "Create a tag", "description": "Tool to create a new tag in an Asana workspace. Use when you need to create a tag for categorizing tasks. Tags help organize and filter tasks across projects but are not automatically applied to any tasks." }, { "slug": "ASANA_CREATE_TASK_COMMENT", "name": "Create task comment", "description": "Adds a new text comment (story) to an existing Asana task, appearing in its activity feed." }, { "slug": "ASANA_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in an Asana workspace. Use when you need to establish a new team for collaboration." }, { "slug": "ASANA_DELETE_ALLOCATION", "name": "Delete Allocation", "description": "Tool to delete an allocation by its ID. Use this when you need to remove a specific resource allocation in Asana." }, { "slug": "ASANA_DELETE_ATTACHMENT", "name": "Delete Attachment", "description": "Tool to delete an attachment by its globally unique identifier. Use when you need to remove an existing attachment from Asana." }, { "slug": "ASANA_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field by its globally unique identifier. Use when you need to remove an existing custom field from Asana." }, { "slug": "ASANA_DELETE_MEMBERSHIP", "name": "Delete Membership", "description": "Tool to delete a membership by its GID. Use this when you need to remove a user or team's access to a project, portfolio, goal, or custom field in Asana." }, { "slug": "ASANA_DELETE_PROJECT", "name": "Delete a project", "description": "Delete a project." }, { "slug": "ASANA_DELETE_PROJECT_BRIEF", "name": "Delete Project Brief", "description": "Tool to delete a project brief by its GID. Use when you need to remove a project brief from Asana. Note: This requires the project_brief_gid (not the project_gid)." }, { "slug": "ASANA_DELETE_PROJECT_STATUS", "name": "Delete Project Status", "description": "Tool to delete a project status by its GID. Use when you need to remove a specific project status update from Asana." }, { "slug": "ASANA_DELETE_SECTION", "name": "Delete a section", "description": "Tool to delete a section by its GID. Use when you need to permanently remove a section from a project." }, { "slug": "ASANA_DELETE_STATUS_UPDATE", "name": "Delete Status Update", "description": "Tool to delete a status update by its GID. Use when you need to remove a specific status update from Asana." }, { "slug": "ASANA_DELETE_STORY", "name": "Delete Story", "description": "Tool to delete a story by its GID. Use when you need to remove a story from Asana." }, { "slug": "ASANA_DELETE_TAG", "name": "Delete a Tag", "description": "Tool to delete a specific tag by its GID. Use when you need to remove an existing tag from Asana." }, { "slug": "ASANA_DELETE_TASK", "name": "Delete a task", "description": "Delete a task." }, { "slug": "ASANA_DUPLICATE_PROJECT", "name": "Duplicate Project", "description": "Duplicate a project." }, { "slug": "ASANA_DUPLICATE_TASK", "name": "Duplicate Task", "description": "Duplicate a task" }, { "slug": "ASANA_GET_ACCESS_REQUESTS", "name": "Get Access Requests", "description": "Tool to retrieve access requests for a target object. Use when you need to get pending access requests for a specific resource like a project or portfolio." }, { "slug": "ASANA_GET_ALLOCATION", "name": "Get Allocation", "description": "Get an allocation by ID. Use when you need to retrieve the details of a specific allocation." }, { "slug": "ASANA_GET_ALLOCATIONS", "name": "Get Allocations", "description": "Tool to get multiple allocations. Requires either 'parent' (project GID) OR both 'assignee' AND 'workspace' together." }, { "slug": "ASANA_GET_A_PROJECT", "name": "Get a project", "description": "Retrieves a specific Asana project by its `project_gid`, with an option to include additional fields for comprehensive details using `opt_fields`; this action does not return tasks within the project." }, { "slug": "ASANA_GET_A_TASK", "name": "Get a task", "description": "Retrieves full details for a specified task GID accessible by the user; use `opt_fields` to customize returned data." }, { "slug": "ASANA_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to get a single attachment by its globally unique identifier. Use when you need to retrieve details about a specific file attached to a task or project." }, { "slug": "ASANA_GET_AUDIT_LOG_EVENTS", "name": "Get Audit Log Events", "description": "Tool to get audit log events for a workspace. Use when you need to retrieve a log of actions performed within a specific Asana workspace." }, { "slug": "ASANA_GET_A_USER_TASK_LIST", "name": "Get a user task list", "description": "Retrieves a specific user's task list from Asana by its `user_task_list_gid`, optionally returning extended details like name, owner, and workspace if specified in `opt_fields`." }, { "slug": "ASANA_GET_CURRENT_USER", "name": "Get current user", "description": "Retrieves the authenticated user's full record, including accessible workspaces, often used as an initial call to establish user context for subsequent operations." }, { "slug": "ASANA_GET_CUSTOM_FIELD", "name": "Get Custom Field", "description": "Tool to get a single custom field by its globally unique identifier. Use when you need to retrieve the complete metadata and properties of a specific custom field in Asana." }, { "slug": "ASANA_GET_CUSTOM_FIELDS_FOR_WORKSPACE", "name": "Get Custom Fields for Workspace", "description": "Tool to get all custom fields in a workspace. Use when you need to retrieve a list of custom fields associated with a specific workspace." }, { "slug": "ASANA_GET_CUSTOM_TYPES", "name": "Get Custom Types", "description": "Tool to get all custom types associated with a project. Use when you need to retrieve custom types that extend Asana objects for categorization purposes." }, { "slug": "ASANA_GET_EVENTS", "name": "Get Events on a Resource", "description": "Retrieve events on a resource to monitor changes. Use when you need to track activity or changes related to a specific Asana resource like a task, project, or tag." }, { "slug": "ASANA_GET_FAVORITES_FOR_USER", "name": "Get Favorites for User", "description": "Tool to get a user's favorites within a specified workspace. Returns favorites ordered as they appear in the user's Asana sidebar." }, { "slug": "ASANA_GET_GOAL", "name": "Get Goal", "description": "Retrieve the full record for a single goal by its GID." }, { "slug": "ASANA_GET_GOAL_RELATIONSHIPS", "name": "Get Goal Relationships", "description": "Tool to retrieve goal relationships. Use when you need to get the relationships associated with a specific goal in Asana." }, { "slug": "ASANA_GET_GOALS", "name": "Get Goals", "description": "Tool to retrieve multiple goals. Requires exactly one scope parameter (workspace, team, portfolio, or project) to be specified. Can be optionally filtered by time period or archived status." }, { "slug": "ASANA_GET_JOB", "name": "Get Job", "description": "Tool to retrieve a job by its globally unique identifier. Use when you need to check the status of asynchronous operations like task duplication, project instantiation, or exports." }, { "slug": "ASANA_GET_MEMBERSHIP", "name": "Get Membership", "description": "Tool to retrieve a single membership by its ID. Use this when you need to get details about a specific membership relationship between a user/team and a goal, project, portfolio, or custom field." }, { "slug": "ASANA_GET_MEMBERSHIPS", "name": "Get Memberships", "description": "Tool to retrieve memberships for goals, projects, portfolios, or custom fields. Use this to find out who has access to a specific Asana resource or what resources a specific user/team has access to." }, { "slug": "ASANA_GET_MULTIPLE_PROJECTS", "name": "Get multiple projects", "description": "Returns a list of projects filtered by workspace or team (one required), with optional archived status filter, supporting pagination for large datasets." }, { "slug": "ASANA_GET_MULTIPLE_TASKS", "name": "Get multiple tasks", "description": "Retrieves a list of tasks, allowing filtering by assignee (requires `workspace`), project, section, `completed_since`, and `modified_since`; `workspace` also requires `assignee`." }, { "slug": "ASANA_GET_MULTIPLE_USERS", "name": "Get multiple users", "description": "Returns a list of users in an Asana workspace or organization, optionally filtered by workspace or team GID, with support for pagination and specifying optional fields." }, { "slug": "ASANA_GET_MULTIPLE_WORKSPACES", "name": "Get multiple workspaces", "description": "Retrieves all workspaces accessible by the authenticated user, returning an empty list if the user has no accessible workspaces." }, { "slug": "ASANA_GET_PORTFOLIO", "name": "Get Portfolio", "description": "Retrieve the full record for a single portfolio by its GID. Use this when you need to get detailed information about a specific portfolio." }, { "slug": "ASANA_GET_PORTFOLIO_ITEMS", "name": "Get Portfolio Items", "description": "Retrieve items in a portfolio. Use this to get a list of projects or other portfolios contained within a specific portfolio." }, { "slug": "ASANA_GET_PORTFOLIO_MEMBERSHIPS", "name": "Get Portfolio Memberships", "description": "Tool to retrieve multiple portfolio memberships. Use this tool when you need to list memberships for a specific portfolio, a user within a portfolio, or a user across all portfolios in a workspace." }, { "slug": "ASANA_GET_PORTFOLIOS", "name": "Get Portfolios", "description": "Retrieve multiple portfolios. Use when you need to list portfolios within a specific workspace, optionally filtered by owner." }, { "slug": "ASANA_GET_PROJECT_BRIEF", "name": "Get Project Brief", "description": "Tool to retrieve a project brief by its GID. Use when you need to get the detailed explanation (what and why) of a project. Note: Requires the project_brief_gid (not the project_gid). First call 'Get a project' with opt_fields=['project_brief'] to obtain the project_brief_gid." }, { "slug": "ASANA_GET_PROJECT_MEMBERSHIP", "name": "Get Project Membership", "description": "Tool to get a project membership by ID. Use when you need to retrieve details of a specific project membership." }, { "slug": "ASANA_GET_PROJECT_MEMBERSHIPS", "name": "Get Project Memberships For Project", "description": "Tool to get memberships from a specific project. Use when you need to see who has access to a project and their permission levels." }, { "slug": "ASANA_GET_PROJECTS_FOR_TASK", "name": "Get Projects for Task", "description": "Tool to get all projects a task is in. Use when you need to retrieve project associations for a specific task." }, { "slug": "ASANA_GET_PROJECTS_FOR_TEAM", "name": "Get Projects for Team", "description": "Tool to get a list of projects for a specific team in Asana. Use when you need to retrieve project details associated with a team." }, { "slug": "ASANA_GET_PROJECT_STATUS", "name": "Get Project Status", "description": "Tool to retrieve the full record for a single project status by its GID. Use when you need to get the details of a specific project status update." }, { "slug": "ASANA_GET_PROJECT_STATUS_UPDATES", "name": "Get Project Status Updates", "description": "Tool to get status updates for a specific project. Use when you need to retrieve the latest or historical status reports associated with an Asana project." }, { "slug": "ASANA_GET_PROJECT_TEMPLATES", "name": "Get Multiple Project Templates", "description": "Tool to retrieve multiple project templates. Use when you need to list available project templates in a workspace or team." }, { "slug": "ASANA_GET_PROJECT_TEMPLATES_FOR_TEAM", "name": "Get Project Templates for Team", "description": "Tool to get a team's project templates in Asana. Use when you need to retrieve project templates associated with a specific team." }, { "slug": "ASANA_GET_REACTIONS_ON_OBJECT", "name": "Get Reactions on Object", "description": "Tool to get reactions with a specific emoji base character on an object. Use when you need to retrieve user reactions (emoji responses) on a status update or story." }, { "slug": "ASANA_GET_SECTION", "name": "Get Section", "description": "Retrieve the full record for a single section by its GID. Use this when you need to get details about a specific section within a project." }, { "slug": "ASANA_GET_SECTIONS_IN_PROJECT", "name": "Get sections in a project", "description": "Returns compact records for all sections (used to group tasks) in a specified project." }, { "slug": "ASANA_GET_STATUS", "name": "Get Status Update", "description": "Tool to retrieve the full record for a single status update by its GID. Use when you need to get the details of a specific status update." }, { "slug": "ASANA_GET_STATUS_UPDATES", "name": "Get Status Updates", "description": "Retrieve status updates from an object. Use when you need to get the latest or historical status updates for a specific project, portfolio, or goal." }, { "slug": "ASANA_GET_STORIES_FOR_TASK", "name": "Get Stories for Task", "description": "Tool to get stories (comments, status updates, etc.) for a task. Use when you need to retrieve the history or discussion associated with a specific task." }, { "slug": "ASANA_GET_STORY", "name": "Get Story", "description": "Tool to retrieve a story. Use when you need to get the complete record for a single story." }, { "slug": "ASANA_GET_TAG", "name": "Get Tag", "description": "Tool to get a single tag by its globally unique identifier. Use when you need to retrieve detailed information about a specific tag." }, { "slug": "ASANA_GET_TAGS", "name": "Get Tags", "description": "Get multiple tags in a workspace." }, { "slug": "ASANA_GET_TAGS_FOR_TASK", "name": "Get Tags for Task", "description": "Tool to get all tags associated with a specific task. Use when you need to retrieve tags for categorization, filtering, or understanding task organization." }, { "slug": "ASANA_GET_TAGS_FOR_WORKSPACE", "name": "Get Tags For Workspace", "description": "Tool to get all tags in a specific workspace. Use when you need to retrieve tags for categorizing tasks within a workspace." }, { "slug": "ASANA_GET_TASK_ATTACHMENTS", "name": "Get Task Attachments", "description": "Tool to get the list of attachments for a given task, project, or project_brief. Use when you need to retrieve files attached to a specific Asana object." }, { "slug": "ASANA_GET_TASK_COUNTS_FOR_PROJECT", "name": "Get Task Counts For Project", "description": "Tool to get task count statistics for a project. Use when you need to retrieve the number of tasks, completed tasks, incomplete tasks, and milestone counts for a specific Asana project. Note that all fields are excluded by default - you must specify them in opt_fields to get any data." }, { "slug": "ASANA_GET_TASKS_FOR_TAG", "name": "Get tasks for tag", "description": "Tool to retrieve tasks associated with a specific Asana tag by tag GID. Use when you need to list all tasks that have been tagged with a particular label." }, { "slug": "ASANA_GET_TASKS_FOR_USER_TASK_LIST", "name": "Get tasks for user task list", "description": "Tool to retrieve tasks from a user task list by user task list GID. Use when you need to list tasks assigned to a specific user's task list." }, { "slug": "ASANA_GET_TASKS_FROM_A_PROJECT", "name": "Retrieve tasks for project", "description": "Retrieves tasks from a specified Asana project, allowing filtering by completion status and selection of optional fields for detailed responses." }, { "slug": "ASANA_GET_TASKS_FROM_SECTION", "name": "Get tasks from a section", "description": "Tool to retrieve tasks that belong to a specific Asana section (column/header) by section GID. Use when you need to list tasks within a particular section, such as for agenda or carryover workflows. Board view only feature." }, { "slug": "ASANA_GET_TASK_SUBTASKS", "name": "Get Task Subtasks", "description": "Tool to retrieve multiple task subtasks from a workspace. Use when you need to list or find available task subtasks." }, { "slug": "ASANA_GET_TASK_TEMPLATES", "name": "Get Task Templates", "description": "Tool to retrieve multiple task templates from a workspace. Use when you need to list or find available task templates." }, { "slug": "ASANA_GET_TEAM", "name": "Get Team", "description": "Tool to retrieve details of a specific team by its GID. Use when you need to fetch information about a particular team in Asana." }, { "slug": "ASANA_GET_TEAM_MEMBERSHIP", "name": "Get Team Membership", "description": "Tool to retrieve a complete team membership record by its GID. Use when you need to fetch details about a specific team membership in Asana." }, { "slug": "ASANA_GET_TEAM_MEMBERSHIPS", "name": "Get Team Memberships", "description": "Tool to retrieve compact team membership records. Use when you need to list members of a team, teams a user belongs to, or all team memberships in a workspace." }, { "slug": "ASANA_GET_TEAM_MEMBERSHIPS_FOR_TEAM", "name": "Get Team Memberships for Team", "description": "Tool to get memberships from a specific team. Use when you need to retrieve the list of users who are members of a particular team, including their membership details such as admin status and guest status." }, { "slug": "ASANA_GET_TEAM_MEMBERSHIPS_FOR_USER", "name": "Get Team Memberships For User", "description": "Tool to get team memberships for a specific user. Use when you need to retrieve all teams that a user belongs to within a workspace." }, { "slug": "ASANA_GET_TEAMS_FOR_USER", "name": "Get Teams for User", "description": "Tool to get teams for a specific user in an organization. Returns the team records for all teams in the organization or workspace to which the given user is assigned." }, { "slug": "ASANA_GET_TEAMS_IN_WORKSPACE", "name": "Get teams in workspace", "description": "Returns the compact records for all teams in the workspace visible to the authorized user." }, { "slug": "ASANA_GET_TIME_PERIOD", "name": "Get Time Period", "description": "Tool to retrieve the full record for a single time period by its GID. Use when you need to fetch detailed information about a specific time period, including its start/end dates, display name, and parent period." }, { "slug": "ASANA_GET_TIME_PERIODS", "name": "Get Time Periods", "description": "Tool to retrieve compact or full representations of time periods. Use this when you need to fetch information about specific time periods, such as their start and end dates, display names, and parent periods." }, { "slug": "ASANA_GET_TIME_TRACKING_ENTRIES", "name": "Get Time Tracking Entries", "description": "Tool to get multiple time tracking entries across workspace, tasks, or projects. Use when you need to retrieve time tracking information for filtering by workspace, task, portfolio, user, or date range." }, { "slug": "ASANA_GET_TIME_TRACKING_ENTRIES_FOR_TASK", "name": "Get Time Tracking Entries for Task", "description": "Tool to get time tracking entries for a task. Use when you need to retrieve time tracking information recorded on a specific task." }, { "slug": "ASANA_GET_TYPEAHEAD_OBJECTS", "name": "Get Objects via Typeahead", "description": "Tool to retrieve objects in a workspace via a typeahead search algorithm. Use when you need to quickly find objects like tasks, projects, users, etc., based on a search string. This is useful for implementing auto-completion features." }, { "slug": "ASANA_GET_USER", "name": "Get User", "description": "Get a user by their ID." }, { "slug": "ASANA_GET_USER_FOR_WORKSPACE", "name": "Get User in Workspace", "description": "Tool to get a user in a workspace or organization by their GID. Use when you need to retrieve details about a specific user within a workspace context." }, { "slug": "ASANA_GET_USERS_FOR_TEAM", "name": "Get Users for Team", "description": "Get users in a team." }, { "slug": "ASANA_GET_USERS_FOR_WORKSPACE", "name": "Get Users in Workspace", "description": "Get users in a workspace or organization." }, { "slug": "ASANA_GET_USER_TASK_LIST", "name": "Get User Task List", "description": "Tool to get a single user task list by its globally unique identifier. Use when you need to retrieve information about a specific user's My Tasks list." }, { "slug": "ASANA_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve multiple webhooks in a workspace. Use when you need to list all webhooks for a workspace or filter webhooks by a specific resource." }, { "slug": "ASANA_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve details of a specific workspace by its GID. Use when you need to get information about a particular Asana workspace." }, { "slug": "ASANA_GET_WORKSPACE_MEMBERSHIP", "name": "Get Workspace Membership", "description": "Tool to retrieve a specific workspace membership by its GID. Use when you need to get details about a user's membership in a workspace." }, { "slug": "ASANA_GET_WORKSPACE_MEMBERSHIPS", "name": "Get Workspace Memberships", "description": "Tool to retrieve the workspace memberships for a specific workspace. Use when you need to list members of a workspace." }, { "slug": "ASANA_GET_WORKSPACE_MEMBERSHIPS_FOR_USER", "name": "Get Workspace Memberships For User", "description": "Tool to retrieve workspace memberships for a specific user. Use when you need to list all workspaces a user is a member of." }, { "slug": "ASANA_GET_WORKSPACE_PROJECTS", "name": "Get Workspace Projects", "description": "Tool to retrieve the projects associated with a specific workspace. Use when you need to list all projects within a given Asana workspace." }, { "slug": "ASANA_INSERT_ENUM_OPTION_FOR_CUSTOM_FIELD", "name": "Reorder Enum Option for Custom Field", "description": "Tool to reorder an existing enum option within a custom field by moving it before or after another specified enum option. Use when you need to change the order/position of options in an enum or multi_enum custom field. Note: To create new enum options, use 'Create Enum Option for Custom Field' action instead." }, { "slug": "ASANA_INSERT_SECTION_FOR_PROJECT", "name": "Move or Insert Section in Project", "description": "Tool to move or reorder an existing section within a project by repositioning it before or after another section. Use when you need to change the position/order of sections in a project. Note: This action moves existing sections only. To create new sections, use 'Create Section in Project' action instead." }, { "slug": "ASANA_INSTANTIATE_PROJECT_TEMPLATE", "name": "Instantiate Project Template", "description": "Instantiate (create) a real Asana project from a project template, returning the async job record. Use when you need to create a new project from a template with specific date and role assignments." }, { "slug": "ASANA_REJECT_ACCESS_REQUEST", "name": "Reject access request", "description": "Tool to reject an access request. Use when you need to deny a user's request for access to a project or resource." }, { "slug": "ASANA_REMOVE_FOLLOWER_FROM_TASK", "name": "Remove Follower From Task", "description": "Tool to remove one or more followers from a task. Use when you need to update the list of users following a specific task." }, { "slug": "ASANA_REMOVE_FOLLOWERS_FOR_PROJECT", "name": "Remove Followers For Project", "description": "Tool to remove followers from a project in Asana. Use when you need to remove one or more users as followers from a specific project." }, { "slug": "ASANA_REMOVE_ITEM_FROM_PORTFOLIO", "name": "Remove Item from Portfolio", "description": "Tool to remove an item (e.g., a project) from an Asana portfolio. Use to undo/cleanup portfolio membership, support moves between portfolios, or enforce portfolio hygiene." }, { "slug": "ASANA_REMOVE_MEMBERS_FOR_PROJECT", "name": "Remove Members from Project", "description": "Tool to remove users from a project in Asana. Use this tool when you need to remove one or more users as members from a specific project." }, { "slug": "ASANA_REMOVE_PROJECT_FROM_TASK", "name": "Remove Project from Task", "description": "Tool to remove a project from a task in Asana. Use this when you need to disassociate a task from a specific project." }, { "slug": "ASANA_REMOVE_TAG_FROM_TASK", "name": "Remove Tag from Task", "description": "Tool to remove an existing tag from a task in Asana. Use this tool when you need to detach a tag from a specific task for cleanup or retagging automation." }, { "slug": "ASANA_REMOVE_USER_FOR_TEAM", "name": "Remove User For Team", "description": "Tool to remove a user from a team. Use when you need to revoke team membership for a specific user." }, { "slug": "ASANA_REMOVE_USER_FOR_WORKSPACE", "name": "Remove User from Workspace", "description": "Tool to remove a user from a workspace or organization. Use when you need to revoke a user's access to a specific workspace." }, { "slug": "ASANA_SEARCH_TASKS_IN_WORKSPACE", "name": "Search Tasks in Workspace", "description": "Tool to search tasks across a workspace with advanced filters. Use when performing complex queries such as overdue tasks, by project or custom field, for reporting or automation." }, { "slug": "ASANA_SET_PARENT_FOR_TASK", "name": "Set parent for task", "description": "Tool to set the parent of a task in Asana. Use when you need to make a task a subtask of another task or remove the parent relationship." }, { "slug": "ASANA_SUBMIT_PARALLEL_REQUESTS", "name": "Submit Parallel Requests (Batch API)", "description": "Tool to submit multiple Asana API requests in parallel using the Batch API. Use when you need to perform several operations efficiently, such as fetching multiple tasks or creating multiple subtasks at once." }, { "slug": "ASANA_UPDATE_ALLOCATION", "name": "Update Allocation", "description": "Tool to update an existing allocation by its ID. Use this when you need to modify details like the start date, end date, effort, or assignee for an allocation." }, { "slug": "ASANA_UPDATE_A_TASK", "name": "Update a task", "description": "Updates attributes of an existing Asana task identified by its task_gid." }, { "slug": "ASANA_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Tool to update a custom field by its globally unique identifier. Use when you need to modify properties of an existing custom field in Asana." }, { "slug": "ASANA_UPDATE_ENUM_OPTION", "name": "Update Enum Option", "description": "Tool to update an enum option for a custom field. Use when you need to modify the name, color, or enabled status of an existing enum option." }, { "slug": "ASANA_UPDATE_PROJECT", "name": "Update a project", "description": "Update a project." }, { "slug": "ASANA_UPDATE_PROJECT_BRIEF", "name": "Update Project Brief", "description": "Tool to update a project brief by its GID. Use when you need to modify the content/description of a project brief. Note: Requires the project_brief_gid (not the project_gid). First call 'Get a project' with opt_fields=['project_brief'] to obtain the project_brief_gid." }, { "slug": "ASANA_UPDATE_SECTION", "name": "Update Section", "description": "Update a section's name or position within a project. Use when you need to rename a section or reorder sections by specifying insert_before or insert_after." }, { "slug": "ASANA_UPDATE_STORY", "name": "Update Story", "description": "Tool to update a story on a task. Use when you need to modify the text, html_text, or pin status of an existing story. Only comment stories can have text/html_text updated, and only comment and attachment stories can be pinned." }, { "slug": "ASANA_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag by its globally unique identifier. Use when you need to change the name or color of a tag." }, { "slug": "ASANA_UPDATE_TEAM", "name": "Update a team", "description": "Tool to update details of an existing team. Use when you need to change a team's name, description, or organization." }, { "slug": "ASANA_UPDATE_USER", "name": "Update User", "description": "Update a user's custom fields. Note: Asana's API has very limited user update capabilities - most user properties are read-only and managed by users themselves." }, { "slug": "ASANA_UPDATE_USER_FOR_WORKSPACE", "name": "Update User for Workspace", "description": "Tool to update a user in a workspace or organization. Use when you need to modify user-specific custom field values for a workspace." }, { "slug": "ASANA_UPDATE_WEBHOOK", "name": "Update a webhook", "description": "Tool to update an existing Asana webhook's filter configuration. Use when you need to modify which events trigger webhook notifications." } ], "triggers": [ { "slug": "ASANA_TASK_ATTACHMENT_ADDED", "name": "Attachment Added to Task", "description": "Triggers when an attachment is added to a task." }, { "slug": "ASANA_TASK_COMMENT_ADDED", "name": "New Comment on Task", "description": "Triggers when a comment is added to a task in a project." }, { "slug": "ASANA_TASK_CREATED", "name": "New Task Created", "description": "Triggers when a new task is created in a project." }, { "slug": "ASANA_TASK_MOVED_TO_SECTION", "name": "Task Moved to Section", "description": "Triggers when a task is moved to a section in a project." }, { "slug": "ASANA_TASK_TAG_ADDED", "name": "Tag Added to Task", "description": "Triggers when a tag is added to a task.\n\n Note: Asana's event structure is inverted for tag events — the resource\n is the task and the parent is the tag. So parent.gid gives the tag GID." }, { "slug": "ASANA_TASK_UPDATED", "name": "Task Updated", "description": "Triggers when a task is updated in a project." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "asana_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "peopledatalabs", "name": "People Data Labs", "logo": "https://logos.composio.dev/api/peopledatalabs", "description": "PeopleDataLabs provides B2B data enrichment and identity resolution, empowering organizations to build enriched user profiles and validate customer information", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PEOPLEDATALABS_CLEAN_COMPANY_DATA", "name": "Clean company data", "description": "Cleans and standardizes company information based on a name, website, or profile URL; providing at least one of these inputs is highly recommended for meaningful results." }, { "slug": "PEOPLEDATALABS_CLEAN_COMPANY_POST", "name": "Clean company data (POST)", "description": "Tool to clean and standardize company data using POST method. Use when you need to standardize company information by providing company name, website, or social profile. Returns standardized company information including name, website, LinkedIn profile, and other company identifiers." }, { "slug": "PEOPLEDATALABS_CLEAN_LOCATION_DATA", "name": "Clean location data", "description": "Cleans and standardizes a raw, unformatted location string into a structured representation, provided the input is a recognizable geographical place." }, { "slug": "PEOPLEDATALABS_CLEAN_LOCATION_POST", "name": "Clean location data (POST)", "description": "Tool to clean and standardize location data using POST method. Use when you need to normalize raw location strings into structured location information including city, region, and country." }, { "slug": "PEOPLEDATALABS_CLEAN_SCHOOL_DATA", "name": "Clean school data", "description": "Cleans and standardizes school information; provide at least one of the school's name, website, or profile for optimal results." }, { "slug": "PEOPLEDATALABS_CLEAN_SCHOOL_DATA_POST", "name": "Clean school data (POST)", "description": "Tool to clean and standardize school data using POST method. Use when you need to clean school information by providing name, website, or profile." }, { "slug": "PEOPLEDATALABS_ENRICH_BULK_COMPANY_DATA", "name": "Enrich Bulk Company Data", "description": "Tool to enrich up to 100 companies in a single request using the Bulk Company Enrichment API. Use when you need to enrich multiple company profiles efficiently. Each request must include at least one company identifier (website, profile, name, ticker, or pdl_id). Results are returned in the same order as the input requests, with individual status codes indicating success (200) or failure (404)." }, { "slug": "PEOPLEDATALABS_ENRICH_BULK_PERSON_DATA", "name": "Enrich bulk person data", "description": "Tool to enrich up to 100 person profiles in a single API request using the Bulk Person Enrichment API. Use when you need to enrich multiple people efficiently, as this effectively increases the rate limit by up to 100x compared to individual enrichment calls. Each request in the array can use the same parameters as the single person enrichment endpoint." }, { "slug": "PEOPLEDATALABS_ENRICH_COMPANY_DATA", "name": "Enrich Company Data", "description": "Enriches company data from People Data Labs with details like firmographics and employee counts. CRITICAL: This action REQUIRES at least one company identifier. DO NOT send empty {} requests. You MUST provide at least one of: pdl_id, name, profile, ticker, or website. Valid request examples: - {\"name\": \"Apple Inc.\"} - enrich by company name - {\"website\": \"google.com\"} - enrich by website URL - {\"ticker\": \"MSFT\"} - enrich by stock ticker - {\"profile\": \"linkedin.com/company/microsoft\"} - enrich by social profile. Each call consumes API credits; use specific identifiers rather than exploratory requests." }, { "slug": "PEOPLEDATALABS_ENRICH_IP_DATA", "name": "Enrich IP Data", "description": "Enriches an IP address with company, location, metadata, and person data from People Data Labs." }, { "slug": "PEOPLEDATALABS_ENRICH_JOB_TITLE_DATA", "name": "Enrich job title data", "description": "Enhances a job title by providing additional contextual information and details." }, { "slug": "PEOPLEDATALABS_ENRICH_PERSON_DATA", "name": "Enrich person data", "description": "Enriches person data using various identifiers; requires a primary ID (profile, email, phone, email_hash, lid, pdl_id) OR a name (full, or first and last) combined with another demographic detail (e.g., company, school, location)." }, { "slug": "PEOPLEDATALABS_ENRICH_SKILL_DATA", "name": "Enrich skill data", "description": "Retrieves detailed, standardized information for a given skill by querying the People Data Labs Skill Enrichment API; for best results, provide a recognized professional skill or area of expertise." }, { "slug": "PEOPLEDATALABS_GENERATE_SEARCH_QUERY", "name": "Generate Search Query", "description": "DEPRECATED: This action is deprecated and will be removed in a future release. Converts natural language queries into structured PDL Elasticsearch queries for people or company searches; generates optimized query structure without executing the search." }, { "slug": "PEOPLEDATALABS_GET_AUTOCOMPLETE_SUGGESTIONS", "name": "Autocomplete field suggestions", "description": "Provides autocompletion suggestions for a specific field (e.g., company, skill, title) based on partial text input." }, { "slug": "PEOPLEDATALABS_GET_AUTOCOMPLETE_SUGGESTIONS_POST", "name": "Get autocomplete suggestions (POST)", "description": "Tool to get autocompletion suggestions using POST method for complex query parameters. Use when building type-ahead interfaces or needing to suggest values for Search API queries. Supports company, location, skill, title, and other fields with configurable result size." }, { "slug": "PEOPLEDATALABS_GET_COLUMN_DETAILS", "name": "Get column details", "description": "Retrieves predefined enum values for a column name from `enum_mappings.json`; `is_enum` in the response will be false if the column is not found or is not an enum type." }, { "slug": "PEOPLEDATALABS_GET_SCHEMA", "name": "Get schema", "description": "Retrieves the schema, including field names, descriptions, and data types, for 'person' or 'company' entity types." }, { "slug": "PEOPLEDATALABS_GET_SUBJECT_REQUESTS", "name": "Get subject requests", "description": "Tool to retrieve subject access requests for data privacy compliance. Use when you need to manage or review data subject requests related to person data in your PeopleDataLabs account." }, { "slug": "PEOPLEDATALABS_IDENTIFY_PERSON_DATA", "name": "Identify person data", "description": "Retrieves detailed profile information for an individual from People Data Labs (PDL), requiring at least one identifier such as email, phone, or profile URL. If using name alone, it must be paired with at least one additional attribute (company, location, school, etc.) — name-only queries return no match." }, { "slug": "PEOPLEDATALABS_PEOPLE_SEARCH_ELASTIC", "name": "People Search with Elasticsearch", "description": "Searches for person profiles in the People Data Labs (PDL) database using an Elasticsearch Domain Specific Language (DSL) query. This action allows for highly targeted searches based on criteria such as job titles, skills, company details, location, experience, and more. Preconditions: - The provided Elasticsearch query (in the `query` field) must be a syntactically correct JSON object representing a valid Elasticsearch query. - The query must utilize fields that are defined in the People Data Labs person schema. - The `dataset` parameter must specify one of the allowed dataset categories." }, { "slug": "PEOPLEDATALABS_QUERY_PERSON_CHANGELOG", "name": "Query person changelog", "description": "Tool to query the changelog of person records between two consecutive dataset versions. Returns information about updates, additions, deletions, merges, and opt-outs for individuals. Use when you need to track changes to person profiles across PDL dataset versions or monitor specific person IDs for updates." }, { "slug": "PEOPLEDATALABS_SEARCH_COMPANY_ELASTIC", "name": "Company Search with Elasticsearch", "description": "Performs a search for company profiles within People Data Labs using a custom Elasticsearch Domain Specific Language (DSL) query. This action allows for detailed and complex filtering based on various attributes of a company, such as name, industry, employee_count, founded year, location, and more. Results can be paginated using the `size` and `scroll_token` parameters. Preconditions: - The `query` parameter must contain a valid Elasticsearch DSL query string, structured as a JSON object. - This action queries the People Data Labs company search endpoint (`/v5/company/search`) and returns company records." }, { "slug": "PEOPLEDATALABS_SEARCH_COMPANY_POST", "name": "Search Company Records (POST)", "description": "Tool to search and filter company records from the full Company Dataset using Elasticsearch or SQL queries via POST method. Use when you need to find multiple companies matching specific criteria with complex filtering." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "people_data_labs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret People Data Labs API key. Sign in at dashboard.peopledatalabs.com and copy it from the API Keys section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shopify", "name": "Shopify", "logo": "https://logos.composio.dev/api/shopify", "description": "Shopify is an e-commerce platform. This toolkit is GraphQL-first for new Admin API automations while retaining legacy REST compatibility actions for older workflows and numeric-ID interoperability", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2", "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 407, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHOPIFY_ACTIVATE_ONE_TIME_CHARGE", "name": "Activate One-Time Charge", "description": "Activate a one-time application charge in Shopify. Use when you need to finalize billing for an accepted charge. DEPRECATED: This endpoint is deprecated as of API version 2021-01. One-time charges are now immediately activated when approved by a merchant, making this activation step no longer required for newer API versions." }, { "slug": "SHOPIFY_ADD_PRODUCT_TO_COLLECTION", "name": "Add product to custom collection (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_ADDS_A_PRODUCT_TO_A_CUSTOM_COLLECTION instead. Adds a product to an existing *custom collection*, optionally specifying its `position` if the collection is manually sorted." }, { "slug": "SHOPIFY_ADD_PRODUCT_TO_CUSTOM_COLLECTION", "name": "Add product to custom collection", "description": "Add a product to a custom collection by creating a collect resource. Use when you need to link a product to a custom collection. Note: Can only add products to custom collections, not smart collections." }, { "slug": "SHOPIFY_ADJUST_INVENTORY_LEVEL", "name": "Adjust inventory levels", "description": "Adjust the inventory level of an inventory item at a single location. Use when you need to increase or decrease stock quantities at a specific location." }, { "slug": "SHOPIFY_APPLY_FULFILLMENT_HOLD", "name": "Apply fulfillment hold", "description": "Applies a fulfillment hold to an open fulfillment order, halting all fulfillment work. Use when you need to pause fulfillment due to payment issues, fraud concerns, address problems, or inventory shortages. The fulfillment order status will change to on_hold, preventing any fulfillment work from proceeding until the hold is released." }, { "slug": "SHOPIFY_APPROVE_COMMENT", "name": "Approve a comment", "description": "Approves a pending comment and publishes it to a blog article, making it publicly visible to readers. This action changes the comment's status from 'pending' or 'unapproved' to 'published' and sets the published_at timestamp. Use this when moderating blog comments that require approval before appearing on the storefront. Requires the 'write_content' scope." }, { "slug": "SHOPIFY_BULK_CREATE_PRODUCTS", "name": "Bulk create products via GraphQL", "description": "Creates many products (20-50+) in one asynchronous Shopify bulk mutation job. Uses stagedUploadsCreate for JSONL upload, then bulkOperationRunMutation with productCreate, polling until completion and returning per-row success/errors." }, { "slug": "SHOPIFY_BULK_DELETE_CUSTOMER_ADDRESSES", "name": "Bulk delete customer addresses (Deprecated)", "description": "Bulk delete multiple customer addresses in a single operation. This action permanently removes several addresses from a customer's address book at once, which is more efficient than deleting addresses one by one. Use this when you need to clean up multiple invalid or outdated addresses for a customer. Requires the 'write_customers' scope and access to protected customer data." }, { "slug": "SHOPIFY_BULK_DELETE_METAFIELDS", "name": "Delete metafields in bulk", "description": "Deletes multiple metafields in bulk using their owner ID, namespace, and key. If a metafield doesn't exist, the mutation still succeeds but returns null for that identifier in the response." }, { "slug": "SHOPIFY_BULK_DELETE_METAOBJECTS", "name": "Bulk delete metaobjects", "description": "Asynchronously delete metaobjects and their associated metafields in bulk. Use this action to delete multiple metaobjects by their IDs or delete all metaobjects of a specific type. The operation is asynchronous and returns a job ID for tracking completion status." }, { "slug": "SHOPIFY_BULK_QUERY_OPERATION", "name": "Run Shopify bulk query operation", "description": "Run a Shopify GraphQL bulk query operation and return the result file URL and operation metadata. Use when you need to retrieve large datasets (thousands of records) from Shopify without manual pagination, such as bulk fetching products, orders, customers, or inventory. The query must include at least one connection (edges/nodes structure). This action polls the operation status until completion or timeout." }, { "slug": "SHOPIFY_CALCULATE_REFUND", "name": "Calculate a refund", "description": "Calculate accurate refund amounts, taxes, and transactions for a Shopify order before creating an actual refund. Use this action to: - Preview refund calculations for line items with accurate tax breakdowns - Determine shipping refund amounts and maximum refundable values - Get suggested transactions that can be used to create the actual refund The response includes transactions with kind='suggested_refund' which must be changed to kind='refund' before creating an actual refund using the create refund endpoint." }, { "slug": "SHOPIFY_CANCEL_APP_SUBSCRIPTION", "name": "Cancel App Subscription", "description": "Cancel an app subscription in Shopify using the appSubscriptionCancel GraphQL mutation. Use when you need to cancel an existing app subscription, optionally with prorated credits." }, { "slug": "SHOPIFY_CANCEL_BULK_OPERATION", "name": "Cancel Shopify bulk operation", "description": "Cancel a running Shopify bulk operation. Use when you need to stop a long-running bulk query or mutation operation that is no longer needed. Note that there may be a short delay between when cancelation starts and when the operation is actually canceled." }, { "slug": "SHOPIFY_CANCEL_FULFILLMENT", "name": "Cancel a fulfillment", "description": "Cancels an existing fulfillment by its ID, reverting all line items to an unfulfilled state. Use this when a fulfillment was created in error or needs to be redone. The cancellation is permanent and cannot be undone - the line items will return to the unfulfilled state and a new fulfillment must be created if needed. Only fulfillments that haven't been shipped or are in certain states can be cancelled." }, { "slug": "SHOPIFY_CANCEL_FULFILLMENT_ORDER", "name": "Cancel a Fulfillment Order", "description": "Cancels a fulfillment order in Shopify and marks it as closed. This creates a replacement fulfillment order with the same line items, allowing reassignment to a different location. Use this for merchant-managed fulfillments. For third-party fulfillment services, use the cancellation request endpoints instead. This endpoint immediately cancels the order without requiring acceptance from a fulfillment service." }, { "slug": "SHOPIFY_CANCEL_ORDER", "name": "Cancel an order", "description": "Cancels a Shopify order and optionally restocks items and sends email notifications. Use when canceling an order that has not yet been paid or fulfilled. Orders cannot be cancelled if payment status is already paid or if the order has existing fulfillments." }, { "slug": "SHOPIFY_CLOSE_ORDER", "name": "Close an order", "description": "Closes an open Shopify order. Use when all line items have been fulfilled or canceled and all financial transactions are complete." }, { "slug": "SHOPIFY_COMPLETE_DRAFT_ORDER", "name": "Complete a draft order", "description": "Complete a draft order in Shopify and transition it to an actual order. Use when you need to finalize a draft order, reserve inventory, and create a corresponding order. When completing with payment_pending=true, the payment gateway is set to Manual." }, { "slug": "SHOPIFY_CONNECT_INVENTORY_LEVEL", "name": "Connect inventory item to location", "description": "Connects an inventory item to a location, establishing where the item can be stocked and fulfilled. This creates an inventory level with an initial available quantity of 0. Use this when you need to enable a product variant to be stocked at a new location. After connecting, use the 'set' or 'adjust' inventory level actions to update quantities." }, { "slug": "SHOPIFY_COUNT_ARTICLES", "name": "Count articles in blog", "description": "Retrieves a count of all articles from a blog. Use when you need to know how many articles exist in a specific blog, optionally filtered by creation, publication, or update dates and publication status." }, { "slug": "SHOPIFY_COUNT_BLOGS", "name": "Get blogs count", "description": "Retrieves the total count of all blogs in a Shopify store. Use this action when you need to know how many blogs exist in the store without fetching the full list of blog details. This is useful for pagination calculations, analytics, or checking if any blogs exist before performing other operations. Requires 'read_content' or 'write_content' OAuth scope." }, { "slug": "SHOPIFY_COUNT_CUSTOM_COLLECTIONS", "name": "Retrieve count of custom collections (Deprecated)", "description": "Retrieves a count of custom collections with optional filters. Use when you need to know how many custom collections exist in the store, optionally filtered by product, publication status, or date ranges." }, { "slug": "SHOPIFY_COUNT_DRAFT_ORDERS", "name": "Get draft orders count", "description": "Retrieves a count of draft orders from a Shopify store. Use when you need to know how many draft orders exist without fetching full draft order details. Supports filtering by status and date range to count specific subsets of draft orders." }, { "slug": "SHOPIFY_COUNT_EVENTS", "name": "Count all the events (Deprecated)", "description": "Count all events in a Shopify store with comprehensive filtering. Use when you need to determine how many events match specified criteria including date range, resource type, or action verb." }, { "slug": "SHOPIFY_COUNT_FULFILLMENTS", "name": "Count fulfillments for order", "description": "Retrieves a count of fulfillments associated with a specific order. Use when you need to determine how many fulfillments exist for an order, optionally filtered by creation or update dates." }, { "slug": "SHOPIFY_COUNT_LOCATION", "name": "Retrieves a count of locations (Deprecated)", "description": "Retrieves a count of locations. Use when you need to determine how many physical or virtual locations are configured in the Shopify store." }, { "slug": "SHOPIFY_COUNT_METAFIELDS", "name": "Count shop metafields", "description": "Retrieves the shop-level count of metafields. Use resource-specific metafield actions for product, customer, order, collection, page, or article metafields." }, { "slug": "SHOPIFY_COUNT_ORDER", "name": "Count orders (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_RETRIEVES_AN_ORDER_COUNT instead. Retrieves the count of orders in a Shopify store. Use when you need to know how many orders exist, optionally filtered by status, dates, financial status, fulfillment status, or attribution app. Note: Only the last 60 days' worth of orders are accessible by default unless the app has been granted the read_all_orders scope." }, { "slug": "SHOPIFY_COUNT_PAGES", "name": "Retrieve page count", "description": "Retrieve the total count of pages in a Shopify store. Use when you need to determine how many pages exist, optionally filtered by creation date, update date, publication date, publication status, or title." }, { "slug": "SHOPIFY_COUNT_PRICE_RULES", "name": "Count price rules", "description": "Retrieves a count of all price rules. Use when you need to determine how many price rules (discount campaigns) are configured in the store." }, { "slug": "SHOPIFY_COUNT_PRODUCT_IMAGES", "name": "Count product images", "description": "Retrieves the total count of images for a specific Shopify product. Use when you need to know how many images are associated with a product." }, { "slug": "SHOPIFY_COUNT_PRODUCTS", "name": "Retrieves a count of products", "description": "Retrieve a count of products in the Shopify store. Use when you need to get the total number of products, optionally filtered by collection, vendor, product type, status, or date ranges." }, { "slug": "SHOPIFY_COUNT_PRODUCT_VARIANTS", "name": "Count product variants", "description": "Retrieves the total count of variants for a Shopify product. Use when you need to know how many variants exist for a specific product." }, { "slug": "SHOPIFY_COUNT_SCRIPT_TAGS", "name": "Count script tags", "description": "Retrieves a count of all script tags in the shop. Script tags are remote JavaScript files that are loaded into the pages of a shop's storefront or checkout. Use this action to determine the total number of script tags, optionally filtered by a specific source URL. Note: This endpoint is part of the legacy REST Admin API (deprecated). The Shopify GraphQL Admin API should be used for new integrations." }, { "slug": "SHOPIFY_COUNT_WEBHOOKS", "name": "Receive a count of all webhooks (Deprecated)", "description": "Retrieves a count of existing webhook subscriptions. Use when you need to know how many webhooks are configured, optionally filtered by address or topic." }, { "slug": "SHOPIFY_CREATE_A_METAFIELD", "name": "Create a metafield", "description": "Create a metafield for any Shopify resource. Use when you need to attach custom metadata to products, customers, orders, collections, or other supported resources." }, { "slug": "SHOPIFY_CREATE_A_NEW_PRODUCT_IMAGE", "name": "Create A New Product Image (Deprecated)", "description": "Create a new product image for a Shopify product. Use when you need to add an image to a product by providing either an image URL or base64-encoded image data. Products can have up to 250 images in PNG, GIF, or JPG formats." }, { "slug": "SHOPIFY_CREATE_APP_SUBSCRIPTION", "name": "Create app subscription", "description": "Create a recurring or usage-based app subscription for charging Shopify merchants. Use when setting up billing for app features and services. Returns a confirmation URL where the merchant must approve charges before the subscription becomes active." }, { "slug": "SHOPIFY_CREATE_ARTICLE", "name": "Create Article", "description": "Create an article for a blog in Shopify. Use when you need to add blog content to a specific blog. The title field is mandatory - requests without titles return a 422 error." }, { "slug": "SHOPIFY_CREATE_ARTICLE_COMMENT", "name": "Create Comment for Article", "description": "Create a comment for an article in Shopify. Use when you need to add reader comments to blog articles. Requires 'content' access scope and protected customer data access." }, { "slug": "SHOPIFY_CREATE_BLOG", "name": "Create a new blog", "description": "Create a new blog in Shopify. Use when you need to add a blog to the store for publishing articles and content. The title field is mandatory." }, { "slug": "SHOPIFY_CREATE_COUNTRY", "name": "Create Country", "description": "Create a country with tax configuration for the Shopify store. Use when you need to add a new country to the store's shipping or tax settings. **Important Notes:** - The REST Country API is deprecated as of API version 2024-07 - This action requires merchant approval for the 'write_shipping' scope - The 'tax' field is deprecated as of API version 2020-10 and custom tax values can no longer be created or updated - For new implementations, consider using the GraphQL Admin API's \"Countries in shipping zone\" endpoint instead" }, { "slug": "SHOPIFY_CREATE_CUSTOM_COLLECTION", "name": "Create a custom collection", "description": "Create a new custom (manually curated) collection in Shopify. Does not support smart collections. Use when you need to manually curate and group products for easier store browsing. Custom collections require a title and support optional fields like description, image, publication settings, and sort order. After creation, use the returned `collection_id` with SHOPIFY_ADD_PRODUCT_TO_COLLECTION to associate products." }, { "slug": "SHOPIFY_CREATE_CUSTOMER", "name": "Create Customer", "description": "Create a new customer in Shopify. Use to add a customer record to the store with contact details, addresses, and marketing preferences. Requires at least one of: email, phone, or both first_name and last_name. Errors (e.g., duplicate email, invalid fields) are returned in the response body's userErrors array, not as HTTP error codes — always inspect userErrors to detect failures." }, { "slug": "SHOPIFY_CREATE_CUSTOMER_ACCOUNT_ACTIVATION_URL", "name": "Generate Customer Account Activation URL", "description": "Generate a one-time account activation URL for a customer whose account is in 'disabled' state (not yet activated). Use this when you've imported customers and need activation URLs to send in welcome emails. The URL allows customers to set their password and activate their account. Each URL expires after 30 days. Generating a new URL invalidates any previously generated URL for that customer." }, { "slug": "SHOPIFY_CREATE_CUSTOMER_ADDRESS", "name": "Create customer address", "description": "Create a new address for a customer. Use when you need to add an address to an existing customer's address list." }, { "slug": "SHOPIFY_CREATE_DELEGATE_ACCESS_TOKEN", "name": "Create delegate access token", "description": "Create a delegate access token with a subset of the parent token's permissions. Use when you need to securely delegate limited access to subsystems or services. Each delegate token inherits only the specified scopes, ensuring minimal required permissions rather than full app access. Note: Delegate tokens cannot create new delegate tokens." }, { "slug": "SHOPIFY_CREATE_DISCOUNT_CODE", "name": "Create Discount Code", "description": "Creates a discount code for an existing price rule. Price rules define the discount logic (e.g., 10% off, buy X get Y), and discount codes are the actual codes (e.g., 'SUMMER10') customers enter at checkout. Important: The price rule must exist before creating a discount code - use a price rule creation action first if needed. Each price rule can have multiple discount codes associated with it. Use this when you need to generate customer-facing discount codes for an established discount promotion." }, { "slug": "SHOPIFY_CREATE_DISCOUNT_CODE_BATCH", "name": "Create Discount Codes Batch", "description": "Create a discount code creation job for batch processing. Use when you need to asynchronously create up to 100 discount codes for a price rule in a single request." }, { "slug": "SHOPIFY_CREATE_DRAFT_ORDER", "name": "Create a new draft order", "description": "Create a draft order in Shopify. Use when you need to create orders in draft state using product variant line items or custom line items. Draft orders are useful for creating orders on behalf of customers, generating invoices, or reserving inventory." }, { "slug": "SHOPIFY_CREATE_EVENT_BRIDGE_WEBHOOK_SUBSCRIPTION", "name": "Create EventBridge webhook subscription", "description": "Create an AWS EventBridge webhook subscription in Shopify. Use when you need to configure real-time event notifications to AWS EventBridge for events like order creation, product updates, or customer changes. EventBridge webhooks push events to your AWS partner event source immediately when changes occur, eliminating polling. You can filter events and control payload fields to optimize performance." }, { "slug": "SHOPIFY_CREATE_FULFILLMENT", "name": "Create Fulfillment", "description": "Creates a fulfillment for one or many fulfillment orders for a specific order. This completes the shipping process by marking items as fulfilled. IMPORTANT: You must first retrieve fulfillment orders using a \"Get fulfillment orders for order\" action to obtain the fulfillment_order_id and line item IDs needed for this action. Use when: You need to mark order items as shipped/fulfilled for orders assigned to merchant-managed locations or third-party fulfillment services. Note: As of API version 2024-10, fulfillments can only be created for merchant-managed locations or third-party fulfillment services owned by your app." }, { "slug": "SHOPIFY_CREATE_FULFILLMENT_EVENT", "name": "Create Fulfillment Event", "description": "Creates a tracking event for a fulfillment to update shipment status. These events appear on the customer's order status page to track delivery progress (e.g., \"in_transit\", \"out_for_delivery\", \"delivered\"). Use this to provide real-time tracking updates from shipping carriers. Requires an existing fulfillment - use after creating a fulfillment for an order." }, { "slug": "SHOPIFY_CREATE_GIFT_CARD", "name": "Create Gift Card", "description": "Create a gift card for a Shopify store. Use when you need to issue a new gift card with a specified value. Requires write_gift_cards access scope. Gift card codes can only be retrieved at creation time." }, { "slug": "SHOPIFY_CREATE_MARKETING_ENGAGEMENTS", "name": "Create Marketing Event Engagements", "description": "Create engagement data for a marketing event in Shopify. Use when tracking customer interactions like views, clicks, and ad spend on marketing events before customers reach the website." }, { "slug": "SHOPIFY_CREATE_MARKETING_EVENT", "name": "Create Marketing Event", "description": "Create a marketing event in Shopify to track promotional actions. Use when you need to track marketing campaigns targeting customers across various channels." }, { "slug": "SHOPIFY_CREATE_METAFIELD", "name": "Create blog metafield", "description": "Creates a new metafield for a Shopify blog. Metafields store additional custom information (metadata) on blog resources such as sponsor names, SEO keywords, publication dates, or custom attributes not included in standard blog fields." }, { "slug": "SHOPIFY_CREATE_ONE_TIME_APPLICATION_CHARGE", "name": "Create One-Time Application Charge", "description": "Create a new one-time application charge in Shopify. Use when you need to bill merchants for one-time features, upgrades, or services. After creation, the merchant must approve the charge via the confirmation_url before it becomes active." }, { "slug": "SHOPIFY_CREATE_ORDER", "name": "Create an order", "description": "Create a fully committed (real) order in Shopify without payment processing. Use when programmatically generating orders with line items, customer information, and addresses. Creates a live order immediately — not a draft; use draftOrderCreate for draft workflows." }, { "slug": "SHOPIFY_CREATE_ORDER_RISK", "name": "Create order risk", "description": "Creates a risk assessment record for a Shopify order, documenting fraud detection findings or security concerns. Use this to record risk evaluations from external fraud detection systems or internal risk analysis tools. **Important:** This REST API endpoint is deprecated as of API version 2025-10. For new implementations, use the GraphQL orderRiskAssessmentCreate mutation instead. See: https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderRiskAssessmentCreate **Common use cases:** - Recording fraud detection results from third-party services (e.g., MaxMind, Sift, Signifyd) - Documenting manual fraud reviews - Flagging high-risk orders for merchant review" }, { "slug": "SHOPIFY_CREATE_ORDER_TRANSACTION", "name": "Create transaction for order", "description": "Creates a transaction for an order to process payment operations. Use when you need to authorize, capture, refund, void, or complete a sale for an order. For multi-currency orders, the currency field is required when creating refund and capture transactions." }, { "slug": "SHOPIFY_CREATE_PAGE", "name": "Create a new page", "description": "Create a static web page in Shopify. Use when you need to add long-term static content like About Us, Contact, or Privacy Policy pages. The title and body_html fields are required." }, { "slug": "SHOPIFY_CREATE_PRICE_RULE", "name": "Create Price Rule", "description": "Creates a price rule that defines discount logic for Shopify orders. Price rules specify how discounts work (percentage/fixed amount off, which products, which customers, etc.) and can be associated with discount codes for use at checkout. Common use cases: - Percentage off all products (e.g., 20% off sitewide) - Fixed amount off orders (e.g., $10 off orders over $50) - Buy X Get Y (BXGY) discounts - Free shipping offers - Customer segment-specific discounts Note: After creating a price rule, use the discount code creation endpoint to generate codes that customers can apply." }, { "slug": "SHOPIFY_CREATE_PRODUCT", "name": "Create a product (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_CREATES_A_NEW_PRODUCT instead. Creates a new product in a Shopify store; a product title is generally required. Note: The Product REST API is deprecated as of API version 2025-10. While it continues to function, Shopify recommends migrating to the GraphQL Admin API for product management in new implementations. Inventory Management: inventory_quantity is read-only and cannot be set during product creation. To manage inventory, first create the product, then use the InventoryLevel resource with the variant's inventory_item_id (returned in the response) to adjust quantities at specific locations. Response: product data nested at `data.response_data.product`; extract `id` and `variants[0].id` for subsequent image or collection calls." }, { "slug": "SHOPIFY_CREATE_PRODUCT_IMAGE", "name": "Create Product Image (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_CREATE_A_NEW_PRODUCT_IMAGE instead. Creates a new product image for a Shopify product. Use this tool to add images to products either by providing a publicly accessible image URL (src) or by uploading base64-encoded image data (attachment). You can specify the image position (1 is the main image), add alt text for accessibility, and associate the image with specific product variants. Supports PNG, JPG, and GIF formats. Products can have up to 250 images." }, { "slug": "SHOPIFY_CREATE_PRODUCT_METAFIELD", "name": "Create product metafield", "description": "Creates a new metafield for a specific Shopify product. Each namespace+key combination must be unique per product; use the update action if the metafield already exists." }, { "slug": "SHOPIFY_CREATE_PRODUCT_VARIANT", "name": "Create a new product variant", "description": "Create a new product variant for an existing product. Use when adding a new variant with specific option values (like size, color). Each product can have up to 3 options and 100 variants maximum." }, { "slug": "SHOPIFY_CREATE_PUB_SUB_WEBHOOK_SUBSCRIPTION", "name": "Create Pub/Sub webhook subscription", "description": "Create a Google Cloud Pub/Sub webhook subscription in Shopify. Use when you need to configure real-time event notifications to Google Cloud Pub/Sub for events like order creation, product updates, or customer changes. Pub/Sub webhooks push events to your GCP topic immediately when changes occur, eliminating polling. You can filter events and control payload fields to optimize performance." }, { "slug": "SHOPIFY_CREATE_REDIRECT", "name": "Create Redirect", "description": "Create a URL redirect in Shopify. Use when you need to redirect an old path to a new location. When a full URL is provided as the path, it will be saved as an absolute path without the domain." }, { "slug": "SHOPIFY_CREATE_REFUND", "name": "Create order refund", "description": "Creates a refund for a Shopify order. **IMPORTANT: You must call the calculate refund endpoint (SHOPIFY_CREATE_ORDERS_REFUNDS_CALCULATE) first** to generate accurate transaction data with kind='suggested_refund', then change kind to 'refund' before using this action. Requires order_id and transaction details (parent_id, amount, kind='refund', gateway). For multi-currency orders, currency is required. Rate limit: 5 refunds/minute on dev/trial stores." }, { "slug": "SHOPIFY_CREATE_RESOURCE_FEEDBACK", "name": "Create Resource Feedback", "description": "Creates shop-level resource feedback to notify Shopify merchants about app setup requirements or successful configuration. Feedback appears on the merchant's admin home screen. Each new submission automatically replaces previous feedback. Use state='requires_action' to alert merchants about mandatory setup steps, or state='success' to confirm proper configuration." }, { "slug": "SHOPIFY_CREATES_A_NEW_PRODUCT", "name": "Create a new product (Deprecated)", "description": "Create a new product in Shopify. Use when you need to add a new product to the store with details like title, description, variants, options, and images." }, { "slug": "SHOPIFY_CREATE_SCRIPT_TAG", "name": "Create Script Tag", "description": "Create a new script tag in Shopify to load remote JavaScript into your online store. Script tags allow you to add custom functionality to your storefront by loading external JavaScript files. Requires 'write_script_tags' OAuth scope. Note: As of February 1, 2025, creating script tags for order status pages is blocked by Shopify. Use 'online_store' display_scope for storefront functionality." }, { "slug": "SHOPIFY_CREATE_SMART_COLLECTIONS", "name": "Create Smart Collection", "description": "Create a new smart collection with automated product rules. Use when you need to create dynamic collections that automatically include products matching specific criteria (e.g., by vendor, price range, tags). Requires write_products scope." }, { "slug": "SHOPIFY_CREATES_OR_UPDATES_AN_ASSET_FOR_A_THEME", "name": "Create or Update Theme Asset", "description": "Creates or updates a theme asset file (templates, stylesheets, scripts, or images) within a Shopify theme. This action uploads or modifies files in the theme's file structure. For text-based files (HTML, Liquid, CSS, JS), use the 'value' parameter with file content. For binary files (images), use 'attachment' with base64-encoded data or 'src' with an external URL. To duplicate an existing asset, use 'source_key'. **Important**: Exactly one of value, attachment, src, or source_key must be provided per request. **Requirements**: - Requires 'write_themes' scope with merchant approval - Note: REST Admin API is legacy as of October 2024; new apps should use GraphQL Admin API from April 2025" }, { "slug": "SHOPIFY_CREATE_STOREFRONT_ACCESS_TOKEN", "name": "Create Storefront Access Token", "description": "Creates a new storefront access token for unauthenticated Storefront API access. The token delegates unauthenticated access scopes to clients that need to access the Storefront API without authentication. Requirements: - The app must be configured as an 'extendable' (Sales Channel) app in the Shopify Partner Dashboard - The app must have at least one unauthenticated access scope granted (e.g., unauthenticated_read_product_listings, unauthenticated_write_checkouts) - The created token inherits all unauthenticated scopes from the app Limitations: Maximum 100 active tokens per shop. Tokens cannot be updated after creation, only deleted." }, { "slug": "SHOPIFY_CREATE_THEME", "name": "Create Theme", "description": "Creates a new theme in Shopify from a ZIP file containing theme assets. Requires a publicly accessible URL to the ZIP file. The theme will default to 'unpublished' status unless the role is explicitly set to 'main' (which publishes the theme immediately after file extraction). Note: This action requires the 'write_themes' scope, which needs merchant approval in Shopify. A store can have a maximum of 20 themes." }, { "slug": "SHOPIFY_CREATE_WEBHOOK", "name": "Create Webhook (Deprecated)", "description": "Creates a new webhook subscription in Shopify to receive real-time notifications when specific events occur in the store. Webhooks allow your application to be notified automatically when events like order creation, product updates, or customer changes happen. The webhook will POST event data to the specified address. Required parameters: address (destination URL) and topic (event type). Optional parameters: format (defaults to 'json'), fields (to limit payload size), metafield_namespaces (to include metafields). Requires 'write_webhooks' scope. May also require topic-specific scopes (e.g., 'read_orders' for orders/* topics)." }, { "slug": "SHOPIFY_CREATE_WEBHOOK_SUBSCRIPTION", "name": "Create webhook subscription", "description": "Create a webhook subscription that notifies your app when specific events occur in a Shopify store. Use when you need real-time event notifications for orders, products, customers, or other resources. Supports HTTPS URLs, Google Pub/Sub topics, and AWS EventBridge event sources." }, { "slug": "SHOPIFY_DELETE_ARTICLE", "name": "Delete Article", "description": "Delete an article from a blog in Shopify. Use when you need to permanently remove blog content. This action is irreversible." }, { "slug": "SHOPIFY_DELETE_BLOG", "name": "Delete a blog", "description": "Permanently deletes a blog from a Shopify store using its `blog_id`; this action is irreversible and requires the 'content' access scope." }, { "slug": "SHOPIFY_DELETE_COLLECT", "name": "Remove product from collection", "description": "Removes a product from a custom collection by deleting the collect. Use when you need to unlink a specific product from a custom collection using the collect ID." }, { "slug": "SHOPIFY_DELETE_COMMENT", "name": "Remove a comment", "description": "Remove a comment from a Shopify blog. Use when you need to hide a comment from blog readers while preserving the data. The comment status will be changed to 'removed'. Note: This action requires 'write_content' scope and protected customer data access approval from Shopify, as comments contain customer information (author, email, IP address)." }, { "slug": "SHOPIFY_DELETE_COUNTRY", "name": "Delete country", "description": "Deletes a country from the shop's tax configuration. Removes a country that was previously added to the shop's tax settings. The country must have been added via the API or Shopify admin for this operation to succeed. Requires the 'write_shipping' scope. DEPRECATION WARNING: This REST API endpoint was deprecated in API version 2024-07 (effective July 1, 2024). The recommended alternative is the GraphQL Countries in Shipping Zone API. This endpoint may not be available in newer API versions or may have restricted access in many Shopify stores." }, { "slug": "SHOPIFY_DELETE_CUSTOM_COLLECTION", "name": "Delete custom collection (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_DELETES_A_CUSTOM_COLLECTION instead. Permanently deletes a custom collection from a Shopify store using its `collection_id`; this action is irreversible and requires a valid, existing `collection_id`." }, { "slug": "SHOPIFY_DELETE_CUSTOMER", "name": "Delete a customer", "description": "Deletes a customer from the Shopify store. Use when you need to permanently remove a customer who has no existing orders. Cannot delete customers with existing orders." }, { "slug": "SHOPIFY_DELETE_CUSTOMER_ADDRESS", "name": "Delete customer address", "description": "Removes an address from a customer's address list. Cannot delete the customer's default address - to delete a default address, first assign a different address as the default." }, { "slug": "SHOPIFY_DELETE_DRAFT_ORDER", "name": "Delete a draft order", "description": "Delete a draft order from Shopify. Use when you need to remove an existing draft order permanently." }, { "slug": "SHOPIFY_DELETE_FULFILLMENT_EVENT", "name": "Delete fulfillment event", "description": "Deletes a fulfillment event (tracking status update) from an order's fulfillment. Use this action when you need to remove an incorrect or outdated tracking event from a fulfillment. Fulfillment events represent tracking status updates like 'in_transit', 'out_for_delivery', or 'delivered' that are displayed to customers on the order status page. Common use cases: - Removing duplicate tracking events - Correcting erroneous status updates - Cleaning up test events Prerequisites: You must have valid order_id, fulfillment_id, and event_id. These can be obtained from order retrieval actions or fulfillment event list actions. Note: This REST endpoint is deprecated. For new integrations, consider using the GraphQL Admin API. Requires 'write_orders' scope and approval for protected customer data access." }, { "slug": "SHOPIFY_DELETE_FULFILLMENT_SERVICE", "name": "Remove fulfillment service", "description": "Remove an existing fulfillment service from a Shopify store. Use when you need to permanently delete a third-party fulfillment service." }, { "slug": "SHOPIFY_DELETE_INVENTORY_LEVEL", "name": "Delete inventory levels", "description": "Deletes an inventory level of an inventory item at a location. Deleting an inventory level removes that item from the specified location. Every inventory item must have at least one inventory level." }, { "slug": "SHOPIFY_DELETE_MARKETING_EVENT", "name": "Delete a marketing event", "description": "Delete a marketing event from Shopify. Use when you need to remove an existing marketing event from the system." }, { "slug": "SHOPIFY_DELETE_METAFIELD", "name": "Delete a metafield by its ID", "description": "Deletes a metafield by its ID from any Shopify resource. Use this action to permanently remove metafields from: - Shop-level metafields (use resource='shop' or 'metafields') - Product metafields (resource='products') - Collection metafields (resource='collections') - Customer metafields (resource='customers') - Order metafields (resource='orders') - Other resource-specific metafields The deletion is permanent and cannot be undone. Returns an empty response on success." }, { "slug": "SHOPIFY_DELETE_METAOBJECT", "name": "Delete metaobject", "description": "Deletes a metaobject and its associated metafields using GraphQL mutation. Use when you need to permanently remove a metaobject from the Shopify store. The deletion is permanent and cannot be undone." }, { "slug": "SHOPIFY_DELETE_METAOBJECT_DEFINITION", "name": "Delete metaobject definition", "description": "Delete a metaobject definition and all its associated data. Use when you need to completely remove a metaobject definition schema. This mutation also asynchronously deletes all related metafield definitions, metaobjects, and metafields." }, { "slug": "SHOPIFY_DELETE_ORDER", "name": "Delete an order", "description": "Permanently delete an order from Shopify. Use when you need to remove test orders, orders paid with manual payment methods, or draft orders marked as paid. Orders must be archived or canceled before deletion. Orders that interact with an online gateway, are paid via Shopify POS, online checkout, or with gift cards cannot be deleted." }, { "slug": "SHOPIFY_DELETE_ORDER_RISK", "name": "Delete order risk", "description": "Deletes an order risk from an order. Only the application that created the risk can delete it - you cannot delete risks created by other applications. **IMPORTANT DEPRECATION NOTICE**: The Order Risk REST API has been deprecated as of Shopify API version 2025-10 and is no longer accessible. This endpoint will return 403 Forbidden errors when used with API version 2025-10 or later. For new implementations, use the GraphQL orderRiskAssessmentCreate and related mutations instead. See: https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderRiskAssessmentCreate To use this action, you must use Shopify API version 2024-01 or earlier, though migrating to the GraphQL Risk Assessments API is strongly recommended." }, { "slug": "SHOPIFY_DELETE_PAGE", "name": "Delete a page", "description": "Delete a page from a Shopify store permanently. Use when you need to remove an existing page; this operation is irreversible and requires content access scope." }, { "slug": "SHOPIFY_DELETE_PRICE_RULE", "name": "Delete price rule", "description": "Deletes an existing price rule from the Shopify store permanently. Use this action to remove price rules that are no longer needed. Note that deleting a price rule will also delete any discount codes associated with it. This operation is idempotent - deleting an already-deleted price rule will return an error. Common use cases: - Removing expired or outdated promotional campaigns - Cleaning up test price rules from development - Deactivating seasonal sales or limited-time offers To get a price rule ID: use the list price rules action or reference the ID from when you created the price rule." }, { "slug": "SHOPIFY_DELETE_PRODUCT", "name": "Delete a product", "description": "Permanently deletes a product from a Shopify store by its product ID. This action is irreversible - deleted products cannot be recovered. Deleting a product also removes all associated variants, images, inventory, and removes the product from all collections and sales channels store-wide. If the goal is collection-only cleanup, adjust collection membership instead." }, { "slug": "SHOPIFY_DELETE_PRODUCT_IMAGE", "name": "Delete product image", "description": "Deletes a specific image from a product in Shopify, requiring the `product_id` of an existing product and the `image_id` of an image currently associated with that product." }, { "slug": "SHOPIFY_DELETE_PRODUCT_METAFIELD", "name": "Delete product metafield", "description": "Deletes a specific metafield from a Shopify product using the product ID and metafield ID." }, { "slug": "SHOPIFY_DELETE_PRODUCT_VARIANT", "name": "Remove product variant", "description": "Deletes a specific product variant from a Shopify store using its unique product ID and variant ID; this action is irreversible. Use when you need to permanently remove a variant from a product." }, { "slug": "SHOPIFY_DELETE_REDIRECT", "name": "Delete redirect", "description": "Permanently deletes a URL redirect from a Shopify store. Use this tool to remove redirect rules that are no longer needed. A redirect automatically forwards visitors from an old URL path to a new target location. When you delete a redirect, visitors to the old path will no longer be automatically forwarded. Note: This operation is destructive and cannot be undone. If the redirect ID doesn't exist, the API will return a 404 error." }, { "slug": "SHOPIFY_DELETES_A_CUSTOM_COLLECTION", "name": "Delete a custom collection", "description": "Permanently delete a custom collection from a Shopify store. Use when you need to remove a custom collection that is no longer needed. This operation is irreversible and requires the 'write_products' access scope." }, { "slug": "SHOPIFY_DELETES_A_DISCOUNT_CODE", "name": "Delete a discount code", "description": "Delete a discount code from a price rule. Use when you need to remove a specific discount code associated with a price rule." }, { "slug": "SHOPIFY_DELETE_SAVED_SEARCH", "name": "Delete a saved search", "description": "Delete a saved search in Shopify. Use when you need to remove a saved search by its ID. The ID must be provided in GID format (gid://shopify/SavedSearch/[ID])." }, { "slug": "SHOPIFY_DELETE_SCRIPT_TAG", "name": "Delete Script Tag", "description": "Delete a script tag from your Shopify store. Permanently removes a script tag using its unique identifier. Script tags are JavaScript files that load on your storefront. Use this action to clean up deprecated scripts or remove third-party integrations. Requires 'write_script_tags' OAuth scope. Common use cases: - Remove outdated analytics or tracking scripts - Clean up after uninstalling third-party apps - Delete test scripts from development Note: Script tags are automatically deleted when the app that created them is uninstalled." }, { "slug": "SHOPIFY_DELETE_SMART_COLLECTION", "name": "Delete smart collection", "description": "Permanently removes a smart collection from a Shopify store using its `smart_collection_id`; this action is irreversible and requires a valid, existing smart collection ID." }, { "slug": "SHOPIFY_DELETE_STOREFRONT_ACCESS_TOKEN", "name": "Delete Storefront Access Token", "description": "Delete an existing storefront access token from a Shopify store. Use when you need to permanently revoke access for a storefront access token. This operation is irreversible." }, { "slug": "SHOPIFY_DELETE_THEME", "name": "Delete theme", "description": "Deletes a theme from the Shopify store by its ID. Use this tool when you need to permanently remove an unwanted theme. The deleted theme's details are returned in the response for confirmation. **Important limitations:** - Cannot delete a theme that is currently uploading or being updated (processing=true) - Cannot delete the last published theme (role=main) - you must publish another theme first - Cannot delete a theme that doesn't exist (returns 404) - Requires 'write_themes' scope permission **Best practices:** - Only delete unpublished, demo, or development themes - Check theme.role and theme.processing before deletion - Keep at least one published theme at all times" }, { "slug": "SHOPIFY_DELETE_THEME_ASSET", "name": "Delete theme asset", "description": "Delete an asset from a Shopify theme. Use when you need to remove a specific asset file (such as CSS, JavaScript, images, or template files) from a theme by providing the theme ID and asset key. Note that required theme assets like layout/theme.liquid cannot be deleted and will result in an error." }, { "slug": "SHOPIFY_DELETE_WEBHOOK", "name": "Delete webhook subscription (Deprecated)", "description": "Delete a webhook subscription from Shopify. Use when you need to remove an existing webhook. Only the app that registered the webhook can delete it; attempting to delete another app's webhook will return a 404 error." }, { "slug": "SHOPIFY_DELETE_WEBHOOK_SUBSCRIPTION", "name": "Delete webhook subscription", "description": "Delete a webhook subscription and stop all future webhooks to its endpoint. Use when you need to remove a webhook subscription that is no longer needed. Returns the deleted subscription's ID for confirmation. Note: If you only use app-specific webhooks, this may not be needed. App-specific webhook subscriptions in shopify.app.toml are automatically managed by Shopify." }, { "slug": "SHOPIFY_DELETE_WEB_PRESENCE", "name": "Delete web presence", "description": "Delete a web presence from Shopify. Use when you need to remove a web presence by its ID." }, { "slug": "SHOPIFY_DISABLE_GIFT_CARD", "name": "Disable a Gift Card", "description": "Disable a gift card in Shopify. Use when you need to permanently deactivate a gift card. WARNING: This operation is irreversible and the gift card cannot be re-enabled once disabled." }, { "slug": "SHOPIFY_ENABLE_STANDARD_METAOBJECT_DEFINITION", "name": "Enable standard metaobject definition", "description": "Enable a standard metaobject definition from its template. Use when you need to activate a predefined Shopify metaobject template for use in your store." }, { "slug": "SHOPIFY_GET_ABANDONMENT", "name": "Get abandonment", "description": "Retrieves an abandonment record from Shopify using its unique ID. Use when you need to query customer abandonment data including type, customer info, email state, and timing details." }, { "slug": "SHOPIFY_GET_ABANDONMENT_BY_ABANDONED_CHECKOUT_ID", "name": "Get abandonment by abandoned checkout ID", "description": "Query abandonment information by abandoned checkout ID using Shopify's GraphQL Admin API. Use when you need to retrieve customer journey data, abandonment type, and email state for a specific abandoned checkout. Returns null if the checkout doesn't exist or has no abandonment tracking." }, { "slug": "SHOPIFY_GET_ACCESS_SCOPES", "name": "Get a list of access scopes", "description": "Retrieves a list of access scopes associated with the access token. Use when you need to view the permissions that merchants have granted during app installation." }, { "slug": "SHOPIFY_GET_APP", "name": "Get App", "description": "Query information about a Shopify app using the GraphQL API. Use when you need to retrieve details about the currently authenticated app or a specific app by its ID." }, { "slug": "SHOPIFY_GET_APP_BY_HANDLE", "name": "Get app by handle", "description": "Query app information by handle using the Shopify Admin GraphQL API. Use when you need to retrieve details about a specific Shopify app using its handle." }, { "slug": "SHOPIFY_GET_APP_INSTALLATION", "name": "Get app installation details", "description": "Query a specific app installation on a Shopify store. Use when you need to retrieve details about an app installation including access scopes, launch URL, and uninstall URL." }, { "slug": "SHOPIFY_GET_APPLICATION_CHARGE_BY_ID", "name": "Get Application Charge By ID", "description": "Retrieve a single application charge by its unique identifier. Use when you need detailed information about a specific one-time charge." }, { "slug": "SHOPIFY_GET_APPLICATION_CHARGES", "name": "Get Application Charges", "description": "Retrieves a list of one-time application charges for the current app installation. Application charges are one-time fees charged to merchants for app usage. This endpoint returns all charges with their status (pending, accepted, active, declined, expired). Use this to monitor billing history, verify charge status, or implement pagination with since_id. Returns an empty list if no charges exist, which is normal for new app installations." }, { "slug": "SHOPIFY_GET_APPLICATION_CREDITS", "name": "Get application credits", "description": "Retrieve all application credits for a shop. Use when you need to view credits issued to merchants that can be used towards future app purchases." }, { "slug": "SHOPIFY_GET_ARTICLE", "name": "Get Article", "description": "Retrieves a single article from a Shopify blog by its ID. Use this action when you need to: - Get detailed information about a specific blog article - Retrieve article content, metadata, or publication status - Access article properties like title, author, tags, or images The optional 'fields' parameter allows you to retrieve only specific article properties, reducing response size and improving performance when you don't need the full article data. Requires the 'read_content' OAuth scope." }, { "slug": "SHOPIFY_GET_BATCH_DISCOUNT_CODES", "name": "Get Batch Discount Codes", "description": "Retrieves discount codes from a batch creation job, showing which succeeded and which failed. **Workflow:** After batch job completes (status='completed'), use this to get the actual codes. 1. Create price rule (get price_rule_id) 2. Create batch job (get batch_id) 3. Poll until completed 4. Use this action to retrieve codes **Response:** Successful codes have id populated and errors={}. Failed codes have id=null and errors with validation details. **Use Cases:** Verify created codes, identify validation errors, get IDs for further operations. **Note:** Requires 'read_price_rules' scope. Max 100 codes per batch." }, { "slug": "SHOPIFY_GET_BLOG", "name": "Get Single Blog", "description": "Retrieve a single blog by its unique identifier. Use when you need to access detailed information about a specific blog in the Shopify store." }, { "slug": "SHOPIFY_GET_BLOG_ARTICLE_TAGS", "name": "Get blog article tags", "description": "Retrieve a list of all article tags from a specific blog. Use when you need to get all unique tags that have been applied to articles in a particular blog, optionally sorted by popularity." }, { "slug": "SHOPIFY_GET_BULK_OPERATION", "name": "Get bulk operation status", "description": "Query the status and details of a Shopify bulk operation by its ID. Use when you need to check the progress, status, or results of a previously initiated bulk operation. Returns metadata including status, completion time, result URLs, and error information if applicable. Note: The bulkOperation query requires API version 2025-10 or later." }, { "slug": "SHOPIFY_GET_CARRIER_SERVICES", "name": "Get carrier services", "description": "Retrieves all active carrier services configured in a Shopify store. Carrier services allow apps to provide real-time shipping rates at checkout. This endpoint returns only carrier services where active=true. Requirements: - Store must be on Advanced Shopify plan or higher, OR - Store must be on Shopify plan with yearly billing (with carrier service feature), OR - Store must be a development store Use this to view active carrier services for shipping rate calculations." }, { "slug": "SHOPIFY_GET_CATALOGS_COUNT", "name": "Get catalogs count", "description": "Query the count of catalogs in the Shopify store. Use when you need to know how many catalogs exist, optionally filtered by type or search query." }, { "slug": "SHOPIFY_GET_CHECKOUT_PROFILE", "name": "Get checkout profile", "description": "Retrieves a checkout profile from Shopify using its unique ID. Use when you need to query checkout profile details including name, publication status, and timestamps." }, { "slug": "SHOPIFY_GET_CHECKOUTS_COUNT", "name": "Get checkouts count", "description": "Retrieves a count of abandoned checkouts from the past 90 days. Use when you need to know how many checkouts are abandoned, optionally filtered by date ranges or status." }, { "slug": "SHOPIFY_GET_COLLECT_BY_ID", "name": "Get collect by ID", "description": "Retrieves a specific collect by its ID. Use when you need to get details about a specific product-collection relationship." }, { "slug": "SHOPIFY_GET_COLLECTION_BY_ID", "name": "Get collection by ID", "description": "Retrieves a specific Shopify collection by its `collection_id`, optionally filtering returned data to specified `fields`." }, { "slug": "SHOPIFY_GET_COLLECTION_BY_IDENTIFIER", "name": "Get collection by identifier", "description": "Query a collection by identifier (ID or handle) using the Shopify GraphQL Admin API. Use when you need to fetch collection details by either its global ID or unique handle." }, { "slug": "SHOPIFY_GET_COLLECTS", "name": "Get collects", "description": "Retrieves a list of collects from a Shopify store, where a collect links a product to a custom collection. Returns only collect mapping records (collect_id, collection_id, product_id, position, etc.), not full product details — use SHOPIFY_GET_PRODUCTS_IN_COLLECTION if product details are needed." }, { "slug": "SHOPIFY_GET_COLLECTS_COUNT", "name": "Get collects count", "description": "Retrieves a count of collects (product-collection relationships). Use when you need to know the total number of collects, optionally filtered by collection_id or product_id." }, { "slug": "SHOPIFY_GET_COMMENTS_COUNT", "name": "Get count of comments", "description": "Retrieves a count of comments. Use when you need to know how many comments exist, optionally filtered by article, blog, status, or date ranges." }, { "slug": "SHOPIFY_GET_CONSENT_POLICY", "name": "Get consent policy", "description": "Query consent policies for privacy compliance requirements. Use when you need to retrieve customer consent requirements for specific regions or countries (GDPR, CCPA, etc.)." }, { "slug": "SHOPIFY_GET_COUNTRIES", "name": "Get Countries", "description": "Retrieve a list of countries configured in the Shopify store with tax rates and provinces. Use when you need to get countries and their tax configuration for the store." }, { "slug": "SHOPIFY_GET_COUNTRIES_COUNT", "name": "Get countries count", "description": "Retrieves the count of countries configured in a Shopify store. Use when you need to determine how many countries are available in the store's tax and shipping settings. **DEPRECATION WARNING**: This endpoint is deprecated as of API version 2024-07. Consider using the GraphQL Admin API's 'CountriesInShippingZones' object as an alternative. This REST endpoint will continue to work but may be removed in future API versions." }, { "slug": "SHOPIFY_GET_COUNTRIES_PARAM_COUNTRY_ID_PROVINCES_COUNT", "name": "Get provinces count for country", "description": "Retrieves a count of provinces for a country. Use when you need to determine how many provinces or states are configured for a specific country in Shopify." }, { "slug": "SHOPIFY_GET_COUNTRIES_PARAM_COUNTRY_ID_PROVINCES_PARAM_PROVI", "name": "Get Province for Country", "description": "Get Province for Country" }, { "slug": "SHOPIFY_GET_COUNTRY", "name": "Get country", "description": "Retrieve a specific country by its ID from Shopify. Use when you need to get tax information, country details, and province-level tax rates for a particular country." }, { "slug": "SHOPIFY_GET_COUNTRY_PROVINCES", "name": "Get provinces for country", "description": "Retrieve a list of provinces for a specified country. Use when you need to get province information, tax rates, and shipping zones for a specific country." }, { "slug": "SHOPIFY_GET_CURRENCIES", "name": "Get Currencies", "description": "Retrieve a list of currencies enabled on a Shopify store. This action fetches all currencies that the merchant has enabled for multi-currency transactions through Shopify Payments. Each currency includes its ISO 4217 code, the timestamp when its conversion rate was last updated, and its enabled status. Use this when you need to: - Check which currencies are available for customer transactions - Verify currency configurations for the shop - Get conversion rate update timestamps - Determine multi-currency support capabilities Note: This is a read-only endpoint that requires no parameters and returns all enabled currencies for the authenticated shop." }, { "slug": "SHOPIFY_GET_CUSTOM_COLLECTION_BY_ID", "name": "Get custom collection by ID", "description": "Retrieve a single custom collection by its unique ID from Shopify. Use when you need to fetch detailed information about a specific custom collection." }, { "slug": "SHOPIFY_GET_CUSTOM_COLLECTIONS", "name": "Get custom collections", "description": "Retrieves a list of custom collections from a Shopify store. Supports filtering by IDs, handle, title, product ID, publication status, and date ranges (published/updated). Use the fields parameter to retrieve only specific properties, and limit/since_id for pagination. Combining multiple filters (handle, ids, product_id) simultaneously may return empty sets; use broad filters first. Newly created collections may not appear immediately; use GetCollectionById to verify a specific collection shortly after creation." }, { "slug": "SHOPIFY_GET_CUSTOM_COLLECTIONS_COUNT", "name": "Get custom collections count", "description": "Retrieves the total count of custom collections in a Shopify store with optional filters. Use this action to get the number of custom collections, optionally filtered by: - Product ID (collections containing a specific product) - Publication date range (when collections were published) - Publication status (published, unpublished, or any) - Title (exact title match) - Update date range (when collections were last modified) Returns a simple count integer without collection details. For full collection data, use get collection list actions." }, { "slug": "SHOPIFY_GET_CUSTOMER", "name": "Retrieve a single customer", "description": "Retrieve a single customer by their unique identifier. Use when you need to fetch detailed information about a specific customer." }, { "slug": "SHOPIFY_GET_CUSTOMER_ADDRESS", "name": "Get Customer Address", "description": "Retrieve details of a single customer address from Shopify. Use when you need to get complete information about a specific address for a customer, including address lines, city, province, country, postal code, and phone number." }, { "slug": "SHOPIFY_GET_CUSTOMER_ADDRESSES", "name": "Get Customer Addresses", "description": "Retrieves all addresses associated with a specific customer. Returns complete address details including street address, city, province/state, country, postal code, and contact information. Each address includes a unique ID and indicates if it's the customer's default address. Important: This endpoint requires 'Protected Customer Data Access' approval from Shopify. Without this approval, requests will fail with a 403 error. See https://shopify.dev/docs/apps/launch/protected-customer-data for details. Use this action when you need to: (1) View all addresses for a customer, (2) Check a customer's default address, (3) Retrieve address details before updating or deleting." }, { "slug": "SHOPIFY_GET_CUSTOMER_ORDERS", "name": "Get customer orders", "description": "Retrieves all orders for a specific, existing customer in Shopify using their unique customer ID." }, { "slug": "SHOPIFY_GET_CUSTOMERS_COUNT", "name": "Get customers count", "description": "Retrieves a count of all customers. Use when you need to know the total number of customers, optionally filtered by creation or update dates." }, { "slug": "SHOPIFY_GET_CUSTOMERS_SEARCH", "name": "Search Customers", "description": "Search for customers matching a supplied query. Use when you need to find customers based on specific criteria like email, name, location, order count, or spending." }, { "slug": "SHOPIFY_GET_DISCOUNT_CODE", "name": "Get Discount Code", "description": "Retrieves a single discount code for a price rule. Use when you need to get details about a specific discount code including its usage count and timestamps." }, { "slug": "SHOPIFY_GET_DISCOUNT_CODE_BATCH_JOB", "name": "Retrieve Discount Code Creation Job", "description": "Retrieves the status and progress of an asynchronous batch discount code creation job for a specific price rule. Use this to monitor a job that creates up to 100 discount codes at once. Check the 'status' field ('queued', 'running', or 'completed') and 'imported_count'/'failed_count' to track progress. The job is created via POST /price_rules/{price_rule_id}/batch and this endpoint lets you poll for its completion." }, { "slug": "SHOPIFY_GET_DISCOUNT_CODES_COUNT", "name": "Get discount codes count", "description": "Retrieves a count of discount codes for a shop. Use when you need to know how many discount codes exist, optionally filtered by usage statistics." }, { "slug": "SHOPIFY_GET_DISCOUNT_CODES_LOOKUP", "name": "Get Discount Code Location", "description": "Look up a discount code by its code name and retrieve its resource location and IDs. Use this when you have a discount code (e.g., \"SUMMER2024\") and need to find its price_rule_id and discount_code_id for use with other API endpoints. This is faster than listing all discount codes when you know the specific code name. The API returns a 303 redirect with the location in the header." }, { "slug": "SHOPIFY_GET_DRAFT_ORDER", "name": "Receive a single draft order", "description": "Retrieve detailed information for a specific draft order from a Shopify store. Use when you need to access a draft order's status, customer details, line items, pricing, or shipping information." }, { "slug": "SHOPIFY_GET_EVENT", "name": "Get event by ID", "description": "Retrieve a specific Shopify event by its ID. Events track actions performed on store resources like products, orders, collections, and articles. Use this to get detailed information about a specific event, including what action occurred, when it happened, and which resource was affected. Common use cases: auditing changes, tracking resource history, debugging workflows. Note: This endpoint contains protected customer data and may require explicit approval from Shopify for access. For development/testing, request protected customer data access in the Shopify Partner Dashboard." }, { "slug": "SHOPIFY_GET_EVENTS", "name": "Get events list (Deprecated)", "description": "Retrieves a list of audit trail events from a Shopify store. Events represent actions performed on store resources (products, orders, collections, pages, articles, etc.). Each event captures what happened (verb: create/update/destroy), when it occurred, who performed it, and which resource was affected. This is useful for tracking store activity history, auditing changes, and building activity logs. Use cases: - Track when products were created, updated, or deleted - Monitor order fulfillment activities - Audit changes to collections and content - Build activity timelines for specific resources - Detect recent modifications to store resources Important: Events may not appear immediately (can take a few seconds after the action). Pagination is implemented via Link headers (rel=\"next\", rel=\"previous\") in the response, not via page parameters. Note: The REST Admin API is legacy as of October 2024. Consider GraphQL alternatives for new integrations." }, { "slug": "SHOPIFY_GET_FULFILLMENT", "name": "Get fulfillments by fulfillment order", "description": "Retrieves all fulfillments (shipments) associated with a specific fulfillment order. A fulfillment order represents a group of line items that are to be fulfilled from a specific location. This action returns tracking information, shipment status, line item details, and delivery information for each fulfillment. Use this when you need to: - Check tracking numbers and carrier information for shipped items - Monitor shipment status (in_transit, delivered, etc.) - View which line items were included in specific shipments - Get fulfillment location and origin address details Prerequisites: You must first obtain a fulfillment_order_id by using the 'Get fulfillment orders for order' action with an order_id." }, { "slug": "SHOPIFY_GET_FULFILLMENT_EVENT", "name": "Get Fulfillment Event", "description": "Retrieves a specific fulfillment event by its ID, providing detailed shipment tracking information. Use this when you need to check the status and location of a specific tracking event for a fulfilled order. The event contains information such as status (in_transit, out_for_delivery, delivered), timestamps, geographic location data (city, province, country, coordinates), and carrier messages. Fulfillment events track the shipment progress from the carrier and are displayed on the customer's order status page. Each event represents a status update (e.g., package picked up, in transit, out for delivery, delivered). Note: This REST API endpoint is deprecated as of Shopify API 2024-10. Consider using the GET fulfillment events list endpoint or GraphQL API for new integrations. Requires valid order_id, fulfillment_id, and event_id - all three IDs must correspond to existing resources in the store." }, { "slug": "SHOPIFY_GET_FULFILLMENT_EVENTS", "name": "Get fulfillment events", "description": "Retrieves tracking events for a specific fulfillment, showing shipment status updates (e.g., in_transit, out_for_delivery, delivered) with timestamps and location information. Use this when you need to check the tracking history or current delivery status of a fulfilled order. Note: Returns events only for fulfillments that have tracking information from carriers." }, { "slug": "SHOPIFY_GET_FULFILLMENT_ORDER", "name": "Get fulfillment orders for order (Deprecated)", "description": "Retrieve all fulfillment orders for a specific order. Use when you need to check fulfillment status, assigned locations, or line items for an order." }, { "slug": "SHOPIFY_GET_FULFILLMENT_ORDER_FULFILLMENTS", "name": "Retrieves fulfillments by fulfillment order (Deprecated)", "description": "Retrieves all fulfillments associated with a specific fulfillment order. Returns detailed shipment tracking information, delivery status, line items, and fulfillment metadata. Use this action when you need to check the status of completed or in-progress fulfillments for a fulfillment order." }, { "slug": "SHOPIFY_GET_FULFILLMENT_ORDER_LOCATIONS_FOR_MOVE", "name": "Get fulfillment order locations for move", "description": "Retrieve locations that a fulfillment order can potentially move to. Use when you need to identify which locations are available for transferring a specific fulfillment order. The resulting list is sorted alphabetically in ascending order by location name." }, { "slug": "SHOPIFY_GET_FULFILLMENT_ORDER_MOVE_LOCATIONS", "name": "Get fulfillment order locations for move (Deprecated)", "description": "Retrieve a list of locations that a fulfillment order can potentially move to. Use when you need to identify available destination locations for relocating a fulfillment order." }, { "slug": "SHOPIFY_GET_FULFILLMENT_ORDERS_FOR_ORDER", "name": "Get fulfillment orders for order", "description": "Retrieves a list of fulfillment orders for a specific order. Use when you need to get fulfillment order details including line items, delivery method, assigned location, and fulfillment status for a given order." }, { "slug": "SHOPIFY_GET_FULFILLMENT_SERVICES", "name": "Get Fulfillment Services", "description": "Retrieve a list of fulfillment services available on the Shopify store. Use when you need to get information about third-party warehouses that prepare and ship orders on behalf of the store owner." }, { "slug": "SHOPIFY_GET_GIFT_CARD_BY_ID", "name": "Get Gift Card By ID", "description": "Retrieves detailed information about a specific gift card by its ID. Returns the gift card's balance, status, creation date, and other metadata. Note: The full gift card code is never returned by this endpoint - only the last 4 characters are available for security reasons. The full code is only visible at creation time. Requires: read_gift_cards scope (Shopify Plus only, requires Shopify Support approval)." }, { "slug": "SHOPIFY_GET_GIFT_CARDS", "name": "Retrieves a list of gift cards", "description": "Retrieve a list of gift cards from Shopify. Use when you need to fetch gift cards with optional filtering by status and pagination support." }, { "slug": "SHOPIFY_GET_GIFT_CARDS_COUNT", "name": "Retrieves a count of gift cards", "description": "Retrieves the total count of gift cards in the store. Use when you need to know how many gift cards exist, optionally filtered by enabled or disabled status." }, { "slug": "SHOPIFY_GET_INVENTORY_ITEM", "name": "Get Inventory Item", "description": "Retrieves a single inventory item by ID. Use when you need to get detailed information about an inventory item including SKU, cost, tracking status, and shipping requirements." }, { "slug": "SHOPIFY_GET_INVENTORY_ITEMS", "name": "Get Inventory Items", "description": "Retrieves a list of inventory items by specified IDs. Use when you need to get inventory item details like SKU, cost, shipping requirements, and tracking status. Note: As of version 2019-10, pagination is implemented using links provided in response headers." }, { "slug": "SHOPIFY_GET_INVENTORY_LEVELS", "name": "Get Inventory Levels", "description": "Retrieves a list of inventory levels for specified items and locations. Use when you need to check inventory quantities at specific locations. At least one of inventory_item_ids or location_ids must be provided as a filter parameter." }, { "slug": "SHOPIFY_GET_INVENTORY_LEVELS_FOR_LOCATION", "name": "Get Inventory Levels For Location", "description": "Retrieves a list of inventory levels for a specific location. Use when you need to check inventory quantities at a particular location. This endpoint implements cursor-based pagination via Link headers in the response." }, { "slug": "SHOPIFY_GET_LOCATION", "name": "Get location", "description": "Retrieve a single location by its ID. Use when you need to get details about a specific physical or virtual place where inventory is stocked and orders are fulfilled." }, { "slug": "SHOPIFY_GET_LOCATIONS_COUNT", "name": "Get locations count", "description": "Query the count of locations in a Shopify store using the GraphQL API. Use when you need to get the total number of locations, optionally filtered by search criteria." }, { "slug": "SHOPIFY_GET_MARKETING_EVENT", "name": "Retrieve a single marketing event", "description": "Retrieves detailed information about a specific marketing event by its ID. Use this action to: - Get full details of a marketing campaign including UTM parameters, budget, and timeline - Check the status and configuration of a specific marketing event - Access information about resources (products, collections) being marketed - Retrieve tracking URLs (manage_url, preview_url) for the event Returns comprehensive event data including event type, marketing channel, budget details, UTM parameters, and associated resources." }, { "slug": "SHOPIFY_GET_MARKETING_EVENTS_COUNT", "name": "Get marketing events count", "description": "Retrieves a count of all marketing events in the store. Use when you need to know the total number of marketing events." }, { "slug": "SHOPIFY_GET_METAFIELD", "name": "Get blog metafields", "description": "Retrieve a list of metafields from a blog resource. Use when you need to fetch metafields attached to a specific Shopify blog." }, { "slug": "SHOPIFY_GET_METAFIELD_BY_ID", "name": "Get metafield by ID", "description": "Retrieve a single metafield from a resource by its ID. Use when you need to fetch metafield details without knowing the parent resource." }, { "slug": "SHOPIFY_GET_METAFIELDS", "name": "Get metafields", "description": "Retrieve a list of metafields. Use when you need to fetch metafields across resources or for specific resources by providing owner_id and owner_resource filters." }, { "slug": "SHOPIFY_GET_METAFIELDS_COUNT", "name": "Get shop metafields count (Deprecated)", "description": "Retrieves the count of shop-level metafields only. This action returns how many metafields are directly attached to the shop itself, not metafields on other resources like products, customers, or orders. Use this when you need a quick count without fetching the full list of shop metafields. Note: To count metafields on specific resources (products, customers, etc.), use the SHOPIFY_GET_RESOURCE_METAFIELDS_COUNT action instead." }, { "slug": "SHOPIFY_GET_ORDER", "name": "Get order", "description": "Retrieve a specific order using its unique identifier. Returns detailed order information including line items, customer data, addresses, financial status, fulfillment status, and more." }, { "slug": "SHOPIFY_GET_ORDER_FULFILLMENTS", "name": "Retrieve order fulfillments", "description": "Retrieve fulfillments associated with a Shopify order. Use when you need to get delivery tracking information, shipment status, or fulfillment details for a specific order." }, { "slug": "SHOPIFY_GET_ORDER_LIST", "name": "Get order list (Deprecated)", "description": "Retrieves a list of orders from Shopify with optional filters and pagination." }, { "slug": "SHOPIFY_GET_ORDER_REFUND_BY_ID", "name": "Get specific refund for order", "description": "Retrieves a specific refund by refund ID for an order. Use this action when you need to: - Get detailed information about a particular refund - Review specific refund transactions and payment details - Check refunded line items, shipping costs, and adjustments - Verify duty and additional fee refunds Key Features: - Returns comprehensive refund data including line items and transactions - Supports field filtering to retrieve only specific data - Optional in_shop_currency parameter for currency conversion - Includes refund_shipping_lines for refunded shipping costs (added in API version 2024-10) Important Notes: - REST Admin API is legacy as of Oct 2024; consider GraphQL API for new integrations - Requires 'read_orders' access scope for authentication - Access to protected customer data may require additional Shopify app approval" }, { "slug": "SHOPIFY_GET_ORDER_REFUNDS", "name": "Get refunds for order", "description": "Retrieves a list of all refunds for a specific order. Use this action when you need to: - Review refund history and details for an order - Check refunded amounts, line items, and shipping costs - Verify payment transactions associated with refunds - Track order adjustments, duties, and additional fees refunded Key Features: - Returns all refunds with detailed line items, transactions, and adjustments - Supports field filtering to retrieve only specific data - Optional in_shop_currency parameter for currency conversion - Configurable result limit (1-250, default 50) Important Notes: - This endpoint implements pagination via Link headers (not page parameters) - As of API version 2024-10, refunded shipping costs are accessed via refund_shipping_lines - REST Admin API is legacy as of Oct 2024; consider GraphQL API for new integrations - Requires 'read_orders' access scope for authentication - Access to protected customer data may require additional Shopify app approval" }, { "slug": "SHOPIFY_GET_ORDER_RISK", "name": "Get Order Risks (Deprecated)", "description": "Retrieves all fraud risk assessments for a specific order. Returns a list of risk assessments indicating potential fraud. Each risk includes a recommendation (cancel/investigate/accept) and a fraud likelihood score. Only risks with display=true are factored into Shopify's overall order risk calculation. Note: Returns an empty array if the app lacks permission to access order risks (requires read_orders or write_orders scope with merchant approval for protected customer data)." }, { "slug": "SHOPIFY_GET_ORDER_RISKS", "name": "Get order risks", "description": "Retrieves all fraud risk assessments for a specific order. Returns a list of risk assessments with recommendations (cancel/investigate/accept) and fraud likelihood scores. Use this when reviewing fraud detection findings for an order. Returns an empty risks array if: - The order has no risk assessments - Authentication fails (401) - App lacks permission to access order risks (403) Raises an error only if the order doesn't exist (404) or other server errors occur. Note: This REST API endpoint is deprecated as of version 2025-10; GraphQL Admin API's OrderRiskAssessment is recommended for new applications." }, { "slug": "SHOPIFY_GET_ORDERSBY_ID", "name": "Get order by id (Deprecated)", "description": "Retrieves a specific Shopify order by its unique ID, which must correspond to an existing order." }, { "slug": "SHOPIFY_GET_ORDERS_WITH_FILTERS", "name": "Get orders with filters", "description": "Retrieves Shopify orders filtered by dates and other filters. Uses server-side filtering. Results are paginated; follow `page_info` cursors until exhausted to retrieve all matching orders — a single request returns at most `limit` orders (max 250) and omits the rest." }, { "slug": "SHOPIFY_GET_ORDER_TRANSACTIONS_COUNT", "name": "Get order transactions count", "description": "Retrieve a count of an order's transactions in Shopify. Use when you need to know how many transactions (authorization, sale, capture, void, refund) are associated with a specific order without fetching the full transaction details." }, { "slug": "SHOPIFY_GET_PAGE_BY_ID", "name": "Get page by ID", "description": "Retrieve a single Shopify page by its unique ID. Use when you need to fetch detailed information about a specific page." }, { "slug": "SHOPIFY_GET_POLICIES", "name": "Get Policies", "description": "Retrieve a list of the shop's policies. Use when you need to view configured shop policies such as refund policy, privacy policy, or terms of service." }, { "slug": "SHOPIFY_GET_PRICE_RULE", "name": "Get Price Rule", "description": "Retrieves a single price rule by ID from Shopify. Returns discount configuration including type (percentage/fixed), value, target items, customer eligibility, and prerequisites. Note: The PriceRule REST API is deprecated as of October 2024; consider using GraphQL Admin API for new implementations." }, { "slug": "SHOPIFY_GET_PRICE_RULE_BATCH_INFO", "name": "Check Batch Listing Support for Price Rule", "description": "Checks if batch listing is supported for a price rule and provides guidance on alternatives. **IMPORTANT: Shopify's API does not provide an endpoint to list all batches for a price rule.** This action returns structured information explaining the limitation and suggesting alternatives. The available batch endpoints in Shopify's API are: - POST /price_rules/{price_rule_id}/batch.json - Creates a batch discount code creation job - GET /price_rules/{price_rule_id}/batch/{batch_id}.json - Retrieves a specific batch job by ID - GET /price_rules/{price_rule_id}/batch/{batch_id}/discount_codes.json - Lists discount codes created by a batch To retrieve batch details, you must know the batch_id (returned when creating a batch). Shopify only allows one active batch creation job per shop at a time. Use action SHOPIFY_GET_PRICE_RULES_PARAM_PRICE_RULE_ID_BATCH_PARAM_BATCH_ID if you have the batch_id. Reference: https://shopify.dev/docs/api/admin-rest/latest/resources/discountcode" }, { "slug": "SHOPIFY_GET_PRICE_RULE_DISCOUNT_CODES", "name": "Get Discount Codes for Price Rule", "description": "Retrieve a list of discount codes for a price rule. Use when you need to get all discount codes associated with a specific price rule. Note: As of version 2019-10, pagination is implemented via Link headers in the response." }, { "slug": "SHOPIFY_GET_PRODUCT", "name": "Get product", "description": "Retrieves details for an existing Shopify product using its unique product ID." }, { "slug": "SHOPIFY_GET_PRODUCT_IMAGE", "name": "Get product image", "description": "Retrieve a single product image by ID for a specific product. Use when you need to get details about a specific image associated with a product." }, { "slug": "SHOPIFY_GET_PRODUCT_IMAGES", "name": "Get Product Images (Deprecated)", "description": "Retrieves all images for a Shopify product, specified by its `product_id` which must correspond to an existing product." }, { "slug": "SHOPIFY_GET_PRODUCT_METAFIELD", "name": "Get product metafield", "description": "Retrieves a specific metafield for a Shopify product using the product ID and metafield ID." }, { "slug": "SHOPIFY_GET_PRODUCT_METAFIELDS", "name": "Get product metafields", "description": "Retrieves all metafields for a specific Shopify product. Metafields are returned under `data.response_data.metafields`. Can be filtered by namespace and/or key; empty results are valid when no metafields match. Always fetch current metafield IDs via this tool rather than using cached values, as IDs can change after schema updates." }, { "slug": "SHOPIFY_GET_PRODUCTS", "name": "Get products (Deprecated)", "description": "Retrieves a list of products from a Shopify store. Results are paginated; for large catalogs, use SHOPIFY_GET_PRODUCTS_PAGINATED to iterate all pages, as this tool may return only a partial set. Product handles and SKUs must be unique — use this tool to check for existing products before creating new ones." }, { "slug": "SHOPIFY_GET_PRODUCTS_IN_COLLECTION", "name": "Get products in collection (Deprecated)", "description": "Retrieves products that belong to a specific Shopify collection. Returns detailed product information including variants, images, and options. Products are sorted according to the collection's configured sort order. Use this action when you need to: - List all products in a specific collection - Get product details for items within a collection - Display collection contents to users. For collection-product membership mappings without full product details, use SHOPIFY_GET_COLLECTS instead." }, { "slug": "SHOPIFY_GET_PRODUCTS_PAGINATED", "name": "Get products (paginated)", "description": "List products with Shopify cursor-based pagination. Iterate until `next_page_info` is null; stopping early silently truncates the product list. Products are at `data.response_data.products`; the next cursor is at `data.next_page_info`." }, { "slug": "SHOPIFY_GET_PRODUCT_VARIANT", "name": "Receive a single product variant", "description": "Retrieves detailed information about a single product variant by its ID from Shopify. A product variant represents a specific version of a product (e.g., different sizes, colors, or materials). This action returns comprehensive details including pricing, inventory, weight, SKU, barcode, and shipping requirements. Use this when you need to: - Get current pricing and inventory levels for a specific variant - Check variant details like SKU, barcode, weight, or options (size, color, etc.) - Retrieve variant configuration (taxable, requires_shipping, fulfillment_service) - Fetch only specific fields using the optional 'fields' parameter to reduce response size Note: You must know the variant_id beforehand. Use list products or list variants actions to discover variant IDs." }, { "slug": "SHOPIFY_GET_RECURRING_APPLICATION_CHARGES", "name": "Get recurring application charges", "description": "Retrieve a list of recurring application charges for the app. Use when you need to view subscription charges, check billing status, or audit recurring payments." }, { "slug": "SHOPIFY_GET_REDIRECT", "name": "Retrieve a single redirect (Deprecated)", "description": "Retrieve details of a specific URL redirect by its ID. Returns the redirect's path (source) and target (destination) configuration. Use this when you have a specific redirect ID and need its details; for finding redirects or getting multiple redirects, use the list redirects action instead." }, { "slug": "SHOPIFY_GET_REDIRECT_BY_ID", "name": "Get redirect by ID", "description": "Retrieve a single redirect by its ID. Use when you need to get details about a specific URL redirect configuration in a Shopify store." }, { "slug": "SHOPIFY_GET_REDIRECTS", "name": "Get redirects", "description": "Retrieve a list of URL redirects from a Shopify store. Use when you need to fetch URL redirect configurations, optionally filtered by path or target. Supports pagination via Link headers." }, { "slug": "SHOPIFY_GET_REDIRECTS_COUNT", "name": "Get redirects count", "description": "Retrieves a count of URL redirects in the store. Use when you need to know how many URL redirects are configured, optionally filtered by path or target." }, { "slug": "SHOPIFY_GET_REFUND", "name": "Retrieve a specific refund (Deprecated)", "description": "Retrieves detailed information about a specific refund for an order. Use this action when you need complete refund details including refunded line items, transactions, order adjustments, duties, and shipping costs. Both order_id and refund_id are required. To list all refunds for an order, use the 'Retrieve refunds for order' action instead." }, { "slug": "SHOPIFY_GET_SCRIPTTAG", "name": "Get Script Tag", "description": "Retrieves a single script tag by its ID. Use when you need to get details of a specific script tag configuration." }, { "slug": "SHOPIFY_GET_SEGMENTS_COUNT", "name": "Get segments count", "description": "Query the number of segments for a shop. Use when you need to know how many customer segments exist." }, { "slug": "SHOPIFY_GET_SHIPPING_ZONES", "name": "Get Shipping Zones", "description": "Retrieve all configured shipping zones with countries, provinces, tax rates, and shipping rates. Use when you need to view or analyze shipping configuration." }, { "slug": "SHOPIFY_GET_SHOP_BILLING_ADDRESS", "name": "Get shop billing address", "description": "Retrieves the billing address for the shop via GraphQL query. Returns the shop's billing information including address details, city, province, country, and phone number." }, { "slug": "SHOPIFY_GET_SHOP_CONFIGURATION", "name": "Get Shop Configuration", "description": "DEPRECATED: Use SHOPIFY_GET_SHOP_DETAILS instead. Retrieve the complete configuration and settings for the authenticated Shopify shop account. Use when you need to access shop information such as business details, address, timezone, currency, plan information, or feature availability." }, { "slug": "SHOPIFY_GET_SHOP_DETAILS", "name": "Get Shop Details (Deprecated)", "description": "Retrieves comprehensive administrative information about the authenticated Shopify store. The returned `iana_timezone` field is critical for date-based filtering in other tools (e.g., `created_at_min`/`created_at_max` in order queries), since Shopify stores timestamps in UTC and boundary-day orders can be dropped or double-counted without timezone adjustment. Also useful as a first-step connection validity check; an empty or malformed shop object indicates an invalid connection." }, { "slug": "SHOPIFY_GET_SHOP_METAFIELD", "name": "Retrieve metafield by ID (Deprecated)", "description": "Retrieve a metafield by its ID directly. Use when you know the metafield ID and need to fetch its details without specifying the resource type or owner." }, { "slug": "SHOPIFY_GET_SHOP_METAFIELDS", "name": "Retrieve metafields from resource endpoint (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_GET_METAFIELDS instead (apps/shopify/actions/get_metafields.py). Retrieve a list of metafields attached to resources. Use when you need to fetch metafields that can be filtered by namespace, key, type, and date ranges." }, { "slug": "SHOPIFY_GET_SMART_COLLECTION", "name": "Retrieve a single smart collection (Deprecated)", "description": "Retrieve a single smart collection by its ID from Shopify. Use when you need to get detailed information about a specific smart collection including its rules, products ordering, and metadata. Requires read_products access scope." }, { "slug": "SHOPIFY_GET_SMART_COLLECTION_BY_ID", "name": "Get smart collection by ID", "description": "Retrieve a single smart collection by its ID. Use when you need to get details about a specific smart collection including its rules, settings, and associated image." }, { "slug": "SHOPIFY_GET_SMART_COLLECTIONS", "name": "Get smart collections", "description": "Retrieve a list of smart collections from a Shopify store. Use when you need to fetch smart collections with optional filtering by IDs, handle, title, product ID, publication status, or date ranges. Supports pagination via since_id parameter." }, { "slug": "SHOPIFY_GET_SMART_COLLECTIONS_COUNT", "name": "Get smart collections count", "description": "Retrieve a count of smart collections in a Shopify store. Use when you need to know the total number of smart collections, optionally filtered by publication status, title, product association, or date ranges." }, { "slug": "SHOPIFY_GET_STOREFRONT_ACCESS_TOKENS", "name": "Get storefront access tokens", "description": "Retrieves a list of storefront access tokens that have been issued for the shop. Use when you need to view all active storefront access tokens and their permissions." }, { "slug": "SHOPIFY_GET_TENDER_TRANSACTIONS", "name": "Get tender transactions", "description": "Retrieve a list of tender transactions from Shopify. Tender transactions represent actual money movement between customers and the merchant (positive = payment to merchant, negative = refund from merchant). Use this action to: - Fetch payment transaction data for financial reconciliation - Track payment methods used (credit_card, cash, apple_pay, google_pay, etc.) - Filter transactions by date range or order - Monitor POS and online payment processing Note: This endpoint implements cursor-based pagination using links in the response header. Requires 'read_orders' scope." }, { "slug": "SHOPIFY_GET_THEME", "name": "Retrieve a single theme", "description": "Retrieves a single Shopify theme by its unique ID. Use this action when you need to: - Get details about a specific theme (name, role, timestamps, store ID) - Check if a theme is the currently published theme (role='main') - Verify theme processing status before modifying assets - Inspect theme metadata like theme_store_id for identifying Shopify Theme Store themes Note: Requires the 'read_themes' OAuth scope which may need merchant approval." }, { "slug": "SHOPIFY_GET_THEMES", "name": "Get themes", "description": "Retrieves a list of themes from a Shopify store. Use when you need to access theme information including name, role, and metadata." }, { "slug": "SHOPIFY_GET_THEMES_PARAM_THEME_ID_ASSETS", "name": "Get Theme Asset", "description": "Retrieve a single asset for a theme by its key. Use when you need to fetch the content or metadata of a specific theme file such as templates, stylesheets, or scripts." }, { "slug": "SHOPIFY_GET_TRANSACTION", "name": "Retrieve a specific transaction", "description": "Retrieve a specific transaction for an order. Use when you need to get detailed information about a payment transaction. Transactions in multi-currency orders are in presentment currency by default; use in_shop_currency parameter to get shop currency." }, { "slug": "SHOPIFY_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves a single webhook subscription by its ID. Use when you need to get details of a specific webhook configuration." }, { "slug": "SHOPIFY_GET_WEBHOOK_SUBSCRIPTIONS_COUNT", "name": "Get webhook subscriptions count", "description": "Query the number of webhook subscriptions for a shop. Use when you need to know how many webhook subscriptions exist, optionally filtered by query criteria." }, { "slug": "SHOPIFY_GRAPH_QL_ADMIN_EXECUTE", "name": "Shopify GraphQL Admin execute", "description": "Execute any Shopify Admin GraphQL query or mutation with variables. Use this when a workflow needs a GraphQL Admin operation that does not have a dedicated Mercury action yet. It unlocks the GraphQL-only resources called out by Shopify, while still returning a consistent envelope with errors, userErrors, pageInfo, extensions, and raw data." }, { "slug": "SHOPIFY_GRAPH_QL_COLLECTIONS", "name": "Shopify GraphQL collections and publication-ready collection reads", "description": "Shopify GraphQL collections and publication-ready collection reads. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_CUSTOMERS", "name": "Shopify GraphQL customers and customer search", "description": "Shopify GraphQL customers and customer search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_DISCOUNTS", "name": "Shopify GraphQL discounts and discount search", "description": "Shopify GraphQL discounts and discount search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_DRAFT_ORDERS", "name": "Shopify GraphQL draft orders", "description": "Shopify GraphQL draft orders. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_INVENTORY", "name": "Shopify GraphQL inventory items and levels", "description": "Shopify GraphQL inventory items and levels. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_METAFIELDS_METAOBJECTS", "name": "Shopify GraphQL metafields and metaobjects", "description": "Canonical GraphQL read surface for metafields, metafield definitions, and metaobjects." }, { "slug": "SHOPIFY_GRAPH_QL_ORDERS", "name": "Shopify GraphQL orders and order search", "description": "Shopify GraphQL orders and order search. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_PRODUCTS", "name": "Shopify GraphQL products, variants, media, and publishing", "description": "GraphQL-first product toolkit: products, variants, options, media, and publications. This is the canonical agent-facing replacement for legacy REST product, product variant, and product image actions. It exposes Shopify's new product model in one consistent action, preserves cursor pagination metadata, extracts userErrors, and keeps the generic variables escape hatch for newly-added Shopify input fields without requiring a Mercury release." }, { "slug": "SHOPIFY_GRAPH_QL_QUERY", "name": "Execute Shopify GraphQL query", "description": "Executes a GraphQL query against the Shopify Admin API for flexible data retrieval and mutations including metafields. Response data is nested under result['data']['data'], not result['data']. Always inspect both response_data.errors (top-level) and mutation-level userErrors—HTTP 200 can accompany GraphQL validation failures. Query costs draw from a ~1000-point bucket (~50 points/second refill); monitor extensions.cost.throttleStatus to avoid THROTTLED errors. Paginate list queries using pageInfo.hasNextPage and endCursor to avoid silently missing records. productUpdate replaces the entire tags array—send the complete final tag list. refundCreate requires orderId at both the top level and inside each transactions element. transaction parentId must reference a CAPTURE-kind transaction. Numeric fields like numberOfOrders may be returned as strings—cast before aggregating." }, { "slug": "SHOPIFY_GRAPH_QL_SHOP", "name": "Shopify GraphQL shop and app metadata", "description": "GraphQL-first shop, app installation, and configuration read action." }, { "slug": "SHOPIFY_GRAPH_QL_WEBHOOKS", "name": "Shopify GraphQL webhook subscriptions", "description": "Shopify GraphQL webhook subscriptions. The response always includes raw GraphQL data, extracted userErrors, pageInfo, and cost extensions." }, { "slug": "SHOPIFY_GRAPH_QL_WRITE_OPERATIONS", "name": "Shopify GraphQL write operations", "description": "Canonical GraphQL write surface for Shopify orders, customers, inventory, discounts, collections, webhooks, fulfillments, metafields, and bulk operations." }, { "slug": "SHOPIFY_LIST_ABANDONED_CHECKOUTS", "name": "List abandoned checkouts", "description": "Retrieves a list of abandoned checkouts with customer contact information. An abandoned checkout occurs when a customer adds contact information but doesn't complete the purchase. Use this to recover abandoned carts, send recovery emails, or analyze checkout abandonment patterns. Note: This endpoint requires 'Protected Customer Data' access in your Shopify app settings. Without this permission, the endpoint returns a 403 error (gracefully handled by returning an empty list). The REST Checkout API is deprecated as of 2024-07; consider GraphQL Admin API for new implementations." }, { "slug": "SHOPIFY_LIST_APPLICATION_CREDITS", "name": "Retrieves all application credits (Deprecated)", "description": "Retrieve all application credits issued to a shop by your app. Use when you need to view credits that can be applied towards future app purchases." }, { "slug": "SHOPIFY_LIST_ARTICLE_AUTHORS", "name": "List article authors", "description": "Retrieve a list of all article authors from the store. Use when you need to get all unique author names who have created articles across all blogs." }, { "slug": "SHOPIFY_LIST_ARTICLE_TAGS", "name": "List article tags", "description": "Retrieve a list of all article tags from the store. Use when you need to get all unique tags that have been applied to articles, optionally sorted by popularity." }, { "slug": "SHOPIFY_LIST_AVAILABLE_LOCALES", "name": "List available locales", "description": "Query available locales for the Shopify store using the Admin GraphQL API. Use when you need to retrieve the list of supported language/region combinations." }, { "slug": "SHOPIFY_LIST_BLOG_ARTICLES", "name": "Retrieve list of articles from blog", "description": "Retrieves a list of all articles from a blog. Use when you need to access articles from a specific blog, with optional filtering by author, dates, or publication status. Pagination is implemented via response header links as of version 2019-10." }, { "slug": "SHOPIFY_LIST_BLOGS", "name": "Retrieve a list of all blogs", "description": "Retrieve a list of all blogs from a Shopify store. Use when you need to get blog information, list available blogs, or paginate through blogs using since_id." }, { "slug": "SHOPIFY_LIST_BULK_OPERATIONS", "name": "List bulk operations", "description": "Retrieve a paginated list of bulk operations from Shopify. Use when you need to view the history of bulk operations, check their statuses, or retrieve result URLs for completed operations. Supports filtering by status, creation date, and operation type." }, { "slug": "SHOPIFY_LIST_CHANNELS", "name": "List channels", "description": "Retrieves a list of sales channels available in the Shopify store using GraphQL. Use when you need to fetch channel information including Online Store, Point of Sale, and other active sales channels. Supports cursor-based pagination for large result sets." }, { "slug": "SHOPIFY_LIST_CHECKOUT_PROFILES", "name": "List checkout profiles", "description": "Query checkout profiles from Shopify. Use when you need to retrieve checkout profile configurations including branding settings and UI extensions. Supports pagination and filtering by publication status." }, { "slug": "SHOPIFY_LIST_COLLECTION_PRODUCTS", "name": "Retrieve products in collection", "description": "Retrieve a list of products belonging to a collection. Use when you need to fetch products from a specific Shopify collection. Implements cursor-based pagination via Link headers (as of version 2019-10)." }, { "slug": "SHOPIFY_LIST_COLLECTS", "name": "Retrieve list of collects (Deprecated)", "description": "Retrieve a list of collects (product-collection associations). Use when you need to find which products belong to which custom collections." }, { "slug": "SHOPIFY_LIST_COMMENTS", "name": "Retrieve a list of comments", "description": "Retrieve a list of comments from Shopify. Use when you need to get comments with optional filtering by dates, status, or pagination." }, { "slug": "SHOPIFY_LIST_COUNTRIES", "name": "Receive a list of all countries (Deprecated)", "description": "Retrieve a list of all countries where the merchant sells products with tax rates. Use when you need to access country-level tax configuration and regional settings. Note: This endpoint is deprecated as of API version 2024-07." }, { "slug": "SHOPIFY_LIST_CURRENCIES", "name": "Retrieves a list of currencies enabled on a shop (Deprecated)", "description": "Retrieves a list of currencies enabled on a Shopify store. This action fetches all currencies that the merchant has enabled for multi-currency transactions through Shopify Payments. Each currency includes its ISO 4217 code, the timestamp when its conversion rate was last updated, and its enabled status. Use this when you need to: - Check which currencies are available for customer transactions - Verify currency configurations for the shop - Get conversion rate update timestamps - Determine multi-currency support capabilities Note: This is a read-only endpoint that requires no parameters and returns all enabled currencies for the authenticated shop." }, { "slug": "SHOPIFY_LIST_CUSTOM_COLLECTIONS", "name": "Retrieve custom collections (Deprecated)", "description": "Retrieve a list of custom collections from Shopify. Use when you need to query collections with filtering options like handle, title, publication status, or date ranges." }, { "slug": "SHOPIFY_LIST_CUSTOMER_ORDERS", "name": "Get customer orders (Deprecated)", "description": "Retrieves all orders for a specific customer from Shopify. Returns order details including line items, fulfillment status, payment information, shipping address, and more. Use this when you need to view a customer's order history or analyze their purchase patterns. Requires the customer's unique ID." }, { "slug": "SHOPIFY_LIST_CUSTOMERS", "name": "Retrieves a list of customers", "description": "Retrieve a list of customers from a Shopify store. Use when you need to fetch customer data with optional filtering by IDs, creation dates, update dates, or account status. Supports pagination using cursor-based navigation via page_info parameter." }, { "slug": "SHOPIFY_LIST_DRAFT_ORDERS", "name": "Retrieve list of draft orders", "description": "Retrieve a list of draft orders from Shopify. Use when you need to fetch draft orders with optional filtering by status, IDs, or update dates. Supports pagination via since_id and limit parameters. Note: As of version 2019-10, this endpoint implements pagination by using links provided in the response header." }, { "slug": "SHOPIFY_LIST_INVENTORY_LEVELS", "name": "Retrieves a List of Inventory Levels (Deprecated)", "description": "Retrieves a list of inventory levels for specified items and locations. Use when you need to check inventory quantities at specific locations. At least one of inventory_item_ids or location_ids must be provided as a filter parameter." }, { "slug": "SHOPIFY_LIST_LOCATIONS", "name": "List locations", "description": "Retrieve a list of locations for a Shopify store. Use when you need to get physical or virtual places where inventory is stocked and orders are fulfilled." }, { "slug": "SHOPIFY_LIST_MARKETING_EVENTS", "name": "Retrieve all marketing events", "description": "Retrieves a paginated list of marketing events from a Shopify store. Marketing events represent marketing activities such as ads, posts, newsletters, retargeting campaigns, abandoned cart emails, loyalty programs, and affiliate campaigns. Returns up to 250 events per request (default 50). The endpoint uses cursor-based pagination via Link headers in the API response - check the 'Link' header for URLs to navigate to next/previous pages. The deprecated 'offset' parameter is not supported. Each event includes metadata like event type, marketing channel, UTM parameters, budget information, timestamps, and associated resources. Useful for tracking marketing campaign performance and attribution." }, { "slug": "SHOPIFY_LIST_ORDER", "name": "List orders (Deprecated)", "description": "Retrieves a list of orders from Shopify with optional filtering by status, dates, and other criteria. Use when you need to fetch multiple orders with pagination and filtering support." }, { "slug": "SHOPIFY_LIST_ORDER_REFUNDS", "name": "Retrieve refunds for order (Deprecated)", "description": "Retrieve a list of refunds for a Shopify order. Use when you need to check refund history for a specific order." }, { "slug": "SHOPIFY_LIST_ORDERS", "name": "Retrieves a list of orders (Deprecated)", "description": "Retrieves a list of orders from Shopify. Use when you need to fetch multiple orders with optional filtering by status, financial status, fulfillment status, or date ranges." }, { "slug": "SHOPIFY_LIST_PAGES", "name": "Retrieve list of pages", "description": "Retrieve a list of all pages from a Shopify store. Use when you need to fetch page content or metadata. As of version 2019-10, this endpoint implements pagination via response header links." }, { "slug": "SHOPIFY_LIST_PAYMENT_TERMS_TEMPLATES", "name": "List Payment Terms Templates", "description": "Query payment terms templates from Shopify using the GraphQL API. Use when you need to retrieve available payment terms templates, optionally filtered by payment terms type." }, { "slug": "SHOPIFY_LIST_PRODUCT_IMAGES", "name": "Receive A List Of All Product Images", "description": "Retrieve all images for a Shopify product. Use when you need to get the complete list of images associated with a specific product." }, { "slug": "SHOPIFY_LIST_PRODUCT_VARIANTS", "name": "Get product variants", "description": "Retrieve all variants for a specified product. Use when you need to list product variants with optional filtering by fields or pagination. Note: As of API version 2019-10, pagination is implemented via Link headers in the response." }, { "slug": "SHOPIFY_LIST_RESOURCE_FEEDBACKS", "name": "Get resource feedback", "description": "Retrieves the current resource feedback for the shop. Resource feedback is how your app communicates its setup/configuration status to merchants via the Shopify admin. Use this to check what feedback your app has previously submitted (e.g., whether you told merchants that action is required or that setup is successful). Returns empty array if no feedback exists, or a single feedback object representing the most recent status your app reported to Shopify." }, { "slug": "SHOPIFY_LIST_SCRIPT_TAGS", "name": "Retrieve all script tags", "description": "Retrieves a list of all script tags. Use when you need to fetch all script tags or filter by URL, date range, or other criteria. Supports pagination via response headers (link-based pagination as of API version 2019-10)." }, { "slug": "SHOPIFY_LIST_THEME_ASSETS", "name": "List Theme Assets (Deprecated)", "description": "Retrieves metadata for theme assets (files that make up a theme: templates, images, stylesheets, snippets). Returns metadata only—not file content. To get actual file content, you must retrieve assets individually using a separate action. Use the asset_key parameter to retrieve a single asset, or omit it to list all assets in the theme." }, { "slug": "SHOPIFY_LIST_TRANSACTIONS", "name": "Retrieve order transactions", "description": "Retrieves all transactions for a specific order. Use when you need to view payment exchanges for an order. Transactions include authorization, sale, capture, void, and refund types." }, { "slug": "SHOPIFY_MARK_COMMENT_AS_NOT_SPAM", "name": "Mark Comment as Not Spam", "description": "Marks a comment as not spam in Shopify, restoring it to published or unapproved state. Use this to remove the spam designation from a comment that was incorrectly flagged. The comment status will change from 'spam' to either 'published' (if it was previously approved) or 'unapproved' (if it needs review)." }, { "slug": "SHOPIFY_MARK_COMMENT_AS_SPAM", "name": "Mark Comment as Spam", "description": "Mark a comment as spam in Shopify. Use when you need to flag a comment as spam and remove it from visibility. When marked as spam, the comment status changes to 'spam', published_at is set to null, and it becomes invisible to blog readers." }, { "slug": "SHOPIFY_MODIFY_AN_EXISTING_PRODUCT_VARIANT", "name": "Modify an existing product variant", "description": "Update an existing product variant in Shopify. Use when you need to modify variant properties like price, SKU, weight, or inventory settings." }, { "slug": "SHOPIFY_MODIFY_EXISTING_WEBHOOK", "name": "Modify existing webhook (Deprecated)", "description": "Modify an existing webhook subscription's address or other properties. Use when you need to update webhook delivery URIs, data formats, or field filters. Note: the webhook topic cannot be changed after creation." }, { "slug": "SHOPIFY_MOVE_FULFILLMENT_ORDER", "name": "Move Fulfillment Order to New Location", "description": "Move a fulfillment order from one merchant managed location to another. Use when you need to relocate unfulfilled items to a different location. The operation will fail if the fulfillment order is closed or if the destination location has never stocked the requested inventory item." }, { "slug": "SHOPIFY_PIN_METAFIELD_DEFINITION", "name": "Pin metafield definition", "description": "Pin a metafield definition in Shopify admin. Use when you need to organize metafields by pinning them to control their display order and visibility. Pinned metafields are automatically displayed in the admin interface." }, { "slug": "SHOPIFY_QUERY_APP_BY_KEY", "name": "Query app by API key", "description": "Query app information by API key using Shopify's GraphQL Admin API. Use when you need to retrieve metadata about a Shopify app using its client ID. Returns null if no app is found with the provided API key." }, { "slug": "SHOPIFY_QUERY_BUSINESS_ENTITIES", "name": "Query business entities", "description": "Retrieve all business entities associated with the shop. Use when you need to view business entities for assigning to markets, managing payment providers per entity, or checking order attribution." }, { "slug": "SHOPIFY_QUERY_BUSINESS_ENTITY", "name": "Query business entity", "description": "Query business entity information from Shopify. Use when you need to retrieve business entity details such as company name, address, and payment account information. If no ID is provided, returns the primary business entity." }, { "slug": "SHOPIFY_QUERY_CATALOGS", "name": "Query catalogs", "description": "Queries catalogs from Shopify using the GraphQL Admin API. Catalogs control which products are published and how they're priced in different contexts such as international markets, B2B company locations, or specific sales channels." }, { "slug": "SHOPIFY_QUERY_CHANNEL", "name": "Query channel by ID", "description": "Query a single Shopify channel by ID. Use when you need to retrieve detailed information about a specific sales channel including its associated app, name, handle, and publishing capabilities." }, { "slug": "SHOPIFY_QUERY_CONSENT_POLICY_REGIONS", "name": "Query consent policy regions", "description": "Query the list of countries and regions for which consent policies can be created in Shopify. Use when you need to retrieve all available consent policy regions for compliance purposes." }, { "slug": "SHOPIFY_QUERY_CURRENT_APP_INSTALLATION", "name": "Query current app installation", "description": "Query the currently authenticated app installation on a Shopify store. Use when you need to retrieve details about the current app's installation including access scopes, active subscriptions, launch URL, and uninstall URL." }, { "slug": "SHOPIFY_QUERY_CURRENT_BULK_OPERATION", "name": "Query current Shopify bulk operation", "description": "Query the current Shopify bulk operation status. Use when you need to check if a bulk operation is running or to retrieve the status and results of the most recent bulk query or mutation operation." }, { "slug": "SHOPIFY_QUERY_CUSTOMER_ACCOUNT_PAGES", "name": "Query customer account pages", "description": "Queries customer account pages from Shopify using the GraphQL Admin API. Use when you need to retrieve customizable pages for customer accounts." }, { "slug": "SHOPIFY_QUERY_DELETION_EVENTS", "name": "Query deletion events", "description": "Query deletion events from Shopify. Use when you need to retrieve records of deleted resources such as products or collections. Deletion events are the only trace of a resource after it has been permanently removed." }, { "slug": "SHOPIFY_QUERY_DISPUTES", "name": "Query disputes", "description": "Query Shopify Payments disputes using the GraphQL Admin API. Use when you need to retrieve information about payment disputes, including their status and initiation date. Supports pagination and filtering by status or ID." }, { "slug": "SHOPIFY_QUERY_DOMAIN", "name": "Query domain", "description": "Query a specific domain by its ID from Shopify. Use when you need to retrieve domain details including host, URL, SSL status, and localization settings." }, { "slug": "SHOPIFY_QUERY_EVENTS", "name": "Query events", "description": "Query events from Shopify using the GraphQL Admin API. Events track actions performed on store resources like products, orders, collections, customers, and more. Use this to retrieve activity history, audit changes, monitor recent actions, or build activity feeds. Returns detailed information about each event including the action type, affected resource, timestamp, and description." }, { "slug": "SHOPIFY_QUERY_EVENTS_COUNT", "name": "Query events count", "description": "Query the count of events in Shopify using the GraphQL Admin API. Use when you need to get the total number of events with optional filtering by date, subject type, or other criteria. Returns both the count and precision indicator." }, { "slug": "SHOPIFY_QUERY_JOB", "name": "Query job", "description": "Query a single job by its ID using Shopify's GraphQL API. Use when you need to check the status of an asynchronous job. Jobs track long-running operations like bulk operations, mutations, or imports." }, { "slug": "SHOPIFY_QUERY_METAFIELD_DEFINITION", "name": "Query metafield definition by ID", "description": "Query metafield definition details by ID using Shopify's GraphQL Admin API. Use when you need to retrieve metadata about a metafield definition including its type, namespace, key, and usage count. Returns null if no metafield definition is found with the provided ID." }, { "slug": "SHOPIFY_QUERY_METAFIELD_DEFINITIONS", "name": "Query metafield definitions", "description": "Query metafield definitions from Shopify using the GraphQL Admin API. Use this to retrieve the schema and configuration of metafields for a specific resource type (PRODUCT, COLLECTION, CUSTOMER, etc.). Returns detailed information about each metafield definition including name, namespace, key, type, and validation rules." }, { "slug": "SHOPIFY_QUERY_METAFIELD_DEFINITION_TYPES", "name": "Query metafield definition types", "description": "Queries all available metafield definition types from Shopify using the GraphQL Admin API. Returns comprehensive information about each type including its category, supported validations, and migration capabilities. Use this to discover what metafield types can be created and what validation rules are available for each type." }, { "slug": "SHOPIFY_QUERY_NODE", "name": "Query node by ID", "description": "Query any Shopify resource by its global ID using the node query. Use when you have a GID and need to retrieve the basic resource information." }, { "slug": "SHOPIFY_QUERY_NODES", "name": "Query nodes by IDs", "description": "Query nodes by their IDs from the Shopify GraphQL Admin API. Use when you need to retrieve multiple Shopify objects by their global IDs (GIDs). Returns node objects with at least an id field, or null for non-existent nodes." }, { "slug": "SHOPIFY_QUERY_ONLINE_STORE", "name": "Query online store", "description": "Query online store settings from Shopify using the GraphQL Admin API. Returns configuration information including password protection status. Use this to check if the online store is password protected or to retrieve other store-level settings." }, { "slug": "SHOPIFY_QUERY_PRODUCT_DUPLICATE_JOB", "name": "Query product duplicate job", "description": "Query a product duplicate job by its ID using Shopify's GraphQL API. Use when you need to check the status of a product duplication operation." }, { "slug": "SHOPIFY_QUERY_PUBLIC_API_VERSIONS", "name": "Query public API versions", "description": "Query available public API versions from Shopify using the GraphQL Admin API. Returns a list of all API versions with their support status. Use this to check which API versions are currently supported before making version-specific API calls." }, { "slug": "SHOPIFY_QUERY_PUBLICATION", "name": "Query publication by ID", "description": "Query a single publication by ID using Shopify's GraphQL Admin API. Use when you need to retrieve detailed information about a specific publication including its name, auto-publish settings, future publishing support, and associated catalog." }, { "slug": "SHOPIFY_QUERY_SERVER_PIXEL", "name": "Query server pixel configuration", "description": "Query the server pixel configuration in Shopify. Use when you need to retrieve the current server pixel settings including its ID, status, and webhook endpoint address." }, { "slug": "SHOPIFY_QUERY_SHOP", "name": "Query Shop (GraphQL)", "description": "Retrieve shop information using the Shopify GraphQL Admin API. Use when you need shop-level configuration such as name, email, domain, currency settings, enabled features, and policies." }, { "slug": "SHOPIFY_QUERY_SHOP_BILLING_PREFERENCES", "name": "Query shop billing preferences", "description": "Query the shop's billing preferences from Shopify using the GraphQL Admin API. Use when you need to retrieve the currency used for billing apps and services." }, { "slug": "SHOPIFY_QUERY_SHOPIFY_FUNCTIONS", "name": "Query Shopify Functions", "description": "Query Shopify Functions owned by the API client installed on the shop. Use when you need to retrieve functions that customize Shopify's backend logic such as discounts, checkout validation, and fulfillment." }, { "slug": "SHOPIFY_QUERY_SHOP_PAY_PAYMENT_REQUEST_RECEIPTS", "name": "Query Shop Pay payment request receipts", "description": "Query Shop Pay payment request receipts from Shopify using the GraphQL Admin API. Use when you need to retrieve and list Shop Pay payment request receipts. Note: This query requires API version 2026-01 or later." }, { "slug": "SHOPIFY_QUERY_STANDARD_METAFIELD_DEFINITION_TEMPLATES", "name": "Query standard metafield templates", "description": "Query standard metafield definition templates from Shopify using the GraphQL Admin API. Returns preset metafield configurations with reserved namespace-key combinations for common use cases like product subtitles, care guides, or ISBN numbers." }, { "slug": "SHOPIFY_QUERY_TAXONOMY", "name": "Query taxonomy", "description": "Query Shopify's product taxonomy using the GraphQL Admin API. Use when you need to explore product categories, discover the taxonomy hierarchy, or find appropriate categories for products. Returns taxonomy categories that can be filtered by search terms or hierarchy relationships." }, { "slug": "SHOPIFY_QUERY_WEBHOOK_SUBSCRIPTION", "name": "Query webhook subscription by ID", "description": "Retrieve webhook subscription details by ID using the Shopify GraphQL Admin API. Use when you need to inspect webhook configuration, endpoint details, or subscription metadata." }, { "slug": "SHOPIFY_QUERY_WEBHOOK_SUBSCRIPTIONS", "name": "Query webhook subscriptions", "description": "Query webhook subscriptions from Shopify using the GraphQL Admin API. Returns a paginated list of webhook subscriptions with their topics, endpoints (HTTP or PubSub), and formats. Use this to view all configured webhook subscriptions for your Shopify store." }, { "slug": "SHOPIFY_RECEIVE_A_COUNT_OF_ALL_PRODUCT_IMAGES", "name": "Get product images count (Deprecated)", "description": "Retrieves the total count of images for a Shopify product. Use when you need to know how many images are associated with a specific product." }, { "slug": "SHOPIFY_RECEIVE_A_SINGLE_FULFILLMENT", "name": "Receive a single fulfillment", "description": "Retrieve detailed information about a specific fulfillment for an order. Use when you need to check the status, tracking details, or line items of a fulfillment." }, { "slug": "SHOPIFY_RECEIVE_A_SINGLE_WEBHOOK", "name": "Receive a single webhook (Deprecated)", "description": "Retrieves detailed information about a specific webhook subscription by its ID. Use this tool when you need to: - View configuration details of an existing webhook (address, topic, format) - Check webhook metadata (API version, metafield namespaces, creation/update timestamps) - Verify a webhook exists before performing operations on it - Inspect which fields are being sent in webhook payloads Returns complete webhook subscription details including delivery destination, event topic, data format (JSON/XML), and any field or metafield filtering configurations." }, { "slug": "SHOPIFY_RELEASE_FULFILLMENT_HOLD", "name": "Release fulfillment hold", "description": "Releases the fulfillment hold on a fulfillment order, allowing fulfillment work to proceed. Use when you need to resume fulfillment on an order that was previously placed on hold. The fulfillment order status will change from on_hold to open, and the fulfillment_holds array will be emptied." }, { "slug": "SHOPIFY_RELEASE_FULFILLMENT_ORDER_HOLD", "name": "Release fulfillment order hold (Deprecated)", "description": "Release all fulfillment holds on a fulfillment order. Use when you need to resume fulfillment work after holds have been resolved." }, { "slug": "SHOPIFY_REOPEN_CLOSED_ORDER", "name": "Reopen a closed order", "description": "Reopens a previously closed Shopify order. Use when an order needs to be modified after being closed." }, { "slug": "SHOPIFY_RESTORE_COMMENT", "name": "Restore Comment", "description": "Restores a previously removed comment, changing its status back to 'published'. Use when you need to reactivate a comment that was removed. Note: This action requires protected customer data access approval because comments contain customer information (author, email, IP). The app must be approved to access REST endpoints with protected customer data." }, { "slug": "SHOPIFY_RETRIEVE_A_SPECIFIC_METAFIELD", "name": "Retrieve a specific metafield (Deprecated)", "description": "Retrieve a metafield by specifying the ID. Use when you need to fetch a specific metafield from any Shopify resource (products, customers, orders, etc.)." }, { "slug": "SHOPIFY_RETRIEVE_LIST_METAFIELDS_RESOURCE_S_ENDPOINT", "name": "Get resource metafields", "description": "Retrieve metafields attached to any Shopify resource by using the resource's endpoint. Use when you need to fetch metafields for a specific resource instance (products, customers, orders, collections, etc.)." }, { "slug": "SHOPIFY_RETRIEVES_A_LIST_OF_ABANDONED_CHECKOUTS", "name": "Retrieve abandoned checkouts (Deprecated)", "description": "Retrieves a list of abandoned checkouts from Shopify. Use this when you need to access abandoned checkout data for recovery campaigns, remarketing, or analytics. An abandoned checkout occurs when a customer adds contact information but doesn't complete their purchase. IMPORTANT: This endpoint requires 'Protected Customer Data' access approval from Shopify, which must be requested through the Partner Dashboard. Without this approval, requests will return a 403 Forbidden error. Note: The REST Checkout API is deprecated as of API version 2024-07. Consider migrating to the GraphQL Admin API for new implementations. Pagination is implemented via links in the response header." }, { "slug": "SHOPIFY_RETRIEVES_A_LIST_OF_ALL_ARTICLE_TAGS", "name": "Retrieves a list of all article tags (Deprecated)", "description": "Retrieves all article tags used across all blogs in the Shopify shop. Use this to: - Discover available tags for filtering or categorizing blog content - Identify popular tags to understand trending topics - Build tag clouds or navigation elements for blog sections - Analyze content organization across your blogs Optional: Use 'limit' to retrieve a subset, or 'popular=1' to get the most frequently used tags first." }, { "slug": "SHOPIFY_RETRIEVES_A_LIST_OF_PRICE_RULES", "name": "Get Price Rules List", "description": "Retrieve a list of price rules from a Shopify store. Use when you need to view all discount pricing rules with optional filtering by date ranges and usage. Note: As of version 2019-10, pagination is implemented via Link headers in the response." }, { "slug": "SHOPIFY_RETRIEVES_A_LIST_OF_PRODUCTS", "name": "Retrieve a list of products (Deprecated)", "description": "Retrieve a list of products from Shopify. Use when you need to fetch products with filtering options like status, vendor, product type, or date ranges. Supports pagination with limit and since_id parameters." }, { "slug": "SHOPIFY_RETRIEVES_A_LIST_OF_WEBHOOKS", "name": "Retrieves a list of webhooks (Deprecated)", "description": "Retrieve a list of webhook subscriptions for a Shopify shop. Use when you need to view all configured webhook subscriptions or filter webhooks by specific criteria such as topic, address, or creation date." }, { "slug": "SHOPIFY_RETRIEVES_AN_ORDER_COUNT", "name": "Retrieves an order count (Deprecated)", "description": "Retrieves the count of orders matching specified filters. Use when you need to know how many orders exist with specific criteria (status, dates, financial status, etc.)." }, { "slug": "SHOPIFY_RETRIEVES_A_SINGLE_LOCATION_BY_ITS_ID", "name": "Retrieve a single location by its ID (Deprecated)", "description": "Retrieves detailed information about a specific Shopify location by its ID. A location represents a physical or virtual place where a shop's products are stocked, and from which orders can be fulfilled. This includes retail stores, warehouses, pop-up shops, and dropshipping locations. Use this action when you need to: - Get complete details about a specific location (address, contact info, status) - Verify if a location is active and can fulfill orders - Check location attributes before inventory or fulfillment operations - Display location information to users Requires the 'read_locations' OAuth scope." }, { "slug": "SHOPIFY_RETRIEVES_A_SINGLE_ORDER_RISK_BY_ITS_ID", "name": "Get order risk by ID", "description": "Retrieves a single order risk assessment by its unique ID. Use this action when you need details about a specific risk assessment (e.g., to check its recommendation, score, or message). If you need all risk assessments for an order, use the \"Get order risks\" action instead. **Important:** This REST API endpoint is deprecated as of API version 2025-10. For new implementations, use the GraphQL OrderRiskAssessment API. See: https://shopify.dev/docs/api/admin-graphql/latest/objects/OrderRiskAssessment **Access requirements:** Requires read_orders scope with merchant approval for protected customer data." }, { "slug": "SHOPIFY_RETRIEVES_A_SINGLE_PRICE_RULE", "name": "Retrieve Single Price Rule (Deprecated)", "description": "Retrieves a single price rule by its unique identifier. Use when you need to get detailed information about a specific discount rule including its value, target type, customer selection, prerequisites, and entitlements." }, { "slug": "SHOPIFY_RETRIEVES_A_SINGLE_PRODUCT", "name": "Retrieve a single product (Deprecated)", "description": "Retrieves a single product by its unique product ID. Use when you need to get detailed information about a specific product including its variants, images, and options." }, { "slug": "SHOPIFY_RETRIEVES_A_SPECIFIC_FULFILLMENT_EVENT", "name": "Retrieve Specific Fulfillment Event (Deprecated)", "description": "Retrieves a specific fulfillment event by its ID. **DEPRECATED**: This endpoint is deprecated as of Shopify REST Admin API 2024-10. Consider using the list fulfillment events endpoint instead to retrieve all events and filter by ID. Use this tool when you need detailed tracking information for a specific fulfillment event, including delivery status, location data (address, city, country, coordinates), timestamps, and carrier messages. Fulfillment events track the shipment progress and are displayed on customer order status pages. Note: Requires valid order_id, fulfillment_id, and event_id. All three IDs must correspond to existing resources in the store." }, { "slug": "SHOPIFY_RETRIEVES_LIST_ALL_ARTICLE_TAGS_SPECIFIC_BLOG", "name": "List article tags from blog (Deprecated)", "description": "Retrieve a list of all article tags from a specific blog. Use when you need to get all unique tags that have been applied to articles within a particular blog, optionally sorted by popularity." }, { "slug": "SHOPIFY_RETRIEVES_LIST_DISCOUNT_CODES_DISCOUNT_CODE", "name": "Retrieve Discount Codes for Batch Job (Deprecated)", "description": "Retrieve a list of discount codes for a discount code creation job. Use when you need to check the status of a batch discount code creation job and see which codes were successfully created and which encountered errors." }, { "slug": "SHOPIFY_RETRIEVES_LIST_STOREFRONT_ACCESS_TOKENS_THAT_HAVE", "name": "Retrieve storefront access tokens (Deprecated)", "description": "Retrieves a list of storefront access tokens that have been issued for the shop. Use when you need to view all active storefront access tokens and their associated permissions. The app must have at least one unauthenticated access scope to use this endpoint." }, { "slug": "SHOPIFY_RETRIEVE_SPECIFIC_FULFILLMENT_ORDER", "name": "Retrieve specific fulfillment order", "description": "Retrieve a specific fulfillment order by its ID. Use when you need detailed information about a particular fulfillment order including line items, destination, and status." }, { "slug": "SHOPIFY_RETRIEVES_THE_SHOP_S_CONFIGURATION", "name": "Retrieve Shop Configuration (Deprecated)", "description": "Retrieve the shop's configuration and general business settings. Use when you need to access shop information such as name, domain, timezone, currency, contact details, or plan information." }, { "slug": "SHOPIFY_REVOKE_APP_ACCESS_SCOPES", "name": "Revoke app access scopes", "description": "Revoke previously granted access scopes from an app installation. Use when you need to reduce an app's permissions without completely uninstalling it, providing granular control over what data and functionality the app can access." }, { "slug": "SHOPIFY_RUN_BULK_MUTATION_OPERATION", "name": "Run bulk mutation operation", "description": "Create and run a bulk operation to import data asynchronously by executing a GraphQL mutation multiple times. Use when you need to perform bulk mutations like creating/updating many products, variants, or other resources from a JSONL file. Each line in your JSONL file is processed as a separate mutation execution. Results are delivered in a JSONL file when complete. Note: Only one bulk mutation operation can run at a time per shop (though bulkOperationRunQuery can run simultaneously)." }, { "slug": "SHOPIFY_RUN_BULK_OPERATION_QUERY", "name": "Run Shopify bulk operation query", "description": "Create and start a Shopify GraphQL bulk operation for asynchronous data fetching. Use when you need to retrieve large datasets from Shopify without pagination. The operation runs in the background and results are available in a JSONL file for up to seven days after completion. Only one bulk query operation can run at a time per shop. Query must include at least one connection field." }, { "slug": "SHOPIFY_SEARCHES_FOR_GIFT_CARDS", "name": "Search Gift Cards", "description": "Search for gift cards that match a supplied query. Use when searching for gift cards by various indexed fields including created_at, updated_at, disabled_at, balance, initial_value, amount_spent, email, and last_characters. Supports cursor-based pagination via Link headers." }, { "slug": "SHOPIFY_SEND_CUSTOMER_ACCOUNT_INVITE", "name": "Send Account Invite to Customer (Deprecated)", "description": "Sends an account activation invite email to an existing customer, allowing them to set up their online store account. Use this action to: - Send account activation emails to newly created customers who haven't activated their accounts yet - Resend activation invites to customers who didn't receive or lost the original email - Send custom invitation emails with personalized subject lines and messages The customer must not already have an active account. If the customer has already activated their account, this action will fail with a 422 error." }, { "slug": "SHOPIFY_SEND_CUSTOMER_INVITE", "name": "Send Customer Account Invite", "description": "Sends an account invitation email to a customer, allowing them to create or activate their Shopify account. The invitation includes a link for the customer to set up their account credentials. This action is useful when you want customers to have direct access to their order history and account details. You can customize the invitation with a personalized message and subject line, or use the store's default invitation template. Note: Requires the 'write_customers' scope. The customer must not already have an active account to receive an invitation." }, { "slug": "SHOPIFY_SEND_INVOICE", "name": "Send an invoice", "description": "Send an invoice email for a draft order to a customer. Use when you need to email an invoice to a customer for a specific draft order." }, { "slug": "SHOPIFY_SET_DEFAULT_CUSTOMER_ADDRESS", "name": "Set Default Customer Address", "description": "Set a specific address as the default address for a customer. Use when you need to mark an address as default for tax and shipping calculations. The default address cannot be deleted." }, { "slug": "SHOPIFY_SET_FULFILLMENT_ORDERS_DEADLINE", "name": "Set Fulfillment Orders Deadline", "description": "Set the latest fulfillment deadline for multiple fulfillment orders. Use when you need to update deadline for one or more fulfillment orders." }, { "slug": "SHOPIFY_SET_INVENTORY_LEVEL", "name": "Set inventory level", "description": "Set inventory level for an item at a location. Use when you need to establish or update inventory quantity for a specific item at a designated location. If the location isn't already connected, the connection occurs automatically. The inventory item must have inventory tracking enabled before setting inventory levels." }, { "slug": "SHOPIFY_SET_METAFIELDS", "name": "Set metafields", "description": "Create or update multiple metafields in a single operation using the metafieldsSet GraphQL mutation. Use when you need to set custom metadata on Shopify resources like shops, products, customers, or orders. Supports up to 25 metafields per request." }, { "slug": "SHOPIFY_TRIGGER_SHOPIFY_FLOW", "name": "Trigger Shopify Flow", "description": "Trigger Shopify Flow workflows that begin with the specified trigger handle. Use when you need to manually activate Flow automation workflows from your app. The payload must be under 50 KB and match the trigger's expected schema. To learn more, refer to Create Shopify Flow triggers documentation." }, { "slug": "SHOPIFY_UPDATE_APP_SUBSCRIPTION_LINE_ITEM", "name": "Update app subscription line item capped amount", "description": "Update the capped amount on usage-based billing for an app subscription line item. Use when adjusting usage limits based on merchant needs or changing pricing models. The mutation returns a confirmation URL where the merchant must approve the new pricing limit before it takes effect. Learn more at https://shopify.dev/docs/apps/launch/billing/subscription-billing/update-max-charge." }, { "slug": "SHOPIFY_UPDATE_ARTICLE", "name": "Update Article", "description": "Update an existing article in a Shopify blog. Use when you need to modify article properties such as title, content, tags, or publication status." }, { "slug": "SHOPIFY_UPDATE_BLOG", "name": "Modify an existing blog", "description": "Updates an existing blog's configuration in your Shopify store. Use this to change the blog title, URL handle, comment moderation settings, custom templates, or attach metadata. Common use cases: rebranding blogs, enabling/disabling comments, switching to custom themes, or fixing SEO-friendly handles. Requires the blog_id and at least one field to update. WARNING: Changing the handle affects URLs and SEO - consider redirects when modifying established blogs." }, { "slug": "SHOPIFY_UPDATE_COMMENT", "name": "Update Comment", "description": "Update an existing comment on a blog article in Shopify. Use when you need to modify comment properties such as body text, author, or publication date. Note: This endpoint requires 'protected customer data' access because comments contain customer information (author name, email, IP address). Ensure the app has proper permissions before using this action." }, { "slug": "SHOPIFY_UPDATE_COUNTRIES_PARAM_COUNTRY_ID", "name": "Update Country (Deprecated)", "description": "DEPRECATED: Updates an existing country's tax configuration in Shopify. This endpoint is deprecated as of API version 2024-07 and may return 403 Forbidden errors. The tax field has been read-only since API version 2020-10. Shopify recommends migrating to the GraphQL Admin API's Countries in shipping zone API instead. This action should not be used for new implementations." }, { "slug": "SHOPIFY_UPDATE_COUNTRIES_PARAM_COUNTRY_ID_PROVINCES_PARAM_PR", "name": "Update Province Tax Information", "description": "Update Province Tax Information" }, { "slug": "SHOPIFY_UPDATE_COUNTRY", "name": "Update Country", "description": "Update an existing country's tax configuration in Shopify. Use when you need to modify tax settings for a country. Note: This action is DEPRECATED as of 2024-07, and custom tax values cannot be created or updated as of 2020-10." }, { "slug": "SHOPIFY_UPDATE_CUSTOM_COLLECTION", "name": "Update custom collection", "description": "Update an existing custom collection in Shopify. Use when you need to modify properties of a custom collection such as title, description, publication status, or sorting order." }, { "slug": "SHOPIFY_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Update an existing customer in Shopify. Use when you need to modify customer details such as name, email, phone, tags, addresses, or marketing consent preferences." }, { "slug": "SHOPIFY_UPDATE_CUSTOMER_ADDRESS", "name": "Update Customer Address", "description": "Updates an existing address for a Shopify customer. This action allows you to modify address details such as street address, city, province, country, postal code, and contact information. At least one address field must be provided to update. Requires Protected Customer Data access approval and write_customers scope. Common use cases: - Correct shipping address errors for customers - Update customer contact information - Change billing addresses for customer accounts" }, { "slug": "SHOPIFY_UPDATE_CUSTOMERS_PARAM_CUSTOMER_ID_ADDRESSES_SET", "name": "Bulk delete customer addresses", "description": "Performs bulk operations on multiple customer addresses. Currently supports the 'destroy' operation to delete multiple addresses at once. Use this when you need to remove several addresses for a customer in a single API call instead of deleting them one by one." }, { "slug": "SHOPIFY_UPDATE_DRAFT_ORDER", "name": "Modify an existing draft order", "description": "Update an existing draft order in Shopify. Use when you need to modify draft order details like customer information, line items, addresses, discounts, notes, or status before completion." }, { "slug": "SHOPIFY_UPDATE_EVENT_BRIDGE_WEBHOOK_SUBSCRIPTION", "name": "Update EventBridge webhook subscription", "description": "Update an Amazon EventBridge webhook subscription in Shopify. Use when you need to modify the ARN or data format of an existing EventBridge webhook. Note: This mutation is deprecated; consider using webhookSubscriptionUpdate for new implementations. For app-specific webhooks, using shopify.app.toml configurations may be easier as they are automatically maintained by Shopify." }, { "slug": "SHOPIFY_UPDATE_FULFILLMENT_TRACKING", "name": "Update Fulfillment Tracking", "description": "Updates tracking information (carrier company, tracking number, or custom URL) for an existing fulfillment. Use this action when: - You need to add or update tracking details for a shipment after the fulfillment was created - The carrier information was not provided during fulfillment creation - Tracking numbers become available after shipment - You want to notify customers about updated tracking information Prerequisites: Requires a valid fulfillment_id from a previously created fulfillment." }, { "slug": "SHOPIFY_UPDATE_GIFT_CARD", "name": "Update an Existing Gift Card", "description": "Updates an existing gift card in Shopify. Use when you need to modify a gift card's expiration date, merchant note, template suffix, or assign it to a customer. Only four properties can be updated after creation: expires_on (expiration date), note (merchant-only note), template_suffix (Liquid template suffix), and customer_id (can only be set if currently null). Note: Gift card balance and initial value cannot be modified through this endpoint." }, { "slug": "SHOPIFY_UPDATE_INVENTORY_ITEM", "name": "Update inventory item", "description": "Updates properties of an inventory item in Shopify. An inventory item represents the physical good behind a product variant, containing metadata like SKU, cost, origin, and shipping requirements. Use this action to modify these properties - NOT to adjust inventory quantities (use inventory level actions for quantity changes). Common use cases: updating product costs, changing SKUs, setting country of origin for customs, or toggling inventory tracking." }, { "slug": "SHOPIFY_UPDATE_MARKETING_EVENT", "name": "Update Marketing Event", "description": "Updates an existing marketing event in Shopify. UPDATABLE FIELDS: remote_id, budget, currency, budget_type, started_at, ended_at, scheduled_to_end_at. READ-ONLY FIELDS (cannot be changed after creation): event_type, marketing_channel, referring_domain, utm_campaign, utm_source, utm_medium, description, manage_url, preview_url, paid. This action validates and rejects requests that attempt to update read-only fields to prevent confusion." }, { "slug": "SHOPIFY_UPDATE_METAFIELD", "name": "Update blog metafield (Deprecated)", "description": "Update an existing metafield for a blog. Use when you need to modify metafield properties like value, type, or description for a blog resource." }, { "slug": "SHOPIFY_UPDATE_METAFIELD_BY_ID", "name": "Update metafield by ID", "description": "Update an existing Shopify metafield by its ID. Use when you need to modify metafield properties like value, type, or description." }, { "slug": "SHOPIFY_UPDATE_METAFIELD_DEFINITION", "name": "Update metafield definition", "description": "Update a Shopify metafield definition's configuration including name, description, validation rules, access settings, and capabilities. Use when you need to modify an existing metafield definition to change display text, add/remove validations, adjust API access permissions, or enable/disable capabilities like admin filtering or unique value constraints. Note: The type, namespace, key, and owner type identify the definition and cannot be changed - only the configuration settings can be updated." }, { "slug": "SHOPIFY_UPDATE_METAFIELD_GENERIC", "name": "Update a metafield (Deprecated)", "description": "Update an existing metafield for any Shopify resource type. Use when you need to modify metafield properties like value, type, or description for products, customers, orders, collections, or other resources." }, { "slug": "SHOPIFY_UPDATE_METAFIELD_RESOURCE", "name": "Update a metafield (Deprecated)", "description": "Update an existing metafield for any Shopify resource. Use when modifying metafield properties like value, type, or description for products, customers, orders, collections, shops, or other resources. Note: The namespace and key of an existing metafield cannot be changed." }, { "slug": "SHOPIFY_UPDATE_ORDER", "name": "Update Order", "description": "Updates mutable fields on an existing Shopify order." }, { "slug": "SHOPIFY_UPDATE_ORDER_RISK", "name": "Update order risk", "description": "Updates an order risk assessment for fraud detection in Shopify. Use when modifying existing risk evaluations. **IMPORTANT - API DEPRECATION:** This REST API endpoint is deprecated as of version 2025-10. If using API version 2025-10 or later, you must use the GraphQL Admin API's orderRiskAssessmentCreate mutation instead. See: https://shopify.dev/docs/api/admin-graphql/latest/mutations/orderRiskAssessmentCreate **Note:** You cannot modify a risk created by another application." }, { "slug": "SHOPIFY_UPDATE_PAGE", "name": "Update Page", "description": "Updates an existing page in a Shopify store. Use this to modify page properties such as title, HTML content (body_html), author, URL handle, publication status, or template. Requires a valid page_id and at least one field to update. All update fields are optional - provide only the fields you want to change." }, { "slug": "SHOPIFY_UPDATE_PRICE_RULE", "name": "Update Price Rule", "description": "Update an existing price rule (discount) in Shopify. Use when you need to modify price rule properties like title, value, dates, or prerequisites. Only fields provided in the request will be updated; omitted fields remain unchanged." }, { "slug": "SHOPIFY_UPDATE_PRODUCT_IMAGE", "name": "Update Product Image", "description": "Modify an existing product image. Use when you need to update image properties such as position, alt text, or variant associations." }, { "slug": "SHOPIFY_UPDATE_PRODUCT_METAFIELD", "name": "Update product metafield", "description": "Updates an existing metafield for a specific Shopify product." }, { "slug": "SHOPIFY_UPDATE_PRODUCTS_PARAM_PRODUCT_ID", "name": "Update Product", "description": "DEPRECATED: Use SHOPIFY_UPDATES_A_PRODUCT instead. Update an existing Shopify product including its variants and images. Use when you need to modify product details, variants, options, images, or SEO metadata." }, { "slug": "SHOPIFY_UPDATE_PRODUCT_VARIANTS_BULK", "name": "Bulk update product variants via GraphQL", "description": "Updates many product variants (20-50+) in one asynchronous Shopify bulk mutation job. Uses stagedUploadsCreate for JSONL upload, then bulkOperationRunMutation with productVariantsBulkUpdate, polling until completion and returning per-row success/errors. Use when you need to update pricing, SKUs, inventory settings, or other properties for multiple variants efficiently." }, { "slug": "SHOPIFY_UPDATE_PROVINCE", "name": "Update Province for Country (Deprecated)", "description": "Updates an existing province for a country in Shopify. IMPORTANT: This endpoint is deprecated as of API version 2024-07. Additionally, custom tax values for provinces cannot be updated as of version 2020-10. While the endpoint accepts update requests and returns 200 OK, province values (especially tax-related fields) may not actually be modified. Consider using the GraphQL Admin API for country/province management." }, { "slug": "SHOPIFY_UPDATE_PUB_SUB_WEBHOOK_SUBSCRIPTION", "name": "Update Pub/Sub webhook subscription", "description": "Updates a Google Cloud Pub/Sub webhook subscription configuration. Use when modifying the GCP project, topic, or message format for an existing Pub/Sub webhook." }, { "slug": "SHOPIFY_UPDATE_REDIRECT", "name": "Update redirect", "description": "Update an existing Shopify redirect. Use when you need to modify the path or target of a redirect. At least one of path or target must be provided." }, { "slug": "SHOPIFY_UPDATE_REDIRECT_ALT", "name": "Update redirect (Deprecated)", "description": "Update an existing Shopify redirect. Use when you need to modify the path or target of a redirect." }, { "slug": "SHOPIFY_UPDATES_AN_ARTICLE", "name": "Updates An Article (Deprecated)", "description": "DEPRECATED: Use SHOPIFY_UPDATE_ARTICLE instead. Update an existing article in a Shopify blog. Use when you need to modify article properties such as title, body content, tags, author, or publication status." }, { "slug": "SHOPIFY_UPDATES_AN_EXISTING_DISCOUNT_CODE", "name": "Updates An Existing Discount Code", "description": "Updates the code value of an existing discount code associated with a price rule. This action allows you to change the discount code string that customers use at checkout. The code is case-insensitive and can be up to 255 characters. Only the code value can be updated; to modify discount logic (percentage, amount, conditions), update the price rule itself. Required: Both the price_rule_id and discount_code_id must exist in your Shopify store. The new code must be unique and not already in use by another discount." }, { "slug": "SHOPIFY_UPDATES_A_PRODUCT", "name": "Update a product (Deprecated)", "description": "Updates a product and its variants and images. Use when modifying existing product details, pricing, variants, images, or SEO information." }, { "slug": "SHOPIFY_UPDATE_SCRIPT_TAG", "name": "Update Script Tag", "description": "Modify an existing script tag in Shopify. Use when you need to update script properties like the source URL, display scope, or caching behavior." }, { "slug": "SHOPIFY_UPDATE_SHOP_METAFIELD", "name": "Update a metafield (Deprecated)", "description": "Update an existing shop-level metafield's value and type. Use when you need to modify metafield data attached to the shop itself (not product, customer, or other resource metafields)." }, { "slug": "SHOPIFY_UPDATE_SMART_COLLECTION", "name": "Update Smart Collection", "description": "Update an existing smart collection. Use when you need to modify a smart collection's properties, rules, or settings." }, { "slug": "SHOPIFY_UPDATE_SMART_COLLECTION_ALT", "name": "Update smart collection (Deprecated)", "description": "Update an existing smart collection. Use when you need to modify smart collection properties like title, rules, or settings." }, { "slug": "SHOPIFY_UPDATE_SMART_COLLECTION_ORDER", "name": "Update smart collection product order", "description": "Updates the display order of products in a smart collection with manual sorting enabled. Use this action to customize the sequence products appear in a collection. This only works when the collection's sort_order field is set to 'manual'. If the collection uses automatic sorting (e.g., 'best-selling', 'price-asc'), this operation will have no effect. Requirements: - Collection must have sort_order='manual' - Product IDs must belong to products already in the collection - Requires 'write_products' scope Returns an empty response on success (HTTP 200 indicates successful reordering)." }, { "slug": "SHOPIFY_UPDATE_THEME", "name": "Modify existing theme", "description": "Update an existing theme's properties such as name or role. Use when you need to modify a theme. Note that a theme cannot be modified while uploading, updating, or if it's the last published theme." }, { "slug": "SHOPIFY_UPDATE_WEBHOOK_SUBSCRIPTION", "name": "Update webhook subscription", "description": "Update a webhook subscription's configuration in Shopify. Use when you need to modify the endpoint URL, event filters, included fields, or metafield namespaces without recreating the subscription. You can switch between endpoint types (HTTP, Pub/Sub, EventBridge) by providing a different URI format in callback_url. Updates apply atomically without interrupting webhook delivery." }, { "slug": "SHOPIFY_VALIDATE_ACCESS", "name": "Validate Access", "description": "DEPRECATED: Use SHOPIFY_GET_SHOP_DETAILS instead. Diagnoses authorization issues by retrieving granted OAuth scopes and validating token authenticity. Use when troubleshooting 401/403 errors to determine if the issue is an invalid token or missing permissions." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_products,write_products,read_orders,write_orders,read_customers,write_customers,read_inventory,write_inventory,read_fulfillments,write_fulfillments,read_assigned_fulfillment_orders,write_assigned_fulfillment_orders,read_content,write_content,read_themes,write_themes,read_locations,read_shipping,write_shipping,read_gift_cards,write_gift_cards,read_script_tags,write_script_tags,read_marketing_events,write_marketing_events,read_price_rules,write_price_rules,read_discounts,write_discounts,read_draft_orders,write_draft_orders,read_metaobjects,write_metaobjects,read_webhooks,write_webhooks,read_publications" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store Subdomain", "type": "string", "description": "Your store's permanent myshopify.com name — the 'acme' in acme.myshopify.com. Find it under Settings → Domains; enter this name, not your custom domain.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store Subdomain", "type": "string", "description": "Your store's permanent myshopify.com name — the 'acme' in acme.myshopify.com. Find it under Settings → Domains; enter this name, not your custom domain.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Admin Api Access Token", "type": "string", "description": "Your Admin API access token (starts with 'shpat_'). Create a custom app with the scopes you need, install it, then click 'Reveal token once' under API credentials.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "shopify_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "The Client ID from your Shopify Dev Dashboard app. Find it under your app's Configuration / Client credentials section in the Dev Dashboard. Required for Shopify OAuth client_credentials grant. Note: scopes are NOT requested at token-exchange time for Shopify — configure required scopes (e.g. read_products, write_products, read_orders, write_orders) in your Dev Dashboard app's Configuration or shopify.app.toml before installing the app on the store.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "The Client Secret from your Shopify Dev Dashboard app, listed alongside the Client ID. Treat as confidential. Used to obtain a short-lived (24h) access token via the client_credentials grant.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store Subdomain", "type": "string", "description": "Your store's permanent myshopify.com name — the 'acme' in acme.myshopify.com. Find it under Settings → Domains; enter this name, not your custom domain.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linkedin", "name": "LinkedIn", "logo": "https://logos.composio.dev/api/linkedin", "description": "LinkedIn is a professional networking platform enabling job seekers, companies, and thought leaders to connect, share content, and discover business opportunities", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINKEDIN_CREATE_ARTICLE_OR_URL_SHARE", "name": "Create article or URL share", "description": "Tool to create an article or URL share on LinkedIn using the UGC Posts API. Use when you need to share a link with optional commentary on LinkedIn. Supports sharing URLs as articles with customizable visibility settings." }, { "slug": "LINKEDIN_CREATE_COMMENT_ON_POST", "name": "Create comment on LinkedIn post", "description": "Tool to create a first-level or nested comment on a LinkedIn share, UGC post, or parent comment via the Social Actions Comments API. Use when you need to engage with posts by adding comments or replying to existing comments. Supports text comments with optional @-mentions and image attachments." }, { "slug": "LINKEDIN_CREATE_LINKED_IN_POST", "name": "Create a LinkedIn post", "description": "Creates a new post on LinkedIn for the authenticated user or an organization they manage. Requires w_member_social scope for posting as a person, and w_organization_social scope for posting as an organization (with ADMINISTRATOR, DIRECT_SPONSORED_CONTENT_POSTER, or CONTENT_ADMIN role)." }, { "slug": "LINKEDIN_DELETE_LINKED_IN_POST", "name": "Delete LinkedIn Post", "description": "Deletes a specific LinkedIn post (share) by its unique `share_id`, which must correspond to an existing share." }, { "slug": "LINKEDIN_DELETE_POST", "name": "Delete Post", "description": "Delete a LinkedIn post using the Posts API REST endpoint. Supports both ugcPost and share URN formats. The endpoint is idempotent - previously deleted posts return success (204)." }, { "slug": "LINKEDIN_DELETE_UGC_POST", "name": "Delete UGC Post (Legacy)", "description": "Delete a UGC post using the legacy UGC Post API endpoint. Use when you need to delete a post using the v2/ugcPosts endpoint. Deletion is idempotent - previously deleted posts also return success." }, { "slug": "LINKEDIN_GET_AD_TARGETING_FACETS", "name": "Get ad targeting facets", "description": "Tool to retrieve available ad targeting facets from LinkedIn Marketing API. Use when you need to discover what targeting options are available for ad campaigns (e.g., locations, industries, job functions)." }, { "slug": "LINKEDIN_GET_AUDIENCE_COUNTS", "name": "Get audience counts", "description": "Retrieves audience size counts for specified targeting criteria. Use when estimating reach for LinkedIn ad campaigns or targeted content." }, { "slug": "LINKEDIN_GET_COMPANY_INFO", "name": "Get company info", "description": "Retrieves organizations where the authenticated user has specific roles (ACLs), to determine their management or content posting capabilities for LinkedIn company pages." }, { "slug": "LINKEDIN_GET_IMAGE", "name": "Get image details", "description": "Tool to retrieve details of a LinkedIn image using its URN. Use when you need to check image status, get download URLs, or access image metadata for a single image." }, { "slug": "LINKEDIN_GET_IMAGES", "name": "Get images", "description": "Tool to retrieve image metadata including download URLs, status, and dimensions from LinkedIn's Images API. Use when you need to access image details for posts, profiles, or media library assets." }, { "slug": "LINKEDIN_GET_MY_INFO", "name": "Get my info", "description": "Fetches the authenticated LinkedIn user's profile information including name, headline, profile picture, and other profile details." }, { "slug": "LINKEDIN_GET_NETWORK_SIZE", "name": "Get network size", "description": "Tool to retrieve the follower count for a LinkedIn organization. Use when you need to get the number of members following a specific company or organization on LinkedIn." }, { "slug": "LINKEDIN_GET_ORG_PAGE_STATS", "name": "Get organization page statistics", "description": "Tool to retrieve page statistics for a LinkedIn organization page. Use when you need engagement metrics like page views and custom button clicks. Supports both lifetime statistics (all-time data segmented by demographics) and time-bound statistics (aggregate data for specific time ranges). Requires rw_organization_admin permission with ADMINISTRATOR role for the organization." }, { "slug": "LINKEDIN_GET_PERSON", "name": "Get person profile", "description": "Retrieves a LinkedIn member's profile information by their person ID. Returns lite profile fields (name, profile picture) by default, or basic profile fields (including headline and vanity name) with appropriate permissions." }, { "slug": "LINKEDIN_GET_POST_CONTENT", "name": "Get post content", "description": "Tool to retrieve detailed post content including text, images, videos, and metadata from LinkedIn by post URN. Use when you need to fetch the full content and details of a specific LinkedIn post." }, { "slug": "LINKEDIN_GET_SHARE_STATS", "name": "Get share statistics", "description": "Retrieves share statistics for a LinkedIn organization, including impressions, clicks, likes, comments, and shares. Use to analyze content performance for an organization page. Optionally filter by time intervals to get time-bound statistics." }, { "slug": "LINKEDIN_GET_VIDEOS", "name": "Get videos", "description": "Retrieves video metadata from LinkedIn Marketing API. Supports single video retrieval, batch retrieval (multiple videos), and finding videos by associated account with pagination. Use when you need to get video details including duration, dimensions, status, download URLs, and media library information." }, { "slug": "LINKEDIN_INITIALIZE_IMAGE_UPLOAD", "name": "Initialize image upload", "description": "Tool to initialize an image upload to LinkedIn and return a presigned upload URL plus the resulting image URN. Use when you need to prepare an image upload for LinkedIn posts. After calling this tool, upload the image bytes to the returned upload_url via PUT request, then use the image URN in CREATE_LINKED_IN_POST action." }, { "slug": "LINKEDIN_LIST_REACTIONS", "name": "List reactions on entity", "description": "Retrieves reactions (likes, celebrations, etc.) on a LinkedIn entity such as a share, post, or comment. Use when you need to see who reacted to content and what type of reactions were used." }, { "slug": "LINKEDIN_REGISTER_IMAGE_UPLOAD", "name": "Register image upload", "description": "Tool to initialize a native LinkedIn image upload for feed shares and return a presigned upload URL plus the resulting digital media asset URN. Use when you need to upload an image to attach to a LinkedIn post. After calling this tool, upload the image bytes to the returned upload_url, then use the asset_urn in LINKEDIN_CREATE_LINKED_IN_POST." }, { "slug": "LINKEDIN_SEARCH_AD_TARGETING_ENTITIES", "name": "Search ad targeting entities", "description": "Search for ad targeting entities using typeahead search. Use when you need to find targeting entities like geographic locations, job titles, industries, or other targeting criteria for LinkedIn ad campaigns." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "linkedin_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,w_member_social,email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "google_maps", "name": "Google Maps", "logo": "https://logos.composio.dev/api/google_maps", "description": "Integrate Google Maps to access location data, geocoding, directions, and mapping services in your application.", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_MAPS_AUTOCOMPLETE", "name": "Autocomplete Place Predictions", "description": "Returns place and query predictions for text input. Use when implementing as-you-type autocomplete functionality for place searches. Returns up to five predictions ordered by relevance." }, { "slug": "GOOGLE_MAPS_COMPUTE_ROUTE_MATRIX", "name": "Compute Route Matrix", "description": "Calculates travel distance and duration matrix between multiple origins and destinations using the modern Routes API; supports OAuth2 authentication and various travel modes. Matrix is capped at 625 elements (e.g., 25×25); chunk larger sets to avoid RESOURCE_EXHAUSTED errors. Response elements may be returned out of input order — always use originIndex and destinationIndex to map results. Only use elements where condition='ROUTE_EXISTS'; the matrix may be incomplete." }, { "slug": "GOOGLE_MAPS_DISTANCE_MATRIX_API", "name": "Distance Matrix (Legacy)", "description": "DEPRECATED: Legacy API that calculates travel distance and time for a matrix of origins and destinations. This API only works with API keys (no OAuth2 support). Use the modern 'Compute Route Matrix' action instead, which supports OAuth2 authentication. Supports different modes of transportation and options like departure/arrival times. Capped at 100 elements per request (elements = origins × destinations count); split large sets into batches." }, { "slug": "GOOGLE_MAPS_GEOCODE_ADDRESS", "name": "Geocode Address", "description": "DEPRECATED: Legacy API to convert street addresses into geographic coordinates (latitude and longitude). This API works best with API key authentication. For OAuth connections without an API key, you may need to provide the 'key' parameter or use the newer 'Text Search' action instead. Use when you need to geocode an address or location to get its precise latitude/longitude coordinates." }, { "slug": "GOOGLE_MAPS_GEOCODE_ADDRESS_WITH_QUERY", "name": "Geocode Address With Query", "description": "Tool to map addresses to geographic coordinates with query parameter. Use when you need to convert a textual address into latitude/longitude coordinates using the modern v4beta API. Results may match multiple places — always verify `formattedAddress`, `region`, and `addressComponents` in the response before using returned coordinates." }, { "slug": "GOOGLE_MAPS_GEOCODE_DESTINATIONS", "name": "Geocode Destinations", "description": "Tool to perform destination lookup and return detailed destination information including primary place, containing places, sub-destinations, landmarks, entrances, and navigation points. Use when you need comprehensive destination data for an address, place ID, or geographic coordinates." }, { "slug": "GOOGLE_MAPS_GEOCODE_LOCATION", "name": "Reverse Geocode Location", "description": "Tool to convert geographic coordinates (latitude and longitude) to human-readable addresses using reverse geocoding. Use when you need to find the address or place name for a given set of coordinates. A single coordinate pair may return multiple results; verify formattedAddress, region, and addressComponents before committing to a result." }, { "slug": "GOOGLE_MAPS_GEOCODE_PLACE", "name": "Geocode Place by ID", "description": "Tool to perform geocode lookup using a place identifier to retrieve address and coordinates. Use when you need to get detailed geographic information for a specific Google Place ID." }, { "slug": "GOOGLE_MAPS_GEOCODING_API", "name": "Geocoding API", "description": "Convert addresses into geographic coordinates (latitude and longitude) and vice versa (reverse geocoding), or get an address for a Place ID. Uses the Geocoding API v4 (v4beta) which supports OAuth2 authentication. Exactly one of `address`, `latlng`, or `place_id` must be provided per request; omitting all three or mixing incompatible combinations yields no useful results." }, { "slug": "GOOGLE_MAPS_GEOLOCATE", "name": "Geolocate Device", "description": "Tool to determine location based on cell towers and WiFi access points. Use when you need to find the geographic location of a device using network infrastructure data." }, { "slug": "GOOGLE_MAPS_GET2D_TILE", "name": "Get 2D Map Tile", "description": "Tool to retrieve a 2D map tile image at specified coordinates for building custom map visualizations. Use when you need to download individual map tile images for roadmap, satellite, or terrain views. Requires a valid session token from the createSession endpoint." }, { "slug": "GOOGLE_MAPS_GET3D_TILES_ROOT", "name": "Get 3D Tiles Root", "description": "Tool to retrieve the 3D Tiles tileset root configuration for photorealistic 3D map rendering. Use when you need to initialize a 3D renderer with Google's photorealistic tiles following the OGC 3D Tiles specification. The Map Tiles API is billable per request; cache the root response client-side and avoid repeated calls." }, { "slug": "GOOGLE_MAPS_GET_DIRECTION", "name": "Get Directions", "description": "Fetches detailed directions between an origin and a destination, supporting intermediate waypoints and various travel modes. Automatically uses the modern Routes API with OAuth2 when available, falling back to legacy API with API key if provided." }, { "slug": "GOOGLE_MAPS_GET_PLACE_DETAILS", "name": "Get Place Details", "description": "Retrieves comprehensive details for a place using its resource name (places/{place_id} format). Use when you need detailed information about a specific place." }, { "slug": "GOOGLE_MAPS_GET_ROUTE", "name": "Get Route", "description": "Calculates one or more routes between two specified locations. Uses various travel modes and preferences; addresses must be resolvable by Google Maps. Response `duration` is a string with 's' suffix (e.g., `\"4557s\"`); parse before displaying." }, { "slug": "GOOGLE_MAPS_GET_TIME_ZONE", "name": "Get Time Zone", "description": "Retrieves time zone information for a specific geographic location and timestamp. Use this action when you need to determine the time zone ID, UTC offset, daylight savings offset, or localized time zone name for any point on Earth. The API considers the provided timestamp to accurately determine whether daylight savings is in effect at that moment." }, { "slug": "GOOGLE_MAPS_LOOKUP_AERIAL_VIDEO", "name": "Lookup Aerial Video", "description": "Tool to look up an aerial view video by address or video ID. Returns video metadata including state and URIs for playback. Use when you need to retrieve a previously rendered aerial video or check the status of a video render request. Note that receiving a video is a billable event." }, { "slug": "GOOGLE_MAPS_MAPS_EMBED_API", "name": "Embed Google Map", "description": "Tool to generate an embeddable Google Map URL and HTML iframe code. Use when you need to display a map (place, view, directions, street view, search) on a webpage without JavaScript. Note: This API only works with API keys (no OAuth2 support). It generates embed URLs and does not make direct API calls. Generated embed URLs are publicly accessible; avoid passing sensitive or internal location queries." }, { "slug": "GOOGLE_MAPS_NEARBY_SEARCH", "name": "Nearby search", "description": "Searches for places (e.g., restaurants, parks) within a specified circular area, with options to filter by place types and customize the returned fields and number of results." }, { "slug": "GOOGLE_MAPS_PLACE_PHOTO", "name": "Get Place Photo", "description": "Retrieves high quality photographic content from the Google Maps Places database. Use when you need to download a place photo using a photo_reference obtained from Place Details, Nearby Search, or Text Search requests. Images are scaled proportionally to fit within specified dimensions." }, { "slug": "GOOGLE_MAPS_RENDER_AERIAL_VIDEO", "name": "Render Aerial Video", "description": "Starts rendering an aerial view video for a US postal address. Returns a video ID that can be used with lookupVideo to retrieve the video once rendering completes. Rendering typically takes up to a few hours." }, { "slug": "GOOGLE_MAPS_TEXT_SEARCH", "name": "Text Search", "description": "Searches for places on Google Maps using a textual query (e.g., \"restaurants in London\", \"Eiffel Tower\"). Results may include CLOSED_PERMANENTLY or TEMPORARILY_CLOSED places — filter by businessStatus=OPERATIONAL. Include city/region and business type in textQuery to avoid empty or irrelevant results. Deduplicate using id or formattedAddress, not name alone. Throttle to ~1 req/s; OVER_QUERY_LIMIT (HTTP 429) requires exponential backoff." }, { "slug": "GOOGLE_MAPS_TILES_CREATE_SESSION", "name": "Create Tiles Session", "description": "Tool to create a session token required for accessing 2D Tiles and Street View imagery. Use when you need to initialize tile-based map rendering or street view display. The session token is valid for approximately two weeks and must be included in all subsequent tile requests. Each call consumes quota — cache and reuse the returned token across all tile requests within its validity window rather than creating a new session per request." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_photos_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-platform" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Google Maps Platform API key (starts with 'AIza'). Create it in Google Cloud Console → APIs & Services → Credentials, with Maps APIs and billing enabled.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "one_drive", "name": "OneDrive", "logo": "https://logos.composio.dev/api/one_drive", "description": "OneDrive is Microsoft’s cloud storage solution enabling users to store, sync, and share files across devices, offering offline access, real-time collaboration, and enterprise-grade security", "category": "file management & storage", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 83, "triggerCount": 9, "version": "20260703_01", "tools": [ { "slug": "ONE_DRIVE_ADD_WORKBOOK_WORKSHEET", "name": "Add Workbook Worksheet", "description": "Adds a new worksheet to an existing Excel workbook in OneDrive or SharePoint. The worksheet is created with the specified name and appended to the end of the workbook's worksheet collection. Use this action when you need to create a new sheet in an Excel file to organize data, add reports, or separate information into logical sections." }, { "slug": "ONE_DRIVE_CHECKIN_ITEM", "name": "Check In Drive Item", "description": "Tool to check in a checked out driveItem resource, making the version of the document available to others. Use when you need to check in a file that was previously checked out in OneDrive or SharePoint." }, { "slug": "ONE_DRIVE_CHECKOUT_ITEM", "name": "Checkout Drive Item", "description": "Tool to check out a driveItem to prevent others from editing it and make your changes invisible until checked in. Use when you need to lock a file for exclusive editing in SharePoint or OneDrive." }, { "slug": "ONE_DRIVE_CLEAR_WORKBOOK_RANGE", "name": "Clear Workbook Range", "description": "Clears values, formats, or both from a worksheet range in an Excel workbook stored in OneDrive or SharePoint without deleting cells or shifting neighboring data. Use this action when you need to reset a range while preserving the worksheet's cell structure." }, { "slug": "ONE_DRIVE_COPY_ITEM", "name": "Copy Item", "description": "Tool to copy a DriveItem (file or folder) to a new location asynchronously. Use when you need to duplicate an item, optionally renaming it or specifying a different parent folder. The operation is asynchronous; the response provides a URL to monitor the copy progress. Do not assume the copy is complete immediately; verify via ONE_DRIVE_GET_ITEM or by listing the destination, especially for large folder trees." }, { "slug": "ONE_DRIVE_CREATE_ITEM_PERMISSION", "name": "Create Drive Item Permission", "description": "Tool to create a new permission on a OneDrive drive item. Use when you need to grant application or SharePoint group permissions to a file or folder. This endpoint supports creating application permissions and SharePoint site group permissions only." }, { "slug": "ONE_DRIVE_CREATE_LINK", "name": "Create Sharing Link", "description": "Tool to create a sharing link for a DriveItem (file or folder) by its unique ID. Use when you need to generate a shareable link for an item in OneDrive or SharePoint." }, { "slug": "ONE_DRIVE_CREATE_SHAREPOINT_LIST_ITEM", "name": "Create SharePoint List Item", "description": "Create an item in a SharePoint list using Microsoft Graph through the OneDrive connection. Use when you need to add a new row/item to a SharePoint list after resolving the site ID and list ID." }, { "slug": "ONE_DRIVE_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete a DriveItem (file or folder) by its unique ID from the authenticated user's OneDrive. Use when you need to remove an item from OneDrive. This action moves the item to the recycle bin, not permanently deleting it; storage quota is not freed until the recycle bin is emptied. Bulk deletions can trigger 429 (rate limit) or 5xx responses — limit concurrency and use exponential backoff." }, { "slug": "ONE_DRIVE_DELETE_ITEM_PERMANENTLY", "name": "Permanently Delete Drive Item", "description": "Tool to permanently delete a driveItem by its ID without moving it to the recycle bin. Use when you need to irreversibly remove a file or folder from OneDrive or SharePoint. This action cannot be undone." }, { "slug": "ONE_DRIVE_DELETE_ITEM_PERMISSION", "name": "Delete Drive Item Permission", "description": "Tool to delete a permission from a drive item. Use when you need to revoke sharing access to a file or folder. Only non-inherited sharing permissions can be deleted." }, { "slug": "ONE_DRIVE_DELETE_SHARE_PERMISSION", "name": "Delete Shares Permission", "description": "Tool to delete the permission navigation property for a shared drive item. Use when you need to remove a sharing link permission. This effectively revokes access via the specific share link." }, { "slug": "ONE_DRIVE_DELETE_SHAREPOINT_ITEM_PERMISSION", "name": "Delete SharePoint Item Permission", "description": "Revoke a Microsoft Graph beta permission from a SharePoint list or list item." }, { "slug": "ONE_DRIVE_DELETE_WORKBOOK_RANGE", "name": "Delete Workbook Range", "description": "Deletes a range of cells from a worksheet in an Excel workbook stored in OneDrive. Use this action when you need to remove a specific cell range and shift the remaining cells to fill the gap. This action is irreversible — the deleted range cannot be recovered once removed. The operation requires Files.ReadWrite scope and the workbook must not be locked by another user or process." }, { "slug": "ONE_DRIVE_DELETE_WORKBOOK_WORKSHEET", "name": "Delete Workbook Worksheet", "description": "Deletes a worksheet from a workbook in OneDrive by its ID or name. Use this action when you need to remove a specific worksheet from an Excel workbook stored in OneDrive or SharePoint. This action is irreversible — the worksheet cannot be recovered once deleted. Note that deleting the last visible worksheet in a workbook may result in an error." }, { "slug": "ONE_DRIVE_DISCARD_CHECKOUT", "name": "Discard Checkout", "description": "Tool to discard the checkout of a driveItem, releasing it and discarding any changes made while checked out. Use when you need to cancel a checkout and revert changes on a file in SharePoint or OneDrive." }, { "slug": "ONE_DRIVE_DOWNLOAD_FILE", "name": "Download a file", "description": "Downloads a file from a user's OneDrive using its item ID, which must refer to a file and not a folder. Response contains a content object with the downloaded file, MIME type, and name; raw file data is not returned directly. Parsing content from Excel, Word, PDF, or other formats requires additional tooling. The downloaded file can be passed to downstream tools such as OUTLOOK_SEND_EMAIL or OUTLOOK_CREATE_DRAFT." }, { "slug": "ONE_DRIVE_DOWNLOAD_FILE_BY_PATH", "name": "Download file by path", "description": "Downloads the contents of a file from OneDrive by its path. The API returns a 302 redirect to a pre-authenticated download URL. Use when you know the file path but not the item ID." }, { "slug": "ONE_DRIVE_DOWNLOAD_ITEM_AS_FORMAT", "name": "Download item as format", "description": "Tool to download the contents of a driveItem converted to a specific format (e.g., PDF or HTML). Use when you need to convert Office documents to PDF or Loop/Fluid files to HTML before downloading. Supports accessing items by item_id or by path, and can target specific drives via drive_id." }, { "slug": "ONE_DRIVE_DOWNLOAD_ITEM_VERSION", "name": "Download Drive Item Version Content", "description": "Tool to download the contents of a specific previous version of a drive item (file). Returns the actual file content. Note: You cannot download the current version using this endpoint - it only works for previous versions." }, { "slug": "ONE_DRIVE_FOLLOW_ITEM", "name": "Follow Drive Item", "description": "Tool to follow a driveItem (file or folder) in OneDrive or SharePoint. Use when you need to add an item to the user's followed items list for tracking updates." }, { "slug": "ONE_DRIVE_GET_DOCUMENT_COMMENTS", "name": "Get document comments", "description": "Extracts comments from a Word .docx file in OneDrive. The action downloads the document, parses the OOXML comments part, and returns structured comment data inline. When possible, it also includes the selected text and paragraph context from the document body so agents can understand what each comment refers to." }, { "slug": "ONE_DRIVE_GET_DRIVE", "name": "Get Drive", "description": "Retrieves the properties and relationships of a Drive resource by its unique ID. Use this action when you need to get details about a specific OneDrive, user's OneDrive, group's document library, or a site's document library. Only drives accessible to the authenticated user are returned; missing drives indicate insufficient OAuth scope or tenant permissions." }, { "slug": "ONE_DRIVE_GET_DRIVE_ITEM_BY_SHARING_URL", "name": "Get DriveItem by Sharing URL", "description": "Tool to resolve a OneDrive/SharePoint sharing URL (or shareId) to a DriveItem with driveId and itemId. Use when you have a sharing link from Teams, chat, or 1drv.ms and need the item's metadata or IDs for downstream actions like permissions or download." }, { "slug": "ONE_DRIVE_GET_FOLLOWED_ITEM", "name": "Get Drives Following", "description": "Tool to retrieve a specific followed driveItem from a drive. Use when you need to get details about a file or folder that the user has marked to follow." }, { "slug": "ONE_DRIVE_GET_GROUP_DRIVE", "name": "Get Group Drive", "description": "Tool to retrieve the document library (drive) for a Microsoft 365 group. Use when you need to access the default document library associated with a specific group." }, { "slug": "ONE_DRIVE_GET_ITEM", "name": "Get Item Metadata", "description": "Retrieves the metadata of a DriveItem by its unique ID. Use this tool to get information about a specific file or folder in OneDrive when you have its ID. If a `drive_id` is not provided, it defaults to the user's main drive." }, { "slug": "ONE_DRIVE_GET_ITEM_PERMISSIONS", "name": "Get Item Permissions", "description": "Retrieves the permissions of a DriveItem by its unique ID within a specific Drive. Use when you need to check who has access to a file or folder and what level of access they have. Response nests permission entries under `data.value`; check top-level `success`/`error` flags before processing results. Results include inherited permissions, owner entries, and anonymous link entries — not just explicitly granted permissions. Sharing links may have differing scopes (org-only vs. anonymous); verify `link.scope` before treating a permission as externally accessible." }, { "slug": "ONE_DRIVE_GET_ITEM_THUMBNAILS", "name": "Get Item Thumbnails", "description": "Tool to retrieve the thumbnails associated with a DriveItem. Use when you need to display visual previews of files. Response contains a `value` array with size keys (`small`, `medium`, `large`); thumbnails may not be generated for all file types or newly uploaded items, so handle an empty or missing `value` array. Returned thumbnail URLs are external HTTP endpoints with independent availability." }, { "slug": "ONE_DRIVE_GET_ITEM_VERSIONS", "name": "Get Item Versions", "description": "Tool to retrieve the version history of a DriveItem by its unique ID. Use when you need to access or list previous versions of a file. Version history may be unavailable or empty for folders or items in drives without versioning enabled." }, { "slug": "ONE_DRIVE_GET_RECENT_ITEMS", "name": "Get Recent Items", "description": "DEPRECATED: Microsoft has deprecated the `GET /me/drive/recent` endpoint backing this action; it already runs in a degraded state and stops returning data after November 2026. This action is retained for backward compatibility and will be removed once the upstream API is fully retired. Get files and folders recently accessed by the user. Returns items based on activity history (opened, edited, viewed), sorted by most recent first — NOT by modification time; use ONE_DRIVE_ONEDRIVE_LIST_ITEMS or ONE_DRIVE_LIST_ROOT_DRIVE_CHANGES for strictly modification-based queries. Use when you need to see what the user worked on recently (e.g., 'Show me files I worked on today'). Different from search - this tracks activity, not content. Results may contain duplicate names; disambiguate using lastModifiedDateTime, parentReference.path, and the file/folder property before acting on a specific item." }, { "slug": "ONE_DRIVE_GET_ROOT", "name": "Get Drive Root Folder", "description": "Tool to retrieve metadata for the root folder of the signed-in user's OneDrive. Use when you need information about the user's OneDrive root directory, such as size, child count, or web URL." }, { "slug": "ONE_DRIVE_GET_SHARE", "name": "Get Shared Item by ShareId", "description": "Tool to access a shared DriveItem or collection of shared items using a shareId or encoded sharing URL. Returns the sharedDriveItem resource with metadata about the shared item and its owner. Use when you have a shareId or sharing token and need information about what was shared." }, { "slug": "ONE_DRIVE_GET_SHARED_ITEMS", "name": "Get Shared Items", "description": "DEPRECATED: Use ONE_DRIVE_SEARCH_DRIVE_ITEMS to find a specific shared file or ONE_DRIVE_LIST_ONEDRIVE_SHARED_ITEMS to list files shared from other people's OneDrive accounts. Microsoft Graph sharedWithMe is degraded until November 2026 and will stop returning data after that." }, { "slug": "ONE_DRIVE_GET_SHAREPOINT_LIST_ITEMS", "name": "Get SharePoint List Items", "description": "Tool to get the items (list items) within a specific SharePoint list on a site. Use when you need to retrieve data from a SharePoint list." }, { "slug": "ONE_DRIVE_GET_SITE", "name": "Get Site Details", "description": "Retrieves metadata for a specific SharePoint site by its ID. Use this action when you need to get details like display name, web URL, and creation/modification dates for a known SharePoint site." }, { "slug": "ONE_DRIVE_GET_SITE_PAGE_CONTENT", "name": "Get SharePoint Site Page Content", "description": "Gets the content of a modern SharePoint site page. Use when you need to retrieve the details and content of a specific page within a SharePoint site." }, { "slug": "ONE_DRIVE_GET_SPECIAL_FOLDER", "name": "Get Drive Special Folder", "description": "Tool to retrieve a special folder in OneDrive by name. Use when you need to access well-known folders (documents, photos, approot, etc.) without looking up by path or ID." }, { "slug": "ONE_DRIVE_GET_USER", "name": "Get User Profile", "description": "Retrieves the properties and profile information for a specific Microsoft user by their user ID or user principal name. Use this action when you need to get detailed information about a user's profile, including their contact details, job information, and account status. This action requires the User.Read or User.ReadBasic.All OAuth scope to access user profile data." }, { "slug": "ONE_DRIVE_GET_WORKBOOK_USED_RANGE", "name": "Get Workbook Used Range", "description": "Retrieves the used range of a worksheet in an Excel workbook stored in OneDrive or SharePoint without requiring the caller to know an explicit A1 range address. Use this action to read the active data region of a worksheet, optionally ignoring formatting-only cells." }, { "slug": "ONE_DRIVE_GET_WORKBOOK_WORKSHEET", "name": "Get Workbook Worksheet", "description": "Retrieves a specific worksheet from an Excel workbook stored in OneDrive or SharePoint using Microsoft Graph API. Use this action when you need to get details about a particular worksheet, including its ID, name, position, and visibility. The worksheet can be identified by either its unique ID or its display name." }, { "slug": "ONE_DRIVE_GRANT_SHARE_PERMISSION", "name": "Grant Shares Permission", "description": "Tool to grant users access to a link represented by a permission using an encoded sharing URL. Use when you need to give specific users access to a shared OneDrive or SharePoint resource." }, { "slug": "ONE_DRIVE_GRANT_SHAREPOINT_ITEM_PERMISSION", "name": "Grant SharePoint Item Permission", "description": "Grant an application permission on a SharePoint list or list item using Microsoft Graph beta." }, { "slug": "ONE_DRIVE_INVITE_USER_TO_ITEM", "name": "Invite User to Drive Item", "description": "Tool to invite users or grant permissions to a specific item in a OneDrive drive. Use when you need to share a file or folder with other users and define their access level (e.g., read or write)." }, { "slug": "ONE_DRIVE_LIST_ACTIVITIES", "name": "List Drive Activities", "description": "Tool to retrieve recent activities on the authenticated user's OneDrive. Use when you need to track recent changes or actions performed across the drive." }, { "slug": "ONE_DRIVE_LIST_ALL_DRIVE_ITEMS", "name": "List All Drive Items Recursively", "description": "Recursively lists all files and folders in a OneDrive drive by traversing the entire folder hierarchy. Starts at the drive root and explores every subfolder to return a complete flattened list of all items. Use this action when you need a comprehensive inventory of all drive contents, want to search across all folders, or need to analyze the complete drive structure. For large drives with thousands of items, this operation may take significant time as it must traverse every folder." }, { "slug": "ONE_DRIVE_LIST_BUNDLES", "name": "List Drive Bundles", "description": "Tool to retrieve a list of bundle resources from a specified drive. Bundles are collections of files (e.g., photo albums). Use when you need to list bundles in a drive." }, { "slug": "ONE_DRIVE_LIST_DRIVES", "name": "List Drives", "description": "Tool to retrieve a list of Drive resources available to the authenticated user, or for a specific user, group, or site. Use when you need to find out what drives are accessible. Returns only drives within the signed-in account's permission scope; missing drives indicate insufficient permissions or different tenant scope. Results are paginated — follow skip_token across all pages to avoid missing drives. Returned drives represent document libraries and may not reflect full SharePoint site structure; use SHARE_POINT_GET_SITE_COLLECTION_INFO or SHARE_POINT_SEARCH_QUERY for broader coverage. Use driveType and webUrl to distinguish personal, system, and SharePoint-backed drives." }, { "slug": "ONE_DRIVE_LIST_FOLDER_CHILDREN", "name": "List Folder Children", "description": "List the direct children (files/folders) of a OneDrive/SharePoint folder by DriveItem ID or path. Returns reliable pagination tokens/nextLink for large folders. Use when you need to enumerate folder contents deterministically, find companion artifacts (e.g., .vtt/.docx files), or browse within a known folder." }, { "slug": "ONE_DRIVE_LIST_ITEM_ACTIVITIES", "name": "List Drive Item Activities", "description": "Tool to list recent activities for a specific item in a OneDrive drive. Use when you need to track changes or actions performed on a file or folder." }, { "slug": "ONE_DRIVE_LIST_ONEDRIVE_SHARED_ITEMS", "name": "List OneDrive Shared Items", "description": "List files shared from other people's OneDrive accounts using Microsoft Graph Search match-all and a OneDrive-personal URL heuristic. This excludes SharePoint-site shares by design; use ONE_DRIVE_SEARCH_DRIVE_ITEMS for broad keyword/KQL search across OneDrive and SharePoint." }, { "slug": "ONE_DRIVE_LIST_ROOT_DRIVE_CHANGES", "name": "List Root Drive Changes", "description": "Tool to list changes in the root of the user's primary drive using a delta token. Use when you need to track file and folder modifications, additions, or deletions in the main OneDrive directory. First call without `token` returns all current items plus an `@odata.deltaLink`; store that token and pass it on subsequent calls to retrieve only incremental changes. Losing the deltaLink token forces a full resync. Responses include deleted items (check `deleted` property) and the root item itself alongside files and folders." }, { "slug": "ONE_DRIVE_LIST_SHARE_PERMISSIONS", "name": "List Shares Permission", "description": "Tool to retrieve permission details for a shared OneDrive or SharePoint item using a share ID. Use when you have an encoded sharing URL and need to check the permission level, password protection, and access details." }, { "slug": "ONE_DRIVE_LIST_SHAREPOINT_ITEM_PERMISSIONS", "name": "List SharePoint Item Permissions", "description": "List Microsoft Graph beta permissions from a SharePoint list or list item." }, { "slug": "ONE_DRIVE_LIST_SHAREPOINT_LIST_ITEMS_DELTA", "name": "List SharePoint List Items Delta", "description": "Tool to track changes to items in a SharePoint list using a delta query. Use when you need to get newly created, updated, or deleted list items without performing a full read of the entire item collection." }, { "slug": "ONE_DRIVE_LIST_SITE_COLUMNS", "name": "List Site Columns", "description": "Tool to list all column definitions for a SharePoint site. Use this when you need to retrieve the schema or structure of columns within a specific SharePoint site." }, { "slug": "ONE_DRIVE_LIST_SITE_ITEMS_DELTA", "name": "List Site Drive Items Delta", "description": "Tool to track changes to DriveItems in the default document library of a SharePoint site. Use when you need to get a list of items that have been added, modified, or deleted since a previous state or to get an initial enumeration of all items." }, { "slug": "ONE_DRIVE_LIST_SITE_LISTS", "name": "List Site Lists", "description": "Tool to list all lists under a specific SharePoint site. Use when you need to enumerate lists within a known site. Returns only Microsoft Graph-supported lists — internal/system lists are excluded, so results may be a strict subset of all site lists (e.g., 13 returned where 108 exist). Results are in the `data.value` array. IMPORTANT: Only works with organizational Microsoft 365 accounts (Azure AD/Entra ID). NOT supported for personal Microsoft accounts (MSA/Outlook.com/Hotmail). Personal OneDrive users cannot access SharePoint sites through this endpoint." }, { "slug": "ONE_DRIVE_LIST_SITE_SUBSITES", "name": "List Site Subsites", "description": "Tool to list all subsites of a SharePoint site. Use when you need to retrieve a collection of subsites for a given parent site. IMPORTANT: This action only works with organizational Microsoft 365 accounts (Azure AD/Entra ID accounts). It is NOT supported for personal Microsoft accounts (MSA/Outlook.com/Hotmail accounts). Personal OneDrive users cannot access SharePoint sites through this endpoint. An empty `value` array in the response means the site has no subsites, not a failure." }, { "slug": "ONE_DRIVE_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Tool to list the current subscriptions for the authenticated user or app. Use this to retrieve details of existing webhook subscriptions. Results may span multiple drives and resources; filter client-side by resource URL or type to narrow to a specific scope. An empty `value` array means no subscriptions exist, not a failed call." }, { "slug": "ONE_DRIVE_LIST_WORKBOOK_WORKSHEETS", "name": "List Workbook Worksheets", "description": "Retrieves a list of all worksheets in an Excel workbook stored in OneDrive or SharePoint. Returns worksheet metadata including IDs, names, positions, and visibility states. Use this action when you need to enumerate available worksheets in a workbook, find a specific worksheet by name, or understand the workbook structure before performing operations on worksheet data." }, { "slug": "ONE_DRIVE_MOVE_ITEM", "name": "Move Item", "description": "Tool to move a file or folder to a new parent folder in OneDrive. Use when you need to reorganize your files or folders by changing their location. You can optionally rename the item during the move. If a file with the same name exists at the destination, the API returns `nameAlreadyExists`; use the `name` parameter to provide a unique name or resolve the conflict beforehand." }, { "slug": "ONE_DRIVE_ONEDRIVE_CREATE_FOLDER", "name": "Create folder", "description": "Creates a new folder in the user's OneDrive with configurable conflict behavior, optionally within a specified parent_folder (by ID or full path from root) which, if not the root, must exist and be accessible." }, { "slug": "ONE_DRIVE_ONEDRIVE_CREATE_TEXT_FILE", "name": "Create a new text file", "description": "Creates a new plain-text file with specified content in the authenticated user's personal OneDrive, using either the folder's unique ID or its absolute path relative to the user's OneDrive root (paths are automatically resolved to IDs); note that OneDrive may rename or create a new version if the filename already exists. All files are written as plain text regardless of extension — specifying .docx or .xlsx does not produce a true Office document. This action only works with the user's personal OneDrive (/me/drive) and does not support SharePoint document libraries or shared drives." }, { "slug": "ONE_DRIVE_ONEDRIVE_FIND_FILE", "name": "Find Item", "description": "Non-recursively finds an item (file or folder) in a specified OneDrive folder; if `folder` is provided as a path, it must actually exist. Results in large folders may be paginated via `@odata.nextLink`; iterate all pages to avoid missing files. For searches where the subfolder is unknown, use ONE_DRIVE_SEARCH_ITEMS instead." }, { "slug": "ONE_DRIVE_ONEDRIVE_FIND_FOLDER", "name": "Find Folder", "description": "Finds folders by name within an accessible parent folder in OneDrive, or lists all its direct child folders if no name is specified. Search is non-recursive: only immediate children of `folder` are checked, not deeper hierarchy levels." }, { "slug": "ONE_DRIVE_ONEDRIVE_LIST_ITEMS", "name": "List OneDrive items", "description": "Retrieves all files and folders as `driveItem` resources from the root of a specified user's OneDrive, automatically handling pagination. Non-recursive: returns only root-level items; subfolder contents require separate calls. Results may include `remoteItem` pointers (shared items from other drives) — use `remoteItem.driveId` and `remoteItem.id` for those in downstream calls. Distinguish files from folders by presence of `file` or `folder` property. Always use `id` values returned by this tool directly; never construct item IDs manually. Items may be absent from results due to permission restrictions, not drive absence." }, { "slug": "ONE_DRIVE_ONEDRIVE_UPLOAD_FILE", "name": "Upload file", "description": "Uploads a file to a specified OneDrive folder, automatically creating the destination folder if it doesn't exist, renaming on conflict, and supporting large files via chunking." }, { "slug": "ONE_DRIVE_PREVIEW_DRIVE_ITEM", "name": "Preview Drive Item", "description": "Generates or retrieves a short-lived, permission-bound embeddable URL for a preview of a specific item. URLs expire and must be regenerated per session — do not cache. Use when you need to display a temporary preview of a file." }, { "slug": "ONE_DRIVE_READ_WORKBOOK_RANGE", "name": "Read Workbook Range", "description": "Reads a range of cells from an Excel workbook worksheet stored in OneDrive or SharePoint using Microsoft Graph API. Returns cell values, formulas, formatting, and metadata for the specified range. Use this action when you need to extract data from specific cells in an Excel file, whether reading a single cell, a rectangular range, an entire column, or an entire row. The range address must be specified in A1 notation (e.g., 'A1:B5')." }, { "slug": "ONE_DRIVE_RESTORE_DRIVE_ITEM", "name": "Restore Deleted Item", "description": "Tool to restore a deleted OneDrive driveItem (file or folder) from the recycle bin. Use when you need to recover a deleted item to its original location or to a specified parent folder, optionally renaming it during restoration. IMPORTANT LIMITATION: This API is ONLY available for OneDrive Personal accounts. It does NOT work with OneDrive for Business or SharePoint. For Business/SharePoint accounts, use the SharePoint REST API endpoints (/_api/web/recyclebin) instead." }, { "slug": "ONE_DRIVE_RESTORE_ITEM_VERSION", "name": "Restore Item Version", "description": "Restores a previous version of a DriveItem (file) by creating a new version with the content of the specified version. Use this action when you need to revert a file to an earlier version. The restoration is permanent and creates a new current version — the file cannot be automatically reverted after this operation, though you can restore again to a different version if needed. This action is irreversible in the sense that it immediately changes the current file content." }, { "slug": "ONE_DRIVE_SEARCH_DRIVE_ITEMS", "name": "Search Drive Items", "description": "Search OneDrive and accessible SharePoint files with Microsoft Graph Search. This does not produce a complete shared-with-me list; use deprecated ONE_DRIVE_GET_SHARED_ITEMS only when full shared-with-me enumeration is required before Microsoft removes that API in November 2026. Requires OneDrive permissions plus Sites.Read.All because SharePoint-backed files can appear in results." }, { "slug": "ONE_DRIVE_SEARCH_ITEMS", "name": "Search Items", "description": "Search OneDrive for files and folders by keyword. Searches filenames, metadata, and file content to find matching items. Use when you need to find specific files based on keywords, file types, or content. Supports filtering, sorting, and pagination. Results are mixed files and folders — filter client-side using file vs folder properties. Disambiguate similarly named items using parentReference.path, lastModifiedDateTime, and size before passing item IDs downstream. Newly created or recently moved files may not appear due to indexing delays; fall back to ONE_DRIVE_LIST_FOLDER_CHILDREN if expected items are missing. No server-side date filtering — apply lastModifiedDateTime/createdDateTime filtering in your own logic. HTTP 429 responses include a Retry-After header; use exponential backoff." }, { "slug": "ONE_DRIVE_UNFOLLOW_ITEM", "name": "Delete Drive Following", "description": "Tool to unfollow a driveItem by removing it from the user's followed items collection. Use when you need to stop following a file or folder that was previously marked to follow." }, { "slug": "ONE_DRIVE_UPDATE_DRIVE_ITEM_METADATA", "name": "Update Drive Item Metadata", "description": "Tool to update the metadata of a specific item (file or folder) in OneDrive. Use this to rename items, change descriptions, or move items to a new parent folder." }, { "slug": "ONE_DRIVE_UPDATE_DRIVE_ITEMS_PERMISSIONS", "name": "Update Drive Item Permissions", "description": "Tool to update the roles of an existing permission on a OneDrive drive item. Use when you need to change the access level (read, write, owner) for a specific permission on a file or folder." }, { "slug": "ONE_DRIVE_UPDATE_FILE_CONTENT", "name": "Update File Content", "description": "Tool to update an existing file's content in OneDrive. When called without a `file` parameter, creates an upload session and returns its uploadUrl (legacy behavior — caller drives the PUT uploads). When called with a `file`, the action streams the file's bytes in chunks via the upload session and returns the final updated DriveItem. The item's ID is preserved (existing share links remain valid) unless conflict_behavior=rename causes the server to create a new item." }, { "slug": "ONE_DRIVE_UPDATE_SHAREPOINT_ITEM_PERMISSION", "name": "Update SharePoint Item Permission", "description": "Update an application permission on a SharePoint list or list item using Microsoft Graph beta." }, { "slug": "ONE_DRIVE_UPDATE_SHAREPOINT_LIST_ITEM_FIELDS", "name": "Update SharePoint List Item Fields", "description": "Update field values on a SharePoint list item using Microsoft Graph through the OneDrive connection. Use when you need to modify one or more columns on an existing SharePoint list item." }, { "slug": "ONE_DRIVE_UPDATE_WORKBOOK_RANGE", "name": "Update Workbook Range", "description": "Updates a range in a workbook worksheet using Microsoft Graph API. Use this action when you need to write data, formulas, or number formats to specific cells in an Excel workbook stored in OneDrive or SharePoint. The address parameter supports various formats including single cells, cell ranges, entire columns, or entire rows." }, { "slug": "ONE_DRIVE_UPDATE_WORKBOOK_WORKSHEET", "name": "Update Workbook Worksheet", "description": "Updates properties of a worksheet in an Excel workbook stored in OneDrive. Use this action when you need to rename a worksheet, change its position (tab order), or modify its visibility state. At least one of name, position, or visibility must be provided in the request. The worksheet is identified by its ID or display name within the specified workbook." }, { "slug": "ONE_DRIVE_WRITE_WORKBOOK_CELL", "name": "Write Workbook Cell", "description": "Updates the value, formula, or format of a specific cell in an Excel workbook stored in OneDrive. Use this action when you need to write data to a single cell at a specific row and column position. The row and column parameters are 0-indexed (row 0 is the first row, column 0 is column A)." } ], "triggers": [ { "slug": "ONE_DRIVE_BASE_TRIGGER", "name": "Onedrivebasetrigger", "description": "Base trigger for OneDrive changes using Gmail-style state management.\n Subclasses override `filter_changes(...)` to extract only the relevant items." }, { "slug": "ONE_DRIVE_FILE_CREATED_TRIGGER", "name": "OneDrive File Created Trigger", "description": "Triggers when a new file is created in OneDrive.\n Uses Gmail-style state management for reliable duplicate prevention." }, { "slug": "ONE_DRIVE_FILE_UPDATED", "name": "File Updated", "description": "Trigger that fires when a OneDrive file's content or metadata changes.\n Returns file ID, last modified time, and modifier info." }, { "slug": "ONE_DRIVE_FOLDER_CREATED_TRIGGER", "name": "OneDrive Folder Created Trigger", "description": "Triggers when a new folder is created in OneDrive.\n Uses Gmail-style state management for reliable duplicate prevention." }, { "slug": "ONE_DRIVE_ITEM_DELETED_TRIGGER", "name": "OneDrive Item Deleted Trigger", "description": "Triggers when a file or folder is deleted in OneDrive.\n Uses Gmail-style state management for reliable duplicate prevention." }, { "slug": "ONE_DRIVE_ITEM_MOVED_OR_RENAMED_TRIGGER", "name": "Item Moved or Renamed", "description": "Triggers when a file or folder is moved to a different path or renamed in OneDrive.\n Includes both old and new path/name data in the payload." }, { "slug": "ONE_DRIVE_ITEM_UPDATED_TRIGGER", "name": "OneDrive Item Updated Trigger", "description": "Triggers when an existing file or folder is modified in OneDrive.\n Uses Gmail-style state management and only detects actual modifications, not new creations." }, { "slug": "ONE_DRIVE_NEW_VERSION_CREATED_TRIGGER", "name": "New Version Created", "description": "Trigger that fires when a new version of a specified OneDrive file is created." }, { "slug": "ONE_DRIVE_SHARING_PERMISSION_CHANGED_TRIGGER", "name": "Sharing Permission Added or Removed", "description": "Sharing Permission Added or Removed" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "one-drive_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Files.ReadWrite.All,Sites.ReadWrite.All,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } }, { "mode": "S2S_OAUTH2", "name": "one_drive_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & Secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Your Microsoft Entra (Azure AD) tenant ID in GUID format (e.g. \"a6a55c5f-0747-4804-a166-2b5dfc9ace2a\"). Found in Azure Portal > Microsoft Entra ID > Overview > Tenant ID.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "docusign", "name": "DocuSign", "logo": "https://logos.composio.dev/api/docusign", "description": "DocuSign provides eSignature and digital agreement solutions, enabling businesses to send, sign, track, and manage documents electronically", "category": "signatures", "authSchemes": [ "OAUTH2" ], "toolCount": 338, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "DOCUSIGN_ADD_CONTACTS_TO_CONTACTS_LIST", "name": "Add contacts to contacts list", "description": "Adds multiple contacts to a user's contacts list in DocuSign. This endpoint allows for bulk addition of contacts with detailed information, including cloud provider details, phone numbers, email addresses, and notary-specific information. It's particularly useful for populating a user's address book efficiently or synchronizing contacts from external sources. The endpoint supports various contact types, including regular contacts, shared contacts, and signing groups. Use this when you need to add or update multiple contacts simultaneously in a DocuSign account. Note that while it can handle a variety of contact information, it does not provide functionality for removing or deactivating contacts." }, { "slug": "DOCUSIGN_ADD_EMAIL_OVERRIDES_TO_ENVELOPE", "name": "Add Email Overrides To Envelope", "description": "Adds or modifies email override settings for a specific DocuSign envelope, allowing customization of the reply-to email address and name, as well as BCC email addresses for archiving purposes. This endpoint should be used when you need to change email settings for an individual envelope, overriding the account-level configurations. It's particularly useful for setting up specialized archiving or customizing the reply-to information for specific envelopes. Note that these changes only affect email communications that occur after the addition is made, and the BCC feature is limited to users with appropriate permissions. For security reasons, additional signer authentication is recommended when using the BCC for Email Archive feature." }, { "slug": "DOCUSIGN_ADD_ENVELOPE_ATTACHMENTS", "name": "Add envelope attachments", "description": "Adds one or more envelope attachments to a draft or in-process envelope in DocuSign. This endpoint allows developers to include additional files with an envelope that are not converted to PDF and are only accessible through the API. It's useful for attaching supporting documents or metadata files that should not be part of the main signing process. The endpoint supports up to 12 attachments per envelope, with a maximum file size of 50 MB each. Note that these attachments are not visible in the DocuSign web application and are intended for programmatic use only." }, { "slug": "DOCUSIGN_ADD_EXISTING_BRAND_TO_GROUP", "name": "Add existing brand to group", "description": "This endpoint adds one or more existing brands to a specified group in DocuSign. It allows users to associate multiple brands with a group, enabling customized branding for different groups within an account. The endpoint should be used when there's a need to update the brands associated with a particular group, such as when reorganizing branding strategies or expanding brand options for specific user groups. It's important to note that this endpoint only adds existing brands to a group and does not create new brands or modify brand details." }, { "slug": "DOCUSIGN_ADD_FILE_TO_WORKSPACE", "name": "Add file to workspace", "description": "This endpoint adds a file to a specific folder within a DocuSign workspace. It allows users to upload and organize files in their DocuSign account, enabling better document management and collaboration. The method should be used when integrating file upload functionality with DocuSign workspaces, such as when adding new documents to a project or sharing files with team members. It's important to note that this endpoint only handles the file addition process and does not provide functions for file modification or deletion." }, { "slug": "DOCUSIGN_ADD_MEMBERS_TO_SIGNING_GROUP", "name": "Add members to signing group", "description": "This endpoint adds one or more new members to a specified signing group within a DocuSign account. Signing groups allow multiple users to act as potential signers for a document, where any member of the group can sign on behalf of the group. This tool should be used when you need to expand or update the membership of an existing signing group. The endpoint allows you to add up to 50 members to a signing group, which is the maximum limit. When adding members, you must provide their email addresses and usernames. It's important to note that DocuSign recommends separating signer recipients and non-signer recipients (such as carbon copy recipients) into different signing groups to maintain clarity in the signing process." }, { "slug": "DOCUSIGN_ADD_NEW_USERS_TO_A_SPECIFIED_ACCOUNT", "name": "Add new users to a specified account", "description": "This endpoint adds new users to a specified DocuSign account, allowing bulk creation of up to 500 users in a single call. It's ideal for quickly setting up multiple users with customized permissions and settings. The endpoint requires at least a username and email for each user, but supports additional configuration options. It returns detailed information about created users, including IDs and status." }, { "slug": "DOCUSIGN_ADD_OR_UPDATE_ACCOUNT_STAMPS", "name": "Addorupdateaccountstamps", "description": "Add or update account-level stamps (Japanese Hanko-style stamps) in DocuSign. Stamps are pre-configured signature images that can be applied to documents. This action supports creating new stamps or updating existing ones by including the signatureId. **Common use cases:** - Create name stamps (NameHanko format) for quick document signing - Create name+date stamps (NameDateHanko format) for timestamped signatures - Update stamp properties like size, format, or resize permissions - Manage multiple stamps in bulk operations **Required fields for creating stamps:** - signatureName: Display name for the stamp - stampType: Must be 'stamp' (not 'signature') - stampFormat: Either 'NameHanko' or 'NameDateHanko' **To update existing stamps:** Include the signatureId along with updated fields. Note: This manages stamp definitions only, not the actual signing of documents." }, { "slug": "DOCUSIGN_ADD_OR_UPDATE_USER_CUSTOM_SETTINGS", "name": "Add or update user custom settings", "description": "Adds or updates custom user settings for a specified DocuSign user. This endpoint allows for flexible storage and retrieval of user-specific information that can be used in your own system, separate from standard DocuSign account settings. It supports grouping of settings using the X-DocuSign-User-Settings-Key header for more organized management. The endpoint has a 4,000 character limit for all custom settings per user, including XML and JSON structure." }, { "slug": "DOCUSIGN_ADD_OR_UPDATE_USER_SIGNATURE", "name": "Addorupdateusersignature", "description": "This endpoint allows you to add or update a user's signature in DocuSign. It provides comprehensive management of signature properties, including the signature image, font, initials, and stamp details. Use this endpoint when you need to create a new signature for a user or modify an existing one. The endpoint supports various signature types (standard signatures, initials, and stamps) and allows for detailed customization of signature appearance and behavior. It's particularly useful for maintaining up-to-date and personalized signature information for DocuSign users. Note that users can only manage their own signatures; even users with admin rights cannot modify another user's signature settings." }, { "slug": "DOCUSIGN_ADD_PART_TO_CHUNKED_UPLOAD", "name": "Add part to chunked upload", "description": "Adds a chunk or part to an existing chunked upload in DocuSign. This endpoint is used for uploading large files in smaller pieces, allowing for documents that exceed standard file size limits. It should be used after initiating a new chunked upload and uploading the first part. The method is particularly useful for handling large PDFs and other documents. It's important to note that parts should ideally be uploaded in sequential order, and the entire chunked upload must be completed and used within 20 minutes of initialization. This endpoint cannot replace already received parts or add to committed uploads." }, { "slug": "DOCUSIGN_ADD_STEP_TO_ENVELOPE_WORKFLOW", "name": "Add step to envelope workflow", "description": "This endpoint adds a new step to an existing envelope's workflow in DocuSign. It allows for the configuration of complex workflow rules, including delayed routing, conditional recipients, and specific actions based on envelope status or recipient actions. Use this endpoint when you need to modify an envelope's workflow by adding additional steps or rules after the envelope has been created. This is particularly useful for implementing advanced routing logic or adding pauses in the signing process. The endpoint does not modify existing steps in the workflow; it only adds new ones." }, { "slug": "DOCUSIGN_ADD_TEMPLATES_TO_DOCUMENT_IN_ENVELOPE", "name": "Add templates to document in envelope", "description": "This endpoint adds pre-configured templates to a specific document within an existing envelope in DocuSign. It allows you to apply standardized content, such as tabs and anchor text, from templates to documents, streamlining the process of preparing documents for signature. Use this when you need to modify an existing envelope by incorporating template content into its documents. The endpoint is particularly useful for maintaining consistency across documents and automating the addition of necessary fields. Note that applying templates may affect envelope recipients, depending on the template content and the 'preserve_template_recipient' parameter setting. This endpoint does not create new envelopes or documents; it only modifies existing ones." }, { "slug": "DOCUSIGN_ADD_TEMPLATES_TO_ENVELOPE", "name": "Add templates to envelope", "description": "This endpoint adds templates to an existing DocuSign envelope. It's used to apply pre-defined document templates, including content and settings, to standardize workflows. The operation can affect existing recipients based on the 'preserve_template_recipient' parameter. It's suitable for adding comprehensive template changes to an envelope, not for creating new envelopes or minor modifications." }, { "slug": "DOCUSIGN_ADD_USER_SIGNATURE_AND_INITIALS_IMAGES", "name": "Add user signature and initials images", "description": "Add or update a user's signature and initials images in DocuSign. This action creates default signature images based on the user's name and a DocuSign font style. When using JSON content type (as this action does), DocuSign automatically generates signature images based on the signatureName and signatureFont parameters. Supported signature fonts include: 7_DocuSign, 1_DocuSign, 6_DocuSign, 8_DocuSign, 3_DocuSign, Mistral, 4_DocuSign, 2_DocuSign, 5_DocuSign, and Rage Italic. Note: Custom image uploads using base64-encoded data require multipart/form-data content type, which is not supported by this JSON-based action. For custom signature images, you need to use a different method. Important: The userId must match the authenticated user's ID. Users can only modify their own signatures. Each update may generate a new signatureId, so applications should rely on the signature name for consistent identification." }, { "slug": "DOCUSIGN_ADD_USERS_TO_EXISTING_GROUP", "name": "Add users to existing group", "description": "Adds one or more existing DocuSign users to an existing group within a specified account. This endpoint is used to manage group memberships by adding users to a predefined group. It requires the account ID and group ID as path parameters, and accepts a list of user information in the request body. The operation returns detailed information about the added users and the result set. Use this endpoint when you need to update group memberships or organize users into specific groups for access control or administrative purposes. Note that this endpoint only adds existing users to a group; it does not create new users or groups." }, { "slug": "DOCUSIGN_APPLY_ACTION_TO_BULK_SEND_ENVELOPES", "name": "Apply action to bulk send envelopes", "description": "This endpoint allows users to apply specific actions (resend, correct, or void) to all envelopes within a specified DocuSign bulk send batch. It's designed for managing large-scale document signing processes efficiently, enabling users to update the status or take action on multiple envelopes simultaneously. This tool is particularly useful when you need to resend failed envelopes, correct errors in a batch of envelopes, or void an entire batch of envelopes. It should be used carefully, as the actions applied will affect all envelopes in the specified batch." }, { "slug": "DOCUSIGN_CHANGE_USERS_IN_ACCOUNT", "name": "Changeusersinaccount", "description": "This endpoint allows you to update information for one or more users within a DocuSign account. It is used to modify various user attributes such as personal information, settings, permissions, and notification preferences. The endpoint is particularly useful for account administrators who need to manage multiple users or update specific user settings en masse. It can handle updates for a single user or batch updates for multiple users in one request. The endpoint provides granular control over user settings, allowing for detailed customization of user profiles and permissions within the DocuSign environment. However, it's important to note that some settings may be limited by the account's plan or the user's role within the organization." }, { "slug": "DOCUSIGN_CLOSE_USERS_IN_ACCOUNT", "name": "Closeusersinaccount", "description": "Closes one or more users in a DocuSign account, preventing them from accessing account features without permanently deleting them. This endpoint is useful for temporarily disabling user access, such as when an employee is on leave or has changed roles. It allows for easy re-activation of users through the Users:update method. The operation affects multiple users in a single request, streamlining bulk user management tasks." }, { "slug": "DOCUSIGN_COMMIT_CHUNKED_UPLOAD_FOR_ENVELOPES", "name": "Commit chunked upload for envelopes", "description": "This endpoint commits a chunked upload in DocuSign, finalizing the upload process and preparing the uploaded content for use in other API calls. It should be used after all parts of a large document have been uploaded using the chunked upload method. The endpoint performs integrity checks on the uploaded content and, if successful, marks the chunked upload as ready for use. It's crucial to note that once committed, no additional parts can be added to the upload. This method is particularly useful when dealing with large documents that exceed standard upload size limits, allowing for more efficient handling of sizeable files in the DocuSign workflow." }, { "slug": "DOCUSIGN_CONFIGURE_CLOUD_STORAGE_REDIRECT_URL", "name": "Configure cloud storage redirect url", "description": "Configures the OAuth redirect URL for one or more cloud storage providers (Box, Dropbox, GoogleDrive, SkyDrive/OneDrive, Salesforce) for a specific user in DocuSign. This action sets up the authentication flow between DocuSign and cloud storage services by specifying where users should be redirected after authenticating with the cloud storage provider. The redirect URL must be within the docusign.com or docusign.net domains for security. The response includes authentication URLs with the redirect URL appended as a query parameter. Direct users to these URLs to complete the OAuth flow and connect their cloud storage accounts to DocuSign. Use this when integrating cloud storage services to enable users to access documents from external providers within DocuSign workflows." }, { "slug": "DOCUSIGN_CREATE_ACCOUNT_CUSTOM_FIELD", "name": "Create account custom field", "description": "Creates a new custom field at the account level in DocuSign, making it available for all new envelopes associated with the account. This endpoint enables account administrators to define custom fields for enhanced envelope management and grouping. The created custom field can be of type 'text' or 'list', and can be set as required or optional. It's particularly useful for standardizing data collection across all envelopes within an account and can optionally be applied to existing templates." }, { "slug": "DOCUSIGN_CREATE_A_COLLABORATIVE_WORKSPACE", "name": "Create a collaborative workspace", "description": "Creates a new collaborative workspace in DocuSign for document management and team collaboration. A workspace provides a centralized area for file sharing and collaborative work on agreements. Use this when setting up a new project or team workspace. The creator becomes the workspace owner automatically. After creation, you can add members and upload files using separate actions. Minimal required input: accountId and workspaceName. Optional settings include workspaceDescription and commentsAllowed for enabling document comments." }, { "slug": "DOCUSIGN_CREATE_BCC_EMAIL_ARCHIVE_CONFIGURATION", "name": "Create BCC Email Archive Configuration", "description": "Creates a BCC email archive configuration for a DocuSign account, enabling automatic archiving of DocuSign-generated emails. This endpoint allows you to set up a BCC email address that will receive copies of all DocuSign notifications for the specified account. It's particularly useful for organizations that need to maintain comprehensive email records for compliance or auditing purposes. **Key Details:** - Only requires the 'email' parameter - the BCC email address to receive archived emails - Supports up to 5 active and pending email archive addresses per account - Each email address must be added one at a time - After creation, an activation email is sent to the BCC address for confirmation **Important:** The BCC Email Archives feature must be enabled for your DocuSign account before using this action. If not enabled, you'll receive a \"BCC_EMAIL_ARCHIVES_NOT_ACTIVATED\" error. Contact DocuSign support to enable this feature if needed." }, { "slug": "DOCUSIGN_CREATE_BRAND_PROFILES_FOR_ACCOUNT", "name": "Create brand profiles for account", "description": "Creates a new brand profile for a DocuSign account to customize the signing and sending experience with your organization's visual identity and branding elements. This action allows you to define brand properties such as company name, brand languages, colors for UI elements (buttons, headers), and custom landing pages. The accountId is automatically populated from authentication credentials. Brand logos must be uploaded separately using the brand logo management endpoints after creating the brand profile. **Requirements:** The DocuSign account must have 'canSelfBrandSign' or 'canSelfBrandSend' settings enabled. Without these permissions, the API will return a 400 error. Contact your DocuSign administrator to enable branding features if needed. **Typical workflow:** 1) Create brand profile with this action, 2) Upload logos via updateLogo endpoint, 3) Apply brand to envelopes during creation." }, { "slug": "DOCUSIGN_CREATE_BULK_SEND_REQUEST", "name": "Create bulk send request", "description": "Initiates a bulk send process in DocuSign to send a single template or envelope to multiple recipients in a single batch operation. This is ideal for large-scale document distribution scenarios such as sending contracts to numerous clients or company-wide notices. **Prerequisites:** 1. Create a bulk send list first (using createBulkSendList API) with recipient data 2. Ensure you have a template with recipient roles matching the bulk list's roleNames 3. The bulk send list must contain at least one recipient entry **How it works:** - The bulk send list defines recipient data (names, emails, role assignments) - The template defines the document structure and recipient roles - DocuSign creates one envelope per entry in the bulk send list - All envelopes are queued asynchronously for processing **Important:** Test compatibility using createBulkSendTestRequest before sending. The returned batchId can be used to track the bulk send operation status." }, { "slug": "DOCUSIGN_CREATE_BULK_SEND_TEST_REQUEST", "name": "Create bulk send test request", "description": "This endpoint creates a Bulk Send Test Request to validate the compatibility between a bulk send list and an envelope or template for DocuSign's bulk sending feature. It performs comprehensive checks on envelope state, recipients, tabs, and custom fields to ensure a successful bulk send operation. Use this endpoint before initiating an actual bulk send to identify and resolve any potential issues. The test returns a boolean indicating whether the send can proceed, along with detailed validation error information if applicable. This endpoint is essential for maintaining the integrity and efficiency of bulk sending processes in DocuSign." }, { "slug": "DOCUSIGN_CREATE_CONNECT_CONFIGURATION_FOR_ACCOUNT", "name": "Create connect configuration for account", "description": "This endpoint creates a custom Connect configuration for a specified DocuSign account, enabling webhook notifications for envelope and recipient events. It allows users to set up real-time updates for eSignature workflows without the need for polling. The configuration can be customized for different delivery modes, data formats, and event triggers, providing flexibility in how and when notifications are received." }, { "slug": "DOCUSIGN_CREATE_CUSTOM_DOCUMENT_FIELDS_IN_ENVELOPE", "name": "Create custom document fields in envelope", "description": "Creates custom document fields in an existing envelope document within DocuSign. This endpoint allows you to add metadata to specific documents in an envelope, which can be used for tracking, sorting, and reporting purposes. It's particularly useful when you need to associate additional information with a document that isn't captured by standard DocuSign fields. The custom fields are not used by DocuSign for processing but are returned in the envelope status. This endpoint should be used after an envelope has been created and when you need to add or update custom metadata for a specific document within that envelope." }, { "slug": "DOCUSIGN_CREATE_CUSTOM_FIELDS_FOR_ENVELOPE", "name": "Create custom fields for envelope", "description": "This endpoint allows you to create or update custom fields for a specific DocuSign envelope. It is used to add or modify additional metadata to envelopes, which can be utilized for sorting, organizing, searching, and other downstream processes. The endpoint supports both list-type custom fields (with predefined options) and text-type custom fields (for free-form entry). This operation is applicable to draft and in-process envelopes only and should not be used for completed envelopes. Custom fields added through this endpoint will be visible in the Envelope Settings section of the DocuSign console but will not be visible to envelope recipients." }, { "slug": "DOCUSIGN_CREATE_CUSTOM_FIELDS_IN_TEMPLATE_DOCUMENT", "name": "Create custom fields in template document", "description": "Creates custom document fields in an existing template document within DocuSign. This endpoint allows users to add metadata to specific documents in a template, enhancing document management and workflow customization. It is particularly useful for prepopulating custom data fields that will be applied to all new envelopes created using this template. The endpoint requires the account ID, document ID, and template ID to identify the exact document within a specific template. Custom fields are added as name-value pairs, allowing for flexible metadata structuring within the constraints of DocuSign's field limitations." }, { "slug": "DOCUSIGN_CREATE_CUSTOM_TAB_WITH_PROPERTIES", "name": "Createcustomtabwithproperties", "description": "Creates a custom tab with pre-defined properties for use in DocuSign envelopes. This endpoint allows users to define reusable tab types with specific configurations such as font styles, validation patterns, and positioning rules. Custom tabs can be created for various field types including text, checkboxes, radio buttons, and signature fields. This tool is particularly useful for standardizing frequently used tab configurations across multiple documents and improving efficiency in envelope creation." }, { "slug": "DOCUSIGN_CREATE_DOCUMENT_RESPONSIVE_HTML_PREVIEW", "name": "Create Document Responsive HTML Preview", "description": "Creates a responsive HTML preview for a specific document in an envelope. Generates a mobile-friendly preview showing how the document renders on different devices. Useful for testing smart sections, collapsible content, and responsive tables before sending. **Requirements:** Envelope and document must already exist. Use CREATE_ENVELOPE_FROM_TEMPLATE first. **Optional:** Provide HTML definition settings (displayAnchors, source) to customize display. **Returns:** HTML preview of the responsive document version." }, { "slug": "DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE", "name": "Create Envelope From Template", "description": "Creates a signing envelope from a pre-existing DocuSign template. This action maps specific recipients to template roles and creates an envelope, either as a draft (status='created') or sent immediately (status='sent'). Prerequisites: - Use DOCUSIGN_LIST_ALL_TEMPLATES to get template IDs and role names - Role names in template_roles must match template roles exactly (case-sensitive) - Include 'recipients' parameter in list templates to see available role names Common Use Cases: - Send contracts, NDAs, or agreements for electronic signature - Create multi-party approval workflows with sequential signing - Distribute documents to carbon copy recipients Returns envelope_id for tracking and management." }, { "slug": "DOCUSIGN_CREATE_GROUPS_FOR_ACCOUNT", "name": "Creategroupsforaccount", "description": "Creates one or more groups for a specified DocuSign account. This endpoint is used for managing user access and permissions by organizing users into groups. Groups can be associated with permission profiles to streamline user management for large numbers of users. The endpoint accepts an array of group objects, each containing a group name and optionally a permission profile ID. It's particularly useful for setting up new organizational structures, managing template access, or preparing for bulk user management. Note that only the 'groupName' and 'permissionProfileId' properties are used in the request; all other properties in the group objects are ignored. To associate permission profiles with groups, you need to first obtain the permission profile IDs using the AccountPermissionProfiles: list endpoint." }, { "slug": "DOCUSIGN_CREATE_IDPROOF_RESOURCE_TOKEN_FOR_RECIPIENT", "name": "Createidproofresourcetokenforrecipient", "description": "Generates a 2-minute resource token to access recipient identity verification data via DocuSign's ID Evidence API. **Requirements:** Recipient must have completed identity verification (phone auth, ID scan, etc.) during envelope signing. Fails if envelope is draft or verification incomplete. **Usage:** Get token and proof_base_uri, then call ID Evidence API with \"Bearer {token}\" to retrieve verification details (ID scans, selfies, phone records). **Response:** resource_token (expires 2 min), proof_base_uri (API base URL like https://proof-d.docusign.net). Use for compliance/audit to programmatically verify recipient identity data." }, { "slug": "DOCUSIGN_CREATE_NEW_ACCOUNT_PERMISSION_PROFILE", "name": "Createnewaccountpermissionprofile", "description": "This endpoint creates a new permission profile for a DocuSign account, defining specific sets of permissions for user groups. It allows administrators to establish role-based access control within their DocuSign environment. The profile controls a wide range of user capabilities, from basic envelope sending to advanced account management functions. Use this endpoint when setting up new roles or modifying existing permission structures. Note that creating a profile doesn't automatically assign users to it; separate actions are required for user assignment." }, { "slug": "DOCUSIGN_CREATE_NOTARY_JURISDICTION_OBJECT", "name": "Create Notary Jurisdiction", "description": "Registers a notary jurisdiction for the current DocuSign user, enabling electronic notarizations for a specific U.S. state. A user can only have ONE jurisdiction at a time. Required fields: commissionExpiration (MM/DD/YYYY format), commissionId, registeredName, sealType, and jurisdiction details (jurisdictionId, name, county). Seal type must match jurisdiction requirements: some states like California require user-uploaded seals, while others support system-created seals. Supports 24 U.S. jurisdictions (IDs: 5-California, 6-Colorado, 9-Florida, 10-Georgia, 12-Idaho, 13-Illinois, 14-Indiana, 15-Iowa, 17-Kentucky, 23-Minnesota, 25-Missouri, 30-New Jersey, 32-New York, 33-North Carolina, 35-Ohio, 37-Oregon, 38-Pennsylvania, 40-South Carolina, 43-Texas, 44-Utah, 47-Washington, 48-West Virginia, 49-Wisconsin, 62-Florida Commissioner of Deeds)." }, { "slug": "DOCUSIGN_CREATE_OR_UPDATE_USER_AUTHORIZATIONS", "name": "Createorupdateuserauthorizations", "description": "Creates or updates user authorizations in DocuSign, allowing an agent user to perform actions on behalf of a principal user. Grants permissions like Send, Manage, Sign, or Edit. Requirements: principal must be authenticated user or caller must be admin; agent users must be active; principal and agent must differ; agentUser.accountId and agentUser.userId are required. Returns HTTP 201 with results array showing success/error for each authorization attempt." }, { "slug": "DOCUSIGN_CREATE_PREVIEW_OF_RESPONSIVE_HTML", "name": "Create Preview of Responsive HTML", "description": "Creates a preview of the responsive HTML version of a specific template document in DocuSign. This endpoint allows users to visualize how a PDF document will be converted to responsive HTML across various device types before sending it for signing. It's particularly useful for ensuring that template documents are properly formatted for responsive signing, enhancing the signing experience across different devices. The preview can be customized using various display settings and anchors, enabling users to create collapsible sections, responsive tables, and other interactive elements in the signing document." }, { "slug": "DOCUSIGN_CREATE_PREVIEW_OF_RESPONSIVE_HTML_IN_ENVELOPE", "name": "Create Preview of Responsive HTML in Envelope", "description": "Creates a preview of the responsive HTML versions of all documents in an envelope, allowing users to review how PDF documents will appear as responsive HTML across different device types before sending. This endpoint is particularly useful for ensuring document compatibility and readability on various screen sizes and devices, enhancing the signing experience for recipients. It leverages smart sections and display anchors to customize document appearance and behavior, including collapsible sections and responsive tables." }, { "slug": "DOCUSIGN_CREATE_RECIPIENT_MANUAL_REVIEW_LINK", "name": "Create Recipient Manual Review Link", "description": "Creates a URL for manually reviewing a recipient's identity in DocuSign. This endpoint is used when automatic identity verification has failed and manual review is required. It returns a URL that allows the sender to access a page for manually verifying the recipient's ID. This method should only be used for recipients in workflows that support manual review and whose automatic verification has failed with a specific status code. The returned URL is essential for completing the identity verification process in cases where automatic methods were insufficient." }, { "slug": "DOCUSIGN_CREATE_RECIPIENT_PREVIEW_FOR_ENVELOPE", "name": "Createrecipientpreviewforenvelope", "description": "Creates a URL for previewing the recipient's view of a draft envelope or template. This endpoint allows senders to simulate the recipient's experience by generating an embeddable preview URL. It's useful for verifying the appearance and functionality of an envelope before sending it to recipients. The preview can help identify any issues with document layout, field placements, or signing order, ensuring a smooth signing experience for the recipients." }, { "slug": "DOCUSIGN_CREATE_RECIPIENT_VIEW_URL", "name": "Create Recipient View URL", "description": "Creates a URL for embedding the DocuSign recipient view UI within an application, allowing users to sign documents directly in the app. This endpoint is specifically used for envelopes in the 'sent' status and generates a temporary URL that expires after 5 minutes. It provides a seamless way to integrate electronic signature capabilities into your workflow, ensuring a secure and legally binding signing process. The method requires proper authentication of the recipient's identity and offers various customization options for the embedded experience." }, { "slug": "DOCUSIGN_CREATE_SENDER_VIEW_URL_FOR_ENVELOPE", "name": "Create sender view url for envelope", "description": "Creates a URL for the sender view of a DocuSign envelope, enabling the embedding of DocuSign UI within an external application. This endpoint is crucial for integrating envelope sending functionality, allowing users to prepare and send envelopes directly from your application. The returned URL provides a customizable sender view for an envelope in the 'Created' state, with options to tailor the user interface and behavior. It's important to note that the URL must be used immediately after generation and is valid for only one use. The endpoint offers extensive customization options through the 'settings' object, allowing control over UI elements, button behaviors, and access levels. For mobile integrations, especially iOS devices, it's recommended to use a WebView instead of an iframe due to screen space limitations." }, { "slug": "DOCUSIGN_CREATE_SIGNING_GROUP", "name": "Create signing group", "description": "Creates one or more signing groups in a DocuSign account. This endpoint allows account administrators to set up predefined groups of recipients for document signing. Multiple signing groups can be created in a single API call, enhancing efficiency in setting up complex signing workflows. Use this when you need to establish teams or departments that can collectively receive and sign documents, with any member able to sign on behalf of the group." }, { "slug": "DOCUSIGN_CREATE_TEMPLATE_DOCUMENT_CUSTOM_FIELDS", "name": "Create Template Custom Fields", "description": "Creates custom fields on a DocuSign template to capture additional metadata. Custom fields allow you to: - Add dropdown lists (listCustomFields) where senders select from predefined options - Add text fields (textCustomFields) where senders enter free-form text - Set default values and mark fields as required or optional - Control visibility in the envelope creation interface - Integrate with external systems like Salesforce using merge fields These fields are attached to the template and will appear when creating envelopes from that template, allowing senders to provide additional context or metadata before sending documents for signature. Note: You must provide at least one of listCustomFields or textCustomFields." }, { "slug": "DOCUSIGN_CREATE_TEMPLATE_RECIPIENT_PREVIEW_URL", "name": "Create template recipient preview url", "description": "Generate a preview URL showing how a template will appear to recipients. This action creates an embeddable URL that displays a template from the recipient's perspective, allowing senders to verify the signing experience before sending the actual document. This is particularly useful for: - Previewing tab placement and field positions - Validating the recipient workflow and experience - Testing template configuration before production use - Providing a \"preview\" feature in template management interfaces The returned URL can be embedded in an iframe or opened in a new window. The preview is read-only and does not affect the actual template. Note: This is for templates only, not for envelopes or sent documents. Use create_recipient_preview_for_envelope for envelope previews." }, { "slug": "DOCUSIGN_CREATE_TEMPLATE_RESPONSIVE_HTML_PREVIEW", "name": "Create Template Responsive HTML Preview", "description": "Creates a preview of the responsive HTML versions of all documents associated with a DocuSign template. This endpoint enables users to generate and customize the HTML preview of PDF documents across various device types before sending them for signing. It is particularly useful for ensuring that documents are easily readable and signable on different screen sizes and devices. The preview allows for fine-tuning of display settings, anchors, and other responsive elements to optimize the signing experience." }, { "slug": "DOCUSIGN_CREATE_TEMPLATE_WORKFLOW_STEP", "name": "Create Template Workflow Step", "description": "Adds a new workflow step to an existing DocuSign template. This action enables sophisticated document routing automation within templates, including: - Pausing workflows before specific routing steps - Implementing delayed sending with scheduled resume dates - Setting up conditional recipient routing based on form field values - Creating multi-stage approval or review processes The workflow step controls the timing and conditions for sending documents to recipients. Common use cases include approval chains, compliance reviews, and conditional routing based on document data. Note: Only one workflow step type (delayed routing OR recipient routing) can be configured per step. Workflow steps are triggered based on routing order positions within the template." }, { "slug": "DOCUSIGN_CREATE_URLFOR_TEMPLATE_EDIT_VIEW", "name": "Createurlfortemplateeditview", "description": "Creates a URL for embedding the DocuSign Template Edit view within an application. This endpoint enables developers to integrate DocuSign's template creation and editing functionality directly into their applications, allowing users to manage templates without leaving the app environment. The generated URL provides access to the DocuSign Template UI, where users can create, modify, and save templates. This method is particularly useful for applications that need to offer template management capabilities while maintaining a seamless user experience. It's important to note that this endpoint focuses solely on generating the URL for template editing and does not handle the actual template modifications." }, { "slug": "DOCUSIGN_CREATE_USER_AUTHORIZATION_FOR_AGENT_USER", "name": "Create User Authorization For Agent User", "description": "Creates a user authorization in DocuSign, enabling an agent user to perform specific actions on behalf of a principal user within the same account. This endpoint is essential for setting up delegated access, allowing users to share envelope management, signing, or sending capabilities. It's particularly useful for streamlining workflow processes in scenarios where one user needs to act on behalf of another, such as an assistant managing documents for an executive. The authorization can be time-bound and is subject to account-level permissions. Note that only account administrators or the principal user can create these authorizations, and each principal can only share signing permission with one agent user at a time." }, { "slug": "DOCUSIGN_DELETE_ACCOUNT_BRAND", "name": "Delete account brand", "description": "This endpoint deletes a specific brand from a DocuSign account. It should be used when you need to permanently remove a brand configuration from an account, such as when a brand is no longer needed or has been replaced. The operation requires that branding for either signing or sending (or both) is enabled for the account. This is indicated by the account settings 'canSelfBrandSend' or 'canSelfBrandSign' being set to true. The deletion is irreversible, so it should be used with caution. If successful, the brand will be completely removed from the account and can no longer be applied to documents or emails. This endpoint does not return the deleted brand details; it only confirms the successful deletion or returns an error if the operation fails." }, { "slug": "DOCUSIGN_DELETE_ACCOUNT_CUSTOM_FIELD", "name": "Delete account custom field", "description": "Deletes an existing account custom field from a DocuSign account. This endpoint should be used when you need to remove a custom field that is no longer required or relevant for your account. It permanently removes the custom field, so use with caution. The deletion can optionally be applied to templates as well. This operation is part of the account management functionality and affects how custom metadata can be used in future envelope creations." }, { "slug": "DOCUSIGN_DELETE_ACCOUNT_PERMISSION_PROFILE", "name": "Delete account permission profile", "description": "This endpoint deletes a specific permission profile from a DocuSign account. It is used to remove outdated or unnecessary permission profiles, helping to streamline account management. The endpoint requires that the profile being deleted has no associated users, unless they are being reassigned to a new profile. It's particularly useful when restructuring account permissions or during account cleanup processes. The method will fail if there are associated users and no reassignment is specified. It's important to note that this action is irreversible, so caution should be exercised when using this endpoint. This endpoint should not be used for temporary permission changes; instead, it's meant for permanent removal of a permission profile." }, { "slug": "DOCUSIGN_DELETE_ACCOUNT_STAMP", "name": "Delete account stamp", "description": "Deletes a specific account stamp (signature) from a DocuSign account. This endpoint should be used when you need to permanently remove a stamp from an account, such as when it's no longer needed or has been replaced. The operation is irreversible, so use it with caution. It's particularly useful for maintaining account hygiene by removing outdated or unused stamps. Note that this endpoint only deletes the stamp; it does not affect any documents that may have already been signed using this stamp." }, { "slug": "DOCUSIGN_DELETE_BCC_EMAIL_ARCHIVE_CONFIGURATION", "name": "Delete bcc email archive configuration", "description": "This endpoint deletes a BCC (Blind Carbon Copy) email archive configuration from a specified DocuSign account. When invoked, it changes the status of the targeted configuration to 'closed' and immediately stops the archiving of DocuSign-generated email messages to the associated BCC email address. This operation is useful for managing email archiving settings, particularly when an archiving configuration is no longer needed or needs to be replaced. It's important to note that this action is irreversible, and once deleted, the specific configuration cannot be reactivated – a new one would need to be created if archiving is required again in the future. This endpoint should be used cautiously, as it will impact the email archiving process for the account." }, { "slug": "DOCUSIGN_DELETE_BRAND_FROM_GROUP", "name": "Delete Brand from Group", "description": "This endpoint allows users to delete one or more brands from a specified group within a DocuSign account. It is used to manage brand associations with groups, enabling customization of branding for different envelopes and signing experiences. The operation removes the specified brands from the group, updating the group's brand configurations. Use this endpoint when you need to disassociate brands from a particular group, such as during reorganization or brand consolidation processes. Note that this action does not delete the brands from the account entirely, but only removes their association with the specified group." }, { "slug": "DOCUSIGN_DELETE_BRAND_LOGO_BY_TYPE", "name": "Delete Brand Logo By Type", "description": "This endpoint deletes a specific logo from an account brand in DocuSign. It allows users to remove primary, secondary, or email logos associated with their brand, helping maintain brand consistency across DocuSign documents. The endpoint should be used when updating or removing branding elements from a DocuSign account. Note that branding for either signing or sending must be enabled for the account (canSelfBrandSend, canSelfBrandSign, or both must be true) for this endpoint to function properly. This operation is irreversible, so caution should be exercised when using it." }, { "slug": "DOCUSIGN_DELETE_BRAND_PROFILES", "name": "Delete brand profiles", "description": "This endpoint allows you to delete one or more brand profiles from a DocuSign account. It is used to remove custom branding configurations that are no longer needed. The method requires either the 'canSelfBrandSign' or 'canSelfBrandSend' setting to be enabled for the account. It's important to note that this operation is irreversible, so care should be taken when using this endpoint. The response provides detailed information about the deleted brands, including their IDs, names, and associated resources." }, { "slug": "DOCUSIGN_DELETE_CHUNKED_UPLOAD", "name": "Delete chunked upload", "description": "Deletes a chunked upload that has been committed but not yet consumed in the DocuSign system. This endpoint is useful for managing large file uploads and maintaining quota efficiency. It should be used when a chunked upload is no longer needed and hasn't been used in other API calls. The endpoint cannot delete chunked uploads that have already been consumed or those that have expired. It's recommended to explicitly delete unused chunked uploads rather than waiting for automatic expiration to manage your quota effectively. Note that this API is currently in beta status and may be subject to changes." }, { "slug": "DOCUSIGN_DELETE_CONNECT_CONFIGURATION", "name": "Delete connect configuration", "description": "Deletes a specified DocuSign Connect configuration from the given account. This endpoint should be used when you need to remove an existing Connect integration setup. It requires account administrator privileges and that Connect is enabled on the account. The operation is irreversible, so use with caution. This endpoint doesn't return the deleted configuration details; it only confirms successful deletion or returns an error." }, { "slug": "DOCUSIGN_DELETE_CONNECT_FAILURE_LOG_ENTRY", "name": "Delete connect failure log entry", "description": "Deletes one or all Connect failure log entries for a specified DocuSign account. This endpoint is used for maintenance and cleanup of Connect integration logs, allowing account administrators to remove specific failure records or clear all failure logs. It should be used when troubleshooting Connect integration issues or performing routine log management. The endpoint requires account administrator privileges and Connect must be enabled on the account. It's important to note that this operation is irreversible, so care should be taken when deleting log entries, especially when using the 'all' option." }, { "slug": "DOCUSIGN_DELETE_CONNECT_LOG_ENTRIES", "name": "Delete Connect Log Entries", "description": "Deletes Connect log entries for a DocuSign account. This endpoint allows account administrators to manage and clean up Connect event logs, which record webhook delivery attempts and outcomes. **Use Case:** Remove Connect log entries for data management, privacy compliance, or housekeeping purposes. **Requirements:** - Account administrator privileges - Connect must be enabled on the account - Provide a list of log IDs to delete specific entries **Important:** This operation is irreversible. Deleted log entries cannot be recovered. Ensure you have identified the correct log IDs before deletion. Use the list/get Connect logs endpoints first to identify the logs you want to delete. **Note:** The endpoint behavior may vary based on the logIds parameter: - With logIds: Deletes specific log entries - Without logIds: Behavior depends on API implementation (may delete all or return error)" }, { "slug": "DOCUSIGN_DELETE_CONNECT_OAUTH_CONFIGURATION", "name": "Delete connect oauth configuration", "description": "Deletes the Connect OAuth configuration for a specified DocuSign account. This endpoint is used to remove the OAuth settings that allow DocuSign Connect to securely integrate with other applications and send webhook notifications. It should be used when you need to disable or reconfigure the Connect OAuth integration for an account. This operation is irreversible and will immediately stop any active Connect OAuth-based integrations for the specified account. Only account administrators can perform this action, and Connect must be enabled on the account for this endpoint to work. It's important to note that this deletion only affects the OAuth configuration for Connect and does not impact other DocuSign integrations or the account itself." }, { "slug": "DOCUSIGN_DELETE_CONTACT_FROM_ACCOUNT", "name": "Delete contact from account", "description": "Deletes a specific contact from a DocuSign account. This endpoint should be used when you need to remove a contact's information from an account's address book. It requires both the account ID and the specific contact ID to be provided. Upon successful deletion, it returns an updated list of contacts for the account. This operation is irreversible, so it should be used with caution. The endpoint does not provide any confirmation or undo functionality, so ensure the correct contact ID is specified before making the call." }, { "slug": "DOCUSIGN_DELETE_CUSTOM_DOCUMENT_FIELDS", "name": "Delete custom document fields", "description": "Deletes custom document fields from an existing envelope document in DocuSign. This endpoint allows you to remove specific metadata or custom data strings associated with a document within an envelope. It's useful for updating or cleaning up custom information that is no longer relevant or needed. The operation is performed on a specific document within a specific envelope, identified by their respective IDs. Use this endpoint when you need to manage or update the custom fields of a document, ensuring that only necessary and current information is retained." }, { "slug": "DOCUSIGN_DELETE_CUSTOM_DOCUMENT_FIELDS_FROM_TEMPLATE", "name": "Deletecustomdocumentfieldsfromtemplate", "description": "Deletes specified custom document fields from an existing template document in DocuSign. This endpoint is useful for maintaining and updating templates by removing unnecessary or outdated custom fields. It should be used when you need to clean up or modify the structure of a template document. The operation is irreversible, so caution should be exercised when using it. This endpoint only removes custom fields and does not affect other aspects of the template or document." }, { "slug": "DOCUSIGN_DELETE_CUSTOM_FIELDS_IN_TEMPLATE", "name": "Delete custom fields in template", "description": "Deletes specified custom fields from a DocuSign template. This action removes envelope-level custom fields (both list and text types) that are no longer needed. **How it works:** - Specify which custom fields to delete by providing their fieldId values - You can delete multiple list and/or text custom fields in a single request - The template must not be locked by another user or application - Get field IDs using the retrieve template custom fields endpoint **Response:** Returns the list of deleted custom field IDs (not the remaining fields). **Use case:** Useful for maintaining templates by removing outdated custom fields, simplifying template structure, and keeping only relevant metadata fields for new envelopes created from this template. **Note:** This deletes template-level custom fields. For document-level custom fields within a template, use the delete custom document fields endpoint instead." }, { "slug": "DOCUSIGN_DELETE_CUSTOM_TAB_INFORMATION", "name": "Delete custom tab information", "description": "Deletes a specified custom tab from a DocuSign account. This endpoint should be used when you need to remove a custom tab that is no longer needed or is obsolete. It permanently removes the custom tab from the account, so it should be used with caution. The operation requires both the account ID and the specific custom tab ID to ensure precise deletion. This endpoint is particularly useful for maintaining a clean and relevant set of custom tabs in your DocuSign account, especially when managing large numbers of custom fields. Note that this operation cannot be undone, so it's advisable to confirm the deletion with the user before proceeding." }, { "slug": "DOCUSIGN_DELETE_CUSTOM_USER_SETTINGS", "name": "Delete custom user settings", "description": "Deletes specified custom user settings for a DocuSign user by their names. Custom user settings allow flexible storage and retrieval of user-specific information within DocuSign (separate from standard account settings). This endpoint removes one or more custom settings by specifying their names in the customSettings array. **Key Points:** - Specify which settings to delete by providing their names in the customSettings array - If customSettings is omitted, all ungrouped custom settings are deleted - For grouped settings, include the X-DocuSign-User-Settings-Key header with the group name - Users can only access and modify their own custom settings (even admins cannot access other users' settings) - The userId must be a valid user GUID; the special value \"me\" is not supported **Common Use Cases:** - Remove obsolete user preferences or configurations - Clean up user-specific data during account maintenance - Reset custom user settings to defaults" }, { "slug": "DOCUSIGN_DELETE_DELAYED_ROUTING_RULE_FOR_ENVELOPE_STEP", "name": "Delete Delayed Routing Rule For Envelope Step", "description": "This endpoint deletes the delayed routing object for a specific envelope's workflow step in DocuSign. It allows users to remove scheduled delays in the routing process of an envelope. The endpoint should be used when you need to cancel a planned delay in the envelope's workflow, but it cannot be called once the delay is already in progress. After deletion, the workflow step will still contain a 'pause_before' action, requiring manual unpausing of the envelope when the step is reached. For complete removal of the step, use the deleteEnvelopeWorkflowStepDefinition endpoint instead. This tool is crucial for managing and adjusting envelope workflows in DocuSign, particularly when dealing with time-sensitive documents or when workflow changes are necessary." }, { "slug": "DOCUSIGN_DELETE_DELAYED_ROUTING_RULES_FOR_TEMPLATE", "name": "Delete delayed routing rules for template", "description": "Deletes the delayed routing rules for a specific template workflow step in DocuSign. This endpoint should be used when you need to remove timing or conditional routing logic from a template, allowing for immediate progression to the next step in the workflow. It's particularly useful when updating or simplifying complex template workflows. Use with caution as this operation is irreversible and may impact the behavior of documents generated from this template in the future. This endpoint does not affect already sent envelopes or documents." }, { "slug": "DOCUSIGN_DELETE_DRAFT_ENVELOPE_ATTACHMENTS", "name": "Delete draft envelope attachments", "description": "Deletes one or more envelope attachments from a draft envelope in DocuSign. This endpoint allows users to remove attachments that are no longer needed or were added in error before the envelope is sent. It's important to note that this operation only works on draft envelopes and is distinct from managing signer attachments. The endpoint supports deleting multiple attachments in a single request, making it efficient for bulk operations. As this is a beta API, it may be subject to changes in future versions." }, { "slug": "DOCUSIGN_DELETE_ENOTE_CONFIGURATION", "name": "Delete eNote Configuration", "description": "Deletes an existing eNote configuration associated with a specific DocuSign account. This endpoint is part of the ENoteConfigurations API and is currently in beta status. It should be used when you need to remove an eNote configuration that is no longer needed or is incorrect. The operation is irreversible, so caution should be exercised before deletion. This endpoint only deletes the configuration; it does not affect any existing eNotes or other account settings. Be aware that as this is a beta API, it may be subject to changes or instability. Always test thoroughly in a non-production environment before using in critical systems." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_CUSTOM_FIELDS", "name": "Delete Envelope Custom Fields", "description": "This endpoint deletes envelope custom fields for draft and in-process envelopes in DocuSign. It allows users to remove both list custom fields (predefined options) and text custom fields (free-form text) associated with a specific envelope. The operation requires the account ID and envelope ID to identify the target envelope. After deletion, the endpoint returns the updated custom fields structure, reflecting the changes made. This functionality is useful for managing and updating envelope metadata, particularly for sorting, organizing, and searching envelopes or integrating with external systems like Salesforce." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_EMAIL_SETTINGS", "name": "Delete Envelope Email Settings", "description": "Deletes all existing email override settings for a specific envelope in DocuSign. This endpoint reverts the envelope's email configuration back to the account's default settings, affecting only future email communications. It's useful when you need to remove customized email settings for an envelope, such as reply-to address overrides or BCC recipients. The deletion is permanent and cannot be undone, so use with caution. This operation requires appropriate account permissions and should be used when standardizing email communications for an envelope or removing outdated customizations." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_LOCK", "name": "Delete Envelope Lock", "description": "Deletes the lock from a specified envelope, allowing it to be modified again. **Important Requirements:** - Only the user who originally locked the envelope can delete the lock - The lock is automatically released when the lock duration expires - Deleting a lock without the X-DocuSign-Edit header will simply unlock the envelope - To save changes made during the lock period, include the X-DocuSign-Edit header with the lockToken **Use Cases:** - Release an envelope lock after completing edits - Allow other users to modify an envelope - Clean up locks that are no longer needed **Note:** You cannot delete a lock created by another user. The authenticated user must be the same user who created the lock." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_SCHEDULED_SENDING_RULES", "name": "Delete envelope scheduled sending rules", "description": "Deletes the scheduled sending rules for a specific envelope's workflow in DocuSign. This endpoint should be used when you need to cancel or remove previously set rules for scheduled sending of an envelope. It's particularly useful for managing automated document workflows where timing adjustments are necessary. The operation is irreversible and should be used with caution. Importantly, this endpoint cannot be called once the scheduled sending countdown has begun, limiting its use to the period before the scheduled send time approaches. This tool helps in maintaining flexibility in document scheduling within the DocuSign system." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_TRANSFER_RULE", "name": "Delete envelope transfer rule", "description": "Deletes a specific envelope transfer rule from a DocuSign account. This endpoint allows account administrators to remove previously created rules that automatically transfer ownership of envelopes between users. It should be used when a transfer rule is no longer needed or requires updating. The operation is permanent and cannot be undone, so caution should be exercised. This endpoint requires administrator privileges and the \"Transfer Custody\" feature to be enabled for the account. It will not provide information about the deleted rule or affect existing transferred envelopes." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_WORKFLOW_DEFINITION", "name": "Delete envelope workflow definition", "description": "This endpoint deletes the workflow definition for a specified envelope in DocuSign. It's used to remove any scheduled or automated processes associated with the envelope, such as delayed sending or routing. When called, it cancels any scheduled send and resets the envelope status to 'created'. This is useful for modifying envelopes that were set up with automated workflows but now require changes. After deletion, to send the envelope, you must update its status to 'sent' using a separate Envelopes::Update method. Use this endpoint cautiously, as it will remove all workflow settings for the envelope and cannot be undone." }, { "slug": "DOCUSIGN_DELETE_ENVELOPE_WORKFLOW_STEP", "name": "Delete envelope workflow step", "description": "Deletes a specific workflow step from an envelope in DocuSign. This endpoint allows you to remove a single step from an envelope's workflow definition, potentially altering the envelope's processing lifecycle. Use this when you need to modify an envelope's workflow by removing unnecessary or outdated steps. It's particularly useful for simplifying complex workflows or correcting mistakenly added steps. Be cautious when using this endpoint, as deleting a workflow step is irreversible and may impact the envelope's processing sequence. Ensure you have the correct workflowStepId before proceeding with the deletion to avoid unintended consequences." }, { "slug": "DOCUSIGN_DELETE_EXISTING_WORKSPACE_LOGICALLY", "name": "Delete existing workspace logically", "description": "Marks a DocuSign workspace as deleted by changing its status to \"status_deleted\". This is a logical deletion that makes the workspace inaccessible to users but preserves the workspace data in the system. The workspace will no longer appear in active workspace lists and users cannot access its files or collaborate within it. Required: workspaceId (the accountId is automatically populated from auth metadata) Returns: Full workspace details including the updated status \"status_deleted\", workspace name, description, creation date, last modified date, and account billing info. Use case: Remove a workspace from active use when a project ends or team is dissolved, while retaining the workspace data for potential recovery or compliance purposes. Note: Once deleted, the workspace cannot be accessed through normal operations. Attempting to delete an already deleted workspace will result in a 400 error." }, { "slug": "DOCUSIGN_DELETE_MEMBERS_FROM_SIGNING_GROUP", "name": "Delete members from signing group", "description": "Removes one or more members from a specified DocuSign signing group. This endpoint allows you to manage the composition of your signing groups by deleting users who no longer need access. It should be used when you want to remove specific individuals from a signing group, such as when an employee leaves the organization or changes roles. The endpoint requires the account ID and signing group ID to identify the correct group, and accepts a list of users to be removed. It's important to note that this operation is irreversible, so care should be taken to ensure the correct users are being removed. This endpoint does not provide the ability to add new members or modify existing member information." }, { "slug": "DOCUSIGN_DELETE_MULTIPLE_CONTACTS_FROM_ACCOUNT", "name": "Deletemultiplecontactsfromaccount", "description": "Deletes multiple contacts associated with a specific DocuSign account. This endpoint allows for bulk removal of contacts from an account's address book, streamlining contact management operations. It's particularly useful for cleaning up outdated or unnecessary contacts, or when reorganizing large contact lists. The endpoint accepts a list of contact IDs and returns details of the deleted contacts or error information if the deletion was unsuccessful for any contact. Note that this operation is irreversible, so it should be used with caution. It's recommended to verify the contacts to be deleted before making the API call." }, { "slug": "DOCUSIGN_DELETE_NOTARY_JURISDICTION", "name": "Delete notary jurisdiction", "description": "Deletes a specified notary jurisdiction from the DocuSign system. This endpoint should be used when you need to remove a notary jurisdiction from your DocuSign account, typically when a notary is no longer active in a particular jurisdiction or when correcting erroneously added jurisdictions. The operation is irreversible, so it should be used with caution. It's important to note that this endpoint only deletes the jurisdiction and does not affect the notary's overall status or their ability to operate in other jurisdictions. The endpoint supports a limited set of jurisdictions, primarily U.S. states, and will return an error if an unsupported jurisdiction ID is provided. After successful deletion, any attempts to use the deleted jurisdiction for notary activities will fail." }, { "slug": "DOCUSIGN_DELETE_ONE_OR_MORE_SIGNING_GROUPS", "name": "Delete one or more signing groups", "description": "Deletes one or more signing groups from a specified DocuSign account. This endpoint allows for bulk deletion of signing groups, which are collections of users authorized to sign documents on behalf of the group. It should be used when you need to remove outdated or unnecessary signing groups from your account. The operation is irreversible, so caution should be exercised when using this endpoint. It's important to note that this action does not delete the individual users within the groups, only the group associations." }, { "slug": "DOCUSIGN_DELETE_PAGE_FROM_DOCUMENT_IN_ENVELOPE", "name": "Delete page from document in envelope", "description": "Deletes a specific page from a document within a DocuSign envelope. This endpoint removes a single page from a document based on its page number. The page is permanently deleted and this operation cannot be undone. **Important Requirements:** - The envelope must be in draft status (not yet sent) - The document must have multiple pages (cannot delete the only page) - Page numbers start at 1 for the first page - The specified page number must exist in the document **Use Cases:** - Removing incorrect or unnecessary pages from documents before sending - Cleaning up documents that were added to an envelope in error - Modifying multi-page documents during envelope preparation **Note:** This operation is destructive and permanent. Always verify the correct page number before deletion. Once sent, envelopes typically cannot have pages deleted due to audit trail requirements." }, { "slug": "DOCUSIGN_DELETE_PAGE_FROM_TEMPLATE_DOCUMENT", "name": "Delete page from template document", "description": "Deletes a specific page from a document within a DocuSign template. This endpoint allows you to remove a single page from a template document, which can be useful for updating or refining existing templates. Use this when you need to modify the structure of a template by removing unnecessary or outdated pages. Note that this operation is irreversible, so ensure you have a backup or are certain about deleting the page. This tool only deletes a single page at a time and does not provide options for bulk page deletion or document replacement." }, { "slug": "DOCUSIGN_DELETE_POWER_FORM_BY_ID", "name": "Delete powerform by id", "description": "This endpoint deletes a specific PowerForm identified by its unique ID within a DocuSign account. PowerForms are pre-configured document templates that can be accessed via a custom URL, allowing for easy collection of signatures and form data. Use this endpoint when you need to permanently remove a PowerForm from your account, such as when it's no longer needed or has been replaced by a new version. Be cautious when using this endpoint, as the deletion is irreversible and will remove all associated data and access to the PowerForm. Ensure you have the correct PowerForm ID and account context before proceeding with the deletion to avoid unintended data loss. This operation is typically used for maintenance, compliance, or organizational purposes within your DocuSign account management workflow." }, { "slug": "DOCUSIGN_DELETE_REQUEST_LOG_FILES", "name": "Delete request log files", "description": "Deletes all request log files for the authenticated user in DocuSign. This endpoint clears the diagnostic log buffer by removing all current request/response log entries. API request logging in DocuSign captures up to 50 request/response pairs for troubleshooting purposes. Use this action to clear the log buffer after downloading logs or when the buffer is full (logging is automatically disabled when the 50-entry limit is reached). Important notes: - Only logs for the authenticated user are deleted (not account-wide logs) - Deleted logs cannot be recovered - download logs first if needed - The operation requires no parameters and returns an empty response on success - Private information (passwords, integration keys) is never logged, even before deletion - Use with the DOCUSIGN_TOGGLE_API_REQUEST_LOGGING action to manage logging settings Returns an HTTP 204 No Content response on successful deletion." }, { "slug": "DOCUSIGN_DELETE_SCHEDULED_SENDING_RULES", "name": "Delete scheduled sending rules", "description": "Deletes all scheduled sending rules associated with a specific DocuSign template's workflow. This endpoint should be used when you need to remove automated sending schedules for a template, reverting it to manual sending only. It's particularly useful for updating or removing outdated scheduling configurations. Be cautious when using this endpoint, as it permanently removes all scheduled sending rules for the specified template, and this action cannot be undone. Ensure that you have the correct template ID and that removing the scheduled sending is indeed the intended action, as it may impact automated document workflows within your organization." }, { "slug": "DOCUSIGN_DELETE_SIGNATURE_FOR_CAPTIVE_RECIPIENTS", "name": "Delete signature for captive recipients", "description": "Deletes the signature for one or more captive (embedded) recipients in DocuSign. This endpoint is primarily used for testing and development purposes to reset signatures associated with embedded recipients (identified by clientUserId). After deletion, a new signature can be created the next time the clientUserId is used in an embedded signing session. **Use Cases:** - Testing embedded signing workflows repeatedly with the same test user - Resetting test data in development environments - Clearing signature state before re-testing signing ceremonies **Important Notes:** - This operation permanently removes signature data - Not intended for regular production use - use with caution - The recipients must have been created as embedded/captive recipients (with clientUserId set) - The recipientPart parameter must be set to \"signature\" (lowercase) **Required Information:** - Account ID (automatically populated) - Client User ID of the captive recipient - Email address of the recipient - Full name of the recipient" }, { "slug": "DOCUSIGN_DELETE_SPECIFIC_CONNECT_LOG_ENTRY", "name": "Delete specific connect log entry", "description": "Deletes a specified entry or all entries from the DocuSign Connect log for a given account. This endpoint is crucial for managing and cleaning up Connect logs, which contain records of events and updates in eSignature workflows. It should be used when you need to remove specific log entries, perhaps for data management or privacy reasons, or when you want to clear all logs for an account. The operation requires account administrator privileges and the Connect feature must be enabled on the account. It's important to note that this action is irreversible, so use it with caution, especially when deleting all logs." }, { "slug": "DOCUSIGN_DELETE_SPECIFIED_ACCOUNT", "name": "Delete specified account", "description": "Deletes (closes) a specified DocuSign account. This operation permanently closes the account and can only be performed by an account admin. Once an account is closed, it cannot be reopened by users and must be reactivated by DocuSign support. Use this endpoint with caution as it has significant implications for access to documents and user data associated with the account. The optional redact_user_data parameter allows for additional data privacy measures during deletion. This endpoint should be used when an organization needs to completely shut down their DocuSign account, such as when ceasing operations or consolidating multiple accounts." }, { "slug": "DOCUSIGN_DELETE_STAMP_IMAGE_FOR_ACCOUNT", "name": "Delete stamp image for account", "description": "This endpoint deletes a specific stamp image associated with an account signature in DocuSign. It is used to remove the visual representation of a stamp from a user's account, which can be useful for updating or removing outdated stamps. The endpoint requires the account ID, the type of image being deleted (stamp, signature, or initials), and the specific signature ID. It's important to note that this action is irreversible, so it should be used with caution. The endpoint will return detailed information about the signature after deletion, including any remaining associated images and properties. This tool should be used when a user needs to remove a stamp image from their account, but not when they want to modify or update an existing stamp image." }, { "slug": "DOCUSIGN_DELETE_TEMPLATE_FROM_ENVELOPE_DOCUMENT", "name": "Deletetemplatefromenvelopedocument", "description": "Deletes a template from a document within an envelope. Removes a previously applied template from a specific document. This is useful when: - Replacing one template with another - Reverting a document to its original state - Correcting template application errors ⚠️ This operation is permanent and cannot be undone. Requirements: - The envelope must be in a modifiable state (draft, created, or sent) - The template must have been previously applied to the document - You need the envelope ID, document ID, and template ID" }, { "slug": "DOCUSIGN_DELETE_TEMPLATE_LOCK", "name": "Delete template lock", "description": "Deletes the lock from a specified DocuSign template, releasing it for editing by others. **Important Requirements:** - The lock token is required to authenticate ownership of the lock - Only the user/application that created the lock can delete it - The lock is automatically released when the lock duration expires - The lock token is automatically added to the X-DocuSign-Edit header **Use Cases:** - Release a template lock after completing edits - Allow other users to modify a template that you previously locked - Clean up locks that are no longer needed before they expire naturally **Security Note:** You cannot delete a lock created by another user. The authenticated user must be the same user who created the lock, verified via the lock token." }, { "slug": "DOCUSIGN_DELETE_TEMPLATE_WORKFLOW_STEP", "name": "Delete template workflow step", "description": "Deletes a specific workflow step from a template's workflow definition in DocuSign. This endpoint allows users to customize and refine their document workflows by removing individual steps from existing templates. It should be used when modifying the structure of a template's workflow, such as removing an unnecessary approval step or simplifying the signing process. The operation is permanent and cannot be undone, so users should exercise caution when deleting workflow steps. This endpoint is particularly useful for maintaining and optimizing document workflows in response to changing business processes or requirements." }, { "slug": "DOCUSIGN_DELETE_USER_AUTH_FOR_CLOUD_STORAGE_PROVIDERS", "name": "Deleteuserauthforcloudstorageproviders", "description": "This endpoint deletes the user authentication information for one or more cloud storage providers associated with a specific DocuSign user account. It's used to revoke access to connected cloud storage services, requiring the user to re-authenticate the next time they attempt to access these providers through DocuSign. This operation is particularly useful for managing security, updating integrations, or removing unused cloud storage connections. The endpoint requires specific account and user identifiers and accepts a list of storage providers to be affected. It's important to note that this action only removes the authentication link within DocuSign and does not affect the user's actual account with the cloud storage provider." }, { "slug": "DOCUSIGN_DELETE_USER_AUTHORIZATION", "name": "Delete user authorization", "description": "Deletes a specific user authorization within the DocuSign system. This endpoint is used to revoke or remove permissions previously granted to a user. It requires either account administrator privileges or being the principal user of the specified authorization. The operation is irreversible, so it should be used cautiously. This tool is particularly useful for managing access control and maintaining security by removing outdated or unnecessary user permissions. It does not provide information about existing authorizations or create new ones; it solely focuses on deletion." }, { "slug": "DOCUSIGN_DELETE_USER_AUTHORIZATIONS", "name": "Deleteuserauthorizations", "description": "The DeleteUserAuthorizations endpoint is used to remove one or more user authorizations for a specified principal user within a DocuSign account. This tool allows account administrators or the principal user themselves to revoke specific permissions or access rights previously granted to the user. It's particularly useful for managing user access control, updating user roles, or removing outdated permissions. The endpoint requires the account ID and user ID to be specified, along with a list of authorization IDs to be deleted. It returns a detailed response indicating the success or failure of each deletion attempt, including any error messages. This endpoint should be used cautiously as it directly impacts user access within the DocuSign system." }, { "slug": "DOCUSIGN_DELETE_USER_CLOUD_STORAGE_AUTHENTICATION", "name": "Delete user cloud storage authentication", "description": "This endpoint deletes the user authentication information for a specified cloud storage provider in DocuSign. It's used to remove the stored credentials that allow a user to access their cloud storage within the DocuSign platform. After deletion, the next time the user attempts to access this cloud storage provider through DocuSign, they will need to go through the full authentication process again. This endpoint is particularly useful for security purposes, such as when you need to revoke access or troubleshoot authentication issues. It's important to note that this operation only affects the specified user and cloud storage provider combination, and does not impact other users or other cloud storage integrations for the same user." }, { "slug": "DOCUSIGN_DELETE_USER_GROUP", "name": "Deleteusergroup", "description": "Deletes one or more existing user groups from a specified DocuSign account. This endpoint should be used when you need to remove user groups that are no longer needed or have become obsolete. It requires the account ID and the group ID(s) of the group(s) to be deleted. The operation is irreversible, so use it with caution. This endpoint only deletes the group itself and does not affect the individual users who were members of the group. After deletion, any permissions or settings associated with the group will no longer apply to its former members." }, { "slug": "DOCUSIGN_DELETE_USER_INITIALS_OR_SIGNATURE_IMAGE", "name": "Delete user initials or signature image", "description": "This endpoint deletes a specified initials image or signature image for a user in DocuSign. It allows users to remove either their initials image or signature image from their DocuSign account. The endpoint should be used when a user wants to update or remove their existing signature or initials image. It's important to note that this endpoint can only delete one type of image per call - to delete both initials and signature images, the endpoint must be called twice. The endpoint requires user authentication and can only be used to delete the authenticated user's own images. The response includes detailed information about the user's signature, including creation date, image URIs, and signature properties." }, { "slug": "DOCUSIGN_DELETE_USER_PROFILE_IMAGE", "name": "Delete user profile image", "description": "Deletes the profile image of a specified user within a DocuSign account. This endpoint should be used when a user wants to remove their current profile picture from their DocuSign account. It's important to note that this operation can only be performed by the user on their own profile; even users with admin rights cannot delete another user's profile image. The endpoint requires both the account ID and the user ID to be specified, ensuring that the operation is performed on the correct user within the correct account. After successful deletion, the user's profile will no longer have an associated image. This endpoint does not provide the ability to upload a new image; it only removes the existing one." }, { "slug": "DOCUSIGN_DELETE_USERS_FROM_GROUP", "name": "Delete users from group", "description": "Deletes one or more users from a specified group within a DocuSign account. This endpoint allows for bulk removal of users from a group, streamlining group management operations. It requires the account ID, group ID, and a list of users to be deleted. The endpoint is useful for maintaining group memberships, such as when employees leave a company or change roles. It returns detailed information about the deleted users and the operation's success. Note that this operation permanently removes users from the specified group and should be used cautiously." }, { "slug": "DOCUSIGN_DELETE_WORKFLOW_DEFINITION_FOR_TEMPLATE", "name": "Delete workflow definition for template", "description": "Deletes the workflow definition associated with a specific template in DocuSign. This endpoint is used to remove any existing workflow settings from a template, such as scheduled sending or delayed routing. It's particularly useful when you need to reset a template's workflow or prepare it for new workflow configurations. The operation is idempotent, meaning it will return a successful response even if the template doesn't have a workflow definition. This feature allows for safe, repeated calls without causing errors." }, { "slug": "DOCUSIGN_DELETE_WORKSPACE_FILES_OR_FOLDERS", "name": "Delete workspace files or folders", "description": "This endpoint allows for the deletion of one or more files or sub-folders from a DocuSign workspace folder or root. It's used to remove unwanted or obsolete items from a workspace, helping to maintain organization and manage storage. The operation can handle bulk deletions, making it efficient for cleaning up multiple items at once. It's important to note that this action is irreversible, so users should exercise caution when selecting items for deletion. The workspace must have an 'active' status for this operation to succeed. This endpoint should not be used for temporary file management or as a means of archiving, as deleted items cannot be recovered through the API." }, { "slug": "DOCUSIGN_DEPRECATED_ENDPOINT_FOR_TAB_BLOB", "name": "Deprecated endpoint for tab blob", "description": "This deprecated endpoint is used to update tab-related data (tab blobs) within a specific envelope in a DocuSign account. It is important to note that this endpoint should not be used in new integrations or applications due to its deprecated status. The endpoint requires both an account identifier and an envelope identifier to target the correct set of tabs for updating. While it can modify tab data, the exact nature of the modifications and the format of the tab blob are not specified in the provided schema. The endpoint returns a simple success response or an error response with details if the operation fails. Developers should seek alternative, supported methods for managing tabs in DocuSign envelopes." }, { "slug": "DOCUSIGN_EXPORT_BRAND_TO_XMLFILE", "name": "Exportbrandtoxmlfile", "description": "Exports a DocuSign brand's configuration as an XML string. Use this action to retrieve comprehensive brand data including brand ID, name, company name, color scheme (background/text colors), logos (Base64-encoded), language settings, and custom links/landing pages. The XML format makes it suitable for backup, analysis, migration, or integration with other systems. Note: This operation requires branding to be enabled for the account (canSelfBrandSend or canSelfBrandSign must be true). Not all brands can be successfully exported - if a brand returns a 400 error, it may lack the necessary configuration or permissions for export." }, { "slug": "DOCUSIGN_FETCH_RECIPIENT_NAMES_FOR_EMAIL", "name": "Fetch Recipient Names For Email", "description": "Retrieves a list of all names associated with a specified email address in DocuSign. This endpoint is useful for identifying multiple recipients or name variants linked to a single email. It can be used to verify recipient information before sending documents for signature or to manage recipient data in your DocuSign integration. The endpoint returns not only the names but also indicates if the email is used by multiple users and if new names can be added to it. This information is valuable for maintaining accurate recipient records and ensuring proper document routing in complex signing scenarios." }, { "slug": "DOCUSIGN_GENERATE_EDIT_VIEW_URLFOR_ENVELOPE", "name": "Generateeditviewurlforenvelope", "description": "Generates a URL for accessing and editing an existing envelope within the DocuSign UI, allowing for embedded editing functionality in external applications. This endpoint is identical to the createSender endpoint and is recommended to be replaced by it. The generated URL provides a customizable view for editing envelope details, recipients, and documents." }, { "slug": "DOCUSIGN_GENERATE_ENVELOPE_CORRECTION_URL", "name": "Generateenvelopecorrectionurl", "description": "Generates a URL that allows embedding the envelope correction view of the DocuSign UI within an application. This endpoint enables customization of the correction view appearance and functionality through query parameters. The returned URL provides temporary, one-time access to the envelope correction interface, allowing users to modify and update envelope details securely within your application. **Important Requirements:** - The envelope must be in 'sent' or 'delivered' status (not draft/created) - The user must have permission to correct envelopes (sender or shared access) - A returnUrl is required to redirect users after completing corrections - The correction view is used for envelopes already in the signing workflow **Note:** For draft envelopes, use the sender view or edit view instead." }, { "slug": "DOCUSIGN_GENERATE_RECIPIENT_SHARED_VIEW_URL", "name": "Generate Recipient Shared View URL", "description": "Generates a URL for embedding the DocuSign recipient view of a shared envelope in your application. IMPORTANT: This endpoint requires the envelope to be explicitly shared with users on the same DocuSign account. The envelope must be shared first using DocuSign's envelope sharing feature. Required: envelopeId (shared envelope), recipientId (from envelope), userId (account member with shared access), authenticationMethod (default: 'None'). Use for team collaboration, delegation, and administrative support workflows. Not recommended for mobile iframes; use WebView on iOS instead." }, { "slug": "DOCUSIGN_GET_ACCOUNT_BILLING_CHARGES_LIST", "name": "Get account billing charges list", "description": "Retrieves a detailed list of recurring and usage charges for a specified DocuSign account. This endpoint provides comprehensive information about the account's billing structure, including charge names, types, pricing, and usage quantities for various DocuSign services. It's particularly useful for account administrators to analyze current usage, understand the pricing structure, and make informed decisions about service utilization. The response includes data on charges such as envelope usage, seat allocations, and additional services like ID checks or in-person signings. Note that this endpoint requires account administrator privileges and does not provide historical billing data or future projections." }, { "slug": "DOCUSIGN_GET_ACCOUNT_PASSWORD_RULES", "name": "Get account password rules", "description": "Retrieves the current password rules and security settings for a specified DocuSign account. This endpoint provides detailed information about password expiration policies, lockout durations, password strength requirements, and security question configurations. It is useful for account administrators to review and understand the current security posture of their DocuSign account. The retrieved information can be used to ensure compliance with organizational security policies or to plan password policy updates. This endpoint does not modify any settings; it is for informational purposes only." }, { "slug": "DOCUSIGN_GET_ACCOUNT_STAMP_IMAGE", "name": "Get account stamp image", "description": "Retrieves the image file for a specific account stamp, signature, or initials in DocuSign. This endpoint allows users to obtain the visual representation of stamps or signatures associated with their DocuSign account. It's particularly useful when you need to display or embed these images in other documents or applications. The endpoint returns the actual image file in GIF format, not just metadata. It supports retrieving different types of images (stamp, signature, or initials) and offers an option to include or exclude the chrome (frame) around the image." }, { "slug": "DOCUSIGN_GET_AGENT_USER_AUTHORIZATIONS", "name": "Get Agent User Authorizations", "description": "Returns the authorizations for which the specified user is the agent user. An agent user can act on behalf of other users (principal users) in the account. This endpoint retrieves the list of principal users and their authorization details, including permissions like Send, Manage, Sign, and Edit. Supports filtering by permission level, active status, and pagination for large result sets." }, { "slug": "DOCUSIGN_GET_BCC_EMAIL_ARCHIVE_CONFIGURATIONS", "name": "Get bcc email archive configurations", "description": "Retrieves a list of BCC (Blind Carbon Copy) email archive configurations associated with a specified DocuSign account. This endpoint allows users to fetch details about email addresses used for archiving DocuSign-generated emails. It supports pagination for large result sets and provides comprehensive information about each BCC email archive configuration, including its status, creation date, and associated user details. This tool is useful for auditing or managing BCC email archiving settings within a DocuSign account." }, { "slug": "DOCUSIGN_GET_BCCEMAIL_ARCHIVE_HISTORY", "name": "Get BCC Email Archive History", "description": "Retrieves the history of changes made to a specific BCC email archive configuration for a DocuSign account. This endpoint allows users to track modifications, including creation, updates, and closure of email addresses used for archiving DocuSign-generated emails. It provides detailed information about each change, including who made the change, when it was made, and the nature of the change. The endpoint supports pagination for efficient retrieval of large result sets." }, { "slug": "DOCUSIGN_GET_BRAND_LOGO_BY_TYPE", "name": "Get brand logo by type", "description": "Retrieves a specific logo used in a brand for a DocuSign account. This endpoint allows you to fetch the image file for a primary, secondary, or email logo associated with a particular brand in your DocuSign account. It's useful for maintaining consistent branding across DocuSign documents and communications. The endpoint requires branding to be enabled for the account (either for signing, sending, or both). Use this when you need to display or verify the current logo for a specific brand and logo type within your DocuSign integration." }, { "slug": "DOCUSIGN_GET_BRANDS_INFORMATION_FOR_GROUP", "name": "Get brands information for group", "description": "Retrieves detailed brand information associated with a specific group within a DocuSign account. This endpoint provides a comprehensive view of the brand settings, including default brands for recipients and senders, as well as a list of all available brands with their properties. It's particularly useful for administrators managing multiple brands across different groups within an organization. The endpoint should be used when there's a need to review or audit brand assignments, customize group-specific branding, or prepare for brand updates within a group context. It does not modify any brand settings but offers a read-only view of the current brand configuration for the specified group." }, { "slug": "DOCUSIGN_GET_BULK_SEND_BATCH_STATUS", "name": "Get bulk send batch status", "description": "Get the status and progress of a DocuSign bulk send batch operation. This action retrieves comprehensive status information for a bulk send batch, including counts of sent, queued, and failed envelopes. Use this to monitor the progress of large-scale document distribution operations. **Key Response Fields:** - batchSize: Total envelopes in the batch - sent: Successfully sent envelopes - queued: Envelopes still being processed - failed: Failed envelope count - bulkErrors: Details about any failures **Usage Notes:** - Bulk send processing is asynchronous; poll this endpoint to check progress - The batch is complete when batchSize equals (sent + failed) - Recommended polling interval: 30-60 minutes for large batches - Use the bulkSendBatchId returned from creating a bulk send request" }, { "slug": "DOCUSIGN_GET_BULK_SEND_LISTS_INFORMATION", "name": "Get bulk send lists information", "description": "Retrieves a list of Bulk Send Lists belonging to the current user in a specified DocuSign account. This endpoint provides basic information about each Bulk Send List, including its unique identifier, creator, creation date, and name. It is particularly useful for managing and tracking bulk send operations, allowing users to get an overview of their available Bulk Send Lists. This tool should be used when you need to inventory or manage Bulk Send Lists for high-volume document distribution. It does not provide detailed information about the contents of each list or allow for modification of the lists. The response is limited to basic summary information and does not include the actual recipients or documents associated with each list." }, { "slug": "DOCUSIGN_GET_DOCUSIGN_ACCOUNT_CONTACTS", "name": "Get docusign account contacts", "description": "Retrieves detailed information about a specific contact from a DocuSign account's address book. Use this action when you need to look up a contact's details including their name, email addresses, phone numbers, organization, notary certifications, and signing group associations. Requires the contact's unique ID which can be obtained from listing contacts or previous operations. The contact data can be sourced from the default DocuSign address book or connected cloud storage providers like DocuSign Rooms. Note: Phone numbers for shared contacts may have limited visibility to users other than the contact creator." }, { "slug": "DOCUSIGN_GET_DOWNGRADE_PLAN_INFO_FOR_ACCOUNT", "name": "Get Downgrade Plan Info For Account", "description": "Retrieves detailed billing information related to a downgrade request for a specific DocuSign account. This endpoint provides essential data about the requested downgrade plan, including the new plan details, payment method, effective date, and current status of the downgrade request. It should be used when managing account billing changes, specifically when an account holder has initiated or is considering a plan downgrade. The tool is particularly useful for account administrators or billing departments to review and process downgrade requests. Note that this endpoint only provides information about existing downgrade requests and does not initiate new downgrades or make changes to the account's current plan." }, { "slug": "DOCUSIGN_GET_ELECTRONIC_DISCLOSURE_FOR_RECIPIENT", "name": "Get Electronic Disclosure for Recipient", "description": "Retrieves the HTML-formatted Electronic Record and Signature Disclosure (ERSD) for a specific envelope recipient in DocuSign. This endpoint allows you to obtain the customized disclosure that may differ from the account-level disclosure based on the signing brand applied to the envelope and the recipient's language settings. It is particularly useful when you need to present the exact disclosure that a recipient will see before they sign a document, ensuring compliance with electronic signature regulations and providing transparency in the signing process." }, { "slug": "DOCUSIGN_GET_ELECTRONIC_RECORD_AND_SIGNATURE_DISCLOSURE", "name": "Getelectronicrecordandsignaturedisclosure", "description": "Retrieves the HTML-formatted Electronic Record and Signature Disclosure (ERSD) associated with a specific DocuSign account. This endpoint allows you to fetch the current version of the ERSD, which is crucial for obtaining a consumer's consent to receive notices and disclosures electronically. It supports multiple languages through the 'langCode' parameter, enabling you to retrieve the disclosure in various supported languages or automatically detect the user's browser language. This tool is particularly useful when setting up new accounts, updating disclosures, or ensuring compliance with multi-language requirements. Note that while it retrieves the default English disclosure by default, custom disclosures in different languages can be accessed if they have been created for the account. The response includes comprehensive details about the disclosure, including withdrawal options, company information, and the full HTML-formatted ERSD text." }, { "slug": "DOCUSIGN_GET_ENOTE_INTEGRATION_SETTINGS", "name": "Getenoteintegrationsettings", "description": "Retrieves the eNote integration settings for a specified DocuSign account. This endpoint provides crucial information about the eNote configuration status, Connect configuration status, and necessary credentials for eNote functionality. It should be used when setting up or verifying the eNote integration for an account. The endpoint returns details such as API key, organization name, and user credentials, which are essential for configuring the eNote feature. Note that this endpoint is in beta, so its behavior or response structure may change in future updates. It's important to ensure that the account has the \"Allow eNote for eOriginal\" plan item enabled for full functionality." }, { "slug": "DOCUSIGN_GET_ENVELOPE", "name": "Get Envelope", "description": "Gets the status and basic information about an envelope from DocuSign. This action retrieves detailed information about a specific envelope, including: - Envelope status (created, sent, delivered, completed, declined, voided) - Creation and sent timestamps - Subject and message - Recipient information and their status - Document details - Envelope metadata" }, { "slug": "DOCUSIGN_GET_ENVELOPE_DOC_GEN_FORM_FIELDS", "name": "Get Envelope DocGen Form Fields", "description": "Retrieves document generation form fields from an envelope's documents. DocGen form fields are placeholder fields (tags) in template documents that can be dynamically populated with data before sending. This action returns the list of available form fields including their names, types, validation rules, and current values. Use this to discover which fields can be populated via the UPDATE_ENVELOPE_DOC_GEN_FORM_FIELDS action. Common use cases: - Retrieve form field definitions before populating them with data - Inspect field types and validation requirements - Check current values of form fields in a draft envelope Note: Returns an empty response if the envelope has no DocGen form fields." }, { "slug": "DOCUSIGN_GET_ENVELOPE_DOCUMENT_FIELDS", "name": "Get Envelope Document Fields", "description": "Retrieves custom document fields from a specific document within a DocuSign envelope. Custom document fields are metadata key-value pairs attached to individual documents in an envelope. They are different from: - Envelope custom fields (which apply to the entire envelope) - Tabs/fields (which are fillable form fields for recipients) Use this action to retrieve metadata associated with a specific document, such as department codes, project IDs, or other custom categorization data. Prerequisites: - A valid envelope_id (create using DOCUSIGN_CREATE_ENVELOPE_FROM_TEMPLATE) - A valid document_id (obtain from DOCUSIGN_GET_ENVELOPE) - The document must exist in the specified envelope The document_id must be a string representation of a positive integer (1-2147483647). Typically documents are numbered sequentially starting from '1'. Returns a dictionary containing the 'documentFields' array with field objects." }, { "slug": "DOCUSIGN_GET_ENVELOPE_LOCK_INFORMATION", "name": "Get envelope lock information", "description": "Retrieves general information about an envelope lock in DocuSign. This endpoint is used to obtain details about the lock on a specific envelope, including the lock token, duration, owner, and expiration time. It's particularly useful for recovering lock information when managing concurrent access to envelopes. The caller must be the same user who initially locked the envelope. Use this endpoint when you need to verify the lock status of an envelope or retrieve the lock token for subsequent operations. It does not modify the lock itself but provides essential information for lock management." }, { "slug": "DOCUSIGN_GET_ENVELOPE_NOTIFICATION_DEFAULTS", "name": "Get Envelope Notification Defaults", "description": "Retrieves the default email notification settings for envelopes at the account level. This endpoint returns account-wide defaults for envelope notifications including: - Reminder settings (frequency, email subject/body for reminders) - Expiration settings (days until expiration, warning days) - Delivery preferences and notification triggers - Default behaviors for various envelope lifecycle events These settings are applied to new envelopes unless explicitly overridden at the envelope level. Useful for understanding account notification configuration, auditing settings, or as a reference when customizing envelope-specific notifications. Note: Requires appropriate account permissions to access notification settings." }, { "slug": "DOCUSIGN_GET_ENVELOPE_WORKFLOW_DEFINITION", "name": "Getenvelopeworkflowdefinition", "description": "Retrieves the workflow definition for a specified envelope in DocuSign. This endpoint provides detailed information about the envelope's workflow steps, scheduled sending settings, and delayed routing configurations. It is useful for developers who need to understand or analyze the current state and progression of an envelope's workflow. The endpoint returns a comprehensive workflow object, including the current step, scheduled resume date, and an array of all workflow steps with their respective statuses and configurations." }, { "slug": "DOCUSIGN_GET_ENVELOPE_WORKFLOW_DELAYED_ROUTING_DEFINITION", "name": "Getenvelopeworkflowdelayedroutingdefinition", "description": "Retrieves the delayed routing rules for a specific workflow step within a DocuSign envelope. This endpoint allows users to access information about when and how an envelope is scheduled to be sent to recipients associated with a particular workflow step. It's useful for checking the current delay settings, scheduled send time, and status of a delayed routing step. The endpoint returns detailed information about the resume date, delay rules, and current status of the delayed routing. It should be used when you need to verify or inspect the delayed routing configuration for a specific envelope and workflow step. Note that this endpoint will return a 404 error if the specified workflow step does not have a delayed routing object associated with it." }, { "slug": "DOCUSIGN_GET_GROUPS_INFORMATION_FOR_ACCOUNT", "name": "Getgroupsinformationforaccount", "description": "Retrieves detailed information about groups associated with a specific DocuSign account. This endpoint allows users to fetch a list of groups, including their IDs, names, types, and user counts. It's particularly useful for account administrators who need to manage user access, set permissions, or organize users within their DocuSign environment. The endpoint supports pagination, filtering by group type, and text-based searching, making it versatile for various group management tasks. Note that while it provides group information, it does not directly return the list of users within each group; a separate API call is required for that purpose." }, { "slug": "DOCUSIGN_GET_LIST_OF_ACCOUNT_PERMISSION_PROFILES", "name": "Getlistofaccountpermissionprofiles", "description": "This endpoint retrieves a comprehensive list of permission profiles associated with a specified DocuSign account. It provides detailed information about each profile, including its unique identifier, name, last modification timestamp, and an extensive set of permission settings. This tool is essential for account administrators who need to review, audit, or manage user access levels and capabilities within their DocuSign environment. It can be used to understand the current permission structure, identify profiles that may need updates, or verify that the appropriate access levels are set for different user groups." }, { "slug": "DOCUSIGN_GET_MEMBERS_OF_A_SIGNING_GROUP", "name": "Get members of a signing group", "description": "Retrieves the list of members in a specified DocuSign Signing Group. This endpoint provides detailed information about users in a particular Signing Group, including their email addresses and usernames. Use this tool to audit or manage Signing Group composition, which is crucial for maintaining proper document routing and signing workflows. Note that this endpoint only provides information and does not allow group modification." }, { "slug": "DOCUSIGN_GET_NOTARY_JOURNALS", "name": "Get notary journals", "description": "Tool to retrieve notary journal entries for the current user. Use when you need to access a user's notary journal records, which contain information about notarized documents including signer names, document names, jurisdictions, and timestamps." }, { "slug": "DOCUSIGN_GET_NOTARY_JURISDICTION_OBJECT", "name": "Get Notary Jurisdiction Object", "description": "Retrieves detailed information about a specific notary jurisdiction for the authenticated user. This endpoint should be used when a notary needs to access information about their registered jurisdiction, including commission details, seal requirements, and jurisdiction-specific rules. It provides crucial data for notaries to understand their authority and limitations within a particular area. The endpoint can only be accessed by authenticated users who are registered notaries, and the requested jurisdiction must be one that the notary is authorized for. It does not provide information about jurisdictions the notary is not registered for or allow modifications to the jurisdiction data." }, { "slug": "DOCUSIGN_GET_NOTARY_USER_SETTINGS", "name": "Get Notary User Settings", "description": "Retrieves notary settings and configuration for the currently authenticated user. This endpoint returns comprehensive notary account information including personal details (name, email, userId), notary status (enabled/disabled), and optionally jurisdiction details when include_jurisdictions is set to \"true\". **Important**: This endpoint requires: - The authenticated user must be registered as a notary in DocuSign - Appropriate OAuth scopes for notary operations - The account must have notary features enabled Returns information such as: userId, firstName, lastName, email, enabled status, creation/modification timestamps, and jurisdiction details (if requested). Use this when you need to verify a user's notary status, check their enabled jurisdictions, or retrieve notary account configuration details." }, { "slug": "DOCUSIGN_GET_ORIGINAL_HTML_DEFINITION_FOR_TEMPLATE", "name": "Get Original HTML Definition for Template", "description": "Retrieves the original HTML definition for a specified DocuSign template. This endpoint is used to obtain the properties that define how to generate the responsive-formatted HTML for the template's documents. It provides detailed information about display settings, anchors, and collapsible sections that control the appearance and behavior of the template during signing. This tool is essential for developers who need to understand or modify the responsive signing experience for a specific template." }, { "slug": "DOCUSIGN_GET_PAGE_IMAGE_FROM_ENVELOPE", "name": "Getpageimagefromenvelope", "description": "Retrieves an image of a specific page from a document within a DocuSign envelope. This endpoint is used to fetch a visual representation of a document page, which can be useful for previewing or displaying document contents without accessing the full document. The returned image is in PNG format and can be customized in terms of resolution and dimensions. This tool is ideal for applications that need to show document previews or allow users to view specific pages of a document without downloading the entire file. It should not be used for document modification or to extract text content from the document." }, { "slug": "DOCUSIGN_GET_PDFTRANSCRIPT_OF_ENVELOPE_COMMENTS", "name": "Get PDF Transcript of Envelope Comments", "description": "Retrieves a PDF transcript containing all comments added by senders and recipients to documents within a specific envelope in a DocuSign account. This endpoint is useful for obtaining a comprehensive record of all discussions and annotations related to the documents in an envelope. It should be used when a consolidated view of all comments is needed, such as for review, auditing, or record-keeping purposes. The response is a PDF file returned as a byte stream, which can be saved or processed as needed. Note that the comments feature must be enabled in the account settings (set 'enableSigningExtensionComments' to true in accountSettingsInformation) for this endpoint to function. This tool does not provide individual comments or allow for adding or modifying comments." }, { "slug": "DOCUSIGN_GET_PERMISSION_PROFILE_FOR_ACCOUNT", "name": "Get Permission Profile for Account", "description": "This endpoint retrieves detailed information about a specific permission profile in a DocuSign account. It provides a comprehensive view of permissions, settings, and capabilities assigned to a profile. Useful for auditing or reviewing permissions granted to user groups, it returns data on account role settings, user settings, API access levels, and other configuration options. Note that this endpoint is read-only and cannot modify profile settings." }, { "slug": "DOCUSIGN_GET_POWER_FORM_SENDERS", "name": "Get powerform senders", "description": "Retrieves a list of users who have sent PowerForms within a specified DocuSign account. This endpoint is useful for monitoring PowerForm usage, tracking sender activity, and gathering insights on user engagement with PowerForms. It returns detailed information about each sender, including their account details, email, and login status. The response is paginated, allowing for efficient retrieval of large datasets. This tool should be used when you need to audit PowerForm sender activity or generate reports on PowerForm usage within an account." }, { "slug": "DOCUSIGN_GET_RECIPIENT_DOCUMENT_VISIBILITY", "name": "Get Recipient Document Visibility", "description": "Retrieves document visibility settings for a specific recipient within a DocuSign envelope. This endpoint allows you to check which documents are visible to a particular recipient and their access rights (editable or read-only). Use this method when you need to verify or audit the document access configuration for a recipient in an envelope. It's particularly useful in workflows where different recipients may have varying levels of access to documents within the same envelope. The method returns detailed visibility information but does not modify any settings." }, { "slug": "DOCUSIGN_GET_REQUEST_LOGGING_LOG_FILE", "name": "Get request logging log file", "description": "Downloads the complete log file for a specific API request from DocuSign's Diagnostics service. This action is essential for debugging and troubleshooting API interactions by providing detailed request/response information. The log file contains: - Full HTTP request details (method, URL, headers, body) - Complete HTTP response (status, headers, body) - Timing information - Other diagnostic metadata Note: API request logging must be enabled in your DocuSign account to generate log entries. You can enable it using the 'toggle_api_request_logging' action. After logging is enabled, use 'retrieve_apirequest_log_files' to get a list of available log IDs, then use this action to download specific log files. The log helps you: - Debug API integration issues - Verify request/response data - Troubleshoot authentication problems - Investigate unexpected API behavior" }, { "slug": "DOCUSIGN_GET_REQUEST_LOGS", "name": "Get Request Logs", "description": "Retrieves a list of API request log entries as a JSON object. Use when you need to view diagnostic information about API requests made to DocuSign." }, { "slug": "DOCUSIGN_GET_REQUEST_LOG_SETTINGS", "name": "Get Request Log Settings", "description": "Tool to retrieve current API request logging settings for the authenticated user. Use when you need to check logging configuration or remaining log entries." }, { "slug": "DOCUSIGN_GET_RESOURCE_INFORMATION", "name": "Get Resource Information", "description": "Retrieves the base resources available for the DocuSign eSignature REST API. Use when you need to discover available API endpoints and resources." }, { "slug": "DOCUSIGN_GET_SERVICE_INFORMATION", "name": "Get Service Information", "description": "Gets the current version and other information about the DocuSign eSignature REST API. Use this to retrieve service information including API versions and build details. This returns the available REST API versions (v1, v2, v2.1) with their endpoint URLs, the current build version string, and linked DocuSign sites." }, { "slug": "DOCUSIGN_GET_SIGNATURE_INFORMATION_FOR_RECIPIENT", "name": "Get signature information for recipient", "description": "Retrieves signature information for a specific recipient in a DocuSign envelope. Returns signature metadata including: signature ID, name, type, initials, adoption and modification timestamps, signature image URI, base64-encoded image data, and stamp properties if applicable. **Use when you need to:** - Verify or audit recipient signature details after signing - Display signature images or metadata in your application - Retrieve current signature state within an envelope **Required parameters:** - envelopeId: The envelope ID containing the recipient - recipientId: The recipient's ID (often \"1\" for first signer) - accountId: Auto-populated from authentication (optional) Note: Returns signature data only, not general recipient status. Recipient must be a signer or sign-in-person recipient type." }, { "slug": "DOCUSIGN_GET_SIGNING_GROUP_INFORMATION", "name": "Get signing group information", "description": "Retrieves detailed information about a specific signing group in a DocuSign account. Returns comprehensive data including the group's name, type (sharedSigningGroup, privateSigningGroup, or systemSigningGroup), email address, creation/modification timestamps, and a complete list of member users with their names and email addresses. This is a read-only operation useful for: - Auditing signing group composition and membership - Verifying group configuration before using in envelope workflows - Administrative tasks and troubleshooting - Integrating signing group data into custom applications The accountId parameter is optional - if not provided, it will be automatically derived from your authentication context. Only the signingGroupId is required." }, { "slug": "DOCUSIGN_GET_SPECIFIC_BRAND_RESOURCE_FILE", "name": "Get specific brand resource file", "description": "Retrieves a specific branding resource file (XML format) for customizing DocuSign experiences. Brand resource files control text and visual elements for sending, signing, email, and captive signing experiences. IMPORTANT: Resource files must be pre-configured for the brand. This is an advanced feature enabled through DocuSign admin or account manager. Use the \"return_brand_resource_metadata_for_account\" action first to verify which resource types are available before calling this action. Supports localization via language codes and can return either the full master resource file or only modified elements." }, { "slug": "DOCUSIGN_GET_SPECIFIED_ACCOUNT_STAMP_INFO", "name": "Getspecifiedaccountstampinfo", "description": "Retrieves detailed information about a specific account stamp (signature) in DocuSign. This endpoint allows users to fetch comprehensive data about a signature, including its creation and modification dates, image URIs, associated users, and formatting details. It's particularly useful when you need to access or verify the properties of a specific signature within an account. The endpoint provides a wealth of information but requires both the account ID and the specific signature ID to function." }, { "slug": "DOCUSIGN_GET_SUPPORTED_LANGUAGES_FOR_RECIPIENTS", "name": "Getsupportedlanguagesforrecipients", "description": "Retrieves a comprehensive list of supported languages that can be set for individual recipients when creating a DocuSign envelope. This endpoint allows developers to access the available language options for customizing the standard email format and signing view for each recipient. It's particularly useful when implementing localization features or providing language choices to users in multi-lingual environments. The endpoint returns both the human-readable language names and their corresponding language codes, which can be used in subsequent API calls to set recipient languages. Note that this only affects DocuSign's standard text elements and does not translate custom email content." }, { "slug": "DOCUSIGN_GET_TABS_BLOB_FOR_ENVELOPE", "name": "Gettabsblobforenvelope", "description": "This deprecated endpoint retrieves the tabs blob associated with a specific envelope in DocuSign. It allows developers to access detailed information about the tabs (such as signature fields, text fields, etc.) within a document envelope. However, as this endpoint is no longer recommended for use, developers should seek alternative methods for accessing tab information in new implementations. The endpoint requires both an account ID and an envelope ID to identify the specific envelope and account for which to retrieve the tabs blob. Use this endpoint cautiously and only if absolutely necessary for legacy systems, as it may be removed in future API versions." }, { "slug": "DOCUSIGN_GET_TAB_SETTINGS_FOR_ACCOUNT", "name": "Gettabsettingsforaccount", "description": "Retrieves the current tab settings and functionality enabled for a specific DocuSign account. This endpoint provides detailed information about various tab types (such as checkbox, radio, text) and related features (like tab order, data labels, text formatting) that are currently active or inactive for the account. It's particularly useful for administrators or developers who need to understand the available tab options before creating or modifying documents within the account. The response includes both the enabled/disabled status of each setting and associated metadata, offering insights into compliance requirements and editability of these settings. This tool should be used when there's a need to audit or verify the account's tab configuration, especially before implementing new document workflows or integrations that rely on specific tab functionalities." }, { "slug": "DOCUSIGN_GET_TEMPLATE", "name": "Get Template", "description": "Gets a template definition from the specified account. You can include additional template attributes in the response by using the include parameter: - powerforms: Includes information about PowerForms - tabs: Includes information about tabs - documents: Includes information about documents - favorite_template_status: Includes the template favoritedByMe property" }, { "slug": "DOCUSIGN_GET_TEMPLATE_DELAYED_ROUTING_RULES", "name": "Get template delayed routing rules", "description": "Retrieves the delayed routing rules for a specific workflow step within a DocuSign template. This endpoint allows users to fetch the scheduled sending and routing information for a particular step in a template's workflow. It's useful for understanding when and how an envelope will be sent to recipients associated with the workflow step. The endpoint should be used when you need to review or verify the delayed routing settings for a template, particularly in automated document workflows. Note that if the specified workflow step does not have a delayed routing object, this method will return a 404 error." }, { "slug": "DOCUSIGN_GET_TEMPLATE_DOCUMENT_HTML_DEFINITION", "name": "Get Template Document HTML Definition", "description": "Retrieves the HTML definition for a specific document within a DocuSign template. This endpoint is used to obtain the properties that define how to generate responsive-formatted HTML for the document, including display anchors, collapsible sections, and other formatting settings. It's particularly useful when implementing responsive signing features or when you need to understand the structure and display properties of a template document. The response includes detailed information about HTML definitions, such as display settings, anchors, and formatting options, which can be used to render the document in a responsive manner across different devices and screen sizes." }, { "slug": "DOCUSIGN_GET_TEMPLATE_LOCK_INFORMATION", "name": "Get template lock information", "description": "Retrieves lock information for a DocuSign template. Returns details about an existing template lock including the lock token, duration, expiration time, and information about the user who locked the template. The lock token is required in the X-DocuSign-Edit header for subsequent update operations. Note: Only the user who locked the template (with the same integrator key) can retrieve the lock token. Other users will receive lock information without the token. Use this action to: - Verify if a template is currently locked - Recover lock information after interruption - Get the lock token for making updates to a locked template" }, { "slug": "DOCUSIGN_GET_TEMPLATE_NOTIFICATION_INFORMATION", "name": "Get template notification information", "description": "Retrieves the envelope notification, reminders, and expiration information for an existing template in DocuSign. This endpoint allows users to get detailed settings about how notifications are configured for envelopes created from the specified template. It provides information on expiration settings, reminder configurations, and whether account default settings are being used. This tool is useful for reviewing and auditing template notification settings before creating envelopes or when troubleshooting notification-related issues with template-based envelopes. The response includes complex objects for expirations and reminders, giving a comprehensive view of the template's notification setup." }, { "slug": "DOCUSIGN_GET_TEMPLATE_RECIPIENT_DOCUMENT_VISIBILITY", "name": "Get template recipient document visibility", "description": "Retrieves document visibility settings for a specific recipient in a DocuSign template. Returns which documents are visible to a recipient and their access rights (view/edit). Document visibility controls show or hide specific documents from recipients in multi-document templates, ensuring sensitive information is only shared with authorized parties. **Important:** Document Visibility must be enabled for your account by an administrator. Documents cannot be hidden from recipients if they have tabs assigned to them. Carbon Copy, Certified Delivery, Editor, and Agent recipients can always see all documents. Returns a list of documentVisibility objects with: documentId, visible (\"true\"/\"false\"), rights (access level), and recipientId." }, { "slug": "DOCUSIGN_GET_TEMPLATE_SCHEDULED_SENDING_SETTINGS", "name": "Get template scheduled sending settings", "description": "Retrieves the scheduled sending settings for a specified DocuSign template. This endpoint allows developers to access and review the configuration that determines when and how envelopes based on the template will be sent. It's particularly useful for automating document workflows and managing the timing of envelope distribution. The endpoint returns detailed information about the scheduled sending rules, including any delays or specific send dates, as well as the current status of the scheduled sending job. It should be used when you need to inspect or verify the scheduled sending configuration of a template, especially in scenarios involving automated or timed document processing. Note that this endpoint will return a 404 error if the template's workflow does not have a scheduled sending object, indicating that no scheduled sending has been configured for the template." }, { "slug": "DOCUSIGN_GET_TEMPLATES_FOR_ENVELOPE_DOCUMENT", "name": "Get templates for envelope document", "description": "Retrieves the templates associated with a specific document within a DocuSign envelope. This endpoint is useful for identifying and managing templates linked to individual documents in an envelope, which can be beneficial for template management and document processing workflows. It should be used when you need to retrieve template information for a particular document in an existing envelope, such as for template auditing or document-specific template applications. The endpoint returns detailed information about each associated template, including its ID, name, and matching details, but does not provide the actual template content or allow for template modifications." }, { "slug": "DOCUSIGN_GET_TEMPLATES_USED_IN_ENVELOPE", "name": "Get templates used in envelope", "description": "This endpoint retrieves a list of server-side templates used in a specific DocuSign envelope. It provides detailed information about each template, including its name, ID, and other relevant attributes. The endpoint is particularly useful for understanding which templates have been applied to an envelope or finding matching templates for an existing envelope. It can be used to audit envelope contents, analyze template usage, or prepare for envelope modifications. The response includes an array of template summaries, offering a comprehensive view of how templates are utilized within the specified envelope." }, { "slug": "DOCUSIGN_GET_UNSUPPORTED_FILE_TYPES_LIST", "name": "Get unsupported file types list", "description": "Retrieves the list of file types (extensions and MIME types) that DocuSign does not support for upload. Use this to validate file types before upload or to display supported formats to users. The list may change as DocuSign updates its supported file types." }, { "slug": "DOCUSIGN_GET_URLFOR_EMBEDDING_DOCUSIGN_UI", "name": "Get URL for Embedding DocuSign UI", "description": "Generate a URL to embed the DocuSign console view within your application. This action creates a URL that provides access to the DocuSign web interface, allowing users to interact with DocuSign features directly from your application without leaving your UI. **Use Cases:** - Display DocuSign console home page (when no envelopeId provided) - View specific sent envelope documents (with sent envelope ID) - Edit and send draft envelopes via sender view (with draft envelope ID) **Security Note:** This provides full access to the DocuSign account's console interface. Use appropriate access controls in your application when exposing these URLs to users. **Best Practice:** When using with draft envelopes, provide a returnUrl to give users a way to navigate back to your application after completing their task." }, { "slug": "DOCUSIGN_GET_USER_AUTHORIZATION_DETAILS", "name": "Get user authorization details", "description": "Retrieves detailed information about a specific user authorization in DocuSign. This endpoint allows account administrators or the principal user to fetch comprehensive data about an authorization, including the agent user, principal user, permission levels, and relevant timestamps. It's particularly useful for auditing purposes, reviewing access grants, and managing user permissions within the DocuSign system. The endpoint requires specific identifiers to ensure the correct authorization is accessed and that the requester has the necessary permissions to view the data." }, { "slug": "DOCUSIGN_GET_USER_AUTHORIZATIONS_FOR_PRINCIPAL", "name": "Getuserauthorizationsforprincipal", "description": "Retrieves user authorizations for a specified principal user within a DocuSign account. This endpoint allows account administrators or the principal user themselves to view and manage user access and permissions. It provides detailed information about each authorization, including the agent user, permission levels, and validity periods. Use this endpoint when you need to audit user access, manage permissions, or review the authorization history for a specific user. The response includes pagination support for handling large sets of authorizations." }, { "slug": "DOCUSIGN_GET_USER_CLOUD_STORAGE_PROVIDER_CONFIGURATION", "name": "Get user cloud storage provider configuration", "description": "Retrieves the cloud storage provider configuration for a specific cloud storage service (identified by serviceId) for a user within a DocuSign account. This endpoint returns configuration details for the specified provider, such as service name and serviceId. Note: This endpoint primarily works with DocuSign-native cloud storage providers (like Rooms). External OAuth-based providers (Box, Dropbox, GoogleDrive, Salesforce, OneDrive) typically return 400 errors even with valid serviceIds, likely because they require authentication flow completion first. For retrieving all cloud storage providers, use the 'Retrieve Cloud Storage Provider Configuration' action instead (GET without serviceId). Users can only access their own cloud storage configuration, even with admin rights." }, { "slug": "DOCUSIGN_GET_USER_INFORMATION_BY_ID", "name": "Get user information by id", "description": "Retrieves detailed information about a specific user within a DocuSign account. This endpoint provides comprehensive data about the user, including personal details, account settings, and permissions. It's useful for account administrators and system integrations needing to verify or sync user configurations. Note that users can only access their own information, even with admin rights." }, { "slug": "DOCUSIGN_GET_USERS_IN_GROUP", "name": "Get users in group", "description": "Retrieves a paginated list of users belonging to a specific group within a DocuSign account. This endpoint is useful for managing and auditing group memberships, allowing administrators to view detailed information about users associated with a particular group. It supports pagination to handle large groups efficiently, making it suitable for applications that need to display or process user data in manageable chunks. The endpoint returns comprehensive user information, including account details, email, user status, and membership specifics." }, { "slug": "DOCUSIGN_GET_WATERMARK_DETAILS_FOR_ACCOUNT", "name": "Get Watermark Details for Account", "description": "Retrieves and previews the watermark details for a specific DocuSign account. This endpoint allows users to view the current watermark configuration, including its visual properties and enabled status. It's useful for verifying existing watermark settings or preparing to update them. The endpoint returns comprehensive information about the watermark but does not modify any settings. Use this when you need to inspect or audit the current watermark configuration for an account." }, { "slug": "DOCUSIGN_GET_WORKFLOW_STEP_FOR_ENVELOPE", "name": "Get Workflow Step for Envelope", "description": "Retrieves detailed information about a specific workflow step for a DocuSign envelope. This endpoint allows you to fetch comprehensive data about a single step in an envelope's workflow, including its action, status, delayed routing settings, and recipient routing rules. It's particularly useful when you need to examine or troubleshoot the configuration of a specific workflow step within an envelope. The endpoint provides insights into how the step is triggered, its current status, and any conditional routing or delay rules applied to it. Use this when you need to understand the exact behavior and settings of a particular workflow step in your DocuSign envelope." }, { "slug": "DOCUSIGN_GET_WORKSPACE_FILE", "name": "Get workspace file", "description": "Retrieves a binary version of a file from a DocuSign workspace. This endpoint allows you to access and download files stored within a specific workspace, folder, and account. It's particularly useful for retrieving document content for further processing or viewing outside the DocuSign platform. The endpoint offers options to download the file as an attachment or convert it to PDF format. Use this when you need to extract file content from a DocuSign workspace, either for backup purposes, local editing, or integration with other systems. Note that this endpoint retrieves the raw file content and does not provide metadata about the file or its signing status." }, { "slug": "DOCUSIGN_GET_WORKSPACE_FOLDER_CONTENTS", "name": "Get workspace folder contents", "description": "Retrieves the contents of a specific workspace folder in DocuSign, including sub-folders and files. This endpoint provides detailed information about the items within the folder, such as metadata, user permissions, and hierarchical structure. It can be used to navigate and explore the contents of a workspace, allowing for efficient management of documents and folders. The endpoint offers various optional parameters to customize the response, enabling users to include or exclude specific types of information based on their needs." }, { "slug": "DOCUSIGN_INITIATE_NEW_CHUNKED_UPLOAD", "name": "Initiate new chunked upload", "description": "Initiates a new chunked upload in DocuSign by sending the first part of the content. This endpoint is designed to handle large file uploads by breaking them into smaller, manageable pieces. It's particularly useful for adding documents to envelopes in DocuSign's electronic signature workflow. The method returns a response with the chunked upload ID, URI, and other metadata, which can be used to add more parts to the upload. Note that this API is currently in beta status and subject to change." }, { "slug": "DOCUSIGN_LIST_ALL_TEMPLATES", "name": "Get Account Templates", "description": "Gets the definition of a template or templates in the specified account. Note: If the count parameter is not used, listTemplates has a default limit of 2,000 templates. If the account has more than 2,000 templates, listTemplates will return the first 2,000 templates. To retrieve more than 2,000 templates, repeat the API call, specifying start_position and count to control the number of templates retrieved." }, { "slug": "DOCUSIGN_LIST_BILLING_INVOICES", "name": "List billing invoices", "description": "Retrieves a list of billing invoices for a specified DocuSign account. This endpoint allows account administrators to fetch detailed invoice information, including total amounts, due dates, and itemized charges. It supports optional date range filtering and provides a paginated response for efficient handling of large datasets. Use this endpoint to review billing history, verify charges, or gather financial data for accounting purposes. The response includes comprehensive invoice details, making it valuable for financial reconciliation and reporting." }, { "slug": "DOCUSIGN_LIST_BRANDS_FOR_ACCOUNT", "name": "List brands for account", "description": "Retrieves a comprehensive list of brands associated with a DocuSign account, including default brand profiles. This endpoint provides detailed information about each brand, such as visual elements, language settings, and resource URLs for customizing various DocuSign experiences. It's particularly useful for managing and reviewing account-level branding options. The endpoint requires either the 'canSelfBrandSign' or 'canSelfBrandSend' setting to be enabled for the account. Use this when you need to audit, manage, or implement brand customizations across your DocuSign account." }, { "slug": "DOCUSIGN_LIST_BULK_SEND_BATCH_SUMMARIES", "name": "Listbulksendbatchsummaries", "description": "Retrieves a summary of bulk send batches for a DocuSign account. This endpoint allows users to query and filter bulk send batch information, providing details such as batch status, size, and processing information. It's particularly useful for monitoring the progress of large-scale document sending operations and managing bulk send workflows. The endpoint supports pagination and various filtering options to customize the result set according to specific needs." }, { "slug": "DOCUSIGN_LIST_CLOUD_STORAGE_ITEMS", "name": "Listcloudstorageitems", "description": "Retrieves a list of items (files and folders) from a specific folder in a cloud storage provider integrated with DocuSign. This endpoint enables browsing and searching cloud storage contents directly within DocuSign, making it easier to select documents for signing workflows. Prerequisites: - The cloud storage provider must be connected and authenticated for the user - Valid serviceId and folderId must be provided from the connected storage Supported cloud storage providers include: Box, Dropbox, Google Drive, OneDrive, Salesforce, and DocuSign Rooms. The endpoint supports pagination, sorting, and text-based filtering of results. Users can only access their own cloud storage items, ensuring data privacy and security." }, { "slug": "DOCUSIGN_LIST_ENVELOPE_AND_DOCUMENT_CUSTOM_FIELDS", "name": "List Account Custom Fields", "description": "Retrieves all account-level custom fields defined for a DocuSign account. Account custom fields are envelope custom fields that can be applied across multiple envelopes, enabling account administrators to group, track, and manage envelopes consistently. The response includes two types of custom fields: - Text custom fields: Free-form text input fields - List custom fields: Dropdown fields with predefined options Each custom field contains metadata such as field ID, name, visibility settings, required status, and current values. This is useful for: - Auditing existing custom field configurations - Reviewing available custom fields before creating envelopes - Preparing for custom field updates or migrations - Understanding envelope metadata structure for reporting Note: This endpoint retrieves account-level custom field definitions, not the values set on individual envelopes. To get custom field values for a specific envelope, use the envelope custom fields endpoint instead." }, { "slug": "DOCUSIGN_LIST_ENVELOPE_ATTACHMENTS_BY_ENVELOPE_ID", "name": "List Envelope Attachments By Envelope Id", "description": "Retrieves a list of envelope attachments associated with a specified envelope in DocuSign. This endpoint is used to fetch developer-only files attached to an envelope, providing details such as attachment IDs, types, and access controls. It's important to note that this operation returns envelope attachments, which are different from signer attachments (user-visible documents). Use this endpoint when you need to manage or review administrative files linked to an envelope. The API is currently in beta status, so it may be subject to changes in future versions. The response includes an array of attachment objects, each containing information like accessControl, attachmentId, and attachmentType. Error details are provided for both successful and failed requests." }, { "slug": "DOCUSIGN_LIST_OAUTH_USERINFO", "name": "Get OAuth User Info", "description": "Tool to retrieve authenticated user's account information from DocuSign OAuth. Use this to validate the OAuth access token and obtain essential account details including user ID (sub), name, email, and the list of DocuSign accounts with their base URIs and account IDs for subsequent API calls." }, { "slug": "DOCUSIGN_LIST_PAST_DUE_INVOICES", "name": "List past due invoices", "description": "Retrieves a list of past due invoices for a specified DocuSign account and indicates if payment can be made through the REST API. This endpoint is designed for account administrators to manage outstanding financial obligations. It provides comprehensive invoice details including total amounts, balances, due dates, and itemized charges. Use this when you need to review overdue payments, assess the account's financial status, or determine if immediate action is required for outstanding invoices. The endpoint does not process payments directly but informs if payment through the API is possible. Note that this tool requires account administrator privileges to access sensitive billing information." }, { "slug": "DOCUSIGN_LIST_PAYMENT_GATEWAY_ACCOUNTS_INFO", "name": "Listpaymentgatewayaccountsinfo", "description": "Retrieves a list of all payment gateway accounts associated with a specific DocuSign account, along with detailed information about each account. This endpoint is useful for obtaining an overview of the payment gateways configured for an account, including their status, supported currencies, and payment methods. It should be used when you need to manage or review payment gateway configurations within a DocuSign account. As this is a beta endpoint, be aware that its structure or behavior may change in future updates." }, { "slug": "DOCUSIGN_LIST_REGISTERED_NOTARY_JURISDICTIONS", "name": "List registered notary jurisdictions", "description": "Retrieves a paginated list of registered notary jurisdictions for the current user, who must be a notary. This endpoint provides detailed information about each jurisdiction where the notary is registered, including commission details, seal settings, and supported features. It is useful for managing and reviewing a notary's registrations across multiple states. The response includes navigation URIs for handling pagination, allowing for efficient retrieval of large result sets. This endpoint should be used when a notary needs to review their registered jurisdictions or when an application needs to display or process a notary's registration information across multiple states." }, { "slug": "DOCUSIGN_LIST_SIGNATURE_PROVIDERS_FOR_ACCOUNT", "name": "Listsignatureprovidersforaccount", "description": "Retrieves a list of signature providers available for a specified DocuSign account. This endpoint allows users to obtain detailed information about electronic and digital signature providers, including standards-based signatures, that can be used within the account. It's particularly useful when setting up or managing signature workflows, especially those involving identity verification. The endpoint returns provider names, display names, IDs, and any required options, enabling developers to integrate various signature providers into their DocuSign-based applications or workflows." }, { "slug": "DOCUSIGN_LIST_USERS_FOR_ACCOUNT", "name": "List users for account", "description": "Retrieves a list of users for a specified DocuSign account. This endpoint allows for detailed querying of user information, including their account status, email addresses, and various account settings. It's particularly useful for account administrators who need to manage users or gather information about the account's user base. The endpoint supports pagination and filtering, enabling efficient retrieval of specific subsets of users. When called with the 'additional_info' parameter set to true, it provides comprehensive user data, including granular permissions and custom settings. This makes it valuable for auditing user access levels or preparing for bulk updates to user configurations. Keep in mind that the response can be quite large, especially for accounts with many users or when requesting additional info. It's recommended to use pagination parameters (count and start_position) for large accounts to manage response sizes and API performance." }, { "slug": "DOCUSIGN_LIST_WORKSPACE_FILE_PAGES", "name": "Listworkspacefilepages", "description": "Retrieves a workspace file as rasterized pages from a DocuSign workspace. This endpoint allows users to fetch file pages as images with customizable resolution and dimensions. It supports pagination for handling large files efficiently. Use this method when you need to view or process workspace files as images, such as for preview generation or image-based analysis. The endpoint is particularly useful for viewing documents without downloading the entire file, enabling faster loading and reduced bandwidth usage. Note that this method does not provide text extraction or document editing capabilities; it's purely for image-based representation of file pages." }, { "slug": "DOCUSIGN_LIST_WORKSPACES", "name": "List workspaces", "description": "Retrieves a list of DocuSign workspaces and their associated information for a specified account. This endpoint allows users to get a comprehensive view of all workspaces they have access to, including details such as workspace IDs, names, descriptions, creation dates, and user information. It's particularly useful for applications that need to display or manage multiple workspaces, or for auditing purposes to review workspace configurations and user access. The endpoint provides paginated results, allowing for efficient retrieval of large numbers of workspaces." }, { "slug": "DOCUSIGN_LOCK_AN_ENVELOPE_FOR_EDITING", "name": "Lock an envelope for editing", "description": "This endpoint locks an envelope for editing, preventing other users or recipients from changing it. It's used to ensure exclusive access to an envelope during updates. The method returns a lock token that must be included in subsequent PUT requests to modify the locked envelope. Use this endpoint when you need to make changes to an envelope and want to prevent concurrent edits. The lock has a limited duration and can be extended if needed. It's particularly useful for complex envelope modifications or when coordinating changes among multiple users. Note that template passwords may be required for certain locked envelopes, and there's a maximum lock duration of 30 minutes." }, { "slug": "DOCUSIGN_LOCK_TEMPLATE_FOR_EDITING", "name": "Lock Template for Editing", "description": "Locks a specified DocuSign template for editing to prevent concurrent modifications. This endpoint acquires an exclusive lock on a template, ensuring that only the lock holder can make changes during the lock period. The response includes a lockToken that must be included in the X-DocuSign-Edit header for all subsequent update operations on the locked template. Key features: - Returns a lockToken for exclusive editing access - Prevents race conditions in collaborative environments - Lock automatically expires after the specified duration - Default lock duration is typically 300 seconds (5 minutes) Use this action before modifying a template to ensure data integrity and prevent conflicts with other users attempting to edit the same template simultaneously." }, { "slug": "DOCUSIGN_MODIFY_ACCOUNT_NOTIFICATION_SETTINGS", "name": "Modify Account Notification Settings", "description": "Updates the default email notification settings for envelope senders and signers in a DocuSign account. This endpoint allows customization of when and what type of notifications users receive regarding envelope status changes (e.g., signed, declined, completed), comments, and other events. Use this action when you need to: - Configure when senders receive notifications (e.g., when signers change, delivery fails) - Configure when signers receive notifications (e.g., envelope activation, completion) - Set comment notification preferences - Update notification settings for specific events like document purges or offline signing Note: These are account-level default settings. Individual envelope notification settings can override these defaults when sending specific envelopes." }, { "slug": "DOCUSIGN_MODIFY_TAB_SETTINGS_FOR_ACCOUNT", "name": "Modify tab settings for account", "description": "This endpoint modifies the tab types and tab functionality that are enabled for a DocuSign account. It allows administrators to configure various tab-related settings, such as enabling or disabling specific tab types, controlling tab order, and managing compliance with FDA regulations. The endpoint is primarily used to customize the tab experience for users within an account, affecting how they interact with documents during the signing process." }, { "slug": "DOCUSIGN_POST_PAYMENT_TO_INVOICE", "name": "Post payment to invoice", "description": "Posts a payment to past due invoices for a DocuSign account. This action applies a payment amount to settle outstanding invoice balances and creates a payment transaction record. Before using this action, retrieve past due invoice information using the 'List Past Due Invoices' action to get the total balance due and verify that 'paymentAllowed' is true. The payment amount must exactly match the 'pastDueBalance' value from that response. This action requires account administrator privileges and the 'billing:write' OAuth scope. It is only available for production accounts with billing features enabled - demo accounts will return a 400 Bad Request error with 'BILLING_PLAN_ERROR' indicating the payment manager is blocked. Use this when you need to programmatically settle overdue DocuSign account invoices through the REST API." }, { "slug": "DOCUSIGN_PURCHASE_ADDITIONAL_ENVELOPES", "name": "Purchase additional envelopes", "description": "This endpoint completes the purchase of additional envelopes for a DocuSign account through an internal workflow interaction with an envelope vendor. It is designed to handle the financial transaction and update the account's envelope quota. This tool should be used when there's a need to increase the number of available envelopes for document signing within a DocuSign account. However, it's important to note that this endpoint is currently limited to DocuSign internal use only and is not available for public API consumers. The endpoint requires detailed information about the purchase, including the amount, currency, quantity, and app store-related data for tracking and processing the transaction." }, { "slug": "DOCUSIGN_QUEUE_DOWNGRADE_BILLING_PLAN_REQUEST", "name": "Queue downgrade billing plan request", "description": "Queues a downgrade request for a DocuSign account's billing plan. This action initiates the process of changing an account to a lower-tier or less expensive billing plan without immediately applying the change. Use this action when an account administrator needs to: - Downgrade from a paid plan to a free or lower-tier plan - Reduce subscription costs by moving to a plan with fewer features - Apply promotional pricing or discounts during the downgrade The downgrade is queued for processing and typically takes effect at the end of the current billing period. The response includes the new plan details, effective date, and remaining days in the current billing cycle. Note that billing plan management operations typically require administrator-level permissions and may not be available on demo or restricted accounts." }, { "slug": "DOCUSIGN_REGISTER_CURRENT_USER_AS_NOTARY", "name": "Registercurrentuserasnotary", "description": "This endpoint registers the current user as a notary in DocuSign, enabling remote online notarization capabilities. It configures the user's notary profile, settings, and permissions. Use this when setting up a new notary within the DocuSign system. Note that this does not replace legal notary certification requirements." }, { "slug": "DOCUSIGN_REMOVE_BULK_SEND_LIST", "name": "Remove bulk send list", "description": "This endpoint deletes a specific bulk send list from a DocuSign account. It is used to permanently remove a bulk send list that is no longer needed or was created in error. The operation requires both the account identifier and the specific bulk send list ID to ensure precise targeting of the list to be deleted. Upon successful deletion, it returns a summary of the remaining bulk send lists associated with the account. This endpoint should be used with caution as the deletion is irreversible. It's particularly useful for maintaining a clean and organized set of bulk send lists, especially in environments where list management is crucial for compliance or efficiency reasons. Note that this operation does not affect any envelopes that may have already been sent using the deleted list." }, { "slug": "DOCUSIGN_REMOVE_GROUP_SHARING_PERMISSIONS_FOR_TEMPLATE", "name": "Removegroupsharingpermissionsfortemplate", "description": "Removes sharing permissions for specified member groups from a DocuSign template. This endpoint is used to revoke access to a template for one or more groups, enhancing template security and access control. It's particularly useful when reorganizing team structures, updating project access, or when certain groups no longer require access to a specific template. The operation affects only the specified template and groups, allowing for granular permission management within the DocuSign environment." }, { "slug": "DOCUSIGN_REMOVE_TEMPLATES_FROM_FAVORITES", "name": "Remove Templates From Favorites", "description": "Removes one or more templates from an account's list of favorite templates in DocuSign. This endpoint allows users to manage their favorite templates by specifying which templates should no longer be marked as favorites. It accepts an account identifier and a list of template IDs to be removed from favorites. The API returns information about the templates that were successfully removed and any errors encountered during the process. This endpoint is particularly useful for maintaining an organized and relevant list of favorite templates, especially when templates are no longer frequently used or needed. Note that this API is currently in beta status, which means it may not be fully stable and could be subject to changes in the future." }, { "slug": "DOCUSIGN_REMOVE_USER_SIGNATURE_INFORMATION", "name": "Remove user signature information", "description": "Removes the signature information for a specific user in DocuSign. This endpoint should be used when a user wants to delete their existing signature from their DocuSign account. It's particularly useful for updating or refreshing signature information. The operation is restricted to the authenticated user's own signatures and cannot be used to modify other users' data, even with admin rights. It's important to note that this action is irreversible, so it should be used with caution. The endpoint accepts either a signature ID or a signature name, but using the signature ID is recommended to avoid URL encoding issues." }, { "slug": "DOCUSIGN_REPUBLISH_CONNECT_DATA_FOR_ENVELOPE", "name": "Republish connect data for envelope", "description": "Republishes Connect information for a specified envelope in DocuSign. This endpoint is used to retry sending Connect event data that may have failed to deliver previously. It's particularly useful for ensuring that all relevant updates about an envelope are successfully communicated to integrated systems. The function requires account administrator privileges and Connect must be enabled on the account. Use this when you need to manually trigger a resend of Connect data for a specific envelope, typically in response to failed deliveries or system synchronization issues." }, { "slug": "DOCUSIGN_REPUBLISH_CONNECT_INFO_FOR_ENVELOPES", "name": "Republish connect info for envelopes", "description": "Republishes Connect webhook information for multiple DocuSign envelopes. Queues envelopes for Connect webhook republishing to retry failed webhook deliveries. When DocuSign Connect fails to deliver webhook events to your endpoint, envelopes are added to a failure queue. This action manually triggers republishing attempts. Use cases: Retry webhook delivery after temporary endpoint issues, resend envelope events after fixing your webhook endpoint, or recover from missed notifications. Note: Only envelopes in the Connect failure queue can be republished. Envelopes not in the failure queue return status 'Fail' with 'Envelope Id not found in failure queue' (expected behavior). Use Connect failure logs API to identify envelopes needing republishing. Requires: Connect enabled on account, administrator access with connect:read and connect:write scopes." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_BILLING_PLAN", "name": "Retrieve Account Billing Plan", "description": "Retrieves detailed billing plan information for a specified DocuSign account. This endpoint provides comprehensive data about the current billing plan, successor plans, billing address, and credit card information associated with the account. It is particularly useful for obtaining an overview of an account's billing status, available plan options, and payment details. The endpoint allows customization of the response through optional query parameters, enabling users to include or exclude specific information such as credit card details, downgrade options, metadata, and successor plans. This tool should be used when a detailed view of an account's billing configuration is required, especially for account management, billing inquiries, or planning potential plan changes." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_BRAND_INFORMATION", "name": "Retrieveaccountbrandinformation", "description": "Retrieves detailed information about a specific brand associated with a DocuSign account. This endpoint allows users to access comprehensive brand settings, including company name, languages, colors, logos, and resource URLs for customizing various DocuSign experiences such as email, sending, and signing. It should be used when detailed brand information is needed for display, management, or customization purposes. The endpoint requires account branding to be enabled (either for signing, sending, or both) to function properly." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_ENVELOPE_PURGE_CONFIG", "name": "Retrieve Account Envelope Purge Config", "description": "Retrieves the current envelope purge configuration for a specified DocuSign account. This endpoint allows account administrators to view the settings that control how and when documents are permanently removed from completed and voided envelopes after a specified retention period. It provides crucial information for managing document lifecycle, data privacy, and storage optimization within the DocuSign platform. The configuration includes settings for enabling purging, redacting personally identifiable information (PII), removing associated tabs and attachments, and specifying the retention period in days. This method should be used when auditing or reviewing an account's document retention policies, or before making changes to the purge configuration. Note that this endpoint is in beta status and requires account administrator privileges to access." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_FAVORITE_TEMPLATES", "name": "Retrieve Account Favorite Templates", "description": "Retrieves the list of favorite templates for a DocuSign account. Returns an array of template IDs and the dates they were marked as favorites. This is useful for identifying which templates a user has marked for quick access. Note: This endpoint only returns template IDs and favorited dates, not the full template details. Use the List All Templates or Get Template actions to retrieve complete template information. Beta API: May be subject to changes in future versions." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_INFORMATION_FOR_SPECIFIED_ACCOUNT", "name": "Retrieveaccountinformationforspecifiedaccount", "description": "Retrieves comprehensive information for a specified DocuSign account, including account details, billing information, plan specifics, and optionally detailed account settings. This endpoint is used to gather extensive data about an account's configuration, status, and capabilities within the DocuSign platform. It's particularly useful for account management, auditing, or when needing to review or update account settings. The response includes critical information such as the account's GUID, name, creation date, current plan details, and various feature enablements. When account settings are included, it provides a deep dive into the account's configuration, covering aspects like authentication requirements, branding options, envelope settings, and compliance-related configurations." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_PROVISIONING_INFO", "name": "Retrieve Account Provisioning Info", "description": "Retrieves the account provisioning information for a DocuSign account. This endpoint returns crucial setup and configuration details including default connection IDs, billing plan identifiers, distributor codes, password policy rules, and promotional information. Use this action when you need to: - Verify account provisioning configuration - Retrieve default billing plan information - Check password policy requirements - Get distributor-related settings The account ID is automatically populated from your authentication credentials. This is a read-only endpoint that retrieves configuration data without making any modifications to the account. Returns provisioning details such as defaultConnectionId, defaultPlanId, distributorCode, passwordRuleText, and planPromotionText." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_SEAL_PROVIDERS", "name": "Retrieve Account Seal Providers", "description": "Retrieves electronic seal providers (eSeals) available for a DocuSign account. Electronic seals certify document origin and integrity using a legal entity identity rather than an individual signature. Returns seal identifiers and names for all configured seals in the account. Use this to display available seal options or implement automated seal application workflows. IMPORTANT: Electronic Seals is a premium feature requiring provisioning by DocuSign Sales. Not available in standard developer sandboxes. A 401 error indicates the feature is not enabled. Contact DocuSign Sales to enable. Note: This retrieves seal information only; applying seals requires separate API calls." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_SETTINGS_INFORMATION", "name": "Retrieveaccountsettingsinformation", "description": "Retrieves the comprehensive account settings information for a specified DocuSign account. This endpoint provides a detailed view of the account's configuration, including access code formats, account-wide preferences, feature toggles, security settings, UI customization options, and compliance-related configurations. It is particularly useful for administrators or integration developers who need to audit, review, or programmatically access the full range of account settings. The retrieved information can be used to understand the current state of the account, verify specific configurations, or as a basis for updating settings through other API calls. Note that this endpoint returns a large amount of data and should be used judiciously to avoid unnecessary load on the system. It does not modify any settings; it only retrieves the current configuration." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_SIGNING_GROUPS", "name": "Retrieveaccountsigninggroups", "description": "Retrieves a comprehensive list of all signing groups within a specified DocuSign account. This endpoint allows you to obtain detailed information about each signing group, including group names, types, IDs, and optionally, member details. It's particularly useful for managing and auditing signing groups across an organization. The endpoint supports filtering by group type and can include or exclude user information based on your needs. Use this when you need to review, manage, or audit the signing groups in your DocuSign account. Note that while it provides extensive group information, it does not modify any group settings or memberships." }, { "slug": "DOCUSIGN_RETRIEVE_ACCOUNT_VERIFICATION_WORKFLOWS", "name": "Retrieveaccountverificationworkflows", "description": "Retrieves a list of Identity Verification workflows available for a DocuSign account. This endpoint allows account administrators or senders to fetch details about the verification methods that can be applied to signers during the document signing process. It provides information about active, deactivated, or all workflows, depending on the query parameter. Use this endpoint to understand the available identity verification options for your account, which can help in implementing secure signing processes." }, { "slug": "DOCUSIGN_RETRIEVE_ALL_ACCOUNT_TABS", "name": "Retrieveallaccounttabs", "description": "Retrieves a comprehensive list of all tabs associated with a specified DocuSign account. It returns detailed information about each tab, including type, label, validation rules, and formatting settings. Use this endpoint for auditing tab configurations, managing account-wide tab settings, or integrating tab information into external systems. Can be filtered to return only custom tabs if needed." }, { "slug": "DOCUSIGN_RETRIEVE_AVAILABLE_ACCOUNT_STAMPS", "name": "Retrieveavailableaccountstamps", "description": "Retrieves a list of stamps available in a DocuSign account. This endpoint allows users to fetch detailed information about various types of stamps, signatures, and related properties associated with the specified account. It's particularly useful for applications that need to display or manage available stamps for document signing processes. The endpoint returns comprehensive data including adoption dates, creation dates, image URIs, and specific properties of each stamp or signature. Use this when you need to present users with stamp options or when managing stamp resources within a DocuSign integration." }, { "slug": "DOCUSIGN_RETRIEVE_BILLING_INVOICE", "name": "Retrieve billing invoice", "description": "Retrieves a specific billing invoice for a DocuSign account, providing detailed information about charges and payment details. This endpoint allows account administrators to access invoice data in both JSON format and, when available, as a downloadable PDF. It's particularly useful for financial reconciliation, audit purposes, or when detailed billing information is required. The endpoint returns comprehensive invoice data, including total amount, balance, due date, and itemized charges, with amounts shown in the account's set currency." }, { "slug": "DOCUSIGN_RETRIEVE_BILLING_PAYMENT_INFO", "name": "Retrieve billing payment info", "description": "Retrieves detailed information for a specific billing payment in a DocuSign account. Returns payment details including ID, number, amount, description, and date. Useful for auditing, reconciliation, and reviewing payment records. **Production Account Required:** This endpoint ONLY works with production accounts that have billing features enabled. Demo/developer accounts will return 400 Bad Request errors. **Requirements:** Production account with billing features, account administrator privileges, OAuth scope: signature or billing:read. **To get payment ID:** Call 'Retrieve payment information list' to see available payments, or 'Post payment to invoice' to create a payment that returns its ID." }, { "slug": "DOCUSIGN_RETRIEVE_CHUNKED_UPLOAD_METADATA", "name": "Retrieve chunked upload metadata", "description": "Retrieves metadata for a specific chunked upload in DocuSign. This endpoint allows users to check the status, parts, and other details of a large file upload that has been split into chunks. It's particularly useful for verifying the integrity and completeness of an upload before committing it for use in other DocuSign operations, such as adding documents to envelopes. The endpoint does not return the actual content of the upload, only its metadata. It cannot retrieve information about expired, deleted, or already consumed chunked uploads. This tool is essential for managing and troubleshooting large file uploads in DocuSign, ensuring that all parts are present and the upload is ready for use." }, { "slug": "DOCUSIGN_RETRIEVE_CLOUD_STORAGE_PROVIDER_CONFIGURATION", "name": "Retrieve cloud storage provider configuration", "description": "Retrieves the list of cloud storage providers enabled for a specific user in a DocuSign account, along with their configuration information. This endpoint is essential for integrating external cloud storage services with DocuSign, allowing users to access and manage documents from various providers. It provides details such as authentication URLs and service IDs for each enabled provider. Use this endpoint when you need to display available cloud storage options to a user or initiate the authentication process for a specific provider. Note that users can only access their own cloud storage information, and the endpoint does not modify any existing configurations." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_CONFIGURATION_DETAILS", "name": "Retrieveconnectconfigurationdetails", "description": "Retrieves detailed information for a specific DocuSign Connect configuration. This endpoint allows account administrators to access and review the settings of a custom Connect configuration, including event triggers, delivery modes, and integration details. It's particularly useful for auditing existing configurations or gathering information before making updates. The endpoint requires Connect to be enabled on the account and is limited to account administrators only." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_CONFIGURATIONS", "name": "Retrieveconnectconfigurations", "description": "Retrieves all Docusign Custom Connect definitions for a specified account. This endpoint allows account administrators to fetch detailed information about existing Connect configurations, including webhook settings, event triggers, and delivery modes. It provides a comprehensive view of how the account is set up to send notifications for various Docusign events. This tool is essential for managing and auditing Connect integrations, but should only be used by authorized account administrators with Connect enabled on their account." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_FAILURE_LOGS", "name": "Retrieve connect failure logs", "description": "Retrieves the Connect failure log information for a specified DocuSign account. This endpoint is specifically designed for account administrators to identify which envelopes failed to post during Connect events. It provides detailed information about each failure, including error messages, retry counts, and URIs for potential republishing attempts. The endpoint supports optional date range filtering to narrow down the search results. Use this method when troubleshooting Connect integration issues or when you need to analyze and potentially retry failed envelope postings. Note that Connect must be enabled on the account for this endpoint to function properly." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_LOG_ENTRY", "name": "Retrieve connect log entry", "description": "Retrieves a specific Connect log entry for a DocuSign account. This endpoint provides detailed information about a Connect event, including account details, configuration information, envelope data, and potential error details. It is particularly useful for troubleshooting Connect integrations, auditing Connect events, and monitoring the overall health of your Connect service. The endpoint requires Connect to be enabled on the account and logging to be activated in the Connect configuration. Only account administrators can access this information." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_LOGS", "name": "Retrieve connect logs", "description": "Retrieves the 100 most recent Connect log entries for a specified DocuSign account. This endpoint is essential for monitoring and troubleshooting DocuSign Connect integrations, providing detailed information about both successful and failed Connect events. It allows administrators to review recent activities, identify issues, and ensure proper functioning of their Connect configurations. The endpoint supports date-based filtering to narrow down the log entries within a specific time range. Note that this endpoint requires administrator access and Connect must be enabled on the account with logging turned on. Log entries are only retained for 15 days." }, { "slug": "DOCUSIGN_RETRIEVE_CONNECT_OAUTH_CONFIGURATION", "name": "Retrieve Connect OAuth Configuration", "description": "Retrieves the Connect OAuth configuration for a specified DocuSign account. This endpoint allows account administrators to access the OAuth settings used for DocuSign Connect, which is crucial for webhook integrations and automated notifications. The retrieved configuration includes essential details such as the authorization server URL, client ID, client secret, and scope settings. This tool should be used when setting up or troubleshooting Connect integrations, or when verifying the current OAuth configuration for an account. It's important to note that this endpoint requires account administrator privileges and Connect must be enabled on the account to access this information. The tool does not modify any settings; it only retrieves the existing configuration." }, { "slug": "DOCUSIGN_RETRIEVE_CREDIT_CARD_INFO", "name": "Retrieve Credit Card Info", "description": "This endpoint retrieves detailed credit card information associated with a specific DocuSign account. It provides comprehensive details about the credit card on file, including the card number (partially masked), type, expiration date, cardholder name, and associated billing address. This tool should be used when there's a need to access or verify the current credit card information for billing purposes within the DocuSign system. It's particularly useful for account management, billing inquiries, or updating payment information. However, due to the sensitive nature of the data returned, this endpoint should be used judiciously and with appropriate security measures in place. The tool does not allow for updating or modifying the credit card information; it is read-only. Be aware that accessing this information may be subject to strict access controls and compliance requirements due to the sensitive financial data involved." }, { "slug": "DOCUSIGN_RETRIEVE_CUSTOM_FIELDS_FOR_ENVELOPE", "name": "Retrieve custom fields for envelope", "description": "Retrieves custom field metadata for a specified envelope. Custom fields are additional data points attached to envelopes that are NOT visible to document recipients. They're used for: - Organizing and categorizing envelopes internally - Tracking workflow stages or approval statuses - Storing reference IDs for integration with other systems (CRM, ERP, etc.) - Filtering and searching envelopes in reports Returns two types of custom fields: 1. List fields: Fields with predefined dropdown options 2. Text fields: Free-form text fields for custom values Supports Salesforce merge fields for CRM integrations. The fields returned are set at envelope creation or modification time and remain with the envelope for its entire lifecycle." }, { "slug": "DOCUSIGN_RETRIEVE_CUSTOM_FIELDS_FOR_TEMPLATE", "name": "Retrievecustomfieldsfortemplate", "description": "This endpoint retrieves the custom document fields for an existing template document in DocuSign. It allows users to access name-value pairs of custom data strings associated with a specific document within a template. This tool is useful for retrieving metadata or custom information that has been added to template documents, which can be used for populating or customizing new envelopes based on the template. It should be used when you need to view or work with the custom fields of a particular document in a DocuSign template. Note that this endpoint only retrieves existing custom fields and does not allow for creation or modification of these fields." }, { "slug": "DOCUSIGN_RETRIEVE_CUSTOM_TAB_INFORMATION", "name": "Retrievecustomtabinformation", "description": "Retrieves detailed information about a specific custom tab associated with a DocuSign account. This endpoint allows users to access the properties and settings of a custom tab, including its anchor information, formatting options, merge field details, and locale settings. It is particularly useful when you need to review or verify the configuration of a custom tab within an account. The endpoint requires both the account ID and the specific custom tab ID to fetch the relevant information. Note that this endpoint only retrieves information and does not modify any existing custom tab settings." }, { "slug": "DOCUSIGN_RETRIEVE_CUSTOM_USER_SETTINGS", "name": "Retrievecustomusersettings", "description": "Retrieves a list of custom user settings for a single user in DocuSign. This endpoint allows flexible storage and retrieval of user-specific information that can be used in your own system, separate from standard user account settings. It supports both grouped and ungrouped custom settings, with the ability to filter by group using an optional header. Use this endpoint when you need to access user-specific configurations, preferences, or any custom data stored for a particular user in your DocuSign integration. Note that users can only access their own custom settings, and this endpoint does not provide access to standard DocuSign account settings." }, { "slug": "DOCUSIGN_RETRIEVE_DEFAULT_DISCLOSURE_FOR_ENVELOPE", "name": "Retrieve default disclosure for envelope", "description": "Retrieves the default HTML-formatted Electronic Record and Signature Disclosure (ERSD) for a specified envelope in DocuSign. This endpoint is used to obtain the standard disclosure text that recipients must agree to before signing documents electronically. It is particularly useful for retrieving language-specific versions of the disclosure and for ensuring compliance with electronic signature regulations." }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_ATTACHMENT", "name": "Retrieve Envelope Attachment", "description": "Downloads a developer-only envelope attachment file from a DocuSign envelope. This retrieves attachments that were added programmatically to an envelope (not signer attachments). These are files associated with the envelope that are only accessible via the API and not visible to signers in the DocuSign UI. The attachment is returned as a downloadable file that can be saved or processed. To get the attachmentId, first use the \"List Envelope Attachments\" action. Note: This endpoint is currently in beta and may undergo changes." }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_AUDIT_EVENTS", "name": "Retrieve Envelope Audit Events", "description": "Retrieves the audit events for a specified envelope in DocuSign. This endpoint allows users to access a detailed history of all actions and changes made to a particular envelope, providing a comprehensive audit trail. It is particularly useful for compliance, security, and tracking purposes, allowing users to monitor the lifecycle of important documents. The endpoint should be used when detailed information about an envelope's history is required, such as verifying signatures, tracking changes, or investigating discrepancies. Note that this endpoint only provides audit events for a single envelope at a time and does not offer filtering or sorting options for the returned events." }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_DOCUMENTS", "name": "Retrieveenvelopedocuments", "description": "Retrieves one or more documents from a DocuSign envelope. This endpoint allows users to fetch a single document, all documents combined, or specific document sets in various formats (PDF, ZIP, PDF portfolio). It's particularly useful for accessing signed documents, certificates of completion, or entire envelope contents. The endpoint offers flexibility in document retrieval, supporting features like language customization, watermarking, and data change highlighting. Use this when you need to download or access documents after they've been processed through DocuSign's electronic signature workflow." }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_EMAIL_OVERRIDES", "name": "Retrieve Envelope Email Overrides", "description": "Retrieves custom email settings for a specific DocuSign envelope. Use this action to get the envelope-specific email configuration overrides including: - Reply-to email address and display name - BCC email addresses for archiving (up to 5 addresses) These settings override the account-level defaults for this specific envelope only. **Important:** This information is NOT included in standard envelope status requests (GET /envelopes/{envelopeId}), so you must use this dedicated endpoint to retrieve email override settings. **Use cases:** - Verify custom reply-to addresses set for specific envelopes - Audit BCC configuration for compliance/archiving purposes - Troubleshoot email delivery issues by checking envelope-specific overrides" }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_HTML_DEFINITION", "name": "Retrieve Envelope Document HTML Definition", "description": "Retrieves the original HTML definition used to generate the responsive HTML for a specific document within an envelope in a DocuSign account. This endpoint is crucial for developers working with DocuSign's responsive signing feature, as it provides detailed information about how the document is formatted and displayed in a responsive manner. The tool returns properties that define the responsive HTML generation, including display anchors, collapsible sections, and responsive table settings. Use this when you need to inspect or troubleshoot the HTML definition of a document in an envelope, particularly for documents using smart sections or responsive signing features. This endpoint does not modify any data and is purely for retrieval purposes." }, { "slug": "DOCUSIGN_RETRIEVE_ENVELOPE_NOTIFICATION_DETAILS", "name": "Retrieve Envelope Notification Details", "description": "Retrieves the notification, reminder, and expiration settings for an existing envelope in DocuSign. This endpoint allows developers to access and review the current notification configuration for a specific envelope, including expiration timelines and reminder schedules. It's particularly useful when you need to verify or audit the notification settings for an envelope, especially in workflows where timely responses are critical. The endpoint does not modify any settings; it only provides read-only access to the current configuration." }, { "slug": "DOCUSIGN_RETRIEVE_ITEMS_IN_CLOUD_STORAGE_FOLDER", "name": "Retrieveitemsincloudstoragefolder", "description": "Retrieves a list of items (files and folders) from a specified folder in an integrated cloud storage provider. This endpoint allows users to browse and search their cloud storage contents directly within the DocuSign application, facilitating document selection for e-signature workflows. It supports pagination, sorting, and filtering options to efficiently manage large folders. Use this endpoint when you need to list, locate, or select files from a user's cloud storage for DocuSign operations. Note that this endpoint only provides metadata about the items and does not download the actual file contents." }, { "slug": "DOCUSIGN_RETRIEVE_LIST_OF_BILLING_PLANS", "name": "Retrievelistofbillingplans", "description": "Retrieves a comprehensive list of billing plans associated with a distributor in the DocuSign system. This endpoint provides detailed information about each billing plan, including plan names, IDs, payment cycles, methods, and pricing details in various currencies. It is particularly useful for administrators or financial teams who need to review or manage billing options for their organization. The endpoint returns all available plans without requiring any input parameters, making it ideal for generating a complete overview of billing options. Note that some fields in the response are reserved for DocuSign internal use and may not be relevant for all users." }, { "slug": "DOCUSIGN_RETRIEVE_PAYMENT_INFORMATION_LIST", "name": "Retrieve payment information list", "description": "Retrieves a list of payment information for a specific DocuSign account. This endpoint allows you to fetch detailed payment data, including amounts, descriptions, payment dates, and IDs. It's particularly useful for accounting purposes, reconciliation, or generating financial reports. By default, it returns payment information for the last 365 days, but you can specify a custom date range using query parameters. The response is paginated, allowing you to handle large datasets efficiently. Note that this endpoint requires account administrator privileges and should be used cautiously to protect sensitive financial information." }, { "slug": "DOCUSIGN_RETRIEVE_PDF_FROM_SPECIFIED_TEMPLATE", "name": "Retrieve pdf from specified template", "description": "Retrieves one or more PDF documents from a specified DocuSign template. This endpoint allows you to fetch individual documents or combine all documents in the template into a single PDF file. It's particularly useful when you need to access template documents for review, processing, or to create new envelopes based on existing templates. The retrieved PDFs can be customized to show recipient changes and can be encrypted for enhanced security. Use this endpoint when you need to work with template documents outside of the DocuSign system or when you want to verify the content of a template before using it." }, { "slug": "DOCUSIGN_RETRIEVE_POWER_FORM_DATA_ENTRIES", "name": "Retrievepowerformdataentries", "description": "This endpoint retrieves data entries for a specific PowerForm within a DocuSign account. It allows PowerForm Administrators or the PowerForm sender to download the information entered by recipients into a PowerForm. The data can be retrieved in various formats (JSON, XML, or CSV) and can be filtered by date range. This endpoint is essential for collecting and analyzing form submissions, enabling businesses to efficiently process and manage data gathered through PowerForms. It should be used when there's a need to extract and analyze PowerForm submission data, but not for real-time form submission tracking. The endpoint provides comprehensive form data, including envelope and recipient details, but does not offer real-time updates or notifications for new submissions." }, { "slug": "DOCUSIGN_RETRIEVE_PROPERTIES_ABOUT_WORKSPACE", "name": "Retrievepropertiesaboutworkspace", "description": "Retrieves detailed properties and information about a specific DocuSign workspace. This endpoint allows you to fetch comprehensive data about a workspace, including its settings, user details, and various metadata. It's particularly useful when you need to access or verify workspace information, such as its current status, description, or associated users. The endpoint requires both an account identifier and the specific workspace ID to retrieve the correct information. Note that some details, like caller information, are only returned for user-specific GET calls. This endpoint should be used when detailed workspace information is needed, but it does not provide document contents or allow modifications to the workspace." }, { "slug": "DOCUSIGN_RETRIEVE_SHARED_ITEM_STATUS_FOR_USERS", "name": "Retrieveshareditemstatusforusers", "description": "Retrieves shared item status for one or more users and types of items within a DocuSign account. This endpoint provides detailed information about how envelopes, templates, and folders are shared among users and groups. It can be used to audit sharing permissions, track shared resources, or gather information for access management. The endpoint offers various filtering options to customize the response based on item types, user statuses, and sharing directions. Note that this endpoint returns information for the legacy Shared Envelopes feature; for the new Shared Access feature, use the Authorizations resource instead." }, { "slug": "DOCUSIGN_RETRIEVE_SIGNER_SIGNATURE_IMAGE_INFORMATION", "name": "Retrieve signer signature image information", "description": "Retrieves the specified user's signature image from a DocuSign envelope. This endpoint allows developers to access the electronic signature image of a specific recipient within an envelope, which can be useful for verification, display, or record-keeping purposes. The image is returned in its original uploaded format, with an option to include or exclude the chrome (added line and identifier around the initial image). This tool is particularly useful when you need to extract or display a user's signature from a completed or in-progress DocuSign transaction. It should be used cautiously, respecting privacy concerns and ensuring proper authorization. Note that older envelopes may only have chromed images available, so a fallback strategy might be necessary in some cases." }, { "slug": "DOCUSIGN_RETRIEVE_TEMPLATE_CUSTOM_FIELDS", "name": "Retrievetemplatecustomfields", "description": "Retrieves the custom document field information from an existing template in DocuSign. This endpoint allows users to fetch both list and text custom fields associated with a specific template. It's particularly useful when you need to view or work with the custom fields that have been set up for a template, enabling you to understand the additional data that can be collected or pre-filled when using this template to create envelopes. The retrieved information includes details such as field IDs, names, required status, and possible values for list fields. This endpoint should be used when you need to inspect or validate the custom fields of a template before using it to create an envelope or when you want to display the available custom fields to users in your application." }, { "slug": "DOCUSIGN_RETRIEVE_TEMPLATE_DOCUMENT_PAGE_IMAGES", "name": "Retrieve Template Document Page Images", "description": "Retrieves and returns images of pages from a specified template document in DocuSign. This endpoint allows users to fetch visual representations of template pages with customizable image properties such as resolution and dimensions. It's particularly useful for previewing or displaying template content within applications, enabling users to view document layouts and content without needing to download the entire document. The endpoint supports pagination for efficient handling of multi-page documents and offers options for showing changes and bypassing cache for up-to-date results." }, { "slug": "DOCUSIGN_RETRIEVE_TEMPLATE_PAGE_IMAGE", "name": "Retrieve template page image", "description": "Retrieves a specific page image from a template document for display purposes. This endpoint is part of the DocuSign Templates API and allows developers to fetch and display individual pages from template documents. It's particularly useful when you need to preview or display a specific page of a template without retrieving the entire document. The endpoint supports customization of the returned image through resolution (DPI) and dimension parameters, enabling optimized image delivery for various display requirements. It should be used when building interfaces that require visual representation of template pages, such as template preview features or document review systems. Note that this endpoint retrieves static images and does not provide interactive elements or real-time template modifications." }, { "slug": "DOCUSIGN_RETRIEVE_USER_ACCOUNT_SETTINGS", "name": "Retrieve user account settings", "description": "Retrieves a comprehensive list of account settings and email notification preferences for a specified user within a DocuSign account. This endpoint provides detailed information about the user's configuration, including locale settings, email notification preferences, account management capabilities, and various other user-specific settings. It's particularly useful for understanding a user's current configuration or for troubleshooting user-specific issues. The endpoint is limited to retrieving settings for the authenticated user only, even for admin users, ensuring privacy and security of individual user settings. The response includes a wide range of settings, from basic preferences to advanced features like vaulting and template management, offering a complete view of the user's DocuSign environment configuration." }, { "slug": "DOCUSIGN_RETRIEVE_USER_INITIALS_IMAGE_FOR_ENVELOPES", "name": "Retrieve user initials image for envelopes", "description": "Retrieves the initials image that a recipient used when signing a DocuSign envelope. This endpoint allows you to fetch the recipient's initials image in its original format (GIF, PNG, JPEG, or BMP), with an option to include or exclude the chrome (added line and identifier around the image). The initials image is only available after the recipient has signed the envelope and used initials on the document. If the recipient hasn't signed yet or didn't use initials, the API will return a 404 error. This is particularly useful when you need to display or audit the actual initials that were stamped on documents during the signing process. Note that for older envelopes, only chromed images might be available." }, { "slug": "DOCUSIGN_RETRIEVE_USER_PROFILE_IMAGE", "name": "Retrieve User Profile Image", "description": "Retrieves the user profile picture for a specified user within a DocuSign account. This endpoint allows users to fetch their own profile image, which is returned in the same format as it was originally uploaded. It's particularly useful for applications that need to display user avatars or profile pictures within the DocuSign ecosystem. The endpoint ensures that users can only access their own profile image, maintaining privacy and security. If no profile image exists for the user, the endpoint will indicate this with a 404 Not Found response." }, { "slug": "DOCUSIGN_RETRIEVE_USER_PROFILE_INFORMATION", "name": "Retrieve user profile information", "description": "This endpoint retrieves comprehensive user profile information for a specified user within a DocuSign account. It provides detailed data about the user's personal information, settings, preferences, and permissions. The endpoint is particularly useful for obtaining an in-depth view of a user's configuration within the DocuSign system, including their authentication methods, email notification settings, and locale preferences. It should be used when detailed user information is required for account management, user customization, or auditing purposes. Note that users can only access their own information, and the userId parameter must match the authenticated user's ID. The endpoint does not allow for modification of user settings; it is strictly for retrieval of existing information." }, { "slug": "DOCUSIGN_RETRIEVE_USER_SIGNATURE_DEFINITIONS", "name": "Retrieve user signature definitions", "description": "This endpoint retrieves the signature definitions for a specified user within a DocuSign account. It allows users to access their own signature information, including details about signature images, stamps, and associated metadata. The endpoint is useful for applications that need to display or manage user signatures within the DocuSign ecosystem. It supports retrieving different types of signatures based on the optional stamp_type parameter. The response includes comprehensive information about each signature, such as creation date, image data, and various properties related to the signature's appearance and usage." }, { "slug": "DOCUSIGN_RETRIEVE_USER_SIGNATURE_IMAGE", "name": "Retrieveusersignatureimage", "description": "Retrieves a specified user's signature or initials image from DocuSign. This endpoint allows you to fetch the image in its original upload format, with an option to include or exclude the chrome (frame) around the image. It's useful for applications that need to display or process user signatures. The endpoint requires specific user authentication and is limited to retrieving the authenticated user's own signature images. It supports various image types including stamps, signatures, and initials, making it versatile for different signature requirements in document workflows." }, { "slug": "DOCUSIGN_RETRIEVE_USER_SIGNATURE_INFORMATION", "name": "Retrieve user signature information", "description": "This endpoint retrieves the detailed structure and information of a single user signature within a DocuSign account. It provides comprehensive details about the signature, including its creation date, image URIs, stamp properties, and associated rights. The endpoint is designed for users to access and review their own signature information, ensuring data privacy and security. It's particularly useful when users need to verify their signature settings or retrieve signature images for use in other contexts." }, { "slug": "DOCUSIGN_RETRIEVE_WORKFLOW_STEP_FOR_TEMPLATE", "name": "Retrieveworkflowstepfortemplate", "description": "Retrieves detailed information about a specific workflow step for a DocuSign template. This endpoint allows users to access the configuration and status of a single step within a template's workflow, including delayed routing settings and conditional recipient rules. It's particularly useful for monitoring the progress of complex, multi-step template processes or for troubleshooting issues with specific workflow steps. The endpoint provides read-only access to step details and should be used when you need to inspect or verify the current state and rules of a particular workflow step within a template. Note that this endpoint does not allow modification of the workflow step; it is for retrieval purposes only." }, { "slug": "DOCUSIGN_RETURN_ALL_CONNECT_SERVICE_USERS", "name": "Return all connect service users", "description": "Retrieves all users from the configured Connect service for a specific DocuSign account and Connect configuration. This endpoint allows account administrators to fetch user information, including email addresses, user IDs, and inclusion status in the Connect service. It supports filtering by email, username, and status, as well as pagination for large result sets. This tool should be used when you need to obtain a comprehensive list of users associated with a particular Connect configuration, which is useful for auditing, user management, or integration purposes. Note that this endpoint requires Connect to be enabled on the account and can only be accessed by account administrators." }, { "slug": "DOCUSIGN_RETURN_BRAND_RESOURCE_METADATA_FOR_ACCOUNT", "name": "Return Brand Resource Metadata For Account", "description": "Retrieves metadata about the branding resources associated with a specific DocuSign account and brand. This endpoint returns detailed information about various brand resource types, including those used for sending, signing, email, and captive (embedded) signing experiences. It's particularly useful for developers who need to inspect or manage custom branding elements within a DocuSign integration. The endpoint should be used when you need to audit brand resources, prepare for updates, or gather information about the current branding configuration. Note that this endpoint only returns metadata and URIs for the resources, not the actual resource content. Also, branding must be enabled for the account (either for signing, sending, or both) for this endpoint to return meaningful data." }, { "slug": "DOCUSIGN_RETURN_ENVELOPE_TAB_DATA_FOR_EXISTING_ENVELOPE", "name": "Return Envelope Tab Data For Existing Envelope", "description": "Retrieves detailed form data from a DocuSign envelope, including the current values of form fields, recipient information, and envelope status. This endpoint is used to download envelope and tab data from in-process, completed, or canceled envelopes that the user has sent or that are shared with them. It's particularly useful for analyzing form submissions, tracking recipient interactions, and integrating DocuSign data with external systems. The method requires the \"Allow sender to download form data\" setting to be enabled for the account." }, { "slug": "DOCUSIGN_RETURN_SCHEDULED_SENDING_RULES_FOR_ENVELOPE", "name": "Get Envelope Scheduled Sending Rules", "description": "Get the scheduled sending configuration for a DocuSign envelope. Returns when and how an envelope is scheduled to be sent, including: - Send date/time (resumeDate): When the envelope will be sent - Delay rules: Time to wait before sending (format: d.hh:mm:ss) - Status: Whether sending is pending, started, or completed - Bulk list ID: If used with bulk sending Use this to check if an envelope has scheduled sending enabled and when it will be sent. Requires a valid envelope ID that has scheduled sending configured. Important: Returns 404 if the envelope doesn't have scheduled sending rules. You must first set up scheduled sending using UPDATE_ENVELOPE_SCHEDULED_SENDING_RULES before you can retrieve the configuration. Example use cases: - Check when a draft envelope is scheduled to send - Verify scheduled sending configuration before envelope goes out - Monitor the status of delayed envelope sending" }, { "slug": "DOCUSIGN_RETURNS_DOCUMENT_PAGE_IMAGES_BASED_ON_INPUT", "name": "Returns document page images based on input", "description": "Retrieves images of document pages from a specific envelope in a DocuSign account. This endpoint allows users to fetch page images with customizable parameters such as resolution (DPI), image dimensions, and pagination options. It's particularly useful when you need to display or process document pages without downloading the entire document. The endpoint supports showing changes made to the document and can bypass caching for the most up-to-date images. It's ideal for applications that need to render document previews, perform image analysis, or create custom document viewers." }, { "slug": "DOCUSIGN_RETURN_TEMPLATE_WORKFLOW_DEFINITION", "name": "Return Template Workflow Definition", "description": "Retrieves the workflow definition for a specified DocuSign template. This endpoint returns detailed information about the template's workflow, including scheduled sending settings, workflow status, and individual workflow steps. It's useful for understanding and managing the automated process flow of a template. The endpoint should be used when you need to examine or troubleshoot a template's workflow configuration. Note that if the specified template does not have a workflow object, this method will return a 404 error. The response includes comprehensive data about the workflow, but does not modify the template or its workflow in any way." }, { "slug": "DOCUSIGN_RETURN_USERS_FROM_CONNECT_SERVICE", "name": "Return users from connect service", "description": "Retrieves users associated with a specific DocuSign Connect configuration. This endpoint returns information about which users are linked to a Connect configuration, indicating either that all users are selected (allUsersSelected) or providing a list of specific users. Connect configurations define webhook settings for receiving real-time event notifications from DocuSign. The response indicates user selection for the Connect configuration: - When allUsersSelected is \"True\", the configuration applies to all account users - When specific users are configured, they are returned in the users array - Supports pagination for large user lists via count and start_position parameters Requires account administrator privileges and an active Connect configuration." }, { "slug": "DOCUSIGN_REVOKE_ENVELOPE_CORRECTION_URL", "name": "Revokeenvelopecorrectionurl", "description": "This endpoint revokes the correction view URL for a specific envelope in DocuSign, effectively disabling the ability to make further corrections to the envelope. It should be used when you want to prevent any additional modifications to an envelope that was previously available for correction. This is particularly useful in scenarios where the correction period has ended or when you need to lock an envelope's content for compliance or business process reasons. The endpoint requires the account ID and envelope ID to identify the specific envelope for which the correction view should be revoked. It's important to note that once revoked, the correction view cannot be reinstated without creating a new correction view URL. This operation does not affect the envelope's content or status; it only restricts access to the correction interface." }, { "slug": "DOCUSIGN_ROTATE_PAGE_IMAGE_FOR_ENVELOPE", "name": "Rotate page image for envelope", "description": "This endpoint rotates a page image within a specific document of an envelope in DocuSign. It allows users to change the orientation of a page to either left or right for improved display and readability. This function is particularly useful when dealing with documents that may have been scanned or uploaded in an incorrect orientation. The rotation is applied only to the display of the image and does not permanently alter the original document. Use this endpoint when you need to adjust the viewing angle of a specific page within an envelope, especially before sending it for signatures or during the review process." }, { "slug": "DOCUSIGN_ROTATE_TEMPLATE_PAGE_IMAGE", "name": "Rotate Template Page Image", "description": "Rotates a page image within a DocuSign template for display purposes. This endpoint allows users to adjust the orientation of a specific page image to either the left or right within a template. It is particularly useful when preparing templates for use in electronic signature processes, ensuring that page images are correctly oriented for optimal viewing and signing. This operation only affects the display of the page image and does not alter the actual content of the document. Use this endpoint when you need to correct or adjust the orientation of page images in your DocuSign templates before sending them out for signatures." }, { "slug": "DOCUSIGN_SEND_ENVELOPE", "name": "Send Envelope", "description": "Sends a draft envelope by updating its status to 'sent'. Example envelope_id format: '93be49ab-xxxx-xxxx-xxxx-f752070d71ec'" }, { "slug": "DOCUSIGN_SET_ENVELOPE_PURGE_CONFIG_FOR_ACCOUNT", "name": "Set envelope purge config for account", "description": "Configures automatic envelope purge settings for a DocuSign account. This action allows account administrators to set up policies for automatically removing envelope documents after a specified retention period. The configuration includes options for: - Enabling/disabling automatic purging - Setting the retention period (0-999 days) - Removing tabs and attachments during purge - Redacting personally identifiable information (PII) **Important:** This endpoint requires account administrator privileges. PII redaction can only be enabled when `removeTabsAndEnvelopeAttachments` is also enabled. **Use Cases:** - Set up automated document retention policies for compliance - Configure PII redaction for privacy requirements - Manage storage costs by purging old envelopes **Beta Feature:** This functionality is currently in beta status." }, { "slug": "DOCUSIGN_SET_INITIALS_IMAGE_FOR_ACCOUNTLESS_SIGNER", "name": "Set initials image for accountless signer", "description": "This endpoint allows you to update the initials image for a signer who does not have a DocuSign account within a specific envelope. It's used to customize the appearance of a signer's initials on documents, enhancing the personalization of the signing process. The endpoint supports various image formats (gif, png, jpeg, and bmp) with a file size limit of 200K. It's particularly useful for maintaining brand consistency or adding a personal touch to documents for signers without DocuSign accounts. Note that this operation can only be performed by the envelope sender and is subject to specific account permissions." }, { "slug": "DOCUSIGN_SET_SHARED_ACCESS_FOR_USERS_AND_TEMPLATES", "name": "Set shared access for users and templates", "description": "This endpoint sets shared access for users and templates in DocuSign. It manages collaboration and access control within an organization for envelopes, templates, and folders. Only users with admin privileges can set envelope access, while template access requires ownership or admin rights. Changes replace current status, not add to it. Use 'item_type=templates' for template access. It's an improved version of Update Group Share, offering more granular control." }, { "slug": "DOCUSIGN_SET_SIGNATURE_IMAGE_FOR_NO_ACCOUNT_SIGNER", "name": "Set signature image for no account signer", "description": "This endpoint updates the signature image for an accountless signer in a DocuSign envelope. It allows you to set a custom signature image for recipients who don't have a DocuSign account, enhancing the flexibility of the signing process. The endpoint supports gif, png, jpeg, and bmp image formats, with a file size limit of less than 200K. It's specifically designed for use with accountless signers or in-person signers, providing a way to personalize their signature appearance. This function is useful when you need to customize the signature image for recipients who are not DocuSign account holders, such as one-time signers or in-person signing scenarios." }, { "slug": "DOCUSIGN_SET_TEMPLATES_AS_ACCOUNT_FAVORITES", "name": "Set templates as account favorites", "description": "This endpoint allows users to set one or more templates as account favorites in DocuSign. It's used to mark specific templates for quick access within a user's account. The endpoint can handle multiple templates in a single request, making it efficient for bulk operations. It's particularly useful for users who frequently work with the same set of templates and want to streamline their workflow. Note that this is a beta API and may be subject to changes in future versions." }, { "slug": "DOCUSIGN_SET_UP_CONNECT_OAUTH_CONFIGURATION", "name": "Set up connect oauth configuration", "description": "Sets up Connect OAuth configuration for a specified DocuSign account using a custom authorization server. This endpoint enables secure, OAuth-based communication for DocuSign Connect, allowing real-time notifications about envelope status changes. It should be used when integrating DocuSign Connect with your own authorization server for enhanced security and control over webhook notifications. This tool is essential for account administrators setting up or updating Connect OAuth configurations, but requires Connect to be enabled on the account." }, { "slug": "DOCUSIGN_SET_USER_SIGNATURE_IMAGE", "name": "Set User Signature Image", "description": "Sets or updates a user's signature image, initials, or stamp in their DocuSign account. This endpoint uploads an image file to replace or create a signature element. Use this action to: - Upload a signature image for electronic document signing - Set initials image for a user - Add custom stamp images The image is uploaded using multipart/form-data format. Supported image formats include PNG, JPG, GIF, and BMP. Transparent PNG is recommended for best visual results when overlaying on documents. Note: You must first retrieve the signatureId using RETRIEVE_USER_SIGNATURE_DEFINITIONS action, or create a new signature using ADD_OR_UPDATE_USER_SIGNATURE action." }, { "slug": "DOCUSIGN_SHARE_TEMPLATE_WITH_GROUP", "name": "Share template with group", "description": "This endpoint allows you to share a DocuSign template with a specified members group. It's used to grant access to templates for collaboration and reuse within an organization. Note that this endpoint is deprecated, and for newer functionality, it's recommended to use the 'Accounts: Update Shared Access' endpoint instead. The operation updates the sharing settings for a specific template, enabling administrators to control template access across different groups efficiently." }, { "slug": "DOCUSIGN_SUBMIT_BATCH_HISTORICAL_ENVELOPES_TO_WEBHOOK", "name": "Submit batch historical envelopes to webhook", "description": "This endpoint submits a batch of existing envelopes to a specified webhook for historical publishing. It allows you to retroactively send envelope data to your systems for completed transactions, which is useful for data synchronization, auditing, or recovering missed notifications. The endpoint uses an ad hoc configuration provided in the request, rather than relying on existing Connect configurations. Unlike regular Connect listeners that monitor new activity, this endpoint is specifically designed for publishing historical data on demand. It only supports JSON format for data transmission and allows fine-grained control over which envelope data and events are included in the webhook payload. The endpoint is particularly useful when you need to backfill data, synchronize systems after downtime, or perform bulk operations on historical envelopes." }, { "slug": "DOCUSIGN_TOGGLE_API_REQUEST_LOGGING", "name": "Toggle api request logging", "description": "This endpoint enables or disables API request logging for troubleshooting purposes in DocuSign. It allows users to toggle the logging of REST API requests and responses, set the maximum number of log entries, and view the remaining log capacity. The tool is crucial for debugging API integrations by providing detailed request/response information while ensuring sensitive data is omitted from the logs. It should be used when investigating API-related issues or monitoring API usage patterns. The endpoint has a limit of 50 log entries and automatically disables logging when this limit is reached. Only requests from authenticated users are captured, and the logs can be retrieved or cleared using separate API calls." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_BRAND_SETTINGS", "name": "Updateaccountbrandsettings", "description": "The UpdateAccountBrandSettings endpoint modifies or replaces an existing brand configuration for a DocuSign account. It customizes various brand aspects like company name, languages, colors, and landing pages. Use this tool to update branding elements for consistency across DocuSign interactions. It can update specific fields or replace the entire brand configuration. Note that branding must be enabled for the account, and resource file modifications require separate API calls." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_CUSTOM_FIELD", "name": "Updateaccountcustomfield", "description": "This endpoint updates an existing account custom field in DocuSign. It allows you to modify the properties of a custom field, such as its name, type, required status, visibility, and value. The endpoint supports both list and text custom fields, enabling account administrators to refine and adjust custom metadata used for grouping and managing envelopes. Use this endpoint when you need to change the configuration or content of an existing account-level custom field. Note that this operation affects the custom field at the account level, potentially impacting all envelopes and templates that use this custom field." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_PASSWORD_RULES", "name": "Update account password rules", "description": "This endpoint updates the password rules for a DocuSign account. It allows account administrators to modify various password policy settings, including expiration, complexity requirements, lockout durations, and security question requirements. Use this endpoint to enhance account security, comply with organizational policies, or adapt to changing security needs. The endpoint provides extensive customization options, from basic password requirements to complex, multi-factor authentication setups. Note that changes made through this endpoint will affect all users within the specified account, so it should be used carefully and in accordance with your organization's security policies." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_SETTINGS", "name": "Updateaccountsettings", "description": "Updates various settings for a specified DocuSign account. This endpoint allows administrators to configure a wide range of account-level options, including security settings, compliance features, and user interface preferences. Use this when you need to modify your DocuSign account configuration to align with organizational needs and policies. Note that many settings require administrative privileges, and some may have interdependencies with other features." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_STAMP_BY_ID", "name": "Update account stamp by id", "description": "This endpoint allows you to update an existing account stamp (signature) in DocuSign. It provides extensive customization options for the stamp's appearance, associated users, and properties. Use this when you need to modify an existing stamp's details, such as its image, font, size, or user permissions. The endpoint is particularly useful for maintaining up-to-date and personalized stamps for document signing. Note that this operation will overwrite the existing stamp properties, so ensure all desired properties are included in the request, even if they haven't changed." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_STAMPS", "name": "Updateaccountstamps", "description": "Update existing account stamps (signatures) in a DocuSign account. Modifies properties of existing stamps by referencing their signatureId. Supports updating names, sizes, formats (NameHanko/NameDateHanko), resize permissions, phonetic names, and external IDs. Supports batch updates of multiple stamps in one request. Note: The signatureId changes after each update. Use DOCUSIGN_ADD_OR_UPDATE_ACCOUNT_STAMPS to create new stamps. At least one stamp must be included in the request." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_WATERMARK_INFORMATION", "name": "Update account watermark information", "description": "This endpoint updates the watermark settings for a specified DocuSign account. It allows customization of various watermark properties such as display angle, font, color, size, and transparency. The endpoint can be used to enable or disable the watermark feature, change the watermark text, or modify its appearance on documents. It's particularly useful for maintaining brand consistency, indicating document status, or adding security features to in-progress documents. The endpoint returns the updated watermark information, allowing immediate confirmation of changes. Note that while most properties can be modified, the imageBase64 property is read-only and cannot be set through this call." }, { "slug": "DOCUSIGN_UPDATE_ACCOUNT_WATERMARK_PREVIEW", "name": "Update Account Watermark Preview", "description": "Updates and previews watermark settings for a DocuSign account before applying them. This endpoint allows you to test watermark appearance settings including text, font, color, size, display angle, and transparency without permanently saving the configuration. Use this action when you want to preview how watermark customizations will look on documents before committing to the changes. The watermark preview shows how the settings will appear on in-progress documents. Note: All parameters are optional. If not specified, existing watermark settings will be preserved. Parameters with specific valid values (fonts, colors, angles, etc.) will use defaults if invalid values are provided." }, { "slug": "DOCUSIGN_UPDATE_BILLING_PLAN_FOR_ACCOUNT", "name": "Update billing plan for account", "description": "Updates billing plan information, address, and payment details for a DocuSign account. Allows comprehensive modifications to billing setup, including payment methods, plan features, and promotional offers. Offers a preview mode for reviewing changes before applying. Use for significant billing configuration changes or plan transitions. Exercise caution as it may trigger immediate billing changes." }, { "slug": "DOCUSIGN_UPDATE_BULK_SEND_BATCH_NAME", "name": "Update Bulk Send Batch Name", "description": "Updates the name of an existing DocuSign bulk send batch. This action allows you to rename a specific bulk send batch for better organization and identification. Use this when you need to update the batch name after creation, for example to reflect the batch purpose or processing status. Key points: - Only updates the batch name; other batch properties remain unchanged - The batch name can be up to 500 characters long - Returns the updated batch status including sent/failed envelope counts - Requires a valid bulkSendBatchId from a previously created bulk send batch Note: Bulk Send is an advanced DocuSign feature available on Business Pro and Enterprise Pro plans. Ensure your account has bulk send permissions enabled." }, { "slug": "DOCUSIGN_UPDATE_CONNECT_OAUTH_CONFIGURATION", "name": "Update connect oauth configuration", "description": "This endpoint updates an existing Connect OAuth Configuration for a DocuSign account. Use it to modify OAuth settings for DocuSign Connect integrations, such as updating authorization URLs, client credentials, or scopes. It's crucial for maintaining secure data exchange between DocuSign and integrated systems. Exercise caution when using this endpoint, as incorrect changes may disrupt existing integrations." }, { "slug": "DOCUSIGN_UPDATE_CONTACTS_INFORMATION", "name": "Update contacts information", "description": "This endpoint updates one or more contacts associated with a DocuSign account. It allows for comprehensive modifications to contact information, including personal details, communication methods, and notary-specific data. The endpoint supports bulk updates, enabling efficient management of multiple contacts in a single API call. It's particularly useful for maintaining up-to-date contact records, especially in scenarios involving shared contacts or notary services. The endpoint returns the updated contact details upon successful execution, providing immediate confirmation of the changes made." }, { "slug": "DOCUSIGN_UPDATE_CUSTOM_FIELDS_IN_ENVELOPE_DOCUMENT", "name": "Update custom fields in envelope document", "description": "This endpoint allows you to update existing custom document fields in a specific document within an envelope in DocuSign. Custom document fields are name-value pairs that can be used to store additional metadata or information about the document. This function is useful when you need to modify or add custom data to a document that is already part of an envelope. It's important to note that while DocuSign returns this custom field information in the status, it does not use this data for any internal processes. This endpoint should be used when you need to update or add custom metadata to a document in an existing envelope, but not for modifying the actual content of the document or the envelope's core properties." }, { "slug": "DOCUSIGN_UPDATE_CUSTOM_TAB_INFORMATION_FOR_ACCOUNT", "name": "Update custom tab information for account", "description": "This endpoint updates the information for a custom tab associated with a specific DocuSign account. It allows for extensive customization of tab properties, including appearance, behavior, and positioning within documents. The endpoint is used when modifying existing custom tabs to change their characteristics or functionality. It provides granular control over tab settings but requires careful consideration of the numerous optional parameters to avoid unintended changes." }, { "slug": "DOCUSIGN_UPDATE_DOCUMENT_VISIBILITY_RECIPIENTS", "name": "Updatedocumentvisibilityrecipients", "description": "Updates document visibility settings for multiple recipients in a DocuSign envelope. Use this action to control which documents each recipient can see and their access level (read-only or editable). This is essential for managing multi-document envelopes where different recipients should only access specific documents. Key features: - Set visibility for multiple document-recipient pairs in one request - Control access rights: read-only or editable - Hide documents from specific recipients (if no tabs assigned) Important limitations: - Documents with tabs assigned to a recipient cannot be hidden from that recipient - Some recipient types (Carbon Copy, Certified Delivery, Editor, Agent) always see all documents - The envelope must be in a state that allows modifications (typically 'created' status) Example use case: In a purchase agreement with financial disclosures, you might want the buyer to see the main agreement and their financial documents, while hiding the seller's confidential financial information." }, { "slug": "DOCUSIGN_UPDATE_DOCUSIGN_CONNECT_CONFIGURATION", "name": "Update docusign connect configuration", "description": "This endpoint updates an existing DocuSign Connect configuration for a specified account. It allows you to modify various settings such as the events that trigger notifications, the endpoint URL for receiving webhooks, data format preferences, and integration details with Salesforce. Use this endpoint when you need to change the behavior of your Connect configuration, such as enabling or disabling it, updating the notification URL, or modifying the events that trigger updates. It's particularly useful for adjusting your integration as your application's needs evolve or when troubleshooting issues with your webhook setup. Note that this endpoint requires account administrator privileges and Connect must be enabled on the account. Be cautious when updating critical settings like 'requiresAcknowledgement' or 'useSoapInterface', as they can significantly impact how your application receives and processes DocuSign notifications." }, { "slug": "DOCUSIGN_UPDATE_ELECTRONIC_RECORD_DISCLOSURE", "name": "Update electronic record disclosure", "description": "Updates the Electronic Record and Signature Disclosure (ERSD) for a DocuSign account. Allows administrators to customize the default disclosure, switch to a custom one, or update existing custom disclosures in multiple languages. Only account administrators can use this method. Changes may require unsigned recipients to accept a new disclosure version before signing documents." }, { "slug": "DOCUSIGN_UPDATE_ENOTE_INTEGRATION_CONFIG", "name": "Updateenoteintegrationconfig", "description": "Updates the eNote integration configuration for a specific DocuSign account. This endpoint allows users to modify settings related to eNote functionality, including API key, Connect configuration, eNote configuration, organization details, and user credentials. It should be used when setting up or modifying the eNote and eOriginal integration for secure electronic document management. The endpoint requires the account to have the 'Allow eNote for eOriginal' plan item enabled. Note that this is a beta API and may be subject to changes. Ensure that both Connect and eOriginal are properly configured for the integration to work correctly." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_ATTACHMENT", "name": "Update envelope attachment", "description": "Updates an existing attachment for a draft or in-process envelope in DocuSign. This endpoint allows you to modify attachment properties such as access control, type, content, label, and name. It supports file attachments up to 50 MB and provides options for chunked uploads of large files. Use this endpoint when you need to update or replace an attachment that has already been added to an envelope, before it has been sent for signing. Note that this endpoint is specifically for envelope attachments (developer-only files) and should not be confused with signer attachments." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_CUSTOM_FIELDS", "name": "Update envelope custom fields", "description": "This endpoint allows users to update custom fields for draft and in-process envelopes in DocuSign. It enables the modification of both list-based and text-based custom fields, which can be used for sorting, organizing, searching, and other downstream processes. This tool is particularly useful when you need to add or modify envelope-specific data that is not captured by standard DocuSign fields. It should be used when customizing envelopes with additional metadata or when implementing specialized workflows, such as eVaulting for eOriginal customers. Note that these custom fields are visible to envelope creators and senders in the Envelope Settings section but are not visible to envelope recipients." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_DELAYED_ROUTING_RULES", "name": "Updateenvelopedelayedroutingrules", "description": "Updates the delayed routing rules for a specific workflow step in a DocuSign envelope. This endpoint allows you to add or modify delayed routing settings for both draft and sent envelopes, as long as the previous workflow step has not been completed. It enables you to control when the envelope will be sent to the recipients associated with the workflow step, either by specifying a relative delay or an exact future date and time. The endpoint can be used to implement timed workflows, schedule future sendings, or adjust existing delay rules. Note that updating an in-progress delay will reset the countdown." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_DOC_GEN_FORM_FIELDS", "name": "Update Envelope DocGen Form Fields", "description": "This method dynamically generates an envelope's documents by populating its sender fields. The envelope must be in a draft state. Use the DocumentGeneration::getEnvelopeDocGenFormFields response to retrieve the list of sender fields for your envelope. Use that list to build the request for this method. For each field, specify the field name and the value to populate. Important notes: - If update_docgen_formfields_only is false (the default), the documentId changes after the update. - This endpoint does not validate number, date, or select data field values. The request can succeed even if a number or date field value is not a valid number or date, or if a select field value is not one of the allowed values. The envelope's template must be configured with document generation capabilities; this method has no effect on standard envelopes without doc-gen templates." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_EMAIL_SETTINGS", "name": "Updateenvelopeemailsettings", "description": "Updates the existing email override settings for a specified envelope in DocuSign. This endpoint allows customization of the Reply To email address and name, as well as BCC email addresses for a specific envelope. It's particularly useful when you need to modify email settings for an individual envelope without affecting account-level settings. Note that changes only apply to future email communications related to the envelope. This endpoint can also be used to remove individual email override settings by providing an empty string for the value to be deleted." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_NOTIFICATION_SETTINGS", "name": "Update envelope notification settings", "description": "Updates the notification settings for a specific DocuSign envelope, including reminders and expirations. This endpoint allows you to customize when and how often recipients receive reminder emails, as well as set the expiration period for the envelope. It can either apply custom settings or use the account's default notification settings. The method only updates the settings and does not trigger the sending of any notifications. Use this when you need to modify the reminder or expiration behavior for an existing envelope, such as extending the expiration date or adjusting the frequency of reminders." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_SCHEDULED_SENDING_RULES", "name": "Update envelope scheduled sending rules", "description": "Updates the scheduled sending rules for an envelope's workflow in DocuSign. This endpoint allows users to set or modify when an envelope will be sent, providing precise control over document delivery timing. It can be used to delay sending, schedule future sends, or manage bulk send operations with specific timing. The endpoint is particularly useful for automating complex document workflows or coordinating large-scale document distributions." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_WORKFLOW_DEFINITION", "name": "Update envelope workflow definition", "description": "Updates the workflow definition for a specified envelope in DocuSign. It allows modification of scheduled sending, delayed routing, and conditional recipient rules. Use this endpoint to add or update scheduling for draft or in-progress envelopes, or to add delayed routing to envelopes not yet in workflow processing. The tool supports complex document workflows with timed actions, conditional processing, and staged approvals." }, { "slug": "DOCUSIGN_UPDATE_ENVELOPE_WORKFLOW_STEP", "name": "Update envelope workflow step", "description": "Updates a specific workflow step for a DocuSign envelope, allowing for customization of envelope processing, including delayed routing and conditional recipients. This endpoint can be used to modify workflow steps for both draft envelopes and sent envelopes (as long as the previous step hasn't been completed). It enables features like scheduled sending and complex routing rules based on recipient actions or document content. The endpoint is particularly useful for implementing advanced document workflows, such as time-based routing or conditional approval processes." }, { "slug": "DOCUSIGN_UPDATE_GROUP_INFORMATION", "name": "Update group information", "description": "Updates group information for one or more user groups in a DocuSign account. This action allows you to modify group properties such as group name and permission profile assignments. **Required Parameters:** - groups: A list of group objects to update. Each group must include: - groupId: The DocuSign group ID identifying which group to update - At least one field to update (e.g., groupName or permissionProfileId) **Common Use Cases:** - Rename one or more groups - Change the permission profile assigned to a group - Update multiple groups in a single API call **Note:** The accountId parameter is automatically populated from authentication metadata. To get group IDs, first use the GET_GROUPS_INFORMATION_FOR_ACCOUNT action to list existing groups." }, { "slug": "DOCUSIGN_UPDATE_LOCK_FOR_ENVELOPE", "name": "Updatelockforenvelope", "description": "Updates lock settings for an already-locked envelope in DocuSign to extend duration or modify the locking application identifier. Use this to extend lock time during long editing sessions (max 1800 seconds/30 minutes) or update the lockedByApp identifier. Returns updated lock information including the new lock token, expiration time, and duration. Prerequisites: Envelope must already be locked using DOCUSIGN_LOCK_AN_ENVELOPE_FOR_EDITING. Only the user/application that created the lock can update it. X-DocuSign-Edit header with valid lock token is handled automatically. Common scenarios: Extending locks to prevent expiration during lengthy edits, refreshing lock tokens after interruptions, or updating application identifiers." }, { "slug": "DOCUSIGN_UPDATE_NOTARY_JURISDICTION_INFO", "name": "Update notary jurisdiction info", "description": "Updates the jurisdiction information for a notary in the DocuSign system. This endpoint allows for modification of various details related to a notary's commission and jurisdiction settings. It should be used when there are changes to a notary's information, such as their registered name, commission expiration date, or seal type. The endpoint requires a full jurisdiction object in the request body, even when updating only specific fields. It's important to note that this endpoint can only be used by authenticated users who are registered notaries and for jurisdictions they are authorized for." }, { "slug": "DOCUSIGN_UPDATE_PERMISSION_PROFILE_SETTINGS", "name": "Updatepermissionprofilesettings", "description": "This endpoint updates an existing account permission profile in DocuSign. It allows administrators to modify various settings and permissions for users associated with the profile, providing granular control over user capabilities within the DocuSign platform. The endpoint is used to customize user access rights, configure notification preferences, and set other account-specific options. It's particularly useful for maintaining security and tailoring user experiences based on roles or departments within an organization. Note that this endpoint requires administrative access and should be used cautiously, as changes can significantly impact user abilities and workflow processes." }, { "slug": "DOCUSIGN_UPDATE_RECIPIENT_DOCUMENT_VISIBILITY", "name": "Updaterecipientdocumentvisibility", "description": "This endpoint updates the document visibility settings for a specific recipient within a DocuSign envelope. It allows fine-grained control over which documents a recipient can see and whether they have read-only or edit access. Use this when you need to modify document access for a particular recipient after an envelope has been created. This is particularly useful for managing complex workflows where different recipients need access to different sets of documents. Note that you cannot hide documents from recipients who have tabs assigned to them, and certain recipient types always have full document visibility." }, { "slug": "DOCUSIGN_UPDATE_SIGNING_GROUP_DETAILS", "name": "Update signing group details", "description": "Updates the details of a specified signing group within a DocuSign account, including the group name, email, and member information. This endpoint allows for modifying existing group data and adding new members to the signing group, with a maximum limit of 50 members per group. It's particularly useful for managing and maintaining up-to-date signing group information, ensuring efficient document routing and signing processes. The endpoint requires the account ID and signing group ID for identification, and returns comprehensive details about the updated signing group, including creation and modification timestamps. Use this when you need to modify signing group properties or adjust its membership, but be aware of the 50-member limit per group." }, { "slug": "DOCUSIGN_UPDATE_SIGNING_GROUP_NAMES", "name": "Updatesigninggroupnames", "description": "Updates the names of one or more existing signing groups in DocuSign. This endpoint allows you to modify the names of signing groups, which are collections of users grouped together for document signing purposes. It's useful when you need to rename signing groups to reflect organizational changes or improve clarity. The endpoint updates only the group names and doesn't modify other group properties or memberships. Use this when you need to maintain accurate and up-to-date naming conventions for your signing groups." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_CUSTOM_FIELDS", "name": "Update template custom fields", "description": "Updates the custom fields in a DocuSign template. This endpoint allows you to modify both list and text custom fields associated with a specific template, ensuring each field has a unique name. It's used to customize templates for specific use cases, enabling prepopulation of metadata for envelopes created from the template. The endpoint supports updating multiple custom fields in a single request, making it efficient for batch updates. However, it does not create new custom fields; it only modifies existing ones." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_DELAYED_ROUTING_RULES", "name": "Update Template Delayed Routing Rules", "description": "This endpoint updates the scheduled sending rules for a specific workflow step in a DocuSign template. It allows users to set up delayed routing for envelopes, controlling when documents are sent to recipients associated with the workflow step. The function can be used to implement time-based workflows, such as sending documents after a specified delay or at a future date. It's particularly useful for managing complex document processes that require timed releases or staged approvals. The endpoint supports setting either a relative delay or an exact send date, but not both simultaneously. Note that the maximum allowed delay is 30 days from the time of the request." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_DOCUMENT_CUSTOM_FIELDS", "name": "Update template document custom fields", "description": "This endpoint updates existing custom document fields in a specific document within a DocuSign template. It allows you to modify metadata associated with a template document without changing the document's content or structure. Use this when you need to update or add custom information to a template document, such as internal reference numbers, project codes, or any other metadata relevant to your document workflow. The endpoint is particularly useful for maintaining up-to-date metadata in frequently used templates without recreating them. Note that while DocuSign stores and returns these custom fields, it does not process or use them for any internal operations. The update is specific to a single document within a template, identified by the documentId parameter." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_DOC_VISIBILITY", "name": "Update Template Doc Visibility", "description": "This endpoint updates document visibility settings for one or more recipients in a DocuSign template. It allows fine-grained control over which documents are visible to specific recipients, enhancing document security and workflow customization. The method is particularly useful when you need to restrict access to certain documents for some recipients while maintaining full visibility for others. However, it's important to note that some recipient types (Carbon Copy, Certified Delivery, Editor, and Agent) will always have full document visibility, and documents with assigned tabs cannot be hidden from their respective recipients." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_LOCK_INFORMATION", "name": "Update template lock information", "description": "This endpoint allows you to update the lock information for an already locked template in DocuSign. It is used to modify the duration of an existing lock or change the name of the application that has locked the template. This operation is crucial for managing access to templates that are currently being edited, ensuring that multiple users don't make conflicting changes simultaneously. The endpoint requires the X-DocuSign-Edit header for authorization and can update specific lock properties without affecting others. It should be used when you need to extend a lock duration or update the locking application's identifier, but not for creating new locks or unlocking templates." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_NOTIFICATION_SETTINGS", "name": "Update template notification settings", "description": "This endpoint updates the notification structure for an existing DocuSign template. It allows users to customize reminder and expiration notifications for a specific template, which can then be used to create envelopes with these predefined settings. The endpoint is particularly useful when you need to modify the notification behavior for a frequently used template without changing the template's core content. It provides granular control over when and how often recipients are reminded about pending signatures, as well as when the envelope will expire. This functionality helps in managing document workflows more efficiently by reducing the need for manual follow-ups and ensuring timely completion of signing processes." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_RECIPIENT_DOCUMENT_VISIBILITY", "name": "Update Template Recipient Document Visibility", "description": "Updates document visibility settings for a specific recipient in a DocuSign template. This endpoint allows you to control which documents a particular recipient can see in a template with multiple documents. Use this when you need to: - Restrict certain documents from specific recipients for security or privacy - Customize the signing experience by showing only relevant documents to each recipient - Modify document access after a template has been created **Important Constraints:** - Documents with tabs assigned to a recipient cannot be hidden from that recipient - Carbon Copy, Certified Delivery, Editor, and Agent recipients always see all documents - The recipientId must exist in the template before updating visibility **Use Case Example:** In a multi-document employment contract template, you might want to hide salary details from HR coordinators while showing them to the hiring manager and the candidate." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_SCHEDULED_SENDING_RULES", "name": "Updatetemplatescheduledsendingrules", "description": "Updates the scheduled sending rules for a DocuSign template, controlling when envelopes created from this template are automatically sent. Use this to set up either a relative delay (e.g., send 2 days after creation) or an absolute future date/time. This is useful for: - Automating timed document delivery workflows - Coordinating envelope sending with business events - Allowing review periods before automatic sending - Managing bulk send operations with scheduled timing Note: Maximum delay is 30 days. Requires Standard plan or higher. Only one rule (either delay or resumeDate) can be specified per template." }, { "slug": "DOCUSIGN_UPDATE_TEMPLATE_WORKFLOW_DEFINITION", "name": "Updatetemplateworkflowdefinition", "description": "Updates the workflow definition for a specified template in DocuSign, allowing for customization of the document signing process. This endpoint enables users to modify the sequence of steps, set up conditional routing, schedule envelope sending, and define recipient rules for a template. It's particularly useful for complex signing workflows that require precise control over the timing and conditions of each step in the process. The updated workflow can include features such as delayed sending, conditional recipients, and paused steps, providing flexibility in managing the document lifecycle. This tool should be used when there's a need to modify or refine the existing workflow of a template to accommodate specific business processes or compliance requirements. It's important to note that this update affects only the workflow definition and does not modify other aspects of the template such as document content or basic recipient information." }, { "slug": "DOCUSIGN_UPDATE_USER_ACCOUNT_SETTINGS", "name": "Update user account settings", "description": "This endpoint updates the account settings and email notification types for a specified user in DocuSign. It allows for comprehensive customization of a user's experience within the DocuSign platform, including locale preferences, timezone settings, email notifications, account management capabilities, and template management options. The endpoint is particularly useful when administrators need to modify user settings en masse or when users require specific configuration changes to align with their workflow or organizational requirements. It's important to note that while this endpoint offers extensive customization, some settings may be restricted based on the user's permissions or account type. Additionally, changes made through this endpoint may have immediate effects on the user's DocuSign experience and should be used judiciously." }, { "slug": "DOCUSIGN_UPDATE_USER_AUTHORIZATION_DATES", "name": "Update User Authorization Dates", "description": "Updates the start and/or end dates for a specified user authorization in DocuSign. This endpoint allows account administrators or the principal user to modify the duration of an existing authorization, enabling precise control over when an agent can act on behalf of the principal user. It's particularly useful for extending or shortening authorization periods, ensuring that access rights are aligned with business needs and security policies. The endpoint returns detailed information about the updated authorization, including user details and permission levels. Use this when you need to adjust the timeframe of an existing user authorization without changing other authorization parameters." }, { "slug": "DOCUSIGN_UPDATE_USER_INFORMATION_FOR_SPECIFIED_USER", "name": "Update user information for specified user", "description": "The User_PutUser endpoint allows updating user information for a specified user within a DocuSign account. It provides comprehensive control over user settings, including personal information, permissions, notification preferences, and locale settings. This endpoint should be used when modifying user profiles, adjusting user permissions, or updating user-specific configurations within a DocuSign account. The operation requires the account ID and user ID as path parameters, and accepts a complex JSON object in the request body containing the updated user information. Note that users can only access and modify their own information, even if they have administrative privileges. The endpoint returns the updated user information upon successful modification." }, { "slug": "DOCUSIGN_UPDATE_USER_NOTARY_INFORMATION", "name": "Updateusernotaryinformation", "description": "The UpdateUserNotaryInformation endpoint modifies a notary's profile and settings in DocuSign. It manages account details, preferences, and operational parameters. Use this to update a notary's visibility, capabilities, or personal settings. It's crucial for maintaining accurate records and ensuring compliance with regulations. Note that all required fields must be provided, even for partial updates." }, { "slug": "DOCUSIGN_UPDATE_USER_PROFILE_IMAGE", "name": "Update user profile image", "description": "Updates the user's profile image in DocuSign by uploading a new image file. This action allows users to personalize their DocuSign account by uploading a profile picture. Supported formats include GIF, PNG, JPEG, and BMP. The image file must be less than 200KB, and for optimal display, DocuSign recommends dimensions of no more than 79x79 pixels. Note: Users can only update their own profile image. The userId is automatically set to the authenticated user." }, { "slug": "DOCUSIGN_UPDATE_USER_PROFILE_INFORMATION", "name": "Updateuserprofileinformation", "description": "Updates a user's profile in DocuSign, including personal details, privacy settings, and user ID card information. It allows modifications to name, address, locale preferences, and various account settings. Users can only update their own information. Some settings may require admin rights to modify. Use for keeping user profiles current and adjusting preferences." }, { "slug": "DOCUSIGN_UPDATE_USER_SIGNATURE_BY_ID", "name": "Update user signature by id", "description": "Updates or creates a user's signature and initials for a specified DocuSign account. This endpoint allows for customization of signature appearance, including font, stamp format, and date stamp properties. It can be used to modify an existing signature or create a default signature if one doesn't exist. The endpoint requires the user to be authenticated and a member of the specified account, with the userId matching the authenticated user's ID. It's particularly useful for personalizing signature appearance or creating new signatures for users within an organization's DocuSign account." }, { "slug": "DOCUSIGN_UPDATE_WORKFLOW_STEP_FOR_TEMPLATE", "name": "Update workflow step for template", "description": "This endpoint updates a specified workflow step for a DocuSign template. It allows users to modify various aspects of the workflow step, including delayed routing settings, recipient routing rules, and conditional recipient configurations. The endpoint is used to fine-tune the automation and customization of document workflows within DocuSign templates. It's particularly useful for implementing complex routing scenarios, adding delays in document processing, or setting up conditional recipient rules based on form field values or other criteria. This tool should be used when there's a need to modify existing workflow steps in a template to adjust the document routing process or recipient handling." }, { "slug": "DOCUSIGN_UPDATE_WORKSPACE_INFORMATION", "name": "Updateworkspaceinformation", "description": "Updates information about a specific DocuSign workspace. This endpoint allows you to modify various aspects of a workspace, including its name, description, settings, and status. It's used when you need to change workspace details or adjust collaboration settings. The endpoint requires both the account ID and workspace ID to identify the specific workspace to update. You can update multiple properties of the workspace in a single request by including them in the request body. Note that this operation may affect all users with access to the workspace, so use it carefully. The endpoint returns the full updated workspace object, allowing you to confirm the changes made." }, { "slug": "DOCUSIGN_UPDATE_WORKSPACE_ITEM_METADATA", "name": "Update workspace item metadata", "description": "Updates the metadata for a specific file in a DocuSign workspace. This endpoint allows you to modify file properties such as name, content type, extension, and visibility settings without changing the actual file content. Use this action when you need to rename a file, update its MIME type, or change its public/private access settings. The file content itself remains unchanged; only its metadata attributes are modified. This is particularly useful for organizing and managing workspace files, correcting metadata, or adjusting file visibility." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "DOCUSIGN_OAUTH2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Authorization URL", "type": "string", "description": "The auth URL for the DocuSign API, e.g., 'https://account.docusign.com'", "required": true, "default": "https://account.docusign.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "signature,impersonation" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "discordbot", "name": "Discord Bot", "logo": "https://logos.composio.dev/api/discordbot", "description": "Discordbot refers to automated programs on Discord servers, performing tasks like moderation, music playback, and user engagement to enhance community interactions", "category": "team chat", "authSchemes": [ "OAUTH2" ], "toolCount": 165, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DISCORDBOT_ADD_GROUP_DM_USER", "name": "Add recipient to group channel", "description": "Adds a user to a Discord group DM channel. Requires a user OAuth2 access token with the gdm.join scope. Bot tokens cannot be used for this endpoint." }, { "slug": "DISCORDBOT_ADD_GUILD_MEMBER", "name": "Add guild member", "description": "Adds a user to a Discord guild using their OAuth2 access token (which must have guilds.join scope). Returns the guild member object on 201 Created, or indicates the user is already a member on 204." }, { "slug": "DISCORDBOT_ADD_GUILD_MEMBER_ROLE", "name": "Assign role to guild member", "description": "Assigns a role to a guild member. Requires MANAGE_ROLES permission and the role must be lower in hierarchy than the bot's highest role. Returns 204 on success." }, { "slug": "DISCORDBOT_ADD_MY_MESSAGE_REACTION", "name": "Add Reaction To Message", "description": "Adds an emoji reaction from the bot to a message. Requires READ_MESSAGE_HISTORY, and ADD_REACTIONS if no one else has reacted with this emoji yet." }, { "slug": "DISCORDBOT_ADD_THREAD_MEMBER", "name": "Add thread member", "description": "Adds a user to a specific, unarchived thread. The user must have access to the parent channel." }, { "slug": "DISCORDBOT_BAN_USER_FROM_GUILD", "name": "Ban user from guild", "description": "Permanently bans a user from a Discord guild, optionally deleting their recent messages." }, { "slug": "DISCORDBOT_BULK_BAN_USERS_FROM_GUILD", "name": "Bulk ban users from guild", "description": "Bans up to 200 users from a Discord guild, optionally deleting their recent messages. Requires BAN_MEMBERS permission." }, { "slug": "DISCORDBOT_BULK_DELETE_MESSAGES", "name": "Bulk Delete Messages", "description": "Bulk deletes messages in a Discord channel. Requires MANAGE_MESSAGES permission. Messages must be less than 14 days old. Between 2 and 100 messages can be deleted at once." }, { "slug": "DISCORDBOT_CREATE_APPLICATION_COMMAND", "name": "Create global application command", "description": "Creates a new global Discord application command. Global commands can take up to an hour to propagate. Command names must be unique per type within the application scope." }, { "slug": "DISCORDBOT_CREATE_AUTO_MODERATION_RULE", "name": "Create auto moderation rule", "description": "Creates a new auto moderation rule for a Discord guild. Requires MANAGE_GUILD permission. Use this to set up filters for profanity, spam, excessive mentions, or custom keywords." }, { "slug": "DISCORDBOT_CREATE_CHANNEL_INVITE", "name": "Create channel invite", "description": "Creates a new invite link for a Discord channel. Requires CREATE_INSTANT_INVITE permission." }, { "slug": "DISCORDBOT_CREATE_DM", "name": "Initiate user channel with recipient", "description": "Creates a new direct message (DM) channel or retrieves an existing one, using recipient_id for a 1-on-1 DM or access_tokens for a group DM; this action only establishes or fetches the channel and does not send messages." }, { "slug": "DISCORDBOT_CREATE_GUILD", "name": "Create new guild", "description": "Creates a new Discord guild (server). The bot must be in fewer than 10 guilds to use this endpoint. Icon must be a base64 encoded 128x128 image, and if afk_channel_id is set, afk_timeout must also be set." }, { "slug": "DISCORDBOT_CREATE_GUILD_APPLICATION_COMMAND", "name": "Create guild application command", "description": "Creates a new guild-specific application command. Command names must be unique per type within the guild (max 100 total commands)." }, { "slug": "DISCORDBOT_CREATE_GUILD_CHANNEL", "name": "Create guild channel", "description": "Creates a new Discord channel (text, voice, category, etc.) within a guild. Requires MANAGE_CHANNELS permission." }, { "slug": "DISCORDBOT_CREATE_GUILD_EMOJI", "name": "Create guild emoji", "description": "Creates a new custom emoji in a specified Discord guild, requiring CREATE_EXPRESSIONS permission and adherence to guild emoji limits." }, { "slug": "DISCORDBOT_CREATE_GUILD_FROM_TEMPLATE", "name": "Create guild from template", "description": "Creates a new Discord guild by applying channels, roles, and settings from a specified guild template code." }, { "slug": "DISCORDBOT_CREATE_GUILD_ROLE", "name": "Create role with guild id", "description": "Creates a new role in a Discord guild with customizable name, permissions, color, hoist, mentionability, and icon. Requires MANAGE_ROLES permission. The icon and unicode_emoji fields are mutually exclusive." }, { "slug": "DISCORDBOT_CREATE_GUILD_SCHEDULED_EVENT", "name": "Create guild scheduled event", "description": "Creates a new scheduled event in a Discord guild. Events can be hosted in stage channels, voice channels, or external locations. STAGE_INSTANCE/VOICE require channel_id, while EXTERNAL requires entity_metadata with a location and scheduled_end_time." }, { "slug": "DISCORDBOT_CREATE_GUILD_STICKER", "name": "Create guild sticker", "description": "Uploads a PNG, APNG, GIF, or Lottie JSON file (max 512KB) as a new custom sticker to the specified Discord guild; requires Manage Expressions permission." }, { "slug": "DISCORDBOT_CREATE_GUILD_TEMPLATE", "name": "Create guild template", "description": "Creates a template of an existing Discord guild's structure (settings, roles, channels) but not its content (messages, members)." }, { "slug": "DISCORDBOT_CREATE_INTERACTION_RESPONSE", "name": "Post interaction callback", "description": "Sends a response to a Discord interaction (e.g., slash command, component). Ensure response type is context-appropriate and initial reply is within 3 seconds." }, { "slug": "DISCORDBOT_CREATE_MESSAGE", "name": "Send Message To Channel", "description": "Sends a message to a Discord channel. Supports text content, embeds, stickers, components, and replies. Requires SEND_MESSAGES permission and at least one of content, embeds, sticker_ids, or components." }, { "slug": "DISCORDBOT_CREATE_STAGE_INSTANCE", "name": "Create stage instance", "description": "Creates a new Stage instance in a Stage channel for hosting live audio events. Requires MANAGE_CHANNELS, MUTE_MEMBERS, and MOVE_MEMBERS permissions. A Stage channel can only have one active instance at a time." }, { "slug": "DISCORDBOT_CREATE_THREAD", "name": "Create new thread in channel", "description": "Creates a new thread in a text, announcement, forum, or media channel." }, { "slug": "DISCORDBOT_CREATE_THREAD_FROM_MESSAGE", "name": "Create thread from message", "description": "Creates a new thread from a specific message in a Discord channel, requiring CREATE_PUBLIC_THREADS permission." }, { "slug": "DISCORDBOT_CREATE_WEBHOOK", "name": "Create channel webhook", "description": "Creates a new webhook in a specified Discord channel, requiring MANAGE_WEBHOOKS permission." }, { "slug": "DISCORDBOT_CROSSPOST_MESSAGE", "name": "Crosspost Message", "description": "Crossposts a message from an announcement channel to all channels following it. The message must not have been previously crossposted and must not be a system message." }, { "slug": "DISCORDBOT_DELETE_ALL_MESSAGE_REACTIONS", "name": "Delete All Reactions", "description": "Removes all reactions from a message. Requires MANAGE_MESSAGES permission. This removes reactions from all users, not just the bot." }, { "slug": "DISCORDBOT_DELETE_ALL_MESSAGE_REACTIONS_BY_EMOJI", "name": "Delete All Reactions By Emoji", "description": "Removes all reactions for a specific emoji from a message. Requires MANAGE_MESSAGES permission. Removes reactions from all users, not just the bot." }, { "slug": "DISCORDBOT_DELETE_APPLICATION_COMMAND", "name": "Delete global application command", "description": "Permanently deletes a global application command. This is irreversible and the command will no longer appear in Discord clients. Global command deletions can take up to 1 hour to propagate." }, { "slug": "DISCORDBOT_DELETE_AUTO_MODERATION_RULE", "name": "Delete auto moderation rule", "description": "Permanently deletes a specific auto moderation rule from a Discord guild. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_DELETE_CHANNEL", "name": "Delete channel by id", "description": "Permanently deletes a Discord channel by its ID. This action is irreversible. Returns the deleted channel object (not 204)." }, { "slug": "DISCORDBOT_DELETE_CHANNEL_PERMISSION_OVERWRITE", "name": "Delete channel permission override", "description": "Removes channel-specific permission overwrites for a user or role, reverting them to default permissions inherited from the server or category. Requires MANAGE_ROLES permission. This action is irreversible." }, { "slug": "DISCORDBOT_DELETE_GROUP_DM_USER", "name": "Remove user from group DM", "description": "Removes a recipient from a Discord group DM channel. Requires OAuth2 user access tokens with the gdm.join scope. Only the group DM owner or managing application can remove recipients." }, { "slug": "DISCORDBOT_DELETE_GUILD", "name": "Delete guild by id", "description": "Permanently deletes a specified Discord guild (server). The authenticated user must be the owner of the guild. This action is irreversible." }, { "slug": "DISCORDBOT_DELETE_GUILD_APPLICATION_COMMAND", "name": "Delete guild application command", "description": "Permanently deletes a guild-specific application command. This is irreversible." }, { "slug": "DISCORDBOT_DELETE_GUILD_EMOJI", "name": "Delete guild emoji by id", "description": "Permanently deletes a specified custom emoji from a guild, requiring Manage Expressions permissions; cannot delete default emojis and is irreversible." }, { "slug": "DISCORDBOT_DELETE_GUILD_INTEGRATION", "name": "Delete guild integration", "description": "Permanently deletes a specific integration from a Discord guild, removing any associated webhooks and kicking the bot if present. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_DELETE_GUILD_MEMBER", "name": "Delete guild member by id", "description": "Removes (kicks) a member from a Discord guild. The user must be an existing member of the specified guild. Requires KICK_MEMBERS permission." }, { "slug": "DISCORDBOT_DELETE_GUILD_MEMBER_ROLE", "name": "Delete guild member role", "description": "Removes a specified role from a member of a Discord guild. Requires MANAGE_ROLES permission and the role must be lower in hierarchy than the bot's highest role. Idempotent - succeeds even if member does not have the role." }, { "slug": "DISCORDBOT_DELETE_GUILD_ROLE", "name": "Delete role from guild", "description": "Permanently deletes a specified role from a Discord guild, revoking it from all members. Requires MANAGE_ROLES permission and the target role must be lower in hierarchy than the bot's highest role." }, { "slug": "DISCORDBOT_DELETE_GUILD_SCHEDULED_EVENT", "name": "Delete guild scheduled event", "description": "Permanently deletes a specific scheduled event from a Discord guild. This action is irreversible." }, { "slug": "DISCORDBOT_DELETE_GUILD_STICKER", "name": "Delete guild sticker", "description": "Permanently deletes a custom sticker from a Discord guild; the specified guild and sticker must exist, and this action is irreversible." }, { "slug": "DISCORDBOT_DELETE_GUILD_TEMPLATE", "name": "Delete guild template by code", "description": "Deletes an existing guild template by its unique code from a specified guild, returning the deleted template's details." }, { "slug": "DISCORDBOT_DELETE_MESSAGE", "name": "Delete Message", "description": "Permanently deletes a message from a Discord channel. The bot can delete its own messages or, with MANAGE_MESSAGES permission, delete messages from other users." }, { "slug": "DISCORDBOT_DELETE_MY_MESSAGE_REACTION", "name": "Remove My Reaction", "description": "Removes the bot's own emoji reaction from a message. Only removes the bot's reaction, not other users' reactions." }, { "slug": "DISCORDBOT_DELETE_ORIGINAL_WEBHOOK_MESSAGE", "name": "Delete original webhook message", "description": "Permanently deletes the original (@original) message posted by a webhook or interaction response." }, { "slug": "DISCORDBOT_DELETE_STAGE_INSTANCE", "name": "Delete stage instance", "description": "Permanently deletes the Stage instance for a given stage channel, ending the live audio event." }, { "slug": "DISCORDBOT_DELETE_THREAD_MEMBER", "name": "Remove thread member", "description": "Removes a user from a specified, unarchived thread. Requires MANAGE_THREADS permission." }, { "slug": "DISCORDBOT_DELETE_USER_MESSAGE_REACTION", "name": "Remove User Reaction", "description": "Removes a specific user's emoji reaction from a message. Requires MANAGE_MESSAGES permission." }, { "slug": "DISCORDBOT_DELETE_WEBHOOK", "name": "Delete webhook by id", "description": "Permanently deletes a Discord webhook by its unique ID. This action is irreversible." }, { "slug": "DISCORDBOT_DELETE_WEBHOOK_BY_TOKEN", "name": "Delete webhook by token", "description": "Permanently deletes a Discord webhook using its ID and token, without bot authentication." }, { "slug": "DISCORDBOT_DELETE_WEBHOOK_MESSAGE", "name": "Delete webhook message", "description": "Deletes a message previously sent by a Discord webhook." }, { "slug": "DISCORDBOT_EXECUTE_GITHUB_COMPATIBLE_WEBHOOK", "name": "Execute GitHub-compatible webhook", "description": "Forwards GitHub event notifications to a Discord channel via a GitHub-compatible webhook endpoint." }, { "slug": "DISCORDBOT_EXECUTE_SLACK_COMPATIBLE_WEBHOOK", "name": "Execute Slack-compatible webhook", "description": "Sends messages to Discord via its Slack-compatible webhook endpoint, supporting Slack attachment formatting." }, { "slug": "DISCORDBOT_EXECUTE_WEBHOOK", "name": "Execute webhook", "description": "Executes a Discord webhook to send messages, embeds, or interactive components to a channel or thread." }, { "slug": "DISCORDBOT_FOLLOW_CHANNEL", "name": "Add follower to channel via webhook", "description": "Follows an Announcement Channel to relay its messages to a target channel via webhook. The bot must have MANAGE_WEBHOOKS permission in the target channel." }, { "slug": "DISCORDBOT_GET_ACTIVE_GUILD_THREADS", "name": "List active threads in guild", "description": "Retrieves all active (non-archived) threads in a Discord guild that the bot can access." }, { "slug": "DISCORDBOT_GET_APPLICATION", "name": "Get application details", "description": "Retrieves the full details of a Discord application by its application_id." }, { "slug": "DISCORDBOT_GET_APPLICATION_COMMAND", "name": "Get global application command", "description": "Retrieves a specific global application command by its application ID and command ID." }, { "slug": "DISCORDBOT_GET_APPLICATION_ROLE_CONNECTIONS_METADATA", "name": "Get application role connections metadata", "description": "Retrieves all role connection metadata records for a Discord application. Returns an empty list if none are configured." }, { "slug": "DISCORDBOT_GET_APPLICATION_USER_ROLE_CONNECTION", "name": "Get user role connection", "description": "Fetches the role connection object for the current user for a specified Discord application. Requires OAuth2 with the role_connections.write scope." }, { "slug": "DISCORDBOT_GET_AUTO_MODERATION_RULE", "name": "Get auto moderation rule", "description": "Retrieves the complete configuration of a specific auto moderation rule within a Discord guild." }, { "slug": "DISCORDBOT_GET_BOT_GATEWAY", "name": "Get bot gateway", "description": "Retrieves the WSS URL, recommended shard count, and session start limits for connecting a bot to the Discord Gateway." }, { "slug": "DISCORDBOT_GET_CHANNEL", "name": "Retrieve channel details", "description": "Retrieves detailed metadata for a specific Discord channel by its channel_id. Returns only channel metadata, not message content or member lists." }, { "slug": "DISCORDBOT_GET_GATEWAY", "name": "Get gateway URL", "description": "Retrieves the WebSocket URL to connect to Discord's Gateway for receiving real-time events. This is a public endpoint that does not require authentication." }, { "slug": "DISCORDBOT_GET_GUILD", "name": "Retrieve guild details", "description": "Retrieves detailed information for a specified Discord guild (server) by its guild_id, optionally including approximate member and presence counts if with_counts is true." }, { "slug": "DISCORDBOT_GET_GUILD_APPLICATION_COMMAND", "name": "Get guild application command", "description": "Retrieves detailed information for a specific application command within a Discord guild." }, { "slug": "DISCORDBOT_GET_GUILD_APPLICATION_COMMAND_PERMISSIONS", "name": "Get guild command permissions", "description": "Retrieves the permissions for a specific application command within a guild." }, { "slug": "DISCORDBOT_GET_GUILD_BAN", "name": "Get guild ban", "description": "Fetches the ban details for a specific user in a Discord guild, if that user is currently banned." }, { "slug": "DISCORDBOT_GET_GUILD_EMOJI", "name": "Fetch emoji by guild and id", "description": "Retrieves details for a specific custom emoji within a specified Discord guild, requiring valid and accessible guild and emoji IDs." }, { "slug": "DISCORDBOT_GET_GUILD_MEMBER", "name": "Retrieve guild member by user id", "description": "Retrieves detailed information for a specific member of a Discord guild, provided the bot belongs to the guild and has necessary permissions." }, { "slug": "DISCORDBOT_GET_GUILD_PREVIEW", "name": "Preview guild by id", "description": "Fetches a public preview of a Discord guild by its ID, if the guild has the preview feature enabled." }, { "slug": "DISCORDBOT_GET_GUILD_SCHEDULED_EVENT", "name": "Get guild scheduled event", "description": "Retrieves a specific scheduled event from a Discord guild by its ID, optionally including the count of subscribed users." }, { "slug": "DISCORDBOT_GET_GUILDS_ONBOARDING", "name": "Get guild onboarding", "description": "Retrieves the onboarding settings for a specified Discord guild, including prompts, options, default channels, and enabled status." }, { "slug": "DISCORDBOT_GET_GUILD_STICKER", "name": "Retrieve sticker from guild", "description": "Retrieves a specific sticker from a Discord guild using the guild and sticker IDs; requires the sticker to exist in the guild." }, { "slug": "DISCORDBOT_GET_GUILD_TEMPLATE", "name": "Retrieve guild template with code", "description": "Retrieves the complete structure and details of a Discord guild template using its unique code." }, { "slug": "DISCORDBOT_GET_GUILD_VANITY_URL", "name": "Retrieve guild vanity url", "description": "Retrieves the vanity URL invite code and usage count for a Discord guild. Requires MANAGE_GUILD permission and the VANITY_URL feature." }, { "slug": "DISCORDBOT_GET_GUILD_WEBHOOKS", "name": "Retrieve guild webhooks", "description": "Retrieves all webhooks for a specified Discord guild, requiring MANAGE_WEBHOOKS permission." }, { "slug": "DISCORDBOT_GET_GUILD_WELCOME_SCREEN", "name": "Retrieve guild welcome screen", "description": "Retrieves the welcome screen configuration for a Discord guild with the Community feature enabled. Returns the welcome screen description and up to 5 suggested channels." }, { "slug": "DISCORDBOT_GET_GUILD_WIDGET", "name": "Retrieve guild widget json", "description": "Retrieves the public JSON widget data for a Discord guild, if the widget is enabled for that guild." }, { "slug": "DISCORDBOT_GET_GUILD_WIDGET_PNG", "name": "Get Guild Widget PNG", "description": "Tool to retrieve a PNG image widget for a Discord guild. Use when you need a visual representation of the guild widget that can be displayed on external websites. The widget must be enabled in the guild's server settings." }, { "slug": "DISCORDBOT_GET_GUILD_WIDGET_SETTINGS", "name": "Retrieve guild widget settings", "description": "Retrieves the widget settings for a specified Discord guild, indicating if the widget is enabled and its configured channel ID." }, { "slug": "DISCORDBOT_GET_MESSAGE", "name": "Get Message", "description": "Retrieves a specific message from a Discord channel by channel and message ID." }, { "slug": "DISCORDBOT_GET_MY_APPLICATION", "name": "Get my application", "description": "Retrieves detailed information about the current authenticated Discord application via /applications/@me." }, { "slug": "DISCORDBOT_GET_MY_OAUTH2_APPLICATION", "name": "Get my OAuth2 application", "description": "Retrieves detailed information about the OAuth2 application associated with the current authentication." }, { "slug": "DISCORDBOT_GET_ORIGINAL_WEBHOOK_MESSAGE", "name": "Retrieve original webhook message", "description": "Retrieves the original (@original) message from a Discord webhook or interaction response." }, { "slug": "DISCORDBOT_GET_PUBLIC_KEYS", "name": "Get OAuth2 public keys", "description": "Retrieves Discord's OAuth2 public keys in JWK format for verifying access tokens. Keys may rotate, so refresh caches periodically." }, { "slug": "DISCORDBOT_GET_STAGE_INSTANCE", "name": "Get stage instance", "description": "Retrieves the active Stage instance for a specified stage channel. Returns 404 if no active Stage instance exists." }, { "slug": "DISCORDBOT_GET_STICKER", "name": "Get sticker", "description": "Retrieves a specific Discord sticker by its unique ID." }, { "slug": "DISCORDBOT_GET_THREAD_MEMBER", "name": "Retrieve thread member by id", "description": "Retrieves a member from a specified thread using their user ID, optionally including guild member details." }, { "slug": "DISCORDBOT_GET_USER", "name": "Get user", "description": "Fetches public information for a Discord user by their user ID." }, { "slug": "DISCORDBOT_GET_WEBHOOK", "name": "Retrieve webhook by id", "description": "Retrieves detailed information for a Discord webhook by its unique ID." }, { "slug": "DISCORDBOT_GET_WEBHOOK_BY_TOKEN", "name": "Retrieve webhook by token", "description": "Retrieves a Discord webhook's configuration using its ID and token, without requiring bot authentication." }, { "slug": "DISCORDBOT_GET_WEBHOOK_MESSAGE", "name": "Retrieve webhook message", "description": "Retrieves a specific message previously sent by a Discord webhook." }, { "slug": "DISCORDBOT_INVITE_RESOLVE", "name": "Resolve invite by code", "description": "Resolves a Discord invite code to get its details, optionally including member counts and expiration." }, { "slug": "DISCORDBOT_INVITE_REVOKE", "name": "Revoke invite by code", "description": "Revokes a Discord invite using its code, permanently preventing new joins via this link." }, { "slug": "DISCORDBOT_JOIN_THREAD", "name": "Join thread", "description": "Joins the authenticated user to a thread specified by channel_id." }, { "slug": "DISCORDBOT_LEAVE_GUILD", "name": "Leave Guild", "description": "Enables the bot to leave a specified Discord guild (server). This action is irreversible and the bot must be re-invited to rejoin." }, { "slug": "DISCORDBOT_LEAVE_THREAD", "name": "Leave thread", "description": "Removes the currently authenticated user from a specified thread." }, { "slug": "DISCORDBOT_LIST_APPLICATION_COMMANDS", "name": "List global application commands", "description": "Fetches all global application commands for the specified Discord application. Does not include guild-specific commands." }, { "slug": "DISCORDBOT_LIST_AUTO_MODERATION_RULES", "name": "List auto moderation rules", "description": "Retrieves all auto moderation rules for a specified Discord guild. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_LIST_CHANNEL_INVITES", "name": "List channel invites", "description": "Fetches all active invites for a given Discord channel. Requires MANAGE_CHANNELS permission." }, { "slug": "DISCORDBOT_LIST_CHANNEL_WEBHOOKS", "name": "List Channel Webhooks", "description": "Retrieves all webhooks configured in a given Discord channel. Requires the MANAGE_WEBHOOKS permission." }, { "slug": "DISCORDBOT_LIST_GUILD_APPLICATION_COMMAND_PERMISSIONS", "name": "List guild command permissions", "description": "Retrieves all guild-level permission settings for all commands of a specific application within a guild." }, { "slug": "DISCORDBOT_LIST_GUILD_APPLICATION_COMMANDS", "name": "List guild application commands", "description": "Fetches all application commands registered for a specific guild. Does not include global commands." }, { "slug": "DISCORDBOT_LIST_GUILD_AUDIT_LOG_ENTRIES", "name": "Get guild audit logs", "description": "Retrieves audit log entries for a specified Discord guild, requiring VIEW_AUDIT_LOG permission. Supports filtering by user, action type, and pagination." }, { "slug": "DISCORDBOT_LIST_GUILD_BANS", "name": "List guild bans", "description": "Fetches a list of users banned from a specified Discord guild. Requires BAN_MEMBERS permission." }, { "slug": "DISCORDBOT_LIST_GUILD_CHANNELS", "name": "Retrieve guild channels", "description": "Fetches all channels (text, voice, category, etc.) for a specified Discord guild. Does not include threads or message content." }, { "slug": "DISCORDBOT_LIST_GUILD_EMOJIS", "name": "Retrieve guild emojis", "description": "Fetches all custom emoji objects for a specified Discord guild if the bot has access; returns only custom guild emojis, not standard Unicode or Nitro emojis." }, { "slug": "DISCORDBOT_LIST_GUILD_INTEGRATIONS", "name": "List guild integrations", "description": "Lists all integration objects for a specified Discord guild. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_LIST_GUILD_INVITES", "name": "List guild invites", "description": "Retrieves all currently active invite codes for a specified Discord guild." }, { "slug": "DISCORDBOT_LIST_GUILD_MEMBERS", "name": "Get guild members", "description": "Retrieves a list of members for a Discord guild. Requires GUILD_MEMBERS intent. Supports pagination via limit and after parameters." }, { "slug": "DISCORDBOT_LIST_GUILD_ROLES", "name": "List guild roles", "description": "Fetches all roles in a Discord guild, providing details for each role including permissions, color, position, and other attributes." }, { "slug": "DISCORDBOT_LIST_GUILD_SCHEDULED_EVENTS", "name": "List guild scheduled events", "description": "Retrieves a list of scheduled events for a specified Discord guild, optionally including subscribed user counts." }, { "slug": "DISCORDBOT_LIST_GUILD_SCHEDULED_EVENT_USERS", "name": "List scheduled event users", "description": "Fetches users who have expressed interest in a specific scheduled event within a Discord guild. Supports pagination and optional guild member data." }, { "slug": "DISCORDBOT_LIST_GUILD_STICKERS", "name": "Retrieve guild stickers", "description": "Retrieves all custom sticker objects for a Discord guild; does not include standard/Nitro stickers." }, { "slug": "DISCORDBOT_LIST_GUILD_TEMPLATES", "name": "Get guild templates by guild id", "description": "Retrieves all guild templates for an existing Discord guild, specified by its ID. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_LIST_GUILD_VOICE_REGIONS", "name": "List guild voice regions", "description": "Fetches a list of available voice regions for a specified Discord guild." }, { "slug": "DISCORDBOT_LIST_MESSAGE_REACTIONS_BY_EMOJI", "name": "List Reactions By Emoji", "description": "Lists users who reacted to a message with a specific emoji. Supports pagination." }, { "slug": "DISCORDBOT_LIST_MESSAGES", "name": "Fetch Messages From Channel", "description": "Retrieves messages from a Discord channel, ordered newest first. Supports pagination via before/after/around parameters." }, { "slug": "DISCORDBOT_LIST_MY_PRIVATE_ARCHIVED_THREADS", "name": "List my private archived threads", "description": "Retrieves private archived threads from a channel that the current user is a member of." }, { "slug": "DISCORDBOT_LIST_PINNED_MESSAGES", "name": "List Pinned Messages", "description": "Retrieves all pinned messages from a Discord channel. Returns up to 50 pinned messages." }, { "slug": "DISCORDBOT_LIST_PRIVATE_ARCHIVED_THREADS", "name": "List private archived threads", "description": "Lists private archived threads in a Discord channel, sorted by most recent archival. Requires view access." }, { "slug": "DISCORDBOT_LIST_PUBLIC_ARCHIVED_THREADS", "name": "List public archived threads", "description": "Lists public archived threads in a Discord channel, sorted by most recent archival." }, { "slug": "DISCORDBOT_LIST_STICKER_PACKS", "name": "List sticker packs", "description": "Fetches all available Nitro sticker packs from Discord, excluding custom or guild-specific sticker packs." }, { "slug": "DISCORDBOT_LIST_THREAD_MEMBERS", "name": "List thread members", "description": "Retrieves members of a specified Discord thread, with an option to include full guild member objects." }, { "slug": "DISCORDBOT_LIST_VOICE_REGIONS", "name": "List voice regions", "description": "Lists all available Discord voice regions that can be used when setting a voice or stage channel's region." }, { "slug": "DISCORDBOT_PIN_MESSAGE", "name": "Pin Message", "description": "Pins a message in a Discord channel. Requires MANAGE_MESSAGES permission. A channel can have at most 50 pinned messages." }, { "slug": "DISCORDBOT_PREVIEW_PRUNE_GUILD", "name": "Preview guild prune", "description": "Previews the number of members that would be pruned from a Discord guild based on inactivity days and optional roles; does not remove members." }, { "slug": "DISCORDBOT_PRUNE_GUILD", "name": "Prune inactive guild members", "description": "Removes inactive members from a Discord guild. Requires KICK_MEMBERS permission. Set compute_prune_count=false for large guilds to avoid timeouts." }, { "slug": "DISCORDBOT_PUT_GUILDS_ONBOARDING", "name": "Update guild onboarding configuration", "description": "Configures or updates a Discord guild's new member onboarding flow, including prompts, options, default channels, and enabled status." }, { "slug": "DISCORDBOT_SEARCH_GUILD_MEMBERS", "name": "Search guild members by username or nickname", "description": "Searches for members in a specific Discord guild by matching a query string against usernames and nicknames. Returns matching guild member objects." }, { "slug": "DISCORDBOT_SET_CHANNEL_PERMISSION_OVERWRITE", "name": "Modify channel permissions", "description": "Updates or creates a permission overwrite for a role (type 0) or member (type 1) within a Discord channel using allow and deny bitwise values. Requires MANAGE_ROLES permission." }, { "slug": "DISCORDBOT_SYNC_GUILD_TEMPLATE", "name": "Sync guild template", "description": "Synchronizes a guild template with its source guild, updating it to match the source's current configuration; does not affect guilds already created from this template." }, { "slug": "DISCORDBOT_TEST_AUTH", "name": "Test bot token authentication", "description": "Tool to validate the configured Discord bot token by fetching the current authenticated bot user. Use when diagnosing repeated 401 errors to determine if the issue is an invalid token (this endpoint returns 401) or missing guild membership/permissions/wrong channel_id (this endpoint returns 200 but other operations fail)." }, { "slug": "DISCORDBOT_TRIGGER_TYPING_INDICATOR", "name": "Trigger typing indicator", "description": "Shows the bot is typing in a Discord channel. The indicator stops after 10 seconds or upon message send. Use when actively preparing a response." }, { "slug": "DISCORDBOT_UNBAN_USER_FROM_GUILD", "name": "Unban user from guild", "description": "Revokes a ban for a user from a Discord guild, allowing them to rejoin. Requires BAN_MEMBERS permission." }, { "slug": "DISCORDBOT_UNPIN_MESSAGE", "name": "Unpin Message", "description": "Unpins a message from a Discord channel. The message is not deleted, only removed from the pinned list. Requires MANAGE_MESSAGES permission." }, { "slug": "DISCORDBOT_UPDATE_APPLICATION", "name": "Update application", "description": "Updates a Discord application's settings using its application_id." }, { "slug": "DISCORDBOT_UPDATE_APPLICATION_COMMAND", "name": "Update global application command", "description": "Updates properties of a global application command. Omitted properties remain unchanged. The options field, if provided, overwrites all existing options." }, { "slug": "DISCORDBOT_UPDATE_APPLICATION_USER_ROLE_CONNECTION", "name": "Update user application role connection", "description": "Updates the current user's application role connection metadata for Discord's Linked Roles feature. Requires OAuth2 with the role_connections.write scope." }, { "slug": "DISCORDBOT_UPDATE_AUTO_MODERATION_RULE", "name": "Update auto moderation rule", "description": "Updates an existing auto moderation rule in a Discord guild. Only fields provided in the request body are changed. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_UPDATE_CHANNEL", "name": "Update channel settings", "description": "Updates a Discord channel's settings (name, topic, permissions, etc.). Requires MANAGE_CHANNELS permission. All body parameters are optional -- only include fields you want to change." }, { "slug": "DISCORDBOT_UPDATE_GUILD", "name": "Update guild settings", "description": "Updates settings for a Discord guild (server). Requires the MANAGE_GUILD permission. All parameters except guild_id are optional -- only include the settings you want to change." }, { "slug": "DISCORDBOT_UPDATE_GUILD_APPLICATION_COMMAND", "name": "Update guild application command", "description": "Updates properties of a guild-specific application command. Omitted properties remain unchanged." }, { "slug": "DISCORDBOT_UPDATE_GUILD_EMOJI", "name": "Update guild emoji", "description": "Updates a custom emoji's name and/or role restrictions in a Discord guild; cannot create or delete emojis, and role updates for managed emojis may be restricted by their integration." }, { "slug": "DISCORDBOT_UPDATE_GUILD_MEMBER", "name": "Modify guild member details", "description": "Updates a guild member's attributes including nickname, roles, voice state, timeout status, and flags. Only provided fields will be updated. Requires appropriate permissions for each operation." }, { "slug": "DISCORDBOT_UPDATE_GUILD_ROLE", "name": "Modify guild role", "description": "Updates a Discord guild role's attributes (name, permissions, color, etc.). Requires MANAGE_ROLES permission. Unspecified attributes remain unchanged. The icon and unicode_emoji fields are mutually exclusive." }, { "slug": "DISCORDBOT_UPDATE_GUILD_SCHEDULED_EVENT", "name": "Update guild scheduled event", "description": "Updates an existing scheduled event in a Discord guild. Only fields provided in the request body are changed. Supports updating name, description, schedule, status, location, and other event attributes." }, { "slug": "DISCORDBOT_UPDATE_GUILD_STICKER", "name": "Update guild sticker info", "description": "Modifies a guild sticker's name, description, or tags. Requires MANAGE_EXPRESSIONS permission." }, { "slug": "DISCORDBOT_UPDATE_GUILD_TEMPLATE", "name": "Update guild template", "description": "Updates a Discord guild template's name and/or description; omitted fields retain current values, and an empty string for description clears it." }, { "slug": "DISCORDBOT_UPDATE_GUILD_WELCOME_SCREEN", "name": "Update guild welcome screen", "description": "Updates a guild's welcome screen configuration, including description, enabled status, and up to 5 welcome channels. Requires MANAGE_GUILD permission and the COMMUNITY feature." }, { "slug": "DISCORDBOT_UPDATE_GUILD_WIDGET_SETTINGS", "name": "Update guild widget settings", "description": "Updates a Discord guild's widget settings, such as its enabled state or invite channel. Requires MANAGE_GUILD permission." }, { "slug": "DISCORDBOT_UPDATE_MESSAGE", "name": "Edit Message", "description": "Edits a message previously sent by the bot. Only provide fields you want to change; use null or empty list to clear values." }, { "slug": "DISCORDBOT_UPDATE_MY_APPLICATION", "name": "Update my application", "description": "Updates settings for the current authenticated Discord application via /applications/@me." }, { "slug": "DISCORDBOT_UPDATE_MY_GUILD_MEMBER", "name": "Update bot's nickname in guild", "description": "Modifies the current bot's member profile (nickname) in a Discord guild. The bot must be a member of the guild and have CHANGE_NICKNAME permission." }, { "slug": "DISCORDBOT_UPDATE_MY_USER", "name": "Update current bot user profile", "description": "Updates the current bot user's Discord username and/or avatar. Only works with bot tokens. Username changes are rate-limited to 2 per hour." }, { "slug": "DISCORDBOT_UPDATE_ORIGINAL_WEBHOOK_MESSAGE", "name": "Update original webhook message", "description": "Updates the original (@original) message previously sent by a webhook or interaction response." }, { "slug": "DISCORDBOT_UPDATE_SELF_VOICE_STATE", "name": "Update own voice state", "description": "Updates the bot's own voice state in a guild Stage channel, such as toggling suppress or requesting to speak. The bot must already be connected to a stage channel via the Gateway API." }, { "slug": "DISCORDBOT_UPDATE_VOICE_STATE", "name": "Update user voice state", "description": "Updates another user's voice state in a Discord stage channel. Only works for stage channels, not regular voice channels. Primarily used to toggle suppress state for speaking permissions. Requires MUTE_MEMBERS permission." }, { "slug": "DISCORDBOT_UPDATE_WEBHOOK", "name": "Update webhook details", "description": "Updates properties of an existing Discord webhook such as name, avatar, or channel." }, { "slug": "DISCORDBOT_UPDATE_WEBHOOK_BY_TOKEN", "name": "Update webhook by token", "description": "Updates a Discord webhook's name and/or avatar using its ID and token, without bot authentication." }, { "slug": "DISCORDBOT_UPDATE_WEBHOOK_MESSAGE", "name": "Update webhook message", "description": "Updates a message previously sent by a webhook, allowing modification of content, embeds, attachments, or components." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "discord_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Bot Token", "type": "string", "description": "Token for the discord bot.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Permission Integer", "type": "string", "description": "Permission Integer for the discord bot. Use https://discordapi.com/permissions.html#128 to find out the value.", "required": true, "default": "8" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identify,email,bot,messages.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "salesforce", "name": "Salesforce", "logo": "https://logos.composio.dev/api/salesforce", "description": "Salesforce is a leading CRM platform integrating sales, service, marketing, and analytics to build customer relationships and drive business growth", "category": "crm", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "toolCount": 217, "triggerCount": 7, "version": "20260703_00", "tools": [ { "slug": "SALESFORCE_ACCOUNT_CREATION_WITH_CONTENT_TYPE_OPTION", "name": "Create Salesforce Account", "description": "DEPRECATED: Creates a new Salesforce Account using a JSON POST request, requiring 'Name'; specific fields (e.g., custom, DunsNumber) may have org-level prerequisites." }, { "slug": "SALESFORCE_ADD_CONTACT_TO_CAMPAIGN", "name": "Add contact to campaign", "description": "Adds a contact to a campaign by creating a CampaignMember record to track campaign engagement. Fails if the contact is already a member of the campaign; pre-check membership via SOQL before calling." }, { "slug": "SALESFORCE_ADD_LEAD_TO_CAMPAIGN", "name": "Add lead to campaign", "description": "Adds a lead to a campaign by creating a CampaignMember record, allowing you to track campaign engagement. Both `campaign_id` and `lead_id` must be valid Salesforce IDs of active, existing records — names or emails cannot be substituted, and deleted or inactive records will cause the call to fail. This is a persistent CRM write; confirm the correct lead and campaign before calling." }, { "slug": "SALESFORCE_ADD_OPPORTUNITY_LINE_ITEM", "name": "Add product to opportunity", "description": "Adds a product (line item) to an opportunity. The product must exist in a pricebook entry that's associated with the opportunity's pricebook." }, { "slug": "SALESFORCE_APPLY_LEAD_ASSIGNMENT_RULES", "name": "Apply lead assignment rules", "description": "Applies configured lead assignment rules to a specific lead, automatically routing it to the appropriate owner based on your organization's rules. Allow a brief propagation delay before querying updated ownership or field values after rule application." }, { "slug": "SALESFORCE_ASSOCIATE_CONTACT_TO_ACCOUNT", "name": "Associate contact to account", "description": "Associates a contact with an account by updating the contact's AccountId field. Overwrites any existing AccountId on the contact. For broader contact field updates alongside the account association, use SALESFORCE_UPDATE_CONTACT instead." }, { "slug": "SALESFORCE_CLONE_OPPORTUNITY_WITH_PRODUCTS", "name": "Clone opportunity with products", "description": "Clones an opportunity and optionally its products (line items). Creates a new opportunity with the same field values and products as the original." }, { "slug": "SALESFORCE_CLONE_RECORD", "name": "Clone record", "description": "Creates a copy of an existing Salesforce record by reading its data, removing system fields, and creating a new record. Optionally apply field updates to the clone." }, { "slug": "SALESFORCE_CLOSE_OR_ABORT_JOB", "name": "Close or abort a job", "description": "Tool to close or abort a Salesforce Bulk API v2 ingest job. Use when you need to finalize job processing by closing (state: UploadComplete) or cancel a job by aborting (state: Aborted). This is required for every ingest job - closing queues data for processing, while aborting cancels the job and deletes uploaded data." }, { "slug": "SALESFORCE_COMPLETE_TASK", "name": "Complete task", "description": "Marks a task as completed with optional completion notes. This is a convenience action that updates the task status to 'Completed'." }, { "slug": "SALESFORCE_COMPOSITE_GRAPH_ACTION", "name": "Execute Composite Graph (Deprecated)", "description": "DEPRECATED: Use SALESFORCE_POST_COMPOSITE_GRAPH instead. Tool to execute multiple Salesforce REST API requests in a single call using composite graphs. Use when you need to perform a series of related operations that should either all succeed or all fail together. Composite graphs support up to 500 subrequests per graph (compared to 25 for regular composite requests) and allow referencing outputs from previous subrequests using @{referenceId.fieldName} syntax." }, { "slug": "SALESFORCE_CREATE_ACCOUNT", "name": "Create account", "description": "Creates a new account in Salesforce with the specified information. Returns the created Account's ID at `data.response_data.id`." }, { "slug": "SALESFORCE_CREATE_A_RECORD", "name": "Create a record", "description": "Tool to create a Salesforce record using the UI API. Use when you need to create any type of Salesforce record with layout metadata and formatted field values." }, { "slug": "SALESFORCE_CREATE_CAMPAIGN", "name": "Create campaign", "description": "Creates a new campaign in Salesforce. Only `name` is universally required, but org-level validation rules commonly enforce `type`, `status`, `start_date`, and `end_date` as well — omitting them may cause creation to fail." }, { "slug": "SALESFORCE_CREATE_CAMPAIGN_RECORD_VIA_POST", "name": "Create campaign record", "description": "DEPRECATED: Creates a new campaign record in Salesforce; if 'ParentId' is provided, it must be a valid ID of an existing Campaign record, and if 'OwnerId' is provided, it must be a valid ID of an active User." }, { "slug": "SALESFORCE_CREATE_CONTACT", "name": "Create contact", "description": "Creates a new contact in Salesforce with the specified information. Writes to live CRM data — obtain explicit user confirmation before executing. Failures may reflect org-specific validation rules, permission restrictions, or duplicate rules rather than invalid inputs." }, { "slug": "SALESFORCE_CREATE_CUSTOM_FIELD", "name": "Create custom field", "description": "Tool to create a custom field on a Salesforce object using the Tooling API. Use when you need to add a new field (Text, Number, Checkbox, Date, Picklist, Lookup, etc.) to any standard or custom object without deploying metadata packages. The Tooling API provides direct field creation for rapid development and automation tasks." }, { "slug": "SALESFORCE_CREATE_CUSTOM_OBJECT", "name": "Create custom object", "description": "Tool to create a custom object in Salesforce using the Metadata API. Use when you need to dynamically create new object types (tables) in Salesforce with custom fields and configurations." }, { "slug": "SALESFORCE_CREATE_LEAD", "name": "Create lead", "description": "Creates a new lead in Salesforce. `LastName` and `Company` are required. Org-level validation rules (e.g., email format, custom required fields) may reject requests beyond these; inspect the error response body for the failing field. The created lead `id` is returned in a response wrapper, not at the top level." }, { "slug": "SALESFORCE_CREATE_LEAD_WITH_SPECIFIED_CONTENT_TYPE", "name": "Create lead", "description": "DEPRECATED: Creates a new Lead in Salesforce, requiring `LastName` and `Company` unless person accounts are enabled and `Company` is null." }, { "slug": "SALESFORCE_CREATE_NEW_CONTACT_WITH_JSON_HEADER", "name": "Create a new contact", "description": "DEPRECATED: Creates a new Contact in Salesforce; 'LastName' is required, an existing 'AccountId' must be used if provided, and any custom fields (ending with '__c') must be predefined." }, { "slug": "SALESFORCE_CREATE_NOTE", "name": "Create note", "description": "Creates a new note attached to a Salesforce record with the specified title and content. Does not deduplicate — identical calls create duplicate notes. High-volume creation can trigger REQUEST_LIMIT_EXCEEDED; apply exponential backoff on retries." }, { "slug": "SALESFORCE_CREATE_NOTE_RECORD_WITH_CONTENT_TYPE_HEADER", "name": "Create a note record", "description": "DEPRECATED: Creates a new Note record in Salesforce, associated with an existing Salesforce object via `ParentId`, automatically including a `Content-Type: application/json` header." }, { "slug": "SALESFORCE_CREATE_OPPORTUNITY", "name": "Create opportunity", "description": "Creates a new opportunity in Salesforce with the specified information." }, { "slug": "SALESFORCE_CREATE_OPPORTUNITY_RECORD", "name": "Create opportunity record", "description": "DEPRECATED: Creates a new Opportunity record in Salesforce; `Name`, `StageName`, and `CloseDate` are mandatory, and ensure any referenced IDs (e.g., `AccountId`, `CampaignId`) are valid and corresponding Salesforce features are enabled if used." }, { "slug": "SALESFORCE_CREATE_S_OBJECT_RECORD", "name": "Create SObject record", "description": "Tool to create a new Salesforce SObject record. Use when you need to create any type of standard or custom Salesforce object record by specifying the object type and field values." }, { "slug": "SALESFORCE_CREATE_SOBJECT_TREE", "name": "Create sObject tree", "description": "Tool to create one or more sObject trees with root records of the specified type. Use when creating nested parent-child record hierarchies in a single atomic operation (e.g., Account with Contacts and Opportunities). Supports up to 200 total records across all trees, up to 5 levels deep, with maximum 5 different object types. All records succeed or all fail together." }, { "slug": "SALESFORCE_CREATE_TASK", "name": "Create task", "description": "Creates a new task in Salesforce to track activities, to-dos, and follow-ups related to contacts, leads, or other records. Ensure who_id, what_id, and owner_id reference existing records before calling; invalid IDs cause silent linkage failures or validation errors." }, { "slug": "SALESFORCE_DELETE_ACCOUNT", "name": "Delete account", "description": "Permanently deletes an account from Salesforce. This action cannot be undone." }, { "slug": "SALESFORCE_DELETE_A_LEAD_OBJECT_BY_ITS_ID", "name": "Delete a lead object by its id", "description": "DEPRECATED: Permanently deletes an existing Lead object from Salesforce using its unique ID." }, { "slug": "SALESFORCE_DELETE_CAMPAIGN", "name": "Delete campaign", "description": "Permanently deletes a campaign from Salesforce. This action cannot be undone." }, { "slug": "SALESFORCE_DELETE_CONTACT", "name": "Delete contact", "description": "Permanently deletes a contact from Salesforce. This action cannot be undone. Associated records (activities, opportunities) lose the contact reference upon deletion — ensure related data is migrated or acceptable to lose before proceeding. Returns HTTP 204 with empty body on success." }, { "slug": "SALESFORCE_DELETE_FILE", "name": "Delete file", "description": "Tool to permanently delete a file from Salesforce. Use when you need to remove a file and its content. This operation cannot be undone." }, { "slug": "SALESFORCE_DELETE_JOB_QUERY", "name": "Delete job query", "description": "Tool to delete a Salesforce Bulk API v2 query job. Use when you need to permanently remove a job and its associated data. Only the user who created the job can delete it, and the job must be in a completed state." }, { "slug": "SALESFORCE_DELETE_LEAD", "name": "Delete lead", "description": "Permanently deletes a lead from Salesforce. This action cannot be undone." }, { "slug": "SALESFORCE_DELETE_NOTE", "name": "Delete note", "description": "Permanently deletes a note from Salesforce. This action cannot be undone." }, { "slug": "SALESFORCE_DELETE_OPPORTUNITY", "name": "Delete opportunity", "description": "Permanently deletes an opportunity from Salesforce. This action cannot be undone." }, { "slug": "SALESFORCE_DELETE_SOBJECT", "name": "Delete sObject record", "description": "Tool to delete a single Salesforce record by its ID. Use when you need to permanently remove a specific record from Salesforce. This operation is idempotent - deleting the same record multiple times returns success. Works with standard and custom objects." }, { "slug": "SALESFORCE_DELETE_SOBJECT_COLLECTIONS", "name": "Delete multiple records (SObject Collections)", "description": "Tool to delete up to 200 records in one request with optional rollback. Use when you need to delete multiple records efficiently, reducing API calls." }, { "slug": "SALESFORCE_EXECUTE_SOBJECT_QUICK_ACTION", "name": "Execute sObject Quick Action", "description": "Tool to execute a specific quick action on an sObject to create records with pre-configured defaults. Use when you need to leverage Salesforce Quick Actions to streamline record creation with field mappings and default values." }, { "slug": "SALESFORCE_EXECUTE_SOQL_QUERY", "name": "Execute SOQL query (Deprecated)", "description": "DEPRECATED: Use SALESFORCE_RUN_SOQL_QUERY instead. Executes the provided SOQL query against Salesforce; the query must begin with 'SELECT'." }, { "slug": "SALESFORCE_EXECUTE_SOSL_SEARCH", "name": "Execute SOSL search", "description": "Execute a SOSL search to search across multiple Salesforce objects. Use when you need to search for text across multiple object types simultaneously." }, { "slug": "SALESFORCE_FETCH_ACCOUNT_BY_ID_WITH_QUERY", "name": "Fetch account by ID with query", "description": "DEPRECATED: Use this action to retrieve a Salesforce Account by its unique ID, which must be a valid and existing Salesforce Account ID; you can optionally specify a comma-delimited list of fields to return." }, { "slug": "SALESFORCE_GET_A_BATCH_OF_RECORDS", "name": "Get batch of UI API records", "description": "Tool to retrieve multiple Salesforce records in a single request with customizable field selection. Use when you need to fetch data for multiple records at once (up to 200 records)." }, { "slug": "SALESFORCE_GET_ACCOUNT", "name": "Get account", "description": "Retrieves a specific account by ID from Salesforce, returning all available fields." }, { "slug": "SALESFORCE_GET_ALL_CUSTOM_OBJECTS", "name": "Get all objects", "description": "Retrieves all Salesforce objects (standard and custom) with detailed metadata. Each object includes a 'custom' field to identify custom objects. Use when you need to discover available objects or their capabilities." }, { "slug": "SALESFORCE_GET_ALL_FIELDS_FOR_OBJECT", "name": "Get all fields for an object", "description": "Retrieves all fields (standard and custom) for a Salesforce object with complete metadata including field types, constraints, picklist values, and relationships." }, { "slug": "SALESFORCE_GET_ALL_NAVIGATION_ITEMS", "name": "Get all navigation items", "description": "Gets all navigation items (tabs) that the user has access to. Use when you need to retrieve available navigation tabs for display or navigation purposes." }, { "slug": "SALESFORCE_GET_API", "name": "Get API resources by version", "description": "Tool to discover available REST API resources for a specified Salesforce API version. Use when you need to find available endpoints and their URIs for a specific API version." }, { "slug": "SALESFORCE_GET_APP", "name": "Get an app", "description": "Tool to get metadata about a specific Salesforce app by ID. Use when you need to retrieve app configuration details and navigation items for a particular application." }, { "slug": "SALESFORCE_GET_APPS", "name": "Get apps", "description": "Tool to get metadata for all apps a user has access to. Use when you need to list available Salesforce applications or check app navigation items. Metadata for the selected app includes tabs on the app's navigation bar, while other apps don't include tab details." }, { "slug": "SALESFORCE_GET_CAMPAIGN", "name": "Get campaign", "description": "Retrieves a specific campaign by ID from Salesforce, returning all available fields." }, { "slug": "SALESFORCE_GET_CHATTER_RESOURCES", "name": "Get Chatter resources", "description": "Tool to access Chatter resources directory. Use when you need to discover available Chatter feeds, groups, users, email digest controls, emojis, extensions, or streams." }, { "slug": "SALESFORCE_GET_CHILD_RECORDS", "name": "Get child records", "description": "Tool to get child records for a specified parent record and child relationship name. Use when you need to retrieve related records from a parent-child relationship in Salesforce, such as getting all Contacts for an Account or all Opportunities for an Account. Results are paginated with configurable page size." }, { "slug": "SALESFORCE_GET_COMPACT_LAYOUTS", "name": "Get Compact Layouts", "description": "Tool to retrieve compact layout information for multiple Salesforce objects. Use when you need to display object data in compact form for Lightning Experience, mobile apps, or custom interfaces." }, { "slug": "SALESFORCE_GET_COMPOSITE_RESOURCES", "name": "Get composite resources", "description": "Tool to retrieve a list of available composite resources in Salesforce. Use when you need to discover which composite API endpoints are available for batch operations." }, { "slug": "SALESFORCE_GET_COMPOSITE_SOBJECTS", "name": "Get multiple records by IDs", "description": "Retrieves multiple records of the same object type by IDs with a request body. Use when you need to retrieve more records than URL length limits allow (up to 2000 records vs ~800 via GET)." }, { "slug": "SALESFORCE_GET_CONSENT_ACTION", "name": "Get consent preferences", "description": "Tool to retrieve aggregated consent preferences across multiple records for a specific action. Use when you need to check if users have consented to email, tracking, fax, or other actions across Contact, Lead, User, Person Account, or Individual objects." }, { "slug": "SALESFORCE_GET_CONTACT", "name": "Get contact", "description": "Retrieves a specific contact by ID from Salesforce, returning all available fields." }, { "slug": "SALESFORCE_GET_CONTACT_BY_ID", "name": "Retrieve specific contact by id", "description": "Retrieves a Salesforce Contact by its unique ID; the ID must correspond to an existing Contact record in Salesforce." }, { "slug": "SALESFORCE_GET_DASHBOARD", "name": "Get dashboard", "description": "Gets detailed metadata for a specific dashboard including its components, layout, and filters." }, { "slug": "SALESFORCE_GET_FILE_CONTENT", "name": "Get file content", "description": "Returns the binary content of a Salesforce file, including references to external files. Use when you need to download or retrieve the actual file data from Salesforce." }, { "slug": "SALESFORCE_GET_FILE_INFORMATION", "name": "Get file information", "description": "Tool to retrieve comprehensive metadata and information about a specified file in Salesforce. Use when you need detailed file information including ownership, sharing settings, download URLs, and rendition status." }, { "slug": "SALESFORCE_GET_FILE_SHARES", "name": "Get file shares", "description": "Returns information about the objects with which the specified file has been shared. Use when you need to understand who has access to a specific file in Salesforce." }, { "slug": "SALESFORCE_GET_GLOBAL_ACTIONS", "name": "Get global actions", "description": "Tool to retrieve actions displayed in the Salesforce Global Actions menu with metadata. Use when you need to discover available global actions, quick actions, or custom buttons in the UI." }, { "slug": "SALESFORCE_GET_JOB_FAILED_RECORD_RESULTS", "name": "Get job failed record results", "description": "Tool to retrieve failed records from a Salesforce Bulk API 2.0 ingest job. Use when you need to get records that failed during a bulk operation, including error messages and original data." }, { "slug": "SALESFORCE_GET_JOB_SUCCESSFUL_RECORD_RESULTS", "name": "Get job successful record results", "description": "Tool to retrieve successfully processed records from a Salesforce Bulk API 2.0 ingest job. Use when you need to get records that were successfully created or updated during a bulk operation." }, { "slug": "SALESFORCE_GET_JOB_UNPROCESSED_RECORD_RESULTS", "name": "Get job unprocessed record results", "description": "Tool to retrieve unprocessed records from a Salesforce Bulk API 2.0 ingest job. Use when you need to get records that were not processed during a bulk operation, typically due to job abortion or interruption." }, { "slug": "SALESFORCE_GET_LAST_SELECTED_APP", "name": "Get last selected app", "description": "Retrieves the app the current user last selected or the app the user sees by default. Use when you need to determine which application the user is currently working in or should be using." }, { "slug": "SALESFORCE_GET_LEAD", "name": "Get lead", "description": "Retrieves a specific lead by ID from Salesforce, returning all available fields." }, { "slug": "SALESFORCE_GET_LIST_VIEW_ACTIONS", "name": "Get List View Header Actions", "description": "Tool to retrieve header actions on list views. Use when you need to get available actions, buttons, and quick actions displayed on a specific list view header in Salesforce." }, { "slug": "SALESFORCE_GET_LIST_VIEW_METADATA_BATCH", "name": "Get batch of list view metadata", "description": "Tool to retrieve metadata for multiple list views in a single batch request. Use when you need to get list view configuration, columns, filters, and sorting for multiple list views at once." }, { "slug": "SALESFORCE_GET_LIST_VIEW_METADATA_BY_NAME", "name": "Get list view metadata", "description": "Returns list view metadata by object and list view API name. Use when you need to retrieve complete metadata information for a specific list view, including display columns, filters, sort order, permissions, and user preferences." }, { "slug": "SALESFORCE_GET_LIST_VIEW_RECORDS_BY_ID", "name": "Get list view records by ID", "description": "Returns record data for a list view by its ID. Use when you need to retrieve records from a specific Salesforce list view." }, { "slug": "SALESFORCE_GET_LIST_VIEW_RECORDS_BY_NAME", "name": "Get list view records by API name", "description": "Retrieves paginated record data for a specified list view using the object and list view API names. Use when you need to fetch records that match a specific list view's filters and sorting criteria. Returns the same data that powers Lightning Experience list views." }, { "slug": "SALESFORCE_GET_LIST_VIEW_RESULTS", "name": "Get list view results", "description": "Retrieves the results of a list view for a specified sObject. Returns column definitions and record data with a 2,000 record limit per response." }, { "slug": "SALESFORCE_GET_LOOKUP_FIELD_SUGGESTIONS", "name": "Get lookup field suggestions", "description": "Tool to retrieve lookup field suggestions for editing lookup fields with search filtering. Use when searching for records to populate a lookup field, supporting typeahead, recent, and full-text search." }, { "slug": "SALESFORCE_GET_LOOKUP_SUGGESTIONS_CASE_CONTACT", "name": "Get lookup field suggestions with POST", "description": "Tool to get lookup field suggestions with POST request. Use when editing lookup fields with dependent lookup filtering or when you need to pass source record context in the request body." }, { "slug": "SALESFORCE_GET_MRU_LIST_VIEW_METADATA", "name": "Get MRU list view metadata", "description": "Tool to retrieve MRU list view metadata for a Salesforce object. Use when you need to understand the structure and configuration of the most recently used list view for an object." }, { "slug": "SALESFORCE_GET_MRU_LIST_VIEW_RECORDS", "name": "Get most recently used list view records", "description": "Tool to retrieve record data for an object's most recently used (MRU) list view. Use when you need to get the records that a user has recently accessed for a specific Salesforce object type." }, { "slug": "SALESFORCE_GET_NOTE", "name": "Get note", "description": "Retrieves a specific note by ID from Salesforce, returning all available fields. Notes with IsPrivate=true require the integration user to have sufficient permissions; inaccessible private notes will not be returned." }, { "slug": "SALESFORCE_GET_NOTE_BY_ID_WITH_FIELDS", "name": "Retrieve Note with conditions", "description": "DEPRECATED: Retrieves a Salesforce Note object by its ID, optionally specifying which fields to return; the Note ID must exist." }, { "slug": "SALESFORCE_GET_OBJECT_LIST_VIEWS", "name": "Get list views for an object", "description": "Returns a collection of list views associated with a Salesforce object. Use when you need to discover available list views for an object like Account, Contact, or Opportunity." }, { "slug": "SALESFORCE_GET_OPPORTUNITY", "name": "Get opportunity", "description": "Retrieves a specific opportunity by ID from Salesforce, returning all available fields." }, { "slug": "SALESFORCE_GET_ORG_LIMITS", "name": "Get organization limits", "description": "Tool to retrieve organization limits with max and remaining allocations. Use when you need to check API usage, storage limits, or other resource consumption in Salesforce." }, { "slug": "SALESFORCE_GET_PHOTO_ACTIONS", "name": "Get photo actions", "description": "Tool to retrieve available photo actions for Salesforce pages. Use when you need to get photo management actions for user or group pages. Currently, only group and user pages support photo actions." }, { "slug": "SALESFORCE_GET_PICKLIST_VALUES_BY_RECORD_TYPE", "name": "Get Values for All Picklist Fields", "description": "Tool to get values for all picklist fields of a record type, including dependent picklists. Use when you need to retrieve available picklist options for a specific object and record type, especially for dependent picklist hierarchies." }, { "slug": "SALESFORCE_GET_QUERY_JOB_INFO", "name": "Get job info query", "description": "Tool to retrieve information about a Salesforce Bulk API v2 query job. Use when you need to check the status and details of a query job." }, { "slug": "SALESFORCE_GET_QUERY_JOB_RESULTS", "name": "Get job query result", "description": "Retrieves results for a completed Bulk API v2 query job in CSV format. Supports pagination for large datasets via maxRecords and locator parameters." }, { "slug": "SALESFORCE_GET_QUICK_ACTIONS", "name": "Get quick actions", "description": "Tool to retrieve global and object-specific quick actions from Salesforce. Use when you need to list all available quick actions in the organization." }, { "slug": "SALESFORCE_GET_RECORD_COUNTS", "name": "Get record count for objects", "description": "Tool to retrieve total record counts for specified Salesforce objects. Use when you need to check storage usage or understand data volume for specific sObjects." }, { "slug": "SALESFORCE_GET_RECORD_EDIT_PAGE_ACTIONS", "name": "Get record edit page actions", "description": "Tool to get available actions on record edit pages. Use when you need to retrieve metadata about actions (standard actions, custom actions, quick actions, productivity actions) displayed on the record edit page for specific records." }, { "slug": "SALESFORCE_GET_RELATED_LIST_ACTIONS", "name": "Get related list actions", "description": "Tool to get actions on related lists for record detail pages. Use when you need to retrieve metadata about all available actions (standard buttons, quick actions, custom buttons, and productivity actions) that can be performed on records within a specific related list context." }, { "slug": "SALESFORCE_GET_RELATED_LIST_PREFERENCES_BATCH", "name": "Get batch of related list user preferences", "description": "Tool to get a batch of related list user preferences from Salesforce. Use when retrieving display preferences, column widths, or sort orders for multiple related lists simultaneously." }, { "slug": "SALESFORCE_GET_RELATED_LIST_RECORDS_CONTACTS", "name": "Get related list records with request body", "description": "Tool to retrieve related list records with request body parameters for filtering and pagination. Use when you need to get records from a related list associated with a parent record with complex query parameters. Returns up to 1,999 records per related list with pagination support." }, { "slug": "SALESFORCE_GET_REPORT", "name": "Get report metadata", "description": "Gets detailed metadata for a specific report including its structure, columns, filters, and groupings. Only fields included in the report layout are returned; use SALESFORCE_RUN_SOQL_QUERY when specific fields outside the report layout are required." }, { "slug": "SALESFORCE_GET_REPORT_INSTANCE", "name": "Get report instance results", "description": "Gets the results of a report instance created by running a report. Poll `attributes.status` until it equals 'Success' before parsing results. Response data is nested under `factMap` and `reportExtendedMetadata`; an empty `factMap` or zero rows is a valid successful result, not an error." }, { "slug": "SALESFORCE_GET_SEARCH_LAYOUT", "name": "Get search result layouts", "description": "Retrieves search result layout information for specified sObjects. Use when you need to understand which fields are displayed in search results for objects." }, { "slug": "SALESFORCE_GET_SEARCH_SUGGESTIONS", "name": "Search suggested queries", "description": "Returns a list of suggested searches based on the user's query string. Use when you want to help users discover relevant search terms before performing a search." }, { "slug": "SALESFORCE_GET_SOBJECT_BY_EXTERNAL_ID", "name": "Get sObject by external ID", "description": "Tool to retrieve a Salesforce record by matching an external ID field value. Use when you need to find a record using a custom external identifier instead of the Salesforce ID. The field specified must be marked as an External ID in Salesforce." }, { "slug": "SALESFORCE_GET_SOBJECT_COLLECTIONS", "name": "Get multiple sObject records", "description": "Tool to retrieve multiple records of the same sObject type in a single API call. Use when you need to fetch up to 200 records by their IDs. Returns an array of sObjects with the specified fields." }, { "slug": "SALESFORCE_GET_SOBJECT_LIST_VIEW", "name": "Get sObject list view information", "description": "Tool to retrieve basic information about a specific list view for an sObject. Use when you need to get list view metadata including its ID, label, developer name, and URLs for accessing results and detailed descriptions." }, { "slug": "SALESFORCE_GET_SOBJECT_LIST_VIEWS", "name": "Get list views for sObject", "description": "Tool to retrieve list views for a specified sObject. Use when you need to discover available filtered views of records for objects like Account, Contact, Lead, or Opportunity." }, { "slug": "SALESFORCE_GET_SOBJECT_PLATFORMACTION", "name": "Get PlatformAction SObject metadata", "description": "Retrieves metadata description of PlatformAction SObject. Use when you need to understand the structure and fields of PlatformAction for querying UI actions." }, { "slug": "SALESFORCE_GET_S_OBJECT_QUICK_ACTION_DEFAULT_VALUES", "name": "Get sObject Quick Action Default Values by ID", "description": "Retrieves default field values for a quick action in a specific record context. Use when you need to pre-populate fields when creating related records through quick actions." }, { "slug": "SALESFORCE_GET_SOBJECT_QUICK_ACTION_DEFAULT_VALUES", "name": "Get sObject Quick Action Default Values", "description": "Retrieves default field values for a specific quick action on an sObject. Use when you need to understand what fields will be automatically populated when executing the quick action." }, { "slug": "SALESFORCE_GET_S_OBJECT_RECORD", "name": "Get sObject record by ID", "description": "Tool to retrieve a single Salesforce record by ID from any sObject type. Use when you need to get detailed information about a specific record." }, { "slug": "SALESFORCE_GET_SOBJECT_RELATIONSHIP", "name": "Get records using sObject relationships", "description": "Retrieves records by traversing sObject relationships using friendly URLs. Use when you need to get related records through a relationship field (e.g., all Contacts for an Account)." }, { "slug": "SALESFORCE_GET_S_OBJECTS_DESCRIBE_LAYOUTS_RECORD_TYPE_ID", "name": "Get layouts for object with record type", "description": "Tool to retrieve layout metadata for a specific record type on an object. Use when you need detailed information about page layouts, field positioning, sections, quick actions, related lists, and buttons for a particular record type." }, { "slug": "SALESFORCE_GET_SOBJECTS_SOBJECT_DESCRIBE_APPROVALLAYOUTS", "name": "Get approval layouts for object", "description": "Retrieves approval layouts for a specified Salesforce object. Use when you need to understand which fields are displayed in approval pages or to dynamically build approval interfaces." }, { "slug": "SALESFORCE_GET_S_OBJECTS_UPDATED", "name": "Get updated sObject records", "description": "Tool to retrieve a list of sObject records that have been updated within a given timeframe. Use when you need to synchronize records or track changes to specific sObject types over a time period." }, { "slug": "SALESFORCE_GET_SUPPORT", "name": "Get support knowledge", "description": "Retrieves the root of the Support Knowledge REST API. Use when you need to access knowledge articles and data category information." }, { "slug": "SALESFORCE_GET_SUPPORTED_OBJECTS_DIRECTORY", "name": "Get directory of supported objects", "description": "Tool to get a Salesforce org's active theme and directory of supported objects. Use when you need to discover available objects that are supported by the User Interface API, including their CRUD permissions, labels, and theme information." }, { "slug": "SALESFORCE_GET_SUPPORT_KNOWLEDGE_ARTICLES", "name": "Get support knowledge articles", "description": "Retrieves user's visible knowledge articles and data categories from Salesforce Knowledge. Use when you need to access published, draft, or archived articles based on user permissions." }, { "slug": "SALESFORCE_GET_THEME", "name": "Get theme", "description": "Tool to get icons and colors for Salesforce UI themes. Use when you need to retrieve theme information for objects in the organization." }, { "slug": "SALESFORCE_GET_UI_API_ACTIONS_LOOKUP_ACCOUNT", "name": "Get lookup field actions", "description": "Tool to get lookup field actions for a Salesforce object. Use when you need to retrieve available actions for lookup fields on a specific object type (e.g., Account, Contact)." }, { "slug": "SALESFORCE_GET_UIAPI_ACTIONS_MRU_LIST_ACCOUNT", "name": "Get MRU List View Actions", "description": "Tool to retrieve header actions available on the MRU (Most Recently Used) list view for a specified Salesforce object. Use when you need to get available actions, buttons, and quick actions for an object's list view." }, { "slug": "SALESFORCE_GET_UI_API_ACTIONS_RECORD_RELATED_LIST", "name": "Get related list actions", "description": "Tool to get available actions on related lists for a record detail page. Use when you need to retrieve metadata about actions (standard actions, custom actions, quick actions, productivity actions) displayed on related lists for a specific parent record." }, { "slug": "SALESFORCE_GET_UI_API_APPS_USER_NAV_ITEMS", "name": "Get Personalized Navigation Items", "description": "Tool to get personalized navigation items for a specific Salesforce app. Use when you need to retrieve the navigation tabs that a user has access to within an application." }, { "slug": "SALESFORCE_GET_UIAPI_LIST_INFO_ACCOUNT_ALL_ACCOUNTS", "name": "Get Account AllAccounts list view metadata", "description": "Retrieves list view metadata for the Account AllAccounts view using Salesforce UI API. Use when you need to understand the structure, columns, filters, and sorting of the standard AllAccounts list view." }, { "slug": "SALESFORCE_GET_UIAPI_LIST_INFO_ACCOUNT_RECENT", "name": "Get List View Metadata", "description": "Tool to get list view metadata from Salesforce UI API. Use when you need to retrieve configuration details for a list view including columns, filters, sorting, and permissions." }, { "slug": "SALESFORCE_GET_UIAPI_LIST_INFO_ACCOUNT_SEARCH_RESULT", "name": "Get Account SearchResult list view metadata", "description": "Retrieves list view metadata for the Account __SearchResult view using Salesforce UI API. Use when you need to understand the structure, columns, filters, and sorting of search results for Accounts." }, { "slug": "SALESFORCE_GET_UI_API_LIST_INFO_RECENT", "name": "Get List Views for Object", "description": "Tool to get list views for a Salesforce object. Use when you need to retrieve available list views with options to filter by recent usage and search." }, { "slug": "SALESFORCE_GET_UIAPIMRU_LIST_INFO_ACCOUNT", "name": "Get MRU List Info for Account", "description": "Tool to get Most Recently Used (MRU) list view metadata for Account object. Use when you need to retrieve list view settings, display columns, and preferences. Note: This endpoint is deprecated and no longer updates." }, { "slug": "SALESFORCE_GET_UI_API_MRU_LIST_RECORDS_ACCOUNT", "name": "Get MRU List Records for Account", "description": "Tool to get Most Recently Used (MRU) list view records for Account object. Use when you need to retrieve recently accessed Account records. Note: This endpoint is deprecated and no longer updates. It is not part of the Services under your Main Services Agreement with Salesforce and is for evaluation purposes only, not for production use." }, { "slug": "SALESFORCE_GET_UI_API_RECORD_UI", "name": "Get record UI data and metadata", "description": "Tool to retrieve layout, field metadata, and record data in a single response. Use when you need comprehensive information including UI layout configuration, object metadata, and actual record values with child relationships." }, { "slug": "SALESFORCE_GET_UIAPI_RELATED_LIST_PREFERENCES", "name": "Get related list user preferences", "description": "Tool to retrieve user preferences for a specific related list on an object. Use when you need to get display settings, column widths, or sort preferences for related lists in Salesforce UI." }, { "slug": "SALESFORCE_GET_USER_INFO", "name": "Get user info", "description": "Retrieves information about the current user or a specific user in Salesforce." }, { "slug": "SALESFORCE_HEAD_ACTIONS_CUSTOM", "name": "Get custom actions headers", "description": "Tool to return HTTP headers for custom invocable actions without response body. Use when you need to check resource availability and metadata before executing full requests or to validate resource state conditionally." }, { "slug": "SALESFORCE_HEAD_ACTIONS_STANDARD", "name": "Get standard actions headers", "description": "Tool to return HTTP headers for standard invocable actions metadata without response body. Use when you need to perform efficient cache validation, check for metadata changes, or reduce bandwidth usage before retrieving full action metadata." }, { "slug": "SALESFORCE_HEAD_APPMENU_SALESFORCE1", "name": "Get AppMenu Salesforce1 headers", "description": "Tool to return HTTP headers for AppMenu Salesforce1 mobile navigation items without response body. Use when you need to check resource metadata, validate cache (via ETag or Last-Modified), or test endpoint availability without data transfer overhead." }, { "slug": "SALESFORCE_HEAD_PROCESS_RULES_S_OBJECT", "name": "Get process rules headers", "description": "Tool to return HTTP headers for process rules of an sObject without retrieving the response body. Use when you need to check if process rules exist for an sObject or retrieve metadata like ETag and Last-Modified headers." }, { "slug": "SALESFORCE_HEAD_QUICK_ACTIONS", "name": "Get Quick Actions headers", "description": "Tool to return HTTP headers for Quick Actions resource without response body. Use when you need to inspect metadata before retrieving full Quick Actions content or to validate resource availability." }, { "slug": "SALESFORCE_HEAD_SOBJECT_QUICK_ACTION_DEFAULT_VALUES", "name": "Get quick action default values headers by ID", "description": "Tool to return HTTP headers for sObject quick action default values by context ID without response body. Use when you need to check resource availability, verify cache validation headers (ETag, Last-Modified), or optimize API calls by avoiding unnecessary data transfer." }, { "slug": "SALESFORCE_HEAD_SOBJECTS_GLOBAL_DESCRIBE_LAYOUTS", "name": "Get global publisher layouts headers", "description": "Tool to return HTTP headers for all global publisher layouts without response body. Use when implementing cache validation strategies, efficient resource polling, or checking if layouts have been modified without transferring layout data." }, { "slug": "SALESFORCE_HEAD_SOBJECTS_QUICK_ACTION", "name": "Get sObject quick action headers", "description": "Tool to return HTTP headers for a specific sObject quick action without response body. Use when you need to check ETag or Last-Modified headers before fetching full content or to validate quick action availability." }, { "slug": "SALESFORCE_HEAD_SOBJECTS_USER_PASSWORD", "name": "Get User password headers", "description": "Tool to return HTTP headers for User password resource without response body. Use when you need to check user password metadata and expiration status efficiently without retrieving the full response content." }, { "slug": "SALESFORCE_LIST_ACCOUNTS", "name": "List accounts", "description": "Lists accounts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results paginate via nextRecordsUrl with up to ~2000 rows per page. REQUEST_LIMIT_EXCEEDED requires exponential backoff; INVALID_FIELD or INSUFFICIENT_ACCESS_OR_READONLY errors indicate profile or field-level restrictions — simplify SELECT/WHERE clauses." }, { "slug": "SALESFORCE_LIST_ANALYTICS_TEMPLATES", "name": "List Analytics templates", "description": "Tool to list CRM Analytics templates available in the org. Use when you need to discover available templates for creating Analytics apps." }, { "slug": "SALESFORCE_LIST_CAMPAIGNS", "name": "List campaigns", "description": "Lists campaigns from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results returned under `response_data.records`; use `Id` (not `Name`) to identify campaigns in downstream operations." }, { "slug": "SALESFORCE_LIST_CONTACTS", "name": "List contacts", "description": "Lists contacts from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are returned under `response_data.records`; check `response_data.done` and `response_data.totalSize` for pagination — use OFFSET or `nextRecordsUrl` until `done=true` to retrieve all records." }, { "slug": "SALESFORCE_LIST_CUSTOM_INVOCABLE_ACTIONS", "name": "Get custom invocable actions", "description": "Retrieves the list of custom actions including Flow actions, Apex actions, and invocable processes. Use when you need to discover available custom invocable actions in your Salesforce organization." }, { "slug": "SALESFORCE_LIST_DASHBOARDS", "name": "List dashboards", "description": "Lists all dashboards available in Salesforce with basic metadata including name, ID, and URLs." }, { "slug": "SALESFORCE_LIST_EMAIL_TEMPLATES", "name": "List email templates", "description": "Lists available email templates in Salesforce with filtering and search capabilities." }, { "slug": "SALESFORCE_LIST_LEADS", "name": "List leads", "description": "Lists leads from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are paginated; follow nextRecordsUrl in the response to retrieve subsequent pages — the first page may silently omit matching records beyond the page limit." }, { "slug": "SALESFORCE_LIST_NOTES", "name": "List notes", "description": "Lists notes from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Designed specifically for Note and ContentNote objects." }, { "slug": "SALESFORCE_LIST_OPPORTUNITIES", "name": "List opportunities", "description": "Lists opportunities from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Results are paginated up to ~2000 rows per batch; check `done`, `totalSize`, and `nextRecordsUrl` fields to detect and retrieve additional pages, or use a SOQL `LIMIT` clause to cap results. For complex queries rejected by this tool, use `SALESFORCE_RUN_SOQL_QUERY` instead." }, { "slug": "SALESFORCE_LIST_PRICEBOOK_ENTRIES", "name": "List pricebook entries", "description": "Lists pricebook entries from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map product names to pricebook entry IDs needed for opportunity line items. When using returned IDs with SALESFORCE_ADD_OPPORTUNITY_LINE_ITEM, always filter with WHERE IsActive = true — inactive entries cause REQUIRED_FIELD_MISSING or INVALID_CROSS_REFERENCE_KEY errors." }, { "slug": "SALESFORCE_LIST_PRICEBOOKS", "name": "List pricebooks", "description": "Lists pricebooks from Salesforce using SOQL query, allowing flexible filtering, sorting, and field selection. Use this to map pricebook names to IDs." }, { "slug": "SALESFORCE_LIST_REPORTS", "name": "List reports", "description": "Lists all reports available in Salesforce with basic metadata including name, ID, and URLs." }, { "slug": "SALESFORCE_LIST_STANDARD_INVOCABLE_ACTIONS", "name": "Get standard invocable actions", "description": "Retrieves the list of standard actions that can be statically invoked. Use when you need to discover available standard invocable actions like posting to Chatter, sending email, or sending custom notifications." }, { "slug": "SALESFORCE_LOG_CALL", "name": "Log call", "description": "Logs a completed phone call as a task in Salesforce with call-specific details like duration, type, and disposition." }, { "slug": "SALESFORCE_LOG_EMAIL_ACTIVITY", "name": "Log email activity", "description": "Creates an EmailMessage record to log email activity in Salesforce, associating it with related records. Requires EmailMessage insert permissions enabled at the org level; some orgs block this entirely." }, { "slug": "SALESFORCE_MASS_TRANSFER_OWNERSHIP", "name": "Mass transfer ownership", "description": "Transfers ownership of multiple records to a new owner in a single operation using Salesforce's composite API for better performance. Operation has no rollback; all provided records are reassigned immediately." }, { "slug": "SALESFORCE_PARAMETERIZED_SEARCH", "name": "Parameterized Search", "description": "Tool to execute RESTful search using parameters instead of SOSL clause. Use when you need to search across Salesforce objects with simple GET requests (URL parameters) or complex POST requests (JSON body with advanced filtering). POST method supports DataCategories, networks, orderBy constraints, and per-object filtering." }, { "slug": "SALESFORCE_PATCH_COMPOSITE_SOBJECTS", "name": "Upsert records using external ID", "description": "Tool to upsert up to 200 records using external ID field matching. Use when you need to create or update multiple records efficiently in a single API call based on an external ID field." }, { "slug": "SALESFORCE_POST_COMPOSITE_GRAPH", "name": "Execute Composite Graph", "description": "Tool to execute multiple related REST API requests in a single transactional call with up to 500 subrequests per graph. Use when you need to perform multiple Salesforce operations atomically where all operations must succeed or fail together. Supports referencing output from one request as input to subsequent requests using @{referenceId.fieldName} syntax." }, { "slug": "SALESFORCE_POST_COMPOSITE_SOBJECTS", "name": "Create records using sObject Collections", "description": "Tool to create up to 200 records in one request using sObject Collections. Use when you need to create multiple records of potentially different sObject types efficiently in a single API call." }, { "slug": "SALESFORCE_POST_PARAMETERIZED_SEARCH", "name": "Parameterized Search", "description": "Tool to execute parameterized search across Salesforce objects with advanced filtering. Use when you need to search for records using specific search terms with fine-grained control over which objects to search, which fields to return, and additional filtering criteria." }, { "slug": "SALESFORCE_QUERY", "name": "Execute SOQL Query (Deprecated)", "description": "DEPRECATED: Use SALESFORCE_RUN_SOQL_QUERY instead. Tool to execute SOQL queries against Salesforce. Use when you need to retrieve data from Salesforce objects using SOQL syntax. Returns up to 2000 records per request with pagination support via nextRecordsUrl." }, { "slug": "SALESFORCE_QUERY_ALL", "name": "Query All (including deleted)", "description": "Tool to execute SOQL queries including soft-deleted and archived records. Use when you need to query records that have been deleted via merge or delete operations, or when accessing archived Task and Event records." }, { "slug": "SALESFORCE_QUERY_CONTACTS_BY_NAME", "name": "Query contacts by name", "description": "DEPRECATED: Finds Salesforce Contact records by name using a case-insensitive search." }, { "slug": "SALESFORCE_QUERY_REPORT", "name": "Query report", "description": "DEPRECATED: Executes a Salesforce report synchronously by its `id` and `reportType`, optionally with dynamic ad-hoc adjustments like filters or groupings, and returns its data without modifying the saved report." }, { "slug": "SALESFORCE_REMOVE_ACCOUNT_BY_UNIQUE_IDENTIFIER", "name": "Remove account by unique identifier", "description": "DEPRECATED: Deletes an existing Salesforce Account using its unique ID, returning an empty response on success (HTTP 204)." }, { "slug": "SALESFORCE_REMOVE_A_SPECIFIC_CONTACT_BY_ID", "name": "Remove a specific contact by id", "description": "DEPRECATED: Permanently deletes a specific Contact from Salesforce using its unique ID, which must correspond to an existing record." }, { "slug": "SALESFORCE_REMOVE_CAMPAIGN_OBJECT_BY_ID", "name": "Remove campaign object by id", "description": "DEPRECATED: Permanently deletes a specific Campaign SObject in Salesforce using its unique ID." }, { "slug": "SALESFORCE_REMOVE_FROM_CAMPAIGN", "name": "Remove from campaign", "description": "Removes a lead or contact from a campaign by deleting the CampaignMember record. Provide either the member_id (lead/contact ID) or the specific campaign_member_id." }, { "slug": "SALESFORCE_REMOVE_NOTE_OBJECT_BY_ID", "name": "Remove note object by id", "description": "DEPRECATED: Permanently deletes an existing Salesforce Note object identified by its unique ID." }, { "slug": "SALESFORCE_REMOVE_OPPORTUNITY_BY_ID", "name": "Remove opportunity by id", "description": "DEPRECATED: Permanently deletes an existing Salesforce Opportunity by its ID; if the Opportunity does not exist, a 'not found' (404) error occurs." }, { "slug": "SALESFORCE_RETRIEVE_ACCOUNT_DATA_AND_ERROR_RESPONSES", "name": "Retrieve account data and error responses", "description": "DEPRECATED: Retrieves comprehensive metadata for the Salesforce Account sObject, detailing its properties, recent records, and related resource URLs." }, { "slug": "SALESFORCE_RETRIEVE_CAMPAIGN_DATA_WITH_ERROR_HANDLING", "name": "Retrieve campaign data with error handling", "description": "DEPRECATED: Retrieves comprehensive information and metadata for the Salesforce Campaign sObject, provided it is enabled and accessible in the organization, and features robust error handling." }, { "slug": "SALESFORCE_RETRIEVE_CONTACT_INFO_WITH_STANDARD_RESPONSES", "name": "Retrieve contact object metadata", "description": "DEPRECATED: Retrieves comprehensive metadata (e.g., fields, data types, picklist values) for the Salesforce Contact SObject; this action does not retrieve individual contact records." }, { "slug": "SALESFORCE_RETRIEVE_LEAD_BY_ID", "name": "Retrieve lead by id", "description": "Retrieves details for a Salesforce Lead by its ID; the specified Lead ID must exist in Salesforce." }, { "slug": "SALESFORCE_RETRIEVE_LEAD_DATA_WITH_VARIOUS_RESPONSES", "name": "Retrieve lead data with various responses", "description": "DEPRECATED: Retrieves Lead sObject data from Salesforce, such as recently viewed leads or general Lead object information." }, { "slug": "SALESFORCE_RETRIEVE_NOTE_OBJECT_INFORMATION", "name": "Retrieve note object information", "description": "DEPRECATED: Retrieves comprehensive metadata for the Salesforce 'Note' SObject, if it is enabled and accessible, to understand its structure and capabilities." }, { "slug": "SALESFORCE_RETRIEVE_OPPORTUNITIES_DATA", "name": "Retrieve opportunities data", "description": "Retrieves all available Opportunity records, representing potential revenue-generating deals, from Salesforce." }, { "slug": "SALESFORCE_RETRIEVE_OPPORTUNITY_BY_ID_WITH_OPTIONAL_FIELDS", "name": "Retrieve opportunity by id with optional fields", "description": "DEPRECATED: Retrieves a Salesforce Opportunity by its ID; the Opportunity ID must exist." }, { "slug": "SALESFORCE_RETRIEVE_SPECIFIC_CAMPAIGN_OBJECT_DETAILS", "name": "Retrieve specific campaign object details", "description": "DEPRECATED: Retrieves details for a specific Salesforce Campaign object by its ID, optionally limiting to specified fields; the Campaign object must exist." }, { "slug": "SALESFORCE_RETRIEVE_SPECIFIC_CONTACT_BY_ID", "name": "Retrieve specific contact by id", "description": "(DEPRECATED: use `SALESFORCE_GET_CONTACT_BY_ID`) Retrieves a Salesforce Contact by its unique ID; the ID must correspond to an existing Contact record in Salesforce." }, { "slug": "SALESFORCE_RUN_REPORT", "name": "Run report", "description": "Runs a report and returns the results. Creates a report instance that can be checked for completion. Results are returned in a nested structure (factMap, reportExtendedMetadata), not a flat record list; an empty factMap/rows is a valid result. Avoid repeated calls when freshness allows — reuse an existing instance_id instead." }, { "slug": "SALESFORCE_RUN_SOQL_QUERY", "name": "Run SOQL query", "description": "Executes a SOQL query against Salesforce data. Returns records matching the query with pagination support." }, { "slug": "SALESFORCE_SEARCH", "name": "Execute SOSL search", "description": "DEPRECATED: Use SALESFORCE_EXECUTE_SOSL_SEARCH instead. Executes a SOSL search query across multiple Salesforce objects. Use when you need to search for text across multiple object types simultaneously." }, { "slug": "SALESFORCE_SEARCH_ACCOUNTS", "name": "Search accounts", "description": "Search for Salesforce accounts using criteria like name, industry, type, location, or contact information. Always provide at least one filter parameter; omitting all filters returns a broad, slow listing. Owner/territory filtering is unsupported — use SALESFORCE_RUN_SOQL_QUERY for ownership-based filters. Use SALESFORCE_GET_ACCOUNT to fetch complete field data for a specific record. Unsupported filter fields may be silently ignored — verify results reflect intended criteria." }, { "slug": "SALESFORCE_SEARCH_CAMPAIGNS", "name": "Search campaigns", "description": "Search for Salesforce campaigns using multiple criteria like name, type, status, date range, or active status. Requires access to the Campaign object (Marketing User feature must be enabled in the org). For complex sorting (multi-field ORDER BY), use SALESFORCE_RUN_SOQL_QUERY instead." }, { "slug": "SALESFORCE_SEARCH_CONTACTS", "name": "Search contacts", "description": "Search Salesforce Contact records (not Leads — use SALESFORCE_SEARCH_LEADS for those) using name, email, phone, account, or title. All parameters support partial/fuzzy matching, so results may include unrelated records; post-filter client-side for exact matches. Partial matches and common names can return multiple contacts — always confirm the correct contact by its 18-character Id before passing to write operations like SALESFORCE_LOG_CALL or SALESFORCE_CREATE_TASK. A response with totalSize=0 is a valid 'not found' outcome. Provide at least one search criterion; omitting all returns a broad, slow result set. Returned Ids are 18-character strings and must be used as-is in downstream tools." }, { "slug": "SALESFORCE_SEARCH_KNOWLEDGE_ARTICLES", "name": "Search suggested article title matches", "description": "Search for Salesforce Knowledge articles with titles matching the search query. Returns auto-suggest results for Knowledge articles based on title matches." }, { "slug": "SALESFORCE_SEARCH_LEADS", "name": "Search leads", "description": "Search for Salesforce leads using criteria like name, email, phone, company, title, status, or lead source. At least one search criterion should be provided — omitting all parameters results in a broad, slow listing of arbitrary records. Partial matches on name, email, and company may return multiple candidates; confirm Email or Company field values before using a lead ID in downstream operations." }, { "slug": "SALESFORCE_SEARCH_NOTES", "name": "Search notes", "description": "Search for Salesforce notes using multiple criteria like title, body content, parent record, owner, or creation date. Provide at least one filter criterion — omitting all filters returns a broad, slow, noisy listing." }, { "slug": "SALESFORCE_SEARCH_OPPORTUNITIES", "name": "Search opportunities", "description": "Search for Salesforce opportunities using multiple criteria like name, account, stage, amount, close date, or status. Apply at least one filter to avoid broad result sets. Partial-match searches may return multiple similar records; verify the correct record by Id before downstream use." }, { "slug": "SALESFORCE_SEARCH_TASKS", "name": "Search tasks", "description": "Search for Salesforce tasks using multiple criteria like subject, status, priority, assigned user, related records, or dates. Always provide at least one filter criterion — no filters produces broad, slow results. For complex filtering not supported here, use SALESFORCE_RUN_SOQL_QUERY." }, { "slug": "SALESFORCE_SEND_EMAIL", "name": "Send email", "description": "Sends an email through Salesforce with options for recipients, attachments, and activity logging. Can partially succeed — check per-recipient success/failure status rather than treating the call as all-or-nothing. For large recipient lists, use SALESFORCE_SEND_MASS_EMAIL instead." }, { "slug": "SALESFORCE_SEND_EMAIL_FROM_TEMPLATE", "name": "Send email from template", "description": "Sends an email using a predefined Salesforce email template with merge field support." }, { "slug": "SALESFORCE_SEND_MASS_EMAIL", "name": "Send mass email", "description": "Sends bulk emails to multiple recipients immediately and irreversibly using a template or custom content. Requires either a valid template_id or both subject and body; omitting all three causes errors. Processes in batches for performance. Check failedRecipients and summary.failureCount in the response even when success=true, as individual recipient failures can occur without an overall failure." }, { "slug": "SALESFORCE_SET_USER_PASSWORD", "name": "Set user password", "description": "Tool to set or reset a user's password in Salesforce. Use when you need to assign a specific password or generate a random one for a user." }, { "slug": "SALESFORCE_SOBJECT_ROWS_UPDATE", "name": "Update sObject record", "description": "Tool to update specific fields in an existing Salesforce sObject record. Use when you need to modify one or more fields in a record without affecting other fields." }, { "slug": "SALESFORCE_SOBJECT_USER_PASSWORD", "name": "Get user password expiration status", "description": "Tool to check whether a Salesforce user's password has expired. Use when you need to verify password expiration status for a specific user." }, { "slug": "SALESFORCE_TOOLING_QUERY", "name": "Execute Tooling API query", "description": "Tool to execute SOQL queries against Salesforce Tooling API metadata objects. Use when you need to query metadata components like ApexClass, ApexTrigger, ValidationRule, WorkflowRule, FieldDefinition, or EntityDefinition. The Tooling API exposes objects that use the external object framework and provides granular access to metadata components for development and deployment tasks." }, { "slug": "SALESFORCE_UPDATE_ACCOUNT", "name": "Update account", "description": "Updates an existing account in Salesforce with the specified changes. Only provided fields will be updated." }, { "slug": "SALESFORCE_UPDATE_ACCOUNT_OBJECT_BY_ID", "name": "Update account by id", "description": "DEPRECATED: Updates specified fields of an existing Salesforce Account object identified by its unique ID; field names are case-sensitive and read-only fields are ignored." }, { "slug": "SALESFORCE_UPDATE_CAMPAIGN", "name": "Update campaign", "description": "Updates an existing campaign in Salesforce with the specified changes. Only provided fields will be updated." }, { "slug": "SALESFORCE_UPDATE_CAMPAIGN_BY_ID_WITH_JSON", "name": "Update Campaign By ID", "description": "DEPRECATED: Updates specific fields of an existing Campaign in Salesforce, identified by its unique `id`, which must already exist." }, { "slug": "SALESFORCE_UPDATE_CONTACT", "name": "Update contact", "description": "Updates an existing contact in Salesforce with the specified changes. Only provided fields will be updated. Returns HTTP 204 with no body on success; use SALESFORCE_GET_CONTACT to verify applied changes. Org-level validation rules, duplicate rules, or field-level permissions may reject correctly formatted requests with HTTP 400; inspect the error response to identify the constraint." }, { "slug": "SALESFORCE_UPDATE_CONTACT_BY_ID", "name": "Update contact by id", "description": "DEPRECATED: Updates specified fields of an existing Salesforce Contact by its ID; at least one field must be provided for modification." }, { "slug": "SALESFORCE_UPDATE_FAVORITE", "name": "Update a favorite", "description": "Tool to update a favorite's properties in Salesforce UI API. Use when you need to reorder favorites or modify their display properties." }, { "slug": "SALESFORCE_UPDATE_LEAD", "name": "Update lead", "description": "Updates an existing lead in Salesforce with the specified changes. Only provided fields will be updated." }, { "slug": "SALESFORCE_UPDATE_LEAD_BY_ID_WITH_JSON_PAYLOAD", "name": "Update lead by ID with JSON payload", "description": "DEPRECATED: Updates specified fields of an existing Lead in Salesforce via its unique ID (path parameter), returning HTTP 204 on success or error details on failure; request body must contain at least one field to update." }, { "slug": "SALESFORCE_UPDATE_LIST_VIEW_PREFERENCES", "name": "Update list view preferences", "description": "Tool to update user preferences for a Salesforce list view including column widths, text wrapping, and display order. Use when you need to customize how columns appear in a list view." }, { "slug": "SALESFORCE_UPDATE_NOTE", "name": "Update note", "description": "Updates an existing note in Salesforce with the specified changes. Only provided fields will be updated." }, { "slug": "SALESFORCE_UPDATE_OPPORTUNITY", "name": "Update opportunity", "description": "Updates an existing opportunity in Salesforce with the specified changes. Only provided fields will be updated. Returns HTTP 204 with empty body on success; call SALESFORCE_GET_OPPORTUNITY afterward to read updated values. Updates may fail with FIELD_CUSTOM_VALIDATION_EXCEPTION or REQUIRED_FIELD_MISSING — inspect the error message to identify the offending field." }, { "slug": "SALESFORCE_UPDATE_OPPORTUNITY_BY_ID", "name": "Update opportunity by id", "description": "DEPRECATED: Updates specified fields of an existing Salesforce Opportunity by its ID; the Opportunity must exist, and some fields (like Name, StageName, CloseDate) may have specific Salesforce validation rules if being modified, while read-only fields update indirectly based on other changes." }, { "slug": "SALESFORCE_UPDATE_RECORD", "name": "Update a record", "description": "Tool to update a record's data in Salesforce via UI API. Use when you need to modify field values on an existing record. Salesforce validation rules are enforced. Pass If-Unmodified-Since header to prevent conflicts." }, { "slug": "SALESFORCE_UPDATE_RELATED_LIST_PREFERENCES", "name": "Update Related List Preferences", "description": "Tool to update user preferences for a specific related list on an object in Salesforce. Use when customizing display settings such as column widths, text wrapping, column ordering, and sorting preferences for related lists." }, { "slug": "SALESFORCE_UPDATE_SPECIFIC_NOTE_BY_ID", "name": "Update specific note by id", "description": "DEPRECATED: Use `update_specific_note_by_id` instead. Updates specified fields of an existing Salesforce Note SObject identified by its ID; the Note must already exist." }, { "slug": "SALESFORCE_UPDATE_TASK", "name": "Update task", "description": "Updates an existing task in Salesforce with new information. Only provided fields will be updated." }, { "slug": "SALESFORCE_UPLOAD_FILE", "name": "Upload file to Salesforce Files", "description": "Upload a file to Salesforce Files home via the Connect REST API. Use when you need to attach files to records or store them in a user's personal library. File size limit: 50 MB per request." }, { "slug": "SALESFORCE_UPLOAD_JOB_DATA", "name": "Upload job data", "description": "Tool to upload CSV data to a Salesforce Bulk API v2 ingest job. Use after creating a job and before closing it. Only ONE upload is allowed per job - multiple uploads will fail. After upload, close the job with state 'UploadComplete' to begin processing." }, { "slug": "SALESFORCE_UPSERT_SOBJECT_BY_EXTERNAL_ID", "name": "Upsert sObject by External ID", "description": "Tool to upsert records using sObject Rows by External ID. Use when you need to create or update a Salesforce record based on an external ID field value - creates a new record if the external ID doesn't exist, or updates the existing record if it does." } ], "triggers": [ { "slug": "SALESFORCE_ACCOUNT_CREATED_OR_UPDATED_TRIGGER", "name": "Account Created or Updated", "description": "Triggers when an Account is created or updated in Salesforce.\n Uses LastModifiedDate high-watermark to capture both creations and updates." }, { "slug": "SALESFORCE_CONTACT_UPDATED_TRIGGER", "name": "Contact Updated", "description": "Triggers when an existing Salesforce Contact record is modified.\n Emits changed fields alongside relevant timestamps." }, { "slug": "SALESFORCE_GENERIC_S_OBJECT_RECORD_UPDATED_TRIGGER", "name": "Record Updated (Generic SObject)", "description": "Triggers when monitored fields change on any Salesforce SObject. You specify the SObject type\n and which field values should be returned in the payload. The trigger uses SystemModstamp to\n detect changes regardless of which specific field changed." }, { "slug": "SALESFORCE_NEW_CONTACT_TRIGGER", "name": "New Contact Trigger", "description": "Triggers when a new Contact is Created in Salesforce." }, { "slug": "SALESFORCE_NEW_LEAD_TRIGGER", "name": "New Lead Trigger", "description": "Triggers when a new Lead is created in Salesforce." }, { "slug": "SALESFORCE_NEW_OR_UPDATED_OPPORTUNITY_TRIGGER", "name": "New or Updated Opportunity", "description": "Triggers when a Salesforce Opportunity is created or updated." }, { "slug": "SALESFORCE_TASK_CREATED_OR_COMPLETED_TRIGGER", "name": "Task Created or Completed", "description": "Triggers when a Task is created or when its status changes to Completed in Salesforce.\n Supports optional filtering by task Status or Subject." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "salesforce_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "full,refresh_token,openid" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Salesforce Subdomain", "type": "string", "description": "The part of your Salesforce URL before .salesforce.com (e.g. 'acme.my'). Most accounts can keep the default 'login' — your real instance is detected after you sign in.", "required": true, "default": "login" }, { "name": "suffix.one", "displayName": "Instance endpoint", "type": "string", "description": "The API version path added to your Salesforce address (e.g. /services/data/v62.0). Most accounts can keep the default; change it only if your org needs another version.", "required": true, "default": "/services/data/v62.0" } ], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "salesforce_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Consumer Key from your Salesforce Connected App (must have Client Credentials Flow enabled with a Run As user set).", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Consumer Secret from your Salesforce Connected App.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "My Domain Subdomain", "type": "string", "description": "Your My Domain subdomain — everything before .salesforce.com (e.g. 'acme.my'); sandboxes look like 'acme--dev.sandbox.my'. Find it in Setup → My Domain.", "required": true, "default": null }, { "name": "suffix.one", "displayName": "Instance endpoint", "type": "string", "description": "The API version path added to your Salesforce address (e.g. /services/data/v62.0). Most accounts can keep the default; change it only if your org needs another version.", "required": true, "default": "/services/data/v62.0" } ], "optional": [] } } } ] }, { "slug": "calendly", "name": "Calendly", "logo": "https://logos.composio.dev/api/calendly", "description": "Calendly is an appointment scheduling tool that automates meeting invitations, availability checks, and reminders, helping individuals and teams avoid email back-and-forth", "category": "scheduling & booking", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CALENDLY_CANCEL_SCHEDULED_EVENT", "name": "Cancel scheduled event", "description": "Tool to cancel a scheduled Calendly event by creating a cancellation record. Use when you need to permanently cancel an existing, active event. The cancellation will trigger notifications to all invitees." }, { "slug": "CALENDLY_CREATE_EVENT_INVITEE", "name": "Create event invitee (Deprecated)", "description": "DEPRECATED: Use CALENDLY_POST_INVITEE instead. Tool to programmatically schedule Calendly meetings without UI redirects. Use when you need to book a meeting on behalf of an invitee via API. Requires a paid Calendly plan." }, { "slug": "CALENDLY_CREATE_EVENT_TYPE", "name": "Create Event Type", "description": "Tool to create a new one-on-one event type (kind: solo) in Calendly. Use when you need to programmatically create a new event type for scheduling meetings." }, { "slug": "CALENDLY_CREATE_ONE_OFF_EVENT_TYPE", "name": "Create One-Off Event Type", "description": "Creates a temporary Calendly one-off event type for unique meetings outside regular availability, requiring valid host/co-host URIs, a future date/range for `date_setting`, and a positive `duration`." }, { "slug": "CALENDLY_CREATE_SCHEDULING_LINK", "name": "Create scheduling link", "description": "Create a single-use scheduling link. Creates a scheduling link that can be used to book an event. The link allows invitees to schedule up to the specified maximum number of events. Once the limit is reached, the link becomes inactive." }, { "slug": "CALENDLY_CREATE_SHARE", "name": "Create share", "description": "Creates a customizable, one-time share link for a Calendly event type, allowing specific overrides to its settings (e.g., duration, availability, location) without altering the original event type." }, { "slug": "CALENDLY_CREATE_SINGLE_USE_SCHEDULING_LINK", "name": "Create single use scheduling link", "description": "Creates a one-time, single-use scheduling link for an active Calendly event type, expiring after one booking." }, { "slug": "CALENDLY_CREATE_WEBHOOKS", "name": "Create webhook subscription", "description": "Tool to create a webhook subscription for receiving Calendly event notifications. Use when you need to set up automated notifications for events like meeting bookings or cancellations. Organization scope triggers webhooks for all events organization-wide, while user/group scopes limit triggering to specific users or groups." }, { "slug": "CALENDLY_DELETE_INVITEE_DATA", "name": "Delete invitee data", "description": "Permanently removes all invitee data associated with the provided emails from past organization events, for data privacy compliance (requires Enterprise subscription; deletion may take up to one week)." }, { "slug": "CALENDLY_DELETE_INVITEE_NO_SHOW", "name": "Delete invitee no show", "description": "Deletes an Invitee No-Show record by its `uuid` to reverse an invitee's 'no-show' status; the `uuid` must refer to an existing record." }, { "slug": "CALENDLY_DELETE_ORGANIZATION_MEMBERSHIP", "name": "Delete organization membership", "description": "Tool to remove a user from a Calendly organization by membership UUID. Use when you need to revoke a user's access to an organization. Requires admin rights; organization owners cannot be removed." }, { "slug": "CALENDLY_DELETE_SCHEDULED_EVENT_DATA", "name": "Delete scheduled event data", "description": "For Enterprise users, initiates deletion of an organization's scheduled event data between a `start_time` and `end_time` (inclusive, where `start_time` must be <= `end_time`); actual data deletion may take up to 7 days to complete." }, { "slug": "CALENDLY_DELETE_WEBHOOK_SUBSCRIPTION", "name": "Delete webhook subscription", "description": "Deletes an existing webhook subscription to stop Calendly sending event notifications to its registered callback URL; this operation is idempotent." }, { "slug": "CALENDLY_GET_CURRENT_USER", "name": "Get current user (Deprecated)", "description": "DEPRECATED: Use CALENDLY_GET_USER instead. Retrieves detailed information about the currently authenticated Calendly user." }, { "slug": "CALENDLY_GET_EVENT", "name": "Get event", "description": "Use to retrieve a specific Calendly scheduled event by its UUID, provided the event exists in the user's Calendly account." }, { "slug": "CALENDLY_GET_EVENT_INVITEE", "name": "Get event invitee", "description": "Retrieves detailed information about a specific invitee of a scheduled event, using their unique UUIDs." }, { "slug": "CALENDLY_GET_EVENT_TYPE", "name": "Get event type", "description": "Retrieves details for a specific Calendly event type, identified by its UUID, which must be valid and correspond to an existing event type." }, { "slug": "CALENDLY_GET_EVENT_TYPE_AVAILABILITY", "name": "Get event type availability", "description": "Tool to retrieve availability schedules configured for a specific Calendly event type. Use when you need to get the availability rules including day-of-week schedules and date-specific overrides." }, { "slug": "CALENDLY_GET_GROUP", "name": "Get group", "description": "Retrieves all attributes of a specific Calendly group by its UUID; the group must exist." }, { "slug": "CALENDLY_GET_GROUP_RELATIONSHIP", "name": "Get group relationship", "description": "Retrieves a specific Calendly group relationship by its valid and existing UUID, providing details on user-group associations and membership." }, { "slug": "CALENDLY_GET_INVITEE_NO_SHOW", "name": "Get invitee no show", "description": "Retrieves details for a specific Invitee No Show record by its UUID; an Invitee No Show is marked when an invitee does not attend a scheduled event." }, { "slug": "CALENDLY_GET_ORGANIZATION", "name": "Get organization", "description": "Tool to retrieve information about a specific Calendly organization. Use when you need to get organization details such as name, slug, or timestamps." }, { "slug": "CALENDLY_GET_ORGANIZATION_INVITATION", "name": "Get organization invitation", "description": "Retrieves a specific Calendly organization invitation using its UUID and the parent organization's UUID." }, { "slug": "CALENDLY_GET_ORGANIZATION_MEMBERSHIP", "name": "Get organization membership", "description": "Retrieves a specific Calendly organization membership by its UUID, returning all its attributes." }, { "slug": "CALENDLY_GET_ROUTING_FORM", "name": "Get routing form", "description": "Retrieves a specific routing form by its UUID, providing its configuration details including questions and routing logic." }, { "slug": "CALENDLY_GET_ROUTING_FORM_SUBMISSION", "name": "Get routing form submission", "description": "Tool to retrieve details about a specific routing form submission by its UUID. Use when you need submission details including questions, answers, and routing results." }, { "slug": "CALENDLY_GET_SAMPLE_WEBHOOK_DATA", "name": "Get sample webhook data", "description": "Tool to retrieve sample webhook payload data for testing webhook subscriptions. Use when you need to verify webhook setup and understand the data structure before creating actual webhook subscriptions." }, { "slug": "CALENDLY_GET_USER", "name": "Get user", "description": "Retrieves comprehensive details for an existing Calendly user." }, { "slug": "CALENDLY_GET_USER_AVAILABILITY_SCHEDULE", "name": "Get user availability schedule", "description": "Retrieves an existing user availability schedule by its UUID; this schedule defines the user's default hours of availability." }, { "slug": "CALENDLY_GET_WEBHOOK_SUBSCRIPTION", "name": "Get webhook subscription", "description": "Retrieves the details of an existing webhook subscription, identified by its UUID, including its callback URL, subscribed events, scope, and state." }, { "slug": "CALENDLY_INVITEE_NO_SHOW", "name": "Mark invitee as no-show", "description": "Tool to mark an invitee as a no-show for a scheduled event. Use when an invitee fails to attend their scheduled meeting and you need to record their absence in Calendly." }, { "slug": "CALENDLY_LIST_ACTIVITY_LOG_ENTRIES", "name": "List activity log entries", "description": "Retrieves a list of activity log entries for a specified Calendly organization (requires an active Enterprise subscription), supporting filtering, sorting, and pagination." }, { "slug": "CALENDLY_LIST_EVENT_INVITEES", "name": "List event invitees", "description": "Retrieves a list of invitees for a specified Calendly event UUID, with options to filter by status or email, and sort by creation time." }, { "slug": "CALENDLY_LIST_EVENTS", "name": "List events (Deprecated)", "description": "DEPRECATED: Use CALENDLY_LIST_SCHEDULED_EVENTS instead. Retrieves a list of scheduled Calendly events. Exactly one of `user`, `organization`, or `group` must be provided to scope the query. The `invitee_email` parameter is a filter and cannot be used as a scope. Admin rights may be needed when filtering by `organization` or `group`." }, { "slug": "CALENDLY_LIST_EVENT_TYPE_AVAILABLE_TIMES", "name": "List event type available times", "description": "Fetches available time slots for a Calendly event type within a specified time range; results are not paginated." }, { "slug": "CALENDLY_LIST_EVENT_TYPE_MEMBERSHIPS", "name": "List event type hosts", "description": "Tool to retrieve a list of event type hosts (memberships) for a specific event type. Use when you need to see which users are configured as hosts for an event type." }, { "slug": "CALENDLY_LIST_EVENT_TYPES", "name": "List Event Types", "description": "Tool to list all Event Types associated with a specified User or Organization. Use when you need to retrieve event types for a user or organization. Use scheduling_url from results directly; do not manually construct event type URLs." }, { "slug": "CALENDLY_LIST_GROUP_RELATIONSHIPS", "name": "List group relationships", "description": "Retrieves a list of group relationships defining an owner's role (e.g., member, admin) within a group; an owner can have one membership per group but multiple admin roles across different groups." }, { "slug": "CALENDLY_LIST_GROUPS", "name": "List groups", "description": "Returns a list of groups for a specified Calendly organization URI, supporting pagination." }, { "slug": "CALENDLY_LIST_ORGANIZATION_INVITATIONS", "name": "List organization invitations", "description": "Retrieves a list of invitations for a specific organization, identified by its UUID." }, { "slug": "CALENDLY_LIST_ORGANIZATION_MEMBERSHIPS", "name": "List organization memberships", "description": "Retrieves a list of organization memberships." }, { "slug": "CALENDLY_LIST_OUTGOING_COMMUNICATIONS", "name": "List outgoing communications", "description": "Retrieves a list of outgoing SMS communications for a specified organization; requires an Enterprise subscription and if filtering by creation date, both `min_created_at` and `max_created_at` must be provided to form a valid range." }, { "slug": "CALENDLY_LIST_ROUTING_FORMS", "name": "List routing forms", "description": "Retrieves routing forms for a specified organization; routing forms are questionnaires used to direct invitees to appropriate booking pages or external URLs." }, { "slug": "CALENDLY_LIST_ROUTING_FORM_SUBMISSIONS", "name": "List routing form submissions", "description": "Tool to list all submissions associated with a specific routing form. Returns questions, answers, routing results, and tracking data for each submission. Use this action when you need to retrieve multiple routing form submissions for analysis or processing. To fetch details of a single submission, use GetRoutingFormSubmission instead." }, { "slug": "CALENDLY_LIST_SCHEDULED_EVENTS", "name": "List scheduled events", "description": "Tool to retrieve a list of scheduled Calendly events. Use when you need to view events for a specific user, organization, or group. Requires exactly one of user, organization, or group parameter to scope the query." }, { "slug": "CALENDLY_LIST_USER_AVAILABILITY_SCHEDULES", "name": "List user availability schedules", "description": "Retrieves all availability schedules for the specified Calendly user." }, { "slug": "CALENDLY_LIST_USER_BUSY_TIMES", "name": "List user busy times", "description": "Fetches a user's busy time intervals (internal and external calendar events) in ascending order for a period up to 7 days; keyset pagination is not supported." }, { "slug": "CALENDLY_LIST_USER_LOCATIONS", "name": "List User Meeting Locations", "description": "Tool to retrieve configured meeting location information for a given Calendly user. Use when you need to see all available location options configured by a user for their meetings." }, { "slug": "CALENDLY_LIST_USER_S_EVENT_TYPES", "name": "List user event types (Deprecated)", "description": "DEPRECATED: Use CALENDLY_LIST_EVENT_TYPES instead. Retrieves event types for a user or organization; requires either the `user` or `organization` URI." }, { "slug": "CALENDLY_LIST_WEBHOOK_SUBSCRIPTIONS", "name": "List webhook subscriptions", "description": "Retrieves webhook subscriptions for a Calendly organization; `scope` determines if `user` or `group` URI is also required for filtering." }, { "slug": "CALENDLY_ORGANIZATION_INVITATION", "name": "Invite user to organization", "description": "Tool to invite a user to a Calendly organization via email. Use when you need to send an organization invitation to a new user. Requires organization owner or admin privileges." }, { "slug": "CALENDLY_POST_INVITEE", "name": "Create Event Invitee", "description": "Tool to create a new Event Invitee with standard notifications, calendar invites, reschedules, and workflows. Use when programmatically scheduling meetings via API. Requires paid Calendly plan (Standard+)." }, { "slug": "CALENDLY_REMOVE_USER_FROM_ORGANIZATION", "name": "Remove user from organization", "description": "Removes a user (who is not an owner) from an organization by their membership UUID, requiring administrative privileges." }, { "slug": "CALENDLY_REVOKE_USER_S_ORGANIZATION_INVITATION", "name": "Revoke a user's organization invitation", "description": "Revokes a pending and revokable (not yet accepted or expired) organization invitation using its UUID and the organization's UUID, rendering the invitation link invalid." }, { "slug": "CALENDLY_UPDATE_EVENT_TYPE", "name": "Update Event Type", "description": "Tool to update an existing one-on-one event type (kind: solo) in Calendly. Use when you need to modify event type settings such as name, duration, location, or description. NOTE: Currently only supports one-on-one event types." }, { "slug": "CALENDLY_UPDATE_EVENT_TYPE_AVAILABILITY", "name": "Update Event Type Availability", "description": "Tool to update an event type availability schedule in Calendly. Use when you need to change the timezone or availability rules for an event type. WARNING: Updating rules will overwrite all existing rules - retrieve existing rules first using GET /event_type_availability_schedules." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "calendly_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "trello", "name": "Trello", "logo": "https://logos.composio.dev/api/trello", "description": "A web-based, kanban-style, list-making application.", "category": "project management", "authSchemes": [ "OAUTH1" ], "toolCount": 329, "triggerCount": 5, "version": "20260703_00", "tools": [ { "slug": "TRELLO_ADD_BOARDS", "name": "Add board", "description": "Creates a new Trello board; the 'name' parameter is required for creation, and various preferences can be customized or cloned from a source board." }, { "slug": "TRELLO_ADD_BOARDS_LISTS_BY_ID_BOARD", "name": "Add new list to board (Deprecated)", "description": "DEPRECATED: Use TRELLO_LIST_CREATE_LIST instead. Creates a new, empty list on a specified, existing Trello board, typically used as a column or category for organizing cards." }, { "slug": "TRELLO_ADD_CARDS", "name": "Add card", "description": "Creates a new card in a Trello list. Only `idList` is required; `idBoard` is optional as the API determines the board from the list." }, { "slug": "TRELLO_ADD_CARDS_ACTIONS_COMMENTS_BY_ID_CARD", "name": "Add comment to card", "description": "Adds a new text comment, which can include @mentions, to a Trello card specified by its ID; file attachments are not supported via this action." }, { "slug": "TRELLO_ADD_CARDS_ATTACHMENTS_BY_ID_CARD", "name": "Add attachment to card", "description": "Adds an attachment to a Trello card by `idCard`; specify either a `file` to upload or a `url` to link, but not both." }, { "slug": "TRELLO_ADD_CARDS_CHECKLISTS_BY_ID_CARD", "name": "Add checklist to card via id", "description": "Adds a checklist to a Trello card: use `value` to add a specific existing checklist, `idChecklistSource` to create a new checklist by copying an existing one (optionally using `name` for the new checklist's name), or `name` to create a new empty checklist from scratch." }, { "slug": "TRELLO_ADD_CARDS_ID_LABELS_BY_ID_CARD", "name": "Add label to card", "description": "Adds an existing label to a Trello card; `idCard` identifies the card and `value` is the ID of the label to add. Both card and label must already exist." }, { "slug": "TRELLO_ADD_CARD_VOTE", "name": "Add member vote to card", "description": "Casts a 'yes' vote for a specified member on a Trello card; a member can only vote once per card." }, { "slug": "TRELLO_ADD_CHECKLIST_ITEM", "name": "Add check item to checklist (Deprecated)", "description": "DEPRECATED: Use TRELLO_ADD_CHECKLISTS_CHECK_ITEMS_BY_ID_CHECKLIST instead. Adds a new check item to an existing checklist on a specific Trello card." }, { "slug": "TRELLO_ADD_CHECKLISTS", "name": "Add checklist to card", "description": "Creates a new checklist on a Trello card, either by name or by copying from `idChecklistSource`, targeting an `idCard` or `idBoard`; this action creates only the checklist structure, not its items." }, { "slug": "TRELLO_ADD_CHECKLISTS_CHECK_ITEMS_BY_ID_CHECKLIST", "name": "Add check item to checklist", "description": "Adds a new check item to a specified Trello checklist; this action does not update existing check items." }, { "slug": "TRELLO_ADD_LABELS", "name": "Create label on board", "description": "Creates a new label with a specified name (required) and color on a Trello board (idBoard required); this action defines the label but does not apply it to cards." }, { "slug": "TRELLO_ADD_LISTS", "name": "Add new list to board", "description": "Creates a new list on a specified Trello board, with options to copy an existing list, set its position, initial state (archived/subscribed), and does not modify existing lists or move cards." }, { "slug": "TRELLO_ADD_LISTS_CARDS_BY_ID_LIST", "name": "Add card to list (Deprecated)", "description": "DEPRECATED: Use TRELLO_CARD_CREATE_AND_UPDATE instead. Creates a new card in a Trello list, which must be specified by an existing and accessible `idList`." }, { "slug": "TRELLO_ADD_MEMBER_TO_CARD", "name": "Add card member by id", "description": "Assigns a Trello member to a specific Trello card by card ID (or short link) and member ID." }, { "slug": "TRELLO_ARCHIVE_ALL_LIST_CARDS", "name": "Archive all cards in list", "description": "Archives all cards in a Trello list; while cards can be restored via the Trello interface, this action does not provide an unarchive function." }, { "slug": "TRELLO_CONVERT_CHECKLIST_ITEM_TO_CARD", "name": "Convert checklist item to card", "description": "Converts a checklist item into a new card (useful for promoting a subtask), which inherits some properties from the item; this is irreversible via the API and offers no customization during conversion." }, { "slug": "TRELLO_CREATE_ACTION_REACTION", "name": "Add reaction to action", "description": "Tool to add a new emoji reaction to a Trello action. Use when acknowledging comments or actions with reactions." }, { "slug": "TRELLO_CREATE_BOARD_LABEL", "name": "Add a label to a board", "description": "Creates a new label on an existing Trello board." }, { "slug": "TRELLO_CREATE_CARD_LABEL", "name": "Add labels to card", "description": "Adds a label to an existing Trello card (specified by `idCard`), defining the label by `name` and either `color` or the overriding `value` (which specifies color by name); a new label is created on the board if a matching one (by name/color combination) doesn't already exist." }, { "slug": "TRELLO_CREATE_CARD_STICKER", "name": "Add sticker to card", "description": "Adds a sticker to a Trello card, using a default sticker name (e.g., 'taco-cool') or a custom sticker ID for the image, and allows specifying its position, rotation, and z-index." }, { "slug": "TRELLO_CREATE_MEMBER_BOARD_BACKGROUND", "name": "Add member board background", "description": "Adds a new custom board background, from an image file, to a specified Trello member's collection, making it available for their use but not applying it to any board." }, { "slug": "TRELLO_CREATE_MEMBER_BOARD_STAR", "name": "Add board star to member", "description": "Stars a Trello board for a member (does not remove or list stars), optionally at a specified position; the board must exist and be accessible to the member." }, { "slug": "TRELLO_CREATE_MEMBER_CUSTOM_BOARD_BACKGROUND", "name": "Add custom board background for a member", "description": "Adds a new custom board background for a specified Trello member; either a `file` (image upload) or a `url` (external image URL) must be provided." }, { "slug": "TRELLO_CREATE_MEMBER_CUSTOM_EMOJI", "name": "Add custom emoji for a member", "description": "Adds a new custom emoji using an image file and a unique name to a Trello member's account; this emoji is member-specific and not shared across the workspace." }, { "slug": "TRELLO_CREATE_MEMBER_CUSTOM_STICKER", "name": "Add custom sticker for member", "description": "Uploads a custom sticker to a Trello member's collection, if the member's plan allows custom stickers and respects associated limits." }, { "slug": "TRELLO_CREATE_MEMBER_SAVED_SEARCH", "name": "Add saved search for member", "description": "Creates a new saved search with a specified name, position, and query for a Trello member." }, { "slug": "TRELLO_CREATE_ORGANIZATION", "name": "Create organization", "description": "Creates a new Trello organization (Workspace) with a `displayName` (required), and optionally a description, website, and various preferences (e.g., board visibility, member invitation restrictions)." }, { "slug": "TRELLO_CREATE_SESSION", "name": "Create new session", "description": "Creates or updates a Trello user session, optionally linking it to a specific board for status updates and setting the user's activity status." }, { "slug": "TRELLO_CREATE_WEBHOOK", "name": "Create webhook", "description": "Tool to create a new Trello webhook for monitoring changes to a board, card, list, or member. Use when you need to set up real-time notifications for model changes. The callback URL must be publicly accessible and respond to HEAD requests for validation." }, { "slug": "TRELLO_DELETE_ACTION", "name": "Delete action by id", "description": "Deletes a specific Trello action, such as a `commentCard`, by its ID; this is an irreversible operation and only applies to deletable action types, as many (especially system-generated) actions cannot be deleted." }, { "slug": "TRELLO_DELETE_ACTION_REACTION", "name": "Delete action reaction", "description": "Permanently deletes a specified reaction from a Trello action. Use when you need to remove a reaction that was previously added to an action." }, { "slug": "TRELLO_DELETE_BOARD", "name": "Delete board by id", "description": "Permanently deletes a Trello board by its ID. This is an irreversible action that removes the board and all its contents." }, { "slug": "TRELLO_DELETE_CARD_ATTACHMENT", "name": "Delete card attachment", "description": "Permanently removes a specified attachment from a Trello card; this action is irreversible and requires that both the card and the attachment exist." }, { "slug": "TRELLO_DELETE_CARD_CHECKLIST", "name": "Delete card checklist", "description": "Permanently deletes a specific checklist from a Trello card." }, { "slug": "TRELLO_DELETE_CARD_COMMENT", "name": "Delete card action comment", "description": "Deletes a specific comment action (identified by `idAction`) from a Trello card (identified by `idCard`); this operation is irreversible and only affects comments." }, { "slug": "TRELLO_DELETE_CARDS_BY_ID_CARD", "name": "Delete card by ID", "description": "Permanently deletes an archived Trello card specified by its `idCard`." }, { "slug": "TRELLO_DELETE_CARDS_MEMBERS_VOTED_BY_ID_CARD_BY_ID_MEMBER", "name": "Delete member vote from card", "description": "Removes a member's vote from a Trello card. The operation requires the member to have already voted on the card; attempting to delete a non-existent vote returns a 400 error. Voting must be enabled on the board." }, { "slug": "TRELLO_DELETE_CARDS_STICKERS_BY_ID_CARD_BY_ID_STICKER", "name": "Delete card sticker", "description": "Permanently removes a specific sticker (identified by `idSticker`) from a Trello card (identified by `idCard`)." }, { "slug": "TRELLO_DELETE_CHECKLIST_ITEM", "name": "Delete checklist item", "description": "Permanently deletes a specific check item from a checklist on a Trello card; this operation is irreversible and only affects the specified item, not the entire checklist." }, { "slug": "TRELLO_DELETE_CHECKLISTS_BY_ID_CHECKLIST", "name": "Delete checklist by id", "description": "Permanently and irreversibly deletes a Trello checklist and all its items using the `idChecklist`." }, { "slug": "TRELLO_DELETE_LABELS_BY_ID_LABEL", "name": "Delete label by id", "description": "Permanently deletes an existing label from a Trello board by its ID; this operation is irreversible via the API." }, { "slug": "TRELLO_DELETE_MEMBER_BOARD_BACKGROUND", "name": "Delete member board background", "description": "Permanently deletes a specific custom board background belonging to the specified Trello member; this operation cannot be undone." }, { "slug": "TRELLO_DELETE_MEMBER_CUSTOM_STICKER", "name": "Delete member custom sticker", "description": "Deletes a custom sticker from a Trello member's collection; this permanent action is only available for custom stickers within a Trello Workspace on a paid plan." }, { "slug": "TRELLO_DELETE_MEMBER_SAVED_SEARCH", "name": "Delete member saved search", "description": "Permanently deletes a specific saved search for a Trello member, used when the search is outdated or no longer needed." }, { "slug": "TRELLO_DELETE_ORGANIZATIONS_BY_ID_ORG", "name": "Delete organization by id", "description": "Permanently deletes a Trello organization and all its associated data; this action is irreversible and requires caution." }, { "slug": "TRELLO_DELETE_ORGANIZATIONS_LOGO_BY_ID_ORG", "name": "Delete organization logo by id", "description": "Deletes an existing Trello organization's custom logo, restoring its default and leaving other settings unchanged; if no custom logo exists, it succeeds without effect." }, { "slug": "TRELLO_DELETE_ORGANIZATIONS_MEMBERS_BY_ID_ORG_BY_ID_MEMBER", "name": "Delete organization member by IDs", "description": "Permanently removes a member from a Trello organization by ID, revoking all access to its content; re-invitation is required for renewed access, and this does not delete the member's Trello account." }, { "slug": "TRELLO_DELETE_ORG_ASSOCIATED_DOMAIN", "name": "Delete org associated domain", "description": "Irreversibly deletes an associated email domain from a Trello organization's preferences to update email domain restrictions for workspace membership; the domain must be currently associated for removal." }, { "slug": "TRELLO_DELETE_ORG_INVITE_RESTRICT", "name": "Delete org invite restriction", "description": "Removes a previously set email address invitation restriction from a Trello organization. This is an Enterprise-only feature that requires admin privileges on the organization." }, { "slug": "TRELLO_DELETE_TOKENS_BY_TOKEN", "name": "Delete token", "description": "Deletes a specific Trello API token, identified by its value in the path, permanently revoking its access; this action is irreversible and used to invalidate compromised or unneeded tokens." }, { "slug": "TRELLO_DELETE_TOKENS_WEBHOOKS_BY_TOKEN_BY_ID_WEBHOOK", "name": "Delete token webhook by id", "description": "Deletes an existing webhook, specified by its `idWebhook`, thereby stopping its notifications." }, { "slug": "TRELLO_DELETE_WEBHOOKS_BY_ID_WEBHOOK", "name": "Delete webhook by id", "description": "Permanently deletes an existing Trello webhook by its `idWebhook`, an irreversible action that stops future notifications." }, { "slug": "TRELLO_DISABLE_BOARD_POWER_UP", "name": "Delete Power-Up from board", "description": "Disables a Power-Up on a Trello board using the board's ID and the plugin ID of a Power-Up currently enabled on that board; this action is irreversible and may result in data loss." }, { "slug": "TRELLO_DISMISS_MEMBER_MESSAGE", "name": "Dismiss member message", "description": "Dismisses a one-time message for a Trello member, adding it to their dismissed messages list. This endpoint marks a specific one-time message (notification, banner, or prompt) as dismissed for the specified member. Once dismissed, the message will not be shown to the user again. Common use cases include dismissing onboarding messages, feature announcements, or team-specific prompts. Requires write access to the member's account. Use 'me' as idMember for the authenticated user." }, { "slug": "TRELLO_ENABLE_BOARD_POWER_UP", "name": "Add board power-up", "description": "Enables the Power-Up specified by the 'value' parameter on the board; processes one Power-Up enablement per call." }, { "slug": "TRELLO_GENERATE_BOARD_CALENDAR_KEY", "name": "Generate board calendar key", "description": "Generates a new calendar key for the Trello board specified by `idBoard`, invalidating any previous key for that board." }, { "slug": "TRELLO_GENERATE_BOARD_EMAIL_KEY", "name": "Generate email key for board", "description": "Generates a new email key for the Trello board specified by idBoard to enable or reset adding cards via email; this invalidates any previously existing email key for the board." }, { "slug": "TRELLO_GET_ACTIONS_BOARD_BY_ID_ACTION", "name": "Get board by action id", "description": "Retrieves details for the Trello board associated with a specific action ID, returning board information only." }, { "slug": "TRELLO_GET_ACTIONS_BOARD_BY_ID_ACTION_BY_FIELD", "name": "Get action's board field", "description": "Retrieves a specified `field` from the Trello board associated with the provided Trello `idAction`." }, { "slug": "TRELLO_GET_ACTIONS_BY_ID_ACTION", "name": "Get action by ID", "description": "Retrieves detailed information about a specific Trello action by its ID." }, { "slug": "TRELLO_GET_ACTIONS_BY_ID_ACTION_BY_FIELD", "name": "Get action field by id", "description": "Retrieves the value of a specific field (e.g., 'data', 'date', 'type') from a Trello action using its unique ID." }, { "slug": "TRELLO_GET_ACTIONS_CARD_BY_ID_ACTION", "name": "Get card by action ID", "description": "Retrieves Trello card details for a given `idAction`, which must be an action specifically linked to a card; returns only card data, not action details." }, { "slug": "TRELLO_GET_ACTIONS_CARD_BY_ID_ACTION_BY_FIELD", "name": "Get action's card field", "description": "Retrieves a specific field from the Trello card associated with the given action ID." }, { "slug": "TRELLO_GET_ACTIONS_DISPLAY_BY_ID_ACTION", "name": "Get action display by ID", "description": "Retrieves a display-friendly representation of an existing and accessible Trello action for UI/report purposes, providing presentation-focused data instead of full raw details and without altering the action." }, { "slug": "TRELLO_GET_ACTIONS_ENTITIES_BY_ID_ACTION", "name": "Get action entities by id", "description": "Retrieves all entities (e.g., boards, lists, cards, members) associated with a specific, existing Trello action ID." }, { "slug": "TRELLO_GET_ACTIONS_LIST_BY_ID_ACTION", "name": "Get an action's list", "description": "Retrieves the Trello list associated with a specific Trello action ID, for actions linked to a list." }, { "slug": "TRELLO_GET_ACTIONS_LIST_BY_ID_ACTION_BY_FIELD", "name": "Get field of action's list", "description": "Retrieves a specific field of the list associated with a Trello action, returning only that single field's value." }, { "slug": "TRELLO_GET_ACTIONS_MEMBER_BY_ID_ACTION", "name": "Get action's member by id", "description": "Retrieves the Trello member who was the subject of an action (not the creator). This endpoint returns information about the member who was acted upon in actions like: - addMemberToCard: Returns the member who was added to a card - removeMemberFromCard: Returns the member who was removed from a card - addMemberToBoard: Returns the member who was added to a board Note: For actions that don't involve a member as a subject (e.g., createCard, createBoard), this endpoint returns 404. Use /actions/{idAction}/memberCreator to get the action's creator instead." }, { "slug": "TRELLO_GET_ACTIONS_MEMBER_BY_ID_ACTION_BY_FIELD", "name": "Get Action Subject Member Field", "description": "Retrieves a specific field of the member who was the subject of a Trello action. This is distinct from 'memberCreator' (who performed the action). Only works for actions that involve a member as the subject (e.g., addMemberToBoard, addMemberToCard, removeMemberFromCard). Returns a single field value for optimized data retrieval." }, { "slug": "TRELLO_GET_ACTIONS_MEMBER_CREATOR_BY_ID_ACTION", "name": "Fetch action member creator", "description": "Retrieves details about the Trello member who created the action with the given `idAction`." }, { "slug": "TRELLO_GET_ACTIONS_MEMBER_CREATOR_BY_ID_ACTION_BY_FIELD", "name": "Get action member creator field", "description": "Retrieves a specific field from the profile of the Trello member who created a given action. Use this to get targeted information like username, fullName, initials, avatarHash, or url from an action's creator." }, { "slug": "TRELLO_GET_ACTIONS_ORGANIZATION_BY_ID_ACTION", "name": "Fetch organization action by id", "description": "Fetches the organization details for a given Trello action, if the action has an associated organization." }, { "slug": "TRELLO_GET_ACTIONS_ORGANIZATION_BY_ID_ACTION_BY_FIELD", "name": "Get action's organization field", "description": "Retrieves the value of a specific `field` for the organization associated with a Trello `idAction`; use if the action has an organization and you need only that field (e.g., 'name', 'id', 'url')." }, { "slug": "TRELLO_GET_ACTIONS_REACTIONS_BY_ID", "name": "Get action's reaction by ID", "description": "Retrieves detailed information about a specific reaction on a Trello action. Use when you need to get the member and emoji details for a specific reaction by its ID." }, { "slug": "TRELLO_GET_ACTIONS_REACTIONS_BY_ID_ACTION", "name": "List action reactions", "description": "Tool to list reactions for a specific action. Use when you need to retrieve emoji reactions and the members who added them to an action." }, { "slug": "TRELLO_GET_BATCH", "name": "Get batch", "description": "Executes multiple Trello API GET requests in a single batch operation for efficient bulk data retrieval." }, { "slug": "TRELLO_GET_BOARDS_ACTIONS_BY_ID_BOARD", "name": "Get board actions by id", "description": "Retrieves actions (e.g., card creations, comments) for a Trello board by its ID, useful for activity tracking; the board must exist." }, { "slug": "TRELLO_GET_BOARDS_BOARD_PLUGINS_BY_ID", "name": "Get board Power-Ups", "description": "Tool to get the list of enabled Power-Ups on a Trello board. Use when you need to check which Power-Ups are currently active on a board." }, { "slug": "TRELLO_GET_BOARDS_BOARD_STARS_BY_ID_BOARD", "name": "Get board stars by board ID", "description": "Retrieves board stars (user-marked favorites) for a specified Trello board, where `idBoard` must be an existing board; use to list a user's starred boards or all stars on a particular board." }, { "slug": "TRELLO_GET_BOARDS_BY_ID_BOARD", "name": "Get board by id", "description": "Fetches comprehensive details for a specific Trello board by its ID; this is a read-only action." }, { "slug": "TRELLO_GET_BOARDS_BY_ID_BOARD_BY_FIELD", "name": "Get board field", "description": "Retrieves the value of a single, specified field from a Trello board." }, { "slug": "TRELLO_GET_BOARDS_CARDS_BY_ID_BOARD", "name": "Get cards by board ID", "description": "Retrieves cards from an existing Trello board, allowing filtering and customization of fields for cards, attachments, and members." }, { "slug": "TRELLO_GET_BOARDS_CARDS_BY_ID_BOARD_BY_FILTER", "name": "Get cards by filter from board", "description": "Retrieves cards from a specified Trello board, filtered by 'all' (all cards), 'closed' (archived only), 'open' (non-archived), or 'visible' (cards on non-archived lists)." }, { "slug": "TRELLO_GET_BOARDS_CARDS_BY_ID_BOARD_BY_ID_CARD", "name": "Get card from board", "description": "Retrieves details for a specific Trello card by its ID and its parent board's ID, with options to customize returned fields for the card and associated data like attachments, actions, members, and checklists." }, { "slug": "TRELLO_GET_BOARDS_CHECKLISTS_BY_ID_BOARD", "name": "Get board checklists", "description": "Retrieves checklists (primarily structure/metadata, not detailed item history) from a Trello board, with options to include associated card and check item details and to control which fields are returned for each entity." }, { "slug": "TRELLO_GET_BOARDS_CUSTOM_FIELDS", "name": "Get board custom fields", "description": "Tool to retrieve custom field definitions for a board. Use when you need to understand what custom fields are available on a board for metadata management." }, { "slug": "TRELLO_GET_BOARDS_DELTAS_BY_ID_BOARD", "name": "Retrieve board deltas", "description": "Retrieves recent changes (deltas) for a Trello board by its ID, allowing tracking of modifications since a specified update sequence number (`ixLastUpdate`)." }, { "slug": "TRELLO_GET_BOARDS_LABELS_BY_ID_BOARD", "name": "Get board labels by ID", "description": "Fetches labels for a specified Trello board, aiding in its organization or label management; this action does not detail per-card label usage." }, { "slug": "TRELLO_GET_BOARDS_LABELS_BY_ID_BOARD_BY_ID_LABEL", "name": "Get a board label", "description": "Fetches specified fields for a specific label on a Trello board; this read-only action does not return information about which cards the label is attached to." }, { "slug": "TRELLO_GET_BOARDS_LISTS_BY_ID_BOARD", "name": "Get board's lists", "description": "Retrieves lists from a specified Trello board, with options to filter lists and include card details." }, { "slug": "TRELLO_GET_BOARDS_LISTS_BY_ID_BOARD_BY_FILTER", "name": "Get board lists by filter (Deprecated)", "description": "DEPRECATED: Use TRELLO_BOARD_GET_LISTS_BY_ID_BOARD instead. Fetches lists by status from an accessible Trello board; card details for these lists require a separate call." }, { "slug": "TRELLO_GET_BOARDS_MEMBERS_BY_ID_BOARD", "name": "Get board members", "description": "Retrieves members of a Trello board, with options to filter the list and select specific member fields to return." }, { "slug": "TRELLO_GET_BOARDS_MEMBERS_CARDS_BY_ID_BOARD_BY_ID_MEMBER", "name": "Get member cards from board", "description": "Retrieves cards for a member on a board, with options to customize returned fields and related data; member must have board access." }, { "slug": "TRELLO_GET_BOARDS_MEMBERSHIPS_BY_ID_BOARD", "name": "List board memberships", "description": "Retrieves Trello board memberships (user roles and permissions) for auditing access or managing collaboration, returning only membership data and not other board content." }, { "slug": "TRELLO_GET_BOARDS_MEMBERSHIPS_BY_ID_BOARD_BY_ID_MEMBERSHIP", "name": "Get board membership", "description": "Retrieves a specific membership on a Trello board by its ID, optionally including member details." }, { "slug": "TRELLO_GET_BOARDS_MEMBERS_INVITED_BY_ID_BOARD", "name": "Get invited board members", "description": "Retrieves a list of members invited to a specific Trello board who have not yet joined." }, { "slug": "TRELLO_GET_BOARDS_MEMBERS_INVITED_BY_ID_BOARD_BY_FIELD", "name": "Retrieve invited board member field", "description": "Retrieves a specific field (e.g., email, username) for members who have been invited to a Trello board but have not yet joined." }, { "slug": "TRELLO_GET_BOARDS_MY_PREFS_BY_ID_BOARD", "name": "Get my board preferences", "description": "Retrieves the authenticated user's preferences for a specific Trello board." }, { "slug": "TRELLO_GET_BOARDS_ORGANIZATION_BY_ID_BOARD", "name": "Get board organization", "description": "Fetches information about the Trello Workspace (organization) to which a specific board belongs, returning details for the Workspace only, not the board itself or its content." }, { "slug": "TRELLO_GET_BOARDS_ORGANIZATION_BY_ID_BOARD_BY_FIELD", "name": "Get board organization field", "description": "Retrieves a specific field from the organization associated with a Trello board, useful for obtaining targeted details without fetching the entire organization object." }, { "slug": "TRELLO_GET_BOARDS_PLUGINS_BY_ID_BOARD", "name": "Get board's Power-Ups", "description": "Retrieves Power-Ups (plugins) enabled on a Trello board. Use to view board extensions and integrations." }, { "slug": "TRELLO_GET_CARDS_ACTIONS_BY_ID_CARD", "name": "Get card actions by id", "description": "Retrieves the history of actions (e.g., comments, updates, moves) for a Trello card specified by `idCard`; the card must exist and very old actions might not be available." }, { "slug": "TRELLO_GET_CARDS_ATTACHMENTS_BY_ID_CARD", "name": "Get card attachments", "description": "Retrieves attachments for a Trello card." }, { "slug": "TRELLO_GET_CARDS_ATTACHMENTS_BY_ID_CARD_BY_ID_ATTACHMENT", "name": "Get specific card attachment", "description": "Retrieves a specific attachment from a Trello card by card ID and attachment ID." }, { "slug": "TRELLO_GET_CARDS_BOARD_BY_ID_CARD", "name": "Get board by card id", "description": "Fetches detailed information about the Trello board to which a specific, existing, and accessible card belongs, using the card's ID or short link." }, { "slug": "TRELLO_GET_CARDS_BOARD_BY_ID_CARD_BY_FIELD", "name": "Get board field by card ID", "description": "Retrieves a specific field from the board associated with a given Trello card." }, { "slug": "TRELLO_GET_CARDS_BY_ID_CARD", "name": "Get card by ID", "description": "Retrieves a Trello card by its ID or shortlink, with options to include related data like actions, attachments, members, and checklists." }, { "slug": "TRELLO_GET_CARDS_BY_ID_CARD_BY_FIELD", "name": "Get card field by id", "description": "Retrieves the value of a single, specified field from a Trello card." }, { "slug": "TRELLO_GET_CARDS_CHECK_ITEM", "name": "Get card check item", "description": "Tool to retrieve a specific checkItem on a card. Use when you need to check the status or details of a specific item in a card's checklist." }, { "slug": "TRELLO_GET_CARDS_CHECK_ITEM_STATES_BY_ID_CARD", "name": "Get card check item states", "description": "Gets the completed checklist items on a Trello card. Note: This endpoint only returns check items marked as 'complete', not incomplete items. Returns item IDs and states, not full checklist or card details." }, { "slug": "TRELLO_GET_CARDS_CHECKLISTS_BY_ID_CARD", "name": "Get card checklists by ID", "description": "Retrieves all checklists, including their check items, for a Trello card specified by its ID or shortlink, if the card exists and is accessible." }, { "slug": "TRELLO_GET_CARDS_CUSTOM_FIELD_ITEMS_BY_ID_CARD", "name": "Get card custom field items", "description": "Tool to retrieve a card's customFieldItems array. Use when you need structured metadata from custom fields for automation. Must be called per card — no bulk endpoint exists. Returns an empty array if no custom fields are populated on the card. Power-Up data (e.g., time tracking) is not included in customFieldItems." }, { "slug": "TRELLO_GET_CARDS_LIST_BY_ID_CARD", "name": "Get list by card ID", "description": "Gets the Trello list to which a specified card (which must exist) belongs." }, { "slug": "TRELLO_GET_CARDS_LIST_BY_ID_CARD_BY_FIELD", "name": "Get card list field", "description": "Fetches a specific field from the Trello list that a given card belongs to." }, { "slug": "TRELLO_GET_CARDS_MEMBERS_BY_ID_CARD", "name": "Get card members", "description": "Retrieves members of a Trello card, identified by its ID or shortLink, allowing customization of which member fields are returned." }, { "slug": "TRELLO_GET_CARDS_MEMBERS_VOTED_BY_ID_CARD", "name": "Get card members voted", "description": "Fetches members who voted on a Trello card; requires an existing card ID, the Voting Power-Up to be active on the board, and members to have voted; returns member details, not vote counts." }, { "slug": "TRELLO_GET_CARDS_PLUGIN_DATA_BY_ID", "name": "Get card plugin data", "description": "Tool to retrieve any shared pluginData on a card. Use when you need to access data stored by Trello Power-Ups or plugins for a specific card. Note: Forge and OAuth2 apps cannot access this resource." }, { "slug": "TRELLO_GET_CARDS_STICKERS_BY_ID_CARD", "name": "Get card stickers by ID card", "description": "Retrieves all visual stickers (used for categorization, emphasis, or decoration) from an existing and accessible Trello card; this read-only action does not affect other card elements." }, { "slug": "TRELLO_GET_CARDS_STICKERS_BY_ID_CARD_BY_ID_STICKER", "name": "Get card sticker by id", "description": "Call this action to retrieve detailed properties (like image, position, rotation) of a specific sticker on a Trello card." }, { "slug": "TRELLO_GET_CHECK_ITEM_BY_ID", "name": "Get check item by id", "description": "Retrieves a specific check item from a checklist using the checklist ID and check item ID." }, { "slug": "TRELLO_GET_CHECKLISTS_BOARD_BY_ID_CHECKLIST", "name": "Get board for a checklist", "description": "Retrieves the Trello board a specific checklist belongs to, using the checklist ID." }, { "slug": "TRELLO_GET_CHECKLISTS_BOARD_BY_ID_CHECKLIST_BY_FIELD", "name": "Get checklist's board field", "description": "Retrieves a specified `field` (e.g., 'name', 'desc') from the Trello board associated with the given `idChecklist`." }, { "slug": "TRELLO_GET_CHECKLISTS_BY_ID_CHECKLIST", "name": "Get checklist by ID", "description": "Fetches a Trello checklist by its `idChecklist`, requiring the ID to refer to an existing checklist, and allows specifying which details of the checklist, its cards, and check items are returned." }, { "slug": "TRELLO_GET_CHECKLISTS_BY_ID_CHECKLIST_BY_FIELD", "name": "Get checklist field", "description": "Retrieves a specific field's value from a Trello checklist by its ID and the field name, without loading the entire checklist object or its items." }, { "slug": "TRELLO_GET_CHECKLISTS_CARDS_BY_ID_CHECKLIST", "name": "Get checklist cards", "description": "Retrieves cards associated with a specific, valid Trello checklist ID, allowing for filtering and customization of card and related entity data fields." }, { "slug": "TRELLO_GET_CHECKLISTS_CHECK_ITEMS_BY_ID_CHECKLIST", "name": "Get checklist items by ID", "description": "Retrieves all check items from a Trello checklist. Returns item details including name, position, completion state, and optionally due dates and assigned members." }, { "slug": "TRELLO_GET_LABELS_BOARD_BY_ID_LABEL", "name": "Get board by label ID", "description": "Retrieves the Trello board to which a given, valid Trello label ID (`idLabel`) belongs." }, { "slug": "TRELLO_GET_LABELS_BOARD_BY_ID_LABEL_BY_FIELD", "name": "Retrieve board field by label id", "description": "Retrieves a specified `field` (e.g., 'name', 'url') from the Trello board associated with a given `idLabel`." }, { "slug": "TRELLO_GET_LABELS_BY_ID_LABEL", "name": "Get label by id", "description": "Retrieves detailed information for a specific Trello label by its ID, allowing selection of specific fields to return." }, { "slug": "TRELLO_GET_LISTS_ACTIONS_BY_ID_LIST", "name": "Get list actions by ID", "description": "Retrieves actions (like card movements or comments, newest first) for a Trello list by its ID, to track history or create activity logs." }, { "slug": "TRELLO_GET_LISTS_BOARD_BY_ID_LIST", "name": "Get board by list ID", "description": "Retrieves the board to which a specific Trello list belongs." }, { "slug": "TRELLO_GET_LISTS_BOARD_BY_ID_LIST_BY_FIELD", "name": "Get board field by list ID", "description": "Retrieves a specific field (e.g., 'name', 'desc', 'url') from the Trello board associated with a given list ID. Useful when you only have a list ID and need board information without fetching the full board object." }, { "slug": "TRELLO_GET_LISTS_BY_ID_LIST", "name": "Get list by ID", "description": "Retrieves a Trello list by its unique ID, optionally including details for its cards and parent board." }, { "slug": "TRELLO_GET_LISTS_BY_ID_LIST_BY_FIELD", "name": "Get list field value", "description": "Fetches the value of a single, specified field from a Trello list." }, { "slug": "TRELLO_GET_LISTS_CARDS_BY_ID_LIST", "name": "Get cards in a list", "description": "Fetches cards from a Trello list by its ID, with options to filter and customize the returned card data." }, { "slug": "TRELLO_GET_MEMBER_BOARD_BACKGROUND", "name": "Get Member Board Background", "description": "Retrieves a specific custom board background for a Trello member by its ID. Note: Only custom backgrounds (uploaded by the user) can be retrieved; built-in defaults like 'blue' or 'gradient-ocean' are not accessible via this endpoint." }, { "slug": "TRELLO_GET_MEMBER_CUSTOM_BG", "name": "Get member custom board background", "description": "Retrieves metadata (e.g., brightness, URLs, tiling status) for a specific custom board background of a Trello member, not the image file itself." }, { "slug": "TRELLO_GET_MEMBER_CUSTOM_EMOJI", "name": "Get member custom emoji", "description": "Retrieves a specific custom emoji by its ID for a Trello member, requiring that both the member and emoji exist and are associated." }, { "slug": "TRELLO_GET_MEMBER_INVITED_ORG", "name": "Get field of member's invited organization", "description": "Get a specific field of an organization to which the member has a pending invitation; returns data only if such an invitation exists." }, { "slug": "TRELLO_GET_MEMBER_ORG_CARDS", "name": "Get organization member cards", "description": "Fetches all cards assigned to a specific member of a given Trello organization." }, { "slug": "TRELLO_GET_MEMBERS_ACTIONS_BY_ID_MEMBER", "name": "Get member actions by ID", "description": "Retrieves a list of actions for a specified Trello member, allowing filtering by type, date, models, and control over output format and fields." }, { "slug": "TRELLO_GET_MEMBERS_BOARD_BACKGROUNDS_BY_ID_MEMBER", "name": "Get member board backgrounds", "description": "Fetches the board backgrounds for a specified Trello member." }, { "slug": "TRELLO_GET_MEMBERS_BOARDS_BY_ID_MEMBER", "name": "Get member boards by id", "description": "Retrieves board-level details (not lists/cards) for Trello boards associated with a member ID or username, allowing extensive customization of the returned data." }, { "slug": "TRELLO_GET_MEMBERS_BOARDS_BY_ID_MEMBER_BY_FILTER", "name": "Get member boards with filter", "description": "Retrieves a list of boards for a specific Trello member, applying a filter such as 'open', 'starred', or 'all'." }, { "slug": "TRELLO_GET_MEMBERS_BOARDS_INVITED_BY_ID_MEMBER", "name": "Get member's invited boards", "description": "Retrieves Trello boards to which a specific member has been invited but has not yet joined." }, { "slug": "TRELLO_GET_MEMBERS_BOARDS_INVITED_BY_ID_MEMBER_BY_FIELD", "name": "Get member's invited board field", "description": "Retrieves a specific field from Trello boards to which a member has been invited but not yet joined; returns an empty result for no pending invitations." }, { "slug": "TRELLO_GET_MEMBERS_BOARD_STARS_BY_ID_MEMBER", "name": "Get member board stars", "description": "Fetches only the boards a specific Trello member has starred, identified by their ID or username." }, { "slug": "TRELLO_GET_MEMBERS_BOARD_STARS_BY_ID_MEMBER_BY_ID_BOARD_STAR", "name": "Get member board star", "description": "Retrieves detailed information about a specific board star (a Trello board marked as a favorite) for a given Trello member." }, { "slug": "TRELLO_GET_MEMBERS_BY_ID_MEMBER", "name": "Get member by ID", "description": "Fetches comprehensive information about a Trello member, specified by ID or username, including profile, activities, boards, cards, notifications, and organization affiliations, with customizable detail levels via filters and field parameters." }, { "slug": "TRELLO_GET_MEMBERS_BY_ID_MEMBER_BY_FIELD", "name": "Get member field by ID", "description": "Efficiently retrieves a specific field (e.g., fullName, username, bio) of a Trello member using their ID or username, without fetching the entire member profile." }, { "slug": "TRELLO_GET_MEMBERS_CARDS_BY_ID_MEMBER", "name": "Get cards by member ID", "description": "Retrieves cards for a Trello member, specified by ID or username, with options to filter cards and include related data like actions, attachments, and checklists." }, { "slug": "TRELLO_GET_MEMBERS_CUSTOM_BOARD_BACKGROUNDS_BY_ID_MEMBER", "name": "Retrieve member custom board backgrounds", "description": "Retrieves custom board backgrounds for a Trello member, who must exist, using their ID or username." }, { "slug": "TRELLO_GET_MEMBERS_CUSTOM_EMOJI_BY_ID_MEMBER", "name": "Get member custom emoji", "description": "Retrieves all custom (user-specific, non-standard) emojis that a specified Trello member has created or can access." }, { "slug": "TRELLO_GET_MEMBERS_CUSTOM_STICKERS_BY_ID_MEMBER", "name": "Get member custom stickers", "description": "Retrieves a member's custom stickers, which are unique personalized stickers created by them, distinct from standard Trello stickers." }, { "slug": "TRELLO_GET_MEMBERS_CUSTOM_STICKERS_BY_ID_MEMBER_BY_ID_STICKE", "name": "Get member custom sticker", "description": "Get member custom sticker" }, { "slug": "TRELLO_GET_MEMBERS_DELTAS_BY_ID_MEMBER", "name": "Get member deltas by ID", "description": "Retrieves a chronological list of all changes (deltas) made by a specific Trello member, including modifications to boards, lists, and cards, to audit activity or sync data." }, { "slug": "TRELLO_GET_MEMBERS_ME", "name": "Get authenticated member", "description": "Tool to retrieve information about the currently authenticated Trello member. Use when you need profile details, settings, or member metadata." }, { "slug": "TRELLO_GET_MEMBERS_ME_BOARDS", "name": "Get authenticated user's boards (Deprecated)", "description": "DEPRECATED: Use TRELLO_MEMBER_GET_BOARDS_BY_ID_MEMBER instead. Tool to retrieve all boards for the authenticated user (name, URL, and other metadata). Use when you need to list boards or get board IDs for further operations." }, { "slug": "TRELLO_GET_MEMBERS_NOTIFICATIONS_BY_ID_MEMBER", "name": "Get member notifications by id", "description": "Retrieves notifications for a Trello member, specified by their ID or username, with options for filtering and pagination." }, { "slug": "TRELLO_GET_MEMBERS_ORGANIZATIONS_BY_ID_MEMBER", "name": "Get a specified member's organizations", "description": "Fetches organizations a specific Trello member belongs to; the `idMember` must be an ID or username of an existing Trello member." }, { "slug": "TRELLO_GET_MEMBERS_ORGANIZATIONS_INVITED_BY_ID_MEMBER", "name": "Retrieve member s invited organizations", "description": "Retrieves organizations a Trello member has been invited to but has not yet accepted or declined." }, { "slug": "TRELLO_GET_MEMBERS_SAVED_SEARCHES_BY_ID_MEMBER", "name": "Get member saved searches", "description": "Retrieves all saved search queries for a Trello member; this action only retrieves saved searches and does not execute them." }, { "slug": "TRELLO_GET_MEMBERS_SAVED_SEARCHES_BY_ID_MEMBER_BY_ID_SAVED_S", "name": "Get Member Saved Search", "description": "Get Member Saved Search" }, { "slug": "TRELLO_GET_MEMBERS_TOKENS_BY_ID_MEMBER", "name": "Retrieve member tokens", "description": "Retrieves API token metadata for a Trello member. Returns information about all API tokens associated with the specified member, including token ID, creation date, expiration date, permissions, and the application that created each token. For security reasons, the actual token values are not included in the response. Note: You can only retrieve tokens for your own account (use 'me' or your own member ID). Attempting to access another member's tokens will fail." }, { "slug": "TRELLO_GET_NOTIFICATIONS_BOARD_BY_ID_NOTIFICATION", "name": "Get notification board by ID", "description": "Gets the Trello board associated with a given notification ID, returning only board data and allowing selection of specific board fields." }, { "slug": "TRELLO_GET_NOTIFICATIONS_BOARD_BY_ID_NOTIFICATION_BY_FIELD", "name": "Get notification's board field", "description": "Retrieves a specific field from the board associated with a Trello notification. This endpoint is useful when you only need a single piece of information about the board (like its name or URL) without fetching all board data. The notification must belong to the authenticated user and must be associated with a board (e.g., board invitations, card comments, or mentions on board-related items)." }, { "slug": "TRELLO_GET_NOTIFICATIONS_BY_ID_NOTIFICATION", "name": "Get notification by ID", "description": "Retrieves a specific Trello notification by its ID, optionally including related entities and specific fields for the notification and its related entities." }, { "slug": "TRELLO_GET_NOTIFICATIONS_BY_ID_NOTIFICATION_BY_FIELD", "name": "Get a notification field", "description": "Retrieves a specific field from a Trello notification." }, { "slug": "TRELLO_GET_NOTIFICATIONS_CARD_BY_ID_NOTIFICATION", "name": "Get notification's card", "description": "Retrieves the card associated with a Trello notification. Returns card details for card-related notifications (e.g., comments on cards, card assignments, due date reminders). The notification must exist and be linked to a card; notifications without card context (e.g., board-level notifications) will return an error." }, { "slug": "TRELLO_GET_NOTIFICATIONS_CARD_BY_ID_NOTIFICATION_BY_FIELD", "name": "Get notification card field", "description": "Retrieves a specific field of a Trello card, using the ID of a notification that is directly associated with that card." }, { "slug": "TRELLO_GET_NOTIFICATIONS_DISPLAY_BY_ID_NOTIFICATION", "name": "Get notification display by id", "description": "Retrieves the information needed to display an existing Trello notification, identified by its ID, without altering the notification or fetching its complete metadata." }, { "slug": "TRELLO_GET_NOTIFICATIONS_ENTITIES_BY_ID_NOTIFICATION", "name": "Get Notification Entities", "description": "Retrieves the entities (members, cards, boards, lists, etc.) associated with a specific Trello notification. Returns an ordered list of entity objects that together describe what happened in the notification. This is useful for building human-readable notification descriptions and activity feeds. For example, a 'mentionedOnCard' notification returns entities like: [member, \"mentioned you on\", card] which can be combined to display: \"John mentioned you on 'My Card'\" Note: Requires a valid notification ID that belongs to the authenticated user." }, { "slug": "TRELLO_GET_NOTIFICATIONS_LIST_BY_ID_NOTIFICATION", "name": "Retrieve notification list by id", "description": "Retrieves the Trello list associated with a specific notification ID, for notifications linked to a list (e.g., card creation or movement notifications)." }, { "slug": "TRELLO_GET_NOTIFICATIONS_LIST_BY_ID_NOTIFICATION_BY_FIELD", "name": "Get notification list field", "description": "Efficiently retrieves a single specified field from a Trello list linked to a notification, avoiding fetching the entire list." }, { "slug": "TRELLO_GET_NOTIFICATIONS_MEMBER_BY_ID_NOTIFICATION", "name": "Get notification member by id", "description": "Fetches details of the member (not the notification content itself) associated with a specific Trello notification ID." }, { "slug": "TRELLO_GET_NOTIFICATIONS_MEMBER_BY_ID_NOTIFICATION_BY_FIELD", "name": "Retrieve notification member field", "description": "Retrieves a specific field value of the Trello member associated with a notification. Use this to get individual member properties (like fullName, username, email, etc.) for the member who is the subject of a notification. This is useful when you only need a single piece of member information rather than the full member object." }, { "slug": "TRELLO_GET_NOTIFICATIONS_MEMBER_CREATOR_BY_ID_NOTIFICATION", "name": "Get member creator of a notification", "description": "Fetches the creator (member) of a Trello notification, identified by `idNotification`, returning only creator details and respecting Trello privacy settings and user permissions." }, { "slug": "TRELLO_GET_NOTIFICATIONS_MEMBER_CREATOR_BY_ID_NOTIFICATION_B", "name": "Get notification creator field", "description": "Get notification creator field" }, { "slug": "TRELLO_GET_NOTIFICATIONS_ORGANIZATION_BY_ID_NOTIFICATION", "name": "Get notification organization", "description": "Retrieves the Trello organization linked to a specific notification ID; returns organization details only, not the notification itself." }, { "slug": "TRELLO_GET_NOTIFICATIONS_ORGANIZATION_BY_ID_NOTIFICATION_BY_", "name": "Get notification organization field", "description": "Get notification organization field" }, { "slug": "TRELLO_GET_ORGANIZATIONS_ACTIONS_BY_ID_ORG", "name": "Get organization actions by ID", "description": "Retrieves a log of actions (e.g., card creations, list movements, comments) for a specified Trello organization, filterable by type, date range, and models; `idOrg` must be a valid organization ID/name, and `page` * `limit` must be < 1000." }, { "slug": "TRELLO_GET_ORGANIZATIONS_BOARDS_BY_ID_ORG", "name": "Get organization boards", "description": "Fetches boards for a Trello organization, specified by its ID or name, with options to filter and customize returned data." }, { "slug": "TRELLO_GET_ORGANIZATIONS_BY_ID_ORG", "name": "Get organization by ID", "description": "Retrieves detailed information about a specific Trello organization, including optional related resources like members, boards, and actions, using its ID or unique name." }, { "slug": "TRELLO_GET_ORGANIZATIONS_BY_ID_ORG_BY_FIELD", "name": "Get organization field by id", "description": "Retrieves the value of a single specified `field` for a Trello organization `idOrg`, ideal for efficiently fetching a specific piece of information without loading the full organization details." }, { "slug": "TRELLO_GET_ORGANIZATIONS_DELTAS_BY_ID_ORG", "name": "Get organization deltas by id", "description": "Retrieves a log of recent modifications (deltas) for a Trello organization, filterable by tags and supporting incremental fetching via an update index." }, { "slug": "TRELLO_GET_ORGANIZATIONS_MEMBERS_BY_ID_ORG", "name": "Retrieve organization members by id", "description": "Retrieves members of a Trello organization (specified by ID or name), with an option to include member activity if the organization is Premium." }, { "slug": "TRELLO_GET_ORGANIZATIONS_MEMBERSHIPS_BY_ID_ORG", "name": "Get organization memberships", "description": "Fetches organization-level memberships for a Trello organization, with options to filter members and include their details; does not return board-specific memberships." }, { "slug": "TRELLO_GET_ORGANIZATIONS_MEMBERS_INVITED_BY_ID_ORG", "name": "Get invited organization members", "description": "Retrieves members invited to a Trello organization who have not yet accepted their invitation, returning only data for pending invitations (not active or former members) and cannot send or modify invitations." }, { "slug": "TRELLO_GET_ORGANIZATIONS_MEMBERS_INVITED_BY_ID_ORG_BY_FIELD", "name": "Get organization invited member field", "description": "Retrieves a specific `field` (e.g., fullName, username, email, status) for members with pending invitations to the Trello organization specified by `idOrg`." }, { "slug": "TRELLO_GET_ORGANIZATIONS_PLUGIN_DATA", "name": "Get organization plugin data", "description": "Tool to get organization-scoped pluginData on a Trello Workspace. Use when you need to retrieve plugin configuration or data stored at the organization level." }, { "slug": "TRELLO_GET_ORGANIZATIONS_TAGS_BY_ID", "name": "Get organization tags", "description": "Lists all collections (tags) associated with a Trello organization. Use when you need to retrieve the organization's tags or collections." }, { "slug": "TRELLO_GET_ORG_MEMBERSHIP", "name": "Get organization membership", "description": "Retrieves a specific membership within a Trello organization, using their respective IDs, to ascertain the member's role, status, or permissions." }, { "slug": "TRELLO_GET_ORG_NEW_BILLABLE_GUESTS_BY_BOARD", "name": "Get new billable guests", "description": "Tool to check for new billable guests on a board within an organization. Use when you need to identify members who will incur billing charges." }, { "slug": "TRELLO_GET_SEARCH", "name": "Search Trello", "description": "Searches Trello content (e.g., boards, cards, members) within specified organizations using a query and customizable result fields. IMPORTANT LIMITATIONS: - Search indexing has a delay: newly created/updated cards may not appear for several minutes. - For exact name matching or time-sensitive lookups, use TRELLO_GET_LISTS_CARDS_BY_ID_LIST or TRELLO_GET_BOARDS_CARDS_BY_ID_BOARD to enumerate cards directly, then filter by name. - The search uses word tokenization: queries like 'Payment failed when sending tips' are split into individual terms ['Payment', 'failed', 'when', 'sending', 'tips']. Common words may be ignored. - Set partial='true' (default) for better recall with prefix matching on the last search term." }, { "slug": "TRELLO_GET_SEARCH_MEMBERS", "name": "Search for members", "description": "Searches Trello members by name, username, or email, optionally scoped to a board or organization." }, { "slug": "TRELLO_GET_SESSIONS_SOCKET", "name": "Get sessions socket", "description": "Retrieves WebSocket session connection information from Trello for real-time updates. IMPORTANT: This endpoint is an internal Trello endpoint that is NOT part of the public REST API. It requires WebSocket protocol and browser session authentication, making it inaccessible via standard API tokens. For real-time updates, use Trello Webhooks instead." }, { "slug": "TRELLO_GET_TOKENS_BY_TOKEN", "name": "Get token by token", "description": "Retrieves information about a specific Trello API token, allowing selection of specific fields and inclusion of webhook details." }, { "slug": "TRELLO_GET_TOKENS_BY_TOKEN_BY_FIELD", "name": "Get token field", "description": "Retrieves a specific field from a Trello token, provided the token is valid, has necessary permissions, and the field is a valid token field." }, { "slug": "TRELLO_GET_TOKENS_MEMBER_BY_TOKEN", "name": "Get token member", "description": "Retrieves information about the Trello member associated with the current API token, allowing customization of the returned fields." }, { "slug": "TRELLO_GET_TOKENS_MEMBER_BY_TOKEN_BY_FIELD", "name": "Retrieve token member field", "description": "Retrieves a specific field for the Trello member associated with the current API token. The token is automatically extracted from authentication, so only the field name needs to be specified." }, { "slug": "TRELLO_GET_TOKENS_WEBHOOKS_BY_TOKEN", "name": "Get webhooks for token", "description": "Retrieves all webhooks associated with a specific Trello API token." }, { "slug": "TRELLO_GET_TOKENS_WEBHOOKS_BY_TOKEN_BY_ID_WEBHOOK", "name": "Get token webhook by ID", "description": "Retrieves detailed information for a specific Trello webhook, identified by `idWebhook`, that is associated with the given `token`." }, { "slug": "TRELLO_GET_TYPES_BY_ID", "name": "Get type by id", "description": "Identifies the type of a Trello resource (member or organization) given its ID. Returns a 'type' field indicating whether the resource is a 'member' or 'organization'. Note: This endpoint only works for members and organizations; boards, cards, and lists are not supported." }, { "slug": "TRELLO_GET_WEBHOOKS_BY_ID_WEBHOOK", "name": "Get webhook by ID", "description": "Retrieves the full configuration and status for a specific Trello webhook by its unique ID; this action does not return past notification history." }, { "slug": "TRELLO_GET_WEBHOOKS_BY_ID_WEBHOOK_BY_FIELD", "name": "Get webhook field by id", "description": "Gets a specific field's value from a Trello webhook, avoiding retrieval of the full webhook object." }, { "slug": "TRELLO_LIST_EMOJI", "name": "List available emoji", "description": "Tool to list all available emoji in Trello. Use when you need to browse or search for emoji to use in cards, comments, or reactions." }, { "slug": "TRELLO_MARK_ALL_NOTIFICATIONS_READ", "name": "Mark all notifications as read", "description": "Marks all Trello notifications for the authenticated user as read across all boards; this action is permanent and cannot be undone." }, { "slug": "TRELLO_MARK_BOARD_AS_VIEWED", "name": "Mark board as viewed", "description": "Marks the Trello board specified by idBoard as viewed for the current user, exclusively updating its viewed status and potentially influencing its position in user-specific lists and notification settings." }, { "slug": "TRELLO_MARK_CARD_NOTIFICATIONS_READ", "name": "Mark card notifications read", "description": "Marks all notifications associated with a specific Trello card as read; this is irreversible and only affects read status, not deleting or modifying notifications." }, { "slug": "TRELLO_MOVE_ALL_LIST_CARDS", "name": "Move all cards in list to another list", "description": "Moves all cards from a source Trello list to a destination list on a specified board. This action is irreversible, moves (not copies) cards, and empties the source list without deleting it." }, { "slug": "TRELLO_REMOVE_BOARD_MEMBER", "name": "Delete member from board", "description": "Permanently removes a current member from a Trello board, revoking their access; this action is irreversible." }, { "slug": "TRELLO_REMOVE_BOARD_STAR", "name": "Delete member board star", "description": "Removes a specific starred board (identified by `idBoardStar`) from a Trello member's (identified by `idMember`) list of favorites; `idBoardStar` must be an existing star for that member." }, { "slug": "TRELLO_REMOVE_CARD_LABEL_BY_COLOR", "name": "Delete card label by color", "description": "Permanently removes a specific `color` label from an existing Trello card identified by `idCard`, if the card has that label; this only disassociates the label from the card, not deleting the label definition itself." }, { "slug": "TRELLO_REMOVE_LABEL_FROM_CARD", "name": "Remove label from card", "description": "Removes a specific label from a Trello card; the label itself is not deleted from the board, only its association with the card." }, { "slug": "TRELLO_REMOVE_MEMBER_FROM_CARD", "name": "Remove member from card", "description": "Removes a currently assigned member from a Trello card, affecting only the card's member list and not the member's board membership or overall permissions." }, { "slug": "TRELLO_REMOVE_MEMBER_FROM_ORG", "name": "Delete member from organization", "description": "Removes a member entirely from a specific Trello organization, including from all its boards and cards; this action is permanent and does not delete the member's Trello account." }, { "slug": "TRELLO_UPDATE_ACTIONS_BY_ID_ACTION", "name": "Update action text", "description": "Updates the `text` field of a specific Trello comment action, identified by `idAction`." }, { "slug": "TRELLO_UPDATE_ACTIONS_TEXT_BY_ID_ACTION", "name": "Update action text", "description": "Updates the text of an existing Trello action (e.g., a comment or card update) identified by `idAction`; this change only affects the action's text content." }, { "slug": "TRELLO_UPDATE_BOARD_MEMBERSHIP", "name": "Update board membership", "description": "Updates a user's role (e.g., admin, normal, observer) on a specific Trello board or retrieves updated member details, requiring existing board and membership IDs." }, { "slug": "TRELLO_UPDATE_BOARDS_BY_ID_BOARD", "name": "Update board by ID", "description": "Updates attributes (e.g., name, description, status, preferences) of an existing Trello board identified by `idBoard`." }, { "slug": "TRELLO_UPDATE_BOARDS_CLOSED_BY_ID_BOARD", "name": "Update board closed status", "description": "Archives (closes) an active Trello board or reopens a previously archived board." }, { "slug": "TRELLO_UPDATE_BOARDS_DESC_BY_ID_BOARD", "name": "Update board description", "description": "Updates the description of a specified Trello board; the update is immediate and does not affect other board elements like lists, cards, or membership." }, { "slug": "TRELLO_UPDATE_BOARD_SIDEBAR_ACTIONS_PREFS", "name": "Update board sidebar actions preferences", "description": "Updates the current user's preference for the visibility of sidebar board actions on a specific Trello board." }, { "slug": "TRELLO_UPDATE_BOARD_SIDEBAR_ACTIVITY_PREFS", "name": "Update my board sidebar activity preference", "description": "Sets the current user's preference for displaying or concealing the sidebar activity feed on an accessible Trello board; this change only affects the requesting user." }, { "slug": "TRELLO_UPDATE_BOARD_SIDEBAR_MEMBERS_PREF", "name": "Update board sidebar members preference", "description": "Updates the authenticated user's preference for showing or hiding members in a specific Trello board's sidebar, affecting only the current user's view." }, { "slug": "TRELLO_UPDATE_BOARDS_ID_ORGANIZATION_BY_ID_BOARD", "name": "Update board organization", "description": "Moves an existing Trello board to a specified, existing Trello organization, which can affect the board's visibility and member access." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_BLUE_BY_ID_BOARD", "name": "Update a board's blue label name", "description": "Sets the name of the blue label for a Trello board." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_GREEN_BY_ID_BOARD", "name": "Update board's green label name", "description": "Updates the name of the green label for a specified Trello board; this change is board-wide, affects all cards using this label, and does not change the label's color." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_ORANGE_BY_ID_BOARD", "name": "Update board label orange name", "description": "Updates the name of the orange label for a specified Trello board. This action finds the orange label on the specified board and updates its name. Only the label's name is affected, not its color or associated cards." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_PURPLE_BY_ID_BOARD", "name": "Update purple label name", "description": "Updates the name of the purple label on a Trello board. This action first retrieves the purple label from the board, then updates its name." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_RED_BY_ID_BOARD", "name": "Update red label name", "description": "Updates the name of the red label on a Trello board. This action first retrieves the red label from the board, then updates its name." }, { "slug": "TRELLO_UPDATE_BOARDS_LABEL_NAMES_YELLOW_BY_ID_BOARD", "name": "Update yellow label name on board", "description": "Updates the name of a board's yellow label; other colored labels are unaffected." }, { "slug": "TRELLO_UPDATE_BOARDS_MEMBERS_BY_ID_BOARD", "name": "Update board members", "description": "Adds or updates a member's role on a specific Trello board, typically requiring the member's `email` and a membership `type`." }, { "slug": "TRELLO_UPDATE_BOARDS_MEMBERS_BY_ID_BOARD_BY_ID_MEMBER", "name": "Update board member attributes", "description": "Updates a current member's email, full name, or role (admin, normal, or observer) on a specific Trello board; email and full name changes are board-specific and do not affect the member's global Trello profile." }, { "slug": "TRELLO_UPDATE_BOARDS_MY_PREFS_EMAIL_POSITION_BY_ID_BOARD", "name": "Modify board email position preference", "description": "Updates a Trello board's email position preference for new cards; this preference only affects new cards (not existing ones) and the board must exist." }, { "slug": "TRELLO_UPDATE_BOARDS_MY_PREFS_ID_EMAIL_LIST_BY_ID_BOARD", "name": "Update board email list preference", "description": "Sets the default Trello list where cards created via email will be added for a specific board." }, { "slug": "TRELLO_UPDATE_BOARDS_MY_PREFS_SHOW_LIST_GUIDE_BY_ID_BOARD", "name": "Update board show list guide preference", "description": "DEPRECATED: Updates the 'Show List Guide' preference for a specified Trello board. WARNING: This endpoint has been deprecated by Trello (CHANGE-2651, June 2025) and returns 'Cannot PUT' errors. The showListGuide preference is no longer actively used in Trello's application. While the preference still appears in GET /boards/{id}/myPrefs responses, the PUT endpoint for updating it has been removed from Trello's API. Consider using other board preference endpoints like showSidebar, showSidebarActivity, showSidebarMembers, or showSidebarBoardActions which remain functional." }, { "slug": "TRELLO_UPDATE_BOARDS_MY_PREFS_SHOW_SIDEBAR_BY_ID_BOARD", "name": "Update board sidebar visibility", "description": "Updates the authenticated user's personal preference for showing or hiding the sidebar on a specific Trello board." }, { "slug": "TRELLO_UPDATE_BOARDS_NAME_BY_ID_BOARD", "name": "Update board name", "description": "Updates the name of an existing Trello board, identified by `idBoard`; this change only affects the board's name, not its other attributes." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_BACKGROUND_BY_ID_BOARD", "name": "Update board background", "description": "Updates the cosmetic background preference for a specific Trello board; this change does not affect board functionality or content." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_CALENDAR_FEED_ENABLED_BY_ID_BOARD", "name": "Update board calendar feed enabled status", "description": "Updates the 'calendarFeedEnabled' preference for a Trello board, which, when enabled, makes board cards with due dates accessible via an iCalendar feed for external calendar integration." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_CARD_AGING_BY_ID_BOARD", "name": "Update board card aging preference", "description": "Updates the card aging visual preference to 'pirate' or 'regular' mode for a specified Trello board." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_CARD_COVERS_BY_ID_BOARD", "name": "Update board card cover preference", "description": "Updates the preference on a specific Trello board for whether existing card covers are displayed; this controls visibility only and does not add or remove the actual covers from cards." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_COMMENTS_BY_ID_BOARD", "name": "Update board comment preferences", "description": "Changes the permission settings for who can add comments to cards on a specific Trello board, without affecting other board settings." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_INVITATIONS_BY_ID_BOARD", "name": "Update board invitation preferences", "description": "Updates who can invite new members ('admins' or 'members') to a specific Trello board." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_PERMISSION_LEVEL_BY_ID_BOARD", "name": "Update board prefs permission level", "description": "Updates the permission level preference (e.g., 'private' or 'public') for a Trello board, identified by `idBoard`, if the board exists and the authenticated user possesses administrative permissions for it." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_SELF_JOIN_BY_ID_BOARD", "name": "Update board self-join preference", "description": "Updates a board's 'selfJoin' preference, determining if members can join freely or must be invited." }, { "slug": "TRELLO_UPDATE_BOARDS_PREFS_VOTING_BY_ID_BOARD", "name": "Update board voting preferences", "description": "Sets who can vote on cards for an existing Trello board, changing only the voting preferences for all cards on the board." }, { "slug": "TRELLO_UPDATE_BOARDS_SUBSCRIBED_BY_ID_BOARD", "name": "Update board subscription status", "description": "Updates the authenticated user's subscription status (subscribe/unsubscribe for notifications) for a specified Trello board, to which the user must have access." }, { "slug": "TRELLO_UPDATE_BOARD_STARS_POSITION_BY_ID_MEMBER_BY_ID_BOARD_", "name": "Update board star position", "description": "Update board star position" }, { "slug": "TRELLO_UPDATE_CARDS_ACTIONS_COMMENTS_BY_ID_CARD_BY_ID_ACTION", "name": "Update card comment", "description": "Updates the text for a given comment action (`idAction`) on a specified card (`idCard`), affecting only the text content." }, { "slug": "TRELLO_UPDATE_CARDS_BY_ID_CARD", "name": "Update card attributes", "description": "Updates an existing Trello card's attributes like name, description, due date, members, labels, position, or archives/unarchives it, attaches files, or changes its cover." }, { "slug": "TRELLO_UPDATE_CARDS_CHECKLIST_ITEMS_BY_ID_CARD_BY_ID_CHECKLI", "name": "Update check item on card", "description": "Update check item on card" }, { "slug": "TRELLO_UPDATE_CARDS_CHECKLIST_ITEMS_POSITION_BY_ID_CARD_BY_I", "name": "Update checklist item position", "description": "Update checklist item position" }, { "slug": "TRELLO_UPDATE_CARDS_CHECKLIST_ITEMS_STATE_BY_ID_CARD_BY_ID_C", "name": "Update card checklist item state", "description": "Update card checklist item state" }, { "slug": "TRELLO_UPDATE_CARDS_CHECKLISTS_CHECK_ITEMS_NAME_BY_ID_CARD_B", "name": "Update checklist item name in card", "description": "Update checklist item name in card" }, { "slug": "TRELLO_UPDATE_CARDS_CLOSED_BY_ID_CARD", "name": "Update card closed status by id", "description": "Updates the 'closed' status of an existing Trello card." }, { "slug": "TRELLO_UPDATE_CARDS_DESC_BY_ID_CARD", "name": "Update card description", "description": "Updates or clears the entire description of an existing Trello card; use an empty string for `value` to clear." }, { "slug": "TRELLO_UPDATE_CARDS_DUE_BY_ID_CARD", "name": "Update card due date", "description": "Updates the due date of a specific Trello card; the card identified by `idCard` must exist." }, { "slug": "TRELLO_UPDATE_CARDS_ID_ATTACHMENT_COVER_BY_ID_CARD", "name": "Update card attachment cover", "description": "Sets or removes the attachment cover for a Trello card. Provide a valid image attachment ID to set as cover, or an empty string ('') to remove the cover." }, { "slug": "TRELLO_UPDATE_CARDS_ID_BOARD_BY_ID_CARD", "name": "Move card to board", "description": "Moves a Trello card to a different board and, optionally, to a specific list on that new board, useful for reorganizing across projects or workflows." }, { "slug": "TRELLO_UPDATE_CARDS_ID_LIST_BY_ID_CARD", "name": "Update card list ID", "description": "Moves a Trello card to a different list on the same Trello board; this operation is idempotent and only updates the card's list ID." }, { "slug": "TRELLO_UPDATE_CARDS_ID_MEMBERS_BY_ID_CARD", "name": "Set card members", "description": "Updates (sets/replaces) the list of members assigned to a Trello card. Pass a single member ID to assign one member, or pass an empty value to remove all members. Note: This replaces the entire member list, not appends to it. The card must exist and the member(s) must have board permissions." }, { "slug": "TRELLO_UPDATE_CARDS_LABELS_BY_ID_CARD", "name": "Update card labels", "description": "Replaces all labels on a Trello card with labels matching the specified colors. Use comma-separated color names (e.g., 'red,blue,green') or 'all' to add all board labels. This action removes existing labels and sets only the specified ones." }, { "slug": "TRELLO_UPDATE_CARDS_NAME_BY_ID_CARD", "name": "Update card name", "description": "Updates the name of an existing Trello card, identified by its ID or shortLink; other card properties remain unchanged." }, { "slug": "TRELLO_UPDATE_CARDS_POS_BY_ID_CARD", "name": "Update card position", "description": "Updates a Trello card's position within its list to 'top', 'bottom', or a specified 1-indexed positive integer." }, { "slug": "TRELLO_UPDATE_CARDS_STICKERS_BY_ID_CARD_BY_ID_STICKER", "name": "Update card sticker attributes", "description": "Updates an existing sticker's image, position (top, left coordinates), or stacking order (zIndex) on a specific Trello card; the `rotate` parameter may not be supported by Trello." }, { "slug": "TRELLO_UPDATE_CARDS_SUBSCRIBED_BY_ID_CARD", "name": "Update card subscribed status", "description": "Updates the user's subscription status for a Trello card, if the card exists and is accessible." }, { "slug": "TRELLO_UPDATE_CHECKLIST_ITEM_BY_IDS", "name": "Update a checklist item", "description": "Updates a check item's attributes (name, position, state) or moves it to a different checklist on the same card, requiring the card ID, current checklist ID, and check item ID." }, { "slug": "TRELLO_UPDATE_CHECKLISTS_BY_ID_CHECKLIST", "name": "Update checklist", "description": "Updates an existing Trello checklist, allowing modification of its name, position, associated card/board, or copying items from a source checklist." }, { "slug": "TRELLO_UPDATE_CHECKLISTS_BY_ID_CHECKLIST_BY_FIELD", "name": "Update checklist field", "description": "Tool to update a specific field on a Trello checklist. Use when you need to update the name or position of a checklist." }, { "slug": "TRELLO_UPDATE_CHECKLISTS_ID_CARD_BY_ID_CHECKLIST", "name": "Move checklist to card", "description": "Moves a Trello checklist to a new parent card; the checklist and the destination card must exist." }, { "slug": "TRELLO_UPDATE_CHECKLISTS_NAME_BY_ID_CHECKLIST", "name": "Update checklist name", "description": "Updates the name of an existing Trello checklist." }, { "slug": "TRELLO_UPDATE_CHECKLISTS_POS_BY_ID_CHECKLIST", "name": "Update checklist position by id", "description": "Updates the position of an existing checklist on a Trello card." }, { "slug": "TRELLO_UPDATE_LABELS_BY_ID_LABEL", "name": "Update label attributes", "description": "Updates an existing Trello label's attributes (color, name, or associated board) by its ID; the label must exist." }, { "slug": "TRELLO_UPDATE_LABELS_BY_ID_LABEL_BY_FIELD", "name": "Update label field", "description": "Updates a specific field (color or name) on a Trello label by its ID. Use when you need to update only one field without affecting others." }, { "slug": "TRELLO_UPDATE_LABELS_COLOR_BY_ID_LABEL", "name": "Update label color", "description": "Updates the color of an existing Trello label, or removes its color if 'null' is specified for the value." }, { "slug": "TRELLO_UPDATE_LABELS_NAME_BY_ID_LABEL", "name": "Update label name", "description": "Updates the name of an existing Trello label, identified by `idLabel`; an empty string for `value` clears the label's name but does not delete the label." }, { "slug": "TRELLO_UPDATE_LISTS_BY_ID_LIST", "name": "Update list attributes", "description": "Updates attributes of an existing Trello list, such as name, position, archive status, board, or copies cards from another list, provided the list `idList` exists." }, { "slug": "TRELLO_UPDATE_LISTS_CLOSED_BY_ID_LIST", "name": "Update lists closed status", "description": "Updates whether an existing Trello list is closed (archived); a closed list is hidden from the board view but not deleted and can be re-opened." }, { "slug": "TRELLO_UPDATE_LISTS_ID_BOARD_BY_ID_LIST", "name": "Move list to board", "description": "Moves an existing Trello list (identified by `idList`) to an existing destination board (board ID in `value`), optionally setting its new position (`pos`)." }, { "slug": "TRELLO_UPDATE_LISTS_NAME_BY_ID_LIST", "name": "Update list name", "description": "Updates the name of an existing Trello list, identified by its ID; this only changes the list's name, not its cards or position." }, { "slug": "TRELLO_UPDATE_LISTS_POS_BY_ID_LIST", "name": "Update list position", "description": "Changes a Trello list's order on a board to 'top', 'bottom', or a specified numeric position, affecting only its position." }, { "slug": "TRELLO_UPDATE_LISTS_SUBSCRIBED_BY_ID_LIST", "name": "Update list subscription", "description": "Updates the subscription status for a Trello list, allowing the user to subscribe or unsubscribe to control notifications." }, { "slug": "TRELLO_UPDATE_MEMBER_AVATAR", "name": "Upload member avatar", "description": "Updates a Trello member's avatar using a base64-encoded image; the `file` field, though schema-optional, requires valid image data for a successful update." }, { "slug": "TRELLO_UPDATE_MEMBERS_AVATAR_SOURCE_BY_ID_MEMBER", "name": "Update member avatar source", "description": "Updates the avatar source for a specified Trello member. The avatar source determines which image is displayed as the member's profile picture: Gravatar (based on email), a previously uploaded custom image, or the default initials avatar. Note: This endpoint requires write permissions for member profiles." }, { "slug": "TRELLO_UPDATE_MEMBERS_BIO_BY_ID_MEMBER", "name": "Update member bio", "description": "Updates the bio/description of a specified Trello member. The bio is a short text that appears on the member's profile. Requires write permissions for the member's account." }, { "slug": "TRELLO_UPDATE_MEMBERS_BOARD_BACKGROUNDS_BY_ID_MEMBER_BY_ID_B", "name": "Update Member Board Background", "description": "Update Member Board Background" }, { "slug": "TRELLO_UPDATE_MEMBERS_BOARD_STARS_BY_ID_MEMBER_BY_ID_BOARD_S", "name": "Update Member Board Star", "description": "Update Member Board Star" }, { "slug": "TRELLO_UPDATE_MEMBERS_BY_ID_MEMBER", "name": "Update member by ID", "description": "Updates an existing Trello member's profile information, preferences, or username." }, { "slug": "TRELLO_UPDATE_MEMBERS_CUSTOM_BOARD_BACKGROUNDS_BY_ID_MEMBER_", "name": "Update member's custom board background", "description": "Update member's custom board background" }, { "slug": "TRELLO_UPDATE_MEMBERS_FULL_NAME_BY_ID_MEMBER", "name": "Update member full name by id", "description": "Updates the full name for a Trello member, identified by their valid ID or username; this operation only affects the full name, leaving other profile information unchanged." }, { "slug": "TRELLO_UPDATE_MEMBERS_INITIALS_BY_ID_MEMBER", "name": "Update member initials", "description": "Updates the initials for a specified Trello member, identified by their ID or username." }, { "slug": "TRELLO_UPDATE_MEMBERS_PREFS_COLOR_BLIND_BY_ID_MEMBER", "name": "Update member color blind preference", "description": "Updates a Trello member's color blind friendly mode preference. When enabled, labels display patterns in addition to colors to help users who have difficulty distinguishing colors. This setting only affects the authenticated member's view and does not change how other members see the board." }, { "slug": "TRELLO_UPDATE_MEMBERS_PREFS_LOCALE_BY_ID_MEMBER", "name": "Update member locale preference", "description": "Updates a Trello member's locale preference to change how dates, times, and numbers are displayed in the Trello UI. Requires 'account' scope in the API token. Use 'me' as idMember to update the authenticated user's locale." }, { "slug": "TRELLO_UPDATE_MEMBERS_PREFS_SUMMARY_INTERVAL_BY_ID_MEMBER", "name": "Update Member Summary Interval", "description": "Updates a Trello member's preference for the frequency of email summary notifications; this setting affects only summary notifications." }, { "slug": "TRELLO_UPDATE_MEMBERS_SAVED_SEARCHES_BY_ID_MEMBER_BY_ID_SAVE", "name": "Update member saved search", "description": "Update member saved search" }, { "slug": "TRELLO_UPDATE_MEMBERS_SAVED_SEARCHES_NAME_BY_ID_MEMBER_BY_ID", "name": "Update member saved search name", "description": "Update member saved search name" }, { "slug": "TRELLO_UPDATE_MEMBERS_SAVED_SEARCHES_POS_BY_ID_MEMBER_BY_ID_", "name": "Update member saved search position", "description": "Update member saved search position" }, { "slug": "TRELLO_UPDATE_MEMBERS_SAVED_SEARCHES_QUERY_BY_ID_MEMBER_BY_I", "name": "Update member saved search query", "description": "Update member saved search query" }, { "slug": "TRELLO_UPDATE_MEMBERS_USERNAME_BY_ID_MEMBER", "name": "Update member username", "description": "Updates the username for an existing Trello member, identified by their ID or current username. IMPORTANT: This endpoint requires an authentication token (web session), not an API consent token. Third-party applications using API tokens cannot update member profile fields (username, fullName, initials, locale) - this is a Trello security restriction to ensure only members can modify their own profile data directly." }, { "slug": "TRELLO_UPDATE_NOTIFICATIONS_BY_ID_NOTIFICATION", "name": "Update notification status by id", "description": "Updates only the 'unread' status of a specific Trello notification." }, { "slug": "TRELLO_UPDATE_NOTIFICATIONS_UNREAD_BY_ID_NOTIFICATION", "name": "Update notification unread status", "description": "Updates the unread status of a specific Trello notification. Use this action to mark notifications as read (value='false') or unread (value='true'). The notification must belong to the authenticated user. To get notification IDs, use the 'get_members_notifications_by_id_member' action first." }, { "slug": "TRELLO_UPDATE_ORGANIZATION_LOGO", "name": "Add organization logo", "description": "Sets or updates the logo for a Trello organization; the provided image file must adhere to Trello's format and size restrictions." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_BY_ID_ORG", "name": "Update organization attributes", "description": "Updates various attributes of an existing Trello organization, identified by `idOrg`." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_DESC_BY_ID_ORG", "name": "Update organization description", "description": "Updates or clears the description for an existing Trello organization, identified by its ID or name, to a new string up to 16384 characters." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_DISPLAY_NAME_BY_ID_ORG", "name": "Update organization display name", "description": "Updates the display name of a Trello organization, identifiable by its current ID or name (`idOrg`), to the new `value`; other attributes remain unaffected." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_MEMBERS_BY_ID_ORG", "name": "Update an organization member", "description": "Adds/updates a member in a specified Trello organization (`idOrg`); `email` and `type` are API-required, `fullName` is needed if `email` is new to Trello." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_MEMBERS_BY_ID_ORG_BY_ID_MEMBER", "name": "Update organization member", "description": "Updates a member's role/type (admin, normal, or observer) in a Trello organization. Note: This operation requires a premium Trello workspace - free workspaces cannot change memberships." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_MEMBERS_DEACTIVATION_BY_ID_ORG_B", "name": "Update org member deactivation status", "description": "Update org member deactivation status" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_MEMBERSHIPS_BY_ID_ORG_BY_ID_MEMB", "name": "Update org membership", "description": "Update org membership" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_NAME_BY_ID_ORG", "name": "Update organization name by id", "description": "Updates the unique programmatic identifier (used in URLs and API interactions) for an existing Trello organization; this is an irreversible operation, effective immediately, and only affects this identifier." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_ASSOCIATED_DOMAIN_BY_ID_OR", "name": "Update an organization's associated domain preferences", "description": "Update an organization's associated domain preferences" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_BOARD_VISIBILITY_BY_ID_ORG", "name": "Update organization board visibility preference", "description": "Updates the preference controlling who can set board visibility to 'organization-visible' within an existing Trello organization." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_EXTERNAL_MEMBERS_ACCESS_BY", "name": "Update an organization's external members access", "description": "Update an organization's external members access" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_PERMISSION_LEVEL_BY_ID_ORG", "name": "Update organization permission level", "description": "Updates a Trello organization's `permissionLevel` preference, determining if it's members-only or link-accessible, and affecting new board default visibility." }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_PRIVATE_BOARD_VISIBILITY_B", "name": "Update organization private board visibility restriction", "description": "Update organization private board visibility restriction" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_PREFS_PUBLIC_BOARD_VISIBILITY_BY", "name": "Update organization public board visibility", "description": "Update organization public board visibility" }, { "slug": "TRELLO_UPDATE_ORGANIZATIONS_WEBSITE_BY_ID_ORG", "name": "Update organization website", "description": "Updates the website URL for a specified Trello organization." }, { "slug": "TRELLO_UPDATE_ORG_GOOGLE_APPS_VERSION", "name": "Update organization Google Apps version", "description": "Updates the Google Apps integration version preference for a specified Trello organization, to manage compatibility or features related to Google Workspace services." }, { "slug": "TRELLO_UPDATE_ORG_INVITE_RESTRICTIONS", "name": "Update organization invite restriction", "description": "Adds an email domain restriction to a Trello organization's invitation policy. Members can only be invited if their email matches the specified domain. This is an Enterprise-only feature requiring admin privileges on the organization." }, { "slug": "TRELLO_UPDATE_SESSIONS_BY_ID_SESSION", "name": "Update session by id", "description": "Updates a Trello user session's viewed board ID or status; call when user activity or board focus changes." }, { "slug": "TRELLO_UPDATE_SESSIONS_STATUS_BY_ID_SESSION", "name": "Update session status by ID", "description": "Updates the status of an existing Trello session. IMPORTANT: This endpoint is part of Trello's internal/deprecated session API. WebSocket connections via API key+token were deprecated on November 15, 2024. This endpoint may not be accessible via standard API authentication. Use this to update a session's activity status (active/idle/disconnected) for real-time presence tracking in Trello boards." }, { "slug": "TRELLO_UPDATE_WEBHOOKS_ACTIVE_BY_ID_WEBHOOK", "name": "Update webhook active status", "description": "Updates the active status of an existing Trello webhook. Set `value` to 'true' to activate the webhook (enable notifications) or 'false' to deactivate it (pause notifications). The webhook's other properties (callbackURL, idModel, description) remain unchanged." }, { "slug": "TRELLO_UPDATE_WEBHOOKS_BY_ID_WEBHOOK", "name": "Update webhooks", "description": "Updates an existing Trello webhook's description, active status, callback URL, or monitored model ID; requires the webhook ID (not in request body) to be specified, typically via URL path." }, { "slug": "TRELLO_UPDATE_WEBHOOKS_CALLBACK_URL_BY_ID_WEBHOOK", "name": "Update webhook callback url", "description": "Updates the callback URL for a specific Trello webhook; other webhook attributes remain unchanged." }, { "slug": "TRELLO_UPDATE_WEBHOOKS_DESCRIPTION_BY_ID_WEBHOOK", "name": "Update webhook description", "description": "Updates the description of an existing Trello webhook; an empty string for the new description removes the current one." }, { "slug": "TRELLO_UPDATE_WEBHOOKS_ID_MODEL_BY_ID_WEBHOOK", "name": "Update webhook idModel", "description": "Updates the `idModel` (the monitored Trello entity like a board, list, or card) for an active webhook `idWebhook` to the new model ID `value`; other webhook properties are unaffected." } ], "triggers": [ { "slug": "TRELLO_ARCHIVED_CARD_TRIGGER", "name": "Card Archived Trigger", "description": "Triggered when a card is archived in the specified board" }, { "slug": "TRELLO_NEW_ACTIVITY_TRIGGER", "name": "New Activity Trigger", "description": "Triggered when there is activity in Trello." }, { "slug": "TRELLO_NEW_BOARD_TRIGGER", "name": "New Board Trigger", "description": "Triggered when a board is created in the specified workspace" }, { "slug": "TRELLO_NEW_CARD_TRIGGER", "name": "New Card Trigger", "description": "Triggered when a card is created in the specified board" }, { "slug": "TRELLO_UPDATED_CARD_TRIGGER", "name": "Card Updated Trigger", "description": "Triggered when a specific card is updated" } ], "authConfigDetails": [ { "mode": "OAUTH1", "name": "trello_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "consumer_key", "displayName": "Consumer key", "type": "string", "description": "Consumer key of the app", "required": true, "default": null }, { "name": "consumer_secret", "displayName": "Consumer secret", "type": "string", "description": "Consumer secret of the app", "required": true, "default": null } ], "optional": [ { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write,account" }, { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "Access token injected automatically after OAuth2 authentication flow.", "required": false, "default": null } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "apollo", "name": "Apollo", "logo": "https://logos.composio.dev/api/apollo", "description": "Apollo provides CRM and lead generation capabilities, helping businesses discover contacts, manage outreach, and track sales pipelines for consistent customer relationship development", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APOLLO_ADD_CONTACTS_TO_SEQUENCE", "name": "Add Contacts to Sequence", "description": "Adds contacts to a specified Apollo email sequence and returns the contact details. `sequence_id`, `emailer_campaign_id`, and `send_email_from_email_account_id` must be retrieved from Apollo listing/search endpoints before calling this tool — these IDs cannot be inferred from names." }, { "slug": "APOLLO_BULK_ORGANIZATION_ENRICHMENT", "name": "Bulk organization enrichment", "description": "Enriches data for up to 10 organizations simultaneously by providing a list of their base company domains (e.g., 'apollo.io', not 'www.apollo.io'). Each call consumes Apollo credits per domain enriched; monitor quota to avoid exhaustion errors." }, { "slug": "APOLLO_BULK_PEOPLE_ENRICHMENT", "name": "Bulk people enrichment", "description": "Use to enrich multiple person profiles simultaneously with comprehensive data from Apollo's database. Each call consumes Apollo credits; avoid re-enriching the same contacts. Responses may include null or missing fields (e.g., email, phone, organization); treat unmatched records as valid 'no match' outcomes, not errors. Heavy use may trigger HTTP 429; respect Retry-After headers." }, { "slug": "APOLLO_BULK_UPDATE_ACCOUNT_STAGE", "name": "Bulk update account stage", "description": "Bulk updates the stage for specified existing Apollo.io accounts, moving them to a valid new account stage." }, { "slug": "APOLLO_CREATE_ACCOUNT", "name": "Create an Apollo account", "description": "Creates a new account in Apollo.io; a new record is created even if a similar account exists, and provided `owner_id` or `account_stage_id` must be valid existing IDs. The response includes the new account's ID, which can be used directly in subsequent calls." }, { "slug": "APOLLO_CREATE_BULK_ACCOUNTS", "name": "Bulk create Apollo accounts", "description": "Creates multiple accounts in Apollo.io with a single API call (maximum 100 accounts per request). Use when creating multiple company records at once." }, { "slug": "APOLLO_CREATE_BULK_CONTACTS", "name": "Bulk create Apollo contacts", "description": "Tool to bulk create multiple contacts in Apollo with a single API call. Use when you need to create multiple contacts efficiently. Supports up to 100 contacts per request with optional deduplication." }, { "slug": "APOLLO_CREATE_CALL_RECORD", "name": "Create call record in Apollo", "description": "Tool to log call records in Apollo from external systems. Use when recording calls made through outside systems like Orum or Nooks; requires a master API key and cannot dial prospects directly." }, { "slug": "APOLLO_CREATE_CONTACT", "name": "Create Apollo contact", "description": "Creates a new contact in Apollo.io; use `account_id` to link to an organization and `contact_stage_id` for sales stage. Apollo does not auto-deduplicate — duplicate records sharing the same email are silently created; always search via APOLLO_SEARCH_CONTACTS before calling this tool. Requires explicit user confirmation before execution." }, { "slug": "APOLLO_CREATE_CUSTOM_FIELD", "name": "Create custom field", "description": "Creates a new custom field in Apollo.io for contacts, accounts, or opportunities. Use when you need to define additional data fields beyond Apollo's standard attributes." }, { "slug": "APOLLO_CREATE_DEAL", "name": "Create Apollo deal", "description": "Creates a new sales opportunity (deal) in Apollo.io; all provided IDs (`owner_id`, `account_id`, `opportunity_stage_id`) must be valid existing Apollo identifiers. This action has persistent side effects — obtain explicit user confirmation before invoking." }, { "slug": "APOLLO_CREATE_TASK", "name": "Create Apollo Task", "description": "Tool to create a single task in Apollo.io. Use when you need to add a new task to your team's Apollo account for a specific contact. The task will be assigned to a user and includes details like type, status, priority, due date, and optional notes." }, { "slug": "APOLLO_GET_ACCOUNT", "name": "Get Account by ID", "description": "Tool to retrieve detailed information about a specific account by its Apollo ID. Use when you need to fetch complete account data including company details, contact information, and CRM integration fields." }, { "slug": "APOLLO_GET_AUTH_STATUS", "name": "Check Apollo API key status", "description": "Tool to check whether the provided Apollo API key is valid and accepted by Apollo (health/auth check). Use when any Apollo endpoint returns 401/403/422 to quickly diagnose invalid/expired keys versus permission scope issues. If this succeeds but other endpoints return 403, it strongly suggests permissioning or master-key scope issues rather than a totally invalid credential." }, { "slug": "APOLLO_GET_CONTACT", "name": "Get Apollo Contact", "description": "Retrieves detailed information about a specific contact by its ID. Use this to view contact details including name, email, phone numbers, organization, and custom fields." }, { "slug": "APOLLO_GET_DEAL", "name": "Get Apollo deal", "description": "Retrieves information about a specific deal by its ID. Use this when you need to view details of a single deal." }, { "slug": "APOLLO_GET_LABELS", "name": "Get Labels", "description": "Retrieves all labels from Apollo.io, used for organizing contacts and accounts. Call this before APOLLO_CREATE_CONTACT or APOLLO_UPDATE_ACCOUNT to validate label values against the returned list; mismatched labels cause 400/422 errors." }, { "slug": "APOLLO_GET_OPPORTUNITY_STAGES", "name": "Get opportunity stages", "description": "Retrieves all configured opportunity (deal) stages from the Apollo.io account." }, { "slug": "APOLLO_GET_ORGANIZATION", "name": "Get Organization by ID", "description": "Retrieves complete information about a specific organization by its Apollo ID. Use when you need detailed company data including funding, technologies, employee counts, and more." }, { "slug": "APOLLO_GET_ORGANIZATION_JOB_POSTINGS", "name": "Get Organization Job Postings", "description": "Retrieves paginated job postings for a specified organization by its ID, optionally filtering by domain; ensure `organization_id` is a valid identifier." }, { "slug": "APOLLO_GET_TYPED_CUSTOM_FIELDS", "name": "Get typed custom fields", "description": "Retrieves all typed custom field definitions available in the Apollo.io instance, detailing their types and configurations. Call before constructing payloads for APOLLO_UPDATE_CONTACT or APOLLO_UPDATE_ACCOUNT — mismatched types or invalid enum options cause 400 errors." }, { "slug": "APOLLO_LIST_ACCOUNT_STAGES", "name": "List Apollo account stages", "description": "Retrieves the IDs for all available account stages in your team's Apollo account." }, { "slug": "APOLLO_LIST_CONTACT_STAGES", "name": "List apollo contact stages", "description": "Retrieves all available contact stages from an Apollo account, including their unique IDs and names." }, { "slug": "APOLLO_LIST_DEALS", "name": "List Apollo deals", "description": "Retrieves a list of deals from Apollo, using Apollo's default sort order if 'sort_by_field' is omitted." }, { "slug": "APOLLO_LIST_EMAIL_ACCOUNTS", "name": "List email accounts", "description": "Retrieves all email accounts and their details for the authenticated user; takes no parameters." }, { "slug": "APOLLO_LIST_FIELDS", "name": "List Fields", "description": "Retrieves all field definitions from Apollo.io, including system fields and custom fields. Use the optional 'source' parameter to filter by field type (system, custom, or crm_synced)." }, { "slug": "APOLLO_LIST_USERS", "name": "List Apollo Users", "description": "Retrieves a list of all users (teammates) associated with the Apollo account, supporting pagination via `page` and `per_page` parameters. Use this to obtain numeric user IDs required by operations like APOLLO_UPDATE_CONTACT_OWNERSHIP — names or email addresses are not accepted in place of these IDs." }, { "slug": "APOLLO_ORGANIZATION_ENRICHMENT", "name": "Enrich organization data", "description": "Fetches comprehensive organization enrichment data from Apollo.io for a given company domain; results are most meaningful if the company exists in Apollo's database. Each call consumes Apollo credits and may be unavailable on free plans. Returns HTTP 429 under burst usage; use exponential backoff on retries." }, { "slug": "APOLLO_ORGANIZATION_SEARCH", "name": "Search organizations in Apollo", "description": "Searches Apollo's database for organizations using various filters; consumes credits on every call (unavailable on free plans) — avoid re-running identical queries and surface quota errors rather than retrying. Retrieves a maximum of 50,000 records; uses `page` (1-500) and `per_page` (1-100) for pagination — check `total_pages` in the response to iterate. Overly strict filter combinations can return zero results; start broad and narrow iteratively. Empty results and `org_not_found` are valid outcomes, not errors." }, { "slug": "APOLLO_PEOPLE_ENRICHMENT", "name": "Enrich person with Apollo", "description": "Enriches and retrieves information for a person from Apollo.io. Requires one of: `id`, `email`, `hashed_email`, `linkedin_url`, or (`first_name` and `last_name` with `organization_name` or `domain`) for matching. `webhook_url` must be provided if `reveal_phone_number` is true. Name-only inputs without `organization_name` or `domain` frequently return no matches." }, { "slug": "APOLLO_PEOPLE_SEARCH", "name": "Apollo people search", "description": "Searches Apollo's contact database for people using various filters; results capped at 50,000 records and does not enrich contact data. Combining multiple strict filters (organization_ids, person_titles, person_seniorities) can return zero results — start broad and narrow iteratively. Result records may have null email, phone, or organization fields." }, { "slug": "APOLLO_SEARCH_ACCOUNTS", "name": "Search Apollo Accounts", "description": "Searches for accounts within your existing Apollo.io database using various criteria; requires a paid plan and is limited to 50,000 records." }, { "slug": "APOLLO_SEARCH_CALLS", "name": "Search for Calls", "description": "Searches for call records in Apollo.io using filters like date range, duration, direction (inbound/outgoing), users, contacts, purposes, outcomes, and keywords. Supports pagination for efficient data retrieval." }, { "slug": "APOLLO_SEARCH_CONTACTS", "name": "Search Apollo contacts", "description": "Searches Apollo contacts using keywords, stage IDs (from 'List Contact Stages' action), or sorting (max 50,000 records; `sort_ascending` requires `sort_by_field`). Search before creating contacts to avoid duplicates." }, { "slug": "APOLLO_SEARCH_NEWS_ARTICLES", "name": "Search news articles", "description": "Tool to search for news articles about companies in Apollo's database. Use when you need to find recent news, announcements, or updates about specific organizations using their Apollo IDs." }, { "slug": "APOLLO_SEARCH_OUTREACH_EMAILS", "name": "Search outreach emails", "description": "Tool to search for outreach emails sent through Apollo sequences. Use when you need to find emails created and sent by your team as part of Apollo email campaigns. This endpoint requires a master API key and has a display limit of 50,000 records (100 records per page, up to 500 pages)." }, { "slug": "APOLLO_SEARCH_SEQUENCES", "name": "Search sequences", "description": "Searches for sequences (e.g., automated email campaigns) in Apollo.io." }, { "slug": "APOLLO_SEARCH_TASKS", "name": "Search tasks", "description": "Searches for tasks in Apollo.io using filters like keywords, date ranges (due, created, updated), priorities, types, assigned users, associated contacts/accounts, supporting sorting and pagination." }, { "slug": "APOLLO_UPDATE_ACCOUNT", "name": "Update an Apollo account", "description": "Updates specified attributes of an existing account in Apollo.io." }, { "slug": "APOLLO_UPDATE_ACCOUNT_OWNERS", "name": "Update account ownership", "description": "Updates the ownership of multiple Apollo accounts to a specified user. Use when bulk assigning account ownership to a team member." }, { "slug": "APOLLO_UPDATE_CALL_RECORD", "name": "Update Apollo call record", "description": "Tool to update an existing call record in Apollo.io. Use when you need to modify details of a previously logged phone call such as duration, status, notes, or associated contact/account information." }, { "slug": "APOLLO_UPDATE_CONTACT", "name": "Update Apollo contact details", "description": "Tool to update an existing contact's information in Apollo. Use when you need to modify contact details such as name, email, phone, title, organization, or custom fields. At least one field beyond contact_id must be provided." }, { "slug": "APOLLO_UPDATE_CONTACT_OWNERSHIP", "name": "Update contact ownership", "description": "Updates the ownership of specified Apollo contacts to a given Apollo user, who must be part of the same team." }, { "slug": "APOLLO_UPDATE_CONTACTS_BULK", "name": "Bulk update Apollo contacts", "description": "Tool to bulk update multiple Apollo contacts with a single API call. Use when updating multiple contacts simultaneously - either apply the same updates to all contacts using contact_ids, or apply different updates to each contact using contact_attributes. Automatically processes asynchronously for more than 100 contacts." }, { "slug": "APOLLO_UPDATE_CONTACT_STAGE", "name": "Update contact stage", "description": "Updates the stage for one or more existing contacts in Apollo.io to a new valid contact stage, useful for managing sales funnel progression." }, { "slug": "APOLLO_UPDATE_CONTACT_STATUS_IN_SEQUENCE", "name": "Update contact status in sequence", "description": "Updates a contact's status within a designated Apollo sequence, but cannot set the status to 'active'." }, { "slug": "APOLLO_UPDATE_DEALS", "name": "Update Apollo deal", "description": "Updates specified fields of an existing Apollo.io deal (opportunity), requiring a valid `opportunity_id`." }, { "slug": "APOLLO_VIEW_API_USAGE_STATS", "name": "View API Usage Stats", "description": "Fetches Apollo API usage statistics and rate limits for the connected team. Use before large enrichment/search runs to understand current API usage and plan/budget constraints. If experiencing 403s on credit/usage sensitive endpoints, use this tool to confirm whether the key has master privileges (this endpoint will 403 without a master key)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apollo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Apollo API key. Create one in Apollo under Settings → Integrations → API Keys (admin access required); turn on 'Set as master key' so all tools work.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "semrush", "name": "Semrush", "logo": "https://logos.composio.dev/api/semrush", "description": "Semrush is a popular SEO tool suite that specializes in keyword research, competitor analysis, and Google Ad campaign optimization.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEMRUSH_ACCOUNT_UNITS_BALANCE", "name": "Check Semrush account units balance", "description": "Tool to fetch the remaining Semrush Standard API units for the authenticated account. Use this before launching large batches of Semrush report requests to preflight and fail fast if units are exhausted or below a required threshold." }, { "slug": "SEMRUSH_ADS_COPIES", "name": "Get ad copies", "description": "Retrieves unique ad copies Semrush has observed for a specified domain from a regional database, detailing ads seen in Google's paid search results. Results are a sampled subset, not a complete picture of the domain's advertising. Response is returned as a CSV-like string; parse columns (e.g., Tt, Ds) using the pipe or semicolon delimiter." }, { "slug": "SEMRUSH_ANCHORS", "name": "Get anchor texts", "description": "Use this action to get a CSV report of anchor texts for backlinks pointing to a specified, publicly accessible domain, root domain, or URL." }, { "slug": "SEMRUSH_AUTHORITY_SCORE_PROFILE", "name": "Get authority score profile", "description": "Retrieves the Authority Score (AS) profile for a specified target, showing the count of referring domains that link to the target for each AS value from 0 to 100." }, { "slug": "SEMRUSH_BACKLINKS", "name": "Get backlinks", "description": "Fetches backlinks for a specified domain or URL as a semicolon-delimited CSV string (parse with `sep=';'`); allows customization of columns, sorting, and filtering. Consumes Semrush API credits per request. Ensure `display_limit` surpasses `display_offset` when an offset is used, and note the `urlanchor` filter may have limitations for targets with extensive backlinks." }, { "slug": "SEMRUSH_BACKLINKS_OVERVIEW", "name": "Backlinks overview", "description": "Provides a semicolon-delimited (sep=';') CSV summary of backlinks, including Authority Score and link type breakdowns, for a specified and publicly accessible domain, root domain, or URL. A result of 'ERROR 50 :: NOTHING FOUND' means the target has no data in the database and is a valid zero-result response." }, { "slug": "SEMRUSH_BATCH_COMPARISON", "name": "Batch comparison", "description": "Compares backlink profiles for multiple specified targets (domains, subdomains, or URLs) to analyze and compare link-building efforts." }, { "slug": "SEMRUSH_BATCH_KEYWORD_OVERVIEW", "name": "Batch keyword overview", "description": "Fetches a keyword overview report from a Semrush regional database for up to 100 keywords, providing metrics like search volume, CPC, and keyword difficulty. Response is CSV-like text (not JSON); parse accordingly. Returns literal string 'ERROR 50 :: NOTHING FOUND' for keywords with no data in the selected database — treat as zero results and fall back to SEMRUSH_KEYWORD_OVERVIEW_ONE_DATABASE or SEMRUSH_KEYWORD_OVERVIEW_ALL_DATABASES for those terms." }, { "slug": "SEMRUSH_BROAD_MATCH_KEYWORD", "name": "Broad match keyword", "description": "Fetches broad match keywords for a given phrase. Response is CSV-like text (not JSON); parse by splitting on line breaks and delimiters. `display_sort` and `display_filter` parameters are defined but currently not utilized by the API call." }, { "slug": "SEMRUSH_CATEGORIES", "name": "Get categories", "description": "Retrieves categories and their 0-1 confidence ratings for a specified domain, subdomain, or URL, with results sorted by rating. Response is returned as semicolon-separated text in a single 'data' field requiring parsing before use. Some niche or atypical targets may return no category data." }, { "slug": "SEMRUSH_CATEGORIES_PROFILE", "name": "Get categories profile", "description": "Retrieves a profile of content categories from referring domains for a specified target, analyzing its first 10,000 referring domains and sorting results by domain count." }, { "slug": "SEMRUSH_COMPETITORS", "name": "Get competitor data", "description": "Retrieves a CSV-formatted report of competitors for a specified target (root domain, domain, or URL) based on shared backlinks or referring domains. Output is a CSV string; use display_limit and display_offset to paginate without silent truncation." }, { "slug": "SEMRUSH_COMPETITORS_IN_ORGANIC_SEARCH", "name": "Get competitors in organic search", "description": "Use to get a domain's organic search competitors from Semrush as a semicolon-separated string; `display_date` requires 'YYYYMM15' format if used." }, { "slug": "SEMRUSH_COMPETITORS_IN_PAID_SEARCH", "name": "Get competitors in paid search", "description": "Retrieves a list of a domain's competitors in paid search results from a specified regional database." }, { "slug": "SEMRUSH_DOMAIN_AD_HISTORY", "name": "Get domain ad history", "description": "Retrieves a domain's 12-month advertising history from Semrush (keywords bid on, ad positions, ad copy) for PPC strategy and competitor analysis; most effective when the domain has ad history in the selected database." }, { "slug": "SEMRUSH_DOMAIN_ORGANIC_PAGES", "name": "Get domain organic pages", "description": "Fetches a report on a domain's unique organic pages ranking in Google's top 100 search results, with options for specifying database, date, columns, sorting, and filtering. Response is semicolon-separated CSV text in a single `data` field requiring explicit parsing. The literal response `ERROR 50 :: NOTHING FOUND` means zero results for that domain/database combination, not a system error. Traffic metrics (e.g., `Tr`) are modeled estimates incompatible with first-party analytics data." }, { "slug": "SEMRUSH_DOMAIN_ORGANIC_SEARCH_KEYWORDS", "name": "Get domain organic search keywords", "description": "Retrieves organic search keywords for a domain from a specified Semrush regional database; `display_positions` must be set if `display_daily=1` for daily updates. Response is semicolon-delimited CSV text (parse with sep=';', cast numeric columns before aggregations). A response of 'ERROR 50 :: NOTHING FOUND' indicates no data for the domain in the selected database — treat as a valid zero-result." }, { "slug": "SEMRUSH_DOMAIN_ORGANIC_SUBDOMAINS", "name": "Get domain organic subdomains", "description": "Retrieves a report on subdomains of a given domain that rank in Google's top 100 organic search results for a specified regional database." }, { "slug": "SEMRUSH_DOMAIN_PAID_SEARCH_KEYWORDS", "name": "Get domain paid search keywords", "description": "Fetches keywords driving paid search traffic to a specified, existing domain using a supported Semrush regional database." }, { "slug": "SEMRUSH_DOMAIN_PLA_SEARCH_KEYWORDS", "name": "Get PLA search keywords for a domain", "description": "Retrieves Product Listing Ad (PLA) search keywords for a specified domain from a Semrush regional database." }, { "slug": "SEMRUSH_DOMAIN_VS_DOMAIN", "name": "Compare domains", "description": "Analyzes keyword rankings by comparing up to five domains to find common, unique, or gap keywords, using specified organic/paid types and comparison logic in the `domains` string." }, { "slug": "SEMRUSH_HISTORICAL_DATA", "name": "Get historical data", "description": "Retrieves monthly historical backlink and referring domain data for a specified root domain, returned as a time series string with newest records first." }, { "slug": "SEMRUSH_INDEXED_PAGES", "name": "Get indexed pages", "description": "Retrieves a list of indexed pages from Semrush for a specified `target` (root domain, domain, or URL) and `target_type`, ensuring `target` is publicly accessible, Semrush-analyzable, and correctly matches `target_type`. Returns CSV-like text output requiring parsing before structured analysis." }, { "slug": "SEMRUSH_KEYWORD_DIFFICULTY", "name": "Get keyword difficulty", "description": "Determines the Keyword Difficulty (KD) score (0-100, higher means greater difficulty) for a given phrase in a specific Semrush regional database to assess its SEO competitiveness. Returns CSV-formatted text; parse before programmatic use." }, { "slug": "SEMRUSH_KEYWORD_OVERVIEW_ALL_DATABASES", "name": "Keyword overview all databases", "description": "Fetches a keyword overview from Semrush for a specified phrase, including metrics like search volume, CPC, and competition. Response is returned as a CSV-like string; parse headers and rows into a structured table before extracting values like Nq, Cp, or Kd." }, { "slug": "SEMRUSH_KEYWORD_OVERVIEW_ONE_DATABASE", "name": "Get keyword overview for one database", "description": "Fetches a keyword summary for a specified phrase from a chosen regional database. Returns CSV-like text (not JSON) with column headers matching `export_columns` codes (e.g., 'Ph', 'Nq', 'Kd'); parse headers and rows into structured data before use. A plain-text 'ERROR 50 :: NOTHING FOUND' response indicates zero results, not a transport error." }, { "slug": "SEMRUSH_KEYWORDS_ADS_HISTORY", "name": "Get keywords ads history", "description": "Fetches a historical report (last 12 months) of domains advertising on a specified keyword in Google Ads, optionally for a specific month ('YYYYMM15') or the most recent period, returning raw CSV-like data." }, { "slug": "SEMRUSH_ORGANIC_RESULTS", "name": "Get organic results", "description": "Retrieves up to 100,000 domains and URLs from Google's top 100 organic search results for a keyword and region, returning a raw string; use `display_date` in 'YYYYMM15' format (day must be '15') for historical data." }, { "slug": "SEMRUSH_PAID_RESULTS", "name": "Get paid search results", "description": "Fetches domains ranking in Google's paid search results (AdWords) for a specified keyword and regional database." }, { "slug": "SEMRUSH_PHRASE_QUESTIONS", "name": "Phrase questions", "description": "Fetches question-format keywords semantically related to a given query phrase for a specified regional database, aiding in understanding user search intent and discovering content ideas." }, { "slug": "SEMRUSH_PLA_COMPETITORS", "name": "Get PLA competitors", "description": "Retrieves domains competing with a specified domain in Google's Product Listing Ads (PLA) from a given Semrush regional database." }, { "slug": "SEMRUSH_PLA_COPIES", "name": "Get PLA copies", "description": "Fetches Product Listing Ad (PLA) copies that Semrush observed for a domain in Google's paid search results." }, { "slug": "SEMRUSH_REFERRING_DOMAINS", "name": "Get referring domains", "description": "Retrieves a semicolon-delimited text report listing domains that link to a target, with options to filter by type (not value). Parse with sep=';' and cast numeric columns (e.g., backlinks_num, domain_ascore) before aggregating." }, { "slug": "SEMRUSH_REFERRING_DOMAINS_BY_COUNTRY", "name": "Get referring domains by country", "description": "Generates a CSV report detailing the geographic distribution of referring domains (by country, determined via IP address) for a specified, publicly accessible target." }, { "slug": "SEMRUSH_REFERRING_I_PS", "name": "Referring i ps", "description": "Fetches IP addresses that are sources of backlinks for a specified target domain, root domain, or URL." }, { "slug": "SEMRUSH_RELATED_KEYWORDS", "name": "Find related keywords", "description": "Call this to find related keywords (including synonyms and variations) for a target phrase in a specific regional database; `display_date` (if used for historical data) must be 'YYYYMM15' for a past month. Response is CSV-like delimited text (not JSON); parse by splitting on newlines and delimiters to extract structured rows." }, { "slug": "SEMRUSH_TLD_DISTRIBUTION", "name": "Get TLD distribution", "description": "Fetches a report on the Top-Level Domain (TLD) distribution of referring domains for a specified target, useful for analyzing geographic or categorical backlink diversity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key for the Semrush API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mem0", "name": "Mem0", "logo": "https://logos.composio.dev/api/mem0", "description": "Mem0 is an universal, self-improving memory layer for LLM applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 47, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEM0_ADD_MEMBER_TO_PROJECT", "name": "Add member to project", "description": "Adds an existing user to a project (identified by `project_id` within organization `org_id`), assigning a valid system role." }, { "slug": "MEM0_ADD_NEW_MEMORY_RECORDS", "name": "Add new memory records", "description": "Stores new memory records from a list of messages, optionally inferring structured content; requires association via `agent_id`, `user_id`, `app_id`, or `run_id`." }, { "slug": "MEM0_ADD_ORGANIZATION_MEMBER", "name": "Add organization member", "description": "Adds a new member, who must be a registered user, to an organization, assigning them a specific role." }, { "slug": "MEM0_CREATE_A_NEW_AGENT", "name": "Create a new agent", "description": "Creates a new agent with a unique `agent_id` and an optional `name`; additional metadata may be assigned by the system." }, { "slug": "MEM0_CREATE_A_NEW_AGENT_RUN", "name": "Create a new agent run", "description": "Creates a new agent run in the mem0.ai system." }, { "slug": "MEM0_CREATE_A_NEW_APPLICATION", "name": "Create a new application", "description": "Creates a new application, allowing metadata to be passed in the request body (not an explicit field in this action's request model); ensure `app_id` is unique to avoid potential errors or unintended updates." }, { "slug": "MEM0_CREATE_A_NEW_ORGANIZATION_ENTRY", "name": "Create a new organization entry", "description": "Creates a new organization entry using the provided name and returns its details." }, { "slug": "MEM0_CREATE_A_NEW_USER", "name": "Create a new user", "description": "Creates a new user with the specified unique `user_id` and supports associating `metadata` (not part of the request schema fields)." }, { "slug": "MEM0_CREATE_MEMORY_ENTRY", "name": "Create memory entry", "description": "Lists/searches existing memory entries with filtering and pagination; critically, this action retrieves memories and does *not* create new ones, despite its name." }, { "slug": "MEM0_CREATE_PROJECT", "name": "Create project", "description": "Creates a new project with a given name within an organization that must already exist." }, { "slug": "MEM0_CREATE_WEBHOOK", "name": "Create webhook", "description": "Creates a new webhook for a specific project to receive real-time notifications. Use when you need to set up event-driven integrations that trigger on memory operations." }, { "slug": "MEM0_DELETE_AN_ORGANIZATION", "name": "Delete an organization", "description": "Permanently deletes an existing organization identified by its unique ID." }, { "slug": "MEM0_DELETE_A_SPECIFIC_MEMORY_BY_ID", "name": "Delete memory by id", "description": "Permanently deletes a specific memory by its unique ID; ensure the `memory_id` exists as this operation is irreversible." }, { "slug": "MEM0_DELETE_ENTITY_BY_TYPE_AND_ID", "name": "Delete entity by type and id", "description": "Call to permanently and irreversibly hard-delete an existing entity (user, agent, app, or run) and all its associated data, using its type and ID." }, { "slug": "MEM0_DELETE_MEMORIES_ENDPOINT", "name": "Delete memories", "description": "Deletes all memories matching specified filter criteria. IMPORTANT: At least one filter (agent_id, user_id, app_id, or run_id) must be provided to prevent accidental deletion of all memories. Requires delete permissions on the organization/project." }, { "slug": "MEM0_DELETE_MEMORY_BATCH_WITH_UUIDS", "name": "Delete memory batch with uuids", "description": "Deletes a batch of up to 1000 existing memories, identified by their UUIDs, in a single API call." }, { "slug": "MEM0_DELETE_PROJECT", "name": "Delete project", "description": "Permanently deletes a specific project and all its associated data from an organization; this action cannot be undone and requires the project to exist within the specified organization." }, { "slug": "MEM0_DELETE_PROJECT_MEMBER", "name": "Delete project member", "description": "Removes an existing member, specified by email address, from a project, immediately revoking their project-specific access; the user is not removed from the organization." }, { "slug": "MEM0_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Deletes a webhook and stops receiving notifications for the specified webhook ID. Use this when you no longer need webhook notifications or want to remove a specific webhook configuration." }, { "slug": "MEM0_EXPORT_DATA_BASED_ON_FILTERS", "name": "Export data based on filters", "description": "Creates a new memory export job with optional entity filters (user_id, agent_id, app_id, run_id). Returns export job ID and confirmation message. Requires org_id and project_id. Uses default schema for memory structure if not specified." }, { "slug": "MEM0_FETCH_DETAILED_LIST_OF_ORGANIZATIONS", "name": "List organizations", "description": "Retrieves a summary list of organizations for administrative oversight; returns summary data (names, IDs), not exhaustive details, despite 'detailed' in the name." }, { "slug": "MEM0_FETCH_DETAILS_OF_A_SPECIFIC_ORGANIZATION", "name": "Fetch details of a specific organization", "description": "Fetches comprehensive details for an organization using its `org_id`; the `org_id` must be valid and for an existing organization." }, { "slug": "MEM0_FETCH_LIST_OF_ENTITY_FILTERS", "name": "Get list of entity filters", "description": "Retrieves predefined filter definitions for entities (e.g., by type, creation/modification date); returns definitions only, not filtered entity data." }, { "slug": "MEM0_FETCH_SPECIFIC_ENTITY_DETAILS_WITH_OPTIONAL_FILTERS", "name": "Get entity by id", "description": "Fetches detailed information for an existing entity (user, agent, app, or run) identified by its type and unique ID." }, { "slug": "MEM0_GET_EVENT_STATUS_BY_EVENT_ID", "name": "Get event status by event ID", "description": "Retrieves a single async event by ID to check its current status and results. Use this after operations that return event IDs (e.g., add_new_memory_records) to poll for completion before proceeding with dependent operations." }, { "slug": "MEM0_GET_MEMORIES_BY_ENTITY", "name": "Get memories by entity", "description": "Tool to retrieve all memories associated with a specific entity (user, agent, app, or run). Use when you need to fetch memories for a known entity type and ID combination." }, { "slug": "MEM0_GET_MEMORY_EXPORT", "name": "Get memory export", "description": "Retrieves the status and results of a memory export job by its ID. Use this after creating an export job to fetch the processed memory data. The response structure matches the schema defined during export creation." }, { "slug": "MEM0_GET_ORGANIZATION_MEMBERS", "name": "Get organization members", "description": "Fetches a list of members for a specified, existing organization." }, { "slug": "MEM0_GET_PROJECT_DETAILS", "name": "Get project details", "description": "Fetches comprehensive details for a specified project within an organization." }, { "slug": "MEM0_GET_PROJECT_MEMBERS", "name": "Get project members", "description": "Retrieves all members for a specified project within an organization." }, { "slug": "MEM0_GET_PROJECTS", "name": "Get projects", "description": "Retrieves all projects for a given organization `org_id` to which the caller has access." }, { "slug": "MEM0_GET_PROJECT_WEBHOOKS", "name": "Get project webhooks", "description": "Retrieves all webhooks configured for a specific project. Use this to list webhook configurations including their event types, URLs, and active status." }, { "slug": "MEM0_GET_USER_MEMORY_STATS", "name": "Get user memory stats", "description": "Retrieves a summary of the authenticated user's memory activity, including total memories created, search events, and add events. Note: This endpoint is undocumented in the official mem0 API specification but is functional." }, { "slug": "MEM0_LIST_ENTITIES_WITH_OPTIONAL_ORG_AND_PROJECT_FILTERS", "name": "List entities", "description": "Retrieves a list of entities, optionally filtered by organization or project (prefer `org_id`/`project_id` over deprecated `org_name`/`project_name`), noting results may be summaries and subject to limits." }, { "slug": "MEM0_PERFORM_SEMANTIC_SEARCH_ON_MEMORIES", "name": "Perform semantic search on memories", "description": "Searches memories semantically using a natural language query and metadata filters. IMPORTANT: - At least one of 'user_id', 'agent_id', or 'run_id' MUST be provided - A non-empty 'query' string is REQUIRED for semantic search - To retrieve memories without a search query, use 'retrieve_memory_list' action instead" }, { "slug": "MEM0_REMOVE_A_MEMBER_FROM_THE_ORGANIZATION", "name": "Remove a member from the organization", "description": "Removes a member, specified by their username, from an existing organization of which they are currently a member." }, { "slug": "MEM0_RETRIEVE_ALL_EVENTS_FOR_THE_CURRENTLY_LOGGED_IN_USER", "name": "Retrieve all events for the currently logged in user", "description": "Retrieves a paginated list of events for the authenticated user, filterable and paginable via URL query parameters. This is a read-only operation that does not modify data. Supported Query Parameters (applied directly to the request URL): - `event_type` (str, optional): Filters events by their type (e.g., 'ADD', 'SEARCH'). - `start_date` (str, optional): Filters events on or after this date (format: YYYY-MM-DD). - `end_date` (str, optional): Filters events on or before this date (format: YYYY-MM-DD). - `page` (int, optional): Specifies the page number for paginated results. - `page_size` (int, optional): Number of events per page (default: 50, max: 100)." }, { "slug": "MEM0_RETRIEVE_LIST_OF_MEMORY_EVENTS", "name": "Retrieve list of memory events", "description": "Retrieves a chronological list of all memory events (e.g., user inputs, AI responses) from the Mem0 platform, providing interaction history and context for AI assistants." }, { "slug": "MEM0_RETRIEVE_MEMORY_BY_UNIQUE_IDENTIFIER", "name": "Retrieve memory by id", "description": "Retrieves a complete memory entry by its unique identifier; `memory_id` must be valid and for an existing memory." }, { "slug": "MEM0_RETRIEVE_MEMORY_HISTORY_BY_ID", "name": "Retrieve memory history by id", "description": "Retrieves the complete version history for an existing memory, using its unique `memory_id`, to inspect its evolution or audit changes." }, { "slug": "MEM0_RETRIEVE_MEMORY_LIST", "name": "Retrieve memory list", "description": "Retrieves a list of memories, supporting pagination and diverse filtering (e.g., by IDs, metadata, keywords, date ranges); ensure dates are ISO 8601 and `page`/`page_size` (if used) are positive integers. REQUIRED: At least one of agent_id, user_id, app_id, or run_id must be provided." }, { "slug": "MEM0_SEARCH_MEMORIES_WITH_QUERY_FILTERS", "name": "Search memories with filters", "description": "Semantically searches memories using structured filters with an optional natural language query. If query is omitted, defaults to '*' (wildcard) for filter-only searches. Offers options to rerank results, select specific fields, and adjust similarity threshold; any provided `org_id` or `project_id` must reference a valid existing entity." }, { "slug": "MEM0_UPDATE_MEMORY_BATCH_WITH_UUID", "name": "Update memory batch with uuid", "description": "Updates text for up to 1000 memories in a single batch, using their UUIDs." }, { "slug": "MEM0_UPDATE_MEMORY_DETAILS_BY_ID", "name": "Update memory text content", "description": "Updates the text content of an existing memory, identified by its `memory_id`." }, { "slug": "MEM0_UPDATE_ORGANIZATION_MEMBER_ROLE", "name": "Update organization member role", "description": "Updates the role of an existing member to a new valid role within an existing organization." }, { "slug": "MEM0_UPDATE_PROJECT", "name": "Update project", "description": "Updates a project by `project_id` within an `org_id`, modifying only provided fields (name, description, custom_instructions, custom_categories); list fields are fully replaced (cleared by `[]`), other omitted/null fields remain unchanged." }, { "slug": "MEM0_UPDATE_PROJECT_MEMBER_ROLE", "name": "Update project member role", "description": "Updates the role of a specific member within a designated project, ensuring the new role is valid and recognized by the system." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mem0_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Mem0 API key for authentication. Obtain it from your Mem0 settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neon", "name": "Neon", "logo": "https://logos.composio.dev/api/neon", "description": "Postgres, on a serverless platform designed to help you build reliable and scalable applications faster", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 110, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEON_ACCEPT_PROJECTS_TRANSFER_REQUESTS", "name": "Accept project transfer request", "description": "Tool to accept a transfer request for a Neon project. Use when you need to accept an existing transfer request to transfer a project to your account or a specific organization." }, { "slug": "NEON_ACCESS_PROJECT_DETAILS_BY_ID", "name": "Access project details by id", "description": "Retrieves detailed information about a specific Neon serverless Postgres project. Returns comprehensive project data including configuration, database settings, compute resources, owner information, and consumption metrics. Use this action when you need to: - Get project configuration details (region, PostgreSQL version, settings) - Check project ownership and organization membership - Review compute and storage consumption metrics - Verify project settings before making updates The action is read-only and safe to call frequently. For listing multiple projects, use the retrieve_projects_list action instead." }, { "slug": "NEON_ADD_NEW_JWKS_TO_PROJECT_ENDPOINT", "name": "Add new jwks to project endpoint", "description": "Adds a new JSON Web Key Set (JWKS) URL to a Neon project for JWT-based authentication. The JWKS URL must point to a valid HTTPS endpoint that returns cryptographic keys used to verify JSON Web Tokens (JWTs). Use this action to configure authentication with identity providers like Google, Microsoft, Apple, Auth0, Clerk, or Stytch. The JWKS can be scoped to specific branches and mapped to database roles. Maximum of 10 role names can be associated with each JWKS configuration." }, { "slug": "NEON_ADD_PROJECT_EMAIL_PERMISSION", "name": "Add project email permission", "description": "Adds permissions for a specified email address to a particular project within the Neon B2B SaaS integration platform. This endpoint is used to grant access or specific rights to users for a given project, enabling collaboration and controlled resource sharing. It should be called when you need to add a new user to a project or modify existing user permissions. The endpoint associates the provided email with the specified project, likely setting up default or predefined permission levels. Note that this endpoint only adds permissions and does not provide information about existing permissions or remove them." }, { "slug": "NEON_ADD_ROLE_TO_BRANCH", "name": "Add role to branch", "description": "Creates a new PostgreSQL role within a specific branch of a Neon project. Neon is a serverless PostgreSQL platform where roles are database-level users that can connect to the database and have specific permissions. Use this endpoint to: - Create application service accounts for database access - Set up read-only users for reporting - Create admin roles for database management The created role will have an auto-generated password returned in the response. Store this password securely as it may not be retrievable later. You can use the 'reveal_role_password' endpoint to retrieve it again if needed. Note: Role names must be valid PostgreSQL identifiers (max 63 bytes)." }, { "slug": "NEON_COUNT_PROJECT_BRANCHES", "name": "Count project branches", "description": "Tool to get the total number of branches in a Neon project. Use when you need to count branches without retrieving full branch details. Optionally filter by branch name using the search parameter." }, { "slug": "NEON_CREATE_API_KEY_FOR_ORGANIZATION", "name": "Create API Key for Organization", "description": "Creates a new API key for the specified organization in Neon. The API key is used for authenticating and authorizing access to the Neon API. The `key_name` parameter allows for easy identification and management of multiple API keys within the organization. IMPORTANT: The actual API key value is returned only once in the response and cannot be retrieved later. Store it securely immediately after creation. Organization API keys provide admin-level access to all organization resources, including projects, members, and settings. Only organization admins can create these keys." }, { "slug": "NEON_CREATE_AUTH_KEYS", "name": "Create Auth Provider SDK Keys", "description": "Tool to generate SDK or API keys for authentication providers. Use when setting up authentication for a Neon project with providers like Stack Auth, Better Auth, or for testing with mock provider." }, { "slug": "NEON_CREATE_AUTH_USER", "name": "Create auth user", "description": "Tool to create a new user in Neon Auth for a specific project branch. Use when you need to add authentication users to a branch that has Neon Auth enabled with the 'stack' provider. The branch must already have Neon Auth configured before creating users." }, { "slug": "NEON_CREATE_BRANCH_DATABASE", "name": "Create branch database", "description": "Creates a new database within a specified project and branch in the Neon platform. This endpoint allows users to set up a new database with a custom name and assign an owner role, facilitating the organization and management of databases within the Neon ecosystem. It should be used when initializing a new database for a specific project or when branching requires a separate database instance. The endpoint is particularly useful for developers and database administrators who need to quickly set up new databases as part of their workflow or application deployment process. Note that this operation only creates the database; additional steps may be required to configure specific schemas, tables, or access permissions within the newly created database." }, { "slug": "NEON_CREATE_BRANCHES_AUTH", "name": "Enable Neon Auth for branch", "description": "Tool to enable Neon Auth integration for a branch. Use when you need to set up authentication for a specific branch in a Neon project." }, { "slug": "NEON_CREATE_BRANCHES_DATA_API", "name": "Create Neon Data API", "description": "Creates a new instance of Neon Data API in the specified branch. The Data API provides a RESTful interface to query your Postgres database using HTTP requests. Use this action when you need to expose database access via REST API endpoints with JWT-based authentication." }, { "slug": "NEON_CREATE_BRANCHES_SNAPSHOT", "name": "Create branch snapshot", "description": "Creates a snapshot from the specified branch at a specific point in time. Snapshots capture the state of a branch and can be used for database versioning, creating backups, or establishing checkpoints for AI agents. Use when you need to preserve the exact state of your database at a moment in time. This endpoint may initiate an asynchronous operation." }, { "slug": "NEON_CREATE_COMPUTE_ENDPOINT", "name": "Create compute endpoint", "description": "Creates a new compute endpoint for a specified branch within a Neon project. This endpoint allows for detailed configuration of database resources, including read/write capabilities, regional placement, autoscaling limits, and connection pooling settings. It's primarily used when setting up new database instances or modifying existing database configurations to meet specific performance, scaling, or operational requirements. The endpoint provides fine-grained control over compute resources, enabling optimized database operations for various use cases from development to production environments." }, { "slug": "NEON_CREATE_NEW_API_KEY", "name": "Create New API Key", "description": "Creates a new personal API key for the authenticated Neon user account. Use this action to generate API keys for programmatic access to Neon services, such as CI/CD pipelines, backend integrations, or development environments. Each key should have a descriptive name to help identify its purpose. IMPORTANT: The returned 'key' value is shown only once - store it securely immediately after creation. To manage organization-level API keys, use the organization API key endpoints instead." }, { "slug": "NEON_CREATE_NEW_PROJECT_BRANCH", "name": "Create new project branch", "description": "Creates a new branch in a Neon project. Branches are copy-on-write clones of the parent branch's data, perfect for creating development/staging environments, testing features, or previewing database changes without affecting production. The branch is created from the project's default branch unless a parent_id is specified. By default, the branch copies all data from the parent ('parent-data'). Note: A branch is created without a compute endpoint. To connect to the branch, use the 'create_compute_endpoint' action to add a read_write or read_only endpoint." }, { "slug": "NEON_CREATE_PROJECT_BRANCH_ANONYMIZED", "name": "Create anonymized branch", "description": "Creates a new branch with anonymized data using PostgreSQL Anonymizer for static masking. Use when developers need to work with masked production data in a safe development environment." }, { "slug": "NEON_CREATE_PROJECTS_TRANSFER_REQUESTS", "name": "Create project transfer request", "description": "Tool to create a transfer request for a Neon project. Use when you need to transfer a project to another account or organization. The transfer request has an expiration time after which it can no longer be used." }, { "slug": "NEON_CREATE_PROJECT_WITH_QUOTA_AND_SETTINGS", "name": "Create project with quota and settings", "description": "Creates a new Neon project with specified configuration settings. This endpoint allows you to set up a customized PostgreSQL environment with various options for resource management, networking, and performance optimization. It's ideal for initializing a new database project with tailored settings for quota management, IP access control, autoscaling, and more. Use this when you need to establish a new Neon project with specific requirements or when you want to take advantage of Neon's advanced features like logical replication or custom maintenance windows. Note that some settings, once configured, may not be easily changed later, so careful consideration of your project needs is recommended before creation." }, { "slug": "NEON_CREATE_VPC_ENDPOINT_LABEL", "name": "Set VPC endpoint restriction", "description": "Sets or updates a VPC endpoint restriction for a Neon project. When a VPC endpoint restriction is set, the project only accepts connections from the specified VPC endpoint, providing network-level security isolation. This is useful for Private Networking scenarios where you want to restrict database access to only connections coming through a specific AWS VPC endpoint. The VPC endpoint must first be assigned to the parent organization (using the organization-level VPC endpoint API) before it can be used as a project restriction. The operation is idempotent - repeated calls with the same parameters will not create additional changes. Note: This is a paid feature requiring a Neon Business or Enterprise plan." }, { "slug": "NEON_CREATE_VPC_ENDPOINT_WITH_LABEL", "name": "Assign or Update VPC Endpoint", "description": "Assigns an AWS VPC endpoint to a Neon organization for Private Networking, or updates the label of an existing VPC endpoint assignment. This enables secure, private database connections through AWS PrivateLink without traversing the public internet. Requirements: - Organization must be on a Business or Enterprise plan - VPC endpoint must be created in your AWS account first - VPC endpoint must be in the same AWS region as your Neon project Use this action to: - Connect a new AWS VPC endpoint to your Neon organization - Update the descriptive label of an existing VPC endpoint assignment Returns the VPC endpoint details including its ID, label, region, and status." }, { "slug": "NEON_DELETE_API_KEY_BY_ID", "name": "Delete api key by id", "description": "Deletes a specific API key from the Neon platform. This endpoint should be used when you need to revoke access for a particular API key, such as when an employee leaves the organization or when you suspect the key has been compromised. The operation is irreversible, so use it with caution. Once deleted, any applications or services using this API key will lose access to Neon's API. This endpoint helps maintain the security of your Neon account by allowing you to manage and control API key access effectively." }, { "slug": "NEON_DELETE_AUTH_DOMAIN_FROM_PROJECT", "name": "Delete auth domain from project", "description": "DEPRECATED: Use `/projects/{project_id}/branches/{branch_id}/auth/domains` instead. Deletes a domain from the redirect_uri whitelist for the specified project. Use when you need to remove an authorized redirect domain for an authentication provider. This operation permanently removes the domain from the whitelist, preventing it from being used as a valid redirect URI." }, { "slug": "NEON_DELETE_AUTH_DOMAINS", "name": "Delete auth domains", "description": "Deletes domains from the redirect_uri whitelist for a specific branch's authentication configuration. Use when you need to revoke access for specific domains in your Neon authentication setup." }, { "slug": "NEON_DELETE_AUTH_OAUTH_PROVIDER", "name": "Delete OAuth provider", "description": "Deletes an OAuth provider configuration from a specific branch in a Neon project. This removes the OAuth authentication integration for the specified provider (Google, GitHub, or Vercel) from the given branch. Use this action when you need to revoke OAuth access or clean up authentication configurations for a particular branch. Note: This operation is permanent and will affect all users authenticating through this provider on this branch. Neon Auth must be enabled on the branch before OAuth providers can be deleted." }, { "slug": "NEON_DELETE_AUTH_USER", "name": "Delete auth user", "description": "Deletes an authentication user from a specified branch within a Neon project. Use this endpoint to permanently remove user access from a particular branch. Important notes: - This operation is permanent and cannot be undone - Successful deletion returns a 204 No Content status - The deleted user will no longer be able to authenticate to the specified branch - This operation only affects the specified branch, not other branches in the project" }, { "slug": "NEON_DELETE_BRANCH_DATA_API", "name": "Delete branch data API", "description": "Deletes the Neon Data API for a specified branch and database. Use this when you need to remove Data API access for a specific database within a branch." }, { "slug": "NEON_DELETE_DATABASE_FROM_BRANCH", "name": "Delete database from branch", "description": "Deletes a specific database from a designated branch within a project in the Neon platform. This endpoint should be used when you need to permanently remove a database and all its associated data from a particular branch of a project. It's crucial to use this endpoint with caution as the deletion operation is irreversible. This tool is particularly useful for cleaning up unnecessary databases, managing storage, or removing test databases that are no longer needed. However, it should not be used for temporary data management; instead, consider using database suspension or archiving features if available. Note that this operation only affects the specified branch and does not impact the database in other branches or the main project." }, { "slug": "NEON_DELETE_ORGANIZATION_API_KEY", "name": "Delete organization api key", "description": "Deletes a specific API key associated with an organization in the Neon platform. This endpoint is used to revoke access for a particular API key, enhancing security by removing unused or compromised keys. It should be used when an API key is no longer needed, when rotating keys for security purposes, or when an API key may have been exposed. Once deleted, the API key cannot be recovered, and any systems using this key will lose access to the Neon API. Ensure you have a backup or replacement key in place before deletion to avoid service interruptions." }, { "slug": "NEON_DELETE_ORGANIZATION_MEMBER", "name": "Delete organization member", "description": "Removes a specific member from a Neon organization. This action permanently revokes the member's access to all organization resources. Use this when an employee leaves the company, changes roles, or their access needs to be revoked. Important notes: - This action cannot be undone; re-adding requires a new invitation - You cannot delete the last admin member of an organization - The member_id must be a valid UUID (not the user's email) - Requires admin permissions on the organization Use fetch_organization_members_by_id first to get valid member IDs." }, { "slug": "NEON_DELETE_PROJECT_BRANCH_BY_ID", "name": "Delete project branch by id", "description": "Deletes a specific branch within a project in the Neon B2B SaaS integration platform. This endpoint permanently removes the specified branch and all associated data from the project. It should be used when a branch is no longer needed, such as after merging changes or abandoning a development path. Caution should be exercised when using this endpoint, as the deletion is irreversible. It's important to ensure that any valuable data or configurations in the branch have been backed up or merged before deletion. This operation cannot be undone, so double-checking the project_id and branch_id before execution is crucial to avoid accidental deletions." }, { "slug": "NEON_DELETE_PROJECT_BRANCH_ROLE", "name": "Delete project branch role", "description": "Deletes a PostgreSQL role from a specific branch within a Neon project. This permanently removes the role and its associated database permissions. Use this endpoint to: - Remove obsolete user accounts from a database branch - Clean up roles after application decommissioning - Revoke access for former team members Important notes: - This operation is permanent and cannot be undone - The deletion triggers an async 'apply_config' operation on the compute endpoint - If the role doesn't exist, returns 204 No Content (idempotent behavior) - If the role exists and is deleted, returns 200 OK with role and operation details - You cannot delete the default owner role created with the database" }, { "slug": "NEON_DELETE_PROJECT_BY_ID", "name": "Delete project by id", "description": "Permanently deletes a Neon PostgreSQL project and all its associated resources. WARNING: This is a destructive operation that cannot be undone. All data, branches, endpoints, databases, and configurations will be permanently removed. Use this action when: - A project is no longer needed - Cleaning up test/development resources - Removing unused projects to free up quota Returns the details of the deleted project upon successful deletion. Returns 404 if the project does not exist or is not accessible." }, { "slug": "NEON_DELETE_PROJECT_ENDPOINT", "name": "Delete project endpoint", "description": "Deletes a specific endpoint within a Neon project. This operation permanently removes the endpoint and all associated resources, such as configurations and access points. Use this endpoint when you need to decommission or clean up unused endpoints in your project. It's important to note that this action is irreversible, so ensure you have backed up any necessary data or configurations before proceeding. This endpoint should be used with caution, as it will immediately terminate access to the specified endpoint and may impact any systems or applications relying on it." }, { "slug": "NEON_DELETE_PROJECT_JWKS_BY_ID", "name": "Delete project jwks by id", "description": "Deletes a specific JSON Web Key Set (JWKS) associated with a given project in the Neon B2B SaaS integration platform. This endpoint is used to remove outdated or unnecessary cryptographic keys from a project's key management system. It should be used when rotating keys, decommissioning integrations, or as part of regular key hygiene practices. The operation is irreversible, so caution should be exercised to ensure the correct JWKS is being deleted. This endpoint does not provide information about the JWKS being deleted or return the deleted keys for security reasons." }, { "slug": "NEON_DELETE_PROJECT_PERMISSION", "name": "Delete project permission", "description": "Deletes a specific permission associated with a project in the Neon B2B SaaS integration platform. This endpoint is used to remove access rights or privileges from a project, which is crucial for maintaining proper access control and security. It should be used when you need to revoke or remove a particular permission that is no longer required or valid for the project. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint requires both the project ID and the specific permission ID to ensure precise permission management within the project context." }, { "slug": "NEON_DELETE_PROJECT_SNAPSHOT", "name": "Delete project snapshot", "description": "Deletes a specific snapshot for a project in Neon. Use when you need to remove an old or unnecessary snapshot to free up storage or clean up resources. **Note**: This endpoint is currently in Beta." }, { "slug": "NEON_DELETE_VPC_ENDPOINT_BY_IDS", "name": "Delete vpc endpoint by ids", "description": "Permanently deletes a VPC endpoint from a Neon organization in a specified AWS region. This removes the private network connection between your AWS VPC and Neon's service. IMPORTANT: This operation is irreversible. Once a VPC endpoint is deleted from a Neon organization, it cannot be re-added to the same organization. Use with caution. Requirements: - Organization must be on the Scale plan (VPC/Private Networking is not available on Free plan) - Only AWS regions are supported (not Azure) - The VPC endpoint must exist in the specified organization and region This action is useful when decommissioning private network connections or cleaning up unused VPC endpoints. Deleting a VPC endpoint will disrupt any applications relying on private connectivity through that endpoint." }, { "slug": "NEON_DELETE_VPC_ENDPOINT_BY_PROJECT_ID", "name": "Delete vpc endpoint by project id", "description": "Deletes a specific VPC endpoint within a designated project in the Neon platform. This endpoint should be used when you need to remove a VPC endpoint that is no longer required or has become obsolete. The operation is irreversible, so it should be used with caution. Once a VPC endpoint is deleted, any connections or integrations relying on it will be disrupted. This endpoint is particularly useful for cleaning up resources and managing network configurations in your Neon projects." }, { "slug": "NEON_DISABLE_BRANCHES_AUTH", "name": "Disable branches auth", "description": "Tool to disable Neon Auth for a specific branch in a Neon project. Use when you need to remove authentication integration for a branch. This operation can optionally delete the `neon_auth` schema from the database by setting delete_data to true." }, { "slug": "NEON_FETCH_DATABASE_FOR_BRANCH", "name": "Fetch database for branch", "description": "Retrieves a list of databases associated with a specific project and branch in the Neon platform. This endpoint allows developers to view all databases within a particular project and branch context, which is useful for managing different environments (e.g., development, staging, production) or versions of an application's database setup. It should be used when you need to inventory the databases in a specific branch or verify the existence of databases in a particular project environment. The endpoint does not provide detailed information about each database's schema or contents; it's primarily for listing purposes." }, { "slug": "NEON_FETCH_ORGANIZATION_MEMBERS_BY_ID", "name": "Fetch organization members by id", "description": "Retrieves a list of all members associated with a specific organization in the Neon B2B SaaS integration platform. This endpoint allows you to fetch detailed information about the users or entities that belong to the organization, which is crucial for managing access, roles, and permissions within the platform. Use this endpoint when you need to review the current membership of an organization, audit user access, or gather member information for reporting purposes. The endpoint returns comprehensive member details, but it does not modify any data or provide information about non-member users. Keep in mind that for large organizations, the response may be paginated to manage the data volume efficiently." }, { "slug": "NEON_FETCH_VPCENDPOINT_DETAILS_BY_ID", "name": "Fetch vpcendpoint details by id", "description": "Retrieves the current state and configuration details of a specific VPC endpoint assigned to a Neon organization. VPC endpoints enable private connectivity between your AWS VPC and Neon databases using AWS PrivateLink, bypassing the public internet. Prerequisites: - Organization must be on the Scale plan or higher (VPC Private Networking is not available on Free or Launch plans) - VPC endpoint must be previously assigned using 'create_vpc_endpoint_with_label' action Use cases: - Check the operational state of a VPC endpoint (new, accepted, available, pending, rejected) - View which projects are restricted to use this VPC endpoint - Verify endpoint configuration for compliance and security auditing - Troubleshoot private connectivity issues Note: This is a read-only endpoint. To modify VPC endpoint configuration, use 'create_vpc_endpoint_with_label' or 'delete_vpc_endpoint_by_ids' actions." }, { "slug": "NEON_FINALIZE_BRANCH_RESTORE", "name": "Finalize branch restore", "description": "Finalizes the restore operation for a branch created from a snapshot. This updates the branch to function as the original branch it replaced by: reassigning computes from the original branch (which restarts them), renaming the restored branch to the original's name, and renaming the original branch. Only applies to branches created using the restoreSnapshot endpoint." }, { "slug": "NEON_GET_AUTH", "name": "Get auth", "description": "Retrieves authentication information about the current API request credentials. Use this action to verify which account and authentication method are being used for API calls, which is helpful for debugging authentication issues or confirming the identity of the calling user or API key." }, { "slug": "NEON_GET_AUTH_ALLOW_LOCALHOST", "name": "Get auth allow localhost", "description": "Retrieves the allow localhost configuration for a specific branch in a Neon project. Use when you need to check if localhost connections are permitted for a branch's authentication settings." }, { "slug": "NEON_GET_AUTH_EMAIL_PROVIDER", "name": "Get auth email provider", "description": "Retrieves the email provider configuration for Neon Auth on a specific branch. Returns SMTP configuration details if a custom provider is configured, or just sender information if using the default Neon email provider. Use this action to verify email settings before testing authentication flows or troubleshooting email delivery issues." }, { "slug": "NEON_GET_AVAILABLE_PRELOAD_LIBRARIES", "name": "Get available preload libraries", "description": "Retrieves the list of available shared preload libraries for a Neon project. Shared preload libraries are PostgreSQL extensions that can be loaded at server startup using the shared_preload_libraries setting. Use this action when you need to: - Discover which PostgreSQL extensions are available for your project - Check versions of available extensions (TimescaleDB, pg_cron, etc.) - Identify experimental vs. stable extensions before configuration - Review default libraries included in your project configuration Returns details about each library including name, version, description, and whether it's experimental or included by default. Common extensions include timescaledb (time-series data), pg_cron (job scheduling), pg_partman_bgw (partition management), and vector search extensions." }, { "slug": "NEON_GET_BRANCHES_ANONYMIZED_STATUS", "name": "Get branches anonymized status", "description": "Retrieves the current status of an anonymized branch, including its state and progress information. This endpoint allows you to monitor the anonymization process from initialization through completion. Only anonymized branches will have status information available. Use this action when you need to: - Monitor the progress of an anonymization process - Check the state of an anonymized branch (created, initialized, anonymizing, anonymized, error) - View details about the most recent anonymization attempt - Identify when an anonymization operation failed Note: This endpoint is currently in Beta." }, { "slug": "NEON_GET_BRANCHES_BACKUP_SCHEDULE", "name": "Get branches backup schedule", "description": "Retrieves the backup schedule configuration for a specified branch within a Neon project. This endpoint provides information about when backups are created and how long they are retained. Use this when you need to verify or audit the backup schedule settings for a branch. Note: This endpoint is currently in Beta." }, { "slug": "NEON_GET_BRANCHES_DATA_API", "name": "Get Neon Data API for branch", "description": "Retrieves the Neon Data API information for a specific branch and database. Use when you need to access the Data API URL, deployment status, or configuration settings for a particular database within a branch." }, { "slug": "NEON_GET_BRANCHES_FOR_PROJECT", "name": "Get branches for project", "description": "Retrieves a list of branches associated with a specific project in the Neon B2B SaaS integration platform. This endpoint should be used when you need to get an overview of all branches within a particular project, which is useful for version management and workflow control. It provides information about different versions or development stages of the project, allowing for efficient project management and collaboration. The endpoint is particularly helpful when planning merges, reviewing project history, or deciding on which branch to base new development work." }, { "slug": "NEON_GET_BRANCHES_MASKING_RULES", "name": "Get branches masking rules", "description": "Retrieves the masking rules for the specified anonymized branch. Masking rules define how sensitive data should be anonymized using PostgreSQL Anonymizer. Use this when you need to view the data anonymization configuration for a branch. Note: This endpoint is currently in Beta." }, { "slug": "NEON_GET_BRANCH_ROLES_FOR_PROJECT", "name": "Get branch roles for project", "description": "Retrieves the roles associated with a specific branch within a project in the Neon B2B SaaS integration platform. This endpoint is used to fetch the current role assignments for a given project and branch combination, which is essential for managing access control and permissions within the Neon ecosystem. It should be used when you need to review or audit the roles assigned to a particular branch, such as before making changes to permissions or when verifying the current access structure. The endpoint does not modify any roles; it only provides a read-only view of the existing role assignments. Keep in mind that the response will only include roles for the specified branch and does not provide information about roles in other branches or at the project level." }, { "slug": "NEON_GET_CONSUMPTION_HISTORY_PROJECTS", "name": "Get consumption history projects", "description": "Retrieves consumption history for projects within a Neon organization. IMPORTANT: This endpoint is only available for Scale, Business, and Enterprise plan accounts. Free and Launch plans do not have access to this endpoint. Returns metrics including: - active_time_seconds: Time computes were active - compute_time_seconds: Total CPU seconds used (2 CPUs for 1 second = 2) - written_data_bytes: Data written to branches - synthetic_storage_size_bytes: Total storage occupied The org_id parameter is required to identify which organization's projects to query. Results are ordered chronologically (oldest to newest). Rate limit: ~30 requests/minute shared with account consumption endpoint. Note: This API call does NOT wake sleeping compute endpoints." }, { "slug": "NEON_GET_CURRENT_USER_INFORMATION", "name": "Get current user information", "description": "Retrieves the profile information for the currently authenticated user. This endpoint should be used when you need to access details about the user making the API request, such as their username, email, or other account-related information. It's particularly useful for personalizing user experiences or retrieving user-specific settings within the Neon platform. The endpoint doesn't accept any parameters, as it relies solely on the authentication token to identify the user. Note that this endpoint will only return information for the authenticated user and cannot be used to retrieve profiles of other users." }, { "slug": "NEON_GET_ORGANIZATION_API_KEYS", "name": "Get organization api keys", "description": "Retrieves a list of all API keys associated with a specific organization in the Neon B2B SaaS integration platform. This endpoint is crucial for administrators to manage and monitor API access within their organization. It provides a comprehensive view of all active API keys, enabling effective access control and security auditing. Use this endpoint when you need to review, track, or manage the API keys in use by your organization, such as during security reviews or when updating access permissions." }, { "slug": "NEON_GET_PROJECT_BRANCHES", "name": "Get project branches", "description": "Retrieves detailed information about a specific branch within a Neon project. This endpoint allows developers to fetch the current state and configuration of a branch, including its name, creation timestamp, and other relevant metadata. It's particularly useful when you need to verify branch details, check its status, or gather information for further operations on the branch. The endpoint should be used when you require up-to-date information about a single branch in your project's context. Note that this endpoint only provides read access and does not modify any branch data." }, { "slug": "NEON_GET_PROJECT_BRANCH_ROLE", "name": "Get project branch role", "description": "Retrieves detailed information about a specific role within a particular branch of a Neon project. This endpoint is used to fetch the current configuration, permissions, and other relevant details associated with the specified role. It's particularly useful for auditing access controls, verifying role settings, or gathering information before making modifications to role permissions. The endpoint requires precise identification of the project, branch, and role, ensuring that the correct role information is retrieved from the appropriate context within the Neon platform's hierarchical structure." }, { "slug": "NEON_GET_PROJECT_BRANCH_SCHEMA_COMPARISON", "name": "Get project branch schema comparison", "description": "Compares the database schema of a branch with another branch's schema in a Neon project. Returns the difference as a unified diff format string. Use this when you need to understand what schema changes exist between two branches (e.g., before merging, to review migrations, or to verify schema consistency). The comparison can be done at specific points in time using LSN or timestamp parameters for both branches." }, { "slug": "NEON_GET_PROJECT_CONNECTION_URI", "name": "Get project connection uri", "description": "Retrieves the connection URI for a specified project within the Neon B2B SaaS integration platform. This endpoint is crucial for establishing connectivity to a project's resources, enabling access to its data and functionalities. Use this when you need to programmatically obtain the connection details for a specific project, which is essential for integrating with the project's data sources or services. The connection URI serves as a unique identifier and access point for the project, facilitating seamless data exchange and workflow automation between different systems and applications within the Neon ecosystem." }, { "slug": "NEON_GET_PROJECT_ENDPOINT_INFORMATION", "name": "Get project endpoint information", "description": "Retrieves a list of all compute endpoints associated with a specific Neon project. Compute endpoints are the connection points for your Neon PostgreSQL databases. Use this action to get information about endpoint hosts, states, autoscaling settings, and connection pooling configuration. Each endpoint is associated with a branch and includes details like the hostname for database connections, current state (active/idle/suspended), compute unit limits, and region. This is useful for monitoring endpoint health, getting connection strings, or managing compute resources." }, { "slug": "NEON_GET_PROJECT_OPERATION_BY_ID", "name": "Get project operation by id", "description": "Retrieves detailed information about a specific operation within a Neon serverless PostgreSQL project. Use this endpoint to check the status and details of operations such as compute start/suspend, branch creation/deletion, configuration changes, or timeline operations. This is useful for monitoring long-running tasks, verifying operation completion, or debugging failures. Requires both a project ID and operation ID. Returns operation details including status ('scheduling', 'running', 'finished', 'failed'), duration, and associated branch/endpoint IDs. This is a read-only endpoint." }, { "slug": "NEON_GET_SCHEMA_FOR_PROJECT_BRANCH", "name": "Get schema for project branch", "description": "Retrieves the PostgreSQL database schema (DDL) for a specific database on a branch within a Neon project. Returns the schema as SQL statements (similar to pg_dump output), including CREATE TABLE, ALTER TABLE, CREATE INDEX, and other DDL statements. This is useful for understanding the database structure, comparing schemas between branches, or for documentation purposes. The schema can be retrieved at the current point in time or at a specific historical point using either an LSN or timestamp parameter. Note: The branch's compute endpoint must be active for this endpoint to work." }, { "slug": "NEON_GET_USER_ORGANIZATIONS", "name": "Get user organizations", "description": "Retrieves a list of organizations associated with the currently authenticated user in the Neon platform. This endpoint allows users to view all the organizations they are a member of, providing essential information for managing multi-organization access and permissions. It should be used when a user needs to identify their organizational affiliations or when an application needs to determine a user's organization memberships for access control or data segregation purposes. The endpoint does not modify any data and is safe for frequent calls. Note that it only returns organizations the user is actively a member of and won't include pending invitations or previously left organizations." }, { "slug": "NEON_GET_VPC_REGION_ENDPOINTS", "name": "Get vpc region endpoints", "description": "Retrieves a list of VPC endpoints for a specified organization within a particular AWS region. This endpoint allows developers to obtain information about the virtual network interfaces that enable private communication between a VPC and supported AWS services. It should be used when you need to audit, manage, or gather information about the existing VPC endpoints in a specific organizational context and geographic location. The endpoint provides a comprehensive view of how the organization's VPC is connected to various AWS services, which is crucial for network architecture planning and security audits. Note that this endpoint only lists the VPC endpoints; it does not provide detailed configuration information or allow for modifications to the endpoints." }, { "slug": "NEON_LIST_API_KEYS", "name": "List api keys", "description": "Retrieves a list of API keys associated with the authenticated user's Neon account. This endpoint allows developers to view and manage their existing API keys, which are crucial for authentication when making requests to the Neon API. It provides an overview of all active API keys, including their identifiers and potentially other metadata such as creation date or last used date. This tool should be used when you need to audit your API keys, check for any unauthorized keys, or before creating a new key to ensure you're not exceeding any limits. It does not provide the actual secret key values for security reasons, nor does it allow for the creation or deletion of keys." }, { "slug": "NEON_LIST_AUTH_DOMAINS", "name": "List auth domains", "description": "Lists the domains in the redirect_uri whitelist for the specified project and branch. Use when you need to retrieve or verify the allowed domains for authentication redirects." }, { "slug": "NEON_LIST_AUTH_OAUTH_PROVIDERS", "name": "List auth oauth providers", "description": "Lists the OAuth providers for the specified project. DEPRECATED: Use /projects/{project_id}/branches/{branch_id}/auth/oauth_providers instead. This endpoint returns OAuth provider configurations including client IDs and types for the Neon Auth integration." }, { "slug": "NEON_LIST_AUTH_OAUTH_PROVIDERS2", "name": "List Auth OAuth Providers", "description": "Retrieves the OAuth providers configured for Neon Auth on a specific branch. Use this when you need to view the available OAuth authentication providers for a given project and branch combination. This is useful for managing authentication options and verifying which OAuth providers are enabled." }, { "slug": "NEON_LIST_PROJECTS_SNAPSHOTS", "name": "List project snapshots", "description": "Tool to list all snapshots for a specified Neon project. Use when you need to view available snapshots for backup, restore, or data recovery purposes. **Note**: This endpoint is currently in Beta." }, { "slug": "NEON_LIST_SHARED_PROJECTS", "name": "List shared projects", "description": "Retrieves a list of Neon Postgres projects shared with your account. Returns projects that other users have granted you access to, along with pagination info. Use this to view and manage collaborative database projects. Supports filtering by project name/ID and pagination for large result sets." }, { "slug": "NEON_LIST_VPC_VPC_ENDPOINTS", "name": "List VPC endpoints for organization", "description": "Tool to retrieve the list of VPC endpoints for a specified Neon organization across all regions. Use when you need to view or audit all VPC endpoints associated with an organization." }, { "slug": "NEON_MODIFY_BRANCH_DETAILS_IN_PROJECT", "name": "Modify branch details in project", "description": "Updates the details of a specific branch within a project in the Neon platform. This endpoint allows you to modify the name and protection status of an existing branch. It is particularly useful when you need to rename a branch or change its protection settings without creating a new branch. The endpoint uses partial updates, so you can specify only the fields you want to change. This tool should be used when managing branch configurations in a Neon project, but it cannot be used to create new branches or delete existing ones." }, { "slug": "NEON_PATCH_BRANCH_DATABASE_INFORMATION", "name": "Patch branch database information", "description": "Updates the properties of a specific database within a project branch in the Neon platform. This endpoint allows for partial modifications of database attributes, such as changing its name or owner. It should be used when you need to rename a database or transfer ownership to a different role within the same project and branch. The update is performed using the PATCH method, allowing for selective property changes without affecting unspecified attributes. Note that this operation modifies existing database metadata and does not create new databases or alter the actual data within the database." }, { "slug": "NEON_RESET_ROLE_PASSWORD_FOR_BRANCH", "name": "Reset role password for branch", "description": "Resets the password for a PostgreSQL role on a specific Neon branch and generates a new password. Use this when credentials need to be rotated for security purposes (e.g., employee offboarding, suspected compromise, or routine security practices). The response includes the new password - store it securely as it cannot be retrieved later. The new password becomes active once the triggered 'apply_config' operation completes; the old password remains valid until then. Note: This is a destructive operation that invalidates the current password." }, { "slug": "NEON_RESTART_PROJECT_ENDPOINT", "name": "Restart project endpoint", "description": "Restarts a Neon compute endpoint (Postgres instance) within a project. The restart operation suspends and then starts the compute endpoint, which is useful for: - Applying configuration changes - Clearing cached data or connections - Troubleshooting connection or performance issues - Recovering from error states The operation triggers two sequential actions: 'suspend_compute' followed by 'start_compute'. During restart, the endpoint will be briefly unavailable. The response includes the updated endpoint details and the operations triggered. Note: If the endpoint is in a 'locked' state (HTTP 423) due to an ongoing operation, wait for it to complete before retrying. If the endpoint is 'idle', it will be started directly without suspension." }, { "slug": "NEON_RESTORE_PROJECT_BRANCH", "name": "Restore project branch", "description": "This endpoint restores a branch to a specific state or point in time. Use it to recover data, revert changes, or create new branch states based on historical data. The restoration uses either a Log Sequence Number (LSN) or timestamp from the source branch. Important: For self-restoration or branches with children, use preserve_under_name to save the current state. Note: Restoration time varies based on data volume and restoration point." }, { "slug": "NEON_RESTORE_SNAPSHOT", "name": "Restore snapshot to new branch", "description": "Tool to restore a Neon snapshot to a new branch. Use when you need to recover data from a snapshot or create a branch from a previous point in time. This endpoint is currently in Beta." }, { "slug": "NEON_RETRIEVE_ACCOUNT_CONSUMPTION_HISTORY", "name": "Retrieve account consumption history", "description": "Retrieves the consumption history for a specified account within the Neon platform. This endpoint provides detailed information about resource usage and associated costs over a given time period. It's particularly useful for analyzing usage patterns, forecasting future resource needs, and managing costs in the Neon B2B SaaS integration platform. The endpoint returns data such as compute time, storage usage, API calls, and any other billable resources specific to the Neon service. Users can specify a date range and optionally filter by resource types to get a granular view of their consumption. This tool should be used when detailed analytics on resource utilization and spending are required, such as for budget planning, usage optimization, or billing reconciliation. It does not provide real-time usage data and may have a slight delay in reflecting the most recent consumption." }, { "slug": "NEON_RETRIEVE_ALL_REGIONS", "name": "Retrieve all regions", "description": "Retrieves a list of available geographic regions supported by the Neon B2B SaaS integration platform. This endpoint provides crucial information about the different areas where the API is accessible and optimized for service delivery. It should be used when developers need to understand the platform's global coverage, select appropriate endpoints for data localization, or implement region-specific configurations. The endpoint returns details about each region, which may include region identifiers, names, and potentially associated endpoints or data centers. This information is essential for ensuring compliance with data residency regulations and optimizing performance by choosing the most suitable region for specific integration needs." }, { "slug": "NEON_RETRIEVE_BRANCH_DATABASE_DETAILS", "name": "Retrieve branch database details", "description": "Retrieves detailed information about a specific database within a Neon project and branch. This endpoint allows developers to fetch crucial metadata and configuration details for a given database, enabling them to monitor and manage their database resources effectively. It should be used when you need to inspect the current state, settings, or properties of a particular database in your Neon environment. The endpoint provides a snapshot of the database's characteristics but does not modify any data or settings." }, { "slug": "NEON_RETRIEVE_BRANCH_ENDPOINTS", "name": "Retrieve branch endpoints", "description": "Retrieves all compute endpoints associated with a specific branch in a Neon project. Compute endpoints are the connection points for accessing your PostgreSQL database - they provide the hostname and configuration needed to connect to your database. Use this action when you need to: - Get connection details (host, region) for a branch's database - Check endpoint status (active, idle, suspended) - Review autoscaling and connection pooling settings - Monitor endpoint activity and configuration Returns a list of endpoints with details like host, region, current state, autoscaling limits, and pooler configuration. Most branches have one read_write endpoint, but may have additional read-only replicas." }, { "slug": "NEON_RETRIEVE_JWKS_FOR_PROJECT", "name": "Retrieve jwks for project", "description": "Retrieves the JSON Web Key Set (JWKS) for a specified project. This endpoint should be used when a client needs to obtain the public keys necessary for verifying JSON Web Tokens (JWTs) issued by the project. The JWKS contains the cryptographic keys used in the project's authentication process. It's essential for implementing secure, token-based authentication in applications integrated with the Neon platform. This endpoint is typically called during the initial setup of a client application or when rotating security keys. Note that the JWKS should be cached by clients to reduce unnecessary API calls, but periodic refreshes are recommended to ensure up-to-date keys." }, { "slug": "NEON_RETRIEVE_ORGANIZATION_BY_ID", "name": "Retrieve organization by id", "description": "Retrieves detailed information about a specific organization within the Neon platform. This endpoint allows you to access comprehensive data about an organization, including its configuration, members, and associated projects. Use this when you need to view or verify an organization's current state, such as checking membership, reviewing settings, or auditing organization-level information. The endpoint returns a snapshot of the organization at the time of the request and does not provide historical data or future projections. It's particularly useful for administrative tasks, reporting, and maintaining organizational oversight within the Neon ecosystem." }, { "slug": "NEON_RETRIEVE_ORGANIZATION_INVITATIONS", "name": "Retrieve organization invitations", "description": "Retrieves a list of all pending invitations for a specified organization. This endpoint allows organization administrators to view and manage outstanding invitations sent to potential new members. It should be used when there's a need to track who has been invited to join the organization, review invitation statuses, or perform invitation-related administrative tasks. The endpoint returns details about each invitation, which may include the invitee's email, the invitation date, and the current status. It does not provide information about active members or expired invitations." }, { "slug": "NEON_RETRIEVE_ORGANIZATION_MEMBER_INFO", "name": "Retrieve organization member info", "description": "Retrieves detailed information about a specific member within an organization in the Neon B2B SaaS integration platform. This endpoint allows you to fetch comprehensive data about an individual member, including their user ID, assigned role within the organization, join date, and potentially other relevant details. It's particularly useful for organization administrators who need to review or verify a member's status and permissions. The endpoint requires both the organization ID and the member ID to be specified, ensuring precise and secure access to member information. Use this when you need to access or display detailed information about a particular member in your organization management interfaces or for auditing purposes." }, { "slug": "NEON_RETRIEVE_PROJECT_ENDPOINT_DETAILS", "name": "Retrieve project endpoint details", "description": "Retrieves detailed information about a specific compute endpoint within a Neon serverless PostgreSQL project. Compute endpoints are the connection points for your Neon databases. Use this action to get information about a specific endpoint including its hostname for connections, autoscaling settings, current state (active/idle/suspended), connection pooling config, and PostgreSQL settings. This is useful for getting the connection hostname, checking endpoint health, verifying compute resources, or troubleshooting connection issues. The endpoint_id can be obtained from the list endpoints action. Note: This is a read-only operation." }, { "slug": "NEON_RETRIEVE_PROJECT_OPERATIONS", "name": "Retrieve project operations", "description": "Retrieves a list of operations associated with a specific project in the Neon B2B SaaS integration platform. This endpoint should be used when you need to fetch all operations related to a particular project, such as for monitoring ongoing tasks, auditing completed actions, or planning future integrations. It provides a comprehensive view of the project's operational landscape, which is crucial for managing complex integration workflows. Note that this endpoint only returns the operations list and may not include detailed information about each operation's current status or results; separate API calls might be necessary for such details." }, { "slug": "NEON_RETRIEVE_PROJECT_PERMISSIONS", "name": "Retrieve project permissions", "description": "Retrieves the current permissions settings for a specific project within the Neon B2B SaaS integration platform. This endpoint allows users to view the access rights and roles assigned to various users or entities for the specified project. It should be used when you need to audit or review the current permission structure of a project, such as before making changes or for compliance checks. The endpoint returns a comprehensive list of permissions but does not modify any settings. It's important to note that this endpoint only provides a snapshot of permissions at the time of the call and does not reflect any pending changes or provide historical permission data." }, { "slug": "NEON_RETRIEVE_PROJECTS_LIST", "name": "Retrieve projects list", "description": "Retrieves a list of all Neon projects associated with the authenticated user's account. This endpoint provides a comprehensive overview of the user's projects, enabling efficient project management and integration workflows. It should be used when you need to obtain information about multiple projects at once, such as for dashboard displays, project selection interfaces, or batch processing tasks. The endpoint returns project details in JSON format, which can be easily parsed and utilized in various applications or data analysis processes. Note that while this endpoint gives a broad view of projects, it may not include detailed data sets or specific project contents, which might require additional API calls. IMPORTANT: When using a Personal API key with an organization account, the org_id parameter is REQUIRED. If you don't know the org_id, first call NEON_GET_USER_ORGANIZATIONS to discover it. Organization API keys don't need org_id as they're already scoped to an organization." }, { "slug": "NEON_RETRIEVE_VPC_ENDPOINTS_FOR_PROJECT", "name": "Retrieve vpc endpoints for project", "description": "Retrieves a list of VPC (Virtual Private Cloud) endpoints associated with a specific project in the Neon B2B SaaS integration platform. This endpoint allows developers to fetch information about private network connections that enable secure communication between the project's resources and various AWS services without traversing the public internet. Use this endpoint when you need to audit, manage, or view the current VPC endpoint configurations for a given project. It's particularly useful for ensuring proper network isolation and security in complex integration scenarios. The endpoint does not create or modify VPC endpoints; it only provides read access to existing configurations." }, { "slug": "NEON_REVEAL_ROLE_PASSWORD_IN_BRANCH", "name": "Reveal role password in branch", "description": "Reveals the password for a specific role within a branch of a Neon project. This endpoint is used when you need to retrieve a previously hidden or encrypted password for a database role. It's particularly useful for administrators who need to access or share role credentials securely. The endpoint should be used cautiously, as it exposes sensitive information. It does not modify the password, only retrieves it. Note that frequent use of this endpoint may be logged or restricted for security purposes." }, { "slug": "NEON_SEND_AUTH_TEST_EMAIL", "name": "Send auth test email", "description": "Tool to send a test email using specified SMTP configuration for Neon Auth. Use when validating SMTP settings or testing email delivery for Neon Auth integration on a specific branch." }, { "slug": "NEON_SEND_ORGANIZATION_INVITATIONS", "name": "Send organization invitations", "description": "Creates and sends invitations to join an organization in the Neon B2B SaaS integration platform. This endpoint allows administrators to invite multiple users simultaneously, specifying their email addresses and intended roles within the organization. It should be used when expanding the organization's membership or when assigning new roles to incoming members. The endpoint does not verify if the email addresses are associated with existing Neon accounts; it simply sends out invitations to the specified email addresses." }, { "slug": "NEON_SET_BRANCH_AS_DEFAULT", "name": "Set branch as default", "description": "Sets a specified branch as the default branch for a given project in Neon. This endpoint allows users to designate a particular branch as the primary or main branch for a project, which can be useful for organizing workflows and setting default behaviors. The operation is performed using a POST request, indicating that it modifies the state of the project. Use this endpoint when you need to change the default branch of a project, such as after creating a new branch or deciding to switch the main development focus. It's important to note that this action may affect how other operations interact with the project, as many systems use the default branch as a reference point for various functionalities." }, { "slug": "NEON_START_BRANCH_ANONYMIZATION", "name": "Start branch anonymization", "description": "Starts the anonymization process for an anonymized branch that is in the initialized, error, or anonymized state. This will apply all defined masking rules to anonymize sensitive data in the branch databases. The branch must be an anonymized branch to start anonymization. Note: This endpoint is currently in Beta." }, { "slug": "NEON_START_ENDPOINT_FOR_PROJECT", "name": "Start endpoint for project", "description": "Starts a suspended or idle compute endpoint for a Neon PostgreSQL project. Neon compute endpoints automatically suspend after a period of inactivity to save resources. Use this action to wake up a suspended endpoint and make it available for database connections. The endpoint will transition from 'idle' or 'suspended' state to 'active'. If the endpoint is already active, the call is idempotent and returns the current endpoint state with no operations. The response includes the endpoint details and any triggered operations. Note: Endpoint startup typically takes a few seconds." }, { "slug": "NEON_SUSPEND_PROJECT_ENDPOINT_BY_ID", "name": "Suspend project endpoint by id", "description": "Suspends a specific endpoint within a project in the Neon B2B SaaS integration platform. This operation temporarily disables the endpoint, preventing it from processing further requests until it is resumed. Use this endpoint when you need to conserve resources, perform maintenance, or temporarily halt operations for a particular integration point. The suspension is reversible, allowing you to resume the endpoint's functionality when needed. This tool is particularly useful for managing resource utilization and costs in your Neon project by allowing fine-grained control over individual endpoints." }, { "slug": "NEON_TRANSFER_PROJECTS_BETWEEN_ORGANIZATIONS", "name": "Transfer projects between organizations", "description": "Transfers selected projects from one organization to another organization. Use this when you need to move projects between organizations, for example during organizational restructuring or mergers. Note that projects with GitHub or Vercel integrations cannot be transferred and will cause the request to fail." }, { "slug": "NEON_TRANSFER_USER_PROJECTS_TO_ORGANIZATION", "name": "Transfer user projects to organization", "description": "Transfers multiple projects from the authenticated user's personal account to a specified organization within the Neon B2B SaaS integration platform. This endpoint allows for bulk transfer of projects, enabling efficient management of project ownership and organization. It should be used when reorganizing project structures or when moving projects from individual ownership to team or company-wide access. The endpoint is limited to transferring a maximum of 400 projects in a single request, which helps maintain system performance and prevents abuse. It's important to note that this operation is likely irreversible, so users should exercise caution and confirm the transfer details before execution." }, { "slug": "NEON_UPDATE_AUTH_ALLOW_LOCALHOST", "name": "Update auth allow localhost", "description": "Updates the allow localhost configuration for a specific branch in a Neon project. This endpoint controls whether connections from localhost are permitted to the branch. Use this when you need to enable or disable localhost access for development or testing purposes." }, { "slug": "NEON_UPDATE_AUTH_EMAIL_PROVIDER", "name": "Update branch auth email provider", "description": "Updates the email provider configuration for a specific branch's authentication system. Currently, the Neon API only supports the 'shared' email provider type. To use this action, provide only sender_email and sender_name (leave host, port, username, and password empty). The shared provider uses Neon's managed email infrastructure. Note: Custom SMTP configuration (host, port, username, password) is not yet supported by the API. Attempting to configure a custom SMTP server will result in an error. Prerequisites: Neon Auth must be enabled for the branch before updating the email provider." }, { "slug": "NEON_UPDATE_AUTH_OAUTH_PROVIDERS", "name": "Update auth oauth providers", "description": "Updates OAuth provider credentials for a Neon project's authentication configuration. DEPRECATED: Use `/projects/{project_id}/branches/{branch_id}/auth/oauth_providers/{oauth_provider_id}` instead. This endpoint allows updating client ID and client secret for OAuth providers (Google, GitHub, Microsoft, or Vercel)." }, { "slug": "NEON_UPDATE_BRANCHES_DATA_API", "name": "Update branches data API", "description": "Updates the Neon Data API configuration for the specified branch. Use when you need to modify Data API settings such as aggregates, anonymous role, search paths, schemas, JWT settings, or CORS configuration. The schema cache is always refreshed as part of this operation." }, { "slug": "NEON_UPDATE_BRANCHES_MASKING_RULES", "name": "Update branches masking rules", "description": "Updates the masking rules for the specified anonymized branch. Masking rules define how sensitive data should be anonymized using PostgreSQL Anonymizer. Use this when you need to add, modify, or remove data anonymization rules for a branch. Note: This endpoint is currently in Beta." }, { "slug": "NEON_UPDATE_ORGANIZATION_MEMBER_ROLE", "name": "Update organization member role", "description": "Updates the role of a specific member within an organization in the Neon B2B SaaS integration platform. This endpoint allows changing a member's role between 'admin' and 'member', which affects their permissions and access levels within the organization. Use this endpoint when you need to promote a regular member to an admin role or demote an admin to a regular member role. It's crucial for managing access control and permissions within your organization. Note that this operation may have significant implications on the member's ability to manage resources and other members within the organization." }, { "slug": "NEON_UPDATE_PROJECT_COMPUTE_ENDPOINT_SETTINGS", "name": "Update project compute endpoint settings", "description": "Updates the configuration of a specific compute endpoint within a Neon project. This endpoint allows fine-tuning of various settings such as autoscaling limits, provisioner type, connection pooling, and auto-suspend behavior. It's particularly useful for optimizing performance, resource allocation, and cost management of your Neon compute endpoints. The endpoint should be used when you need to modify the behavior or resources of an existing compute endpoint to better suit your application's needs or to implement changes in your infrastructure strategy. Note that some parameters are deprecated, and care should be taken to use the most current features and settings." }, { "slug": "NEON_UPDATE_PROJECT_SETTINGS_BY_ID", "name": "Update project settings by id", "description": "Updates the configuration and settings of a specific Neon project. This endpoint allows fine-grained control over various aspects of a project, including resource quotas, security settings, maintenance windows, and default endpoint configurations. It's particularly useful for adjusting project parameters to optimize performance, enhance security, or comply with specific operational requirements. The endpoint should be used when changes to project-wide settings are necessary, such as modifying resource limits, adjusting IP access controls, or reconfiguring maintenance schedules. Note that some changes, like enabling logical replication, may have significant impacts on project operations and cannot be reversed. Care should be taken when modifying critical settings to avoid unintended consequences on project functionality or availability." }, { "slug": "NEON_UPDATE_PROJECTS_SNAPSHOTS", "name": "Update project snapshot", "description": "Tool to update the name of a specific snapshot in a Neon project. Use when you need to rename a snapshot to better reflect its purpose or content. This endpoint is currently in Beta." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neon_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key for authentication. Obtain it from your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "weathermap", "name": "OpenWeatherMap", "logo": "https://logos.composio.dev/api/weathermap", "description": "WeatherMap provides visual weather data, forecasts, and mappings, helping users understand climate patterns or track severe weather conditions", "category": "developer tools", "authSchemes": [ "NO_AUTH" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEATHERMAP_GEOCODE_LOCATION", "name": "Geocode Location to Coordinates", "description": "Tool to resolve a human place name into canonical lat/lon coordinates using OpenWeather Geocoding API. Use when you need to convert location strings (city names, addresses) into coordinates for weather forecasts or other location-based queries. Returns up to 5 candidate matches; the first result is typically the most relevant." }, { "slug": "WEATHERMAP_WEATHER", "name": "Weather Info", "description": "Tool for querying the OpenWeatherMap API. Returns current weather conditions only — no UV index, AQI, or official alerts. Timestamps are in UTC; apply the timezone offset field before grouping by local day." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "WeatherMap", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "posthog", "name": "PostHog", "logo": "https://logos.composio.dev/api/posthog", "description": "PostHog is an open-source product analytics platform tracking user interactions and behaviors to help teams refine features, improve funnels, and reduce churn", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 507, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "POSTHOG_ADD_DASHBOARD_COLLABORATORS_WITH_ACCESS_LEVEL", "name": "Add dashboard collaborators with access level", "description": "Add collaborators to a specific project dashboard. Requires 'project_id' and 'dashboard_id'. Supports JSON, form-urlencoded, and multipart data. Returns added collaborator details. Auth: 'PersonalAPIKeyAuth'. IMPORTANT REQUIREMENTS: 1. The dashboard must have restriction_level > 21 (not on the lowest restriction level). Use POSTHOG_PARTIAL_UPDATE_OF_A_PROJECT_S_DASHBOARD to set restriction_level to 37. 2. The user being added cannot be the dashboard owner or a project admin (they already have inherent access). 3. Currently only level 37 (edit access) can be explicitly specified. 4. Use POSTHOG_LIST_ORGANIZATION_MEMBERS_WITH_PAGINATION to find valid user UUIDs." }, { "slug": "POSTHOG_ADD_MEMBER_TO_ORGANIZATION_ROLE", "name": "Add member to organization role", "description": "Add a member to an organization role by submitting their details and UUID in JSON/form, using organization and role IDs. Requires PersonalAPIKeyAuth. Success gives a 201 status." }, { "slug": "POSTHOG_ADD_PERSONS_TO_STATIC_COHORT", "name": "Add persons to static cohort", "description": "Add persons to a static cohort by their UUIDs. Use when you need to manually add specific users to a static cohort. Only works with static cohorts (is_static=true), not dynamic cohorts." }, { "slug": "POSTHOG_ADD_PRODUCT_INTENT_TO_PROJECT", "name": "Add product intent to project", "description": "Tool to add a product intent to a PostHog project. Use when you need to register a project's intention to use a specific PostHog product feature. Product intents help track which features (product analytics, feature flags, data warehouse, experiments, surveys) a project plans to use." }, { "slug": "POSTHOG_ADD_PROJECT_SPECIFIC_MEMBER_ROLES", "name": "Add project specific member roles", "description": "Add members with specific roles to a project by providing their user_uuid and level (member or admin). Requires project_id in the URL. Supports JSON, form-data, and form-urlencoded input. Returns the newly created membership data upon success. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control." }, { "slug": "POSTHOG_ADD_SESSION_RECORDING_TO_PLAYLIST", "name": "Add session recording to playlist", "description": "Add an existing session recording to a playlist. This endpoint associates a specific session recording with a playlist, making it part of that collection. Requires 'project_id' (project identifier), 'short_id' (playlist identifier), and 'session_recording_id' (recording identifier) in the URL. Optional body parameters can be used to update playlist properties. Works with both 'collection' and 'filters' type playlists. Returns the updated playlist details on success." }, { "slug": "POSTHOG_APPEND_DESKTOP_RECORDING_SEGMENTS", "name": "Append Desktop Recording Segments", "description": "Append transcript segments to an existing desktop recording for real-time streaming support. Use when you need to add new transcript segments to a recording in batches as they become available from transcription services like AssemblyAI. Requires desktop_recording:write scope." }, { "slug": "POSTHOG_ARCHIVE_SURVEY_RESPONSE", "name": "Archive survey response", "description": "Tool to archive a single survey response. Use when you need to hide a survey response from analytics while preserving it in the database." }, { "slug": "POSTHOG_ASSIGN_FEATURE_FLAG_ROLE_BASED_ACCESS", "name": "Assign feature flag role based access", "description": "Set up role-based access for a feature flag using `project_id` and `feature_flag_id`. Submit access info in JSON or form format, with `feature_flag:write` rights. Success returns new details with a 201 code." }, { "slug": "POSTHOG_BULK_CREATE_ORGANIZATION_INVITES", "name": "Bulk create organization invites", "description": "POST /api/organizations/{organization_id}/invites/bulk/: Bulk-create organization invites with customizable levels, sender details, and validation checks. Supports email automation and private project access settings." }, { "slug": "POSTHOG_BULK_DELETE_FEATURE_FLAGS", "name": "Bulk delete feature flags", "description": "Bulk delete feature flags by filter criteria or explicit IDs. Use when you need to delete multiple feature flags at once. Accepts either 'filters' (same filter params as list endpoint: search, active, type, etc.) or 'ids' (explicit list of flag IDs). Returns operation status and count of deleted flags. Use '@current' as project_id for the current project context." }, { "slug": "POSTHOG_BULK_DELETE_PERSONS", "name": "Create Persons Bulk Delete", "description": "Tool to bulk delete persons by PostHog person IDs or distinct IDs. Use when you need to delete multiple persons at once (up to 100 per call). Only events captured before the request will be deleted. Deletion is asynchronous and batched at 5AM UTC every Sunday." }, { "slug": "POSTHOG_CANCEL_PROJECT_INSIGHTS", "name": "Cancel insights for a project", "description": "The \"/api/projects/{project_id}/insights/cancel/\" endpoint allows users to cancel insights for a project by providing a project ID and insight details in JSON or CSV, and confirms cancellation in the response." }, { "slug": "POSTHOG_CAPTURE_EVENT", "name": "Capture Event", "description": "Capture (ingest) a single analytics event into PostHog using the public ingestion API and a project API key. Use when you need to send custom events like 'lesson_started', 'quiz_completed', or any user behavior tracking. This bypasses the private /api/* endpoints and uses PostHog's public write-only ingestion endpoint." }, { "slug": "POSTHOG_CHECK_PIPELINE_DESTINATION_UPDATES", "name": "Check pipeline destination updates", "description": "Check for available updates to a pipeline destination plugin by comparing the currently installed version (tag) with the latest version available in the plugin's repository. Use this to determine if a pipeline destination plugin can be upgraded to a newer version. Returns update information including current tag, latest tag, and whether an update is available. Note: This endpoint may require admin/staff permissions or may only be available for custom organization-owned plugins (not global PostHog Inc. plugins)." }, { "slug": "POSTHOG_CHECK_PIPELINE_IMPORT_APP_UPDATES", "name": "Check pipeline import app updates", "description": "Retrieve the latest update information for a specific pipeline import app by its ID within an organization. This endpoint returns details such as plugin type, name, description, and version data. Requires 'id' and 'organization_id' as path parameters." }, { "slug": "POSTHOG_CHECK_PIPELINE_PLUGIN_UPDATE_STATUS", "name": "Check pipeline plugin update status", "description": "Get update status for a specific pipeline transformation plugin by its unique ID within an organization. This endpoint requires the 'organization_id' and 'plugin' IDs and returns details like plugin type, name, and update information." }, { "slug": "POSTHOG_CHECK_PROJECT_DEMO_DATA_GENERATION_STATUS", "name": "Check project's demo data generation status", "description": "Check if a project is currently generating demo data. This endpoint retrieves the demo data generation status for a specific project within an organization. Returns whether the project is currently in the process of generating demo data. **Important Authentication Note**: This endpoint requires session-based authentication (cookie-based) and does not support Personal API Key authentication. It may return 403 Forbidden when using API keys. This endpoint is primarily intended for use within the PostHog web application." }, { "slug": "POSTHOG_CREATE_AI_INSIGHT", "name": "Create Max AI insight and query", "description": "Tool to create and query insights using PostHog's Max AI assistant. Use when you need to generate insights from natural language queries. The AI interprets your query and creates the appropriate insight configuration (trends, funnels, or retention). Returns the generated insight with query configuration and results data." }, { "slug": "POSTHOG_CREATE_ALERT", "name": "Create alert", "description": "Tool to create a new alert configuration in PostHog. Use when you need to set up monitoring for insights with specific thresholds and notification settings. The alert will monitor the specified insight and notify subscribed users when threshold conditions are met." }, { "slug": "POSTHOG_CREATE_BATCH", "name": "Create Batch", "description": "Capture a batch of analytics events to PostHog using the public batch ingestion API. Use when you need to send multiple events efficiently in a single request (e.g., bulk event imports, offline event syncing)." }, { "slug": "POSTHOG_CREATE_BATCH_EXPORT", "name": "Create batch export", "description": "Create a new batch export to automatically export PostHog data to external destinations like S3, BigQuery, or Snowflake. Use when you need to set up scheduled data exports with configurable intervals and destination-specific settings." }, { "slug": "POSTHOG_CREATE_BATCH_EXPORT_BACKFILL", "name": "Create batch exports backfills", "description": "Tool to create a new backfill for a BatchExport. Use when you need to re-export historical data for a specific time range. Requires valid start_at and end_at timestamps in ISO 8601 format. The end_at timestamp cannot be in the future." }, { "slug": "POSTHOG_CREATE_BATCH_EXPORT_TEST_RUN", "name": "Create batch exports run test step", "description": "Tool to run a test step for a batch export configuration in PostHog. Use when you need to validate that a batch export is properly configured before enabling it. This endpoint triggers a test run to verify the destination connectivity and configuration." }, { "slug": "POSTHOG_CREATE_CUSTOMER_PROFILE_CONFIG", "name": "Create customer profile config", "description": "Create a customer profile configuration for a PostHog project. Use when you need to configure how customer profiles are displayed and organized for persons or groups within a project." }, { "slug": "POSTHOG_CREATE_CUSTOM_PROJECT_INSIGHTS", "name": "Create project insights with customizable parameters", "description": "Create custom analytics insights for a PostHog project. Supported query types (InsightVizNode.source.kind): TrendsQuery, FunnelsQuery, RetentionQuery, PathsQuery, StickinessQuery, LifecycleQuery, WebStatsTableQuery, WebOverviewQuery. IMPORTANT: HogQLQuery is NOT supported for saved insights. For ad-hoc HogQL queries, use POSTHOG_CREATE_QUERY_IN_PROJECT_BY_ID instead. Key parameters: - project_id (required): Project ID - query: InsightVizNode with source containing one of the 8 valid query types above - name: Display name - saved: Whether to save permanently (default: true) - tags: Organization tags - format: 'json' or 'csv' Returns the created insight with id, short_id, timestamps, and configured properties." }, { "slug": "POSTHOG_CREATE_DATA_COLOR_THEME", "name": "Create data color theme", "description": "Tool to create a new data color theme in a PostHog project. Use when you need to define custom color palettes for data visualization. Requires a theme name and list of hex color codes. Returns the created theme with auto-generated ID and metadata." }, { "slug": "POSTHOG_CREATE_DATASET", "name": "Create Dataset", "description": "Tool to create a new dataset in a PostHog project. Use when you need to create a dataset for organizing data. Requires a project ID and a dataset name; description and metadata are optional." }, { "slug": "POSTHOG_CREATE_DATASET_ITEM", "name": "Create Dataset Items", "description": "Tool to create a new dataset item in a PostHog project dataset. Use when you need to add a new item with input/output data to a dataset for ML/AI experimentation or tracking." }, { "slug": "POSTHOG_CREATE_DESKTOP_RECORDING", "name": "Create desktop recording", "description": "Create a new desktop recording and get Recall.ai upload token for the desktop SDK. Use when you need to initiate a new recording session and obtain credentials for uploading audio/video data." }, { "slug": "POSTHOG_CREATE_ENDPOINT", "name": "Create endpoint", "description": "Tool to create a new endpoint for a PostHog project. Endpoints allow you to define and execute custom queries (HogQL, Trends, Funnels, etc.) that can be accessed via a URL-safe name. Use when you need to set up a new data query endpoint with specific query configuration and caching options." }, { "slug": "POSTHOG_CREATE_ERROR_TRACKING_AUTOCAPTURE_CONTROL", "name": "Create error tracking autocapture controls", "description": "Tool to create a new error tracking autocapture control configuration for a PostHog project. Use when you need to set up error tracking rules for specific libraries with URL triggers, event triggers, and sampling rates." }, { "slug": "POSTHOG_CREATE_ERROR_TRACKING_RELEASE", "name": "Create error tracking release", "description": "Create a new error tracking release in PostHog. Use when you need to register a new application version or deployment for error tracking purposes. This helps track errors across different versions of your application." }, { "slug": "POSTHOG_CREATE_ERROR_TRACKING_SUPPRESSION_RULE", "name": "Create error tracking suppression rule", "description": "Tool to create a new error tracking suppression rule for a project. Use when you need to automatically suppress specific error tracking issues based on filters. Suppression rules prevent matching errors from being reported or displayed." }, { "slug": "POSTHOG_CREATE_EVALUATION", "name": "Create Evaluation", "description": "Create a new evaluation for a PostHog project to assess AI-generated content or responses. Use when you need to set up LLM-based evaluation criteria for quality assessment, content moderation, or performance tracking." }, { "slug": "POSTHOG_CREATE_EVALUATION_RUN", "name": "Create evaluation run", "description": "Tool to create a new evaluation run and enqueue a Temporal workflow to asynchronously execute the evaluation. Use when you need to run an evaluation against a specific event in PostHog. Returns HTTP 202 with workflow details." }, { "slug": "POSTHOG_CREATE_EVENT_DEFINITION", "name": "Create event definitions", "description": "Create a new event definition in a PostHog project. Event definitions help you organize and document the events being tracked in your application. Use this to formally define events, add descriptions, assign owners, and manage event metadata. This is useful for maintaining a clean event taxonomy and ensuring your team understands what each event represents." }, { "slug": "POSTHOG_CREATE_EXPERIMENT_EXPOSURE_COHORT", "name": "Create experiment exposure cohort", "description": "Create a new exposure cohort for an experiment in a project by sending a POST request with experiment details and feature flag data. Requires experiment ID and project ID in the path." }, { "slug": "POSTHOG_CREATE_EXPERIMENT_HOLDOUT", "name": "Create experiment holdout", "description": "Tool to create a new experiment holdout group in PostHog. Use when you need to set up a control group for experiments with specific filter configurations and rollout percentages." }, { "slug": "POSTHOG_CREATE_EXPERIMENT_SAVED_METRIC", "name": "Create experiment saved metric", "description": "Tool to create a new experiment saved metric in a PostHog project. Use when you need to define a reusable metric configuration for experiments. The query field requires 'kind' (ExperimentTrendsQuery or ExperimentFunnelsQuery) with a nested 'count_query' structure." }, { "slug": "POSTHOG_CREATE_FEATURE_FLAG", "name": "Create Feature Flag", "description": "Tool to create a new feature flag in a PostHog project. Use when you need to add feature toggles, perform gradual rollouts, or target specific user segments without deploying new code." }, { "slug": "POSTHOG_CREATE_FEATURE_FLAG_COHORT", "name": "Create static cohort for feature flag", "description": "Manage feature flags for apps with create, read, update, and delete operations using PostHog's JavaScript Library or dedicated endpoint. More info in the docs." }, { "slug": "POSTHOG_CREATE_FEATURE_FLAG_DASHBOARD", "name": "Create feature flag dashboard", "description": "Manage feature flags by creating, reading, updating, and deleting them. Utilize JavaScript library or endpoint for user-specific flag status. Refer to documentation for details." }, { "slug": "POSTHOG_CREATE_FILE_SYSTEM", "name": "Create file system", "description": "Tool to create a new file system resource in PostHog with specified metadata and hierarchy. Use when you need to create folders, files, or other organizational structures in a project." }, { "slug": "POSTHOG_CREATE_FILE_SYSTEM_SHORTCUT", "name": "Create file system shortcut", "description": "Create a new file system shortcut in a PostHog project. Requires 'file_system_shortcut:write' permission. Returns the created shortcut with all its properties including UUID, path, type, and creation timestamp." }, { "slug": "POSTHOG_CREATE_GROUP_TYPE_METRIC", "name": "Create groups types metrics", "description": "Tool to create a new metric for a specific group type in a PostHog project. Use when you need to define custom metrics to track group-level analytics (e.g., company revenue, team activity). Requires project_id, group_type_index, metric id (UUID), name, and filters." }, { "slug": "POSTHOG_CREATE_HOG_FUNCTION", "name": "Create hog function", "description": "Create a new hog function in PostHog. Hog functions are serverless functions that can be triggered by events, used for transformations, destinations, or site applications. Use when you need to set up custom event processing, integrations, or in-app features like notification bars." }, { "slug": "POSTHOG_CREATE_INSIGHT_VARIABLE", "name": "Create insight variable", "description": "Create a new insight variable for a PostHog project. Insight variables allow you to define reusable parameters that can be referenced across insights and queries. Use when you need to create configurable variables like user segments, date ranges, or custom metrics that can be used in multiple insights." }, { "slug": "POSTHOG_CREATE_LIVE_DEBUGGER_BREAKPOINT", "name": "Create live debugger breakpoint", "description": "Tool to create a new live debugger breakpoint in a PostHog project. Use when you need to set up debugging instrumentation for a specific file and line number in your application code. Client applications will receive this breakpoint configuration and can pause execution or log data when that line is reached." }, { "slug": "POSTHOG_CREATE_LLM_ANALYTICS_SUMMARIZATION", "name": "Create LLM Analytics Summarization", "description": "Generate an AI-powered summary of an LLM trace or event. This endpoint analyzes the provided trace/event, generates a line-numbered text representation, and uses an LLM to create a concise summary with line references in [L45] or [L45-52] format. Use when you need to quickly understand complex LLM interactions, debug traces, or generate human-readable explanations of AI system behavior." }, { "slug": "POSTHOG_CREATE_LLM_ANALYTICS_TEXT_REPRESENTATION", "name": "Create LLM Analytics Text Representation", "description": "Tool to generate human-readable text representations of LLM trace events for display, logging, or analysis. Use when you need to convert LLM analytics events ($ai_generation, $ai_span, $ai_embedding, or $ai_trace) into formatted text." }, { "slug": "POSTHOG_CREATE_LOGS_EXPORT", "name": "Create Logs Export", "description": "Tool to create a logs export job using HogQL queries in PostHog. Use when you need to export event logs or query results for analysis. The endpoint creates an asynchronous export job and returns metadata including the export ID, format, and filename that can be used to retrieve the exported data." }, { "slug": "POSTHOG_CREATE_ORGANIZATION", "name": "Create new organization with configurable access", "description": "Create a new PostHog organization with configurable security and notification settings. This action creates a new organization and automatically provisions a default project with an API token. The organization will be immediately active and ready for use. Returns complete organization details including: - Organization ID, name, and URL slug - Automatically created default project and team - API token for the default team - All security and access control settings Requires organization:write permission. The authenticated user becomes the first member of the newly created organization." }, { "slug": "POSTHOG_CREATE_ORGANIZATION_INVITE", "name": "Create organization invite with role and email", "description": "Create and send an organization invitation to a user via email. This allows you to invite people to join your PostHog organization with a specific role (member, admin, or owner). The action creates an invite that can optionally send an email notification to the recipient. Returns the complete invite details including invite ID, timestamps, and the user who created it. Successful invitations return a 201 status with full invite details. Use cases: - Invite team members to collaborate on analytics - Grant admin access to manage organization settings - Add owners with full organizational control - Create invites without immediate email notification (set send_email=false)" }, { "slug": "POSTHOG_CREATE_ORGANIZATION_PROXY_RECORD", "name": "Create organization proxy record for custom domain", "description": "Create a managed reverse proxy record for an organization to enable custom domain routing for PostHog analytics events. This bypasses ad blockers by routing analytics through your own domain. After creating the record, you must: 1. Create a CNAME DNS record pointing your domain to the returned target_cname 2. Wait 2-30 minutes for DNS propagation and SSL certificate provisioning 3. The status will progress from 'waiting' → 'issuing' → 'live' IMPORTANT: If using Cloudflare, set the CNAME to \"DNS only\" (disable proxy) to avoid SSL certificate provisioning issues. Requires organization write access (organization:write permission)." }, { "slug": "POSTHOG_CREATE_ORGANIZATION_ROLE", "name": "Create organization role with feature flag levels", "description": "Create a new custom role within a PostHog organization with optional feature flag access permissions. This action creates an organization role that can be assigned to members to control their access levels. The role can include specific feature flag access permissions via the feature_flags_access_level parameter. Returns the created role with its unique ID, name, creation timestamp, and other metadata. Security: Requires PersonalAPIKeyAuth with organization admin permissions." }, { "slug": "POSTHOG_CREATE_ORGANIZATION_SAML_DOMAIN", "name": "Create domain with saml for organization", "description": "Create and configure an authentication domain with SAML SSO for a PostHog organization. Requires Enterprise plan. Adds an email domain (e.g., 'company.com') to your organization and configures SAML Single Sign-On for users with matching email addresses. After creation, verify domain ownership via DNS TXT record before SAML activates. SAML parameters (entity_id, acs_url, x509_cert) come from your Identity Provider (Okta, OneLogin, Azure AD, etc.). Workflow: 1) Create domain (this endpoint) 2) Add DNS TXT record from verification_challenge 3) Verify domain 4) Configure IdP with PostHog SAML settings 5) Test authentication. Returns 201 with domain config on success, 403 if not on Enterprise plan." }, { "slug": "POSTHOG_CREATE_PERSISTED_FOLDER", "name": "Create persisted folder", "description": "Tool to create a new persisted folder in a PostHog project. Use when you need to create a new folder for organizing data storage with a specific type and configuration." }, { "slug": "POSTHOG_CREATE_PERSON_PATH", "name": "Create person path with format option", "description": "Retrieve path analytics for a specific person within a PostHog project. This endpoint returns the navigation paths and user journey data for a person. Note: This endpoint requires session-based authentication and does not support Personal API Key access. To use this endpoint, you must be authenticated via the PostHog web application." }, { "slug": "POSTHOG_CREATE_PRODUCT_TOUR", "name": "Create product tour", "description": "Tool to create a new product tour in a PostHog project. Use when you need to set up guided tours to onboard users or highlight features. Requires a project_id and a name for the tour." }, { "slug": "POSTHOG_CREATE_PROJECT_ACTION", "name": "Create project action with format", "description": "This POST endpoint creates actions for a project, accepts various data types, requires project_id and action data, optionally outputs in CSV/JSON, and needs PersonalAPIKeyAuth, returning a 201 with action details." }, { "slug": "POSTHOG_CREATE_PROJECT_COHORT", "name": "Create project cohorts", "description": "Create cohorts for a specified project by POSTing JSON-form data to \"/api/projects/{project_id}/cohorts/\". Provide project_id in URL and the necessary payload, adhering to JSON schema constraints. Authentication required. Returns 201 upon success." }, { "slug": "POSTHOG_CREATE_PROJECT_DASHBOARD", "name": "Create project dashboard", "description": "The POST endpoint creates a dashboard within a project using a `project_id`, accepting details in JSON/form formats. It uses 'PersonalAPIKeyAuth' for security and returns HTTP 201 with dashboard details on success." }, { "slug": "POSTHOG_CREATE_PROJECT_EXPERIMENT", "name": "Create new project experiment", "description": "Create a new experiment in a specific project using JSON, form, or multipart data. Requires project_id and experiment details, secured with PersonalAPIKeyAuth. Generates a 201 response with experiment info." }, { "slug": "POSTHOG_CREATE_PROJECT_INSIGHTS_WITH_FORMAT_OPTION", "name": "Create project insights with format option", "description": "Create a new analytics insight in a PostHog project. Insights are saved queries that visualize data from your analytics events. Use this to create trends, funnels, retention, or other analytics visualizations. You can define the insight using either: - Legacy 'filters' format (simpler, widely supported) - Modern 'query' format (more powerful, recommended for new integrations) The optional 'format' parameter controls response format: - 'json' (default): Returns structured JSON with insight metadata - 'csv': Returns CSV-formatted representation of the insight Requires a valid project_id. Returns HTTP 201 on success with the created insight details including a unique ID and short_id." }, { "slug": "POSTHOG_CREATE_PROJECT_NOTEBOOK", "name": "Create a notebook in a project", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_CREATE_PROJECT_PIPELINE_FRONTEND_APP_JOB", "name": "Create project pipeline frontend app job", "description": "Create a job for a pipeline frontend app config in a project. Requires `project_id` and config `id`, accepting JSON/form-data. Returns the created job's details." }, { "slug": "POSTHOG_CREATE_PROJECT_RETENTION_INSIGHT", "name": "Create Retrieve Retention Insights For Project", "description": "Create and retrieve retention insights for a project using PostHog's Query API. Analyzes how users return over time based on specified events or actions. Uses the /api/projects/{project_id}/query/ endpoint with a RetentionQuery. Requires a project ID and authenticated access with 'insight:read' permission. If no query is provided, returns default retention data for $pageview events over 7 days." }, { "slug": "POSTHOG_CREATE_PROJECT_SUBSCRIPTION", "name": "Create project subscription with delivery options", "description": "Create a subscription for a given project by providing required details such as delivery method, frequency, and starting date. Requires a project ID and supports various content types. Returns the newly created subscription. Security: PersonalAPIKeyAuth." }, { "slug": "POSTHOG_CREATE_PROJECT_SURVEY", "name": "Create project surveys with questions and targets", "description": "Create surveys in a project by providing a project ID and details like type, questions, and targets in JSON, form-data, or urlencoded format. Use PersonalAPIKeyAuth for security. Get a survey object on success." }, { "slug": "POSTHOG_CREATE_QUERY_IN_PROJECT_BY_ID", "name": "Create query in project by id", "description": "The `/api/projects/{project_id}/query/` POST endpoint allows users to submit queries for a specific project by providing the project ID in the URL and the query details in JSON or form data. Authentication is required and it returns query results." }, { "slug": "POSTHOG_CREATE_SESSION_RECORDING_PLAYLIST", "name": "Create session recording playlists", "description": "Create playlists of session recordings for a specified project. Requires 'project_id' path parameter and personal API key with write access. Supports JSON, form-encoded, or multipart data. Returns 201 on success with playlist details." }, { "slug": "POSTHOG_CREATE_SESSION_RECORDING_SUMMARY", "name": "Generate AI summary for session recording", "description": "Generate an AI-powered summary for a session recording. Requires PostHog AI feature to be enabled. Provide the project_id and the session recording's UUID to get an AI-generated summary including key activities, user interactions, and insights about the session. Note: This endpoint requires PostHog AI to be enabled for your organization and may only be available on paid plans. Returns 403 Forbidden if the feature is not accessible." }, { "slug": "POSTHOG_CREATE_SURVEY_SUMMARY_HEADLINE", "name": "Create Surveys Summary Headline", "description": "Tool to create or regenerate a summary headline for a survey. Use when you need to generate an AI-powered headline summary of survey responses for a specific project survey. The endpoint processes survey data to create a concise headline." }, { "slug": "POSTHOG_CREATE_WAREHOUSE_SAVED_QUERY", "name": "Create warehouse saved query", "description": "Create a new warehouse saved query in PostHog for data warehouse operations. Use this to define reusable HogQL queries that can be executed against your warehouse tables. The query name must contain only letters, numbers, underscores, dots, or dollar signs." }, { "slug": "POSTHOG_CREATE_WEB_EXPERIMENT", "name": "Create Web Experiment", "description": "Create a new web experiment in a PostHog project. Web experiments allow you to run A/B tests by dynamically transforming DOM elements on your website based on feature flag variants. Use when you want to test different UI variations, messaging, or layouts without deploying new code." }, { "slug": "POSTHOG_DELETE_ALERT", "name": "Delete alert", "description": "Delete an alert configuration by providing its UUID and the associated project ID. Requires 'alert:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_CUSTOMER_PROFILE_CONFIG", "name": "Delete Customer Profile Config", "description": "Tool to delete a customer profile configuration by ID in a PostHog project. Use when you need to remove a customer profile config that is no longer needed. Returns a 204 No Content status on successful deletion." }, { "slug": "POSTHOG_DELETE_DESKTOP_RECORDING", "name": "Delete desktop recording", "description": "Tool to delete a desktop meeting recording by its UUID and project ID. Use when you need to permanently remove a desktop recording from a PostHog project." }, { "slug": "POSTHOG_DELETE_ENDPOINT", "name": "Delete endpoint", "description": "Delete an endpoint and clean up materialized query. Returns no content with a 204 status on success. Use when you need to remove an endpoint configuration from a PostHog project." }, { "slug": "POSTHOG_DELETE_ERROR_TRACKING_AUTOCAPTURE_CONTROL", "name": "Delete error tracking autocapture controls", "description": "Delete an error tracking autocapture control configuration by UUID and project ID. Use when you need to remove autocapture settings for error tracking." }, { "slug": "POSTHOG_DELETE_ERROR_TRACKING_GROUPING_RULE", "name": "Delete error tracking grouping rule", "description": "Delete a specific error tracking grouping rule by ID. Use when you need to remove a custom grouping rule that is no longer needed or was created incorrectly." }, { "slug": "POSTHOG_DELETE_ERROR_TRACKING_RELEASE", "name": "Delete error tracking release", "description": "Delete an error tracking release by its UUID and project ID. Use when you need to remove a specific release from error tracking. Requires 'error_tracking:write' scope. Returns 204 No Content on success." }, { "slug": "POSTHOG_DELETE_ERROR_TRACKING_SUPPRESSION_RULE", "name": "Delete Error Tracking Suppression Rule", "description": "Tool to delete an error tracking suppression rule by its UUID. Use when you need to remove a suppression rule that is no longer needed. Requires 'error_tracking:write' permission." }, { "slug": "POSTHOG_DELETE_EXPERIMENT_HOLDOUT", "name": "Delete experiment holdout", "description": "Delete an experiment holdout by providing its ID and the associated project ID. Requires 'experiment:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_EXPERIMENT_SAVED_METRIC", "name": "Delete experiment saved metric", "description": "Tool to delete an experiment saved metric by ID from a PostHog project. Use when you need to remove a saved metric configuration from an experiment. Returns HTTP 204 No Content on success." }, { "slug": "POSTHOG_DELETE_FEATURE_FLAG_ROLE_ACCESS", "name": "Remove feature flag role access by id", "description": "DELETE /api/projects/{project_id}/feature_flags/{feature_flag_id}/role_access/{id}: Remove role access from a feature flag in a project by ID, requiring authorization. Expect no response body upon success (204)." }, { "slug": "POSTHOG_DELETE_FILE_SYSTEM", "name": "Delete file system", "description": "Tool to delete a file system resource in PostHog by UUID. Use when you need to permanently remove a file system. Returns deletion information including undo options if available." }, { "slug": "POSTHOG_DELETE_GROUP_TYPE_METRIC", "name": "Delete Groups Types Metrics", "description": "Tool to delete a group usage metric by its UUID within a specific project and group type. Use when you need to remove a metric that tracks group-level analytics. Requires 'group:write' permission." }, { "slug": "POSTHOG_DELETE_INSIGHT", "name": "Delete insight", "description": "Attempt to delete an insight by its ID from a specific project. This action is irreversible — the insight cannot be recovered once removed. Use this action when you need to permanently remove an insight from a project. IMPORTANT: The PostHog API does not support hard deletion of insights. This endpoint returns HTTP 405 (Method Not Allowed). To delete an insight, use the PATCH insights endpoint to set the 'deleted' field to true for a soft delete instead." }, { "slug": "POSTHOG_DELETE_INSIGHT_VARIABLE", "name": "Delete insight variables", "description": "Delete an insight variable by its UUID from a specified project. Requires 'insight_variable:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_LIVE_DEBUGGER_BREAKPOINT", "name": "Delete live debugger breakpoint", "description": "Delete a live debugger breakpoint by providing its UUID and project ID. Requires 'live_debugger:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_ORGANIZATION", "name": "Delete organization by uuid", "description": "Delete an organization by its UUID. Requires a 'PersonalAPIKeyAuth' with 'organization:write' permission. On success, returns a 204 status code with no response body." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_BATCH_EXPORT", "name": "Remove organization batch export by uuid", "description": "Delete a specific batch export by its UUID in an organization. Requires PersonalAPIKeyAuth with batch_export:write permission. Returns 204 on success with no response body." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_DOMAIN", "name": "Remove domain by uuid from organization", "description": "Delete a specific domain by its UUID within an organization, given valid organization and domain IDs. Requires 'organization:write' permission; no response body on success (204)." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_MEMBER", "name": "Remove member from organization by uuid", "description": "Remove a member from a PostHog organization by their user UUID. This action is idempotent - calling it multiple times with the same parameters will always succeed without error, even if the member has already been removed or never existed. Use this to revoke a user's access to an organization, remove team members, or clean up organization memberships. The member will immediately lose access to all projects and data within the organization. API: DELETE /api/organizations/{organization_id}/members/{user_uuid}/ Returns: - HTTP 204: Member successfully removed - HTTP 404: Member not found (treated as success due to idempotent behavior) Requires: 'organization_member:write' permission Note: You cannot remove yourself from an organization using this action. To get user UUIDs, use the list_organization_members_with_pagination action." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PIPELINE_DESTINATION", "name": "Remove organization pipeline destination", "description": "Delete a specific pipeline destination in an organization by ID. Requires an integer 'id' of the destination, and the organization's 'uuid'. Auth: PersonalAPIKey with plugin:write. No return body on success (204)." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PIPELINE_IMPORT_APP", "name": "Remove org pipeline import app by id", "description": "Delete a specific pipeline import app plugin associated with an organization by ID. Requires a personal API key with write permissions for plugins. Responds with no content on success (204)." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PIPELINE_TRANSFORMATION", "name": "Remove organization pipeline transformation", "description": "Delete a specific pipeline transformation plugin for an organization by ID. Requires a UUID for the organization and an integer for the plugin. Auth: PersonalAPIKey with write access. No response body on success (204)." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PLUGIN", "name": "Remove organization plugin by id", "description": "Delete a specific plugin (by its integer ID) from the organization (identified by UUID) with no response body on success. Requires plugin:write authorization via PersonalAPIKeyAuth." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PROJECT", "name": "Delete organization project", "description": "Projects for the current organization." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_PROXY_RECORD", "name": "Remove organization proxy record", "description": "Delete a proxy record by ID for a specific organization. Requires an authenticated user with 'organization:write' permission. On success, it responds with a 204 status and no content." }, { "slug": "POSTHOG_DELETE_ORGANIZATION_ROLE", "name": "Remove organization role by id", "description": "Delete a role with a specific UUID in an organization. Requires 'organization:write' permission. No response body on success (204). Path parameters include 'id' and 'organization_id'." }, { "slug": "POSTHOG_DELETE_PERSISTED_FOLDER", "name": "Delete persisted folder", "description": "Delete a persisted folder by providing its UUID and the associated project ID. Requires 'persisted_folder:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_PERSON", "name": "Delete person and optionally associated events", "description": "This endpoint is used to read and delete user data. Use the capture API, `$set`/`$unset` commands, or SDKs for creating/updating persons." }, { "slug": "POSTHOG_DELETE_PERSON_PROPERTY", "name": "Delete person property", "description": "Delete specific properties from a person record using the $unset operation. Use when you need to remove one or more properties from a person's profile." }, { "slug": "POSTHOG_DELETE_PRODUCT_TOUR", "name": "Delete product tours", "description": "Delete a product tour by providing its UUID and the associated project ID. Requires 'product_tour:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_PROJECT_BATCH_EXPORT", "name": "Remove specific project batch export", "description": "Delete a specific batch export by providing the UUID and project ID. Requires a personal API key with 'batch_export:write' permissions. Responds with no body upon successful deletion (HTTP 204)." }, { "slug": "POSTHOG_DELETE_PROJECT_DASHBOARD_COLLABORATOR", "name": "Remove project dashboard collaborator", "description": "Remove a collaborator from a project dashboard. Provide the project_id, dashboard_id, and user's UUID. Requires 'dashboard:write' permissions. Expect no response body on success (204). Project ID guidance at '/api/projects/'." }, { "slug": "POSTHOG_DELETE_PROJECT_EARLY_ACCESS_FEATURE", "name": "Remove early access feature from project", "description": "Delete an early access feature by ID from a specified project. Requires a UUID for the feature and the project's ID. Authentication via PersonalAPIKeyAuth is necessary. No response body upon success." }, { "slug": "POSTHOG_DELETE_PROJECT_EVENT_DEFINITION", "name": "Remove project event definition", "description": "Delete an event definition by providing its UUID and the associated project ID. Requires `event_definition:write` permission. Successful deletion returns no content (204 status)." }, { "slug": "POSTHOG_DELETE_PROJECT_EXPERIMENT", "name": "Remove project experiment by id", "description": "Soft-delete a specific experiment by its unique integer ID within a project. Uses PATCH to set the 'deleted' field to true since PostHog experiments do not support hard DELETE. Requires a Project ID and personal API key with experiment write permission." }, { "slug": "POSTHOG_DELETE_PROJECT_MEMBER", "name": "Remove explicit project member by uuid", "description": "Delete a specific user (by UUID) from the explicit members of a given project. Requires 'project_id' and member's 'parent_membership__user__uuid'. Returns 204 on success with no response body. Note: This endpoint only works for projects with access control enabled (private projects). Access control is an Enterprise feature. If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error." }, { "slug": "POSTHOG_DELETE_PROJECT_PLUGIN_CONFIGURATION", "name": "Remove project plugin configuration", "description": "DELETE /api/projects/{project_id}/plugin_configs/{id}/: Removes a specific plugin configuration by ID from a given project. Requires 'plugin:write' permissions and project ID. Returns 204 with no body on success." }, { "slug": "POSTHOG_DELETE_PROJECT_QUERY", "name": "Remove specific project query", "description": "(Experimental)" }, { "slug": "POSTHOG_DELETE_PROPERTY_DEFINITION", "name": "Remove property definition by uuid", "description": "Delete a property definition by providing its UUID and the associated project ID. Requires 'property_definition:write' permission. On success, no response body is returned (204)." }, { "slug": "POSTHOG_DELETE_ROLE_MEMBERSHIP", "name": "Remove rolemembership by uuid", "description": "Remove a user from a custom organization role by deleting their role membership. This action permanently removes the specified user's membership in the role, revoking any permissions associated with that role. The operation is idempotent - attempting to remove a non-existent membership returns success. Use this action to: - Remove a user's access to a custom role - Revoke role-based permissions from a user - Clean up role memberships when users change responsibilities - Manage access control in your PostHog organization Requirements: - The organization must have access control enabled - You must have write permissions for the organization - The role must exist in the specified organization The action returns 204 No Content on successful deletion. Note that this removes the role membership but does not delete the user from the organization or the role itself." }, { "slug": "POSTHOG_DELETE_SESSION_RECORDING", "name": "Delete session recording by uuid", "description": "Delete a session recording by providing the session's UUID and the associated project ID. Requires `session_recording:write` permission. Returns no content on successful deletion." }, { "slug": "POSTHOG_DELETE_SESSION_RECORDING_FROM_PLAYLIST", "name": "Remove session recording from playlist", "description": "Remove a session recording from a playlist in a PostHog project. This action only removes the recording from the playlist - it does not delete the recording itself. The recording remains available in the project and can be re-added to playlists later. Requires project_id (get via /api/projects/), short_id (playlist identifier), and session_recording_id. Returns HTTP 204 on success. The operation is idempotent - removing a non-existent recording succeeds. Useful for curating playlists by removing irrelevant or accidentally added recordings. Works with 'collection' type playlists." }, { "slug": "POSTHOG_DELETE_SURVEY", "name": "Delete survey by id", "description": "Delete a survey by providing its UUID and the associated project ID. Requires 'survey:write' permission. Returns no content with a 204 status on success." }, { "slug": "POSTHOG_DELETE_WAREHOUSE_SAVED_QUERY", "name": "Delete warehouse saved query", "description": "Tool to delete a warehouse saved query from PostHog. Use when you need to remove a saved query from the data warehouse. The operation succeeds if the API returns 204 No Content status." }, { "slug": "POSTHOG_DELETE_WEB_EXPERIMENT", "name": "Delete web experiment", "description": "Delete a web experiment by its ID from a specific project. Use when you need to permanently remove a web experiment. Requires 'experiment:write' scope." }, { "slug": "POSTHOG_DUPLICATE_COHORT_TO_STATIC", "name": "Cohort duplication to static", "description": "This endpoint duplicates a specified cohort as a static one within a project. Path parameters include `project_id` (string) and cohort `id` (integer). Successful requests return cohort details." }, { "slug": "POSTHOG_DUPLICATE_EXPERIMENT", "name": "Duplicate experiment", "description": "Tool to duplicate an existing experiment in PostHog. Use when you need to create a copy of an experiment with the same configuration. The API automatically appends '(Copy)' to the duplicated experiment name and creates a new feature flag for it." }, { "slug": "POSTHOG_DUPLICATE_SURVEY_TO_PROJECTS", "name": "Duplicate survey to projects", "description": "Duplicate a survey to multiple projects in a single transaction. Accepts a list of target team IDs and creates a copy of the survey in each project. Uses an all-or-nothing approach - if any duplication fails, all changes are rolled back." }, { "slug": "POSTHOG_ENABLE_PROJECT_EARLY_ACCESS_FEATURE", "name": "Enable project early access feature", "description": "Enables a new early access feature for a project using project ID, payload with details, and PersonalAPIKeyAuth. Returns a 201 status on success." }, { "slug": "POSTHOG_FINISH_SYMBOL_SETS_BULK_UPLOAD", "name": "Finish symbol sets bulk upload", "description": "Tool to finalize bulk upload of error tracking symbol sets for a PostHog project. Use when completing a multi-part symbol set upload process. This endpoint marks the upload as complete and makes the symbol sets available for error stack trace symbolication." }, { "slug": "POSTHOG_FLAG_ANNOTATION_AS_DELETED", "name": "Flag annotation as deleted", "description": "Soft delete an annotation by setting 'deleted' to true via PATCH request. Hard delete of this model is not allowed by the API." }, { "slug": "POSTHOG_GENERATE_INSIGHT_NAME", "name": "Generate Insight Name", "description": "Tool to generate an AI-suggested name for a PostHog insight based on its query configuration. Use when you need to automatically name an insight instead of manually creating a descriptive title." }, { "slug": "POSTHOG_GENERATE_PROJECT_FUNNEL_CORRELATION_INSIGHT", "name": "Generate project funnel correlation insight", "description": "The /api/projects/{project_id}/insights/funnel/correlation endpoint generates a correlation insight for funnel analysis in a project, accepting JSON/CSV and needing 'project_id' and insight details." }, { "slug": "POSTHOG_GET_APP_METRICS", "name": "Retrieve app metrics by ids", "description": "Retrieve performance and error metrics for a specific plugin configuration (app) in a PostHog project. This action returns time-series data showing the success rate, failures, and retry statistics for a plugin configuration over the last 31 days. Use this to monitor the health and performance of installed apps/plugins in your PostHog project. The metrics include: - Daily counts of successful executions - Daily counts of executions that succeeded after retrying - Daily counts of failed executions - Aggregated totals across the time period - Error details (if any errors occurred) To find available plugin configuration IDs, first call the list_project_plugin_configurations action. Requires a personal API key with plugin:read access." }, { "slug": "POSTHOG_GET_APP_METRICS_ERROR_DETAILS", "name": "Retrieve app metrics error details", "description": "Retrieves detailed error information for a specific app metric (plugin config) within a project. This endpoint provides error details for plugins/apps that have experienced failures. If the plugin config has no recorded errors, the API returns a 403 Forbidden response. To check if errors exist before calling this endpoint, use the base app_metrics endpoint which shows error counts. Parameters: - project_id: The ID of the project containing the plugin config - id: The plugin config ID (integer) for which to retrieve error details Note: This endpoint only returns data when errors have been recorded for the specified plugin config. Check the failures count in the base app_metrics endpoint first to determine if error details are available." }, { "slug": "POSTHOG_GET_BATCH_EXPORT_DETAILS", "name": "Retrieve batch export details", "description": "Retrieve details of a specific batch export by its UUID in a project. Requires project_id and batch export ID. Supports PersonalAPIKeyAuth and responds with export details including destination, interval, and status." }, { "slug": "POSTHOG_GET_BATCH_EXPORTS_BACKFILLS", "name": "Get batch exports backfills", "description": "Tool to retrieve backfills for a specific batch export within a project. Use when you need to view historical backfill operations for batch exports. Supports pagination via cursor and custom ordering of results." }, { "slug": "POSTHOG_GET_COHORT_ACTIVITY_DETAILS", "name": "Retrieve cohort activity details", "description": "Retrieve activity details for a specific cohort within a project. Requires a project ID and cohort ID, returning status, filters, query, and creator data. Auth: PersonalAPIKeyAuth with 'activity_log:read' scope." }, { "slug": "POSTHOG_GET_COHORT_PERSON_DETAILS", "name": "Retrieve cohort person details", "description": "Retrieve details of persons within a cohort by its unique ID in the specified project. The endpoint supports JSON and CSV formats and requires authorization. Project and cohort IDs must be provided." }, { "slug": "POSTHOG_GET_COHORTS_CALCULATION_HISTORY", "name": "Get cohort calculation history", "description": "Tool to retrieve the calculation history for a specific cohort. Use when you need to track cohort recalculations, monitor calculation performance, or debug calculation errors. Returns paginated list of historical calculations with timing metrics and success status." }, { "slug": "POSTHOG_GET_CONVERSATION", "name": "Get conversation", "description": "Tool to retrieve a specific conversation by UUID and project ID. Use when you need to access conversation details including messages, status, and associated user information." }, { "slug": "POSTHOG_GET_CONVERSATIONS", "name": "Get conversations", "description": "Tool to retrieve conversations for a specific PostHog project with pagination support. Use when you need to fetch conversation data including messages, status, and user information." }, { "slug": "POSTHOG_GET_CUSTOMER_PROFILE_CONFIG", "name": "Get Customer Profile Config", "description": "Retrieve a specific customer profile configuration by its ID for a given project. Use when you need to fetch details about how customer profiles are configured for persons or groups." }, { "slug": "POSTHOG_GET_CUSTOMER_PROFILE_CONFIGS", "name": "Get customer profile configs", "description": "Tool to retrieve customer profile configurations for a project with pagination support. Use when you need to list or access customer profile configuration settings for a specific PostHog project." }, { "slug": "POSTHOG_GET_DASHBOARD_TEMPLATE_DETAILS", "name": "Retrieve dashboard template details by uuid", "description": "Fetch specific dashboard template details by UUID in a project with 'dashboard_template:read' rights using a PersonalAPIKeyAuth. Returns name, description, filters, and creation info." }, { "slug": "POSTHOG_GET_DASHBOARD_TEMPLATE_SCHEMA", "name": "Retrieve dashboard template schema", "description": "Retrieve the JSON schema for dashboard templates of a specific project. Pass the project_id in the path and receive details such as template name, description, filters, and more. Supports GET requests." }, { "slug": "POSTHOG_GET_DATA_COLOR_THEME", "name": "Get data color theme", "description": "Tool to retrieve a specific data color theme by ID from a PostHog project. Use when you need to fetch theme configuration details for data visualization." }, { "slug": "POSTHOG_GET_DATA_COLOR_THEMES", "name": "Get Data Color Themes", "description": "Tool to retrieve data color themes for a specific project. Use when you need to list available color themes for data visualization. Returns paginated results with theme details including colors, creator information, and global status." }, { "slug": "POSTHOG_GET_DATASET", "name": "Get dataset details", "description": "Retrieve detailed information about a specific dataset within a project. Use this to get dataset properties including name, description, creator info, and timestamps." }, { "slug": "POSTHOG_GET_DATASET_ITEM", "name": "Get Dataset Item", "description": "Tool to retrieve a specific dataset item by its ID from a PostHog project. Use when you need to fetch details about a particular dataset item including its input, output, metadata, and creation information." }, { "slug": "POSTHOG_GET_DATASET_ITEMS", "name": "Get dataset items", "description": "Tool to retrieve paginated dataset items for a specific project in PostHog. Use when you need to list or explore dataset items with optional filtering by dataset ID." }, { "slug": "POSTHOG_GET_DATASETS", "name": "Get Datasets", "description": "Tool to retrieve datasets for a PostHog project. Use when you need to list or search datasets within a specific project. Supports filtering by IDs, searching by name/description, and ordering results." }, { "slug": "POSTHOG_GET_DESKTOP_RECORDINGS", "name": "Get desktop recordings", "description": "Tool to retrieve desktop meeting recordings for a specific project. Use when you need to access recorded meetings with transcripts, summaries, and extracted tasks. Returns paginated results with support for limit and offset parameters." }, { "slug": "POSTHOG_GET_ENDPOINT_OPENAPI_SPECIFICATION", "name": "Get Endpoint OpenAPI Specification", "description": "Get OpenAPI 3.0 specification for a specific PostHog endpoint. Use this to generate typed SDK clients. Returns the complete OpenAPI schema including paths, components, and security definitions for the specified endpoint." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_ASSIGNMENT_RULES", "name": "Get error tracking assignment rules", "description": "Tool to retrieve error tracking assignment rules for a project. Use when you need to list the configured rules that automatically assign error tracking issues to team members based on filters. Supports pagination via limit and offset parameters." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_AUTOCAPTURE_CONTROL", "name": "Get error tracking autocapture control", "description": "Retrieve a specific error tracking autocapture control configuration by its ID. Use this to view detailed settings for a particular autocapture control including sample rates, URL triggers, and event filters." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_FINGERPRINTS", "name": "Get error tracking fingerprints", "description": "Tool to retrieve error tracking fingerprints for a project. Use when you need to list tracked errors with their status, occurrence counts, and timing information. Returns paginated list of error fingerprints that group similar errors together for easier tracking and resolution." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_GROUPING_RULES", "name": "Get error tracking grouping rules", "description": "Tool to retrieve error tracking grouping rules for a project. Use when you need to list the configured rules that control how error tracking issues are grouped together based on filters. Supports pagination via limit and offset parameters." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_RELEASE", "name": "Get error tracking release", "description": "Retrieve details of a specific error tracking release by its UUID and project ID. Use when you need to fetch information about a particular release in error tracking." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_RELEASE_BY_HASH", "name": "Get error tracking release by hash", "description": "Tool to retrieve an error tracking release by its hash identifier. Use when you need to fetch release details using a hash ID instead of the UUID. Requires 'error_tracking:read' scope." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_RELEASES", "name": "Get error tracking releases", "description": "Tool to retrieve paginated error tracking releases for a specific project in PostHog. Use when you need to list releases associated with error tracking to identify version-specific issues." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_SUPPRESSION_RULES", "name": "Get error tracking suppression rules", "description": "Tool to retrieve error tracking suppression rules for a project. Use when you need to list the configured rules that automatically suppress specific error tracking issues based on filters. Supports pagination via limit and offset parameters." }, { "slug": "POSTHOG_GET_ERROR_TRACKING_SYMBOL_SETS", "name": "Get error tracking symbol sets", "description": "Tool to retrieve error tracking symbol sets for a PostHog project. Use when you need to list symbol sets used for error stack trace symbolication. Returns paginated list of symbol sets including their references, release versions, and processing status." }, { "slug": "POSTHOG_GET_EVALUATION", "name": "Get Evaluation", "description": "Retrieve details of a specific evaluation by its UUID and project ID. Use this to fetch evaluation configuration, type, conditions, and associated model settings." }, { "slug": "POSTHOG_GET_EVALUATIONS", "name": "Get evaluations for project", "description": "Tool to retrieve evaluations configured for a specific PostHog environment/project. Use when you need to list AI model evaluations, check their configurations, or filter evaluations by status or search terms. Returns paginated list of evaluations with their types, configurations, and metadata." }, { "slug": "POSTHOG_GET_EVENT_DEFINITION", "name": "Retrieve event definition by uuid", "description": "Retrieve an event definition by its UUID within a specified project. Requires a project_id and an event definition ID, with access secured by PersonalAPIKeyAuth. (GET /api/projects/{project_id}/event_definitions/{id})" }, { "slug": "POSTHOG_GET_EVENT_DEFINITION_BY_NAME", "name": "Get event definition by name", "description": "Tool to retrieve an event definition by its exact name for a specific project. Use when you need to look up details about a specific event by name rather than UUID." }, { "slug": "POSTHOG_GET_EVENT_DEFINITIONS", "name": "Retrieve event definitions by project id", "description": "Retrieve definitions for events within a specified project by providing the unique project_id. Requires PersonalAPIKeyAuth privileges for event_definition:read. No response body provided upon a successful call." }, { "slug": "POSTHOG_GET_EVENT_DEFINITIONS_GOLANG", "name": "Get event definitions in Golang format", "description": "Tool to retrieve event definitions in Golang format for a specific PostHog project. Use when you need Golang code generation or type definitions for events in the specified project." }, { "slug": "POSTHOG_GET_EVENT_DEFINITIONS_PYTHON", "name": "Get event definitions in Python format", "description": "Tool to retrieve Python-formatted event definitions for a specific project. Use when you need to access event definitions in Python format for code generation or SDK integration." }, { "slug": "POSTHOG_GET_EVENT_DEFINITIONS_TYPESCRIPT", "name": "Get event definitions TypeScript", "description": "Tool to retrieve TypeScript event definitions for a specific project. Use when you need to generate type-safe event definitions for TypeScript applications." }, { "slug": "POSTHOG_GET_EXPERIMENT_DETAILS", "name": "Retrieve experiment details by ids", "description": "Access detailed experiment info within a project using unique `experiment ID` & `project ID`, with 'experiment:read' rights. Response includes dates, feature flag key, metrics, creator details." }, { "slug": "POSTHOG_GET_EXPERIMENT_HOLDOUT_DETAILS", "name": "Get experiment holdout details", "description": "Retrieve details of a specific experiment holdout by ID within a project. Use this to get information about an experiment holdout including its name, description, filters, and creation details." }, { "slug": "POSTHOG_GET_EXPERIMENT_HOLDOUTS", "name": "Get experiment holdouts", "description": "Tool to retrieve experiment holdouts for a specific PostHog project. Use when you need to view holdout groups for experiments. Returns paginated list of holdouts with their configurations and metadata." }, { "slug": "POSTHOG_GET_EXPERIMENT_SAVED_METRIC", "name": "Get experiment saved metric", "description": "Tool to retrieve a specific experiment saved metric by ID from a PostHog project. Use when you need to fetch details about a saved metric configuration for experiments." }, { "slug": "POSTHOG_GET_EXPERIMENTS_ELIGIBLE_FEATURE_FLAGS", "name": "Get eligible feature flags for experiments", "description": "Tool to retrieve feature flags eligible for use in experiments. Use when you need to find multivariate feature flags that can be used to run A/B tests. Only returns flags with at least 2 variants where the first variant key is 'control'." }, { "slug": "POSTHOG_GET_EXPERIMENTS_REQUIRING_FLAG_IMPLEMENTATION", "name": "Retrieve experiments requiring flag implementation", "description": "Retrieve details for experiments that require feature flag implementation in a specific project. Requires a valid 'project_id' and user must have 'experiment:read' permission. Returns information like experiment names, dates, flags, and creation data." }, { "slug": "POSTHOG_GET_EXPERIMENTS_STATS", "name": "Get experiments stats", "description": "Tool to retrieve experimentation velocity statistics for a PostHog project. Use when you need to understand overall experiment activity and distribution. Returns high-level statistics including total, running, completed, and draft experiment counts." }, { "slug": "POSTHOG_GET_EXPORT_UNSUBSCRIBE_CONFIGS", "name": "Retrieve export unsubscribe configs", "description": "Retrieves export unsubscribe configurations for pipeline import apps in an organization. This endpoint returns a list of configurations that define how users can unsubscribe from various pipeline import app exports. Each configuration includes an ID, plugin type identifier, and configuration settings. Use case: Check which export import apps support unsubscribe functionality and their configuration details. This is useful for managing data export preferences and compliance requirements. Note: This endpoint may require specific organization permissions or enterprise features. If you receive a 403 Forbidden error, the organization may not have access to pipeline import apps or this specific feature may not be enabled." }, { "slug": "POSTHOG_GET_EXPORT_UNSUBSCRIBE_SETTINGS", "name": "Fetch export unsubscribe settings", "description": "Retrieves export unsubscribe configurations for pipeline transformations in an organization. This endpoint returns a list of configurations that define how users can unsubscribe from various pipeline transformation exports. Each configuration includes an ID, plugin type identifier, and configuration settings. Use case: Check which export transformations support unsubscribe functionality and their configuration details. This is useful for managing data export preferences and compliance requirements. Note: This endpoint may require specific organization permissions or enterprise features. If you receive a 403 Forbidden error, the organization may not have access to this feature." }, { "slug": "POSTHOG_GET_EXTERNAL_DATA_SOURCE", "name": "Get external data source", "description": "Tool to retrieve details of a specific external data source by its UUID and project ID. Use when you need to access external data source configuration, status, and metadata." }, { "slug": "POSTHOG_GET_EXTERNAL_DATA_SOURCES", "name": "Get external data sources", "description": "Tool to retrieve external data sources for a PostHog project with pagination support. Use when you need to list or search for configured external data connections like Stripe, Postgres, or Snowflake." }, { "slug": "POSTHOG_GET_FEATURE_FLAG_ACTIVITY_DETAILS", "name": "Retrieve feature flag activity details", "description": "Manage feature flags (creation, reading, updating, and deleting) using PostHog's guides or via JavaScript Library/endpoint for user-specific flag status. [Details](https://posthog.com/docs/user-guides/feature-flags)" }, { "slug": "POSTHOG_GET_FEATURE_FLAG_DETAILS", "name": "Retrieve feature flag details", "description": "Retrieve detailed information about a specific feature flag in a PostHog project. This action fetches comprehensive details including: - Basic information (id, name, key) - Filter configuration and rollout percentages - Status (active, deleted) - Creator and modification history - Associated experiments, surveys, and features - Analytics and dashboard configurations - Access control and permissions - Tags and metadata Use this to inspect feature flag configuration, check status, or gather information before making updates. Requires a valid project_id and feature flag id." }, { "slug": "POSTHOG_GET_FEATURE_FLAG_ROLE_ACCESS_DETAILS", "name": "Retrieve feature flag role access details", "description": "Retrieve details for a specific role's access to a feature flag within a project. Requires 'feature_flag_id', 'id' for role access, and 'project_id'. Returns a JSON object with access details." }, { "slug": "POSTHOG_GET_FEATURE_FLAGS_ACTIVITY_LOG", "name": "Retrieve feature flags activity log", "description": "Learn to manage feature flags by creating, reading, updating, and deleting them. Use PostHog's JavaScript Library or endpoint for application integration. Details in the [docs](https://posthog.com/docs/user-guides/feature-flags)." }, { "slug": "POSTHOG_GET_FEATURE_FLAGS_DEPENDENT_FLAGS", "name": "Get feature flags dependent flags", "description": "Retrieve all active feature flags that depend on a specified flag. Use when you need to understand flag dependencies before modifying or deleting a flag. Helps prevent breaking dependent flags by showing which flags reference the target flag." }, { "slug": "POSTHOG_GET_FEATURE_FLAGS_EVALUATION_REASONS", "name": "Retrieve feature flags evaluation reasons", "description": "Manage feature flags—create, read, update, delete—using the PostHog JavaScript Library or endpoint for user-specific flag status. (More in docs)." }, { "slug": "POSTHOG_GET_FEATURE_FLAGS_MATCHING_IDS", "name": "Get feature flags matching IDs", "description": "Tool to get IDs of all feature flags matching the current filters. Uses the same filtering logic as the list endpoint and returns only IDs that the user has permission to edit." }, { "slug": "POSTHOG_GET_FEATURE_FLAG_STATUS", "name": "Get feature flag status", "description": "Tool to retrieve the status of a specific feature flag in a PostHog project. Use when you need to check the operational status or state of a feature flag beyond its basic configuration details." }, { "slug": "POSTHOG_GET_FILE_SYSTEM", "name": "Get file system", "description": "Tool to retrieve a specific file system resource by UUID and project ID. Use when you need to access details about a file system in PostHog, including metadata and path information." }, { "slug": "POSTHOG_GET_FILE_SYSTEM_SHORTCUT", "name": "Get file system shortcut", "description": "Retrieve a specific file system shortcut by UUID from a project. Requires 'file_system_shortcut:read' permission. Returns detailed information about the shortcut including path, type, and creation timestamp." }, { "slug": "POSTHOG_GET_FILTERED_PROJECT_PROPERTY_DEFINITIONS", "name": "Retrieve filtered project property definitions", "description": "Get property definitions for a project using project_id, with filters for event names, property types, exclusions, and numerical or feature flags. Also, view properties relevant to specific events." }, { "slug": "POSTHOG_GET_FUNNEL_INSIGHTS_IN_PROJECT", "name": "Retrieve funnel insights in project", "description": "Execute a funnel analysis for a specific project. Requires specifying funnel steps via 'events' or 'actions' parameter (at least 2 steps). Returns conversion data showing how users progress through the funnel. Supports JSON/CSV output formats." }, { "slug": "POSTHOG_GET_GROUP_PROPERTY_DEFINITIONS", "name": "Retrieve group property definitions by project id", "description": "Retrieve property definitions for a group within a project by providing the project ID. This endpoint returns details like group type index, key, and creation time in JSON format." }, { "slug": "POSTHOG_GET_GROUP_PROPERTY_VALUES", "name": "Retrieve group property values by index and key", "description": "Retrieve property values by 'group_type_index' and 'key' within a 'project_id'. Parameters must be provided. Output is a JSON with property details and creation timestamp." }, { "slug": "POSTHOG_GET_GROUPS_TYPES_METRIC_BY_ID", "name": "Get group type metric by ID", "description": "Tool to retrieve detailed information about a specific group usage metric by its ID. Use when you need to get the configuration, filters, display format, and calculation interval for a particular metric within a group type." }, { "slug": "POSTHOG_GET_GROUPS_TYPES_METRICS", "name": "Get groups types metrics", "description": "Tool to retrieve metrics for a specific group type in a PostHog project. Use when you need to list all metrics associated with a particular group type index. Returns paginated results with metric configurations including filters, display settings, and formats." }, { "slug": "POSTHOG_GET_HEDGEHOG_CONFIGURATION", "name": "Retrieve hedgehog configuration by uuid", "description": "Retrieve user's hedgehog configuration details by their UUID. This endpoint returns hedgehog-related settings (PostHog's mascot customization) for a user. Use '@me' as the uuid parameter to reference the current user. IMPORTANT: This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser login) and will return a 403 \"permission_denied\" error with message \"This action does not support Personal API Key access\" when called with an API key. This is a limitation of the PostHog API, not the action implementation." }, { "slug": "POSTHOG_GET_HISTORICAL_APP_METRICS_EXPORT", "name": "Retrieve historical app metrics export", "description": "Retrieve historical export data for app metrics by supplying the `project_id` and `plugin_config_id`. Requires `plugin:read` permission. No response body provided upon a successful request." }, { "slug": "POSTHOG_GET_HOG_FUNCTION", "name": "Get hog function", "description": "Tool to retrieve a specific hog function by UUID and project ID. Use when you need to access details about a hog function including its configuration, code, filters, and status." }, { "slug": "POSTHOG_GET_HOG_FUNCTIONS", "name": "Get hog functions", "description": "Tool to retrieve hog functions for a specific PostHog project. Use when you need to list, search, or filter hog functions with pagination support." }, { "slug": "POSTHOG_GET_IMPORTANT_PROJECT_ACTIVITY_LOG", "name": "Retrieve important project activity log", "description": "Retrieve a log of important activities and changes for a specified project. This endpoint returns significant project events including creation, updates, and deletions of resources like dashboards, feature flags, insights, session recording playlists, tags, and other key entities. Each entry includes the activity type, affected item details, user information (if user-initiated), timestamps, and a detailed change log. System-generated activities are also included. Results are paginated and ordered by most recent first. Requires a `project_id`. Use the LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS action to obtain available project IDs." }, { "slug": "POSTHOG_GET_INSIGHT_SHARING_CONFIGURATIONS", "name": "Retrieve insight sharing configurations", "description": "Retrieve sharing configurations for a specific insight within a project, requiring project and insight IDs. Validates access via PersonalAPIKeyAuth. Returns data such as creation time and access tokens." }, { "slug": "POSTHOG_GET_INSIGHTS_THRESHOLDS", "name": "Get insight thresholds", "description": "Tool to retrieve thresholds configured for a specific insight within a project. Use when you need to view alert thresholds or monitoring criteria set up for an insight. Returns paginated list of thresholds with their configurations and associated alerts." }, { "slug": "POSTHOG_GET_INSIGHT_THRESHOLD", "name": "Get insight threshold", "description": "Tool to retrieve a specific insight threshold by ID for a PostHog project. Use when you need to view threshold configuration, bounds, and associated alerts for monitoring insights." }, { "slug": "POSTHOG_GET_INSIGHT_VARIABLE", "name": "Get insight variable", "description": "Tool to retrieve a specific insight variable by UUID and project ID. Use when you need to access details about an insight variable including its type, name, and values." }, { "slug": "POSTHOG_GET_INSIGHT_VARIABLES", "name": "Get insight variables", "description": "Tool to retrieve paginated list of insight variables for a project. Use when you need to discover available variables for insights or query their configurations. Returns variables with their types, default values, and metadata." }, { "slug": "POSTHOG_GET_LIVE_DEBUGGER_BREAKPOINT", "name": "Get live debugger breakpoint", "description": "Tool to retrieve a specific live debugger breakpoint by UUID and project ID. Use when you need to fetch details about a breakpoint for live debugging." }, { "slug": "POSTHOG_GET_LIVE_DEBUGGER_BREAKPOINTS", "name": "Get live debugger breakpoints", "description": "Tool to retrieve live debugger breakpoints for a project. Returns a paginated list of breakpoints with their configuration including filename, line number, condition, and status. Use when you need to list or inspect existing breakpoints for live debugging." }, { "slug": "POSTHOG_GET_LLM_ANALYTICS_EVALUATION_CONFIG", "name": "Get LLM Analytics Evaluation Config", "description": "Tool to retrieve the LLM analytics evaluation configuration for a specific PostHog project. Use when you need to check evaluation settings, trial limits, or usage statistics for LLM analytics features." }, { "slug": "POSTHOG_GET_LLM_ANALYTICS_MODELS", "name": "Get LLM Analytics Models", "description": "Tool to list available LLM models for a specific provider in PostHog LLM Analytics. Use when you need to discover which models are available for a given provider (e.g., openai, anthropic)." }, { "slug": "POSTHOG_GET_LLM_ANALYTICS_PROVIDER_KEYS", "name": "Get LLM Analytics Provider Keys", "description": "Tool to retrieve LLM analytics provider keys for a project. Use when you need to list API keys configured for LLM analytics providers. Returns paginated results with provider key details including masked keys, usage timestamps, and provider information." }, { "slug": "POSTHOG_GET_LOGS_ATTRIBUTES", "name": "Get logs attributes", "description": "Tool to retrieve available log attributes for a PostHog project. Use when you need to discover what log attribute fields are available for querying or filtering logs. Requires the logs:read scope and returns metadata about log attributes that can be used in log queries." }, { "slug": "POSTHOG_GET_LOGS_HAS_LOGS", "name": "Get logs availability status", "description": "Tool to check if a project has logs available. Use when you need to verify log availability before querying logs. Returns a boolean indicator of log presence." }, { "slug": "POSTHOG_GET_LOGS_VALUES", "name": "Get log field values", "description": "Tool to retrieve unique values for a specific log field key in a PostHog project. Use when you need to discover available values for log fields like level, message, source, or other log properties." }, { "slug": "POSTHOG_GET_ORGANIZATION", "name": "Fetch organization details by uuid", "description": "Retrieve organization details by UUID. Endpoint requires 'organization:read' access. Response includes name, slug, timestamps, membership, plugins access level, and team structure." }, { "slug": "POSTHOG_GET_ORGANIZATION_PIPELINE_APP_REPOSITORIES", "name": "Fetch organization pipeline app repositories", "description": "Retrieve details of pipeline import app repositories for a specific organization by its UUID. Returns JSON with properties like plugin type, name, and URL. Supports 'local', 'custom', 'repository', 'source', 'inline' types." }, { "slug": "POSTHOG_GET_PERSISTED_FOLDER", "name": "Get persisted folders", "description": "Tool to list persisted folders for a PostHog project with pagination support. Use when you need to retrieve or browse persisted folder configurations within a project." }, { "slug": "POSTHOG_GET_PIPELINE_DESTINATION_DETAILS", "name": "Fetch pipeline destination activity", "description": "Retrieve activity logs and metadata for a specific pipeline destination configuration. Returns activity information including latest updates, version tags, and operational status. Use this to monitor the activity and update history of a destination config. For complete destination config details (plugin settings, filters, enabled status), use POSTHOG_RETRIEVE_PIPELINE_DESTINATION_CONFIG_DETAILS instead. Required: project_id (integer) and destination config id (integer)." }, { "slug": "POSTHOG_GET_PIPELINE_TRANSFORMATION_DETAILS", "name": "Fetch pipeline transformation details", "description": "Retrieve available pipeline transformation plugins from the organization's plugin repository. Returns a list of transformation templates that can be used to modify, enrich, or filter events in real-time. Each plugin includes configuration schemas, capabilities, and metadata. Requires `organization_id` (organization UUID). Note: This endpoint requires specific authentication permissions beyond Personal API Keys and may not be accessible in all environments." }, { "slug": "POSTHOG_GET_PRODUCT_TOUR", "name": "Get product tour", "description": "Tool to retrieve a specific product tour by UUID from a PostHog project. Use when you need to fetch details about a product tour configuration, including targeting and content settings." }, { "slug": "POSTHOG_GET_PROJECT_PERSON_TRENDS", "name": "Retrieve and delete project person trends", "description": "This endpoint is for reading and deleting persons. Use the capture API, `$set`/`$unset` properties, or SDKs for creating/updating persons." }, { "slug": "POSTHOG_GET_PROJECT_SURVEY_ACTIVITY_LOG", "name": "Fetch project survey activity log", "description": "Retrieve the activity log of surveys within a specific project by using the project ID. This endpoint requires a PersonalAPIKeyAuth with 'activity_log:read' permission and returns survey details including types, flags, questions, and metadata." }, { "slug": "POSTHOG_GET_ROLE_MEMBERSHIP", "name": "Get Role Membership", "description": "Retrieve details of a specific role membership within an organization by its UUID. Use this to view information about a user's assignment to a particular role, including when they were assigned and their organization member details." }, { "slug": "POSTHOG_GET_SESSION_GROUP_SUMMARIES", "name": "Get session group summaries", "description": "Tool to retrieve stored group session summaries for a project. Use when you need to list or access session grouping summaries. Supports pagination via limit and offset parameters." }, { "slug": "POSTHOG_GET_SESSION_RECORDING_PLAYLIST_DETAILS", "name": "Fetch session recording playlist details", "description": "Retrieve session recording playlist details for a specific project by project_id and playlist short_id. Requires PersonalAPIKeyAuth with read access. Returns playlist metadata including creation and modification info." }, { "slug": "POSTHOG_GET_SURVEY_RESPONSE_STATISTICS", "name": "Get survey response statistics", "description": "Get survey response statistics for a specific survey. Returns event counts, unique respondents, and conversion rates. Use when analyzing survey performance and engagement metrics." }, { "slug": "POSTHOG_GET_SURVEYS_ARCHIVED_RESPONSE_UUIDS", "name": "Get surveys archived response UUIDs", "description": "Tool to get list of archived response UUIDs for HogQL filtering. Returns list of UUIDs that the frontend can use to filter out archived responses in HogQL queries." }, { "slug": "POSTHOG_GET_SURVEYS_STATS", "name": "Get surveys stats", "description": "Tool to get aggregated response statistics across all surveys for a project. Use when you need to analyze overall survey performance, response rates, and dismissal rates. Optionally filter statistics by date range using ISO timestamps." }, { "slug": "POSTHOG_GET_UNUSED_ORG_PIPELINE_FRONTEND_APPS", "name": "Retrieve unused organization pipeline frontend apps", "description": "Retrieve a list of pipeline frontend apps that are available but not currently in use within a specific organization. This is useful for discovering apps that could be enabled or removed. Returns details including app IDs, types, names, descriptions, and URLs. **IMPORTANT AUTHENTICATION NOTE**: This endpoint requires session-based authentication (cookie-based auth from browser sessions) and does NOT support Personal API Key authentication. When using Personal API Keys, this endpoint will return a 403 Forbidden error. To use this endpoint, authentication must be done through a browser session with proper organization access. Args: organization_id: The UUID of the organization to query Returns: A list of unused pipeline frontend apps with their metadata" }, { "slug": "POSTHOG_GET_USER_HOME_SETTINGS", "name": "Get user home settings", "description": "Tool to retrieve user home settings including homepage and tab configurations. Use when you need to fetch the personalized home page and tab settings for a user." }, { "slug": "POSTHOG_GET_USER_INTERVIEWS", "name": "Get user interviews", "description": "Tool to retrieve paginated list of user interviews for a specific project. Use when you need to access interview recordings, transcripts, and summaries." }, { "slug": "POSTHOG_GET_WAREHOUSE_SAVED_QUERIES_ACTIVITY", "name": "Get warehouse saved queries activity", "description": "Tool to retrieve activity details for a specific warehouse saved query in PostHog. Use when you need to check the execution history, status, and metadata of a data warehouse saved query." }, { "slug": "POSTHOG_GET_WAREHOUSE_SAVED_QUERY", "name": "Get warehouse saved query", "description": "Tool to retrieve a warehouse saved query from PostHog data warehouse. Use when you need to get details about a specific saved query including its status, execution history, and configuration. Returns complete information about the saved query including creator details, query definition, and execution status." }, { "slug": "POSTHOG_GET_WAREHOUSE_TABLE", "name": "Get warehouse table", "description": "Retrieve details of a specific data warehouse table by its UUID. Use this to inspect warehouse table configuration, credentials, schema, and format." }, { "slug": "POSTHOG_GET_WAREHOUSE_TABLES", "name": "Get Warehouse Tables", "description": "Tool to retrieve a paginated list of warehouse tables for a specific project. Use when you need to list, search, or discover warehouse tables. Supports pagination via limit/offset and filtering via search term." }, { "slug": "POSTHOG_GET_WEB_EXPERIMENT", "name": "Get web experiment", "description": "Tool to retrieve a specific web experiment by ID from a PostHog project. Use when you need to fetch configuration details about a web experiment including variants and feature flag mapping." }, { "slug": "POSTHOG_GET_WEB_VITALS", "name": "Get web vitals", "description": "Tool to retrieve web vitals metrics for a specific pathname in a PostHog project. Returns Core Web Vitals data including INP (Interaction to Next Paint), LCP (Largest Contentful Paint), CLS (Cumulative Layout Shift), and FCP (First Contentful Paint) as 90th percentile values over the past 7 days." }, { "slug": "POSTHOG_INITIATE_DOMAIN_VERIFICATION_WITH_SAML_CONFIG", "name": "Initiate domain verification with saml config", "description": "Initiates domain verification for SAML SSO authentication. This endpoint triggers the verification process for a previously created domain by checking if the required DNS TXT record has been added. **Requirements:** - Enterprise plan with SAML SSO feature - Domain must be created first via CREATE_DOMAIN_WITH_SAML_FOR_ORGANIZATION - DNS TXT record with verification_challenge value must be published **Verification Process:** 1. Create domain and receive verification_challenge value 2. Add TXT record to your domain's DNS: _posthog-challenge.yourdomain.com with the challenge value 3. Call this endpoint to verify - PostHog checks for the DNS record 4. If found, domain is_verified becomes true and SAML SSO is activated **Common Errors:** - 403: Organization lacks Enterprise plan or proper permissions - 404: Domain ID not found in organization - Verification may fail if DNS record not propagated yet (can take up to 48 hours) POST /api/organizations/{organization_id}/domains/{id}/verify/" }, { "slug": "POSTHOG_LIST_ALERTS", "name": "List alerts for project", "description": "Tool to retrieve all alerts configured for a specific PostHog project. Use when you need to view alert configurations, check alert status, or monitor what alerts are set up. Returns paginated list of alerts with their configurations, thresholds, and current states." }, { "slug": "POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS", "name": "List all projects across organizations", "description": "Tool to list all projects the authenticated user can access by enumerating organizations and aggregating each organization's projects. Use when you need to discover all available projects without knowing organization IDs upfront. Handles pagination internally and returns a unified list with organization context." }, { "slug": "POSTHOG_LIST_AND_FILTER_PROJECT_EVENTS", "name": "List and filter project events", "description": "This endpoint for listing/filtering events is deprecated and maintained only for compatibility. Users are discouraged from using it and should use the Query endpoint for ad-hoc lists/aggregations or CDP/Batch Exports for bulk exports." }, { "slug": "POSTHOG_LIST_AND_MANAGE_PROJECT_ANNOTATIONS", "name": "List and manage project annotations", "description": "Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations." }, { "slug": "POSTHOG_LIST_AND_MANAGE_PROJECT_FEATURE_FLAGS", "name": "List and manage project feature flags", "description": "List all feature flags for a specific project with pagination support. Returns detailed information about each flag including its key, name, filters, rollout configuration, associated experiments/surveys, user access levels, and metadata. Use the project_id from LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS or similar actions." }, { "slug": "POSTHOG_LIST_BATCH_EXPORT_RUNS", "name": "List Batch Export Runs", "description": "List runs for a batch export by `batch_export_id` within a project. Supports pagination & ordering of the results. Requires `batch_export:read` permission. Returns status, errors, counts, and timestamps for each run." }, { "slug": "POSTHOG_LIST_CONVERSATIONS_TICKETS", "name": "List conversations tickets", "description": "Tool to list tickets with person data attached for a project. Use when you need to retrieve all tickets in a project, with optional pagination support." }, { "slug": "POSTHOG_LIST_DASHBOARD_SHARING_CONFIGS", "name": "List dashboard sharing configs", "description": "Retrieve a list of dashboard sharing configurations for a specified project and dashboard. Requires dashboard ID, project ID, and sharing read permission via PersonalAPIKeyAuth. Returns JSON array of sharing settings." }, { "slug": "POSTHOG_LIST_ENDPOINTS", "name": "List endpoints for project", "description": "Tool to list all endpoints for the team. Use when you need to retrieve or discover available endpoints within a project." }, { "slug": "POSTHOG_LIST_ENDPOINT_VERSIONS", "name": "List endpoint versions", "description": "Tool to list all versions for a specific endpoint in PostHog. Use when you need to retrieve version history or check available versions for an endpoint. Requires both the project ID and the endpoint name to fetch the versions list." }, { "slug": "POSTHOG_LIST_ERROR_TRACKING_AUTOCAPTURE_CONTROLS", "name": "List error tracking autocapture controls", "description": "Tool to list error tracking autocapture controls for a PostHog project. Returns paginated list of autocapture configurations including library settings, URL triggers, and sampling rates. Use when you need to view or audit error tracking autocapture settings." }, { "slug": "POSTHOG_LIST_EXPERIMENT_SAVED_METRICS", "name": "List experiment saved metrics", "description": "Tool to list experiment saved metrics for a project with pagination support. Use when you need to retrieve saved metric configurations for experiments in a PostHog project." }, { "slug": "POSTHOG_LIST_FEATURE_FLAG_ROLE_ACCESS_DETAILS", "name": "List feature flag role access details", "description": "This GET endpoint returns role access details for a feature flag in a project, needs 'project_id' & 'feature_flag_id', and offers optional 'limit' & 'offset' for pagination." }, { "slug": "POSTHOG_LIST_FILE_SYSTEM", "name": "List file system resources", "description": "Tool to list file system resources for a PostHog project with pagination support. Use when you need to browse or search through available file system resources in a project." }, { "slug": "POSTHOG_LIST_GROUPS_BY_TYPE", "name": "List specific type groups with pagination", "description": "List all groups of a specific group type. You must pass ?group_type_index= in the URL. To get a list of valid group types, call /api/:project_id/groups_types/" }, { "slug": "POSTHOG_LIST_LIVE_DEBUGGER_BREAKPOINT_HITS", "name": "List live debugger breakpoint hits", "description": "Tool to retrieve breakpoint hit events from ClickHouse with optional filtering and pagination. Use when you need to view hit events containing stack traces, local variables, and execution context from your application's runtime. Breakpoint IDs are filtered to only include those belonging to the current team for security." }, { "slug": "POSTHOG_LIST_LIVE_DEBUGGER_BREAKPOINTS_ACTIVE", "name": "List active live debugger breakpoints", "description": "Tool to fetch active live debugger breakpoints for external client applications using Project API key. Returns a list of breakpoints that client applications can use to instrument their code accordingly. Supports filtering by enabled status, filename, or repository." }, { "slug": "POSTHOG_LIST_NOTEBOOKS", "name": "List notebooks with filters and pagination", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_LIST_OR_DELETE_PERSONS_WITH_OPTIONAL_FILTERS", "name": "List or delete persons with optional filters", "description": "This endpoint is for reading/deleting persons. For creating/updating, use the capture API, set/unset properties, or SDKs." }, { "slug": "POSTHOG_LIST_ORGANIZATION_BATCH_EXPORTS", "name": "List organization s batch exports with pagination", "description": "Retrieve paginated batch exports for an organization, with filters and optional limits. Includes team, interval, and status details. Access requires PersonalAPIKeyAuth with batch_export:read rights." }, { "slug": "POSTHOG_LIST_ORGANIZATION_DOMAINS", "name": "List organization domains with pagination", "description": "Fetch a list of an organization's domains with pagination using `limit` and `offset`. Access requires `organization_id` and a PersonalAPIKeyAuth. Optional parameters available. Provides domain info, verification, and SAML setup." }, { "slug": "POSTHOG_LIST_ORGANIZATION_INTEGRATIONS", "name": "List organization integrations", "description": "Tool to list organization-level integrations with read-only access. Use when you need to view integrations scoped to an entire organization (e.g., Vercel, AWS Marketplace). Creation is handled by integration installation flows; deletion requires contacting support." }, { "slug": "POSTHOG_LIST_ORGANIZATION_INVITES", "name": "List organization invites with pagination", "description": "Retrieve a paginated list of all pending and active invites for an organization. This action lists all organization invites including: - Email address of invitees - Access level (1=member, 8=admin, 15=owner) - Invite status (expired/active) - Creator information - Optional custom messages Use pagination parameters (limit/offset) for large invite lists. The response includes total count and next/previous URLs for easy page navigation. Requires organization_member:read permission." }, { "slug": "POSTHOG_LIST_ORGANIZATION_MEMBERS", "name": "List organization members with pagination", "description": "List all members of a specific organization with pagination support. Returns detailed member information including user profiles, membership levels, authentication status, and join dates. Use this to discover who has access to an organization, audit membership, or integrate with user management workflows. Supports pagination via limit and offset parameters for handling organizations with many members. Requires organization_member:read permission." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PIPELINE_DESTINATIONS", "name": "List organization s pipeline destinations", "description": "Retrieve a paginated list of an organization's pipeline destinations by ID, with optional count and offset parameters. Requires PersonalAPIKeyAuth (plugin:read). Returns details like ID, type, and organization info." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PIPELINE_FRONTEND_APPS", "name": "List Organization's Pipeline Frontend Apps", "description": "Retrieve a paginated list of available pipeline frontend apps for a specific organization. Frontend apps are site apps that inject code into websites (e.g., notification bars, bug reporters, pineapple mode). Returns detailed information including app configuration schemas, versions, and metadata. Supports pagination via limit and offset parameters. Required: organization_id (UUID format) Optional: limit (number of results per page), offset (starting index)" }, { "slug": "POSTHOG_LIST_ORGANIZATION_PIPELINE_IMPORT_APPS", "name": "List organization s pipeline import apps", "description": "Retrieve a paginated list of pipeline import applications for a specified organization by ID. Supports optional 'limit' and 'offset' query parameters for result pagination. Requires an organization UUID and a Personal API Key for authentication." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PIPELINE_TRANSFORMATIONS", "name": "List organization s pipeline transformations", "description": "Retrieve paginated pipeline transformation lists for an organization using `limit` and `offset`, requiring a UUID and PersonalAPIKeyAuth. Supports filtering and detailed views." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PLUGINS", "name": "List Organization Plugins with Pagination", "description": "Retrieve the list of plugins for a specified organization. Supports pagination through 'limit' and 'offset' query parameters. Requires a valid organization UUID and PersonalAPIKeyAuth for access. Returns plugin details including types and status." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PROJECTS", "name": "List projects in organization with pagination", "description": "Projects for the current organization." }, { "slug": "POSTHOG_LIST_ORGANIZATION_PROXY_RECORDS", "name": "List organization proxy records", "description": "Retrieve a paginated list of custom domain proxy records for an organization. Proxy records enable routing PostHog analytics through your own domain to bypass ad blockers. Each record includes the domain, CNAME target, status ('waiting', 'issuing', 'live'), and metadata. Use 'limit' and 'offset' parameters for pagination. Requires organization read access." }, { "slug": "POSTHOG_LIST_ORGANIZATION_ROLES", "name": "List organization roles with pagination", "description": "List all roles in an organization with pagination support. Returns role details including ID, name, creation timestamp, creator information, assigned members, and default status. Use limit and offset parameters for pagination through large role lists. Requires authentication with PersonalAPIKeyAuth." }, { "slug": "POSTHOG_LIST_PIPELINE_DESTINATION_CONFIGS", "name": "List pipeline destination configs with pagination", "description": "List pipeline destination configurations for a given project by ID, with optional pagination through 'limit' and 'offset' query parameters. Returns details such as plugin info and delivery rates. Authentication required." }, { "slug": "POSTHOG_LIST_PIPELINE_FRONTEND_APP_CONFIGS", "name": "List pipeline frontend app configs", "description": "List all pipeline frontend app configurations for a project. Pipeline frontend apps are plugins that add UI extensions to PostHog (e.g., custom visualizations, dashboards, etc.). Returns a paginated list of configurations including enabled status, order, plugin details, and filters. Use 'limit' and 'offset' parameters for pagination." }, { "slug": "POSTHOG_LIST_PRODUCT_TOURS", "name": "List product tours", "description": "Tool to retrieve a paginated list of product tours for a specific project. Use when you need to view all product tours configured in a project. Supports pagination with limit and offset, and search filtering." }, { "slug": "POSTHOG_LIST_PROJECT_ACTIONS", "name": "List project actions with pagination and filters", "description": "Get paginated project actions with filters by format. Query params: limit, offset. Needs PersonalAPIKeyAuth for read. Includes ID, name, description, metadata." }, { "slug": "POSTHOG_LIST_PROJECT_BATCH_EXPORTS", "name": "List project batch exports with pagination", "description": "Retrieve an indexed list of batch exports for a specified project with optional pagination. View export details, statuses, and pagination links. Requires project ID and supports PersonalAPIKeyAuth." }, { "slug": "POSTHOG_LIST_PROJECT_CONFIGURATION_PLUGIN_LOGS", "name": "List project configuration plugin logs", "description": "Retrieve logs for a specific plugin configuration within a project. Supports pagination with limit and offset query parameters. Requires project and plugin configuration IDs. Auth: PersonalAPIKeyAuth with plugin:read scope." }, { "slug": "POSTHOG_LIST_PROJECT_DASHBOARD_COLLABORATORS", "name": "List project dashboard collaborators", "description": "Retrieve the list of collaborators for a specific dashboard within a project. This endpoint returns all users who have been explicitly added as collaborators to the dashboard, along with their access levels and timestamps. Dashboard owners and project admins are not included in this list as they have inherent access. **Parameters:** - project_id: The project identifier (string). Get from POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS. - dashboard_id: The dashboard identifier (integer). Get from POSTHOG_LIST_PROJECT_DASHBOARDS_WITH_PAGINATION. **Returns:** A list of collaborators with the following details for each: - user_uuid: Unique identifier of the collaborator - level: Access level (37 = can edit, 21 = can view) - added_at: Timestamp when the collaborator was added - updated_at: Timestamp of last update **Authentication:** Requires PersonalAPIKeyAuth with `dashboard:read` permission. **Note:** Returns an empty list if the dashboard has no explicit collaborators." }, { "slug": "POSTHOG_LIST_PROJECT_DASHBOARDS", "name": "List project dashboards with pagination", "description": "Get paginated dashboards for a project by ID, using 'limit' and 'offset'. Must authenticate with PersonalAPIKeyAuth. Includes count, pagination, and dashboard details." }, { "slug": "POSTHOG_LIST_PROJECT_DASHBOARD_TEMPLATES", "name": "List project dashboard templates", "description": "Retrieve available dashboard templates for a PostHog project. Dashboard templates are pre-configured dashboards that help users quickly set up analytics for common use cases like user research, pirate metrics (AARRR), web analytics, error tracking, and more. Each template includes ready-to-use insights and visualizations. Returns a paginated list of templates with their configuration, including tiles, filters, and preview images. Use the 'limit' and 'offset' parameters to paginate through results." }, { "slug": "POSTHOG_LIST_PROJECT_EARLY_ACCESS_FEATURES", "name": "List project early access features", "description": "Retrieve a paginated list of a project's early access features by ID with 'limit' and 'offset' parameters. An API key is needed. Includes feature info like creation date, stage, and documentation link." }, { "slug": "POSTHOG_LIST_PROJECT_EXPERIMENTS", "name": "List project experiments with pagination", "description": "Get a paginated list of experiments within a project using 'limit' and 'offset' parameters. Need a valid project ID and 'experiment:read' permission. Returns details like features and metrics." }, { "slug": "POSTHOG_LIST_PROJECT_EXPORT_ITEMS", "name": "List project export items with pagination", "description": "Retrieve a paginated list of export items for a specific project by ID with optional 'limit' and 'offset' query parameters. Requires PersonalAPIKeyAuth for export:read permission. Supports multiple export formats." }, { "slug": "POSTHOG_LIST_PROJECT_GROUP_TYPES", "name": "List project group types by id", "description": "List all group types configured for a PostHog project. Group types are used to organize entities (like companies, organizations, or teams) in PostHog analytics. Each project can have up to 5 group types (indexed 0-4). Returns an array of group type objects, each containing: - group_type: Unique identifier for the group type - group_type_index: Numeric index (0-4) - name_singular: Optional display name (singular form) - name_plural: Optional display name (plural form) Use this action before querying specific groups to discover available group types." }, { "slug": "POSTHOG_LIST_PROJECT_MEMBERSHIP_DETAILS", "name": "List project membership details", "description": "Retrieve a list of project membership details for a specified project by ID. Members and their roles, such as member or admin, are included along with their join and update timestamps. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control. To check if a project has access control enabled, use the POSTHOG_RETRIEVE_CURRENT_USER_PROFILE action and look for the \"access_control\" field in the team/project data." }, { "slug": "POSTHOG_LIST_PROJECT_PIPELINE_CONFIGURATIONS", "name": "List project pipeline configurations", "description": "List all pipeline transformation configurations for a specific project. Pipeline transformations enable you to modify, enrich, or filter events in realtime before they are ingested into PostHog. This endpoint returns a paginated list of all transformation configurations for the specified project. Use the `limit` and `offset` parameters to paginate through results." }, { "slug": "POSTHOG_LIST_PROJECT_PIPELINE_IMPORT_CONFIGS", "name": "Listprojectpipelineimportconfigs", "description": "List pipeline import app configurations for a specified project, with pagination options 'limit' and 'offset'. Requires a project ID and supports PersonalAPIKeyAuth for security. Responds with JSON objects including configuration details." }, { "slug": "POSTHOG_LIST_PROJECT_PLUGIN_CONFIGURATIONS", "name": "List project plugin configurations", "description": "List all plugin configurations for a specific project. Plugin configurations define which plugins (apps) are installed and enabled for a project, along with their settings and execution order. This endpoint returns a paginated list of all plugin configurations for the specified project. Use the `limit` and `offset` parameters to paginate through results." }, { "slug": "POSTHOG_LIST_PROJECT_SESSION_RECORDINGS", "name": "List project session recordings", "description": "Retrieve a paginated list of session recordings for a specific project, including viewing times and user interactions. Specify `project_id`, and use optional `limit` and `offset` query parameters to control result set size and starting point." }, { "slug": "POSTHOG_LIST_PROJECT_SUBSCRIPTIONS", "name": "List project subscriptions with pagination", "description": "Retrieve a paginated list of subscriptions for a given project by its ID. Optional query params include 'limit' for results per page and 'offset' for results starting index. Authentication is required. Returns subscription details and navigation links." }, { "slug": "POSTHOG_LIST_PROJECT_SURVEYS", "name": "List paginated surveys for a project", "description": "Get paginated surveys for a project with its ID, using 'limit' and 'offset'. Needs PersonalAPIKeyAuth ('survey:read'). JSON output includes survey info, links, and metadata." }, { "slug": "POSTHOG_LIST_ROLE_MEMBERSHIPS", "name": "List Role Memberships Paginated", "description": "List all users assigned to a specific role within an organization. Role memberships represent the assignment of users to custom roles in PostHog. This endpoint returns a paginated list of users who have been assigned the specified role, allowing you to audit role assignments and manage access control. Use this action to: - View which users are assigned to a particular role - Audit role-based access control in your organization - Track role membership changes over time Pagination is controlled via 'limit' (page size) and 'offset' (starting position) query parameters. The 'organization_id' and 'role_id' are required path parameters that identify the specific role within a specific organization." }, { "slug": "POSTHOG_LIST_SESSION_RECORDING_PLAYLISTS", "name": "List of project s session recording playlists", "description": "List all session recording playlists for a PostHog project, including both user-created playlists and system-generated synthetic playlists (like \"Watch history\", \"Recordings with comments\", etc.). Session recording playlists organize recordings into collections or filter-based groups for easier analysis. Two playlist types exist: - 'filters': Dynamic playlists that automatically include recordings matching specified criteria - 'collection': Manual collections where recordings are explicitly added The response includes synthetic playlists (negative IDs) that are automatically maintained by PostHog, along with custom playlists created by users. Use pagination with limit/offset for large result sets. Requires 'session_recording_playlist:read' permission." }, { "slug": "POSTHOG_LIST_SESSION_RECORDING_SHARING_CONFIGS", "name": "List session recording sharing configs", "description": "Retrieve a list of sharing configurations for a specific session recording in a project, including creation timestamps and access tokens. Requires project and recording IDs." }, { "slug": "POSTHOG_LIST_UNUSED_ORGANIZATION_PIPELINE_TRANSFORMATIONS", "name": "List unused organization pipeline transformations", "description": "Retrieve a list of unused pipeline transformations for a specified organization, identified by UUID. Includes details like name, plugin type, and configuration. Supports JSON response format." }, { "slug": "POSTHOG_LIST_USERS_WITH_STAFF_FILTER_AND_PAGINATION", "name": "List users with staff filter and pagination", "description": "API endpoint fetches a user list with staff filter, pagination (limit, offset), and requires a personal API key. Data includes UUIDs, emails, and organizational details." }, { "slug": "POSTHOG_LIST_WAREHOUSE_SAVED_QUERIES", "name": "List warehouse saved queries", "description": "Tool to retrieve warehouse saved queries for a project. Use when you need to list or search saved queries from the data warehouse. Supports pagination via page parameter and filtering via search term." }, { "slug": "POSTHOG_LIST_WEB_EXPERIMENTS", "name": "List web experiments", "description": "Tool to retrieve a paginated list of web experiments for a specific project. Use when you need to discover available web experiments. Supports pagination via 'limit' and 'offset' parameters." }, { "slug": "POSTHOG_MANAGE_FEATURE_FLAG_ENRICHMENT_FOR_USAGE_DASHBOARD", "name": "Manage feature flag enrichment for usage dashboard", "description": "Learn to manage feature flags (creation, access, modification, removal) using PostHog's docs, with options to use a JavaScript Library or a dedicated endpoint for user-specific flag status." }, { "slug": "POSTHOG_MANAGE_PROJECT_ANNOTATIONS", "name": "Crud operations for project annotations", "description": "Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations." }, { "slug": "POSTHOG_MANAGE_PROJECT_FEATURE_FLAGS_FOR_LOCAL_EVALUATION", "name": "Manage project feature flags for local evaluation", "description": "Retrieve all feature flag definitions for a project to enable local evaluation. This endpoint returns flag configurations, cohort definitions, and group type mappings that allow SDKs and applications to evaluate feature flags locally without making additional API calls for each flag check. This improves performance and reduces latency when checking feature flags for users. Use this when implementing server-side local evaluation in your application or when you need to cache flag definitions." }, { "slug": "POSTHOG_MARK_DASHBOARD_TEMPLATE_AS_DELETED", "name": "Mark dashboard template as deleted", "description": "Hard delete of this model is not allowed. Use a patch API call to set \"deleted\" to true" }, { "slug": "POSTHOG_MARK_INSIGHT_AS_VIEWED_WITH_CONFIGURABLE_FORMAT", "name": "Mark insight as viewed with configurable format", "description": "Marks one or more insights as viewed by the current user for a specified project. This endpoint records user engagement with insights and is idempotent. Requires `project_id` and `insight_ids` (a list of insight IDs to mark as viewed). Supports optional `format` parameter ('csv' or 'json') to control response serialization. Use this to track which insights a user has viewed, helping to surface new or unviewed insights in the UI or analytics." }, { "slug": "POSTHOG_MARK_INSIGHTS_AS_VIEWED", "name": "Create project timing insights", "description": "Record insights as viewed by updating their last_viewed_at timestamps. This endpoint tracks when a user views insights, which is useful for: - Activity tracking and analytics - Recently viewed insights features - User engagement metrics **IMPORTANT**: This endpoint requires session-based (cookie) authentication and does NOT support Personal API Key authentication. Attempting to use this endpoint with a Personal API Key (Bearer token) will result in a 403 Forbidden error. Use this action only when authenticated with session cookies from a logged-in PostHog user session." }, { "slug": "POSTHOG_MARK_NOTEBOOK_AS_DELETED", "name": "Prevent hard delete notebook by flagging", "description": "Hard delete of this model is not allowed. Use a patch API call to set \"deleted\" to true" }, { "slug": "POSTHOG_MOVE_DASHBOARD_TILE", "name": "Move dashboard tile", "description": "Endpoint to move a tile from one dashboard to another. Requires `project_id` (in path), `id` (source dashboard ID in path), `tile` (object with `id` of the tile to move), and `toDashboard` (destination dashboard ID). Returns the updated source dashboard info after the tile has been moved." }, { "slug": "POSTHOG_PATCH_ALERT", "name": "Update alert configuration", "description": "Tool to update an existing alert configuration in PostHog. Use when you need to modify alert settings such as name, enabled status, thresholds, or subscribed users. Performs a partial update (PATCH) - only fields provided in the request will be updated." }, { "slug": "POSTHOG_PATCH_BATCH_EXPORT", "name": "Patch Batch Export", "description": "Update an existing batch export configuration in PostHog by partially modifying fields like name, paused status, destination, or schedule. Use when you need to modify batch export settings without replacing the entire configuration." }, { "slug": "POSTHOG_PATCH_COMPLETE_PRODUCT_ONBOARDING", "name": "Mark product onboarding complete", "description": "Tool to mark a specific product onboarding as complete for a PostHog project. Use when a user has finished onboarding for features like product_analytics, session_replay, feature_flags, surveys, error_tracking, or data_warehouse. Updates the project's onboarding completion status." }, { "slug": "POSTHOG_PATCH_CUSTOMER_PROFILE_CONFIG", "name": "Patch Customer Profile Config", "description": "Update a customer profile configuration by partially modifying fields like content, scope, or sidebar. Use when you need to modify specific fields of an existing customer profile config without replacing the entire object." }, { "slug": "POSTHOG_PATCH_DATASET", "name": "Patch Dataset", "description": "Tool to partially update a dataset in a PostHog project. Use when you need to modify dataset properties like name or description. Only the fields provided in the request will be updated; other fields remain unchanged." }, { "slug": "POSTHOG_PATCH_DATASET_ITEM", "name": "Patch Dataset Item", "description": "Tool to partially update a dataset item by its ID in a PostHog project. Use when you need to modify specific fields of a dataset item such as input, output, metadata, or reference fields." }, { "slug": "POSTHOG_PATCH_ENDPOINT", "name": "Patch endpoint", "description": "Tool to partially update an endpoint for a project. Use when you need to modify specific fields of an existing endpoint without replacing the entire configuration." }, { "slug": "POSTHOG_PATCH_ERROR_TRACKING_AUTOCAPTURE_CONTROLS", "name": "Patch error tracking autocapture controls", "description": "Partially update an error tracking autocapture control configuration. Use this to modify settings like sample rate, URL triggers, event triggers, and match type for a specific autocapture control." }, { "slug": "POSTHOG_PATCH_EVALUATION", "name": "Patch Evaluation", "description": "Update an evaluation by patching specific fields. Use when you need to modify evaluation settings like description, enabled status, or configuration." }, { "slug": "POSTHOG_PATCH_EXPERIMENT", "name": "Partial experiment update in project", "description": "Endpoint enables partial updates to an experiment in a project using PATCH, needing `project_id`, `experiment_id`, and various payload types. Returns updated details. Authentication is mandatory." }, { "slug": "POSTHOG_PATCH_EXPERIMENT_SAVED_METRIC", "name": "Patch experiment saved metric", "description": "Tool to partially update an experiment saved metric by ID in a PostHog project. Use when you need to modify specific fields of a saved metric configuration for experiments." }, { "slug": "POSTHOG_PATCH_EXTERNAL_DATA_SOURCE", "name": "Patch External Data Source", "description": "Tool to update an external data source in PostHog by patching specific fields like description or configuration. Use when you need to modify an existing data source without replacing all fields." }, { "slug": "POSTHOG_PATCH_FILE_SYSTEM", "name": "Patch file system", "description": "Tool to partially update a file system resource by UUID and project ID. Use when you need to update specific fields like last_viewed_at, metadata, or other file system attributes without replacing the entire resource." }, { "slug": "POSTHOG_PATCH_FILE_SYSTEM_SHORTCUT", "name": "Patch file system shortcut", "description": "Tool to partially update a file system shortcut in PostHog by its UUID. Use when you need to modify specific fields of an existing shortcut without replacing all data." }, { "slug": "POSTHOG_PATCH_GROUPS_TYPES_METRICS", "name": "Update group usage metric", "description": "Tool to update a group usage metric configuration in PostHog. Use when you need to modify metric settings such as display format, filters, or interval. Performs a partial update (PATCH) - only fields provided in the request will be updated." }, { "slug": "POSTHOG_PATCH_HOG_FUNCTION", "name": "Patch hog function", "description": "Tool to partially update a hog function by UUID and project ID. Use when you need to modify specific fields of a hog function such as description, enabled status, filters, or configuration without replacing the entire resource." }, { "slug": "POSTHOG_PATCH_INSIGHT_VARIABLE", "name": "Patch Insight Variable", "description": "Update an insight variable by partially modifying its properties (name, type, default value, etc.). Use when you need to modify specific fields of an existing insight variable without replacing the entire object." }, { "slug": "POSTHOG_PATCH_LIVE_DEBUGGER_BREAKPOINT", "name": "Patch live debugger breakpoint", "description": "Tool to update a live debugger breakpoint by UUID and project ID. Use when you need to modify breakpoint properties like line number, enabled state, or condition without recreating it." }, { "slug": "POSTHOG_PATCH_ORGANIZATION_DOMAIN", "name": "Update organization domain properties", "description": "Updates selected properties of a domain in an organization via PATCH request, supports various data formats but SAML fields are immutable. Authentication needed." }, { "slug": "POSTHOG_PATCH_ORGANIZATION_ROLE", "name": "Update partial role details in organization", "description": "PATCH /api/organizations/{organization_id}/roles/{id}/: Update partial details of a role by ID within an organization, including name and feature flag access level. Requires UUIDs for both organization and role. Supports JSON, form, and multipart data." }, { "slug": "POSTHOG_PATCH_PERSISTED_FOLDER", "name": "Patch persisted folder", "description": "Tool to partially update a persisted folder by ID for a PostHog project. Use when you need to modify specific attributes of an existing persisted folder configuration." }, { "slug": "POSTHOG_PATCH_PERSON", "name": "Person partial update via project id", "description": "This endpoint allows reading and deleting individuals. For creation or updates, use the capture API, `$set`/`$unset` properties, or SDKs." }, { "slug": "POSTHOG_PATCH_PRODUCT_TOUR", "name": "Patch product tour", "description": "Tool to partially update a product tour in PostHog. Use when you need to modify specific fields of an existing tour like description, archived status, dates, or content." }, { "slug": "POSTHOG_PATCH_PROJECT_ACTION", "name": "Update project action with partial data", "description": "Update an action within a project with a specified ID. Supports partial updates. Accepts JSON, form-data, and query parameters including 'project_id' and 'id'. Formats response in CSV or JSON. Requires 'action:write' permission." }, { "slug": "POSTHOG_PATCH_PROJECT_ANNOTATION", "name": "Partial update project annotation", "description": "Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations." }, { "slug": "POSTHOG_PATCH_PROJECT_COHORT", "name": "Update partial project cohort details", "description": "Update partial cohort details for a specific project. Requires a cohort ID and project ID, supports JSON, form data, and accepts patch changes like name or description. Returns updated cohort data. Auth required." }, { "slug": "POSTHOG_PATCH_PROJECT_DASHBOARD", "name": "Partial update of a project s dashboard", "description": "Endpoint PATCH /api/projects/{project_id}/dashboards/{id}: Allows partial update of a project's dashboard with specified ID. Accepts JSON, form data, and provides a detailed response schema based on user license. Requires dashboard write access." }, { "slug": "POSTHOG_PATCH_PROJECT_FEATURE_FLAG", "name": "Partial update of a project s feature flag", "description": "Learn to manage feature flags (create, read, update, delete) using PostHog's docs, with options for JavaScript Library use or dedicated endpoints for user flag status." }, { "slug": "POSTHOG_PATCH_PROJECT_INSIGHT", "name": "Partial update of a project insight", "description": "The PATCH endpoint supports partial insight updates in a project, allows format specification (CSV/JSON), and requires `PersonalAPIKeyAuth` and `insight:write` scope for access." }, { "slug": "POSTHOG_PATCH_PROJECT_MEMBER", "name": "Update project member role by uuid", "description": "Update a project member's role using their UUID in a specific project. Accepts partial data to modify membership details such as role level, provided the member's UUID and project ID. Note: This endpoint only works for projects with access control enabled (private projects). Access control is an Enterprise feature that can be enabled in Project Settings > Access Control. If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error. To use this endpoint: 1. Ensure the project has access_control: true (Enterprise feature) 2. Use list explicit_members endpoint to get existing member UUIDs 3. Provide the parent_membership_user_uuid (the user's UUID from membership)" }, { "slug": "POSTHOG_PATCH_PROJECT_NOTEBOOK", "name": "Partial update of project notebook", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_PATCH_PROJECT_PROPERTY_DEFINITION", "name": "Partially update project property definition", "description": "PATCH /api/projects/{project_id}/property_definitions/{id}/: Partially update a specific property definition by UUID in a project. Requires property_definition:write auth. No response body." }, { "slug": "POSTHOG_PATCH_PROJECT_SUBSCRIPTION", "name": "Update partial subscription details", "description": "PATCH /api/projects/{project_id}/subscriptions/{id}/: Update partial details of a specific project subscription by ID. Modify target, frequency, and more. Requires subscription:write permission." }, { "slug": "POSTHOG_PATCH_PROJECT_SURVEY", "name": "Update partial survey details", "description": "Update partial survey details by PATCH to /api/projects/{project_id}/surveys/{id}/ with UUID. Edit attributes like name, type, questions, targeting, and flags. Needs PersonalAPIKeyAuth for write access." }, { "slug": "POSTHOG_PATCH_SESSION_RECORDING_PLAYLIST", "name": "Update session recording playlist partially", "description": "Update session recording playlists using PATCH on the endpoint with `project_id` and `short_id`. Accepts JSON and forms data for detail amendments. Partial updates allowed. `PersonalAPIKeyAuth` needed." }, { "slug": "POSTHOG_PATCH_USER", "name": "Update user profile", "description": "Tool to update user profile settings in PostHog. Use when you need to modify user information such as name, email, role, theme preferences, or notification settings. Performs a partial update (PATCH) - only fields provided in the request will be updated. Use uuid '@me' to update the authenticated user." }, { "slug": "POSTHOG_PATCH_WAREHOUSE_SAVED_QUERY", "name": "Patch warehouse saved query", "description": "Tool to partially update a warehouse saved query in PostHog. Use when you need to modify properties like name, query definition, or sync frequency. Only the fields provided in the request will be updated; other fields remain unchanged." }, { "slug": "POSTHOG_PATCH_WAREHOUSE_TABLES", "name": "Patch warehouse tables", "description": "Tool to partially update a warehouse table by patching specific fields like name, format, or schema. Use when you need to modify an existing warehouse table without replacing all fields." }, { "slug": "POSTHOG_PATCH_WEB_EXPERIMENT", "name": "Patch web experiment", "description": "Tool to partially update a web experiment in PostHog. Use when you need to modify specific fields of an existing web experiment without replacing the entire configuration." }, { "slug": "POSTHOG_PAUSE_BATCH_EXPORT", "name": "Pause Batch Export", "description": "Pause a batch export in PostHog to temporarily stop scheduled data exports. Use when you need to halt data exports without deleting the batch export configuration." }, { "slug": "POSTHOG_PAUSE_ORGANIZATION_BATCH_EXPORT", "name": "Pause Organization Batch Export", "description": "Pause an organization-level batch export in PostHog. Use when you need to temporarily stop scheduled data exports at the organization level without deleting the batch export configuration." }, { "slug": "POSTHOG_PROJECT_FUNNEL_ADVANCED_ANALYTICS", "name": "Project Funnel Advanced Analytics", "description": "Create comprehensive funnel analysis for a PostHog project with advanced configuration options. Analyze user conversion through multi-step funnels with customizable time windows, ordering rules, visualization types, breakdowns, and exclusions. Requires at least 2 funnel steps defined via 'events' or 'actions'. Returns conversion rates, drop-off points, and completion metrics in JSON or CSV format. Supports strict/ordered/unordered step sequences, property-based segmentation, and group-level aggregation." }, { "slug": "POSTHOG_PROJECT_TREND_ANALYTICS", "name": "Post Project Trends With Filters", "description": "The `/api/projects/{project_id}/insights/trend/` endpoint provides project trends in CSV/JSON, requires `project_id` and optional parameters, and needs 'PersonalAPIKeyAuth'. It outputs event data and cache status." }, { "slug": "POSTHOG_REARRANGE_FRONTEND_APP_PIPELINE_CONFIGS", "name": "Rearrange frontend app pipeline configs", "description": "Rearrange (reorder) the configuration of frontend apps in a project's data pipeline. Pipeline frontend apps are plugins that add UI extensions to PostHog such as custom visualizations, dashboards, and interactive components. This endpoint allows you to change the order in which these frontend apps are loaded or displayed, and update their configuration settings. **Usage**: Provide the project_id and the configuration details you want to update, including the order parameter to control sequencing. The order parameter determines the priority/sequence of frontend app execution. **Permissions**: Requires 'plugin:write' permission for the specified project. **Note**: This endpoint modifies existing frontend app configurations. Use the list_pipeline_frontend_app_configs action first to see current configurations before rearranging them." }, { "slug": "POSTHOG_REARRANGE_PIPELINE_TRANSFORMATION_CONFIGS", "name": "Rearrange pipeline transformation configs", "description": "Rearrange the execution order of pipeline transformation configurations for a project. This endpoint allows you to change the order in which transformation plugins are executed in the data pipeline. You can also enable/disable specific transformations or update their configuration settings. **Important**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It can only be used with browser session authentication. **Use case**: When you have multiple transformation plugins configured for a project, this endpoint lets you control their execution order by updating the 'order' field, or toggle them on/off using the 'enabled' field. **Note**: To list existing transformation configs first, use the GET endpoint: `/api/projects/{project_id}/pipeline_transformation_configs/`" }, { "slug": "POSTHOG_REARRANGE_PROJECT_IMPORT_APP_CONFIGURATIONS", "name": "Rearrange project import app configurations", "description": "Rearrange app import settings in a project using PATCH /api/projects/{project_id}/... by updating plug-in order and status. Requires `project_id` and a JSON with configurations." }, { "slug": "POSTHOG_REARRANGE_PROJECT_PIPELINE_DESTINATION_CONFIGS", "name": "Rearrange project pipeline destination configs", "description": "Rearrange the execution order of pipeline destination configurations for a project. This endpoint allows you to change the order in which destination plugins receive events in the data pipeline. You can also enable/disable specific destinations or update their configuration settings. **Important**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It can only be used with browser session authentication. **Use case**: When you have multiple destination plugins configured for a project, this endpoint lets you control their execution order by updating the 'order' field, or toggle them on/off using the 'enabled' field. **Note**: To list existing destination configs first, use the GET endpoint: `/api/projects/{project_id}/pipeline_destination_configs/`" }, { "slug": "POSTHOG_RECALCULATE_EXPERIMENT_TIMESERIES", "name": "Create experiment timeseries recalculation", "description": "Tool to create a recalculation request for experiment timeseries data. Use when you need to recalculate metrics for an experiment. The experiment must have a start_date set (must be started) for recalculation to work." }, { "slug": "POSTHOG_RECONFIGURE_PLUGIN_ORDER_AND_STATUS_IN_PROJECT", "name": "Reconfigure plugin order and status in project", "description": "Reconfigure the execution order and status of plugin configurations within a project. This endpoint allows you to update plugin configuration settings including: - Execution order (which plugins run first) - Enabled/disabled status - Configuration parameters **IMPORTANT:** This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser/UI access only). **Note:** PostHog has transitioned from \"plugins\" to \"pipeline destinations/transformations\". This endpoint is part of the legacy plugin system and may have limited functionality. Consider using the pipeline destination/transformation endpoints instead for new integrations." }, { "slug": "POSTHOG_REPLACE_DESKTOP_RECORDING", "name": "Replace Desktop Recording", "description": "Replace a desktop meeting recording in PostHog using PUT. Use when you need to completely replace all recording data including metadata, transcript, participants, and status. Unlike PATCH, this requires all mandatory fields and replaces the entire resource." }, { "slug": "POSTHOG_RESET_PERSON_DISTINCT_ID", "name": "Reset person distinct ID", "description": "Reset a distinct_id for a deleted person. This allows the distinct_id to be used again. Use when you need to recycle a distinct_id from a previously deleted person for reuse." }, { "slug": "POSTHOG_RETRIEVE_ASYNC_QUERY_STATUS_BY_ID", "name": "Retrieve async query status by id", "description": "(Experimental)" }, { "slug": "POSTHOG_RETRIEVE_LAST_VIEWED_INSIGHTS_FOR_USER", "name": "Retrieve last viewed insights for user", "description": "Returns basic details about the last 5 insights viewed by this user. Most recently viewed first." }, { "slug": "POSTHOG_RETRIEVE_MATCHING_EVENTS_FOR_SESSION_RECORDING", "name": "Retrieve matching events for session recording", "description": "Retrieves event IDs matching a filter with one session ID and at least one event/action criterion. Intended for internal use and may have sudden changes. IMPORTANT: This endpoint does NOT support Personal API Key authentication. It requires session-based authentication (browser login) and will return a 403 \"permission_denied\" error with message \"This action does not support Personal API Key access\" when called with an API key. This is a limitation of the PostHog API, not the action implementation." }, { "slug": "POSTHOG_RETRIEVE_NOTEBOOK_ACTIVITY_FOR_PROJECT", "name": "Retrieve notebook activity for project", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_RETRIEVE_NOTEBOOK_ACTIVITY_LOG", "name": "Retrieve notebook activity log", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_RETRIEVE_NOTEBOOK_DETAILS", "name": "Retrieve notebook details", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_RETRIEVE_OR_DELETE_PERSON_RETENTION_DATA", "name": "Retrieve or delete person retention data", "description": "This endpoint is for reading and deleting person data; use the capture API, `$set`/`$unset` properties, or SDKs for creation and updates." }, { "slug": "POSTHOG_RETRIEVE_OR_DELETE_PROJECT_PERSONS_FUNNEL_DATA", "name": "Retrieve or delete project persons funnel data", "description": "Retrieves persons who entered or progressed through a funnel in the specified project. Note: This endpoint requires that a funnel has been previously created and analyzed in PostHog. The endpoint returns person-level data for funnel analysis. For creating or analyzing new funnels, use the insights API endpoint at /api/projects/{project_id}/insights/funnel/. This is a read-only endpoint. To create or update persons, use the capture API with $set and $unset properties, or use PostHog SDKs." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PIPELINE_FRONTEND_APP", "name": "Retrieve organization pipeline frontend app details", "description": "Retrieve pipeline frontend app details for an organization using its 'organization_id' (UUID). Response includes ID, plugin type, name, URL in JSON format, covering various plugin types." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PIPELINE_REPOSITORY_DETAILS", "name": "Retrieve Org Pipeline Repo Details", "description": "Retrieve details for repository pipeline destinations within a specific organization by its UUID. Returns objects like ID, name, and URLs with support for various plugin types (local, custom, etc.)." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PIPELINE_TRANSFORMATION_ACTIVI", "name": "Retrieve org pipeline transformation activity", "description": "Retrieve org pipeline transformation activity" }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PIPELINE_UNSUBSCRIBE_CONFIGS", "name": "Retrieve organization pipeline unsubscribe configs", "description": "Retrieve export unsubscribe configurations for an organization's pipeline frontend apps. Returns a list of unsubscribe configurations defining how users can opt out of frontend app exports (e.g., notification bars, bug reporters). Each config includes an ID, plugin type, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_CURRENT_USER_PROFILE to get it. **IMPORTANT**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It may return a 403 error stating \"This action does not support Personal API Key access\" when used with API keys." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PLUGIN_ACTIVITY", "name": "Retrieve organization plugin activity", "description": "Retrieve activity details for plugins in a specified organization by ID. Supports various plugin types, including local, custom, and repository. Response includes plugin's id, name, type, and relevant metrics. Requires a valid UUID for 'organization_id'." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PLUGIN_DETAILS", "name": "Retrieve organization plugin details", "description": "Retrieve a specific plugin's details for an organization. Requires the plugin's integer ID and the organization's UUID. Only returns plugin info if authenticated with 'plugin:read' permission. Responds with plugin data in JSON format." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PLUGIN_REPOSITORY_DETAILS", "name": "Retrieve organization plugin repository details", "description": "Retrieve plugin repository details for a specific organization by its UUID, including plugin type, name, URL, and more. Accessible via GET request to '/api/organizations/{organization_id}/plugins/repository/'." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PLUGIN_UNSUBSCRIBE_CONFIGS", "name": "Retrieve organization plugin unsubscribe configs", "description": "Retrieve export unsubscribe configurations for plugins in an organization. Returns a list of unsubscribe configurations for various plugin types (local, custom, repository, source, inline) that define how users can opt out of plugin-based exports. Each config includes details like plugin ID, type, name, description, URL, icon, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_PAGINATED_ORGANIZATION_LIST to get it. **IMPORTANT**: This endpoint requires session-based authentication and may NOT support Personal API Key access. It may return a 403 Forbidden error when used with API keys. The endpoint may not be available on all PostHog instances or plans, or may require specific organizational permissions. If you receive a 403 error, the organization may not have access to this feature or the endpoint may be deprecated/removed from the PostHog API." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_PROJECT_DETAILS", "name": "Retrieve organization project details", "description": "Projects for the current organization." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_ROLE_DETAILS", "name": "Retrieve organization role details", "description": "Retrieve the details of a specific role within an organization using its UUID. Requires the organization's UUID and role's UUID in the path and is protected by PersonalAPIKeyAuth with 'organization:read' scope. Returns role data in JSON." }, { "slug": "POSTHOG_RETRIEVE_ORGANIZATION_UNUSED_PIPELINE_APPS", "name": "Retrieve organization s unused pipeline apps", "description": "Retrieve unused pipeline import apps for a specified organization. Endpoint requires an organization_id (UUID) and returns details like plugin type, name, description, and more in JSON format." }, { "slug": "POSTHOG_RETRIEVE_PAGINATED_ORGANIZATION_LIST", "name": "Retrieve paginated organization list", "description": "Retrieve a paginated list of organizations with optional 'limit' and 'offset' query parameters. The response includes organization details like ID, name, and membership level, with secure access controlled via PersonalAPIKeyAuth." }, { "slug": "POSTHOG_RETRIEVE_PERSISTED_FOLDER", "name": "Retrieve persisted folder", "description": "Tool to retrieve a specific persisted folder by its UUID and project ID. Use when you need to get details about a persisted folder including its type, path, and timestamps." }, { "slug": "POSTHOG_RETRIEVE_PERSON_ACTIVITY_AND_DELETE_OPTIONS", "name": "Retrieve person s activity and delete options", "description": "This endpoint is for reading and deleting persons; for creating/updating, use the capture API, `$set`/`$unset` properties, or SDKs." }, { "slug": "POSTHOG_RETRIEVE_PERSON_DETAILS_BY_ID", "name": "Retrieve person details by id", "description": "This endpoint is used to read and delete persons. For creating or updating, use the capture API, `$set` and `$unset` properties, or SDKs." }, { "slug": "POSTHOG_RETRIEVE_PERSONS_FUNNEL_CORRELATION_DATA", "name": "Retrieve persons funnel correlation data", "description": "**Note**: This endpoint path appears to be incorrectly defined or deprecated in the PostHog API. The documented endpoint `/api/projects/{project_id}/persons/funnel/correlation/` returns 403 Forbidden, suggesting it either: 1. Does not exist as a standalone endpoint (correlation data may be accessed via `/api/projects/{project_id}/persons/funnel/` with query parameters) 2. Is an Enterprise Edition feature requiring a paid plan 3. Has been deprecated in favor of other funnel correlation endpoints For funnel correlation analysis, consider using: - `GENERATE_PROJECT_FUNNEL_CORRELATION_INSIGHT` to create correlation insights - `RETRIEVE_PROJECT_FUNNEL_CORRELATION_INSIGHTS` to retrieve correlation insights - `RETRIEVE_OR_DELETE_PROJECT_PERSONS_FUNNEL_DATA` for general funnel persons data This action requires additional query parameters beyond project_id to specify the funnel configuration (events, date ranges, correlation type, etc.) which are not currently defined in the request schema." }, { "slug": "POSTHOG_RETRIEVE_PERSON_VALUES_BY_PROJECT", "name": "Retrieve person property values", "description": "Retrieve unique values for a specific person property across all persons in a project. Returns a list of distinct values for the specified property key, along with the count of persons who have that value. Useful for understanding the distribution of person properties like cities, countries, email domains, or any custom person property. Example use cases: - Get all unique cities where users are located ($geoip_city_name) - Get all unique email domains in your user base (extract from email property) - Get distribution of any custom person property Note: For person creation or updates, use the capture API or SDKs." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_DESTINATION_ACTIVITY", "name": "Retrieve pipeline destination activity", "description": "Retrieve activity details for pipeline destinations within an organization. **Parameters:** - `organization_id` (required): UUID-formatted organization identifier **Returns:** JSON object with pipeline destination activity data including plugin IDs, names, versions, update information, and configuration details. **Note:** This endpoint requires session-based authentication and does not support Personal API Key access." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_DESTINATION_CONFIG_DETAILS", "name": "Retrieve pipeline destination config details", "description": "Retrieve details of a specific pipeline destination config for a project by its ID. Requires project ID and destination config ID. Supports PersonalAPIKeyAuth for read access. Responds with config details including plugin info, status, and timestamps." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_DESTINATION_DETAILS", "name": "Retrieve pipeline destination details", "description": "Fetch a pipeline destination's details by ID and organization UUID, using a PersonalAPIKeyAuth with read access to plugins. Returns JSON with plugin info." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_DESTINATION_PLUGIN_DETAILS", "name": "Retrieve pipeline destination plugin details", "description": "Retrieve details of a specific pipeline destination plugin within an organization by its unique ID. The response includes various properties like name, description, URL, and plugin type for the given organization UUID." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_FRONTEND_APP_ACTIVITY", "name": "Retrieve pipeline frontend app activity", "description": "Retrieve activity details for pipeline front-end apps within a specified organization by organization ID. Returns JSON object with app properties such as ID, type, name, and configuration. UUID path parameter required." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_FRONTEND_APP_DETAILS", "name": "Retrieve pipeline frontend app details", "description": "Retrieve detailed information about a specific pipeline frontend app within an organization. Pipeline frontend apps are site apps that inject code into websites to provide features like notification bars, bug reporters, pineapple mode, and early access features. This action returns comprehensive details including the app's configuration schema, version information, capabilities, and metadata. Use LIST_ORGANIZATION_S_PIPELINE_FRONTEND_APPS to discover available app IDs first, then use this action to get detailed information about a specific app. Required parameters: - organization_id (UUID): Use RETRIEVE_CURRENT_USER_PROFILE to get your organization ID - id (integer): The unique app ID from the list action" }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_FRONTEND_APP_SOURCE_DETAILS", "name": "Retrieve pipeline frontend app source details", "description": "Retrieve details for a specific pipeline frontend app's source by its ID within an organization. Requires an integer ID of the app and UUID of the organization. Returns JSON object with app properties." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_FRONTEND_PLUGIN_CONFIG", "name": "Retrieve pipeline frontend plugin config", "description": "Retrieve the frontend-specific configuration for a pipeline frontend app by its config ID and project ID. This endpoint returns only the client-side configuration that the frontend app needs to run in the browser, such as site app settings, UI customization options, and feature toggles. This is different from the full config endpoint which includes server-side details like enabled status, order, and timestamps. Pipeline frontend apps are plugins that extend PostHog's UI with custom visualizations, site apps, notification bars, and other frontend components. Returns: A configuration object with frontend-specific settings. The structure varies depending on the type of frontend app (e.g., Notification Bar, Pineapple Mode, Early Access Features, etc.). Raises: ExecutionFailed with 404 status code if the config doesn't exist or 403/401 if you don't have permission to access it. Permissions required: Access to the project and pipeline frontend app configs." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_IMPORT_APPS_ACTIVITY", "name": "Retrieve pipeline import apps activity", "description": "Retrieve activity details of pipeline import apps for a given organization. Requires 'organization_id' (UUID). Returns app ID, type, name, URL, and other metadata. Supports 'local', 'custom', 'repository', 'source', and 'inline' plugin types." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_PLUGIN_DETAILS_BY_ID", "name": "Retrieve pipeline plugin details by id", "description": "Retrieve detailed information about a specific pipeline transformation plugin by ID. Returns comprehensive plugin details including: - Plugin type (inline/custom), name, and description - Configuration schema for setting up the plugin - Capabilities (supported methods like processEvent, setupPlugin) - Version information (tag, latest_tag) - Organization ownership details - Availability for Hog function migration Use this to understand how to configure a pipeline transformation before creating a configuration for it. Requires organization-level access." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_PLUGIN_SOURCE", "name": "Retrieve Pipeline Plugin Source", "description": "Retrieve the source details of a pipeline transformation for a specific plugin by ID within an organization. Access plugin metadata, like its type, URL, and config, relevant to organizing and managing pipeline operations." }, { "slug": "POSTHOG_RETRIEVE_PIPELINE_TRANSFORMATION_FRONTEND_CONFIG", "name": "Retrieve pipeline transformation frontend config", "description": "Retrieve the frontend configuration details for a specific pipeline transformation by ID within a given project. This endpoint requires the project ID and transformation config ID in the path." }, { "slug": "POSTHOG_RETRIEVE_PLUGIN_SOURCE_DETAILS", "name": "Retrieve plugin source details", "description": "Retrieve plugin source details by organization and plugin ID. Requires integer 'id' for the plugin and 'organization_id' as UUID. Responds with plugin attributes including type, name, and URL." }, { "slug": "POSTHOG_RETRIEVE_PLUGIN_UPDATE_INFO", "name": "Retrieve plugin update info", "description": "This endpoint retrieves update information for a specific plugin within an organization's pipeline frontend app by its integer ID and the organization's UUID. It returns details such as plugin type, name, and latest version." }, { "slug": "POSTHOG_RETRIEVE_PLUGIN_UPDATE_STATUS", "name": "Retrieve plugin update status", "description": "Retrieve the latest update status for a specific plugin, identified by its integer ID, within an organization specified by UUID. Check compatibility and change logs." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_ACTION_DETAILS_BY_ID", "name": "Retrieve project action details by id", "description": "Get details on a project action by ID. Supports JSON/CSV format via query. Needs 'project_id' and 'id' path parameters. Secured by PersonalAPIKeyAuth." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_ACTIVITY_DETAILS", "name": "Retrieve project activity details", "description": "Retrieve the activity log for a specified project, showing recent changes and events. Returns a paginated list of activity entries including user actions, system events, and changes to resources like dashboards, feature flags, insights, cohorts, and other entities. Each entry includes details about what changed, who made the change, timestamps, and whether it was a user or system action. Useful for auditing project changes, tracking team activity, and understanding the history of modifications to your PostHog project resources. Requires a `project_id`. Use the LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS action to obtain available project IDs." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_ACTIVITY_INSIGHTS", "name": "Retrieve project activity insights", "description": "Retrieve the activity log history for insights in a specific project. Returns a paginated list of all insight-related activities (created, updated, deleted) with details about who performed each action and when. Useful for auditing changes, tracking insight modifications, and understanding insight usage patterns. Supports both JSON (default, structured data) and CSV formats for export. Requires an API key with activity_log:read permission." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_ACTIVITY_LOG_WITH_PAGINATION", "name": "Retrieve project activity log with pagination", "description": "Retrieve a project's activity log with cursor-based pagination. Returns activities like resource creation, updates, and deletions with details about the user who performed the action, timestamps, and change history. Use the cursor parameter from the 'next' field to fetch subsequent pages of results." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_ANNOTATION_DETAILS", "name": "Retrieve project annotation details", "description": "Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_COHORT_DETAILS", "name": "Retrieve project cohort details", "description": "Retrieve detailed information about a specific cohort within a project using its ID. Requires project ID and cohort ID; returns cohort details including name, creator info, and status. Auth: PersonalAPIKeyAuth with cohort:read permission." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_COHORTS_ACTIVITY_LOG", "name": "Retrieve project cohorts activity log", "description": "Retrieve activity log for a specific project's cohorts. Requires a project_id and PersonalAPIKeyAuth with activity_log:read permission. Response includes cohort details and creator info." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_COHORTS_WITH_PAGINATION", "name": "Retrieve project cohorts with pagination", "description": "Retrieve a paginated list of cohorts for a specific project using `project_id`. Supports `limit` and `offset` query params to customize the response. Requires `PersonalAPIKeyAuth` with `cohort:read` permissions." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_EARLY_ACCESS_FEATURE_DETAILS", "name": "Retrieve project early access feature details", "description": "Retrieve details of a specific early access feature in a project by ID. Requires project_id and feature UUID. Must have 'early_access_feature:read' permission. Returns feature details including status, flag info, and timestamps." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_EVENT_DETAILS_BY_ID", "name": "Retrieve project event details by id", "description": "Retrieve details for a specific event by ID within a project. Supports CSV or JSON format. Requires project_id in path and adheres to PersonalAPIKeyAuth for security." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_EVENT_VALUES", "name": "Retrieve project event values", "description": "Retrieve event values for a specific project by ID. Supports querying in CSV or JSON format. Requires a project_id and personal API key with query:read permission. Responds with event details such as ID, distinct_id, properties, etc." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_EXPERIMENT_RESULTS", "name": "Retrieve project experiment results", "description": "Retrieve experiment timeseries results within a project by project and experiment ID. Aggregates daily results into a timeseries format for frontend compatibility. Requires project_id and experiment id in the path, plus metric_uuid and fingerprint query parameters. Returns experiment timeseries details in JSON, with authentication via PersonalAPIKeyAuth." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_EXPORT_DETAILS", "name": "Retrieve project export details", "description": "Retrieve detailed info on a specific export of a project using its unique ID. Requires project ID and supports various export formats like PNG, PDF, CSV, and XLSX. Auth: PersonalAPIKeyAuth with export:read scope." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_FUNNEL_CORRELATION_INSIGHTS", "name": "Retrieve project funnel correlation insights", "description": "Retrieve funnel correlation insights for a specific project. Analyzes which events or properties correlate with conversion success or failure in a funnel. Requires defining a funnel with at least 2 steps via 'events' or 'actions'. Returns correlation data showing which factors positively or negatively impact funnel conversion rates. Supports JSON/CSV output formats." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_GROUP_DETAILS_BY_KEY_AND_TYPE", "name": "Retrieve project group details by key and type", "description": "Retrieves specified group details within a project by group key and type index. Requires 'group_key', 'group_type_index', and 'project_id'. Responds with group details, including creation timestamp." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_INSIGHT_ACTIVITY_DATA", "name": "Retrieve project insight activity data", "description": "Retrieve insights activity for a specific project and insight ID, offering data in JSON or CSV format. Requires project_id and insight id in the path, with optional data format query. Secure access via PersonalAPIKeyAuth." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_INSIGHT_DETAILS", "name": "Retrieve project insight details", "description": "Retrieve details for a specific project insight by ID, with options to format as JSON/CSV, request refresh, and specify dashboard context. Supports PersonalAPIKeyAuth with insight read access. Responses include metadata, results, and caching info." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_INSIGHTS_WITH_PAGINATION", "name": "Retrieve project insights with pagination", "description": "The GET `/api/projects/{project_id}/insights/` endpoint retrieves a paginated list of insights for a specified project. Filter by creator, response format (CSV/JSON), and use limit/offset for result batching. Requires `insight:read` permission." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_MEMBER_DETAILS_BY_UUID", "name": "Retrieve project member details by uuid", "description": "Retrieve detailed information about a specific user's membership level and status within a project by their UUID. Access project members' data, roles, and timestamps. (GET /api/projects/{project_id}/explicit_members/{uuid}) Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_PERSON_ACTIVITY", "name": "Retrieve project person activity", "description": "This endpoint allows reading and deleting individuals. For creating or updating, use the capture API, `$set`/`$unset` properties, or SDKs." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_SESSION_VALUES", "name": "Retrieve project session values", "description": "Retrieve session values for a specified project. Pass the project_id in the URL path to obtain the information. Only the project's ID is required as a parameter. No response body for the 200 OK status code." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_SUBSCRIPTION_DETAILS", "name": "Retrieve project subscription details", "description": "Retrieve a specific subscription for a project, identified by 'project_id' and 'id'. Requires valid API key with read access. Supports GET method, returns subscription details including frequency, type, and creator info." }, { "slug": "POSTHOG_RETRIEVE_PROJECT_TREND_INSIGHTS", "name": "Retrieve project trend insights", "description": "Retrieves saved trend insights from a PostHog project. Returns a list of all trend insights or a specific insight by short_id. Supports pagination via limit/offset and CSV/JSON output formats. Use this to access previously created trend analysis reports. For creating new trend insights, use the POST trends endpoint instead. Requires PersonalAPIKeyAuth authentication." }, { "slug": "POSTHOG_RETRIEVE_PROPERTIES_AND_EVENTS_ASSOCIATION", "name": "Retrieve properties and events association", "description": "Allows a caller to provide a list of event names and a single property name Returns a map of the event names to a boolean representing whether that property has ever been seen with that event_name" }, { "slug": "POSTHOG_RETRIEVE_PROPERTY_DEFINITION_DETAILS", "name": "Retrieve property definition details", "description": "Retrieve details of a specific property definition by UUID within a project. Requires project_id and property definition id. Security: PersonalAPIKeyAuth with read access. No response body provided." }, { "slug": "POSTHOG_RETRIEVE_RELATED_PROJECT_GROUPS", "name": "Retrieve related project groups", "description": "Retrieve related groups for a specific project and user. Requires 'project_id' (path), 'group_type_index', and user 'id' (query). Returns group details with type, key, and creation date." }, { "slug": "POSTHOG_RETRIEVE_RETENTION_INSIGHTS", "name": "Retrieve Retention Insights (Deprecated)", "description": "DEPRECATED: Use POSTHOG_CREATE_RETRIEVE_RETENTION_INSIGHTS_FOR_PROJECT instead. Retrieve retention insights for a specified project using PostHog's Query API. Analyzes how users return over time based on specified events or actions. Uses the /api/projects/{project_id}/query/ endpoint with a RetentionQuery. Requires a project ID and authenticated access with 'insight:read' permission. If no query is provided, returns default retention data for $pageview events over 7 days." }, { "slug": "POSTHOG_RETRIEVE_SESSION_PROPERTY_DEFINITIONS", "name": "Retrieve session property definitions", "description": "Retrieve property definitions for a specific project by providing the project's ID. Access this GET endpoint at `/api/projects/{project_id}/sessions/property_definitions/`. Project ID is mandatory. No response body is returned upon a successful call." }, { "slug": "POSTHOG_RETRIEVE_SESSION_RECORDING_DETAILS", "name": "Retrieve session recording details", "description": "Retrieve detailed information about a specific session recording by providing the session's UUID and associated project ID. The response includes metrics such as duration, activity, timestamps, and user data. Authentication is required." }, { "slug": "POSTHOG_RETRIEVE_SESSION_RECORDING_ERROR_CLUSTERS", "name": "Retrieve session recording error clusters", "description": "Retrieve error clusters from session recordings for a specified project. This endpoint provides details on user interactions, console logs, and activity times in JSON format, requiring the project ID in the path." }, { "slug": "POSTHOG_RETRIEVE_SESSION_RECORDING_PLAYLIST_DETAILS", "name": "Retrieve recordings from playlist", "description": "Retrieve the list of session recordings within a playlist. Returns paginated results containing recording details like duration, activity counts, and timestamps. Use this to access recordings that have been added to a specific playlist in a project." }, { "slug": "POSTHOG_RETRIEVE_SESSION_RECORDING_PROPERTIES_BY_PROJECT_ID", "name": "Retrieve session recording properties", "description": "Retrieve properties of session recordings for a given project by ID, including activity metrics, timestamps, and participant details. Requires project_id in the path. Returns JSON data with recording details." }, { "slug": "POSTHOG_RETRIEVE_SESSION_RECORDING_SNAPSHOTS", "name": "Retrieve session recording snapshots", "description": "Snapshots for a session can be loaded from S3 (if old) or Redis (if recent). Clients call the API without a source to get supported sources, then per source for snapshots. API v1 is deprecated; ClickHouse support removed." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_BATCH_EXPORT_DETAILS", "name": "Retrieve specific batch export details", "description": "Retrieve details of a specific batch export for an organization by its UUID. Requires a PersonalAPIKeyAuth with 'batch_export:read' permission. Responses include export details like name, model, destination, interval, and more." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_BATCH_EXPORT_RUN_DETAILS", "name": "Retrieve specific batch export run details", "description": "Retrieve details for a specific batch export run within a project by ID. Requires a UUID for batch_export_id and run ID. Provides run status, record count, timestamps, latest error, and intervals. Security: PersonalAPIKeyAuth." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_DOMAIN_DETAILS", "name": "Retrieve specific domain details", "description": "Retrieve complete details of a specific authentication domain within an organization by its UUID. Returns domain verification status, SAML SSO configuration, JIT provisioning settings, and SSO enforcement policies. Use this to check if a domain has been verified via DNS, view SAML configuration details, or audit authentication settings for a specific domain. Returns 200 with domain details on success, 404 if the domain doesn't exist or you don't have access. Requires authentication with `organization:read` scope." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_EXPORTED_ASSET_CONTENT", "name": "Retrieve specific exported asset content", "description": "Retrieve the content of a specific exported asset by ID within a project. Requires 'export:read' permission. Supports fetching details like creation time, format (PNG, PDF, CSV, Excel), etc." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_HISTORICAL_PLUGIN_EXPORT", "name": "Retrieve specific historical plugin export", "description": "Retrieve historical export data for a specific plugin configuration within a project. Requires project, plugin config, and export item IDs. Auth via PersonalAPIKeyAuth. No body in 200 response." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_PIPELINE_FRONTEND_APP_CONFIG", "name": "Retrieve specific pipeline frontend app config", "description": "Retrieve the configuration details of a specific pipeline frontend app by providing its unique ID and the associated project ID. Pipeline frontend apps are plugins that extend PostHog's UI with custom visualizations, dashboards, and other frontend components. Returns config details including: - id: Unique identifier for the config - enabled: Whether the app is active - order: Display order in the UI - plugin: Plugin ID and metadata - config: Plugin-specific configuration - filters: Event filters applied - created_at, updated_at: Timestamps Note: Returns 404 error if the config ID doesn't exist in the specified project. Permissions required: 'plugin:read'." }, { "slug": "POSTHOG_RETRIEVE_SPECIFIC_PROJECT_DASHBOARD_DETAILS", "name": "Retrieve specific project dashboard details", "description": "Retrieve details of a specific dashboard within a project. Requires a dashboard ID & project ID, and returns information such as dashboard properties, owner, and access levels. Auth: PersonalAPIKeyAuth[dashboard:read]." }, { "slug": "POSTHOG_RETRIEVE_SURVEY_ACTIVITY_LOGS", "name": "Retrieve survey activity logs", "description": "Retrieve activity logs for specific survey in a project, identified by UUIDs. Requires valid API key with 'activity_log:read' permissions. Supports JSON response detailing survey's properties, types, and creator info." }, { "slug": "POSTHOG_RETRIEVE_SURVEY_DETAILS_WITH_UUID_AND_PROJECT_ID", "name": "Retrieve survey details with uuid and project id", "description": "Retrieve survey details using survey UUID and associated project ID. Supports secure access with 'PersonalAPIKeyAuth'. Returns survey name, type, linking, targeting flags, creator info, and questions with branching logic descriptions." }, { "slug": "POSTHOG_RETRIEVE_SURVEY_RESPONSES_COUNT_BY_PROJECT_ID", "name": "Retrieve survey responses count by project id", "description": "Retrieve the count of survey responses for a specific project by its ID. It requires the project_id parameter and returns details like the survey type, linked flags, and creator info." }, { "slug": "POSTHOG_RETRIEVE_UNSUBSCRIBED_PIPELINE_CONFIGS", "name": "Retrieve unsubscribed pipeline configs", "description": "Retrieve export unsubscribe configurations for an organization's pipeline destinations. Returns a list of unsubscribe configurations defining how users can opt out of data exports to destinations (e.g., S3, BigQuery, Snowflake, Redshift). Each config includes an ID, plugin type, and settings. Required: organization_id (UUID). Use POSTHOG_RETRIEVE_CURRENT_USER_PROFILE or POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS to get it. **IMPORTANT**: This endpoint requires session-based authentication and does NOT support Personal API Key access. It may return a 403 error stating \"This action does not support Personal API Key access\" when used with API keys." }, { "slug": "POSTHOG_RETRIEVE_USER_PROFILE_AND_TEAM_DETAILS", "name": "Retrieve user profile and team details", "description": "Fetch user profile info including team, organization, and notifications. Non-staff users can only retrieve their own profile using '@me' as the uuid parameter. Staff users can retrieve any user's profile using their actual UUID. Returns JSON with name, email, teams, organizations, and status." }, { "slug": "POSTHOG_RETRY_BATCH_EXPORT_RUN", "name": "Retry batch export run", "description": "Tool to retry a failed or incomplete batch export run. Uses the same backfill mechanism as batch export backfills. Use when you need to re-execute a specific batch export run that failed or needs to be re-processed." }, { "slug": "POSTHOG_REVOKE_ORGANIZATION_INVITE", "name": "Revoke organization invite", "description": "Delete an organization invite by its UUID. Requires a valid PersonalAPIKeyAuth with organization member write permission. No response body returned on success (HTTP 204)." }, { "slug": "POSTHOG_RUN_ENDPOINT", "name": "Run endpoint", "description": "Tool to execute a PostHog endpoint with optional materialization and filtering. Endpoints can be HogQL queries, insights (Trends, Funnels, etc.), or other query types. Use this when you need to run a predefined endpoint with custom parameters or filters." }, { "slug": "POSTHOG_SPLIT_PERSON_ENTITIES_IN_PROJECT", "name": "Split person entities in project", "description": "This endpoint allows reading and deleting persons; for creation or updates, use the capture API, `$set`/`$unset` properties, or SDKs." }, { "slug": "POSTHOG_START_ERROR_TRACKING_SYMBOL_SETS_BULK_UPLOAD", "name": "Create error tracking symbol sets bulk start upload", "description": "Tool to initiate bulk upload of error tracking symbol sets for a PostHog project. Use when you need to start uploading debug symbols for error tracking and source map resolution. This endpoint initializes the bulk upload process and returns an ID mapping for tracking." }, { "slug": "POSTHOG_START_ERROR_TRACKING_SYMBOL_SET_UPLOAD", "name": "Create error tracking symbol sets start upload", "description": "Tool to initiate symbol set upload session for error tracking in PostHog. Use when you need to upload symbol files for stack trace symbolication. Returns a presigned S3 URL where the symbol file chunk should be uploaded. The endpoint is part of a multi-step upload process." }, { "slug": "POSTHOG_SUMMARIZE_SURVEY_RESPONSES", "name": "Summarize survey responses", "description": "Tool to generate an AI-powered summary of survey responses for a specific question. Use when you need to analyze and summarize feedback from survey respondents for a particular question." }, { "slug": "POSTHOG_TRANSLATE_TEXT", "name": "Translate text", "description": "Tool to translate text to a target language using PostHog's LLM analytics translation endpoint. Use when you need to translate content for analytics or internationalization purposes." }, { "slug": "POSTHOG_TRIGGER_PROJECT_EXPORT_WITH_FORMAT_OPTION", "name": "Trigger project export with format option", "description": "The `/api/projects/{project_id}/exports/` endpoint triggers a project export, requiring `project_id` and `export_format`. It accepts JSON, form-encoded, and multipart data, responding with a 201 code and export information." }, { "slug": "POSTHOG_UNARCHIVE_SURVEY_RESPONSE", "name": "Unarchive survey response", "description": "Tool to unarchive a single survey response. Use when you need to restore a previously archived survey response to make it visible again in survey analytics." }, { "slug": "POSTHOG_UNPAUSE_BATCH_EXPORT", "name": "Unpause Batch Export", "description": "Tool to unpause a paused batch export in PostHog. Use when you need to resume a previously paused batch export to restart data exports." }, { "slug": "POSTHOG_UNPAUSE_ORGANIZATION_BATCH_EXPORT", "name": "Unpause Organization Batch Export", "description": "Tool to unpause a paused batch export at the organization level. Use when you need to resume a previously paused organization-level batch export to restart data exports." }, { "slug": "POSTHOG_UPDATE_ALERT", "name": "Update alert (full replacement)", "description": "Tool to fully update an existing alert configuration in PostHog using PUT method. Use when you need to completely replace alert settings including name, enabled status, insight, thresholds, and subscribed users. Unlike PATCH, this performs a full replacement of the alert configuration." }, { "slug": "POSTHOG_UPDATE_ANNOTATION_DETAILS", "name": "Update annotation details", "description": "Create, Read, Update and Delete annotations. [See docs](https://posthog.com/docs/user-guides/annotations) for more information on annotations." }, { "slug": "POSTHOG_UPDATE_BATCH_EXPORT", "name": "Update batch export", "description": "Tool to update an existing batch export configuration in PostHog. Use when you need to modify batch export settings like name, schedule, destination, or filtering options." }, { "slug": "POSTHOG_UPDATE_CUSTOMER_PROFILE_CONFIG", "name": "Update Customer Profile Config", "description": "Update a customer profile configuration by completely replacing it with new data via PUT request. Use when you need to update the entire customer profile config object including all fields." }, { "slug": "POSTHOG_UPDATE_DATASET", "name": "Update Datasets", "description": "Tool to update a dataset in PostHog by its ID and project ID. Use when you need to modify the name or description of an existing dataset." }, { "slug": "POSTHOG_UPDATE_DATASET_ITEMS", "name": "Update Dataset Items", "description": "Tool to fully update a dataset item by its ID in a PostHog project using PUT method. Use when you need to replace all fields of a dataset item including dataset, input, output, and metadata." }, { "slug": "POSTHOG_UPDATE_DESKTOP_RECORDING", "name": "Update Desktop Recording", "description": "Update desktop meeting recording details via PATCH. Use to modify meeting title, notes, status, transcripts, or AI-extracted tasks and summaries. Requires desktop_recording:write scope." }, { "slug": "POSTHOG_UPDATE_EARLY_ACCESS_PROJECT_FEATURE", "name": "Update early access project feature", "description": "This PATCH endpoint updates a specific early access project feature. It requires `project_id` and `id` (UUID) as path parameters. The body can include feature details like `name`, `description`, and `stage`. Security: `PersonalAPIKeyAuth`." }, { "slug": "POSTHOG_UPDATE_ENDPOINT", "name": "Update endpoint", "description": "Tool to update an existing endpoint for a PostHog project. Use when you need to replace endpoint configuration with new values. All parameters are optional. Pass version in body or ?version=N query param to target a specific version." }, { "slug": "POSTHOG_UPDATE_ERROR_TRACKING_AUTOCAPTURE_CONTROL", "name": "Update error tracking autocapture controls", "description": "Tool to fully update an error tracking autocapture control configuration for a PostHog project. Use when you need to replace all settings of an existing autocapture control, including library, sample rate, URL triggers, event triggers, and match type." }, { "slug": "POSTHOG_UPDATE_EVALUATION", "name": "Update evaluation", "description": "Tool to update an existing evaluation in PostHog using PUT request. Use when you need to fully replace an evaluation configuration. For partial updates, consider using the patch_evaluation action instead." }, { "slug": "POSTHOG_UPDATE_EVENT_DEFINITION", "name": "Update event definition by uuid", "description": "Update an event definition by sending a PUT request to '/api/projects/{project_id}/event_definitions/{id}/' using the UUID and project ID, provided you have 'event_definition:write' authorization." }, { "slug": "POSTHOG_UPDATE_EXPERIMENT", "name": "Update experiment details", "description": "Update an experiment by sending a PUT request with `project_id` and `id`, including new details as JSON/form data. Changes to name, description, dates, etc., allowed. `experiment:write` permission needed." }, { "slug": "POSTHOG_UPDATE_EXPERIMENT_HOLDOUT", "name": "Update experiment holdout", "description": "Tool to partially update an experiment holdout in a PostHog project. Use when you need to modify a holdout's name, description, or filter configuration. Updates only the fields provided in the request." }, { "slug": "POSTHOG_UPDATE_EXPERIMENT_HOLDOUT_COMPLETE", "name": "Update experiment holdout (full)", "description": "Tool to fully update an experiment holdout in PostHog using PUT method. Use when you need to replace all holdout configuration including name, description, and filters. All required fields must be provided." }, { "slug": "POSTHOG_UPDATE_EXPERIMENT_SAVED_METRIC", "name": "Update experiment saved metrics", "description": "Tool to update an existing experiment saved metric in PostHog. Use when you need to modify the name, description, query, or tags of a saved experiment metric. Requires the experiment saved metric ID and project ID." }, { "slug": "POSTHOG_UPDATE_EXTERNAL_DATA_SOURCE", "name": "Update External Data Sources", "description": "Tool to update an existing external data source in PostHog (e.g., Stripe, Salesforce). Use when you need to modify the description, credentials, or configuration of an external data source. Requires both project_id and the data source UUID." }, { "slug": "POSTHOG_UPDATE_FEATURE_FLAG", "name": "Update feature flag configuration", "description": "Manage feature flags for your app with creation, reading, updating, and deletion options. Utilize PostHog's JS library or endpoint for flag status. More info in docs." }, { "slug": "POSTHOG_UPDATE_FILE_SYSTEM", "name": "Update file system", "description": "Tool to update a file system resource in PostHog by UUID and project ID. Use when you need to modify details of an existing file system resource such as path, type, depth, or metadata." }, { "slug": "POSTHOG_UPDATE_GROUPS_TYPES_METRIC", "name": "Update group type metric", "description": "Tool to update a specific group usage metric by its ID. Use when you need to modify the configuration, filters, display format, name, or calculation interval for a particular metric within a group type." }, { "slug": "POSTHOG_UPDATE_HOG_FUNCTION", "name": "Update hog function", "description": "Tool to update a hog function by UUID and project ID using PUT method. Use when you need to modify a hog function with full replacement semantics." }, { "slug": "POSTHOG_UPDATE_INSIGHT_VARIABLE", "name": "Update Insight Variable", "description": "Update an insight variable by replacing all its properties. Use when you need to completely update all fields of an existing insight variable." }, { "slug": "POSTHOG_UPDATE_LIVE_DEBUGGER_BREAKPOINT", "name": "Update live debugger breakpoint", "description": "Tool to update a live debugger breakpoint for a project. Use when you need to modify breakpoint configuration such as filename, line number, enabled status, or condition." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION", "name": "Update organization details by uuid", "description": "Update specific details of an organization using its UUID. Allows PATCH requests with JSON, form data, or multipart. Requires `organization:write` permission. Returns updated organization info." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_BATCH_EXPORT", "name": "Update organization batch export", "description": "Tool to update an existing organization-level batch export configuration in PostHog. Use when you need to modify batch export settings like name, schedule, destination, or filtering options at the organization level." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_BY_UUID", "name": "Modify org info via uuid", "description": "PUT /api/organizations/{id}/: Update organization details by providing a UUID as 'id'. Supports JSON, form-urlencoded, multipart/form-data. Requires 'organization:write' permission. Returns updated organization data." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_DOMAIN", "name": "Update organization domain info and saml config", "description": "Update an organization's authentication domain settings, including SAML SSO configuration and user provisioning policies. This action allows you to modify: - Domain name for authentication - Just-in-time (JIT) user provisioning settings - SSO enforcement policies - SAML identity provider configuration (Entity ID, ACS URL, X.509 certificate) Prerequisites: - The domain must be verified (DNS TXT record validation on PostHog Cloud) - SAML features require a PostHog Enterprise plan - User must have admin permissions for the organization Use cases: - Configure SAML SSO for enterprise authentication - Enable automatic user provisioning for verified domains - Enforce SSO login for specific email domains - Update SAML IdP certificates during rotation" }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_MEMBER", "name": "Update organization member by uuids", "description": "Update an organization member's access level and permissions. Use this to promote members to admin/owner or demote them to basic member access. Supports partial updates - only send the fields you want to change (typically just 'level'). Returns the complete updated membership record including user details, access level, authentication status, and timestamps. Requires organization_member:write permission. Common use cases: promoting a member to admin (level=8), granting owner access (level=15), or downgrading permissions (level=1). Note: You cannot modify your own membership level as a security restriction - use a different owner/admin to change your permissions." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_MEMBER_COMPLETE", "name": "Update organization member details", "description": "Update member details in an organization by ID and user UUID. Requires org member write permission. Accepts JSON, form, or multipart. Responses reflect member info, including roles and security settings." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_PROXY_RECORD", "name": "Update organization proxy record", "description": "Update an organization's proxy record configuration. Proxy records enable custom domain routing for PostHog analytics to bypass ad blockers. **WARNING**: This endpoint may have server-side issues and return 500 errors. The PostHog API for updating proxy records appears to have stability issues. Consider creating a new proxy record instead if updates fail. **Typical Use Cases**: - Update proxy record metadata or messages - Modify domain configuration (requires DNS reconfiguration) **Important Notes**: - Most proxy record fields (target_cname, status, timestamps) are managed by PostHog and should not be manually updated - Changing the domain requires updating your DNS CNAME records accordingly - Requires organization write access (organization:write permission) **Authentication**: Requires a valid API token with organization write permissions." }, { "slug": "POSTHOG_UPDATE_ORGANIZATION_ROLE", "name": "Update role details in organization", "description": "Update an organization role by submitting its UUID and organization_id in UUID format. Role details must be in JSON or form-data. Only users with 'organization:write' can do this. Returns updated role data." }, { "slug": "POSTHOG_UPDATE_PERSISTED_FOLDER", "name": "Update persisted folder", "description": "Tool to update an existing persisted folder in PostHog. Use when you need to modify folder properties like path, protocol, or type." }, { "slug": "POSTHOG_UPDATE_PERSON_PROPERTIES", "name": "Update person properties", "description": "Request data's \"properties\" will be updated on a person using \"$set\" event, affecting only listed properties without deletion or other changes. For property removal, use 'delete_property' endpoint." }, { "slug": "POSTHOG_UPDATE_PERSON_PROPERTY", "name": "Update person property endpoint", "description": "This endpoint allows for reading and deleting individuals. Use the capture API, `$set` and `$unset` properties, or SDKs for creating or updating persons." }, { "slug": "POSTHOG_UPDATE_PRODUCT_TOUR", "name": "Update product tour", "description": "Update an existing product tour in PostHog. Use this to modify tour name, description, targeting, content, and scheduling. Requires project_id and product tour id (UUID)." }, { "slug": "POSTHOG_UPDATE_PROJECT_ACTION", "name": "Update project action by id", "description": "PUT endpoint '/api/projects/{project_id}/actions/{id}/' updates actions in a project by ID, accepts JSON/form data, supports 'format' query, and needs 'action:write' authentication." }, { "slug": "POSTHOG_UPDATE_PROJECT_BATCH_EXPORT", "name": "Update project batch export", "description": "Tool to update a batch export configuration within a project using PUT method. Use when you need to modify batch export settings like name, destination, interval, or pause status." }, { "slug": "POSTHOG_UPDATE_PROJECT_COHORT", "name": "Update project cohort details", "description": "Update cohort details of a specific project by ID. Requires project and cohort ID in the path and a JSON, form-encoded, or multipart form body. Permissions: cohort:write. Returns updated cohort data." }, { "slug": "POSTHOG_UPDATE_PROJECT_DASHBOARD", "name": "Update project dashboard details", "description": "Endpoint to update an existing dashboard within a project. Provide `project_id` and `dashboard_id` in path, send JSON or form data with dashboard details. Requires `dashboard:write` permission; responds with updated dashboard data." }, { "slug": "POSTHOG_UPDATE_PROJECT_EARLY_ACCESS_FEATURE", "name": "Update project early access feature", "description": "Update a specific early access feature of a project by providing the `project_id` and feature `id` (UUID). Requires a JSON body with feature details and responds with the updated status. Authentication via PersonalAPIKeyAuth is mandatory." }, { "slug": "POSTHOG_UPDATE_PROJECT_EVENT_DEFINITION", "name": "Update project event definition", "description": "Update an existing event definition for a specified project using its UUID. Requires a project ID and event definition write permissions. Responds without a body on success." }, { "slug": "POSTHOG_UPDATE_PROJECT_GROUP_TYPE", "name": "Update project group type metadata", "description": "PATCH /api/projects/{project_id}/groups_types/update_metadata: Update group type metadata for a specific project using its project_id. Can modify name_singular and name_plural fields up to 400 characters each." }, { "slug": "POSTHOG_UPDATE_PROJECT_INSIGHT", "name": "Update project insight details", "description": "Endpoint \"/api/projects/{project_id}/insights/{id}/\" allows for updating an insight's details for a given project and insight ID, supporting JSON and CSV formats, with fields like name, query, and various timestamps. Requires insight write permission." }, { "slug": "POSTHOG_UPDATE_PROJECT_MEMBER", "name": "Update project member s role by uuid", "description": "Update explicit project membership using UUIDs. This PUT endpoint modifies a project member's role, where '1' stands for member and '8' for administrator. Requires `project_id` and `parent_membership__user__uuid`. Note: This endpoint only works for projects with access control enabled (private projects). If the project does not have access control enabled, the API will return a 404 \"Endpoint not found\" error. Access control is an Enterprise feature that can be enabled in Project Settings > Access Control." }, { "slug": "POSTHOG_UPDATE_PROJECT_NOTEBOOK", "name": "Update project notebook details", "description": "The API for interacting with Notebooks. This feature is in early access and the API can have breaking changes without announcement." }, { "slug": "POSTHOG_UPDATE_PROJECT_PROPERTY_DEFINITION", "name": "Update project property definition", "description": "Update a property definition in a project by its UUID. Requires a project_id and definition id, both as path parameters. Security: PersonalAPIKeyAuth with write access. No body in the response." }, { "slug": "POSTHOG_UPDATE_PROJECT_SESSION_RECORDING_PLAYLIST", "name": "Update project session recording playlist", "description": "Update an existing session recording playlist for a project with the specified project_id and playlist short_id. Requires JSON or form data input to modify the playlist's properties like name, description, and status." }, { "slug": "POSTHOG_UPDATE_PROJECT_SETTINGS", "name": "Update project settings", "description": "Tool to update project settings and configuration within a PostHog organization. Use when you need to modify project properties such as timezone, feature toggles, or recording settings." }, { "slug": "POSTHOG_UPDATE_PROJECT_SUBSCRIPTION", "name": "Update project subscription details", "description": "Update a subscription for a specific project. Provide project_id and subscription id in the path and use MIME types like application/json with fields like frequency, target_type, etc. Requires `subscription:write` permission." }, { "slug": "POSTHOG_UPDATE_PROJECT_SURVEY", "name": "Update project survey details", "description": "The `/api/projects/{project_id}/surveys/{id}/` PUT endpoint updates survey details in a project using survey UUID and project ID, accepts JSON/form/multipart data, needs `survey:write` permission, and returns the updated survey." }, { "slug": "POSTHOG_UPDATE_USER_HOME_SETTINGS", "name": "Update user home settings", "description": "Tool to update user home settings including homepage and tab configurations. Use when you need to modify the personalized home page and tab settings for a user." }, { "slug": "POSTHOG_UPDATE_WAREHOUSE_SAVED_QUERY", "name": "Update warehouse saved query", "description": "Update a warehouse saved query in PostHog by completely replacing it with new data. Use when you need to update the name, query definition, or edit history of an existing saved query. This performs a complete update (PUT) operation requiring the edited_history_id for tracking changes." }, { "slug": "POSTHOG_UPDATE_WEB_EXPERIMENT", "name": "Update web experiment", "description": "Tool to completely update a web experiment in PostHog using PUT method. Use when you need to replace the entire web experiment configuration with new values. Unlike PATCH, this requires all fields to be provided." }, { "slug": "POSTHOG_VALIDATE_LLM_PROVIDER_KEY", "name": "Validate LLM Provider API Key", "description": "Tool to validate LLM provider API keys without persisting them to PostHog. Use when you need to verify if an API key for an LLM provider is valid before saving it." }, { "slug": "POSTHOG_WHOAMI", "name": "Get current user (whoami)", "description": "DEPRECATED: Use POSTHOG_LIST_ALL_PROJECTS_ACROSS_ORGANIZATIONS instead. Diagnostic tool to validate PostHog credentials and retrieve current user information. Returns the authenticated user's profile along with accessible organizations, teams, and projects. Use this to confirm API key validity and discover team/project IDs for subsequent API calls. When multiple organizations or projects are returned, explicitly select the intended one by ID rather than defaulting to the first result." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "posthog_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Sub Domain", "type": "string", "description": "The subdomain for your PostHog instance. US Cloud: \"us.i\" (public) or \"us\" (private). EU Cloud: \"eu.i\" (public) or \"eu\" (private). For self-hosted, use your custom subdomain. Confirm yours by checking your PostHog instance URL.", "required": true, "default": "us" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your personal API key starting with 'phx_' (not the 'phc_' project key). Create it under Settings → Personal API keys and copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clickup", "name": "ClickUp", "logo": "https://logos.composio.dev/api/clickup", "description": "ClickUp unifies tasks, docs, goals, and chat in a single platform, allowing teams to plan, organize, and collaborate across projects with customizable workflows", "category": "productivity", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 164, "triggerCount": 20, "version": "20260703_00", "tools": [ { "slug": "CLICKUP_ADD_DEPENDENCY", "name": "Add dependency", "description": "Adds a 'waiting on' or 'blocking' dependency to a task, requiring either `depends_on` (task becomes waiting on) or `dependency_of` (task becomes blocking), but not both; `team_id` is required if `custom_task_ids` is true." }, { "slug": "CLICKUP_ADD_GUEST_TO_FOLDER", "name": "Add guest to folder", "description": "Adds a guest to a folder with specified permissions; requires a ClickUp Enterprise Plan." }, { "slug": "CLICKUP_ADD_GUEST_TO_LIST", "name": "Add guest to list", "description": "Shares a ClickUp List with an existing guest user, granting them specified permissions; requires the Workspace to be on the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_ADD_GUEST_TO_TASK", "name": "Add guest to task", "description": "Assigns a guest to a task with specified permissions; requires ClickUp Enterprise Plan, and `team_id` if `custom_task_ids` is true." }, { "slug": "CLICKUP_ADD_TAGS_TO_TIME_ENTRIES", "name": "Add tags from time entries", "description": "Associates a list of specified tags with one or more time entries within a given Team (Workspace)." }, { "slug": "CLICKUP_ADD_TAG_TO_TASK", "name": "Add tag to task", "description": "Adds an existing tag to a specified task; team_id is required if custom_task_ids is true." }, { "slug": "CLICKUP_ADD_TASK_LINK", "name": "Add task link", "description": "Links two existing and accessible ClickUp tasks, identified by `task_id` (source) and `links_to` (target)." }, { "slug": "CLICKUP_ADD_TASK_TO_LIST", "name": "Add task to list", "description": "Adds an existing task to an additional ClickUp List; the \"Tasks in Multiple Lists\" ClickApp must be enabled in the Workspace for this." }, { "slug": "CLICKUP_ATTACHMENTS_UPLOAD_FILE_TO_TASK_AS_ATTACHMENT", "name": "Create task attachment", "description": "DEPRECATED: Use `create_task_attachment` to upload a file to a task; requires `multipart/form-data`." }, { "slug": "CLICKUP_AUTHORIZATION_GET_WORK_SPACE_LIST", "name": "Get authorized teams workspaces", "description": "DEPRECATED: Use `get_authorized_teams_workspaces` instead to retrieve Workspaces (Teams) accessible to the authenticated user." }, { "slug": "CLICKUP_CLICK_UP_UPDATE_DOC_PAGE", "name": "Update Doc Page", "description": "Tool to update/edit a ClickUp Doc page's title and/or content via the v3 Docs API. Use when you need to modify a Doc page's name or content programmatically." }, { "slug": "CLICKUP_CREATE_A_TIME_ENTRY", "name": "Create a time entry", "description": "Creates a new time entry for a specified team." }, { "slug": "CLICKUP_CREATE_CHAT_CHANNEL", "name": "Create chat channel", "description": "Tool to create a chat channel in a ClickUp workspace. Use when you need to set up a new communication channel for team collaboration with configurable visibility." }, { "slug": "CLICKUP_CREATE_CHAT_MESSAGE", "name": "Create chat message", "description": "Tool to send a message in a ClickUp chat channel. Use when you need to post messages to team chat channels. Supports both regular messages and structured posts with optional assignments, followers, and reactions." }, { "slug": "CLICKUP_CREATE_CHAT_REACTION", "name": "Create chat reaction", "description": "Tool to add a reaction to a ClickUp chat message. Use when you need to react to a message with an emoji." }, { "slug": "CLICKUP_CREATE_CHAT_VIEW_COMMENT", "name": "Create chat view comment", "description": "Posts a new comment to a specified ClickUp Chat view; the 'view_id' must correspond to an existing and accessible Chat view." }, { "slug": "CLICKUP_CREATE_CHECKLIST", "name": "Create checklist", "description": "Creates a new checklist with a specified name within an existing task, which can be identified by its standard ID or a custom task ID (if `custom_task_ids` is true, `team_id` is also required)." }, { "slug": "CLICKUP_CREATE_CHECKLIST_ITEM", "name": "Create checklist item", "description": "Creates a new checklist item within a specified, existing checklist, optionally setting the item's name and assigning it to a user." }, { "slug": "CLICKUP_CREATE_DIRECT_MESSAGE_CHANNEL", "name": "Create direct message channel", "description": "Tool to create a direct message channel in ClickUp. Use when you need to start a direct message conversation with up to 15 users. A Self DM is created when no user IDs are provided." }, { "slug": "CLICKUP_CREATE_DOC", "name": "Create Doc", "description": "Tool to create a new ClickUp Doc in a Workspace (v3 Docs API) and return the new doc_id for follow-up page/content operations. Use when you need to create a new document in ClickUp." }, { "slug": "CLICKUP_CREATE_DOC_PAGE", "name": "Create Doc Page", "description": "Tool to create a page in a ClickUp Doc (v3 Docs API). Use when you need to add a new page to an existing document, either as a root page or as a sub-page under a parent page." }, { "slug": "CLICKUP_CREATE_FOLDER", "name": "Create folder", "description": "Creates a new ClickUp Folder within the specified Space, which must exist and be accessible." }, { "slug": "CLICKUP_CREATE_FOLDERLESS_LIST", "name": "Create folderless list", "description": "Creates a new folderless list (a list not part of any Folder) directly within a specified ClickUp Space." }, { "slug": "CLICKUP_CREATE_FOLDER_VIEW", "name": "Create folder view", "description": "Creates a new, highly customizable view within a specific ClickUp folder using its `folder_id`." }, { "slug": "CLICKUP_CREATE_GOAL", "name": "Create goal", "description": "Creates a new goal in a ClickUp Team (Workspace)." }, { "slug": "CLICKUP_CREATE_KEY_RESULT", "name": "Create key result", "description": "Creates a new Key Result (Target) for a specified Goal in ClickUp to define and track measurable objectives towards achieving that Goal." }, { "slug": "CLICKUP_CREATE_LIST", "name": "Create list", "description": "Creates a new list in ClickUp within an existing folder. This action requires a folder_id - lists cannot be created directly in a Space using this action. If you need to create a list directly in a Space (without placing it in a folder), use the 'CLICKUP_CREATE_FOLDERLESS_LIST' action with space_id instead." }, { "slug": "CLICKUP_CREATE_LIST_COMMENT", "name": "Create list comment", "description": "Adds a new comment with specific text to an existing and accessible ClickUp List, assigns it to a user, and sets notification preferences for all list members." }, { "slug": "CLICKUP_CREATE_LIST_FROM_TEMPLATE", "name": "Create list from template in folder", "description": "Creates a new list from a template in a specified ClickUp folder. Use this when you need to instantiate a list based on an existing template within a folder structure." }, { "slug": "CLICKUP_CREATE_LIST_VIEW", "name": "Create list view", "description": "Creates a new, customizable view (e.g., list, board, calendar) within a specified ClickUp List, requiring an existing list_id accessible by the user." }, { "slug": "CLICKUP_CREATE_LOCATION_CHAT_CHANNEL", "name": "Create Location Chat Channel", "description": "Tool to create a Channel on a Space, Folder, or List in ClickUp. Use when you need to create a location-based chat channel." }, { "slug": "CLICKUP_CREATE_REPLY_MESSAGE", "name": "Create reply message", "description": "Tool to create a reply to a chat message in ClickUp. Use when replying to an existing chat message. Requires workspace_id, message_id, type, and content." }, { "slug": "CLICKUP_CREATE_SPACE", "name": "Create space", "description": "Creates a new ClickUp Space within a specified Workspace, allowing feature configuration which defaults to Workspace settings if unspecified." }, { "slug": "CLICKUP_CREATE_SPACE_TAG", "name": "Create space tag", "description": "Creates a new tag (name, foreground color, background color) in an existing ClickUp Space." }, { "slug": "CLICKUP_CREATE_SPACE_VIEW", "name": "Create space view", "description": "Creates a customizable view (e.g., List, Board, Gantt) within a specified ClickUp Space, allowing configuration of grouping, sorting, filtering, and display settings." }, { "slug": "CLICKUP_CREATE_TASK", "name": "Create a task", "description": "Creates a new ClickUp task in a specific list, optionally as a subtask if a `parent` task ID (which cannot be a subtask itself and must be in the same list) is provided." }, { "slug": "CLICKUP_CREATE_TASK_ATTACHMENT", "name": "Create task attachment", "description": "Uploads a file as an attachment to a specified ClickUp task using multipart/form-data." }, { "slug": "CLICKUP_CREATE_TASK_COMMENT", "name": "Create task comment", "description": "Adds a comment to a ClickUp task; `team_id` is required if `custom_task_ids` is true." }, { "slug": "CLICKUP_CREATE_TASK_FROM_TEMPLATE", "name": "Create task from template", "description": "Creates a new task in a specified ClickUp list from a task template, using the provided name for the new task." }, { "slug": "CLICKUP_CREATE_TEAM", "name": "Create team", "description": "Creates a new team (user group) with specified members in a Workspace; member IDs must be for existing users, and be aware that adding view-only guests as paid members may incur extra charges." }, { "slug": "CLICKUP_CREATE_THREADED_COMMENT", "name": "Create threaded comment", "description": "Tool to create a threaded reply to a comment in ClickUp. Use when you need to respond to an existing comment with context." }, { "slug": "CLICKUP_CREATE_WEBHOOK", "name": "Create webhook", "description": "Creates a ClickUp webhook for a Team (Workspace) to notify a public URL on specified events (at least one, or '*' for all), optionally scoped to a Space, Folder, List, or Task; the endpoint must accept requests from dynamic IPs." }, { "slug": "CLICKUP_CREATE_WORKSPACE_EVERYTHING_LEVEL_VIEW", "name": "Create workspace Everything level view", "description": "Creates a new, customizable view (e.g., List, Board) at the 'Everything' level for a specified Team (Workspace ID), encompassing all tasks within that Workspace." }, { "slug": "CLICKUP_DELETE_CHAT_CHANNEL", "name": "Delete chat channel", "description": "Tool to delete a chat channel in ClickUp. Use when you need to permanently remove a chat channel from a workspace." }, { "slug": "CLICKUP_DELETE_CHAT_MESSAGE", "name": "Delete chat message", "description": "Tool to delete a chat message in ClickUp. Use when you need to permanently remove a specific message from a workspace chat." }, { "slug": "CLICKUP_DELETE_CHAT_REACTION", "name": "Delete chat reaction", "description": "Tool to delete a reaction from a chat message in ClickUp. Use when you need to remove an emoji reaction that was previously added to a chat message." }, { "slug": "CLICKUP_DELETE_CHECKLIST", "name": "Delete checklist", "description": "Permanently deletes an existing checklist identified by its `checklist_id`." }, { "slug": "CLICKUP_DELETE_CHECKLIST_ITEM", "name": "Delete checklist item", "description": "Permanently deletes an existing item, identified by `checklist_item_id`, from an existing checklist, identified by `checklist_id`." }, { "slug": "CLICKUP_DELETE_COMMENT", "name": "Delete comment", "description": "Deletes an existing comment from a task using its `comment_id`." }, { "slug": "CLICKUP_DELETE_DEPENDENCY", "name": "Delete dependency", "description": "Removes a dependency relationship for a task. Provide exactly one of: `depends_on` to remove a 'waiting on' dependency (task_id is blocked by another task), or `dependency_of` to remove a 'blocking' dependency (another task is blocked by task_id). `team_id` is required if `custom_task_ids` is true." }, { "slug": "CLICKUP_DELETE_FOLDER", "name": "Delete folder", "description": "Permanently and irreversibly deletes a specified folder and all its contents (Lists, Tasks) if the folder_id exists." }, { "slug": "CLICKUP_DELETE_GOAL", "name": "Delete goal", "description": "Permanently removes an existing Goal, identified by its `goal_id`, from the Workspace." }, { "slug": "CLICKUP_DELETE_KEY_RESULT", "name": "Delete key result", "description": "Deletes an existing Key Result, also referred to as a Target within a Goal, identified by its `key_result_id`." }, { "slug": "CLICKUP_DELETE_LIST", "name": "Delete list", "description": "Permanently deletes an existing List and all its contents; this action is destructive and irreversible via the API." }, { "slug": "CLICKUP_DELETE_SPACE", "name": "Delete space", "description": "Permanently deletes a specified Space in ClickUp; this action is irreversible as the Space cannot be recovered via the API." }, { "slug": "CLICKUP_DELETE_SPACE_TAG", "name": "Delete space tag", "description": "Deletes a Tag from a Space, identified by `tag_name` in path; precise matching of Tag details in the request body (`tag_name_1`, `tag_tag_fg`, `tag_tag_bg`) is generally required for successful deletion." }, { "slug": "CLICKUP_DELETE_TASK", "name": "Delete task", "description": "Permanently deletes a task, using its standard ID or a custom task ID (requires `custom_task_ids=true` and `team_id`)." }, { "slug": "CLICKUP_DELETE_TASK_LINK", "name": "Delete task link", "description": "Deletes an existing link, effectively a dependency or relationship, between two ClickUp tasks; set `custom_task_ids=true` and provide `team_id` if using custom task IDs." }, { "slug": "CLICKUP_DELETE_TEAM", "name": "Delete team", "description": "Permanently deletes an existing Team (user group) from the Workspace using its `group_id`." }, { "slug": "CLICKUP_DELETE_TIME_ENTRY", "name": "Delete a time entry", "description": "Deletes an existing time entry, specified by `timer_id`, from a Workspace identified by `team_id`." }, { "slug": "CLICKUP_DELETE_TIME_TRACKED", "name": "Delete time tracked", "description": "Deletes a time-tracked interval from a task; use this legacy endpoint for older time tracking systems." }, { "slug": "CLICKUP_DELETE_VIEW", "name": "Delete view", "description": "Permanently and irreversibly deletes an existing View in ClickUp, identified by its `view_id`." }, { "slug": "CLICKUP_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Permanently removes an existing webhook, specified by its ID, thereby ceasing all its event monitoring and notifications." }, { "slug": "CLICKUP_GET_ACCESSIBLE_CUSTOM_FIELDS", "name": "Get accessible custom fields", "description": "Retrieves all accessible Custom Field definitions for a specified ClickUp List using its `list_id`." }, { "slug": "CLICKUP_GET_ACCESS_TOKEN", "name": "Get access token", "description": "Exchanges a ClickUp OAuth 2.0 authorization code (obtained after user consent) for an access token." }, { "slug": "CLICKUP_GET_ALL_TAGS_FROM_TIME_ENTRIES", "name": "Get all tags from time entries", "description": "Retrieves all unique tags applied to time entries within a specified ClickUp Team (Workspace)." }, { "slug": "CLICKUP_GET_AUTHORIZED_TEAMS_WORKSPACES", "name": "Get authorized teams workspaces", "description": "Retrieves a list of Workspaces (Teams) the authenticated user can access." }, { "slug": "CLICKUP_GET_AUTHORIZED_USER", "name": "Get authorized user", "description": "Retrieves the details of the currently authenticated ClickUp user." }, { "slug": "CLICKUP_GET_BULK_TASKS_TIME_IN_STATUS", "name": "Get bulk tasks time in status", "description": "Retrieves the time spent in each status for multiple tasks; requires the 'Total time in Status' ClickApp to be enabled in the Workspace." }, { "slug": "CLICKUP_GET_CHAT_CHANNEL", "name": "Get chat channel", "description": "Retrieves details for a specific chat channel in a ClickUp Workspace. Use when you need information about a particular chat channel." }, { "slug": "CLICKUP_GET_CHAT_CHANNEL_FOLLOWERS", "name": "Get chat channel followers", "description": "Tool to retrieve followers of a ClickUp chat channel. Use when you need to list users following a specific channel in a workspace." }, { "slug": "CLICKUP_GET_CHAT_CHANNEL_MEMBERS", "name": "Get chat channel members", "description": "Tool to get members of a chat channel. Use when you need to retrieve the list of members in a specific ClickUp chat channel." }, { "slug": "CLICKUP_GET_CHAT_CHANNELS", "name": "Get chat channels", "description": "Tool to retrieve chat channels in a ClickUp workspace. Use when you need to list available chat channels, DMs, or group chats in a workspace. Supports pagination via cursor and filtering by follower status, closed channels, and recent activity." }, { "slug": "CLICKUP_GET_CHAT_MESSAGE_REACTIONS", "name": "Get chat message reactions", "description": "Tool to retrieve reactions on a ClickUp chat message. Use when you need to see who reacted to a message and with what emoji." }, { "slug": "CLICKUP_GET_CHAT_MESSAGE_REPLIES", "name": "Get chat message replies", "description": "Retrieves replies to a chat message in ClickUp. Use when you need to fetch responses to a specific message in a workspace chat." }, { "slug": "CLICKUP_GET_CHAT_MESSAGES", "name": "Get chat messages", "description": "Tool to retrieve messages from a ClickUp chat channel. Use when you need to fetch chat messages for a specific channel within a workspace." }, { "slug": "CLICKUP_GET_CHAT_MESSAGE_TAGGED_USERS", "name": "Get chat message tagged users", "description": "Tool to retrieve users tagged in a ClickUp chat message. Use when you need to get a list of users mentioned in a specific chat message." }, { "slug": "CLICKUP_GET_CHAT_VIEW_COMMENTS", "name": "Get chat view comments", "description": "Retrieves comments from a specified Chat view in ClickUp, supporting pagination via `start` and `start_id` to fetch comments older than the default 25 most recent." }, { "slug": "CLICKUP_GET_CUSTOM_ROLES", "name": "Get custom roles", "description": "Retrieves all Custom Roles, which allow granular permission configurations, for a specified Workspace (Team)." }, { "slug": "CLICKUP_GET_CUSTOM_TASK_TYPES", "name": "Get custom task types", "description": "Retrieves all custom task types available within a specified Workspace (team_id)." }, { "slug": "CLICKUP_GET_DOC_CONTENT", "name": "Get Doc Content", "description": "Tool to fetch the full content of a ClickUp Doc including metadata and all page contents in markdown format. Use when you need to read or summarize a Doc's content given workspace_id and doc_id." }, { "slug": "CLICKUP_GET_DOC_PAGE_CONTENT", "name": "Get Doc Page Content", "description": "Tool to fetch a single ClickUp Doc page's content and metadata by workspace_id + doc_id + page_id (v3 Docs API). Use when you need to read the content of a specific page without fetching the entire Doc." }, { "slug": "CLICKUP_GET_DOC_PAGE_LISTING", "name": "Get Doc Page Listing", "description": "Tool to fetch the page listing structure of a ClickUp Doc by workspace_id and doc_id. Use when you need to discover the hierarchical structure of pages and subpages within a Doc without fetching the actual content." }, { "slug": "CLICKUP_GET_DOC_PAGES_PUBLIC", "name": "Get Doc Pages", "description": "Tool to fetch pages belonging to a ClickUp Doc. Use when you need to list all pages in a doc with their content and structure." }, { "slug": "CLICKUP_GET_FILTERED_TEAM_TASKS", "name": "Get filtered team tasks", "description": "Retrieves a paginated list of tasks (up to 100 per page) from a specified workspace based on various filter criteria, respecting user access permissions. Unexpectedly missing tasks may indicate permission restrictions rather than filter issues. Task comments are not included; use CLICKUP_GET_TASK_COMMENTS for complete context. No keyword/text search is supported; filter client-side on returned results." }, { "slug": "CLICKUP_GET_FOLDER", "name": "Get folder", "description": "Retrieves detailed information about a specific folder in ClickUp." }, { "slug": "CLICKUP_GET_FOLDER_AVAILABLE_FIELDS", "name": "Get Folder Available Fields", "description": "Tool to view custom fields available in a ClickUp folder. Use to discover what custom fields can be used when working with tasks in this folder. Only returns folder-level custom fields, not list-level fields." }, { "slug": "CLICKUP_GET_FOLDERLESS_LISTS", "name": "Get folderless lists", "description": "Retrieves all Lists within a specified Space that are not located in any Folder." }, { "slug": "CLICKUP_GET_FOLDERS", "name": "Get folders", "description": "Retrieves Folders within a specified ClickUp Space, ensuring `space_id` is valid, with an option to filter by archived status." }, { "slug": "CLICKUP_GET_FOLDER_VIEWS", "name": "Get folder views", "description": "Retrieves all configured views (like List, Board, Calendar) for a specified, existing Folder in ClickUp." }, { "slug": "CLICKUP_GET_GOAL", "name": "Get goal", "description": "Retrieves detailed information for an existing ClickUp Goal, specified by its unique `goal_id`." }, { "slug": "CLICKUP_GET_GOALS", "name": "Get goals", "description": "Retrieves goals for a specified ClickUp Workspace (Team); the `team_id` must be valid and accessible." }, { "slug": "CLICKUP_GET_GUEST", "name": "Get guest", "description": "Call this to retrieve detailed information for a specific guest within a Team (Workspace), ensuring the `guest_id` is valid for the given `team_id`; this action requires the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_GET_LIST", "name": "Get list", "description": "Retrieves detailed information for an existing List in ClickUp, identified by its unique `list_id`." }, { "slug": "CLICKUP_GET_LIST_COMMENTS", "name": "Get list comments", "description": "Retrieves comments for a specific ClickUp List, supporting pagination using `start` (timestamp) and `start_id` (comment ID) to fetch earlier comments; omits them for the latest 25." }, { "slug": "CLICKUP_GET_LIST_MEMBERS", "name": "Get list members", "description": "Retrieves all members of a specific, existing ClickUp List by its ID." }, { "slug": "CLICKUP_GET_LISTS", "name": "Get lists", "description": "Retrieves all lists within a specified, existing ClickUp folder, optionally filtering by archived status." }, { "slug": "CLICKUP_GET_LIST_VIEWS", "name": "Get list views", "description": "Retrieves all task and page views for a specified and accessible ClickUp List." }, { "slug": "CLICKUP_GET_RUNNING_TIME_ENTRY", "name": "Get running time entry", "description": "Retrieves the currently active time entry for a user in a Workspace; a negative 'duration' in its data indicates it's running, and the response may be empty if no entry is active." }, { "slug": "CLICKUP_GET_SHARED_HIERARCHY", "name": "Shared hierarchy", "description": "Retrieves the hierarchy of tasks, Lists, and Folders shared with the authenticated user within an existing ClickUp Team (Workspace), identified by its `team_id`." }, { "slug": "CLICKUP_GET_SPACE", "name": "Get space", "description": "Retrieves detailed information for an existing Space in a ClickUp Workspace, identified by its unique space_id." }, { "slug": "CLICKUP_GET_SPACE_AVAILABLE_FIELDS", "name": "Get space available fields", "description": "Retrieves all custom fields available in a ClickUp Space, identified by space_id. Returns Space-level custom fields only." }, { "slug": "CLICKUP_GET_SPACES", "name": "Get spaces", "description": "Retrieves Spaces for a Team ID; member information for private Spaces is returned only if the authenticated user is a member." }, { "slug": "CLICKUP_GET_SPACE_TAGS", "name": "Get space tags", "description": "Retrieves all tags for tasks within a specified ClickUp Space, requiring a valid `space_id`." }, { "slug": "CLICKUP_GET_SPACE_VIEWS", "name": "Get space views", "description": "Retrieves all task and page views for a specified Space ID in ClickUp." }, { "slug": "CLICKUP_GET_SUBTYPES", "name": "Get post subtype IDs", "description": "Tool to retrieve post subtype IDs (Announcement, Discussion, Idea, Update) for a ClickUp Workspace. Use when you need subtype IDs to send messages with type: post." }, { "slug": "CLICKUP_GET_TASK", "name": "Get task", "description": "Retrieves comprehensive details for a ClickUp task by its ID, supporting standard or custom task IDs (requires `team_id` for custom IDs)." }, { "slug": "CLICKUP_GET_TASK_COMMENTS", "name": "Get task comments", "description": "Retrieves up to 25 comments for a specified task, supporting pagination using `start` and `start_id` to fetch older comments." }, { "slug": "CLICKUP_GET_TASK_MEMBERS", "name": "Get task members", "description": "Retrieves users with explicit access (directly assigned or shared) to a specific existing task, excluding users with inherited permissions." }, { "slug": "CLICKUP_GET_TASKS", "name": "Get tasks", "description": "Retrieves tasks from a specified ClickUp list; only tasks whose home is the given list_id are returned. Closed and archived tasks are excluded by default. Key task attributes may appear only in the response `custom_fields` array, not top-level fields. Fields like `space`, `folder`, `list`, and `custom_type` may be absent; apply null checks. High-volume paginated calls may return HTTP 429; honor the `Retry-After` header." }, { "slug": "CLICKUP_GET_TASK_TEMPLATES", "name": "Get task templates", "description": "Retrieves task templates for a specified Workspace (Team ID), supporting pagination." }, { "slug": "CLICKUP_GET_TASK_TIME_IN_STATUS", "name": "Get task s time in status", "description": "Retrieves the duration a task has spent in each status, provided the 'Total time in Status' ClickApp is enabled for the Workspace." }, { "slug": "CLICKUP_GET_TEAM_AVAILABLE_FIELDS", "name": "Get team available fields", "description": "Retrieves all custom fields available in a ClickUp Workspace (Team), identified by team_id. Returns Workspace-level custom fields only." }, { "slug": "CLICKUP_GET_TEAMS", "name": "Get teams", "description": "Retrieves user groups (Teams) from a ClickUp Workspace, typically requiring `team_id` (Workspace ID), with an option to filter by `group_ids`." }, { "slug": "CLICKUP_GET_THREADED_COMMENTS", "name": "Get threaded comments", "description": "Retrieves threaded replies to a parent comment. Use when you need to fetch conversation threads under a specific comment." }, { "slug": "CLICKUP_GET_TIME_ENTRIES_IN_DATE_RANGE", "name": "Get time entries within a date range", "description": "Retrieves time entries for a specified Team (Workspace ID) within a date range (defaults to the last 30 days for the authenticated user if dates are omitted); active timers are indicated by negative durations in the response." }, { "slug": "CLICKUP_GET_TIME_ENTRY", "name": "Get singular time entry", "description": "Fetches a specific time entry by its ID for a given team; a negative duration in the response indicates an active timer." }, { "slug": "CLICKUP_GET_TIME_ENTRY_HISTORY", "name": "Get time entry history", "description": "Retrieves the modification history for an existing time entry within a specific ClickUp Team (Workspace)." }, { "slug": "CLICKUP_GET_TRACKED_TIME", "name": "Get tracked time", "description": "Retrieves tracked time for a task using a legacy endpoint; prefer newer Time Tracking API endpoints for managing time entries." }, { "slug": "CLICKUP_GET_USER", "name": "Get user", "description": "Retrieves detailed information for a specific user within a ClickUp Workspace (Team), available only for Workspaces on the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_GET_VIEW", "name": "Get view", "description": "Fetches details for a specific ClickUp view, identified by its `view_id`, which must exist." }, { "slug": "CLICKUP_GET_VIEW_TASKS", "name": "Get view tasks", "description": "Retrieves all tasks visible in a specified ClickUp view, respecting its applied filters, sorting, and grouping." }, { "slug": "CLICKUP_GET_WEBHOOKS", "name": "Get webhooks", "description": "Fetches webhooks for a Team (Workspace), returning only those created by the authenticated user via API, for a `team_id` they can access." }, { "slug": "CLICKUP_GET_WORKSPACE_EVERYTHING_LEVEL_VIEWS", "name": "Get workspace everything level views", "description": "Retrieves all task and page views at the 'Everything Level' (a comprehensive overview of all tasks across all Spaces) for a specified ClickUp Workspace." }, { "slug": "CLICKUP_GET_WORKSPACE_PLAN", "name": "Get workspace plan", "description": "Retrieves the details of the current subscription plan for a specified ClickUp Workspace." }, { "slug": "CLICKUP_GET_WORKSPACE_SEATS", "name": "Get workspace seats", "description": "Retrieves seat utilization (used, total, available for members/guests) for a ClickUp Workspace (Team) ID, which must be for an existing Workspace." }, { "slug": "CLICKUP_INVITE_GUEST_TO_WORKSPACE", "name": "Invite guest to workspace", "description": "Invites a guest by email to a ClickUp Workspace (Team) on an Enterprise Plan, setting initial permissions and optionally a custom role; further access configuration for specific items may require separate actions." }, { "slug": "CLICKUP_INVITE_USER_TO_WORKSPACE", "name": "Invite user to workspace", "description": "Invites a user via email to a ClickUp Workspace (Team), optionally granting admin rights or a custom role; requires an Enterprise Plan for the Workspace." }, { "slug": "CLICKUP_MOVE_TASK_TO_HOME_LIST", "name": "Move task to new home list", "description": "Tool to move a task to a new home List using ClickUp Public API v3. Use when you need to change a task's home list (not just add to additional lists)." }, { "slug": "CLICKUP_REMOVE_CUSTOM_FIELD_VALUE", "name": "Remove custom field value", "description": "Removes an existing value from a Custom Field on a specific task; this does not delete the Custom Field definition or its predefined options." }, { "slug": "CLICKUP_REMOVE_GUEST_FROM_FOLDER", "name": "Remove guest from folder", "description": "Revokes a guest's access to a specific ClickUp Folder, optionally unsharing items explicitly shared with them within it; requires an Enterprise Plan." }, { "slug": "CLICKUP_REMOVE_GUEST_FROM_LIST", "name": "Remove guest from list", "description": "Revokes a guest's access to a specific List, provided the guest currently has access to this List and the Workspace is on the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_REMOVE_GUEST_FROM_TASK", "name": "Remove guest from task", "description": "Revokes a guest's access to a specific task; only available for Workspaces on the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_REMOVE_GUEST_FROM_WORKSPACE", "name": "Remove guest from workspace", "description": "Permanently removes a guest from a specified Workspace, revoking all their access; this destructive operation requires the Workspace to be on the ClickUp Enterprise Plan." }, { "slug": "CLICKUP_REMOVE_TAG_FROM_TASK", "name": "Remove tag from task", "description": "Removes a tag from a specified task by disassociating it (does not delete the tag from Workspace), succeeding even if the tag is not on the task." }, { "slug": "CLICKUP_REMOVE_TAGS_FROM_TIME_ENTRIES", "name": "Remove tags from time entries", "description": "Removes tags from specified time entries in a team, without deleting the tags from the workspace." }, { "slug": "CLICKUP_REMOVE_TASK_FROM_LIST", "name": "Remove task from list", "description": "Removes a task from an extra list (not its home list); the 'Tasks in Multiple Lists' ClickApp must be enabled." }, { "slug": "CLICKUP_REMOVE_USER_FROM_WORKSPACE", "name": "Remove user from workspace", "description": "Deactivates a user from a specified ClickUp Workspace, revoking their access (user can be reactivated later); requires the Workspace to be on an Enterprise Plan." }, { "slug": "CLICKUP_SEARCH_DOCS", "name": "Search Docs", "description": "Tool to search and list Docs metadata in a ClickUp workspace. Use after confirming the workspace ID to quickly locate relevant meeting notes before fetching pages." }, { "slug": "CLICKUP_SET_CUSTOM_FIELD_VALUE", "name": "Set custom field value", "description": "Sets or updates a Custom Field's value for a task; the new value (with type-dependent structure, e.g., `{\"value\": \"text\"}` or `{\"value\": 123, \"value_options\": {\"currency_type\":\"USD\"}}`) is provided in the JSON request body." }, { "slug": "CLICKUP_START_TIME_ENTRY", "name": "Start a time entry", "description": "Starts a new time entry (timer) in the specified Team (Workspace), optionally associating it with a task, adding a description, setting billable status, or applying tags (tags feature requires Business Plan or higher)." }, { "slug": "CLICKUP_STOP_TIME_ENTRY", "name": "Stop a time entry", "description": "Stops the authenticated user's currently active time entry in the specified Team (Workspace), which requires an existing time entry to be running." }, { "slug": "CLICKUP_TRACK_TIME", "name": "Track time", "description": "Records a time entry for a task using ClickUp's legacy time tracking system; newer endpoints are generally recommended." }, { "slug": "CLICKUP_UPDATE_CHAT_CHANNEL", "name": "Update chat channel", "description": "Tool to update a ClickUp chat channel's properties including name, topic, description, visibility, and location. Use when you need to modify an existing chat channel's settings. The endpoint requires both workspace_id and channel_id." }, { "slug": "CLICKUP_UPDATE_CHAT_MESSAGE", "name": "Update chat message", "description": "Tool to update a ClickUp chat message's content, assignee, or resolved status via the v3 API. Use when you need to edit an existing chat message." }, { "slug": "CLICKUP_UPDATE_CHECKLIST", "name": "Edit checklist", "description": "Updates an existing checklist's name or position, identified by its `checklist_id`." }, { "slug": "CLICKUP_UPDATE_CHECKLIST_ITEM", "name": "Edit checklist item", "description": "Updates an existing checklist item, allowing modification of its name, assignee, resolution status, or parent item for nesting." }, { "slug": "CLICKUP_UPDATE_COMMENT", "name": "Update comment", "description": "Updates an existing task comment's text, assignee (who must be a valid workspace member), or resolution status, requiring a valid existing comment_id." }, { "slug": "CLICKUP_UPDATE_FOLDER", "name": "Update folder", "description": "Updates the name of an existing folder in ClickUp." }, { "slug": "CLICKUP_UPDATE_GOAL", "name": "Update goal", "description": "Updates attributes of an existing ClickUp goal, identified by its `goal_id`." }, { "slug": "CLICKUP_UPDATE_GUEST_ON_WORKSPACE", "name": "Edit guest on workspace", "description": "Modifies the details and permissions of an existing guest user within a specific Workspace." }, { "slug": "CLICKUP_UPDATE_KEY_RESULT", "name": "Edit key result", "description": "Updates an existing key result's progress or note in ClickUp, where the key result measures progress towards a goal." }, { "slug": "CLICKUP_UPDATE_LIST", "name": "Update list", "description": "Updates attributes of an existing ClickUp list, such as its name, content, due date, priority, assignee, or color status, identified by its `list_id`." }, { "slug": "CLICKUP_UPDATE_SPACE", "name": "Update space", "description": "Updates an existing ClickUp Space, allowing modification of its name, color, privacy, and feature settings (ClickApps)." }, { "slug": "CLICKUP_UPDATE_SPACE_TAG", "name": "Edit space tag", "description": "Updates an existing tag's name and colors in a ClickUp Space; requires current tag name for identification, and new values for tag name, foreground color, and background color, all of which are mandatory for the update." }, { "slug": "CLICKUP_UPDATE_TASK", "name": "Update task", "description": "Updates attributes of an existing task; `team_id` is required if `custom_task_ids` is true, use a single space (\" \") for `description` to clear it, and provide at least one modifiable field." }, { "slug": "CLICKUP_UPDATE_TEAM", "name": "Update team", "description": "Updates an existing ClickUp User Group (Team) using its `group_id`; note that adding a view-only guest as a paid member may incur charges." }, { "slug": "CLICKUP_UPDATE_TIME_ENTRY", "name": "Update a time entry", "description": "Updates an existing ClickUp time entry. Requires team_id (workspace ID) and timer_id (time entry ID). Optional fields: description, tags, tag_action, start/end times, duration, tid (task ID), billable status. Note: start and end times should be provided together. This is an Advanced Time Tracking feature that may require a Business Plan or higher." }, { "slug": "CLICKUP_UPDATE_TIME_ENTRY_TAG", "name": "Change tag names from time entries", "description": "Updates the name, background color, and/or foreground color for an existing time entry tag, identified by its current `name` and `team_id`." }, { "slug": "CLICKUP_UPDATE_TIME_TRACKED", "name": "Edit time tracked", "description": "Edits a legacy time-tracked interval for a task (identified by `task_id` and `interval_id`) to update its start/end times and duration; `team_id` is required if `custom_task_ids` is true." }, { "slug": "CLICKUP_UPDATE_USER_ON_WORKSPACE", "name": "Edit user on workspace", "description": "Updates a user's username, admin status, or custom role in a Workspace; requires the Workspace to be on an Enterprise Plan." }, { "slug": "CLICKUP_UPDATE_VIEW", "name": "Update view", "description": "Updates an existing ClickUp view's settings such as name, type, grouping, or filters; ensure `parent_id` and `parent_type` define a valid hierarchy, and that specified field names (e.g. for sorting, columns) are valid within the ClickUp workspace." }, { "slug": "CLICKUP_UPDATE_WEBHOOK", "name": "Update webhook", "description": "Updates the endpoint URL, monitored events, and status of an existing webhook, identified by its `webhook_id`." }, { "slug": "CLICKUP_UPDATE_WORKSPACE_ACL", "name": "Update workspace ACL", "description": "Updates privacy and access control list (ACL) permissions for a workspace object or location. Use this to make objects private/public or manage user/team permissions for spaces, folders, lists, tasks, and other ClickUp objects." } ], "triggers": [ { "slug": "CLICKUP_FOLDER_CREATED", "name": "Folder Created", "description": "Triggers when a new Folder is created." }, { "slug": "CLICKUP_FOLDER_DELETED", "name": "Folder Deleted", "description": "Triggers when a Folder is deleted." }, { "slug": "CLICKUP_FOLDER_UPDATED", "name": "Folder Updated", "description": "Triggers when a Folder is updated (renamed, content edited, etc.)." }, { "slug": "CLICKUP_LIST_CREATED", "name": "List Created", "description": "Triggers when a new List is created." }, { "slug": "CLICKUP_LIST_DELETED", "name": "List Deleted", "description": "Triggers when a List is deleted." }, { "slug": "CLICKUP_LIST_UPDATED", "name": "List Updated", "description": "Triggers when a List is updated (renamed, content edited, etc.)." }, { "slug": "CLICKUP_SPACE_CREATED", "name": "Space Created", "description": "Triggers when a new Space is created in the Workspace." }, { "slug": "CLICKUP_SPACE_DELETED", "name": "Space Deleted", "description": "Triggers when a Space is deleted." }, { "slug": "CLICKUP_SPACE_UPDATED", "name": "Space Updated", "description": "Triggers when a Space is updated (renamed, settings changed, etc.)." }, { "slug": "CLICKUP_TASK_ASSIGNEE_UPDATED", "name": "Task Assignee Updated", "description": "Triggers when an assignee is added to or removed from a task.\n\n `changes[]` carries `AssigneeAddChange` and/or `AssigneeRemoveChange`\n entries. A single event may bundle multiple adds and/or removes —\n for example when a workflow re-routes a task between two users in\n one operation." }, { "slug": "CLICKUP_TASK_COMMENT_POSTED", "name": "Task Comment Posted", "description": "Triggers when a comment is added to a task.\n\n `changes[]` carries one `CommentChange` entry whose `comment` field\n is the typed `ClickupComment` object (id, text, user, reactions,\n etc.)." }, { "slug": "CLICKUP_TASK_COMMENT_UPDATED", "name": "Task Comment Updated", "description": "Triggers when an existing comment on a task is edited.\n\n `changes[]` carries one `CommentChange` entry whose `comment` field\n is the comment in its updated form." }, { "slug": "CLICKUP_TASK_CREATED", "name": "Task Created", "description": "Triggers when a new task is created in the configured Workspace." }, { "slug": "CLICKUP_TASK_DELETED", "name": "Task Deleted", "description": "Triggers when a task is deleted.\n\n ClickUp ships no history_items or actor info on deletes — the payload\n carries only the task_id and team_id." }, { "slug": "CLICKUP_TASK_DUE_DATE_UPDATED", "name": "Task Due Date Updated", "description": "Triggers when a task's due date is set, changed, or cleared.\n\n `changes[]` carries `DueDateChange` entries only; `before` and\n `after` are millisecond-epoch strings or `null`." }, { "slug": "CLICKUP_TASK_PRIORITY_UPDATED", "name": "Task Priority Updated", "description": "Triggers when a task's priority changes.\n\n `changes[]` carries `PriorityChange` entries only." }, { "slug": "CLICKUP_TASK_STATUS_UPDATED", "name": "Task Status Updated", "description": "Triggers when a task's status changes.\n\n `changes[]` carries `StatusChange` entries only — ClickUp pre-filters\n server-side by event type. Lower traffic than subscribing to\n `CLICKUP_TASK_UPDATED` and pattern-matching `StatusChange`." }, { "slug": "CLICKUP_TASK_TAG_UPDATED", "name": "Task Tag Updated", "description": "Triggers when a tag is added to or removed from a task.\n\n `changes[]` carries `TagAddChange` and/or `TagRemoveChange` entries.\n Adds use ClickUp's `field == \"tag\"`, removes use the undocumented\n `field == \"tag_removed\"`; both are normalised into the typed change\n classes." }, { "slug": "CLICKUP_TASK_TIME_ESTIMATE_UPDATED", "name": "Task Time Estimate Updated", "description": "Triggers when a task's time estimate is set, changed, or cleared.\n\n `changes[]` carries `TimeEstimateChange` entries only; `before` and\n `after` are millisecond strings or `null`." }, { "slug": "CLICKUP_TASK_TIME_TRACKED_UPDATED", "name": "Task Time Tracked Updated", "description": "Triggers when a time-tracking interval is created, edited, or deleted on a task.\n\n Fires once per interval-change. Reads ClickUp's top-level `data.description`\n for the lifecycle action and `data.interval_id` for the correlation key —\n these are unique to time-tracking events and are present even on Deleted\n (where `history_items` is empty)." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "clickup_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ClickUp personal API token, starting with 'pk_'. In ClickUp, click your avatar → Settings → Apps, then Generate or Copy under API Token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "brevo", "name": "Brevo", "logo": "https://logos.composio.dev/api/brevo", "description": "Brevo (formerly Sendinblue) is an all-in-one email and SMS marketing platform that provides transactional messaging, marketing automation, contact management, and CRM tools to help businesses communicate and engage with their customers.", "category": "email newsletters", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BREVO_CREATE_A_COMPANY", "name": "Create a company", "description": "Creates a new company record in your Brevo CRM. Companies can be used to organize contacts and deals, track business relationships, and manage customer accounts. You can add custom attributes, link existing contacts and deals, and set country codes for international phone numbers. Use this when you need to add a new business or organization to your CRM system." }, { "slug": "BREVO_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Creates a new contact list (audience) in Brevo within a specified folder. Contact lists are used to organize and segment contacts for email campaigns, SMS campaigns, and marketing automation workflows. Use this tool when you need to: - Create a new audience segment for a marketing campaign - Organize contacts by specific criteria (e.g., geographic location, interests, purchase history) - Set up a list for newsletter subscribers, event attendees, or customer segments - Prepare a target audience before adding contacts or launching campaigns Note: You must specify a valid folder ID. Use Get Contact Lists to view existing folders and their IDs." }, { "slug": "BREVO_CREATE_OR_UPDATE_EMAIL_TEMPLATE", "name": "Create or Update Email Template", "description": "This tool creates a new email template or updates an existing one in Brevo. If a 'templateId' is provided, it performs an update; otherwise, it creates a new template." }, { "slug": "BREVO_CREATE_SMS_CAMPAIGN", "name": "Create SMS Campaign", "description": "This tool allows you to create a new SMS campaign in Brevo. You can specify the campaign name, sender, content, recipients (by providing list IDs, exclusion list IDs, or segment IDs), and optionally schedule the campaign for a specific time. You can also enable Unicode characters, add an organization prefix, and include unsubscribe instructions." }, { "slug": "BREVO_DELETE_COMPANY", "name": "Delete a company", "description": "Deletes a company from Brevo using its unique identifier." }, { "slug": "BREVO_DELETE_CONTACT", "name": "Delete Contact", "description": "Deletes a contact from Brevo by email, contact ID, external ID, phone number, WhatsApp ID, or landline number. Use the identifier_type parameter to specify the type of identifier when using ext_id, phone_id, whatsapp_id, or landline_number_id." }, { "slug": "BREVO_DELETE_EMAIL_TEMPLATE", "name": "Delete Email Template", "description": "This tool deletes an inactive email template from Brevo. You need to provide the 'templateId' of the email template you want to delete. Only inactive templates can be deleted." }, { "slug": "BREVO_DELETE_SMS_CAMPAIGN", "name": "Delete SMS Campaign", "description": "This tool deletes an existing SMS campaign." }, { "slug": "BREVO_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Retrieves comprehensive information about the authenticated Brevo account. Returns account details including: - Account holder information (email, first name, last name, company name) - Complete address (street, city, zip code, country) - Plan details with credit information (type, credits remaining, start/end dates) - Relay configuration for transactional emails (enabled status and data) - Marketing Automation status and tracker key (if enabled) No input parameters are required - the action uses the authenticated account's credentials. Use this action to: - Verify account configuration and settings - Check available credits and plan type - Monitor transactional email relay status - Retrieve Marketing Automation tracker information. If credentials are missing or invalid, verify the Brevo connection is active before calling — retries will not resolve credential issues. If blocked by an 'unrecognised IP address' error, add the integration host's IP to the Brevo account allowlist." }, { "slug": "BREVO_GET_ALL_CONTACTS", "name": "Get all contacts", "description": "This tool retrieves all contacts from your Brevo account with pagination and filtering based on modification/creation dates, list IDs, segment IDs, and contact attributes. For complete retrieval, iterate pages by incrementing `offset` by `limit` on each call until no more records are returned; a single call returns at most `limit` contacts." }, { "slug": "BREVO_GET_ALL_EMAIL_TEMPLATES", "name": "Get all email templates", "description": "This tool retrieves a list of all email templates created in your Brevo account. It corresponds to the GET /v3/smtp/templates endpoint as per the Brevo API documentation, with optional parameters for filtering (templateStatus), pagination (limit, offset), and sorting (asc/desc)." }, { "slug": "BREVO_GET_ALL_SENDERS", "name": "Get All Senders", "description": "This tool retrieves a list of all senders associated with the Brevo account. Senders are the email addresses or domains that are authorized to send emails through Brevo. This action can be useful for managing and verifying sender identities." }, { "slug": "BREVO_GET_COMPANY_DETAILS", "name": "Get Company Details", "description": "Retrieves detailed information about a specific company from Brevo's CRM. Returns company data including its unique identifier, custom attributes, and lists of linked contact IDs and deal IDs. This is useful for accessing comprehensive company records and understanding company relationships." }, { "slug": "BREVO_GET_CONTACT_DETAILS", "name": "Get Contact Details", "description": "This tool retrieves detailed information about a specific contact in Brevo. You can identify the contact using their email address (URL-encoded), their unique contact ID, or their SMS attribute value." }, { "slug": "BREVO_GET_CONTACT_LISTS", "name": "Get contact lists", "description": "Retrieves all contact lists from your Brevo account with pagination support. Returns list IDs, names, subscriber counts, and folder associations. Use this to discover available lists or obtain list IDs needed for other operations (e.g., SMS campaigns, adding contacts to lists)." }, { "slug": "BREVO_GET_EMAIL_CAMPAIGN_DETAILS", "name": "Get Email Campaign Details", "description": "Tool to retrieve full configuration and content for a specific email campaign. Use when you need complete campaign details including HTML content, recipients, statistics, and all configuration settings that may be omitted from list responses." }, { "slug": "BREVO_GET_SMS_CAMPAIGN_DETAILS", "name": "Get SMS Campaign Details", "description": "Retrieves the details of a specific SMS campaign. This action fetches complete information about an SMS campaign including its status, content, sender, scheduling, recipients, and statistics." }, { "slug": "BREVO_GET_SMS_CAMPAIGNS", "name": "Get SMS Campaigns", "description": "Retrieves all SMS campaigns from your Brevo account with optional filtering and pagination. Use this tool to: - List all SMS campaigns with their details (name, status, content, sender, dates) - Filter campaigns by status (sent, draft, queued, suspended, inProcess, archive) - Filter sent campaigns by date range - Control pagination with limit and offset - Sort results by creation date (ascending or descending) Returns campaign overview information including ID, name, status, content, sender, scheduled date (if any), and creation/modification timestamps." }, { "slug": "BREVO_LIST_ALL_COMPANIES", "name": "List All Companies", "description": "This action retrieves a list of all companies stored in the Brevo CRM. It supports pagination and filtering by name and other attributes." }, { "slug": "BREVO_LIST_EMAIL_CAMPAIGNS", "name": "List Email Campaigns", "description": "This tool retrieves a list of all email campaigns associated with the user's Brevo account. It allows filtering by campaign type, status, start date, and end date. The response includes the total count of campaigns and an array of campaign objects, each containing details like ID, name, subject, type, status, scheduled date/time, sender information, and optionally, campaign statistics. A response with `count` of 0 and an empty campaigns array is a valid result, not an error." }, { "slug": "BREVO_UPDATE_EMAIL_CAMPAIGN", "name": "Update Email Campaign", "description": "Updates an email campaign in Brevo using its unique identifier." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "brevo_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "brevo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Brevo API Key", "type": "string", "description": "Your Brevo (formerly Sendinblue) API key — a long token starting with 'xkeysib-'. Generate one in Brevo under Settings → SMTP & API → API keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stripe", "name": "Stripe", "logo": "https://logos.composio.dev/api/stripe", "description": "Stripe offers online payment infrastructure, fraud prevention, and APIs enabling businesses to accept and manage payments globally", "category": "payment processing", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 432, "triggerCount": 7, "version": "20260703_00", "tools": [ { "slug": "STRIPE_ACCEPT_QUOTE", "name": "Accept quote", "description": "Tool to accept a quote in Stripe. Use when you need to accept a finalized quote, which will create an invoice, subscription, or subscription schedule based on the quote's configuration." }, { "slug": "STRIPE_ACTIVATE_BILLING_ALERT", "name": "Activate billing alert", "description": "Reactivates a billing alert, allowing it to trigger again. Use when you need to resume monitoring usage thresholds and receiving notifications for a previously deactivated alert." }, { "slug": "STRIPE_ADD_INVOICE_LINES", "name": "Add lines to invoice", "description": "Tool to add multiple line items to a draft Stripe invoice. Use when you need to add additional charges, services, or credits to an existing invoice that is still in draft status." }, { "slug": "STRIPE_ADVANCE_TEST_CLOCK", "name": "Advance test clock", "description": "Advance a test clock to a future timestamp. Use for testing time-based billing scenarios. Requires test mode API keys (test_helpers endpoints are only available in test mode). The advancement is asynchronous; monitor the status field to track completion (status changes from 'advancing' to 'ready')." }, { "slug": "STRIPE_APPLY_CUSTOMER_BALANCE", "name": "Apply customer balance to payment intent", "description": "Manually reconciles remaining amount for a customer_balance PaymentIntent by applying funds from customer's cash balance. IMPORTANT: This action only works with PaymentIntents that have 'customer_balance' in their payment_method_types. The customer_balance payment method type must be enabled in your Stripe account settings. Use this when you need to apply funds from a customer's cash balance account to complete or partially fund a PaymentIntent." }, { "slug": "STRIPE_ARCHIVE_BILLING_ALERT", "name": "Archive billing alert", "description": "Tool to archive a billing alert in Stripe, removing it from list views and APIs. Use when you need to permanently archive a billing alert. This action is non-reversible." }, { "slug": "STRIPE_ATTACH_CUSTOMER_SOURCE", "name": "Attach source to customer", "description": "Attach a payment source (card token or source object) to a customer for future charges. IMPORTANT: This is a legacy API. For new integrations, use the PaymentMethods API instead (STRIPE_ATTACH_PAYMENT_METHOD). The source parameter accepts: - Card tokens (tok_xxxx) created client-side via Stripe.js or mobile SDKs - Source objects (src_xxxx) for alternative payment methods NOTE: PaymentMethod objects (pm_xxxx) cannot be used with this endpoint. Use STRIPE_ATTACH_PAYMENT_METHOD for those. In test mode, you can use test tokens like 'tok_visa'. In live mode, tokens must be created client-side for PCI compliance." }, { "slug": "STRIPE_ATTACH_INVOICE_PAYMENT", "name": "Attach payment to invoice", "description": "Attaches a PaymentIntent or Out of Band Payment to an invoice's payments list. When the PaymentIntent status changes to succeeded, the payment is credited to the invoice. Use when you need to associate an existing payment with a specific invoice." }, { "slug": "STRIPE_ATTACH_PAYMENT_METHOD", "name": "Attach payment method to customer", "description": "Attaches a PaymentMethod to a Customer. Use when you need to save a payment method for future use with a specific customer. The PaymentMethod must be in a detached state before attaching." }, { "slug": "STRIPE_ATTACH_PRODUCT_FEATURE", "name": "Attach feature to product", "description": "Tool to attach a feature to a product. Use when you need to add a feature to a product's capabilities. This creates a product_feature object linking the feature to the product." }, { "slug": "STRIPE_CANCEL_PAYMENT_INTENT", "name": "Cancel payment intent", "description": "Cancels a PaymentIntent when in cancelable state. Use when a PaymentIntent is no longer needed to prevent further charges. For PaymentIntents with status='requires_capture', the remaining amount_capturable will be automatically refunded." }, { "slug": "STRIPE_CANCEL_QUOTE", "name": "Cancel Quote", "description": "Tool to cancel a Stripe quote. Use when you need to cancel an existing quote that is in 'draft' or 'open' status. Once canceled, the quote cannot be finalized or accepted by the customer." }, { "slug": "STRIPE_CANCEL_SETUP_INTENT", "name": "Cancel setup intent", "description": "Cancels a SetupIntent that is no longer needed. Use when a SetupIntent is in 'requires_payment_method', 'requires_confirmation', or 'requires_action' state. Note: SetupIntents linked to Checkout Sessions cannot be canceled through this method." }, { "slug": "STRIPE_CANCEL_SUBSCRIPTION", "name": "Cancel subscription", "description": "Cancels a customer's active Stripe subscription at the end of the current billing period, with options to invoice immediately for metered usage and prorate charges for unused time." }, { "slug": "STRIPE_CANCEL_SUBSCRIPTION_SCHEDULE", "name": "Cancel subscription schedule", "description": "Cancels a subscription schedule and its associated subscription immediately (if active). Use when you need to stop scheduling of phases while leaving any existing subscription in place. Only succeeds if the schedule status is 'not_started' or 'active'." }, { "slug": "STRIPE_CANCEL_TERMINAL_READER_ACTION", "name": "Cancel Terminal Reader Action", "description": "Tool to cancel the current reader action. Use when you need to halt any ongoing operation on a Stripe Terminal reader device such as payment collection, setup intent processing, or input collection." }, { "slug": "STRIPE_CAPTURE_CHARGE", "name": "Capture Charge", "description": "Tool to capture payment on an uncaptured charge. Use when a charge was created with capture=false and you're ready to capture the payment." }, { "slug": "STRIPE_CAPTURE_PAYMENT_INTENT", "name": "Capture payment intent", "description": "Captures the funds of an existing uncaptured PaymentIntent. Use when the PaymentIntent status is 'requires_capture'." }, { "slug": "STRIPE_CLOSE_DISPUTE", "name": "Close Dispute", "description": "Tool to close a dispute. Use when you want to dismiss a dispute and acknowledge it as lost, indicating no evidence will be submitted. This action is irreversible." }, { "slug": "STRIPE_COLLECT_TERMINAL_READER_INPUTS", "name": "Set Terminal Reader Display", "description": "Initiates input collection on a Terminal Reader to display forms and collect customer information. Use when you need to gather email, phone, text, numeric, signature, or selection inputs from customers on a physical reader." }, { "slug": "STRIPE_COLLECT_TERMINAL_READER_PAYMENT_METHOD", "name": "Collect payment method on Terminal Reader", "description": "Tool to initiate payment method collection on a Stripe Terminal Reader. Use when you need to hand off a PaymentIntent to a physical card reader device to collect payment details. The Reader action executes asynchronously with action.status showing 'in_progress' initially." }, { "slug": "STRIPE_CONFIRM_PAYMENT_INTENT", "name": "Confirm payment intent", "description": "Tool to confirm customer intent to pay with current or provided payment method. Use when ready to finalize a PaymentIntent and initiate the payment attempt. A return_url is required if confirmation needs customer action like 3D Secure authentication." }, { "slug": "STRIPE_CONFIRM_SETUP_INTENT", "name": "Confirm setup intent", "description": "Confirms a SetupIntent to complete customer payment method setup. Use when you need to finalize credential collection after creating a SetupIntent." }, { "slug": "STRIPE_CONFIRM_TERMINAL_READER_PAYMENT_INTENT", "name": "Confirm PaymentIntent on Terminal Reader", "description": "Tool to confirm a PaymentIntent on a Terminal reader device. Use when you need to finalize a payment transaction on a card reader after the PaymentIntent has been collected on the reader hardware." }, { "slug": "STRIPE_CREATE_ACCOUNTS_CAPABILITIES_CARD_PAYMENTS", "name": "Create Card Payments Capability", "description": "Tool to create or update card payments capability for a Stripe Connect account. Use when you need to enable or disable card payment processing for a connected account." }, { "slug": "STRIPE_CREATE_ACCOUNT_SESSION", "name": "Create Account Session", "description": "Creates an Account Session for a Stripe Connect account, granting access to embedded components. Use when you need to provide temporary, client-side access to a connected account's dashboard features such as account management, onboarding, payments, and payouts. The Account Session expires relatively quickly and cannot be used more than once. We recommend creating a new Account Session each time you need to display an embedded component to your user." }, { "slug": "STRIPE_CREATE_APPLE_PAY_DOMAIN", "name": "Create Apple Pay Domain", "description": "Tool to create an Apple Pay domain registration. Use when registering your domain with Apple Pay to accept Apple Pay payments on your website. Stripe handles the Apple merchant validation process." }, { "slug": "STRIPE_CREATE_APPS_SECRET", "name": "Create apps secret", "description": "Tool to create a secret in the Stripe Secret Store. Use when you need to securely persist secrets for use by UI Extensions and app backends." }, { "slug": "STRIPE_CREATE_BANK_ACCOUNT_TOKEN", "name": "Create Bank Account Token", "description": "Tool to create a single-use token representing bank account details. Use when you need to securely collect bank account information for ACH payments, direct debits, or adding a bank account to a customer or recipient." }, { "slug": "STRIPE_CREATE_BILLING_ALERT", "name": "Create billing alert", "description": "Tool to create a billing alert that monitors usage on a billing meter and triggers notifications when a specified threshold is crossed. Use when you need to set up usage-based billing alerts." }, { "slug": "STRIPE_CREATE_BILLING_CREDIT_GRANT", "name": "Create billing credit grant", "description": "Tool to create a credit grant that allocates billing credits to a customer for use against metered pricing. Use when you need to provide promotional or paid credits to customers." }, { "slug": "STRIPE_CREATE_BILLING_METER", "name": "Create billing meter", "description": "Tool to create a billing meter in Stripe for tracking usage events. Use when you need to set up a new meter to track API calls, storage usage, or other measurable customer actions that form the basis of billing calculations." }, { "slug": "STRIPE_CREATE_BILLING_METER_EVENT", "name": "Create Billing Meter Event V2", "description": "Creates a billing meter event using Stripe API v2 for usage-based billing. Use when recording customer usage that will be metered and billed according to configured billing meters." }, { "slug": "STRIPE_CREATE_BILLING_METER_EVENT_ADJUSTMENT", "name": "Create Billing Meter Event Adjustment", "description": "Creates an adjustment to cancel a billing meter event. Use when you need to correct errors or remove events attached to the wrong customer within 24 hours of Stripe receiving them." }, { "slug": "STRIPE_CREATE_BILLING_METER_EVENT_SESSION", "name": "Create Billing Meter Event Session", "description": "Creates authentication session for high-throughput meter event stream. Use when you need to send meter events to Stripe's billing system; tokens are valid for 15 minutes." }, { "slug": "STRIPE_CREATE_BILLING_PORTAL_CONFIGURATION", "name": "Create Billing Portal Configuration", "description": "Tool to create a Stripe billing portal configuration. Use when you need to define the functionality and behavior of a customer portal session, including which features customers can access." }, { "slug": "STRIPE_CREATE_BILLING_PORTAL_SESSION", "name": "Create Billing Portal Session", "description": "Tool to create a Stripe billing portal session. Use when you need to provide customers with a secure URL to manage their subscriptions, payment methods, and invoices." }, { "slug": "STRIPE_CREATE_CHARGE", "name": "Create charge (deprecated)", "description": "Tool to create a charge to request payment from a credit or debit card. Use when you need to charge a payment source directly. Note: This method is deprecated; Stripe recommends using the Payment Intents API instead for new integrations." }, { "slug": "STRIPE_CREATE_CHARGE_REFUND", "name": "Create Charge Refund", "description": "Tool to create a refund for a charge in Stripe. Use when you need to refund a previously created charge fully or partially." }, { "slug": "STRIPE_CREATE_CHECKOUT_SESSION", "name": "Create Checkout Session", "description": "Tool to create a Stripe Checkout Session. Use when you need a secure, hosted URL to collect payments or subscriptions via Stripe Checkout." }, { "slug": "STRIPE_CREATE_COUPON", "name": "Create Coupon", "description": "Creates a new discount coupon in Stripe with percentage or fixed amount discount. Use when creating promotional discounts for customers." }, { "slug": "STRIPE_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Issues a credit note to adjust a finalized invoice's amount. Use when you need to credit an invoice after finalization, either for refunds, customer balance credits, or out-of-band adjustments." }, { "slug": "STRIPE_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer in Stripe, required for creating charges or subscriptions; an email is highly recommended for customer communications." }, { "slug": "STRIPE_CREATE_CUSTOMER_BALANCE_TRANSACTION", "name": "Create Customer Balance Transaction", "description": "Tool to create an immutable transaction that updates the customer's credit balance. Use when you need to manually adjust a customer's balance, such as issuing credits or debits." }, { "slug": "STRIPE_CREATE_CUSTOMER_BANK_ACCOUNT", "name": "Create customer bank account", "description": "Tool to create a new bank account attached to a customer object. Use when you need to add a bank account as a payment source for an existing Stripe customer." }, { "slug": "STRIPE_CREATE_CUSTOMER_CARD", "name": "Create customer card", "description": "Creates a card or bank account payment source for a Stripe customer. Use when you need to add a new payment method to a customer for future use. Supports both card and bank account creation. Note: To use bank accounts, the customer must be verified and have the `bank_account` capability enabled in their country." }, { "slug": "STRIPE_CREATE_CUSTOMER_SESSION", "name": "Create Customer Session", "description": "Tool to create a Stripe Customer Session granting client-side access control over a Customer. Use when you need to provide temporary access to customer portal features." }, { "slug": "STRIPE_CREATE_CUSTOMER_SOURCE", "name": "Create card or payment source", "description": "Attaches a payment source to a customer for later reuse. Use when you need to save a card, bank account, or other payment source for future charges." }, { "slug": "STRIPE_CREATE_CUSTOMER_SUBSCRIPTION", "name": "Create customer subscription", "description": "Tool to create a subscription for an existing customer. Use when creating a new subscription with items and prices for a specific customer." }, { "slug": "STRIPE_CREATE_CUSTOMER_TAX_ID", "name": "Create Customer Tax ID", "description": "Creates a new tax ID for a customer, used for tax compliance and invoicing across 100+ supported country-specific tax ID formats. Use when you need to add tax identification to a customer account." }, { "slug": "STRIPE_CREATE_CVC_UPDATE_TOKEN", "name": "Create CVC Update Token", "description": "Creates a single-use token representing an updated CVC value for card payments. Use when you need to update the CVC for an existing card without collecting the full card details again." }, { "slug": "STRIPE_CREATE_ENTITLEMENT_FEATURE", "name": "Create Feature Entitlement", "description": "Creates a new feature entitlement in Stripe representing a monetizable ability or functionality. Use when defining features that can be assigned to products and customers." }, { "slug": "STRIPE_CREATE_EPHEMERAL_KEY", "name": "Create Ephemeral Key", "description": "Tool to create a short-lived ephemeral API key for secure mobile SDK access to specific Stripe resources. Use when integrating with Stripe iOS, Android SDKs, or Stripe.js for Issuing Cards." }, { "slug": "STRIPE_CREATE_FILE", "name": "Create File", "description": "Tool to upload a file to Stripe for business purposes such as dispute evidence, identity verification, or business logos. Use when you need to store files that can be attached to other Stripe objects." }, { "slug": "STRIPE_CREATE_FILE_LINK", "name": "Create File Link", "description": "Tool to create a file link object that generates a shareable URL for accessing uploaded files. Use when you need to provide temporary or permanent access to a Stripe file." }, { "slug": "STRIPE_CREATE_FINANCIAL_CONNECTIONS_SESSION", "name": "Create Financial Connections Session", "description": "Tool to create a Financial Connections Session to launch the authorization flow for linking financial accounts. Use when you need to collect customer bank account information for payments or data access." }, { "slug": "STRIPE_CREATE_FX_QUOTE", "name": "Create FX Quote", "description": "Tool to create an FX quote for currency conversion with optional rate locking. Use when you need to view current exchange rates for currency pairs or extend quoted rates for 5 minutes to 24 hours to reduce FX fluctuation uncertainty." }, { "slug": "STRIPE_CREATE_INVOICE", "name": "Create an invoice", "description": "Creates a new draft Stripe invoice for a customer; use to revise an existing invoice, bill for a specific subscription (which must belong to the customer), or apply detailed customizations. Note: Stripe API enforces a maximum value of 99,999,999 (in smallest currency unit) for amount fields including `unit_amount` in invoice items, `application_fee_amount`, and `transfer_data.amount`. Values exceeding this limit will be rejected." }, { "slug": "STRIPE_CREATE_INVOICE_ITEM", "name": "Create invoice item", "description": "Tool to create an invoice item for draft invoices. Use when adding line items to customer invoices before finalization." }, { "slug": "STRIPE_CREATE_PAYMENT_INTENT", "name": "Create payment intent", "description": "Creates a Stripe PaymentIntent to initiate and process a customer's payment; using `application_fee_amount` for a connected account requires the `Stripe-Account` header." }, { "slug": "STRIPE_CREATE_PAYMENT_LINK", "name": "Create Payment Link", "description": "Tool to create a Stripe Payment Link. Use when you need to generate a hosted checkout page URL that can be shared with customers to collect payments without building custom checkout infrastructure. Supports up to 20 line items per payment link." }, { "slug": "STRIPE_CREATE_PAYMENT_METHOD", "name": "Create payment method", "description": "Creates a PaymentMethod object representing a customer's payment instrument (card, bank account, etc.). PaymentMethods can be: - Attached to a Customer for future use - Used directly with PaymentIntents to collect payments - Stored for recurring payments or subscriptions The 'type' parameter determines which payment-specific fields are required: - type='card': requires card object with number, exp_month, exp_year - type='sepa_debit': requires sepa_debit object with iban - type='us_bank_account': requires us_bank_account object with account details - And many other payment method types (acss_debit, au_becs_debit, bacs_debit, boleto, etc.) IMPORTANT: For card payments, collecting card numbers directly via API requires PCI compliance and special account permissions. Consider using Stripe.js, Stripe Elements, or mobile SDKs instead for better security and easier PCI compliance. This action is most useful for non-card payment methods or when you have explicit authorization for raw card data access." }, { "slug": "STRIPE_CREATE_PAYMENT_METHOD_CONFIGURATION", "name": "Create payment method configuration", "description": "Creates a payment method configuration to control which payment methods are displayed during checkout. Use when setting up payment options for customers." }, { "slug": "STRIPE_CREATE_PAYMENT_METHOD_DOMAIN", "name": "Create payment method domain", "description": "Tool to create a payment method domain object to control where payment methods are shown. Use when registering a new web domain with Stripe to enable payment processing capabilities." }, { "slug": "STRIPE_CREATE_PII_TOKEN", "name": "Create PII Token", "description": "Tool to create a single-use token representing PII (personally identifiable information). Use when you need to securely tokenize sensitive personal information like ID numbers for compliance or security purposes." }, { "slug": "STRIPE_CREATE_PLAN", "name": "Create a plan", "description": "Tool to create a recurring billing plan with flexible pricing configuration. Use when setting up subscription plans with defined pricing, currency, and billing intervals." }, { "slug": "STRIPE_CREATE_PREVIEW_INVOICE", "name": "Create Preview Invoice", "description": "Tool to preview an upcoming invoice without creating it. Use when you need to show pending charges, renewal fees, discounts, and prorations before finalizing an invoice." }, { "slug": "STRIPE_CREATE_PRICE", "name": "Create a price", "description": "Creates a new Stripe Price for a product, defining its charges (one-time or recurring) and billing scheme; requires either an existing `product` ID or `product_data`." }, { "slug": "STRIPE_CREATE_PRODUCT", "name": "Create product", "description": "Creates a new product in Stripe, encoding the request as `application/x-www-form-urlencoded` by flattening nested structures." }, { "slug": "STRIPE_CREATE_PROMOTION_CODE", "name": "Create Promotion Code", "description": "Tool to create a promotion code linked to an underlying coupon. Use when you need to generate customer-redeemable codes with optional restrictions." }, { "slug": "STRIPE_CREATE_QUOTE", "name": "Create a quote", "description": "Tool to create a Stripe quote modeling prices and services for a customer. Use when you need to generate a formal quote for a customer before finalizing payment." }, { "slug": "STRIPE_CREATE_REFUND", "name": "Create Refund", "description": "Creates a full or partial refund in Stripe, targeting either a specific charge ID or a payment intent ID." }, { "slug": "STRIPE_CREATE_REPORT_RUN", "name": "Create a Report Run", "description": "Creates a new report run object and begins executing the report asynchronously. Use when you need to generate Stripe reports such as balance summaries or itemized transaction reports." }, { "slug": "STRIPE_CREATE_REVERSAL_TAX_TRANSACTION", "name": "Create Reversal Tax Transaction", "description": "Creates a reversal of an existing tax transaction. Use when you need to fully or partially reverse tax calculations, either for full refunds or specific line items." }, { "slug": "STRIPE_CREATE_SETUP_INTENT", "name": "Create Setup Intent", "description": "Creates a SetupIntent object to collect payment method permissions for future payments. Use when setting up payment methods for subscriptions or saving cards for later use." }, { "slug": "STRIPE_CREATE_SHIPPING_RATE", "name": "Create a shipping rate", "description": "Creates a new shipping rate object that appears on Checkout Sessions for customer display. Use when defining shipping costs for products." }, { "slug": "STRIPE_CREATE_SOURCE", "name": "Create Source", "description": "Tool to create a Stripe source object for accepting payment methods. Use when you need to process payments through various payment methods like cards, bank transfers, or redirect-based payment systems." }, { "slug": "STRIPE_CREATE_SUBSCRIPTION", "name": "Create subscription", "description": "Creates a new, highly configurable subscription for an existing Stripe customer, supporting multiple items, trials, discounts, and various billing/payment options." }, { "slug": "STRIPE_CREATE_SUBSCRIPTION_ITEM", "name": "Create subscription item", "description": "Tool to add a new item to an existing subscription without changing existing items. Use when adding a product or service to a customer's subscription." }, { "slug": "STRIPE_CREATE_SUBSCRIPTION_SCHEDULE", "name": "Create subscription schedule", "description": "Tool to create a new subscription schedule for managing subscription changes over time. Use when you need to schedule future subscription modifications, phase transitions, or automate subscription lifecycle management." }, { "slug": "STRIPE_CREATE_TAX_CALCULATION", "name": "Create Tax Calculation", "description": "Creates a Tax Calculation to compute taxes for customer purchases. Use when you need to calculate taxes for a transaction before finalizing it, such as displaying tax amounts in a shopping cart." }, { "slug": "STRIPE_CREATE_TAX_ID", "name": "Create Tax ID", "description": "Creates a new tax ID for an account or customer. Use when you need to add tax identification for compliance and invoicing purposes." }, { "slug": "STRIPE_CREATE_TAX_RATE", "name": "Create tax rate", "description": "Tool to create a new tax rate in Stripe. Use when you need to define a tax rate for invoices, subscriptions, or checkout sessions." }, { "slug": "STRIPE_CREATE_TAX_REGISTRATION", "name": "Create Tax Registration", "description": "Creates a new Tax Registration object to enable tax collection in specified jurisdictions. Use when setting up tax collection for a new country, state, or province." }, { "slug": "STRIPE_CREATE_TAX_TRANSACTION_FROM_CALCULATION", "name": "Create Tax Transaction from Calculation", "description": "Tool to create a Tax Transaction from a calculation before 90-day expiration. Use when you need to finalize tax calculations and create a permanent transaction record." }, { "slug": "STRIPE_CREATE_TERMINAL_CONFIGURATION", "name": "Create Terminal Configuration", "description": "Creates a new Configuration object for Stripe payment terminals with customizable settings. Use when setting up terminal readers with specific device configurations, offline settings, tipping options, or WiFi credentials." }, { "slug": "STRIPE_CREATE_TERMINAL_CONNECTION_TOKEN", "name": "Create Terminal Connection Token", "description": "Creates a short-lived connection token for Stripe Terminal SDK to connect to readers. Use when initializing a Terminal connection with the Stripe Terminal SDK." }, { "slug": "STRIPE_CREATE_TERMINAL_LOCATION", "name": "Create Terminal Location", "description": "Creates a new Terminal Location for managing Stripe Terminal readers. Use when you need to register a physical location where Terminal readers will be deployed." }, { "slug": "STRIPE_CREATE_TERMINAL_ONBOARDING_LINK", "name": "Create Terminal Onboarding Link", "description": "Creates an onboarding link for Tap to Pay on iPhone. Use when you need to generate a redirect URL for merchants to complete the Apple Terms and Conditions acceptance flow. The generated link directs merchants through the required onboarding process." }, { "slug": "STRIPE_CREATE_TERMINAL_READER", "name": "Create Terminal Reader", "description": "Creates and registers a new Terminal Reader to a Stripe account at a specified location. Use this to add physical card reader devices (like Stripe S700, WisePOS E) for accepting in-person payments. The reader must first generate a registration code (enter 0-7-1-3-9 on the device) before registering via this API. For testing purposes, use simulated readers with codes 'simulated-wpe' or 'simulated-s700' in test mode only." }, { "slug": "STRIPE_CREATE_TEST_CLOCK", "name": "Create Test Clock", "description": "Tool to create a test clock for testing time-based scenarios in Stripe. Use when you need to simulate the passage of time for testing subscriptions, trials, or other time-dependent features." }, { "slug": "STRIPE_CREATE_TEST_CONFIRMATION_TOKEN", "name": "Create Test Confirmation Token (Test Mode Only)", "description": "Creates a test mode Confirmation Token for server-side payment integration testing. Confirmation Tokens securely transport payment method details collected client-side to your server for confirming PaymentIntents or SetupIntents. This test helper allows you to create these tokens server-side for testing without using Stripe.js. IMPORTANT: This endpoint requires TEST MODE API keys (sk_test_...). It will fail with live mode keys. Use this only for integration testing in test mode environments. Provide either 'payment_method' (existing PM ID) or 'payment_method_data' (to create new PM)." }, { "slug": "STRIPE_CREATE_TOKEN", "name": "Create CVC update token", "description": "Tool to create a single-use CVC update token for card re-collection. Use when you need to collect an updated CVC value for a saved card, typically during payment confirmation with manual confirmation_method on a PaymentIntent." }, { "slug": "STRIPE_CREATE_TRANSFER", "name": "Create Transfer", "description": "Creates a transfer to move funds between Stripe accounts as part of Connect. Use when you need to move money from your platform's balance to a connected Stripe account, such as paying out to sellers or distributing funds to connected accounts." }, { "slug": "STRIPE_CREATE_USAGE_RECORD", "name": "Create usage record", "description": "Creates a usage record for a specified subscription item and timestamp. Use when tracking customer usage for metered billing plans to accurately invoice usage-based subscriptions." }, { "slug": "STRIPE_DEACTIVATE_BILLING_ALERT", "name": "Deactivate billing alert", "description": "Tool to deactivate a billing alert, preventing it from triggering. Use when you need to stop a billing alert from monitoring usage thresholds." }, { "slug": "STRIPE_DEACTIVATE_BILLING_METER", "name": "Deactivate Billing Meter", "description": "Deactivates a billing meter. Use when you need to stop a meter from accepting new events and prevent it from being attached to prices." }, { "slug": "STRIPE_DELETE_APPLE_PAY_DOMAIN", "name": "Delete Apple Pay Domain", "description": "Tool to delete an Apple Pay domain from a Stripe account. Use when you need to remove a previously registered Apple Pay domain. This operation is permanent and cannot be undone." }, { "slug": "STRIPE_DELETE_APPS_SECRET", "name": "Delete apps secret", "description": "Tool to delete a secret from the Stripe Secret Store by name and scope. Use when you need to permanently remove a secret. Requests from UI extensions can only access account-scoped secrets or secrets scoped to their own user." }, { "slug": "STRIPE_DELETE_COUPON", "name": "Delete coupon", "description": "Tool to delete a coupon from Stripe. Use when you need to remove a coupon code, preventing new redemptions while preserving existing customer discounts." }, { "slug": "STRIPE_DELETE_CUSTOMER", "name": "Delete customer (Deprecated)", "description": "DEPRECATED: Use STRIPE_DELETE_CUSTOMERS_CUSTOMER instead. Permanently deletes an existing Stripe customer; this irreversible action also cancels their active subscriptions and removes all associated data." }, { "slug": "STRIPE_DELETE_CUSTOMER_BANK_ACCOUNT", "name": "Delete customer bank account", "description": "Deletes a bank account payment source from a customer. This action is irreversible — the bank account cannot be recovered once deleted. Use when you need to remove a bank account from a customer's payment methods." }, { "slug": "STRIPE_DELETE_CUSTOMER_DISCOUNT", "name": "Delete customer discount", "description": "Removes the currently applied discount on a customer. Use when you need to remove a coupon or promotion code discount from a customer's account." }, { "slug": "STRIPE_DELETE_CUSTOMERS_CUSTOMER", "name": "Delete customer", "description": "Permanently deletes a customer and cancels active subscriptions. Use when you need to remove a customer record from your Stripe account. This operation is irreversible and automatically terminates any active subscriptions." }, { "slug": "STRIPE_DELETE_CUSTOMER_SUBSCRIPTION", "name": "Cancel customer subscription", "description": "Cancels a customer's subscription immediately. Customer won't be charged again, and subscription status becomes 'canceled'." }, { "slug": "STRIPE_DELETE_CUSTOMER_SUBSCRIPTION_DISCOUNT", "name": "Delete customer subscription discount", "description": "Removes currently applied discount from a customer's subscription. Use when you need to remove a discount code or promotion from a specific subscription belonging to a customer." }, { "slug": "STRIPE_DELETE_CUSTOMER_TAX_ID", "name": "Delete customer tax ID", "description": "Deletes a customer's tax ID object. Use when you need to remove a specific tax identification from a customer's account." }, { "slug": "STRIPE_DELETE_EPHEMERAL_KEY", "name": "Delete ephemeral key", "description": "Immediately invalidate an ephemeral key. Use when you need to manually expire a short-lived API key before its automatic expiration time." }, { "slug": "STRIPE_DELETE_INVOICE", "name": "Delete draft invoice", "description": "Permanently deletes a draft invoice. This action cannot be undone. Use when you need to remove a draft invoice. Finalized or subscription invoices must be voided instead." }, { "slug": "STRIPE_DELETE_INVOICEITEM", "name": "Delete invoice item", "description": "Tool to delete an invoice item from Stripe. Use when removing invoice items that are not attached to invoices or attached to draft invoices." }, { "slug": "STRIPE_DELETE_PLAN", "name": "Delete plan", "description": "Tool to delete a plan from Stripe. Use when you need to permanently remove a pricing plan. Prevents new subscribers from being added to the plan, but existing subscribers remain unaffected." }, { "slug": "STRIPE_DELETE_PRODUCT", "name": "Delete product", "description": "Delete a product. Deleting a product is only possible if it has no prices associated with it. Products with type=good cannot be deleted if they have SKUs." }, { "slug": "STRIPE_DELETE_PRODUCT_FEATURE", "name": "Delete product feature", "description": "Removes a feature from a product. Use when you need to delete a specific product feature attachment." }, { "slug": "STRIPE_DELETE_SUBSCRIPTION_DISCOUNT", "name": "Delete subscription discount", "description": "Removes the currently applied discount on a subscription. Use when you need to remove a discount code or promotion from an active subscription. Returns a deleted confirmation flag upon success." }, { "slug": "STRIPE_DELETE_SUBSCRIPTION_ITEM", "name": "Delete subscription item", "description": "Deletes a subscription item without canceling the subscription. Use when you need to remove a specific item from a customer's subscription while keeping the subscription active." }, { "slug": "STRIPE_DELETE_TAX_ID", "name": "Delete tax ID", "description": "Deletes an existing tax ID object. Use when you need to permanently remove a tax identification from Stripe." }, { "slug": "STRIPE_DELETE_TERMINAL_CONFIGURATION", "name": "Delete Terminal Configuration", "description": "Permanently deletes a Terminal Configuration object from your Stripe account. Use when you need to remove a configuration that defines how features should be configured for terminal readers." }, { "slug": "STRIPE_DELETE_TERMINAL_LOCATION", "name": "Delete Terminal Location", "description": "Tool to permanently delete a Terminal Location object from your Stripe account. Use when you need to remove a physical location where Terminal readers are no longer deployed. This operation is permanent and irreversible." }, { "slug": "STRIPE_DELETE_TERMINAL_READER", "name": "Delete Terminal Reader", "description": "Permanently deletes a Terminal Reader object from your Stripe account. Use when you need to remove a reader device that is no longer in use." }, { "slug": "STRIPE_DELETE_TEST_CLOCK", "name": "Delete test clock", "description": "Permanently deletes a test clock from Stripe's test environment. Use when you need to remove test clocks used for simulating time-based features." }, { "slug": "STRIPE_DELETE_V1_INVOICES_VOID_AN_INVOICE", "name": "Void an invoice", "description": "Tool to void a finalized Stripe invoice. Use when you need to permanently mark an invoice as void to prevent any further collection attempts. This action cannot be undone." }, { "slug": "STRIPE_DELETEV1_SUBSCRIPTIONS_LIST_SUBSCRIPTIONS", "name": "Cancel subscription", "description": "Tool to cancel a Stripe subscription immediately. Use when you need to permanently cancel a customer's subscription and prevent future charges." }, { "slug": "STRIPE_DETACH_PAYMENT_FROM_INVOICE", "name": "Detach payment from invoice", "description": "Tool to detach a payment from an invoice. Use when you need to remove a payment from an invoice's list of payments. Only works with paid or canceled PaymentIntents." }, { "slug": "STRIPE_DETACH_PAYMENT_METHOD", "name": "Detach payment method", "description": "Detaches a PaymentMethod object from a Customer account. Use when you need to remove a payment method from a customer without deleting it entirely." }, { "slug": "STRIPE_DISABLE_EVENT_DESTINATION", "name": "Disable Event Destination", "description": "Disables a v2 Event Destination, preventing it from receiving events. Use when you need to stop routing events to a webhook endpoint, Amazon EventBridge, or Azure Event Grid destination. This action is reversible by enabling the destination again." }, { "slug": "STRIPE_DOWNLOAD_QUOTE_PDF", "name": "Download Quote PDF", "description": "Tool to download the PDF for a finalized quote from Stripe. Use when you need to retrieve the PDF document of a quote that has been finalized." }, { "slug": "STRIPE_EXPIRE_BILLING_CREDIT_GRANT", "name": "Expire billing credit grant", "description": "Expires a billing credit grant immediately. Use when you need to terminate a credit grant before its natural expiration date." }, { "slug": "STRIPE_EXPIRE_CHECKOUT_SESSION", "name": "Expire Checkout Session", "description": "Tool to expire an active Stripe Checkout Session. Use when you need to prevent customers from completing an open checkout session." }, { "slug": "STRIPE_FINALIZE_INVOICE", "name": "Finalize an invoice", "description": "Finalize a draft invoice so it becomes open/collectable (and immutable where required). Use when you need to transition an invoice from draft to open status for payment collection." }, { "slug": "STRIPE_FINALIZE_QUOTE", "name": "Finalize quote", "description": "Tool to finalize a quote in Stripe. Use when you need to transition a quote from draft status to open status, making it ready to be sent to the customer for acceptance. The quote must have a customer attached before it can be finalized." }, { "slug": "STRIPE_FIND_APPS_SECRET", "name": "Find a secret by name and scope", "description": "Tool to find a secret by name and scope in the Stripe Apps secret store. Use when you need to retrieve a specific secret's details based on its name and scope." }, { "slug": "STRIPE_FIND_TAX_ASSOCIATION", "name": "Find tax association", "description": "Tool to find a tax association by PaymentIntent ID. Use when you need to retrieve tax calculation and transaction details linked to a specific payment." }, { "slug": "STRIPE_FUND_TEST_CASH_BALANCE", "name": "Fund Test Mode Cash Balance", "description": "Tool to fund a test mode cash balance for a customer. Use when you need to simulate incoming bank transfers in test mode. This endpoint creates a test mode bank transfer that funds a customer's cash balance without processing real money." }, { "slug": "STRIPE_GET_ACCOUNT", "name": "Retrieve Account", "description": "Retrieves detailed information for the authenticated Stripe account. Use when you need to access account capabilities, requirements, settings, or business profile." }, { "slug": "STRIPE_GET_ACCOUNT_CAPABILITIES", "name": "List Account Capabilities", "description": "Retrieves a list of all capabilities for a connected Stripe account. Use when you need to check all available capabilities, their statuses, and requirements for an account." }, { "slug": "STRIPE_GET_ACCOUNT_CAPABILITY", "name": "Retrieve Account Capability", "description": "Retrieves information about a specific capability for a Stripe account. Use when you need to check the status, requirements, or configuration of a capability such as card payments, transfers, or ACH payments." }, { "slug": "STRIPE_GET_ACCOUNT_PERSON", "name": "Retrieve Person from Account", "description": "Retrieves an existing person associated with a Stripe account. Use when you need to check the details, verification status, or requirements of a specific person on an account." }, { "slug": "STRIPE_GET_ACCOUNT_PERSONS", "name": "List all persons for an account", "description": "Retrieves a list of people associated with the account's legal entity. Use when you need to list all persons for an account, with optional filtering by relationship type." }, { "slug": "STRIPE_GET_ACCOUNTS_ACCOUNT", "name": "Retrieve Account", "description": "Retrieves the details of a Stripe account. Use when you need to check account properties like current requirements, live charge capability, payout eligibility, business details, or verification status." }, { "slug": "STRIPE_GET_ACCOUNT_TOKEN", "name": "Retrieve Account Token", "description": "Tool to retrieve a v2 Account Token by its ID. Use when you need to fetch details about a specific account token, including its creation time, expiration, and usage status. Account tokens are single-use tokens which tokenize company/individual/business information." }, { "slug": "STRIPE_GET_ACTIVE_ENTITLEMENT", "name": "Retrieve active entitlement", "description": "Tool to retrieve an active entitlement describing customer access to a feature. Use when you need to check specific entitlement details for a customer." }, { "slug": "STRIPE_GET_APPLE_PAY_DOMAIN", "name": "Retrieve Apple Pay Domain", "description": "Retrieves details about a previously registered Apple Pay domain. Use when you need to fetch information about a specific Apple Pay domain that was registered with Stripe." }, { "slug": "STRIPE_GET_BALANCE_HISTORY", "name": "List Balance Transactions (Deprecated)", "description": "DEPRECATED: Use STRIPE_LIST_BALANCE_TRANSACTIONS instead. Tool to retrieve a list of balance transactions for your Stripe account. Use when you need to view transaction history affecting your balance. Returns all fund movements including charges, refunds, payouts, and fees with filtering options by date, currency, type, or source." }, { "slug": "STRIPE_GET_BALANCE_SETTINGS", "name": "Get balance settings overview", "description": "Tool to retrieve balance settings for a Stripe account. Use when you need to fetch configuration options for customizing account balances and payout settings for a connected account or the authenticated account." }, { "slug": "STRIPE_GET_BALANCE_TRANSACTION", "name": "Retrieve Balance Transaction", "description": "Retrieves the balance transaction with the given ID. Use when you need detailed information about a specific balance transaction including amounts, fees, availability dates, and transaction sources." }, { "slug": "STRIPE_GET_BILLING_ALERT", "name": "Retrieve Billing Alert", "description": "Retrieves a billing alert by its unique identifier. Use when you need to fetch details of a specific billing alert that notifies when a certain usage threshold on a meter is crossed." }, { "slug": "STRIPE_GET_BILLING_CREDIT_BALANCE_SUMMARY", "name": "Get Billing Credit Balance Summary", "description": "Retrieves the credit balance summary for a customer in Stripe Billing. This action returns the available and ledger balances for billing credits granted to a customer. You can filter by a specific credit grant, price type (metered), specific prices, or billable items. The balance summary includes one entry per currency used in the credit grants. Use Cases: - Check remaining billing credits for a customer - View credit balances for specific metered prices or products - Monitor available vs. ledger balance for billing credits - Track credit usage across different currencies" }, { "slug": "STRIPE_GET_BILLING_CREDIT_BALANCE_TRANSACTIONS_ID", "name": "Retrieve credit balance transaction", "description": "Retrieves a credit balance transaction by its unique identifier. Use when you need to get details about a specific credit or debit transaction against a credit grant." }, { "slug": "STRIPE_GET_BILLING_CREDIT_GRANTS", "name": "List billing credit grants", "description": "Tool to retrieve a paginated list of billing credit grants. Use when you need to view credit allocations for customers, track promotional credits, or manage billing credits." }, { "slug": "STRIPE_GET_BILLING_CREDIT_GRANTS_ID", "name": "Retrieve billing credit grant", "description": "Retrieves a billing credit grant by its unique identifier. Use when you need to get details about a specific credit grant allocation for a customer." }, { "slug": "STRIPE_GET_BILLING_METERS", "name": "List billing meters", "description": "Tool to retrieve a list of billing meters from Stripe. Use when you need to list meters with optional filtering by status and pagination support." }, { "slug": "STRIPE_GET_BILLING_METERS_ID", "name": "Retrieve Billing Meter", "description": "Retrieves a billing meter by its unique identifier. Use when you need to fetch configuration details and settings for a specific billing meter." }, { "slug": "STRIPE_GET_BILLING_PORTAL_CONFIGURATIONS", "name": "List portal configurations", "description": "Tool to list billing portal configurations. Use when you need to retrieve portal configurations that describe the functionality and settings of the customer portal." }, { "slug": "STRIPE_GET_BILLING_PORTAL_CONFIGURATIONS_CONFIGURATION", "name": "Get billing portal configuration", "description": "Tool to retrieve a billing portal configuration from Stripe. Use when you need to fetch details about a specific portal configuration including branding, features, and settings." }, { "slug": "STRIPE_GET_CHARGES_CHARGE_DISPUTE", "name": "Retrieve Charge Dispute", "description": "Tool to retrieve a dispute for a specified charge. Use when you need to get dispute details associated with a specific charge ID." }, { "slug": "STRIPE_GET_CHARGES_CHARGE_REFUNDS_REFUND", "name": "Get Charge Refund Details", "description": "Tool to retrieve the details of an existing refund within a specific charge. Use when you need to get refund information using both the charge ID and refund ID." }, { "slug": "STRIPE_GET_CHECKOUT_SESSIONS_SESSION_LINE_ITEMS", "name": "Get Checkout Session Line Items", "description": "Tool to retrieve line items for a Checkout Session. Use when you need to view the items, pricing, quantities, and totals for a specific checkout session." }, { "slug": "STRIPE_GET_CLIMATE_PRODUCTS_PRODUCT", "name": "Retrieve climate product", "description": "Tool to retrieve details of a specific Stripe Climate product. Use when you need to get information about a particular carbon removal product including pricing and supplier details." }, { "slug": "STRIPE_GET_CLIMATE_SUPPLIERS_SUPPLIER", "name": "Retrieve climate supplier details", "description": "Retrieves detailed information about a specific Stripe Climate carbon removal supplier. Returns supplier details including name, carbon removal pathway (biomass, direct air capture, or enhanced weathering), operational locations with geographic coordinates, and additional information URL. Use this to get comprehensive details about a specific supplier after obtaining supplier IDs from the list suppliers endpoint. Note: Requires Stripe Climate access. If you receive an error about submitting an account application, the Stripe account needs to apply for Climate feature access." }, { "slug": "STRIPE_GET_CONFIRMATION_TOKENS_CONFIRMATION_TOKEN", "name": "Retrieve Confirmation Token", "description": "Tool to retrieve an existing ConfirmationToken object by its ID. Use when you need to access payment method details and customer information that were securely passed during the payment confirmation flow." }, { "slug": "STRIPE_GET_COUNTRY_SPECS_COUNTRY", "name": "Retrieve Country Spec", "description": "Retrieves configuration details for a specific country, including supported payment methods, required verification fields, and supported currencies. Use when you need country-specific payment capabilities." }, { "slug": "STRIPE_GET_COUPON", "name": "Retrieve Coupon Details", "description": "Retrieves full details for an existing Stripe coupon using its unique ID. Use when you need to check coupon validity, discount details, or redemption limits." }, { "slug": "STRIPE_GET_CREDIT_NOTES_CREDIT_NOTE_LINES", "name": "Get Credit Note Lines", "description": "Retrieves the paginated list of line items for a specific credit note. Use when you need complete details of all line items associated with a credit note." }, { "slug": "STRIPE_GET_CREDIT_NOTES_ID", "name": "Retrieve a credit note", "description": "Retrieves a credit note by its unique identifier. Use when you need to get detailed information about a specific credit note." }, { "slug": "STRIPE_GET_CREDIT_NOTES_PREVIEW", "name": "Preview Credit Note", "description": "Tool to preview a credit note without creating it in Stripe. Use when you need to see what a credit note will contain before issuing it." }, { "slug": "STRIPE_GET_CREDIT_NOTES_PREVIEW_LINES", "name": "Get Credit Note Preview Lines", "description": "Tool to retrieve a credit note preview's line items from Stripe. Use when you need to see what line items would be included in a credit note before creating it." }, { "slug": "STRIPE_GET_CUSTOMERS_CASH_BALANCE_TRANSACTIONS", "name": "Retrieve customer cash balance transaction", "description": "Tool to retrieve a specific cash balance transaction that updated a customer's cash balance. Use when you need to get details about a particular cash balance transaction for a customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_BALANCE_TRANSACTIONS", "name": "List customer balance transactions", "description": "Tool to list customer balance transactions that updated a customer's balance. Use when you need to retrieve the history of balance changes for a specific customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_BALANCE_TXNS_TXN", "name": "Retrieve Customer Balance Transaction", "description": "Retrieves a specific customer balance transaction that updated the customer's balances. Use this when you need to fetch details about a particular balance transaction for a customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_BANK_ACCOUNTS", "name": "List customer bank accounts", "description": "Tool to fetch all bank accounts linked to a customer. Use when you need to retrieve payment source information for a specific customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_BANK_ACCOUNTS_ID", "name": "Retrieve customer bank account", "description": "Retrieves details about a specific bank account stored on a Stripe customer. Use when you need to view bank account information for a customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_CARDS", "name": "List all cards", "description": "Tool to list all cards for a customer. Use when you need to retrieve payment card information for a specific customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_CARDS_ID", "name": "Retrieve customer card", "description": "Retrieves details about a specific card for a customer. Use when you need to view card information stored on a customer account." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_CASH_BALANCE", "name": "Get customer cash balance", "description": "Tool to retrieve a customer's cash balance. Use when you need to check the current cash balance for a specific Stripe customer, including available funds by currency." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_CASH_BALANCE_TRANSACTIONS", "name": "List cash balance transactions", "description": "Tool to retrieve a list of cash balance transactions for a customer. Use when you need to view the history of cash balance changes for a specific Stripe customer, including funds added and payments applied." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_DISCOUNT", "name": "Get customer discount", "description": "Tool to retrieve the discount currently active on a customer. Use when you need to check a customer's active discount details." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_PAYMENT_METHODS", "name": "List customer payment methods", "description": "Retrieves a list of payment methods for a given customer, supporting type filtering and pagination." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_PAYMENT_METHODS_PAYMENT_METHOD", "name": "Retrieve customer's payment method", "description": "Tool to retrieve a specific PaymentMethod object for a given Customer. Use when you need to get detailed information about a particular payment method associated with a customer." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_SOURCES", "name": "List customer sources", "description": "Tool to list sources for a specified customer. Use when you need to retrieve payment sources (cards) stored on a customer account." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_SOURCES_ID", "name": "Retrieve customer source", "description": "Tool to retrieve a specified payment source for a given customer. Use when you need to get details about a specific card, bank account, or payment source attached to a customer. Note: The Sources API is deprecated; consider using PaymentMethods API for new integrations." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_SUBSCRIPTIONS", "name": "List customer subscriptions", "description": "DEPRECATED: Use STRIPE_LIST_SUBSCRIPTIONS instead. List subscriptions for a specific Stripe customer. By default returns subscriptions that have not been canceled. Use the 'status' parameter to filter by subscription status (e.g., 'active', 'all', 'canceled', 'trialing'). Returns paginated results with subscription details including items, pricing, billing cycles, and payment settings." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_SUBS_SUB_EXPOSED_ID", "name": "Retrieve customer subscription", "description": "Tool to retrieve a specific subscription for a customer. Use when you need to get detailed information about a customer's subscription using both customer ID and subscription ID." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_SUBS_SUB_EXPOSED_ID_DISCOUNT", "name": "Get customer subscription discount", "description": "Tool to retrieve the discount currently applied to a customer's subscription. Use when you need to check if a subscription has an active discount and get details about the coupon or promotion code." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_TAX_IDS", "name": "List customer tax IDs", "description": "Tool to retrieve all tax IDs for a specific Stripe customer. Use when you need to list tax identification numbers (VAT, GST, etc.) associated with a customer account." }, { "slug": "STRIPE_GET_CUSTOMERS_CUSTOMER_TAX_IDS_ID", "name": "Retrieve a customer tax ID", "description": "Tool to retrieve a specific tax ID for a customer. Use when you need to fetch details about a customer's tax identification number." }, { "slug": "STRIPE_GET_ENTITLEMENTS_ACTIVE_ENTITLEMENTS", "name": "List active entitlements", "description": "Tool to retrieve active entitlements for a customer. Use when you need to check which features a customer currently has access to." }, { "slug": "STRIPE_GET_ENTITLEMENTS_FEATURES_ID", "name": "Retrieve entitlements feature", "description": "Tool to retrieve a feature by ID from Stripe. Use when you need to get details about a specific entitlements feature." }, { "slug": "STRIPE_GET_EVENTS", "name": "List events", "description": "Retrieves a list of Stripe events from the past 30 days with filtering and pagination. Use to track API activity and monitor webhook deliveries." }, { "slug": "STRIPE_GET_EVENTS_ID", "name": "Retrieve event", "description": "Retrieves event details for events created within the last 30 days. Use when you need to fetch webhook event information or verify event data." }, { "slug": "STRIPE_GET_FILE_LINKS_LINK", "name": "Retrieve file link", "description": "Retrieves the details of an existing file link. Use when you need to access file link information or verify if a link is still valid." }, { "slug": "STRIPE_GET_FILES_FILE", "name": "Retrieve File", "description": "Tool to retrieve details of an existing file object by its unique identifier. Use when you need to get information about a previously uploaded file." }, { "slug": "STRIPE_GET_FINANCIAL_CONNECTIONS_SESSIONS_SESSION", "name": "Retrieve Financial Connections Session", "description": "Retrieves the details of a Financial Connections Session. Use when you need to check the status or details of a session." }, { "slug": "STRIPE_GET_FX_QUOTE", "name": "Retrieve FX Quote", "description": "Retrieve a specific FX (foreign exchange) Quote by its ID. FX Quotes provide exchange rates between currencies that can be locked for a period (5 minutes to 24 hours) to protect against rate fluctuations. Use this to view exchange rate details, lock status, and rate breakdowns including base rates, FX fees, and duration premiums." }, { "slug": "STRIPE_GET_INVOICEITEMS_INVOICEITEM", "name": "Retrieve Invoice Item", "description": "Tool to retrieve the details of an invoice item using its unique identifier. Use when you need to fetch information about a specific invoice item." }, { "slug": "STRIPE_GET_INVOICE_PAYMENTS_ID", "name": "Retrieve an invoice payment", "description": "Tool to retrieve details of a specific Stripe invoice payment by ID. Use when you need to get information about an existing invoice payment." }, { "slug": "STRIPE_GET_INVOICES_INVOICE", "name": "Retrieve Invoice", "description": "Tool to retrieve a specific invoice by ID. Use when you need to get detailed information about an existing invoice." }, { "slug": "STRIPE_GET_INVOICES_INVOICE_LINES", "name": "Get Invoice Line Items", "description": "Tool to retrieve a paginated list of line items for a specific invoice. Use when you need to see the individual charges, products, or services included in an invoice." }, { "slug": "STRIPE_GET_LINKED_ACCOUNT", "name": "Retrieve Linked Account", "description": "Retrieves the details of a Linked Account object by its unique identifier. A Financial Connections Account represents an account that exists outside of Stripe, to which you have been granted some degree of access. Use this action when you need to view the configuration, balance, ownership, and other details of an existing Financial Connections account linked through Stripe." }, { "slug": "STRIPE_GET_MANDATE", "name": "Retrieve mandate", "description": "Tool to retrieve a Stripe mandate by ID. Use when you need to get authorization details for recurring or single-use payments." }, { "slug": "STRIPE_GET_PAYMENT_ATTEMPT_RECORDS_ID", "name": "Retrieve Payment Attempt Record", "description": "Tool to retrieve a specific Payment Attempt Record by ID. Use when you need to get detailed information about a particular payment attempt." }, { "slug": "STRIPE_GET_PAYMENT_INTENT_AMOUNT_DETAILS_LINE_ITEMS", "name": "Get payment intent amount details line items", "description": "Tool to retrieve paginated line items for a PaymentIntent. Use when you need to get detailed product and service information including quantities, prices, discounts, and taxes for a specific payment intent." }, { "slug": "STRIPE_GET_PAYMENT_LINK", "name": "Retrieve payment link", "description": "Tool to retrieve details of an existing Stripe payment link by ID. Use when you need to get information about a specific payment link." }, { "slug": "STRIPE_GET_PAYMENT_LINKS_PAYMENT_LINK_LINE_ITEMS", "name": "Get payment link line items", "description": "Tool to retrieve paginated line items for a payment link. Use when you need to get detailed product and service information including quantities, prices, discounts, and taxes for a specific payment link." }, { "slug": "STRIPE_GET_PAYMENT_METHOD", "name": "Retrieve payment method", "description": "Retrieves the details of a PaymentMethod object by its unique identifier. Returns information including the payment method type (card, us_bank_account, sepa_debit, etc.), billing details, and type-specific payment information. Use this when you need to view the configuration and details of an existing payment method." }, { "slug": "STRIPE_GET_PAYMENT_METHOD_CONFIGURATION", "name": "Retrieve payment method configuration", "description": "Tool to retrieve a specific payment method configuration by its unique identifier. Use when you need to inspect the settings and availability of payment methods for a given configuration." }, { "slug": "STRIPE_GET_PAYMENT_METHOD_DOMAIN", "name": "Retrieve Payment Method Domain", "description": "Retrieves details of an existing payment method domain. Use when you need to fetch information about a specific payment method domain registered with Stripe." }, { "slug": "STRIPE_GET_PAYMENT_RECORD", "name": "Retrieve Payment Record", "description": "Tool to retrieve a Payment Record from Stripe. Use when you need to access details about payments that occur on- or off-Stripe, including payment attempts and status information." }, { "slug": "STRIPE_GET_PAYOUT", "name": "Retrieve a payout", "description": "Tool to retrieve details of an existing Stripe payout. Use when you need to get information about a specific payout by its ID." }, { "slug": "STRIPE_GET_PLAN", "name": "Retrieve plan", "description": "Tool to retrieve a specific Stripe plan by its unique identifier. Use when you need to view plan details including pricing, billing frequency, and configuration." }, { "slug": "STRIPE_GET_PRICES_PRICE", "name": "Retrieve a price", "description": "Retrieves detailed information for a specific Stripe price using its unique ID. Use when you need to fetch price details." }, { "slug": "STRIPE_GET_PRODUCTS_ID", "name": "Retrieve a product", "description": "Retrieves detailed information for an existing Stripe product using its unique product ID. Use when you need to fetch details about a specific product." }, { "slug": "STRIPE_GET_PRODUCTS_PRODUCT_FEATURES_ID", "name": "Retrieve product feature", "description": "Retrieves a specific product feature by its ID. Use when you need to get details about a particular feature attached to a product." }, { "slug": "STRIPE_GET_PROMOTION_CODES", "name": "List Stripe promotion codes", "description": "Retrieves a list of promotion codes from a Stripe account with optional filters for active status, code value, coupon association, and customer restrictions. Supports cursor-based pagination." }, { "slug": "STRIPE_GET_QUOTES_QUOTE", "name": "Get quote details", "description": "Tool to retrieve a quote by ID. Use when you need to get detailed information about a specific Stripe quote, including line items, pricing, and status." }, { "slug": "STRIPE_GET_QUOTES_QUOTE_COMPUTED_UPFRONT_LINE_ITEMS", "name": "Get Quote Computed Upfront Line Items", "description": "Tool to retrieve computed upfront line items for a quote. Use when you need the full paginated list of upfront line items with detailed pricing information including amounts, taxes, and discounts." }, { "slug": "STRIPE_GET_QUOTES_QUOTE_LINE_ITEMS", "name": "Get Quote Line Items", "description": "Tool to retrieve a paginated list of line items for a quote. Use when you need to get details about the items included in a specific Stripe quote." }, { "slug": "STRIPE_GET_RADAR_VALUE_LIST", "name": "Get Radar Value List", "description": "Retrieves a specific Stripe Radar value list by its identifier. Use when you need to fetch detailed information about a value list used in Radar rules." }, { "slug": "STRIPE_GET_RADAR_VALUE_LIST_ITEMS", "name": "List Radar value list items", "description": "Tool to list all value list items from a Stripe Radar value list. Use when you need to retrieve items from a specific value list for fraud detection rules. Returns items sorted by creation date in descending order with pagination support." }, { "slug": "STRIPE_GET_REFUNDS_REFUND", "name": "Retrieve a refund", "description": "Tool to retrieve details of a specific Stripe refund by ID. Use when you need to get information about an existing refund." }, { "slug": "STRIPE_GET_REPORTING_REPORT_RUNS_REPORT_RUN", "name": "Retrieve a Report Run", "description": "Retrieves details of an existing Report Run object. Use when you need to check the status or retrieve results of a report run." }, { "slug": "STRIPE_GET_REPORTING_REPORT_TYPE", "name": "Retrieve a report type", "description": "Tool to retrieve details of a specific Stripe report type by ID. Use when you need to get information about a specific reporting report type." }, { "slug": "STRIPE_GET_SETUP_ATTEMPTS", "name": "List setup attempts", "description": "Tool to list SetupAttempts associated with a SetupIntent. Use when you need to retrieve all setup attempts for a specific SetupIntent to understand the payment method setup process and any errors that occurred." }, { "slug": "STRIPE_GET_SETUP_INTENT", "name": "Retrieve setup intent", "description": "Retrieves details of a SetupIntent by its ID; `client_secret` is required if a publishable API key is used." }, { "slug": "STRIPE_GET_SHIPPING_RATE", "name": "Retrieve Shipping Rate", "description": "Tool to retrieve details of a specific Stripe shipping rate by its unique ID. Use when you need to fetch information about a particular shipping rate." }, { "slug": "STRIPE_GET_SOURCES_SOURCE", "name": "Retrieve source", "description": "Retrieves an existing source object. DEPRECATED: The Stripe Sources API has been deprecated. This action can only retrieve existing sources created before the API deprecation. For new integrations, use the Payment Methods API instead. Use this action when you need to fetch up-to-date information about a specific source that was previously created (e.g., to check its status, view owner information, or access transaction details)." }, { "slug": "STRIPE_GET_SUBSCRIPTION", "name": "Retrieve subscription", "description": "Retrieves detailed information for an existing Stripe subscription using its unique ID." }, { "slug": "STRIPE_GET_SUBSCRIPTION_ITEM", "name": "Retrieve subscription item", "description": "Retrieves detailed information for a specific subscription item using its unique ID. Use when you need to fetch subscription item details, pricing, or billing information." }, { "slug": "STRIPE_GET_SUBSCRIPTION_SCHEDULES_SCHEDULE", "name": "Retrieve subscription schedule", "description": "Retrieve a subscription schedule using its unique identifier. Use when you need to view details of an existing schedule including phases, settings, and status." }, { "slug": "STRIPE_GET_TAX_CALCULATION", "name": "Retrieve Tax Calculation", "description": "Retrieves a Tax Calculation object by its unique ID. Use when you need to access tax calculation details." }, { "slug": "STRIPE_GET_TAX_CALCULATIONS_CALCULATION_LINE_ITEMS", "name": "Get Tax Calculation Line Items", "description": "Retrieves line items of a tax calculation as a paginated collection. Use this to see detailed tax information for each item in the calculation, including amounts, tax breakdowns, and tax rates." }, { "slug": "STRIPE_GET_TAX_CODE", "name": "Retrieve tax code", "description": "Retrieves the details of an existing tax code. Use when you need to get information about a specific tax code by its ID." }, { "slug": "STRIPE_GET_TAX_ID", "name": "Retrieve tax ID", "description": "Retrieves an account or customer tax ID object. Use when you need to get details about a specific tax identification number stored in Stripe." }, { "slug": "STRIPE_GET_TAX_RATE", "name": "Retrieve a tax rate", "description": "Tool to retrieve the details of an existing tax rate. Use when you need to fetch information about a specific tax rate by its ID." }, { "slug": "STRIPE_GET_TAX_REGISTRATION", "name": "Retrieve tax registration", "description": "Tool to retrieve a specific tax registration configured for your Stripe account. Use when you need to get details about where and how taxes are collected across different jurisdictions." }, { "slug": "STRIPE_GET_TAX_SETTINGS", "name": "Get Tax Settings", "description": "Retrieves Tax Settings for a merchant. Use when you need to fetch the tax configuration for a Stripe account." }, { "slug": "STRIPE_GET_TAX_TRANSACTION", "name": "Retrieve Tax Transaction", "description": "Retrieves a Tax Transaction object by ID. Use when you need to fetch details about a specific tax transaction." }, { "slug": "STRIPE_GET_TAX_TRANSACTIONS_TRANSACTION_LINE_ITEMS", "name": "Get tax transaction line items", "description": "Retrieves the line items of a committed standalone tax transaction. Use when you need to view detailed line-by-line breakdown of a tax transaction." }, { "slug": "STRIPE_GET_TERMINAL_CONFIGURATION", "name": "Retrieve terminal configuration", "description": "Tool to retrieve a specific Terminal Configuration object from Stripe. Use when you need to view the detailed settings for a specific terminal configuration by its ID." }, { "slug": "STRIPE_GET_TERMINAL_LOCATION", "name": "Retrieve Terminal Location", "description": "Tool to retrieve a Terminal Location object by ID. Use when you need to get details about a specific terminal location for managing card readers." }, { "slug": "STRIPE_GET_TERMINAL_READER", "name": "Retrieve Terminal Reader", "description": "Tool to retrieve a Terminal Reader object by ID. Use when you need to get details about a specific reader device for accepting payment details in Stripe Terminal." }, { "slug": "STRIPE_GET_TEST_CLOCK", "name": "Retrieve test clock", "description": "Tool to retrieve a test clock by ID. Use when testing billing integrations by simulating time advancement in sandbox environments." }, { "slug": "STRIPE_GET_TOKEN", "name": "Retrieve Token", "description": "Retrieves the token with the given ID. Use when you need to verify token details or check if a token has been used." }, { "slug": "STRIPE_GET_TRANSFER_REVERSAL", "name": "Retrieve transfer reversal", "description": "Retrieves a transfer reversal by its ID and the associated transfer ID. Use when you need to check the status, amount, or details of a specific reversal for a Stripe transfer." }, { "slug": "STRIPE_GET_UPCOMING_INVOICE_LINE_ITEMS", "name": "Retrieve Upcoming Invoice Line Items", "description": "Tool to retrieve a paginated list of line items for an upcoming invoice preview. Use when you need to see detailed line items before an invoice is finalized." }, { "slug": "STRIPE_GET_V1_CUSTOMERS_SEARCH_CUSTOMERS", "name": "Search Stripe customers", "description": "Tool to search for Stripe customers using Stripe's Search Query Language. Use when you need to find customers by email, metadata, creation date, or other customer attributes." }, { "slug": "STRIPE_GET_V1_DISPUTES_DISPUTES", "name": "Retrieve Dispute Details", "description": "Retrieves detailed information for an existing Stripe dispute by ID. Use when you need to get complete dispute details including evidence, status, and payment information." }, { "slug": "STRIPE_GET_V1_INVOICE_PAYMENTS_OVERVIEW2", "name": "List Invoice Payments", "description": "Tool to list invoice payments in Stripe with pagination and filtering options. Use when you need to retrieve payment records associated with invoices." }, { "slug": "STRIPE_GET_V1_PAYMENT_METHOD_CONFIGS_LIST_PAYMENT_METHOD2", "name": "List payment method configurations", "description": "Tool to list all payment method configurations in a Stripe account. Use when you need to retrieve available payment method settings with optional pagination and filtering." }, { "slug": "STRIPE_GET_V1_PAYMENT_METHOD_DOMAINS", "name": "List payment method domains", "description": "Tool to retrieve list of payment method domains registered with Stripe account. Use when you need to list all payment method domain objects with optional filtering by domain name and enabled status." }, { "slug": "STRIPE_GET_V1_PAYMENT_METHODS_PAYMENT_METHODS2", "name": "List payment methods", "description": "Tool to retrieve a list of PaymentMethods with filtering and pagination support. Use when you need to list payment methods, optionally filtering by customer, type, or redisplay settings." }, { "slug": "STRIPE_GET_V1_RADAR_EARLY_FRAUD_WARNINGS_OVERVIEW", "name": "List Radar Early Fraud Warnings", "description": "Returns a list of early fraud warnings. An early fraud warning indicates that the card issuer has notified Stripe that a charge may be fraudulent. Use when you need to review potentially fraudulent charges to decide whether to refund them proactively." }, { "slug": "STRIPE_GET_V1_RADAR_VALUE_LISTS_OVERVIEW_RADAR_VALUE_LISTS", "name": "Get Radar value lists overview", "description": "Tool to retrieve an overview of Radar value lists. Use when you need to get a list of value lists used in Stripe Radar for fraud prevention." }, { "slug": "STRIPE_GET_V1_REPORTING_REPORT_TYPES_OVERVIEW_REPORTING", "name": "Get reporting report types overview", "description": "Tool to list all available Stripe report types. Use when you need to discover what reporting types are available for generating reports." }, { "slug": "STRIPE_GET_V1_SHIPPING_RATES_OVERVIEW2", "name": "Get Shipping Rates Overview", "description": "Tool to retrieve an overview of shipping rates from Stripe. Use when you need a quick summary of recent shipping rates with default limit of 3." }, { "slug": "STRIPE_GET_V1_SUBSCRIPTION_SCHEDULES_OVERVIEW2", "name": "List subscription schedules", "description": "Retrieves a list of subscription schedules with optional filtering and pagination capabilities. Use to view scheduled subscription changes for customers." }, { "slug": "STRIPE_GET_V1_TAX_CODES_TAX_CODE2", "name": "Get tax codes", "description": "Tool to retrieve all tax codes available to add to Products for specific tax calculations. Use when you need to list available Stripe tax codes for product classification." }, { "slug": "STRIPE_GET_V1_TAX_IDS_OVERVIEW2", "name": "List tax IDs", "description": "Tool to retrieve a list of tax IDs with pagination support. Use when you need to list tax IDs for accounts or customers in Stripe." }, { "slug": "STRIPE_GET_V1_TAX_RATES_TAX_RATE2", "name": "Get tax rates", "description": "Tool to retrieve all tax rates with pagination support. Use when you need to list Stripe tax rates with optional filters for active status, inclusive/exclusive type, and creation date." }, { "slug": "STRIPE_GET_V2_CORE_EVENTS_RETRIEVE_AN_EVENT", "name": "Retrieve V2 Core Event", "description": "Retrieves detailed information about a specific event from Stripe V2 Core Events API. Use when you need to fetch event details including metadata and related objects." }, { "slug": "STRIPE_LIST_ALL_SUBSCRIPTION_ITEM_PERIOD_SUMMARIES", "name": "List subscription item period summaries", "description": "Tool to list all subscription item period summaries. Use when you need to retrieve usage information for a specific subscription item over billing periods. Returns summaries sorted in reverse-chronological order (newest first), with the first item representing the most current usage period." }, { "slug": "STRIPE_LIST_APPLE_PAY_DOMAINS", "name": "List Apple Pay domains", "description": "Retrieves a list of Apple Pay domains registered with Stripe. Use when you need to fetch all registered Apple Pay domains with pagination support." }, { "slug": "STRIPE_LIST_APPLICATION_FEES", "name": "List Application Fees", "description": "Returns a list of application fees you've previously collected, sorted by creation date descending (newest first). Use when you need to retrieve application fees with optional filtering by charge and pagination support." }, { "slug": "STRIPE_LIST_APPS_SECRETS", "name": "List apps secrets", "description": "Tool to list all secrets stored on the given scope. Use when you need to retrieve secrets from the Secret Store API for Stripe Apps." }, { "slug": "STRIPE_LIST_BALANCE_TRANSACTIONS", "name": "List Balance Transactions", "description": "Lists all balance transactions for the connected Stripe account. Use this action when you need to retrieve the transaction history of funds moving through your Stripe account. Balance transactions are created for every type of transaction that enters or leaves your Stripe account balance. Supports filtering by date range, currency, type, payout, or source, as well as cursor-based pagination." }, { "slug": "STRIPE_LIST_BILLING_ALERTS", "name": "List billing alerts", "description": "Tool to retrieve a paginated list of billing alerts. Use when you need to view billing alerts that notify when usage thresholds on meters are crossed." }, { "slug": "STRIPE_LIST_BILLING_CREDIT_BALANCE_TRANSACTIONS", "name": "List credit balance transactions", "description": "Tool to retrieve a paginated list of credit balance transactions with optional filtering. Use when you need to view credit and debit transactions for customer credit grants or track billing credit activity." }, { "slug": "STRIPE_LIST_CHARGE_REFUNDS", "name": "List Charge Refunds", "description": "Lists all refunds for a specific charge in Stripe. Use this action when you need to retrieve all refunds associated with a particular charge ID. This is useful for tracking refund history for a specific payment, monitoring chargebacks, and auditing financial transactions. The refunds are returned in descending order by creation time." }, { "slug": "STRIPE_LIST_CHARGES", "name": "List Charges", "description": "Retrieves a list of Stripe charges with filtering and pagination; use valid cursor IDs from previous responses for pagination, and note that charges are typically returned in reverse chronological order." }, { "slug": "STRIPE_LIST_CHECKOUT_SESSIONS", "name": "List Checkout Sessions", "description": "Tool to retrieve a list of Stripe Checkout Sessions with pagination support. Use when you need to list checkout sessions, optionally filtering by customer, status, payment intent, or other criteria." }, { "slug": "STRIPE_LIST_CLIMATE_ORDERS", "name": "List Climate Orders", "description": "Tool to list all Climate order objects. Use when you need to retrieve carbon removal orders sorted by creation date with most recent first." }, { "slug": "STRIPE_LIST_CLIMATE_PRODUCTS", "name": "List climate products", "description": "Tool to retrieve a list of available Stripe Climate products. Use when you need to see carbon removal offerings with pricing and supplier information." }, { "slug": "STRIPE_LIST_CLIMATE_SUPPLIERS", "name": "List climate suppliers", "description": "Tool to retrieve a list of available Stripe Climate supplier objects for carbon removal. Use when you need to see carbon removal providers including biomass carbon removal, direct air capture, and enhanced weathering." }, { "slug": "STRIPE_LIST_COUNTRY_SPECS", "name": "List country specs", "description": "Retrieves a list of country specifications available in the Stripe API. Use when you need details about supported currencies, payment methods, and verification requirements for specific countries." }, { "slug": "STRIPE_LIST_COUPONS", "name": "List Stripe coupons", "description": "Retrieves a list of discount coupons from a Stripe account, supporting pagination via `limit`, `starting_after`, and `ending_before`." }, { "slug": "STRIPE_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Lists Stripe credit notes with optional filtering by customer, invoice, or customer account, and pagination support." }, { "slug": "STRIPE_LIST_CUSTOMERS", "name": "List customers", "description": "Retrieves a list of Stripe customers, with options to filter by email, creation date, or test clock, and support for pagination." }, { "slug": "STRIPE_LIST_CUSTOMER_SUBSCRIPTIONS", "name": "List customer subscriptions", "description": "Tool to list all active subscriptions for a customer in Stripe. Use when you need to retrieve all subscriptions associated with a specific customer ID. Supports pagination via starting_after and ending_before cursors." }, { "slug": "STRIPE_LIST_DISPUTES", "name": "List Disputes", "description": "Tool to list all disputes from a Stripe account. Use when you need to retrieve disputes with optional filtering by charge or payment intent." }, { "slug": "STRIPE_LIST_ENTITLEMENTS_FEATURES", "name": "List entitlements features", "description": "Retrieves a paginated list of entitlements features from Stripe. Use when you need to list monetizable abilities or functionalities in your system that can be assigned to products." }, { "slug": "STRIPE_LIST_FILE_LINKS", "name": "List file links", "description": "Tool to retrieve a list of Stripe file links. Use when you need to list file links with optional filters for creation date, expiration status, and associated file." }, { "slug": "STRIPE_LIST_FILES", "name": "List files", "description": "Tool to retrieve a list of files that your account has access to. Use when you need to list files uploaded to Stripe, with optional filtering by purpose or creation date." }, { "slug": "STRIPE_LIST_FINANCIAL_CONNECTIONS_ACCOUNTS", "name": "List Financial Connections Accounts", "description": "Tool to list Financial Connections Account objects representing external financial accounts. Use when you need to retrieve accounts linked through Financial Connections." }, { "slug": "STRIPE_LIST_FORWARDING_REQUESTS", "name": "List forwarding requests", "description": "Lists ForwardingRequest objects from Stripe's Vault and Forward API. ForwardingRequests are records of requests Stripe made to third-party endpoints on your behalf, with payment card details securely inserted. Use this to retrieve and audit forwarding requests, with optional filtering by creation timestamp and pagination support. Note: This API requires special account authorization. Contact Stripe support if you need access." }, { "slug": "STRIPE_LIST_FX_QUOTES", "name": "List FX quotes", "description": "Retrieves a list of FX quotes that have been issued, with the most recent appearing first. Use for locking exchange rates for payments or transfers." }, { "slug": "STRIPE_LIST_INVOICEITEMS", "name": "List Invoice Items", "description": "Retrieves a paginated list of Stripe invoice items. Use to filter by customer, invoice, creation date, or attachment status with cursor-based pagination." }, { "slug": "STRIPE_LIST_INVOICE_PAYMENTS", "name": "List Invoice Payments", "description": "Tool to list all payments for invoices in Stripe. Use when you need to retrieve payment information associated with invoices, including pagination and filtering by invoice ID, status, or creation date." }, { "slug": "STRIPE_LIST_INVOICE_RENDERING_TEMPLATES", "name": "List Invoice Rendering Templates", "description": "Tool to list all invoice rendering templates ordered by creation date. Use when you need to retrieve available invoice rendering templates." }, { "slug": "STRIPE_LIST_INVOICES", "name": "List Invoices", "description": "Retrieves a list of Stripe invoices, filterable by various criteria and paginatable using invoice ID cursors obtained from previous responses." }, { "slug": "STRIPE_LIST_METER_EVENT_SUMMARIES", "name": "List meter event summaries", "description": "Tool to retrieve billing meter event summaries for a customer within a time range. Use when you need aggregated meter event data for billing analysis." }, { "slug": "STRIPE_LIST_PAYMENT_ATTEMPT_RECORDS", "name": "List Payment Attempt Records", "description": "Tool to list payment attempt records for a specified payment record. Use when you need to retrieve all attempts made to process a specific payment." }, { "slug": "STRIPE_LIST_PAYMENT_INTENTS", "name": "List payment intents", "description": "Tool to list PaymentIntents from Stripe. Use when you need to retrieve a list of payment intents with optional filtering by customer, creation date, or pagination parameters." }, { "slug": "STRIPE_LIST_PAYMENT_LINKS", "name": "List payment links", "description": "Retrieves a list of payment links from Stripe, sorted by creation date in descending order by default." }, { "slug": "STRIPE_LIST_PAYOUTS", "name": "List Payouts", "description": "Lists Stripe payouts sent to external accounts or received from Stripe, sorted by creation date descending (newest first), with optional filtering by arrival date, creation date, destination, and status." }, { "slug": "STRIPE_LIST_PLANS", "name": "List plans", "description": "Tool to list all billing plans from Stripe account. Use when you need to retrieve plans for subscription management or display available pricing options." }, { "slug": "STRIPE_LIST_PRICES", "name": "List prices", "description": "Tool to list Stripe prices. Use when you need to retrieve and filter price objects before processing write operations." }, { "slug": "STRIPE_LIST_PRODUCTS", "name": "List products", "description": "Retrieves a list of Stripe products, with optional filtering and pagination; `starting_after`/`ending_before` cursors must be valid product IDs from a previous response." }, { "slug": "STRIPE_LIST_PRODUCTS_PRODUCT_FEATURES", "name": "List product features", "description": "Retrieves a list of features attached to a product. Returns a paginated list of product_feature objects representing attachments between features and products." }, { "slug": "STRIPE_LIST_PROMOTION_CODES", "name": "List Stripe promotion codes", "description": "Tool to retrieve a list of promotion codes from Stripe. Use when you need to view, filter, or paginate through promotion codes with optional filters for active status, code, coupon, customer, or creation date." }, { "slug": "STRIPE_LIST_QUOTES", "name": "List Quotes", "description": "Retrieves a list of Stripe quotes with pagination support. Use to fetch quotes by customer, status, or creation date." }, { "slug": "STRIPE_LIST_RADAR_EARLY_FRAUD_WARNINGS", "name": "Get Radar Early Fraud Warnings", "description": "Tool to list all early fraud warnings from Stripe Radar. Use when you need to retrieve fraud warnings for charges, optionally filtered by charge ID or payment intent ID." }, { "slug": "STRIPE_LIST_RADAR_REVIEWS", "name": "List Radar Reviews", "description": "Returns a list of Radar Review objects that have open set to true, sorted in descending order by creation date. Use when you need to retrieve reviews that require action with optional filtering and pagination support." }, { "slug": "STRIPE_LIST_REFUNDS", "name": "List Refunds", "description": "Lists Stripe refunds, sorted by creation date descending (newest first), with optional filtering by charge or payment_intent and pagination support." }, { "slug": "STRIPE_LIST_REPORTING_REPORT_RUNS", "name": "List Report Runs", "description": "Lists Stripe Report Runs, sorted by creation date descending (newest first). Use when you need to retrieve reporting data or check the status of report generation tasks." }, { "slug": "STRIPE_LIST_REVIEWS", "name": "List open reviews", "description": "Retrieves a list of open Stripe reviews with pagination support. Use when you need to access reviews that require action, sorted by creation date with most recent first." }, { "slug": "STRIPE_LIST_SETUP_ATTEMPTS", "name": "List SetupAttempts", "description": "Tool to list SetupAttempts associated with a SetupIntent. Use when you need to retrieve attempts to confirm a SetupIntent and attach a payment method to a customer." }, { "slug": "STRIPE_LIST_SETUP_INTENTS", "name": "List setup intents", "description": "Tool to list SetupIntents from Stripe. Use when you need to retrieve a list of setup intents with optional filtering by customer, payment method, or pagination parameters." }, { "slug": "STRIPE_LIST_SIGMA_SCHEDULED_QUERY_RUNS", "name": "List Sigma scheduled query runs", "description": "Tool to list all Sigma scheduled query runs. Use when you need to retrieve query runs from Stripe Sigma to access query results or check run status." }, { "slug": "STRIPE_LIST_SUBSCRIPTION_ITEMS", "name": "List subscription items", "description": "List all subscription items for a given subscription. Subscription items represent the individual products/prices that make up a subscription. Use this to retrieve items associated with a specific Stripe subscription, including pricing, quantities, and billing details for each item." }, { "slug": "STRIPE_LIST_SUBSCRIPTIONS", "name": "List subscriptions", "description": "Retrieves a list of Stripe subscriptions, optionally filtered by various criteria such as customer, price, status, collection method, and date ranges, with support for pagination." }, { "slug": "STRIPE_LIST_TAX_CODES", "name": "List tax codes", "description": "Retrieves a paginated list of globally available, predefined Stripe tax codes used for classifying products and services in Stripe Tax." }, { "slug": "STRIPE_LIST_TAX_RATES", "name": "List tax rates", "description": "Retrieves a list of tax rates, which are returned sorted by creation date in descending order." }, { "slug": "STRIPE_LIST_TAX_REGISTRATIONS", "name": "List tax registrations", "description": "Retrieves a paginated list of tax registrations. Use when you need to view where a business is registered to collect tax on payments within various regions." }, { "slug": "STRIPE_LIST_TERMINAL_CONFIGURATIONS", "name": "List terminal configurations", "description": "Tool to retrieve a list of Terminal Configuration objects from Stripe. Use when you need to view all terminal configurations with optional filtering and pagination." }, { "slug": "STRIPE_LIST_TERMINAL_LOCATIONS", "name": "List terminal locations", "description": "Retrieves a list of Stripe terminal locations with pagination support. Use when you need to view all terminal locations for managing physical card readers." }, { "slug": "STRIPE_LIST_TERMINAL_READERS", "name": "List terminal readers", "description": "Tool to list all Stripe Terminal Readers with optional filtering. Use when you need to retrieve readers by device type, location, serial number, or status." }, { "slug": "STRIPE_LIST_TEST_CLOCKS", "name": "List test clocks", "description": "Retrieves a paginated list of test clocks. Use when you need to view all test clocks for testing time-dependent functionality." }, { "slug": "STRIPE_LIST_TOPUPS", "name": "List Top-ups", "description": "Tool to retrieve a list of existing top-ups from Stripe. Use when you need to view top-ups with optional filtering by amount, status, or creation date, and pagination support." }, { "slug": "STRIPE_LIST_TRANSFERS", "name": "List transfers", "description": "List all transfers sent to connected accounts. Transfers are returned in reverse chronological order. Use when you need to retrieve transfer history or monitor funds sent to connected accounts." }, { "slug": "STRIPE_LIST_V2_CORE_EVENT_DESTINATIONS", "name": "List V2 Core Event Destinations", "description": "Retrieves a list of event destinations from Stripe V2 Core Events API. Use when you need to list all event destinations including webhooks and EventBridge integrations." }, { "slug": "STRIPE_LIST_V2_CORE_EVENTS", "name": "List v2 core events", "description": "Tool to list v2 core events from Stripe. Use when you need to retrieve a list of events with thin payloads containing references to changed objects. These events are unversioned and require fetching the related object for full details." }, { "slug": "STRIPE_MARK_INVOICE_UNCOLLECTIBLE", "name": "Mark invoice as uncollectible", "description": "Tool to mark a Stripe invoice as uncollectible for bad debt accounting purposes. Use when you need to write off an unpaid invoice that is unlikely to be collected." }, { "slug": "STRIPE_MIGRATE_SUBSCRIPTION", "name": "Migrate subscription to flexible billing", "description": "Migrate a subscription from classic to flexible billing mode. Use when upgrading billing mode to enable flexible proration and invoice calculation. Requires Stripe API version 2025-06-30.basil or later." }, { "slug": "STRIPE_PAY_INVOICE", "name": "Pay an invoice", "description": "Tool to pay an invoice manually outside the normal collection schedule. Use when you need to manually trigger payment on an invoice or mark it as paid externally using paid_out_of_band parameter." }, { "slug": "STRIPE_POST_BILLING_CREDIT_GRANTS_VOID_CREDIT_GRANT", "name": "Void billing credit grant", "description": "Voids a billing credit grant, preventing it from being applied to future invoices. This operation is irreversible and marks the credit grant with a voided_at timestamp." }, { "slug": "STRIPE_POST_CHARGES_CHARGE", "name": "Update Charge", "description": "Updates a Stripe charge with the specified parameters; unspecified fields remain unchanged. Use when you need to modify charge details like customer association, description, fraud details, metadata, receipt email, shipping information, or transfer group." }, { "slug": "STRIPE_POST_CUSTOMERS_CUSTOMER_SUBS_SUB_EXPOSED_ID", "name": "Update customer subscription", "description": "Tool to update a customer's subscription. Use when modifying subscription items, billing cycle, payment methods, or metadata for an existing subscription." }, { "slug": "STRIPE_POST_CUSTOMERS_SOURCES_VERIFY_THE_BANK_ACCOUNT", "name": "Verify customer bank account", "description": "Verifies a bank account for a customer using microdeposit amounts. Use when you need to confirm ownership of a bank account by providing the amounts of two microdeposits sent to the account." }, { "slug": "STRIPE_POST_FILE_LINKS_LINK", "name": "Update file link", "description": "Tool to update an existing file link in Stripe. Use when you need to modify the expiration time or metadata of a file link. Note: Expired links cannot be updated." }, { "slug": "STRIPE_POST_INVOICES_INVOICE_VOID", "name": "Void an invoice", "description": "Voids a finalized invoice and maintains a papertrail. Use when you need to void a finalized invoice while preserving audit history. Only finalized invoices can be voided." }, { "slug": "STRIPE_POST_PAYMENT_RECORDS_REPORT_PAYMENT", "name": "Report Payment Record", "description": "Tool to report a payment record in terminal state or for initialization. Use when you need to report payments that occurred on- or off-Stripe to create a unified payment history." }, { "slug": "STRIPE_POST_SETUP_INTENTS_INTENT", "name": "Update setup intent", "description": "Updates a SetupIntent object to modify configuration parameters and metadata. Use when you need to update an existing SetupIntent before completion." }, { "slug": "STRIPE_POST_SUBSCRIPTION_ITEMS_ITEM", "name": "Update subscription item", "description": "Tool to update a subscription item's plan, quantity, billing thresholds, discounts, or metadata. Use when you need to modify an existing subscription item. Changes may trigger prorations." }, { "slug": "STRIPE_POST_SUBSCRIPTIONS_SUBSCRIPTION_EXPOSED_ID", "name": "Update subscription", "description": "Tool to update an existing Stripe subscription with specified parameters. Use when you need to modify subscription items, billing settings, payment methods, or metadata for an active subscription." }, { "slug": "STRIPE_POST_TERMINAL_CONFIGURATIONS_CONFIGURATION", "name": "Update Terminal Configuration", "description": "Tool to update a Stripe Terminal Configuration. Use when you need to modify terminal reader settings including device-specific configurations, offline transaction capabilities, security settings, reboot windows, WiFi credentials, or tipping configurations. Changes can take up to 10 minutes to reflect on target readers." }, { "slug": "STRIPE_POST_TERMINAL_READERS_READER_PROCESS_PAYMENT_INTENT", "name": "Process payment on terminal reader", "description": "Initiates a payment flow on a Stripe Terminal Reader to process a PaymentIntent. Use when you need to hand off a PaymentIntent to a physical card reader for customer payment. The reader must be online and not currently processing another action, and the PaymentIntent must be in requires_capture or requires_payment_method state. The response returns immediately with action status 'in_progress'; poll the Reader object or use webhooks to determine completion." }, { "slug": "STRIPE_POST_TERMINAL_READERS_READER_SET_READER_DISPLAY", "name": "Set Reader Display", "description": "Configures a Stripe terminal reader to display cart information on screen. Use when you need to show customers their purchase details on a physical terminal device during checkout. Supported on Verifone P400, BBPOS WisePOS E, and Stripe Reader S700." }, { "slug": "STRIPE_POST_TERMINAL_READERS_SET_READER_DISPLAY", "name": "Set Terminal Reader Display", "description": "Tool to configure a terminal reader's display to show cart details. Use when you need to display line items, amounts, and currency information on a Stripe Terminal reader screen." }, { "slug": "STRIPE_POST_V1_ACCOUNTS_CAPABILITIES_CAPABILITIES", "name": "Update Account Capability", "description": "Updates an existing account capability for a Stripe connected account. Use when you need to request a new capability or remove a non-permanent capability. There may be a delay before the requested capability becomes active, and the response includes any activation requirements." }, { "slug": "STRIPE_POST_V1_BALANCE_SETTINGS_OVERVIEW", "name": "Update balance settings overview", "description": "Tool to update balance settings for a Stripe account. Use when customizing payout schedules, settlement timing, or negative balance handling for a connected account." }, { "slug": "STRIPE_POST_V1_BILLING_PORTAL_CONFIGS_OVERVIEW_BILLING", "name": "Update Billing Portal Configuration", "description": "Tool to update an existing billing portal configuration in Stripe. Use when you need to modify portal settings like business profile, features, or default return URL." }, { "slug": "STRIPE_POST_V1_CHECKOUT_SESSIONS_RETRIEVE_A_CHECKOUT", "name": "Update and retrieve Checkout Session", "description": "Tool to update and retrieve a Checkout Session object from Stripe. Use when you need to update metadata or other fields while retrieving the session details." }, { "slug": "STRIPE_POST_V1_CREDIT_NOTES_CREDIT_NOTE2", "name": "Update Credit Note", "description": "Tool to update an existing credit note in Stripe by modifying its memo or metadata. Use when you need to add context or store additional information on an already-issued credit note." }, { "slug": "STRIPE_POST_V1_CUSTOMERS_FUNDING_INSTRUCTIONS_FUND_A_TEST", "name": "Create or Retrieve Customer Funding Instructions", "description": "Creates or retrieves funding instructions for a customer cash balance via bank transfer. Returns bank account details (ABA, IBAN, etc.) that can be used to fund the customer's account. If funding instructions already exist for the customer, the same instructions will be returned." }, { "slug": "STRIPE_POST_V1_CUSTOMERS_SEARCH_CUSTOMERS", "name": "Search Stripe customers", "description": "Tool to search for Stripe customers using a search query. Use when you need to find customers by email, name, metadata, or other fields using Stripe's Search Query Language." }, { "slug": "STRIPE_POST_V1_INVOICES_FINALIZE_VOID_AN_INVOICE", "name": "Void an invoice", "description": "Voids a finalized invoice and maintains a papertrail. Use when you need to void a finalized invoice that has not been paid. Once voided, the invoice cannot be undone and maintains audit history." }, { "slug": "STRIPE_POST_V1_INVOICES_LINES_OVERVIEW", "name": "Update Invoice Line Item", "description": "Updates an invoice's line item before finalization. Use when you need to modify details of a line item such as description, metadata, amount, or tax settings before the invoice is finalized." }, { "slug": "STRIPE_POST_V1_INVOICES_REMOVE_LINES_OVERVIEW", "name": "Remove lines from invoice", "description": "Tool to remove multiple line items from a draft Stripe invoice. Use when you need to delete or unassign specific line items from an invoice that hasn't been finalized yet." }, { "slug": "STRIPE_POST_V1_INVOICES_SEND_VOID_AN_INVOICE", "name": "Void invoice", "description": "Tool to void a finalized Stripe invoice. Use when you need to permanently void an invoice while preserving an audit trail. This operation cannot be undone and only works on finalized invoices." }, { "slug": "STRIPE_POST_V1_INVOICES_VOID_AN_INVOICE", "name": "Void an invoice", "description": "Tool to permanently void a finalized Stripe invoice. Use when an invoice needs to be canceled while maintaining an audit trail. This operation is irreversible and only applies to finalized invoices." }, { "slug": "STRIPE_POST_V1_PAYMENT_METHOD_CONFIGS_LIST_PAYMENT_METHOD2", "name": "Update payment method configuration", "description": "Updates a payment method configuration to control which payment methods are displayed at checkout. Use when modifying payment method availability or display settings." }, { "slug": "STRIPE_POST_V1_PAYMENT_METHOD_DOMAINS_PAYMENT_METHOD", "name": "Update Payment Method Domain", "description": "Updates an existing payment method domain to enable or disable it. Use when you need to control whether payment methods requiring domain verification will appear in Elements or Embedded Checkout." }, { "slug": "STRIPE_POST_V1_PAYMENT_RECORDS_REPORT_ATTEMPT", "name": "Report Payment Attempt", "description": "Tool to report a payment attempt on a Stripe Payment Record. Use when updating a Payment Record with payment attempt details such as initiation time and outcome status." }, { "slug": "STRIPE_POST_V1_PAYMENT_RECORDS_REPORT_CANCELED", "name": "Report Payment Attempt Canceled", "description": "Tool to report that the most recent payment attempt was canceled. Use when you need to update a Payment Record to reflect a canceled payment attempt." }, { "slug": "STRIPE_POST_V1_PAYMENT_RECORDS_REPORT_GUARANTEED", "name": "Report payment attempt guaranteed overview", "description": "Reports that a payment attempt was guaranteed for a specific Payment Record. Use when confirming that a payment has been successfully guaranteed by the payment processor at a specific timestamp." }, { "slug": "STRIPE_POST_V1_PAYMENT_RECORDS_REPORT_INFO", "name": "Report payment attempt information", "description": "Tool to report additional payment attempt information for a payment record. Use when you need to add informational details about a payment attempt." }, { "slug": "STRIPE_POST_V1_PAYMENT_RECORDS_REPORT_REFUND_OVERVIEW", "name": "Report Payment Record Refund", "description": "Reports that the most recent payment attempt on a Payment Record was refunded. Use when you need to record a refund for a successfully processed payment to maintain accurate payment records. Multiple partial refunds can be reported until the full amount is refunded." }, { "slug": "STRIPE_POST_V1_PAYOUTS_RETRIEVE_A_PAYOUT", "name": "Update payout metadata", "description": "Updates a payout's metadata and returns the updated payout object. This endpoint ONLY allows updating the metadata field - no other payout properties (amount, destination, status, etc.) can be modified. To remove a specific metadata key, pass an empty string as its value. To clear all metadata, pass an empty dictionary. Use this when you need to attach or update custom information on an existing payout." }, { "slug": "STRIPE_POST_V1_PLANS_OVERVIEW", "name": "Update Plan Overview", "description": "Tool to update a Stripe plan by setting passed parameter values. Use when modifying plan details like nickname, metadata, or active status." }, { "slug": "STRIPE_POST_V1_PROMOTION_CODES_PROMOTION_CODE", "name": "Update Promotion Code", "description": "Updates an existing promotion code. Most fields are not editable by design. Use this to activate/deactivate codes, update metadata, or modify currency-specific restrictions." }, { "slug": "STRIPE_POST_V1_SHIPPING_RATES_OVERVIEW2", "name": "Update Shipping Rate", "description": "Tool to update an existing Stripe shipping rate. Use when you need to modify shipping rate properties such as active status, fixed amounts, metadata, or tax behavior." }, { "slug": "STRIPE_POST_V1_SUBSCRIPTION_SCHEDULES_OVERVIEW2", "name": "Update subscription schedule", "description": "Tool to update an existing subscription schedule with new phases, settings, metadata, and end behavior. Use when modifying subscription schedule configuration." }, { "slug": "STRIPE_POST_V1_SUBSCRIPTION_SCHEDULES_RELEASE_OVERVIEW", "name": "Release subscription schedule", "description": "Tool to release a subscription schedule. Releases a subscription schedule immediately, stops scheduling future phases but leaves the existing subscription in place." }, { "slug": "STRIPE_POST_V1_SUBSCRIPTIONS_LIST_SUBSCRIPTIONS", "name": "Update subscription", "description": "Updates an existing Stripe subscription's properties including metadata, description, payment method, billing settings, trial periods, and cancellation behavior. Use this to modify subscription configuration, change payment methods, update billing cycles, manage trials, or schedule cancellations. This action does not modify subscription items (prices/products) - use separate actions for that." }, { "slug": "STRIPE_POST_V1_TAX_RATES_TAX_RATE2", "name": "Update Tax Rate", "description": "Tool to update an existing Stripe tax rate. Use when you need to modify tax rate properties such as display name, description, or active status." }, { "slug": "STRIPE_POST_V2_BILLING_METER_EVENT_ADJUSTMENTS_METER_EVENT", "name": "Create Meter Event Adjustment", "description": "Creates a billing meter event adjustment to cancel a previously sent meter event. Use when you need to cancel a meter event within 24 hours of Stripe receiving it." }, { "slug": "STRIPE_PRESENT_PAYMENT_METHOD", "name": "Present payment method on reader", "description": "Tool to present a payment method on a simulated terminal reader for testing purposes. Use when testing payment flows, simulating card acceptance, or validating terminal reader integrations in test mode." }, { "slug": "STRIPE_PROCESS_SETUP_INTENT", "name": "Process setup intent on terminal reader", "description": "Initiates a SetupIntent flow on a Stripe Terminal Reader to save payment details. Use when you need to collect and save payment method information for future use." }, { "slug": "STRIPE_REACTIVATE_BILLING_METER", "name": "Reactivate Billing Meter", "description": "Reactivates a deactivated billing meter. Use when you need to resume tracking usage after a meter has been deactivated." }, { "slug": "STRIPE_REPORT_PAYMENT_ATTEMPT_FAILED", "name": "Report Payment Attempt Failed", "description": "Reports that a recent payment attempt on a Payment Record has failed. Use when a payment attempt encounters an error to ensure Stripe has a complete view of payment flows." }, { "slug": "STRIPE_RESUME_SUBSCRIPTION", "name": "Resume subscription", "description": "Resumes a paused Stripe subscription with billing cycle and proration options. Use when a customer wants to restart payment collection on a previously paused subscription." }, { "slug": "STRIPE_RETRIEVE_BALANCE", "name": "Retrieve Balance", "description": "Retrieves the complete current balance details for the connected Stripe account." }, { "slug": "STRIPE_RETRIEVE_CHARGE", "name": "Retrieve Charge Details", "description": "Retrieves full details for an existing Stripe charge using its unique ID." }, { "slug": "STRIPE_RETRIEVE_CHECKOUT_SESSION", "name": "Retrieve Checkout Session", "description": "Tool to retrieve a Checkout Session object from Stripe. Use when you need to get the current state of a checkout session, including payment status, customer details, and line items." }, { "slug": "STRIPE_RETRIEVE_CUSTOMER", "name": "Retrieve customer", "description": "Retrieves detailed information for an existing Stripe customer using their unique customer ID." }, { "slug": "STRIPE_RETRIEVE_PAYMENT_INTENT", "name": "Retrieve payment intent", "description": "Retrieves a PaymentIntent by its ID; `client_secret` is required if a publishable API key is used." }, { "slug": "STRIPE_RETRIEVE_PROMOTION_CODE", "name": "Retrieve Promotion Code", "description": "Tool to retrieve a Stripe promotion code by its ID. Use when you need to get details about a specific promotion code including its associated coupon, usage restrictions, and redemption statistics." }, { "slug": "STRIPE_RETRIEVE_UPCOMING_INVOICE", "name": "Retrieve Upcoming Invoice", "description": "Tool to preview the upcoming invoice for a customer, showing all pending charges including subscription renewals and invoice items. Use when you need to preview invoice amounts before they are finalized, test the effects of subscription updates including prorations, or estimate future billing." }, { "slug": "STRIPE_SEARCH_CHARGES", "name": "Search Stripe charges", "description": "Search charges using Stripe's Search Query Language. Use when you need to find historical charges by status, amount, customer, metadata, or other criteria." }, { "slug": "STRIPE_SEARCH_CUSTOMERS", "name": "Search Stripe customers", "description": "Retrieves a list of Stripe customers matching a search query that adheres to Stripe's Search Query Language." }, { "slug": "STRIPE_SEARCH_INVOICES", "name": "Search invoices", "description": "Searches for invoices using Stripe's Search Query Language. Use when you need to find invoices by status, total amount, customer, currency, or other criteria. Data is typically searchable within one minute, though propagation can lag up to an hour during outages." }, { "slug": "STRIPE_SEARCH_PAYMENT_INTENTS", "name": "Search payment intents", "description": "Searches for PaymentIntents using Stripe's Search Query Language. Use when you need to find payments by status, amount, customer, or other criteria." }, { "slug": "STRIPE_SEARCH_PRICES", "name": "Search Stripe prices", "description": "Search for prices using Stripe's Search Query Language. Use when you need to find prices by status, currency, product, or other criteria with flexible query syntax." }, { "slug": "STRIPE_SEARCH_PRODUCTS", "name": "Search Stripe products", "description": "Tool to search for products using Stripe's Search Query Language. Use when you need to find products based on specific criteria like active status, name, or metadata." }, { "slug": "STRIPE_SEARCH_SUBSCRIPTIONS", "name": "Search subscriptions", "description": "Searches for subscriptions using Stripe's Search Query Language. Use when you need to find subscriptions by status, metadata, created timestamp, or canceled_at timestamp." }, { "slug": "STRIPE_SEND_INVOICE", "name": "Send invoice for manual payment", "description": "Tool to manually send a finalized Stripe invoice to the customer outside the automatic billing schedule. Use when you need to deliver an invoice for manual payment. Note: In test mode, no emails are sent, but webhook events (invoice.sent) are still generated." }, { "slug": "STRIPE_SET_READER_DISPLAY", "name": "Set reader display", "description": "Configures a Stripe Terminal reader to display cart information on its screen. Use when you need to show transaction details to customers during checkout." }, { "slug": "STRIPE_SET_TERMINAL_READER_DISPLAY", "name": "Set terminal reader display", "description": "Tool to set the display on a Stripe Terminal reader to show cart details. Use when you need to display line items, totals, and tax information on a physical terminal reader screen." }, { "slug": "STRIPE_SUCCEED_TEST_TERMINAL_READER_INPUT_COLLECTION", "name": "Simulate successful input collection", "description": "Simulates successful completion of an ongoing input collection on a Terminal reader. This test helper allows you to test your integration's handling of successfully collected customer inputs (signature, email, phone, etc.) without requiring physical hardware or actual customer interaction. The reader must have an active input collection in progress (initiated via collect_inputs endpoint). Note: This endpoint only works in test mode with test API keys." }, { "slug": "STRIPE_TIMEOUT_TEST_TERMINAL_READER_INPUT_COLLECTION", "name": "Simulate Terminal Reader Input Collection Timeout", "description": "Simulate an input collection timeout on a Stripe Terminal reader. This test helper endpoint allows you to simulate timeout scenarios during input collection operations on Terminal readers without needing physical hardware. When called, it marks the current reader action as failed with a timeout error, useful for testing error handling in your integration. **Important**: This endpoint is ONLY available in test mode. You must use test API keys (sk_test_...) to call this endpoint. Calling with live mode keys will result in an error. Use this when testing: - Timeout error handling in your application - Input collection failure scenarios - Reader action recovery flows" }, { "slug": "STRIPE_UPDATE_APPLICATION_FEE_REFUND", "name": "Update Application Fee Refund", "description": "Updates an application fee refund by its fee ID and refund ID. Use this action when you need to update the metadata of an existing application fee refund. Application Fee Refund objects allow you to refund an application fee that has previously been created but not yet refunded. Funds will be refunded to the Stripe account from which the fee was originally collected. Related guide: Refunding application fees." }, { "slug": "STRIPE_UPDATE_BILLING_CREDIT_GRANT", "name": "Update billing credit grant", "description": "Updates an existing billing credit grant. Use when you need to modify the expiration time or metadata of a credit grant." }, { "slug": "STRIPE_UPDATE_BILLING_METER", "name": "Update Billing Meter", "description": "Tool to update a billing meter's display name. Use when you need to modify the name of an existing billing meter." }, { "slug": "STRIPE_UPDATE_BILLING_PORTAL_CONFIGURATION", "name": "Update Billing Portal Configuration", "description": "Update a billing portal configuration. Use when you need to modify portal settings, business profile, or features." }, { "slug": "STRIPE_UPDATE_CASH_BALANCE", "name": "Update Cash Balance Settings", "description": "Tool to update a customer's cash balance settings in Stripe. Use when you need to modify how funds transferred to a customer's cash balance are applied to payment intents and invoices." }, { "slug": "STRIPE_UPDATE_CHARGE", "name": "Update Charge", "description": "Tool to update a Stripe charge object with provided parameters. Use when you need to modify charge details such as description, metadata, fraud assessment, receipt email, shipping information, or transfer group." }, { "slug": "STRIPE_UPDATE_CHARGE_DISPUTE", "name": "Update Charge Dispute", "description": "Tool to update metadata on a charge's dispute. Use when you need to attach structured information to a dispute for tracking or internal reference purposes." }, { "slug": "STRIPE_UPDATE_CHARGE_REFUND", "name": "Update Charge Refund", "description": "Tool to update a specified refund within a charge. Use when you need to modify the metadata of an existing refund." }, { "slug": "STRIPE_UPDATE_CHECKOUT_SESSION", "name": "Update Checkout Session", "description": "Tool to update a Stripe Checkout Session dynamically. Use when you need to modify customer information, line items, or shipping options on an existing checkout session. Line item updates require retransmitting the entire array." }, { "slug": "STRIPE_UPDATE_COUPON", "name": "Update Coupon", "description": "Updates a Stripe coupon's metadata, name, or currency options. Other coupon details (currency, duration, amount_off, percent_off) are, by design, not editable. Use when you need to modify coupon metadata, display name, or add new currency-specific discount amounts." }, { "slug": "STRIPE_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Updates an existing Stripe customer, identified by customer_id, with only the provided details; unspecified fields remain unchanged." }, { "slug": "STRIPE_UPDATE_CUSTOMER_BALANCE_TXN", "name": "Update Customer Balance Transaction", "description": "Updates an existing customer balance transaction's description and metadata. Use when you need to modify the description or add/update metadata on a customer balance transaction. Most transaction fields are immutable after creation." }, { "slug": "STRIPE_UPDATE_CUSTOMER_BANK_ACCOUNT", "name": "Update customer bank account", "description": "Updates a specified bank account for a given customer. Use when you need to modify account holder details or metadata for a customer's bank account." }, { "slug": "STRIPE_UPDATE_CUSTOMER_BANK_ACCOUNT_SOURCE", "name": "Update customer bank account", "description": "Updates a bank account source attached to a customer. Use when you need to modify editable attributes like account holder name, type, or metadata." }, { "slug": "STRIPE_UPDATE_CUSTOMER_CARD", "name": "Update customer card", "description": "Tool to update a card for a specified customer. Use when you need to update card details including billing address, expiration, name, or metadata." }, { "slug": "STRIPE_UPDATE_CUSTOMER_SOURCE", "name": "Update customer source", "description": "Update a specified source for a given customer. Use when modifying card details, bank account information, or source metadata." }, { "slug": "STRIPE_UPDATE_CUSTOMER_SUBSCRIPTION", "name": "Update Customer Subscription", "description": "Tool to update a subscription on a customer in Stripe. Use when modifying subscription items, billing settings, payment methods, or metadata. Requires both customer ID and subscription ID. Supports updating items, metadata, billing cycle, cancellation settings, and more." }, { "slug": "STRIPE_UPDATE_DISPUTE", "name": "Update Dispute", "description": "Tool to update a Stripe dispute by submitting evidence or updating metadata. Use when responding to payment disputes to provide documentation countering the dispute claim." }, { "slug": "STRIPE_UPDATE_ENTITLEMENT_FEATURE", "name": "Update entitlements feature", "description": "Tool to update a feature's properties or deactivate it. Use when you need to modify an existing entitlements feature's metadata, name, or active status." }, { "slug": "STRIPE_UPDATE_EVENT_DESTINATION", "name": "Update Event Destination", "description": "Updates a v2 Event Destination with new values for specified parameters. Use when you need to modify an event destination's name, description, enabled events, webhook URL, or metadata." }, { "slug": "STRIPE_UPDATE_EXTERNAL_ACCOUNT", "name": "Update External Account", "description": "Updates the metadata, account holder name, account holder type of an external bank account or card belonging to a connected account and optionally sets it as the default for its currency. Use when you need to modify external account details for a connected account, such as updating the account holder information or setting it as the default external account. Other bank account details are not editable by design. Requires the 'account' parameter (the Stripe account ID) and 'id' parameter (the external account ID). You can only update bank accounts when account.controller.requirement_collection is 'application', which includes Custom accounts." }, { "slug": "STRIPE_UPDATE_INVOICE", "name": "Update Invoice", "description": "Updates a draft Stripe invoice. Use when modifying invoice details before finalization. Once finalized, monetary values and collection_method become immutable." }, { "slug": "STRIPE_UPDATE_INVOICEITEM", "name": "Update invoice item", "description": "Updates an invoice item on a draft invoice. Use when modifying invoice item properties like amount, description, discounts, or tax settings before invoice finalization." }, { "slug": "STRIPE_UPDATE_INVOICE_LINES", "name": "Bulk update invoice line items", "description": "Tool to bulk update multiple line items on a draft invoice. Use when you need to modify descriptions, amounts, quantities, discounts, or other properties of existing line items on an invoice that is still in draft status. This operation only works with draft invoices; finalized invoices cannot be updated using this endpoint." }, { "slug": "STRIPE_UPDATE_PAYMENT_INTENT", "name": "Update Payment Intent", "description": "Updates a Stripe PaymentIntent with new values for specified parameters; note that if `currency` is updated, `amount` might also be required, and certain updates (e.g., to `payment_method`) can necessitate re-confirmation by the customer." }, { "slug": "STRIPE_UPDATE_PAYMENT_LINK", "name": "Update Payment Link", "description": "Updates an existing payment link with new configuration details. Use when modifying payment link settings, tax configurations, custom fields, metadata, or post-completion behavior." }, { "slug": "STRIPE_UPDATE_PAYMENT_METHOD", "name": "Update Payment Method", "description": "Updates an existing PaymentMethod object in Stripe. Use when you need to modify billing details, expiration dates, or metadata for a payment method. The payment method must be attached to a customer before updates can be applied." }, { "slug": "STRIPE_UPDATE_PRICE", "name": "Update a price", "description": "Updates a Stripe price by setting passed parameter values; unspecified parameters remain unchanged. Use when you need to modify price metadata, active status, lookup key, or nickname. Note: Price amounts cannot be modified via API." }, { "slug": "STRIPE_UPDATE_PRODUCT", "name": "Update product", "description": "Tool to update an existing product in Stripe. Use when you need to modify product details like name, description, pricing, or availability." }, { "slug": "STRIPE_UPDATE_PROMOTION_CODE", "name": "Update Promotion Code", "description": "Updates an existing Stripe promotion code by setting the values of the parameters passed. Use when you need to activate/deactivate a promotion code, update its metadata, or modify redemption restrictions. Most promotion code fields are intentionally non-editable after creation." }, { "slug": "STRIPE_UPDATE_QUOTE", "name": "Update Quote", "description": "Tool to update an existing Stripe quote with new values. Use when modifying quote details like description, line items, metadata, or other quote parameters." }, { "slug": "STRIPE_UPDATE_SOURCE", "name": "Update Source", "description": "Updates a Stripe source with specified parameters. Use when you need to modify source metadata, owner information, or mandate details. NOTE: The Stripe Sources API is deprecated. Stripe recommends migrating to the Payment Methods API for new integrations. This action only works with sources created before the API deprecation." }, { "slug": "STRIPE_UPDATE_SUBSCRIPTION", "name": "Update Subscription", "description": "Updates an existing, non-canceled Stripe subscription by its ID, ensuring all referenced entity IDs (e.g., prices, coupons) are valid and automatic tax liability is correctly specified if enabled." }, { "slug": "STRIPE_UPDATE_SUBSCRIPTION_SCHEDULE", "name": "Update Subscription Schedule", "description": "Tool to update an existing subscription schedule in Stripe. Use when you need to modify phases, default settings, metadata, or end behavior of a subscription schedule." }, { "slug": "STRIPE_UPDATE_TAX_REGISTRATION", "name": "Update Tax Registration", "description": "Tool to update an existing tax registration in Stripe. Use when you need to modify the active_from or expires_at fields of a registration. Registrations cannot be deleted after creation; use expires_at to terminate them instead." }, { "slug": "STRIPE_UPDATE_TAX_SETTINGS", "name": "Update Tax Settings", "description": "Updates Stripe Tax Settings parameters used in tax calculations. Use to configure default tax behavior, tax codes, and business head office location for tax purposes." }, { "slug": "STRIPE_UPDATE_TERMINAL_LOCATION", "name": "Update Terminal Location", "description": "Updates a Terminal Location by modifying specified parameters. Use when you need to change location details like display name, address, phone, or metadata." }, { "slug": "STRIPE_UPDATE_TERMINAL_READER", "name": "Update Terminal Reader", "description": "Tool to update a Terminal Reader object by setting parameter values. Use when you need to modify the label or metadata of an existing reader device." }, { "slug": "STRIPE_VALIDATE_PAYMENT_METHOD_DOMAIN", "name": "Validate payment method domain", "description": "Tool to validate an existing payment method domain in Stripe to activate payment methods. Use when additional registration steps need to be completed before a payment method can be used in Elements or Embedded Checkout." }, { "slug": "STRIPE_VERIFY_MICRODEPOSITS", "name": "Verify microdeposits on setup intent", "description": "Verifies microdeposits on a SetupIntent object to confirm bank account ownership. Use when customer needs to verify their bank account using either amounts or descriptor code from microdeposits." }, { "slug": "STRIPE_VERIFY_MICRODEPOSITS_PAYMENT_INTENT", "name": "Verify microdeposits on payment intent", "description": "Verifies microdeposits on a PaymentIntent object by matching deposit amounts or descriptor code. Use after microdeposits are sent to complete bank account verification." }, { "slug": "STRIPE_VOID_CREDIT_NOTE", "name": "Void a credit note", "description": "Marks a credit note as void. Use when you need to void a credit note and reverse its adjustments." }, { "slug": "STRIPE_VOID_INVOICE", "name": "Void an invoice", "description": "Tool to void a finalized Stripe invoice. Use when you need to mark an invoice as uncollectible while maintaining a paper trail. Voiding an invoice is permanent and cannot be undone. Only finalized invoices can be voided; draft invoices should be deleted instead." } ], "triggers": [ { "slug": "STRIPE_CHARGE_FAILED_TRIGGER", "name": "Charge Failed Trigger", "description": "Triggered when a direct charge fails in Stripe's legacy Charges API" }, { "slug": "STRIPE_CHECKOUT_SESSION_COMPLETED_TRIGGER", "name": "Checkout Session Completed Trigger", "description": "Triggered when a checkout session is completed in Stripe" }, { "slug": "STRIPE_INVOICE_PAYMENT_SUCCEEDED_TRIGGER", "name": "Invoice Payment Succeeded Trigger", "description": "Triggered when an invoice payment is successful in Stripe" }, { "slug": "STRIPE_PAYMENT_FAILED_TRIGGER", "name": "Payment Intent Failed Trigger", "description": "Triggered when a payment intent fails in Stripe" }, { "slug": "STRIPE_PRODUCT_CREATED_TRIGGER", "name": "Product Created Trigger", "description": "Triggered when a product is created in Stripe" }, { "slug": "STRIPE_SUBSCRIPTION_ADDED_TRIGGER", "name": "Subscription Added Trigger", "description": "Triggered when a subscription is added in Stripe" }, { "slug": "STRIPE_SUBSCRIPTION_DELETED_TRIGGER", "name": "Subscription Deleted Trigger", "description": "Triggered when a subscription is deleted in Stripe" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "stripe_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "stripe_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Stripe secret key — starts with sk_live_ (or sk_test_ for test mode), not the publishable pk_ key. Find it at https://dashboard.stripe.com/apikeys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "klaviyo", "name": "Klaviyo", "logo": "https://logos.composio.dev/api/klaviyo", "description": "Klaviyo is a data-driven email and SMS marketing platform that allows e-commerce brands to deliver targeted messages, track conversions, and scale customer relationships", "category": "marketing automation", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 225, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KLAVIYO_ADD_PROFILE_TO_LIST", "name": "Add Profile to List", "description": "Add profiles to a Klaviyo list by profile IDs or email addresses. This action subscribes profiles to a marketing list, which is ideal for giving marketing consent. You can add up to 1000 profiles per call using either their Klaviyo profile IDs or email addresses. Rate limits: 10/s burst, 150/m steady. Required scopes: `lists:write` and `profiles:write`. Preconditions: - Either profile_ids or emails must be provided (not both) - Maximum 1000 profiles per call - Email addresses must be valid format - The list must exist and be accessible" }, { "slug": "KLAVIYO_ASSIGN_CAMPAIGN_MESSAGE_TEMPLATE", "name": "Assign campaign message template", "description": "Creates a non-reusable version of the template and assigns it to the message.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_BULK_CREATE_CLIENT_EVENTS", "name": "Bulk create client events", "description": "Use the client-side endpoint with a public API key to track profile activity. It accepts up to 1000 events/request with rates of 10/s burst and 150/m steady. For server-side, use the bulk create event endpoint." }, { "slug": "KLAVIYO_BULK_CREATE_EVENTS", "name": "Bulk create events", "description": "Bulk create events for multiple profiles in a single request. Accepts up to 1,000 events with a 5MB max payload. Each event requires a profile identifier (email, phone_number, or external_id) and a metric name. Events are processed asynchronously; a 202 response indicates acceptance, not completion. Rate limits: 10/s burst, 150/min steady." }, { "slug": "KLAVIYO_CANCEL_CAMPAIGN_SEND", "name": "Cancel Campaign Send", "description": "Cancel or revert a campaign send job. Use 'cancel' to permanently stop a campaign (status becomes CANCELED), or 'revert' to return it to DRAFT for editing. This action modifies a campaign send job that is currently queued or sending. The cancel action is irreversible and sets the status to CANCELED. The revert action returns the campaign to DRAFT status, allowing further modifications. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign send job ID must exist and be accessible - Campaign must be in a state that allows cancellation (queued or sending)" }, { "slug": "KLAVIYO_CREATE_BACK_IN_STOCK_SUBSCRIPTION", "name": "Create back in stock subscription", "description": "Use the server-side endpoint to subscribe to restock alerts, following the Back in Stock API guide. For client-side, use the POST endpoint provided. Rate limits: 350/s burst and 3500/m steady. Required scopes: catalogs:write, profiles:write." }, { "slug": "KLAVIYO_CREATE_CAMPAIGN", "name": "Create campaign", "description": "Creates a campaign given a set of parameters, then returns it.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_CREATE_CAMPAIGN_CLONE", "name": "Create campaign clone", "description": "Clones an existing campaign, returning a new campaign based on the original with a new ID and name.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_CREATE_CAMPAIGN_RECIPIENT_ESTIMATION_JOB", "name": "Create Campaign Recipient Estimation Job", "description": "Start an asynchronous task to estimate the number of recipients for a campaign. This action creates a background job that calculates how many profiles would receive the campaign based on its current audience settings. Use the job ID returned to track progress with the 'Get Campaign Recipient Estimation Job' action, and get the final count via 'Get Campaign Recipient Estimation' action. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign ID must exist and be accessible - Campaign must have audience settings configured" }, { "slug": "KLAVIYO_CREATE_CAMPAIGN_SEND_JOB", "name": "Create campaign send job", "description": "Trigger a campaign to send asynchronously

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_CREATE_CATALOG_CATEGORY", "name": "Create catalog category", "description": "Create a new catalog category.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_CREATE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS", "name": "Create catalog category relationships items", "description": "Create a new item relationship for the given category ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_CREATE_CATALOG_ITEM", "name": "Create catalog item", "description": "Create a new catalog item.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_CREATE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES", "name": "Create catalog item relationships categories", "description": "Create a new catalog category relationship for the given item ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_CREATE_CATALOG_VARIANT", "name": "Create catalog variant", "description": "Create a new variant for a related catalog item.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_CREATE_CLIENT_BACK_IN_STOCK_SUBSCRIPTION", "name": "Create client back in stock subscription", "description": "Use the endpoint for client-side back in stock notifications with a public API key. For server-side, use POST /api/back-in-stock-subscriptions. Limits are 350 requests per second and 3500 per minute. Requires 'catalogs:write' and 'profiles:write' scopes." }, { "slug": "KLAVIYO_CREATE_CLIENT_EVENT2", "name": "Create Client Event V2", "description": "Create a client-side event in Klaviyo to track user interactions. This action uses the company_id in the request body instead of as a query parameter. Use when tracking events from publicly-browseable, client-side environments with a public API key." }, { "slug": "KLAVIYO_CREATE_CLIENT_SUBSCRIPTION", "name": "Create client subscription", "description": "Endpoint manages email/SMS opt-ins using consent and requires public API key for client use. Allows single-channel with details. Rate limit: 100/s burst, 700/m steady, under 'subscriptions:write'." }, { "slug": "KLAVIYO_CREATE_COUPON", "name": "Create coupon", "description": "Creates a new coupon.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`" }, { "slug": "KLAVIYO_CREATE_COUPON_CODE", "name": "Create coupon code", "description": "Synchronously creates a coupon code for the given coupon.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`" }, { "slug": "KLAVIYO_CREATE_EVENT", "name": "Create event", "description": "Create or update a profile event with minimum identifiers and metric name. Success means validation, not completion. Burst limit: 350/s, Steady: 3500/m. Scope required: `events:write`." }, { "slug": "KLAVIYO_CREATE_LIST", "name": "Create list", "description": "Create a new list.

*Rate limits*:
Burst: `10/s`
Steady: `150/m`
Daily: `100/d` **Scopes:** `lists:write`" }, { "slug": "KLAVIYO_CREATE_OR_UPDATE_CLIENT_PROFILE", "name": "Create or update client profile", "description": "Update user profiles without tracking using a public client-side API; use a private server-side API for identifier changes. Burst rate is 350 requests/sec and 3500 requests/min with 'profiles:write' access." }, { "slug": "KLAVIYO_CREATE_OR_UPDATE_CLIENT_PUSH_TOKEN", "name": "Create or update client push token", "description": "This endpoint for mobile SDKs (iOS & Android) creates/updates push tokens using a public API key. Push notifications must be enabled. For migrating tokens use the server-side POST endpoint. Rate limits are 3/s burst, 150/m steady." }, { "slug": "KLAVIYO_CREATE_OR_UPDATE_PROFILE", "name": "Create or Update Profile", "description": "Create or update a profile in Klaviyo with the given attributes. This action allows you to create a new profile or update an existing one if it already exists (based on email or other identifiers). Returns 201 for creation, 200 for update. Empty fields are cleared with `null`; omitted fields remain unchanged. Rate limits: 75/s burst, 700/m steady. Required scope: `profiles:write`. Preconditions: - At least one identifier (email, phone_number, external_id, or anonymous_id) must be provided - Email must be in valid format if provided - Phone number must be in E.164 format if provided" }, { "slug": "KLAVIYO_CREATE_OR_UPDATE_PUSH_TOKEN", "name": "Create or update push token", "description": "Create or update a push token for mobile push notifications. This server-side endpoint is used for migrating push tokens from other platforms to Klaviyo. For creating tokens from mobile devices, use Klaviyo's mobile SDKs instead. Prerequisites: Push notifications must be enabled for the Klaviyo account. Required fields: - data__type: Must be 'push-token' - data__attributes__token: The push token from APNS or FCM - data__attributes__platform: 'ios' or 'android' - data__attributes__vendor: 'apns' (iOS) or 'fcm' (Android) - data__attributes__profile__data__type: Must be 'profile' - At least one profile identifier (email, phone_number, external_id, anonymous_id, or profile id) Rate limits: 75/s burst, 700/m steady. Max payload: 100KB. Requires scopes: profiles:write, push-tokens:write" }, { "slug": "KLAVIYO_CREATE_PROFILE", "name": "Create profile", "description": "Create a new profile.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `profiles:write`" }, { "slug": "KLAVIYO_CREATE_SEGMENT", "name": "Create segment", "description": "Create a segment.

*Rate limits*:
Burst: `1/s`
Steady: `15/m`
Daily: `100/d` **Scopes:** `segments:write`" }, { "slug": "KLAVIYO_CREATE_TAG", "name": "Create tag", "description": "Summary: Instructions on creating a tag within an account's designated tag group with a maximum of 500 tags, with optional tag group specification. Rate limits are 3/s burst and 60/min steady. Tag: #TagCreationLimitAndRate" }, { "slug": "KLAVIYO_CREATE_TAG_GROUP", "name": "Create tag group", "description": "Create tag groups up to 50 per account, defaulting to non-exclusive unless specified. Related resources can have multiple non-exclusive tags but only one if exclusive. Rate limits: 3/s burst, 60/m steady. Scopes needed: tags:read, tags:write." }, { "slug": "KLAVIYO_CREATE_TAG_RELATIONSHIPS", "name": "Create Tag Relationships", "description": "Associate a tag with other resources (flows, lists, segments, or campaigns) in Klaviyo. Use when you need to link a tag to one or more resources for organizational purposes. Note: A resource can have up to 100 tags associated with it. Rate limits: 3/s burst, 60/m steady. Required scopes vary by resource type: tags:write plus the appropriate write scope (flows:write, lists:write, segments:write, or campaigns:write)." }, { "slug": "KLAVIYO_CREATE_TEMPLATE", "name": "Create template", "description": "Summary: Custom HTML templates can be created unless an account reaches 1,000 template limit. Use sparse fieldsets to request specific fields. Rate limits are 10 per second and 150 per minute. Requires 'templates:write' scope." }, { "slug": "KLAVIYO_CREATE_TEMPLATE_CLONE", "name": "Create template clone", "description": "Clone a template by its ID, but cloning fails if account has 1,000+ templates. API limit: 1,000 templates. Rate limits are 10 per second and 150 per minute. Requires `templates:write` scope." }, { "slug": "KLAVIYO_CREATE_TEMPLATE_RENDER", "name": "Create template render", "description": "Render an email template with specific context and sparse fieldsets, then get HTML/plain text. Rate limit: 3/s burst, 60/m steady. Scope: templates:read." }, { "slug": "KLAVIYO_CREATE_WEBHOOK", "name": "Create webhook", "description": "Create a new Webhook to receive real-time notifications when specific events occur in Klaviyo (e.g., email clicks, SMS sent). Rate limits: Burst: 1/s, Steady: 15/m Required scopes: webhooks:write, events:read (for event-based topics) Note: Each Klaviyo account can have a maximum of 10 webhooks." }, { "slug": "KLAVIYO_DELETE_CAMPAIGN", "name": "Delete campaign", "description": "Delete a campaign with the given campaign ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_DELETE_CATALOG_CATEGORY", "name": "Delete catalog category", "description": "Delete a catalog category using the given category ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_DELETE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS", "name": "Delete catalog category relationships items", "description": "Delete item relationships for the given category ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_DELETE_CATALOG_ITEM", "name": "Delete catalog item", "description": "Delete a catalog item with the given item ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_DELETE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES", "name": "Delete catalog item relationships categories", "description": "Delete catalog category relationships for the given item ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_DELETE_CATALOG_VARIANT", "name": "Delete catalog variant", "description": "Delete a catalog item variant with the given variant ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_DELETE_COUPON", "name": "Delete coupon", "description": "Delete the coupon with the given coupon ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`" }, { "slug": "KLAVIYO_DELETE_COUPON_CODE", "name": "Delete coupon code", "description": "Deletes a coupon code specified by the given identifier synchronously. If a profile has been assigned to the coupon code, an exception will be raised

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`" }, { "slug": "KLAVIYO_DELETE_FLOW", "name": "Delete flow", "description": "Delete a flow with the given flow ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:write`" }, { "slug": "KLAVIYO_DELETE_LIST", "name": "Delete list", "description": "Delete a list with the given list ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:write`" }, { "slug": "KLAVIYO_DELETE_SEGMENT", "name": "Delete segment", "description": "Delete a segment with the given segment ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `segments:write`" }, { "slug": "KLAVIYO_DELETE_TAG", "name": "Delete tag", "description": "Delete the tag with the given tag ID. Any associations between the tag and other resources will also be removed.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read` `tags:write`" }, { "slug": "KLAVIYO_DELETE_TAG_GROUP", "name": "Delete tag group", "description": "Delete a specified tag group and its contents; associated resource links will be removed. The default group is undeletable. Rate limits: 3/s burst, 60/m steady. Requires tags:read and tags:write permissions." }, { "slug": "KLAVIYO_DELETE_TAG_RELATIONSHIPS", "name": "Delete Tag Relationships", "description": "Remove a tag's association with other resources like flows, campaigns, lists, or segments. Use when you need to untag resources without deleting the tag itself." }, { "slug": "KLAVIYO_DELETE_TEMPLATE", "name": "Delete template", "description": "Permanently delete a template from your Klaviyo account using its unique template ID. This action is destructive and cannot be undone. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope." }, { "slug": "KLAVIYO_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Permanently delete a webhook subscription from your Klaviyo account. This action removes the webhook configuration, stopping all future event notifications to the webhook's endpoint URL. This operation is irreversible. **Requirements:** - Advanced KDP (Klaviyo Data Platform) must be enabled on your account - API key must have `webhooks:write` scope **Rate limits:** Burst: 1/s, Steady: 15/m **Returns:** HTTP 204 No Content on successful deletion (empty response body)." }, { "slug": "KLAVIYO_GET_ACCOUNT", "name": "Get account", "description": "Retrieve a single account object by its account ID. You can only request the account by which the private API key was generated.

*Rate limits*:
Burst: `1/s`
Steady: `15/m` **Scopes:** `accounts:read`" }, { "slug": "KLAVIYO_GET_ACCOUNTS", "name": "Get accounts", "description": "Use a private API key to fetch an associated account's details like contact info, timezone, and currency, as well as validate the key. Rate limit: 1 request/second, 15 requests/minute. Scope required: `accounts:read`." }, { "slug": "KLAVIYO_GET_BULK_CREATE_COUPON_CODES_JOB", "name": "Get Bulk Create Coupon Codes Job", "description": "Tool to get a coupon code bulk create job with the given job ID. Use when you need to check the status of a previously initiated bulk coupon code creation job. Rate limits: 75/s burst, 700/m steady. Required scope: coupon-codes:read." }, { "slug": "KLAVIYO_GET_BULK_DELETE_CATALOG_ITEMS_JOB", "name": "Get Bulk Delete Catalog Items Job", "description": "Get a catalog item bulk delete job with the given job ID. Use this to check the status and progress of a bulk delete operation for catalog items. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB", "name": "Get bulk profile import job", "description": "Get a bulk profile import job with the given job ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:read` `profiles:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_ERRORS", "name": "Get bulk profile import job errors", "description": "Get import errors for the bulk profile import job with the given ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `profiles:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_LISTS", "name": "Get bulk profile import job lists", "description": "Get list for the bulk profile import job with the given ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_PROFILES", "name": "Get bulk profile import job profiles", "description": "Get profiles for the bulk profile import job with the given ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `profiles:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_RELATIONSHIPS_LISTS", "name": "Get bulk profile import job relationships lists", "description": "Get list relationship for the bulk profile import job with the given ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOB_RELATIONSHIPS_PROFILES", "name": "Get bulk profile import job relationships profiles", "description": "Get profile relationships for the bulk profile import job with the given ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `profiles:read`" }, { "slug": "KLAVIYO_GET_BULK_PROFILE_IMPORT_JOBS", "name": "Get bulk profile import jobs", "description": "Get all bulk profile import jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:read` `profiles:read`" }, { "slug": "KLAVIYO_GET_BULK_UPDATE_CATALOG_ITEMS_JOB", "name": "Get bulk update catalog items job", "description": "Get a catalog item bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`." }, { "slug": "KLAVIYO_GET_BULK_UPDATE_CATEGORIES_JOB", "name": "Get Bulk Update Categories Job", "description": "Retrieve a catalog category bulk update job by its ID from Klaviyo. This action fetches the status and details of a bulk update job for catalog categories, including progress metrics (total, completed, failed counts) and optionally the related category resources. Use this to track the progress of bulk category update operations. Rate limits: 350/s burst, 3500/m steady. Required scope: `catalogs:read`. Preconditions: - Valid API key with catalogs:read scope - Job ID must exist and be accessible" }, { "slug": "KLAVIYO_GET_BULK_UPDATE_VARIANTS_JOB", "name": "Get Bulk Update Variants Job", "description": "Tool to retrieve a catalog variant bulk update job by its ID. Use when you need to check the status, progress, or results of a bulk update operation on catalog variants." }, { "slug": "KLAVIYO_GET_CAMPAIGN", "name": "Get Campaign", "description": "Retrieve a specific campaign by its ID from Klaviyo. This action fetches detailed information about a single campaign including its name, status, audience settings, send strategy, and optionally related messages and tags. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Campaign ID must exist and be accessible" }, { "slug": "KLAVIYO_GET_CAMPAIGN_CAMPAIGN_MESSAGES", "name": "Get campaign campaign messages", "description": "Return all messages that belong to the given campaign.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_MESSAGE", "name": "Get campaign message", "description": "Returns a specific message based on a required id.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_MESSAGE_CAMPAIGN", "name": "Get campaign message campaign", "description": "Return the related campaign

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_MESSAGE_RELATIONSHIPS_CAMPAIGN", "name": "Get campaign message relationships campaign", "description": "Returns the ID of the related campaign

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_MESSAGE_RELATIONSHIPS_TEMPLATE", "name": "Get campaign message relationships template", "description": "Returns the ID of the related template

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_MESSAGE_TEMPLATE", "name": "Get campaign message template", "description": "Return the related template

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read` `templates:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_RECIPIENT_ESTIMATION", "name": "Get campaign recipient estimation", "description": "Get estimated recipients for a given campaign ID using `Create Campaign Recipient Estimation Job`. Rate limits are 10/s burst and 150/m steady. Required scope: `campaigns:read`." }, { "slug": "KLAVIYO_GET_CAMPAIGN_RECIPIENT_ESTIMATION_JOB", "name": "Get campaign recipient estimation job", "description": "Retrieve the status of a recipient estimation job triggered with the `Create Campaign Recipient Estimation Job` endpoint.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_RELATIONSHIPS_CAMPAIGN_MESSAGES", "name": "Get campaign relationships campaign messages", "description": "Returns the IDs of all messages associated with the given campaign.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_RELATIONSHIPS_TAGS", "name": "Get campaign relationships tags", "description": "Returns the IDs of all tags associated with the given campaign.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Retrieve campaigns from your Klaviyo account. This action allows you to fetch campaigns with optional filtering and sorting. Klaviyo requires specifying a channel (email or sms) to list campaigns. You can add additional filters for status, name, creation date, and other attributes. Results are paginated with a default of 10 campaigns per page. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:read`. Preconditions: - Valid API key with campaigns:read scope - Channel must be specified (email or sms) - Additional filter syntax must be valid if provided" }, { "slug": "KLAVIYO_GET_CAMPAIGN_SEND_JOB", "name": "Get campaign send job", "description": "Get a campaign send job

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_GET_CAMPAIGN_TAGS", "name": "Get campaign tags", "description": "Return all tags that belong to the given campaign.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `campaigns:read` `tags:read`" }, { "slug": "KLAVIYO_GET_CATALOG_CATEGORIES", "name": "Get catalog categories", "description": "Retrieve up to 100 account catalog categories, sortable by creation date. Only `$custom` integration and `$default` catalog types supported. Rate limits are 350/s and 3500/m. Requires `catalogs:read` scope." }, { "slug": "KLAVIYO_GET_CATALOG_CATEGORY", "name": "Get catalog category", "description": "Get a catalog category with the given category ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CATALOG_CATEGORY_ITEMS", "name": "Get catalog category items", "description": "Retrieve up to 100 sorted items per request from a category using the category ID. Sort by 'created' field. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope." }, { "slug": "KLAVIYO_GET_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS", "name": "Get catalog category relationships items", "description": "Get all items in the given category ID. Returns a maximum of 100 items per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CATALOG_ITEM", "name": "Get catalog item", "description": "Get a specific catalog item with the given item ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CATALOG_ITEM_CATEGORIES", "name": "Get catalog item categories", "description": "Retrieve the catalog categories for an item by ID, sorted by 'created' date, with a 100-category maximum per request. Rate limits: 350/s burst, 3500/m steady. Requires 'catalogs:read' scope." }, { "slug": "KLAVIYO_GET_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES", "name": "Get catalog item relationships categories", "description": "Get all catalog categories that a particular item is in. Returns a maximum of 100 categories per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CATALOG_ITEMS", "name": "Get catalog items", "description": "Retrieve up to 100 sorted catalog items per account, with `$custom` integration and `$default` type. Rate limits: 350/s burst, 3500/m steady. Scope required: `catalogs:read`." }, { "slug": "KLAVIYO_GET_CATALOG_ITEM_VARIANTS", "name": "Get catalog item variants", "description": "Retrieve up to 100 variants per request for a specific item ID, sortable by creation date. Rate limits are 350/s burst and 3500/m steady. Requires 'catalogs:read' scope." }, { "slug": "KLAVIYO_GET_CATALOG_VARIANT", "name": "Get catalog variant", "description": "Get a catalog item variant with the given variant ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CATALOG_VARIANTS", "name": "Get catalog variants", "description": "Retrieve up to 100 account variants per request, sortable by creation date. Supports only `$custom` integration and `$default` catalog types. Rate limits are 350/s burst and 3500/m steady. Requires `catalogs:read` scope." }, { "slug": "KLAVIYO_GET_COUPON", "name": "Get coupon", "description": "Get a specific coupon with the given coupon ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupons:read`" }, { "slug": "KLAVIYO_GET_COUPON_CODE", "name": "Get coupon code", "description": "Returns a Coupon Code specified by the given identifier.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:read`" }, { "slug": "KLAVIYO_GET_COUPON_CODE_BULK_CREATE_JOB", "name": "Get coupon code bulk create job", "description": "Get a coupon code bulk create job with the given job ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupon-codes:read`" }, { "slug": "KLAVIYO_GET_COUPON_CODE_BULK_CREATE_JOBS", "name": "Get coupon code bulk create jobs", "description": "Get all coupon code bulk create jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupon-codes:read`" }, { "slug": "KLAVIYO_GET_COUPON_CODE_RELATIONSHIPS_COUPON", "name": "Get coupon code relationships coupon", "description": "Gets a list of coupon code relationships associated with the given coupon id

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupon-codes:read`" }, { "slug": "KLAVIYO_GET_COUPON_CODES", "name": "Get coupon codes", "description": "Obtains coupon codes using necessary coupon or profile filters. Rate limits: 350/s, 3500/m. Requires 'coupon-codes:read' scope." }, { "slug": "KLAVIYO_GET_COUPON_CODES_FOR_COUPON", "name": "Get coupon codes for coupon", "description": "Gets a list of coupon codes associated with the given coupon id

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupon-codes:read`" }, { "slug": "KLAVIYO_GET_COUPON_FOR_COUPON_CODE", "name": "Get coupon for coupon code", "description": "Get the coupon associated with a given coupon code ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupons:read`" }, { "slug": "KLAVIYO_GET_COUPON_ID_FOR_COUPON_CODE", "name": "Get Coupon ID for Coupon Code", "description": "Tool to get the coupon relationship associated with a given coupon code ID. Use when you need to find which coupon is associated with a specific coupon code. Rate limits: Burst: 75/s, Steady: 700/m Required scope: coupons:read" }, { "slug": "KLAVIYO_GET_COUPON_RELATIONSHIPS_COUPON_CODES", "name": "Get Coupon Relationships Coupon Codes", "description": "Retrieves the coupon code relationships (resource identifiers) for a given coupon. Returns a list of coupon code IDs associated with the specified coupon, along with pagination links for navigating large result sets. Rate limits: Burst: 75/s, Steady: 700/m Required scopes: coupons:read" }, { "slug": "KLAVIYO_GET_COUPONS", "name": "Get coupons", "description": "Get all coupons in an account. To learn more, see our [Coupons API guide](https://developers.klaviyo.com/en/docs/use_klaviyos_coupons_api).

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `coupons:read`" }, { "slug": "KLAVIYO_GET_CREATE_CATEGORIES_JOB", "name": "Get create categories job", "description": "Get a catalog category bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `categories`.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CREATE_CATEGORIES_JOBS", "name": "Get create categories jobs", "description": "Get all catalog category bulk create jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CREATE_ITEMS_JOB", "name": "Get create items job", "description": "Get a catalog item bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CREATE_ITEMS_JOBS", "name": "Get create items jobs", "description": "Get all catalog item bulk create jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CREATE_VARIANTS_JOB", "name": "Get create variants job", "description": "Get a catalog variant bulk create job with the given job ID. An `include` parameter can be provided to get the following related resource data: `variants`.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_CREATE_VARIANTS_JOBS", "name": "Get create variants jobs", "description": "Get all catalog variant bulk create jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_DELETE_CATEGORIES_JOB", "name": "Get delete categories job", "description": "Get a catalog category bulk delete job with the given job ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_DELETE_CATEGORIES_JOBS", "name": "Get delete categories jobs", "description": "Get all catalog category bulk delete jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_DELETE_ITEMS_JOBS", "name": "Get delete items jobs", "description": "Get all catalog item bulk delete jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_DELETE_VARIANTS_JOB", "name": "Get delete variants job", "description": "Get a catalog variant bulk delete job with the given job ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_DELETE_VARIANTS_JOBS", "name": "Get delete variants jobs", "description": "Get all catalog variant bulk delete jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_EVENT", "name": "Get event", "description": "Get an event with the given event ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `events:read`" }, { "slug": "KLAVIYO_GET_EVENT_METRIC", "name": "Get event metric", "description": "Get the metric for an event with the given event ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `events:read` `metrics:read`" }, { "slug": "KLAVIYO_GET_EVENT_PROFILE", "name": "Get event profile", "description": "Get the profile associated with an event with the given event ID.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `events:read` `profiles:read`" }, { "slug": "KLAVIYO_GET_EVENT_RELATIONSHIPS", "name": "Get Event Relationships", "description": "Get metrics or profile relationships for a specific event. Use when you need to retrieve the metric or profile associated with an event. Rate limits: 350/s burst, 3500/m steady. Required scopes: Events Read, Metrics Read, Profiles Read." }, { "slug": "KLAVIYO_GET_EVENTS", "name": "Get events", "description": "Get all events in an account Requests can be sorted by the following fields: `datetime`, `timestamp` Returns a maximum of 200 events per page.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `events:read`" }, { "slug": "KLAVIYO_GET_FLOW", "name": "Get flow", "description": "Get a flow with the given flow ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_ACTION", "name": "Get flow action", "description": "Get a flow action from a flow with the given flow action ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_ACTION_FOR_MESSAGE", "name": "Get flow action for message", "description": "Get the flow action for a flow message with the given message ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_ACTION_MESSAGES", "name": "Get flow action messages", "description": "Retrieve up to 50 flow messages per request by action ID, sortable by various fields, with ascending/descending options, and paginated using `page[size]` and `page[number]`. Rate limits: 3/s burst, 60/m steady. Scope required: `flows:read`." }, { "slug": "KLAVIYO_GET_FLOW_ACTION_RELATIONSHIPS_FLOW", "name": "Get Parent Flow for Flow Action", "description": "Get the parent flow associated with a given flow action ID. This endpoint returns the flow relationship data for a specific flow action, allowing you to identify which flow contains the specified action. Use cases: - Determine which flow a specific action belongs to - Navigate from an action to its parent flow Rate limits: Burst: 3/s, Steady: 60/m Required scope: flows:read" }, { "slug": "KLAVIYO_GET_FLOW_ACTION_RELATIONSHIPS_MESSAGES", "name": "Get flow action relationships messages", "description": "Retrieves up to 50 flow message relationships per request for a specified flow action ID, with cursor pagination. Rate limits: 3/s burst, 60/min steady. Requires `flows:read` scope." }, { "slug": "KLAVIYO_GET_FLOW_FLOW_ACTIONS", "name": "Get flow flow actions", "description": "Get all flow actions associated with the given flow ID. Returns a maximum of 50 flow actions per request, which can be paginated with cursor-based pagination.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_FOR_FLOW_ACTION", "name": "Get flow for flow action", "description": "Get the flow associated with the given action ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_MESSAGE", "name": "Get flow message", "description": "Get the flow message of a flow with the given message ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_MESSAGE_RELATIONSHIPS_ACTION", "name": "Get flow message relationships action", "description": "Get the flow action relationship for a specific flow message. This returns the parent flow action that contains the specified flow message (e.g., the SEND_EMAIL or SEND_SMS action). Requires a valid flow message ID which can be obtained from GET /api/flow-actions/{id}/flow-messages/. Rate limits: Burst 3/s, Steady 60/m. Required scope: flows:read" }, { "slug": "KLAVIYO_GET_FLOW_MESSAGE_RELATIONSHIPS_TEMPLATE", "name": "Get flow message relationships template", "description": "Returns the ID of the related template

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `templates:read`" }, { "slug": "KLAVIYO_GET_FLOW_MESSAGE_TEMPLATE", "name": "Get flow message template", "description": "Return the related template

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `templates:read`" }, { "slug": "KLAVIYO_GET_FLOW_RELATIONSHIPS_FLOW_ACTIONS", "name": "Get flow relationships flow actions", "description": "Retrieve all flow action relationships for a specific flow ID, sortable by `id`, `status`, `created`, `updated`. Refine with filters, max 50 per page, paginated by `page[size]` and `page[number]`. Rate limits: Burst 3/s, Steady 60/m. Scope: `flows:read`." }, { "slug": "KLAVIYO_GET_FLOW_RELATIONSHIPS_TAGS", "name": "Get flow relationships tags", "description": "Return the tag IDs of all tags associated with the given flow.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read` `tags:read`" }, { "slug": "KLAVIYO_GET_FLOWS", "name": "Get flows", "description": "Get all flows in an account. Returns a maximum of 50 flows per request, which can be paginated with cursor-based pagination.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_GET_FLOW_TAGS", "name": "Get flow tags", "description": "Return all tags associated with the given flow ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `flows:read` `tags:read`" }, { "slug": "KLAVIYO_GET_FORM", "name": "Get form", "description": "Get the form with the given ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_FORM_FOR_FORM_VERSION", "name": "Get form for form version", "description": "Get the form associated with the given form version.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_FORM_ID_FOR_FORM_VERSION", "name": "Get form id for form version", "description": "Get the ID of the form associated with the given form version.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_FORMS", "name": "Get forms", "description": "Get all forms in an account.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_FORM_VERSION", "name": "Get form version", "description": "Retrieve detailed information about a specific form version by its ID. Form versions represent different variations of a Klaviyo sign-up form. A form may have multiple versions for A/B testing (multiple live variations) or draft/live combinations during editing. Use this endpoint to get the full configuration including form type, status, steps, styling, triggers, and other settings. Rate limits: Burst 3/s, Steady 60/m. Required scope: forms:read" }, { "slug": "KLAVIYO_GET_IMAGE", "name": "Get image", "description": "Get the image with the given image ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `images:read`" }, { "slug": "KLAVIYO_GET_IMAGES", "name": "Get images", "description": "Get all images in an account.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `images:read`" }, { "slug": "KLAVIYO_GET_LIST", "name": "Get list", "description": "API allows 75 req/sec and 700 req/min, but with 'profile_count' param, it's 1 req/sec and 15 req/min. 'lists:read' scope needed. See developer guide for details." }, { "slug": "KLAVIYO_GET_LIST_PROFILES", "name": "Get list profiles", "description": "Retrieve profiles in a list by ID, filterable by email/phone/push token/join date, sortable by join date. Regular rate limit: 75/s, 700/m; with predictive analytics: 10/s, 150/m. Details at Klaviyo guide. Scopes required: lists:read, profiles:read." }, { "slug": "KLAVIYO_GET_LIST_RELATIONSHIPS", "name": "Get List Relationships", "description": "Get profile membership relationships for a Klaviyo list. Returns references (IDs) to profiles that are members of the specified list. Use when you need to retrieve which profiles belong to a list without fetching full profile data." }, { "slug": "KLAVIYO_GET_LIST_RELATIONSHIPS_TAGS", "name": "Get list relationships tags", "description": "Returns the tag IDs of all tags associated with the given list.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `lists:read` `tags:read`" }, { "slug": "KLAVIYO_GET_LISTS", "name": "Get Lists", "description": "Retrieve marketing lists from your Klaviyo account. This action allows you to fetch lists with optional filtering and sorting. You can filter by name, creation date, and other attributes. Results are paginated with a default of 10 lists per page. Rate limits: 75/s burst, 700/m steady. Required scope: `lists:read`. Preconditions: - Valid API key with lists:read scope - Filter syntax must be valid if provided" }, { "slug": "KLAVIYO_GET_LIST_TAGS", "name": "Get list tags", "description": "Return all tags associated with the given list ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `lists:read` `tags:read`" }, { "slug": "KLAVIYO_GET_METRIC", "name": "Get metric", "description": "Get a metric with the given metric ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `metrics:read`" }, { "slug": "KLAVIYO_GET_METRICS", "name": "Get metrics", "description": "Get all metrics in an account. Requests can be filtered by the following fields: integration `name`, integration `category` Returns a maximum of 200 results per page.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `metrics:read`" }, { "slug": "KLAVIYO_GET_PROFILE", "name": "Get profile", "description": "Get the profile with the given profile ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `profiles:read`" }, { "slug": "KLAVIYO_GET_PROFILE_LISTS", "name": "Get profile lists", "description": "Get list memberships for a profile with the given profile ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `lists:read` `profiles:read`" }, { "slug": "KLAVIYO_GET_PROFILE_RELATIONSHIPS", "name": "Get Profile Relationships", "description": "Tool to get list membership or segment membership relationships for a profile with the given profile ID. Use when you need to determine which lists or segments a specific profile belongs to." }, { "slug": "KLAVIYO_GET_PROFILES", "name": "Get Profiles", "description": "Retrieve profiles from your Klaviyo account. This action allows you to fetch profiles with optional filtering and sorting. You can filter by email, external_id, creation date, and other attributes. Results are paginated with a configurable page size. Rate limits: 75/s burst, 700/m steady (lower with predictive_analytics). Required scope: `profiles:read`. Preconditions: - Valid API key with profiles:read scope - Filter syntax must be valid if provided - Page size must be between 1 and 100" }, { "slug": "KLAVIYO_GET_PROFILE_SEGMENTS", "name": "Get profile segments", "description": "Get segment memberships for a profile with the given profile ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `profiles:read` `segments:read`" }, { "slug": "KLAVIYO_GET_SEGMENT", "name": "Get segment", "description": "Fetch a segment by ID with default rates of 75/s and 700/m, or with `additional-fields` at 1/s and 15/m. For details, visit the provided guide. Required scope: `segments:read`." }, { "slug": "KLAVIYO_GET_SEGMENT_PROFILES", "name": "Get segment profiles", "description": "Retrieve profiles in a segment by ID, filtering by email, phone, token, or join date, and sorting by join date. Rate limit: 75/s burst, 700/m steady. Requires profiles:read and segments:read scopes." }, { "slug": "KLAVIYO_GET_SEGMENT_RELATIONSHIPS", "name": "Get Segment Relationships", "description": "Get all profile membership or tag relationships for a segment. Use 'profiles' to retrieve profile membership relationships or 'tags' to retrieve tag associations. Rate limits: Burst 75/s, Steady 700/m. Required scopes: profiles:read, segments:read." }, { "slug": "KLAVIYO_GET_SEGMENTS", "name": "Get segments", "description": "Fetch segments from an account with filters like `name`, `created`, and `updated`. Max 10 results/page. Rate limits are 75/s burst, 700/m steady. Requires `segments:read` scope." }, { "slug": "KLAVIYO_GET_SEGMENT_TAGS", "name": "Get segment tags", "description": "Return all tags associated with the given segment ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `segments:read` `tags:read`" }, { "slug": "KLAVIYO_GET_TAG", "name": "Get tag", "description": "Retrieve the tag with the given tag ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read`" }, { "slug": "KLAVIYO_GET_TAG_GROUP", "name": "Get tag group", "description": "Retrieve the tag group with the given tag group ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read`" }, { "slug": "KLAVIYO_GET_TAG_GROUP_RELATIONSHIPS_TAGS", "name": "Get tag group relationships tags", "description": "Returns the tag IDs of all tags inside the given tag group.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read`" }, { "slug": "KLAVIYO_GET_TAG_GROUPS", "name": "Get tag groups", "description": "Retrieve up to 25 tag groups per account, sortable/filterable by specific attributes. Default group included. Supports cursor pagination and adheres to rate limits of 3 requests per second and 60 per minute. Requires `tags:read` scope." }, { "slug": "KLAVIYO_GET_TAG_GROUP_TAGS", "name": "Get tag group tags", "description": "Return the tags for a given tag group ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read`" }, { "slug": "KLAVIYO_GET_TAG_RELATIONSHIPS", "name": "Get Tag Relationships", "description": "Tool to retrieve relationship IDs for a tag. Returns the IDs of related resources (campaigns, flows, lists, segments, or tag-group) associated with a specific tag. The response format varies based on the related_resource type: - For collections (campaigns, flows, lists, segments): returns an array of resource identifiers - For tag-group: returns a single resource identifier object Rate limits: 3/s burst, 60/m steady. Required scopes: tags:read and scope for the related resource type." }, { "slug": "KLAVIYO_GET_TAGS", "name": "Get tags", "description": "Retrieve up to 50 account tags at once, filterable/sortable by name or id, with cursor pagination. Rate limits: 3/s burst, 60/m steady. Requires `tags:read` scope." }, { "slug": "KLAVIYO_GET_TAG_TAG_GROUP", "name": "Get tag tag group", "description": "Returns the tag group resource for a given tag ID.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read`" }, { "slug": "KLAVIYO_GET_TEMPLATE", "name": "Get template", "description": "Get a template with the given template ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `templates:read`" }, { "slug": "KLAVIYO_GET_TEMPLATES", "name": "Get templates", "description": "Retrieve account templates with sorting options (`id`, `name`, `created`, `updated`). Limit of 10 results per page, rate limits at 10/s burst and 150/m steady. Requires `templates:read` scope." }, { "slug": "KLAVIYO_GET_UPDATE_CATEGORIES_JOBS", "name": "Get update categories jobs", "description": "Get all catalog category bulk update jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_UPDATE_ITEMS_JOB", "name": "Get update items job", "description": "Get a catalog item bulk update job with the given job ID. An `include` parameter can be provided to get the following related resource data: `items`.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_UPDATE_ITEMS_JOBS", "name": "Get update items jobs", "description": "Get all catalog item bulk update jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_UPDATE_VARIANTS_JOBS", "name": "Get update variants jobs", "description": "Get all catalog variant bulk update jobs. Returns a maximum of 100 jobs per request.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `catalogs:read`" }, { "slug": "KLAVIYO_GET_VARIANT_IDS_FOR_CATALOG_ITEM", "name": "Get Variant IDs for Catalog Item", "description": "Tool to get all variant IDs related to a given catalog item ID. Returns a maximum of 100 variants per request. Use when you need to retrieve variant IDs without fetching full variant data. Supports filtering and sorting by creation date." }, { "slug": "KLAVIYO_GET_VERSION_IDS_FOR_FORM", "name": "Get version ids for form", "description": "Get the IDs of the form versions for the given form.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_VERSIONS_FOR_FORM", "name": "Get versions for form", "description": "Get the form versions for the given form.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `forms:read`" }, { "slug": "KLAVIYO_GET_WEBHOOK", "name": "Get webhook", "description": "Get the webhook with the given ID.

*Rate limits*:
Burst: `1/s`
Steady: `15/m` **Scopes:** `webhooks:read`" }, { "slug": "KLAVIYO_GET_WEBHOOKS", "name": "Get webhooks", "description": "Get all webhooks in an account.

*Rate limits*:
Burst: `1/s`
Steady: `15/m` **Scopes:** `webhooks:read`" }, { "slug": "KLAVIYO_GET_WEBHOOK_TOPIC", "name": "Get webhook topic", "description": "Retrieve details of a specific webhook topic by its ID. Webhook topics define the events that can trigger webhooks (e.g., email_delivered, sent_sms). Use this to get the human-readable name and metadata for a specific topic. Rate limits: Burst 1/s, Steady 15/m. Required scope: webhooks:read" }, { "slug": "KLAVIYO_GET_WEBHOOK_TOPICS", "name": "Get webhook topics", "description": "Get all webhook topics in a Klaviyo account.

*Rate limits*:
Burst: `1/s`
Steady: `15/m` **Scopes:** `webhooks:read`" }, { "slug": "KLAVIYO_MERGE_PROFILES", "name": "Merge profiles", "description": "Merge one or more source profiles into a destination profile. The source profile(s) data (events, attributes, list memberships) will be transferred to the destination, and the source profile(s) will be deleted. This operation is queued asynchronously and returns HTTP 202 Accepted. Rate limits: 10/s burst, 150/m steady. Requires `profiles:write` scope." }, { "slug": "KLAVIYO_QUERY_CAMPAIGN_VALUES", "name": "Query campaign values", "description": "Returns the requested campaign analytics values data

*Rate limits*:
Burst: `1/s`
Steady: `2/m`
Daily: `225/d` **Scopes:** `campaigns:read`" }, { "slug": "KLAVIYO_QUERY_FLOW_SERIES", "name": "Query flow series", "description": "Returns time-series analytics data for flows, enabling performance tracking over time intervals. Use this to analyze flow metrics like open rates, click rates, conversions, and delivery statistics. Rate limits: Burst 1/s, Steady 2/m, Daily 225/d. Scopes: flows:read" }, { "slug": "KLAVIYO_QUERY_FLOW_VALUES", "name": "Query flow values", "description": "Returns the requested flow analytics values data

*Rate limits*:
Burst: `1/s`
Steady: `2/m`
Daily: `225/d` **Scopes:** `flows:read`" }, { "slug": "KLAVIYO_QUERY_METRIC_AGGREGATES", "name": "Query metric aggregates", "description": "The Klaviyo endpoint fetches metric events, handling JSON requests for custom data queries, sorting, and filtering; offers grouping and time-based filters; requires adherence to rate limits (3 requests per second, 60 per minute) under 'metrics:read'." }, { "slug": "KLAVIYO_REMOVE_PROFILE_FROM_LIST", "name": "Remove Profile from List", "description": "Remove profiles from a Klaviyo list by profile IDs or email addresses. This action removes profiles from a marketing list without affecting their overall consent status. Use the Unsubscribe Profiles action for complete unsubscribing. You can remove up to 1000 profiles per call. Rate limits: 10/s burst, 150/m steady. Required scopes: `lists:write` and `profiles:write`. Preconditions: - Either profile_ids or emails must be provided (not both) - Maximum 1000 profiles per call - Email addresses must be valid format - The list must exist and be accessible" }, { "slug": "KLAVIYO_REQUEST_PROFILE_DELETION", "name": "Request profile deletion", "description": "To delete a profile, use only one identifier: email, phone number, or ID. Requests are asynchronous and can be tracked. Ensure legal compliance; refer to docs. Rate limits: 3 per second, 60 per minute." }, { "slug": "KLAVIYO_SPAWN_BULK_PROFILE_IMPORT_JOB", "name": "Spawn bulk profile import job", "description": "Initiate a job to create/update a batch of profiles, up to 10,000 with a max size of 5MB per request. Rate limits: 10/s burst, 150/m steady. Requires `lists:write` and `profiles:write` scopes. More info in the Bulk Profile Import API guide." }, { "slug": "KLAVIYO_SPAWN_COUPON_CODE_BULK_CREATE_JOB", "name": "Spawn coupon code bulk create job", "description": "Create a coupon-code-bulk-create-job to bulk create a list of coupon codes. Max 1000 coupon codes per job. Max 100 jobs queued at once. Rate limits: Burst 75/s, Steady 700/m. Scopes: coupon-codes:write. Returns a job ID that can be used to query the job status via the get_coupon_code_bulk_create_job endpoint." }, { "slug": "KLAVIYO_SPAWN_CREATE_CATEGORIES_JOB", "name": "Spawn create categories job", "description": "Create bulk job for up to 100 catalog categories with a 5MB size limit and a max of 500 concurrent jobs. Rate limits: 75/s burst, 700/m steady. Requires 'catalogs:write' scope." }, { "slug": "KLAVIYO_SPAWN_CREATE_ITEMS_JOB", "name": "Spawn create items job", "description": "Create batches of up to 100 catalog items with a 5MB size limit using the bulk job, which allows 500 concurrent jobs. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SPAWN_CREATE_VARIANTS_JOB", "name": "Spawn create variants job", "description": "Initiate a job to bulk create up to 100 catalog variants, with a 5MB payload size limit. A max of 500 jobs can run concurrently. Rate limits are 75/s burst and 700/m steady. Requires 'catalogs:write' scope." }, { "slug": "KLAVIYO_SPAWN_DELETE_CATEGORIES_JOB", "name": "Spawn delete categories job", "description": "Delete multiple catalog categories in bulk, with a limit of 100 per request and a 5MB payload size. A maximum of 500 concurrent jobs permitted. Rate limits are 75/s burst and 700/min steady. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SPAWN_DELETE_ITEMS_JOB", "name": "Spawn delete items job", "description": "Delete batches of catalog items with a bulk job, max 100 items/request, 5MB size limit, and up to 500 concurrent jobs. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SPAWN_DELETE_VARIANTS_JOB", "name": "Spawn delete variants job", "description": "Delete multiple catalog variants with a bulk job, max 100 per request, 5MB size limit. Only 500 jobs can run concurrently. Rate limits: 75/s burst, 700/m steady. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SPAWN_UPDATE_CATEGORIES_JOB", "name": "Spawn update categories job", "description": "Create a job to bulk update up to 100 categories, with a 5MB size limit and a maximum of 500 concurrent jobs. Burst rate limit is 75/s, steady is 700/m. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SPAWN_UPDATE_ITEMS_JOB", "name": "Spawn update items job", "description": "You can bulk update up to 100 catalog items with a 5MB payload limit. A max of 500 jobs can run concurrently. Rate limits are 75 requests/second and 700 requests/minute. Required scope: `catalogs:write`." }, { "slug": "KLAVIYO_SPAWN_UPDATE_VARIANTS_JOB", "name": "Spawn update variants job", "description": "Create a job to bulk update up to 100 catalog variants with a 5MB payload limit. A max of 500 jobs may run concurrently. Rate limits are 75/s burst and 700/m steady. Requires `catalogs:write` scope." }, { "slug": "KLAVIYO_SUBSCRIBE_PROFILES", "name": "Subscribe profiles", "description": "The API supports double opt-in for marketing, with 'historical_import' bypassing consent. It resets opt-outs for returning users. Caps at 1000 profiles, 75/s, and 700/min. Needs 'lists:write', 'profiles:write', 'subscriptions:write' permissions." }, { "slug": "KLAVIYO_SUPPRESS_PROFILES", "name": "Suppress profiles", "description": "Suppress profiles by email, segment, or list ID to stop email marketing, regardless of consent. View guides for details. Max 100 emails per request, with rate limits of 75/s and 700/m. Scopes: profiles:write, subscriptions:write." }, { "slug": "KLAVIYO_UNREGISTER_CLIENT_PUSH_TOKEN", "name": "Unregister client push token", "description": "This endpoint unsubscribes a push token, for use with Klaviyo's mobile SDKs and a public API key. Push notifications must be on. Rate limits are 3/s and 60/m." }, { "slug": "KLAVIYO_UNSUBSCRIBE_PROFILES", "name": "Unsubscribe profiles", "description": "Opt-out profiles from email or SMS marketing. Unsubscribe up to 100 profiles at a time with burst (75/s) and steady (700/m) rate limits. Use different method to remove without affecting subscriptions. More on consent and removal in the provided links." }, { "slug": "KLAVIYO_UNSUBSCRIBE_PROFILES_BULK", "name": "Unsubscribe Profiles Bulk", "description": "Tool to unsubscribe one or more profiles from a Klaviyo list. Use when you need to bulk unsubscribe up to 100 profiles from email or SMS marketing for a specific list." }, { "slug": "KLAVIYO_UNSUPPRESS_PROFILES", "name": "Unsuppress profiles", "description": "Remove 'USER_SUPPRESSED' blocks on profiles manually via email, segment, or list ID. Does not affect unsubscribes or other suppressions. Limits: 100 emails per request, 75/s burst, 700/m steady. Scope: 'subscriptions:write'." }, { "slug": "KLAVIYO_UNSUPPRESS_PROFILES_BULK", "name": "Unsuppress Profiles (Bulk)", "description": "Tool to unsuppress one or more profiles from email marketing by email address. Use when you need to remove USER_SUPPRESSED status from profiles. This only removes suppressions with reason USER_SUPPRESSED; profiles with HARD_BOUNCE or INVALID_EMAIL suppressions remain unchanged. Returns a job object that can be monitored for completion status." }, { "slug": "KLAVIYO_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Update a campaign with the specified attributes. This action allows you to modify campaign settings including name, audiences, and send strategy. Only the fields you provide will be updated; others remain unchanged. Rate limits: 10/s burst, 150/m steady. Required scope: `campaigns:write`. Preconditions: - Valid API key with campaigns:write scope - Campaign ID must exist and be accessible - Campaign must be in a state that allows updates (usually draft status) - Send strategy options must match the selected method" }, { "slug": "KLAVIYO_UPDATE_CAMPAIGN_MESSAGE", "name": "Update campaign message", "description": "Update a campaign message

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `campaigns:write`" }, { "slug": "KLAVIYO_UPDATE_CATALOG_CATEGORY", "name": "Update catalog category", "description": "Update a catalog category with the given category ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_UPDATE_CATALOG_CATEGORY_RELATIONSHIPS", "name": "Update Catalog Category Relationships", "description": "Tool to update item relationships for a catalog category. Replaces all existing item relationships with the provided list. Use when you need to associate catalog items with a category or remove existing associations. Pass an empty data array to remove all item relationships from the category. Rate limits: 75/s burst, 700/m steady. Required scope: catalogs:write." }, { "slug": "KLAVIYO_UPDATE_CATALOG_CATEGORY_RELATIONSHIPS_ITEMS", "name": "Update catalog category relationships items", "description": "Update item relationships for the given category ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_UPDATE_CATALOG_ITEM", "name": "Update catalog item", "description": "Update a catalog item with the given item ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_UPDATE_CATALOG_ITEM_RELATIONSHIPS_CATEGORIES", "name": "Update catalog item relationships categories", "description": "Update catalog category relationships for the given item ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_UPDATE_CATALOG_VARIANT", "name": "Update catalog variant", "description": "Update a catalog item variant with the given variant ID.

*Rate limits*:
Burst: `75/s`
Steady: `700/m` **Scopes:** `catalogs:write`" }, { "slug": "KLAVIYO_UPDATE_COUPON", "name": "Update coupon", "description": "Update an existing coupon's properties. Currently, only the coupon description can be updated. The coupon ID (external_id) cannot be changed after creation. *Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `coupons:write`" }, { "slug": "KLAVIYO_UPDATE_COUPON_CODE", "name": "Update coupon code", "description": "Updates a coupon code specified by the given identifier synchronously. We allow updating the 'status' and 'expires_at' of coupon codes.

*Rate limits*:
Burst: `350/s`
Steady: `3500/m` **Scopes:** `coupon-codes:write`" }, { "slug": "KLAVIYO_UPDATE_FLOW_STATUS", "name": "Update flow status", "description": "Update the status of a flow with the given flow ID, and all actions in that flow. Flow statuses: - 'draft': Flow is disabled; no messages will be sent - 'manual': Messages require manual approval before sending - 'live': Messages are sent automatically when triggered Rate limits: Burst: 3/s, Steady: 60/m Required scope: flows:write" }, { "slug": "KLAVIYO_UPDATE_IMAGE", "name": "Update image", "description": "Update the image with the given image ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `images:write`" }, { "slug": "KLAVIYO_UPDATE_LIST", "name": "Update list", "description": "Update the name of a list with the given list ID.

*Rate limits*:
Burst: `10/s`
Steady: `150/m` **Scopes:** `lists:write`" }, { "slug": "KLAVIYO_UPDATE_PROFILE", "name": "Update profile", "description": "Update profiles with the provided ID. Setting fields to `null` clears them; omitting fields retains existing data. Rate limits: 75/s burst, 700/m steady. Required scope: `profiles:write`." }, { "slug": "KLAVIYO_UPDATE_SEGMENT", "name": "Update segment", "description": "Update a segment with the given segment ID.

*Rate limits*:
Burst: `1/s`
Steady: `15/m`
Daily: `100/d` **Scopes:** `segments:write`" }, { "slug": "KLAVIYO_UPDATE_TAG", "name": "Update tag", "description": "Update the tag with the given tag ID. Only a tag's `name` can be changed. A tag cannot be moved from one tag group to another. **Important**: The `data__id` in the request body must match the `id` path parameter. Returns HTTP 204 No Content on success. *Rate limits*: Burst: `3/s` | Steady: `60/m` **Scopes:** `tags:read` `tags:write`" }, { "slug": "KLAVIYO_UPDATE_TAG_GROUP", "name": "Update tag group", "description": "Update the tag group with the given tag group ID. Only a tag group's `name` can be changed. A tag group's `exclusive` or `default` value cannot be changed.

*Rate limits*:
Burst: `3/s`
Steady: `60/m` **Scopes:** `tags:read` `tags:write`" }, { "slug": "KLAVIYO_UPDATE_TEMPLATE", "name": "Update template", "description": "Update an existing email template by ID. Supports updating name, HTML content, and plaintext content. Note: This action only works with CODE editor type templates; drag & drop templates cannot be updated via API. Rate limits: Burst 10/s, Steady 150/m. Requires 'templates:write' scope." }, { "slug": "KLAVIYO_UPDATE_WEBHOOK", "name": "Update webhook", "description": "Update the webhook with the given ID.

*Rate limits*:
Burst: `1/s`
Steady: `15/m` **Scopes:** `webhooks:write`" }, { "slug": "KLAVIYO_UPLOAD_IMAGE_FROM_FILE", "name": "Upload image from file", "description": "Upload an image from a file. If you want to import an image from an existing url or a data uri, use the Upload Image From URL endpoint instead.

*Rate limits*:
Burst: `3/s`
Steady: `100/m`
Daily: `100/d` **Scopes:** `images:write`" }, { "slug": "KLAVIYO_UPLOAD_IMAGE_FROM_URL", "name": "Upload image from url", "description": "Import an image from a url or data uri. If you want to upload an image from a file, use the Upload Image From File endpoint instead.

*Rate limits*:
Burst: `3/s`
Steady: `100/m`
Daily: `100/d` **Scopes:** `images:write`" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "klaviyo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "accounts:read,campaigns:read,campaigns:write,conversations:read,conversations:write,catalogs:read,catalogs:write,coupons:read,coupons:write,coupon-codes:read,coupon-codes:write,data-privacy:read,data-privacy:write,events:read,events:write,flows:read,flows:write,images:read,images:write,lists:read,lists:write,metrics:read,metrics:write,profiles:read,profiles:write,push-tokens:read,push-tokens:write,segments:read,segments:write,subscriptions:read,subscriptions:write,tags:read,tags:write,templates:read,templates:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your private Klaviyo API key (starts with 'pk_', not the public Site ID). Create it under your account name → Settings → API keys — it's shown only once, so copy it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browserbase_tool", "name": "Browserbase", "logo": "https://logos.composio.dev/api/browserbase_tool", "description": "Browserbase is a serverless platform that enables developers to run, manage, and monitor headless browsers at scale, offering seamless integration with tools like Playwright, Puppeteer, and Selenium.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BROWSERBASE_TOOL_CONTEXTS_CREATE", "name": "Create a new browser context", "description": "Tool to create a new browser context. Use when you need to obtain upload credentials for a custom user-data-directory in a project." }, { "slug": "BROWSERBASE_TOOL_CONTEXTS_GET", "name": "Retrieve a browser context", "description": "Tool to retrieve details of a specific browser context. Use when you have a context ID and need its metadata." }, { "slug": "BROWSERBASE_TOOL_CONTEXTS_UPDATE", "name": "Update Browser Context", "description": "Tool to update a specific browser context. Use when you need fresh upload URL and encryption details for an existing context, after obtaining a valid context ID." }, { "slug": "BROWSERBASE_TOOL_CREATE_BROWSER_SESSION", "name": "Create Browser Session", "description": "Tool to create a new browser session. Use when you need an isolated browser context before performing any page interactions." }, { "slug": "BROWSERBASE_TOOL_DELETE_CONTEXT", "name": "Delete a browser context", "description": "Tool to delete a browser context and all its stored data (cookies, localStorage, etc.). Use when you need to permanently remove a context." }, { "slug": "BROWSERBASE_TOOL_DELETE_EXTENSION", "name": "Delete a browser extension", "description": "Tool to delete an uploaded browser extension by its ID. Use when you need to remove an extension from Browserbase." }, { "slug": "BROWSERBASE_TOOL_DELETE_SESSION_DOWNLOADS", "name": "Delete Session Downloads", "description": "Tool to delete all file downloads from a specific browser session. Use when you need to clean up session artifacts or free storage space." }, { "slug": "BROWSERBASE_TOOL_GET_EXTENSION", "name": "Retrieve a browser extension", "description": "Tool to retrieve details of a specific browser extension. Use when you have an extension ID and need its metadata (file name, timestamps, project ID)." }, { "slug": "BROWSERBASE_TOOL_GET_PROJECT", "name": "Retrieve a project", "description": "Tool to retrieve details of a specific project including settings and configuration. Use when you have a project ID and need its metadata." }, { "slug": "BROWSERBASE_TOOL_GET_PROJECT_USAGE", "name": "Get project usage statistics", "description": "Tool to retrieve usage statistics for a project including browser minutes and proxy bytes consumed. Use when you need to monitor or track resource usage for a specific project." }, { "slug": "BROWSERBASE_TOOL_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects for the authenticated account. Use when you need to retrieve all projects associated with the current API key." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_GET", "name": "Retrieve a browser session", "description": "Tool to retrieve details of a specific browser session. Use when you have a session ID and need its metadata (status, URLs, timestamps)." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_GET_DEBUG", "name": "Retrieve Session Debug URLs", "description": "Tool to retrieve live debug URLs for a specific session. Use when you need to connect to a running session for debugging." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_GET_DOWNLOADS", "name": "Download Session Artifacts", "description": "Tool to download files from a specific session. Use after session completion to retrieve all generated artifacts in a ZIP archive." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_GET_LOGS", "name": "Retrieve Session Logs", "description": "Tool to retrieve logs of a specific session. Use after actions in a session to inspect network events and data exchange." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_LIST", "name": "List Browser Sessions", "description": "Tool to list all browser sessions. Use when you need to retrieve sessions with optional filtering by status or metadata query." }, { "slug": "BROWSERBASE_TOOL_SESSIONS_UPDATE", "name": "Update Browser Session", "description": "Tool to update the status of a specific browser session. Use when you need to request session completion before timeout to avoid additional charges." }, { "slug": "BROWSERBASE_TOOL_UPLOAD_EXTENSION", "name": "Upload Browser Extension", "description": "Tool to upload a browser extension for use in sessions. Supports Chrome extension format (ZIP). Use when you need to add custom browser extensions to your Browserbase project." }, { "slug": "BROWSERBASE_TOOL_UPLOAD_SESSION_FILE", "name": "Upload File to Session", "description": "Tool to upload files to a browser session for file input operations. Use when you need to make files available for file input fields or downloads within a browser automation session." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "browserbase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Browserbase API Key", "type": "string", "description": "Your Browserbase API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailchimp", "name": "Mailchimp", "logo": "https://logos.composio.dev/api/mailchimp", "description": "Mailchimp is an email marketing and automation platform providing campaign templates, audience segmentation, and performance analytics to drive engagement and conversions", "category": "email newsletters", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 275, "triggerCount": 4, "version": "20260703_00", "tools": [ { "slug": "MAILCHIMP_ADD_AUTOMATION", "name": "Add automation", "description": "Create a new classic abandoned cart automation in your Mailchimp account. This action creates an automation workflow that sends emails to customers who have abandoned their shopping cart. Requires a connected e-commerce store and an audience/list. Prerequisites: - A Mailchimp audience/list (use MAILCHIMP_ADD_LIST or MAILCHIMP_GET_LISTS_INFO) - A connected e-commerce store (use MAILCHIMP_ADD_STORE or MAILCHIMP_LIST_STORES) Note: Classic automations are only available to paid Mailchimp accounts that have previously created a classic automation. Currently only the 'abandonedCart' workflow type is supported via the API." }, { "slug": "MAILCHIMP_ADD_BATCH_WEBHOOK", "name": "Add batch webhook", "description": "Configure a webhook that will fire whenever any batch request completes processing. You may only have a maximum of 20 batch webhooks." }, { "slug": "MAILCHIMP_ADD_CAMPAIGN", "name": "Add campaign", "description": "Create a new Mailchimp campaign." }, { "slug": "MAILCHIMP_ADD_CAMPAIGN_FEEDBACK", "name": "Add Campaign Feedback", "description": "Add feedback on a specific Mailchimp campaign. Use this to post comments, notes, or feedback while collaborating on a campaign with your team. The feedback can be associated with a specific content block or applied to the campaign as a whole." }, { "slug": "MAILCHIMP_ADD_CAMPAIGN_FOLDER", "name": "Add campaign folder", "description": "Create a new campaign folder to organize email campaigns in Mailchimp. Campaign folders help organize your email marketing campaigns into logical groups. Returns the created folder's ID, name, and initial campaign count (0)." }, { "slug": "MAILCHIMP_ADD_CART", "name": "Add cart", "description": "Add a new cart to a store." }, { "slug": "MAILCHIMP_ADD_CART_LINE_ITEM", "name": "Add cart line item", "description": "Add a new line item to an existing cart." }, { "slug": "MAILCHIMP_ADD_CONNECTED_SITE", "name": "Add connected site", "description": "Create a new Mailchimp connected site. Connected sites allow you to track website visitor activity and integrate with Mailchimp's marketing features. After adding a connected site, you'll receive a tracking script (site_script) that should be installed on your website to enable visitor tracking." }, { "slug": "MAILCHIMP_ADD_CONTACT_TO_AUDIENCE", "name": "Add contact to audience", "description": "Tool to create a new omni-channel contact in a Mailchimp audience. Use when adding contacts with email and/or SMS channels to an audience." }, { "slug": "MAILCHIMP_ADD_DOMAIN_TO_ACCOUNT", "name": "Add domain to account", "description": "Add a sending domain to the Mailchimp account for email verification. This action adds a new domain to your Mailchimp account and initiates the verification process by sending a verification code to the specified email address. After calling this action, use the 'verify_domain' action with the received verification code to complete the domain verification process." }, { "slug": "MAILCHIMP_ADD_EVENT", "name": "Add event", "description": "Add an event for a list member. Use this action to track contact activity and behavior outside of email campaigns. Events can be used for segmentation and triggering automation workflows. Common use cases: - Track purchases, signups, or page visits - Record custom milestones or achievements - Import historical events with is_syncing=true to avoid triggering automations Note: Returns 204 No Content on success (empty response body)." }, { "slug": "MAILCHIMP_ADD_EXPORT", "name": "Add export", "description": "Create a new account export in your Mailchimp account. This action initiates an export of your Mailchimp account data as a downloadable ZIP file. The export runs in the background and may take from a few minutes to several hours depending on account size. Use the 'get_account_export_info' action with the returned export_id to check progress and retrieve the download URL. Important limitations: - Only one export can run at a time per account - Only one export can be created per 24-hour period - Completed exports are available for download for 90 days" }, { "slug": "MAILCHIMP_ADD_FILE", "name": "Upload File to File Manager", "description": "Upload a new image or file to the Mailchimp File Manager. Use this action to upload files (images, documents, etc.) that can be used in campaigns, templates, or signup forms. The file must be base64-encoded and under 10MB. Supported image types: jpg, jpeg, gif, png, svg. Supported document types: pdf, txt, csv, and more. The uploaded file will be available at the returned full_size_url for use in your content." }, { "slug": "MAILCHIMP_ADD_FOLDER", "name": "Add folder", "description": "Create a new folder in the File Manager to organize uploaded files. Use this action to create organizational folders in the Mailchimp File Manager. Folders help organize images and other files that can be used in campaigns and templates." }, { "slug": "MAILCHIMP_ADD_INTEREST_CATEGORY", "name": "Add interest category", "description": "Create a new interest category." }, { "slug": "MAILCHIMP_ADD_INTEREST_IN_CATEGORY", "name": "Add interest in category", "description": "Create a new interest or 'group name' for a specific category." }, { "slug": "MAILCHIMP_ADD_LANDING_PAGE", "name": "Add landing page", "description": "Create a new Mailchimp landing page. Creates an unpublished landing page that can be customized and published later. Requires either a list_id or use_default_list=true. The landing page type can be 'signup' (for email list signups) or 'product' (for product promotions, requires store_id)." }, { "slug": "MAILCHIMP_ADD_LIST", "name": "Add list", "description": "Create a new audience (list) in your Mailchimp account. This endpoint creates a new audience/list for managing email contacts. Each audience has unique settings for campaigns, permissions, and contact information. Note: Free Mailchimp accounts are limited to 1 audience. Paid plans allow multiple audiences. Required fields include: name, contact information (company, address1, city, country), permission_reminder, and campaign defaults (from_name, from_email, subject, language)." }, { "slug": "MAILCHIMP_ADD_MEMBER_NOTE", "name": "Add member note", "description": "Add a new note for a specific subscriber in a Mailchimp list (audience). Notes are useful for keeping internal records about contacts, such as conversation history, preferences, or other relevant information." }, { "slug": "MAILCHIMP_ADD_MEMBER_TO_SEGMENT", "name": "Add member to segment", "description": "Add an existing list member to a static segment (tag) in Mailchimp. This action adds a subscriber who is already a member of the specified list to a static segment. Static segments are also referred to as tags in Mailchimp's UI. Important notes: - The subscriber must already exist in the list before they can be added to a segment. - This only works with static segments, not saved segments that use conditions. - To add a member to a list first, use the Add Member To List action." }, { "slug": "MAILCHIMP_ADD_MERGE_FIELD", "name": "Add merge field", "description": "Add a new merge field for a specific audience." }, { "slug": "MAILCHIMP_ADD_ORDER_LINE_ITEM", "name": "Add order line item", "description": "Add a new line item to an existing order in a Mailchimp e-commerce store. Prerequisites: The store, order, product, and product variant must already exist. Use MAILCHIMP_ADD_STORE, MAILCHIMP_ADD_ORDER, and MAILCHIMP_ADD_PRODUCT to create them first if needed." }, { "slug": "MAILCHIMP_ADD_OR_REMOVE_MEMBER_TAGS", "name": "Add or remove member tags", "description": "Add or remove tags from a list member. Tags help organize and segment your audience. Use 'status': 'active' to add a tag, or 'status': 'inactive' to remove it. If a tag doesn't exist and status is 'active', a new tag will be created. Note: Only explicitly referenced tags are updated. Sending this request does not affect tags not mentioned in the request. This endpoint returns 204 No Content on success." }, { "slug": "MAILCHIMP_ADD_OR_UPDATE_CUSTOMER", "name": "Add or update customer", "description": "Add or update a customer in a Mailchimp e-commerce store. This endpoint uses PUT semantics - if the customer exists, it will be updated; if not, a new customer will be created. The customer_id in the path and the id in the request body should match. Customers are linked to Mailchimp list members by email address." }, { "slug": "MAILCHIMP_ADD_OR_UPDATE_LIST_MEMBER", "name": "Add or update list member", "description": "Add or update a list member (subscriber) in a Mailchimp audience/list. This is an upsert operation: if the subscriber exists, they will be updated; if not, they will be created. The subscriber_hash parameter should be the MD5 hash of the lowercase email address. Note: If the list has required merge fields, use skip_merge_validation=true to bypass validation, or provide the required merge_fields values." }, { "slug": "MAILCHIMP_ADD_OR_UPDATE_PRODUCT_VARIANT", "name": "Add or update product variant", "description": "Add a new product variant or update an existing one in a Mailchimp e-commerce store. This endpoint uses PUT for an upsert operation - if the variant exists, it will be updated; if not, a new variant will be created. The variant_id in the URL path and the id in the request body should match. Product variants require inventory_quantity > 0 for product recommendations to work properly." }, { "slug": "MAILCHIMP_ADD_PRODUCT", "name": "Add product", "description": "Add a new product to a Mailchimp e-commerce store. Products are e-commerce items that can be added to carts and orders. Each product requires at least one variant. Products must be created before they can be included in carts or orders. For product recommendations to work properly, ensure products have a valid image_url and variants have inventory_quantity > 0." }, { "slug": "MAILCHIMP_ADD_PRODUCT_IMAGE", "name": "Add product image", "description": "Add a new image to a product in a Mailchimp e-commerce store. The image must be hosted at a publicly accessible URL. You can optionally associate the image with specific product variants." }, { "slug": "MAILCHIMP_ADD_PROMO_CODE", "name": "Add promo code", "description": "Add a new promo code to an e-commerce store under an existing promo rule. A promo code contains the actual discount code that customers can apply at checkout, along with a redemption URL. You must first create a promo rule (which defines the discount type, amount, and target) before you can add promo codes to it." }, { "slug": "MAILCHIMP_ADD_PROMO_RULE", "name": "Add promo rule", "description": "Add a new promo rule to a store. Promo rules define the parameters for promotional discounts such as percentage off, fixed amount off, or free shipping. After creating a promo rule, you can create promo codes under it using the Add Promo Code endpoint." }, { "slug": "MAILCHIMP_ADD_SEGMENT", "name": "Add segment", "description": "Create a new segment in a specific Mailchimp list/audience. Segments can be either static (based on a list of specific email addresses) or saved (based on matching conditions). For static segments, provide static_segment with email addresses. For saved segments, provide options_match and options_conditions to define the segment criteria. Note: static_segment and options fields are mutually exclusive - use one or the other." }, { "slug": "MAILCHIMP_ADD_STORE", "name": "Add store", "description": "Add a new store to your Mailchimp account." }, { "slug": "MAILCHIMP_ADD_SUBSCRIBER_TO_WORKFLOW_EMAIL", "name": "Add subscriber to workflow email", "description": "Manually add a subscriber to a classic automation workflow email queue, bypassing the default trigger settings. This action allows you to: - Add a list member to a specific automation email's queue - Trigger a series of automated emails in an API 3.0 workflow type - Bypass the normal trigger conditions for an automation Note: The subscriber must be a member of the list associated with the automation workflow. Returns HTTP 204 No Content on success." }, { "slug": "MAILCHIMP_ADD_TEMPLATE", "name": "Add template", "description": "Create a new email template in the Mailchimp account. Templates can be used to create consistent email campaigns. Only Classic (HTML) templates are supported through this API endpoint. The template HTML can include Mailchimp merge tags (e.g., *|FNAME|*) for personalization." }, { "slug": "MAILCHIMP_ADD_TEMPLATE_FOLDER", "name": "Add Template Folder", "description": "Create a new template folder in Mailchimp. Template folders help organize your email templates. Use this action to create a new folder, then add templates to it using the folder's ID." }, { "slug": "MAILCHIMP_ADD_WEBHOOK", "name": "Add webhook", "description": "Create a new webhook for a specific Mailchimp audience/list. Creates a webhook that will receive POST notifications when specified events occur. The webhook URL must be accessible and return HTTP 200 to validation requests. Requires a Standard or Premium Mailchimp plan for webhook functionality." }, { "slug": "MAILCHIMP_ARCHIVE_AUTOMATION", "name": "Archive automation", "description": "Permanently archive a classic automation workflow in Mailchimp. IMPORTANT: This action is IRREVERSIBLE. Archiving will permanently end your automation and keep the report data. You'll be able to replicate your archived automation, but you can't restart it. Use this action when you want to: - Permanently stop an automation that is no longer needed - Clean up old automations while preserving historical report data - End a workflow that you don't plan to use again Prerequisites: - The automation must exist and not already be archived - Use 'list_automations' to find available workflow IDs" }, { "slug": "MAILCHIMP_ARCHIVE_CONTACT", "name": "Archive contact", "description": "Archive a contact in a Mailchimp audience. This action archives the specified contact, removing them from the active audience. Use when you need to archive a contact without permanently deleting their information. Returns HTTP 204 No Content on success with an empty response body." }, { "slug": "MAILCHIMP_ARCHIVE_LIST_MEMBER", "name": "Archive list member", "description": "Archive (soft delete) a list member from a Mailchimp audience. This action archives the member, removing them from the active list but preserving their data. Archived members can be re-subscribed later. For permanent deletion that removes all personally identifiable information and prevents re-import, use the 'Delete list member' action with the delete-permanent endpoint instead. Returns HTTP 204 No Content on success with an empty response body." }, { "slug": "MAILCHIMP_BATCH_ADD_OR_REMOVE_MEMBERS", "name": "Batch add or remove members", "description": "Batch add or remove list members from a static segment in Mailchimp. This action allows you to efficiently manage membership in a static segment by adding and/or removing multiple email addresses in a single API call. Only works with static segments (not saved/dynamic segments based on conditions). Important notes: - At least one of members_to_add or members_to_remove must be provided - Email addresses must already exist as subscribers in the list - Non-existent emails are silently ignored (no error raised) - Maximum 500 emails can be processed per request for each operation - The segment must be a static segment (type='static'), not a saved segment" }, { "slug": "MAILCHIMP_BATCH_SUBSCRIBE_OR_UNSUBSCRIBE", "name": "Batch subscribe or unsubscribe", "description": "Batch subscribe or unsubscribe list members." }, { "slug": "MAILCHIMP_CAMPAIGN_ABUSE_REPORT_DETAILS", "name": "Get Campaign Abuse Report Details", "description": "Get detailed information about a specific abuse report for a campaign. An abuse complaint occurs when your recipient reports an email as spam in their mail program. This action retrieves the details of a specific abuse report including the email address that filed the complaint, the date of the report, and associated list information. Prerequisites: - You need a valid campaign_id (use 'list_campaigns' to find one) - You need a valid report_id (use 'retrieve_campaign_abuse_complaints' to list abuse reports)" }, { "slug": "MAILCHIMP_CAMPAIGN_STATISTICS_FEEDBACK", "name": "Campaign statistics feedback", "description": "Get feedback based on a campaign's statistics. Advice feedback is based on campaign stats like opens, clicks, unsubscribes, bounces, and more." }, { "slug": "MAILCHIMP_CANCEL_CAMPAIGN", "name": "Cancel campaign", "description": "Cancel a Regular or Plain-Text Campaign after you send, before all of your recipients receive it. This feature requires Mailchimp Pro or Premium plan. IMPORTANT: This action can only be used on campaigns that are currently in the 'sending' status. It cannot be used on: - Draft campaigns (status: 'save') - Scheduled campaigns (status: 'schedule') - use Unschedule Campaign instead - Already sent campaigns (status: 'sent') - Paused campaigns (status: 'paused') When successful, the campaign status will change to 'canceling' and then 'canceled'. Any recipients who have already received the email will not be affected. Returns HTTP 204 No Content on success. Returns HTTP 402 Payment Required if account lacks Mailchimp Pro/Premium subscription. Returns HTTP 404 Not Found if campaign_id is invalid." }, { "slug": "MAILCHIMP_CREATE_A_SURVEY_CAMPAIGN", "name": "Create a survey campaign", "description": "Create a new email campaign that links to a specific survey in Mailchimp. This action generates a campaign based on an existing survey for a given audience/list. The survey must already exist in Mailchimp before creating a campaign for it. The created campaign will include a link to the survey, allowing recipients to participate. Prerequisites: - A valid Mailchimp audience/list (use 'Get lists info' to retrieve available lists) - An existing survey for that list (use 'Get information about all surveys for a list' to retrieve surveys) Returns the created campaign details including campaign ID, status, recipients, and settings." }, { "slug": "MAILCHIMP_CUSTOMER_JOURNEYS_API_TRIGGER_FOR_A_CONTACT", "name": "Customer journeys api trigger for a contact", "description": "Trigger a Customer Journey step for a specific contact via the Mailchimp API. This endpoint allows you to programmatically activate an API trigger step in a Customer Journey for a given contact. Before using this action: 1. Create a Customer Journey in the Mailchimp app with an \"API Trigger\" as a starting point or step 2. Mailchimp will provide you with a URL containing the journey_id and step_id 3. Use those IDs along with the contact's email address to trigger the journey The contact must be a member of the audience associated with the Customer Journey. Returns HTTP 204 (No Content) on success with an empty response body." }, { "slug": "MAILCHIMP_CUSTOMIZE_SIGNUP_FORM", "name": "Customize signup form", "description": "Customize the appearance and content of a Mailchimp list's signup form. Use this action to modify the header text/image, body content sections, and CSS styles of the embedded signup form for a specific audience/list. The signup form is used to collect email subscriptions from website visitors." }, { "slug": "MAILCHIMP_DELETE_BATCH_REQUEST", "name": "Delete batch request", "description": "Stops a batch request from running. Since only one batch request is run at a time, this can be used to cancel a long running request. The results of any completed operations will not be available after this call." }, { "slug": "MAILCHIMP_DELETE_BATCH_WEBHOOK", "name": "Delete batch webhook", "description": "Permanently delete a batch webhook by its ID. Once deleted, the webhook URL will no longer receive POST notifications when batch operations complete. Use this action to remove webhooks that are no longer needed or to clean up invalid webhook endpoints. This action is idempotent - deleting a non-existent webhook returns a 404 error. Related actions: - list_batch_webhooks: Get all configured batch webhooks to find the ID - add_batch_webhook: Create a new batch webhook - update_batch_webhook: Modify an existing batch webhook's settings" }, { "slug": "MAILCHIMP_DELETE_CAMPAIGN", "name": "Delete campaign", "description": "Permanently delete a campaign from your Mailchimp account. This action removes the specified campaign and all associated data. Note: Only campaigns with 'save' or 'paused' status can be deleted. Campaigns that have been sent cannot be deleted." }, { "slug": "MAILCHIMP_DELETE_CAMPAIGN_FEEDBACK_MESSAGE", "name": "Delete campaign feedback message", "description": "Remove a specific feedback message for a campaign." }, { "slug": "MAILCHIMP_DELETE_CAMPAIGN_FOLDER", "name": "Delete campaign folder", "description": "Delete a specific campaign folder from Mailchimp. When a campaign folder is deleted, all campaigns within that folder are automatically marked as 'unfiled' rather than being deleted. This operation is idempotent - deleting an already-deleted folder will return an error indicating the folder was not found. Returns HTTP 204 No Content on success." }, { "slug": "MAILCHIMP_DELETE_CART", "name": "Delete cart", "description": "Delete a cart from an e-commerce store. This endpoint permanently removes a cart and all its line items from the specified store. Use this when a cart is no longer needed (e.g., after converting it to an order or when the customer has abandoned the checkout process). Note: Deleting a cart will cancel any pending abandoned cart automation emails associated with it. Carts do not automatically expire and will remain until deleted." }, { "slug": "MAILCHIMP_DELETE_CART_LINE_ITEM", "name": "Delete cart line item", "description": "Delete a specific line item from a cart in a Mailchimp e-commerce store. Cart line items represent products that a customer has added to their shopping cart. This action permanently removes a line item from the specified cart. The deletion cannot be undone - to restore the item, you would need to add it again using 'add_cart_line_item'. Use this action when: - A customer removes an item from their cart - You need to clear invalid or outdated line items - Syncing cart changes from your e-commerce platform to Mailchimp Note: If you need to delete the entire cart, use 'delete_cart' instead." }, { "slug": "MAILCHIMP_DELETE_CONNECTED_SITE", "name": "Delete connected site", "description": "Remove a connected site from your Mailchimp account. This action permanently deletes the specified connected site. Connected sites are external websites that have been linked to your Mailchimp account for tracking and integration purposes. Once deleted, the site tracking script will no longer collect data for this site. Note: This action is idempotent - deleting an already-deleted site will not cause an error but may return a 404 Not Found response." }, { "slug": "MAILCHIMP_DELETE_CUSTOMER", "name": "Delete customer", "description": "Delete a customer from an e-commerce store. Permanently removes a customer record from the specified Mailchimp store. This action is destructive and cannot be undone. The customer's associated data including order history linkage will be removed, but existing orders will not be deleted. Returns HTTP 204 No Content on successful deletion." }, { "slug": "MAILCHIMP_DELETE_DOMAIN", "name": "Delete domain", "description": "Delete a sending domain from the Mailchimp account's verified domains. This permanently removes a domain that was previously added for verification. The domain can be in any verification state (pending, verified, or authenticated). After deletion, the domain will no longer appear in the verified-domains list and cannot be used as a sender address until re-added and re-verified. Use 'list_sending_domains' to see available domains before deletion." }, { "slug": "MAILCHIMP_DELETE_FILE", "name": "Delete file", "description": "Permanently remove a file from the Mailchimp File Manager. This action deletes an image or document file from your Mailchimp account's File Manager. Once deleted, the file cannot be recovered. Files in the File Manager are typically used in campaigns, templates, or signup forms. IMPORTANT: This is a destructive action. Ensure you have the correct file_id before executing, as deletion is permanent. Files that are actively used in campaigns may still be accessible until those campaigns are deleted." }, { "slug": "MAILCHIMP_DELETE_FOLDER", "name": "Delete folder", "description": "Delete a specific folder in the File Manager. This permanently removes the folder and all files contained within it. Use with caution as this action cannot be undone." }, { "slug": "MAILCHIMP_DELETE_INTEREST_CATEGORY", "name": "Delete interest category", "description": "Delete a specific interest category from a Mailchimp audience/list. Interest categories are used to group related interests together on signup forms (e.g., 'Newsletter Preferences', 'Product Interests'). Each category can contain multiple interests that subscribers can select. WARNING: This action permanently deletes the interest category and all interests within it. This cannot be undone. Any subscriber data associated with these interests will also be removed. Use this action when you need to: - Remove obsolete or unused interest categories - Clean up test data - Reorganize your list's interest structure Prerequisites: - Obtain the list_id using 'Get lists info' action - Obtain the interest_category_id using 'List interest categories' action" }, { "slug": "MAILCHIMP_DELETE_INTEREST_IN_CATEGORY", "name": "Delete interest in category", "description": "Delete a specific interest (group name) from an interest category within a Mailchimp list. This permanently removes the interest from the category. Returns HTTP 204 on success." }, { "slug": "MAILCHIMP_DELETE_LANDING_PAGE", "name": "Delete landing page", "description": "Permanently delete a Mailchimp landing page. This action permanently removes a landing page from your Mailchimp account. This operation cannot be undone. The landing page must exist and be in a deletable state (draft or unpublished). Published landing pages should be unpublished first before deletion. Returns a 204 No Content response on success, indicating the page was deleted. Returns a 404 error if the page_id does not exist." }, { "slug": "MAILCHIMP_DELETE_LIST", "name": "Delete list", "description": "Permanently delete a list (audience) from your Mailchimp account. WARNING: This is a destructive and irreversible operation. Deleting a list will permanently remove all associated data including: - Subscriber email addresses and profile data - Subscriber activity history (opens, clicks, etc.) - Unsubscribe records - Complaint records - Bounce records - Segments and tags Export and backup your list data before deletion if needed. Returns HTTP 204 No Content on success." }, { "slug": "MAILCHIMP_DELETE_LIST_MEMBER", "name": "Delete list member", "description": "Permanently delete a list member and all their personally identifiable information (PII). WARNING: This is an irreversible action. Once deleted, the member cannot be re-imported with the same email address. Use this for GDPR compliance or when permanently removing a contact. For soft removal (keeping the ability to re-add later), use archive_list_member instead. Returns HTTP 204 No Content on success with an empty response body." }, { "slug": "MAILCHIMP_DELETE_MERGE_FIELD", "name": "Delete merge field", "description": "Delete a specific merge field (audience field) from a Mailchimp list/audience. WARNING: This action permanently deletes the merge field and all associated data collected from that field. This cannot be undone. Consider hiding the field from signup forms instead of deleting it. Back up your audience data before deleting. Note: Default merge fields (FNAME, LNAME, ADDRESS, PHONE) cannot be deleted." }, { "slug": "MAILCHIMP_DELETE_NOTE", "name": "Delete note", "description": "Delete a specific note for a list member in Mailchimp. Permanently removes a note associated with a subscriber. This operation cannot be undone. A successful deletion returns HTTP 204 No Content. To delete a note, you need: - list_id: The unique ID of the Mailchimp audience/list - subscriber_hash: The member's email address, MD5 hash of lowercase email, or contact_id - note_id: The unique ID of the note (can be obtained from list_recent_member_notes)" }, { "slug": "MAILCHIMP_DELETE_ORDER", "name": "Delete order", "description": "Permanently delete an order from a Mailchimp e-commerce store. This action removes the order and its associated line items. This operation cannot be undone." }, { "slug": "MAILCHIMP_DELETE_ORDER_LINE_ITEM", "name": "Delete order line item", "description": "Delete a specific line item from an order in a Mailchimp e-commerce store. This action permanently removes the specified line item from the order. The operation is idempotent - deleting an already-deleted line item returns the same success response. Prerequisites: The store, order, and line item must exist. Use MAILCHIMP_LIST_STORES, MAILCHIMP_LIST_ORDERS, and MAILCHIMP_LIST_ORDER_LINE_ITEMS to find valid IDs. Note: This action cannot be undone. To add the line item back, use MAILCHIMP_ADD_ORDER_LINE_ITEM." }, { "slug": "MAILCHIMP_DELETE_PRODUCT", "name": "Delete product", "description": "Permanently delete a product from a Mailchimp e-commerce store. This action removes the product and all its variants. Returns HTTP 204 on success with no content. Use LIST_STORES to find store IDs and LIST_PRODUCT to find product IDs. This operation cannot be undone." }, { "slug": "MAILCHIMP_DELETE_PRODUCT_IMAGE", "name": "Delete product image", "description": "Delete a product image from a Mailchimp e-commerce store. This action permanently removes an image associated with a product. The operation is idempotent - deleting an already-deleted image will not cause an error. Before deleting, ensure you have the correct store_id, product_id, and image_id as this action cannot be undone." }, { "slug": "MAILCHIMP_DELETE_PRODUCT_VARIANT", "name": "Delete product variant", "description": "Delete a specific product variant from a Mailchimp e-commerce store. This action permanently removes a variant from a product. Use this to clean up discontinued variants or manage product options. Note that a product must always have at least one variant, so attempting to delete the last remaining variant of a product will fail. Prerequisites: - The store must exist (use list_stores to verify) - The product must exist in the store (use list_product to verify) - The variant must exist and not be the only variant for the product" }, { "slug": "MAILCHIMP_DELETE_PROMO_CODE", "name": "Delete promo code", "description": "Delete a promo code from an e-commerce store. This action permanently removes a specific promo code from a promo rule in a Mailchimp store. The promo code will no longer be available for customers to use. This action is idempotent - deleting an already-deleted promo code will not cause an error. Prerequisites: - The store must exist (use MAILCHIMP_LIST_STORES to verify) - The promo rule must exist in the store (use MAILCHIMP_LIST_PROMO_RULES to verify) - The promo code must exist within the promo rule (use MAILCHIMP_LIST_PROMO_CODES to verify) Note: This action is destructive and cannot be undone. The promo code will need to be recreated using MAILCHIMP_ADD_PROMO_CODE if you want to restore it." }, { "slug": "MAILCHIMP_DELETE_PROMO_RULE", "name": "Delete promo rule", "description": "Permanently delete a promo rule from a Mailchimp e-commerce store. This action also removes all associated promo codes. Warning: This operation is irreversible. Returns HTTP 204 on success with no content body." }, { "slug": "MAILCHIMP_DELETE_SEGMENT", "name": "Delete segment", "description": "Permanently delete a segment from a Mailchimp list (audience). This action removes the segment definition from the list. It does NOT delete the contacts/members within the segment - they remain in the list. Both static segments and saved segments can be deleted using this action. Note: This is a destructive operation that cannot be undone. Use with caution." }, { "slug": "MAILCHIMP_DELETE_STORE", "name": "Delete store", "description": "Delete an e-commerce store from your Mailchimp account. WARNING: This is a destructive operation. Deleting a store will permanently remove all associated subresources, including Customers, Orders, Products, and Carts. This action cannot be undone. Returns HTTP 204 No Content on successful deletion." }, { "slug": "MAILCHIMP_DELETE_TEMPLATE", "name": "Delete template", "description": "Permanently delete a user-created email template from your Mailchimp account. This action removes the specified template and cannot be undone. Only templates of type 'user' (custom templates you created) can be deleted. System templates and gallery templates cannot be deleted. Returns HTTP 204 No Content on success. Returns HTTP 404 if the template does not exist or is not a user template." }, { "slug": "MAILCHIMP_DELETE_TEMPLATE_FOLDER", "name": "Delete template folder", "description": "Permanently delete a template folder from your Mailchimp account. This action removes a specific template folder. Any email templates that were stored in the folder will not be deleted, but will be marked as 'unfiled' and can still be accessed through the templates list. Important: This is a destructive action and cannot be undone. Make sure you have the correct folder_id before executing. Returns HTTP 204 No Content on successful deletion." }, { "slug": "MAILCHIMP_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Delete a specific webhook from a Mailchimp audience/list. Permanently removes a webhook configuration that was previously set up to receive POST notifications for list events. This action is irreversible - once deleted, the webhook URL will no longer receive notifications. Returns the deleted webhook object with its configuration details." }, { "slug": "MAILCHIMP_DELETE_WORKFLOW_EMAIL", "name": "Delete workflow email", "description": "Permanently delete an email from a classic automation workflow. This action removes the specified email from an automation workflow. Important limitations: - Emails from Abandoned Cart (abandonedCart) workflows cannot be deleted. - Emails from Product Retargeting (abandonedBrowse) workflows cannot be deleted. - The automation workflow must exist and contain the specified email. Use the list_automations action to get valid workflow_id values. Use the list_automated_emails action to get valid workflow_email_id values." }, { "slug": "MAILCHIMP_FORGET_CONTACT", "name": "Forget contact", "description": "Forget a contact and remove their personally identifiable information (PII). This action marks a contact to be forgotten and initiates the process to remove their PII from Mailchimp in compliance with GDPR and privacy regulations. Use this when handling \"right to be forgotten\" requests. The contact will be permanently removed from the audience. Returns HTTP 204 No Content on success with an empty response body." }, { "slug": "MAILCHIMP_GET_ABUSE_REPORT", "name": "Get abuse report", "description": "Get details about a specific abuse report." }, { "slug": "MAILCHIMP_GET_ACCOUNT_EXPORT_INFO", "name": "Get account export info", "description": "Get detailed information about a specific Mailchimp account export. Use this action to check the status of an export job and retrieve the download URL once it's complete. Exports can take anywhere from a few minutes to several hours depending on account size. Typical workflow: 1. Create an export using 'add_export' action 2. Poll this action periodically to check the 'finished' status 3. Once 'finished' is True, use the 'download_url' to download the ZIP file Note: The download_url is signed and provides direct access to your data without authentication. Keep this URL secure. Completed exports are available for download for up to 90 days." }, { "slug": "MAILCHIMP_GET_AUDIENCES_CONTACTS", "name": "Get audience contacts", "description": "Tool to get a list of omni-channel contacts for a given audience. Use when you need to retrieve contacts from a Mailchimp audience with optional filtering and pagination." }, { "slug": "MAILCHIMP_GET_AUDIENCES_CONTACTS_DETAIL", "name": "Get audience contact detail", "description": "Tool to retrieve a specific omni-channel contact from a Mailchimp audience by their ID or channel hash. Use when you need detailed information about a contact including email/SMS channels, merge fields, tags, and subscription status." }, { "slug": "MAILCHIMP_GET_AUTHORIZED_APP_INFO", "name": "Get authorized app info", "description": "Retrieve detailed information about a specific authorized OAuth application. Returns the app's ID, name, description, and list of users who have linked their Mailchimp accounts to this application. Use LIST_AUTHORIZED_APPS first to get valid app_id values." }, { "slug": "MAILCHIMP_GET_AUTOMATED_EMAIL_SUBSCRIBER", "name": "Get automated email subscriber", "description": "Get information about a specific subscriber in a classic automation email queue. This action retrieves details about a subscriber who is waiting to receive an automated email, including their email address and the scheduled send time. Note: Subscribers appear in the queue when they've been triggered by the automation but haven't yet received the email. The queue is typically processed quickly, so subscribers may only be in the queue briefly. Returns HTTP 404 if the subscriber is not found in the queue." }, { "slug": "MAILCHIMP_GET_AUTOMATION_INFO", "name": "Get automation info", "description": "Retrieve details of a Mailchimp automation workflow by its ID. Returns comprehensive information including: - Basic info: ID, status (save/paused/sending/archived), creation time - Settings: title, from_name, reply_to email - Recipients: associated list/audience ID, store ID for e-commerce automations - Tracking: opens, clicks, e-commerce tracking configuration - Report summary: opens, clicks, rates (for archived automations) Use MAILCHIMP_LIST_AUTOMATIONS to get available workflow IDs." }, { "slug": "MAILCHIMP_GET_BATCH_OPERATION_STATUS", "name": "Get batch operation status", "description": "Get the status of a batch operation. Retrieves details about a specific batch operation including its current status (pending, preprocessing, started, finalizing, or finished), operation counts, timestamps, and a URL to download the results when completed." }, { "slug": "MAILCHIMP_GET_BATCH_WEBHOOK_INFO", "name": "Get batch webhook info", "description": "Retrieve detailed information about a specific batch webhook by its ID. Batch webhooks are used to receive notifications when batch operations complete. Use this endpoint to check the configuration and status of a specific webhook." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_CONTENT", "name": "Get campaign content", "description": "Get the HTML and plain-text content for a campaign." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_FEEDBACK_MESSAGE", "name": "Get campaign feedback message", "description": "Get a specific feedback message from a campaign." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_FOLDER", "name": "Get campaign folder", "description": "Get information about a specific folder used to organize campaigns in Mailchimp. Returns the folder details including its ID, name, and the count of campaigns stored within it. Use the 'list_campaign_folders' action to get available folder IDs." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_INFO", "name": "Get campaign info", "description": "Get information about a specific campaign." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_LINK_DETAILS", "name": "Get campaign link details", "description": "Get click details for a specific link in a campaign. This endpoint retrieves detailed click statistics for a single link within a sent campaign, including total clicks, unique clicks, click percentages, and the timestamp of the last click. Use list_campaign_details first to get the list of available link IDs for a campaign." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_RECIPIENT_INFO", "name": "Get campaign recipient info", "description": "Get information about a specific campaign recipient." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_REPORT", "name": "Get campaign report", "description": "Retrieve detailed performance report for a Mailchimp campaign. Returns analytics including email delivery stats (sent, bounced), engagement metrics (opens, clicks), and e-commerce data (orders, revenue). Works for both sent campaigns (with actual data) and draft campaigns (returns zeros)." }, { "slug": "MAILCHIMP_GET_CAMPAIGN_SEND_CHECKLIST", "name": "Get campaign send checklist", "description": "Review the send checklist for a Mailchimp campaign before sending. Returns a list of checklist items indicating issues that need to be resolved. Each item has a 'type' field: 'error' (must fix before sending), 'warning' (optional but recommended to address), or 'success' (item is complete). The 'is_ready' field indicates if the campaign can be sent (True when no errors). Common checklist items include: audience selection, subject line, from name/email, email content, and tracking settings." }, { "slug": "MAILCHIMP_GET_CART_INFO", "name": "Get cart info", "description": "Retrieve detailed information about a specific cart in an e-commerce store, including customer details and line items." }, { "slug": "MAILCHIMP_GET_CART_LINE_ITEM", "name": "Get cart line item", "description": "Retrieve detailed information about a specific line item in a shopping cart. Returns product details, variant information, quantity, and price for a single cart line item. Useful for displaying cart item details or verifying cart contents before checkout." }, { "slug": "MAILCHIMP_GET_CLICKED_LINK_SUBSCRIBER", "name": "Get clicked link subscriber", "description": "Get detailed information about a specific subscriber who clicked a link in a campaign. This action retrieves click data for a specific list member who clicked on a particular tracked link in a sent campaign. Use this to understand individual subscriber engagement with campaign links. Prerequisites: - The campaign must have been sent (status: 'sent') - The link must be a tracked link in the campaign - The subscriber must have clicked the link at least once To get the required IDs: 1. campaign_id: Use list_campaigns with status='sent' 2. link_id: Use list_campaign_details with the campaign_id to get urls_clicked 3. subscriber_hash: Use list_clicked_link_subscribers to get email_id of clickers" }, { "slug": "MAILCHIMP_GET_CONNECTED_SITE", "name": "Get connected site", "description": "Retrieve information about a specific connected site in your Mailchimp account. Connected sites allow Mailchimp to track website activity and visitor behavior for your email marketing campaigns. Use this action to get details about a site including its domain, platform type, and the JavaScript tracking snippet. Returns the site's foreign_id, domain, platform, tracking script (site_script), and creation/update timestamps." }, { "slug": "MAILCHIMP_GET_CONVERSATION", "name": "Get conversation", "description": "API endpoint for Conversations is deprecated, replaced by Inbox. Although historical data is accessible, new campaign replies and messages are not retrievable through this endpoint." }, { "slug": "MAILCHIMP_GET_CUSTOMER_INFO", "name": "Get customer info", "description": "Get information about a specific customer." }, { "slug": "MAILCHIMP_GET_DOMAIN_INFO", "name": "Get domain info", "description": "Get the details for a single verified domain on the Mailchimp account. Retrieves information about a specific domain including its verification status, authentication status, and the email address used for verification. Use this action to check if a domain has been verified and is ready for sending emails. Returns 404 if the domain is not found in the account's verified domains list." }, { "slug": "MAILCHIMP_GET_FACEBOOK_AD_INFO", "name": "Get facebook ad info", "description": "Retrieve detailed information about a specific Facebook ad created through Mailchimp. Returns ad details including id, name, web_id, channel_id (e.g., 'fb'), type, status (e.g., 'paused', 'active', 'disconnected'), audience targeting information, budget settings, content, create_time, start_time, end_time, and feedback data. Note: Facebook ads must be created through Mailchimp's Facebook Ad Campaigns feature. To get the outreach_id, first use the list_facebook_ads action to retrieve available ads." }, { "slug": "MAILCHIMP_GET_FACEBOOK_AD_REPORT", "name": "Get facebook ad report", "description": "Retrieve detailed performance report for a specific Facebook ad campaign. Returns comprehensive metrics including impressions, clicks, reach, engagement, budget information, content details, and ecommerce performance data. The report provides insights into ad effectiveness and ROI. Note: Requires a valid outreach_id which can be obtained from the list_facebook_ads or list_facebook_ads_reports endpoints." }, { "slug": "MAILCHIMP_GET_FILE", "name": "Get file", "description": "Retrieve detailed information about a specific file in the Mailchimp File Manager. Returns file metadata including the file's unique ID, name, type, size, URLs for accessing the file (full-size and thumbnail), upload timestamp, and dimensions for image files. Use this action to get the public URL of a file for use in campaigns or to verify file details. Prerequisites: - You need a valid file_id. Use MAILCHIMP_LIST_STORED_FILES to get available file IDs. Returns: - File metadata including id, name, type, size, URLs, and dimensions (for images) - HATEOAS links for related operations (update, delete) Common use cases: - Get the public URL of an uploaded image for use in email campaigns - Verify file upload succeeded and get file details - Check file dimensions before using in templates" }, { "slug": "MAILCHIMP_GET_FOLDER", "name": "Get folder", "description": "Get information about a specific folder in the File Manager." }, { "slug": "MAILCHIMP_GET_GROWTH_HISTORY_BY_MONTH", "name": "Get growth history by month", "description": "Retrieves detailed growth statistics for a Mailchimp audience/list for a specific month. Returns subscriber metrics including existing members, new opt-ins, imports, unsubscribes, cleaned (bounced), pending, deleted, and transactional members. The month parameter must be in YYYY-MM format. Note: Returns 404 if no growth history data exists for the specified month - use 'List growth history data' action first to check available months." }, { "slug": "MAILCHIMP_GET_INFORMATION_ABOUT_ALL_SURVEYS_FOR_A_LIST", "name": "Get information about all surveys for a list", "description": "Get information about all available surveys for a specific list." }, { "slug": "MAILCHIMP_GET_INTEREST_CATEGORY_INFO", "name": "Get interest category info", "description": "Get detailed information about a specific interest category within a Mailchimp list/audience. Interest categories are groups of interests (preferences) that subscribers can select on signup forms. The type field determines how interests are displayed: checkboxes (multi-select), dropdown (single-select), radio (single-select), or hidden (internal tracking only)." }, { "slug": "MAILCHIMP_GET_INTEREST_IN_CATEGORY", "name": "Get interest in category", "description": "Retrieve details of a specific interest (group) within an interest category for a Mailchimp list." }, { "slug": "MAILCHIMP_GET_LANDING_PAGE_CONTENT", "name": "Get landing page content", "description": "Get the HTML content for a specific Mailchimp landing page by its unique page ID." }, { "slug": "MAILCHIMP_GET_LANDING_PAGE_INFO", "name": "Get landing page info", "description": "Retrieve detailed information about a specific Mailchimp landing page including its name, title, status, tracking settings, and associated list." }, { "slug": "MAILCHIMP_GET_LANDING_PAGE_REPORT", "name": "Get landing page report", "description": "Get analytics report for a specific landing page. Returns detailed statistics including total visits, clicks, and time-series data (daily and weekly). For e-commerce enabled pages, also includes revenue and order data. Use the list_landing_pages action to get available landing page IDs." }, { "slug": "MAILCHIMP_GET_LATEST_CHIMP_CHATTER", "name": "Get latest chimp chatter", "description": "Return the Chimp Chatter for this account ordered by most recent." }, { "slug": "MAILCHIMP_GET_LIST_INFO", "name": "Get list info", "description": "Get information about a specific list in your Mailchimp account. Results include list members who have signed up but haven't confirmed their subscription yet and unsubscribed or cleaned." }, { "slug": "MAILCHIMP_GET_LISTS_INFO", "name": "Get lists info", "description": "Get information about all lists in the account." }, { "slug": "MAILCHIMP_GET_MEMBER_INFO", "name": "Get member info", "description": "Get information about a specific list member, including a currently subscribed, unsubscribed, or bounced member." }, { "slug": "MAILCHIMP_GET_MEMBER_NOTE", "name": "Get member note", "description": "Retrieve a specific note attached to a list member in Mailchimp. Notes are internal annotations that can be added to subscriber records for tracking conversations, preferences, or other relevant information. This endpoint returns the full details of a single note by its ID." }, { "slug": "MAILCHIMP_GET_MERGE_FIELD", "name": "Get merge field", "description": "Retrieve details about a specific merge field (custom audience field) for a Mailchimp list. Merge fields are custom data fields like First Name (FNAME), Last Name (LNAME), Address, etc. that store subscriber information. Use this to get configuration details including field type, display settings, and type-specific options." }, { "slug": "MAILCHIMP_GET_MESSAGE", "name": "Get message", "description": "The conversation endpoint is outdated and replaced by Inbox, which isn't supported by it. Historical conversation data is accessible, but new replies and Inbox messages are not." }, { "slug": "MAILCHIMP_GET_OPENED_CAMPAIGN_SUBSCRIBER", "name": "Get opened campaign subscriber", "description": "Get information about a specific subscriber who opened a campaign." }, { "slug": "MAILCHIMP_GET_ORDER_INFO", "name": "Get order info", "description": "Get information about a specific order." }, { "slug": "MAILCHIMP_GET_ORDER_LINE_ITEM", "name": "Get order line item", "description": "Get information about a specific order line item." }, { "slug": "MAILCHIMP_GET_PRODUCT_IMAGE_INFO", "name": "Get product image info", "description": "Retrieve detailed information about a specific product image in a Mailchimp e-commerce store. Returns the image's URL, associated variant IDs, and API links for related operations. Requires valid store_id, product_id, and image_id. Returns 404 if any ID is not found." }, { "slug": "MAILCHIMP_GET_PRODUCT_INFO", "name": "Get product info", "description": "Get information about a specific product." }, { "slug": "MAILCHIMP_GET_PRODUCT_VARIANT_INFO", "name": "Get product variant info", "description": "Retrieve detailed information about a specific product variant from a Mailchimp e-commerce store. Returns variant details including title, SKU, price, inventory quantity, and URLs. Requires valid store_id, product_id, and variant_id. Use LIST_STORES, LIST_PRODUCT, and LIST_PRODUCT_VARIANTS to find the required identifiers." }, { "slug": "MAILCHIMP_GET_PROMO_CODE", "name": "Get promo code", "description": "Retrieve detailed information about a specific promo code. Returns the promo code details including its code string, redemption URL, usage count, enabled status, and timestamps. Promo codes are associated with promo rules within e-commerce stores." }, { "slug": "MAILCHIMP_GET_PROMO_RULE", "name": "Get promo rule", "description": "Get information about a specific promo rule." }, { "slug": "MAILCHIMP_GET_SEGMENT_INFO", "name": "Get segment info", "description": "Get information about a specific segment." }, { "slug": "MAILCHIMP_GET_STORE_INFO", "name": "Get store info", "description": "Get information about a specific store." }, { "slug": "MAILCHIMP_GET_SUBSCRIBER_EMAIL_ACTIVITY", "name": "Get subscriber email activity", "description": "Get a specific list member's email activity in a sent campaign, including opens, clicks, bounces, and unsubscribes. The campaign must have been sent and the subscriber must have been a recipient for data to be available. Returns 404 if the campaign hasn't been sent or if the subscriber wasn't a recipient." }, { "slug": "MAILCHIMP_GET_SUBSCRIBER_REMOVED_FROM_WORKFLOW", "name": "Get subscriber removed from workflow", "description": "Get information about a specific subscriber who was removed from a classic automation workflow. Returns the subscriber's email address and workflow details. The subscriber must have been previously removed using the remove_subscriber_from_workflow action. Returns 404 if the subscriber is not found in the removed subscribers list." }, { "slug": "MAILCHIMP_GET_SURVEY", "name": "Get survey", "description": "Retrieves detailed information about a specific survey associated with a Mailchimp audience (list). Returns survey metadata including its title, status, URL, timestamps, total response count, and the list of questions. Prerequisites: The survey must exist on the specified list. Surveys are created through the Mailchimp web interface, not via the API. Use 'Get information about all surveys for a list' to find available survey IDs for a given audience." }, { "slug": "MAILCHIMP_GET_SURVEY_QUESTION_REPORT", "name": "Get survey question report", "description": "Retrieves detailed reporting data for a specific question in a survey. Returns the question text, type, total response count, and for multiple choice questions, the breakdown of responses per option including counts. For rating questions, includes the average rating. Prerequisites: The survey and question must exist in your Mailchimp account. Surveys are created through the Mailchimp web interface, not via the API. Use 'List survey reports' to find survey IDs and 'List survey question reports' to find question IDs. Note: This action returns aggregated statistics for a single question. For detailed individual answers to a question, use 'List answers for question'. For the overall survey report, use 'Get survey report'." }, { "slug": "MAILCHIMP_GET_SURVEY_REPORT", "name": "Get survey report", "description": "Retrieves detailed reporting data for a specific survey. Returns survey metadata including its title, status, public URL, creation/publication timestamps, total response count, and the associated audience information. Prerequisites: The survey must exist in your Mailchimp account. Surveys are created through the Mailchimp web interface, not via the API. Use 'List survey reports' to find available survey IDs for surveys that have report data. Note: This action returns report-level summary data. For detailed question-level reports, use 'List survey question reports'. For individual response data, use 'List survey responses'." }, { "slug": "MAILCHIMP_GET_SURVEY_RESPONSE", "name": "Get survey response", "description": "Retrieve a single survey response by its ID. Returns detailed information about the respondent's answers to all questions in the survey. This endpoint is useful for examining individual responses in detail, including the respondent's contact information and all their answers. Prerequisites: You must have an existing survey with at least one response. Surveys are created through the Mailchimp web interface and cannot be created via API." }, { "slug": "MAILCHIMP_GET_TEMPLATE_FOLDER", "name": "Get Template Folder", "description": "Retrieve information about a specific template folder in Mailchimp. Template folders are used to organize email templates. This action returns the folder's name, unique ID, the count of templates it contains, and HATEOAS links for related operations (update, delete, list templates). Use this action when you need to: - Get details about a specific template folder - Check how many templates are in a folder - Retrieve links to related operations for the folder" }, { "slug": "MAILCHIMP_GET_TEMPLATE_INFO", "name": "Get template info", "description": "Get information about a specific template." }, { "slug": "MAILCHIMP_GET_UNSUBSCRIBED_MEMBER", "name": "Get unsubscribed member", "description": "Get detailed information about a specific list member who unsubscribed from a campaign. This endpoint retrieves unsubscribe details for a member identified by their subscriber hash (MD5 of lowercase email) from a specific campaign's report. The campaign must have been sent and the member must have unsubscribed from it. Use the List Unsubscribed Members endpoint first to find valid subscriber hashes for a campaign. Returns 404 if the subscriber hash is not found in the campaign's unsubscribe list." }, { "slug": "MAILCHIMP_GET_WEBHOOK_INFO", "name": "Get webhook info", "description": "Get information about a specific webhook for a Mailchimp list (audience). Returns the webhook's URL, enabled events (subscribe, unsubscribe, profile, cleaned, upemail, campaign), and trigger sources (user, admin, api)." }, { "slug": "MAILCHIMP_GET_WORKFLOW_EMAIL_INFO", "name": "Get workflow email info", "description": "Get information about an individual classic automation workflow email." }, { "slug": "MAILCHIMP_LIST_ABUSE_REPORTS", "name": "List abuse reports", "description": "Get all abuse reports for a specific list." }, { "slug": "MAILCHIMP_LIST_ACCOUNT_EXPORTS", "name": "List account exports", "description": "Get a list of account exports for a given account." }, { "slug": "MAILCHIMP_LIST_ACCOUNT_ORDERS", "name": "List account orders", "description": "Get information about an account's orders." }, { "slug": "MAILCHIMP_LIST_ANSWERS_FOR_QUESTION", "name": "List answers for question", "description": "Retrieves all answers submitted for a specific question in a Mailchimp survey. This endpoint is part of the Reporting API and provides detailed response data for survey analysis. Use this to analyze how respondents answered a particular question, including their contact information and submission timestamps. Prerequisites: - The survey must exist and have been published to collect responses - Surveys are created through the Mailchimp web interface, not via API - Use 'List survey reports' to find available survey IDs - Use 'List survey question reports' to find question IDs for a specific survey Returns a list of answers with respondent details and the answer values." }, { "slug": "MAILCHIMP_LIST_API_ROOT_RESOURCES", "name": "Get API Root and Account Info", "description": "Get Mailchimp account details and links to all available API resources. Returns account information including account ID, name, email, contact details, pricing plan, and subscriber count, along with navigation links to other API endpoints like lists, campaigns, automations, templates, and more." }, { "slug": "MAILCHIMP_LIST_AUTHORIZED_APPS", "name": "List authorized apps", "description": "Get a list of an account's registered, connected applications." }, { "slug": "MAILCHIMP_LIST_AUTOMATED_EMAILS", "name": "List automated emails", "description": "Get a summary of the emails in a classic automation workflow." }, { "slug": "MAILCHIMP_LIST_AUTOMATED_EMAIL_SUBSCRIBERS", "name": "List automated email subscribers", "description": "Get information about a classic automation email queue." }, { "slug": "MAILCHIMP_LIST_AUTOMATIONS", "name": "List automations", "description": "Get a summary of an account's classic automations." }, { "slug": "MAILCHIMP_LIST_BATCH_REQUESTS", "name": "List batch requests", "description": "Get a summary of batch requests that have been made." }, { "slug": "MAILCHIMP_LIST_BATCH_WEBHOOKS", "name": "List batch webhooks", "description": "Get all webhooks that have been configured for batches." }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_FEEDBACK", "name": "List campaign feedback", "description": "Get team feedback while you're working together on a Mailchimp campaign." }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_FOLDERS", "name": "List campaign folders", "description": "Get all folders used to organize campaigns." }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_OPEN_DETAILS", "name": "List campaign open details", "description": "Get detailed information about any campaign emails that were opened by a list member." }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_PRODUCT_ACTIVITY", "name": "List campaign product activity", "description": "Get breakdown of product activity for a campaign" }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_RECIPIENTS", "name": "List campaign recipients", "description": "Get information about campaign recipients." }, { "slug": "MAILCHIMP_LIST_CAMPAIGN_REPORTS", "name": "List campaign reports", "description": "Retrieve analytics reports for sent email campaigns. Returns performance metrics including opens, clicks, bounces, unsubscribes, and e-commerce data for campaigns that have been sent." }, { "slug": "MAILCHIMP_LIST_CAMPAIGNS", "name": "List campaigns", "description": "Get all campaigns in an account." }, { "slug": "MAILCHIMP_LIST_CART_LINE_ITEMS", "name": "List cart line items", "description": "Retrieve all line items in a shopping cart. Returns a list of products/variants that have been added to a specific cart in an e-commerce store. Each line item includes product details, variant info, quantity, and price. Useful for abandoned cart workflows and order management." }, { "slug": "MAILCHIMP_LIST_CARTS", "name": "List carts", "description": "Get information about a store's carts." }, { "slug": "MAILCHIMP_LIST_CHILD_CAMPAIGN_REPORTS", "name": "List child campaign reports", "description": "Get a list of child campaign reports for a specific parent campaign. This endpoint returns reports for child campaigns that are part of A/B split test (variate) or RSS campaigns. For regular campaigns, this will return an empty reports array with total_items=0 since they do not have child campaigns." }, { "slug": "MAILCHIMP_LIST_CLICKED_LINK_SUBSCRIBERS", "name": "List clicked link subscribers", "description": "Get information about list members who clicked on a specific link in a campaign. This action retrieves all subscribers who clicked on a particular tracked link within a sent campaign, including click counts and subscriber details. Prerequisites: 1. The campaign must have been sent (status='sent') with click tracking enabled 2. The link must exist in the campaign and have been clicked at least once To get the required IDs: 1. campaign_id: Use list_campaigns with status='sent' to find sent campaigns 2. link_id: Use list_campaign_details with the campaign_id to get urls_clicked array Returns empty members array if no subscribers clicked the link." }, { "slug": "MAILCHIMP_LIST_CONNECTED_SITES", "name": "List connected sites", "description": "Get all connected sites in an account." }, { "slug": "MAILCHIMP_LIST_CONVERSATIONS", "name": "List conversations", "description": "List of conversations for an account is available via an endpoint, but it's deprecated in favor of Inbox. The endpoint excludes new Inbox data including campaign replies and messages. Past conversations remain accessible." }, { "slug": "MAILCHIMP_LIST_CUSTOMERS", "name": "List customers", "description": "Get information about a store's customers." }, { "slug": "MAILCHIMP_LIST_DOMAIN_PERFORMANCE_STATS", "name": "List domain performance stats", "description": "Get statistics for the top-performing email domains in a campaign." }, { "slug": "MAILCHIMP_LIST_EEP_URL_ACTIVITY", "name": "List EepURL Activity", "description": "Get EepURL click activity for a campaign. EepURL is Mailchimp's shareable campaign archive link used for social media sharing. Returns referrer information including IP addresses/domains that clicked the link, click counts, and timestamps." }, { "slug": "MAILCHIMP_LIST_EMAIL_ACTIVITY", "name": "List email activity", "description": "Get a list of member's subscriber activity in a specific campaign." }, { "slug": "MAILCHIMP_LIST_FACEBOOK_ADS", "name": "List facebook ads", "description": "Get list of Facebook ads." }, { "slug": "MAILCHIMP_LIST_FACEBOOK_ADS_REPORTS", "name": "List facebook ads reports", "description": "Get reports of Facebook ads." }, { "slug": "MAILCHIMP_LIST_FACEBOOK_ECOMMERCE_REPORT", "name": "List facebook ecommerce report", "description": "Get breakdown of product activity for a Facebook ad outreach. Returns a paginated list of products with ecommerce activity metrics attributed to a specific Facebook ad campaign. Includes revenue, purchase counts, and recommendation data for each product. Note: Requires a valid outreach_id which can be obtained from the list_facebook_ads or list_facebook_ads_reports endpoints. The Facebook ad must have ecommerce tracking enabled with a connected store." }, { "slug": "MAILCHIMP_LIST_FOLDERS", "name": "List folders", "description": "Get a list of all folders in the File Manager." }, { "slug": "MAILCHIMP_LIST_GROWTH_HISTORY_DATA", "name": "List growth history data", "description": "Get a month-by-month summary of a specific list's growth activity." }, { "slug": "MAILCHIMP_LIST_INTEREST_CATEGORIES", "name": "List interest categories", "description": "Get information about a list's interest categories." }, { "slug": "MAILCHIMP_LIST_INTERESTS_IN_CATEGORY", "name": "List interests in category", "description": "Get a list of this category's interests." }, { "slug": "MAILCHIMP_LIST_LANDING_PAGES", "name": "List landing pages", "description": "Get all landing pages." }, { "slug": "MAILCHIMP_LIST_LANDING_PAGES_REPORTS", "name": "List landing pages reports", "description": "Get performance reports for landing pages. Returns analytics data including visits, unique visits, clicks, subscribes, and conversion rates for published landing pages. Only landing pages that have been published will appear in reports." }, { "slug": "MAILCHIMP_LIST_LOCATIONS", "name": "List locations", "description": "Get the locations (countries) that the list's subscribers have been tagged to based on geocoding their IP address." }, { "slug": "MAILCHIMP_LIST_MEMBER_EVENTS", "name": "List member events", "description": "Get events for a contact." }, { "slug": "MAILCHIMP_LIST_MEMBER_GOAL_EVENTS", "name": "List member goal events", "description": "Get the last 50 Goal events for a member on a specific list." }, { "slug": "MAILCHIMP_LIST_MEMBERS_INFO", "name": "List members info", "description": "Get information about members in a specific Mailchimp list." }, { "slug": "MAILCHIMP_LIST_MEMBERS_IN_SEGMENT", "name": "List members in segment", "description": "Get information about members in a saved segment." }, { "slug": "MAILCHIMP_LIST_MEMBER_TAGS", "name": "List member tags", "description": "Get the tags on a list member." }, { "slug": "MAILCHIMP_LIST_MERGE_FIELDS", "name": "List merge fields", "description": "Get a list of all merge fields for an audience." }, { "slug": "MAILCHIMP_LIST_MESSAGES", "name": "List messages", "description": "List all messages from a specific conversation in Mailchimp. NOTE: The Conversations API is deprecated and replaced by Inbox. This endpoint only returns historical conversation data. New campaign replies and Inbox messages are NOT available through this endpoint. Use 'List Conversations' first to obtain valid conversation IDs." }, { "slug": "MAILCHIMP_LIST_ORDER_LINE_ITEMS", "name": "List order line items", "description": "Get information about an order's line items." }, { "slug": "MAILCHIMP_LIST_ORDERS", "name": "List orders", "description": "Get information about a store's orders." }, { "slug": "MAILCHIMP_LIST_PRODUCT", "name": "List product", "description": "Get information about a store's products." }, { "slug": "MAILCHIMP_LIST_PRODUCT_IMAGES", "name": "List product images", "description": "Get information about a product's images." }, { "slug": "MAILCHIMP_LIST_PRODUCT_VARIANTS", "name": "List product variants", "description": "List all variants for a specific product in a Mailchimp e-commerce store. Returns a paginated list of product variants including details like title, SKU, price, inventory quantity, and URLs. Use 'count' and 'offset' parameters to paginate through large variant lists. Requires valid store_id and product_id. Use LIST_STORES and LIST_PRODUCT to find the required identifiers." }, { "slug": "MAILCHIMP_LIST_PROMO_CODES", "name": "List promo codes", "description": "Get information about a store's promo codes." }, { "slug": "MAILCHIMP_LIST_PROMO_RULES", "name": "List promo rules", "description": "Get information about a store's promo rules." }, { "slug": "MAILCHIMP_LIST_RECENT_ACTIVITY", "name": "List recent activity", "description": "Get up to the previous 180 days of daily detailed aggregated activity stats for a list, not including Automation activity." }, { "slug": "MAILCHIMP_LIST_RECENT_MEMBER_NOTES", "name": "List recent member notes", "description": "Get recent notes for a specific list member." }, { "slug": "MAILCHIMP_LIST_SEGMENTS", "name": "List segments", "description": "Get information about all available segments for a specific list." }, { "slug": "MAILCHIMP_LIST_SENDING_DOMAINS", "name": "List sending domains", "description": "Get all of the sending domains on the account." }, { "slug": "MAILCHIMP_LIST_SIGNUP_FORMS", "name": "List signup forms", "description": "Get signup forms for a specific list." }, { "slug": "MAILCHIMP_LIST_STORED_FILES", "name": "List stored files", "description": "Get a list of available images and files stored in the File Manager for the account." }, { "slug": "MAILCHIMP_LIST_STORES", "name": "List stores", "description": "Get information about all stores in the account." }, { "slug": "MAILCHIMP_LIST_SUBSCRIBERS_REMOVED_FROM_WORKFLOW", "name": "List subscribers removed from workflow", "description": "Get information about subscribers who were removed from a classic automation workflow." }, { "slug": "MAILCHIMP_LIST_SURVEY_QUESTION_REPORTS", "name": "List survey question reports", "description": "Get reports for all questions in a specific survey. Returns detailed reporting data for each question in the survey, including response counts, answer distributions for choice questions, and average ratings for range questions. This action is useful for analyzing survey results and understanding how respondents answered each question. Prerequisites: - A survey must exist in your Mailchimp account (surveys are created in the web interface) - Use 'List survey reports' or 'Get information about all surveys for a list' to find survey IDs Returns 404 error if the survey_id does not exist." }, { "slug": "MAILCHIMP_LIST_SURVEY_REPORTS", "name": "List survey reports", "description": "Get reports for surveys." }, { "slug": "MAILCHIMP_LIST_SURVEY_RESPONSES", "name": "List survey responses", "description": "Retrieve all responses submitted to a survey. Returns a list of responses including respondent contact information, submission timestamps, and all question/answer results for each response. This endpoint is useful for analyzing survey results programmatically, exporting response data, or building integrations that react to survey submissions. Prerequisites: You must have an existing survey with at least one response. Surveys are created through the Mailchimp web interface and cannot be created via API. Use the 'List survey reports' or 'Get information about all surveys for a list' actions to find available survey IDs." }, { "slug": "MAILCHIMP_LIST_TEMPLATE_FOLDERS", "name": "List template folders", "description": "Retrieve all template folders from the Mailchimp account. Template folders are used to organize email templates. This action returns a paginated list of all folders with their IDs, names, and template counts. Use the count and offset parameters to paginate through large result sets." }, { "slug": "MAILCHIMP_LIST_TEMPLATES", "name": "List templates", "description": "Get a list of an account's available templates." }, { "slug": "MAILCHIMP_LIST_TOP_EMAIL_CLIENTS", "name": "List top email clients", "description": "Get the top email clients used by subscribers in a Mailchimp list/audience. Returns statistics about the email clients (e.g., Gmail, Apple Mail, Outlook) used by subscribers, including the number of members using each client and the percentage of the total list. This data is collected via open tracking and relies on image loading, so contacts who disable images will not be tracked." }, { "slug": "MAILCHIMP_LIST_TOP_OPEN_ACTIVITIES", "name": "List top open activities", "description": "Get top open locations for a specific campaign. Returns geographic data about where subscribers opened a campaign email, based on geocoding their IP addresses. Results include country codes, regions, and open counts for each location." }, { "slug": "MAILCHIMP_LIST_UNSUBSCRIBED_MEMBERS", "name": "List unsubscribed members", "description": "Get information about members who have unsubscribed from a specific campaign." }, { "slug": "MAILCHIMP_LIST_WEBHOOKS", "name": "List webhooks", "description": "Get information about all webhooks for a specific list." }, { "slug": "MAILCHIMP_PAUSE_AUTOMATED_EMAIL", "name": "Pause automated email", "description": "Pause a specific automated email within a classic automation workflow. This action pauses the sending of a specific automated email. The email must currently be in 'sending' (active) status. Use the start_automated_email action to resume a paused email. Prerequisites: - The automation workflow must exist - The email within the workflow must be in 'sending' status (not 'save' or 'paused') Common errors: - 400 Bad Request: Email is already paused or in draft state - 404 Not Found: Invalid workflow_id or workflow_email_id" }, { "slug": "MAILCHIMP_PAUSE_AUTOMATION_EMAILS", "name": "Pause automation emails", "description": "Pause all emails in a specific classic automation workflow. This action pauses all emails in a classic automation workflow. The automation must be in 'sending' status to be paused. If the automation is already paused or in draft/save status, the API will return an error. Use cases: - Temporarily stop an automation workflow from sending emails - Pause automation for maintenance or content updates - Stop emails during a campaign review period Note: To resume a paused automation, use the start_automation_emails action." }, { "slug": "MAILCHIMP_PAUSE_RSS_CAMPAIGN", "name": "Pause RSS Campaign", "description": "Pause an RSS-Driven campaign that is currently sending. This action pauses an active RSS campaign, stopping it from sending new emails based on its schedule until it is resumed. Only campaigns of type 'rss' that are currently in 'sending' status can be paused. Prerequisites: - The campaign must be of type 'rss' (not 'regular', 'plaintext', etc.) - The campaign must be in 'sending' status (actively running according to schedule) - Campaigns in 'save', 'paused', or 'sent' status cannot be paused Use RESUME_RSS_CAMPAIGN to resume a paused RSS campaign. Use LIST_CAMPAIGNS with type='rss' to find RSS campaigns." }, { "slug": "MAILCHIMP_PING", "name": "Ping", "description": "A health check for the API that won't return any account-specific information." }, { "slug": "MAILCHIMP_PUBLISH_A_SURVEY", "name": "Publish a survey", "description": "Publishes a survey that is in draft, unpublished, or has been previously published and edited. Once published, the survey becomes accessible via its public URL and can collect responses from your audience. Prerequisites: The survey must exist on the specified list and must be created through the Mailchimp web interface (surveys cannot be created via the API). The survey must be in 'draft' or 'unpublished' status. Use 'Get information about all surveys for a list' to find available surveys and their current status." }, { "slug": "MAILCHIMP_PUBLISH_LANDING_PAGE", "name": "Publish landing page", "description": "Publish a Mailchimp landing page to make it live and accessible to visitors. Publishes a landing page that is currently in 'draft', 'unpublished', or has been previously published and edited. Once published, the landing page will be accessible via its public URL. Requirements: - The landing page must exist and be in a publishable state (draft or unpublished) - The Mailchimp account must have sending permissions enabled - The landing page should have valid content configured Note: Returns HTTP 204 No Content on successful publish with an empty response body." }, { "slug": "MAILCHIMP_REMOVE_LIST_MEMBER_FROM_SEGMENT", "name": "Remove list member from segment", "description": "Remove a member from a static segment in a Mailchimp list/audience. This action removes a list member from a specified static segment. The member remains in the list - they are only removed from the segment membership. Important notes: - Only works with static segments (type='static'), not dynamic/saved segments - Returns HTTP 204 No Content on success - Returns HTTP 404 if the member is not found in the segment - This is an idempotent operation" }, { "slug": "MAILCHIMP_REMOVE_SUBSCRIBER_FROM_WORKFLOW", "name": "Remove subscriber from workflow", "description": "Remove a subscriber from a classic automation workflow at any point in the sequence. IMPORTANT: Once removed, the subscriber can NEVER be re-added to the same workflow. This action is irreversible. Prerequisites: - The automation must be in 'sending' or 'paused' status (not 'save' or 'archived') - The automation must have a list/audience associated with it - The email address must belong to a subscriber on that list Use MAILCHIMP_LIST_AUTOMATIONS to find workflows and check their status. Use MAILCHIMP_LIST_MEMBERS_INFO to verify subscriber email addresses." }, { "slug": "MAILCHIMP_REPLICATE_CAMPAIGN", "name": "Replicate campaign", "description": "Replicate a campaign in saved or send status." }, { "slug": "MAILCHIMP_RESEND_CAMPAIGN", "name": "Resend campaign", "description": "Resend a previously sent campaign to specific subscriber segments. This creates a replica of the original campaign and sends it to common segments such as those who didn't open the original campaign, didn't click any links, or new subscribers added since the campaign was sent. IMPORTANT: The original campaign must: - Have been previously sent (status='sent') - Have tracking enabled (opens/clicks tracking) - Be eligible for resending (check the 'resendable' field on the campaign)" }, { "slug": "MAILCHIMP_RESUME_RSS_CAMPAIGN", "name": "Resume rss campaign", "description": "Resume an RSS-Driven campaign that was previously paused. This action restarts the RSS feed delivery schedule for a paused RSS campaign. The campaign will continue checking the RSS feed and sending emails according to its configured schedule. Prerequisites: - Campaign must be of type 'rss' - Campaign must be in 'paused' status (was previously running and then paused) - Use PAUSE_RSS_CAMPAIGN to pause a running RSS campaign first - Use LIST_CAMPAIGNS with type='rss' and status='paused' to find eligible campaigns On success, returns HTTP 204 No Content. The campaign status will change from 'paused' back to 'sending'." }, { "slug": "MAILCHIMP_RETRIEVE_CAMPAIGN_ABUSE_COMPLAINTS", "name": "Retrieve campaign abuse complaints", "description": "Get a list of abuse complaints for a specific campaign." }, { "slug": "MAILCHIMP_RETRIEVE_FOLDER_CONTENTS", "name": "Retrieve folder contents", "description": "Get a list of available images and files stored in this folder." }, { "slug": "MAILCHIMP_SCHEDULE_CAMPAIGN", "name": "Schedule campaign", "description": "Schedule a campaign for delivery at a specific date and time. Important notes: - The campaign must be in 'save' (draft) status and pass all send checklist items - Schedule time must be in the future and on the quarter-hour (:00, :15, :30, :45) - If using Multivariate Campaigns to test send times or RSS Campaigns, use the send action instead - Timewarp and Batch Delivery cannot be used together - Requires a paid Mailchimp plan to schedule campaigns (free plans cannot schedule)" }, { "slug": "MAILCHIMP_SEARCH_CAMPAIGNS", "name": "Search campaigns", "description": "Search all campaigns for the specified query terms. This action searches across campaign titles, subject lines, and content to find campaigns matching the provided query. Returns detailed campaign information including settings, tracking configuration, recipients, and status. Use the 'fields' parameter to limit response data or 'exclude_fields' to remove unnecessary fields like '_links' for cleaner responses." }, { "slug": "MAILCHIMP_SEARCH_FOR_TAGS_ON_A_LIST_BY_NAME", "name": "Search for tags on a list by name", "description": "Search for tags on a list by name. If no name is provided, will return all tags on the list." }, { "slug": "MAILCHIMP_SEARCH_MEMBERS", "name": "Search members", "description": "Search for list members. This search can be restricted to a specific list, or can be used to search across all lists in an account." }, { "slug": "MAILCHIMP_SEND_CAMPAIGN", "name": "Send campaign", "description": "Send a Mailchimp campaign immediately. For RSS Campaigns, the campaign will send according to its schedule. All other campaign types (regular, plaintext, variate) will send immediately upon calling this endpoint. Prerequisites: - Campaign must be in 'save' (draft) status - Campaign must have a valid audience (list_id) with at least one recipient - Campaign must have a subject line, from name, and verified from email address - Campaign must have content (HTML or plain text) - The sending account must be in good standing (verified, not disabled) On success, returns HTTP 204 No Content. The campaign status will change to 'sending' and then 'sent' once all emails are delivered." }, { "slug": "MAILCHIMP_SEND_TEST_EMAIL", "name": "Send test email", "description": "Send a test email for a campaign to preview it before sending to your audience. This action allows you to send a test version of your campaign to specified email addresses to verify the content, formatting, and personalization before the final send. The campaign must have content set before a test email can be sent." }, { "slug": "MAILCHIMP_SET_CAMPAIGN_CONTENT", "name": "Set campaign content", "description": "Set the content for a campaign." }, { "slug": "MAILCHIMP_START_AUTOMATED_EMAIL", "name": "Start automated email", "description": "Start a specific automated email within an Automation workflow. This action starts sending a specific automated email that is part of a classic automation workflow. The email must be in a 'paused' status to be started. Emails in 'save' (draft) status may need additional configuration in the Mailchimp web interface before they can be started. Prerequisites: - The automation workflow must exist and not be archived - The automated email must be properly configured (subject line, content, etc.) - The email should be in 'paused' status (use Pause Automated Email first if needed) Common error responses: - 400: The automation email is missing requirements and can't be started - 404: The workflow_id or workflow_email_id was not found" }, { "slug": "MAILCHIMP_START_AUTOMATION_EMAILS", "name": "Start automation emails", "description": "Start all emails in a classic automation workflow. This action starts all emails in a specific classic automation workflow. Once started, the automation will begin sending emails to subscribers based on its configured triggers. Prerequisites: - The automation must be in 'save' status (not 'archived') - The automation must be properly configured with email content - For abandoned cart automations, additional setup may be required in the UI Returns HTTP 204 No Content on success." }, { "slug": "MAILCHIMP_START_BATCH_OPERATION", "name": "Start batch operation", "description": "Begin processing a batch operations request." }, { "slug": "MAILCHIMP_UNPUBLISH_A_SURVEY", "name": "Unpublish a survey", "description": "Unpublishes a survey that is currently published, making it unavailable for responses. The survey must be in 'published' status before calling this action. Prerequisites: The survey must exist on the specified list and be currently published. Surveys are created through the Mailchimp web interface, not via the API. Use 'Get information about all surveys for a list' to find available survey IDs, and 'Get survey' to verify a survey's current status before unpublishing. Returns the updated survey details with status changed to 'unpublished'." }, { "slug": "MAILCHIMP_UNPUBLISH_LANDING_PAGE", "name": "Unpublish landing page", "description": "Unpublish a Mailchimp landing page. Takes a published landing page offline, changing its status back to draft. The page URL will no longer be accessible to visitors after unpublishing. This action can also be called on pages that are already in draft status (it will succeed without error). To publish a landing page, use the publish_landing_page action." }, { "slug": "MAILCHIMP_UNSCHEDULE_CAMPAIGN", "name": "Unschedule campaign", "description": "Unschedule a scheduled campaign that hasn't started sending. The campaign must be in 'schedule' status (not 'save', 'sent', or 'sending'). After unscheduling, the campaign status reverts to 'save' and can be edited or rescheduled. Returns HTTP 204 No Content on success." }, { "slug": "MAILCHIMP_UPDATE_AUDIENCES_CONTACTS", "name": "Update contact in audience", "description": "Update an existing omni-channel contact in a Mailchimp audience. Use when you need to modify contact details such as language, tags, email/SMS channels, or merge fields." }, { "slug": "MAILCHIMP_UPDATE_BATCH_WEBHOOK", "name": "Update batch webhook", "description": "Update a webhook that will fire whenever any batch request completes processing." }, { "slug": "MAILCHIMP_UPDATE_CAMPAIGN_FEEDBACK_MESSAGE", "name": "Update campaign feedback message", "description": "Update a specific feedback message for a campaign." }, { "slug": "MAILCHIMP_UPDATE_CAMPAIGN_FOLDER", "name": "Update campaign folder", "description": "Update the name of a campaign folder in Mailchimp. Campaign folders help organize email marketing campaigns into logical groups. Use this action to rename an existing folder. Returns the updated folder details including the folder ID, new name, and the count of campaigns in the folder." }, { "slug": "MAILCHIMP_UPDATE_CAMPAIGN_SETTINGS", "name": "Update campaign settings", "description": "Update some or all of the settings for a specific campaign." }, { "slug": "MAILCHIMP_UPDATE_CART", "name": "Update cart", "description": "Update a specific cart." }, { "slug": "MAILCHIMP_UPDATE_CART_LINE_ITEM", "name": "Update cart line item", "description": "Update a specific cart line item in a Mailchimp e-commerce store. Use this action to modify the quantity, price, or product association of an existing line item in a shopping cart. All update fields are optional - only provide the fields you want to change. Carts and their line items are typically used for abandoned cart automations." }, { "slug": "MAILCHIMP_UPDATE_CUSTOMER", "name": "Update customer", "description": "Update an e-commerce customer's information in a Mailchimp store. Updates customer details such as name, company, opt-in status, and address. Note: The store must be associated with a Mailchimp list (audience) for this operation to succeed." }, { "slug": "MAILCHIMP_UPDATE_FILE", "name": "Update file", "description": "Update an existing file's name or folder in the Mailchimp File Manager. This action allows you to rename a file or move it to a different folder. You can update the name, folder, or both in a single request. At least one of 'name' or 'folder_id' should be provided to make a meaningful update. To move a file to the root folder, set folder_id to 0. The file's content and URLs remain unchanged; only the metadata is updated. Returns the updated file's details including its ID, name, folder, URLs, and metadata." }, { "slug": "MAILCHIMP_UPDATE_FOLDER", "name": "Update folder", "description": "Update the name of a File Manager folder in Mailchimp. Use this action to rename an existing folder in the Mailchimp File Manager. File Manager folders help organize images and other files used in campaigns, templates, and other Mailchimp content. Note: Only the folder name can be updated. The folder ID and creation metadata remain unchanged." }, { "slug": "MAILCHIMP_UPDATE_INTEREST_CATEGORY", "name": "Update interest category", "description": "Update a specific interest category." }, { "slug": "MAILCHIMP_UPDATE_INTEREST_IN_CATEGORY", "name": "Update interest in category", "description": "Update an interest (group name) within an interest category on a Mailchimp list. Use this action to modify the name or display order of an existing interest. Interests are used to segment subscribers based on their preferences. The 'name' parameter is required for this update operation." }, { "slug": "MAILCHIMP_UPDATE_LANDING_PAGE", "name": "Update landing page", "description": "Update a landing page." }, { "slug": "MAILCHIMP_UPDATE_LIST_MEMBER", "name": "Update list member", "description": "Update information for a specific list member." }, { "slug": "MAILCHIMP_UPDATE_LISTS", "name": "Update lists", "description": "Update settings for a Mailchimp audience (list). This PATCH endpoint supports partial updates - only include the fields you want to change. The list_id is required to identify which audience to update. All other fields are optional. To update contact information, use the contact__* fields (e.g., contact__company, contact__city). To update campaign defaults, use the campaign__defaults__* fields (e.g., campaign__defaults__from__name)." }, { "slug": "MAILCHIMP_UPDATE_LISTS_SEGMENTS", "name": "Update lists segments", "description": "Update a specific segment in a list. Use when you need to modify segment name, conditions, or static members." }, { "slug": "MAILCHIMP_UPDATE_MERGE_FIELD", "name": "Update merge field", "description": "Update a specific merge field (audience field) for a Mailchimp list. Use this action to modify properties of an existing merge field such as its name, whether it's required, default value, display order, help text, and type-specific options. Only provide the fields you want to change." }, { "slug": "MAILCHIMP_UPDATE_NOTE", "name": "Update note", "description": "Update a specific note for a specific list member." }, { "slug": "MAILCHIMP_UPDATE_ORDER", "name": "Update order", "description": "Update a specific order." }, { "slug": "MAILCHIMP_UPDATE_ORDER_LINE_ITEM", "name": "Update order line item", "description": "Update a specific order line item." }, { "slug": "MAILCHIMP_UPDATE_PRODUCT", "name": "Update product", "description": "Update a specific product." }, { "slug": "MAILCHIMP_UPDATE_PRODUCT_IMAGE", "name": "Update product image", "description": "Update a product image in a Mailchimp e-commerce store. Use this action to modify an existing product image's URL or associate it with specific product variants. Requires valid store_id, product_id, and image_id. At least one of 'url' or 'variant_ids' must be provided in the request body." }, { "slug": "MAILCHIMP_UPDATE_PRODUCT_VARIANT", "name": "Update product variant", "description": "Update a product variant." }, { "slug": "MAILCHIMP_UPDATE_PROMO_CODE", "name": "Update promo code", "description": "Update a promo code." }, { "slug": "MAILCHIMP_UPDATE_PROMO_RULE", "name": "Update promo rule", "description": "Update an existing promo rule for an e-commerce store. Promo rules define discount promotions that can be applied to orders, items, or shipping. Only the fields provided will be updated." }, { "slug": "MAILCHIMP_UPDATE_STORE", "name": "Update store", "description": "Update a store." }, { "slug": "MAILCHIMP_UPDATE_TEMPLATE", "name": "Update template", "description": "Update the name, HTML, or `folder_id` of an existing template." }, { "slug": "MAILCHIMP_UPDATE_TEMPLATE_FOLDER", "name": "Update Template Folder", "description": "Update the name of an existing template folder in Mailchimp. Template folders help organize email templates for easier management. Use this action to rename a folder. The folder_id can be obtained from the add_template_folder or list_template_folders actions. Returns the updated folder information including the new name, folder ID, and the count of templates contained in the folder." }, { "slug": "MAILCHIMP_UPDATE_WEBHOOK", "name": "Update webhook", "description": "Update the settings for an existing webhook in a Mailchimp list (audience). This action allows you to modify the URL, event triggers, and source triggers of a webhook. Only the settings you provide will be updated; other settings will remain unchanged." }, { "slug": "MAILCHIMP_UPDATE_WORKFLOW_EMAIL", "name": "Update workflow email", "description": "Update settings for a classic automation workflow email. Only works with workflows of type: abandonedBrowse, abandonedCart, emailFollowup, or singleWelcome." }, { "slug": "MAILCHIMP_UPSERT_ECOMMERCE_STORES_ORDERS", "name": "Upsert ecommerce stores orders", "description": "Add or update an e-commerce order in a Mailchimp store. Uses PUT semantics - if the order exists it will be updated, otherwise a new order will be created. The order_id in the path and the id in the request body should match." }, { "slug": "MAILCHIMP_UPSERT_ECOMMERCE_STORES_PRODUCTS", "name": "Upsert ecommerce stores products", "description": "Create or update a product in a Mailchimp e-commerce store. Use when you need to add a new product or update an existing product with idempotent behavior. This endpoint uses PUT semantics - if the product exists, it will be updated; if not, a new product will be created." }, { "slug": "MAILCHIMP_VERIFY_CONNECTED_SITE_SCRIPT", "name": "Verify connected site script", "description": "Verify that the Mailchimp connected site tracking script has been installed on the website. This checks if the script is properly installed either via the script URL or HTML fragment. Use this to confirm a connected site's tracking integration is working correctly. Returns HTTP 204 on success (script is installed) or HTTP 404 if the site is not found." }, { "slug": "MAILCHIMP_VERIFY_DOMAIN", "name": "Verify domain", "description": "Complete domain verification by submitting the verification code. This action completes the domain verification process started by 'add_domain_to_account'. When a domain is added, a verification email is sent to the specified email address containing a unique verification code. Use this action to submit that code and complete the verification. Once verified, the domain can be used as a sender address in campaigns. Prerequisites: - Domain must be added first using 'add_domain_to_account' - Domain status should be 'VERIFICATION_IN_PROGRESS' - You need the verification code from the email sent during domain addition Common errors: - 400: Invalid verification code - the code doesn't match or has expired - 404: Domain not found - the domain hasn't been added to the account" }, { "slug": "MAILCHIMP_VIEW_DEFAULT_CONTENT", "name": "View default content", "description": "Get the sections that you can edit in a template, including each section's default content." }, { "slug": "MAILCHIMP_VIEW_RECENT_ACTIVITY", "name": "View recent activity", "description": "Get a member's activity on a specific list, including opens, clicks, and unsubscribes." }, { "slug": "MAILCHIMP_VIEW_RECENT_ACTIVITY50", "name": "View recent activity 50", "description": "Get the last 50 events of a member's activity on a specific list, including opens, clicks, and unsubscribes." } ], "triggers": [ { "slug": "MAILCHIMP_CAMPAIGN_TRIGGER", "name": "Campaign Trigger", "description": "Triggered when a campaign is sent or experiences an event in Mailchimp" }, { "slug": "MAILCHIMP_PROFILE_UPDATE_TRIGGER", "name": "Profile Update Trigger", "description": "Triggered when a subscriber's profile is updated in Mailchimp" }, { "slug": "MAILCHIMP_SUBSCRIBE_TRIGGER", "name": "Subscribe Trigger", "description": "Triggered when a subscriber subscribes to Mailchimp" }, { "slug": "MAILCHIMP_UNSUBSCRIBE_TRIGGER", "name": "Unsubscribe Trigger", "description": "Triggered when a subscriber unsubscribes from Mailchimp" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "mailchimp_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Server Prefix", "type": "string", "description": "The region code in your Mailchimp URL — e.g. 'us19' in us19.admin.mailchimp.com. Log in and copy it from your browser address bar (also after the dash in your API key).", "required": true, "default": "us21" } ], "optional": [] } } } ] }, { "slug": "attio", "name": "Attio", "logo": "https://logos.composio.dev/api/attio", "description": "Attio is a fully customizable workspace for your team's relationships and workflows.", "category": "crm", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 108, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ATTIO_ASSERT_COMPANY", "name": "Assert Company (Create or Update)", "description": "Creates or updates a company record in Attio using a unique attribute to search for existing companies. If a company is found with the same value for the matching attribute, that company will be updated. If no company is found, a new one will be created. Use this when you prefer to update records on conflicts." }, { "slug": "ATTIO_ASSERT_PERSON", "name": "Assert Person Record", "description": "Tool to create or update person records using a unique attribute to search for existing people. Use when you want to ensure a person exists with specific details without creating duplicates." }, { "slug": "ATTIO_ASSERT_USER_RECORD", "name": "Assert User Record (Create or Update)", "description": "Creates or updates a user record in Attio using a unique attribute to search for existing users. If a user is found with the same value for the matching attribute, that user will be updated. If no user is found, a new one will be created. Use this to ensure user records exist without duplicates." }, { "slug": "ATTIO_ASSERT_WORKSPACE", "name": "Assert Workspace (Create or Update)", "description": "Creates or updates a workspace record in Attio using a unique attribute to search for existing workspaces. If a workspace is found with the same value for the matching attribute, that workspace will be updated. If no workspace is found, a new one will be created." }, { "slug": "ATTIO_CREATE_ATTRIBUTE", "name": "Create Attribute", "description": "Tool to create a new attribute on an object or list in Attio. Use when you need to add custom fields to track additional information. For record-reference types, you can establish bidirectional relationships by supplying a relationship object." }, { "slug": "ATTIO_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment on a thread, record, or list entry in Attio. Use when you need to add a comment to an existing conversation, a record (like a person, company, or deal), or a list entry." }, { "slug": "ATTIO_CREATE_COMPANY", "name": "Create Company", "description": "Creates a new company record in Attio. This endpoint will throw an error on conflicts of unique attributes like domains. If you prefer to update company records on conflicts, use the Assert company record endpoint instead. Note: The logo_url attribute cannot currently be set via the API." }, { "slug": "ATTIO_CREATE_DEAL_RECORD", "name": "Create Deal Record", "description": "Tool to create a new deal record in Attio. Use when you need to track a new sales opportunity or deal. This endpoint will throw an error on conflicts of unique attributes. Minimal requirement is providing at least one attribute value." }, { "slug": "ATTIO_CREATE_ENTRY", "name": "Create Entry (Deprecated)", "description": "DEPRECATED: Use ATTIO_ATTIO_POST_V2_LISTS_LIST_ENTRIES instead. Tool to add a record to a list as a new list entry in Attio. Use when you need to organize records into specific lists. Throws errors on unique attribute conflicts. Multiple list entries are allowed for the same parent record." }, { "slug": "ATTIO_CREATE_LIST", "name": "Create List", "description": "Tool to create a new list in Attio. Use when you need to organize records into custom lists. Once created, add attributes using the Create Attribute API and add records using the Create Entry API. New lists must have either workspace_access set to 'full-access' or one or more workspace_member_access with 'full-access' level." }, { "slug": "ATTIO_CREATE_NOTE", "name": "Create Note", "description": "This tool creates a new note on a given record in Attio. The note can be attached to any record type (like person, company, or deal) and includes a title and content. It requires parameters such as parent_object, parent_record_id, title, and content, with an optional created_at timestamp." }, { "slug": "ATTIO_CREATE_OBJECT", "name": "Create Object", "description": "Tool to create a new custom object in your Attio workspace. Use when you need to add a new object type beyond the standard objects (people, companies, deals, users, workspaces). Requires api_slug (snake_case identifier), singular_noun, and plural_noun." }, { "slug": "ATTIO_CREATE_PERSON", "name": "Create Person", "description": "Creates a new person record in Attio. This endpoint will throw an error on conflicts of unique attributes like email_addresses. If you prefer to update person records on conflicts instead, use the Assert person record endpoint. Note: The avatar_url attribute cannot currently be set via the API." }, { "slug": "ATTIO_CREATE_RECORD", "name": "Create Record", "description": "This tool creates a new record in Attio for a specified object type (people, companies, deals, users, workspaces, etc.). It requires the object type and a values dictionary containing the attributes for the new record. IMPORTANT: Different object types have different attributes. For example: - 'people' object uses: name, email_addresses, phone_numbers, primary_location, job_title, etc. - 'users' object uses: primary_email_address, user_id, person, workspace - 'companies' object uses: name, domains, description, etc. Always verify the correct attribute names for your target object type before creating records. Use the List Attributes API or check your workspace to see available attributes for each object type." }, { "slug": "ATTIO_CREATE_SELECT_OPTION", "name": "Create Select Option", "description": "Tool to add a new select option to a select or multiselect attribute in Attio. Use when you need to add a new choice to an existing select field." }, { "slug": "ATTIO_CREATE_STATUS", "name": "Create Status", "description": "Tool to add a new status to a status attribute on either an object or a list. Use when you need to create a new status option for status attributes. Company and person objects do not support status attributes at this time." }, { "slug": "ATTIO_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Attio. Use when you need to add a task with content and optional deadline, assignees, or linked records. Note: Tasks can only be created from plaintext without record reference formatting." }, { "slug": "ATTIO_CREATE_USER_RECORD", "name": "Create User Record", "description": "Creates a new user record in Attio. User records represent workspace members or users in the system. Requires primary_email_address, user_id, and workspace_id. Optionally link to an existing person record. Note: Required attributes may vary based on workspace configuration - check the List Attributes action if you encounter missing_value errors." }, { "slug": "ATTIO_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook and subscribe to events in Attio. Use when you need to set up a new webhook endpoint to receive real-time event notifications. Returns the webhook configuration including a one-time signing secret for verifying event authenticity." }, { "slug": "ATTIO_CREATE_WORKSPACE_RECORD", "name": "Create Workspace Record", "description": "Creates a new workspace record in Attio. The workspace_id field is required and must be unique. This endpoint will throw an error on conflicts of unique attributes. Use when you need to create a new workspace entry in your Attio workspace." }, { "slug": "ATTIO_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment by its comment_id. Use when you need to remove a comment from Attio. If the comment is at the head of a thread, all messages in the thread are also deleted. The operation is permanent and cannot be undone." }, { "slug": "ATTIO_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company record from Attio by its record_id. Use when you need to permanently remove a company record. The deletion is irreversible and cannot be recovered." }, { "slug": "ATTIO_DELETE_DEAL", "name": "Delete Deal", "description": "Tool to delete a deal record from Attio by its record_id. Use when you need to permanently remove a deal record. The deletion is irreversible and cannot be recovered." }, { "slug": "ATTIO_DELETE_ENTRY", "name": "Delete List Entry", "description": "Tool to delete a single list entry by its entry_id in Attio. Use when you need to remove an entry from a specific list. The operation is permanent and cannot be undone." }, { "slug": "ATTIO_DELETE_NOTE", "name": "Delete Note", "description": "This tool allows users to delete a specific note in Attio by its ID. It is implemented via DELETE https://api.attio.com/v2/notes/{note_id} and handles note deletion by validating the provided note_id. It complements ATTIO_CREATE_NOTE functionality, providing complete note management capabilities within the Attio platform." }, { "slug": "ATTIO_DELETE_PERSON", "name": "Delete Person", "description": "Tool to delete a person record from Attio by its record_id. Use when you need to permanently remove a person record. The deletion is irreversible and cannot be recovered." }, { "slug": "ATTIO_DELETE_RECORD", "name": "Delete Record", "description": "This tool allows you to delete a record from Attio permanently. The deletion is irreversible, and the data will eventually be removed from the system." }, { "slug": "ATTIO_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task by its task_id. Use when you need to remove a task from Attio. The operation is permanent and cannot be undone." }, { "slug": "ATTIO_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user record from Attio by its record_id. Use when you need to permanently remove a user record. The deletion is irreversible and cannot be recovered." }, { "slug": "ATTIO_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its webhook_id. Use when you need to remove a webhook subscription from Attio. The operation is permanent and cannot be undone." }, { "slug": "ATTIO_DELETE_WORKSPACE_RECORD", "name": "Delete Workspace Record", "description": "Tool to delete a workspace record from Attio by its record_id. Use when you need to permanently remove a workspace record. The deletion is irreversible and cannot be recovered." }, { "slug": "ATTIO_FIND_RECORD", "name": "Find Record", "description": "This tool allows users to find a record in Attio by either its unique ID or by searching using unique attributes. It provides two methods: one for directly retrieving a record by its ID with the GET /v2/objects/{object}/records/{record_id} endpoint, and another for searching by attributes using the POST /v2/objects/{object}/records/query endpoint." }, { "slug": "ATTIO_GET_ATTRIBUTE", "name": "Get Attribute Details", "description": "Tool to get information about a single attribute on either an object or a list. Use when you need detailed information about a specific attribute's configuration, type, or metadata." }, { "slug": "ATTIO_GET_COMMENT", "name": "Get Comment", "description": "Tool to get a single comment by its comment_id in Attio. Use when you need to retrieve detailed information about a specific comment, including its content, author, thread, and resolution status." }, { "slug": "ATTIO_GET_COMPANY", "name": "Get Company", "description": "Tool to get a single company record by its record_id in Attio. Use when you need to retrieve detailed information about a specific company. Returns all attribute values for the company with temporal and audit metadata." }, { "slug": "ATTIO_GET_DEAL_RECORD", "name": "Get Deal Record", "description": "Tool to get a single deal record by its record_id in Attio. Use when you need to retrieve detailed information about a specific deal. Returns all attribute values for the deal with temporal and audit metadata." }, { "slug": "ATTIO_GET_LIST", "name": "Get List", "description": "Tool to retrieve details of a single list in your Attio workspace. Use when you need to get information about a specific list by its UUID or slug." }, { "slug": "ATTIO_GET_LIST_ENTRY", "name": "Get List Entry", "description": "Tool to get a single list entry by its entry_id. Use when you need to retrieve detailed information about a specific entry in an Attio list." }, { "slug": "ATTIO_GET_NOTE", "name": "Get Note", "description": "Tool to get a single note by its note_id in Attio. Use when you need to retrieve detailed information about a specific note, including its title, content (plaintext and markdown), tags, and creator information." }, { "slug": "ATTIO_GET_OBJECT", "name": "Get Object", "description": "Tool to get a single object by its object_id or slug. Use to retrieve detailed schema information about a specific object type in the Attio workspace. Also use as a prerequisite validation step before calling ATTIO_FIND_RECORD, ATTIO_LIST_RECORDS, or ATTIO_CREATE_RECORD — attribute slugs must exactly match what this tool returns. The returned schema defines required attributes for record creation; omitting them causes invalid_request_error with code missing_value (HTTP 400). Custom attributes (e.g., industry, category) vary by object type — verify their presence and data type here before building filters or record values." }, { "slug": "ATTIO_GET_RECORD", "name": "Get Record", "description": "DEPRECATED: Use ATTIO_FIND_RECORD instead. Tool to get a single person, company, or other record by its record_id in Attio. Use when you need to retrieve detailed information about a specific record. Returns all attribute values for the record with temporal and audit metadata." }, { "slug": "ATTIO_GET_RECORD_ENTRIES", "name": "List Record Entries", "description": "Tool to list all entries, across all lists, for which a record is the parent. Use when you need to find which lists a specific record belongs to. Returns list IDs, slugs, entry IDs, and creation timestamps." }, { "slug": "ATTIO_GET_SELF", "name": "Get Current Token Info", "description": "Tool to identify the current access token, the workspace it is linked to, and any permissions it has. Use when you need to verify token validity or retrieve workspace information associated with the current authentication." }, { "slug": "ATTIO_GET_TASK", "name": "Get Task", "description": "Tool to get a single task by its task_id in Attio. Use when you need to retrieve detailed information about a specific task, including its content, deadline, assignees, and linked records." }, { "slug": "ATTIO_GET_V2_OBJECTS_OBJECT_RECORDS_RECORD_ID", "name": "Get Record by ID", "description": "DEPRECATED: Use ATTIO_FIND_RECORD instead. Tool to get a single person, company or other record by its record_id. Use when you need to retrieve detailed information about a specific record." }, { "slug": "ATTIO_GET_V2_TASKS", "name": "List Tasks", "description": "Tool to list all tasks in the workspace. Use when you need to retrieve tasks, optionally filtering by assignee, completion status, or linked records. Results are sorted by creation date from oldest to newest by default." }, { "slug": "ATTIO_GET_V2_WORKSPACE_MEMBERS", "name": "Get V2 Workspace Members (Deprecated)", "description": "DEPRECATED: Use ATTIO_LIST_WORKSPACE_MEMBERS instead. Tool to list all workspace members in the workspace. Use when you need to retrieve information about workspace members, their access levels, or their identities." }, { "slug": "ATTIO_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to get a single webhook by its webhook_id in Attio. Use when you need to retrieve detailed information about a specific webhook configuration. Returns the webhook's target URL, event subscriptions, status, and metadata." }, { "slug": "ATTIO_GET_WORKSPACE_MEMBER", "name": "Get Workspace Member", "description": "Tool to get a single workspace member by their workspace_member_id. Use when you need details about a specific workspace member, including their name, email, access level, and avatar." }, { "slug": "ATTIO_GET_WORKSPACE_RECORD", "name": "Get Workspace Record", "description": "Tool to get a single workspace record by its record_id. Use when you need to retrieve detailed information about a specific workspace. Returns all attribute values for the workspace record with temporal and audit metadata." }, { "slug": "ATTIO_LIST_ATTRIBUTE_OPTIONS", "name": "List Attribute Options", "description": "Tool to list all select options for a particular attribute on either an object or a list. Use when you need to discover available options for select or status type attributes." }, { "slug": "ATTIO_LIST_ATTRIBUTES", "name": "List Attributes", "description": "Tool to list the attribute schema for an Attio object or list (including slugs, types, select/status config) to enable correct filtering and writes. Use when you need to discover what attributes exist on an object or list, their types, and their configuration (e.g., available options for select/status attributes). Returns attributes in UI sort order." }, { "slug": "ATTIO_LIST_ATTRIBUTE_STATUSES", "name": "List Attribute Statuses", "description": "Tool to list all statuses for a particular status attribute on either an object or a list. Use when you need to discover available statuses for a status attribute, including their IDs, titles, and configuration." }, { "slug": "ATTIO_LIST_CALL_RECORDINGS", "name": "List Call Recordings", "description": "Tool to list all call recordings for a meeting in Attio. Use when you need to retrieve call recordings associated with a specific meeting. This endpoint is in beta." }, { "slug": "ATTIO_LIST_COMPANIES", "name": "List Companies", "description": "Tool to list company records in Attio with optional filtering and sorting. Use when you need to retrieve company records based on criteria like domain, name, or description." }, { "slug": "ATTIO_LIST_COMPANY_ATTRIBUTE_VALUES", "name": "List Company Attribute Values", "description": "Tool to get all values for a given attribute on a company record. Historic values can be queried using the show_historic query param. Historic values cannot be queried on COMINT or enriched attributes. Some attributes are subject to billing status and may return an empty array." }, { "slug": "ATTIO_LIST_COMPANY_RECORD_ENTRIES", "name": "List Company Record Entries", "description": "Tool to list all entries across all lists for which a company record is the parent in Attio. Use when you need to see which lists a particular company record belongs to. Returns list information and entry IDs for each list the company appears in." }, { "slug": "ATTIO_LIST_DEAL_ENTRIES", "name": "List Deal Entries", "description": "Tool to list all entries across all lists for which a deal record is the parent in Attio. Use when you need to see which lists a particular deal record belongs to. Returns list information and entry IDs for each list the deal appears in." }, { "slug": "ATTIO_LIST_DEAL_RECORD_ATTRIBUTE_VALUES", "name": "List Deal Record Attribute Values", "description": "Tool to retrieve all values for a specified attribute on a deal record in Attio. Use when you need to see current or historic values for a specific deal attribute. Historic values can be queried using show_historic param but cannot be queried on COMINT or enriched attributes." }, { "slug": "ATTIO_LIST_DEAL_RECORDS", "name": "List Deal Records", "description": "Tool to list deal records in Attio with the option to filter and sort results. Use when you need to retrieve deal records based on filter criteria or sorting requirements." }, { "slug": "ATTIO_LIST_ENTRIES", "name": "List Entries (Deprecated)", "description": "DEPRECATED: Use ATTIO_ATTIO_POST_V2_LISTS_LIST_ENTRIES_QUERY instead. Tool to list entries in a given list with filtering and sorting options. Use when you need to retrieve records added to a specific list in Attio. Entries are returned based on the filters and sorts provided." }, { "slug": "ATTIO_LIST_LIST_ENTRIES", "name": "List List Entries (Deprecated)", "description": "DEPRECATED: Use ATTIO_ATTIO_POST_V2_LISTS_LIST_ENTRIES_QUERY instead. Tool to retrieve entries (records) that belong to a specific Attio list. Use when you need to enumerate list membership or access list-specific attribute values. This is distinct from listing all records of an object type - it specifically returns records that are members of a particular list." }, { "slug": "ATTIO_LIST_LIST_ENTRY_ATTRIBUTE_VALUES", "name": "List List Entry Attribute Values", "description": "Tool to retrieve all values for a specified attribute on a list entry in Attio. Use when you need to see the history of values for a specific attribute on a list entry. Can return only active values or include all historical values sorted chronologically." }, { "slug": "ATTIO_LIST_LISTS", "name": "List Lists", "description": "This tool retrieves all lists available in the Attio workspace, sorted as they appear in the sidebar. Returns list metadata only (names, IDs, configuration) — not the records/entries within those lists. To fetch actual list entries, use ATTIO_FIND_RECORD with appropriate filters. This tool is a prerequisite for many list-related operations. Requires the list_configuration:read permission scope." }, { "slug": "ATTIO_LIST_MEETINGS", "name": "List Meetings", "description": "Tool to list all meetings in the workspace using a deterministic sort order. Use when you need to retrieve meetings, optionally filtering by participants, linked records, or time ranges. This endpoint is in beta." }, { "slug": "ATTIO_LIST_NOTES", "name": "List Notes", "description": "Lists notes in Attio. Can list all notes in the workspace, or filter by parent object type and/or specific record. Notes are returned in reverse chronological order (newest first)." }, { "slug": "ATTIO_LIST_OBJECTS", "name": "List Objects", "description": "This tool retrieves a list of all available objects (both system-defined and user-defined) in the Attio workspace via GET /v2/objects, returning key metadata including slugs and IDs for each object. Call this tool first before ATTIO_LIST_RECORDS, ATTIO_FIND_RECORD, or ATTIO_CREATE_RECORD to discover valid object slugs — hardcoded slugs may not exist across workspaces. Concepts like tasks may be modeled as deals or custom objects rather than dedicated types, so confirm the correct object type before proceeding. Attribute values in responses can be arrays of time-bounded entries rather than simple scalars; downstream code must handle nested structures." }, { "slug": "ATTIO_LIST_PEOPLE_ATTRIBUTE_VALUES", "name": "List People Attribute Values", "description": "Tool to get all values for a given attribute on a person record. Use when you need to retrieve current or historic values for a specific person attribute. Historic values can be queried using the show_historic param but cannot be queried on COMINT or enriched attributes (returns 400 error)." }, { "slug": "ATTIO_LIST_PEOPLE_RECORD_ENTRIES", "name": "List People Record Entries", "description": "Tool to list all entries across all lists for which a person record is the parent in Attio. Use when you need to see which lists a particular person record belongs to. Returns list information and entry IDs for each list the person appears in." }, { "slug": "ATTIO_LIST_RECORD_ATTRIBUTE_VALUES", "name": "List Record Attribute Values", "description": "Tool to retrieve all values for a specified attribute on a record in Attio. Use when you need to see the history of values for a specific attribute. Can return only active values or include historical values. Historic values cannot be queried on COMINT or enriched attributes." }, { "slug": "ATTIO_LIST_RECORDS", "name": "List Records", "description": "This tool lists records from a specific object type in Attio. It provides simple pagination support and returns records in creation order (oldest first). For complex filtering, use the FindRecord action instead. Standard object types include: people, companies, deals, users, workspaces. If you get a 404 error, verify the object type exists using the List Objects action first. Response attribute values are returned as arrays of time-bounded objects under a `values` map (e.g., `values['name']`), not simple scalars — handle arrays, nested objects, and empty arrays accordingly. Select attributes are accessed via `option.title`; currency, stage, and select fields may be null or empty arrays. Access records via `data.data` in the response." }, { "slug": "ATTIO_LIST_THREADS", "name": "List Threads", "description": "Tool to list threads of comments on a record or list entry in Attio. Use when you need to view all comment threads associated with a specific record or list entry. Threads contain one or more comments sorted chronologically." }, { "slug": "ATTIO_LIST_USER_RECORD_ENTRIES", "name": "List User Record Entries", "description": "Tool to list all entries across all lists for which a user record is the parent in Attio. Use when you need to see which lists a particular user record belongs to. Returns list information and entry IDs for each list the user appears in." }, { "slug": "ATTIO_LIST_USER_RECORDS", "name": "List User Records", "description": "Tool to list user records in Attio with optional filtering and sorting. Use when you need to retrieve workspace members or user records based on specific criteria." }, { "slug": "ATTIO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to get all webhooks in your Attio workspace. Use when you need to retrieve a list of configured webhooks, their subscriptions, and statuses. Supports pagination via limit and offset parameters." }, { "slug": "ATTIO_LIST_WORKSPACE_MEMBERS", "name": "List Workspace Members", "description": "Tool to list workspace members (actors) so agents can reliably assign owners and resolve workspace-member IDs even when the optional Users standard object is disabled. Use when writing or assigning actor-reference attributes (e.g., record/list entry owners) that require referenced_actor_type=workspace-member and an actor id." }, { "slug": "ATTIO_LIST_WORKSPACE_RECORD_ATTRIBUTE_VALUES", "name": "List Workspace Record Attribute Values", "description": "Tool to retrieve all values for a specified attribute on a workspace record in Attio. Use when you need to see the history of values for a specific attribute on a workspace record. Can return only active values or include all historical values sorted chronologically." }, { "slug": "ATTIO_LIST_WORKSPACE_RECORD_ENTRIES", "name": "List Workspace Record Entries", "description": "Tool to list all entries across all lists for which a workspace record is the parent in Attio. Use when you need to see which lists a particular workspace record belongs to. Returns list information and entry IDs for each list the workspace appears in." }, { "slug": "ATTIO_LIST_WORKSPACE_RECORDS", "name": "List Workspace Records", "description": "Tool to list workspace records with filtering and sorting options. Use when you need to retrieve workspace-level records from Attio. Records are returned based on the filters and sorts provided. Requires record_permission:read and object_configuration:read scopes." }, { "slug": "ATTIO_PATCH_RECORD", "name": "Patch Record", "description": "Tool to update people, companies, and other records by record_id using PATCH method. For multiselect attributes, values supplied will be prepended to existing values. Use PUT endpoint to overwrite or remove multiselect values." }, { "slug": "ATTIO_PATCH_V2_LISTS_LIST_ENTRIES_ENTRY_ID", "name": "Update List Entry by Entry ID", "description": "Tool to update list entries by entry_id in Attio. Use when you need to modify attribute values on existing list entries. For multiselect attributes, the values supplied will be created and prepended to existing values. Use the PUT endpoint to overwrite or remove multiselect attribute values." }, { "slug": "ATTIO_PEOPLE_GET_PERSON", "name": "Get Person", "description": "Tool to get a single person record by its record_id in Attio. Use when you need to retrieve detailed information about a specific person. Returns all attribute values for the person with temporal and audit metadata." }, { "slug": "ATTIO_PEOPLE_LIST_PERSONS", "name": "List Person Records", "description": "Tool to list person records from Attio with optional filtering and sorting. Use when you need to retrieve people based on specific criteria or get a paginated list of all people." }, { "slug": "ATTIO_POST_V2_LISTS_LIST_ENTRIES", "name": "Create List Entry", "description": "Tool to add a record to a list as a new list entry in Attio. Use when you need to organize records into specific lists. This endpoint will throw on conflicts of unique attributes. Multiple list entries are allowed for the same parent record." }, { "slug": "ATTIO_POST_V2_LISTS_LIST_ENTRIES_QUERY", "name": "List List Entries", "description": "Tool to list entries in a given list, with the option to filter and sort results. Use when you need to retrieve records that belong to a specific list with optional filtering and sorting." }, { "slug": "ATTIO_POST_V2_OBJECTS_OBJECT_RECORDS", "name": "Create a record", "description": "DEPRECATED: Use ATTIO_CREATE_RECORD instead. Creates a new person, company or other record. This endpoint will throw on conflicts of unique attributes. If you would prefer to update records on conflicts, please use the Assert record endpoint instead." }, { "slug": "ATTIO_POST_V2_OBJECTS_OBJECT_RECORDS_QUERY", "name": "List Records with Query", "description": "Tool to list people, company or other records in Attio with the option to filter and sort results. Use when you need to retrieve records based on complex filter criteria or sorting requirements." }, { "slug": "ATTIO_POST_V2_OBJECTS_RECORDS_SEARCH", "name": "Search Records", "description": "DEPRECATED: Use ATTIO_SEARCH_RECORDS instead. Tool to fuzzy search for records across one or more objects in Attio. Use when you need to find records by name, domain, email, phone number, or social handle. This endpoint is in beta and returns eventually consistent results. For results guaranteed to be up to date, use the record query endpoint instead." }, { "slug": "ATTIO_PUT_V2_LISTS_LIST_ENTRIES", "name": "Assert List Entry by Parent", "description": "Tool to create or update a list entry for a given parent record in Attio. If an entry with the specified parent record is found, that entry will be updated. If no such entry is found, a new entry will be created instead. For multiselect attributes, all values will be either created or deleted as necessary to match the list of values supplied in the request." }, { "slug": "ATTIO_PUT_V2_LISTS_LIST_ENTRIES_ENTRY_ID", "name": "Update List Entry by Entry ID (PUT)", "description": "Tool to update list entries by entry_id in Attio using PUT method. Use when you need to completely replace attribute values on existing list entries. For multiselect attributes, the values supplied will overwrite/remove the list of values that already exist (if any). Use the PATCH endpoint to add multiselect attribute values without removing those that already exist." }, { "slug": "ATTIO_PUT_V2_OBJECTS_OBJECT_RECORDS", "name": "Assert Record (Create or Update)", "description": "Tool to create or update people, companies and other records in Attio using a matching attribute. Use when you want to avoid duplicate records - if a record with the same value for the matching attribute is found, it will be updated; otherwise a new record is created. If you want to avoid matching and always create new records, use the Create Record endpoint instead." }, { "slug": "ATTIO_PUT_V2_OBJECTS_OBJECT_RECORDS_RECORD_ID", "name": "Put Record (Overwrite)", "description": "Tool to update people, companies, and other records by record_id using PUT method. For multiselect attributes, values supplied will overwrite/remove existing values. Use PATCH endpoint to append without removing." }, { "slug": "ATTIO_QUERY_RECORDS", "name": "Query Records", "description": "Tool to query records for a specific Attio object using server-side filtering operators and sorting. Use when you need to retrieve records based on complex filter criteria (e.g., 'get all agreements where product=X and status in Y') rather than simple listing or ID-based lookup. This avoids downloading large pages and filtering locally, which is slow and costly." }, { "slug": "ATTIO_SEARCH_RECORDS", "name": "Search Records", "description": "Tool to fuzzy search for records across multiple objects in Attio. Use when you need to find records by name, domain, email, phone number, or social handle. This endpoint is in beta and returns eventually consistent results. Matching strategy follows the in-product search approach." }, { "slug": "ATTIO_UPDATE_ATTRIBUTE", "name": "Update Attribute", "description": "Tool to update an existing attribute by its attribute_id or slug. Use when you need to modify attribute properties such as title, description, validation rules, or configuration settings." }, { "slug": "ATTIO_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update a company record in Attio by its record_id. Use when you need to modify company attributes like name, description, domains, or team. For multiselect attributes, values are prepended to existing values. Note: logo_url cannot be updated via API." }, { "slug": "ATTIO_UPDATE_DEAL_RECORD", "name": "Update Deal Record", "description": "Tool to update an existing deal record in Attio by record ID. Uses PATCH to partially update only the provided fields, leaving other fields unchanged." }, { "slug": "ATTIO_UPDATE_ENTRY", "name": "Update Entry (Deprecated)", "description": "DEPRECATED: Use ATTIO_ATTIO_PATCH_V2_LISTS_LIST_ENTRIES_ENTRY_ID instead. Tool to update list entries by their ID in Attio. Use when you need to modify attribute values on existing list entries. When multiselect attributes are included, the values supplied will be prepended to existing values." }, { "slug": "ATTIO_UPDATE_LIST", "name": "Update List", "description": "Tool to update an existing list in Attio. Use when you need to modify list properties like name, api_slug, or permissions. Lists must have either workspace_access set to 'full-access' or one or more workspace_member_access with 'full-access' level. Changing the parent object of a list is not possible through the API." }, { "slug": "ATTIO_UPDATE_OBJECT", "name": "Update Object", "description": "Tool to update a single object's configuration in Attio. Use when you need to modify an object's API slug, singular noun, or plural noun. Standard objects (people, companies, deals, users, workspaces) and custom objects can be updated." }, { "slug": "ATTIO_UPDATE_PERSON", "name": "Update Person", "description": "Tool to update a person record in Attio by its record_id. Use when you need to modify person attributes like name, email, job title, or phone numbers. For multiselect attributes, values are prepended to existing values. Note: avatar_url cannot be updated via API." }, { "slug": "ATTIO_UPDATE_RECORD", "name": "Update Record", "description": "This tool updates an existing record in Attio for a specified object type (people, companies, deals, users, workspaces, etc.). It uses PATCH to partially update only the provided fields, leaving other fields unchanged." }, { "slug": "ATTIO_UPDATE_SELECT_OPTION", "name": "Update Select Option", "description": "Tool to update an existing select option for a select or multiselect attribute in Attio. Use when you need to rename an option or archive it. Archived options are hidden from selection but preserve historical data for records that used them." }, { "slug": "ATTIO_UPDATE_STATUS", "name": "Update Status", "description": "Tool to update a status on a status attribute on either an object or a list in Attio. Use when you need to modify status properties like title, celebration settings, target time, or archive status. Company and person objects do not support status attributes at this time." }, { "slug": "ATTIO_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in Attio by its task_id. Use when you need to modify a task's deadline, completion status, linked records, or assignees. Only these four fields can be updated via this endpoint." }, { "slug": "ATTIO_UPDATE_USER_RECORD", "name": "Update User Record", "description": "Tool to update a user record in Attio by its record_id. Use when you need to modify user attributes like user_id, primary_email_address, person, or workspace references. Attributes not included in the request will remain unchanged." }, { "slug": "ATTIO_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook's target URL and/or event subscriptions. Use when you need to modify an existing webhook configuration in Attio." }, { "slug": "ATTIO_UPDATE_WORKSPACE_RECORD", "name": "Update Workspace Record", "description": "Tool to update a workspace record by ID using PATCH method. Only the attributes provided in the request will be updated; other attributes remain unchanged." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "attio_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "task:read-write,object_configuration:read,record_permission:read,user_management:read,list_configuration:read,list_entry:read,comment:read-write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googlemeet", "name": "Google Meet", "logo": "https://logos.composio.dev/api/googlemeet", "description": "Google Meet is a secure video conferencing platform that integrates with Google Workspace, facilitating remote meetings, screen sharing, and chat", "category": "video conferencing", "authSchemes": [ "OAUTH2" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLEMEET_CREATE_MEET", "name": "Create Google Meet Space", "description": "Creates a new Google Meet space with optional configuration. Does not attach to any calendar event — calendar linking requires a separate Calendar tool call. Capture `meetingUri`, `meetingCode`, and `space.name` from the response immediately for downstream lookups. Requires `meetings.space.created` OAuth scope. Returns HTTP 429 under rapid calls; apply exponential backoff. Use when you need a meeting space with specific access controls, moderation, recording, or transcription settings." }, { "slug": "GOOGLEMEET_END_ACTIVE_CONFERENCE", "name": "End active conference", "description": "Ends an active conference in a Google Meet space. REQUIRES 'space_name' parameter (e.g., 'spaces/jQCFfuBOdN5z' or just 'jQCFfuBOdN5z'). Use when you need to terminate an ongoing conference in a specified space. This operation only succeeds if a conference is actively running in the space. You must always provide the space_name to identify which space's conference to end. Immediately drops all active participants — obtain explicit user confirmation before calling." }, { "slug": "GOOGLEMEET_GET_CONFERENCE_RECORD_BY_NAME", "name": "Get conference record by name", "description": "Tool to get a specific conference record by its resource name. Use when you have the conference record ID and need to retrieve detailed information about a single meeting instance." }, { "slug": "GOOGLEMEET_GET_MEET", "name": "Get Meet details", "description": "Retrieve details of a Google Meet space using its unique identifier. Newly created spaces may return incomplete data; retry after 1–3 seconds if needed." }, { "slug": "GOOGLEMEET_GET_PARTICIPANT_SESSION", "name": "Get Participant Details", "description": "Retrieves detailed information about a specific participant session from a Google Meet conference record. Returns session details including start time and end time for a single join/leave session. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. PREREQUISITE: You must first obtain the participant session resource name. Use LIST_PARTICIPANT_SESSIONS with a conference record ID and participant ID to get available sessions and their resource names. The 'name' parameter is REQUIRED and must be in the format: 'conferenceRecords/{conference_record}/participants/{participant}/participantSessions/{participant_session}'" }, { "slug": "GOOGLEMEET_GET_RECORDINGS_BY_CONFERENCE_RECORD_ID", "name": "Get recordings by conference record ID", "description": "Retrieves recordings from Google Meet for a given conference record ID. Only returns recordings if recording was enabled and permitted by the organizer's domain policies; a valid conference_record_id does not guarantee recordings exist. After a meeting ends, recordings may take several minutes to process — an empty result may be temporary, not permanent." }, { "slug": "GOOGLEMEET_GET_TRANSCRIPT", "name": "Get Transcript", "description": "Retrieves a specific transcript by its resource name. Returns transcript details including state (STARTED, ENDED, FILE_GENERATED), start/end times, and Google Docs destination. PREREQUISITE: Obtain the transcript resource name first by using GET_TRANSCRIPTS_BY_CONFERENCE_RECORD_ID or construct it from known IDs." }, { "slug": "GOOGLEMEET_GET_TRANSCRIPT_ENTRY", "name": "Get Transcript Entry", "description": "Fetches a single transcript entry by resource name for targeted inspection or incremental processing. Use when you have a specific transcript entry resource name and need to retrieve its details (text, speaker, timestamps, language). PREREQUISITE: Obtain the transcript entry resource name first by using LIST_TRANSCRIPT_ENTRIES or construct it from known IDs. The 'name' parameter is REQUIRED and must follow the format: 'conferenceRecords/{conferenceRecordId}/transcripts/{transcriptId}/entries/{entryId}'" }, { "slug": "GOOGLEMEET_GET_TRANSCRIPTS_BY_CONFERENCE_RECORD_ID", "name": "Get transcripts by conference record ID", "description": "Retrieves all transcripts for a specific Google Meet conference using its conference_record_id. Transcripts require processing time after a meeting ends — empty results may be transient; retry after a delay before concluding no transcripts exist. Returns results only if transcription was enabled during the meeting and permitted by the organizer's domain policies; an empty list may also indicate transcription was never generated." }, { "slug": "GOOGLEMEET_LIST_CONFERENCE_RECORDS", "name": "List Conference Records", "description": "Tool to list conference records. Use when you need to retrieve a list of past conferences, optionally filtering them by criteria like meeting code, space name, or time range." }, { "slug": "GOOGLEMEET_LIST_PARTICIPANTS", "name": "List Participants", "description": "Lists the participants in a conference record. By default, ordered by join time descending. Use to retrieve all participants who joined a specific Google Meet conference, with support for filtering active participants (where `latest_end_time IS NULL`)." }, { "slug": "GOOGLEMEET_LIST_PARTICIPANT_SESSIONS", "name": "List Participant Sessions", "description": "Lists all participant sessions for a specific participant in a Google Meet conference. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. Returns session details including start time and end time for each session." }, { "slug": "GOOGLEMEET_LIST_RECORDINGS", "name": "List Recordings", "description": "Tool to list recording resources from a conference record. Use when you need to retrieve recordings from a specific Google Meet conference. Recordings are created when meeting recording is enabled and saved to Google Drive as MP4 files." }, { "slug": "GOOGLEMEET_LIST_TRANSCRIPT_ENTRIES", "name": "List Transcript Entries", "description": "Tool to list structured transcript entries (speaker/time/text segments) for a specific Google Meet transcript. Use when you need to access the detailed content of a transcript, including individual spoken segments with timestamps and speaker information. Note: The transcript entries returned by the API might not match the transcription in Google Docs due to interleaved speakers or post-generation modifications." }, { "slug": "GOOGLEMEET_UPDATE_SPACE", "name": "Update Google Meet Space", "description": "Updates the settings of an existing Google Meet space. Requires organizer/host privileges and the meetings.space.created OAuth scope. REQUIRED PARAMETER: - name: The space identifier (e.g., 'spaces/jQCFfuBOdN5z'). This is always required to identify which space to update. OPTIONAL PARAMETERS: - config: The new configuration settings to apply (accessType, entryPointAccess, moderation, etc.) - updateMask: Specify which fields to update. If omitted, all provided config fields are updated. Example: To change access type, provide name='spaces/abc123' and config={'accessType': 'OPEN'}" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googler-meet", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/meetings.space.created,https://www.googleapis.com/auth/meetings.space.settings" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "text_to_pdf", "name": "Text to PDF", "logo": "https://logos.composio.dev/api/text_to_pdf", "description": "Convert text to PDF", "category": "documents", "authSchemes": [ "NO_AUTH" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEXT_TO_PDF_CONVERT_TEXT_TO_PDF", "name": "Convert Text to PDF", "description": "Convert plain text or Markdown content into a downloadable PDF document. Supports Unicode characters, special symbols, and Markdown formatting including headers, lists, code blocks, links, and emphasis. Images require publicly accessible URLs to render. The response includes the generated PDF file, filename, and MIME type." }, { "slug": "TEXT_TO_PDF_DELETE_ASYNC_JOB", "name": "Delete Async Job", "description": "Tool to delete an asynchronous conversion job. Use when a job is no longer required to free up server resources. Jobs are automatically deleted after 3 hours if not manually removed." }, { "slug": "TEXT_TO_PDF_DELETE_FILE", "name": "Delete File", "description": "Tool to delete a file from ConvertAPI server. Use when a file is no longer needed and should be removed from temporary storage." }, { "slug": "TEXT_TO_PDF_DOWNLOAD_FILE", "name": "Download File", "description": "Download a file from ConvertAPI server using its unique File ID. Use this after converting or uploading files to retrieve the result. The file must exist on the server and not be expired." }, { "slug": "TEXT_TO_PDF_START_ASYNC_CONVERSION", "name": "Start Async Conversion", "description": "Start an asynchronous file conversion job using ConvertAPI. Returns a JobId that can be used to poll for conversion results. Optionally supports WebHook callback for push notification when conversion completes." }, { "slug": "TEXT_TO_PDF_UPLOAD_FILE", "name": "Upload File to ConvertAPI", "description": "Upload a file to ConvertAPI server for subsequent conversions. Supports direct file upload or remote URL upload. Files are stored securely for up to 3 hours and can be referenced by File ID in conversion requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "texttopdf", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "zoho", "name": "Zoho", "logo": "https://logos.composio.dev/api/zoho", "description": "Zoho is a suite of cloud applications including CRM, email marketing, and collaboration tools, enabling businesses to automate and scale operations", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_CONVERT_ZOHO_LEAD", "name": "Convert Zoho CRM Lead", "description": "Converts a lead into a contact, account, and optionally a deal in Zoho CRM." }, { "slug": "ZOHO_CREATE_CONTACT", "name": "Create Contact in Zoho CRM", "description": "Creates a new contact record in Zoho CRM. Use this action when you need to add a new contact to the CRM system. The Last_Name field is mandatory and must be provided with a non-empty value." }, { "slug": "ZOHO_CREATE_DEAL", "name": "Create Deal in Zoho CRM", "description": "Creates a new deal in Zoho CRM representing a sales opportunity with deal name, stage, amount, and closing date. Use this action when you need to create a sales deal or opportunity in Zoho CRM. Required fields are Deal_Name and Stage; all other fields are optional. The deal will be assigned to the authenticated user unless an Owner is explicitly specified." }, { "slug": "ZOHO_CREATE_EMAIL_DRAFT", "name": "Create Email Draft in Zoho CRM", "description": "Creates email drafts for a specific record in Zoho CRM. Email drafts are saved but not sent, allowing for review and editing before sending. Use this action when you need to prepare email communications associated with CRM records (Leads, Contacts, Deals, etc.) that will be reviewed and sent later. The draft will be visible in the record's timeline and can be edited or sent through the Zoho CRM interface." }, { "slug": "ZOHO_CREATE_EVENT", "name": "Create Zoho Event", "description": "Creates a new Event record in Zoho CRM. Events represent scheduled activities like meetings, calls, or appointments. Use this action when you need to schedule a new event or meeting in the CRM system. All events require an event title, start time, and end time at minimum." }, { "slug": "ZOHO_CREATE_LEAD", "name": "Create Lead in Zoho CRM", "description": "Creates a new lead record in Zoho CRM with the specified details. The only mandatory field is Last_Name - all other fields are optional. Use this action when you need to add a new lead to Zoho CRM, typically after capturing lead information from a web form, email, or other lead generation source. The action returns the newly created lead ID and metadata including creation timestamps and user information." }, { "slug": "ZOHO_CREATE_NOTE", "name": "Create Note in Zoho CRM", "description": "Creates a new note attached to a specific record in Zoho CRM. Notes are text annotations that can be added to any standard or custom module record. Use this action when you need to add notes, comments, or text-based documentation to a record in Zoho CRM. The note will be visible in the record's Notes related list." }, { "slug": "ZOHO_CREATE_ZOHO_RECORD", "name": "Create Zoho CRM Record", "description": "Creates new records in a specified module in Zoho CRM. Bulk operations may partially succeed — inspect each item's status field in the response, as some records may be created while others fail." }, { "slug": "ZOHO_CREATE_ZOHO_TAG", "name": "Create Zoho CRM Tag", "description": "Creates a new tag in Zoho CRM for a specific module. Tags help organize and categorize CRM records. Each module can have up to 100 tags, and each record can have up to 10 tags assigned. Tags must have unique names within a module and can be assigned custom colors from a predefined palette. Creating a tag does not apply it to any records; use separate update actions to assign the tag to records. Use this action to create standardized tags for lead scoring, deal stages, customer segments, or any custom categorization needs in your CRM workflow." }, { "slug": "ZOHO_DELETE_ACCOUNT", "name": "Delete Zoho Account", "description": "Deletes an existing account record from Zoho CRM. This action permanently removes the account and cannot be undone through the API. Use this action when you need to remove an account record that is no longer needed or was created in error. This action is irreversible — the account cannot be recovered once deleted." }, { "slug": "ZOHO_DELETE_CONTACT", "name": "Delete Zoho CRM Contact", "description": "Deletes a contact from Zoho CRM. This action is irreversible — the contact cannot be recovered once deleted. Use this action when you need to permanently remove a contact record from the CRM. All associated subforms and related data are automatically deleted." }, { "slug": "ZOHO_DELETE_DEAL", "name": "Delete Zoho CRM Deal", "description": "Deletes a deal record from Zoho CRM. This action is irreversible — once deleted, the deal cannot be recovered. Use this action when you need to permanently remove a deal from the CRM system. The deal will be moved to the recycle bin initially and can be restored from there within the configured retention period (typically 60 days), after which permanent deletion occurs automatically." }, { "slug": "ZOHO_GET_ACCOUNT", "name": "Get Zoho CRM Account", "description": "Retrieves a specific Account record from Zoho CRM by its unique identifier. Returns complete account details including all standard and custom fields. Use this action when you need to fetch a single account's information by its ID rather than searching or listing multiple accounts. Unlike bulk record retrieval, this action provides access to subform records, multi-select lookup fields, and multi-user lookup fields that are only available in single-record responses." }, { "slug": "ZOHO_GET_CALL", "name": "Get Call", "description": "Retrieves a specific Call record by its unique identifier from Zoho CRM. Use this action when you need to fetch detailed information about a particular call, including its subject, duration, type, participants, outcome, and associated contacts or deals. This action is read-only and does not modify any data." }, { "slug": "ZOHO_GET_CONTACT", "name": "Get Zoho CRM Contact", "description": "Retrieves a single contact record by ID from Zoho CRM. Returns the complete contact details including owner information, account associations, address fields, and all custom fields. Use this action when you need to fetch detailed information about a specific contact using its record ID." }, { "slug": "ZOHO_GET_EMAIL_DRAFTS", "name": "Get Email Drafts for Zoho CRM Record", "description": "Retrieves email drafts associated with a specific record in Zoho CRM. Use this action when you need to view unsent email drafts that have been composed for a CRM record. This returns draft metadata including recipients, subject, content, attachments, and scheduling details." }, { "slug": "ZOHO_GET_EVENT", "name": "Get Zoho Event", "description": "Retrieves a specific event record from Zoho CRM by its unique identifier. Returns complete event details including all standard and custom fields. Use this action when you need to fetch detailed information about a specific event/meeting, including participants, location, timing, and related records. The response includes subform data and multi-select lookup values that are not available in list queries." }, { "slug": "ZOHO_GET_FROM_ADDRESSES", "name": "Get From Addresses", "description": "Retrieves the list of from addresses configured for email operations in Zoho CRM. Use this action when you need to get available email addresses for sending emails or configuring email settings. Returns organization, user, alias, and chat email addresses configured in the CRM." }, { "slug": "ZOHO_GET_MODULE_FIELDS", "name": "Get Zoho CRM Module Fields Metadata", "description": "Retrieves field metadata for a Zoho CRM module including API names, data types, permissions, and configuration details. Use this tool to discover correct field names and types before creating or updating records, avoiding INVALID_DATA errors. Returns information about standard fields, custom fields, lookup fields, picklist options, and field-level permissions." }, { "slug": "ZOHO_GET_NOTE", "name": "Get Zoho CRM Note", "description": "Retrieves a single note by its unique identifier from Zoho CRM. Returns the note's title, content, parent record reference, owner details, and timestamps. Use this action when you need to fetch detailed information about a specific note, such as reading meeting notes, viewing customer interaction summaries, or accessing documentation attached to a CRM record." }, { "slug": "ZOHO_GET_RECORD_EMAILS", "name": "Get Zoho CRM Record Emails", "description": "Retrieves all emails associated with a specific record in Zoho CRM. Use this action when you need to fetch email history for a lead, contact, account, deal, or other CRM record. The response includes email metadata such as subject, sender, recipients, timestamps, and status information. Supports pagination for records with large email volumes." }, { "slug": "ZOHO_GET_RELATED_LISTS", "name": "Get Zoho CRM Related Lists Metadata", "description": "Retrieves related list metadata for a Zoho CRM module to discover correct api_name values. Use this before updating related records to avoid INVALID_DATA errors from incorrect related_list_api_name. Returns api_name, display_label, href, and other details for each related list available in the module." }, { "slug": "ZOHO_GET_RELATED_RECORDS", "name": "Get Zoho CRM Related Records", "description": "Fetch related-list records (e.g., Notes, Attachments, Emails) for a Zoho CRM parent record using related_list_api_name. Use ZOHO_GET_RELATED_LISTS first to discover the correct api_name for the related list you want to access. Supports pagination for large result sets (up to 2,000 records with page/per_page, unlimited with page_token)." }, { "slug": "ZOHO_GET_TASK", "name": "Get Zoho CRM Task", "description": "Retrieves a specific task record by its ID from Zoho CRM. Returns complete task data including all standard and custom fields, subforms, and multi-user lookup fields that are only available when fetching individual records. Use this action when you need to fetch detailed information about a single task using its unique record ID." }, { "slug": "ZOHO_GET_USER", "name": "Get Zoho CRM User", "description": "Retrieves a specific user from Zoho CRM by their user ID. Returns detailed user information including name, email, role, profile, status, and preferences. Use this action when you need to fetch information about a specific user by ID, or use 'me' as the user_id to get the currently authenticated user's details." }, { "slug": "ZOHO_GET_ZOHO_RECORDS", "name": "Get Zoho CRM Records", "description": "Retrieves records from a specified module in Zoho CRM. Notes: - Discrete (page/per_page) pagination is limited to the first 2,000 records. To retrieve records beyond this, use token-based pagination via page_token from the previous response's info.next_page_token. - Do not use page together with page_token. - You cannot use cvid together with sort_by." }, { "slug": "ZOHO_GET_ZOHO_USERS", "name": "Get Zoho CRM Users", "description": "Tool to retrieve users from Zoho CRM. Use when you need to fetch user information such as IDs, names, emails, roles, or status for setting Owner fields or performing user-related operations in CRM workflows." }, { "slug": "ZOHO_LIST_ACCOUNTS", "name": "List Zoho CRM Accounts", "description": "Retrieves a list of account records from Zoho CRM with pagination and filtering support. Use this action when you need to fetch multiple account records from the Accounts module, optionally filtered by territory, approval status, or custom views. Supports both discrete pagination (first 2,000 records) and token-based pagination for larger datasets." }, { "slug": "ZOHO_LIST_CALLS", "name": "List Zoho CRM Calls", "description": "Retrieves Call activity records from Zoho CRM with pagination support. Use this action when you need to list calls logged in the CRM, filter by custom views, or retrieve specific Call records by ID. Call records represent phone call activities associated with Contacts, Leads, or other CRM records." }, { "slug": "ZOHO_LIST_CONTACTS", "name": "List Contacts", "description": "Retrieves contact records from Zoho CRM with support for pagination, filtering, and sorting. Use this action when you need to fetch a list of contacts from Zoho CRM. This is a specialized action focused on the Contacts module with contact-specific field defaults and optimizations. For retrieving records from other modules, use the generic get_records action instead." }, { "slug": "ZOHO_LIST_DEALS", "name": "List Deals", "description": "Retrieves a list of deals from Zoho CRM with support for filtering, sorting, and pagination. Use this action when you need to fetch deal records from Zoho CRM, whether all deals or filtered by specific criteria. The action supports both discrete pagination (page/per_page) for the first 2,000 deals and token-based pagination for larger datasets." }, { "slug": "ZOHO_LIST_EVENTS", "name": "List Zoho CRM Events", "description": "Lists events (meetings) from Zoho CRM with pagination and filtering support. Use this action when you need to retrieve scheduled events, meetings, or appointments from Zoho CRM for calendar management, reporting, or synchronization purposes. Note: In Zoho CRM UI, Events are displayed as 'Meetings'. Discrete pagination (page/per_page) is limited to the first 2,000 records. To retrieve events beyond this limit, use token-based pagination via page_token from the previous response's info.next_page_token." }, { "slug": "ZOHO_LIST_LEADS", "name": "List Zoho CRM Leads", "description": "Retrieves lead records from Zoho CRM's Leads module with pagination support. Use this action when you need to list, filter, or paginate through leads in the CRM. Supports both discrete pagination (up to 2,000 leads) and token-based pagination for larger datasets." }, { "slug": "ZOHO_LIST_MODULES", "name": "List Zoho CRM Modules", "description": "Lists all available Zoho CRM modules (standard + custom) to reliably select module API names/IDs for operations. Use this tool before calling other module-specific operations to ensure correct module_api_name selection and avoid INVALID_MODULE errors. Particularly useful for discovering custom modules and their exact API names." }, { "slug": "ZOHO_LIST_NOTES", "name": "List Zoho CRM Notes", "description": "Retrieves a list of notes from Zoho CRM across all modules. Notes are returned in chronological order (oldest first by default). Use this action when you need to view all notes in the CRM, regardless of which record they're attached to. Each note includes its title, content, creator, timestamps, and parent record reference." }, { "slug": "ZOHO_LIST_RECORD_ATTACHMENTS", "name": "List Attachments for Zoho CRM Record", "description": "Tool to list attachment metadata (id, File_Name, Size, Created_Time, etc.) for a specific Zoho CRM record. Use when you need to identify attachments before downloading them via other means. This returns metadata only, not the actual file content." }, { "slug": "ZOHO_LIST_TASKS", "name": "List Zoho CRM Tasks", "description": "Retrieves tasks from the Tasks module in Zoho CRM with support for filtering, pagination, and sorting. Use this action when you need to fetch a list of tasks, either all tasks or specific tasks by IDs. Supports both discrete pagination (up to 2,000 tasks) and token-based pagination for larger datasets. Notes: - Discrete (page/per_page) pagination is limited to the first 2,000 tasks. To retrieve tasks beyond this, use token-based pagination via page_token from the previous response's info.next_page_token. - Do not use page together with page_token. - You cannot use cvid together with sort_by." }, { "slug": "ZOHO_SEARCH_ACCOUNTS", "name": "Search Zoho CRM Accounts", "description": "Search for Account records within Zoho CRM using server-side queries. Returns accounts matching the specified criteria, email, phone, or keyword. Use this action when you need to find specific account records by search parameters instead of listing all accounts. This avoids pagination limits and performs efficient server-side filtering on the Accounts module." }, { "slug": "ZOHO_SEARCH_CALLS", "name": "Search Zoho CRM Calls", "description": "Search for Call records in Zoho CRM using server-side queries. Returns calls matching the specified criteria, email, phone, or keyword. Use this action when you need to find specific Call records instead of retrieving all calls, as it avoids pagination limits and performs efficient server-side filtering." }, { "slug": "ZOHO_SEARCH_CONTACTS", "name": "Search Zoho CRM Contacts", "description": "Search for contacts in Zoho CRM using server-side queries by criteria, email, phone, or keyword. This action performs efficient server-side filtering in the Contacts module, avoiding pagination limits. Use this action when you need to find specific contacts instead of listing all contacts." }, { "slug": "ZOHO_SEARCH_DEALS", "name": "Search Deals in Zoho CRM", "description": "Search for Deal records in Zoho CRM using server-side queries. Supports searching by criteria (field conditions), email, phone, or keyword. Use this action when you need to find specific deals instead of listing all deals, as it performs efficient server-side filtering and avoids pagination limits." }, { "slug": "ZOHO_SEARCH_EVENTS", "name": "Search Events", "description": "Search for Events in Zoho CRM using server-side queries. Supports searching by field criteria, email, phone, or keyword. Use this action when you need to find specific events (meetings, appointments, calls) based on conditions like date range, title, location, or participants, rather than listing all events. This performs efficient server-side filtering and avoids pagination limits of the list endpoint." }, { "slug": "ZOHO_SEARCH_LEADS", "name": "Search Leads", "description": "Search for lead records in Zoho CRM using server-side queries. Use this action when you need to find specific leads by criteria (field conditions), email address, phone number, or keyword search instead of listing all leads. This performs efficient server-side filtering and avoids pagination limits." }, { "slug": "ZOHO_SEARCH_NOTES", "name": "Search Notes", "description": "Search for notes in Zoho CRM using server-side queries. Allows searching notes by criteria (field conditions), keyword, email, or phone number. Use this action when you need to find specific notes based on title, content, creation date, parent record, or other note attributes, rather than listing all notes. This performs efficient server-side filtering and avoids pagination limits." }, { "slug": "ZOHO_SEARCH_TASKS", "name": "Search Zoho CRM Tasks", "description": "Search for tasks in Zoho CRM using flexible criteria including subject, status, priority, or due date. Use this action when you need to find specific task records by criteria, email, phone, or keyword instead of listing all tasks. This avoids pagination limits and performs efficient server-side filtering on the Tasks module." }, { "slug": "ZOHO_SEARCH_ZOHO_RECORDS", "name": "Search Zoho CRM Records", "description": "Search for records within a Zoho CRM module using server-side queries. Use when you need to find specific records by criteria, email, phone, or keyword instead of listing all records. This avoids pagination limits and performs efficient server-side filtering." }, { "slug": "ZOHO_UPDATE_ACCOUNT", "name": "Update Zoho CRM Account", "description": "Updates an existing Account record in Zoho CRM with the specified field values. Only the fields provided in the request will be updated; other fields remain unchanged. Use this action when you need to modify specific details of an existing account, such as contact information, address, ownership, or business details. All field updates use API field names (not display labels), and lookup fields require properly formatted dictionaries with 'id' keys." }, { "slug": "ZOHO_UPDATE_CALL", "name": "Update Zoho CRM Call", "description": "Updates existing call records in the Calls module in Zoho CRM. Supports updating up to 100 call records per API call. Use this action when you need to modify call details such as call duration, call type, subject, or related contacts/leads. Use field API names (not display names) for all field updates. The 'id' field is mandatory for each call record. Note: For Inbound or Outbound calls, the Call_Duration must be non-zero or the API will return a DEPENDENT_MISMATCH error." }, { "slug": "ZOHO_UPDATE_DEAL", "name": "Update Zoho CRM Deal", "description": "Updates an existing deal in Zoho CRM. Use this action when you need to modify specific fields of a deal record, such as updating the deal amount, stage, closing date, or associated account. Only the fields included in the data parameter will be modified; other fields remain unchanged. Use when you have a specific deal ID and want to update one or more fields without affecting others." }, { "slug": "ZOHO_UPDATE_EMAIL_DRAFT", "name": "Update Zoho CRM Email Draft", "description": "Updates an existing email draft associated with a record in Zoho CRM. Requires the draft ID, sender address, and text format. Use this action when you need to modify the recipients, subject, content, scheduling, or attachments of an existing email draft before sending. Supports updating up to 100 email drafts per API call. Schedule times must be in the future." }, { "slug": "ZOHO_UPDATE_EVENT", "name": "Update Zoho CRM Event", "description": "Updates existing events in Zoho CRM. Supports updating up to 100 events per API call. Use this action when you need to modify event details such as title, start/end times, location, participants, or related records (What_Id/Who_Id). The 'id' field is mandatory for each event, and only specified fields will be updated." }, { "slug": "ZOHO_UPDATE_LEAD", "name": "Update Lead", "description": "Updates existing lead records in Zoho CRM. Supports updating up to 100 leads per API call. Use this action when you need to modify lead information such as contact details, lead status, lead source, or other lead-specific fields. Use field API names (not display names) for all field updates. The 'id' field is mandatory for each lead." }, { "slug": "ZOHO_UPDATE_NOTE", "name": "Update Zoho CRM Note", "description": "Updates an existing note in Zoho CRM. Only the Note_Title and Note_Content fields can be modified. Read-only fields (Owner, Modified_Time, Created_Time, Modified_By, Created_By) cannot be updated and will be ignored if provided. Use this action when you need to modify the title or content of an existing note attached to any CRM record." }, { "slug": "ZOHO_UPDATE_RELATED_RECORDS", "name": "Update Related Records in Zoho CRM", "description": "Associates or updates relationships between records across different modules in Zoho CRM. This action creates or modifies relationships between a parent record and related records. Common use cases: - Associate Leads/Contacts with Campaigns (with member status) - Link Products to Deals/Quotes/Accounts - Connect Contacts to Accounts - Associate Services with Appointments Use ZOHO_GET_RELATED_LISTS to discover valid related_list_api_name values for your module. Maximum 100 related records can be updated per API call. If module_api_name, record_id, related_list_api_name, or child record IDs in data do not match Zoho CRM's related-list configuration exactly, associations may silently succeed (no error returned) but the relationship will not be created." }, { "slug": "ZOHO_UPDATE_ZOHO_RECORD", "name": "Update Zoho CRM Record", "description": "Updates existing records in a specified module in Zoho CRM. Supports updating up to 100 records per API call. Use field API names (not display names) for all field updates. The 'id' field is mandatory for each record." }, { "slug": "ZOHO_UPLOAD_ATTACHMENT", "name": "Upload Attachment to Zoho CRM Record", "description": "Tool to upload a file as an Attachment to a specific Zoho CRM record. Use when you need to store files (PDFs, documents, images) in a record's Attachments section." }, { "slug": "ZOHO_VALIDATE_CREDENTIAL", "name": "Validate Zoho CRM Credentials", "description": "Validates Zoho CRM credentials by retrieving current user information. Returns user details if credentials are valid. Use this action when you need to verify that API credentials are working correctly before performing other operations. This is a read-only operation that confirms authentication without modifying any data." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zoho_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoCRM.modules.ALL,ZohoCRM.settings.ALL,ZohoCRM.notifications.ALL,ZohoCRM.users.ALL" } ] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Your Zoho data center — the ending of the web address when you're signed in, e.g. 'eu' for zoho.eu, 'in' for zoho.in. If it ends in zoho.com, keep the default 'com'.", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "fireflies", "name": "Fireflies", "logo": "https://logos.composio.dev/api/fireflies", "description": "Fireflies.ai helps your team transcribe, summarize, search, and analyze voice conversations.", "category": "ai meeting assistants", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "FIREFLIES_ADD_TO_LIVE", "name": "Add to Live Meeting", "description": "The AddToLive Action allows you to add the Fireflies.ai bot to an ongoing meeting. Note: This action requires a paid Fireflies plan to add bots to meetings." }, { "slug": "FIREFLIES_CONTINUE_ASK_FRED_THREAD", "name": "Continue AskFred Thread", "description": "Tool to continue an existing AskFred conversation thread with follow-up questions. This action CANNOT create new threads - it only works with existing thread IDs. Use when you need to maintain context from previous exchanges and ask additional questions about meeting data in the same conversation. To start a new thread, use FIREFLIES_CREATE_ASK_FRED_THREAD instead." }, { "slug": "FIREFLIES_CREATE_ASK_FRED_THREAD", "name": "Create AskFred Thread", "description": "Tool to start a new AskFred conversation thread with a question about meetings. Use when you need to query meeting transcripts using natural language, either for a specific meeting or across multiple meetings with filters. Supports time-based queries and participant-focused queries." }, { "slug": "FIREFLIES_CREATE_BITE", "name": "Create Bite", "description": "Tool to create a bite (short video or audio clip) from a transcript segment. Use when you need to extract a specific portion of a meeting recording with defined start and end times." }, { "slug": "FIREFLIES_DELETE_TRANSCRIPT_BY_ID", "name": "Delete Transcript by ID", "description": "Permanently delete a transcript from the Fireflies account by its unique ID. This is a destructive action that cannot be undone. The transcript, along with its associated audio/video files and summaries, will be permanently removed. Rate limited to 10 requests per minute across all user tiers. Verify the target transcript via FIREFLIES_GET_TRANSCRIPTS and obtain explicit user confirmation before calling this tool." }, { "slug": "FIREFLIES_FETCH_AI_APP_OUTPUTS2", "name": "Fetch AI App Outputs", "description": "Tool to fetch AI App outputs for specific apps or transcripts. Use when you need to retrieve AI-generated results from Fireflies AI Apps for meetings." }, { "slug": "FIREFLIES_GET_ASK_FRED_THREAD", "name": "Get AskFred Thread", "description": "Tool to get a specific AskFred conversation thread with full history. Use when retrieving a particular AskFred thread along with all its messages and conversation details." }, { "slug": "FIREFLIES_GET_ASK_FRED_THREADS", "name": "Get AskFred Threads", "description": "Tool to retrieve a summary of all AskFred conversation threads for the current user. Use when you need to browse or list available AskFred conversations without fetching full message history." }, { "slug": "FIREFLIES_GET_BITE_BY_ID", "name": "Get Bite by ID", "description": "Fetches details for a specific bite by ID. Requires a Fireflies plan that supports Bites and appropriate API scope. If the bite is not found, use FIREFLIES_GET_TRANSCRIPT_BY_ID to retrieve full transcript context instead." }, { "slug": "FIREFLIES_GET_BITES", "name": "Get Transcripts", "description": "Fetches a list of bites (highlights) against input arguments. Bites are generated asynchronously after transcript completion — only call this after FIREFLIES_GET_TRANSCRIPT_BY_ID reports `status=completed`. Empty results are possible for valid meetings; use FIREFLIES_GET_TRANSCRIPT_BY_ID for full transcript context when bites are unavailable." }, { "slug": "FIREFLIES_GET_MEETING_ANALYTICS", "name": "Get Meeting Analytics", "description": "Retrieves comprehensive meeting analytics including team-level conversation metrics, sentiment analysis, and individual user performance data. Requires a Fireflies Business plan or higher to access analytics data. Use this action when you need to analyze meeting patterns, track engagement metrics, or generate reports on team collaboration effectiveness. Admin privileges are required to access team-level analytics." }, { "slug": "FIREFLIES_GET_MEETING_PARTICIPANTS", "name": "Get Meeting Participants", "description": "Retrieves the list of participants who attended a specific Fireflies meeting along with their attendance details. Returns participant emails, detailed attendee information (names, emails, phone numbers), join/leave timestamps, speaker identifications, and meeting metadata. Use this action when you need to know who attended a meeting, when they joined/left, or which speakers were identified in the transcript. Only works with completed transcripts - incomplete transcripts may return partial or missing participant data." }, { "slug": "FIREFLIES_GET_MEETING_TOPICS", "name": "Get Meeting Topics", "description": "Retrieves AI-extracted topics, keywords, and meeting type for a specific Fireflies transcript. This action returns only topic-related metadata from the transcript summary, making it more efficient than fetching the entire transcript. Use this action when you need to understand what topics were discussed in a meeting without retrieving the full transcript content, sentences, or attendee details." }, { "slug": "FIREFLIES_GET_TRANSCRIPT_BY_ID", "name": "Get Transcript by ID", "description": "Fetches details for a specific Fireflies transcript ID. Requires a paid Fireflies plan. Response is nested at data.outputs.data.transcript; fields like sentences and attendees can be null — handle gracefully. transcript.summary.action_items may be a single newline-delimited string rather than an array — split by line breaks instead of iterating as an array. Limit concurrent calls to ~3 and apply exponential backoff on 429 responses, respecting Retry-After headers." }, { "slug": "FIREFLIES_GET_TRANSCRIPTS", "name": "Get Transcripts", "description": "Fetches a list of transcripts against input filters. Metadata filters (title, host_email, organizers, participants) match transcript metadata only, not spoken content. Pagination via skip/limit may trigger HTTP 429 on rapid requests; use backoff between pages." }, { "slug": "FIREFLIES_GET_USER_BY_ID", "name": "Get User by ID", "description": "The GetUser Action is designed to fetch details associated with a specific user id." }, { "slug": "FIREFLIES_GET_USER_GROUPS", "name": "Get User Groups", "description": "Tool to fetch a list of all user groups within the team with information about user groups including their members. Use when you need to retrieve team user groups, optionally filtering to only groups the current user belongs to with the mine parameter." }, { "slug": "FIREFLIES_GET_USERS", "name": "Get Users", "description": "Fetches a list of all users within the team, including their full email addresses. Use to resolve complete email addresses from user names before passing to tools that require exact email addresses (no partial addresses or domain-only values)." }, { "slug": "FIREFLIES_GRAPHQL_QUERY", "name": "Execute GraphQL Query", "description": "Execute an authenticated, read-only Fireflies GraphQL operation (query) and return the full raw GraphQL response (data+errors) for reliable fallback and debugging. Use when higher-level tools fail due to schema mismatches or to access raw error details." }, { "slug": "FIREFLIES_LIST_CHANNELS", "name": "List Channels", "description": "Fetches a list of all channels accessible to the authenticated user, including both public channels and private channels where the user is a member. Use this action when you need to discover available channels, retrieve channel IDs for organizing meetings, or check channel membership before assigning meetings to a specific channel." }, { "slug": "FIREFLIES_SEARCH_TRANSCRIPTS", "name": "Search Transcripts", "description": "Search transcripts using keyword-based full-text search across meeting titles and/or spoken content. Unlike GetTranscripts which only filters by metadata (title, participants, dates), this action performs semantic search within the actual transcript text using the 'keyword' parameter. Use this action when you need to find meetings where specific topics, phrases, or keywords were discussed during the conversation. Combine with 'scope' to control search boundaries (title-only, content-only, or both) and with standard filters (dates, participants) to narrow results." }, { "slug": "FIREFLIES_SET_USER_ROLE", "name": "Set User Role", "description": "Tool to update a user's role within a team. Use when you need to grant or revoke admin privileges. Only team administrators can execute this action. Teams must maintain at least one admin member at all times." }, { "slug": "FIREFLIES_UPDATE_MEETING_CHANNEL", "name": "Update Meeting Channel", "description": "Tool to batch update channel assignments for 1-5 meeting transcripts. Use when you need to assign meetings to a specific channel. Requires meeting owner or team admin privileges. All-or-nothing semantics: if any transcript fails validation, none are updated." }, { "slug": "FIREFLIES_UPDATE_MEETING_PRIVACY", "name": "Update Meeting Privacy", "description": "Tool to update the privacy setting of a meeting transcript. Use when you need to change meeting access permissions. Only meeting owners and team admins can update privacy settings." }, { "slug": "FIREFLIES_UPDATE_MEETING_TITLE", "name": "Update Meeting Title", "description": "Tool to update the title of a meeting transcript. Use when you need to rename a meeting. Requires admin privileges and the meeting owner must be in your team." }, { "slug": "FIREFLIES_UPLOAD_AUDIO", "name": "Upload Audio", "description": "The UploadAudio Action allows you to upload audio files to Fireflies.ai for transcription. Transcription is asynchronous — after submission, results may take several minutes to become available; use transcript retrieval tools to poll for completion. Note: This action requires a paid Fireflies plan to upload and transcribe audio files." } ], "triggers": [ { "slug": "FIREFLIES_TRANSCRIPTION_COMPLETE", "name": "Transcription Complete Trigger", "description": "Triggers when a transcription is complete. Polls the Fireflies API over a\n window anchored to Fireflies' own transcript dates (not our wall clock) and\n emits each transcript once (deduped by id), so late, back-dated transcripts\n are not missed. Handles rate limiting gracefully." } ], "authConfigDetails": [ { "mode": "API_KEY", "name": "fireflies_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Fireflies API key — a secret token that lets Composio access your meetings and transcripts. Find it at app.fireflies.ai → Integrations → Fireflies API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dropbox", "name": "Dropbox", "logo": "https://logos.composio.dev/api/dropbox", "description": "Dropbox is a cloud storage service offering file syncing, sharing, and collaboration across devices with version control and robust integrations", "category": "file management & storage", "authSchemes": [ "OAUTH2" ], "toolCount": 177, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "DROPBOX_ACTIVATE_TEAM_FOLDER", "name": "Activate team folder", "description": "Tool to activate an archived team folder. Use when you need to restore access to a previously archived team folder." }, { "slug": "DROPBOX_ADD_FILE_MEMBER", "name": "Add file member", "description": "Tool to add specified members to a Dropbox file with configurable access levels. Use when sharing a file with specific users by email or Dropbox ID. Supports custom invitation messages and notification controls. Note: This endpoint does not support apps with the app folder permission, and members will receive invitations unless quiet mode is enabled." }, { "slug": "DROPBOX_ADD_FILE_PROPERTIES", "name": "Add file properties", "description": "Tool to add custom properties to a Dropbox file using a filled property template. Use when you need to tag files with structured metadata like project info, status, or categories." }, { "slug": "DROPBOX_ADD_FILE_TAGS", "name": "Add tag to file or folder", "description": "Tool to add a tag to a file or folder in Dropbox. Use when you need to tag items for organization. Tags are automatically converted to lowercase." }, { "slug": "DROPBOX_ADD_FOLDER_MEMBER_ACTION", "name": "Add folder member", "description": "Tool to add members to a shared folder with specified access levels. Use when an owner or editor needs to invite new members to a shared folder. Members receive invites and must be mounted via mount_folder for full access. Requires appropriate ACL permissions." }, { "slug": "DROPBOX_ADD_MEMBER_SPACE_LIMITS_EXCLUDED_USERS", "name": "Add users to space limits exclusion list", "description": "Tool to add users to the team's space limits exclusion list in Dropbox. Users on this list are exempt from space limit restrictions. Use when you need to exclude specific team members from storage quota enforcement. Requires team admin authentication." }, { "slug": "DROPBOX_ADD_SHARING_ALLOWLIST", "name": "Add sharing allowlist", "description": "Tool to add domains or email addresses to the team sharing allowlist. Use when team admins need to approve specific domains or emails for sharing. Requires team admin authentication. At least one of 'domains' or 'emails' must be provided, with a maximum of 100 entries per call." }, { "slug": "DROPBOX_ADD_TEAM_GROUP_MEMBERS", "name": "Add members to team group", "description": "Tool to add members to a team group with specified access levels. Use when you need to add users to an existing team group. Requires team admin credentials with group management permissions." }, { "slug": "DROPBOX_ADD_TEAM_MEMBERS", "name": "Add team members", "description": "Tool to add new members to a Dropbox team. Use when you need to invite users to join the team with specified roles and settings. Maximum of 20 members per request. Requires team admin credentials." }, { "slug": "DROPBOX_ADD_TEAM_MEMBERS_SECONDARY_EMAILS", "name": "Add secondary emails to team members", "description": "Tool to add secondary email addresses to Dropbox team members. Use when you need to associate additional email addresses with team member accounts. Requires team admin credentials." }, { "slug": "DROPBOX_ADD_TEAM_PROPERTIES_TEMPLATE", "name": "Add property template for team", "description": "Tool to add a property template for a team in Dropbox. Use when you need to create a standardized set of custom properties that can be applied to files and folders. Requires team admin permissions and a Dropbox Business account." }, { "slug": "DROPBOX_ALPHA_UPLOAD_FILE", "name": "Alpha Upload File", "description": "Tool to upload a new file to Dropbox using the alpha upload endpoint. Use when uploading files up to 150 MiB. Note that the behavior of this alpha endpoint is unstable and subject to change." }, { "slug": "DROPBOX_APPEND_UPLOAD_SESSION", "name": "Append data to upload session", "description": "Tool to append more data to an existing upload session. Use when uploading large files in chunks. When the 'close' parameter is set to true, this call will close the session. A single request should not upload more than 150 MiB." }, { "slug": "DROPBOX_APPEND_UPLOAD_SESSION_BATCH", "name": "Append to multiple upload sessions", "description": "Tool to append data to multiple upload sessions in a single request. Use when you need to upload data to multiple ongoing upload sessions efficiently. The file content for each session should be concatenated in the request body in the order specified by entries. A single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2^41 - 2^22 (2,199,019,061,248) bytes." }, { "slug": "DROPBOX_ARCHIVE_TEAM_FOLDER", "name": "Archive team folder", "description": "Tool to archive an active team folder in Dropbox. Sets the team folder's status to archived and removes all folder and file members. Use when you need to archive a team folder that is no longer in active use. The folder must be active before it can be archived." }, { "slug": "DROPBOX_CHECK_COPY_BATCH", "name": "Check copy batch job status", "description": "Tool to check the status of an asynchronous copy batch job in Dropbox. Use when you have an async_job_id from a previous copy_batch operation and need to poll its status. Returns 'in_progress', 'complete' with results for each entry, or 'failed' with error details." }, { "slug": "DROPBOX_CHECK_DELETE_BATCH", "name": "Check delete batch status", "description": "Tool to check the status of an asynchronous delete batch job in Dropbox. Use when you need to poll the status of a batch delete operation initiated by delete_batch. Returns 'in_progress', 'complete' with per-entry results, 'failed', or error status." }, { "slug": "DROPBOX_CHECK_FOLDER_BATCH", "name": "Check folder batch status", "description": "Tool to check the status of an asynchronous folder batch creation job. Use when you need to poll the status of a create_folder_batch operation. Returns 'in_progress', 'complete' with results, or 'failed' with error details." }, { "slug": "DROPBOX_CHECK_JOB_STATUS", "name": "Check sharing job status", "description": "Tool to check the status of an asynchronous sharing job in Dropbox. Use when you have an async_job_id from a previous sharing operation (like unshare_folder, remove_folder_member) and need to poll its status. Returns 'in_progress', 'complete', 'failed' with error details, or polling errors." }, { "slug": "DROPBOX_CHECK_MOVE_BATCH", "name": "Check move batch job status", "description": "Tool to check the status of an asynchronous move batch job. Use when you need to poll the status of a batch move operation started with move_batch_v2. Returns a list of results for each entry when complete." }, { "slug": "DROPBOX_CHECK_MOVE_FORMER_MEMBER_FILES_JOB_STATUS", "name": "Check move former member files job status", "description": "Tool to check the status of an asynchronous move former member files job. Use when you have an async_job_id from a previous team/members/move_former_member_files operation and need to poll its completion status. Returns 'in_progress', 'complete', 'failed' with error details, or error states like 'invalid_async_job_id'." }, { "slug": "DROPBOX_CHECK_REMOVE_MEMBER", "name": "Check remove member job status", "description": "Tool to check the status of an asynchronous remove folder member job in Dropbox. Use when you have an async_job_id from a previous remove_folder_member operation and need to poll its status. Returns 'in_progress', 'complete' with access level info, or 'failed' with error details." }, { "slug": "DROPBOX_CHECK_SAVE_URL_STATUS", "name": "Check save URL job status", "description": "Tool to check the status of a save_url job in Dropbox. Use when you have an async_job_id from a save_url operation and need to poll its completion status. Returns 'in_progress', 'complete' with file metadata, or 'failed' with error details." }, { "slug": "DROPBOX_CHECK_SHARE_JOB_STATUS", "name": "Check share job status", "description": "Tool to check the status of an asynchronous folder sharing job in Dropbox. Use when you need to poll the status of a folder share operation that was initiated asynchronously. Returns 'in_progress', 'complete' with folder metadata, 'failed' with error details, or polling error status." }, { "slug": "DROPBOX_CHECK_TEAM_FOLDER_ARCHIVE", "name": "Check team folder archive status", "description": "Tool to check the status of an asynchronous team folder archive job in Dropbox. Use when you have an async_job_id from a previous team_folder/archive operation and need to poll its status. Returns 'in_progress' while archiving, 'complete' with team folder metadata when done, or error states like 'invalid_async_job_id'." }, { "slug": "DROPBOX_CHECK_UPLOAD_BATCH", "name": "Check upload batch status", "description": "Tool to check the status of an asynchronous upload batch job in Dropbox. Use when you need to poll the status of a batch upload operation initiated by upload_session/finish_batch. Returns 'in_progress', 'complete' with per-entry results, or error status." }, { "slug": "DROPBOX_CHECK_USER", "name": "Check user", "description": "Tool to test Dropbox API connection and validate access token by echoing back a supplied string. Use when you need to verify that the Dropbox API is accessible and the access token is valid." }, { "slug": "DROPBOX_COPY_BATCH", "name": "Copy multiple files or folders", "description": "Tool to copy multiple files or folders to different locations at once in Dropbox. Use when you need to duplicate multiple items efficiently. This operation may complete synchronously or return a job ID for async processing. Use copy_batch/check:2 to check async job status." }, { "slug": "DROPBOX_COPY_FILE_OR_FOLDER", "name": "Copy file or folder", "description": "Tool to copy a file or folder to a different location in Dropbox. Use when you need to duplicate content without removing the original. If the source path is a folder, all its contents will be copied." }, { "slug": "DROPBOX_COUNT_FILE_REQUESTS", "name": "Count file requests", "description": "Tool to get the total number of file requests owned by the authenticated user. Use when you need to count how many file requests (both open and closed) exist." }, { "slug": "DROPBOX_CREATE_FILE_REQUEST", "name": "Create file request", "description": "Tool to create a new file request in Dropbox. Use when you need to request files from others by generating a unique link for uploads to a specified Dropbox folder, optionally with a deadline." }, { "slug": "DROPBOX_CREATE_FOLDER", "name": "Create folder", "description": "Tool to create a new folder at a specified path in Dropbox. Use when you need to organize files by creating a new directory." }, { "slug": "DROPBOX_CREATE_FOLDER_BATCH", "name": "Create multiple folders", "description": "Tool to create multiple folders at once in Dropbox. Use when you need to create several folders efficiently in a single request. For large batches, returns a job ID immediately and runs asynchronously; for smaller inputs, creates folders and returns results synchronously." }, { "slug": "DROPBOX_CREATE_PAPER_DOCUMENT", "name": "Create paper document", "description": "Creates a new Dropbox Paper document at the specified path using HTML or Markdown content." }, { "slug": "DROPBOX_CREATE_PAPER_FOLDER", "name": "Create Paper folder", "description": "Tool to create a new Paper folder with the provided info. Use when you need to organize Paper documents by creating a new folder. Note: This endpoint works for content created by users on the older version of Paper." }, { "slug": "DROPBOX_CREATE_SHARED_LINK", "name": "Create shared link", "description": "Tool to create a stable, long-lived shared link for a Dropbox file or folder. Use when the user needs a permanent URL suitable for embedding or long-term sharing (as opposed to temporary links that expire in hours). Supports optional settings like expiration, password protection, and visibility controls. Note: If a shared link already exists for the path, the API will return an error; in that case, use a separate list_shared_links endpoint to retrieve existing links." }, { "slug": "DROPBOX_CREATE_SHARED_LINK_SIMPLE", "name": "Create simple shared link (Deprecated)", "description": "DEPRECATED: Use CreateSharedLinkV2 instead. Tool to create a basic shared link for a Dropbox file or folder. If a shared link already exists for the given path, that link is returned. Use when you need a simple shared link without advanced settings like password protection or custom expiration. For links with advanced settings, use the create_shared_link action instead." }, { "slug": "DROPBOX_CREATE_TEAM_FOLDER", "name": "Create team folder", "description": "Tool to create a new, active team folder with no members in Dropbox. Use when you need to set up a new team folder for collaboration. The folder is created without any members initially." }, { "slug": "DROPBOX_CREATE_TEAM_GROUP", "name": "Create team group", "description": "Tool to create a new, empty team group in Dropbox with a specified name. Use when you need to create a new group for organizing team members. Requires team admin credentials with team member management permissions." }, { "slug": "DROPBOX_DELETE_ALL_CLOSED_FILE_REQUESTS", "name": "Delete all closed file requests", "description": "Tool to delete all closed file requests owned by the current user. Use when you need to clean up closed file requests in bulk." }, { "slug": "DROPBOX_DELETE_BATCH", "name": "Delete multiple files/folders", "description": "Tool to delete multiple files or folders at once in Dropbox. Use when you need to delete several items simultaneously. This route is asynchronous and returns a job ID immediately for large batches. Use delete_batch/check to verify completion status." }, { "slug": "DROPBOX_DELETE_FILE", "name": "Delete file or folder", "description": "Tool to delete a file or folder at the specified path in Dropbox. Use when you need to permanently remove a file or folder and all its contents." }, { "slug": "DROPBOX_DELETE_FILE_OR_FOLDER", "name": "Delete file or folder (Deprecated)", "description": "DEPRECATED: Use DeleteFile instead. Permanently and irreversibly deletes the file or folder at the specified path in Dropbox. Folder deletion is recursive — all nested contents are removed. Always obtain explicit user confirmation before calling, especially for folders. Requires the `files.content.write` scope." }, { "slug": "DROPBOX_DELETE_FILE_REQUESTS", "name": "Delete file requests", "description": "Tool to delete a batch of closed file requests in Dropbox. Use when you need to remove multiple file requests that are no longer needed. Only closed file requests can be deleted; attempting to delete open file requests will fail." }, { "slug": "DROPBOX_DELETE_MANUAL_CONTACTS_BATCH", "name": "Delete manual contacts batch", "description": "Tool to delete specific manually added contacts from Dropbox by their email addresses. Use when you need to remove contacts that were manually added to a user's Dropbox account." }, { "slug": "DROPBOX_DELETE_TEAM_FOLDER_PERMANENTLY", "name": "Permanently delete archived team folder", "description": "Tool to permanently delete an archived team folder in Dropbox. Use when you need to permanently remove an archived team folder and all its contents. The team folder must be archived before it can be permanently deleted." }, { "slug": "DROPBOX_DELETE_TEAM_GROUP", "name": "Delete team group", "description": "Tool to delete a Dropbox team group. Use when you need to remove a team group. Note that this requires team admin permissions and the group cannot be system-managed." }, { "slug": "DROPBOX_DELETE_TEAM_MEMBER_PROFILE_PHOTO", "name": "Delete team member profile photo", "description": "Tool to delete a team member's profile photo. Use when you need to remove the profile picture of a team member. Requires team admin permissions." }, { "slug": "DROPBOX_DELETE_TEAM_MEMBERS_SECONDARY_EMAILS", "name": "Delete team members secondary emails", "description": "Tool to delete secondary email addresses from Dropbox team members. Use when you need to remove secondary emails from one or more team members. Requires team member management permissions." }, { "slug": "DROPBOX_DOWNLOAD_ZIP", "name": "Download Folder as Zip", "description": "Tool to download a folder from Dropbox as a zip file. Use when you need to download an entire folder structure with multiple files. The folder must be less than 20 GB in size with any single file less than 4 GB, and the resulting zip must have fewer than 10,000 total entries." }, { "slug": "DROPBOX_EXPORT_FILE", "name": "Export File", "description": "Tool to export non-downloadable Dropbox files (especially Dropbox Paper) to Markdown/HTML/plain text and return usable content. Use when you need to access content from files that cannot be downloaded directly, such as Dropbox Paper documents or Google Docs stored in Dropbox. Requires files.content.read scope." }, { "slug": "DROPBOX_FILES_SEARCH", "name": "Search files and folders", "description": "Tool to search for files and folders in Dropbox by name or content. Use when you need to find items matching a search query within a specific path or across the entire Dropbox." }, { "slug": "DROPBOX_FINISH_UPLOAD_SESSION", "name": "Finish upload session", "description": "Tool to finish an upload session and save the uploaded data to the given file path. Use when completing a multi-part upload after using upload_session/start and upload_session/append. A single request should not upload more than 150 MiB. The maximum size of a file one can upload to an upload session is 2,199,019,061,248 bytes." }, { "slug": "DROPBOX_FINISH_UPLOAD_SESSION_BATCH", "name": "Finish batch upload sessions", "description": "Tool to commit many files at once into a user's Dropbox after uploading file contents via upload_session/start and upload_session/append. Use when you need to finish multiple upload sessions in a single request. Returns an async_job_id which can be used with upload_session/finish_batch/check to poll for completion. Maximum 1000 entries per request." }, { "slug": "DROPBOX_GET_ABOUT_ME", "name": "Get about me", "description": "Tool to get information about the current user's Dropbox account. Use when you need to retrieve account details like email, name, or account type. Useful for verifying authenticated account identity before destructive operations in multi-account setups. Note: successful response does not imply access to all shared or team folders; path-specific permission errors from other tools indicate missing folder-level permissions, not empty results." }, { "slug": "DROPBOX_GET_ACCOUNT", "name": "Get account", "description": "Tool to get information about a user's Dropbox account using their account ID. Use when you need to retrieve account details for a specific user." }, { "slug": "DROPBOX_GET_ACCOUNT_BATCH", "name": "Get account batch", "description": "Tool to get information about multiple user accounts in a single request. At most 300 accounts may be queried per request. Use when you need to retrieve details for multiple Dropbox users efficiently." }, { "slug": "DROPBOX_GET_AVAILABLE_TEAM_MEMBER_ROLES", "name": "Get available team member roles", "description": "Tool to retrieve all available team member roles for the connected Dropbox team. Use when you need to discover what roles can be assigned to team members (e.g., Team, Billing, Report, Content, Security, User management, Support)." }, { "slug": "DROPBOX_GET_COPY_REFERENCE", "name": "Get copy reference", "description": "Tool to get a copy reference to a file or folder. Use when you need to generate a reference string that can be used to copy the file or folder to another user's Dropbox via copy_reference/save." }, { "slug": "DROPBOX_GET_FILE_LOCK_BATCH", "name": "Get file lock batch", "description": "Tool to return lock metadata for multiple files in a single batch request. Use when you need to check the lock status of up to 1000 files at once." }, { "slug": "DROPBOX_GET_FILE_METADATA_BATCH", "name": "Get shared file metadata batch", "description": "Tool to retrieve metadata for multiple shared files in a single batch request. Use when you need to get information about shared file permissions, access levels, owners, and sharing policies for multiple files at once." }, { "slug": "DROPBOX_GET_FILE_PREVIEW", "name": "Get file preview", "description": "Tool to get a preview for a file. PDF previews are generated for document formats (.ai, .doc, .docx, .eps, .ppt, .pptx, etc.), and HTML previews are generated for spreadsheet formats (.csv, .xls, .xlsx, etc.). Use when you need to view file content without downloading the original file. Returns error for unsupported file types." }, { "slug": "DROPBOX_GET_FILE_REQUEST", "name": "Get file request details", "description": "Tool to retrieve details of an existing file request by ID. Use when you need to check the status, URL, deadline, or other details of a specific file request." }, { "slug": "DROPBOX_GET_FILE_TAGS", "name": "Get file or folder tags", "description": "Tool to get list of tags assigned to files or folders in Dropbox. Use when you need to retrieve tags for one or more items. This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_GET_FOLDER_CURSOR", "name": "Get folder state cursor", "description": "Tool to get a cursor representing the current state of a folder without listing its contents. Use when you only need to track future changes to a folder, not retrieve existing files. This is more efficient than list_folder for setting up change monitoring or sync functionality." }, { "slug": "DROPBOX_GET_JWKS", "name": "Get JWKS", "description": "Tool to retrieve JSON Web Key Set containing public verification keys for Dropbox signed ID tokens. Use when you need to verify JWT signatures from Dropbox OpenID Connect authentication." }, { "slug": "DROPBOX_GET_METADATA", "name": "Get file or folder metadata", "description": "Tool to fetch metadata for a file or folder by path. Use when you need to verify existence, get canonical identifiers (id, path_display), determine type (.tag), or retrieve detailed attributes without enumerating folder contents." }, { "slug": "DROPBOX_GET_METADATA_ALPHA", "name": "Get file or folder metadata (alpha)", "description": "Tool to fetch metadata for a file or folder using the alpha endpoint. Use when you need metadata with advanced property filtering or custom property template support." }, { "slug": "DROPBOX_GET_OPENID_CONFIG", "name": "Get OpenID config", "description": "Tool to retrieve Dropbox's OpenID Connect discovery document describing supported OAuth 2.0 and OIDC parameters. Use when you need to discover Dropbox's OAuth configuration endpoints and capabilities." }, { "slug": "DROPBOX_GET_SHARED_FILE_METADATA", "name": "Get shared file metadata", "description": "Tool to retrieve metadata for a shared file in Dropbox. Use when you need to get information about a shared file's permissions, access levels, owner, and sharing policies." }, { "slug": "DROPBOX_GET_SHARED_FOLDER_METADATA", "name": "Get shared folder metadata", "description": "Tool to retrieve metadata for a specific shared folder by its ID. Use when you need detailed information about a shared folder including access level, policies, owner, paths, and permissions." }, { "slug": "DROPBOX_GET_SHARED_LINK_FILE", "name": "Download file from shared link", "description": "Tool to download a file from a Dropbox shared link. Use when you have a shared link URL and need to retrieve the actual file content. This endpoint works with shared links to files; for shared links to folders, use the path parameter to specify which file within the folder to download." }, { "slug": "DROPBOX_GET_SHARED_LINK_METADATA", "name": "Get shared link metadata", "description": "Tool to resolve a Dropbox shared link URL into structured metadata. Use when the user provides a shared link and you need to determine what it points to (file vs folder) and obtain canonical identifiers (id, path) to enable follow-on operations." }, { "slug": "DROPBOX_GET_SPACE_USAGE", "name": "Get space usage", "description": "Tool to get space usage information for the current user's Dropbox account. Use when you need to check storage usage, available space, or quota information." }, { "slug": "DROPBOX_GET_TEAM_FEATURE_VALUES", "name": "Get team feature values", "description": "Tool to get values for one or more team features. Use when you need to check team capabilities like upload rate limits, shared team root availability, file events, or selective sync status." }, { "slug": "DROPBOX_GET_TEAM_FOLDER_INFO", "name": "Get team folder info", "description": "Tool to retrieve metadata for team folders. Returns information about folder status, sync settings, and properties for the specified team folder IDs. Use when you need to check the status or configuration of one or more team folders." }, { "slug": "DROPBOX_GET_TEAM_GROUPS_INFO", "name": "Get team groups info", "description": "Tool to retrieve information about one or more team groups by their IDs or external IDs. Use when you need to get details about specific groups including name, member count, management type, and creation time." }, { "slug": "DROPBOX_GET_TEAM_GROUPS_JOB_STATUS", "name": "Get team groups job status", "description": "Tool to check the status of an asynchronous team groups job in Dropbox. Use when you have an async_job_id from a previous team groups operation (like groups_delete) and need to poll its completion status." }, { "slug": "DROPBOX_GET_TEAM_INFO", "name": "Get team info", "description": "Tool to retrieve information about a Dropbox team. Use when you need to get team details such as team name, ID, licensed user counts, or team policies." }, { "slug": "DROPBOX_GET_TEAM_LOG_EVENTS", "name": "Get team audit log events", "description": "Tool to retrieve team audit log events from Dropbox. Use when you need to access team activity logs, audit trails, or monitor team events. Supports filtering by time range and event category, with pagination for large result sets." }, { "slug": "DROPBOX_GET_TEAM_LOG_EVENTS_CONTINUE", "name": "Get team log events (continue)", "description": "Tool to paginate through team audit log events using a cursor from team_log/get_events. Use when you have a cursor from a previous call and need to retrieve the next batch of team events." }, { "slug": "DROPBOX_GET_TEAM_MEMBER_CUSTOM_QUOTA", "name": "Get team member custom quota", "description": "Tool to retrieve custom storage quotas for team members. Use when you need to check which team members have custom quota allocations and their quota amounts. Requires team admin credentials." }, { "slug": "DROPBOX_GET_TEAM_MEMBERS_ADD_JOB_STATUS", "name": "Get team members add job status v2", "description": "Tool to poll the status of an asynchronous team member addition job. Use when you have an async_job_id from team/members/add_v2 and need to check if the member addition has completed. Returns 'in_progress', 'complete' with per-member results, or 'failed' with error details." }, { "slug": "DROPBOX_GET_TEAM_MEMBERS_INFO", "name": "Get team members info", "description": "Tool to retrieve information about multiple team members in a single request. Use when you need to get details like email, name, status, role, and account information for one or more team members. Requires team admin credentials." }, { "slug": "DROPBOX_GET_TEAM_PROPERTIES_TEMPLATE", "name": "Get property template for team", "description": "Tool to get the schema for a specified property template for a team. Use when you need to retrieve the structure and field definitions of a team property template." }, { "slug": "DROPBOX_GET_TEMPORARY_LINK", "name": "Get temporary link", "description": "Tool to get a one-click temporary (expiring) download link. Use when you need to share a Dropbox file directly without proxying content through this service. Only works for files, not folders. Returned URLs expire within hours and must be regenerated for future use; never treat them as permanent links. Requires `files.content.read` scope." }, { "slug": "DROPBOX_GET_TEMPORARY_UPLOAD_LINK", "name": "Get temporary upload link", "description": "Tool to get a one-time use temporary upload link to upload a file to Dropbox. Use when you need to perform a delayed upload where the file will be uploaded to the returned link via POST with Content-Type: application/octet-stream. The upload link is valid for up to 4 hours." }, { "slug": "DROPBOX_GET_THUMBNAIL", "name": "Get thumbnail", "description": "Tool to get a thumbnail for an image file. Use when you need to generate a thumbnail preview of an image. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB." }, { "slug": "DROPBOX_GET_THUMBNAIL_BATCH", "name": "Get thumbnail batch", "description": "Tool to get thumbnails for multiple image files in a single batch request. Use when you need to generate thumbnail previews for up to 25 images at once. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB." }, { "slug": "DROPBOX_GET_THUMBNAIL_V2", "name": "Get thumbnail v2", "description": "Tool to get a thumbnail for an image file. Use when you need to generate a thumbnail preview of an image. Supports jpg, jpeg, png, tiff, tif, gif, webp, ppm, and bmp files under 20MB. Can access files via direct path or shared link." }, { "slug": "DROPBOX_GET_USER_FEATURES", "name": "Get user features", "description": "Tool to get a list of feature values configured for the current Dropbox account. Use when you need to check which features are enabled, such as paper_as_files or file_locking." }, { "slug": "DROPBOX_LIST_EXCLUDED_USERS_CONTINUE", "name": "List member space limits excluded users (continue)", "description": "Tool to paginate through team members excluded from space limits using a cursor from a previous list call. Use when you have a cursor from the initial excluded users list endpoint and need to retrieve the next batch of excluded team members." }, { "slug": "DROPBOX_LIST_FILE_MEMBERS", "name": "List file members", "description": "Tool to obtain the members who have been invited to a file, both inherited and uninherited members. Use when you need to retrieve detailed information about users, groups, and invitees with access to a specific file, including their access levels and permissions." }, { "slug": "DROPBOX_LIST_FILE_MEMBERS_BATCH", "name": "List file members batch", "description": "Tool to get members of multiple files at once. Use when you need to retrieve sharing information for multiple files in a single request. Returns users, groups, and invitees with access to each file, but does not include inherited members or detailed permissions. For more detailed results, use the individual file member endpoint." }, { "slug": "DROPBOX_LIST_FILE_REQUESTS", "name": "List file requests", "description": "Tool to list all file requests owned by the current user. Use when you need to see existing file requests, their status, and details." }, { "slug": "DROPBOX_LIST_FILE_REQUESTS_CONTINUE", "name": "List file requests (continue)", "description": "Tool to paginate through file requests using a cursor from a previous list call. Use when you have a cursor from /2/file_requests/list or /2/file_requests/list/continue and need to retrieve the next batch of file requests." }, { "slug": "DROPBOX_LIST_FILE_REVISIONS", "name": "List file revisions", "description": "Tool to retrieve the revision history for a file. Use when you need to see past versions of a file, restore a previous version, or track changes over time." }, { "slug": "DROPBOX_LIST_FILES_IN_FOLDER", "name": "List files in folder", "description": "Tool to list files and folders in a specified Dropbox directory. Use when you need to see the contents of a folder, including subfolders if recursive is true. When the response contains `has_more=true`, continue fetching with the returned cursor until `has_more=false` — stopping early misses entries in large folders. Response entries include both files and folders; use the `.tag` field on each entry to distinguish item types." }, { "slug": "DROPBOX_LIST_FOLDER_CONTINUE", "name": "List folder continue", "description": "Tool to continue paginating through folder contents using a cursor from list_folder. Use when has_more is true to retrieve remaining entries." }, { "slug": "DROPBOX_LIST_FOLDER_MEMBERS", "name": "List folder members", "description": "Tool to list members of a shared folder, including users, groups, and invitees. Use when you need to retrieve information about who has access to a specific shared folder and their permission levels." }, { "slug": "DROPBOX_LIST_FOLDER_MEMBERS_CONTINUE", "name": "List folder members continue", "description": "Tool to continue paginating through shared folder members using a cursor from list_folder_members. Use when cursor is present in list_folder_members response to retrieve remaining member entries." }, { "slug": "DROPBOX_LIST_FOLDERS", "name": "List folder contents (Deprecated)", "description": "DEPRECATED: Use ListFilesInFolder instead. Retrieves a list of folders, files, and deleted entries from a specified Dropbox path." }, { "slug": "DROPBOX_LIST_FOLDERS_CONTINUE", "name": "List shared folders continue", "description": "Tool to continue paginating through shared folders using a cursor from list_folders. Use when the cursor is present in list_folders response to retrieve remaining shared folder entries." }, { "slug": "DROPBOX_LIST_MEMBER_LINKED_APPS", "name": "List member linked apps", "description": "Tool to list all applications linked to a specific team member's account. Use when you need to audit or review which third-party applications have been authorized by a particular team member." }, { "slug": "DROPBOX_LIST_MEMBER_SPACE_LIMITS_EXCLUDED_USERS", "name": "List excluded users from space limits", "description": "Tool to list team members excluded from space limits. Use when you need to view which users are exempt from storage quotas. This is a team-level operation requiring team admin authentication." }, { "slug": "DROPBOX_LIST_MOUNTABLE_FOLDERS", "name": "List mountable folders", "description": "Tool to list all shared folders the current user can mount or unmount. Use when discovering mountable shared folders (unmounted folders can be identified by absence of path_lower field). This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_LIST_MOUNTABLE_FOLDERS_CONTINUE", "name": "List mountable folders continue", "description": "Tool to paginate through mountable shared folders using a cursor. Use when you have a cursor from a previous call to list_mountable_folders or list_mountable_folders/continue and need to retrieve the next batch of folders." }, { "slug": "DROPBOX_LIST_PAPER_DOCS", "name": "List Paper docs", "description": "Tool to return the list of all Paper docs according to filter and sort specifications. Use when you need to retrieve Paper document IDs for further operations. To iterate through full pagination, pass the cursor to docs/list/continue." }, { "slug": "DROPBOX_LIST_PAPER_DOCS_CONTINUE", "name": "List Paper documents (continue)", "description": "Tool to continue paginating through Paper documents using a cursor from paper/docs/list. Use when has_more is true to retrieve remaining Paper documents. Note: This endpoint continues to work for older Paper content; check user features to determine Paper version." }, { "slug": "DROPBOX_LIST_RECEIVED_FILES", "name": "List received files", "description": "Tool to list all files shared with the current user. Returns files directly shared with the user but does not include files received via shared folders or unclaimed invitations. Use when discovering files that have been shared with the authenticated user." }, { "slug": "DROPBOX_LIST_SHARED_FOLDERS", "name": "List shared folders", "description": "Tool to list all shared folders the authenticated user has access to. Use when discovering shared or team-mounted folders that may not appear in a standard path listing. Returns metadata including folder name, ID, access level, and paths (if mounted)." }, { "slug": "DROPBOX_LIST_SHARED_LINKS", "name": "List shared links", "description": "Tool to list existing shared links for the current user, optionally filtered by path. Use when you need to discover or reuse existing shared links to avoid creating duplicates or to check what links already exist for a file or folder. Supports pagination via cursor for large result sets." }, { "slug": "DROPBOX_LIST_SHARING_ALLOWLIST", "name": "List team sharing allowlist", "description": "Tool to list Approve List entries for a team from newest to oldest. Use when you need to retrieve allowed domains and emails for team sharing." }, { "slug": "DROPBOX_LIST_TEAM_DEVICES", "name": "List team devices", "description": "Tool to list all device sessions of a team including web sessions, desktop clients, and mobile clients. Use when you need to audit team devices, view active sessions, or monitor device activity across the team. Supports pagination via cursor for large result sets. Requires team admin credentials." }, { "slug": "DROPBOX_LIST_TEAM_FOLDERS", "name": "List team folders", "description": "Tool to list all team folders for a Dropbox Business team. Use when you need to discover team-wide folders or manage team folder access." }, { "slug": "DROPBOX_LIST_TEAM_FOLDERS_CONTINUE", "name": "List team folders continue", "description": "Tool to continue paginating through team folders using a cursor from team_folder/list. Use when the cursor is present in list_team_folders response to retrieve remaining team folder entries." }, { "slug": "DROPBOX_LIST_TEAM_GROUP_MEMBERS", "name": "List team group members", "description": "Tool to list members of a Dropbox team group. Use when you need to retrieve the list of team members who belong to a specific group. Returns member profiles with email, status, and access information." }, { "slug": "DROPBOX_LIST_TEAM_GROUPS", "name": "List team groups", "description": "Tool to list all groups on a Dropbox team. Use when you need to see all team groups with their metadata including group ID, name, and member count." }, { "slug": "DROPBOX_LIST_TEAM_GROUPS_CONTINUE", "name": "List team groups continue", "description": "Tool to continue listing team groups using a cursor from team/groups/list. Use when you have a cursor from a previous team groups list call and need to retrieve the next batch of groups." }, { "slug": "DROPBOX_LIST_TEAM_GROUPS_MEMBERS_CONTINUE", "name": "List team group members continue", "description": "Tool to continue listing team group members using a cursor from team/groups/members/list. Use when you have a cursor from a previous group members list call and need to retrieve the next batch of members." }, { "slug": "DROPBOX_LIST_TEAM_LINKED_APPS", "name": "List members linked apps", "description": "Tool to list all applications linked to team members' accounts. Use when you need to audit or review which third-party applications have been authorized by team members. Supports pagination for large teams." }, { "slug": "DROPBOX_LIST_TEAM_MEMBER_DEVICES", "name": "List team member devices", "description": "Tool to list all device sessions of a team's member, including web sessions, desktop clients, and mobile clients. Use when you need to retrieve information about a team member's active devices and sessions." }, { "slug": "DROPBOX_LIST_TEAM_MEMBERS", "name": "List team members", "description": "Tool to list members of a Dropbox team. Use when you need to retrieve information about team members, including their status, roles, and contact details. Supports pagination for teams with many members." }, { "slug": "DROPBOX_LIST_TEAM_MEMBERS_CONTINUE", "name": "List team members continue (v2)", "description": "Tool to continue listing team members using a cursor from team/members/list or team/members/list/continue_v2. Use when you have a cursor from a previous team members list call and need to retrieve the next batch of members." }, { "slug": "DROPBOX_LIST_TEAM_NAMESPACES", "name": "List team namespaces", "description": "Tool to list all team-accessible namespaces in a Dropbox Business team. Use when you need to discover team folders, shared folders, member home namespaces, or app folders accessible to the team." }, { "slug": "DROPBOX_LIST_TEAM_NAMESPACES_CONTINUE", "name": "List team namespaces continue", "description": "Tool to continue paginating through team-accessible namespaces using a cursor from team/namespaces/list. Use when you have a cursor and need to retrieve the next batch of team namespaces." }, { "slug": "DROPBOX_LIST_TEAM_SHARING_ALLOWLIST_CONTINUE", "name": "List team sharing allowlist continue", "description": "Tool to continue paginating through team sharing allowlist entries using a cursor. Use when you have a cursor from a previous sharing_allowlist/list or sharing_allowlist/list/continue call and need to retrieve the next batch of allowed domains and emails." }, { "slug": "DROPBOX_LIST_TEMPLATES_FOR_TEAM", "name": "List property templates for team", "description": "Tool to list all property templates for a team. Use when you need to retrieve available custom file property templates at the team level. Requires a Dropbox Business account with team-level authentication." }, { "slug": "DROPBOX_LIST_USER_TEMPLATES", "name": "List user templates", "description": "Tool to get the template identifiers for a user. Use when you need to retrieve available custom file property templates that can be applied to files." }, { "slug": "DROPBOX_MODIFY_SHARED_LINK_SETTINGS", "name": "Modify shared link settings", "description": "Tool to modify settings of an existing Dropbox shared link. Use when the user needs to change visibility, access permissions, expiration, or password settings for a shared link. Supports changing audience (public/team/private), access level (viewer/editor), expiration dates, and password protection." }, { "slug": "DROPBOX_MOUNT_FOLDER", "name": "Mount shared folder", "description": "Tool to mount a shared folder for the current user after they have been added as a member. Once mounted, the shared folder will appear in their Dropbox. Use when a user needs to access a shared folder that has been shared with them but not yet mounted." }, { "slug": "DROPBOX_MOVE_BATCH", "name": "Move multiple files or folders in batch", "description": "Tool to move multiple files or folders to different locations at once in Dropbox. Use when you need to relocate several items in a single operation. Note that case-only renaming is not supported. The operation may complete synchronously (returning status for each entry) or asynchronously (returning a job ID to check later with move_batch/check:2)." }, { "slug": "DROPBOX_MOVE_FILE_OR_FOLDER", "name": "Move file or folder", "description": "Move file or folder" }, { "slug": "DROPBOX_OVERWRITE_FILE_PROPERTIES", "name": "Overwrite file properties", "description": "Tool to overwrite property groups associated with a file or folder. Use when you need to force apply or replace custom property values for specific templates on a file." }, { "slug": "DROPBOX_READ_FILE", "name": "Read a file", "description": "Downloads a file from the specified Dropbox path, requiring `files.content.read` scope. Response field `file_content_bytes` is base64-encoded binary; decode before saving or passing to libraries. Bursty reads may trigger HTTP 429; honor the `Retry-After` header." }, { "slug": "DROPBOX_REMOVE_FILE_MEMBER", "name": "Remove file member", "description": "Tool to remove a specified member from a file's sharing permissions. Use when you need to revoke a member's access to a shared file. Note: This does not support apps with the app folder permission." }, { "slug": "DROPBOX_REMOVE_FILE_PROPERTIES", "name": "Remove File Properties", "description": "Tool to permanently remove specified property groups from a file or folder. Use when you need to delete custom properties associated with a file." }, { "slug": "DROPBOX_REMOVE_FILE_PROPERTIES_TEMPLATE_FOR_TEAM", "name": "Remove file properties template for team", "description": "Tool to remove a property template from a team. Use when you need to delete a file properties template that was previously added to the team." }, { "slug": "DROPBOX_REMOVE_FILE_TAG", "name": "Remove tag from file or folder", "description": "Tool to remove a tag from a file or folder in Dropbox. Use when you need to delete or untag an existing tag from an item. The tag will be removed only if it exists on the specified path." }, { "slug": "DROPBOX_REMOVE_FOLDER_MEMBER", "name": "Remove folder member", "description": "Tool to remove a member from a shared folder. Use when an owner or editor needs to revoke access for a user or group. The member can be identified by email or Dropbox ID. On success, the response is empty; on error, contains detailed error information." }, { "slug": "DROPBOX_REMOVE_GROUP_MEMBERS", "name": "Remove group members", "description": "Tool to remove members from a Dropbox team group. Use when you need to remove one or more users from a team group. Requires team admin permissions." }, { "slug": "DROPBOX_REMOVE_SHARING_ALLOWLIST", "name": "Remove sharing allowlist", "description": "Tool to remove domains or email addresses from the team sharing allowlist. Use when team admins need to revoke approval for specific domains or emails. Requires team admin authentication. At least one of 'domains' or 'emails' must be provided, with a maximum of 1000 entries per call. Entries must already exist on the allowlist." }, { "slug": "DROPBOX_REMOVE_TEAM_MEMBER_CUSTOM_QUOTA", "name": "Remove team member custom quota", "description": "Tool to remove custom storage quota for team members, reverting them to the team's default quota. Use when you need to reset storage limits for specific team members. Requires team admin credentials." }, { "slug": "DROPBOX_REMOVE_TEAM_MEMBER_SPACE_LIMITS_EXCLUDED_USERS", "name": "Remove member space limits excluded users", "description": "Tool to remove users from the member space limits excluded users list. Use when you need to re-enable space limits for specific team members. Maximum of 1000 users per request. Requires team admin credentials." }, { "slug": "DROPBOX_RENAME_TEAM_FOLDER", "name": "Rename team folder", "description": "Tool to rename an existing team folder in Dropbox. Use when you need to update the name of a team folder." }, { "slug": "DROPBOX_RESEND_SECONDARY_EMAIL_VERIFICATION", "name": "Resend secondary email verification", "description": "Tool to resend secondary email verification emails to team members. Use when team members need verification emails resent for their secondary email addresses. Requires team admin credentials." }, { "slug": "DROPBOX_RESTORE_FILE", "name": "Restore file to specific revision", "description": "Tool to restore a specific revision of a file to the given path in Dropbox. Use when you need to revert a file to a previous version using its revision identifier." }, { "slug": "DROPBOX_REVOKE_SHARED_LINK", "name": "Revoke shared link", "description": "Tool to revoke a Dropbox shared link. Use when you need to remove access to a file or folder by disabling its shared link. Note that revoking a direct link to a file may not fully prevent access if parent folders have active shared links." }, { "slug": "DROPBOX_SAVE_COPY_REFERENCE", "name": "Save copy reference", "description": "Tool to save a copy reference to the user's Dropbox. Use when you have a copy reference (obtained from copy_reference/get) and need to save it to a specific destination path." }, { "slug": "DROPBOX_SAVE_URL", "name": "Save file from URL", "description": "Tool to save a file to Dropbox directly from a public URL via server-side fetch. Use when you have a temporary or public link and want Dropbox to download it directly without local staging. The operation is asynchronous and may take up to 15 minutes for large files." }, { "slug": "DROPBOX_SEARCH_CONTINUE", "name": "Continue Dropbox Search", "description": "Tool to fetch the next page of search results from a previous Dropbox search. Use when you have a cursor from a search operation and need to retrieve additional results. Note: search along with search_continue can only retrieve a maximum of 10,000 matches total." }, { "slug": "DROPBOX_SEARCH_FILE_OR_FOLDER", "name": "Search File or Folder", "description": "Tool to search for files and folders in Dropbox by name or content, optionally scoped to a path, with pagination support. Results paginate via cursor (up to 100 per page); check `has_more` in the response and re-fetch with the cursor until `has_more` is false. Newly indexed items may have a brief delay before appearing. Verify `path_display` and `.tag` (file vs folder) on each result before acting, as multiple similar-named items may match. Results are limited to items visible to the authenticated user." }, { "slug": "DROPBOX_SEARCH_FILE_PROPERTIES", "name": "Search File Properties", "description": "Tool to search across property templates for particular property field values. Use when you need to find files or folders that have specific custom property values (e.g., find all files with priority='high'). Note: This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_SEND_TEAM_MEMBER_WELCOME_EMAIL", "name": "Send team member welcome email", "description": "Tool to send a welcome email to a pending team member. Use when a team admin needs to resend or send a welcome email to a user who has been invited to the team." }, { "slug": "DROPBOX_SET_PROFILE_PHOTO", "name": "Set profile photo", "description": "Tool to set the profile photo for the current user's Dropbox account. Use when you need to update or change the user's profile picture. Requires a base64-encoded JPEG image." }, { "slug": "DROPBOX_SET_TEAM_MEMBER_CUSTOM_QUOTA", "name": "Set team member custom quota", "description": "Tool to set custom storage quotas for team members in Dropbox. Use when you need to assign specific storage limits to individual team members. Maximum of 1000 users per request." }, { "slug": "DROPBOX_SHARE_FOLDER", "name": "Share folder", "description": "Tool to share a folder with collaborators in Dropbox. Most sharing will be completed synchronously, but large folders will be completed asynchronously. If an async_job_id is returned, you'll need to call check_share_job_status until the action completes to get the folder metadata. Use when you need to create a shared folder or convert an existing folder to a shared folder." }, { "slug": "DROPBOX_START_UPLOAD_SESSION", "name": "Start upload session", "description": "Tool to start a new upload session with the given data. Use when uploading large files in multiple requests. This call starts the session and you can then use upload_session/append_v2 to add more data and upload_session/finish to complete the upload. A single request should not upload more than 150 MiB." }, { "slug": "DROPBOX_START_UPLOAD_SESSION_BATCH", "name": "Start batch of upload sessions", "description": "Tool to start a batch of upload sessions. Use when you need to upload multiple large files and want to initialize multiple upload sessions at once. Each session can then be used with upload_session/append_v2 to upload file chunks and upload_session/finish_batch to complete the uploads." }, { "slug": "DROPBOX_UNLOCK_FILE_BATCH", "name": "Unlock multiple files", "description": "Tool to unlock multiple files at specified paths in a single batch operation. Locked files can only be unlocked by the lock holder or a team admin (for business accounts). Returns metadata for each unlocked file or error details for failures." }, { "slug": "DROPBOX_UNMOUNT_FOLDER", "name": "Unmount shared folder", "description": "Tool to unmount a shared folder for the current user. Once unmounted, the shared folder will be removed from the user's Dropbox. Use when a user wants to remove a shared folder from their Dropbox while remaining a member of the folder." }, { "slug": "DROPBOX_UNSHARE_FILE", "name": "Unshare file", "description": "Tool to remove all members from a Dropbox file. Use when you need to revoke access for all collaborators on a file. Note: This does not remove inherited members from parent folders and does not support apps with the app folder permission." }, { "slug": "DROPBOX_UNSHARE_FOLDER", "name": "Unshare folder", "description": "Tool to allow a shared folder owner to unshare the folder. Use when you need to stop sharing a folder with all members. Unshare will not work if: the shared folder contains shared folders OR the shared folder is inside another shared folder. You must call check_job_status with the returned async_job_id to determine if the action completed successfully. Requires sharing.write scope." }, { "slug": "DROPBOX_UPDATE_FILE_MEMBER", "name": "Update file member", "description": "Tool to change a member's access level on a shared file. Use when you need to update permissions for an existing file member (e.g., change from editor to viewer or vice versa). Note: This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_UPDATE_FILE_PROPERTIES", "name": "Update file properties", "description": "Tool to update custom properties on a file or folder in Dropbox. Use when you need to modify metadata fields associated with a property template, such as updating status, priority, or other custom attributes. Requires the files.metadata.write scope." }, { "slug": "DROPBOX_UPDATE_FILE_REQUEST", "name": "Update file request", "description": "Tool to update an existing file request in Dropbox. Use when you need to modify the title, destination, deadline, open/closed status, or description of a file request." }, { "slug": "DROPBOX_UPDATE_FOLDER_MEMBER", "name": "Update folder member", "description": "Tool to update another member's permissions in a shared folder. Use when an owner or editor needs to change access levels for existing members. This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_UPDATE_FOLDER_POLICY", "name": "Update folder policy", "description": "Tool to update the sharing policies for a shared folder. Use when you need to change who can be members, who can update the ACL, viewer info settings, shared link policies, or link settings. User must have AccessLevel.owner access to the shared folder." }, { "slug": "DROPBOX_UPDATE_GROUP_MEMBER_ACCESS_TYPE", "name": "Set group member access type", "description": "Tool to change a member's access type in a team group. Use when you need to promote a member to owner or demote an owner to regular member. Requires team admin permissions with group management capabilities." }, { "slug": "DROPBOX_UPDATE_PAPER_DOCUMENT", "name": "Update Paper Document", "description": "Tool to update an existing Dropbox Paper document with new content in Markdown, HTML, or plain text format. Use when you need to modify, append, prepend, or overwrite content in an existing Paper doc. This endpoint does not support apps with the app folder permission." }, { "slug": "DROPBOX_UPDATE_PROPERTY_TEMPLATE_FOR_TEAM", "name": "Update property template for team", "description": "Tool to update a property template for a team in Dropbox. Use when you need to modify an existing template's name, description, or add new property fields. Requires team admin permissions and a Dropbox Business account." }, { "slug": "DROPBOX_UPDATE_TEAM_FOLDER_SYNC_SETTINGS", "name": "Update team folder sync settings", "description": "Tool to update the sync settings on a team folder or its contents in Dropbox. Use when you need to control whether a team folder or specific content within it is synchronized to members' devices. This is useful for managing storage space and controlling access to sensitive content." }, { "slug": "DROPBOX_UPDATE_TEAM_GROUP", "name": "Update team group", "description": "Tool to update a team group's name, external ID, and/or management type. Use when you need to modify group properties such as renaming a group or changing how it's managed." }, { "slug": "DROPBOX_UPDATE_TEAM_MEMBER_ADMIN_PERMISSIONS", "name": "Set team member admin permissions", "description": "Tool to update a team member's admin permissions. Use when you need to grant or revoke admin privileges for team members. Requires team admin permissions to execute." }, { "slug": "DROPBOX_UPDATE_TEAM_MEMBER_PROFILE", "name": "Set team member profile", "description": "Tool to update a team member's profile information. Use when you need to change a team member's email, name, external ID, or directory restrictions. At least one profile field must be provided for update." }, { "slug": "DROPBOX_UPDATE_TEAM_MEMBER_PROFILE_PHOTO", "name": "Set team member profile photo", "description": "Tool to update a team member's profile photo. Use when you need to set or change the profile picture of a team member. Requires team admin permissions and a JPEG image (minimum 128x128 pixels) in base64 format." }, { "slug": "DROPBOX_UPLOAD_FILE", "name": "Upload File", "description": "Uploads a file (up to ~150 MB) to a specified path in the user's Dropbox, with options for handling existing files. Files larger than 150 MB require a chunked upload approach." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "dropbox_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "email,profile,account_info.write,account_info.read,files.metadata.write,files.metadata.read,files.content.write,files.content.read,openid,file_requests.write,file_requests.read,sharing.write,sharing.read,contacts.write,contacts.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "shortcut", "name": "Shortcut", "logo": "https://logos.composio.dev/api/shortcut", "description": "Shortcut aligns product development work with company objectives so teams can execute with a shared purpose.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 142, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHORTCUT_CREATE_CATEGORY", "name": "Create category", "description": "Create Category allows you to create a new Category in Shortcut." }, { "slug": "SHORTCUT_CREATE_DOC", "name": "Create doc", "description": "Create Doc allows you to create a new document in Shortcut. Use when you need to create documentation, notes, or any written content. Supports markdown or HTML input." }, { "slug": "SHORTCUT_CREATE_ENTITY_TEMPLATE", "name": "Create entity template", "description": "Create a new entity template for the Workspace." }, { "slug": "SHORTCUT_CREATE_EPIC", "name": "Create epic", "description": "Create Epic allows you to create a new Epic in Shortcut." }, { "slug": "SHORTCUT_CREATE_EPIC_COMMENT", "name": "Create epic comment", "description": "This endpoint allows you to create a threaded Comment on an Epic." }, { "slug": "SHORTCUT_CREATE_EPIC_COMMENT_COMMENT", "name": "Create epic comment comment", "description": "This endpoint allows you to create a nested Comment reply to an existing Epic Comment." }, { "slug": "SHORTCUT_CREATE_EPIC_HEALTH", "name": "Create epic health", "description": "Create a new health status for the specified Epic. Use when you need to set or update the health tracking status of an Epic." }, { "slug": "SHORTCUT_CREATE_GENERIC_INTEGRATION", "name": "Create generic integration", "description": "Tool to create a generic webhook integration in Shortcut. Use when you need to set up a webhook endpoint to receive Shortcut events." }, { "slug": "SHORTCUT_CREATE_GROUP", "name": "Create group", "description": "Creates a new group in the Shortcut system with customizable properties. This endpoint allows you to set up a group with a unique mention name, display name, optional description, and various customization options. Use this when you need to establish a new team, department, or any other collective within your Shortcut workspace. The created group can include members, associated workflows, and visual customizations like color and icon. This endpoint is particularly useful for organizing your Shortcut workspace structure, facilitating team collaboration, and streamlining workflow management. Note that while member and workflow associations can be set during creation, they can also be modified later using separate endpoints." }, { "slug": "SHORTCUT_CREATE_ITERATION", "name": "Create iteration", "description": "The CreateIteration endpoint allows you to create a new Iteration in Shortcut, which represents a time-boxed period for completing a set of stories or tasks. This endpoint is crucial for teams using Agile methodologies, enabling them to plan and track progress over specific time periods. Use this endpoint when setting up sprint cycles, planning releases, or organizing work into manageable timeframes. The endpoint requires essential information such as the Iteration's name and date range, while also offering options to add followers, associate groups, and attach labels for better organization and tracking. It's important to note that while multiple groups can be added via the API, the current web UI only displays one Group association. This endpoint should not be used for modifying existing Iterations; instead, use the dedicated update endpoint for such changes." }, { "slug": "SHORTCUT_CREATE_LABEL", "name": "Create label", "description": "Create Label allows you to create a new Label in Shortcut." }, { "slug": "SHORTCUT_CREATE_LINKED_FILE", "name": "Create linked file", "description": "Create Linked File allows you to create a new Linked File in Shortcut." }, { "slug": "SHORTCUT_CREATE_MILESTONE", "name": "Create milestone", "description": "(Deprecated: Use 'Create Objective') Create Milestone allows you to create a new Milestone in Shortcut." }, { "slug": "SHORTCUT_CREATE_MULTIPLE_STORIES", "name": "Create multiple stories", "description": "Create Multiple Stories allows you to create multiple stories in a single request using the same syntax as [Create Story](https://developer.shortcut.com/api/rest/v3#create-story)." }, { "slug": "SHORTCUT_CREATE_OBJECTIVE", "name": "Create objective", "description": "Create Objective allows you to create a new Objective in Shortcut." }, { "slug": "SHORTCUT_CREATE_PROJECT", "name": "Create project", "description": "Create Project is used to create a new Shortcut Project." }, { "slug": "SHORTCUT_CREATE_STORY", "name": "Create story", "description": "Create Story is used to add a new story to your Shortcut Workspace. This endpoint requires that either **workflow_state_id** or **project_id** be provided, but will reject the request if both or neither are specified. The workflow_state_id has been marked as required and is the recommended field to specify because we are in the process of sunsetting Projects in Shortcut." }, { "slug": "SHORTCUT_CREATE_STORY_COMMENT", "name": "Create story comment", "description": "Create Comment allows you to create a Comment on any Story." }, { "slug": "SHORTCUT_CREATE_STORY_FROM_TEMPLATE", "name": "Create story from template", "description": "Create Story From Template is used to add a new story derived from a template to your Shortcut Workspace." }, { "slug": "SHORTCUT_CREATE_STORY_LINK", "name": "Create story link", "description": "Story Links (called Story Relationships in the UI) allow you create semantic relationships between two stories. The parameters read like an active voice grammatical sentence: subject -> verb -> object. The subject story acts on the object Story; the object story is the direct object of the sentence. The subject story \"blocks\", \"duplicates\", or \"relates to\" the object story. Examples: - \"story 5 blocks story 6” -- story 6 is now \"blocked\" until story 5 is moved to a Done workflow state. - \"story 2 duplicates story 1” -- Story 2 represents the same body of work as Story 1 (and should probably be archived). - \"story 7 relates to story 3”" }, { "slug": "SHORTCUT_CREATE_STORY_REACTION", "name": "Create story reaction", "description": "Create a reaction to a story comment." }, { "slug": "SHORTCUT_CREATE_TASK", "name": "Create task", "description": "Create Task is used to create a new task in a Story." }, { "slug": "SHORTCUT_DELETE_CATEGORY", "name": "Delete category", "description": "Delete Category can be used to delete any Category." }, { "slug": "SHORTCUT_DELETE_CUSTOM_FIELD", "name": "Delete custom field", "description": "Deletes a specific custom field from the Shortcut system using its unique public identifier. This endpoint should be used when you need to permanently remove a custom field that is no longer required in your workflows or project structure. It's important to note that this operation is irreversible, and once a custom field is deleted, all data associated with it will be lost. Use this endpoint with caution, ensuring that the custom field is no longer needed and that its deletion won't negatively impact any existing processes or data integrity within your Shortcut instance." }, { "slug": "SHORTCUT_DELETE_DOC", "name": "Delete doc", "description": "Permanently deletes a Doc and its associated data from Shortcut. Requires admin access to the document. When a document is deleted, connected clients will be notified via Server-Sent Events (SSE). Use this action when you need to remove a document completely from the system. Be cautious as this operation is irreversible." }, { "slug": "SHORTCUT_DELETE_ENTITY_TEMPLATE", "name": "Delete entity template", "description": "Deletes a specific entity template from the Shortcut API. This endpoint should be used when you need to permanently remove a template that is no longer needed or is obsolete. It's important to note that this operation cannot be undone, so it should be used with caution. The deletion is performed on a single template identified by its public ID, adhering to the best practice of controlling deletion on a per-resource basis. This endpoint is part of the API v3, which may include enhanced features or changes compared to previous versions." }, { "slug": "SHORTCUT_DELETE_EPIC", "name": "Delete epic", "description": "Delete Epic can be used to delete the Epic. The only required parameter is Epic ID." }, { "slug": "SHORTCUT_DELETE_EPIC_COMMENT", "name": "Delete epic comment", "description": "This endpoint allows you to delete a Comment from an Epic." }, { "slug": "SHORTCUT_DELETE_FILE", "name": "Delete file", "description": "Delete File deletes a previously uploaded file." }, { "slug": "SHORTCUT_DELETE_GENERIC_INTEGRATION", "name": "Delete generic integration", "description": "Tool to delete a generic webhook integration from Shortcut. Use when you need to permanently remove a webhook integration that is no longer needed." }, { "slug": "SHORTCUT_DELETE_ITERATION", "name": "Delete iteration", "description": "Deletes a specific iteration from the Shortcut project management system. This endpoint should be used when you need to permanently remove an iteration and all its associated data from your project workflow. It's particularly useful for cleaning up completed or cancelled iterations that are no longer needed. Be cautious when using this endpoint, as the deletion is irreversible and will remove all data associated with the specified iteration. Ensure you have the correct iteration ID before proceeding with the deletion to avoid unintended data loss." }, { "slug": "SHORTCUT_DELETE_LABEL", "name": "Delete label", "description": "Delete Label can be used to delete any Label." }, { "slug": "SHORTCUT_DELETE_LINKED_FILE", "name": "Delete linked file", "description": "Delete Linked File can be used to delete any previously attached Linked-File." }, { "slug": "SHORTCUT_DELETE_MILESTONE", "name": "Delete milestone", "description": "(Deprecated: Use 'Delete Objective') Delete Milestone can be used to delete any Milestone." }, { "slug": "SHORTCUT_DELETE_MULTIPLE_STORIES", "name": "Delete multiple stories", "description": "Delete Multiple Stories allows you to delete multiple archived stories at once." }, { "slug": "SHORTCUT_DELETE_OBJECTIVE", "name": "Delete objective", "description": "Delete Objective can be used to delete any Objective." }, { "slug": "SHORTCUT_DELETE_PROJECT", "name": "Delete project", "description": "Delete Project can be used to delete a Project. Projects can only be deleted if all associated Stories are moved or deleted. In the case that the Project cannot be deleted, you will receive a 422 response." }, { "slug": "SHORTCUT_DELETE_STORY", "name": "Delete story", "description": "Delete Story can be used to delete any Story." }, { "slug": "SHORTCUT_DELETE_STORY_COMMENT", "name": "Delete story comment", "description": "Delete a Comment from any story." }, { "slug": "SHORTCUT_DELETE_STORY_LINK", "name": "Delete story link", "description": "Removes the relationship between the stories for the given Story Link." }, { "slug": "SHORTCUT_DELETE_STORY_REACTION", "name": "Delete story reaction", "description": "Delete a reaction from any story comment." }, { "slug": "SHORTCUT_DELETE_TASK", "name": "Delete task", "description": "Delete Task can be used to delete any previously created Task on a Story." }, { "slug": "SHORTCUT_DISABLE_ITERATIONS", "name": "Disable iterations", "description": "Disables Iterations for the current workspace" }, { "slug": "SHORTCUT_DISABLE_STORY_TEMPLATES", "name": "Disable story templates", "description": "Disables the Story Template feature for the Workspace." }, { "slug": "SHORTCUT_ENABLE_ITERATIONS", "name": "Enable iterations", "description": "Enables Iterations for the current workspace" }, { "slug": "SHORTCUT_ENABLE_STORY_TEMPLATES", "name": "Enable story templates", "description": "Enables the Story Template feature for the Workspace." }, { "slug": "SHORTCUT_GET_CATEGORY", "name": "Get category", "description": "Get Category returns information about the selected Category." }, { "slug": "SHORTCUT_GET_CURRENT_MEMBER_INFO", "name": "Get current member info", "description": "Returns information about the authenticated member." }, { "slug": "SHORTCUT_GET_CUSTOM_FIELD", "name": "Get custom field", "description": "Retrieves detailed information about a specific custom field in Shortcut using its unique public identifier. This endpoint allows developers to fetch the properties and configuration of a custom field, which can include its name, type, possible values, and any other associated metadata. It's particularly useful when you need to inspect or validate a custom field's settings programmatically, or when integrating custom field data into external systems. The endpoint should be used when detailed information about a single custom field is required, rather than for bulk operations or listing all custom fields. Note that this endpoint only provides read access to custom field data and cannot be used to modify the custom field." }, { "slug": "SHORTCUT_GET_DOC", "name": "Get doc", "description": "Get Doc returns information about a chosen Doc by its public ID. Use content_format=html to include HTML content in the response." }, { "slug": "SHORTCUT_GET_ENTITY_TEMPLATE", "name": "Get entity template", "description": "Get Entity Template returns information about a given entity template." }, { "slug": "SHORTCUT_GET_EPIC", "name": "Get epic", "description": "Get Epic returns information about the selected Epic." }, { "slug": "SHORTCUT_GET_EPIC_COMMENT", "name": "Get epic comment", "description": "This endpoint returns information about the selected Epic Comment." }, { "slug": "SHORTCUT_GET_EPIC_HEALTH", "name": "Get epic health", "description": "Get the current health status for the specified Epic. Use when you need to check the health status of an Epic." }, { "slug": "SHORTCUT_GET_EPIC_WORKFLOW", "name": "Get epic workflow", "description": "Returns the Epic Workflow for the Workspace." }, { "slug": "SHORTCUT_GET_EXTERNAL_LINK_STORIES", "name": "Get external link stories", "description": "Get Stories which have a given External Link associated with them." }, { "slug": "SHORTCUT_GET_FILE", "name": "Get file", "description": "Get File returns information about the selected UploadedFile." }, { "slug": "SHORTCUT_GET_GENERIC_INTEGRATION", "name": "Get generic integration", "description": "Get Generic Integration returns information about a webhook integration by its ID. Use when you need to retrieve details about a specific webhook integration." }, { "slug": "SHORTCUT_GET_GROUP", "name": "Get group", "description": "Retrieves detailed information about a specific group in the Shortcut workspace using its unique public identifier. This endpoint allows developers to fetch comprehensive data about a group, including its name, type, and associated metadata. It's particularly useful when you need to access or verify group details programmatically, such as during workflow automations or when building integrations that involve group management. The endpoint provides more granular control and information compared to what's available through the web application, making it valuable for advanced group-related operations and data analysis within your Shortcut projects." }, { "slug": "SHORTCUT_GET_ITERATION", "name": "Get iteration", "description": "Retrieves detailed information about a specific iteration in the Shortcut project management system. This endpoint allows users to fetch comprehensive data about a single iteration, including its name, status, start and end dates, associated stories, and progress metrics. It should be used when detailed information about a particular iteration is needed, such as during sprint planning, progress tracking, or retrospective analysis. The endpoint provides a snapshot of the iteration at the time of the request and does not include real-time updates. It's particularly useful for project managers, scrum masters, and team members who need to review or report on iteration-specific data. Note that this endpoint only retrieves information and does not allow for modification of the iteration details." }, { "slug": "SHORTCUT_GET_KEY_RESULT", "name": "Get key result", "description": "Get Key Result returns information about a chosen Key Result." }, { "slug": "SHORTCUT_GET_LABEL", "name": "Get label", "description": "Get Label returns information about the selected Label." }, { "slug": "SHORTCUT_GET_LINKED_FILE", "name": "Get linked file", "description": "Get File returns information about the selected Linked File." }, { "slug": "SHORTCUT_GET_MEMBER", "name": "Get member", "description": "Returns information about a Member." }, { "slug": "SHORTCUT_GET_MILESTONE", "name": "Get milestone", "description": "(Deprecated: Use 'Get Objective') Get Milestone returns information about a chosen Milestone." }, { "slug": "SHORTCUT_GET_OBJECTIVE", "name": "Get objective", "description": "Get Objective returns information about a chosen Objective." }, { "slug": "SHORTCUT_GET_PROJECT", "name": "Get project", "description": "Get Project returns information about the selected Project." }, { "slug": "SHORTCUT_GET_REPOSITORY", "name": "Get repository", "description": "Get Repository returns information about the selected Repository." }, { "slug": "SHORTCUT_GET_STORY", "name": "Get story", "description": "Get Story returns information about a chosen Story." }, { "slug": "SHORTCUT_GET_STORY_COMMENT", "name": "Get story comment", "description": "Get Comment is used to get Comment information." }, { "slug": "SHORTCUT_GET_STORY_LINK", "name": "Get story link", "description": "Returns the stories and their relationship for the given Story Link." }, { "slug": "SHORTCUT_GET_TASK", "name": "Get task", "description": "Returns information about a chosen Task." }, { "slug": "SHORTCUT_GET_WORKFLOW", "name": "Get workflow", "description": "Get Workflow returns information about a chosen Workflow." }, { "slug": "SHORTCUT_LINK_DOCUMENT_TO_EPIC", "name": "Link document to epic", "description": "Tool to create a relationship between a Document and an Epic. Use when you need to link or associate documentation with an epic." }, { "slug": "SHORTCUT_LIST_CATEGORIES", "name": "List categories", "description": "List Categories returns a list of all Categories and their attributes." }, { "slug": "SHORTCUT_LIST_CATEGORY_MILESTONES", "name": "List category milestones", "description": "List Category Milestones returns a list of all Milestones with the Category." }, { "slug": "SHORTCUT_LIST_CATEGORY_OBJECTIVES", "name": "List category objectives", "description": "Returns a list of all Objectives with the Category." }, { "slug": "SHORTCUT_LIST_CUSTOM_FIELDS", "name": "List custom fields", "description": "Retrieves a list of all custom fields defined in the Shortcut API. This endpoint allows developers to fetch information about user-defined fields that have been added to extend the functionality of standard fields in integrations. It's particularly useful when you need to understand the structure and types of custom data being used across the system. The endpoint returns details about each custom field, which may include their identifiers, names, types, and any associated metadata. Use this endpoint when you need to inventory existing custom fields, prepare for data migrations, or dynamically adjust your application's data model to accommodate custom fields. Note that this endpoint does not create, modify, or delete custom fields; it's purely for retrieval of existing custom field definitions." }, { "slug": "SHORTCUT_LIST_DOCS", "name": "List docs", "description": "Tool to list Docs that the current user can read. Use when you need to retrieve all accessible documentation in the Shortcut workspace." }, { "slug": "SHORTCUT_LIST_DOCUMENT_EPICS", "name": "List document epics", "description": "Tool to retrieve all Epics related to a specific Document. Use when you need to understand which Epics are associated with a given document in Shortcut." }, { "slug": "SHORTCUT_LIST_ENTITY_TEMPLATES", "name": "List entity templates", "description": "List all the entity templates for the Workspace." }, { "slug": "SHORTCUT_LIST_EPIC_COMMENTS", "name": "List epic comments", "description": "Get a list of all Comments on an Epic." }, { "slug": "SHORTCUT_LIST_EPIC_DOCUMENTS", "name": "List epic documents", "description": "Get a list of all Documents related to this Epic." }, { "slug": "SHORTCUT_LIST_EPIC_HEALTHS", "name": "List epic healths", "description": "List the history of health statuses for the specified Epic, most recent first. Use when you need to track health status changes over time." }, { "slug": "SHORTCUT_LIST_EPICS", "name": "List epics", "description": "List Epics returns a list of all Epics and their attributes." }, { "slug": "SHORTCUT_LIST_EPICS_PAGINATED", "name": "List epics paginated", "description": "List Epics with pagination returns a paginated list of Epics and their attributes. Use when you need to retrieve Epics in manageable pages rather than all at once." }, { "slug": "SHORTCUT_LIST_EPIC_STORIES", "name": "List epic stories", "description": "Get a list of all Stories in an Epic." }, { "slug": "SHORTCUT_LIST_FILES", "name": "List files", "description": "List Files returns a list of all UploadedFiles in the workspace." }, { "slug": "SHORTCUT_LIST_GROUPS", "name": "List groups", "description": "A group in our API maps to a \"Team\" within the Shortcut Product. A Team is a collection of Users that can be associated to Stories, Epics, and Iterations within Shortcut." }, { "slug": "SHORTCUT_LIST_GROUP_STORIES", "name": "List group stories", "description": "List the Stories assigned to the Group. (By default, limited to 1,000)." }, { "slug": "SHORTCUT_LIST_ITERATIONS", "name": "List iterations", "description": "Retrieves a list of all iterations in the Shortcut project management system. Iterations represent specific time periods for planning and tracking work, allowing teams to organize their development cycles. This endpoint provides comprehensive information about each iteration, including its name, start and end dates, status, and associated stories or tasks. Use this endpoint when you need an overview of all iterations for project planning, progress tracking, or reporting purposes. It's particularly useful for analyzing past performance, planning future sprints, or getting a high-level view of the project timeline. Note that the response may be paginated for projects with a large number of iterations, and you might need to make multiple requests to retrieve the full dataset." }, { "slug": "SHORTCUT_LIST_ITERATION_STORIES", "name": "List iteration stories", "description": "Get a list of all Stories in an Iteration." }, { "slug": "SHORTCUT_LIST_LABEL_EPICS", "name": "List label epics", "description": "List all of the Epics with the Label." }, { "slug": "SHORTCUT_LIST_LABELS", "name": "List labels", "description": "List Labels returns a list of all Labels and their attributes." }, { "slug": "SHORTCUT_LIST_LABEL_STORIES", "name": "List label stories", "description": "List all of the Stories with the Label." }, { "slug": "SHORTCUT_LIST_LINKED_FILES", "name": "List linked files", "description": "List Linked Files returns a list of all Linked-Files and their attributes." }, { "slug": "SHORTCUT_LIST_MEMBERS", "name": "List members", "description": "Returns information about members of the Workspace." }, { "slug": "SHORTCUT_LIST_MEMBERS_SLIM", "name": "List members (slim)", "description": "Returns minimal member data optimized for Korey integration. Use this when you need basic member information without full profile details. Returns all workspace members with disabled status indicated in the response." }, { "slug": "SHORTCUT_LIST_MILESTONE_EPICS", "name": "List milestone epics", "description": "(Deprecated: Use 'List Objective Epics') List all of the Epics within the Milestone." }, { "slug": "SHORTCUT_LIST_MILESTONES", "name": "List milestones", "description": "(Deprecated: Use 'List Objectives') List Milestones returns a list of all Milestones and their attributes." }, { "slug": "SHORTCUT_LIST_OBJECTIVE_EPICS", "name": "List objective epics", "description": "List all of the Epics within the Objective." }, { "slug": "SHORTCUT_LIST_OBJECTIVES", "name": "List objectives", "description": "List Objectives returns a list of all Objectives and their attributes." }, { "slug": "SHORTCUT_LIST_PROJECTS", "name": "List projects", "description": "List Projects returns a list of all Projects and their attributes." }, { "slug": "SHORTCUT_LIST_REPOSITORIES", "name": "List repositories", "description": "List Repositories returns a list of all Repositories and their attributes." }, { "slug": "SHORTCUT_LIST_STORIES", "name": "List stories", "description": "List Stories returns a list of all Stories in a selected Project and their attributes." }, { "slug": "SHORTCUT_LIST_STORY_COMMENT", "name": "List story comment", "description": "Lists Comments associated with a Story" }, { "slug": "SHORTCUT_LIST_STORY_SUB_TASKS", "name": "List story sub-tasks", "description": "Tool to list all Sub-task Stories for a given parent Story. Use when you need to retrieve all sub-tasks associated with a specific story." }, { "slug": "SHORTCUT_LIST_WORKFLOWS", "name": "List workflows", "description": "Returns a list of all Workflows in the Workspace." }, { "slug": "SHORTCUT_SEARCH", "name": "Search", "description": "Search lets you search Epics and Stories based on desired parameters. Since ordering of the results can change over time (due to search ranking decay, new Epics and Stories being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_DOCUMENTS", "name": "Search documents", "description": "Tool to search Documents based on title and filters. Use when you need to find specific documents by fuzzy title matching or filter by archived/created_by_me/followed_by_me status." }, { "slug": "SHORTCUT_SEARCH_EPICS", "name": "Search epics", "description": "Search Epics lets you search Epics based on desired parameters. Since ordering of stories can change over time (due to search ranking decay, new Epics being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_ITERATIONS", "name": "Search iterations", "description": "Search Iterations lets you search Iterations based on desired parameters. Since ordering of results can change over time (due to search ranking decay, new Iterations being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_MILESTONES", "name": "Search milestones", "description": "Search Milestones lets you search Milestones based on desired parameters. Since ordering of results can change over time (due to search ranking decay, new Milestones being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_OBJECTIVES", "name": "Search objectives", "description": "Search Objectives lets you search Objectives based on desired parameters. Since ordering of results can change over time (due to search ranking decay, new Objectives being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_STORIES", "name": "Search stories", "description": "Search Stories lets you search Stories based on desired parameters. Since ordering of stories can change over time (due to search ranking decay, new stories being created), the `next` value from the previous response can be used as the path and query string for the next page to ensure stable ordering." }, { "slug": "SHORTCUT_SEARCH_STORIES_OLD", "name": "Search stories old", "description": "Search Stories lets you search Stories based on desired parameters." }, { "slug": "SHORTCUT_STORY_HISTORY", "name": "Story history", "description": "Retrieves the complete history of changes for a specific story in the Shortcut project management system. This endpoint allows users to track all modifications, updates, and revisions made to a story over time, providing a comprehensive timeline of its evolution. It's particularly useful for project managers, team members, and stakeholders who need to understand how a story has changed, who made the changes, and when they occurred. The endpoint returns a chronological list of all events and modifications associated with the specified story, helping teams maintain transparency and accountability in their project workflows. Note that this endpoint focuses solely on the history of a single story and does not provide information about related stories or overall project status." }, { "slug": "SHORTCUT_UNLINK_COMMENT_THREAD_FROM_SLACK", "name": "Unlink comment thread from slack", "description": "Unlinks a Comment from its linked Slack thread (Comment replies and Slack replies will no longer be synced)" }, { "slug": "SHORTCUT_UNLINK_DOCUMENT_FROM_EPIC", "name": "Unlink document from epic", "description": "Tool to remove the relationship between a Document and an Epic. Use when you need to unlink a previously associated document from an epic." }, { "slug": "SHORTCUT_UNLINK_PRODUCTBOARD_FROM_EPIC", "name": "Unlink productboard from epic", "description": "This endpoint allows you to unlink a productboard epic." }, { "slug": "SHORTCUT_UPDATE_CATEGORY", "name": "Update category", "description": "Update Category allows you to replace a Category name with another name. If you try to name a Category something that already exists, you will receive a 422 response." }, { "slug": "SHORTCUT_UPDATE_CUSTOM_FIELD", "name": "Update custom field", "description": "Update Custom Field can be used to update the definition of a Custom Field. The order of items in the 'values' collection is interpreted to be their ascending sort order.To delete an existing enum value, simply omit it from the 'values' collection. New enum values may be created inline by including an object in the 'values' collection having a 'value' entry with no 'id' (eg. {'value': 'myNewValue', 'color_key': 'green'})." }, { "slug": "SHORTCUT_UPDATE_DOC", "name": "Update Doc", "description": "Tool to update an existing Doc's title and/or content. Use when you need to modify document properties. Supports markdown or HTML input via content_format parameter. SSE events notify connected users to refresh; if no users are connected, CKEditor cache is flushed." }, { "slug": "SHORTCUT_UPDATE_ENTITY_TEMPLATE", "name": "Update entity template", "description": "Update an entity template's name or its contents." }, { "slug": "SHORTCUT_UPDATE_EPIC", "name": "Update epic", "description": "Update Epic can be used to update numerous fields in the Epic. The only required parameter is Epic ID, which can be found in the Shortcut UI." }, { "slug": "SHORTCUT_UPDATE_EPIC_COMMENT", "name": "Update epic comment", "description": "This endpoint allows you to update a threaded Comment on an Epic." }, { "slug": "SHORTCUT_UPDATE_FILE", "name": "Update file", "description": "Update File updates the properties of an UploadedFile (but not its content)." }, { "slug": "SHORTCUT_UPDATE_GROUP", "name": "Update group", "description": "Updates an existing group in the Shortcut workspace. This endpoint allows you to modify various properties of a group, including its name, description, color, members, and associated workflows. Use this when you need to change group details, add or remove members, or update the group's visual representation. It's particularly useful for team reorganizations, project changes, or general maintenance of your Shortcut workspace structure. Note that while many fields are optional, you should include any fields you wish to modify; omitted fields will retain their current values." }, { "slug": "SHORTCUT_UPDATE_HEALTH", "name": "Update health status", "description": "Update an existing health status by its ID. Use when you need to modify the health tracking status of an Epic or Objective." }, { "slug": "SHORTCUT_UPDATE_ITERATION", "name": "Update iteration", "description": "This endpoint allows you to update an existing iteration in Shortcut. It provides comprehensive control over various aspects of an iteration, including its metadata, associated members and groups, labels, and timeframe. Use this endpoint when you need to modify any details of an ongoing or upcoming iteration, such as adjusting dates, adding followers, or updating labels. The endpoint is particularly useful for project managers or team leads who need to refine iteration details as the project progresses. Note that while you can update multiple aspects of an iteration in a single call, only the fields you include in the request will be modified; omitted fields will retain their current values." }, { "slug": "SHORTCUT_UPDATE_KEY_RESULT", "name": "Update key result", "description": "Update Key Result allows updating a Key Result's name or initial, observed, or target values." }, { "slug": "SHORTCUT_UPDATE_LABEL", "name": "Update label", "description": "Update Label allows you to replace a Label name with another name. If you try to name a Label something that already exists, you will receive a 422 response." }, { "slug": "SHORTCUT_UPDATE_LINKED_FILE", "name": "Update linked file", "description": "Updated Linked File allows you to update properties of a previously attached Linked-File." }, { "slug": "SHORTCUT_UPDATE_MILESTONE", "name": "Update milestone", "description": "(Deprecated: Use 'Update Objective') Update Milestone can be used to update Milestone properties." }, { "slug": "SHORTCUT_UPDATE_MULTIPLE_STORIES", "name": "Update multiple stories", "description": "Update Multiple Stories allows you to make changes to numerous stories at once." }, { "slug": "SHORTCUT_UPDATE_OBJECTIVE", "name": "Update objective", "description": "Update Objective can be used to update Objective properties." }, { "slug": "SHORTCUT_UPDATE_PROJECT", "name": "Update project", "description": "Update Project can be used to change properties of a Project." }, { "slug": "SHORTCUT_UPDATE_STORY", "name": "Update story", "description": "Update Story can be used to update Story properties." }, { "slug": "SHORTCUT_UPDATE_STORY_COMMENT", "name": "Update story comment", "description": "Update Comment replaces the text of the existing Comment." }, { "slug": "SHORTCUT_UPDATE_STORY_LINK", "name": "Update story link", "description": "Updates the stories and/or the relationship for the given Story Link." }, { "slug": "SHORTCUT_UPDATE_TASK", "name": "Update task", "description": "Update Task can be used to update Task properties." }, { "slug": "SHORTCUT_UPLOAD_FILES", "name": "Upload files", "description": "Upload Files uploads one or many files and optionally associates them with a story. Use the multipart/form-data content-type to upload. Each `file` key should contain a separate file. Each UploadedFile's name comes from the Content-Disposition header \"filename\" directive for that field." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shortcut_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Shortcut API token for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "confluence", "name": "Confluence", "logo": "https://logos.composio.dev/api/confluence", "description": "A tool for team collaboration and knowledge management.", "category": "team collaboration", "authSchemes": [ "OAUTH2", "S2S_OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 69, "triggerCount": 20, "version": "20260703_01", "tools": [ { "slug": "CONFLUENCE_ADD_CONTENT_LABEL", "name": "Add Content Label", "description": "Tool to add labels to a piece of content. Use after obtaining the content ID to tag pages or blog posts with metadata labels." }, { "slug": "CONFLUENCE_CQL_SEARCH", "name": "CQL Search", "description": "Searches for content in Confluence using Confluence Query Language (CQL). CQL is a powerful query language that allows you to search across all Confluence content with advanced filtering capabilities including: - Full-text search: `text ~ \"search term\"` - searches within page content - Title search: `title ~ \"meeting notes\"` - searches page titles - Label filtering: `label = \"important\"` - filters by labels - Space filtering: `space = DEV` - limits search to specific spaces - Type filtering: `type = page` or `type = blogpost` - filters by content type - Creator filtering: `creator = currentUser()` - filters by content creator - Date filtering: `lastModified > now(\"-7d\")` - filters by modification date - Combined queries: `text ~ \"api\" AND space = DOCS AND type = page` This action uses the Confluence REST API v1 search endpoint which fully supports CQL." }, { "slug": "CONFLUENCE_CREATE_BLOGPOST", "name": "Create Blogpost", "description": "Tool to create a new Confluence blog post. Use when you need to publish content in a specific space. Response includes `data.id` for the post ID and `data._links.base` + `data._links.webui` for the URL." }, { "slug": "CONFLUENCE_CREATE_BLOGPOST_PROPERTY", "name": "Create Blogpost Property", "description": "Tool to create a property on a specified blog post. Use when you need to add custom metadata to a blog post. Creates a new property with a key-value pair on a specified Confluence blog post. This allows users to add custom metadata relevant to the blog post." }, { "slug": "CONFLUENCE_CREATE_CONTENT_PROPERTY_FOR_WHITEBOARD", "name": "Create Whiteboard Property", "description": "Tool to create a new content property on a whiteboard. Use when you need to attach custom metadata to a Confluence whiteboard." }, { "slug": "CONFLUENCE_CREATE_FOOTER_COMMENT", "name": "Create Footer Comment", "description": "Tool to create a footer comment on a Confluence page, blog post, attachment, or custom content. Use when you need to add a comment without editing the page body itself." }, { "slug": "CONFLUENCE_CREATE_INLINE_COMMENT", "name": "Create Inline Comment", "description": "Creates an inline comment on a Confluence page or blog post, highlighting specific text. Inline comments allow users to comment on specific portions of content without editing the page itself. Use this action when you need to add context or feedback on particular text within a page or blog post. For top-level comments, you must specify which text to highlight using inlineCommentProperties. For replies to existing inline comments, only provide the parentCommentId." }, { "slug": "CONFLUENCE_CREATE_PAGE", "name": "Create Page", "description": "Tool to create a new Confluence page in a specified space. Use when you need to create new documentation or content." }, { "slug": "CONFLUENCE_CREATE_PAGE_PROPERTY", "name": "Create Page Property", "description": "Tool to create a property on a Confluence page. Use when you need to add custom metadata or settings to a page." }, { "slug": "CONFLUENCE_CREATE_PRIVATE_SPACE", "name": "Create Private Space", "description": "Tool to create a private Confluence space. Use when you need an isolated workspace viewable only by its creator." }, { "slug": "CONFLUENCE_CREATE_SPACE", "name": "Create Space", "description": "Tool to create a new Confluence space. Use when setting up a new knowledge area for organization. Must include a `plain.representation` field, e.g., `{\"plain\": {\"representation\": \"plain\", \"value\": \"text here\"}}`. Omitting this field causes a 400 error." }, { "slug": "CONFLUENCE_CREATE_SPACE_PROPERTY", "name": "Create Space Property", "description": "Tool to create a new property on a Confluence space. Use after confirming the space ID when adding custom metadata." }, { "slug": "CONFLUENCE_CREATE_WHITEBOARD", "name": "Create Whiteboard", "description": "Tool to create a new Confluence whiteboard. Use when you need to start a collaborative whiteboard session." }, { "slug": "CONFLUENCE_DELETE_BLOGPOST", "name": "Delete Blog Post", "description": "Deletes a Confluence blog post by ID. Use this action when you need to remove a blog post from a Confluence space. This action is irreversible — the blog post cannot be recovered once deleted (especially if purge=true). In move or migration workflows, confirm all target blog posts were successfully created before deleting source blog posts — partial creation failures combined with deletion result in unrecoverable data loss." }, { "slug": "CONFLUENCE_DELETE_BLOGPOST_PROPERTY", "name": "Delete Blogpost Property", "description": "Tool to delete a blog post property. Use when you need to remove custom metadata from a specified blog post." }, { "slug": "CONFLUENCE_DELETE_CONTENT_PROPERTY_FOR_PAGE_BY_ID", "name": "Delete Page Content Property", "description": "Tool to delete a content property from a page by property ID. Use when you need to remove custom metadata from a page for cleanup or auditing. This action deletes a specified content property from a Confluence page using its page ID and property ID. It is useful for removing outdated or unnecessary metadata." }, { "slug": "CONFLUENCE_DELETE_CONTENT_PROPERTY_FOR_WHITEBOARD_BY_ID", "name": "Delete Whiteboard Content Property", "description": "Tool to delete a content property from a whiteboard by property ID. Use when you need to remove custom metadata from a whiteboard." }, { "slug": "CONFLUENCE_DELETE_PAGE", "name": "Delete Page", "description": "Tool to delete a Confluence page. Use with caution as this permanently removes the page and its content with no recovery option. In move or migration workflows, confirm all target pages were successfully created before deleting source pages — partial creation failures combined with deletion result in unrecoverable data loss." }, { "slug": "CONFLUENCE_DELETE_SPACE", "name": "Delete Space", "description": "Tool to delete a Confluence space by its key. Use when you need to permanently remove a space." }, { "slug": "CONFLUENCE_DELETE_SPACE_PROPERTY", "name": "Delete Space Property", "description": "Tool to delete a space property. Use when you need to remove a property from a Confluence space after review." }, { "slug": "CONFLUENCE_DOWNLOAD_ATTACHMENT", "name": "Download Attachment", "description": "Downloads an attachment from a Confluence page and returns a downloadable file. Use this when you need to share the attachment with users who don't have Confluence access. First use get_attachments to list attachments and get the attachment ID." }, { "slug": "CONFLUENCE_FIND_TEXT_SELECTIONS", "name": "Find Text Selections", "description": "Finds text occurrences in a Confluence page's content to help with inline comment creation. This action retrieves the page content and searches for the specified text string, returning information about each match including character position and surrounding context. Use this action when you need to locate specific text in a page before creating inline comments, or when you want to identify all occurrences of a particular phrase or term within a page's content." }, { "slug": "CONFLUENCE_GET_ATTACHMENT_LABELS", "name": "Get Attachment Labels", "description": "Tool to list labels on an attachment. Use after confirming the attachment ID to fetch its labels." }, { "slug": "CONFLUENCE_GET_ATTACHMENTS", "name": "Get Attachments", "description": "Tool to retrieve attachments of a Confluence page. Use after confirming page ID to list its attachments (supports pagination)." }, { "slug": "CONFLUENCE_GET_AUDIT_LOGS", "name": "Get Audit Logs", "description": "Tool to retrieve Confluence audit records. Use when you need to fetch and filter audit logs for compliance or troubleshooting." }, { "slug": "CONFLUENCE_GET_BLOGPOST_BY_ID", "name": "Get Blogpost by ID", "description": "Tool to retrieve a specific Confluence blog post by its ID. Use when you have a blog post ID and need detailed metadata and content." }, { "slug": "CONFLUENCE_GET_BLOGPOST_LABELS", "name": "Get Blogpost Labels", "description": "Tool to retrieve labels of a specific Confluence blog post by ID. Use after obtaining the blog post ID to list its labels." }, { "slug": "CONFLUENCE_GET_BLOGPOST_LIKE_COUNT", "name": "Get Blogpost Like Count", "description": "Tool to get like count for a Confluence blog post. Use after confirming the blog post ID to retrieve total likes." }, { "slug": "CONFLUENCE_GET_BLOGPOST_OPERATIONS", "name": "Get Blogpost Operations", "description": "Tool to retrieve permitted operations for a Confluence blog post. Use after confirming the blog post ID to see allowed actions." }, { "slug": "CONFLUENCE_GET_BLOG_POSTS", "name": "Get Blog Posts", "description": "Tool to retrieve a list of blog posts. Use when you need a paginated list of Confluence blog posts." }, { "slug": "CONFLUENCE_GET_BLOG_POSTS_FOR_LABEL", "name": "Get Blog Posts For Label", "description": "Tool to list all blog posts under a specific label. Use when you have a label ID and need to retrieve associated blog posts." }, { "slug": "CONFLUENCE_GET_BLOGPOST_VERSION_DETAILS", "name": "Get Blogpost Version Details", "description": "Tool to retrieve details for a specific version of a blog post. Use when you have a blogpostId and versionNumber and need detailed metadata for that version." }, { "slug": "CONFLUENCE_GET_BLOGPOST_VERSIONS", "name": "Get Blogpost Versions", "description": "Tool to retrieve all versions of a specific blog post. Use when you have a blogpostId and need to list version numbers." }, { "slug": "CONFLUENCE_GET_CHILD_PAGES", "name": "Get Child Pages", "description": "Tool to list all direct child pages of a given Confluence page. Use when you have a parent page ID and need to discover its direct descendants. Response nests child page data under `data.data.results`; unwrap this before iterating. Paginate using `_links.next` cursor until no further results to avoid missing children." }, { "slug": "CONFLUENCE_GET_CONTENT_PROPERTIES_FOR_BLOG_POST", "name": "Get Blog Post Content Properties", "description": "Tool to retrieve all content properties on a blog post. Use when you need to list metadata properties set on a specific Confluence blog post." }, { "slug": "CONFLUENCE_GET_CONTENT_PROPERTIES_FOR_PAGE", "name": "Get Page Content Properties", "description": "Tool to retrieve all content properties on a page. Use when you need to list metadata properties set on a specific Confluence page." }, { "slug": "CONFLUENCE_GET_CONTENT_RESTRICTIONS", "name": "Get Content Restrictions", "description": "Tool to retrieve restrictions on a Confluence content item. Use when you need to see who can view or edit a page or blog post." }, { "slug": "CONFLUENCE_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get information about the currently authenticated user — always scoped to the account tied to the configured connection, not arbitrary users. Use CONFLUENCE_SEARCH_USERS to look up other users. Response contains nested metadata; key fields include accountId, displayName, and email for use in downstream logic." }, { "slug": "CONFLUENCE_GET_INLINE_COMMENTS_FOR_BLOG_POST", "name": "Get Inline Comments for Blog Post", "description": "Tool to retrieve inline comments for a Confluence blog post. Use when you need inline comment details by blog post ID." }, { "slug": "CONFLUENCE_GET_LABELS", "name": "Get Labels", "description": "Tool to retrieve all labels in a Confluence site; use for label discovery when you need to list or page through labels. For label-based filtering, use CONFLUENCE_GET_LABELS_FOR_PAGE or CONFLUENCE_GET_LABELS_FOR_SPACE_CONTENT instead." }, { "slug": "CONFLUENCE_GET_LABELS_FOR_PAGE", "name": "Get Page Labels", "description": "Tool to retrieve labels of a specific Confluence page by ID. Labels are returned in `data.results[*].name` and are not available in CONFLUENCE_GET_PAGES responses. Use after obtaining the page ID to list its labels. Paginate using `start` and `limit` to avoid missing labels when count exceeds 25." }, { "slug": "CONFLUENCE_GET_LABELS_FOR_SPACE", "name": "Get Labels for Space", "description": "Tool to list labels on a space. Use when you need to retrieve labels for a specific space." }, { "slug": "CONFLUENCE_GET_LABELS_FOR_SPACE_CONTENT", "name": "Get Labels for Space Content", "description": "Tool to list labels on all content in a space. Use when you need to retrieve or filter content labels by space, with pagination and optional prefix filtering. For label discovery across a space before per-page filtering, use this tool first, then CONFLUENCE_GET_LABELS_FOR_PAGE; CONFLUENCE_SEARCH_CONTENT does not filter by labels." }, { "slug": "CONFLUENCE_GET_PAGE_ANCESTORS", "name": "Get Page Ancestors", "description": "Tool to retrieve all ancestors for a given Confluence page by its ID. Use when you need the full page hierarchy." }, { "slug": "CONFLUENCE_GET_PAGE_BY_ID", "name": "Get Page by ID", "description": "Tool to retrieve a Confluence page by its ID. Use when you have a page ID and need its detailed metadata and content. Response body is in `body.storage.value` as Confluence storage format (HTML); strip tags before plain-text use. Before calling CONFLUENCE_UPDATE_PAGE, fetch the latest version here — that tool requires `version.number` = current + 1, else a 409 conflict occurs." }, { "slug": "CONFLUENCE_GET_PAGE_FOOTER_COMMENTS", "name": "Get Page Footer Comments", "description": "Tool to retrieve footer (non-inline) comments for a Confluence page. Use when you need to collect review feedback left as standard page comments." }, { "slug": "CONFLUENCE_GET_PAGE_INLINE_COMMENTS", "name": "Get Page Inline Comments", "description": "Tool to retrieve inline comments for a Confluence page. Use when you need inline comment details by page ID." }, { "slug": "CONFLUENCE_GET_PAGE_LIKE_COUNT", "name": "Get Page Like Count", "description": "Tool to get like count for a Confluence page. Use after confirming the page ID to retrieve total likes." }, { "slug": "CONFLUENCE_GET_PAGES", "name": "Get Pages", "description": "Tool to retrieve a paginated list of Confluence pages. Results are permission-scoped to the authenticated user; empty results may reflect access restrictions. Omitting filters like spaceId or status can return unexpectedly broad result sets. Labels are not included in results; use CONFLUENCE_GET_LABELS_FOR_PAGE for label data. Timestamps are ISO 8601 UTC strings." }, { "slug": "CONFLUENCE_GET_PAGE_VERSIONS", "name": "Get Page Versions", "description": "Tool to retrieve all versions of a specific Confluence page. Use to audit edit history or to get the latest version.number before calling CONFLUENCE_UPDATE_PAGE — using a stale version.number causes a 409 Conflict error." }, { "slug": "CONFLUENCE_GET_SPACE_BY_ID", "name": "Get Space by ID", "description": "Tool to retrieve a Confluence space by its ID. Use when you need detailed metadata of a specific space. Space names are non-unique; use the numeric spaceId or spaceKey from the response for stable identification in downstream operations such as CONFLUENCE_GET_SPACE_PROPERTIES, CONFLUENCE_GET_LABELS_FOR_SPACE, CONFLUENCE_GET_SPACE_CONTENTS, and CONFLUENCE_CREATE_BLOGPOST." }, { "slug": "CONFLUENCE_GET_SPACE_CONTENTS", "name": "Get Space Contents", "description": "Tool to retrieve content in a Confluence space. Use when you need to list pages, blogposts, or attachments of a specific space key. Results are in data.results (not data.page.results). Paginate via start/limit (max 200/request); follow response._links.next until absent to avoid missing content. Only returns content accessible to the authenticated user — missing items may indicate permission restrictions. Atlassian Cloud enforces HTTP 429 rate limits; throttle to ~1–2 requests/second, honor Retry-After headers, and cap start ≤ 1000 for large spaces. Construct item URLs by combining data._links.base with each item's _links.webui." }, { "slug": "CONFLUENCE_GET_SPACE_PROPERTIES", "name": "Get Space Properties", "description": "Tool to get properties of a Confluence space. Use when you need to retrieve custom metadata or settings stored as space properties." }, { "slug": "CONFLUENCE_GET_SPACES", "name": "Get Spaces", "description": "Tool to retrieve a paginated list of Confluence spaces with optional filtering. Paginate by incrementing `start` in steps of `limit` until fewer results than `limit` are returned. Results are scoped to spaces visible to the authenticated user; absent spaces may be restricted rather than nonexistent. Use `spaceKey` or numeric space ID (not display name) for stable identification in downstream calls. Combined filters apply as AND logic — relax filters before concluding a space is missing." }, { "slug": "CONFLUENCE_GET_TASKS", "name": "Get Tasks", "description": "Tool to list Confluence tasks (action items) with filtering by assignee, creator, space, page, blog post, status, and dates. Use when you need to retrieve user action items without unreliable keyword searching for \"TODO\"." }, { "slug": "CONFLUENCE_GET_USER_ANONYMOUS", "name": "Get Anonymous User", "description": "Tool to retrieve information about the anonymous user. Use when you need to obtain guest user details before unauthenticated interactions." }, { "slug": "CONFLUENCE_LIST_SPACES", "name": "List Spaces", "description": "Retrieves a paginated list of Confluence spaces visible to the authenticated user. Use when you need to discover available spaces or iterate through all spaces in an instance. Results are scoped to spaces the user has permission to view; missing spaces may be restricted rather than nonexistent. Paginate by using the cursor from the '_links.next' field in the response until no next link is returned." }, { "slug": "CONFLUENCE_SEARCH_CONTENT", "name": "Search Content", "description": "Searches for content by filtering pages from the Confluence v2 API with intelligent ranking. Since the native search endpoint is deprecated, this action: 1. Fetches pages from the v2 pages endpoint with pagination (up to 300 pages) 2. Applies intelligent client-side filtering with relevance scoring 3. Returns results ranked by match quality (exact phrase > all words > partial matches). NOTE: Only page titles are searched — queries matching only body content return no results. Results omit full body content and canonical URLs; use CONFLUENCE_GET_PAGE_BY_ID for complete page data. Cannot filter by author, date, or labels. Results reflect only pages accessible to the authenticated user. When multiple pages share similar titles, verify the correct page via spaceId or pageId before performing writes." }, { "slug": "CONFLUENCE_SEARCH_PAGES", "name": "Search Pages", "description": "Searches for pages in Confluence using filters like title, space, and status. Returns a paginated list of pages matching the specified criteria. Use this action when you need to find specific pages by title or filter pages within a particular space. For full-text content search, use CONFLUENCE_SEARCH_CONTENT instead. For advanced CQL-based queries, use CONFLUENCE_CQL_SEARCH." }, { "slug": "CONFLUENCE_SEARCH_SPACES", "name": "Search Spaces", "description": "Searches for Confluence spaces with flexible filtering by name, key, type, status, and labels. Use this action when you need to find specific spaces by partial name/key match or filter spaces by attributes like type (global/personal), status (current/archived), or labels. Supports pagination for browsing large result sets; increment start by limit until fewer results than limit are returned. Results are scoped to spaces visible to the authenticated user; absence may indicate restricted access rather than nonexistence." }, { "slug": "CONFLUENCE_SEARCH_USERS", "name": "Search Users", "description": "Searches for users using user-specific queries from the Confluence Query Language (CQL)." }, { "slug": "CONFLUENCE_UPDATE_BLOGPOST", "name": "Update Blogpost", "description": "Tool to update a Confluence blog post's title or content. Use when you need to modify an existing blog post. Ensure you have the latest version number before calling." }, { "slug": "CONFLUENCE_UPDATE_BLOGPOST_PROPERTY", "name": "Update Blogpost Property", "description": "Tool to update a property of a specified blog post. Use when you need to modify custom metadata on a blog post." }, { "slug": "CONFLUENCE_UPDATE_CONTENT_PROPERTY_FOR_PAGE_BY_ID", "name": "Update Page Content Property", "description": "Tool to update a content property on a Confluence page. Use when you need to modify an existing metadata property by its ID." }, { "slug": "CONFLUENCE_UPDATE_CONTENT_PROPERTY_FOR_WHITEBOARD_BY_ID", "name": "Update Whiteboard Content Property", "description": "Tool to update a content property on a whiteboard. Use when you need to modify metadata on a Confluence whiteboard." }, { "slug": "CONFLUENCE_UPDATE_PAGE", "name": "Update Page", "description": "Tool to update an existing Confluence page, replacing the entire page content. Use when you need to modify existing documentation or content." }, { "slug": "CONFLUENCE_UPDATE_SPACE_PROPERTY", "name": "Update Space Property", "description": "Tool to update a space property. Use when you need to modify custom metadata stored on a Confluence space (requires fetching the current property version first)." }, { "slug": "CONFLUENCE_UPDATE_TASK", "name": "Update Task", "description": "Tool to update a Confluence task status. Use when you need to mark tasks as complete or incomplete in workflows or dashboards." }, { "slug": "CONFLUENCE_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validates Confluence credentials by attempting to retrieve the current authenticated user's information. Use this action when you need to verify that API credentials are valid and the connection is properly authenticated before performing other operations. Returns validation status along with basic user details if successful." } ], "triggers": [ { "slug": "CONFLUENCE_ATTACHMENT_ADDED_TRIGGER", "name": "New Attachment Added", "description": "Triggers when a new attachment is uploaded to a Confluence page.\n Optionally filters by media type." }, { "slug": "CONFLUENCE_BLOG_POST_ADDED_TO_LABEL_TRIGGER", "name": "Blog Post Added to Label", "description": "Triggers when a new blog post is added to a specific label in Confluence." }, { "slug": "CONFLUENCE_BLOGPOST_INLINE_COMMENT_ADDED_TRIGGER", "name": "Blogpost Inline Comment Added", "description": "Triggers when a new inline comment is added to a Confluence blog post." }, { "slug": "CONFLUENCE_BLOGPOST_LIKE_COUNT_CHANGED_TRIGGER", "name": "Blog Post Like Count Changed", "description": "Triggers when a Confluence blog post's like count changes (someone likes or unlikes)." }, { "slug": "CONFLUENCE_BLOGPOST_UPDATED_TRIGGER", "name": "Blog Post Updated", "description": "Triggers when a Confluence blog post is updated (any edit that creates a new version)." }, { "slug": "CONFLUENCE_CONTENT_RESTRICTIONS_CHANGED_TRIGGER", "name": "Content Restrictions Changed", "description": "Triggers when view or edit restrictions change on a Confluence page or blog post.\n Detects user/group restrictions being added, removed, or modified." }, { "slug": "CONFLUENCE_FOOTER_COMMENT_ADDED_TRIGGER", "name": "New Footer Comment Added to Page", "description": "Triggers when a new footer comment is added to a Confluence page." }, { "slug": "CONFLUENCE_NEW_AUDIT_LOG_TRIGGER", "name": "New Audit Log Record", "description": "Triggers when a new audit log record is created in Confluence.\n Requires Confluence Standard/Premium/Enterprise plan and 'Confluence Administrator' permission." }, { "slug": "CONFLUENCE_NEW_BLOG_POST_CREATED_TRIGGER", "name": "New Blog Post Created", "description": "Triggers when a new blog post is created in Confluence.\n Optionally filters by space or status." }, { "slug": "CONFLUENCE_NEW_CHILD_PAGE_TRIGGER", "name": "New Child Page Created", "description": "Triggers when a new child page is created under a specific parent page in Confluence." }, { "slug": "CONFLUENCE_NEW_CQL_CONTENT_MATCH_TRIGGER", "name": "New CQL Content Match", "description": "Triggers when new Confluence content appears that matches a user-provided CQL query." }, { "slug": "CONFLUENCE_NEW_TASK_CREATED_TRIGGER", "name": "New Task Created", "description": "Triggers when a new task (action item) is created in Confluence." }, { "slug": "CONFLUENCE_PAGE_CONTENT_PROPERTIES_CHANGED_TRIGGER", "name": "Page Content Properties Changed", "description": "Triggers when content properties on a Confluence page are added, removed, or updated." }, { "slug": "CONFLUENCE_PAGE_CREATED_TRIGGER", "name": "New Page Created", "description": "Triggers when a new page is created in Confluence.\n Optionally filters by space or status." }, { "slug": "CONFLUENCE_PAGE_INLINE_COMMENT_ADDED_TRIGGER", "name": "New Inline Comment Added to Page", "description": "Triggers when a new inline comment is added to a Confluence page." }, { "slug": "CONFLUENCE_PAGE_LIKE_COUNT_CHANGED_TRIGGER", "name": "Page Like Count Changed", "description": "Triggers when a Confluence page's like count changes (someone likes or unlikes)." }, { "slug": "CONFLUENCE_PAGE_MOVED_TRIGGER", "name": "Page Moved", "description": "Triggers when a Confluence page is moved to a different location in the page hierarchy." }, { "slug": "CONFLUENCE_PAGE_UPDATED_TRIGGER", "name": "Page Updated", "description": "Triggers when a Confluence page is updated (any edit that creates a new version)." }, { "slug": "CONFLUENCE_PAGE_VERSION_CREATED_TRIGGER", "name": "Page Version Created", "description": "Triggers when a new version is created for a specific Confluence page." }, { "slug": "CONFLUENCE_SPACE_CONTENT_ADDED_TRIGGER", "name": "New Space Content Added", "description": "Triggers when new content (pages or blog posts) is added to a Confluence space.\n Attachments are not supported at space level; use the 'New Attachment Added' trigger instead." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "confluence_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "write:content:confluence,delete:content:confluence,read:space-details:confluence,read:audit-log:confluence,read:page:confluence,write:page:confluence,delete:page:confluence,read:blogpost:confluence,delete:blogpost:confluence,read:whiteboard:confluence,write:whiteboard:confluence,read:comment:confluence,write:comment:confluence,read:content.restriction:confluence,write:content.restriction:confluence,read:content.metadata:confluence,read:inlinetask:confluence,write:inlinetask:confluence,read:task:confluence,write:task:confluence,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "Your Confluence site name — the part before .atlassian.net in your browser's address bar. If your wiki is at acme.atlassian.net/wiki, enter 'acme'.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "confluence_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "Your Confluence site name — the part before .atlassian.net in your browser's address bar. If your wiki is at acme.atlassian.net/wiki, enter 'acme'.", "required": true, "default": null } ], "optional": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "An Atlassian API token — works like a password with your email. Create one at id.atlassian.com/manage-profile/security/api-tokens and copy it then — it's shown only once.", "required": false, "default": null }, { "name": "generic_id", "displayName": "Email", "type": "string", "description": "The email address you sign in to Confluence with (your Atlassian account email), e.g. jane@acme.com — paired with your API token below to authenticate.", "required": false, "default": null } ] } } }, { "mode": "S2S_OAUTH2", "name": "confluence_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth Client ID from Atlassian admin service account credentials", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "OAuth Client Secret from Atlassian admin service account credentials", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Your Subdomain", "type": "string", "description": "Your Confluence site name — the part before .atlassian.net in your browser's address bar. If your wiki is at acme.atlassian.net/wiki, enter 'acme'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freshdesk", "name": "Freshdesk", "logo": "https://logos.composio.dev/api/freshdesk", "description": "Freshdesk provides customer support software with ticketing, knowledge base, and automation features for efficient helpdesk operations and better customer experiences", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 178, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FRESHDESK_ADD_NOTE_TO_TICKET", "name": "Add Note to Ticket", "description": "Tool to add a private or public note to an existing ticket in Freshdesk. Use when you need to add internal comments or public notes to a ticket. Notes can be private (agent-only) or public, and can include HTML content." }, { "slug": "FRESHDESK_ADD_TICKET_USER_ACCESS", "name": "Add Ticket User Access", "description": "Tool to add agent access to a specific ticket in Freshdesk. Use when you need to grant agent(s) permission to view or interact with a ticket. The endpoint accepts agent IDs (not contact IDs) and returns the list of agent IDs that have access to the ticket." }, { "slug": "FRESHDESK_ADD_WATCHER", "name": "Add Watcher to Ticket", "description": "Tool to add the authenticated user as a watcher to a Freshdesk ticket. Use when you need to follow a ticket's progress and receive email notifications for updates like replies or status changes. The API automatically uses the authenticated user's credentials and does not require additional parameters." }, { "slug": "FRESHDESK_BULK_UNWATCH_TICKETS", "name": "Bulk Unwatch Tickets", "description": "Tool to remove the authenticated user as a watcher from multiple Freshdesk tickets in bulk. Use when you need to stop following multiple tickets at once and stop receiving email notifications for their updates. The API automatically uses the authenticated user's credentials." }, { "slug": "FRESHDESK_BULK_UPDATE_TICKETS", "name": "Bulk Update Tickets", "description": "Tool to update multiple tickets simultaneously in bulk. The bulk update operation runs asynchronously in the background, and returns a job_id to track progress. Use when you need to modify the same properties across multiple tickets efficiently." }, { "slug": "FRESHDESK_CANCEL_CONTACT_IMPORT", "name": "Cancel Contact Import", "description": "Tool to cancel an ongoing contact import operation in Freshdesk. Use when you need to halt a contact import process that is currently running." }, { "slug": "FRESHDESK_CREATE_ADMIN", "name": "Create Admin Group", "description": "Tool to create a new admin group in Freshdesk. Use when you need to create a new admin group with specific agents, escalation settings, and automatic assignment configuration." }, { "slug": "FRESHDESK_CREATE_ADMIN_GROUP", "name": "Create Admin Group", "description": "Tool to create a new admin-level support agent group in Freshdesk. Use when you need to create groups for organizing support agents and managing ticket routing at the admin level." }, { "slug": "FRESHDESK_CREATE_ADMIN_TICKET_FIELD", "name": "Create Admin Ticket Field", "description": "Tool to create a new custom ticket field in Freshdesk. Use when you need to add a new field definition for capturing additional ticket information (e.g., priority level, customer type, issue category). The field type can be text, number, dropdown, checkbox, date, or paragraph." }, { "slug": "FRESHDESK_CREATE_ADMIN_TICKET_FIELD_SECTION", "name": "Create Admin Ticket Field Section", "description": "Tool to create a new section within a ticket field in Freshdesk. Use when you need to add conditional field sections that appear based on selected dropdown choices." }, { "slug": "FRESHDESK_CREATE_AGENTS", "name": "Create Multiple Agents", "description": "Tool to create multiple agents in Freshdesk in a single bulk operation. Use when you need to add multiple agents at once. This is an asynchronous operation that returns a job_id for tracking the creation status." }, { "slug": "FRESHDESK_CREATE_CANNED_RESPONSE", "name": "Create Canned Response", "description": "Tool to create a new canned response in Freshdesk. Use when you need to create a reusable message template that agents can quickly insert into tickets." }, { "slug": "FRESHDESK_CREATE_CANNED_RESPONSE_BULK", "name": "Bulk Create Canned Responses", "description": "Tool to create multiple canned responses in bulk via asynchronous operation. Use when you need to add multiple canned responses at once to your Freshdesk account. Returns a job_id that can be used to track the operation status." }, { "slug": "FRESHDESK_CREATE_CANNED_RESPONSE_FOLDER", "name": "Create Canned Response Folder", "description": "Tool to create a new canned response folder in Freshdesk. Use when you need to organize canned response templates into folders." }, { "slug": "FRESHDESK_CREATE_COMPANIES", "name": "Create Company", "description": "Tool to create a new company in Freshdesk. Use when you need to add a customer organization to your Freshdesk account. Companies can hold multiple contacts and are automatically associated with contacts based on email domain matching." }, { "slug": "FRESHDESK_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Freshdesk. Use when you need to add a customer or user to your Freshdesk account. IMPORTANT: The 'employee_id' custom field is mandatory for this Freshdesk instance." }, { "slug": "FRESHDESK_CREATE_CONTACT_FIELDS", "name": "Create Contact Field", "description": "Tool to create a new custom contact field in Freshdesk. Use when you need to add a new field definition for storing custom contact information (e.g., job title, department, customer type). The field type can be text, number, dropdown, checkbox, date, or paragraph." }, { "slug": "FRESHDESK_CREATE_DISCUSSION_CATEGORY", "name": "Create Discussion Category", "description": "Tool to create a new discussion category in Freshdesk forums." }, { "slug": "FRESHDESK_CREATE_DISCUSSION_FORUM_TOPIC", "name": "Create Discussion Forum Topic", "description": "Tool to create a new topic in a Freshdesk discussion forum. Use when you need to post a new discussion topic or thread in a specific forum." }, { "slug": "FRESHDESK_CREATE_DISCUSSION_TOPIC_COMMENT", "name": "Create Discussion Topic Comment", "description": "Tool to create a new comment on a discussion forum topic. Use when you need to add a comment to an existing topic in Freshdesk discussions." }, { "slug": "FRESHDESK_CREATE_EMAIL", "name": "Create Email Mailbox", "description": "Tool to create a new email mailbox in Freshdesk. Use when you need to add a support email address that automatically creates tickets from incoming emails. Requires valid product_id and group_id." }, { "slug": "FRESHDESK_CREATE_FORUM", "name": "Create Forum", "description": "Tool to create a new forum within a category in Freshdesk discussions. Use when you need to add a new forum to organize discussions within a specific category." }, { "slug": "FRESHDESK_CREATE_SLA_POLICIES", "name": "Create SLA Policy", "description": "Tool to create a new SLA (Service Level Agreement) policy in Freshdesk. Use when you need to establish service level targets for ticket response and resolution times based on priority levels." }, { "slug": "FRESHDESK_CREATE_SOLUTION_ARTICLE", "name": "Create Solution Article", "description": "Tool to create a new solution article in a Freshdesk knowledge base folder. Use when you need to add documentation, FAQs, or help content to your knowledge base." }, { "slug": "FRESHDESK_CREATE_SOLUTION_CATEGORY", "name": "Create Solution Category", "description": "Tool to create a new solution category in Freshdesk's knowledge base. Use when you need to organize solution articles and folders under a new category." }, { "slug": "FRESHDESK_CREATE_TICKET", "name": "Create Ticket", "description": "Creates a new ticket in Freshdesk. REQUIRED FIELDS: - subject and description are always required - At least ONE requester identifier is REQUIRED: requester_id, email, phone, facebook_id, twitter_id, or unique_external_id CONDITIONAL REQUIREMENTS: - If phone is provided without email, name becomes MANDATORY NOTE ON ATTACHMENTS: - attachments field expects multipart/form-data format, not file paths" }, { "slug": "FRESHDESK_CREATE_TICKET_FORMS", "name": "Create Ticket Form", "description": "Tool to create a new ticket form in Freshdesk. Use when you need to create a custom ticket form for organizing support requests." }, { "slug": "FRESHDESK_CREATE_TICKET_OUTBOUND_EMAIL", "name": "Create Ticket via Outbound Email", "description": "Tool to create a ticket by sending an outbound email to external recipients. Use when you need to initiate a support conversation via email. The ticket is automatically created with 'Closed' status and assigned to the sending agent to avoid unnecessary SLA timers." }, { "slug": "FRESHDESK_CREATE_TICKET_TIME_ENTRY", "name": "Create Ticket Time Entry", "description": "Tool to create a time entry for a specific ticket in Freshdesk. Use when you need to log time spent working on a ticket. Time entries track work duration and can be marked as billable or non-billable for billing and reporting purposes." }, { "slug": "FRESHDESK_CREATE_TRANSLATED_SOLUTION_CATEGORY", "name": "Create Translated Solution Category", "description": "Tool to create a translated version of an existing solution category. Use when you need to add multilingual support to your knowledge base by creating category translations in different languages." }, { "slug": "FRESHDESK_CURRENTLY_AUTHENTICATED_AGENT", "name": "Currently Authenticated Agent", "description": "Tool to retrieve profile information for the currently authenticated agent. Use when you need to get details about the agent whose API credentials are being used for authentication." }, { "slug": "FRESHDESK_DELETE_ADMIN_GROUP", "name": "Delete Admin Group", "description": "Tool to delete an admin group from Freshdesk. Use when you need to disband an admin group from your Freshdesk account. Note: Deleting a group only disbands it and does not delete the members of the group." }, { "slug": "FRESHDESK_DELETE_AGENT", "name": "Delete Agent", "description": "Tool to permanently delete an agent from Freshdesk. Use when you need to remove an agent from your Freshdesk account. Note: You cannot delete yourself. The API prevents self-deletion as a security measure. When an agent is deleted, they are downgraded to a contact in the Freshdesk system." }, { "slug": "FRESHDESK_DELETE_AUTOMATION_RULE", "name": "Delete Automation Rule", "description": "Permanently deletes an automation rule from Freshdesk by its type and rule ID. Use this action to remove workflow automation rules that are no longer needed. This action is idempotent - deleting an already-deleted rule will succeed without error. WARNING: This action is irreversible. The automation rule will be permanently deleted and cannot be recovered. Ensure you have the correct rule_id before proceeding." }, { "slug": "FRESHDESK_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to permanently disband a company from Freshdesk. Use when you need to delete a company from your Freshdesk account. Note: Deleting a company only disbands it and does not delete the customers inside it. Once disbanded, the company cannot be restored." }, { "slug": "FRESHDESK_DELETE_COMPANY_FIELD", "name": "Delete Company Field", "description": "Tool to permanently delete a custom company field from Freshdesk. Use when you need to remove a company field that is no longer needed. Note: This action is irreversible and will delete all data stored in that field across all companies. Only custom fields can be deleted, not default fields." }, { "slug": "FRESHDESK_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to soft delete a contact from Freshdesk. Use when you need to move a contact from All Contacts to Deleted Contacts view. Future communications from the contact will be directed to SPAM. The contact can be restored later - for permanent deletion, use hard_delete_contact instead." }, { "slug": "FRESHDESK_DELETE_CONTACT_FIELD", "name": "Delete Contact Field", "description": "Permanently delete a custom contact field from Freshdesk. Use this action when you need to remove a custom contact field that is no longer needed. Important notes: - This action is IRREVERSIBLE - all data stored in this field across all contacts will be permanently deleted - Only custom fields can be deleted - system/default fields (name, email, phone, etc.) cannot be deleted - If you attempt to delete a default field, the API will return an error" }, { "slug": "FRESHDESK_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to permanently delete a conversation from a ticket in Freshdesk. Use when you need to remove a specific conversation from a ticket. Note: Once deleted, the conversation cannot be restored." }, { "slug": "FRESHDESK_DELETE_DISCUSSION_CATEGORY", "name": "Delete Discussion Category", "description": "Permanently deletes a forum discussion category from Freshdesk. Use this action to remove an entire discussion category. This is a destructive operation and cannot be undone. Make sure you have the correct category_id before executing. Prerequisites: - The category_id must correspond to an existing discussion category - Use FRESHDESK_LIST_DISCUSSIONS to find available category IDs Common error scenarios: - 404: Category not found (invalid category_id or already deleted) - 401: Authentication failed (invalid API key) - 403: Insufficient permissions" }, { "slug": "FRESHDESK_DELETE_DISCUSSION_COMMENT", "name": "Delete Discussion Comment", "description": "Tool to permanently delete a comment from a discussion in Freshdesk. Use when you need to remove a specific comment from a discussion thread. Note: Once deleted, the comment cannot be restored." }, { "slug": "FRESHDESK_DELETE_DISCUSSION_FORUM", "name": "Delete Discussion Forum", "description": "Tool to permanently delete a discussion forum in Freshdesk. Use when you need to remove a specific forum. Note: Once deleted, the forum cannot be restored." }, { "slug": "FRESHDESK_DELETE_DISCUSSIONS_FORUMS_FOLLOW", "name": "Unmonitor Forum", "description": "Tool to unfollow/unmonitor a discussion forum in Freshdesk. Use when you need to stop monitoring a specific forum. The operation removes the following status for the specified user from the forum. This is an idempotent operation - calling it multiple times or on an already-unfollowed forum will succeed without error. Note: Following forums is typically done through the Freshdesk web UI by end users. This action allows programmatic unfollowing via API." }, { "slug": "FRESHDESK_DELETE_DISCUSSIONS_TOPICS_FOLLOW", "name": "Unmonitor Topic", "description": "Tool to unfollow/unmonitor a discussion topic in Freshdesk. Use when you need to stop monitoring a specific topic. The operation removes the following status for the specified user from the topic." }, { "slug": "FRESHDESK_DELETE_DISCUSSION_TOPIC", "name": "Delete Discussion Topic", "description": "Tool to permanently delete a discussion topic in Freshdesk. Use when you need to remove a specific topic from forums. Note: Once deleted, the topic cannot be restored." }, { "slug": "FRESHDESK_DELETE_EMAIL_MAILBOXES", "name": "Delete Email Mailbox", "description": "Tool to permanently delete an email mailbox from Freshdesk. Use when you need to remove an email mailbox configuration. Note: This action is irreversible. Once deleted, emails sent to the mailbox's address will not generate tickets. Requires admin-level permissions to access the email/mailboxes endpoint." }, { "slug": "FRESHDESK_DELETE_GROUP", "name": "Delete Group", "description": "Tool to permanently disband a group from Freshdesk. Use when you need to delete a group from your Freshdesk account. Note: Deleting a group only disbands it and does not delete the members of the group. Once disbanded, the group cannot be restored." }, { "slug": "FRESHDESK_DELETE_MULTIPLE_TICKETS", "name": "Delete Multiple Tickets", "description": "Asynchronously deletes multiple tickets in bulk. Returns a job_id to track deletion progress. Deleted tickets are moved to Trash and can be restored within 30 days." }, { "slug": "FRESHDESK_DELETE_SECTION", "name": "Delete Section", "description": "Tool to permanently delete a section from a ticket field in Freshdesk. Use when you need to remove a section that is no longer needed. Note: The section must be empty before deletion. This action is irreversible." }, { "slug": "FRESHDESK_DELETE_SKILL", "name": "Delete Skill", "description": "Tool to permanently delete a skill from Freshdesk. Use when you need to remove a skill from your Freshdesk account. This operation is permanent and cannot be undone." }, { "slug": "FRESHDESK_DELETE_SOLUTION_ARTICLE", "name": "Delete Solution Article", "description": "Tool to permanently delete a solution article and its translated versions in Freshdesk. Use when you need to remove a solution article that is no longer needed. Note: This operation is irreversible and cannot be undone." }, { "slug": "FRESHDESK_DELETE_SOLUTION_CATEGORY", "name": "Delete Solution Category", "description": "Permanently delete a solution category from Freshdesk's knowledge base. Use this tool when you need to remove a solution category that is no longer needed. This operation is irreversible and will also delete all translated versions of the category. Note: Categories containing folders may need to have their folders removed first." }, { "slug": "FRESHDESK_DELETE_SOLUTION_FOLDER", "name": "Delete Solution Folder", "description": "Tool to permanently delete a solution folder and its translated versions in Freshdesk. Use when you need to remove a solution folder that is no longer needed. Note: This operation is irreversible and cannot be undone." }, { "slug": "FRESHDESK_DELETE_TICKET", "name": "Delete Ticket", "description": "Tool to permanently delete a ticket from Freshdesk. Use when you need to remove a ticket from your Freshdesk account. Note: Once deleted, the ticket cannot be restored." }, { "slug": "FRESHDESK_DELETE_TICKET_FIELD", "name": "Delete Ticket Field", "description": "Permanently delete a custom ticket field from Freshdesk. Use this tool when you need to remove a custom ticket field that is no longer needed. This action is irreversible and will delete all data stored in that field across all tickets. Important: Only custom fields (those with 'cf_' prefix) can be deleted. Default system fields like 'subject', 'status', 'priority', etc. cannot be deleted and will return an error." }, { "slug": "FRESHDESK_DELETE_TICKET_FORM", "name": "Delete Ticket Form", "description": "Tool to permanently delete a ticket form from Freshdesk. Use when you need to remove a ticket form that is no longer needed. Note: This action is irreversible and once deleted, the ticket form cannot be restored through standard API operations." }, { "slug": "FRESHDESK_DELETE_TICKET_FORMS", "name": "Delete Ticket Form Field", "description": "Tool to permanently delete a specific field from a ticket form in Freshdesk. Use when you need to remove a custom field that is no longer needed from a ticket form. Note: This action is irreversible and only custom fields can be deleted, not default fields which are interlinked with system functionalities." }, { "slug": "FRESHDESK_DELETE_TICKET_SUMMARY", "name": "Delete Ticket Summary", "description": "Tool to delete the AI-generated summary of a ticket in Freshdesk. Use when you need to remove a ticket's summary. Note: Once deleted, the summary cannot be restored." }, { "slug": "FRESHDESK_DELETE_TICKET_USER_ACCESS", "name": "Delete Ticket User Access", "description": "Tool to remove all agent access from a specific ticket in Freshdesk. Use when you need to revoke all agent permissions from a ticket. This removes all user accesses that were previously granted via the Add Ticket User Access endpoint." }, { "slug": "FRESHDESK_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to permanently delete a time entry from Freshdesk. Use when you need to remove a specific time entry. Note: Once deleted, the time entry cannot be restored." }, { "slug": "FRESHDESK_EXPORT_CONTACTS", "name": "Export Contacts", "description": "Tool to initiate an asynchronous export of contacts from Freshdesk to CSV file. Use when you need to export contact data for backup, sync with external databases, or data analysis. The API returns an export job ID which can be used to retrieve the download URL once processing completes." }, { "slug": "FRESHDESK_GET_ACCOUNT", "name": "Get Account", "description": "Tool to view Freshdesk account information. Use when you need to retrieve comprehensive account details including organization information, agent counts, timezone, data center location, plan tier, address, and primary contact information." }, { "slug": "FRESHDESK_GET_AGENT", "name": "Get Agent", "description": "Tool to retrieve detailed information about a specific agent by ID. Use when you need to view a particular agent's profile, contact information, availability status, and role assignments." }, { "slug": "FRESHDESK_GET_AGENT_AVAILABILITY", "name": "Get Agent Availability", "description": "Tool to retrieve availability information for a specific agent. Use when you need to check an agent's availability across different channels, their assignment limits, and current workload." }, { "slug": "FRESHDESK_GET_AGENTS", "name": "Search Agents Autocomplete", "description": "Tool to search for agents using autocomplete functionality in Freshdesk. Use when you need to quickly find agents by name or email keyword for autocomplete suggestions." }, { "slug": "FRESHDESK_GET_BUSINESS_HOURS", "name": "Get Business Hours", "description": "Retrieves all business hours configurations from Freshdesk. Use this tool to get a complete list of all business hour configurations including working hours schedules, time zones, and whether each configuration is set as the default for the account. No input parameters are required. Returns an array of all business hour configurations with their schedules for each day of the week." }, { "slug": "FRESHDESK_GET_CANNED_RESPONSE_FOLDERS", "name": "Get Canned Response Folders", "description": "Tool to retrieve all canned response folders from Freshdesk. Use when you need to list available folders for organizing canned responses. Note: Empty folders (folders without canned responses) are not listed in the API response." }, { "slug": "FRESHDESK_GET_COMPANIES", "name": "Get Companies", "description": "Tool to retrieve all companies from a Freshdesk account with pagination support. Use when you need to list companies representing customer organizations." }, { "slug": "FRESHDESK_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve detailed information about a specific company by ID. Use when you need to view a particular company's details, domains, and custom fields." }, { "slug": "FRESHDESK_GET_COMPANY_FIELDS", "name": "Get Company Fields", "description": "Tool to retrieve all company fields configured in Freshdesk. Use when you need to get the complete list of company field definitions including default fields (name, description, domains, etc.) and custom fields with their metadata." }, { "slug": "FRESHDESK_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve detailed information about a specific contact by ID. Use when you need to view a particular contact's profile, contact information, and custom fields." }, { "slug": "FRESHDESK_GET_CONTACT_FIELDS", "name": "Get Contact Fields", "description": "Tool to retrieve all contact fields configured in Freshdesk. Use when you need to get the complete list of contact field definitions including default fields (name, email, phone, etc.) and custom fields with their metadata." }, { "slug": "FRESHDESK_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve all contacts from a Freshdesk account. Use when you need to list contacts, optionally filtered by email, phone, mobile, company, state, or modification date. Results are paginated; iterate through pages using `page` and `per_page` (max 100) to retrieve the full dataset." }, { "slug": "FRESHDESK_GET_DISCUSSION_CATEGORY", "name": "Get Discussion Category", "description": "Tool to view details of a specific forum category in Freshdesk. Use when you need to retrieve information about a discussion category including its name, description, and timestamps." }, { "slug": "FRESHDESK_GET_DISCUSSION_TOPIC", "name": "View Discussion Topic", "description": "Tool to retrieve detailed information about a specific discussion topic by ID. Use when you need to view a topic's details, status, and metadata." }, { "slug": "FRESHDESK_GET_EMAIL_MAILBOX", "name": "Get Email Mailbox", "description": "Tool to retrieve detailed information about a specific email mailbox by ID. Use when you need to view configuration details, status, and settings of a particular email mailbox." }, { "slug": "FRESHDESK_GET_FOLDER_RESPONSES", "name": "Get Folder Responses", "description": "Tool to retrieve all canned responses within a specific folder in Freshdesk. Use when you need to list all response templates stored in a particular folder." }, { "slug": "FRESHDESK_GET_IMPORTED_CONTACTS", "name": "Get Imported Contacts", "description": "Tool to retrieve details of all contact import operations in Freshdesk. Use when you need to view import history, check import status, or get information about failed imports." }, { "slug": "FRESHDESK_GET_JOB", "name": "Get Job", "description": "Tool to view the status of a bulk job operation. Use when you need to check the status of bulk ticket updates or bulk ticket deletions." }, { "slug": "FRESHDESK_GET_SCENARIO_AUTOMATIONS_JSON", "name": "List All Scenario Automations", "description": "Tool to list all scenario-based automations in Freshdesk. Use when you need to retrieve the complete list of scenario automations with their configurations." }, { "slug": "FRESHDESK_GET_SEARCH", "name": "Filter Tickets", "description": "Tool to search and filter tickets in Freshdesk using flexible query syntax. Use when you need to find tickets based on status, priority, tags, custom fields, dates, or other ticket attributes with complex filtering logic." }, { "slug": "FRESHDESK_GET_TICKETS", "name": "Get Tickets", "description": "Retrieves a list of tickets from Freshdesk. Tickets are returned under `response_data` in the response object." }, { "slug": "FRESHDESK_GET_TICKET_TIME_ENTRIES", "name": "Get Ticket Time Entries", "description": "Tool to retrieve all time entries for a specific ticket in Freshdesk. Use when you need to view time logs associated with a particular ticket." }, { "slug": "FRESHDESK_GET_TICKET_USER_ACCESS", "name": "Get Ticket User Access", "description": "Tool to retrieve agent access information for a specific ticket in Freshdesk. Use when you need to check which agents have permission to view or interact with a ticket. Returns a list of agent IDs that have access to the specified ticket." }, { "slug": "FRESHDESK_GET_TRANSLATED_SOLUTION_CATEGORY", "name": "Get Translated Solution Category", "description": "Tool to view a translated solution category in Freshdesk. Use when you need to retrieve a solution category in a specific language other than the default language." }, { "slug": "FRESHDESK_HARD_DELETE_CONTACT", "name": "Hard Delete Contact", "description": "Tool to permanently delete a contact from Freshdesk. Use when you need to completely remove a contact's profile, tickets, calls, forum topics, ratings, and notes (useful for GDPR compliance). By default, the contact must be soft-deleted first unless force=true is used. This deletion is irreversible." }, { "slug": "FRESHDESK_IMPORT_CONTACT", "name": "Import Contact", "description": "Tool to import contacts in bulk from a CSV file to Freshdesk. Use when you need to create multiple contacts at once from a CSV file with field mappings." }, { "slug": "FRESHDESK_LIST_ADMIN_GROUPS", "name": "List Admin Groups", "description": "Tool to list all admin groups in Freshdesk. Use when you need to retrieve all groups configured in the account with their members, escalation settings, and configuration details." }, { "slug": "FRESHDESK_LIST_ALL_AGENTS_IN_A_GROUP", "name": "List All Agents in a Group", "description": "Tool to retrieve all agents associated with a specific group in Freshdesk. Use when you need to get the list of agents assigned to a particular group." }, { "slug": "FRESHDESK_LIST_ALL_SECTIONS_FOR_TICKET_FIELD", "name": "List All Sections for a Ticket Field", "description": "Tool to retrieve all dynamic sections for a specific ticket field in Freshdesk. Use when you need to view all sections associated with a dropdown field that controls dynamic field visibility." }, { "slug": "FRESHDESK_LIST_ALL_SKILLS", "name": "List All Skills", "description": "Tool to retrieve all skills configured in Freshdesk account. Use when you need to get the complete list of skills available for ticket routing and agent assignment." }, { "slug": "FRESHDESK_LIST_ALL_TICKET_CONVERSATIONS", "name": "List All Ticket Conversations", "description": "Tool to retrieve all conversations of a specific ticket in Freshdesk. Use when you need to view all messages, notes, and replies associated with a ticket." }, { "slug": "FRESHDESK_LIST_AUTOMATION_RULES", "name": "List Automation Rules", "description": "Tool to list all automation rules for a specific automation type in Freshdesk. Use when you need to retrieve all automation rules for ticket creation, time-based triggers, or ticket updates." }, { "slug": "FRESHDESK_LIST_DISCUSSIONS", "name": "List All Forum Categories", "description": "Tool to retrieve all forum categories (discussions) from Freshdesk. Use when you need to list all discussion categories available in the account. Supports pagination via page parameter." }, { "slug": "FRESHDESK_LIST_DISCUSSIONS_TOPICS", "name": "List All Topics in a Forum", "description": "Tool to retrieve all discussion topics within a specified forum in Freshdesk. Use when you need to list topics in a specific forum. Supports pagination and filtering by user participation." }, { "slug": "FRESHDESK_LIST_EMAIL", "name": "List Email Mailboxes", "description": "Tool to retrieve all email mailbox configurations from Freshdesk account. Use when you need to view support email addresses, mailbox settings, or filter mailboxes by product, group, or status." }, { "slug": "FRESHDESK_LIST_EMAIL_CONFIGS", "name": "List All Email Configs", "description": "Retrieve all email configurations from a Freshdesk account. Returns a list of email configs including support email addresses, associated products, groups, and active status. Useful for viewing mailbox configurations or finding email config IDs needed for other operations." }, { "slug": "FRESHDESK_LIST_FORUMS_IN_CATEGORY", "name": "List Forums in Category", "description": "Tool to retrieve all forums within a specified category in Freshdesk. Use when you need to list all forums that exist within a specific forum category. Supports pagination via page and per_page parameters." }, { "slug": "FRESHDESK_LIST_MONITORED_TOPICS", "name": "List Monitored Topics", "description": "Tool to retrieve all discussion topics that are monitored/followed by a specific user in Freshdesk. Use when you need to list topics a user is following." }, { "slug": "FRESHDESK_LIST_PARTICIPATED_TOPICS", "name": "List Participated Topics", "description": "Tool to retrieve discussion topics that a user has participated in by creating or commenting. Use when you need to list topics where a specific user has been active. Only admins can fetch topics for other users; without user_id, returns authenticated user's topics." }, { "slug": "FRESHDESK_LIST_PRODUCTS", "name": "List All Products", "description": "Tool to retrieve all products configured in Freshdesk account. Use when you need to get the complete list of products available for support and ticket categorization." }, { "slug": "FRESHDESK_LIST_ROLES", "name": "List All Roles", "description": "Tool to retrieve all roles available in the Freshdesk system with their permissions and details. Use when you need to get the complete list of roles for agents and collaborators." }, { "slug": "FRESHDESK_LIST_SATISFACTION_RATINGS", "name": "List Satisfaction Ratings", "description": "Tool to retrieve all customer satisfaction survey ratings from Freshdesk. Use when you need to view satisfaction ratings, optionally filtered by creation date. By default, only returns results from the previous month unless created_since parameter is specified." }, { "slug": "FRESHDESK_LIST_SLA_POLICIES", "name": "List All SLA Policies", "description": "Tool to retrieve all SLA (Service Level Agreement) policies in Freshdesk. Use when you need to get the complete list of SLA policies with their configurations, targets, and applicability conditions." }, { "slug": "FRESHDESK_LIST_SOLUTION_ARTICLES", "name": "List Solution Articles", "description": "Tool to retrieve all solution articles within a specified folder in Freshdesk. Use when you need to list all articles that exist within a specific solution folder." }, { "slug": "FRESHDESK_LIST_SOLUTION_CATEGORIES", "name": "List Solution Categories", "description": "Tool to retrieve all solution categories in Freshdesk. Use when you need to list all available solution categories in the knowledge base." }, { "slug": "FRESHDESK_LIST_SOLUTION_FOLDERS", "name": "List Solution Folders", "description": "Tool to retrieve all folders within a specified solution category in Freshdesk. Use when you need to list all folders that exist within a specific solution category." }, { "slug": "FRESHDESK_LIST_SOLUTIONS_CATEGORY_FOLDERS_TRANSLATED", "name": "List Translated Category Folders", "description": "Tool to retrieve all translated solution folders in a category. Use when you need to list all folders in a specific language for a given solution category." }, { "slug": "FRESHDESK_LIST_SOLUTION_SUBFOLDERS", "name": "List Solution Subfolders", "description": "Tool to list all subfolders within a specific solution folder in Freshdesk. Use when you need to retrieve the child folders of a parent folder in the knowledge base hierarchy." }, { "slug": "FRESHDESK_LIST_SPECIFIC_SECTION_DETAILS", "name": "List a Specific Section Details", "description": "Tool to retrieve details of a specific section within a ticket field in Freshdesk. Use when you need to view information about a particular dynamic section including its label, associated choices, and contained fields." }, { "slug": "FRESHDESK_LIST_SURVEYS", "name": "List All Surveys", "description": "Tool to retrieve all surveys from a Freshdesk account. Use when you need to view the list of surveys, optionally filtered by state (active or inactive). Note that only one survey can be active at any given time." }, { "slug": "FRESHDESK_LIST_TICKET_FIELDS", "name": "List All Ticket Fields", "description": "Tool to list all ticket fields configured in Freshdesk. Use when you need to retrieve metadata about all ticket field definitions including both default and custom fields." }, { "slug": "FRESHDESK_LIST_TICKET_FORMS", "name": "List Ticket Forms", "description": "Tool to retrieve all ticket forms from Freshdesk. Use when you need to view the list of available ticket forms, optionally with pagination or portal associations." }, { "slug": "FRESHDESK_LIST_TICKET_SATISFACTION_RATINGS", "name": "List Ticket Satisfaction Ratings", "description": "Tool to list all satisfaction ratings of a ticket. Use when you need to retrieve customer feedback and survey responses for a specific ticket." }, { "slug": "FRESHDESK_LIST_TICKETS_WATCHERS", "name": "List Ticket Watchers", "description": "Tool to list all watchers subscribed to a specific Freshdesk ticket. Use when you need to see who is following a ticket and receiving notifications for updates." }, { "slug": "FRESHDESK_LIST_TIME_ENTRIES", "name": "List Time Entries", "description": "Tool to retrieve all time entries from Freshdesk with optional filtering by company, agent, execution time range, and billable status. Use when you need to view time logs across tickets with support for pagination." }, { "slug": "FRESHDESK_LIST_TOPIC_COMMENTS2", "name": "List Topic Comments (Paginated)", "description": "Tool to list all comments on a specific discussion topic with pagination support. Use when you need to retrieve comments from a topic with control over page size and pagination." }, { "slug": "FRESHDESK_LIST_TRANSLATED_SOLUTION_ARTICLES", "name": "List Translated Solution Articles", "description": "Tool to view all translated solution articles in a folder for a specific language. Use when you need to retrieve all articles from a folder in a particular language translation." }, { "slug": "FRESHDESK_LIST_TRANSLATED_SUBFOLDERS", "name": "List Translated Subfolders", "description": "Tool to list all translated subfolders within a parent folder in Freshdesk. Use when you need to retrieve subfolders in a specific language for a given folder." }, { "slug": "FRESHDESK_PATCH_ADMIN_GROUPS_AGENTS", "name": "Update Group Agents", "description": "Tool to add or remove agents in a Freshdesk group. Use when you need to modify the list of agents assigned to a specific group by providing an array of agent IDs." }, { "slug": "FRESHDESK_REMOVE_WATCHER", "name": "Remove Watcher from Ticket", "description": "Tool to remove the authenticated user as a watcher from a Freshdesk ticket. Use when you need to stop receiving email notifications for ticket updates like replies or status changes. The API automatically uses the authenticated user's credentials and does not require additional parameters." }, { "slug": "FRESHDESK_REPLY_TO_FORWARD_TICKET", "name": "Reply to Forward Ticket", "description": "Tool to reply to or forward a ticket to external email addresses. Use when you need to send a ticket reply to specific email recipients outside the normal ticket flow." }, { "slug": "FRESHDESK_REPLY_TO_TICKET", "name": "Reply to Ticket", "description": "Tool to create a public reply to an existing support ticket in Freshdesk. Use when an agent needs to respond to a ticket. The reply is sent to the ticket requester and any CC'd recipients. Supports both plain text and HTML content, file attachments, and email distribution control." }, { "slug": "FRESHDESK_SEARCH_AGENTS", "name": "Search Agents", "description": "Tool to search and filter agents in Freshdesk. Use when you need to find agents by email, phone, mobile, or state (fulltime/occasional)." }, { "slug": "FRESHDESK_SEARCH_COMPANIES", "name": "Search Companies", "description": "Tool to search and filter companies in Freshdesk using query strings with custom fields. Use when you need to find companies based on searchable fields like created_at, updated_at, or custom company fields. Note: Standard fields like 'name' are NOT searchable and will cause validation errors." }, { "slug": "FRESHDESK_SEARCH_COMPANY", "name": "Search Companies Autocomplete", "description": "Tool to search for companies using autocomplete functionality in Freshdesk. Use when you need to quickly find companies by name or partial name keyword for autocomplete suggestions." }, { "slug": "FRESHDESK_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Tool to search and filter contacts in Freshdesk using query-based search. Use when you need to find contacts based on fields like email, phone, mobile, company_id, or other searchable contact attributes." }, { "slug": "FRESHDESK_SEARCH_CONTACTS_AUTOCOMPLETE", "name": "Search Contacts Autocomplete", "description": "Tool to search for contacts using autocomplete functionality in Freshdesk. Use when you need to quickly find contacts by name, email, or other contact attributes for autocomplete suggestions." }, { "slug": "FRESHDESK_SEARCH_SOLUTION_ARTICLES", "name": "Search Solution Articles", "description": "Tool to search solution articles in Freshdesk knowledge base by keyword. Use when you need to find articles by searching titles and content." }, { "slug": "FRESHDESK_TOGGLE_TIMER", "name": "Toggle Timer", "description": "Tool to toggle the timer on a time entry to start or stop time tracking. Use when you need to start tracking time on a stopped timer or stop a currently running timer." }, { "slug": "FRESHDESK_UPDATE_ADMIN_GROUP", "name": "Update Admin Group", "description": "Tool to update an existing admin-level support agent group in Freshdesk. Use when you need to modify group details such as name, description, assigned agents, or escalation settings at the admin level." }, { "slug": "FRESHDESK_UPDATE_ADMIN_TICKET_FIELD", "name": "Update Admin Ticket Field", "description": "Tool to update an existing ticket field configuration in Freshdesk. Use when you need to modify field properties such as labels, visibility settings, or requirement flags." }, { "slug": "FRESHDESK_UPDATE_ADMIN_TICKET_FIELD_SECTION", "name": "Update Admin Ticket Field Section", "description": "Tool to update a section within a ticket field in Freshdesk. Use when you need to modify section properties like label, associated choices, or contained fields." }, { "slug": "FRESHDESK_UPDATE_AGENT", "name": "Update Agent", "description": "Tool to update an existing agent's information in Freshdesk. Use when you need to modify agent details such as email, permissions, signature, skills, groups, roles, or focus mode." }, { "slug": "FRESHDESK_UPDATE_AGENT_AVAILABILITY", "name": "Update Agent Availability", "description": "Tool to update agent availability settings in Freshdesk. Use when you need to modify an agent's load settings by changing assignment limits for different channels." }, { "slug": "FRESHDESK_UPDATE_AUTOMATIONS", "name": "Update Automation Rule", "description": "Tool to update an existing automation rule in Freshdesk. Use when you need to modify automation rule properties like name, description, active status, conditions, or actions. Supports ticket creation rules (type 1), time-based triggers (type 3), and ticket update rules (type 4)." }, { "slug": "FRESHDESK_UPDATE_CANNED_RESPONSE", "name": "Update Canned Response", "description": "Tool to update an existing canned response in Freshdesk. Use when you need to modify the title, content, folder location, visibility, or group access of a canned response template." }, { "slug": "FRESHDESK_UPDATE_CANNED_RESPONSE_FOLDER", "name": "Update Canned Response Folder", "description": "Updates the name of an existing canned response folder in Freshdesk. Use this to rename folders that organize canned response templates." }, { "slug": "FRESHDESK_UPDATE_COMPANIES", "name": "Update Company", "description": "Tool to update an existing company's information in Freshdesk. Use when you need to modify company details, domains, or custom fields." }, { "slug": "FRESHDESK_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's information in Freshdesk. Use when you need to modify contact details such as name, email, phone, job title, or custom fields." }, { "slug": "FRESHDESK_UPDATE_CONTACT_FIELD", "name": "Update Contact Field", "description": "Tool to update a contact field's configuration in Freshdesk. Use when you need to modify field properties like labels, requirements, or visibility settings for agents and customers." }, { "slug": "FRESHDESK_UPDATE_CONTACT_MAKE_AGENT", "name": "Make Agent", "description": "Tool to convert a contact into an agent in Freshdesk. Use when you need to grant a contact access to the helpdesk as an agent with specific permissions and roles." }, { "slug": "FRESHDESK_UPDATE_CONVERSATIONS", "name": "Update Conversation", "description": "Tool to update the content of a conversation note in Freshdesk. Use when you need to modify existing public or private notes. Note: Only public and private notes can be edited, not incoming replies. The 'private' parameter cannot be modified." }, { "slug": "FRESHDESK_UPDATE_DISCUSSION_CATEGORY", "name": "Update Discussion Category", "description": "Tool to update an existing discussion category in Freshdesk forums. Use when you need to modify the name or description of a forum category." }, { "slug": "FRESHDESK_UPDATE_DISCUSSION_COMMENT", "name": "Update Discussion Comment", "description": "Tool to update an existing comment in a discussion forum. Use when you need to edit the content of a comment in Freshdesk discussions." }, { "slug": "FRESHDESK_UPDATE_DISCUSSION_FORUM", "name": "Update Discussion Forum", "description": "Tool to update an existing discussion forum in Freshdesk. Use when you need to modify forum details such as name, description, category, type, or visibility settings." }, { "slug": "FRESHDESK_UPDATE_DISCUSSION_TOPIC", "name": "Update Discussion Topic", "description": "Tool to update an existing discussion topic in Freshdesk. Use when you need to modify a topic's title, message, lock status, or other properties." }, { "slug": "FRESHDESK_UPDATE_EMAIL_SETTINGS", "name": "Update Email Settings", "description": "Tool to update mailbox settings for email handling in Freshdesk. Use when you need to configure email behavior such as personalized replies, ticket threading, auto-response detection, or agent conversation settings." }, { "slug": "FRESHDESK_UPDATE_NOTIFICATION_EMAIL_BCC", "name": "Update Automatic BCC Emails", "description": "Tool to update automatic BCC email addresses for all ticket communications in Freshdesk. Use when you need to configure which email addresses should automatically receive BCC copies of all outgoing emails." }, { "slug": "FRESHDESK_UPDATE_SLA_POLICIES", "name": "Update SLA Policy", "description": "Tool to update an existing SLA (Service Level Agreement) policy in Freshdesk. Use when you need to modify service level targets, policy settings, or applicability conditions for an SLA policy." }, { "slug": "FRESHDESK_UPDATE_SOLUTION_CATEGORY", "name": "Update Solution Category", "description": "Tool to update an existing solution category in Freshdesk. Use when you need to modify the name or description of a solution category." }, { "slug": "FRESHDESK_UPDATE_SOLUTION_FOLDER", "name": "Update Solution Folder", "description": "Tool to update an existing solution folder in Freshdesk knowledge base. Use when you need to modify folder properties such as name, description, visibility settings, or folder hierarchy." }, { "slug": "FRESHDESK_UPDATE_SOLUTIONS", "name": "Update Solution Article", "description": "Tool to update an existing solution article in Freshdesk. Use when you need to modify the title, description, status, tags, or SEO metadata of a solution article. All parameters are optional; only include fields you want to update." }, { "slug": "FRESHDESK_UPDATE_TICKET", "name": "Update Ticket", "description": "Tool to update an existing ticket in Freshdesk. Use when you need to modify ticket attributes like subject, priority, status, description, or custom fields." }, { "slug": "FRESHDESK_UPDATE_TICKET_BULK_WATCH", "name": "Bulk Add Watcher to Tickets", "description": "Tool to add the authenticated user as a watcher to multiple tickets in a single bulk operation. Use when you need to follow multiple tickets and receive email notifications for their updates. Returns lists of succeeded and failed ticket IDs." }, { "slug": "FRESHDESK_UPDATE_TICKET_FORMS", "name": "Update Ticket Form", "description": "Tool to update an existing ticket form in Freshdesk. Use when you need to modify ticket form properties like title, description, default status, or field configurations." }, { "slug": "FRESHDESK_UPDATE_TICKET_SUMMARY", "name": "Update Ticket Summary", "description": "Tool to update the AI-generated summary of a ticket in Freshdesk. Use when you need to modify or set the summary content for a ticket. The summary provides a concise overview of the ticket's content and history." }, { "slug": "FRESHDESK_UPDATE_TICKET_USER_ACCESS", "name": "Update Ticket User Access", "description": "Tool to update agent access to a specific ticket in Freshdesk by adding or removing agents. Use when you need to grant or revoke agent permission to view or interact with a ticket. Returns the list of agent IDs that have access after the update." }, { "slug": "FRESHDESK_UPDATE_TIME_ENTRY", "name": "Update Time Entry", "description": "Tool to update an existing time entry in Freshdesk. Use when you need to modify time entry details such as duration, notes, billable status, or agent assignment. Note: start_time cannot be updated if the timer is running, and timer_running cannot be set to its current value." }, { "slug": "FRESHDESK_VIEW_A_CANNED_RESPONSE", "name": "View a Canned Response", "description": "Tool to view details of a specific canned response in Freshdesk. Use when you need to retrieve information about a canned response including its title, content, folder location, and attachments." }, { "slug": "FRESHDESK_VIEW_AUTOMATIONS", "name": "View Automation Rule", "description": "Tool to view details of a specific automation rule in Freshdesk. Use when you need to retrieve comprehensive information about an automation rule including its triggers, conditions, and actions." }, { "slug": "FRESHDESK_VIEW_BUSINESS_HOUR", "name": "View a Business Hour", "description": "Tool to retrieve a specific business hour configuration from Freshdesk. Use when you need to view detailed information about business hours including working schedule, time zone, and holiday list." }, { "slug": "FRESHDESK_VIEW_COMPANY_FIELD", "name": "View a Company Field", "description": "Tool to retrieve details of a specific company field by ID. Use when you need to view configuration and metadata for a single company field including its type, position, and choices for dropdown fields." }, { "slug": "FRESHDESK_VIEW_CONTACT_FIELD", "name": "View a Contact Field", "description": "Tool to retrieve details of a specific contact field by ID. Use when you need to view configuration and metadata for a single contact field including its type, position, and customer/agent requirements." }, { "slug": "FRESHDESK_VIEW_EMAIL", "name": "View Email Mailbox Settings", "description": "Tool to retrieve mailbox settings for the Freshdesk account. Use when you need to view email configuration settings such as threading options, requester creation settings, and agent conversation permissions." }, { "slug": "FRESHDESK_VIEW_EMAIL_CONFIGS", "name": "View Email Config", "description": "Tool to view details of a specific email configuration in Freshdesk. Use when you need to retrieve information about an email config including its associated product, group, and email addresses." }, { "slug": "FRESHDESK_VIEW_GROUP", "name": "View Group", "description": "Tool to view details of a specific admin group in Freshdesk. Use when you need to retrieve information about a group including its members, escalation settings, and automatic assignment configuration." }, { "slug": "FRESHDESK_VIEW_NOTIFICATIONS", "name": "View Automatic BCC Emails", "description": "Tool to view automatic BCC email addresses configured in Freshdesk. Use when you need to retrieve the list of email addresses that are automatically added as BCC to outgoing emails from the helpdesk." }, { "slug": "FRESHDESK_VIEW_PRODUCTS", "name": "View Product", "description": "Tool to retrieve detailed information about a specific product by ID. Use when you need to view a particular product's details including name, description, primary email, and default status." }, { "slug": "FRESHDESK_VIEW_ROLES", "name": "View a Role", "description": "Tool to view detailed information about a specific role by ID. Use when you need to retrieve a particular role's name, description, default status, and agent type." }, { "slug": "FRESHDESK_VIEW_SETTINGS", "name": "View Helpdesk Settings", "description": "Tool to retrieve helpdesk settings from Freshdesk. Use when you need to view language configuration including primary language, supported languages, portal languages, and help widget languages." }, { "slug": "FRESHDESK_VIEW_SKILL", "name": "View a Skill", "description": "Tool to retrieve a specific skill from Freshdesk by ID. Use when you need to view detailed information about a particular skill including its name, rank, associated agents, and routing conditions." }, { "slug": "FRESHDESK_VIEW_SOLUTION_CATEGORY", "name": "View Solution Category", "description": "Tool to view a specific solution category by ID in Freshdesk. Use when you need to retrieve detailed information about a single solution category including its name, description, and visibility settings." }, { "slug": "FRESHDESK_VIEW_SOLUTION_FOLDER", "name": "View Solution Folder", "description": "Tool to view a specific solution folder by ID in Freshdesk. Use when you need to retrieve detailed information about a solution folder including its name, description, hierarchy, and visibility settings." }, { "slug": "FRESHDESK_VIEW_SOLUTIONS", "name": "View Solution Article", "description": "Tool to view a specific solution article by ID in Freshdesk. Use when you need to retrieve detailed information about a single article including its content, metadata, SEO data, and engagement metrics." }, { "slug": "FRESHDESK_VIEW_TICKET", "name": "View Ticket", "description": "Views an existing ticket in Freshdesk. Ticket details are returned nested under `response_data` in the tool response." }, { "slug": "FRESHDESK_VIEW_TICKET_FIELD", "name": "View a Ticket Field", "description": "Tool to retrieve a single ticket field configuration from Freshdesk. Use when you need to view detailed information about a specific ticket field including its type, position, visibility settings, and validation requirements." }, { "slug": "FRESHDESK_VIEW_TICKET_FORM_FIELD", "name": "View a Ticket Form's Field", "description": "Tool to retrieve a specific field from a ticket form in Freshdesk. Use when you need to view detailed configuration of a field including its type, position, visibility, and requirement settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "freshdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Freshdesk Account Subdomain", "type": "string", "description": "The first part of your Freshdesk web address — the 'acme' in acme.freshdesk.com. Copy it from your browser's address bar; don't include 'https://' or '.freshdesk.com'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your personal Freshdesk API key, a long code like 'gWxbVNXLvd8eGXjAlO'. Find it under your profile picture (top right) → Profile Settings → View API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mixpanel", "name": "Mixpanel", "logo": "https://logos.composio.dev/api/mixpanel", "description": "Mixpanel is a product analytics platform tracking user interactions and engagement, providing cohort analysis, funnels, and A/B testing to improve user experiences", "category": "analytics", "authSchemes": [ "BASIC" ], "toolCount": 50, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MIXPANEL_ADD_UNIQUE_TO_PROFILE_LIST_PROPERTY", "name": "Add Unique Values to Profile List Property", "description": "Tool to add unique values to list properties on user profiles in Mixpanel using the $union operation. Use when you need to add items to list-type properties without creating duplicates. Unlike $append, $union ensures values are unique in the list. If the property doesn't exist, it creates a new list with the provided values." }, { "slug": "MIXPANEL_AGGREGATED_EVENT_PROPERTY_VALUES", "name": "Get Aggregated Event Property Values", "description": "Get unique, total, or average data for a single event and property over days, weeks, or months. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_AGGREGATE_EVENT_COUNTS", "name": "Aggregate Event Counts (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_AGGREGATE_EVENTS instead. Tool to get unique, total, or average data for events over N days, weeks, or months. Use when analyzing event trends and patterns over time with different aggregation methods." }, { "slug": "MIXPANEL_AGGREGATE_EVENTS", "name": "Get Aggregate Events", "description": "Get aggregate event counts over time. Supports different types of aggregation: general, unique, average, sum." }, { "slug": "MIXPANEL_COHORTS_LIST", "name": "List Saved Cohorts", "description": "Tool to list all saved cohorts in a Mixpanel project. Use when you need to retrieve cohort metadata including name, id, count, description, creation date, and visibility. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_CREATE_ANNOTATION_TAG", "name": "Create Annotation Tag", "description": "Tool to create a new annotation tag in Mixpanel using the provided name. Use when you need to create tags for organizing and categorizing annotations. Requires a role of at least Analyst." }, { "slug": "MIXPANEL_CREATE_IDENTITY", "name": "Create Identity", "description": "Tool to create an identity mapping in Mixpanel by linking an anonymous ID with an identified user ID. Use when you need to connect pre-login anonymous activity with post-login identified user activity. This operation is typically performed after user authentication to associate all previous anonymous events with the user's identified profile." }, { "slug": "MIXPANEL_CREATE_SERVICE_ACCOUNT", "name": "Create Service Account", "description": "Tool to create a new service account for your organization and optionally add it to projects. Use when you need to generate API credentials for programmatic access. The response includes a token (secret) that cannot be recovered after creation. Requires service account with admin or owner role." }, { "slug": "MIXPANEL_DELETE_GROUP", "name": "Delete Group", "description": "Tool to permanently delete a group profile from Mixpanel Group Analytics. Use when you need to completely remove a group profile and all of its properties. The deletion is permanent and cannot be undone. Note that group properties on historical events remain intact even after group deletion." }, { "slug": "MIXPANEL_DELETE_PROFILE", "name": "Delete Profile", "description": "Tool to permanently delete a user profile from Mixpanel, along with all of its properties. Use when you need to completely remove a profile. The deletion is permanent and cannot be undone. Note that this only deletes the profile, not the associated events. For duplicate profiles, use $ignore_alias: true to avoid deleting the original profile." }, { "slug": "MIXPANEL_DELETE_PROFILE_BATCH", "name": "Delete Multiple Profiles (Batch)", "description": "Tool to permanently delete multiple user profiles from Mixpanel in a single batch request. Use when you need to delete multiple profiles efficiently. The deletion is permanent and cannot be undone. This only deletes the profiles, not the associated events. For duplicate profiles, use $ignore_alias: true to avoid deleting the original profile." }, { "slug": "MIXPANEL_DELETE_PROFILE_PROPERTY", "name": "Delete Profile Property", "description": "Tool to permanently delete properties from a Mixpanel user profile using the $unset operation. Use when you need to remove specific properties and their values from a profile. Properties are permanently removed and cannot be recovered. Useful when cleaning up properties or approaching Mixpanel's limit of 2000 properties per profile." }, { "slug": "MIXPANEL_GET_ALL_PROJECTS", "name": "Get All Projects", "description": "Get all projects associated with the authenticated Mixpanel account. Returns project details including name, permissions, role, domain, and other configuration details. If a project appears inaccessible, verify the connection region matches the project's cluster before assuming a permissions issue." }, { "slug": "MIXPANEL_GET_ANNOTATION_TAGS_ALT1", "name": "Get Annotation Tags", "description": "Tool to get all annotation tags from a Mixpanel project. Use when you need to retrieve tags that have been added to annotations. Requires a role of at least Analyst." }, { "slug": "MIXPANEL_GROUP_BATCH_UPDATE", "name": "Batch Update Group Profiles", "description": "Tool to send a batch of group profile updates to Mixpanel. Use when you need to update multiple group profiles in a single request. Supports operations like $set, $set_once, $union, $remove, $unset, and $delete. Note: $add is NOT supported for group profiles." }, { "slug": "MIXPANEL_GROUP_DELETE_PROPERTY", "name": "Delete Group Properties", "description": "Tool to delete specific properties from a Mixpanel group profile. Use when you need to permanently remove unwanted properties from a group (company, organization, team, etc.). The operation uses the $unset operation to permanently remove the specified properties." }, { "slug": "MIXPANEL_GROUP_SET_PROPERTY", "name": "Set Group Properties (Batch) (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_GROUP_BATCH_UPDATE instead. Tool to send batch group profile updates to Mixpanel. Use when you need to update properties for one or more groups (companies, organizations, teams, etc.). Supports multiple operations: $set (update/add), $set_once (set if not exists), $unset (delete), $remove (remove from list), $union (add to list uniquely)." }, { "slug": "MIXPANEL_IDENTITY_CREATE_ALIAS", "name": "Create Identity Alias", "description": "Tool to create an alias mapping between two distinct IDs in Mixpanel. Use when you need to link a new identifier with an existing one. This is only available for projects using the Original ID Merge system and Legacy ID Management System; it has no effect in the Simplified ID Merge system. Typically called once during user signup to connect anonymous pre-signup events with post-signup activity. Each alias can only map to one distinct_id." }, { "slug": "MIXPANEL_JQL_QUERY", "name": "Execute JQL Query", "description": "Execute a custom JQL (JavaScript Query Language) query against Mixpanel's Query API. Key Constraints: - 60 queries/hour, max 5 concurrent queries. - 2-minute execution timeout. - 5 GB data processing limit, 2 GB output limit. - No remote network requests (XMLHttpRequest) are allowed inside the JQL script." }, { "slug": "MIXPANEL_LIST_COHORTS", "name": "List Saved Cohorts (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_MIXPANEL_COHORTS_LIST instead. Get list of all cohorts in a Mixpanel project. Returns cohort details including name, id, count, description, creation date, and visibility. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_LIST_FUNNELS", "name": "List Saved Funnels", "description": "Get the names and funnel_ids of your funnels. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_LIST_SAVED_COHORTS", "name": "List Saved Cohorts (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_MIXPANEL_COHORTS_LIST instead. Tool to list all saved cohorts in a Mixpanel project. Use when you need to retrieve cohort metadata including name, id, count, description, creation date, and visibility for every cohort in the project." }, { "slug": "MIXPANEL_LIST_SERVICE_ACCOUNTS", "name": "List Service Accounts", "description": "Tool to list all service accounts for an organization. Use when you need to retrieve service accounts, check when they were last used, or see when they expire. Requires service account with admin or owner role." }, { "slug": "MIXPANEL_PROFILE_APPEND_TO_LIST_PROPERTY", "name": "Append to Profile List Property", "description": "Tool to append values to list properties on user profiles in Mixpanel. Use when you need to add items to list-type properties. Unlike $union, $append allows duplicate values. If the property doesn't exist, it creates a new list with the value as the first element." }, { "slug": "MIXPANEL_PROFILE_BATCH_UPDATE", "name": "Update Multiple Profiles (Batch)", "description": "Tool to update multiple user profiles in Mixpanel in a single batch request. Use when you need to update properties for multiple users efficiently. Supports operations: $set (update/add), $set_once (set if not exists), $add (increment), $union (add to list uniquely), $append (append to list), $remove (remove from list), $unset (delete property), $delete (delete profile). Maximum 50 updates per request. Always check the response status and failed_records for individual update failures." }, { "slug": "MIXPANEL_PROFILE_DELETE_PROPERTY", "name": "Delete Profile Property (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_DELETE_PROFILE_PROPERTY instead. Tool to permanently delete properties from a user profile in Mixpanel. Use when you need to remove specific properties and their values from a profile. This operation uses $unset and permanently removes properties that cannot be recovered. Useful when cleaning up properties or approaching Mixpanel's limit of 2000 properties per profile." }, { "slug": "MIXPANEL_PROFILE_EVENT_ACTIVITY", "name": "Get Profile Event Activity", "description": "Get event activity feed for specified users from Mixpanel Query API. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_PROFILE_NUMERICAL_ADD", "name": "Increment Profile Numerical Property", "description": "Tool to increment or decrement numerical properties on user profiles in Mixpanel. Use when you need to add values to existing numerical properties (e.g., login counts, points, credits). Properties are incremented by the specified amount. If a property doesn't exist, the value is added to zero. Use negative values to decrement properties." }, { "slug": "MIXPANEL_PROFILE_REMOVE_FROM_LIST_PROPERTY", "name": "Remove from Profile List Property", "description": "Tool to remove values from list properties on user profiles in Mixpanel. Use when you need to remove specific items from list-type properties. If the value doesn't exist in the list, no updates are made. If the property doesn't exist or is not list-valued, the operation is ignored." }, { "slug": "MIXPANEL_PROFILE_SET", "name": "Set Profile Properties", "description": "Tool to set user profile properties in Mixpanel using the $set operation. Use when you need to create or update properties on a user profile. Properties specified will be created if they don't exist, or overwritten if they do. If the profile doesn't exist, it will be created with these properties." }, { "slug": "MIXPANEL_QUERY_FREQUENCY_REPORT", "name": "Query Frequency Report", "description": "Get data about how frequently users are performing events. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries. Example response with unit=\"day\" and addiction_unit=\"hour\": { \"2012-01-01\": [305, 107, 60, 41, ...], # Users who did event in 1+ hours, 2+ hours, etc. \"2012-01-02\": [495, 204, 117, 77, ...], \"2012-01-03\": [671, 324, 176, 122, ...] }" }, { "slug": "MIXPANEL_QUERY_FUNNEL", "name": "Query Saved Funnel", "description": "Get data for a funnel. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_QUERY_INSIGHT", "name": "Query Saved Insight", "description": "Get data from your Insights reports. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_QUERY_MONTHS_TOP_EVENT_NAMES", "name": "Get Top Event Names (Last 31 Days) (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_TOP_EVENTS instead. Get a list of the most common event names over the last 31 days. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries. Use when you need to discover what events are being tracked most frequently in your project." }, { "slug": "MIXPANEL_QUERY_NUMERIC_AVERAGE", "name": "Query Numeric Average Report", "description": "Averages an expression for events per unit time. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries. Example response: { \"status\": \"ok\", \"results\": { \"2024-01-01\": 25.5, \"2024-01-02\": 32.75, \"2024-01-03\": 28.25 } }" }, { "slug": "MIXPANEL_QUERY_NUMERIC_SUM", "name": "Query Numeric Sum Report", "description": "Sums an expression for events per unit time. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries. Example response: { \"status\": \"ok\", \"computed_at\": \"2024-01-20T12:00:00\", \"results\": { \"2024-01-01\": 150.5, \"2024-01-02\": 245.75, \"2024-01-03\": 198.25 } }" }, { "slug": "MIXPANEL_QUERY_PROFILES", "name": "Query Profiles", "description": "Query user or group profile data from Mixpanel. Returns list of profiles that match specified parameters. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_QUERY_RETENTION_REPORT", "name": "Query Retention Report", "description": "Query cohort analysis showing user retention patterns over time. Tracks how users who performed an initial event (born_event) subsequently perform a target event (event). Use the 'unit' parameter to control cohort interval granularity ('day', 'week', 'month'); defaults to 'day'." }, { "slug": "MIXPANEL_QUERY_SEGMENTATION", "name": "Query Segmentation Report", "description": "Get data for an event, segmented and filtered by properties with daily/time-series breakdown. Use the 'unit' parameter to control time bucketing ('minute', 'hour', 'day', 'month'). The Query API has a rate limit of 60 queries per hour and 5 concurrent queries, shared across related tools (e.g., MIXPANEL_JQL_QUERY, MIXPANEL_TOP_EVENT_PROPERTY_VALUES); bursts of concurrent calls return 429." }, { "slug": "MIXPANEL_QUERY_TOP_EVENTS", "name": "Query Top Events", "description": "Get the top events for today, with their counts and the normalized percent change from yesterday. Use when you need to analyze today's event performance compared to yesterday." }, { "slug": "MIXPANEL_REMOVE_FROM_GROUP_LIST_PROPERTY", "name": "Remove from Group List Property", "description": "Tool to remove values from list properties on group profiles in Mixpanel. Use when you need to remove specific items from list-type properties on groups (companies, organizations, etc.). If the value doesn't exist in the list, no updates are made. If the property doesn't exist or is not list-valued, the operation is ignored." }, { "slug": "MIXPANEL_REMOVE_FROM_LIST_PROPERTY", "name": "Remove from Profile List Property", "description": "Tool to remove values from list properties on user profiles in Mixpanel using the $remove operation. Use when you need to remove specific items from list-type properties. If the value doesn't exist in the list, no action is taken. The profile will be created if it doesn't exist." }, { "slug": "MIXPANEL_SEGMENTATION_NUMERIC_QUERY", "name": "Numeric Bucket Segmentation Query", "description": "Tool to get event data numerically bucketed by property values. Use when you need to analyze distributions of numeric properties like revenue, session duration, or counts with automatic bucketing." }, { "slug": "MIXPANEL_SET_GROUP_PROPERTY_ONCE", "name": "Set Group Property Once", "description": "Tool to set properties on a Mixpanel group profile only if they don't already exist. Use when you need to set initial properties for a group without overwriting existing values. Ideal for setting default values or tracking when a group was first created. Properties that already exist will not be modified." }, { "slug": "MIXPANEL_SET_PROFILE_PROPERTY_ONCE", "name": "Set Profile Property Once", "description": "Tool to set user profile properties in Mixpanel using the $set_once operation. Use when you need to set properties that should only be recorded on their initial value. Properties specified will be created only if they don't already exist on the profile. If a property already has a value, it will not be overwritten. Ideal for tracking first-time values like signup source, initial referrer, or first login date." }, { "slug": "MIXPANEL_TODAYS_TOP_EVENTS", "name": "Get Today's Top Events (Deprecated)", "description": "DEPRECATED: Use MIXPANEL_QUERY_TOP_EVENTS instead. Get the top events for today, with their counts and the normalized percent change from yesterday. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_TOP_EVENT_PROPERTIES", "name": "Get Top Event Properties", "description": "Get the top property names for an event. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_TOP_EVENT_PROPERTY_VALUES", "name": "Get Top Event Property Values", "description": "Tool to get the top values for a property ordered by frequency. Use when you need to understand the most common values for a specific property on an event. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries. This limit is shared across all Query API tools (e.g., MIXPANEL_QUERY_SEGMENTATION); on a 429 response, apply exponential backoff." }, { "slug": "MIXPANEL_TOP_EVENTS", "name": "Get Top Events", "description": "Get a list of the most common events over the last 31 days. The Query API has a rate limit of 60 queries per hour and a maximum of 5 concurrent queries." }, { "slug": "MIXPANEL_UPDATE_GROUP_LIST_PROPERTY", "name": "Union to Group List Property", "description": "Tool to add unique values to list properties on group profiles in Mixpanel. Use when you need to add items to list-type group properties without creating duplicates. The $union operation ensures that values are only added if they don't already exist in the list." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "mixpanel_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Service Account Username", "type": "string", "description": "Your service account username, e.g. 'my-user.12345.mp-service-account'. Create one under Organization Settings → Service Accounts to get a username and secret.", "required": true, "default": null }, { "name": "password", "displayName": "Service Account Secret", "type": "string", "description": "The secret shown once when you create the service account (Organization Settings → Service Accounts). Copy it then — it won't be shown again. Not your Project Token.", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Where your Mixpanel data lives. If your browser address bar shows eu.mixpanel.com enter 'eu'; if in.mixpanel.com enter 'in'. Most accounts can leave this empty (US).", "required": false, "default": null } ] } } } ] }, { "slug": "coda", "name": "Coda", "logo": "https://logos.composio.dev/api/coda", "description": "Collaborative workspace platform that transforms documents into powerful tools for team productivity and project management", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 110, "triggerCount": 4, "version": "20260703_00", "tools": [ { "slug": "CODA_ADD_A_CATEGORY_FOR_PACK", "name": "Add a category for pack", "description": "Add a publishing category for a given pack." }, { "slug": "CODA_ADD_A_MAKER_FOR_PACK", "name": "Add a maker for pack", "description": "Add a maker to a Pack. Makers are users who are displayed as contributors on the Pack's public listing page. You must be an owner or admin of the Pack to add makers. This is typically used to credit collaborators and team members who contributed to the Pack's development." }, { "slug": "CODA_ADD_A_PERMISSION_FOR_PACK", "name": "Add a permission for pack", "description": "Create or modify permissions for a given Pack. This action allows you to grant access to a Pack for users or workspaces. If a permission already exists for the specified principal, it will be updated with the new access level. The API returns a permission ID which is the same for updates to existing permissions. Note: You must have admin access to the Pack to manage its permissions." }, { "slug": "CODA_ADD_CUSTOM_DOMAIN", "name": "Add custom domain", "description": "Add a custom domain to a published doc. This action allows you to map a custom domain (like 'docs.yourcompany.com') to a published Coda doc. Before using this action: 1. The doc must be published (use CODA_PUBLISH_DOC action first) 2. Your Coda account must have a paid plan (Pro, Team, or Enterprise) 3. You'll need to configure DNS settings at your domain registrar after adding the domain The domain setup typically takes 5-10 minutes to initialize after DNS is configured. You can check the status using CODA_LIST_CUSTOM_DOC_DOMAINS action. Note: Custom domains are NOT available on Coda's Free tier." }, { "slug": "CODA_ADD_PERMISSION", "name": "Add permission", "description": "Adds a new permission to the doc." }, { "slug": "CODA_BEGIN_CONTENT_EXPORT", "name": "Begin content export", "description": "Initiate an asynchronous export of page content in HTML or Markdown format. This action starts a content export job and returns immediately with a request ID and status URL. The export is processed asynchronously. Use the returned 'href' URL with the 'content_export_status' action to poll for completion and retrieve the exported content." }, { "slug": "CODA_CONTENT_EXPORT_STATUS", "name": "Content export status", "description": "Check the status of a page content export operation. Use this to poll the export status and retrieve the download link when the export completes." }, { "slug": "CODA_COPY_DOC", "name": "Copy Document", "description": "Creates a copy of an existing Coda document. This action allows you to duplicate a document while optionally specifying a new title and location for the copied document." }, { "slug": "CODA_CREATE_A_NEW_PACK_RELEASE", "name": "Create a new pack release", "description": "Creates a new Pack release based on an existing Pack version." }, { "slug": "CODA_CREATE_A_PAGE", "name": "Create a page", "description": "Create a new page in a doc. Note that creating a page requires you to be a Doc Maker in the applicable workspace." }, { "slug": "CODA_CREATE_DOC", "name": "Create doc", "description": "Creates a new Coda doc, optionally copying an existing doc. Note that creating a doc requires you to be a Doc Maker in the applicable workspace (or be auto-promoted to one)." }, { "slug": "CODA_CREATE_FOLDER", "name": "Create Folder", "description": "Creates a new folder in a Coda workspace. Use this action to organize documents by creating folders within a workspace. Folders help structure content and make it easier to navigate and manage documents." }, { "slug": "CODA_CREATE_PACK", "name": "Create Pack", "description": "Creates a new Pack in Coda. A Pack is a container for custom functionality that extends Coda's capabilities. This endpoint registers a new Pack and returns its ID. After creation, you'll need to separately upload the Pack's source code and assets. Prerequisites: - You must have appropriate permissions in the target workspace - The workspace must allow Pack creation Next steps after creation: 1. Upload Pack source code using the upload pack source code endpoint 2. Upload Pack assets (logos, images) using the upload pack asset endpoint 3. Register a Pack version to make it available for use" }, { "slug": "CODA_CREATE_PACK_INVITATION", "name": "Create Pack Invitation", "description": "Create an invitation for a user to access a Pack. This action sends an invitation to the specified email address, granting them access to the Pack at the specified access level. The invitee will receive an email notification with instructions to accept the invitation. Prerequisites: - You must have appropriate permissions (admin or owner) on the Pack to create invitations - The email address must be valid Note: The invitation must be accepted by the recipient to grant them actual access to the Pack." }, { "slug": "CODA_DELETE_A_CATEGORY_FOR_PACK", "name": "Delete a category for pack", "description": "Delete a publishing category for a given pack." }, { "slug": "CODA_DELETE_A_MAKER_FOR_PACK", "name": "Delete a maker for pack", "description": "Removes a maker from a Pack's maker list. The maker will no longer be displayed as a contributor on the Pack's public page. This action requires admin access to the Pack. The operation returns successfully even if the maker was not previously listed for the Pack." }, { "slug": "CODA_DELETE_A_PAGE", "name": "Delete a page", "description": "Deletes the specified page." }, { "slug": "CODA_DELETE_A_PERMISSION_FOR_PACK", "name": "Delete a permission for pack", "description": "Delete user, workspace, or global permissions for a given Pack." }, { "slug": "CODA_DELETE_DOC", "name": "Delete doc", "description": "Permanently deletes a Coda doc. This action permanently removes the specified doc and all its contents including pages, tables, formulas, and data. The deletion is processed asynchronously and returns immediately with a 202 Accepted status. The doc will be fully deleted within a few seconds. **Warning**: This is a destructive operation that cannot be undone. Ensure you have the correct doc ID before executing this action. **Permissions**: You must be the owner of the doc or have appropriate deletion permissions. **Error Responses**: - 404: The doc does not exist or you don't have access to it - 401: Invalid or expired API token - 403: You don't have permission to delete this doc" }, { "slug": "CODA_DELETE_FOLDER", "name": "Delete Folder", "description": "Tool to delete a folder in Coda. Use when you need to permanently remove a folder. This operation deletes the specified folder." }, { "slug": "CODA_DELETE_MULTIPLE_ROWS", "name": "Delete multiple rows", "description": "Deletes multiple rows from a Coda table or view. This action queues the specified rows for deletion and returns immediately with a 202 status. The actual deletion is processed asynchronously and typically completes within several seconds. Use the returned requestId with the getMutationStatus endpoint to verify completion if needed." }, { "slug": "CODA_DELETE_PACK", "name": "Delete pack", "description": "Delete a given Pack." }, { "slug": "CODA_DELETE_PACK_LISTING_DRAFT", "name": "Delete Pack listing draft", "description": "Delete the listing draft for a Pack, discarding any unsaved changes. Tool to delete the listing draft for a Pack, discarding any unsaved changes. Use when you need to discard a draft listing for a Pack without publishing it. This removes the draft version and reverts to the last published listing (if any). **Important**: This action permanently discards all unpublished changes to the Pack listing. To publish changes instead of discarding them, use the appropriate publish action." }, { "slug": "CODA_DELETE_PAGE_CONTENT", "name": "Delete Page Content", "description": "Tool to delete content from a Coda page. Use when you need to remove specific elements or all content from a page. This endpoint returns a 202 status code indicating the deletion has been queued and will be processed within seconds." }, { "slug": "CODA_DELETE_PERMISSION", "name": "Delete permission", "description": "Deletes an existing permission from a Coda document. This action permanently removes access for a specific user, group, or domain that was previously granted to the document. To use this action, you must first obtain the permissionId from the LIST_PERMISSIONS action. The deletion is immediate and cannot be undone through the API. Common use cases: - Revoking access when a user no longer needs to view/edit the document - Managing document security by removing obsolete permissions - Cleaning up permissions after organizational changes Note: This action requires appropriate permissions to manage document access." }, { "slug": "CODA_DELETE_ROW", "name": "Delete row", "description": "Deletes the specified row from the table or view. This endpoint will always return a 202, so long as the row exists and is accessible (and the update is structurally valid). Row deletions are generally processed within several seconds. When deleting using a name as opposed to an ID, an arbitrary row will be removed." }, { "slug": "CODA_DELETES_A_CUSTOM_DOMAIN", "name": "Deletes a custom domain", "description": "Deletes a custom domain from a published doc." }, { "slug": "CODA_FETCH_GROUPED_LOGS_BY_PACK_ORG_ROOT_INGESTION_ID", "name": "Fetch grouped logs by pack org root ingestion id", "description": "Retrieve the grouped logs of a Pack ingestion for debugging purposes. This action is used with Coda Brain (Enterprise feature) to retrieve and debug logs from Pack ingestion processes. It provides detailed log information grouped by invocation, including timestamps, log levels, messages, and execution status. Note: This endpoint requires valid organizationId and rootIngestionId values which are only available for Enterprise accounts with Coda Brain enabled. These IDs track data ingestion from external sources via Packs." }, { "slug": "CODA_FETCH_INGESTION_EXECUTIONS_FOR_PACK", "name": "Fetch ingestion executions for pack", "description": "Retrieve the ingestion execution ids of a root ingestion for debugging purpose. This action is typically used with Coda Brain (Enterprise feature) to track and debug data ingestion processes from external sources via Packs. Note: This endpoint requires valid organizationId and rootIngestionId values which are only available for Enterprise accounts with Coda Brain enabled." }, { "slug": "CODA_GET_ACL_SETTINGS", "name": "Get acl settings", "description": "Returns settings associated with ACLs for this Coda doc." }, { "slug": "CODA_GET_A_COLUMN", "name": "Get a column", "description": "Returns detailed information about a specific column in a Coda table. Retrieves column metadata including: - Column ID, name, type, and href - Format details (type, isArray, label, action, displayType, etc.) - Whether it's a display column or calculated column - Formula (for calculated columns) - Default value - Parent table and page information" }, { "slug": "CODA_GET_A_CONTROL", "name": "Get a control", "description": "Returns info on a control." }, { "slug": "CODA_GET_A_FORMULA", "name": "Get a formula", "description": "Returns info on a formula." }, { "slug": "CODA_GET_ANALYTICS_LAST_UPDATED_DAY", "name": "Get analytics last updated day", "description": "Returns days based on Pacific Standard Time when analytics were last updated." }, { "slug": "CODA_GET_A_PAGE", "name": "Get a page", "description": "Returns details about a page." }, { "slug": "CODA_GET_A_ROW", "name": "Get a row", "description": "Retrieves detailed information about a specific row in a Coda table, including all cell values, metadata (creation/update timestamps), and parent table information. Use this action when you need to read data from a specific row in a Coda document." }, { "slug": "CODA_GET_A_SINGLE_PACK", "name": "Get Pack details by ID", "description": "Retrieves detailed information about a specific Coda Pack by its ID. Returns pack metadata including name, description, workspace, logo URL, categories, rate limits, and configuration settings. Only accessible for Packs that the authenticated user has created or has been granted access to." }, { "slug": "CODA_GET_A_TABLE", "name": "Get a table", "description": "Returns details about a specific table or view." }, { "slug": "CODA_GET_DETAILED_LISTING_INFORMATION_FOR_A_PACK", "name": "Get detailed listing information for a pack", "description": "Get comprehensive public listing information for a Coda Pack. Returns detailed metadata about a Pack including its description, logo, categories, makers, pricing, version information, and user access permissions. This endpoint provides the same information displayed on the Pack's public listing page in the Coda Pack gallery. Optionally accepts workspace/document context to check installation privileges and release channel to retrieve specific versions (LIVE or LATEST)." }, { "slug": "CODA_GET_DOC_ANALYTICS_SUMMARY", "name": "Get doc analytics summary", "description": "Returns aggregated analytics summary data across documents, including session counts, installs, copies, reads, and conversions. Can be filtered by publication status, date range, and workspace." }, { "slug": "CODA_GET_DOC_CATEGORIES", "name": "Get doc categories", "description": "Retrieves the list of all available doc categories in Coda. These categories can be used when publishing docs to help users discover content." }, { "slug": "CODA_GET_FOLDER", "name": "Get folder", "description": "Tool to get metadata about a Coda folder. Use when you need to retrieve information about a specific folder including its name, description, icon, workspace, and editing permissions." }, { "slug": "CODA_GET_INFO_ABOUT_A_DOC", "name": "Get info about a doc", "description": "Retrieves comprehensive metadata for a specific Coda document. This action returns detailed information about a document including its name, owner, creation/update timestamps, workspace and folder location, size metrics (page count, row count, table count), icon, publication status, and source document reference if the doc was copied from another. This is useful for understanding document properties, discovering document structure, and tracking document relationships." }, { "slug": "CODA_GET_MUTATION_STATUS", "name": "Get mutation status", "description": "Checks whether an asynchronous mutation operation has been applied to a Coda document. When you perform mutations like inserting/updating rows, deleting rows, or pushing buttons, the Coda API returns a 202 status with a requestId. These operations are queued and processed asynchronously (usually within a few seconds). Use this tool to verify that your mutation has been successfully applied before proceeding with dependent operations. Important notes: - Mutation status information is only available for about 24 hours after completion - This should be used shortly after the mutation request was made - Returns completed=true when the operation has finished, completed=false if still pending" }, { "slug": "CODA_GET_PACK_ANALYTICS_SUMMARY", "name": "Get pack analytics summary", "description": "Returns summarized analytics data for Packs the user can edit. This endpoint provides aggregate statistics including: - Total Pack invocations across all accessible Packs - Total document installations - Total workspace installations All query parameters are optional. If no filters are specified, returns analytics for all Packs the authenticated user can edit." }, { "slug": "CODA_GETS_CUSTOM_DOC_DOMAINS_PROVIDERS", "name": "Gets custom doc domains providers", "description": "Identifies the domain registrar/provider for a given domain name by performing a DNS lookup. Returns the provider name (e.g., GoDaddy, Namecheap) or 'Other' if unidentified. Useful for determining where to configure DNS settings when setting up custom domains for published Coda docs." }, { "slug": "CODA_GET_SHARING_METADATA", "name": "Get sharing metadata", "description": "Returns metadata associated with sharing for this Coda doc." }, { "slug": "CODA_GETS_THE_JSON_SCHEMA_FOR_PACK_CONFIGURATION", "name": "Gets the json schema for pack configuration", "description": "Retrieves the JSON Schema that defines the configuration options available for a specific Coda Pack. This schema describes how the Pack can be customized, including connection settings, OAuth scopes, endpoint configurations, sharing permissions, and which Pack components (formulas, actions, sync tables) are available for use." }, { "slug": "CODA_GET_THE_DIFFERENCE_BETWEEN_TWO_PACK_VERSIONS", "name": "Get the difference between two pack versions", "description": "Gets information about the difference between the specified previous version and next version of a Pack. This endpoint compares two semantic versions of a Pack and returns the differences. Both versions must exist for the specified pack." }, { "slug": "CODA_GET_THE_NEXT_VALID_VERSION_FOR_A_PACK", "name": "Get the next valid version for a pack", "description": "Get the next valid version number for a Pack based on the proposed metadata. This endpoint validates the proposed Pack metadata and determines what the next semantic version number should be. It returns validation findings if there are any issues with the metadata. This is typically used before registering and uploading a new Pack version. Note: This endpoint only works with Packs that the authenticated user owns or has appropriate permissions to manage." }, { "slug": "CODA_GET_THE_SOURCE_CODE_FOR_A_PACK_VERSION", "name": "Get the source code for a pack version", "description": "Retrieves temporary download URLs for the source code files of a specific Pack version. Returns pre-signed, time-limited URLs to download the original TypeScript/JavaScript source code. Useful for reviewing, auditing, backing up, or comparing Pack code between versions. Prerequisites: - Pack must exist and be accessible to the authenticated user - Version must have been created with source code uploaded - Use CODA_LIST_PACKS to find Pack IDs and CODA_LIST_THE_VERSIONS_FOR_A_PACK for versions Important: URLs expire within hours, so download files promptly. Returns empty array if no source code was uploaded for the version. This action only returns URLs, not file contents." }, { "slug": "CODA_GET_USER_INFO", "name": "Get user info", "description": "Returns basic info about the current user." }, { "slug": "CODA_LIST_AVAILABLE_DOCS", "name": "List available docs", "description": "Returns a list of Coda docs accessible by the user, and which they have opened at least once. These are returned in the same order as on the docs page: reverse chronological by the latest event relevant to the user (last viewed, edited, or shared)." }, { "slug": "CODA_LIST_CATEGORIES_FOR_PACK", "name": "List categories for pack", "description": "List all publishing categories associated with a specific Coda Pack. Categories help users discover packs by organizing them into topics like 'Project Management', 'Marketing', 'Engineering', etc." }, { "slug": "CODA_LIST_COLUMNS", "name": "List columns", "description": "Returns a list of columns in a table." }, { "slug": "CODA_LIST_CONTROLS", "name": "List controls", "description": "Returns a list of controls in a Coda doc." }, { "slug": "CODA_LIST_CUSTOM_DOC_DOMAINS", "name": "List custom doc domains", "description": "List all custom domains configured for a published Coda doc. Custom domains allow you to publish your doc at your own domain (e.g., www.example.com) instead of the default Coda.io URL. Returns an empty list if no custom domains are configured." }, { "slug": "CODA_LIST_DOC_ANALYTICS", "name": "List doc analytics", "description": "Returns analytics data for accessible documents. Provides detailed metrics including views, sessions (desktop/mobile/other), copies, likes, and AI credits usage. Supports filtering by workspace, date range, publication status, and search query. Results can be aggregated daily or cumulatively and sorted by various document properties or metric values." }, { "slug": "CODA_LIST_FEATURED_DOCS_FOR_A_PACK", "name": "List featured docs for a pack", "description": "Returns a list of featured docs for a Pack. Featured docs are example or template documents that showcase how to use the Pack. Each entry includes the document reference (id, type, href, browserLink), whether it's pinned at the top, and its published URL if available." }, { "slug": "CODA_LIST_FOLDERS", "name": "List Folders", "description": "Tool to list folders accessible by the user. Returns a list of folders with their metadata including ID, name, workspace, and icon. Use when you need to discover available folders or find a specific folder by workspace." }, { "slug": "CODA_LIST_FORMULAS", "name": "List formulas", "description": "Returns a list of named formulas in a Coda doc." }, { "slug": "CODA_LIST_MAKERS_FOR_PACK", "name": "List makers for pack", "description": "List makers for a given pack." }, { "slug": "CODA_LIST_PACK_ANALYTICS", "name": "List pack analytics", "description": "Returns analytics data for Packs the user can edit. This endpoint retrieves analytics information for Packs where the authenticated user has edit permissions. Analytics include installation counts, invocation metrics, and active usage statistics. All parameters are optional - if no filters are specified, returns analytics for all accessible Packs. Common use cases: - Get analytics for all accessible packs (no parameters) - Filter by workspace using workspaceId - Filter by date range using sinceDate/untilDate - Sort results using orderBy and direction - Paginate through results using limit and pageToken" }, { "slug": "CODA_LIST_PACK_FORMULA_ANALYTICS", "name": "List pack formula analytics", "description": "Returns analytics data for Pack formulas." }, { "slug": "CODA_LIST_PACKS", "name": "List packs", "description": "Get the list of accessible Packs." }, { "slug": "CODA_LIST_PAGE_ANALYTICS", "name": "List page analytics", "description": "Returns page-level analytics data for pages within a document. Shows metrics like views and sessions per page over time. **Important:** This endpoint requires the document to be in an Enterprise workspace. If the document is not in an Enterprise workspace, the API will return a 401 Unauthorized error with the message: \"Page level analytics are only available for Enterprise and higher plans\"." }, { "slug": "CODA_LIST_PAGE_CONTENT", "name": "List Page Content", "description": "Tool to list page content. Returns the content of the specified page. Use when you need to retrieve the content elements from a Coda page." }, { "slug": "CODA_LIST_PAGES", "name": "List pages", "description": "Returns a list of pages in a Coda doc." }, { "slug": "CODA_LIST_PERMISSIONS", "name": "List permissions", "description": "Returns a list of permissions for this Coda doc." }, { "slug": "CODA_LIST_PERMISSIONS_FOR_A_PACK", "name": "List permissions for a pack", "description": "Get user, workspace, and/or global permissions for a given Pack." }, { "slug": "CODA_LIST_TABLE_ROWS", "name": "List table rows", "description": "Retrieves rows from a specific table within a Coda document. This endpoint allows you to fetch data from your Coda tables programmatically, enabling integration with other systems or data analysis tools. Use this when you need to access the content of a table in your Coda document, such as for reporting, data synchronization, or building custom views of your data outside of Coda. The endpoint supports pagination for large tables and allows you to control the number of rows returned per request. It's important to note that this endpoint only retrieves data and doesn't modify the table contents." }, { "slug": "CODA_LIST_TABLES", "name": "List tables", "description": "Returns a list of tables in a Coda doc." }, { "slug": "CODA_LIST_THE_PACK_LISTINGS_ACCESSIBLE_TO_A_USER", "name": "List the pack listings accessible to a user", "description": "Get listings of public Packs and Packs created by you." }, { "slug": "CODA_LIST_THE_RELEASES_FOR_A_PACK", "name": "List the releases for a pack", "description": "Get the list of releases of a Pack." }, { "slug": "CODA_LIST_THE_VERSIONS_FOR_A_PACK", "name": "List the versions for a pack", "description": "Get the list of versions of a Pack." }, { "slug": "CODA_LIST_USER_PACK_INVITATIONS", "name": "List User Pack Invitations", "description": "Tool to get pending Pack invitations for the authenticated user. Use when you need to retrieve invitations to collaborate on Packs." }, { "slug": "CODA_LIST_WORKSPACE_ROLES", "name": "List workspace roles", "description": "Returns a list of the counts of users over time by role for the workspace. Note: This endpoint requires a workspace that belongs to an organization (Enterprise feature). Workspaces not belonging to an organization will return a 400 error with message \"Workspace does not belong to an organization.\"" }, { "slug": "CODA_LIST_WORKSPACE_USERS", "name": "List workspace users", "description": "Returns a list of members in the given workspace. This list will be ordered with the requesting user first and then ordered by role. Note: This endpoint requires a workspace that belongs to an organization (Enterprise feature). Workspaces not belonging to an organization will return a 400 error with message \"Workspace does not belong to an organization.\"" }, { "slug": "CODA_PACK_ASSET_UPLOAD_COMPLETE", "name": "Pack asset upload complete", "description": "Notify Coda that the Pack asset upload to S3 is complete. This action is the final step in the Pack asset upload workflow: 1. Call upload_a_pack_asset to get a signed S3 URL and packAssetUploadedPathName 2. Upload your image file (logo/cover/example) directly to the S3 URL using HTTP PUT 3. Call this action to notify Coda that the upload is complete and register the asset The packAssetId must be extracted from the packAssetUploadedPathName returned by upload_a_pack_asset. The packAssetType must match the type specified when initiating the upload. Supported asset types: - logo: Pack logo image (max 5MB, square recommended) - cover: Pack cover image (max 5MB, 1200x630px recommended) - exampleImage: Pack example/screenshot images (max 75MB) After completion, the asset will be processed and available for display in the Pack gallery and listing." }, { "slug": "CODA_PACK_SOURCE_CODE_UPLOAD_COMPLETE", "name": "Pack source code upload complete", "description": "Notify Coda that the Pack source code upload to S3 is complete. This action is the final step in the Pack source code upload workflow: 1. Call upload_pack_source_code to get a signed S3 URL 2. Upload your source code file to the S3 URL 3. Call this action to notify Coda that the upload is complete The filename and codeHash parameters must match the values used when initiating the upload with upload_pack_source_code." }, { "slug": "CODA_PACK_VERSION_UPLOAD_COMPLETE", "name": "Pack version upload complete", "description": "Mark a Pack version upload as complete to finalize the Pack version creation. This action is part of a multi-step workflow for creating Pack versions: 1. First, register a new Pack version using the 'Register pack version' action, which returns a signed upload URL 2. Upload your Pack version bundle (JavaScript/TypeScript code) to the signed URL 3. Call this action to notify Coda that the upload is complete and trigger Pack version validation and creation After completion, the Pack version will be validated and available for testing or release. Note: This action will fail with a 400 error if no upload was found for the specified Pack and version." }, { "slug": "CODA_PATCH_THE_SYSTEM_CONNECTION_CREDENTIALS_OF_THE_PACK", "name": "Patch the system connection credentials of the pack", "description": "Patch the system connection credentials of the Pack." }, { "slug": "CODA_PUBLISH_DOC", "name": "Publish doc", "description": "Update publish settings for a doc." }, { "slug": "CODA_PUSH_A_BUTTON", "name": "Push a button", "description": "Pushes a button on a row in a table. Authorization note: This action is available to API tokens that are authorized to write to the table. However, the underlying button can perform any action on the document, including writing to other tables and performing Pack actions." }, { "slug": "CODA_REGISTER_PACK_VERSION", "name": "Register pack version", "description": "Registers a new Pack version and obtains a signed upload URL. This is the first step in the Pack version upload workflow. It registers a new version with Coda and returns a pre-signed S3 URL along with required headers for uploading the Pack bundle file. Workflow: 1. Call this action with packId, packVersion (semantic version), and bundleHash (SHA-256) 2. Use the returned upload_url and headers to upload your Pack bundle JSON via PUT request 3. After upload completes, call pack_version_upload_complete to finalize the registration 4. Optionally create a release to make the version available to users Prerequisites: - A Pack must exist (create one with CODA_CREATE_PACK if needed) - The version number must be greater than any existing version for this Pack - You must have calculated the SHA-256 hash of your Pack bundle file Note: The version must follow semantic versioning (e.g., 1.0.0, 1.2.3, 2.0.0)." }, { "slug": "CODA_RESOLVE_BROWSER_LINK", "name": "Resolve browser link", "description": "Given a browser link to a Coda object, attempts to find it and return metadata that can be used to get more info on it. Returns a 400 if the URL does not appear to be a Coda URL or a 404 if the resource cannot be located with the current credentials." }, { "slug": "CODA_RETRIEVE_THE_GROUPED_LOGS_OF_A_PACK", "name": "Retrieve the grouped logs of a pack", "description": "Retrieve grouped execution logs for a Pack in a specific Coda document. This endpoint returns Pack invocation logs grouped by execution, showing timestamps, status (success/failed), and detailed log entries for debugging. Logs are sorted by timestamp (newest first by default) and can be filtered by time range or search query. Use this to debug Pack executions, track errors, and monitor Pack performance in a document." }, { "slug": "CODA_RETRIEVE_THE_INFORMATION_FOR_A_SPECIFIC_LOG", "name": "Retrieve the information for a specific log", "description": "Retrieve detailed information for a specific log entry from a Pack ingestion. This action retrieves comprehensive log details for Coda Brain (Enterprise feature) ingestion debugging. It provides in-depth information about specific log entries including user context, action details, entity information, event metadata, and execution results. The action is useful for: - Investigating specific ingestion events or errors - Auditing user actions within Pack ingestion processes - Debugging failed or unexpected ingestion behaviors - Understanding the context of specific log entries Note: This endpoint requires valid organizationId, rootIngestionId, and logId values which are only available for Enterprise accounts with Coda Brain enabled. For non-existent or invalid IDs, the action returns a response with found=False." }, { "slug": "CODA_RETRIEVE_THE_LOGS_OF_A_INGESTION", "name": "Retrieve the logs of a ingestion", "description": "Retrieve the logs of a Ingestion for debugging purpose. This action is typically used with Coda Brain (Enterprise feature) to track and debug data ingestion processes from external sources via Packs. Note: This endpoint requires valid organizationId and rootIngestionId values which are only available for Enterprise accounts with Coda Brain enabled. For non-existent or invalid IDs, the action returns an empty result." }, { "slug": "CODA_RETRIEVE_THE_LOGS_OF_A_PACK", "name": "Retrieve the logs of a pack", "description": "Retrieve the execution logs of a Pack within a specific document for debugging purposes. Note: Logs are typically retained for approximately 2 weeks." }, { "slug": "CODA_RETRIEVE_THE_OAUTH_CONFIGURATION_OF_THE_PACK", "name": "Retrieve the oauth configuration of the pack", "description": "Retrieve the OAuth configuration of the Pack for display purpose. Secrets will be returned with masks." }, { "slug": "CODA_RETRIEVE_THE_SYSTEM_CONNECTION_METADATA_OF_THE_PACK", "name": "Retrieve the system connection metadata of the pack", "description": "Retrieve the system connection metadata of a Pack. This endpoint returns metadata about a Pack's system-level authentication configuration, where the Pack maker's credentials are used for all users. Not all packs use system authentication - many use per-user authentication instead. Common error cases: - 400: Pack exists but hasn't been uploaded with a version yet, or system authentication isn't configured - 404: Pack doesn't exist or doesn't have system connection authentication" }, { "slug": "CODA_SEARCH_PRINCIPALS", "name": "Search principals", "description": "Search for users and groups (principals) that a Coda document can be shared with. This action searches across the workspace for principals matching the query term. The search is case-insensitive and matches against user names, email addresses, and group names. Results are limited to 20 users and 20 groups maximum. Use this action when you need to find people or groups to share a document with, or when building permission management workflows. Note: If no query is provided or the query is empty/whitespace-only, no results will be returned." }, { "slug": "CODA_SET_THE_OAUTH_CONFIGURATIONS_OF_THE_PACK", "name": "Set the oauth configurations of the pack", "description": "Set OAuth2 client credentials (client ID, secret, redirect URI) for a Pack. Prerequisites: The Pack must have OAuth2 authentication defined in its source code using setUserAuthentication() with authorizationUrl and tokenUrl. You must obtain these credentials by registering your application with the OAuth provider (e.g., Google, GitHub, Salesforce). Note: This sets the *credentials* for an OAuth-enabled Pack, not the OAuth configuration itself (authorizationUrl, tokenUrl, scopes), which are defined in the Pack's source code. Returns a request ID for tracking the configuration status. Changes may take a few moments to propagate." }, { "slug": "CODA_SET_THE_SYSTEM_CONNECTION_CREDENTIALS_OF_THE_PACK", "name": "Set the system connection credentials of the pack", "description": "Set the system connection credentials of the Pack. This endpoint completely replaces the existing system connection credentials for a Pack. System connection credentials are used when a Pack is configured with system-level authentication, where the Pack maker's credentials are used for all users rather than per-user authentication. Prerequisites: - The Pack must have at least one version uploaded before credentials can be set - The Pack's source code must define system authentication (e.g., via setSystemAuthentication()) - You must be the owner or have appropriate permissions for the Pack Note: This is a destructive operation that replaces all existing credentials. Use PATCH (/packs/{packId}/systemConnection) to update specific credential fields instead." }, { "slug": "CODA_TRIGGER_AUTOMATION", "name": "Trigger automation", "description": "Triggers a webhook-invoked automation in a Coda doc. This action triggers an automation that has been configured with \"Webhook invoked\" as its trigger type. When triggered, the automation will execute its configured steps asynchronously. The response includes a requestId that can be used with the get_mutation_status action to check if the automation has completed. Important: The automation rule ID must be obtained manually from the Coda UI with Developer Mode enabled. There is currently no API endpoint to list automation rules programmatically." }, { "slug": "CODA_UNPUBLISH_DOC", "name": "Unpublish doc", "description": "Unpublishes a Coda document, removing it from public access. This action removes the document from the Coda Gallery and makes it private to the workspace. The operation succeeds even if the document is already unpublished (idempotent). Note that this is a destructive operation that affects document visibility." }, { "slug": "CODA_UPDATE_ACL_SETTINGS", "name": "Update acl settings", "description": "Update access control list (ACL) settings for a Coda document. This action allows you to control sharing and permission settings: - Whether editors can manage document permissions - Whether viewers can copy the document - Whether viewers can request editing access You can update one or multiple settings in a single request. Settings not specified in the request will retain their current values. Returns the complete set of ACL settings after the update." }, { "slug": "CODA_UPDATE_AN_EXISTING_PACK_RELEASE", "name": "Update an existing Pack release", "description": "Update the release notes of an existing Pack release. Use this to modify the description and changelog information displayed to users who have installed or are considering installing your Pack." }, { "slug": "CODA_UPDATE_A_PAGE", "name": "Update a page", "description": "Update properties for a page. Note that updating a page title or icon requires you to be a Doc Maker in the applicable workspace." }, { "slug": "CODA_UPDATE_DOC", "name": "Update doc", "description": "Updates metadata for a Coda document, including its title and icon. This action allows you to modify: - Document title/name - Document icon Note: Updating a doc title requires you to be a Doc Maker in the applicable workspace. The API returns an empty response on success - use CODA_GET_INFO_ABOUT_A_DOC to verify changes." }, { "slug": "CODA_UPDATE_FEATURED_DOCS_FOR_A_PACK", "name": "Update featured docs for a pack", "description": "Create or replace the featured docs for a Pack. Featured docs are example or template documents that showcase how to use the Pack. This action replaces the entire list of featured docs (it does not append). Requirements: - You must be the pack owner to update featured docs - Exactly one doc in the items list must have isPinned=true - All doc URLs must be published doc URLs (e.g., https://coda.io/@username/doc-name) - Regular browser links will cause a 400 error On success, returns an empty JSON object {}." }, { "slug": "CODA_UPDATE_FOLDER", "name": "Update Folder", "description": "Tool to update folder metadata in Coda. Use when you need to modify the name or description of an existing folder. Note that some folder types (like personal folders) cannot be edited." }, { "slug": "CODA_UPDATE_PACK", "name": "Update pack", "description": "Update an existing Pack for non-versioned fields." }, { "slug": "CODA_UPDATE_ROW", "name": "Update Row in Coda Table (Deprecated)", "description": "DEPRECATED: Use CODA_UPSERT_ROWS instead. Tool to update an existing row in a Coda table. Use when you need to modify specific cell values in a row. This endpoint returns a 202 status code indicating the update has been queued and will be processed within seconds." }, { "slug": "CODA_UPDATES_A_CUSTOM_DOMAIN", "name": "Updates a custom domain", "description": "Updates properties of a document's custom domain." }, { "slug": "CODA_UPDATES_USER_ROLE", "name": "Updates user role", "description": "Updates the workspace user role of a user that matches the parameters. Only succeeds if the requesting user has admin permissions in the workspace. **Requirements:** - The workspace must belong to an organization (Enterprise feature) - The requesting user must have Admin permissions in the workspace - The target user must already be a member of the workspace **Note:** This endpoint will return a 400 error with message \"Workspace does not belong to an organization\" if used with a non-Enterprise workspace." }, { "slug": "CODA_UPLOAD_A_PACK_ASSET", "name": "Upload a pack asset", "description": "Request a signed s3 URL to upload your Pack asset." }, { "slug": "CODA_UPLOAD_PACK_SOURCE_CODE", "name": "Upload pack source code", "description": "Request a signed s3 URL to upload your Pack source code." }, { "slug": "CODA_UPSERT_ROWS", "name": "Insert/Update Rows in Coda Table", "description": "This tool allows you to insert new rows into a Coda table or update existing ones based on specified key columns. This is particularly useful for synchronizing data or ensuring records are up-to-date without creating duplicates." } ], "triggers": [ { "slug": "CODA_DOCUMENT_DELETED", "name": "Coda Document Deleted Trigger", "description": "Triggers when a Coda document is deleted." }, { "slug": "CODA_NEW_CODA_DOCUMENT", "name": "New Coda Document Trigger", "description": "Triggers when a new Coda document is created." }, { "slug": "CODA_NEW_CODA_PAGE", "name": "New Coda Page Trigger", "description": "Triggers when a new page is added to a Coda document." }, { "slug": "CODA_SPECIFIC_CODA_PAGE_UPDATED", "name": "Specific Coda Page Updated Trigger", "description": "Triggers when a specific page within a Coda document is updated." } ], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Koda API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "acculynx", "name": "Acculynx", "logo": "https://logos.composio.dev/api/acculynx", "description": "AccuLynx is the leading, all-in-one roofing software designed to streamline every aspect of a roofing business.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ACCULYNX_ADD_JOB_APPOINTMENT", "name": "Add job appointment", "description": "This endpoint allows users to schedule the initial appointment for a specific job in the AccuLynx system. It is used to set up the first meeting or site visit for a construction or roofing project. The endpoint requires the job ID, start date and time, and end date and time for the appointment. This is crucial for initiating the project workflow and ensuring that all parties involved are aware of the scheduled time for the first interaction. The appointment details are set in the context of the company's timezone unless otherwise specified. Use this endpoint when a new job has been created and the first appointment needs to be scheduled with the client or at the job site." }, { "slug": "ACCULYNX_CREATE_A_CONTACT", "name": "Create a contact", "description": "Creates a new contact in the AccuLynx system with detailed information for use in roofing and construction project management. This endpoint allows for the addition of comprehensive contact details including personal information, company affiliation, communication preferences, and address information. It's particularly useful for adding new customers, leads, vendors, or any other type of contact relevant to construction projects. The endpoint provides flexibility in the amount of information that can be added, with only the contact type being required. Use this when you need to add a new contact to your AccuLynx database or update your system with new lead information. Note that while many fields are optional, providing as much information as possible will enhance the usefulness of the contact record for future project management and communication purposes." }, { "slug": "ACCULYNX_CREATE_A_JOB", "name": "Create a job", "description": "Creates a new job in the AccuLynx system with the provided details. This endpoint allows you to initialize a job with essential information such as the associated contact, location, job category, work type, priority, and trade types. It's particularly useful for setting up new projects or tasks within the AccuLynx platform for the roofing and construction industries. The endpoint requires at minimum a contact ID and location address, with several optional fields to further customize the job entry. Use this when you need to programmatically create new jobs in AccuLynx, such as when integrating with other systems or automating job creation processes." }, { "slug": "ACCULYNX_CREATE_A_LEAD", "name": "Create a lead", "description": "This endpoint creates a new lead in the AccuLynx system, specifically for residential roofing projects. It should be used when a new potential customer expresses interest in roofing services or when importing lead data from external sources. The endpoint captures essential contact information to initiate the lead management process. While it creates the lead, it does not assign priorities or sales representatives; these actions would need to be performed separately. The endpoint is designed for simplicity and quick lead entry, focusing on the most crucial identifying information." }, { "slug": "ACCULYNX_JOB_APPOINTMENT_SUMMARY", "name": "Job appointment summary", "description": "Retrieves a list of appointments from the calendar associated with a specific job in AccuLynx. This endpoint is used to fetch scheduled events, such as site visits, inspections, or project milestones, for a particular roofing or construction job. It provides valuable information for project management and scheduling purposes. The endpoint should be used when you need to view or manage the timeline of events for a specific job. It will not provide general calendar information or appointments unrelated to the specified job ID. The response likely includes details such as appointment dates, times, descriptions, and associated team members, though the exact structure is not specified in the given schema." }, { "slug": "ACCULYNX_LIST_OF_CALENDARS_FOR_THE_LOCATION", "name": "List of calendars for the location", "description": "Retrieves a list of calendars associated with the authenticated user or organization in AccuLynx. This endpoint provides access to the calendar data, which is crucial for scheduling and organizing tasks in the roofing and construction project management context. It should be used when you need to obtain an overview of all available calendars or to gather calendar IDs for use in other API operations. The endpoint returns basic information about each calendar, likely including identifiers, names, and possibly associated metadata. It does not modify any calendar data and is intended for read-only operations. Keep in mind that the response may be paginated for large datasets, and additional parameters might be available for filtering or sorting the results, although they are not specified in the current schema." }, { "slug": "ACCULYNX_LIST_OF_CONTACT_TYPES_RELATED_TO_THE_COMPANY", "name": "List of contact types related to the company", "description": "Retrieves a list of all available contact types in the AccuLynx system. This endpoint is used to fetch the predefined categories or classifications for contacts, such as residential, repair, property management, and other job categories. It's essential for organizing and filtering contact information within the AccuLynx platform. The endpoint should be used when setting up new contacts, updating existing ones, or when needing to populate dropdown menus or filter options in the user interface. It does not create, modify, or delete contact types; it only provides the current list of available options. The response will likely include unique identifiers and names for each contact type, allowing for easy integration with other parts of the AccuLynx API or external systems." }, { "slug": "ACCULYNX_UPDATE_COMPANY_REPRESENTATIVE", "name": "Update company representative", "description": "This endpoint allows you to add a company representative to a specific job within the AccuLynx system. It is used when you need to associate a representative with a particular project or task. The endpoint requires the job's unique identifier and the representative's ID to establish the connection. This operation is useful for assigning personnel to projects, tracking responsibilities, and maintaining accurate job records. It's important to note that this endpoint only adds the association and doesn't create new representative or job entries." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your acculynx API key for authentication. Obtain it from your acculynx settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ahrefs", "name": "Ahrefs", "logo": "https://logos.composio.dev/api/ahrefs", "description": "Ahrefs is an SEO and marketing platform offering site audits, keyword research, content analysis, and competitive insights to improve search rankings and drive organic traffic", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AHREFS_BACKLINKS_STATS_RETRIEVAL", "name": "Backlinks stats retrieval", "description": "Retrieves comprehensive backlink statistics for a specified website or URL using Ahrefs' Site Explorer tool. This endpoint provides crucial data for SEO analysis, including the total number of backlinks, referring domains, and potentially the Domain Rating (DR). It's essential for understanding a site's link profile, assessing its SEO performance, and conducting competitive analysis. The tool is particularly useful when users need detailed insights into a website's backlink structure or when comparing the backlink profiles of multiple domains. Note that the data returned is based on Ahrefs' extensive web crawl and may not include very recent backlinks." }, { "slug": "AHREFS_BATCH_URL_ANALYSIS", "name": "Batch Url Analysis", "description": "Performs a batch analysis on multiple URLs or domains using Ahrefs' powerful SEO metrics. This endpoint allows users to retrieve key SEO data for up to 100 targets simultaneously, streamlining the process of analyzing multiple websites or pages. It's particularly useful for comparing competitors, analyzing site sections, or processing large sets of URLs efficiently. The endpoint offers customization options for selecting specific metrics, filtering by country, and choosing the calculation mode for volume-based metrics. While it provides comprehensive data, users should be aware of the 100-target limit per request and ensure they have sufficient API quota for large-scale analyses." }, { "slug": "AHREFS_DOMAIN_RATING_FOR_SITE_EXPLORER", "name": "Domain rating for site explorer", "description": "Retrieves the Domain Rating (DR) for a specified domain. Domain Rating is an Ahrefs metric that measures the strength and authority of a website's backlink profile on a logarithmic scale from 0 to 100. This endpoint should be used when you need to quickly assess the overall SEO strength of a domain based on its backlink profile. It's particularly useful for competitive analysis, link building research, and evaluating potential partnership opportunities. The tool provides a single, easy-to-understand metric but does not offer detailed information about the backlinks themselves or other SEO factors. For more comprehensive backlink analysis, consider using other Ahrefs endpoints that provide more detailed backlink data." }, { "slug": "AHREFS_DOMAIN_RATING_HISTORY", "name": "Domain rating history", "description": "Retrieves the historical Domain Rating (DR) data for a specified domain over time. This endpoint is part of Ahrefs' Site Explorer tool and provides insights into how a domain's authority has changed. It's useful for tracking the impact of SEO efforts, analyzing competitors, or understanding long-term trends in domain strength. The tool returns a time series of Domain Rating values, allowing users to visualize changes in a domain's perceived authority according to Ahrefs' metrics. It should be used when analyzing the historical performance of a domain in terms of its overall SEO strength and backlink profile quality. Note that this endpoint focuses solely on Domain Rating and does not provide other metrics like backlink counts or organic traffic data." }, { "slug": "AHREFS_EXPLORE_KEYWORDS_OVERVIEW", "name": "Explore keywords overview", "description": "Retrieves a comprehensive overview of keyword data from Ahrefs' Keywords Explorer tool. This endpoint provides essential insights for SEO professionals and content strategists, offering a summary of key metrics such as search volume, keyword difficulty, and potential traffic. It's ideal for users looking to get a quick snapshot of keyword performance and opportunities without diving into specific keyword details. The overview likely includes aggregate data and trends, helping users to make informed decisions about their keyword strategy. While it offers a broad perspective, it may not provide in-depth analysis of individual keywords. Use this endpoint when you need a high-level view of your keyword landscape or to identify general trends in your niche." }, { "slug": "AHREFS_EXPLORE_KEYWORD_VOLUME_BY_COUNTRY", "name": "Explore keyword volume by country", "description": "Retrieves the search volume data for specified keywords across different countries using Ahrefs' Keywords Explorer tool. This endpoint allows users to obtain accurate search volume information, helping in keyword research and content strategy planning for specific geographic regions. It's particularly useful for SEO professionals and content marketers looking to optimize their targeting for different markets. The endpoint provides monthly search volume data, which can be used to gauge the popularity and potential traffic of keywords in various countries. Note that the data is based on Ahrefs' extensive database and may not always exactly match real-time Google search volumes." }, { "slug": "AHREFS_EXPLORE_LINKED_DOMAINS_OF_A_SITE", "name": "Explore linked domains of a site", "description": "Retrieves a list of external domains that the specified target website or URL links to, using Ahrefs' Site Explorer functionality. This endpoint is crucial for analyzing a website's external linking structure, which can provide insights into its content strategy, partnerships, and overall SEO approach. It's particularly useful for competitive analysis, link building strategies, and identifying potential opportunities or risks in a website's outbound link profile. The endpoint returns detailed information about each linked domain, including the number of links pointing to it from the target site." }, { "slug": "AHREFS_EXPLORE_MATCHING_TERMS_FOR_KEYWORDS", "name": "Explore matching terms for keywords", "description": "The keywords_explorer_matching_terms endpoint retrieves a list of keyword phrases that match or contain the specified keyword from Ahrefs' vast database. This tool is part of Ahrefs' Keyword Explorer functionality and is designed to assist in comprehensive keyword research for SEO purposes. It returns matching terms along with their relevant metrics such as search volume, keyword difficulty, and potential traffic. This endpoint is particularly useful when expanding a seed keyword list, finding long-tail variations, or discovering closely related search terms. The tool takes into account the specified country for localized results, allowing for targeted keyword strategies in different markets. It's important to note that while this tool provides valuable keyword suggestions, it should be used in conjunction with other Ahrefs features for a complete SEO strategy." }, { "slug": "AHREFS_FETCH_ALL_BACKLINKS", "name": "Fetch all backlinks", "description": "Retrieves a comprehensive list of backlinks for a specified website or URL using Ahrefs' Site Explorer tool. This endpoint provides detailed information about the backlink profile of the target, including the source URLs, link attributes, and potentially other SEO metrics like Domain Rating (DR) or URL Rating (UR) of the linking pages. It's particularly useful for analyzing a website's link-building efforts, identifying potential link-building opportunities, and assessing the overall health of a site's backlink profile. The endpoint can handle large-scale backlink data, making it suitable for in-depth SEO analysis and competitive research. However, users should be aware that for websites with a substantial number of backlinks, multiple API calls or pagination may be necessary to retrieve the complete dataset." }, { "slug": "AHREFS_FETCH_BROKEN_BACKLINKS_DATA", "name": "Fetch broken backlinks data", "description": "Retrieves a list of broken backlinks for a specified website using Ahrefs' Site Explorer tool. This endpoint helps identify and analyze backlinks that are no longer functional, potentially affecting the website's SEO performance. It should be used when conducting a backlink audit, cleaning up a website's link profile, or identifying opportunities for link reclamation. The tool provides detailed information about each broken backlink, including the referring page, anchor text, and the specific broken URL. It's important to note that this endpoint may have limitations on the number of results returned and may require additional API calls for pagination if there are many broken backlinks." }, { "slug": "AHREFS_FETCH_COMPETITORS_OVERVIEW", "name": "Fetch competitors overview", "description": "Retrieves a comprehensive overview of competitor data in relation to keyword rankings and organic search performance. This endpoint is part of Ahrefs' Rank Tracker feature and provides a comparative analysis of your website against multiple competitors. It offers insights into keyword positions, traffic share, and SERP features across all tracked keywords. Use this endpoint when you need a high-level view of your SEO performance relative to your competitors. The data returned helps identify ranking opportunities, track your market share in organic search, and understand how you stack up against your competition in terms of visibility and traffic. Note that this endpoint may have limitations on the number of competitors it compares against and the historical data range available." }, { "slug": "AHREFS_FETCH_RANK_TRACKER_OVERVIEW", "name": "Fetch rank tracker overview", "description": "The GetRankTrackerOverview endpoint retrieves a comprehensive summary of keyword rankings and SEO performance data from Ahrefs' Rank Tracker tool. It provides a high-level overview of a website's ranking positions, SERP features, and performance against competitors across multiple search engines and countries. This endpoint is ideal for quickly assessing the overall SEO health and progress of a website without delving into specific keyword details. It should be used when you need a snapshot of your SEO performance or to track changes in your overall ranking landscape over time. Note that while this overview gives a broad picture, it may not include in-depth data for individual keywords or specific SERP features." }, { "slug": "AHREFS_FETCH_SITE_EXPLORER_REFERRING_DOMAINS", "name": "Fetch site explorer referring domains", "description": "Retrieves a list of domains that have backlinks pointing to a specified target website. This endpoint is essential for conducting comprehensive backlink analysis, allowing users to identify and evaluate the sources of incoming links to their website. It provides valuable data for assessing the strength and quality of a site's backlink profile, which is crucial for SEO strategies and competitor analysis. The endpoint returns detailed information about each referring domain, likely including metrics such as Domain Rating (DR), number of backlinks, and first seen date. It should be used when analyzing a website's backlink structure, identifying potential link-building opportunities, or auditing the quality of incoming links. Note that while this endpoint provides aggregate data about referring domains, it does not offer specifics about individual backlinks or anchor texts." }, { "slug": "AHREFS_FETCH_TOTAL_SEARCH_VOLUME_HISTORY", "name": "Fetch total search volume history", "description": "Retrieves the historical total search volume data for specified keywords using Ahrefs' Site Explorer tool. This endpoint allows users to track and analyze the search popularity trends of specific terms over time, which is crucial for SEO strategy and content planning. It provides aggregated search volume data, helping users understand seasonal trends, overall interest changes, and compare different keywords' performance. The tool is particularly useful for identifying trending topics, planning content calendars, and making data-driven decisions in digital marketing campaigns. However, it's important to note that the data represents past trends and should be used in conjunction with other metrics for comprehensive SEO analysis." }, { "slug": "AHREFS_GET_SERP_OVERVIEW", "name": "Get serp overview", "description": "Retrieves a comprehensive overview of Search Engine Results Pages (SERP) data for specified keywords or queries. This endpoint provides valuable insights into search performance, including historical data, search intent analysis, and detailed metrics for each keyword. It's particularly useful for SEO professionals and digital marketers looking to optimize their content strategy and improve their website's search engine visibility. The SERP Overview can help identify trends, analyze competition, and inform content creation efforts based on real search data. Note that while this endpoint offers a wealth of information, it may not provide real-time data and should be used for strategic planning rather than immediate tactical decisions." }, { "slug": "AHREFS_GET_SITE_AUDIT_PROJECTS", "name": "Get site audit projects", "description": "Retrieves a list of Site Audit projects associated with the authenticated Ahrefs account. This endpoint allows users to access and manage their Site Audit projects, which are essential for identifying technical and on-page SEO issues across websites. It should be used when you need an overview of all Site Audit projects or want to check the status of ongoing audits. The endpoint likely returns project details such as project names, URLs being audited, last audit dates, and overall health scores. Keep in mind that while this endpoint provides a list of projects, it does not include the detailed audit results for each project; separate API calls would be needed to fetch specific project data." }, { "slug": "AHREFS_GET_SITE_EXPLORER_COUNTRY_METRICS", "name": "Get site explorer country metrics", "description": "Retrieves country-specific Site Explorer metrics for a given website from Ahrefs. This endpoint provides valuable insights into a website's performance across different countries, including data on organic traffic, keyword rankings, and backlink profiles. It's particularly useful for analyzing international SEO performance, identifying strong markets, and uncovering opportunities for global expansion. The tool returns a list of countries with their respective SEO metrics, helping users understand how their website performs in various geographical regions. Note that the specific metrics returned may vary based on the Ahrefs plan and data availability for the target website." }, { "slug": "AHREFS_GET_SITE_EXPLORER_LINKED_ANCHORS_EXTERNAL", "name": "Get site explorer linked anchors external", "description": "The site-explorer-linked-anchors-external endpoint retrieves data about external anchor texts linking to a specified target website. This tool is essential for analyzing the backlink profile of a domain, understanding the context in which other sites are linking to it, and identifying potential SEO opportunities or issues. It provides insights into the most common anchor texts used in external links, which can help in assessing the website's perceived topical relevance and authority. Use this endpoint when you need to analyze the external link profile of a website, conduct competitor research, or identify potential link-building opportunities. Note that this tool focuses solely on external links and does not provide information about internal linking structures or other on-page SEO factors." }, { "slug": "AHREFS_GET_URL_RATING_HISTORY", "name": "Get url rating history", "description": "Retrieves the historical URL Rating data for a specified URL over time. This endpoint provides insights into how a URL's SEO strength has changed, allowing users to track the impact of their SEO efforts or analyze competitors' URL performance. The URL Rating is a key Ahrefs metric that reflects the strength of a URL based on its backlink profile and other SEO factors. Use this endpoint to visualize URL Rating trends, identify significant changes in a URL's SEO performance, and correlate these changes with specific events or strategies. The data returned is particularly useful for long-term SEO analysis and competitive research." }, { "slug": "AHREFS_LINKED_ANCHORS_EXPLORER", "name": "Linked anchors explorer", "description": "Retrieves information about internal linked anchors for a specified website using the Ahrefs API. This endpoint provides data on anchor text used in internal links and the number of outgoing links associated with each anchor. It's particularly useful for analyzing a website's internal linking structure, identifying commonly used anchor texts, and optimizing internal link distribution. The endpoint is part of Ahrefs' Site Explorer tool and helps in understanding the website's hierarchy and content relationships. Each request and result incurs a cost of 1 row, which should be considered when making multiple or large-scale queries." }, { "slug": "AHREFS_LIST_BEST_BY_EXTERNAL_LINKS", "name": "List best by external links", "description": "The 'get_best_by_external_links' endpoint retrieves a list of pages from a specified website, ranked by the number of external links pointing to them. This tool is essential for identifying the most authoritative and popular pages on a domain from an external linking perspective. It helps in understanding which content attracts the most backlinks, aiding in content strategy and link building efforts. The endpoint is particularly useful for SEO professionals and digital marketers looking to analyze a website's most valuable pages in terms of external link equity. However, it's important to note that this tool focuses solely on external links and doesn't provide information on internal linking or other SEO metrics." }, { "slug": "AHREFS_PAGES_BY_TRAFFIC_OVERVIEW", "name": "Pages by traffic overview", "description": "Retrieves a list of pages from a specified website, ordered by their estimated organic search traffic. This endpoint is part of the Ahrefs Site Explorer tool and provides valuable insights into which pages on a website are performing well in terms of attracting organic search visitors. It's useful for identifying top-performing content, understanding traffic distribution across a site, and prioritizing optimization efforts. The endpoint returns data such as page URLs, estimated traffic, and other relevant metrics. It's important to note that the traffic data is an estimation based on Ahrefs' algorithms and may not exactly match actual analytics data. This tool is particularly useful for SEO professionals, content strategists, and website owners looking to analyze and improve their site's organic search performance." }, { "slug": "AHREFS_RETRIEVE_ANCHOR_DATA", "name": "Retrieve anchor data", "description": "Retrieves anchor text data for a specified website or URL using Ahrefs' Site Explorer tool. This endpoint provides valuable insights into the anchor text distribution of backlinks pointing to the target URL or domain. It helps SEO professionals analyze the quality and diversity of anchor texts, which can influence search engine rankings. Use this endpoint when you need to understand how other websites are linking to a specific page or domain, and to identify potential opportunities for link building or anchor text optimization. The tool does not provide information about the linking pages themselves, focusing solely on the anchor text data." }, { "slug": "AHREFS_RETRIEVE_BEST_BY_INTERNAL_LINKS", "name": "Retrieve best by internal links", "description": "Retrieves data on the best-performing internal links within a specified website using Ahrefs' Site Explorer feature. This endpoint analyzes the internal link structure of the target site and returns a list of the most effective internal links based on various SEO metrics. It's particularly useful for identifying high-value linking opportunities within your own website, which can help improve your site's overall SEO performance and user navigation. The tool provides insights that can be used to optimize your internal linking strategy, potentially boosting the ranking potential of important pages on your site. Note that this endpoint focuses solely on internal links and does not provide information about external backlinks or other SEO metrics." }, { "slug": "AHREFS_RETRIEVE_CRAWLER_IP_RANGES", "name": "Retrieve crawler ip ranges", "description": "Retrieves the list of IP address ranges used by Ahrefs' web crawler (AhrefsBot). This endpoint provides essential information for website administrators to identify and potentially whitelist Ahrefs' crawler traffic. Use this endpoint when you need to configure your server's firewall rules, analyze server logs, or verify the authenticity of crawler requests claiming to be from Ahrefs. The returned data includes the current set of IP ranges, which may change over time, so it's recommended to check this endpoint periodically for updates. Note that while this information helps in identifying Ahrefs' crawler, it should not be used as the sole method of authentication for the crawler." }, { "slug": "AHREFS_RETRIEVE_ORGANIC_COMPETITORS", "name": "Retrieve organic competitors", "description": "The GetOrganicCompetitors endpoint in the Ahrefs API provides a comprehensive analysis of websites competing for organic search rankings with a specified target domain. It identifies and ranks competitors based on their keyword overlap and organic search performance relative to the target site. This tool is essential for understanding the competitive landscape in SEO, discovering potential content gaps, and informing strategic decisions for improving organic search visibility. Use this endpoint when you need to identify key competitors in organic search, analyze their strengths, and uncover opportunities for outranking them. The tool focuses solely on organic search competitors and does not provide information on paid search or other marketing channels." }, { "slug": "AHREFS_RETRIEVE_ORGANIC_KEYWORDS", "name": "Retrieve organic keywords", "description": "Retrieves organic keywords data for a specified website using Ahrefs' Site Explorer tool. This endpoint provides valuable insights into a website's SEO performance by returning a list of keywords for which the site ranks in organic search results. It's particularly useful for analyzing a website's organic search visibility, identifying ranking opportunities, and comparing keyword performance against competitors. The data returned includes key metrics such as keyword position, search volume, and estimated traffic, allowing users to make informed decisions about their SEO strategy. Note that the results are based on Ahrefs' database and may not reflect real-time search engine results." }, { "slug": "AHREFS_RETRIEVE_OUTLINKS_STATS", "name": "Retrieve outlinks stats", "description": "Retrieves comprehensive statistics about outgoing links (outlinks) from a specified website using Ahrefs' Site Explorer tool. This endpoint provides valuable insights into a website's external linking practices, which is crucial for SEO analysis and understanding a site's overall link profile. Use this tool to gather data on the number of outlinks, the diversity of linked domains, and the distribution of follow vs. nofollow links. It's particularly useful for competitive analysis, identifying potential link-building opportunities, and assessing a site's overall linking strategy. Note that this endpoint focuses solely on outgoing links and does not provide information about backlinks or internal links." }, { "slug": "AHREFS_RETRIEVE_PAID_PAGES_DATA", "name": "Retrieve paid pages data", "description": "Retrieves information about paid pages (PPC advertising) for a specified website using Ahrefs' Site Explorer tool. This endpoint provides valuable insights into a website's paid search strategy, including the keywords they're targeting, ad copies, and potentially performance metrics. It's particularly useful for competitive analysis in digital marketing, allowing users to understand their competitors' paid search efforts. The tool should be used when analyzing a website's PPC strategy or researching potential keywords for paid campaigns. It does not provide information about organic search performance or other SEO metrics." }, { "slug": "AHREFS_RETRIEVE_PUBLIC_CRAWLER_IPS", "name": "Retrieve public crawler ips", "description": "Retrieves a list of IP addresses currently used by AhrefsBot, Ahrefs' web crawler. This endpoint provides essential information for webmasters and SEO professionals who want to verify the authenticity of requests coming from Ahrefs or manage their server's access rules. The returned list includes all active IP addresses utilized by AhrefsBot for crawling websites. This tool should be used when you need to confirm if a particular IP belongs to Ahrefs or when updating your website's firewall rules to allow Ahrefs' crawler. It's important to note that this list may change over time, so it's recommended to check it periodically for the most up-to-date information." }, { "slug": "AHREFS_RETRIEVE_RELATED_TERMS", "name": "Retrieve related terms", "description": "The keywords_explorer_related_terms endpoint retrieves a list of related terms for a given keyword using Ahrefs' extensive keyword database. This tool is essential for expanding keyword research, finding new content ideas, and identifying potential long-tail keywords for SEO strategies. It provides valuable insights into semantically related terms that users are searching for, helping to broaden and refine content targeting. The endpoint is particularly useful when brainstorming content ideas or looking to expand the scope of an existing SEO campaign. However, it should be noted that this tool focuses on keyword relationships and does not provide metrics like search volume or keyword difficulty directly in its response." }, { "slug": "AHREFS_RETRIEVE_SITE_EXPLORER_KEYWORDS_HISTORY", "name": "Retrieve site explorer keywords history", "description": "Retrieves historical keyword performance data for a specified website or domain using Ahrefs' Site Explorer. This endpoint provides insights into how keywords have performed over time, including changes in rankings, search volume, and potential traffic. It's particularly useful for analyzing SEO trends, understanding the impact of optimization efforts, and identifying seasonal patterns in keyword performance. The tool should be used when you need a comprehensive view of a website's keyword history to inform SEO strategies and content planning. It does not provide real-time data and may have limitations on the historical range available." }, { "slug": "AHREFS_RETRIEVE_SITE_EXPLORER_METRICS", "name": "Retrieve site explorer metrics", "description": "The GetSiteExplorerMetrics endpoint retrieves comprehensive SEO metrics for a specified website using Ahrefs' Site Explorer tool. It provides crucial data such as backlink profile, referring pages, organic keyword rankings, and various other SEO-related metrics that are essential for understanding a website's performance and authority in search engine results. This endpoint is particularly useful for SEO professionals, digital marketers, and website owners who need to analyze their own sites or competitor websites. The tool offers flexibility in terms of analysis scope and specific metrics retrieval, allowing users to tailor the data to their specific needs. However, users should be aware that the depth and recency of data may vary depending on Ahrefs' crawling frequency and the size of the target website." }, { "slug": "AHREFS_RETRIEVE_SITE_EXPLORER_METRICS_HISTORY", "name": "Retrieve site explorer metrics history", "description": "Retrieves historical SEO metrics data for a specified website over a given time period. This endpoint is part of the Ahrefs Site Explorer tool and provides valuable insights into a website's performance trends. It should be used when analyzing long-term SEO progress, identifying patterns in backlink growth, or tracking changes in organic traffic and keyword rankings. The tool is particularly useful for competitive analysis, allowing users to compare their website's historical performance against competitors. It's important to note that the data granularity may vary depending on the date range selected, with more recent dates potentially offering more detailed data." }, { "slug": "AHREFS_RETRIEVE_SITE_EXPLORER_PAGES_HISTORY", "name": "Retrieve site explorer pages history", "description": "The get_site_explorer_pages_history endpoint retrieves historical data about specific pages or domains from Ahrefs' Site Explorer. It tracks changes in SEO performance over time, including backlinks, organic traffic, and visibility. Use this endpoint for assessing historical performance, comparing metrics, and identifying trends. Ideal for SEO audits and competitor analysis. Data availability may vary based on Ahrefs' crawl history." }, { "slug": "AHREFS_RETRIEVE_SITE_EXPLORER_REFERRING_DOMAINS_HISTORY", "name": "Retrieve site explorer referring domains history", "description": "Retrieves the historical data of referring domains for a specified website or URL over time. This endpoint is part of Ahrefs' Site Explorer tool and provides valuable insights into the growth or decline of a website's backlink profile. It should be used when analyzing the long-term SEO performance of a website, identifying trends in link building efforts, or comparing the backlink acquisition rates of different domains. The data returned includes the number of referring domains at various points in time, allowing users to track changes and potentially correlate them with specific events or marketing efforts. This endpoint is particularly useful for SEO professionals, digital marketers, and website owners who need to monitor their site's authority growth over time or analyze competitors' link building strategies." }, { "slug": "AHREFS_RETRIEVE_SUBSCRIPTION_LIMITS_AND_USAGE", "name": "Retrieve subscription limits and usage", "description": "Retrieves detailed information about the current subscription limits and usage for an Ahrefs account. This endpoint provides essential data to monitor API consumption, track remaining credits or rows, and manage subscription usage effectively. It should be used regularly to ensure compliance with plan limits and to plan for potential upgrades or additional purchases. The tool does not modify any account settings or usage data; it only provides a snapshot of the current status. While specific response fields are not detailed in the schema, users can expect information about total limits, current usage, and possibly remaining allowances for various Ahrefs features and API endpoints." }, { "slug": "AHREFS_RETRIEVE_TOP_PAGES_FROM_SITE_EXPLORER", "name": "Retrieve top pages from site explorer", "description": "Retrieves data about the top-performing pages of a specified website using Ahrefs' Site Explorer tool. This endpoint provides valuable insights into a site's most successful content based on various SEO metrics. It's particularly useful for content analysis, competitive research, and identifying opportunities for optimization. The data returned includes details such as page URLs, organic traffic estimates, ranking keywords, and other relevant SEO metrics for each top page. Use this endpoint when you need to analyze the best-performing content of a website or compare top pages across different domains. Note that the results are based on Ahrefs' data and estimates, which may not always reflect real-time traffic or exact Google rankings." }, { "slug": "AHREFS_RETRIEVE_VOLUME_HISTORY", "name": "Retrieve volume history", "description": "Retrieves the historical search volume data for a specified keyword using Ahrefs' Keywords Explorer tool. This endpoint provides valuable insights into how the popularity of a keyword has changed over time, allowing users to analyze trends, seasonality, and long-term shifts in search behavior. The data returned can be crucial for planning SEO strategies, content calendars, and understanding market dynamics. It's particularly useful when you need to assess the historical performance of keywords, identify seasonal patterns, or evaluate the potential of trending topics. The tool does not provide future predictions or real-time data, focusing instead on historical trends based on Ahrefs' comprehensive database of search information." }, { "slug": "AHREFS_SEARCH_SUGGESTIONS_EXPLORER", "name": "Search suggestions explorer", "description": "Retrieves search suggestions for a given keyword or phrase using Ahrefs' Keywords Explorer tool. This endpoint provides autocomplete-style suggestions that can help uncover related keywords, long-tail variations, and potential content ideas based on real search data. It's particularly useful for expanding keyword lists, finding low-competition keywords, and understanding user search intent. The suggestions returned may include both informational and transactional keywords, offering insights into various stages of the user journey. This tool should be used when conducting keyword research, planning content strategies, or optimizing for search engine visibility. It does not provide detailed metrics like search volume or keyword difficulty; for such data, additional API calls may be necessary." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ahrefs_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret Ahrefs API key. Create one in Ahrefs under Account settings → API keys (workspace owners/admins only). API access requires a paid Ahrefs plan.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "affinity", "name": "Affinity", "logo": "https://logos.composio.dev/api/affinity", "description": "Affinity helps private capital investors to find, manage, and close more deals", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AFFINITY_GET_A_COMPANY_S_LIST_ENTRIES", "name": "Get a company s list entries", "description": "Summarize company data across all lists, including list-specific fields and metadata like creation date and author. Access requires \"Export data from Lists\" permission." }, { "slug": "AFFINITY_GET_A_COMPANY_S_LISTS", "name": "Get a company s lists", "description": "Returns metadata for all the Lists on which the given Company appears." }, { "slug": "AFFINITY_GET_ALL_COMPANIES", "name": "Get all companies", "description": "Affinity API allows paginated access to company info and custom fields. Use `fieldIds` or `fieldTypes` to specify data in a request. Retrieve field IDs/Types via GET `/v2/companies/fields`. Export permission needed." }, { "slug": "AFFINITY_GET_ALL_LIST_ENTRIES_ON_A_LIST", "name": "Get all list entries on a list", "description": "Access and export essential data and metadata for Companies, Persons, or Opportunities from a List, specifying data via `fieldIds` or `fieldTypes`. \"Export data from Lists\" permission is necessary." }, { "slug": "AFFINITY_GET_ALL_LIST_ENTRIES_ON_A_SAVED_VIEW", "name": "Get all list entries on a saved view", "description": "Use the endpoint to access rows in a Saved View with specific filters and selected fields from a web app. It doesn't maintain sort order, supports only sheet-type views, and requires export permissions." }, { "slug": "AFFINITY_GET_ALL_OPPORTUNITIES", "name": "Get all opportunities", "description": "Pagination through Opportunities in Affinity yields basic info but excludes field data. For field data, use specified GET endpoints. \"Export data from Lists\" permission needed." }, { "slug": "AFFINITY_GET_ALL_PERSONS", "name": "Get all persons", "description": "The Affinity API offers paginated access to Person data using `fieldIds` or `fieldTypes`. Bulk extraction needs special permissions and supports multiple parameters." }, { "slug": "AFFINITY_GET_A_PERSON_S_LIST_ENTRIES", "name": "Get a person s list entries", "description": "Summary: Browse rows for a Person in all Lists, showing field data and entry metadata like creation time and author. Requires \"Export data from Lists\" permission." }, { "slug": "AFFINITY_GET_A_PERSON_S_LISTS", "name": "Get a person s lists", "description": "Returns metadata for all the Lists on which the given Person appears." }, { "slug": "AFFINITY_GET_A_SINGLE_COMPANY", "name": "Get a single company", "description": "Retrieve basic company info and specific field data by using `fieldIds` or `fieldTypes` parameters. Multiple fields can be queried. No field data if parameters aren't specified. Requires \"Export All Organizations directory\" permission." }, { "slug": "AFFINITY_GET_A_SINGLE_OPPORTUNITY", "name": "Get a single opportunity", "description": "Get basic details about an Opportunity without field data via provided endpoints. Field data requires using specific list entry APIs and the \"Export data from Lists\" permission." }, { "slug": "AFFINITY_GET_A_SINGLE_PERSON", "name": "Get a single person", "description": "Use GET `/v2/persons/fields` with `fieldIds` or `fieldTypes` for detailed data; basic info by default. Request multiple fields at once. \"Export All People\" permission needed." }, { "slug": "AFFINITY_GET_CURRENT_USER", "name": "Get current user", "description": "Returns metadata about the current user." }, { "slug": "AFFINITY_GET_METADATA_ON_ALL_LISTS", "name": "Get metadata on all lists", "description": "Returns metadata on Lists." }, { "slug": "AFFINITY_GET_METADATA_ON_A_SINGLE_LIST", "name": "Get metadata on a single list", "description": "Returns metadata on a single List." }, { "slug": "AFFINITY_GET_METADATA_ON_A_SINGLE_LIST_S_FIELDS", "name": "Get metadata on a single list s fields", "description": "Returns metadata on the Fields available on a single List. Use the returned Field IDs to request field data from the GET `/v2/lists/{listId}/list-entries` endpoint." }, { "slug": "AFFINITY_GET_METADATA_ON_A_SINGLE_SAVED_VIEW", "name": "Get metadata on a single saved view", "description": "Returns metadata on a single Saved View." }, { "slug": "AFFINITY_GET_METADATA_ON_COMPANY_FIELDS", "name": "Get metadata on company fields", "description": "Returns metadata on non-list-specific Company Fields. Use the returned Field IDs to request field data from the GET `/v2/companies` and GET `/v2/companies/{id}` endpoints." }, { "slug": "AFFINITY_GET_METADATA_ON_PERSON_FIELDS", "name": "Get metadata on person fields", "description": "Returns metadata on non-list-specific Person Fields. Use the returned Field IDs to request field data from the GET `/v2/persons` and GET `/v2/persons/{id}` endpoints." }, { "slug": "AFFINITY_GET_METADATA_ON_SAVED_VIEWS", "name": "Get metadata on saved views", "description": "Returns metadata on the Saved Views on a List." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "affinity_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Affinity API key. Create one in Affinity under Settings → Manage Apps → + New App and copy the secret right away — it's shown only once. Requires a paid plan.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amplitude", "name": "Amplitude", "logo": "https://logos.composio.dev/api/amplitude", "description": "Amplitude gives you the self-serve tools and real-time data to make products and experiences that win no matter what.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AMPLITUDE_ASSIGN_ANNOTATIONS_TO_CATEGORY", "name": "Bulk Assign Annotations to Category", "description": "Tool to bulk assign multiple annotations to a category in Amplitude. Use when you need to organize annotations by assigning them to a specific category." }, { "slug": "AMPLITUDE_CANCEL_DELETION", "name": "Cancel User Deletion", "description": "Cancel a pending user deletion request in Amplitude. Use this to remove a user from a scheduled deletion job before it completes. Only works on deletion jobs in 'Staging' status (not yet submitted)." }, { "slug": "AMPLITUDE_CHECK_COHORT_STATUS", "name": "Check Amplitude Cohort Status", "description": "Check the status of a cohort export request. This action allows you to: - Poll the status of an in-progress cohort download request - Determine if a cohort is ready for download" }, { "slug": "AMPLITUDE_CREATE_ANNOTATION", "name": "Create Chart Annotation in Amplitude", "description": "Create a chart annotation in Amplitude to mark important dates. Use to highlight key events like feature releases, marketing campaigns, or product updates on analytics charts." }, { "slug": "AMPLITUDE_CREATE_ANNOTATION_CATEGORY", "name": "Create Annotation Category", "description": "Tool to create an annotation category in Amplitude to organize annotations. Use when you need to create a new category for grouping related annotations." }, { "slug": "AMPLITUDE_CREATE_EVENT_CATEGORY", "name": "Create Amplitude Event Category", "description": "Create a new event category in Amplitude. This action allows you to: - Create a new event category to organize event types - Validate category name before creation Key features: - Creates event categories for organizing events - Returns success/failure status" }, { "slug": "AMPLITUDE_CREATE_EVENT_TYPE", "name": "Create Amplitude Event Type", "description": "Create a new event type in Amplitude. This action allows you to: - Define a new event type with various properties - Associate the event with a category - Add metadata like description, tags, and owner Key features: - Creates trackable events in your Amplitude project - Supports full event type configuration" }, { "slug": "AMPLITUDE_CREATE_RELEASE", "name": "Create Amplitude Release", "description": "Create a release to document product changes. Use when you want to track app version releases and their impact on metrics. Can be integrated into deployment workflows to automatically log releases in Amplitude." }, { "slug": "AMPLITUDE_DELETE_ANNOTATION", "name": "Delete Amplitude Chart Annotation", "description": "Delete a chart annotation from Amplitude. Use to remove existing annotations from charts." }, { "slug": "AMPLITUDE_DELETE_ANNOTATION_CATEGORY", "name": "Delete Amplitude Annotation Category", "description": "Delete an annotation category from Amplitude. Use when you need to remove an annotation category that is no longer needed." }, { "slug": "AMPLITUDE_DELETE_EVENT_CATEGORY", "name": "Delete Amplitude Event Category", "description": "Delete an event category from Amplitude. This action allows you to: - Delete an existing event category - Remove category organization from events Key features: - Permanently removes event categories - Returns success/failure status" }, { "slug": "AMPLITUDE_DELETE_EVENT_TYPE", "name": "Delete Amplitude Event Type", "description": "Delete an event type from Amplitude. This action allows you to: - Remove an event type from your project - Mark live events as deleted - Remove planned events from the tracking plan Key features: - Different behavior based on event status (live, planned, etc.) - Returns success/failure status" }, { "slug": "AMPLITUDE_DELETE_USERS", "name": "Delete Amplitude Users", "description": "Submit user deletion requests for GDPR/CCPA compliance. Supports up to 100 users per request. Use when you need to delete user data from Amplitude in compliance with privacy regulations. Either amplitude_ids or user_ids must be provided." }, { "slug": "AMPLITUDE_DOWNLOAD_COHORT_FILE", "name": "Download Amplitude Cohort File", "description": "Download the cohort file after request is complete. Use this action after checking that the cohort status is 'JOB COMPLETED'. The download link is valid for 7 days, but the S3 link is valid for only 1 minute." }, { "slug": "AMPLITUDE_FIND_USER", "name": "Search Amplitude User", "description": "Search for users in Amplitude by canonical identifier (Amplitude ID, device ID, user ID, or user ID prefix). Use this to find matching Amplitude IDs for deterministic user mapping. Important: This searches only canonical identifiers (Amplitude ID, device_id, user_id), NOT arbitrary user properties like email unless email is your actual user_id." }, { "slug": "AMPLITUDE_GET_ACTIVE_USERS", "name": "Get Active or New Users", "description": "Get the number of active or new users for a date range with optional segmentation. Use when you need user count metrics aggregated by day, week, or month, optionally grouped by user properties." }, { "slug": "AMPLITUDE_GET_ANNOTATION", "name": "Get Amplitude Annotation", "description": "Get a single chart annotation by ID from Amplitude. Use when you need to retrieve detailed information about a specific annotation including its label, timestamps, category, and associated chart." }, { "slug": "AMPLITUDE_GET_ANNOTATION_CATEGORY", "name": "Get Amplitude Annotation Category", "description": "Get a single annotation category by ID from Amplitude. Use when you need to retrieve details about a specific annotation category." }, { "slug": "AMPLITUDE_GET_COHORT", "name": "Request Amplitude Cohort", "description": "Get a single cohort by ID and initiate download. This action allows you to: - Request a specific cohort from Amplitude - Optionally include user properties in the response - Start the asynchronous download process Key features: - Supports filtering by specific user properties - Returns a request ID used for polling status and downloading - Supports EU data residency" }, { "slug": "AMPLITUDE_GET_DELETION_REQUESTS", "name": "Get User Deletion Requests", "description": "Get the status of user deletion requests within a date range. Use this to track GDPR/CCPA deletion compliance and monitor deletion job progress." }, { "slug": "AMPLITUDE_GET_EVENT_CATEGORIES", "name": "Get Amplitude Event Categories", "description": "Get event categories from Amplitude. This action allows you to: - Get all event categories in your project - Get a specific category by name" }, { "slug": "AMPLITUDE_GET_EVENT_PROPERTY", "name": "Get Amplitude Event Property", "description": "Get a specific event property from Amplitude taxonomy. Use when you need to retrieve details about a specific event property including its type, validation rules, and metadata." }, { "slug": "AMPLITUDE_GET_EVENT_SEGMENTATION", "name": "Get Event Segmentation Data", "description": "Get event segmentation data from Amplitude Analytics API. Use this to analyze event metrics over time with optional grouping by properties. Supports multiple metrics (uniques, totals, percentage of DAU, averages) and time intervals (realtime, hourly, daily, weekly)." }, { "slug": "AMPLITUDE_GET_EVENT_TYPE", "name": "Get Amplitude Event Type", "description": "Get a specific event type from Amplitude by name. This action allows you to: - Retrieve detailed information about a single event type - Get all properties and metadata for the event Key features: - Retrieves comprehensive event type details - Returns metadata like category, description, and settings - Supports lookup by exact event name" }, { "slug": "AMPLITUDE_GET_EVENT_TYPES", "name": "Get Amplitude Event Types", "description": "Get all event types from Amplitude. This action allows you to: - Retrieve all event types in your project - Optionally include deleted events" }, { "slug": "AMPLITUDE_GET_FUNNEL_DATA", "name": "Get Funnel Analysis Data", "description": "Get funnel analysis data showing user conversion through a sequence of events. Use this to analyze user drop-off rates and conversion times across multiple steps in a user journey." }, { "slug": "AMPLITUDE_GET_REALTIME_ACTIVE_USERS", "name": "Get Real-time Active Users", "description": "Get real-time active users count from Amplitude. Returns active user counts with 5-minute granularity (configurable) for today and yesterday. Use this to monitor current user activity and compare with historical data." }, { "slug": "AMPLITUDE_GET_RETENTION", "name": "Get User Retention Analysis", "description": "Get user retention analysis showing how users return over time after a starting action. Use when analyzing user engagement patterns, measuring feature stickiness, or understanding long-term user behavior across cohorts." }, { "slug": "AMPLITUDE_GET_REVENUE_LTV", "name": "Get Revenue LTV Metrics", "description": "Get revenue lifetime value (LTV) metrics including ARPU, ARPPU, and total revenue. Use when you need to analyze revenue trends over time for user cohorts." }, { "slug": "AMPLITUDE_GET_SESSION_AVERAGE", "name": "Get Session Average Length", "description": "Get average session length (in seconds) for a specified date range from Amplitude. Use when you need to analyze user engagement patterns and session duration trends over time." }, { "slug": "AMPLITUDE_GET_SESSION_LENGTH", "name": "Get Session Length Distribution", "description": "Tool to retrieve session length distribution data for a specified date range from Amplitude. Use when you need to analyze how long users' sessions typically last or visualize session duration patterns across time buckets." }, { "slug": "AMPLITUDE_GET_SESSIONS_PER_USER", "name": "Get Sessions Per User from Amplitude", "description": "Tool to get average number of sessions per user for each day in a date range from Amplitude. Use when analyzing user engagement patterns or session frequency over time." }, { "slug": "AMPLITUDE_GET_USER_ACTIVITY", "name": "Get User Activity from Amplitude", "description": "Fetch a single user's profile summary and event stream by Amplitude ID. Use when you need to extract attribution data (UTM parameters, referrers) from early events or user properties, or when analyzing user behavior patterns." }, { "slug": "AMPLITUDE_GET_USER_COMPOSITION", "name": "Get User Composition by Property", "description": "Tool to get user composition breakdown by property (platform, version, country, etc.). Use when analyzing user distribution across property values during a date range." }, { "slug": "AMPLITUDE_GET_USER_MAPPINGS", "name": "Get User Mappings", "description": "Get the list of user mappings for provided user IDs. Use when you need to retrieve aliasing relationships between user identifiers in Amplitude. Returns mapping data showing which users map into and out of the requested user IDs." }, { "slug": "AMPLITUDE_GET_USER_PROPERTY", "name": "Get Amplitude User Property", "description": "Get a specific user property from Amplitude taxonomy. Use when you need to retrieve details about a specific user property including its type, validation rules, and classifications." }, { "slug": "AMPLITUDE_IDENTIFY", "name": "Update User Properties in Amplitude", "description": "Update user properties using Amplitude's Identify API. This action allows you to: - Set or update the User ID for a Device ID - Update user properties without sending an event - Perform operations on user properties (set, append, etc.) - Update user attributes like device info and location" }, { "slug": "AMPLITUDE_LIST_ANNOTATION_CATEGORIES", "name": "List Amplitude Annotation Categories", "description": "List all annotation categories from Amplitude. Use to retrieve available categories for chart annotations." }, { "slug": "AMPLITUDE_LIST_ANNOTATIONS", "name": "List Chart Annotations", "description": "Tool to get all chart annotations with optional filtering by category, chart, and date range. Use when you need to retrieve annotations that mark important events or milestones on Amplitude charts." }, { "slug": "AMPLITUDE_LIST_COHORTS", "name": "List Amplitude Cohorts", "description": "List all discoverable cohorts for an Amplitude project. This action allows you to: - Get a list of all cohorts in your Amplitude project - Optionally include sync information for each cohort Key features: - Returns cohort details including ID, name, size, and definition - Optionally includes sync metadata for integration with other tools - Supports EU data residency. An empty result may indicate insufficient permissions to view cohorts rather than an absence of cohorts in the project." }, { "slug": "AMPLITUDE_LIST_EVENT_PROPERTIES", "name": "List Amplitude Event Properties", "description": "Get all event properties from Amplitude, optionally filtered by event type or property name. Use when you need to retrieve property definitions, data types, or validation rules for events." }, { "slug": "AMPLITUDE_LIST_EVENTS", "name": "List Amplitude Events", "description": "Tool to get a list of all event types in your Amplitude project with current week's statistics. Use when you need to see all events and their recent activity metrics including totals, uniques, and DAU percentages." }, { "slug": "AMPLITUDE_LIST_USER_PROPERTIES", "name": "List Amplitude User Properties", "description": "Tool to get all user properties in your Amplitude project. Use when you need to retrieve the complete list of user properties including both default and custom properties." }, { "slug": "AMPLITUDE_MAP_USER", "name": "Map Users in Amplitude", "description": "Map users with different user IDs together (alias/merge users) in Amplitude. Use this to merge user identities across different identifiers or unmap previously merged users. Supports up to 2000 mappings per request with 1MB size limit." }, { "slug": "AMPLITUDE_RESTORE_EVENT_TYPE", "name": "Restore Amplitude Event Type", "description": "Restore a deleted event type in Amplitude. This action allows you to: - Restore a previously deleted event type - Make the event available again in the UI and API Key features: - Undoes the deletion of an event type - Returns success/failure status" }, { "slug": "AMPLITUDE_SEND_EVENTS", "name": "Send Events to Amplitude", "description": "Send events to Amplitude using the HTTP V2 API. This action allows you to send events to Amplitude for tracking user behavior and analytics. It supports all Amplitude event fields, handles proper validation, and includes comprehensive error handling." }, { "slug": "AMPLITUDE_SET_GROUP_PROPERTIES", "name": "Set Group Properties in Amplitude", "description": "Set group properties for account-level reporting without sending an event. Use this action to update group attributes like company name, industry, or plan type. Requires Enterprise plan with Accounts add-on." }, { "slug": "AMPLITUDE_UPDATE_ANNOTATION", "name": "Update Amplitude Chart Annotation", "description": "Tool to update an existing chart annotation in Amplitude. Use when you need to modify annotation properties such as label, timestamps, category, or chart association. Supports partial updates - only include fields you want to change." }, { "slug": "AMPLITUDE_UPDATE_ANNOTATION_CATEGORY", "name": "Update Amplitude Annotation Category", "description": "Tool to update an annotation category in Amplitude. Use when you need to rename or modify an existing annotation category for organizing chart annotations." }, { "slug": "AMPLITUDE_UPDATE_COHORT_MEMBERSHIP", "name": "Update Amplitude Cohort Membership", "description": "Incrementally update cohort membership by adding or removing IDs. This action allows you to: - Add new IDs to an existing cohort - Remove IDs from an existing cohort - Perform multiple operations in a single request" }, { "slug": "AMPLITUDE_UPDATE_EVENT_CATEGORY", "name": "Update Amplitude Event Category", "description": "Update an existing event category in Amplitude. This action allows you to: - Update the name of an existing event category - Validate the new category name Key features: - Updates category names - Returns success/failure status" }, { "slug": "AMPLITUDE_UPDATE_EVENT_TYPE", "name": "Update Amplitude Event Type", "description": "Update an existing event type in Amplitude. This action allows you to: - Change event type properties - Update event name, category, metadata, and settings - Modify display name for ingested events Key features: - Updates event type configuration - Supports partial updates (only specified fields are changed)" }, { "slug": "AMPLITUDE_UPLOAD_BATCH_EVENTS", "name": "Batch Upload Events to Amplitude", "description": "Bulk upload events to Amplitude using the Batch Event Upload API. Supports larger payloads (20MB) and higher throttling limits than HTTP V2 API. Use when you need to send large batches of events efficiently." }, { "slug": "AMPLITUDE_UPLOAD_COHORT", "name": "Upload Amplitude Cohort", "description": "Generate a new cohort or update an existing cohort by uploading user IDs or Amplitude IDs. Use when you need to create cohorts from a specific list of users." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Amplitude API requests. For EU data residency, use https://analytics.eu.amplitude.com/api/2.", "required": true, "default": "https://amplitude.com/api/2" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Amplitude API Key for your project", "required": true, "default": null }, { "name": "generic_id", "displayName": "API Secret", "type": "string", "description": "Your Amplitude API Secret for your project", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "heygen", "name": "HeyGen", "logo": "https://logos.composio.dev/api/heygen", "description": "HeyGen is an innovative video platform that harnesses the power of generative AI to streamline your video creation process", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 71, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEYGEN_ADD_LOOKS_TO_PHOTO_AVATAR_GROUP", "name": "Add looks to photo avatar group", "description": "Tool to add additional looks (images) to an existing photo avatar group. Use when you need to expand an avatar group with new image variations. Maximum 4 image keys can be added per request." }, { "slug": "HEYGEN_ADD_MOTION", "name": "Add motion to photo avatar", "description": "Tool to add natural motion or animation to an existing photo avatar, turning a still image into a moving, lifelike one. Use when you need to animate an avatar or add motion effects to a static photo avatar. The endpoint returns a new ID for the motion-enabled avatar." }, { "slug": "HEYGEN_CHECK_PHOTO_LOOK_GENERATION_STATUS", "name": "Check photo/look generation status", "description": "Tool to retrieve the current status and details of a photo avatar or look generation by its ID. Use when you need to check if a photo avatar generation is complete or monitor generation progress." }, { "slug": "HEYGEN_CREATE_FOLDER", "name": "Create a new folder", "description": "Tool to create a new folder under your HeyGen account. Use when you need to organize content by creating a new folder. Once created, you can place videos in the folder by providing the folder_id parameter when generating videos." }, { "slug": "HEYGEN_CREATE_KNOWLEDGE_BASE", "name": "Create knowledge base", "description": "Tool to create a new knowledge base with a specified name, opening line, and custom prompt for Interactive Avatar streaming sessions. Use when you need to set up a new knowledge base with custom AI behavior." }, { "slug": "HEYGEN_CREATE_PHOTO_AVATAR_GROUP", "name": "Create photo avatar group", "description": "Tool to create an avatar group which can include both AI-generated and user-uploaded photos of the avatar. Use when you need to create a new avatar group for training or managing avatar photos." }, { "slug": "HEYGEN_CREATE_WEBM_VIDEO", "name": "Create WebM video", "description": "Tool to create a WebM format video with transparent background featuring an avatar speaking text or audio. Use when you need to generate WebM videos with transparent backgrounds for overlaying on other content. Note that this API endpoint does not support custom avatars - only HeyGen's studio avatars are supported. The output format will be WebM instead of MP4 to preserve transparency." }, { "slug": "HEYGEN_DELETE_AN_AVATAR_VIDEO", "name": "Delete an avatar video", "description": "Tool to delete a video by its ID from HeyGen account. Supports deletion of both generated (avatar) videos and translated videos. Use when you need to remove a video that is no longer required or to manage storage." }, { "slug": "HEYGEN_DELETE_ASSET", "name": "Delete asset", "description": "Tool to delete a specific asset by its unique asset ID from HeyGen account. Use when you need to remove an asset (image, video, or audio) that is no longer required." }, { "slug": "HEYGEN_DELETE_KNOWLEDGE_BASE", "name": "Delete knowledge base", "description": "Tool to delete a specific knowledge base by its ID. Use when you need to permanently remove a knowledge base from the HeyGen streaming platform." }, { "slug": "HEYGEN_DELETE_PHOTO_AVATAR", "name": "Delete photo avatar", "description": "Tool to delete a photo avatar by its ID from HeyGen account. Use when you need to remove a photo avatar that is no longer required." }, { "slug": "HEYGEN_DELETE_PHOTO_AVATAR_GROUP", "name": "Delete photo avatar group", "description": "Tool to delete a photo avatar group by its ID from HeyGen account. Use when you need to remove a photo avatar group that is no longer required." }, { "slug": "HEYGEN_DELETE_WEBHOOK_ENDPOINT", "name": "Delete webhook endpoint", "description": "Tool to permanently delete a webhook endpoint from HeyGen. Use when you no longer need to receive webhook notifications for a specific endpoint." }, { "slug": "HEYGEN_GENERATE_PHOTO_AVATAR_PHOTOS", "name": "Generate photo avatar photos", "description": "Tool to generate a personalized AI avatar based on text prompts and attribute inputs. Use when you need to create custom AI-generated avatar photos with specific characteristics like age, gender, ethnicity, pose, and appearance details." }, { "slug": "HEYGEN_GENERATE_TEXT_TO_SPEECH", "name": "Generate text-to-speech audio", "description": "Tool to generate a speech audio file from any text input using a specified voice, powered by HeyGen's Starfish model. Use when you need to convert text to speech audio with high-quality voice synthesis." }, { "slug": "HEYGEN_GENERATE_VOICE_AUDIO_PREVIEW", "name": "Generate voice audio preview", "description": "Tool to generate a short audio preview with the specified voice and text. Use when you need to synthesize short audio clips using selected voices before creating full videos. This is an Enterprise-only feature that consumes API credits and is currently in Beta." }, { "slug": "HEYGEN_GET_CURRENT_USER_INFORMATION", "name": "Get current user information", "description": "Tool to retrieve the profile information of the currently authenticated user. Use when you need to fetch user details including username, email, full name, subscription status, and quotas." }, { "slug": "HEYGEN_GET_TRAINING_JOB_STATUS", "name": "Get training job status", "description": "Tool to retrieve the current training status and details of a photo avatar training job by group ID. Use when you need to check training progress, monitor job completion, or verify if training has finished successfully." }, { "slug": "HEYGEN_KEEP_ALIVE_STREAMING_SESSION", "name": "Keep alive streaming session", "description": "Tool to reset the idle timeout counter for an active streaming session. Use when you need to prevent a streaming session from timing out during periods of inactivity." }, { "slug": "HEYGEN_LIST_ALL_AVATAR_GROUPS", "name": "List all avatar groups", "description": "Tool to retrieve a list of all available avatar groups in your HeyGen account. Use when you need to fetch all avatar groups for content management or selection purposes." }, { "slug": "HEYGEN_LIST_ALL_LOCALES_FOR_VOICES", "name": "List all locales for voices", "description": "Tool to retrieve available locales for multilingual voices. Use when you need to access locale identifiers that can be used with multilingual voices for video generation." }, { "slug": "HEYGEN_LIST_ASSETS", "name": "List assets", "description": "Tool to retrieve a paginated list of all assets (images, audios, videos) created under your account. Use when you need to fetch assets for content management or track uploaded resources. Supports filtering by file type and folder, as well as cursor-based pagination." }, { "slug": "HEYGEN_LIST_BRAND_VOICES", "name": "List brand voices", "description": "Tool to retrieve a list of brand glossaries created under your account. Use when you need to access brand voice definitions that maintain consistent terminology and pronunciation across videos." }, { "slug": "HEYGEN_LIST_FOLDERS", "name": "List folders", "description": "Tool to retrieve a paginated list of folders created under your account. Use when you need to organize or browse folder structures in HeyGen. Supports cursor-based pagination using the token parameter." }, { "slug": "HEYGEN_LIST_GROUP_AVATARS", "name": "List avatars in a specific group", "description": "Tool to retrieve all avatars that belong to a specific avatar group. Use when you need to fetch all avatars within a particular group for content management or selection purposes." }, { "slug": "HEYGEN_LIST_KNOWLEDGE_BASES", "name": "List knowledge bases", "description": "Tool to retrieve a list of all existing knowledge bases associated with your account. Use when you need to view available knowledge bases for streaming interactions." }, { "slug": "HEYGEN_LIST_SESSION_HISTORY", "name": "List session history", "description": "Tool to retrieve a paginated history of all streaming sessions with metadata including session duration, timestamps, and other details. Use when you need to view historical streaming session data for reporting or analysis purposes." }, { "slug": "HEYGEN_LIST_STREAMING_AVATARS", "name": "List streaming avatars", "description": "Tool to retrieve a list of public and custom interactive avatars for streaming. Use when you need to fetch available avatars for interactive streaming sessions." }, { "slug": "HEYGEN_LIST_TTS_VOICES", "name": "List TTS voices", "description": "Tool to retrieve a list of public and custom voices compatible with HeyGen's Starfish TTS model. Use when you need to access available voices for text-to-speech audio generation in videos." }, { "slug": "HEYGEN_NEW_SESSION", "name": "Create new streaming session", "description": "Tool to initiate a new streaming session with an Interactive Avatar for real-time interactions. Use when starting a new avatar streaming session to get WebSocket connection details including session_id, URL, and access_token." }, { "slug": "HEYGEN_PERSONALIZED_VIDEO_ADD_CONTACT", "name": "Add contact to personalized video project", "description": "This endpoint allows you to add one or more contacts to a specific personalized video project in the Heygen platform. It is used when you need to associate individual contact information with a project, likely for the purpose of creating tailored video content for each contact. The endpoint accepts a project identifier and a list of contacts, each with a first name and email address. This tool is essential for populating your project with recipient data, enabling the creation of personalized videos at scale. Note that this endpoint only adds contacts to a project; it does not initiate video creation or sending. Ensure that your project_id is valid and that all contact information is accurate to avoid errors in video personalization or delivery." }, { "slug": "HEYGEN_PERSONALIZED_VIDEO_PROJECT_DETAIL", "name": "Fetch personalized video project detail", "description": "Retrieves detailed information about a specific personalized video project in HeyGen, including status, settings, and metadata. Use this to check project progress or review configuration. Read-only endpoint. The project ID must be obtained from the HeyGen web interface - there is no API to list projects. Go to Personalized Video section, select a project, and copy the Project ID from the API setup page. May require Enterprise subscription." }, { "slug": "HEYGEN_PHOTO_AVATAR_DETAILS", "name": "Get photo avatar details", "description": "Tool to retrieve detailed information about a photo avatar or look using its unique ID. Use when you need to get comprehensive information about a specific photo avatar including status, metadata, and configuration details." }, { "slug": "HEYGEN_POST_TALKING_PHOTO_BINARY_IMAGE", "name": "Post talking photo binary image", "description": "Creates a talking photo by processing an uploaded image file. This endpoint enables users to transform static images into interactive, speaking visual content using HeyGen's advanced AI technology. It accepts JPEG or PNG image files and likely combines them with audio narration (though audio input is not specified in this schema). Use this endpoint when you want to generate engaging, personalized content from still images, such as creating speaking avatars or animated photographs. The endpoint is particularly useful for marketing materials, educational content, or personalized messages. Note that while image upload is specified, the method for providing or generating the associated audio is not detailed in this schema." }, { "slug": "HEYGEN_RESTORE_FOLDER", "name": "Restore folder from trash", "description": "Tool to restore a previously deleted folder from trash by its unique folder ID. Use when you need to recover a folder that was moved to trash." }, { "slug": "HEYGEN_RETRIEVE_AVATAR_DETAILS", "name": "Retrieve avatar details", "description": "Tool to retrieve detailed information about a specific avatar by its ID. Use when you need to get comprehensive information about an avatar including identification details, display properties, and preview media URLs." }, { "slug": "HEYGEN_RETRIEVE_SHARABLE_VIDEO_URL", "name": "Retrieve sharable video URL", "description": "Tool to generate a public, shareable URL for a specific video by ID. Use when you need to create a public link that allows anyone to view the video without authentication. The generated URL can be shared with anyone and does not require HeyGen account access. Generated URLs may be time-limited; call this tool again to refresh the link if it expires." }, { "slug": "HEYGEN_RETRIEVE_TEMPLATE_DETAILS_V3", "name": "Retrieve template details v3", "description": "Tool to retrieve comprehensive details about a specific template including all available variables for replacement and scene mappings for templates built in the New AI Studio. Use when you need to understand the structure, available customization options, variables, and scene configurations of a template before generating videos from it." }, { "slug": "HEYGEN_RETRIEVE_VIDEO_STATUS_DETAILS", "name": "Retrieve video status details", "description": "Tool to retrieve the current processing status and metadata for a specific video by ID. Use when you need to check video processing progress, get time-limited URLs for video downloads, or monitor video generation completion. Video rendering is asynchronous and typically takes 30–180+ seconds; poll at moderate intervals rather than tight loops. Verify returned URLs are accessible before surfacing to users. Note that returned URLs expire after 7 days but can be regenerated by calling this endpoint again." }, { "slug": "HEYGEN_SEARCH_PUBLIC_AVATAR_GROUPS", "name": "Search public avatar groups", "description": "Tool to search and retrieve public avatar groups with optional filters and pagination. Use when you need to find specific avatar groups by tags, name, or browse available public avatars." }, { "slug": "HEYGEN_STREAMING_CREATE_TOKEN", "name": "Create streaming token with expiry", "description": "Creates a new streaming token for use with HeyGen's real-time avatar and voice chat services. This endpoint generates a unique, time-limited token that authenticates and authorizes access to HeyGen's streaming capabilities. Use this endpoint when initiating a new streaming session or when the previous token has expired. The generated token is typically for one-time use and should be obtained shortly before starting a streaming interaction. Note that this endpoint does not initiate the streaming itself; it only provides the necessary credentials for subsequent streaming API calls." }, { "slug": "HEYGEN_STREAMING_ICE", "name": "Post streaming ice candidates", "description": "This endpoint is used to submit ICE (Interactive Connectivity Establishment) candidate information for a specific streaming session in the Heygen platform. It plays a crucial role in establishing and managing peer-to-peer connections for real-time communication and streaming of avatar content. The endpoint should be called when new ICE candidates are discovered during the connection setup process, typically as part of the WebRTC negotiation. It's essential for ensuring optimal connectivity between clients, especially in scenarios involving NAT traversal or complex network environments. This endpoint does not return the status of the connection or initiate the streaming itself; it only submits candidate information to be used in the connection process." }, { "slug": "HEYGEN_STREAMING_INTERRUPT", "name": "Interrupt streaming session", "description": "Interrupts an ongoing streaming session with an interactive avatar. This endpoint allows immediate termination of the avatar's current action or speech, providing control over the flow of interaction. Use this when you need to abruptly stop the avatar's current behavior, such as when changing topics or responding to user input that requires a different response. The interruption is immediate and irreversible, so use it judiciously to maintain a smooth user experience. This endpoint is particularly useful in scenarios where real-time responsiveness is crucial, like in customer service applications or interactive presentations." }, { "slug": "HEYGEN_STREAMING_LIST", "name": "Retrieve streaming list", "description": "Retrieves a list of active or available streaming sessions or content within the HeyGen platform. This endpoint allows users to get an overview of ongoing streams, which may include live avatar interactions, real-time video generations, or other streaming content created using HeyGen's AI-driven tools. It's particularly useful for monitoring current streaming activities or checking the availability of streams for integration into applications. The endpoint returns basic information about each stream, such as stream IDs, status, and possibly metadata, but does not provide the actual stream content. Use this when you need to track or display a list of active streams in your application's interface or for administrative purposes." }, { "slug": "HEYGEN_STREAMING_NEW", "name": "Set streaming quality endpoint", "description": "Initiates a new streaming session with HeyGen, allowing users to start an avatar-based stream with specified quality settings. This endpoint should be used when starting a new interactive content session or when creating a personalized digital avatar stream. It sets up the initial configuration for the streaming quality, which affects the overall user experience and bandwidth usage. The endpoint does not handle the actual streaming content or avatar creation; it only establishes the session parameters." }, { "slug": "HEYGEN_STREAMING_START", "name": "Start streaming session", "description": "Initiates a new streaming session for real-time communication in the HeyGen platform. This endpoint is used to set up a WebRTC connection for video, audio, and data streaming, likely for interactions with AI avatars. It requires a unique session ID and a Session Description Protocol (SDP) offer to establish the connection. This endpoint should be called when starting a new interactive session with a HeyGen AI avatar or when initiating a live streaming event. It's crucial for setting up the initial parameters of the real-time communication channel." }, { "slug": "HEYGEN_STREAMING_STOP", "name": "Stop streaming session", "description": "The streaming.stop endpoint is used to terminate an active streaming session in the Heygen API. This endpoint should be called when you want to end a real-time data transfer session, such as when closing an interactive avatar conversation or stopping a live content stream. It's particularly useful for freeing up server resources and ensuring proper closure of streaming connections. The endpoint requires the unique session_id to identify which specific session to stop, allowing for precise control over multiple concurrent sessions. Note that once a session is stopped, it cannot be resumed; a new session must be started if streaming is needed again." }, { "slug": "HEYGEN_STREAMING_TASK", "name": "Send task to streaming avatar", "description": "The StreamingTask endpoint initiates a real-time speaking task for an AI-driven avatar within an active streaming session. It enables developers to make avatars vocalize specified text, creating interactive and dynamic user experiences. This endpoint should be used when you want to generate speech from an avatar in response to user input or as part of a scripted interaction. It's particularly useful for applications requiring real-time avatar interactions, such as virtual assistants, interactive presentations, or educational content. Note that this endpoint requires an active streaming session, and the avatar's voice and appearance are determined by the session configuration." }, { "slug": "HEYGEN_TRASH_FOLDER", "name": "Move folder to trash", "description": "Tool to move a specific folder to trash by its unique folder ID. Use when you need to delete a folder from HeyGen (soft delete - can be recovered later)." }, { "slug": "HEYGEN_UPDATE_FOLDER", "name": "Update folder name", "description": "Tool to update (rename) an existing folder by its unique folder ID. Use when you need to change the name of a folder in HeyGen." }, { "slug": "HEYGEN_UPDATE_KNOWLEDGE_BASE", "name": "Update knowledge base", "description": "Tool to update an existing knowledge base by its ID. Use when you need to modify the name, opening line, or custom prompt of a knowledge base for Interactive Avatar streaming sessions." }, { "slug": "HEYGEN_UPDATE_WEBHOOK_ENDPOINT", "name": "Update webhook endpoint", "description": "Tool to modify an existing webhook endpoint configuration including URL and subscribed event types. Use when you need to update webhook settings or change event subscriptions for an existing endpoint." }, { "slug": "HEYGEN_UPLOAD_ASSET", "name": "Upload asset", "description": "Tool to upload a file asset (image, video, or audio) to HeyGen platform. Use when you need to upload media files for use in video generation or other HeyGen services." }, { "slug": "HEYGEN_UPSCALE_AN_AVATAR", "name": "Upscale motion avatar", "description": "Tool to enhance the resolution and visual quality of a motion avatar. Use when you need to improve avatar quality for higher resolution output. Important: Upscaling can ONLY be performed on motion avatars/looks - the avatar must first have motion added using the Add Motion endpoint." }, { "slug": "HEYGEN_V1_AVATAR_LIST", "name": "List avatars endpoint", "description": "Retrieves a list of available avatars from the Heygen platform. This endpoint allows users to fetch both public and private avatars, depending on their access rights and the specified parameters. It's particularly useful for applications that need to display available avatars to users for selection or customization. The endpoint supports pagination to handle large numbers of avatars efficiently. Use this when you need to present avatar options to users, manage avatar inventories, or sync local avatar data with the Heygen platform. Note that the response will likely include basic information about each avatar, such as ID, name, and type, but may not include full avatar details or assets." }, { "slug": "HEYGEN_V1_TALKING_PHOTO_LIST", "name": "List talking photo entries", "description": "Retrieves a list of talking photos created using the HeyGen platform. This endpoint allows users to fetch information about their existing talking photo projects, which are interactive images capable of speaking and engaging users. It's useful for managing and reviewing your talking photo content, or for integrating talking photo information into your application. The endpoint returns details about each talking photo, potentially including identifiers, creation dates, and associated metadata. Note that this endpoint likely returns all talking photos by default, so for users with a large number of projects, implementing client-side filtering or pagination may be necessary." }, { "slug": "HEYGEN_V1_VIDEO_LIST", "name": "List videos", "description": "Retrieves a list of videos associated with the user's account on the HeyGen platform. This endpoint is crucial for content management, allowing users to view and organize their video library efficiently. It provides an overview of all videos created or managed through the HeyGen service, including AI-generated videos with custom avatars. Use this endpoint when you need to display a comprehensive list of videos, manage content, or track video creation progress. The response likely includes metadata for each video such as title, creation date, duration, and status. Note that this endpoint does not provide the actual video content or detailed analytics; it's primarily for listing and basic information retrieval." }, { "slug": "HEYGEN_V1_VOICE_LIST", "name": "List voice endpoints", "description": "Retrieves a comprehensive list of all available voices in the HeyGen platform. This endpoint should be used when you need to obtain information about the voice options that can be utilized for avatar creation or text-to-speech functionalities. The returned list likely includes details such as voice IDs, names, languages, and potentially other characteristics like gender or accent. It's particularly useful for applications that need to present voice choices to users or for initializing voice-related features. Note that this endpoint does not provide audio samples of the voices; it only lists their metadata." }, { "slug": "HEYGEN_V1_WEBHOOK_ENDPOINT_ADD", "name": "Add webhook endpoint", "description": "Adds a new webhook endpoint to receive real-time notifications for specified Heygen events. This endpoint allows you to configure where and for which events you want to receive updates, enabling seamless integration of Heygen's capabilities into your application. Use this when you need to set up automated responses to specific events in the Heygen platform, such as avatar creation or video completion. The webhook will send POST requests to the specified URL whenever the subscribed events occur. Note that you may need to implement proper security measures on your receiving endpoint to validate incoming webhook requests." }, { "slug": "HEYGEN_V1_WEBHOOK_ENDPOINT_LIST", "name": "List webhook endpoints", "description": "Retrieves a list of all webhook endpoints configured for your HeyGen account. This endpoint allows you to view and manage the webhook configurations that receive notifications about various events in your HeyGen integration. Use this endpoint to monitor your existing webhook setups, verify their status, or gather information for updating or removing webhooks. The response will likely include details such as the endpoint URLs, associated event types, and current status of each webhook. This tool is particularly useful for developers managing multiple webhook integrations or troubleshooting notification issues within their HeyGen-powered applications." }, { "slug": "HEYGEN_V1_WEBHOOK_WEBHOOK_LIST", "name": "List webhooks", "description": "Retrieves a list of all available webhook event types that can be subscribed to in your HeyGen account. This endpoint returns the complete list of event types that HeyGen supports for webhook notifications, such as avatar video success/failure events, video translation events, personalized video events, instant avatar events, photo avatar events, and more. Use this endpoint when you need to discover which webhook events are available for subscription before configuring your webhook endpoints. Note that this endpoint only lists the available event types - to manage actual webhook endpoint configurations, use the webhook endpoint.list, endpoint.add, and endpoint.delete endpoints." }, { "slug": "HEYGEN_V2_TALKING_PHOTO_ID_DELETE", "name": "Delete talking photo by id", "description": "Deletes a specific talking photo from the HeyGen platform using its unique identifier. This endpoint should be used when you need to permanently remove a talking photo resource, such as when it's no longer needed or to manage storage. Once deleted, the talking photo cannot be recovered, so use this endpoint with caution. It's important to note that this operation does not affect any videos or content that may have already been generated using this talking photo." }, { "slug": "HEYGEN_V2_TEMPLATE_GENERATE", "name": "Generate video template with variables", "description": "Generates a customized video from a pre-existing template using HeyGen's AI platform. Accepts a video title and template variables to personalize content. Ideal for creating tailored videos at scale like personalized marketing, educational content, or custom presentations. Supports test mode, captions, and custom dimensions. IMPORTANT: First retrieve template variable definitions using 'Get template by id' (GET /v2/template/{id}). Variable names must exactly match those from that endpoint, or the API will reject with 'Invalid variable name' error." }, { "slug": "HEYGEN_V2_TEMPLATE_ID", "name": "Get template by id", "description": "Retrieves a specific template from the HeyGen platform using its unique identifier. This endpoint allows users to access detailed information about a particular template, including its structure, elements, and customization options. It's particularly useful when you need to review or use an existing template for video creation or modification. The endpoint returns comprehensive template data, which may include settings for avatars, content placeholders, and customization parameters. Use this when you want to fetch the complete details of a known template before applying it to create or edit a video. Note that this endpoint retrieves template information only and does not create or modify any content." }, { "slug": "HEYGEN_V2_TEMPLATES", "name": "Retrieve all templates", "description": "Retrieves a list of available avatar templates from the HeyGen platform. This endpoint allows users to access pre-designed avatars that can be used for creating professional-looking videos. It's particularly useful when you need to browse or select from HeyGen's library of realistic avatars for your video projects. The endpoint returns template information, which likely includes details such as template IDs, names, preview images, and customization options. Use this endpoint when you want to display available avatar options to users or when you need to select a template for video generation." }, { "slug": "HEYGEN_V2_USER_REMAINING_QUOTA", "name": "Retrieve user remaining quota", "description": "Retrieves the current remaining quota for the authenticated user on the HeyGen platform. This endpoint allows users to check their available resources or actions within their account limits. It should be used to monitor usage and plan resource allocation effectively. The returned information helps users understand how much of their quota is left before reaching account limits. Note that this endpoint does not provide details on total quota or usage history, focusing solely on the remaining available quota." }, { "slug": "HEYGEN_V2_VIDEO_GENERATE", "name": "Generate video with inputs", "description": "Generates a customized video using Heygen's AI-driven platform. This endpoint allows you to create videos featuring digital avatars with specified voices, enabling dynamic content creation. It's ideal for producing personalized video content, such as explainer videos, product demonstrations, or interactive presentations. The endpoint supports multiple input configurations, allowing for complex video scenarios with different characters and voices. Use this when you need to programmatically create AI-generated videos with specific avatar and voice combinations. Note that while the endpoint offers extensive customization, real-time video generation is not supported, and processing times may vary based on complexity and system load." }, { "slug": "HEYGEN_V2_VIDEO_TRANSLATE", "name": "Post video translate request", "description": "The TranslateVideo endpoint enables the translation of video content from one language to another. It offers flexible options for translating either the entire video or just the audio track, accommodating various use cases. This tool is ideal for creating multilingual versions of video content, making it accessible to a global audience. The endpoint requires specifying the source video URL and the desired output language, with additional options to customize the translation process, such as handling multiple speakers and setting a title for the translated video. Use this endpoint when you need to quickly and efficiently translate video content while maintaining the integrity of the original presentation." }, { "slug": "HEYGEN_V2_VIDEO_TRANSLATE_ID_STATUS", "name": "Retrieve video translation by id", "description": "Retrieves the current status of a video translation job in the HeyGen platform. This endpoint allows users to check the progress of their requested video translations, providing information such as whether the translation is in progress, completed, or if any errors have occurred. It should be used when tracking the state of an ongoing translation task or to confirm if a translation has finished processing. The endpoint does not modify the translation job or initiate new translations; it's purely for status checking purposes." }, { "slug": "HEYGEN_V2_VIDEO_TRANSLATE_TARGET_LANGUAGES", "name": "Retrieve video translation target languages", "description": "Retrieves a list of all available target languages supported by HeyGen's video translation feature. This endpoint should be used when you need to know which languages are available for translating your video content. It provides an up-to-date array of supported languages, including various dialects and locales, allowing you to make informed decisions about your video translation projects. The endpoint does not require any parameters and will return the complete list of supported languages, which currently includes over 77 options. This tool is particularly useful for planning multilingual content strategies or when preparing to use HeyGen's video translation services." }, { "slug": "HEYGEN_V2_VOICES", "name": "List available voices", "description": "Retrieves a list of available voice models and options that can be used with HeyGen's AI-driven video creation platform. This endpoint provides information about the various voice options, including different languages and voice characteristics, which can be applied to avatars in generated videos. Use this endpoint when you need to present users with voice choices for their video projects or when implementing voice customization features in your application. The returned data likely includes details such as voice ID, language, gender, and other relevant attributes for each available voice model. This endpoint is essential for applications that want to offer a range of voice options to enhance the personalization of AI-generated video content." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "heygen_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret HeyGen API key, which proves requests come from your account. Copy it in the HeyGen app under Settings → API. Note: API calls use separate API credits.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agencyzoom", "name": "AgencyZoom", "logo": "https://logos.composio.dev/api/agencyzoom", "description": "AgencyZoom is for the P&C insurance agent that's looking to increase sales, boost retention and analyze agency & producer performance.", "category": "crm", "authSchemes": [ "API_KEY", "BASIC_WITH_JWT" ], "toolCount": 99, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AGENCYZOOM_AUTHENTICATE_FOR_JWTVIA_V4_SSO", "name": "Authenticate for JWT via V4 SSO", "description": "Completes AgencyZoom V4 Single Sign-On (SSO) authentication by exchanging an OAuth2 authorization code for a JWT token. Prerequisites: First call get_auth_url_for_v4sso to obtain the authentication URL, then redirect the user to that URL for login. After successful authentication through Vertafore's OAuth provider, the callback will include a 'code' parameter. Use that code with this action to obtain the JWT token for API access. Note: This is typically used during initial authentication setup. The code is single-use, time-limited, and must match the PKCE challenge from the original auth request." }, { "slug": "AGENCYZOOM_BATCH_CREATE_CONTACT", "name": "Batch create contacts", "description": "Creates 1 to 5 new contacts in AgencyZoom in a single batch API call." }, { "slug": "AGENCYZOOM_BATCH_CREATE_LEAD", "name": "Batch create leads", "description": "Creates up to 5 new leads in AgencyZoom; all referenced entity IDs (e.g., pipeline, user, custom field names) must exist, and organization `name` is required if `isBusiness` is true." }, { "slug": "AGENCYZOOM_BATCH_DELETE_TASK", "name": "Batch delete tasks", "description": "Deletes multiple AgencyZoom tasks in a batch; task deletion is permanent and the response indicates overall batch success, not individual task status." }, { "slug": "AGENCYZOOM_CHANGE_STATUS_FOR_LEAD", "name": "Change lead status", "description": "Updates a lead's lifecycle status (e.g., Active, Won, Lost, X-Dated) and can optionally manage its workflow, pipeline, stage, source, or associated tags." }, { "slug": "AGENCYZOOM_COMPLETE_TASK", "name": "Mark task as completed", "description": "Marks an existing and accessible task in AgencyZoom as 'completed'; this action does not return the full updated task object." }, { "slug": "AGENCYZOOM_CREATE_A_CUSTOMER_NOTE", "name": "Create a customer note", "description": "Adds a new note to an existing customer's profile using their ID; cannot be used to edit or retrieve existing notes." }, { "slug": "AGENCYZOOM_CREATE_A_DRIVER_FOR_AN_OPPORTUNITY", "name": "Create a driver for an opportunity", "description": "Creates a new driver record associated with an existing AgencyZoom opportunity using its ID; requires firstName and lastName, with optional fields for additional driver details." }, { "slug": "AGENCYZOOM_CREATE_A_LEAD_NOTE", "name": "Create a lead note", "description": "Adds a new note to an existing lead in AgencyZoom, identified by `leadId`." }, { "slug": "AGENCYZOOM_CREATE_A_LEAD_OPPORTUNITY", "name": "Create a lead opportunity", "description": "Adds a new sales opportunity to an existing lead in AgencyZoom, requiring a valid `leadId`, `carrierId`, `productLineId`, and that custom field names match existing definitions in AgencyZoom." }, { "slug": "AGENCYZOOM_CREATE_A_LEAD_QUOTE", "name": "Create a lead quote", "description": "Creates a new insurance quote for an existing lead in AgencyZoom, using valid carrier and product line IDs, to track a proposal; this action does not bind policies or process payments." }, { "slug": "AGENCYZOOM_CREATE_AN_OPPORTUNITY", "name": "Create an opportunity", "description": "Creates a new lead opportunity in AgencyZoom; this action cannot update existing opportunities." }, { "slug": "AGENCYZOOM_CREATE_A_VEHICLE_FOR_AN_OPPORTUNITY", "name": "Create a vehicle for an opportunity", "description": "Adds a new vehicle record to a specified opportunity; `opportunityId` must refer to a valid, existing opportunity." }, { "slug": "AGENCYZOOM_CREATE_BIZ_LEAD", "name": "Create business lead", "description": "Creates or updates a business lead in AgencyZoom using detailed personal and company information, for B2B sales and marketing lead management." }, { "slug": "AGENCYZOOM_CREATE_LEAD", "name": "Create lead", "description": "Creates a new lead or updates an existing one in AgencyZoom; ensure `pipelineId`, `stageId`, `leadSourceId`, and `assignTo` reference valid, existing entities." }, { "slug": "AGENCYZOOM_CREATE_TASK", "name": "Create task post endpoint", "description": "Creates a new task in AgencyZoom; ensure `assigneeId`, `customerId`, or `leadId` are valid existing entities if provided, and use `contactEmail`, `customerId`, or `leadId` to link the task to a contact." }, { "slug": "AGENCYZOOM_DELETE_A_CUSTOMER", "name": "Delete a customer", "description": "Irreversibly deletes a customer and all associated data in AgencyZoom using their `customerId`; useful for offboarding or data privacy compliance." }, { "slug": "AGENCYZOOM_DELETE_A_CUSTOMER_FILE", "name": "Delete customer file", "description": "Permanently deletes a specific file, identified by `fileId`, associated with a customer, identified by `customerId`." }, { "slug": "AGENCYZOOM_DELETE_A_CUSTOMER_POLICY", "name": "Delete a customer policy", "description": "Permanently deletes a specific policy associated with a customer, for instance, if it's cancelled or inactive; this action is irreversible and requires caution." }, { "slug": "AGENCYZOOM_DELETE_A_DRIVER", "name": "Delete an opportunity driver by ID", "description": "Permanently deletes an existing driver record (a person associated with an insurance opportunity) from AgencyZoom using its unique `driverId`; this action is irreversible." }, { "slug": "AGENCYZOOM_DELETE_A_LEAD_FILE", "name": "Delete file from lead", "description": "Deletes a specific file (identified by `fileId`) associated with an existing lead (identified by `leadId`); this operation is irreversible." }, { "slug": "AGENCYZOOM_DELETE_A_LEAD_OPPORTUNITY", "name": "Delete a lead opportunity", "description": "Permanently deletes an existing opportunity (by `opportunityId`) associated with an existing lead (by `leadId`) when it's irrelevant, closed, or erroneous; the lead itself remains." }, { "slug": "AGENCYZOOM_DELETE_A_LEAD_QUOTE", "name": "Delete a lead quote", "description": "Deletes a specific quote from a lead, requiring that the lead and quote exist and are associated." }, { "slug": "AGENCYZOOM_DELETE_AN_OPPORTUNITY", "name": "Delete an opportunity", "description": "Permanently deletes a specific opportunity by its unique ID; this action is irreversible and requires a valid, existing `opportunityId`." }, { "slug": "AGENCYZOOM_DELETE_A_TASK", "name": "Delete a task", "description": "Permanently and irreversibly deletes an existing task, identified by its `taskId`." }, { "slug": "AGENCYZOOM_DELETE_A_VEHICLE", "name": "Delete a vehicle", "description": "Permanently deletes a vehicle record by its `vehicleId`, which must correspond to an existing vehicle in the AgencyZoom system." }, { "slug": "AGENCYZOOM_DELETE_MESSAGE", "name": "Delete thread message", "description": "Deletes a specific message from an email thread within AgencyZoom. Requires the message ID to identify which message to remove. Returns the updated thread information with the remaining messages after deletion." }, { "slug": "AGENCYZOOM_DELETE_THREAD", "name": "Delete email thread", "description": "Permanently deletes a specific email thread from the AgencyZoom system, identified by its `threadId` (expected by the endpoint), provided the thread exists." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_ASSIGN_GROUPS", "name": "Get a list of assign groups", "description": "Retrieves all assign groups configured in AgencyZoom, used for categorizing or assigning items to specific teams or units." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_CARRIERS", "name": "Get a list of carriers", "description": "Retrieves all insurance carriers from AgencyZoom, typically used for populating selection lists or synchronizing carrier data; does not return detailed policy or coverage information." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_CSRS", "name": "Get a list of CSRs", "description": "Fetches all Customer Service Representatives (CSRs), including their ID and name, returning an empty list if none are configured." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_CUSTOM_FIELDS", "name": "Get a list of custom fields", "description": "Retrieves metadata for all configured custom field definitions, not the specific values entered for individual records." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_DRIVERS_FOR_AN_OPPORTUNITY", "name": "Get a list of drivers for an opportunity", "description": "Retrieves a list of drivers (individuals), including their personal details, licensing information, and relationship status, associated with a specific, existing `opportunityId` in AgencyZoom." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_EMPLOYEES", "name": "Get a list of employees", "description": "Retrieves a complete list of all employees for the authenticated agency; returns an empty list if no employees are configured." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_LEAD_SOURCE_CATEGORIES", "name": "Get lead source categories", "description": "Retrieves a comprehensive list of all predefined lead source categories from AgencyZoom, used to classify lead origins." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_LEAD_SOURCES", "name": "Get lead sources", "description": "Fetches a list of all lead sources configured in AgencyZoom, including their ID, name, sales exclusion status, and category ID." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_LIFE_PROFESSIONALS", "name": "Get a list of life professionals", "description": "Retrieves a list of life insurance professionals, including only their contact and status information (excluding sales or customer data), from the AgencyZoom platform." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_LOCATIONS", "name": "Get a list of locations", "description": "Retrieves all agency locations or branches from AgencyZoom; filtering options are not available." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_LOSS_REASONS", "name": "Get loss reasons", "description": "Retrieves all predefined loss reasons (e.g., 'Lost to competitor', 'Premium too high') available in AgencyZoom. These reasons can be used when marking leads as lost or for reporting purposes. No parameters required - returns complete list." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_PIPELINES", "name": "Get a list of pipelines", "description": "Retrieves all pipelines and their stages from AgencyZoom to understand workflow structures; this is a read-only operation and does not return individual items (like leads or tasks) within these pipelines." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_PRODUCER", "name": "Get a list of producers", "description": "Retrieves a list of all producers from AgencyZoom, typically related to text thread functionalities." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_PRODUCT_LINES_POLICY_TYPES", "name": "Get product lines and policy types", "description": "Fetches all product lines and policy types from AgencyZoom, each detailed with its ID, name, and product category ID." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_RECYCLE_EVENTS", "name": "Get a list of recycle events", "description": "Retrieves the available recycle event types and any existing X-Date information for a specified lead in AgencyZoom. Returns a list of recycle event categories that can be used to trigger follow-ups (e.g., 'X-Date', 'Accident Falls Off', 'Prior Insurance Fulfilled')." }, { "slug": "AGENCYZOOM_GET_A_LIST_OF_VEHICLES_FOR_AN_OPPORTUNITY", "name": "Retrieve vehicles for opportunity", "description": "Retrieves all vehicles associated with an existing opportunity, using its unique opportunityId." }, { "slug": "AGENCYZOOM_GET_AMS_POLICIES_FOR_A_CUSTOMER", "name": "Get AMS policies for a customer", "description": "Retrieves a customer's synchronized Agency Management System (AMS) policy data (typically a single policy); requires an active AMS integration, may return empty/default values if data is missing." }, { "slug": "AGENCYZOOM_GET_AUTH_URL_FOR_V4_SSO", "name": "Get auth URL for V4 SSO", "description": "Retrieves a fresh authentication URL for AgencyZoom's V4 Single Sign-On (SSO) process; call before each SSO attempt as the URL may change and should not be cached." }, { "slug": "AGENCYZOOM_GET_DEPARTMENTS_GROUPS", "name": "Get departments groups", "description": "Fetches department and group information for an agency, optionally filtered by a specific `agencyNumber`, to analyze its organizational structure." }, { "slug": "AGENCYZOOM_GET_LEAD_FILES", "name": "Get lead files", "description": "Retrieves metadata (id, title, MIME type, size, dates, creator info) for files attached to leads in AgencyZoom. Optionally filter by `leadId` to get files for a specific lead, or omit to retrieve files across all leads. Returns file metadata only, not the actual file content." }, { "slug": "AGENCYZOOM_GET_LEAD_NOTES", "name": "Retrieve notes for specific lead", "description": "Fetches the complete history of notes for a specific lead by `leadId` (which must exist), useful for reviewing context for communications or follow-ups; this is a read-only operation." }, { "slug": "AGENCYZOOM_GET_LEAD_QUOTES", "name": "Get lead quotes", "description": "Retrieves all insurance quotes (active and inactive) for a specific lead ID, useful for reviewing or tracking quote history." }, { "slug": "AGENCYZOOM_GET_LEAD_TASKS", "name": "Get lead tasks", "description": "Retrieves all tasks for a specific lead, identified by its `leadId`, to review its activity history or manage follow-ups." }, { "slug": "AGENCYZOOM_GET_LIST_OF_END_STAGES", "name": "Get list of end stages", "description": "Fetches a list of all defined end stages, representing final steps in processes like lead conversion or policy closure." }, { "slug": "AGENCYZOOM_GET_POLICIES_FOR_A_CUSTOMER", "name": "Get policies for a customer", "description": "Retrieves from AgencyZoom all insurance policies for an existing customer (identified by `customerId`), including policy details like type, carrier, premium, effective dates, and assigned agents. Excludes premium payment history or claims information." }, { "slug": "AGENCYZOOM_GET_THE_CUSTOMER_DETAILS", "name": "Get the customer details", "description": "Fetches comprehensive details for a specific customer, including personal information, policies, notes, tasks, files, and custom fields, using their unique customer ID." }, { "slug": "AGENCYZOOM_GET_THE_CUSTOMER_TASKS", "name": "Get the customer tasks", "description": "Fetches all tasks (read-only task data) for a customer by `customerId` to review their activities, follow-ups, and action items; the `customerId` must be valid." }, { "slug": "AGENCYZOOM_GET_THE_DRIVER_DETAILS", "name": "Get the driver details", "description": "Retrieves detailed information for a specific, existing driver (by `driverId`) associated with an AgencyZoom opportunity." }, { "slug": "AGENCYZOOM_GET_THE_LEAD_DETAILS", "name": "Get the lead details", "description": "Retrieves comprehensive details for a specific lead in AgencyZoom by its unique `leadId` (which must correspond to an existing lead), including contact information, status, associated opportunities, quotes/policies, custom fields, and interaction history." }, { "slug": "AGENCYZOOM_GET_THE_OPPORTUNITIES_FOR_A_LEAD", "name": "Get the opportunities for a lead", "description": "Retrieves all sales opportunities and their details for a specified, existing `leadId` in AgencyZoom." }, { "slug": "AGENCYZOOM_GET_THE_OPPORTUNITY_DETAILS", "name": "Get the opportunity details", "description": "Fetches comprehensive details for an existing opportunity using its unique `opportunityId`." }, { "slug": "AGENCYZOOM_GET_THE_TASK_DETAILS", "name": "Get the task details", "description": "Retrieves comprehensive details for a specific task using its unique `taskId`, which must correspond to an existing task in AgencyZoom." }, { "slug": "AGENCYZOOM_GET_THE_VEHICLE_DETAILS", "name": "Get the vehicle details", "description": "Retrieves detailed information for a specific vehicle, often associated with an AgencyZoom opportunity, using its unique vehicleId." }, { "slug": "AGENCYZOOM_GET_THREAD_DETAILS", "name": "Get thread details", "description": "Searches and retrieves detailed information for email threads in AgencyZoom; no explicit search criteria are passed in this request." }, { "slug": "AGENCYZOOM_LINK_A_DRIVER_TO_OPPORTUNITY", "name": "Link a driver to opportunity", "description": "Assigns or reassigns an existing driver to an existing opportunity." }, { "slug": "AGENCYZOOM_LINK_A_VEHICLE_TO_OPPORTUNITY", "name": "Link vehicle to opportunity", "description": "Links an existing vehicle to an existing sales opportunity in AgencyZoom using their respective IDs, typically for managing auto insurance policies or related services." }, { "slug": "AGENCYZOOM_LIST_PRODUCT_CATEGORIES", "name": "List Product Categories", "description": "Retrieves a complete, unfiltered list of all product categories (ID and name) from AgencyZoom, useful for understanding product organization or populating UI elements." }, { "slug": "AGENCYZOOM_LOG_THE_USER_IN", "name": "Log the user in", "description": "Authenticates an existing AgencyZoom user using their email (as username) and password to obtain a JWT for API access; this action does not support new user creation." }, { "slug": "AGENCYZOOM_LOG_THE_USER_OUT", "name": "Log the user out", "description": "Use this action to log the current user out of AgencyZoom by invalidating their active session token." }, { "slug": "AGENCYZOOM_MARK_THREAD_AS_UNREAD_API_ENDPOINT", "name": "Mark thread as unread", "description": "Marks a text thread in AgencyZoom as read or unread using its `threadId`; this action does not modify message content and the specified `threadId` must refer to an existing thread." }, { "slug": "AGENCYZOOM_MOVE_LEAD_TO_SOLD", "name": "Move lead to sold", "description": "Marks an existing lead as sold by its `leadId` and records product details; `productLineId`, `premium`, `effectiveDate`, and `soldDate` are operationally required for each sold product, despite schema flexibility." }, { "slug": "AGENCYZOOM_REMOVE_TEXT_THREAD_ENDPOINT", "name": "Remove text thread", "description": "Call this action to permanently delete an SMS/text message thread in AgencyZoom; the target thread is identified by its `threadId`. Note: This operation is idempotent - deleting a non-existent thread will return success." }, { "slug": "AGENCYZOOM_REOPEN_A_TASK", "name": "Reopen a task", "description": "Reopens an existing AgencyZoom task that is currently 'completed' or 'closed', allowing it to be reactivated with optional comments." }, { "slug": "AGENCYZOOM_SEARCH_BUSINESS_CLASSIFICATIONS", "name": "Search business classifications", "description": "Retrieves a comprehensive list of all available business classifications from AgencyZoom, each including an ID, code, and description." }, { "slug": "AGENCYZOOM_SEARCH_CUSTOMERS", "name": "Search customers", "description": "Searches for customers in AgencyZoom using criteria like contact information, policy details, or custom fields, with options for filtering, sorting, and pagination." }, { "slug": "AGENCYZOOM_SEARCH_EMAIL_THREADS", "name": "Search email threads", "description": "Retrieves a list of email thread metadata from AgencyZoom, suitable for an overview when no specific filtering, sorting, or pagination is needed, as results are subject to default server-side limits and ordering." }, { "slug": "AGENCYZOOM_SEARCH_LEADS", "name": "Search leads", "description": "Retrieves AgencyZoom leads, using filters, pagination, and sorting options sent in the POST body, as the request schema itself is empty." }, { "slug": "AGENCYZOOM_SEARCH_LEADS_COUNT", "name": "Search leads count", "description": "Retrieves a summary of lead counts categorized by workflow stage from AgencyZoom; this action does not support filtering and returns aggregate counts rather than individual lead details." }, { "slug": "AGENCYZOOM_SEARCH_LIFE_AND_HEALTH_LEADS", "name": "Search life and health leads", "description": "Searches for life and health insurance leads by providing filter criteria (matching AlrLead fields) in the request body; an empty request may retrieve all leads or a default set." }, { "slug": "AGENCYZOOM_SEARCH_SMS_THREADS", "name": "Search SMS threads", "description": "Searches and retrieves SMS threads from AgencyZoom, with search parameters, filters, sorting, and pagination typically provided in the request body of this POST operation." }, { "slug": "AGENCYZOOM_SEARCH_TASKS", "name": "Search and list tasks", "description": "Searches and lists tasks, supporting pagination and accepting filter criteria in the POST request body despite an empty request schema." }, { "slug": "AGENCYZOOM_SERVICE_TICKET_LIST", "name": "List service tickets", "description": "Retrieves a paginated list of service tickets from AgencyZoom. Supports filtering by: - Status (0=removed, 1=active, 2=completed) - Priority ID and Category ID Returns service ticket details including subject, description, dates, assignment information, and workflow stage. Results are paginated with default page size of 20 tickets per page." }, { "slug": "AGENCYZOOM_TEXT_DETAIL_THREAD", "name": "Get SMS thread messages", "description": "Retrieves detailed messages for a specific SMS/text thread by its thread ID. Returns all messages in the thread with their content, attachments, sender/recipient information, and metadata. The thread ID can be obtained from the search_sms_threads action." }, { "slug": "AGENCYZOOM_UNLINK_A_DRIVER_FROM_OPPORTUNITY", "name": "Unlink driver from opportunity", "description": "Unlinks a currently associated driver from an AgencyZoom opportunity, used when the driver is no longer relevant, for policy or data updates, potentially impacting the opportunity's status or associated policy details." }, { "slug": "AGENCYZOOM_UNLINK_A_VEHICLE_FROM_OPPORTUNITY", "name": "Unlink vehicle from opportunity", "description": "Unlinks a specific, existing vehicle from a specific, existing opportunity using their respective IDs, removing only the association and not the records themselves." }, { "slug": "AGENCYZOOM_UNREAD_THREAD", "name": "Update email thread read status", "description": "Updates the read or unread status of a specific email thread within AgencyZoom." }, { "slug": "AGENCYZOOM_UPDATE_A_DRIVER_S_DETAILS", "name": "Update a driver's details", "description": "Updates an existing driver's details in AgencyZoom, requiring `driverId` in the path and `firstName` and `lastName` in the request." }, { "slug": "AGENCYZOOM_UPDATE_A_LEAD_FILE_NAME", "name": "Rename lead file", "description": "Updates a lead's file name to `newFileName`; requires `fileId` of the target file, which must be associated with both the `leadId` (path parameter) and the provided `customerReferralId`." }, { "slug": "AGENCYZOOM_UPDATE_A_LEAD_OPPORTUNITY", "name": "Update a lead opportunity", "description": "Updates an existing opportunity's details (carrier, product line, premium, items, custom fields) for a specific lead; `leadId`, opportunity `id`, `carrierId`, and `productLineId` must refer to existing entities." }, { "slug": "AGENCYZOOM_UPDATE_A_LEAD_QUOTE", "name": "Update lead quote data", "description": "Updates an existing quote for a specified lead in AgencyZoom when its details require revision, ensuring the provided `leadId` (path parameter), quote `id` (body parameter), `carrierId`, and `productLineId` are valid and correspond to existing entities." }, { "slug": "AGENCYZOOM_UPDATE_AN_OPPORTUNITY", "name": "Update an opportunity", "description": "Updates an existing opportunity with the provided details; ensure any custom field names are predefined in AgencyZoom configuration." }, { "slug": "AGENCYZOOM_UPDATE_A_POLICY", "name": "Update policy by id", "description": "Updates an existing insurance policy for the given `policyId`; monetary values must be in cents and dates in YYYY-MM-DD format." }, { "slug": "AGENCYZOOM_UPDATE_A_VEHICLE_S_DETAILS", "name": "Update a vehicle's details", "description": "Updates details for an existing vehicle within an opportunity; this action cannot be used to create new vehicle records." }, { "slug": "AGENCYZOOM_UPDATE_BUSINESS_LEAD", "name": "Update business lead", "description": "Updates an existing business lead in AgencyZoom. Requires leadId (path parameter) plus core business information fields: firstname, email, name (business name), pipelineId, stageId, leadSourceId, assignTo (producer ID), and country. All other fields are optional and will only update if provided." }, { "slug": "AGENCYZOOM_UPDATE_CUSTOMER", "name": "Update customer info using id", "description": "Updates an existing customer's information in AgencyZoom using their unique customerId." }, { "slug": "AGENCYZOOM_UPDATE_LEAD", "name": "Update lead", "description": "Updates an existing lead's information in AgencyZoom using the `leadId`; ensure the `leadId` corresponds to an existing lead in AgencyZoom." }, { "slug": "AGENCYZOOM_UPDATE_LEAD_STATUS_BY_ID", "name": "Update lead status by id", "description": "Updates a lead's status (0=ACTIVE, 2=WON, 3=LOST, 5=XDATED) by `leadId`, optionally setting workflow, stage, date, loss reason, X-date type, source, recycle stage/pipeline, or tags; requires `date` and `xDateType` for status 5 (XDATED), and `lossReasonId` for status 3 (LOST)." }, { "slug": "AGENCYZOOM_UPDATE_MY_PROFILE", "name": "Update my profile", "description": "Updates the profile information (first name, last name, email, and optional phone) for the currently authenticated user in AgencyZoom; the provided email address must be unique within the system." }, { "slug": "AGENCYZOOM_UPDATE_TAGS_FOR_A_POLICY", "name": "Add tags to a policy", "description": "Adds new comma-separated `tagNames` to a policy, requiring `tagNames` and identification by either `policyId` or `amsPolicyId`; if `amsPolicyId` is provided, `policyId` is ignored, and existing tags are not affected." }, { "slug": "AGENCYZOOM_UPDATE_TASK", "name": "Update task", "description": "Modifies an existing AgencyZoom task (which must be valid and identified by `taskId` in the path) with new attributes from the request body, which must also contain `taskId`." }, { "slug": "AGENCYZOOM_V4_SSO_LOG_THE_USER_IN", "name": "Log user in via SSO", "description": "Logs a user into the AgencyZoom platform via Single Sign-On (SSO). Returns JWT on success or error details on authentication failure." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC_WITH_JWT", "name": "agencyzoom_jwt_auth_scheme", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth with JWT", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth with JWT", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "agencyzoom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "JWT Token", "type": "string", "description": "To obtain your JWT token, follow these steps: 1. Open Postman or any API testing tool. 2. Make a POST request to https://api.agencyzoom.com/v1/api/auth/login. 3. In the request body, add your username and password as key-value pairs. 4. After successfully making the request, you will receive a JWT token in the response. 5. Copy this JWT token and paste it here.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "greptile", "name": "Greptile", "logo": "https://logos.composio.dev/api/greptile", "description": "Chat with your repos or use the API to build your own AI dev tools. Search and query codebases using natural language.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "greptile_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Greptile API key. Get it from https://app.greptile.com/login", "required": true, "default": null } ], "optional": [ { "name": "generic_token", "displayName": "GitHub Personal Access Token", "type": "string", "description": "GitHub token for repository operations. Required for indexing and querying repositories. The token's read permissions determine which repositories Greptile can access.", "required": false, "default": null } ] } } } ] }, { "slug": "googlebigquery", "name": "Google BigQuery", "logo": "https://logos.composio.dev/api/googlebigquery", "description": "Google BigQuery is a fully managed data warehouse for large-scale data analytics, offering fast SQL queries and machine learning capabilities on massive datasets", "category": "databases", "authSchemes": [ "OAUTH2", "GOOGLE_SERVICE_ACCOUNT" ], "toolCount": 63, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLEBIGQUERY_CANCEL_JOB", "name": "Cancel BigQuery Job", "description": "Tool to cancel a running BigQuery job. This call returns immediately, and you need to poll for the job status to see if the cancel completed successfully. Note that cancelled jobs may still incur costs." }, { "slug": "GOOGLEBIGQUERY_CREATE_CAPACITY_COMMITMENT", "name": "Create Capacity Commitment", "description": "Tool to create a new capacity commitment resource in BigQuery Reservation. Use when you need to purchase compute capacity (slots) with a committed period of usage for BigQuery jobs. Supports various commitment plans (FLEX, MONTHLY, ANNUAL, THREE_YEAR) and editions (STANDARD, ENTERPRISE, ENTERPRISE_PLUS)." }, { "slug": "GOOGLEBIGQUERY_CREATE_CONNECTION", "name": "Create BigQuery Connection", "description": "Tool to create a new BigQuery connection to external data sources using the BigQuery Connection API. Use when setting up connections to AWS, Azure, Cloud Spanner, Cloud SQL, Salesforce DataCloud, or Apache Spark." }, { "slug": "GOOGLEBIGQUERY_CREATE_DATA_EXCHANGE", "name": "Create Analytics Hub Data Exchange", "description": "Tool to create a new Analytics Hub data exchange for sharing BigQuery datasets. Use when you need to set up a container for data sharing with descriptive information and listings." }, { "slug": "GOOGLEBIGQUERY_CREATE_DATAEXCHANGES_LISTINGS", "name": "Create Analytics Hub Listing", "description": "Tool to create a new listing in a BigQuery Analytics Hub data exchange. Use when you need to share a BigQuery dataset with specific subscribers or make it available for discovery. The dataset must exist and be in the same region as the data exchange." }, { "slug": "GOOGLEBIGQUERY_CREATE_DATASET", "name": "Create BigQuery Dataset", "description": "Tool to create a new BigQuery dataset with explicit location, labels, and description using the BigQuery Datasets API. Use when the workflow needs to set up a staging/warehouse dataset and correctness of region is critical to avoid downstream job location mismatches. Surfaces 409 Already Exists errors cleanly without retrying." }, { "slug": "GOOGLEBIGQUERY_CREATE_LISTING", "name": "Create Analytics Hub Listing", "description": "Tool to create a new listing in a data exchange using Analytics Hub API. Use when publishing a BigQuery dataset to make it available for subscription by other users or organizations." }, { "slug": "GOOGLEBIGQUERY_CREATE_LOCATIONS_DATAPOLICIES", "name": "Create BigQuery Data Policy (v2beta1)", "description": "Tool to create a new data policy under a project with specified location using the v2beta1 BigQuery Data Policy API. Use when you need to set up data masking rules or column-level security for sensitive data. The v2beta1 endpoint uses a nested request structure." }, { "slug": "GOOGLEBIGQUERY_CREATE_QUERY_TEMPLATE", "name": "Create Analytics Hub Query Template", "description": "Tool to create a new query template in a BigQuery Analytics Hub Data Clean Room (DCR) data exchange. Use when you need to define predefined and approved queries for data clean room use cases. Query templates must be created in DCR data exchanges only." }, { "slug": "GOOGLEBIGQUERY_CREATE_RESERVATION", "name": "Create BigQuery Reservation", "description": "Tool to create a new BigQuery reservation resource to guarantee compute capacity (slots) for query and pipeline jobs. Use when you need to reserve dedicated compute resources for predictable performance and cost management. Reservations can be configured with autoscaling, concurrency limits, and edition-based features." }, { "slug": "GOOGLEBIGQUERY_CREATE_RESERVATION_ASSIGNMENT", "name": "Create BigQuery Reservation Assignment", "description": "Tool to create a BigQuery reservation assignment that allows a project, folder, or organization to submit jobs using slots from a specified reservation. Use when setting up resource allocation for BigQuery workloads. Note: A resource can only have one assignment per (job_type, location) combination." }, { "slug": "GOOGLEBIGQUERY_CREATE_ROUTINE", "name": "Create BigQuery Routine", "description": "Tool to create a new user-defined routine (function or procedure) in a BigQuery dataset. Use when you need to define SQL, JavaScript, Python, Java, or Scala functions/procedures for reusable logic, data transformations, or custom masking. Supports scalar functions, table-valued functions, procedures, and aggregate functions with comprehensive type definitions." }, { "slug": "GOOGLEBIGQUERY_CREATE_TABLE", "name": "Create BigQuery Table", "description": "Tool to create a new, empty table in a BigQuery dataset. Use when setting up data infrastructure for standard tables, external tables, views, or materialized views. Supports partitioning, clustering, and encryption configuration." }, { "slug": "GOOGLEBIGQUERY_DELETE_DATASET", "name": "Delete BigQuery Dataset", "description": "Tool to delete a BigQuery dataset specified by datasetId via the datasets.delete API. Before deletion, you must delete all tables unless deleteContents=True is specified. Use when cleaning up test datasets or removing unused data warehouses. Immediately after deletion, you can create another dataset with the same name." }, { "slug": "GOOGLEBIGQUERY_DELETE_JOB_METADATA", "name": "Delete BigQuery Job Metadata", "description": "Tool to delete the metadata of a BigQuery job. Use when you need to remove job metadata from the system. If this is a parent job with child jobs, metadata from all child jobs will be deleted as well." }, { "slug": "GOOGLEBIGQUERY_DELETE_MODEL", "name": "Delete BigQuery ML Model", "description": "Tool to delete a BigQuery ML model from a dataset. Use when you need to remove a trained machine learning model permanently. The operation deletes the model and cannot be undone." }, { "slug": "GOOGLEBIGQUERY_DELETE_ROUTINE", "name": "Delete BigQuery Routine", "description": "Tool to delete a BigQuery routine by its ID. Use when you need to remove a stored procedure, user-defined function, or table function from a dataset. This operation is irreversible." }, { "slug": "GOOGLEBIGQUERY_DELETE_TABLE", "name": "Delete BigQuery Table", "description": "Tool to delete a BigQuery table from a dataset. Use when you need to remove a table and all its data permanently. The operation deletes all data in the table and cannot be undone." }, { "slug": "GOOGLEBIGQUERY_GET_BIGQUERY_MODEL", "name": "Get BigQuery ML Model", "description": "Tool to retrieve a specific BigQuery ML model resource by model ID. Use when you need detailed information about a trained machine learning model including its configuration, training runs, hyperparameters, and evaluation metrics." }, { "slug": "GOOGLEBIGQUERY_GET_CONNECTION_IAM_POLICY", "name": "Get BigQuery Connection IAM Policy", "description": "Tool to get the IAM access control policy for a BigQuery connection resource. Returns an empty policy if the resource exists but has no policy set. Use this to check who has access to a specific connection before modifying permissions." }, { "slug": "GOOGLEBIGQUERY_GET_DATASET", "name": "Get BigQuery Dataset Metadata", "description": "Tool to retrieve BigQuery dataset metadata including location via the datasets.get API. Use this before creating jobs/queries if the workflow has been failing with location mismatch to confirm the dataset's region and correct the job location accordingly." }, { "slug": "GOOGLEBIGQUERY_GET_JOB", "name": "Get BigQuery Job", "description": "Tool to retrieve information about a specific BigQuery job. Returns job configuration, status, and statistics. Use this to check job status after running queries or to get details about job execution." }, { "slug": "GOOGLEBIGQUERY_GET_QUERY_RESULTS", "name": "Get BigQuery Query Results", "description": "Tool to get the results of a BigQuery query job via RPC. Use this to retrieve results after running a query, or to check job completion status and fetch paginated results." }, { "slug": "GOOGLEBIGQUERY_GET_ROUTINE", "name": "Get BigQuery Routine", "description": "Tool to retrieve a BigQuery routine (user-defined function or stored procedure) by its ID. Use to inspect routine definitions, arguments, return types, and metadata." }, { "slug": "GOOGLEBIGQUERY_GET_ROUTINE_IAM_POLICY", "name": "Get BigQuery Routine IAM Policy", "description": "Tool to retrieve the IAM access control policy for a BigQuery routine resource. Returns an empty policy if the routine exists but has no policy set. Use this to check current access permissions before modifying them." }, { "slug": "GOOGLEBIGQUERY_GET_SERVICE_ACCOUNT", "name": "Get BigQuery Service Account", "description": "Tool to get the service account for a project used for interactions with Google Cloud KMS. Use when you need to retrieve the BigQuery service account email for KMS encryption configuration or key access permissions." }, { "slug": "GOOGLEBIGQUERY_GET_TABLE_IAM_POLICY", "name": "Get BigQuery Table IAM Policy", "description": "Tool to retrieve the IAM access control policy for a BigQuery table resource. Returns an empty policy if the resource exists but has no policy set. Use this to check current access permissions before modifying them." }, { "slug": "GOOGLEBIGQUERY_GET_TABLE_SCHEMA", "name": "Get BigQuery Table Schema", "description": "Tool to fetch a BigQuery table's schema and metadata without querying row data. Use before generating SQL queries to avoid column name typos and confirm field types and nullable modes. This is especially useful when INFORMATION_SCHEMA access is restricted." }, { "slug": "GOOGLEBIGQUERY_INSERT_ALL", "name": "Insert Data into BigQuery Table", "description": "Tool to stream data into BigQuery one record at a time without running a load job. Use when you need immediate data availability or inserting small batches. Supports row-level deduplication via insertId and error handling via skipInvalidRows." }, { "slug": "GOOGLEBIGQUERY_INSERT_JOB", "name": "Insert BigQuery Job", "description": "Tool to start a new asynchronous BigQuery job (query, load, extract, or copy). Use when you need to run a query as a job, load data from Cloud Storage, extract table data to GCS, or copy tables. For dry-run validation without execution, set dryRun to true in configuration." }, { "slug": "GOOGLEBIGQUERY_INSERT_JOB_WITH_UPLOAD", "name": "Insert BigQuery Job with Upload", "description": "Tool to start a new BigQuery load job with file upload. Uploads a file (CSV, JSON, etc.) and loads it into a BigQuery table in a single operation. Use when you need to upload data from a local file directly to BigQuery rather than loading from Cloud Storage." }, { "slug": "GOOGLEBIGQUERY_LIST_ANALYTICS_HUB_LISTINGS", "name": "List Analytics Hub Listings", "description": "Tool to list all listings in a given Analytics Hub data exchange. Use when you need to discover available data listings within a specific data exchange that can be subscribed to for data sharing." }, { "slug": "GOOGLEBIGQUERY_LIST_BIG_QUERY_CONNECTIONS", "name": "List BigQuery Connections", "description": "Tool to list BigQuery connections in a given project and location. Use when you need to discover available external data source connections (Cloud SQL, AWS, Azure, Spark, etc.) configured for BigQuery." }, { "slug": "GOOGLEBIGQUERY_LIST_CAPACITY_COMMITMENTS", "name": "List BigQuery Capacity Commitments", "description": "Tool to list all capacity commitments for the admin project. Use when you need to view purchased compute capacity slots and their commitment details (plan, state, duration)." }, { "slug": "GOOGLEBIGQUERY_LIST_DATAEXCHANGES_LISTINGS", "name": "List Data Exchange Listings", "description": "Tool to list all listings in a given Analytics Hub data exchange using the v1beta1 API. Use when you need to discover available data listings within a specific data exchange that can be subscribed to for data sharing." }, { "slug": "GOOGLEBIGQUERY_LIST_DATASETS", "name": "List BigQuery Datasets", "description": "Tool to list datasets in a specific BigQuery project, including dataset locations. Use after identifying an accessible project to discover available datasets and their locations before querying. The dataset location is critical for avoiding location-related query/job errors." }, { "slug": "GOOGLEBIGQUERY_LIST_JOBS", "name": "List BigQuery Jobs", "description": "Tool to list all jobs that you started in a BigQuery project. Job information is available for a six month period after creation. Jobs are sorted in reverse chronological order by creation time. Use to monitor query execution, track job statuses, and retrieve job history." }, { "slug": "GOOGLEBIGQUERY_LIST_LOCATIONS", "name": "List BigQuery Data Transfer Locations", "description": "Tool to list information about supported locations for BigQuery Data Transfer Service. Use when you need to discover available regions/locations where BigQuery Data Transfer operations can be performed." }, { "slug": "GOOGLEBIGQUERY_LIST_LOCATIONS_CONNECTIONS", "name": "List Connections in Location", "description": "Tool to list BigQuery connections in a given project and location using the v1beta1 API. Use when you need to discover available external data source connections (Cloud SQL, AWS, Azure, Spark, etc.) configured for BigQuery in a specific location." }, { "slug": "GOOGLEBIGQUERY_LIST_LOCATIONS_DATAPOLICIES", "name": "List BigQuery Location Data Policies", "description": "Tool to list all data policies in a specified parent project and location using the v2beta1 API. Use when you need to discover data masking policies and column-level security policies configured for BigQuery datasets." }, { "slug": "GOOGLEBIGQUERY_LIST_MODELS", "name": "List BigQuery Models", "description": "Tool to list all BigQuery ML models in a specified dataset. Requires READER dataset role. Use this to discover available models before getting detailed information via models.get method." }, { "slug": "GOOGLEBIGQUERY_LIST_ORGANIZATION_DATA_EXCHANGES", "name": "List Organization Data Exchanges", "description": "Tool to list all data exchanges from projects in a given organization and location using Analytics Hub API. Use when you need to discover available data exchanges within an organization that can be used for data sharing." }, { "slug": "GOOGLEBIGQUERY_LIST_PROJECTS", "name": "List BigQuery Projects", "description": "Tool to list BigQuery projects to which the user has been granted any project role. Returns projects with at least READ access. For enhanced capabilities, consider using the Resource Manager API." }, { "slug": "GOOGLEBIGQUERY_LIST_QUERY_TEMPLATES", "name": "List Analytics Hub Query Templates", "description": "Tool to list all query templates in a given Analytics Hub data exchange. Use when you need to discover available query templates that define predefined and approved queries for data clean room use cases." }, { "slug": "GOOGLEBIGQUERY_LIST_RESERVATION_ASSIGNMENTS", "name": "List BigQuery Reservation Assignments", "description": "Tool to list BigQuery reservation assignments. Only explicitly created assignments will be returned (no expansion or merge happens). Use wildcard \"-\" in parent path to list assignments across all reservations in a location." }, { "slug": "GOOGLEBIGQUERY_LIST_RESERVATION_GROUPS", "name": "List BigQuery Reservation Groups", "description": "Tool to list all BigQuery reservation groups for a project in a specified location. Use when you need to discover available reservation groups which serve as containers for reservations." }, { "slug": "GOOGLEBIGQUERY_LIST_RESERVATIONS", "name": "List BigQuery Reservations", "description": "Tool to list all BigQuery reservations for a project in a specified location. Use when you need to discover available reservations or view reservation details including slot capacity and autoscale configuration." }, { "slug": "GOOGLEBIGQUERY_LIST_ROUTINES", "name": "List BigQuery Routines", "description": "Tool to list all routines (user-defined functions and stored procedures) in a BigQuery dataset. Requires the READER dataset role. Use this to discover available routines before executing or inspecting them." }, { "slug": "GOOGLEBIGQUERY_LIST_ROW_ACCESS_POLICIES", "name": "List BigQuery Row Access Policies", "description": "Tool to list all row access policies on a specified BigQuery table. Use when you need to discover which row-level security policies are applied to a table and their filter predicates." }, { "slug": "GOOGLEBIGQUERY_LIST_TABLE_DATA", "name": "List BigQuery Table Data", "description": "Tool to list the content of a BigQuery table in rows via the REST API. Use this to retrieve actual data from a table without writing SQL queries. Returns paginated results with row data in the native BigQuery format." }, { "slug": "GOOGLEBIGQUERY_LIST_TABLES", "name": "List BigQuery Tables", "description": "Tool to list tables in a BigQuery dataset via the REST API. Use this early in exploration to discover accessible tables without relying on INFORMATION_SCHEMA, especially when SQL-based metadata queries are blocked or restricted. This provides a deterministic inventory of tables even when dataset-level permissions prevent INFORMATION_SCHEMA access." }, { "slug": "GOOGLEBIGQUERY_PATCH_DATASET", "name": "Patch BigQuery Dataset", "description": "Tool to update an existing BigQuery dataset using RFC5789 PATCH semantics. Only replaces fields provided in the request, leaving other fields unchanged. Use when you need to modify dataset properties like description, labels, expiration settings, or access controls without affecting other configuration." }, { "slug": "GOOGLEBIGQUERY_PATCH_MODEL", "name": "Patch BigQuery ML Model", "description": "Tool to update specific fields in an existing BigQuery ML model using PATCH semantics. Use when you need to modify model metadata like description, friendly name, labels, or expiration time without replacing the entire model resource." }, { "slug": "GOOGLEBIGQUERY_PATCH_TABLE", "name": "Patch BigQuery Table", "description": "Tool to update specific fields in an existing BigQuery table using RFC5789 PATCH semantics. Only the fields provided in the request are updated; unspecified fields remain unchanged. Use when you need to modify table metadata like description, friendly name, labels, or expiration time without replacing the entire table resource." }, { "slug": "GOOGLEBIGQUERY_QUERY", "name": "Query", "description": "Query Tool runs a SQL query in BigQuery using the REST API. Use proper BigQuery SQL syntax, e.g., SELECT * FROM `project.dataset.table` WHERE column_name = 'value'. Results are returned under data.rows; an empty rows array means no matching data. Large result sets may be returned via remote_file_info instead of inline rows. Verify exact project_id, dataset, table, and column names before running; wrong identifiers trigger invalidQuery or notFound errors." }, { "slug": "GOOGLEBIGQUERY_SEARCH_ALL_ASSIGNMENTS", "name": "Search All BigQuery Reservation Assignments", "description": "Tool to search all BigQuery reservation assignments for a specified resource in a particular region. Use when you need to find assignments for a project, folder, or organization. Returns assignments created on the resource or its closest ancestor, covering all JobTypes." }, { "slug": "GOOGLEBIGQUERY_SET_ROUTINE_IAM_POLICY", "name": "Set BigQuery Routine IAM Policy", "description": "Tool to set the IAM access control policy for a BigQuery routine resource. Use this to grant or modify access permissions for users, service accounts, or groups. Include the etag from getIamPolicy to prevent concurrent modifications." }, { "slug": "GOOGLEBIGQUERY_TEST_ROUTINE_IAM_PERMISSIONS", "name": "Test BigQuery Routine IAM Permissions", "description": "Tool to test which IAM permissions the caller has on a BigQuery routine. Returns the subset of requested permissions that the caller actually has. Use to verify access before performing operations." }, { "slug": "GOOGLEBIGQUERY_UNDELETE_DATASET", "name": "Undelete BigQuery Dataset", "description": "Tool to undelete a BigQuery dataset within the time travel window. If a deletion time is specified, the dataset version deleted at that time is undeleted; otherwise, the most recently deleted version is restored." }, { "slug": "GOOGLEBIGQUERY_UPDATE_CONNECTION", "name": "Update BigQuery Connection", "description": "Tool to update a specified BigQuery connection using the BigQuery Connection API. Use when you need to modify connection properties such as friendly name, description, or connection-specific settings. For security reasons, credentials are automatically reset if connection properties are included in the update mask." }, { "slug": "GOOGLEBIGQUERY_UPDATE_DATASET", "name": "Update BigQuery Dataset", "description": "Tool to update information in an existing BigQuery dataset using the PUT method. The update method replaces the entire dataset resource, whereas the patch method only replaces fields that are provided in the submitted dataset resource. Use when you need to modify dataset properties like description, access controls, or default settings." }, { "slug": "GOOGLEBIGQUERY_UPDATE_ROUTINE", "name": "Update BigQuery Routine", "description": "Tool to update an existing BigQuery routine (function or stored procedure). This replaces the entire routine resource with the provided definition. Use when modifying routine logic, arguments, return types, or other configuration. Ensure all required fields are provided as this is a full replacement operation." }, { "slug": "GOOGLEBIGQUERY_UPDATE_TABLE", "name": "Update BigQuery Table", "description": "Tool to update an existing BigQuery table. The update method replaces the entire Table resource, whereas the patch method only replaces fields that are provided. Use when you need to modify table properties like schema, description, labels, partitioning, or clustering configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googlebigquery_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/bigquery,https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "GOOGLE_SERVICE_ACCOUNT", "name": "googlebigquery_service_account", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "credentials_json", "displayName": "Credentials JSON", "type": "string", "description": "Credentials JSON object for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "microsoft_clarity", "name": "Microsoft Clarity", "logo": "https://logos.composio.dev/api/microsoft_clarity", "description": "Microsoft Clarity is a free user behavior analytics tool that captures heatmaps, session recordings, and engagement metrics to help improve website experiences", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MICROSOFT_CLARITY_DATA_EXPORT", "name": "Data Export", "description": "Export data from Microsoft Clarity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "microsoft_clarity_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Microsoft Clarity API Token", "type": "string", "description": "Your Microsoft Clarity API token. Generate it from Settings -> Data Export -> Generate new API token in your Clarity project.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "coinbase", "name": "Coinbase", "logo": "https://logos.composio.dev/api/coinbase", "description": "Coinbase is a platform for buying, selling, transferring, and storing cryptocurrency.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COINBASE_GET_ASSET_DETAILS", "name": "Get Asset Details", "description": "Retrieve detailed information about a specific asset from Coinbase International Exchange. Use to get asset status, collateral weights, and borrowing limits." }, { "slug": "COINBASE_GET_EXCHANGE_CURRENCY", "name": "Get Exchange Currency", "description": "Tool to retrieve detailed information about a specific currency from Coinbase Exchange API. Use when you need to get currency details like min/max precision, status, type (crypto/fiat), payment methods, and conversion options." }, { "slug": "COINBASE_GET_INSTRUMENT_DETAILS", "name": "Get Instrument Details", "description": "Tool to get complete details for a specific trading instrument on Coinbase International Exchange. Use when you need instrument configuration, trading parameters, margin requirements, or 24-hour statistics." }, { "slug": "COINBASE_GET_INSTRUMENTS_FUNDING", "name": "Get Historical Funding Rate", "description": "Get historical funding rates for a specific instrument from Coinbase International Exchange. Use this to retrieve funding rate history with mark price and event time data." }, { "slug": "COINBASE_GET_INSTRUMENTS_QUOTE", "name": "Get Quote Per Instrument", "description": "Tool to get the current quote for a specific trading instrument on Coinbase International Exchange. Use when you need current bid/ask prices, recent trade information, or mark prices for a trading pair." }, { "slug": "COINBASE_GET_INSTRUMENTS_VOLUMES_DAILY", "name": "Get Daily Trading Volume", "description": "Tool to retrieve daily trading volume data for specified instruments on Coinbase International Exchange. Use when you need historical volume metrics for perpetual futures or spot instruments." }, { "slug": "COINBASE_GET_MARKET_PRODUCT_BOOK", "name": "Get Market Product Book", "description": "Get the current order book (market depth) for a specific product. Returns bids, asks, last price, mid-market price, and spread information. Use when you need to analyze market depth or liquidity for a trading pair." }, { "slug": "COINBASE_GET_PRODUCT", "name": "Get Product Details", "description": "Tool to retrieve detailed information about a specific product (trading pair) from Coinbase Exchange. Use when you need to get configuration details, trading limits, or status for a specific cryptocurrency trading pair." }, { "slug": "COINBASE_GET_PRODUCT_BOOK", "name": "Get Product Order Book", "description": "Retrieves the order book for a specific product on Coinbase Exchange. The order book shows current bids (buy orders) and asks (sell orders) with their prices and sizes. Use this to analyze market depth and liquidity for trading pairs." }, { "slug": "COINBASE_GET_PRODUCTS_TICKER", "name": "Get Products Ticker", "description": "Tool to get real-time ticker information for a specific product on Coinbase Exchange. Use when you need current price, bid/ask, volume, or last trade data for a trading pair." }, { "slug": "COINBASE_GET_PRODUCTS_VOLUME_SUMMARY", "name": "Get Products Volume Summary", "description": "Tool to retrieve volume summaries for all trading products on Coinbase Exchange. Use when you need to get trading volume data across all products for 24-hour and 30-day periods." }, { "slug": "COINBASE_GET_PUBLIC_MARKET_TRADES", "name": "Get Public Market Trades", "description": "Tool to get public market trades for a specific product (trading pair). Returns recent trades along with current best bid and ask prices. Use when you need to view recent trading activity for a cryptocurrency pair on Coinbase." }, { "slug": "COINBASE_GET_SERVER_TIME", "name": "Get Server Time", "description": "Tool to retrieve the current server time from Coinbase Advanced Trade API. Use when you need to synchronize timestamps for request signing or time-sensitive operations." }, { "slug": "COINBASE_GET_SUPPORTED_NETWORKS", "name": "Get Supported Networks", "description": "Tool to retrieve supported blockchain networks for a specific cryptocurrency asset on Coinbase International Exchange. Use when you need to understand which networks (e.g., Bitcoin, Ethereum) support a particular asset for deposits or withdrawals, including network-specific details like minimum/maximum withdrawal amounts and confirmation requirements." }, { "slug": "COINBASE_GET_WRAPPED_ASSET_CONVERSION_RATE", "name": "Get Wrapped Asset Conversion Rate", "description": "Tool to get the current conversion rate for a wrapped asset on Coinbase Exchange. Use when you need to check the exchange ratio between a wrapped asset and its underlying asset (e.g., cbETH to ETH2). Rate limited to 1 query per second." }, { "slug": "COINBASE_LIST_ASSETS", "name": "List Exchange Assets", "description": "Tool to retrieve all supported assets from the Coinbase International Exchange. Use when you need information about available trading assets, their status, or collateral properties." }, { "slug": "COINBASE_LIST_CURRENCIES", "name": "List All Known Currencies", "description": "Tool to get all known currencies from Coinbase Exchange API. Use when you need to retrieve the complete list of available currencies for trading, including both fiat and cryptocurrencies with their details." }, { "slug": "COINBASE_LIST_EXCHANGE_PRODUCTS", "name": "List Exchange Products", "description": "Tool to retrieve all known trading pairs from Coinbase Exchange. Returns comprehensive information about each trading pair including trading limits, status, and configuration. Use when you need to discover available markets, check trading pair details, or validate product IDs before placing orders." }, { "slug": "COINBASE_LIST_INSTRUMENTS", "name": "List Instruments", "description": "Tool to list all instruments available for trading on Coinbase International Exchange. Use when you need to retrieve information about tradable instruments including spot and perpetual futures markets." }, { "slug": "COINBASE_LIST_INSTRUMENTS_CANDLES", "name": "List Instruments Candles", "description": "Tool to retrieve aggregated candle (OHLCV) data for instruments on Coinbase International Exchange. Use when you need historical price and volume data for trading pairs like BTC-PERP or ETH-PERP." }, { "slug": "COINBASE_LIST_LOANS_ASSETS", "name": "List Loans Assets", "description": "Tool to retrieve all assets available for loans from the Coinbase Exchange. Use when you need information about which assets can be borrowed or used as collateral for loans." }, { "slug": "COINBASE_LIST_MARKET_PRODUCTS", "name": "List Market Products", "description": "Tool to list market products from Coinbase Advanced Trade API. Returns available trading pairs with detailed information including prices, volumes, trading limits, and status. Use when you need to discover available markets or get comprehensive product details." }, { "slug": "COINBASE_LIST_PRODUCT_CANDLES", "name": "List Product Candles", "description": "Tool to retrieve historical candlestick (OHLCV) data for a specific trading product on Coinbase Advanced Trade. Use when you need price history, charting data, or market analysis over time intervals. Returns up to 300 candles per request." }, { "slug": "COINBASE_LIST_PRODUCTS_CANDLES", "name": "List Product Candles", "description": "Tool to retrieve historical candlestick (OHLCV) data for a trading pair. Use when you need price history, chart data, or market analysis for a specific product over time." }, { "slug": "COINBASE_LIST_PRODUCTS_STATS", "name": "List Products Stats", "description": "Tool to get 24-hour statistics for a product on Coinbase Exchange. Use when you need current price data, trading volume, or price ranges for a specific trading pair." }, { "slug": "COINBASE_LIST_PRODUCTS_TRADES", "name": "List Products Trades", "description": "Tool to retrieve recent trades for a specific product from Coinbase Exchange API. Use when you need to see trade history for a trading pair." }, { "slug": "COINBASE_LIST_WALLETS", "name": "List Wallets", "description": "Retrieve all wallets from Coinbase via the CDP SDK." }, { "slug": "COINBASE_LIST_WRAPPED_ASSETS", "name": "List Wrapped Assets", "description": "Tool to retrieve all wrapped assets from Coinbase Exchange. Use when you need to get information about wrapped cryptocurrency assets, their supply, conversion rates, and APY." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "coinbase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key Name", "type": "string", "description": "Your Coinbase API key name.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "api key private key", "type": "string", "description": "Your Coinbase API private key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "monday", "name": "Monday", "logo": "https://logos.composio.dev/api/monday", "description": "monday.com is a customizable work management platform for project planning, collaboration, and automation, supporting agile, sales, marketing, and more", "category": "project management", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 125, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MONDAY_ACCOUNT_TRIGGER_STATISTICS", "name": "Get account trigger statistics", "description": "Tool to retrieve statistics about account-level triggers and automations. Use when you need to monitor trigger execution metrics including success rates, failure counts, and total execution numbers." }, { "slug": "MONDAY_ACTIVATE_USERS", "name": "Activate users", "description": "Tool to activate or reactivate users in a Monday.com account. Use when you need to enable user accounts that were previously deactivated. Cannot be used to activate your own account. Requires account management permissions." }, { "slug": "MONDAY_ADD_SUBSCRIBERS_TO_BOARD", "name": "Add subscribers to board", "description": "Tool to add users as subscribers to a Monday.com board. Use when granting subscriber or owner access to specific users on a board. Note: This mutation is deprecated - consider using add_users_to_board instead." }, { "slug": "MONDAY_ADD_SUBSCRIBERS_TO_OBJECT", "name": "Add subscribers to object", "description": "Tool to add subscribers or owners to a monday.com object. Use when you need to grant users notification access or ownership permissions to a specific object." }, { "slug": "MONDAY_ADD_TEAMS_TO_BOARD", "name": "Add teams to board", "description": "Tool to add teams to a Monday.com board with specified permission levels. Use when you need to associate teams with a board as owners or subscribers." }, { "slug": "MONDAY_ADD_USERS_TO_BOARD", "name": "Add users to board", "description": "Adds users to a Monday.com board with a specified role." }, { "slug": "MONDAY_ADD_USERS_TO_TEAM", "name": "Add users to team", "description": "Tool to add users to a Monday.com team. Use when updating team membership by adding user(s)." }, { "slug": "MONDAY_ADD_USERS_TO_WORKSPACE", "name": "Add users to workspace", "description": "Tool to add one or more users to a workspace. Use when inviting existing users to collaborate in a workspace." }, { "slug": "MONDAY_AGGREGATE_DATA", "name": "Aggregate board data", "description": "Tool to aggregate data across Monday.com boards using groupings and aggregation functions like COUNT, SUM, MEAN, MIN, MAX. Use when you need to compute metrics, counts, or summaries from board data with optional filtering and grouping." }, { "slug": "MONDAY_APP_SUBSCRIPTION", "name": "Get app subscription", "description": "Tool to retrieve current app subscription data for the account. Use when you need to check subscription status, billing period, trial status, or pricing information. Must be called within app context using account authentication token." }, { "slug": "MONDAY_ARCHIVE_BOARD", "name": "Archive board", "description": "Archives a specified, existing, and unarchived board in Monday.com; archived boards can typically be restored later." }, { "slug": "MONDAY_ARCHIVE_ITEM", "name": "Archive item", "description": "Archives an existing Monday.com item, moving it from active board views to the archive where it can be potentially restored." }, { "slug": "MONDAY_ARCHIVE_OBJECT", "name": "Archive object", "description": "Archives a Monday.com object by changing its state to archived rather than permanently deleting it. Use when you need to remove objects from active use while preserving the ability to restore them later." }, { "slug": "MONDAY_ARCHIVE_WORKSPACE", "name": "Archive workspace", "description": "Tool to archive a Monday.com workspace. Use when you want to soft-remove a workspace from view." }, { "slug": "MONDAY_AUDIT_LOGS", "name": "Get audit logs", "description": "Tool to retrieve detailed security-related activity records for a Monday.com account. Use when you need to audit user actions, security events, or account activity. Requires Enterprise plan and account admin permissions with manage_account_security scope." }, { "slug": "MONDAY_BLOCKS", "name": "Get document blocks", "description": "Tool to retrieve document block data from workdocs via the API. Returns block metadata including type, content, position, and creation info. Use when you need to fetch content blocks from Monday.com documents." }, { "slug": "MONDAY_BOARDS", "name": "Get boards", "description": "Tool to retrieve board data via the Monday.com API. Returns core metadata (id, name, state, kind, hierarchy type, workspace) about one or multiple boards with filtering options by state, board kind, hierarchy type, and workspace. For structural details, column configurations, or ownership info, use dedicated board enrichment tools." }, { "slug": "MONDAY_CHANGE_SIMPLE_COLUMN_VALUE", "name": "Change simple column value", "description": "Changes a specific column's value for a Monday.com item using a simple string, suitable for Text, Status, or Dropdown columns; can create new labels if `create_labels_if_missing` is true for Status/Dropdown columns." }, { "slug": "MONDAY_COLUMNS", "name": "Get board columns", "description": "Tool to retrieve column metadata from boards via the GraphQL API. Returns array of column information including type, title, settings, and capabilities. Use when you need to inspect board structure or column configuration." }, { "slug": "MONDAY_CONNECTION_BOARD_IDS", "name": "Get connection board IDs", "description": "Tool to retrieve board IDs associated with connection columns. Use when you need to discover which boards can be linked through connection columns. Queries boards and filters for connection columns (board_relation type) to extract the configured board IDs from their settings." }, { "slug": "MONDAY_CONNECTIONS", "name": "Get connections", "description": "Tool to retrieve connection data for integrations with external services. Use when you need to inspect or manage integrations like Gmail, Slack, or other external service connections. Returns a list of connections with details about authentication, state, and associated accounts." }, { "slug": "MONDAY_CONNECT_PROJECT_TO_PORTFOLIO", "name": "Connect project to portfolio", "description": "Links an existing project board to a portfolio board for centralized management. Requires boards:write scope and Enterprise plan." }, { "slug": "MONDAY_CONVERT_BOARD_TO_PROJECT", "name": "Convert board to project", "description": "Converts a regular Monday.com board into a project board with advanced project management features. Use when upgrading a board to enable project-specific capabilities like timeline views, project status tracking, and owner assignments." }, { "slug": "MONDAY_CREATE_BOARD", "name": "Create a Monday board", "description": "Creates a Monday.com board; `template_id` if used must be accessible, and `folder_id` must be in `workspace_id` if both are provided." }, { "slug": "MONDAY_CREATE_COLUMN", "name": "Create column", "description": "Creates a new column with a specified type and title on a monday.com board." }, { "slug": "MONDAY_CREATE_CUSTOM_ACTIVITY", "name": "Create custom activity", "description": "Tool to create a custom activity in the Monday.com Emails & Activities app. Use when you need to define a new activity type with specific color and icon for tracking interactions." }, { "slug": "MONDAY_CREATE_DASHBOARD", "name": "Create a Monday dashboard", "description": "Tool to create a Monday.com dashboard with associated boards. Use when you need to establish a new dashboard in a workspace with specific board visibility settings." }, { "slug": "MONDAY_CREATE_DOC", "name": "Create doc", "description": "Tool to create a new doc in Monday.com. Use when you need to add a doc to a workspace or into a doc column on an item." }, { "slug": "MONDAY_CREATE_FOLDER", "name": "Create a folder", "description": "Tool to create a new folder in a Monday.com workspace to organize boards. Use when you need to structure boards within a workspace by grouping them into folders." }, { "slug": "MONDAY_CREATE_GROUP", "name": "Create group", "description": "Creates a new group with the given `group_name` on an existing Monday.com board, identified by its `board_id`." }, { "slug": "MONDAY_CREATE_ITEM", "name": "Create item", "description": "Creates a new item on a Monday.com board, optionally assigning it to a group and setting column values." }, { "slug": "MONDAY_CREATE_ITEM_FROM_NL", "name": "Create Item From Natural Language", "description": "Creates a new item on a Monday.com board from a natural language description. Fetches the board's column schema at runtime, uses an LLM to generate the column values and extract the item name, and creates the item." }, { "slug": "MONDAY_CREATE_NOTIFICATION", "name": "Create notification", "description": "Tool to send a notification to a user. Use when you need to alert a user about a board, item, or update. Call after obtaining the user and target IDs." }, { "slug": "MONDAY_CREATE_OBJECT", "name": "Create object", "description": "Tool to create any Monday.com object via GraphQL mutation. Use when you need to create workspaces, boards, items, columns, docs, updates, webhooks, or other Monday.com objects using custom GraphQL queries." }, { "slug": "MONDAY_CREATE_TAG", "name": "Create tag", "description": "Tool to create a new tag or return an existing tag. Use when you need to label items with color-coded tags on a public or private board." }, { "slug": "MONDAY_CREATE_TIMELINE_ITEM", "name": "Create timeline item", "description": "Tool to create a new timeline item in the Emails & Activities app on a Monday.com item. Use when you need to establish a timeline event or activity on an item. Note: Timeline items created via this action won't trigger automations that run when a new E&A timeline item is created." }, { "slug": "MONDAY_CREATE_UPDATE", "name": "Create update", "description": "Tool to create a new update for an item or reply to an existing update. Use after determining the target item or update to comment on." }, { "slug": "MONDAY_CREATE_USER", "name": "Invite and create a Monday user", "description": "Tool to invite and create a new user. Use when you need to programmatically add new users to your Monday account." }, { "slug": "MONDAY_CREATE_WORKSPACE", "name": "Create a Monday workspace", "description": "Tool to create a Monday.com workspace. Use when you need to programmatically add a workspace after planning your project structure." }, { "slug": "MONDAY_CUSTOM_ACTIVITY", "name": "Get custom activity", "description": "Tool to retrieve custom activity data from the Emails & Activities app. Use when you need to list available custom activities with their metadata. Returns up to 50 activities per query." }, { "slug": "MONDAY_DEACTIVATE_USERS", "name": "Deactivate users", "description": "Tool to deactivate users from a monday.com account. Use when you need to remove users from the account; only admins can perform this action, and users cannot deactivate themselves. Deactivating a user also deactivates their integrations and automations." }, { "slug": "MONDAY_DELETE_ASSET", "name": "Delete asset", "description": "Tool to remove uploaded files. Since monday.com doesn't provide a direct asset deletion API, this tool deletes the enclosing update or clears files from a File column. Both operations are permanent and irreversible; confirm with the user before invoking." }, { "slug": "MONDAY_DELETE_BOARD", "name": "Delete board", "description": "Tool to permanently delete a board from your Monday.com account. Use when you need to remove a board permanently after verifying its ID. This action cannot be undone." }, { "slug": "MONDAY_DELETE_COLUMN", "name": "Delete column", "description": "Deletes a specified column from a Monday.com board; this action is destructive and cannot be undone via the API." }, { "slug": "MONDAY_DELETE_CUSTOM_ACTIVITY", "name": "Delete Custom Activity", "description": "Tool to delete a custom activity from the Emails & Activities app. Use when you need to remove a custom activity by its unique identifier." }, { "slug": "MONDAY_DELETE_DOC", "name": "Delete doc", "description": "Tool to delete a Monday.com doc by its ID. Use when you need to remove a doc that is no longer needed." }, { "slug": "MONDAY_DELETE_FOLDER", "name": "Delete folder", "description": "Tool to permanently delete a folder and all its contents from a Monday.com workspace. Use when you need to remove a folder along with all nested subfolders and boards. This action is irreversible." }, { "slug": "MONDAY_DELETE_GROUP", "name": "Delete group", "description": "Permanently deletes an existing group (and its items) from an existing board in Monday.com." }, { "slug": "MONDAY_DELETE_ITEM", "name": "Delete item", "description": "Permanently deletes an existing Monday.com item; this action is irreversible via the API." }, { "slug": "MONDAY_DELETE_OBJECT", "name": "Delete object", "description": "Tool to permanently delete a Monday.com object with a 30-day recovery grace period. Use when you need to remove any object type from Monday.com by its unique identifier." }, { "slug": "MONDAY_DELETE_SUBSCRIBERS_FROM_BOARD", "name": "Delete subscribers from board", "description": "Tool to remove subscribers from a Monday.com board. Use when revoking subscriber access for specific users on a board." }, { "slug": "MONDAY_DELETE_TAG", "name": "Delete tag", "description": "Tool to remove a tag from an item in Monday.com. Important: Monday.com's GraphQL API does not provide a mutation to delete a tag from the account. Tags are account-level entities shared across boards. This action can remove a tag from a specific item by updating its tags column to exclude the given tag_id. To do so, provide item_id and board_id." }, { "slug": "MONDAY_DELETE_TEAM", "name": "Delete team", "description": "Tool to delete an existing team; use when you need to permanently remove a team by its ID after confirming it’s no longer needed." }, { "slug": "MONDAY_DELETE_TEAMS_FROM_BOARD", "name": "Delete teams from board", "description": "Tool to remove teams from a board; use when you need to revoke team access to a specific board." }, { "slug": "MONDAY_DELETE_TEAMS_FROM_WORKSPACE", "name": "Delete teams from workspace", "description": "Tool to remove teams from a workspace. Use when revoking workspace access for specific teams." }, { "slug": "MONDAY_DELETE_TIMELINE_ITEM", "name": "Delete timeline item", "description": "Tool to delete a timeline item from the Emails & Activities app. Use when you need to remove an existing timeline event or activity from a Monday.com item. This action is irreversible." }, { "slug": "MONDAY_DELETE_UPDATE", "name": "Delete update", "description": "Tool to delete an update by its ID. Use when an update is no longer relevant. Use after confirming deletion is irreversible." }, { "slug": "MONDAY_DELETE_WORKSPACE", "name": "Delete workspace", "description": "Tool to permanently delete a workspace by its ID. Use when a workspace is no longer needed. Use after confirming deletion is irreversible." }, { "slug": "MONDAY_DOCS", "name": "Retrieve Monday docs", "description": "Tool to retrieve Monday.com document data via the API. Use when you need to fetch documents with filtering by IDs, object IDs, workspace IDs, or with pagination support." }, { "slug": "MONDAY_DUPLICATE_BOARD", "name": "Duplicate board", "description": "Tool to duplicate a Monday.com board with its structure and optionally items and updates. Use when you need to create a copy of an existing board. Duplication is asynchronous and may take time to complete for large boards." }, { "slug": "MONDAY_DUPLICATE_ITEM", "name": "Duplicate item", "description": "Duplicates an item on a Monday.com board, optionally including its updates." }, { "slug": "MONDAY_EDIT_UPDATE", "name": "Edit update", "description": "Tool to modify the text content of an existing update on an item. Use when you need to correct or change a previously posted update." }, { "slug": "MONDAY_GET_ACCOUNT_INFO", "name": "Get account info", "description": "Retrieve account metadata and settings for the authenticated Monday.com account. Use this action to inspect account configuration such as: - Account name, slug, and tier - Active member count - Calendar preferences (first day of week, timeline weekends) - Active products and billing plan details Requires the 'account:read' OAuth scope." }, { "slug": "MONDAY_GET_ACTIVITY_LOGS", "name": "Get board activity logs", "description": "Tool to retrieve activity logs from a specific Monday.com board. Use when you need to track changes, user actions, or board history for auditing or analytics purposes." }, { "slug": "MONDAY_GET_API_VERSION", "name": "Get API version", "description": "Tool to retrieve the Monday.com API version in use. Use when you need to check which API version is currently active for debugging or compatibility purposes." }, { "slug": "MONDAY_GET_ASSETS", "name": "Get assets", "description": "Tool to retrieve file/asset metadata from monday.com by asset IDs. Returns file information including URL, name, size, extension, and thumbnails for images. Asset IDs originate from updates, update replies, or file-type columns." }, { "slug": "MONDAY_GET_BOARD_VIEWS", "name": "Get board views", "description": "Tool to retrieve board view data via GraphQL API. Returns array of board view metadata including type, settings, filters, and access levels. Must be nested within a boards query." }, { "slug": "MONDAY_GET_FAVORITES", "name": "Get favorites", "description": "Tool to retrieve all favorited items for the authenticated user. Use when you need to query items that have been marked as favorites." }, { "slug": "MONDAY_GET_FOLDERS", "name": "Get folders", "description": "Tool to retrieve folder data from workspaces with filtering and pagination options. Use when you need to list folders from specific workspaces or filter by folder IDs." }, { "slug": "MONDAY_GET_FORM", "name": "Get form details", "description": "Tool to retrieve form metadata via the API using the form's unique token from the URL. Returns form configuration, questions, and settings." }, { "slug": "MONDAY_GET_ITEMS", "name": "Get items by IDs", "description": "Tool to retrieve specific items by their IDs from Monday.com, returning metadata including name, timestamps, state, board, and group information. Use when you need to fetch detailed information about specific items." }, { "slug": "MONDAY_GET_ME", "name": "Get current user", "description": "Tool to fetch the current authenticated user's profile and permissions. Use when you need to retrieve user metadata before performing other operations." }, { "slug": "MONDAY_GET_MUTATION_COMPLEXITY", "name": "Get mutation complexity", "description": "Tool to get complexity data of mutations in Monday.com. Use when you need to track API quota usage or monitor rate limits for mutation operations." }, { "slug": "MONDAY_GET_QUERY_COMPLEXITY", "name": "Get query complexity", "description": "Tool to retrieve complexity data and cost metrics for Monday.com API operations. Use when you need to monitor API rate limits and complexity budget usage." }, { "slug": "MONDAY_GET_TAGS", "name": "Get tags", "description": "Tool to retrieve tags from the account. Use when you need to list all tags or filter by specific IDs." }, { "slug": "MONDAY_GET_TEAMS", "name": "Get teams", "description": "Tool to retrieve teams from Monday.com. Use when you need an overview of teams in your account." }, { "slug": "MONDAY_GET_UPDATE_REPLIES", "name": "Get update replies", "description": "Retrieves updates and their replies for a specific Monday.com item. Use this to fetch conversation threads and discussions attached to an item, including all replies to each update." }, { "slug": "MONDAY_GET_UPDATES", "name": "Get item updates", "description": "Tool to retrieve updates for a specific item. Use when you need to fetch the conversation history tied to an item." }, { "slug": "MONDAY_GET_VERSIONS", "name": "Get API versions", "description": "Tool to retrieve data about available API versions. Use when you need to check which API versions are supported by Monday.com." }, { "slug": "MONDAY_GET_VIEW_SCHEMA_BY_TYPE", "name": "Get view schema by type", "description": "Tool to retrieve type-specific board view configuration schemas via GraphQL API. Use when you need to understand the structure and available settings for creating or updating board views of a specific type." }, { "slug": "MONDAY_GET_WEBHOOKS", "name": "Get webhooks", "description": "Tool to retrieve webhooks for a board. Use when you need to list all webhooks on a board." }, { "slug": "MONDAY_GET_WORKSPACES", "name": "Get workspaces", "description": "Tool to retrieve workspaces. Use when you need to list workspaces with optional filtering, pagination, or ordering after authentication." }, { "slug": "MONDAY_IMPORT_DOC_FROM_HTML", "name": "Import doc from HTML", "description": "Tool to import HTML content into a new Monday.com doc, converting it to doc blocks. Use when you need to create a doc from HTML content." }, { "slug": "MONDAY_ITEMS_PAGE", "name": "Get items page", "description": "Tool to retrieve items from a Monday.com board (or group) with server-side filtering, full column_values, and cursor-based pagination via items_page and next_items_page queries. Use when you need paginated access to board items with detailed column data and optional filtering/sorting." }, { "slug": "MONDAY_LIKE_UPDATE", "name": "Like update", "description": "Tool to like an update on an item. Use when you want to express approval or acknowledgment of an update." }, { "slug": "MONDAY_LIST_BOARD_ITEMS", "name": "List board items", "description": "DEPRECATED: Use MONDAY_ITEMS_PAGE instead, which supports cursor-based pagination. This tool may silently omit items on larger boards. Results include archived and deleted items by default — filter by state to retrieve only active items." }, { "slug": "MONDAY_LIST_BOARDS", "name": "List Monday boards (Deprecated)", "description": "DEPRECATED: Use MONDAY_BOARDS instead. Retrieves a list of boards from a Monday.com account, supporting pagination and filtering by state." }, { "slug": "MONDAY_LIST_COLUMNS", "name": "List columns (Deprecated)", "description": "DEPRECATED: Use MONDAY_COLUMNS instead. Lists all columns and their properties for a specified Monday.com `board_id`; the board must exist." }, { "slug": "MONDAY_LIST_GROUPS", "name": "List groups", "description": "Tool to retrieve all groups of a specified board. Use when you need to list groups on a board after confirming its board ID. Response is nested under data → boards[0] → groups; confirm boards[0] exists before accessing groups." }, { "slug": "MONDAY_LIST_ITEMS", "name": "List items", "description": "Retrieves specified subitems from Monday.com using their IDs, returning raw JSON. Returned `column_values` fields (`text`, `value`) are frequently null or JSON-encoded strings (including numbers as quoted strings); null-check and JSON-decode before use." }, { "slug": "MONDAY_LIST_ITEMS_BY_COLUMN_VALUES", "name": "List items by column values", "description": "Tool to search for items on a Monday.com board based on column values using the items_page_by_column_values query. Use when you need to find items matching specific column criteria (e.g., status=\"Done\", name contains \"Task 1\"). For initial requests, provide columns; for pagination, use the cursor from the previous response." }, { "slug": "MONDAY_LIST_SUBITEMS_BY_PARENT", "name": "List subitems by parent", "description": "Tool to retrieve subitems nested under parent items via GraphQL API. Use when you need to list subitems and their column values for specific parent items. Monday's API requires querying subitems through their parent items." }, { "slug": "MONDAY_LIST_TEAM_MEMBERS", "name": "List team members", "description": "Tool to list members of a specified team. Use when you need to retrieve all users in a given Monday.com team after confirming its team ID." }, { "slug": "MONDAY_LIST_USERS", "name": "List users", "description": "Retrieves a list of users from Monday.com. Paginate by starting at page=1, incrementing page on each request, and stopping when the returned user list is empty. An empty user list does not signify action failure." }, { "slug": "MONDAY_MOVE_ITEM_TO_BOARD", "name": "Move item to board", "description": "Moves a Monday.com item to a specified board and group; requires the item, target board, and target group to exist." }, { "slug": "MONDAY_MOVE_ITEM_TO_GROUP", "name": "Move item to group", "description": "Moves an item to a different group on the same Monday.com board; the item and group must exist." }, { "slug": "MONDAY_MUTE_BOARD_SETTINGS", "name": "Query board mute settings", "description": "Tool to query a board's notification mute settings. Use when you need to check if notifications are muted for specific boards." }, { "slug": "MONDAY_PIN_TO_TOP", "name": "Pin update to top", "description": "Tool to pin an update to the top of an item. Use when you need to highlight an important update or keep it visible at the top." }, { "slug": "MONDAY_PUBLISH_OBJECT", "name": "Publish object", "description": "Tool to publish a Monday.com object. Use when you need to make an object publicly visible or change its state to published." }, { "slug": "MONDAY_QUERY_DASHBOARDS", "name": "Query dashboards", "description": "Tool to query dashboards via Monday.com objects API. Use when you need to list all dashboards with their metadata, owners, and subscribers." }, { "slug": "MONDAY_QUERY_SPRINTS", "name": "Query sprints", "description": "Tool to query sprint data for agile project management from Monday.com boards. Use when you need to retrieve sprint information including sprint title, ID, color, position, archived/deleted status, and associated items." }, { "slug": "MONDAY_REMOVE_USERS_FROM_TEAM", "name": "Remove users from team", "description": "Tool to remove users from a Monday.com team. Use when updating team membership by removing user(s)." }, { "slug": "MONDAY_REMOVE_USERS_FROM_WORKSPACE", "name": "Remove users from workspace", "description": "Tool to remove users from a workspace. Use when revoking access for specific users in a workspace." }, { "slug": "MONDAY_SET_BOARD_PERMISSION", "name": "Set board permission", "description": "Sets or updates a board's default role and permissions. Use when you need to configure default permissions for a board. Requires boards:write scope and can only be used by board owners on enterprise plans." }, { "slug": "MONDAY_TIMELINE", "name": "Get item timeline", "description": "Tool to retrieve an item's Email & Activities (E&A) timeline data from Monday.com. Use when you need to access CRM activity tracking and client communication history for a specific item. This returns a paginated list of timeline entries." }, { "slug": "MONDAY_TIMELINE_ITEM", "name": "Get timeline item", "description": "Tool to retrieve a specific timeline item from the Emails & Activities app by ID. Use when you need to fetch metadata including content, user, title, type, and associated custom activity for a timeline item." }, { "slug": "MONDAY_UNLIKE_UPDATE", "name": "Unlike update", "description": "Tool to remove a like from an update on an item. Use when you want to retract a previously expressed approval or acknowledgment of an update." }, { "slug": "MONDAY_UNPIN_FROM_TOP", "name": "Unpin update from top", "description": "Tool to unpin an update from the top of an item. Use when you want to remove a pinned update from the top position of an item's updates feed." }, { "slug": "MONDAY_UNPUBLISH_OBJECT", "name": "Unpublish object", "description": "Unpublish a Monday.com object (board, item, or workspace) to revert it from a published state. The operation will return success=true only if the object was previously published and can be unpublished. If the object is not in a publishable state or was never published, success=false is returned." }, { "slug": "MONDAY_UPDATE_BOARD", "name": "Update board", "description": "Updates a specified attribute of an existing board on Monday.com." }, { "slug": "MONDAY_UPDATE_BOARD_HIERARCHY", "name": "Update board hierarchy", "description": "Updates a board's position, workspace, or product in Monday.com. Use when you need to move a board to a different workspace or folder, assign it to a product, or reposition it relative to other boards." }, { "slug": "MONDAY_UPDATE_COLUMN", "name": "Update column", "description": "Tool to update column title or description. Use when modifying a column’s metadata after creation." }, { "slug": "MONDAY_UPDATE_DOC", "name": "Update a doc", "description": "Tool to update a doc's title or append markdown content. Use when renaming docs or adding Markdown blocks to existing docs." }, { "slug": "MONDAY_UPDATE_EMAIL_DOMAIN", "name": "Update email domain", "description": "Tool to update users' email domains. Use when migrating users to a new email domain; requires admin privileges." }, { "slug": "MONDAY_UPDATE_FOLDER", "name": "Update a Monday folder", "description": "Tool to update a Monday.com folder's properties including name, color, or parent folder. Use when you need to modify existing folder details or move folders between workspaces." }, { "slug": "MONDAY_UPDATE_GROUP", "name": "Update group", "description": "Tool to update an existing group on a board. Use when you need to modify a group's attribute (title, color, or position) after confirming the group ID." }, { "slug": "MONDAY_UPDATE_ITEM", "name": "Update item", "description": "Tool to update an existing item's column value on Monday.com. Use when setting complex column types like Timeline or People." }, { "slug": "MONDAY_UPDATE_MULTIPLE_USERS", "name": "Update multiple users", "description": "Tool to update one or multiple users' attributes on Monday.com. Use when you need to batch update user profiles such as name, email, title, or department." }, { "slug": "MONDAY_UPDATE_MUTE_BOARD_SETTINGS", "name": "Update mute board settings", "description": "Tool to update a board's notification mute settings. Use when you need to configure notification preferences for a specific board." }, { "slug": "MONDAY_UPDATE_TAG", "name": "Update tag", "description": "Tool to return a tag's details or best-effort \"rename\" by creating or getting a tag with the requested name. The monday API does not support updating existing tag name/color." }, { "slug": "MONDAY_UPDATE_TEAM", "name": "Update team", "description": "Tool to update a team's details in Monday.com. Use after identifying the team and desired changes." }, { "slug": "MONDAY_UPDATE_USERS_ROLE", "name": "Update users role", "description": "Tool to update users' roles to custom or default roles. Use when changing user permissions; admin-only operation. Cannot update your own role." }, { "slug": "MONDAY_UPDATE_WORKSPACE", "name": "Update a Monday workspace", "description": "Tool to update a Monday.com workspace. Use when you need to modify the name, description, visibility, or product placement of an existing workspace." }, { "slug": "MONDAY_UPLOAD_ASSET", "name": "Upload Asset", "description": "Tool to upload a file to an update or file column. Use when you need to attach a file to an existing update or file column. File attachments are permanent and irreversible; confirm with the user before uploading." }, { "slug": "MONDAY_USER_CONNECTIONS", "name": "Get user connections", "description": "Tool to query user-specific connection data from Monday.com. Use when you need to retrieve integration connections established by the authenticated user with external services." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "monday_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "semanticscholar", "name": "Semantic Scholar", "logo": "https://logos.composio.dev/api/semanticscholar", "description": "Semantic Scholar is an AI-powered academic search engine that helps researchers discover and understand scientific literature", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_AN_AUTHOR", "name": "Details about an author", "description": "Retrieve detailed information about an author from Semantic Scholar, including name, affiliations, publication statistics (paperCount, citationCount, h-index), external IDs (ORCID, DBLP), and optionally papers. By default returns authorId and name only. Use 'fields' parameter for additional data: name, url, affiliations, homepage, externalIds, paperCount, citationCount, hIndex, papers (supports nested fields like papers.title, papers.year). Limit: 10 MB per request." }, { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_AN_AUTHOR_S_PAPERS", "name": "Details about an author s papers", "description": "Retrieves a list of papers authored or co-authored by a specific researcher identified by their unique Semantic Scholar author ID. This endpoint is particularly useful for conducting literature reviews, analyzing an author's body of work, or tracking a researcher's publications over time. It provides a comprehensive view of an author's contributions to their field of study, including all papers where the author is listed as an author regardless of their authorship position. The response may be paginated for authors with a large number of publications, and additional API calls might be necessary to retrieve the complete list of papers. Use the offset and limit parameters to control pagination." }, { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_A_PAPER", "name": "Details about a paper", "description": "Examples:
  • https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b
    • Returns a paper with its paperId and title.
  • https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b?fields=url,year,authors
    • Returns the paper's paperId, url, year, and list of authors.
    • Each author has authorId and name.
  • https://api.semanticscholar.org/graph/v1/paper/649def34f8be52c8b66281af98ae884c09aef38b?fields=citations.authors
    • Returns the paper's paperId and list of citations.
    • Each citation has its paperId plus its list of authors.
    • Each author has their 2 always included fields of authorId and name.

    Limitations:
    • Can only return up to 10 MB of data at a time.
" }, { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_A_PAPER_S_AUTHORS", "name": "Details about a paper s authors", "description": "Retrieves the list of authors for a specific paper identified by its unique paper_id in the Semantic Scholar database. This endpoint returns detailed author information including authorId and name (returned by default), and optionally: url, affiliations, homepage, paperCount, citationCount, hIndex, and papers (with subfields). Use the 'fields' parameter to request additional author fields beyond the defaults. The response is paginated and includes offset/limit parameters for retrieving large author lists. This tool is ideal for exploring paper collaborations, identifying author affiliations, or building author networks. It accepts various paper ID formats including Semantic Scholar IDs, DOI, ARXIV, PMID, and others." }, { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_A_PAPER_S_CITATIONS", "name": "Details about a paper s citations", "description": "Retrieves a list of citations for a specific academic paper using its unique Semantic Scholar paper ID. This endpoint is useful for researchers and developers who want to explore the impact and connections of a particular academic work within the broader scientific literature. It provides information about other papers that have cited the specified paper, allowing users to trace the influence of research and discover related works. The endpoint should be used when analyzing the reception and impact of a specific paper, building citation networks, or conducting bibliometric studies. It does not provide the full text of citing papers or detailed information about the citations beyond basic metadata." }, { "slug": "SEMANTICSCHOLAR_DETAILS_ABOUT_A_PAPER_S_REFERENCES", "name": "Details about a paper s references", "description": "Retrieves the list of references cited by a specific paper in the Semantic Scholar database. This endpoint allows users to explore the scholarly context of a publication by accessing its bibliography. It's particularly useful for understanding the foundation of a paper's research, tracing the development of ideas, or conducting literature reviews. The tool returns details about the cited papers, which may include their titles, authors, publication dates, and Semantic Scholar IDs. It should be used when analyzing a paper's sources or investigating the connections between different academic works. Note that this endpoint only provides outgoing references (papers cited by the specified paper) and not incoming citations (papers that cite the specified paper)." }, { "slug": "SEMANTICSCHOLAR_GET_DATASET", "name": "Get dataset download links", "description": "Tool to get download links for a specific dataset within a release. Use when you need to download Semantic Scholar dataset files from S3. Returns pre-signed URLs for all dataset partitions." }, { "slug": "SEMANTICSCHOLAR_GET_DATASET_DIFFS", "name": "Get dataset diffs", "description": "Get download links for incremental diffs between dataset releases. Returns a list of diffs required to update a dataset from start_release to end_release, enabling efficient dataset synchronization. Use when you need to update a local dataset copy without re-downloading the entire dataset." }, { "slug": "SEMANTICSCHOLAR_GET_DETAILS_FOR_MULTIPLE_AUTHORS_AT_ONCE", "name": "Get details for multiple authors at once", "description": "Retrieves detailed information for multiple authors from Semantic Scholar in a single API call. This endpoint allows users to efficiently fetch data for a batch of authors by providing their unique Semantic Scholar IDs. It's particularly useful for applications that need to gather information on multiple authors simultaneously, reducing the number of individual API calls required. The endpoint accepts a list of author IDs and returns comprehensive details for each author, which may include their publications, citations, and other relevant academic information. While the exact response structure is not specified in the given schema, users can expect rich metadata about the requested authors." }, { "slug": "SEMANTICSCHOLAR_GET_DETAILS_FOR_MULTIPLE_PAPERS_AT_ONCE", "name": "Get details for multiple papers at once", "description": "Retrieve detailed information for multiple academic papers in a single API call using the Semantic Scholar paper batch endpoint. This endpoint efficiently fetches data for up to 500 papers at once, significantly reducing the number of individual API requests needed. Key features: - Accepts multiple paper ID formats (Semantic Scholar ID, CorpusId, DOI, ArXiv, PMID, etc.) - Customizable field selection to retrieve only needed data - Papers not found return null in the corresponding array position - Results maintain the same order as input IDs - Supports nested field queries (e.g., authors.name, citations.title) Use this endpoint when you have a list of known paper IDs and want to retrieve their details simultaneously, rather than making individual requests for each paper." }, { "slug": "SEMANTICSCHOLAR_GET_PAPER_RECOMMENDATIONS", "name": "Get paper recommendations", "description": "Tool to get paper recommendations based on positive and negative example papers. Use when you need to find papers similar to ones you like (positive examples) and optionally dissimilar to ones you don't like (negative examples). The recommendation engine analyzes the provided examples and returns relevant papers from the Semantic Scholar database." }, { "slug": "SEMANTICSCHOLAR_GET_RECOMMENDATIONS_FOR_PAPER", "name": "Get recommendations for paper", "description": "Tool to get recommended papers for a single positive example paper. Use when you need to find papers similar to a given paper based on Semantic Scholar's recommendation algorithm." }, { "slug": "SEMANTICSCHOLAR_GET_RELEASE", "name": "Get dataset release information", "description": "Tool to retrieve metadata for a specific Semantic Scholar dataset release. Returns release information including available datasets with their descriptions. Use when you need to discover what datasets are available in a release or get release documentation." }, { "slug": "SEMANTICSCHOLAR_LIST_RELEASES", "name": "List available dataset releases", "description": "Tool to list all available dataset releases from Semantic Scholar. Use when you need to discover available release dates for downloading datasets." }, { "slug": "SEMANTICSCHOLAR_PAPER_RELEVANCE_SEARCH", "name": "Paper relevance search (Deprecated)", "description": "DEPRECATED: Use SEMANTICSCHOLAR_SEARCH_PAPERS instead. The SearchPapers endpoint allows users to search for academic papers within the Semantic Scholar database. It provides a powerful way to discover relevant scientific literature based on user-defined search criteria. This endpoint should be used when researchers, students, or developers need to find papers related to specific topics, authors, or time periods. The search functionality supports various query parameters to refine and customize the search results, making it suitable for both broad exploratory searches and targeted inquiries. However, users should be aware that the search is limited to papers indexed by Semantic Scholar, and very recent publications might not be immediately available. The endpoint returns a list of papers matching the search criteria, along with selected metadata fields, facilitating efficient literature review and analysis." }, { "slug": "SEMANTICSCHOLAR_PAPER_TITLE_SEARCH", "name": "Paper title search", "description": "Behaves similarly to /paper/search, but is intended for retrieval of a single paper based on closest title match to given query. Examples:
  • https://api.semanticscholar.org/graph/v1/paper/search/match?query=Construction of the Literature Graph in Semantic Scholar
    • Returns a single paper that is the closest title match.
    • Each paper has its paperId, title, and matchScore as well as any other requested fields.
  • https://api.semanticscholar.org/graph/v1/paper/search/match?query=totalGarbageNonsense
    • Returns with a 404 error and a \"Title match not found\" message.

Limitations:
  • Will only return the single highest match result.
" }, { "slug": "SEMANTICSCHOLAR_SEARCH_BULK_PAPERS", "name": "Search Bulk Papers", "description": "Tool to perform bulk search for academic papers. Intended for bulk retrieval of basic paper data without search relevance scoring. Use when you need to retrieve large sets of papers with optional text filtering and various criteria. Supports token-based pagination for efficient fetching of up to 10 million papers (use Datasets API for larger needs)." }, { "slug": "SEMANTICSCHOLAR_SEARCH_FOR_AUTHORS_BY_NAME", "name": "Search for authors by name", "description": "Search for academic authors in the Semantic Scholar database by name. This action searches for authors using plain-text name queries. The search is case-insensitive and supports partial name matches (e.g., \"Smith\" will match \"John Smith\", \"Adam Smith\", etc.). Use cases: - Find authors by their name to get their author ID - Discover authors in a specific research area by searching common names - Retrieve author metadata including publications, affiliations, citation counts, and h-index - Build author directories or research networks The response includes pagination metadata (total, offset, next) to help retrieve large result sets. Use the 'fields' parameter to customize which author attributes are returned, and use 'offset' and 'limit' for pagination through result sets larger than 1000 authors. Note: Results are paginated with a maximum of 1000 results per request. Use the 'next' field in the response to determine the offset for the next page." }, { "slug": "SEMANTICSCHOLAR_SEARCH_PAPERS", "name": "Search papers by relevance", "description": "Tool to search for academic papers by relevance in the Semantic Scholar database. Use when searching for papers on specific topics, keywords, or research areas. Returns papers ordered by relevance score with support for extensive filtering by publication type, date, venue, field of study, and citation metrics." }, { "slug": "SEMANTICSCHOLAR_SUGGEST_PAPER_QUERY_COMPLETIONS", "name": "Suggest paper query completions", "description": "Get autocomplete suggestions for paper queries. Returns a list of papers matching the partial query string, useful for interactive search experiences. Each suggestion includes the paper ID, title, and authors with publication year. Example: For query \"machine learning\", returns papers like \"Machine learning - a probabilistic perspective\" by Murphy, 2012." }, { "slug": "SEMANTICSCHOLAR_TEXT_SNIPPET_SEARCH", "name": "Text snippet search", "description": "Search for text snippets (~500 words) within academic papers that match your natural language query. Returns relevant excerpts from papers' titles, abstracts, and body text, ranked by relevance score. Each result includes: snippet text, location in paper, citation references, and paper metadata (title, authors, corpus ID). Supports filtering by authors, publication date, venue, field of study, citation count, and specific paper IDs. Results sorted by relevance (highest score first). Use limit=10 (default, max 1000) to control result count." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key for the Semanticscholar API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendgrid", "name": "SendGrid", "logo": "https://logos.composio.dev/api/sendgrid", "description": "SendGrid is a cloud-based email delivery platform providing transactional and marketing email services, with APIs for integration, analytics, and scalability", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 364, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SENDGRID_ACTIVATE_TEMPLATE_VERSION", "name": "Activate template version", "description": "Activates a specific version of a transactional template, making it the default version used when sending emails. Only one version can be active at a time per template. When you activate a version, any previously active version becomes inactive. The activated version's content (HTML, plain text, subject) will be used for all emails sent using this template until a different version is activated. Use this endpoint to switch between template versions for A/B testing, rollbacks, or deploying new email designs." }, { "slug": "SENDGRID_ADD_A_BATCH_OF_IPS_TO_AN_IP_POOL", "name": "Add a batch of ips to an ip pool", "description": "Adds a batch of IP addresses to a specified IP Pool in SendGrid. This operation appends multiple IPs to an existing IP Pool. All IP assignments must succeed for the operation to complete - if any single IP assignment fails, the entire operation will return an error. Requirements: - A SendGrid account with dedicated IP addresses (Pro or Premier plan) - API key with 'IP Address Management' permissions - Valid pool ID and IP addresses that exist in your SendGrid account - Each IP Pool can have a maximum of 100 IPs Note: This endpoint is part of the IP Address Management API which is currently in public beta." }, { "slug": "SENDGRID_ADD_AN_IP_ADDRESS_TO_A_POOL", "name": "Add an ip address to a pool", "description": "Adds a dedicated IP address to an IP pool in your SendGrid account. **Prerequisites:** - You must have a SendGrid Pro or Premier plan with dedicated IP addresses - The IP address must be activated in your SendGrid account (Settings > IP Addresses > Edit > \"Allow my account to send mail using this IP address\") - A reverse DNS record must be set up for the IP address - The IP pool must already exist (create one first if needed) **Key Features:** - An IP address can be added to multiple pools simultaneously - Changes may take up to 60 seconds to propagate - Returns the IP's warmup status and all pools it's assigned to **Common Use Cases:** - Segregate transactional and marketing email to different IP pools - Organize IPs by brand, customer, or email type for reputation management - Set up dedicated sending infrastructure for high-volume senders" }, { "slug": "SENDGRID_ADD_AN_IP_TO_AN_AUTHENTICATED_DOMAIN", "name": "Add an ip to an authenticated domain", "description": "Add an IP address to an authenticated domain for custom SPF configuration. This endpoint associates a dedicated IP address with an authenticated domain, which is useful for manually specifying IPs in your custom SPF record. The authenticated domain (formerly called 'domain whitelabel') allows you to remove the 'via' or 'sent on behalf of' message from your emails. **Prerequisites:** - The domain must already be authenticated (created via Authenticate a Domain endpoint) - The IP must be a dedicated IP address belonging to your SendGrid account - Your API key must have 'whitelabel.update' and appropriate IP permissions **Returns:** The updated authenticated domain object with the IP added to the 'ips' array." }, { "slug": "SENDGRID_ADD_A_SINGLE_RECIPIENT_TO_A_LIST", "name": "Add a single recipient to a list", "description": "Adds a single recipient to a contact list in SendGrid's Legacy Contact Database. IMPORTANT: This uses the deprecated Legacy API (/v3/contactdb/). Many accounts no longer have access and will receive 403 errors. Use PUT /v3/marketing/contacts instead. Prerequisites: The recipient and list must already exist in your database. Parameters: - list_id: Numeric list ID from 'create_a_list' or 'retrieve_all_lists' - recipient_id: Base64-encoded lowercase email (e.g., 'test@example.com' → 'dGVzdEBleGFtcGxlLmNvbQ==') Returns: Empty dict {} on success (HTTP 201), or error details with status_code, message, and hint for troubleshooting." }, { "slug": "SENDGRID_ADD_A_TWILIO_SEND_GRID_IP_ADDRESS", "name": "Add a twilio sendgrid ip address", "description": "Provisions a new Twilio SendGrid IP address to your account. This endpoint adds (purchases) a dedicated IP address to your SendGrid account. You can optionally: - Enable automatic warmup to gradually increase sending volume - Assign the IP to the parent account for sending email - Assign up to 100 Subusers to the IP address at creation - Specify the region (global/US or EU) for the IP address Important Requirements: - Requires a Pro or Premier SendGrid account (not available for Free/Essential plans) - Requires API key with Billing permissions (mutually exclusive from other permissions) - Additional IPs cost $30/month per IP - Parent must be assigned before the IP can be added to IP pools or used for sending Note: This is a billing operation that will incur charges on your SendGrid account." }, { "slug": "SENDGRID_ADD_IPS", "name": "Add ips", "description": "Add dedicated IP addresses to your SendGrid account. This endpoint provisions new dedicated IP addresses for sending emails. Dedicated IPs give you full control over your sender reputation and are recommended for high-volume senders. Note: This endpoint requires the 'ips.create' API key scope and may require an appropriate SendGrid plan that supports dedicated IPs." }, { "slug": "SENDGRID_ADD_ONE_OR_MORE_IPS_TO_THE_ALLOW_LIST", "name": "Add one or more ips to the allow list", "description": "Adds one or more IPv4 addresses to your SendGrid account's IP access management allow list. Once enabled, only requests from these IPs can access SendGrid UI, API, and SMTP relay. Each IP is assigned a unique ID for future removal. Supports single IPs, CIDR notation (e.g., '192.168.1.0/24'), and wildcards (e.g., '192.*.*.*'). SendGrid limits the total allowed IPs to 1000. Note: IPv6 addresses are not supported. Warning: Be careful not to add IPs that exclude your own, as this could block your access." }, { "slug": "SENDGRID_ADD_OR_UPDATE_A_CONTACT", "name": "Add or update a contact", "description": "Adds or updates contacts in SendGrid Marketing Campaigns. This is an asynchronous operation that queues contacts for processing. Returns a job_id to track the import status. Contacts are matched by identifier (email, phone_number_id, external_id, or anonymous_id) - existing contacts are updated, new ones are created. Email addresses are automatically lowercased. Max 30,000 contacts or 6MB per request." }, { "slug": "SENDGRID_ADD_SUPPRESSIONS_TO_A_SUPPRESSION_GROUP", "name": "Add suppressions to a suppression group", "description": "**This endpoint allows you to add email addresses to an unsubscribe group.** If you attempt to add suppressions to a group that has been deleted or does not exist, the suppressions will be added to the global suppressions list." }, { "slug": "SENDGRID_ADD_TO_GLOBAL_SUPPRESSIONS_GROUP", "name": "Add recipient addresses to the global suppression group", "description": "Adds one or more email addresses to the global suppression group. Email addresses added to this group will no longer receive any emails from your SendGrid account. This is useful for managing recipients who have opted out of all communications or for ensuring certain addresses never receive emails. The action is idempotent - adding an email that is already suppressed will succeed without error. Returns the list of email addresses that were processed." }, { "slug": "SENDGRID_APPROVE_ACCESS_REQUEST", "name": "Approve access request", "description": "**This endpoint allows you to approve an access attempt.** **Note:** Only teammate admins may approve another teammate’s access request." }, { "slug": "SENDGRID_ASSIGN_A_BATCH_OF_SUBUSERS_TO_AN_IP", "name": "Assign a batch of subusers to an ip", "description": "Assigns multiple subusers to a specified IP address in a single operation. All subuser assignments must succeed; if any assignment fails, the entire operation returns an error. Requires IP Address Management permissions. Note: This API is part of the IP Address Management API which is in public beta." }, { "slug": "SENDGRID_ASSOCIATE_A_BRANDED_LINK_WITH_A_SUBUSER", "name": "Associate a branded link with a subuser", "description": "Associate a branded link with a subuser account for email link tracking. This allows a subuser to use the parent account's branded link (link branding/ whitelabel) for link tracking in their emails, ensuring tracked links appear to come from your domain rather than SendGrid's domain. Prerequisites: - A validated branded link must exist in the parent account - The subuser account must already exist - API key must have link branding and subuser management permissions - Requires SendGrid Pro plan or higher with subuser feature enabled Notes: - A subuser can only have one branded link associated at a time - If the subuser already has a branded link, it will be replaced - The association does not transfer ownership; parent maintains control" }, { "slug": "SENDGRID_ASSOCIATE_AN_AUTHENTICATED_DOMAIN_WITH_A_GIVEN_USER", "name": "Associate an authenticated domain with a given user", "description": "Associate an authenticated domain with a subuser, allowing the subuser to send emails using the parent account's domain authentication. The parent account must first authenticate and validate the domain before associating it. Prerequisites: - The domain must be authenticated by the parent account - The subuser must exist and belong to the parent account - Use 'list_all_authenticated_domains' to find available domain IDs - Use 'list_all_subusers' to find valid subuser usernames Note: The subuser will default to using the assigned domain but cannot see or modify it. If the subuser authenticates their own domain, it will overwrite the assigned domain. To associate multiple domains with a subuser, use the 'bind_authenticated_domains_to_user' action instead." }, { "slug": "SENDGRID_AUTHENTICATE_A_DOMAIN", "name": "Authenticate a domain", "description": "The endpoint enables domain authentication for users or subusers, offering two methods—'username' parameter for visibility and modification, or the Association workflow for a fixed, non-editable domain assignment." }, { "slug": "SENDGRID_AUTHENTICATE_AN_ACCOUNT_WITH_SINGLE_SIGN_ON", "name": "Authenticate an account with single sign on", "description": "Generates a one-time SSO authentication URL for logging into a customer's Twilio SendGrid account. IMPORTANT: This endpoint is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. The returned redirect_url contains a one-time authorization code that: - Is valid for 60 seconds after generation - Can only be used once for security (prevents replay attacks) - Authenticates the user as an Admin Teammate with full account management permissions - Only works for the base Admin Teammate (not for additional teammates or subusers) Use Case: This is typically used by partner platforms to provide seamless SSO access for their customers into their respective SendGrid accounts. Prerequisites: - Partner-level API credentials with appropriate scopes - IP whitelisting configured for your partner account - Valid accountID from a customer account under your partner organization" }, { "slug": "SENDGRID_BIND_AUTHENTICATED_DOMAINS_TO_USER", "name": "Bind authenticated domains to user", "description": "Associates an additional authenticated domain with a subuser. A subuser can have up to 5 authenticated domains linked to it. This endpoint is used to add domains beyond the first one (use 'Associate an authenticated domain with a given user' for the initial association). The parent account must first authenticate and validate the domain before associating it with a subuser. Requires Subuser Management permissions." }, { "slug": "SENDGRID_BULK_DELETE_SINGLE_SENDS", "name": "Bulk delete single sends", "description": "Permanently deletes multiple Single Sends in a single operation by providing their IDs. You can delete up to 1000 Single Sends per request. Single Send IDs can be retrieved using the 'Get all single sends' action or from the SendGrid Marketing Campaigns UI. WARNING: This operation is irreversible - deleted Single Sends cannot be recovered. All associated data including statistics, configurations, and scheduled sends will be permanently removed. Returns 204 No Content on successful deletion with an empty response body." }, { "slug": "SENDGRID_CANCEL_OR_PAUSE_A_SCHEDULED_SEND", "name": "Cancel or pause a scheduled send", "description": "Cancel or pause a group of scheduled email sends by their batch_id. Use 'pause' to temporarily hold sends (resumable via 'update_a_scheduled_send' or deletable via 'delete_a_cancellation_or_pause_from_a_scheduled_send') or 'cancel' to permanently discard them. Limits: max 10 paused/cancelled batches at a time; must be set at least 10 minutes before the scheduled send_at time. Returns a 400 error if the batch already has a status set or limits are exceeded." }, { "slug": "SENDGRID_COMPLETED_STEPS", "name": "Completed steps", "description": "Retrieves the verification status of a SendGrid account, checking if Domain Authentication and Single Sender Verification have been completed. Returns two boolean values: - `domain_verified`: True if Domain Authentication is complete - `sender_verified`: True if Single Sender Verification is complete This is a read-only endpoint that requires no parameters." }, { "slug": "SENDGRID_CREATE_A_BATCH_ID", "name": "Create a batch id", "description": "Generate a new mail batch ID to group multiple email sends together. The batch ID allows you to: - Group related email sends for bulk operations - Pause all scheduled sends associated with the batch ID - Cancel all scheduled sends associated with the batch ID Use the returned batch_id when sending emails via the Mail Send API by including it in your send request. Later, you can manage these grouped sends using the Scheduled Sends API endpoints (pause, cancel, or resume). This endpoint requires no input parameters and generates a unique batch ID on each call." }, { "slug": "SENDGRID_CREATE_A_BRANDED_LINK", "name": "Create a branded link", "description": "Create a new branded link by specifying the root domain, which must align with your FROM email, and an optional unique subdomain. Subusers can request using the `on-behalf-of` header." }, { "slug": "SENDGRID_CREATE_A_CAMPAIGN", "name": "Create a campaign", "description": "This endpoint enables campaign creation, requiring a subject, sender ID, content (HTML and text suggested), and a list or segment ID for sending or scheduling, but not for initial creation." }, { "slug": "SENDGRID_CREATE_A_CUSTOM_FIELD", "name": "Create a custom field", "description": "Creates a custom field for storing additional contact information in SendGrid. Custom fields allow you to store additional data about your contacts beyond the default fields. You can create up to 120 custom fields per account. **Valid field types:** - `text`: For string/text values - `number`: For numeric values - `date`: For date values (use MM/DD/YYYY format or epoch timestamp) **Naming constraints:** - Field names must be unique - Cannot use reserved field names: first_name, last_name, email, created_at, updated_at, last_emailed, last_clicked, last_opened - Names should contain only alphanumeric characters, underscores, and hyphens **Note:** Once a custom field is created with a specific type, the type cannot be changed. To use a different type, you must delete the field and create a new one." }, { "slug": "SENDGRID_CREATE_A_LIST", "name": "Create a list", "description": "Create a new contact list in SendGrid's Marketing Campaigns. This endpoint creates a list that can be used to organize and segment your contacts for targeted email campaigns. Once created, you can add recipients to the list using the 'Add a Single Recipient to a List' action. Note: List names must be unique within your account. Attempting to create a list with a duplicate name will result in a 400 error." }, { "slug": "SENDGRID_CREATE_AN_ACCOUNT", "name": "Create an account", "description": "Creates a new customer account under your organization using the Account Provisioning API. IMPORTANT: This endpoint is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. The response includes the account_id which must be stored for all subsequent Account Provisioning API operations on this customer account." }, { "slug": "SENDGRID_CREATE_A_NEW_ALERT", "name": "Create a new alert", "description": "Create a new SendGrid alert. Supports two alert types: - **usage_limit**: Notifies when email usage reaches a percentage threshold (requires `percentage` param). - **stats_notification**: Sends periodic email statistics (requires `frequency` param: daily/weekly/monthly)." }, { "slug": "SENDGRID_CREATE_A_NEW_EVENT_WEBHOOK", "name": "Create a new event webhook", "description": "Set up an Event Webhook by providing a URL, choosing events for POST requests, and receive a unique ID. After creation, you can add names, OAuth, and signature verification." }, { "slug": "SENDGRID_CREATE_A_NEW_SUPPRESSION_GROUP", "name": "Create a new suppression group", "description": "Create a new suppression group (unsubscribe group) to allow recipients to opt out of specific types of emails. Suppression groups are specific categories of email (like newsletters, promotions, or alerts) that recipients can individually unsubscribe from. You can create up to 200 suppression groups per account. **Important Notes:** - The name and description will be visible to recipients when they manage their email preferences - Wait at least one minute after creating a group before using it in email sends - To add email addresses to the suppression group, use the \"Add suppressions to a suppression group\" action **Example use cases:** - Daily newsletters - Weekly digests - Marketing promotions - System alerts - Event invitations" }, { "slug": "SENDGRID_CREATE_A_NEW_TRANSACTIONAL_TEMPLATE_VERSION", "name": "Create a new transactional template version", "description": "**This endpoint allows you to create a new version of a template.**" }, { "slug": "SENDGRID_CREATE_AN_IP_POOL", "name": "Create an ip pool", "description": "Creates a new IP pool in your SendGrid account. IP pools allow you to group your dedicated SendGrid IP addresses together. For example, you could create separate pools for transactional and marketing emails to maintain separate reputations. Requires a SendGrid account with dedicated IP addresses (Pro or Premier plan). You can create up to 100 IP pools per account." }, { "slug": "SENDGRID_CREATE_AN_IP_POOL_WITH_A_NAME_AND_IP_ASSIGNMENTS", "name": "Create an ip pool with a name and ip assignments", "description": "Creates a new IP Pool in your SendGrid account using the IP Address Management API. IP Pools allow you to group your dedicated SendGrid IP addresses together (e.g., separate pools for transactional vs marketing emails to maintain separate reputations). This endpoint creates the pool AND optionally assigns IPs in a single atomic operation. If any IP assignment fails, the entire operation fails and no pool is created. Requirements: - SendGrid Pro or Premier plan with dedicated IP addresses - IP Address Management API access (beta feature) - Maximum 100 IP pools per account - Maximum 100 IPs per pool" }, { "slug": "SENDGRID_CREATE_AN_SSO_CERTIFICATE", "name": "Create an sso certificate", "description": "Create an SSO certificate for SAML 2.0 Single Sign-On authentication. This endpoint creates an SSO certificate that allows SendGrid to verify SAML requests from your Identity Provider (IdP). The certificate is used in the SAML authentication flow to establish trust between SendGrid and your IdP. Note: SSO functionality requires a SendGrid Email API Pro, Premier, or Marketing Campaigns Advanced plan." }, { "slug": "SENDGRID_CREATE_AN_SSO_INTEGRATION", "name": "Create an sso integration", "description": "Create a new Single Sign-On (SSO) integration for your SendGrid account. This endpoint allows you to configure SAML 2.0 SSO with your Identity Provider (IdP) such as Okta, Azure AD, or Duo. SSO enables your team members to authenticate using your organization's identity management system. **Note**: SSO is available only for SendGrid Email API Pro, Premier, and Marketing Campaigns Advanced plans. Requires appropriate SSO permissions." }, { "slug": "SENDGRID_CREATE_AN_SSO_TEAMMATE", "name": "Create an sso teammate", "description": "Creates a Single Sign-On (SSO) Teammate in SendGrid. SSO Teammates authenticate via your Identity Provider (IdP) instead of username/password. Requires: Enterprise SendGrid account with SSO integration enabled. Permission assignment (choose ONE approach): - Set `is_admin=true` for full admin access - Set `persona` for predefined permission sets (accountant/developer/marketer/observer) - Set `scopes` array for custom granular permissions For Subuser-restricted access, set `has_restricted_subuser_access=true` and provide `subuser_access` array." }, { "slug": "SENDGRID_CREATE_A_PARSE_SETTING", "name": "Create a parse setting", "description": "Creates a new Inbound Parse Webhook setting to receive and parse incoming emails. **Prerequisites:** 1. The hostname must be part of a domain that is authenticated via SendGrid Domain Authentication. 2. Your domain's MX records must point to `mx.sendgrid.net` (priority 10). 3. The receiving URL must be publicly accessible and return HTTP 200 on success. **Parameters:** - `hostname`: Required. A subdomain of your authenticated domain (e.g., `parse.yourdomain.com`). - `url`: Required. Public webhook URL to receive parsed emails via HTTP POST. - `send_raw`: Optional. Set to `true` to receive raw MIME content. - `spam_check`: Optional. Set to `true` to enable spam filtering (emails ≤2.5MB). **Returns:** The created parse setting with hostname, url, send_raw, and spam_check values." }, { "slug": "SENDGRID_CREATE_API_KEYS", "name": "Create api keys", "description": "Creates a new SendGrid API key with specified permissions. The first API key must be created in the SendGrid App UI; subsequent keys can be created via this endpoint. Limit: 100 keys per account. If no scopes are specified, the key receives Full Access permissions. The API key string is only returned once in the response - store it securely. Requires 'api_keys.create' scope on the authenticating API key." }, { "slug": "SENDGRID_CREATE_A_SEGMENT", "name": "Create a segment", "description": "Creates a new segment in SendGrid's Contact Database (Legacy Marketing Campaigns). Segments group contacts based on specified conditions for targeted email campaigns. Conditions support various operators: 'eq' (equals), 'ne' (not equals), 'contains', 'not_contains', 'gt', 'lt', 'ge', 'le' for text/date/number fields. Multiple conditions can be combined using 'and'/'or' logical operators." }, { "slug": "SENDGRID_CREATE_A_SENDER", "name": "Create a sender", "description": "Creates a new Sender identity for use in SendGrid Marketing Campaigns. You may create up to 100 unique Senders. Senders must be verified before use - if your domain is authenticated the Sender will auto-verify, otherwise a verification email will be sent to the from_email address. Required fields: nickname, from_email, from_name, address, city, and country." }, { "slug": "SENDGRID_CREATE_A_SENDER_IDENTITY", "name": "Create a sender identity", "description": "**Create a new sender identity in SendGrid.** A sender identity is required to send email through SendGrid. It represents the \"from\" information that recipients will see. You may create up to 100 unique sender identities. **Verification**: Newly created senders must be verified before use: - If your domain is authenticated with SendGrid, the sender will auto-verify - Otherwise, a verification email will be sent to the from_email address - Only verified senders can be used to send emails **Required fields**: address, city, country, from_email, from_name, nickname, reply_to_email **Optional fields**: address_2, state, zip, reply_to_name **Use cases**: - Set up sender identities for different teams or campaigns - Configure transactional email senders - Manage multiple brand identities" }, { "slug": "SENDGRID_CREATE_A_TRANSACTIONAL_TEMPLATE", "name": "Create a transactional template", "description": "Create a new transactional email template in SendGrid. Transactional templates allow you to create reusable email templates for sending transactional emails. Each account and subuser can create up to 300 templates. Templates are not shared between parent accounts and subusers. You can create either: - Legacy templates: Use substitution tags like -name- for variable replacement - Dynamic templates: Use Handlebars syntax like {{name}} for more powerful templating After creating a template, you'll need to add a version with content before it can be used to send emails." }, { "slug": "SENDGRID_CREATE_CUSTOM_FIELD_DEFINITION", "name": "Create custom field definition", "description": "Create unique case-insensitive custom fields with alphanumeric/underscore names starting with a letter/underscore. Save the ID for edits/deletes. Limited to 500 fields of type date, text, or number. Avoid starting with numbers to prevent campaign issues." }, { "slug": "SENDGRID_CREATE_DESIGN", "name": "Create design", "description": "Creates a new email design in the SendGrid Design Library. The design can be used for Single Sends, Automations, and Dynamic Templates. Requires at minimum an html_content parameter with valid HTML. Returns the created design with its unique ID, thumbnail URL, and timestamps." }, { "slug": "SENDGRID_CREATE_INTEGRATION", "name": "Create Marketing Integration", "description": "Create a SendGrid Marketing Integration for email event forwarding to Segment. This action creates an integration that automatically forwards specified email events (like opens, clicks, bounces, etc.) from SendGrid Marketing Campaigns to your Segment account for analytics and customer data management. **Prerequisites:** - A Segment account with a configured Source - The write key from your Segment Source - API key with Marketing permissions (Full Access or Custom Access with Marketing scope) **Limits:** - Maximum of 10 Segment integrations per user **Common Use Cases:** - Track email engagement in your customer data platform - Trigger automated workflows based on email events - Build unified customer profiles with email interaction data" }, { "slug": "SENDGRID_CREATE_LIST", "name": "Create list", "description": "Create a new contact list in SendGrid Marketing Campaigns. Lists are static collections of contacts used for organizing and targeting email campaigns. Once created, you can add contacts to the list using the Contacts API or configure automations to trigger when new contacts are added. Note: You can create a maximum of 1000 lists per account. List names must be unique within your account. Requires the Marketing Campaigns API scope (marketing.lists.create)." }, { "slug": "SENDGRID_CREATE_SEGMENT", "name": "Create segment", "description": "Creates a new contact segment using SendGrid's Marketing Campaigns Segmentation V2 API. Segments allow you to group contacts based on SQL queries against contact data and engagement events. Segment names must be unique. Contacts matching the query criteria are automatically added within 15-30 minutes. Use engagement data (opens, clicks) for behavioral targeting or contact fields (email, name, custom fields) for demographic segments." }, { "slug": "SENDGRID_CREATE_SINGLE_SEND", "name": "Create single send", "description": "The endpoint lets you create a Single Send draft without needing a template ID; it now uses `email_config`. A set `send_at` doesn't schedule it; it must be done through another endpoint or UI." }, { "slug": "SENDGRID_CREATE_SUBUSER", "name": "Create subuser", "description": "**This endpoint allows you to create a new subuser.** Subusers allow you to segment your email sending and API activity. They are typically available on Pro plans or above. Your API key must have proper 'subuser' permissions to use this endpoint. The requester's IP address must be whitelisted in your SendGrid account settings if IP access management is enabled." }, { "slug": "SENDGRID_CREATE_VERIFIED_SENDER_REQUEST", "name": "Create verified sender request", "description": "This endpoint creates a new sender identity via `POST`, sends a verification email to `from_email`, and requires email verification. To resend, use `/resend/{id}`. For domain authentication, refer to the Domain Authentication API." }, { "slug": "SENDGRID_DELETE_A_BATCH_OF_IPS_FROM_AN_IP_POOL", "name": "Delete a batch of ips from an ip pool", "description": "Removes a batch of IP addresses from a specified IP Pool in SendGrid. This operation unassigns the specified IPs from the pool but does NOT delete the IPs from your SendGrid account - they remain available for assignment to other pools. Requirements: - A SendGrid account with dedicated IP addresses (Pro or Premier plan) - API key with 'IP Address Management' permissions - Valid pool ID and IP addresses that are currently assigned to that pool Note: This endpoint is part of the IP Address Management API which is currently in public beta." }, { "slug": "SENDGRID_DELETE_A_BATCH_OF_SUBUSERS_FROM_AN_IP", "name": "Delete a batch of subusers from an ip", "description": "Removes multiple subusers from a specified IP address in a single batch operation. This action unassigns subusers from an IP address, preventing them from sending email through that IP. This is useful for managing IP reputation or reallocating IP resources. All removals must succeed; if any subuser removal fails, the entire operation returns an error. Requires IP Address Management permissions. Use GET_A_LIST_OF_SUBUSERS_ASSIGNED_TO_AN_IP first to verify which subusers are currently assigned to the IP address. Note: This API is part of the IP Address Management API which is in public beta." }, { "slug": "SENDGRID_DELETE_A_BOUNCE", "name": "Delete a bounce", "description": "Removes an email address from your SendGrid bounce suppression list. Use this to manually clear a bounced email, allowing future delivery attempts. Bounces occur when an email cannot be delivered due to permanent failures (e.g., invalid address, mailbox full). SendGrid automatically adds these to your bounce list. **When to use:** After verifying the email is now valid, fixing issues that caused the bounce, or when the recipient confirms they want to receive emails again. **Response codes:** 204 (success), 404 (email not in bounce list), 403 (insufficient permissions). **Caution:** Repeatedly sending to addresses that bounce negatively impacts sender reputation. Only remove bounces when you have valid reason to believe the address is now deliverable." }, { "slug": "SENDGRID_DELETE_A_BRANDED_LINK", "name": "Delete a branded link", "description": "Permanently delete a branded link from your SendGrid account. A successful deletion returns HTTP 204 No Content. The operation is irreversible - once deleted, the branded link cannot be recovered. If you need to record the link's details, use the 'Retrieve a branded link' endpoint before deletion. Note: Links will only break if you remove the associated DNS CNAME records from your DNS host after deletion. Subusers can delete branded links using the `on-behalf-of` header with their ID." }, { "slug": "SENDGRID_DELETE_A_CAMPAIGN", "name": "Delete a campaign", "description": "Permanently deletes a specific marketing campaign from your SendGrid account. **Note**: This endpoint is part of the Legacy Marketing Campaigns API. The campaign cannot be recovered once deleted. Ensure you have the correct campaign ID before calling this endpoint. Returns HTTP 204 No Content on successful deletion." }, { "slug": "SENDGRID_DELETE_A_CONTACT_IDENTIFIER", "name": "Delete a contact identifier", "description": "Removes a specific identifier (EMAIL, PHONENUMBERID, EXTERNALID, or ANONYMOUSID) from a contact without deleting the entire contact. The operation runs asynchronously and returns a job_id to track progress. Note: This will fail if you try to remove the contact's only identifier - contacts must have at least one identifier." }, { "slug": "SENDGRID_DELETE_A_CUSTOM_FIELD", "name": "Delete a custom field", "description": "Permanently deletes a custom field from your SendGrid contact database. **Important:** - This uses the Legacy Marketing Campaigns Contacts API - Only custom fields can be deleted; reserved fields cannot be deleted - Deleting a custom field will remove all data stored in that field for all contacts - This action cannot be undone **How to get the custom_field_id:** - Use 'Retrieve all custom fields' action to list all custom fields and their IDs - The ID is returned when creating a custom field via 'Create a custom field' - Custom field IDs are integers (e.g., 182757801, 182757802) Returns HTTP 204 (No Content) on successful deletion." }, { "slug": "SENDGRID_DELETE_A_GLOBAL_SUPPRESSION", "name": "Delete a global suppression", "description": "This endpoint removes an email from suppressions, allowing future emails to be sent to it. Use with consent or bypass filters for one-off emails." }, { "slug": "SENDGRID_DELETE_AN_ACCOUNT", "name": "Delete an account", "description": "Permanently deletes a customer account under your organization using the Account Provisioning API. **WARNING:** This action is IRREVERSIBLE and will: - Revoke all API keys and SSO access (user can no longer log in) - Remove all SendGrid resources including dedicated IPs - Cancel billing effective immediately **ACCESS REQUIREMENTS:** This endpoint is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. **PARAMETERS:** - accountID: The unique account identifier (UUID format) from Create Account or List Accounts **RESPONSES:** - HTTP 200: Account successfully deleted - HTTP 403: Forbidden - requires partner/reseller API credentials - HTTP 404: Account ID not found" }, { "slug": "SENDGRID_DELETE_AN_ALERT", "name": "Delete an alert", "description": "Delete a SendGrid alert by its ID. Permanently removes an alert from your account. Alerts allow you to receive notifications regarding email usage or statistics: - **Usage alerts**: Notify when email usage reaches a percentage threshold - **Stats notifications**: Periodic email statistics reports (daily/weekly/monthly) Returns HTTP 204 No Content on successful deletion." }, { "slug": "SENDGRID_DELETE_AN_AUTHENTICATED_DOMAIN", "name": "Delete an authenticated domain", "description": "Delete an authenticated domain (formerly known as domain whitelabel) by its ID. Deleting an authenticated domain removes the domain authentication, which means recipients may see 'via sendgrid.net' or 'sent on behalf of' messages again when receiving emails from that domain. **Important Notes:** - This action is irreversible; the domain's DNS records will need to be set up again if you want to re-authenticate the domain later. - Returns HTTP 204 No Content on successful deletion. - Requires the 'whitelabel.domains.delete' API scope. **Use Case:** Call this endpoint when you no longer need domain authentication for a specific sending domain, such as when decommissioning a domain or cleaning up test domains." }, { "slug": "SENDGRID_DELETE_AN_IP_POOL", "name": "Delete an IP Pool", "description": "Delete an IP pool by its name using the legacy IP Pools API. IP pools allow you to group your dedicated SendGrid IP addresses together. For example, you could create separate pools for transactional and marketing email to maintain separate reputations. Important notes: - This operation is irreversible - the pool will be permanently deleted - IP addresses in the deleted pool will be unassigned but remain in your account - Requires a SendGrid Pro or Premier plan with dedicated IP addresses - IP pools can only be used with IP addresses that have reverse DNS configured Returns: - HTTP 204: Pool successfully deleted (empty response body) - HTTP 404: Pool not found (returns error message) - HTTP 403: API key lacks required permissions" }, { "slug": "SENDGRID_DELETE_AN_SSO_CERTIFICATE", "name": "Delete an SSO Certificate", "description": "Delete an SSO certificate by its unique identifier. This endpoint permanently removes an SSO (Single Sign-On) certificate from your SendGrid account. SSO certificates are used to verify SAML requests between your Identity Provider (IdP) and SendGrid. **Important Notes:** - This action is irreversible - the certificate cannot be recovered after deletion. - Deleting a certificate may break SSO authentication if the certificate is in use. - SSO features require SendGrid Email API Pro, Premier, or Marketing Campaigns Advanced plans. - You can retrieve certificate IDs using the 'Get All SSO Certificates by Integration' endpoint. **Returns:** HTTP 204 No Content on success with an empty response body." }, { "slug": "SENDGRID_DELETE_AN_SSO_INTEGRATION", "name": "Delete an SSO Integration", "description": "Delete an SSO (Single Sign-On) integration by ID. This endpoint permanently removes an IdP (Identity Provider) configuration from your SendGrid account. Once deleted, users will no longer be able to authenticate using this SSO integration. **Important Notes:** - This is a destructive operation and cannot be undone. - SSO functionality is only available for SendGrid Email API Pro, Premier, and Marketing Campaigns Advanced plans. - You can retrieve SSO integration IDs from the 'Get All SSO Integrations' endpoint. **Response:** - On success, returns HTTP 204 No Content with an empty response body. - Returns HTTP 403 Forbidden if your account lacks SSO permissions. - Returns HTTP 404 Not Found if the integration ID does not exist." }, { "slug": "SENDGRID_DELETE_A_PARSE_SETTING", "name": "Delete a parse setting", "description": "Deletes a specific inbound parse webhook setting by hostname. **Use Case:** Remove an inbound parse configuration when you no longer want SendGrid to receive and process emails for a particular hostname. **Prerequisites:** - The hostname must exist as a configured parse setting - Use 'Retrieve all parse settings' to find valid hostnames to delete **Returns:** - HTTP 204 No Content on successful deletion (empty response body) - HTTP 404 if the hostname doesn't exist - HTTP 403 if the API key lacks Parse Webhook permissions" }, { "slug": "SENDGRID_DELETE_API_KEYS", "name": "Delete api keys", "description": "**This endpoint allows you to revoke an existing API Key using an `api_key_id`** Authentications using a revoked API Key will fail after after some small propogation delay. If the API Key ID does not exist, a `404` status will be returned." }, { "slug": "SENDGRID_DELETE_A_RECIPIENT", "name": "Delete a recipient", "description": "**[LEGACY API - DEPRECATED]** Deletes a single recipient from the Legacy Marketing Campaigns contact database. This endpoint is part of SendGrid's deprecated Contact Database API (contactdb) and is NOT accessible on accounts created after July 2020. **IMPORTANT**: Modern SendGrid accounts should use the 'Delete Contacts' action (`/v3/marketing/contacts`) instead, which is part of the current Marketing Campaigns API. For accounts with legacy access, this permanently removes the recipient from all contact lists and segments, which may be required for data privacy compliance." }, { "slug": "SENDGRID_DELETE_A_REVERSE_DNS_RECORD", "name": "Delete a reverse dns record", "description": "This endpoint deletes a reverse DNS record, returning a 204 code on success. Retrieve record IDs using the \"Retrieve all reverse DNS records\" endpoint." }, { "slug": "SENDGRID_DELETE_A_SEGMENT", "name": "Delete a segment", "description": "Permanently deletes a segment from the SendGrid Contact Database (Legacy Marketing Campaigns). This endpoint allows you to delete a segment from your recipients database. You also have the option to delete all the contacts from your Marketing Campaigns recipient database who were in this segment. Important notes: - This is part of the Legacy Marketing Campaigns API (Contact Database) - Use delete_contacts=true to also remove contacts belonging to this segment - If delete_contacts is false or omitted, contacts remain in other segments and the main database - This operation cannot be undone - Returns HTTP 204 No Content on successful deletion - Returns HTTP 404 if the segment ID does not exist To get segment IDs, use the 'Retrieve All Segments' endpoint (GET /v3/contactdb/segments)." }, { "slug": "SENDGRID_DELETE_A_SENDER", "name": "Delete a sender", "description": "Permanently delete an existing Marketing Campaigns Sender identity from your SendGrid account. Senders are the 'from' addresses (sender identities) used in Marketing Campaigns emails. This endpoint removes a specific sender by its unique numeric ID. **Important notes:** - This action is IRREVERSIBLE - the deleted Sender cannot be recovered. - You cannot delete a Sender that is currently being used by an active campaign. - After deletion, any campaigns referencing this Sender ID will fail to send. - Returns HTTP 204 (No Content) with empty body on successful deletion. - Returns HTTP 404 if the sender ID does not exist. - Returns HTTP 403 if the API key lacks permissions or IP is not whitelisted." }, { "slug": "SENDGRID_DELETE_A_SENDER_IDENTITY", "name": "Delete a sender identity", "description": "Permanently deletes a sender identity from your SendGrid account. **Important:** This action is irreversible. The deleted sender identity cannot be recovered. Sender identities are used for marketing campaigns and transactional emails. Ensure the sender identity is not in active use before deletion. **Returns:** HTTP 204 No Content on successful deletion (empty response body)." }, { "slug": "SENDGRID_DELETE_A_SINGLE_EVENT_WEBHOOK_BY_ID", "name": "Delete a single event webhook by id", "description": "Delete a specific Event Webhook by ID with this endpoint. Unlike other endpoints which default to the oldest webhook, this requires an ID, else it errors to prevent accidental deletions. To disable, not delete, use `enabled` property to `false`." }, { "slug": "SENDGRID_DELETE_A_SINGLE_RECIPIENT_FROM_A_SINGLE_LIST", "name": "Delete a single recipient from a single list", "description": "Remove a single recipient from a SendGrid contact list. This endpoint is part of the Legacy Marketing Campaigns API (contactdb). Note: This API has been deprecated by SendGrid and may not be available for newer accounts. Consider using the newer Marketing Contacts API (/v3/marketing/contacts) for new implementations. On success, returns an empty response with HTTP 204 status. If the recipient is not on the list, the operation still succeeds (idempotent)." }, { "slug": "SENDGRID_DELETE_A_SPECIFIC_BLOCK", "name": "Delete a specific block", "description": "Deletes a specific email address from your SendGrid blocks list. Blocked emails are addresses that have been rejected by a receiving server or flagged for issues like ISP blocking, content filtering, or server rejection. Unlike bounces, SendGrid does not automatically suppress future messages to blocked addresses, so you may want to remove them manually using this endpoint. Returns HTTP 204 (No Content) on successful deletion. Returns HTTP 404 if the email address is not found in the blocks list." }, { "slug": "SENDGRID_DELETE_A_SPECIFIC_INVALID_EMAIL", "name": "Delete a specific invalid email", "description": "Removes a specific email address from SendGrid's invalid emails suppression list. Invalid emails are addresses that are formatted incorrectly according to internet email standards or do not exist at the recipient's mail server. When SendGrid attempts to deliver to these addresses, they result in permanent delivery failures. This endpoint removes the suppression, allowing SendGrid to attempt delivery again. **Use Cases**: - Email address was corrected by the recipient - Address was temporarily invalid but is now active - Testing email delivery after fixing recipient's email configuration **Important**: Only remove invalid emails when you have confirmed the address is now valid. Repeatedly attempting to send to genuinely invalid addresses can impact your sender reputation. **Returns**: Empty response (HTTP 204) on success, 404 if email not found in invalid emails list, 403 if insufficient API key permissions. **Required Permission**: API key must have `suppression.invalid_emails.delete` scope." }, { "slug": "SENDGRID_DELETE_A_SPECIFIC_SPAM_REPORT", "name": "Delete a specific spam report", "description": "Removes a specific spam report from SendGrid's suppression list by email address. When an email recipient marks your message as spam, SendGrid adds their email to the spam reports suppression list to protect your sender reputation. This endpoint removes that suppression, allowing future emails to be sent to the address. **Use with caution**: Only remove spam reports when you have explicit consent from the recipient to send them emails again. Repeatedly sending to addresses that marked you as spam can damage your sender reputation. **Alternatives**: Consider using bypass filters for one-off exceptions rather than permanently removing spam reports. **Returns**: Empty response (HTTP 204) on success, 404 if email not found in spam reports, 403 if insufficient permissions." }, { "slug": "SENDGRID_DELETE_A_SUBUSER", "name": "Delete a subuser", "description": "Permanently delete a subuser from your SendGrid account. **WARNING**: This is a permanent, irreversible action. Once deleted, the subuser account cannot be retrieved and all access to Twilio SendGrid is immediately revoked. The subuser's email sending history and statistics will also be removed. On success, returns HTTP 204 No Content with an empty response body." }, { "slug": "SENDGRID_DELETE_A_SUPPRESSION_FROM_A_SUPPRESSION_GROUP", "name": "Delete a suppression from a suppression group", "description": "Remove an email address from a suppression group (unsubscribe group). This re-enables email delivery to the specified address for the given group. Use this only when recipients explicitly opt back in to receiving emails. Note: The API returns HTTP 204 No Content on success with an empty response body." }, { "slug": "SENDGRID_DELETE_A_SUPPRESSION_GROUP", "name": "Delete a suppression group", "description": "This API endpoint deletes email suppression groups. Deleted group members get globally suppressed if they unsubscribe. Use with caution, only if recipients want to resubscribe. Bypass filters available for exceptions." }, { "slug": "SENDGRID_DELETE_A_TEMPLATE", "name": "Delete a template", "description": "Permanently deletes a transactional template from your SendGrid account. **Important:** This action is irreversible. The deleted template and all its versions cannot be recovered. Ensure the template is not actively being used in any email campaigns or automated sends before deletion. Templates can be either dynamic (ID starts with 'd-') or legacy (standard UUID format). Deleting a template removes all its versions and associated metadata. **Returns:** HTTP 204 No Content on successful deletion (empty response body)." }, { "slug": "SENDGRID_DELETE_A_TRANSACTIONAL_TEMPLATE_VERSION", "name": "Delete a transactional template version", "description": "**Delete a specific version of a transactional template.** This endpoint permanently removes a template version. Once deleted, the version cannot be recovered. If you want to delete all versions of a template at once, use the delete template endpoint instead. Note: Deleting the active version will not automatically activate another version. Returns HTTP 204 No Content on success with an empty response body." }, { "slug": "SENDGRID_DELETE_BLOCKS", "name": "Delete blocks", "description": "Delete blocked email addresses from your SendGrid suppression list. Blocked emails are addresses that have been rejected by the receiving server. This endpoint provides two ways to delete blocks: 1. Delete ALL blocks: Set `delete_all=true` to remove all blocked addresses 2. Delete specific blocks: Provide an `emails` array with specific addresses to remove Note: Use either `delete_all` OR `emails`, not both. On success, returns an empty response (HTTP 204)." }, { "slug": "SENDGRID_DELETE_BOUNCES", "name": "Delete bounces", "description": "Delete bounced email addresses from your SendGrid bounce suppression list. Use this action to remove email addresses from your bounce list, allowing you to attempt sending to them again. You can either delete all bounces at once by setting `delete_all` to true, or delete specific email addresses by providing them in the `emails` list. Note: You must provide exactly one of `delete_all` or `emails` - they cannot be used together." }, { "slug": "SENDGRID_DELETE_BULK_INTEGRATION", "name": "Bulk Delete Integrations", "description": "Bulk delete multiple Integrations by providing their IDs as a query parameter. Integrations are used for email event forwarding to third-party applications (e.g., Segment). Integration IDs can be retrieved by making a GET request to `/v3/marketing/integrations`. This operation is irreversible - deleted integrations cannot be recovered. Returns 204 No Content on success." }, { "slug": "SENDGRID_DELETE_CANCELLATION_OR_PAUSE_FROM_SCHEDULED_SEND", "name": "Delete a cancellation or pause from a scheduled send", "description": "Resume a paused or cancelled scheduled send by removing its pause/cancel status. This action deletes the cancellation or pause status from a batch of scheduled sends, effectively resuming them. Use this when you want to: - Resume a paused scheduled send that you previously stopped - Undo a cancel action (if done before the emails are discarded) **Important notes:** - The batch_id must have an existing pause or cancel status - Paused sends that are more than 72 hours past their scheduled time will be discarded as Expired (cannot be resumed) - Cancelled sends are discarded when their send_at time arrives - Returns HTTP 204 No Content on success (empty response body) - Returns HTTP 404 if the batch_id doesn't exist or has no status set **Workflow:** First use 'cancel_or_pause_a_scheduled_send' to pause/cancel, then use this action to resume if needed." }, { "slug": "SENDGRID_DELETE_CONTACTS", "name": "Delete contacts", "description": "Deletes contacts from your SendGrid Marketing Campaigns account. This is a destructive, irreversible operation. Deletions are processed asynchronously - a job_id is returned immediately that can be used to track progress. IMPORTANT: You must provide EITHER 'ids' (comma-separated contact UUIDs) to delete specific contacts, OR 'delete_all_contacts' set to \"true\" to delete all contacts. Do not use both. Requires Marketing Campaigns permissions (marketing.write scope). Twilio SendGrid recommends regularly exporting your contacts as a backup before deletion." }, { "slug": "SENDGRID_DELETE_CUSTOM_FIELD_DEFINITION", "name": "Delete custom field definition", "description": "Permanently deletes a custom field definition from SendGrid Marketing Campaigns. **Important notes:** - Only custom fields can be deleted; reserved fields (first_name, last_name, email, etc.) cannot be deleted. - Custom fields that are used by active segments cannot be deleted until the segments are removed or modified. - This action is irreversible - all contact data stored in the deleted custom field will be lost. - On success, returns HTTP 204 No Content with empty response body. **Use case:** Use this endpoint when you need to clean up unused custom fields or restructure your contact data schema. **Getting custom_field_id:** Use 'Get All Field Definitions' to list all custom fields and their IDs before deletion." }, { "slug": "SENDGRID_DELETE_DESIGN", "name": "Delete design", "description": "**This endpoint allows you to delete a single design**. Be sure to check the ID of the design you intend to delete before making this request; deleting a design is a permanent action." }, { "slug": "SENDGRID_DELETE_INVALID_EMAILS", "name": "Delete invalid emails", "description": "Delete email addresses from your SendGrid invalid emails suppression list. Invalid emails are addresses that have hard bounced or have been identified as invalid. Removing addresses from this list allows SendGrid to attempt delivery to them again. Use cases: - Remove specific addresses that you want to retry sending to (use 'emails' parameter) - Clear the entire invalid emails list (use 'delete_all=true') WARNING: Deleting addresses from the suppression list is destructive and cannot be undone. Returns an empty response (HTTP 204) on success." }, { "slug": "SENDGRID_DELETE_IP_POOL", "name": "Delete ip pool", "description": "Delete an IP Pool from your SendGrid account using the IP Address Management API. This operation permanently deletes the specified IP Pool and automatically unassigns all IP addresses that were associated with the pool. The unassigned IP addresses will remain in your SendGrid account and can be reassigned to other pools. Note: This endpoint is part of the newer IP Address Management API (/v3/send_ips/pools) which may require specific API key permissions. For the legacy IP Pools API that uses pool names instead of IDs, see the 'Delete an IP pool' action at /v3/ips/pools/{pool_name}. Returns HTTP 204 No Content on successful deletion. Returns HTTP 404 if the specified pool does not exist." }, { "slug": "SENDGRID_DELETE_PENDING_TEAMMATE", "name": "Delete pending teammate", "description": "Delete a pending teammate invitation that hasn't yet been accepted. This endpoint cancels an outstanding invitation to join your SendGrid account as a teammate. Teammate invitations expire after 7 days if not accepted. Use this endpoint to revoke access before the invitee accepts. Once accepted, use 'Delete teammate' endpoint instead. Returns HTTP 204 No Content on successful deletion. Requires 'teammates.write' scope or full access API key." }, { "slug": "SENDGRID_DELETE_SINGLE_SEND_BY_ID", "name": "Delete single send by id", "description": "Permanently deletes a Single Send by its unique ID. You can obtain the Single Send ID from the GET `/v3/marketing/singlesends` endpoint or the SendGrid Marketing Campaigns UI. Warning: This deletion is irreversible - the Single Send and all associated data will be permanently removed. Returns 204 No Content on successful deletion." }, { "slug": "SENDGRID_DELETE_SINGLE_SEND_SCHEDULE", "name": "Delete single send schedule", "description": "Cancel a scheduled Single Send by deleting its scheduled send time. This action removes the schedule but preserves the Single Send as a draft - all campaign content (subject, body, recipients, etc.) remains intact and can be rescheduled or edited later. **Important distinctions:** - This endpoint removes only the *schedule*, not the Single Send itself - After deletion, the Single Send status changes from 'scheduled' to 'draft' - To permanently delete the entire Single Send, use DELETE /v3/marketing/singlesends/{id} **Success response:** HTTP 204 No Content (empty body) **Common errors:** - 404: Single Send ID not found - 422: Single Send is not currently scheduled (cannot unschedule a draft or sent campaign)" }, { "slug": "SENDGRID_DELETE_SPAM_REPORTS", "name": "Delete spam reports", "description": "Delete spam reports from your SendGrid spam report suppression list. Use this action to remove email addresses from your spam reports list, allowing you to attempt sending to them again. You can either delete all spam reports at once by setting `delete_all` to true, or delete specific email addresses by providing them in the `emails` list. Note: You must provide exactly one of `delete_all` or `emails` - they cannot be used together. Use with caution - only delete spam reports when recipients explicitly request to receive emails again." }, { "slug": "SENDGRID_DELETE_TEAMMATE", "name": "Delete teammate", "description": "Permanently delete a teammate from your SendGrid account. This endpoint removes a teammate's access to your account. Only the parent user or an admin teammate can delete another teammate. This action cannot be undone. **Important Notes:** - Deleted teammates cannot be recovered - Templates, campaigns, contacts, and API keys created by the teammate are NOT removed - Returns HTTP 204 No Content on successful deletion - Requires 'teammates.write' scope or full access API key" }, { "slug": "SENDGRID_DELETE_VERIFIED_SENDER", "name": "Delete verified sender", "description": "Deletes a Verified Sender Identity from your SendGrid account. Use this endpoint to permanently remove a Verified Sender by providing its unique `id`. You can find Sender Identity IDs by using the \"Get All Verified Senders\" endpoint. On successful deletion, the API returns HTTP 204 No Content. Note: This action is destructive and cannot be undone. The sender will need to be re-created and re-verified if needed again." }, { "slug": "SENDGRID_DENY_ACCESS_REQUEST", "name": "Deny access request", "description": "Denies a teammate's pending access request. This action removes the request without granting the requested permissions. Only teammate admins can deny access requests. Use this to reject requests from teammates who are asking for additional permissions or scope access that you don't want to grant. Note: A successful denial returns HTTP 204 No Content with an empty response body." }, { "slug": "SENDGRID_DISASSOCIATE_A_BRANDED_LINK_FROM_A_SUBUSER", "name": "Disassociate a branded link from a subuser", "description": "Remove a branded link association from a subuser account. This endpoint allows parent accounts to disassociate a branded link from a subuser. After disassociation, the subuser will no longer be able to use the parent's branded link for email tracking. Prerequisites: - The subuser must have a branded link currently associated with it - The API key must have whitelabel permissions and subuser management access - This operation requires a SendGrid Pro plan or higher with subusers enabled Note: The API returns HTTP 204 No Content on success with an empty response body." }, { "slug": "SENDGRID_DOMAIN_WARN_LIST", "name": "Domain warn list", "description": "Retrieves a list of domains known to implement DMARC (Domain-based Message Authentication, Reporting & Conformance) policies, categorized by failure type. DMARC failures affect email deliverability: - Hard failures: Emails using these domains as sender identities will NOT be delivered. - Soft failures: Emails may be delivered but could be marked as spam or have reduced deliverability. Use this endpoint to check if a domain you want to use as a sender identity has DMARC policies that could impact email delivery. Note: This endpoint requires the 'sender_verification' API scope." }, { "slug": "SENDGRID_DOWNLOAD_CSV", "name": "Get Email Activity CSV Download URL", "description": "Retrieves a presigned S3 URL to download a CSV file of email activity data (up to 1M events, last 30 days). **Workflow:** 1. Use SENDGRID_REQUEST_CSV to initiate CSV generation 2. Wait for SendGrid email with download link containing the UUID 3. Extract UUID from the email's download link 4. Use this action with the UUID to get the presigned S3 URL (valid for 3 days) 5. Make GET request to the presigned URL to download the CSV **Requirements:** Pro/Premier plan with \"30 Days Additional Email Activity History\" add-on. **Limitations:** One CSV request per 12 hours. Returns 403 if add-on not enabled." }, { "slug": "SENDGRID_DUPLICATE_A_TRANSACTIONAL_TEMPLATE", "name": "Duplicate a transactional template", "description": "Duplicate an existing transactional template to create a new template with the same content. Each parent account and Subuser can create up to 300 different transactional templates. Templates are specific to the parent account or Subuser and cannot be shared between them." }, { "slug": "SENDGRID_DUPLICATE_DESIGN", "name": "Duplicate design", "description": "Duplicates an existing email design in the SendGrid Design Library. Creates a copy of the specified design with a new unique ID. The duplicate can be customized with a new name, otherwise it will be named 'Duplicate: '. Use this to quickly create variations of existing email templates for Single Sends, Automations, or Dynamic Templates." }, { "slug": "SENDGRID_DUPLICATE_SEND_GRID_PRE_BUILT_DESIGN", "name": "Duplicate sendgrid pre built design", "description": "Duplicates a pre-built SendGrid email design template from the SendGrid Design Library. Pre-built designs are professionally designed email templates provided by SendGrid that can be duplicated and customized. The duplicate will be created in your personal Design Library with a unique ID. Use the 'List SendGrid Pre-built Designs' action first to retrieve available pre-built design IDs. Note: You cannot edit pre-built designs directly; you must duplicate them first and then modify your copy." }, { "slug": "SENDGRID_DUPLICATE_SINGLE_SEND", "name": "Duplicate Single Send", "description": "Duplicates an existing Single Send by its ID, creating a new draft that can be edited via the Update Single Send endpoint (PATCH). The duplicate inherits all settings from the original including email content, recipients, and sender configuration. If no name is provided, the duplicate is automatically named 'Copy of [original name]' (limited to 100 characters). Use this to quickly create variations of successful campaigns without starting from scratch." }, { "slug": "SENDGRID_EDIT_AN_SSO_TEAMMATE", "name": "Edit an SSO Teammate", "description": "Updates an existing SSO Teammate's permissions and profile in SendGrid. **Requirements**: Enterprise SendGrid account with SSO integration enabled. Only parent users or Teammates with admin permissions can update another Teammate. **Permission Assignment** (choose ONE approach): - Set `is_admin=true` for full admin access (do not use with scopes/persona) - Set `persona` for predefined permission sets (accountant/developer/marketer/observer) - Set `scopes` array for custom granular permissions **Subuser Access**: To restrict a Teammate to specific Subusers, set `has_restricted_subuser_access=true` and provide `subuser_access` array. **Note**: The `username` parameter is the Teammate's email address from your IdP." }, { "slug": "SENDGRID_EDIT_A_TRANSACTIONAL_TEMPLATE", "name": "Edit a transactional template", "description": "Updates the name of an existing transactional template. This endpoint allows you to rename a transactional template without affecting its content or versions. To modify the actual template content (HTML, subject line, etc.), use the template versions API instead. Requires a valid template_id which can be obtained from the 'Retrieve paged transactional templates' or 'Create a transactional template' endpoints." }, { "slug": "SENDGRID_EDIT_A_TRANSACTIONAL_TEMPLATE_VERSION", "name": "Edit a transactional template version", "description": "Edit a transactional template version in SendGrid. This endpoint allows you to update the content, subject, name, and other properties of an existing template version. Use this to modify email templates used for transactional emails like password resets, order confirmations, or notifications. You can update: - HTML and plain text content - Subject line - Version name - Active status (to make this version the primary one) - Test data for previewing dynamic content Note: Both template_id and version_id are required to identify the specific version to edit." }, { "slug": "SENDGRID_EDIT_VERIFIED_SENDER", "name": "Edit verified sender", "description": "Updates an existing verified sender identity in SendGrid. This action allows partial updates - only the fields you specify will be modified, while all other fields remain unchanged. Use this to update sender display names, addresses, or contact information. Note: Changing the from_email address will require re-verification. First retrieve sender IDs using the 'Get All Verified Senders' action, then pass the ID along with the fields you want to update." }, { "slug": "SENDGRID_EMAIL_DNS_RECORDS_TO_A_CO_WORKER", "name": "Email dns records to a co worker", "description": "Email DNS records to a co-worker for domain authentication or link branding setup. This action sends an email containing the DNS records needed to configure domain authentication (DKIM, SPF) or link branding in your DNS provider. - With Automated Security enabled: Sends 3 CNAME records - With Automated Security disabled: Sends 2 TXT records and 1 MX record Provide `domain_id` for domain authentication records, `link_id` for link branding records, or both to send all required DNS records in one email. Use SENDGRID_LIST_ALL_AUTHENTICATED_DOMAINS to get valid domain_id values. Use SENDGRID_RETRIEVE_ALL_BRANDED_LINKS to get valid link_id values." }, { "slug": "SENDGRID_ENABLE_DISABLE_A_SUBUSER", "name": "Enable disable a subuser", "description": "Enable or disable a SendGrid subuser account. Use this endpoint to control whether a subuser can send emails: - Set `disabled=true` to disable the subuser (prevents email sending) - Set `disabled=false` to enable the subuser (allows email sending) Note: This only affects the subuser's ability to send emails via API. For website access control, use the separate website access endpoint. Requires 'Subuser Management' API permissions." }, { "slug": "SENDGRID_ENABLE_DISABLE_WEBSITE_ACCESS_FOR_A_SUBUSER", "name": "Enable disable website access for a subuser", "description": "Enable or disable website portal access for a SendGrid subuser while preserving their email sending capabilities. Use this to control whether a subuser can log into the SendGrid web interface without affecting their ability to send emails via the API. Requires the 'subuser_admin' scope." }, { "slug": "SENDGRID_ERASE_RECIPIENTS_EMAIL_DATA", "name": "Erase recipients email data", "description": "Permanently erases recipients' personal email data from SendGrid for GDPR/privacy compliance. This operation removes PII (names, email addresses, subject lines, categories, IP addresses) for up to 5,000 email addresses per request (or 256KB payload limit). The erasure job runs asynchronously after a 202 Accepted response. IMPORTANT: - Deletions are irreversible and account-specific (does not affect Subusers) - Invalid email formats return an error - Rate limited to 100 requests/minute - Requires 'recipients.erasejob.create' scope Use this for data privacy compliance (GDPR, CCPA) when users request data deletion." }, { "slug": "SENDGRID_EXPORT_CONTACTS", "name": "Export contacts", "description": "Initiates an asynchronous job to export Marketing Campaigns contacts to CSV or JSON. **Use Cases:** - Export all contacts from your SendGrid Marketing Campaigns database - Export contacts from specific lists by providing list_ids - Export contacts from specific segments by providing segment_ids - Create backups of your contact data (recommended regularly) **Workflow:** 1. Call this endpoint to start an export job (returns a job ID) 2. Poll the 'Export Contacts Status' endpoint with the job ID to check progress 3. When status is 'ready', download files from the returned URLs **Important Notes:** - Exports are asynchronous and may take time for large contact lists - Download URLs expire 72 hours after export completion - If notifications_email is true, download links are sent via email instead - Without list_ids or segment_ids, all contacts are exported" }, { "slug": "SENDGRID_EXPORT_CONTACTS_STATUS", "name": "Export contacts status", "description": "Retrieves the status of a contact export job and provides download URLs when ready. Use this endpoint with an export job ID (returned by the 'Export Contacts' endpoint) to check the export status and get pre-signed URLs for downloading your contact CSV files. **Workflow:** 1. First, initiate an export using 'Export Contacts' (POST /v3/marketing/contacts/exports) 2. Use the returned job ID with this endpoint to poll for completion 3. When status is 'ready', use the URLs in the response to download CSV files **Status values:** - 'pending': Export is still being processed - 'ready': Export is complete and download URLs are available - 'failure': Export failed (check 'message' field for details) **Note:** Export files expire 72 hours after creation. Regular exports are recommended as a backup strategy." }, { "slug": "SENDGRID_EXPORT_SINGLE_SEND_STATS", "name": "Export single send stats", "description": "Exports Single Send campaign statistics in CSV format. This endpoint allows you to export stats for one or more Single Sends from SendGrid Marketing Campaigns. The exported CSV data includes engagement metrics such as opens, clicks, bounces, unsubscribes, and more. Use cases: - Export all Single Send stats when no IDs are specified - Export stats for specific Single Sends by providing their IDs - Adjust timezone for localized timestamp presentation Note: Requires Marketing Campaigns access in your SendGrid plan." }, { "slug": "SENDGRID_FILTER_ALL_MESSAGES", "name": "Filter all messages", "description": "Filter and retrieve email activity from the SendGrid Email Activity Feed API. This action queries email messages sent through SendGrid and returns activity data based on the provided filter criteria. You can search by recipient, sender, subject, status, message ID, template ID, and date ranges. **IMPORTANT**: This endpoint requires the \"30 Days Additional Email Activity History\" paid add-on to be purchased and configured on your SendGrid account. Without this add-on, requests will return a 403 Forbidden error. Additionally, the API key must have \"Email Activity\" permissions enabled. Query examples: - Filter by status: `status=\"delivered\"` - Filter by recipient: `to_email=\"user@example.com\"` - Compound query: `status=\"delivered\" AND to_email=\"user@example.com\"` - Date range: `last_event_time BETWEEN TIMESTAMP \"2024-01-01T00:00:00.000Z\" AND TIMESTAMP \"2024-01-31T23:59:59.999Z\"` For more information, see: https://www.twilio.com/docs/sendgrid/for-developers/sending-email/getting-started-email-activity-api" }, { "slug": "SENDGRID_FILTER_MESSAGES_BY_MESSAGE_ID", "name": "Filter messages by message id", "description": "Retrieve detailed information about a specific email message by its unique message ID. This endpoint returns comprehensive details including sender, recipient, subject, delivery status, template ID, and a list of events associated with the message. **Requirements:** - The \"30 Days Additional Email Activity History\" paid add-on must be purchased - API key must have \"Email Activity\" permission enabled - Available on Pro plans and higher **Note:** For Regional (EU) subusers, no data will be generated. If these requirements are not met, the API will return a 403 Forbidden error." }, { "slug": "SENDGRID_GET_ACCOUNT_OFFERINGS", "name": "Get account offerings", "description": "Retrieves the offerings (email packages and add-ons) assigned to a specific customer account. IMPORTANT: This endpoint is part of the Account Provisioning API and is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. Offerings include base email packages (e.g., Free, Essentials, Pro) and add-ons (e.g., Marketing Campaigns, Dedicated IPs, Expert Services). The available offerings depend on your reseller agreement with Twilio SendGrid. Use this endpoint to check what features are currently assigned to a customer account before making updates via the Update Account Offerings endpoint." }, { "slug": "SENDGRID_GET_A_CONTACT_BY_ID", "name": "Get a contact by id", "description": "Retrieves the full details of a single contact by their unique ID from SendGrid Marketing Campaigns. Returns all standard fields (email, name, address, etc.) and any custom fields defined for the contact. Use 'Get Contacts by Emails' or 'Search Contacts' endpoints to find a contact's ID first. Requires Marketing Campaigns permissions on your API key." }, { "slug": "SENDGRID_GET_A_LIST_OF_ALL_IP_ADDRESSES_ON_YOUR_ACCOUNT", "name": "Get a list of all ip addresses on your account", "description": "Fetches your account's IP addresses with details such as pool association and warm-up status. 'is_parent_assigned' and 'pool' must be exclusive. Pagination needs 'limit' and 'before_key' or 'after_key'." }, { "slug": "SENDGRID_GET_A_LIST_OF_ALL_SENDERS", "name": "Get a list of all senders", "description": "Retrieves a list of all Sender identities associated with your SendGrid account. Sender identities are used in Marketing Campaigns to define the 'from' information for your emails. This endpoint supports pagination through query parameters. **Pagination:** Use the `limit` parameter to control page size (default 500 if not specified). Use `lastSeenID` for cursor-based pagination by passing the ID of the last sender from the previous page to get the next page of results. **Filtering:** Use the `id` parameter to retrieve information about a specific sender identity. **Verification:** Only verified senders can be used to send emails. Check the `verified.status` field in the response to determine if a sender is ready for use. **Note:** Senders may be locked if they are associated with a campaign in Draft, Scheduled, or In Progress status." }, { "slug": "SENDGRID_GET_A_LIST_OF_SUBUSERS_ASSIGNED_TO_AN_IP", "name": "Get a list of subusers assigned to an ip", "description": "Retrieves a list of Subuser IDs assigned to a specific IP address in your SendGrid account. Returns up to 100 subuser IDs per request. Use pagination parameters ('after_key' and 'limit') to iterate through large result sets. The response includes subuser IDs only; use the Subusers API to get detailed information about each subuser." }, { "slug": "SENDGRID_GET_ALL_ACCOUNTS", "name": "Get all accounts", "description": "Retrieves all accounts under the organization." }, { "slug": "SENDGRID_GET_ALL_AUTOMATION_STATS", "name": "Get all automation stats", "description": "Retrieve email statistics for SendGrid Marketing Automations (automated email workflows). Returns performance metrics including delivery rates, opens, unique_opens, clicks, unique_clicks, bounces, unsubscribes, and spam_reports for each Automation. Supports filtering by specific Automation IDs and pagination for large result sets. Requirements: - API key must have the 'marketing.read' or 'marketing.automation.read' scope - Account must have Advanced Marketing Campaigns subscription - If IP whitelisting is enabled, the requestor's IP must be whitelisted Note: This endpoint may return empty results if no Marketing Automations exist in the account." }, { "slug": "SENDGRID_GET_ALL_AVAILABLE_OFFERINGS", "name": "Get all available offerings", "description": "Retrieves all available SendGrid offerings for account provisioning. This is a Partner/Reseller API endpoint that lists all the SendGrid product offerings that can be assigned to customer accounts. These include email packages, dedicated IPs, Marketing Campaigns, and other add-on features. Note: This endpoint is only available to SendGrid reseller partners with a formal partnership agreement. Access requires: - Valid partner API credentials - IP address whitelisting on SendGrid's partner API The returned offerings can be used when creating or updating customer accounts via the Account Provisioning API." }, { "slug": "SENDGRID_GET_ALL_CATEGORIES", "name": "Get All Single Sends Categories", "description": "Retrieve all categories associated with your Marketing Campaigns Single Sends. This endpoint returns up to your latest 1,000 categories that have been used to organize and tag your Single Sends in SendGrid's Marketing Campaigns. Categories help you filter and track your Single Sends by topic, campaign type, or any custom grouping you define. **Use cases**: - List all existing categories before creating a new Single Send - Verify category names for filtering Single Sends searches - Audit category usage across your marketing campaigns **Limitations**: - Returns up to 1,000 most recent categories - Paid plans: 1,000 categories daily limit - Free plans: 100 categories daily limit **Note**: This endpoint requires Marketing Campaigns API access. The API key must have the appropriate marketing scopes (marketing.read) and the requestor's IP address may need to be whitelisted for Marketing API access. **Response**: Returns a list of category name strings." }, { "slug": "SENDGRID_GET_ALL_EXISTING_EXPORTS", "name": "Get all existing exports", "description": "Retrieves all existing contact export jobs from SendGrid Marketing Campaigns. Returns an array of export jobs with their status, type, creation/completion timestamps, and download URLs for ready exports. Use this endpoint when you need to check the status of exports but don't have the export IDs. Export files are available for download for 72 hours after creation. Possible status values: 'pending', 'ready', or 'failure'." }, { "slug": "SENDGRID_GET_ALL_FIELD_DEFINITIONS", "name": "Get all field definitions", "description": "Retrieve all field definitions including custom and reserved fields from Marketing Campaigns. This action returns complete information about all field definitions in your SendGrid account: - **Custom Fields**: User-created fields (up to 500) with Text, Number, or Date types. Can be edited/deleted. - **Reserved Fields**: System-defined fields (email, first_name, last_name, etc.). Read-only, cannot be modified. Each field includes its unique ID (used in API calls), name, type, and metadata with management URLs. Useful for discovering field IDs needed for contact management operations. No parameters required - simply call to get all field definitions." }, { "slug": "SENDGRID_GET_ALL_IP_POOLS_THAT_HAVE_ASSOCIATED_IPS", "name": "Get all ip pools that have associated ips", "description": "The function lists your IP Pools and samples up to 10 IPs from each. For more IPs per pool, use \"Get IPs Assigned to an IP Pool.\" Max of 100 IP Pools per user." }, { "slug": "SENDGRID_GET_ALL_SENDER_IDENTITIES", "name": "Get all sender identities", "description": "**This endpoint allows you to retrieve a list of all sender identities that have been created for your account.**" }, { "slug": "SENDGRID_GET_ALL_SINGLE_SENDS", "name": "Get all single sends", "description": "Retrieve a list of your Single Sends with brief details, including their IDs. For in-depth information on a specific Single Send, use its ID at the `/marketing/singlesends/{id}` endpoint." }, { "slug": "SENDGRID_GET_ALL_SINGLE_SENDS_STATS", "name": "Get all single sends stats", "description": "Retrieve email statistics for SendGrid Single Sends (one-time marketing email campaigns). Returns performance metrics including delivery rates, opens, clicks, bounces, and unsubscribes for each Single Send. Supports filtering by specific Single Send IDs and pagination for large result sets. Use this action to analyze the performance of your marketing email campaigns and track engagement metrics over time. Requires the 'marketing.read' API scope." }, { "slug": "SENDGRID_GET_ALL_SSO_CERTIFICATES_BY_INTEGRATION", "name": "Get All SSO Certificates by Integration", "description": "Retrieves all SSO (Single Sign-On) certificates associated with a specific IdP integration. The `integration_id` parameter should be obtained from the 'Get All SSO Integrations' endpoint. Each certificate contains the X509 public certificate used to verify SAML authentication requests. Note: This endpoint requires an account with SSO features enabled." }, { "slug": "SENDGRID_GET_ALL_SSO_INTEGRATIONS", "name": "Get all sso integrations", "description": "**This endpoint allows you to retrieve all SSO integrations tied to your Twilio SendGrid account.** The IDs returned by this endpoint can be used by the APIs additional endpoints to modify your SSO integrations." }, { "slug": "SENDGRID_GET_ALL_VERIFIED_SENDERS", "name": "Get all verified senders", "description": "Retrieve all Sender Identities (verified/unverified) for an account via an endpoint. Customize results using `limit`, `lastSeenID`, and `id` parameters to define the results scope." }, { "slug": "SENDGRID_GET_AN_ACCOUNT_S_STATE", "name": "Get Account State", "description": "Retrieve the current state of a customer account using the Account Provisioning API. IMPORTANT: This endpoint is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. The account state indicates whether the customer can send email: - 'activated': Account is active and can send email - 'deactivated': Account is deactivated and cannot send email - 'suspended': Account is temporarily suspended - 'banned': Account is permanently banned - 'indeterminate': Unknown state - contact SendGrid support if encountered" }, { "slug": "SENDGRID_GET_AN_SSO_CERTIFICATE", "name": "Get an SSO Certificate", "description": "Retrieve an individual SSO certificate by its ID. SSO (Single Sign-On) certificates are X509 certificates used by SendGrid to verify that SAML requests are coming from your Identity Provider (IdP) such as Okta, Azure AD, or other SAML-compatible providers. Note: This endpoint requires SSO to be enabled on your SendGrid account (typically available on Pro or higher plans) and appropriate API key permissions." }, { "slug": "SENDGRID_GET_AN_SSO_INTEGRATION", "name": "Get an sso integration", "description": "**This endpoint allows you to retrieve an SSO integration by ID.** You can retrieve the IDs for your configurations from the response provided by the \"Get All SSO Integrations\" endpoint." }, { "slug": "SENDGRID_GET_A_SPECIFIC_SENDER", "name": "Get a specific sender", "description": "Retrieves the details of a specific Marketing Sender by its unique ID. Returns comprehensive sender information including: - Sender identification (ID, nickname) - Email configuration (from email/name, reply-to email/name) - Physical address details (address, city, state, zip, country) - Status flags (verified, locked) - Timestamps (created_at, updated_at) Note: Only verified Senders can be used to send emails. A Sender becomes locked when associated with a campaign in Draft, Scheduled, or In Progress status." }, { "slug": "SENDGRID_GET_A_USER_S_ACCOUNT_INFORMATION", "name": "Get a User's Account Information", "description": "Retrieves the authenticated user's SendGrid account details including account type (e.g., 'free', 'paid') and sender reputation score (0-100). This is a read-only endpoint that requires no parameters. The response includes the account type which indicates the user's subscription level, and the reputation score which reflects the sender's email deliverability standing. Required scope: user.account.read" }, { "slug": "SENDGRID_GET_A_USER_S_PROFILE", "name": "Get User Profile", "description": "Retrieve the authenticated user's profile details. This endpoint returns the current user's profile information including their name, contact details, company, and address. No parameters are required - the profile is retrieved for the authenticated user based on the API key used. **Required API Scope:** user.profile.read" }, { "slug": "SENDGRID_GET_AUTOMATION_CLICK_TRACKING_STATS_BY_ID", "name": "Get Automation Click Tracking Stats", "description": "Retrieve click-tracking statistics for a specific SendGrid Marketing Automation. Returns detailed link click statistics including the URL of each link, its position in the email, and the total number of clicks received. Results can be grouped by automation step for multi-step automations. Use this endpoint to analyze which links in your automation emails are performing best and optimize your email content accordingly. Requires the 'marketing.read' API scope." }, { "slug": "SENDGRID_GET_AUTOMATION_STATS_BY_ID", "name": "Get automation stats by id", "description": "Retrieve detailed stats for a specific Automation by ID, with optional date and aggregation filters, or use another endpoint to get stats for multiple Automations." }, { "slug": "SENDGRID_GET_BATCHED_CONTACTS_BY_IDS", "name": "Get batched contacts by ids", "description": "Retrieves multiple SendGrid Marketing Contacts by their IDs in a single batch request. This is more efficient than making individual GET requests when you need to fetch multiple contacts at once. You can supply up to 100 contact IDs per request. Use cases: - Fetch contact details for a list of known contact IDs - Verify contact existence before performing operations - Bulk retrieve contact data for reporting or sync purposes Note: Contact IDs can be obtained from 'Search Contacts', 'Get Contacts by Emails', or 'Add or Update a Contact' actions. For backup purposes, consider using the Export Contacts feature to regularly backup your contacts." }, { "slug": "SENDGRID_GET_BOUNCE_CLASS_STATS", "name": "Get bounce statistics by classification", "description": "Retrieve daily bounce statistics filtered by a specific classification type. Returns the number of bounces for the specified classification (e.g., 'Invalid Address', 'Reputation', 'Technical Failure') in descending order for each day within the given date range. Use this to analyze bounce patterns by classification over time. Classifications help categorize SMTP bounce responses into meaningful groups like: - Content: Issues with email content - Invalid Address: Hard bounces from non-existent addresses - Mailbox Unavailable: Temporary mailbox issues - Reputation: Sender reputation problems - Technical Failure: Server/connection issues - Frequency or Volume Too High: Rate limiting - Unclassified: Ambiguous responses" }, { "slug": "SENDGRID_GET_BULK_VALIDATION_JOB", "name": "Get Bulk Email Validation Job by ID", "description": "Retrieves the details of a specific Bulk Email Address Validation Job by its ID. Use this endpoint to check the status and progress of a bulk email validation job. You can track whether a job is pending, processing, or completed, and when results are available for download. **Prerequisites:** - This feature requires a Pro or Premier SendGrid account with Email Address Validation enabled. - The API key must have the 'Email Address Validation' scope. **Job Statuses:** - `Pending`: Job created but file not yet uploaded - `Ready`: File uploaded, waiting to process - `Processing`: Validation in progress - `Done`: Validation complete, results available - `Error` or `Failed`: Job encountered an error" }, { "slug": "SENDGRID_GET_CONTACTS_BY_EMAILS", "name": "Get Contacts by Emails", "description": "Search for Marketing Campaigns contacts by their email addresses. This endpoint retrieves up to 100 contacts matching the provided emails, with case-insensitive matching that ignores whitespace. Returns 200 on success with matching contacts, 404 if no contacts match, or 400 for invalid email formats. This is simpler than using SGQL queries when you have specific email addresses to look up." }, { "slug": "SENDGRID_GET_CONTACTS_BY_IDENTIFIERS", "name": "Get contacts by identifiers", "description": "Retrieves up to 100 Marketing Campaigns contacts by searching for specific identifier values. Choose one identifier_type (email, phone_number_id, external_id, or anonymous_id) and provide a list of values to search. Returns a mapping of each searched identifier to its corresponding contact data. Found contacts include full details; not-found identifiers return empty objects. Returns 200 on success, 404 if no contacts match, 400 for invalid requests." }, { "slug": "SENDGRID_GET_DESIGN", "name": "Get design", "description": "Retrieves a specific design's details from your Design Library by its ID. Returns the full design object including HTML content, plain text content, editor type, timestamps, and thumbnail URL. Useful for inspecting design details before making updates via the update design endpoint." }, { "slug": "SENDGRID_GET_DETAILS_FOR_AN_IP_ADDRESS", "name": "Get details for an ip address", "description": "Retrieves detailed information about a specific IP address on your SendGrid account. Returns information including: - Parent assignment status (whether the parent can send mail from this IP) - Automatic warmup settings - Associated IP Pools (with IDs and names) - Creation and modification timestamps - Billing and enablement status - Lease status (whether it's a SendGrid IP or customer-owned) - Region information (if include_region=True) Note: This endpoint is part of the IP Address Management API (beta) and requires appropriate IP management permissions. For Subuser information, use a different endpoint." }, { "slug": "SENDGRID_GET_DETAILS_FOR_AN_IP_POOL", "name": "Get details for an ip pool", "description": "This operation retrieves details of an IP Pool, such as name, ID, some sample IPs (up to 10), and the total IP count. For more IPs, use \"Get IPs Assigned to an IP Pool.\"" }, { "slug": "SENDGRID_GET_EMAIL_SUPPRESSION_GROUPS", "name": "Retrieve all suppression groups for an email address", "description": "**Retrieve all suppression groups for a specific email address.** This endpoint returns a list of all suppression groups in your SendGrid account, along with the suppression status of the specified email address in each group. Suppressed emails will not receive content sent under their respective suppression groups. **Use cases:** - Check which groups an email address is suppressed in - Verify email subscription status across all groups - Debug delivery issues for a specific recipient **Note:** The API requires the `asm.groups.suppressions.read` scope." }, { "slug": "SENDGRID_GET_ENGAGEMENT_QUALITY_SCORES", "name": "Get engagement quality scores", "description": "Retrieve SendGrid Engagement Quality (SEQ) scores for a specified date range. SEQ is a composite deliverability score (1-5) based on engagement metrics from mailbox providers. Higher scores indicate better engagement and inbox placement. Returns 200 with scores if available, or 202 if scores are still being calculated. Requirements for scores: - Open tracking must be enabled - Account must have sent at least 1,000 messages in the past 30 days Note: SEQ scores are stored for a maximum of 90 days." }, { "slug": "SENDGRID_GET_GEO_STATS", "name": "Retrieve email statistics by country and state province", "description": "Retrieves email engagement statistics (opens, clicks) segmented by geographic location (country and state/province). Currently supports US and Canada statistics only. Use this endpoint to analyze how your emails perform in different geographic regions. Note: SendGrid stores up to 7 days of email activity, and returns max 500 items by default. Requires 'geo.stats.read' API permission scope." }, { "slug": "SENDGRID_GET_INFORMATION_ON_A_SINGLE_SUPPRESSION_GROUP", "name": "Get information on a single suppression group", "description": "Retrieves details for a single suppression group (also known as an unsubscribe group). A suppression group allows recipients to unsubscribe from specific types of emails (e.g., newsletters, alerts) rather than all emails. Use this endpoint to get the group's name, description, default status, and the count of unsubscribed addresses. Note: You can create up to 200 suppression groups per SendGrid account." }, { "slug": "SENDGRID_GET_INTEGRATION", "name": "Get Marketing Integration", "description": "Retrieve a specific Marketing Integration by its unique ID. An Integration is a connection from SendGrid Marketing Campaigns to a supported third-party application (currently only Segment is supported). This allows you to customize and automate email event forwarding to your Segment account. Returns the full Integration object including its configuration settings, email event filters, and destination properties." }, { "slug": "SENDGRID_GET_IPS_ASSIGNED_TO_AN_IP_POOL", "name": "Get ips assigned to an ip pool", "description": "Retrieves IP addresses assigned to a specific IP Pool. This endpoint is part of the IP Address Management API (beta) and requires dedicated IP addresses and appropriate API permissions. The response includes IP address details and optionally region information. Use pagination parameters (limit, after_key) for large result sets. Note: This feature requires a SendGrid Pro plan or higher with dedicated IP addresses." }, { "slug": "SENDGRID_GET_IP_WARMUP_STATUS", "name": "Retrieve the warmup status for a specific ip address", "description": "Retrieve the warmup status for a specific dedicated IP address. IP warmup is the process of gradually increasing email sending volume through a new IP to build sender reputation. This endpoint returns the IP address and when it entered warmup mode. Use 'Retrieve all IPs currently in warmup' endpoint first to get a list of IPs that are currently warming up. Requires a SendGrid account with dedicated IP addresses and appropriate API permissions." }, { "slug": "SENDGRID_GET_LIST_CONTACT_COUNT", "name": "Get list contact count", "description": "Retrieve the contact count and billable contact count for a specific marketing list. Returns both the total number of contacts currently stored in the list and the number of billable contacts (those that count toward your billing quota). This is useful for monitoring list growth, validating contact additions, and tracking billing-relevant metrics without retrieving full contact details. The list ID must be a valid UUID from the new Marketing Campaigns API. Legacy contactdb list IDs (numeric format) are not compatible with this endpoint. Required API scope: 'marketing.read' (provides access to Marketing Campaigns API). Note: If IP Access Management is enabled on your SendGrid account, ensure the requesting server's IP address is whitelisted to avoid 403 Forbidden errors." }, { "slug": "SENDGRID_GET_LIST_OF_SEGMENTS", "name": "Get list of segments", "description": "Retrieves a filtered list of contact segments from SendGrid Marketing Campaigns V2. Segments group contacts based on SQL queries for targeted email campaigns. Use filters to retrieve specific segments by ID, segments associated with particular lists, or segments without parent list restrictions. Filter options (applied in order of precedence): 1. 'ids' - Get specific segments by UUID (ignores other filters) 2. 'parent_list_ids' - Get segments filtered by specific contact lists 3. 'no_parent_list_id' - Get segments without list filters (global segments) Returns empty list if no segments match criteria. Contact counts refresh hourly. Newly created segments may show 0 contacts initially, populating within 15-30 minutes." }, { "slug": "SENDGRID_GET_OPEN_TRACKING_SETTINGS", "name": "Get Open Tracking Settings", "description": "Retrieves the current open tracking settings for your SendGrid account. Open tracking works by inserting an invisible image (tracking pixel) at the end of HTML emails. When a recipient opens the email and their email client loads images, SendGrid logs an 'open' event. The response indicates whether open tracking is enabled. Open event data is available in SendGrid's Statistics portal and can be received via Event Webhook. Note: Open tracking only works with HTML emails where images are enabled. Plain text emails cannot be tracked for opens. Required scope: tracking_settings.open.read" }, { "slug": "SENDGRID_GET_RECIPIENT_UPLOAD_STATUS", "name": "Get Recipient Upload Status (Legacy)", "description": "Retrieves the upload status for recipients in the Legacy Marketing Campaigns contacts database (contactdb). Use this endpoint to monitor the progress of recipient data being processed after bulk uploads via the Add Recipients endpoint. **IMPORTANT - Legacy API:** This is a Legacy Marketing Campaigns API endpoint. It may not be accessible for newer SendGrid accounts created after the migration to Marketing Campaigns. For newer accounts, use the Import Contacts Status endpoint (`import_contacts_status`) instead. **No parameters required** - simply call this endpoint to get the current upload status for all pending recipient upload operations. **Common use case:** After calling `add_recipients` to bulk upload contacts, use this endpoint to check if the upload has completed processing." }, { "slug": "SENDGRID_GET_REMAINING_IPS_COUNT", "name": "Get remaining ips count", "description": "**This endpoint gets amount of IP Addresses that can still be created during a given period and the price of those IPs.**" }, { "slug": "SENDGRID_GET_SAMPLE_CONTACTS", "name": "Get sample contacts", "description": "Retrieves a sample of up to 50 contacts from your Marketing Contacts database, sorted by email address. Includes the total contact count. This endpoint is useful for quickly previewing contacts without pagination. For full contact exports, use the Export Contacts endpoint instead. Requires Marketing Campaigns read access." }, { "slug": "SENDGRID_GET_SEND_GRID_PRE_BUILT_DESIGN", "name": "Get SendGrid Pre-built Design", "description": "Retrieves details of a specific SendGrid pre-built design template by ID. Pre-built designs are professional email templates provided by SendGrid that you can duplicate and customize. Use this to inspect a design's HTML content, subject line, and metadata before duplicating it via the 'Duplicate SendGrid Pre-built Design' endpoint. Requires Marketing Campaigns access." }, { "slug": "SENDGRID_GET_SIGNED_EVENT_WEBHOOK_S_PUBLIC_KEY", "name": "Get signed event webhook's public key", "description": "Retrieves the public key for a specific Event Webhook by ID. The public key is used to verify the signature of incoming webhook requests (found in the X-Twilio-Email-Event-Webhook-Signature header). Use this endpoint after enabling signature verification to get the key needed for validation. Webhook IDs can be found using the 'Retrieve all of your event webhooks' action." }, { "slug": "SENDGRID_GET_SINGLE_SEND_BY_ID", "name": "Get single send by id", "description": "**This endpoint allows you to retrieve details about one Single Send using a Single Send ID.** You can retrieve all of your Single Sends by making a GET request to the `/marketing/singlesends` endpoint." }, { "slug": "SENDGRID_GET_SINGLE_SEND_CLICK_TRACKING_STATS_BY_ID", "name": "Get single send click tracking stats by id", "description": "**This endpoint lets you retrieve click-tracking stats for one Single Send**. The stats returned list the URLs embedded in the specified Single Send and the number of clicks each one received." }, { "slug": "SENDGRID_GET_SINGLE_SENDS_SEARCH", "name": "Get single sends search", "description": "Search for Single Sends (marketing email campaigns) by name, status, and/or categories. Use this endpoint to find specific Single Sends when you have many campaigns. - Search by name using partial/wildcard matching - Filter by status: 'draft', 'scheduled', or 'triggered' - Filter by categories (returns campaigns matching ANY specified category) Results are paginated. Use page_token from the response to retrieve additional pages. Requires Marketing Campaigns API access (marketing.singlesends.read scope)." }, { "slug": "SENDGRID_GET_SINGLE_SEND_STATS_BY_ID", "name": "Get single send stats by id", "description": "Retrieve individual Single Send stats using its ID. For multiple IDs, use \"Get All Single Sends Stats\". Filter results by date or refine with `group_by` and `aggregated_by` parameters." }, { "slug": "SENDGRID_GET_SUBUSER_MONTHLY_STATS", "name": "Get subuser monthly stats", "description": "Retrieves monthly email statistics for a specific subuser. Returns metrics such as blocks, bounces, clicks, delivered emails, opens, requests, unique clicks/opens, and unsubscribes. **Note**: This endpoint requires the `subusers.stats.monthly.read` API scope and is only available for SendGrid Pro plans and above that have subusers configured. **Important**: Sort operations are not available for: bounce_drops, deferred, invalid_emails, processed, spam_report_drops, spam_reports, or unsubscribe_drops metrics." }, { "slug": "SENDGRID_GET_SUBUSERS_ENGAGEMENT_QUALITY_SCORES", "name": "Get subusers engagement quality scores", "description": "Retrieve SendGrid Engagement Quality (SEQ) scores for all subusers on a specific date. Returns engagement scores (1-5 scale, higher is better) that measure email deliverability based on recipient engagement metrics like open rates, bounce rates, and spam complaints. Requirements: Subusers must have open tracking enabled and sent 1,000+ messages in the past 30 days to receive a score. Response codes: 200 (scores available), 202 (scores being calculated - retry later). Note: This endpoint requires parent account access with subuser management permissions." }, { "slug": "SENDGRID_GET_SUPPRESSION_GROUPS", "name": "Get suppression groups", "description": "This endpoint provides a list of user-created suppression groups and can return info for multiple groups when their IDs are added to the request with `?id=123456`." }, { "slug": "SENDGRID_GET_TEAMMATE_SUBUSER_ACCESS", "name": "Get teammate subuser access", "description": "Retrieve Subusers accessible to a specified Teammate, including their permission levels and scopes. Admin Teammates have access to all Subusers. For restricted Teammates, only returns Subusers they have explicit access to. Supports pagination via after_subuser_id and filtering by username." }, { "slug": "SENDGRID_GET_THE_CREDITS_FOR_A_SUBUSER", "name": "Get the credits for a subuser", "description": "Retrieves credit information for a specific Subuser account, including the credit type (unlimited, recurring, or nonrecurring), reset frequency, remaining credits, total allowable credits, and used credits. **Note**: This endpoint requires parent account credentials with subuser management permissions. Subuser accounts cannot access this endpoint." }, { "slug": "SENDGRID_GET_THE_DEFAULT_AUTHENTICATION", "name": "Get the default authentication", "description": "Retrieves the default domain authentication configuration for your SendGrid account. The default domain is used to send all mail unless overridden by a matching authenticated domain for the 'From' address. Returns domain details (id, subdomain, domain, username, IPs, DNS records, validation status) if a default is set. Required scope: whitelabel.read" }, { "slug": "SENDGRID_GET_THE_SETTINGS_FOR_A_SINGLE_EVENT_WEBHOOK", "name": "Get the settings for a single event webhook", "description": "Retrieves the configuration and settings for a single Event Webhook by its ID. Returns the webhook URL, enabled status, subscribed event types (bounce, click, delivered, open, etc.), and OAuth/signature settings if configured. Use 'Get All Event Webhooks' endpoint first to obtain webhook IDs." }, { "slug": "SENDGRID_GET_TOTAL_CONTACT_COUNT", "name": "Get total contact count", "description": "Retrieve the total number of contacts stored in your SendGrid Marketing Campaigns account. This endpoint returns: - The total contact count across all lists and segments - The billable contact count for the current billing period - A breakdown of billable contacts by subuser (if applicable) Use this to monitor your contact database size and track billing-relevant metrics. No parameters are required - simply call this endpoint to get your current counts. Requires the 'marketing.read' API scope." }, { "slug": "SENDGRID_GET_USER_SCOPES", "name": "Retrieve a list of scopes for which this user has access", "description": "Retrieve a list of scopes for which this user has access" }, { "slug": "SENDGRID_IMPORT_CONTACTS", "name": "Import contacts", "description": "Initiates a bulk contact import by requesting an upload URL for a CSV file. This is step 1 of a two-step process: 1. Call this action with field mappings to get an upload_uri and upload_headers 2. PUT your CSV file to the upload_uri with the required headers Supports up to 1 million contacts or 5GB per import (whichever is smaller). CSV files may be gzip-compressed. The import runs asynchronously - use the returned job_id with the 'Import Contacts Status' action to track progress. Requires at least one contact identifier in field_mappings: email, phone_number_id, external_id, or anonymous_id. Contacts are upserted - existing contacts (matched by identifier) are updated, new ones are created." }, { "slug": "SENDGRID_IMPORT_CONTACTS_STATUS", "name": "Import contacts status", "description": "Check the status of a contact import, update, or delete job in SendGrid Marketing Campaigns. Use this endpoint to monitor asynchronous contact operations by providing the job_id returned from contact modification endpoints. Returns the job status ('pending', 'completed', 'errored', or 'failed'), processing counts (created, updated, deleted, errored), and timestamps. If errors occurred, an errors_url is provided to download detailed error information." }, { "slug": "SENDGRID_INVITE_TEAMMATE", "name": "Invite teammate", "description": "Invite teammates to your account through email with this endpoint, assigning initial permissions via the `scopes` array. Invites expire after 7 days but can be resent." }, { "slug": "SENDGRID_LIST_ALL_AUTHENTICATED_DOMAINS", "name": "List all authenticated domains", "description": "Retrieve authenticated domain lists in pages using the `limit` parameter for page size and `offset` to start from specific list positions. Multiple requests handle large lists." }, { "slug": "SENDGRID_LIST_ALL_SUBUSERS", "name": "List all subusers", "description": "Retrieve a paginated list of subusers with filtering options. Use `username` to filter, `limit` to set page size, and `offset` to navigate through the list." }, { "slug": "SENDGRID_LIST_API_KEYS", "name": "List api keys", "description": "Retrieve user's API key names and IDs with this endpoint; keys themself cannot be retrieved for security. Lost keys require recreation. Use 'api_key_id' to manage keys." }, { "slug": "SENDGRID_LIST_BULK_EMAIL_VALIDATION_JOBS", "name": "List Bulk Email Validation Jobs", "description": "Retrieves a list of all Bulk Email Address Validation Jobs for the account. Bulk Email Validation allows you to upload a CSV file with up to 1 million email addresses to be validated asynchronously. Each job has a status indicating whether it is pending, processing, done, or has errors. **Note**: This feature requires a Pro or Premier SendGrid account with Email Address Validation enabled. The API key must have the 'Email Address Validation' scope." }, { "slug": "SENDGRID_LIST_DESIGNS", "name": "List designs", "description": "List designs from the Design Library. Fetches user-created designs stored in the SendGrid Design Library (part of Marketing Campaigns). Returns up to 100 designs per request by default, with pagination support via page_token. Use summary=True for basic info or summary=False to include full HTML/plain content. Note: This endpoint requires the new Marketing Campaigns platform. Pre-built SendGrid designs are available at a different endpoint (/v3/designs/pre-builts). Required scope: design_library.read" }, { "slug": "SENDGRID_LIST_INTEGRATION", "name": "Listintegration", "description": "This endpoint returns all the Integrations for the user making this call." }, { "slug": "SENDGRID_LIST_SEND_GRID_PRE_BUILT_DESIGNS", "name": "List sendgrid pre built designs", "description": "The `designs/pre-builts` endpoint fetches a list of Twilio SendGrid's ready-made designs, not user-specific ones, with 100 results per request by default, adjustable with `page_size`. Useful for duplicating and editing design IDs." }, { "slug": "SENDGRID_LIST_USER_AUTH_DOMAINS", "name": "List the authenticated domain associated with the given user", "description": "Retrieves all authenticated domains that have been assigned to a specific subuser. Authenticated domains allow subusers to send email using their parent account's domain authentication. Requires the 'whitelabel.read' scope and is only available on Pro plan or higher." }, { "slug": "SENDGRID_MANUALLY_REFRESH_A_SEGMENT", "name": "Manually refresh a segment", "description": "Manually refresh a Marketing Campaigns V2 segment to update its contact membership. This endpoint triggers an immediate refresh of the segment's contact list based on its query criteria. Normally, SendGrid refreshes segments hourly, but this allows you to force an update when needed. IMPORTANT LIMITATIONS: - Requires a Marketing Campaigns Basic or Advanced plan (returns 403 for free accounts) - Maximum 2 refreshes per segment per day (resets at midnight in user's timezone) - Minimum 1 hour between refreshes for the same segment - Maximum 10 refresh requests across all segments per day (resets at 0:00 UTC) After a successful refresh request, contacts matching the segment criteria will be updated within 15-30 minutes depending on segment complexity." }, { "slug": "SENDGRID_PRESIGNED_URL_HEADERS_FOR_BULK_EMAIL_VALIDATION", "name": "Request Presigned URL for Bulk Email Validation", "description": "Request a presigned URL and headers to upload a file containing email addresses for bulk validation. This endpoint returns an upload URL (upload_uri), request headers (upload_headers), and a job ID (job_id) which can be used to track the validation progress. The file can contain up to 1 million email addresses or 50 MB of data. After uploading, SendGrid asynchronously validates the emails and sends results to the account's email address. Note: This feature requires a Pro or Premier level SendGrid account with Email Address Validation permissions enabled on the API key. Workflow: 1. Call this endpoint to get the presigned URL and headers 2. Use the returned upload_uri and upload_headers to PUT your CSV file 3. Use the job_id with the 'Get Bulk Email Validation Job' endpoint to track progress" }, { "slug": "SENDGRID_REMOVE_AN_IP_ADDRESS_FROM_A_POOL", "name": "Remove an ip address from a pool", "description": "Remove an IP address from an IP pool in your SendGrid account. This endpoint allows you to disassociate a dedicated IP address from an IP pool. After removal, the IP address will no longer be used when sending emails through that pool. The IP address remains in your account and can be added to another pool or used independently. Prerequisites: - The IP pool must exist in your SendGrid account - The IP address must be currently assigned to the specified pool - Your API key must have the 'ips.pools.ips.delete' scope Note: Each SendGrid account can have up to 100 IP pools." }, { "slug": "SENDGRID_REMOVE_AN_IP_FROM_AN_AUTHENTICATED_DOMAIN", "name": "Remove an ip from an authenticated domain", "description": "Remove an IP address from an authenticated domain's custom SPF configuration. This endpoint dissociates a dedicated IP address from an authenticated domain, which is useful when you no longer want that IP to be included in your custom SPF record for the domain. **Prerequisites:** - The domain must already be authenticated (created via Authenticate a Domain endpoint) - The IP must currently be associated with the domain - Your API key must have 'whitelabel.delete' or 'whitelabel.update' permissions **Important Notes:** - Domain Authentication was formerly called 'Domain Whitelabel' - Returns HTTP 204 No Content on success (empty response body) - Returns HTTP 403 Forbidden if API key lacks required permissions - Returns HTTP 404 Not Found if the domain ID does not exist or IP is not associated - The IP must be a dedicated IP address currently associated with the domain" }, { "slug": "SENDGRID_REMOVE_A_SPECIFIC_IP_FROM_THE_ALLOWED_LIST", "name": "Remove a specific ip from the allowed list", "description": "Removes a specific IP address from your SendGrid account's allow list. Use this to revoke access for an IP. Get the rule_id from the 'Retrieve a list of currently allowed IPs' endpoint. WARNING: Removing your own IP will block your account access, requiring a support ticket to resolve." }, { "slug": "SENDGRID_REMOVE_CONTACTS_FROM_A_LIST", "name": "Remove contacts from a list", "description": "Remove contacts from a marketing list without deleting them from your account. This endpoint allows you to remove one or more contacts from a specified list. The contacts will not be deleted from your SendGrid account - only their membership in the specified list will be removed. They will remain available for use in other lists, segments, or campaigns. The removal operation is asynchronous and returns a job_id to track progress. This is useful when removing large numbers of contacts. Note: This uses the Marketing Campaigns API (/v3/marketing/lists). List IDs and contact IDs are UUIDs. For the legacy Contact Database API, use 'Delete a single recipient from a single list' instead." }, { "slug": "SENDGRID_REMOVE_LIST_AND_OPTIONAL_CONTACTS", "name": "Remove list and optional contacts", "description": "Delete a marketing list from your SendGrid account. This endpoint permanently removes a specific list from your Marketing Campaigns. When delete_contacts is false (default), only the list is deleted and contacts remain in your account for use in other lists or segments. When delete_contacts is true, all contacts on the list are also permanently deleted via an asynchronous background job. A job_id is returned to track the deletion progress. Note: This uses the Marketing Campaigns API (/v3/marketing/lists). List IDs are UUIDs (e.g., 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'). For the legacy Contact Database API with integer list IDs, use 'Delete a list' instead." }, { "slug": "SENDGRID_REMOVE_ONE_OR_MORE_IPS_FROM_THE_ALLOW_LIST", "name": "Remove one or more ips from the allow list", "description": "Removes one or more IP addresses from your SendGrid IP Access Management allow list. This endpoint accepts an array of IP rule IDs (integers) obtained from listing allowed IPs or from the response when adding IPs to the allow list. IDs can be retrieved using the 'retrieve_a_list_of_currently_allowed_ips' action. WARNING: Removing your own IP address will block access to your account. You will need to submit a support ticket to restore access. Double-check the IDs before calling this endpoint. On success, the API returns HTTP 204 with no content body." }, { "slug": "SENDGRID_REMOVE_SEGMENT_WITHOUT_AFFECTING_CONTACTS", "name": "Remove segment without affecting contacts", "description": "Permanently deletes a segment from SendGrid's Marketing Campaigns without affecting contacts. This endpoint removes only the segment definition - all contacts that were members of this segment remain in the database and in any other segments they belong to. This is useful when you want to reorganize your segmentation strategy without losing contact data. **Note**: This uses the Marketing Campaigns Segmentation v1 API path. For newer implementations, consider using the Segmentation v2 API endpoint at /v3/marketing/segments/2.0/{segment_id}. **Important**: - This action is destructive and cannot be undone - Returns HTTP 204 No Content on success with an empty response body - Returns HTTP 404 if the segment_id does not exist - Returns HTTP 403 if the API key lacks 'marketing.segments.delete' scope - Contacts in the segment are NOT deleted - only the segment definition is removed" }, { "slug": "SENDGRID_REMOVE_USER_DOMAIN", "name": "Disassociate an authenticated domain from a given user", "description": "Disassociate ALL authenticated domains from a subuser. This endpoint removes any authenticated domain associations that have been assigned to the specified subuser. After this operation, the subuser will no longer be able to send emails using the parent account's authenticated domains. Requirements: - The subuser must exist and belong to the parent account - The API key must have appropriate subuser management permissions - Use 'list_all_subusers' to find valid subuser usernames Note: This action removes ALL domain associations for the subuser. To remove a specific domain from a subuser with multiple domains, use the 'unlink_subuser_domain' action instead (DELETE /v3/whitelabel/domains/{domain_id}/subuser). On success, returns HTTP 204 No Content with an empty response body." }, { "slug": "SENDGRID_RENAME_AN_IP_POOL", "name": "Rename an ip pool", "description": "Renames an existing IP pool in your SendGrid account. IP pools allow you to group your dedicated SendGrid IP addresses together. For example, you might have separate pools for 'transactional' and 'marketing' emails to maintain different sending reputations. Requirements: - SendGrid account with dedicated IP addresses (Pro or Premier plan) - API key with 'ips.pools.update' scope - The IP pool must already exist (use 'Retrieve All IP Pools' to list existing pools) Note: The new name must be unique across all your IP pools and cannot start with a space or period (.)." }, { "slug": "SENDGRID_REQUEST_CSV", "name": "Request csv", "description": "Initiating a backend process creates a CSV file of up to 1 million events from the last 30 days, emailed to the user with a 3-day expiry link. Limited to one request per 12 hours, it's similar to the GET Single Message but for CSV downloads." }, { "slug": "SENDGRID_RESEND_A_SENDER_VERIFICATION", "name": "Resend a sender verification", "description": "Resends the verification email for a Marketing Campaigns Sender identity. Use this when the original verification email was lost, expired, or needs to be resent. The sender must have been created via the Marketing Senders API (/v3/marketing/senders) and must not yet be verified. To get valid sender IDs, use the 'Get a list of all senders' endpoint first. Returns an empty response on success. Note: This endpoint requires Marketing Campaigns API permissions. For Verified Senders (created via /v3/verified_senders), use the 'Resend Verified Sender Request' endpoint instead." }, { "slug": "SENDGRID_RESEND_SENDER_IDENTITY_VERIFICATION", "name": "Resend sender identity verification", "description": "Resends the verification email to a sender identity's 'from' email address. Use this when the original verification email was not received, expired, or needs to be resent. The sender identity must have been created via the Sender Identities API (POST /v3/senders) and must not yet be verified. Returns an empty response on success. Note: This endpoint is part of the legacy Sender Identities API. For the newer Verified Senders API, use the 'Resend Verified Sender Request' endpoint (/v3/verified_senders/resend/{id})." }, { "slug": "SENDGRID_RESEND_TEAMMATE_INVITE", "name": "Resend teammate invite", "description": "Resend a pending teammate invitation to refresh its expiration date. Teammate invitations expire after 7 days. Use this endpoint to resend an invitation that hasn't been accepted yet, which will reset the expiration date to 7 days from now. The token parameter can be obtained from the 'Retrieve all pending teammates' endpoint. Requires 'teammates.write' scope or full access API key." }, { "slug": "SENDGRID_RESEND_VERIFIED_SENDER_REQUEST", "name": "Resend verified sender request", "description": "Resends the verification email to a Sender Identity's 'from_email' address. Use this when the original verification email was lost, expired, or needs to be resent. The sender must have been created via 'Create Verified Sender Request' and must not yet be verified. Retrieve the sender ID using 'Get All Verified Senders' endpoint. Returns empty response on success." }, { "slug": "SENDGRID_RETRIEVE_A_BOUNCE", "name": "Retrieve a bounce", "description": "Retrieves details about a specific bounced email address from the SendGrid suppression list. Use this endpoint to look up bounce information for a particular email address, including: - When the bounce occurred (created timestamp) - Why the email bounced (reason with bounce codes) - The bounce status code (enhanced SMTP status) Bounces occur when an email cannot be delivered to a recipient and the receiving mail server returns a bounce response. SendGrid automatically adds bounced addresses to your suppression list to prevent future delivery attempts. Returns HTTP 200 with bounce details on success, or HTTP 404 if the email address is not found in the bounce suppression list. Requires the 'Suppressions' read scope to be enabled for your API key." }, { "slug": "SENDGRID_RETRIEVE_A_BRANDED_LINK", "name": "Retrieve a branded link", "description": "Retrieves a specific branded link by its ID. Branded links (formerly 'Link Whitelabel') allow click-tracked links, opens, and images in your emails to be served from your domain rather than sendgrid.net. Use the 'Retrieve all branded links' endpoint first to get valid IDs. You can make this request on behalf of a subuser by including their ID in the 'on-behalf-of' header." }, { "slug": "SENDGRID_RETRIEVE_ACCESS_REQUESTS", "name": "Retrieve access requests", "description": "Retrieve a list of recent access requests using pagination with `limit` for page size and `offset` to control the start position for additional items." }, { "slug": "SENDGRID_RETRIEVE_A_COUNT_OF_RECIPIENTS", "name": "Retrieve a count of recipients", "description": "Retrieve the total count of recipients in the Legacy Marketing Campaigns contact database. **IMPORTANT: This is a Legacy API endpoint.** The contactdb API (`/v3/contactdb/*`) is part of the Legacy Marketing Campaigns and is not available to newer SendGrid accounts. If you receive a 403 Forbidden error, your account likely does not have access to the legacy API. For accounts using the new Marketing Campaigns, use the 'Get Total Contact Count' action (`/v3/marketing/contacts/count`) instead to get the count of contacts. This endpoint requires the 'marketing.read' scope (for legacy accounts only)." }, { "slug": "SENDGRID_RETRIEVE_A_CUSTOM_FIELD", "name": "Retrieve a custom field", "description": "Retrieves a single custom field definition by its ID from SendGrid Marketing Campaigns. Custom fields store additional information about your contacts beyond the reserved fields (email, first_name, last_name, etc.). This endpoint returns the field's ID, name, and data type. **Response includes:** - `id`: Unique string identifier for the custom field (e.g., 'e1_T') - `name`: The field name (e.g., 'company', 'loyalty_points') - `field_type`: Data type - 'Text', 'Number', or 'Date' **Common errors:** - 404: Custom field with the specified ID does not exist - 401: Invalid or missing API key" }, { "slug": "SENDGRID_RETRIEVE_ADDRESS_WHITELIST_MAIL_SETTINGS", "name": "Retrieve address whitelist mail settings", "description": "Retrieves your current address whitelist mail settings from SendGrid. The Address Whitelist setting allows you to specify email addresses or domains for which mail should never be suppressed. For example, if you whitelist 'example.com', all bounces, blocks, and unsubscribes logged for that domain will be ignored and mail will be sent as if under normal sending conditions. This is useful when you want to ensure delivery to specific addresses or domains regardless of previous suppression events. Note: For Regional (EU) subusers, utilizing this feature will cause customer personal information to be stored outside of the EU. Required scope: mail_settings.address_whitelist.read" }, { "slug": "SENDGRID_RETRIEVE_A_GLOBAL_SUPPRESSION", "name": "Retrieve a global suppression", "description": "Checks if an email address is in the global suppression list. Globally suppressed emails will not receive any emails from your SendGrid account. Returns the email address if found in the global suppression list, or an empty response if not suppressed. This is useful for verifying if a recipient has opted out globally before attempting to send emails. Requires the 'asm.suppressions.global.read' scope." }, { "slug": "SENDGRID_RETRIEVE_A_LIST_OF_CURRENTLY_ALLOWED_IPS", "name": "Retrieve a list of currently allowed ips", "description": "This endpoint provides a list of authorized IP addresses for your account, each with creation, update dates, and a unique ID for potential removal." }, { "slug": "SENDGRID_RETRIEVE_ALL_ALERTS", "name": "Retrieve all alerts", "description": "Retrieve all SendGrid alerts configured for your account. Returns a list of alert configurations including: - **usage_limit alerts**: Notify when email usage reaches a specified percentage threshold (0-100%). - **stats_notification alerts**: Send periodic email statistics at daily, weekly, or monthly intervals. Each alert includes the recipient email address, timestamps, and type-specific settings. Requires 'alerts.read' API scope." }, { "slug": "SENDGRID_RETRIEVE_ALL_ASSIGNED_IPS", "name": "Retrieve all assigned ips", "description": "Retrieves all IP addresses that are currently assigned to your account. This endpoint returns a list of IP addresses that have been assigned to your account for sending emails. Each IP address includes information about: - The IP address itself - The IP pools it belongs to - Whether it's currently in warmup mode - The warmup start date (if applicable) A single IP address or a range of IP addresses may be dedicated to an account to send email for multiple domains. The reputation of an IP is based on the aggregate performance of all the senders who use it. Note: This endpoint requires the 'ips.assigned.read' permission scope." }, { "slug": "SENDGRID_RETRIEVE_ALL_BLOCKS", "name": "Retrieve all blocks", "description": "Retrieves a paginated list of all blocked email addresses from your SendGrid account. Blocks occur when a recipient's email server rejects a message for reasons related to the message itself (not the recipient address), such as: - Your sending IP being blocked by an ISP - Message content flagged by spam filters - Server rejection due to policy violations Unlike bounces, SendGrid does NOT automatically suppress future messages to blocked addresses. Use this endpoint to identify problematic deliveries. Returns HTTP 200 with a list of block records, or an empty list if no blocks exist. Supports pagination via limit/offset and filtering by time range or email pattern." }, { "slug": "SENDGRID_RETRIEVE_ALL_BOUNCES", "name": "Retrieve all bounces", "description": "This endpoint retrieves a paginated list of all your bounces, allowing customization of page size with `limit` and starting position with `offset` for multiple requests." }, { "slug": "SENDGRID_RETRIEVE_ALL_BRANDED_LINKS", "name": "Retrieve all branded links", "description": "**This endpoint allows you to retrieve all branded links**. You can submit this request as one of your subusers if you include their ID in the `on-behalf-of` header in the request." }, { "slug": "SENDGRID_RETRIEVE_ALL_CAMPAIGNS", "name": "Retrieve all campaigns", "description": "Retrieve a paginated list of campaigns in reverse creation order with the API endpoint. If none exist, get an empty array. Adjust page size with `limit`, and fetch more with `offset`." }, { "slug": "SENDGRID_RETRIEVE_ALL_CATEGORIES", "name": "Retrieve all categories", "description": "Retrieve all email categories used for tracking and organizing email statistics. Categories are user-defined labels that can be assigned to emails when sending. They help organize email statistics and enable filtering/grouping of metrics by category. This is useful for tracking different email campaigns, types of communications, or any custom grouping. **Note**: Category statistics are available for the previous 13 months only. Free plans are limited to 100 categories daily, paid plans allow 1,000 categories. **Required scope**: `categories.read` Returns a paginated list of categories. Use `limit` and `offset` parameters for pagination through large category lists." }, { "slug": "SENDGRID_RETRIEVE_ALL_CUSTOM_FIELDS", "name": "Retrieve all custom fields", "description": "Retrieve all custom field definitions for contacts. Returns a list of all custom fields that have been created for your contacts. Custom fields allow you to store additional information about your contacts beyond the default fields (first_name, last_name, email, etc.). Each custom field includes: - id: Unique integer identifier - name: The field name (alphanumeric and underscores only) - type: The field type (text, number, or date) You can create up to 120 custom fields per account." }, { "slug": "SENDGRID_RETRIEVE_ALL_GLOBAL_SUPPRESSIONS", "name": "Retrieve all global suppressions", "description": "Retrieves a paginated list of all email addresses that are globally suppressed from receiving any emails from your SendGrid account. Global suppressions are recipients who have unsubscribed from all your emails, not just specific groups. Each suppression includes the email address and when it was added. Use `limit` and `offset` parameters for pagination. Filter by time range with `start_time` and `end_time`, or by email pattern with the `email` parameter. Maximum 500 records per request. This is useful for auditing unsubscribes, compliance reporting, or re-engagement campaigns where you need to identify globally suppressed users." }, { "slug": "SENDGRID_RETRIEVE_ALL_INVALID_EMAILS", "name": "Retrieve all invalid emails", "description": "Retrieve paginated lists of invalid emails with 'limit' for page size and 'offset' to start from a specific position for lists exceeding the limit." }, { "slug": "SENDGRID_RETRIEVE_ALL_IP_ADDRESSES", "name": "Retrieve all ip addresses", "description": "Retrieve a paginated list of assigned/unassigned IPs with warmup status, pools, subusers, and DNS info. IP reputation is based on email traffic. Use `limit` and `offset` parameters to control pagination." }, { "slug": "SENDGRID_RETRIEVE_ALL_IP_POOLS", "name": "Retrieve all ip pools", "description": "**This endpoint allows you to get all of your IP pools.**" }, { "slug": "SENDGRID_RETRIEVE_ALL_IP_POOLS_AN_IP_ADDRESS_BELONGS_TO", "name": "Retrieve all ip pools an ip address belongs to", "description": "Retrieves details for a specific IP address including all IP pools it belongs to, subusers that can use it, warmup status, and reverse DNS record. The same IP address can belong to multiple IP pools. Requires the 'ips.read' API scope and a dedicated IP address on your SendGrid account." }, { "slug": "SENDGRID_RETRIEVE_ALL_IPS_CURRENTLY_IN_WARMUP", "name": "Retrieve All IPs Currently in Warmup", "description": "Retrieve all IP addresses currently in the warmup process. IP warmup is the process of gradually increasing sending volume through a new IP address to build a positive sending reputation. This endpoint returns all IPs that are actively being warmed up. The response includes: - ip: The IP address being warmed up - start_date: Unix timestamp when the warmup process began Returns an empty array if no IPs are currently in warmup. Note: Requires IP Management permissions on your SendGrid API key." }, { "slug": "SENDGRID_RETRIEVE_ALL_LISTS", "name": "Retrieve all lists", "description": "Retrieve all contact lists from your SendGrid account. Lists are static collections of Marketing Campaigns contacts. Returns an array of all lists with their IDs, names, and contact counts. If no lists exist, returns an empty array." }, { "slug": "SENDGRID_RETRIEVE_ALL_MAIL_SETTINGS", "name": "Retrieve all mail settings", "description": "Retrieve a paginated list of mail settings with their `enabled` status and descriptions. Control page size with `limit` and list position with `offset` for multiple requests." }, { "slug": "SENDGRID_RETRIEVE_ALL_OF_YOUR_EVENT_WEBHOOKS", "name": "Retrieve all of your event webhooks", "description": "The endpoint fetches all Event Webhooks as objects in an array, showing each webhook's configuration and ID, used to update, delete, or manage signature verification and OAuth settings." }, { "slug": "SENDGRID_RETRIEVE_ALL_PARSE_SETTINGS", "name": "Retrieve all parse settings", "description": "**This endpoint allows you to retrieve all of your current inbound parse settings.**" }, { "slug": "SENDGRID_RETRIEVE_ALL_PENDING_TEAMMATES", "name": "Retrieve all pending teammates", "description": "**This endpoint allows you to retrieve a list of all pending Teammate invitations.** Each teammate invitation is valid for 7 days. Users may resend the invitation to refresh the expiration date." }, { "slug": "SENDGRID_RETRIEVE_ALL_RECENT_ACCESS_ATTEMPTS", "name": "Retrieve all recent access attempts", "description": "Retrieves a list of all IP addresses that have recently attempted to access your SendGrid account, either through the User Interface or the API. This endpoint is part of SendGrid's IP Access Management feature, which helps monitor and secure account access. Each access attempt record includes the IP address, authentication method used, timestamps, and geographic location. **Important Notes:** - Requires the 'access_settings.activity.read' scope on your API key. - IP Access Management must be enabled in your SendGrid account settings (Settings > IP Access Management) before this endpoint will return data. - Returns up to the specified limit of most recent access attempts. **Use Cases:** - Security auditing: Monitor who is accessing your account - Identify suspicious access patterns from unexpected locations - Verify access from known IP addresses" }, { "slug": "SENDGRID_RETRIEVE_ALL_RECIPIENTS_ON_A_LIST", "name": "Retrieve all recipients on a list", "description": "Retrieves all recipients (contacts) belonging to a specific list in SendGrid's Legacy Marketing Campaigns. **IMPORTANT**: This endpoint is part of SendGrid's legacy Contacts API (`/v3/contactdb/`). Some SendGrid accounts may not have access to this legacy API. For newer accounts, consider using the newer Marketing Campaigns API endpoints under `/v3/marketing/`. The response contains an array of recipient objects with details such as email, first name, last name, and timestamps. Results are paginated - use the `page` and `page_size` parameters to iterate through large lists. Example use cases: - Export contacts from a specific marketing list - Verify which contacts are subscribed to a list - Audit list membership before sending a campaign" }, { "slug": "SENDGRID_RETRIEVE_ALL_REVERSE_DNS_RECORDS", "name": "Retrieve all reverse dns records", "description": "The endpoint provides a paginated list of Reverse DNS records, with optional IP prefix search and adjustable page size using 'limit' and 'offset' parameters." }, { "slug": "SENDGRID_RETRIEVE_ALL_SCHEDULED_SENDS", "name": "Retrieve all scheduled sends", "description": "The endpoint provides details of cancelled or paused scheduled sends but only if they have a `batch_id`. Sends scheduled without a `batch_id` via `/mail/send` won't be listed and can't be paused or cancelled later through this endpoint." }, { "slug": "SENDGRID_RETRIEVE_ALL_SPAM_REPORTS", "name": "Retrieve all spam reports", "description": "Retrieve spam reports in pages using `limit` for page size and `offset` to continue from a specific list position. Multiple requests handle larger lists." }, { "slug": "SENDGRID_RETRIEVE_ALL_SUPPRESSIONS", "name": "Retrieve all suppressions", "description": "Retrieve a list of all suppressions across all suppression groups. Suppressions are recipient email addresses that have been added to unsubscribe groups. Once a recipient's address is on the suppressions list for an unsubscribe group, they will not receive any emails that are tagged with that unsubscribe group. This endpoint returns all suppressed email addresses with their associated group IDs, group names, and the timestamp when the suppression was created. **Note:** This endpoint requires the `asm.groups.suppressions.read` scope. If you need to retrieve suppressions for a specific group, use the endpoint `/v3/asm/groups/{group_id}/suppressions` instead." }, { "slug": "SENDGRID_RETRIEVE_ALL_SUPPRESSIONS_FOR_A_SUPPRESSION_GROUP", "name": "Retrieve all suppressions for a suppression group", "description": "**This endpoint allows you to retrieve all suppressed email addresses belonging to the given group.**" }, { "slug": "SENDGRID_RETRIEVE_ALL_TEAMMATES", "name": "Retrieve all teammates", "description": "Retrieve a paginated list of Teammates with the `limit` parameter to set page size and `offset` to specify the starting point for additional items. Make multiple requests if needed." }, { "slug": "SENDGRID_RETRIEVE_ALL_THE_IPS_IN_A_SPECIFIED_POOL", "name": "Retrieve all the ips in a specified pool", "description": "Retrieves all IP addresses that are assigned to a specific IP pool. IP pools allow you to group your dedicated SendGrid IP addresses together (e.g., separate pools for transactional and marketing emails). This endpoint requires the 'ips.pools.read' scope and a SendGrid account with dedicated IP addresses (typically Pro or Premier plan). Returns the pool name and a list of IP addresses with their warmup status and start dates. Returns 404 if the pool does not exist, or 403 if the API key lacks the required permissions." }, { "slug": "SENDGRID_RETRIEVE_AN_AUTHENTICATED_DOMAIN", "name": "Retrieve an authenticated domain", "description": "Retrieves details of a specific authenticated domain by its unique ID. An authenticated domain (formerly called \"Domain Whitelabel\") allows you to remove the \"via\" or \"sent on behalf of\" message that recipients see when they read your emails. It replaces sendgrid.net with your personal sending domain. The response includes the domain's DNS records (CNAME/TXT/MX), validation status, whether it uses automatic or manual security, and associated user/subdomain information. Use SENDGRID_LIST_ALL_AUTHENTICATED_DOMAINS to get available domain IDs." }, { "slug": "SENDGRID_RETRIEVE_AN_EXISTING_API_KEY", "name": "Retrieve an existing api key", "description": "Retrieves the details of an existing SendGrid API key by its unique identifier. Returns the API key's name and permission scopes. Note: The actual API key string cannot be retrieved after creation for security reasons - only the name and scopes are returned. Returns 404 if the API key ID does not exist. This endpoint requires 'api_keys.read' scope and may be subject to IP Access Management restrictions." }, { "slug": "SENDGRID_RETRIEVE_A_REVERSE_DNS_RECORD", "name": "Retrieve a reverse DNS record", "description": "Retrieves a specific reverse DNS (formerly IP Whitelabel) record by its ID. Reverse DNS allows mailbox providers to verify the sender of an email by performing a reverse DNS lookup. This endpoint returns details about a specific reverse DNS record including its IP address, domain, subdomain, validation status, and A record configuration. **Prerequisites:** - Account must have dedicated IP addresses (reverse DNS is not available for shared IPs) - API key must have the 'whitelabel.read' scope **Related endpoints:** - Use 'Retrieve all reverse DNS records' to get the list of record IDs - Use 'Validate a reverse DNS record' to validate the DNS configuration - Use 'Set up reverse DNS' to create a new reverse DNS record" }, { "slug": "SENDGRID_RETRIEVE_A_SINGLE_CAMPAIGN", "name": "Retrieve a single campaign", "description": "Retrieves a specific campaign from SendGrid's Legacy Marketing Campaigns by its ID. Returns campaign details including title, subject, content, recipients, and status. Note: This is part of the Legacy Marketing Campaigns API. For new implementations, consider using the Marketing Campaigns Single Sends API instead." }, { "slug": "SENDGRID_RETRIEVE_A_SINGLE_LIST", "name": "Retrieve a single list", "description": "Retrieve detailed information about a specific marketing list by its unique ID. This endpoint returns the list's name, contact count, and metadata. When the optional `contact_sample` parameter is set to true, it also includes up to 50 of the most recent contacts in the list. Lists are static collections of contacts used for organizing and targeting email campaigns in SendGrid Marketing Campaigns. Note: This action uses the new Marketing Campaigns API. The legacy Contact Database API (/v3/contactdb/lists) is deprecated and not accessible for newer SendGrid accounts." }, { "slug": "SENDGRID_RETRIEVE_A_SINGLE_RECIPIENT", "name": "Retrieve a single recipient", "description": "Retrieve a single recipient by ID from the Legacy Marketing Campaigns contact database. **IMPORTANT**: This is a Legacy Marketing Campaigns API endpoint (/v3/contactdb/). Newer SendGrid accounts may not have access to this deprecated API. For modern accounts, use the 'Get a Contact by ID' action (/v3/marketing/contacts/{id}) instead. The recipient_id is a URL-safe base64 encoding of the recipient's lowercase email address. For example, 'user@example.com' becomes 'dXNlckBleGFtcGxlLmNvbQ=='. Returns the recipient's profile including email, name, engagement timestamps (last_clicked, last_emailed, last_opened), and any custom fields defined in your account. Requires 'marketing.read' or equivalent scope on your API key." }, { "slug": "SENDGRID_RETRIEVE_A_SINGLE_TRANSACTIONAL_TEMPLATE", "name": "Retrieve a single transactional template", "description": "Retrieves a single transactional template by its ID, including all associated template versions. Transactional templates are used for sending personalized emails with dynamic content replacement using Handlebars syntax. This endpoint returns the template's metadata and all versions, allowing you to identify which version is currently active. Use this endpoint to: - View template details before sending emails - Check which template versions exist - Verify which version is currently active - Get version IDs needed for the 'Retrieve a specific transactional template version' endpoint" }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_ALERT", "name": "Retrieve a specific alert", "description": "Retrieve details for a specific SendGrid alert by its ID. Alerts notify you about email usage limits or provide periodic email statistics. Use this endpoint to get full details of a single alert including its type, recipient email, and configuration (percentage threshold or frequency). To get alert IDs, first use the 'Retrieve all alerts' endpoint." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_ALLOWED_IP", "name": "Retrieve a specific allowed ip", "description": "Retrieves details of a specific IP address from your SendGrid account's IP Access Management allow list using its unique rule ID. Returns the IP address, creation timestamp, and last update timestamp. Use 'Retrieve a list of currently allowed IPs' or check the response from 'Add one or more IPs to the allow list' to obtain rule IDs. Note: Removing your own IP from the allow list can lock you out of your account." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_BLOCK", "name": "Retrieve a specific block", "description": "Retrieves details for a specific email address from your SendGrid blocks list. Blocks occur when a recipient's email server rejects the message for a reason related to the message itself, not the recipient address. This could be due to your sending IP being blocked by an ISP, or the message content being flagged by a spam filter. Unlike bounces, SendGrid does not automatically suppress future messages to blocked addresses. Use this endpoint to check if a specific email is blocked and understand why. Returns HTTP 200 with block details on success, or HTTP 404 if the email address is not found in the blocks list." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_INVALID_EMAIL", "name": "Retrieve a specific invalid email", "description": "Retrieves details about a specific email address from SendGrid's invalid email suppression list. Invalid emails are addresses that have bounced because of a permanent error such as an invalid mailbox or non-existent domain. This action allows you to check if a specific email exists in your suppression list and get details about why it was added. Returns the email address, the Unix timestamp when it was added, and the reason it was marked as invalid. Returns an empty list if the email is not in the invalid email suppression list. Note: Requires the 'suppression.invalid_emails.read' scope on your API key." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_PARSE_SETTING", "name": "Retrieve a specific parse setting", "description": "Retrieves a specific inbound parse webhook setting by hostname. This endpoint returns the configuration details for an inbound parse setting, which defines how SendGrid handles incoming emails for a particular hostname. **Prerequisites:** - The hostname must already be configured as a parse setting in your account. - Use the 'Retrieve all parse settings' endpoint to list available hostnames. **Parameters:** - `hostname`: Required. The unique domain or subdomain of the parse setting (e.g., `parse.yourdomain.com`). **Returns:** - `hostname`: The domain/subdomain configured for email parsing. - `url`: The webhook URL where parsed email data is POSTed. - `send_raw`: Whether raw MIME content is sent instead of parsed fields. - `spam_check`: Whether spam filtering is enabled. **Error Cases:** - 404: Parse setting not found for the specified hostname. - 403: Insufficient permissions to access parse settings." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_SPAM_REPORT", "name": "Retrieve a specific spam report", "description": "Retrieves a specific spam report by email address from SendGrid's suppression list. Spam reports are generated when a recipient marks an email as spam. This action allows you to check if a specific email address has been reported as spam. **Use cases:** - Check if a recipient has marked your emails as spam - Verify spam report details before removing a suppression - Audit spam complaints for a specific email address **Returns:** An array of spam report objects containing the email address, Unix timestamp when reported, and the IP address that sent the email. Returns an empty array if the email has no spam reports." }, { "slug": "SENDGRID_RETRIEVE_A_SPECIFIC_TRANSACTIONAL_TEMPLATE_VERSION", "name": "Retrieve a specific transactional template version", "description": "Retrieves a specific version of a transactional template by its template ID and version ID. Transactional templates in SendGrid can have multiple versions, allowing for A/B testing, localization, or iterative improvements. Each version contains the email content (HTML and plain text), subject line, and metadata. Use this endpoint to: - Inspect the content and settings of a specific template version - Compare different versions of a template - Retrieve template content for preview or debugging purposes - Verify which version is currently active **Required scope:** templates.read **Note:** The template_id for dynamic templates follows the format 'd-xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx'. The version_id is a UUID returned when creating a version via the API or visible in the SendGrid UI." }, { "slug": "SENDGRID_RETRIEVE_A_SUBUSER_S_BRANDED_LINK", "name": "Retrieve a subuser's branded link", "description": "Retrieve the branded link associated with a specific subuser. Email link branding (formerly 'Link Whitelabel') allows click-tracked links, opens, and images in emails to be served from your domain rather than sendgrid.net. This endpoint retrieves the branded link that has been associated with a subuser by the parent account. Prerequisites: - The parent account must have created and validated a branded link - The branded link must be associated with the subuser (via API or Subuser Management page) - The API key must have link branding read permissions Note: This operation requires a SendGrid Pro plan or higher with subusers enabled." }, { "slug": "SENDGRID_RETRIEVE_BOUNCE_CLASSIFICATION_TOTALS", "name": "Retrieve bounce classification totals", "description": "This endpoint will return the total number of bounces by classification in descending order for each day. You can retrieve the bounce classification totals in CSV format by specifying `\"text/csv\"` in the Accept header." }, { "slug": "SENDGRID_RETRIEVE_BOUNCE_PURGE_MAIL_SETTINGS", "name": "Retrieve bounce purge mail settings", "description": "Retrieve your current Bounce Purge mail settings. This setting configures the maximum age (in days) of contacts in your hard and soft bounce suppression lists before they are automatically purged. Note: This only affects suppression lists, not Marketing Campaigns contacts." }, { "slug": "SENDGRID_RETRIEVE_CLICK_TRACK_SETTINGS", "name": "Retrieve click track settings", "description": "Retrieves your current click tracking settings from SendGrid. Click tracking monitors user engagement by redirecting links in your emails through SendGrid's servers, allowing you to track when recipients click on links. Returns: - enabled: Whether click tracking is active for HTML emails - enable_text: Whether click tracking is active for plain text emails Note: SendGrid can track up to 1000 links per email. Requires the 'tracking_settings.click.read' scope." }, { "slug": "SENDGRID_RETRIEVE_CURRENT_ENFORCED_TLS_SETTINGS", "name": "Retrieve Current Enforced TLS Settings", "description": "Retrieve the current Enforced TLS settings for your SendGrid account. Enforced TLS settings control whether recipients must support TLS encryption and have valid certificates to receive your emails. By default, SendGrid uses Opportunistic TLS, meaning emails are sent with TLS but fall back to unencrypted delivery if the recipient doesn't support TLS. When Enforced TLS is enabled: - If 'require_tls' is true, recipients must support TLS 1.1 or higher - If 'require_valid_cert' is true, recipients must have a valid certificate - If conditions aren't met, messages are dropped with a block event This endpoint requires the 'user.settings.enforced_tls.read' API scope. Note: This feature may not be available on all SendGrid plans." }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_BY_BROWSER", "name": "Retrieve email statistics by browser", "description": "Retrieve email statistics segmented by browser type (Chrome, Firefox, Safari, etc.). This endpoint is part of the Advanced Stats API and requires the 'browsers.stats.read' permission. Note: SendGrid only stores up to 7 days of browser-type statistics data. The response provides email click metrics (clicks, unique_clicks) grouped by date and browser type, useful for understanding how recipients interact with email links across different browsers." }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_BY_CLIENT_TYPE", "name": "Retrieve email statistics by client type", "description": "Retrieve email statistics segmented by client type (Webmail, Desktop, Phone, Tablet, Other). This endpoint is part of the Advanced Stats API and requires the 'clients.stats.read' permission. Note: SendGrid only stores up to 7 days of client-type statistics data and returns a maximum of 500 items per request. The response provides email engagement metrics (opens, unique_opens) grouped by date and client type, useful for understanding how recipients interact with emails across different email clients." }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_BY_DEVICE_TYPE", "name": "Retrieve email statistics by device type", "description": "Retrieve email statistics segmented by device type (Desktop, Webmail, Phone, Tablet, Other). This endpoint is part of the Advanced Stats API and requires the 'stats.read' permission. Note: SendGrid only stores up to 7 days of device-type statistics data. The response provides email engagement metrics (opens, unique_opens) grouped by date and device type, useful for understanding how recipients interact with emails across different devices." }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_BY_MAILBOX_PROVIDER", "name": "Retrieve email statistics by mailbox provider", "description": "Retrieve email statistics segmented by recipient mailbox provider (e.g., Gmail, Yahoo, Microsoft Outlook). This endpoint is part of the Advanced Stats API and requires the 'stats.read' permission. Note: SendGrid only stores up to 7 days of mailbox provider statistics data. The response provides email delivery and engagement metrics grouped by date and mailbox provider, useful for understanding deliverability performance across different email service providers. Common mailbox providers include: Gmail, Yahoo, Microsoft Outlook (includes hotmail.com, outlook.com, live.com), AOL, and Apple Mail. SendGrid offers groupings for over 200 mailbox providers." }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_FOR_CATEGORIES", "name": "Retrieve email statistics for categories", "description": "Retrieve email statistics for specific categories within a date range. This endpoint returns detailed email metrics (delivered, opens, clicks, bounces, spam reports, etc.) for the specified categories, grouped by date. **Use Cases:** - Monitor email performance for specific campaign categories - Compare statistics across different email categories - Track trends over time with day/week/month aggregation **Limitations:** - Category statistics are available for the previous 13 months only - Free plans: limited to 100 categories daily - Paid plans: limited to 1,000 categories daily - Maximum 10 categories per request **Required Scope:** `categories.stats.read`" }, { "slug": "SENDGRID_RETRIEVE_EMAIL_STATISTICS_FOR_YOUR_SUBUSERS", "name": "Retrieve email statistics for your subusers", "description": "Retrieves email statistics for specified subusers over a date range. Returns metrics including: blocks, bounces, clicks, delivered, opens, requests, unique_clicks, unique_opens, unsubscribes, and more. **Requirements:** - SendGrid Pro plan or higher with subusers configured - API key with `subusers.stats.read` scope **Usage Notes:** - Statistics are available for the last 3 years - Use `aggregated_by` to group results by day, week, or month - Results can be paginated using `limit` and `offset` parameters" }, { "slug": "SENDGRID_RETRIEVE_FOOTER_MAIL_SETTINGS", "name": "Retrieve footer mail settings", "description": "Retrieve your current Footer mail settings from SendGrid. The Footer setting allows you to insert a custom footer at the bottom of all text and HTML email message bodies sent via the SendGrid v3 API or SMTP Relay. This endpoint returns the current enabled status and the configured HTML and plain text footer content." }, { "slug": "SENDGRID_RETRIEVE_FORWARD_BOUNCE_MAIL_SETTINGS", "name": "Retrieve forward bounce mail settings", "description": "Retrieves the current forward bounce mail settings for your SendGrid account. Forward bounce mail settings allow you to specify an email address to which bounce reports will be forwarded. When enabled, you will receive notifications at the configured email address whenever a bounce event occurs. Note: This setting only forwards 'Bounce' events (permanent delivery failures). 'Block' events (temporary failures) are not included in the forwarding. Requires the 'mail_settings.read' scope on the API key." }, { "slug": "SENDGRID_RETRIEVE_FORWARD_SPAM_MAIL_SETTINGS", "name": "Retrieve forward spam mail settings", "description": "Retrieves the current forward spam mail settings for your SendGrid account. Forward spam mail settings allow you to specify email address(es) to which spam reports will be forwarded. When enabled, you will receive notifications at the configured email address(es) whenever a spam report is filed against your emails. You can set multiple addresses by configuring a comma-separated list of emails in the email field. The Forward Spam setting may also be used to receive emails sent to abuse@ and postmaster@ role addresses if you have authenticated your domain. Requires the 'mail_settings.forward_spam.read' scope on the API key." }, { "slug": "SENDGRID_RETRIEVE_GLOBAL_EMAIL_STATISTICS", "name": "Retrieve global email statistics", "description": "Retrieve global email statistics for your SendGrid account within a specific date range. Returns aggregated email metrics including: requests, delivered, bounces, blocks, opens, unique_opens, clicks, unique_clicks, spam_reports, and unsubscribes. Parent accounts can view their own stats or a subuser's aggregated data via the `on-behalf-of` header. Subusers see only their own stats. Requires 'stats.read' permission." }, { "slug": "SENDGRID_RETRIEVE_GOOGLE_ANALYTICS_SETTINGS", "name": "Retrieve Google Analytics Settings", "description": "Retrieves the current Google Analytics tracking settings for your SendGrid account. Google Analytics tracking adds UTM parameters to links in your emails to help you track user behavior and campaign performance in Google Analytics. Returns settings including enabled status and UTM parameters (source, medium, campaign, term, content). Requires 'tracking_settings.google_analytics.read' or 'tracking_settings.read' scope." }, { "slug": "SENDGRID_RETRIEVE_LEGACY_TEMPLATE_MAIL_SETTINGS", "name": "Retrieve legacy template mail settings", "description": "Retrieves your current legacy email template mail settings. The legacy template setting wraps an HTML template around your email content, useful for marketing emails and HTML-formatted messages. Note: SendGrid now recommends using the more advanced Dynamic Transactional Templates instead of legacy templates. This endpoint requires the 'mail_settings.template.read' scope. Returns the 'enabled' status and 'html_content' of the configured legacy template." }, { "slug": "SENDGRID_RETRIEVE_MONTHLY_STATS_FOR_ALL_SUBUSERS", "name": "Retrieve monthly stats for all subusers", "description": "Retrieves monthly email statistics for all subusers. Returns metrics such as blocks, bounces, clicks, delivered emails, opens, requests, unique clicks/opens, and unsubscribes. **Note**: This endpoint requires the `subusers.stats.monthly.read` API scope and is only available for SendGrid Pro plans and above that have subusers configured. **Important**: Sort operations are not available for: bounce_drops, deferred, invalid_emails, processed, spam_report_drops, spam_reports, or unsubscribe_drops metrics." }, { "slug": "SENDGRID_RETRIEVE_PAGED_TRANSACTIONAL_TEMPLATES", "name": "Retrieve paged transactional templates", "description": "**This endpoint allows you to retrieve all transactional templates.**" }, { "slug": "SENDGRID_RETRIEVE_RECIPIENTS", "name": "Retrieve recipients", "description": "Retrieve all marketing campaign recipients via this endpoint. Use batch deletion carefully, as it may lead to empty pages. Continue iterating pages until a 404 error occurs to ensure complete retrieval." }, { "slug": "SENDGRID_RETRIEVE_RECIPIENTS_ON_A_SEGMENT", "name": "Retrieve recipients on a segment", "description": "Retrieves all recipients (contacts) in a specified segment from SendGrid's Legacy Marketing Campaigns Contact Database. This endpoint returns recipient data including: - Contact info: id, email, first_name, last_name - Timestamps: created_at, updated_at (in Unix time) - Engagement data: last_clicked, last_emailed, last_opened - Any custom fields defined in your contact database Note: This uses the Legacy Contacts API (/v3/contactdb). Segments must be created via the legacy 'create_a_segment' action, not the newer Marketing Campaigns v2 API segments. Supports pagination via 'page' and 'page_size' parameters for segments with many recipients." }, { "slug": "SENDGRID_RETRIEVE_RESERVED_FIELDS", "name": "Retrieve reserved fields", "description": "**Retrieve all reserved fields from the Legacy Marketing Campaigns Contact Database.** This endpoint returns a list of fields that are reserved by SendGrid and cannot be used as custom field names. Reserved fields include: - **Text fields**: first_name, last_name, email - **Date fields**: created_at, updated_at, last_emailed, last_clicked, last_opened - **Set fields**: lists, campaigns **Note**: This is part of the Legacy Marketing Campaigns API. For new implementations, consider using the newer Marketing Campaigns API endpoint `/v3/marketing/field_definitions` which returns both custom and reserved fields. **Required API Scope**: Legacy Marketing Campaigns access (contactdb permissions)" }, { "slug": "SENDGRID_RETRIEVE_SCHEDULED_SEND", "name": "Retrieve scheduled send", "description": "Retrieve the cancel/pause status of a scheduled email batch by its batch_id. Use this action to check whether a batch of scheduled emails has been paused or cancelled. The batch_id must have been created via 'create_a_batch_id' and then assigned a status via 'cancel_or_pause_a_scheduled_send'. Returns the batch_id and its status ('pause' or 'cancel'). If the batch has no pause/cancel status (i.e., emails were scheduled normally without being paused or cancelled), this endpoint may return empty data. Note: Only scheduled sends created with a batch_id can be retrieved. Emails scheduled via /mail/send with only send_at (no batch_id) cannot be queried." }, { "slug": "SENDGRID_RETRIEVES_INBOUND_PARSE_WEBHOOK_STATISTICS", "name": "Retrieves inbound parse webhook statistics", "description": "Retrieve statistics for emails processed by SendGrid's Inbound Parse Webhook. This endpoint returns metrics about the number of emails received and processed by the Inbound Parse Webhook within a specified date range. The Inbound Parse Webhook allows you to receive incoming emails, parse them, and have their contents (headers, body, attachments) POSTed to a URL you specify. **Access Control:** - Parent accounts see aggregated stats for their account and all subusers - Subusers see only their own stats - Use the 'on-behalf-of' header to retrieve stats for a specific subuser **Required Scope:** user.webhooks.parse.stats.read" }, { "slug": "SENDGRID_RETRIEVE_SINGLE_SEGMENT_ENDPOINT", "name": "Retrieve single segment endpoint", "description": "Retrieves detailed information about a specific Marketing Campaigns segment by its unique ID. Returns segment metadata including the SQL query defining membership criteria (query_dsl), contact count, query validation status, and timestamps. Optionally returns the parsed SQL query as a JSON AST when query_json=true. Note: This uses the Marketing Campaigns V2 Segmentation API. Contact counts are refreshed approximately every hour. Segments using engagement data may take 30 minutes to populate." }, { "slug": "SENDGRID_RETRIEVE_SPECIFIC_TEAMMATE", "name": "Retrieve specific teammate", "description": "Retrieves details of a specific SendGrid teammate by username. Returns teammate information including email, name, user type, admin status, and permission scopes. Use 'Retrieve all teammates' first to get valid usernames. Requires 'teammates.read' API scope for access." }, { "slug": "SENDGRID_RETRIEVE_STATS_BY_A_SPECIFIC_CLIENT_TYPE", "name": "Retrieve stats by a specific client type", "description": "Retrieve email statistics for a specific client type (phone, tablet, webmail, or desktop). This endpoint is part of the Advanced Stats API and provides email engagement metrics (opens, unique_opens) filtered by a specific email client type. Use this to understand how recipients interact with emails on different devices/platforms. Requirements: - Requires 'stats.read' or 'clients.{client_type}.stats.read' permission - SendGrid only stores up to 7 days of client-type statistics data - Maximum 500 items per request" }, { "slug": "SENDGRID_RETRIEVE_SUBSCRIPTION_TRACKING_SETTINGS", "name": "Retrieve subscription tracking settings", "description": "Retrieves the current subscription tracking settings for your SendGrid account. Subscription tracking automatically adds unsubscribe/subscribe links to the bottom of your emails, allowing recipients to manage their email preferences. This endpoint returns the current configuration including whether tracking is enabled and the customizable HTML/text content for the tracking links. No parameters required. Returns the enabled status, custom HTML content, plain text content, and optional custom landing page URL for subscription management." }, { "slug": "SENDGRID_RETRIEVE_SUBUSER_REPUTATIONS", "name": "Retrieve subuser reputations", "description": "Retrieves sender reputation scores (0-100) for subusers. Reputation reflects email delivery performance based on recipient engagement, bounces, spam reports, and other negative actions. Higher scores indicate better sender behavior. Requires the 'subusers.reputations.read' API permission scope." }, { "slug": "SENDGRID_RETRIEVE_SUMS_OF_EMAIL_STATS_FOR_EACH_CATEGORY", "name": "Retrieve sums of email stats for each category", "description": "Retrieve aggregated email statistics sums for each category over a date range. This action returns the total sum of each email statistic metric (delivered, opens, clicks, bounces, etc.) for every category used in your SendGrid account. Categories help you organize and track different types of emails you send. **Key Features:** - Get stats across all categories or paginate through them - Sort by any metric (delivered, opens, clicks, etc.) - Aggregate by day, week, or month for trend analysis - Results are returned sorted by your chosen metric **Limitations:** - Statistics are only available for the previous 13 months - Paid accounts: 1,000 categories daily limit - Free accounts: 100 categories daily limit **Required Scope:** categories.stats.sums.read **Example Use Cases:** - Find your highest-performing email categories by delivery rate - Identify categories with high bounce or spam report rates - Track engagement trends across different email types" }, { "slug": "SENDGRID_RETRIEVE_THE_COUNT_OF_BILLABLE_RECIPIENTS", "name": "Retrieve the count of billable recipients (Legacy)", "description": "Retrieves the count of billable recipients for SendGrid Legacy Marketing Campaigns. This endpoint returns the number of Marketing Campaigns recipients you will be billed for. You are billed for marketing campaigns based on the highest number of recipients you have had in your account at one time. **Important Notes:** - This is a Legacy Marketing Campaigns API endpoint (`/v3/contactdb/*`). - A 403 Forbidden error indicates your account does not have access to the Legacy Marketing Campaigns API. Newer SendGrid accounts may not have access to these endpoints. - For the current Marketing Campaigns API, use the `get_total_contact_count` action (`/v3/marketing/contacts/count`) instead. **Required Scopes:** Marketing Campaigns read permissions (contactdb.read). **Response:** - `recipient_count` (integer): The number of billable recipients." }, { "slug": "SENDGRID_RETRIEVE_THE_DEFAULT_BRANDED_LINK", "name": "Retrieve the default branded link", "description": "Retrieves the default branded link for message sending. Branded links (formerly 'Link Whitelabel') allow click-tracked links, opens, and images in your emails to be served from your domain rather than sendgrid.net. The priority for default branded link is: 1. User-set default branded link 2. Legacy branded link 3. SendGrid's default link (100.ct.sendgrid.net) You can make this request on behalf of a subuser by including their ID in the 'on-behalf-of' header." }, { "slug": "SENDGRID_RETRIEVE_THE_LISTS_THAT_A_RECIPIENT_IS_ON", "name": "Retrieve the lists that a recipient is on", "description": "Retrieves all marketing campaign lists that a specific recipient belongs to. NOTE: This is a Legacy Marketing Campaigns API endpoint (/v3/contactdb/). For new implementations, consider using the new Marketing Campaigns API which uses different contact and list management endpoints. Each recipient can be on multiple lists. Use this endpoint to find all lists that a recipient has been added to. The recipient must exist in your Legacy Marketing Campaigns contact database." }, { "slug": "SENDGRID_RETRIEVE_TRACKING_SETTINGS", "name": "Retrieve tracking settings", "description": "**This endpoint allows you to retrieve a list of all tracking settings on your account.**" }, { "slug": "SENDGRID_RETRIEVE_USER_S_AUTHENTICATED_DOMAINS", "name": "Retrieve User's Authenticated Domains", "description": "Retrieve authenticated domains (up to five) assigned to a specific subuser. Parent accounts use this to view domains their subusers can use for sending emails. Requires 'Subuser Management' and 'Domain Authentication' API permissions. Must provide a valid subuser username - use 'list_all_subusers' to find usernames. Returns domain objects with id, subdomain, domain, validation status, and DNS records." }, { "slug": "SENDGRID_RETRIEVE_YOUR_ACCOUNT_EMAIL_ADDRESS", "name": "Retrieve your account email address", "description": "Retrieves the email address currently on file for your SendGrid account. This endpoint returns the primary email address associated with your account, which is used for account-related communications from SendGrid. **Required scope**: `user.email.read` **Returns**: An object containing the `email` field with your account email address." }, { "slug": "SENDGRID_RETRIEVE_YOUR_CREDIT_BALANCE", "name": "Retrieve your credit balance", "description": "Retrieves the current email credit balance for your SendGrid account. This endpoint returns information about your account's email sending credits, including the total number of credits, remaining credits, used credits, and overage (if any). Credits determine how many emails you can send before incurring per-email overage charges. Response includes: - remain: Remaining credits available - total: Total credits assigned to your account - overage: Number of overdrawn credits (if applicable) - used: Number of credits consumed - last_reset: Date of last credit reset - next_reset: Date of next credit reset - reset_frequency: How often credits reset (e.g., 'monthly') Note: This endpoint requires the 'user.credits.read' scope." }, { "slug": "SENDGRID_RETRIEVE_YOUR_USERNAME", "name": "Retrieve your username", "description": "Retrieve your current SendGrid account username and user ID. This endpoint returns your account username and user ID. **Required Scope**: user.username.read **Returns**: - username (str): Your SendGrid account username - user_id (int): Your SendGrid account user ID" }, { "slug": "SENDGRID_RETURNS_A_LIST_OF_ALL_PARTNER_SETTINGS", "name": "Returns a list of all partner settings", "description": "Retrieve a paginated list of all partner settings that can be enabled for your SendGrid account. Partner settings allow integration with third-party services. Note: As of August 30, 2022, Twilio SendGrid removed the New Relic integration. Use Deliverability Insights instead. Requires 'partner_settings.read' API scope." }, { "slug": "SENDGRID_SCHEDULE_A_CAMPAIGN", "name": "Schedule a campaign", "description": "Schedules a Legacy Marketing Campaigns email for delivery at a specific time. The campaign must have subject, sender_id, content (HTML and plain text with [unsubscribe] tag), and at least one list or segment ID configured before scheduling. For better delivery rates, schedule at off-peak times (e.g., 10:53) rather than on the hour. Note: You cannot schedule a campaign that has already been sent or scheduled - use the update endpoint to modify a scheduled campaign." }, { "slug": "SENDGRID_SCHEDULE_SINGLE_SEND", "name": "Schedule single send", "description": "Schedule a Single Send for immediate or future delivery. Use `send_at: 'now'` to send immediately, or provide an ISO 8601 date-time for scheduled delivery. The Single Send must be fully configured with sender_id, recipients (list_ids, segment_ids, or send_to_all), and an unsubscribe option (suppression_group_id or custom_unsubscribe_url) before scheduling." }, { "slug": "SENDGRID_SEARCH_CONTACTS", "name": "Search contacts", "description": "Find contacts using this endpoint with a body containing a `query` in SGQL. Searches must use lowercase, and only the first 50 matches are returned. Queries over 20s will timeout. Dates are in ISO format, not Unix timestamps." }, { "slug": "SENDGRID_SEARCH_FOR_SUPPRESSIONS_WITHIN_A_GROUP", "name": "Search for suppressions within a group", "description": "**This endpoint allows you to search a suppression group for multiple suppressions.** When given a list of email addresses and a group ID, this endpoint will only return the email addresses that have been unsubscribed from the given group." }, { "slug": "SENDGRID_SEARCH_RECIPIENTS", "name": "Search recipients", "description": "Search for recipients in the Legacy Marketing Campaigns contact database by field value. This endpoint allows searching recipients by any field (email, first_name, last_name, or custom fields). It performs an exact match search equivalent to using 'eq' operator. For date fields (created_at, updated_at), searches are performed at day granularity. A Unix timestamp like 1422835600 searches the entire day containing that timestamp. **IMPORTANT**: This is a Legacy Marketing Campaigns API endpoint (/v3/contactdb/). It requires Legacy Marketing Campaigns access. Newer accounts may not have access and should use the new Marketing Campaigns Search Contacts API instead. Returns a list of matching recipients with their details including email, names, custom fields, and metadata like created_at/updated_at timestamps." }, { "slug": "SENDGRID_SEND_A_CAMPAIGN", "name": "Send a campaign", "description": "Immediately sends an existing marketing campaign to its configured recipients. **IMPORTANT**: This is a Legacy Marketing Campaigns API endpoint. You may only send a campaign when it is in 'draft' status. The campaign must have: - A subject line - A sender_id (verified sender identity) - At least one list_id or segment_id for recipients Once sent, the campaign cannot be unsent. This action triggers immediate delivery to all recipients in the configured lists/segments. **Note**: This endpoint requires the 'marketing_campaigns.create' or 'marketing_campaigns.update' API scope. The Legacy Marketing Campaigns feature may require specific account access." }, { "slug": "SENDGRID_SEND_A_TEST_CAMPAIGN", "name": "Send a test campaign", "description": "Sends a test version of a marketing campaign to specified email addresses for review before sending to your full recipient list. **IMPORTANT:** This is part of the Legacy Marketing Campaigns API which is being deprecated. For new implementations, consider using the Marketing Campaigns Single Sends API with the 'Send a Test Marketing Email' endpoint instead. **Requirements:** - The API key must have the 'marketing_campaigns.create' scope enabled - The campaign must exist and be in draft or scheduled status - The account must have Legacy Marketing Campaigns feature enabled **Use cases:** - Preview how your campaign will appear in recipients' inboxes - Test email rendering across different email clients - Verify personalization and dynamic content before sending **Multiple recipients:** Provide an array: [\"one@example.com\", \"two@example.com\"] Maximum of 10 test recipients allowed per request." }, { "slug": "SENDGRID_SEND_A_TEST_MARKETING_EMAIL", "name": "Send a test marketing email", "description": "Send a test marketing email before launching a campaign. This endpoint allows you to test your marketing email by sending it to up to 10 email addresses. The test email uses a Dynamic Transactional Template that you specify. **Requirements:** - A valid `template_id` for a Dynamic Transactional Template (Legacy templates not supported) - Either a `from_address` (verified email) OR a `sender_id` (verified sender identity) - At least one recipient email in the `emails` array (max 10) **Use Case:** Test your email template content, formatting, and delivery before sending to your full contact list." }, { "slug": "SENDGRID_SEND_EMAIL_WITH_TWILIO_SEND_GRID", "name": "Send email with twilio sendgrid", "description": "The Mail Send operation uses SendGrid's v3 API to send emails. Visit the provided link for an overview, features, limitations, quickstarts, and helper libraries." }, { "slug": "SENDGRID_SET_UP_REVERSE_DNS", "name": "Set up reverse dns", "description": "Set up reverse DNS (rDNS) for a dedicated IP address. Reverse DNS allows mailbox providers to verify the sender by performing a reverse DNS lookup when receiving emails. This improves email deliverability by establishing trust between your sending IP and your domain. **Prerequisites:** - Your SendGrid account must have a dedicated IP address (not a shared IP) - You must own and control the domain being configured - After setup, you'll need to add the provided A record to your DNS provider **How it works:** 1. Call this endpoint with your domain and dedicated IP 2. SendGrid returns an A record configuration 3. Add the A record to your DNS provider 4. Use the validate endpoint to verify the configuration **Note:** Reverse DNS is only available for dedicated IP addresses which require a Pro plan or higher, or can be purchased as an add-on ($30/month per IP)." }, { "slug": "SENDGRID_START_WARMING_UP_AN_IP_ADDRESS", "name": "Start warming up an ip address", "description": "Put a dedicated IP address into warmup mode. IP warmup gradually increases the sending volume from an IP address to build a positive sending reputation. SendGrid automatically limits the hourly email volume during warmup to prevent deliverability issues. The IP must be a dedicated IP assigned to your account and must have at least one other warm IP to handle overflow traffic. Warmup typically completes in 30-60 days depending on email volume." }, { "slug": "SENDGRID_STOP_WARMING_UP_AN_IP_ADDRESS", "name": "Stop warming up an ip address", "description": "Stop warming up a dedicated IP address and remove automatic sending limits. When an IP is in warmup mode, SendGrid automatically limits the hourly email volume to gradually build sender reputation. This action removes those limits and takes the IP out of warmup mode. **Important Notes:** - Returns 204 No Content on success (empty response body) - The IP must be a dedicated IP assigned to your SendGrid account - The IP must currently be in warmup mode - Requires IP Management permissions on the API key - Only stop warmup when the IP has completed its warmup schedule (typically 30+ days) **Related Actions:** - Use 'Retrieve all IPs currently in warmup' to see which IPs are warming up - Use 'Start warming up an IP address' to begin warmup for a new IP - Use 'Retrieve the warmup status for a specific IP address' to check warmup progress" }, { "slug": "SENDGRID_SUM_EMAIL_STATS_FOR_SUBUSERS", "name": "Sum email stats for subusers", "description": "Retrieves summed email statistics for all subusers over a date range. Returns aggregated metrics including: blocks, bounces, clicks, delivered, opens, requests, unique_clicks, unique_opens, unsubscribes, and more for each subuser. **Requirements:** - SendGrid Pro plan or higher with subusers configured - API key with `subusers.stats.sums.read` scope **Usage Notes:** - Statistics are available for the last 3 years - Use `aggregated_by` to group results by day, week, or month - Results can be sorted by metric using `sort_by_metric` and `sort_by_direction` - Results can be paginated using `limit` and `offset` parameters" }, { "slug": "SENDGRID_TEST_AN_EVENT_WEBHOOK_S_SETTINGS", "name": "Test an Event Webhook's Settings", "description": "Sends a test event notification to a specified URL to verify your webhook endpoint is properly configured to receive SendGrid events. The test sends a POST request with a JSON array containing sample event data. Optionally test OAuth authentication by providing OAuth credentials or referencing an existing webhook's saved credentials via its ID. Returns HTTP 204 on success." }, { "slug": "SENDGRID_TOGGLE_WEBHOOK_SIGNATURE", "name": "Toggle signature verification for a single event webhook by id", "description": "Enable or disable signature verification for a single Event Webhook by its ID. When signature verification is enabled, SendGrid generates an ECDSA key pair and signs all webhook payloads using the private key. The signature is included in the `X-Twilio-Email-Event-Webhook-Signature` header of each webhook request. You can verify authenticity of incoming webhook requests using the public key returned by this endpoint. This helps ensure webhook requests genuinely originate from SendGrid and haven't been tampered with. Requires a valid webhook ID from the 'Get All Event Webhooks' endpoint." }, { "slug": "SENDGRID_UNLINK_SUBUSER_DOMAIN", "name": "Unlink subuser domain", "description": "Disassociate an authenticated domain from a subuser. This removes the link between a domain authentication and a specific subuser, preventing the subuser from sending emails using that domain. Prerequisites: - The domain must be authenticated and associated with the subuser - You must have the subuser's username - You must have the domain_id of the authenticated domain Use 'list_the_authenticated_domain_associated_with_the_given_user' to find domains linked to a specific subuser before calling this endpoint. Note: Each subuser can have up to 5 authenticated domains associated with them. This endpoint is for users with multiple domain associations." }, { "slug": "SENDGRID_UNSCHEDULE_A_SCHEDULED_CAMPAIGN", "name": "Unschedule a scheduled campaign", "description": "Unschedule a campaign that has already been scheduled to be sent. **Note**: This endpoint is part of the Legacy Marketing Campaigns API. SendGrid recommends migrating to the new Marketing Campaigns for new implementations. A successful unschedule operation returns HTTP 204 No Content. The campaign must be in a 'Scheduled' state to be unscheduled. If the campaign is already being sent, you must use the cancel campaign endpoint instead. Common error scenarios: - 404: Campaign not found or not scheduled - 403: Insufficient permissions or IP not whitelisted - 400: Campaign cannot be unscheduled (e.g., already sent or in progress)" }, { "slug": "SENDGRID_UPDATE_A_BRANDED_LINK", "name": "Update a branded link", "description": "Update a specific branded link's default status. Link branding (formerly 'Link Whitelabel') allows all click-tracked links in your emails to be served from your domain rather than sendgrid.net. Use this endpoint to change which branded link is the default for your account. You can submit this request as one of your subusers by including their ID in the `on-behalf-of` header." }, { "slug": "SENDGRID_UPDATE_A_CAMPAIGN", "name": "Update a campaign", "description": "Updates an existing marketing campaign. You can modify the campaign's title, subject line, HTML content, plain text content, and categories. Note: You can only update campaigns that are in draft status - campaigns that have been scheduled or sent cannot be modified. This is part of the Legacy Marketing Campaigns API." }, { "slug": "SENDGRID_UPDATE_ACCOUNT_OFFERINGS", "name": "Update account offerings", "description": "Updates the offerings (email packages and add-ons) assigned to a customer account. IMPORTANT: This endpoint is part of the Account Provisioning API and is only available to Twilio SendGrid reseller partners with a formal partnership agreement. Standard SendGrid accounts will receive a 403 Forbidden error. This is a PUT operation that completely replaces all offerings on the account. You must include ALL offerings you want the account to retain in each request. Offerings not included will be removed from the account. Available offerings include: - Base email packages (e.g., Free, Essentials, Pro) - Each account requires exactly one - Marketing Campaigns add-ons - Dedicated IP addresses - Expert Services Use the List Offerings endpoint to see all available offerings, and the Get Account Offerings endpoint to see what's currently assigned before making updates. When removing IP addresses, the API removes the most recently added IP. Contact SendGrid support if you need to remove a specific IP address." }, { "slug": "SENDGRID_UPDATE_ADDRESS_WHITELIST_MAIL_SETTINGS", "name": "Update address whitelist mail settings", "description": "Updates the address whitelist mail settings for your SendGrid account. The Address Whitelist setting allows you to specify email addresses or domains for which mail should never be suppressed due to bounces, blocks, or unsubscribes. For example, if you whitelist 'example.com', all bounces, blocks, and unsubscribes logged for that domain will be ignored and mail will be sent as normal. Key behaviors: - Use 'enabled' to turn the whitelist on/off - The 'list' parameter REPLACES the entire whitelist (not appends) - Include all addresses/domains you want whitelisted in a single request - For CAN-SPAM compliance, avoid whitelisting generic domains Note: For Regional (EU) subusers, utilizing this feature will cause customer personal information to be stored outside of the EU. Required scope: mail_settings.address_whitelist.update" }, { "slug": "SENDGRID_UPDATE_A_LIST", "name": "Update a list", "description": "Updates the name of an existing recipient list in the Marketing Campaigns. This action allows you to rename a contact list. Lists are static collections of contacts in SendGrid Marketing Campaigns that can be used for email campaigns and segmentation. **Prerequisites**: - The list_id must be obtained from an existing list - Use 'Retrieve All Lists' action to get available list IDs - Requires SendGrid Marketing Campaigns API access **Note**: This uses the Marketing Campaigns Contact Database API (/v3/contactdb/lists/). This is a legacy endpoint that SendGrid maintains for backwards compatibility. For new implementations using UUID-based list IDs, use the 'Update List' action instead." }, { "slug": "SENDGRID_UPDATE_AN_ACCOUNT_S_STATE", "name": "Update Account State", "description": "Update the state of a customer account using the Account Provisioning API. IMPORTANT: This endpoint is ONLY available to Twilio SendGrid reseller partners with a formal partnership agreement and proper IP whitelisting. Standard SendGrid accounts will receive a 403 Forbidden error. Use this endpoint to: - Activate a customer account to enable email sending (state='activated') - Deactivate a customer account to disable email sending (state='deactivated') Account states: - 'activated': Account is active and can send email - 'deactivated': Account is deactivated and cannot send email Prerequisites: - Valid SendGrid Partner/Reseller credentials - IP address must be whitelisted with SendGrid - Customer account must exist (created via SENDGRID_CREATE_AN_ACCOUNT)" }, { "slug": "SENDGRID_UPDATE_AN_ALERT", "name": "Update an alert", "description": "Update an existing SendGrid alert's settings. Supports updating two types of alerts: - **usage_limit**: Update the percentage threshold (0-100) or email recipient. - **stats_notification**: Update the frequency (daily/weekly/monthly) or email recipient. Note: You can only update fields relevant to the alert's type. Use 'Retrieve all alerts' to get the alert ID and current settings before updating." }, { "slug": "SENDGRID_UPDATE_AN_AUTHENTICATED_DOMAIN", "name": "Update an authenticated domain", "description": "Updates the settings for an authenticated domain in SendGrid. Use this endpoint to modify the `custom_spf` and `default` settings for an existing authenticated domain. To get the domain_id, first use the 'List all authenticated domains' endpoint. **Parameters:** - `domain_id` (required): The numeric ID of the authenticated domain to update. - `custom_spf` (optional): Set to true for manual SPF configuration, false for automatic. - `default` (optional): Set to true to make this the default sending domain. **Note:** If you enable `custom_spf`, automatic security will be disabled and you'll need to configure your own SPF, DKIM, and MX records manually." }, { "slug": "SENDGRID_UPDATE_AN_IP_POOL_NAME", "name": "Update an IP Pool Name", "description": "Updates the name of an existing IP Pool in your SendGrid account. IP Pools allow you to group your dedicated SendGrid IP addresses together for better management of email sending reputation. For example, you might have separate pools named 'transactional' and 'marketing' to maintain separate reputations for different email types. Requirements: - SendGrid account with dedicated IP addresses (Pro or Premier plan) - API key with 'IP Address Management' scope or 'ips.pools.update' permission - The IP Pool must already exist (use 'Get All IP Pools' to find pool IDs) Note: This API endpoint is part of the IP Address Management API (public beta). The pool name must be unique and cannot start with a period (.) or space." }, { "slug": "SENDGRID_UPDATE_AN_SSO_INTEGRATION", "name": "Update an SSO Integration", "description": "Update an existing Single Sign-On (SSO) integration for your SendGrid account. This endpoint allows you to modify SAML 2.0 SSO configuration settings for an integration with your Identity Provider (IdP) such as Okta, Azure AD, or Duo. You can update the integration name, enable/disable status, and IdP URLs. **Note**: SSO is available only for SendGrid Email API Pro, Premier, and Marketing Campaigns Advanced plans. The integration ID can be retrieved from the 'Get All SSO Integrations' endpoint." }, { "slug": "SENDGRID_UPDATE_A_PARSE_SETTING", "name": "Update a parse setting", "description": "Updates an existing Inbound Parse Webhook setting by hostname. **Prerequisites:** 1. The hostname must already exist as a configured parse setting. 2. Use 'Retrieve all parse settings' to list available hostnames. **Parameters:** - `hostname`: Required. The hostname of the parse setting to update. - `url`: Optional. New webhook URL to receive parsed emails via HTTP POST. - `send_raw`: Optional. Set to `true` to receive raw MIME content instead of parsed fields. - `spam_check`: Optional. Set to `true` to enable spam filtering (emails ≤2.5MB). - `on_behalf_of`: Optional. Subuser username to make the call on their behalf. **Returns:** The updated parse setting with hostname, url, send_raw, and spam_check values. **Note:** Only include the fields you want to update. Omitted fields remain unchanged." }, { "slug": "SENDGRID_UPDATE_API_KEY_NAME", "name": "Update API Key Name", "description": "Updates the name of an existing SendGrid API key. This endpoint only modifies the key's display name and does not change its permissions/scopes. Use this to rename API keys for better organization. To update both name and scopes, use the 'Update API Key Name and Scopes' endpoint instead." }, { "slug": "SENDGRID_UPDATE_API_KEY_NAME_AND_SCOPES", "name": "Update api key name and scopes", "description": "Updates both the name and permission scopes of an existing SendGrid API key. IMPORTANT: The scopes array completely replaces the key's existing permissions. To preserve existing permissions while adding new ones, first retrieve the key's current scopes using 'Retrieve an existing API Key', then include all desired scopes in this request. To update only the name without changing scopes, use 'Update API key name' (PATCH) endpoint instead. Requires 'api_keys.update' scope on the authenticating API key." }, { "slug": "SENDGRID_UPDATE_A_SCHEDULED_CAMPAIGN", "name": "Update a scheduled campaign", "description": "Updates the scheduled send time for a Legacy Marketing Campaigns email. The campaign must already be scheduled before using this endpoint. Use the Schedule a Campaign endpoint first to initially schedule a draft campaign. This endpoint changes only the send_at timestamp. Note: Legacy Marketing Campaigns require the 'marketing_campaigns.update' scope on your API key." }, { "slug": "SENDGRID_UPDATE_A_SCHEDULED_SEND", "name": "Update a scheduled send", "description": "Update the status of a scheduled send batch that already has a pause or cancel status. Use to change between 'pause' and 'cancel' on batches that have an existing status (set via 'cancel_or_pause_a_scheduled_send'). To set initial status, use that action instead. To remove status entirely (resume), use 'delete_a_cancellation_or_pause_from_a_scheduled_send'. Notes: - Paused sends expire 72 hours after their send_at time - Cancelled sends are discarded at send_at time - Max 10 paused/cancelled batches allowed at once" }, { "slug": "SENDGRID_UPDATE_A_SEGMENT", "name": "Update a segment", "description": "Updates an existing segment in SendGrid's Marketing Campaigns using the Segmentation V2 API. You can update the segment's name and/or the SQL query that defines membership criteria. At least one of 'name' or 'query_dsl' should be provided for the update. Important notes: - Segment names must be unique within your account - The query_dsl must select 'contact_id' and 'updated_at' from the 'contact_data' table - Segment counts are refreshed approximately once per hour, not immediately - For engagement-based segments (opens, clicks), population takes about 30 minutes Use the create_segment or get_list_of_segments endpoints to obtain valid segment IDs." }, { "slug": "SENDGRID_UPDATE_A_SENDER", "name": "Update a sender", "description": "Updates an existing Sender identity for use in SendGrid Marketing Campaigns. **Important Notes:** - Partial updates are supported - only include fields you want to change. - Changes to `from_email` require re-verification of the Sender. - If your domain is authenticated, new from_email addresses will auto-verify. - The required fields (nickname, from_email, address, city, country) must not be empty if included in the update. **Use Cases:** - Update physical address information for CAN-SPAM compliance. - Change the reply-to email address for a campaign. - Update the display name for branding purposes. - Modify the nickname for better organization in the dashboard." }, { "slug": "SENDGRID_UPDATE_A_SENDER_IDENTITY", "name": "Update a sender identity", "description": "Updates an existing sender identity in SendGrid. This action allows partial updates - only the fields you provide will be modified, while all other fields remain unchanged. **Important Notes:** - Changing the from_email address requires re-verification of the sender identity. - Fields marked as \"required\" in the create endpoint must not be set to empty strings if included in the update request. - First retrieve sender IDs using the 'Get all sender identities' action. Use this to update sender display names, addresses, or reply-to information." }, { "slug": "SENDGRID_UPDATE_A_SINGLE_EVENT_WEBHOOK_BY_ID", "name": "Update a single event webhook by id", "description": "Updates the configuration of a specific Event Webhook by its ID. You can modify the webhook URL, enable/disable it, subscribe to specific event types (bounce, click, delivered, open, etc.), set a friendly name, and configure OAuth settings. Only include fields you want to update - unspecified fields remain unchanged. For signature verification settings, use the separate 'Toggle Signature Verification' endpoint. The webhook ID is required and can be obtained from the 'Retrieve all event webhooks' or 'Create a new event webhook' endpoints." }, { "slug": "SENDGRID_UPDATE_A_SUPPRESSION_GROUP", "name": "Update a suppression group", "description": "Updates an existing suppression group (also known as an unsubscribe group). A suppression group allows recipients to unsubscribe from specific types of emails (e.g., newsletters, promotions, alerts) rather than all emails from your account. You can update the group's name, description, or set it as the default suppression group. The name and description are visible to recipients when they manage their email subscriptions. Note: Only one suppression group can be the default at a time. Setting is_default=true will remove the default status from any other group. Requires the 'Unsubscribe Groups' permission scope on your API key." }, { "slug": "SENDGRID_UPDATE_A_USER_S_PROFILE", "name": "Update a User's Profile", "description": "Updates the authenticated user's profile information in SendGrid. **Important:** At least one parameter must be provided. You can update any combination of profile fields including name, company, address, phone, and website. **Use Cases:** - Update contact information when user details change - Add or modify company affiliation - Update address for account management purposes - Set or change website URL **Required API Scope:** user.profile.update **Note:** This endpoint may require IP whitelisting to be configured in your SendGrid account settings if access restrictions are enabled." }, { "slug": "SENDGRID_UPDATE_BOUNCE_PURGE_MAIL_SETTINGS", "name": "Update bounce purge mail settings", "description": "Update your Bounce Purge mail settings in SendGrid. This setting configures automatic purging of contacts from your hard and soft bounce suppression lists based on a specified number of days (1-3650). Note: This only affects suppression lists, not Marketing Campaigns contacts. Only provide values for the bounce types you want to configure; empty values will be ignored." }, { "slug": "SENDGRID_UPDATE_CLICK_TRACKING_SETTINGS", "name": "Update click tracking settings", "description": "Updates click tracking settings for your SendGrid account. Click tracking monitors email engagement by redirecting links through SendGrid's servers (or your branded domain), allowing you to track when recipients click links. Parameters: - enabled: Enable/disable click tracking for HTML emails - enable_text: Enable/disable click tracking for plain text emails Note: SendGrid can track up to 1000 links per email. Consider privacy implications as tracking may require recipient consent depending on their location. Requires the 'tracking_settings.click.update' scope." }, { "slug": "SENDGRID_UPDATE_CUSTOM_FIELD_DEFINITION", "name": "Update custom field definition", "description": "Updates the name of an existing custom field in SendGrid Marketing Contacts. Only custom fields can be modified; Reserved Fields (like email, first_name, last_name) cannot be updated. The field_type cannot be changed after creation. Requires a valid custom_field_id obtained from 'Create Custom Field Definition' or 'Get All Field Definitions'." }, { "slug": "SENDGRID_UPDATE_DESIGN", "name": "Update design", "description": "Updates an existing email design in the SendGrid Design Library using PATCH. Only fields provided in the request will be updated; other fields remain unchanged. Use this to modify design name, HTML content, subject, categories, or plain text content. Requires the design ID which can be obtained from list_designs or create_design actions." }, { "slug": "SENDGRID_UPDATE_DETAILS_FOR_AN_IP_ADDRESS", "name": "Update details for an ip address", "description": "Updates settings for a dedicated IP address in your SendGrid account. This endpoint allows you to modify: - Auto warmup status: Enable/disable automatic IP warmup to build sender reputation - Parent assignment: Allow/revoke parent account access to send from this IP - Enabled status: Enable/disable the IP for sending email (non-Twilio IPs only) At least one of `is_auto_warmup`, `is_parent_assigned`, or `is_enabled` must be provided. Note: This API is part of the IP Address Management API which is in public beta. Requires a Pro Email API or Advanced Marketing Campaigns plan with dedicated IPs." }, { "slug": "SENDGRID_UPDATE_ENFORCED_TLS_SETTINGS", "name": "Update enforced tls settings", "description": "Update the Enforced TLS settings for your SendGrid account. Enforced TLS controls whether recipients must support TLS encryption and have valid certificates to receive your emails. By default, SendGrid uses Opportunistic TLS, meaning emails are sent with TLS but fall back to unencrypted delivery if the recipient doesn't support TLS. When Enforced TLS is enabled: - If 'require_tls' is true, recipients must support TLS 1.1 or higher - If 'require_valid_cert' is true, recipients must have a valid certificate - If conditions aren't met, messages are dropped with a block event This is an account-wide setting that applies to all emails sent through the account. Requires the 'user.settings.enforced_tls.update' API scope. Note: This feature may not be available on all SendGrid plans." }, { "slug": "SENDGRID_UPDATE_FOOTER_MAIL_SETTINGS", "name": "Update footer mail settings", "description": "Update your Footer mail settings in SendGrid. This endpoint allows you to configure a custom footer that will be appended to the bottom of all outgoing text and HTML email bodies sent via the SendGrid v3 API or SMTP Relay. You can set the HTML and plain text versions of the footer content, and enable or disable the setting. Only provide the fields you want to update; omitted fields will retain their current values." }, { "slug": "SENDGRID_UPDATE_FORWARD_BOUNCE_MAIL_SETTINGS", "name": "Update forward bounce mail settings", "description": "Updates the forward bounce mail settings for your SendGrid account. Forward bounce mail settings allow you to specify an email address to which bounce reports (permanent delivery failures) will be forwarded. This is useful for monitoring email delivery issues and maintaining list hygiene. Note: This setting only forwards 'Bounce' events. 'Block' events (temporary failures like rate limits) are not included in the forwarding. Requires the 'mail_settings.forward_bounce.update' scope on the API key." }, { "slug": "SENDGRID_UPDATE_FORWARD_SPAM_MAIL_SETTINGS", "name": "Update forward spam mail settings", "description": "Updates the Forward Spam mail settings for your SendGrid account. When enabled, spam reports will be forwarded to the specified email address(es). You can configure multiple forwarding addresses by providing a comma-separated list of email addresses. This setting can also be used to receive emails sent to abuse@ and postmaster@ role addresses if you have authenticated your domain. Requires the 'mail_settings.forward_spam.update' scope on the API key." }, { "slug": "SENDGRID_UPDATE_GOOGLE_ANALYTICS_SETTINGS", "name": "Update Google Analytics Settings", "description": "Updates Google Analytics tracking settings for your SendGrid account. When enabled, UTM parameters are automatically appended to all links in your emails, allowing you to track email campaign performance in Google Analytics. You can configure the utm_source, utm_medium, utm_campaign, utm_term, and utm_content parameters that will be added to links. Requires 'tracking_settings.google_analytics.update' scope." }, { "slug": "SENDGRID_UPDATE_INTEGRATION", "name": "Update Marketing Integration", "description": "Update an existing Marketing Integration by its unique ID. An Integration is a connection from SendGrid Marketing Campaigns to a supported third-party application (currently only Segment is supported). This allows you to customize and automate email event forwarding to your Segment account. You can update the label, email event filters, and destination properties. Only the fields you provide will be updated; other fields remain unchanged." }, { "slug": "SENDGRID_UPDATE_LIST", "name": "Update list", "description": "Update the name of an existing contact list in SendGrid Marketing Campaigns. This endpoint allows you to rename a contact list. The list must already exist and you need its UUID to perform the update. **Note**: This action uses the Marketing Campaigns API (/v3/marketing/lists/). List IDs must be in UUID format (e.g., 'a1b2c3d4-e5f6-7890-abcd-ef1234567890'). For legacy Contact Database lists (numeric IDs), use the 'Update a List' action instead. **Prerequisites**: Obtain the list ID from 'Get All Lists' or 'Create List' actions. Requires the Marketing Campaigns API scope (marketing.lists.update)." }, { "slug": "SENDGRID_UPDATE_OPEN_TRACKING_SETTINGS", "name": "Update open tracking settings", "description": "Updates open tracking settings for your SendGrid account. Open tracking monitors email engagement by inserting an invisible 1x1 pixel image (tracking pixel) at the end of HTML emails. When a recipient opens the email and their email client loads images, SendGrid logs an 'open' event. Open tracking data is available in SendGrid's Statistics portal, Email Activity interface, and can be received via Event Webhook. Note: Open tracking only works with HTML emails where images are enabled by the recipient's email client. Plain text emails cannot be tracked for opens. Requires the 'tracking_settings.open.update' scope." }, { "slug": "SENDGRID_UPDATE_SINGLE_SEND", "name": "Update single send", "description": "Update a Single Send draft by its ID. This endpoint allows you to modify specific properties of a Single Send without affecting other fields. Note: Setting 'send_at' prepopulates the send date in the UI but does not schedule the Single Send. To schedule it, use the Schedule Single Send endpoint or the SendGrid UI." }, { "slug": "SENDGRID_UPDATE_SSO_CERTIFICATE", "name": "Update SSO Certificate", "description": "Update an existing SSO (Single Sign-On) certificate by its ID. This endpoint allows you to modify the properties of an SSO certificate used for SAML 2.0 authentication. You can update the public certificate, enable/disable the certificate, or change its integration association. The certificate ID can be obtained from the 'Get All SSO Certificates by Integration' endpoint or from the response when creating a new certificate. Note: This endpoint requires SSO to be enabled on your SendGrid account (typically available on Pro, Premier, or Marketing Campaigns Advanced plans) and appropriate API key permissions." }, { "slug": "SENDGRID_UPDATE_SUBSCRIPTION_TRACKING_SETTINGS", "name": "Update subscription tracking settings", "description": "Updates subscription tracking settings for your SendGrid account. Subscription tracking automatically adds unsubscribe links to the bottom of your emails, allowing recipients to opt out of future communications. You can customize the HTML content, plain text content, landing page, replacement tags, and custom URL for unsubscribe handling. Requires 'tracking_settings.subscription.update' scope." }, { "slug": "SENDGRID_UPDATE_TEAMMATE_S_PERMISSIONS", "name": "Update Teammate's Permissions", "description": "Updates a teammate's permissions in your SendGrid account. To grant full admin access: set `is_admin` to True and `scopes` to an empty array []. To assign specific permissions: set `is_admin` to False and provide the desired scopes. Only the parent account owner or teammates with admin privileges can update permissions. Requires the 'teammates.update' API scope. Note: SSO teammates should be updated using the 'Edit SSO Teammate' action instead." }, { "slug": "SENDGRID_UPDATE_TEMPLATE_MAIL_SETTINGS", "name": "Update template mail settings", "description": "Updates the legacy email template mail settings for your SendGrid account. When enabled, this template wraps around all emails sent via the SendGrid API. Note: SendGrid now recommends using Dynamic Transactional Templates instead of legacy templates for more advanced templating features. The html_content must include the '<% body %>' tag to indicate where the email body content will be inserted. Required scope: mail_settings.template.update" }, { "slug": "SENDGRID_UPDATE_THE_CREDITS_FOR_A_SUBUSER", "name": "Update the credits for a subuser", "description": "Update the credit allocation settings for a SendGrid Subuser. This action allows you to configure how many email credits a Subuser can use and how those credits are managed. Credits control the number of emails a Subuser can send. **Credit Types:** - `unlimited`: Subuser has no credit limit (no restrictions on sending). - `recurring`: Credits reset periodically (daily/weekly/monthly) to a fixed amount. - `nonrecurring`: One-time credit allocation that does not automatically reset. **Usage Examples:** - Set unlimited credits: type='unlimited' (omit total and reset_frequency) - Set 1000 monthly recurring credits: type='recurring', total=1000, reset_frequency='monthly' - Set 500 one-time credits: type='nonrecurring', total=500 (omit reset_frequency) **Note:** Requires a SendGrid parent account with Subuser management capabilities." }, { "slug": "SENDGRID_UPDATE_THE_REMAINING_CREDITS_FOR_A_SUBUSER", "name": "Update the remaining credits for a subuser", "description": "Updates the remaining credits for a specific Subuser account by adding or subtracting from the current credit balance. Use a positive `allocation_update` value to increase credits or a negative value to decrease credits. Returns the updated credit information including the new remaining balance, total credits, and credit type. **Note**: This endpoint requires parent account credentials with subuser management permissions. Only available on Pro or Premier SendGrid plans." }, { "slug": "SENDGRID_UPDATE_YOUR_ACCOUNT_EMAIL_ADDRESS", "name": "Update your account email address", "description": "Updates the email address currently on file for your SendGrid account. This endpoint modifies the primary email address associated with your account, which is used for account-related communications from SendGrid. **Required scope**: `user.email.update` **Request body**: Requires an `email` field with the new email address. **Returns**: An object containing the `email` field with the updated account email address." }, { "slug": "SENDGRID_UPDATE_YOUR_PASSWORD", "name": "Update your password", "description": "Update the password for your SendGrid account. **Important**: This endpoint requires username/password authentication and cannot be accessed using API key authentication. API keys do not have the `user.password.update` scope. This is a security measure to protect account credentials. This is a destructive operation that changes account access credentials." }, { "slug": "SENDGRID_UPDATE_YOUR_USERNAME", "name": "Update your username", "description": "Update the username for your SendGrid account. This endpoint allows you to change the username associated with your account. The username must be unique across all SendGrid accounts. **Required scope:** `user.username.update` Note: Updating your username may affect how you log into the SendGrid dashboard." }, { "slug": "SENDGRID_VALIDATE_A_BATCH_ID", "name": "Validate a batch ID", "description": "Validate whether a mail batch ID exists in SendGrid's system. This endpoint checks if a batch ID has been created and is valid. A successful response (HTTP 200) indicates the batch ID exists. An invalid batch ID returns HTTP 400. **Important**: A valid batch ID simply means it has been created via the 'Create a batch ID' endpoint. It does NOT indicate whether any emails have been sent using this batch ID or whether it's assigned to a scheduled send. Use this endpoint to verify batch IDs before using them with the Cancel Scheduled Sends API (pause, cancel, or resume scheduled sends). Required scope: `mail.batch.read`" }, { "slug": "SENDGRID_VALIDATE_A_BRANDED_LINK", "name": "Validate a branded link", "description": "**This endpoint allows you to validate a branded link.** It checks that the required DNS CNAME records are correctly configured for your branded link domain. The validation verifies: - **domain_cname**: The CNAME record for your branded link subdomain (e.g., links.yourdomain.com) - **owner_cname**: The CNAME record that verifies ownership of the branded link You can submit this request as one of your subusers if you include their ID in the `on-behalf-of` header in the request. **Note**: You should configure your DNS records before calling this endpoint. The validation will fail if the CNAME records are not properly set up with your DNS provider." }, { "slug": "SENDGRID_VALIDATE_A_DOMAIN_AUTHENTICATION", "name": "Validate a domain authentication", "description": "**This endpoint allows you to validate an authenticated domain.** It checks that the required DNS records are correctly configured for your sending domain. The validation verifies different records based on your domain's security setting: **When automatic_security is enabled (default):** - **mail_cname**: The CNAME record for your mail subdomain - **dkim1**: The first DKIM CNAME record - **dkim2**: The second DKIM CNAME record **When automatic_security is disabled:** - **mail_server**: The MX record pointing to SendGrid - **subdomain_spf**: The SPF TXT record for your subdomain - **dkim**: The DKIM TXT record containing your public key If validation fails, the response includes detailed reasons for each failed record, helping you identify which DNS entries need to be corrected. **Note**: Configure your DNS records with your domain provider before calling this endpoint. Validation will fail if records are not properly set up. DNS changes may take up to 48 hours to propagate." }, { "slug": "SENDGRID_VALIDATE_AN_EMAIL", "name": "Validate an email", "description": "Validates an email address and returns a verdict on its validity. This endpoint checks if an email address is valid, risky, or invalid by analyzing: - Email syntax and format - Domain DNS records (MX/A records) - Disposable email detection - Role-based email detection (e.g., admin@, hr@) - Known and suspected bounce history Returns a score from 0-1 indicating validity likelihood and a verdict of 'Valid', 'Risky', or 'Invalid'. Also detects potential typos and provides domain suggestions. **Note**: This is a premium feature available only to Email API Pro and Premier level accounts. Rate limited to 600 requests per minute." }, { "slug": "SENDGRID_VALIDATE_A_REVERSE_DNS_RECORD", "name": "Validate a reverse dns record", "description": "Validate a reverse DNS (rDNS) record to check if DNS is properly configured. This endpoint verifies that the A record for reverse DNS has been correctly added to your DNS provider. After setting up reverse DNS, you must add the provided A record to your DNS, then use this endpoint to validate the configuration. **Response Interpretation:** - `valid: true` in `validation_results.a_record` means the A record is properly configured - `valid: false` means validation could not confirm the record - check the `reason` field - A false result indicates undetermined status, not necessarily invalid configuration **Prerequisites:** - A reverse DNS record must already exist (created via 'Set up reverse DNS') - The A record must be added to your DNS provider before validation - Requires a dedicated IP address (not available for shared IPs) - Requires 'whitelabel.update' API scope **Note:** DNS propagation can take up to 48 hours. If validation fails immediately after adding DNS records, wait and try again later." }, { "slug": "SENDGRID_VERIFY_SENDER_REQUEST", "name": "Verify sender request", "description": "Verifies a sender identity using a token from the verification email. When you create a sender identity via 'Create Verified Sender Request', SendGrid sends a verification email to that address. The email contains a verification link with a unique token. Use this endpoint with that token to complete verification. After verification, the sender can be used to send emails. Note: The token is only available in the verification email and cannot be retrieved via API." }, { "slug": "SENDGRID_VIEW_A_SENDER_IDENTITY", "name": "View a sender identity", "description": "Retrieves the details of a specific Legacy Sender Identity by its unique ID. Returns comprehensive sender information including: - Sender identification (ID, nickname) - Email configuration (from email/name, reply-to email/name) - Physical address details (address, city, state, zip, country) - Status flags (verified, locked) - Timestamps (created_at, updated_at) Note: This endpoint is for Legacy Sender Identities (used with Legacy Marketing Campaigns). For Marketing Senders (used with new Marketing Campaigns), use the 'Get a specific sender' action instead. Only verified Senders can be used to send emails. A Sender becomes locked when associated with an active campaign." }, { "slug": "SENDGRID_VIEW_SCHEDULED_TIME_OF_A_CAMPAIGN", "name": "View scheduled time of a campaign", "description": "Retrieves the scheduled send date and time for a Legacy Marketing Campaign. Use this endpoint to check when a campaign is scheduled to be sent. Note: This endpoint is part of the Legacy Marketing Campaigns API. For newer implementations, consider using the Single Sends API. The campaign must be scheduled (not in draft or already sent status) for this endpoint to return schedule data. Returns a 404 error if the campaign is not found or not scheduled." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sendgrid_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your SendGrid API key — a long token starting with 'SG.'. Create one under Settings → API Keys (choose Full Access) and copy it right away; it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "junglescout", "name": "Jungle Scout", "logo": "https://logos.composio.dev/api/junglescout", "description": "Jungle Scout assists Amazon sellers with product research, sales estimates, and competitive insights to optimize inventory, pricing, and listing strategies", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "JUNGLESCOUT_KEYWORD_HISTORICAL_VOLUME", "name": "Retrieve historical search volume data for a keyword", "description": "Fetches the historical search volume data for a specified keyword over a given time period." }, { "slug": "JUNGLESCOUT_QUERY_THE_PRODUCT_DATABASE", "name": "Query the product database", "description": "Queries the Jungle Scout product database to retrieve product data based on various filters. Compatible parameters include marketplace, sort, page_size, product_tiers, seller_types, categories, exclude_top_brands, exclude_unavailable_products, min_price, max_price, min_net, max_net, min_rank, max_rank, min_sales, max_sales, min_revenue, max_revenue, min_reviews, max_reviews, min_rating, max_rating, min_weight, max_weight, min_sellers, max_sellers, min_lqs, max_lqs, min_updated_at, and max_updated_at." }, { "slug": "JUNGLESCOUT_RETRIEVE_DATA_FOR_A_SPECIFIC_KEYWORD_QUERY", "name": "Retrieve data for a specific keyword query", "description": "Returns data based on a specific keyword query, including search volume and competition." }, { "slug": "JUNGLESCOUT_RETRIEVE_KEYWORD_DATA_FOR_SPECIFIED_ASINS", "name": "Retrieve keyword data for specified asins", "description": "Returns keywords for which the queried ASIN(s) appear in Amazon search results. For a given keyword, Jungle Scout collects up to 3 pages of Amazon keyword search results. Query up to 10 ASINs at a time. Apply filters to narrow search results." }, { "slug": "JUNGLESCOUT_RETRIEVE_SALES_ESTIMATES_DATA", "name": "Retrieve sales estimates data", "description": "Fetches sales estimates data for specified parameters." }, { "slug": "JUNGLESCOUT_RETRIEVE_SHARE_OF_VOICE_DATA", "name": "Retrieve share of voice data", "description": "Fetches share of voice data for specified keywords." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "junglescout_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key for authenticating requests to Jungle Scout API. For more information, visit https://developer.junglescout.com/api.", "required": true, "default": null }, { "name": "api_key_prefix", "displayName": "KEY Name", "type": "string", "description": "Name of KEY", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pipedrive", "name": "Pipedrive", "logo": "https://logos.composio.dev/api/pipedrive", "description": "Pipedrive is a sales management tool built around pipeline visualization, lead tracking, activity reminders, and automation to keep deals progressing", "category": "crm", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 402, "triggerCount": 3, "version": "20260703_00", "tools": [ { "slug": "PIPEDRIVE_ADD_ACTIVITY_TYPE", "name": "Add new activity type", "description": "Adds a new activity type." }, { "slug": "PIPEDRIVE_ADD_A_DEAL", "name": "Add a deal", "description": "Add a new deal to Pipedrive with any custom fields, which vary by account and are identified by long hash keys. Check dealFields for existing custom fields. For details, visit the tutorial on adding a deal." }, { "slug": "PIPEDRIVE_ADD_AN_ACTIVITY", "name": "Add an activity", "description": "New activity added. Response includes `more_activities_scheduled_in_context` to show if more are planned with the same entity. See tutorial on adding activities [here](https://pipedrive.readme.io/docs/adding-an-activity)." }, { "slug": "PIPEDRIVE_ADD_AN_ORGANIZATION", "name": "Add an organization", "description": "Creates a new organization in Pipedrive. The 'name' parameter is required and represents the organization's name (e.g., 'Acme Corp'). Optionally specify 'owner_id' to assign an owner and 'visible_to' for visibility settings. Custom fields can also be added using field keys from organizationFields." }, { "slug": "PIPEDRIVE_ADD_A_NOTE", "name": "Add a note (Deprecated)", "description": "DEPRECATED: Use PIPEDRIVE_PIPEDRIVE_ADD_NOTE instead. Add a note to a deal, person, organization, lead, or project in Pipedrive. At least one of deal_id, person_id, org_id, lead_id, or project_id must be provided." }, { "slug": "PIPEDRIVE_ADD_A_PERSON", "name": "Add a person", "description": "Add a new contact in Pipedrive with optional custom fields unique to each account found using the `personFields` endpoint. The endpoint also handles `data.marketing_status` for Campaigns product users." }, { "slug": "PIPEDRIVE_ADD_CALL_LOG", "name": "Add a call log", "description": "Adds a new call log." }, { "slug": "PIPEDRIVE_ADD_CALL_LOG_AUDIO_FILE", "name": "Add Call Log Audio File", "description": "Tool to attach an audio recording to an existing call log in Pipedrive. Use when you need to add audio evidence to a call log. Only one recording per call log is allowed." }, { "slug": "PIPEDRIVE_ADD_CHANNEL", "name": "Add a channel", "description": "New messaging channel added; registration limited to admins. Utilizes getConversations endpoint for data retrieval. Requires Messengers integration OAuth scope and a prepared Messaging app extension manifest." }, { "slug": "PIPEDRIVE_ADD_DEAL_DISCOUNT", "name": "Add discount to deal", "description": "Tool to add a discount to a deal in Pipedrive. Use when you need to apply a percentage-based or fixed amount discount to an existing deal." }, { "slug": "PIPEDRIVE_ADD_DEAL_FIELD", "name": "Add a new deal field", "description": "Adds a new deal field. For more information, see the tutorial for adding a new custom field." }, { "slug": "PIPEDRIVE_ADD_DEALFIELDS_OPTIONS", "name": "Add deal field options", "description": "Tool to add new options to a deal custom field atomically. Use when you need to add options to enum or set type deal fields." }, { "slug": "PIPEDRIVE_ADD_DEAL_FOLLOWER", "name": "Add a follower to a deal", "description": "Adds a follower to a deal." }, { "slug": "PIPEDRIVE_ADD_DEAL_PARTICIPANT", "name": "Add a participant to a deal", "description": "Adds a participant to a deal." }, { "slug": "PIPEDRIVE_ADD_DEAL_PRODUCT", "name": "Add product to deal", "description": "Tool to add a product to a deal in Pipedrive. Use when you need to attach a product to an existing deal with custom pricing, quantity, duration, discount, and tax settings." }, { "slug": "PIPEDRIVE_ADD_DEAL_PRODUCTS", "name": "Bulk add products to deal", "description": "Tool to bulk add products to a Pipedrive deal. Use when attaching multiple products simultaneously, with maximum 100 products per request." }, { "slug": "PIPEDRIVE_ADD_FILE", "name": "Add file", "description": "Upload and link files to deals, people, organizations, activities, products, or leads in Pipedrive. See the \"adding a file\" tutorial for details." }, { "slug": "PIPEDRIVE_ADD_FILTER", "name": "Add a new filter", "description": "New filter creation returns an ID. Only one primary condition group with 'AND' and two secondary groups (one 'AND', one 'OR') are supported. Future syntax expansion possible. See tutorial for details." }, { "slug": "PIPEDRIVE_ADD_GOAL", "name": "Add a new goal", "description": "Adds a new goal. Along with adding a new goal, a report is created to track the progress of your goal." }, { "slug": "PIPEDRIVE_ADD_INCOMING_MESSAGE", "name": "Receives an incoming message", "description": "Adds a message to a conversation. To use the endpoint, you need to have **Messengers integration** OAuth scope enabled and the Messaging manifest ready for the [Messaging app extension](https://pipedrive.readme.io/docs/messaging-app-extension)." }, { "slug": "PIPEDRIVE_ADD_INSTALLMENT_SUBSCRIPTION", "name": "Add an installment subscription", "description": "Adds a new installment subscription. Note: Subscriptions endpoints may not be available on the company-specific base URL. To avoid 404s, this action overrides the default request behavior and uses the public API host (api.pipedrive.com) explicitly." }, { "slug": "PIPEDRIVE_ADD_LEAD", "name": "Add a lead", "description": "Pipedrive API lets you add leads linked to people or organizations and tags them with 'API' source. Custom fields from deals apply to leads and appear in responses if set. Details are in the tutorials for adding and updating leads." }, { "slug": "PIPEDRIVE_ADD_LEAD_LABEL", "name": "Add a lead label", "description": "Creates a lead label." }, { "slug": "PIPEDRIVE_ADD_NOTE", "name": "Add Note", "description": "Tool to add a note to a deal, person, organization, lead, or project in Pipedrive. Use when you need to create a note attached to an entity. At least one entity ID (lead_id, deal_id, person_id, org_id, or project_id) must be provided." }, { "slug": "PIPEDRIVE_ADD_NOTE_COMMENT", "name": "Add comment to note", "description": "Tool to add a comment to an existing note in Pipedrive. Use when you need to add commentary or updates to notes linked to deals, persons, or organizations." }, { "slug": "PIPEDRIVE_ADD_ORGANIZATION_FIELD", "name": "Add a new organization field", "description": "Adds a new organization field. For more information, see the tutorial for adding a new custom field." }, { "slug": "PIPEDRIVE_ADD_ORGANIZATION_FIELD_OPTIONS", "name": "Add Organization Field Options", "description": "Tool to add new options to an organization field in Pipedrive. Use when you need to add new choices to enum or set type organization fields. This is an atomic operation where all options are added or none." }, { "slug": "PIPEDRIVE_ADD_ORGANIZATION_FOLLOWER", "name": "Add organization follower", "description": "Tool to add a follower to an organization in Pipedrive. Use when you need to create a follower relationship between a user and an organization entity." }, { "slug": "PIPEDRIVE_ADD_OR_UPDATE_ROLE_SETTING", "name": "Add or update role setting", "description": "Adds or updates the visibility setting for a role. Notes: - Roles endpoints require the `admin` OAuth scope. - OAuth calls must target the company domain with `/api/v1` path, e.g., https://{COMPANY}.pipedrive.com/api/v1/roles/{id}/settings - This action normalizes the base URL accordingly." }, { "slug": "PIPEDRIVE_ADD_PERSON_FIELD", "name": "Add a new person field", "description": "Adds a new person field. For more information, see the tutorial for adding a new custom field." }, { "slug": "PIPEDRIVE_ADD_PERSONFIELDS_OPTIONS", "name": "Add person field options", "description": "Tool to bulk add options to enum/set person fields atomically. Use when you need to add new options to a person field." }, { "slug": "PIPEDRIVE_ADD_PERSON_FOLLOWER", "name": "Add a follower to a person", "description": "Tool to add a follower to a person in Pipedrive. Use when you need to create a follower relationship between a user and a person entity." }, { "slug": "PIPEDRIVE_ADD_PERSON_PICTURE", "name": "Add person picture", "description": "This service allows adding a photo to a person's profile, replacing any existing one. Images must be square with a minimum size of 128 pixels and in GIF, JPG, or PNG formats. They will be resized to 128 and 512 pixels." }, { "slug": "PIPEDRIVE_ADD_PIPELINE", "name": "Add a new pipeline", "description": "Adds a new pipeline (v2)." }, { "slug": "PIPEDRIVE_ADD_PRODUCT", "name": "Add a product", "description": "Adds a new product to the Products inventory. For more information, see the tutorial for adding a product." }, { "slug": "PIPEDRIVE_ADD_PRODUCT_FIELD", "name": "Add a new product field", "description": "Adds a new product field. For more information, see the tutorial for adding a new custom field." }, { "slug": "PIPEDRIVE_ADD_PRODUCTFIELDS_OPTIONS", "name": "Add product field options", "description": "Tool to add new options to a product custom field that supports options (enum or set field types). Use when you need to expand the available choices for a product field. This operation is atomic - all options are added or none are added." }, { "slug": "PIPEDRIVE_ADD_PRODUCT_FOLLOWER", "name": "Add follower to product", "description": "Tool to add a follower to a product in Pipedrive. Use when you need to have a user follow a specific product for updates and notifications." }, { "slug": "PIPEDRIVE_ADD_PRODUCT_IMAGE", "name": "Add Product Image", "description": "Tool to upload an image for a product in Pipedrive. Use when you need to add a visual representation to a product." }, { "slug": "PIPEDRIVE_ADD_PRODUCT_VARIATION", "name": "Create product variation", "description": "Tool to create a new product variation for an existing product. Use when you need to add a variation with customizable name and prices in multiple currencies." }, { "slug": "PIPEDRIVE_ADD_PROJECT", "name": "Add a project", "description": "Adds a new project. Note that you can supply additional custom fields along with the request that are not described here. These custom fields are different for each Pipedrive account and can be recognized by long hashes as keys." }, { "slug": "PIPEDRIVE_ADD_RECURRING_SUBSCRIPTION", "name": "Add a recurring subscription", "description": "Adds a new recurring subscription." }, { "slug": "PIPEDRIVE_ADD_ROLE", "name": "Add a role", "description": "Adds a new role. Note: - Roles endpoints require the `admin` scope. - For OAuth tokens, Pipedrive expects the company domain base URL with `/api/v1` path. Example: https://{COMPANY}.pipedrive.com/api/v1/roles - This action normalizes the base_url provided by metadata to ensure `/api/v1` is used." }, { "slug": "PIPEDRIVE_ADD_ROLE_ASSIGNMENT", "name": "Add role assignment", "description": "Assigns a user to a role. Notes: - Roles endpoints require the `admin` OAuth scope. - OAuth calls must target the company domain with `/api/v1` path, e.g., https://{COMPANY}.pipedrive.com/api/v1/roles/{id}/assignments - This action normalizes the base URL accordingly and ensures JSON body is sent." }, { "slug": "PIPEDRIVE_ADD_STAGE", "name": "Add a new stage", "description": "Adds a new stage, returns the ID upon success." }, { "slug": "PIPEDRIVE_ADD_TASK", "name": "Add a task", "description": "Adds a new task." }, { "slug": "PIPEDRIVE_ADD_TEAM", "name": "Add a new team", "description": "Adds a new team to the company and returns the created object." }, { "slug": "PIPEDRIVE_ADD_TEAM_USERS", "name": "Add users to a team", "description": "Adds users to an existing team." }, { "slug": "PIPEDRIVE_ADD_USER", "name": "Add a new user", "description": "Adds a new user to the company, returns the ID upon success." }, { "slug": "PIPEDRIVE_ARCHIVE_PROJECT", "name": "Archive a project", "description": "Archives a project." }, { "slug": "PIPEDRIVE_CANCEL_RECURRING_SUBSCRIPTION", "name": "Cancel a recurring subscription", "description": "Cancels a recurring subscription. This action attempts to cancel a recurring subscription via Subscriptions API. If Subscriptions endpoints are unavailable (404), it gracefully falls back to disabling all product attachments on the given deal (interpreting `id` as `deal_id`) to mimic cancellation behavior." }, { "slug": "PIPEDRIVE_CONVERT_DEAL_TO_LEAD", "name": "Convert deal to lead", "description": "Tool to convert a Pipedrive deal to a lead asynchronously. Use when you need to move a deal back to the lead stage, transferring related entities like notes, files, emails, and activities. Requires global admin or 'Convert deals to leads' permission." }, { "slug": "PIPEDRIVE_CONVERT_LEAD_TO_DEAL", "name": "Convert Lead to Deal", "description": "Tool to convert a Pipedrive lead to a deal asynchronously. Use when you need to convert an existing lead into a deal. The conversion transfers all related entities (notes, files, emails, activities) to the new deal. Upon successful conversion, the lead is marked as deleted. Use the returned conversion_id to check the conversion status." }, { "slug": "PIPEDRIVE_CREATE_ORGANIZATION_RELATIONSHIP", "name": "Create an organization relationship", "description": "Creates and returns an organization relationship." }, { "slug": "PIPEDRIVE_CREATE_REMOTE_FILE_LINK", "name": "Create a remote file and link it to an item", "description": "Creates an empty file on Google Drive linked to an item. For details, refer to the Pipedrive remote file adding tutorial." }, { "slug": "PIPEDRIVE_CREATE_WEBHOOK", "name": "Create a new webhook", "description": "Creates and returns details of a new Webhook. Trigger events combine `event_action` and `event_object`, like `*.*` for all events or `added.deal`, `deleted.persons` for specific actions. More info in the Webhooks guide." }, { "slug": "PIPEDRIVE_CTIVITYIELDS_GET_ALL_ACTIVITYFIELDS", "name": "Get all ActivityFields", "description": "Tool to retrieve metadata about all activity fields in the company. Use when you need to get information about field structure, types, options, and properties for activities." }, { "slug": "PIPEDRIVE_DEALS_UPDATE_DEAL", "name": "Update deal product", "description": "Tool to update product details attached to a deal in Pipedrive using the v2 API. Use when you need to modify product attributes like price, quantity, discount, or tax for a deal-product attachment." }, { "slug": "PIPEDRIVE_DELETE_ACTIVITIES_BULK", "name": "Delete multiple activities in bulk", "description": "Marks multiple activities as deleted. After 30 days, the activities will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_ACTIVITY", "name": "Delete Activity", "description": "Tool to delete an activity in Pipedrive. Use when you need to remove an activity. This is a soft delete operation - the activity will be permanently deleted after 30 days." }, { "slug": "PIPEDRIVE_DELETE_ACTIVITY_TYPE", "name": "Delete Activity Type", "description": "Tool to delete an activity type in Pipedrive. Use when you need to remove an activity type from the system. The activity type will be marked as deleted (active_flag set to false) rather than permanently removed." }, { "slug": "PIPEDRIVE_DELETE_ACTIVITY_TYPES_BULK", "name": "Delete multiple activity types in bulk", "description": "Marks multiple activity types as deleted." }, { "slug": "PIPEDRIVE_DELETE_AN_ACTIVITY", "name": "Delete an activity", "description": "Marks an activity as deleted. After 30 days, the activity will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_A_PERSON", "name": "Delete a person", "description": "Marks a person as deleted. After 30 days, the person will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_A_PERSON_FIELD", "name": "Delete a person field", "description": "Marks a field as deleted. For more information, see the tutorial for deleting a custom field." }, { "slug": "PIPEDRIVE_DELETE_A_STAGE", "name": "Delete a stage", "description": "Marks a stage as deleted. Uses the company-domain v2 endpoint." }, { "slug": "PIPEDRIVE_DELETE_CALL_LOG", "name": "Delete a call log", "description": "Deletes a call log. If there is an audio recording attached to it, it will also be deleted. The related activity will not be removed by this request. If you want to remove the related activities, please use the endpoint which is specific for activities." }, { "slug": "PIPEDRIVE_DELETE_CHANNEL", "name": "Delete a channel", "description": "The endpoint removes a messenger channel along with conversations and messages. Requires Messengers integration OAuth and Messaging app extension manifest." }, { "slug": "PIPEDRIVE_DELETE_COMMENT", "name": "Delete comment from note", "description": "Tool to delete a comment from a note in Pipedrive. Use when you need to remove a specific comment that was previously added to a note. Users can only delete comments they created or if they have admin privileges." }, { "slug": "PIPEDRIVE_DELETE_CONVERSATION", "name": "Delete a conversation", "description": "Deletes an existing conversation. To use the endpoint, you need to have **Messengers integration** OAuth scope enabled and the Messaging manifest ready for the [Messaging app extension](https://pipedrive.readme.io/docs/messaging-app-extension)." }, { "slug": "PIPEDRIVE_DELETE_DEAL", "name": "Delete Deal", "description": "Tool to delete a deal in Pipedrive. Use when you need to remove a deal. This is a soft delete operation - the deal will be permanently deleted after 30 days." }, { "slug": "PIPEDRIVE_DELETE_DEAL_DISCOUNT", "name": "Delete Deal Discount", "description": "Tool to delete a discount from a deal in Pipedrive. Use when you need to remove a discount that was previously applied to a deal." }, { "slug": "PIPEDRIVE_DELETE_DEAL_FIELD", "name": "Delete a deal field", "description": "Tool to delete a deal field in Pipedrive by marking it as deleted. Use when you need to remove a custom deal field." }, { "slug": "PIPEDRIVE_DELETE_DEAL_FIELD_OPTIONS", "name": "Delete deal field options", "description": "Tool to remove existing options from a deal custom field atomically. Use when you need to delete options from a deal field." }, { "slug": "PIPEDRIVE_DELETE_DEAL_FIELDS_BULK", "name": "Delete multiple deal fields in bulk", "description": "Marks multiple deal fields as deleted." }, { "slug": "PIPEDRIVE_DELETE_DEAL_FOLLOWER", "name": "Delete deal follower", "description": "Tool to delete a follower from a deal in Pipedrive. Use when you need to remove a user from a deal's follower list." }, { "slug": "PIPEDRIVE_DELETE_DEAL_PARTICIPANT", "name": "Delete a participant from a deal", "description": "Deletes a participant from a deal." }, { "slug": "PIPEDRIVE_DELETE_DEAL_PRODUCT", "name": "Delete Deal Product", "description": "Tool to delete an attached product from a deal in Pipedrive. Use when you need to remove a product that was previously attached to a deal. Note: It is not possible to delete the attached product if the deal has installments associated with it." }, { "slug": "PIPEDRIVE_DELETE_DEAL_PRODUCTS", "name": "Delete Deals Products", "description": "Tool to delete multiple products from a deal in Pipedrive. Use when you need to remove specific products or all products from a deal. Maximum 100 products can be deleted per request." }, { "slug": "PIPEDRIVE_DELETE_DEALS_BULK", "name": "Delete multiple deals in bulk", "description": "Marks multiple deals as deleted. After 30 days, the deals will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_FILE", "name": "Delete a file", "description": "Tool to delete a file in Pipedrive. Use when you need to remove a file from the system. The file is marked as deleted immediately but will be permanently deleted after 30 days." }, { "slug": "PIPEDRIVE_DELETE_FILTER", "name": "Delete Pipedrive Filter", "description": "Tool to delete a filter in Pipedrive. Use when you need to remove a specific filter by its ID." }, { "slug": "PIPEDRIVE_DELETE_FILTERS_BULK", "name": "Delete multiple filters in bulk", "description": "Marks multiple filters as deleted." }, { "slug": "PIPEDRIVE_DELETE_GOAL", "name": "Delete existing goal", "description": "Marks a goal as deleted. Notes: - Pipedrive Goals endpoints for OAuth live under `{companydomain}/api/v1`. The default base_url is usually `{companydomain}/v1`, which would yield 404. We therefore normalize the base URL to `/api/v1` before issuing the DELETE." }, { "slug": "PIPEDRIVE_DELETE_LEAD", "name": "Delete a lead", "description": "Deletes a specific lead." }, { "slug": "PIPEDRIVE_DELETE_LEAD_LABEL", "name": "Delete lead label", "description": "Tool to delete a specific lead label from Pipedrive. Use when you need to remove a lead label using its UUID identifier." }, { "slug": "PIPEDRIVE_DELETE_MAIL_THREAD", "name": "Delete mail thread", "description": "Marks a mail thread as deleted." }, { "slug": "PIPEDRIVE_DELETE_MULTIPLE_PRODUCT_FIELDS", "name": "Delete multiple product fields in bulk", "description": "Marks multiple fields as deleted." }, { "slug": "PIPEDRIVE_DELETE_MULTIPLE_STAGES", "name": "Delete multiple stages in bulk", "description": "Marks multiple stages as deleted (v1). Note: This endpoint may be deprecated; we keep compatibility and avoid raising to surface API errors in response." }, { "slug": "PIPEDRIVE_DELETE_NOTE", "name": "Delete a note", "description": "Deletes a specific note." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION", "name": "Delete an organization", "description": "Tool to delete an organization in Pipedrive. Use when you need to mark an organization as deleted. The organization will be permanently deleted after 30 days." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION_FIELD", "name": "Delete an organization field", "description": "Marks a field as deleted. For more information, see the tutorial for deleting a custom field." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION_FIELD_OPTIONS", "name": "Delete organization field options", "description": "Tool to delete specified options from an organization field in Pipedrive. Use when you need to remove one or more options from an organization field by field code. The operation is atomic: if any option ID does not exist, the entire request fails and no options are deleted." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION_FIELDS_BULK", "name": "Delete multiple organization fields in bulk", "description": "Marks multiple fields as deleted." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION_FOLLOWER", "name": "Delete organization follower", "description": "Tool to delete a follower from an organization in Pipedrive. Use when you need to remove a user from an organization's follower list." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATION_RELATIONSHIP", "name": "Delete an organization relationship", "description": "Deletes an organization relationship and returns the deleted ID." }, { "slug": "PIPEDRIVE_DELETE_ORGANIZATIONS_BULK", "name": "Delete multiple organizations in bulk", "description": "Marks multiple organizations as deleted. After 30 days, the organizations will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_PERSON", "name": "Delete a person", "description": "Tool to delete a person in Pipedrive. Use when you need to mark a person as deleted. The person will be permanently deleted after 30 days." }, { "slug": "PIPEDRIVE_DELETE_PERSON_FIELD", "name": "Delete a person field", "description": "Tool to delete a person field from Pipedrive. Use when you need to remove a custom person field by its unique identifier." }, { "slug": "PIPEDRIVE_DELETE_PERSON_FIELD_OPTIONS", "name": "Delete person field options", "description": "Tool to remove existing options from a person custom field atomically. Use when you need to delete options from a person field." }, { "slug": "PIPEDRIVE_DELETE_PERSON_FIELDS_BULK", "name": "Delete multiple person fields in bulk", "description": "Marks multiple fields as deleted." }, { "slug": "PIPEDRIVE_DELETE_PERSON_FOLLOWER", "name": "Delete a follower from a person", "description": "Deletes a follower from a person." }, { "slug": "PIPEDRIVE_DELETE_PERSON_PICTURE", "name": "Delete person picture", "description": "Deletes a person’s picture. Note: Pipedrive may return a 400 with error \"Item not found\" when the person has no picture set. Since delete is idempotent, we treat this specific case as a successful no-op and return a normalized response rather than raising." }, { "slug": "PIPEDRIVE_DELETE_PERSONS_BULK", "name": "Delete multiple persons in bulk", "description": "Marks multiple persons as deleted. After 30 days, the persons will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_PIPELINE", "name": "Delete a pipeline", "description": "Marks a pipeline as deleted." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT", "name": "Delete a product", "description": "Marks a product as deleted. After 30 days, the product will be permanently deleted." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT_FIELD", "name": "Delete a product field", "description": "Marks a product field as deleted. For more information, see the tutorial for deleting a custom field." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT_FIELD_OPTIONS", "name": "Delete product field options", "description": "Tool to remove existing options from a product custom field atomically. Use when you need to delete options from a product field." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT_FOLLOWER", "name": "Delete a follower from a product", "description": "Deletes a follower from a product." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT_IMAGE", "name": "Delete Product Image", "description": "Tool to delete an image from a product in Pipedrive. Use when you need to remove a product image." }, { "slug": "PIPEDRIVE_DELETE_PRODUCT_VARIATION", "name": "Delete Product Variation", "description": "Tool to delete a product variation from a product in Pipedrive. Use when you need to remove a specific variation from a product." }, { "slug": "PIPEDRIVE_DELETE_PROJECT", "name": "Delete a project", "description": "Marks a project as deleted." }, { "slug": "PIPEDRIVE_DELETE_ROLE", "name": "Delete a role", "description": "Marks a role as deleted. Note: This endpoint requires admin permissions. The API token must have the 'admin' scope to delete roles. The default role (ID=1) cannot be deleted." }, { "slug": "PIPEDRIVE_DELETE_ROLE_ASSIGNMENT", "name": "Delete a role assignment", "description": "Removes the assigned user from a role and adds to the default role." }, { "slug": "PIPEDRIVE_DELETE_STAGE", "name": "Delete a stage", "description": "Tool to delete a stage in Pipedrive. Use when you need to mark a stage as deleted." }, { "slug": "PIPEDRIVE_DELETE_SUBSCRIPTION", "name": "Delete a subscription", "description": "Marks an installment or a recurring subscription as deleted." }, { "slug": "PIPEDRIVE_DELETE_TASK", "name": "Delete a task", "description": "Marks a task as deleted. If the task has subtasks then those will also be deleted." }, { "slug": "PIPEDRIVE_DELETE_TEAM_USERS", "name": "Delete users from a team", "description": "Deletes users from an existing team." }, { "slug": "PIPEDRIVE_DELETE_WEBHOOK", "name": "Delete existing webhook", "description": "Deletes the specified Webhook." }, { "slug": "PIPEDRIVE_DOWNLOAD_FILE", "name": "Download one file", "description": "Initializes a file download." }, { "slug": "PIPEDRIVE_DUPLICATE_DEAL", "name": "Duplicate deal", "description": "Duplicates a deal." }, { "slug": "PIPEDRIVE_DUPLICATE_PRODUCT", "name": "Duplicate Product", "description": "Tool to duplicate a specific product in Pipedrive. Use when you need to create a copy of an existing product with all its properties and pricing information." }, { "slug": "PIPEDRIVE_ENUMERATE_ACCESSIBLE_USERS_FOR_LEAD", "name": "Enumerate accessible users for lead", "description": "Lists the users permitted to access a lead." }, { "slug": "PIPEDRIVE_FIND_GOALS", "name": "Find goals", "description": "Query goal data by appending `{searchField}={searchValue}` to the URL with dot-notation fields and values. Include `is_active` to filter by goal status and specify both `period.start` and `period.end` for time-based searches." }, { "slug": "PIPEDRIVE_FIND_USERS_BY_NAME", "name": "Find users by name", "description": "Finds users by their name." }, { "slug": "PIPEDRIVE_GET_ACTIVITY", "name": "Get details of an activity", "description": "Returns the details of a specific activity." }, { "slug": "PIPEDRIVE_GET_ACTIVITY_FIELD", "name": "Get one activity field", "description": "Tool to retrieve detailed metadata for a specific activity field by its field code. Use when you need information about field structure, type, options, or properties." }, { "slug": "PIPEDRIVE_GET_ALL_ACTIVITIES_ASSIGNED_TO_A_PARTICULAR_USER", "name": "Get all activities assigned to a particular user", "description": "Returns all activities assigned to a particular user." }, { "slug": "PIPEDRIVE_GET_ALL_ACTIVITIES_BETA", "name": "Get all activities beta", "description": "This BETA cursor-paginated endpoint returns all activities, accessible only to global admins, not regular users who get a 403 error. Refer to Pipedrive's documentation for pagination and global permissions." }, { "slug": "PIPEDRIVE_GET_ALL_ACTIVITY_FIELDS", "name": "Get all activity fields", "description": "Returns all activity fields." }, { "slug": "PIPEDRIVE_GET_ALL_ACTIVITY_TYPES", "name": "Get all activity types", "description": "Returns all activity types." }, { "slug": "PIPEDRIVE_GET_ALL_DEAL_FIELDS", "name": "Get all deal fields", "description": "Returns data about all deal fields." }, { "slug": "PIPEDRIVE_GET_ALL_DEALS", "name": "Get all deals", "description": "Returns all deals. For more information, see the tutorial for getting all deals." }, { "slug": "PIPEDRIVE_GET_ALL_DEALS_BETA", "name": "Get all deals beta", "description": "This endpoint returns all deals with cursor pagination (in BETA). Only global admins can access it; others get a 403 error. More info on pagination and permissions is available online." }, { "slug": "PIPEDRIVE_GET_ALL_FILES", "name": "Get all files", "description": "Returns data about all files." }, { "slug": "PIPEDRIVE_GET_ALL_FILTER_HELPERS", "name": "Get all filter helpers", "description": "The text provides links to documentation for adding or updating filters, and information on all supported filter helpers in an API. It encourages consulting a tutorial for more details on adding a filter." }, { "slug": "PIPEDRIVE_GET_ALL_FILTERS", "name": "Get all filters", "description": "Returns data about all filters." }, { "slug": "PIPEDRIVE_GET_ALL_LEAD_LABELS", "name": "Get all lead labels", "description": "Returns details of all lead labels. This endpoint does not support pagination and all labels are always returned." }, { "slug": "PIPEDRIVE_GET_ALL_LEADS", "name": "Get all leads", "description": "The API returns sorted leads by creation time, supporting pagination via `limit` and `start`. Custom field values are included if set, mimicking the `Deals` endpoint structure; unset fields are omitted. Leads share custom fields with deals." }, { "slug": "PIPEDRIVE_GET_ALL_LEAD_SOURCES", "name": "Get all lead sources", "description": "Returns all lead sources. Please note that the list of lead sources is fixed, it cannot be modified. All leads created through the Pipedrive API will have a lead source `API` assigned." }, { "slug": "PIPEDRIVE_GET_ALL_NOTE_FIELDS", "name": "Get all note fields", "description": "Returns data about all note fields." }, { "slug": "PIPEDRIVE_GET_ALL_NOTES", "name": "Get all notes", "description": "Returns all notes." }, { "slug": "PIPEDRIVE_GET_ALL_ORGANIZATION_FIELDS", "name": "Get all organization fields", "description": "Returns data about all organization fields." }, { "slug": "PIPEDRIVE_GET_ALL_ORGANIZATIONS", "name": "Get all organizations", "description": "Returns all organizations." }, { "slug": "PIPEDRIVE_GET_ALL_ORGANIZATIONS_BETA", "name": "Get all organizations beta", "description": "This BETA API endpoint lists all organizations with cursor pagination. Only global admins have access; others get a 403 error. See docs for pagination and global permissions." }, { "slug": "PIPEDRIVE_GET_ALL_PERMISSION_SETS", "name": "Get all permission sets", "description": "Returns data about all permission sets." }, { "slug": "PIPEDRIVE_GET_ALL_PERSON_FIELDS", "name": "Get all person fields", "description": "Returns data about all person fields.
If a company uses the [Campaigns product](https://pipedrive.readme.io/docs/campaigns-in-pipedrive-api), then this endpoint will also return the `data.marketing_status` field." }, { "slug": "PIPEDRIVE_GET_ALL_PERSONS", "name": "Get all persons", "description": "Returns all persons." }, { "slug": "PIPEDRIVE_GET_ALL_PERSONS_BETA", "name": "Get all persons beta", "description": "This BETA endpoint returns all persons, using cursor pagination. Only global admins have access; others get a 403 error. Info on pagination and permissions is in the linked docs." }, { "slug": "PIPEDRIVE_GET_ALL_PIPELINES", "name": "Get all pipelines", "description": "Returns data about all pipelines. This action retrieves all pipelines from the user's Pipedrive instance using their instance-specific URL (e.g., https://company.pipedrive.com/api/v2/pipelines)." }, { "slug": "PIPEDRIVE_GET_ALL_PRODUCT_FIELDS", "name": "Get all product fields", "description": "Returns data about all product fields." }, { "slug": "PIPEDRIVE_GET_ALL_PRODUCTS", "name": "Get all products", "description": "Returns data about all products." }, { "slug": "PIPEDRIVE_GET_ALL_PROJECT_BOARDS", "name": "Get all project boards", "description": "Returns all projects boards that are not deleted. Note: The Projects feature requires the Projects add-on which is available on Power and Enterprise plans, or as a paid add-on for other plans. A 402 Payment Required error indicates the account does not have access to the Projects feature." }, { "slug": "PIPEDRIVE_GET_ALL_PROJECTS", "name": "Get all projects", "description": "Returns all projects. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination." }, { "slug": "PIPEDRIVE_GET_ALL_PROJECT_TEMPLATES", "name": "Get all project templates", "description": "The endpoint retrieves all non-deleted project templates with cursor-based pagination. Refer to the provided documentation link for more details on pagination. Note: This endpoint requires the Pipedrive Projects add-on to be enabled. Projects is included in Power and Enterprise plans, or can be purchased as an add-on for Professional plans or lower." }, { "slug": "PIPEDRIVE_GET_ALL_RELATIONSHIPS_FOR_ORGANIZATION", "name": "Get all relationships for organization", "description": "Gets all of the relationships for a supplied organization ID." }, { "slug": "PIPEDRIVE_GET_ALL_ROLES", "name": "Get all roles", "description": "Returns all the roles within the company. Note: - Roles endpoints require the `admin` scope. - For OAuth tokens, Pipedrive expects the company domain base URL with `/api/v1` path. Example: https://{COMPANY}.pipedrive.com/api/v1/roles - This action normalizes the base_url provided by metadata to ensure `/api/v1` is used." }, { "slug": "PIPEDRIVE_GET_ALL_STAGES", "name": "Get all stages", "description": "Returns data about all stages." }, { "slug": "PIPEDRIVE_GET_ALL_SUPPORTED_CURRENCIES", "name": "Get all supported currencies", "description": "Returns all supported currencies in given account which should be used when saving monetary values with other objects. The `code` parameter of the returning objects is the currency code according to ISO 4217 for all non-custom currencies." }, { "slug": "PIPEDRIVE_GET_ALL_TASKS", "name": "Get all tasks", "description": "Returns all tasks. This is a cursor-paginated endpoint. For more information, please refer to our documentation on pagination." }, { "slug": "PIPEDRIVE_GET_ALL_TEAMS", "name": "Get all teams", "description": "Returns data about teams within the company." }, { "slug": "PIPEDRIVE_GET_ALL_TEAMS_OF_A_USER", "name": "Get all teams of a user", "description": "Returns data about all teams which have the specified user as a member." }, { "slug": "PIPEDRIVE_GET_ALL_USER_CONNECTIONS", "name": "Get all user connections", "description": "Returns data about all connections for the authorized user." }, { "slug": "PIPEDRIVE_GET_ALL_USERS", "name": "Get all users", "description": "Returns data about all users within the company." }, { "slug": "PIPEDRIVE_GET_ALL_USERS_IN_A_TEAM", "name": "Get all users in a team", "description": "Returns a list of all user IDs within a team." }, { "slug": "PIPEDRIVE_GET_ALL_WEBHOOKS", "name": "Get all webhooks", "description": "Returns data about all the Webhooks of a company." }, { "slug": "PIPEDRIVE_GET_ARCHIVED_DEALS", "name": "Get archived deals", "description": "Tool to get all archived deals from Pipedrive. Use when you need to retrieve deals that have been archived, with support for filtering and pagination." }, { "slug": "PIPEDRIVE_GET_ARCHIVED_LEADS", "name": "Get archived leads", "description": "Tool to get all archived leads from Pipedrive. Use when you need to retrieve leads that have been archived, with support for filtering by owner, person, organization, or custom filter, and pagination." }, { "slug": "PIPEDRIVE_GET_CALL_LOG", "name": "Get call log details", "description": "Tool to retrieve details of a specific call log by ID. Use when you need to get complete information about a call log including duration, outcome, participants, and timestamps." }, { "slug": "PIPEDRIVE_GET_COMMENT", "name": "Get one comment", "description": "Returns the details of a comment." }, { "slug": "PIPEDRIVE_GET_COMPANY_ADD_ONS", "name": "Get all add ons for a single company", "description": "Returns the add-ons for a single company." }, { "slug": "PIPEDRIVE_GET_CONVERSATIONS", "name": "Get conversations for a channel", "description": "Tool to retrieve messaging conversations. Use after channel registration to sync conversations." }, { "slug": "PIPEDRIVE_GET_CURRENT_USER_DATA", "name": "Get current user data", "description": "Returns data about an authorized user within the company with bound company data: company ID, company name, and domain. Note that the `locale` property means 'Date/number format' in the Pipedrive account settings, not the chosen language." }, { "slug": "PIPEDRIVE_GET_DEAL", "name": "Get Deal Details", "description": "Tool to get details of a specific deal in Pipedrive. Use when you need to retrieve comprehensive information about a deal by its ID." }, { "slug": "PIPEDRIVE_GET_DEAL_ACTIVITIES", "name": "Get deal activities (Deprecated)", "description": "DEPRECATED: Use PIPEDRIVE_PIPEDRIVE_ACTIVITIES_UPDATE_ACTIVITY or PIPEDRIVE_LIST_ACTIVITIES instead. Lists activities associated with a deal. Use when you need to retrieve all activities linked to a specific deal." }, { "slug": "PIPEDRIVE_GET_DEAL_CHANGELOG", "name": "Get Deal Changelog", "description": "Tool to list updates about deal field values. Use when you need to retrieve the changelog history showing all changes made to a specific deal's field values." }, { "slug": "PIPEDRIVE_GET_DEAL_FIELD", "name": "Get one deal field", "description": "Tool to retrieve a specific deal field by ID. Use when you need to get metadata and configuration for a deal field." }, { "slug": "PIPEDRIVE_GET_DEAL_FILES", "name": "Get Deal Files", "description": "Tool to list files attached to a deal. Use when you need to retrieve all files associated with a specific deal in Pipedrive." }, { "slug": "PIPEDRIVE_GET_DEAL_FOLLOWERS", "name": "Get deal followers", "description": "Lists users who are following the deal. Use when you need to retrieve all followers of a specific deal." }, { "slug": "PIPEDRIVE_GET_DEAL_FOLLOWERS_CHANGELOG", "name": "Get deal followers changelog", "description": "Tool to retrieve changelogs about users who have followed a deal. Use when you need to track follower activity, showing when users were added or removed as followers." }, { "slug": "PIPEDRIVE_GET_DEAL_MAIL_MESSAGES", "name": "Get Deal Mail Messages", "description": "Tool to list mail messages associated with a deal in Pipedrive. Use when you need to retrieve email communications linked to a specific deal. Note: This returns mail message snippets only; for full email content, use the thread_id and query mail threads separately." }, { "slug": "PIPEDRIVE_GET_DEAL_PARTICIPANTS", "name": "Get Deal Participants", "description": "Tool to list participants of a deal. Use when you need to retrieve all participants (persons) associated with a specific deal in Pipedrive." }, { "slug": "PIPEDRIVE_GET_DEAL_PARTICIPANTS_CHANGELOG", "name": "Get Deal Participants Changelog", "description": "Tool to list updates about participants of a deal. Use when you need to retrieve the changelog history showing all changes made to a specific deal's participants." }, { "slug": "PIPEDRIVE_GET_DEAL_PRODUCTS", "name": "Get Deal Products", "description": "Tool to list products attached to a deal. Use when you need to retrieve all products associated with a specific deal in Pipedrive." }, { "slug": "PIPEDRIVE_GET_DEALS_CONVERSION_RATES_IN_PIPELINE", "name": "Get deals conversion rates in pipeline", "description": "Returns all stage-to-stage conversion and pipeline-to-close rates for the given time period." }, { "slug": "PIPEDRIVE_GET_DEALS_CONVERT_STATUS", "name": "Get deal conversion status", "description": "Tool to retrieve the conversion status for a deal-to-lead conversion operation. Use when you need to check the progress or result of a deal conversion job." }, { "slug": "PIPEDRIVE_GET_DEALS_DISCOUNTS", "name": "Get deals discounts", "description": "Tool to retrieve discounts for a specific deal. Use when you need to list all discounts added to a deal in Pipedrive." }, { "slug": "PIPEDRIVE_GET_DEALS_IN_A_PIPELINE", "name": "Get deals in a pipeline", "description": "Lists deals in a specific pipeline across all its stages." }, { "slug": "PIPEDRIVE_GET_DEALS_IN_A_STAGE", "name": "Get deals in a stage", "description": "Lists deals in a specific stage." }, { "slug": "PIPEDRIVE_GET_DEALS_PRODUCTS", "name": "Get Deals Products", "description": "Tool to retrieve products attached to specified deals (max 100 deals per request). Use when you need to get all products associated with multiple deals." }, { "slug": "PIPEDRIVE_GET_DEALS_SUMMARY", "name": "Get deals summary", "description": "Returns a summary of all the deals." }, { "slug": "PIPEDRIVE_GET_DEALS_SUMMARY_ARCHIVED", "name": "Get archived deals summary", "description": "Tool to retrieve summary statistics for archived deals. Use when you need aggregated data about archived deals including total count, values, and weighted values grouped by currency." }, { "slug": "PIPEDRIVE_GET_DEALS_TIMELINE", "name": "Get deals timeline", "description": "Returns opened and won deals in time-based groups according to a specified dealField, with examples of deals grouped by month over a 3-month period starting January 2012." }, { "slug": "PIPEDRIVE_GET_DEAL_SUBSCRIPTION", "name": "Find subscription by deal", "description": "Returns details of an installment or a recurring subscription by the deal ID. Note: Subscriptions endpoints may not be available on company-specific hosts or may be deprecated. This action attempts multiple hosts and gracefully falls back to Installments (v2) or Deal Products (v1) to provide a useful response based on live API data." }, { "slug": "PIPEDRIVE_GET_DEALS_WITH_PRODUCT", "name": "Get deals where a product is attached to", "description": "Returns data about deals that have a product attached to it." }, { "slug": "PIPEDRIVE_GET_DEAL_UPDATES", "name": "Get deal updates", "description": "Lists updates about a deal in chronological order. Use when you need to track deal changes, monitor activity timeline, or audit deal modifications." }, { "slug": "PIPEDRIVE_GET_DEAL_USERS", "name": "Get Deal Permitted Users", "description": "Tool to list users permitted to access a deal. Use when you need to retrieve all users who have permission to access a specific deal in Pipedrive." }, { "slug": "PIPEDRIVE_GET_DETAILS_OF_AN_ORGANIZATION", "name": "Get details of an organization", "description": "Provides detailed information about an organization, including additional fields not shown when listing all organizations, and maps custom fields as long hashes to the 'key' value in organizationFields." }, { "slug": "PIPEDRIVE_GET_DETAILS_OF_A_PERSON", "name": "Get details of a person (Deprecated)", "description": "DEPRECATED: Use PIPEDRIVE_PIPEDRIVE_GET_PERSON instead. The text describes an API endpoint that returns detailed person information, including extra fields and custom fields as hashes. It also provides `data.marketing_status` if the Campaigns product is used." }, { "slug": "PIPEDRIVE_GET_FILE", "name": "Get one file", "description": "Returns data about a specific file." }, { "slug": "PIPEDRIVE_GET_FILTER", "name": "Get one filter", "description": "Returns data about a specific filter. Note that this also returns the condition lines of the filter." }, { "slug": "PIPEDRIVE_GET_GOAL_RESULT", "name": "Get result of a goal", "description": "Gets the progress of a goal for the specified period." }, { "slug": "PIPEDRIVE_GET_LEAD_CONVERSION_STATUS", "name": "Get lead conversion status by ID", "description": "Tool to retrieve the conversion status for a specific lead conversion job. Use when you need to check the progress of a lead-to-deal conversion including current state and resulting deal ID upon completion." }, { "slug": "PIPEDRIVE_GET_LEAD_FIELDS", "name": "Get all lead fields", "description": "Tool to retrieve all lead fields. Use when you need to get the schema for leads in a company's context." }, { "slug": "PIPEDRIVE_GET_LEAD_USERS", "name": "Get Lead Permitted Users", "description": "Tool to list users permitted to access a lead. Use when you need to retrieve all user IDs who have permission to access a specific lead in Pipedrive." }, { "slug": "PIPEDRIVE_GET_MAIL_MESSAGE", "name": "Get one mail message", "description": "Returns data about a specific mail message." }, { "slug": "PIPEDRIVE_GET_MAIL_THREAD", "name": "Get one mail thread", "description": "Returns a specific mail thread." }, { "slug": "PIPEDRIVE_GET_MAIL_THREAD_MESSAGES", "name": "Get all mail messages of mail thread", "description": "Returns all the mail messages inside a specified mail thread." }, { "slug": "PIPEDRIVE_GET_MAIL_THREADS", "name": "Get mail threads", "description": "Returns mail threads in a specified folder ordered by the most recent message within." }, { "slug": "PIPEDRIVE_GET_MARKETPLACE_CLIENT_ID", "name": "Get Marketplace Client ID", "description": "Tool to retrieve marketplace_client_id of an installed video integration. Use when you need the client ID for an installed integration." }, { "slug": "PIPEDRIVE_GET_NOTE", "name": "Get one note", "description": "Returns details about a specific note." }, { "slug": "PIPEDRIVE_GET_NOTE_COMMENTS", "name": "Get all comments for a note", "description": "Returns all comments associated with a note." }, { "slug": "PIPEDRIVE_GET_ONE_LEAD", "name": "Get one lead", "description": "API returns specific lead details with custom field values in the Deals format. Unset custom fields are omitted. Leads share custom fields with deals, not having a unique set." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION", "name": "Get Organization Details", "description": "Tool to get details of a specific organization in Pipedrive. Use when you need to retrieve comprehensive information about an organization by its ID." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_CHANGELOG", "name": "Get Organization Changelog", "description": "Tool to list updates about organization field values. Use when you need to retrieve the changelog history showing all changes made to a specific organization's field values." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_DEALS", "name": "Get organization deals", "description": "Lists deals associated with an organization. Use when you need to retrieve all deals linked to a specific organization with optional filtering and pagination." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_FIELD", "name": "Get one organization field", "description": "Tool to retrieve a specific organization field by ID. Use when you need to get metadata and configuration for an organization field." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_FILES", "name": "Get Organization Files", "description": "Tool to list files attached to an organization. Use when you need to retrieve all files associated with a specific organization in Pipedrive." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_FOLLOWERS", "name": "Get Organization Followers", "description": "Tool to list followers of an organization. Use when you need to retrieve all users who are following a specific organization in Pipedrive." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_FOLLOWERS_CHANGELOG", "name": "Get Organization Followers Changelog", "description": "Tool to list changelog about organization followers. Use when you need to retrieve the history of users who have followed or unfollowed a specific organization." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_MAIL_MESSAGES", "name": "Get Organization Mail Messages", "description": "Tool to list mail messages associated with an organization. Use when you need to retrieve all email correspondence linked to a specific organization in Pipedrive." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_PERSONS", "name": "Get Organization Persons", "description": "Tool to list persons associated with an organization. Use when you need to retrieve all persons linked to a specific organization in Pipedrive." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_RELATIONSHIP", "name": "Get one organization relationship", "description": "Finds and returns an organization relationship from its ID." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_UPDATES", "name": "Get Organization Updates", "description": "Tool to list updates about an organization including field value changes, activities, notes, files, and other related items. Use when you need to retrieve the activity flow and update history for a specific organization." }, { "slug": "PIPEDRIVE_GET_ORGANIZATION_USERS", "name": "Get organization permitted users", "description": "List users permitted to access an organization. Use when you need to retrieve all users who have been granted permission to view and interact with a specific organization record." }, { "slug": "PIPEDRIVE_GET_PERMISSION_SET", "name": "Get one permission set", "description": "Returns data about a specific permission set." }, { "slug": "PIPEDRIVE_GET_PERMISSION_SET_ASSIGNMENTS", "name": "Get Permission Set Assignments", "description": "Tool to list permission set assignments for a given permission set. Use when you need to retrieve all users assigned to a specific permission set." }, { "slug": "PIPEDRIVE_GET_PERSON", "name": "Get Person Details", "description": "Tool to get details of a specific person in Pipedrive. Use when you need to retrieve comprehensive information about a person by their ID." }, { "slug": "PIPEDRIVE_GET_PERSON_CHANGELOG", "name": "Get Person Changelog", "description": "Tool to list updates about person field values. Use when you need to retrieve the changelog history showing all changes made to a specific person's field values." }, { "slug": "PIPEDRIVE_GET_PERSON_DEALS", "name": "Get person deals", "description": "Lists deals associated with a person. Use when you need to retrieve all deals linked to a specific person." }, { "slug": "PIPEDRIVE_GET_PERSON_FIELD", "name": "Get one person field", "description": "Tool to retrieve metadata for a specific person field by its ID. Use when you need to get field properties like name, type, order, and options." }, { "slug": "PIPEDRIVE_GET_PERSON_FILES", "name": "Get Person Files", "description": "Tool to list files attached to a person. Use when you need to retrieve all files associated with a specific person in Pipedrive." }, { "slug": "PIPEDRIVE_GET_PERSON_FOLLOWERS", "name": "Get Person Followers", "description": "Tool to list followers of a person in Pipedrive. Use when you need to retrieve all users who are following a specific person." }, { "slug": "PIPEDRIVE_GET_PERSON_FOLLOWERS_CHANGELOG", "name": "Get person followers changelog", "description": "Tool to retrieve changelogs about users who have followed a person. Use when you need to track follower activity, showing when users were added or removed as followers." }, { "slug": "PIPEDRIVE_GET_PERSON_MAIL_MESSAGES", "name": "Get Person Mail Messages", "description": "Tool to list mail messages associated with a person in Pipedrive. Use when you need to retrieve email communications linked to a specific person contact." }, { "slug": "PIPEDRIVE_GET_PERSON_PICTURE", "name": "Get Person Picture", "description": "Tool to get picture details of a specific person in Pipedrive. Use when you need to retrieve picture information and URLs for a person by their ID." }, { "slug": "PIPEDRIVE_GET_PERSON_PRODUCTS", "name": "Get Person Products", "description": "Tool to list products associated with a person. Use when you need to retrieve all products linked to a specific person in Pipedrive." }, { "slug": "PIPEDRIVE_GET_PERSON_UPDATES", "name": "Get person updates", "description": "Lists updates and activity history for a specific person in chronological order. Use when you need to track person changes, monitor activity timeline, or audit person modifications." }, { "slug": "PIPEDRIVE_GET_PERSON_USERS", "name": "Get Person Permitted Users", "description": "Tool to list users permitted to access a person. Use when you need to retrieve all users who have permission to access a specific person in Pipedrive." }, { "slug": "PIPEDRIVE_GET_PIPELINE", "name": "Get one pipeline", "description": "Returns data about a specific pipeline. Also returns the summary of the deals in this pipeline across its stages." }, { "slug": "PIPEDRIVE_GET_PIPELINE_CONVERSION_STATISTICS", "name": "Get Pipeline Conversion Statistics", "description": "Tool to get deals conversion rates in a pipeline for a given time period. Use when you need stage-to-stage conversion statistics, won conversion rates, or lost conversion rates for a specific pipeline." }, { "slug": "PIPEDRIVE_GET_PIPELINE_MOVEMENT_STATISTICS", "name": "Get Pipeline Movement Statistics", "description": "Tool to retrieve deal movement statistics within a pipeline for a specified time period. Use when you need to analyze pipeline performance metrics including new deals, won/lost deals, deals left open, and average age statistics." }, { "slug": "PIPEDRIVE_GET_PRODUCT", "name": "Get one product", "description": "Returns data about a specific product." }, { "slug": "PIPEDRIVE_GET_PRODUCT_DEALS", "name": "Get Product Deals", "description": "Tool to list deals associated with a product. Use when you need to retrieve deals that have a specific product attached to them." }, { "slug": "PIPEDRIVE_GET_PRODUCT_FIELD", "name": "Get one product field", "description": "Returns data about a specific product field." }, { "slug": "PIPEDRIVE_GET_PRODUCT_FILES", "name": "Get Product Files", "description": "Tool to list files attached to a product. Use when you need to retrieve all files associated with a specific product in Pipedrive." }, { "slug": "PIPEDRIVE_GET_PRODUCT_FOLLOWERS", "name": "Get product followers", "description": "Tool to list all followers of a product in Pipedrive. Use when you need to retrieve users following a specific product. Returns pagination metadata to handle large follower lists." }, { "slug": "PIPEDRIVE_GET_PRODUCT_FOLLOWERS_CHANGELOG", "name": "Get Product Followers Changelog", "description": "Tool to list changelog of followers for a product. Use when you need to retrieve the history of users who have followed or unfollowed a specific product." }, { "slug": "PIPEDRIVE_GET_PRODUCT_IMAGES", "name": "Get product images", "description": "Tool to retrieve image data for a specific product. Use when you need to get the public URL and metadata for a product's image. Note that public URLs have a limited lifetime of 7 days." }, { "slug": "PIPEDRIVE_GET_PRODUCT_USERS", "name": "List permitted users for product", "description": "Tool to list users permitted to access a product in Pipedrive. Use when you need to retrieve the list of users who have permission to view or manage a specific product." }, { "slug": "PIPEDRIVE_GET_PRODUCT_VARIATIONS", "name": "Get product variations", "description": "Tool to retrieve all product variations for a specific product with pagination support. Use when you need to get the complete list of variations available for a product, each with different prices across currencies." }, { "slug": "PIPEDRIVE_GET_PROJECT", "name": "Get details of a project", "description": "Returns the details of a specific project. Also note that custom fields appear as long hashes in the resulting data. These hashes can be mapped against the `key` value of project fields." }, { "slug": "PIPEDRIVE_GET_PROJECT_ACTIVITIES", "name": "Returns project activities", "description": "Returns activities linked to a specific project." }, { "slug": "PIPEDRIVE_GET_PROJECT_BOARD", "name": "Get details of a board", "description": "Returns the details of a specific project board." }, { "slug": "PIPEDRIVE_GET_PROJECT_GROUPS", "name": "Returns project groups", "description": "Returns all active groups under a specific project." }, { "slug": "PIPEDRIVE_GET_PROJECT_PHASE", "name": "Get details of a phase", "description": "Returns the details of a specific project phase." }, { "slug": "PIPEDRIVE_GET_PROJECT_PHASES", "name": "Get project phases", "description": "Returns all active project phases under a specific board." }, { "slug": "PIPEDRIVE_GET_PROJECT_PLAN", "name": "Returns project plan", "description": "Returns information about items in a project plan. Items consists of tasks and activities and are linked to specific project phase and group." }, { "slug": "PIPEDRIVE_GET_PROJECT_TASKS", "name": "Returns project tasks", "description": "Returns tasks linked to a specific project." }, { "slug": "PIPEDRIVE_GET_RECENTS", "name": "Get recents", "description": "Returns data about all recent changes occurred after the given timestamp." }, { "slug": "PIPEDRIVE_GET_ROLE", "name": "Get one role", "description": "Tool to retrieve details for a specific role by its ID. Use when you need to get complete role information including name, parent role, active status, assignment count, and default visibility settings." }, { "slug": "PIPEDRIVE_GET_ROLE_ASSIGNMENTS", "name": "Get role assignments", "description": "Tool to retrieve all users assigned to a specific role in Pipedrive. Use when you need to list role assignments for a given role." }, { "slug": "PIPEDRIVE_GET_ROLE_PIPELINES", "name": "Get role pipelines", "description": "Returns the visibility settings for pipelines associated with a specific role. Use when you need to list which pipelines are visible or hidden for a role." }, { "slug": "PIPEDRIVE_GET_ROLE_SETTINGS", "name": "Get role settings", "description": "Tool to retrieve visibility settings of a specific role. Use when you need to get default visibility levels and access levels for deals, leads, organizations, people, and products associated with a role. Note: - Roles endpoints require the `admin` scope. - For OAuth tokens, Pipedrive expects the company domain base URL with `/api/v1` path. Example: https://{COMPANY}.pipedrive.com/api/v1/roles/{id}/settings - This action normalizes the provided base_url to use `/api/v1` to avoid host/path mismatches." }, { "slug": "PIPEDRIVE_GET_STAGE", "name": "Get one stage", "description": "Returns data about a specific stage." }, { "slug": "PIPEDRIVE_GET_SUBSCRIPTION", "name": "Get details of a subscription", "description": "Returns details of an installment or a recurring subscription. Note: Subscriptions endpoints may not be available on the company-specific base URL. To avoid 404s, this action tries multiple hosts and gracefully falls back to Installments (v2) and Deal Products (v1)." }, { "slug": "PIPEDRIVE_GET_SUBSCRIPTION_PAYMENTS", "name": "Get all payments of a subscription", "description": "Returns all payments of an installment or recurring subscription." }, { "slug": "PIPEDRIVE_GET_TASK", "name": "Get details of a task", "description": "Returns the details of a specific task." }, { "slug": "PIPEDRIVE_GET_TEAM", "name": "Get a single team", "description": "Returns data about a specific team." }, { "slug": "PIPEDRIVE_GET_TEMPLATE", "name": "Get details of a template", "description": "Returns the details of a specific project template." }, { "slug": "PIPEDRIVE_GET_TEMPLATES", "name": "Get templates for a channel", "description": "Tool to retrieve message templates for a channel. Use when template support is enabled." }, { "slug": "PIPEDRIVE_GET_USER", "name": "Get one user", "description": "Returns data about a specific user within the company." }, { "slug": "PIPEDRIVE_GET_USER_CALL_LOGS", "name": "Get all call logs assigned to a particular user", "description": "Returns all call logs assigned to a particular user." }, { "slug": "PIPEDRIVE_GET_USER_FOLLOWERS", "name": "Get User Followers", "description": "Tool to list users who are following a specific user. Use when you need to retrieve all followers of a user in Pipedrive." }, { "slug": "PIPEDRIVE_GET_USER_PERMISSIONS", "name": "List user permissions", "description": "Tool to list aggregated permissions over all assigned permission sets for a user. Use when you need to check what capabilities and access rights a specific user has across the system." }, { "slug": "PIPEDRIVE_GET_USER_ROLE_ASSIGNMENTS", "name": "Get User Role Assignments", "description": "Tool to list role assignments for a user. Use when you need to retrieve all role assignments associated with a specific user in Pipedrive." }, { "slug": "PIPEDRIVE_GET_USER_ROLE_SETTINGS", "name": "Get user role settings", "description": "Tool to list user role settings. Use when you need to retrieve the role configuration data for a specific user, including default visibility levels and access levels for various entities. Note: This endpoint costs 10 API credits per request." }, { "slug": "PIPEDRIVE_LINK_REMOTE_FILE", "name": "Link a remote file to an item", "description": "Links an existing remote file (`googledrive`) to the item you supply. For more information, see the tutorial for adding a remote file." }, { "slug": "PIPEDRIVE_LINK_USER_VIDEO_INTEGRATION", "name": "Link User Video Integration", "description": "A video calling provider must call this endpoint after a user has installed the video calling app so that the new user's information is sent." }, { "slug": "PIPEDRIVE_LIST_DEAL_ACTIVITIES", "name": "List activities associated with a deal", "description": "Lists activities associated with a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_FILES", "name": "List files attached to a deal", "description": "Lists files associated with a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_FOLLOWERS", "name": "List followers of a deal", "description": "Lists the followers of a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_MAIL_MESSAGES", "name": "List mail messages associated with a deal", "description": "Lists mail messages associated with a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_PERSONS", "name": "List all persons associated with a deal", "description": "The endpoint lists every person linked to a deal, including primary contacts and participants, and provides a `data.marketing_status` field for users of the Campaigns product." }, { "slug": "PIPEDRIVE_LIST_DEAL_PRODUCTS", "name": "List products attached to a deal", "description": "Lists products attached to a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_UPDATES", "name": "List updates about a deal", "description": "Lists updates about a deal." }, { "slug": "PIPEDRIVE_LIST_DEAL_USERS", "name": "List permitted users", "description": "Lists the users permitted to access a deal." }, { "slug": "PIPEDRIVE_LIST_FILES", "name": "List all files", "description": "Lists all files uploaded to Pipedrive with optional filtering via pagination and sorting. Use this action when you need to retrieve all files across the entire Pipedrive account, regardless of which entity they're attached to. This differs from entity-specific file actions (like get_deal_files) which only return files for a particular deal, person, or organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_ACTIVITIES", "name": "List activities associated with an organization", "description": "Lists activities associated with an organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_DEALS", "name": "List deals associated with an organization", "description": "Lists deals associated with an organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_FILES", "name": "List files attached to an organization", "description": "Lists files associated with an organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_FOLLOWERS", "name": "List followers of an organization", "description": "Lists the followers of an organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_MAIL_MESSAGES", "name": "List mail messages associated with an organization", "description": "Lists mail messages associated with an organization." }, { "slug": "PIPEDRIVE_LIST_ORGANIZATION_PERSONS", "name": "List persons of an organization", "description": "Lists persons associated with an organization.
If a company uses the [Campaigns product](https://pipedrive.readme.io/docs/campaigns-in-pipedrive-api), then this endpoint will also return the `data.marketing_status` field." }, { "slug": "PIPEDRIVE_LIST_PARTICIPANTS_OF_A_DEAL", "name": "List participants of a deal", "description": "Lists the participants associated with a deal.
If a company uses the [Campaigns product](https://pipedrive.readme.io/docs/campaigns-in-pipedrive-api), then this endpoint will also return the `data.marketing_status` field." }, { "slug": "PIPEDRIVE_LIST_PERMISSION_SET_ASSIGNMENTS", "name": "List permission set assignments", "description": "Returns the list of assignments for a permission set. Notes: - This endpoint requires the `admin` OAuth scope. - OAuth calls must target the company domain with `/api/v1` path, e.g., https://{COMPANY}.pipedrive.com/api/v1/permissionSets/{id}/assignments - This action normalizes the base URL accordingly and returns the API envelope even on errors." }, { "slug": "PIPEDRIVE_LIST_PERSON_ACTIVITIES", "name": "List activities associated with a person", "description": "Lists activities associated with a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_DEALS", "name": "List deals associated with a person", "description": "Lists deals associated with a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_FILES", "name": "List files attached to a person", "description": "Lists files associated with a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_FOLLOWERS", "name": "List followers of a person", "description": "Lists the followers of a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_MAIL_MESSAGES", "name": "List mail messages associated with a person", "description": "Lists mail messages associated with a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_PRODUCTS", "name": "List products associated with a person", "description": "Lists products associated with a person." }, { "slug": "PIPEDRIVE_LIST_PERSON_USERS", "name": "List Person Access Users", "description": "List users permitted to access a person." }, { "slug": "PIPEDRIVE_LIST_PRODUCT_FILES", "name": "List files attached to a product", "description": "Lists files associated with a product." }, { "slug": "PIPEDRIVE_LIST_PRODUCT_FOLLOWERS", "name": "List followers of a product", "description": "Lists the followers of a product." }, { "slug": "PIPEDRIVE_LIST_PRODUCT_USERS", "name": "List Product Permitted Users", "description": "Lists users permitted to access a product." }, { "slug": "PIPEDRIVE_LIST_ROLE_ASSIGNMENTS", "name": "List role assignments", "description": "Returns all users assigned to a role. Notes: - Roles endpoints require the `admin` OAuth scope. - OAuth calls must target the company domain with `/api/v1` path, e.g., https://{COMPANY}.pipedrive.com/api/v1/roles/{id}/assignments - This action normalizes the base URL accordingly." }, { "slug": "PIPEDRIVE_LIST_ROLE_PIPELINE_VISIBILITY", "name": "List pipeline visibility for a role", "description": "Returns a list of visible or hidden pipeline IDs by role. See the \"Visibility groups article\" for details on pipeline visibility." }, { "slug": "PIPEDRIVE_LIST_ROLE_SETTINGS", "name": "List role settings", "description": "Returns the visibility settings of a specific role. Notes: - Roles endpoints require the `admin` OAuth scope. - OAuth calls must target the company domain with `/api/v1` path, e.g., https://{COMPANY}.pipedrive.com/api/v1/roles/{id}/settings - This action normalizes the base URL accordingly." }, { "slug": "PIPEDRIVE_LIST_UPDATES_ABOUT_AN_ORGANIZATION", "name": "List updates about an organization", "description": "Lists updates about an organization." }, { "slug": "PIPEDRIVE_LIST_UPDATES_ABOUT_A_PERSON", "name": "List updates about a person", "description": "Lists updates about a person.
If a company uses the [Campaigns product](https://pipedrive.readme.io/docs/campaigns-in-pipedrive-api), then this endpoint's response will also include updates for the `marketing_status` field." }, { "slug": "PIPEDRIVE_LIST_UPDATES_ABOUT_PARTICIPANTS_OF_A_DEAL", "name": "List updates about participants of a deal", "description": "This endpoint provides cursor-paginated updates on deal participants. For pagination details, see the Pipedrive documentation." }, { "slug": "PIPEDRIVE_LIST_USER_FOLLOWERS", "name": "List followers of a user", "description": "Lists the followers of a specific user." }, { "slug": "PIPEDRIVE_LIST_USER_PERMISSIONS", "name": "List user permissions", "description": "Lists aggregated permissions over all assigned permission sets for a user." }, { "slug": "PIPEDRIVE_LIST_USER_ROLE_ASSIGNMENTS", "name": "List User Role Assignments", "description": "Lists role assignments for a user." }, { "slug": "PIPEDRIVE_LIST_USER_ROLE_SETTINGS", "name": "List user role settings", "description": "Lists the settings of user's assigned role." }, { "slug": "PIPEDRIVE_LIST_USER_SETTINGS", "name": "List settings of an authorized user", "description": "Lists the settings of an authorized user. Example response contains a shortened list of settings." }, { "slug": "PIPEDRIVE_MERGE_DEALS", "name": "Merge Deals", "description": "Tool to merge two deals in Pipedrive. Use when you need to consolidate two deals into one. The deal specified by 'id' will be merged into the deal specified by 'merge_with_id', and the first deal will be removed while the second one will remain with all consolidated data." }, { "slug": "PIPEDRIVE_MERGE_ORGANIZATIONS", "name": "Merge Organizations", "description": "Tool to merge two organizations in Pipedrive. Use when you need to consolidate two organizations into one. The organization specified by 'id' will be merged into the organization specified by 'merge_with_id', and the first organization will be removed while the second one will remain with all consolidated data." }, { "slug": "PIPEDRIVE_MERGE_PERSONS", "name": "Merge two persons", "description": "Tool to merge two persons in Pipedrive. Use when you need to combine two person records into one. The person ID specified in the request will be merged and removed, while the merge_with_id person will remain. When data conflicts exist, the merge_with_id person's field data takes priority." }, { "slug": "PIPEDRIVE_MERGE_TWO_DEALS", "name": "Merge two deals", "description": "Merges a deal with another deal. For more information, see the tutorial for merging two deals." }, { "slug": "PIPEDRIVE_MERGE_TWO_ORGANIZATIONS", "name": "Merge two organizations", "description": "Merges an organization with another organization. For more information, see the tutorial for merging two organizations." }, { "slug": "PIPEDRIVE_MERGE_TWO_PERSONS", "name": "Merge two persons", "description": "Merges a person with another person. For more information, see the tutorial for merging two persons." }, { "slug": "PIPEDRIVE_ORGANIZATION_ACCESSIBLE_USER_LIST", "name": "Organization accessible user list", "description": "List users permitted to access an organization." }, { "slug": "PIPEDRIVE_PATCH_DEAL_FIELDS", "name": "Patch deal fields", "description": "Updates an existing deal custom field using PATCH method. Use when you need to modify field properties like name, visibility, or validation rules. Note that field code and type are immutable and cannot be changed." }, { "slug": "PIPEDRIVE_PATCH_ORGANIZATION_FIELDS", "name": "Update organization field (v2)", "description": "Tool to update an existing organization field in Pipedrive using the v2 API. Use when you need to modify field name, UI visibility, importance settings, required field settings, or description." }, { "slug": "PIPEDRIVE_PATCH_PERSON_FIELDS", "name": "Update Person Field Configuration", "description": "Tool to update person field configuration in Pipedrive. Use when you need to modify field properties like name, description, visibility settings, or requirement status. Only provided properties will be updated; omitted properties retain their existing values. Note: field_code and field_type cannot be changed." }, { "slug": "PIPEDRIVE_PRODUCTFIELDS_PATCH_PRODUCTFIELDS", "name": "Update product field", "description": "Tool to update a product custom field. Use when you need to modify field name, UI visibility, or description. The field_code and field_type cannot be changed. At least one field must be provided in the request." }, { "slug": "PIPEDRIVE_REFRESH_TOKENS", "name": "Refreshing the tokens", "description": "Access tokens expire after the time specified in `expires_in`. To continue accessing the API, use the `refresh_token` to obtain a new access token." }, { "slug": "PIPEDRIVE_REQUEST_AUTHORIZATION", "name": "Requesting authorization", "description": "Authorize a user by redirecting them to the Pipedrive OAuth authorization page and request their permissions to act on their behalf. This step is necessary to implement only when you allow app installation outside of the Marketplace." }, { "slug": "PIPEDRIVE_SEARCH_DEALS", "name": "Search deals", "description": "This API endpoint searches deals by title, notes, and custom fields, filters results by person or organization ID, and is a specific use case of /v1/itemSearch with limited OAuth scope." }, { "slug": "PIPEDRIVE_SEARCH_ITEM_BY_FIELD", "name": "Search Item By Field", "description": "Performs a search from the values of a specific field. Results can either be the distinct values of the field (useful for searching autocomplete field values), or the IDs of actual items (deals, leads, persons, organizations or products)." }, { "slug": "PIPEDRIVE_SEARCH_LEADS", "name": "Search leads", "description": "Endpoint searches leads by title, notes, custom fields, with options to filter by person and organization IDs, and is a more specific use of the /v1/itemSearch with limited OAuth scope." }, { "slug": "PIPEDRIVE_SEARCH_MULTIPLE_ITEM_TYPES", "name": "Perform a search from multiple item types", "description": "Performs a search from your choice of item types and fields." }, { "slug": "PIPEDRIVE_SEARCH_ORGANIZATIONS", "name": "Search organizations", "description": "Searches all organizations by name, address, notes and/or custom fields. This endpoint is a wrapper of /v1/itemSearch with a narrower OAuth scope." }, { "slug": "PIPEDRIVE_SEARCH_PERSONS", "name": "Search persons", "description": "This endpoint searches for individuals by various identifiers and is a specific use case of /v1/itemSearch with limited OAuth scope, allowing results filtering by organization ID." }, { "slug": "PIPEDRIVE_SEARCH_PRODUCTS", "name": "Search products", "description": "Searches all products by name, code and/or custom fields. This endpoint is a wrapper of /v1/itemSearch with a narrower OAuth scope." }, { "slug": "PIPEDRIVE_TAGES_UPDATE_STAGE", "name": "Update stage", "description": "Tool to update an existing stage in Pipedrive. Use when you need to modify stage properties such as name, deal probability, or rotten deal settings." }, { "slug": "PIPEDRIVE_UNLINK_USER_FROM_VIDEO_CALL_INTEGRATION", "name": "Unlinkuserfromvideocallintegration", "description": "A video calling provider must call this endpoint to remove the link between a user and the installed video calling app." }, { "slug": "PIPEDRIVE_UPDATE_A_COMMENT_RELATED_TO_A_NOTE", "name": "Update a comment related to a note", "description": "Updates a comment related to a note." }, { "slug": "PIPEDRIVE_UPDATE_ACTIVITY", "name": "Update an activity", "description": "Tool to update an existing activity in Pipedrive including scheduling, assignments, descriptions, and participants. Use when you need to modify any properties of an activity such as subject, due date/time, status, or associated entities." }, { "slug": "PIPEDRIVE_UPDATE_ACTIVITY_IN_PROJECT_PLAN", "name": "Update activity in project plan", "description": "Updates an activity phase or group in a project." }, { "slug": "PIPEDRIVE_UPDATE_ACTIVITY_TYPE", "name": "Update activity type", "description": "Tool to update an activity type in Pipedrive. Use when you need to modify the name, icon, color, or order of an existing activity type." }, { "slug": "PIPEDRIVE_UPDATE_A_DEAL", "name": "Update a deal", "description": "Updates the properties of a deal. For more information, see the tutorial for updating a deal." }, { "slug": "PIPEDRIVE_UPDATE_A_DEAL_FIELD", "name": "Update a deal field", "description": "Updates a deal field. For more information, see the tutorial for updating custom fields' values." }, { "slug": "PIPEDRIVE_UPDATE_A_FILTER", "name": "Update a filter", "description": "Updates an existing filter in Pipedrive. Use when you need to modify filter name or conditions. Maximum of 16 conditions per filter allowed." }, { "slug": "PIPEDRIVE_UPDATE_A_LEAD", "name": "Update a lead", "description": "Updating lead properties modifies only specified fields; use `null` to unset. Custom field data matches `Deals`. Unset fields are omitted. Leads share deals' custom fields. For examples, refer to the tutorial." }, { "slug": "PIPEDRIVE_UPDATE_A_LEAD_LABEL", "name": "Update a lead label", "description": "Updates one or more properties of a lead label. Only properties included in the request will be updated." }, { "slug": "PIPEDRIVE_UPDATE_AN_ACTIVITY", "name": "Update an activity", "description": "Updates an activity. Includes `more_activities_scheduled_in_context` property in response's `additional_data` which indicates whether there are more undone activities scheduled with the same deal, person or organization (depending on the supplied data)." }, { "slug": "PIPEDRIVE_UPDATE_AN_ACTIVITY_TYPE", "name": "Update an activity type", "description": "Updates an activity type." }, { "slug": "PIPEDRIVE_UPDATE_AN_ORGANIZATION", "name": "Update an organization", "description": "Updates the properties of an organization." }, { "slug": "PIPEDRIVE_UPDATE_AN_ORGANIZATION_FIELD", "name": "Update an organization field", "description": "Updates an organization field. For more information, see the tutorial for updating custom fields' values." }, { "slug": "PIPEDRIVE_UPDATE_AN_ORGANIZATION_RELATIONSHIP", "name": "Update an organization relationship", "description": "Updates and returns an organization relationship." }, { "slug": "PIPEDRIVE_UPDATE_A_NOTE", "name": "Update a note", "description": "Updates a note." }, { "slug": "PIPEDRIVE_UPDATE_A_PERSON", "name": "Update a person", "description": "Modifies a person’s details in Pipedrive. See the linked tutorial for guidance. If utilizing Campaigns, the endpoint also handles `data.marketing_status`." }, { "slug": "PIPEDRIVE_UPDATE_A_PERSON_FIELD", "name": "Update a person field", "description": "Updates a person field. For more information, see the tutorial for updating custom fields' values." }, { "slug": "PIPEDRIVE_UPDATE_A_PIPELINE", "name": "Update a pipeline", "description": "Updates the properties of a pipeline (v2)." }, { "slug": "PIPEDRIVE_UPDATE_A_PRODUCT", "name": "Update a product", "description": "Updates product data." }, { "slug": "PIPEDRIVE_UPDATE_A_PRODUCT_FIELD", "name": "Update a product field", "description": "Updates a product field. For more information, see the tutorial for updating custom fields' values." }, { "slug": "PIPEDRIVE_UPDATE_COMMENT_FOR_NOTE", "name": "Update comment for note", "description": "Tool to update a comment on a note in Pipedrive. Use when you need to modify the content of an existing comment attached to a note." }, { "slug": "PIPEDRIVE_UPDATE_DEAL", "name": "Update a deal", "description": "Tool to update an existing deal in Pipedrive. Use when you need to modify properties of a deal such as title, value, status, stage, or associated contacts/organizations." }, { "slug": "PIPEDRIVE_UPDATE_DEAL_DISCOUNT", "name": "Update deal discount", "description": "Tool to update a discount for a specific deal. Use when you need to modify the amount, description, or type of an existing discount added to a deal in Pipedrive." }, { "slug": "PIPEDRIVE_UPDATE_DEAL_FIELD", "name": "Update a deal field", "description": "Tool to update a deal field in Pipedrive. Use when you need to modify existing deal field properties such as name, visibility, or options. Note that field_code and field_type cannot be changed." }, { "slug": "PIPEDRIVE_UPDATE_DEALFIELDS_OPTIONS", "name": "Update deal field options", "description": "Tool to update existing options for a deal custom field atomically. Use when you need to modify labels of options in a deal field." }, { "slug": "PIPEDRIVE_UPDATE_DEAL_PRODUCT", "name": "Update Deal Product", "description": "Updates a product attached to a deal with new values. Use when you need to modify price, quantity, discount, tax, or other properties of a deal product." }, { "slug": "PIPEDRIVE_UPDATE_DEAL_PRODUCT_ATTACHMENT", "name": "Update the product attached to a deal", "description": "Updates the details of the product that has been attached to a deal." }, { "slug": "PIPEDRIVE_UPDATE_DEAL_V2", "name": "Update deal (v2 API)", "description": "Tool to update an existing deal using Pipedrive v2 API. Use when you need to modify deal properties including custom fields, archive status, or deletion status." }, { "slug": "PIPEDRIVE_UPDATE_FILE", "name": "Update file details", "description": "Updates the properties of a file including its visible name and description. Use when you need to modify file metadata in Pipedrive." }, { "slug": "PIPEDRIVE_UPDATE_FILE_DETAILS", "name": "Update file details", "description": "Updates the properties of a file." }, { "slug": "PIPEDRIVE_UPDATE_FILTER", "name": "Update filter", "description": "Updates an existing filter." }, { "slug": "PIPEDRIVE_UPDATE_GOAL", "name": "Update existing goal", "description": "Updates an existing goal. Note: For OAuth, Goals API is available under {companydomain}/api/v1. The platform metadata base_url may be {companydomain}/v1, which yields 404 for PUT /goals/{id}. We therefore construct the URL using the company domain and /api/v1 explicitly." }, { "slug": "PIPEDRIVE_UPDATE_INSTALLMENT_SUBSCRIPTION", "name": "Update an installment subscription", "description": "Updates an installment subscription. Note: Subscriptions endpoints may not be available on the company-specific base URL. To avoid 404s, this action overrides the default request behavior and uses multiple hosts along with a practical fallback to Deal Products when Subscriptions/Installments features are not accessible." }, { "slug": "PIPEDRIVE_UPDATE_LEAD", "name": "Update a lead", "description": "Tool to update a lead in Pipedrive. Use when you need to modify properties of an existing lead such as title, value, status, or linked contacts." }, { "slug": "PIPEDRIVE_UPDATE_LEAD_LABEL", "name": "Update Lead Label", "description": "Tool to update a lead label in Pipedrive. Use when you need to modify the name or color of an existing lead label. Only properties included in the request will be updated." }, { "slug": "PIPEDRIVE_UPDATE_MAIL_THREAD", "name": "Update mail thread details", "description": "Updates the properties of a mail thread." }, { "slug": "PIPEDRIVE_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note in Pipedrive. Use when you need to modify the content or properties of a note attached to deals, persons, organizations, leads, or projects." }, { "slug": "PIPEDRIVE_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update an existing organization in Pipedrive. Use when you need to modify organization properties such as name, owner, visibility, labels, or address." }, { "slug": "PIPEDRIVE_UPDATE_ORGANIZATION_FIELD", "name": "Update organization field", "description": "Tool to update an organization field in Pipedrive. Use when you need to modify the name, options, or visibility of an existing organization field." }, { "slug": "PIPEDRIVE_UPDATE_ORGANIZATION_FIELD_OPTIONS", "name": "Update organization field options", "description": "Tool to update existing options for an organization custom field atomically. Use when you need to modify option labels for an organization field. All specified option IDs must exist or the entire request fails." }, { "slug": "PIPEDRIVE_UPDATE_ORGANIZATION_RELATIONSHIP", "name": "Update organization relationship", "description": "Tool to update an organization relationship in Pipedrive. Use when you need to modify the type or organizations involved in an existing relationship between two organizations." }, { "slug": "PIPEDRIVE_UPDATE_PERSON", "name": "Update a person", "description": "Tool to update a person's properties in Pipedrive. Use when you need to modify existing person details such as name, contact information, owner, or organization." }, { "slug": "PIPEDRIVE_UPDATE_PERSON_FIELD", "name": "Update person field", "description": "Tool to update a person field in Pipedrive. Use when you need to modify the name, options, or visibility settings of an existing person field." }, { "slug": "PIPEDRIVE_UPDATE_PERSONFIELDS_OPTIONS", "name": "Update person field options", "description": "Tool to update existing options for a person custom field atomically. Use when you need to modify labels of options in a person field." }, { "slug": "PIPEDRIVE_UPDATE_PERSON_V2", "name": "Update person (v2)", "description": "Tool to update a person's properties in Pipedrive using the v2 API. Use when you need to modify existing person details such as name, contact information, owner, or organization." }, { "slug": "PIPEDRIVE_UPDATE_PIPELINE", "name": "Update a pipeline", "description": "Tool to update a pipeline in Pipedrive. Use when you need to modify pipeline properties like name, deal probability, order, or active status. All fields except id are optional - only include the fields you want to update." }, { "slug": "PIPEDRIVE_UPDATE_PIPELINE_VISIBILITY_FOR_ROLE", "name": "Update pipeline visibility for a role", "description": "Updates pipeline visibility settings for different roles. For details, see the Pipedrive Visibility groups article." }, { "slug": "PIPEDRIVE_UPDATE_PRODUCT", "name": "Update a product", "description": "Tool to update a product in Pipedrive. Use when you need to modify product details like name, code, price, tax, or other attributes." }, { "slug": "PIPEDRIVE_UPDATE_PRODUCT_FIELD", "name": "Update product field", "description": "Tool to update a product field definition in Pipedrive. Use when you need to modify the name or options of an existing product custom field." }, { "slug": "PIPEDRIVE_UPDATE_PRODUCTFIELDS_OPTIONS", "name": "Update product field options", "description": "Tool to update existing options for a product custom field atomically. Use when you need to modify labels of options in a product field." }, { "slug": "PIPEDRIVE_UPDATE_PRODUCT_IMAGE", "name": "Update product image", "description": "Tool to update an image for a product in Pipedrive. Use when you need to add or replace a product image." }, { "slug": "PIPEDRIVE_UPDATE_PRODUCT_VARIATION", "name": "Update product variation", "description": "Tool to update a product variation in Pipedrive. Use when you need to modify variation details like name or prices across different currencies." }, { "slug": "PIPEDRIVE_UPDATE_PROJECT", "name": "Update a project", "description": "Updates a project." }, { "slug": "PIPEDRIVE_UPDATE_RECURRING_SUBSCRIPTION", "name": "Update a recurring subscription", "description": "Updates a recurring subscription. Note: Some company hosts may not expose Subscriptions endpoints. This action will attempt multiple hosts and gracefully fall back to updating the product attached to a deal (v1) when applicable. In the fallback path, the request `id` is treated as the `product_attachment_id` and we locate the corresponding deal by scanning deal products." }, { "slug": "PIPEDRIVE_UPDATE_ROLE", "name": "Update role details", "description": "Updates the parent role and/or the name of a specific role. Notes: - Roles endpoints require the `admin` scope. - With OAuth (Bearer) tokens, Pipedrive expects the company domain base URL with `/api/v1` path, e.g. https://{COMPANY}.pipedrive.com/api/v1/roles/{id} - This action normalizes the base_url provided by metadata to ensure `/api/v1` is used with the company domain when available. Falls back to the global API host otherwise." }, { "slug": "PIPEDRIVE_UPDATE_ROLE_PIPELINES", "name": "Update role pipelines", "description": "Updates pipeline visibility for a role. Use when you need to control which sales pipelines are accessible to users within a particular role group." }, { "slug": "PIPEDRIVE_UPDATE_STAGE", "name": "Update stage details", "description": "Tool to update stage details in Pipedrive. Use when you need to modify properties of an existing stage such as name, pipeline association, deal probability, or rotten deal settings." }, { "slug": "PIPEDRIVE_UPDATE_STAGE_DETAILS", "name": "Update stage details", "description": "Updates the properties of a stage." }, { "slug": "PIPEDRIVE_UPDATE_TASK", "name": "Update a task", "description": "Updates a task." }, { "slug": "PIPEDRIVE_UPDATE_TASK_IN_PROJECT_PLAN", "name": "Update task in project plan", "description": "Updates a task phase or group in a project." }, { "slug": "PIPEDRIVE_UPDATE_TEAM", "name": "Update a team", "description": "Updates an existing team and returns the updated object." }, { "slug": "PIPEDRIVE_UPDATE_USER", "name": "Update user details", "description": "Tool to update user details in Pipedrive. Use when you need to activate or deactivate a user account. Requires admin-level permissions." }, { "slug": "PIPEDRIVE_UPDATE_USER_DETAILS", "name": "Update user details", "description": "Updates the properties of a user. Currently, only `active_flag` can be updated." } ], "triggers": [ { "slug": "PIPEDRIVE_NEW_DEAL_TRIGGER", "name": "New Deal Received Trigger", "description": "Triggered when a new deal is created in Pipedrive" }, { "slug": "PIPEDRIVE_NEW_NOTE_TRIGGER", "name": "New Note Received Trigger", "description": "Triggered when a new note is created in Pipedrive" }, { "slug": "PIPEDRIVE_NEW_ORGANIZATION_TRIGGER", "name": "New Organization Received Trigger", "description": "Triggered when a new organization is created in Pipedrive" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pipedrive_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "contacts:full,leads:full,mail:full,activities:full,products:full,projects:full" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company Domain", "type": "string", "description": "Your Pipedrive company domain — the 'acme' part of acme.pipedrive.com. Find it in your browser's address bar when you're logged in to Pipedrive.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "pipedrive_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company Domain", "type": "string", "description": "Your Pipedrive company domain — the 'acme' part of acme.pipedrive.com. Find it in your browser's address bar when you're logged in to Pipedrive.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your personal Pipedrive API token — find it under Settings > Personal preferences > API and click Copy. If the API tab is missing, ask an admin to enable API access.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bamboohr", "name": "BambooHR", "logo": "https://logos.composio.dev/api/bamboohr", "description": "BambooHR is a cloud-based human resources management system (HRMS) that helps businesses manage their employees, payroll, and benefits.", "category": "human resources", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BAMBOOHR_ATS_CREATE_CANDIDATE", "name": "Create Candidate Application", "description": "Tool to create a candidate application. Use when adding a new applicant to a specific job opening in BambooHR ATS." }, { "slug": "BAMBOOHR_ATS_CREATE_JOB_OPENING", "name": "Create Job Opening", "description": "Tool to create a new job opening in BambooHR ATS. Use when you need to open a new job for applicants." }, { "slug": "BAMBOOHR_ATS_GET_APPLICATIONS", "name": "List Job Applications", "description": "Tool to list job applications with optional filters. Use when retrieving ATS applications for reporting or integration." }, { "slug": "BAMBOOHR_BENEFIT_GET_COVERAGES", "name": "Get Benefit Coverages", "description": "Tool to retrieve standard benefit coverage options. Use when you need to fetch all or specific coverages before configuring benefit plans." }, { "slug": "BAMBOOHR_BENEFIT_GET_MEMBER_EVENTS", "name": "Get Member Benefit Events", "description": "Tool to list member benefit events. Use when you need to fetch all benefit events visible to the authenticated user." }, { "slug": "BAMBOOHR_COMPANY_GET_EINS", "name": "Get Company EINs", "description": "Tool to retrieve company Employer Identification Numbers (EINs). Use when you need to fetch your account's EINs after authenticating." }, { "slug": "BAMBOOHR_COMPANY_GET_INFORMATION", "name": "Get Company Information", "description": "Tool to retrieve company information. Use when you need details about the current account's settings." }, { "slug": "BAMBOOHR_CREATE_FILE_CATEGORY", "name": "Create File Category", "description": "Tool to create new company file categories. Use when organizing company files by adding new categories after confirming desired names." }, { "slug": "BAMBOOHR_CREATE_TIME_OFF_REQUEST", "name": "Create Time Off Request", "description": "Tool to submit a new time off request. Use after confirming employee ID and valid payload." }, { "slug": "BAMBOOHR_DATASETS_LIST", "name": "List Datasets", "description": "Tool to list available datasets via the Datasets API. Use when you need to discover available dataset schemas before querying data." }, { "slug": "BAMBOOHR_DEPENDENTS_CREATE", "name": "Create Employee Dependent", "description": "Tool to add a dependent to an employee. Use when a new dependent needs to be recorded for benefits or HR tracking. Ensure the employee record exists before calling this tool." }, { "slug": "BAMBOOHR_DEPENDENTS_GET_ALL", "name": "Get All Employee Dependents", "description": "Tool to retrieve all employee dependents. Use after ensuring your API key has access to benefit settings." }, { "slug": "BAMBOOHR_EMPLOYEE_CREATE", "name": "Create Employee", "description": "Tool to create a new employee record. Use when adding employees via BambooHR API. Returns the new employee's ID." }, { "slug": "BAMBOOHR_EMPLOYEE_FILES_CREATE_CATEGORY", "name": "Create Employee File Category", "description": "Tool to create new employee file categories. Use when organizing employee files by adding new categories after confirming desired names." }, { "slug": "BAMBOOHR_EMPLOYEE_GET_CHANGED", "name": "Get Changed Employees", "description": "Tool to get employees inserted, updated, or deleted since a given timestamp. Use when fetching incremental HR changes." }, { "slug": "BAMBOOHR_FILES_LIST", "name": "List Company Files", "description": "Tool to list company file categories and their files. Use when you need to retrieve all company files organized by category after confirming file inventory exists." }, { "slug": "BAMBOOHR_FILES_UPLOAD", "name": "Upload Company File", "description": "Tool to upload a new company file. Use when you need to add a file to BambooHR after confirming its category and share settings." }, { "slug": "BAMBOOHR_GET_ALL_EMPLOYEES", "name": "Get All Employees", "description": "Retrieves all employees from the BambooHR employee directory including their basic information and status." }, { "slug": "BAMBOOHR_GET_APPLICANT_STATUSES", "name": "Get Applicant Statuses", "description": "Tool to retrieve applicant statuses. Use when you need to list ATS statuses for your company; requires ATS settings access." }, { "slug": "BAMBOOHR_GET_CUSTOM_EMPLOYEE_FIELDS", "name": "Get Custom Employee Fields", "description": "Tool to fetch custom employee field values. Use when you need to retrieve only custom fields for all employees." }, { "slug": "BAMBOOHR_GET_CUSTOM_REPORTS", "name": "Run Custom Report", "description": "Tool to run a custom report by ID or ad-hoc fields. Use when you need to execute a saved report or generate an ad-hoc report and retrieve its results in JSON or file format." }, { "slug": "BAMBOOHR_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to retrieve detailed information for a specific employee. Use when you need individual employee data by ID." }, { "slug": "BAMBOOHR_GET_EMPLOYEE_PHOTO", "name": "Get Employee Photo", "description": "Tool to retrieve an employee's profile photo by size. Use when you need to download the image binary for the specified employee after confirming their ID." }, { "slug": "BAMBOOHR_GET_HIRING_LEADS", "name": "Get Hiring Leads", "description": "Tool to retrieve potential hiring leads (employees who can manage job openings) for use in creating a new job opening. The API key owner must have access to ATS settings." }, { "slug": "BAMBOOHR_GET_JOB_SUMMARIES", "name": "Get Job Summaries", "description": "Tool to retrieve a list of ATS job summaries. Use when you need an overview of all job postings and their key details." }, { "slug": "BAMBOOHR_GET_META_DEPARTMENTS", "name": "Get Departments Metadata", "description": "Tool to list department metadata. Use after needing all available department codes and names." }, { "slug": "BAMBOOHR_GET_META_DIVISIONS", "name": "Get Meta Divisions", "description": "Tool to list all division metadata. Use after authenticating to fetch the account's divisions." }, { "slug": "BAMBOOHR_GET_META_EMPLOYMENT_STATUSES", "name": "List Employment Status Metadata", "description": "Tool to list all employment status metadata. Use when you need all defined employment statuses for the company." }, { "slug": "BAMBOOHR_GET_META_JOB_TITLES", "name": "Get Meta Job Titles", "description": "Tool to retrieve job title metadata. Uses the list-field metadata endpoint and extracts the options for the `jobTitle` field." }, { "slug": "BAMBOOHR_GET_META_LOCATIONS", "name": "Get Meta Locations", "description": "Tool to list location metadata. Use when you need all configured company locations for lookups." }, { "slug": "BAMBOOHR_GET_META_TIME_OFF_TYPES", "name": "Get Time-Off Types Metadata", "description": "Tool to list time-off type metadata. Use when you need to discover available time-off types before creating time-off requests." }, { "slug": "BAMBOOHR_GET_REPORT", "name": "Get Report", "description": "Tool to fetch a built-in or published report in JSON or other formats. Use when you need to retrieve report data or download report files after specifying the report ID and desired output format." }, { "slug": "BAMBOOHR_GET_TIME_OFF_BALANCES", "name": "Get Time-Off Balances", "description": "Tool to retrieve time-off balances for employees. Use when you need current balances across your team." }, { "slug": "BAMBOOHR_GET_TIME_OFF_POLICIES", "name": "Get Time-Off Policies", "description": "Tool to list time-off policies with accrual rates and details. This action retrieves policy configuration including accrual amounts, schedules, maximum accrual limits, and rollover settings. Use this action when you need to understand how time-off accrues for employees, distinct from checking current balances." }, { "slug": "BAMBOOHR_GET_TIME_OFF_REQUESTS", "name": "Get Time-Off Requests", "description": "Tool to list time-off requests within a date range. Use after confirming start and end dates; supports optional filters for status, employee, and time off type." }, { "slug": "BAMBOOHR_LIST_BUILTIN_REPORTS", "name": "List Company Reports", "description": "Tool to list all available company and custom reports. Use after confirming account setup. Requires 'report' scope for OAuth or an API key with report access permissions." }, { "slug": "BAMBOOHR_META_GET_COUNTRIES", "name": "Get Country Options", "description": "Tool to retrieve all available country options. Use when you need a complete list of selectable countries before updating or validating country fields." }, { "slug": "BAMBOOHR_META_GET_LIST_FIELD_DETAILS", "name": "Get List Field Details", "description": "Tool to get details for all list fields. Use when you need to discover list field options before using them." }, { "slug": "BAMBOOHR_META_GET_TABULAR_FIELDS", "name": "Get Tabular Fields Metadata", "description": "Tool to list tabular table fields metadata. Use when you need standard table structures before accessing table rows." }, { "slug": "BAMBOOHR_META_GET_USERS", "name": "Get Users", "description": "Tool to list active users with basic info. Use when you need to retrieve current users' IDs, names, and emails." }, { "slug": "BAMBOOHR_UPDATE_EMPLOYEE", "name": "Update Employee", "description": "Tool to update fields on a specified employee record. Use when you need to modify employee properties via BambooHR API after confirming the target employee ID. Example: \"Update employee 12345's department to Sales\"." }, { "slug": "BAMBOOHR_UPDATE_TIME_OFF_REQUEST", "name": "Update Time Off Request", "description": "Tool to update the status of an existing time-off request. Use when you need to approve, deny, or cancel a request after reviewing it. Example: \"Approve time-off request 12345\"." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "bamboohr_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "application,application.write,job_opening,job_opening.write,benefit,benefit.write,email,openid,company:administration,company:administration.write,company:info,company_file,company_file.write,data_cleaner,error_management,employee,employee.write,employee:assets,employee:assets.write,employee:compensation,employee:compensation.write,employee:contact,employee:contact.write,employee:custom_fields,employee:custom_fields.write,employee:custom_fields_encrypted,employee:custom_fields_encrypted.write,employee:demographic,employee:demographic.write,employee:dependent,employee:dependent.write,employee:dependent:ssn,employee:dependent:ssn.write,employee:education,employee:education.write,employee:emergency_contacts,employee:emergency_contacts.write,employee:file,employee:file.write,employee:identification,employee:identification.write,employee:job,employee:job.write,employee:management,employee:management.write,employee:name,employee:name.write,employee:payroll,employee:payroll.write,employee:photo,employee:photo.write,employee:providers,employee:providers.write,employee:providers:payroll,employee:providers:payroll.write,employee:vaccination,employee:vaccination.write,goal,goal.write,sensitive_employee:address,sensitive_employee:address.write,sensitive_employee:creditcards,sensitive_employee:creditcards.write,sensitive_employee:protected_info,sensitive_employee:protected_info.write,tasks,tasks.write,access_level,benchmarking:compensation,field,field.write,gridlets,offline_access,public.user,training,training.write,user,user:management,user:management.write,webhooks,webhooks.write,payroll,payroll.write,report,time_off,time_off.write,time_tracking,time_tracking.write" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company Domain", "type": "string", "description": "Your BambooHR subdomain (e.g., \"mycompany\" for mycompany.bamboohr.com)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "bamboohr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company Domain", "type": "string", "description": "Your BambooHR subdomain (e.g., \"mycompany\" for mycompany.bamboohr.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your BambooHR API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "whatsapp", "name": "WhatsApp", "logo": "https://logos.composio.dev/api/whatsapp", "description": "Enables interaction with customers through the WhatsApp Business API for messaging and automation. Only supports WhatsApp Business accounts, not WhatsApp Personal accounts.", "category": "phone & sms", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 57, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "WHATSAPP_BLOCK_USERS", "name": "Block WhatsApp Users", "description": "Block one or more WhatsApp users to prevent them from sending messages to your business phone number. Use this action when you need to prevent specific users from contacting your business through WhatsApp. Blocked users will receive an error if they attempt to send messages to your business phone number. This action is irreversible — blocked users cannot unblock themselves and must contact your business directly to be unblocked. Note: You can block a maximum of 100 users per request." }, { "slug": "WHATSAPP_CONFIGURE_CONVERSATIONAL_AUTOMATION", "name": "Configure WhatsApp Conversational Automation", "description": "Configure conversational automation settings for a WhatsApp Business phone number. Sets up away messages, greeting messages, custom commands, and ice breaker prompts to automate customer interactions. Use this action to enable automated responses when your business cannot respond in real-time. Use this action when you need to: - Enable welcome messages for new customer conversations - Define custom bot commands for automated assistance - Set up conversation prompts (ice breakers) to guide customer interactions - Configure automated greeting messages for your WhatsApp Business number Note: The phone_number_id parameter refers to the Meta-assigned numeric ID, not the actual phone number. Obtain it using WHATSAPP_GET_PHONE_NUMBERS action." }, { "slug": "WHATSAPP_CREATE_FLOW", "name": "Create WhatsApp Flow", "description": "Create a new WhatsApp Flow for the WhatsApp Business Account. Use this action when you want to create an interactive flow that can collect user data, guide users through a process, or provide structured interactions within WhatsApp conversations. The flow starts in DRAFT status and must be configured with Flow JSON before it can be published. Note: The created flow is in DRAFT status and must be published before it can be used. Use the UpdateFlowJson action to add the flow configuration." }, { "slug": "WHATSAPP_CREATE_MAX_PRICE_AGREEMENTS", "name": "Create WhatsApp Max Price Agreement", "description": "Create a max price agreement for WhatsApp marketing messages pricing. Max price agreements set a ceiling on the per-conversation price you'll pay for WhatsApp messaging across your WhatsApp Business Account. This is useful for controlling costs and ensuring predictable pricing for your messaging campaigns. Use this action when you need to set up pricing agreements for marketing, utility, or authentication message types on your WhatsApp Business Account. Once created, the agreement will be applied to all applicable conversations." }, { "slug": "WHATSAPP_CREATE_MESSAGE_TEMPLATE", "name": "Create message template", "description": "Create a new message template for the WhatsApp Business Account. Templates must be approved by WhatsApp before they can be used. Templates are required for marketing messages and messages sent outside the 24-hour window." }, { "slug": "WHATSAPP_CREATE_QR_CODE", "name": "Create QR Code", "description": "Create a new QR code with a prefilled message for a WhatsApp Business phone number. Use this action when you need to generate a shareable QR code that customers can scan to start a conversation with your business. When scanned, the QR code will automatically populate the message input field with the specified prefilled message, making it easy for customers to initiate contact. The QR code can be configured to generate an image (PNG or SVG format) which will be available in the response for download and sharing." }, { "slug": "WHATSAPP_CREATE_UPLOAD_SESSION", "name": "Create upload session for WhatsApp", "description": "Create a resumable upload session for large file uploads to WhatsApp. This action initiates an upload session that allows you to upload large files in chunks. First create a session, then use the session ID and URI to upload file data in subsequent requests. This is useful for uploading videos and large images that exceed the size limits of direct uploads. Use this action when you need to upload media files larger than the direct upload limit, or when you want to implement resumable uploads for reliability." }, { "slug": "WHATSAPP_DELETE_MEDIA", "name": "Delete WhatsApp Media", "description": "Delete a WhatsApp media file previously uploaded via the Media API. Use when you need to remove a media object you uploaded earlier (e.g. to free up storage or to retract content). The deletion is permanent — the media_id will no longer be retrievable. Note: media uploaded via Cloud API is normally retained by Meta for 30 days; this operation removes it before the automatic expiry." }, { "slug": "WHATSAPP_DELETE_MESSAGE_TEMPLATE", "name": "Delete message template", "description": "Delete a message template from the WhatsApp Business Account by name. This permanently removes the template and it cannot be recovered. When you delete a template by name, all templates with that name across all languages will be deleted. Names of deleted templates cannot be reused for 30 days. Important: Only delete templates that are no longer needed, as this operation is irreversible." }, { "slug": "WHATSAPP_DELETE_QR_CODE", "name": "Delete QR Code", "description": "Delete a specific QR code from a WhatsApp Business phone number. Use this action when you need to permanently remove a QR code that is no longer needed. This operation is irreversible — once deleted, the QR code cannot be recovered or recreated with the same identifier. This action permanently deletes the QR code and cannot be undone." }, { "slug": "WHATSAPP_DEREGISTER_PHONE", "name": "Deregister WhatsApp Business Phone Number", "description": "Deregister a WhatsApp Business phone number from the Cloud API. Use when you need to stop sending messages from a phone number — for example before migrating it to another WhatsApp Business Account, before re-registering with a new PIN, or when retiring the number. After deregistration, the phone number can be registered again via register_phone. Destructive operation: after deregistration the phone number cannot send messages until it is registered again." }, { "slug": "WHATSAPP_GET_ACTIVITIES", "name": "Get WhatsApp Business Account Activities", "description": "Retrieve activity history for a WhatsApp Business Account. This action returns a paginated list of activities such as phone number verifications, user additions, and other administrative actions performed on the WABA. Use this action when you need to audit administrative actions, track changes to your WhatsApp Business Account, or monitor user access and modifications." }, { "slug": "WHATSAPP_GET_BUSINESS_ACCOUNT_DETAILS", "name": "Get WhatsApp Business Account Details", "description": "Retrieve comprehensive details about a WhatsApp Business Account (WABA). Returns configuration, status, and settings information including account review status, business verification status, timezone, and ownership details. Use this action when you need to audit your WhatsApp Business Account configuration, verify account status, or retrieve account-level settings and metadata." }, { "slug": "WHATSAPP_GET_BUSINESS_COMPLIANCE_INFO", "name": "Get WhatsApp Business Compliance Info", "description": "Retrieve comprehensive business compliance information for a WhatsApp Business phone number. Returns regulatory and compliance details including entity registration status, grievance officer contact information, and customer care details. Use this action to verify business compliance status, review registered business information, and ensure proper contact details are configured for regulatory requirements. Use when you need to check business registration status, review grievance officer details for legal compliance, or verify customer care contact information for your WhatsApp Business account." }, { "slug": "WHATSAPP_GET_BUSINESS_ENCRYPTION", "name": "Get Business Encryption", "description": "Retrieve the WhatsApp Business public key and its signature verification status. Use this action when you need to obtain the end-to-end encryption public key for a WhatsApp Business phone number. This is useful for setting up secure messaging integrations and verifying the authenticity of messages. The response includes the base64-encoded public key and its signature status." }, { "slug": "WHATSAPP_GET_BUSINESS_PROFILE", "name": "Get business profile", "description": "Get the business profile information for a WhatsApp Business phone number. This includes business details like description, address, website, and contact info." }, { "slug": "WHATSAPP_GET_CLIENT_BUSINESS_ACCOUNTS", "name": "Get client WhatsApp Business Accounts", "description": "Retrieve WhatsApp Business Accounts shared with or managed by a business portfolio. Use this action when you need to get WhatsApp Business Accounts (WABAs) that are client accounts shared with or managed by a specific business portfolio, as opposed to accounts directly owned by that business. This is useful for agencies managing accounts for multiple clients, or for businesses accessing accounts shared with them. The action supports filtering by business type, pagination with cursors, finding specific accounts by ID, and specifying which fields to return." }, { "slug": "WHATSAPP_GET_COMMERCE_SETTINGS", "name": "Get WhatsApp Commerce Settings", "description": "Get commerce settings for a WhatsApp Business phone number. Retrieves cart and catalog visibility settings for a specific WhatsApp Business phone number. Use this action to check whether shopping cart and product catalog features are enabled for customer interactions. This is useful for managing e-commerce capabilities on your WhatsApp Business account. Use when you need to verify the current commerce configuration of a phone number before enabling shopping features or displaying products to customers." }, { "slug": "WHATSAPP_GET_FLOW_ASSETS", "name": "Get Flow Assets", "description": "List assets associated with a WhatsApp Flow. Use this action when you need to retrieve the assets (such as flow.json) that are associated with a WhatsApp Flow. The response includes download URLs for each asset that can be used to fetch the actual content. Note: The download URLs are typically valid for a limited time period and should be used promptly after retrieval." }, { "slug": "WHATSAPP_GET_JOIN_REQUESTS", "name": "Get Join Requests", "description": "Get all pending join requests for a WhatsApp group. Use this action when you need to retrieve pending requests from users who want to join a WhatsApp group. This is useful for group administration, moderation, and managing group membership. Results can be paginated using the 'after' and 'before' cursors from the paging response." }, { "slug": "WHATSAPP_GET_MEDIA_INFO", "name": "Get media info", "description": "Get metadata and download URL for uploaded WhatsApp media. Returns media ID, download URL (valid for 5 minutes), MIME type, SHA256 hash, and file size. The download URL can be used to retrieve the actual media file." }, { "slug": "WHATSAPP_GET_MESSAGE_HISTORY", "name": "Get WhatsApp Message History", "description": "Retrieve message history for a WhatsApp Business phone number. Returns a paginated list of messages with their delivery status information, including events like delivery status updates, timestamps, and webhook information. Use this action when you need to track message delivery status, audit message history, or retrieve detailed information about specific messages. Use when you want to check if messages were delivered, track message status changes, or retrieve delivery receipts for WhatsApp Business messages." }, { "slug": "WHATSAPP_GET_MESSAGE_TEMPLATES", "name": "Get message templates", "description": "Get all message templates for the WhatsApp Business Account. Templates are required for sending messages outside the 24-hour window and for marketing/utility messages." }, { "slug": "WHATSAPP_GET_OWNED_BUSINESS_ACCOUNTS", "name": "Get owned WhatsApp Business Accounts", "description": "Retrieve WhatsApp Business Accounts owned by a business portfolio. Use this action when you need to get all WhatsApp Business Accounts (WABAs) that are directly owned by a specific business. This differs from client accounts which are shared with the business. This is useful for managing your own accounts, querying their details, and navigating through paginated results. The action supports filtering by business type, pagination with cursors, finding specific accounts by ID, and specifying which fields to return." }, { "slug": "WHATSAPP_GET_PHONE_NUMBER", "name": "Get phone number", "description": "Retrieve detailed information about a specific WhatsApp Business phone number. Returns phone number details including verification status, quality rating, display number, verified business name, throughput limits, and webhook configuration. Use this to check phone number status, settings, and capabilities. To get available phone number IDs, first call WHATSAPP_GET_PHONE_NUMBERS." }, { "slug": "WHATSAPP_GET_PHONE_NUMBERS", "name": "Get phone numbers", "description": "Retrieve all phone numbers registered to your WhatsApp Business Account. Returns phone number IDs, display numbers, verification status, quality ratings, and messaging throughput limits. Use the phone number ID from the response to send WhatsApp messages via other API actions." }, { "slug": "WHATSAPP_GET_SCHEDULES", "name": "Get WhatsApp Schedules", "description": "Retrieve campaign schedules associated with a WhatsApp Business Account. Use this action when you need to list all scheduled campaigns for a WABA, including their status, timing, and recurrence patterns." }, { "slug": "WHATSAPP_GET_SETTINGS", "name": "Get WhatsApp Cloud API Settings", "description": "Get Cloud API settings for a WhatsApp Business phone number. Retrieves calling, storage, and payload encryption settings for a specific WhatsApp Business phone number. This includes information about call features, IP addresses for calling, data storage preferences, and encryption settings. Use this action to check the current configuration and capabilities of a phone number's Cloud API integration. Use when you need to verify the current Cloud API settings for a phone number, including calling features, encryption status, and data storage configuration." }, { "slug": "WHATSAPP_GET_SUBSCRIBED_APPS", "name": "Get Subscribed Apps", "description": "Get all applications currently subscribed to webhooks for a WhatsApp Business Account. Use this action when you need to retrieve the list of third-party applications or integrations that are subscribed to receive webhook events for a specific WABA." }, { "slug": "WHATSAPP_GET_TEMPLATE_LIBRARY", "name": "Get message template library", "description": "Browse the pre-built message template library for WhatsApp Business Account. This retrieves a list of available templates that can be used for messaging. Use when you need to discover available message templates for sending marketing, utility, or authentication messages to WhatsApp users." }, { "slug": "WHATSAPP_GET_TEMPLATE_STATUS", "name": "Get template status", "description": "Get the status and details of a specific message template. This is useful for checking if a template has been approved, rejected, or is still pending review." }, { "slug": "WHATSAPP_LIST_FLOWS", "name": "List WhatsApp Flows", "description": "List all WhatsApp Flows associated with the WhatsApp Business Account. Returns flow details including name, status, categories, and any validation errors. Use when you need to retrieve all available flows to select one for messaging or to check the status of existing flows." }, { "slug": "WHATSAPP_LIST_GROUPS", "name": "List WhatsApp Groups", "description": "List all WhatsApp groups associated with a business phone number. Use this action when you need to retrieve the list of groups that a business phone number is a member of. This is useful for managing group memberships, sending messages to groups, or auditing group participation. Results can be paginated using the 'after' and 'before' cursors from the paging response." }, { "slug": "WHATSAPP_LIST_QR_CODES", "name": "List qr codes", "description": "Get a list of all QR codes for a WhatsApp Business phone number. Use this action when you need to retrieve all message QR codes associated with a specific WhatsApp Business phone number. This is useful for managing existing QR codes, checking their status, or obtaining their image URLs for display. The action supports pagination through the 'after' and 'before' parameters, and can filter results by a specific QR code ID." }, { "slug": "WHATSAPP_LIST_SOLUTIONS", "name": "List WhatsApp Solutions", "description": "Retrieve a paginated list of Multi-Partner Solutions for a WhatsApp Business Account. Use when you need to view all multi-partner solutions (such as SMB solutions) associated with a WABA, including their status and owner application information. This action is useful for managing solution partnerships and understanding which applications have access to the WABA." }, { "slug": "WHATSAPP_PUBLISH_FLOW", "name": "Publish WhatsApp Flow", "description": "Publish a WhatsApp Flow to make it available for use. Use this action when you have finished designing and testing a WhatsApp Flow and are ready to make it available for users. The flow must be in DRAFT status and pass all validation checks before it can be published. Note: Once published, the flow cannot be unpublished. To make changes, you will need to create a new version of the flow." }, { "slug": "WHATSAPP_REGISTER_PHONE", "name": "Register WhatsApp Business Phone Number", "description": "Register a WhatsApp Business phone number for use with WhatsApp Cloud API. Use when you need to register a phone number that has been added to your WhatsApp Business Account. This action requires setting up a two-step verification PIN (6 digits) for the phone number. The phone number must be verified and properly configured in WhatsApp Manager before registration. Note: Registration is required before you can send messages from this phone number. Once registered, the phone number will be associated with your WhatsApp Business Account." }, { "slug": "WHATSAPP_REMOVE_ASSIGNED_USER", "name": "Remove Assigned User from WhatsApp Business Account", "description": "Remove a user's access from the WhatsApp Business Account. Use this action when you need to revoke a user's access to a WhatsApp Business Account. This action is irreversible — the user will immediately lose access and cannot be recovered without reassigning them to the account." }, { "slug": "WHATSAPP_SEND_CONTACTS", "name": "Send contacts", "description": "Send contacts WhatsApp number. Note: The message will be delivered to the recipient only if they have initiated a conversation first." }, { "slug": "WHATSAPP_SEND_INTERACTIVE_BUTTONS", "name": "Send interactive buttons", "description": "Send an interactive button message with up to 3 reply buttons to a WhatsApp user. Interactive button messages allow recipients to quickly respond by tapping predefined buttons. Perfect for yes/no questions, multiple choice selections, quick actions, or call-to-action scenarios. IMPORTANT REQUIREMENTS: - The recipient must be a registered WhatsApp user - The recipient must have messaged your business first within the last 24 hours (WhatsApp's customer service window) - You can include 1-3 buttons per message - Each button can have a title (max 20 chars) and unique ID (max 256 chars) Use cases: Customer service menus, appointment confirmations, feedback collection, product selections." }, { "slug": "WHATSAPP_SEND_INTERACTIVE_LIST", "name": "Send interactive list", "description": "Send an interactive list message to a WhatsApp number. List messages display a menu of options organized into sections. Users tap a button to view the list and select one option. Perfect for product catalogs, service menus, or guided workflows. Supports up to 10 sections with up to 10 items per section (100 total options). Note: Recipients must have messaged you first within the last 24 hours to receive this message." }, { "slug": "WHATSAPP_SEND_LOCATION", "name": "Send location", "description": "Send a location message with coordinates, name, and address to a WhatsApp user. This action allows you to share location information through WhatsApp Business API. The location message includes latitude/longitude coordinates, a location name, and address. Important: The recipient must have an active WhatsApp account. Additionally, you can only send free-form messages (like location messages) within the 24-hour customer service window after the recipient has initiated contact with your business. Outside this window, you must use approved message templates. Common error codes: - 133010: Recipient's phone number doesn't have a WhatsApp account - 131026: Message undeliverable (recipient may have blocked your business number) - 131047: Re-engagement message (outside 24-hour window, need to use template)" }, { "slug": "WHATSAPP_SEND_MEDIA", "name": "Send media", "description": "Send a media message to a WhatsApp number. Note: The media will be delivered to the recipient only if they have texted first." }, { "slug": "WHATSAPP_SEND_MEDIA_BY_ID", "name": "Send media by", "description": "Send media using a media ID from previously uploaded media. This is more efficient than sending media by URL as the media is already on WhatsApp servers. Use upload_media action first to get the media ID. Note: The media will be delivered to the recipient only if they have texted first." }, { "slug": "WHATSAPP_SEND_MESSAGE", "name": "Send message", "description": "Send a text message to a WhatsApp user. Important: The recipient phone number must be registered on WhatsApp and must have initiated a conversation with your business within the last 24 hours, OR you must use a template message (see WHATSAPP_SEND_TEMPLATE_MESSAGE) for the first message outside the 24-hour window. For test accounts, recipient numbers must be added to the test recipient list in Meta Business Suite before sending messages." }, { "slug": "WHATSAPP_SEND_TEMPLATE_MESSAGE", "name": "Send template message", "description": "Send a template message to a WhatsApp number." }, { "slug": "WHATSAPP_SET_TWO_STEP_VERIFICATION", "name": "Set WhatsApp Two-Step Verification PIN", "description": "Set or reset the two-step verification PIN for a WhatsApp Business phone number. Use when you need to change the 6-digit PIN that protects a registered phone number — for example after onboarding a new number, rotating credentials, or before re-registering. The initial PIN is set via register_phone; this action updates the PIN on an already-registered phone number. Endpoint: `POST /{phone-number-id}` with body `{\"pin\": \"XXXXXX\"}`. Meta's two-step-verification reference page is SPA-rendered, so the operation is documented as a property update on the phone-number node itself rather than a dedicated sub-path." }, { "slug": "WHATSAPP_SUBSCRIBE_APP", "name": "Subscribe to WABA Webhooks", "description": "Subscribe your application to receive webhook notifications for a WhatsApp Business Account (WABA). This action registers the application to receive webhook events from the specified WABA. Use this action when you need to start receiving webhook notifications for a specific WhatsApp Business Account, such as when setting up a new integration or re-establishing webhook subscriptions after they were removed." }, { "slug": "WHATSAPP_UNSUBSCRIBE_APP", "name": "Unsubscribe from WABA Webhooks", "description": "Unsubscribe your application from webhook events for a WhatsApp Business Account (WABA). This action removes the application subscription from the specified WABA's webhook configuration. This action is irreversible — once unsubscribed, the application will no longer receive webhook events for this WABA. Re-subscribing would need to be done through a separate action. Use this action when you need to stop receiving webhook notifications for a specific WhatsApp Business Account, such as when cleaning up old integrations or transitioning to a different app configuration." }, { "slug": "WHATSAPP_UPDATE_BUSINESS_ACCOUNT", "name": "Update WhatsApp Flow Metadata", "description": "Update metadata for a WhatsApp Flow including its name, categories, and endpoint URI. Use when you need to modify the configuration or settings of an existing WhatsApp Flow." }, { "slug": "WHATSAPP_UPDATE_BUSINESS_PROFILE", "name": "Update WhatsApp Business Profile", "description": "Update WhatsApp Business Profile information including business details, contact information, and profile settings. Use when you need to modify the business profile settings such as the about text, business category, address, description, email, and website URLs associated with a WhatsApp Business phone number. Note: Only fields that are provided will be updated. To clear an optional field, pass an empty string for text fields or an empty array for websites." }, { "slug": "WHATSAPP_UPDATE_COMMERCE_SETTINGS", "name": "Update WhatsApp commerce settings", "description": "Set or update commerce settings for a WhatsApp Business phone number. Use this action to enable or disable shopping cart functionality and product catalog visibility for a specific WhatsApp Business phone number. The settings control whether customers can browse products and make purchases directly within WhatsApp. Note: At least one setting (is_cart_enabled or is_catalog_visible) should be provided in the request for meaningful updates." }, { "slug": "WHATSAPP_UPDATE_FLOW_JSON", "name": "Update Flow JSON", "description": "Update the Flow JSON configuration for a WhatsApp Flow. Use this action when you need to update or upload a new flow.json file for an existing WhatsApp Flow. The Flow JSON defines the structure, screens, and behavior of the flow. This endpoint validates the JSON schema and returns any validation errors if the format is incorrect. Note: The uploaded Flow JSON will be validated against the Meta Flow JSON schema. If validation errors are returned, the update was not applied and you must fix the indicated issues before retrying." }, { "slug": "WHATSAPP_UPDATE_SETTINGS", "name": "Update WhatsApp Cloud API Settings", "description": "Update Cloud API settings for a WhatsApp Business phone number. Use this action to modify calling features, user identity verification settings, payload encryption configuration, and data storage preferences for a specific WhatsApp Business phone number. Note: Only one setting type can be updated per request (calling, user_identity_change, payload_encryption, or storage_configuration). The API uses a oneOf schema, so including multiple setting types will result in an error." }, { "slug": "WHATSAPP_UPLOAD_MEDIA", "name": "Upload media", "description": "Upload media files (images, videos, audio, documents, stickers) to WhatsApp servers. The uploaded media gets a media ID that can be used in send_media or other messaging actions. Supported formats: - Images: JPEG, PNG (max 5MB) - Videos: MP4, 3GPP (max 16MB) - Audio: AAC, M4A, AMR, MP3, OGG (max 16MB) - Documents: PDF, DOC, DOCX, PPT, PPTX, XLS, XLSX (max 100MB) - Stickers: WebP (max 500KB, 512x512 pixels)" }, { "slug": "WHATSAPP_UPSERT_MESSAGE_TEMPLATE", "name": "Upsert message template", "description": "Create or update a message template for the WhatsApp Business Account. Use this action when you need to create a new message template or update an existing one with the same name. If a template with the same name and language exists, it will be updated. Otherwise, a new template will be created. Templates must be approved by WhatsApp before they can be used. Templates are required for marketing messages and messages sent outside the 24-hour window." }, { "slug": "WHATSAPP_VERIFY_CODE", "name": "Verify Phone Number OTP Code", "description": "Verify the OTP code for a pre-verified phone number. Use when you need to complete phone number verification by submitting the received OTP code. The phone number must first be added to your WhatsApp Business Account and a verification code must have been requested through the setup process. This action completes the verification by submitting the 6-digit code received via SMS or voice call. Note: This action verifies a phone number that has been pre-verified and is awaiting OTP confirmation." } ], "triggers": [ { "slug": "WHATSAPP_MESSAGE_STATUS_UPDATED_TRIGGER", "name": "Message Status Updated", "description": "Triggers when a WhatsApp message status changes.\n\n IMPORTANT LIMITATION:\n WhatsApp Cloud API does not provide a native polling endpoint for message status.\n Status updates are ONLY delivered via webhooks in real-time. This trigger cannot\n directly poll the WhatsApp API for status updates.\n\n This trigger will return empty results as WhatsApp does not support this operation.\n To track message status updates, you must:\n 1. Set up a webhook endpoint to receive status notifications from WhatsApp\n 2. Store the webhook data in your own database\n 3. Use a different mechanism to query your stored webhook data\n\n For more information, see:\n - https://developers.facebook.com/docs/whatsapp/cloud-api/webhooks" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "whatsapp_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "whatsapp_business_management,whatsapp_business_messaging,business_management" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "WABA ID", "type": "string", "description": "Your WhatsApp Business Account ID, a 15-16 digit number like 102290129340398. Find it in Meta Business Suite under Settings → Accounts → WhatsApp accounts.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "whatsapp_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "System User Token", "type": "string", "description": "Permanent Meta system user access token (starts with 'EAA'). Create it in Meta Business Settings → Users → System users → Generate token with WhatsApp permissions.", "required": true, "default": null }, { "name": "generic_id", "displayName": "WABA ID", "type": "string", "description": "Your WhatsApp Business Account ID, a 15-16 digit number like 102290129340398. Find it in your Meta app under WhatsApp → API Setup, or in Business Suite → Settings → Accounts.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dynamics365", "name": "Dynamics 365", "logo": "https://logos.composio.dev/api/dynamics365", "description": "Dynamics 365 from Microsoft combines CRM, ERP, and productivity apps to streamline sales, marketing, customer service, and operations in one integrated platform", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_ACCOUNT", "name": "Create Account", "description": "Creates a new account entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_CASE", "name": "Create Case", "description": "Creates a new case (incident) entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new invoice entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_LEAD", "name": "Create Lead", "description": "Creates a new lead entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_OPPORTUNITY", "name": "Create Opportunity", "description": "Creates a new opportunity entity record in Dynamics CRM using the Web API. Some CRM configurations enforce `estimatedclosedate` and a transaction currency at the server level even though they are schema-optional; omitting them may cause the request to be rejected." }, { "slug": "DYNAMICS365_DYNAMICSCRM_CREATE_SALES_ORDER", "name": "Create Sales Order", "description": "Creates a new sales order entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_GET_A_INVOICE", "name": "Dynamicscrm get a invoice", "description": "Dynamicscrm get a invoice" }, { "slug": "DYNAMICS365_DYNAMICSCRM_GET_A_LEAD", "name": "Dynamicscrm get a lead", "description": "Dynamicscrm get a lead" }, { "slug": "DYNAMICS365_DYNAMICSCRM_GET_ALL_LEADS", "name": "Dynamicscrm get all leads", "description": "Dynamicscrm get all leads" }, { "slug": "DYNAMICS365_DYNAMICSCRM_UPDATE_CASE", "name": "Update Case", "description": "Updates an existing case (incident) entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_UPDATE_INVOICE", "name": "Update Invoice", "description": "Updates an existing invoice entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_UPDATE_LEAD", "name": "Update Lead", "description": "Updates an existing lead entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_DYNAMICSCRM_UPDATE_OPPORTUNITY", "name": "Update Opportunity", "description": "Updates an existing opportunity entity record in Dynamics CRM using the Web API. Some updates may be rejected if required relational fields (e.g., transactioncurrency) are absent from the record, even though they are not exposed as explicit parameters." }, { "slug": "DYNAMICS365_DYNAMICSCRM_UPDATE_SALES_ORDER", "name": "Update Sales Order", "description": "Updates an existing sales order entity record in Dynamics CRM using the Web API." }, { "slug": "DYNAMICS365_GET_ALL_INVOICES_ACTION", "name": "Get all invoices action", "description": "Get all invoices action" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft_dynamics_365_crm_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://{{subdomain}}.api.crm.dynamics.com/user_impersonation,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Dynamics 365 Organization Name", "type": "string", "description": "Your Dynamics 365 organization name (e.g., myorg in myorg.crm.dynamics.com)", "required": true, "default": null } ], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } } ] }, { "slug": "zendesk", "name": "Zendesk", "logo": "https://logos.composio.dev/api/zendesk", "description": "Zendesk provides customer support software with ticketing, live chat, and knowledge base features, enabling efficient helpdesk operations and customer engagement", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 452, "triggerCount": 2, "version": "20260703_00", "tools": [ { "slug": "ZENDESK_APPLY_ZENDESK_MACRO", "name": "Apply Zendesk Macro Preview", "description": "Preview how a Zendesk macro would affect a ticket without actually applying it. Returns the ticket object as it would appear after the macro is applied, showing any changes to fields, comments, status, or other properties. Use this action to review macro changes before applying them to ensure the outcome is as expected." }, { "slug": "ZENDESK_AUTOCOMPLETE_PROBLEMS", "name": "Autocomplete Problems", "description": "Autocomplete problems in Zendesk. Use when you need to find problem suggestions based on a partial search text for ticket categorization or troubleshooting." }, { "slug": "ZENDESK_AUTOCOMPLETE_USERS", "name": "Autocomplete Users", "description": "Search for Zendesk users by name prefix using the POST /api/v2/users/autocomplete endpoint. Returns an array of users whose name starts with the provided query. Use when you need to find users by name prefix for quick user lookup and autocomplete functionality." }, { "slug": "ZENDESK_CHECK_HOST_MAPPING_VALIDITY_FOR_EXISTING_BRAND", "name": "Check Host Mapping Validity for Existing Brand", "description": "Check the host mapping validity for an existing brand in Zendesk. Returns the current CNAME record, expected CNAME values, validity status, and the reason for validity or invalidity. Use this action when you need to verify that DNS records are correctly configured for an existing brand that has already been created in Zendesk. This action requires a brand ID rather than subdomain/host_mapping parameters." }, { "slug": "ZENDESK_COUNT_DELETED_USERS", "name": "Count Deleted Users", "description": "Count deleted users in Zendesk. Returns the total number of deleted users. Use when you need to know how many users have been deleted for reporting, cleanup, or operational purposes." }, { "slug": "ZENDESK_COUNT_USER_CCD_TICKETS", "name": "Count User CCD Tickets", "description": "Count tickets where the specified user is CCD (carbon copy distribution). Returns an approximate count of tickets where the user appears in the CCD field. Use when you need to know how many tickets a user is copied on for reporting or operational purposes." }, { "slug": "ZENDESK_COUNT_ZENDESK_CUSTOM_OBJECT_RECORDS", "name": "Count Custom Object Records", "description": "Count the number of records in a specific Zendesk custom object. Use when you need to determine the total number of records for a custom object type, which is useful for reporting, capacity planning, or validation before creating new records. This is a read-only, idempotent operation. Example use cases: - Check if a custom object has records before deleting - Get record count for reporting dashboards - Verify capacity before bulk operations" }, { "slug": "ZENDESK_COUNT_ZENDESK_ORGANIZATIONS", "name": "Count Zendesk Organizations", "description": "Count the number of organizations in Zendesk. Returns an approximate count of organizations with the timestamp of when the count was last calculated. This is a read-only, idempotent operation. Use when you need to know the total number of organizations for reporting, capacity planning, or operational purposes. For detailed per-organization information, use ZENDESK_GET_ALL_ZENDESK_ORGANIZATIONS instead." }, { "slug": "ZENDESK_CREATE_ACCESS_RULE", "name": "Create Access Rule", "description": "Create an access rule for a custom object in Zendesk. Access rules control which users can view or modify custom object records based on conditions. Use when you need to set up data access policies for custom objects, such as limiting access to records created by the current user or records assigned to specific groups. Returns the created access rule with its ID, title, description, conditions, and timestamps." }, { "slug": "ZENDESK_CREATE_APPS_INSTALLATION", "name": "Install Zendesk App", "description": "Install a Zendesk app in the account. Use when you need to add an app from the Zendesk marketplace or a private app to your Zendesk instance. You must provide the app_id and settings. This action is irreversible once installed." }, { "slug": "ZENDESK_CREATE_APPS_NOTIFY", "name": "Send Notification to App", "description": "Send a notification to currently open instances of a Zendesk app. Use when you need to push real-time notifications or data to a Zendesk app that is currently open in an agent's interface. The notification triggers an event in the app, which can then respond with custom behavior (e.g., display a popup, update UI, trigger a workflow). Only works with apps that are currently open in the Zendesk interface." }, { "slug": "ZENDESK_CREATE_AUTOCOMPLETE_TAGS", "name": "Create Autocomplete Tags", "description": "Search for Zendesk tags using autocomplete via POST request body. Use when you need to find tag suggestions based on a partial tag name for tagging tickets or organizing content." }, { "slug": "ZENDESK_CREATE_AUTOMATION", "name": "Create Automation", "description": "Create a new automation in Zendesk. Automations are business rules that automatically perform actions on tickets when certain conditions are met. Automations run server-side and don't require user interaction. Use this action when you need to: - Automatically assign tickets based on conditions - Change ticket priority/status based on rules - Add tags to tickets matching certain criteria - Notify agents or teams based on ticket properties - Implement escalation workflows Note: Automations must have at least one condition that is time-based (like created_at, updated_at) OR check one of: status, type, group_id, assignee_id, or requester_id." }, { "slug": "ZENDESK_CREATE_BOOKMARK", "name": "Create Bookmark", "description": "Create a bookmark for a ticket in Zendesk. Bookmarks allow you to save references to tickets for quick access. Use this action when you need to: - Save a ticket for later reference - Mark an important ticket for quick access - Create a watchlist-like functionality for specific tickets" }, { "slug": "ZENDESK_CREATE_COMMENT_REDACTION", "name": "Redact Zendesk Comment", "description": "Redact sensitive content from a ticket comment in Zendesk using the Agent Workspace method. Use when you need to permanently remove or hide sensitive information such as personal data, credentials, or inappropriate content from ticket comments. This action is irreversible — redacted content cannot be recovered once removed. Note: Requires Agent Workspace to be enabled and (for Enterprise accounts) agents need a custom role with redaction permissions. Closed tickets cannot have comments redacted." }, { "slug": "ZENDESK_CREATE_CUSTOM_OBJECT_BULK_JOB", "name": "Create Custom Object Bulk Job", "description": "Create a bulk job to perform batch operations (create, update, delete, upsert) on custom object records in Zendesk. Use when you need to process multiple records of a custom object type efficiently in a single API call. Returns a job ID for tracking the operation progress via GET /api/v2/custom_objects/{custom_object_key}/jobs/{job_id}." }, { "slug": "ZENDESK_CREATE_CUSTOM_OBJECT_RECORD", "name": "Create Custom Object Record", "description": "Create a new record for a custom object in Zendesk. Use when you need to add a new entry to a custom object type. The record is identified by its unique ID returned in the response. This action creates a new custom object record and returns the complete record data including the generated ID and timestamps." }, { "slug": "ZENDESK_CREATE_CUSTOM_OBJECT_RECORD_ATTACHMENT", "name": "Create Custom Object Record Attachment", "description": "Create an attachment for a custom object record in Zendesk. Use when you need to attach files (documents, images, etc.) to a custom object record. The file is uploaded as a multipart/form-data request. The response includes the attachment details and malware scan status." }, { "slug": "ZENDESK_CREATE_CUSTOM_STATUSES", "name": "Create Custom Ticket Status", "description": "Create a new custom ticket status in Zendesk. Custom statuses allow agents to define more granular ticket states beyond the default status categories. Use when you need to add custom ticket workflow states to better reflect your support process. Both `agent_label`, `status_category`, `end_user_label`, and `description` are required. The status category determines which lifecycle phase the custom status belongs to." }, { "slug": "ZENDESK_CREATE_DELETION_SCHEDULE", "name": "Create Deletion Schedule", "description": "Create a new deletion schedule in Zendesk that automatically deletes records matching specified conditions on a schedule. Deletion schedules are used for data retention and cleanup policies. Use this action when you need to: - Automatically clean up old closed tickets - Remove inactive users or attachments - Enforce data retention policies - Schedule periodic deletion of bot conversations Note: The 'object' field (entity type to delete) cannot be modified after creation. Use conditions to specify which records to delete - for time-based deletion, use 'duration_since_last_update' field with 'greater_than' operator and ISO 8601 duration values (e.g., 'P30D' for 30 days)." }, { "slug": "ZENDESK_CREATE_DYNAMIC_CONTENT_ITEMS", "name": "Create Zendesk Dynamic Content Item", "description": "Create a new dynamic content item with locale variants in Zendesk. Dynamic content items enable localized content for ticket fields, macros, and other text-based content. Use when setting up multilingual support or creating template content that varies by user locale. The item's name cannot be changed after creation. Ensure the name is descriptive and follows your naming conventions." }, { "slug": "ZENDESK_CREATE_DYNAMIC_CONTENT_ITEMS_VARIANTS", "name": "Create Zendesk Dynamic Content Item Variant", "description": "Create a new locale variant for an existing dynamic content item in Zendesk. Use when you need to add support for a new locale to an existing dynamic content item. Note: You can only create one variant per locale per dynamic content item. Use the update action to modify existing variants." }, { "slug": "ZENDESK_CREATE_END_USER_IDENTITY", "name": "Create End User Identity", "description": "Add an identity (email or phone) to an end user's profile in Zendesk. Use when you need to link a new email address or phone number to an existing end user account." }, { "slug": "ZENDESK_CREATE_GROUP_MEMBERSHIPS", "name": "Create Zendesk Group Membership", "description": "Create a group membership in Zendesk, assigning an agent to a group. Use when you need to add an agent to a specific group for ticket routing, permissions, or team organization. The user_id and group_id are both required parameters. Note: The user must exist and have appropriate permissions to be assigned to groups. The group must also exist." }, { "slug": "ZENDESK_CREATE_IMPORTS_TICKETS_CREATE_MANY", "name": "Bulk Import Tickets", "description": "Bulk import tickets into Zendesk by posting up to 100 ticket objects at a time. Use when migrating tickets from another system or creating multiple tickets in a single API call. The operation returns a job_status payload; the initial status is typically 'queued' or 'completed' for small batches. This action is useful for data migration, test data setup, and bulk ticket creation workflows." }, { "slug": "ZENDESK_CREATE_MANY_DYNAMIC_CONTENT_ITEMS_VARIANTS", "name": "Create Many Dynamic Content Variants", "description": "Create many locale variants for an existing dynamic content item in Zendesk. Use when you need to add multiple language variants to a dynamic content item in a single operation. This action is efficient for bulk-adding translations to support multilingual content. This action is idempotent - running it multiple times with the same variants will create duplicate variants if they don't already exist. Consider listing existing variants first to avoid duplicates." }, { "slug": "ZENDESK_CREATE_MANY_TICKETS", "name": "Create Many Zendesk Tickets", "description": "Create many tickets in Zendesk in a single request. Accepts an array of up to 100 ticket objects. The operation is handled asynchronously — a background job is queued and you receive a job_status payload with an initial status of 'queued' or 'working'. Poll the job_status URL or use ZENDESK_GET_APPS_JOB_STATUS to check for completion and view per-ticket results. Use when creating multiple tickets at once or seeding test data. This action is irreversible — tickets created cannot be easily undone once the job completes. Ensure the tickets list is accurate before submitting." }, { "slug": "ZENDESK_CREATE_MANY_USERS", "name": "Create Many Zendesk Users", "description": "Create many users in Zendesk in a single request. Accepts up to 100 user objects. The operation is handled asynchronously — a background job is queued and you receive a job_status payload with an initial status of 'queued' or 'working'. Poll the job_status URL or use ZENDESK_GET_APPS_JOB_STATUS to check for completion and view per-user results. Use when onboarding multiple users at once or seeding test data. Note: This action is idempotent — re-running with the same external_ids may update existing users depending on Zendesk configuration." }, { "slug": "ZENDESK_CREATE_OBJECT_TRIGGER", "name": "Create Object Trigger", "description": "Create a new trigger for a custom object in Zendesk. Custom object triggers are business rules that automatically perform actions when certain conditions are met on custom object records. Use this action when you need to: - Send notifications when custom object records are created or updated - Automatically update fields on custom object records - Add or remove tags based on custom object conditions - Implement automated workflows for custom object data This action is idempotent - creating a trigger with the same name multiple times will result in duplicate triggers unless the name is changed." }, { "slug": "ZENDESK_CREATE_ORGANIZATION_FIELD", "name": "Create Organization Field", "description": "Create a custom organization field in Zendesk. Use when you need to add a new custom field type (such as text, dropdown, checkbox, date, etc.) to track additional organization attributes. The field key must be unique and can only contain letters, numbers, and underscores." }, { "slug": "ZENDESK_CREATE_ORGANIZATION_MEMBERSHIPS", "name": "Create Organization Membership", "description": "Create a new organization membership in Zendesk by assigning a user to an organization. Use when you need to associate a user with an organization so they can access organization-specific tickets and data. Returns a 422 error if the user is already assigned to the organization. This action is idempotent in that creating a duplicate membership will fail with a specific error, but the operation itself is not naturally idempotent." }, { "slug": "ZENDESK_CREATE_ORGANIZATION_MEMBERSHIPS_CREATE_MANY", "name": "Create Many Organization Memberships", "description": "Create multiple organization memberships in Zendesk by posting up to 100 membership objects at a time. Each membership links a user to an organization. Use when onboarding multiple users to organizations in bulk, such as during team migrations or organizational restructuring. The operation returns a job_status payload; the initial status is typically 'queued' for larger batches." }, { "slug": "ZENDESK_CREATE_ORGANIZATION_MERGE", "name": "Merge Zendesk Organizations", "description": "Merge two Zendesk organizations by combining all users, tickets, and data from the losing organization into the winning organization. This action is irreversible — once merged, the losing organization and all its data cannot be recovered. Use when you need to consolidate duplicate organizations or combine organization data into a single organization." }, { "slug": "ZENDESK_CREATE_ORGANIZATIONS_TAGS", "name": "Set Organization Tags", "description": "Set organization tags in Zendesk by making a POST request to replace the tags on an organization. Use when you need to categorize or label organizations with specific tags for filtering and organization purposes. This operation replaces all existing tags on the organization with the new set provided. Note: This action is not idempotent as it replaces existing tags rather than adding to them." }, { "slug": "ZENDESK_CREATE_ORGANIZATION_SUBSCRIPTION", "name": "Create Organization Subscription", "description": "Create an organization subscription in Zendesk. This subscribes a user to receive notifications and updates related to a specific organization. Use when you need to add a user to an organization's subscription list so they can access organization-related resources and receive notifications." }, { "slug": "ZENDESK_CREATE_OR_UPDATE_MANY_USERS", "name": "Create Or Update Many Users", "description": "Create or update multiple users in Zendesk in a single request. Use when you need to batch create or update up to 100 users at once. New users require a 'name' field; existing users are matched by 'id'. Returns a job_status with results for each operation. This action is idempotent — re-running with the same parameters will produce the same results." }, { "slug": "ZENDESK_CREATE_OR_UPDATE_ORGANIZATION", "name": "Create Or Update Organization", "description": "Create or update a Zendesk organization in a single operation. If an organization with the same external_id already exists, it is updated. Otherwise, a new organization is created. Use when you need to ensure an organization exists without checking for duplicates first. Note: For updates, you must specify the external_id to match the existing organization. Name is not available as a matching criteria." }, { "slug": "ZENDESK_CREATE_OR_UPDATE_USER", "name": "Create or Update User", "description": "Create or update a Zendesk user. If a user with the same email or external_id exists, it updates that user. Otherwise, it creates a new user. Use when you need to upsert user records - idempotent based on email or external_id matching. Returns 200 for existing users, 201 for newly created users." }, { "slug": "ZENDESK_CREATE_PUSH_NOTIFICATION_DEVICES_DESTROY_MANY", "name": "Bulk Unregister Push Notification Devices", "description": "Bulk unregister push notification devices in Zendesk. This action is irreversible — the devices will be permanently removed from receiving push notifications and cannot be recovered once removed. Use when cleaning up obsolete device tokens or removing test devices from receiving push notifications." }, { "slug": "ZENDESK_CREATE_RESOURCE_COLLECTIONS", "name": "Create Resource Collection", "description": "Create a resource collection in Zendesk. Use when you need to batch multiple operations on Zendesk resources (like tickets) into a single request. The API processes the collection as a background job and returns a job status object. Note: This action queues a background job. Poll the returned job_status.url to check when the collection has been processed." }, { "slug": "ZENDESK_CREATE_SIDE_CONVERSATION", "name": "Create Side Conversation", "description": "Create a private side conversation on a Zendesk ticket. Side conversations are agent-to-agent communications that don't notify the customer. Use this action when you need to discuss a ticket privately with another agent, escalate to a specialist, or coordinate on sensitive issues without customer visibility. Recipients can include Zendesk users (by ID or email), Slack channels, support groups, or Microsoft Teams channels." }, { "slug": "ZENDESK_CREATE_SUPPORT_ADDRESS", "name": "Create Support Address", "description": "Create a new support address (recipient address) in Zendesk. Use when you need to add a new email address for receiving support requests. The email address must follow Zendesk's format (`{local-part}@{accountname}.zendesk.com`) for internal addresses, or be an existing external email with forwarding properly configured. The created address will have verification statuses that indicate whether DNS records (CNAME, SPF) are properly configured. Note that you cannot change the email address of an existing support address after creation." }, { "slug": "ZENDESK_CREATE_SUSPENDED_TICKETS_EXPORT", "name": "Export Suspended Tickets", "description": "Export Suspended Tickets from Zendesk Support. Use when you need to export all suspended tickets for compliance review, audit purposes, or data analysis. This action enqueues a job that creates a CSV file; when complete, Zendesk emails the requester a link to download the CSV. Suspended tickets are sorted by update timestamp in ascending order. Rate limited to one request per minute. Note: This action is read-only and returns the export job status. The actual CSV will be sent via email when the job completes." }, { "slug": "ZENDESK_CREATE_TICKET_CONTENT_PIN", "name": "Create Ticket Content Pin", "description": "Create a ticket content pin in Zendesk. Content pins allow you to attach helpful resources like Help Center articles or external content directly to tickets for easy reference. Use this action when you need to: - Attach a Help Center article to a ticket for context - Pin an external knowledge base article to a ticket - Add relevant documentation or resources to a support ticket" }, { "slug": "ZENDESK_CREATE_TICKET_FIELD", "name": "Create Ticket Field", "description": "Create a custom ticket field in Zendesk with various field types. Use when you need to add a new custom field (such as text, dropdown, checkbox, date, numeric, regex-validated, or lookup) to capture additional information on tickets. The field title is required; description, required flag, and custom options are optional." }, { "slug": "ZENDESK_CREATE_TICKET_FIELD_OPTION", "name": "Create Ticket Field Option", "description": "Create or update an option for a dropdown or multiselect ticket field. Use when you need to add a new selectable option to a custom ticket field of type 'multiselect' or 'tagger'. If an option with the same value already exists, it will be updated with the provided name. This action is idempotent - running it multiple times with the same value will update the existing option rather than creating duplicates." }, { "slug": "ZENDESK_CREATE_TRIGGER", "name": "Create Trigger", "description": "Create a new trigger in Zendesk. Triggers are business rules that automatically perform actions on tickets when certain conditions are met. Unlike automations, triggers execute immediately when tickets are created or updated. Use this action when you need to: - Automatically change ticket status based on conditions - Assign tickets to agents or groups based on rules - Add tags to tickets matching certain criteria - Send notifications to agents, groups, or external systems - Update custom fields based on ticket properties Note: Triggers must have at least one condition in the 'all' array that references a time-based field (like created_at, updated_at) OR checks one of: status, type, group_id, assignee_id, requester_id, custom_status_id." }, { "slug": "ZENDESK_CREATE_TRIGGER_CATEGORIES_JOB", "name": "Create Trigger Categories Batch Job", "description": "Create a batch job for ticket trigger categories in Zendesk. Use this action when you need to perform batch operations on multiple trigger categories at once. The action 'patch' allows updating trigger categories in bulk. Returns job status and results that can be polled for completion. Endpoint: POST /api/v2/trigger_categories/jobs" }, { "slug": "ZENDESK_CREATE_TRIGGER_CATEGORY", "name": "Create Zendesk Trigger Category", "description": "Create a new trigger category in Zendesk. Trigger categories are used to organize and group triggers for better management. Use when setting up automated workflows or organizing business rules. This action creates a trigger category with the specified name and optional position. The name must be unique within the account." }, { "slug": "ZENDESK_CREATE_USER_FIELD_OPTION", "name": "Create User Field Option", "description": "Create or update an option for a dropdown or multiselect user field. Use when you need to add a new selectable option to a custom user field of type 'multiselect' or 'tagger'. If an option with the same value already exists, it will be updated with the provided name. This action is idempotent - running it multiple times with the same value will update the existing option rather than creating duplicates." }, { "slug": "ZENDESK_CREATE_USER_IDENTITY", "name": "Create User Identity", "description": "Tool to add an identity to a user's profile in Zendesk. An agent can add multiple identities to a user (e.g., multiple email addresses). Use this when a user needs to be contacted via a new channel or needs an additional identifier. Use when you need to add an additional identity (email, phone, social) to an existing Zendesk user." }, { "slug": "ZENDESK_CREATE_USER_PROFILES_EVENTS", "name": "Create User Profile Event", "description": "Store an event against a Sunshine user profile. Creates the profile if it doesn't exist. Use when tracking user activities such as purchases, sign-ups, or custom application events. The event is associated with the profile identified by the provided identifiers. This action is useful for building user activity timelines and triggering automations based on profile events." }, { "slug": "ZENDESK_CREATE_USERS_LOGOUT_MANY", "name": "Logout Many Zendesk Users", "description": "Log out multiple users in Zendesk by ending their active sessions. This action is irreversible — the affected users will be logged out and will need to re-authenticate. Use when you need to immediately terminate sessions for multiple users (e.g., after security incident, offboarding, or credential revocation). The operation accepts up to 100 user IDs at a time." }, { "slug": "ZENDESK_CREATE_USERS_ORGANIZATION_MEMBERSHIPS", "name": "Create User Organization Membership", "description": "Create a new organization membership for a specific user in Zendesk by assigning a user to an organization. Use when you need to associate an existing user with an organization so they can access organization-specific tickets and data. This action targets a specific user by their ID. This action is idempotent in that creating a duplicate membership will fail with a specific error, but the operation itself is not naturally idempotent." }, { "slug": "ZENDESK_CREATE_USERS_TAGS", "name": "Create Users Tags", "description": "Set tags on a Zendesk user via POST request to /api/v2/users/{user_id}/tags. Use when you need to add or update tags on a specific user. Note that this replaces all existing tags on the user with the provided set of tags. This action is idempotent." }, { "slug": "ZENDESK_CREATE_VIEW", "name": "Create View", "description": "Create a new view in Zendesk. Views are saved ticket filters that help agents organize and prioritize their work. They can filter tickets by conditions like status, priority, assignee, and more. Use this action when you need to: - Create a custom view for a specific team or workflow - Set up views for different ticket priorities or statuses - Create views with restricted access for specific groups - Configure views with specific columns, grouping, and sort order Note: At minimum, the 'all' conditions must include a condition checking 'status', 'type', 'group_id', 'assignee_id', or 'requester_id'." }, { "slug": "ZENDESK_CREATE_VIEWS_PREVIEW", "name": "Preview View", "description": "Preview a Zendesk view by constructing conditions and execution settings to see which tickets match. Use when you need to test or validate view conditions before saving, or to retrieve a live preview of tickets matching specific filter criteria without creating a permanent view. This action is useful for verifying view logic, testing conditions, and previewing results before committing to a saved view." }, { "slug": "ZENDESK_CREATE_VIEWS_PREVIEW_COUNT", "name": "Preview View Ticket Count", "description": "Preview ticket count for a view in Zendesk. Returns the number of tickets matching the specified conditions before saving the view. Use when you want to verify how many tickets will match a view's filter criteria before creating or updating a view. This action sends a POST request to /api/v2/views/preview/count with view conditions and returns the matching ticket count. Rate limited to 5 requests per minute, per view, per agent." }, { "slug": "ZENDESK_CREATE_ZENDESK_ATTACHMENTS", "name": "Upload Zendesk Attachment", "description": "Upload a file attachment to Zendesk. Returns an attachment object with an ID that can be used to attach the file to a ticket comment. Use when you need to add files (documents, images, logs, etc.) to Zendesk tickets. The upload token returned is valid for 60 minutes. After uploading, attach the file to a ticket by including the attachment token in your ticket comment." }, { "slug": "ZENDESK_CREATE_ZENDESK_CUSTOM_OBJECT", "name": "Create Zendesk Custom Object", "description": "Create a new custom object in Zendesk. Use when you need to define a new custom object type to store and manage custom data. The key is immutable once created, so choose carefully." }, { "slug": "ZENDESK_CREATE_ZENDESK_CUSTOM_OBJECT_FIELD", "name": "Create Zendesk Custom Object Field", "description": "Create a new field for a custom object in Zendesk. Use when you need to add a new attribute or data field to an existing custom object type. The key is immutable once created. This action is idempotent for the same key, but the key parameter must be unique per custom object." }, { "slug": "ZENDESK_CREATE_ZENDESK_GROUP", "name": "Create Zendesk Group", "description": "Create a new group in Zendesk. The group name must be unique within the account. Use when organizing agents into teams for ticket assignment and routing. Returns the full group object including the assigned ID — persist it for subsequent operations." }, { "slug": "ZENDESK_CREATE_ZENDESK_IMPORT_TICKET", "name": "Import Zendesk Ticket", "description": "Import a ticket into Zendesk with historical timestamps. This action creates tickets with past `created_at`, `updated_at`, or `solved_at` values, useful for migrating historical data. For real-time ticket creation, use ZENDESK_CREATE_ZENDESK_TICKET. Tickets created with 'closed' status and archive_immediately=true bypass normal lifecycle and go directly to archive." }, { "slug": "ZENDESK_CREATE_ZENDESK_ORGANIZATION", "name": "Create Zendesk Organization", "description": "Create a new organization in Zendesk. After creation, the organization ID is auto-assigned and returned. Verify the exact ID before performing downstream operations that target this organization. Multiple organizations may share similar names — always confirm the correct organization by ID. This action is irreversible — the organization cannot be recovered once deleted. Use this action when you need to register a new company, customer, or group as a Zendesk organization so you can assign users, tickets, or other resources to it." }, { "slug": "ZENDESK_CREATE_ZENDESK_REQUEST", "name": "Create Zendesk Request", "description": "Create a new request in Zendesk. Use when an end user needs to submit a support request through the API. The request will be created with the provided subject, description, priority, and other optional fields. Returns the created request with its ID and URL." }, { "slug": "ZENDESK_CREATE_ZENDESK_TARGET", "name": "Create Zendesk Target", "description": "Create a target in Zendesk for triggering outbound integrations. Use when you need to set up a notification channel or integration with external services like Campfire, email, URL webhooks, or other supported targets. Targets can be used with triggers and automation rules. Note: URL targets are being discontinued October 28, 2024 in favor of webhooks. Email targets remain unaffected." }, { "slug": "ZENDESK_CREATE_ZENDESK_TICKET", "name": "Create Zendesk Ticket", "description": "Create a ticket in Zendesk with full support for all ticket fields. Returns `ticket_id` and `ticket_url`; use ZENDESK_GET_ZENDESK_TICKET_BY_ID for the full ticket object." }, { "slug": "ZENDESK_CREATE_ZENDESK_TICKET_OR_VOICEMAIL_TICKET", "name": "Create Ticket or Voicemail Ticket", "description": "Create a ticket in Zendesk via the voice/channel API endpoint. Use this action when you need to create tickets from phone calls, voicemails, or other voice channel interactions. Returns `ticket_id` and `ticket_url` for the created ticket. This endpoint is specifically for Zendesk Talk/voice channel ticket creation." }, { "slug": "ZENDESK_CREATE_ZENDESK_USER", "name": "Create Zendesk User", "description": "Tool to create a new user in Zendesk. Search for existing users first to avoid duplicate accounts with the same email. Use when you need to onboard a user with specific details." }, { "slug": "ZENDESK_CREATE_ZENDESK_USER_FIELD", "name": "Create Zendesk User Field", "description": "Create a custom user field in Zendesk. Use when you need to define a new custom field to capture additional user data. Supports text, checkbox, dropdown, multiselect, date, integer, decimal, regexp validation, and lookup types. Only administrators can create user fields." }, { "slug": "ZENDESK_DELETE_ACCESS_RULE", "name": "Delete Access Rule", "description": "Delete an access rule for a custom object in Zendesk. This action is irreversible — the access rule cannot be recovered once deleted. Use when you need to remove access control rules for custom objects." }, { "slug": "ZENDESK_DELETE_AUTOMATION", "name": "Delete Zendesk Automation", "description": "Permanently deletes an automation in Zendesk. This action is irreversible — the automation will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete automations or removing test data. **Note**: You might be restricted from deleting automations that are active or referenced by other rules." }, { "slug": "ZENDESK_DELETE_BUSINESS_HOURS_SCHEDULE", "name": "Delete Zendesk Business Hours Schedule", "description": "Permanently deletes a business hours schedule in Zendesk. Use when you need to remove obsolete schedules or clean up test data. This action is irreversible — the schedule cannot be recovered once removed. Admin permissions are required. **Note**: Schedules that are currently in use by active SLA policies or other configurations may not be deletable." }, { "slug": "ZENDESK_DELETE_CUSTOM_OBJECT_RECORD_ATTACHMENT", "name": "Delete Custom Object Record Attachment", "description": "Permanently deletes an attachment from a custom object record in Zendesk. Use this action when you need to remove a specific file attachment from a custom object record. This action is irreversible — the attachment will be permanently deleted and cannot be recovered once removed. **Note**: Only attachments that are not required and not the primary attachment can be deleted." }, { "slug": "ZENDESK_DELETE_CUSTOM_OBJECT_RECORD_BY_EXTERNAL_ID_OR_NAME", "name": "Delete Custom Object Record", "description": "Permanently deletes a custom object record in Zendesk by its external ID or name. Use this action when you need to remove a specific record from a custom object. This action is irreversible — the record cannot be recovered once deleted. Requires admin permissions. **Note**: Either external_id or name must be provided to identify the record to delete." }, { "slug": "ZENDESK_DELETE_DELETED_TICKET", "name": "Delete Deleted Ticket Permanently", "description": "Permanently deletes a soft-deleted ticket from Zendesk. This action is irreversible - once a ticket is permanently deleted, it cannot be recovered. Use this action to remove tickets that were previously soft-deleted using the delete_ticket action. Use this action when you need to permanently remove a ticket that has already been deleted and is no longer accessible through normal operations." }, { "slug": "ZENDESK_DELETE_DELETION_SCHEDULE", "name": "Delete Zendesk Deletion Schedule", "description": "Permanently deletes a deletion schedule in Zendesk. This action is irreversible — the deletion schedule will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete deletion schedules or removing test data." }, { "slug": "ZENDESK_DELETE_GROUP_MEMBERSHIP", "name": "Delete Zendesk Group Membership", "description": "Permanently deletes a group membership in Zendesk, immediately removing a user from a group. This action is irreversible — the group membership cannot be recovered once deleted. Use when cleaning up obsolete group memberships or removing users from groups. **Note**: Deleting a group membership does not delete the user or the group itself, only the association between them." }, { "slug": "ZENDESK_DELETE_GROUP_MEMBERSHIPS_DESTROY_MANY", "name": "Bulk Delete Zendesk Group Memberships", "description": "Bulk delete group memberships in Zendesk. Immediately removes users from groups. This action is irreversible — the memberships will be permanently deleted and cannot be recovered once removed. Use when cleaning up test data or removing obsolete group memberships in one call. Returns a job_status payload; deletions complete asynchronously." }, { "slug": "ZENDESK_DELETE_MACRO", "name": "Delete Zendesk Macro", "description": "Permanently deletes a macro in Zendesk. This action is irreversible — the macro will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete macros or removing test data. **Note**: You might be restricted from deleting macros that are active or referenced by other rules." }, { "slug": "ZENDESK_DELETE_MACROS_DESTROY_MANY", "name": "Bulk Delete Zendesk Macros", "description": "Bulk delete macros in Zendesk. This action is irreversible — the macros will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete macros or removing test data." }, { "slug": "ZENDESK_DELETE_MANY_AUTOMATIONS", "name": "Bulk Delete Zendesk Automations", "description": "Bulk delete automations in Zendesk. This action is irreversible — the automations will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete automations or removing test data." }, { "slug": "ZENDESK_DELETE_MANY_OBJECT_TRIGGERS", "name": "Bulk Delete Zendesk Custom Object Triggers", "description": "Bulk delete triggers for a Zendesk custom object. This action is irreversible — the triggers will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete triggers or removing test data for a specific custom object. Returns a success indicator upon completion. Requires the custom object key and a comma-separated list of trigger IDs to identify which triggers to delete." }, { "slug": "ZENDESK_DELETE_MANY_ORGANIZATION_MEMBERSHIPS", "name": "Bulk Delete Zendesk Organization Memberships", "description": "Bulk delete organization memberships in Zendesk. This action is irreversible — the memberships will be permanently removed and cannot be recovered once deleted. Use when cleaning up obsolete organization memberships or removing users from organizations. Returns a job_status payload (initial status typically 'queued'); deletions complete asynchronously and may require follow-up polling to confirm completion." }, { "slug": "ZENDESK_DELETE_MANY_VIEWS", "name": "Bulk Delete Zendesk Views", "description": "Bulk delete views in Zendesk. This action is irreversible — the views will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete views or removing test data. Returns 204 No Content on success." }, { "slug": "ZENDESK_DELETE_ORGANIZATION_FIELD", "name": "Delete Zendesk Organization Field", "description": "Permanently deletes an organization field in Zendesk. Use this action when you need to remove a custom organization field from the system. This action is irreversible — the organization field will be permanently deleted and cannot be recovered once removed. Any data stored in this field across all organizations will be lost. **Note**: Ensure no organizations are using this field before deletion, as the deletion cannot be undone." }, { "slug": "ZENDESK_DELETE_ORGANIZATION_MEMBERSHIP", "name": "Delete Organization Membership", "description": "Permanently removes a user from an organization in Zendesk by deleting the organization membership. This action is irreversible — the membership cannot be recovered once deleted. Use this action when you need to remove a user's association with an organization. This operation requires admin permissions." }, { "slug": "ZENDESK_DELETE_ORGANIZATIONS_TAGS", "name": "Delete Organization Tags", "description": "Remove all tags from a Zendesk organization. Use when you need to clear organization tags as part of cleanup or reorganization tasks. This action is irreversible — the tags will be permanently removed from the organization and cannot be recovered once deleted." }, { "slug": "ZENDESK_DELETE_ORGANIZATION_SUBSCRIPTION", "name": "Delete Zendesk Organization Subscription", "description": "Permanently deletes an organization subscription in Zendesk. This action is irreversible — the subscription cannot be recovered once removed. Use when you need to remove an organization subscription." }, { "slug": "ZENDESK_DELETE_RESOURCE_COLLECTIONS", "name": "Delete Resource Collection", "description": "Delete a resource collection in Zendesk. Use when you need to remove a resource collection that is no longer needed. This action returns a job status that can be polled to track the deletion progress. This operation is irreversible; confirm the correct resource_collection_id before executing." }, { "slug": "ZENDESK_DELETE_SUSPENDED_TICKETS_DESTROY_MANY", "name": "Bulk Delete Zendesk Suspended Tickets", "description": "Permanently deletes multiple suspended tickets in Zendesk. This action is irreversible — the suspended tickets will be permanently deleted and cannot be recovered once removed. Use when cleaning up spam or irrelevant suspended tickets. Accepts up to 100 ticket IDs per request." }, { "slug": "ZENDESK_DELETE_TARGET", "name": "Delete Zendesk Target", "description": "Permanently deletes a target in Zendesk. This action is irreversible — the target will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete targets or removing test data. **Note**: Deleting a target that is actively used by triggers or other automation rules may cause those rules to fail." }, { "slug": "ZENDESK_DELETE_TICKET_FIELD", "name": "Delete Zendesk Ticket Field", "description": "Permanently deletes a ticket field in Zendesk. Use this action when you need to remove a custom ticket field that is no longer needed. This action is irreversible — the ticket field and all associated data will be permanently deleted and cannot be recovered once removed. Requires admin permissions. **Note**: System ticket fields cannot be deleted. Only custom ticket fields can be removed." }, { "slug": "ZENDESK_DELETE_TICKET_FIELD_OPTION", "name": "Delete Ticket Field Option", "description": "Permanently deletes an option from a ticket field in Zendesk. Use this action when you need to remove a specific selectable option from a dropdown or multiselect ticket field. This action is irreversible — the ticket field option will be permanently deleted and cannot be recovered once removed. **Note**: Only custom options can be deleted. System-defined options cannot be removed." }, { "slug": "ZENDESK_DELETE_TICKETS_TAGS", "name": "Delete Ticket Tags", "description": "Remove tags from a Zendesk ticket. This action is irreversible; once tags are removed, they cannot be recovered without re-adding them. Use when you need to clean up ticket tags, remove outdated labels, or clear all tags from a ticket." }, { "slug": "ZENDESK_DELETE_TRIGGER", "name": "Delete Zendesk Trigger", "description": "Permanently deletes a trigger in Zendesk. This action is irreversible — the trigger will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete triggers or removing test data. **Note**: You might be restricted from deleting triggers that are active or referenced by other rules." }, { "slug": "ZENDESK_DELETE_TRIGGER_CATEGORY", "name": "Delete Zendesk Trigger Category", "description": "Permanently deletes a trigger category in Zendesk. This action is irreversible — the trigger category will be permanently deleted and cannot be recovered once removed. Use when cleaning up obsolete trigger categories or removing test data. **Note**: You might be restricted from deleting trigger categories that are in use by active triggers." }, { "slug": "ZENDESK_DELETE_USER_FIELD", "name": "Delete Zendesk User Field", "description": "Permanently deletes a user field in Zendesk, removing it from all user profiles. This action is irreversible — the field and all its associated data will be permanently lost. Use when cleaning up deprecated custom fields or removing test fields." }, { "slug": "ZENDESK_DELETE_USER_FIELD_OPTION", "name": "Delete User Field Option", "description": "Permanently deletes an option from a user field in Zendesk. Use this action when you need to remove a specific selectable option from a dropdown or multiselect user field. This action is irreversible — the user field option will be permanently deleted and cannot be recovered once removed." }, { "slug": "ZENDESK_DELETE_USER_PERMANENTLY", "name": "Permanently Delete User", "description": "Permanently deletes a soft-deleted user from Zendesk. This action is irreversible - once a user is permanently deleted, it cannot be recovered. Use this action to remove users that were previously soft-deleted using the delete_user action. Use this action when you need to permanently remove a user that has already been deleted and is no longer accessible through normal operations. This action requires appropriate admin permissions." }, { "slug": "ZENDESK_DELETE_USER_PROFILE", "name": "Delete Zendesk User Profile", "description": "Permanently deletes a user profile in Zendesk by its profile ID. This action is irreversible — the profile and all associated data will be permanently lost. Use when cleaning up duplicate profiles, test profiles, or removing profiles that are no longer needed. Requires agent-level access with appropriate role permissions." }, { "slug": "ZENDESK_DELETE_USERS_DESTROY_MANY", "name": "Bulk Delete Zendesk Users", "description": "Bulk delete users from Zendesk by their IDs or external IDs. This action is irreversible — once deleted, users cannot be recovered. Use when cleaning up test data, removing obsolete accounts, or consolidating user records in bulk. The operation returns a job_status payload (initial status typically 'queued'); deletions complete asynchronously and may require follow-up polling via the job_status URL to confirm completion." }, { "slug": "ZENDESK_DELETE_USER_SESSION", "name": "Delete Zendesk User Session", "description": "Delete a specific user session in Zendesk. Use this action when you need to invalidate and remove a specific user session. This action is irreversible — the session cannot be recovered once deleted. Use when you need to forcibly log out a user or remove a specific session from their account for security or administrative purposes." }, { "slug": "ZENDESK_DELETE_USERS_GROUP_MEMBERSHIPS", "name": "Delete Zendesk User's Group Membership", "description": "Permanently deletes a user's group membership in Zendesk, immediately removing a user from a group. This action is irreversible — the group membership cannot be recovered once deleted. Use when cleaning up obsolete group memberships, removing users from groups, or revoking group access. **Note**: Deleting a group membership does not delete the user or the group itself, only the association between them. The user will no longer have access to tickets routed to that group." }, { "slug": "ZENDESK_DELETE_USERS_IDENTITY", "name": "Delete User Identity", "description": "Deletes an identity for a given user in Zendesk. Use when you need to remove a specific identity (e.g., email, phone, social login) from a user's account. This action is irreversible — once the identity is deleted, it cannot be recovered. Ensure you have the correct user_id and user_identity_id before executing." }, { "slug": "ZENDESK_DELETE_USERS_ME_LOGOUT", "name": "Delete Authenticated Session", "description": "Delete the current authenticated session in Zendesk. This action invalidates the current API session, requiring re-authentication for future API calls. Use when you need to explicitly log out the current user session or terminate an active authenticated connection. This action is irreversible — the session cannot be recovered once deleted. Note: This action targets the authenticated user's own session only and cannot terminate other user sessions." }, { "slug": "ZENDESK_DELETE_USERS_ORGANIZATION_MEMBERSHIPS", "name": "Delete User's Organization Membership", "description": "Permanently removes a user from an organization in Zendesk by deleting the organization membership for a specific user. This action is irreversible — the membership cannot be recovered once deleted. Use this action when you need to remove a user's association with an organization for a specific user. This operation requires admin permissions." }, { "slug": "ZENDESK_DELETE_USERS_SESSIONS", "name": "Delete All User Sessions", "description": "Bulk delete all sessions for a specific user in Zendesk. This action invalidates all active sessions for the specified user, forcing them to re-authenticate on their next API call or login. Use when you need to forcibly log out a user by revoking all their active sessions, such as during security incidents or account deactivation. This action is irreversible — all sessions for the user will be immediately invalidated and cannot be recovered." }, { "slug": "ZENDESK_DELETE_USERS_TAGS", "name": "Delete User Tags", "description": "Remove tags from a Zendesk user. Use when you need to clean up user tags, remove outdated labels, or clear all tags from a user account. This action is irreversible — once tags are removed, they cannot be recovered without re-adding them." }, { "slug": "ZENDESK_DELETE_VIEW", "name": "Delete Zendesk View", "description": "Delete a single view in Zendesk. This action is irreversible — the view will be permanently deleted and cannot be recovered once removed. Use when you need to remove a specific obsolete view or test view. Returns 204 No Content on success." }, { "slug": "ZENDESK_DELETE_ZENDESK_APP_INSTALLATION", "name": "Delete Zendesk App Installation", "description": "Permanently removes an installed app from Zendesk. Use when you need to uninstall an app from your Zendesk instance. This action is irreversible — the app installation cannot be recovered once removed. Admin permissions are required." }, { "slug": "ZENDESK_DELETE_ZENDESK_BOOKMARK", "name": "Delete Zendesk Bookmark", "description": "Permanently deletes a bookmark in Zendesk. Use when you need to remove a user bookmark. This action is irreversible — the bookmark cannot be recovered once deleted." }, { "slug": "ZENDESK_DELETE_ZENDESK_CUSTOM_OBJECT", "name": "Delete Zendesk Custom Object", "description": "Permanently deletes a custom object definition in Zendesk. Use this action when you need to remove a custom object type and all its associated records. This action is irreversible — the custom object and all its data will be permanently deleted and cannot be recovered once removed. Requires admin permissions. **Note**: Deleting a custom object will also delete all records associated with it." }, { "slug": "ZENDESK_DELETE_ZENDESK_CUSTOM_OBJECT_FIELD", "name": "Delete Zendesk Custom Object Field", "description": "Permanently deletes a custom object field in Zendesk. Use this action when you need to remove a specific field from a custom object definition. This action is irreversible — the field and all its data will be permanently deleted and cannot be recovered once removed. Requires admin permissions." }, { "slug": "ZENDESK_DELETE_ZENDESK_CUSTOM_OBJECT_RECORD", "name": "Delete Zendesk Custom Object Record", "description": "Permanently deletes a custom object record in Zendesk. Use this action when you need to remove a specific record from a custom object type. This action is irreversible — the record and its data will be permanently deleted and cannot be recovered once removed. Requires the custom object key and the record ID to identify which specific record to delete." }, { "slug": "ZENDESK_DELETE_ZENDESK_CUSTOM_STATUS", "name": "Delete Zendesk Custom Status", "description": "Permanently deletes a custom ticket status in Zendesk. Use this action when you need to remove a custom ticket status from the system. This action is irreversible — the custom status will be permanently deleted and cannot be recovered once removed. **Note**: Ensure no tickets are using this custom status before deletion." }, { "slug": "ZENDESK_DELETE_ZENDESK_DYNAMIC_CONTENT_ITEM", "name": "Delete Zendesk Dynamic Content Item", "description": "Permanently deletes a dynamic content item in Zendesk. This action is irreversible — the dynamic content item cannot be recovered once deleted. Always confirm the correct dynamic_content_item_id before executing." }, { "slug": "ZENDESK_DELETE_ZENDESK_DYNAMIC_CONTENT_ITEM_VARIANT", "name": "Delete Zendesk Dynamic Content Item Variant", "description": "Permanently deletes a dynamic content item variant in Zendesk. This action is irreversible — the variant cannot be recovered once deleted. Always confirm the correct dynamic_content_item_id and dynamic_content_variant_id before executing." }, { "slug": "ZENDESK_DELETE_ZENDESK_OBJECT_TRIGGER", "name": "Delete Zendesk Custom Object Trigger", "description": "Permanently deletes a custom object trigger in Zendesk. Use this action when you need to remove a specific trigger from a custom object definition. This action is irreversible — the trigger and all its data will be permanently deleted and cannot be recovered once removed. Requires admin permissions." }, { "slug": "ZENDESK_DELETE_ZENDESK_ORGANIZATION", "name": "Delete Zendesk Organization", "description": "Delete an organization in Zendesk. This operation is irreversible; confirm organization_id and get explicit user confirmation before calling." }, { "slug": "ZENDESK_DELETE_ZENDESK_SUPPORT_ADDRESS", "name": "Delete Zendesk Support Address", "description": "Permanently deletes a support address from Zendesk. This action is irreversible — the support address cannot be recovered once deleted. Use this action when you need to remove a deprecated or unwanted support email address from your Zendesk account. This operation requires admin permissions and the support address must not be set as the default address. Deleting an address that is actively used may impact email routing." }, { "slug": "ZENDESK_DELETE_ZENDESK_TICKET", "name": "Delete Zendesk Ticket", "description": "Permanently deletes a ticket in Zendesk, including its entire conversation history. This action is irreversible; always confirm the correct ticket_id before executing." }, { "slug": "ZENDESK_DELETE_ZENDESK_USER", "name": "Delete Zendesk User", "description": "Tool to permanently delete a user from Zendesk. Use when you need to remove a user account. This action cannot be undone and requires appropriate admin permissions." }, { "slug": "ZENDESK_DESTROY_MANY_DELETED_TICKETS", "name": "Bulk Delete Soft-Deleted Zendesk Tickets", "description": "Permanently deletes multiple soft-deleted tickets in Zendesk. This action is irreversible — the tickets will be permanently removed and cannot be recovered once executed. Use when cleaning up test tickets or removing obsolete soft-deleted tickets in bulk. The operation returns a job_status payload (initial status typically 'queued'); deletions complete asynchronously and may require follow-up polling to confirm completion. Maximum 100 tickets per request." }, { "slug": "ZENDESK_DESTROY_MANY_ORGANIZATIONS", "name": "Bulk Delete Zendesk Organizations", "description": "Bulk delete Zendesk organizations. This action is irreversible - once organizations are deleted, they cannot be recovered. Use when you need to remove multiple organizations in a single operation. Returns a job_status payload (initial status typically 'queued'); deletions complete asynchronously and may require follow-up polling to confirm completion. Maximum 100 organizations per request. Use this action when you need to clean up test data, remove obsolete organizations, or perform bulk organization deletions. You must provide either 'ids' (comma-separated list of Zendesk organization IDs) or 'external_ids' (comma-separated list of external IDs)." }, { "slug": "ZENDESK_DETECT_BEST_LOCALE", "name": "Detect Best Locale", "description": "Detect the best language/locale for the current user based on their browser settings and account preferences. Use when you need to determine the optimal language to display content in for a user, such as when localizing ticket comments, article content, or Help Center pages. This action reads the user's preferred languages from the Accept-Language header and matches them against supported locales in your Zendesk account. The detected locale is returned with full locale details including ID, name, and API URL." }, { "slug": "ZENDESK_DOWNLOAD_CUSTOM_OBJECT_RECORD_ATTACHMENT", "name": "Download Custom Object Record Attachment", "description": "Download attachment file from a Zendesk custom object record. Use when you need to retrieve the actual file content of an attachment associated with a custom object record, such as documents, images, or other files. This action returns the raw file content and can display it inline or trigger a file download depending on the inline parameter. Note: The custom object must have attachments enabled for this action to work." }, { "slug": "ZENDESK_GET_ABOUT_ME", "name": "Get Zendesk About Me", "description": "Get information about the currently authenticated user in Zendesk. Returns only the caller's own account; to look up other users, use ZENDESK_SEARCH_ZENDESK_USERS. Response nests the user object under data.owner_info.user. Useful for verifying the acting user's identity and permissions before performing bulk operations." }, { "slug": "ZENDESK_GET_ACCOUNT_SETTINGS", "name": "Get Account Settings", "description": "Retrieve Zendesk account settings. Use this action when you need to view the configuration and feature flags for a Zendesk account, including API settings, branding, ticket preferences, chat configuration, voice settings, and more." }, { "slug": "ZENDESK_GET_ACTIVE_TRIGGERS", "name": "List Active Triggers", "description": "List all active ticket triggers in Zendesk. Use when you need to retrieve the currently active trigger rules that automatically perform actions on tickets when certain conditions are met. This action returns all triggers marked as active, including their conditions, actions, and metadata. Active triggers are business rules that define what happens when ticket conditions are satisfied. This is useful for auditing active automation rules, understanding automated workflows, or finding specific trigger configurations." }, { "slug": "ZENDESK_GET_ACTIVITIES_COUNT", "name": "Count Activities", "description": "Count ticket activities in Zendesk. Returns an approximate count of ticket activities. Use when you need to know how many activities exist in the activity stream for reporting or operational purposes." }, { "slug": "ZENDESK_GET_ALL_ZENDESK_ORGANIZATIONS", "name": "Get Zendesk Organizations", "description": "Get all organizations in Zendesk. Returns results nested under an 'organizations' array; an empty list is valid. Accepts no server-side filters — all filtering by name, domain_names (an array field), or organization_fields must be done client-side. Large accounts require pagination; missing pages will undercount results. Multiple organizations may share similar names or domains — always disambiguate using external_id or domain_names and confirm organization_id before acting. Avoid repeated full-list fetches on large accounts; cache or batch client-side instead." }, { "slug": "ZENDESK_GET_APP", "name": "Get App", "description": "Get a single Zendesk app by its numeric ID. Use when you have an app ID and need to retrieve the app's details including name, author information, version, installation count, categories, and description." }, { "slug": "ZENDESK_GET_APPS_INSTALLATIONS_REQUIREMENTS", "name": "Get App Installation Requirements", "description": "List all requirements for a Zendesk app installation. Use when you need to check what configuration or parameters are required for a specific installed app to function properly. Requirements may include OAuth settings, parameter configurations, or other setup steps needed by the app. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_APPS_LOCATION", "name": "Get App Location", "description": "Get details for a specific Zendesk app location by its numeric ID. Returns location properties including visibility settings, orderability, and associated product codes. Use when you have an app_location_id from listing locations or creating apps and need to retrieve detailed location information. Only accessible to admin users." }, { "slug": "ZENDESK_GET_APPS_LOCATION_INSTALLATIONS", "name": "List Apps Location Installations", "description": "List all apps location installations from Zendesk. Returns an array of app installation IDs organized by location name. Use when you need to retrieve information about apps installed in specific locations within Zendesk, such as nav_bar or other supported locations. This action is read-only and idempotent. Allowed for: Admins only." }, { "slug": "ZENDESK_GET_APPS_PUBLIC_KEY", "name": "Get App Public Key", "description": "Retrieves the public key for a specific Zendesk app. The response is in JSON Web Key (JWK) format containing RSA key components (modulus n, exponent e). Use this action when you need to verify JWTs issued by a Zendesk app or establish trust for app-based authentication. This is a read-only operation." }, { "slug": "ZENDESK_GET_APPS_PUBLIC_KEY_PEM", "name": "Get App Public Key PEM", "description": "Retrieves the public key for a specific Zendesk app in PEM format. The PEM format is a standard base64-encoded certificate format that can be used to verify that requests from the app are legitimate. Use this action when you need to verify JWTs issued by a Zendesk app or establish trust for app-based authentication. This is a read-only operation. Note: This endpoint does not require authentication and can be accessed anonymously." }, { "slug": "ZENDESK_GET_ATTACHMENT", "name": "Get Attachment", "description": "Retrieve details of a single Zendesk attachment by its ID. Use when you have an attachment_id from ticket comments or an attachments list and need to fetch full attachment metadata including file name, size, content type, URLs, and thumbnails. The action returns the attachment object with all available properties." }, { "slug": "ZENDESK_GET_AUTOCOMPLETE_TAGS", "name": "Get Autocomplete Tags", "description": "Search for Zendesk tags using autocomplete. Use when you need to find tag suggestions based on a partial tag name for tagging tickets or organizing content." }, { "slug": "ZENDESK_GET_AUTOMATION", "name": "Show Automation", "description": "Show a specific automation by its ID. Use when you need to retrieve details of a single automation rule in your Zendesk account, such as for auditing, modifying, or understanding what actions and conditions are configured for a particular automation. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_AUTOMATIONS", "name": "List Automations", "description": "List all automations for the current Zendesk account. Use when you need to retrieve, audit, or review the automation rules configured in your Zendesk account. Automations are business rules that automatically perform actions based on trigger conditions. Supports both traditional offset pagination and cursor-based pagination. Filter by active status to show only enabled or disabled automations." }, { "slug": "ZENDESK_GET_AUTOMATIONS_SEARCH", "name": "Search Automations", "description": "Search for Zendesk automations by their title. Use when you need to find automations in your Zendesk account by searching for keywords in their titles. Automations are business rules that automatically perform actions when certain conditions are met. This action supports filtering by active status and sorting results." }, { "slug": "ZENDESK_GET_BRANDS", "name": "List Brands", "description": "List all brands configured in your Zendesk account. Use when you need to enumerate available brands, check which brand is set as default, or retrieve brand metadata like subdomain and host mappings. This is a read-only, idempotent operation that supports both cursor and offset pagination." }, { "slug": "ZENDESK_GET_BRANDS2", "name": "Get Zendesk Brand", "description": "Show a Brand. Use when you have a brand ID and need to retrieve detailed information about a specific Zendesk brand, including its name, subdomain, active status, Help Center configuration, logo, and associated ticket forms." }, { "slug": "ZENDESK_GET_BRANDS_AGENTS", "name": "List Agents by Brand", "description": "List agents assigned to a specific brand in Zendesk. Use when you need to enumerate which agents have access to a specific brand, such as auditing brand access permissions or determining which agents can access a brand's help center. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_CUSTOM_OBJECT_FIELDS_LIMIT", "name": "Get Custom Object Fields Limit", "description": "Get the current count and maximum limit for custom object fields in Zendesk. Returns the number of fields currently defined for a specific custom object and the maximum allowed limit. Use when you need to check how many fields have been created for a custom object and how much capacity remains before hitting the limit. This is a read-only operation that does not modify any data." }, { "slug": "ZENDESK_GET_CUSTOM_OBJECT_RECORDS_LIMIT", "name": "Get Custom Object Records Limit", "description": "Get the current record limit and usage count for custom objects in Zendesk. Returns the current number of custom object records and the maximum allowed limit. Use when you need to check how many custom object records have been created and how much capacity remains. This is a read-only operation that does not modify any data." }, { "slug": "ZENDESK_GET_CUSTOM_OBJECTS_LIMIT", "name": "Get Custom Objects Limit", "description": "Get the current count and maximum limit for custom objects in Zendesk. Use when you need to check how many custom objects exist in your Zendesk account and what the allowed limit is, to avoid exceeding capacity or to plan for scaling." }, { "slug": "ZENDESK_GET_CUSTOM_STATUS", "name": "Get Custom Status", "description": "Get a specific custom ticket status from Zendesk by its ID. Use when you have a custom status ID from ticket payloads or from listing custom statuses and need to retrieve the full status details including agent/end-user labels, descriptions, and status category. This is a read-only, idempotent operation that retrieves the current state of a custom ticket status." }, { "slug": "ZENDESK_GET_CUSTOM_STATUSES", "name": "List Custom Ticket Statuses", "description": "List custom ticket statuses available in a Zendesk account. Use when you need to retrieve all undeleted custom ticket statuses, optionally filtered by status category, active state, or default status. This action is useful for understanding available custom statuses for ticket workflows, automation rules, or displaying status options to users." }, { "slug": "ZENDESK_GET_DELETED_TICKETS", "name": "List Deleted Tickets", "description": "Lists tickets that have been deleted from Zendesk, showing up to 100 deleted tickets per page with pagination. Use when you need to retrieve information about previously deleted tickets or audit ticket deletions. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_DELETED_USER", "name": "Get Deleted User", "description": "Retrieves a single deleted Zendesk user by their ID. Use when you have a specific deleted user ID and need to fetch details about that deleted user, such as for auditing purposes, account recovery, or compliance records. Deleted users retain their associated tickets and historical data." }, { "slug": "ZENDESK_GET_DELETION_SCHEDULE", "name": "Get Deletion Schedule", "description": "Retrieve a specific deletion schedule from Zendesk by its ID. Use this action when you need to get the details of a particular deletion schedule, including its title, description, active status, object type, conditions, and creation/update timestamps. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_DELETION_SCHEDULES", "name": "List Deletion Schedules", "description": "List all deletion schedules for the current Zendesk account. Use when you need to retrieve, audit, or review the deletion schedule rules configured in your Zendesk account. Deletion schedules define automated data retention policies that periodically remove specified entity types based on configured conditions. Only Zendesk admins can access this endpoint." }, { "slug": "ZENDESK_GET_DYNAMIC_CONTENT_ITEMS", "name": "List Dynamic Content Items", "description": "List all dynamic content items configured in your Zendesk account. Use when you need to enumerate available dynamic content items, check variants for localization, or retrieve metadata about placeholder values for dynamic content. This is a read-only, idempotent operation that supports both cursor and offset pagination." }, { "slug": "ZENDESK_GET_DYNAMIC_CONTENT_ITEM_SHOW", "name": "Show Dynamic Content Item", "description": "Show a specific dynamic content item by its ID. Use when you have a dynamic content item ID and need to retrieve its details, including name, default locale, placeholder value, variants, and creation/update timestamps. This is a read-only, idempotent operation that returns a single dynamic content item." }, { "slug": "ZENDESK_GET_DYNAMIC_CONTENT_ITEMS_SHOW_MANY", "name": "Show Many Dynamic Content Items", "description": "Retrieve multiple dynamic content items by their identifiers. Use when you have specific dynamic content item IDs or names and need to fetch their metadata including placeholder, default locale, variants, and outdated status. This is a read-only, idempotent operation. The 'identifiers' parameter accepts comma-separated values; omit it to retrieve all items (use with caution on accounts with many items)." }, { "slug": "ZENDESK_GET_DYNAMIC_CONTENT_ITEMS_VARIANTS", "name": "List Dynamic Content Variants", "description": "List all variants of a specific Zendesk dynamic content item. Use when you need to retrieve all locale variants for a dynamic content item to view, manage, or update the localized content. Variants represent the same content in different locales/languages. Supports pagination and sorting parameters. This action is read-only and idempotent — calling it multiple times with the same parameters will return the same results without side effects." }, { "slug": "ZENDESK_GET_DYNAMIC_CONTENT_ITEM_VARIANT", "name": "Show Dynamic Content Item Variant", "description": "Show a specific variant of a dynamic content item in Zendesk. Use when you have a dynamic_content_item_id and dynamic_content_variant_id and need to retrieve the variant's details including its content, locale, active status, and timestamps. This is a read-only operation. Dynamic content items allow you to create reusable content that can be localized into multiple variants for different languages or contexts." }, { "slug": "ZENDESK_GET_EMAIL_NOTIFICATION", "name": "Get Email Notification", "description": "Retrieve details of a single email notification in Zendesk by its notification ID. Use when you have a notification_id from ticket audit logs or email notifications list and need to fetch full notification details including recipients, delivery status, and associated ticket/comment information. This action is useful for tracking email delivery status and troubleshooting email notification issues." }, { "slug": "ZENDESK_GET_EMAIL_NOTIFICATIONS", "name": "Get Email Notifications", "description": "List email notifications from Zendesk. Use this action when you need to retrieve email notification records filtered by ticket, comment, or notification ID. The filter parameter is required to specify which type of ID to filter by. Returns delivery status information for each recipient including any delivery failures." }, { "slug": "ZENDESK_GET_EMAIL_NOTIFICATIONS_SHOW_MANY", "name": "Show Many Email Notifications", "description": "Show details of many email notifications in Zendesk. Use when you need to retrieve multiple email notifications at once by their IDs, associated comment IDs, or associated ticket IDs. At least one of the filter parameters (ids, comment_ids, or ticket_ids) is required." }, { "slug": "ZENDESK_GET_END_USER_IDENTITIES", "name": "List End User Identities", "description": "Tool to list all identities associated with a specific end user. Use when you need to retrieve the email addresses and/or phone numbers linked to an end user account. Supports optional filtering by identity type (email, phone_number)." }, { "slug": "ZENDESK_GET_END_USER_IDENTITY", "name": "Get End User Identity", "description": "Tool to fetch a specific end user identity by user ID and identity ID. Use when you need to retrieve detailed information about a particular user identity in Zendesk." }, { "slug": "ZENDESK_GET_GROUP_MEMBERSHIP", "name": "Get Group Membership", "description": "Get a group membership by its unique ID. Use when you have a group membership ID and need to retrieve details including the associated group, user, and timestamps. Note: The group_membership_id parameter is the membership ID, not a group ID." }, { "slug": "ZENDESK_GET_GROUP_MEMBERSHIPS", "name": "List Group Memberships", "description": "List all group memberships in your Zendesk account. Group memberships link users to groups, determining which agents belong to which support groups. Use when you need to audit group assignments, manage team memberships, or enumerate the relationship between users and groups. This action supports both offset pagination (page, per_page) and cursor pagination (page_size, page_after, page_before). It also supports sideloading related users and groups via the include parameter. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_GROUP_MEMBERSHIPS_BY_GROUP", "name": "List Memberships By Group", "description": "List group memberships for a specific Zendesk group. Use when you need to retrieve all members assigned to a particular group, audit group membership, or understand which users belong to a specific support group. This action is read-only and idempotent. Supports both offset pagination (page, per_page) and cursor pagination (page_size, page_after, page_before). Also supports sideloading users and groups via the include parameter." }, { "slug": "ZENDESK_GET_GROUPS_ASSIGNABLE", "name": "List Assignable Groups", "description": "List all groups that can be assigned to tickets or users in your Zendesk account. Use when you need to enumerate available groups for assignment operations, check group availability, or retrieve group metadata. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_GROUPS_COUNT", "name": "Count Groups", "description": "Count groups in Zendesk. Returns an approximate count of groups in the system. Use when you need to know how many groups exist for reporting, organizational management, or operational purposes. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_GROUPS_USERS_COUNT", "name": "Count Users by Group", "description": "Count users in a specific Zendesk group. Returns an approximate count of users belonging to the specified group, with optional filtering by role or permission set. Use when you need to know how many users are in a particular group for reporting, resource planning, or administrative purposes. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_GROUP_USERS", "name": "List Group Users", "description": "List all users belonging to a specific Zendesk group. Use when you need to retrieve all members of a particular group, with optional filtering by user role, permission set, or external ID. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_GUIDE_SURVEY_RESPONSES", "name": "List Guide Survey Responses", "description": "List survey responses from Zendesk Guide. Use when you need to retrieve CSAT survey responses, analyze customer satisfaction scores, or monitor survey completion rates. Survey responses are available on Support Professional plan and above, and Zendesk Suite Growth plan and above. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_GUIDE_SURVEYS", "name": "List Guide Surveys", "description": "List available CSAT (Customer Satisfaction) surveys in Zendesk Guide. Use when you need to retrieve survey definitions, check which surveys are enabled/disabled, or get survey questions and versions. The response includes survey IDs, states, creation timestamps, and question arrays. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_INCREMENTAL_ORGANIZATIONS", "name": "Get Incremental Organizations", "description": "Retrieve organizations that have been modified since a specified start time using the Incremental Organization Export API. Use when you need to sync or track changes to Zendesk organizations over time. Provide a start_time (Unix timestamp) from a previous response's end_time to paginate through changes incrementally. This action is read-only and idempotent. Organizations may be created, updated, or appear as deleted; interpret based on your use case. Rate limiting may apply for large accounts." }, { "slug": "ZENDESK_GET_INCREMENTAL_ROUTING_ATTRIBUTES", "name": "Incremental Routing Attributes Export", "description": "Export routing attributes incrementally with optional start_time filtering and cursor-based pagination. Use when you need to retrieve all skill-based routing attributes (attributes, attribute values, and instance values) that have changed in your Zendesk account. This is a read-only operation that returns a stream of changes; it does not include data from the most recent minute. For large datasets, use cursor-based pagination with the after_cursor value from responses. This action is read-only and idempotent — calling it multiple times with the same start_time returns the same results." }, { "slug": "ZENDESK_GET_INCREMENTAL_ROUTING_ATTRIBUTE_VALUES", "name": "Get Incremental Routing Attribute Values", "description": "Retrieve routing attribute values that have been modified since a specified start time using the Incremental Skill-Based Routing API. Use when you need to sync or track changes to routing attributes, values, and their associations over time. Provide a start_time (Unix timestamp) and the API returns all attribute values modified since that time. Call repeatedly with the end_time from each response to paginate through all changes. This action is read-only and idempotent. Note: Data isn't available for the most recent minute due to eventual consistency. Attribute values may appear as modified; interpret based on your use case." }, { "slug": "ZENDESK_GET_INCREMENTAL_ROUTING_INSTANCE_VALUES", "name": "Export Incremental Routing Instance Values", "description": "Export incremental routing instance values from Zendesk skill-based routing. Returns a stream of changes that occurred on routing attributes, attribute values, and instance values. Use this action when you need to synchronize routing configuration data or monitor changes to skill-based routing assignments. This action is read-only and supports cursor-based pagination with a maximum of 3000 records per page. Stop paging when the count is 0. Note: The cursor parameter is read-only and should only be obtained from API responses, not manually constructed." }, { "slug": "ZENDESK_GET_INCREMENTAL_SAMPLE", "name": "Get Incremental Sample Export", "description": "Test the incremental export by retrieving a sample of records that have changed since a specified start time. Use this action to verify your incremental export setup before running full exports. Use when you need to test the incremental export functionality for a specific resource type (e.g., tickets, users, organizations). The sample export returns a limited set of records that can help you validate data retrieval before implementing full sync operations. Note that data isn't provided for the most recent minute, and the start_time must be at least one minute in the past." }, { "slug": "ZENDESK_GET_INCREMENTAL_TICKET_EVENTS", "name": "Get Incremental Ticket Events", "description": "Export incremental ticket events from Zendesk. Use when you need to track changes to tickets over time, monitor agent performance metrics, or sync ticket event data with an external system. This action returns a stream of ticket metric events (like agent work time, reply times) that occurred after the specified start_time. Call repeatedly with the end_time from each response to continue exporting events. Data isn't available for the most recent minute due to eventual consistency. Note: This is a read-only, idempotent operation. The start_time must be at least one minute in the past." }, { "slug": "ZENDESK_GET_INCREMENTAL_TICKET_METRIC_EVENTS", "name": "List Ticket Metric Events", "description": "List ticket metric events in Zendesk that occurred on or after a specified time. This action supports incremental data export — use the end_time from one response as the start_time for the next request to retrieve subsequent events. This action is read-only and idempotent — use it to monitor ticket metrics, track SLA compliance, or build analytics dashboards. Note: deleted tickets can create orphan metric events; use exclude_deleted=true to filter these out." }, { "slug": "ZENDESK_GET_INCREMENTAL_TICKETS", "name": "Get Incremental Tickets", "description": "Retrieve tickets that have been modified since a specified start time using the Incremental Ticket Export API. Use when you need to sync or track changes to Zendesk tickets over time, build audit trails, or implement incremental backups. Provide a start_time (Unix timestamp) from a previous response's end_time to paginate through changes incrementally. This action is read-only and idempotent. Tickets may be created, updated, or appear as changed; interpret based on your use case. Rate limiting may apply for large accounts. Note: Data isn't provided for the most recent minute." }, { "slug": "ZENDESK_GET_INCREMENTAL_TICKETS_CURSOR", "name": "Get Incremental Tickets (Cursor)", "description": "Export tickets incrementally using cursor-based pagination. Use this action when you need to retrieve all changes to tickets since a specific time, with support for large result sets through cursor-based pagination. The start_time parameter is required for the initial request; subsequent pages use the cursor returned in previous responses. Use when you need to sync ticket data from Zendesk, maintaining a real-time or near-real-time copy of ticket information. This is ideal for data synchronization, backup systems, or analytics pipelines that need to process all ticket changes over time. The action automatically handles pagination by providing cursor tokens in the response." }, { "slug": "ZENDESK_GET_INCREMENTAL_USERS", "name": "Get Incremental Users", "description": "Retrieve users that have been modified since a specified start time using the Incremental User Export API. Use when you need to sync or track changes to Zendesk users over time, such as for data warehousing, backup, or external system synchronization. Provide a start_time (Unix timestamp) and the API returns users that have been created, updated, or deleted since that time. Call repeatedly with the end_time from each response to paginate through all changes. This action is read-only and idempotent. Note: Data isn't available for the most recent minute due to eventual consistency. Users may appear as modified or deleted; interpret based on your use case." }, { "slug": "ZENDESK_GET_INCREMENTAL_USERS_CURSOR", "name": "Incremental User Export (Cursor)", "description": "Export users incrementally using cursor-based pagination. Use when you need to export all users from Zendesk in a reliable, paginated manner. The start_time parameter is required for the initial request to define the time range. Subsequent requests use the cursor returned in previous responses to fetch the next batch of records. This action is ideal for: - Full user data synchronization to external systems - Regular incremental backups of user data - Building user directories with pagination support Note: Data from the most recent minute is not included to ensure consistency." }, { "slug": "ZENDESK_GET_JOB_STATUSES", "name": "List Job Statuses", "description": "List job statuses from Zendesk. Shows the status of all background jobs that have been initiated, including those created by bulk operations like bulk updates, imports, or exports. Each job status includes progress information, completion status, and any results from individual tasks. Use this action to track the progress of long-running operations or check if background tasks completed successfully. Use this action when you need to check the status of background jobs, monitor bulk operation progress, or verify that asynchronous tasks have finished processing." }, { "slug": "ZENDESK_GET_JOB_STATUSES2", "name": "Get Job Status", "description": "Get a single job status by ID from Zendesk. Shows the status of a background job initiated by bulk operations (like bulk updates, imports, or exports). The response includes progress information, completion status, and any results from individual tasks. Use this action when you have a job_status_id from a previously queued bulk operation and need to check if it completed successfully, failed, or is still processing. Check the 'status' field for the current state ('queued', 'working', 'completed', 'failed') and the 'results' array for individual task outcomes." }, { "slug": "ZENDESK_GET_LOCALE", "name": "Get Locale", "description": "Get a locale by its ID or BCP-47 code. Use when you need to retrieve details about a specific locale including the locale identifier, language name, and timestamps." }, { "slug": "ZENDESK_GET_LOCALES", "name": "List Locales", "description": "List all translation locales available for your Zendesk account. Use when you need to retrieve the available locales for translation purposes, check which languages are enabled, or get locale metadata including the locale code, display name, and creation timestamps. This is a read-only, idempotent operation that supports pagination." }, { "slug": "ZENDESK_GET_LOCALES_AGENT", "name": "List Agent Locales", "description": "List the translation locales that have been localized for agent use. Use when you need to discover which locales are available for agents to work with in multilingual support scenarios. This is a read-only, idempotent operation that requires no parameters." }, { "slug": "ZENDESK_GET_LOCALES_CURRENT", "name": "Get Current Locale", "description": "Show the current locale for a Zendesk account. Use when you need to determine what language/locale is currently active for the account, which affects how content is displayed to end users and which translations are available." }, { "slug": "ZENDESK_GET_MACRO2", "name": "Show Macro", "description": "Show a specific macro by its ID. Use when you need to retrieve details of a single macro in your Zendesk account, such as for auditing, modifying, or understanding what actions and conditions are configured for a particular macro. Macros are saved response templates that agents can apply to tickets. Supports optional sideloads for usage statistics and additional metadata via the `include` parameter." }, { "slug": "ZENDESK_GET_MACRO_ATTACHMENTS", "name": "List Macro Attachments", "description": "List all attachments associated with a specific Zendesk macro. Use when you need to retrieve the files attached to a macro, such as images used in macro content or documents included in automated responses. This is a read-only operation that returns the attachment metadata including filename, content type, size, and download URL." }, { "slug": "ZENDESK_GET_MACRO_CATEGORIES", "name": "List Macro Categories", "description": "List all macro categories available to the current Zendesk account. Use when you need to retrieve or browse available macro categories for organizing and applying macros to tickets. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_MACRO_DEFINITIONS", "name": "List Macro Action Definitions", "description": "Retrieve the definitions of all actions that a macro can perform in Zendesk. Use this action when you need to discover what actions are available for macro creation, understand the available values for each action type, or build a macro configuration interface. The response includes action fields, their display titles, types, and available value options. Common macro actions include: setting ticket status, priority, or type; assigning agents or groups; adding/removing tags; setting custom fields; and adding comments." }, { "slug": "ZENDESK_GET_MACRO_REPLICA", "name": "Show Macro Replica", "description": "Show a macro replica (unpersisted macro representation) based on a macro ID and ticket ID. Use when you need to preview how a macro will look when applied to a specific ticket, allowing you to see the actions and values that will be applied without actually applying the macro. This is useful for testing macro configurations or displaying macro previews in your interface. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_MACROS", "name": "List Macros", "description": "List all shared and personal macros available in your Zendesk account. Use when you need to retrieve, audit, or review the macros configured for automating ticket responses and actions. Macros are saved response templates that agents can apply to tickets. Supports filtering by access level, active status, category, and group. Results can be sorted by name, creation date, update date, or usage statistics." }, { "slug": "ZENDESK_GET_MACROS_ACTIONS", "name": "List Macro Actions", "description": "List supported actions for macros in Zendesk. Use when you need to discover what field modifications are available when creating or editing macros. This endpoint returns the available action fields that can be set in a macro (e.g., status, priority, assignee, etc.) along with their possible values. This is useful for validating macro configurations or building macro management interfaces. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_MACROS_ACTIVE", "name": "List Active Macros", "description": "List all active shared and personal macros in Zendesk. Use when you need to retrieve, audit, or review the macros configured in your Zendesk account. Macros are saved responses that agents can apply to tickets. This action supports filtering by access level, category, group, and sorting options. Note: This action only returns active macros. The sort_by parameter supports sorting by usage metrics (usage_1h, usage_24h, usage_7d, usage_30d) to identify the most frequently used macros." }, { "slug": "ZENDESK_GET_MACROS_APPLY", "name": "Show Changes to Ticket", "description": "Show changes to a ticket that would result from applying a macro. Use when you need to preview what changes a macro would make to a ticket before actually applying it. This allows you to review the changes that would be applied, such as assignee changes, group reassignments, comments, or custom field updates. This action is read-only and idempotent — it does not actually modify the ticket." }, { "slug": "ZENDESK_GET_MACROS_SEARCH", "name": "Search Macros", "description": "Search for Zendesk macros by their title. Use when you need to find macros in your Zendesk account by searching for keywords in their titles. Macros are pre-defined responses or actions that can be applied to tickets to automate repetitive tasks. This action supports filtering by access, active status, category, and group, as well as sorting results." }, { "slug": "ZENDESK_GET_OBJECT_TRIGGER", "name": "Show Object Trigger", "description": "Show a specific trigger for a custom object in Zendesk. Use when you need to retrieve details of a single trigger, such as for auditing, understanding its conditions and actions, or preparing modifications. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_OPEN_REQUESTS", "name": "List Open Requests", "description": "List open requests from Zendesk. Use this action when you need to retrieve all requests with \"open\" status for the authenticated user. Supports sorting by creation date or last update time. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_ORGANIZATION_FIELD2", "name": "Get Organization Field", "description": "Get details for a specific organization field in Zendesk by its ID or key. Use this action when you need to retrieve detailed information about a single custom organization field, including its type, options, validation rules, and display settings. This is useful for understanding field configuration or before updating/deleting a field. Returns the complete organization field definition with all metadata." }, { "slug": "ZENDESK_GET_ORGANIZATION_FIELDS", "name": "List Organization Fields", "description": "List all custom organization fields for the Zendesk account. Use this action when you need to retrieve or audit the custom organization field definitions configured in your Zendesk instance. Organization fields are used to store additional metadata about organizations beyond the standard attributes. Supports cursor-based pagination for retrieving large numbers of fields. Use resolve_dc=true to get resolved dynamic content placeholders instead of raw template strings." }, { "slug": "ZENDESK_GET_ORGANIZATION_MEMBERSHIP2", "name": "Get Organization Membership", "description": "Get details for a specific organization membership by its ID. Use when you have an organization membership ID and need to retrieve the associated user, organization, and membership metadata. This action is read-only and idempotent - calling it multiple times with the same membership ID will return the same result." }, { "slug": "ZENDESK_GET_ORGANIZATION_RELATED", "name": "Get Organization Related Info", "description": "Get related counts and information for a specific Zendesk organization by ID. Returns metadata about tickets, users, groups, activities, and other related resources associated with the organization. Use when you need to understand the scale and composition of an organization's resources in Zendesk. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_ORGANIZATION_REQUESTS", "name": "List Organization Requests", "description": "List requests for a specific Zendesk organization. Use when you need to retrieve all requests associated with a particular organization. This action returns request details including subject, status, priority, requester, and timestamps. Pagination is available for large result sets." }, { "slug": "ZENDESK_GET_ORGANIZATIONS_AUTOCOMPLETE", "name": "Autocomplete Organizations", "description": "Search for Zendesk organizations using autocomplete. Use when you need to find organization suggestions based on a partial organization name for ticket creation, user assignment, or organization lookup. The `name` parameter is required - provide at least a few characters for meaningful autocomplete results. Returns organizations sorted by relevance." }, { "slug": "ZENDESK_GET_ORGANIZATIONS_MERGES", "name": "List Organization Merges", "description": "List all organization merge operations for a specific organization in Zendesk. This action retrieves the merge history showing which organizations were merged into or out of the specified organization. Use this action when you need to audit organization merge history or track the consolidation of organizations. Supports pagination to handle large result sets efficiently. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_ORGANIZATIONS_SHOW_MANY", "name": "Show Many Organizations", "description": "Show many Zendesk organizations by their IDs or external IDs. Use when you need to retrieve multiple organizations in a single API call. Accepts up to 100 organization IDs or external IDs as comma-separated lists. Only one of ids or external_ids should be provided. Returns organization objects with all standard fields including name, domain_names, tags, and organization_fields." }, { "slug": "ZENDESK_GET_ORGANIZATIONS_TICKETS_COUNT", "name": "Count Organization Tickets", "description": "Count organization tickets in Zendesk. Returns an approximate count of tickets for a specific organization. Use when you need to know how many tickets are associated with an organization for reporting or operational purposes." }, { "slug": "ZENDESK_GET_ORGANIZATION_SUBSCRIPTION", "name": "Get Organization Subscription", "description": "Show Organization Subscription - retrieves details of a specific organization subscription by its ID. Use when you need to get information about an organization subscription, including the associated user and organization IDs, and the creation timestamp. This is a read-only operation that does not modify any data." }, { "slug": "ZENDESK_GET_ORGANIZATION_SUBSCRIPTIONS", "name": "List Organization Subscriptions", "description": "List Organization Subscriptions in Zendesk. Returns organization subscriptions with pagination support (cursor and offset). Use when you need to retrieve all organization subscriptions or need to paginate through results. End users only see their own subscriptions." }, { "slug": "ZENDESK_GET_ORGANIZATION_TAGS", "name": "Get Organization Tags", "description": "List all tags associated with a specific Zendesk organization. Use when you need to retrieve the tags assigned to a particular organization for ticket categorization, filtering, or reporting purposes." }, { "slug": "ZENDESK_GET_ORGANIZATION_TICKETS", "name": "Get Organization Tickets", "description": "Get tickets for a specific organization in Zendesk. Returns tickets where organization_id matches the specified organization. Use when you need to retrieve all tickets associated with a particular organization, such as for reporting or review purposes. Pagination is available for large result sets; follow next_page links until null to retrieve all tickets. Note: This endpoint returns organization tickets that may include tickets from multiple requesters within the organization." }, { "slug": "ZENDESK_GET_ORGANIZATION_USERS", "name": "List Organization Users", "description": "List all users associated with a specific Zendesk organization. Returns a paginated list of users who are members of the organization. Use when you need to see all users belonging to a particular organization, retrieve organization membership information, or audit organization access. Supports filtering by role, permission sets, and external IDs. Supports pagination via page number or cursor-based pagination." }, { "slug": "ZENDESK_GET_ORGANIZATION_USERS_COUNT", "name": "Count Organization Users", "description": "Count users in a specific Zendesk organization by ID. Returns an approximate count of users. Use when you need to know how many users belong to a particular organization for reporting or operational purposes." }, { "slug": "ZENDESK_GET_OWNED_APPS", "name": "Get Owned Apps", "description": "List apps owned by the current Zendesk account. Use when you need to retrieve information about apps installed in your Zendesk instance, such as checking installed apps, reviewing app details (version, status, author), or auditing your app inventory. This endpoint requires admin authentication." }, { "slug": "ZENDESK_GET_PROBLEMS", "name": "List Ticket Problems", "description": "List Zendesk ticket problems. Use when you need to retrieve all tickets of type 'problem' in your Zendesk account. The response is always ordered by updated_at by default; use sort_by and sort_order parameters to customize. Supports both offset and cursor-based pagination. Note: Problems are tickets with type='problem'. This endpoint specifically returns problem-type tickets which are linked to other incidents that share the same root cause." }, { "slug": "ZENDESK_GET_PUBLIC_LOCALES", "name": "List Public Locales", "description": "List all available public locales that can be used for translations in Zendesk. Use when you need to enumerate supported languages/locales for your Zendesk account, display language options to users, or determine which locales are available for ticket or article translations. This is a read-only, idempotent operation that returns the complete list of public locales with no pagination parameters." }, { "slug": "ZENDESK_GET_RECENT_TICKETS", "name": "Get Recent Tickets", "description": "List recently viewed tickets in Zendesk. Returns tickets sorted by the time they were last viewed, most recent first. Useful for agents to quickly access tickets they've been working on. The endpoint returns tickets visible to the agent based on their permission restrictions. Pagination is limited to 10,000 records (100 pages * 100 per page). Use this action to retrieve the tickets an agent has recently accessed in the Zendesk interface." }, { "slug": "ZENDESK_GET_REMOTE_AUTHENTICATIONS", "name": "List Remote Authentications", "description": "List all remote authentication configurations in your Zendesk account. Use this action when you need to enumerate SSO configurations, check which authentication methods are enabled, or retrieve metadata about remote authentication settings for agents and end users. This is a read-only, idempotent operation that returns all configured remote authentication providers including SAML, LDAP, JWT, and OAuth configurations." }, { "slug": "ZENDESK_GET_REQUEST_COMMENTS", "name": "List Request Comments", "description": "List comments on a Zendesk request. Use when you need to retrieve all comments from a specific ticket request to understand the conversation history or gather context for responding. The comments are returned in chronological order. Each comment includes author information, content (both plain text and HTML formats), attachments, and metadata about how and when it was created." }, { "slug": "ZENDESK_GET_REQUESTS_CCDB", "name": "List CCD Requests", "description": "List CCD Requests. Use when you need to retrieve requests where the authenticated end user is listed as a CC (carbon copy) recipient. These are requests the user is watching but did not create. Supports sorting by creation or update timestamps." }, { "slug": "ZENDESK_GET_REQUESTS_COMMENT", "name": "Get Request Comment", "description": "Get a specific comment from a Zendesk request. Use when you need to retrieve a single comment by its ID for a given request, such as displaying a specific comment detail or checking comment metadata. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_REQUESTS_SEARCH", "name": "Search Requests", "description": "Search for requests in Zendesk using query syntax. Use when you need to find customer requests across Zendesk using flexible search criteria such as status, priority, subject, or requester information. Returns paginated results with request details. This action is read-only and idempotent - searching for requests does not modify any data." }, { "slug": "ZENDESK_GET_REQUESTS_SOLVED", "name": "List Solved Requests", "description": "List Zendesk requests with the 'solved' status. Useful for reviewing completed customer requests, generating reports on resolution times, or tracking customer satisfaction. Use this action when you need to retrieve requests that have been marked as solved." }, { "slug": "ZENDESK_GET_ROUTING_AGENTS_INSTANCE_VALUES", "name": "Get Agent Attribute Values", "description": "Retrieve attribute values for multiple agents/users using the Skill-Based Routing API. Use when you need to get the routing attribute values (such as skills, languages, or other qualifications) assigned to specific agents. This action is read-only and idempotent. Note: This action returns only the attribute values directly assigned to the agents. It does not include inherited or group-based attributes." }, { "slug": "ZENDESK_GET_SATISFACTION_RATINGS", "name": "List Satisfaction Ratings", "description": "List satisfaction ratings for tickets in Zendesk. Use when you need to retrieve customer satisfaction feedback, analyze CSAT scores, or review ratings with their associated tickets and assignees. Supports both offset and cursor pagination for large datasets." }, { "slug": "ZENDESK_GET_SATISFACTION_RATINGS_COUNT", "name": "Count Satisfaction Ratings", "description": "Count satisfaction ratings in Zendesk. Returns an approximate count of satisfaction ratings. Use when you need to know how many satisfaction ratings exist for reporting or operational purposes." }, { "slug": "ZENDESK_GET_SEARCH_COUNT", "name": "Get Search Results Count", "description": "Count the number of items matching a search query in Zendesk. Use when you need to know how many results a search would return without fetching all the actual results. This is useful for displaying result counts before executing a full search." }, { "slug": "ZENDESK_GET_SEARCH_EXPORT", "name": "Export Search Results", "description": "Export search results from Zendesk using cursor-based pagination. Use when you need to export large sets of search results (tickets, users, organizations, groups) and process them in batches using cursor pagination. This action differs from the regular search endpoint by supporting cursor-based pagination instead of offset pagination, making it more efficient for large datasets. The 'page_after' parameter in responses contains the cursor token for fetching subsequent pages." }, { "slug": "ZENDESK_GET_SECURITY_SETTINGS", "name": "Get Security Settings", "description": "Show Security Settings for a Zendesk account. Use when you need to retrieve the security configuration of a Zendesk account, including session timeouts, password policies, two-factor authentication settings, IP restrictions, and account assumption options. This is a read-only, idempotent operation that does not modify any data. This action is useful for auditing security settings, verifying compliance requirements, or understanding the security posture of a Zendesk account." }, { "slug": "ZENDESK_GET_SIDE_CONVERSATIONS_EVENTS", "name": "List Side Conversation Events", "description": "Retrieve side conversation events for incremental export. Returns events created since the specified start_time in chronological order. Use when you need to export or sync side conversation events for backup, analytics, or integration purposes. This action supports pagination via the next_page URL which contains a next_start_time parameter — pass that timestamp as start_time for subsequent requests. Only available to Admins. Note: This is a read-only, idempotent action suitable for building event pipelines or audit trails." }, { "slug": "ZENDESK_GET_SUPPORT_ADDRESS", "name": "Get Support Address", "description": "Get a support address by its unique ID. Use when you have a support_address_id and need to retrieve details including the email address, brand association, and DNS verification statuses. This is a read-only operation." }, { "slug": "ZENDESK_GET_TAGS", "name": "List Tags", "description": "List Zendesk tags in order of popularity. Use when you need to view all available tags in your Zendesk account, or when you need to find tags that are most frequently used across tickets." }, { "slug": "ZENDESK_GET_TAGS_COUNT", "name": "Count Tags", "description": "Count Tags in Zendesk. Returns an approximate count of tags. Use when you need to know how many tags exist in your Zendesk account for reporting or operational purposes." }, { "slug": "ZENDESK_GET_TARGET", "name": "Show Target", "description": "Show a specific target by its ID. Use when you have a target ID and need to retrieve its details including title, type, active status, and creation timestamp. This is a read-only, idempotent operation that returns a single target object. This action is irreversible for data retrieval - it only reads target information, no destructive changes occur." }, { "slug": "ZENDESK_GET_TARGET_FAILURE", "name": "Show Target Failure", "description": "Show a target failure in Zendesk. Use when you have a target_failure_id and need to retrieve details about a failed target execution, including the HTTP status code, raw request/response data, and consecutive failure count. This is a read-only operation." }, { "slug": "ZENDESK_GET_TARGET_FAILURES", "name": "List Target Failures", "description": "List the 25 most recent target failures in Zendesk. Target failures occur when a target (webhook, callback, or external integration) fails to execute properly. Each failure record includes the request sent, response received, and status code. Use this action to monitor and troubleshoot failing integrations." }, { "slug": "ZENDESK_GET_TARGETS", "name": "List Targets", "description": "List all targets for the current Zendesk account. Use when you need to retrieve, audit, or review the targets configured in your Zendesk account. Targets are endpoints that receive data when triggers or automations fire. This is a read-only, idempotent action with no required parameters." }, { "slug": "ZENDESK_GET_TICKET_AUDIT_BY_ID", "name": "Get Ticket Audit", "description": "Show a specific audit for a ticket from Zendesk. Returns a single audit record containing events that describe changes made to the ticket. Each audit captures a specific action such as comments, status changes, assignments, or field updates. Use this action when you have a specific audit ID and want to retrieve detailed information about that audit event. Use this action when you need to retrieve detailed information about a specific audit record for a ticket, including all events and metadata associated with that audit." }, { "slug": "ZENDESK_GET_TICKET_COLLABORATORS", "name": "List Ticket Collaborators", "description": "List all collaborators (CC'd users) on a Zendesk ticket. Use when you need to see who is currently CC'd on a ticket, such as when coordinating with multiple stakeholders or before adding/removing collaborators. Each collaborator is a user object with basic profile information. Paginate through results using page and per_page parameters." }, { "slug": "ZENDESK_GET_TICKET_COMMENTS", "name": "Get Ticket Comments", "description": "List comments on a Zendesk ticket. Returns the comments added to the ticket in chronological order (oldest first by default). Each comment has both `html_body` and `plain_body` fields — use `plain_body` for clean text without HTML. Public comments are visible to end users while internal comments are only visible to agents. Use the `include_inline_images` parameter to include inline images as attachments. For bulk operations, honor `Retry-After` headers on HTTP 429 rate limit responses." }, { "slug": "ZENDESK_GET_TICKET_EMAIL_C_CS", "name": "List Ticket Email CCs", "description": "List Email CCs for a Ticket. Use when you need to retrieve a list of users who are CC'd on a specific Zendesk ticket. This endpoint returns all email CC records associated with the ticket, including user details and timestamps." }, { "slug": "ZENDESK_GET_TICKET_FIELD2", "name": "Show Ticket Field", "description": "Show a specific ticket field by its ID. Use when you need to retrieve details of a single ticket field in your Zendesk account, such as for auditing, understanding field configuration, or validating field properties. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_TICKET_FIELDS", "name": "List Ticket Fields", "description": "List all system and custom ticket fields in Zendesk. Use when you need to retrieve field definitions for building forms, validating field values, or understanding available ticket field structure. Supports cursor-based pagination for large datasets. When creator=true is specified, includes creator_user_id and creator_app_name for each field. Locale parameter affects dynamic content variants for title_in_portal." }, { "slug": "ZENDESK_GET_TICKET_FIELDS_COUNT", "name": "Count Ticket Fields", "description": "Count ticket fields in Zendesk. Returns an approximate count of system and custom ticket fields. Use when you need to know how many ticket fields exist for reporting or operational purposes." }, { "slug": "ZENDESK_GET_TICKET_FIELDS_SHOW_MANY", "name": "Show Many Ticket Fields", "description": "Retrieve multiple ticket fields by their IDs or keys in a single request. Use when you have specific ticket field identifiers (numeric IDs like '123' or keys like 'priority', 'status', 'subject') and need to fetch their complete metadata including type, title, required status, custom options, and portal visibility settings. This is a read-only, idempotent operation. Up to 100 fields can be retrieved per request. Either `ids` or `keys` parameter can be used, but not both simultaneously." }, { "slug": "ZENDESK_GET_TICKET_FOLLOWERS", "name": "List Ticket Followers", "description": "List all followers on a Zendesk ticket. Use when you need to see who is following a ticket, such as when coordinating with stakeholders or managing ticket notifications. Followers receive notifications about the ticket. Each follower is a user object with basic profile information. Paginate through results using page and per_page parameters." }, { "slug": "ZENDESK_GET_TICKET_FORMS", "name": "List Ticket Forms", "description": "List all ticket forms configured in your Zendesk account. Use when you need to enumerate available ticket forms, retrieve form metadata like display names and visibility settings, or audit which ticket forms are active and visible to end users or agents. Supports filtering by active status, end-user visibility, form type (standard or service catalog), and brand association. Also supports both traditional offset pagination and cursor-based pagination." }, { "slug": "ZENDESK_GET_TICKET_FORMS_SHOW_MANY", "name": "Show Many Ticket Forms", "description": "Show multiple ticket forms by their IDs. Use when you need to retrieve specific ticket forms by their IDs to display form details, validate form availability, or bulk fetch form configurations. The `ids` parameter accepts a comma-separated list of ticket form IDs (e.g., '1,2,3'). Returns an empty ticket_forms array for non-existent IDs without error. Supports optional filtering by active status, end-user visibility, brand association, and default form fallback behavior." }, { "slug": "ZENDESK_GET_TICKET_INCIDENTS", "name": "List Ticket Incidents", "description": "List incidents linked to a problem ticket in Zendesk. Use when you need to retrieve all incident tickets that share the same root cause as a problem ticket. Incidents are tickets of type 'incident' that are related to a problem ticket via the problem_id field. Supports both offset and cursor-based pagination." }, { "slug": "ZENDESK_GET_TICKET_METRIC", "name": "Get Ticket Metric", "description": "Retrieve a specific ticket metric from Zendesk by its ID. Use this action when you have a ticket_metric_id and need to fetch the detailed metrics for that ticket, including resolution times, wait times, reply times, and SLA breaches. This action is read-only and idempotent — fetching the same metric multiple times has no side effects." }, { "slug": "ZENDESK_GET_TICKET_METRICS", "name": "Get Ticket Metrics", "description": "List Ticket Metrics from Zendesk. Returns a list of tickets with their associated metrics including response times, resolution times, and assignment statistics. Use when analyzing ticket performance, agent productivity, or customer satisfaction metrics. This action supports cursor-based pagination via page_size, page_after, and page_before parameters for efficient traversal of large datasets." }, { "slug": "ZENDESK_GET_TICKETS_AUDITS", "name": "List Ticket Audits", "description": "List all audits (change history) for a specific Zendesk ticket. Use when you need to track all changes made to a ticket including comments, status changes, assignments, and other modifications. Each audit contains one or more events representing individual changes. This action is read-only and supports both traditional offset pagination and cursor-based pagination for large datasets. Audits are returned in chronological order by default. Note: This action retrieves the complete audit trail which is useful for compliance, troubleshooting, and understanding ticket evolution." }, { "slug": "ZENDESK_GET_TICKETS_AUDITS_COUNT", "name": "Count Ticket Audits", "description": "Count audits for a specific ticket in Zendesk. Returns an approximate count of audits associated with the specified ticket. Use when you need to know how many audit records exist for a ticket for reporting, analytics, or operational purposes." }, { "slug": "ZENDESK_GET_TICKETS_COMMENTS_COUNT", "name": "Count Ticket Comments", "description": "Count comments on a Zendesk ticket. Returns an approximate count of comments added to the specified ticket. Use when you need to know how many comments exist on a ticket without fetching the full comment list, such as for reporting or determining if pagination is needed." }, { "slug": "ZENDESK_GET_TICKETS_CONVERSATION_LOG", "name": "Get Ticket Conversation Log", "description": "List conversation log events for a specific Zendesk ticket. Use this action when you need to retrieve the chronological history of interactions, comments, and activities on a ticket. The conversation log provides a comprehensive view of all events including comments, status changes, and other ticket activities. Supports cursor-based pagination for accessing large datasets." }, { "slug": "ZENDESK_GET_TICKETS_COUNT", "name": "Count Zendesk Tickets", "description": "Count the number of tickets in Zendesk. Returns an approximate count of tickets with the timestamp of when the count was last calculated. This is a read-only, idempotent operation. Use when you need to know the total number of tickets for reporting, capacity planning, or operational purposes. Note that the count is approximate and may not reflect real-time changes. For detailed per-ticket information, use ZENDESK_LIST_ZENDESK_TICKETS instead." }, { "slug": "ZENDESK_GET_TICKET_SKIPS", "name": "List Ticket Skips", "description": "List ticket skips for a specific ticket from Zendesk. Use when you need to retrieve all skip records associated with a particular ticket, such as when reviewing which agents skipped working on a ticket or analyzing skip patterns. This action is read-only and idempotent. It returns a list of skip records that include the reason for skipping, who skipped it, and when." }, { "slug": "ZENDESK_GET_TICKETS_METRICS", "name": "Get Ticket Metrics", "description": "Get ticket metrics from Zendesk for a specific ticket. Returns performance metrics including resolution times, agent and requester wait times, reply counts, station changes, and timestamps for key events. Use when you need to analyze ticket performance, SLA compliance, or agent productivity metrics." }, { "slug": "ZENDESK_GET_TICKETS_SIDE_CONVERSATIONS_EVENTS", "name": "List Side Conversation Events", "description": "List all events for a specific side conversation on a Zendesk ticket. Returns events in chronological order including creation, replies, and state updates. Use this action when you need to view the complete history of a side conversation including all messages and state changes. Side conversations are private agent-to-agent communications that don't appear in the main ticket thread." }, { "slug": "ZENDESK_GET_TRIGGER", "name": "Show Trigger", "description": "Show a specific trigger by its ID. Use when you need to retrieve details of a single trigger in your Zendesk account, such as for auditing, modifying, or understanding what actions and conditions are configured for a particular trigger. This is useful for reviewing business rules before making changes or understanding automation behavior. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_TRIGGER_CATEGORIES", "name": "List Trigger Categories", "description": "List all ticket trigger categories in your Zendesk account. Use when you need to retrieve, audit, or review the trigger category organization for your business rules and automations. Supports filtering with sort options (position, name, created_at, updated_at) and can include rule counts via the `include` parameter to show how many triggers are in each category." }, { "slug": "ZENDESK_GET_TRIGGER_CATEGORIES2", "name": "Show Trigger Category", "description": "Show a specific ticket trigger category by its ID. Use when you need to retrieve details of a single trigger category, such as for auditing or understanding the organization of your ticket triggers. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_TRIGGERS", "name": "List Ticket Triggers", "description": "List all ticket triggers for the current Zendesk account. Use when you need to retrieve, audit, or review the trigger rules configured in your Zendesk account. Triggers are business rules that automatically perform actions based on conditions when tickets are created or updated. Supports filtering by active status and category. Also supports both traditional offset pagination and cursor-based pagination for sorting." }, { "slug": "ZENDESK_GET_TRIGGERS_DEFINITIONS", "name": "Get Ticket Trigger Definitions", "description": "Get Ticket Trigger Action and Condition Definitions. Use when you need to discover the available actions and conditions that can be used to create or configure ticket triggers. This returns metadata about what types of automations are possible - the action definitions show what a trigger can do (e.g., set status to 'solved'), while the condition definitions show what conditions can trigger it (e.g., when status is 'open'). This is a read-only, idempotent operation that returns the available trigger definitions metadata." }, { "slug": "ZENDESK_GET_TRIGGERS_SEARCH", "name": "Search Ticket Triggers", "description": "Search for Zendesk ticket triggers by their title. Use when you need to find triggers in your Zendesk account by searching for keywords in their titles. Triggers are business rules that automatically perform actions when certain conditions are met on tickets. This action supports filtering by active status, sorting, and sideloading usage statistics. This is a read-only and idempotent action that queries existing triggers without making any changes." }, { "slug": "ZENDESK_GET_USER", "name": "Get User", "description": "Tool to fetch a single Zendesk user by numeric user_id. Use when you have a user ID from ticket payloads (requester_id, submitter_id, assignee_id, author_id) and need to enrich with full user details (name, email, role, organization_id, etc.)." }, { "slug": "ZENDESK_GET_USER_ENTITLEMENTS_FULL", "name": "Get Full User Entitlements", "description": "Tool to retrieve full entitlements for a Zendesk user across all products (Chat, Explore, Talk, Guide). Use when you need to check which Zendesk products a user has access to and their activation status. Returns detailed entitlement information including whether each product is active and its display name." }, { "slug": "ZENDESK_GET_USER_EVENTS", "name": "Get User Events", "description": "Retrieve event history for a specific Zendesk user. Use when you need to track user activity such as login history, profile changes, or other interactions with the Zendesk system. Supports filtering by event source, type, and time range. This action is read-only and idempotent. Note: The 'zendesk' source value is protected; attempts to use it when creating events result in an error." }, { "slug": "ZENDESK_GET_USER_FIELD_BY_ID", "name": "Get User Field By ID", "description": "Retrieve a single Zendesk user field by its numeric ID. Use when you have a user field ID and need to fetch its full definition including title, type, description, custom options, validation patterns, and other settings. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_USER_FIELD_OPTIONS", "name": "List User Field Options", "description": "List custom user field options for a given user field. Use when you need to retrieve the dropdown or tag options available for a custom user field in Zendesk. This action fetches the configurable options that can be selected for custom user fields of type dropdown, tagger, or similar multi-option field types." }, { "slug": "ZENDESK_GET_USER_FIELDS", "name": "List User Fields", "description": "List all custom user fields configured in your Zendesk account. Use when you need to retrieve the schema of user-defined fields (like dropdown options, validation patterns, or field types) to build dynamic forms or validate field values." }, { "slug": "ZENDESK_GET_USER_FIELDS_SHOW_MANY", "name": "Get User Fields Show Many", "description": "Retrieve multiple Zendesk user fields by their keys. Use when you have specific user field keys and need to fetch their definitions (title, type, description, options, etc.) in a single request instead of making individual calls. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_USER_PROFILES2", "name": "Get User Profile by Profile ID", "description": "Retrieve a single Zendesk user profile by its Sunshine profile ID. Use this action when you have a specific profile_id (obtained from profile listings or search results) and need to fetch the full profile details including attributes, identifiers, and linked user information. Note that this uses the Sunshine Profiles API with string profile IDs, not numeric user IDs from the Users API." }, { "slug": "ZENDESK_GET_USER_PROFILES_EVENTS2", "name": "Get User Profile Events by ID", "description": "Get events for a Sunshine profile by its profile ID. Use when you have a specific Sunshine profile ID (obtained from profile lookup or creation) and need to retrieve all events associated with that profile. This action is read-only and idempotent — use it to track profile activity, audit event history, or monitor user interactions for a specific profile. Note: The profile must exist or the request returns 404 Not Found. Use this action after creating or looking up a Sunshine profile to retrieve its event history." }, { "slug": "ZENDESK_GET_USERS_ASSIGNED_TICKETS", "name": "Get User's Assigned Tickets", "description": "List tickets assigned to a specific Zendesk user. Returns all tickets where the specified user is the assignee. Use when you need to retrieve all tickets currently assigned to a particular agent or user, such as for workload analysis, ticket reassignment, or performance reporting. Pagination is available for large result sets; follow next_page links until null to retrieve all assigned tickets. Note: This endpoint only returns tickets assigned to the user, not tickets requested by or submitted by the user." }, { "slug": "ZENDESK_GET_USERS_AUTOCOMPLETE", "name": "Autocomplete Users", "description": "Autocomplete users by name or phone number. Use when you need to find users based on a partial name or phone number for ticket creation or user lookup scenarios. At least one of 'name' or 'phone' must be provided." }, { "slug": "ZENDESK_GET_USERS_BRAND_AGENTS", "name": "List Brand Agent Memberships By User", "description": "List brand agent memberships for a specific user in Zendesk. Use when you have a user ID and need to find all brands that the user is an agent for, such as auditing which brands a specific agent can access. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_USERS_CCD_TICKETS", "name": "Get User's CC'd Tickets", "description": "List tickets where a specific Zendesk user is CC'd (carbon copied). Use when you need to retrieve all tickets where a particular user has been added as a CC recipient, such as for tracking user notifications, compliance monitoring, or ticket visibility analysis. Pagination is available for large result sets; follow next_page links until null to retrieve all CC'd tickets. Note: This endpoint only returns tickets where the user is a CC, not tickets requested by or assigned to the user." }, { "slug": "ZENDESK_GET_USERS_COMPLIANCE_DELETION_STATUSES", "name": "Get User Compliance Deletion Statuses", "description": "Tool to fetch GDPR compliance deletion statuses for a specific Zendesk user. Use when you need to check the deletion status for each compliance area (e.g., chat, talk) associated with a user account. Returns status records showing deletion requests and their current state. Use when auditing user data deletion requests, verifying GDPR compliance status, or tracking the progress of data removal across different Zendesk products." }, { "slug": "ZENDESK_GET_USERS_COUNT", "name": "Count Users", "description": "Count users in Zendesk. Returns an approximate count of users. If the count is more than 1000, the value is an estimate and the response is refreshed every 24 hours. Use when you need to know how many users exist in the system for reporting or administrative purposes." }, { "slug": "ZENDESK_GET_USER_SESSIONS", "name": "List User Sessions", "description": "List all sessions for a specific Zendesk user. Returns details about each active session including authentication time and last seen time. Use this action to monitor session activity for a specific user, investigate security events, or audit login history for account troubleshooting. Use when you need to see all active sessions for a particular user, track their login activity, or investigate potential unauthorized access." }, { "slug": "ZENDESK_GET_USERS_FOLLOWED_TICKETS", "name": "Get User's Followed Tickets", "description": "List tickets the specified Zendesk user is following. Returns all tickets where the specified user is a follower. Use when you need to retrieve all tickets a particular user is watching or tracking, such as for notification purposes, audit trails, or understanding which tickets a user has interest in. Pagination is available for large result sets; follow next_page links until null to retrieve all followed tickets." }, { "slug": "ZENDESK_GET_USERS_GROUP_MEMBERSHIPS", "name": "List Memberships By User", "description": "List group memberships for a specific Zendesk user. Use when you need to retrieve all groups a user belongs to, audit user group assignments, or understand which support groups a specific user is a member of. This action is read-only and idempotent. Supports both offset pagination (page, per_page) and cursor pagination (page_size, page_after, page_before). Also supports sideloading users and groups via the include parameter." }, { "slug": "ZENDESK_GET_USERS_GROUP_MEMBERSHIPS_BY_ID", "name": "Get User's Group Membership", "description": "Get a specific group membership for a user by their IDs. Use when you have both a user ID and a group membership ID and need to retrieve details including the associated group, user, and timestamps. This action retrieves a single group membership record scoped to a specific user, unlike GetGroupMembership which retrieves by membership ID alone, and unlike ListUsersGroupMemberships which lists all memberships for a user." }, { "slug": "ZENDESK_GET_USERS_GROUPS", "name": "List User Groups", "description": "List all groups that a specific Zendesk user belongs to. Use when you need to find which support groups a user is a member of, audit team memberships, or retrieve group membership information for a particular user. This action supports both offset pagination (page as integer, per_page) and cursor pagination (page as object with size/after/before). It also supports excluding deleted groups and sorting results. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_USERS_GROUPS_COUNT", "name": "Count User Groups", "description": "Count user groups in Zendesk. Returns an approximate count of groups that a specific user belongs to. Use when you need to know how many groups a user is assigned to for reporting, organizational management, or operational purposes. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_USERS_IDENTITIES2", "name": "Show User Identity", "description": "Tool to show a specific user identity by user ID and identity ID. Use when you need to retrieve detailed information about a particular identity associated with a Zendesk user. This action is read-only and idempotent - it only retrieves data without modifying anything." }, { "slug": "ZENDESK_GET_USERS_ME_SESSION", "name": "Get Current Session", "description": "Show the currently authenticated session in Zendesk. Returns details about the active session including authentication time, last seen time, and user ID. Use when you need to verify the current session status or retrieve session metadata for the authenticated user." }, { "slug": "ZENDESK_GET_USERS_ME_SETTINGS", "name": "Get Current User Settings", "description": "Get the settings for the currently authenticated user in Zendesk. Returns user preferences including Admin Center UI settings, Lotus UI settings (onboarding, tooltips, keyboard shortcuts), and shared views order. Use this action to retrieve the current user's personal settings and preferences." }, { "slug": "ZENDESK_GET_USERS_ORGANIZATION_MEMBERSHIPS", "name": "List User Organization Memberships", "description": "List organization memberships for a specific Zendesk user. Use when you have a user_id and need to retrieve all organizations that user belongs to. Returns membership details including default status, view_tickets permission, and organization info. This action is read-only and idempotent - calling it multiple times with the same user_id will return the same result." }, { "slug": "ZENDESK_GET_USERS_ORGANIZATION_MEMBERSHIPS2", "name": "Get User's Organization Membership", "description": "Get details for a specific organization membership by user ID and membership ID. Use when you have both a user ID and an organization membership ID and need to retrieve the associated membership metadata including organization details, default status, and ticket viewing permissions. This action is read-only and idempotent - calling it multiple times with the same parameters will return the same result." }, { "slug": "ZENDESK_GET_USERS_ORGANIZATIONS", "name": "List User Organizations", "description": "List organizations associated with a specific Zendesk user. Use when you have a user_id and need to retrieve all organizations that user belongs to. Returns organization details including name, domain names, tags, and custom fields. This action is read-only and idempotent - calling it multiple times with the same user_id will return the same result." }, { "slug": "ZENDESK_GET_USERS_ORGANIZATIONS_COUNT", "name": "Get User's Organizations Count", "description": "Returns an approximate count of organizations that a user belongs to. Use when you need to know how many organizations a specific user is associated with in Zendesk." }, { "slug": "ZENDESK_GET_USERS_ORGANIZATION_SUBSCRIPTIONS", "name": "List User's Organization Subscriptions", "description": "List User's Organization Subscriptions - retrieves organization subscriptions for a specific user. Use when you need to get all organization subscriptions associated with a particular user, including the organization IDs and creation timestamps. Supports both cursor and offset pagination. End users only see their own subscriptions. This is a read-only operation that does not modify any data." }, { "slug": "ZENDESK_GET_USERS_PASSWORD_REQUIREMENTS", "name": "Get User Password Requirements", "description": "Get password requirements for a specific Zendesk user. Use when you need to retrieve the password policy rules that apply to a user's password, such as minimum length, complexity requirements, or expiration policies. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_USERS_PROFILES", "name": "Get Users Profiles", "description": "Retrieve profiles associated with a specific Zendesk user by user ID. Use when you need to look up user profile information using the Zendesk user ID. This action returns all profiles linked to the specified user account. This action is read-only and idempotent. Note: Access requires agent permissions in Zendesk (Support > People > Roles > People)." }, { "slug": "ZENDESK_GET_USERS_RELATED", "name": "Get User Related Info", "description": "Get related counts and information for a specific Zendesk user by ID. Returns metadata about assigned tickets, CC'd tickets, organization subscriptions, and requested tickets associated with the user. Use when you need to understand the scale and composition of a user's ticket activity and subscriptions in Zendesk. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_USERS_REQUESTED_TICKETS", "name": "Get User's Requested Tickets", "description": "List tickets requested by a specific Zendesk user. Use when you need to retrieve all tickets where a particular user is the original requester, such as for tracking user's support history, compliance monitoring, or ticket ownership analysis. Pagination is available for large result sets; follow next_page links until null to retrieve all requested tickets. Note: This endpoint only returns tickets where the user is the requester, not tickets where they are CC'd or assigned." }, { "slug": "ZENDESK_GET_USERS_REQUESTS", "name": "List User Requests", "description": "List ticket requests for a specific Zendesk user. Use when you need to retrieve all requests associated with a particular user ID. This is useful for viewing a user's request history or monitoring their open tickets. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_USERS_SKIPS", "name": "List User Skips", "description": "List ticket skips for a specific user from Zendesk. Use when you need to retrieve all skip records associated with a particular user, such as when analyzing which tickets a user has skipped or reviewing their skip history. This action is read-only and idempotent. Note that archived tickets are not included in the results." }, { "slug": "ZENDESK_GET_USERS_TAGS", "name": "Get User Tags", "description": "List all tags assigned to a specific Zendesk user. Use when you need to see what tags are associated with a particular user for organizing, filtering, or categorizing user data. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_USER_TICKETS_ASSIGNED_COUNT", "name": "Count User Assigned Tickets", "description": "Count tickets assigned to a specific user in Zendesk. Returns an approximate count of tickets where the user is the assignee. Use when you need to know how many tickets are currently assigned to a particular user for workload analysis, reporting, or capacity planning. Note: The count is approximate and may not reflect real-time changes. The count is refreshed periodically rather than being calculated on every request." }, { "slug": "ZENDESK_GET_VIEW_DEFINITIONS", "name": "List View Filter Definitions", "description": "List the definitions of the conditions and actions available for constructing views in Zendesk. Use this action when you need to discover what filter fields, operators, grouping options, and sorting options are available for building or modifying views. This is a read-only action that returns the schema/structure for view definitions." }, { "slug": "ZENDESK_GET_VIEWS", "name": "List Views", "description": "List shared and personal views available to the current user in Zendesk. Use when you need to retrieve, audit, or review the views configured in your Zendesk account. Views are saved ticket filters that help organize and prioritize support work. Supports filtering by access level (personal/shared/account), active status, and group. Supports both traditional offset pagination and cursor-based pagination." }, { "slug": "ZENDESK_GET_VIEWS_ACTIVE", "name": "List Active Views", "description": "List all active shared and personal views available in Zendesk. Use when you need to retrieve, audit, or present the view configuration in your Zendesk account. Views define how tickets are filtered, grouped, and displayed to agents. Supports filtering by access type (personal, shared, account), group membership, and sorting preferences." }, { "slug": "ZENDESK_GET_VIEWS_COMPACT", "name": "List Views - Compact", "description": "Retrieves a compacted list of shared and personal views available to the current user in Zendesk. Use when you need to quickly fetch a lightweight list of views without full details. This endpoint returns essential view information suitable for dropdown menus or quick selection lists. Unlike the standard /views endpoint, this compact version provides a streamlined response with the most commonly needed fields." }, { "slug": "ZENDESK_GET_VIEWS_COUNT", "name": "Count Views", "description": "Count shared and personal views in Zendesk. Returns an approximate count of all views (both shared and personal) available in the account. Use when you need to know the total number of views configured for reporting or operational purposes." }, { "slug": "ZENDESK_GET_VIEWS_COUNT_MANY", "name": "Count Tickets in Views", "description": "Count tickets in multiple Zendesk views. Returns the ticket count for each view ID provided in a single API call. Use when you need to quickly get counts for multiple views at once for reporting or dashboard purposes. Note: This is a read-only, idempotent operation. Counts may be cached on the server side." }, { "slug": "ZENDESK_GET_VIEWS_EXECUTE", "name": "Execute View", "description": "Execute a Zendesk view to retrieve its column titles and matching ticket rows. Use when you need to run a saved view and get its results - useful for checking which tickets match a view's conditions without manually applying filters. Supports pagination, custom sorting, and optional grouping of results. Returns the view's execution metadata alongside the matching rows." }, { "slug": "ZENDESK_GET_VIEWS_EXPORT", "name": "Export View", "description": "Export a Zendesk view as a CSV file. Use when you need to download view data for offline analysis, reporting, or data migration purposes. The export contains all tickets matching the view's filter criteria and columns. Note that if the export is not immediately available, Zendesk may return a status indicating the job is queued - retry after a short delay in such cases. Note: This action downloads file content and may take longer for views with large datasets." }, { "slug": "ZENDESK_GET_VIEWS_SEARCH", "name": "Search Views", "description": "Search for Zendesk views by their title. Use when you need to find views in your Zendesk account by searching for keywords in their titles. Views are saved searches that display tickets matching specific conditions. This action supports filtering by access level, active status, group, and sorting results." }, { "slug": "ZENDESK_GET_VIEWS_SHOW_MANY", "name": "List Views By IDs", "description": "Get multiple Zendesk views by their IDs. Use when you need to retrieve specific views by their IDs in a single request rather than fetching them one by one. The IDs should be provided as a comma-separated string. This action is read-only and idempotent. Returns only views that exist and for which the user has permission." }, { "slug": "ZENDESK_GET_VIEWS_TICKETS", "name": "List Tickets From View", "description": "List tickets from a specific Zendesk view. Use this action when you need to retrieve all tickets that match a view's conditions, such as for reporting, bulk operations, or analyzing tickets filtered by specific criteria. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_VIEW_TICKET_COUNT", "name": "Count Tickets in View", "description": "Count tickets in a specific view in Zendesk. Returns the number of tickets matching the view's conditions. Use when you need to know how many tickets are in a particular view for reporting, routing decisions, or workload assessment. The count may be null if the system is still loading and caching new data. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_ZENDESK_ACTIVITIES", "name": "List Activities", "description": "List ticket activities in the last 30 days affecting your Zendesk. Activities include actions like ticket assignments, status changes, comments, and more. This action is read-only and idempotent — use it to monitor ticket activity or build activity feeds." }, { "slug": "ZENDESK_GET_ZENDESK_CUSTOM_ROLES", "name": "List Custom Roles", "description": "List all custom roles configured in your Zendesk account. Use when you need to discover available roles, review role configurations, or understand permission structures for your agents. Returns metadata including role names, descriptions, role types, and permission configurations. This is a read-only, idempotent operation with no required parameters." }, { "slug": "ZENDESK_GET_ZENDESK_ORGANIZATION", "name": "Get Zendesk Organization", "description": "Get metadata for a specific Zendesk organization by ID. Response fields are available under data.organization_info. Does not return member/user lists." }, { "slug": "ZENDESK_GET_ZENDESK_ORGANIZATION_MERGE", "name": "Get Zendesk Organization Merge", "description": "Retrieve the details of a specific organization merge operation in Zendesk. This action shows the merge status and the organizations involved. Use when you need to check the status of an organization merge or view details of a past merge operation. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_GET_ZENDESK_ORGANIZATIONS_SUBSCRIPTIONS", "name": "List Organization Subscriptions", "description": "List all organization subscriptions for a specific Zendesk organization. Returns subscriptions that link users to organizations. Use when you need to see which users are subscribed to a particular organization or audit organization membership. This action is read-only and idempotent. Paginate by following next_page until null to avoid missing subscriptions." }, { "slug": "ZENDESK_GET_ZENDESK_REQUESTS", "name": "List Requests", "description": "List ticket requests in Zendesk. This action retrieves a paginated list of requests, supporting sorting by creation or update time. Use when you need to fetch all or filtered ticket requests from your Zendesk account. This action is read-only and idempotent." }, { "slug": "ZENDESK_GET_ZENDESK_SESSIONS", "name": "List Sessions", "description": "List all active sessions in your Zendesk account. If authenticated as an admin, returns all the active sessions for all users. Otherwise, returns only the sessions for the authenticated user. Use this action to monitor active user sessions, track login activity, or manage session security. Use when you need to audit active user sessions, investigate security events, or retrieve session information for user activity monitoring." }, { "slug": "ZENDESK_GET_ZENDESK_SHARING_AGREEMENTS", "name": "List Sharing Agreements", "description": "List all sharing agreements for your Zendesk account. Sharing agreements define connections between Zendesk accounts for sharing tickets. This action is read-only and idempotent — use it to view current sharing relationships or check agreement status." }, { "slug": "ZENDESK_GET_ZENDESK_SUSPENDED_TICKETS", "name": "List Suspended Tickets", "description": "List suspended tickets in Zendesk. Suspended tickets are tickets that were automatically held for review due to spam detection, banned content, or other filtering rules. This action is read-only and idempotent — use it to review suspended tickets and determine if they should be recovered or deleted." }, { "slug": "ZENDESK_GET_ZENDESK_TICKET_BY_ID", "name": "Get Zendesk Ticket", "description": "Get ticket details from Zendesk. Response wraps all data under a top-level `data` key; access `data['comments']` for comments and `data['comments'][i]['attachments']` for attachments (attachments unavailable from list endpoints). Each comment has both `html_body` and plain `body` fields — choose appropriately. Fields like `subject`, `organization_id`, `author_id`, and `body` may be null; handle defensively. First comment in `data.comments` is not necessarily from the requester — compare `author_id` against ticket `requester_id` to identify requester messages. For bulk calls, honor `Retry-After` headers on HTTP 429." }, { "slug": "ZENDESK_GET_ZENDESK_TICKET_FIELDS_OPTIONS", "name": "List Ticket Field Options", "description": "List Ticket Field Options - Returns a list of custom ticket field options for dropdown and multi-select ticket fields. Use this action to retrieve the available choices users can select when filling out a custom ticket field. This action is read-only and idempotent. Note: Only works with dropdown, tagger, and multi-select custom ticket fields; standard fields like text or date do not have options." }, { "slug": "ZENDESK_GET_ZENDESK_TICKET_FIELDS_OPTIONS2", "name": "Show Ticket Field Option", "description": "Show Ticket Field Option - Retrieves a specific custom ticket field option for dropdown and multi-select ticket fields. Use this action when you have a ticket_field_id and a ticket_field_option_id and need to retrieve the details of that individual option. This action is read-only and idempotent. Note: Only works with dropdown, tagger, and multi-select custom ticket fields; standard fields like text or date do not have options." }, { "slug": "ZENDESK_GET_ZENDESK_TICKET_FORM", "name": "Get Zendesk Ticket Form", "description": "Get details for a specific ticket form in Zendesk by its ID. Returns the complete ticket form object including its name, display settings, visibility conditions, associated ticket fields, and brand restrictions. Use when you need to retrieve detailed information about a particular ticket form configuration. This is a read-only, idempotent operation that does not modify any data." }, { "slug": "ZENDESK_GET_ZENDESK_TICKET_RELATED", "name": "Get Zendesk Ticket Related", "description": "Get related information for a specific Zendesk ticket. This endpoint returns data about tickets that are related to the specified ticket, including follow-up sources, associated Jira issues, and incident counts. Use this action when you need to understand the relationships and connections between tickets in Zendesk." }, { "slug": "ZENDESK_GET_ZENDESK_TICKETS_SIDE_CONVERSATION_ID", "name": "Get Side Conversation", "description": "Get a specific side conversation by its ID for a Zendesk ticket. Side conversations are private agent-to-agent communications that don't notify the customer. Use this action when you need to retrieve details about a specific side conversation on a ticket, such as its current state, participants, or message history. If the side conversation is a child ticket, the external_ids object's targetTicketId property contains the child ticket's ID." }, { "slug": "ZENDESK_GET_ZENDESK_TICKETS_TAGS", "name": "Get Ticket Tags", "description": "List all tags associated with a specific Zendesk ticket. Use when you need to retrieve the tags assigned to a particular ticket for categorization, filtering, or reporting purposes." }, { "slug": "ZENDESK_LIST_ACTIVE_AUTOMATIONS", "name": "List Active Automations", "description": "List all active automations in Zendesk. Use when you need to retrieve the currently active automation rules that automatically perform actions based on ticket conditions. This action returns all automations marked as active, including their conditions and actions. Note: This only returns active automations; to see all automations including inactive ones, you would need a different action." }, { "slug": "ZENDESK_LIST_APP_INSTALLATIONS", "name": "List App Installations", "description": "List all app installations in the Zendesk account. The 'enabled' property indicates whether each installed app is active in the product. Use the 'include' parameter to sideload app object details for each installation." }, { "slug": "ZENDESK_LIST_APP_LOCATIONS", "name": "List App Locations", "description": "List all available locations where Zendesk apps can be installed. Use when you need to discover valid placement options for installing or configuring Zendesk apps. This endpoint requires admin authentication. All returned locations are read-only." }, { "slug": "ZENDESK_LIST_ASSIGNABLE_GROUP_MEMBERSHIPS", "name": "List Assignable Group Memberships", "description": "List assignable group memberships in Zendesk. Use when you need to retrieve the group memberships that agents can be assigned to, typically for understanding agent-group assignments or building assignment interfaces. This action is read-only and idempotent. Returns a maximum of 100 group memberships per page." }, { "slug": "ZENDESK_LIST_ASSIGNABLE_GROUP_MEMBERSHIPS_BY_GROUP", "name": "List Assignable Memberships By Group", "description": "List assignable group memberships for a specific group in Zendesk. Use when you need to retrieve which agents can be assigned to a particular group, typically for building assignment interfaces or auditing group membership capabilities. This action is read-only and idempotent. Returns a maximum of 100 group memberships per page. Note: This action differs from ListAssignableGroupMemberships by filtering to a specific group rather than returning all assignable memberships." }, { "slug": "ZENDESK_LIST_BOOKMARKS", "name": "List Bookmarks", "description": "List Bookmarks returns all bookmarks created by the user. Use when you need to retrieve all bookmarks to find saved tickets or manage bookmarked items. Archived tickets are not included in the response. _tags = [\"readOnlyHint\", \"idempotentHint\"]" }, { "slug": "ZENDESK_LIST_BRAND_AGENTS", "name": "List Brand Agent Memberships", "description": "List brand agent memberships to retrieve which agents are associated with which brands in Zendesk. Use this action when you need to enumerate the brand-agent relationships in a Zendesk account, such as determining which agents can access specific brands or auditing brand access permissions. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_LIST_CUSTOM_OBJECT_RECORD_ATTACHMENTS", "name": "List Custom Object Record Attachments", "description": "List all file attachments for a specific custom object record in Zendesk. Use this action when you need to retrieve the attachments associated with a particular custom object record, for example to display files, verify uploads, or manage attachments for a record. This is a read-only operation that retrieves attachment metadata without downloading file content." }, { "slug": "ZENDESK_LIST_CUSTOM_OBJECT_RECORDS", "name": "List Custom Object Records", "description": "List all records for a specific custom object type in Zendesk. Use this action when you need to retrieve all instances of a custom object (e.g., all car records, all product records) with optional filtering by ID, external ID, sorting, and pagination support. This is a read-only, idempotent operation that returns records with their custom field values. Note: When using pagination (page[size], page[after], page[before]), you cannot mix page[before] and page[after] in the same request." }, { "slug": "ZENDESK_LIST_DELETED_USERS", "name": "List Deleted Users", "description": "Tool to list deleted users in Zendesk via the Users API. Use when you need to retrieve information about users that have been deleted from the system. This is a read-only operation." }, { "slug": "ZENDESK_LIST_INCREMENTAL_CUSTOM_OBJECT_RECORDS", "name": "List Incremental Custom Object Records", "description": "Export custom object records incrementally using cursor-based pagination. Use this action when you need to retrieve all changes to custom object records since a specific time, with support for large result sets through cursor-based pagination. The start_time parameter is required for the initial request; subsequent pages use the cursor returned in previous responses. This is a read-only, idempotent operation that returns records with their custom field values and change timestamps. The action supports filtering to exclude deleted records and configurable page sizes. Rate limited to 10 requests per minute." }, { "slug": "ZENDESK_LIST_MONITORED_TWITTER_HANDLES", "name": "List Monitored X Handles", "description": "List all monitored X (Twitter) handles configured in your Zendesk account. Use when you need to retrieve all Twitter handles that are being monitored for the X channel integration. This is a read-only, idempotent operation." }, { "slug": "ZENDESK_LIST_OBJECT_TRIGGERS", "name": "List Object Triggers", "description": "List all triggers for a specific custom object in Zendesk. Use when you need to discover, audit, or review the triggers configured for a custom object type. Triggers are business rules that automatically perform actions based on conditions. This action retrieves triggers associated with a custom object defined in your Zendesk instance. Each trigger defines conditions and corresponding actions that run when records meet those conditions." }, { "slug": "ZENDESK_LIST_OBJECT_TRIGGERS_DEFINITIONS", "name": "List Object Trigger Definitions", "description": "List Object Trigger Action and Condition Definitions for a custom object in Zendesk. Use when you need to discover the available trigger actions and conditions that can be used to create or configure triggers on a custom object. This returns metadata about what types of automations are possible for the specified custom object. This is a read-only, idempotent operation that returns the available trigger definitions." }, { "slug": "ZENDESK_LIST_ORGANIZATION_MEMBERSHIPS", "name": "List Organization Memberships", "description": "List organization memberships in Zendesk. Use when you need to retrieve all organization memberships, which link users to organizations. Supports pagination and sorting options to navigate large result sets efficiently." }, { "slug": "ZENDESK_LIST_ORGANIZATION_MEMBERSHIPS_BY_ORGANIZATION", "name": "List Organization Memberships by Organization", "description": "List organization memberships for a specific organization in Zendesk. Use when you need to retrieve all users who are members of a particular organization, including their membership metadata like default status and ticket viewing permissions. Supports pagination and sorting options to navigate large result sets efficiently. This action is read-only and idempotent - calling it multiple times with the same organization ID will return the same result." }, { "slug": "ZENDESK_LIST_RESOURCE_COLLECTIONS", "name": "List Resource Collections", "description": "List Resource Collections for the Zendesk account. Use when you need to retrieve, audit, or review the resource collections configured in your Zendesk account. Resource collections are groups of related resources that can be managed together. This is a read-only action that returns paginated results. Use per_page to control page size." }, { "slug": "ZENDESK_LIST_SKIPS", "name": "List All Skips", "description": "Lists all ticket skips in Zendesk. A skip is a ticket that was skipped during routing or assignment. Use this action to retrieve information about all tickets that have been skipped. This action is read-only and idempotent. Note that archived tickets are not included in the results." }, { "slug": "ZENDESK_LIST_SUPPORT_ADDRESSES", "name": "List Support Addresses", "description": "List all support addresses (recipient addresses) configured in your Zendesk account. Use when you need to enumerate available support email addresses, check which address is set as default, or retrieve address metadata like verification status and brand associations. This is a read-only, idempotent operation that supports both cursor and offset pagination." }, { "slug": "ZENDESK_LIST_TICKET_AUDITS", "name": "List Ticket Audits", "description": "List all ticket audits from Zendesk. Returns a paginated list of audit records, each containing events that describe changes made to tickets. Audits capture all changes including comments, status changes, assignments, and field updates. Archived tickets are not included in the results. Use cursor pagination (page_after, page_before, page_size) to navigate through results efficiently." }, { "slug": "ZENDESK_LIST_TICKET_CONTENT_PINS", "name": "List Ticket Content Pins", "description": "List Ticket Content Pins returns all content pins for a specified ticket. Use when you need to retrieve all pinned content items on a ticket. If ticket_id is not provided, returns all content pins for the account. _tags = [\"readOnlyHint\", \"idempotentHint\"]" }, { "slug": "ZENDESK_LIST_USER_IDENTITIES", "name": "List User Identities", "description": "Tool to list all identities for a specific Zendesk user. Use when you need to retrieve all email addresses, phone numbers, or other contact methods associated with a user. Supports filtering by identity type and cursor-based pagination." }, { "slug": "ZENDESK_LIST_ZENDESK_ACCESS_RULES", "name": "List Access Rules", "description": "List all access rules for a Zendesk custom object. Access rules control which users and roles can perform specific operations on custom object records. Use this action when you need to audit existing permissions or understand what access controls are in place for a custom object type. This is a read-only operation." }, { "slug": "ZENDESK_LIST_ZENDESK_CUSTOM_OBJECT_FIELDS", "name": "List Custom Object Fields", "description": "List all fields for a custom object in Zendesk. Use this action when you need to discover the structure of a custom object, understand what fields are available, or retrieve metadata about custom object fields for further operations like creating or updating records." }, { "slug": "ZENDESK_LIST_ZENDESK_CUSTOM_OBJECTS", "name": "List Custom Objects", "description": "List all custom object definitions in Zendesk. Use this action when you need to discover available custom object types, understand their structure, or retrieve metadata about custom objects for further operations. Returns metadata including keys, titles, and configuration options for each custom object." }, { "slug": "ZENDESK_LIST_ZENDESK_PERMISSION_POLICIES", "name": "List Permission Policies", "description": "List all permission policies for a custom object in Zendesk. Use this action when you need to discover the access control configuration for a custom object, understand what roles have permissions, or retrieve permission metadata for access control management. This is a read-only, idempotent operation. This action is useful for reviewing permission policies applied to custom objects in Zendesk." }, { "slug": "ZENDESK_LIST_ZENDESK_TICKETS", "name": "List Tickets", "description": "List Zendesk tickets with pagination and filtering. Only server-side filter available is external_id; status, priority, tags, assignee_id, and date-range filters must be applied client-side. Timestamps (created_at, updated_at) are ISO 8601 UTC. ticket.subject may be null — coerce to string before filtering. Attachments are not included; retrieve via ZENDESK_GET_ZENDESK_TICKET_BY_ID. HTTP 429 rate limit responses include Retry-After header; apply exponential backoff. Paginate by following next_page until null to avoid missing tickets." }, { "slug": "ZENDESK_LIST_ZENDESK_USERS", "name": "List Users", "description": "Tool to list/enumerate Zendesk users via the Users API. Use when you need to export or iterate through the user directory without a specific name/email filter. Supports both cursor and offset pagination." }, { "slug": "ZENDESK_MAKE_COMMENT_PRIVATE", "name": "Make Zendesk Ticket Comment Private", "description": "Make a public ticket comment private in Zendesk. This action changes the visibility of a comment from public to internal-only, so only agents can view it. Use this action when you need to convert a customer-facing comment to an internal note after the fact. Note: Only agents can make comments private; end users cannot use this endpoint." }, { "slug": "ZENDESK_MAKE_DEFAULT_ORGANIZATION_MEMBERSHIP", "name": "Make Organization Membership Default", "description": "Set a specific organization membership as the default for a user in Zendesk. Use when you need to change which organization is the primary/default for a user. Only one organization can be the default at a time. This action is idempotent - setting the same membership as default multiple times will succeed without side effects." }, { "slug": "ZENDESK_MAKE_END_USER_IDENTITY_PRIMARY", "name": "Make End User Identity Primary", "description": "Set a specified identity as the primary identity for an end user in Zendesk. This is a collection-level operation - after making an identity primary, you should reload the entire identities collection to get the updated state. An end user can only make an email identity primary if the email is verified. Use when a user wants to change their primary email or phone number for notifications." }, { "slug": "ZENDESK_MAKE_TICKET_COMMENT_PRIVATE", "name": "Make Ticket Comment Private", "description": "Change a public comment to private on a Zendesk ticket audit. Use when you need to convert a previously public-facing comment to an internal note that is not visible to the end user. This action makes the comment private by updating the ticket audit. This is useful when information was shared publicly by mistake and needs to be restricted to agents only. Note: This action only works on existing audits and cannot be undone once the comment is made private." }, { "slug": "ZENDESK_MAKE_USER_IDENTITY_PRIMARY", "name": "Make User Identity Primary", "description": "Tool to set a user identity as the primary identity for a Zendesk user. Use when you need to change which email address or identifier is the primary contact method for a user. This action may affect which email notifications the user receives." }, { "slug": "ZENDESK_MARK_MANY_TICKETS_AS_SPAM", "name": "Mark Multiple Tickets as Spam", "description": "Marks multiple tickets as spam in Zendesk. This action is irreversible — the tickets will be marked as spam and moved to the suspended tickets queue. The submitter will also be marked as spam and blocked from submitting further tickets. Use when cleaning up spam or unwanted tickets to protect your support queue. Returns a job_status payload for tracking the bulk operation. Note: Tickets marked as spam are moved to the suspended tickets queue and cannot be recovered through normal means." }, { "slug": "ZENDESK_MERGE_USERS", "name": "Merge Users", "description": "Merges two Zendesk end users together. The user specified in the path parameter (user_id) is the primary user (target) that will be kept. The user specified in the request body (id) is the source user that will be deleted and its data transferred to the primary user. Use when you need to consolidate duplicate end-user accounts in Zendesk. This action is irreversible — the source user and all their associated data (tickets, comments, etc.) will be merged into the primary user and the source user cannot be recovered." }, { "slug": "ZENDESK_MERGE_ZENDESK_TICKETS", "name": "Merge Zendesk Tickets", "description": "Merges multiple tickets into a target ticket in Zendesk. The source tickets are merged into the target ticket and then deleted. This is an asynchronous operation that returns a job status. Use when you need to consolidate duplicate or related tickets into a single ticket. **Important**: This action is irreversible - source tickets are permanently merged and deleted once the operation completes. Always verify the target_ticket_id and source_ticket_ids before executing." }, { "slug": "ZENDESK_OPEN_USERS_PROFILE_IN_AGENT_BROWSER", "name": "Open User's Profile in Agent Browser", "description": "Open a Zendesk user's profile in a specified agent's browser. Use when an agent needs to view a specific user's profile during an active call or session. This action triggers the Zendesk Talk dashboard to display the user's information in the agent's interface." }, { "slug": "ZENDESK_RECOVER_MANY_SUSPENDED_TICKETS", "name": "Recover Multiple Suspended Tickets", "description": "Recover multiple suspended tickets in Zendesk. Use when you need to restore tickets that have been suspended (e.g., auto-replied emails, bounced messages). Takes up to 100 ticket IDs as input and restores them to normal ticket status. This action is irreversible — recovered tickets return to normal processing." }, { "slug": "ZENDESK_RENEW_SESSION", "name": "Renew Session", "description": "Renew the current Zendesk session and obtain a new authenticity token. Use when the current session token is expiring or needs to be refreshed to maintain an active authenticated connection. This action extends the session lifetime without requiring full re-authentication." }, { "slug": "ZENDESK_REORDER_CUSTOM_OBJECT_FIELDS", "name": "Reorder Custom Object Fields", "description": "Reorder Custom Fields of an Object. Updates the display order of custom object fields based on the provided field IDs. Use when you need to change the order of fields displayed in a custom object's record layout. This action is idempotent — re-running with the same field IDs in the same order will produce the same result." }, { "slug": "ZENDESK_REORDER_LOCATION_INSTALLATIONS", "name": "Reorder App Location Installations", "description": "Reorder App Installations For Location. Creates or updates the relevant location installation with a specified installation order. This action requires admin-level access. Use when you need to change the display order of apps in a specific Zendesk location (e.g., nav bar, ticket sidebar)." }, { "slug": "ZENDESK_REORDER_ORGANIZATION_FIELDS", "name": "Reorder Organization Fields", "description": "Reorder Organization Fields. Updates the display order of organization fields based on the provided field IDs. Use when you need to change the order of organization fields displayed in Zendesk. This action is idempotent — re-running with the same field IDs in the same order will produce the same result." }, { "slug": "ZENDESK_REORDER_TICKET_FIELDS", "name": "Reorder Ticket Fields", "description": "Reorder Ticket Fields. Updates the display order of ticket fields based on the provided field IDs. Use when you need to change the order of standard ticket fields displayed in the ticket form. This action is idempotent — re-running with the same field IDs in the same order will produce the same result. This action requires admin permissions." }, { "slug": "ZENDESK_REORDER_TRIGGERS", "name": "Reorder Ticket Triggers", "description": "Reorder Ticket Triggers. Updates the firing order of ticket triggers based on the provided trigger IDs. Use when you need to change the priority or execution order of ticket triggers in your Zendesk account. Important constraints: You must include EVERY ticket trigger ID in your account. Omitting any trigger ID returns 404 Forbidden. Additionally, reordering is not permitted if you have more than one ticket trigger category (returns LimitOneCategory error). This action is idempotent - re-running with the same trigger IDs in the same order will produce the same result." }, { "slug": "ZENDESK_REORDER_USER_FIELDS", "name": "Reorder User Fields", "description": "Reorder User Fields. Updates the display order of custom user fields based on the provided field IDs. Use when you need to change the order of user fields displayed in user profiles or forms. This action requires admin-level access. This action is idempotent — re-running with the same field IDs in the same order will produce the same result." }, { "slug": "ZENDESK_REPLY_ZENDESK_TICKET", "name": "Reply to Zendesk Ticket", "description": "Action to reply to a Zendesk ticket by adding a comment." }, { "slug": "ZENDESK_REQUEST_END_USER_VERIFICATION", "name": "Request End User Verification", "description": "Send a verification email to an end user to verify ownership of their email address identity. The end user receives an email with a link to confirm their identity. Use when you need to verify an end user's email address identity in Zendesk, such as when creating new end users or resolving identity verification issues. Note: This action can only be performed by verified end users." }, { "slug": "ZENDESK_REQUEST_USER_CREATE", "name": "Request User Create", "description": "Send a request to create a user in Zendesk. This sends the owner a reminder email to update their user profile information. Use when you want to prompt a user to complete their profile through the request flow rather than creating directly. This action is useful for onboarding flows where you want to collect user information through an email-based request rather than creating the user directly." }, { "slug": "ZENDESK_REQUEST_USER_VERIFICATION", "name": "Request User Verification", "description": "Send a verification email to a user to verify ownership of their email address identity. The user receives an email with a link to confirm their identity. Use when you need to verify a user's email address identity in Zendesk, such as when creating new users or resolving identity verification issues. Note: This action sends a verification email to the user's identity address." }, { "slug": "ZENDESK_RESTORE_MANY_TICKETS", "name": "Restore Multiple Deleted Tickets", "description": "Restores multiple previously deleted tickets in Zendesk. Use when you need to recover tickets that were deleted and need to be restored in bulk. This action is reversible - tickets can be deleted again after restoration. Note: Only tickets in 'deleted' status can be restored." }, { "slug": "ZENDESK_RESTORE_ZENDESK_TICKET", "name": "Restore Zendesk Ticket", "description": "Restores a previously deleted ticket in Zendesk. Use when a ticket was accidentally deleted and needs to be recovered. The restored ticket will return to its previous state with all associated data intact. This action is reversible — tickets can be deleted again after restoration if needed." }, { "slug": "ZENDESK_SEARCH_CUSTOM_OBJECT_RECORDS", "name": "Search Custom Object Records", "description": "Search and filter custom object records in Zendesk using text queries and field filters. Returns paginated results with cursor-based navigation. Use when you need to find specific records within a custom object type, apply text searches or structured filters, and navigate through large result sets. This is a read-only operation. This action is useful for discovering records, running filtered queries on custom objects, and implementing paginated browsing through custom object data." }, { "slug": "ZENDESK_SEARCH_OBJECT_TRIGGERS", "name": "Search Object Triggers", "description": "Search for triggers associated with a custom object in Zendesk. Use when you need to find triggers based on their title, description, or active status within a specific custom object. This is useful for auditing, managing, or reviewing automation rules for custom objects. Supports both cursor-based pagination (using 'sort' parameter) and offset pagination (using 'sort_by' parameter). Filter by 'active' to show only enabled or disabled triggers." }, { "slug": "ZENDESK_SEARCH_ZENDESK", "name": "Search Zendesk", "description": "Tool to search for tickets, users, organizations, and groups in Zendesk using query syntax. Use when you need to find resources across Zendesk using flexible search criteria." }, { "slug": "ZENDESK_SEARCH_ZENDESK_ORGANIZATIONS", "name": "Search Organizations", "description": "Search organizations in Zendesk by external ID or name. Returns an array of organizations matching the provided criteria. Use when you need to find specific organizations by their identifier or name. An empty organizations array with count=0 means no matches found. Multiple organizations may share similar names — verify the correct organization via external_id or domain_names before proceeding with operations." }, { "slug": "ZENDESK_SEARCH_ZENDESK_USERS", "name": "Search Zendesk Users", "description": "Search for Zendesk users by query or external ID. Use when you need to find users using flexible search criteria with Zendesk search syntax (e.g., partial name matches, email patterns, notes, phone numbers). For exact email lookups, consider using the 'Search Zendesk Users' action instead." }, { "slug": "ZENDESK_SET_DEFAULT_CUSTOM_STATUS", "name": "Set Default Custom Ticket Status", "description": "Sets one or more custom ticket statuses as the default for their respective categories. Use this action when you need to specify which custom status should be the default (fallback) status for a given category (open, pending, solved, etc.). This operation is idempotent — running it multiple times with the same IDs will produce the same result. **Allowed for**: Admins only. **Note**: The IDs should be valid custom ticket status IDs that exist in your Zendesk account." }, { "slug": "ZENDESK_SET_GROUP_MEMBERSHIP_AS_DEFAULT", "name": "Set Group Membership as Default", "description": "Set a group membership as the default for a specific user in Zendesk. Use when you need to mark a user's group membership as the default, meaning tickets assigned directly to the agent will assume this membership's group. Requires both the user ID and the group membership ID. This action is useful for managing default routing preferences for agents in your Zendesk instance. Note that only one group membership can be the default at a time - setting a new default will automatically unset the previous default." }, { "slug": "ZENDESK_SET_USERS_ORGANIZATION_AS_DEFAULT", "name": "Set Organization as Default for User", "description": "Set an organization as the default for a user in Zendesk. Use when you need to change which organization is the primary/default for a user by specifying the organization ID directly. Only one organization can be the default at a time. This action is idempotent - setting the same organization as default multiple times will succeed without side effects." }, { "slug": "ZENDESK_SHOW_ACCESS_RULE", "name": "Show Access Rule", "description": "Show a custom object access rule by its ID. Use when you have a custom_object_key and access_rule_id and need to retrieve the access rule's details including its conditions, title, description, and timestamps. This is a read-only operation that does not modify any data. This action is useful for reviewing access control rules applied to custom objects in Zendesk." }, { "slug": "ZENDESK_SHOW_CUSTOM_OBJECT", "name": "Show Custom Object", "description": "Get details of a specific Zendesk custom object by its key. Use when you have a custom object key and need to retrieve its metadata including name, description, attachment settings, visibility settings, and creation/update timestamps. This is a read-only, idempotent operation that returns the full custom object definition." }, { "slug": "ZENDESK_SHOW_CUSTOM_OBJECT_RECORD", "name": "Show Custom Object Record", "description": "Get details of a specific Zendesk custom object record by its key and record ID. Use when you have a custom object key and record ID and need to retrieve the record's metadata including name, custom fields, timestamps, and photo. This is a read-only, idempotent operation that returns the full custom object record definition. Photo is only available if `allows_photos` is enabled on the custom object." }, { "slug": "ZENDESK_SHOW_MANY_JOB_STATUSES", "name": "Show Many Job Statuses", "description": "Show many job statuses by their IDs in Zendesk. Use this action when you have multiple job status IDs from bulk operations (like ticket updates, user merges, or ticket merges) and need to check their status in a single request. Each ID in the comma-separated list will return its corresponding job status object if found. Endpoint: GET /api/v2/job_statuses/show_many" }, { "slug": "ZENDESK_SHOW_MANY_TICKETS", "name": "Show Many Tickets", "description": "Show multiple tickets by their IDs. Use when you need to retrieve specific tickets by their IDs to display ticket details, compare tickets, or bulk fetch ticket information. The `ids` parameter accepts a comma-separated list of ticket IDs (e.g., '35436,35437'). Returns tickets for valid IDs only; non-existent IDs result in an empty tickets array without error." }, { "slug": "ZENDESK_SHOW_MANY_USERS", "name": "Show Many Users", "description": "Retrieve multiple Zendesk users by their numeric IDs or external IDs. Use when you have a list of user IDs (from ticket payloads, search results, etc.) and need to fetch full user details for multiple users at once. Accepts up to 100 IDs per request. Provide either `ids` or `external_ids`, not both." }, { "slug": "ZENDESK_SHOW_PERMISSION_POLICY", "name": "Show Permission Policy", "description": "Get details of a specific permission policy for a Zendesk custom object by its ID. Use when you have a custom_object_key and permission policy ID and need to retrieve the policy's details including the role name and record operation permissions (create, read, update, delete). This is a read-only, idempotent operation that does not modify any data. This action is useful for reviewing permission policies that control access to custom object records in Zendesk." }, { "slug": "ZENDESK_SHOW_REQUEST", "name": "Show Request", "description": "Show a single request in Zendesk. Use when you need to retrieve details of a specific request by its ID, including subject, description, status, priority, requester information, and other metadata. This action is read-only and idempotent." }, { "slug": "ZENDESK_UNASSIGN_USER_ORGANIZATION", "name": "Unassign User from Organization", "description": "Immediately removes a user from an organization in Zendesk. Use when you need to unassign a user from an organization membership. This action is irreversible - the user will no longer be associated with the organization." }, { "slug": "ZENDESK_UPDATE_ACCESS_RULE", "name": "Update Access Rule", "description": "Update an existing access rule for a custom object in Zendesk. Access rules control which records of a custom object users can access based on conditions. Use this action when you need to: - Change an access rule's title or description - Modify the conditions that determine when the rule applies - Update access permissions for custom object records This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_APPS_INSTALLATION", "name": "Update Zendesk App Installation", "description": "Update an app installation in Zendesk. Use when you need to modify app installation settings such as enabling/disabling the app, restricting access by groups or roles, or updating app-specific settings." }, { "slug": "ZENDESK_UPDATE_AUTOMATION", "name": "Update Automation", "description": "Update an existing automation in Zendesk. Automations are business rules that automatically perform actions on tickets when certain conditions are met. Use this action when you need to: - Change an automation's title, active status, or position - Modify the conditions that trigger the automation - Update the actions the automation performs - Deactivate an automation without deleting it This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_CUSTOM_OBJECT", "name": "Update Custom Object", "description": "Update an existing custom object in Zendesk. Custom objects are user-defined data structures that allow you to store and manage custom data types. Use this action when you need to: - Change a custom object's title, description, or pluralized title - Update visibility settings (include_in_list_view) - Enable or disable attachments and photos for the custom object This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_CUSTOM_OBJECT_RECORD", "name": "Update Custom Object Record", "description": "Update an existing record for a custom object in Zendesk. Use when you need to modify an existing custom object record. This action updates fields on a custom object record. You can update the name, external_id, and custom_object_fields as needed." }, { "slug": "ZENDESK_UPDATE_CUSTOM_STATUS", "name": "Update Custom Ticket Status", "description": "Update an existing custom ticket status in Zendesk. Custom ticket statuses allow you to define additional statuses beyond the standard statuses (new, open, pending, solved, closed) for your ticket workflow. Use this action when you need to: - Change the labels shown to agents or end users for a custom status - Update the descriptions explaining when to use the status - Activate or deactivate a custom status - Modify how a custom status appears in the ticket interface This action is idempotent — re-running with the same parameters will produce the same result. Requires admin permissions in Zendesk." }, { "slug": "ZENDESK_UPDATE_DELETION_SCHEDULE", "name": "Update Deletion Schedule", "description": "Update an existing deletion schedule in Zendesk. Deletion schedules define automated rules for deleting tickets, users, attachments, or other records based on specified conditions. Use this action when you need to: - Change a deletion schedule's title, description, or active status - Modify the conditions that determine which records are deleted - Pause or reactivate a deletion schedule This action is idempotent — re-running with the same parameters will produce the same result. Note: The 'object' field cannot be modified after schedule creation." }, { "slug": "ZENDESK_UPDATE_DYNAMIC_CONTENT_ITEMS_VARIANT", "name": "Update Dynamic Content Variant", "description": "Update a single variant of a dynamic content item in Zendesk. Use when you need to modify the content, locale, active status, or default status of one specific variant by its ID. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_DYNAMIC_CONTENT_ITEMS_VARIANTS", "name": "Update Many Dynamic Content Variants", "description": "Update one or more variants of a dynamic content item in Zendesk. Use when you need to bulk update variant content, active status, or default status for a specific dynamic content item. Each variant can be identified by either its ID or locale ID. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MACRO", "name": "Update Macro", "description": "Update an existing macro in Zendesk. Macros are predefined responses that agents can apply to tickets to quickly perform common actions. Use this action when you need to: - Change a macro's title or description - Modify the actions the macro performs (e.g., change status, priority, or assignee) - Activate or deactivate a macro - Restrict macro access to specific users or groups This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MANY_AUTOMATIONS", "name": "Update Many Automations", "description": "Update multiple automations in Zendesk in a single request. Use when you need to bulk update automation settings such as position, active status, or title for multiple automations at once. Note: You might be restricted from updating some default automations. If included in a bulk update, the unrestricted automations will be updated. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MANY_MACROS", "name": "Update Many Macros", "description": "Update multiple macros in Zendesk in a single request. Use when you need to bulk update macro settings such as position or active status for multiple macros at once. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MANY_OBJECT_TRIGGERS", "name": "Update Many Object Triggers", "description": "Update multiple custom object triggers in Zendesk in a single request. Use when you need to bulk update trigger settings such as position, active status, or title for multiple custom object triggers at once. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MANY_ORGANIZATIONS", "name": "Update Many Zendesk Organizations", "description": "Bulk update multiple Zendesk organizations in a single request. Use when you need to update organization details such as name, notes, details, domain names, or tags for multiple organizations at once. The action is queued as a background job - use the job_status URL to poll for completion. Maximum 100 organizations per request. Note: Agents without permission restrictions can only update 'notes' on organizations." }, { "slug": "ZENDESK_UPDATE_MANY_TICKETS", "name": "Update Many Tickets", "description": "Update multiple tickets in Zendesk in a single request. Use when you need to bulk update ticket fields such as status, priority, tags, assignee, or group for multiple tickets at once. The API accepts up to 100 ticket objects per request. Changes are processed asynchronously and return a job_status object for tracking progress." }, { "slug": "ZENDESK_UPDATE_MANY_TRIGGERS", "name": "Update Many Ticket Triggers", "description": "Update multiple ticket triggers in Zendesk in a single request. Use when you need to bulk update trigger settings such as position, active status, or category for multiple triggers at once. This action allows you to update the order (position) or activate/deactivate multiple triggers efficiently. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_MANY_USERS", "name": "Update Many Users", "description": "Bulk update multiple Zendesk users in a single request. Use when you need to apply the same or different updates to up to 100 users at once. Provide either a single `user` object to apply identical changes to all specified users, or an array of `users` objects for individual updates per user. The operation is asynchronous and returns a job_status that you can poll to track completion. This action is idempotent — re-running with the same parameters will apply the same updates again." }, { "slug": "ZENDESK_UPDATE_MANY_VIEWS", "name": "Update Many Views", "description": "Update multiple views in Zendesk in a single request. Use when you need to bulk update view settings such as position, active status, or title for multiple views at once. Note: You might be restricted from updating some default views. If included in a bulk update, the unrestricted views will be updated. This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_OBJECT_TRIGGER", "name": "Update Object Trigger", "description": "Update an existing custom object trigger in Zendesk. Triggers define automated actions that execute when specific conditions are met on custom object records. Use this action when you need to: - Change a trigger's title or description - Enable or disable a trigger - Modify the conditions that cause the trigger to fire - Update the actions the trigger performs This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_ORGANIZATION_FIELD", "name": "Update Organization Field", "description": "Update a custom organization field in Zendesk. Use when you need to modify an existing organization field's properties such as title, type, description, options, or other settings. All existing custom_field_options must be included on update — omitted options will be deleted. Returns the updated organization field object." }, { "slug": "ZENDESK_UPDATE_ORGANIZATIONS_TAGS", "name": "Add Organization Tags", "description": "Add organization tags in Zendesk. Use when you need to tag an organization for categorization, filtering, or automation purposes. Tags are appended to the organization's existing tags. This action is idempotent — adding the same tag multiple times will not create duplicates in the organization's tag list." }, { "slug": "ZENDESK_UPDATE_PERMISSION_POLICY", "name": "Update Permission Policy", "description": "Update an existing permission policy for a custom object in Zendesk. Permission policies control which records of a custom object users with a specific role can access. Use this action when you need to: - Modify record access permissions (create, read, update, delete) for a custom role - Add or remove exceptions to what records users can access - Configure group-based exclusions for custom object record permissions This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_RESOURCE_COLLECTION", "name": "Update Resource Collection", "description": "Update an existing resource collection in Zendesk. Resource collections are groups of related resources (like triggers, automations, or ticket fields) that can be managed together. Use this action when you need to: - Rename a resource collection - Modify the resources included in a collection - Update the configuration of an existing collection This action is idempotent - re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_SIDE_CONVERSATION", "name": "Update Side Conversation", "description": "Update a side conversation on a ticket in Zendesk. Use this action to modify the state (open/closed) or subject of an existing side conversation attached to a ticket. Use when you need to: - Close a side conversation that has been resolved - Reopen a closed side conversation - Update the subject line of a side conversation This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_SUPPORT_ADDRESS", "name": "Update Support Address", "description": "Update an existing support address in Zendesk. Support addresses are email addresses that receive customer inquiries and can be configured per brand. Use this action when you need to: - Change the name of a support address - Set or change the default support address for the account - Associate a support address with a different brand Note: You cannot change the email address of an existing support address." }, { "slug": "ZENDESK_UPDATE_TARGET", "name": "Update Zendesk Target", "description": "Update an existing target in Zendesk. Targets are endpoints that receive data when triggers fire (e.g., HTTP targets, email targets, webhook targets). Use this action when you need to: - Change a target's title - Activate or deactivate a target - Update target-specific properties This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_TICKET_FIELD", "name": "Update Ticket Field", "description": "Update an existing ticket field in Zendesk. Ticket fields define the structure and properties of custom fields on tickets. Use this action when you need to: - Rename a ticket field or update its title - Update the description or agent-only description - Change the field's position in the ticket form - Enable or disable a ticket field - Set visibility and editability for portal and agents - Make fields required for solving tickets or creating requests - Configure validation patterns for regexp fields - Set tags for checkbox fields This action is idempotent — re-running with the same parameters will produce the same result. Requires admin permissions." }, { "slug": "ZENDESK_UPDATE_TICKETS_TAGS", "name": "Update Zendesk Ticket Tags", "description": "Update tags on a Zendesk ticket via PUT request to /api/v2/tickets/{ticket_id}/tags. Use when you need to add, replace, or manage tags on an existing ticket. This operation replaces all existing tags with the provided list." }, { "slug": "ZENDESK_UPDATE_TICKET_TRIGGER", "name": "Update Ticket Trigger", "description": "Update an existing ticket trigger in Zendesk. Triggers are business rules that automatically perform actions on tickets when certain conditions are met. Use this action when you need to: - Change a trigger's title, active status, position, or description - Modify the conditions that trigger the action - Update the actions the trigger performs - Reassign a trigger to a different category - Deactivate a trigger without deleting it This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_TRIGGER_CATEGORY", "name": "Update Trigger Category", "description": "Update an existing trigger category in Zendesk. Trigger categories are used to organize ticket triggers in the Zendesk admin interface. Use this action when you need to: - Rename a trigger category - Change the display order of a trigger category - Update both name and position of a trigger category This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_USER_FIELD", "name": "Update Zendesk User Field", "description": "Update an existing user field in Zendesk. Use when you need to modify the title, description, options, or other properties of a custom user field. Supports updating text, checkbox, dropdown, multiselect, date, integer, decimal, regexp validation, and lookup types. Only administrators can update user fields." }, { "slug": "ZENDESK_UPDATE_USER_PROFILE", "name": "Update Zendesk User Profile", "description": "Partially updates a user profile in Zendesk by identifier. Use when you need to modify specific fields of an existing profile without replacing the entire profile. This action uses JSON merge patch semantics — only provided fields are updated. Use this action when you have an existing profile identifier and need to update specific profile attributes, identifiers, or the profile name. The identifier must follow the format source:type:identifier_type:identifier_value." }, { "slug": "ZENDESK_UPDATE_USER_PROFILE_BY_ID", "name": "Update Zendesk User Profile By ID", "description": "Partially updates a user profile in Zendesk by profile ID. Use when you need to modify specific fields of an existing profile without replacing the entire profile. This action uses JSON merge patch semantics — only provided fields are updated. Use this action when you have a profile ID and need to update specific profile attributes, identifiers, name, source, or type. This is different from UpdateUserProfile which uses identifier lookup instead." }, { "slug": "ZENDESK_UPDATE_USERS_IDENTITY", "name": "Update User Identity", "description": "Update a user identity in Zendesk. Use when you need to modify an identity's verified status or other updatable fields. Note: the 'primary' field cannot be changed via this endpoint - use the Make Identity Primary endpoint instead." }, { "slug": "ZENDESK_UPDATE_USERS_ME_SETTINGS", "name": "Update Current User Settings", "description": "Update the settings for the currently authenticated Zendesk user. Use when modifying UI preferences like keyboard shortcuts, onboarding tooltips, theme preferences, or shared views order. This action modifies the caller's own settings only." }, { "slug": "ZENDESK_UPDATE_USERS_PROFILES", "name": "Update Users Profiles", "description": "Create or update a user profile for a specific Zendesk user by user ID and identifier. Use when you need to establish or modify a unified customer view for an existing Zendesk user. The profile is identified by both the user_id (path) and the identifier (query parameter). This endpoint uses PUT semantics - if a profile matching the identifier exists, it will be updated; otherwise, a new profile will be created. Use this action when you have a specific Zendesk user ID and need to create or update a profile using an identifier like email, phone number, or external ID." }, { "slug": "ZENDESK_UPDATE_USERS_TAGS", "name": "Update User Tags", "description": "Update (replace) tags for a specific Zendesk user. Use when you need to assign or modify tags on a user account for organizing, filtering, or categorizing user data. This action replaces all existing tags on the user with the provided list." }, { "slug": "ZENDESK_UPDATE_VIEW", "name": "Update View", "description": "Update an existing view in Zendesk. Views are saved searches that allow agents to filter and organize tickets. Use this action when you need to: - Change a view's title, description, or active status - Modify a view's position in the list - Update a view's conditions or display settings - Make a view the default view This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_ZENDESK_ACCOUNT_SETTINGS", "name": "Update Zendesk Account Settings", "description": "Update Zendesk account-level settings including tickets, branding, localization, routing, and more. Use when you need to configure or modify account-wide settings that affect all agents and end users. Requires admin privileges to update most settings. Settings changes are persistent and affect all users." }, { "slug": "ZENDESK_UPDATE_ZENDESK_ATTACHMENT", "name": "Update Zendesk Attachment", "description": "Updates an attachment's malware access override setting. Use when you need to enable or restrict agent access to attachments that have been flagged for malware." }, { "slug": "ZENDESK_UPDATE_ZENDESK_CUSTOM_OBJECT_FIELD", "name": "Update Custom Object Field", "description": "Update an existing custom object field in Zendesk. Custom object fields define the structure and properties of data within a custom object. Use this action when you need to: - Rename a custom object field - Update the description or display properties - Change the field's position in the UI - Enable or disable a field - Set validation patterns or make fields required This action is idempotent — re-running with the same parameters will produce the same result." }, { "slug": "ZENDESK_UPDATE_ZENDESK_DYNAMIC_CONTENT_ITEM", "name": "Update Dynamic Content Item", "description": "Update a dynamic content item in Zendesk. The only attribute that can be changed is the name. Use when you need to rename an existing dynamic content item after confirming its ID. Note: Dynamic content items are used to store multilingual content for use in triggers, automations, and macros. Updating the name affects all references to this item." }, { "slug": "ZENDESK_UPDATE_ZENDESK_ORGANIZATION", "name": "Update Zendesk Organization", "description": "Update an organization in Zendesk. After updating, re-fetch via ZENDESK_GET_ZENDESK_ORGANIZATION if downstream logic depends on current data." }, { "slug": "ZENDESK_UPDATE_ZENDESK_REQUESTS", "name": "Update Request", "description": "Update a ticket request in Zendesk with a comment or collaborators. Use when you need to modify request fields like status, priority, or add comments after confirming the request ID. After updating, re-fetch via ZENDESK_GET_REQUESTS if downstream logic depends on current data." }, { "slug": "ZENDESK_UPDATE_ZENDESK_TICKET", "name": "Update Zendesk Ticket", "description": "Tool to update a ticket in Zendesk. Use when you need to modify ticket fields like status, priority, or subject after confirming the ticket ID." }, { "slug": "ZENDESK_UPSERT_CUSTOM_OBJECT_RECORD_BY_EXTERNAL_ID_OR_NAME", "name": "Upsert Custom Object Record By External ID or Name", "description": "Create or update a custom object record in Zendesk by external_id or name. Use when you need to create a new record or update an existing one based on either its external_id (preferred) or name. If a record matching the external_id or name exists, it will be updated. If no matching record is found, a new one will be created. This action is idempotent and safe to retry. Note: Either external_id or name (or both) must be provided to identify the record. If both are provided, external_id takes precedence for matching." }, { "slug": "ZENDESK_VERIFY_SUBDOMAIN_AVAILABILITY", "name": "Verify Subdomain Availability", "description": "Verify if a subdomain name is available for use in Zendesk. Returns a success boolean indicating whether the subdomain can be registered. Use when checking if a desired subdomain name is available before creating a new Zendesk account or subdomain." }, { "slug": "ZENDESK_VERIFY_SUPPORT_ADDRESS", "name": "Verify Support Address", "description": "Verify a support address forwarding in Zendesk. This action sends a verification request for the specified support address to confirm that the address is properly configured and can receive email forwarding. Use this action when you need to: - Verify a newly created support address is working correctly - Re-verify an existing support address after configuration changes - Confirm email forwarding is properly set up for a support address This action is idempotent — verifying an already-verified address will return success." }, { "slug": "ZENDESK_VERIFY_USER_IDENTITY", "name": "Verify User Identity", "description": "Set a user identity as verified in Zendesk. This action marks an email address or other identity as confirmed, indicating the user has proven ownership. Use when you need to manually verify a user's identity after they have completed an out-of-band verification process or when you want to override the verification status for administrative purposes. Note: This action cannot verify the account owner's email identity due to security restrictions." } ], "triggers": [ { "slug": "ZENDESK_NEW_USER_TRIGGER", "name": "New User Created", "description": "Triggered when a new user is created in Zendesk." }, { "slug": "ZENDESK_NEW_ZENDESK_TICKET_TRIGGER", "name": "New Zendesk Ticket", "description": "Triggers when a new ticket is created in a specified Zendesk view." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zendesk_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write,organizations:read,organizations:write,tickets:read,tickets:write,users:read,users:write,webhooks:read,webhooks:write" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Zendesk Subdomain", "type": "string", "description": "The part before .zendesk.com in your account's web address, e.g. 'acme' in acme.zendesk.com. Find it in your browser address bar or on the Admin Center home page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "googlephotos", "name": "Google Photos", "logo": "https://logos.composio.dev/api/googlephotos", "description": "Google Photos is a cloud-based photo storage and organization service offering automatic backups, AI-assisted search, and shared albums for personal and collaborative media management", "category": "images & design", "authSchemes": [ "OAUTH2" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "GOOGLEPHOTOS_ADD_ENRICHMENT", "name": "Add Enrichment", "description": "Adds an enrichment at a specified position in a defined album." }, { "slug": "GOOGLEPHOTOS_BATCH_ADD_MEDIA_ITEMS", "name": "Batch Add Media Items", "description": "Adds one or more media items to an album in Google Photos." }, { "slug": "GOOGLEPHOTOS_BATCH_CREATE_MEDIA_ITEMS", "name": "Batch Create Media Items", "description": "Batch upload and create media items in Google Photos. Supports three input methods: 1. 'urls': Simple list of public URLs (file names extracted automatically) 2. 'media_files': List of objects with url/file, file_name, and description 3. 'files': List of uploaded files Media items can optionally be added to an album at a specific position. Maximum 50 items per request." }, { "slug": "GOOGLEPHOTOS_BATCH_GET_MEDIA_ITEMS", "name": "Batch Get Media Items", "description": "Returns the list of media items for the specified media item identifiers." }, { "slug": "GOOGLEPHOTOS_CREATE_ALBUM", "name": "Create Album", "description": "Creates a new album in Google Photos." }, { "slug": "GOOGLEPHOTOS_GET_ALBUM", "name": "Get Album", "description": "Returns the album based on the specified albumId." }, { "slug": "GOOGLEPHOTOS_GET_MEDIA_ITEM_DOWNLOAD", "name": "Download Photos Media Item", "description": "Downloads a media item from Google Photos and returns it as a file." }, { "slug": "GOOGLEPHOTOS_LIST_ALBUMS", "name": "List Albums", "description": "Lists all albums shown to a user in the Albums tab of Google Photos." }, { "slug": "GOOGLEPHOTOS_LIST_MEDIA_ITEMS", "name": "List Media Items (App-Created Only)", "description": "Lists media items created by this application from Google Photos. DEPRECATION NOTICE: As of March 31, 2025, the Google Photos Library API ONLY returns media items that were uploaded/created by your application. This action CANNOT access the user's full photo library. Use cases this action SUPPORTS: - Listing photos/videos your app previously uploaded to the user's library - Managing app-created content in Google Photos Use cases this action DOES NOT SUPPORT: - Accessing photos taken by the user's camera - Viewing photos from other apps or web uploads - Listing the user's entire photo library For accessing a user's full library, use the Google Photos Picker API instead: https://developers.google.com/photos/picker" }, { "slug": "GOOGLEPHOTOS_LIST_SHARED_ALBUMS", "name": "List Shared Albums (Deprecated)", "description": "[DEPRECATED - sunset March 31, 2025] Lists all shared albums available in the Sharing tab of the user's Google Photos app. Use when you need to retrieve shared albums that are visible to the user in their Sharing tab." }, { "slug": "GOOGLEPHOTOS_SEARCH_MEDIA_ITEMS", "name": "Search Media Items", "description": "Searches for media items in a user's Google Photos library." }, { "slug": "GOOGLEPHOTOS_UPDATE_ALBUM", "name": "Update Album", "description": "Updates an album's title or cover photo in Google Photos." }, { "slug": "GOOGLEPHOTOS_UPDATE_MEDIA_ITEM", "name": "Update Media Item", "description": "Updates a media item's description in Google Photos." }, { "slug": "GOOGLEPHOTOS_UPLOAD_MEDIA", "name": "Upload Media", "description": "Upload a media file to Google Photos. Supports images (up to 200MB) and videos (up to 20GB)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_photos_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata,https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "lmnt", "name": "LMNT", "logo": "https://logos.composio.dev/api/lmnt", "description": "LMNT focuses on voice and audio manipulation, possibly leveraging AI to generate or transform sound for various creative and technical use cases", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "LMNT_CREATE_VOICE", "name": "Create Voice", "description": "Creates a custom voice in LMNT by training on uploaded audio samples. The voice can then be used for text-to-speech synthesis. Returns the voice ID and metadata upon successful creation. The voice may be in 'training' state initially before becoming 'ready'." }, { "slug": "LMNT_DELETE_VOICE_INFO", "name": "Delete Voice Info", "description": "Deletes a voice from your LMNT account. This operation permanently removes the voice and cancels any pending operations on it. This action cannot be undone. Only voices owned by you (owner='me') can be deleted; system voices cannot be deleted. Use case: Remove custom voices that are no longer needed to manage your voice library." }, { "slug": "LMNT_GENERATE_SPEECH_WITH_METADATA", "name": "Generate Speech With Metadata", "description": "Generates speech from text and returns JSON with base64-encoded audio and optional word-level timing metadata. Use when you need the synthesis seed or word timestamps for subtitle synchronization. For lower latency without metadata, use the Synthesize Speech action instead." }, { "slug": "LMNT_GET_ACCOUNT", "name": "Get Account", "description": "Retrieves account information including subscription plan details and current usage statistics." }, { "slug": "LMNT_GET_VOICE_INFO", "name": "Get Voice Info", "description": "Gets metadata for a specific LMNT voice, including active status, supported languages, and plan availability. Useful for validating a voice ID before using it in synthesis requests." }, { "slug": "LMNT_GET_VOICES_LIST", "name": "Get Voices List", "description": "Retrieves a list of available voices from LMNT. Returns both system-provided preset voices and any custom voices you have created. Use filters to narrow results by ownership (system vs custom) or starred status. Each voice includes details like ID, name, description, gender, state, and preview URL." }, { "slug": "LMNT_SYNTHESIZE_SPEECH", "name": "Synthesize Speech", "description": "Synthesizes speech from text using LMNT's AI voices. Converts text (up to 5000 characters) into natural-sounding speech audio using a specified voice. Returns base64-encoded audio at `data.response_data.audio` — decode before saving or passing to other tools. Supports multiple audio formats and quality settings for different use cases." }, { "slug": "LMNT_UPDATE_VOICE", "name": "Update Voice Info", "description": "Updates information about a specific voice in LMNT. You can update the name, description, gender, starred status, and unfreeze state of a voice. Note: Only user-owned voices (owner='me') can have their name, description, and gender updated. System voices can only be starred/unstarred." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key for authentication. Obtain it from your LMNT settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "metaads", "name": "Meta Ads", "logo": "https://logos.composio.dev/api/metaads", "description": "Create, edit and get insights from ads across Meta technologies, including Facebook, Instagram, Messenger, WhatsApp and more.", "category": "ads & conversion", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 52, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "METAADS_CREATE_AD", "name": "Create Ad", "description": "Create a new ad within an ad set using the Meta Marketing API. Supports various ad formats including image, video, carousel, and collection ads." }, { "slug": "METAADS_CREATE_AD_CREATIVE", "name": "Create Ad Creative", "description": "Create a new ad creative using the Meta Marketing API. Ad creatives are reusable visual and interactive elements that define how your ad looks and behaves: - Can be used in multiple ads - Support various formats (image, video, carousel) - Include text, media, and call-to-action buttons - Must follow Meta's ad policies" }, { "slug": "METAADS_CREATE_AD_SET", "name": "Create Ad Set", "description": "Create a new ad set within a campaign using the Meta Marketing API. Supports detailed targeting options, budgets, and optimization goals." }, { "slug": "METAADS_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Create a new advertising campaign using the Meta Marketing API. Supports various campaign objectives, budgets, and bidding strategies." }, { "slug": "METAADS_CREATE_CUSTOM_AUDIENCE", "name": "Create Custom Audience", "description": "Create a new custom audience using the Meta Marketing API. Supports various types of custom audiences including customer lists, website visitors, and app users." }, { "slug": "METAADS_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Delete an advertising campaign using the Meta Marketing API. This marks the campaign as DELETED, which prevents it from delivering ads. Note that deleted campaigns are not permanently removed from Meta's systems and can still be viewed in reports." }, { "slug": "METAADS_GET_AD_ACCOUNTS", "name": "Get Ad Accounts", "description": "Tool to retrieve all ad account IDs accessible to the authenticated user from Meta Ads. Use when you need to get a user's ad account information including account IDs, names, and other account details." }, { "slug": "METAADS_GET_AD_CREATIVE", "name": "Get Ad Creative", "description": "Get Ad Creative" }, { "slug": "METAADS_GET_INSIGHTS", "name": "Get Insights", "description": "Get insights data for a Meta Ads object (ad account, campaign, ad set, or ad) using the Meta Marketing API. Supports various metrics, breakdowns, and filtering options with flexible date ranges. Results are paginated; follow `paging.cursors.after` or `paging.next` to retrieve all rows. Missing metric values in results should not be assumed to be zero." }, { "slug": "METAADS_GET_OBJECT", "name": "Get Meta Object", "description": "Tool to retrieve data for any Meta Marketing API object by its ID. Use when you need to get information about a specific ad account, campaign, ad set, ad, ad creative, page, user, or other Meta object. Supports flexible field selection to retrieve only the data you need." }, { "slug": "METAADS_GET_PAGE_ACCOUNTS", "name": "Get Page Accounts", "description": "Tool to retrieve permanent page access tokens for accounts managed by the user. Use when you need to get pages the user manages along with access tokens for each page." }, { "slug": "METAADS_GET_USER", "name": "Get User", "description": "Tool to retrieve information about the authenticated user from Meta (Facebook) Graph API. Use when you need to get the current user's profile information such as name, email, or other user details." }, { "slug": "METAADS_GET_VIDEO", "name": "Get Video", "description": "DEPRECATED: Use METAADS_GET_OBJECT instead. Tool to retrieve video information from Meta's Graph API by video ID. Use when you need to get video details such as the source URL for playback/download, permalink URL to view on Facebook, or other video metadata like title, description, length, and thumbnails." }, { "slug": "METAADS_LIST_AD_CREATIVES", "name": "List Ad Creatives", "description": "Tool to list all ad creatives under an ad account. Use when you need to retrieve multiple ad creatives from a Meta Ads account to view, analyze, or manage creative assets." }, { "slug": "METAADS_LIST_AD_NETWORK_ANALYTICS", "name": "List Ad Network Analytics", "description": "Tool to retrieve ad network analytics for a Meta Business using the Meta Marketing API. Use when you need to get ad network performance metrics such as revenue or impressions." }, { "slug": "METAADS_LIST_AD_NETWORK_ANALYTICS_RESULTS", "name": "List Ad Network Analytics Results", "description": "Tool to retrieve ad network analytics results for Facebook Audience Network. Use when you need to get performance data from ads displayed through Facebook Audience Network on third-party apps and websites for a specific business, app, or property." }, { "slug": "METAADS_LIST_ADS", "name": "List Ads", "description": "Tool to list all ads under an ad account using the Meta Marketing API. Use when you need to retrieve ads from a specific ad account with optional filtering by fields." }, { "slug": "METAADS_LIST_AGENCIES", "name": "List Agencies", "description": "Tool to retrieve agencies associated with a Meta Business or Ad Account. Use when you need to get the list of agencies that have access to manage a specific business or ad account." }, { "slug": "METAADS_LIST_ASSIGNED_PAGES", "name": "List Assigned Pages", "description": "Tool to retrieve Facebook Pages assigned to a business user via Meta Marketing API. Use when you need to get the list of pages a business user has access to." }, { "slug": "METAADS_LIST_ASSIGNED_USERS", "name": "List Assigned Users", "description": "Tool to list users assigned to a Facebook Page or Ad Account within a specific business context. Use when you need to retrieve the list of users who have access to a Page or Ad Account and their associated task permissions." }, { "slug": "METAADS_LIST_BUSINESS_AD_ACCOUNTS", "name": "List Business Ad Accounts", "description": "Tool to retrieve all ad accounts owned by a specific Business Manager. Use when you need to get ad account information for a business including account IDs, names, and status." }, { "slug": "METAADS_LIST_BUSINESS_INVOICES", "name": "List Business Invoices", "description": "Tool to retrieve business invoices from Meta Marketing API. Use when you need to fetch invoice data for a business including amounts, due dates, and payment status." }, { "slug": "METAADS_LIST_CLIENT_AD_ACCOUNTS", "name": "List Client Ad Accounts", "description": "Tool to list all client ad accounts accessible to a business from Meta Ads. Use when you need to retrieve ad accounts that have been shared with a Business Manager as clients." }, { "slug": "METAADS_LIST_CLIENT_APPS", "name": "List Client Apps", "description": "Tool to retrieve client apps associated with a Meta Business using the Marketing API. Use when you need to get information about apps linked to a specific business." }, { "slug": "METAADS_LIST_CLIENT_INSTAGRAM_ASSETS", "name": "List Client Instagram Assets", "description": "Tool to retrieve Instagram assets that are shared with a business as a client using the Meta Marketing API. Use when you need to fetch Instagram accounts or assets linked to a specific business ID." }, { "slug": "METAADS_LIST_CLIENT_OFFSITE_SIGNAL_CONTAINERS", "name": "List Client Offsite Signal Container Business Objects", "description": "Tool to retrieve client offsite signal container business objects for a business from Meta Marketing API. Use when you need to list all client offsite signal container business objects associated with a specific business ID." }, { "slug": "METAADS_LIST_CLIENT_PAGES", "name": "List Client Pages", "description": "Tool to retrieve client pages associated with a Meta business. Use when you need to get the list of pages that a business manages on behalf of clients." }, { "slug": "METAADS_LIST_CLIENTS", "name": "List Clients", "description": "Tool to retrieve client businesses associated with a Meta Business Manager. Use when you need to get the list of businesses that are clients of a specific Business Manager." }, { "slug": "METAADS_LIST_COLLABORATIVE_ADS_COLLABORATION_REQUESTS", "name": "List Collaborative Ads Collaboration Requests", "description": "Tool to retrieve collaborative ads collaboration requests for a Meta Business using the Marketing API. Use when you need to get collaboration requests related to collaborative advertising partnerships for a specific business." }, { "slug": "METAADS_LIST_COLLABORATIVE_ADS_SUGGESTED_PARTNERS", "name": "List Collaborative Ads Suggested Partners", "description": "Tool to retrieve collaborative ads suggested partners for a business from Meta Marketing API. Use when you need to discover potential partnership opportunities for collaborative advertising campaigns." }, { "slug": "METAADS_LIST_INITIATED_AUDIENCE_SHARING_REQUESTS", "name": "List Initiated Audience Sharing Requests", "description": "Tool to retrieve initiated audience sharing requests for a business using the Meta Marketing API. Use when you need to get the list of audience sharing requests that have been initiated by a business." }, { "slug": "METAADS_LIST_MANAGED_PARTNER_ADS_FUNDING_SOURCE_DETAILS", "name": "List Managed Partner Ads Funding Source Details", "description": "Tool to retrieve managed partner ads funding source details for a Meta Business. Use when you need to get funding source information for managed partner ads associated with a specific business." }, { "slug": "METAADS_LIST_OWNED_APPS", "name": "List Owned Apps", "description": "Tool to retrieve apps owned by a business from Meta Marketing API. Use when you need to get information about apps associated with a business account." }, { "slug": "METAADS_LIST_OWNED_BUSINESSES", "name": "List Owned Businesses", "description": "Tool to retrieve businesses owned by a parent Business Manager from Meta Marketing API. Use when you need to list child businesses managed under a Business Manager account in a Tier-2 business hierarchy." }, { "slug": "METAADS_LIST_OWNED_INSTAGRAM_ASSETS", "name": "List Owned Instagram Assets", "description": "Tool to list Instagram accounts/assets owned by a Meta Business. Use when you need to retrieve the Instagram Business Accounts associated with a specific Meta Business." }, { "slug": "METAADS_LIST_OWNED_OFFSITE_SIGNAL_CONTAINER_BUSINESS_OBJECTS", "name": "List Owned Offsite Signal Container Business Objects", "description": "Tool to retrieve owned offsite signal container business objects for a business from Meta Marketing API. Use when you need to list all owned offsite signal container business objects associated with a specific business ID." }, { "slug": "METAADS_LIST_OWNED_PAGES", "name": "List Owned Pages", "description": "Tool to retrieve Pages owned by a Business Manager from Meta Marketing API. Use when you need to get a list of all Facebook Pages that a business owns or manages." }, { "slug": "METAADS_LIST_PENDING_CLIENT_AD_ACCOUNTS", "name": "List Pending Client Ad Accounts", "description": "Tool to retrieve pending client ad account access requests for a Business Manager from Meta Ads. Use when you need to get ad accounts that are awaiting approval to be added as clients to a business." }, { "slug": "METAADS_LIST_PENDING_CLIENT_APPS", "name": "List Pending Client Apps", "description": "Tool to retrieve pending client apps for a Meta Business. Use when you need to list apps that are pending approval or connection to a business account." }, { "slug": "METAADS_LIST_PENDING_CLIENT_PAGES", "name": "List Pending Client Pages", "description": "Tool to retrieve pending client pages for a Business Manager using the Meta Marketing API. Use when you need to see which Facebook Pages have pending access requests from the business." }, { "slug": "METAADS_LIST_PENDING_OFFSITE_SIGNAL_CONTAINERS", "name": "List Pending Shared Offsite Signal Container Business Objects", "description": "Tool to retrieve pending shared offsite signal container business objects from Meta Marketing API. Use when you need to get information about pending shared offsite signal containers associated with a business account." }, { "slug": "METAADS_LIST_PENDING_OWNED_AD_ACCOUNTS", "name": "List Pending Owned Ad Accounts", "description": "Tool to retrieve pending owned ad accounts for a Business Manager account from Meta Marketing API. Use when you need to list ad accounts with pending ownership status for a specific business." }, { "slug": "METAADS_LIST_PENDING_OWNED_PAGES", "name": "List Pending Owned Pages", "description": "Tool to retrieve Pages with pending ownership status for a Business Manager from Meta Marketing API. Use when you need to get a list of Facebook Pages that are pending approval or verification for a business to own." }, { "slug": "METAADS_LIST_PENDING_USERS", "name": "List Pending Users", "description": "Tool to retrieve pending users from a Business Manager in Meta Marketing API. Use when you need to get information about users with pending invitations to a Business Manager." }, { "slug": "METAADS_LIST_RECEIVED_AUDIENCE_SHARING_REQUESTS", "name": "List Received Audience Sharing Requests", "description": "Tool to retrieve all received audience sharing requests for a business using the Meta Marketing API. Use when you need to see which other businesses have requested to share custom audiences with your business." }, { "slug": "METAADS_LIST_SYSTEM_USERS", "name": "List System Users", "description": "Tool to retrieve system users for a Meta Business Manager account. Use when you need to list all system users (non-human accounts used for API access) associated with a business." }, { "slug": "METAADS_LIST_TARGETING_SEARCH", "name": "List Targeting Search", "description": "Tool to search for targeting options in Meta Ads Marketing API. Use when you need to find interests, locations, demographics, schools, or employers for ad targeting purposes." }, { "slug": "METAADS_PREVIEW_AD_CREATIVE", "name": "Preview Ad Creative", "description": "Preview Ad Creative" }, { "slug": "METAADS_READ_ADSETS", "name": "Read Ad Sets", "description": "Retrieve ad sets from a Meta ad account using the Marketing API. Returns information about the ad sets including their status, targeting, and other properties." }, { "slug": "METAADS_UPDATE_AD_CREATIVE", "name": "Update Ad Creative", "description": "Update Ad Creative" }, { "slug": "METAADS_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Update an existing advertising campaign using the Meta Marketing API. Allows modification of campaign properties like name, status, budget, and bidding strategy. Only the fields that need to be updated should be included in the request." }, { "slug": "METAADS_UPLOAD_AD_IMAGE", "name": "Upload Ad Image", "description": "Upload an image for use in Meta ad creatives using the Marketing API. The image can later be referenced by its hash when creating ad creatives." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "meta_marketing_api_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ads_read,ads_management" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "meta_ads_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "Your Meta access token with ads_read and ads_management permissions. Generate a non-expiring one in Business Settings → System Users → Generate token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zenrows", "name": "ZenRows", "logo": "https://logos.composio.dev/api/zenrows", "description": "ZenRows is a web scraping API allowing developers to bypass CAPTCHAs and blocks, gather structured data from dynamic websites, and quickly integrate results into applications", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "ZENROWS_GET_API_USAGE", "name": "Get ZenRows API Usage Statistics", "description": "This tool retrieves the current API usage statistics and limits for your ZenRows account. It is an independent action that requires no additional parameters besides authentication. It is useful for monitoring API usage and ensuring that the account has sufficient remaining credits." }, { "slug": "ZENROWS_GET_CONCURRENCY_STATUS_DETAILED", "name": "Get Detailed Concurrency Status", "description": "This tool provides detailed information about the current concurrency status and limits of your ZenRows account by making a request to the API and analyzing the response headers. It is essential for monitoring real-time API usage, managing concurrent requests, and ensuring optimal performance within plan limits." }, { "slug": "ZENROWS_GET_ORIGINAL_STATUS", "name": "Get Original Status Code", "description": "This tool retrieves the original HTTP status code returned by the target website, which is useful for debugging purposes. It returns the original status code in the response headers under 'x-zenrows-original-status'. It can also provide the full response body and error messages, helping with debugging scraping issues, verifying website responses, monitoring availability, and understanding website behavior." }, { "slug": "ZENROWS_GET_PDF_FROM_URL", "name": "Get PDF from URL", "description": "This tool generates a PDF version of the scraped content from a given URL. It requires JavaScript rendering to be enabled and sets the response type to PDF, making it ideal for archiving web pages, creating documentation, generating reports, or saving articles for offline reading." }, { "slug": "ZENROWS_GET_PLAINTEXT", "name": "Get Plaintext Response", "description": "This tool extracts plain text content from a webpage using the ZenRows API. By using the response_type=plaintext parameter, it strips HTML tags and formats the content into clean, plain text. It's useful for extracting readable content for NLP, summarization, or archiving purposes." }, { "slug": "ZENROWS_GET_REAL_ESTATE_DATA", "name": "Get Real Estate Property Data", "description": "A specialized tool for extracting structured data from real estate platforms like Zillow and Idealista. It leverages ZenRows' Real Estate API to fetch comprehensive property information, including property details, location information, features, seller details, and more, in a structured format." }, { "slug": "ZENROWS_GET_RESPONSE_COMPRESSION", "name": "Get Response with Compression", "description": "A tool to fetch content from a URL using the ZenRows API with compression enabled to optimize bandwidth usage and improve performance. It supports gzip, deflate, and br compression encodings, handles decompression automatically, and provides compression statistics along with the decompressed content." }, { "slug": "ZENROWS_GET_RESPONSE_HEADERS", "name": "Get response headers", "description": "A tool to retrieve and parse response headers from ZenRows API requests. It provides critical metadata such as concurrency limits, available request slots, request cost, unique request ID, and final URL after redirects, which is essential for monitoring usage, debugging, and optimizing requests." }, { "slug": "ZENROWS_GET_SESSION_ID", "name": "Get Session ID", "description": "This tool implements ZenRows' session management functionality to maintain the same IP address across multiple requests for up to 10 minutes. It supports parameters like url, session_id, and premium_proxy, and is useful for maintaining consistent scraping sessions, simulating real user behavior, and avoiding detection by anti-bot systems." }, { "slug": "ZENROWS_GET_WALMART_PRODUCT", "name": "Get Walmart Product Details", "description": "This tool allows users to extract detailed product information from Walmart using ZenRows' specialized e-commerce scraping API. It provides structured data for Walmart products including product details, pricing, availability, and more." }, { "slug": "ZENROWS_SCRAPE_URL_AUTOPARSE", "name": "Scrape url autoparse", "description": "The ZENROWS_SCRAPE_URL_AUTOPARSE tool automatically parses and extracts structured data from any given URL using intelligent parsing capabilities. It eliminates the need for manual CSS selectors by auto-identifying relevant content on web pages, returning data such as titles, main content, meta descriptions, images, links, prices, and contact information in a structured JSON format." }, { "slug": "ZENROWS_SCRAPE_URL_HTML", "name": "Scrape URL HTML", "description": "This tool extracts raw HTML data from a given URL using ZenRows' Universal Scraper API. It focuses on retrieving the pure HTML content of the webpage without automatic parsing or data extraction. It supports parameters such as js_render for enabling JavaScript rendering, custom_headers for custom HTTP headers, premium_proxy for using premium proxies, and session_id for maintaining the same IP across multiple requests." }, { "slug": "ZENROWS_SCRAPE_WITH_CSS_SELECTORS", "name": "Scrape URL with CSS Selectors", "description": "This tool allows users to scrape specific elements from a webpage using CSS selectors. It is particularly useful for targeted data extraction rather than retrieving the entire page content. The endpoint takes a URL and a JSON object containing CSS selectors for parsing elements such as titles, links, images, and prices, and includes optional parameters like using premium proxies, specifying response wait times, and custom headers among others." }, { "slug": "ZENROWS_SCREENSHOT_URL", "name": "Screenshot URL", "description": "A tool to capture screenshots of web pages using ZenRows API. This tool allows you to take screenshots of entire web pages or specific elements, with customizable options for format and quality." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ZenRows API Key. Get one at https://app.zenrows.com/register?p=free", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "googlesuper", "name": "Google Super", "logo": "https://logos.composio.dev/api/googlesuper", "description": "Google Super App combines all Google services including Drive, Calendar, Gmail, Sheets, Analytics, Ads, and more, providing a unified platform for seamless integration and management of your digital life.", "category": "file management & storage", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 467, "triggerCount": 20, "version": "20260703_01", "tools": [ { "slug": "GOOGLESUPER_ACL_DELETE", "name": "Delete ACL Rule", "description": "Deletes an access control rule from a Google Calendar. Use when you need to remove sharing permissions for a user, group, or domain." }, { "slug": "GOOGLESUPER_ACL_GET", "name": "Get ACL Rule", "description": "Retrieves a specific access control rule for a calendar. Use when you need to check permissions for a specific user, group, or domain." }, { "slug": "GOOGLESUPER_ACL_INSERT", "name": "Create ACL Rule", "description": "Creates an access control rule for a calendar. Use when you need to grant sharing permissions to a user, group, or domain." }, { "slug": "GOOGLESUPER_ACL_LIST", "name": "List ACL Rules", "description": "Retrieves the list of access control rules (ACLs) for a specified calendar, providing the necessary 'rule_id' values required for updating specific ACL rules." }, { "slug": "GOOGLESUPER_ACL_PATCH", "name": "Patch ACL Rule", "description": "Updates an existing access control rule for a calendar using patch semantics (partial update). This allows modifying specific fields without affecting other properties. IMPORTANT: The ACL rule must already exist on the calendar. This action cannot create new rules. If you receive a 404 Not Found error, the rule does not exist - use ACL insert to create it first, or use ACL list to verify available rules. Each patch request consumes three quota units. For domain-type ACL rules, if PATCH fails with 500 error, this action will automatically fallback to UPDATE method." }, { "slug": "GOOGLESUPER_ACL_UPDATE", "name": "Update ACL Rule", "description": "Updates an access control rule for the specified calendar." }, { "slug": "GOOGLESUPER_ACL_WATCH", "name": "Watch ACL Changes", "description": "Tool to watch for changes to ACL resources. Use when you need to set up real-time notifications for access control list modifications on a calendar." }, { "slug": "GOOGLESUPER_ADD_ENRICHMENT", "name": "Add Enrichment", "description": "Adds an enrichment at a specified position in a defined album." }, { "slug": "GOOGLESUPER_ADD_FILE_SHARING_PREFERENCE", "name": "Add file sharing preference (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_CREATE_PERMISSION instead; use GOOGLEDRIVE_UPDATE_PERMISSION to modify existing permissions (avoids duplicate entries). Modifies sharing permissions for an existing Google Drive file, granting a specified role to a user, group, domain, or 'anyone'. Bulk calls may trigger 403 rateLimitExceeded (~100 req/100s/user); use jittered exponential backoff." }, { "slug": "GOOGLESUPER_ADD_LABEL_TO_EMAIL", "name": "Modify email labels", "description": "Adds and/or removes specified Gmail labels for a message; ensure `message_id` and all `label_ids` are valid (use 'listLabels' for custom label IDs)." }, { "slug": "GOOGLESUPER_ADD_OR_REMOVE_TO_CUSTOMER_LIST", "name": "Add or remove to customer list", "description": "Adds or removes contacts from a Google Ads customer list (UserList/audience/remarketing list), not a Google Ads customer account. Note: It takes 6 to 12 hours for changes to be reflected in the customer list. Email addresses must comply with Google Ads policies and applicable privacy/consent laws." }, { "slug": "GOOGLESUPER_ADD_PARENT", "name": "Insert File Parent (v2)", "description": "Tool to add a parent folder for a file using Google Drive API v2. Use when you need to add a file to an additional folder." }, { "slug": "GOOGLESUPER_ADD_PROPERTY", "name": "Insert Property (v2 API)", "description": "Tool to add a property to a file, or update it if it already exists (v2 API). Use when you need to attach custom key-value metadata to a Google Drive file." }, { "slug": "GOOGLESUPER_ADD_SHEET", "name": "Add Sheet to Existing Spreadsheet", "description": "Adds a new sheet to a spreadsheet. Supports three sheet types: GRID, OBJECT, and DATA_SOURCE. SHEET TYPES: - GRID (default): Standard spreadsheet with rows/columns. Use properties to set dimensions, tab color, etc. - OBJECT: Sheet containing a chart. Requires objectSheetConfig with chartSpec (basicChart or pieChart). - DATA_SOURCE: Sheet connected to BigQuery. Requires dataSourceConfig with bigQuery spec and bigquery.readonly OAuth scope. OTHER NOTES: - Sheet names must be unique; use forceUnique=true to auto-append suffix (_2, _3) if name exists - For tab colors, use EITHER rgbColor OR themeColor, not both - Avoid 'index' when creating sheets in parallel (causes errors) - OBJECT sheets are created via addChart with position.newSheet=true - DATA_SOURCE sheets require bigquery.readonly OAuth scope Use cases: Add standard grid sheet, create chart on dedicated sheet, connect to BigQuery data source." }, { "slug": "GOOGLESUPER_AGGREGATE_COLUMN_DATA", "name": "Aggregate Column Data", "description": "Searches for rows where a specific column matches a value and performs mathematical operations on data from another column." }, { "slug": "GOOGLESUPER_APPEND_DIMENSION", "name": "Append Dimension", "description": "Tool to append new rows or columns to a sheet, increasing its size. Use when you need to add empty rows or columns to an existing sheet." }, { "slug": "GOOGLESUPER_ARCHIVE_CUSTOM_DIMENSION", "name": "Archive Custom Dimension", "description": "Tool to archive a CustomDimension on a property. Use when you need to remove a custom dimension from active use without permanently deleting it. Archived dimensions cannot be used in new reports." }, { "slug": "GOOGLESUPER_AUTOCOMPLETE", "name": "Autocomplete Place Predictions", "description": "Returns place and query predictions for text input. Use when implementing as-you-type autocomplete functionality for place searches. Returns up to five predictions ordered by relevance." }, { "slug": "GOOGLESUPER_AUTO_RESIZE_DIMENSIONS", "name": "Auto-Resize Rows or Columns", "description": "Auto-fit column widths or row heights for a dimension range using batchUpdate.autoResizeDimensions. Use when you need to automatically adjust row heights or column widths to fit content after writing data." }, { "slug": "GOOGLESUPER_BATCH_ADD_MEDIA_ITEMS", "name": "Batch Add Media Items", "description": "Adds one or more media items to an album in Google Photos." }, { "slug": "GOOGLESUPER_BATCH_CLEAR_VALUES_BY_DATA_FILTER", "name": "Batch Clear Values By Data Filter", "description": "Clears one or more ranges of values from a spreadsheet using data filters. The caller must specify the spreadsheet ID and one or more DataFilters. Ranges matching any of the specified data filters will be cleared. Only values are cleared -- all other properties of the cell (such as formatting, data validation, etc..) are kept." }, { "slug": "GOOGLESUPER_BATCH_CREATE_MEDIA_ITEMS", "name": "Batch Create Media Items", "description": "Batch upload and create media items in Google Photos. Supports three input methods: 1. 'urls': Simple list of public URLs (file names extracted automatically) 2. 'media_files': List of objects with url/file, file_name, and description 3. 'files': List of uploaded files Media items can optionally be added to an album at a specific position. Maximum 50 items per request." }, { "slug": "GOOGLESUPER_BATCH_DELETE_MESSAGES", "name": "Batch delete Gmail messages", "description": "Tool to permanently delete multiple Gmail messages in bulk, bypassing Trash with no recovery possible. Use when you need to efficiently remove large numbers of emails (e.g., retention enforcement, mailbox hygiene). Use GMAIL_MOVE_TO_TRASH instead when reversibility may be needed. Always obtain explicit user confirmation and verify a sample of message IDs before executing. High-volume calls may trigger 429 rateLimitExceeded or 403 userRateLimitExceeded errors; apply exponential backoff." }, { "slug": "GOOGLESUPER_BATCH_EVENTS", "name": "Batch Events", "description": "Execute up to 1000 event mutations (create/patch/delete) in one Google Calendar HTTP batch request with per-item status/results. Use this to materially reduce round-trips for bulk operations like migrations, cleanup, or large-scale updates." }, { "slug": "GOOGLESUPER_BATCH_EXECUTE", "name": "Batch Execute Google Tasks Operations", "description": "Executes multiple Google Tasks API operations in a single HTTP batch request and returns structured per-item results. Use this to reduce LLM tool invocations when performing bulk operations like updating many tasks, moving tasks, or deleting multiple items. Note: Each sub-request still counts toward API quota; batching primarily reduces HTTP overhead and tool call count." }, { "slug": "GOOGLESUPER_BATCH_GET", "name": "Batch get spreadsheet", "description": "Retrieves data from specified cell ranges in a Google Spreadsheet." }, { "slug": "GOOGLESUPER_BATCH_GET_MEDIA_ITEMS", "name": "Batch Get Media Items", "description": "Returns the list of media items for the specified media item identifiers." }, { "slug": "GOOGLESUPER_BATCH_MODIFY_MESSAGES", "name": "Batch modify Gmail messages", "description": "Modify labels on multiple Gmail messages in one efficient API call. Supports up to 1,000 messages per request for bulk operations like archiving, marking as read/unread, or applying custom labels. High-volume calls may return 429 rateLimitExceeded or 403 userRateLimitExceeded; apply exponential backoff." }, { "slug": "GOOGLESUPER_BATCH_RUN_PIVOT_REPORTS", "name": "Batch Run Pivot Reports", "description": "Tool to return multiple pivot reports in a batch for a GA4 property. Use when you need to fetch multiple pivot table reports with multi-dimensional analysis in a single request." }, { "slug": "GOOGLESUPER_BATCH_RUN_REPORTS", "name": "Batch Run Reports", "description": "Tool to return multiple analytics data reports in a batch. Use when you need to fetch multiple reports for one GA4 property in a single request." }, { "slug": "GOOGLESUPER_BATCH_UPDATE", "name": "Batch update spreadsheet (Deprecated)", "description": "DEPRECATED: Use GOOGLESHEETS_VALUES_UPDATE instead. Write values to ONE range in a Google Sheet, or append as new rows if no start cell is given. IMPORTANT - This tool does NOT accept the Google Sheets API's native batch format: - WRONG: {\"data\": [{\"range\": \"...\", \"values\": [[...]]}], ...} - CORRECT: {\"sheet_name\": \"...\", \"values\": [[...]], \"first_cell_location\": \"...\", ...} To update MULTIPLE ranges, make SEPARATE CALLS to this tool for each range. Features: - Auto-expands grid for large datasets (prevents range errors) - Set first_cell_location to write at a specific position (e.g., \"A1\", \"B5\") - Omit first_cell_location to append values as new rows at the end Requirements: Target sheet must exist and spreadsheet must contain at least one worksheet." }, { "slug": "GOOGLESUPER_BATCH_UPDATE_VALUES_BY_DATA_FILTER", "name": "Batch Update Values by Data Filter", "description": "Tool to update values in ranges matching data filters. Use when you need to update specific data in a Google Sheet based on criteria rather than fixed cell ranges." }, { "slug": "GOOGLESUPER_BULK_INSERT_TASKS", "name": "Bulk Insert Tasks (Deprecated)", "description": "DEPRECATED: Use BatchExecute instead. Creates multiple tasks in a Google Tasks list in a single operation using HTTP batching. Use when you need to create many tasks efficiently (reducing round-trips compared to individual insert calls)." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_DELETE", "name": "Remove Calendar from List", "description": "Tool to remove a calendar from the user's calendar list. Use when you need to unsubscribe from or hide a calendar from the user's list." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_GET", "name": "Get Single Calendar by ID", "description": "Retrieves metadata for a SINGLE specific calendar from the user's calendar list by its calendar ID. This action requires a calendarId parameter and returns details about that one calendar only. NOTE: This does NOT list all calendars. To list all calendars in the user's calendar list, use GOOGLECALENDAR_CALENDAR_LIST_LIST instead." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_INSERT", "name": "Insert Calendar into List", "description": "Inserts an existing calendar into the user's calendar list, making it visible in the UI. Calendars (e.g., newly created ones) won't appear in the list or UI until explicitly inserted." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_PATCH", "name": "Patch Calendar List Entry", "description": "Updates an existing calendar on the user's calendar list using patch semantics. This method allows partial updates, modifying only the specified fields." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_UPDATE", "name": "Update Calendar List Entry", "description": "Updates a calendar list entry's display/subscription settings (color, visibility, reminders, selection) for the authenticated user — does not modify the underlying calendar resource (title, timezone, etc.). To modify the calendar itself, use GOOGLECALENDAR_CALENDARS_UPDATE." }, { "slug": "GOOGLESUPER_CALENDAR_LIST_WATCH", "name": "Watch Calendar List", "description": "Watch for changes to CalendarList resources using push notifications. Use this to receive real-time updates when calendar list entries are modified." }, { "slug": "GOOGLESUPER_CALENDARS_DELETE", "name": "Delete Calendar", "description": "Deletes a secondary calendar that you own or have delete permissions on. Deletion is permanent and irreversible — verify the correct calendar_id before calling. You cannot delete your primary calendar or calendars you only have read/write access to. Use calendarList.list to find calendars with owner accessRole. For primary calendars, use calendars.clear instead. Parallel calls may trigger userRateLimitExceeded; sequence bulk deletions." }, { "slug": "GOOGLESUPER_CALENDARS_UPDATE", "name": "Update Calendar", "description": "Full PUT-style update that overwrites all calendar metadata fields; unspecified optional fields are cleared. Use GOOGLECALENDAR_PATCH_CALENDAR to update only a subset of fields. Mutates the underlying calendar resource (title, description, timeZone, etc.); use GOOGLECALENDAR_CALENDAR_LIST_UPDATE to change per-user display properties like color." }, { "slug": "GOOGLESUPER_CHANNELS_STOP", "name": "Stop Channel", "description": "Tool to stop watching resources through a notification channel. Use when you need to discontinue push notifications for a specific channel subscription." }, { "slug": "GOOGLESUPER_CHECK_COMPATIBILITY", "name": "Check Compatibility", "description": "Tool to list dimensions and metrics compatible with a GA4 report request. Use when you need to validate compatibility of chosen dimensions or metrics before running a report." }, { "slug": "GOOGLESUPER_CLEAR_BASIC_FILTER", "name": "Clear Basic Filter", "description": "Tool to clear the basic filter from a sheet. Use when you need to remove an existing basic filter from a specific sheet within a Google Spreadsheet." }, { "slug": "GOOGLESUPER_CLEAR_CALENDAR", "name": "Clear Calendar", "description": "Clears a primary calendar by deleting all events from it. The calendar itself is preserved; only its events are removed. Primary calendars cannot be deleted entirely." }, { "slug": "GOOGLESUPER_CLEAR_TASKS", "name": "Clear tasks", "description": "Permanently and irreversibly clears all completed tasks from a specified Google Tasks list; this action is destructive, idempotent, and cannot be undone. Always require explicit user confirmation before invoking." }, { "slug": "GOOGLESUPER_CLEAR_VALUES", "name": "Clear spreadsheet values", "description": "Clears cell content (preserving formatting and notes) from a specified A1 notation range in a Google Spreadsheet; the range must correspond to an existing sheet and cells." }, { "slug": "GOOGLESUPER_COLORS_GET", "name": "Get Color Definitions", "description": "Returns the color definitions for calendars and events. Use when you need to retrieve the available color palette for styling calendars or events." }, { "slug": "GOOGLESUPER_COMPUTE_ROUTE_MATRIX", "name": "Compute Route Matrix", "description": "Calculates travel distance and duration matrix between multiple origins and destinations using the modern Routes API; supports OAuth2 authentication and various travel modes. Matrix is capped at 625 elements (e.g., 25×25); chunk larger sets to avoid RESOURCE_EXHAUSTED errors. Response elements may be returned out of input order — always use originIndex and destinationIndex to map results. Only use elements where condition='ROUTE_EXISTS'; the matrix may be incomplete." }, { "slug": "GOOGLESUPER_COPY_DOCUMENT", "name": "Copy Google Document", "description": "Tool to create a copy of an existing Google Document. Use this to duplicate a document, for example, when using an existing document as a template. The copied document will have a default title (e.g., 'Copy of [original title]') if no new title is provided, and will be placed in the user's root Google Drive folder." }, { "slug": "GOOGLESUPER_COPY_FILE", "name": "Copy file (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_COPY_FILE_ADVANCED instead. Duplicates an existing file (not folders) in Google Drive by `file_id`; copy lands in same folder as original — use GOOGLEDRIVE_MOVE_FILE afterward for precise placement. Copy receives a new `file_id`; update stored references accordingly. For shared drives, requires organizer/manager rights." }, { "slug": "GOOGLESUPER_COPY_FILE_ADVANCED", "name": "Copy file with advanced options", "description": "Creates a copy of a file and applies any requested updates with patch semantics. Use when you need to duplicate a file with advanced options like label inclusion, visibility settings, or custom metadata." }, { "slug": "GOOGLESUPER_CREATE_ALBUM", "name": "Create Album", "description": "Creates a new album in Google Photos." }, { "slug": "GOOGLESUPER_CREATE_AND_POPULATE_TABLE", "name": "Create and Populate Table in Google Doc", "description": "Creates a new table in a Google Document and populates its cells with provided text data in a single operation. Use this action when you need to insert a structured table with predefined content into a document. The action handles both table creation and cell population automatically, eliminating the need for separate operations." }, { "slug": "GOOGLESUPER_CREATE_AUDIENCE_EXPORT", "name": "Create Audience Export", "description": "Tool to create an audience export for Google Analytics. Use when you need to export a snapshot of users in an audience at a specific point in time. This initiates a long-running asynchronous request that returns an operation resource name immediately. The export begins in CREATING state with rowCount=0; the operation must complete before export data is accessible for querying." }, { "slug": "GOOGLESUPER_CREATE_AUDIENCE_LIST", "name": "Create Audience List", "description": "Tool to create an audience list for later retrieval by initiating a long-running asynchronous request. Use when you need to create a snapshot of users currently in an audience. The method returns quickly with an Operation resource while processing occurs in the background." }, { "slug": "GOOGLESUPER_CREATE_CALENDAR", "name": "Create a new calendar", "description": "Creates a new secondary Google Calendar with the specified title and optional settings. Use this action when you need to create a new calendar for organizing events separately from the primary calendar. The authenticated user becomes the owner of the newly created calendar. Optional parameters include description, location, and timezone." }, { "slug": "GOOGLESUPER_CREATE_CHART", "name": "Create Chart in Google Sheets", "description": "Create a chart in a Google Sheets spreadsheet using the specified data range and chart type. Conditional requirements: - Provide either a simple chart via chart_type + data_range (basicChart), OR supply a full chart_spec supporting all chart types. Exactly one approach should be used. - When using chart_spec, set exactly one of the union fields (basicChart | pieChart | bubbleChart | candlestickChart | histogramChart | waterfallChart | treemapChart | orgChart | scorecardChart)." }, { "slug": "GOOGLESUPER_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on a file in Google Drive. Returns a nested `data` object; extract `data.id` for the resulting comment identifier. Omit `anchor` and `quoted_file_content_*` for general file-level comments." }, { "slug": "GOOGLESUPER_CREATE_CUSTOM_DIMENSION", "name": "Create Custom Dimension", "description": "Tool to create a CustomDimension for a Google Analytics property. Use when you need to add a new custom dimension to track specific user properties, event parameters, or eCommerce item parameters." }, { "slug": "GOOGLESUPER_CREATE_CUSTOMER_LIST", "name": "Create customer list", "description": "Creates a Google Ads customer list (UserList/audience/remarketing list), not a Google Ads customer account. Note: Requires an authenticated Google Ads connection with customer_id configured. Email-based lists must comply with Google Ads policies and applicable privacy/consent laws. Membership updates can take many hours to propagate; targeting eligibility is not immediate after creation." }, { "slug": "GOOGLESUPER_CREATE_CUSTOM_METRIC", "name": "Create Custom Metric", "description": "Tool to create a custom metric in Google Analytics. Use when you need to define a new custom metric for tracking specific event parameters." }, { "slug": "GOOGLESUPER_CREATE_DOCUMENT", "name": "Create a document", "description": "Creates a new Google Docs document using the provided title as filename and inserts the initial text at the beginning if non-empty, returning the document's ID and metadata (excluding body content)." }, { "slug": "GOOGLESUPER_CREATE_DOCUMENT2", "name": "Create blank document (Deprecated)", "description": "DEPRECATED: Use GOOGLEDOCS_CREATE_DOCUMENT instead. Tool to create a blank Google Docs document with a specified title. Use when you need to create a new, empty document." }, { "slug": "GOOGLESUPER_CREATE_DOCUMENT_MARKDOWN", "name": "Create Document Markdown", "description": "Creates a new Google Docs document, optionally initializing it with a title and content provided as Markdown text." }, { "slug": "GOOGLESUPER_CREATE_DRIVE", "name": "Create Shared Drive", "description": "Tool to create a new shared drive. Use when you need to programmatically create a new shared drive for collaboration or storage." }, { "slug": "GOOGLESUPER_CREATE_EMAIL_DRAFT", "name": "Create email draft", "description": "Creates a Gmail email draft. While all fields are optional per the Gmail API, practical validation requires at least one of recipient_email, cc, or bcc and at least one of subject or body. Supports To/Cc/Bcc recipients, subject, plain/HTML body (ensure `is_html=True` for HTML), attachments, and threading. Returns a draft_id that must be used as-is with GMAIL_SEND_DRAFT — synthetic or stale IDs will fail. When creating a draft reply to an existing thread (thread_id provided), leave subject empty to stay in the same thread; setting a subject will create a NEW thread instead. HTTP 429 may occur on rapid creation/send sequences; apply exponential backoff." }, { "slug": "GOOGLESUPER_CREATE_EVENT", "name": "Create Event", "description": "Create a Google Calendar event using start_datetime plus duration fields. The organizer is added as an attendee unless exclude_organizer is True. By default adds Google Meet link (works for Workspace, gracefully falls back for personal Gmail). Attendees can be email strings (required) or objects with email and optional fields. No conflict checking is performed; use GOOGLECALENDAR_FREE_BUSY_QUERY to detect overlaps before creating. Returns event id and htmlLink nested under data.response_data. Example: { \"start_datetime\": \"2025-01-16T13:00:00\", \"timezone\": \"America/New_York\", \"event_duration_hour\": 1, \"event_duration_minutes\": 30, \"summary\": \"Client sync\", \"attendees\": [\"required@example.com\", {\"email\": \"optional@example.com\", \"optional\": true}] }" }, { "slug": "GOOGLESUPER_CREATE_EXPANDED_DATA_SET", "name": "Create Expanded Data Set", "description": "Tool to create an expanded data set for a property. Use when you need to combine specific dimensions and metrics into a custom dataset after property creation." }, { "slug": "GOOGLESUPER_CREATE_FILE", "name": "Create File or Folder", "description": "Creates a new file or folder in Google Drive. Supports both metadata-only creation (for folders and empty documents) and file upload with content. When file_to_upload is provided, uploads the actual file bytes; otherwise creates an empty file. Native Google file types (Docs, Sheets, Forms, etc.) and folders are created as empty shells when no content is provided; content must be added manually afterward. Newly created files are private by default — set sharing permissions afterward for collaboration. For shared-drive folders, use this tool with the target folder ID in `parents` rather than GOOGLEDRIVE_CREATE_FOLDER." }, { "slug": "GOOGLESUPER_CREATE_FILE_FROM_TEXT", "name": "Create a File from Text", "description": "Creates a new file in Google Drive from provided text content (up to 10MB), supporting various formats including automatic conversion to Google Workspace types. Returns flat metadata fields (`id`, `mimeType`, `name`) at the top level — not nested under a `file` object. Created files are private by default; use a sharing tool afterward for collaborative access. Rapid successive calls may trigger `403 rateLimitExceeded` or `429 userRateLimitExceeded`; apply exponential backoff between retries. Does not support shared-drive targets in all cases." }, { "slug": "GOOGLESUPER_CREATE_FILTER", "name": "Create Gmail filter", "description": "Tool to create a new Gmail filter with specified criteria and actions. Use when the user wants to automatically organize incoming messages based on sender, subject, size, or other criteria. Note: you can only create a maximum of 1,000 filters per account." }, { "slug": "GOOGLESUPER_CREATE_FOLDER", "name": "Create a folder", "description": "Creates a new folder in Google Drive, optionally within an EXISTING parent folder specified by its ID or name. The parent folder MUST already exist - use GOOGLEDRIVE_FIND_FOLDER first to verify the parent exists or find its ID. Google Drive permits duplicate folder names, so always store and reuse the folder ID returned by this action rather than relying on names for future lookups." }, { "slug": "GOOGLESUPER_CREATE_FOOTER", "name": "Create Footer", "description": "Tool to create a new footer in a Google Document. Use when you need to add a footer, optionally specifying its type and the section it applies to." }, { "slug": "GOOGLESUPER_CREATE_FOOTNOTE", "name": "Create Footnote", "description": "Tool to create a new footnote in a Google Document. Use this when you need to add a footnote at a specific location or at the end of the document body." }, { "slug": "GOOGLESUPER_CREATE_GOOGLE_SHEET1", "name": "Create a Google Sheet", "description": "Creates a new Google Spreadsheet in Google Drive. If a title is provided, the spreadsheet will be created with that name. If no title is provided, Google will create a spreadsheet with a default name like 'Untitled spreadsheet'. Optionally create the spreadsheet in a specific folder by providing either: - folder_id: The Google Drive folder ID (preferred, unambiguous) - folder_name: The folder name (searches for exact match; if multiple folders match, returns choices) If neither folder_id nor folder_name is provided, the spreadsheet is created in the root Drive folder." }, { "slug": "GOOGLESUPER_CREATE_HEADER", "name": "Create Header", "description": "Tool to create a new header in a Google Document, optionally with text content. Use this tool when you need to add a header to a document. You can provide: - document_id: The ID of the document (required) - type: The header type (DEFAULT is the standard header) - text: Optional text content to add to the header - section_break_location: Optional location for section-specific headers" }, { "slug": "GOOGLESUPER_CREATE_LABEL", "name": "Create label", "description": "Creates a new label with a unique name in the specified user's Gmail account. Returns a labelId (e.g., 'Label_123') required for downstream tools like GMAIL_ADD_LABEL_TO_EMAIL, GMAIL_BATCH_MODIFY_MESSAGES, and GMAIL_MODIFY_THREAD_LABELS — those tools do not accept display names." }, { "slug": "GOOGLESUPER_CREATE_MEET", "name": "Create Google Meet Space", "description": "Creates a new Google Meet space with optional configuration. Does not attach to any calendar event — calendar linking requires a separate Calendar tool call. Capture `meetingUri`, `meetingCode`, and `space.name` from the response immediately for downstream lookups. Requires `meetings.space.created` OAuth scope. Returns HTTP 429 under rapid calls; apply exponential backoff. Use when you need a meeting space with specific access controls, moderation, recording, or transcription settings." }, { "slug": "GOOGLESUPER_CREATE_NAMED_RANGE", "name": "Create Named Range", "description": "Tool to create a new named range in a Google Document. Use this to assign a name to a specific part of the document for easier reference or programmatic manipulation." }, { "slug": "GOOGLESUPER_CREATE_PARAGRAPH_BULLETS", "name": "Create Paragraph Bullets", "description": "Tool to add bullets to paragraphs within a specified range in a Google Document. Use when you need to format a list or a set of paragraphs as bullet points." }, { "slug": "GOOGLESUPER_CREATE_PERMISSION", "name": "Create Permission", "description": "Tool to create a permission for a file or shared drive. Use when you need to share a file or folder with users, groups, domains, or make it publicly accessible. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied." }, { "slug": "GOOGLESUPER_CREATE_PERMISSIONS_BATCH", "name": "Create Permissions Batch", "description": "Creates multiple permissions for files or shared drives in a single batch request. Use this action when you need to share multiple files with users, or share a single file with multiple users or groups simultaneously. Each permission in the batch can target a different file and specify different access levels. Batch operations are more efficient than creating permissions individually, with a maximum of 100 permissions per batch." }, { "slug": "GOOGLESUPER_CREATE_PRESENTATION", "name": "Create Google Slides Presentation", "description": "Tool to create a blank Google Slides presentation. Use when you need to initialize a new presentation with a specific title, locale, or page size." }, { "slug": "GOOGLESUPER_CREATE_PROMPT_POST", "name": "Create Prompt Post", "description": "Send a one-shot prompt to the Sanity Content Agent. Stateless one-shot prompt endpoint. No thread management or message persistence. Ideal for simple, single-turn interactions. Use when you need to send a single prompt and receive a response without maintaining conversation context." }, { "slug": "GOOGLESUPER_CREATE_RECURRING_AUDIENCE_LIST", "name": "Create Recurring Audience List", "description": "Tool to create a recurring audience list that automatically generates new audience lists daily based on the latest data. Use when you need to automate audience list creation and reduce quota token consumption." }, { "slug": "GOOGLESUPER_CREATE_REPLY", "name": "Create Reply", "description": "Tool to create a reply to a comment in Google Drive. Use when you need to respond to an existing comment on a file." }, { "slug": "GOOGLESUPER_CREATE_REPORT_TASK", "name": "Create Report Task", "description": "Tool to create a report task as a long-running asynchronous request for customized Google Analytics event data reports. Use when you need to generate large or complex reports that process asynchronously." }, { "slug": "GOOGLESUPER_CREATE_ROLLUP_PROPERTY", "name": "Create Rollup Property", "description": "Tool to create a roll-up property. Use when consolidating multiple GA4 properties into one aggregated view." }, { "slug": "GOOGLESUPER_CREATE_SHORTCUT_TO_FILE", "name": "Create Shortcut to File/Folder", "description": "Tool to create a shortcut to a file or folder in Google Drive. Use when you need to link to an existing Drive item from another location without duplicating it. The shortcut receives its own distinct file ID (capture from response). No parent folder parameter exists; use GOOGLEDRIVE_MOVE_FILE after creation to place the shortcut in the desired location." }, { "slug": "GOOGLESUPER_CREATE_SLIDES_MARKDOWN", "name": "Create Slides from Markdown", "description": "Creates a new Google Slides presentation from Markdown text. Automatically splits content into slides using '---' separators and applies appropriate templates based on content structure." }, { "slug": "GOOGLESUPER_CREATE_SPREADSHEET_COLUMN", "name": "Create spreadsheet column", "description": "Creates a new column in a Google Spreadsheet. Specify the target sheet using sheet_id (numeric) or sheet_name (text). If neither is provided, defaults to the first sheet (sheet_id=0)." }, { "slug": "GOOGLESUPER_CREATE_SPREADSHEET_ROW", "name": "Create spreadsheet row", "description": "Inserts a new, empty row into a specified sheet of a Google Spreadsheet at a given index, optionally inheriting formatting from the row above." }, { "slug": "GOOGLESUPER_CREATE_TAB", "name": "Create Document Tab", "description": "Creates a new tab in a Google Docs document. Tabs allow you to organize document content into separate sections within a single document. Use this action when you need to add a new organizational tab to a document. When a tab is added at a specified index, all subsequent tabs' indexes are automatically incremented." }, { "slug": "GOOGLESUPER_CREATE_TASK_LIST", "name": "Create a task list", "description": "Creates a new task list with the specified title and returns a tasklist_id. Use the returned tasklist_id (not the title) when calling GOOGLETASKS_INSERT_TASK or other task operations. Duplicate titles are permitted by the API, so verify existing lists before creating to avoid unintended duplicates." }, { "slug": "GOOGLESUPER_CREATE_TEAM_DRIVE", "name": "Create Team Drive (Deprecated)", "description": "Tool to create a Team Drive. Deprecated: Use drives.create instead. Use when you need to create a Team Drive for collaboration." }, { "slug": "GOOGLESUPER_DELETE_CHART", "name": "Delete Chart from Google Sheets", "description": "Delete an existing chart from a Google Sheets spreadsheet. Use this action when you need to remove a chart that is no longer needed or needs to be replaced. This action is irreversible — once a chart is deleted, it cannot be recovered. The chart data source (the cells containing the data) remains unchanged; only the chart visualization is removed." }, { "slug": "GOOGLESUPER_DELETE_CHILD", "name": "Delete Child (v2)", "description": "Tool to remove a child from a folder using Google Drive API v2. Use when you need to remove a file from a specific folder." }, { "slug": "GOOGLESUPER_DELETE_COMMENT", "name": "Delete Comment", "description": "Permanently deletes a comment thread (and all its replies) from a Google Drive file — this action is irreversible. To remove only a single reply within a thread, use GOOGLEDRIVE_DELETE_REPLY instead. Verify the exact comment content and comment_id before calling." }, { "slug": "GOOGLESUPER_DELETE_CONTENT_RANGE", "name": "Delete Content Range in Document", "description": "Tool to delete a range of content from a Google Document. Use when you need to remove a specific portion of text or other structural elements within a document. Note: Every segment (body, header, footer, footnote) in Google Docs ends with a final newline character that cannot be deleted. Ensure the endIndex does not include this trailing newline." }, { "slug": "GOOGLESUPER_DELETE_DIMENSION", "name": "Delete Dimension (Rows/Columns)", "description": "Tool to delete specified rows or columns from a sheet in a Google Spreadsheet. Use when you need to remove a range of rows or columns." }, { "slug": "GOOGLESUPER_DELETE_DRAFT", "name": "Delete Draft", "description": "Permanently deletes a specific Gmail draft using its ID with no recovery possible; verify the correct `draft_id` and obtain explicit user confirmation before calling. Ensure the draft exists and the user has necessary permissions for the given `user_id`." }, { "slug": "GOOGLESUPER_DELETE_DRIVE", "name": "Delete Shared Drive", "description": "Tool to permanently delete a shared drive. Use when you need to remove a shared drive and its contents (if specified)." }, { "slug": "GOOGLESUPER_DELETE_EVENT", "name": "Delete event", "description": "Deletes a specified event by `event_id` from a Google Calendar (`calendar_id`); idempotent — a 404 for an already-deleted event is a no-op. Bulk deletions may trigger `rateLimitExceeded` or `userRateLimitExceeded`; cap concurrency to 5–10 requests and apply exponential backoff." }, { "slug": "GOOGLESUPER_DELETE_FILE", "name": "Delete file", "description": "DEPRECATED: Use GOOGLEDRIVE_GOOGLE_DRIVE_DELETE_FOLDER_OR_FILE_ACTION instead. Tool to permanently delete a file owned by the user without moving it to trash. Use when permanent deletion is required. If the file belongs to a shared drive, the user must be an organizer on the parent folder." }, { "slug": "GOOGLESUPER_DELETE_FILTER", "name": "Delete Gmail filter", "description": "Tool to permanently delete a Gmail filter by its ID. Use when you need to remove an existing email filtering rule." }, { "slug": "GOOGLESUPER_DELETE_FOOTER", "name": "Delete Footer", "description": "Tool to delete a footer from a Google Document. Use when you need to remove a footer from a specific section or the default footer." }, { "slug": "GOOGLESUPER_DELETE_HEADER", "name": "Delete Header", "description": "Deletes the header from the specified section or the default header if no section is specified. Use this tool to remove a header from a Google Document." }, { "slug": "GOOGLESUPER_DELETE_LABEL", "name": "Delete label from account (permanent)", "description": "Permanently DELETES a user-created Gmail label from the account (not from a message). WARNING: This action DELETES the label definition itself, removing it from all messages. System labels (INBOX, SENT, UNREAD, etc.) cannot be deleted. To add/remove labels from specific messages, use GMAIL_ADD_LABEL_TO_EMAIL action instead." }, { "slug": "GOOGLESUPER_DELETE_MESSAGE", "name": "Delete message", "description": "Permanently deletes a specific email message by its ID from a Gmail mailbox; for `user_id`, use 'me' for the authenticated user or an email address to which the authenticated user has delegated access." }, { "slug": "GOOGLESUPER_DELETE_NAMED_RANGE", "name": "Delete Named Range", "description": "Tool to delete a named range from a Google Document. Use when you need to remove a previously defined named range by its ID or name." }, { "slug": "GOOGLESUPER_DELETE_PARAGRAPH_BULLETS", "name": "Delete Paragraph Bullets", "description": "Tool to remove bullets from paragraphs within a specified range in a Google Document. Use when you need to clear bullet formatting from a section of a document." }, { "slug": "GOOGLESUPER_DELETE_PARENT", "name": "Delete Parent (v2)", "description": "Tool to remove a parent from a file using Google Drive API v2. Use when you need to remove a file from a specific folder." }, { "slug": "GOOGLESUPER_DELETE_PERMISSION", "name": "Delete Permission", "description": "Deletes a permission from a file by permission ID. Deletion is irreversible — confirm the target user, group, or permission type before executing. IMPORTANT: You must first call GOOGLEDRIVE_LIST_PERMISSIONS to get valid permission IDs. To fully revoke public access, the type='anyone' (link-sharing) permission must be explicitly deleted; revoking other permissions leaves the file publicly accessible via link. Use when you need to revoke access for a specific user or group from a file." }, { "slug": "GOOGLESUPER_DELETE_PROPERTY", "name": "Delete Property (v2 API)", "description": "Tool to delete a property from a file using Google Drive API v2. Use when you need to remove custom key-value metadata from a file." }, { "slug": "GOOGLESUPER_DELETE_REPLY", "name": "Delete Reply", "description": "Tool to delete a specific reply by reply ID. Deletion is irreversible; obtain explicit user confirmation before calling. Removes only the targeted reply, not the full comment thread — use GOOGLEDRIVE_DELETE_COMMENT to remove the entire thread." }, { "slug": "GOOGLESUPER_DELETE_REVISION", "name": "Delete Revision", "description": "Tool to permanently delete a file revision. Use when you need to remove a specific version of a binary file (images, videos, etc.). Cannot delete revisions for Google Docs/Sheets or the last remaining revision." }, { "slug": "GOOGLESUPER_DELETE_SHEET", "name": "Delete Sheet", "description": "Tool to delete a sheet (worksheet) from a spreadsheet. Use when you need to remove a specific sheet from a Google Sheet document." }, { "slug": "GOOGLESUPER_DELETE_TAB", "name": "Delete Tab", "description": "Deletes a tab from a Google Document. This action is irreversible — the tab cannot be recovered once removed. Use when you need to remove a tab and all its child tabs from a document's tab structure." }, { "slug": "GOOGLESUPER_DELETE_TABLE_COLUMN", "name": "Delete Table Column", "description": "Tool to delete a column from a table in a Google Document. Use this tool when you need to remove a specific column from an existing table within a document." }, { "slug": "GOOGLESUPER_DELETE_TABLE_ROW", "name": "Delete Table Row", "description": "Tool to delete a row from a table in a Google Document. Use when you need to remove a specific row from an existing table." }, { "slug": "GOOGLESUPER_DELETE_TASK", "name": "Delete task", "description": "Deletes a specified task from a Google Tasks list. Deletion is permanent and irreversible — confirm with the user before executing, and consider GOOGLETASKS_UPDATE_TASK or GOOGLETASKS_MOVE_TASK as non-destructive alternatives. Both tasklist_id and task_id are required parameters. The Google Tasks API does not support deleting tasks by task_id alone — you must specify which task list contains the task. Use 'List Task Lists' to get available list IDs, then 'List Tasks' to find the task_id within that list." }, { "slug": "GOOGLESUPER_DELETE_TASK_LIST", "name": "Delete task list", "description": "Permanently deletes an existing Google Task list, identified by `tasklist_id`, along with all its tasks; this operation is irreversible. Require explicit user confirmation before calling; do not invoke in read-only or exploratory flows." }, { "slug": "GOOGLESUPER_DELETE_TEAM_DRIVE", "name": "Delete Team Drive (Deprecated)", "description": "Tool to permanently delete a Team Drive. Deprecated: Use drives.delete instead. Use when you need to remove a Team Drive using the legacy endpoint." }, { "slug": "GOOGLESUPER_DELETE_THREAD", "name": "Delete thread", "description": "Tool to immediately and permanently delete a specified thread and all its messages. This operation cannot be undone. Use threads.trash instead for reversible deletion." }, { "slug": "GOOGLESUPER_DISTANCE_MATRIX_API", "name": "Distance Matrix (Legacy)", "description": "DEPRECATED: Legacy API that calculates travel distance and time for a matrix of origins and destinations. This API only works with API keys (no OAuth2 support). Use the modern 'Compute Route Matrix' action instead, which supports OAuth2 authentication. Supports different modes of transportation and options like departure/arrival times. Capped at 100 elements per request (elements = origins × destinations count); split large sets into batches." }, { "slug": "GOOGLESUPER_DOWNLOAD_FILE", "name": "Download a file from Google Drive", "description": "Downloads a file from Google Drive by its ID. For Google Workspace documents (Docs, Sheets, Slides), optionally exports to a specified `mime_type`. For other file types, downloads in their native format regardless of mime_type. Examples: Export a Google Doc to plain text: {\"file_id\": \"1N2o5xQWmAbCdEfGhIJKlmnOPq\", \"mime_type\": \"text/plain\"} Download a Google Sheet as CSV: {\"file_id\": \"1ZyXwVuTsRqPoNmLkJiHgFeDcB\", \"mime_type\": \"text/csv\"}" }, { "slug": "GOOGLESUPER_DOWNLOAD_FILE2", "name": "Download file content (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_DOWNLOAD_FILE_OPERATION instead. Tool to download file content as a long-running operation. Use when you need to download files from Google Drive. Operations are valid for 24 hours from the time of creation." }, { "slug": "GOOGLESUPER_DOWNLOAD_FILE_OPERATION", "name": "Download file via operation", "description": "Tool to download file content using long-running operations. Use when you need to download Google Vids files or export Google Workspace documents as part of a long-running operation. Operations are valid for 24 hours from creation. Returns a response containing `downloaded_file_content.s3url` — a short-lived S3 URL; fetch the actual file bytes from that URL promptly after the call." }, { "slug": "GOOGLESUPER_DUPLICATE_CALENDAR", "name": "Create a calendar", "description": "Creates a new, empty Google Calendar with the specified title (summary). Newly created calendars default to UTC timezone; use GOOGLECALENDAR_PATCH_CALENDAR afterward to set the desired timeZone if needed." }, { "slug": "GOOGLESUPER_EDIT_FILE", "name": "Edit File", "description": "Updates an existing Google Drive file with binary content by overwriting its entire content with new text (max 10MB). IMPORTANT: This action only works with files that have binary content (text files, PDFs, images, etc.). It does NOT support editing Google Workspace native files (Google Docs, Sheets, Slides, etc.). For Google Workspace files, use the Google Docs API, Google Sheets API, or Google Slides API directly. Preserves the original file_id (unlike GOOGLEDRIVE_UPLOAD_FILE which creates a new ID)." }, { "slug": "GOOGLESUPER_EMPTY_TRASH", "name": "Empty Trash", "description": "Tool to permanently and irreversibly delete ALL trashed files in the user's Google Drive or a specified shared drive. Recovery is impossible after execution — no Drive tool can restore items once trash is emptied. Affects every item in trash across the entire account or shared drive, not just files from the current workflow. Always obtain explicit user confirmation and clarify that recovery is impossible before executing. Provide driveId to target a specific shared drive's trash; omit to empty the user's root trash." }, { "slug": "GOOGLESUPER_END_ACTIVE_CONFERENCE", "name": "End active conference", "description": "Ends an active conference in a Google Meet space. REQUIRES 'space_name' parameter (e.g., 'spaces/jQCFfuBOdN5z' or just 'jQCFfuBOdN5z'). Use when you need to terminate an ongoing conference in a specified space. This operation only succeeds if a conference is actively running in the space. You must always provide the space_name to identify which space's conference to end. Immediately drops all active participants — obtain explicit user confirmation before calling." }, { "slug": "GOOGLESUPER_EVENTS_GET", "name": "Get Event", "description": "Retrieves a SINGLE event by its unique event_id (REQUIRED). This action does NOT list or search events - it fetches ONE specific event when you already know its ID. If you want to list events within a time range, search for events, or filter by criteria like time_min/time_max, use GOOGLECALENDAR_EVENTS_LIST instead." }, { "slug": "GOOGLESUPER_EVENTS_IMPORT", "name": "Import Event", "description": "Tool to import an event as a private copy to a calendar. Use when you need to add an existing event to a calendar using its iCalUID. Only events with eventType='default' can be imported." }, { "slug": "GOOGLESUPER_EVENTS_INSTANCES", "name": "Get Event Instances", "description": "Returns instances of the specified recurring event. Use timeMin/timeMax to constrain the window; omitting bounds can return large result sets and is quota-heavy. On high-volume calls, 403 rateLimitExceeded or 429 too_many_requests may occur; apply exponential backoff (1s, 2s, 4s) before retrying." }, { "slug": "GOOGLESUPER_EVENTS_LIST", "name": "List Events", "description": "Returns events on the specified calendar. TIMEZONE WARNING: When using timeMin/timeMax with UTC timestamps (ending in 'Z'), the time window is interpreted in UTC regardless of the calendar's timezone. For example, querying '2026-01-19T00:00:00Z' to '2026-01-20T00:00:00Z' on a calendar in America/Los_Angeles (UTC-8) covers 2026-01-18 4pm to 2026-01-19 4pm local time, potentially missing events on the intended local date. To query for a specific local date, use timestamps with the appropriate timezone offset in timeMin/timeMax (e.g., '2026-01-19T00:00:00-08:00' for PST)." }, { "slug": "GOOGLESUPER_EVENTS_LIST_ALL_CALENDARS", "name": "List Events from All Calendars", "description": "Return a unified event list across all calendars in the user's calendar list for a given time range. Use when you need a single view of all events across multiple calendars. An inverted or incorrect time range silently returns empty results rather than an error. An empty `items` list means no events matched the filters—adjust `time_min`, `time_max`, or `q` before concluding no events exist." }, { "slug": "GOOGLESUPER_EVENTS_MOVE", "name": "Move Event", "description": "Moves an event to another calendar, i.e., changes an event's organizer." }, { "slug": "GOOGLESUPER_EVENTS_WATCH", "name": "Watch Events", "description": "Watch for changes to Events resources. Watch channels expire; persist the channel `id` per `calendarId` to re-establish watches after expiration or restarts." }, { "slug": "GOOGLESUPER_EXECUTE_SQL", "name": "Execute SQL on Spreadsheet", "description": "DEPRECATED: Use direct Google Sheets actions instead: - GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for reads - GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_UPDATE_VALUES_BATCH / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND for writes Execute SQL queries against Google Sheets tables. Supports SELECT, INSERT, UPDATE, DELETE operations and WITH clauses (CTEs) with familiar SQL syntax. Tables are automatically detected and mapped from the spreadsheet structure." }, { "slug": "GOOGLESUPER_EXPORT_DOCUMENT_AS_PDF", "name": "Export Google Doc as PDF", "description": "Tool to export a Google Docs file as PDF using the Google Drive API. Use when you need to generate a PDF version of a Google Docs document for download or distribution. Note: Google Drive enforces a 10MB limit on export content." }, { "slug": "GOOGLESUPER_EXPORT_GOOGLE_WORKSPACE_FILE", "name": "Export Google Workspace file", "description": "Exports a Google Workspace document to the requested MIME type and returns exported file content. Use when you need to export Google Docs, Sheets, Slides, Drawings, or Apps Script files to a specific format. Note: The exported content is limited to 10MB by Google Drive API." }, { "slug": "GOOGLESUPER_FETCH_EMAILS", "name": "Fetch emails", "description": "Fetches a list of email messages from a Gmail account, supporting filtering, pagination, and optional full content retrieval. Results are NOT sorted by recency; sort by internalDate client-side. The messages field may be absent or empty (valid no-results state); always null-check before accessing messageId or threadId. Null-check subject and header fields before string operations. For large result sets, prefer ids_only=true or metadata-only listing, then hydrate via GMAIL_FETCH_MESSAGE_BY_MESSAGE_ID." }, { "slug": "GOOGLESUPER_FETCH_MESSAGE_BY_MESSAGE_ID", "name": "Fetch message by message ID", "description": "Fetches a specific email message by its ID, provided the `message_id` exists and is accessible to the authenticated `user_id`. Spam/trash messages are excluded unless upstream list/search calls used `include_spam_trash=true`. Use `internalDate` (milliseconds since epoch) rather than header `Date` for recency checks." }, { "slug": "GOOGLESUPER_FETCH_MESSAGE_BY_THREAD_ID", "name": "Fetch Message by Thread ID", "description": "Retrieves messages from a Gmail thread using its `thread_id`, where the thread must be accessible by the specified `user_id`. Returns a `messages` array; `thread_id` is not echoed in the response. Message order is not guaranteed — sort by `internalDate` to find oldest/newest. Check `labelIds` per message to filter drafts. Concurrent bulk calls may trigger 403 `userRateLimitExceeded` or 429; cap concurrency ~10 and use exponential backoff." }, { "slug": "GOOGLESUPER_FIND_EVENT", "name": "Find event", "description": "Finds events in a specified Google Calendar using text query, time ranges (event start/end, last modification), and event types. Ensure `timeMin` is not chronologically after `timeMax` if both are provided. Results may span multiple pages; always follow `nextPageToken` until absent to avoid silently missing events. Validate the correct match from results by checking summary, start.dateTime, and organizer.email before using event_id for mutations. An empty `items` array means no events matched — widen filters rather than treating it as an error." }, { "slug": "GOOGLESUPER_FIND_FILE", "name": "Find file", "description": "The comprehensive Google Drive search tool that handles all file and folder discovery needs. Use this for any file finding task - from simple name searches to complex queries with date filters, MIME types, permissions, custom properties, folder scoping, and more. Searches across My Drive and shared drives with full metadata support. Examples: - Find PDFs: q=\"mimeType = 'application/pdf'\" - Find recent files: q=\"modifiedTime > '2024-01-01T00:00:00'\" - Search by name: q=\"name contains 'report'\" - Files in folder: folderId=\"abc123\" or q=\"'FOLDER_ID' in parents\"" }, { "slug": "GOOGLESUPER_FIND_FOLDER", "name": "Find folder", "description": "Tool to find a folder in Google Drive by its name and optionally a parent folder. Use when you need to locate a specific folder to perform further actions like creating files in it or listing its contents." }, { "slug": "GOOGLESUPER_FIND_FREE_SLOTS", "name": "Find free slots", "description": "Finds both free and busy time slots in Google Calendars for specified calendars within a defined time range. If `time_min` is not provided, defaults to the current timestamp in the specified timezone. If `time_max` is not provided, defaults to 23:59:59 of the day specified in `time_min` (if provided), otherwise defaults to 23:59:59 of the current day in the specified timezone. Returns busy intervals and calculates free slots by finding gaps between busy periods; `time_min` must precede `time_max` if both are provided. This action retrieves free and busy time slots for the specified calendars over a given time period. It analyzes the busy intervals from the calendars and provides calculated free slots based on the gaps in the busy periods. Returned free slots are unfiltered by duration; callers must filter intervals to those fully containing the required meeting length. No event metadata (titles, descriptions, links) is returned; use GOOGLECALENDAR_EVENTS_LIST for event details." }, { "slug": "GOOGLESUPER_FIND_REPLACE", "name": "Find and Replace in Spreadsheet", "description": "Tool to find and replace text in a Google Spreadsheet. Use when you need to fix formula errors, update values, or perform bulk text replacements across cells. Common use cases: - Fix #ERROR! cells by replacing with empty string or correct formula - Update old values with new ones across multiple cells - Fix formula references or patterns - Clean up data formatting issues" }, { "slug": "GOOGLESUPER_FIND_WORKSHEET_BY_TITLE", "name": "Find worksheet by title (Deprecated)", "description": "DEPRECATED: Use GetSpreadsheetInfo instead. Finds a worksheet by its exact, case-sensitive title within a Google Spreadsheet; returns a boolean indicating if found and the matched worksheet's metadata when found, or None when not found." }, { "slug": "GOOGLESUPER_FORMAT_CELL", "name": "Format cell", "description": "Applies text and background cell formatting to a specified range in a Google Sheets worksheet." }, { "slug": "GOOGLESUPER_FORWARD_MESSAGE", "name": "Forward email message", "description": "Forward an existing Gmail message to specified recipients, preserving original body and attachments. Verify recipients and content before forwarding to avoid unintended exposure. Bulk forwarding may trigger 429/5xx rate limits; keep concurrency to 5–10 and apply backoff. Messages near Gmail's size limits may fail; reconstruct a smaller draft if needed." }, { "slug": "GOOGLESUPER_FREE_BUSY_QUERY", "name": "Query Free/Busy Information (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_FIND_FREE_SLOTS instead (though this tool provides wider secondary/shared calendar coverage). Returns opaque busy intervals only—no event titles or details; use GOOGLECALENDAR_EVENTS_LIST when event details are needed." }, { "slug": "GOOGLESUPER_GENERATE_IDS", "name": "Generate File IDs", "description": "Generates a set of file IDs which can be provided in create or copy requests. Use when you need to pre-allocate IDs for new files or copies." }, { "slug": "GOOGLESUPER_GEOCODE_ADDRESS", "name": "Geocode Address", "description": "DEPRECATED: Legacy API to convert street addresses into geographic coordinates (latitude and longitude). This API works best with API key authentication. For OAuth connections without an API key, you may need to provide the 'key' parameter or use the newer 'Text Search' action instead. Use when you need to geocode an address or location to get its precise latitude/longitude coordinates." }, { "slug": "GOOGLESUPER_GEOCODE_ADDRESS_WITH_QUERY", "name": "Geocode Address With Query", "description": "Tool to map addresses to geographic coordinates with query parameter. Use when you need to convert a textual address into latitude/longitude coordinates using the modern v4beta API. Results may match multiple places — always verify `formattedAddress`, `region`, and `addressComponents` in the response before using returned coordinates." }, { "slug": "GOOGLESUPER_GEOCODE_DESTINATIONS", "name": "Geocode Destinations", "description": "Tool to perform destination lookup and return detailed destination information including primary place, containing places, sub-destinations, landmarks, entrances, and navigation points. Use when you need comprehensive destination data for an address, place ID, or geographic coordinates." }, { "slug": "GOOGLESUPER_GEOCODE_LOCATION", "name": "Reverse Geocode Location", "description": "Tool to convert geographic coordinates (latitude and longitude) to human-readable addresses using reverse geocoding. Use when you need to find the address or place name for a given set of coordinates. A single coordinate pair may return multiple results; verify formattedAddress, region, and addressComponents before committing to a result." }, { "slug": "GOOGLESUPER_GEOCODE_PLACE", "name": "Geocode Place by ID", "description": "Tool to perform geocode lookup using a place identifier to retrieve address and coordinates. Use when you need to get detailed geographic information for a specific Google Place ID." }, { "slug": "GOOGLESUPER_GEOCODING_API", "name": "Geocoding API", "description": "Convert addresses into geographic coordinates (latitude and longitude) and vice versa (reverse geocoding), or get an address for a Place ID. Uses the Geocoding API v4 (v4beta) which supports OAuth2 authentication. Exactly one of `address`, `latlng`, or `place_id` must be provided per request; omitting all three or mixing incompatible combinations yields no useful results." }, { "slug": "GOOGLESUPER_GEOLOCATE", "name": "Geolocate Device", "description": "Tool to determine location based on cell towers and WiFi access points. Use when you need to find the geographic location of a device using network infrastructure data." }, { "slug": "GOOGLESUPER_GET2D_TILE", "name": "Get 2D Map Tile", "description": "Tool to retrieve a 2D map tile image at specified coordinates for building custom map visualizations. Use when you need to download individual map tile images for roadmap, satellite, or terrain views. Requires a valid session token from the createSession endpoint." }, { "slug": "GOOGLESUPER_GET3D_TILES_ROOT", "name": "Get 3D Tiles Root", "description": "Tool to retrieve the 3D Tiles tileset root configuration for photorealistic 3D map rendering. Use when you need to initialize a 3D renderer with Google's photorealistic tiles following the OGC 3D Tiles specification. The Map Tiles API is billable per request; cache the root response client-side and avoid repeated calls." }, { "slug": "GOOGLESUPER_GET_ABOUT", "name": "Get about", "description": "Tool to retrieve information about the user, the user's Drive, and system capabilities. Use when you need to check storage quotas, user details, or supported import/export formats. Note: storageQuota reflects My Drive (personal) storage only — it does not cover shared drives; use GOOGLEDRIVE_LIST_SHARED_DRIVES and GOOGLEDRIVE_GET_DRIVE for shared drive quotas. A successful response confirms base Drive read access only; write access and shared drive access must be verified separately." }, { "slug": "GOOGLESUPER_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve a single Account by its resource name. Use when you need detailed account info after confirming the account resource name (e.g., accounts/100)." }, { "slug": "GOOGLESUPER_GET_ALBUM", "name": "Get Album", "description": "Returns the album based on the specified albumId." }, { "slug": "GOOGLESUPER_GET_APP", "name": "Get App", "description": "Tool to get information about a specific Drive app by ID. Use 'self' as the app ID to get information about the calling app." }, { "slug": "GOOGLESUPER_GET_ATTACHMENT", "name": "Get Gmail attachment", "description": "Retrieves a specific attachment by ID from a message in a user's Gmail mailbox, requiring valid message and attachment IDs. Returns the downloaded file with its MIME type and filename. Attachments exceeding ~25 MB may be exposed as Google Drive links — use GOOGLEDRIVE_DOWNLOAD_FILE when a Drive file_id is present instead." }, { "slug": "GOOGLESUPER_GET_ATTRIBUTION_SETTINGS", "name": "Get Attribution Settings", "description": "Tool to retrieve attribution configuration for a Google Analytics property. Use when you need to check attribution models, lookback windows, and conversion export settings." }, { "slug": "GOOGLESUPER_GET_AUDIENCE", "name": "Get Audience", "description": "Tool to retrieve a single Audience configuration from a Google Analytics property. Use when you need detailed audience information including membership criteria and filter clauses." }, { "slug": "GOOGLESUPER_GET_AUDIENCE_EXPORT", "name": "Get Audience Export", "description": "Tool to get configuration metadata about a specific audience export. Use when you need to understand an audience export after it has been created or check its status." }, { "slug": "GOOGLESUPER_GET_AUDIENCE_LIST", "name": "Get Audience List", "description": "Tool to get configuration metadata about a specific audience list. Use after confirming the audience list resource name." }, { "slug": "GOOGLESUPER_GET_AUTO_FORWARDING", "name": "Get Auto-Forwarding Settings", "description": "Tool to get the auto-forwarding setting for the specified account. Use when you need to retrieve the current auto-forwarding configuration including enabled status, forwarding email address, and message disposition." }, { "slug": "GOOGLESUPER_GET_BATCH_VALUES", "name": "Batch Get Spreadsheet Values (Deprecated)", "description": "DEPRECATED: Use GOOGLESHEETS_BATCH_GET instead. Tool to return one or more ranges of values from a spreadsheet. Use when you need to retrieve data from multiple ranges in a single request." }, { "slug": "GOOGLESUPER_GET_CALENDAR", "name": "Get Google Calendar", "description": "Retrieves a specific Google Calendar, identified by `calendar_id`, to which the authenticated user has access. Response includes `timeZone` (IANA format, e.g., 'America/Los_Angeles') — use it directly when constructing `timeMin`/`timeMax` in other tools to avoid DST errors. An empty `defaultReminders` list is valid (no defaults configured). Insufficient `accessRole` may omit fields like `defaultReminders` and `colorId`." }, { "slug": "GOOGLESUPER_GET_CALENDAR_PROFILE", "name": "Get Calendar Profile (Deprecated)", "description": "DEPRECATED: Use CalendarListGet instead. Tool to retrieve the authenticated user's primary calendar profile. Use when you need to get information about the user's main calendar, including timezone, settings, and preferences." }, { "slug": "GOOGLESUPER_GET_CAMPAIGN_BY_ID", "name": "Get Campaign By Id", "description": "GetCampaignById Tool returns details of a campaign in Google Ads. Requires an active Google Ads OAuth connection with the correct customer_id configured; missing or mismatched customer_id will cause empty results." }, { "slug": "GOOGLESUPER_GET_CAMPAIGN_BY_NAME", "name": "Get campaign by name", "description": "Queries Google Ads via SQL to retrieve a campaign by its exact name. Requires an active Google Ads connection with valid customer_id and appropriate OAuth scopes." }, { "slug": "GOOGLESUPER_GET_CHANGE", "name": "Get Change (v2 - Deprecated)", "description": "Tool to get a specific change by ID from Google Drive v2 API. Deprecated: Use changes.getStartPageToken and changes.list to retrieve recent changes instead." }, { "slug": "GOOGLESUPER_GET_CHANGES_START_PAGE_TOKEN", "name": "Get Changes Start Page Token", "description": "Tool to get the starting pageToken for listing future changes in Google Drive. Returns only a token — pass it to GOOGLEDRIVE_LIST_CHANGES to retrieve actual changes. Persist this token; losing it requires a full rescan. The token is forward-looking: GOOGLEDRIVE_LIST_CHANGES may return no results if no changes have occurred since issuance. For simple recent-file lookups, prefer GOOGLEDRIVE_FIND_FILE; use this tool only for incremental change-feed workflows." }, { "slug": "GOOGLESUPER_GET_CHILD", "name": "Get Child Reference (v2)", "description": "Tool to get a specific child reference for a folder using Drive API v2. Use when you need to verify a specific file exists as a child of a folder." }, { "slug": "GOOGLESUPER_GET_COMMENT", "name": "Get Comment", "description": "Tool to get a comment by ID. Use when you need to retrieve a specific comment from a Google Drive file and have both the file ID and comment ID." }, { "slug": "GOOGLESUPER_GET_CONDITIONAL_FORMAT_RULES", "name": "Get conditional format rules", "description": "List conditional formatting rules for each sheet (or a selected sheet) in a normalized, easy-to-edit form. Use when you need to view, audit, or prepare to modify conditional format rules." }, { "slug": "GOOGLESUPER_GET_CONFERENCE_RECORD_BY_NAME", "name": "Get conference record by name", "description": "Tool to get a specific conference record by its resource name. Use when you have the conference record ID and need to retrieve detailed information about a single meeting instance." }, { "slug": "GOOGLESUPER_GET_CONTACTS", "name": "Get contacts", "description": "Fetches contacts (connections) for the authenticated Google account, allowing selection of specific data fields and pagination. Only covers saved contacts and 'Other Contacts'; email-header-only senders are out of scope. Contact records may have sparse data — handle missing fields gracefully. People API shares a per-user QPS quota; HTTP 429 requires exponential backoff (1s, 2s, 4s)." }, { "slug": "GOOGLESUPER_GET_CURRENT_DATE_TIME", "name": "Get current date and time", "description": "Gets the current date and time, allowing for a specific timezone offset. Call this tool first before computing relative dates (e.g., 'tomorrow', 'next Monday') to avoid off-by-one-day errors across timezones." }, { "slug": "GOOGLESUPER_GET_CUSTOM_DIMENSION", "name": "Get Custom Dimension", "description": "Tool to retrieve a single CustomDimension by its resource name. Use when you need detailed information about a specific custom dimension including its display name, scope, and parameter name." }, { "slug": "GOOGLESUPER_GET_CUSTOMER_LISTS", "name": "Get customer lists", "description": "GetCustomerLists Tool lists all customer lists (audience/remarketing lists) in Google Ads. These are user segments for targeting, not Google Ads accounts — list IDs are distinct from account IDs. When multiple lists share similar names, review all returned results before selecting one for downstream operations." }, { "slug": "GOOGLESUPER_GET_DATA_RETENTION_SETTINGS", "name": "Get Data Retention Settings", "description": "Tool to retrieve data retention configuration for a Google Analytics property. Use when you need to check event-level and user-level data retention durations and reset settings." }, { "slug": "GOOGLESUPER_GET_DATA_SHARING_SETTINGS", "name": "Get Data Sharing Settings", "description": "Tool to retrieve data sharing configuration for a Google Analytics account. Use when you need to check which data sharing settings are enabled for an account, including sharing with Google support, sales teams, products, and benchmarking." }, { "slug": "GOOGLESUPER_GET_DATA_VALIDATION_RULES", "name": "Get Data Validation Rules", "description": "Tool to extract data validation rules from a Google Sheets spreadsheet. Use when you need to understand dropdown lists, allowed values, custom formulas, or other validation constraints for cells." }, { "slug": "GOOGLESUPER_GET_DIRECTION", "name": "Get Directions", "description": "Fetches detailed directions between an origin and a destination, supporting intermediate waypoints and various travel modes. Automatically uses the modern Routes API with OAuth2 when available, falling back to legacy API with API key if provided." }, { "slug": "GOOGLESUPER_GET_DOCUMENT_BY_ID", "name": "Get document by id", "description": "Retrieves an existing Google Document by its ID; will error if the document is not found." }, { "slug": "GOOGLESUPER_GET_DOCUMENT_END_INDEX", "name": "Get Document End Index", "description": "Retrieves the end index and paragraph structure of a Google Document or specific segment. Use this action when you need to determine valid insertion points for text operations, especially before using insertText requests. The end index represents the maximum boundary of the document body or specified segment (header, footer, footnote, or tab)." }, { "slug": "GOOGLESUPER_GET_DOCUMENT_PLAINTEXT", "name": "Get document plain text", "description": "Retrieve a Google Doc by ID and return a best-effort plain-text rendering. Converts document structure into plain text including paragraphs, lists, and tables without requiring clients to traverse complex Docs API JSON." }, { "slug": "GOOGLESUPER_GET_DRAFT", "name": "Get Draft", "description": "Retrieves a single Gmail draft by its ID. Use this to fetch and inspect draft content before sending via GMAIL_SEND_DRAFT. The format parameter controls the level of detail returned." }, { "slug": "GOOGLESUPER_GET_DRIVE", "name": "Get Shared Drive", "description": "Tool to get a shared drive by ID. Use when you need to retrieve information about a specific shared drive. To discover drive_ids, use GOOGLEDRIVE_LIST_SHARED_DRIVES first; GOOGLEDRIVE_GET_ABOUT reflects overall user storage, not individual shared drive details. Permission changes may have a brief propagation delay before appearing in results." }, { "slug": "GOOGLESUPER_GET_FILE_METADATA", "name": "Get File Metadata", "description": "Tool to get a file's metadata by ID. Use to verify `mimeType`, `parents`, and `trashed` status before destructive operations (delete/move/export), or to confirm `mimeType='application/vnd.google-apps.document'` before calling GOOGLEDOCS_* tools (non-native files require GOOGLEDRIVE_DOWNLOAD_FILE). Only returns metadata visible to the connected account; public access requires GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE. High-frequency calls risk `403 rateLimitExceeded`; apply exponential backoff." }, { "slug": "GOOGLESUPER_GET_FILE_PROPERTY", "name": "Get Property (v2)", "description": "Tool to get a property by its key using Google Drive API v2. Use when you need to retrieve a specific custom property attached to a file." }, { "slug": "GOOGLESUPER_GET_FILE_V2", "name": "Get File (v2 API) (Deprecated)", "description": "DEPRECATED: Use GetFileMetadata instead. Tool to get a file's metadata or content by ID from Google Drive API v2. Use when you need file metadata with alt=json, or file content with alt=media." }, { "slug": "GOOGLESUPER_GET_FILTER", "name": "Get Gmail filter", "description": "Tool to retrieve a specific Gmail filter by its ID. Use when you need to inspect the criteria and actions of an existing filter." }, { "slug": "GOOGLESUPER_GET_GOOGLE_SIGNALS_SETTINGS", "name": "Get Google Signals Settings", "description": "Tool to retrieve Google Signals configuration settings for a GA4 property. Use when you need to check whether Google Signals is enabled and the consent status for a property." }, { "slug": "GOOGLESUPER_GET_KEY_EVENT", "name": "Get Key Event", "description": "Tool to retrieve a Key Event. Use after confirming the key event resource name. Read-only; create, update, or delete operations require the Google Analytics UI." }, { "slug": "GOOGLESUPER_GET_LABEL", "name": "Get label details", "description": "Gets details for a specified Gmail label. Use this to retrieve label information including name, type, visibility settings, message/thread counts, and color." }, { "slug": "GOOGLESUPER_GET_LANGUAGE_SETTINGS", "name": "Get Language Settings", "description": "Tool to retrieve the language settings for a Gmail user. Use when you need to determine the display language preference for the authenticated user or a specific Gmail account." }, { "slug": "GOOGLESUPER_GET_MEDIA_ITEM_DOWNLOAD", "name": "Download Photos Media Item", "description": "Downloads a media item from Google Photos and returns it as a file." }, { "slug": "GOOGLESUPER_GET_MEET", "name": "Get Meet details", "description": "Retrieve details of a Google Meet space using its unique identifier. Newly created spaces may return incomplete data; retry after 1–3 seconds if needed." }, { "slug": "GOOGLESUPER_GET_METADATA", "name": "Get Metadata", "description": "Tool to get metadata for dimensions, metrics, and comparisons for a GA4 property. Use to discover available fields before building a report — always derive dimension/metric apiNames from this output rather than hardcoding from GA4 UI labels, which differ. Available fields vary per property; skip validation and downstream report tools like GOOGLE_ANALYTICS_RUN_REPORT return 400 INVALID_ARGUMENT on incompatible or invalid field combinations. Response can contain hundreds of fields; filter to relevant subset before passing to downstream logic." }, { "slug": "GOOGLESUPER_GET_PAGE_THUMBNAIL2", "name": "Get Page Thumbnail v2", "description": "Tool to generate a thumbnail of the latest version of a specified page. Use when you need a preview image URL for a slide page. This request counts as an expensive read request for quota purposes." }, { "slug": "GOOGLESUPER_GET_PARENT", "name": "Get Parent Reference (v2)", "description": "Tool to get a specific parent reference for a file using Drive API v2. Use when you need to retrieve information about a specific parent folder of a file." }, { "slug": "GOOGLESUPER_GET_PARTICIPANT_SESSION", "name": "Get Participant Details", "description": "Retrieves detailed information about a specific participant session from a Google Meet conference record. Returns session details including start time and end time for a single join/leave session. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. PREREQUISITE: You must first obtain the participant session resource name. Use LIST_PARTICIPANT_SESSIONS with a conference record ID and participant ID to get available sessions and their resource names. The 'name' parameter is REQUIRED and must be in the format: 'conferenceRecords/{conference_record}/participants/{participant}/participantSessions/{participant_session}'" }, { "slug": "GOOGLESUPER_GET_PEOPLE", "name": "Get People", "description": "Retrieves either a specific person's details (using `resource_name`) or lists 'Other Contacts' (if `other_contacts` is true), with `person_fields` specifying the data to return. Scope is limited to the authenticated user's own contacts and 'Other Contacts' history only." }, { "slug": "GOOGLESUPER_GET_PERMISSION", "name": "Get Permission", "description": "Gets a permission by ID. Use this tool to retrieve a specific permission for a file or shared drive. Newly created or updated permissions on shared drives may have a brief propagation delay before appearing." }, { "slug": "GOOGLESUPER_GET_PERMISSION_ID_FOR_EMAIL", "name": "Get Permission ID for Email", "description": "Tool to get the permission ID for an email address using the Drive API v2. Use when you need to convert an email address to its corresponding permission ID." }, { "slug": "GOOGLESUPER_GET_PLACE_DETAILS", "name": "Get Place Details", "description": "Retrieves comprehensive details for a place using its resource name (places/{place_id} format). Use when you need detailed information about a specific place." }, { "slug": "GOOGLESUPER_GET_PROFILE", "name": "Get Profile", "description": "Retrieves Gmail profile information (email address, aggregate messagesTotal/threadsTotal, historyId) for a user. messagesTotal counts individual emails; threadsTotal counts conversations; neither is per-label — use GMAIL_FETCH_EMAILS with label filters for label-specific counts. The returned historyId seeds incremental sync via GMAIL_LIST_HISTORY; if historyIdTooOld is returned, rescan with GMAIL_FETCH_EMAILS before resuming. Response may be wrapped under a top-level data field; unwrap before reading fields. A successful call confirms mailbox connectivity but not full mailbox access if granted scopes are narrow. Use the returned email address to dynamically identify the authenticated account rather than hard-coding it." }, { "slug": "GOOGLESUPER_GET_PROPERTY", "name": "Get Property", "description": "Tool to retrieve a single GA4 Property by its resource name. Use when you need detailed property configuration including display name, time zone, currency, and other settings." }, { "slug": "GOOGLESUPER_GET_PROPERTY_QUOTAS_SNAPSHOT", "name": "Get Property Quotas Snapshot", "description": "Tool to retrieve all property quotas organized by category (corePropertyQuota, funnelPropertyQuota, realtimePropertyQuota) for a given GA4 property. Use when you need to check current quota usage. Snapshot data can lag real consumption by several minutes; treat reported values as approximate and avoid scheduling high-volume jobs at full apparent capacity." }, { "slug": "GOOGLESUPER_GET_RECORDINGS_BY_CONFERENCE_RECORD_ID", "name": "Get recordings by conference record ID", "description": "Retrieves recordings from Google Meet for a given conference record ID. Only returns recordings if recording was enabled and permitted by the organizer's domain policies; a valid conference_record_id does not guarantee recordings exist. After a meeting ends, recordings may take several minutes to process — an empty result may be temporary, not permanent." }, { "slug": "GOOGLESUPER_GET_RECURRING_AUDIENCE_LIST", "name": "Get Recurring Audience List", "description": "Tool to get configuration metadata about a specific recurring audience list. Use when you need to understand a recurring audience list's state after it has been created or to get the resource name of the most recent audience list instance." }, { "slug": "GOOGLESUPER_GET_REPLY", "name": "Get Reply", "description": "Tool to get a specific reply to a comment on a file. Use when you need to retrieve the details of a particular reply." }, { "slug": "GOOGLESUPER_GET_REPORT_TASK", "name": "Get Report Task", "description": "Tool to get report metadata about a specific report task. Use after creating a report task to check its processing state or inspect its report definition." }, { "slug": "GOOGLESUPER_GET_REVISION", "name": "Get Revision", "description": "Tool to get a specific revision's metadata (name, modifiedTime, keepForever, etc.) by revision ID. Returns metadata only — not file content. Use a separate download tool to retrieve file content or restore a revision." }, { "slug": "GOOGLESUPER_GET_ROUTE", "name": "Get Route", "description": "Calculates one or more routes between two specified locations. Uses various travel modes and preferences; addresses must be resolvable by Google Maps. Response `duration` is a string with 's' suffix (e.g., `\"4557s\"`); parse before displaying." }, { "slug": "GOOGLESUPER_GET_SHEET_NAMES", "name": "Get sheet names", "description": "Lists all worksheet names from a specified Google Spreadsheet (which must exist), useful for discovering sheets before further operations." }, { "slug": "GOOGLESUPER_GET_SPREADSHEET_BY_DATA_FILTER", "name": "Get Spreadsheet by Data Filter", "description": "Returns the spreadsheet at the given ID, filtered by the specified data filters. Use this tool when you need to retrieve specific subsets of data from a Google Sheet based on criteria like A1 notation, developer metadata, or grid ranges. Important: This action is designed for filtered data retrieval. While it accepts empty filters and returns full metadata in that case, GOOGLESHEETS_GET_SPREADSHEET_INFO is the recommended action for unfiltered spreadsheet retrieval." }, { "slug": "GOOGLESUPER_GET_SPREADSHEET_INFO", "name": "Get spreadsheet info", "description": "Retrieves metadata for a Google Spreadsheet using its ID. By default, returns essential information (ID, title, sheet properties) to avoid payload size issues. Use the fields parameter for comprehensive metadata or specific fields." }, { "slug": "GOOGLESUPER_GET_TABLE_SCHEMA", "name": "Get Table Schema", "description": "DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES and GOOGLESHEETS_GET_SPREADSHEET_INFO for sheet structure metadata, and GOOGLESHEETS_VALUES_GET for direct range inspection. This action is used to get the schema of a table in a Google Spreadsheet, call this action to get the schema of a table in a spreadsheet BEFORE YOU QUERY THE TABLE. Analyze table structure and infer column names, types, and constraints. Uses statistical analysis of sample data to determine the most likely data type for each column. Call this action after calling the LIST_TABLES action to get the schema of a table in a spreadsheet." }, { "slug": "GOOGLESUPER_GET_TASK", "name": "Get Task", "description": "Retrieve a specific Google Task. REQUIRES both `tasklist_id` and `task_id`. Tasks cannot be retrieved by ID alone - you must always specify which task list contains the task. Use this to refresh task details before display or edits rather than relying on potentially stale results from GOOGLETASKS_LIST_TASKS." }, { "slug": "GOOGLESUPER_GET_TASK_LIST", "name": "Get task list", "description": "Retrieves a specific task list from the user's Google Tasks if the `tasklist_id` exists for the authenticated user." }, { "slug": "GOOGLESUPER_GET_TEAM_DRIVE", "name": "Get Team Drive (Deprecated)", "description": "Tool to get metadata about a Team Drive by ID. Deprecated: Use the drives.get endpoint instead." }, { "slug": "GOOGLESUPER_GET_TIME_ZONE", "name": "Get Time Zone", "description": "Retrieves time zone information for a specific geographic location and timestamp. Use this action when you need to determine the time zone ID, UTC offset, daylight savings offset, or localized time zone name for any point on Earth. The API considers the provided timestamp to accurately determine whether daylight savings is in effect at that moment." }, { "slug": "GOOGLESUPER_GET_TRANSCRIPT", "name": "Get Transcript", "description": "Retrieves a specific transcript by its resource name. Returns transcript details including state (STARTED, ENDED, FILE_GENERATED), start/end times, and Google Docs destination. PREREQUISITE: Obtain the transcript resource name first by using GET_TRANSCRIPTS_BY_CONFERENCE_RECORD_ID or construct it from known IDs." }, { "slug": "GOOGLESUPER_GET_TRANSCRIPT_ENTRY", "name": "Get Transcript Entry", "description": "Fetches a single transcript entry by resource name for targeted inspection or incremental processing. Use when you have a specific transcript entry resource name and need to retrieve its details (text, speaker, timestamps, language). PREREQUISITE: Obtain the transcript entry resource name first by using LIST_TRANSCRIPT_ENTRIES or construct it from known IDs. The 'name' parameter is REQUIRED and must follow the format: 'conferenceRecords/{conferenceRecordId}/transcripts/{transcriptId}/entries/{entryId}'" }, { "slug": "GOOGLESUPER_GET_TRANSCRIPTS_BY_CONFERENCE_RECORD_ID", "name": "Get transcripts by conference record ID", "description": "Retrieves all transcripts for a specific Google Meet conference using its conference_record_id. Transcripts require processing time after a meeting ends — empty results may be transient; retry after a delay before concluding no transcripts exist. Returns results only if transcription was enabled during the meeting and permitted by the organizer's domain policies; an empty list may also indicate transcription was never generated." }, { "slug": "GOOGLESUPER_GET_VACATION_SETTINGS", "name": "Get Vacation Settings", "description": "Tool to retrieve vacation responder settings for a Gmail user. Use when you need to check if out-of-office auto-replies are configured and view their content." }, { "slug": "GOOGLESUPER_GOOGLE_DRIVE_DELETE_FOLDER_OR_FILE_ACTION", "name": "Delete folder or file", "description": "Tool to delete a file or folder in Google Drive. Use when you need to permanently remove a specific file or folder using its ID. Note: This action is irreversible. Deleting a folder permanently removes all nested files and subfolders." }, { "slug": "GOOGLESUPER_HIDE_DRIVE", "name": "Hide Shared Drive", "description": "Tool to hide a shared drive from the default view. Use when you want to remove a shared drive from the user's main Google Drive interface without deleting it." }, { "slug": "GOOGLESUPER_IMPORT_MESSAGE", "name": "Import message", "description": "Tool to import a message into the user's mailbox with standard email delivery scanning and classification. Use when you need to add an existing email to a Gmail account without sending it through SMTP. This method doesn't perform SPF checks, so it might not work for some spam messages." }, { "slug": "GOOGLESUPER_INSERT_CHILD", "name": "Insert Child Into Folder (v2)", "description": "Tool to insert a file into a folder using Drive API v2. Use when you need to add an existing file to a folder." }, { "slug": "GOOGLESUPER_INSERT_DIMENSION", "name": "Insert Dimension in Google Sheet", "description": "Tool to insert new rows or columns into a sheet at a specified location. Use when you need to add empty rows or columns within an existing Google Sheet." }, { "slug": "GOOGLESUPER_INSERT_IMAGE_IN_TABLE_CELL", "name": "Insert Image in Table Cell", "description": "Inserts an image from a given URI into a specific table cell in a Google Document. Use this action when you need to add an image to a particular cell within a table. The action identifies the target cell by table start index, row index, and column index, then inserts the image at the specified position within that cell's content." }, { "slug": "GOOGLESUPER_INSERT_INLINE_IMAGE", "name": "Insert Inline Image", "description": "Tool to insert an image from a given URI at a specified location in a Google Document as an inline image. Use when you need to add an image to a document programmatically." }, { "slug": "GOOGLESUPER_INSERT_MESSAGE", "name": "Insert message into mailbox", "description": "Tool to insert a message into the user's mailbox similar to IMAP APPEND. Use when you need to add an email directly to a mailbox bypassing most scanning and classification. This does not send a message." }, { "slug": "GOOGLESUPER_INSERT_PAGE_BREAK", "name": "Insert Page Break", "description": "Tool to insert a page break into a Google Document. Use when you need to start new content on a fresh page, such as at the end of a chapter or section." }, { "slug": "GOOGLESUPER_INSERT_TABLE_ACTION", "name": "Insert Table in Google Doc", "description": "Tool to insert a table into a Google Document. Use when you need to add a new table at a specific location or at the end of a segment (like document body, header, or footer) in a document." }, { "slug": "GOOGLESUPER_INSERT_TABLE_COLUMN", "name": "Insert Table Column", "description": "Tool to insert a new column into a table in a Google Document. Use this tool when you need to add a column to an existing table at a specific location." }, { "slug": "GOOGLESUPER_INSERT_TABLE_ROW", "name": "Insert Table Row", "description": "Inserts a new row into a table in a Google Document at a specified location. Use this action when you need to add a row to an existing table, either above or below a reference cell location." }, { "slug": "GOOGLESUPER_INSERT_TASK", "name": "Insert Task", "description": "Creates a new task in a given `tasklist_id`, optionally as a subtask of an existing `task_parent` or positioned after an existing `task_previous` sibling, where both `task_parent` and `task_previous` must belong to the same `tasklist_id` if specified. IMPORTANT: Date fields (due, completed) accept various formats like '28 Sep 2025', '11:59 PM, 22 Sep 2025', or ISO format '2025-09-21T15:30:00Z' and will automatically convert them to RFC3339 format required by the API. Not idempotent — repeated calls with identical parameters create duplicate tasks; track returned task IDs to avoid duplication. High-volume inserts may trigger 403 rateLimitExceeded or 429; apply exponential backoff." }, { "slug": "GOOGLESUPER_INSERT_TEXT_ACTION", "name": "Insert Text into Document", "description": "Tool to insert a string of text at a specified location within a Google Document. Use when you need to add new text content to an existing document. IMPORTANT: Two ways to specify insertion location: 1. Use 'insertion_index' to insert at a specific position (index 1 is safe for document start) 2. Use 'append_to_end=true' to append text to the end of the document (recommended for appending) CRITICAL CONSTRAINT: When using insertion_index, the index MUST fall within the bounds of an EXISTING paragraph. You cannot insert text at arbitrary indices or at structural boundaries (e.g., table starts). The index must also be strictly less than the document's end index. To safely append text without index concerns, use append_to_end=true." }, { "slug": "GOOGLESUPER_INSERT_TEXT_IN_TABLE_CELL", "name": "Insert Text in Table Cell", "description": "Inserts text into a specific cell of a table in a Google Document by row and column position. Use this action when you need to add or update text content in a table cell at a known row and column index. To use this action, you must first retrieve the document structure using GOOGLEDOCS_GET_DOCUMENT_BY_ID to find the table's start index. Then specify the target cell by its zero-based row and column indices (e.g., row_index=0, column_index=0 for the top-left cell)." }, { "slug": "GOOGLESUPER_LIST_ACCESSIBLE_CUSTOMERS", "name": "List Accessible Customers", "description": "List Google Ads customer resource names directly accessible to the authenticated user. Use this to discover available customer IDs or populate an account picker. For MCC child account names, status, and direct hierarchy, use List Sub Accounts." }, { "slug": "GOOGLESUPER_LIST_ACCESS_PROPOSALS", "name": "List Access Proposals", "description": "Tool to list pending access proposals on a file. Use when you need to retrieve access proposals for a specific file. Note: Only approvers can list access proposals; non-approvers will receive a 403 error." }, { "slug": "GOOGLESUPER_LIST_ACCOUNTS", "name": "List Accounts (Deprecated)", "description": "DEPRECATED: Use ListAccountsV1Beta instead. Tool to list all Accounts accessible by the caller. Use when you need to enumerate all Google Analytics accounts your credentials can access. Empty or partial results may indicate a permissions issue rather than no resources existing. Returned resource names follow the format accounts/{account_id}; use these in subsequent calls." }, { "slug": "GOOGLESUPER_LIST_ACCOUNT_SUMMARIES", "name": "List Account Summaries", "description": "Tool to retrieve summaries of all Google Analytics accounts accessible by the caller. Use when you need a high-level overview of accounts and their properties without fetching full account details." }, { "slug": "GOOGLESUPER_LIST_ACCOUNTS_V1_BETA", "name": "List Accounts (v1beta)", "description": "Tool to list all Google Analytics accounts accessible by the caller using v1beta API. Use when you need to enumerate accounts. Note that these accounts might not have GA properties yet. Soft-deleted accounts are excluded by default." }, { "slug": "GOOGLESUPER_LIST_ADSENSE_LINKS", "name": "List AdSense Links", "description": "Tool to list all AdSenseLinks on a property. Use when you need to fetch all AdSense links for a given Google Analytics property." }, { "slug": "GOOGLESUPER_LIST_ALBUMS", "name": "List Albums", "description": "Lists all albums shown to a user in the Albums tab of Google Photos." }, { "slug": "GOOGLESUPER_LIST_ALL_TASKS", "name": "List All Tasks Across All Lists", "description": "Tool to list all tasks across all of the user's task lists with optional filters. Use when the agent needs to see all tasks without knowing which list to query first. Each returned task is annotated with its tasklist_id and tasklist_title for context." }, { "slug": "GOOGLESUPER_LIST_APPROVALS", "name": "List Approvals", "description": "Tool to list approvals on a file for workflow-based access control. Use when you need to retrieve all approvals associated with a specific file in Google Drive." }, { "slug": "GOOGLESUPER_LIST_AUDIENCE_EXPORTS", "name": "List Audience Exports", "description": "Tool to list all audience exports for a property. Use when you need to find and reuse existing audience exports rather than creating new ones." }, { "slug": "GOOGLESUPER_LIST_AUDIENCE_LISTS", "name": "List Audience Lists", "description": "Tool to list all audience lists for a specified property to help find and reuse existing lists. Use when you need to retrieve a property's configured audience lists after confirming the property ID." }, { "slug": "GOOGLESUPER_LIST_AUDIENCES", "name": "List Audiences", "description": "Tool to list Audiences on a property. Use when you need to retrieve audience configurations for a Google Analytics property. Audiences created before 2020 may not be supported." }, { "slug": "GOOGLESUPER_LIST_BIGQUERY_LINKS", "name": "List BigQuery Links", "description": "Tool to list BigQuery Links on a property. Use when you need to retrieve BigQuery link resources associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLESUPER_LIST_BUILDINGS", "name": "List Buildings", "description": "Lists all buildings for a Google Workspace customer account with full details including addresses, coordinates, and floor names. Use this action when you need to retrieve the complete list of physical building locations configured in Google Workspace Calendar resources. This is useful for workspace administrators managing conference room and resource scheduling across multiple office buildings. Requires Google Workspace administrator privileges with Directory API access." }, { "slug": "GOOGLESUPER_LIST_CALCULATED_METRICS", "name": "List Calculated Metrics", "description": "List Calculated Metrics" }, { "slug": "GOOGLESUPER_LIST_CALENDAR_RESOURCES", "name": "List Calendar Resources", "description": "Retrieves calendar resources (such as conference rooms) from a Google Workspace domain using the Admin SDK Directory API. Use this action when you need to list available meeting rooms, conference spaces, or other bookable calendar resources in an organization. The action supports filtering by resource category, capacity, building location, and other criteria. IMPORTANT: This requires Admin SDK Directory API access and appropriate admin permissions - it is NOT available for personal Gmail accounts, only Google Workspace domains." }, { "slug": "GOOGLESUPER_LIST_CALENDARS", "name": "List Google Calendars", "description": "Retrieves calendars from the user's Google Calendar list, with options for pagination and filtering. Loop through all pages using nextPageToken until absent to avoid missing calendars. Use the primary flag and accessRole field from the response to identify calendars — display names are not valid calendar_id values. Read access (listing) does not imply write OAuth scopes." }, { "slug": "GOOGLESUPER_LIST_CHANGES", "name": "List Changes", "description": "Tool to list the changes for a user or shared drive. Use when a full incremental change feed is needed (for simple recent-file lookups, prefer GOOGLEDRIVE_FIND_FILE instead). Tracks modifications such as creations, deletions, or permission changes. The pageToken is optional - if not provided, the current start page token will be automatically fetched; an empty result is valid if no recent activity has occurred. Example usage: ```json { \"pageToken\": \"22633\", \"pageSize\": 100, \"includeRemoved\": true } ``` Returns changes with timestamps, file IDs, and modification details. Paginate by following `nextPageToken` until it is absent — stopping early will silently omit changes. Save `newStartPageToken` to monitor future changes efficiently." }, { "slug": "GOOGLESUPER_LIST_CHANNEL_GROUPS", "name": "List Channel Groups", "description": "Tool to list ChannelGroups on a property. Use when you need to retrieve channel groups that categorize traffic sources in Analytics reports." }, { "slug": "GOOGLESUPER_LIST_CHARTS", "name": "List Charts in Google Sheets", "description": "Lists all charts in a Google Sheets spreadsheet across all sheets, returning chart_id, sheet metadata, chart type, title, and position. Use this action when you need to discover what charts exist in a spreadsheet, retrieve chart IDs for update or delete operations, or inspect chart configurations. The default field mask in GOOGLESHEETS_GET_SPREADSHEET_INFO omits chart data, making this dedicated action necessary for chart discovery." }, { "slug": "GOOGLESUPER_LIST_CHILDREN_V2", "name": "List Folder Children (v2)", "description": "Tool to list a folder's children using Google Drive API v2. Use when you need to retrieve all files and folders within a specific folder." }, { "slug": "GOOGLESUPER_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list all comments for a file in Google Drive. Results are paginated; iterate using nextPageToken until absent to retrieve all comments. Filtering by author, content, or other criteria must be done client-side. Use commentId, createdTime, and author from results to uniquely identify comments before acting on them." }, { "slug": "GOOGLESUPER_LIST_CONFERENCE_RECORDS", "name": "List Conference Records", "description": "Tool to list conference records. Use when you need to retrieve a list of past conferences, optionally filtering them by criteria like meeting code, space name, or time range." }, { "slug": "GOOGLESUPER_LIST_CONVERSION_EVENTS", "name": "List Conversion Events", "description": "Tool to list conversion events on a property. Use when you need to retrieve conversion events configured for a given property." }, { "slug": "GOOGLESUPER_LIST_CSE_IDENTITIES", "name": "List CSE identities", "description": "Tool to list client-side encrypted identities for an authenticated user. Use when you need to retrieve CSE identity configurations including key pair associations." }, { "slug": "GOOGLESUPER_LIST_CSE_KEYPAIRS", "name": "List CSE key pairs", "description": "Tool to list client-side encryption key pairs for an authenticated user. Use when you need to retrieve CSE keypair configurations including public keys and enablement states. Supports pagination for large result sets." }, { "slug": "GOOGLESUPER_LIST_CUSTOM_DIMENSIONS", "name": "List Custom Dimensions", "description": "List Custom Dimensions" }, { "slug": "GOOGLESUPER_LIST_CUSTOM_METRICS", "name": "List Custom Metrics", "description": "Tool to list CustomMetrics on a property. Use when you need to retrieve all custom metrics configured for a given property." }, { "slug": "GOOGLESUPER_LIST_DATA_STREAMS", "name": "List DataStreams", "description": "Tool to list DataStreams on a property. Use when you need to retrieve data stream configurations for a Google Analytics property." }, { "slug": "GOOGLESUPER_LIST_DRAFTS", "name": "List Drafts", "description": "Retrieves a paginated list of email drafts from a user's Gmail account. Use verbose=true to get full draft details including subject, body, sender, and timestamp. Draft ordering is non-guaranteed; iterate using page_token until it is absent to retrieve all drafts. Newly created drafts may not appear immediately. Rapid calls may trigger 403 userRateLimitExceeded or 429 errors; apply exponential backoff (1s, 2s, 4s) before retrying." }, { "slug": "GOOGLESUPER_LIST_DV360_AD_LINKS", "name": "List Display & Video 360 Advertiser Links", "description": "Tool to list Display & Video 360 advertiser links on a property. Use when you need to retrieve DisplayVideo360AdvertiserLink resources associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLESUPER_LIST_DV360_LINK_PROPOSALS", "name": "List DisplayVideo360 Advertiser Link Proposals", "description": "Tool to list DisplayVideo360AdvertiserLinkProposals on a property. Use when you need to retrieve Display & Video 360 advertiser link proposals associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLESUPER_LIST_EVENT_CREATE_RULES", "name": "List Event Create Rules", "description": "Tool to list EventCreateRules configured on a web data stream. Use when you need to retrieve event create rules for a specific GA4 property data stream." }, { "slug": "GOOGLESUPER_LIST_EXPANDED_DATA_SETS", "name": "List Expanded Data Sets", "description": "Tool to list ExpandedDataSets on a property. Use when you need to retrieve expanded data set configurations for a Google Analytics 360 property." }, { "slug": "GOOGLESUPER_LIST_FILE_LABELS", "name": "List File Labels", "description": "Tool to list the labels already applied to a file in Google Drive. An empty labels array is a valid response indicating no labels are applied, not an error. This tool shows only applied labels; label_id and field_id values required by other Drive label tools must be obtained from admin configuration." }, { "slug": "GOOGLESUPER_LIST_FILE_PROPERTIES", "name": "List Properties (v2 API)", "description": "Tool to list a file's properties in Google Drive API v2. Use when you need to retrieve custom properties (key-value pairs) attached to a file." }, { "slug": "GOOGLESUPER_LIST_FILES", "name": "List Files and Folders (Deprecated)", "description": "DEPRECATED: Use GOOGLEDRIVE_FIND_FILE instead. Tool to list a user's files and folders in Google Drive. Use this to search or browse for files and folders based on various criteria." }, { "slug": "GOOGLESUPER_LIST_FILTERS", "name": "List Gmail filters", "description": "Tool to list all Gmail filters (rules) in the mailbox. Use for security audits to detect malicious filter rules or before creating new filters to avoid duplicates." }, { "slug": "GOOGLESUPER_LIST_FIREBASE_LINKS", "name": "List Firebase Links", "description": "Tool to list FirebaseLinks on a property. Use when you need to retrieve Firebase connections associated with a Google Analytics property. Each property can have at most one FirebaseLink." }, { "slug": "GOOGLESUPER_LIST_FORWARDING_ADDRESSES", "name": "List forwarding addresses", "description": "Tool to list all forwarding addresses for the specified Gmail account. Use when you need to retrieve the email addresses that are allowed to be used for forwarding messages." }, { "slug": "GOOGLESUPER_LIST_GOOGLE_ADS_LINKS", "name": "List Google Ads Links", "description": "Tool to list GoogleAdsLinks on a property. Use when you need to retrieve Google Ads account links configured for a Google Analytics property. Supports pagination for large result sets." }, { "slug": "GOOGLESUPER_LIST_HISTORY", "name": "List Gmail history", "description": "Tool to list Gmail mailbox change history since a known startHistoryId. Use for incremental mailbox syncs. Persist the latest historyId as a checkpoint across sessions; without it, incremental sync is unreliable. An empty history list in the response is valid and means no new changes occurred." }, { "slug": "GOOGLESUPER_LIST_KEY_EVENTS", "name": "List Key Events", "description": "Tool to list Key Events. Use when you need to retrieve all key event definitions for a given property. Key events are read-only via API; creation, updates, and deletion require the Google Analytics UI. An empty results list means no key events are configured, not a failure. Do not infer key-event status from report data (e.g., eventCount); use this tool to confirm." }, { "slug": "GOOGLESUPER_LIST_LABELS", "name": "List Gmail labels", "description": "Retrieves all system and user-created labels for a Gmail account in a single unpaginated response. Primary use: obtain internal label IDs (e.g., 'Label_123') required by other Gmail tools — display names cannot be used as label identifiers and cause silent failures or errors. System labels (INBOX, UNREAD, SPAM, TRASH, etc.) are case-sensitive and must be used exactly as returned; INBOX, SPAM, and TRASH are read-only and cannot be added/removed via label modification tools. The Gmail search 'label:' operator accepts display names, but label_ids parameters in tools like GMAIL_FETCH_EMAILS require internal IDs from this tool — mixing conventions yields zero results silently. Do not hardcode label IDs across sessions; refresh via this tool on conflict errors." }, { "slug": "GOOGLESUPER_LIST_MEASUREMENT_PROTOCOL_SECRETS", "name": "List Measurement Protocol Secrets", "description": "Tool to list MeasurementProtocolSecrets under a data stream. Use when you need to retrieve measurement protocol secrets for server-side event tracking." }, { "slug": "GOOGLESUPER_LIST_MEDIA_ITEMS", "name": "List Media Items (App-Created Only)", "description": "Lists media items created by this application from Google Photos. DEPRECATION NOTICE: As of March 31, 2025, the Google Photos Library API ONLY returns media items that were uploaded/created by your application. This action CANNOT access the user's full photo library. Use cases this action SUPPORTS: - Listing photos/videos your app previously uploaded to the user's library - Managing app-created content in Google Photos Use cases this action DOES NOT SUPPORT: - Accessing photos taken by the user's camera - Viewing photos from other apps or web uploads - Listing the user's entire photo library For accessing a user's full library, use the Google Photos Picker API instead: https://developers.google.com/photos/picker" }, { "slug": "GOOGLESUPER_LIST_MESSAGES", "name": "List Gmail messages (Deprecated)", "description": "DEPRECATED: Use GMAIL_FETCH_EMAILS instead. Lists the messages in the user's mailbox. Use when you need to retrieve a list of email messages with optional filtering by labels or search query." }, { "slug": "GOOGLESUPER_LIST_PARTICIPANTS", "name": "List Participants", "description": "Lists the participants in a conference record. By default, ordered by join time descending. Use to retrieve all participants who joined a specific Google Meet conference, with support for filtering active participants (where `latest_end_time IS NULL`)." }, { "slug": "GOOGLESUPER_LIST_PARTICIPANT_SESSIONS", "name": "List Participant Sessions", "description": "Lists all participant sessions for a specific participant in a Google Meet conference. A participant session represents each unique join or leave session when a user joins a conference from a device. If a user joins multiple times from the same device, each join creates a new session. Returns session details including start time and end time for each session." }, { "slug": "GOOGLESUPER_LIST_PERMISSIONS", "name": "List Permissions", "description": "Tool to list a file's permissions. Use when you need to retrieve all permissions associated with a specific file or shared drive." }, { "slug": "GOOGLESUPER_LIST_PROPERTIES", "name": "List Properties (Deprecated)", "description": "DEPRECATED: Use ListPropertiesV1Beta instead. Tool to list GA4 properties under a specific account. Use after obtaining an account ID; supports pagination and including soft-deleted properties. Results may include legacy Universal Analytics properties; verify property type before use." }, { "slug": "GOOGLESUPER_LIST_PROPERTIES_FILTERED", "name": "List Property", "description": "Tool to list GA4 properties based on filter criteria. Use when you need to find properties under a specific parent account or with specific firebase projects. Supports pagination and including soft-deleted properties." }, { "slug": "GOOGLESUPER_LIST_RECORDINGS", "name": "List Recordings", "description": "Tool to list recording resources from a conference record. Use when you need to retrieve recordings from a specific Google Meet conference. Recordings are created when meeting recording is enabled and saved to Google Drive as MP4 files." }, { "slug": "GOOGLESUPER_LIST_RECURRING_AUDIENCE_LISTS", "name": "List Recurring Audience Lists", "description": "Tool to list all recurring audience lists for a GA4 property. Use when you need to find and reuse existing recurring audience lists." }, { "slug": "GOOGLESUPER_LIST_REPLIES", "name": "List Replies to Comment", "description": "Tool to list replies to a comment in Google Drive. Use this when you need to retrieve all replies associated with a specific comment on a file." }, { "slug": "GOOGLESUPER_LIST_REPORTING_DATA_ANNOTATIONS", "name": "List Reporting Data Annotations", "description": "Tool to list all Reporting Data Annotations for a specific property. Use when you need to retrieve annotations that document important events or periods in GA4 reporting data." }, { "slug": "GOOGLESUPER_LIST_REPORT_TASKS", "name": "List Report Tasks", "description": "Tool to list all report tasks for a Google Analytics property. Use when you need to retrieve report task definitions and their execution status." }, { "slug": "GOOGLESUPER_LIST_REVISIONS", "name": "List File Revisions", "description": "Tool to list a file's revision metadata (not content) in Google Drive. Drive may prune old revisions, so history may be incomplete for frequently edited files. Filter client-side for specific revisionIds; do not assume the last entry is the active version." }, { "slug": "GOOGLESUPER_LIST_SEARCH_ADS360_LINKS", "name": "List Search Ads 360 Links", "description": "Tool to list all SearchAds360Links on a property. Use when you need to retrieve all Search Ads 360 links for a given Google Analytics property. Supports pagination for large result sets." }, { "slug": "GOOGLESUPER_LIST_SEND_AS", "name": "List send-as aliases", "description": "Lists the send-as aliases for a Gmail account, including the primary address and custom 'from' aliases. Use when you need to retrieve available sending addresses for composing emails." }, { "slug": "GOOGLESUPER_LIST_SETTINGS", "name": "List Calendar Settings (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_SETTINGS_LIST instead. Tool to return all user settings for the authenticated user. Use when you need to retrieve calendar settings." }, { "slug": "GOOGLESUPER_LIST_SHARED_ALBUMS", "name": "List Shared Albums (Deprecated)", "description": "[DEPRECATED - sunset March 31, 2025] Lists all shared albums available in the Sharing tab of the user's Google Photos app. Use when you need to retrieve shared albums that are visible to the user in their Sharing tab." }, { "slug": "GOOGLESUPER_LIST_SHARED_DRIVES", "name": "List Shared Drives", "description": "Tool to list the user's shared drives. Use when you need to get a list of all shared drives accessible to the authenticated user. Results may differ from the web UI due to admin policies; listing a drive does not guarantee access to its contents. Paginated calls may trigger 403 rateLimitExceeded or 429 tooManyRequests; apply exponential backoff when iterating many pages." }, { "slug": "GOOGLESUPER_LIST_SK_AD_NETWORK_CONVERSION_VALUE_SCHEMAS", "name": "List SKAdNetwork Conversion Value Schemas", "description": "Tool to list SKAdNetworkConversionValueSchema configurations for an iOS data stream. Use when you need to retrieve conversion value schemas for iOS app tracking. Maximum one schema per property is supported." }, { "slug": "GOOGLESUPER_LIST_SMIME_INFO", "name": "List S/MIME configs", "description": "Lists S/MIME configs for the specified send-as alias. Use when you need to retrieve all S/MIME certificate configurations associated with a specific send-as email address." }, { "slug": "GOOGLESUPER_LIST_SPREADSHEET_CHARTS", "name": "Get Charts from Spreadsheet", "description": "Tool to retrieve a list of all charts from a specified Google Sheets spreadsheet. Use when you need to get chart IDs and their specifications for embedding or referencing elsewhere, such as in Google Docs." }, { "slug": "GOOGLESUPER_LIST_SUB_ACCOUNTS", "name": "List Sub Accounts", "description": "List direct child/sub-accounts under a Google Ads manager (MCC) account. Use this before account-scoped read or mutate calls when a user needs to choose which child account to target. The returned customer_id values can be passed to other Google Ads tools as their customer_id." }, { "slug": "GOOGLESUPER_LIST_SUBPROPERTY_EVENT_FILTERS", "name": "List Subproperty Event Filters", "description": "Tool to list all subproperty event filters on a property. Use when you need to retrieve event filters that route events to subproperties." }, { "slug": "GOOGLESUPER_LIST_SUBPROPERTY_SYNC_CONFIGS", "name": "List Subproperty Sync Configs", "description": "Tool to list SubpropertySyncConfig resources for managing subproperty synchronization configurations. Use when you need to fetch subproperty sync configs for a GA4 property." }, { "slug": "GOOGLESUPER_LIST_TABLES", "name": "List Tables in Spreadsheet", "description": "DEPRECATED: Use GOOGLESHEETS_GET_SHEET_NAMES for tab discovery and GOOGLESHEETS_GET_SPREADSHEET_INFO for full sheet metadata. This action is used to list all tables in a Google Spreadsheet, call this action to get the list of tables in a spreadsheet. Discover all tables in a Google Spreadsheet by analyzing sheet structure and detecting data patterns. Uses heuristic analysis to find header rows, data boundaries, and table structures." }, { "slug": "GOOGLESUPER_LIST_TASK_LISTS", "name": "List task lists", "description": "Fetches the authenticated user's task lists from Google Tasks; results may be paginated. Response contains task lists under the `items` key. Multiple lists may share similar names — confirm the correct list by ID before passing to other tools." }, { "slug": "GOOGLESUPER_LIST_TASKS", "name": "List Tasks", "description": "Retrieves tasks from a Google Tasks list; all date/time strings must be RFC3339 UTC, and `showCompleted` must be true if `completedMin` or `completedMax` are specified. Response key for tasks is `tasks` (not `items`). No full-text search; filter client-side by title/notes. Results ordered by position, not by date." }, { "slug": "GOOGLESUPER_LIST_TEAM_DRIVES", "name": "List Team Drives (Deprecated)", "description": "Tool to list Team Drives (deprecated, use List Shared Drives instead). Use when you need to retrieve Team Drives using the legacy endpoint." }, { "slug": "GOOGLESUPER_LIST_THREADS", "name": "List threads", "description": "Retrieves a list of email threads from a Gmail account, identified by `user_id` (email address or 'me'), supporting filtering and pagination. Spam and trash are excluded by default unless explicitly targeted via `label:spam` or `label:trash` in the query." }, { "slug": "GOOGLESUPER_LIST_TRANSCRIPT_ENTRIES", "name": "List Transcript Entries", "description": "Tool to list structured transcript entries (speaker/time/text segments) for a specific Google Meet transcript. Use when you need to access the detailed content of a transcript, including individual spoken segments with timestamps and speaker information. Note: The transcript entries returned by the API might not match the transcription in Google Docs due to interleaved speakers or post-generation modifications." }, { "slug": "GOOGLESUPER_LOOKUP_AERIAL_VIDEO", "name": "Lookup Aerial Video", "description": "Tool to look up an aerial view video by address or video ID. Returns video metadata including state and URIs for playback. Use when you need to retrieve a previously rendered aerial video or check the status of a video render request. Note that receiving a video is a billable event." }, { "slug": "GOOGLESUPER_LOOKUP_SPREADSHEET_ROW", "name": "Look up spreadsheet row", "description": "Finds the first row in a Google Spreadsheet where a cell's entire content exactly matches the query string, searching within a specified A1 notation range or the first sheet by default." }, { "slug": "GOOGLESUPER_MAPS_EMBED_API", "name": "Embed Google Map", "description": "Tool to generate an embeddable Google Map URL and HTML iframe code. Use when you need to display a map (place, view, directions, street view, search) on a webpage without JavaScript. Note: This API only works with API keys (no OAuth2 support). It generates embed URLs and does not make direct API calls. Generated embed URLs are publicly accessible; avoid passing sensitive or internal location queries." }, { "slug": "GOOGLESUPER_MODIFY_FILE_LABELS", "name": "Modify File Labels", "description": "Modifies the set of labels applied to a file. Returns a list of the labels that were added or modified. Use when you need to programmatically change labels on a Google Drive file, such as adding, updating, or removing them." }, { "slug": "GOOGLESUPER_MODIFY_THREAD_LABELS", "name": "Modify thread labels", "description": "Adds or removes specified existing label IDs from a Gmail thread, affecting all its messages; ensure the thread ID is valid. To modify a single message only, use a message-level tool instead." }, { "slug": "GOOGLESUPER_MOVE_CHART", "name": "Move or Resize Chart in Google Sheets", "description": "Move or resize an existing chart on a Google Sheets spreadsheet. Use this action when you need to reposition a chart to a different location on the same or different sheet, move it to a brand-new sheet, or change its size. This action wraps the updateEmbeddedObjectPosition batchUpdate request type and supports three positioning modes: moving to a new sheet, moving to an existing sheet, or repositioning via pixel-perfect overlay coordinates." }, { "slug": "GOOGLESUPER_MOVE_FILE", "name": "Move File", "description": "Tool to move a file from one folder to another in Google Drive. To truly move (not just copy the parent), always provide both `add_parents` (destination folder ID) and `remove_parents` (source folder ID); omitting `remove_parents` leaves the file in multiple folders. Useful for reorganizing files, including newly created Google Docs/Sheets that default to Drive root." }, { "slug": "GOOGLESUPER_MOVE_TASK", "name": "Move Task", "description": "Moves the specified task to another position in the task list or to a different task list. Use cases: - Reorder tasks within a list (use 'previous' parameter) - Create subtasks by moving a task under a parent (use 'parent' parameter) - Move tasks between different task lists (use 'destinationTasklist' parameter) - Move a subtask back to top-level (omit 'parent' parameter)" }, { "slug": "GOOGLESUPER_MOVE_THREAD_TO_TRASH", "name": "Trash thread", "description": "Moves the specified thread to the trash. Any messages that belong to the thread are also moved to the trash." }, { "slug": "GOOGLESUPER_MOVE_TO_TRASH", "name": "Move to Trash", "description": "Moves an existing, non-deleted email message to the trash for the specified user. Trashed messages are recoverable and still count toward storage quota until purged. Prefer this over GMAIL_BATCH_DELETE_MESSAGES when recovery may be needed. For bulk operations, use GMAIL_BATCH_MODIFY_MESSAGES or GMAIL_BATCH_DELETE_MESSAGES instead of repeated calls to this tool." }, { "slug": "GOOGLESUPER_MUTATE_AD_GROUP_ADS", "name": "Mutate Ad Group Ads", "description": "Create, update, or remove ads in Google Ads ad groups, including responsive search ads. Use this after creating campaigns, budgets, ad groups, and keywords so the ad group has creative that can serve." }, { "slug": "GOOGLESUPER_MUTATE_AD_GROUP_ASSETS", "name": "Mutate Ad Group Assets", "description": "Create, update, or remove links between assets and ad groups. Use this after creating assets to attach sitelinks, callouts, snippets, images, and other asset types at ad group level." }, { "slug": "GOOGLESUPER_MUTATE_AD_GROUP_BID_MODIFIERS", "name": "Mutate Ad Group Bid Modifiers", "description": "Create, update, or remove ad group bid modifiers, such as device bid adjustments or hotel-specific bid modifier criteria." }, { "slug": "GOOGLESUPER_MUTATE_AD_GROUP_CRITERIA", "name": "Mutate Ad Group Criteria", "description": "Create, update, or remove criteria attached to a Google Ads ad group in a single batch request. Supports keywords (positive and negative), audience targeting (user lists, custom audiences, combined audiences, in-market/affinity), demographics (age range, gender, parental status, income range), placements (websites, mobile apps, YouTube channels/videos), topics, webpages (for Dynamic Search Ads), and listing groups (for Shopping). Use this to programmatically manage keyword bids and match types, build audience targeting, or prune underperforming criteria. Remove operations are irreversible — deleted criteria cannot be recovered. For testing, set validate_only=true to dry-run without committing changes." }, { "slug": "GOOGLESUPER_MUTATE_AD_GROUPS", "name": "Mutate Ad Groups", "description": "Create, update, or remove ad groups within Google Ads campaigns. Supports batch operations with multiple ad group changes in a single request. Use when you need to manage ad groups programmatically, such as creating new ad groups for campaigns, updating ad group settings or status, or removing ad groups that are no longer needed. This action is irreversible for remove operations — deleted ad groups cannot be recovered once removed." }, { "slug": "GOOGLESUPER_MUTATE_ASSETS", "name": "Mutate Assets", "description": "Create or update Google Ads assets such as sitelinks, callouts, structured snippets, text assets, lead forms, promotions, calls, price assets, and media assets. Google Ads AssetService does not expose remove via mutate." }, { "slug": "GOOGLESUPER_MUTATE_BIDDING_STRATEGIES", "name": "Mutate Bidding Strategies", "description": "Create, update, or remove portfolio bidding strategies such as Target CPA, Target ROAS, Target Spend, Maximize Conversions, Maximize Conversion Value, Target Impression Share, and Enhanced CPC." }, { "slug": "GOOGLESUPER_MUTATE_CAMPAIGN_ASSETS", "name": "Mutate Campaign Assets", "description": "Create, update, or remove links between assets and campaigns. Use this after creating assets to attach sitelinks, callouts, snippets, and other asset types at campaign level." }, { "slug": "GOOGLESUPER_MUTATE_CAMPAIGN_BUDGETS", "name": "Mutate Campaign Budgets", "description": "Create, update, or remove Google Ads campaign budgets. Use this before creating campaigns because campaign creation requires an existing campaign_budget resource name." }, { "slug": "GOOGLESUPER_MUTATE_CAMPAIGN_CRITERIA", "name": "Mutate Campaign Criteria", "description": "Create, update, or remove campaign-level targeting criteria such as locations, languages, campaign-level negative keywords, devices, schedules, audiences, and IP exclusions." }, { "slug": "GOOGLESUPER_MUTATE_CAMPAIGN_LABELS", "name": "Mutate Campaign Labels", "description": "Create or remove relationships between campaigns and labels. Use this after creating labels to organize campaigns for filtering and reporting." }, { "slug": "GOOGLESUPER_MUTATE_CAMPAIGNS", "name": "Mutate Campaigns", "description": "Create, update, or remove Google Ads campaigns in batch. Supports multiple operations (create, update, remove) in a single request. Use when managing campaign lifecycle, applying bulk changes, or automating campaign management workflows. This action is irreversible for remove operations — deleted campaigns cannot be recovered. Plan accordingly and consider using validate_only=true to test changes before applying them." }, { "slug": "GOOGLESUPER_MUTATE_CONDITIONAL_FORMAT_RULES", "name": "Mutate conditional format rules", "description": "Add, update, delete, or reorder conditional format rules on a Google Sheet. Use when you need to create, modify, or remove conditional formatting without manually building batchUpdate requests. Supports four operations: ADD (create new rule), UPDATE (replace existing rule), DELETE (remove rule), MOVE (reorder rules by changing index)." }, { "slug": "GOOGLESUPER_MUTATE_CONVERSION_ACTIONS", "name": "Mutate Conversion Actions", "description": "Create, update, or remove Google Ads conversion actions for conversion tracking configuration. This manages Google Ads conversion action resources; installing website/app tags remains outside this action." }, { "slug": "GOOGLESUPER_MUTATE_LABELS", "name": "Mutate Labels", "description": "Create, update, or remove Google Ads labels. Pair this with campaign label mutations to organize campaigns and support filtering." }, { "slug": "GOOGLESUPER_NEARBY_SEARCH", "name": "Nearby search", "description": "Searches for places (e.g., restaurants, parks) within a specified circular area, with options to filter by place types and customize the returned fields and number of results." }, { "slug": "GOOGLESUPER_PARSE_FILE", "name": "Export or download a file", "description": "DEPRECATED: Exports Google Workspace files (max 10MB) to a specified format using `mime_type`, or downloads other file types; use `GOOGLEDRIVE_DOWNLOAD_FILE` instead." }, { "slug": "GOOGLESUPER_PATCH_CALENDAR", "name": "Patch Calendar", "description": "Partially updates (PATCHes) an existing Google Calendar, modifying only the fields provided. At least one of summary, description, location, or timezone must be provided. Empty strings for `description` or `location` clear them." }, { "slug": "GOOGLESUPER_PATCH_EVENT", "name": "Patch Event", "description": "Update specified fields of an existing event in a Google Calendar using patch semantics (array fields like `attendees` are fully replaced if provided); ensure the `calendar_id` and `event_id` are valid and the user has write access to the calendar." }, { "slug": "GOOGLESUPER_PATCH_LABEL", "name": "Patch Label", "description": "Patches the specified user-created label. System labels (e.g., INBOX, SENT, SPAM) cannot be modified and will be rejected." }, { "slug": "GOOGLESUPER_PATCH_PERMISSION", "name": "Patch Permission", "description": "Tool to update a permission using patch semantics. Use when you need to modify specific fields of an existing permission without affecting other fields. **Warning:** Concurrent permissions operations on the same file are not supported; only the last update is applied." }, { "slug": "GOOGLESUPER_PATCH_PROPERTY", "name": "Patch Property (v2 API)", "description": "Tool to update a property on a file using PATCH semantics (v2 API). Use when you need to partially update custom key-value metadata attached to a Google Drive file." }, { "slug": "GOOGLESUPER_PATCH_SEND_AS", "name": "Patch send-as alias", "description": "Tool to patch the specified send-as alias for a Gmail user. Use when you need to update properties of an existing send-as email address such as display name, reply-to address, signature, default status, or SMTP configuration." }, { "slug": "GOOGLESUPER_PATCH_TASK", "name": "Patch Task", "description": "Partially updates an existing task (identified by `task_id`) within a specific Google Task list (identified by `tasklist_id`), modifying only the provided attributes from `TaskInput` (e.g., `title`, `notes`, `due` date, `status`) and requiring both the task and list to exist." }, { "slug": "GOOGLESUPER_PATCH_TASK_LIST", "name": "Patch task list", "description": "Updates the title of an existing Google Tasks task list." }, { "slug": "GOOGLESUPER_PLACE_PHOTO", "name": "Get Place Photo", "description": "Retrieves high quality photographic content from the Google Maps Places database. Use when you need to download a place photo using a photo_reference obtained from Place Details, Nearby Search, or Text Search requests. Images are scaled proportionally to fit within specified dimensions." }, { "slug": "GOOGLESUPER_PRESENTATIONS_BATCH_UPDATE", "name": "Update Presentation (Batch/Markdown)", "description": "Update Google Slides presentations using markdown content or raw API text. Supports professional themes, auto-formatting, and multiple slide types (title, bullet, table, quote, image, two-column)." }, { "slug": "GOOGLESUPER_PRESENTATIONS_COPY_FROM_TEMPLATE", "name": "Copy Google Slides from Template", "description": "Tool to create a new Google Slides presentation by duplicating an existing template deck via Drive file copy. Use when you need to preserve themes, masters, and layouts exactly as they appear in the template. After copying, use GOOGLESLIDES_PRESENTATIONS_BATCH_UPDATE to replace placeholder text or images." }, { "slug": "GOOGLESUPER_PRESENTATIONS_GET", "name": "Get Presentation", "description": "Tool to retrieve the latest version of a presentation. Use after obtaining the presentation ID." }, { "slug": "GOOGLESUPER_PRESENTATIONS_PAGES_GET", "name": "Get Presentation Page", "description": "Tool to get the latest version of a specific page in a presentation. Use when you need to inspect slide, layout, master, or notes page details." }, { "slug": "GOOGLESUPER_PRESENTATIONS_PAGES_GET_THUMBNAIL", "name": "Get Page Thumbnail (Deprecated)", "description": "DEPRECATED: Use GOOGLESLIDES_GET_PAGE_THUMBNAIL2 instead. Tool to generate and return a thumbnail image URL for a specific page. Use when you need a quick preview of a slide page after loading it." }, { "slug": "GOOGLESUPER_PROVISION_ACCOUNT_TICKET", "name": "Provision Account Ticket", "description": "Tool to request a ticket for creating a Google Analytics account. Use when you need to initiate the account creation flow that requires user acceptance of Terms of Service." }, { "slug": "GOOGLESUPER_QUERY_AUDIENCE_EXPORT", "name": "Query Audience Export", "description": "Tool to query a completed audience export. Use when you need to fetch user rows with pagination." }, { "slug": "GOOGLESUPER_QUERY_AUDIENCE_LIST", "name": "Query Audience List", "description": "Tool to query an audience list. Use when you need to retrieve user rows from a GA4 audience list with pagination." }, { "slug": "GOOGLESUPER_QUERY_REPORT_TASK", "name": "Query Report Task", "description": "Tool to retrieve a report task's content. Use this after creating a report task with CreateReportTask and confirming it is in ACTIVE state. This method returns an error if the report task's state is not ACTIVE." }, { "slug": "GOOGLESUPER_QUERY_TABLE", "name": "Query Spreadsheet Table", "description": "DEPRECATED: Use GOOGLESHEETS_VALUES_GET / GOOGLESHEETS_BATCH_GET for table reads and GOOGLESHEETS_LOOKUP_SPREADSHEET_ROW for row lookup/filter workflows. Execute SQL-like SELECT queries against Google Spreadsheet tables. Table names correspond to sheet/tab names visible at the bottom of the spreadsheet. Use GOOGLESHEETS_LIST_TABLES first to discover available table names if unknown. Supports WHERE conditions, ORDER BY, LIMIT clauses." }, { "slug": "GOOGLESUPER_QUICK_ADD", "name": "Quick Add Event", "description": "Parses natural language text to quickly create a basic Google Calendar event with its title, date, and time, suitable for simple scheduling; does not support direct attendee addition or recurring events, and `calendar_id` must be valid if not 'primary'." }, { "slug": "GOOGLESUPER_REMOVE_ATTENDEE", "name": "Remove attendee from event", "description": "Removes an attendee from a specified event in a Google Calendar; the calendar and event must exist. Concurrent calls on the same event can overwrite attendee lists — apply changes sequentially per event." }, { "slug": "GOOGLESUPER_REMOVE_LABEL", "name": "Remove label (Deprecated)", "description": "DEPRECATED: Use GMAIL_DELETE_LABEL instead. Permanently deletes a specific, existing user-created Gmail label by its ID for a user; cannot delete system labels." }, { "slug": "GOOGLESUPER_RENDER_AERIAL_VIDEO", "name": "Render Aerial Video", "description": "Starts rendering an aerial view video for a US postal address. Returns a video ID that can be used with lookupVideo to retrieve the video once rendering completes. Rendering typically takes up to a few hours." }, { "slug": "GOOGLESUPER_REPLACE_ALL_TEXT", "name": "Replace All Text in Document", "description": "Tool to replace all occurrences of a specified text string with another text string throughout a Google Document. Use when you need to perform a global find and replace operation within a document." }, { "slug": "GOOGLESUPER_REPLACE_IMAGE", "name": "Replace Image in Document", "description": "Tool to replace a specific image in a document with a new image from a URI. Use when you need to update an existing image within a Google Doc." }, { "slug": "GOOGLESUPER_REPLY_TO_THREAD", "name": "Reply to email thread", "description": "Sends a reply within a specific Gmail thread using the original thread's subject; do not provide a custom subject as it will start a new conversation instead of replying in-thread. Requires a valid `thread_id` and at least one of `recipient_email`, `cc`, or `bcc`. Supports optional file attachments." }, { "slug": "GOOGLESUPER_RESUMABLE_UPLOAD", "name": "Resumable Upload", "description": "Tool to start and complete a Google Drive resumable upload session. Use for files larger than ~5 MB to avoid timeouts or size-limit failures. HTTP 308 means continue the session from the correct byte offset; HTTP 410 means the session expired and a full restart with a new session is required." }, { "slug": "GOOGLESUPER_RUN_FUNNEL_REPORT", "name": "Run Funnel Report", "description": "Tool to run a GA4 funnel report. Use when you need a customized funnel analysis report for a given property. Funnel step sequence is determined by step attributes in the response, not row order." }, { "slug": "GOOGLESUPER_RUN_PIVOT_REPORT", "name": "Run Pivot Report", "description": "Tool to run a customized pivot report of Google Analytics event data. Use when you need a pivot table view with advanced segmentation and multi-dimensional analysis of GA4 data." }, { "slug": "GOOGLESUPER_RUN_REALTIME_REPORT", "name": "Run Realtime Report", "description": "Tool to run a customized realtime report of Google Analytics event data. Use when you need realtime data (last 30-60 minutes) with dimensions and metrics for a GA4 property." }, { "slug": "GOOGLESUPER_RUN_REPORT", "name": "Run Report", "description": "Tool to run a customized GA4 data report. Use when you need event data after specifying dimensions, metrics, and date ranges. IMPORTANT - DIMENSION/METRIC COMPATIBILITY: The Google Analytics Data API has strict compatibility rules between dimensions and metrics. Not all combinations are valid. If you receive a 400 error with a message about incompatible dimensions/metrics, use the GOOGLE_ANALYTICS_CHECK_COMPATIBILITY action first to validate your dimension/metric combinations before running reports. Common incompatibilities include: - Demographic dimensions (userAgeBracket, userGender) with session-scoped dimensions/filters (sessionCampaignName, sessionSource) - Certain user-scoped dimensions with event-scoped metrics For complex queries, consider starting with simpler dimension/metric combinations or use CHECK_COMPATIBILITY to pre-validate your request." }, { "slug": "GOOGLESUPER_SEARCH_DEVELOPER_METADATA", "name": "Search Developer Metadata", "description": "Tool to search for developer metadata in a spreadsheet. Use when you need to find specific metadata entries based on filters." }, { "slug": "GOOGLESUPER_SEARCH_DOCUMENTS", "name": "Search Documents", "description": "Search for Google Documents using various filters including name, content, date ranges, and more." }, { "slug": "GOOGLESUPER_SEARCH_MEDIA_ITEMS", "name": "Search Media Items", "description": "Searches for media items in a user's Google Photos library." }, { "slug": "GOOGLESUPER_SEARCH_PEOPLE", "name": "Search People", "description": "Searches contacts by matching the query against names, nicknames, emails, phone numbers, and organizations, optionally including 'Other Contacts'. Only searches the authenticated user's contact directory — people existing solely in message headers won't appear; use GMAIL_FETCH_EMAILS for those. Results may be zero or multiple; never auto-select from ambiguous results. Results paginate via next_page_token; follow until empty and deduplicate by email. Many records lack emailAddresses or names even when requested — handle missing keys. Directory/organization policies may suppress entries." }, { "slug": "GOOGLESUPER_SEARCH_SPREADSHEETS", "name": "Search Spreadsheets", "description": "Search for Google Spreadsheets using various filters including name, content, date ranges, and more." }, { "slug": "GOOGLESUPER_SEARCH_STREAM_GAQL", "name": "Search Stream GAQL", "description": "Execute a Google Ads Query Language (GAQL) query and stream all results in a single response. This method is more efficient than paginated search for bulk data retrieval of campaigns, ad groups, and performance metrics (clicks, impressions, cost). Use this action when you need the entire result set without pagination. Results are returned as a single response containing all matching rows." }, { "slug": "GOOGLESUPER_SEND_DRAFT", "name": "Send Draft", "description": "Sends an existing draft email AS-IS to recipients already defined within the draft. IMPORTANT: This action does NOT accept recipient parameters (to, cc, bcc). The Gmail API's drafts/send endpoint sends drafts to whatever recipients are already set in the draft's To, Cc, and Bcc headers - it cannot add or override recipients. If the draft has no recipients, you must either: 1. Create a new draft with recipients using GMAIL_CREATE_EMAIL_DRAFT, then send it 2. Use GMAIL_SEND_EMAIL to send a new email directly with recipients. Send is immediate and irreversible — confirm recipients and content before calling. No scheduling support; trigger at the desired UTC time externally. Gmail enforces ~25 MB message size limit and daily send caps (~500 recipients/day personal, ~2,000/day Workspace)." }, { "slug": "GOOGLESUPER_SEND_EMAIL", "name": "Send Email", "description": "Sends an email via Gmail API using the authenticated user's Google profile display name. Sends immediately and is irreversible — confirm recipients, subject, body, and attachments before calling. At least one of 'to' (or 'recipient_email'), 'cc', or 'bcc' must be provided. At least one of subject or body must be provided. Requires `is_html=True` if the body contains HTML. All common file types including PNG, JPG, PDF, MP4, etc. are supported as attachments. Gmail API limits total message size to ~25 MB after base64 encoding. To reply in an existing thread, use GMAIL_REPLY_TO_THREAD instead. No scheduled send support; enforce timing externally." }, { "slug": "GOOGLESUPER_SEND_EVENTS", "name": "Send Events", "description": "Tool to send event data to Google Analytics 4 using the Measurement Protocol. Use when you need to track server-side events that supplement client-side gtag.js or Firebase tracking. The Measurement Protocol allows sending event data directly to GA4 from servers, applications, or other devices. Events are processed asynchronously and typically appear in reports within 24-48 hours. For validation, use the validation server endpoint first (mp/collect/validate)." }, { "slug": "GOOGLESUPER_SET_BASIC_FILTER", "name": "Set Basic Filter", "description": "Tool to set a basic filter on a sheet in a Google Spreadsheet. Use when you need to filter or sort data within a specific range on a sheet." }, { "slug": "GOOGLESUPER_SET_DATA_VALIDATION_RULE", "name": "Set Data Validation Rule", "description": "Tool to set or clear data validation rules (including dropdowns) on a range in Google Sheets. Use when you need to apply dropdown lists, range-based dropdowns, or custom formula validation to cells." }, { "slug": "GOOGLESUPER_SETTINGS_GET", "name": "Get Calendar Setting", "description": "Tool to return a single user setting for the authenticated user. Use when you need to retrieve a specific calendar setting value." }, { "slug": "GOOGLESUPER_SETTINGS_GET_IMAP", "name": "Get IMAP Settings", "description": "Retrieves the IMAP settings for a Gmail user account, including whether IMAP is enabled, auto-expunge behavior, expunge behavior, and maximum folder size." }, { "slug": "GOOGLESUPER_SETTINGS_GET_POP", "name": "Get POP settings", "description": "Tool to retrieve POP settings for a Gmail account. Use when you need to check the current POP configuration including access window and message disposition." }, { "slug": "GOOGLESUPER_SETTINGS_LIST", "name": "List Settings", "description": "Returns all user settings for the authenticated user. Results include multiple settings keyed by id (e.g., `timeZone`); locate a specific setting by its `id` field. `timeZone` values are IANA identifiers (e.g., `America/New_York`) — use directly in datetime and event logic; align with `timeZone` from GOOGLECALENDAR_GET_CALENDAR for consistent notification times." }, { "slug": "GOOGLESUPER_SETTINGS_SEND_AS_GET", "name": "Get send-as alias", "description": "Tool to retrieve a specific send-as alias configuration for a Gmail user. Use when you need to get details about a send-as email address including display name, signature, SMTP settings, and verification status. Fails with HTTP 404 if the specified address is not a member of the send-as collection." }, { "slug": "GOOGLESUPER_SETTINGS_WATCH", "name": "Watch Settings", "description": "Watch for changes to Settings resources." }, { "slug": "GOOGLESUPER_SHEET_FROM_JSON", "name": "Create sheet from JSON", "description": "DEPRECATED: Use GOOGLESHEETS_CREATE_GOOGLE_SHEET1 + GOOGLESHEETS_UPDATE_VALUES_BATCH (or GOOGLESHEETS_VALUES_UPDATE / GOOGLESHEETS_SPREADSHEETS_VALUES_APPEND) instead. Creates a new Google Spreadsheet and populates its first worksheet from `sheet_json`. When data is provided, the first item's keys establish the headers. An empty list creates an empty worksheet." }, { "slug": "GOOGLESUPER_SORT_RANGE", "name": "Sort Range", "description": "Sorts data within a specified range in a Google Sheet based on one or more sort criteria. Use this action when you need to reorder rows in a range by column values, with support for multi-level (cascading) sorts." }, { "slug": "GOOGLESUPER_SPREADSHEETS_SHEETS_COPY_TO", "name": "Copy Sheet to Another Spreadsheet", "description": "Tool to copy a single sheet from a spreadsheet to another spreadsheet. Use when you need to duplicate a sheet into a different spreadsheet." }, { "slug": "GOOGLESUPER_SPREADSHEETS_VALUES_APPEND", "name": "Append Values to Spreadsheet", "description": "Tool to append values to a spreadsheet. Use when you need to add new data to the end of an existing table in a Google Sheet." }, { "slug": "GOOGLESUPER_SPREADSHEETS_VALUES_BATCH_CLEAR", "name": "Batch Clear Spreadsheet Values", "description": "Tool to clear one or more ranges of values from a spreadsheet. Use when you need to remove data from specific cells or ranges while keeping formatting and other properties intact." }, { "slug": "GOOGLESUPER_SPREADSHEETS_VALUES_BATCH_GET_BY_DATA_FILTER", "name": "Batch Get Spreadsheet Values by Data Filter", "description": "Tool to return one or more ranges of values from a spreadsheet that match the specified data filters. Use when you need to retrieve specific data sets based on filtering criteria rather than entire sheets or fixed ranges." }, { "slug": "GOOGLESUPER_STOP_WATCH", "name": "Stop watch notifications", "description": "Tool to stop receiving push notifications for a Gmail mailbox. Use when you need to disable watch notifications previously set up via the watch endpoint." }, { "slug": "GOOGLESUPER_STOP_WATCH_CHANNEL", "name": "Stop Watch Channel", "description": "Tool to stop watching resources through a specified channel. Use this when you want to stop receiving notifications for a previously established watch. Both `id` and `resourceId` must be saved from the original watch response — they cannot be retrieved after the fact." }, { "slug": "GOOGLESUPER_SYNC_EVENTS", "name": "Sync Events (Deprecated)", "description": "DEPRECATED: Use GOOGLECALENDAR_EVENTS_LIST instead. EventsList already handles syncToken with automatic param stripping. Synchronizes Google Calendar events, performing a full sync if no `sync_token` is provided or if a 410 GONE error (due to an expired token) necessitates it, otherwise performs an incremental sync for events changed since the `sync_token` was issued." }, { "slug": "GOOGLESUPER_TEXT_SEARCH", "name": "Text Search", "description": "Searches for places on Google Maps using a textual query (e.g., \"restaurants in London\", \"Eiffel Tower\"). Results may include CLOSED_PERMANENTLY or TEMPORARILY_CLOSED places — filter by businessStatus=OPERATIONAL. Include city/region and business type in textQuery to avoid empty or irrelevant results. Deduplicate using id or formattedAddress, not name alone. Throttle to ~1 req/s; OVER_QUERY_LIMIT (HTTP 429) requires exponential backoff." }, { "slug": "GOOGLESUPER_TILES_CREATE_SESSION", "name": "Create Tiles Session", "description": "Tool to create a session token required for accessing 2D Tiles and Street View imagery. Use when you need to initialize tile-based map rendering or street view display. The session token is valid for approximately two weeks and must be included in all subsequent tile requests. Each call consumes quota — cache and reuse the returned token across all tile requests within its validity window rather than creating a new session per request." }, { "slug": "GOOGLESUPER_TRASH_FILE", "name": "Trash File", "description": "Tool to move a file or folder to trash (soft delete). Use when you need to delete a file but want to allow recovery via UNTRASH_FILE. This action is distinct from permanent deletion and provides a safer cleanup workflow." }, { "slug": "GOOGLESUPER_UNHIDE_DRIVE", "name": "Unhide Shared Drive", "description": "Tool to unhide a shared drive. Use when you need to restore a shared drive to the default view." }, { "slug": "GOOGLESUPER_UNMERGE_TABLE_CELLS", "name": "Unmerge Table Cells", "description": "Tool to unmerge previously merged cells in a table. Use this when you need to revert merged cells in a Google Document table back to their individual cell states." }, { "slug": "GOOGLESUPER_UNTRASH_FILE", "name": "Untrash File", "description": "Tool to restore a file from the trash. Use when you need to recover a deleted file. This action updates the file's metadata to set the 'trashed' property to false. Only works while the file remains in trash — recovery is impossible after trash is emptied via GOOGLEDRIVE_EMPTY_TRASH or auto-purged by policy." }, { "slug": "GOOGLESUPER_UNTRASH_MESSAGE", "name": "Untrash Message", "description": "Tool to remove a message from trash in Gmail. Use when you need to restore a previously trashed email message." }, { "slug": "GOOGLESUPER_UNTRASH_THREAD", "name": "Untrash thread", "description": "Tool to remove a thread from trash in Gmail. Use when you need to restore a deleted thread and its messages." }, { "slug": "GOOGLESUPER_UPDATE_ALBUM", "name": "Update Album", "description": "Updates an album's title or cover photo in Google Photos." }, { "slug": "GOOGLESUPER_UPDATE_CHART", "name": "Update Chart in Google Sheets", "description": "Update the specification of an existing chart in a Google Sheets spreadsheet. Use this action when you need to modify an existing chart's properties such as its title, chart type, data ranges, colors, axes, or other visual settings. This action updates the chart's specification but does not change its position or size on the sheet." }, { "slug": "GOOGLESUPER_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment on a Google Drive file. Use when you need to change the content of a comment. NOTE: The 'resolved' field is read-only in the Google Drive API. To resolve or reopen a comment, use CREATE_REPLY with action='resolve' or action='reopen'." }, { "slug": "GOOGLESUPER_UPDATE_DIMENSION_PROPERTIES", "name": "Update Dimension Properties (Hide/Unhide & Resize)", "description": "Tool to hide/unhide rows or columns and set row heights or column widths. Use when you need to change visibility or pixel sizing of dimensions in a Google Sheet." }, { "slug": "GOOGLESUPER_UPDATE_DOCUMENT_BATCH", "name": "Update Document Batch (Deprecated)", "description": "DEPRECATED: Use UpdateExistingDocument instead. Tool to apply one or more updates to a Google Document. Use when you need to perform batch operations on a document, such as inserting text, updating styles, or modifying document structure. Supports 35+ request types including insertText, replaceAllText, updateTextStyle, createParagraphBullets, insertTable, createHeader/Footer, and more. Each request is validated before being applied. If any request is invalid, the entire operation fails and nothing is applied." }, { "slug": "GOOGLESUPER_UPDATE_DOCUMENT_MARKDOWN", "name": "Update Document Markdown", "description": "Replaces the entire content of an existing Google Docs document with new Markdown text; requires edit permissions for the document." }, { "slug": "GOOGLESUPER_UPDATE_DOCUMENT_SECTION_MARKDOWN", "name": "Update Document Section Markdown", "description": "Tool to insert or replace a section of a Google Docs document with Markdown content. Use when you need to update only a section of a document by specifying start and optional end indices. Supports full Markdown formatting." }, { "slug": "GOOGLESUPER_UPDATE_DOCUMENT_STYLE", "name": "Update Document Style", "description": "Tool to update the overall document style, such as page size, margins, and default text direction. Use when you need to modify the global style settings of a Google Document." }, { "slug": "GOOGLESUPER_UPDATE_DRAFT", "name": "Update draft", "description": "Updates (replaces) an existing Gmail draft's content in-place by draft ID. This action replaces the entire draft content with the new message - it does not patch individual fields. All fields are optional; if not provided, you should provide complete draft content to avoid data loss." }, { "slug": "GOOGLESUPER_UPDATE_DRIVE", "name": "Update Shared Drive", "description": "Tool to update the metadata for a shared drive. Use when you need to modify properties like the name, theme, background image, or restrictions of a shared drive." }, { "slug": "GOOGLESUPER_UPDATE_EVENT", "name": "Update Google event", "description": "Updates an existing event in Google Calendar. REQUIRES event_id - you MUST first search for the event using GOOGLECALENDAR_FIND_EVENT or GOOGLECALENDAR_EVENTS_LIST to obtain the event_id. This is a full PUT replacement: omitted fields (including attendees, reminders, recurrence, conferencing) are cleared. Always provide the complete desired event state. Use GOOGLECALENDAR_PATCH_EVENT instead for partial edits." }, { "slug": "GOOGLESUPER_UPDATE_EXISTING_DOCUMENT", "name": "Update existing document", "description": "Applies programmatic edits, such as text insertion, deletion, or formatting, to a specified Google Doc using the `batchUpdate` API method." }, { "slug": "GOOGLESUPER_UPDATE_FILE_METADATA_PATCH", "name": "Update File Metadata (PATCH v2)", "description": "Tool to update file metadata using the Drive API v2 PATCH method. Use when you need to modify file properties like title, description, or labels using patch semantics." }, { "slug": "GOOGLESUPER_UPDATE_FILE_PROPERTY", "name": "Update Property (v2 API)", "description": "Tool to update a property on a file using Google Drive API v2. Use when you need to modify an existing custom property attached to a file." }, { "slug": "GOOGLESUPER_UPDATE_FILE_PUT", "name": "Update File (Metadata)", "description": "Updates file metadata. Uses PATCH semantics (partial update) as per Google Drive API v3 — only explicitly provided fields are updated, so omit fields you do not intend to overwrite. Use this tool to modify attributes of an existing file like its name, description, or parent folders. To move a file, supply add_parents and remove_parents together; omitting remove_parents creates multiple parents, omitting add_parents can orphan the file. Bulk updates may trigger 429 Too Many Requests; apply exponential backoff. Note: supports metadata updates only; file content updates are not yet implemented." }, { "slug": "GOOGLESUPER_UPDATE_FILE_REVISION_METADATA", "name": "Update File Revision Metadata", "description": "Updates ONLY the metadata properties of a specific file revision (keepForever, published, publishAuto, publishedOutsideDomain). IMPORTANT: This action does NOT update file content. To update file content, use EDIT_FILE or UPDATE_FILE_PUT instead. This action requires BOTH file_id AND revision_id parameters. Use LIST_REVISIONS to get available revision IDs for a file. Valid parameters: file_id (required), revision_id (required), keep_forever, published, publish_auto, published_outside_domain. Invalid parameters (use other actions): file_contents, mime_type, content, name - these are NOT supported by this action." }, { "slug": "GOOGLESUPER_UPDATE_IMAP_SETTINGS", "name": "Update IMAP settings", "description": "Tool to update IMAP settings for a Gmail account. Use when you need to modify IMAP configuration such as enabling/disabling IMAP, setting auto-expunge behavior, or configuring folder size limits." }, { "slug": "GOOGLESUPER_UPDATE_LABEL", "name": "Update Label", "description": "Tool to update the properties of an existing Gmail label. Use when you need to modify label name, visibility settings, or color." }, { "slug": "GOOGLESUPER_UPDATE_LANGUAGE_SETTINGS", "name": "Update Language Settings", "description": "Tool to update the language settings for a Gmail user. Use when you need to change the display language preference for the authenticated user or a specific Gmail account. The returned displayLanguage may differ from the requested value if Gmail selects a close variant." }, { "slug": "GOOGLESUPER_UPDATE_MEDIA_ITEM", "name": "Update Media Item", "description": "Updates a media item's description in Google Photos." }, { "slug": "GOOGLESUPER_UPDATE_PERMISSION", "name": "Update Permission", "description": "Tool to update a permission with patch semantics. Use when you need to modify an existing permission for a file or shared drive. Inherited or domain-managed permissions may not be editable; verify editability with GOOGLEDRIVE_LIST_PERMISSIONS before updating." }, { "slug": "GOOGLESUPER_UPDATE_POP_SETTINGS", "name": "Update POP settings", "description": "Tool to update POP settings for a Gmail account. Use when you need to configure POP access window or message disposition behavior." }, { "slug": "GOOGLESUPER_UPDATE_PROPERTY", "name": "Update Property", "description": "Tool to update an existing GA4 Property. Use when you need to modify property settings such as display name, time zone, currency code, or industry category." }, { "slug": "GOOGLESUPER_UPDATE_REPLY", "name": "Update Reply", "description": "Tool to update a reply to a comment on a Google Drive file. Use when you need to modify the content of an existing reply." }, { "slug": "GOOGLESUPER_UPDATE_SEND_AS", "name": "Update send-as alias", "description": "Tool to update a send-as alias for a Gmail user. Use when you need to modify display name, signature, reply-to address, or SMTP settings for a send-as email address. Gmail sanitizes HTML signatures before saving. Addresses other than the primary can only be updated by service accounts with domain-wide authority." }, { "slug": "GOOGLESUPER_UPDATE_SHEET_PROPERTIES", "name": "Update Sheet Properties", "description": "Tool to update properties of a sheet (worksheet) within a Google Spreadsheet, such as its title, index, visibility, tab color, or grid properties. Use this when you need to modify the metadata or appearance of a specific sheet." }, { "slug": "GOOGLESUPER_UPDATE_SPACE", "name": "Update Google Meet Space", "description": "Updates the settings of an existing Google Meet space. Requires organizer/host privileges and the meetings.space.created OAuth scope. REQUIRED PARAMETER: - name: The space identifier (e.g., 'spaces/jQCFfuBOdN5z'). This is always required to identify which space to update. OPTIONAL PARAMETERS: - config: The new configuration settings to apply (accessType, entryPointAccess, moderation, etc.) - updateMask: Specify which fields to update. If omitted, all provided config fields are updated. Example: To change access type, provide name='spaces/abc123' and config={'accessType': 'OPEN'}" }, { "slug": "GOOGLESUPER_UPDATE_SPREADSHEET_PROPERTIES", "name": "Update Spreadsheet Properties", "description": "Tool to update SPREADSHEET-LEVEL properties such as the spreadsheet's title, locale, time zone, or auto-recalculation settings. Use when you need to modify the overall configuration of a Google Spreadsheet. NOTE: To update individual SHEET properties (like renaming a specific sheet/tab), use GOOGLESHEETS_UPDATE_SHEET_PROPERTIES instead." }, { "slug": "GOOGLESUPER_UPDATE_TABLE_ROW_STYLE", "name": "Update Table Row Style", "description": "Tool to update the style of a table row in a Google Document. Use when you need to modify the appearance of specific rows within a table, such as setting minimum row height or marking rows as headers." }, { "slug": "GOOGLESUPER_UPDATE_TAB_PROPERTIES", "name": "Update Tab Properties", "description": "Updates properties of a document tab such as title, parent tab, index, and icon emoji. Use this action when you need to rename a tab, change its emoji icon, move it within the tab hierarchy, or reorganize tab structure." }, { "slug": "GOOGLESUPER_UPDATE_TASK", "name": "Update Task (Deprecated)", "description": "DEPRECATED: Use GOOGLETASKS_PATCH_TASK instead. Full-update (PUT-style) operation that overwrites unspecified fields with empty/default values, which can cause data loss. Prefer GOOGLETASKS_PATCH_TASK unless a complete field replacement is explicitly required." }, { "slug": "GOOGLESUPER_UPDATE_TASK_FULL", "name": "Update Task (Full Replacement)", "description": "Tool to fully replace an existing Google Task using PUT method. Use when you need to update the entire task resource, not just specific fields. This method requires all required fields (id, title) and replaces the complete task, unlike PATCH which supports partial updates." }, { "slug": "GOOGLESUPER_UPDATE_TASK_LIST", "name": "Update Task List", "description": "Updates the authenticated user's specified task list." }, { "slug": "GOOGLESUPER_UPDATE_TEAM_DRIVE", "name": "Update Team Drive (Deprecated)", "description": "Tool to update a Team Drive's metadata. Deprecated: Use the drives.update endpoint instead. Use when you need to modify Team Drive properties." }, { "slug": "GOOGLESUPER_UPDATE_USER_ATTRIBUTES_VALUES", "name": "Update User Attributes Values", "description": "Update user attribute values for a resource. Use this action to set or update custom attributes for a user within an organization or project. When setting a value for an attribute key that also exists in SAML, the Sanity value will take precedence and shadow the SAML value." }, { "slug": "GOOGLESUPER_UPDATE_VACATION_SETTINGS", "name": "Update Vacation Settings", "description": "Tool to update vacation responder settings for a Gmail user. Use when you need to configure out-of-office auto-replies." }, { "slug": "GOOGLESUPER_UPDATE_VALUES_BATCH", "name": "Batch update spreadsheet values", "description": "Tool to set values in one or more ranges of a spreadsheet. Use when you need to update multiple ranges in a single operation for better performance." }, { "slug": "GOOGLESUPER_UPLOAD_FILE", "name": "Upload File", "description": "Uploads a file (max 5MB) to Google Drive, placing it in the specified folder or root if no valid folder ID is provided. Always creates a new file (never updates existing); use GOOGLEDRIVE_EDIT_FILE to update with a stable file_id. Uploaded files are private by default; configure sharing via GOOGLEDRIVE_ADD_FILE_SHARING_PREFERENCE." }, { "slug": "GOOGLESUPER_UPLOAD_FROM_URL", "name": "Upload File from URL to Drive", "description": "Tool to fetch a file from a provided URL server-side and upload it into Google Drive. Use when you need to reliably persist externally hosted files into Drive without client-side downloads or temporary storage." }, { "slug": "GOOGLESUPER_UPLOAD_MEDIA", "name": "Upload Media", "description": "Upload a media file to Google Photos. Supports images (up to 200MB) and videos (up to 20GB)." }, { "slug": "GOOGLESUPER_UPLOAD_UPDATE_FILE", "name": "Upload/Update File Content", "description": "Tool to update file content in Google Drive by uploading new binary content. Use when you need to replace the contents of an existing file with new file data." }, { "slug": "GOOGLESUPER_UPSERT_ROWS", "name": "Upsert Rows (Smart Update/Insert)", "description": "Upsert rows - update existing rows by key, append new ones. Automatically handles column mapping and partial updates. Use for: CRM syncs (match Lead ID), transaction imports (match Transaction ID), inventory updates (match SKU), calendar syncs (match Event ID). Features: - Auto-adds missing columns to sheet - Partial column updates (only update Phone + Status, preserve other columns) - Column order doesn't matter (auto-maps by header name) - Prevents duplicates by matching key column Example inputs: - Contact update: keyColumn='Email', headers=['Email','Phone','Status'], data=[['john@ex.com','555-0101','Active']] - Inventory sync: keyColumn='SKU', headers=['SKU','Stock','Price'], data=[['WIDGET-001',50,9.99],['GADGET-002',30,19.99]] - CRM lead update: keyColumn='Lead ID', headers=['Lead ID','Score','Status'], data=[['L-12345',85,'Hot']] - Partial update: keyColumn='Email', headers=['Email','Phone'] (only updates Phone, preserves Name/Address/etc)" }, { "slug": "GOOGLESUPER_VALIDATE_EVENTS", "name": "Validate Events", "description": "Tool to validate Measurement Protocol events before sending them to production. Use when you need to verify event structure and parameters are correct before sending real data." }, { "slug": "GOOGLESUPER_VALUES_GET", "name": "Get spreadsheet values", "description": "Returns a range of values from a spreadsheet. Use when you need to read data from specific cells or ranges in a Google Sheet." }, { "slug": "GOOGLESUPER_VALUES_UPDATE", "name": "Update spreadsheet values", "description": "Tool to set values in a range of a Google Spreadsheet. Use when you need to update or overwrite existing cell values in a specific range." }, { "slug": "GOOGLESUPER_WATCH_CHANGES", "name": "Watch Drive Changes", "description": "Tool to subscribe to changes for a user or shared drive in Google Drive. Use when you need to monitor a Google Drive for modifications and receive notifications at a specified webhook URL. Notifications may be batched rather than per-change; design handlers to be idempotent and fetch all changes since the last known page_token on each notification." }, { "slug": "GOOGLESUPER_WATCH_FILE", "name": "Watch File for Changes", "description": "Tool to subscribe to push notifications for changes to a specific file. Use when you need to monitor a file for modifications and receive real-time notifications at a webhook URL." } ], "triggers": [ { "slug": "GOOGLESUPER_AGGREGATE_METRIC_CHANGED_TRIGGER", "name": "Aggregate Metric Changed", "description": "Triggers when an aggregate metric (SUM/COUNT/AVG/MIN/MAX) changes in a Google Sheets spreadsheet.\n This trigger monitors an aggregate calculation on a target column (optionally filtered by a search column/value)\n and fires when the calculated result changes." }, { "slug": "GOOGLESUPER_ATTENDEE_RESPONSE_CHANGED_TRIGGER", "name": "Attendee Response Changed", "description": "Polling trigger that fires when any attendee's RSVP changes to\n accepted, declined, or tentative. Returns attendee info and current status." }, { "slug": "GOOGLESUPER_CELL_RANGE_VALUES_CHANGED_TRIGGER", "name": "Cell Range Values Changed", "description": "Triggers when values in a specified A1 range change in Google Sheets.\n This trigger monitors a specific cell or range of cells and fires when any values change." }, { "slug": "GOOGLESUPER_COMMENT_ADDED_TRIGGER", "name": "Comment Added (Docs/Sheets/Slides)", "description": "Triggers when a new comment is added to Google Docs, Sheets, or Slides." }, { "slug": "GOOGLESUPER_CONDITIONAL_FORMAT_RULE_CHANGED_TRIGGER", "name": "Conditional Format Rule Changed", "description": "Triggers when conditional formatting rules change in a Google Spreadsheet.\n Detects when rules are added, updated, or removed.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESUPER_DATA_VALIDATION_RULE_CHANGED_TRIGGER", "name": "Data Validation Rule Changed", "description": "Triggers when data validation rules change (added/updated/removed) in a Google Spreadsheet.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESUPER_DEVELOPER_METADATA_CHANGED_TRIGGER", "name": "Developer Metadata Changed", "description": "Triggers when developer metadata entries change (new/updated/removed) in a Google Spreadsheet.\n Uses snapshot-based diffing to detect changes between polls." }, { "slug": "GOOGLESUPER_DOCUMENT_CREATED_TRIGGER", "name": "New Document Created", "description": "Triggers when a new Google Doc is created.\n This trigger monitors Google Docs and fires when new documents are detected.\n Uses timestamp filtering to efficiently poll for new documents." }, { "slug": "GOOGLESUPER_DOCUMENT_DELETED_TRIGGER", "name": "Document Deleted", "description": "Triggers when an existing Google Doc is deleted (moved to trash).\n This trigger monitors Google Docs and fires when documents are trashed." }, { "slug": "GOOGLESUPER_DOCUMENT_PLACEHOLDER_FILLED_TRIGGER", "name": "Document Placeholder Filled", "description": "Triggers when a Google Doc's plain text changes such that a configured placeholder\n token/pattern is no longer present (i.e., the document has been filled in).\n\n This trigger monitors a specific Google Doc and fires when a placeholder pattern\n that was previously present is no longer found in the document's plain text." }, { "slug": "GOOGLESUPER_DOCUMENT_SEARCH_UPDATE_TRIGGER", "name": "Document Search Update", "description": "Triggers when a Google Doc matching a user-defined search query is newly created or updated since the last poll.\n This trigger uses timestamp filtering to efficiently monitor documents." }, { "slug": "GOOGLESUPER_DOCUMENT_STRUCTURE_CHANGED_TRIGGER", "name": "Document Structure Changed", "description": "Triggers when a Google Doc's structure changes (headers/footers added/removed, tables/images count changes).\n This trigger monitors a specific document for structural changes like:\n - Headers added or removed\n - Footers added or removed\n - Tables added or removed\n - Images (inline objects) added or removed\n - Positioned objects added or removed\n - Footnotes added or removed" }, { "slug": "GOOGLESUPER_DOCUMENT_UPDATED_TRIGGER", "name": "Document Updated", "description": "Triggers when an existing Google Doc is updated or modified.\n This trigger monitors Google Docs and fires when documents are updated." }, { "slug": "GOOGLESUPER_DOCUMENT_WORD_COUNT_THRESHOLD_TRIGGER", "name": "Document Word Count Threshold", "description": "Triggers when a Google Doc's word/character count crosses a user-defined threshold.\n This trigger monitors a specific Google Doc and fires when its word or character count\n becomes greater than or equal to the configured threshold value." }, { "slug": "GOOGLESUPER_EMAIL_SENT_TRIGGER", "name": "Email Sent", "description": "Triggers when a Gmail message is sent by the authenticated user. It polls the\n 'SENT' label and emits metadata including sender, recipients, subject, timestamp,\n and thread ID." }, { "slug": "GOOGLESUPER_EVENT_CANCELED_DELETED_TRIGGER", "name": "Event Canceled or Deleted", "description": "Triggers when a Google Calendar event is cancelled or deleted.\n Returns minimal data: event_id, summary (if available), and cancellation timestamp." }, { "slug": "GOOGLESUPER_EVENT_STARTING_SOON_TRIGGER", "name": "Event Starting Soon", "description": "Triggers when a calendar event is within a configured number of minutes from starting.\n Returns event details, time remaining, attendees, and join links when available." }, { "slug": "GOOGLESUPER_FILE_CREATED_TRIGGER", "name": "File Created", "description": "Triggers when a new file is created in Google Drive." }, { "slug": "GOOGLESUPER_FILE_DELETED_OR_TRASHED_TRIGGER", "name": "File Deleted or Trashed", "description": "Triggers when a file is moved to trash or permanently deleted in Drive." }, { "slug": "GOOGLESUPER_FILE_SHARED_PERMISSIONS_ADDED", "name": "File Shared (Permissions Added)", "description": "Triggers when new sharing permissions are granted to a file or folder.\n\n Uses Drive's `changes.list` endpoint with inline `permissions` in the\n `fields` mask so each change carries the file's current permission set\n provider-atomically. We diff that against `seen_permission_keys` to\n identify newly added grants. Drive page tokens are the primary cursor;\n if Drive rejects a stored token, the trigger raises `PollingTriggerError`\n without clearing state rather than silently re-baselining and dropping\n events.\n\n Limitation: truly ephemeral permissions (added and revoked between two\n polls without any other file modification in between) are not detected.\n Drive Activity API would catch those but requires an additional OAuth\n scope and a different payload contract." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_super_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/documents,https://www.googleapis.com/auth/calendar,https://www.googleapis.com/auth/adwords,https://mail.google.com/,https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/contacts.readonly,https://www.googleapis.com/auth/spreadsheets,https://www.googleapis.com/auth/presentations,https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/analytics,https://www.googleapis.com/auth/tasks,https://www.googleapis.com/auth/photoslibrary.edit.appcreateddata,https://www.googleapis.com/auth/photoslibrary.readonly.appcreateddata" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Google Cloud API key (starts with 'AIza'). Create it in Google Cloud Console → APIs & Services → Credentials, and enable the API you need (e.g. Maps).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browser_tool", "name": "Browser Tool", "logo": "https://logos.composio.dev/api/browser_tool", "description": "Composio Browser Tool enables AI Agents and LLMs to automate web interactions, perform web scraping, and conduct automated testing. Use cases include data extraction, form automation, website monitoring, and intelligent web navigation.", "category": "ai agents", "authSchemes": [ "NO_AUTH" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BROWSER_TOOL_CREATE_TASK", "name": "Run Browser Task", "description": "Run an AI-powered browser automation task. The AI agent will control a cloud browser to complete your task. It can: - Navigate websites, click buttons, fill forms - Extract data and return results - Handle multi-step workflows (login -> navigate -> extract) - Solve CAPTCHAs and handle dynamic content If there is no running browser session in context, call CreateTask to start one. AFTER CREATING A TASK: 1. Use GetSession with browser_session_id to get the liveUrl - share with user to watch live 2. Use WatchTask with watch_task_id to check progress and get the final result 3. Use StopTask if you need to abort TIPS FOR GOOD TASKS: - Be specific: \"Click login, enter email 'test@test.com', click submit\" - Break complex workflows into smaller tasks" }, { "slug": "BROWSER_TOOL_GET_OUTPUT_FILE", "name": "Download Task File", "description": "Get a download URL for a file generated by a task. When a task downloads or creates files (PDFs, images, spreadsheets, etc.), they appear in WatchTask's outputFiles list. Use this to get a download URL. The download URL is temporary (presigned) - download promptly." }, { "slug": "BROWSER_TOOL_GET_SESSION", "name": "Get Session Live URL", "description": "Get the live URL to watch a browser session in real-time. Call this right after CreateTask to get the liveUrl. Always share this URL with the user so they can watch the AI agent working in the browser. The liveUrl opens a visual stream showing exactly what the browser agent sees and does." }, { "slug": "BROWSER_TOOL_STOP_TASK", "name": "Stop Browser Task", "description": "Kill a browser task and its session. Use this when the browser agent is in a bad state: - Task is stuck or taking too long - WatchTask shows the agent going in the wrong direction - Agent is looping or making no progress After stopping, call CreateTask again to start fresh with a new browser." }, { "slug": "BROWSER_TOOL_WATCH_TASK", "name": "Watch Browser Task", "description": "Poll a browser task to check progress and get results. Call this after CreateTask to monitor the task: - status='started' means still running, poll again - status='finished' means done, check output and is_success - status='stopped' means aborted - status='failed' means an error occurred Returns what the agent is doing (current_goal, current_url), screenshots from each step, and any files generated. If the agent is going wrong, use StopTask to kill it and start fresh." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Browser Tool", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "yousearch", "name": "You.com", "logo": "https://logos.composio.dev/api/yousearch", "description": "YouSearch is a search engine or search tool that enables users to find relevant information, possibly with enhanced filtering or privacy-focused features", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "YOUSEARCH_YOU_SEARCH", "name": "You.com Web Search", "description": "Search the web using You.com's search API. Returns LLM-ready web results and news articles based on your query. Supports advanced filtering by country, language, freshness, and content safety." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "yousearch_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your YouSearch API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linkup", "name": "Linkup", "logo": "https://logos.composio.dev/api/linkup", "description": "Linkup is a search engine that allows you to search the web for relevant results.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINKUP_CREATE_RESPONSE", "name": "Create Response", "description": "Proxy endpoint for OpenAI-compatible response generation. Used when the OpenAI client's base URL is set to Linkup. Supports 'linkup-standard' for faster results and 'linkup-deep' for more comprehensive results." }, { "slug": "LINKUP_FETCH_WEBPAGE", "name": "Fetch Webpage", "description": "Fetch and retrieve a markdown representation of a webpage from a given URL. Supports optional JavaScript rendering for single-page applications, raw HTML extraction, and image extraction from the webpage content. Use this when you need to extract clean, structured content from web pages." }, { "slug": "LINKUP_GET_CREDITS_BALANCE", "name": "Get Credits Balance", "description": "Tool to retrieve the current credits balance for your Linkup account. Returns the number of credits remaining that can be used for search and fetch operations." }, { "slug": "LINKUP_SEARCH", "name": "Search Linkup", "description": "Search the web and retrieve insights using Linkup's API. This action provides three output modes: natural language answers with sources (sourcedAnswer), raw search context (searchResults), or custom structured JSON (structured). Supports filtering by date range and domains, with optional image results. Standard depth uses 1 credit, deep search uses 10 credits. Only indexes publicly available web content; private repositories and internal endpoints return no results." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API Key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "If you don't have an API Key, you can get one by signing up at https://linkup.so", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "listennotes", "name": "Listen Notes", "logo": "https://logos.composio.dev/api/listennotes", "description": "Listen Notes is a powerful podcast search engine and database that allows you to discover, explore, and listen to millions of podcasts and episodes worldwide.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LISTENNOTES_BATCH_FETCH_BASIC_META_DATA_FOR_EPISODES", "name": "Post episodes by ids", "description": "The listennotestest_episodes_post endpoint allows users to retrieve metadata for multiple podcast episodes in a single request. This POST endpoint accepts a list of episode IDs and returns detailed information about each specified episode. It's particularly useful for bulk retrieval of episode data, reducing the number of API calls needed when working with multiple episodes. The endpoint should be used when you need to fetch information about specific, known episodes rather than searching or browsing. Keep in mind that this endpoint is focused on retrieval only and does not support creating, updating, or deleting episode data." }, { "slug": "LISTENNOTES_BATCH_FETCH_BASIC_META_DATA_FOR_PODCASTS", "name": "Create podcast via form data", "description": "The listennotestest_podcasts_post endpoint allows users to retrieve information about multiple podcasts using various identifiers such as Listen Notes IDs, RSS feed URLs, Apple Podcasts IDs, or Spotify IDs. It can optionally fetch the latest episodes for the specified podcasts. This endpoint is useful for bulk podcast data retrieval and for staying updated on recent episodes across multiple shows. It's particularly valuable for applications that need to sync or update podcast information from different platforms. The endpoint has a limit of returning up to 15 latest episodes per request, so for comprehensive episode history, multiple calls may be necessary." }, { "slug": "LISTENNOTES_FETCH_A_CURATED_LIST_OF_PODCASTS_BY_ID", "name": "Retrieve curated podcast by id", "description": "Retrieves detailed information about a specific curated podcast using its unique identifier. This endpoint allows users to access comprehensive data about a carefully selected podcast collection, including its contents, curator information, and associated metadata. It's particularly useful for applications that want to display or analyze curated podcast lists. The endpoint should be used when detailed information about a known curated podcast is required, but it won't provide a list of all available curated podcasts or allow modifications to the curated content." }, { "slug": "LISTENNOTES_FETCH_A_LIST_OF_BEST_PODCASTS_BY_GENRE", "name": "Fetch best podcasts list", "description": "The getBestPodcasts endpoint retrieves a curated list of the best podcasts from the Listen Notes platform. It allows users to access a collection of top-rated or popular podcasts, which can be filtered by genre, region, and content rating. This endpoint is useful for discovering high-quality podcast content, creating recommendation systems, or populating podcast directories. The results are paginated for efficient data retrieval and can be customized to exclude explicit content if required. While it provides a valuable overview of top podcasts, it may not include real-time updates or notifications about new episodes or changes in podcast rankings." }, { "slug": "LISTENNOTES_FETCH_A_LIST_OF_PODCAST_GENRES", "name": "Retrieve genre list", "description": "The GetGenres endpoint retrieves a comprehensive list of available genres within the listennotestest platform. This endpoint is designed to provide users with up-to-date information on content categories, which can be used for filtering, organizing, or subscribing to specific types of content. It's particularly useful for applications that need to populate genre-based dropdown menus, create content recommendation systems, or set up genre-specific notification preferences. The endpoint does not require any input parameters, making it simple to use for fetching the entire genre catalog. However, users should be aware that the response may contain a large amount of data, depending on the number of genres available in the system." }, { "slug": "LISTENNOTES_FETCH_A_LIST_OF_YOUR_PLAYLISTS", "name": "Get playlists", "description": "Retrieves a list of playlists from the Listen Notes platform. This endpoint allows users to fetch all available playlists associated with their account or publicly accessible playlists. It should be used when you need to display a collection of playlists, such as in a user's library or for browsing purposes. The endpoint returns basic information about each playlist, which may include the playlist name, creator, number of episodes, and other relevant metadata. Note that this endpoint likely returns a limited number of playlists per request, and pagination might be necessary for retrieving large collections. It does not provide detailed information about the episodes within each playlist; separate API calls would be required to fetch that level of detail." }, { "slug": "LISTENNOTES_FETCH_A_RANDOM_PODCAST_EPISODE", "name": "Listen to just listen endpoint", "description": "The 'just_listen' endpoint is a basic listener or health check mechanism for the listennotestest app. It allows users to verify the availability and responsiveness of the service without requiring any input parameters. This endpoint should be used for monitoring the status of the listennotestest service or as a simple ping to ensure the API is operational. It's important to note that this endpoint likely doesn't provide any specific data about podcasts or user accounts. The response is expected to be minimal, possibly just confirming that the service is up and running. While useful for basic health checks, it should not be relied upon for any complex operations or data retrieval within the listennotestest ecosystem." }, { "slug": "LISTENNOTES_FETCH_AUDIENCE_DEMOGRAPHICS_FOR_A_PODCAST", "name": "Get podcast audience by id", "description": "Retrieves audience information for a specific podcast identified by its unique ID. This endpoint allows users to access demographic data, listening statistics, or other audience-related metrics for a particular podcast. It's useful for podcast creators, marketers, or analysts who want to understand their audience better or track the performance of their content. The tool returns aggregated data about the podcast's listeners, which may include but is not limited to age groups, geographic distribution, listening habits, or engagement metrics. It should be used when detailed audience insights for a specific podcast are needed. Note that this endpoint does not provide real-time listener counts or individual listener data to protect user privacy." }, { "slug": "LISTENNOTES_FETCH_CURATED_LISTS_OF_PODCASTS", "name": "Get curated podcasts", "description": "Retrieves a list of curated podcasts from the Listen Notes platform. This endpoint provides access to a collection of handpicked and organized podcasts, likely curated by experts or algorithms. It's useful for discovering high-quality content or featuring recommended podcasts to users. The endpoint returns a selection of podcasts, possibly grouped by themes, genres, or other criteria. While it offers a curated selection, it may not provide exhaustive search capabilities or personalized recommendations based on individual user preferences." }, { "slug": "LISTENNOTES_FETCH_DETAILED_META_DATA_FOR_AN_EPISODE_BY_ID", "name": "Retrieve episode by id", "description": "Retrieves detailed information about a specific episode using its unique identifier. This endpoint allows users to access comprehensive data about an individual episode, which may include metadata such as title, description, publication date, duration, and associated podcast information. It's particularly useful when you need to display or process information about a single episode. The endpoint should be used when detailed information about a known episode is required, but it won't provide lists of episodes or search functionality. Note that the response structure and the exact fields returned are not specified in the given schema, so the actual content may vary based on the API implementation." }, { "slug": "LISTENNOTES_FETCH_PODCAST_EPISODES_BY_ID", "name": "Fetch Podcast Details And Episodes", "description": "Retrieves detailed information about a specific podcast using its unique identifier. This endpoint allows users to fetch comprehensive data about a particular podcast, including but not limited to its title, description, author, episode list, and other metadata. It's ideal for applications that need to display in-depth information about a single podcast or integrate podcast data into their systems. The endpoint should be used when detailed information about a known podcast is required, rather than for searching or browsing multiple podcasts. Note that this endpoint only provides information for podcasts that exist within the Listen Notes database and may not include real-time updates for very recent changes to the podcast." }, { "slug": "LISTENNOTES_FETCH_PODCAST_LANGUAGES", "name": "Fetch podcast languages", "description": "Retrieves a list of supported languages in the Listen Notes API. This endpoint provides information about the languages available for use within the platform, which can be crucial for internationalization and localization efforts. Use this endpoint when you need to know which languages are supported by the API, such as for filtering content or setting user preferences. The response likely includes language codes and possibly their corresponding names or additional metadata. Note that this endpoint doesn't accept any parameters, offering a static list of supported languages." }, { "slug": "LISTENNOTES_FETCH_PODCASTS_BY_A_PUBLISHER_S_DOMAIN_NAME", "name": "Get podcast domains by name", "description": "Retrieves a list of podcasts associated with a specified domain name. This endpoint allows users to discover podcasts that are produced or hosted by a particular website or organization. It's useful for content aggregation, competitive analysis, or finding podcasts related to specific brands or companies. The tool returns podcast information for the given domain, which may include multiple podcasts if the domain produces several shows. It should be used when you need to find all podcasts linked to a specific web domain. Note that this endpoint may not capture podcasts that are hosted on general podcast platforms unless they have a custom domain setup." }, { "slug": "LISTENNOTES_FETCH_RECOMMENDATIONS_FOR_AN_EPISODE", "name": "Get episode recommendations by id", "description": "Retrieves a list of recommended podcast episodes based on a specific episode ID. This endpoint utilizes the Listen Notes API to generate personalized content suggestions, helping users discover new episodes similar to ones they've already enjoyed. It's ideal for enhancing user engagement and content discovery within podcast applications. The recommendations are likely based on factors such as episode content, listener behavior, and popularity. Use this endpoint when you want to provide users with tailored podcast suggestions or implement a \"You might also like\" feature. Note that the quality and relevance of recommendations may vary depending on the popularity and metadata of the source episode." }, { "slug": "LISTENNOTES_FETCH_RECOMMENDATIONS_FOR_A_PODCAST", "name": "Get podcast recommendations by id", "description": "Retrieves a list of podcast recommendations based on a specified podcast ID. This endpoint is designed to help users discover new podcasts that are similar or related to a podcast they already enjoy. It can be used to enhance user experience by providing personalized content suggestions, increasing engagement, and broadening the listener's podcast library. The recommendations are likely based on factors such as genre, topics, popularity, and listening patterns of users with similar interests. While this tool is excellent for content discovery, it should not be relied upon for comprehensive podcast information or metadata retrieval." }, { "slug": "LISTENNOTES_FETCH_RELATED_SEARCH_TERMS", "name": "Fetch related searches data", "description": "Retrieves a list of related search queries based on the current context or user's recent search activity. This endpoint is useful for enhancing user experience by suggesting alternative or complementary search terms, potentially increasing engagement and discovery within the platform. It should be used when you want to provide users with additional search options or ideas related to their current interests or queries. The endpoint does not require any explicit parameters, relying instead on server-side logic to determine the context for generating related searches. Note that the specific algorithm for generating related searches and the format of the response are not detailed in the schema, so integrators should be prepared to handle various response structures." }, { "slug": "LISTENNOTES_FETCH_SUPPORTED_REGIONS", "name": "Fetch Supported Regions", "description": "Retrieves information about available regions in the listennotestest platform. This endpoint allows users to fetch a list of regions, which can be used for filtering content, setting up notifications, or managing regional preferences. It should be used when the client needs to know what regions are supported by the platform or when regional data is required for other operations. The endpoint returns basic details about each region, potentially including region codes, names, and any associated metadata. It does not provide detailed statistics or real-time data about events within these regions." }, { "slug": "LISTENNOTES_FETCH_TRENDING_SEARCH_TERMS", "name": "Retrieve trending searches", "description": "Retrieves a list of currently trending search terms related to podcasts. This endpoint provides real-time insights into popular topics and interests among podcast listeners. It's particularly useful for content creators, marketers, and researchers who want to stay updated on current trends in the podcast industry. The endpoint returns a curated list of search terms, likely ranked by popularity or recent search volume. While it offers valuable trend data, it does not provide detailed analytics or historical trend information. Users should be aware that the trending searches may change frequently and might be influenced by various factors such as current events, seasonal topics, or platform-specific promotions." }, { "slug": "LISTENNOTES_FIND_EPISODES_BY_TITLE", "name": "Search Episode Titles", "description": "The search_episode_titles endpoint allows users to search for and retrieve episode titles based on specified criteria. It provides a powerful way to find relevant episodes quickly, supporting real-time updates and notifications for changes in episode titles. This endpoint is particularly useful for applications that need to display or monitor podcast content, offering up-to-date information on episode titles across various shows or categories. While it excels at title searches, it may not provide full episode details or content, focusing primarily on the title information." }, { "slug": "LISTENNOTES_FULL_TEXT_SEARCH", "name": "Search operation endpoint", "description": "The search endpoint allows users to query notifications or events within the listennotestest platform. It provides a way to find specific notifications based on keywords or identifiers, helping users locate relevant information quickly. This GET request likely returns a list of matching notifications or events, which can be useful for monitoring specific activities or retrieving historical data. The endpoint supports basic search functionality and potentially includes options for pagination and sorting to manage large result sets efficiently." }, { "slug": "LISTENNOTES_GET_PLAYLIST_BY_ID", "name": "Fetch Playlist Info", "description": "Retrieves detailed information about a specific playlist using its unique identifier. This endpoint allows users to fetch comprehensive data about a playlist, including its name, description, creator, tracks, and other relevant metadata. It's particularly useful when you need to display or process information about a known playlist. The endpoint should be used when you have the playlist's ID and require its current, up-to-date details. Note that this endpoint only provides read access to playlist data and does not allow for modifications. It may not include real-time listening statistics or user-specific interaction data with the playlist." }, { "slug": "LISTENNOTES_REFRESH_RSS_FEED_OF_A_PODCAST", "name": "Post podcast rss by id", "description": "Retrieves or generates an RSS feed for a specific podcast identified by its unique ID. This endpoint allows users to access the podcast's content in a standardized RSS format, which can be used for syndication or integration with podcast players and aggregators. The RSS feed typically includes information such as episode titles, descriptions, publication dates, and audio file URLs. Use this endpoint when you need to programmatically access a podcast's RSS feed, for example, to set up notifications for new episodes or to integrate the podcast content into another application. Note that this endpoint does not create or modify the podcast itself; it only provides access to the existing podcast data in RSS format." }, { "slug": "LISTENNOTES_REQUEST_TO_DELETE_A_PODCAST", "name": "Delete podcast by id", "description": "Deletes a specific podcast from the system based on its unique identifier. This endpoint should be used when you want to permanently remove a podcast and all its associated data from the platform. It's important to note that this action is irreversible, so it should be used with caution. Once a podcast is deleted, it cannot be recovered, and all related notifications and updates for that podcast will cease. This endpoint is typically used for managing outdated content, removing test data, or complying with content removal requests." }, { "slug": "LISTENNOTES_SPELL_CHECK_ON_A_SEARCH_TERM", "name": "Spell check retrieval", "description": "The spellcheck endpoint provides a spell-checking service for text input. It allows users to verify the spelling of words or phrases, likely related to audio content or podcast descriptions within the listennotestest platform. This tool should be used when there's a need to ensure the correctness of textual content, such as titles, descriptions, or tags associated with audio files or podcasts. The endpoint doesn't specify any parameters, suggesting it might use query parameters for input or have a default behavior. It's important to note that without more specific information, the exact input method and response format are not clear, which may require additional documentation or testing to fully understand its usage." }, { "slug": "LISTENNOTES_SUBMIT_A_PODCAST_TO_LISTEN_NOTES_DATABASE", "name": "Submit podcast rss url", "description": "The submit_podcast endpoint allows users to submit a podcast for inclusion in the Listen Notes database. This tool should be used when a user wants to add a new podcast to the Listen Notes platform or update an existing podcast's information. It requires the RSS feed URL of the podcast and optionally accepts an email address for status notifications. The endpoint is designed for simplicity, focusing solely on podcast submission without providing additional podcast management features. Note that submission does not guarantee immediate inclusion; podcasts are subject to review before being added to the database." }, { "slug": "LISTENNOTES_TYPEAHEAD_SEARCH", "name": "Get typeahead suggestions", "description": "The typeahead endpoint provides real-time search suggestions as users type their queries. It's designed to enhance the user experience by offering relevant autocomplete options, making it easier for users to find podcasts, episodes, or other content on the Listen Notes platform. This endpoint should be used to implement a dynamic search box that updates suggestions with each keystroke. It's particularly useful for improving search efficiency and accuracy by guiding users towards valid search terms. The endpoint likely returns a JSON array of matching results, which may include basic information like titles, IDs, and possibly thumbnail images for each suggestion. It's important to note that this endpoint is intended for quick, lightweight suggestions and may not provide full details about each result - for comprehensive information, additional API calls might be necessary." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "listennotes_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Listen notes API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "typefully", "name": "Typefully", "logo": "https://logos.composio.dev/api/typefully", "description": "Typefully is a platform for creating and managing AI-powered content", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TYPEFULLY_CREATE_DRAFT", "name": "Create Draft (v2)", "description": "Create a new draft with platform-specific content for multi-platform publishing. Use this action when you need to create a draft that can target multiple social media platforms (X, LinkedIn, Threads, Bluesky, Mastodon) simultaneously. The draft can be saved for later editing, scheduled for a specific time or next available slot, or published immediately. Supports scheduling options via publish_at: \"now\" for immediate publishing, \"next-free-slot\" for your next available posting window, or an ISO 8601 datetime string with timezone for a specific scheduled time." }, { "slug": "TYPEFULLY_CREATE_TAG", "name": "Create Tag", "description": "Creates a new tag for organizing drafts within a social set in Typefully. Use this action when you need to add a new organizational tag to help categorize and group drafts within a specific social account. The tag's slug is automatically generated from the provided name." }, { "slug": "TYPEFULLY_DELETE_DRAFT", "name": "Delete Draft", "description": "Permanently deletes a draft from Typefully. This action cannot be undone. Use this action when you need to remove a draft that is no longer needed. WARNING: This is a destructive operation. Once deleted, the draft cannot be recovered." }, { "slug": "TYPEFULLY_GET_CURRENT_USER", "name": "Get Current User", "description": "Get the current authenticated user's information. Returns user details including profile information, email, signup date, and optional profile image URL. Use this action when you need to retrieve the profile information of the currently authenticated Typefully user, such as for displaying user details or verifying authentication." }, { "slug": "TYPEFULLY_GET_DRAFT", "name": "Get Draft", "description": "Retrieves a single draft by its ID with full details including platform-specific content, tags, status, and scheduling information. Use this action when you need to retrieve comprehensive details about a specific draft in Typefully. This action requires both the social_set_id and draft_id path parameters to identify the specific draft." }, { "slug": "TYPEFULLY_GET_MEDIA_STATUS", "name": "Get Media Status", "description": "Check the processing status of an uploaded media file. Use when you need to poll the status of a media file after uploading it. Poll this endpoint until status becomes 'ready' before using the media in drafts. Returns status (processing/ready/failed) and media_urls when ready. This action is read-only and idempotent." }, { "slug": "TYPEFULLY_GET_QUEUE", "name": "Get Queue", "description": "Get the scheduled content queue for a social set within a date range. Returns upcoming scheduled drafts organized by day with their scheduled times. Use this action when you need to view what content is scheduled for a specific date range for a particular social media account in Typefully." }, { "slug": "TYPEFULLY_GET_QUEUE_SCHEDULE", "name": "Get Queue Schedule", "description": "Get the queue schedule configuration for a social set, including posting slots and timezone settings. Use this action when you need to retrieve the scheduling rules and timezone configuration for a social media account in Typefully." }, { "slug": "TYPEFULLY_GET_SOCIAL_SET", "name": "Get Social Set", "description": "Get detailed information about a specific social set, including all connected platforms (X, LinkedIn, Mastodon, Threads, Bluesky) with account details and profile information. Use this action when you need to retrieve the details and platform connections for a specific social set by its ID." }, { "slug": "TYPEFULLY_INITIALIZE_MEDIA_UPLOAD", "name": "Initialize Media Upload", "description": "Initializes a media upload by returning a presigned URL. Use when you need to upload images, videos, GIFs, or PDFs to attach to draft posts. First call this action to get a `media_id` and `upload_url`. Then PUT your file content directly to the `upload_url`. Finally, use the `media_id` in your draft content to attach the media. This action is idempotent — calling it multiple times with the same parameters will return new (unused) presigned URLs." }, { "slug": "TYPEFULLY_LIST_DRAFTS", "name": "List Drafts", "description": "List drafts for a social set with filtering and sorting options. Use this action when you need to retrieve drafts from a specific social set in Typefully. Supports filtering by status (draft, scheduled, published) and tags, and results are ordered by last edited date (most recent first) by default. Results are paginated with support for limit/offset-based pagination." }, { "slug": "TYPEFULLY_LIST_SOCIAL_SETS", "name": "List Social Sets", "description": "List all social sets (groups of connected platform accounts) accessible to the authenticated user. Returns paginated list of social sets with basic info including id, username, name, and profile image. Use this action when you need to retrieve social sets for a user or display available accounts." }, { "slug": "TYPEFULLY_LIST_TAGS", "name": "List Tags", "description": "List all tags for a social set. Tags help organize and categorize drafts. Use this action when you need to retrieve all tags associated with a specific social set to organize, filter, or categorize drafts within Typefully." }, { "slug": "TYPEFULLY_RESOLVE_LINKED_IN_ORGANIZATION", "name": "Resolve LinkedIn Organization", "description": "Resolve a LinkedIn organization from its public URL. Returns the organization URN needed for mentions in LinkedIn posts. Use this action when you need to get the LinkedIn organization identifier to include company or school mentions in posts." }, { "slug": "TYPEFULLY_UPDATE_DRAFT", "name": "Update Draft", "description": "Update an existing draft with partial update semantics. Use this action when you need to modify specific fields of an existing draft. Only the fields you provide will be updated; omitted fields remain unchanged. This action supports updating: content/title, scheduling (publish_at), tags, scratchpad notes, sharing options, or platform configurations. Note: Cannot update drafts that have already been published." }, { "slug": "TYPEFULLY_UPDATE_QUEUE_SCHEDULE", "name": "Update Queue Schedule", "description": "Replace the queue schedule configuration for a social set. Defines the posting slots for scheduled content. Use this action when you need to update or configure the posting schedule for a social account, such as changing the days and times when content should be published. This performs a full replacement of the schedule rules — existing rules will be overwritten with the new rules provided." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "typefully_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate a key from Typefully → Settings → API. Keys issued by Typefully today are v2-only.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bolna", "name": "Bolna", "logo": "https://logos.composio.dev/api/bolna", "description": "Create conversational voice agents using Bolna AI to enhance interactions, streamline operations and automate support.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 35, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOLNA_ADD_PROVIDER", "name": "Add Provider to Bolna", "description": "Tool to add a new telephony or voice service provider to your Bolna account. Use when you need to configure API keys for providers like Twilio, Deepgram, or ElevenLabs before creating agents." }, { "slug": "BOLNA_COPY_AGENT", "name": "Copy Bolna Agent", "description": "Tool to create a duplicate copy of an existing Bolna voice AI agent. Use when you need to replicate an agent's complete configuration (tasks, prompts, LLM settings, etc.) with a new name." }, { "slug": "BOLNA_CREATE_AGENT", "name": "Create Bolna Voice AI Agent (v2)", "description": "Tool to create a new Bolna Voice AI agent using the v2 API. Use when you need to set up a new conversational agent from scratch with custom LLM, synthesizer, transcriber, and task configurations. This fills the gap for end-to-end agent setup in workflows starting from an empty account state." }, { "slug": "BOLNA_CREATE_BATCH", "name": "Create Bolna Batch", "description": "Tool to create a new outbound calling batch by uploading a CSV of contacts to obtain a batch_id. Use when initiating a batch campaign; follow by calling BOLNA_SCHEDULE_BATCH_BY_ID to schedule execution." }, { "slug": "BOLNA_CREATE_KNOWLEDGEBASE", "name": "Create Bolna Knowledgebase", "description": "Tool to create a new knowledgebase for Voice AI agents to reference during conversations. Use when you need to provide agents with domain-specific knowledge from PDFs or web URLs. Note: Initially returns status 'processing'; poll or wait for status to become 'processed' before use." }, { "slug": "BOLNA_CREATE_TEMPLATE_AGENT", "name": "Create Template Agent", "description": "Tool to create a new Bolna Voice AI agent from a template. Use when you want to quickly set up an agent using predefined templates instead of building from scratch." }, { "slug": "BOLNA_DELETE_AGENT_BY_ID", "name": "Delete agent by id", "description": "Permanently delete a Voice AI agent and all associated data including batches, executions, and configurations" }, { "slug": "BOLNA_DELETE_BATCH_BY_ID", "name": "Delete batch by id", "description": "Permanently delete a batch campaign by its ID, removing it from the system. This operation cannot be undone." }, { "slug": "BOLNA_DELETE_KNOWLEDGEBASE", "name": "Delete Knowledgebase", "description": "Tool to permanently delete a knowledgebase from your Bolna account. Use when you need to remove an existing RAG knowledgebase that is no longer needed. This operation cannot be undone." }, { "slug": "BOLNA_FETCH_ALL_BATCHES_BY_AGENT_ID", "name": "Fetch all batches by agent id", "description": "Retrieve all batches associated with a specific Bolna Voice AI agent. Returns a comprehensive list of batches with details including batch status (scheduled, created, queued, executed), creation and scheduled times, contact counts, file names, and execution status breakdown. Use this to monitor batch campaigns, track their progress, and manage outbound calling operations for the agent." }, { "slug": "BOLNA_GET_AGENT_V1", "name": "Get Agent (v1 - Deprecated)", "description": "[DEPRECATED] Retrieve Voice AI agent details using the v1 API endpoint. Use GET /v2/agent/{agent_id} (retrieve_agent_by_id) instead for current implementations. This action returns agent configuration including name, type, status, tasks, and prompts." }, { "slug": "BOLNA_GET_ALL_AGENTS", "name": "Get all agents", "description": "Retrieve all agents configured in your Bolna account Returns a comprehensive list of all voice agents with their configurations including: - Agent metadata (ID, name, type, status) - Task configurations (conversation settings, toolchains) - AI model settings (LLM, transcriber, synthesizer) - Webhook and phone number assignments - System prompts and guardrails This is useful for listing available agents, checking agent configurations, or finding specific agents by their properties." }, { "slug": "BOLNA_GET_EXECUTION_BY_ID", "name": "Get execution by id", "description": "Retrieve detailed information about a specific phone call execution by its ID. Returns comprehensive execution data including conversation transcript, duration, costs (LLM, TTS, STT, network, platform), telephony details (phone numbers, recording URL, provider info), usage metrics (tokens, characters, duration), and extracted structured data. Use this to: - Analyze individual call performance and outcomes - Access conversation transcripts and recordings - Review cost breakdowns and resource usage - Monitor call status and error messages - Retrieve extracted structured data from conversations" }, { "slug": "BOLNA_GET_KNOWLEDGEBASE", "name": "Get knowledgebase by ID", "description": "Tool to retrieve details of a specific knowledgebase by its ID. Returns complete configuration including processing status, file information, vector ID, and embedding parameters (chunk size, similarity top k, overlapping). Use when you need to check if a knowledgebase has finished processing or to inspect its configuration before using it with an agent." }, { "slug": "BOLNA_GET_USER_INFO", "name": "Get User Information", "description": "Tool to retrieve information about the authenticated user. Use when you need details like name, email, wallet balance, or concurrency limits for the current user." }, { "slug": "BOLNA_IMPORT_AGENT", "name": "Import Bolna Agent", "description": "Tool to import an existing Bolna voice AI agent by its ID. Use when you need to copy or duplicate an agent configuration, create a new agent from a template, or migrate an agent from another environment." }, { "slug": "BOLNA_LIST_AGENTS_PAGINATED", "name": "List agents (paginated)", "description": "Tool to retrieve a paginated list of all agents in your Bolna account. Use when you need to fetch agents with optional filtering by user_id or sub_account_id." }, { "slug": "BOLNA_LIST_KNOWLEDGEBASES", "name": "List Knowledgebases", "description": "Tool to retrieve all knowledgebases from your Bolna account. Use when you need to view available RAG knowledgebases, check their processing status, or find specific knowledgebases by status." }, { "slug": "BOLNA_LIST_PHONE_NUMBERS", "name": "List all phone numbers", "description": "Tool to list all phone numbers associated with your Bolna account. Use when you need to retrieve details of all phone numbers including provider, associated agent, pricing, and rental status." }, { "slug": "BOLNA_LIST_PROVIDERS", "name": "List all providers", "description": "Retrieve all providers associated with your Bolna account Returns a list of all configured providers including: - Provider IDs (unique identifiers) - Provider names (e.g., API key types) - Masked provider values (secrets) - Creation timestamps (both absolute and human-readable) Use this when you need to view all configured API providers, check provider details, or verify provider setup in your Bolna account." }, { "slug": "BOLNA_LIST_VOICES", "name": "List available voices", "description": "Tool to list all available voices that can be utilized for Voice AI agents. Use when you need to see which voices are available across different providers." }, { "slug": "BOLNA_MAKE_A_PHONE_CALL_FROM_AGENT", "name": "Make an outbound phone call from agent", "description": "Initiate an outbound phone call using a configured Bolna Voice AI agent. The agent will call the specified recipient and engage in a conversation based on its configured prompt and capabilities." }, { "slug": "BOLNA_PATCH_AGENT_V1", "name": "Partially Update Bolna Voice AI Agent (v1)", "description": "Tool to partially update a Voice AI agent using the v1 API endpoint. Use when you need to modify specific agent properties like name, welcome message, webhook URL, synthesizer settings, or system prompts without providing the full configuration. Note: This is a deprecated v1 endpoint; prefer using PATCH /v2/agent/{agent_id} for new implementations." }, { "slug": "BOLNA_REMOVE_PROVIDER", "name": "Remove Provider from Bolna Account", "description": "Tool to remove a provider from your Bolna account by its key name. Use when you need to delete a provider configuration that is no longer needed or needs to be replaced." }, { "slug": "BOLNA_RETRIEVE_AGENT_BY_ID", "name": "Retrieve agent by id", "description": "Retrieve complete configuration and details for a specific Bolna voice AI agent by its ID. Returns comprehensive agent information including name, type, status, conversation tasks, LLM/synthesizer/transcriber settings, system prompts, webhook configuration, and timestamps. Use this to inspect agent setup before making calls or to verify agent configuration." }, { "slug": "BOLNA_RETRIEVE_AGENT_EXECUTION_DETAILS", "name": "Retrieve agent execution details", "description": "Retrieve detailed information about a specific execution (call/conversation) by an agent, including transcript, costs, duration, status, and telephony data" }, { "slug": "BOLNA_RETRIEVE_AGENT_EXECUTION_STATUS", "name": "Retrieve agent execution status", "description": "Retrieve all executions for a specific agent with pagination and filtering support. Returns a paginated list of agent execution records including call status, cost breakdown, transcripts, and telephony data." }, { "slug": "BOLNA_RETRIEVE_BATCH_DETAILS_BY_ID", "name": "Retrieve Batch Details by ID", "description": "Retrieve comprehensive details about a specific Bolna batch by its ID. Returns batch metadata including creation time, execution status, scheduled time, contact statistics, and call status breakdown. Use this to monitor batch progress or retrieve information about previously created batch calling campaigns." }, { "slug": "BOLNA_RETRIEVE_BATCH_EXECUTION_LIST", "name": "Retrieve batch execution list", "description": "Retrieve all executions from a specific batch with pagination support. Returns detailed information about each call execution including conversation metrics, transcripts, costs, and resource usage breakdown (LLM tokens, synthesizer characters, etc.). Use this to monitor batch campaign results and analyze individual call outcomes." }, { "slug": "BOLNA_SCHEDULE_BATCH_BY_ID", "name": "Schedule Batch by ID", "description": "Schedule a batch to execute at a specific time. After creating a batch with BOLNA_CREATE_BATCH, use this action to set when the batch calls should begin. The batch must exist and be in a schedulable state (e.g., 'created' or 'stopped')." }, { "slug": "BOLNA_SEARCH_PHONE_NUMBERS", "name": "Search available phone numbers", "description": "Tool to search for available phone numbers that can be purchased for Bolna Voice agents. Use when you need to find purchasable phone numbers by country or prefix pattern before buying." }, { "slug": "BOLNA_SETUP_INBOUND_CALL_FOR_AGENT", "name": "Setup inbound call for agent", "description": "Add agent for inbound calls" }, { "slug": "BOLNA_STOP_AGENT_CALLS", "name": "Stop Agent Calls", "description": "Tool to stop all queued or scheduled calls for a specific Voice AI agent. Use when you need to immediately halt all pending calls for an agent." }, { "slug": "BOLNA_STOP_BATCH_BY_ID", "name": "Stop batch by id", "description": "Stop a running batch by its ID. This halts all queued calls in the batch. Any calls currently in the queue waiting to be executed will be cancelled and will not be processed. Use this when you need to immediately halt a batch campaign that's in progress." }, { "slug": "BOLNA_UPDATE_AGENT", "name": "Update Bolna Voice AI Agent (v2)", "description": "Tool to update all settings and configuration of an existing Bolna Voice AI agent using the v2 API. Use when you need to modify an agent's full configuration including LLM settings, synthesizer, transcriber, tasks, prompts, or any other agent property. This performs a complete update (PUT operation)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bolna_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Bolna API key for authentication. Please obtain it from the Developers section in the dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rocketlane", "name": "Rocketlane", "logo": "https://logos.composio.dev/api/rocketlane", "description": "Collaborative customer onboarding and implementation platform for professional services teams.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 69, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROCKETLANE_ADD_ASSIGNEE_TO_TASK", "name": "Add Assignee To Task", "description": "Add assignees to a task by task ID. Assigns one or more users to a specific task." }, { "slug": "ROCKETLANE_ADD_FIELD_OPTION", "name": "Add Field Option", "description": "Tool to add a new option to a SINGLE_CHOICE or MULTIPLE_CHOICE field. Use when extending dropdown or select field options with a new labeled and colored choice." }, { "slug": "ROCKETLANE_ADD_FOLLOWERS_TO_TASK", "name": "Add Followers To Task", "description": "Tool to add followers to a task by Id. Use when you need to add team members as followers to track task updates." }, { "slug": "ROCKETLANE_ADD_MEMBERS", "name": "Add Members to Project", "description": "Tool to add team members to a project using the projectId. Team members are participants from your company who work on projects and deliverables." }, { "slug": "ROCKETLANE_ADD_MEMBERS_TO_CONVERSATION", "name": "Add Members to Conversation", "description": "Add members to a conversation in Rocketlane. Use this when you need to include additional team members or stakeholders in an existing conversation." }, { "slug": "ROCKETLANE_ARCHIVE_PROJECT_BY_ID", "name": "Archive Project by ID", "description": "Archives a specific project based on its unique identifier." }, { "slug": "ROCKETLANE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment in Rocketlane. Use when you need to add a comment to a task or project conversation." }, { "slug": "ROCKETLANE_CREATE_COMPANY", "name": "Create Company", "description": "Creates a new company (account) in Rocketlane. This action allows you to create a new company/account in your Rocketlane workspace. It complements existing company-related actions by providing the ability to register new accounts using the POST /api/v2/companies endpoint." }, { "slug": "ROCKETLANE_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Creates a new conversation in Rocketlane. Use this to start a conversation associated with a project or other source type. You can specify members, privacy settings, and whether to include all members automatically." }, { "slug": "ROCKETLANE_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a custom field in Rocketlane. Use when you need to add a new custom field to TASK, PROJECT, PHASE, or USER objects. For SINGLE_CHOICE or MULTIPLE_CHOICE field types, you must provide the options array." }, { "slug": "ROCKETLANE_CREATE_PHASE", "name": "Create Phase", "description": "Tool to create a new phase in a Rocketlane project. Use when you need to add a new phase to an existing project with specified timeline and configuration." }, { "slug": "ROCKETLANE_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Rocketlane. Use when you need to set up a new project with details like name, customer, owner, dates, and custom fields." }, { "slug": "ROCKETLANE_CREATE_SPACE", "name": "Create Space", "description": "Creates a new space for a given project in Rocketlane. Use when you need to create a collaborative workspace within a project with specific privacy settings." }, { "slug": "ROCKETLANE_CREATE_SPACE_DOCUMENT", "name": "Create Space Document", "description": "Tool to create a new space document in Rocketlane. Use when you need to add documents to a project space, either as native Rocketlane documents or embedded links from external sources." }, { "slug": "ROCKETLANE_CREATE_TASK", "name": "Create Task", "description": "Creates a new task." }, { "slug": "ROCKETLANE_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry in Rocketlane. This endpoint allows users to log time spent on tasks or projects. It complements the existing ROCKETLANE_GET_TIME_ENTRIES action and enables complete time tracking functionality within the Rocketlane integration." }, { "slug": "ROCKETLANE_DELETE_COMMENT_BY_ID", "name": "Delete Comment By ID", "description": "Tool to delete a comment by its ID. Use when you need to permanently remove a comment from Rocketlane." }, { "slug": "ROCKETLANE_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to delete a conversation by its unique identifier. Use when you need to permanently remove a conversation from Rocketlane." }, { "slug": "ROCKETLANE_DELETE_FIELD", "name": "Delete Field", "description": "Tool to permanently delete a custom field using its unique identifier. Use when a field is no longer required and should be removed from the system." }, { "slug": "ROCKETLANE_DELETE_PHASE", "name": "Delete Phase", "description": "Permanently delete a phase from the project using its unique identifier (phaseId). Use when you need to remove a phase that is no longer needed." }, { "slug": "ROCKETLANE_DELETE_PROJECT", "name": "Delete Project", "description": "This tool allows users to permanently delete a project in Rocketlane. It requires a valid project ID and appropriate permissions (Admins, Super Users, and Project Owners). Note that deletion is irreversible; therefore, consider using archival if future access might be needed." }, { "slug": "ROCKETLANE_DELETE_SPACE", "name": "Delete Space", "description": "Tool to permanently delete a space from a project by its ID. Use when you need to remove a space from the Rocketlane system. Note: This operation is permanent and cannot be undone." }, { "slug": "ROCKETLANE_DELETE_SPACE_DOCUMENT", "name": "Delete Space Document", "description": "Tool to permanently delete a space document by its ID. Use when you need to remove a space document from the system." }, { "slug": "ROCKETLANE_DELETE_TASK_BY_ID", "name": "Delete Task By ID", "description": "Delete a specific task using its unique identifier (taskId)." }, { "slug": "ROCKETLANE_DELETE_TIME_ENTRY_BY_ID", "name": "Delete Time Entry by ID", "description": "Delete a specific time entry using its unique identifier (timeEntryId)." }, { "slug": "ROCKETLANE_GET_ALL_CONVERSATIONS", "name": "Get All Conversations", "description": "Tool to retrieve all conversations in Rocketlane. Use when you need to list, search, or filter conversations. Supports pagination and various filtering options including source ID, conversation name, and privacy status." }, { "slug": "ROCKETLANE_GET_ALL_FIELDS", "name": "Get All Fields", "description": "Retrieve all custom fields available in the system." }, { "slug": "ROCKETLANE_GET_ALL_RESOURCE_ALLOCATIONS", "name": "Get All Resource Allocations", "description": "Tool to retrieve all resource allocations from Rocketlane. Use when you need to get comprehensive allocation data for various projects within a specific date range." }, { "slug": "ROCKETLANE_GET_ALL_SPACES", "name": "Get All Spaces", "description": "Tool to retrieve all spaces for a specific project in Rocketlane. Use when you need to list all spaces associated with a project, including space details like name, privacy status, and creation/update information." }, { "slug": "ROCKETLANE_GET_ALL_TASKS", "name": "Get All Tasks", "description": "Tool to retrieve all tasks from Rocketlane with advanced filtering options. Supports filtering by project, status, dates, billable status, and more. Use this when you need to search or list tasks with specific criteria." }, { "slug": "ROCKETLANE_GET_ALL_TIMEOFFS", "name": "Get All Time-Offs", "description": "Tool to retrieve all time-offs from Rocketlane with advanced filtering options. Use when you need to get comprehensive time-off data including leave entries, holidays, and absences." }, { "slug": "ROCKETLANE_GET_COMMENTS", "name": "Get Comments", "description": "Tool to retrieve all comments from Rocketlane. Use when you need to fetch comments from tasks or project conversations with support for filtering, pagination, and sorting." }, { "slug": "ROCKETLANE_GET_COMPANY", "name": "Get Company", "description": "This tool retrieves detailed information about a specific company/account in Rocketlane by its ID. It provides comprehensive information about the company including its status, address, currency, created date, updated date, custom fields, and other relevant metadata." }, { "slug": "ROCKETLANE_GET_CONVERSATION", "name": "Get Conversation", "description": "Tool to retrieve detailed information about a conversation by its ID. Use when you need to get conversation details including name, description, members, and source information." }, { "slug": "ROCKETLANE_GET_FIELD_BY_ID", "name": "Get Field By ID", "description": "Retrieve detailed information about a specific custom field using its unique identifier (fieldId)." }, { "slug": "ROCKETLANE_GET_PHASE_BY_ID", "name": "Get Phase by ID", "description": "Tool to retrieve extensive information about a specific phase by its unique identifier. Use when you need detailed phase data for project management operations." }, { "slug": "ROCKETLANE_GET_PROJECT_BY_ID", "name": "Get Project by ID", "description": "Retrieves detailed information about a specific project using its unique identifier." }, { "slug": "ROCKETLANE_GET_SPACE", "name": "Get Space by ID", "description": "Tool to retrieve detailed information about a specific space using its unique identifier. Use when you need to fetch space details including associated project, creation time, and privacy settings." }, { "slug": "ROCKETLANE_GET_TASK_BY_ID", "name": "Get Task By Id", "description": "Retrieve extensive information about a specific task using the task's unique identifier (taskId)." }, { "slug": "ROCKETLANE_GET_TEMPLATE_BY_ID", "name": "Get Template By ID", "description": "Retrieve detailed information about a specific template using its unique identifier (templateId). NOTE: The exact API endpoint and response structure need to be verified from the official Rocketlane API documentation." }, { "slug": "ROCKETLANE_GET_TIME_ENTRIES", "name": "Get Time Entries", "description": "Tool to retrieve all time entries from Rocketlane. It provides endpoints to get time entries with support for pagination, filtering by project ID, user ID, start and end dates. This allows tracking of time spent on various tasks, generating reports, and analyzing team productivity." }, { "slug": "ROCKETLANE_GET_TIME_ENTRY_BY_ID", "name": "Get Time Entry By ID", "description": "Retrieve detailed information about a specific time entry using its unique identifier (timeEntryId)." }, { "slug": "ROCKETLANE_GET_TIME_ENTRY_CATEGORIES", "name": "Get Time Entry Categories", "description": "Tool to retrieve time entry categories from Rocketlane. Returns a paginated list of all available time entry categories. Use when you need to get the available categories for creating or filtering time entries." }, { "slug": "ROCKETLANE_GET_USER_BY_ID", "name": "Get User By ID", "description": "Retrieve detailed information about a specific user using their unique identifier (userId)." }, { "slug": "ROCKETLANE_LIST_COMPANIES", "name": "List Companies", "description": "This tool retrieves a list of all companies/accounts in Rocketlane. It's a basic GET endpoint that returns all companies without requiring any specific resource IDs or additional parameters. The endpoint is independent and can be executed with just the authentication token." }, { "slug": "ROCKETLANE_LIST_CURRENCIES", "name": "List Currencies", "description": "Returns a predefined list of commonly used currencies since Rocketlane API doesn't provide a dedicated currencies endpoint. This list includes major global currencies with their codes, names, and symbols." }, { "slug": "ROCKETLANE_LIST_PROJECT_PHASES", "name": "List Project Phases", "description": "This tool retrieves a list of project phases from Rocketlane. It allows users to fetch and filter phases based on various parameters including projectID, startDate, dueDate, startDateActual, dueDateActual, phaseName, sortBy, sortOrder, limit, and pageToken. The API supports various operators for filtering such as .gt, .eq, .lt, .ge, .le, .cn, and .nc. Note: The API requires projectId to be specified, despite the official documentation listing it as optional. Calling the endpoint without projectId returns a 400 BAD_REQUEST error. This has been verified through direct API testing (see: https://developer.rocketlane.com/reference/get-all-phases)." }, { "slug": "ROCKETLANE_LIST_PROJECTS", "name": "List Projects", "description": "This tool retrieves a list of all projects in the Rocketlane instance. It provides project details including Project ID, Project Name, Project Status, Created Date, Owner Information, Customer Information, and other metadata." }, { "slug": "ROCKETLANE_LIST_TEMPLATES", "name": "List Templates", "description": "This tool retrieves a list of all available templates in Rocketlane. It fetches all available templates in the account and returns a list of template objects containing details like template_id, name, description, created_at, updated_at, is_dynamic, and has_automations." }, { "slug": "ROCKETLANE_LIST_USERS", "name": "List Users", "description": "This tool retrieves all users in the Rocketlane instance. It is an independent action that does not require any resource IDs or external dependencies. The endpoint returns detailed user information including user IDs, emails, names, roles, and statuses." }, { "slug": "ROCKETLANE_MOVE_TASK_TO_GIVEN_PHASE", "name": "Move Task To Given Phase", "description": "Tool to move a task to a different phase by task ID and phase ID. Use when tasks need to be reorganized across different project phases." }, { "slug": "ROCKETLANE_REMOVE_ASSIGNEES_FROM_TASK", "name": "Remove Assignees From Task", "description": "Tool to remove assignees from a task by its unique identifier. Use when you need to remove team members from a specific task." }, { "slug": "ROCKETLANE_REMOVE_DEPENDENCIES_FROM_TASK", "name": "Remove Dependencies From Task", "description": "Tool to remove dependencies from a task by ID. Use when you need to unlink dependency relationships between tasks." }, { "slug": "ROCKETLANE_REMOVE_FOLLOWERS_FROM_TASK", "name": "Remove Followers From Task", "description": "Tool to remove followers from a task by task ID. Use when you need to remove one or more followers from a specific task." }, { "slug": "ROCKETLANE_REMOVE_MEMBERS_FROM_CONVERSATION", "name": "Remove Members from Conversation", "description": "Remove members from a conversation in Rocketlane. Use this when you need to remove team members or stakeholders from an existing conversation." }, { "slug": "ROCKETLANE_RETRIEVE_SUBSCRIPTION_DETAILS", "name": "Retrieve Subscription Details", "description": "Retrieves detailed information about the current subscription." }, { "slug": "ROCKETLANE_SEARCH_INVOICES", "name": "Search Invoices", "description": "Tool to retrieve all invoices from Rocketlane. Use when you need to get a list of all invoices accessible to the authenticated user. This endpoint returns invoice details including invoice numbers, dates, amounts, status, and associated customer and project information." }, { "slug": "ROCKETLANE_SEARCH_TIME_ENTRIES", "name": "Search Time Entries", "description": "Tool to search time entries with filters in Rocketlane. Use when you need to find specific time entries based on criteria like date ranges, project, user, billable status, or duration. Supports advanced filtering using field.operator=value format (e.g., date.gt=2023-02-11, minutes.eq=250)." }, { "slug": "ROCKETLANE_SEARCH_USER_BY_EMAIL", "name": "Search User By Email", "description": "Search User By Email Id." }, { "slug": "ROCKETLANE_UPDATE_COMPANY", "name": "Update Company", "description": "This tool updates an existing company/account in Rocketlane. It uses the PUT endpoint to update the company details identified by companyId. The action complements the existing create_company action and is essential for maintaining up-to-date company information, relying on Rocketlane's API specifications and company management endpoints." }, { "slug": "ROCKETLANE_UPDATE_CONVERSATION", "name": "Update Conversation", "description": "Tool to update an existing conversation in Rocketlane by its ID. Use when you need to modify conversation details like name, description, or member inclusion settings." }, { "slug": "ROCKETLANE_UPDATE_FIELD", "name": "Update Field", "description": "Tool to update field information by ID. Updates field properties including label, description, privacy settings, and enabled status. Use when you need to modify existing field metadata." }, { "slug": "ROCKETLANE_UPDATE_FIELD_OPTION", "name": "Update Field Option", "description": "Tool to update an existing option's label and color in a SINGLE_CHOICE or MULTIPLE_CHOICE field. Use when modifying dropdown or select field option properties." }, { "slug": "ROCKETLANE_UPDATE_PHASE", "name": "Update Phase", "description": "Tool to update phase information by phase ID. Use when you need to modify phase details such as name, dates, status, or privacy settings for an existing project phase." }, { "slug": "ROCKETLANE_UPDATE_PROJECT_BY_ID", "name": "Update Project By Id", "description": "Updates an existing project's details using its unique identifier." }, { "slug": "ROCKETLANE_UPDATE_SPACE", "name": "Update Space", "description": "Tool to update space details by its unique identifier. Use when you need to update space properties such as name or privacy settings." }, { "slug": "ROCKETLANE_UPDATE_SPACE_DOCUMENT", "name": "Update Space Document", "description": "Tool to update a space document's properties by its unique identifier in Rocketlane. Use when you need to modify the name or URL of an existing space document. This action allows updating document metadata without recreating the document." }, { "slug": "ROCKETLANE_UPDATE_TASK_BY_ID", "name": "Update Task by ID", "description": "Tool to update task details by ID. Use when you need to modify task information such as name, dates, status, progress, or custom fields." }, { "slug": "ROCKETLANE_UPDATE_TIME_ENTRY_BY_ID", "name": "Update Time Entry by ID", "description": "Update existing time entry details using its unique identifier (timeEntryId)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rocketlane_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key generated from the Rocketlane Developer Console, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoom", "name": "Zoom", "logo": "https://logos.composio.dev/api/zoom", "description": "Zoom is a video conferencing and online meeting platform featuring breakout rooms, screen sharing, and integrations with various enterprise tools", "category": "video conferencing", "authSchemes": [ "OAUTH2" ], "toolCount": 105, "triggerCount": 11, "version": "20260703_00", "tools": [ { "slug": "ZOOM_ADD_A_MEETING_REGISTRANT", "name": "Add a meeting registrant", "description": "Registers a participant for a Zoom meeting that has registration enabled. **Prerequisites:** - The meeting host must have a **licensed (paid) Zoom account** - this will NOT work with free/basic accounts - The meeting must have registration enabled (approval_type = 0 for automatic or 1 for manual approval) - Maximum of 4,999 registrants per meeting **Required fields:** meeting_id, first_name, last_name, email **Optional fields:** address, city, state, zip, country, phone, comments, industry, job_title, org, language, auto_approve **Common errors:** - \"Only available for paid users\" - The meeting host needs a licensed Zoom account - \"Registration has not been enabled\" - Enable registration via update_a_meeting with approval_type = 0 or 1 - \"Meeting not found\" - Invalid meeting ID or meeting has ended" }, { "slug": "ZOOM_ADD_A_WEBINAR_REGISTRANT", "name": "Add a webinar registrant", "description": "Registers a participant for a Zoom webinar that has registration enabled. **Prerequisites:** - The webinar host must have a **Pro or higher plan with Webinar add-on** - this will NOT work with basic/free accounts - The webinar must have registration enabled (approval_type = 0 for automatic or 1 for manual approval) - Registration type must be properly configured (1=once for all, 2=each occurrence, 3=choose occurrences) **Required fields:** webinarId, first_name, email **Optional fields:** last_name, address, city, state, zip, country, phone, comments, industry, job_title, org, language, occurrence_ids, source_id **Common errors:** - \"Webinar plan is missing\" - The host needs a Zoom webinar license/add-on - \"Registration has not been enabled\" - Enable registration via webinar settings with approval_type = 0 or 1 - \"Webinar not found\" (404) - Invalid webinar ID or webinar has ended - \"Host cannot register\" - The webinar host cannot register themselves as an attendee" }, { "slug": "ZOOM_ADD_PROJECT_COLLABORATORS", "name": "Add project collaborators", "description": "Adds one or more collaborators to a whiteboard project. Use this action when you want to invite team members or external users to collaborate on a specific whiteboard project. Project owners or authorized users can add collaborators with different permission levels (owner, editor, or viewer). **Prerequisites:** - The user must be the project owner or have admin permissions - The target user must have a Zoom account - The whiteboard project must exist and be accessible **Required fields:** project_id, collaborators (list with at least one user) **Optional fields:** skip_notifications, invite_message **Common errors:** - \"Whiteboard plan is missing\" - Whiteboard add-on is required - \"User not found\" - The collaborator's email is not associated with a Zoom account - \"Project not found\" - Invalid project ID - \"Invalid collaborator role\" - Role value must be 1, 2, or 3" }, { "slug": "ZOOM_ADD_WHITEBOARD_COLLABORATOR", "name": "Add whiteboard collaborator", "description": "Adds one or more collaborators to a whiteboard. Use this action when you need to invite users or team chat channels to collaborate on a specific whiteboard. Supports individual user invites (via email) and team chat channel invites (via channel_id). Collaborators are assigned a role that determines their permission level. On success, returns the list of collaborators that were added. Use this action when you want to share a whiteboard to new users or team chat channels and assign them specific permission levels (owner, co-owner, editor, commenter, or viewer)." }, { "slug": "ZOOM_APPLY_CLASSIFICATION_TO_WHITEBOARD", "name": "Apply classification to whiteboard", "description": "Applies or updates a classification label on a whiteboard. Use this action when you need to assign or change a security classification label on an existing whiteboard. Each whiteboard can only have one classification label at a time — if the whiteboard already has a label, it will be replaced with the new one. Rate limit: Light. Required scopes: whiteboard:write:admin, whiteboard:write, whiteboard:update:whiteboard_classification, or whiteboard:update:whiteboard_classification:admin." }, { "slug": "ZOOM_CREATE_A_MEETING", "name": "Create a meeting", "description": "Enable Zoom meeting creation via user-level apps with \"me\". \"Start_url\" for hosts expires in 2 hours, or 90 days for \"custCreate\" users. Renew via API, capped at 100 requests/day. Requires \"meeting:write\" permission, subject to medium rate limit." }, { "slug": "ZOOM_CREATE_IQ_CONVERSATION", "name": "Create IQ conversation", "description": "DEPRECATED: Use ZOOM_CREATE_ZRA_CONVERSATION instead (Zoom rebranded IQ to ZRA). Tool to create a Zoom Revenue Accelerator (formerly Zoom IQ) conversation. Use when you need to create a new conversation entry, typically after uploading recording files, transcripts, and metadata." }, { "slug": "ZOOM_CREATE_IQ_CONVERSATION_COMMENT", "name": "Create IQ conversation comment", "description": "DEPRECATED: Use ZOOM_CREATE_ZRA_CONVERSATION_COMMENT instead (Zoom rebranded IQ to ZRA). Tool to create a comment on a Zoom IQ conversation. Use when you need to add comments, replies, or annotations to IQ conversation recordings or transcripts." }, { "slug": "ZOOM_CREATE_IQ_USER_CONVERSATION", "name": "Create IQ user conversation", "description": "DEPRECATED: Use ZOOM_CREATE_ZRA_USER_CONVERSATION instead (Zoom rebranded IQ to ZRA). Tool to create a Zoom IQ conversation for a user. Use when you need to create a new conversation entry in Zoom Revenue Accelerator for a specific user." }, { "slug": "ZOOM_CREATE_PROJECT", "name": "Create whiteboard project", "description": "Creates a new whiteboard project in Zoom. Use when you need to organize and group whiteboards together, optionally adding collaborators and initializing the project with existing whiteboards." }, { "slug": "ZOOM_CREATE_WHITEBOARD", "name": "Create a whiteboard", "description": "Creates a new whiteboard for the authenticated user. Use when you need to create a blank whiteboard that can be shared and collaborated on with others. The whiteboard will be associated with the user making the API call. **Required scope:** whiteboard:write or whiteboard:write:whiteboard **Notes:** - If no name is provided, the whiteboard will be named \"Untitled\" - After creation, the whiteboard can be shared with collaborators using share settings" }, { "slug": "ZOOM_CREATE_WHITEBOARD_EXPORT", "name": "Create whiteboard export", "description": "Creates an export task to generate PDF exports and audit logs for specified whiteboards. The exported content is bundled into a ZIP file containing the whiteboard PDFs and audit logs. Use when you need to export one or more whiteboards for archival, sharing, or compliance purposes. Use this action when you want to export whiteboard content as a downloadable ZIP file containing PDF exports and audit logs. After creating the export task, poll the GetWhiteboardExportStatus action using the returned task_id until the status changes to 'successed', then download the export using the DownloadWhiteboardExport action. Note: This action only initiates the export process. The export is processed asynchronously. You must poll GetWhiteboardExportStatus to check when the export is ready, then use DownloadWhiteboardExport to retrieve the actual ZIP file." }, { "slug": "ZOOM_CREATE_ZRA_CONVERSATION", "name": "Create ZRA conversation", "description": "Tool to create a new conversation in Zoom Revenue Accelerator (ZRA). Use when uploading meeting recordings or phone calls for AI-powered analytics, including transcription, sentiment analysis, and engagement scoring." }, { "slug": "ZOOM_CREATE_ZRA_CONVERSATION_COMMENT", "name": "Create ZRA conversation comment", "description": "Tool to create a comment on a Zoom Revenue Accelerator conversation. Use when you need to add comments, replies, or annotations to ZRA conversation recordings or transcripts." }, { "slug": "ZOOM_CREATE_ZRA_CRM_ACCOUNTS", "name": "Create ZRA CRM accounts", "description": "Tool to create or update CRM accounts in Zoom Revenue Accelerator (ZRA). Use when you need to sync CRM account data to Zoom IQ. Supports up to 2000 accounts per request and returns an async task ID for polling status." }, { "slug": "ZOOM_CREATE_ZRA_CRM_CONTACTS", "name": "Create ZRA CRM contacts", "description": "Tool to bulk import or delete CRM contacts in Zoom Revenue Accelerator. Use when syncing contacts from external CRM systems. Accepts up to 2,000 contacts per request and returns a task ID for async status tracking." }, { "slug": "ZOOM_CREATE_ZRA_CRM_DEALS", "name": "Create ZRA CRM deals", "description": "Tool to bulk import or delete CRM deals in Zoom Revenue Accelerator (ZRA). Use when you need to synchronize deals from an external CRM to Zoom's ZRA system. Supports up to 2000 deals per request and processes asynchronously." }, { "slug": "ZOOM_CREATE_ZRA_CRM_LEADS", "name": "Bulk import ZRA CRM leads", "description": "Tool to bulk import CRM leads into Zoom Revenue Accelerator (ZRA). Use when you need to import or update multiple leads asynchronously. Supports up to 2000 leads per request and returns a task_id to track import progress." }, { "slug": "ZOOM_CREATE_ZRA_CRM_SETTINGS", "name": "Create ZRA CRM settings", "description": "Tool to register a new CRM API integration for Zoom Revenue Accelerator (ZRA). Use when you need to configure CRM settings including type, name, currency, deal stages, and URL patterns for accessing CRM records." }, { "slug": "ZOOM_CREATE_ZRA_USER_CONVERSATION", "name": "Create ZRA user conversation", "description": "Tool to create a new conversation in Zoom Revenue Accelerator for a specific user. Use when you need to initiate a ZRA conversation entry with topic and start time." }, { "slug": "ZOOM_DELETE_A_MEETING", "name": "Delete a meeting", "description": "Delete or cancel a scheduled Zoom meeting. Use occurrence_id to delete a specific occurrence of a recurring meeting. Supports notification options for hosts and registrants. Returns HTTP 204 on success. Rate limit: Light. Required scopes: meeting:write or meeting:write:admin." }, { "slug": "ZOOM_DELETE_IQ_CONVERSATION", "name": "Delete IQ conversation", "description": "DEPRECATED: Use ZOOM_DELETE_ZRA_CONVERSATION instead (Zoom rebranded IQ to ZRA). Tool to delete a Zoom IQ conversation by its ID. Use when you need to permanently remove a specific Zoom IQ conversation from the system. Returns HTTP 200 with empty body on success." }, { "slug": "ZOOM_DELETE_IQ_CONVERSATION_COMMENT", "name": "Delete IQ conversation comment", "description": "DEPRECATED: Use ZOOM_DELETE_ZRA_CONVERSATION_COMMENT instead (Zoom rebranded IQ to ZRA). Tool to delete a comment from a Zoom IQ (Revenue Accelerator) conversation. Use when you need to remove a specific comment from a conversation. The endpoint uses idempotent DELETE behavior, returning success regardless of whether the comment exists." }, { "slug": "ZOOM_DELETE_IQ_DEAL_ACTIVITIES", "name": "Delete IQ deal activities", "description": "DEPRECATED: Use ZOOM_DELETE_ZRA_DEAL_ACTIVITIES instead (Zoom rebranded IQ to ZRA). Tool to delete activities associated with a Zoom IQ deal. Use when you need to remove activity records from a specific deal. Can delete all activities or specific ones by providing activity IDs." }, { "slug": "ZOOM_DELETE_MEETING_RECORDINGS", "name": "Delete meeting recordings", "description": "Deletes all cloud recordings for a meeting or webinar. Requires the account to have Cloud Recording enabled. Rate limit: Light. Required scopes: cloud_recording:delete:meeting_recording or cloud_recording:delete:meeting_recording:admin." }, { "slug": "ZOOM_DELETE_PROJECT", "name": "Delete whiteboard project", "description": "Deletes a whiteboard project by its ID. Deleting a project removes all associated whiteboards from the project. Use when you need to permanently remove a whiteboard project and all its contents from Zoom. This action is irreversible — once the project is deleted, it cannot be recovered, and all associated whiteboards will be removed." }, { "slug": "ZOOM_DELETE_PROJECT_COLLABORATOR", "name": "Remove project collaborator", "description": "Removes a collaborator from a whiteboard project. Use this action when you need to revoke a user's access to a specific whiteboard project. This action is irreversible — once a collaborator is removed, they will no longer have access to the project's whiteboards unless re-added. **Note:** The authenticated user must be the project owner, co-owner, or have admin permissions to remove collaborators." }, { "slug": "ZOOM_DELETE_RECORDING_FILE", "name": "Delete recording file", "description": "Deletes a specific cloud recording file from a meeting or webinar. This action is irreversible when using the 'delete' action - the file cannot be recovered once permanently removed. Use this action when you need to remove an individual recording file (such as a specific video, audio, transcript, or chat file) rather than all recordings for a meeting. Requires the account to have Cloud Recording enabled. Rate limit: Light." }, { "slug": "ZOOM_DELETE_WHITEBOARD", "name": "Delete whiteboard", "description": "Deletes a whiteboard by its unique identifier. Use when you need to permanently remove a specific whiteboard from Zoom. This action is irreversible — once deleted, the whiteboard cannot be recovered. Requires the user to have whiteboard delete permissions." }, { "slug": "ZOOM_DELETE_WHITEBOARD_COLLABORATOR", "name": "Delete whiteboard collaborator", "description": "Removes a collaborator from a whiteboard. Use this action when you need to revoke a user's access to a specific whiteboard by removing them as a collaborator. This action is irreversible for the collaborator's access — the collaborator will no longer be able to view or edit the whiteboard unless added back. Requires the user to have whiteboard admin or owner permissions. **Prerequisites:** - The authenticated user must be the whiteboard owner, co-owner, or have admin permissions - The collaborator must currently have access to the whiteboard **Common errors:** - \"Whiteboard not found\" - Invalid whiteboard ID - \"Collaborator not found\" - The specified collaborator does not have access to the whiteboard - \"Insufficient permissions\" - User lacks permission to remove collaborators" }, { "slug": "ZOOM_DELETE_ZRA_CONVERSATION", "name": "Delete ZRA conversation", "description": "Deletes a ZRA (Zoom Revenue Accelerator) conversation by ID. Use when you need to remove a conversation from the Revenue Accelerator system. This is an undocumented endpoint that returns HTTP 200 on success." }, { "slug": "ZOOM_DELETE_ZRA_CONVERSATION_COMMENT", "name": "Delete ZRA conversation comment", "description": "Tool to delete a comment from a Zoom Revenue Accelerator conversation. Use when you need to remove a specific comment from a ZRA conversation." }, { "slug": "ZOOM_DELETE_ZRA_CRM_SETTINGS", "name": "Delete ZRA CRM settings", "description": "Deletes CRM settings for Zoom Revenue Accelerator (ZRA). Use when you need to remove CRM configuration from the account." }, { "slug": "ZOOM_DELETE_ZRA_DEAL_ACTIVITIES", "name": "Delete ZRA deal activities", "description": "Tool to delete activities from a Zoom Revenue Accelerator (ZRA) deal. Use when you need to remove one or more activities associated with a specific deal by providing the deal ID and comma-separated activity IDs." }, { "slug": "ZOOM_DOWNLOAD_IMPORTED_WHITEBOARD_FILE", "name": "Download imported whiteboard file", "description": "Downloads a specific file that was imported into a whiteboard, including images, PDFs, DOCX, and other supported file formats. Use this action when you need to retrieve the actual file content of an imported whiteboard attachment. This action streams the file content directly from Zoom's servers." }, { "slug": "ZOOM_DOWNLOAD_WHITEBOARD_EXPORT", "name": "Download whiteboard export", "description": "Downloads the exported whiteboard content for a completed whiteboard export task. The task must have completed successfully before calling this action. Use when you need to retrieve the actual whiteboard content (drawings, annotations, images) that was exported using the Create whiteboard export API. Returns a ZIP archive containing the whiteboard files. This action is read-only and does not modify any whiteboard data. Use this action when you have created a whiteboard export task and want to download the resulting ZIP file containing the exported content." }, { "slug": "ZOOM_DOWNLOAD_WHITEBOARD_SESSION_ACTIVITY", "name": "Download whiteboard session activity", "description": "Downloads the activity archive file for a whiteboard archiving session. This action retrieves the PDF file containing whiteboard session activity data based on the provided file path. Use when you need to retrieve the archived activity file for a completed whiteboard session. Use this action when you have obtained a file path from the List whiteboard sessions activities endpoint and want to download the actual activity archive file. The file is returned as a PDF stream. This action is read-only and does not modify any data. Note: Files may expire and return 404 if the download URL has expired." }, { "slug": "ZOOM_GET_A_MEETING", "name": "Get a meeting", "description": "Retrieves detailed information about a Zoom meeting by its ID. Returns comprehensive meeting data including topic, schedule, URLs, passwords, settings, and for recurring meetings, occurrence details and recurrence patterns. For recurring meetings, defaults to the latest occurrence unless occurrence_id or show_previous_occurrences is specified. Returned start_time must be interpreted using the meeting's timezone field. Requires meeting:read scope. Rate limit: LIGHT." }, { "slug": "ZOOM_GET_A_MEETING_SUMMARY", "name": "Get a meeting summary (Paid accounts only)", "description": "IMPORTANT: This action requires a PAID Zoom account (Pro, Business, or Enterprise plan). Free Zoom accounts cannot use this feature and will receive a 400 error. Additionally requires: - AI Companion feature enabled in account settings - Meeting must not be end-to-end encrypted (E2EE) - Meeting summary must be enabled and generated for the meeting Rate limit: LIGHT. Response fields such as `summary_details` and `next_steps` are optional and may be absent or empty arrays." }, { "slug": "ZOOM_GET_A_WEBINAR", "name": "Get a webinar", "description": "Access Zoom Webinar details requires Pro or higher plan and Webinar add-on. Scopes include `webinar:read:admin` and `webinar:read`. Granular scopes and a 'LIGHT' rate limit also apply." }, { "slug": "ZOOM_GET_DAILY_USAGE_REPORT", "name": "Get daily usage report", "description": "The daily report provides Zoom service usage details, like new users, meetings, participants, and minutes per day for a month, requiring a Pro plan or higher. It has a 'Heavy' rate limit." }, { "slug": "ZOOM_GET_IQ_CONVERSATION_COMMENTS", "name": "Get IQ conversation comments", "description": "DEPRECATED: Use ZOOM_GET_ZRA_CONVERSATION_COMMENTS instead (Zoom rebranded IQ to ZRA). Tool to retrieve all comments for a specific Zoom IQ conversation. Use when you need to access comments, replies, and discussion threads within a conversation. Returns comment content, timestamps, user information, and mentions. Supports pagination for large comment sets." }, { "slug": "ZOOM_GET_IQ_CONVERSATION_CONTENT_ANALYSIS", "name": "Get IQ conversation content analysis", "description": "Tool to retrieve content analysis for a Zoom IQ conversation by its ID. Use when you need to get AI-generated insights and analysis from a Revenue Accelerator conversation. Returns structured analysis data including conversation insights and extracted content." }, { "slug": "ZOOM_GET_IQ_CONVERSATION_INTERACTIONS", "name": "Get IQ conversation interactions", "description": "DEPRECATED: Use ZOOM_GET_ZRA_CONVERSATION_INTERACTIONS instead (Zoom rebranded IQ to ZRA). Tool to retrieve interactions for a specific Zoom IQ (Revenue Accelerator) conversation. Use when you need to fetch conversation interaction data, including participant interactions and transcript details. Supports pagination for large result sets." }, { "slug": "ZOOM_GET_IQ_CONVERSATION_SCORECARDS", "name": "Get IQ conversation scorecards", "description": "DEPRECATED: Use ZOOM_GET_ZRA_CONVERSATION_SCORECARDS instead (Zoom rebranded IQ to ZRA). Tool to retrieve scorecards for a specific Zoom IQ conversation by conversation ID. Use when you need to access scorecard data associated with a conversation. Note: There is a known issue where the API may return an empty scorecards list even when scorecards exist in the UI." }, { "slug": "ZOOM_GET_IQ_DEAL", "name": "Get IQ deal", "description": "Tool to get details of a specific deal in Zoom Revenue Accelerator (formerly Zoom IQ). Returns deal information for the specified deal ID including name, amount, stage, owner, and dates." }, { "slug": "ZOOM_GET_IQ_DEAL_ACTIVITIES", "name": "Get IQ deal activities", "description": "DEPRECATED: Use ZOOM_GET_ZRA_DEAL_ACTIVITIES instead (Zoom rebranded IQ to ZRA). Tool to retrieve activities associated with a Zoom Revenue Accelerator (formerly Zoom IQ) deal. Use when you need to list all activities for a specific deal." }, { "slug": "ZOOM_GET_IQ_USER_CONVERSATIONS_PLAYLISTS", "name": "Get IQ user conversation playlists", "description": "DEPRECATED: Use ZOOM_LIST_ZRA_USER_CONVERSATION_PLAYLISTS instead (Zoom rebranded IQ to ZRA). Tool to retrieve conversation playlists for a Zoom IQ (Revenue Accelerator) user. Returns playlist information or an empty response when no playlists exist." }, { "slug": "ZOOM_GET_MARKETPLACE_USER_APPS", "name": "Get marketplace user apps", "description": "Retrieves a paginated list of Zoom Marketplace apps installed for a specific user. Returns app details including app ID, name, type, and installation status. Use when you need to check which marketplace apps a user has access to." }, { "slug": "ZOOM_GET_MARKETPLACE_USER_ENTITLEMENTS", "name": "Get marketplace user entitlements", "description": "Retrieves marketplace entitlements for a specific Zoom user by ID or 'me'. Returns list of entitlements associated with the user's account. Use when you need to check user marketplace subscriptions or permissions." }, { "slug": "ZOOM_GET_MEETING_RECORDINGS", "name": "Get meeting recordings", "description": "To download meeting recordings, use `download_url`. Include OAuth token in the header for passcode-protected ones. Supports `recording:read` and `phone_recording:read:admin` scopes, with a `LIGHT` rate limit. Requires a paid Zoom plan with cloud recording enabled; missing entitlements return empty results or entitlement errors, not system failures. Error code 3301 means no cloud recording exists for the meeting — an expected empty-result case." }, { "slug": "ZOOM_GET_PAST_MEETING_PARTICIPANTS", "name": "Get past meeting participants", "description": "Retrieves the list of participants who attended a past (ended) Zoom meeting. Requires a paid Zoom account (Pro or higher). Meeting must have ended with at least one participant (excluding solo meetings). Use meeting ID for the latest instance, or instance UUID for a specific occurrence." }, { "slug": "ZOOM_GET_PROJECT", "name": "Get whiteboard project", "description": "Retrieves detailed information about a specific whiteboard project by its ID. Returns project metadata including name, description, owner, sharing settings, and timestamps. Use this action when you need to view details about a Zoom Whiteboard project or retrieve its configuration." }, { "slug": "ZOOM_GET_USER", "name": "Get a user", "description": "Retrieves detailed information about a specific Zoom user by ID, email, or 'me'. Returns user type, role, license info, and account metadata. Use when you need to check user type/license or retrieve user profile details." }, { "slug": "ZOOM_GET_WHITEBOARD", "name": "Get a whiteboard", "description": "Retrieves details about a specific whiteboard document. Returns comprehensive whiteboard information including name, creation/modification dates, share settings, and classification. Use this action when you need to fetch metadata for a specific whiteboard by its ID. Requires whiteboard:read or whiteboard:read:admin scope." }, { "slug": "ZOOM_GET_WHITEBOARD_EXPORT_STATUS", "name": "Get whiteboard export status", "description": "Retrieves the status of a whiteboard export task by its task ID. This action queries the current state of an export request initiated via the create whiteboard export action. Use this action when you need to check whether a whiteboard export has completed processing, is still being generated, or has failed. Poll this endpoint until status changes from 'processing' to either 'successed' or 'failed'. The export is processed asynchronously, so you should poll this endpoint periodically to check for completion before attempting to download the exported file." }, { "slug": "ZOOM_GET_WHITEBOARD_SESSION", "name": "Get a whiteboard session", "description": "Retrieves detailed information about a specific whiteboard session by its session ID. Returns session metadata including start/end times, whiteboard info, and a list of activities performed during the session. Use this action when you need to retrieve session details, activity logs, or participant information for a Zoom Whiteboard session. For large result sets, use pagination with next_page_token." }, { "slug": "ZOOM_GET_ZRA_CONVERSATION_COMMENTS", "name": "Get ZRA conversation comments", "description": "Tool to retrieve comments for a specific Zoom Revenue Accelerator (ZRA) conversation. Use when you need to access user comments, replies, and annotations associated with a conversation recording or transcript." }, { "slug": "ZOOM_GET_ZRA_CONVERSATION_INTERACTIONS", "name": "Get ZRA conversation interactions", "description": "Retrieves interaction details for a specific Zoom Revenue Accelerator (ZRA) conversation. Returns interaction data including speakers, timestamps, content, and metadata for conversation analysis. Use when you need detailed interaction-level data from ZRA conversations." }, { "slug": "ZOOM_GET_ZRA_CONVERSATION_SCORECARDS", "name": "Get ZRA conversation scorecards", "description": "Tool to retrieve scorecards for a specific conversation in Zoom Revenue Accelerator. Use when you need to get scorecard data and performance metrics for a particular conversation." }, { "slug": "ZOOM_GET_ZRA_DEAL_ACTIVITIES", "name": "Get ZRA deal activities", "description": "Tool to retrieve activities associated with a Zoom Revenue Accelerator (ZRA) deal. Use when you need to list all activities for a specific deal in ZRA." }, { "slug": "ZOOM_IMPORT_WHITEBOARD", "name": "Import whiteboard", "description": "Initiates an import of a whiteboard from an external source (Miro, Mural, or Visio files). The import is processed asynchronously and returns a task_id for tracking progress. Use this task_id to poll for import completion and retrieve the resulting whiteboard. Use this action when you need to convert an externally created whiteboard into a Zoom whiteboard. The file must already be uploaded to Zoom before initiating the import." }, { "slug": "ZOOM_LIST_ALL_RECORDINGS", "name": "List all recordings", "description": "This text details how to list Zoom cloud recordings for a user, notably by using \"me\" for user-level apps and requiring an OAuth token for access. It requires a Pro plan, Cloud Recording enabled, and has a MEDIUM rate limit." }, { "slug": "ZOOM_LIST_ARCHIVED_FILES", "name": "List archived files", "description": "Lists archived meeting and webinar files within a specified date range (max 7 days). Requires the 'Meeting and Webinar Archiving' feature to be enabled by Zoom Support. Use this to retrieve compliance recordings archived to third-party storage platforms." }, { "slug": "ZOOM_LIST_DEVICES", "name": "List devices", "description": "Lists devices in your Zoom account managed through Zoom Device Management (ZDM). Returns information about Zoom Room devices including computers, controllers, scheduling displays, and whiteboards. **Scopes:** `device:read:admin`, `device:write:admin`, `device:read:list_zdm_devices:admin` **[Rate Limit Label](https://marketplace.zoom.us/docs/api-reference/rate-limits#rate-limits):** `HEAVY`" }, { "slug": "ZOOM_LIST_IQ_CONVERSATIONS", "name": "List IQ conversations", "description": "DEPRECATED: Use ZOOM_LIST_ZRA_CONVERSATIONS instead (Zoom rebranded IQ to ZRA). Tool to list Zoom Revenue Accelerator (formerly Zoom IQ) conversations. Use when you need to retrieve conversation metadata including meeting and phone conversations from Zoom Revenue Accelerator." }, { "slug": "ZOOM_LIST_IQ_DEALS", "name": "List IQ deals", "description": "DEPRECATED: Use ZOOM_LIST_ZRA_DEALS instead (Zoom rebranded IQ to ZRA). Tool to list deals from Zoom Revenue Accelerator (IQ). Returns deal information including name, amount, stage, and owner details. Use when you need to retrieve CRM deal data from Zoom IQ." }, { "slug": "ZOOM_LIST_MARKETPLACE_APP_CUSTOM_FIELDS", "name": "List marketplace app custom fields", "description": "Tool to retrieve custom fields configured for a Zoom Marketplace app. Use when you need to list all custom fields available for the marketplace app." }, { "slug": "ZOOM_LIST_MEETINGS", "name": "List meetings", "description": "This Zoom API lists a user's scheduled meetings using the `me` value for user-level apps, excluding instant meetings and only showing unexpired ones. Requires specific scopes and has a `MEDIUM` rate limit. No server-side filtering by topic, agenda, or text fields; all such filtering must be done client-side. `meetingId` values exceed 32-bit integer range; treat as full-length numeric or string identifiers." }, { "slug": "ZOOM_LIST_MEETING_SUMMARY_TEMPLATES", "name": "List meeting summary templates", "description": "Tool to retrieve a list of meeting summary templates for a specified user. Use when you need to view available meeting summary templates or select a template for meeting summaries." }, { "slug": "ZOOM_LIST_PAST_MEETING_INSTANCES", "name": "List past meeting instances", "description": "Tool to retrieve all UUIDs for past instances of a given meeting. Use when you need to get the list of all occurrences (instances) of a recurring meeting that have already ended. Each instance has a unique UUID that can be used to query specific details about that occurrence." }, { "slug": "ZOOM_LIST_PROJECT_COLLABORATORS", "name": "List project collaborators", "description": "Lists all collaborators for a whiteboard project, including their roles and permissions. Use this action when you need to view who has access to a whiteboard project and what permission level each collaborator has. This action is read-only and does not modify any data. **Note**: This action requires the whiteboard project to exist and the authenticated user to have appropriate permissions (project owner, co-owner, or admin)." }, { "slug": "ZOOM_LIST_PROJECTS", "name": "List whiteboard projects", "description": "Lists all whiteboard projects accessible to the user. Returns project metadata including ID, name, owner, and timestamps. Use this action when you need to retrieve whiteboard projects with optional filtering by owner or name search. Supports pagination through the next_page_token parameter." }, { "slug": "ZOOM_LIST_USERS_COLLABORATION_DEVICES", "name": "List user collaboration devices", "description": "Tool to list collaboration devices associated with a user. Use when you need to retrieve information about a user's collaboration devices. For user-level apps, pass 'me' instead of the userId parameter to get devices for the authenticated user." }, { "slug": "ZOOM_LIST_USERS_SETTINGS", "name": "Get user settings", "description": "Tool to retrieve a user's settings including meeting scheduling, in-meeting features, email notifications, recording, telephony, and security preferences. Use when you need to check or display a user's Zoom configuration settings." }, { "slug": "ZOOM_LIST_WEBINAR_PARTICIPANTS", "name": "List webinar participants", "description": "Get a list of past webinar participants with a Pro plan or above plus an add-on. Requires specific scopes and has a medium rate limit." }, { "slug": "ZOOM_LIST_WEBINAR_REGISTRANTS", "name": "List webinar registrants", "description": "Retrieves the list of registrants for a webinar with registration enabled. This endpoint returns registrants (people who registered for the webinar), not participants (people who attended). Use this action when you need to view registrant details for CRM sync, reporting, or managing approvals for registration-based webinars. Supports filtering by occurrence, status (approved/pending/denied), and tracking source for targeted queries." }, { "slug": "ZOOM_LIST_WEBINARS", "name": "List webinars", "description": "The API lists all scheduled webinars for Zoom users with a webinar plan, using `me` for user-level apps. It only shows unexpired webinars for hosts broadcasting to up to 10,000 attendees. Requires Pro plan upwards and specific scopes. Rate limit: MEDIUM." }, { "slug": "ZOOM_LIST_WHITEBOARDS", "name": "List whiteboards", "description": "Lists all whiteboards accessible to the user. Returns whiteboard metadata including ID, name, owner, and timestamps. Use this action when you need to retrieve whiteboards with optional filtering by owner, date range, project, or name search. Supports pagination through the next_page_token parameter." }, { "slug": "ZOOM_LIST_ZRA_CONVERSATIONS", "name": "List ZRA conversations", "description": "Tool to list all conversations in Zoom Revenue Accelerator. Use when you need to retrieve analytics data from Revenue Accelerator conversations, including engagement scores, sentiment analysis, and meeting metrics." }, { "slug": "ZOOM_LIST_ZRA_CRM_ACCOUNTS", "name": "List ZRA CRM accounts", "description": "Lists CRM accounts from Zoom Revenue Accelerator by account IDs. Use when you need to retrieve CRM account information for specific account identifiers (up to 100 IDs)." }, { "slug": "ZOOM_LIST_ZRA_CRM_CONTACTS", "name": "List ZRA CRM contacts", "description": "Tool to retrieve CRM contact information from Zoom IQ Revenue Accelerator (ZRA). Use when you need to fetch detailed contact information for specific CRM contacts. Supports up to 100 contact IDs per request." }, { "slug": "ZOOM_LIST_ZRA_CRM_DEALS", "name": "List ZRA CRM deals", "description": "Tool to retrieve CRM deal information from Zoom Revenue Accelerator (ZRA). Use when you need to fetch detailed deal information for specific CRM deals. Supports up to 100 deal IDs per request." }, { "slug": "ZOOM_LIST_ZRA_CRM_LEADS", "name": "List ZRA CRM leads", "description": "Tool to retrieve CRM lead information from Zoom IQ Revenue Accelerator (ZRA). Use when you need to fetch detailed lead information for specific CRM leads. Supports up to 100 lead IDs per request." }, { "slug": "ZOOM_LIST_ZRA_CRM_SETTINGS", "name": "List ZRA CRM settings", "description": "Tool to retrieve the current CRM API registration information for Zoom Revenue Accelerator (ZRA). Use when you need to view the configured CRM settings including type, name, currency, deal stages, and URL patterns." }, { "slug": "ZOOM_LIST_ZRA_DEALS", "name": "List ZRA deals", "description": "Tool to list deals from Zoom Revenue Accelerator (ZRA). Returns deal information including name, amount, stage, and owner details. Use when you need to retrieve CRM deal data from Zoom ZRA." }, { "slug": "ZOOM_LIST_ZRA_SCHEDULED", "name": "List ZRA scheduled items", "description": "Tool to list scheduled Zoom Revenue Accelerator (ZRA) items. Use when you need to retrieve scheduled ZRA-related data. Returns an empty list when no scheduled items are available for the authenticated account." }, { "slug": "ZOOM_LIST_ZRA_SETTINGS_INDICATORS", "name": "List ZRA settings indicators", "description": "Tool to retrieve account indicator settings for Zoom Revenue Accelerator (ZRA). Use when you need to view configured indicators that identify specific words, phrases, or sentences in conversations." }, { "slug": "ZOOM_LIST_ZRA_USER_CONVERSATION_PLAYLISTS", "name": "List ZRA user conversation playlists", "description": "Tool to list conversation playlists for a specific user in Zoom Revenue Accelerator. Use when you need to retrieve playlists containing conversation clips for coaching or sharing purposes." }, { "slug": "ZOOM_MOVE_WHITEBOARDS_TO_PROJECT", "name": "Move whiteboards to project", "description": "Moves one or more whiteboards to a specified Zoom Whiteboard project. Use when you need to organize whiteboards by assigning them to a specific project for better management and access control. The maximum number of whiteboards that can be moved in a single request is 50." }, { "slug": "ZOOM_REMOVE_WHITEBOARD_CLASSIFICATION", "name": "Remove whiteboard classification", "description": "Removes the classification label from a whiteboard. Use this action when you need to unassign or clear a security classification label from an existing whiteboard. Not supported in Gov cluster. Each whiteboard can only have one classification label at a time — calling this action removes the currently applied classification, if any. This action is reversible — you can apply a new classification label afterward using the ApplyClassificationToWhiteboard action." }, { "slug": "ZOOM_REMOVE_WHITEBOARDS_FROM_PROJECT", "name": "Remove whiteboards from project", "description": "Removes one or more whiteboards from a specified Zoom Whiteboard project. This action is irreversible — once whiteboards are removed from a project, they cannot be automatically restored to that project. Use when you need to clean up whiteboards from a project or reassign them to a different project." }, { "slug": "ZOOM_SEARCH_COMPANY_CONTACTS", "name": "Search company contacts", "description": "Tool to search company contacts in Zoom by first name, last name, or email. Use when you need to find specific contacts within the organization. Supports pagination for large result sets and optionally includes presence status." }, { "slug": "ZOOM_UPDATE_A_MEETING", "name": "Update a meeting", "description": "To update a meeting via API, ensure `start_time` is future-dated; `recurrence` is needed. Limit: 100 requests/day, 100 updates/meeting in 24 hrs. Requires `meeting:write` and `meeting:write:admin` scopes, with a `LIGHT` rate limit." }, { "slug": "ZOOM_UPDATE_CLASSIFICATION_LABEL", "name": "Update classification label", "description": "Updates an existing classification label in Zoom Whiteboard. Use this action when you need to modify the name, color, sensitivity level, description, guideline URL, or default status of an existing classification label. Only the fields provided in the request body will be updated. Changes are saved as a draft and may need to be published separately. Use this action when you need to rename a classification label to better reflect its purpose, update the color coding for visibility, adjust sensitivity levels to match your organization's security policies, or change which label is set as the default for new whiteboards. Note: This action modifies existing data but is not destructive — the classification label and all associated whiteboards remain intact even after updates." }, { "slug": "ZOOM_UPDATE_IQ_CONVERSATION_COMMENT", "name": "Update IQ conversation comment", "description": "DEPRECATED: Use ZOOM_UPDATE_ZRA_CONVERSATION_COMMENT instead (Zoom rebranded IQ to ZRA). Tool to update a comment in a Zoom IQ conversation. Use when you need to modify an existing comment's text, mentions, or recording timestamp." }, { "slug": "ZOOM_UPDATE_IQ_CONVERSATION_HOST", "name": "Update IQ conversation host", "description": "DEPRECATED: Use ZOOM_UPDATE_ZRA_CONVERSATION_HOST instead (Zoom rebranded IQ to ZRA). Tool to update the host of a Zoom IQ (Revenue Accelerator) conversation. Use when you need to transfer conversation ownership to a different user." }, { "slug": "ZOOM_UPDATE_PROJECT", "name": "Update a whiteboard project", "description": "Updates the name of an existing whiteboard project in Zoom. This action allows you to rename a project to better reflect its content or purpose. The project_id is required to identify which project to update. This action is commonly used when reorganizing whiteboard content or updating project names to reflect new themes. Use this action when you need to rename a whiteboard project to better organize your Zoom whiteboards, update project names to reflect new topics or purposes, or batch-rename projects as part of a larger content management workflow. Note: This action modifies existing data but is not destructive — the project and all its associated whiteboards remain intact even after a name change." }, { "slug": "ZOOM_UPDATE_PROJECT_COLLABORATORS", "name": "Update project collaborators", "description": "Updates collaborator permissions for a whiteboard project. Use this action when you need to change the permission level of one or more collaborators on a whiteboard project. This allows reassigning roles such as changing a viewer to an editor or promoting a collaborator to owner status. **Prerequisites:** - The user must be the project owner or have admin permissions - The whiteboard project must exist and be accessible **Required fields:** project_id, collaborators (list with collaborator_id and role for each) **Common errors:** - \"User not found\" - The collaborator ID does not match a Zoom user - \"Project not found\" - Invalid project ID - \"Invalid collaborator role\" - Role value must be 0, 1, 2, 3, or 4" }, { "slug": "ZOOM_UPDATE_WHITEBOARD_COLLABORATOR", "name": "Update whiteboard collaborator", "description": "Updates collaborator settings for a whiteboard. Changes the permission role for one or more collaborators on the whiteboard. Use this action when you need to modify what access levels collaborators have, such as promoting a viewer to editor or demoting an owner to co-owner. Note: When assigning a new Owner or Co-owner, the user must belong to the same account as the original Owner. If ownership is transferred, the original owner automatically becomes a Co-owner. This action is irreversible once the role changes are saved." }, { "slug": "ZOOM_UPDATE_WHITEBOARD_SHARE_SETTINGS", "name": "Update whiteboard share settings", "description": "Updates the sharing settings for a whiteboard, controlling who can access and edit the whiteboard. Use this action when you need to change the share permissions, visibility scope, or access role for a specific whiteboard. The API returns HTTP 204 No Content on success." }, { "slug": "ZOOM_UPDATE_ZRA_CONVERSATION_COMMENT", "name": "Update ZRA conversation comment", "description": "Tool to update a comment in a Zoom Revenue Accelerator conversation. Use when you need to modify the text, mentions, or timestamp of an existing comment." }, { "slug": "ZOOM_UPDATE_ZRA_CONVERSATION_HOST", "name": "Update ZRA conversation host", "description": "Tool to update the host of a Zoom Revenue Accelerator (ZRA) conversation. Use when you need to transfer conversation ownership to a different user." }, { "slug": "ZOOM_UPLOAD_WHITEBOARD_FILE", "name": "Upload Whiteboard File", "description": "Uploads a file to be used in Zoom Whiteboard. Supports PDF and Visio (.vsdx) file formats. Use when you need to import external documents into Zoom Whiteboard for collaboration and editing. The file upload uses a separate file API endpoint (fileapi.zoom.us)." }, { "slug": "ZOOM_VALIDATE_MARKETPLACE_APP_MANIFEST", "name": "Validate marketplace app manifest", "description": "Tool to validate a Zoom Marketplace app manifest before submission or update. Use when you need to verify that an app manifest configuration is valid and meets Zoom's requirements." } ], "triggers": [ { "slug": "ZOOM_DAILY_USAGE_REPORT_CHANGED_TRIGGER", "name": "Daily Usage Report Changed", "description": "Triggers when the Zoom daily usage report changes for a selected year/month.\n This trigger monitors daily usage statistics including:\n - New users added\n - Number of meetings held\n - Participant counts\n - Meeting minutes consumed" }, { "slug": "ZOOM_MEETING_DETAILS_CHANGED_TRIGGER", "name": "Meeting Details Changed", "description": "Triggers when a specific meeting's details change.\n Detects changes such as:\n - Meeting topic changes\n - Agenda updates\n - Schedule changes (timezone, duration)\n - Settings modifications (waiting room, recording, video, etc.)\n - Password changes\n - Recurrence pattern updates" }, { "slug": "ZOOM_MEETING_RECORDING_CHANGED_TRIGGER", "name": "Meeting Recording Changed", "description": "Triggers when a specific meeting's cloud recordings change.\n Detects changes such as:\n - New recording files appearing\n - Recording processing completion (status changes)\n - Recording metadata changes (count, size, etc.)\n - New participant audio files" }, { "slug": "ZOOM_MEETING_SUMMARY_UPDATED_TRIGGER", "name": "Meeting Summary Created or Updated", "description": "Triggers when a meeting summary is created or updated for a specific meeting.\n\n IMPORTANT: This trigger requires a PAID Zoom account (Pro, Business, or Enterprise plan).\n Free Zoom accounts cannot use this feature.\n\n Additionally requires:\n - AI Companion feature enabled in account settings\n - Meeting must not be end-to-end encrypted (E2EE)\n - Meeting summary must be enabled and generated for the meeting" }, { "slug": "ZOOM_NEW_CLOUD_RECORDING_TRIGGER", "name": "New Cloud Recording", "description": "Triggers when a new cloud recording meeting instance appears for a user." }, { "slug": "ZOOM_NEW_MEETING_CREATED_TRIGGER", "name": "New Meeting Created", "description": "Triggers when a new Zoom meeting is created for a user." }, { "slug": "ZOOM_NEW_MEETING_PARTICIPANT_TRIGGER", "name": "New Meeting Participant", "description": "Triggers when a new participant appears in a past meeting's participant report." }, { "slug": "ZOOM_NEW_WEBINAR_CREATED_TRIGGER", "name": "New Webinar Created", "description": "Triggers when a new webinar is created for a user." }, { "slug": "ZOOM_NEW_WEBINAR_PARTICIPANT_TRIGGER", "name": "New Webinar Participant", "description": "Triggers when a new participant appears in a past webinar's participant list." }, { "slug": "ZOOM_USER_INFORMATION_CHANGED_TRIGGER", "name": "User Information Changed", "description": "Triggers when a Zoom user's information changes.\n Detects changes such as:\n - Profile information updates (name, email, display name)\n - Role or type changes\n - Department, job title, or location updates\n - Contact information changes (phone, timezone)\n - Status changes (active, inactive, pending)\n - Settings updates (language, pronouns, etc.)" }, { "slug": "ZOOM_WEBINAR_DETAILS_CHANGED_TRIGGER", "name": "Webinar Details Changed", "description": "Triggers when a Zoom webinar's details change.\n Detects changes such as:\n - Topic updates\n - Start time changes\n - Agenda modifications\n - Duration changes\n - Settings updates (host video, registration type, audio options, etc.)\n - Status changes\n - Occurrence updates for recurring webinars\n - Recurrence pattern changes" } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zoom_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "contact:read:list_contacts,meeting:read:summary,meeting:read:list_registrants,meeting:read:list_past_participants,meeting:read:list_meetings,meeting:write:meeting,meeting:update:meeting,meeting:write:registrant,meeting:read:meeting,webinar:read:webinar,webinar:read:list_registrants,webinar:read:list_webinars,webinar:read:list_past_participants,webinar:read:participant,webinar:write:registrant,archiving:read:archived_files,archiving:read:list_archived_files,cloud_recording:delete:meeting_transcript,cloud_recording:read:meeting_transcript,cloud_recording:read:list_user_recordings,cloud_recording:read:list_recording_registrants,cloud_recording:read:list_recording_files,user:read:list_collaboration_devices,user:read:collaboration_device,user:read:settings,user:read:user" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "onepage", "name": "Onepage", "logo": "https://logos.composio.dev/api/onepage", "description": "API for enriching user and company data, providing endpoints for token validation and generic search.", "category": "productivity", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ONEPAGE_SEARCH_INPUT_POST_REQUEST", "name": "Search input post request", "description": "The SearchInput endpoint allows users to perform a search query within the OnePage platform. It accepts a required search string and optional parameters for language and output format customization. This endpoint is designed for retrieving relevant information based on user-specified search terms, with the ability to filter results by language and choose between structured (JSON) or plain text output. Use this endpoint when you need to search for specific content or information within the OnePage ecosystem. It's particularly useful for integrating search functionality into applications or workflows that interact with OnePage data. Note that this endpoint focuses solely on search functionality and does not provide additional features like content creation or modification." }, { "slug": "ONEPAGE_TOKEN_DETAILS_REQUEST", "name": "Token details request", "description": "Retrieves detailed information about a specific token in the OnePage system. This endpoint should be used when you need to obtain comprehensive data about a token, such as its associated permissions, expiration date, or other metadata. It's particularly useful for token management tasks, such as verifying token validity or checking token attributes. The endpoint accepts a single token and returns its corresponding details. It should not be used for token creation, deletion, or modification operations. Note that the specific details returned may vary based on the OnePage implementation and the token's type or purpose." } ], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "onepage_bearer_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "entelligence", "name": "Entelligence", "logo": "https://logos.composio.dev/api/entelligence", "description": "Entelligence leverages artificial intelligence to provide insights, recommendations, and predictive analytics for businesses seeking data-driven decision-making capabilities", "category": "artificial intelligence", "authSchemes": [ "NO_AUTH" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENTELLIGENCE_ADD_A_NEW_REPOSITORY", "name": "Add a new repository", "description": "Add a GitHub repository to Entelligence for code analysis and AI-powered insights. The repository will be analyzed asynchronously. After adding, you can use the 'interact_with_the_repository_agent' action to ask questions about the codebase. Returns a repo_uuid that can be used to track the repository." }, { "slug": "ENTELLIGENCE_INTERACT_WITH_THE_REPOSITORY_AGENT", "name": "Interact with the repository agent", "description": "Ask questions about a codebase using Entelligence's AI-powered Repository Agent. Requires a repository to be added first using the add_a_new_repository action. The agent can answer questions about code architecture, functionality, dependencies, and help with understanding the repository structure." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "entelligence", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "retellai", "name": "Retell AI", "logo": "https://logos.composio.dev/api/retellai", "description": "RetellAI captures calls and transcripts, enabling businesses to analyze conversations, extract insights, and enhance customer interactions in one centralized platform", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 67, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RETELLAI_ADD_COMMUNITY_VOICE", "name": "Add community voice", "description": "Add a community voice from ElevenLabs to your Retell voice library. Use when you need to import a shared community voice for use in your agents." }, { "slug": "RETELLAI_ADD_KNOWLEDGE_BASE_SOURCES", "name": "Add sources to knowledge base", "description": "Tool to add sources (documents, URLs, text) to an existing knowledge base in Retell AI. Use when you need to add additional content to a knowledge base. At least one of knowledge_base_texts, knowledge_base_files, or knowledge_base_urls should be provided." }, { "slug": "RETELLAI_BUY_A_NEW_PHONE_NUMBER_BIND_AGENTS", "name": "Buy a new phone number bind agents", "description": "This endpoint allows purchasing a new phone number with a specified area code and binding it to designated agents for inbound and outbound calls. It requires JSON with agent IDs and area code. Responses indicate the creation status or errors. A purchased phone number is a prerequisite for initiating outbound calls; an empty phone number inventory will prevent outbound calls from being made." }, { "slug": "RETELLAI_CREATE_AGENT", "name": "Create Voice AI Agent", "description": "Create a new voice AI agent with specified configuration. Use when you need to set up a voice-based AI agent with custom response engine, voice settings, and behavior configuration." }, { "slug": "RETELLAI_CREATE_A_NEW_OUTBOUND_PHONE_CALL", "name": "Create a new outbound phone call", "description": "Initiate an outbound call by POST to '/v2/create-phone-call'. Requires 'from_number' and 'to_number' in E.164 format. Optional overrides and metadata supported. On success, returns call details including type, status, and IDs." }, { "slug": "RETELLAI_CREATE_A_NEW_WEB_CALL", "name": "Create a new web call", "description": "The /v2/create-web-call endpoint creates a web call with a unique agent ID, returning call details like type, token, call ID, and status in JSON format, with a 201 response. Optional metadata and variables can be included." }, { "slug": "RETELLAI_CREATE_BATCH_TEST", "name": "Create Batch Test", "description": "Tool to create a batch test job that runs multiple test cases against an agent. Use when you need to evaluate agent performance across multiple test scenarios simultaneously." }, { "slug": "RETELLAI_CREATE_CHAT", "name": "Create a new chat session", "description": "Tool to create a new chat session with a chat agent. Use when you need to initiate a new chat conversation with a RetellAI chat agent." }, { "slug": "RETELLAI_CREATE_CHAT_AGENT", "name": "Create a new chat agent", "description": "Create a new chat agent with specified configuration. Use when you need to set up a chat-based AI agent with custom response engine and behavior settings." }, { "slug": "RETELLAI_CREATE_CHAT_COMPLETION", "name": "Create chat completion", "description": "Tool to create a chat completion for an existing chat session, generating the agent's response to a user message. Use when you need the agent to respond to user input in an ongoing chat conversation." }, { "slug": "RETELLAI_CREATE_CONVERSATION_FLOW", "name": "Create conversation flow", "description": "Create a new Conversation Flow that can be attached to an agent for response generation. Requires start_speaker, model_choice, and nodes. Returns conversation_flow_id and full configuration." }, { "slug": "RETELLAI_CREATE_CONVERSATION_FLOW_COMPONENT", "name": "Create conversation flow component", "description": "Creates a new shared conversation flow component at POST '/create-conversation-flow-component'. Requires 'name' and 'nodes' array. Optional: tools, mcps, start_node_id, begin_tag_display_position. Returns component ID, timestamp, and the full component definition." }, { "slug": "RETELLAI_CREATE_KNOWLEDGE_BASE", "name": "Create a new knowledge base", "description": "Tool to create a new knowledge base in Retell AI with texts, files, and URLs. Use when you need to create a knowledge base for an AI agent. At least one of knowledge_base_texts, knowledge_base_files, or knowledge_base_urls should be provided." }, { "slug": "RETELLAI_CREATE_RETELL_LLM", "name": "Create Retell LLM Response Engine", "description": "Create a new Retell LLM Response Engine that can be attached to an agent. Use when you need to configure a new LLM-powered response system with custom prompts, tools, and conversation flows." }, { "slug": "RETELLAI_CREATE_TEST_CASE_DEFINITION", "name": "Create Test Case Definition", "description": "Tool to create a test case definition for agent QA testing in Retell AI. Use when you need to define test scenarios for evaluating agent performance with specific user personas, goals, and success metrics." }, { "slug": "RETELLAI_DELETE_AGENT", "name": "Delete agent", "description": "Deletes an existing agent by its unique identifier. Returns 204 No Content on successful deletion." }, { "slug": "RETELLAI_DELETE_CALL", "name": "Delete call", "description": "Delete a specific call and its associated data by call ID. Use when you need to permanently remove a call record from the system." }, { "slug": "RETELLAI_DELETE_CHAT_AGENT", "name": "Delete chat agent", "description": "Delete an existing chat agent by its unique identifier. Use when you need to permanently remove a chat agent from the system." }, { "slug": "RETELLAI_DELETE_CONVERSATION_FLOW", "name": "Delete conversation flow", "description": "Delete a conversation flow and all its versions. Use when you need to permanently remove a conversation flow from the system." }, { "slug": "RETELLAI_DELETE_CONVERSATION_FLOW_COMPONENT", "name": "Delete conversation flow component", "description": "Delete a shared conversation flow component. When deleting a shared component, creates local copies for all linked conversation flows." }, { "slug": "RETELLAI_DELETE_KNOWLEDGE_BASE", "name": "Delete knowledge base", "description": "Delete an existing knowledge base by its unique identifier. Use when you need to permanently remove a knowledge base from the system." }, { "slug": "RETELLAI_DELETE_KNOWLEDGE_BASE_SOURCE", "name": "Delete knowledge base source", "description": "Delete an existing source from a knowledge base. Use when you need to remove a specific document, text, or URL source from a knowledge base." }, { "slug": "RETELLAI_DELETE_PHONE_NUMBER", "name": "Delete phone number", "description": "Tool to delete an existing phone number from Retell AI. Use when you need to remove a phone number that is no longer needed. The phone number must be in E.164 format (e.g., +14159998888)." }, { "slug": "RETELLAI_DELETE_RETELL_LLM", "name": "Delete Retell LLM", "description": "Delete an existing Retell LLM Response Engine by its unique identifier. Use when you need to permanently remove a Retell LLM from the system." }, { "slug": "RETELLAI_DELETE_TEST_CASE_DEFINITION", "name": "Delete test case definition", "description": "Delete a test case definition by its unique identifier. Use when you need to permanently remove a test case definition from the system." }, { "slug": "RETELLAI_END_CHAT", "name": "End chat", "description": "Tool to end an active chat session. Use when you need to terminate an ongoing chat conversation." }, { "slug": "RETELLAI_GET_AGENT", "name": "Retrieve details of a specific agent", "description": "Retrieve details of a specific agent by its unique identifier. Use when you need to access agent configuration details." }, { "slug": "RETELLAI_GET_AGENT_VERSIONS", "name": "Get agent versions", "description": "Tool to retrieve all versions of a specific agent. Use when you need to view version history or access previous configurations of an agent." }, { "slug": "RETELLAI_GET_BATCH_TEST", "name": "Get batch test", "description": "Retrieve details and results of a specific batch test job. Use when you need to check the status and results of a batch test execution." }, { "slug": "RETELLAI_GET_CHAT", "name": "Get chat details", "description": "Tool to retrieve details of a specific chat session by chat ID. Use when you need to access chat transcript, status, or analysis data." }, { "slug": "RETELLAI_GET_CHAT_AGENT", "name": "Retrieve details of a specific chat agent", "description": "Retrieve details of a specific chat agent by its unique identifier. Use when you need to access chat agent configuration details." }, { "slug": "RETELLAI_GET_CHAT_AGENT_VERSIONS", "name": "Get all versions of a chat agent", "description": "Retrieve all versions of a specific chat agent by its unique identifier. Use when you need to access version history of a chat agent." }, { "slug": "RETELLAI_GET_CONCURRENCY", "name": "Get concurrency", "description": "Retrieves the current concurrency and concurrency limits for the organization. Use when you need to check concurrent call capacity and availability." }, { "slug": "RETELLAI_GET_CONVERSATION_FLOW", "name": "Get Conversation Flow", "description": "Retrieve details of a specific Conversation Flow by its ID. Use when you need to fetch conversation flow configuration including nodes, version, and settings." }, { "slug": "RETELLAI_GET_CONVERSATION_FLOW_COMPONENT", "name": "Get conversation flow component", "description": "Retrieves a shared conversation flow component by its unique identifier. Use when you need to fetch details of a specific conversation flow component." }, { "slug": "RETELLAI_GET_KNOWLEDGE_BASE", "name": "Get knowledge base", "description": "Retrieve details of a specific knowledge base by its unique identifier. Use when you need to access knowledge base configuration including name, status, sources, and refresh settings." }, { "slug": "RETELLAI_GET_RETELL_LLM", "name": "Retrieve details of a specific Retell LLM", "description": "Retrieve details of a specific Retell LLM Response Engine by its unique identifier. Use when you need to access LLM configuration including model settings, prompts, tools, states, and knowledge base configurations." }, { "slug": "RETELLAI_IMPORT_PHONE_NUMBER", "name": "Import phone number", "description": "Tool to import a phone number from custom telephony and bind agents to it. Use when you need to integrate an existing phone number with Retell AI's system for handling inbound and outbound calls." }, { "slug": "RETELLAI_LIST_AGENTS", "name": "List agents", "description": "Retrieves a list of all agents associated with the account." }, { "slug": "RETELLAI_LIST_ALL_CHATS", "name": "List all chats", "description": "Tool to retrieve a list of all chats associated with the account. Use when you need to view chat history or analyze past conversations." }, { "slug": "RETELLAI_LIST_ALL_PHONE_NUMBERS", "name": "List all phone numbers", "description": "Retrieves a list of all phone numbers associated with the account. An empty result means no phone numbers exist; RETELLAI_BUY_A_NEW_PHONE_NUMBER_BIND_AGENTS must be called before outbound calls can be made." }, { "slug": "RETELLAI_LIST_BATCH_TESTS", "name": "List batch tests", "description": "Tool to list batch test jobs for a response engine. Use when you need to retrieve batch testing results for a Retell LLM or conversation flow." }, { "slug": "RETELLAI_LIST_CHAT_AGENTS", "name": "List chat agents", "description": "Tool to retrieve a list of all chat agents associated with the account. Use when you need to view available chat agents or find specific chat agent configurations." }, { "slug": "RETELLAI_LIST_CONVERSATION_FLOW_COMPONENTS", "name": "List conversation flow components", "description": "Retrieves a list of all shared conversation flow components. Use when you need to access reusable conversation flow building blocks that can be referenced across multiple conversation flows." }, { "slug": "RETELLAI_LIST_CONVERSATION_FLOWS", "name": "List conversation flows", "description": "Tool to list all conversation flows that can be attached to an agent. Use when you need to retrieve available conversation flows for agent configuration." }, { "slug": "RETELLAI_LIST_KNOWLEDGE_BASES", "name": "List knowledge bases", "description": "Tool to retrieve all knowledge bases associated with the account. Use when you need to list or view all available knowledge bases with their details including IDs, names, statuses, sources, and refresh settings." }, { "slug": "RETELLAI_LIST_RETELL_LLMS", "name": "List Retell LLMs", "description": "Tool to list all Retell LLM Response Engines that can be attached to an agent. Use when you need to retrieve available LLM configurations including their IDs, models, prompts, tools, and other settings." }, { "slug": "RETELLAI_LIST_TEST_CASE_DEFINITIONS", "name": "List test case definitions", "description": "Tool to list test case definitions for a response engine (Retell LLM or Conversation Flow). Use when you need to retrieve all test cases configured for a specific response engine and optionally a specific version." }, { "slug": "RETELLAI_LIST_TEST_RUNS", "name": "List test runs", "description": "Tool to list all test case jobs (test runs) for a batch test job. Use when you need to retrieve execution results and details for all tests in a batch." }, { "slug": "RETELLAI_LIST_VOICES", "name": "List voices", "description": "List all voices available to the user. Returns voice details including voice_id, name, provider, accent, gender, age, and preview audio URL." }, { "slug": "RETELLAI_PUBLISH_AGENT", "name": "Publish agent", "description": "Publishes the latest version of the agent and creates a new draft agent with a newer version. Use when you need to deploy an agent to production." }, { "slug": "RETELLAI_PUBLISH_CHAT_AGENT", "name": "Publish chat agent", "description": "Publishes the latest version of the chat agent and creates a new draft chat agent with a newer version. Use when you need to deploy a chat agent to production." }, { "slug": "RETELLAI_REGISTER_PHONE_CALL", "name": "Register phone call", "description": "Register a phone call for custom telephony integration with Retell AI. Use when you need to register a call before connecting it to Retell's audio websocket for custom telephony providers." }, { "slug": "RETELLAI_RETRIEVE_CALL_DETAILS", "name": "Retrieve call details", "description": "Tool to retrieve call details with filtering options. Use when you need to fetch call records, analyze call history, or monitor call performance." }, { "slug": "RETELLAI_RETRIEVE_CALL_DETAILS_BY_ID", "name": "Retrieve call details by id", "description": "Retrieve call details by ID for web/phone calls, including type, agent ID, status, timestamps, and web access token; covering responses from success to server errors." }, { "slug": "RETELLAI_RETRIEVE_DETAILS_OF_A_SPECIFIC_PHONE_NUMBER", "name": "Retrieve phone number details", "description": "Tool to retrieve details of a specific phone number from Retell AI. Use when you need to get information about a phone number including its type, timestamps, SIP configuration, and SMS settings. The phone number should be provided in E.164 format." }, { "slug": "RETELLAI_RETRIEVE_DETAILS_OF_A_SPECIFIC_VOICE", "name": "Retrieve details of a specific voice", "description": "Tool to retrieve details of a specific voice by its voice_id. Use when you need information about a specific voice including its name, provider, accent, gender, age, and preview audio URL." }, { "slug": "RETELLAI_SEARCH_COMMUNITY_VOICE", "name": "Search community voice", "description": "Search for community voices from voice providers. Use when you need to find voices by name, description, or ID, optionally filtering by provider." }, { "slug": "RETELLAI_UPDATE_AGENT", "name": "Update agent", "description": "Update an existing agent's latest draft version. Use when modifying agent configuration, voice settings, or behavior parameters for a Retell AI agent." }, { "slug": "RETELLAI_UPDATE_CALL", "name": "Update call", "description": "Update an active call's parameters such as metadata, dynamic variables, or data storage settings. Use when you need to modify call attributes during an ongoing call or update storage settings." }, { "slug": "RETELLAI_UPDATE_CHAT_AGENT", "name": "Update chat agent", "description": "Update an existing chat agent configuration. Use when modifying chat agent settings, response engine, or behavior parameters." }, { "slug": "RETELLAI_UPDATE_CHAT_METADATA", "name": "Update chat metadata", "description": "Tool to update metadata and sensitive data storage settings for an existing chat. Use when you need to modify chat metadata, custom attributes, or override dynamic variables." }, { "slug": "RETELLAI_UPDATE_CONVERSATION_FLOW", "name": "Update conversation flow", "description": "Update an existing conversation flow configuration. Use when modifying conversation flow settings such as model parameters, nodes, tools, or prompt templates." }, { "slug": "RETELLAI_UPDATE_CONVERSATION_FLOW_COMPONENT", "name": "Update conversation flow component", "description": "Update an existing shared conversation flow component by its ID. Use when you need to modify component properties like name, nodes, tools, or MCP configurations." }, { "slug": "RETELLAI_UPDATE_PHONE_NUMBER", "name": "Update phone number configuration", "description": "Update agent bound to a purchased phone number. Use when you need to change the agent configuration, nickname, webhook URLs, or SIP settings for an existing phone number." }, { "slug": "RETELLAI_UPDATE_RETELL_LLM", "name": "Update Retell LLM Response Engine", "description": "Update an existing Retell LLM Response Engine by its unique identifier. Use when you need to modify LLM configuration, prompts, tools, conversation flows, or model settings for an existing response engine." }, { "slug": "RETELLAI_UPDATE_TEST_CASE_DEFINITION", "name": "Update test case definition", "description": "Update a test case definition for agent testing. Use when modifying test scenarios, metrics, or mock configurations for Retell AI agent validation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "retellai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Retell AI secret API key (starts with 'key_'). Find or create one in the Retell dashboard under Settings → API Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "servicenow", "name": "ServiceNow", "logo": "https://logos.composio.dev/api/servicenow", "description": "ServiceNow is a cloud-based enterprise platform that helps organizations automate and manage digital workflows across IT, HR, customer service, and operations.", "category": "it operations", "authSchemes": [ "BASIC", "OAUTH2", "S2S_OAUTH2" ], "toolCount": 172, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERVICENOW_ATTACH_FILE_TO_RECORD", "name": "Attach file to record", "description": "Attaches a file to a specified record in a ServiceNow table. This action uploads a file and associates it with a specific record (e.g., incident, problem, change request). The file will be visible in the ServiceNow UI under the record's attachments section. Common use cases: - Attach screenshots to incident reports - Upload documents to change requests - Add log files to problem records - Store evidence files for security incidents The action returns complete attachment metadata including download link, file size, and creation details. Note: This action permanently modifies a live ServiceNow instance — attachments cannot be bulk-removed once added." }, { "slug": "SERVICENOW_CANCEL_CHANGE_CONFLICT_CHECK", "name": "Cancel change conflict check", "description": "Cancels the running conflict checking process for a specified ServiceNow change request. Use this action when a conflict check is taking too long or needs to be aborted, and you want to stop the process without waiting for it to complete naturally. This is commonly used when automated change management workflows need to be expedited or when conflict checks are blocking other operations. This action is idempotent — calling it on a change request that has no active conflict check running will still return a success response. However, if the change request doesn't exist, a 404 error will be returned." }, { "slug": "SERVICENOW_CREATE_A_RECORD", "name": "Create a record", "description": "Creates a new record in a specified ServiceNow table with the provided field values. Common tables include: 'incident', 'problem', 'change_request', 'task', 'sys_user'. The created record is returned with its sys_id and auto-generated number." }, { "slug": "SERVICENOW_CREATE_ATTACHMENT_UPLOAD", "name": "Create attachment upload", "description": "Uploads a file as a multipart form-data attachment to a specified record in ServiceNow. Use this action when you need to attach files to ServiceNow records (e.g., incidents, problems, change requests) using the multipart form-data upload endpoint. This action sends the file as a multipart/form-data request with the table name, table sys_id, and file content. Common use cases: - Attach documents or screenshots to incident reports - Upload evidence files to problem records - Add files to change requests for documentation The action returns complete attachment metadata including the sys_id, download link, file size, and creation details. This action permanently modifies a live ServiceNow instance — the attachment cannot be recovered once deleted." }, { "slug": "SERVICENOW_CREATE_CILIFECYCLEMGMT_ACTION", "name": "Create CI Lifecycle Management Action", "description": "Adds a specified configuration item (CI) action using the ServiceNow CI Lifecycle Management API. Use this action when you need to create or execute a CI lifecycle action for a Configuration Item in ServiceNow's CMDB. This endpoint allows you to trigger specific lifecycle actions (such as activate, retire, or custom actions) on CIs programmatically. The action requires the CI identifier and the action name to be executed. Ensure the action is valid for the specified CI class." }, { "slug": "SERVICENOW_CREATE_CI_LIFECYCLE_MGMT_OPERATORS", "name": "Create ci lifecycle mgmt operators", "description": "Registers a new operator for a non-workflow user in the ServiceNow CI Lifecycle Management system. Use this action when you need to create or register an operator identity for CI lifecycle management purposes. The operator must be associated with a non-workflow user account. The returned req_id can be used to manage the operator (e.g., delete it later)." }, { "slug": "SERVICENOW_CREATE_CI_LIFECYCLE_MGMT_STATUSES", "name": "Set CI Operational State", "description": "Sets the operational state for one or more configuration items (CIs) using the ServiceNow CI Lifecycle Management API. Use this action when you need to update the operational status of CIs in ServiceNow's CMDB. This endpoint allows you to programmatically set the operational state (operational, non-operational, on order, inventory, etc.) for a batch of configuration items. The action requires a list of CI identifiers and the operational state value to apply." }, { "slug": "SERVICENOW_CREATE_CMDB_APP_SERVICE", "name": "Create CMDB Application Service", "description": "Creates an application service in ServiceNow CMDB or updates an existing one if a service with the same name already exists. Use this action when you need to register a new application service in the Configuration Management Database (CMDB). This endpoint performs a create-or-update operation: if an application service with the specified name already exists, it will be updated with the provided values rather than creating a duplicate." }, { "slug": "SERVICENOW_CREATE_CMDB_CI_LINUX_SERVER", "name": "Create CMDB Linux Server", "description": "Creates a new Linux server configuration item (CI) in the ServiceNow CMDB. Use this action when you need to register a new Linux server in the Configuration Management Database (CMDB). This endpoint creates a record in the cmdb_ci_linux_server table with the specified attributes including hostname, IP address, OS details, and operational information. The created record is returned with its sys_id and auto-generated details." }, { "slug": "SERVICENOW_CREATE_CMDB_INGEST", "name": "Ingest CMDB Records", "description": "Inserts multiple records into a ServiceNow Import Set staging table. Use this action when you need to bulk-import configuration items (CIs) or other data into ServiceNow via an Import Set. Records are inserted into the specified staging table, which is processed by the associated transform map to load data into the target table (e.g., CMDB tables like cmdb_ci_server). The staging table name identifies the import set staging table (e.g., 'sys_import_set_row'), and the transform map associated with that table determines how each record is transformed. Note: Records are inserted into the Import Set staging table and will be transformed to the target table via the configured transform map." }, { "slug": "SERVICENOW_CREATE_CMDB_INSTANCE", "name": "Create CMDB Instance", "description": "Creates a single Configuration Item (CI) in ServiceNow CMDB with the specified attributes. Use this action when you need to register a new configuration item (such as servers, databases, network devices, or application services) in the Configuration Management Database. The CI class determines the available attributes and relationships for the item." }, { "slug": "SERVICENOW_CREATE_CMDB_INSTANCE_RELATION", "name": "Create CMDB Instance Relation", "description": "Creates an inbound and/or outbound relation for a specific configuration item (CI) in the ServiceNow CMDB. Use this action when you need to establish relationships between configuration items in the CMDB, such as indicating that a server 'runs on' hardware, a service 'depends on' a database, or an application 'hosts' middleware components. This action adds relations to the specified CI (identified by classname and sys_id) without modifying the CI itself. Relations are bidirectional in the CMDB - adding an outbound relation from CI A to CI B also creates a corresponding inbound relation on CI B. Common use cases: Building CMDB relationship maps, establishing application dependencies, defining infrastructure hierarchies, or documenting service relationships." }, { "slug": "SERVICENOW_CREATE_DATA_CLASSIFICATION_CLASSIFY", "name": "Create data classification classify", "description": "Assigns pre-defined or user-defined data classification labels to records in ServiceNow tables. Use this action when you need to classify sensitive or confidential data records according to your organization's data governance policies. This action sends records to the Data Classification API which can apply classification labels such as 'Public', 'Internal', 'Confidential', or custom labels defined in the Data Classification table. The classification labels help enforce data access controls, encryption policies, and compliance requirements across the ServiceNow instance." }, { "slug": "SERVICENOW_CREATE_DATA_CLASSIFICATION_CLEAR", "name": "Create data classification clear", "description": "Removes all data classifications for a specific record in a ServiceNow table. Use this action when you need to clear/reset data classification labels from a record, such as when reclassifying sensitive data, removing outdated classifications, or preparing records for re-processing. This action clears all data classification entries associated with the specified record. Note: This operation may require appropriate ServiceNow permissions. If the user lacks permission to modify data classifications on the specified table, an error will be returned." }, { "slug": "SERVICENOW_CREATE_IDENTIFYRECONCILE_ENHANCED", "name": "Enhanced CI Identify/Reconcile", "description": "Inserts or updates configuration items (CIs) in ServiceNow CMDB using the enhanced Identification and Reconciliation API. Use this action when you need to bulk-insert or update multiple configuration items in the CMDB, with automatic identification of existing CIs based on identifying attributes (name, IP address, serial number, MAC address, hostname, or sys_id) and optional creation of CI relationships. This API provides better error handling and detailed per-item results compared to basic CMDB instance APIs. This action is useful for CMDB data population, reconciliation of discovered CIs against the CMDB, bulk CI updates, and establishing CI relationships during discovery or import workflows." }, { "slug": "SERVICENOW_CREATE_IDENTIFYRECONCILE_QUERY", "name": "Query CMDB Identify Reconcile", "description": "Queries the ServiceNow Identify and Reconcile API to determine whether a Configuration Item (CI) should be inserted (created) or updated in the CMDB based on identity matching rules. Use this action when you need to check whether a CI already exists in the CMDB before creating or updating it, or when you want ServiceNow to automatically determine the correct operation (INSERT vs UPDATE) based on configured identity matching rules and the provided attributes. This is commonly used during data migration, discovery integration, or bulk CI reconciliation workflows where the operation (create vs update) needs to be determined programmatically. Note: This action performs a query/reconciliation check only — it does not execute the actual INSERT or UPDATE operation. It returns the recommended operation and the matched CI details." }, { "slug": "SERVICENOW_CREATE_IDENTIFYRECONCILE_QUERYENHANCED", "name": "CMDB Identify Reconcile QueryEnhanced", "description": "Performs identification and reconciliation of configuration items (CIs) in the ServiceNow CMDB. Use this action when you need to determine whether to insert a new CI or update an existing one based on matching attributes. The API compares the provided data against existing CIs and returns the recommended operation (insert/update) along with the matched or created CI details. This is useful for data imports, discovery integration, or synchronizing CI data from external sources. Note: When dry_run is false (default), this action may create or modify existing CIs in the CMDB." }, { "slug": "SERVICENOW_CREATE_IMPORT", "name": "Create Import Set", "description": "Inserts incoming data into a specified ServiceNow staging table and triggers the associated transform map to move the data into the production table. Use this action when you need to bulk-import data into ServiceNow through the Import Set API. This is commonly used for data migration, integrating external data sources, or loading data from CSV files into ServiceNow tables. The staging table must have a transform map configured to map the staging table fields to the target production table fields." }, { "slug": "SERVICENOW_CREATE_INCIDENT", "name": "Create incident", "description": "Creates a new incident record in ServiceNow with the provided details. Use this action when you need to log or report a new incident in ServiceNow, such as a service outage, system failure, or user-reported issue. The incident will be assigned a unique sys_id and incident number upon creation." }, { "slug": "SERVICENOW_CREATE_INCIDENT1", "name": "Create Incident", "description": "Creates a new incident record in ServiceNow with the provided field values. Use this action when you need to log or report a new incident in ServiceNow IT Service Management. The created incident is returned with its sys_id and auto-generated incident number. This action specifically targets the incident table and includes incident-specific fields like urgency, impact, severity, incident_state, and caller_id for proper incident management workflows." }, { "slug": "SERVICENOW_CREATE_INTERACTION", "name": "Create ServiceNow Interaction", "description": "Creates a new interaction record in ServiceNow that can be linked to records in other tables (e.g., incidents, problems, cases). Use this action when you need to log or create an interaction between a customer and service desk, such as recording a phone call, chat session, email exchange, or API-initiated interaction that should be tracked and associated with a specific table record. The interaction is created in the 'interaction' table (com.glide.interaction) and linked to the specified table_name record. If no table_name record exists yet, the interaction can still be created standalone." }, { "slug": "SERVICENOW_CREATE_INTERACTION_CLOSE", "name": "Close Interaction", "description": "Closes an existing interaction record in ServiceNow by changing its state to closed. Use this action when you need to close or finalize an interaction that has been completed or resolved. This action changes the state of the interaction record to indicate that it is no longer active. Note: The interaction must be in a state that allows closing (e.g., not already closed). This action is typically used after an interaction has been handled and resolved. The body of the POST request can optionally include fields like 'state', 'opened_for', 'resolution_code', and 'resolution_notes' to provide additional context about the closure." }, { "slug": "SERVICENOW_CREATE_PUSH_INSTALLATION", "name": "Create push installation", "description": "Registers or updates a device token for receiving push notifications through ServiceNow. Use this action when you need to register a mobile device token with ServiceNow's push notification system, enabling the device to receive push notifications from ServiceNow mobile apps. The action creates a new push installation or updates an existing one if the same token already exists for the specified push application. Common use cases: - Registering iOS devices for APNS push notifications - Registering Android devices for FCM push notifications - Updating existing device tokens when they change (token refresh) - Linking devices to specific ServiceNow users This action modifies the ServiceNow push notification registry — registered devices will be eligible to receive push notifications from ServiceNow." }, { "slug": "SERVICENOW_CREATE_PUSH_REMOVE_INSTALLATION", "name": "Remove Push Installation", "description": "Deactivates a mobile device installation from receiving push notifications using the ServiceNow Push Installation API. Use this action when you need to remove a mobile device's ability to receive push notifications from a ServiceNow push application. This effectively deactivates the device token that enables communication between ServiceNow and the mobile app on the specified device. This is commonly used when: - A user uninstalls the mobile app from their device - A device needs to be unregistered from push notifications - Managing device registrations for push notification campaigns Note: This action only deactivates the device token - it does not delete any data from ServiceNow." }, { "slug": "SERVICENOW_CREATE_SERVIC_CATALOG_ITEMS_ADD_TO_CART", "name": "Create servic catalog items add to cart", "description": "Adds a specified catalog item to the current user's ServiceNow shopping cart. Use when a user wants to order or request a specific item from the Service Catalog, such as requesting a laptop, software license, or IT service. The item is added to the user's active shopping cart and can be reviewed or submitted in a later step. Note: The action operates on the authenticated user's cart. If the catalog item requires mandatory variables, they must be provided in the `variables` field, otherwise the request may fail." }, { "slug": "SERVICENOW_CREATE_SERVIC_CATALOG_ITEMS_SUBMIT_PRODUCER", "name": "Submit Service Catalog Producer Item", "description": "Submits a ServiceNow Service Catalog item using the submit_producer endpoint. This action submits a catalog item with the provided variables and returns the created record details. The submit_producer endpoint is typically used for producer-type catalog items (like change producers) that create records in other tables. Use this action when you need to submit a Service Catalog item that uses a producer script to create records. This is commonly used for change requests, service requests, or other workflow-triggering catalog items. The action returns the created record's details including the sys_id, table name, and record number. This permanently creates a record in the ServiceNow instance." }, { "slug": "SERVICENOW_CREATE_SERVICE_CATALOG_CART_CHECKOUT", "name": "Checkout Service Catalog Cart", "description": "Checks out the Service Catalog shopping cart and submits the order as a request. This action retrieves the items in the cart, creates a service catalog request, deletes the cart contents, and returns the request ID and number for tracking. The cart is emptied after successful checkout. This action is irreversible once the checkout is completed — the order has been submitted and cannot be cancelled through this action. Use this action when you need to finalize a Service Catalog order by submitting all items in the shopping cart for processing and approval." }, { "slug": "SERVICENOW_CREATE_SERVICE_CATALOG_CART_SUBMIT_ORDER", "name": "Submit Service Catalog Cart Order", "description": "Submits the Service Catalog shopping cart and creates a service catalog request. This action checks out the user cart, creates a service catalog request with all items in the cart, and returns the request ID and number for tracking. The cart contents are converted into a submitted order. This action is irreversible once submitted — the order has been created and cannot be cancelled through this action. Use this action when you need to finalize a Service Catalog order by submitting all items in the shopping cart for processing and approval. This is typically called after items have been added to the cart using other cart operations." }, { "slug": "SERVICENOW_CREATE_SERVICECATALOG_ITEMS_CHECKOUT_GUIDE", "name": "Create servicecatalog items checkout guide", "description": "Checks out an order guide by updating variable values for selected catalog items. Use this action when a user needs to submit an order guide in ServiceNow's Service Catalog, providing variable values for the items within the order guide. The action retrieves the configured contents of the order guide with the submitted variable values applied. This is commonly used during the checkout process for order guides that contain pre-configured sets of catalog items (e.g., laptop requests, software bundles). The action sends a POST request with the order guide sys_id and variable values, and returns an array of catalog items included in the order guide checkout." }, { "slug": "SERVICENOW_CREATE_SERVICECATALOG_ITEMS_ORDER_NOW", "name": "Order Service Catalog Item Now", "description": "Orders a specified ServiceNow Service Catalog item immediately. This action submits an order for a catalog item without requiring cart checkout. The item is ordered directly with the specified quantity and optional variables. Use this action when you need to quickly order a known catalog item for a user. Use when you have a catalog item's sys_id and want to order it directly without adding it to a cart first. This action is useful for automated provisioning of standard items like laptop requests, software access, or access cards." }, { "slug": "SERVICENOW_CREATE_SERVICENOW_IMPORT_INSERTMULTIPLE", "name": "Insert Multiple Import Set Records", "description": "Inserts multiple records into a specified ServiceNow staging table and triggers the associated transform map. Use this action when you need to bulk-import data into ServiceNow via an Import Set. Records are inserted into the specified staging table, then processed by the transform map which maps staging fields to target table fields. This provides improved scalability and stability over inserting records one at a time. The staging table name identifies the import set staging table (e.g., 'sys_import_set_row'), and the transform map associated with that table determines how each record is transformed and loaded into the target table." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE", "name": "Create sn chg rest change", "description": "Creates a new change request in ServiceNow using the Change Management REST API. Use this action when you need to create and submit a new change request for approval and implementation. The action supports specifying change details such as short description, description, category, type, priority, risk, and impact. After creation, the change request will have a unique sys_id and number that can be used to retrieve, update, or delete it in subsequent operations." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_CI", "name": "Create Change Request CI Association", "description": "Creates an association between a change request and one or more configuration items (CIs) in ServiceNow. Use this action when you need to link CIs (servers, databases, applications, etc.) to a change request in ServiceNow's Change Management module. This is commonly used to: - Define which infrastructure components are affected by a change - Include specific CIs in the scope of a change request - Track and manage CI relationships for change planning The action requires the change request sys_id and a list of CI sys_ids to associate." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_CONFLICT", "name": "Start Change Conflict Check", "description": "Starts the conflict checking process for a ServiceNow change request, identifying scheduling conflicts with other changes or blackout windows. Use this action when you need to initiate a conflict check for a change request. This is typically used to verify that a change request doesn't conflict with other scheduled changes or fall within a blackout window. This is commonly used before approving or implementing a change to ensure proper scheduling and avoid resource conflicts. Note: This action starts the conflict check process asynchronously. Use the GetChangeConflict action to retrieve the results of the conflict check once it completes." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_EMERGENCY", "name": "Create sn chg rest change emergency", "description": "Creates an emergency change request in ServiceNow using the Change Management API. Use this action when you need to create an expedited change request that requires urgent approval and implementation due to critical business requirements or emergency situations. Emergency changes bypass standard approval workflows to enable rapid response to urgent needs. This action creates a new emergency change request record and returns the generated sys_id and change request number for future reference." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_NORMAL", "name": "Create Normal Change Request", "description": "Creates a normal change request in ServiceNow using the Change Management REST API. Use when you need to create a standard change request that follows the normal approval workflow. Normal changes are subject to standard CAB (Change Advisory Board) review and approval processes before implementation. This action is appropriate for planned changes that can follow the normal change lifecycle. This action creates a new normal change request record and returns the generated sys_id and change request number for future reference and tracking." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_STANDARD", "name": "Create sn chg rest change standard", "description": "Creates a new standard change request in ServiceNow using a pre-approved standard change template. Use this action when you need to create a standard change request based on a predefined template from the std_change_record_producer table. Standard changes follow a pre-approved workflow and are typically lower-risk changes that follow standardized procedures defined by the organization. The template_id parameter should be the sys_id of an active standard change template. This action creates a new change request record populated with the fields defined in the template." }, { "slug": "SERVICENOW_CREATE_SN_CHG_REST_CHANGE_TASK", "name": "Create Change Task", "description": "Creates a new task for a ServiceNow change request using the Change Management REST API. Use this action when you need to add a new task or subtask to an existing change request, such as breaking down a change into smaller work items, assigning specific work to team members, or tracking additional work needed as part of the change process. The task will be automatically linked to the specified change request. After creation, use the returned sys_id to update or retrieve the task as needed." }, { "slug": "SERVICENOW_CREATE_SN_CICD_APP_BATCH_INSTALL", "name": "Create sn cicd app batch install", "description": "Installs two or more ServiceNow application packages in a single batch operation via the CICD API. Use this action when you need to deploy multiple applications at once as part of a CI/CD pipeline or automated deployment process. The batch install allows for efficient bulk installation of related applications rather than installing them one at a time. This action is idempotent — running it multiple times with the same packages will produce the same result. Note: At least two packages must be specified for a batch install operation." }, { "slug": "SERVICENOW_CREATE_SN_CICD_APP_REPO_INSTALL", "name": "Install App from Repository", "description": "Installs the specified application from the ServiceNow app repository. Use this action when you need to install an application from the ServiceNow Store or a private app repository onto your ServiceNow instance. This is commonly used during CI/CD pipelines to automate the deployment of applications. The action requires the sys_id of the application to install, which can be obtained from the app repository records or from a previous application listing operation." }, { "slug": "SERVICENOW_CREATE_SN_CICD_INSTANCE_SCAN_FULL_SCAN", "name": "Run Full Instance Scan", "description": "Initiates a full instance scan by running all active checks present in the ServiceNow instance. Use this action when you need to execute a comprehensive validation scan of your ServiceNow instance, running all configured active checks to identify configuration issues, best practice violations, or compliance problems. This is typically used during CI/CD pipelines or before major changes to ensure the instance meets required standards. This action starts an asynchronous scan operation - the response indicates the scan has been initiated with a 'running' state. Use the returned sys_id to track progress or retrieve detailed results." }, { "slug": "SERVICENOW_CREATE_SN_CICD_INSTANCE_SCAN_SUITE_SCAN_COMBO", "name": "Create sn cicd instance scan suite scan combo", "description": "Runs a CI/CD scan using a suite and target (scoped app) combination in ServiceNow. Use this action when you need to execute a compliance or best practices scan against a scoped application using a predefined scan suite and target combination. This is commonly used in CI/CD pipelines to validate that an application meets ServiceNow best practices before deployment or release. The combo_sys_id refers to a saved configuration that links a scan suite with a target scoped application. You can optionally override the target by providing target_scope_app_sys_id. This action modifies the ServiceNow instance by executing a scan. If async_execution is false (default), the request will wait for the scan to complete. Set async_execution to true if you want the scan to run in the background and return immediately." }, { "slug": "SERVICENOW_CREATE_SN_CICD_PLUGIN_ACTIVATE", "name": "Activate Plugin", "description": "Activates the specified plugin in ServiceNow's CICD Plugin API. Use this action when you need to activate a plugin on a ServiceNow instance as part of a CI/CD pipeline or automated deployment process. This is commonly used after deploying a plugin to enable its functionality on the target instance. This action modifies the state of the ServiceNow instance by activating the plugin. Ensure the plugin is compatible with your instance and that any prerequisites are met before activation." }, { "slug": "SERVICENOW_CREATE_SN_CICD_TESTSUITE_RUN", "name": "Run Test Suite", "description": "Starts a specified automated test suite using ServiceNow's CI/CD Pipeline API. Use this action when you need to execute an automated test suite as part of a CI/CD pipeline or deployment process. This action initiates the test suite run and returns a progress identifier that can be used with GetSnCicdProgress to monitor execution status. The action is commonly used during automated testing phases in deployment pipelines to validate application changes before production deployment." }, { "slug": "SERVICENOW_CREATE_SN_IND_TSM_SDWAN_TROUBLETICKET", "name": "Create SD-WAN Trouble Ticket", "description": "Creates a new trouble ticket in ServiceNow using the Service Operations Workspace Trouble Ticket Open API. Use this action when you need to create a new SD-WAN or network-related trouble ticket for tracking and resolution. This action sends a POST request to the sn_ind_tsm_sdwan trouble ticket API, creating a record in the Case or other configured ticket table. After creation, the ticket will have a unique sys_id and number that can be used to retrieve, update, or close it in subsequent operations. This action is specifically for the Service Operations Workspace / Service Management SD-WAN integration's trouble ticket creation functionality." }, { "slug": "SERVICENOW_CREATE_SN_TMF_SERVICE_CATEGORY", "name": "Create TMF Service Category", "description": "Creates a new service category record in the ServiceNow TMF Service Catalog API. This action calls the POST /api/sn_tmf_api/catalogmanagement/serviceCategory endpoint to create a top-level or nested service category within the ServiceNow Service Catalog. Use this action when you need to organize items in the service catalog into categories, enabling better navigation and grouping of related catalog offerings. Use this action when you need to add a new category to the ServiceNow Service Catalog for organizing catalog items such as requested items, record producers, or other offerings. For root categories, set is_root=true. For subcategories, provide the parent_id of the existing parent category. If the category name already exists within the same parent scope, the API may return a conflict error." }, { "slug": "SERVICENOW_CREATE_TABLE", "name": "Create table", "description": "Inserts a new record into the specified ServiceNow table with the provided field values. Use this action when you need to create a new record in any ServiceNow table (e.g., incident, problem, change_request, task, sys_user). The created record is returned with its sys_id and auto-generated number. NOTE: This action uses the /api/now/table/ endpoint as documented. The existing CreateARecord action uses /api/now/v1/table/." }, { "slug": "SERVICENOW_CREATE_TABLE_INCIDENT", "name": "Create ServiceNow Incident", "description": "Creates a new incident record in the ServiceNow incident table using the Table API. Use this action when you need to create a new incident in ServiceNow, such as logging IT service disruptions, reporting bugs, or tracking system issues. The action accepts incident-specific fields like short_description, description, priority, impact, urgency, and assignment information. The created incident is returned with its auto-generated sys_id and display number (e.g., INC0010001). This action is specifically designed for the incident table and provides a more focused and intuitive interface compared to the generic table creation endpoint." }, { "slug": "SERVICENOW_CREATE_UPDATE_CMD_CI", "name": "Create or Update CMDB CI via IRE", "description": "Creates or updates CMDB configuration items (CIs) using the ServiceNow Identification and Reconciliation Engine (IRE) via the identify-reconcile endpoint. Use this action when you need to upsert CIs into the CMDB with automatic deduplication. The IRE matches incoming CI data against existing records using configured identification rules (based on fields like name, IP address, serial number, etc.) and either updates the matched CI or creates a new one. This prevents duplicate configuration items from being created. You can also submit relationship data alongside CIs to create or update CI relationships (e.g., 'Contains', 'Depends on'). Note: Identification rules must be configured in ServiceNow for this endpoint to work correctly. If no matching rule is found, the IRE may create a new CI or reject the entry depending on your configuration." }, { "slug": "SERVICENOW_DELETE_A_RECORD", "name": "Delete a record", "description": "Permanently deletes a specific record from a ServiceNow table using its sys_id. This is a destructive operation that cannot be undone. The record will be permanently removed from the table. Requires the user to have delete permissions on the specified table. If the record doesn't exist or the user lacks permissions, an error will be returned. Common use cases: Removing test data, cleaning up duplicate records, deleting obsolete incidents/problems/tasks." }, { "slug": "SERVICENOW_DELETE_ATTACHMENT_BY_ID", "name": "Delete attachment by", "description": "Permanently deletes a specific attachment from ServiceNow using its sys_id. This is a destructive, irreversible operation — the attachment cannot be recovered once deleted. Requires the user to have delete permissions on the attachment. If the attachment doesn't exist or the user lacks permissions, an error will be returned. This action should be used when you have the specific sys_id of an attachment to remove (obtained from FindFile action). Use when you need to remove a specific file attachment from a record and know its sys_id." }, { "slug": "SERVICENOW_DELETE_ATTACHMENT_BY_ID_V1", "name": "Delete attachment by id v1", "description": "Permanently deletes a specific attachment from ServiceNow using its sys_id via the v1 API endpoint. This is a destructive, irreversible operation — the attachment cannot be recovered once deleted. Requires the user to have delete permissions on the attachment record. If the attachment does not exist or the user lacks permissions, an error will be returned. This action uses the /api/now/v1/attachment/{sys_id} endpoint specifically. Use when you need to remove a specific file attachment from a record and already know its sys_id." }, { "slug": "SERVICENOW_DELETE_ATTACHMENT_CSM", "name": "Delete attachment csm", "description": "Permanently deletes a specific CSM (Customer Service Management) attachment from ServiceNow using its sys_id. This is a destructive, irreversible operation — the CSM attachment cannot be recovered once deleted. Requires the user to have delete permissions on the attachment. If the attachment doesn't exist or the user lacks permissions, an error will be returned. This action specifically targets attachments associated with CSM records (cases, etc.). Use when you need to remove a specific file attachment from a CSM record and know its sys_id." }, { "slug": "SERVICENOW_DELETE_CHANGE_TASK", "name": "Delete change task", "description": "Permanently deletes a specific task from a ServiceNow change request using its sys_id. This is a destructive, irreversible operation. The task will be permanently removed from the change request and cannot be recovered once deleted. Use this action with caution. Requires the user to have appropriate permissions to delete tasks from change requests. If the change request or task doesn't exist, or if the user lacks permissions, an error will be returned. Use this action when you need to clean up obsolete or incorrect tasks from change requests." }, { "slug": "SERVICENOW_DELETE_CI_LIFECYCLE_MGMT_ACTION", "name": "Delete ci lifecycle mgmt action", "description": "Permanently deletes a specific CI Lifecycle Management action from ServiceNow using its sys_id. Use this action when you need to remove a CI Lifecycle Management action record that is no longer needed. This action is irreversible — the CI action cannot be recovered once deleted. Requires the user to have appropriate permissions for the CI Lifecycle Management module. Use when you need to clean up obsolete, incorrect, or duplicate CI lifecycle action records." }, { "slug": "SERVICENOW_DELETE_CI_LIFECYCLE_MGMT_OPERATORS", "name": "Delete ci lifecycle mgmt operators", "description": "Permanently unregisters an operator from the ServiceNow CI Lifecycle Management system. This action removes an operator registration for non-workflow users. This is a destructive, irreversible operation — once the operator is unregistered, it cannot be recovered and will need to be re-registered if needed again. Use this action with caution. Use when you need to clean up obsolete operator registrations for non-workflow users in the CI Lifecycle Management system. The user must have appropriate permissions to unregister operators. If the operator doesn't exist or the user lacks permissions, an error will be returned." }, { "slug": "SERVICENOW_DELETE_CMDB_INSTANCE_RELATION", "name": "Delete cmdb instance relation", "description": "Permanently deletes a specific CMDB CI (Configuration Item) relation using its sys_id. This is a destructive, irreversible operation — the relation between two CIs cannot be recovered once deleted. The relation represents a connection between a parent and child CI (e.g., a server running an application). Requires the user to have the ITIL role and appropriate CMDB permissions. If the relation, CI, or class doesn't exist, or the user lacks permissions, an error will be returned. Use when you need to remove a specific relationship between two configuration items in the CMDB." }, { "slug": "SERVICENOW_DELETE_EMERGENCY_CHANGE_REQUEST", "name": "Delete emergency change request", "description": "Permanently deletes a specific emergency change request from ServiceNow using its sys_id. This is a destructive operation that cannot be undone. The emergency change request will be permanently removed from the system. Use this action when an emergency change request is no longer needed or was created in error. Use this action when you need to remove an emergency change request from ServiceNow. This action is irreversible — the emergency change request cannot be recovered once deleted. Requires the user to have delete permissions for change requests. If the record doesn't exist, is not an emergency change request, or the user lacks permissions, an error will be returned." }, { "slug": "SERVICENOW_DELETE_INCIDENT_BY_ID", "name": "Delete incident by", "description": "Permanently deletes a specific incident from ServiceNow using its sys_id. This is a destructive, irreversible operation — the incident cannot be recovered once deleted. Requires the user to have delete permissions for the incident table. If the incident doesn't exist or the user lacks permissions, an error will be returned. Use this action when you need to remove a specific incident record and know its sys_id." }, { "slug": "SERVICENOW_DELETE_INCIDENT_BY_ID2", "name": "Delete incident by id2", "description": "Permanently deletes a specific incident from ServiceNow using its sys_id via the Table API. This is a destructive, irreversible operation — the incident cannot be recovered once deleted. Requires the user to have delete permissions for the incident table. If the incident doesn't exist or the user lacks permissions, an error will be returned. Use when you need to remove a specific incident record and know its sys_id." }, { "slug": "SERVICENOW_DELETE_SERVICECATALOG_CART", "name": "Delete servicecatalog cart", "description": "Removes a specific item from the current ServiceNow Service Portal shopping cart. This action permanently removes a cart item from the active shopping cart session. Use this action when a user wants to remove an unwanted item from their Service Catalog cart before submitting the order. This action is irreversible — once the item is removed, it must be added again if still needed. Use when you need to remove an item from a user's Service Portal shopping cart and have the cart item's sys_id." }, { "slug": "SERVICENOW_DELETE_SERVICE_CATALOG_CART_EMPTY", "name": "Delete service catalog cart empty", "description": "Empties all items from a specified Service Catalog shopping cart using its sys_id. This action removes all items from the cart but does not delete the cart itself. This is a destructive, irreversible operation — all cart items will be permanently removed and cannot be recovered once emptied. Use this action with caution. Use when you need to clear all items from a user's Service Catalog shopping cart before adding new items or before discarding an unwanted order." }, { "slug": "SERVICENOW_DELETE_SN_CHG_REST_CHANGE", "name": "Delete sn chg rest change", "description": "Permanently deletes a specific change request using its sys_id via the Change Management REST API. Use this action when you need to remove a change request from ServiceNow that is no longer needed. This action is irreversible — the change request cannot be recovered once deleted. Requires the user to have appropriate permissions for the change management module." }, { "slug": "SERVICENOW_DELETE_SN_CHG_REST_CHANGE_NORMAL", "name": "Delete Normal Change Request", "description": "Permanently deletes a normal change request identified by its sys_id using the ServiceNow Change Management REST API. This is a destructive operation that cannot be undone. The normal change request will be permanently removed from the system. Use when you need to remove an unwanted or obsolete normal change request from ServiceNow. This action is irreversible — the change request cannot be recovered once deleted." }, { "slug": "SERVICENOW_DELETE_SN_CHG_REST_CHANGE_STANDARD", "name": "Delete sn chg rest change standard", "description": "Permanently deletes a standard change request from ServiceNow using its sys_id. Use this action when you need to remove a specific standard change request that is no longer needed. This is a destructive operation that cannot be undone — the standard change request cannot be recovered once deleted. Requires appropriate permissions to delete change requests in ServiceNow." }, { "slug": "SERVICENOW_DELETE_TABLE", "name": "Delete table", "description": "Permanently deletes a specific record from a ServiceNow table using its sys_id. Use this action when you need to remove a record from a ServiceNow table and the record's sys_id is known. This is a destructive operation that cannot be undone. The record will be permanently removed from the table. Requires the user to have delete permissions on the specified table. If the record doesn't exist or the user lacks permissions, an error will be returned." }, { "slug": "SERVICENOW_DELETE_TABLE_INCIDENT", "name": "Delete table incident", "description": "Permanently deletes a specific incident record from ServiceNow using its sys_id. This is a destructive, irreversible operation — the incident cannot be recovered once deleted. Requires the user to have delete permissions on the incident table. If the incident doesn't exist or the user lacks permissions, an error will be returned. Use when you need to remove a specific incident record from ServiceNow and know its sys_id." }, { "slug": "SERVICENOW_FIND_FILE", "name": "Find file", "description": "Retrieves attachment metadata from ServiceNow's sys_attachment table. This endpoint queries file attachments and returns metadata including file name, size, content type, download links, and associated table information. Use sysparm_query to filter by file name, table name, content type, or other attachment properties. Note: This returns metadata only; use the download_link in the response to retrieve actual file content." }, { "slug": "SERVICENOW_GET_ACTSUB_ACTIVITIES", "name": "Get Activity Subscription Activities", "description": "Retrieves activity records from the ServiceNow ActivitySubscription API. Use this action when you need to fetch activity/change history records from ServiceNow subscriptions. This API returns activities such as record creations, updates, comments, and other events from subscribed tables. The default stream returns all available activity records. Results can be paginated using the sysparm_limit and sysparm_offset parameters." }, { "slug": "SERVICENOW_GET_ACTSUB_FACETS", "name": "Get Activity Subscription Facets", "description": "Retrieves facets configured for an activity context in ServiceNow. Use this action when you need to discover available filterable attributes or metadata for activity subscriptions. Facets represent the different dimensions along which activity data can be filtered or grouped. This is a read-only operation that queries the Activity Subscriptions API to return facet configuration information for the specified context." }, { "slug": "SERVICENOW_GET_AGENT_INTELLIGENCE_SOLUTION_PREDICTION", "name": "Get Agent Intelligence Solution Prediction", "description": "Predicts an output field value using a trained Agent Intelligence solution model. Use this action when you need to invoke a deployed Predictive Intelligence solution to predict an output field value based on input field data. This is typically used after the Predictive Intelligence plugin is activated and solutions have been trained and deployed — for example, to predict incident assignment, priority, urgency, category, or any other custom trained output field. The action requires the name of an existing, deployed solution and optionally accepts input field values that the model uses to generate the prediction. The response includes the predicted value along with a confidence score indicating the model's certainty." }, { "slug": "SERVICENOW_GET_AGENT_INTELLIGENCE_SOLUTION_PREDICTION_LIST", "name": "List Agent Intelligence Solution Predictions", "description": "Retrieves a list of solution predictions from ServiceNow's Agent Intelligence engine. Use this action when you need to fetch predicted solutions for multiple records, such as retrieving AI-recommended solutions for incidents, problems, or change requests. The predictions include confidence scores, solution details, and relevance metrics to help resolve issues more efficiently. Supports filtering, pagination, and confidence thresholds. This action is useful for implementing AI-powered resolution suggestions, analyzing prediction patterns, or integrating Agent Intelligence insights into custom workflows." }, { "slug": "SERVICENOW_GET_ALL_DATA_CLASSES", "name": "Get All Data Classes", "description": "Retrieves all data classification records from the ServiceNow Data Classification API. Use this action when you need to list all available data classification levels (e.g., Public, Internal, Confidential, Restricted) configured in a ServiceNow instance. Data classifications are used to label and categorize data based on sensitivity levels for security and compliance purposes. This action is read-only and does not modify any records. Use sysparm_limit and sysparm_offset to paginate through classification records." }, { "slug": "SERVICENOW_GET_APP_SERVICE_CONTENT", "name": "Get App Service CMDB Content", "description": "Retrieves a list of configuration items (CIs) associated with a specific application service in ServiceNow CMDB. Use this action when you need to query what infrastructure components (servers, databases, applications, etc.) are part of a given application service. This is useful for impact analysis, change management, and understanding service dependencies within the CMDB." }, { "slug": "SERVICENOW_GET_ATTACHMENT_BY_ID", "name": "Get attachment by", "description": "Retrieves metadata for a specific attachment by its sys_id from ServiceNow. Use this action when you need to fetch information about a single attachment file, such as its file name, content type, size, and associated record details. This action returns metadata only; to download the actual file content, use the download_link from the FindFile action or access the file directly via the ServiceNow attachment API." }, { "slug": "SERVICENOW_GET_ATTACHMENT_BY_ID_V1", "name": "Get Attachment by ID", "description": "Retrieves metadata for a specific attachment by its sys_id from ServiceNow. Use this action when you need to fetch detailed information about a single attachment file, such as its file name, content type, size, download link, image dimensions (for images), and associated record details. This action returns metadata only; to download the actual file content, use the download_link provided in the response or the GetAttachmentFile action." }, { "slug": "SERVICENOW_GET_ATTACHMENT_FILE", "name": "Get attachment file", "description": "Downloads the binary file attachment with the specified sys_id from ServiceNow. Use this action when you need to retrieve the actual file content of an attachment that was previously uploaded to a ServiceNow record (e.g., incident, problem, change_request). This action returns the raw binary file data which can then be saved locally or processed further. The attachment sys_id can be obtained from the 'FindFile' action or from the ServiceNow UI." }, { "slug": "SERVICENOW_GET_ATTACHMENT_FILE_FILE", "name": "Get attachment file file", "description": "Downloads the binary file attachment with the specified sys_id from ServiceNow using the v1 API endpoint. Use this action when you need to retrieve the actual file content of an attachment that was previously uploaded to a ServiceNow record (e.g., incident, problem, change_request) via the /api/now/v1/attachment endpoint. This action returns the raw binary file data which can then be saved locally or processed further. The attachment sys_id can be obtained from the 'GetAttachmentList' or 'GetAttachmentById' actions." }, { "slug": "SERVICENOW_GET_ATTACHMENT_LIST", "name": "Get Attachment List", "description": "Retrieves metadata for multiple file attachments from ServiceNow's Attachment API. Use this action to list and filter attachments across the instance, including filtering by table name, file name, content type, size, or other attachment properties. Supports pagination via sysparm_limit and sysparm_offset parameters. Note: This returns metadata only; actual file content must be downloaded separately using the sys_id." }, { "slug": "SERVICENOW_GET_CHANGE_CI_SCHEDULE", "name": "Get change ci schedule", "description": "Retrieves available time slots for scheduling changes against a specific Configuration Item (CI). Use this action when you need to find available change windows for a given CI in ServiceNow's Change Management module. The endpoint queries the CMDB with the specified CI sys_id and returns available schedule slots. Optionally filter by duration_in_seconds to find slots that can accommodate a specific change window length." }, { "slug": "SERVICENOW_GET_CHANGE_CONFLICT", "name": "Get Change Conflict Status", "description": "Retrieves the conflict status for a ServiceNow change request, identifying scheduling conflicts with other changes or blackout windows. Use this action when you need to check if a change request has any scheduling conflicts with other changes or if it falls within a blackout window. This is typically used before approving or implementing a change to ensure proper scheduling and avoid resource conflicts." }, { "slug": "SERVICENOW_GET_CHANGE_NEXTSTATES", "name": "Get change nextstates", "description": "Retrieves a list of available next states for a specified change request based on the current state and workflow. Use this action when you need to determine what state transitions are valid for a particular change request, such as when deciding which state to move a change to or when validating workflow transitions." }, { "slug": "SERVICENOW_GET_CHANGE_REQUEST_CI", "name": "Get Change Request Configuration Items", "description": "Retrieves configuration items (CIs) associated with a specific change request in ServiceNow. Use this action when you need to fetch the list of configuration items (servers, databases, applications, etc.) that are linked to a change request. This is commonly used to: - Review affected infrastructure before approving a change - Understand the scope of impact for a change request - Verify that all required CIs are included in the change The association_type parameter determines which CIs to retrieve based on their relationship to the change request." }, { "slug": "SERVICENOW_GET_CHANGE_SCHEDULE", "name": "Get change schedule", "description": "Retrieves available time slots for scheduling a ServiceNow change request. Use this action when you need to find available scheduling windows for a change request that has been created but not yet scheduled. This helps identify appropriate times to schedule the change work based on the configured calendar and availability. The response includes schedule windows with start/end times, duration, and availability status. Note: The change request must exist and the user must have permission to view the schedule." }, { "slug": "SERVICENOW_GET_CILIFECYCLEMGMT_ACTIONS", "name": "Get CI Lifecycle Management Action", "description": "Retrieves a specific CI Lifecycle Management action from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular CI Lifecycle Management action, including its name, state, description, and associated CMDB class. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_CILIFECYCLEMGMT_COMPAT_ACTIONS", "name": "Check CI Compatibility", "description": "Determines whether two specified Configuration Items (CIs) in the ServiceNow CMDB are compatible using the CI Lifecycle Management compatActions endpoint. Use this action when you need to verify compatibility between two Configuration Items before planning changes, deployments, or scheduling activities that involve multiple CIs. This helps ensure that changes to one CI won't negatively impact another CI in the configuration." }, { "slug": "SERVICENOW_GET_CI_LIFECYCLE_MGMT_LEASES_EXPIRED", "name": "Check CI Lease Expiration Status", "description": "Determines whether a CI Lifecycle Management lease has expired for the specified lease record. Use this action when you need to check the expiration status of a lease in ServiceNow's CI Lifecycle Management system. This is a read-only operation that queries whether the specified lease has expired based on its end date and current system time. This action is useful for: - Verifying lease validity before performing operations that require an active lease - Auditing expired leases in the CMDB - Triggering renewal workflows when leases are expired" }, { "slug": "SERVICENOW_GET_CI_LIFECYCLE_MGMT_NOT_ALLOWED_OPS_TRANSITION", "name": "Check CI Not Allowed Ops Transition", "description": "Determines whether a configuration item (CI) can be transitioned based on CI lifecycle management rules. Use this action when you need to check if a configuration item (CI) in ServiceNow's CMDB has any allowed state transitions under the CI lifecycle management rules. This is typically used when validating whether a CI can be moved to a specific state in its lifecycle, such as before scheduling maintenance or making configuration changes. The endpoint queries the CI lifecycle management rules to determine if the specified CI has any transition restrictions or if certain state changes are not permitted." }, { "slug": "SERVICENOW_GET_CILIFECYCLEMGMT_REQUESTORS_VALID", "name": "Validate CI Lifecycle Management Requestor", "description": "Validates whether a specified active workflow requestor exists and is valid in ServiceNow CI Lifecycle Management. Use this action when you need to verify that a CI Lifecycle Management workflow requestor is valid and active before proceeding with related operations such as change requests, deployment approvals, or CI lifecycle workflows. This is a read-only check that does not modify any data. The action queries the CI Lifecycle Management API with the requestor ID and returns a boolean result indicating validity. If the requestor is not found or is inactive, the API typically returns false." }, { "slug": "SERVICENOW_GET_CI_LIFECYCLE_MGMT_STATUSES", "name": "Get CI Lifecycle Mgmt Status", "description": "Retrieves the current operational status for a Configuration Item (CI) in ServiceNow CMDB using the CI Lifecycle Management API. Use this action when you need to check the current operational state of a specific Configuration Item, such as whether it is running, has a problem, or is non-operational. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_CMDB_CI_LINUX_SERVER", "name": "Get CMDB Linux Server by ID", "description": "Retrieves a single CMDB Linux server configuration item (CI) by its sys_id, including its attributes and relationship information. Use this action when you need to fetch detailed information about a specific Linux server from ServiceNow's CMDB, such as its attributes (name, IP address, OS version, kernel version, etc.) and both its inbound (dependents) and outbound (dependencies) relationships with other CIs. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_CMDB_CSDM_APP_SERVICE_FIND_SERVICE", "name": "Find CSDM Application Service", "description": "Finds and returns basic information about one or more application services in the ServiceNow CMDB using the CSDM (Common Service Data Model) app_service find_service endpoint. Use this action when you need to search for application services by name (supports wildcards), retrieve their basic metadata such as operational status, owning segment, and business criticality, or check whether a specific application service exists in the CMDB." }, { "slug": "SERVICENOW_GET_CMDB_INSTANCE", "name": "Get CMDB Instance by Class", "description": "Retrieves configuration items (CIs) from a specified CMDB class using the ServiceNow CMDB Instance API. Use this action when you need to query configuration items from the CMDB by class name, such as retrieving all servers (cmdb_ci_server), computers (cmdb_ci_computer), databases (cmdb_ci_database), or all CIs (cmdb_ci). Supports filtering via sysparm_query and pagination via sysparm_limit and sysparm_offset." }, { "slug": "SERVICENOW_GET_CMDB_INSTANCE_BY_ID", "name": "Get CMDB Instance by ID", "description": "Retrieves a single CMDB configuration item (CI) by its class name and sys_id, including its attributes and relationship information. Use this action when you need to fetch detailed information about a specific configuration item from ServiceNow's CMDB, such as its attributes (name, IP, status, etc.) and both its inbound (dependents) and outbound (dependencies) relationships with other CIs. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_CMDB_META", "name": "Get CMDB Class Metadata", "description": "Retrieves metadata and schema information for a specified CMDB (Configuration Management Database) class. Use this action when you need to discover the field structure, data types, mandatory fields, and relationships of a CMDB class before performing queries or updates. This is useful for understanding what fields are available for filtering, display, or modification operations. The user must have the ITIL role to access CMDB metadata." }, { "slug": "SERVICENOW_GET_CMP_CATALOG_API_SERVICES", "name": "Get Cloud Catalog Services", "description": "Retrieves a list of catalog items from the ServiceNow Cloud Services Catalog API. Use this action when you need to query and fetch catalog service items (from the sc_cat_item table) through the Cloud Services Catalog API. Supports filtering via encoded queries, field selection, pagination, and display value options. This is useful for browsing available catalog offerings, checking item availability, or searching for specific services in the ServiceNow Service Catalog." }, { "slug": "SERVICENOW_GET_EMAIL", "name": "Get Email by ID", "description": "Retrieves a specific email record from ServiceNow's Email [sys_email] table by its sys_id. Use this action when you need to fetch detailed information about a particular email message, including its subject, body content, sender, recipients, status, and timestamps. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_GLOBAL_USER_ROLE_INHERITANCE", "name": "Get Global User Role Inheritance", "description": "Retrieves the granted and inherited roles for a specified ServiceNow user using the Global User Role Inheritance API. Use this action when you need to audit a user's role assignments in ServiceNow, check what roles a user has (both directly granted and inherited through group membership), troubleshoot access issues, or verify compliance by reviewing role inheritance for a specific user account. The authenticated user must have the appropriate role (such as 'admin' or a role with user_role_inheritance API access) to query other users' role inheritance. If no user is specified, returns the role inheritance for the authenticated user." }, { "slug": "SERVICENOW_GET_IMPORT", "name": "Get import", "description": "Retrieves the specified import staging record and its associated target records. Use this action when you need to fetch a specific import staging record to view its current state, check import status, or retrieve the imported data before it is loaded into the target table. This is useful for auditing import processes, debugging failed imports, or monitoring data import progress. Common use cases: - Check the status of a specific import record - View the raw imported data for debugging - Verify that data was correctly staged before transformation - Retrieve import metadata (source, target table, batch info)" }, { "slug": "SERVICENOW_GET_INCIDENT_BY_ID", "name": "Get incident by", "description": "Retrieves a specific incident from ServiceNow by its sys_id. Use this action when you need to fetch detailed information about a particular incident, including its state, priority, caller, assignment details, and resolution information. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_INCIDENT_BY_ID2", "name": "Get incident by id2", "description": "Retrieves a specific incident from ServiceNow by its sys_id using the Table API. Use this action when you need to fetch detailed information about a particular incident, including its state, priority, caller, assignment details, and other incident fields. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_INCIDENTS", "name": "Get Incidents", "description": "Retrieves incidents from the ServiceNow incident table using the Table API. Use this action when you need to query and fetch incidents with optional filtering via sysparm_query, pagination via sysparm_limit and sysparm_offset, and field selection via sysparm_fields." }, { "slug": "SERVICENOW_GET_PA_SCORECARDS", "name": "Get Performance Analytics Scorecards", "description": "Retrieves details about indicators from the Analytics Hub, including scorecard information for performance analytics. Use this action when you need to fetch performance analytics scorecards and their associated indicators, such as when drilling down into specific indicators or retrieving overall analytics hub data. When sysparm_uuid is provided, returns details for a specific indicator; otherwise returns all available scorecards. Supports optional inclusion of score values via sysparm_include_scores." }, { "slug": "SERVICENOW_GET_RECORDS", "name": "Get records", "description": "Retrieves multiple records from a specified ServiceNow table with optional filtering and pagination. Use this action to query and fetch records from any ServiceNow table (e.g., incident, sys_user, problem). Supports filtering via sysparm_query, field selection, pagination, and display value options." }, { "slug": "SERVICENOW_GET_RECORD_TYPES", "name": "Get Record Types", "description": "Retrieves all available table record types from the ServiceNow instance using the Table API documentation endpoint. Use this action when you need to discover all available tables and their record types in a ServiceNow instance before performing queries, creating records, or understanding the data structure available in the instance. This is useful for dynamic table selection and exploration purposes. This action queries the /api/now/doc/table/schema endpoint which returns metadata about all tables accessible in the ServiceNow instance, including both system tables and custom tables." }, { "slug": "SERVICENOW_GET_ROWS", "name": "Get Rows from Table", "description": "Retrieves records from a specified ServiceNow table using the Table API v2. Use this action when you need to fetch one or more records from any ServiceNow table (e.g., incident, task, problem, change_request). When sys_id is provided, retrieves a single record. Without sys_id, retrieves multiple records up to the sysparm_limit. Supports filtering via sysparm_query, field selection, pagination, and display value options." }, { "slug": "SERVICENOW_GET_SERVICATALOG_ITEMS_BY_ID", "name": "Get servicatalog items by", "description": "Retrieves a specific Service Catalog item from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular catalog item, including its name, description, associated categories, variables, client scripts, and display settings. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SERVIC_CATALOG_ITEM_VARIABLES", "name": "Get Catalog Item Variables", "description": "Retrieves the list of variables defined for a ServiceNow Service Catalog item. Use this action when you need to fetch all variables associated with a catalog item, such as when building dynamic forms, validating required inputs, or understanding what information a user must provide when ordering an item. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_CART", "name": "Get Service Catalog Cart", "description": "Retrieves the details of all items within the logged-in user's Service Catalog shopping cart. This action fetches the current contents of the shopping cart, including item details, quantities, prices, and any selected variables/options. The cart is associated with the authenticated user making the request. Use this action when you need to review items before submitting an order, verify quantities, or check selected options. This is a read-only operation that does not modify any data." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_CART_DELIVERY_ADDRESS", "name": "Get Service Catalog Cart Delivery Address", "description": "Retrieves the delivery/shipping address configured for a user's Service Catalog shopping cart. Use this action when you need to fetch the delivery address information associated with a user's ServiceNow Service Catalog cart. This is useful for verifying delivery details before placing an order or for displaying address information to users. The action returns address fields including street, city, state, zip code, country, and contact information such as phone and email." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_CATALOG_BY_ID", "name": "Get Service Catalog Catalog by ID", "description": "Retrieves the available information for a specified service catalog by its sys_id. Use this action when you need to fetch detailed information about a specific service catalog in ServiceNow, including its title and description. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_CATALOG_CATEGORIES", "name": "Get Service Catalog Catalog Categories", "description": "Retrieves the list of available categories for a specified ServiceNow Service Catalog. Use this action when you need to fetch the categories available within a specific service catalog, such as displaying available categories to users or navigating through catalog items. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_CATEGORY_BY_ID", "name": "Get Service Catalog Category by ID", "description": "Retrieves the available information for a specified service catalog category by its sys_id. Use this action when you need to fetch detailed information about a specific service catalog category in ServiceNow, including its title, description, subcategories, and item count. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_ITEM_DELEGATION", "name": "Get Service Catalog Item Delegation", "description": "Verifies whether a delegated user has access to a specific ServiceNow Service Catalog item. This action checks if a delegated user (identified by user_sys_id) is authorized to order or access a particular catalog item (identified by item_sys_id). Use this action to validate delegation permissions before attempting to submit orders on behalf of another user. Use this action when you need to verify delegation permissions for Service Catalog items, such as checking if a manager can order items on behalf of their team members or if an assistant has been granted proper access to order items for someone else." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_ITEMS_LIST", "name": "Get Service Catalog Items List", "description": "Retrieves a list of catalog items from ServiceNow's Service Catalog API. Use when you need to browse available service catalog offerings, search for specific items by name or description, filter items by category or catalog, or retrieve catalog item details including pricing, availability, and metadata. Supports filtering via category, catalog, and text search parameters." }, { "slug": "SERVICENOW_GET_SERVICE_CATALOG_WISHLIST_LIST", "name": "Get Service Catalog Wishlist List", "description": "Retrieves the list of items in the logged-in user's ServiceNow Service Catalog wishlist. Use this action when you need to fetch the wishlist items for the currently authenticated user in ServiceNow's Service Catalog. This is useful for displaying a user's saved items, checking what items they have bookmarked, or preparing to add items to a cart. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SN_CDM_SHARED_LIBRARIES_UPLOAD_STATUS", "name": "Get sn cdm shared libraries upload status", "description": "Retrieves the current status of a shared library upload operation in ServiceNow. Use this action when you need to check whether a library upload has completed successfully, is still in progress, or has failed. The upload_id should be obtained from a previous upload operation response or task. This is a read-only operation that queries the current status without modifying any data." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_BY_ID", "name": "Get sn chg rest change by", "description": "Retrieves a specific change request from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular change request, including its state, type, and description. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_EMERGENCY_BY_ID", "name": "Get sn chg rest change emergency by", "description": "Retrieves a specific emergency change request from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular emergency change request, including its state, risk level, priority, implementation details, approval status, and schedule. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_EMERGENCY_LIST", "name": "Get sn chg rest change emergency list", "description": "Retrieves one or more emergency change requests from ServiceNow using the Change Management API. Use this action when you need to query emergency change requests. Emergency changes are a type of change request that requires expedited approval and implementation due to urgent business needs. Supports filtering via sysparm_query, field selection, pagination, and display value options. Common use cases: Retrieving active emergency changes for approval, listing recently submitted emergency changes, monitoring emergency change status, or finding emergency changes by assignee." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_LIST", "name": "List ServiceNow Change Requests", "description": "Retrieves one or more change requests from ServiceNow based on specified filter criteria. Use when you need to query change management records, monitor pending changes, find changes by state or type, or list all changes assigned to a specific user or group. Supports filtering via encoded queries, pagination via limit/offset, and returns rich change request details including state, priority, dates, assignments, and approvals." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_MODEL_BY_ID", "name": "Get sn chg rest change model by", "description": "Retrieves a specific change model from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular change model, including its name, description, type, category, workflow, and other configuration settings. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_MODEL_LIST", "name": "Get sn chg rest change model list", "description": "Retrieves one or more change models from ServiceNow's Change Management API. Use this action when you need to fetch change model definitions that define the structure and workflow for change requests. Change models determine the type of change (normal, standard, emergency), associated workflows, and other configuration. This is a read-only operation that does not modify any data in ServiceNow. You can retrieve a specific change model by sys_id, or list all change models with optional filtering and pagination." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_NORMAL_BY_ID", "name": "Get Normal Change Request by ID", "description": "Retrieves a specific normal change request from ServiceNow using its sys_id via the Change Management REST API. Use when you need to fetch detailed information about a particular normal change request, including its state, type, priority, dates, assignments, and approvals. This is a read-only operation that does not modify any data in ServiceNow. The action specifically targets change requests of type 'normal' — if the provided sys_id does not correspond to a normal change request, a 404 error will be returned." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_NORMAL_LIST", "name": "List ServiceNow Normal Change Requests", "description": "Retrieves one or more normal change requests from ServiceNow's Change Management API. Use this action when you need to query normal change management records, monitor pending normal changes, find normal changes by state or type, or list all normal changes assigned to a specific user or group. Supports filtering via encoded queries, pagination via limit/offset, and returns rich normal change request details including state, priority, dates, assignments, and approvals. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_STANDARD_BY_ID", "name": "Get sn chg rest change standard by", "description": "Retrieves a specific standard change request from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular standard change request, including its state, phase, description, assignments, and schedule. This is a read-only operation that does not modify any data in ServiceNow. Standard changes are pre-approved changes following a standardized process defined by the organization." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_STANDARD_LIST", "name": "Get sn chg rest change standard list", "description": "Retrieves one or more standard change requests from ServiceNow using the Change Management API. Use this action when you need to query standard change requests. Standard changes are a type of change request that follows a pre-approved template and workflow, typically for routine or recurring changes that have been assessed and authorized in advance. Supports filtering via sysparm_query, field selection, pagination, and display value options. Common use cases: Retrieving active standard changes for approval, listing recently submitted standard changes, monitoring standard change status, or finding standard changes by assignee." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_STANDARD_TEMPLATE_BY_ID", "name": "Get ServiceNow Standard Change Template by ID", "description": "Retrieves a specific standard change template from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular standard change template, including its name, description, category, implementation plan, test plan, risk assessment, and other predefined fields. This is a read-only operation that does not modify any data in ServiceNow. This action complements the list action — use the list action to discover template sys_ids, then use this action to retrieve full details of a specific template by its sys_id." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_STANDARD_TEMPLATE_LIST", "name": "List ServiceNow Standard Change Templates", "description": "Retrieves one or more standard change templates from ServiceNow's Change Management API. Use this action when you need to query standard change templates that provide pre-defined structures for creating standard change requests. Standard change templates help ensure consistency in change implementation by providing predefined fields such as category, implementation plan, test plan, and risk assessment. This is a read-only operation that does not modify any data in ServiceNow. Common use cases: Listing available templates for a change request, filtering templates by category or active status, or retrieving templates for display in a user interface." }, { "slug": "SERVICENOW_GET_SN_CHG_REST_CHANGE_TASK", "name": "Get Change Tasks", "description": "Retrieves one or more tasks associated with a specific ServiceNow change request. Use this action when you need to fetch the tasks or subtasks related to a change request, such as to view task status, track progress, or list all work items assigned to a change. This is a read-only operation that does not modify any data in ServiceNow. The endpoint returns tasks that are linked to the change request via the task_for field or as child records in the change management workflow." }, { "slug": "SERVICENOW_GET_SN_CICD_APP_BATCH_RESULTS", "name": "Get sn cicd app batch results", "description": "Retrieves the results of a batch application install operation from ServiceNow CI/CD. Use this action when you need to check the status and details of a previously initiated batch application install or deployment operation. The result_id should be obtained from the response of the batch operation that was initiated. This is a read-only operation that does not modify any data in ServiceNow. This action is particularly useful for tracking the progress of multi-app deployments or installations, checking individual item success/failure status, and identifying any errors that occurred during the batch operation." }, { "slug": "SERVICENOW_GET_SN_CICD_INSTANCE_SCAN_RESULT", "name": "Get Instance Scan Result", "description": "Retrieves the current progress and status of a CI/CD instance scan operation in ServiceNow. Use this action when you need to check the status of an ongoing or completed ServiceNow instance scan that validates configurations, detects issues, or checks compliance. The progress_id should be obtained from the response of a previously initiated instance scan operation. This is a read-only operation that queries the current scan status without modifying any data. This action is typically used in a polling loop after initiating an instance scan to determine when the scan completes and to retrieve the scan results once finished." }, { "slug": "SERVICENOW_GET_SN_CICD_PROGRESS", "name": "Get CI/CD Progress", "description": "Retrieves the current progress and status of a CI/CD operation in ServiceNow. Use this action when you need to check the status of an ongoing CI/CD pipeline execution, commit operation, or deployment. The progress_id should be obtained from a previous CI/CD operation response. This is a read-only operation that queries the current status without modifying any data." }, { "slug": "SERVICENOW_GET_SN_CICD_TESTSUITE_RESULTS", "name": "Get sn cicd testsuite results", "description": "Retrieves the results of a test suite run from ServiceNow CI/CD based on the result ID. Use this action when you need to check the status, completion percentage, or final outcome of a previously initiated test suite execution in the ServiceNow CI/CD pipeline. The result_id should be obtained from the response of a test suite run initiation action. This is a read-only operation that queries the current state without modifying any data." }, { "slug": "SERVICENOW_GET_STATS", "name": "Get stats", "description": "Retrieves aggregate statistics for a specified ServiceNow table, including COUNT, AVG, MIN, MAX, and SUM calculations. Use this action when you need to perform aggregate queries on ServiceNow tables to get statistical summaries (e.g., count of incidents by state, average priority, min/max values for specific fields, or grouped aggregations). Supports filtering records with sysparm_query, calculating various aggregates, grouping results, and filtering aggregated results with the having clause." }, { "slug": "SERVICENOW_GET_TABLE_BY_ID", "name": "Get Table Records by ID", "description": "Retrieves multiple records from a specified ServiceNow table using the Table API. Use this action when you need to query and fetch records from any ServiceNow table (e.g., incident, sys_user, problem, change_request). Supports filtering via sysparm_query, field selection via sysparm_fields, and pagination via sysparm_limit and sysparm_offset. This action performs a GET request and is read-only." }, { "slug": "SERVICENOW_GET_TABLE_BY_ID2", "name": "Get Table Record by ID", "description": "Retrieves the record identified by the specified sys_id from the specified table. Use this action when you need to fetch a single record from any ServiceNow table (e.g., incident, sys_user, problem) by providing its table name and unique sys_id. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_TABLE_INCIDENT_BY_ID", "name": "Get table incident by", "description": "Retrieves a single incident record from ServiceNow by its sys_id using the Table API. Use this action when you need to fetch detailed information about a specific incident from ServiceNow's incident table, including its state, priority, assignment, description, and all other standard incident fields. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_TABLE_INCIDENT_LIST", "name": "List ServiceNow Incidents", "description": "Retrieves one or more incident records from the ServiceNow incident table using the Table API. Use this action when you need to query and list incidents from ServiceNow, such as finding active incidents, filtering by priority or state, searching for incidents by caller, or retrieving all incidents assigned to a specific user or group. Supports filtering via encoded queries, field selection, pagination via limit, and returns rich incident details including state, priority, assignments, timestamps, and SLA information. The incident table contains fields for tracking IT service disruptions including caller information, assigned personnel, affected services, priorities, and resolution status." }, { "slug": "SERVICENOW_GET_TABLES", "name": "Get ServiceNow Tables", "description": "Retrieves one or more records from a ServiceNow table using the Table API (GET /api/now/v2/table). Use this action when you need to query and list records from any ServiceNow table, such as finding incidents, tasks, change requests, users, or any other table record. Supports filtering via encoded queries (sysparm_query), field selection (sysparm_fields), pagination via sysparm_limit and sysparm_offset, and display value options. This is a generic table listing action that works with any table name specified in the request. For a list of available tables in the instance, consider using the GetRecordTypes action first to discover table names and labels before querying specific tables." }, { "slug": "SERVICENOW_GET_USER", "name": "Get user", "description": "Retrieves a specific user record from ServiceNow using its sys_id. Use this action when you need to fetch detailed information about a particular user, such as their contact details, department, location, manager, or account status. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_GET_USERS", "name": "Get users", "description": "Retrieves multiple user records from the ServiceNow sys_user table with optional filtering and pagination. Use this action when you need to query and fetch a list of users from ServiceNow, such as finding active users, users by department, or users matching specific criteria. Supports filtering via sysparm_query, field selection, pagination via sysparm_limit and sysparm_offset, and display value options. This is a read-only operation that does not modify any data." }, { "slug": "SERVICENOW_LIST_ATTACHMENTS", "name": "List ServiceNow Attachments", "description": "Retrieves metadata for multiple file attachments from ServiceNow's Attachment API. Use this action when you need to list and filter attachments across the instance, including filtering by table name, file name, content type, size, or other attachment properties. Supports pagination via sysparm_limit parameter. Note: This returns metadata only; actual file content must be downloaded separately using the sys_id or download_link provided in the response." }, { "slug": "SERVICENOW_LIST_CMDB_CI_LINUX_SERVERS", "name": "List CMDB Linux Servers", "description": "Retrieves Linux server configuration items (CIs) from the ServiceNow CMDB using the cmdb_ci_linux_server class. Use this action when you need to query Linux servers from the CMDB, such as retrieving all Linux servers for inventory reporting, filtering by operational status, environment, or other attributes. Supports filtering via sysparm_query and pagination via sysparm_limit and sysparm_offset. This is a read-only operation that does not modify any data in ServiceNow." }, { "slug": "SERVICENOW_LIST_CMDBC_IS", "name": "List CMDB Configuration Items", "description": "Retrieves configuration items (CIs) from the ServiceNow CMDB using the base cmdb_ci class. Use this action when you need to query all configuration items from the CMDB, regardless of their specific type (servers, computers, databases, applications, etc.). This endpoint queries the base cmdb_ci class which contains all CIs. Supports filtering via sysparm_query and pagination via sysparm_limit and sysparm_offset." }, { "slug": "SERVICENOW_LIST_CMDB_REL_TYPES", "name": "List CMDB Relationship Types", "description": "Retrieves CMDB relationship types from the ServiceNow cmdb_rel_type table using the Table API. Use this action when you need to discover what types of relationships are defined between Configuration Items (CIs) in the CMDB. Common relationship types include 'Runs on', 'Contains', 'Depends on', 'Hosted on', and 'Connects to'. This is useful for understanding the relationship schema before creating or querying CI relationships. Supports filtering via sysparm_query, pagination via sysparm_limit and sysparm_offset, field selection via sysparm_fields, and display value formatting via sysparm_display_value." }, { "slug": "SERVICENOW_LIST_SERVICE_CATALOG_CATALOGS", "name": "List Service Catalog Catalogs", "description": "Retrieves a list of ServiceNow Service Catalog catalogs to which the user has access. Use this action when you need to fetch available service catalogs from ServiceNow, such as displaying available catalogs to users or filtering catalogs by name or description." }, { "slug": "SERVICENOW_REFRESH_IMPACTED_SERVICES", "name": "Refresh Impacted Services for Change", "description": "Refreshes and repopulates the impacted services/configuration items for a change request in ServiceNow using the Change Management REST API. Use this action when you need to recalculate and update the list of impacted services or configuration items for a change request. This is commonly used when: - The change request's scope has changed - Configuration items need to be re-evaluated for impact - A new CI is added to the change and its impact needs to be computed Note: This action triggers a refresh of the impacted services based on the change request's current configuration items and may modify the associated services." }, { "slug": "SERVICENOW_RETRIEVE_SN_CICD_UPDATE_SET", "name": "Retrieve sn cicd update set", "description": "Retrieves an update set with a given sys_id from the ServiceNow CICD (Continuous Integration/Continuous Delivery) plugin. Use this action when you need to retrieve an update set from the CICD plugin to access its contents, including remote updates and application details. This operation is typically used as a preliminary step before deploying or reviewing update set changes through the CICD pipeline. The action requires the sys_id of an existing update set that is available in the CICD system. After successful retrieval, the update set details including its state, application info, and remote updates will be returned." }, { "slug": "SERVICENOW_SCHEDULE_CHANGE_FIRST_AVAILABLE", "name": "Schedule change first available", "description": "Updates the planned start and end times of a ServiceNow change request to the first available schedule slot. Use this action when you need to automatically schedule a change request at the earliest available time slot based on the configured calendar and availability. This is useful for finding optimal scheduling windows when the specific timing is less important than scheduling as soon as possible. This action sends a PATCH request to the Change Management API endpoint, which automatically calculates and assigns the first available time slot for the change request. Note: The change request must exist and be in a schedulable state (typically 'Open' or 'Approved'). The user must have appropriate permissions to modify the change request schedule." }, { "slug": "SERVICENOW_UPDATE_CMDB_CSDM_APP_SERVICE_POPULATE_SERVICE", "name": "Update cmdb csdm app service populate service", "description": "Populates an Application Service with CI (Configuration Item) relationships based on the CSDM (Common Service Data Model) model. Use this action when you need to automatically discover and populate the CIs (Configuration Items) and their relationships that belong to an application service in ServiceNow's CMDB. This endpoint has been deprecated by ServiceNow. Consider using alternative approaches for CI population." }, { "slug": "SERVICENOW_UPDATE_CMDBCSDM_APP_SERVICE_SERVICE_DETAILS", "name": "Update CMDB CSDM App Service Service Details", "description": "Updates the service details for a specific application service in the CMDB CSDM (Common Service Data Model). Use this action when you need to modify the metadata, ownership, tier classification, or operational details of an application service in ServiceNow's Configuration Management Database. This endpoint specifically updates the service_details attributes of the application service identified by its sys_id. This is an update (PUT) operation, so the provided fields will be set on the record. Fields not included in the request will retain their current values unless otherwise specified by the API. Common use cases: Updating application service ownership, changing tier or environment classifications, modifying criticality levels, or updating operational status." }, { "slug": "SERVICENOW_UPDATE_CMDB_INSTANCE_BY_ID", "name": "Update cmdb instance by", "description": "Updates an existing configuration item (CI) record in the ServiceNow CMDB by its sys_id. Use this action when you need to modify attributes of a specific configuration item in the Configuration Management Database. This action sends a PUT request to the CMDB Instance API endpoint, replacing the specified attributes of the CI record. Note: The classname and sys_id are required path parameters. Only include the attributes you want to update in the request. This action performs a full update operation - fields not included in the request will retain their current values unless the API enforces specific default behavior. Common use cases: Updating CI operational status, changing ownership, modifying location information, updating IP addresses, changing assignment groups, or updating custom CMDB fields." }, { "slug": "SERVICENOW_UPDATE_CMDB_INSTANCE_BY_ID2", "name": "Update CMDB Instance by ID", "description": "Updates an existing Configuration Item (CI) instance in the ServiceNow CMDB. Use this action when you need to modify the attributes of a specific CMDB record, such as updating its description, operational status, assignment group, IP address, or any other supported field. This action sends a PATCH request to the CMDB Instance API, replacing only the specified attributes on the target record. This is an update operation — changes made by this action can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_CONVERSATION_MEMBER_DROP", "name": "Update conversation member drop", "description": "Drops an agent from a conversation in ServiceNow using the Conversation Member API. Use this action when you need to remove an agent or user from an active conversation. This operation requires the wa_integration_user role. The member will be immediately removed from the conversation and will no longer receive messages or events for it. This action is irreversible — once a member is dropped from a conversation, they cannot be automatically restored through this API and would need to be re-added manually." }, { "slug": "SERVICENOW_UPDATE_INCIDENT_BY_ID", "name": "Update incident by", "description": "Updates an existing incident in ServiceNow identified by its sys_id using the Table API. Use this action when you need to modify an existing incident, such as updating its state, changing assignments, adding notes, updating priority, or resolving/closing the incident. Only the fields provided in the request will be updated; all other fields retain their current values. Note: This action performs a PUT (replace) operation. Only include the fields you want to update. This is a destructive operation in that it modifies data, but the changes can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_INCIDENT_BY_ID2", "name": "Update incident by id2", "description": "Updates an existing incident record in ServiceNow using the Table API. Use this action when you need to modify an existing incident, such as updating its state, changing assignments, adding work notes, updating priority/urgency, or modifying any other incident field. This action sends a PUT request to the Table API endpoint for the incident table at /api/now/table/incident/{sys_id}. This action is commonly used to resolve an incident by setting the state to 'Resolved' (6) and optionally providing resolution notes and resolved_at timestamp. Only include the fields you want to update in the request. Fields not included will retain their current values. This operation modifies data but changes can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_OPENFRAME_VOICE_INTERACTION", "name": "Update openframe voice interaction", "description": "Updates an existing voice interaction record in ServiceNow OpenFrame. Use this action when you need to modify an existing voice interaction record, such as updating its status, changing assignment, adding notes, or resolving the interaction. This action sends a PATCH request to the OpenFrame voice-interaction API, allowing partial updates of the record fields. Note: Only include the fields you want to update in the request. Fields not included will retain their current values." }, { "slug": "SERVICENOW_UPDATE_SERVICECATALOG_CART", "name": "Update servicecatalog cart", "description": "Updates an existing item in the ServiceNow Service Portal shopping cart. Use this action when you need to modify the quantity or variables of a cart item in the Service Catalog before checking out. This action sends a PUT request to the Service Catalog cart API endpoint, updating the specified cart item. Use when you need to change the quantity of an item in a user's Service Portal shopping cart or update catalog item variables. The cart_item_id is required, and at least one of sysparm_quantity or variables should be provided." }, { "slug": "SERVICENOW_UPDATE_SERVICECATALOG_ITEMS_SUBMIT_GUIDE", "name": "Update servicecatalog items submit guide", "description": "Submits an order guide in ServiceNow's Service Catalog with the specified variable values. Use this action when a user needs to submit an order guide in ServiceNow's Service Catalog, providing variable values for the items within the order guide. The action retrieves the configured contents of the order guide with the submitted variable values and calculates pricing totals. This is commonly used to preview and submit order guides that contain pre-configured sets of catalog items (e.g., laptop requests, software bundles). The action sends a PUT request with the order guide sys_id and variable values, and returns the order guide items with calculated pricing information. Note: This action is idempotent - submitting the same order guide multiple times with the same variables will return the same calculated values." }, { "slug": "SERVICENOW_UPDATE_SN_CHG_REST_CHANGE", "name": "Update sn chg rest change", "description": "Updates an existing change request in ServiceNow using the Change Management REST API. Use this action when you need to modify an existing change request, such as updating its state, changing assignments, adding notes, modifying dates, or updating the implementation plan. This action sends a PATCH request to the Change Management API, allowing partial updates of the record fields. Note: Only include the fields you want to update in the request. Fields not included will retain their current values. This is a destructive operation in that it modifies data, but the changes can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_SN_CHG_REST_CHANGE_EMERGENCY", "name": "Update sn chg rest change emergency", "description": "Updates an existing emergency change request in ServiceNow using the Change Management API. Use this action when you need to modify an existing emergency change request, such as updating its description, changing assignment, modifying priority, updating the implementation plan, or changing any other modifiable field. This is an update (PATCH) operation that performs a partial update of the record. Only fields that are included in the request body will be modified; all other fields retain their current values. Note: This action only works with emergency change requests. For normal or standard changes, use the appropriate change-specific endpoints." }, { "slug": "SERVICENOW_UPDATE_SN_CHG_REST_CHANGE_NORMAL", "name": "Update Normal Change Request", "description": "Updates a normal change request identified by its sys_id using the ServiceNow Change Management REST API. Use this action when you need to modify the details of an existing normal change request, such as updating its description, changing its state or priority, reassigning it to a different user or group, or updating schedule dates. Only the fields provided in the request will be updated; all other fields retain their current values. This is a PATCH operation — it performs a partial update. Only include the fields you want to change." }, { "slug": "SERVICENOW_UPDATE_SN_CHG_REST_CHANGE_STANDARD", "name": "Update ServiceNow Standard Change Request", "description": "Updates a standard change request in ServiceNow using its sys_id. Use this action when you need to modify an existing standard change request, such as updating its description, changing the assigned user or group, modifying dates, updating state or phase, or adding implementation and test plans. This is a PATCH operation that updates only the provided fields while preserving all other existing values on the record. This action uses the PATCH method, which means only fields included in the request will be modified. Fields not provided will retain their current values." }, { "slug": "SERVICENOW_UPDATE_SN_CHG_REST_CHANGE_TASK", "name": "Update sn chg rest change task", "description": "Updates an existing change request task in ServiceNow using the Change Management REST API. Use this action when you need to modify an existing task associated with a change request, such as updating its status, changing assignment, adding work notes, or marking it complete. This action sends a PATCH request to the Change Management API, allowing partial updates of the task fields. Only include the fields you want to update in the request - fields not included will retain their current values. Note: The task must already exist within the specified change request. If the change request or task doesn't exist, a 404 error will be returned." }, { "slug": "SERVICENOW_UPDATE_SN_IND_TSM_SDWAN_TICKET_TROUBLETICKET", "name": "Update SD-WAN Trouble Ticket", "description": "Updates an existing trouble ticket in ServiceNow using the Service Operations Workspace Trouble Ticket Open API. Use this action when you need to modify an existing trouble ticket, such as updating its state, changing assignments, adding notes, or modifying the resolution details. This action sends a PATCH request to the sn_ind_tsm_sdwan trouble ticket API, allowing partial updates of the record fields. Only include the fields you want to update in the request. Fields not included will retain their current values. This modifies the record data, but changes can be reverted by calling this action again with corrected values. This action is specifically for the Service Operations Workspace / Service Management SD-WAN integration's trouble ticket management functionality." }, { "slug": "SERVICENOW_UPDATE_SN_IND_TSM_SDWAN_TROUBLETICKET", "name": "Update Trouble Ticket", "description": "Updates an existing trouble ticket in ServiceNow using the Trouble Ticket Open API. Use this action when you need to modify an existing trouble ticket, such as updating its state, changing assignments, adding notes, modifying dates, or updating the resolution details. This action sends a PATCH request to the Trouble Ticket Open API, allowing partial updates of the record fields. Supported ticket types include Case, Incident, Problem, and ChangeRequest. Only include the fields you want to update in the request. Fields not included will retain their current values. This is a destructive operation in that it modifies data, but the changes can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_TABLE_BY_ID", "name": "Update table by", "description": "Updates an existing record in a specified ServiceNow table by its sys_id using the Table API. Use this action when you need to modify specific fields of an existing record, such as updating the short_description, changing the state, reassigning the record, adding close_notes, or modifying any other table field. Only the fields specified in record_data are updated — all other fields retain their current values. This action sends a PATCH request to the ServiceNow Table API. This action modifies data but the changes can be reverted by calling this action again with the corrected values. This is an idempotent operation — calling it multiple times with the same parameters produces the same result." }, { "slug": "SERVICENOW_UPDATE_TABLE_BY_ID2", "name": "Update table by id2", "description": "Updates an existing record in a specified ServiceNow table using its sys_id with the provided field values. This action uses the PUT method which replaces the entire record with the provided data. Only fields included in the record_data will be updated; unspecified fields retain their current values. Use this action when you need to modify specific fields of an existing record, such as updating the short_description, state, assignment, or other attributes of an incident, change request, or other table records. Note: This is a destructive operation in that it modifies data, but changes can be reverted by calling this action again with corrected values. For partial updates, consider using PATCH semantics where only the fields you want to change are included in record_data." }, { "slug": "SERVICENOW_UPDATE_TABLE_INCIDENT", "name": "Update table incident", "description": "Updates an existing incident record in ServiceNow using the Table API. Use this action when you need to modify an existing incident, such as updating its state, changing assignments, adding work notes, updating priority/urgency, or modifying any other incident field. This action sends a PUT request to the Table API endpoint for the incident table. Note: Only include the fields you want to update in the request. Fields not included will retain their current values. This operation modifies data but changes can be reverted by calling this action again with corrected values." }, { "slug": "SERVICENOW_UPDATE_TABLE_RECORD", "name": "Update table record", "description": "Updates an existing record in a specified ServiceNow table using the Table API. Use this action when you need to modify an existing record in any ServiceNow table (e.g., incident, problem, change_request, task). Only the fields specified in record_data will be updated; all other fields retain their current values. This is a destructive operation in that it modifies data, but changes can be reverted by calling this action again with corrected values. Note: For the ServiceNow Table API, both PUT and PATCH methods function identically - only specified fields are updated." }, { "slug": "SERVICENOW_UPLOAD_ATTACHMENT", "name": "Upload Attachment to ServiceNow Record", "description": "Uploads a file as an attachment to a specified record in ServiceNow. Use this action when you need to attach files to ServiceNow records (e.g., incidents, problems, change requests) using the raw binary upload endpoint (/api/now/v1/attachment/file). The file content is sent as raw binary data with the Content-Type header reflecting the file type. Common use cases: - Attach documents or screenshots to incident reports - Upload evidence files to problem records - Add files to change requests for documentation This action permanently modifies a live ServiceNow instance — the attachment cannot be recovered once deleted." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "servicenow_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "useraccount" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Instance Subdomain", "type": "string", "description": "Your ServiceNow instance subdomain (e.g. \"mycompany\" for mycompany.service-now.com).", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "servicenow_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "subdomain", "displayName": "Instance Name", "type": "string", "description": "Your Servicenow Instance Name.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "servicenow_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth Application Registry client ID from System OAuth > Application Registry.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "OAuth Application Registry client secret from System OAuth > Application Registry.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Instance Subdomain", "type": "string", "description": "Your ServiceNow instance Subdomain (e.g. \"mycompany\" for mycompany.service-now.com).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "googleads", "name": "Google Ads", "logo": "https://logos.composio.dev/api/googleads", "description": "Google Ads, is an online advertising platform developed by Google, where advertisers bid to display brief advertisements, service offerings, product listings, and videos to web users.", "category": "ads & conversion", "authSchemes": [ "OAUTH2" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLEADS_ADD_OR_REMOVE_TO_CUSTOMER_LIST", "name": "Add or remove to customer list", "description": "Adds or removes contacts from a Google Ads customer list (UserList/audience/remarketing list), not a Google Ads customer account. Note: It takes 6 to 12 hours for changes to be reflected in the customer list. Email addresses must comply with Google Ads policies and applicable privacy/consent laws." }, { "slug": "GOOGLEADS_CREATE_CUSTOMER_LIST", "name": "Create customer list", "description": "Creates a Google Ads customer list (UserList/audience/remarketing list), not a Google Ads customer account. Note: Requires an authenticated Google Ads connection with customer_id configured. Email-based lists must comply with Google Ads policies and applicable privacy/consent laws. Membership updates can take many hours to propagate; targeting eligibility is not immediate after creation." }, { "slug": "GOOGLEADS_GET_CAMPAIGN_BY_ID", "name": "Get Campaign By Id", "description": "GetCampaignById Tool returns details of a campaign in Google Ads. Requires an active Google Ads OAuth connection with the correct customer_id configured; missing or mismatched customer_id will cause empty results." }, { "slug": "GOOGLEADS_GET_CAMPAIGN_BY_NAME", "name": "Get campaign by name", "description": "Queries Google Ads via SQL to retrieve a campaign by its exact name. Requires an active Google Ads connection with valid customer_id and appropriate OAuth scopes." }, { "slug": "GOOGLEADS_GET_CUSTOMER_LISTS", "name": "Get customer lists", "description": "GetCustomerLists Tool lists all customer lists (audience/remarketing lists) in Google Ads. These are user segments for targeting, not Google Ads accounts — list IDs are distinct from account IDs. When multiple lists share similar names, review all returned results before selecting one for downstream operations." }, { "slug": "GOOGLEADS_LIST_ACCESSIBLE_CUSTOMERS", "name": "List Accessible Customers", "description": "List Google Ads customer resource names directly accessible to the authenticated user. Use this to discover available customer IDs or populate an account picker. For MCC child account names, status, and direct hierarchy, use List Sub Accounts." }, { "slug": "GOOGLEADS_LIST_SUB_ACCOUNTS", "name": "List Sub Accounts", "description": "List direct child/sub-accounts under a Google Ads manager (MCC) account. Use this before account-scoped read or mutate calls when a user needs to choose which child account to target. The returned customer_id values can be passed to other Google Ads tools as their customer_id." }, { "slug": "GOOGLEADS_MUTATE_AD_GROUP_ADS", "name": "Mutate Ad Group Ads", "description": "Create, update, or remove ads in Google Ads ad groups, including responsive search ads. Use this after creating campaigns, budgets, ad groups, and keywords so the ad group has creative that can serve." }, { "slug": "GOOGLEADS_MUTATE_AD_GROUP_ASSETS", "name": "Mutate Ad Group Assets", "description": "Create, update, or remove links between assets and ad groups. Use this after creating assets to attach sitelinks, callouts, snippets, images, and other asset types at ad group level." }, { "slug": "GOOGLEADS_MUTATE_AD_GROUP_BID_MODIFIERS", "name": "Mutate Ad Group Bid Modifiers", "description": "Create, update, or remove ad group bid modifiers, such as device bid adjustments or hotel-specific bid modifier criteria." }, { "slug": "GOOGLEADS_MUTATE_AD_GROUP_CRITERIA", "name": "Mutate Ad Group Criteria", "description": "Create, update, or remove criteria attached to a Google Ads ad group in a single batch request. Supports keywords (positive and negative), audience targeting (user lists, custom audiences, combined audiences, in-market/affinity), demographics (age range, gender, parental status, income range), placements (websites, mobile apps, YouTube channels/videos), topics, webpages (for Dynamic Search Ads), and listing groups (for Shopping). Use this to programmatically manage keyword bids and match types, build audience targeting, or prune underperforming criteria. Remove operations are irreversible — deleted criteria cannot be recovered. For testing, set validate_only=true to dry-run without committing changes." }, { "slug": "GOOGLEADS_MUTATE_AD_GROUPS", "name": "Mutate Ad Groups", "description": "Create, update, or remove ad groups within Google Ads campaigns. Supports batch operations with multiple ad group changes in a single request. Use when you need to manage ad groups programmatically, such as creating new ad groups for campaigns, updating ad group settings or status, or removing ad groups that are no longer needed. This action is irreversible for remove operations — deleted ad groups cannot be recovered once removed." }, { "slug": "GOOGLEADS_MUTATE_ASSETS", "name": "Mutate Assets", "description": "Create or update Google Ads assets such as sitelinks, callouts, structured snippets, text assets, lead forms, promotions, calls, price assets, and media assets. Google Ads AssetService does not expose remove via mutate." }, { "slug": "GOOGLEADS_MUTATE_BIDDING_STRATEGIES", "name": "Mutate Bidding Strategies", "description": "Create, update, or remove portfolio bidding strategies such as Target CPA, Target ROAS, Target Spend, Maximize Conversions, Maximize Conversion Value, Target Impression Share, and Enhanced CPC." }, { "slug": "GOOGLEADS_MUTATE_CAMPAIGN_ASSETS", "name": "Mutate Campaign Assets", "description": "Create, update, or remove links between assets and campaigns. Use this after creating assets to attach sitelinks, callouts, snippets, and other asset types at campaign level." }, { "slug": "GOOGLEADS_MUTATE_CAMPAIGN_BUDGETS", "name": "Mutate Campaign Budgets", "description": "Create, update, or remove Google Ads campaign budgets. Use this before creating campaigns because campaign creation requires an existing campaign_budget resource name." }, { "slug": "GOOGLEADS_MUTATE_CAMPAIGN_CRITERIA", "name": "Mutate Campaign Criteria", "description": "Create, update, or remove campaign-level targeting criteria such as locations, languages, campaign-level negative keywords, devices, schedules, audiences, and IP exclusions." }, { "slug": "GOOGLEADS_MUTATE_CAMPAIGN_LABELS", "name": "Mutate Campaign Labels", "description": "Create or remove relationships between campaigns and labels. Use this after creating labels to organize campaigns for filtering and reporting." }, { "slug": "GOOGLEADS_MUTATE_CAMPAIGNS", "name": "Mutate Campaigns", "description": "Create, update, or remove Google Ads campaigns in batch. Supports multiple operations (create, update, remove) in a single request. Use when managing campaign lifecycle, applying bulk changes, or automating campaign management workflows. This action is irreversible for remove operations — deleted campaigns cannot be recovered. Plan accordingly and consider using validate_only=true to test changes before applying them." }, { "slug": "GOOGLEADS_MUTATE_CONVERSION_ACTIONS", "name": "Mutate Conversion Actions", "description": "Create, update, or remove Google Ads conversion actions for conversion tracking configuration. This manages Google Ads conversion action resources; installing website/app tags remains outside this action." }, { "slug": "GOOGLEADS_MUTATE_LABELS", "name": "Mutate Labels", "description": "Create, update, or remove Google Ads labels. Pair this with campaign label mutations to organize campaigns and support filtering." }, { "slug": "GOOGLEADS_SEARCH_STREAM_GAQL", "name": "Search Stream GAQL", "description": "Execute a Google Ads Query Language (GAQL) query and stream all results in a single response. This method is more efficient than paginated search for bulk data retrieval of campaigns, ad groups, and performance metrics (clicks, impressions, cost). Use this action when you need the entire result set without pagination. Results are returned as a single response containing all matching rows." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googleads_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "generic_token", "displayName": "Developer Token", "type": "string", "description": "Google Ads API developer token. Found in your Google Ads Manager account under Tools → API Center.", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/adwords" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "Customer ID", "type": "string", "description": "Your 10-digit Google Ads customer ID, e.g. 123-456-7890 (dashes OK). Use the account ID for single-account access, or the manager/MCC ID for MCC workflows.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pagerduty", "name": "PagerDuty", "logo": "https://logos.composio.dev/api/pagerduty", "description": "PagerDuty helps you proactively manage your digital operations by collecting data signals from anywhere, interpreting those signals using machine learning, automatically engaging the right people, and accelerating resolution and learning.", "category": "server monitoring", "authSchemes": [ "OAUTH2", "API_KEY" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 368, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAGERDUTY_ADD_SERVICE_TO_INCIDENT_WORKFLOW_TRIGGER", "name": "Add service to incident workflow trigger", "description": "Adds a service to an existing incident workflow trigger in PagerDuty, enabling the trigger to fire for incidents on that service. Associates a specific service with an incident workflow trigger to automate incident management for that service. Prerequisites: - The incident workflow trigger must already exist (create with CREATE_A_TRIGGER) - The service must already exist in your account - The trigger must not be subscribed to all services Use when expanding automated workflows to additional services or incrementally rolling out workflows. This is an additive operation - use DELETE_INCIDENT_WORKFLOW_TRIGGER_SERVICE to remove services. Requires incident_workflows:write OAuth scope." }, { "slug": "PAGERDUTY_AGGREGATE_ESCALATION_POLICY_INCIDENT_METRICS", "name": "Aggregate escalation policy incident metrics", "description": "This endpoint analyzes and aggregates incident metrics across all escalation policies in PagerDuty. It allows for detailed filtering and customization of the analysis, enabling users to gain insights into incident patterns, response times, and escalation effectiveness. The endpoint is particularly useful for operational reviews, performance analysis, and identifying areas for improvement in incident management processes. It provides flexibility in data selection through various filters and supports different time-based aggregations for comprehensive reporting." }, { "slug": "PAGERDUTY_AGGREGATE_INCIDENT_METRICS_WITH_FILTERS", "name": "Aggregate incident metrics with filters", "description": "Retrieves and aggregates metrics for incidents across all services in PagerDuty. This endpoint allows for extensive filtering and customization of incident data, enabling detailed analysis of operational performance. It's particularly useful for generating reports, identifying trends, and assessing incident management efficiency over specified time periods. The endpoint supports various filtering criteria, time zone adjustments, and aggregation options, making it a powerful tool for both high-level overviews and granular incident analytics. However, users should be aware of the complexity of the filtering options and ensure they provide accurate parameters to obtain relevant data." }, { "slug": "PAGERDUTY_ASSOCIATE_SERVICE_DEPENDENCIES", "name": "Associate service dependencies", "description": "Associates multiple service dependencies in PagerDuty, allowing you to define relationships between supporting and dependent services. This endpoint is used to establish a hierarchical structure of services, which is crucial for effective incident management and impact analysis. It enables you to create multiple dependencies in a single API call, improving efficiency when setting up complex service relationships. Use this endpoint when you need to define or update the dependency structure of your services in PagerDuty, such as during initial setup, service restructuring, or when adding new services to your incident management workflow." }, { "slug": "PAGERDUTY_ASSOCIATE_TEAM_WITH_AUTOMATION_ACTION", "name": "Associate team with automation action", "description": "This endpoint associates a specific team with an automation action in PagerDuty. It allows you to link a team to an automated workflow, enabling better organization and management of automation actions within your incident response processes. Use this endpoint when you need to assign responsibility for an automation action to a particular team or when restructuring your automation workflows. The association helps in tracking, auditing, and managing permissions for automation actions across different teams in your organization. Note that this endpoint only creates the association; it does not create new teams or automation actions." }, { "slug": "PAGERDUTY_AUDIT_ESCALATION_POLICY_RECORDS", "name": "Audit escalation policy records", "description": "Retrieves the audit records for a specific escalation policy in PagerDuty. This endpoint allows users to access a detailed history of changes made to the escalation policy, including modifications to escalation rules, associated services, and on-call schedules. It's particularly useful for compliance tracking, troubleshooting, and understanding how the incident response process has been adjusted over time. The audit records provide transparency into who made changes, what was changed, and when the changes occurred, helping teams maintain accountability and optimize their incident management workflows." }, { "slug": "PAGERDUTY_CONVERT_SERVICE_RULE_BY_ID", "name": "Convert service rule by id", "description": "Converts a service's Event Rules to Event Orchestration rules. This migration endpoint automatically converts Service Event Rules to the newer Event Orchestration format, identically re-creating existing rules while retaining the same behavior. Note: Event Rules reached end-of-life in January 2025. This endpoint migrates from legacy Event Rules to Event Orchestration. Important: Conversion does NOT automatically enable Event Orchestration. You must manually enable it in the service Settings or via API for rules to take effect. Safe to run multiple times - returns existing orchestration URL if already converted. Works even when service has no event rules (returns success with orchestration URL)." }, { "slug": "PAGERDUTY_COUNT_PAUSED_INCIDENT_REPORTS", "name": "Count paused incident reports", "description": "Retrieves the count of paused incident reports in the PagerDuty system. This endpoint is part of PagerDuty's Incident Management and Analytics features, providing a quick way to quantify the number of incidents that are currently in a paused state. It's particularly useful for generating high-level analytics, tracking incident management efficiency, and identifying trends in incident handling. The endpoint returns a simple count, making it ideal for dashboard displays or periodic system status checks. It should be used when a rapid overview of paused incidents is needed, but it won't provide detailed information about individual incidents." }, { "slug": "PAGERDUTY_CREATE_A_CUSTOM_FIELD_FOR_AN_INCIDENT_TYPE", "name": "Create a custom field for an incident type", "description": "Create a Custom Field for an Incident Type. Custom Fields (CF) are a feature which will allow customers to extend Incidents with their own custom data, to provide additional context and support features such as customized filtering, search and analytics. Custom Fields can be applied to different incident types. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. Scoped OAuth requires: `custom_fields.write`" }, { "slug": "PAGERDUTY_CREATE_A_FIELD_OPTION_FOR_A_CUSTOM_FIELD", "name": "Create a field option for a custom field", "description": "Creates a new field option for a custom field on an incident type. Field options represent the allowed values for multi-value or dropdown custom fields. Before using this action: 1. You need a valid incident type ID or name (use LIST_INCIDENT_TYPES to find one) 2. The incident type must have a custom field already created (use CREATE_A_CUSTOM_FIELD_FOR_AN_INCIDENT_TYPE) 3. The custom field should be of type 'multi_value' or 'multi_value_fixed' to support multiple options Use this action to add selectable options to custom fields, enabling users to choose from predefined values when categorizing or tagging incidents. Note: This is an Early Access endpoint that requires the X-EARLY-ACCESS header and the 'custom_fields.write' scope." }, { "slug": "PAGERDUTY_CREATE_AND_MANAGE_CUSTOM_INCIDENT_FIELDS", "name": "Create and manage custom incident fields", "description": "Creates a new custom field for incidents in PagerDuty. This endpoint allows you to define additional data points to be associated with incidents, enhancing incident management and reporting capabilities. Custom fields can be used to store various types of information such as environment, severity, or any other relevant metadata. The field can be configured with different data types and value constraints, allowing for flexible and structured data capture. Use this endpoint when you need to extend the incident data model with organization-specific information. Note that once created, certain properties of a custom field cannot be changed, so careful planning of field structure is important." }, { "slug": "PAGERDUTY_CREATE_AN_INCIDENT_TYPE", "name": "Create an incident type", "description": "Create a new incident type. Incident Types are a feature which will allow customers to categorize incidents, such as a security incident, a major incident, or a fraud incident. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#incidentType) Scoped OAuth requires: `incident_types.write`" }, { "slug": "PAGERDUTY_CREATE_A_RULESET", "name": "Create a ruleset", "description": "Creates a new Ruleset in PagerDuty for managing incident routing and notification rules. This endpoint allows you to define a named set of rules that determine how incidents are processed and directed to specific teams or users. It's particularly useful when setting up or modifying your incident management workflow. The created Ruleset can be global, affecting all incoming incidents, or assigned to a specific team for more targeted incident routing. Note that while you can create the Ruleset structure with this call, the actual rules within the Ruleset must be added separately using other API endpoints." }, { "slug": "PAGERDUTY_CREATE_A_TRIGGER", "name": "Create incident workflow trigger", "description": "Creates a new incident workflow trigger in PagerDuty. Triggers define when and how incident workflows are activated - either automatically based on conditions or manually by responders. Trigger types: 'manual' (started by responders) or 'conditional' (fires when conditions are met, e.g., \"incident.priority matches 'P1'\"). Conditional triggers require a PCL condition string. Specify either a services list or subscribed_to_all_services (not both). Manual triggers support permission restrictions. Requires incident_workflows.write OAuth scope." }, { "slug": "PAGERDUTY_CREATE_AUTOMATION_RUNNER_ENDPOINT", "name": "Create automation runner endpoint", "description": "Creates a new Runbook Automation runner in PagerDuty's Automation Actions. A runner is the execution engine that invokes automation actions. Only 'runbook' type runners can be created via API. Required fields: runner_type ('runbook'), name (max 255 chars), description (max 1024 chars), runbook_base_uri (your Runbook instance subdomain), and runbook_api_key (User API token from Runbook). Use this to connect a Runbook Automation server to PagerDuty for executing automation actions during incidents. Requires a subscription with Automation Actions capabilities." }, { "slug": "PAGERDUTY_CREATE_BUSINESS_SERVICE", "name": "Create business service", "description": "This endpoint creates a new Business Service in PagerDuty, which represents a specific service or application that can be monitored and managed within the incident management platform. It allows you to define essential properties of the service, including its name, description, point of contact, and the team responsible for it. Use this endpoint when you need to add a new service to your PagerDuty account for monitoring and incident management. The created Business Service can be later associated with technical services, incidents, and escalation policies. Note that this endpoint only creates the Business Service; additional configuration may be required to set up monitoring and alerting for the service." }, { "slug": "PAGERDUTY_CREATE_ESCALATION_POLICY", "name": "Create escalation policy", "description": "Creates a new escalation policy in PagerDuty, defining how incidents are escalated to different responders or teams. This endpoint allows you to set up a structured response plan for managing incidents, including escalation rules, targets, and associated services or teams. Use this when setting up or modifying incident management workflows. The created policy determines the sequence of notifications and assignments for unacknowledged incidents. Note that while you can create the policy structure, actual service associations are read-only and must be managed separately. Only one team can be associated with a policy, and the account must have the 'teams' ability to use this feature." }, { "slug": "PAGERDUTY_CREATE_EVENT_ORCHESTRATION", "name": "Create event orchestration", "description": "Creates a new Event Orchestration in PagerDuty, which defines how incoming events are processed and routed to appropriate services. This endpoint allows you to set up a configuration that manages the flow of events from various integrations, ensuring efficient incident handling. Use this when you need to establish a new set of rules for event routing, especially when introducing new services or reorganizing your incident management workflow. The created Orchestration can later be associated with specific integrations using their routing keys. Note that while you can create the Orchestration structure, the actual integrations and routing details are managed separately and will be populated as read-only information once configured." }, { "slug": "PAGERDUTY_CREATE_EVENT_RULE_IN_RULESET", "name": "Create event rule in ruleset", "description": "Creates a new Event Rule within a specified Ruleset in PagerDuty's incident management system. This endpoint allows you to define complex conditions for event matching and specify actions to be taken when an event meets those conditions. Use this to automate incident response, customize alert routing, and fine-tune event processing based on specific criteria. The created rule becomes part of the Ruleset's evaluation sequence, affecting how incoming events are processed and managed. **DEPRECATION WARNING**: Rulesets and Event Rules reached end-of-life on January 31, 2025. While the API still supports accessing and modifying existing rulesets/rules, creating new rulesets is disabled. PagerDuty strongly recommends migrating to Event Orchestration for improved UI, advanced conditions, rule nesting, and better API/Terraform support. This action only works with pre-existing rulesets created before the EOL date." }, { "slug": "PAGERDUTY_CREATE_EXTENSION_OBJECT", "name": "Create extension object", "description": "Creates a new extension in PagerDuty, allowing for additional functionality or integrations to be added to your services. This endpoint is used to set up webhooks, custom integrations, or other specific features that enhance the capabilities of your PagerDuty account. The extension is defined by its name, associated services, and a specific extension schema that determines its behavior. Use this endpoint when you need to automate the creation of extensions, such as setting up multiple webhooks or implementing custom workflows. It's particularly useful for large-scale deployments or when programmatically managing your PagerDuty configuration. Note that the extension can be temporarily disabled by PagerDuty if issues arise, such as repeated rejections from a webhook server." }, { "slug": "PAGERDUTY_CREATE_HANDOFF_NOTIFICATION_RULE", "name": "Create handoff notification rule", "description": "Creates a new on-call handoff notification rule for a specific user in PagerDuty. This endpoint allows you to set up automated notifications for when a user is about to start or end their on-call shift. It defines how and when the user should be notified about upcoming handoffs, helping to ensure smooth transitions between on-call periods. Use this when you need to establish or modify the way a user is informed about their on-call responsibilities. The rule can be set for incoming shifts, outgoing shifts, or both, and can use various contact methods like email, phone, push notifications, or SMS. Note that this endpoint creates a new rule and does not modify existing ones." }, { "slug": "PAGERDUTY_CREATE_INCIDENT_FIELD_OPTION", "name": "Create incident field option", "description": "Creates a new field option for a specific custom field in PagerDuty's incident management system. This endpoint allows you to add predefined options to custom fields, enhancing the ability to categorize and filter incidents with consistent, structured data. Use this when you need to expand the list of selectable values for a string-type custom field. The new option becomes immediately available for selection when updating or creating incidents. Note that this operation is specific to custom fields of type 'string' and cannot be used for other data types. Ensure that the field_id in the URL corresponds to an existing custom field in your PagerDuty account." }, { "slug": "PAGERDUTY_CREATE_INCIDENT_RECORD", "name": "Create incident record", "description": "Creates a new incident in PagerDuty with specified details and assignments. Use this endpoint when an event requires immediate attention from on-call teams. It supports comprehensive incident documentation, including priority, urgency, and conference bridge information. The 'incident_key' parameter helps prevent duplicate incidents, crucial for maintaining a clean incident list." }, { "slug": "PAGERDUTY_CREATE_INCIDENT_WORKFLOW", "name": "Create incident workflow", "description": "This endpoint creates a new Incident Workflow in PagerDuty, allowing users to define a series of automated steps to be executed during incident response. It enables the setup of complex, multi-step processes that can include actions like sending notifications, updating statuses, or triggering other integrated systems. The workflow creation is highly customizable, supporting various action types and nested workflows, making it suitable for diverse incident management scenarios across different team structures and response protocols." }, { "slug": "PAGERDUTY_CREATE_INCIDENT_WORKFLOW_INSTANCE", "name": "Create incident workflow instance", "description": "Creates a new instance of an incident workflow for a specific incident in PagerDuty. This endpoint allows you to initiate a predefined workflow process for managing and resolving an ongoing incident. It links the workflow instance to a particular incident, enabling automated and standardized incident response procedures. Use this when you need to start a structured response process for a newly created or existing incident. The endpoint is particularly useful for ensuring consistent handling of incidents across your organization and for tracking the progress of incident resolution through defined stages." }, { "slug": "PAGERDUTY_CREATE_INTEGRATION_FOR_ORCHESTRATION", "name": "Create integration for orchestration", "description": "Creates a new integration for an existing event orchestration in PagerDuty. This action adds an integration to an event orchestration, enabling it to receive events from external monitoring tools, alerting systems, or custom applications. Each integration gets a unique routing key for use with the PagerDuty Events API v2. Use cases: Connect monitoring tools (Datadog, New Relic, CloudWatch), set up custom alerting systems, create multiple event sources, or separate event streams by environment. Requirements: Event orchestration ID and a descriptive integration label. Returns: Integration with unique ID, routing key for Events API v2, and label. Note: Max 10 integrations per orchestration." }, { "slug": "PAGERDUTY_CREATE_INTEGRATION_FOR_SERVICE", "name": "Create integration for service", "description": "Creates a new integration for a PagerDuty service to enable incident creation from external monitoring tools and systems. Integrations can be either generic (using 'type' parameter) or vendor-specific (using 'vendor' parameter). **Common integration types:** - events_api_v2_inbound_integration: Modern Events API v2 for custom integrations - generic_events_api_inbound_integration: Generic Events API v1 integration - generic_email_inbound_integration: Email-based incident creation **Vendor integrations:** Use the 'vendor' parameter with an ID from the vendors endpoint to create integrations for specific tools like Datadog, AWS CloudWatch, Nagios, New Relic, etc. **Returns:** The created integration object with an integration_key (for API integrations) or integration_email (for email integrations) that can be used to send events to PagerDuty. **Note:** Each integration belongs to exactly one service. Use this action after creating a service to establish monitoring channels." }, { "slug": "PAGERDUTY_CREATE_MAINTENANCE_WINDOW_OBJECT", "name": "Create maintenance window object", "description": "Creates a new maintenance window in PagerDuty, allowing you to schedule periods of planned maintenance for specific services. During a maintenance window, incidents are not created for the affected services, preventing unnecessary alerts and notifications. This endpoint is useful for planning and executing system upgrades, patches, or other maintenance tasks without triggering false alarms. The maintenance window has a defined start and end time, can be associated with multiple services, and optionally linked to specific teams. It's important to note that while incidents are suppressed during the maintenance window, underlying issues are still logged and can be reviewed later if needed." }, { "slug": "PAGERDUTY_CREATE_NEW_SCHEDULE_LAYER", "name": "Create new schedule layer", "description": "Creates a new on-call schedule in PagerDuty with one or more rotation layers. A schedule defines who is on-call at any given time. Each schedule contains one or more layers that specify rotation patterns, with each layer having: - User assignments (who participates in the rotation) - Rotation timing (how long each person is on-call) - Time zone for the schedule - Optional restrictions (e.g., only active during business hours) Use this action to: - Set up new on-call rotations for incident response - Define daily, weekly, or custom rotation patterns - Create multi-layer schedules (e.g., business hours + after-hours) - Establish coverage schedules for escalation policies The schedule will be available immediately after creation and can be referenced in escalation policies to route incidents to the right people." }, { "slug": "PAGERDUTY_CREATE_NEW_SERVICE", "name": "Create new service", "description": "Creates a new service in PagerDuty, which is a key component for managing incidents and alerts. This endpoint allows you to set up a service with various configurations including escalation policies, incident urgency rules, support hours, and alert grouping parameters. Use this when you need to add a new monitored service to your PagerDuty account, such as a new application, infrastructure component, or business process. The created service will be used as a target for incoming alerts and incidents, helping to organize and streamline your incident management process. Note that some advanced features like intelligent alert grouping may depend on your PagerDuty plan." }, { "slug": "PAGERDUTY_CREATE_NEW_TAG_IN_SYSTEM", "name": "Create new tag in system", "description": "Creates a new tag in PagerDuty for labeling and categorizing entities. This endpoint allows users to add a custom label to their PagerDuty account, which can be used to organize and filter various resources such as incidents, services, or teams. The created tag can be subsequently assigned to relevant entities to improve organization and searchability within the PagerDuty platform. Use this endpoint when you need to introduce a new categorization or labeling scheme in your PagerDuty setup. Note that this endpoint only creates the tag; assigning it to specific entities would require separate API calls." }, { "slug": "PAGERDUTY_CREATE_NEW_TEAM_WITH_DETAILS", "name": "Create new team with details", "description": "Creates a new team in PagerDuty for organizing users, incident management, and on-call schedules. Required: team.name (unique team name) Optional: team.description, team.parent (for nested hierarchies), team.default_role Use when setting up departments, project teams, or organizing users with shared incident response responsibilities. After creation, use separate API calls to add members to the team. Examples: - Basic: {\"team\": {\"name\": \"Platform Team\"}} - With details: {\"team\": {\"name\": \"SRE Team\", \"description\": \"Site Reliability Engineering\"}} - Nested: {\"team\": {\"name\": \"Backend API\", \"parent\": \"PXXXXXX\", \"default_role\": \"responder\"}} Note: Requires paid PagerDuty plan with Teams feature enabled." }, { "slug": "PAGERDUTY_CREATE_NEW_WEBHOOK_SUBSCRIPTION", "name": "Create new webhook subscription", "description": "Creates a new webhook subscription in PagerDuty to receive specific event notifications. This endpoint allows users to set up automated notifications for various incident-related events, such as triggers, acknowledgments, and resolutions. The webhook can be configured to filter events by service, team, or account-wide, and supports custom HTTP headers for enhanced integration capabilities. Use this when you need to integrate PagerDuty's real-time incident updates with external systems or workflows. Note that the webhook's secret for payload verification is only provided in the initial creation response and cannot be retrieved later." }, { "slug": "PAGERDUTY_CREATE_OR_UPDATE_STATUS_PAGE_POST", "name": "Create or update status page post", "description": "Creates a new post on a PagerDuty Status Page to communicate service status to users. Use this action to publish incident reports (for service disruptions) or maintenance announcements (for scheduled work). Each post includes a title, type, and one or more updates describing the current situation. You can specify which services are impacted, the severity level, whether to notify subscribers, and expected update frequency. For maintenance posts, include start and end times. For incident posts, these times are optional. This action is essential for transparent customer communication during service issues or planned work." }, { "slug": "PAGERDUTY_CREATE_OR_UPDATE_STATUS_PAGE_POSTMORTEM", "name": "Create or update status page postmortem", "description": "Creates or updates a postmortem for a specific status page post in PagerDuty. This endpoint allows you to add detailed analysis and insights about an incident after its resolution. The postmortem can include rich-text content and offers the option to notify subscribers. Use this when you need to provide a comprehensive review of an incident, its root causes, and lessons learned. It's particularly useful for maintaining transparency and improving incident response processes. Note that the postmortem is limited to 10,000 characters and is always associated with an existing status page post." }, { "slug": "PAGERDUTY_CREATE_RESPONSE_PLAY_FOR_INCIDENTS", "name": "Create response play for incidents", "description": "Creates a new Response Play in PagerDuty, which is a predefined set of actions to be executed in response to an incident. This endpoint allows you to configure automated responses, including adding subscribers, assigning responders, setting up conference details, and defining how the Response Play can be triggered. Use this when you want to standardize and automate your incident management process, ensuring consistent and efficient responses to different types of incidents. The Response Play can be set to run automatically for specific services or be manually triggered by team members or responders, depending on the configuration. This tool is particularly useful for creating templated responses for common incident types or for implementing best practices across your organization's incident management workflow." }, { "slug": "PAGERDUTY_CREATE_SCHEDULE_OVERRIDES_CONFIGURATION", "name": "Create schedule overrides configuration", "description": "Creates one or more overrides for a specific schedule in PagerDuty. This endpoint allows you to temporarily modify the on-call schedule by assigning different users for specific time periods. It's useful for handling planned absences, shift swaps, or special coverage requirements without permanently altering the regular schedule. The overrides are applied to the schedule identified by the {id} parameter in the endpoint URL. Multiple overrides can be created in a single request, enabling efficient batch modifications to the schedule. Each override specifies a start time, end time, and the user who will be on call during that period. The endpoint should be used when temporary changes to the on-call rotation are needed. It does not modify the underlying schedule configuration." }, { "slug": "PAGERDUTY_CREATE_SERVICE_EVENT_RULE", "name": "Create service event rule", "description": "Creates a new event rule for a specific service in PagerDuty. This endpoint allows you to define complex conditions and actions for handling incoming events, enabling automated incident management and alert routing. Use this when you need to set up custom logic for processing events, such as setting priorities, annotating incidents, or suppressing alerts based on specific criteria. The rule's position in the evaluation order can be specified, and various time-based conditions can be applied to control when the rule is active. This endpoint is crucial for fine-tuning your incident response workflow and reducing alert noise." }, { "slug": "PAGERDUTY_CREATE_STATUS_PAGE_SUBSCRIPTION", "name": "Create statuspage subscription", "description": "Creates a new subscription for a PagerDuty status page. This endpoint allows users to set up notifications for specific status pages or components within those pages. It's used to keep subscribers informed about updates, incidents, or changes to the monitored services. The subscription can be configured for either email or webhook notifications, allowing for flexible integration with various notification systems. This tool should be used when setting up new monitoring or alert systems, or when adding new stakeholders who need to be kept informed about service status. It's particularly useful for DevOps teams, IT managers, or customer support teams who need real-time updates on service health. Note that this endpoint only creates the subscription; it does not manage or trigger the actual notifications." }, { "slug": "PAGERDUTY_CREATE_STATUS_UPDATE_TEMPLATE", "name": "Create status update template", "description": "Creates a new status update template in PagerDuty for standardized incident notifications. Templates provide consistent, pre-formatted messages for stakeholder updates across email, SMS, push, and Slack. Supports dynamic variables like {{incident.title}}, {{incident.status}}, etc. Requires PagerDuty Business or Enterprise plan (returns 402 error otherwise). Only 'status_update' template type is currently supported. At minimum, provide a template name." }, { "slug": "PAGERDUTY_CREATE_USER_NOTIFICATION_RULE", "name": "Create user notification rule", "description": "Creates a new notification rule for a specific user in PagerDuty. This endpoint allows you to define how and when a user should be notified about assigned incidents. You can specify the delay before notification, the method of contact, and the urgency level of incidents that trigger this rule. This is particularly useful for customizing alert behaviors for different users based on their preferences or role within the organization. The rule created will be associated with the user identified by the provided ID in the URL path." }, { "slug": "PAGERDUTY_CREATE_USER_OBJECT", "name": "Create user object", "description": "Creates a new user in the PagerDuty system with the specified attributes. This endpoint should be used when onboarding new team members or adding users to your PagerDuty account. It allows you to set up essential user information, including name, email, role, and time zone preferences. The created user will have default contact methods and notification rules, which can be customized later. Note that some fields like teams, contact methods, and notification rules cannot be set during user creation and must be managed separately. The endpoint requires at minimum a name, email, and user type, with several optional fields for further customization." }, { "slug": "PAGERDUTY_CREATE_USER_STATUS_UPDATE_NOTIFICATION_RULE", "name": "Create user status update notification rule", "description": "Creates a new status update notification rule for a specific user in PagerDuty. This endpoint allows you to define how a user will be notified about incident status updates. It's used to customize notification preferences for individual users, ensuring they receive timely updates through their preferred contact method. The rule specifies which contact method (email, phone, push notification, or SMS) should be used for sending status updates. This is particularly useful for tailoring notification strategies to match users' roles and responsibilities within the incident management process." }, { "slug": "PAGERDUTY_CREATE_WORKFLOW_INTEGRATION_CONNECTION", "name": "Create workflow integration connection", "description": "Create a new Workflow Integration Connection. Scoped OAuth requires: `workflow_integrations:connections.write`" }, { "slug": "PAGERDUTY_DELETE_ACCOUNT_SUBSCRIPTION_BY_ID", "name": "Delete account subscription by id", "description": "Deletes the account subscription associated with a specific business service in PagerDuty. This endpoint is used to terminate the subscription or billing relationship between a business service and the account. It should be used when you need to discontinue the subscription for a particular business service, such as when the service is no longer needed or when restructuring your PagerDuty setup. This action is irreversible, so it should be used with caution. The endpoint does not return any specific data upon successful deletion, likely providing only a success status code." }, { "slug": "PAGERDUTY_DELETE_A_CUSTOM_FIELD_FOR_AN_INCIDENT_TYPE", "name": "Delete a custom field for an incident type", "description": "Deletes a custom field from an incident type. This permanently removes the field definition and associated options, but does not affect historical data on existing incidents. Prerequisites: 1. Valid incident type ID or name (use LIST_INCIDENT_TYPES) 2. Custom field on that incident type (use LIST_INCIDENT_TYPE_CUSTOM_FIELDS) 3. API token with 'custom_fields.write' scope Note: Early Access endpoint requiring X-EARLY-ACCESS header with 'analytics-v2'. Use case: Remove deprecated fields or clean up test fields. Scoped OAuth requires: `custom_fields.write`" }, { "slug": "PAGERDUTY_DELETE_ADDON_BY_ID", "name": "Delete addon by id", "description": "Deletes a specific add-on from the PagerDuty account using its unique identifier. This endpoint should be used when you want to remove an integration or extension that is no longer needed or active in your PagerDuty setup. It's important to note that this action is irreversible, and once an add-on is deleted, it cannot be recovered without re-adding it. Use this endpoint with caution, as removing an add-on may impact any automated workflows or integrations that depend on it." }, { "slug": "PAGERDUTY_DELETE_A_FIELD_OPTION_FOR_A_CUSTOM_FIELD", "name": "Delete a field option for a custom field", "description": "Deletes a specific field option from a custom field on an incident type. Field options represent the allowed values for multi-value or dropdown custom fields. This action permanently removes a field option. If incidents are using this field option value, the behavior depends on PagerDuty's configuration for handling deleted options. Prerequisites: 1. A valid incident type ID or name (use LIST_INCIDENT_TYPES to find one) 2. A custom field on that incident type (use LIST_INCIDENT_TYPE_CUSTOM_FIELDS) 3. A field option on that custom field (use LIST_FIELD_OPTIONS_ON_A_CUSTOM_FIELD) Note: This is an Early Access endpoint that requires the X-EARLY-ACCESS header with 'analytics-v2' and the 'custom_fields.write' scope. Example use case: Remove an obsolete option from a severity or category dropdown field after it's no longer needed for incident classification." }, { "slug": "PAGERDUTY_DELETE_ALERT_GROUPING_SETTING", "name": "Delete alert grouping setting", "description": "This endpoint allows you to delete specific alert grouping settings in PagerDuty. It is used to remove outdated or unnecessary configurations that determine how alerts are grouped into incidents. The deletion is permanent and cannot be undone, so it should be used with caution. This operation is particularly useful when updating your incident management strategy or cleaning up unused configurations to maintain an efficient alert grouping system. Note that deleting these settings may affect how future alerts are grouped, potentially impacting your team's incident response workflow." }, { "slug": "PAGERDUTY_DELETE_ALL_OAUTH_DELEGATIONS", "name": "Delete all oauth delegations", "description": "Delete all OAuth delegations for a user based on the specified type. An OAuth delegation represents an instance of a user or account's authorization to an app (via OAuth) to access their PagerDuty account. Common apps include the PagerDuty mobile app, Slack, Microsoft Teams, and third-party apps. Deleting an OAuth delegation will revoke that instance of an app's access to that user or account. To grant access again, reauthorization/reauthentication may be required. Currently, this endpoint only supports deleting mobile app OAuth delegations for a given user. This is equivalent to signing users out of the PagerDuty mobile app. The deletion is processed synchronously and takes effect immediately. Scoped OAuth requires: `oauth_delegations.write`" }, { "slug": "PAGERDUTY_DELETE_AUTOMATION_ACTION_BY_ID", "name": "Delete automation action by id", "description": "Deletes a specific Automation Action from the PagerDuty system. This endpoint is used to permanently remove an Automation Action, which includes any associated scripts or jobs in Runbook Automation. It should be used when an Automation Action is no longer needed or has become obsolete. Once deleted, the action cannot be recovered, so use this endpoint with caution. This operation is typically performed by administrators or users with appropriate permissions to manage Automation Actions." }, { "slug": "PAGERDUTY_DELETE_AUTOMATION_ACTION_SERVICE_BY_ID", "name": "Delete automation action service by id", "description": "This endpoint removes a specific automation action from a particular service in PagerDuty. It is used to disassociate an automated workflow or action from a service, effectively stopping that action from being triggered for incidents related to the specified service. This operation is useful when you need to update your incident management workflow or when an automated action is no longer relevant for a specific service. It's important to note that this endpoint only removes the association between the action and the service; it does not delete the automation action itself from the system. Use this endpoint with caution, as removing an automation action from a service will immediately affect the incident response process for that service." }, { "slug": "PAGERDUTY_DELETE_AUTOMATION_ACTIONS_RUNNER_BY_ID", "name": "Delete automation actions runner by id", "description": "Permanently deletes an automation actions runner from PagerDuty. Automation runners execute automated tasks and workflows during incident response. Use this when a runner is no longer needed or needs replacement. WARNING: Deletion is irreversible and will affect all automation actions and schedules using this runner. Requires Automation Actions feature subscription. To use: First obtain the runner ID via list_automation_actions_runners or get_automation_action_runner_by_id, then call this endpoint with that ID." }, { "slug": "PAGERDUTY_DELETE_BUSINESS_SERVICE_BY_ID", "name": "Delete business service by id", "description": "Deletes a specific business service from the PagerDuty system. This endpoint should be used when you want to permanently remove a business service that is no longer needed or relevant to your organization's incident management structure. It's important to note that this action is irreversible and will remove all associations between the deleted business service and any technical services or incidents. Use this endpoint with caution, as it may impact reporting and historical data related to the deleted business service. Before deletion, ensure that no active incidents or dependencies rely on this business service to avoid disruptions in your incident management workflow." }, { "slug": "PAGERDUTY_DELETE_BUSINESS_SERVICE_PRIORITY_THRESHOLDS", "name": "Delete business service priority thresholds", "description": "Deletes the account-level global priority threshold for business services in PagerDuty. This endpoint removes the configured priority threshold that determines the minimum incident priority level required for incidents to impact business services. When a global threshold is set, only incidents at or above that priority level will affect business services. Use this action to remove the global threshold entirely, allowing incidents of any priority to impact business services (or reverting to default behavior). This operation is idempotent - it can be called even when no threshold is currently set. The action does not delete business services themselves, only the global priority threshold configuration. Note that this affects all business services across the account." }, { "slug": "PAGERDUTY_DELETE_CACHE_VARIABLE_FOR_EVENT", "name": "Delete cache variable for event", "description": "Deletes a specific cache variable associated with an event orchestration in PagerDuty. This endpoint is used to remove temporary data storage that was previously set up for use in event orchestration workflows. It should be used when you need to clean up or remove outdated cache variables that are no longer needed in your event management process. This operation is idempotent - attempting to delete a cache variable that doesn't exist will return a successful response. The endpoint requires both the event orchestration ID and the specific cache variable ID to ensure precise removal of the intended data. Requirements: - Event Intelligence/Digital Operations plan OR PagerDuty AIOps add-on - Advanced Event Orchestration pricing tier - API token with event_orchestrations:write scope - User with Team Manager-level permissions or above" }, { "slug": "PAGERDUTY_DELETE_CACHE_VARIABLE_FROM_SERVICE", "name": "Delete cache variable from service", "description": "Deletes a cache variable from a service's event orchestration. Cache variables store temporary data used in event orchestration workflows. This action permanently removes the specified cache variable. Returns HTTP 204 No Content on successful deletion. Use this when cleaning up obsolete cache variables or freeing resources. Note: This action cannot be undone." }, { "slug": "PAGERDUTY_DELETE_CUSTOM_FIELD_BY_FIELD_ID", "name": "Delete custom field by field id", "description": "Deletes a specific custom field from incidents in PagerDuty. This endpoint allows users to remove a custom field that is no longer needed or relevant for incident management. It should be used when you want to permanently delete a custom field from all incidents, both existing and future. The operation is irreversible, so caution should be exercised when using this endpoint. It's important to note that this action will remove the specified custom field and its associated data from all incidents, which could impact reporting and analysis based on that field." }, { "slug": "PAGERDUTY_DELETE_ESCALATION_POLICY_BY_ID", "name": "Delete escalation policy by id", "description": "Permanently removes a specific escalation policy from the PagerDuty system. This endpoint should be used when an escalation policy is no longer needed or has become obsolete. Once deleted, the escalation policy cannot be recovered, and any services or incidents associated with it will need to be reassigned. Exercise caution when using this endpoint, as it will impact incident routing and may affect your team's ability to respond to alerts if not properly managed. It's recommended to review and update any dependent services before deleting an escalation policy." }, { "slug": "PAGERDUTY_DELETE_EVENT_BY_ID", "name": "Delete event by id", "description": "Deletes a specific Event Orchestration from the PagerDuty system. This endpoint should be used when you want to permanently remove an Event Orchestration configuration, including all its associated rules and routing logic. It's important to note that this action is irreversible, and once an Event Orchestration is deleted, it cannot be recovered. Before using this endpoint, ensure that the Event Orchestration is no longer needed and that its deletion won't disrupt any critical event routing or automation processes in your PagerDuty setup. This endpoint is particularly useful during cleanup operations or when restructuring your event management workflow." }, { "slug": "PAGERDUTY_DELETE_EXTENSION_BY_ID", "name": "Delete extension by id", "description": "Deletes a specific extension from the PagerDuty service. This endpoint should be used when you want to remove an additional feature or integration that has been previously added to your PagerDuty account. It's particularly useful for cleaning up obsolete integrations or disabling unwanted functionalities. Note that deleting an extension is permanent and cannot be undone, so use this endpoint with caution. This operation doesn't affect the core PagerDuty service, only the specified extension." }, { "slug": "PAGERDUTY_DELETE_FIELD_OPTION", "name": "Delete field option", "description": "Permanently deletes a field option from a custom incident field. For example, removes \"Medium\" from a Priority field with options \"Critical\", \"High\", \"Medium\", \"Low\". **Prerequisites:** Use PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELDS with include='field_options' to get valid field_id and field_option_id values. Requires OAuth scope: custom_fields.write **Warning:** This is IRREVERSIBLE and may impact existing incidents, reports, and automations that use this option value. Returns HTTP 204 No Content on success." }, { "slug": "PAGERDUTY_DELETE_INCIDENT_WORKFLOW_BY_ID", "name": "Delete incident workflow by id", "description": "Deletes a specific incident workflow from the PagerDuty system. This endpoint should be used when you want to permanently remove a customized sequence of automated actions and triggers associated with incident management. It's important to note that this action is irreversible, and once deleted, the workflow cannot be recovered. Use this endpoint with caution, ensuring that the workflow is no longer needed before deletion. This operation helps in maintaining a clean and relevant set of incident workflows, improving overall incident management efficiency." }, { "slug": "PAGERDUTY_DELETE_INCIDENT_WORKFLOW_TRIGGER_BY_ID", "name": "Delete incident workflow trigger by id", "description": "Deletes a specific trigger associated with an incident workflow in PagerDuty. This endpoint is used to remove an automated trigger that initiates a predefined workflow in response to incidents. It should be used when you need to modify your incident response automation by removing outdated or unnecessary triggers. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return any data upon successful deletion, typically responding with a 204 No Content status." }, { "slug": "PAGERDUTY_DELETE_INCIDENT_WORKFLOW_TRIGGER_SERVICE", "name": "Delete incident workflow trigger service", "description": "Removes a service from an incident workflow trigger in PagerDuty. This action disassociates a specific service from a trigger, preventing incidents from that service from automatically activating the workflow. Use this when you need to modify which services trigger automated incident responses. **Important Notes:** - The trigger and service must both exist and be currently associated - Returns 204 No Content on success with an empty response body - Returns 404 Not Found if the trigger or service association doesn't exist - This operation is immediate and affects future incident workflow executions - Cannot be undone - you'll need to re-add the service if removed by mistake **Common Use Cases:** - Updating which services participate in automated incident workflows - Removing a service from incident automation during maintenance - Adjusting workflow scope when service responsibilities change **Required Permissions:** incident_workflows:write OAuth scope" }, { "slug": "PAGERDUTY_DELETE_INTEGRATION_FROM_EVENT_ORCHESTRATION", "name": "Delete integration from event orchestration", "description": "Removes a specific integration from an event orchestration in PagerDuty. This endpoint is used to disconnect a particular tool or service from the event orchestration setup, effectively stopping it from triggering or modifying incidents within that orchestration. It's particularly useful when you need to retire an old integration or reconfigure your event management workflow. Be cautious when using this endpoint, as deleting an integration is irreversible and may impact your incident response processes if not properly planned." }, { "slug": "PAGERDUTY_DELETE_MAINTENANCE_WINDOW_BY_ID", "name": "Delete maintenance window by id", "description": "Deletes a specific maintenance window in PagerDuty's incident management system. This endpoint is used to permanently remove a scheduled maintenance window, effectively re-enabling any services and integrations that were temporarily disabled during the maintenance period. It should be used when a maintenance window is no longer needed or was created in error. Once deleted, the maintenance window cannot be recovered, so caution should be exercised when using this endpoint. This operation is particularly useful for cleaning up obsolete maintenance windows or adjusting scheduled maintenance plans." }, { "slug": "PAGERDUTY_DELETE_ONCALL_HANDOFF_NOTIFICATION_RULE", "name": "Delete oncall handoff notification rule", "description": "This endpoint deletes a specific on-call handoff notification rule for a given user in PagerDuty. It is used to remove custom notification settings for when on-call responsibilities are transferred between team members. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint is particularly useful for maintaining clean and up-to-date notification configurations, especially when certain handoff rules are no longer needed or have become obsolete. It requires both the user's ID and the specific rule ID to ensure precise targeting of the rule to be deleted." }, { "slug": "PAGERDUTY_DELETE_POST_FROM_STATUS_PAGE", "name": "Delete post from status page", "description": "This endpoint deletes a specific post from a PagerDuty status page. It is used to remove outdated or irrelevant information from a status page, helping to maintain clear and accurate communication with users about service status. The operation is irreversible, so it should be used with caution. This endpoint is particularly useful for cleaning up resolved incidents or removing erroneous updates. It does not provide any ability to modify or retrieve post content; it only removes the specified post entirely from the status page." }, { "slug": "PAGERDUTY_DELETE_POST_UPDATE_BY_ID", "name": "Delete post update by id", "description": "This endpoint deletes a specific post update from a status page post in PagerDuty. It allows users to remove outdated or incorrect information from a status page, ensuring that only relevant and accurate updates are displayed. The endpoint should be used when an organization needs to retract or remove a previously published update on their status page. It's important to note that this action is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for maintaining the accuracy and relevance of status page communications during incident management or scheduled maintenance periods." }, { "slug": "PAGERDUTY_DELETE_RESPONSE_PLAY", "name": "Delete response play", "description": "Deletes a specific Response Play from the PagerDuty system. This endpoint should be used when you need to remove an outdated or unnecessary Response Play from your incident management workflow. It permanently eliminates the predefined sequence of actions associated with the specified Response Play ID. Use this endpoint with caution, as the deletion is irreversible and may impact automated incident response processes. This operation is particularly useful for maintaining an up-to-date and efficient set of response strategies in your PagerDuty account. **IMPORTANT**: Response Plays are deprecated in favor of Incident Workflows. If your PagerDuty account has Incident Workflows enabled, this endpoint will return a 301 status code with the message \"Incident Workflows are enabled on this account.\" In such cases, you should use the Incident Workflows API instead." }, { "slug": "PAGERDUTY_DELETE_RULE_FROM_RULESET_BY_ID", "name": "Delete rule from ruleset by id", "description": "Deletes a specific event rule from a ruleset in PagerDuty. This endpoint permanently removes an individual rule from the specified ruleset. The operation cannot be undone, so use with caution as it may affect event routing and incident management workflows. NOTE: Rulesets are deprecated as of January 2025. PagerDuty recommends migrating to Event Orchestration for new implementations. This endpoint remains available for managing existing rulesets but cannot be used to create new rulesets or rules. See PagerDuty's Event Orchestration migration guide for more information. Returns a 204 No Content status on successful deletion, or 404 if the ruleset or rule is not found." }, { "slug": "PAGERDUTY_DELETE_RULESET_BY_ID", "name": "Delete ruleset by id", "description": "Deletes a specific ruleset from the PagerDuty system based on the provided ID. This endpoint should be used when you need to remove an existing ruleset, which may be necessary during incident management reconfiguration or when cleaning up obsolete rulesets. The deletion is permanent and cannot be undone, so use this endpoint with caution. It's important to note that deleting a ruleset will affect the incident routing and escalation policies associated with it, potentially impacting your organization's incident response workflow." }, { "slug": "PAGERDUTY_DELETE_RUNNER_TEAM_ASSOCIATION", "name": "Delete runner team association", "description": "This endpoint removes a team's association from a specific Automation Action runner in PagerDuty. It is used to revoke a team's access to execute or manage tasks on a particular runner. The operation is permanent and should be used when you no longer want a team to have access to the runner's capabilities. This action is typically performed for security reasons, organizational changes, or when refining access control within your PagerDuty environment. Note that this endpoint only removes the association; it does not delete the runner or the team themselves." }, { "slug": "PAGERDUTY_DELETE_SCHEDULE_BY_ID", "name": "Delete schedule by id", "description": "The DeleteSchedule endpoint removes a specific schedule from the PagerDuty system. It is used to delete outdated or unnecessary on-call schedules, helping to maintain an organized and efficient incident management workflow. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint is particularly useful when restructuring team rotations or when a project or team associated with the schedule is no longer active. It's important to note that deleting a schedule does not affect any historical data or past incidents associated with it, but it will prevent the schedule from being used in future incident assignments." }, { "slug": "PAGERDUTY_DELETE_SCHEDULE_OVERRIDE_BY_ID", "name": "Delete schedule override by id", "description": "This endpoint deletes a specific override from a PagerDuty schedule. It allows users to remove temporary changes made to the regular schedule, reverting it back to its original state. This operation is useful for canceling previously set overrides that are no longer needed, such as temporary shift changes or one-time schedule adjustments. The deletion is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly helpful for maintaining schedule integrity and ensuring that only current and relevant overrides remain active." }, { "slug": "PAGERDUTY_DELETE_SERVICE_BY_ID", "name": "Delete service by id", "description": "Deletes a specific service from the PagerDuty account. This endpoint should be used when you need to permanently remove a service that is no longer required or active. It's important to note that this operation is irreversible and will delete all associated incidents, alerts, and integrations for the specified service. Use this endpoint with caution, as it can impact your incident management workflow. Before deletion, ensure that the service is no longer needed and that all relevant data has been backed up if necessary." }, { "slug": "PAGERDUTY_DELETE_SERVICE_RULE_BY_ID", "name": "Delete service rule by id", "description": "Deletes a specific rule from a PagerDuty service. This endpoint is used to permanently remove a rule that defines conditions for incident creation or automation within a particular service. It should be used when you need to eliminate an outdated, incorrect, or no longer needed rule from your service configuration. The operation cannot be undone, so use it with caution. This endpoint does not return the deleted rule's details; it only confirms the successful deletion." }, { "slug": "PAGERDUTY_DELETE_STATUS_PAGE_POSTMORTEM", "name": "Delete status page postmortem", "description": "This endpoint allows you to delete a postmortem associated with a specific post on a PagerDuty status page. It is used to remove the detailed analysis and lessons learned from an incident after it has been resolved and documented. This action is permanent and should be used with caution, as it will remove valuable information about past incidents. The endpoint is particularly useful for maintaining the relevance of status page content, removing outdated postmortems, or correcting information that should not have been published. It's important to note that this operation cannot be undone, so it's recommended to have a backup of the postmortem content before deletion if retention of this information is necessary for internal records." }, { "slug": "PAGERDUTY_DELETE_STATUS_UPDATE_NOTIFICATION_RULE", "name": "Delete status update notification rule", "description": "Deletes a specific status update notification rule associated with a user in the PagerDuty system. This endpoint allows administrators or users with appropriate permissions to remove custom notification rules for status updates, helping to manage and streamline the user's notification preferences. It should be used when a particular status update notification rule is no longer needed or requires removal from the user's settings. The operation is irreversible, so caution should be exercised when invoking this endpoint. It's important to note that this endpoint only removes the specified rule and does not affect other notification rules or user settings." }, { "slug": "PAGERDUTY_DELETE_SUBSCRIPTION_FROM_STATUS_PAGE", "name": "Delete subscription from status page", "description": "Deletes a specific subscription associated with a PagerDuty status page. This endpoint is used to remove a subscription, effectively stopping notifications or updates related to the status page for the subscribed entity. It should be used when a user or system no longer needs to receive alerts or information about a particular status page. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint requires both the status page ID and the specific subscription ID to ensure precise removal of the intended subscription." }, { "slug": "PAGERDUTY_DELETE_TAG_BY_ID", "name": "Delete tag by id", "description": "Deletes a specific tag from the PagerDuty system based on its unique identifier. This endpoint should be used when you need to remove a tag that is no longer relevant or necessary for categorizing incidents, services, or other resources in PagerDuty. It's important to note that deleting a tag will remove it from all associated resources, which could impact filtering and organization within the PagerDuty platform. This operation is irreversible, so it should be used with caution. The endpoint does not return the deleted tag's information, so if you need to reference the tag details, you should retrieve them before deletion." }, { "slug": "PAGERDUTY_DELETE_TEAM_BY_ID", "name": "Delete team by id", "description": "Deletes a team from PagerDuty by its ID. This is a permanent, irreversible operation. Required: id (team ID to delete, e.g., 'PXXXXXX') Optional: reassignment_team (team ID to reassign unresolved incidents to) Important considerations: - Users in the team are NOT deleted, only the team structure is removed - Unresolved incidents can be reassigned to another team or made account-level - Associated schedules and escalation policies should be handled separately - This action cannot be undone Use cases: - Removing obsolete or unused teams - Consolidating team structures - Cleaning up after organizational changes Returns: HTTP 204 No Content on success (empty data dictionary)" }, { "slug": "PAGERDUTY_DELETE_TEAM_ESCALATION_POLICY", "name": "Delete team escalation policy", "description": "This endpoint removes an escalation policy association from a specific team in PagerDuty. It is used to update team configurations by disassociating an escalation policy that is no longer needed or relevant for the team's incident management process. The operation is irreversible and should be used with caution, as it may affect the team's incident response workflow. This endpoint is particularly useful when reorganizing team responsibilities or during cleanup of outdated escalation policies. It does not delete the escalation policy itself, but only removes its association with the specified team." }, { "slug": "PAGERDUTY_DELETE_TEAM_FROM_AUTOMATION_ACTION", "name": "Delete team from automation action", "description": "This endpoint removes a specific team's access to an Automation Action in PagerDuty. It's used to revoke permissions when a team no longer needs to use or should not have access to a particular Automation Action. This operation is permanent and cannot be undone through this endpoint. It should be used carefully, as it will immediately prevent the specified team from executing the Automation Action. This endpoint is particularly useful for managing access control and ensuring that only authorized teams can perform certain automated tasks." }, { "slug": "PAGERDUTY_DELETE_TEMPLATE_BY_ID", "name": "Delete template by id", "description": "Deletes a specific template from the PagerDuty account. This endpoint is used to permanently remove a template configuration, which can be useful for cleaning up outdated or unnecessary incident response plans. Once deleted, the template cannot be recovered, so use this operation with caution. It should be used when you no longer need a particular template for incident management or when you want to replace an old template with a new one. This operation does not affect any ongoing incidents that may have been created using the template." }, { "slug": "PAGERDUTY_DELETE_USER_BY_ID", "name": "Delete user by id", "description": "Deletes a specific user from the PagerDuty system using their unique identifier. This endpoint should be used when you need to permanently remove a user's account, such as when an employee leaves the organization or no longer requires access to the incident management system. It's important to note that deleting a user is irreversible and will remove all associated data, including their contact information, notification rules, and incident history. Before deletion, ensure that any ongoing incidents or schedules involving this user are reassigned to prevent disruptions in incident management workflows. This operation cannot be undone, so it should be used with caution and only when absolutely necessary." }, { "slug": "PAGERDUTY_DELETE_USER_CONTACT_METHOD", "name": "Delete user contact method", "description": "Deletes a specific contact method associated with a user in PagerDuty. This endpoint should be used when you need to remove an outdated or unnecessary contact method from a user's profile. It permanently removes the specified contact method, so use with caution. This operation cannot be undone. Ensure that the user has at least one remaining contact method after deletion to maintain their ability to receive notifications. This endpoint is particularly useful for maintaining up-to-date user profiles and streamlining communication channels." }, { "slug": "PAGERDUTY_DELETE_USER_FROM_TEAM_BY_ID", "name": "Delete user from team by id", "description": "This endpoint removes a specific user from a designated team within the PagerDuty incident management platform. It is used to update team compositions by disassociating a user from a particular team, which affects the user's involvement in that team's incident responses and escalation policies. This operation is particularly useful when restructuring teams, offboarding employees, or adjusting user roles and responsibilities. The endpoint requires both the team's unique identifier and the user's unique identifier to ensure precise user-team disassociation. It's important to note that this action does not delete the user from the PagerDuty account; it only removes their association with the specified team. Use this endpoint cautiously, as it immediately affects the user's ability to receive and respond to incidents related to the team." }, { "slug": "PAGERDUTY_DELETE_USER_NOTIFICATION_RULE", "name": "Delete user notification rule", "description": "Deletes a specific notification rule for a user in PagerDuty. This endpoint allows administrators or users with appropriate permissions to remove custom notification rules, modifying how and when a user receives alerts about incidents. It should be used when updating a user's notification preferences or when a specific notification rule is no longer needed. The deletion is permanent and cannot be undone, so caution should be exercised when using this endpoint. It's important to note that this action does not affect the user's default notification rules or their overall ability to receive notifications; it only removes the specified custom rule." }, { "slug": "PAGERDUTY_DELETE_USER_SESSION_BY_ID", "name": "Delete all user sessions", "description": "Deletes all active sessions for a specified user in the PagerDuty system. This endpoint is used to forcibly log out a user from all devices and applications where they might be currently authenticated. It's particularly useful for security purposes, such as when a user's credentials may have been compromised, or when offboarding an employee. The operation is irreversible and will require the user to re-authenticate on all devices. Use with caution as it may disrupt the user's ongoing work if not coordinated properly." }, { "slug": "PAGERDUTY_DELETE_USER_SESSION_BY_TYPE", "name": "Delete user session by type", "description": "This endpoint deletes a specific user session in PagerDuty. It is used to forcibly terminate an active session for a given user, effectively logging them out from a particular device or application. This operation is crucial for maintaining security, especially when you need to revoke access immediately, such as when a device is lost or stolen, or when suspicious activity is detected. The endpoint requires the user ID, session type, and specific session ID to accurately target and remove the desired session. It should be used cautiously as it will immediately terminate the user's access without warning." }, { "slug": "PAGERDUTY_DELETE_WEBHOOK_SUBSCRIPTION_BY_ID", "name": "Delete webhook subscription by id", "description": "Deletes a specific webhook subscription from your PagerDuty account. This endpoint should be used when you want to stop receiving notifications for a particular webhook subscription, such as when the integration is no longer needed or when updating your notification preferences. Once deleted, the webhook subscription will immediately cease to function, and you will no longer receive notifications for the events it was configured to monitor. This action is irreversible, so use it with caution. If you need to temporarily disable notifications, consider using other management options instead of deletion." }, { "slug": "PAGERDUTY_DELETE_WORKFLOW_INTEGRATION_CONNECTION", "name": "Delete workflow integration connection", "description": "Deletes a specific workflow integration connection from PagerDuty. Workflow integration connections enable PagerDuty workflows to interact with external services like AWS, Azure, Slack, and other platforms. This endpoint permanently removes a connection, which means any workflows using this connection will no longer be able to execute actions through it. This action is irreversible and cannot be undone. Before deleting a connection, ensure that no active workflows depend on it to avoid disruptions in your automation processes. Scoped OAuth requires: `workflow_integrations:connections.write`" }, { "slug": "PAGERDUTY_DISASSOCIATE_SERVICE_DEPENDENCIES", "name": "Disassociate service dependencies", "description": "Disassociates (removes) service dependencies in PagerDuty by deleting specified relationships between supporting and dependent services. This endpoint allows for efficient removal of multiple service dependencies in a single API call. Use this action when you need to: - Remove obsolete or incorrect service dependency relationships - Restructure service hierarchies by breaking existing dependencies - Clean up service dependency mappings during refactoring - Update the service topology by removing outdated connections Important: This operation is irreversible and will immediately affect the dependency structure. The response returns the removed relationships with their IDs. Service types are automatically normalized (e.g., 'service_reference' becomes 'technical_service_reference' in the response)." }, { "slug": "PAGERDUTY_EDIT_WEBHOOK_SUBSCRIPTION_BY_ID", "name": "Edit webhook subscription by id", "description": "Edit an existing webhook subscription in PagerDuty to modify its configuration. This action allows you to: - Update the list of incident event types the webhook subscribes to - Change the subscription description - Enable or disable the webhook (active status) - Modify filter criteria (service/team/account scope) - though filter type changes may be restricted Use cases: - Adjust which incident events trigger webhook notifications as your needs evolve - Temporarily disable a webhook without deleting it - Update descriptions to reflect changes in webhook purpose - Fine-tune event filtering for specific services or teams Important notes: - All update parameters are optional - only include fields you want to change - The webhook's delivery method (URL, headers) cannot be changed via this endpoint - Changing filter_type after creation may not be supported by the API - The response includes the complete updated webhook configuration - The secret for payload verification is not returned in update responses (null)" }, { "slug": "PAGERDUTY_ENABLE_EXTENSION_BY_ID", "name": "Enable extension by id", "description": "Enables a temporarily disabled extension in PagerDuty. Extensions (such as webhooks and custom integrations) can be automatically disabled by PagerDuty when there are repeated delivery failures, timeouts, or other issues. This endpoint reactivates such extensions after the underlying issues have been resolved. Common reasons extensions are disabled: - Webhook endpoint returns non-2xx status codes repeatedly - Webhook endpoint times out or responds too slowly - 3xx redirects from the webhook URL - Authentication failures at the webhook endpoint The endpoint is idempotent and can be called on already-enabled extensions without error. After enabling, verify that the underlying issue (e.g., webhook endpoint availability, correct URL, proper authentication) has been fixed to prevent the extension from being disabled again. The extension is identified by its unique ID." }, { "slug": "PAGERDUTY_ENABLE_WEBHOOK_SUBSCRIPTION_BY_ID", "name": "Enable webhook subscription by id", "description": "Activates a specific webhook subscription in PagerDuty, enabling the system to send notifications for the events configured in that subscription. This endpoint should be used when you want to start receiving webhook notifications after creating or previously disabling a subscription. It's particularly useful for managing notification flows dynamically, such as during maintenance periods or when integrating new systems. Note that this operation only affects the specified subscription and does not modify its configuration or event filters." }, { "slug": "PAGERDUTY_EXECUTE_RESPONSE_PLAY_BY_ID", "name": "Execute response play by id", "description": "Executes a predefined Response Play for a specific incident in PagerDuty. This endpoint allows you to trigger a sequence of automated actions designed to manage and respond to the given incident. It's useful for standardizing and streamlining your incident response process, ensuring consistent handling of similar incidents. The endpoint requires you to specify the incident for which the Response Play should be run, using the incident's unique identifier. Note that the Response Play itself is identified by the ID in the URL path, not in the request body." }, { "slug": "PAGERDUTY_FETCH_CACHE_VARIABLE_FOR_EVENT_ORCHESTRATION", "name": "Fetch cache variable for event orchestration", "description": "Retrieves detailed information about a specific cache variable in a PagerDuty event orchestration. Cache variables store dynamic data from events (recent values, trigger counts, or external data) to enable complex routing and automation workflows. Returns: Variable ID, name, configuration (type and settings), conditions (PCL expressions), disabled status, and metadata (timestamps, user references). Use cases: Inspect configuration before updates, debug orchestration logic, audit settings, verify automation rules. Prerequisites: Event Intelligence/Digital Operations plan or AIOps add-on, event_orchestrations:read scope, Team Manager+ permissions. Note: Read-only. Use fetch_event_orchestrations to get orchestration IDs, get_event_orchestration_cache_variables to list all variables." }, { "slug": "PAGERDUTY_FETCH_CUSTOM_INCIDENT_FIELD_BY_ID", "name": "Fetch custom incident field by id", "description": "Retrieves detailed information about a specific custom field associated with incidents in PagerDuty. This endpoint allows users to fetch the configuration and attributes of a custom field by providing its unique identifier. It's useful for verifying custom field settings, understanding the structure of additional data points on incidents, or preparing to update a custom field. The endpoint should be used when detailed information about a particular custom field is needed, such as its name, data type, or any predefined options. Note that this endpoint only provides information about the custom field itself, not the values assigned to incidents." }, { "slug": "PAGERDUTY_FETCH_ESCALATION_POLICES_LIST", "name": "Fetch escalation polices list", "description": "Retrieves a list of escalation policies configured in the PagerDuty account. This endpoint allows users to access detailed information about how incidents are escalated within their organization, including the sequence of notifications and assignments for different teams or individuals. It's particularly useful for reviewing and auditing the incident response process, ensuring that critical alerts are properly routed and escalated. The endpoint provides a comprehensive view of all escalation policies, which is essential for maintaining an effective incident management strategy. However, it does not modify any existing policies or create new ones; it's purely for retrieval and review purposes." }, { "slug": "PAGERDUTY_FETCH_EVENT_ORCHESTRATIONS", "name": "Fetch event orchestrations", "description": "Retrieves a list of event orchestrations configured in the PagerDuty account. Event orchestrations are used to manage and automate the routing and handling of events and incidents. This endpoint allows you to fetch details about existing orchestrations, which can be useful for auditing, reporting, or managing your incident response workflows. The response typically includes information such as orchestration names, associated routing keys, and configured rules. Use this endpoint when you need to review or list the current event orchestrations in your PagerDuty setup. Note that this endpoint does not provide real-time event data or incident details, only the configuration of the orchestrations themselves." }, { "slug": "PAGERDUTY_FETCH_INCIDENT_ANALYTICS_BY_ID", "name": "Fetch incident analytics by id", "description": "Retrieves raw analytics data for a specific incident in PagerDuty. This endpoint provides unprocessed incident information, allowing for detailed analysis and custom reporting. It should be used when in-depth, granular data about a particular incident is needed, such as for investigating complex issues or generating custom analytics. The endpoint returns comprehensive incident details, which may include timestamps, status changes, assignee information, and other relevant metrics. However, it does not provide pre-analyzed or aggregated data; users will need to process the raw data themselves for specific insights." }, { "slug": "PAGERDUTY_FETCH_INCIDENT_LIST", "name": "Fetch incident list", "description": "Retrieves a list of incidents from PagerDuty based on specified criteria. This endpoint allows users to fetch multiple incidents, making it useful for incident management, reporting, and analysis. It supports filtering by status and date range, as well as pagination for handling large result sets. The endpoint is particularly valuable for obtaining an overview of recent or ongoing incidents, tracking incident trends, or integrating PagerDuty incident data into external systems or dashboards. Note that while this endpoint provides a summary of incidents, it may not include full details for each incident; separate API calls might be necessary to fetch comprehensive information for individual incidents." }, { "slug": "PAGERDUTY_FETCH_OUTLIER_INCIDENT_BY_ID", "name": "Fetch outlier incident by id", "description": "Retrieves detailed information about an outlier incident associated with a specific incident in PagerDuty. This endpoint is used to gather insights on incidents that deviate significantly from normal patterns, helping teams identify and analyze unusual or potentially critical issues. It should be used when investigating anomalies in incident patterns or when conducting post-incident reviews. The endpoint provides specific data about the outlier incident, which can be crucial for understanding unique characteristics or severity of the issue compared to typical incidents. **Note**: This feature requires the PagerDuty AIOps add-on. Services must have AIOps enabled to access outlier incident data. Without this add-on, requests will return a 403 Forbidden error." }, { "slug": "PAGERDUTY_FETCH_POST_UPDATE_STATUS", "name": "Fetch post update status", "description": "Retrieves detailed information about a specific post update on a PagerDuty status page. This endpoint allows you to fetch the content and metadata of a particular update made to a post, providing insight into the chronological changes and communications related to an incident or maintenance event. Use this when you need to review or display the exact content of a specific update, such as for auditing purposes or to provide detailed information to stakeholders. The endpoint requires the unique identifiers for the status page, the post, and the specific update, ensuring precise retrieval of the desired information. It's particularly useful for tracking the evolution of an incident's communication or for analyzing the effectiveness of status updates over time." }, { "slug": "PAGERDUTY_FETCH_PRIORITIES_LIST", "name": "Fetch priorities list", "description": "Retrieves a list of existing priorities in the PagerDuty system, ordered from most severe to least severe. This endpoint should be used when you need to obtain information about the current priority levels configured in your PagerDuty account. It's particularly useful for integrations that need to reference or display priority information, or for administrators who want to review the existing priority structure. The endpoint provides a read-only view of priorities and does not allow for creation, modification, or deletion of priority levels. Keep in mind that this API call is subject to rate limiting, so it should not be called excessively in short periods." }, { "slug": "PAGERDUTY_FETCH_RELATED_CHANGE_EVENTS_FOR_INCIDENT", "name": "Fetch related change events for incident", "description": "Retrieves change events correlated with a specific incident, along with the reasons for correlation. Change events represent service changes such as deploys, build completions, and configuration updates that may be related to the incident. Change correlation is based on three factors: - Time: Recent changes within 24 hours of the incident - Related service: Changes to services involved in the incident - Intelligence: Machine learning-based relevance scoring Use this action to: - Understand what recent changes might have caused an incident - Investigate incident root causes during triage - Compile comprehensive incident reports with change context - Audit system changes related to specific incidents IMPORTANT: This endpoint requires the PagerDuty AIOps add-on (Enterprise plan feature). Accounts without this add-on will receive a 403 Forbidden error." }, { "slug": "PAGERDUTY_FETCH_RELATED_INCIDENTS_BY_ID", "name": "Fetch related incidents by id", "description": "Retrieves a list of incidents that are potentially related to a specified incident in PagerDuty. This endpoint utilizes machine learning algorithms to identify and return up to 20 recent incidents on other services that may be connected or similar to the given incident. It's particularly useful for incident management teams to gain a broader context of ongoing issues, identify patterns, and potentially streamline resolution processes. The endpoint should be used when investigating an incident to discover any correlated problems or when trying to understand the wider impact of a particular issue across the system. It does not modify any incident data and is intended for informational purposes only. **Note**: This feature requires the PagerDuty AIOps add-on. Services must have AIOps enabled to access related incident data. Without this add-on, requests will return a 404 Not Found error." }, { "slug": "PAGERDUTY_FETCH_RUNNER_TEAMS_INTEGRATION", "name": "Fetch runner teams integration", "description": "Retrieves a list of teams associated with a specific Automation Action Runner in PagerDuty. This endpoint allows users to identify which teams have access to or are responsible for a particular runner, facilitating better management and organization of automation resources. It's particularly useful for administrators who need to audit runner permissions or when planning to modify team access to automation capabilities. The endpoint returns team information related to the specified runner only and does not provide details about the runner itself or its automation actions." }, { "slug": "PAGERDUTY_FETCH_STATUS_PAGES", "name": "Fetch status pages", "description": "Retrieves a list of all status pages configured in the PagerDuty account. Status pages provide real-time information about the operational status of services, ongoing incidents, and planned maintenance. This endpoint should be used when you need to obtain an overview of all available status pages, which can be useful for monitoring, reporting, or integrating status information into other systems. The response will include details such as the status page ID, name, and current state. Note that this endpoint does not provide the actual content of each status page, but rather metadata about the pages themselves." }, { "slug": "PAGERDUTY_FETCH_USER_CONTACT_METHOD", "name": "Fetch user contact method", "description": "Retrieves detailed information about a specific contact method for a particular user in PagerDuty. This endpoint allows you to fetch the configuration and settings of a single contact method, such as an email address, phone number, or push notification settings, associated with a user's account. It's useful for verifying or auditing user contact information, or when you need to display or update a specific contact method. The endpoint requires both the user ID and the contact method ID to pinpoint the exact resource. It does not modify any data and is safe for frequent calls, but should be used judiciously in high-volume scenarios to avoid hitting rate limits." }, { "slug": "PAGERDUTY_FETCH_VENDOR_LIST", "name": "Fetch vendor list", "description": "Retrieves a list of vendors or third-party integrations available in the PagerDuty platform. This endpoint allows users to access information about various services and tools that can be integrated with PagerDuty for enhanced incident management and alerting capabilities. Use this endpoint when you need to explore or review the available integrations, such as monitoring tools, ticketing systems, or communication platforms. The response likely includes details such as vendor names, integration types, and possibly configuration options. Note that this endpoint does not provide real-time status of integrations or perform any actions on the integrations themselves." }, { "slug": "PAGERDUTY_FILTER_AND_AGGREGATE_INCIDENT_METRICS", "name": "Filter and aggregate incident metrics", "description": "Analyzes and aggregates incident metrics across teams in PagerDuty, allowing for detailed filtering and customization of results. This endpoint is used to gain insights into incident patterns, team performance, and overall operational efficiency. It provides flexible options for data selection, time range specification, and result presentation, making it valuable for generating reports, identifying trends, and optimizing incident management processes. The endpoint is particularly useful for operational reviews, team performance assessments, and strategic planning in incident response." }, { "slug": "PAGERDUTY_GET_ADDONS_LIST", "name": "Get addons list", "description": "Retrieves a list of all addons associated with the PagerDuty account. This endpoint allows users to view the additional features or integrations that have been added to enhance the platform's capabilities. It provides an overview of the current addons, which can include third-party services or custom extensions that extend the functionality of the core PagerDuty system. This endpoint is useful for auditing the account's current addons, planning for potential new integrations, or managing existing ones. Note that this endpoint only returns basic information about the addons and may not include detailed configuration settings for each addon." }, { "slug": "PAGERDUTY_GET_A_FIELD_OPTION_ON_A_CUSTOM_FIELD", "name": "Get a field option on a custom field", "description": "Retrieves a specific field option from a custom field on an incident type. Field options represent the selectable values for multi-value or dropdown custom fields in PagerDuty. This action returns details about a single field option including its value, data type, and other metadata. **Prerequisites:** 1. A valid incident type ID or name (use PAGERDUTY_LIST_INCIDENT_TYPES) 2. A valid custom field ID for that incident type (use PAGERDUTY_LIST_INCIDENT_TYPE_CUSTOM_FIELDS) 3. A valid field option ID for that custom field (use PAGERDUTY_LIST_FIELD_OPTIONS_ON_A_CUSTOM_FIELD) **Note:** This is an Early Access endpoint requiring the `custom_fields.read` OAuth scope. The X-EARLY-ACCESS header with value 'analytics-v2' is automatically included." }, { "slug": "PAGERDUTY_GET_AGGREGATED_PD_ADVANCE_USAGE_DATA", "name": "Get aggregated pd advance usage data", "description": "Provides aggregated metrics for the usage of PD Advance. > **Note:** Analytics data is updated [periodically](https://support.pagerduty.com/main/docs/insights#:~:text=Data%20Update%20Schedule). It takes up to 24 hours before new incidents appear in the Analytics API. Scoped OAuth requires: `analytics.read`" }, { "slug": "PAGERDUTY_GET_ALERT_GROUPING_SETTINGS", "name": "Get alert grouping settings", "description": "Lists all alert grouping settings configured in your PagerDuty account. Alert grouping settings control how multiple related alerts are automatically combined into a single incident, reducing noise and improving incident management. This endpoint returns settings including: - Grouping types: intelligent (ML-based), content_based, time-based, or content_based_intelligent - Configuration details: time windows, grouping fields (iag_fields), and other parameters - Associated services: which services each setting applies to Use this action to: - Audit current alert grouping configurations across your account - Discover which services have specific grouping rules applied - Retrieve setting IDs for use with update or delete operations - Understand how alerts are being consolidated in your incident workflow The response can be filtered by service IDs and supports pagination for accounts with many settings. Note that this returns configured settings, not real-time grouping status of active incidents." }, { "slug": "PAGERDUTY_GET_ALERTS_BY_INCIDENT_ID", "name": "Get alerts by incident id", "description": "Retrieves all alerts associated with a specific incident in PagerDuty. Alerts are the raw events that triggered or contributed to an incident. This endpoint allows users to fetch detailed information about these alerts, including their status, creation time, severity, and related service information. It is particularly useful for incident postmortems, auditing purposes, understanding alert grouping behavior, or investigating which monitoring events led to an incident. The endpoint returns a paginated list of alerts with optional filtering by status or alert_key, and supports including additional related data like services, first trigger log entries, or parent incident details." }, { "slug": "PAGERDUTY_GET_ANALYTICS_METRICS_INCIDENTS_ALL", "name": "Get analytics metrics incidents all", "description": "Retrieves aggregated incident analytics data for all incidents in PagerDuty. Use when you need comprehensive incident metrics across teams, services, and escalation policies." }, { "slug": "PAGERDUTY_GET_ANALYTICS_METRICS_USERS_ALL", "name": "Get analytics metrics users all", "description": "Get aggregated metrics for all users across the account. Returns user adoption and engagement metrics including mobile app downloads, escalation policy assignments, sign-up rates, and notification method configuration. Use when analyzing user adoption patterns, identifying users who need onboarding support, or generating reports on team readiness and engagement." }, { "slug": "PAGERDUTY_GET_ANALYTICS_RAW_INCIDENTS_RESPONSES", "name": "Get analytics raw incidents responses", "description": "Retrieves raw response data from a single incident in PagerDuty. Use this when you need detailed information about who was asked to respond to a specific incident and their response status." }, { "slug": "PAGERDUTY_GET_ANALYTICS_RAW_USERS", "name": "Get analytics raw users", "description": "Get raw user analytics data from PagerDuty. Use when you need detailed user activity and configuration metrics for analysis and reporting." }, { "slug": "PAGERDUTY_GET_AN_INCIDENT_TYPE", "name": "Get an incident type", "description": "Get detailed information about a single incident type. Accepts either an incident type id, or an incident type name. Incident Types are a feature which will allow customers to categorize incidents, such as a security incident, a major incident, or a fraud incident. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#incident) Scoped OAuth requires: `incident_types.read`" }, { "slug": "PAGERDUTY_GET_AN_INCIDENT_TYPE_CUSTOM_FIELD", "name": "Get an incident type custom field", "description": "Get a custom field for an incident type. Custom Fields (CF) are a feature which will allow customers to extend Incidents with their own custom data, to provide additional context and support features such as customized filtering, search and analytics. Custom Fields can be applied to different incident types. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. Scoped OAuth requires: `custom_fields.read`" }, { "slug": "PAGERDUTY_GET_A_TRIGGER", "name": "Get incident workflow trigger", "description": "Retrieves details of a specific incident workflow trigger by ID. Incident workflow triggers define when and how workflows are activated - either automatically based on conditions (conditional), manually by responders (manual), or for specific incident types (incident_type). The response includes the trigger type, associated workflow, services, conditions, and permissions. This is useful for understanding workflow automation configuration and debugging workflow execution. Requires the `incident_workflows.read` OAuth scope." }, { "slug": "PAGERDUTY_GET_AUDIT_RECORDS", "name": "Get audit records", "description": "Retrieves a list of audit records from the PagerDuty system. This endpoint allows users to access logs of configuration changes made to PagerDuty resources, such as account objects. The records are sorted by execution time, with the newest records appearing first. This tool is particularly useful for tracking and reviewing changes, conducting security audits, or generating reports on system modifications. It provides a comprehensive view of who made what changes and when, enhancing transparency and accountability within the organization. The endpoint supports pagination and date range filtering to manage large volumes of audit data effectively." }, { "slug": "PAGERDUTY_GET_AUTOMATION_ACTION_BY_ID", "name": "Get automation action by id", "description": "Retrieves detailed information about a specific automation action in PagerDuty's incident management platform. This endpoint allows users to fetch the configuration and attributes of a predefined automation action by its unique identifier. It's particularly useful when you need to review or audit the settings of an existing automation action, such as its triggers, conditions, or associated workflows. The endpoint should be used when detailed information about a single automation action is required, rather than for listing multiple actions. Note that this endpoint only provides read access to the automation action details and cannot be used to modify the action." }, { "slug": "PAGERDUTY_GET_AUTOMATION_ACTION_RUNNER_BY_ID", "name": "Get automation action runner by id", "description": "Retrieves detailed information about a specific Automation Action Runner in PagerDuty. This endpoint allows users to fetch the configuration, status, and other relevant details of a Runner by providing its unique identifier. It's particularly useful for monitoring the health and settings of individual Runners, which are crucial components in PagerDuty's automated incident response system. This tool should be used when you need to inspect or verify the properties of a specific Runner, such as its connection status, associated scripts, or execution environment. It does not modify the Runner's configuration or trigger any actions; it's purely for information retrieval." }, { "slug": "PAGERDUTY_GET_AUTOMATION_ACTIONS_RUNNERS", "name": "Get automation actions runners", "description": "Lists all automation action runners in your PagerDuty account. Runners are the execution environments that perform automation actions during incident response. Each runner can be a Runbook Automation instance or a Sidecar runner. This endpoint returns details about each runner including its type, name, description, connection status (last_seen timestamp), and optionally the automation actions associated with it. Use this to monitor runner health, audit runner configurations, or select appropriate runners for automation workflows. Supports filtering by name and pagination for large result sets. Note: This endpoint requires PagerDuty Automation Actions license/entitlement." }, { "slug": "PAGERDUTY_GET_AUTOMATION_ACTION_TEAM_BY_TEAM_ID", "name": "Get automation action team by team id", "description": "Retrieves detailed information about a specific team's association with an automation action in PagerDuty. This endpoint returns the details of how a particular team is linked to an automation action, which is useful for auditing access control, managing team permissions, and understanding which teams can execute specific automation actions. Use this endpoint when you need to verify or inspect the relationship between a specific team and an automation action, or when troubleshooting team-specific automation access and permissions. The response includes information about the team-action association that was created via the associate team endpoint." }, { "slug": "PAGERDUTY_GET_BUSINESS_SERVICES_IMPACTS", "name": "Get business services impacts", "description": "List Business Services sorted by impacted status. Returns all business services in the account, sorted with impacted services first, followed by non-impacted services." }, { "slug": "PAGERDUTY_GET_BUSINESS_SERVICES_PRIORITY_THRESHOLDS", "name": "Get business services priority thresholds", "description": "Retrieves the current priority threshold settings for all business services in PagerDuty. This endpoint allows users to fetch the configured thresholds that determine incident prioritization and escalation for each business service. It should be used when auditing or reviewing the current priority configurations across the organization's services. The tool provides a comprehensive view of how incidents are categorized and escalated based on their severity for different business services. It does not allow modification of these thresholds; for changes, a separate update endpoint would be required." }, { "slug": "PAGERDUTY_GET_BUSINESS_SERVICE_SUBSCRIBERS_BY_ID", "name": "Get business service subscribers by id", "description": "Retrieves a list of subscribers for a specific business service in PagerDuty. This endpoint allows you to fetch all users or teams configured to receive notifications for incidents related to the specified business service. It's useful for auditing who is responsible for responding to issues within a particular service, or for managing notification settings at a service level. The endpoint returns read-only data and does not modify any configurations. Use this when you need to review or verify the current subscriber list for a business service, such as during incident response planning or service ownership reviews." }, { "slug": "PAGERDUTY_GET_CACHE_VARIABLE_BY_ID", "name": "Get cache variable by id", "description": "Retrieves detailed information about a specific cache variable associated with a particular service within an event orchestration in PagerDuty. This endpoint allows you to access the current state and configuration of a cache variable, which can be crucial for understanding and troubleshooting event orchestration workflows. Use this when you need to inspect or verify the settings of a cache variable for a given service, such as during debugging or auditing processes. The endpoint provides read-only access and does not allow modification of the cache variable. Keep in mind that the response will only include information about the specified cache variable and will not provide a comprehensive view of all variables or the entire event orchestration configuration." }, { "slug": "PAGERDUTY_GET_CACHE_VARIABLES_FOR_SERVICE", "name": "Get cache variables for service", "description": "Lists all cache variables configured for a Service Event Orchestration. Cache variables store dynamic event data that can be used in service-level routing and automation workflows. Returns detailed configurations including variable types (recent_value, trigger_event_count, or external_data), conditions for updates, enabled/disabled state, and audit metadata (created/updated timestamps and user references). Use cases: - Audit cache variable configurations for a service - Debug event processing and orchestration logic - Export service orchestration setup for documentation or backup - Verify cache variable states before making changes Requirements: - PagerDuty AIOps add-on or Advanced Event Orchestration tier - event_orchestrations:read scope - Team Manager or higher permissions - Service must have Event Orchestration enabled Note: Returns an empty array if no cache variables exist for the service orchestration. Each service orchestration can have up to 100 cache variables." }, { "slug": "PAGERDUTY_GET_ESCALATION_POLICY_BY_ID", "name": "Get escalation policy by id", "description": "Retrieves detailed information about a specific escalation policy in PagerDuty. This endpoint allows you to fetch the complete configuration of an escalation policy, including its name, description, escalation rules, and associated services. Use this when you need to review or audit an existing escalation policy's setup. It's particularly useful for understanding how incidents are being routed and escalated within your organization. This endpoint does not modify any data and is safe for frequent calls, but be mindful of rate limits. Note that it only provides information for a single policy; to list multiple policies, you would need a different endpoint." }, { "slug": "PAGERDUTY_GET_EVENT_INTEGRATIONS_BY_ID", "name": "Get event integrations by id", "description": "Retrieves a list of integrations associated with a specific event orchestration in PagerDuty. This endpoint allows users to fetch all the integrations that are configured for a particular event orchestration, providing insights into how incidents are being routed and managed. It's useful for auditing the current setup of an event orchestration or when planning to modify the orchestration's integration configuration. The endpoint returns details about each integration, which may include integration types, configurations, and other relevant metadata. Use this when you need to review or analyze the integrations tied to a specific event orchestration for troubleshooting, reporting, or system optimization purposes." }, { "slug": "PAGERDUTY_GET_EVENT_ORCHESTRATION_BY_ID", "name": "Get event orchestration by id", "description": "Retrieves detailed information about a specific event orchestration in PagerDuty using its unique identifier. This endpoint allows users to fetch the configuration and settings of a particular event orchestration, which is crucial for understanding and analyzing how incidents are being managed and automated within the PagerDuty system. It should be used when you need to review or audit the setup of an event orchestration, such as its routing rules, filters, and associated services. The endpoint provides a comprehensive view of the orchestration but does not modify any settings. Keep in mind that access to this information may be restricted based on the user's permissions within the PagerDuty account." }, { "slug": "PAGERDUTY_GET_EVENT_ORCHESTRATION_CACHE_VARIABLES", "name": "List cache variables for event orchestration", "description": "Lists all cache variables configured for a specific Global Event Orchestration. Cache variables store dynamic data extracted from events, enabling complex routing rules and automation workflows based on event history and context. Returns up to 100 cache variables per orchestration with their configuration, conditions, enabled/disabled state, and metadata. Cache variable types: - recent_value: Stores CEF or raw event data - trigger_event_count: Counts events matching conditions - external_data: Stores data from external sources Use this to audit configurations, debug routing logic, or export orchestration settings for documentation. Requires Event Intelligence/Digital Operations plan or PagerDuty AIOps add-on, Advanced Event Orchestration pricing tier, API token with event_orchestrations:read scope, and Team Manager permissions or above." }, { "slug": "PAGERDUTY_GET_EVENT_ORCHESTRATION_GLOBAL", "name": "Get event orchestration global", "description": "Get the Global Orchestration configuration for an Event Orchestration. Returns the global-level routing rules and configurations that process all events sent to this orchestration before they reach service-specific rules. The response includes rule sets (starting with 'start' set), catch-all actions, parent orchestration reference, and metadata. Use this to view or audit the global event routing logic for an orchestration. Scoped OAuth requires: `event_orchestrations.read`" }, { "slug": "PAGERDUTY_GET_EVENT_ORCHESTRATION_INTEGRATION", "name": "Get event orchestration integration", "description": "Retrieves detailed information about a specific integration associated with an event orchestration in PagerDuty. This endpoint allows you to fetch the configuration and settings of a particular integration within the context of an event orchestration. Use this when you need to inspect or verify the setup of an integration, such as its type, configuration parameters, or connection status. The endpoint is particularly useful for troubleshooting integration issues or when you need to review the current state of an integration as part of your incident management workflow. Note that this endpoint only provides read access to the integration details and cannot be used to modify the integration." }, { "slug": "PAGERDUTY_GET_EXTENSION_SCHEMA_BY_ID", "name": "Get extension schema by id", "description": "Retrieves a specific extension schema from PagerDuty by its unique identifier. Extension schemas are pre-defined templates that define how PagerDuty integrates with external systems (like webhooks, Slack, Amazon EventBridge, ServiceNow, etc.). Each schema contains configuration details, supported webhook event types (trigger, acknowledge, resolve, etc.), UI elements (icons, logos), and metadata about the integration. This endpoint returns the complete definition of a specific extension schema including its label, description, required configuration fields, send types, features, and addon information. Use this action when you need to understand the capabilities and configuration requirements of a specific integration type before creating an extension instance. The schema ID can be obtained from the list extension schemas endpoint. This is a read-only operation that doesn't modify any data." }, { "slug": "PAGERDUTY_GET_IMPACT_BY_STATUS_PAGE_ID", "name": "Get impact by status page id", "description": "Retrieves detailed information about a specific impact level configuration on a PagerDuty status page. Impacts are predefined severity descriptors (such as 'Minor', 'Major', or 'Critical') that describe how business services are affected during incidents. This endpoint returns the configuration details for a specific impact level, including its ID, name, and description. Use this action when you need to understand the details of a particular impact level, such as when creating status page posts or analyzing how incidents are categorized. To get a list of all available impacts for a status page, use the 'Get Status Page Impacts By ID' action first. Note: This retrieves impact level metadata, not information about actual incidents affecting services." }, { "slug": "PAGERDUTY_GET_INCIDENT_ALERT_DETAILS", "name": "Get incident alert details", "description": "Retrieves detailed information about a specific alert associated with a particular incident in PagerDuty. This endpoint is used when you need to access the properties and current state of an individual alert within the context of its parent incident. It's particularly useful for tracking the progression of an alert, understanding its current status, and gathering related metadata. The endpoint should be called when detailed information about a single alert is required, rather than for bulk operations or listing multiple alerts. Note that this endpoint focuses on retrieving data and does not modify the alert or incident." }, { "slug": "PAGERDUTY_GET_INCIDENT_LOG_ENTRIES_BY_ID", "name": "Get incident log entries by id", "description": "Retrieves all log entries associated with a specific incident in PagerDuty. This endpoint provides a comprehensive history of actions, notifications, and status changes related to the incident. It should be used when detailed information about the lifecycle of an incident is needed, such as for post-incident reviews, auditing, or tracking the incident resolution process. The endpoint returns log entries in chronological order, allowing users to trace the incident's progression from creation to resolution. Note that the number of log entries returned may be large for long-running or complex incidents, so pagination might be necessary (though not specified in the given schema)." }, { "slug": "PAGERDUTY_GET_INCIDENT_WORKFLOW_ACTION_BY_ID", "name": "Get incident workflow action by id", "description": "Retrieves detailed information about a specific incident workflow action by its ID. An incident workflow action is a reusable automation step that can be used in incident workflows. This endpoint returns the action's metadata including its name, description, inputs, outputs, and configuration details. Use this when you need to: - Inspect the configuration and parameters of a workflow action - Understand what inputs an action requires before using it in a workflow - View the outputs an action produces - Verify action metadata like version, domain, and package information The action ID follows the format: 'domain_name:package_name:function_name:version' (e.g., 'pagerduty.com:slack:send-message:1'). This is a read-only operation that does not modify or execute the action." }, { "slug": "PAGERDUTY_GET_INCIDENT_WORKFLOWS", "name": "Get incident workflows", "description": "Lists all incident workflows configured in your PagerDuty account. Incident workflows are automated sequences of actions that execute during incident response to streamline processes like notifications, status updates, and integrations. This read-only endpoint retrieves workflow metadata including names, descriptions, associated teams, and optionally the workflow steps themselves. Use cases: - Browse available workflows to understand incident response automation - Find a specific workflow by name using the query filter - Audit which teams own which workflows - Retrieve workflow IDs for use with other workflow management actions Supports pagination and filtering. Use the 'include' parameter to fetch additional details like workflow steps or team information in a single request." }, { "slug": "PAGERDUTY_GET_INCIDENT_WORKFLOWS_ACTIONS", "name": "Get incident workflows actions", "description": "Retrieves a list of all available actions that can be used in incident workflows within PagerDuty. This endpoint provides information about the various automated tasks and responses that can be configured to streamline incident management processes. It should be used when setting up or modifying incident workflows to understand the range of actions available for automation. The endpoint returns details about each action, which may include its name, description, and any configurable parameters. This tool is particularly useful for developers and system administrators who are designing or optimizing their incident response procedures in PagerDuty. Note that while this endpoint retrieves action information, it does not execute or modify any actions itself." }, { "slug": "PAGERDUTY_GET_JIRA_CLOUD_ACCOUNT_MAPPINGS", "name": "Get Jira Cloud account mappings", "description": "Lists all account mappings between PagerDuty and Jira Cloud instances. Use this to retrieve the integration mappings that link PagerDuty accounts (by subdomain) to Jira Cloud instances (by base URL). This is useful for verifying configured integrations, auditing cross-platform connections, or managing Jira-PagerDuty sync configurations." }, { "slug": "PAGERDUTY_GET_LOG_ENTRIES", "name": "Get log entries", "description": "Retrieves log entries from the PagerDuty system, providing a detailed history of events and actions related to incidents and system activities. This endpoint is crucial for auditing purposes, allowing users to track changes, responses, and other important events within their incident management workflow. It supports filtering by date range and specific incidents, making it useful for both broad overview analysis and detailed incident investigations. The endpoint uses pagination to manage large sets of log entries, ensuring efficient data retrieval and processing." }, { "slug": "PAGERDUTY_GET_MAINTENANCE_WINDOW_BY_ID", "name": "Get maintenance window by id", "description": "Retrieves detailed information about a specific maintenance window in PagerDuty. This endpoint allows users to access the configuration, schedule, and status of a particular maintenance window using its unique identifier. It's useful for reviewing planned maintenance periods, verifying window settings, or checking the current status of a maintenance window. The endpoint should be used when detailed information about a single maintenance window is needed, rather than for listing all maintenance windows or creating new ones." }, { "slug": "PAGERDUTY_GET_OAUTH_DELEGATIONS_REVOCATION_REQUESTS_STATUS", "name": "Get oauth delegations revocation requests status", "description": "**DEPRECATED**: This endpoint is deprecated. The DELETE /oauth_delegations endpoint is now synchronous and completes immediately, eliminating the need to check revocation request status separately. Get the status of all OAuth delegations revocation requests for this account, specifically how many requests are still pending processing. OAuth delegations represent instances of app authorization (e.g., mobile app, Slack, Microsoft Teams) to access a PagerDuty account. This endpoint was previously used when deletion was asynchronous. **Access Requirements:** - Limited to account owners and admins only - Scoped OAuth requires: `oauth_delegations.read` **Note**: Since the DELETE operation is now synchronous, you should use the PAGERDUTY_DELETE_ALL_OAUTH_DELEGATIONS action directly, which returns the result immediately without needing to poll for status." }, { "slug": "PAGERDUTY_GET_PAUSED_INCIDENT_ALERTS", "name": "Get paused incident alerts", "description": "Retrieves the most recent paused incident alerts from PagerDuty for a specified reporting period. This endpoint returns up to 5 of the most recent alerts that were triggered after being paused, and up to 5 of the most recent alerts that were resolved after being paused. Alerts can be paused by two mechanisms: - Auto-Pause Incident Notifications: PagerDuty's ML-based feature that automatically pauses notifications for transient alerts that typically auto-resolve - Event Orchestration Rules: User-configured rules that pause incident creation for predefined periods Use this endpoint to: - Monitor the effectiveness of Auto-Pause Incident Notifications - Review alerts that were paused and subsequently triggered or resolved - Audit pause behavior across services - Analyze patterns in paused alerts to optimize notification rules Note: This feature requires Digital Operations (legacy) or Enterprise Incident Management plans, or the AIOps add-on. Access without the required plan will result in a 403 Forbidden error." }, { "slug": "PAGERDUTY_GET_POST_FROM_STATUS_PAGE_BY_ID", "name": "Get post from status page by id", "description": "Retrieves detailed information about a specific post on a PagerDuty status page. This endpoint allows you to fetch the content, timestamp, and any associated metadata for a particular update or message that has been posted to a status page. It's particularly useful for retrieving historical updates about incidents, maintenance notices, or general service status communications. Use this endpoint when you need to access or display the full details of a specific status update, such as when building a custom status page interface or integrating PagerDuty status updates into another system. Note that this endpoint only retrieves information for existing posts; it cannot be used to create, modify, or delete posts." }, { "slug": "PAGERDUTY_GET_RESPONSE_PLAYS", "name": "Get response plays", "description": "**DEPRECATED**: This endpoint was deprecated and removed in June 2024. Response Plays have been replaced by Incident Workflows, which provide more robust and powerful automation capabilities. Accounts have been migrated to use Incident Workflows instead. If you need similar functionality, please use the Incident Workflows API endpoints: - List Incident Workflows: GET /incident_workflows - Get Incident Workflow: GET /incident_workflows/{id} Original functionality: This endpoint retrieved a list of response plays configured in the PagerDuty account. Response plays were predefined sets of actions that could be automatically executed when an incident occurred, helping to streamline and standardize incident response processes." }, { "slug": "PAGERDUTY_GET_RULE_FROM_RULESET_BY_ID", "name": "Get rule from ruleset by id", "description": "Retrieves detailed information about a specific rule within a PagerDuty ruleset. This endpoint allows users to fetch the configuration and settings of an individual rule, which is essential for understanding how incidents are being automated and managed. It should be used when detailed information about a particular rule's conditions, actions, or other properties is needed. This endpoint is particularly useful for auditing ruleset configurations, troubleshooting automation issues, or preparing to update rule settings. It does not modify any data and is safe for frequent use in monitoring or dashboard applications. However, it will not provide an overview of all rules in a ruleset or allow for rule modifications." }, { "slug": "PAGERDUTY_GET_SCHEDULES", "name": "Get schedules", "description": "Retrieves a list of all schedules from your PagerDuty account. This endpoint provides essential information about on-call rotations, helping teams manage and organize their incident response workflows. Use this when you need to view all existing schedules, such as during schedule audits, team restructuring, or when setting up integrations that require schedule IDs. The endpoint returns basic details for each schedule, which can be used to make further API calls for more specific information. Note that this endpoint does not provide the full details of each schedule's rotation patterns; for that, you would need to make additional API calls using the schedule IDs returned by this endpoint." }, { "slug": "PAGERDUTY_GET_SCIM_RESOURCE_TYPES", "name": "Get SCIM resource types", "description": "Get SCIM resource types supported by PagerDuty's SCIM service provider. Returns metadata about available resource types (User, Group) including their endpoints, schemas, and names. Use this to discover which SCIM resources are supported by PagerDuty before performing SCIM provisioning operations. This follows the SCIM 2.0 protocol specification for ResourceTypes discovery." }, { "slug": "PAGERDUTY_GET_SCIM_SCHEMA_BY_ID", "name": "Get SCIM schema by ID", "description": "Retrieves an individual SCIM schema definition by its unique identifier (ID). Returns the complete schema structure including all attribute definitions, data types, constraints, and metadata. Use this to understand the structure of SCIM resources like Users and Groups before creating or updating them, or to validate SCIM implementation compliance. Common schema IDs include User (urn:ietf:params:scim:schemas:core:2.0:User) and Group (urn:ietf:params:scim:schemas:core:2.0:Group)." }, { "slug": "PAGERDUTY_GET_SCIM_SERVICE_PROVIDER_CONFIG", "name": "Get SCIM service provider config", "description": "Retrieves the SCIM 2.0 Service Provider Configuration for PagerDuty. This endpoint returns the capabilities and features supported by PagerDuty's SCIM implementation, including support for PATCH, bulk operations, filtering, sorting, and authentication schemes. Use this to understand what SCIM operations are available before performing user provisioning or management tasks." }, { "slug": "PAGERDUTY_GET_SCIM_USER", "name": "Get SCIM user", "description": "Retrieves detailed information about a specific user from PagerDuty's SCIM directory. Use this action when you need to fetch user profile information including display name, email, role, active status, job title, timezone, and license entitlements. This endpoint follows the SCIM 2.0 protocol standard for user provisioning and identity management." }, { "slug": "PAGERDUTY_GET_SERVICE_CUSTOM_FIELD_VALUES", "name": "Get service custom field values", "description": "Retrieves the custom field values for a specific PagerDuty service. Use this when you need to fetch custom metadata or additional structured information associated with a service. Custom fields allow organizations to extend PagerDuty services with domain-specific data like cost centers, SLA tiers, or application versions." }, { "slug": "PAGERDUTY_GET_SERVICE_ENABLEMENTS", "name": "Get enablements for a service", "description": "Retrieves feature enablement settings for a specific PagerDuty service. Use this to check which features are enabled or disabled for a service, such as alert grouping or auto-pause notifications. This is useful when auditing service configurations or determining which capabilities are active on a service." }, { "slug": "PAGERDUTY_GET_SERVICE_IMPACTS_BY_URL_SLUG", "name": "Get service impacts by url slug", "description": "Retrieves service impacts for a specific status dashboard in PagerDuty. This endpoint allows users to fetch real-time information about how incidents or maintenance activities are affecting services displayed on a particular dashboard. It's useful for monitoring the current state of services, understanding ongoing issues, and assessing the overall health of systems represented in the specified dashboard. The endpoint should be used when you need to programmatically access up-to-date service impact data for a known status dashboard, enabling integration with other monitoring or reporting tools. Note that this endpoint only provides information for a single dashboard at a time and requires knowledge of the dashboard's URL slug." }, { "slug": "PAGERDUTY_GET_SEVERITY_FOR_STATUS_PAGE", "name": "Get severity for status page", "description": "Retrieves detailed information about a specific severity level on a particular status page in PagerDuty. This endpoint is used to fetch the configuration and metadata associated with a severity, which is crucial for understanding how incidents are categorized and communicated on a status page. It provides insights into how different levels of service disruptions are represented and managed within the PagerDuty system. This tool is essential for developers and administrators who need to programmatically access or audit severity configurations on status pages, enabling them to ensure consistent incident communication across their organization." }, { "slug": "PAGERDUTY_GET_SPECIFIC_POST_UPDATE_STATUS", "name": "Get specific post update status", "description": "Retrieves the updates for a specific post on a PagerDuty status page. This endpoint allows users to fetch the chronological list of updates made to a particular post, providing detailed information about how the status or information has changed over time. It's particularly useful for tracking the progression of an incident or maintenance event that has been communicated through a status page. The endpoint should be used when there's a need to review the history of updates for a specific status page post, such as during post-incident reviews or when compiling reports on communication effectiveness during incidents." }, { "slug": "PAGERDUTY_GET_STATUS_DASHBOARD_BY_ID", "name": "Get status dashboard by id", "description": "Retrieves detailed information about a specific status dashboard in PagerDuty. Status Dashboards represent user-defined views for the Status Dashboard product that are limited to specific Business Services. This endpoint fetches the configuration, components, and current status of a particular dashboard. **IMPORTANT**: This is an early-access feature that requires: - The X-EARLY-ACCESS header set to 'status-dashboards' - Specific account permissions or subscription tier - The Status Dashboard feature enabled on your PagerDuty account Use this endpoint when you need to retrieve details about a known status dashboard by its ID. The endpoint is read-only and does not modify any data. To list all available status dashboards, use the retrieve_status_dashboards_information action first to obtain valid dashboard IDs." }, { "slug": "PAGERDUTY_GET_STATUS_FOR_STATUS_PAGE_BY_ID", "name": "Get status for status page by id", "description": "Retrieves the current status of a specific item on a PagerDuty status page. This endpoint is used to fetch up-to-date information about the operational state of a particular service or component listed on a status page. It's particularly useful for integrations that need to monitor or display the latest status of services to users or internal systems. The endpoint requires both the status page ID and the specific status item ID, allowing for precise querying of individual service statuses within a larger status page context. This tool should be used when you need to programmatically check the current state of a specific service on a PagerDuty status page, such as during incident management or for creating custom dashboards." }, { "slug": "PAGERDUTY_GET_STATUS_PAGE_IMPACTS_BY_ID", "name": "Get status page impacts by id", "description": "Retrieves the list of impact level configurations available for a specific status page in PagerDuty. Impact levels are predefined severity descriptors (such as 'Minor', 'Major', 'Critical', or 'All Good') that describe how business services are affected during incidents. This endpoint returns the configuration metadata for all impact levels on a status page, including their IDs, names, and descriptions. Use this action when you need to understand what impact levels are available for categorizing service disruptions on a status page, such as when creating status page posts or analyzing incident severity options. Optionally filter by post type (incident or maintenance) to see impacts relevant to specific post types. Note: This retrieves impact level metadata/configurations, not information about actual ongoing incidents or service disruptions." }, { "slug": "PAGERDUTY_GET_STATUS_PAGE_SUBSCRIPTION", "name": "Get status page subscription", "description": "Retrieves detailed information about a specific subscription associated with a particular status page in PagerDuty. This endpoint allows users to fetch subscription details such as the subscriber's contact information, notification preferences, and current subscription status. It should be used when you need to review or verify the details of an existing subscription for a status page. The endpoint is particularly useful for managing and auditing subscriber information, troubleshooting notification issues, or when updating subscription settings. Note that this endpoint only provides read access to subscription data and cannot be used to modify or create new subscriptions." }, { "slug": "PAGERDUTY_GET_TAGS_BY_ENTITY_TYPE", "name": "Get tags by entity type", "description": "Retrieves all entities of a specific type that are associated with a given tag. Use this when you need to find all users, teams, or escalation policies that have been tagged with a particular tag. The response will only include the entity type specified in the request (e.g., if entity_type is 'users', only the users array will be populated). This is useful for filtering and organizing resources by tags, or for auditing which resources are associated with specific categorization labels." }, { "slug": "PAGERDUTY_GET_TEAM_MEMBERS_BY_ID", "name": "Get team members by id", "description": "Retrieves a list of all members associated with a specific team in PagerDuty. This endpoint is useful for obtaining detailed information about the composition of a team, including user IDs, names, roles, and contact information of team members. It should be used when you need to review or audit team membership, update on-call rotations, or gather information for reporting purposes. The endpoint does not modify team membership; it only provides read access to the current team roster. Keep in mind that the response may be paginated for teams with a large number of members." }, { "slug": "PAGERDUTY_GET_TEAM_NOTIFICATION_SUBSCRIPTIONS", "name": "Get team notification subscriptions", "description": "Retrieves the notification subscriptions for a specific team in PagerDuty. This endpoint allows you to fetch detailed information about how a team is configured to receive notifications for various events and incidents. It's particularly useful for auditing a team's notification settings, understanding their alert preferences, and ensuring that the right people are notified at the right time. The endpoint should be used when you need to review or analyze a team's current notification setup, but it won't allow you to modify these settings directly. Keep in mind that the response may include sensitive information about team members and their notification preferences, so use this endpoint judiciously and in compliance with your organization's data privacy policies." }, { "slug": "PAGERDUTY_GET_TEAMS_ASSOCIATED_WITH_ACTION_ID", "name": "Get teams associated with action id", "description": "Retrieves the list of teams associated with a specific automation action in PagerDuty. This endpoint is useful for understanding which teams are responsible for or have access to a particular automated process in the incident management workflow. It can be used to audit team assignments, manage access control, or gather information for reporting purposes. The endpoint returns only the teams linked to the specified automation action and does not provide details about the action itself or other related resources." }, { "slug": "PAGERDUTY_GET_TEMPLATE_BY_ID", "name": "Get template by id", "description": "Retrieves detailed information about a specific template in PagerDuty by its unique identifier. This endpoint is used to access the configuration and settings of a pre-defined template, which can include incident response procedures, notification rules, and other standardized actions. It's particularly useful when you need to review or reference an existing template for incident management purposes. The endpoint returns comprehensive data about the template, but does not modify or create new templates." }, { "slug": "PAGERDUTY_GET_THE_SERVICE_ORCHESTRATION_FOR_A_SERVICE", "name": "Get the service orchestration for a service", "description": "Get a Service Orchestration. A Service Orchestration allows you to create a set of Event Rules. The Service Orchestration evaluates Events sent to this Service against each of its rules, beginning with the rules in the \"start\" set. When a matching rule is found, it can modify and enhance the event and can route the event to another set of rules within this Service Orchestration for further processing. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#event-orchestrations) Scoped OAuth requires: `services.read`" }, { "slug": "PAGERDUTY_GET_USER_NOTIFICATION_SUBSCRIPTIONS", "name": "Get user notification subscriptions", "description": "Lists notification subscriptions for a specific PagerDuty user. Returns subscriptions to various entities like business services and incidents that the user has subscribed to for receiving notifications. Use this to audit which resources a user is monitoring, troubleshoot notification issues, or manage a user's subscription preferences. The response includes subscription type (business_service, incident), subscribable IDs, and pagination details (limit, offset, more, total)." }, { "slug": "PAGERDUTY_GET_USER_SESSION_BY_TYPE", "name": "Get user session by type", "description": "Retrieves detailed information about a specific user session in PagerDuty. This endpoint allows you to fetch session-related data for a particular user, filtered by session type and identified by a unique session ID. It's useful for monitoring user activity, troubleshooting authentication issues, or auditing system access. The endpoint returns data about the specified session, which may include creation time, last activity timestamp, expiration time, and other relevant session attributes. It should be used when detailed information about a user's specific session is required, but it does not provide information about other sessions or general user account details." }, { "slug": "PAGERDUTY_GET_USER_SESSIONS_BY_ID", "name": "Get user sessions by id", "description": "Retrieves all active sessions for a specific user in PagerDuty. This endpoint allows you to fetch information about a user's current login sessions, which can be useful for auditing, security monitoring, or managing user access. It provides details such as session start times, device information, and IP addresses for each active session. Use this endpoint when you need to track user activity, investigate potential security issues, or manage concurrent logins. Note that this endpoint only returns information about active sessions and does not provide historical session data or the ability to modify sessions." }, { "slug": "PAGERDUTY_GET_USER_STATUS_UPDATE_NOTIFICATION_RULES", "name": "Get user status update notification rules", "description": "Retrieves all status update notification rules for a specific user in PagerDuty. Returns a list of all notification rules that determine how the user receives notifications about incident status updates. Each rule specifies a contact method (email, SMS, or phone) to be used for sending status update notifications. Common use cases: - View all configured status update notification rules for a user - Audit user notification preferences and contact methods - Check which contact methods are set up for status updates - Verify notification configuration before modifying rules The response includes the total count of rules and detailed information about each rule including the associated contact method (with email address or phone number when included)." }, { "slug": "PAGERDUTY_GET_WEBHOOK_SUBSCRIPTION_BY_ID", "name": "Get webhook subscription by id", "description": "Retrieves detailed information about a specific webhook subscription in PagerDuty. This endpoint allows you to fetch the configuration and status of a webhook subscription, including its delivery method, subscribed events, and any applied filters. Use this when you need to review or verify the settings of an existing webhook subscription, such as checking which events it's configured to receive or confirming its current status. The endpoint provides a snapshot of the subscription's configuration but does not include historical data about past webhook deliveries or failures." }, { "slug": "PAGERDUTY_GET_WORKFLOW_INTEGRATION", "name": "Get workflow integration", "description": "Get details about a Workflow Integration. Scoped OAuth requires: `workflow_integrations.read`" }, { "slug": "PAGERDUTY_GET_WORKFLOW_INTEGRATION_CONNECTION", "name": "Get workflow integration connection", "description": "Get details about a Workflow Integration Connection. Scoped OAuth requires: `workflow_integrations:connections.read`" }, { "slug": "PAGERDUTY_INSTALL_ADD_ON_ENDPOINT", "name": "Install add on endpoint", "description": "This endpoint allows you to install a new add-on to your PagerDuty account, enhancing its functionality with custom integrations. Add-ons can be either full-page or incident-specific, providing additional context or tools within the PagerDuty interface. Use this endpoint when you want to integrate external resources or custom dashboards into your PagerDuty workflow. The add-on must have a secure HTTPS source URL and a unique name within your account. Note that while you can install multiple add-ons, each must serve a distinct purpose and have a different name and source URL." }, { "slug": "PAGERDUTY_INVOKE_AUTOMATION_ACTION_BY_ID", "name": "Invoke automation action by ID", "description": "Invokes a specific automation action in PagerDuty, associating it with a particular incident. This endpoint allows you to trigger pre-defined automated tasks or workflows within the PagerDuty incident management system. It's particularly useful for executing custom actions or scripts in response to specific incidents, enhancing the incident response process. The action is identified by its unique ID, and the invocation must be linked to an existing incident through its incident ID. This endpoint should be used when you need to programmatically execute automation actions as part of your incident management workflow or integration with other systems." }, { "slug": "PAGERDUTY_LIST_ALL_WORKFLOW_INTEGRATION_CONNECTIONS", "name": "List all workflow integration connections", "description": "List all Workflow Integration Connections. Scoped OAuth requires: `workflow_integrations:connections.read`" }, { "slug": "PAGERDUTY_LIST_AUTOMATION_ACTION_DETAILS", "name": "List automation action details", "description": "This endpoint retrieves a list of automation actions configured in the PagerDuty account. Automation actions are predefined tasks or operations that can be executed automatically in response to incidents or other triggers. The endpoint allows users to view all available automation actions, which can be useful for auditing, managing, or integrating these actions into other workflows. It supports pagination for handling large sets of actions and can include related information about associated services and teams. Use this endpoint when you need to review, inventory, or programmatically access the automation capabilities within your PagerDuty environment. Note that this endpoint only provides information about existing actions and does not create, modify, or execute the actions themselves." }, { "slug": "PAGERDUTY_LIST_EXTENSION_SCHEMAS", "name": "List extension schemas", "description": "Retrieves all available extension schemas from the PagerDuty API. This endpoint allows users to fetch custom schema extensions that have been defined for their PagerDuty account. Extension schemas are used to add custom data structures or validation rules to the standard API schema, enabling more flexible and tailored data management. This tool is particularly useful when you need to understand the custom data fields or structures that have been added to your PagerDuty implementation. It does not create, modify, or delete extension schemas; it only provides a read-only view of the existing schemas." }, { "slug": "PAGERDUTY_LIST_FIELD_OPTIONS_ON_A_CUSTOM_FIELD", "name": "List field options on a custom field", "description": "Lists all field options for a custom field on an incident type. Field options represent the selectable values for multi-value or dropdown custom fields in PagerDuty. This action returns all available options that users can select when categorizing or tagging incidents with this custom field. **Prerequisites:** 1. A valid incident type ID or name (use PAGERDUTY_LIST_INCIDENT_TYPES) 2. A valid custom field ID for that incident type (use PAGERDUTY_LIST_INCIDENT_TYPE_CUSTOM_FIELDS) 3. The custom field should be of type 'multi_value' or 'multi_value_fixed' to support options **Note:** This is an Early Access endpoint requiring the `custom_fields.read` OAuth scope. The X-EARLY-ACCESS header with value 'analytics-v2' is automatically included." }, { "slug": "PAGERDUTY_LIST_INCIDENT_STATUS_UPDATE_SUBSCRIBERS", "name": "List incident status update subscribers", "description": "Retrieves a list of subscribers to status updates for a specific incident in PagerDuty. This endpoint allows you to see all users or services that are currently subscribed to receive notifications about status changes for the given incident. It's useful for understanding who is being kept informed about the incident's progress. This tool should be used when you need to review or audit the notification list for an incident, ensuring that all necessary stakeholders are included. It does not modify the subscriber list; for adding or removing subscribers, separate endpoints would be required." }, { "slug": "PAGERDUTY_LIST_INCIDENT_TYPE_CUSTOM_FIELDS", "name": "List incident type custom fields", "description": "List the custom fields for an incident type. Custom Fields (CF) are a feature which will allow customers to extend Incidents with their own custom data, to provide additional context and support features such as customized filtering, search and analytics. Custom Fields can be applied to different incident types. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. Scoped OAuth requires: `custom_fields.read`" }, { "slug": "PAGERDUTY_LIST_INCIDENT_TYPES", "name": "List incident types", "description": "List the available incident types Incident Types are a feature which will allow customers to categorize incidents, such as a security incident, a major incident, or a fraud incident. These can be filtered by enabled or disabled types. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#incidentType) Scoped OAuth requires: `incident_types.read`" }, { "slug": "PAGERDUTY_LIST_LICENSES", "name": "List licenses", "description": "Lists all licenses for the PagerDuty account, showing current usage and available allocations. This endpoint retrieves license information including: - License name and type (e.g., \"Enterprise Incident Management (Full User)\") - Current allocated users (current_value) - Available license allocations (allocations_available) - Valid user roles for each license type - Role group classification (FullUser, Stakeholder, etc.) Use this to: - Check available license allocations before creating users - Audit license usage and availability - Understand which roles are valid for each license type - Monitor license consumption across the account No parameters required - returns all licenses for the authenticated account." }, { "slug": "PAGERDUTY_LIST_SCIM_SCHEMAS", "name": "List SCIM schemas", "description": "Retrieves all SCIM schemas supported by the PagerDuty service provider. Returns a list of schema definitions including User, Group, and Enterprise User Extension schemas with their complete attribute structures, data types, and constraints. Use this to discover available SCIM schemas before creating or updating resources." }, { "slug": "PAGERDUTY_LIST_SCIM_USERS", "name": "List SCIM users", "description": "Lists users via the SCIM (System for Cross-domain Identity Management) API endpoint. Use when you need to retrieve user information in SCIM format, typically for identity provider integrations or user provisioning workflows. Supports pagination via startIndex and count parameters, and filtering by userName or externalId." }, { "slug": "PAGERDUTY_LIST_SERVICE_CUSTOM_FIELDS", "name": "List service custom fields", "description": "Lists all custom fields available for services in PagerDuty. This endpoint returns a list of custom fields that can be used to add structured metadata to services. Custom fields allow teams to categorize and organize services with additional attributes beyond the standard service properties. Use this action when you need to discover available custom fields before setting or updating custom field values on services." }, { "slug": "PAGERDUTY_LIST_SUPPORTING_SERVICE_IMPACTS", "name": "List supporting service impacts", "description": "Retrieves information about the impacts of supporting services on a specific business service in PagerDuty. This endpoint is used to understand the relationships and dependencies between a primary business service and its supporting services, along with the potential impacts these relationships may have on incident management and service reliability. It's particularly useful for assessing the cascading effects of incidents across interconnected services and for proactive risk management. The endpoint should be used when analyzing service dependencies, planning incident response strategies, or evaluating the overall resilience of your service infrastructure. Note that this endpoint focuses on impact information and may not provide real-time incident data or detailed metrics about the services themselves." }, { "slug": "PAGERDUTY_LIST_TEMPLATES", "name": "List templates", "description": "Retrieves a list of templates available in the PagerDuty system. Templates are pre-defined configurations used for creating alerts, notifications, and other automated processes within PagerDuty. This endpoint should be used when you need to view or manage the existing templates in your PagerDuty account. It provides an overview of all templates, which can be useful for auditing, updating, or selecting templates for use in incident management workflows. The endpoint does not create, modify, or delete templates; it is solely for retrieving template information." }, { "slug": "PAGERDUTY_LIST_WORKFLOW_INTEGRATION_CONNECTIONS", "name": "List workflow integration connections", "description": "List all workflow integration connections for a specific workflow integration. Workflow integration connections represent configured instances of external tools (like AWS, Slack, HTTP APIs) that can be used in incident workflows. This action retrieves all connections associated with a particular integration type. Scoped OAuth requires: `workflow_integrations:connections.read`" }, { "slug": "PAGERDUTY_LIST_WORKFLOW_INTEGRATIONS", "name": "List workflow integrations", "description": "List available Workflow Integrations. Scoped OAuth requires: `workflow_integrations.read`" }, { "slug": "PAGERDUTY_MANAGE_CACHE_VARIABLES_FOR_EVENT_SERVICE", "name": "Manage cache variables for event service", "description": "Creates a cache variable for a service event orchestration. Cache variables store temporary event data for use in orchestration rules. Requires Advanced Event Orchestration tier and Manager role. Configuration types: - recent_value: Stores latest value from event field (requires source, regex) - trigger_event_count: Counts matching events in time window (requires ttl_seconds) - external_data: Stores API-provided data (requires data_type, ttl_seconds) Use conditions to control updates. Reference in rules as cache_var.variable_name." }, { "slug": "PAGERDUTY_MERGE_SOURCE_INCIDENTS_INTO_TARGET_INCIDENT", "name": "Merge source incidents into target incident", "description": "Merges multiple source incidents into a target incident in PagerDuty's incident management system. This endpoint allows users to consolidate related or duplicate incidents into a single, primary incident for streamlined management and resolution. The operation combines the specified source incidents into the target incident identified by the URL path, marking the source incidents as resolved. This tool should be used when multiple incidents are determined to be part of the same underlying issue or when consolidating incident management efforts. It's particularly useful for reducing noise and focusing on the root cause of related issues. Note that this action is irreversible, so care should be taken to ensure that the incidents are truly related before merging." }, { "slug": "PAGERDUTY_MIGRATE_INTEGRATION_BETWEEN_ORCHESTRATIONS", "name": "Migrate integration between orchestrations", "description": "This endpoint facilitates the migration of an integration from one event orchestration to another within PagerDuty. It allows users to reassign an existing integration to a different event orchestration, maintaining the integration's configuration while updating its association. This operation is useful when restructuring event management workflows or optimizing incident routing. The endpoint should be used when there's a need to change how a specific integration interacts with PagerDuty's event processing system. It's important to note that this process only changes the association and does not modify the integration's settings or connected external services." }, { "slug": "PAGERDUTY_MODIFY_ENTITY_TAGS", "name": "Modify entity tags", "description": "Add and/or remove tags from a PagerDuty entity (user, team, or escalation policy) in a single operation. This action modifies the tags associated with a specific entity. You can: - Add tags by label (creates new tags if they don't exist) - Add tags by ID reference (links existing tags) - Remove tags by ID reference - Perform add and remove operations simultaneously Tags are useful for categorizing and organizing PagerDuty resources, enabling easier searching and filtering. Supported entity types: - users: Tag individual users - teams: Tag teams (requires Teams feature) - escalation_policies: Tag escalation policies Note: Creating new tags requires appropriate permissions." }, { "slug": "PAGERDUTY_PING_WEBHOOK_SUBSCRIPTION", "name": "Ping webhook subscription", "description": "The PingWebhookSubscription endpoint sends a test POST request to a specified webhook subscription in your PagerDuty account. This tool is used to verify that a webhook subscription is correctly configured and can receive notifications. It's particularly useful after setting up a new webhook subscription or when troubleshooting integration issues. The endpoint doesn't modify any data but simulates a real webhook delivery, allowing you to confirm that your systems can properly receive and process PagerDuty webhooks. Note that this tool only tests the delivery mechanism and doesn't validate the processing of specific event types on your end." }, { "slug": "PAGERDUTY_POST_ACCOUNT_SUBSCRIPTION_FOR_BUSINESS_SERVICE", "name": "Post account subscription for business service", "description": "This endpoint creates or updates an account subscription for a specific business service in PagerDuty. It allows users to manage subscription settings, such as notification preferences or service-level agreements, for a particular business service identified by its unique ID. Use this endpoint when you need to set up new subscription configurations or modify existing ones for a business service. The endpoint is particularly useful for automating subscription management across multiple business services or integrating subscription updates with other systems. Note that this operation may affect billing or service access, so it should be used carefully and with proper authorization." }, { "slug": "PAGERDUTY_POST_ALERT_GROUPING_SETTINGS", "name": "Post alert grouping settings", "description": "Creates a new Alert Grouping Setting in PagerDuty, defining how alerts will be automatically grouped into incidents based on specified configurations. This endpoint allows users to set up intelligent alert grouping rules, improving incident management efficiency by reducing noise and consolidating related alerts. It's particularly useful for teams looking to streamline their incident response process and minimize alert fatigue. The setting can be applied to one or multiple services, with the option to use content-based or intelligent grouping algorithms." }, { "slug": "PAGERDUTY_POST_ANALYTIC_METRICS_ON_ESCALATION_POLICIES", "name": "Post analytic metrics on escalation policies", "description": "Retrieves and aggregates analytics metrics for incidents related to escalation policies in PagerDuty. This endpoint allows for detailed filtering and customization of incident data, enabling users to analyze trends, performance, and patterns in their incident management process. It's particularly useful for generating reports, identifying areas for improvement, and understanding the effectiveness of escalation policies over time. The endpoint supports various filtering options, time zone specifications, and time-based aggregation, making it a powerful tool for operational insights and decision-making in incident management." }, { "slug": "PAGERDUTY_POST_ANALYTICS_METRICS_RESPONDER_FILTERS", "name": "Post analytics metrics responder filters", "description": "The AnalyzeResponderMetrics endpoint aggregates and analyzes responder performance metrics for PagerDuty incidents. It provides insights into response times, efficiency, and workload distribution. This tool is ideal for assessing and optimizing incident response processes, offering flexible filtering options for focused analysis. Note that it provides aggregated data, not real-time information, with a maximum analysis range of one year." }, { "slug": "PAGERDUTY_POST_CHANGE_EVENTS", "name": "Send change event to PagerDuty", "description": "Send a change event to PagerDuty to track deployments, configuration changes, or other significant system modifications. Change events do not create incidents or notifications but provide valuable context for incident correlation and analysis. Use this action to: - Log deployments and code releases - Track configuration changes - Record infrastructure updates - Document system modifications - Provide context for incident investigation Change events can be viewed in PagerDuty's change timeline and are automatically correlated with incidents to help teams understand what changed before an incident occurred. **Note:** This endpoint uses the Events API (events.pagerduty.com), not the REST API. You need an Events API v2 integration key (routing_key) from a service integration." }, { "slug": "PAGERDUTY_POST_EVENT_ORCHESTRATION_CACHE_VARIABLES", "name": "Post event orchestration cache variables", "description": "Creates a new cache variable within a PagerDuty event orchestration. This endpoint allows you to define a cache variable that can store dynamic data related to events, either based on recent values extracted from event fields or by counting trigger events within a specified time range. Cache variables are useful for maintaining state across multiple events and can be used in event routing and automation rules. The created cache variable can be configured with conditions to determine when it should be updated and can be optionally disabled. This tool should be used when setting up complex event orchestrations that require stateful processing or when implementing advanced automation workflows in PagerDuty." }, { "slug": "PAGERDUTY_POST_INCIDENT_METRICS", "name": "Post incident metrics", "description": "Retrieve analytics metrics for responders and teams including incident counts, response times, on-call hours, interruptions, escalations, and engagement statistics. Returns metrics like total incidents, mean time to acknowledge/resolve, on-call duration by level, interruptions by time period (business/off/sleep hours), and escalation/reassignment counts. All parameters are optional (defaults to yesterday's data). Maximum date range: 1 year. Analytics data updates daily (not real-time). Use for performance reports, workload analysis, trend identification, and team comparisons. Date filters use ISO8601 format (e.g., \"2026-01-01T00:00:00Z\")." }, { "slug": "PAGERDUTY_POST_INCIDENT_METRICS_WITH_FILTERS", "name": "Post incident metrics with filters", "description": "This endpoint retrieves and aggregates analytics metrics for incidents across all teams in PagerDuty. It allows users to apply various filters and parameters to analyze incident data, such as creation date range, urgency, team associations, and more. The endpoint is particularly useful for generating reports, identifying trends, and performing operational reviews across multiple teams and services. It provides flexibility in data aggregation and sorting, enabling users to customize their analysis based on specific needs and time frames. However, users should be aware of the one-year limitation on the date range when using the created_at filters." }, { "slug": "PAGERDUTY_POST_INCIDENT_NOTE_USING_ID", "name": "Post incident note using id", "description": "Adds a new note to an existing incident in PagerDuty. This endpoint allows users to append additional information, updates, or comments to a specific incident identified by its unique ID. It's particularly useful for documenting the progress of incident resolution, sharing important observations, or recording actions taken. The note content can include any text relevant to the incident management process, helping teams collaborate and maintain a clear record of the incident's timeline and handling." }, { "slug": "PAGERDUTY_POST_INCIDENTS_ANALYTICS_WITH_FILTERS", "name": "Post incidents analytics with filters", "description": "The AnalyzeRawIncidents endpoint retrieves and analyzes raw incident data from PagerDuty. It allows users to fetch detailed information about incidents with various filtering options. This endpoint is useful for generating custom reports, performing trend analysis, or investigating specific incident sets. It supports extensive filtering, pagination, and result customization, making it ideal for in-depth incident reviews and pattern analysis." }, { "slug": "PAGERDUTY_POST_INCIDENTS_METRICS_FILTERED_BY_SERVICE", "name": "Post incidents metrics filtered by service", "description": "The AnalyzeIncidentMetrics endpoint aggregates and analyzes incident data for PagerDuty services based on specified filters and parameters. It allows users to generate detailed reports and insights on incident management performance across various dimensions such as time, urgency, teams, and services. This endpoint is particularly useful for operational reviews, trend analysis, and performance monitoring of incident response processes. The tool provides flexible filtering options to focus on specific subsets of incidents and supports various time-based aggregations for comprehensive analysis. It's important to note that while the endpoint offers extensive customization, it has a maximum supported time range of one year between the start and end dates for incident creation." }, { "slug": "PAGERDUTY_POST_INCIDENT_STATUS_UPDATE", "name": "Post incident status update", "description": "Posts a status update for a specific incident in PagerDuty. This endpoint allows you to add new information or progress reports to an ongoing incident, keeping stakeholders informed about the current state of the issue. It supports both simple text updates and more detailed custom HTML email updates. Use this when you need to communicate important changes, actions taken, or any relevant information about the incident to the team or stakeholders. The endpoint is particularly useful for maintaining a clear timeline of the incident's progression and ensuring all parties have the most up-to-date information. Note that while a simple message is always required, you have the option to provide additional details through a custom HTML email by including both the 'subject' and 'html_message' fields." }, { "slug": "PAGERDUTY_POST_RESPONDER_INCIDENTS_WITH_FILTERS", "name": "Post responder incidents with filters", "description": "Retrieves a list of incidents associated with a specific responder in the PagerDuty incident management system. This endpoint allows for detailed filtering and pagination of incident data, making it ideal for analyzing a responder's workload, performance, and incident trends over time. It supports various filter criteria such as creation time range, urgency, major incident status, team and service associations, and priority levels. The tool is particularly useful for generating reports, conducting operational reviews, and optimizing incident response processes. It should be used when detailed incident information for a specific responder is needed, but not for real-time incident updates or for modifying incident data." }, { "slug": "PAGERDUTY_POST_SERVICE_AUTOMATION_ACTION", "name": "Post service automation action", "description": "This endpoint adds a service to an existing automation action in PagerDuty. It allows users to associate a specific service with an automation action, enabling the action to be applied to incidents or events related to that service. The endpoint requires the automation action's ID in the URL path and a service reference object in the request body. It should be used when configuring or updating automation actions to include additional services in their scope of operation. This endpoint is particularly useful for expanding the reach of automation actions across multiple services within an organization's PagerDuty setup." }, { "slug": "PAGERDUTY_POST_TEAM_NOTIFICATION_SUBSCRIPTION", "name": "Post team notification subscription", "description": "Creates notification subscriptions for a specific team in PagerDuty. This endpoint allows you to subscribe a team to receive notifications for one or more incidents or business services. Use this when you want to ensure a team is notified about specific critical events or the status of important business services. The endpoint requires a list of subscribable entities, each identified by a unique ID and type. It's particularly useful for setting up or updating a team's notification preferences in bulk. Note that this endpoint only creates new subscriptions and doesn't affect existing ones." }, { "slug": "PAGERDUTY_POST_TEAM_TO_RUNNER", "name": "Post team to runner", "description": "This endpoint adds a team to an Automation Action Runner in PagerDuty. It allows you to associate a specific team with a runner, enabling better organization and management of automation processes within your incident response workflow. Use this endpoint when you need to grant a team access to or responsibility for a particular Automation Action Runner. This association is crucial for maintaining proper access control and ensuring that the right teams are involved in specific automation tasks. The endpoint requires the runner's ID and the team's reference information, including its unique identifier and type." }, { "slug": "PAGERDUTY_PREVIEW_SCHEDULE_OBJECT", "name": "Preview schedule object", "description": "The preview_schedule endpoint allows you to simulate and visualize a PagerDuty schedule configuration before actually creating or updating it. This tool is essential for validating complex on-call rotations, ensuring proper coverage, and identifying potential gaps or conflicts in your schedule design. It accepts a complete schedule object, including multiple layers, users, and restrictions, and returns a preview of how the schedule would operate if implemented. This preview includes rendered schedule entries, showing exactly who would be on-call at specific times. Use this endpoint when designing new schedules, modifying existing ones, or troubleshooting scheduling issues to ensure optimal on-call coverage without affecting your live environment. The preview does not create or modify any actual schedules in your PagerDuty account." }, { "slug": "PAGERDUTY_RENDER_TEMPLATE_FOR_INCIDENT", "name": "Render template for incident", "description": "Renders a specific template for a given incident in PagerDuty. This endpoint allows you to generate a formatted report or message based on a pre-defined template and the provided incident information. It's particularly useful for creating standardized incident reports, status updates, or notifications. The rendered template can incorporate details from the incident, a status update message, and any additional external data provided. Use this endpoint when you need to generate consistent, formatted output for incident communication or documentation purposes. Note that the template itself must be created and configured separately; this endpoint only handles the rendering process based on the template identified by the URL parameter {id}." }, { "slug": "PAGERDUTY_RETRIEVE_ABILITIES_LIST", "name": "Retrieve abilities list", "description": "Retrieves a list of abilities or capabilities available in the PagerDuty system. This endpoint allows users to query and understand the features and functionalities they can access or perform within PagerDuty. It's particularly useful for determining the scope of actions available to the authenticated user or for checking the overall feature set of the PagerDuty instance. The endpoint should be used when you need to discover or verify the available abilities, such as during initial setup, permission audits, or when planning integrations. It does not modify any data and is safe to call frequently." }, { "slug": "PAGERDUTY_RETRIEVE_ABILITY_BY_ID", "name": "Test ability availability by ID", "description": "Tests whether a specific ability (feature capability) is available to your PagerDuty account using its unique identifier. This endpoint checks if a particular feature, such as 'urgencies', 'manage_schedules', or 'event_rules', is available based on your account's pricing plan and configuration. A successful response (HTTP 204) indicates the ability exists and is available; a 404 error indicates the ability is not available or doesn't exist. This is useful for programmatically checking feature availability before attempting to use specific functionality. Use the list abilities endpoint to discover available ability IDs. The endpoint is read-only and does not modify any abilities." }, { "slug": "PAGERDUTY_RETRIEVE_ACTION_SERVICES_BY_ID", "name": "Retrieve action services by id", "description": "Retrieves a list of services associated with a specific automation action in PagerDuty. This endpoint allows users to fetch all services that are linked to a particular automation action, providing insights into which components or systems are affected by the automated process. It's useful for auditing automation configurations, understanding the scope of automated actions, and managing incident response workflows. The endpoint should be used when you need to review or verify the services connected to an automation action, but it won't provide details about the action itself or modify any existing configurations." }, { "slug": "PAGERDUTY_RETRIEVE_ACTIVE_SERVICE_EVENT_BY_ID", "name": "Check if service event orchestration is active", "description": "Check if event orchestration is active for a specific PagerDuty service. This endpoint returns a boolean flag indicating whether Service Event Orchestration is currently active for the specified service. When active, events sent to this service are processed through the service's event orchestration rules before creating incidents. Use this to quickly determine if a service has event orchestration enabled or disabled. This is useful for validating service configuration or troubleshooting event processing behavior. Note: This endpoint only returns the active status (true/false), not the actual orchestration rules or configuration. To view or modify the orchestration rules, use the service orchestration endpoints instead." }, { "slug": "PAGERDUTY_RETRIEVE_ADDON_BY_ID", "name": "Retrieve addon by id", "description": "Retrieves detailed information about a specific addon installed on a PagerDuty account. This endpoint allows users to fetch the current configuration, status, and other relevant details of an addon without modifying it. It's particularly useful for auditing installed addons, troubleshooting integration issues, or gathering information before making changes to an addon's setup. The endpoint returns a comprehensive view of the addon, which may include its type, version, configuration parameters, and current operational status. Use this endpoint when you need to inspect or verify the details of a particular addon in your PagerDuty environment." }, { "slug": "PAGERDUTY_RETRIEVE_ALERT_GROUPING_SETTINGS_BY_ID", "name": "Retrieve alert grouping settings by id", "description": "Retrieves the alert grouping settings for a specific configuration identified by its unique ID in PagerDuty. This endpoint allows users to access detailed information about how alerts are grouped for a particular service or team. It's useful for reviewing current grouping rules, understanding the logic behind incident correlation, and auditing alert management configurations. The endpoint should be used when you need to examine or verify the existing alert grouping settings, which can be crucial for optimizing incident response and reducing alert fatigue. It does not modify any settings and is intended for read-only operations." }, { "slug": "PAGERDUTY_RETRIEVE_AUTOMATION_ACTION_INVOCATION_BY_ID", "name": "Retrieve automation action invocation by id", "description": "Retrieves detailed information about a specific automation action invocation in PagerDuty. This endpoint allows you to fetch the current state, results, and metadata of a previously executed automation action. It's particularly useful for tracking the progress of long-running automations, auditing past actions, or troubleshooting failed invocations. The endpoint should be used when you need to review the outcome of a specific automation run or gather data for reporting purposes. Note that this endpoint only provides information about the invocation itself and does not allow modification of the automation action or re-running of the invocation." }, { "slug": "PAGERDUTY_RETRIEVE_AUTOMATION_ACTION_INVOCATIONS", "name": "Retrieve automation action invocations", "description": "Retrieves a list of automation action invocations from the PagerDuty incident management platform. This endpoint allows users to query and review the history of automated actions that have been executed within their PagerDuty environment. It can be used to audit automation processes, track the frequency and timing of automated responses, and analyze the effectiveness of incident management workflows. The endpoint is particularly useful for administrators and DevOps teams who need to monitor and optimize their automated incident response strategies. Note that while this endpoint provides historical data, it does not trigger new automated actions or modify existing ones." }, { "slug": "PAGERDUTY_RETRIEVE_AUTOMATION_ACTION_RUNNER_TEAMS", "name": "Retrieve automation action runner teams", "description": "Retrieves detailed information about a specific team association with an Automation Actions runner in PagerDuty. This endpoint confirms whether a particular team has access to a given runner and returns the team's details. Use this action when you need to: - Verify that a specific team is associated with a runner - Get team details (ID, name summary, URLs) for a known team-runner pair - Confirm access permissions before performing automation actions - Audit team-runner relationships for security or compliance purposes The endpoint returns a team object containing: id, type, summary, self (API URL), and html_url. This is a read-only operation that does not modify any associations. Note: To get all teams associated with a runner, use the 'fetch_runner_teams_integration' action instead. To create a new team-runner association, use 'post_team_to_runner'." }, { "slug": "PAGERDUTY_RETRIEVE_AUTOMATION_SERVICE_ACTION", "name": "Retrieve automation service action", "description": "Retrieves detailed information about the association between a specific automation action and a service in PagerDuty. This endpoint returns both the automation action details (including ID, name, type, and configuration) and the service details (including ID, name, type, and status) for the specified association. Use this endpoint when you need to: - Verify that an automation action is correctly associated with a service - Retrieve configuration details for an existing action-service association - Audit which automation actions are linked to specific services - Understand the automation setup for incident management on a particular service Note: This endpoint requires both an automation action ID and a service ID. The association must already exist - use the associate endpoint to create new associations. Automation Actions is a premium feature and requires appropriate account permissions." }, { "slug": "PAGERDUTY_RETRIEVE_BUSINESS_SERVICE_BY_ID", "name": "Retrieve business service by id", "description": "Retrieves detailed information about a specific business service by its ID. Returns the business service's name, description, point of contact, associated team, and other metadata. Use this when you need to view or verify the details of a single business service. Note: This endpoint returns configuration data only - it does not include real-time incident data, performance metrics, or service dependencies." }, { "slug": "PAGERDUTY_RETRIEVE_BUSINESS_SERVICE_DEPENDENCIES", "name": "Retrieve business service dependencies", "description": "Retrieves the service dependencies for a specific business service in PagerDuty. This endpoint allows you to fetch a list of services that are dependent on or related to the specified business service, helping to understand the interconnections within your incident management structure. Use this when you need to analyze the impact of incidents on critical business functions or when planning incident response strategies. The endpoint provides a snapshot of the current dependency structure and does not include historical data or future planned changes to service relationships." }, { "slug": "PAGERDUTY_RETRIEVE_BUSINESS_SERVICE_IMPACTORS", "name": "Retrieve business service impactors", "description": "Retrieves impactors (typically incidents) currently affecting business services. Use this to monitor which incidents are impacting services, identify cascading failures, and prioritize incident response based on business impact. **Parameters:** - ids (optional): Filter by specific business service IDs. Accepts a single ID (string) or multiple IDs (list). Omit to get impactors for all services. **Returns:** List of impactors with IDs and types, plus pagination info. Currently limited to active incidents only - no historical data." }, { "slug": "PAGERDUTY_RETRIEVE_BUSINESS_SERVICE_IMPACTS", "name": "Retrieve business service impacts", "description": "Retrieves a list of business services impacted by a specific PagerDuty incident. This helps assess the broader business impact and identify which business stakeholders need to be notified during incident response. Use this action to: - Understand which business services are affected by an incident - Prioritize incident response based on critical business service impacts - Identify stakeholders who need to be notified - Generate impact reports for incident post-mortems Returns a list of impacted business services with their details (ID, name, links), or an empty array if the incident doesn't impact any business services. Business services must be configured in PagerDuty with qualifying incident priority levels to appear in results. Works with both triggered and resolved incidents." }, { "slug": "PAGERDUTY_RETRIEVE_BUSINESS_SERVICES", "name": "Retrieve business services", "description": "Retrieve a list of business services from your PagerDuty account. Business services represent the high-level business capabilities that your technical services support. They provide a business-oriented view of your infrastructure, helping you understand which business functions are affected during incidents. This endpoint supports pagination through the limit and offset parameters, allowing you to efficiently retrieve large lists of business services. Use the total parameter to get the exact count of business services (note: this may impact response time). Common use cases: - Getting an overview of all business services in your organization - Building dashboards that show business service status - Auditing and reporting on business service configurations - Integrating business service data with external systems" }, { "slug": "PAGERDUTY_RETRIEVE_CHANGE_EVENT_BY_ID", "name": "Retrieve change event by id", "description": "Retrieves detailed information about a specific change event by its unique ID. Change events represent deployments, configuration changes, infrastructure updates, or other system modifications that are tracked for incident correlation and analysis. Unlike incidents or alerts, change events are informational and do not trigger notifications. **Use Cases:** - View details of a specific deployment or change - Investigate changes that occurred before an incident - Audit change management processes - Track the timeline and impact of system modifications **Requirements:** - Requires the PagerDuty AIOps add-on - Requires `change_events.read` scope/permission **Note:** Change events are created via the Events API v2 `/v2/change/enqueue` endpoint or automatically from integrated tools like CI/CD pipelines. This endpoint retrieves the details of an already-created change event." }, { "slug": "PAGERDUTY_RETRIEVE_CHANGE_EVENT_INFORMATION", "name": "Retrieve change event information", "description": "Retrieves change events from PagerDuty. Change events track deployments, configuration changes, and infrastructure updates in your external systems. They provide context for incident correlation by showing what changed before an incident occurred. Use this to review deployments, track infrastructure changes, correlate changes with incidents, or investigate what changed before problems started. Change events appear in PagerDuty's timeline and are automatically correlated with incidents. Filter by team_ids, integration_ids, or time range (since/until). Use limit/offset for pagination. Note: Requires PagerDuty AIOps add-on. Events older than 90 days are not shown." }, { "slug": "PAGERDUTY_RETRIEVE_CURRENT_USER_INFO", "name": "Retrieve current user info", "description": "Retrieves the profile information of the currently authenticated user in the PagerDuty system. This endpoint provides access to personal details, settings, and account information associated with the user making the API request. It's particularly useful for applications that need to display or utilize user-specific data without requiring additional input. The endpoint should be used when an application needs to fetch up-to-date information about the current user, such as their name, email, role, or other account-related details. Note that this endpoint does not provide information about other users in the organization, nor does it allow for modifications to the user profile." }, { "slug": "PAGERDUTY_RETRIEVE_ENTITY_TAGS_BY_ID", "name": "Retrieve entity tags by id", "description": "Retrieves the tags associated with a specific entity in the PagerDuty system. This endpoint allows you to fetch all tags that have been assigned to a particular resource. Supported entity types are users, teams, and escalation_policies. Tags are useful for categorization, filtering, and organizing entities within PagerDuty. The endpoint requires specifying both the entity type and its unique identifier to correctly locate the resource. This operation is read-only and does not modify any data. Supports pagination via limit and offset parameters." }, { "slug": "PAGERDUTY_RETRIEVE_EVENT_ORCHESTRATION_ROUTER_BY_ID", "name": "Retrieve event orchestration router by id", "description": "Retrieves the router configuration for a specific event orchestration in PagerDuty. This endpoint allows you to fetch detailed information about how incidents and events are routed within a particular event orchestration setup. Use this endpoint when you need to understand or audit the current routing logic for an event orchestration, such as determining which teams or escalation policies are assigned to handle specific types of incidents. The returned data will include routing rules, conditions, and associated actions, but will not modify any existing configurations. This endpoint is particularly useful for incident response planning and optimization of event management workflows." }, { "slug": "PAGERDUTY_RETRIEVE_EXTENSION_BY_ID", "name": "Retrieve extension by id", "description": "Retrieves detailed information about a specific extension in PagerDuty. This endpoint allows users to fetch the configuration and status of an individual extension by providing its unique identifier. It is particularly useful when you need to review or verify the settings of a specific extension, such as its type, configuration parameters, or associated service. This endpoint should be used when detailed information about a known extension is required, but it cannot be used to list all extensions or modify extension settings." }, { "slug": "PAGERDUTY_RETRIEVE_EXTENSION_LIST", "name": "Retrieve extension list", "description": "Retrieves a paginated list of extensions associated with the authenticated PagerDuty account. Extensions are integrations that enhance PagerDuty's functionality, such as webhooks, custom notification methods, or third-party service connections. This endpoint supports filtering by extension name (query parameter), extension schema ID (vendor type), and extension object ID (the resource the extension is attached to, such as a service). Use this to audit active extensions, discover webhooks configured for specific services, or find all extensions of a particular type. The include parameter can request additional details like extension_objects or extension_schemas to be embedded in the response for richer context without additional API calls." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_BY_INCIDENT_ID", "name": "Retrieve incident by incident id", "description": "Retrieves detailed information about a specific incident in PagerDuty using its unique identifier. This endpoint allows users to access comprehensive data about an individual incident, including its current status, assigned responders, and related metadata. It is particularly useful for tracking the progress of an ongoing incident, reviewing historical incident data, or integrating incident details into external systems or reports. The endpoint should be used when specific incident information is needed, rather than for retrieving bulk or summarized incident data. Note that this endpoint provides a snapshot of the incident at the time of the request and may not reflect real-time updates without subsequent API calls." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELDS", "name": "Retrieve incident custom fields", "description": "Retrieves a list of custom fields associated with incidents in PagerDuty. Custom fields are additional data points that can be added to incidents to provide more detailed information tailored to specific organizational needs. This endpoint allows you to fetch all defined custom fields, which can be useful for understanding the structure of incident data, preparing for incident creation or updates, or auditing the current custom field configuration. The response will include details such as field names, types, and any predefined options for each custom field. Use this endpoint when you need to review or work with the custom field definitions in your PagerDuty account, such as when integrating with other systems or preparing reports that involve custom incident data." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELD_VALUES", "name": "Retrieve incident custom field values", "description": "Retrieves the custom field values associated with a specific incident in PagerDuty. This endpoint allows users to access additional metadata that has been added to an incident, providing more context and enabling better incident management. It should be used when detailed information about an incident's custom fields is needed, such as for reporting, analysis, or integration with other systems. The endpoint returns only the custom field values and does not modify the incident or its fields." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_FIELD_OPTIONS", "name": "Retrieve incident field options", "description": "Retrieves the available field options for a specific custom incident field in PagerDuty. This action returns the predefined set of values that can be assigned to a multi-value or dropdown custom field. Field options are useful for: - Populating dropdown menus in incident forms - Validating user input against allowed values - Understanding possible values for categorizing incidents - Maintaining consistency in incident metadata **Prerequisites:** 1. A valid custom incident field ID (use PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELDS) 2. The field should be of type 'multi_value' or 'multi_value_fixed' to have options **Note:** This endpoint requires the `incident_custom_fields:read` OAuth scope. Only fields with predefined options will return results; free-text fields have no options." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_WORKFLOW_BY_ID", "name": "Retrieve incident workflow by id", "description": "Retrieves detailed information about a specific incident workflow in PagerDuty. This endpoint allows users to fetch the configuration, steps, and other relevant details of an incident workflow based on its unique identifier. It is particularly useful when you need to review or audit the structure of an existing workflow, or when you want to display the workflow details in a user interface. The endpoint returns comprehensive information about the workflow, which may include its name, description, steps, triggers, and associated incident types. It should be used when specific information about a known incident workflow is required, rather than for listing or searching workflows." }, { "slug": "PAGERDUTY_RETRIEVE_INCIDENT_WORKFLOW_TRIGGERS", "name": "Retrieve incident workflow triggers", "description": "Retrieves a list of triggers associated with incident workflows in PagerDuty. This endpoint allows you to fetch information about the conditions or events that initiate automated incident response processes. Use this endpoint when you need to review, audit, or manage the triggers configured for your incident workflows. It provides valuable insights into what events can start an incident workflow, helping in the optimization of incident management strategies. The endpoint returns details about each trigger, which may include its configuration, associated workflow, and activation criteria. Note that this endpoint only provides information about existing triggers and does not allow for the creation or modification of triggers." }, { "slug": "PAGERDUTY_RETRIEVE_INTEGRATION_BY_SERVICE_ID", "name": "Retrieve integration by service id", "description": "Retrieves detailed information about a specific integration associated with a particular service in PagerDuty. This endpoint allows you to fetch the configuration and status of an integration, which can be crucial for understanding how external systems or tools are connected to your PagerDuty service. Use this when you need to review or troubleshoot a specific integration's settings within the context of a service. It's particularly useful for auditing your integrations or preparing for updates to your incident management workflow. Note that this endpoint only provides read access to integration details and cannot be used to modify the integration." }, { "slug": "PAGERDUTY_RETRIEVE_LICENSE_ALLOCATIONS", "name": "Retrieve license allocations", "description": "Retrieves the current license allocations for the PagerDuty account, showing which users have been allocated which licenses. Use this endpoint to audit license usage, track license distribution, or manage license allocation across your organization. The response includes: - A list of license allocations with user references, license details (name, valid roles, role group), and allocation timestamps - Pagination information (limit, offset, total count, and whether more results exist) This is a read-only endpoint - it does not modify license allocations. Use the optional limit and offset parameters to paginate through results for accounts with many license allocations." }, { "slug": "PAGERDUTY_RETRIEVE_LIST_OF_SERVICES", "name": "Retrieve list of services", "description": "Retrieves a list of services configured in the PagerDuty account. This endpoint allows you to fetch details about various services set up for incident management and alerting. It's particularly useful for getting an overview of all services, their configurations, and associated teams or escalation policies. The endpoint supports filtering, sorting, and pagination to manage large sets of services efficiently. Use this when you need to audit existing services, prepare for bulk updates, or integrate service information into other systems. Note that the response may not include full details of each service, and separate API calls might be necessary to fetch comprehensive information for individual services." }, { "slug": "PAGERDUTY_RETRIEVE_LOG_ENTRY_BY_ID", "name": "Retrieve log entry by id", "description": "Retrieves detailed information about a specific log entry in the PagerDuty system. This endpoint is used to access the complete record of an event or action that occurred within PagerDuty, such as incident updates, user actions, or system changes. It's particularly useful for auditing purposes, investigating specific actions taken during incident management, or gathering detailed information about system activities. The endpoint returns a single log entry based on the provided ID, allowing for precise tracking and analysis of individual events within the incident management lifecycle. Note that this endpoint is not designed for real-time monitoring or bulk log retrieval; it's intended for accessing specific, historical log entries when detailed information about a particular event is required." }, { "slug": "PAGERDUTY_RETRIEVE_MAINTENANCE_WINDOWS", "name": "Retrieve maintenance windows", "description": "Retrieves a list of maintenance windows from the PagerDuty incident management platform. Maintenance windows are scheduled periods during which alerts and notifications for specified services are suppressed to allow for system maintenance or updates without triggering unnecessary incidents. This endpoint should be used to get an overview of all maintenance windows, their schedules, and affected services. It supports filtering by team, service, and search query, as well as pagination for handling large result sets. The endpoint is particularly useful for reviewing upcoming maintenance schedules, auditing past maintenance windows, or integrating maintenance information into external systems or dashboards." }, { "slug": "PAGERDUTY_RETRIEVE_NOTES_FOR_INCIDENT", "name": "Retrieve notes for incident", "description": "Retrieves all notes associated with a specific incident in PagerDuty. This endpoint allows users to access the complete history of comments, updates, and additional information added to an incident throughout its lifecycle. It is particularly useful for reviewing the incident's progress, understanding the actions taken, and gathering context for post-incident analysis. The endpoint should be used when detailed information about an incident's communication trail is needed, such as during incident reviews or when compiling reports. It does not provide real-time updates and may not include the most recent notes if called immediately after a new note is added due to potential API caching." }, { "slug": "PAGERDUTY_RETRIEVE_NOTIFICATIONS", "name": "Retrieve notifications", "description": "Retrieves a list of notifications sent to users in PagerDuty within a specified date range. This endpoint returns notifications that were delivered via email, SMS, phone, or push notifications for incidents, alerts, and other PagerDuty events. Use this to: - Track which users were notified about specific incidents - Audit notification delivery history - Monitor notification patterns and volume - Verify that critical alerts were properly communicated to on-call responders The endpoint requires a date range (must be less than 3 months) and supports filtering by notification type, pagination, and timezone specification. Note that there may be a slight delay between when a notification is sent and when it appears in the API results." }, { "slug": "PAGERDUTY_RETRIEVE_ONCALL_HANDOFF_NOTIFICATION_RULE", "name": "Retrieve oncall handoff notification rule", "description": "Retrieves detailed information about a specific on-call handoff notification rule for a given user in PagerDuty. This endpoint is crucial for managing and reviewing the notification settings that govern how users are alerted during on-call responsibility transitions. It provides access to the configuration of rules that determine when and how a user is notified about upcoming on-call shifts or handoffs. This tool should be used when there's a need to inspect or audit the notification preferences for on-call transitions of a particular user. It's particularly useful for team leads or administrators who need to ensure smooth handoffs between team members during critical incident management periods." }, { "slug": "PAGERDUTY_RETRIEVE_ONCALL_HANDOFF_NOTIFICATION_RULES", "name": "Retrieve oncall handoff notification rules", "description": "Retrieves the on-call handoff notification rules for a specific user in PagerDuty. This endpoint allows you to fetch the configured rules that determine how and when a user is notified about on-call schedule transitions. It's particularly useful for understanding and auditing a user's notification preferences during shift changes or when responsibilities are transferred between team members. The retrieved rules may include settings for different notification methods (e.g., email, SMS, push notifications) and timing preferences relative to the handoff. This endpoint should be used when you need to review or manage a user's on-call handoff communication settings, but it does not allow for modification of these rules." }, { "slug": "PAGERDUTY_RETRIEVE_ONCALL_LIST", "name": "Retrieve oncall list", "description": "Retrieves the current on-call information for your PagerDuty account. This endpoint provides a comprehensive view of who is currently on-call across various schedules and escalation policies. It's particularly useful for getting an overview of your organization's current on-call status, identifying who is responsible for incident response at any given time, and planning team availability. The endpoint supports filtering by users, escalation policies, and schedules, making it versatile for different querying needs. It also allows for pagination and including additional details like contact methods and schedule information. This tool should be used when you need to quickly assess the current on-call situation or gather data for on-call analytics. Note that while it provides current and near-future on-call information, it may not be suitable for long-term scheduling or historical analysis beyond a 3-month window." }, { "slug": "PAGERDUTY_RETRIEVE_PAST_INCIDENTS", "name": "Retrieve past incidents", "description": "Retrieves a list of past similar incidents for a specific incident using machine learning. This endpoint uses PagerDuty's AIOps-powered Past Incidents feature to find historical incidents from the same service that are similar to the current incident. The similarity is determined by analyzing incident title semantics, responders, duration, and timing. **Requirements:** - Requires PagerDuty AIOps add-on subscription - The service must have AIOps enabled in its configuration **Use Cases:** - Identify recurring problems and patterns - Find similar historical incidents for context during incident response - Analyze incident patterns for root cause analysis - Learn from past incident resolutions **Note:** This endpoint returns ML-generated similar past incidents, not all past incidents. For retrieving all incidents, use the 'Fetch incident list' action instead." }, { "slug": "PAGERDUTY_RETRIEVE_POSTMORTEM_BY_ID", "name": "Retrieve postmortem by id", "description": "Retrieves the postmortem analysis for a specific post on a PagerDuty status page. This endpoint allows users to access detailed information about an incident after it has been resolved, including root cause analysis, timeline of events, and lessons learned. It should be used when detailed information about the resolution of a specific incident is needed, particularly for review, documentation, or improvement purposes. The endpoint is valuable for teams conducting thorough post-incident reviews or for maintaining a knowledge base of past incidents and their resolutions. Note that this endpoint only provides postmortem information and does not allow for modifications to the postmortem content." }, { "slug": "PAGERDUTY_RETRIEVE_RESPONSE_PLAY_BY_ID", "name": "Retrieve response play by id", "description": "**DEPRECATED**: This endpoint has been deprecated and removed. Response Plays have been replaced by Incident Workflows. When calling this endpoint, the API returns HTTP 301 (Moved Permanently) with the error message: \"Incident Workflows are enabled on this account.\" **Migration Path**: Use Incident Workflows API instead: - List Incident Workflows: GET /incident_workflows - Get Incident Workflow: GET /incident_workflows/{id} **Original Functionality**: This endpoint previously retrieved detailed information about a specific response play in the PagerDuty incident management system, including configuration and actions for automating incident response processes." }, { "slug": "PAGERDUTY_RETRIEVE_RULE_BY_SERVICE_ID", "name": "Retrieve rule by service id", "description": "Retrieves a specific service event rule by ID from a PagerDuty service. Service Event Rules configure how incoming events are processed, including setting severity and priority based on conditions. **Important:** This accesses the legacy Service Event Rules system (EOL Jan 31, 2025). The GET API remains available for reading existing rules, but new rule creation is disabled. For new implementations, use Event Orchestration (PAGERDUTY_GET_THE_SERVICE_ORCHESTRATION_FOR_A_SERVICE). **Use Cases:** Audit existing rules, retrieve rule details before migrating to Event Orchestration, review historical settings, troubleshoot legacy workflows. **Note:** This retrieves a single rule. Use PAGERDUTY_RETRIEVE_RULES_FOR_SERVICE_ID to list all rules for a service." }, { "slug": "PAGERDUTY_RETRIEVE_RULESET_BY_ID", "name": "Retrieve ruleset by id", "description": "Retrieves detailed information about a specific ruleset in PagerDuty using its unique identifier. This endpoint allows you to fetch the complete configuration and settings of a single ruleset, which is essential for understanding how incident responses are automated and managed. Use this when you need to review, audit, or troubleshoot a particular ruleset's configuration. The response will include all relevant details such as the ruleset's name, type, routing keys, and associated rules. It's particularly useful when you need to examine the exact setup of a ruleset without making any changes. Note that this endpoint only provides read access and cannot be used to modify the ruleset." }, { "slug": "PAGERDUTY_RETRIEVE_RULESET_LIST", "name": "Retrieve ruleset list", "description": "Retrieves a list of rulesets from the PagerDuty system. Rulesets are collections of event rules that define how incidents are managed and alerts are configured. This endpoint allows you to view all available rulesets, which is crucial for understanding your incident management setup and making informed decisions about alert routing and event handling. Use this endpoint when you need to audit your ruleset configurations, prepare for modifications to your incident management workflow, or simply need an overview of your current ruleset structure. The response will include details about each ruleset, such as its name, ID, and potentially its associated rules, depending on the API version and configuration. This endpoint supports pagination to handle large numbers of rulesets efficiently." }, { "slug": "PAGERDUTY_RETRIEVE_RULES_FOR_SERVICE_ID", "name": "Retrieve rules for service id", "description": "Retrieves all rules associated with a specific PagerDuty service. This endpoint allows users to fetch the set of rules that define when and how incidents are triggered for a particular service. It's essential for understanding the current automation and alert routing setup for a given service. Use this endpoint when you need to audit, review, or programmatically access the rule configurations for a service. The endpoint returns rule details but does not provide information about ongoing incidents or service status. It's particularly useful for integrations that need to sync or analyze rule configurations across multiple services or external systems." }, { "slug": "PAGERDUTY_RETRIEVE_RULES_FROM_RULESET_BY_ID", "name": "Retrieve rules from ruleset by id", "description": "Retrieves a list of event rules associated with a specific ruleset in PagerDuty. **Note**: Rulesets reached end-of-life on January 31, 2025 and are no longer visible in the PagerDuty web app. However, read-only API access is still available for existing rulesets. New rulesets cannot be created. PagerDuty recommends migrating to Event Orchestration for ongoing event routing configuration. This endpoint returns information about each rule in a ruleset, including: - Rule conditions that determine when the rule applies - Actions to execute when conditions are met - Rule ordering/position - Active/disabled status **Use Cases**: - Audit existing event routing configuration - Document legacy ruleset behavior before migration - Troubleshoot event routing issues with existing rulesets The response supports pagination for rulesets with many rules." }, { "slug": "PAGERDUTY_RETRIEVE_SCHEDULE_AUDIT_RECORDS_BY_ID", "name": "Retrieve schedule audit records by id", "description": "Retrieves the audit records for a specific PagerDuty schedule. This endpoint allows you to access a comprehensive log of all changes made to the specified schedule, including modifications to on-call rotations, time periods, and associated team members. It's particularly useful for compliance purposes, tracking historical changes, and understanding how the schedule has evolved over time. The returned data typically includes details such as the timestamp of each change, the user who made the modification, and the specific alterations made to the schedule." }, { "slug": "PAGERDUTY_RETRIEVE_SCHEDULE_BY_ID", "name": "Retrieve schedule by id", "description": "Retrieves detailed information about a specific schedule in PagerDuty using its unique identifier. This endpoint is essential for viewing the configuration of an existing on-call schedule, including its name, time periods, rotation layers, and associated users or teams. Use this when you need to inspect a schedule's current setup, verify on-call assignments, or gather data for schedule management tasks. The endpoint provides a comprehensive view of a single schedule but does not allow modifications; for updates, a separate PUT request would be required." }, { "slug": "PAGERDUTY_RETRIEVE_SCHEDULE_OVERRIDE_BY_ID", "name": "Retrieve schedule override by id", "description": "Lists all schedule overrides for a specific schedule within a date range. Schedule overrides are temporary modifications to the regular on-call rotation, allowing you to assign different users for specific time periods without changing the base schedule. Use this action to: - View all temporary schedule changes within a specific time period - Audit who was or will be on-call during override periods - Verify that schedule modifications have been correctly applied - Plan future on-call coverage by checking existing overrides The action returns a list of overrides, each containing the override ID, start/end times, and the user assigned during that period. You can filter results using optional parameters: 'editable' returns only future overrides that can be modified, and 'overflow' controls whether overrides extending beyond the date range are truncated or fully included. Note: This is a read-only operation - it does not create, modify, or delete overrides." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_AUDIT_RECORDS_BY_ID", "name": "Retrieve service audit records by id", "description": "Retrieves the audit records for a specific PagerDuty service. This endpoint allows you to fetch a historical log of all configuration changes made to the service, providing transparency and accountability in incident management processes. Use this endpoint when you need to review modifications, track who made changes, or investigate the evolution of a service's configuration over time. The audit records are typically sorted by execution time from newest to oldest, offering a chronological view of alterations. While this endpoint is valuable for compliance and debugging purposes, it does not provide real-time incident data or current service configurations." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_BY_ID", "name": "Retrieve service by id", "description": "Retrieves detailed information about a specific PagerDuty service using its unique identifier. This endpoint allows users to access configuration details, integration settings, and other relevant information for a particular service within their PagerDuty account. It's essential for managing and monitoring the status of individual services, which are core components in PagerDuty's incident management system. Use this endpoint when you need to inspect or verify the configuration of a specific service, such as before making updates or troubleshooting issues related to that service. The endpoint provides a comprehensive view of the service but does not allow modifications; for updates, a separate PUT or PATCH endpoint would be required." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_CHANGE_EVENTS_BY_ID", "name": "Retrieve service change events by id", "description": "Retrieves change events associated with a specific PagerDuty service. This endpoint allows you to fetch informational updates about recent changes such as code deploys, system configuration modifications, and other significant alterations related to the specified service. It's particularly useful for tracking and auditing changes that might impact service performance or reliability. The endpoint should be used when you need to review the history of changes for a service, investigate potential causes of incidents, or maintain a log of service modifications for compliance purposes. Note that this endpoint focuses solely on change events and does not provide real-time incident data or service configuration details." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_IMPACTS_FROM_STATUS_DASHBOARDS", "name": "Retrieve service impacts from status dashboards", "description": "Retrieves the service impacts associated with a specific status dashboard in PagerDuty. This endpoint allows users to fetch detailed information about how incidents are affecting various services within the context of a particular status dashboard. It should be used when there's a need to assess the current operational status and impact of incidents on services for a given dashboard. The endpoint provides real-time insights into service disruptions, helping teams quickly identify and prioritize issues. Note that this endpoint only returns data for a single status dashboard at a time and does not provide historical impact data." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_STATUS_BY_ID", "name": "Retrieve service status by id", "description": "Retrieves a list of services associated with a specific status page in PagerDuty. This endpoint fetches all services that are being monitored and displayed on a particular status page. Status pages provide real-time visibility into service health and operational status. The response includes service details such as names, current statuses, and relevant metadata. Use this action when you need to: - Review which services are shown on a specific status page - Monitor the operational status of services on a status page - Integrate status page service information with external systems - Audit service visibility configurations Note: You must have access to the specified status page. Use the PAGERDUTY_FETCH_STATUS_PAGES action to get available status page IDs." }, { "slug": "PAGERDUTY_RETRIEVE_SERVICE_STATUS_PAGE", "name": "Retrieve service status page", "description": "Retrieves detailed information about a specific service associated with a particular status page in PagerDuty. This endpoint is used to fetch the current status, configuration, and other relevant details of a service displayed on a status page. It's particularly useful for monitoring the health and state of individual components within a larger system. The endpoint should be used when you need up-to-date information about a specific service's status or when integrating PagerDuty's status information into other monitoring or reporting tools. Note that this endpoint only provides information for services that are configured to be displayed on the specified status page." }, { "slug": "PAGERDUTY_RETRIEVE_STANDARDS_LIST", "name": "Retrieve standards list", "description": "Retrieves the current set of Service Standards defined in the PagerDuty account. Service Standards are configurable criteria that help organizations define, share, and track service configuration best practices. These standards ensure consistency across services and improve incident response predictability. Standards can check for various service attributes such as having descriptions, proper escalation policies, integrations, dependencies, and more. This endpoint returns standards that can be filtered by active status and resource type. Each standard includes details about what it checks, why it's important, and which resources are included or excluded from its scope. Administrators and team leads use this to review and audit service configuration standards across their organization. Note: This endpoint is read-only and does not allow modification of standards." }, { "slug": "PAGERDUTY_RETRIEVE_STANDARDS_SCORES", "name": "Retrieve standards scores by resource type and id", "description": "Retrieves the standards scores for a specific technical service in PagerDuty. Returns a detailed evaluation showing which PagerDuty best practices and standards the service meets, including whether it has proper descriptions, escalation policies, integrations, and service dependencies. Each standard includes a pass/fail status and explanation. Use this to assess service health, identify configuration gaps, and ensure services follow organizational best practices. The response includes a score summary (e.g., \"passing 4 out of 9 standards\") and detailed results for each evaluated standard." }, { "slug": "PAGERDUTY_RETRIEVE_STANDARDS_SCORES_BY_RESOURCE_TYPE", "name": "Retrieve standards scores by resourcetype", "description": "Retrieves the standards scores for a specified resource type in PagerDuty. This endpoint allows users to access performance metrics and evaluations based on predefined standards for different components of their incident management system. It's useful for assessing the effectiveness of various resources against established benchmarks, helping teams identify areas for improvement and maintain high-quality incident response processes. The endpoint should be used when seeking quantitative insights into the performance of specific PagerDuty resource types against industry or internal standards." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_DASHBOARD_BY_SLUG", "name": "Retrieve status dashboard by slug", "description": "Retrieves detailed information about a specific PagerDuty status dashboard using its URL slug. This endpoint allows users to fetch the current state, components, and other relevant data associated with a particular status dashboard. It's useful for integrating PagerDuty's status information into external monitoring systems or custom dashboards. The endpoint should be used when you need to programmatically access up-to-date information about a known status dashboard. Note that this endpoint only provides information for existing dashboards and does not create or modify dashboard data." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_DASHBOARDS_INFORMATION", "name": "Retrieve status dashboards information", "description": "Retrieves a list of status dashboards and their associated information from the PagerDuty system. This endpoint provides a comprehensive overview of the current operational status, performance metrics, and health indicators across various systems or services monitored by PagerDuty. It's particularly useful for obtaining a high-level view of system status without diving into specific incidents or alerts. The endpoint should be used when you need to quickly assess the overall health of your monitored systems, identify any ongoing issues or incidents, and get a snapshot of key performance indicators. It's ideal for regular system checks, creating status pages, or integrating system health information into other monitoring tools. While this endpoint offers a broad view of system status, it may not provide detailed information about specific incidents or historical data. For in-depth analysis of particular issues or long-term trends, you may need to use other specialized endpoints." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_PAGE_POST", "name": "Retrieve status page post", "description": "Retrieves all posts associated with a specific status page in PagerDuty. This endpoint allows you to fetch updates, messages, and status information that have been posted to a particular status page. Use this to monitor the history of service status updates, incident communications, or maintenance notices for a given status page. The endpoint returns a list of posts with details including post content, title, type, timestamps, impacted services, severity, and status updates. You can filter results by post type (incident or maintenance), review status, or specific status IDs. This is a read-only endpoint and cannot be used to create, modify, or delete posts." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_PAGE_SEVERITIES_BY_ID", "name": "Retrieve status page severities by id", "description": "Retrieves the list of severities associated with a specific status page in PagerDuty. This endpoint allows users to fetch the current severity levels configured for a particular status page, which is crucial for understanding the criticality of incidents or service statuses displayed on that page. It should be used when there's a need to programmatically access or display the severity information for a given status page, such as in monitoring dashboards or integrated incident management systems. The endpoint provides only the severity data and does not modify any existing configurations." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_PAGES_STATUS", "name": "Retrieve status pages status", "description": "Retrieves the current statuses for a specified PagerDuty status page. This endpoint allows users to fetch real-time status information for a given status page, providing up-to-date details on service availability and any ongoing issues. It's particularly useful for monitoring the current state of services, especially during incident management processes. The endpoint should be used when there's a need to programmatically access the latest status information for a specific status page, enabling integration with other systems or dashboards for enhanced visibility of service health." }, { "slug": "PAGERDUTY_RETRIEVE_STATUS_PAGE_SUBSCRIPTION_BY_ID", "name": "Retrieve status page subscription by id", "description": "Retrieves a list of subscriptions associated with a specific PagerDuty status page. This endpoint allows users to fetch all current subscriptions for a given status page, enabling them to monitor who is receiving updates about the status page. It should be used when you need to review or audit the subscription list for a particular status page. The endpoint provides subscription details but does not allow for modification of subscriptions. Note that the response may be paginated for status pages with a large number of subscriptions." }, { "slug": "PAGERDUTY_RETRIEVE_TAG_BY_ID", "name": "Retrieve tag by id", "description": "Retrieves detailed information about a specific tag in the PagerDuty system using its unique identifier. This endpoint allows users to fetch the properties and metadata associated with a particular tag, which can be useful for incident management, reporting, and organization within PagerDuty. It should be used when detailed information about a specific tag is needed, such as its name, description, or any custom attributes. The endpoint will not modify or create tags; it is purely for retrieval of existing tag data. Note that the response will only include information for tags that the authenticated user has permission to view." }, { "slug": "PAGERDUTY_RETRIEVE_TAGS", "name": "Retrieve tags", "description": "Retrieves a list of tags from your PagerDuty account with optional filtering and pagination. Tags are used to categorize and label entities such as teams, users, and escalation policies in PagerDuty. This endpoint is useful when you need to browse available tags, search for specific tags by label, or build tag selection interfaces. Supports filtering by tag label using the 'query' parameter and pagination using 'limit' and 'offset' parameters. The response includes tag IDs, labels, and API URLs which can be used with other tag-related endpoints. Note: This endpoint returns tag definitions only, not information about which entities are tagged with them." }, { "slug": "PAGERDUTY_RETRIEVE_TEAM_AUDIT_RECORDS", "name": "Retrieve team audit records", "description": "Retrieves the audit records for a specific team in PagerDuty. This endpoint allows users to access a detailed history of configuration changes made to the team, including modifications to team members, escalation policies, and other team-related settings. It's particularly useful for security auditing, compliance reporting, and tracking the evolution of team structures over time. The endpoint returns a list of audit records, each likely containing information such as the type of change, who made the change, and when it occurred. Use this endpoint when you need to review or analyze the historical changes of a PagerDuty team's configuration." }, { "slug": "PAGERDUTY_RETRIEVE_TEAM_DETAILS_BY_ID", "name": "Retrieve team details by id", "description": "Retrieves detailed information about a specific team in PagerDuty based on the provided team ID. This endpoint allows users to fetch comprehensive data about a team, including its members, roles, and configurations. It is particularly useful for applications that need to display or process team information, such as team management dashboards or reporting tools. The endpoint returns all available details about the specified team, providing a snapshot of its current state within the PagerDuty system." }, { "slug": "PAGERDUTY_RETRIEVE_TEAM_LIST", "name": "Retrieve team list", "description": "The ListTeams endpoint retrieves a list of teams within a PagerDuty account. It provides an overview of all teams or a filtered subset based on the optional query parameter. This endpoint is useful for obtaining team information, such as team names and IDs, which can be used in other API calls or for organizational purposes. The response typically includes basic details about each team, allowing for further actions or more detailed queries on specific teams. Use this endpoint when you need to survey the teams in your PagerDuty organization, prepare for team management tasks, or integrate team information into other systems. Note that while it returns a list of teams, it may not provide exhaustive details for each team; for comprehensive information on a specific team, a separate API call might be necessary." }, { "slug": "PAGERDUTY_RETRIEVE_TECHNICAL_SERVICE_DETAILS", "name": "Retrieve technical service details", "description": "Retrieves detailed information about a specific technical service and its dependencies within the PagerDuty incident management platform. This endpoint is used to fetch comprehensive data about a single technical service, including its relationships with other services, its role in the overall service dependency structure, and any associated metadata. It's particularly useful for understanding the impact and connections of a specific service within an organization's technical infrastructure. The endpoint should be used when detailed information about a particular technical service's dependencies and relationships is needed, such as during incident analysis, service mapping, or system architecture reviews. It does not modify any data and is safe for frequent use in monitoring or dashboard applications." }, { "slug": "PAGERDUTY_RETRIEVE_TEMPLATE_FIELDS", "name": "Retrieve template fields", "description": "Retrieves the available field definitions for PagerDuty status update templates. This endpoint returns metadata about the fields that can be used when creating or modifying templates within the PagerDuty platform. **Important**: This endpoint requires PagerDuty's Status Pages or Templates feature, which is typically available on Business or Enterprise plans. If the feature is not available on your account, the API will return a 402 Payment Required error. The endpoint is useful for: - Understanding available template field options before creating templates - Building interfaces for template management - Automating template creation with proper field validation - Documenting the template schema for your organization This is a read-only endpoint that does not modify any existing templates or create new ones; it only provides information about the available field definitions and their properties (such as field names, types, and descriptions)." }, { "slug": "PAGERDUTY_RETRIEVE_UNROUTED_EVENT_ORCHESTRATION_BY_ID", "name": "Retrieve unrouted event orchestration by id", "description": "Retrieves the unrouted orchestration configuration for a specific Event Orchestration in PagerDuty. The unrouted orchestration defines how events that don't match any routing rules are handled - they can be suppressed or routed to specific services. This configuration includes rule sets, catch-all actions, and version information. Use this endpoint when you need to review or audit the unrouted event handling configuration, understand how unmatched events are processed, or before updating the unrouted orchestration rules. The endpoint returns the complete configuration including created/updated timestamps, user references, and the current version identifier. Note that this is a read-only endpoint for retrieving configuration - use the update endpoint to modify the unrouted orchestration settings." }, { "slug": "PAGERDUTY_RETRIEVE_USER_AUDIT_RECORDS_BY_ID", "name": "Retrieve user audit records by id", "description": "Retrieves the audit records for a specific user in the PagerDuty system. This endpoint allows you to access a historical log of activities and changes associated with the user, providing valuable insights for compliance, security, and troubleshooting purposes. The audit records may include actions such as login attempts, configuration changes, and incident-related activities performed by or affecting the specified user. Use this endpoint when you need to investigate user activities, track changes, or generate reports for auditing and compliance requirements. Note that the response may be paginated, and additional query parameters might be available to filter or sort the results, although these are not explicitly defined in the given schema." }, { "slug": "PAGERDUTY_RETRIEVE_USER_BY_ID", "name": "Retrieve user by id", "description": "Retrieves detailed information about a specific PagerDuty user by their ID. Returns user profile data including name, email, role, timezone, and other account details. Use the 'include' parameter to optionally fetch related resources like contact methods, notification rules, teams, or subdomains in the same request. Common use cases: - Get user profile information for display in applications - Verify user details before performing operations - Fetch user contact methods for notification purposes - Check user role and permissions Note: This endpoint does not return the user's current on-call status or incident history. Use the on-calls or incidents endpoints for that information." }, { "slug": "PAGERDUTY_RETRIEVE_USER_CONTACT_METHODS_VIA_ID", "name": "Retrieve user contact methods via id", "description": "Retrieves all contact methods associated with a specific user in PagerDuty. This endpoint allows you to fetch the various ways a user can be contacted during an incident, such as email addresses, phone numbers, or push notifications to mobile devices. It's particularly useful when you need to review or update a user's notification preferences or ensure that the correct contact information is on file. The endpoint returns a list of contact methods, likely including details such as the type of contact method, the specific address or number, and possibly the status (e.g., verified, primary). It should be used when setting up new users, auditing user information, or integrating PagerDuty with other communication systems. Note that this endpoint only provides read access to contact methods and cannot be used to add, modify, or remove contact information." }, { "slug": "PAGERDUTY_RETRIEVE_USER_LICENSE_INFORMATION", "name": "Retrieve user license information", "description": "Retrieves the license information for a specific user in the PagerDuty system. This endpoint allows you to check the current licensing status, type, and any associated details for a given user. It should be used when you need to verify a user's license, such as during account management or when troubleshooting access issues. The endpoint will return details about the user's current license, but it does not provide information about other aspects of the user's account or permissions. Keep in mind that access to this endpoint may be restricted to users with appropriate administrative privileges." }, { "slug": "PAGERDUTY_RETRIEVE_USER_NOTIFICATION_RULE", "name": "Retrieve user notification rule", "description": "Retrieves a specific notification rule for a given user in PagerDuty. This endpoint allows you to fetch detailed information about how and when a particular user receives alerts and notifications. It's useful for auditing user preferences, troubleshooting notification issues, or when you need to review or potentially update a user's notification settings. The endpoint returns the configuration of the specified rule, including contact methods, time-based restrictions, and urgency levels. It should be used when you need to examine or verify the settings of a particular notification rule for a user, but it won't provide an overview of all rules or allow modifications to the rule." }, { "slug": "PAGERDUTY_RETRIEVE_USER_NOTIFICATION_RULES", "name": "Retrieve user notification rules", "description": "Retrieves the notification rules for a specific user in PagerDuty. This endpoint allows you to fetch all configured notification rules associated with a given user, providing insight into how and when the user receives alerts for incidents. It's particularly useful for auditing a user's notification setup, troubleshooting notification issues, or programmatically managing user preferences. The endpoint returns a list of notification rules, likely including details such as contact methods, time-based restrictions, and urgency levels for each rule. It should be used when you need to review or analyze a user's current notification configuration within your incident management workflow." }, { "slug": "PAGERDUTY_RETRIEVE_USERS_BY_SCHEDULE_ID", "name": "Retrieve users by schedule id", "description": "Retrieves a list of users associated with a specific PagerDuty schedule. This endpoint is essential for managing on-call rotations and understanding who is responsible for incident response during different time periods. It should be used when you need to view all users assigned to a particular schedule, which is helpful for auditing, planning, or modifying on-call arrangements. The endpoint returns basic user information and does not provide detailed schedule timeslots or user availability. It's particularly useful for larger teams with complex rotation schedules to ensure proper coverage and fair distribution of on-call responsibilities." }, { "slug": "PAGERDUTY_RETRIEVE_USERS_LIST", "name": "Retrieve users list", "description": "Retrieves a list of users from the PagerDuty system. This endpoint allows you to fetch information about multiple users in your PagerDuty account, which can be useful for user management, generating reports, or integrating user data with other systems. The response typically includes basic information about each user, such as their ID, name, email, and role. Use query parameters to filter, paginate, or search for specific users. This endpoint is ideal for bulk operations or when you need an overview of your PagerDuty user base. Note that the results may be paginated, so multiple calls might be necessary to retrieve all users for large accounts." }, { "slug": "PAGERDUTY_RETRIEVE_USER_STATUS_UPDATE_NOTIFICATION_RULE", "name": "Retrieve user status update notification rule", "description": "Retrieves a specific status update notification rule for a given user in PagerDuty. This endpoint allows you to fetch detailed information about how and when a particular user receives notifications for status updates on incidents. It's useful for auditing notification settings, troubleshooting notification issues, or programmatically managing user preferences. The endpoint should be used when you need to review or verify the configuration of a single notification rule for a specific user. It does not modify any settings and is read-only in nature." }, { "slug": "PAGERDUTY_RETRIEVE_VENDOR_BY_ID", "name": "Retrieve vendor by id", "description": "Get detailed information about a specific PagerDuty vendor integration by its ID. Returns vendor details including name, description, integration type, logo URLs, documentation links, and connection capabilities. Use this to verify vendor configuration or gather integration information before setting up services. Requires a valid vendor ID (e.g., 'PZQ6AUS' for AWS CloudWatch, 'PAM4FGS' for Datadog). Get vendor IDs by first calling the fetch vendor list action." }, { "slug": "PAGERDUTY_RETRIEVE_WEBHOOK_SUBSCRIPTIONS", "name": "Retrieve webhook subscriptions", "description": "Retrieves a list of all webhook subscriptions associated with the authenticated PagerDuty account. This endpoint allows users to view and manage their existing webhook configurations, which are used to receive real-time notifications about incidents, alerts, and other PagerDuty events. It's particularly useful for auditing current integrations, troubleshooting notification issues, or preparing to update webhook settings. The response likely includes details such as webhook URLs, event types they're subscribed to, and their current status. This endpoint should be used when you need an overview of all active webhook integrations but won't provide the actual event data sent to these webhooks." }, { "slug": "PAGERDUTY_SEND_MCP_REQUEST", "name": "Send MCP request", "description": "Tool to send JSON-RPC requests to PagerDuty's Model Context Protocol (MCP) endpoint. Use when you need to interact with MCP servers for tool execution, resource management, or prompt operations." }, { "slug": "PAGERDUTY_SEND_RESPONDER_REQUESTS_FOR_INCIDENTS", "name": "Send responder requests for incidents", "description": "Send responder requests to users or escalation policies for a PagerDuty incident. Use this action to request additional help for an ongoing incident by notifying specific users or escalation policies. This is useful when an incident requires more expertise, resources, or urgent attention beyond the currently assigned team. The responder request includes a message explaining why help is needed and allows you to target multiple responders at once (up to 500 unique responders and 1000 responder requests per incident). Note: This action requires a PagerDuty plan that includes the Add Responders feature." }, { "slug": "PAGERDUTY_SET_BUSINESS_SERVICE_IMPACT_STATUS", "name": "Set business service impact status", "description": "This endpoint updates the impact status of a specific incident on a particular business service in PagerDuty. It allows you to either set a business service as impacted by an incident or remove the impact, which in turn affects the propagation of the impact to other supported services. Use this endpoint when you need to manually adjust the impact of an incident on your business services, either to escalate its importance or to mark it as resolved for specific services. This tool is particularly useful for managing the scope and severity of incidents across your organization's service hierarchy. Note that updating the impact status will have cascading effects on services supported by the targeted business service." }, { "slug": "PAGERDUTY_SET_GLOBAL_PRIORITY_THRESHOLD", "name": "Set global priority threshold", "description": "Sets the global Priority Threshold for Business Services in PagerDuty, determining which incidents can impact these services based on their priority level. This endpoint allows you to configure the minimum incident priority required to affect Business Services by specifying an 'id' and 'order' for the threshold. Use this when you need to adjust how incidents of different priorities impact your Business Services. Note that incidents below this threshold won't impact Business Services unless manually added using a separate endpoint. This configuration is crucial for managing service impacts and prioritizing incident responses effectively." }, { "slug": "PAGERDUTY_SNOOZE_INCIDENT_BY_DURATION", "name": "Snooze incident by duration", "description": "Snooze an acknowledged incident in PagerDuty for a specified duration. This temporarily suppresses notifications for the incident, automatically returning it to the \"triggered\" state when the snooze period expires. The incident must be in \"acknowledged\" status before snoozing. **Use Cases:** - Managing alert fatigue during investigation - Waiting for upstream dependencies to recover - Delaying notifications during maintenance windows - Handling known false positives that require time to verify **Important Notes:** - Snoozing does NOT resolve the incident - it only delays notifications - The incident will automatically re-trigger after the snooze duration - Reassigning a snoozed incident cancels the snooze timer - Maximum snooze duration is 1 week (604,800 seconds) **Prerequisites:** - Incident must be in \"acknowledged\" status (use update incident action first if needed) - User must have permission to modify the incident" }, { "slug": "PAGERDUTY_SUBSCRIBE_ENTITIES_TO_BUSINESS_SERVICES", "name": "Subscribe entities to business services", "description": "This endpoint allows you to subscribe users or teams to a specific business service in PagerDuty. It enables you to add multiple subscribers in a single request, streamlining the process of setting up notification recipients for critical incidents. Use this endpoint when you need to configure who receives alerts and updates for a particular business service. The endpoint is particularly useful for initial setup or bulk updates to subscriber lists. Note that this operation adds new subscribers but does not remove existing ones; to remove subscribers, you would need to use a separate endpoint." }, { "slug": "PAGERDUTY_SUBSCRIBE_ENTITIES_TO_INCIDENT_STATUS_UPDATES", "name": "Subscribe entities to incident status updates", "description": "Subscribes specified users or teams to receive status updates for a particular incident in PagerDuty. This endpoint allows you to add multiple subscribers at once, ensuring that relevant parties are kept informed about the incident's progress. It's particularly useful when you need to involve additional stakeholders or support teams during an ongoing incident. The endpoint requires the incident ID and a list of subscribers, each defined by their unique ID and type (user or team). Use this when you want to expand the notification list for critical updates about an incident, but be mindful not to oversubscribe, as it may lead to notification fatigue." }, { "slug": "PAGERDUTY_SUBSCRIBE_TO_USER_NOTIFICATIONS", "name": "Subscribe to user notifications", "description": "Creates notification subscriptions for a specific user in PagerDuty. This endpoint allows you to subscribe a user to multiple incidents or business services in a single API call. It's particularly useful for setting up customized notification preferences for users, ensuring they receive alerts for specific entities they need to monitor. The endpoint supports bulk subscription, allowing you to subscribe a user to multiple entities simultaneously, improving efficiency in managing user notifications. Note that this endpoint only creates subscriptions and does not modify or delete existing ones." }, { "slug": "PAGERDUTY_UNSUBSCRIBE_BUSINESS_SERVICE_ENTITY", "name": "Unsubscribe business service entity", "description": "This endpoint unsubscribes specified users or teams from receiving notifications for a particular business service in PagerDuty. It allows bulk unsubscription of multiple entities in a single API call. The endpoint should be used when you need to remove one or more users or teams from the notification list of a specific business service, such as when reorganizing team responsibilities or updating notification preferences. It's important to note that this action is immediate and irreversible, so care should be taken to ensure the correct entities are being unsubscribed. The endpoint doesn't provide a way to confirm or preview the changes before they're applied, so it's recommended to double-check the subscriber information before making the API call." }, { "slug": "PAGERDUTY_UNSUBSCRIBE_FROM_INCIDENT_STATUS_UPDATES", "name": "Unsubscribe from incident status updates", "description": "Unsubscribes specified users or teams from receiving status updates for a particular incident in PagerDuty. This endpoint is used when certain entities no longer need to be notified about changes to an incident's status. It allows for bulk unsubscription of multiple users and/or teams in a single API call. The endpoint requires the incident ID in the URL path and a list of subscribers to unsubscribe in the request body. It's important to note that this action cannot be undone through the API, and re-subscription would require a separate API call if needed later." }, { "slug": "PAGERDUTY_UNSUBSCRIBE_TEAM_NOTIFICATION_SUBSCRIPTIONS", "name": "Unsubscribe team notification subscriptions", "description": "Unsubscribes a team from notifications for specific incidents or business services in PagerDuty. This endpoint is used to stop a team from receiving alerts and updates about particular entities. It's particularly useful for managing notification overload or when a team is no longer responsible for certain incidents or services. The endpoint requires a list of subscribables (entities to unsubscribe from), each identified by a unique ID and type. At least one subscribable must be provided, and all items in the list must be unique. This operation cannot be undone through this endpoint, so use it cautiously." }, { "slug": "PAGERDUTY_UNSUBSCRIBE_USER_NOTIFICATION_SUBSCRIPTIONS", "name": "Unsubscribe user notification subscriptions", "description": "This endpoint allows unsubscribing a user from notifications for specific incidents or business services in PagerDuty. It's used to modify a user's notification preferences, removing them from receiving updates about particular entities. The endpoint accepts a list of subscribable entities, each identified by an ID and type, and removes the user's subscription to these entities. This is particularly useful for managing notification overload or when a user no longer needs updates about certain incidents or services. The endpoint requires at least one subscribable entity and ensures that all entries in the request are unique." }, { "slug": "PAGERDUTY_UPDATE_A_CUSTOM_FIELD_FOR_AN_INCIDENT_TYPE", "name": "Update a custom field for an incident type", "description": "Update a custom field for an incident type. Custom Fields (CF) are a feature which will allow customers to extend Incidents with their own custom data, to provide additional context and support features such as customized filtering, search and analytics. Custom Fields can be applied to different incident types. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. Scoped OAuth requires: `custom_fields.write`" }, { "slug": "PAGERDUTY_UPDATE_ADD_ON_BY_ID", "name": "Update add on by id", "description": "Updates an existing Add-on in PagerDuty with new properties. This endpoint allows you to modify the type, name, and source URL of a specific Add-on identified by its unique ID. It's used when you need to change the configuration or appearance of an Add-on that's already integrated into your PagerDuty instance. The endpoint updates only the mutable fields and returns the full updated Add-on object, including read-only fields. Note that this operation cannot modify the Add-on's ID or other system-generated fields like 'summary', 'self', or 'html_url'." }, { "slug": "PAGERDUTY_UPDATE_ALERT_GROUPING_SETTINGS_BY_ID", "name": "Update alert grouping settings byid", "description": "Update an existing Alert Grouping Setting in PagerDuty by its ID. Alert Grouping Settings control how alerts are automatically grouped into incidents, reducing noise and streamlining incident management. This endpoint allows you to modify: - Grouping type (time, intelligent, content_based, or content_based_intelligent) - Configuration parameters (time windows, field matching rules) - Associated services - Display name and description **Important Notes:** - This is a PUT request requiring the complete alert_grouping_setting object - Some grouping types (e.g., intelligent) may require specific PagerDuty plan features - The 'content_based_intelligent' type only supports one service per setting - Time windows must be 300-3600 seconds (or 86400 for content_based only) - Only include writable fields; omit read-only fields (id, created_at, updated_at) **Use this when:** You need to change how alerts are grouped for specific services, adjust time windows, or modify field-based grouping rules." }, { "slug": "PAGERDUTY_UPDATE_ALERT_IN_INCIDENT", "name": "Update alert in incident", "description": "Updates the status of a specific alert within an incident in PagerDuty. This endpoint allows you to modify an alert's status, primarily to mark it as resolved. It's crucial for managing the lifecycle of alerts and incidents in PagerDuty's incident management system. Use this when you need to programmatically update the state of an alert, typically as part of an automated incident resolution process or when integrating external systems with PagerDuty. Note that while the endpoint accepts various fields in the request body, most are read-only, with the 'status' field being the primary modifiable attribute." }, { "slug": "PAGERDUTY_UPDATE_AN_INCIDENT_TYPE", "name": "Update an incident type", "description": "Update an Incident Type. Incident Types are a feature which will allow customers to categorize incidents, such as a security incident, a major incident, or a fraud incident. > ### Early Access > This endpoint is in Early Access and may change at any time. You must pass in the X-EARLY-ACCESS header to access it. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#incident) Scoped OAuth requires: `incident_types.write`" }, { "slug": "PAGERDUTY_UPDATE_A_TRIGGER", "name": "Update incident workflow trigger", "description": "Updates an existing incident workflow trigger in PagerDuty. Triggers define when and how incident workflows are activated - either automatically based on conditions, manually by responders, or for specific incident types. You can update the trigger type, workflow association, PCL conditions, service scope, and permissions. Conditional triggers require a PCL condition string (e.g., \"incident.priority matches 'P1'\"). Specify either a services list or subscribed_to_all_services (not both). Common use cases: - Change which workflow a trigger executes - Update the conditions for a conditional trigger - Modify service associations - Update permissions for manual triggers - Switch trigger type (e.g., from manual to conditional) Requires the `incident_workflows.write` OAuth scope." }, { "slug": "PAGERDUTY_UPDATE_AUTOMATION_RUNNER_INFO", "name": "Update automation runner info", "description": "This endpoint allows you to update an existing Automation Action Runner in PagerDuty. It is used to modify the properties of a runner, such as its name, description, and, for runbook runners, the runbook server connection details. The endpoint supports updating both sidecar and runbook type runners, distinguished by the 'runner_type' discriminator. Use this endpoint when you need to change the configuration of an existing runner, such as updating its name for better identification or modifying the runbook server details. Note that while you can update most properties, you cannot change a runner's type (e.g., from sidecar to runbook) using this endpoint." }, { "slug": "PAGERDUTY_UPDATE_BUSINESS_SERVICE_BY_ID", "name": "Update business service by id", "description": "This endpoint allows you to update an existing Business Service in PagerDuty. It is used to modify the details of a specific service, such as its name, description, point of contact, or the team responsible for it. This is particularly useful when service information changes or when reassigning responsibilities within your organization. The endpoint requires the unique identifier of the Business Service and accepts a JSON object with the updated information. It's important to note that you only need to include the fields you want to update; omitted fields will retain their current values." }, { "slug": "PAGERDUTY_UPDATE_CHANGE_EVENT_BY_ID", "name": "Update change event by ID", "description": "Update an existing change event in PagerDuty by its unique ID. Modify summary, source, custom_details, or links for change events tracking deployments, configuration changes, or system modifications. **Updatable fields:** summary, source, custom_details, links (each replaces existing value) **Read-only fields:** id, type, timestamp, service, integration **Requirements:** PagerDuty AIOps add-on, change_events:write scope Use to correct typos, update metadata, add context, or replace documentation links. All updates replace existing field values entirely (no merging)." }, { "slug": "PAGERDUTY_UPDATE_CUSTOM_FIELD_DISPLAY_NAME", "name": "Update Custom Field Display Name", "description": "Updates an existing custom field for incidents in PagerDuty. This endpoint allows you to modify the display name, description, and default value of a custom field identified by its unique field_id. Use this action when you need to change the properties of a custom field, such as renaming it, updating its description, or setting a new default value. **Prerequisites:** 1. A valid custom field ID (use PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELDS to list available fields) 2. At least one field property to update (display_name, description, or default_value) **Important Notes:** - Updating a custom field affects all incidents that use this field - The display_name must be unique across the account - Use this endpoint cautiously in production environments - Requires the `custom_fields.write` OAuth scope" }, { "slug": "PAGERDUTY_UPDATE_CUSTOM_FIELD_OPTION", "name": "Update custom field option", "description": "Updates a field option for a custom field on an incident type in PagerDuty. Field options represent the selectable values for multi-value or dropdown custom fields. Use this action to modify the display value or data type of an existing option. **Prerequisites:** 1. A valid incident type ID or name (use PAGERDUTY_LIST_INCIDENT_TYPES) 2. A valid custom field ID for that incident type (use PAGERDUTY_LIST_INCIDENT_TYPE_CUSTOM_FIELDS) 3. An existing field option ID to update (use PAGERDUTY_LIST_FIELD_OPTIONS_ON_A_CUSTOM_FIELD) 4. The custom field should be of type 'multi_value' or 'multi_value_fixed' to support options **Common use cases:** - Renaming field options to match updated terminology (e.g., \"Critical\" → \"Urgent\") - Correcting typos in existing field option values - Adjusting options to better reflect current operational needs **Note:** This is an Early Access endpoint requiring the `custom_fields.write` OAuth scope. The X-EARLY-ACCESS header with value 'analytics-v2' is automatically included." }, { "slug": "PAGERDUTY_UPDATE_ESCALATION_POLICY_BY_ID", "name": "Update escalation policy by id", "description": "Updates an existing escalation policy in PagerDuty with new settings and rules. This endpoint allows you to modify various aspects of an escalation policy, including its name, description, escalation rules, associated services, and team. It's used when you need to change how incidents are escalated and handled within your organization. The updated policy details are provided in the request body, and the policy to be updated is identified by its ID in the URL path. This tool is essential for maintaining and adjusting incident response workflows in PagerDuty to ensure optimal team responsiveness and incident management." }, { "slug": "PAGERDUTY_UPDATE_ESCALATION_POLICY_FOR_TEAM", "name": "Update escalation policy for team", "description": "Associates an escalation policy with a team in PagerDuty. This creates or updates the link between a team and an escalation policy, enabling the team to use that policy for incident management. When an escalation policy is added to a team, the users, schedules, and services associated with that policy are also added to the team. Note: This does NOT modify the escalation policy's configuration itself (like notification rules or escalation steps). To update the policy configuration, use the update_escalation_policy_by_id action instead. This action only manages the team-policy association. Important: An escalation policy can only be associated with one team at a time. The account must have the Teams feature enabled (typically requires a paid plan)." }, { "slug": "PAGERDUTY_UPDATE_EVENT_ORCHESTRATION_BY_ID", "name": "Update event orchestration by id", "description": "Updates an existing Event Orchestration in PagerDuty. This endpoint allows you to modify the name, description, and team ownership of a specific Orchestration identified by its ID. It's used to refine and adjust your incident management workflow by updating the configuration of how events are processed and routed. This tool is particularly useful when you need to change the purpose, ownership, or details of an Orchestration without creating a new one. Note that certain properties like integrations, routing information, and timestamps are read-only and cannot be modified through this endpoint. Use this when you need to update an Orchestration's metadata or reassign it to a different team." }, { "slug": "PAGERDUTY_UPDATE_EVENT_ORCHESTRATION_CACHE_VARIABLE", "name": "Update Event Orchestration Cache Variable", "description": "This endpoint updates a cache variable associated with a specific service in PagerDuty's event orchestrations. It allows you to modify the cache variable's name, configuration, conditions, and disabled state. Use this endpoint when you need to change how a cache variable behaves, such as updating its value extraction method or trigger event count settings. The endpoint is particularly useful for fine-tuning event processing rules and maintaining dynamic incident management workflows. Note that some fields like ID, creation date, and last update information are read-only and cannot be modified through this endpoint." }, { "slug": "PAGERDUTY_UPDATE_EVENT_RULE_BY_ID", "name": "Update event rule by id", "description": "This endpoint allows you to update an existing Event Rule within a specified Ruleset in PagerDuty. Event Rules define conditions for matching events and actions to take when those conditions are met. You can modify various aspects of the rule, including its active status, matching conditions, time frames, variables, position in the ruleset, and associated actions. This endpoint is particularly useful for fine-tuning your incident management workflow, adjusting how events are processed, and controlling alert behavior. It's important to note that changes made through this endpoint will immediately affect how incoming events are handled, so careful consideration should be given to the potential impact on your alerting system." }, { "slug": "PAGERDUTY_UPDATE_EVENT_RULE_FOR_SERVICE", "name": "Update event rule for service", "description": "This endpoint allows you to update an existing Event Rule for a specific service in PagerDuty. Event Rules are used to define how incoming events should be processed, including conditions for matching events and actions to take when a match occurs. You can modify various aspects of the rule, such as its conditions, time-based restrictions, variables for extraction, and actions to perform on matching events. This endpoint is particularly useful for fine-tuning event management processes, adjusting rule priorities, or temporarily disabling rules without removing them entirely. It provides granular control over event handling, allowing for sophisticated automation and incident management workflows." }, { "slug": "PAGERDUTY_UPDATE_EXTENSION_BY_ID", "name": "Update extension by id", "description": "Updates an existing extension in PagerDuty. This endpoint allows you to modify the configuration of a previously created extension, such as a webhook or custom integration. You can update properties like the extension's name, endpoint URL, associated objects, and custom configuration. This is useful for maintaining and adjusting integrations as your operational needs change. The endpoint requires the extension's ID in the URL path and accepts a JSON payload with the updated extension details. It's important to note that some fields, like the extension's ID and type, are read-only and cannot be modified through this endpoint." }, { "slug": "PAGERDUTY_UPDATE_GLOBAL_ORCHESTRATION", "name": "Update the global orchestration for an event orchestration", "description": "Update the Global Orchestration configuration for an Event Orchestration. This action allows you to update global-level event routing rules and processing logic that apply to all events sent to an orchestration before they reach service-specific rules. The orchestration_path must include: - 'sets': A list of rule sets (at least one with id='start'). Each set contains: - 'id': Unique identifier for the set (first set must be 'start') - 'rules': List of rules, each with optional 'conditions' and 'actions' - 'catch_all': Fallback actions object applied when no rules match (must have 'actions' key) Rule actions can include: route_to, severity, priority, annotate, suppress, suspend, etc. Use the get_event_orchestration_global action first to retrieve the current configuration, then modify and send it back to update. For more information see the [API Concepts Document](../../api-reference/ZG9jOjI3NDc5Nzc-api-concepts#event-orchestrations) Scoped OAuth requires: `event_orchestrations.write`" }, { "slug": "PAGERDUTY_UPDATE_INCIDENT_ALERTS", "name": "Update incident alerts", "description": "This endpoint allows you to update the status of multiple alerts associated with a specific incident in PagerDuty. It is particularly useful for bulk operations when you need to resolve or update the status of several alerts simultaneously within the context of a single incident. The endpoint accepts an array of alert objects, each containing the necessary information for the update. It's important to note that this endpoint modifies existing alerts and cannot be used to create new alerts or incidents. Use this when you need to efficiently manage and update the state of multiple alerts tied to an ongoing incident." }, { "slug": "PAGERDUTY_UPDATE_INCIDENT_BY_ID", "name": "Update incident by id", "description": "The UpdateIncident endpoint allows you to modify various attributes of an existing incident in PagerDuty's incident management system. This PUT operation enables users to update incident status, priority, assignments, escalation levels, and other key properties. It's particularly useful for reflecting the current state of an incident, reassigning responsibilities, or adjusting the incident's urgency and escalation path. The endpoint should be used when there are significant changes to an incident that need to be reflected in the system, such as acknowledging the incident, marking it as resolved, or changing its priority. It's important to note that this endpoint updates an existing incident and does not create new incidents. Care should be taken when modifying critical fields like status or escalation policy, as these changes can significantly impact the incident management workflow." }, { "slug": "PAGERDUTY_UPDATE_INCIDENT_CUSTOM_FIELD_VALUES", "name": "Update incident custom field values", "description": "Updates custom field values for a specific incident in PagerDuty. Custom fields enrich incidents with metadata like environment, severity, version info, runbook links, etc. Supports string, number, boolean, URL, datetime, and select field types. Operation is idempotent and overwrites existing values for specified fields. Requires incident:write scope and pre-configured custom fields (typically on Enterprise plans). Use PAGERDUTY_RETRIEVE_INCIDENT_CUSTOM_FIELDS to get available field IDs before updating." }, { "slug": "PAGERDUTY_UPDATE_INCIDENT_DETAILS", "name": "Update incident details", "description": "This endpoint allows for bulk updating of multiple PagerDuty incidents in a single API call. It can be used to modify various attributes of incidents such as status, priority, assignments, and more. This is particularly useful for automating incident management processes, batch resolving or acknowledging incidents, or updating incident details en masse. The endpoint accepts an array of incident objects, each containing the necessary updates, allowing for efficient management of multiple incidents simultaneously. It's important to note that while many fields are optional, each incident object must include the 'id' and 'type' fields for proper identification and processing." }, { "slug": "PAGERDUTY_UPDATE_INCIDENT_WORKFLOW", "name": "Update incident workflow", "description": "This endpoint updates an existing Incident Workflow in PagerDuty by its unique identifier. It allows you to modify various aspects of the workflow, including its name, description, associated team, and the sequence of steps to be executed during an incident. The primary use case is to refine or adjust incident response processes by altering the workflow's configuration. This is particularly useful when incident management practices need to be updated based on new requirements or lessons learned from previous incidents. The endpoint provides granular control over each step in the workflow, allowing for precise tuning of automated actions and their inputs. However, it's important to note that modifying a workflow may impact ongoing or future incident responses, so changes should be made thoughtfully and tested thoroughly before implementation in a production environment." }, { "slug": "PAGERDUTY_UPDATE_INTEGRATION_BY_ID_AND_INTEGRATION_ID", "name": "Update integration by id and integration id", "description": "Updates an existing integration for a specific PagerDuty service. This endpoint allows you to modify the configuration of an integration, including its type, name, and various settings related to email processing for email-based integrations. It's particularly useful for adjusting how incoming data (especially emails) is processed and turned into incidents. Use this endpoint when you need to change the behavior of an existing integration, such as updating email parsing rules, changing incident creation criteria, or modifying email filters. The endpoint requires the service ID and integration ID in the URL path, and expects a comprehensive integration object in the request body. Note that some fields like 'id', 'created_at', and 'html_url' are read-only and cannot be modified through this endpoint." }, { "slug": "PAGERDUTY_UPDATE_INTEGRATION_LABEL", "name": "Update integration label", "description": "This endpoint updates the label (name) of an integration associated with a specific event orchestration in PagerDuty. It allows users to rename integrations for better organization and clarity within their incident management workflow. The endpoint should be used when there's a need to change how an integration is identified within the PagerDuty system, such as after a service rename or to improve naming conventions. It's important to note that this endpoint only updates the label of the integration and does not modify any other properties or configurations of the integration or event orchestration." }, { "slug": "PAGERDUTY_UPDATE_LOG_ENTRY_CHANNEL", "name": "Update log entry channel", "description": "Updates collaboration channel information for a specific log entry in PagerDuty. This endpoint is specifically designed for updating details of Slack, Microsoft Teams, or Zoom channels that were created when responders were added to an incident. Use this to correct or update channel URLs, names, or other channel-specific metadata after the channel has been created. Important: This endpoint only works with log entries that have integration channels (Slack/Teams/Zoom). It cannot be used on standard log entries like triggers, acknowledgements, or website actions. The channel type cannot be changed - it must match the existing type and is required for validation. Common use case: After a Slack channel is created for incident collaboration, use this endpoint to update the channel URL or other details if they need correction." }, { "slug": "PAGERDUTY_UPDATE_MAINTENANCE_WINDOW_BY_ID", "name": "Update maintenance window by id", "description": "Updates an existing maintenance window in PagerDuty's incident management system. This endpoint allows you to modify the details of a scheduled maintenance period, including its start and end times, affected services, and description. It's used to adjust planned maintenance activities, ensuring that incidents are not created for specified services during the defined timeframe. The endpoint requires the maintenance window's unique ID and accepts a JSON object with the updated information. It's particularly useful for extending or shortening maintenance periods, changing the list of affected services, or updating the window's description in response to changing maintenance requirements." }, { "slug": "PAGERDUTY_UPDATE_ONCALL_HANDOFF_NOTIFICATION_RULE", "name": "Update oncall handoff notification rule", "description": "This endpoint updates an existing on-call handoff notification rule for a specific user in PagerDuty. It allows you to modify the notification delay, handoff type, and contact method for the rule. Use this endpoint when you need to change how and when a user is notified about upcoming on-call shifts or when they are going off-call. The endpoint requires both the user ID and the specific rule ID in the URL path. You can update the notification delay (in minutes), the type of handoff (both, oncall, or offcall), and the preferred contact method for the notification. This endpoint is particularly useful for adjusting notification preferences as team structures or individual availability changes." }, { "slug": "PAGERDUTY_UPDATE_ORCHESTRATION_ROUTER_DETAILS", "name": "Update orchestration router details", "description": "Updates the configuration of an existing Event Orchestration Router in PagerDuty. This endpoint allows you to modify the rules and routing logic for incoming events, determining how they are directed to specific services. It's used to refine and adjust your incident management workflow by updating conditions, actions, and catch-all behavior for event routing. The update is comprehensive, meaning any omitted rules or details will be deleted from the existing configuration. Use this endpoint when you need to make changes to your event routing strategy or when adding new services or conditions to your orchestration setup." }, { "slug": "PAGERDUTY_UPDATE_RESPONSE_PLAY_BY_ID", "name": "Update response play by id", "description": "Updates an existing Response Play in PagerDuty's incident management system. This endpoint allows you to modify various aspects of a Response Play, including its name, description, associated team, subscribers, responders, runnability, and conference details. Use this when you need to alter the behavior or configuration of an existing Response Play to better suit your incident response processes. The update is performed by specifying the Response Play's unique identifier and providing the updated information in the request body. This endpoint is particularly useful for refining your incident management automation based on evolving team structures, communication preferences, or response strategies." }, { "slug": "PAGERDUTY_UPDATE_RULESET_BY_ID", "name": "Update ruleset by id", "description": "Updates an existing ruleset in the PagerDuty incident management system. This endpoint allows you to modify the name of a ruleset or change its team association. It's used when you need to adjust the configuration of a specific ruleset, such as renaming it for better clarity or reassigning it to a different team. The endpoint requires the ruleset's unique ID and accepts updates to the name and team fields. It's important to note that other fields like routing keys, creation details, and update history are read-only and cannot be modified through this call. This endpoint is particularly useful for maintaining and organizing rulesets as your incident management needs evolve." }, { "slug": "PAGERDUTY_UPDATE_SCHEDULE_BY_ID", "name": "Update schedule by id", "description": "The UpdateSchedule endpoint modifies an existing on-call schedule in PagerDuty. It updates the schedule's name, time zone, description, and layers. Each layer defines a rotation pattern for on-call duties. Use this to adjust rotations, add/remove users, change time zones, or modify restrictions. Note: This replaces the entire schedule configuration, so include all desired layers and settings, even if only changing part of the schedule." }, { "slug": "PAGERDUTY_UPDATE_SERVICE_BY_ID", "name": "Update service by id", "description": "Updates an existing service in PagerDuty with the provided configuration. This endpoint allows you to modify various aspects of a service, such as its name, description, escalation policy, incident urgency rules, and alert grouping settings. Use this when you need to change the behavior or properties of an existing service. The endpoint requires the service ID and accepts a 'service' object containing the updated configuration. Note that some properties (like 'id' and 'created_at') are read-only and cannot be modified. Certain advanced features, such as alert grouping and auto-pause notifications, may only be available on specific PagerDuty plans." }, { "slug": "PAGERDUTY_UPDATE_SERVICE_ORCHESTRATION_ACTIVE_STATUS", "name": "Update service orchestration active status", "description": "Update the active status of a service orchestration in PagerDuty. This endpoint enables or disables event orchestration for a specific service. When orchestration is active (true), incoming events are processed through the service's orchestration rules. When inactive (false), events bypass orchestration and use the service's default incident creation behavior. **Common use cases:** - Temporarily disable orchestration during maintenance windows - Enable orchestration after configuring new rules - Troubleshoot event routing by toggling orchestration on/off **Requirements:** - Valid service_id with an existing service orchestration - API token with write permissions (services.write scope) - The service must have orchestration configured **Important:** Disabling orchestration affects how events are routed and incidents are created for this service. Test changes in a development environment first when possible. **Scoped OAuth required:** services.write" }, { "slug": "PAGERDUTY_UPDATE_STANDARD_BY_ID", "name": "Update standard by id", "description": "Updates an existing standard in the PagerDuty incident management platform. This endpoint allows you to modify various attributes of a standard, including its active status, filtering criteria, description, and the technical services it applies to. Use this when you need to adjust the scope or behavior of an existing standard, such as enabling or disabling it, refining its application using regex patterns, or updating the list of included or excluded services. The changes made through this endpoint will affect how the standard is applied to your incident management processes, potentially impacting alerting and response workflows for the associated services." }, { "slug": "PAGERDUTY_UPDATE_STATUS_PAGE_POST", "name": "Update status page post", "description": "Updates an existing status page post update with new information. This endpoint modifies a specific update within a status page post, allowing you to change the message content, status (e.g., investigating, identified, monitoring, resolved), severity level, impacted services, and notification preferences. Use this to communicate progress on an ongoing incident or maintenance event. For example, you might update a post to change status from 'investigating' to 'identified' as you learn more about an issue, or update the message with new information about a fix being deployed. Required path parameters: - id: Status page ID (get from PAGERDUTY_FETCH_STATUS_PAGES) - post_id: Post ID (get from PAGERDUTY_CREATE_OR_UPDATE_STATUS_PAGE_POST) - post_update_id: Update ID (get from PAGERDUTY_CREATE_OR_UPDATE_STATUS_PAGE_POST_UPDATE_INFORMATION) The post_update object must include: message, status ID, severity ID, impacted services list, update frequency, notify_subscribers flag, and type field." }, { "slug": "PAGERDUTY_UPDATE_STATUS_PAGE_POST_INFO", "name": "Update status page post info", "description": "Creates or updates a post update on a specific PagerDuty status page. This endpoint allows you to add new information or modify existing updates related to an incident or maintenance event. Use this when you need to communicate changes in status, provide additional details, or update the severity of an ongoing situation. The post update can include a custom message, current status, severity level, and list of impacted services. You can also control whether subscribers should be notified and optionally schedule future updates. This tool is essential for maintaining clear and timely communication with stakeholders during incidents or planned maintenance periods. Note that this endpoint does not create new status page posts; it only adds updates to existing posts." }, { "slug": "PAGERDUTY_UPDATE_STATUS_PAGE_POST_POSTMORTEM", "name": "Update status page post postmortem", "description": "Updates an existing postmortem for a specific status page post in PagerDuty. This endpoint allows you to modify the postmortem message and notification settings for an incident's detailed analysis. The postmortem provides insights about the incident's root causes, impact, and lessons learned. Use this when you need to revise or enhance an existing postmortem after it has been created. The postmortem message supports Rich-Text formatting (max 10,000 characters) and you can control whether subscribers receive notifications about the update. Note: This endpoint updates an existing postmortem - use POST to create a new one." }, { "slug": "PAGERDUTY_UPDATE_STATUS_PAGE_POST_RESOURCE", "name": "Update status page post resource", "description": "Updates an existing status page post on a PagerDuty Status Page. Modify post details like title, type (incident/maintenance), and timing. Required fields: type, title, post_type, and status_page reference. For 'maintenance' posts, starts_at and ends_at are REQUIRED; for 'incident' posts, they should be null/omitted. Use this to update ongoing incidents or adjust maintenance windows. Note: This updates post metadata, not status updates within the post." }, { "slug": "PAGERDUTY_UPDATE_TEAM_BY_ID", "name": "Update team by id", "description": "Updates an existing team in PagerDuty by modifying its name, description, visibility, or parent team. You can update: - name: Change the team name (must be unique) - description: Update team purpose/responsibilities - default_role: Change team visibility ('none' for private, 'manager' for public) - parent: Modify team hierarchy (requires Team Hierarchy feature) Provide only the fields you want to change. Other fields remain unchanged. Read-only fields like 'id', 'summary', 'self', and 'html_url' cannot be modified. Examples: - Rename: {\"id\": \"PXXXXXX\", \"team\": {\"name\": \"New Team Name\"}} - Make private: {\"id\": \"PXXXXXX\", \"team\": {\"default_role\": \"none\"}} - Update multiple: {\"id\": \"PXXXXXX\", \"team\": {\"name\": \"Updated Team\", \"description\": \"New description\", \"default_role\": \"manager\"}} Use this when reorganizing teams, changing visibility, or updating team information." }, { "slug": "PAGERDUTY_UPDATE_TEMPLATE_BY_ID", "name": "Update template by id", "description": "The UpdateTemplate endpoint allows you to modify an existing status update template in PagerDuty. This tool is used to customize notification templates for incident status updates, enabling consistent and efficient communication during incident management. It supports updating various aspects of the template, including its name, description, and content for different notification channels such as email and SMS. This endpoint is particularly useful when you need to refine or adjust your communication strategy for incident updates. Note that while you can update multiple fields, you cannot change the template type from 'status_update', as it's currently the only supported type." }, { "slug": "PAGERDUTY_UPDATE_THE_SERVICE_ORCHESTRATION_FOR_A_SERVICE", "name": "Update the service orchestration for a service", "description": "Update a Service Orchestration for a service. Service Orchestrations allow you to create Event Rules that evaluate and process events sent to this service. The orchestration_path parameter must include: - 'sets': List of rule sets (at least one with id='start'). Each set has 'id' and 'rules' list. - 'catch_all': Actions object for unmatched events (must have 'actions' key). Rules can have 'conditions' and 'actions' (severity, priority, annotate, suppress, event_action, etc.). Get current config first using get_the_service_orchestration_for_a_service, then modify and update. Scoped OAuth requires: `services.write`" }, { "slug": "PAGERDUTY_UPDATE_UNROUTED_ORCHESTRATION_RULES", "name": "Update unrouted orchestration rules", "description": "Updates the unrouted orchestration rules for a specific Event Orchestration in PagerDuty. This endpoint allows you to define how events that don't match any service-specific rules should be handled. It's used to create a fallback mechanism for event routing and manipulation, ensuring that all incoming events are processed appropriately. The update is comprehensive, meaning any omitted rules or rule details from the request will be deleted from the existing configuration. Use this endpoint when you need to modify the global handling of unrouted events, such as changing default severities, updating event summaries, or implementing new routing logic for unmatched events." }, { "slug": "PAGERDUTY_UPDATE_USER_INFORMATION", "name": "Update user information", "description": "Updates an existing user's information in PagerDuty. Modifies user profile attributes including name, email, time zone, role, job title, description, color, and license. Only include fields you want to update in the user object - all fields are optional. Updatable fields: name, email, role, time_zone, job_title, description, color, license Read-only fields (use dedicated endpoints): teams, contact_methods, notification_rules Note: Only include fields you want to change. Some roles require specific account abilities." }, { "slug": "PAGERDUTY_UPDATE_USER_NOTIFICATION_RULE_BY_ID", "name": "Update user status update notification rule by id", "description": "Updates a specific status update notification rule for a PagerDuty user. This endpoint modifies how a user receives notifications about status updates on incidents they're subscribed to (as stakeholders, not as assigned responders). It allows you to change the contact method (email, phone, SMS, or push notification) for receiving these status updates. Note: This is for status update notifications, which are different from incident assignment notifications. Status updates notify subscribers about changes to incidents they're following. The contact method must already exist for the user before it can be associated with a notification rule. Use the user contact methods endpoints to manage available contact methods." }, { "slug": "PAGERDUTY_UPDATE_USER_ROLE_ON_TEAM", "name": "Update user role on team", "description": "Adds a user to a team or updates their role on a team. This endpoint manages team membership by assigning users to teams with specific roles. Use this to: - Add a new user to a team with a specified role - Update an existing team member's role (promote/demote) - Change a user's team permissions and responsibilities The role determines the user's access level within the team context: - 'manager': Can manage team settings, members, and associated resources - 'responder': Can respond to incidents assigned to the team - 'observer': Read-only access to team resources Note: This affects only the user's role for the specified team and does not modify their global account permissions or roles in other teams. Requires the Teams feature which is available on paid PagerDuty plans." }, { "slug": "PAGERDUTY_UPDATE_WORKFLOW_INTEGRATION_CONNECTION", "name": "Update workflow integration connection", "description": "Update an existing Workflow Integration Connection. Updates properties of a workflow integration connection such as name, service URL, authentication settings, and team permissions. This action is idempotent - sending the same update multiple times produces the same result. Scoped OAuth requires: `workflow_integrations:connections.write`" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pagerduty_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "pagerduty_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your PagerDuty API key, obtained from the PagerDuty console.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "toneden", "name": "Toneden", "logo": "https://logos.composio.dev/api/toneden", "description": "ToneDen automates social media campaigns, advertising, and landing pages, particularly for music promoters and event organizers looking to boost audience reach", "category": "social media marketing", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TONEDEN_CREATE_ADVERTISING_CAMPAIGN", "name": "Create Advertising Campaign", "description": "Tool to create a ToneDen advertising campaign on Facebook or Google platforms. Use when you need to launch a new ad campaign with specified budget, targeting, and creatives." }, { "slug": "TONEDEN_CREATE_ATTACHMENT", "name": "Create Attachment", "description": "Tool to create an attachment. Use when you need to programmatically create a social unlock or contest attachment after gathering all required parameters." }, { "slug": "TONEDEN_CREATE_LINK", "name": "Create ToneDen Link", "description": "Tool to create a ToneDen link. Use when you have the target_type and, if needed, the services array. Supports creation of links for music, podcast, livestream, event, tour, biglink, fundraiser, smartlink, and custom types." }, { "slug": "TONEDEN_DELETE_ADVERTISING_CAMPAIGN", "name": "Delete Advertising Campaign", "description": "Deletes a ToneDen advertising campaign by ID using DELETE /advertising/campaigns/{campaignID}." }, { "slug": "TONEDEN_DELETE_LINK", "name": "Delete ToneDen Link", "description": "Deletes a ToneDen link by ID using DELETE /links/{linkID}." }, { "slug": "TONEDEN_DELETE_PLAYBOOK_CAMPAIGN", "name": "Delete ToneDen Playbook Campaign", "description": "Deletes a ToneDen playbook campaign by ID using DELETE /playbooks/campaigns/{campaignID}." }, { "slug": "TONEDEN_EXPAND_LINK_TEMPLATE", "name": "Expand ToneDen Link Template", "description": "Tool to expand a ToneDen link template. Use when you need to retrieve the full template link with your tracking pixels and optional service links. Provide a URL to generate platform services for music or podcast content." }, { "slug": "TONEDEN_GET_ADVERTISING_CAMPAIGN", "name": "Get Advertising Campaign", "description": "Retrieve a specific advertising campaign by its ID using ToneDen's API. Endpoint: GET /advertising/campaigns/{campaignID} Notes: - This endpoint does not require a userID in the path per official docs. - Some accounts may not have advertising access; in such cases, non-2xx responses are still returned here for observability instead of raising, so the caller can inspect the error object." }, { "slug": "TONEDEN_GET_ADVERTISING_CAMPAIGN_CREATIVE_INSIGHTS", "name": "Get Advertising Campaign Creative Insights", "description": "Retrieve creative performance insights for a specific advertising campaign using ToneDen's API. Endpoint: GET /advertising/campaigns/{campaignID}/creativeInsights. Note: Endpoint uses camelCase `creativeInsights` per official docs." }, { "slug": "TONEDEN_GET_ADVERTISING_CAMPAIGN_INSIGHTS", "name": "Get Advertising Campaign Insights", "description": "Retrieve performance insights for a specific advertising campaign using ToneDen's API. Endpoint: GET /advertising/campaigns/{campaignID}/insights." }, { "slug": "TONEDEN_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to retrieve an attachment by ID. Use when you need to fetch details of an existing attachment by its ID." }, { "slug": "TONEDEN_GET_ATTACHMENT_ENTRIES_TIME_SERIES", "name": "Get Attachment Entries Time Series", "description": "Tool to fetch time-series entry statistics for a specific attachment. Use when you need chronological entry data points for an attachment." }, { "slug": "TONEDEN_GET_ATTACHMENT_ENTRIES_TOTALS", "name": "Get Attachment Entries Totals", "description": "Tool to fetch summary counts of entries for an attachment. Use when you need aggregate entry counts over day, week, month, and lifetime." }, { "slug": "TONEDEN_GET_ATTACHMENT_UNLOCKS_BY_PLATFORM", "name": "Get Attachment Unlocks By Platform", "description": "Tool to fetch counts of unlocks by platform for a specific attachment. Use when you need a breakdown of unlocks across platforms like Spotify, Twitter, etc." }, { "slug": "TONEDEN_GET_ATTACHMENT_UNLOCKS_TIME_SERIES", "name": "Get Attachment Unlocks Time Series", "description": "Tool to fetch time-series unlock statistics for a specific attachment. Use when you need chronological unlock data points for an attachment." }, { "slug": "TONEDEN_GET_LINK", "name": "Get Link", "description": "Tool to retrieve a specific ToneDen link by its ID. Use when you need to fetch details about an existing link." }, { "slug": "TONEDEN_GET_LINK_INSIGHTS", "name": "Get Link Insights", "description": "Tool to retrieve detailed insights for a ToneDen link. Use when you have a link ID and need metrics such as clicks, clickthroughs, email clicks, etc." }, { "slug": "TONEDEN_GET_LINK_INSIGHTS_OVERVIEW", "name": "Get Link Insights Overview", "description": "Tool to retrieve a summary overview of a link's performance insights. Use when you have a link ID and need aggregated metrics across platforms." }, { "slug": "TONEDEN_GET_USER", "name": "Get ToneDen User", "description": "Tool to retrieve a specific ToneDen user by ID. Use when you need to fetch user profile information or details about the currently authenticated user." }, { "slug": "TONEDEN_LIST_PLAYBOOK_CAMPAIGNS", "name": "List ToneDen Playbook Campaigns", "description": "Tool to list playbook campaigns. Use when you need to retrieve a paginated list of all playbook campaigns." }, { "slug": "TONEDEN_LIST_USER_ATTACHMENTS", "name": "List User Attachments", "description": "Tool to list attachments for a user. Use when you need to retrieve social unlocks or contest attachments belonging to a specific user." }, { "slug": "TONEDEN_LIST_USER_LISTS", "name": "List User Lists", "description": "Tool to retrieve a list of a user's advertising user lists. Use when you need to fetch all user lists (custom audiences) for a specific ToneDen user." }, { "slug": "TONEDEN_UPDATE_ATTACHMENT", "name": "Update Attachment", "description": "Tool to update an existing attachment. Use when you need to flexibly modify any attachment field (or add custom fields) after its creation." }, { "slug": "TONEDEN_UPDATE_PLAYBOOK_CAMPAIGN", "name": "Update ToneDen Playbook Campaign", "description": "Updates a ToneDen playbook campaign by ID using PUT /playbooks/campaigns/{campaignID}. Note: ToneDen's public docs do not expose the full request body schema for updates. This action sends a flexible JSON payload composed from provided fields and returns diagnostic information without raising on non-2xx responses, to aid real-world testing." }, { "slug": "TONEDEN_UPDATE_USER", "name": "Update ToneDen User", "description": "Tool to update a ToneDen user's profile. Use when you need to modify user details (e.g., name, location, or settings) after fetching them." }, { "slug": "TONEDEN_VALIDATE_LINK_PATH", "name": "Validate Link Path", "description": "Tool to check if a link path/subdomain combination is unique and valid. Use when creating or editing a ToneDen link to verify the path is available." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "toneden_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user,posts,profiles" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "toneden_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ToneDen API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rafflys", "name": "Rafflys", "logo": "https://logos.composio.dev/api/rafflys", "description": "Rafflys hosts giveaways and contests, enabling brands to engage audiences, grow social reach, and reward participants with automated selection processes", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAFFLYS_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve details of the authenticated user. Use when confirming your current account information." }, { "slug": "RAFFLYS_LIST_PROMOTIONS", "name": "List Promotions", "description": "Tool to list all promotions. Use when you need to retrieve available promotions for display or reporting." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rafflys_apikey", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "You can find your API key in your project settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "finage", "name": "Finage", "logo": "https://logos.composio.dev/api/finage", "description": "Finage provides secure RESTful APIs for real-time and historical financial market data covering stocks, forex, cryptocurrencies, indices, ETFs, and commodities.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FINAGE_CONVERT_CRYPTO", "name": "Convert Cryptocurrencies", "description": "Tool to convert cryptocurrencies using real-time exchange rates from the Finage API. Use when you need to convert between different cryptocurrencies (e.g., BTC to ETH, USD to DOGE, SHIB to BTC)." }, { "slug": "FINAGE_CONVERT_CURRENCY", "name": "Convert Currency", "description": "Tool to convert currencies using real-time forex exchange rates from Finage API. Use when you need to convert an amount from one currency to another with current market rates." }, { "slug": "FINAGE_GET_BONDS_RATE", "name": "Get US Treasury Bond Rate", "description": "Retrieve the current interest rate for a US Treasury bond by maturity. Returns the Federal Reserve's constant maturity Treasury (CMT) rate as a percentage. Useful for tracking benchmark interest rates, yield curve analysis, and financial market research." }, { "slug": "FINAGE_GET_COUNTRY_DETAIL", "name": "Get Country Details", "description": "Tool to retrieve detailed information about a country including currency, phone code, and flag. Use when you need country metadata for financial or geographical context." }, { "slug": "FINAGE_GET_CRYPTO_AGGREGATES", "name": "Get Crypto Aggregates", "description": "Tool to retrieve aggregated OHLCV time-series data for cryptocurrency pairs over specified time periods. Use when you need historical tick bars (candlestick data) for crypto trading pairs with customizable timeframes." }, { "slug": "FINAGE_GET_CRYPTO_DETAIL", "name": "Get Crypto Detail", "description": "Tool to get detailed fundamental information about a cryptocurrency including description, developers, website, social media links, and technical details. Use when you need comprehensive background information about a cryptocurrency beyond just price data." }, { "slug": "FINAGE_GET_CRYPTO_DETAILED", "name": "Get Detailed Crypto Information", "description": "This tool fetches detailed cryptocurrency information including current price, price changes, volume, market cap, and historical highs/lows for a specific cryptocurrency pair. Use when comprehensive crypto market data is needed beyond basic price quotes." }, { "slug": "FINAGE_GET_CRYPTO_LAST_QUOTE", "name": "Get Crypto Last Quote", "description": "Tool to get the last quote with bid/ask prices in real-time for a cryptocurrency pair. Use when you need current market data for crypto trading pairs including bid/ask spreads and order sizes." }, { "slug": "FINAGE_GET_CRYPTO_LAST_TRADE", "name": "Get Crypto Last Trade", "description": "Tool to get the latest trade information and prices in real-time for a cryptocurrency pair. Use when you need current pricing data for cryptocurrencies like Bitcoin, Ethereum, or other digital assets." }, { "slug": "FINAGE_GET_CRYPTO_NEWS", "name": "Get Crypto News", "description": "Tool to retrieve real-time and historical news for cryptocurrency markets with fast In-Memory Cache Engine. Use when you need crypto market news, updates on cryptocurrencies, or research on crypto trends for a specific symbol." }, { "slug": "FINAGE_GET_CRYPTO_PREVIOUS_CLOSE", "name": "Get Crypto Previous Close Data", "description": "Tool to get the previous day's closing data for a cryptocurrency pair. Use when you need historical end-of-day data including opening price, highest price, lowest price, closing price, trading volume, and timestamp for crypto pairs." }, { "slug": "FINAGE_GET_CRYPTO_SNAPSHOT", "name": "Get Crypto Snapshot", "description": "Tool to get a comprehensive snapshot of cryptocurrency market data with latest quotes and trades in one request. Use when you need broad crypto market coverage or real-time data for multiple cryptocurrency pairs simultaneously." }, { "slug": "FINAGE_GET_CURRENCY_DETAIL", "name": "Get Currency Detail", "description": "Tool to get detailed information about a forex currency pair including currency codes and country flags. Use when you need to retrieve metadata about a specific currency pair such as the base and quote currencies." }, { "slug": "FINAGE_GET_FOREX_LAST_QUOTE", "name": "Get Forex Last Quote", "description": "Tool to get the latest real-time bid/ask quote for a forex pair or metal (e.g., GBPUSD, XAUUSD). Use when you need current market data for forex trading pairs or commodities including bid/ask spreads." }, { "slug": "FINAGE_GET_FOREX_LAST_TRADE", "name": "Get Forex Last Trade", "description": "Tool to get the last trade information for a forex currency pair. Use when you need current price data for forex trading pairs like EURUSD or GBPUSD." }, { "slug": "FINAGE_GET_FOREX_MARKET_AGGREGATES", "name": "Get Forex Market Aggregates", "description": "Tool to retrieve aggregated OHLCV (Open, High, Low, Close, Volume) data for forex and metal pairs over specified time periods. Use when you need historical or intraday bars for forex pairs (e.g., GBPUSD, EURUSD) or metals (e.g., XAUUSD for gold). Supports multiple timeframes from minute-level to yearly aggregations for trends, highs/lows, and backtesting use cases." }, { "slug": "FINAGE_GET_FOREX_NEWS", "name": "Get Forex News", "description": "Tool to retrieve real-time and historical news for forex markets from Finage's API. Use when you need forex market news, currency updates, or research on forex trends for a specific currency symbol." }, { "slug": "FINAGE_GET_FOREX_PREVIOUS_CLOSE", "name": "Get Forex Previous Close Data", "description": "Tool to get the previous day's closing data for a forex currency pair. Use when you need historical end-of-day data including opening price, highest price, lowest price, closing price, trading volume, and timestamp for forex pairs." }, { "slug": "FINAGE_GET_FOREX_SNAPSHOT", "name": "Get Forex Snapshot", "description": "Tool to get a comprehensive snapshot of forex market data with latest quotes and trades in one request. Use when you need broad forex market coverage or real-time data for multiple currency pairs simultaneously." }, { "slug": "FINAGE_GET_MOST_ACTIVE_STOCKS", "name": "Get Most Active US Stocks", "description": "Tool to get a list of the most actively traded US stocks. Use when you need to identify which stocks are experiencing the highest trading volume in the current market session." }, { "slug": "FINAGE_GET_SEC_RSS_FEED", "name": "Get SEC RSS Feed", "description": "Tool to retrieve the SEC RSS feed for recent EDGAR filings. Use when you need information about recent SEC filings including title, date, link, CIK, form type, and ticker symbol." }, { "slug": "FINAGE_GET_SECTOR_PERFORMANCE", "name": "Get Sector Performance", "description": "Tool to retrieve performance metrics across US market sectors. Use when you need to analyze sector-level market trends or compare performance across different industries." }, { "slug": "FINAGE_GET_STOCK_COMPANY_DETAILS", "name": "Get Stock Company Details", "description": "Tool to retrieve detailed company information and stock fundamentals for a given ticker symbol. Use when you need comprehensive information about a company including CEO, description, industry, sector, market cap, employee count, and headquarters details." }, { "slug": "FINAGE_GET_STOCK_HISTORICAL_DATA", "name": "Get Stock Historical Data (Deprecated)", "description": "DEPRECATED: Use FINAGE_GET_STOCK_MARKET_AGGREGATES instead. Fetches historical OHLCV (open, high, low, close, volume) data for US stocks from Finage API. Returned timestamps are UTC-aligned; non-trading days are omitted entirely — do not treat date gaps as zero values. Ensure from_date/to_date are past UTC dates to avoid partial or future bars. Requirements: - Symbols must be alphabetic US ticker symbols in English - No numeric-only symbols - No exchange prefixes or suffixes - Standard ticker format only (typically 1-5 characters) For supported symbols and complete documentation, visit: https://finage.co.uk/docs" }, { "slug": "FINAGE_GET_STOCK_LAST_QUOTE", "name": "Get Stock Last Quote", "description": "Fetches the latest single-tick quote for a stock symbol, returning a JSON object with fields: symbol, ask, bid, asize, bsize, and timestamp. Suitable for real-time trading and market analysis. During pre/post-market or closed sessions, the returned quote may be stale — always compare the timestamp field against current UTC before treating data as live. Returns only the latest tick; not a substitute for historical or charted series data. Rate-limited: throttle to 2–5 requests/second and honor Retry-After headers on HTTP 429." }, { "slug": "FINAGE_GET_STOCK_LAST_TRADE", "name": "Get Stock Last Trade", "description": "Tool to get the most recent trade information for a specified US stock symbol. Use when you need real-time price and volume data from the latest executed trade." }, { "slug": "FINAGE_GET_STOCK_MARKET_AGGREGATES", "name": "Get Stock Market Aggregates", "description": "Retrieves aggregated OHLCV (Open, High, Low, Close, Volume) data for US stocks only. Supports stock symbols like AAPL, MSFT, GOOGL. Does NOT support forex pairs (EUR/USD, GBP/USD), commodities (XAU/USD for gold), or cryptocurrencies - those require separate forex/crypto endpoints. All returned timestamps are in UTC." }, { "slug": "FINAGE_GET_STOCK_MARKET_NEWS", "name": "Get Stock Market News", "description": "This tool retrieves the latest market news from Finage's API. It provides comprehensive market news and updates, including news filtering by specific stock symbols, thereby supporting real-time market insights, investment decisions, and research on market trends." }, { "slug": "FINAGE_GET_STOCK_MARKET_STATUS", "name": "Get Stock Market Status", "description": "Tool to check if stock, forex, and crypto markets are open, closed, or in extended hours. Use when you need to determine current market status with optional country, holidays, and trading hours information." }, { "slug": "FINAGE_GET_STOCK_PREVIOUS_CLOSE", "name": "Get Stock Previous Close Data", "description": "This tool retrieves the previous day's closing data for a specific stock symbol. It provides essential trading information including the opening price, highest price, lowest price, closing price, trading volume, and timestamp for the previous trading day. It complements other Finage tools by offering detailed previous day data, which is useful for computing day-over-day change and informing daily trading analysis. REQUIRED PARAMETERS: - symbol: A valid stock ticker symbol (e.g., 'AAPL', 'MSFT', 'GOOGL'). You MUST provide this parameter. OPTIONAL PARAMETERS: - date: Specific date in YYYY-MM-DD format for historical data - unadjusted: Boolean to control whether prices are adjusted for splits" }, { "slug": "FINAGE_GET_STOCK_SNAPSHOT", "name": "Get Stock Snapshot", "description": "Tool to get comprehensive snapshot of all US stock market data including latest quotes and trades with one single API request. Use when you need current market data for multiple stocks efficiently." }, { "slug": "FINAGE_GET_TECHNICAL_INDICATORS", "name": "Get Technical Indicators", "description": "Tool to get technical indicators and signals for stocks from Finage API. Use when you need to analyze stock trends with technical indicators like moving averages (SMA, EMA, WMA), momentum indicators (RSI, Williams %R), or trend indicators (ADX). Returns historical OHLCV data along with calculated indicator values." }, { "slug": "FINAGE_GET_TOP_GAINERS", "name": "Get Top Gaining US Stocks", "description": "Tool to get list of top gaining US stocks by percentage change. Use when you need to identify the best performing stocks in the US market. Returns symbol, price, change amount, change percentage, and company name for each stock." }, { "slug": "FINAGE_GET_TOP_LOSERS", "name": "Get Top Losing US Stocks", "description": "Tool to get list of top losing US stocks by percentage change. Use when you need to identify the worst performing stocks in the US market. Returns symbol, price, change amount, change percentage, and company name for each stock." }, { "slug": "FINAGE_LIST_CRYPTOCURRENCIES", "name": "List Cryptocurrencies by Market Cap", "description": "Tool to get a list of all available cryptocurrencies ranked by market capitalization. Use when you need to discover cryptocurrencies by market cap, find top crypto assets, or browse paginated crypto data. Results can be sorted by market cap in ascending or descending order." }, { "slug": "FINAGE_LIST_SYMBOLS", "name": "List Symbols by Market Type", "description": "Tool to get a paginated list of all available symbols for a specified market type (us-stock, ca-stock, in-stock, ru-stock, forex, crypto, index). Use when you need to discover available symbols for trading, search for specific symbols by name or ticker, or browse symbols by market category. Supports pagination for large result sets and optional search filtering." }, { "slug": "FINAGE_SEARCH_COUNTRY", "name": "Search Country", "description": "Tool to search for countries by name and retrieve their details including country code, currency, flag, and phone code. Use when you need to find country information based on a partial or full country name match." }, { "slug": "FINAGE_SEARCH_CRYPTOCURRENCY", "name": "Search Cryptocurrency", "description": "Tool to search for cryptocurrencies by name or symbol. Use when you need to find cryptocurrency information, discover available crypto symbols, or validate cryptocurrency identifiers." }, { "slug": "FINAGE_SEARCH_CURRENCY", "name": "Search Currency", "description": "Tool to search for currency pairs and forex symbols by currency code or partial match. Use when you need to discover available currency pairs, find forex symbols, or search for currencies by code (e.g., USD, EUR)." }, { "slug": "FINAGE_SEARCH_MARKET", "name": "Search Market for Stocks", "description": "Tool to search for stocks in a specific market by company name or symbol. Use when you need to find stock symbols by partial matches, discover available stocks, or look up ticker symbols by company name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "finage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Finage API Key", "type": "string", "description": "Your Finage API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fomo", "name": "Fomo", "logo": "https://logos.composio.dev/api/fomo", "description": "Fomo is a social proof marketing platform that displays real-time user activity notifications on websites to build trust and increase conversions.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FOMO_CREATE_FOMO_EVENT", "name": "Create Fomo Event", "description": "Tool to create a new social proof event in Fomo. Use when you want to display an animated notification on your website showing recent customer activity. Events are created based on notification templates (event_type_id) and can include customer details, location, and product information." }, { "slug": "FOMO_CREATE_FOMO_TEMPLATE", "name": "Create Fomo Template", "description": "Tool to create a Template (Event Type) in Fomo. Use when building 3rd party Fomo integrations. Templates define the message structure for notification events and can include markdown formatting, custom images, avatar support, and IP-based location mapping." }, { "slug": "FOMO_DELETE_FOMO_EVENT", "name": "Delete Fomo Event", "description": "Tool to delete a Fomo event by ID. Permanently removes the notification event from the application. Use when you need to remove a specific event from your Fomo account." }, { "slug": "FOMO_GET_FOMO_EVENT", "name": "Get Fomo Event", "description": "Tool to retrieve a single event by ID from Fomo. Use when you need to fetch details of a specific notification event using its unique identifier." }, { "slug": "FOMO_GET_STATISTICS", "name": "Get Fomo Statistics", "description": "Tool to fetch notification impressions, clicks, and conversion data for your Fomo application. Returns analytics statistics within a specified date range. Use when you need to analyze notification performance metrics." }, { "slug": "FOMO_LIST_EVENTS", "name": "List Fomo Events", "description": "Tool to retrieve all notification events from your Fomo application. Use when you need to list, query, or paginate through events. Supports pagination, sorting, and optional metadata about total event counts." }, { "slug": "FOMO_SEARCH_EVENT", "name": "Search Event", "description": "Tool to search for a specific Fomo event by external_id or email_address. Use when you need to find a single event using a unique identifier. Returns the full event details if found." }, { "slug": "FOMO_UPDATE_APPLICATION", "name": "Update Application Settings", "description": "Tool to update Fomo application settings including display configuration, notification behavior, theme, position, and UTM tracking parameters. Use when you need to modify widget appearance, timing, or tracking settings for a Fomo application." }, { "slug": "FOMO_UPDATE_EVENT", "name": "Update Fomo Event", "description": "Tool to update an existing Fomo event. Changes key-value pairs of an event such as location, name, title, or custom fields. Use when you need to modify event properties after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fomo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Fomo Auth Token", "type": "string", "description": "The authentication token required for accessing the Fomo API. Obtain this token from your Fomo dashboard under Settings > Site for your website.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bannerbear", "name": "Bannerbear", "logo": "https://logos.composio.dev/api/bannerbear", "description": "Bannerbear offers an automated image and video generation API, allowing businesses to create graphics, social media visuals, and marketing collateral with customizable templates at scale", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 33, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BANNERBEAR_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new Bannerbear project with the specified name and optional settings. Use this tool to create new projects for organizing templates and API resources. Note: This action requires a Master API Key. Project-specific API keys cannot create new projects." }, { "slug": "BANNERBEAR_CREATE_SIGNED_BASE", "name": "Create Signed Base", "description": "Tool to create a signed URL base for a template. Used for generating images via signed URLs. Signed bases enable on-demand image generation using encrypted URL parameters without requiring API calls for each image. Use when you need to create dynamic images through URL manipulation." }, { "slug": "BANNERBEAR_CREATE_TEMPLATE", "name": "Create Template", "description": "Create a new blank template in a Bannerbear project. Use when you need to programmatically create templates via API. Note: Templates can only be created via API if you have a Master API Key." }, { "slug": "BANNERBEAR_CREATE_TEMPLATE_SET", "name": "Create Template Set", "description": "Tool to create a new template set by grouping multiple templates together. Use when you need to organize related templates into a single set for batch image generation. Template sets allow you to apply the same modifications to multiple templates simultaneously via a single API call." }, { "slug": "BANNERBEAR_CREATE_VIDEO_TEMPLATE", "name": "Create Video Template", "description": "Tool to create a new video template for video generation in Bannerbear. Video templates are based on existing image templates and hold additional rendering instructions for creating videos. Use when you need to set up a reusable template for generating videos with overlays, transcriptions, or multi-layer video compositions." }, { "slug": "BANNERBEAR_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a project-level webhook that fires for all events of a specific type. Use this tool to register a URL that will receive POST requests when events occur in your Bannerbear project. Note: When using a Master API Key, you must provide a project_id parameter. Project API Keys do not require project_id." }, { "slug": "BANNERBEAR_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template referenced by its unique ID. Use when you need to permanently remove a template from a Bannerbear project. Note: This action requires a project_id when using a Master API Key." }, { "slug": "BANNERBEAR_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook referenced by its unique ID. Use when you need to remove a webhook that is no longer needed. Requires the webhook UID and project ID (when using Master API Key)." }, { "slug": "BANNERBEAR_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Retrieves Bannerbear account information including subscription plan, API usage, and quota limits. Use this tool to: - Check current API usage and remaining quota (resets monthly) - Verify the subscription plan - Get details about the current project Note: When using a Master API Key, you must provide a project_id parameter. Project API Keys do not require project_id." }, { "slug": "BANNERBEAR_GET_ANIMATED_GIF", "name": "Get Animated GIF", "description": "Tool to retrieve a single Animated Gif object by its unique identifier (UID). Use when you need to check the status of a specific animated GIF, get its rendered URL, or retrieve detailed information about its configuration. The status field indicates the rendering progress: 'pending' (still processing), 'completed' (ready with image_url populated), or 'failed'. Poll this endpoint to monitor rendering progress, or use webhook_url for automatic notifications." }, { "slug": "BANNERBEAR_GET_AUTH", "name": "Get Auth Status", "description": "Verify API authentication and check which project the API key is scoped to. Use this to validate credentials before making other API calls or to confirm the project context." }, { "slug": "BANNERBEAR_GET_FONTS", "name": "Get Available Fonts", "description": "This tool retrieves a list of all available fonts in Bannerbear. The fonts are categorized into Serif, Sans Serif, Novelty, International, and Custom, and can be used to verify font availability prior to creating or modifying images." }, { "slug": "BANNERBEAR_GET_IMAGE", "name": "Get Image", "description": "Retrieves a single Image object by its unique identifier (UID). Use this to check the status of an image generation request, retrieve the final image URL, or poll for completion. When using a Master API Key, you must provide the project_id parameter." }, { "slug": "BANNERBEAR_GET_PROJECT", "name": "Get Project", "description": "Retrieves detailed information about a specific Bannerbear project by its unique identifier (UID). Use this tool to get project details including name, creation date, template count, and feature settings." }, { "slug": "BANNERBEAR_GET_SCREENSHOT", "name": "Get Screenshot", "description": "Retrieve a single Screenshot object referenced by its unique ID. Use when you need to check the status or get the final screenshot URL for a previously created screenshot." }, { "slug": "BANNERBEAR_GET_SIGNED_BASES", "name": "Get Signed Bases", "description": "This tool retrieves a list of signed bases for a specific template. Signed bases are used to generate on-demand images using encrypted URL parameters. The endpoint returns a list of base URLs that can be used with the Signed URL feature." }, { "slug": "BANNERBEAR_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve a single template by its unique ID with layer defaults. Use when you need to get detailed information about a specific template including its dimensions, available modifications, and layer structure." }, { "slug": "BANNERBEAR_GET_TEMPLATE_SET", "name": "Get Template Set Details", "description": "This tool retrieves detailed information about a specific template set using its unique identifier (UID). Template Sets are sets of Templates that you group together in the Bannerbear dashboard. It provides comprehensive details about the template set including its name, available modifications, and the list of templates inside the set." }, { "slug": "BANNERBEAR_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves a single Webhook object by its unique ID. Use this to get details about a specific webhook including its URL, event type, and creation timestamp." }, { "slug": "BANNERBEAR_HYDRATE_PROJECT", "name": "Hydrate Project", "description": "Hydrate a project by copying templates from another project. Useful for white-label setups where you need to duplicate templates across multiple projects. Both the source and destination projects must be under the same account." }, { "slug": "BANNERBEAR_IMPORT_TEMPLATE", "name": "Import Template", "description": "Tool to import templates from the Bannerbear template library or from other projects. Use when you need to add publicly-available templates to your project. Note: Only publication IDs (public templates) can be imported, not private template IDs." }, { "slug": "BANNERBEAR_JOIN_PDFS", "name": "Join PDFs", "description": "Merges multiple PDF files into a single combined PDF document. This tool accepts an array of publicly accessible PDF URLs and combines them in order into one merged PDF file. The operation is asynchronous - the response will initially have status 'pending' and you should poll the 'self' endpoint or use a webhook to get the final 'joined_pdf_url' when status becomes 'completed'. Note: When using a Master API Key (account-level key), you must provide the project_id parameter." }, { "slug": "BANNERBEAR_LIST_ANIMATED_GIFS", "name": "List Animated GIFs", "description": "Lists all animated GIFs in a Bannerbear project. Retrieves a paginated list of all animated GIFs that have been created in your Bannerbear project. When using a Master API Key, you must provide the project_id parameter. Returns up to 25 animated GIFs per page by default, configurable up to 100 using the limit parameter." }, { "slug": "BANNERBEAR_LIST_COLLECTIONS", "name": "List Collections", "description": "Lists all collections in a Bannerbear project. Retrieves a paginated list of all collections that have been created in your Bannerbear project. When using a Master API Key, you must provide the project_id parameter. Returns up to 25 collections per page by default, configurable up to 100 using the limit parameter." }, { "slug": "BANNERBEAR_LIST_EFFECTS", "name": "List Effects", "description": "Tool to list all available image effects in Bannerbear. Use when you need to discover which effects can be applied to images or templates in the Bannerbear API." }, { "slug": "BANNERBEAR_LIST_IMAGES", "name": "List Images", "description": "Lists all images in a Bannerbear project. Retrieves a paginated list of all images that have been created in your Bannerbear project. When using a Master API Key, you must provide the project_id parameter. Returns up to 25 images per page by default, configurable up to 100 using the limit parameter." }, { "slug": "BANNERBEAR_LIST_PROJECTS", "name": "List Projects", "description": "Lists all projects in a Bannerbear account. This action retrieves a paginated list of all projects in your Bannerbear account. Use when you need to discover available projects or obtain project UIDs for other actions. Requires a Master API Key (not a project-specific API key)." }, { "slug": "BANNERBEAR_LIST_SCREENSHOTS", "name": "List Screenshots", "description": "Lists all screenshots in a Bannerbear project. Retrieves a paginated list of all screenshots that have been created in your Bannerbear project. When using a Master API Key, you must provide the project_id parameter. Returns up to 25 screenshots per page by default, configurable up to 100 using the limit parameter." }, { "slug": "BANNERBEAR_LIST_TEMPLATES", "name": "List Templates", "description": "This action retrieves a list of all templates available in your Bannerbear project. It returns an array of template objects including properties like uid, name, dimensions, creation and update timestamps, template type, preview URL, and modifications. The tool is used for listing templates, retrieving template UIDs for subsequent actions such as image or video creation, and managing project templates." }, { "slug": "BANNERBEAR_LIST_TEMPLATE_SETS", "name": "List Template Sets", "description": "Tool to list all template sets inside a project with pagination support. Template Sets are groups of Templates that you organize in the Bannerbear dashboard. Use when you need to retrieve all template sets or paginate through them." }, { "slug": "BANNERBEAR_LIST_VIDEOS", "name": "List Videos", "description": "This action retrieves a list of all videos created in your Bannerbear account. It returns an array of video objects including properties like uid, status, timestamps, video and preview URLs, as well as template and modification details. The tool is used for listing videos, monitoring video status, and managing project videos." }, { "slug": "BANNERBEAR_LIST_VIDEO_TEMPLATES", "name": "List Video Templates", "description": "This action retrieves a list of all video templates available in your Bannerbear project. It returns an array of video template objects including properties like uid, name, dimensions, and creation timestamps. The tool is used for listing video templates and retrieving template UIDs for subsequent video creation actions." }, { "slug": "BANNERBEAR_UPDATE_TEMPLATE_SET", "name": "Update Template Set", "description": "Tool to update a template set by modifying its list of templates. The template set will be cleared first and the new list applied. Use when you need to change which templates are included in a template set. Template Sets are sets of Templates that you group together in the Bannerbear dashboard." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bannerbear_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Bannerbear API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "miro", "name": "Miro", "logo": "https://logos.composio.dev/api/miro", "description": "Miro is a collaborative online whiteboard enabling teams to brainstorm ideas, design wireframes, plan workflows, and manage projects visually", "category": "team collaboration", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 81, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MIRO_ATTACH_TAG_TO_ITEM", "name": "Attach Tag To Item", "description": "Tool to attach an existing tag to a specific item on a Miro board. Use when you need to associate a tag with an item after confirming the board, item, and tag IDs. Note that card and sticky note items can have up to 8 tags." }, { "slug": "MIRO_CREATE_APP_CARD_ITEM", "name": "Create App Card Item", "description": "Tool to add an app card item to a board. Use when you need to push a rich preview card with custom fields into a Miro board. Returns the created card; the card ID is nested under data.id in the response, not at the top level. Burst writes may trigger HTTP 429; honor the Retry-After header before retrying." }, { "slug": "MIRO_CREATE_BOARD", "name": "Create Board", "description": "Tool to create a new board. Use when you need to set up a board with a specific name, description, and policies. Example: \"Create a new board named Project Plan\". If workspace board quota is reached, returns HTTP 400; use MIRO_GET_BOARDS to reuse an existing board instead." }, { "slug": "MIRO_CREATE_CARD_ITEM", "name": "Create Card Item", "description": "Tool to create a card item on a Miro board. Use when you need to add task cards with titles, descriptions, due dates, and assignees." }, { "slug": "MIRO_CREATE_CONNECTOR", "name": "Create Connector", "description": "Tool to create a connector (edge/arrow) that links two existing board items. Use after creating or locating the two endpoint items (shapes/cards/stickies) to establish visual relationships in flowcharts and diagrams. Both start and end items must be specified; connectors cannot be created with loose endpoints." }, { "slug": "MIRO_CREATE_DOCUMENT_ITEM", "name": "Create Document Item", "description": "Tool to create a document item on a Miro board by providing a URL to the document. Use when you need to attach a document (PDF, DOC, etc.) to a board from a publicly accessible URL." }, { "slug": "MIRO_CREATE_DOCUMENT_ITEM_USING_FILE_FROM_DEVICE", "name": "Create Document Item Using File From Device", "description": "Tool to create a document item on a Miro board using a URL to the document. Use when you need to add a document (PDF, DOC, etc.) to a board from a publicly accessible URL." }, { "slug": "MIRO_CREATE_EMBED_ITEM", "name": "Create Embed Item", "description": "Tool to create an embed item on a Miro board by providing a URL to embed content (YouTube videos, websites, etc.). Use when you need to add embedded content from external sources to a board." }, { "slug": "MIRO_CREATE_FRAME_ITEM", "name": "Create Frame Item", "description": "Tool to add a frame item to a Miro board. Use frames to group and organize diagram regions (e.g., swimlanes, sections, slides)." }, { "slug": "MIRO_CREATE_FRAME_ITEM2", "name": "Create Frame (Deprecated)", "description": "DEPRECATED: Use MIRO_CREATE_FRAME_ITEM instead. Tool to create a frame on a Miro board. Use when you need to group and organize content into sections or containers." }, { "slug": "MIRO_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a group on a Miro board by grouping multiple items together. Use when you need to organize related board items (shapes, sticky notes, cards, etc.) into a single logical group." }, { "slug": "MIRO_CREATE_IMAGE_ITEM_FROM_URL", "name": "Create Image Item from URL", "description": "Creates an image item on a Miro board by providing a URL to a publicly accessible image. This action adds images from external URLs rather than uploading files from local storage. Use this action when you have an image hosted online (e.g., on a CDN, image hosting service, or public URL) and want to add it to a Miro board without downloading and re-uploading the file." }, { "slug": "MIRO_CREATE_IMAGE_ITEM_USING_LOCAL_FILE", "name": "Create Image Item Using Local File", "description": "Tool to create an image item on a Miro board by uploading a local image file. Use when you need to add an image from the user's device to a board, rather than referencing an external URL." }, { "slug": "MIRO_CREATE_ITEMS_IN_BULK", "name": "Create Items in Bulk", "description": "Tool to create multiple items on a Miro board in a single request. Use when you need to add 1-20 items (text, sticky notes, shapes, cards, frames, etc.) efficiently. Items are created atomically in one API call." }, { "slug": "MIRO_CREATE_MINDMAP_NODE_EXPERIMENTAL", "name": "Create Mind Map Node (Experimental)", "description": "Tool to create a mind map node on a Miro board. Use when building mind maps or organizing ideas visually in a hierarchical structure. This is an experimental endpoint." }, { "slug": "MIRO_CREATE_SHAPE_ITEM", "name": "Create Shape Item (Deprecated)", "description": "DEPRECATED: Use MIRO_MIRO_CREATE_SHAPE_ITEM2 instead. Tool to create a native Miro shape item (diagram node) on a board. Use when building diagrams, flowcharts, or architecture diagrams with shapes that can then be connected via MIRO_CREATE_CONNECTOR." }, { "slug": "MIRO_CREATE_SHAPE_ITEM2", "name": "Create Shape Item", "description": "Tool to create a shape item on a Miro board. Use when you need to add shapes (basic or flowchart) to a board with specific styling and positioning." }, { "slug": "MIRO_CREATE_STICKY_NOTE_ITEM", "name": "Create Sticky Note Item", "description": "Tool to create a sticky note item on a Miro board. Use when you need to add a new sticky note with customizable content, color, shape, and position." }, { "slug": "MIRO_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag on a Miro board. Use when you need to add a new tag with a specific title and color to categorize board items." }, { "slug": "MIRO_CREATE_TEXT_ITEM", "name": "Create Text Item", "description": "Tool to create a text item on a Miro board. Use when you need to add text content to a board, such as labels, notes, or annotations." }, { "slug": "MIRO_DELETE_APP_CARD_ITEM", "name": "Delete App Card Item", "description": "Tool to delete an app card item from a board. Use when you need to remove an app card item created by your app after it is no longer needed." }, { "slug": "MIRO_DELETE_CARD_ITEM", "name": "Delete Card Item", "description": "Tool to delete a card item from a board. Use when you need to remove a card item from a Miro board after it is no longer needed." }, { "slug": "MIRO_DELETE_CONNECTOR", "name": "Delete Connector", "description": "Tool to delete a specific connector from a board. Use when you need to remove a connector (edge/arrow) between board items after confirming its board and connector IDs." }, { "slug": "MIRO_DELETE_DOCUMENT_ITEM", "name": "Delete Document Item", "description": "Tool to delete a document item from a board. Use when you need to remove a document item (e.g., PDF or image) that is no longer relevant. Example: \"Delete the document item with ID 'item456' from board 'board123'.\"" }, { "slug": "MIRO_DELETE_EMBED_ITEM", "name": "Delete Embed Item", "description": "Tool to delete an embed item from a board. Use when you need to remove an embedded content item (e.g., YouTube video, website) that is no longer needed." }, { "slug": "MIRO_DELETE_FRAME_ITEM", "name": "Delete Frame Item", "description": "Tool to delete a frame item from a Miro board. Use when you need to remove a frame that groups or organizes content on the board." }, { "slug": "MIRO_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group from a board. Use when you need to remove a group and optionally its items." }, { "slug": "MIRO_DELETE_IMAGE_ITEM", "name": "Delete Image Item", "description": "Tool to delete an image item from a board. Use when you need to remove an image that is no longer needed." }, { "slug": "MIRO_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete a specific item from a board. Use when you need to remove an item (e.g., shape, sticky note) after confirming its board and item IDs." }, { "slug": "MIRO_DELETE_MINDMAP_NODE_EXPERIMENTAL", "name": "Delete Mind Map Node (Experimental)", "description": "Tool to delete a mind map node from a board. Use when you need to remove a mind map node after confirming its board and item IDs. This is an experimental endpoint." }, { "slug": "MIRO_DELETE_SHAPE_ITEM", "name": "Delete Shape Item", "description": "Tool to delete a shape item from a board. Use when you need to remove a specific shape that is no longer needed after confirming its board and item IDs." }, { "slug": "MIRO_DELETE_STICKY_NOTE_ITEM", "name": "Delete Sticky Note Item", "description": "Tool to delete a sticky note item from a board. Use when you need to remove a sticky note that is no longer needed." }, { "slug": "MIRO_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a specific tag from a board. Use when you need to remove a tag after confirming its board and tag IDs." }, { "slug": "MIRO_DELETE_TEXT_ITEM", "name": "Delete Text Item", "description": "Tool to delete a text item from a board. Use when you need to remove a text item after confirming its board and item IDs." }, { "slug": "MIRO_GET_ALL_GROUPS", "name": "Get All Groups", "description": "Tool to retrieve all groups on a Miro board with cursor-based pagination. Use when you need to list all groups and their associated items on a board." }, { "slug": "MIRO_GET_APP_CARD_ITEM2", "name": "Get App Card Item 2", "description": "Tool to retrieve a specific app card item by its ID from a Miro board. Use when you need to get the details of an existing app card item." }, { "slug": "MIRO_GET_BOARD", "name": "Get Board (Deprecated)", "description": "DEPRECATED: Use MIRO_GET_SPECIFIC_BOARD instead. Tool to retrieve details of a specific board. Use when you have a board ID and need to fetch its metadata." }, { "slug": "MIRO_GET_BOARD_ITEMS", "name": "Get Board Items", "description": "Tool to list items on a Miro board (shapes, stickies, cards, etc.) with pagination. Use when you need to page through board elements for analytics or reporting. Re-fetch before bulk updates to avoid stale item IDs." }, { "slug": "MIRO_GET_BOARD_MEMBERS", "name": "Get Board Members", "description": "Tool to retrieve a list of members for a board. Use when you need to list all users with access to a board after confirming its ID. Results are scoped to the authenticated user's permissions; members or boards inaccessible to that user will not appear in the response." }, { "slug": "MIRO_GET_BOARDS", "name": "Get Boards (Deprecated)", "description": "DEPRECATED: Use MIRO_MIRO_GET_BOARDS2 instead. Tool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords. Only boards accessible to the authenticated user are returned." }, { "slug": "MIRO_GET_BOARDS2", "name": "Get Boards V2", "description": "Tool to retrieve accessible boards with optional filters. Use when you need to list or search boards by team, project, owner, or keywords with full pagination support." }, { "slug": "MIRO_GET_CARD_ITEM", "name": "Get Card Item", "description": "Tool to retrieve a specific card item from a Miro board. Use when you need to fetch details of an existing card item by its ID." }, { "slug": "MIRO_GET_CONNECTOR", "name": "Get Connector", "description": "Tool to retrieve a specific connector by its ID. Use when you need details about an existing connector on a board." }, { "slug": "MIRO_GET_CONNECTORS", "name": "Get Connectors", "description": "Tool to retrieve a list of connectors on a board. Use after confirming the board ID and when you need to page through connector items." }, { "slug": "MIRO_GET_DOCUMENT_ITEM", "name": "Get Document Item", "description": "Tool to retrieve a specific document item from a Miro board by its ID. Use when you need to get details about an existing document item." }, { "slug": "MIRO_GET_EMBED_ITEM", "name": "Get Embed Item", "description": "Tool to retrieve a specific embed item from a board by its ID. Use when you need details of an existing embedded content item." }, { "slug": "MIRO_GET_FRAME_ITEM", "name": "Get Frame Item", "description": "Tool to retrieve a specific frame item from a Miro board. Use when you need to fetch details of an existing frame by its ID." }, { "slug": "MIRO_GET_GROUP_BY_ID", "name": "Get Group By ID", "description": "Tool to retrieve a specific group by its ID. Use when you need to get details about a group on a Miro board." }, { "slug": "MIRO_GET_IMAGE_ITEM", "name": "Get Image Item", "description": "Tool to retrieve a specific image item from a board. Use when you need to get details about an existing image item." }, { "slug": "MIRO_GET_ITEMS_BY_GROUP_ID", "name": "Get Items by Group ID", "description": "Tool to retrieve items of a specific group by its ID on a Miro board. Use when you need to fetch all items belonging to a particular group." }, { "slug": "MIRO_GET_ITEMS_WITHIN_FRAME", "name": "Get Items Within Frame", "description": "Get items within a specific frame on a Miro board. Retrieves child items contained within a frame by filtering with parent_item_id parameter. Use this action when you need to list all items (shapes, sticky notes, cards, etc.) that are nested inside a specific frame. This is useful for analyzing or processing frame contents." }, { "slug": "MIRO_GET_ITEM_TAGS", "name": "Get Item Tags", "description": "Tool to retrieve tags attached to a specific item on a Miro board. Use when you need to get the tags associated with a particular item." }, { "slug": "MIRO_GET_MINDMAP_NODE_EXPERIMENTAL", "name": "Get Mind Map Node", "description": "Tool to retrieve a specific mind map node from a board. Use when you need to get details about a mind map node by its ID." }, { "slug": "MIRO_GET_MINDMAP_NODES_EXPERIMENTAL", "name": "Get Mind Map Nodes (Experimental)", "description": "Tool to retrieve mind map nodes from a Miro board. Use when you need to access the structure and content of mind maps on a board." }, { "slug": "MIRO_GET_OEMBED", "name": "Get oEmbed Data", "description": "Tool to retrieve oEmbed data for a Miro board. Use when you need to generate embeddable HTML code for a board or get board metadata in oEmbed format." }, { "slug": "MIRO_GET_SHAPE_ITEM", "name": "Get Shape Item", "description": "Tool to retrieve a specific shape item from a Miro board by its ID. Use when you need to get details of an existing shape item." }, { "slug": "MIRO_GET_SPECIFIC_BOARD", "name": "Get Specific Board", "description": "Tool to retrieve detailed information about a specific board by its ID. Use when you need to fetch complete metadata including team, permissions, owner, and modification details for a board." }, { "slug": "MIRO_GET_SPECIFIC_BOARD_MEMBER", "name": "Get Specific Board Member", "description": "Tool to retrieve details of a specific board member. Use when you have a board ID and board member ID and need to get that member's role and information." }, { "slug": "MIRO_GET_SPECIFIC_ITEM", "name": "Get Specific Item", "description": "Tool to retrieve a specific item from a Miro board by its ID. Use when you need details about a particular board item (sticky note, shape, card, frame, etc.)." }, { "slug": "MIRO_GET_STICKY_NOTE_ITEM", "name": "Get Sticky Note Item", "description": "Tool to retrieve a specific sticky note item from a board by its ID. Use when you need to get the details of an existing sticky note item." }, { "slug": "MIRO_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve details of a specific tag on a board. Use when you have a board ID and tag ID and need its metadata." }, { "slug": "MIRO_GET_TEXT_ITEM", "name": "Get Text Item", "description": "Tool to retrieve a specific text item from a Miro board by its ID. Use when you need to get the details of an existing text item." }, { "slug": "MIRO_LIST_BOARD_TAGS", "name": "List Board Tags", "description": "Tool to list all tags on a Miro board. Use when you need to discover tag IDs, titles, or colors before performing tag operations." }, { "slug": "MIRO_LIST_ORGANIZATIONS", "name": "Get Organization Context", "description": "Retrieves the organization associated with the current access token. Note: Miro's API does not have an endpoint to list all organizations a user has access to. This action uses the /v1/oauth-token endpoint to return the single organization context associated with the authenticated token, along with team and user information. For Enterprise users who need to work with organizations, use organization-specific endpoints like MIRO_GET_ORGANIZATION_MEMBERS which require an org_id parameter." }, { "slug": "MIRO_REMOVE_TAG_FROM_ITEM", "name": "Remove Tag From Item", "description": "Tool to remove a tag from a specific item on a Miro board. Use when you need to disassociate a tag from an item after confirming the board, item, and tag IDs. This action removes the tag from only this specific item, not from the board entirely." }, { "slug": "MIRO_SHARE_BOARD", "name": "Share Board", "description": "Tool to share a board by inviting users via email. Use when you need to grant access to a board by sending email invitations to new members. You can invite up to 20 users per call and assign them roles (viewer, commenter, editor, coowner, or owner)." }, { "slug": "MIRO_UPDATE_APP_CARD_ITEM2", "name": "Update App Card Item 2", "description": "Tool to update an app card item on a Miro board. Use when you need to modify properties of an existing app card such as title, description, status, style, position, or geometry." }, { "slug": "MIRO_UPDATE_BOARD", "name": "Update Board", "description": "Tool to update properties of a specific board. Use when you have a board ID and need to modify its name, description, or permissions policy. Use after confirming the board exists." }, { "slug": "MIRO_UPDATE_BOARD_MEMBER", "name": "Update Board Member", "description": "Tool to update the role of a specific board member. Use when you have a board ID and board member ID and need to change that member's permissions or role on the board." }, { "slug": "MIRO_UPDATE_CARD_ITEM", "name": "Update Card Item", "description": "Tool to update a card item on a Miro board. Use when you need to modify properties of an existing card item such as title, description, due date, assignee, style, position, or geometry." }, { "slug": "MIRO_UPDATE_CONNECTOR", "name": "Update Connector", "description": "Tool to update an existing connector on a Miro board. Use when you need to modify connector properties such as shape, style, captions, or endpoint attachments. Only provided fields will be updated." }, { "slug": "MIRO_UPDATE_DOCUMENT_ITEM", "name": "Update Document Item", "description": "Tool to update a document item on a Miro board. Use when you need to modify properties of an existing document item such as URL, title, position, or geometry." }, { "slug": "MIRO_UPDATE_EMBED_ITEM", "name": "Update Embed Item", "description": "Tool to update an embed item on a board. Use when you need to modify properties of an existing embedded content item such as position, display mode, or URL." }, { "slug": "MIRO_UPDATE_FRAME_ITEM", "name": "Update Frame Item", "description": "Tool to update a frame item on a Miro board. Use when you need to modify properties of an existing frame such as title, position, size, or styling. Include only fields to change." }, { "slug": "MIRO_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update a group on a Miro board with new items. Use when you need to change which items belong to an existing group." }, { "slug": "MIRO_UPDATE_IMAGE_ITEM", "name": "Update Image Item", "description": "Tool to update an existing image item on a board. Use when you need to modify properties of an existing image item such as title, URL, position, or geometry." }, { "slug": "MIRO_UPDATE_ITEM_POSITION_OR_PARENT", "name": "Update Item Position or Parent", "description": "Tool to update an item's position or parent frame on a Miro board. Use when you need to move an item to a new location or assign it to a different parent frame." }, { "slug": "MIRO_UPDATE_SHAPE_ITEM", "name": "Update Shape Item", "description": "Tool to update an existing shape item on a Miro board. Use when you need to modify properties of a shape such as content, style, position, geometry, or parent. Include only the fields you want to change." }, { "slug": "MIRO_UPDATE_STICKY_NOTE_ITEM", "name": "Update Sticky Note Item", "description": "Tool to update a sticky note item on a Miro board. Use when you need to modify the content, style, position, geometry, or parent of an existing sticky note." }, { "slug": "MIRO_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update a tag on a board. Use when you need to modify a tag's title or color. At least one field (title or fillColor) should be provided to update." }, { "slug": "MIRO_UPDATE_TEXT_ITEM", "name": "Update Text Item", "description": "Tool to update a text item on a Miro board. Use when you need to modify the content, style, position, or other properties of an existing text item." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "miro_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "boards:export,boards:read,boards:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "share_point", "name": "SharePoint", "logo": "https://logos.composio.dev/api/share_point", "description": "SharePoint is a Microsoft platform for document management and intranets, enabling teams to collaborate, store, and organize content securely and effectively", "category": "documents", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "toolCount": 98, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SHARE_POINT_ADD_ATTACHMENT_TO_LIST_ITEM", "name": "Add Attachment to List Item", "description": "Tool to add an attachment to a SharePoint list item. Use when you need to upload a binary file as an attachment to a specified list item." }, { "slug": "SHARE_POINT_ADD_FIELD_LINK_TO_CONTENT_TYPE", "name": "Add Field Link to Content Type", "description": "Tool to add a field link to a list content type. Use when you want to associate an existing list field with a content type." }, { "slug": "SHARE_POINT_ADD_ROLE_ASSIGNMENT_TO_ITEM", "name": "Add Role Assignment to List Item", "description": "Tool to add a role assignment to a list item. Use when granting specific permissions to a user or group after breaking inheritance if needed. This action is externally visible and permanently alters item permissions; obtain explicit human approval for the target item and `role_definition_id` before executing." }, { "slug": "SHARE_POINT_ADD_ROLE_ASSIGNMENT_TO_LIST", "name": "Add Role Assignment to SharePoint List", "description": "Tool to add a role assignment to a SharePoint list. Requires the list to have broken role inheritance first via SHARE_POINT_BREAK_ROLE_INHERITANCE_ON_LIST; inheriting lists will reject unique role assignments. Use when granting permissions to a user or group on a specific list." }, { "slug": "SHARE_POINT_BREAK_ROLE_INHERITANCE_ON_ITEM", "name": "Break Role Inheritance on List Item", "description": "Tool to break permission inheritance on a list item. Call this before adding new role assignments; adding assignments prior leaves the item still inheriting parent permissions, causing unexpected access behavior. Use when you need to uniquely set permissions on an item after copying or clearing parent assignments." }, { "slug": "SHARE_POINT_BREAK_ROLE_INHERITANCE_ON_LIST", "name": "Break Role Inheritance on List", "description": "Breaks permission inheritance on a SharePoint list, allowing you to set unique permissions. When you break inheritance, you can choose to: - Copy parent permissions as a starting point (copy_role_assignments=true) - Start fresh with no inherited permissions (copy_role_assignments=false) - Clear unique permissions on child items to re-inherit from this list (clear_subscopes=true) Use this when you need to manage list-level permissions independently from the site. Must be called before SHARE_POINT_ADD_ROLE_ASSIGNMENT_TO_LIST, which fails on lists still inheriting from the parent site." }, { "slug": "SHARE_POINT_CHECK_IN_FILE", "name": "Check In SharePoint File", "description": "Tool to check in a file. Use after uploading or editing a document and you're ready to finalize changes." }, { "slug": "SHARE_POINT_CREATE_CONTENT_TYPE", "name": "Create Content Type", "description": "Tool to create a new content type in SharePoint. Use when you need to define a custom content type with specific metadata structure for lists or libraries." }, { "slug": "SHARE_POINT_CREATE_DRIVE_ITEM_SHARING_LINK", "name": "Create Drive Item Sharing Link", "description": "Tool to create a sharing link for a drive item in SharePoint or OneDrive. Use when you need to generate a shareable link with specific permissions (view/edit/embed) and scope (anonymous/organization/users). The link can optionally include password protection and expiration date." }, { "slug": "SHARE_POINT_CREATE_LIST_FIELD", "name": "Create SharePoint List Field", "description": "Tool to create a new field (column) in a SharePoint list. Use when you need to programmatically add a column after confirming the list GUID." }, { "slug": "SHARE_POINT_CREATE_LIST_ITEM_BY_ID", "name": "Create SharePoint List Item by GUID", "description": "Tool to create a new item in a SharePoint list using the list's GUID. Use when you have the list GUID rather than the list title." }, { "slug": "SHARE_POINT_CREATE_LIST_ITEM_IN_FOLDER", "name": "Create List Item in Folder", "description": "Tool to create a list item in a specific folder within a SharePoint list. IMPORTANT: This action works ONLY with SharePoint lists (not document libraries). The folder_url can be either a server-relative URL (e.g., '/Lists/MyList') or an absolute URL (e.g., 'https://site.sharepoint.com/sites/sitename/Lists/MyList'). To create files in document libraries, use a different action like upload_file." }, { "slug": "SHARE_POINT_CREATE_WEB", "name": "Create SharePoint Subsite", "description": "Tool to create a new SharePoint subsite under the current site. Use when you need to create a new subsite with specific settings for permissions, language, and template." }, { "slug": "SHARE_POINT_DELETE_DRIVE_ITEM_VERSION_CONTENT", "name": "Delete Drive Item Version Content", "description": "Tool to delete content for a specific version of a drive item in SharePoint. Use when you need to remove the binary content associated with a particular version of a file while keeping the version metadata." }, { "slug": "SHARE_POINT_DELETE_FILE_ITEM", "name": "Delete SharePoint File", "description": "Deletes a file from a SharePoint document library permanently. This action removes the specified file and moves it to the site's recycle bin. Use this when you need to remove files that are no longer needed. This action is irreversible — the file cannot be recovered once removed from the recycle bin. The operation is idempotent - attempting to delete a non-existent file will succeed without error. Requires the server-relative path of the file (e.g., '/Shared Documents/FileName.ext')." }, { "slug": "SHARE_POINT_DELETE_FOLDER", "name": "Delete SharePoint Folder", "description": "Deletes a folder from a SharePoint document library. This action permanently removes the specified folder and moves it to the site's recycle bin. Use this when you need to remove folders that are no longer needed. The operation is idempotent - attempting to delete a non-existent folder will succeed without error. Requires the server-relative path of the folder (e.g., '/Shared Documents/FolderName')." }, { "slug": "SHARE_POINT_DELETE_LIST", "name": "Delete SharePoint List", "description": "Tool to delete a SharePoint list. Use when you need to remove a list by its GUID after confirming the correct list identifier." }, { "slug": "SHARE_POINT_DELETE_LIST_BY_TITLE", "name": "Delete SharePoint List By Title", "description": "Tool to delete a SharePoint list by its title. Use when you need to permanently remove a list and all its contents by specifying the list name." }, { "slug": "SHARE_POINT_DELETE_LIST_ITEM", "name": "Delete SharePoint List Item", "description": "Tool to delete a SharePoint list item. Use when you need to permanently remove an item by its ID. Use after obtaining the item's ETag to ensure concurrency control." }, { "slug": "SHARE_POINT_DELETE_LIST_ITEMS", "name": "Delete Multiple SharePoint List Items", "description": "Tool to delete multiple SharePoint list items in bulk. Use when you need to permanently remove multiple items by their IDs. This action is irreversible - deleted items cannot be recovered. For recoverable deletion, use the recycle action instead. Use this action when you have a list of item IDs to delete from the same list." }, { "slug": "SHARE_POINT_DELETE_RECYCLE_BIN_ITEM_PERMANENT", "name": "Delete Recycle Bin Item Permanently", "description": "Tool to permanently delete a SharePoint Recycle Bin item. Use after confirming the item's GUID to remove it irrevocably." }, { "slug": "SHARE_POINT_DOWNLOAD_FILE_BY_SERVER_RELATIVE_URL", "name": "Download File by Server-relative URL", "description": "Tool to download a file by server-relative URL. Use when you need to fetch the raw bytes of a SharePoint file by its server-relative path." }, { "slug": "SHARE_POINT_ENSURE_USER", "name": "Ensure SharePoint User", "description": "Ensures a user exists in a SharePoint site by their login name. If the user already exists, returns their info; if not, adds them to the site — this is a write operation with a provisioning side effect, not a read-only presence check. Use when you need to add a user or get their user ID for permissions. The login name must be in SharePoint claims format (e.g., 'i:0#.f|membership|user@domain.com'). This action only registers the user in the site collection and does not grant any permissions. To assign list-level access, pass the returned Id field as principal_id to SHARE_POINT_ADD_ROLE_ASSIGNMENT_TO_LIST." }, { "slug": "SHARE_POINT_FOLLOW", "name": "Follow SharePoint Actor", "description": "Follow a SharePoint user, document, site, or tag. Use to make the authenticated user follow a specified actor. Supports following users (actor_type=0), documents (actor_type=1), sites (actor_type=2), or tags (actor_type=3)." }, { "slug": "SHARE_POINT_GET_ALL_FOLDERS", "name": "Get All SharePoint Folders", "description": "Tool to retrieve all folders in the SharePoint web. Use when you need to discover all available folders across the site. Supports OData query parameters for filtering, selecting specific fields, sorting, and pagination." }, { "slug": "SHARE_POINT_GET_CHANGES", "name": "Get SharePoint List Changes", "description": "Tool to retrieve changes from SharePoint list change log. Use when processing webhook notifications to get actual changes that occurred. Set boolean flags in query (Add, Item, Update, etc.) to filter change types. Store the ChangeToken from the last change and use as ChangeTokenStart in subsequent calls to track only new changes." }, { "slug": "SHARE_POINT_GET_CONTENT_TYPE", "name": "Get Content Type", "description": "Tool to retrieve a single SharePoint content type by its ID. Use when you need detailed information about a specific content type including its fields, forms, and metadata." }, { "slug": "SHARE_POINT_GET_CONTENT_TYPES", "name": "Get Site Content Types", "description": "Retrieves all content types from the current SharePoint site. Use this action to discover available content types on a SharePoint site. Returns metadata for each content type including Id, Name, Description, Group, and other properties. Supports OData query parameters for filtering, selecting specific fields, sorting, and pagination." }, { "slug": "SHARE_POINT_GET_CONTENT_TYPES_FOR_LIST", "name": "Get Content Types for List", "description": "Tool to retrieve all content types for a specific SharePoint list by GUID. Use when you need the content type IDs, names, and descriptions of every content type in a list." }, { "slug": "SHARE_POINT_GET_CONTEXT_INFO", "name": "Get SharePoint Context Info", "description": "Tool to retrieve SharePoint context information including the form digest value. Use when you need a form digest token for write operations (POST, PUT, DELETE)." }, { "slug": "SHARE_POINT_GET_CURRENT_USER", "name": "Get Current SharePoint User", "description": "Tool to retrieve the current user for the site. Use after authenticating to get the current SharePoint user. A successful response confirms authentication only; access to specific sites, lists, or libraries depends on separate scopes and item-level permissions." }, { "slug": "SHARE_POINT_GET_DRIVE_ITEM_ANALYTICS", "name": "Get Drive Item Analytics", "description": "Tool to get analytics for a SharePoint drive item. Use when you need to retrieve access statistics (view counts, unique viewers) for files or folders in SharePoint/OneDrive." }, { "slug": "SHARE_POINT_GET_FILE_BY_SERVER_RELATIVE_URL", "name": "Get File Metadata by Server Relative URL (Deprecated)", "description": "DEPRECATED: Use GetSiteDriveItemByPath instead. Tool to fetch SharePoint file metadata (exists/permissions/URLs/UniqueId) given a server-relative path, using the more robust ServerRelativePath API for special characters. Use after SHARE_POINT_SEARCH_QUERY returns a Path and you need to confirm the canonical working path or retrieve file properties without downloading bytes." }, { "slug": "SHARE_POINT_GET_FOLDER_BY_SERVER_RELATIVE_URL", "name": "Get SharePoint Folder by Server Relative URL (Deprecated)", "description": "DEPRECATED: Use SHARE_POINT_GET_SITE_DRIVE_ITEM_BY_PATH instead. Tool to retrieve a folder by its server-relative URL. Use when you need to fetch folder metadata by path before further operations. Returns only the immediate folder; to traverse nested structures, iterate `Folders.results` and call this tool recursively for each subfolder." }, { "slug": "SHARE_POINT_GET_GROUP_USERS", "name": "Get Group Users", "description": "Retrieves all users who are members of a specified SharePoint group. This action returns user information including IDs, names, email addresses, login names, and permission details. Supports OData query parameters for filtering, sorting, field selection, and pagination. Use this when you need to audit group membership, check user permissions, or list members of a specific group." }, { "slug": "SHARE_POINT_GET_GROUP_USERS_BY_ID", "name": "Get Group Users By ID", "description": "Tool to retrieve all users in a specific SharePoint site group by group ID. Use when you have the numeric group ID and need to list all members of that group, including their IDs, names, email addresses, and permission details. Supports OData query parameters for filtering, sorting, field selection, and pagination." }, { "slug": "SHARE_POINT_GET_ITEM_ATTACHMENT_CONTENT", "name": "Download List Item Attachment", "description": "Tool to download an attachment from a SharePoint list item. Use when retrieving the binary contents of a specific attachment after confirming the list title, item ID, and filename." }, { "slug": "SHARE_POINT_GET_LIST_BY_GUID", "name": "Get SharePoint List by GUID", "description": "Tool to retrieve a SharePoint list by its GUID. Use when you need to fetch list metadata by its unique identifier. Prefer over name-based lookup tools when the GUID is known, as names may collide across similarly named lists." }, { "slug": "SHARE_POINT_GET_LIST_BY_TITLE", "name": "Get SharePoint List By Title", "description": "Tool to retrieve a SharePoint list by its title. Use when you need to fetch list metadata by title." }, { "slug": "SHARE_POINT_GET_LIST_CONTENT_TYPE_BY_ID", "name": "Get Content Type by ID", "description": "Tool to retrieve a specific content type from a SharePoint list by its ID. Use when you need detailed information about a particular content type including its fields, schema, and metadata." }, { "slug": "SHARE_POINT_GET_LIST_ITEM_BY_ID", "name": "Get List Item by ID", "description": "Tool to retrieve a SharePoint list item by ID. Use when you need to fetch a specific item after knowing its ID." }, { "slug": "SHARE_POINT_GET_LIST_ITEMS", "name": "Get SharePoint List Items", "description": "Tool to retrieve items from a SharePoint list. Use when you need to fetch list entries with optional OData parameters." }, { "slug": "SHARE_POINT_GET_LIST_ITEMS_BY_GUID", "name": "Get SharePoint List Items by GUID", "description": "Tool to retrieve items from a SharePoint list using its GUID. Use when you have the list's unique identifier and need to fetch list entries with optional OData parameters." }, { "slug": "SHARE_POINT_GET_LIST_ITEM_VERSION", "name": "Get List Item Version", "description": "Tool to retrieve a specific version of a SharePoint list item. Use when you need to access historical versions of list items." }, { "slug": "SHARE_POINT_GET_MY_FOLLOWED", "name": "Get Followed Entities", "description": "Tool to get entities the current user is following. Use when you need to retrieve followed users, documents, sites, or tags after authentication." }, { "slug": "SHARE_POINT_GET_MY_FOLLOWERS", "name": "Get My Followers", "description": "Retrieves the list of users who are following the authenticated user in SharePoint. Returns an array of SocialActor objects containing follower details like name, email, account name, and personal site URI. No parameters required - automatically retrieves followers for the current authenticated user." }, { "slug": "SHARE_POINT_GET_ROLE_DEFINITIONS", "name": "Get Role Definitions", "description": "Tool to list role definitions at the web level. Role definition IDs and names are scoped per web/site collection — never hard-code them, as admins can modify role sets and IDs differ across site collections. Always resolve current values dynamically via this tool." }, { "slug": "SHARE_POINT_GET_SITE_BY_HOSTNAME", "name": "Get SharePoint Site by Hostname", "description": "Retrieve SharePoint site information by hostname or URL. Returns site metadata including site ID, display name, URLs, and timestamps. Use this action when you need to discover a site's identifier or properties using only its hostname, which is essential for subsequent operations requiring siteId. Useful for validating site existence or obtaining site metadata without prior knowledge of internal IDs." }, { "slug": "SHARE_POINT_GET_SITE_BY_ID", "name": "Get SharePoint Site by ID", "description": "Tool to retrieve information about a SharePoint site (web) by its unique identifier. Use this action when you have a specific site GUID and need to fetch its metadata such as title, URL, language, or template information." }, { "slug": "SHARE_POINT_GET_SITE_COLLECTION_INFO", "name": "Get SharePoint Site Collection Info", "description": "Tool to fetch site collection metadata (URL, ID, root web URI) only—not list item or document-level details. Use before subsequent calls to resolve correct API names. Requires SharePoint connection with site-collection-level scopes; may fail even when user-level tools succeed. Verify site_id before use—an incorrect site_id can silently return data for an unrelated site." }, { "slug": "SHARE_POINT_GET_SITE_DRIVE_ITEM_BY_PATH", "name": "Get Site Drive Item by Path", "description": "Tool to retrieve a file or folder by its server-relative path in a SharePoint site. Use when you need to get metadata for an item (file or folder) by path." }, { "slug": "SHARE_POINT_GET_SITE_PAGE_CONTENT", "name": "Get SharePoint Site Page Content", "description": "Tool to retrieve modern SharePoint Site Pages content by reading list item fields. Use when a .aspx page result cannot be downloaded as a file or when you need the structured content (CanvasContent1, LayoutWebpartsContent) of modern pages." }, { "slug": "SHARE_POINT_GET_SITE_ROOT", "name": "Get SharePoint Root Site", "description": "Retrieves metadata about the root web of a SharePoint site collection. Use this action when you need to get information about the root site in a site collection, such as its title, URL, language settings, or template information. This is useful for discovering the top-level site properties before navigating to subsites or performing collection-wide operations." }, { "slug": "SHARE_POINT_GET_USER_EFFECTIVE_PERMISSIONS_ON_WEB", "name": "Get User Effective Permissions on Web", "description": "Get a user's effective permissions on the current SharePoint site (Web). This action retrieves the combined permissions a user has on the site, taking into account direct permissions, group memberships, and permission inheritance. Use this when you need to verify what permissions a user or group has before performing operations. The response contains permission masks as 64-bit integers split into high and low 32-bit values. A value of \"0\" for both means no permissions. Returns site-level permissions only; list-level or item-level grants and restrictions are not reflected." }, { "slug": "SHARE_POINT_GET_WEBHOOK_SUBSCRIPTION", "name": "Get SharePoint Webhook Subscription", "description": "Tool to retrieve a specific webhook subscription by ID from a SharePoint list. Use when you need to check subscription details like expiration date or notification URL." }, { "slug": "SHARE_POINT_GET_WEBHOOK_SUBSCRIPTIONS", "name": "Get SharePoint Webhook Subscriptions", "description": "Tool to retrieve all webhook subscriptions on a SharePoint list. Use when you need to view existing webhook configurations for a list." }, { "slug": "SHARE_POINT_GET_WEB_INFO", "name": "Get SharePoint Web Info", "description": "Tool to retrieve information about the current SharePoint web (site) using REST API. Use when you need web metadata such as title, URL, language, or template information." }, { "slug": "SHARE_POINT_IS_FOLLOWED", "name": "Check Follow Status", "description": "Tool to check if the current user is following a specified actor. Use when verifying follow status before performing follow or unfollow operations." }, { "slug": "SHARE_POINT_LIST_ALL_LISTS", "name": "List SharePoint Lists", "description": "Retrieves all lists in the current SharePoint web/site. Use this action to discover available lists and document libraries on a SharePoint site, or to pre-check for existing lists before creation (duplicate list names will fail). Returns metadata for each list including Title, Id, BaseType, ItemCount, and other properties. Supports OData query parameters for filtering, selecting specific fields, sorting, and pagination." }, { "slug": "SHARE_POINT_LIST_DRIVE_CHILDREN", "name": "List Drive Children", "description": "Tool to list children (files and folders) in a SharePoint drive using REST API v2.0. Use when you need to enumerate items in a drive's root folder or a specific folder within the drive." }, { "slug": "SHARE_POINT_LIST_DRIVE_RECENT_ITEMS", "name": "List Recently Modified Drive Items", "description": "Tool to list recently modified items in a SharePoint drive using Microsoft Graph API. Returns files and folders from the root folder sorted by modification time (most recent first). Note: This action uses the /root/children endpoint with $orderby=lastModifiedDateTime desc to retrieve recently modified items from the root folder." }, { "slug": "SHARE_POINT_LIST_DRIVES_REST_API", "name": "List Drives via SharePoint REST API", "description": "Tool to retrieve drives using SharePoint REST API v2.0. Use when you need to list document libraries and drives from a SharePoint site using native SharePoint authentication (not Microsoft Graph)." }, { "slug": "SHARE_POINT_LIST_FILES_IN_FOLDER", "name": "List Files in Folder", "description": "Tool to list files within a SharePoint folder (non-recursive; does not enumerate subfolders). Use when you need to enumerate all files in a folder by its server-relative URL. To cover nested structures, call the tool separately for each subfolder." }, { "slug": "SHARE_POINT_LIST_ITEM_ATTACHMENTS", "name": "List Item Attachments", "description": "Tool to list all attachments for a SharePoint list item. Use when you need to retrieve filenames and server-relative URLs of each attachment after confirming the list title and item ID." }, { "slug": "SHARE_POINT_LIST_LIST_COLUMNS", "name": "List SharePoint List Columns", "description": "Tool to list all column definitions in a SharePoint list. Use when you need to retrieve field metadata including column names, types, and properties." }, { "slug": "SHARE_POINT_LIST_RECYCLE_BIN_ITEMS", "name": "List Recycle Bin Items", "description": "Tool to list items in the SharePoint Recycle Bin. Use when you need to retrieve deleted items and page through results." }, { "slug": "SHARE_POINT_LIST_SITE_DRIVES", "name": "List Site Drives", "description": "Tool to retrieve all document libraries (drives) in a SharePoint site. Use when you need to discover available document libraries or storage locations within a SharePoint site. This action lists all drives accessible in the specified site, including default document libraries and any custom document libraries created by users." }, { "slug": "SHARE_POINT_LIST_SITE_GROUPS", "name": "List Site Groups", "description": "Tool to list SharePoint site groups for a site collection. Use when you need to see all groups and their settings before managing permissions." }, { "slug": "SHARE_POINT_LIST_SITES", "name": "List SharePoint Sites", "description": "Tool to retrieve all SharePoint sites accessible to the user. Use when you need to discover available sites before performing site-specific operations." }, { "slug": "SHARE_POINT_LIST_SITE_USERS", "name": "List Site Users", "description": "Tool to list users in the site collection. Results include person users, groups, and system principals by default; use filter 'PrincipalType eq 1' to restrict to individual users." }, { "slug": "SHARE_POINT_LIST_SUBFOLDERS_IN_FOLDER", "name": "List Subfolders in Folder", "description": "Tool to list immediate child folders within a SharePoint folder. Use when you need folder navigation or directory discovery by server-relative URL." }, { "slug": "SHARE_POINT_LOG_EVENT", "name": "Log SharePoint Event", "description": "Log custom usage analytics events in SharePoint for tracking user activities. Records usage events (views, edits, custom actions) to SharePoint's analytics system. Use this after performing actions to track usage patterns. The event will be logged to SharePoint's usage analytics database for reporting and analytics purposes. Common use cases: - Track document views or edits - Record custom user interactions - Log application-specific events for analytics Note: Obtain site/web GUIDs from GET /api/site or GET /api/web endpoints. Use consistent item_id, scope_id, and site GUIDs across related events for the same entity to ensure correct analytics grouping and correlation in reports." }, { "slug": "SHARE_POINT_RECYCLE_FILE", "name": "Recycle SharePoint File", "description": "Tool to move a file to the Recycle Bin. Use when you need to recycle a file after confirming its folder and filename paths." }, { "slug": "SHARE_POINT_RECYCLE_LIST_ITEM", "name": "Recycle SharePoint List Item", "description": "Tool to move a list item to the Recycle Bin. Use when you need to soft-delete an item but preserve the ability to restore it." }, { "slug": "SHARE_POINT_RENAME_FOLDER", "name": "Rename SharePoint Folder", "description": "Renames a SharePoint folder by updating its list item metadata. To use this action: 1. Provide the folder path and new leaf folder name. 2. The action updates the folder list item fields needed by SharePoint. The rename operation updates both the folder's display name (Title) and actual name (FileLeafRef). Note: This only changes the folder name, not its location in the hierarchy." }, { "slug": "SHARE_POINT_RENDER_LIST_DATA_AS_STREAM", "name": "Render List Data As Stream", "description": "Retrieve list items from SharePoint with rich metadata and formatting. Returns items in the 'Row' array along with pagination info (FirstRow, LastRow, NextHref). Supports CAML queries via ViewXml for filtering and sorting. Use this when you need list data with properly formatted field values, lookup fields, or managed metadata - more capable than standard OData endpoints." }, { "slug": "SHARE_POINT_RESTORE_DRIVE_ITEM_VERSION", "name": "Restore Drive Item Version", "description": "Tool to restore a previous version of a SharePoint drive item. Use when you need to revert a file to an earlier version." }, { "slug": "SHARE_POINT_RESTORE_RECYCLE_BIN_ITEM", "name": "Restore Recycle Bin Item", "description": "Tool to restore a SharePoint Recycle Bin item. Use when you need to recover a deleted item by providing its GUID." }, { "slug": "SHARE_POINT_SEARCH_FILES", "name": "Search Files Across All Sites", "description": "Search for files across all SharePoint sites and OneDrive using Keyword Query Language. Returns files matching the query with metadata like title, path, size, author, and modification time. Use this action when you need to discover files broadly across an organization without knowing specific drive IDs or site locations. Results are automatically filtered to show only document content types. Use from_index and row_limit parameters to paginate through large result sets." }, { "slug": "SHARE_POINT_SEARCH_QUERY", "name": "Search SharePoint Site", "description": "Search SharePoint content using Keyword Query Language (KQL). Returns documents, list items, folders, and other content matching your query. Supports filtering by properties (file type, author, date), pagination, and custom property selection. Results are nested under PrimaryQueryResult→RelevantResults→Table→Rows→Cells as Key/Value pairs requiring explicit extraction. Results are security-trimmed: inaccessible content never appears even if it exists. Use contentclass (e.g., STS_Site, STS_Web, STS_ListItem_DocumentLibrary) in querytext to isolate specific item types." }, { "slug": "SHARE_POINT_SEARCH_SUGGEST", "name": "Search Suggest", "description": "Tool to get search query suggestions. Use when you need to provide autocomplete options for user search input." }, { "slug": "SHARE_POINT_SHAREPOINT_CHECK_OUT_FILE", "name": "Check Out SharePoint File", "description": "Tool to check out a file in a document library. Use when you need to lock a file before making changes." }, { "slug": "SHARE_POINT_SHAREPOINT_CREATE_FOLDER", "name": "Create SharePoint Folder", "description": "Creates a new folder in SharePoint using the REST API. Returns `server_relative_url`; use it for downstream operations instead of constructing paths manually. Does not configure sharing or permissions on the created folder." }, { "slug": "SHARE_POINT_SHAREPOINT_CREATE_LIST", "name": "Create SharePoint List", "description": "Creates a new list in SharePoint using the REST API. Custom columns cannot be added at creation time; use SHARE_POINT_CREATE_LIST_FIELD with the returned `list_id` to add them afterward. Check `success` and `error` fields in the response to confirm creation. Returns a `list_id` used by downstream tools; note SHARE_POINT_SHAREPOINT_CREATE_LIST_ITEM targets lists by `list_name` (title)." }, { "slug": "SHARE_POINT_SHAREPOINT_CREATE_LIST_ITEM", "name": "Create SharePoint List Item", "description": "Creates a new item in a SharePoint list. Returns an `item_data` object containing `item_id`, `Title`, and timestamps on success." }, { "slug": "SHARE_POINT_SHAREPOINT_CREATE_USER", "name": "Add Azure AD User to SharePoint Site (Deprecated)", "description": "DEPRECATED: Use SHARE_POINT_ENSURE_USER instead (supports email param directly). Adds an existing Azure AD user to the SharePoint site collection using the ensureuser endpoint. This action is idempotent - if the user is already in the site, it returns their existing details without error." }, { "slug": "SHARE_POINT_SHAREPOINT_FIND_USER", "name": "Find SharePoint User", "description": "Searches for a user in the SharePoint site by email address and returns their profile information if found. Response includes `exists_in_graph`, `exists_in_sharepoint`, and `error_details` fields; inspect all three together — `successful=true` can coexist with Graph errors in `error_details`. When the two backends diverge, treat `exists_in_sharepoint` as authoritative for access decisions." }, { "slug": "SHARE_POINT_SHAREPOINT_REMOVE_USER", "name": "Remove SharePoint User", "description": "Removes a user from SharePoint. Returns success even if user doesn't exist or was never a member; check response fields `was_removed` (bool) and `message` (str) to distinguish an actual removal from a no-op." }, { "slug": "SHARE_POINT_UNDO_CHECKOUT_FILE", "name": "Undo SharePoint File Checkout", "description": "Tool to undo a file checkout, discarding any changes made while checked out. Use when you need to cancel edits and unlock the file without saving." }, { "slug": "SHARE_POINT_UPDATE_CONTENT_TYPE", "name": "Update SharePoint Content Type", "description": "Tool to update a SharePoint content type's properties such as name, description, group, or hidden status. Use when you need to modify content type metadata." }, { "slug": "SHARE_POINT_UPDATE_DRIVE_ITEM", "name": "Update Drive Item", "description": "Tool to update the properties of a drive item (file or folder) in SharePoint using SharePoint REST API. Use when you need to rename files/folders or update their title property." }, { "slug": "SHARE_POINT_UPDATE_FILE_ITEM", "name": "Update File Item Metadata", "description": "Tool to update metadata fields on a SharePoint file item via its ListItemAllFields. Use this action when you need to modify document properties, custom columns, or metadata without changing the file content itself. This operates on the list item behind the file, allowing you to set Title, Status, Owner, Categories, or any other library column." }, { "slug": "SHARE_POINT_UPDATE_LIST", "name": "Update SharePoint List", "description": "Tool to update properties of an existing SharePoint list. Use when you need to modify list metadata such as title, description, or settings like versioning and attachments." }, { "slug": "SHARE_POINT_UPDATE_LIST_ITEM", "name": "Update SharePoint List Item", "description": "Tool to update fields on an existing SharePoint list item. Use when you need to modify an item's properties with proper ETag concurrency control via MERGE." }, { "slug": "SHARE_POINT_UPDATE_SITE", "name": "Update SharePoint Site", "description": "Tool to update properties of the current SharePoint site (web). Use when you need to modify site title, description, or other SP.Web properties via MERGE." }, { "slug": "SHARE_POINT_UPLOAD_FILE", "name": "Upload File to Folder", "description": "Tool to upload a file to a SharePoint document library or folder. Use when you need to programmatically add or update a file in a document library." }, { "slug": "SHARE_POINT_UPLOAD_FROM_URL", "name": "Upload File from URL to SharePoint", "description": "Tool to fetch a file from a URL and upload it to SharePoint. Use when you need to upload files directly from external URLs without downloading them to the client first. When a file with the same name already exists, use conflict_behavior to control the behavior: - 'replace': Overwrites the existing file (fails with HTTP 423 if the file is locked/open) - 'fail': Returns an error if a file with that name exists - 'rename': Uploads with an auto-generated suffix (e.g., 'report 1.docx'), bypassing file locks" }, { "slug": "SHARE_POINT_VALIDATE_CREDENTIAL", "name": "Validate SharePoint Credentials", "description": "Validate SharePoint credentials by attempting to retrieve the current user information. Use this action during setup or configuration to verify that provided credentials have valid access to the SharePoint site before performing other operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft_sharepoint_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://{{subdomain}}.sharepoint.com/.default,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Tenant Name", "type": "string", "description": "Your tenant name — the part before .sharepoint.com in your browser's address bar, e.g. the 'contoso' in contoso.sharepoint.com. Enter just the name, not the full URL.", "required": true, "default": null } ], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" }, { "name": "generic_id", "displayName": "SharePoint Subsite", "type": "string", "description": "Optional — the name after /sites/ in your SharePoint URL, e.g. 'marketing' in contoso.sharepoint.com/sites/marketing. Most users leave this blank to use the main site.", "required": false, "default": null } ] } } }, { "mode": "S2S_OAUTH2", "name": "share_point_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Your Microsoft Entra tenant ID (GUID), found in Azure Portal > Microsoft Entra ID > Overview.", "required": true, "default": null }, { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration.", "required": true, "default": null }, { "name": "private_key", "displayName": "Private Key (PEM)", "type": "string", "description": "RSA private key (PEM format) for the certificate uploaded to your Microsoft Entra app registration under Certificates & Secrets.", "required": true, "default": null }, { "name": "cert_thumbprint", "displayName": "Certificate Thumbprint (x5t#S256)", "type": "string", "description": "Base64url-encoded SHA-256 thumbprint of the certificate, used in the JWT header for Entra to identify the signing key.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "SharePoint Tenant Name", "type": "string", "description": "Your tenant name — the part before .sharepoint.com in your browser's address bar, e.g. the 'contoso' in contoso.sharepoint.com. Enter just the name, not the full URL.", "required": true, "default": null } ], "optional": [ { "name": "generic_id_2", "displayName": "SharePoint Subsite", "type": "string", "description": "Optional — the name after /sites/ in your SharePoint URL, e.g. 'marketing' in contoso.sharepoint.com/sites/marketing. Most users leave this blank to use the main site.", "required": false, "default": null } ] } } } ] }, { "slug": "mocean", "name": "Mocean", "logo": "https://logos.composio.dev/api/mocean", "description": "Mocean enables SMS, voice, and verification services, integrating messaging capabilities into applications for multifactor authentication or customer engagement", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOCEAN_QUERY_MESSAGE_STATUS_V2", "name": "Query SMS Message Status V2", "description": "Tool to query delivery status of an SMS message. Use after sending an SMS when you need to check its delivery success by msgid." }, { "slug": "MOCEAN_VOICE_DIAL_V2", "name": "Voice Dial V2", "description": "Tool to initiate an outbound voice call via Mocean API. Use when you need to place a call with a defined command flow." }, { "slug": "MOCEAN_VOICE_DOWNLOAD_RECORDING_V2", "name": "Voice Download Recording V2", "description": "Tool to download a call recording. Use when you need to retrieve the recording audio for a completed call by its UUID." }, { "slug": "MOCEAN_VOICE_HANGUP_V2", "name": "Voice Hangup V2", "description": "Tool to hang up an active voice call. Use when you need to terminate an ongoing call by its call UUID immediately." }, { "slug": "MOCEAN_WHATSAPP_INCOMING_WEBHOOK_V2", "name": "WhatsApp Incoming Webhook V2", "description": "Tool to receive and return the full incoming WhatsApp webhook payload. Use when you must capture raw webhook JSON (message_id, event_type, event_data) for downstream parsing." }, { "slug": "MOCEAN_WHATS_APP_SEND_MESSAGE_V2", "name": "WhatsApp Send Message V2", "description": "Tool to send a WhatsApp message via Mocean API. Use when you need to send text, media, template, reaction, or interactive messages on WhatsApp." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mocean_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "Your Mocean API token. Generate it from your Mocean Dashboard under API Account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "formcarry", "name": "Formcarry", "logo": "https://logos.composio.dev/api/formcarry", "description": "Formcarry is a form API that allows you to collect submissions from your own designed HTML forms without coding any backend, providing features like email notifications, file uploads, spam protection, and integrations with other apps.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FORMCARRY_CREATE_FORM", "name": "Create Form", "description": "Create a new form with customizable settings including email notifications, webhooks, and thank you pages. This action creates a Formcarry form with extensive configuration options for email notifications (both to form owners and respondents), webhook integrations, Google Recaptcha spam protection, and customizable thank you pages. Use when you need to programmatically set up a new form with specific notification rules or integrations." }, { "slug": "FORMCARRY_DELETE_FORM", "name": "Delete Form", "description": "Delete an existing form by its Form ID. Use when you need to permanently remove a form from your Formcarry account." }, { "slug": "FORMCARRY_RETRIEVE_SUBMISSIONS", "name": "Retrieve Form Submissions", "description": "Retrieves all submissions for a specific Formcarry form. Returns a paginated list of form submissions with their field data, timestamps, and submission IDs. Use pagination parameters to navigate through large submission sets. Default page size is 25, maximum is 50 submissions per page. Useful for: collecting form responses, exporting submission data, integrating form data into other systems, or building custom analytics dashboards." }, { "slug": "FORMCARRY_VERIFY_AUTH", "name": "Verify API Key Authentication", "description": "Tool to verify API key authentication with Formcarry. Use this endpoint to check if your API key is valid before making other API requests. Returns success status and a confirmation message if the API key is valid." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "formcarry_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key for authenticating requests to the Formcarry API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appdrag", "name": "AppDrag", "logo": "https://logos.composio.dev/api/appdrag", "description": "AppDrag is a cloud-based platform for building websites, APIs, and databases with drag-and-drop tools, code editing, and integrated hosting to accelerate development workflows and iteration", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APPDRAG_EXECUTE_FUNCTION_DELETE_DEFAULT", "name": "Execute Cloud Backend function via DELETE", "description": "Tool to execute a Cloud Backend API function via DELETE on the default environment. Use when you need to call a function with DELETE parameters and optional APIKey." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_DELETE_PREPROD", "name": "Execute Preprod Function (DELETE)", "description": "Tool to execute the pre-production version of a Cloud Backend API function via DELETE. Use when you need to test or validate delete operations in the preprod environment before production deployment." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_GET_PROD", "name": "Execute PROD API Function (GET)", "description": "Tool to execute a production Cloud Backend API function via GET. Includes robust URL handling and fallbacks to accommodate management base URLs." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_PATCH_DEV", "name": "Execute Dev Function (PATCH)", "description": "Tool to execute the development version of a Cloud Backend API function via PATCH. Use after deploying or updating your function to the dev environment." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_POST_DEFAULT", "name": "Execute Cloud Backend function via POST", "description": "Tool to execute a Cloud Backend API function via POST on the default environment. Use when you need to call a function with POST parameters and optional APIKey." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_POST_PREPROD", "name": "Execute Function POST (Preprod Env)", "description": "Tool to execute a Cloud Backend API function via POST on the preprod environment. Use when you need to test a function in the preprod environment before releasing to production. Include apiKey if your function requires APIKey security." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_PUT_DEFAULT", "name": "Execute Cloud Backend function via PUT (default)", "description": "Tool to execute a Cloud Backend API function via PUT on the default environment. Use when you need to call a function with PUT parameters and optional APIKey." }, { "slug": "APPDRAG_EXECUTE_FUNCTION_PUT_PREPROD", "name": "Execute Cloud Backend function via PUT (preprod)", "description": "Tool to execute a Cloud Backend API function via PUT on the preprod environment. Use when you need to call a function with PUT parameters and optional APIKey in preprod." }, { "slug": "APPDRAG_VISUAL_SQL_DELETE", "name": "Visual SQL Delete", "description": "Tool to delete rows via a Visual SQL Delete function. Use when you need to delete records from a Cloud DB table using a Visual SQL Delete function." }, { "slug": "APPDRAG_VISUAL_SQL_SELECT", "name": "Visual SQL SELECT", "description": "Tool to execute a Visual SELECT Cloud Backend function. Use when you need to read rows from a database table using a visual SQL function configured in AppDrag." }, { "slug": "APPDRAG_VISUAL_SQL_UPDATE", "name": "Visual SQL Update", "description": "Tool to execute a Visual SQL UPDATE via an AppDrag Visual UPDATE function. Use when you need to update database rows based on your Visual UPDATE mapping." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to the AppDrag API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "metatextai", "name": "Metatextai", "logo": "https://logos.composio.dev/api/metatextai", "description": "Metatext AI specializes in natural language processing and text generation, helping organizations automate writing tasks, sentiment analysis, or content moderation", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "METATEXTAI_CHAT_COMPLETIONS", "name": "Chat Completions", "description": "Tool to generate chat completions. Use when you need OpenAI-compatible conversational responses." }, { "slug": "METATEXTAI_CLASSIFY", "name": "Classify Text", "description": "Tool to classify text. Use when you need to obtain labels and confidence scores from a trained MetatextAI model for given text." }, { "slug": "METATEXTAI_CREATE_POLICY_GUARDRAILS", "name": "Create Policy Guardrails", "description": "Tool to create a policy guardrail. Use when you need to define automated guardrails for content in a specific application." }, { "slug": "METATEXTAI_DELETE_POLICY_GUARDRAILS", "name": "Delete Guardrail Policy", "description": "Tool to delete a guardrail policy. Use when you need to remove a policy by ID for a specific application after confirming valid application and policy IDs." }, { "slug": "METATEXTAI_EVALUATE", "name": "Evaluate Messages", "description": "Tool to evaluate LLM messages against policies/guardrails. Use after generating model output to get violation details or corrections." }, { "slug": "METATEXTAI_EXTRACT", "name": "Run Extraction", "description": "Tool to run information extraction. Use when you need to extract structured data from text." }, { "slug": "METATEXTAI_GENERATE", "name": "Generate Text", "description": "Tool to generate text for a project model. Use when you need LLM completions or chat responses. Supports both prompt and message-based inputs with temperature, stop-sequence, and token limits." }, { "slug": "METATEXTAI_LIST_APPLICATIONS", "name": "List Applications", "description": "Tool to retrieve a list of all existing applications. Use when you need to view application IDs, names, and descriptions." }, { "slug": "METATEXTAI_LIST_MODELS", "name": "List Models", "description": "Tool to retrieve a list of all available models and their supported tasks. Use when you need to choose an appropriate model for chat completions." }, { "slug": "METATEXTAI_LIST_POLICIES_GUARDRAILS", "name": "List Guardrail Policies", "description": "Tool to list all guardrail policies for a specific application. Use after obtaining an application ID to inspect its configured policies." }, { "slug": "METATEXTAI_LIST_RED_TEAM_TEST_PROBES", "name": "List Red Team Test Probes", "description": "Tool to list all available red team test probes. Use when you need to discover available probes for red teaming." }, { "slug": "METATEXTAI_RUN_RED_TEAM_TEST_SCAN", "name": "Run Red Team Test Scan", "description": "Tool to run a vulnerability red-team test scan. Use when you need to execute probes against an application." }, { "slug": "METATEXTAI_UPDATE_POLICY_GUARDRAILS", "name": "Update Policy Guardrails", "description": "Tool to update an existing policy's guardrails. Use when you need to modify a policy's rules after confirming it exists." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "metatextai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your MetaTextAI API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "breezy_hr", "name": "Breezy Hr", "logo": "https://logos.composio.dev/api/breezy_hr", "description": "Integrate Breezy HR to streamline your recruiting and applicant tracking processes.", "category": "hr talent & recruitment", "authSchemes": [], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BREEZY_HR_ADD_CANDIDATE_CUSTOM_ATTRIBUTE", "name": "Add Candidate Custom Attribute", "description": "Add or update a custom attribute for a candidate in Breezy HR. Use when you need to store custom metadata, internal notes, evaluation scores, or any other custom data for a candidate application. If the attribute name already exists for this candidate, its value will be updated with the new value." }, { "slug": "BREEZY_HR_ADD_CANDIDATE_DOCUMENT", "name": "Add Candidate Document", "description": "Upload a document file for an existing candidate in Breezy HR. Use when you need to attach additional documents (cover letters, portfolios, certifications, or other files) to a candidate's application. The file is sent as multipart/form-data with the field name 'data'. This action is idempotent - uploading a document with the same name may create a duplicate or update the existing document depending on Breezy HR behavior." }, { "slug": "BREEZY_HR_ADD_CANDIDATE_EDUCATION", "name": "Add Candidate Education", "description": "Add an education entry to an existing candidate in Breezy HR. Use this action when you need to record a candidate's educational background, such as degrees, certifications, or school attendance. If an education entry already exists for the same school, it will be updated with the provided values." }, { "slug": "BREEZY_HR_ADD_CANDIDATE_NOTE", "name": "Add Candidate Note", "description": "Adds a note to a candidate's discussion stream in Breezy HR. Use this action when you need to record observations, interview feedback, or any communication about a candidate directly in their profile. The note becomes part of the candidate's activity history and is visible to all users with access to the candidate." }, { "slug": "BREEZY_HR_ADD_CANDIDATE_RESUME", "name": "Add candidate resume", "description": "Attach a resume file to an existing candidate in Breezy HR. Use when you need to add or update a candidate's resume document. The file is sent as multipart/form-data with the field name 'file'." }, { "slug": "BREEZY_HR_ADD_CANDIDATE_WORK_HISTORY", "name": "Add Candidate Work History", "description": "Add a work history entry to an existing candidate in Breezy HR. Use this action when you need to record a candidate's employment history, such as previous job positions, companies, and work responsibilities. If a work history entry already exists for the same company, it will be updated with the provided values." }, { "slug": "BREEZY_HR_CREATE_CANDIDATE", "name": "Add candidate to position", "description": "Add a new candidate to a position in Breezy HR. Use when you need to create or add a candidate to a specific job position. This action allows you to programmatically add candidates to positions with various details including contact information, education, work history, social profiles, and custom attributes. The candidate can be marked as 'sourced' (direct hire) or 'applied' (applicant tracking). Note: If origin is 'applied', email_address is required. For 'sourced' candidates, email is optional but recommended." }, { "slug": "BREEZY_HR_CREATE_CANDIDATE_FROM_RESUME", "name": "Create Candidate From Resume", "description": "Upload and parse a resume file to create a new candidate in Breezy HR. Use this action when you need to add a new job candidate by uploading their resume. The resume is parsed and candidate information is automatically extracted and associated with the specified position. The candidate will be placed in the default 'applied' stage unless a different stage_id is specified." }, { "slug": "BREEZY_HR_CREATE_POSITION", "name": "Create Position", "description": "Create a new position in Breezy HR. Use when you need to add a new job opening to your company's hiring pipeline with specific details like title, description, location, and employment type. This action creates a position that can then accept applications from candidates. The position will be created in draft state by default unless otherwise specified." }, { "slug": "BREEZY_HR_CREATE_WEBHOOK_ENDPOINT", "name": "Create Webhook Endpoint", "description": "Create a new webhook endpoint to receive event notifications from Breezy HR. Use this action when you need to set up real-time notifications for events such as candidates being added, deleted, or having their status updated. The response includes a secret key that should be stored securely to verify incoming webhook signatures. This action is idempotent based on the endpoint URL and subscribed events." }, { "slug": "BREEZY_HR_DELETE_WEBHOOK_ENDPOINT", "name": "Delete Webhook Endpoint", "description": "Delete an existing webhook endpoint from Breezy HR. Use this action when you need to remove a webhook endpoint that is no longer needed for receiving real-time notifications about Breezy HR events such as candidate additions, deletions, or status updates. This action is irreversible — the webhook endpoint cannot be recovered once deleted." }, { "slug": "BREEZY_HR_GET_CANDIDATE", "name": "Get Candidate", "description": "Retrieve candidate details by ID for a given position in Breezy HR. Use this action when you need to fetch the full profile and details of a specific candidate applying to a specific job position. This includes contact information, social accounts, recruitment stage, rating, source, and other candidate metadata. This is a read-only operation that does not modify any candidate data." }, { "slug": "BREEZY_HR_GET_CANDIDATE_CONVERSATION", "name": "Get Candidate Conversation", "description": "Retrieve the conversation stream for a specific candidate applying to a position. Use when you need to view all messages exchanged with a candidate, including messages sent by the hiring team and responses from the candidate. The conversation includes timestamps, message content, attachments, and sender information." }, { "slug": "BREEZY_HR_GET_CANDIDATE_META", "name": "Get Candidate Meta", "description": "Retrieves candidate meta data by ID for a given position. Use this action when you need to fetch all metadata information (assessments, documents, scorecards, etc.) associated with a specific candidate for a specific job position. The metadata includes various aspects of the candidate's interaction and evaluation such as assessments, background checks, conversation history, documents, questionnaires, references, schedule, scorecards, stream activity, tasks, and team notes." }, { "slug": "BREEZY_HR_GET_CANDIDATE_RESUME", "name": "Get Candidate Resume", "description": "Retrieve a candidate's resume file from a specific job position in Breezy HR. Use this action when you need to download and review a candidate's resume/CV for a specific job application. The resume is typically returned as a PDF or Word document. This action streams the resume file directly from Breezy HR's servers." }, { "slug": "BREEZY_HR_GET_CANDIDATE_STREAM", "name": "Get Candidate Stream", "description": "Retrieves the last 50 candidate discussion stream events by candidate ID for a given position. Use this action when you need to view the conversation history, activity timeline, status changes, or all interactions related to a specific candidate within a job position. This is useful for tracking candidate engagement, reviewing hiring team notes, or monitoring the progression through the pipeline." }, { "slug": "BREEZY_HR_GET_COMPANY", "name": "Get Company Information", "description": "Retrieves complete information about a company in Breezy HR. Use when you need to fetch company details, settings, or profile information for a specific Breezy HR company account." }, { "slug": "BREEZY_HR_GET_PIPELINE", "name": "Get Pipeline", "description": "Retrieves pipeline stages by pipeline ID for a specified company. Use when you need to fetch the hiring workflow stages associated with a particular pipeline, including stage names, icons, action counts, and associated actions." }, { "slug": "BREEZY_HR_GET_POSITION", "name": "Get Position", "description": "Retrieves detailed information about a specific job position by its ID. Use this action when you have a company ID and position ID and need to fetch the complete position details including description, location, requirements, and settings." }, { "slug": "BREEZY_HR_GET_POSITION_TEAM", "name": "Get Position Team", "description": "Retrieves user objects of all team members assigned to a specific job position. Use this action when you need to view the hiring team members associated with a particular position, including their names, email addresses, usernames, roles (Hiring Team Member or Hiring Manager), and account details. This is useful for understanding who has access to and responsibility for a specific job posting in your Breezy HR account." }, { "slug": "BREEZY_HR_GET_QUESTIONNAIRE", "name": "Get Questionnaire", "description": "Retrieves a questionnaire by its ID for a specific company. Use this action when you need to fetch the details, questions, and settings of an existing questionnaire in Breezy HR." }, { "slug": "BREEZY_HR_GET_TEMPLATE", "name": "Get Email Template", "description": "Retrieves an email template by its ID for a specific company. Use this action when you need to fetch the details, subject line, body content, and settings of an existing email template in Breezy HR." }, { "slug": "BREEZY_HR_GET_USER", "name": "Get User", "description": "Retrieves information about the authenticated user or a specific user by ID. Use this action when you need to fetch user profile details, including name, email, role, and other account information from Breezy HR. If user_id is not provided, the action returns the currently authenticated user's information." }, { "slug": "BREEZY_HR_GET_USER_DETAILS", "name": "Get User Details", "description": "Retrieves the details for the configurations of each company the authenticated user belongs to. This includes company information, hiring pipelines, questionnaires, templates, tasks, scorecards, and team member data. Use this action when you need to fetch comprehensive user and company configuration data for the authenticated user across all accessible companies." }, { "slug": "BREEZY_HR_GET_WEBHOOK_ENDPOINT", "name": "Get Webhook Endpoint", "description": "Retrieves detailed information about a specific webhook endpoint by its ID. Use this action when you need to fetch details about an existing webhook endpoint, including its configuration, subscribed events, status, and delivery statistics. This is a read-only operation that does not modify any data." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_ASSESSMENTS", "name": "List Candidate Assessments", "description": "Retrieves all 3rd party assessments a candidate has taken for a specific position. Use this action when you need to: - View the assessment history for a specific candidate - Check the status of ongoing or pending assessments - Retrieve assessment results and reports - Verify candidate has completed required pre-employment assessments This action queries the Breezy HR API to get all assessments associated with a candidate within a specific position and company context." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_BACKGROUND_CHECKS", "name": "List Candidate Background Checks", "description": "Retrieves all 3rd party background checks for a candidate. Use this action when you need to: - View the background check history for a specific candidate - Check the status of ongoing background checks - Retrieve background check results and reports This action queries the Breezy HR API to get all background checks associated with a candidate within a specific position and company context." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_CUSTOM_ATTRIBUTES", "name": "List candidate custom attributes", "description": "Retrieves all candidate-specific custom attributes configured for a company. Use this action when you need to list all available custom fields that can be used to store additional candidate information beyond the standard Breezy HR candidate fields. These custom attributes can include things like desired salary, source of application, department preferences, or any other company-specific data points. This is a read-only operation that does not modify any data." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_CUSTOM_FIELDS", "name": "List Candidate Custom Fields", "description": "Retrieves all custom field values for a specific candidate in the context of a job position. Use when you need to get the values of custom fields that have been filled out for a candidate in a specific job application, such as source of application, desired salary, department preference, or any other company-defined custom data points. This is a read-only operation that does not modify any data." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_DOCUMENTS", "name": "List Candidate Documents", "description": "Retrieve candidate documents by candidate ID for a given position. Use when you need to list all documents associated with a specific candidate for a specific job position. The documents may include resumes, cover letters, portfolios, or other relevant files." }, { "slug": "BREEZY_HR_LIST_CANDIDATE_QUESTIONNAIRES", "name": "List Candidate Questionnaires", "description": "Retrieves all questionnaires for a specific candidate. Use this action when you need to: - View all questionnaires associated with a candidate - Check the status of questionnaire submissions - Retrieve questionnaire completion dates and scores - Track pending or overdue questionnaires This action queries the Breezy HR API to get all questionnaires associated with a candidate within a specific position and company context." }, { "slug": "BREEZY_HR_LIST_COMPANIES", "name": "List Companies", "description": "Retrieve the companies associated with the authenticated user. Use this action when you need to discover what companies are accessible to the authenticated user, such as for listing available workspaces or checking company details." }, { "slug": "BREEZY_HR_LIST_PIPELINES", "name": "List Company Pipelines", "description": "Retrieve all pipelines for a company. Use this action when you need to list all hiring pipelines configured in a Breezy HR company account. This action is read-only and returns pipeline information including stages, positions, and settings." }, { "slug": "BREEZY_HR_LIST_POSITION_CUSTOM_ATTRIBUTES", "name": "List Position Custom Attributes", "description": "Retrieve all position-specific custom attributes defined for a company in Breezy HR. Use this action when you need to discover what custom fields are available for job positions, such as for building forms, validating attribute values, or understanding position data structure." }, { "slug": "BREEZY_HR_LIST_POSITION_CUSTOM_FIELDS", "name": "List Position Custom Fields", "description": "Retrieve all custom fields for a specific position in Breezy HR. Use this action when you need to fetch the custom field values assigned to a particular job position, such as when reviewing candidate applications or updating position details. This action retrieves the custom field values (name, value, and security flag) that are associated with the specified position." }, { "slug": "BREEZY_HR_LIST_POSITIONS", "name": "List Breezy HR Positions", "description": "Retrieves all job positions for a specified company, optionally filtered by state. Use when you need to find available job openings, list company positions, or get position details for a Breezy HR company account. The state filter defaults to 'published' to return only active job listings." }, { "slug": "BREEZY_HR_LIST_QUESTIONNAIRES", "name": "List company questionnaires", "description": "Retrieves all company questionnaires from Breezy HR. Use this action when you need to fetch all available questionnaires associated with a specific company in the Breezy HR system." }, { "slug": "BREEZY_HR_LIST_TEMPLATES", "name": "List Company Templates", "description": "Retrieves all company email templates from Breezy HR. Use this action when you need to fetch all available email templates associated with a specific company in the Breezy HR system. This is useful for finding templates to use in candidate communications, customizing email workflows, or managing company communication templates." }, { "slug": "BREEZY_HR_LIST_WEBHOOK_ENDPOINTS", "name": "List Webhook Endpoints", "description": "Retrieves all webhook endpoints configured for a specified company in Breezy HR. Use when you need to list all registered webhook endpoints, audit which events are being monitored, or check the configuration of existing webhooks. This action is read-only and idempotent." }, { "slug": "BREEZY_HR_PAUSE_WEBHOOK_ENDPOINT", "name": "Pause Webhook Endpoint", "description": "Pause webhook delivery to an endpoint in Breezy HR. Use when you need to temporarily stop receiving webhook notifications without deleting the endpoint configuration. The endpoint remains configured and can be resumed later. This action is useful during maintenance windows, debugging scenarios, or when you need to temporarily halt webhook processing while keeping the endpoint configuration intact. The endpoint status changes to 'paused' while the 'enabled' flag remains true, allowing for easy resumption." }, { "slug": "BREEZY_HR_RESUME_WEBHOOK_ENDPOINT", "name": "Resume Webhook Endpoint", "description": "Resume webhook delivery to a paused endpoint in Breezy HR. Use when you need to resume webhook delivery to an endpoint that was previously paused. Once resumed, the endpoint will start receiving webhook notifications for subscribed events again." }, { "slug": "BREEZY_HR_SEARCH_CANDIDATES", "name": "Search Candidates by Email", "description": "Search for candidates by their email address across all positions in a company. Use when you need to find candidates with a specific email address, verify if a candidate exists in the system, or retrieve candidate information based on email. This is a read-only operation that searches across all positions and pipelines." }, { "slug": "BREEZY_HR_UPDATE_CANDIDATE", "name": "Update Candidate", "description": "Tool to update a candidate on a specific position in Breezy HR. Use when you need to modify candidate information such as their headline, contact details, social profiles, tags, or other details on an existing candidate application. The candidate must already exist for the specified position. This action makes a PUT request to update the candidate's information." }, { "slug": "BREEZY_HR_UPDATE_CANDIDATE_SCORECARD", "name": "Update candidate scorecard", "description": "Update a candidate's scorecard for a specific position in a company. Use this action when you need to record a candidate's evaluation score and optional notes during the hiring process. This action is idempotent — calling it multiple times with the same parameters will update (not duplicate) the scorecard." }, { "slug": "BREEZY_HR_UPDATE_CANDIDATE_STAGE", "name": "Update Candidate Stage", "description": "Move a candidate to a specified stage in the hiring pipeline. Use when you need to advance, move, or reassign a candidate to a different stage in the recruitment process (e.g., from 'applied' to 'interviewing', or 'interviewing' to 'offer'). The action requires the company ID, position ID, candidate ID, and the target stage ID." }, { "slug": "BREEZY_HR_UPDATE_POSITION", "name": "Update Position", "description": "Tool to update details of an existing position in Breezy HR. Use when you need to modify any attributes of an existing job position such as the name, description, department, employment type, category, education requirements, experience level, location, tags, or other position properties. The position must already exist for the specified company. This action makes a PUT request to update the position's information." }, { "slug": "BREEZY_HR_UPDATE_POSITION_STATE", "name": "Update position state", "description": "Update the state of an existing position in Breezy HR. Use when you need to change a position's workflow state (e.g., from draft to published, or closing a position after hiring is complete). This action is commonly used during recruitment workflow management." }, { "slug": "BREEZY_HR_UPDATE_WEBHOOK_ENDPOINT", "name": "Update Webhook Endpoint", "description": "Update an existing webhook endpoint to receive event notifications from Breezy HR. Use when you need to modify the configuration of an existing webhook endpoint, such as changing the target URL, updating the description, modifying subscribed events, or enabling/disabling the endpoint. The endpoint must already exist for the specified company. This action makes a PUT request to update the webhook endpoint's configuration." } ], "triggers": [] }, { "slug": "launch_darkly", "name": "LaunchDarkly", "logo": "https://logos.composio.dev/api/launch_darkly", "description": "A feature management platform that helps teams build better software faster using feature flags.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 248, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LAUNCH_DARKLY_ADD_MEMBER_TO_TEAMS", "name": "Add Member to Teams", "description": "Tool to add a LaunchDarkly member to one or more teams. Use when you need to grant a member access to specific teams within your organization." }, { "slug": "LAUNCH_DARKLY_APPLY_APPROVAL_REQUEST", "name": "Apply Approval Request", "description": "Tool to apply an approved approval request in LaunchDarkly. Use when you need to execute changes that have been approved." }, { "slug": "LAUNCH_DARKLY_APPLY_APPROVAL_REQUEST_FOR_FLAG", "name": "Apply Approval Request for Flag", "description": "Tool to apply an approved approval request for a feature flag in LaunchDarkly. Use when you need to execute changes that have been approved for a specific flag in an environment." }, { "slug": "LAUNCH_DARKLY_COPY_FEATURE_FLAG", "name": "Copy Feature Flag", "description": "Tool to copy a feature flag's configuration from one environment to another within the same project. Use when you need to replicate flag settings across environments, such as promoting configurations from test to production." }, { "slug": "LAUNCH_DARKLY_CREATE_ANNOUNCEMENT_PUBLIC", "name": "Create Announcement", "description": "Tool to create a public announcement in LaunchDarkly. Use when you need to notify users about system maintenance, important updates, or critical information. Announcements can be scheduled to appear at specific times and optionally set to auto-expire." }, { "slug": "LAUNCH_DARKLY_CREATE_APPROVAL_REQUEST", "name": "Create Approval Request", "description": "Tool to create an approval request in LaunchDarkly. Use when you need to request approval for flag changes before they are applied. The request requires a resource ID, description, and a list of instructions in semantic patch format." }, { "slug": "LAUNCH_DARKLY_CREATE_APPROVAL_REQUEST_FOR_FLAG", "name": "Create Approval Request for Flag", "description": "Tool to create an approval request for a feature flag in LaunchDarkly. Use when you need to request approval for changes to a feature flag before applying them. Approval requests enable workflow controls and review processes for flag changes." }, { "slug": "LAUNCH_DARKLY_CREATE_APPROVAL_REQUEST_REVIEW", "name": "Create Approval Request Review", "description": "Tool to review an approval request by approving, declining, or commenting on changes. Use when you need to provide feedback or make a decision on a pending approval request in LaunchDarkly." }, { "slug": "LAUNCH_DARKLY_CREATE_APPROVAL_REQUEST_REVIEW_FOR_FLAG", "name": "Create Approval Request Review for Flag", "description": "Tool to review an approval request for a feature flag by approving, declining, or commenting on the changes. Use when you need to provide feedback or make a decision on a pending flag approval request." }, { "slug": "LAUNCH_DARKLY_CREATE_BIG_SEGMENT_EXPORT", "name": "Create Big Segment Export", "description": "Tool to create an export for a big segment in LaunchDarkly. Use when you need to export a synced segment or list-based segment with 15,000+ entries. The export ID is returned and can be used to check export status." }, { "slug": "LAUNCH_DARKLY_CREATE_BIG_SEGMENT_STORE_INTEGRATION", "name": "Create Big Segment Store Integration", "description": "Tool to create a persistent store integration for big segments in LaunchDarkly. Use when you need to set up a new Redis or DynamoDB integration for syncing large list-based segments. This integration is required for server-side SDKs to evaluate segments synced from external tools." }, { "slug": "LAUNCH_DARKLY_CREATE_CUSTOM_ROLE", "name": "Create Custom Role", "description": "Tool to create a new custom role in LaunchDarkly. Use when you need to define a custom set of permissions for members or teams. The role must have a unique key and at least one policy statement defining the allowed or denied actions." }, { "slug": "LAUNCH_DARKLY_CREATE_DESTINATION", "name": "Create Data Export Destination", "description": "Tool to create a new Data Export destination for exporting LaunchDarkly event data to external services. Use when you need to set up integrations with services like Kinesis, Google PubSub, Azure Event Hubs, or other supported destinations." }, { "slug": "LAUNCH_DARKLY_CREATE_ENVIRONMENT", "name": "Create Environment", "description": "Tool to create a new environment within a LaunchDarkly project. Use when you need to add a new environment such as development, staging, or production." }, { "slug": "LAUNCH_DARKLY_CREATE_EXPERIMENT", "name": "Create Experiment", "description": "Tool to create a new experiment in LaunchDarkly. Use when you need to set up A/B tests or multivariate experiments to measure the impact of feature flag variations on specified metrics." }, { "slug": "LAUNCH_DARKLY_CREATE_EXTINCTION", "name": "Create Extinction Events", "description": "Tool to create new extinction events for feature flags in LaunchDarkly. Use when you need to record that a feature flag has been removed from the codebase. Extinction events track when flags are no longer referenced in code." }, { "slug": "LAUNCH_DARKLY_CREATE_FEATURE_FLAG", "name": "Create Feature Flag", "description": "Tool to create a new feature flag in LaunchDarkly. Use when you need to create a feature flag with a name, key, and optional variations. Supports creating both standard and migration flags." }, { "slug": "LAUNCH_DARKLY_CREATE_FLAG_CONFIG_SCHEDULED_CHANGES", "name": "Create Flag Scheduled Changes", "description": "Tool to create a scheduled changes workflow for a feature flag in LaunchDarkly. Scheduled changes allow you to plan flag configuration updates for a future time. Use when you need to automate flag changes at a specific date/time." }, { "slug": "LAUNCH_DARKLY_CREATE_FLAG_COPY_CONFIG_APPROVAL_REQUEST", "name": "Create Flag Copy Config Approval Request", "description": "Tool to create an approval request for copying a feature flag's configuration from one environment to another. Use when you need to promote flag settings across environments with approval workflow." }, { "slug": "LAUNCH_DARKLY_CREATE_FLAG_IMPORT_CONFIGURATION", "name": "Create Flag Import Configuration", "description": "Tool to create a new flag import configuration for importing feature flags from external feature management systems like Split or Unleash. Use when setting up automated flag synchronization from another platform into LaunchDarkly. The config object structure varies by integration key." }, { "slug": "LAUNCH_DARKLY_CREATE_FLAG_LINK", "name": "Create Flag Link", "description": "Tool to create a new flag link in LaunchDarkly. Flag links connect feature flags to external resources such as documentation, issue trackers (like JIRA), or code repositories. Use when you need to associate a flag with an external URL for tracking or documentation purposes." }, { "slug": "LAUNCH_DARKLY_CREATE_HOLDOUT", "name": "Create Holdout", "description": "Tool to create a new holdout in LaunchDarkly for experiment control groups. Use when you need to create a holdout to measure the impact of features against a control group. Requires LD-API-Version: beta header." }, { "slug": "LAUNCH_DARKLY_CREATE_INTEGRATION_CONFIGURATION", "name": "Create Integration Configuration", "description": "Tool to create a new integration configuration in LaunchDarkly. Use when you need to set up automated workflows with external services like Slack, Datadog, Jira, custom webhooks, or other third-party integrations. Note: This endpoint requires the 'LD-API-Version: beta' header which is automatically included." }, { "slug": "LAUNCH_DARKLY_CREATE_ITERATION", "name": "Create Experiment Iteration", "description": "Tool to create a new iteration for an experiment in LaunchDarkly. Use when you need to set up a new experiment iteration with specific hypothesis, metrics, treatments (variations), and feature flag configurations." }, { "slug": "LAUNCH_DARKLY_CREATE_LAYER", "name": "Create Layer", "description": "Tool to create a new layer in a LaunchDarkly project. Use when you need to set up a new layer for organizing experiments." }, { "slug": "LAUNCH_DARKLY_CREATE_MEMBERS", "name": "Create Members", "description": "Tool to invite one or more new members to join a LaunchDarkly account. Use when you need to add new team members. Each member receives an invitation email and must have an email address and either a role or customRoles." }, { "slug": "LAUNCH_DARKLY_CREATE_METRIC", "name": "Create Metric", "description": "Tool to create a new metric in LaunchDarkly. Use when you need to define a new metric for tracking pageviews, clicks, or custom events in experiments." }, { "slug": "LAUNCH_DARKLY_CREATE_METRIC_GROUP", "name": "Create Metric Group", "description": "Tool to create a new metric group in LaunchDarkly. Use when you need to organize multiple metrics together for experiments or analysis. Metric groups must contain at least 2 metrics." }, { "slug": "LAUNCH_DARKLY_CREATE_MIGRATION_SAFETY_ISSUES", "name": "Create Migration Safety Issues", "description": "Tool to check migration safety issues for a feature flag patch. Returns safety issues associated with the provided semantic patch instructions. Use when you need to validate if flag changes will cause migration issues before applying them." }, { "slug": "LAUNCH_DARKLY_CREATE_O_AUTH2_CLIENT", "name": "Create OAuth 2.0 Client", "description": "Tool to create (register) a LaunchDarkly OAuth 2.0 client. Use when you need to build custom integrations using LaunchDarkly as your identity provider. The client secret is only returned upon creation, so save it securely." }, { "slug": "LAUNCH_DARKLY_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project with the given key and name. Project keys must be unique within an account. Use when you need to set up a new project in LaunchDarkly." }, { "slug": "LAUNCH_DARKLY_CREATE_RELAY_AUTO_CONFIG", "name": "Create Relay Proxy Auto Configuration", "description": "Tool to create a new Relay Proxy configuration in LaunchDarkly. Use when you need to set up a new Relay Proxy with specific access policies for environments and projects. The response includes the full configuration key which is only shown once." }, { "slug": "LAUNCH_DARKLY_CREATE_RELEASE_FOR_FLAG", "name": "Create Release for Flag", "description": "Tool to create a release by adding a flag to a release pipeline in LaunchDarkly. Use when you need to add a feature flag to a release pipeline for progressive rollout across multiple phases." }, { "slug": "LAUNCH_DARKLY_CREATE_RELEASE_PIPELINE", "name": "Create Release Pipeline", "description": "Tool to create a release pipeline in LaunchDarkly. Release pipelines standardize and automate the feature flag release process across a series of phases. Use when you need to set up a structured rollout process." }, { "slug": "LAUNCH_DARKLY_CREATE_RELEASE_POLICY", "name": "Create Release Policy", "description": "Tool to create a new release policy for a specified project. Use when you need to set up release automation policies for progressive or guarded rollouts. Requires beta API version header." }, { "slug": "LAUNCH_DARKLY_CREATE_REPOSITORY", "name": "Create Repository", "description": "Tool to create a code reference repository with the specified name. Use when you need to set up a new repository for code reference scanning in LaunchDarkly. This enables tracking of feature flag usage across your codebase." }, { "slug": "LAUNCH_DARKLY_CREATE_SEGMENT", "name": "Create Segment", "description": "Tool to create a new segment in LaunchDarkly. Segments are groups of contexts that you can use to manage flag targeting rules. Use when you need to organize users, devices, or other contexts into logical groups for feature flag targeting." }, { "slug": "LAUNCH_DARKLY_CREATE_SUBSCRIPTION", "name": "Create Audit Log Subscription", "description": "Tool to create a new audit log subscription for forwarding LaunchDarkly audit events to external services. Use when you need to set up integrations with monitoring or logging platforms like Datadog, Splunk, Elastic, or Microsoft Teams to receive real-time audit log notifications." }, { "slug": "LAUNCH_DARKLY_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in LaunchDarkly. Use when you need to set up a new team for organizing members and managing permissions. To learn more, read Creating a team documentation." }, { "slug": "LAUNCH_DARKLY_CREATE_TRIGGER_WORKFLOW", "name": "Create Flag Trigger Workflow", "description": "Creates a flag trigger workflow in LaunchDarkly. Flag triggers allow you to automatically toggle feature flags on or off in response to external events (e.g., monitoring alerts from Datadog, Honeycomb, or custom webhooks). The trigger generates a unique URL that can be called to execute the configured flag action." }, { "slug": "LAUNCH_DARKLY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook in LaunchDarkly. Use when you need to set up HTTP callbacks to receive notifications about events in your LaunchDarkly environment." }, { "slug": "LAUNCH_DARKLY_CREATE_WORKFLOW", "name": "Create Workflow", "description": "Tool to create a workflow in LaunchDarkly for automating flag changes. Use when you need to schedule flag changes or set up approval-based flag management. Workflows can execute flag actions based on time schedules or approval conditions." }, { "slug": "LAUNCH_DARKLY_CREATE_WORKFLOW_TEMPLATE", "name": "Create Workflow Template", "description": "Tool to create a workflow template in LaunchDarkly. Workflow templates provide reusable patterns for common flag change workflows. Use when you need to standardize workflow processes across teams or projects. Either provide an existing workflowId to convert a workflow into a template, or provide stages with flagKey and environmentKey to define a new template from scratch." }, { "slug": "LAUNCH_DARKLY_DELETE_ANNOUNCEMENT_PUBLIC", "name": "Delete Announcement", "description": "Tool to permanently delete an announcement from LaunchDarkly. Use when you need to remove an announcement that is no longer needed. Once deleted, the announcement cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_APPROVAL_REQUEST", "name": "Delete Approval Request", "description": "Tool to delete an approval request in LaunchDarkly. Use when you need to remove a pending or declined approval request. Once deleted, the approval request cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_APPROVAL_REQUEST_FOR_FLAG", "name": "Delete Approval Request for Flag", "description": "Permanently deletes an approval request for a feature flag in LaunchDarkly. Approval requests allow teams to review and approve flag changes before they are applied. Once deleted, the approval request cannot be recovered. Ensure you have the correct approval request ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_BIG_SEGMENT_STORE_INTEGRATION", "name": "Delete Big Segment Store Integration", "description": "Tool to permanently delete a persistent store integration for big segments. Each integration uses either Redis or DynamoDB. Use when you need to remove a big segment store configuration from an environment." }, { "slug": "LAUNCH_DARKLY_DELETE_BRANCHES", "name": "Delete Branches from Code Reference Repository", "description": "Asynchronously deletes multiple branches from a LaunchDarkly code reference repository. Use this tool to clean up old or unused branches from your code reference configuration. The operation is asynchronous - branches are queued for deletion rather than deleted immediately." }, { "slug": "LAUNCH_DARKLY_DELETE_CUSTOM_ROLE", "name": "Delete Custom Role", "description": "Permanently deletes a custom role from LaunchDarkly. Once deleted, the role cannot be recovered and will be removed from all members and teams it was assigned to. Ensure you have the correct role key before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_DESTINATION", "name": "Delete Data Export Destination", "description": "Permanently deletes a Data Export destination from LaunchDarkly. Data Export destinations allow you to export event data to external services. Once deleted, the destination cannot be recovered. Ensure you have the correct destination ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_ENVIRONMENT", "name": "Delete Environment", "description": "Tool to permanently delete an environment from a LaunchDarkly project. Once deleted, the environment and its configuration cannot be recovered. Ensure you have the correct project and environment keys before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_FEATURE_FLAG", "name": "Delete Feature Flag", "description": "Tool to permanently delete a feature flag from LaunchDarkly. Use when you need to remove a feature flag that is no longer needed. Once deleted, the flag cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_FLAG_CONFIG_SCHEDULED_CHANGES", "name": "Delete Flag Scheduled Changes", "description": "Tool to delete scheduled changes workflow for a feature flag in LaunchDarkly. Scheduled changes allow you to plan flag configuration updates for a future time. Once deleted, the scheduled changes cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_FLAG_IMPORT_CONFIGURATION", "name": "Delete Flag Import Configuration", "description": "Tool to delete a flag import configuration by ID. The integration key identifies the feature management system from which the import occurs (e.g., 'split'). This action requires the LD-API-Version: beta header." }, { "slug": "LAUNCH_DARKLY_DELETE_FLAG_LINK", "name": "Delete Flag Link", "description": "Permanently deletes a flag link from LaunchDarkly. Flag links connect feature flags to external resources or documentation. Once deleted, the link cannot be recovered. Ensure you have the correct link ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_INTEGRATION_CONFIGURATION", "name": "Delete Integration Configuration", "description": "Permanently deletes an integration configuration from LaunchDarkly. Integration configurations enable automated workflows with external services like Slack, Datadog, or custom webhooks. Once deleted, the configuration cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_MEMBER", "name": "Delete Account Member", "description": "Tool to permanently delete an account member from LaunchDarkly. Use when you need to remove a member's access to the organization. Once deleted, the member will lose all access and need to be re-invited to regain access." }, { "slug": "LAUNCH_DARKLY_DELETE_METRIC", "name": "Delete Metric", "description": "Tool to permanently delete a metric from LaunchDarkly. Use when you need to remove a metric that is no longer needed. Once deleted, the metric cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_METRIC_GROUP", "name": "Delete Metric Group", "description": "Tool to permanently delete a metric group from LaunchDarkly. Use when you need to remove a metric group that is no longer needed. Once deleted, the metric group cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_O_AUTH_CLIENT", "name": "Delete OAuth 2.0 Client", "description": "Permanently deletes an OAuth 2.0 client from LaunchDarkly. OAuth 2.0 clients are used for programmatic access to the LaunchDarkly API. Once deleted, the client and its credentials cannot be recovered. Ensure you have the correct client ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to permanently delete a project from LaunchDarkly. Once deleted, the project, its environments, feature flags, and all associated data cannot be recovered. Use with caution and ensure you have the correct project key before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_RELAY_AUTO_CONFIG", "name": "Delete Relay Proxy Auto Configuration", "description": "Tool to delete a Relay Proxy auto configuration by ID. Use when you need to permanently remove a relay proxy configuration from LaunchDarkly. Once deleted, the configuration cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_RELEASE_BY_FLAG_KEY", "name": "Delete Release by Flag Key", "description": "Tool to delete a release from a feature flag. Use when you need to remove a release associated with a flag in LaunchDarkly." }, { "slug": "LAUNCH_DARKLY_DELETE_RELEASE_PIPELINE", "name": "Delete Release Pipeline", "description": "Tool to permanently delete a release pipeline from LaunchDarkly. Use when you need to remove a pipeline that is no longer needed." }, { "slug": "LAUNCH_DARKLY_DELETE_RELEASE_POLICY", "name": "Delete Release Policy", "description": "Tool to permanently delete a release policy from a LaunchDarkly project. Once deleted, the policy cannot be recovered. Requires beta API version header." }, { "slug": "LAUNCH_DARKLY_DELETE_REPOSITORY", "name": "Delete Repository", "description": "Tool to delete a code reference repository with the specified name. Use when you need to permanently remove a repository from LaunchDarkly's code references system. Once deleted, the repository and its associated data cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_SEGMENT", "name": "Delete Segment", "description": "Permanently deletes a segment from LaunchDarkly. Segments are groups of contexts that you can use to manage flag targeting rules. Once deleted, the segment cannot be recovered. Ensure you have the correct segment key before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_SUBSCRIPTION", "name": "Delete Audit Log Subscription", "description": "Tool to permanently delete an audit log subscription in LaunchDarkly. Audit log subscriptions forward LaunchDarkly audit events to external services like Datadog, Splunk, or Microsoft Teams. Once deleted, the subscription cannot be recovered and audit events will no longer be forwarded to that integration endpoint." }, { "slug": "LAUNCH_DARKLY_DELETE_TEAM", "name": "Delete Team", "description": "Permanently deletes a team from LaunchDarkly organization. Once deleted, the team and its associated settings cannot be recovered. Ensure you have the correct team key before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_TOKEN", "name": "Delete Access Token", "description": "Tool to permanently delete an access token from LaunchDarkly. Once deleted, the token cannot be recovered and any integrations using it will no longer be able to authenticate." }, { "slug": "LAUNCH_DARKLY_DELETE_TRIGGER_WORKFLOW", "name": "Delete Flag Trigger Workflow", "description": "Permanently deletes a flag trigger workflow from LaunchDarkly. Flag triggers allow you to initiate flag changes remotely using a unique webhook URL. Once deleted, the trigger and its URL cannot be recovered. Ensure you have the correct trigger ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook from LaunchDarkly. Use when you need to remove an existing webhook integration. Once deleted, the webhook and its configuration cannot be recovered." }, { "slug": "LAUNCH_DARKLY_DELETE_WORKFLOW", "name": "Delete Workflow", "description": "Permanently deletes a workflow from LaunchDarkly. Workflows automate flag changes based on conditions or schedules. Once deleted, the workflow cannot be recovered. Ensure you have the correct workflow ID before proceeding." }, { "slug": "LAUNCH_DARKLY_DELETE_WORKFLOW_TEMPLATE", "name": "Delete Workflow Template", "description": "Permanently deletes a workflow template from LaunchDarkly. Workflow templates provide reusable patterns for common flag change workflows. Once deleted, the template cannot be recovered. Ensure you have the correct template key before proceeding." }, { "slug": "LAUNCH_DARKLY_EVALUATE_CONTEXT_INSTANCE", "name": "Evaluate Context Instance", "description": "Tool to evaluate flags for a context instance to determine expected flag variations. **Important:** Do not use this as a replacement for LaunchDarkly SDKs in production applications. SDKs are optimized for flag evaluation at scale and generate analytics events. This API is intended for testing, debugging, or administrative purposes only." }, { "slug": "LAUNCH_DARKLY_GENERATE_TRUST_POLICY", "name": "Generate Trust Policy for Data Export", "description": "Tool to generate an AWS trust policy for Data Export destinations. Use when you need to create or update IAM trust policies that allow LaunchDarkly to assume roles for exporting data to AWS services." }, { "slug": "LAUNCH_DARKLY_GET_ALL_HOLDOUTS", "name": "Get All Holdouts", "description": "Tool to retrieve all holdouts for a specific project and environment. Use after confirming project and environment keys to list holdout configurations." }, { "slug": "LAUNCH_DARKLY_GET_ALL_INTEGRATION_CONFIGURATIONS", "name": "Get All Integration Configurations", "description": "Tool to retrieve all integration configurations for a specific integration key. Use when you need to list or audit configurations for integrations like Slack, Datadog, custom approvals, webhooks, or other third-party services. Excludes persistent store and flag import configurations." }, { "slug": "LAUNCH_DARKLY_GET_ALL_RELEASE_PIPELINES", "name": "Get All Release Pipelines", "description": "Tool to retrieve all release pipelines for a project. Use when you need to view available release pipelines for feature flag releases. Supports filtering and pagination." }, { "slug": "LAUNCH_DARKLY_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to retrieve all webhooks configured in the LaunchDarkly account. Use when you need to list, audit, or discover existing webhook integrations." }, { "slug": "LAUNCH_DARKLY_GET_ANNOUNCEMENTS_PUBLIC", "name": "Get Announcements Public", "description": "Tool to retrieve public announcements from LaunchDarkly. Use to get system announcements, maintenance notices, and updates." }, { "slug": "LAUNCH_DARKLY_GET_APPLICATIONS", "name": "Get Applications", "description": "Tool to retrieve a list of applications in LaunchDarkly. Use to enumerate application keys and metadata. Supports filtering by key, name, kind, and autoAdded status." }, { "slug": "LAUNCH_DARKLY_GET_APPLICATION_VERSIONS", "name": "Get Application Versions", "description": "Tool to retrieve all versions for a specific application in LaunchDarkly. Use when you need to list version history or check supported versions." }, { "slug": "LAUNCH_DARKLY_GET_APPROVAL_FOR_FLAG", "name": "Get Approval for Flag", "description": "Tool to get a single approval request for a feature flag in LaunchDarkly. Use when you need detailed information about a specific approval request including its review status, conflicts, and metadata." }, { "slug": "LAUNCH_DARKLY_GET_APPROVAL_REQUEST", "name": "Get Approval Request", "description": "Tool to get a specific approval request by ID from LaunchDarkly. Use when you need detailed information about a particular approval request." }, { "slug": "LAUNCH_DARKLY_GET_APPROVAL_REQUESTS", "name": "Get Approval Requests", "description": "Tool to retrieve all approval requests from LaunchDarkly. Use to monitor pending approvals, track approval history, or audit changes requiring approval." }, { "slug": "LAUNCH_DARKLY_GET_APPROVAL_REQUEST_SETTINGS", "name": "Get Approval Request Settings", "description": "Tool to retrieve approval request settings for a project. Use to understand approval requirements for different resource kinds and environments. Supports filtering by environment and resource kind." }, { "slug": "LAUNCH_DARKLY_GET_APPROVALS_FOR_FLAG", "name": "Get Approvals for Flag", "description": "Tool to retrieve all approval requests for a specific feature flag in an environment. Use when you need to monitor pending approvals or review approval history for a particular flag." }, { "slug": "LAUNCH_DARKLY_GET_AUDIT_LOG_ENTRIES", "name": "Get Audit Log Entries", "description": "Tool to get a list of all audit log entries. Use when you need to review account activity, track changes to resources, or audit modifications for compliance purposes. Results can be filtered by date ranges, resource specifiers, or full-text search." }, { "slug": "LAUNCH_DARKLY_GET_AUDIT_LOG_ENTRY", "name": "Get Audit Log Entry", "description": "Tool to retrieve a single audit log entry by ID. Use when you need to inspect details of a specific audit event." }, { "slug": "LAUNCH_DARKLY_GET_BIG_SEGMENT_EXPORT", "name": "Get Big Segment Export", "description": "Tool to retrieve a specific big segment export by its ID. Use when you need to check the status or details of a segment export operation." }, { "slug": "LAUNCH_DARKLY_GET_BIG_SEGMENT_IMPORT", "name": "Get Big Segment Import", "description": "Tool to retrieve the status and details of a big segment import by its ID. Use when you need to check the progress or completion status of an import operation." }, { "slug": "LAUNCH_DARKLY_GET_BIG_SEGMENT_STORE_INTEGRATION", "name": "Get Big Segment Store Integration", "description": "Tool to retrieve a specific persistent store integration for big segments by its ID. Use when you need to inspect the configuration, status, or details of a big segment store integration." }, { "slug": "LAUNCH_DARKLY_GET_BIG_SEGMENT_STORE_INTEGRATIONS", "name": "Get Big Segment Store Integrations", "description": "Tool to retrieve all persistent store integrations for big segments. Use when you need to list configured Redis or DynamoDB integrations across all projects and environments." }, { "slug": "LAUNCH_DARKLY_GET_BRANCH", "name": "Get Branch", "description": "Tool to retrieve branch information from a LaunchDarkly code reference repository. Use to view branch metadata, HEAD commit, sync status, and flag references within the branch." }, { "slug": "LAUNCH_DARKLY_GET_CALLER_IDENTITY", "name": "Get Caller Identity", "description": "Tool to retrieve basic information about the identity used to authenticate API calls. Use when you need to verify authentication credentials or inspect API token details." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXT_ATTRIBUTE_NAMES", "name": "Get Context Attribute Names", "description": "Tool to retrieve context attribute names for a project and environment. Use when you need to discover available context attributes grouped by context kind." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXT_ATTRIBUTE_VALUES", "name": "Get Context Attribute Values", "description": "Tool to retrieve unique values for a specific context attribute within a project environment. Use when you need to discover what values exist for a context attribute, optionally filtered by context kind." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXT_INSTANCES", "name": "Get Context Instances", "description": "Tool to get context instances for a specific context ID within a project and environment. Use when you need to retrieve context instance data." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXT_KINDS_BY_PROJECT_KEY", "name": "Get Context Kinds By Project Key", "description": "Tool to retrieve all context kinds for a given project. Use when you need to understand available context kinds for targeting and segmentation." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXTS", "name": "Get Contexts", "description": "Tool to retrieve context instances from a LaunchDarkly environment by kind and key. Use when you need to get specific context data for analysis or debugging." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXTS_CLIENTSIDE_USAGE", "name": "Get Contexts Clientside Usage", "description": "Tool to get a detailed time series of context key usages observed by LaunchDarkly in your account, including non-primary context kinds. Use this for breakdowns that go beyond the primary-only aggregation of MAU endpoints. The counts reflect data reported by client-side SDKs." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXTS_SERVERSIDE_USAGE", "name": "Get Contexts Serverside Usage", "description": "Tool to get detailed time series of context key usages observed by LaunchDarkly in your account, including non-primary context kinds. Use for breakdowns beyond primary-only MAU aggregation. The counts reflect data from server-side SDKs. Maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_CONTEXTS_TOTAL_USAGE", "name": "Get Contexts Total Usage", "description": "Tool to get a detailed time series of the number of context key usages observed by LaunchDarkly in your account, including non-primary context kinds. Use this for breakdowns that go beyond the primary-only aggregation of MAU endpoints. The supported granularity varies by aggregation type, and the maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_CTX_INSTANCE_SEGMENTS_MEMBERSHIP", "name": "Get Context Instance Segments Membership By Environment", "description": "Tool to get segment membership details for a given context instance with attributes. Returns which segments the context belongs to and how (individually targeted or rule-based). Use when you need to understand segment membership for a specific user, organization, or other context type." }, { "slug": "LAUNCH_DARKLY_GET_CUSTOM_ROLE", "name": "Get Custom Role", "description": "Tool to retrieve a single custom role by key or ID. Use when you need detailed information about a specific role's permissions and policy statements." }, { "slug": "LAUNCH_DARKLY_GET_CUSTOM_ROLES", "name": "Get Custom Roles", "description": "Tool to retrieve a list of all custom roles. Use when you need to list roles for permissions audits or configuration reviews. Note: results are paginated." }, { "slug": "LAUNCH_DARKLY_GET_CUSTOM_WORKFLOW", "name": "Get Custom Workflow", "description": "Tool to retrieve details of a specific custom workflow by ID. Use when you need to inspect workflow configuration, stages, execution status, or identify conflicts." }, { "slug": "LAUNCH_DARKLY_GET_DATA_EXPORT_EVENTS_USAGE", "name": "Get Data Export Events Usage", "description": "Tool to retrieve a time series array showing the number of data export events from your account. Use when you need to analyze data export usage patterns over time. The supported granularity varies by aggregation type. The maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_DEPENDENT_FLAGS", "name": "Get Dependent Flags", "description": "Tool to list dependent feature flags for a specific flag. Use when you need to identify which flags depend on a given feature flag across environments." }, { "slug": "LAUNCH_DARKLY_GET_DEPENDENT_FLAGS_BY_ENV", "name": "Get Dependent Flags By Environment", "description": "Tool to list dependent flags across all environments for a specified flag. A dependent flag is a flag that uses another flag as a prerequisite. Use when you need to understand flag dependencies." }, { "slug": "LAUNCH_DARKLY_GET_DESTINATION", "name": "Get Data Export Destination", "description": "Tool to retrieve a specific Data Export destination by ID. Use when you need to inspect the configuration details of a destination." }, { "slug": "LAUNCH_DARKLY_GET_DESTINATIONS", "name": "Get Data Export Destinations", "description": "Tool to retrieve all Data Export destinations configured across all projects and environments. Use when you need to list, audit, or discover available data export destinations." }, { "slug": "LAUNCH_DARKLY_GET_ENVIRONMENT", "name": "Get Environment", "description": "Tool to retrieve a specific environment by project key and environment key. Use when you need detailed information about an environment's configuration and settings." }, { "slug": "LAUNCH_DARKLY_GET_ENVIRONMENTS", "name": "Get Environments", "description": "Tool to retrieve a list of all environments within a project. Use after confirming the project key; supports pagination." }, { "slug": "LAUNCH_DARKLY_GET_EVALUATIONS_USAGE", "name": "Get Evaluations Usage", "description": "Tool to get time-series arrays of flag evaluation counts, broken down by variation. Use when analyzing flag usage patterns over time. Granularity is automatic: minutely data within 2 hours, hourly within 2 days, otherwise daily." }, { "slug": "LAUNCH_DARKLY_GET_EVENTS_USAGE", "name": "Get Events Usage", "description": "Tool to get time-series arrays of flag evaluation events. Use when analyzing flag usage patterns or tracking evaluation counts broken down by variation. Granularity varies: minutely for data within 2 hours, hourly for within 2 days, otherwise daily." }, { "slug": "LAUNCH_DARKLY_GET_EXPERIMENT", "name": "Get Experiment", "description": "Tool to retrieve a specific experiment by project key, environment key, and experiment key. Use when you need detailed information about an experiment's configuration, iterations, and metrics." }, { "slug": "LAUNCH_DARKLY_GET_EXPERIMENTATION_EVENTS_USAGE", "name": "Get Experimentation Events Usage", "description": "Tool to retrieve a time series array showing the number of experimentation events from your account. Use when analyzing experimentation event usage patterns over time." }, { "slug": "LAUNCH_DARKLY_GET_EXPERIMENTATION_KEYS_USAGE", "name": "Get Experimentation Keys Usage", "description": "Tool to get a time series showing the number of experimentation keys from your account. Use when you need to track experimentation key usage over time with support for filtering by project, environment, or experiment. Maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_EXPERIMENTATION_SETTINGS", "name": "Get Experimentation Settings", "description": "Tool to retrieve experimentation settings for a project. Use when you need to understand how experiments are configured in a project." }, { "slug": "LAUNCH_DARKLY_GET_EXPERIMENTS", "name": "Get Experiments", "description": "Tool to retrieve experiments from a project and environment. Use after confirming project and environment keys to enumerate experiments and their configurations." }, { "slug": "LAUNCH_DARKLY_GET_EXPIRING_CONTEXT_TARGETS", "name": "Get Expiring Context Targets", "description": "Tool to retrieve context targets scheduled for removal from a feature flag. Use when you need to check which targets will be automatically removed." }, { "slug": "LAUNCH_DARKLY_GET_EXPIRING_TARGETS_FOR_SEGMENT", "name": "Get Expiring Targets For Segment", "description": "Tool to retrieve context targets scheduled for removal from a segment. Use when you need to check which targets will be automatically removed from a segment." }, { "slug": "LAUNCH_DARKLY_GET_EXTINCTIONS", "name": "Get Extinctions", "description": "Tool to get a list of all extinctions. LaunchDarkly creates an extinction event after you remove all code references to a flag. Use to discover flags that have been removed from your codebase. To learn more, read [About extinction events](https://launchdarkly.com/docs/home/observability/code-references#about-extinction-events)." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAG", "name": "Get Feature Flag", "description": "Tool to retrieve a specific feature flag by project key and flag key. Use when you need detailed information about a flag's configuration, variations, and targeting rules." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAGS", "name": "Get Feature Flags", "description": "Tool to retrieve a list of all feature flags in a project. Use after confirming project key to enumerate flags and their configurations." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAG_SCHEDULED_CHANGE", "name": "Get Feature Flag Scheduled Change", "description": "Tool to retrieve a specific scheduled change for a feature flag. Use when you need details about a scheduled flag update, including execution time and instructions." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAG_STATUS", "name": "Get Feature Flag Status", "description": "Tool to retrieve the status of a feature flag. Returns the current status (new, inactive, active, or launched) along with metadata." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAG_STATUS_ACROSS_ENVIRONMENTS", "name": "Get Feature Flag Status Across Environments", "description": "Tool to retrieve the status of a feature flag across all environments in a project. Use when you need to check flag status across multiple environments." }, { "slug": "LAUNCH_DARKLY_GET_FEATURE_FLAG_STATUSES", "name": "Get Feature Flag Statuses", "description": "Tool to retrieve status information for all feature flags in a project environment. The status includes last request time and state (new, active, inactive, or launched)." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_CONFIG_SCHEDULED_CHANGES", "name": "Get Flag Scheduled Changes", "description": "Tool to retrieve scheduled changes for a feature flag. Use when you need to see planned configuration updates for a flag in a specific environment." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_DEFAULTS_BY_PROJECT", "name": "Get Flag Defaults by Project", "description": "Tool to retrieve flag defaults for a specific project. Use when you need to understand the default configuration settings applied to new flags in a project." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_FOLLOWERS", "name": "Get Flag Followers", "description": "Tool to retrieve followers of a flag in a project and environment. Use when you need to see which team members are following a specific feature flag for notifications." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_IMPORT_CONFIGURATION", "name": "Get Flag Import Configuration", "description": "Tool to retrieve a single flag import configuration by project key, integration key, and integration ID. Use when you need to inspect the details of a specific flag import configuration." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_IMPORT_CONFIGURATIONS", "name": "Get Flag Import Configurations", "description": "Tool to list all flag import configurations. Use to discover existing configurations for importing flags from external feature management systems. This action requires the LD-API-Version: beta header." }, { "slug": "LAUNCH_DARKLY_GET_FLAG_LINKS", "name": "Get Flag Links", "description": "Tool to retrieve all flag links for a specific feature flag. Flag links connect feature flags to external resources such as documentation, issue trackers, or code repositories. Use when you need to see what external resources are associated with a flag." }, { "slug": "LAUNCH_DARKLY_GET_FOLLOWERS_BY_PROJ_ENV", "name": "Get Followers By Project and Environment", "description": "Tool to retrieve followers of all flags in a given project and environment. Use when you need to see which team members are following which feature flags." }, { "slug": "LAUNCH_DARKLY_GET_HOLDOUT", "name": "Get Holdout", "description": "Tool to retrieve a specific holdout experiment by project key, environment key, and holdout key. Use when you need detailed information about a holdout experiment configuration, status, and related experiments." }, { "slug": "LAUNCH_DARKLY_GET_INTEGRATION_CONFIGURATION", "name": "Get Integration Configuration", "description": "Tool to retrieve a specific integration configuration by ID. Use when you need to inspect the configuration details of an integration with external services like Slack, Datadog, or custom approvals." }, { "slug": "LAUNCH_DARKLY_GET_INTEGRATION_DELIVERY_CONFIG_BY_ENV", "name": "Get Integration Delivery Configuration by Environment", "description": "Tool to get delivery configurations by environment for feature store integrations. Use when you need to retrieve integration delivery configurations for a specific project and environment." }, { "slug": "LAUNCH_DARKLY_GET_IPS", "name": "Get IPs", "description": "Tool to retrieve the list of IP ranges used by the LaunchDarkly service. Use to configure firewall rules that allow LaunchDarkly traffic." }, { "slug": "LAUNCH_DARKLY_GET_LAYERS", "name": "Get Layers", "description": "Tool to retrieve layers for a project. Use when you need to list all layers or filter by experiment key." }, { "slug": "LAUNCH_DARKLY_GET_MAU_CLIENTSIDE_USAGE", "name": "Get MAU Clientside Usage", "description": "Tool to get a time series of context key usages observed by LaunchDarkly client-side SDKs for the primary context kind. Use when analyzing MAU trends for client applications. The supported granularity varies by aggregation type, and the maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_MAU_TOTAL_USAGE", "name": "Get MAU Total Usage", "description": "Tool to get a time series of the number of context key usages observed by LaunchDarkly in your account, for the primary context kind only. The maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_MAU_USAGE", "name": "Get MAU Usage", "description": "Tool to get a time-series array of monthly active users (MAU) seen by LaunchDarkly from your account. The granularity is always daily. Note: This endpoint is deprecated and does not return information about active context instances after SDK upgrade to contexts. Use for legacy MAU tracking only." }, { "slug": "LAUNCH_DARKLY_GET_MAU_USAGE_BY_CATEGORY", "name": "Get MAU Usage By Category", "description": "Tool to get time-series arrays of monthly active users (MAU) by category (browser, mobile, or backend). Use when you need historical MAU metrics broken down by user category. Note: This endpoint is deprecated and does not return information about active context instances." }, { "slug": "LAUNCH_DARKLY_GET_MEMBER", "name": "Get Account Member", "description": "Tool to retrieve detailed information about a specific LaunchDarkly account member. Use when you need to view member details, roles, permissions, or team memberships." }, { "slug": "LAUNCH_DARKLY_GET_MEMBERS", "name": "Get Members", "description": "Tool to retrieve a list of account members. Use when you need to list members for management, audit, or access control purposes. Supports filtering and pagination. By default, returns the first 20 members." }, { "slug": "LAUNCH_DARKLY_GET_METRIC", "name": "Get Metric", "description": "Tool to retrieve a specific metric by project key and metric key. Use when you need detailed information about a metric's configuration, experiments, and usage." }, { "slug": "LAUNCH_DARKLY_GET_METRIC_GROUP", "name": "Get Metric Group", "description": "Tool to retrieve a specific metric group by project key and metric group key. Use when you need detailed information about a metric group's configuration, metrics, and experiments." }, { "slug": "LAUNCH_DARKLY_GET_O_AUTH_CLIENT_BY_ID", "name": "Get OAuth 2.0 Client by ID", "description": "Tool to retrieve a registered OAuth 2.0 client by its unique client ID. Use when you need to view details about an OAuth client including its name, description, and redirect URI." }, { "slug": "LAUNCH_DARKLY_GET_O_AUTH_CLIENTS", "name": "Get OAuth 2.0 Clients", "description": "Tool to retrieve all OAuth 2.0 clients registered by your account. Use when you need to list, audit, or manage OAuth clients for API access." }, { "slug": "LAUNCH_DARKLY_GET_OBSERVABILITY_ERRORS_USAGE", "name": "Get Observability Errors Usage", "description": "Tool to get time-series arrays of the number of observability errors. Supports daily and monthly granularity. Use when you need to analyze error trends over time or monitor observability error counts." }, { "slug": "LAUNCH_DARKLY_GET_OBSERVABILITY_LOGS_USAGE", "name": "Get Observability Logs Usage", "description": "Tool to retrieve time-series arrays of observability logs usage data. Supports daily and monthly granularity with various aggregation methods." }, { "slug": "LAUNCH_DARKLY_GET_OBSERVABILITY_SESSIONS_USAGE", "name": "Get Observability Sessions Usage", "description": "Tool to get time-series arrays of the number of observability sessions. Use when analyzing observability usage patterns. Supports 'daily' and 'monthly' granularity." }, { "slug": "LAUNCH_DARKLY_GET_OBSERVABILITY_TRACES_USAGE", "name": "Get Observability Traces Usage", "description": "Tool to retrieve time-series arrays of observability traces usage data. Supports daily and monthly granularity with various aggregation methods." }, { "slug": "LAUNCH_DARKLY_GET_OPENAPI_SPEC", "name": "Get OpenAPI Spec", "description": "Tool to retrieve the latest OpenAPI specification for LaunchDarkly's API in JSON format. Use when you need the complete API schema, available endpoints, or integration documentation." }, { "slug": "LAUNCH_DARKLY_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific project by project key. Use when you need detailed information about a project's configuration and settings." }, { "slug": "LAUNCH_DARKLY_GET_RELAY_PROXY_CONFIG", "name": "Get Relay Proxy Config", "description": "Tool to retrieve a single Relay Proxy auto configuration by ID. Use when you need to inspect the details of a specific relay proxy configuration." }, { "slug": "LAUNCH_DARKLY_GET_RELAY_PROXY_CONFIGS", "name": "Get Relay Proxy Configs", "description": "Tool to retrieve all Relay Proxy configurations in the LaunchDarkly account. Use when you need to list, audit, or manage Relay Proxy configurations." }, { "slug": "LAUNCH_DARKLY_GET_RELEASE_BY_FLAG_KEY", "name": "Get Release by Flag Key", "description": "Tool to retrieve the currently active release for a feature flag. Use when you need to check release status, phases, and configuration for a specific flag." }, { "slug": "LAUNCH_DARKLY_GET_RELEASE_PIPELINE_BY_KEY", "name": "Get Release Pipeline by Key", "description": "Tool to retrieve a release pipeline by its key. Use when you need detailed information about a release pipeline's configuration, phases, and settings." }, { "slug": "LAUNCH_DARKLY_GET_RELEASE_POLICIES", "name": "Get Release Policies", "description": "Tool to retrieve a list of release policies for a specified project. Use when you need to view available release automation policies for progressive or guarded rollouts. Requires beta API version header." }, { "slug": "LAUNCH_DARKLY_GET_RELEASE_POLICY", "name": "Get Release Policy", "description": "Tool to retrieve a single release policy by its key for a specified project. Use when you need detailed information about a specific release automation policy. Requires beta API version header." }, { "slug": "LAUNCH_DARKLY_GET_RELEASE_PROGRESSIONS_FOR_PIPELINE", "name": "Get All Release Progressions for Release Pipeline", "description": "Tool to retrieve details on the progression of all releases, across all flags, for a release pipeline. Use when you need to monitor release status, active phases, and completion counts across a pipeline." }, { "slug": "LAUNCH_DARKLY_GET_REPOSITORY", "name": "Get Repository", "description": "Tool to get a single code reference repository by name. Use when you need to retrieve details about a specific repository configured in LaunchDarkly's code references system." }, { "slug": "LAUNCH_DARKLY_GET_ROOT", "name": "Get Root", "description": "Tool to retrieve the LaunchDarkly API root resource. Returns hypermedia links to all available API endpoints." }, { "slug": "LAUNCH_DARKLY_GET_ROOT_STATISTIC", "name": "Get Root Code Reference Statistic", "description": "Tool to get links to code reference repositories for each project. Use to discover which projects have code references enabled." }, { "slug": "LAUNCH_DARKLY_GET_SEGMENT", "name": "Get Segment", "description": "Tool to retrieve a specific segment by segment key. Use when you need detailed information about a segment's configuration, targeting rules, and members. Segments are groups of contexts that you can use to manage flag targeting rules." }, { "slug": "LAUNCH_DARKLY_GET_SEGMENT_MEMBERSHIP_FOR_CONTEXT", "name": "Get Segment Membership For Context", "description": "Tool to get big segment membership status for a specific context. Returns whether the context is explicitly included or excluded from the segment. Use when you need to check if a specific user or other context is a member of a big segment." }, { "slug": "LAUNCH_DARKLY_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a list of all segments in a project and environment. Use after confirming project and environment keys to enumerate segments and their configurations." }, { "slug": "LAUNCH_DARKLY_GET_SERVICE_CONNECTIONS_USAGE", "name": "Get Service Connections Usage", "description": "Tool to get a time series array showing the number of service connection minutes from your account. Use when you need to monitor or analyze service connection usage over time. The supported granularity varies by aggregation type, and the maximum time range is 365 days." }, { "slug": "LAUNCH_DARKLY_GET_STATISTICS", "name": "Get Code References Statistics", "description": "Tool to retrieve code references statistics for feature flags. Use when you need to understand where flags are referenced in your codebase." }, { "slug": "LAUNCH_DARKLY_GET_STREAM_USAGE", "name": "Get Stream Usage", "description": "Tool to get time-series data of streaming connections to LaunchDarkly. Returns minutely data for requests within the past 2 hours, hourly data for the last 2 days, and daily data otherwise." }, { "slug": "LAUNCH_DARKLY_GET_STREAM_USAGE_BY_SDK_VERSION", "name": "Get Stream Usage By SDK Version", "description": "Tool to get time-series data of streaming connections to LaunchDarkly, separated by SDK type and version. Use when you need to analyze connection patterns by SDK version. The granularity varies: minutely data for the past 2 hours, hourly data for the past 2 days, otherwise daily data." }, { "slug": "LAUNCH_DARKLY_GET_STREAM_USAGE_SDK_VERSIONS", "name": "Get Stream Usage SDK Versions", "description": "Tool to get a list of SDK version objects from LaunchDarkly. Returns all SDKs that have connected from your account in the past 60 days." }, { "slug": "LAUNCH_DARKLY_GET_SUBSCRIPTION_BY_ID", "name": "Get Audit Log Subscription by ID", "description": "Tool to retrieve a specific audit log subscription by ID. Use when you need to inspect the configuration, status, and details of an existing audit log subscription." }, { "slug": "LAUNCH_DARKLY_GET_SUBSCRIPTIONS", "name": "Get Audit Log Subscriptions by Integration", "description": "Tool to retrieve all audit log subscriptions for a given integration. Use when you need to list all configured audit log forwarding endpoints for a specific integration type." }, { "slug": "LAUNCH_DARKLY_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve a list of tags from LaunchDarkly. Use when you need to view available tags or filter tags by resource type or prefix." }, { "slug": "LAUNCH_DARKLY_GET_TEAM", "name": "Get Team", "description": "Tool to fetch a specific team by key. Use when you need detailed information about a team's configuration, members, roles, or projects." }, { "slug": "LAUNCH_DARKLY_GET_TEAM_MAINTAINERS2", "name": "Get Team Maintainers", "description": "Tool to retrieve the list of maintainers for a specific LaunchDarkly team. Use when you need to view which members have been assigned as maintainers for a team." }, { "slug": "LAUNCH_DARKLY_GET_TEAM_ROLES", "name": "Get Team Roles", "description": "Tool to fetch the custom roles that have been assigned to a team. Use when you need to review team permissions or audit role assignments." }, { "slug": "LAUNCH_DARKLY_GET_TOKEN", "name": "Get Access Token", "description": "Tool to retrieve detailed information about a specific LaunchDarkly access token by its ID. Use when you need to view token details, permissions, or metadata." }, { "slug": "LAUNCH_DARKLY_GET_TOKENS", "name": "Get Tokens", "description": "Tool to fetch a list of all access tokens. Use when you need to list tokens for audit, management, or to find token IDs for other operations. Supports pagination and can retrieve tokens for all members with Admin role." }, { "slug": "LAUNCH_DARKLY_GET_TRIGGER_WORKFLOW_BY_ID", "name": "Get Flag Trigger by ID", "description": "Tool to retrieve details of a specific flag trigger by ID. Use when you need to inspect trigger configuration, status, or execution history." }, { "slug": "LAUNCH_DARKLY_GET_TRIGGER_WORKFLOWS", "name": "Get Flag Trigger Workflows", "description": "Tool to retrieve all flag triggers for a specific feature flag in an environment. Use when you need to list existing triggers configured for flag automation." }, { "slug": "LAUNCH_DARKLY_GET_VERSIONS", "name": "Get Versions", "description": "Tool to retrieve LaunchDarkly API version information. Returns the latest API version, list of valid versions, and the version being used for the request." }, { "slug": "LAUNCH_DARKLY_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by ID. Use when you need to inspect the configuration details of a webhook." }, { "slug": "LAUNCH_DARKLY_GET_WORKFLOWS", "name": "Get Workflows", "description": "Tool to retrieve workflows for a specific feature flag in an environment. Use when you need to list existing workflows configured for flag workflow automation." }, { "slug": "LAUNCH_DARKLY_GET_WORKFLOW_TEMPLATES", "name": "Get Workflow Templates", "description": "Tool to retrieve workflow templates belonging to an account. Use when you need to list available templates for workflow automation." }, { "slug": "LAUNCH_DARKLY_LIST_BRANCHES", "name": "List Branches in Code Reference Repository", "description": "Tool to list branches in a LaunchDarkly code reference repository. Use this to retrieve all branches that have been synced for a specific repository, including their commit information and sync timestamps." }, { "slug": "LAUNCH_DARKLY_LIST_CODE_REFERENCE_REPOSITORIES", "name": "List Code Reference Repositories", "description": "Lists all code reference repositories configured in LaunchDarkly. Code references allow LaunchDarkly to track where feature flags are used in your codebase. Use this tool to retrieve all connected repositories, optionally filtering by project or flag key. Note: Code references is an Enterprise feature. This endpoint requires write permissions for the code-reference-repository resource." }, { "slug": "LAUNCH_DARKLY_LIST_INTEGRATION_DELIVERY_CONFIGURATIONS", "name": "List Integration Delivery Configurations", "description": "Tool to list all integration delivery configurations. Use when you need to retrieve all configured integrations for feature store capabilities." }, { "slug": "LAUNCH_DARKLY_LIST_METRIC_GROUPS", "name": "List Metric Groups", "description": "Tool to retrieve a list of all metric groups in a project. Use when you need to discover available metric groups for experiments or analysis." }, { "slug": "LAUNCH_DARKLY_LIST_METRICS", "name": "List Metrics", "description": "Tool to retrieve a list of all metrics in a project. Use when you need to discover available metrics for experiments or analysis." }, { "slug": "LAUNCH_DARKLY_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve a list of all projects. Use after confirming credentials to enumerate project keys and metadata." }, { "slug": "LAUNCH_DARKLY_LIST_TEAMS", "name": "List Teams", "description": "Fetches one page of teams from LaunchDarkly. Use this tool to retrieve teams for management, audit, or to find team keys for other operations. Supports filtering by name/key and can expand to include member counts, roles, or maintainer information. ONE LaunchDarkly API call is made per invocation. Pagination is caller-driven via the `limit` and `offset` parameters; the response's `has_next_page` and `next_offset` fields tell the caller how to fetch the next page." }, { "slug": "LAUNCH_DARKLY_PATCH_APPROVAL_REQUEST_SETTINGS", "name": "Patch Approval Request Settings", "description": "Tool to perform a partial update to approval request settings for a project. Use to modify approval requirements for specific environments and resource kinds. Only the fields provided will be updated." }, { "slug": "LAUNCH_DARKLY_PATCH_BIG_SEGMENT_STORE_INTEGRATION", "name": "Patch Big Segment Store Integration", "description": "Tool to update a persistent store integration for big segments using JSON Patch operations. Use when you need to modify integration settings like name, enabled status, or configuration details." }, { "slug": "LAUNCH_DARKLY_PATCH_CUSTOM_ROLE", "name": "Patch Custom Role", "description": "Tool to update a custom role's settings using JSON Patch operations. Use when you need to modify role configuration like name, description, or policy statements." }, { "slug": "LAUNCH_DARKLY_PATCH_DESTINATION", "name": "Update Data Export Destination", "description": "Tool to update a Data Export destination using JSON Patch operations. Use when you need to modify destination settings like enabling/disabling the export, changing the name, or updating configuration." }, { "slug": "LAUNCH_DARKLY_PATCH_ENVIRONMENT", "name": "Patch Environment", "description": "Tool to update an environment's settings using JSON Patch operations. Use when you need to modify environment configuration like name, color, approval settings, or behavior flags." }, { "slug": "LAUNCH_DARKLY_PATCH_EXPERIMENT", "name": "Patch Experiment", "description": "Tool to update an experiment using semantic patch format. Use when you need to modify experiment properties like name, description, or manage iterations (start/stop). Requires Content-Type header with domain-model=launchdarkly.semanticpatch." }, { "slug": "LAUNCH_DARKLY_PATCH_EXPIRING_TARGETS", "name": "Patch Expiring Targets", "description": "Tool to update expiring context targets on a feature flag. Use when you need to add, update, or remove scheduled target expirations." }, { "slug": "LAUNCH_DARKLY_PATCH_FEATURE_FLAG", "name": "Patch Feature Flag", "description": "Tool to update a feature flag's settings using JSON Patch operations. Use when you need to modify flag configuration like description, name, tags, archived status, or other flag properties." }, { "slug": "LAUNCH_DARKLY_PATCH_FLAG_CONFIG_APPROVAL_REQUEST", "name": "Patch Flag Config Approval Request", "description": "Tool to perform a partial update to a flag config approval request using semantic patch format. Use when you need to add reviewers to an approval request. Requires special headers: Content-Type with domain-model=launchdarkly.semanticpatch and LD-API-Version: beta." }, { "slug": "LAUNCH_DARKLY_PATCH_FLAG_CONFIG_SCHEDULED_CHANGE", "name": "Patch Flag Scheduled Change", "description": "Tool to update a scheduled change workflow for a feature flag. Use when you need to modify the execution time or instructions of an existing scheduled change." }, { "slug": "LAUNCH_DARKLY_PATCH_FLAG_DEFAULTS_BY_PROJECT", "name": "Patch Flag Defaults By Project", "description": "Tool to update flag defaults for a project using JSON Patch operations. Use when you need to modify default settings that apply to new flags created in the project, such as tags, temporary status, boolean variation names, or client-side availability." }, { "slug": "LAUNCH_DARKLY_PATCH_FLAG_IMPORT_CONFIGURATION", "name": "Patch Flag Import Configuration", "description": "Tool to update a flag import configuration using JSON Patch operations. Use when you need to modify configuration settings like name, tags, or config values. To add to array fields, use '/' where '/0' adds to beginning and '/-' adds to end." }, { "slug": "LAUNCH_DARKLY_PATCH_HOLDOUT", "name": "Patch Holdout", "description": "Tool to update a LaunchDarkly holdout using semantic patch operations. Use when you need to modify a holdout's name, description, or end the holdout. Requires LD-API-Version: beta header." }, { "slug": "LAUNCH_DARKLY_PATCH_MEMBER", "name": "Patch Account Member", "description": "Tool to modify an account member's information using JSON Patch operations. Use when you need to update member details like name, role, custom roles, or other member attributes." }, { "slug": "LAUNCH_DARKLY_PATCH_MEMBERS", "name": "Patch Members", "description": "Tool to perform partial updates to multiple LaunchDarkly account members using semantic patch format. Use when you need to bulk update member roles or attributes. Supports updating specific members by ID or all members matching filter criteria." }, { "slug": "LAUNCH_DARKLY_PATCH_METRIC", "name": "Patch Metric", "description": "Tool to update a metric's settings using JSON Patch operations. Use when you need to modify metric configuration like description, name, tags, or other properties." }, { "slug": "LAUNCH_DARKLY_PATCH_METRIC_GROUP", "name": "Patch Metric Group", "description": "Tool to update a metric group's settings using JSON Patch operations. Use when you need to modify metric group configuration like description, name, tags, or other properties." }, { "slug": "LAUNCH_DARKLY_PATCH_O_AUTH_CLIENT", "name": "Patch OAuth 2.0 Client", "description": "Tool to update an existing OAuth 2.0 client in LaunchDarkly using JSON Patch operations. Use when you need to modify OAuth client details like name, description, or redirect URI. Only 'name', 'description', and 'redirectUri' fields may be patched." }, { "slug": "LAUNCH_DARKLY_PATCH_PROJECT", "name": "Update Project", "description": "Tool to update a LaunchDarkly project using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of a project such as name, tags, client-side availability settings, or other project configuration." }, { "slug": "LAUNCH_DARKLY_PATCH_RELAY_AUTO_CONFIG", "name": "Update Relay Proxy Config", "description": "Tool to update a Relay Proxy auto configuration using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of a relay proxy configuration such as name, policy, or other settings." }, { "slug": "LAUNCH_DARKLY_PATCH_REPOSITORY", "name": "Patch Repository", "description": "Tool to update a code reference repository's settings using JSON Patch operations. Use when you need to modify repository configuration like default branch, enabled status, or URL templates." }, { "slug": "LAUNCH_DARKLY_PATCH_SEGMENT", "name": "Patch Segment", "description": "Tool to update a segment's settings using JSON Patch operations. Use when you need to modify segment configuration like description, name, tags, included/excluded targets, or targeting rules." }, { "slug": "LAUNCH_DARKLY_PATCH_TEAM", "name": "Patch Team", "description": "Tool to perform partial updates to a LaunchDarkly team using semantic patch format. Use when you need to update team properties (name, description), manage team members, or modify role attributes. Supports atomic updates with multiple instructions applied together." }, { "slug": "LAUNCH_DARKLY_PATCH_TEAMS", "name": "Patch Teams", "description": "Tool to perform partial updates to multiple LaunchDarkly teams using semantic patch format. Use when you need to bulk add members to multiple teams at once. Supports adding specific members by ID or all members matching filter criteria to teams." }, { "slug": "LAUNCH_DARKLY_PATCH_TOKEN", "name": "Patch Access Token", "description": "Tool to update an access token's settings using JSON Patch operations. Use when you need to modify token properties like name, description, role, or custom role IDs." }, { "slug": "LAUNCH_DARKLY_PATCH_TRIGGER_WORKFLOW", "name": "Update Flag Trigger", "description": "Tool to update a flag trigger using semantic patch operations. Use when you need to enable/disable a trigger or modify its configuration." }, { "slug": "LAUNCH_DARKLY_PATCH_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a LaunchDarkly webhook using JSON Patch operations (RFC 6902). Use when you need to modify webhook settings such as name, URL, enabled status, tags, or secret." }, { "slug": "LAUNCH_DARKLY_PUT_FLAG_DEFAULTS_BY_PROJECT", "name": "Create or Update Flag Defaults by Project", "description": "Tool to create or update flag defaults for a specific project. Use when you need to configure default settings that will be applied to new flags created in the project." }, { "slug": "LAUNCH_DARKLY_RESET_ENVIRONMENT_MOBILE_KEY", "name": "Reset Environment Mobile Key", "description": "Tool to reset the mobile SDK key for a specific environment. Use when you need to generate a new mobile key for security purposes or after a key compromise." }, { "slug": "LAUNCH_DARKLY_RESET_ENVIRONMENT_SDK_KEY", "name": "Reset Environment SDK Key", "description": "Tool to reset the SDK key for a specific environment. Use when you need to rotate keys for security or revoke access. The new SDK key is returned in the response." }, { "slug": "LAUNCH_DARKLY_RESET_RELAY_AUTO_CONFIG", "name": "Reset Relay Proxy Configuration Key", "description": "Tool to reset the Relay Proxy configuration key. Use when you need to rotate or regenerate the configuration key for security purposes. The old key will expire immediately by default, or at the time specified in the expiry parameter." }, { "slug": "LAUNCH_DARKLY_RESET_TOKEN", "name": "Reset Access Token", "description": "Tool to reset a LaunchDarkly access token, generating a new token value. Use when you need to rotate tokens for security or revoke access to the old token." }, { "slug": "LAUNCH_DARKLY_SEARCH_AUDIT_LOG_ENTRIES", "name": "Search Audit Log Entries", "description": "Search audit log entries in LaunchDarkly. Use to find specific actions, changes, or events by filtering with resource specifiers, date ranges, and full-text search. Resource specifiers follow LaunchDarkly's resource specifier syntax (e.g., 'proj/*' for all projects)." }, { "slug": "LAUNCH_DARKLY_SEARCH_CONTEXT_INSTANCES", "name": "Search Context Instances", "description": "Tool to search for context instances within a project and environment. Use when you need to find and retrieve context instances with filtering and pagination support." }, { "slug": "LAUNCH_DARKLY_SEARCH_CONTEXTS", "name": "Search Contexts", "description": "Tool to search for contexts in a LaunchDarkly environment with flexible filtering and sorting. Use when you need to find contexts matching specific criteria or patterns." }, { "slug": "LAUNCH_DARKLY_TRIGGER_FLAG_IMPORT_JOB", "name": "Trigger Flag Import Job", "description": "Tool to trigger a single flag import run for an existing flag import configuration. Use when you need to manually initiate a flag import from an external feature management system. This action requires the LD-API-Version: beta header." }, { "slug": "LAUNCH_DARKLY_UPDATE_ANNOUNCEMENT_PUBLIC", "name": "Update Announcement", "description": "Tool to update an existing announcement in LaunchDarkly using JSON Patch operations. Use when you need to modify announcement details like title, message, severity, or timing." }, { "slug": "LAUNCH_DARKLY_UPDATE_BIG_SEGMENT_CONTEXT_TARGETS", "name": "Update Big Segment Context Targets", "description": "Tool to update context targets included or excluded in a big segment. Big segments include larger list-based segments and synced segments. Use this when you need to add or remove specific context targets (users, organizations, etc.) from a big segment's inclusion or exclusion lists. This operation does not support standard segments." }, { "slug": "LAUNCH_DARKLY_UPDATE_CONTEXT_FLAG_SETTING", "name": "Update Context Flag Setting", "description": "Tool to enable or disable a feature flag for a specific context based on its context kind and key. Use when you need to set a custom flag variation for an individual context (user, organization, device, etc.). The setting value must match the flag's variation type." }, { "slug": "LAUNCH_DARKLY_UPDATE_CONTEXT_KIND", "name": "Create or Update Context Kind", "description": "Tool to create or update a context kind in a LaunchDarkly project. Use this to define custom context types for feature flag targeting beyond the default user context." }, { "slug": "LAUNCH_DARKLY_UPDATE_EXPERIMENTATION_SETTINGS", "name": "Update Experimentation Settings", "description": "Tool to update experimentation settings for a project. Use when you need to configure randomization units for experiments in a project." }, { "slug": "LAUNCH_DARKLY_UPDATE_FLAG_LINK", "name": "Update Flag Link", "description": "Tool to update an existing flag link in LaunchDarkly using JSON Patch operations. Use when you need to modify flag link details like title or description." }, { "slug": "LAUNCH_DARKLY_UPDATE_INTEGRATION_CONFIGURATION", "name": "Update Integration Configuration", "description": "Tool to update an existing integration configuration in LaunchDarkly using JSON Patch operations. Use when you need to modify integration details like name, enabled status, tags, or configuration values." }, { "slug": "LAUNCH_DARKLY_UPDATE_LAYER", "name": "Update Layer", "description": "Tool to update a layer using semantic patch instructions. Use when you need to modify layer properties like name, description, or experiment reservations." }, { "slug": "LAUNCH_DARKLY_UPDATE_PHASE_STATUS", "name": "Update Phase Status", "description": "Tool to update the execution status of a phase in a feature flag release. Use when you need to start, complete, or pause a release phase in LaunchDarkly." }, { "slug": "LAUNCH_DARKLY_UPDATE_RELEASE_PIPELINE", "name": "Update Release Pipeline", "description": "Tool to update an existing release pipeline in LaunchDarkly. Use when you need to modify pipeline configuration, phases, or metadata." }, { "slug": "LAUNCH_DARKLY_UPDATE_RELEASE_POLICIES_ORDER", "name": "Update Release Policies Order", "description": "Tool to update the order of existing release policies for a project. Use when you need to change the priority order in which release policies are applied. The first policy in the list has the highest priority." }, { "slug": "LAUNCH_DARKLY_UPDATE_RELEASE_POLICY", "name": "Update Release Policy", "description": "Tool to update an existing release policy for a specified project. Use when you need to modify release automation policies for progressive or guarded rollouts. Requires beta API version header." }, { "slug": "LAUNCH_DARKLY_UPDATE_SUBSCRIPTION", "name": "Update Audit Log Subscription", "description": "Tool to update an audit log subscription configuration using JSON Patch operations. Use when you need to modify subscription settings like name, configuration, enable/disable status, tags, or policy statements." }, { "slug": "LAUNCH_DARKLY_UPSERT_BRANCH", "name": "Upsert Branch in Code Reference Repository", "description": "Tool to upsert (create or update) a branch in a LaunchDarkly code reference repository. Use this to sync branch information including HEAD commit, sync time, and flag references. If the branch exists it will be updated, otherwise it will be created." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "launchdarkly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Access Token", "type": "string", "description": "Your LaunchDarkly REST API access token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailerlite", "name": "MailerLite", "logo": "https://logos.composio.dev/api/mailerlite", "description": "MailerLite is an email marketing service that offers tools for creating and managing email campaigns, automating workflows, and building landing pages.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 86, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILERLITE_ADD_PRODUCT_TO_CATEGORY", "name": "Add Product to Category", "description": "Tool to add a product to a category in an e-commerce shop. Use when you need to assign or link a product to a specific category for organization and marketing purposes." }, { "slug": "MAILERLITE_ADD_SUBSCRIBER_TO_GROUP", "name": "Add Subscriber To Group", "description": "Tool to assign an existing subscriber to a group. Use when you need to add a subscriber to a specific group in your MailerLite account." }, { "slug": "MAILERLITE_CREATE_AUTOMATION", "name": "Create automation", "description": "Create automation" }, { "slug": "MAILERLITE_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new email campaign (draft) with specified type, content, and targeting. Use when you need to create a campaign programmatically with email settings and optional audience targeting via groups or segments. HTML content support is also plan-dependent; insufficient plan capabilities result in `can_be_scheduled=false` on the created draft." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_CART_ITEM", "name": "Create E-commerce Cart Item", "description": "Tool to add an item to a shopping cart. Creates the cart if it does not exist. Use for abandoned cart automation." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_CATEGORY", "name": "Create E-commerce Category", "description": "Tool to create a new product category for a shop. Use when organizing products into categories or setting up shop taxonomy with automation preferences." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_CUSTOMER", "name": "Create/Update E-commerce Customer", "description": "Tool to create or update a customer record for a shop. Use when syncing shop customers or onboarding new purchases." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_ORDER", "name": "Create E-commerce Order", "description": "Tool to create a new order for a shop. Use when recording customer purchases or syncing order data from external systems." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_PRODUCT", "name": "Create E-commerce Product", "description": "Tool to create a new product for an e-commerce shop. Use when adding products to a shop for tracking sales, automations, and customer interactions." }, { "slug": "MAILERLITE_CREATE_ECOMMERCE_SHOP", "name": "Create E-commerce Shop", "description": "Tool to connect a new e-commerce shop. Use when you need to integrate a store for automations, product imports, and sales tracking." }, { "slug": "MAILERLITE_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a new custom field. Use when distinct subscriber attributes are needed before assigning or updating subscriber data. Call once per field key." }, { "slug": "MAILERLITE_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new subscriber group. Use after deciding the group name for categorization. Store `group_id` from the response — required by MAILERLITE_UPDATE_GROUP, MAILERLITE_DELETE_GROUP, and MAILERLITE_GET_GROUP_SUBSCRIBERS." }, { "slug": "MAILERLITE_CREATE_SEGMENT", "name": "Create Segment", "description": "Tool to create a new subscriber segment. Use when grouping subscribers by custom criteria before sending targeted campaigns." }, { "slug": "MAILERLITE_CREATE_SUBSCRIBER", "name": "Create Subscriber", "description": "Tool to create or update (upsert) a subscriber by email. Use when adding new subscribers or updating existing ones without needing their ID. If subscriber exists, updates non-destructively (omitted fields/groups are preserved)." }, { "slug": "MAILERLITE_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to register a new webhook URL for specified event types. Use when you need real-time notifications for selected MailerLite events." }, { "slug": "MAILERLITE_DELETE_AUTOMATION", "name": "Delete Automation", "description": "Tool to delete an automation workflow by ID. Deletion is permanent and irreversible — always require explicit user confirmation before calling. Use when you need to remove an automation after confirming it's no longer needed. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_CART_ITEM", "name": "Delete E-commerce Cart Item", "description": "Tool to remove an item from a cart in an e-commerce shop. Use when you need to delete a specific product from a customer's shopping cart." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_CATEGORY", "name": "Delete E-commerce Category", "description": "Tool to delete a product category from an e-commerce shop by IDs. Use when you need to remove a specific category from your MailerLite store." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_CUSTOMER", "name": "Delete E-commerce Customer", "description": "Tool to delete a customer from an e-commerce shop by IDs. Use when you need to remove a specific customer from your MailerLite store." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_ORDER", "name": "Delete E-commerce Order", "description": "Tool to delete an order from a shop. Use when you need to remove an order and its associated cart from MailerLite. Returns the deleted order details on success." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_PRODUCT", "name": "Delete E-commerce Product", "description": "Tool to delete a product from an e-commerce shop by IDs. Use when you need to remove a specific product from your MailerLite store." }, { "slug": "MAILERLITE_DELETE_ECOMMERCE_SHOP", "name": "Delete E-commerce Shop", "description": "Tool to disconnect an e-commerce shop by ID. Use when you have the shop's unique identifier and want to remove it from your MailerLite account." }, { "slug": "MAILERLITE_DELETE_FIELD", "name": "Delete Field", "description": "Tool to delete a custom field. Use when a field is obsolete and you need to remove it from your MailerLite account. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a subscriber group by ID. Permanently removes the group and all its subscriber associations — irreversible with no undo. Use when you need to remove an existing subscriber group from your MailerLite account. Require explicit user confirmation before invoking. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_DELETE_SEGMENT", "name": "Delete Segment", "description": "Tool to delete a segment by ID. Use when you need to remove an existing segment from your MailerLite account. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Tool to delete a subscriber by ID. Use when you have the subscriber ID and want to remove them from your MailerLite account. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to remove a webhook subscription by ID. Use when you need to delete a webhook after confirming it is no longer needed. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_EXECUTE_BATCH_REQUEST", "name": "Execute Batch Request", "description": "Tool to execute multiple API requests in a single batch call (max 50 requests). Use when you need to perform multiple operations efficiently or reduce API call overhead. Note: Individual request failures don't stop batch processing; check each response code. Webhooks are not supported in batch requests." }, { "slug": "MAILERLITE_FORGET_SUBSCRIBER", "name": "Forget Subscriber", "description": "Tool to forget a subscriber completely (GDPR compliant deletion). Use when you need to permanently delete all subscriber data within 30 days." }, { "slug": "MAILERLITE_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve basic MailerLite account details. Use when you need to verify authentication and review account metadata. Response payload is nested under results[i].response.data with data and meta subkeys — not a flat data key. Does not return a dedicated sender-domain list; absent domain fields indicate unknown status, not verified or unverified." }, { "slug": "MAILERLITE_GET_ACCOUNT_STATS", "name": "Get Account Stats", "description": "Tool to retrieve usage statistics and performance metrics for the account. Use after sending campaigns to analyze engagement and deliverability." }, { "slug": "MAILERLITE_GET_AUTOMATION", "name": "Get Automation", "description": "Tool to retrieve details of a specific automation by ID. Use when you have the automation ID and need its full configuration. Example: \"Get automation 7267552\"." }, { "slug": "MAILERLITE_GET_AUTOMATION_ACTIVITY", "name": "Get Automation Activity", "description": "Tool to retrieve subscriber activity for a specific automation. Use when you need to track automation execution status and subscriber progress through workflows. Requires filter[status] parameter to be specified." }, { "slug": "MAILERLITE_GET_CAMPAIGN_LANGUAGES", "name": "Get Campaign Languages", "description": "Tool to retrieve a list of all available campaign languages. Use when you need to fetch supported languages for creating or configuring campaigns." }, { "slug": "MAILERLITE_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve a list of all campaigns. Use when you need to fetch campaigns optionally filtered by status or type, with pagination." }, { "slug": "MAILERLITE_GET_ECOMMERCE_CART", "name": "Get E-commerce Cart", "description": "Tool to fetch details of a specific cart by shop ID and cart ID. Use when you need to retrieve cart information including customer, items, total, and checkout URL." }, { "slug": "MAILERLITE_GET_ECOMMERCE_CART_ITEM", "name": "Get E-commerce Cart Item", "description": "Tool to fetch details of a specific cart item by shop ID, cart ID, and item ID. Use when you need to retrieve information about a specific item in a cart." }, { "slug": "MAILERLITE_GET_ECOMMERCE_CATEGORY", "name": "Get E-commerce Category", "description": "Tool to fetch details of a specific product category by shop and category ID. Use when you need information about a specific e-commerce category." }, { "slug": "MAILERLITE_GET_ECOMMERCE_CUSTOMER", "name": "Get E-commerce Customer", "description": "Tool to fetch details of a customer by shop and customer ID. Use after confirming shop_id and customer_id." }, { "slug": "MAILERLITE_GET_ECOMMERCE_CUSTOMERS", "name": "Get E-commerce Customers", "description": "Tool to list customers for a specific shop. Use when you need to retrieve and paginate ecommerce customers after you have a shop ID. Example: \"List customers for shop 123\"." }, { "slug": "MAILERLITE_GET_ECOMMERCE_ORDER", "name": "Get E-commerce Order", "description": "Tool to fetch details of a specific e-commerce order by shop ID and order ID. Use when you need to retrieve order information including customer, cart items, total, and status." }, { "slug": "MAILERLITE_GET_ECOMMERCE_PRODUCT", "name": "Get E-commerce Product", "description": "Tool to fetch details of a specific e-commerce product by shop and product ID. Use when you need product information such as name, price, description, and categories." }, { "slug": "MAILERLITE_GET_ECOMMERCE_SHOP", "name": "Get E-commerce Shop", "description": "Tool to fetch details of a specific e-commerce shop by ID. Use when you need detailed configuration or stats of a connected shop." }, { "slug": "MAILERLITE_GET_ECOMMERCE_SHOPS", "name": "Get E-commerce Shops", "description": "Tool to list all e-commerce shops connected to the account. Use when you need to retrieve and paginate shop listings for an account." }, { "slug": "MAILERLITE_GET_FIELDS", "name": "Get Fields", "description": "Tool to retrieve all custom fields defined in the account. Use when you need to list or paginate through subscriber custom fields." }, { "slug": "MAILERLITE_GET_GROUP", "name": "Get Group", "description": "Tool to retrieve details of a specific subscriber group by ID. Use when you need information about a particular group's statistics and configuration." }, { "slug": "MAILERLITE_GET_GROUPS", "name": "Get Groups", "description": "Tool to retrieve all subscriber groups. Use when listing, paginating, or looking up group IDs for use in downstream tools (e.g., `trigger.settings.group_id`). Always verify returned IDs exactly match before passing to other tools; mismatched IDs cause silent failures." }, { "slug": "MAILERLITE_GET_GROUP_SUBSCRIBERS", "name": "Get Group Subscribers", "description": "Tool to list subscribers within a group by ID. Use when you need to retrieve subscribers belonging to a specific MailerLite group before targeted campaigns. Use after confirming the group ID is valid." }, { "slug": "MAILERLITE_GET_IMPORT_STATUS", "name": "Get Import Status", "description": "Tool to retrieve the status and detailed report of a subscriber import operation by import ID. Use after initiating an import to track progress and review results including validation issues, duplicates, and processing statistics." }, { "slug": "MAILERLITE_GET_SEGMENT", "name": "Get Segment", "description": "Tool to retrieve a specific segment by ID. Use when you need to get details about a particular segment including subscriber count, open rate, and click rate statistics." }, { "slug": "MAILERLITE_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve all segments in the account. Use when you need to list or paginate through segments." }, { "slug": "MAILERLITE_GET_SEGMENT_SUBSCRIBERS", "name": "Get Segment Subscribers", "description": "Tool to retrieve all subscribers belonging to a specific segment. Use when you need to list or paginate through subscribers in a MailerLite segment for targeted campaigns or analysis." }, { "slug": "MAILERLITE_GET_SUBSCRIBER", "name": "Get Subscriber", "description": "Tool to fetch a single subscriber by ID or email address. Use when you need to retrieve detailed information about a specific subscriber." }, { "slug": "MAILERLITE_GET_SUBSCRIBER_ACTIVITY", "name": "Get Subscriber Activity", "description": "Tool to fetch the activity log for a specific subscriber. Use when you need to track subscriber engagement history including email opens, link clicks, bounces, and other events." }, { "slug": "MAILERLITE_GET_SUBSCRIBERS", "name": "Get Subscribers", "description": "Tool to retrieve all subscribers. Use after connecting account and when listing subscribers by status or paginating. Response payload nested under results[i].response.data with data and meta subkeys. Paginate all pages before computing metrics to avoid sampling bias. Limited by MailerLite Connect API quotas." }, { "slug": "MAILERLITE_GET_SUBSCRIBERS_STATS", "name": "Get Subscribers Stats", "description": "Tool to get subscriber statistics for the account. Use to retrieve counts of total, active, unsubscribed, unconfirmed, bounced, and junk subscribers." }, { "slug": "MAILERLITE_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by ID. Use when you need to get information about a particular webhook configuration." }, { "slug": "MAILERLITE_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve all configured webhooks. Use when you need to list webhooks for your MailerLite account." }, { "slug": "MAILERLITE_IMPORT_ECOMMERCE_CATEGORIES", "name": "Import E-commerce Categories", "description": "Tool to bulk import categories to an e-commerce shop. Use when you need to add multiple categories at once to a shop." }, { "slug": "MAILERLITE_IMPORT_ECOMMERCE_ORDERS", "name": "Import E-commerce Orders", "description": "Tool to bulk import orders to an e-commerce shop. Use when syncing historical orders or bulk loading order data. Products must exist before importing orders." }, { "slug": "MAILERLITE_IMPORT_ECOMMERCE_PRODUCTS", "name": "Import E-commerce Products", "description": "Tool to bulk import products to an e-commerce shop. Use when you need to add multiple products to a shop in one request." }, { "slug": "MAILERLITE_IMPORT_SUBSCRIBERS_TO_GROUP", "name": "Import Subscribers to Group", "description": "Tool to bulk import multiple subscribers to a specific group. Use when adding many subscribers at once is more efficient than individual creation. The import runs asynchronously by default; use the returned progress URL to check completion status." }, { "slug": "MAILERLITE_LIST_AUTOMATIONS", "name": "List Automations", "description": "Tool to retrieve all automations in your MailerLite account. Use when you need to list automations, optionally filtered by status, name, or group. Supports pagination for large result sets." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_CART_ITEMS", "name": "List E-commerce Cart Items", "description": "Tool to list all items in a specific cart for an e-commerce shop. Use when you need to retrieve items from a cart after you have both a shop ID and cart ID." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_CARTS", "name": "List E-commerce Carts", "description": "Tool to list all carts for a specific shop. Use when you need to retrieve abandoned or active shopping carts after you have a shop ID. Example: \"List carts for shop 49095\"." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_CATEGORIES", "name": "List E-commerce Categories", "description": "Tool to list all product categories for a shop. Use when you need to retrieve or paginate through categories." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_CATEGORY_PRODUCTS", "name": "List E-commerce Category Products", "description": "Tool to list all products in a specific e-commerce category. Use when you need to retrieve products for a given shop and category combination." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_ORDERS", "name": "List E-commerce Orders", "description": "Tool to list all orders for a specific e-commerce shop. Use when you need to retrieve and paginate orders for a shop after you have a shop ID." }, { "slug": "MAILERLITE_LIST_ECOMMERCE_PRODUCTS", "name": "List E-commerce Products", "description": "Tool to list all products for a specific e-commerce shop. Use when you need to retrieve and paginate product listings after you have a shop ID." }, { "slug": "MAILERLITE_LIST_FORMS", "name": "List Forms", "description": "Tool to retrieve all forms of a specific type (popup, embedded, or promotion). Use when you need to list forms with optional filtering by name and pagination support." }, { "slug": "MAILERLITE_LIST_TIMEZONES", "name": "List Timezones", "description": "Tool to retrieve all available timezones supported by MailerLite. Use when you need to get timezone options for campaigns, automations, or scheduling." }, { "slug": "MAILERLITE_REMOVE_PRODUCT_FROM_CATEGORY", "name": "Remove Product From Category", "description": "Tool to remove a product from a category in an e-commerce shop. Use when you need to unlink a product from a specific category without deleting the product itself." }, { "slug": "MAILERLITE_REMOVE_SUBSCRIBER_FROM_GROUP", "name": "Remove Subscriber From Group", "description": "Tool to remove a subscriber from a group by ID. Use when you need to unassign a subscriber from a specific group in your MailerLite account. Returns success=True on 204 No Content." }, { "slug": "MAILERLITE_SET_DOUBLE_OPTIN", "name": "Set Double Opt-In", "description": "Tool to enable or disable double opt-in for new subscribers. Use when configuring subscription confirmation settings." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_CART", "name": "Update E-commerce Cart", "description": "Tool to update an existing cart's checkout URL or total price. Use when you need to modify cart details like the checkout link or recalculate the cart total for an active shopping cart." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_CART_ITEM", "name": "Update E-commerce Cart Item", "description": "Tool to update a cart item's quantity or properties in an e-commerce cart. Use when you need to modify an existing item in a customer's cart." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_CATEGORY", "name": "Update E-commerce Category", "description": "Tool to update an existing product category in an e-commerce shop. Use when you need to modify the category name or automation settings." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_CUSTOMER", "name": "Update E-commerce Customer", "description": "Tool to update a customer's data for a shop by IDs. Use when you need to change email, marketing opt-in, or spend totals for an existing customer." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_ORDER", "name": "Update E-commerce Order", "description": "Tool to update an existing order's status or total price in an e-commerce shop. Use when you need to mark orders as complete or adjust pricing. Note: Cannot update cart or customer through this endpoint." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_PRODUCT", "name": "Update E-commerce Product", "description": "Tool to update an existing product in an e-commerce shop by IDs. Use when you need to modify product details like name, price, description, or URL." }, { "slug": "MAILERLITE_UPDATE_ECOMMERCE_SHOP", "name": "Update E-commerce Shop", "description": "Tool to update settings of a connected e-commerce shop by ID. Use when you need to modify shop details (name, URL, currency) or toggle features after verifying the shop exists." }, { "slug": "MAILERLITE_UPDATE_FIELD", "name": "Update Field", "description": "Tool to update the title of an existing custom field. Use when renaming a field label (e.g., correct typos or rebranding)." }, { "slug": "MAILERLITE_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update a group's name by ID. Use when renaming an existing group after confirming its ID. Note: renaming does not update references in downstream integrations or reports that use the old group name." }, { "slug": "MAILERLITE_UPDATE_SEGMENT", "name": "Update Segment", "description": "Tool to rename an existing segment by ID. Use when you need to update a segment's name after confirming its ID." }, { "slug": "MAILERLITE_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update an existing subscriber's information by ID. Use when altering subscriber details." }, { "slug": "MAILERLITE_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing MailerLite webhook. Use when you need to change its URL or event triggers by ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailerlite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MailerLite API Key", "type": "string", "description": "The API key generated from your MailerLite account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mboum", "name": "Mboum", "logo": "https://logos.composio.dev/api/mboum", "description": "Mboum is a financial data service offering stock market, cryptocurrency, and economic indicators for analysis, research, and integrated trading insights", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mboum_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Mboum API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "helcim", "name": "Helcim", "logo": "https://logos.composio.dev/api/helcim", "description": "Helcim delivers payment processing, merchant accounts, and point-of-sale solutions, empowering businesses to manage transactions and financial operations with transparent pricing", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "helcim_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "Your Helcim API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "contentful", "name": "Contentful", "logo": "https://logos.composio.dev/api/contentful", "description": "Contentful is a headless CMS allowing developers to create, manage, and distribute content across multiple channels and devices with an API-first approach", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 124, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONTENTFUL_ACTIVATE_CONTENT_TYPE", "name": "Activate Content Type", "description": "Activates (publishes) a content type in Contentful. Use this to make a content type available for creating entries. Requires the current version number for optimistic locking." }, { "slug": "CONTENTFUL_ARCHIVE_ASSET", "name": "Archive Asset", "description": "Tool to archive an asset in Contentful. Use when you need to archive an asset to remove it from active use without deleting it permanently." }, { "slug": "CONTENTFUL_ARCHIVE_ENTRY", "name": "Archive Entry", "description": "Tool to archive an entry in Contentful. Use when you need to move an entry to archived status. The entry must not be currently published, and you may need to provide the X-Contentful-Version header matching the entry's current version." }, { "slug": "CONTENTFUL_ARCHIVE_RELEASE", "name": "Archive Release", "description": "Tool to archive a release in Contentful. Use when you need to lock a release to prevent modifications. An archived release cannot be edited until unarchived. Requires the current version number for optimistic locking." }, { "slug": "CONTENTFUL_CREATE_APP_DEFINITIONS_KEYS", "name": "Create App Signing Key", "description": "Tool to generate an app signing key for a Contentful app definition. Use when you need to create cryptographic keys for app authentication. Either provide generate=true to let Contentful create a key pair (returns private key), or provide a pre-generated public key in JWK format." }, { "slug": "CONTENTFUL_CREATE_CONTENT_TYPE", "name": "Create Content Type", "description": "Tool to create a new content type in a Contentful environment. Use when you need to define a new content structure with custom fields. Content types define the schema for entries." }, { "slug": "CONTENTFUL_CREATE_ENTRY_TASK", "name": "Create Entry Task", "description": "Tool to create a task on a Contentful entry. Use when you need to create workflow tasks for collaboration on entries. Tasks can be assigned to users and are used for managing content review and approval workflows." }, { "slug": "CONTENTFUL_CREATE_ENVIRONMENT", "name": "Create Environment", "description": "Tool to create a new environment within a Contentful space. Use when you need to set up a new environment for content management, such as staging or production. Optionally clone from an existing source environment." }, { "slug": "CONTENTFUL_CREATE_LOCALE", "name": "Create Locale", "description": "Tool to create a new locale in a Contentful space environment. Use when you need to add support for a new language or regional variation to your content. Locales enable multi-language content management by defining which languages are available for translation. Only one locale can be set as the default locale per environment." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_APP_DEF_ACCESS_GRANTS", "name": "Create App Access Grant", "description": "Creates an access grant for an app definition to allow organizations to install the app. Use when you need to grant installation permissions for an app to specific organizations or all organizations (marketplace apps)." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_APP_DEFINITIONS", "name": "Create Organizations App Definitions", "description": "Tool to create a new app definition in a Contentful organization. Use when you need to register a new app that can be installed into space environments." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_APP_DEFINITIONS_ACTIONS", "name": "Create App Definition Action", "description": "Tool to create an action for a Contentful app definition. Use when you need to define actions that your app can perform, such as endpoint invocations or function calls." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_INVITATIONS", "name": "Create Organization Invitation", "description": "Create an invitation to an organization in Contentful (alpha feature). Use this to invite new users to join an organization with a specified role." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_SECURITY_CONTACTS", "name": "Create Organizations Security Contacts", "description": "Creates a security contact for a specific organization. Use when you need to add an email address to receive security notifications for the organization." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_TAXONOMY_CONCEPTS", "name": "Create Organizations Taxonomy Concepts", "description": "Tool to create a new taxonomy concept in a Contentful organization. Use when you need to add a concept for classifying and organizing content within an organization's taxonomy." }, { "slug": "CONTENTFUL_CREATE_ORGANIZATIONS_TAXONOMY_CONCEPT_SCHEMES", "name": "Create Organizations Taxonomy Concept Schemes", "description": "Tool to create a new taxonomy concept scheme in an organization. Use when you need to establish a new taxonomy structure or classification system for organizing content." }, { "slug": "CONTENTFUL_CREATE_RELEASE", "name": "Create Release", "description": "Tool to create a new release in Contentful. Use when you need to group entries and assets into a release for coordinated publishing or tracking. Requires at least one entity to be specified." }, { "slug": "CONTENTFUL_CREATE_SPACE", "name": "Create Space", "description": "Creates a new space in Contentful. A space is a container for all content types, entries, and assets. Use this action when you need to set up a new workspace for content management. Each space is isolated and has its own API keys and environments." }, { "slug": "CONTENTFUL_CREATE_SPACES_API_KEYS", "name": "Create Delivery API Key", "description": "Tool to create a new Delivery API key for a Contentful space. Use when you need to generate new API credentials for accessing content delivery. The created key provides access to specified environments within the space." }, { "slug": "CONTENTFUL_CREATE_SPACES_ENVIRONMENTS_ASSETS", "name": "Create Asset", "description": "Tool to create a new asset in a Contentful space environment. Use when you need to upload files like images, videos, or documents. After creation, the asset must be processed before it's available, and you may need to publish it to make it publicly accessible." }, { "slug": "CONTENTFUL_CREATE_SPACES_ENVIRONMENTS_ENTRIES", "name": "Create Entry", "description": "Tool to create a new entry in a Contentful space environment. Use when you need to add new content entries. Requires specifying the content type ID via X-Contentful-Content-Type header, and providing fields organized by locale." }, { "slug": "CONTENTFUL_CREATE_SPACES_ENVIRONMENTS_ENTRIES_COMMENTS", "name": "Create Entry Comment", "description": "Tool to create a comment on an entry in Contentful. Use when you need to add a comment to a specific entry. Returns the created comment with status 'active' by default." }, { "slug": "CONTENTFUL_CREATE_SPACES_ENVIRONMENTS_EXTENSIONS", "name": "Create Extension", "description": "Tool to create a new UI extension within a Contentful space and environment. Use when you need to add custom field editors or sidebar widgets to enhance content editing capabilities." }, { "slug": "CONTENTFUL_CREATE_SPACES_SCHEDULED_ACTIONS", "name": "Create Scheduled Action", "description": "Tool to create a scheduled action for publishing or unpublishing entries/assets in Contentful. Use when you need to schedule an automatic publish or unpublish operation at a specific future time." }, { "slug": "CONTENTFUL_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a new webhook in a Contentful space to receive real-time notifications about content changes. Use this action when you need to set up automated workflows that respond to events like entry creation, publishing, or asset updates. Webhooks send POST requests to your specified URL when matching events occur." }, { "slug": "CONTENTFUL_DELETE_ASSET", "name": "Delete Asset", "description": "Deletes an asset by ID from a Contentful environment. Use this when you need to permanently remove an asset. Note: If Contentful rejects deletion for published or archived assets, you must unpublish first using the appropriate CMA endpoints." }, { "slug": "CONTENTFUL_DELETE_CONTENT_TYPE", "name": "Delete Content Type", "description": "Deletes a content type by ID from a Contentful environment. Use this when you need to permanently remove a content type. Note: Content types must be unpublished before deletion if they are published, and must have no associated entries." }, { "slug": "CONTENTFUL_DELETE_ENTRY", "name": "Delete Entry", "description": "Deletes an entry by ID from a Contentful environment. Use this when you need to permanently remove an entry. Note: If Contentful rejects deletion for published or archived entries, you must unpublish or unarchive first using the appropriate CMA endpoints." }, { "slug": "CONTENTFUL_DELETE_ENVIRONMENT", "name": "Delete Environment", "description": "Deletes an environment by ID from a Contentful space. Use this when you need to permanently remove an environment. Note: You cannot delete the 'master' environment or an environment with active aliases." }, { "slug": "CONTENTFUL_DELETE_EXTENSION", "name": "Delete Extension", "description": "Deletes an extension by ID from a Contentful environment. Use this when you need to permanently remove an extension." }, { "slug": "CONTENTFUL_DELETE_LOCALE", "name": "Delete Locale", "description": "Deletes a locale by ID from a Contentful environment. Use this when you need to permanently remove a locale. This action is irreversible — the locale cannot be recovered once removed. Note: You cannot delete the default locale for an environment." }, { "slug": "CONTENTFUL_DELETE_ORGANIZATIONS_APP_DEF_EVENT_SUBSCRIPTION", "name": "Delete App Event Subscription", "description": "Deletes an app event subscription from a Contentful organization. Use this when you need to remove event subscriptions from an app definition." }, { "slug": "CONTENTFUL_DELETE_ORGANIZATIONS_APP_DEFINITIONS_DETAILS", "name": "Delete App Definition Details", "description": "Tool to delete app definition details for an organization in Contentful. Use when you need to remove app definition details from an organization." }, { "slug": "CONTENTFUL_DELETE_ORGANIZATIONS_APP_DEFINITIONS_KEYS", "name": "Delete App Key", "description": "Tool to delete an app key from an app definition in a Contentful organization. Use when you need to permanently remove an app key." }, { "slug": "CONTENTFUL_DELETE_ORGANIZATIONS_APP_DEF_SIGNING_SECRET", "name": "Delete App Definition Signing Secret", "description": "Tool to remove the current app signing secret from an app definition. Use when you need to delete an existing signing secret for security or rotation purposes." }, { "slug": "CONTENTFUL_DELETE_ORGANIZATIONS_SECURITY_CONTACTS", "name": "Delete Organization Security Contact", "description": "Deletes a security contact from a Contentful organization. Use this when you need to remove a security contact from an organization." }, { "slug": "CONTENTFUL_DELETE_RELEASE", "name": "Delete Release", "description": "Deletes a release by ID from a Contentful environment. Use this when you need to permanently remove a release." }, { "slug": "CONTENTFUL_DELETE_SCHEDULED_ACTION", "name": "Delete Scheduled Action", "description": "Cancels a scheduled action by ID in Contentful. Use this when you need to cancel a scheduled publish, unpublish, or other scheduled operation." }, { "slug": "CONTENTFUL_DELETE_SPACE_MEMBERSHIP", "name": "Delete Space Membership", "description": "Deletes a space membership by ID from a Contentful space. Use this when you need to remove a user's access to a space." }, { "slug": "CONTENTFUL_DELETE_SPACES_API_KEYS", "name": "Delete Delivery API Key", "description": "Tool to delete a single Delivery API key from a Contentful space. Use when you need to permanently remove an API key. This action is useful for revoking access credentials when they are no longer needed or have been compromised." }, { "slug": "CONTENTFUL_DELETE_SPACES_UPLOAD", "name": "Delete Spaces Upload", "description": "Deletes an upload by ID from a Contentful space. Use this when you need to permanently remove an upload. Note: This operation uses the upload.contentful.com base URL instead of the standard API URL." }, { "slug": "CONTENTFUL_DELETE_TAG", "name": "Delete Tag", "description": "Deletes a tag by ID from a Contentful environment. Use this when you need to permanently remove a tag." }, { "slug": "CONTENTFUL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a webhook definition by ID from a Contentful space. Use this action when you need to permanently remove a webhook configuration. This action is irreversible — the webhook cannot be recovered once removed." }, { "slug": "CONTENTFUL_GET_APP_BUNDLE", "name": "Get App Bundle", "description": "Retrieves details of a specific app bundle by its ID. Use this to get information about an app bundle including its files, metadata, and associated app definition within a Contentful organization." }, { "slug": "CONTENTFUL_GET_APP_DEFINITION", "name": "Get App Definition", "description": "Tool to retrieve details of a specific app definition by its ID. Use when you need information about an app definition in an organization." }, { "slug": "CONTENTFUL_GET_ASSET", "name": "Get Asset", "description": "Tool to retrieve a single asset from a Contentful environment by its ID. Use when you need to get details about a specific asset including its file information, metadata, and publication status." }, { "slug": "CONTENTFUL_GET_CONTENT_TYPES", "name": "Get Content Types", "description": "Retrieves all content types in a Contentful environment. Use this to discover the structure and fields defined for different content types. Content types define the schema for entries and are essential for understanding what data can be stored in the environment." }, { "slug": "CONTENTFUL_GET_CONTENT_TYPE_SNAPSHOT", "name": "Get Content Type Snapshot", "description": "Tool to retrieve a snapshot of a content type by snapshot ID. Use when you need to view the state of a content type at a specific point in time. Snapshots are only available for content types in the master environment." }, { "slug": "CONTENTFUL_GET_CONTENT_TYPE_SNAPSHOTS", "name": "Get Content Type Snapshots", "description": "Tool to get all snapshots of a content type in Contentful. Use when you need to retrieve the history of changes made to a content type structure." }, { "slug": "CONTENTFUL_GET_EDITOR_INTERFACE", "name": "Get Editor Interface", "description": "Tool to retrieve the editor interface configuration for a content type. Use when you need to see how fields are configured in the Contentful UI. The editor interface is automatically created when a content type is first activated." }, { "slug": "CONTENTFUL_GET_ENTRY", "name": "Get Entry", "description": "Tool to retrieve a single entry from a Contentful space environment by its ID. Use this action when you need to get details about a specific entry including its content, metadata, and publication status. Returns all localized and unpublished content from the Content Management API." }, { "slug": "CONTENTFUL_GET_ENTRY_COMMENT", "name": "Get Entry Comment", "description": "Tool to retrieve a specific comment from an entry in Contentful. Use when you need to get details of a comment including its body, status, author, and metadata." }, { "slug": "CONTENTFUL_GET_ENTRY_REFERENCES", "name": "Get Entry References", "description": "Tool to retrieve references to a specific entry in Contentful. Use when you need to find all entries that reference a particular entry. The include parameter controls how many levels of nested references are returned." }, { "slug": "CONTENTFUL_GET_ENTRY_SNAPSHOTS", "name": "Get Entry Snapshots", "description": "Tool to get all snapshots of an entry in Contentful. Use when you need to retrieve the history of changes made to an entry." }, { "slug": "CONTENTFUL_GET_ENVIRONMENT", "name": "Get Environment", "description": "Tool to retrieve details of a specific environment by its ID within a space. Use when you need information about a single environment in Contentful." }, { "slug": "CONTENTFUL_GET_ORGANIZATION", "name": "Get Organization", "description": "Retrieves details of a specific organization by its ID. Use this when you need to get information about an organization that an admin or owner has access to." }, { "slug": "CONTENTFUL_GET_ORGANIZATION_ACCESS_GRANT", "name": "Get Organization Access Grant", "description": "Retrieves the access grant status for a specific organization. Use this to verify whether the authenticated user has access to a specific organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS", "name": "Get Organizations", "description": "Tool to get all organizations an account has access to in Contentful. Use when you need to list available organizations for the authenticated user." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_AI_PROVIDERS", "name": "Get Organizations AI Providers", "description": "Retrieves all AI providers configured for an organization in Contentful. Use this to list AI service providers (OpenAI, AWS Bedrock, Google Gemini, etc.) that have been configured for the organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_ACTIONS_CATEGORIES", "name": "Get Organization App Actions Categories", "description": "Retrieves app action categories for a Contentful organization. Use this to discover available app action categories and their parameters." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEF_EVENT_SUBSCRIPTION", "name": "Get App Event Subscription", "description": "Tool to retrieve details of an app event subscription by organization and app definition ID. Use when you need to check the configuration of event subscriptions for an app." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS", "name": "Get Organizations App Definitions", "description": "Retrieves all app definitions for a specific organization. Use when you need to list or discover apps owned by an organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_ACCESS_GRANTS", "name": "Get Organizations App Definitions Access Grants", "description": "Get all app access grants for a specific app definition within an organization. Use when you need to list which organizations can install a specific app definition." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_ACTIONS", "name": "Get App Definition Actions", "description": "Tool to get all actions of an app definition within an organization. Use when you need to retrieve the list of actions defined for a specific Contentful app." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_ACTIONS2", "name": "Get App Action Details", "description": "Tool to read a specific app action from an app definition within an organization. Use when you need to retrieve details of a particular action defined for a Contentful app." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_APP_BUNDLES", "name": "Get App Definition App Bundles", "description": "Tool to get all app bundles for a specific app definition within an organization. Use when you need to list all uploaded bundles for a Contentful app." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_FUNCTIONS", "name": "Get App Definition Functions", "description": "Tool to get all functions of an app definition within an organization. Use when you need to retrieve the list of functions defined for a specific Contentful app." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_KEYS", "name": "Get App Definition Keys", "description": "Tool to retrieve all app keys for a specific app definition in a Contentful organization. Use when you need to list cryptographic keys for app authentication." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_APP_DEFINITIONS_SIGNING_SECRET", "name": "Get App Definition Signing Secret", "description": "Tool to retrieve the current app signing secret for an app definition. Use when you need to verify the existence or view the last 4 characters of a signing secret. Note: Full secret is only available at creation time." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_ENABLEMENTS", "name": "Get Organization Enablements", "description": "Retrieves feature enablements for a specific organization in Contentful. Use this to check which AI and vectorization features are enabled for the organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_INVITATIONS", "name": "Get Organization Invitation", "description": "Retrieves a single invitation for an organization (alpha). Use this to get details about a specific invitation including invitee information and status. Note: This endpoint is in alpha state and may be subject to breaking changes." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_ORGANIZATION_PERIODIC_USAGES", "name": "Get Organization Periodic Usages", "description": "Tool to get organization periodic usage statistics. Use when you need to retrieve API usage metrics for an organization during a specific time period, with optional filtering by metric type and date range." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_ROLES", "name": "Get Organization Roles", "description": "Retrieves all space roles in an organization. Use this to list roles that define user permissions and access levels within an organization's spaces." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_SECURITY_CONTACTS", "name": "Get Organization Security Contacts", "description": "Retrieves security contacts for a specific organization that an admin or owner has access to. Use this to get the list of security contacts configured for an organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_SPACE_ENABLEMENTS", "name": "Get Organizations Space Enablements", "description": "Retrieves all space enablements for a specific organization. Use when you need to check which features are enabled for spaces within an organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_SPACE_PERIODIC_USAGES", "name": "Get Organizations Space Periodic Usages", "description": "Tool to retrieve space periodic usage data for an organization. Use this when you need to analyze usage metrics, monitor API consumption, or track resource utilization over time." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPTS", "name": "Get Organizations Taxonomy Concepts", "description": "Retrieves all taxonomy concepts for an organization in Contentful. Use this to list concepts that can be used to classify and organize content within the organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPTS_ANCESTORS", "name": "Get Taxonomy Concept Ancestors", "description": "Retrieves the list of ancestor concepts for a specific taxonomy concept. Use this when you need to understand the hierarchical lineage of a concept in the taxonomy structure." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPT_SCHEMES", "name": "Get Organizations Taxonomy Concept Schemes", "description": "Tool to retrieve all taxonomy concept schemes from an organization. Use when you need to list or discover the taxonomy structure and concept schemes available in an organization." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPT_SCHEMES2", "name": "Get Taxonomy Concept Scheme", "description": "Tool to retrieve a specific taxonomy concept scheme from an organization. Use when you need to get detailed information about a taxonomy concept scheme including its concepts, labels, and definitions." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPT_SCHEMES_TOTAL", "name": "Get Organizations Taxonomy Concept Schemes Total", "description": "Retrieves the total count of taxonomy concept schemes for a specific organization. Use this when you need to get the number of concept schemes configured for an organization's taxonomy." }, { "slug": "CONTENTFUL_GET_ORGANIZATIONS_TAXONOMY_CONCEPTS_TOTAL", "name": "Get Organizations Taxonomy Concepts Total", "description": "Retrieves the total count of taxonomy concepts for a specific organization. Use this when you need to get the number of concepts configured for an organization's taxonomy." }, { "slug": "CONTENTFUL_GET_RELEASE", "name": "Get Release", "description": "Tool to get a single release by ID from Contentful. Use when you need to retrieve details about a specific release including its entities, metadata, and archive status." }, { "slug": "CONTENTFUL_GET_SPACE", "name": "Get space", "description": "Retrieves metadata of a specific space by its ID. Returns space-level details only (name, locales, sys fields) — not entries, content types, or assets. The returned sys.version is required for subsequent CONTENTFUL_UPDATE_SPACE calls to avoid version conflict errors." }, { "slug": "CONTENTFUL_GET_SPACE_MEMBERSHIPS", "name": "Get Space Memberships", "description": "Tool to get all space memberships in a Contentful space. Use when you need to list all users who have access to a space and their assigned roles. Returns paginated results with membership details including admin status and role assignments." }, { "slug": "CONTENTFUL_GET_SPACES_API_KEYS", "name": "Get Delivery API Keys", "description": "Tool to retrieve all Delivery API keys for a specific Contentful space. Use when you need to list all API keys configured for content delivery. This action returns key details including name, access token, policies, and associated environments." }, { "slug": "CONTENTFUL_GET_SPACES_ENVIRONMENTS", "name": "Get Space Environments", "description": "Retrieves all environments of a space in Contentful. Use this to list all environments (including the master environment) within a specific space." }, { "slug": "CONTENTFUL_GET_SPACES_ENVIRONMENTS_APP_INSTALLATIONS", "name": "List App Installations", "description": "Lists all app installations in a specific Contentful environment. Use this to discover which apps are currently installed in an environment." }, { "slug": "CONTENTFUL_GET_SPACES_ENVIRONMENTS_ASSETS", "name": "Get All Assets", "description": "Retrieves all assets from a specific environment in a Contentful space. Use this to list and browse assets like images, videos, and documents. Supports pagination and ordering for large asset collections." }, { "slug": "CONTENTFUL_GET_SPACES_ENVIRONMENTS_LOCALES", "name": "Get Space Environment Locales", "description": "Tool to retrieve all locales of a space environment in Contentful. Use when you need to list all available locales including their codes, names, default status, and fallback configurations." }, { "slug": "CONTENTFUL_GET_SPACES_ENVS_APP_INSTALLATIONS_FUNCTIONS", "name": "Get App Installation Functions", "description": "Tool to get all functions for an app installation in a Contentful environment. Use when you need to retrieve the list of functions defined for an installed app in a specific space and environment." }, { "slug": "CONTENTFUL_GET_USERS_ME", "name": "Get Authenticated User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to get details about the user making the API calls, such as their profile information, email, or account status." }, { "slug": "CONTENTFUL_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a single webhook definition from a Contentful space. Use this action when you need to inspect the configuration details of an existing webhook, including its URL, subscribed topics, headers, and filters. The webhook definition contains all configuration needed for Contentful to send webhook notifications to external systems." }, { "slug": "CONTENTFUL_GET_WEBHOOK_CALLS", "name": "Get Webhook Calls", "description": "Tool to retrieve an overview of recent webhook calls for a specific webhook in Contentful. Use this action when you need to inspect webhook call history, debug webhook issues, or monitor webhook performance and reliability. The response includes request/response details, timestamps, status codes, and any errors that occurred." }, { "slug": "CONTENTFUL_GET_WEBHOOK_HEALTH", "name": "Get Webhook Health", "description": "Retrieves health status and call statistics for a specific webhook in Contentful. Use this action when you need to monitor webhook performance, check success rates, or troubleshoot webhook delivery issues." }, { "slug": "CONTENTFUL_LIST_ENTRIES", "name": "List Entries", "description": "Tool to retrieve all entries from a Contentful space environment. Use when you need to list, search, or filter content entries. Supports pagination, sorting, field selection, and filtering by content type or custom fields." }, { "slug": "CONTENTFUL_LIST_ENVIRONMENTS", "name": "List Environments", "description": "Lists all environments of a space in Contentful, including the master environment and any custom environments. Use this action when you need to discover available environments within a space for content management operations. Supports pagination for spaces with many environments." }, { "slug": "CONTENTFUL_LIST_SPACES", "name": "List spaces", "description": "Lists all spaces that the authenticated user has access to in Contentful. This is a fundamental operation needed before performing any other content management actions since most operations require a space ID. To paginate, increment `skip` by `limit` across successive calls; stop when the returned count is less than `limit`." }, { "slug": "CONTENTFUL_LIST_SPACES_ROLES", "name": "Get All Space Roles", "description": "Tool to retrieve all roles from a Contentful space. Use this to list roles that define user permissions and access levels within a space." }, { "slug": "CONTENTFUL_LIST_WEBHOOKS", "name": "List Space Webhooks", "description": "Retrieves all webhooks configured for a Contentful space. Webhooks enable real-time notifications when content changes occur. Use this action when you need to view existing webhook configurations, audit webhook subscriptions, or check which events are being monitored." }, { "slug": "CONTENTFUL_PROCESS_ASSET", "name": "Process Asset", "description": "Tool to process an asset file in Contentful for a specific locale. Use this action when you need to trigger asset processing after uploading a file. Processing downloads the file from the provided URL, validates it, and makes it available through Contentful's CDN. After processing completes, the asset can be published to make it publicly accessible." }, { "slug": "CONTENTFUL_PUBLISH_ASSET", "name": "Publish Asset", "description": "Tool to publish an asset in Contentful, making it available via the Content Delivery API. Use when you need to make an asset publicly accessible or move it from draft to published status. The asset must not be archived and should be fully processed before publishing. Publishing increments the asset version and sets publication metadata." }, { "slug": "CONTENTFUL_PUBLISH_ENTRY", "name": "Publish Entry", "description": "Tool to publish an entry in Contentful, making it available via the Content Delivery API. Use when you need to make an entry publicly accessible or move it from draft to published status. The entry must not be archived and should have all required fields completed. Publishing increments the entry version." }, { "slug": "CONTENTFUL_QUERY_ASSET_COLLECTION", "name": "Query Asset Collection", "description": "Tool to retrieve multiple assets with pagination and filtering via GraphQL API. Use when you need to query assets from Contentful with advanced filtering, sorting, and locale selection. Supports preview mode and fallback locale options." }, { "slug": "CONTENTFUL_QUERY_GRAPHQL_CONTENT_TYPE_COLLECTION", "name": "Query GraphQL Content Type Collection", "description": "Tool to query a collection of entries for a specific content type using GraphQL. Use when you need to fetch multiple entries with filtering, sorting, pagination, or preview mode. The query field name must be the camelCase content type ID with 'Collection' suffix (e.g., 'blogPostCollection')." }, { "slug": "CONTENTFUL_UNARCHIVE_ENTRY", "name": "Unarchive Entry", "description": "Tool to unarchive an entry in Contentful, restoring it to active status. Use when you need to restore an archived entry to make it available for editing and publishing. The entry must be currently archived. You may need to provide the X-Contentful-Version header matching the entry's current version." }, { "slug": "CONTENTFUL_UNPUBLISH_CONTENT_TYPE", "name": "Unpublish Content Type", "description": "Unpublishes a content type in Contentful, removing it from the Content Delivery API. Use this action when you need to take a content type offline while keeping it in draft state for further modifications. Once unpublished, entries of this type will no longer be accessible via the delivery API, but can still be edited in the management interface. Requires the current version number for optimistic locking." }, { "slug": "CONTENTFUL_UPDATE_APP_DEFINITION", "name": "Update App Definition", "description": "Tool to update an app definition by ID in a Contentful organization. Use when you need to modify an app's name, source URL, locations, or parameters." }, { "slug": "CONTENTFUL_UPDATE_CONTENT_TYPE", "name": "Update Content Type", "description": "Updates an existing content type in a Contentful environment. Use when you need to modify a content type's name, description, display field, or field definitions. Requires the current version number for optimistic locking. The API does not merge partial updates - you must provide the complete content type definition including all existing fields." }, { "slug": "CONTENTFUL_UPDATE_EDITOR_INTERFACE", "name": "Update Editor Interface", "description": "Tool to update the editor interface configuration for a content type. Use when you need to customize how fields are displayed and edited in the Contentful UI. The version number is required to prevent conflicts when multiple users update the same editor interface." }, { "slug": "CONTENTFUL_UPDATE_ENTRY", "name": "Update Entry", "description": "Tool to create or update an entry in a Contentful space environment. Use when you need to modify entry content or create a new entry with a specific ID. Requires the content type ID, entry version for updates, and field values organized by locale." }, { "slug": "CONTENTFUL_UPDATE_LOCALE", "name": "Update Locale", "description": "Updates an existing locale in a Contentful environment. Use this action when you need to modify locale properties such as name, code, fallback settings, or API availability flags. Requires the current version number for optimistic locking to prevent concurrent modifications." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_APP_DEF_EVENT_SUBSCRIPTION", "name": "Update App Event Subscription", "description": "Tool to update or create an app event subscription in a Contentful organization. Use when you need to configure event subscriptions for an app definition to receive webhooks." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_APP_DEFINITIONS_ACTIONS", "name": "Update App Definition Action", "description": "Tool to update an action for a Contentful app definition. Use when you need to modify existing action properties such as name, URL, type, or category." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_APP_DEFINITIONS_DETAILS", "name": "Update App Definition Details", "description": "Tool to create or update app definition details for an organization in Contentful. Use when you need to initialize or modify app details such as icons or preview images. Note: This endpoint accepts an empty body to initialize details; properties like 'name' and 'src' are not accepted here and will cause validation errors." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_APP_DEF_SIGNING_SECRET", "name": "Update App Definition Signing Secret", "description": "Tool to create or overwrite the app signing secret for an app definition. Use when you need to set up webhook signature verification or rotate an existing secret. Note: This operation overwrites any existing signing secret." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_ENABLEMENTS", "name": "Update Organization Enablements", "description": "Updates feature enablements for a specific organization in Contentful. Use this to enable or disable AI and vectorization features for the organization. Requires the current version number for optimistic locking to prevent conflicts." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_SECURITY_CONTACTS", "name": "Update Organization Security Contact", "description": "Updates an organization security contact that an admin or owner has access to. Use this to change the email address of a security contact." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_TAXONOMY_CONCEPTS", "name": "Update Organizations Taxonomy Concepts", "description": "Tool to create or update a taxonomy concept with a user-defined ID in a Contentful organization. Use when you need to create a concept with a specific ID or update an existing concept's properties." }, { "slug": "CONTENTFUL_UPDATE_ORGANIZATIONS_TAXONOMY_CONCEPT_SCHEMES", "name": "Update Organizations Taxonomy Concept Schemes", "description": "Tool to create or update a taxonomy concept scheme with a user-defined ID in an organization. Use when you need to create a new classification scheme or update an existing one with localized labels and definitions." }, { "slug": "CONTENTFUL_UPDATE_SPACE", "name": "Update space", "description": "Updates the name of a specific space. Notes: - The version number is required to ensure you're updating the latest version of the space. - You can get the current version from the sys.version field when fetching space details. - Only the name of the space can be updated." }, { "slug": "CONTENTFUL_UPDATE_SPACES_ENVIRONMENTS_TAGS", "name": "Update Tag", "description": "Creates or updates a tag in a Contentful environment. Use this when you need to modify an existing tag's name or create a new one." }, { "slug": "CONTENTFUL_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Updates an existing webhook definition in a Contentful space. Use this action when you need to modify webhook configuration such as the target URL, event topics, custom headers, filters, or authentication settings. Contentful uses optimistic locking via the version parameter or X-Contentful-Version header to prevent concurrent modification conflicts." }, { "slug": "CONTENTFUL_VALIDATE_BULK_ACTION", "name": "Validate Bulk Action", "description": "Tool to validate a bulk action before executing it. Use when you need to check if multiple entries or assets can be published in bulk without actually publishing them. This helps identify potential issues before attempting the actual bulk operation." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "contentful_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Contentful API, e.g. https://api.contentful.com for global customers or https://api.eu.contentful.com for EU data residency customers", "required": true, "default": "https://api.contentful.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "content_management_manage" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "contentful_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Contentful Content Delivery API, e.g. https://api.contentful.com for global customers or https://api.eu.contentful.com for EU data residency customers", "required": true, "default": "https://api.contentful.com" }, { "name": "bearer_token", "displayName": "Content Delivery API Access Token", "type": "string", "description": "The access token for the Contentful Content Delivery API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "oncehub", "name": "Oncehub", "logo": "https://logos.composio.dev/api/oncehub", "description": "OnceHub is a scheduling and appointment management software that automates meeting coordination, eliminating back-and-forth emails for booking", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "oncehub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your OnceHub API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "close", "name": "Close", "logo": "https://logos.composio.dev/api/close", "description": "Close is a CRM platform designed to help businesses manage and streamline their sales processes, including calling, email automation, and predictive dialers.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOSE_CREATE_CALL", "name": "Create Call", "description": "Creates a new call record in Close.com. This tool allows you to log both inbound and outbound calls associated with a lead, supporting parameters such as lead_id, direction, and optional support for contact_id, phone, duration, note, recording_url, and user_id." }, { "slug": "CLOSE_CREATE_LEAD", "name": "Create Lead", "description": "Creates a new lead in Close CRM. A lead represents a company or organization in your sales pipeline. This tool allows you to create leads with company information (name, description, website), associate contacts with emails/phones/URLs, add addresses, and set the lead status. Contacts and addresses can be nested in the lead creation request. The tool returns comprehensive lead information including the lead ID, direct URL to view in Close CRM, associated contacts with their IDs, addresses, status information, and creation/update timestamps. Note: Activities, tasks, and opportunities must be created separately after lead creation." }, { "slug": "CLOSE_CREATE_SMS", "name": "Create SMS Message", "description": "This tool creates a new SMS activity in Close CRM. It is primarily used to log SMS communications, including sent messages, received messages, and draft messages. The tool requires an internal phone number (local_phone) which must be an SMS-enabled phone number owned by your Close organization. Note: Actually sending SMS messages (status 'outbox' or 'scheduled') requires A2P 10DLC compliance." }, { "slug": "CLOSE_CREATE_TASK", "name": "Create Task", "description": "This tool creates a new task in Close.com. Tasks are used to track to-do items and can be associated with leads. The tool will create a task with the specified parameters using the provided text, due_date, and is_complete flags." }, { "slug": "CLOSE_DELETE_CALL", "name": "Delete Call", "description": "This tool allows you to delete a specific call activity in Close.com. It is useful for removing incorrectly logged calls or cleaning up call records. The action deletes a call activity using its unique call ID and cannot be undone." }, { "slug": "CLOSE_GET_NOTE", "name": "Get Notes", "description": "This tool retrieves a list of note activities from Close. It allows users to fetch notes with optional filtering parameters, including filtering by lead_id, user_id, and date ranges. The tool returns details such as note content, creation and update dates, and any associated attachments." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "close_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret Close API key, starting with 'api_'. Create one in Close under Settings → Developer → API Keys; it's shown in full only once, so copy it right away.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "icims_talent_cloud", "name": "iCIMS Talent Cloud", "logo": "https://logos.composio.dev/api/icims_talent_cloud", "description": "iCIMS Talent Cloud offers applicant tracking, onboarding, and talent management solutions, empowering organizations to streamline hiring and enhance the candidate experience", "category": "hr talent & recruitment", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "icims_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "brex_staging", "name": "Brex Staging", "logo": "https://logos.composio.dev/api/brex_staging", "description": "DEPRECATED: Use 'Brex' instead. Brex Staging is typically a test environment for Brex’s financial tools, helping organizations pilot expense management and card solutions before full-scale deployment", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2_staging", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "docmosis", "name": "Docmosis", "logo": "https://logos.composio.dev/api/docmosis", "description": "Docmosis generates PDF and Word documents from templates, letting developers merge data fields to produce reports, invoices, or letters quickly", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCMOSIS_DELETE_IMAGE", "name": "Docmosis: Delete Image(s)", "description": "Tool to delete one or more stored images. Use when you need to remove images; ensure imageName(s) are valid before use." }, { "slug": "DOCMOSIS_DELETE_TEMPLATE", "name": "Docmosis: Delete Template(s)", "description": "Tool to delete one or more templates from the environment. Use when you need to remove templates; multiple templates can be deleted in a single request." }, { "slug": "DOCMOSIS_ENVIRONMENT_READY", "name": "Docmosis Environment Ready", "description": "Tool to verify environment readiness. Use when ensuring the environment is active and within quota before rendering documents." }, { "slug": "DOCMOSIS_ENVIRONMENT_SUMMARY", "name": "Docmosis Environment Summary", "description": "Tool to retrieve environment summary. Use when you need status, plan, and quota details of your Docmosis environment after authentication." }, { "slug": "DOCMOSIS_GET_API_KEY", "name": "Docmosis: Get API Key", "description": "Tool to extract the Docmosis API access key from connection metadata. Use before other Docmosis API calls to retrieve the Bearer token from the Authorization header." }, { "slug": "DOCMOSIS_GET_BATCH_UPLOAD_STATUS", "name": "Get Batch Upload Status", "description": "Tool to check the status of a template batch upload job. Use when monitoring batch upload progress or checking if a batch upload has completed." }, { "slug": "DOCMOSIS_GET_IMAGE", "name": "Download Docmosis Images", "description": "Tool to download one or more images. Use when you need to retrieve stored image files by name. If multiple names provided, images are returned in a zip archive." }, { "slug": "DOCMOSIS_GET_RENDER_QUEUE", "name": "Get Docmosis Render Queue", "description": "Tool to get current render queue status and utilization. Use when monitoring queue capacity before scheduling rendering tasks." }, { "slug": "DOCMOSIS_GET_RENDER_TAGS", "name": "Get Render Tags", "description": "Tool to retrieve statistics on renders tagged with user-defined phrases. Returns page counts and document counts aggregated monthly. Use when reporting activity of user groups or features." }, { "slug": "DOCMOSIS_GET_SAMPLE_DATA", "name": "Get Template Sample Data", "description": "Tool to generate sample data for a Docmosis template based on its structure. Creates placeholder values that can be used for testing renders. Returns data in JSON or XML format." }, { "slug": "DOCMOSIS_GET_TEMPLATE", "name": "Download Docmosis Templates", "description": "Tool to retrieve originally uploaded templates. Use when you need to download template files by name. If multiple names provided (up to 100), templates are returned in a zip archive." }, { "slug": "DOCMOSIS_GET_TEMPLATE_DETAILS", "name": "Get Docmosis Template Details", "description": "Tool to retrieve metadata for an uploaded template. Returns name, size, MD5 hash, last modified date, and error status. Use after uploading a template to verify it was stored correctly or to check if it has errors." }, { "slug": "DOCMOSIS_GET_TEMPLATE_STRUCTURE", "name": "Get Docmosis Template Structure", "description": "Tool to retrieve a template's parsed structure: fields, repeats, conditions, images, and refs. Use after uploading a template to inspect its JSON structure." }, { "slug": "DOCMOSIS_LIST_IMAGES", "name": "Docmosis: List Images", "description": "Tool to list available stock images. Use when you need to retrieve image names optionally filtered by folder." }, { "slug": "DOCMOSIS_LIST_TEMPLATES", "name": "Docmosis: List Templates", "description": "Tool to list all templates available in the environment. Use when you need to retrieve template names, optionally filtered by folder with pagination support." }, { "slug": "DOCMOSIS_PING", "name": "Docmosis Ping", "description": "Tool to check connectivity to Docmosis Cloud services. Use when validating that the service endpoint is reachable before other operations." }, { "slug": "DOCMOSIS_PING_DOCMOSIS_SERVICE", "name": "Ping Docmosis Service", "description": "Tool to check that Docmosis Cloud services are online and at least one server is listening. Use for diagnostics and monitoring to verify service availability." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docmosis_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Docmosis API base URL. US: https://us1.dws4.docmosis.com/api, EU: https://eu1.dws4.docmosis.com/api, AU: https://au1.dws4.docmosis.com/api", "required": true, "default": "https://us1.dws4.docmosis.com/api" }, { "name": "generic_api_key", "displayName": "Access Key", "type": "string", "description": "Your Docmosis access key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ably", "name": "Ably", "logo": "https://logos.composio.dev/api/ably", "description": "Ably is a real-time messaging platform helping developers build live features, including chat and data synchronization, with global scalability and robust reliability for modern applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ABLY_BATCH_PRESENCE", "name": "Query Batch Presence", "description": "This tool enables querying the presence states of multiple channels in a single API request. The API retrieves the member presence details of the specified channels in parallel." }, { "slug": "ABLY_BATCH_PRESENCE_HISTORY", "name": "Query Batch Presence History", "description": "This tool enables querying presence history for multiple channels in a single API request. It uses the GET endpoint at https://rest.ably.io/presence to retrieve the member presence history details of the specified channels in parallel." }, { "slug": "ABLY_DELETE_CHANNEL_SUBSCRIPTION", "name": "Delete Channel Subscription", "description": "This tool allows you to unsubscribe devices or clients from push notifications for specific channels. The operation is asynchronous, so immediate requests after deletion may briefly still return the subscription." }, { "slug": "ABLY_GET_CHANNEL_DETAILS", "name": "Get Channel Details", "description": "This tool retrieves metadata and details for a specific channel in Ably. It returns a ChannelDetails object containing information about the channel's status, occupancy, and other metadata. The endpoint provides visibility into channel activity, including metrics such as connections, presence, publishers, and subscribers, and requires appropriate permissions." }, { "slug": "ABLY_GET_CHANNEL_HISTORY", "name": "Get Channel History", "description": "This tool retrieves the message history for a specified Ably channel. It uses the GET /channels/{channelId}/messages endpoint to return a paginated list of messages in chronological order, subject to parameters such as 'channelId', 'limit', 'direction', 'start', and 'end'. The tool is useful for auditing, recovering missed messages, analyzing channel activity, and debugging message flows. Authentication is required via basic or token authentication." }, { "slug": "ABLY_GET_CHANNEL_PRESENCE", "name": "Get Channel Presence", "description": "Tool to obtain the set of members currently present for a channel. Use when you need to check which clients are currently connected and active on a specific Ably channel." }, { "slug": "ABLY_GET_MESSAGE_VERSIONS", "name": "Get Message Versions", "description": "Tool to retrieve all historical versions of a specific message from an Ably channel. Use when you need to track message history, including the original message and all subsequent updates or delete operations. Each version includes metadata such as timestamp, action type, and client ID." }, { "slug": "ABLY_GET_PRESENCE_HISTORY", "name": "Get Channel Presence History", "description": "This tool retrieves the history of presence messages for a specified channel in Ably. It allows you to query presence events on a channel within a given time period." }, { "slug": "ABLY_GET_PUSH_DEVICE", "name": "Get Push Device Registration", "description": "Tool to get the full details of a device registration for push notifications. Use when you need to retrieve information about a specific device registered for push notifications, including its platform, state, recipient details, and metadata. Requires the device ID." }, { "slug": "ABLY_GET_SERVICE_TIME", "name": "Get Ably Service Time", "description": "This tool retrieves the current server time from Ably's service in milliseconds since the epoch. It is particularly useful for time synchronization and generating valid TokenRequest timestamps to prevent replay attacks. The endpoint supports multiple content types, handles HTTP errors, network issues, and is a fundamental tool for ensuring accurate timing in Ably applications." }, { "slug": "ABLY_GET_STATS", "name": "Get Application Stats", "description": "This tool retrieves your application's usage statistics from Ably. The stats endpoint returns a paginated list of your application's usage statistics by minute, hour, day, or month. It supports optional parameters such as start, end, direction, limit, and unit to filter and format the returned data. The stats include metrics for: - Message counts and data transferred - Connection counts - Channel usage - API request counts - Push notification metrics - Token request counts" }, { "slug": "ABLY_LIST_CHANNELS", "name": "List Channels", "description": "Tool to enumerate all active channels in the Ably application. Use when you need to discover available channels or monitor channel activity. Returns paginated results and is heavily rate-limited. Can return either channel names only or full channel details with occupancy data." }, { "slug": "ABLY_LIST_PUSH_CHANNELS", "name": "List Push Channels", "description": "Tool to list all channels with at least one subscribed device. Use when you need to discover which channels have active push notification subscriptions in your Ably application." }, { "slug": "ABLY_LIST_PUSH_CHANNEL_SUBSCRIPTIONS", "name": "List Push Channel Subscriptions", "description": "This tool retrieves a list of all push notification channel subscriptions. It allows you to view all active push notification subscriptions for channels in your Ably application. Allows filtering by channel, deviceId, and clientId, supports pagination with limit parameter, and returns detailed push notification subscription information including channel, deviceId, and clientId." }, { "slug": "ABLY_LIST_REGISTERED_PUSH_DEVICES", "name": "List Registered Push Devices", "description": "Tool to list all devices registered for receiving push notifications in your Ably application. Use when you need to view, filter, or audit push notification device registrations. Supports filtering by deviceId and clientId, with pagination via limit parameter." }, { "slug": "ABLY_PATCH_PUSH_DEVICE_REGISTRATION", "name": "Patch Push Device Registration", "description": "Tool to partially update specific attributes of an existing device registration in Ably's push notification system. Use when you need to modify device properties like formFactor, clientId, platform, or push recipient details without replacing the entire registration." }, { "slug": "ABLY_PUBLISH_BATCH_MESSAGES", "name": "Batch Publish Messages", "description": "Tool to batch publish messages to multiple channels in parallel. Use when you need to send the same set of messages to multiple channels simultaneously for efficient broadcasting." }, { "slug": "ABLY_PUBLISH_MESSAGE_TO_CHANNEL", "name": "Publish Message to Channel", "description": "This tool will allow users to publish a message to a specified Ably channel using a POST request. It covers the essentials like channel name, message data, optional event name/type, and additional metadata for push notifications. It is an independent and fundamental operation within Ably's real-time messaging platform." }, { "slug": "ABLY_PUBLISH_PUSH_NOTIFICATION", "name": "Publish Push Notification", "description": "Tool to publish a push notification directly to device(s) via Ably's Push Notifications API. Use when you need to send push notifications to specific devices identified by device ID, client ID, or platform-specific tokens. The API returns HTTP 204 on success with no response body." }, { "slug": "ABLY_PUBLISH_PUSH_NOTIFICATIONS_BATCH", "name": "Batch Publish Push Notifications", "description": "Tool to batch publish push notifications directly to specific recipients. Use when you need to send multiple push notifications efficiently in a single request. Supports up to 10,000 notifications per batch." }, { "slug": "ABLY_REGISTER_PUSH_DEVICE", "name": "Register Push Device", "description": "Tool to register a device for receiving push notifications in Ably. Use when you need to enable push notifications for a specific device across various platforms including iOS (APNs), Android (FCM/GCM), and web browsers (Web Push). The device must be registered before it can receive push notifications through Ably's push notification system." }, { "slug": "ABLY_REQUEST_ACCESS_TOKEN", "name": "Request Access Token", "description": "Request an access token for Ably authentication. Use this when you need to generate a token with specific capabilities and client identifiers for secure authentication. The token can be used to authenticate clients with limited permissions and time-bound access." }, { "slug": "ABLY_UNREGISTER_ALL_PUSH_DEVICES", "name": "Unregister All Push Devices", "description": "Tool to unregister matching devices for push notifications. Use when you need to remove device registrations from Ably's push notification system. You can filter by deviceId or clientId, but not both simultaneously." }, { "slug": "ABLY_UNREGISTER_PUSH_DEVICE", "name": "Unregister Push Device", "description": "Tool to unregister a single device from push notifications in Ably. Use when you need to remove a device's push notification registration. This permanently removes the device from receiving push notifications until it is registered again." }, { "slug": "ABLY_UPDATE_PUSH_DEVICE", "name": "Update Push Device Registration", "description": "Tool to update (upsert) a device registration for push notifications in Ably. Use when registering a new device or updating an existing device's push notification configuration. This is an upsert operation - if the device doesn't exist, it will be created; if it exists, it will be updated." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ably_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Ably API key. Generate it from your Ably Dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "more_trees", "name": "More Trees", "logo": "https://logos.composio.dev/api/more_trees", "description": "More Trees is a sustainability-focused platform planting trees on behalf of individuals or businesses aiming to offset carbon footprints and support reforestation", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MORE_TREES_CREATE_USER", "name": "Create User", "description": "Creates a new user that can be assigned to a plantation account. Use this when you need to onboard a new user to the More Trees platform. The user must agree to terms and conditions (is_agreed=true). Returns the created user details including a unique user ID." }, { "slug": "MORE_TREES_GET_MARKETING_PREFERENCES", "name": "Get Marketing Preferences", "description": "Tool to retrieve available marketing preferences. Use when you need to get the list of marketing preference options that users can select." }, { "slug": "MORE_TREES_GET_TOTAL_CARBON_OFFSET", "name": "Get Total Carbon Offset", "description": "Retrieves the total carbon offset and forest statistics for a specified forest. Returns comprehensive data about a forest including: - Forest branding (name, logo, color) - Total CO2 captured - Number of trees planted, gifted, and received - Number of tree planting projects supported The forest_slug_or_account_code parameter is required and can be found in the More Trees platform at Settings > Account Settings." }, { "slug": "MORE_TREES_LIST_PROJECTS", "name": "List Projects", "description": "Retrieves all active tree planting projects with comprehensive details. Returns project information including name, ID, description, country, project type, supplier name, and available tree species for each project. Use this action to discover available projects and their tree planting options." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "more_trees_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your More Trees API key. Find it under Settings → Account Settings on the platform.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account Code", "type": "string", "description": "Your More Trees account code. Find it under Settings → Account Settings on the platform.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "netsuite", "name": "Netsuite", "logo": "https://logos.composio.dev/api/netsuite", "description": "NetSuite by Oracle is a cloud-based ERP suite that combines accounting, CRM, e-commerce, and inventory management for comprehensive business oversight", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 86, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NETSUITE_ASYNC_GET_JOB_STATUS", "name": "Get Async Job Status", "description": "Retrieves the current status of an asynchronous NetSuite REST job. Use this tool to check whether an async job has completed and its progress state. When you submit any NetSuite REST API request with the 'Prefer: respond-async' header, NetSuite returns a Location header containing the job ID. Use that job ID with this tool to poll the job's status. The response indicates if the job is completed, its progress state (pending/processing/succeeded/failed), and provides links to retrieve the job results once completed." }, { "slug": "NETSUITE_ASYNC_GET_JOB_TASK", "name": "Get Async Job Task", "description": "Retrieves the task reference (task ID and URL) for an asynchronous job in NetSuite. Use this action after submitting an async request with 'Prefer: respond-async' header and receiving a job_id in the Location header. The task ID is required to retrieve the job's result using the async get job task result action. Typical workflow: 1) Submit async request → 2) Get job_id → 3) Use this action to get task_id → 4) Poll job status → 5) Retrieve results with task_id." }, { "slug": "NETSUITE_ASYNC_GET_JOB_TASK_RESULT", "name": "Async Get Job Task Result", "description": "Tool to retrieve the payload result of a completed async task. Use after confirming the async job and task have completed to fetch the operation's output." }, { "slug": "NETSUITE_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer record in NetSuite. Requires subsidiary ID and either company name (for business customers) or first/last name (for individual customers). Returns the location URL of the created customer record, or an async job URL if using async mode." }, { "slug": "NETSUITE_CREATE_CUSTOMER_PAYMENT", "name": "Create Customer Payment", "description": "Creates a customer payment record in NetSuite. Requires account (deposit account), customer reference, and payment amount. Optionally link payment to specific invoices via the 'apply' sublist. Returns the URL of the created payment record." }, { "slug": "NETSUITE_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Creates a new employee record in NetSuite. Required: firstName, lastName, and subsidiary ID. Returns the URL of the created employee in the location field. Supports async creation with 'respond-async' preference." }, { "slug": "NETSUITE_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice record. Use when you have all required invoice details and want to add them to NetSuite." }, { "slug": "NETSUITE_CREATE_ITEM", "name": "Create Item", "description": "Creates a new item record in NetSuite via REST API. Supports multiple item types including inventory items, service items, and description items. Returns the URL of the created item. Use this when you need to add new products, services, or descriptive items to the NetSuite catalog." }, { "slug": "NETSUITE_CREATE_JOURNAL_ENTRY", "name": "Create Journal Entry", "description": "Tool to create a new journal entry record. Use when posting balanced debits and credits to the general ledger." }, { "slug": "NETSUITE_CREATE_JWT_CLIENT_ASSERTION", "name": "Create JWT Client Assertion", "description": "Tool to build a JWT client assertion for NetSuite OAuth2 client credentials. Use before exchanging for an access token." }, { "slug": "NETSUITE_CREATE_PURCHASE_ORDER", "name": "Create Purchase Order", "description": "Tool to create a new purchase order record. Use when you need to submit a purchase order to a vendor." }, { "slug": "NETSUITE_CREATE_RECORD", "name": "Create Record", "description": "Creates a new NetSuite record of any type (customer, vendor, invoice, sales order, etc.). Use this action when you need to create any type of record in NetSuite. Provide the record type identifier and a JSON body with all required fields. Consider using GET_RECORD_METADATA first to discover required fields and valid values. Supports both synchronous (immediate) and asynchronous (background) creation. Returns the new record's ID and location URL. Limitations: Does not support subrecord creation or bulk operations (use dedicated bulk actions instead)." }, { "slug": "NETSUITE_CREATE_SALES_ORDER", "name": "Create Sales Order", "description": "Tool to create a new sales order record in NetSuite. Use this when you need to submit a customer order with one or more items. Each line item requires: - item: Reference to the inventory/service item (internal ID) - quantity: Number of units to order - rate: Unit price (optional if item has default pricing) - taxcode: Tax code reference (required if SuiteTax is enabled on the account) Note: NetSuite accounts with SuiteTax enabled require tax codes for line items." }, { "slug": "NETSUITE_CREATE_VENDOR", "name": "Create Vendor", "description": "Creates a new vendor record in NetSuite. Required: vendor name (companyName) and subsidiary ID. Use this when you need to add a new vendor to NetSuite's vendor list for procurement or accounts payable purposes." }, { "slug": "NETSUITE_CREATE_VENDOR_BILL", "name": "Create Vendor Bill", "description": "Tool to create a new vendor bill record. Use when you have all required bill and line-item details to add a vendor bill in NetSuite." }, { "slug": "NETSUITE_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a customer record by ID. Use when you need to remove an existing customer record from NetSuite." }, { "slug": "NETSUITE_DELETE_CUSTOMER_PAYMENT", "name": "Delete Customer Payment", "description": "Delete a customer payment record from NetSuite by its ID. Use this action to permanently remove a customer payment record. You can delete by internal ID (numeric) or external ID (prefixed with 'eid:'). This is a destructive operation and cannot be undone. Returns success=true on successful deletion (HTTP 204)." }, { "slug": "NETSUITE_DELETE_EMPLOYEE", "name": "Delete Employee", "description": "Deletes an employee record from NetSuite by its internal ID. This permanently removes the employee record. Use this when you need to remove a terminated or invalid employee from the system. Returns success=true on successful deletion, or raises an error if the employee doesn't exist." }, { "slug": "NETSUITE_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an invoice record by ID. Use when you need to remove an existing invoice record from NetSuite." }, { "slug": "NETSUITE_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete an item record by its type and ID. Use when you need to remove an existing item record from NetSuite. Use after verifying the record exists to avoid unintended deletions." }, { "slug": "NETSUITE_DELETE_ITEM_FULFILLMENT", "name": "Delete Item Fulfillment", "description": "Tool to delete an Item Fulfillment record. Use when you need to remove an existing Item Fulfillment record from NetSuite. Use after confirming the record exists." }, { "slug": "NETSUITE_DELETE_ITEM_RECEIPT", "name": "Delete Item Receipt", "description": "Tool to delete an item receipt record by ID. Use when you need to remove an existing item receipt from NetSuite." }, { "slug": "NETSUITE_DELETE_JOURNAL_ENTRY", "name": "Delete Journal Entry", "description": "Tool to delete a journal entry record by ID. Use when you need to remove an existing journal entry from NetSuite." }, { "slug": "NETSUITE_DELETE_PURCHASE_ORDER", "name": "Delete Purchase Order", "description": "Tool to delete a purchase order record by ID. Use when you need to remove an existing purchase order from NetSuite." }, { "slug": "NETSUITE_DELETE_SALES_ORDER", "name": "Delete Sales Order", "description": "Tool to delete a sales order by internal ID. Use when you need to remove an existing sales order record from NetSuite. Use after confirming the record exists to avoid unintended deletions." }, { "slug": "NETSUITE_DELETE_VENDOR_PAYMENT", "name": "Delete Vendor Payment", "description": "Tool to delete a vendor payment record by ID. Use when you need to remove an existing vendor payment from NetSuite." }, { "slug": "NETSUITE_EXECUTE_DATASET", "name": "Execute Dataset", "description": "Tool to execute a SuiteAnalytics dataset and return paged results. Use when you need to retrieve dataset rows with paging support." }, { "slug": "NETSUITE_FILTER_RECORD_COLLECTION", "name": "Filter Record Collection (Deprecated)", "description": "DEPRECATED: Use NETSUITE_LIST_RECORDS instead. Filters and retrieves NetSuite records by type with optional query expressions and pagination. Use this to list or search for records like customers, employees, vendors, invoices, etc. Supports filtering with query operators (EQUAL, START_WITH, CONTAIN, etc.) and pagination for large result sets. Returns record IDs and navigation links for accessing full record details." }, { "slug": "NETSUITE_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to retrieve a customer record by internal ID. Use when you have a customer ID and need detailed customer data." }, { "slug": "NETSUITE_GET_CUSTOMER_PAYMENT", "name": "Get Customer Payment", "description": "Tool to retrieve a customer payment record by ID. Use when you need to fetch payment details using the internal or external ID." }, { "slug": "NETSUITE_GET_DATACENTER_URLS", "name": "Get Data Center URLs", "description": "Tool to discover account-specific service domains. Use when you need to determine the correct REST, SOAP, and UI endpoints before making other API calls." }, { "slug": "NETSUITE_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to retrieve an employee record by ID. Use when you have an employee ID and need detailed employee data." }, { "slug": "NETSUITE_GET_GOVERNANCE_LIMITS", "name": "Get Governance Limits", "description": "Retrieve NetSuite account and integration concurrency governance limits. Returns the maximum number of concurrent API requests allowed for your account and integration, helping you avoid exceeding concurrency limits that would result in HTTP 429 errors. Requires administrator permissions to execute." }, { "slug": "NETSUITE_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve an invoice record by internal ID. Use when you have an invoice ID and need detailed invoice data." }, { "slug": "NETSUITE_GET_ITEM", "name": "Get Item", "description": "Tool to retrieve an item record by internal ID. Use when you have an item ID and need detailed item data." }, { "slug": "NETSUITE_GET_ITEM_FULFILLMENT", "name": "Get Item Fulfillment", "description": "Tool to retrieve an item fulfillment record by internal ID. Use when you have an item fulfillment ID and need detailed fulfillment data." }, { "slug": "NETSUITE_GET_ITEM_RECEIPT", "name": "Get Item Receipt", "description": "Tool to retrieve an item receipt record by internal ID. Use when you have an item receipt ID and need detailed item receipt data." }, { "slug": "NETSUITE_GET_JOURNAL_ENTRY", "name": "Get Journal Entry", "description": "Tool to retrieve a journal entry by internal ID. Use when you have a journal entry ID and need detailed journal entry data." }, { "slug": "NETSUITE_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Retrieves complete details of a purchase order by its internal ID using the NetSuite REST API. Use this action when you need to: - Get full details of a specific purchase order (vendor, items, amounts, dates, status) - View line items and expenses on a purchase order - Check purchase order status, approval status, or fulfillment details - Access billing and shipping addresses for a purchase order The response includes comprehensive purchase order data such as vendor information, transaction dates, currency, line items, totals, addresses, custom fields, and more. You can filter fields or expand sublists as needed using optional parameters." }, { "slug": "NETSUITE_GET_RECORD_METADATA", "name": "Get Record Metadata", "description": "Retrieves the complete metadata schema for a NetSuite record type, including all field definitions, data types, constraints, and descriptions. Use this action to discover available fields and their requirements before creating or updating records. The metadata includes standard and custom fields, field types (string, number, boolean, date, references), nullability, format constraints, and descriptive help text. Essential for dynamic record handling and validation." }, { "slug": "NETSUITE_GET_REFERENCE_SELECT_FIELD", "name": "Get Reference Select Field", "description": "Retrieves the complete record referenced by a select-type field on a parent record. Use this when you have a parent record (e.g., customer, salesorder) that references another record via a select field (e.g., 'subsidiary', 'entity', 'currency'), and you need the full details of that referenced record. Example: If a customer has subsidiary ID \"1\", use this to get all subsidiary details instead of just the ID reference. Common select fields by record type: - customer: subsidiary, currency, terms, salesRep, parent - salesorder/invoice: entity (customer), subsidiary, currency, terms - employee: supervisor, subsidiary, department - vendor: subsidiary, currency, terms" }, { "slug": "NETSUITE_GET_SALES_ORDER", "name": "Get Sales Order", "description": "Tool to retrieve a sales order record by internal ID. Use when you have a sales order ID and need detailed sales order data." }, { "slug": "NETSUITE_GET_SERVER_TIME", "name": "Get Server Time", "description": "Tool to retrieve NetSuite server time in UTC. Use when you need the current server timestamp for synchronization." }, { "slug": "NETSUITE_GET_SUBLIST_COLLECTION", "name": "Get Sublist Collection", "description": "Tool to retrieve a sublist collection from a parent record. Use when you need all lines of a given sublist (e.g., items on a sales order)." }, { "slug": "NETSUITE_GET_SUBLIST_LINE", "name": "Get Sublist Line", "description": "Tool to retrieve a specific line from a sublist of a record. Use when you need details of a particular sublist line by its ID." }, { "slug": "NETSUITE_GET_SUBRECORD", "name": "Get Subrecord", "description": "Retrieves a specific subrecord from a parent NetSuite record. Subrecords are body-level structured fields on NetSuite records that contain related data. Common examples include: - billingaddress and shippingaddress on sales orders, invoices, and purchase orders - Address subrecords on customer and vendor records This action uses the NetSuite REST Record API v1 to access subrecords via the endpoint pattern: /record/v1/{recordType}/{id}/{subrecordName} Use this when you need to retrieve detailed subrecord data separately from the parent record, which can be more efficient than fetching the entire parent record with expanded subresources." }, { "slug": "NETSUITE_GET_VENDOR", "name": "Get Vendor", "description": "Tool to get a single vendor record by internal ID. Use when needing specific vendor information." }, { "slug": "NETSUITE_GET_VENDOR_BILL", "name": "Get Vendor Bill", "description": "Retrieve a vendor bill record by its internal ID. Returns comprehensive bill details including vendor information, line items, amounts, dates, approval status, and accounting data. Use the 'fields' parameter to retrieve specific fields only, or 'expandSubResources' to include full sublist details (expense/item lines). Useful for auditing bills, payment processing, or integration workflows." }, { "slug": "NETSUITE_GET_VENDOR_PAYMENT", "name": "Get Vendor Payment", "description": "Retrieves a single vendor payment record by its internal ID from NetSuite. A vendor payment represents a payment made to a vendor, typically to settle one or more vendor bills. Use this action when you need detailed information about a specific vendor payment, including: - Payment amount, date, and transaction ID - Associated vendor information - Payment account and currency details - Applied bills (transactions being paid) - Accounting period and subsidiary To find vendor payment IDs, use the LIST_VENDOR_PAYMENTS action first." }, { "slug": "NETSUITE_LIST_CUSTOMER_PAYMENTS", "name": "List Customer Payments", "description": "Tool to list customer payment records. Use when you need to retrieve payments with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_DATASETS", "name": "List Datasets", "description": "Tool to list SuiteAnalytics Workbook datasets. Use when you need to retrieve datasets with optional pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to list employee records. Use when you need to retrieve multiple employees with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to list integration applications. Use when you need to retrieve client IDs and redirect URIs necessary for OAuth2 authorization flows." }, { "slug": "NETSUITE_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoice records. Use when you need to retrieve multiple invoices with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_ITEM_FULFILLMENTS", "name": "List Item Fulfillments", "description": "Tool to list item fulfillment records. Use when you need to retrieve multiple item fulfillments with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_ITEM_RECEIPTS", "name": "List Item Receipts", "description": "Tool to list item receipt records. Use when you need to retrieve multiple item receipt records with optional filtering and pagination after confirming a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_JOURNAL_ENTRIES", "name": "List Journal Entries", "description": "Tool to list journal entry records. Use when you need to retrieve multiple journal entries with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_METADATA_CATALOG", "name": "List Metadata Catalog", "description": "Tool to list all record types and their metadata. Use after authenticating when you need to discover available record definitions before further API calls." }, { "slug": "NETSUITE_LIST_PURCHASE_ORDERS", "name": "List Purchase Orders", "description": "Tool to list purchase order records. Use when you need to retrieve multiple purchase orders with optional filtering and pagination." }, { "slug": "NETSUITE_LIST_RECORDS", "name": "List Records", "description": "Tool to list record instances. Use when you need to retrieve multiple records with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_SALES_ORDERS", "name": "List Sales Orders", "description": "Tool to list sales order records. Use when you need to retrieve multiple sales orders with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_LIST_VENDOR_PAYMENTS", "name": "List Vendor Payments", "description": "Tool to list vendor payment records. Use when you need to retrieve vendor payments with optional filtering and pagination after establishing a valid NetSuite connection." }, { "slug": "NETSUITE_O_AUTH2_AUTHORIZE_ACCOUNT_DOMAIN", "name": "OAuth2 Authorize Account Domain", "description": "Tool to construct an OAuth2 authorization URL for a NetSuite account-specific domain. Use when initiating the OAuth2 authorization code flow." }, { "slug": "NETSUITE_O_AUTH2_AUTHORIZE_SYSTEM_DOMAIN", "name": "OAuth2 Authorize System Domain", "description": "Initiates the OAuth2 authorization code flow using NetSuite's system domain endpoint. Returns the authorization URL where users should be redirected to authenticate and grant permissions. After user authorization, NetSuite redirects back to your redirect_uri with an authorization code. Use this when you don't know the specific NetSuite account ID or want to use the generic system domain." }, { "slug": "NETSUITE_OAUTH2_GET_JWKS_KEYS", "name": "Get OAuth2 JWKS Keys", "description": "Tool to retrieve OAuth2 JWKS public keys. Use when validating token signatures." }, { "slug": "NETSUITE_O_AUTH2_LOGOUT", "name": "OAuth2 Logout", "description": "Tool to revoke an ID token and its associated access and refresh tokens. Use when ending an OAuth2 session to ensure credentials are invalidated." }, { "slug": "NETSUITE_O_AUTH2_REVOKE_REFRESH_TOKEN", "name": "Revoke OAuth2 Refresh Token", "description": "Revokes a NetSuite OAuth2 refresh token and all associated access tokens, immediately invalidating them. Use this when: - A user logs out and you want to invalidate their session tokens - Credentials are compromised and need immediate revocation - Decommissioning an integration or removing access - Cleaning up test tokens after development Note: This is a destructive operation - revoked tokens cannot be reused." }, { "slug": "NETSUITE_O_AUTH2_TOKEN_AUTHORIZATION_CODE", "name": "Exchange OAuth2 Authorization Code for Tokens", "description": "Exchange an OAuth2 authorization code for access and refresh tokens using the NetSuite token endpoint. This is the second step in the OAuth2 authorization code flow with PKCE: 1. User authorizes via OAuth2AuthorizeAccountDomain or OAuth2AuthorizeSystemDomain 2. User is redirected to your redirect_uri with authorization code 3. Use THIS action to exchange the code for tokens 4. Use access_token to make API requests, refresh_token to get new access tokens Supports both confidential clients (client secret in metadata) and public clients (no secret). PKCE (code_verifier) is required for security." }, { "slug": "NETSUITE_O_AUTH2_TOKEN_CLIENT_CREDENTIALS", "name": "OAuth2 Token Client Credentials", "description": "Tool to obtain an OAuth2 access token via client credentials grant. Use when authenticating to NetSuite APIs with a JWT-based client credentials flow." }, { "slug": "NETSUITE_O_AUTH2_TOKEN_REFRESH", "name": "OAuth2 Token Refresh", "description": "Tool to refresh an OAuth2 access token. Use when the current access token has expired and you need a new one." }, { "slug": "NETSUITE_RUN_SUITEQL_QUERY", "name": "Run SuiteQL Query", "description": "Tool to execute a SuiteQL query. Use when you need ad-hoc SQL queries against NetSuite data with server-side paging." }, { "slug": "NETSUITE_TRANSFORM_RECORD", "name": "Transform Record", "description": "Transform an existing NetSuite record into another record type (e.g., sales order to invoice, purchase order to item receipt). Creates a new target record populated with data from the source record. Supports common business workflows like: - Converting sales orders to invoices or item fulfillments - Converting purchase orders to item receipts or vendor bills - Converting invoices to credit memos Optionally override fields on the transformed record via record_body parameter." }, { "slug": "NETSUITE_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Updates an existing NetSuite customer record using PATCH semantics - only fields included in the 'data' parameter are modified. Use this action to: - Update customer contact information (email, phone, address) - Change customer status, sales rep, territory, or terms - Modify customer preferences and settings - Update custom fields Returns the location URL of the updated record. Supports both synchronous (immediate) and asynchronous processing modes." }, { "slug": "NETSUITE_UPDATE_CUSTOMER_PAYMENT", "name": "Update Customer Payment", "description": "Tool to update an existing customer payment by ID. Use when you need to modify fields of a customer payment record. Updates only the specified fields; all other fields remain unchanged. Common use cases include updating memo notes, email preferences, or transaction metadata." }, { "slug": "NETSUITE_UPDATE_EMPLOYEE", "name": "Update Employee", "description": "Tool to update an employee record by ID. Use when modifying fields of an existing employee." }, { "slug": "NETSUITE_UPDATE_INVOICE", "name": "Update Invoice", "description": "Updates an existing NetSuite invoice record by ID using the PATCH method. Only the fields specified in the 'data' parameter are updated; all other fields remain unchanged. Common use cases: - Update invoice memo or reference numbers - Change invoice email settings or customer contact info - Modify invoice due dates or payment terms - Update custom field values (custbody_* fields) Note: After updating, use the GET_INVOICE action if you need to retrieve the updated invoice data." }, { "slug": "NETSUITE_UPDATE_ITEM", "name": "Update Item", "description": "Tool to update an item record by ID. Use when modifying selected fields of an existing item; omitted fields remain unchanged." }, { "slug": "NETSUITE_UPDATE_ITEM_FULFILLMENT", "name": "Update Item Fulfillment", "description": "Tool to update an Item Fulfillment record by ID. Use when modifying fields or sublists of an existing fulfillment." }, { "slug": "NETSUITE_UPDATE_ITEM_RECEIPT", "name": "Update Item Receipt", "description": "Tool to update an item receipt record by ID. Use when modifying fields of an existing item receipt." }, { "slug": "NETSUITE_UPDATE_JOURNAL_ENTRY", "name": "Update Journal Entry", "description": "Tool to update a journal entry record by ID. Use when modifying fields of an existing journal entry after retrieving its details." }, { "slug": "NETSUITE_UPDATE_PURCHASE_ORDER", "name": "Update Purchase Order", "description": "Tool to update a purchase order record by ID. Use when modifying fields of an existing purchase order. Call after retrieving the record to confirm current values." }, { "slug": "NETSUITE_UPDATE_SALES_ORDER", "name": "Update Sales Order", "description": "Updates an existing NetSuite sales order record by ID using PATCH semantics. Only the fields provided in the data parameter will be modified; all other fields remain unchanged. Use this tool when you need to modify specific fields on an existing sales order, such as updating the memo, PO number, or status." }, { "slug": "NETSUITE_UPDATE_VENDOR", "name": "Update Vendor", "description": "Tool to update a vendor record by ID. Use when modifying fields of an existing vendor." }, { "slug": "NETSUITE_UPDATE_VENDOR_BILL", "name": "Update Vendor Bill", "description": "Tool to update a vendor bill record by ID. Use when modifying fields of an existing vendor bill." }, { "slug": "NETSUITE_UPDATE_VENDOR_PAYMENT", "name": "Update Vendor Payment", "description": "Tool to update a vendor payment record by ID. Use when modifying one or more fields on an existing vendor payment." }, { "slug": "NETSUITE_UPSERT_RECORD_BY_EXTERNAL_ID", "name": "Upsert Record by External ID", "description": "Tool to create or update a record by external ID. Use when you need to ensure a record exists or update its fields in one call." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "netsuite_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "profile" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your NetSuite account ID.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moz", "name": "Moz", "logo": "https://logos.composio.dev/api/moz", "description": "Moz is an SEO software suite providing keyword research, site audits, rank tracking, and competitive insights to boost organic search visibility", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOZ_FETCH_METADATA_INDEX", "name": "Fetch Metadata Index", "description": "Tool to fetch current index metadata from Moz via JSON-RPC. Returns an index ID that changes when the data in the index is updated. Use when you need to track index updates or verify the current index state." }, { "slug": "MOZ_FETCH_SITE_METRICS", "name": "Fetch Site Metrics", "description": "Tool to fetch site metrics from Moz including Domain Authority, Page Authority, Spam Score, and link counts. Use when you need SEO metrics for a domain or specific URL. Returns comprehensive link and authority data." }, { "slug": "MOZ_GET_GLOBAL_TOP_ROOT_DOMAINS", "name": "Get Global Top Root Domains", "description": "Tool to get the top 500 root domains across the entire web index sorted by Domain Authority. Returns the highest authority domains globally with Domain Authority, Spam Score, and linking domains count. Use when you need to identify the most authoritative domains on the web." }, { "slug": "MOZ_GET_USAGE_DATA", "name": "Get API Usage Data", "description": "Tool to get API usage data including the number of rows consumed. Use when you need to track API usage for a specific time range or the current billing period." }, { "slug": "MOZ_GLOBAL_TOP_PAGES", "name": "Get Global Top Pages", "description": "Tool to fetch global top pages from Moz. Use when you need a paginated list of highest authority pages." }, { "slug": "MOZ_INDEX_METADATA", "name": "Get Index Metadata", "description": "Tool to fetch link index metadata from Moz. Use when you need the current index ID (which changes when the index updates) and the dates of Spam Score model updates. Use after authenticating with Moz API." }, { "slug": "MOZ_LINK_STATUS", "name": "Check Link Status", "description": "Tool to check if source URLs link to a target URL. Use when you need to verify inbound links from multiple sources to a target." }, { "slug": "MOZ_LIST_GLOBAL_TOP_DOMAINS", "name": "Get Global Top Domains", "description": "Tool to get the top ranking domains globally based on Domain Authority. Use when you need the highest authority domains in the entire Moz index." }, { "slug": "MOZ_LIST_GLOBAL_TOP_PAGES", "name": "List Global Top Pages (JSON-RPC)", "description": "Tool to fetch global top ranking pages from Moz using JSON-RPC API. Use when you need to retrieve the highest Page Authority pages in the entire Moz index." }, { "slug": "MOZ_LOOKUP_QUOTA", "name": "Lookup Quota Information", "description": "Tool to lookup API quota information including remaining rows, quota limits, and usage across different quota types. Use when you need to check current quota status without consuming quota." }, { "slug": "MOZ_POST_TOP_PAGES", "name": "Get Top Pages", "description": "Tool to fetch the top pages on a target domain from Moz. Top pages are identified as pages with the most external links. Use when you need a list of high-authority pages on a specific domain or subdomain, sorted by Page Authority or other metrics." }, { "slug": "MOZ_USAGE_DATA", "name": "Get Usage Data", "description": "Tool to fetch API usage and quota details from Moz. Use when you need to monitor current plan, quota usage, and rate limits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moz_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Moz API token for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "recallai", "name": "Recall.ai", "logo": "https://logos.composio.dev/api/recallai", "description": "Recall AI provides a unified API to integrate meeting bots and access conversation data from major video conferencing platforms, enabling seamless automation, transcription, and analysis of virtual meetings.", "category": "ai meeting assistants", "authSchemes": [ "API_KEY" ], "toolCount": 63, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RECALLAI_CREATE_BOT", "name": "Create bot", "description": "Create a new bot to join and record a meeting. This action creates a meeting bot that can join Zoom, Google Meet, Microsoft Teams, and other supported platforms to record audio, video, and capture transcriptions. For production use, schedule bots at least 10 minutes in advance using the join_at parameter to ensure the bot joins on time." }, { "slug": "RECALLAI_CREATE_CALENDAR", "name": "Create Calendar Integration", "description": "Tool to create a new calendar integration with Google Calendar or Microsoft Outlook. Use when you need to connect a calendar platform to enable automatic bot scheduling for meetings." }, { "slug": "RECALLAI_CREATE_CALENDAR_AUTHENTICATE", "name": "Create Calendar Authentication Token", "description": "Tool to generate an authentication token for calendar APIs, scoped to the user. Use when you need to authenticate calendar operations for a specific user. Each token has an expiry of 1 day from time of creation." }, { "slug": "RECALLAI_CREATE_GOOGLE_LOGIN", "name": "Create Google Login", "description": "Tool to create a new Google Login credential within a login group. Use when you need to add a new Google account that bots can use to authenticate and join Google Meet meetings." }, { "slug": "RECALLAI_CREATE_GOOGLE_LOGIN_GROUP", "name": "Create Google Login Group", "description": "Tool to create a new Google Login Group for managing bot authentication. Use when you need to create a group of Google login credentials that bots can use to join Google Meet meetings." }, { "slug": "RECALLAI_CREATE_MEETING_DIRECT_CONNECT", "name": "Create Meeting Direct Connect", "description": "Tool to create a Meeting Direct Connect for Google Meet or Zoom. Use when you need to connect directly to a meeting platform's media stream via Google Meet Media API or Zoom RTMS. Either google_meet_media_api or zoom_rtms credentials must be provided, but not both." }, { "slug": "RECALLAI_CREATE_SDK_UPLOAD", "name": "Create SDK Upload", "description": "Create a new Desktop SDK upload. Use this to generate an upload token that can be used with the Recall.ai Desktop SDK to upload recordings directly from desktop applications." }, { "slug": "RECALLAI_CREATE_ZOOM_OAUTH_APP", "name": "Create Zoom OAuth App", "description": "Tool to create a new Zoom OAuth App integration with Recall.ai. Use when you need to configure Zoom OAuth credentials to enable bots to join Zoom meetings." }, { "slug": "RECALLAI_DELETE_BOT", "name": "Delete bot", "description": "Delete a scheduled bot by ID. This can only be used for scheduled bots that have not yet joined a call. If the bot is already in a call or about to join (less than 10 minutes before join time), use the REMOVE_BOT_FROM_CALL action instead." }, { "slug": "RECALLAI_DELETE_BOT_MEDIA", "name": "Delete Bot Media", "description": "Deletes bot media stored by Recall AI. This operation is irreversible and permanently removes all media files associated with the specified bot." }, { "slug": "RECALLAI_DELETE_CALENDAR", "name": "Delete calendar", "description": "Delete a calendar by ID. This will disconnect the calendar from Recall.ai. Use this when you need to remove a calendar integration." }, { "slug": "RECALLAI_DESTROY_CALENDAR_USER", "name": "Delete Calendar User", "description": "Delete calendar user and disconnect any connected calendars. This is a destructive operation that permanently removes the calendar user account and disconnects all associated calendar platform connections (Google, Microsoft, etc.)." }, { "slug": "RECALLAI_DESTROY_GOOGLE_LOGIN", "name": "Destroy Google Login", "description": "Tool to delete an existing Google Login by ID. Use when you need to remove a Google Login credential that is no longer needed." }, { "slug": "RECALLAI_DESTROY_GOOGLE_LOGIN_GROUP", "name": "Destroy Google Login Group", "description": "Tool to delete an existing Google Login Group by ID. Use when you need to remove a Google Login Group that is no longer needed." }, { "slug": "RECALLAI_DESTROY_ZOOM_O_AUTH_APP", "name": "Destroy Zoom OAuth App", "description": "Tool to delete a Zoom OAuth App by ID. Use when you need to remove a Zoom OAuth application that is no longer needed." }, { "slug": "RECALLAI_DISCONNECT_CALENDAR_USER", "name": "Disconnect Calendar User", "description": "Tool to disconnect a calendar platform (Google or Microsoft) from the user's Recall.ai account. Use when you need to remove calendar integration for a specific platform." }, { "slug": "RECALLAI_LIST_AUDIO_MIXED", "name": "List audio mixed", "description": "List audio mixed artifacts from Recall.ai recordings. Returns a paginated list of mixed audio files with their processing status and download URLs. Use filters to narrow results by date range, recording ID, or processing status. Rate limit: 60 requests per minute per workspace." }, { "slug": "RECALLAI_LIST_AUDIO_SEPARATE", "name": "List Audio Separate", "description": "List audio separation artifacts from recordings. Returns a paginated list of audio separation processing jobs with their status and download URLs for completed separations. Use this to retrieve participant-separated audio files from recorded meetings." }, { "slug": "RECALLAI_LIST_BOTS", "name": "List bots", "description": "List all bots in your Recall.ai workspace. Returns a paginated list of bots with their current status, meeting details, and configuration. Note: The meeting_url field is returned as a parsed object rather than a string." }, { "slug": "RECALLAI_LIST_BOT_SCREENSHOTS", "name": "List Bot Screenshots", "description": "List all screenshots captured by a bot during a meeting. Returns screenshots with their timestamp and download URL. Use filters to narrow results by recording time." }, { "slug": "RECALLAI_LIST_CALENDAR_EVENTS", "name": "List Calendar Events", "description": "Get a list of calendar events from connected calendars. Returns paginated calendar events with details about meeting URLs, platforms, and associated bots. Use filters like start_time__gte and start_time__lte to retrieve events within specific time ranges." }, { "slug": "RECALLAI_LIST_CALENDAR_MEETINGS", "name": "List calendar meetings", "description": "List all calendar meetings for the authenticated calendar user. Filter by iCalendar UID or time range. Use this to retrieve upcoming meetings, find specific events, or sync calendar data with bots." }, { "slug": "RECALLAI_LIST_CALENDARS", "name": "List calendars", "description": "Tool to retrieve a list of calendars integrated with Recall.ai. Use when you need to view all connected calendar accounts, check connection status, or filter calendars by platform (Google Calendar, Microsoft Outlook), email, or creation date. Supports pagination for large result sets." }, { "slug": "RECALLAI_LIST_CALENDAR_USERS", "name": "List calendar users", "description": "List all calendar users created for the account. Calendar users are used to automatically join and record meetings from integrated calendar providers. Use this to view all configured calendar users and their connection status." }, { "slug": "RECALLAI_LIST_CHAT_MESSAGES", "name": "List chat messages", "description": "Get list of chat messages read by the bot in the meeting(excluding messages sent by the bot itself)." }, { "slug": "RECALLAI_LIST_GOOGLE_LOGIN_GROUPS", "name": "List Google Login Groups", "description": "Tool to retrieve a list of all Google Login Groups in your Recall.ai workspace. Use when you need to view available Google login configurations for bot authentication. Supports pagination and filtering by name." }, { "slug": "RECALLAI_LIST_GOOGLE_LOGINS", "name": "List Google Logins", "description": "Tool to retrieve a list of all Google Logins in your Recall.ai workspace. Use when you need to view individual Google login credentials. Supports pagination and filtering by email, group ID, active status, and workspace domain." }, { "slug": "RECALLAI_LIST_MEETING_DIRECT_CONNECT", "name": "List Meeting Direct Connects", "description": "List all Meeting Direct Connect instances in your Recall.ai workspace. Returns a list of Meeting Direct Connect objects with their status, recordings, and configuration. Use this to monitor active direct connections and access their recordings." }, { "slug": "RECALLAI_LIST_MEETING_METADATA", "name": "List Meeting Metadata", "description": "List meeting metadata from Recall.ai recordings. Returns metadata extracted from meeting recordings including titles, participant info, and processing status. Use filtering to narrow results by date range, recording ID, or processing status. Results are paginated." }, { "slug": "RECALLAI_LIST_PARTICIPANT_EVENTS", "name": "List participant events", "description": "List participant events artifacts from recorded meetings. Returns download URLs for participant events, speaker timelines, and participant lists. Use status_code filter to find completed artifacts ready for download." }, { "slug": "RECALLAI_LIST_REALTIME_ENDPOINT", "name": "List Realtime Endpoints", "description": "Tool to list realtime endpoints from Recall.ai. Use when you need to retrieve realtime endpoints filtered by creation date, recording, status, or type. Returns paginated results. The base rate limit for this endpoint is 60 requests per minute per workspace." }, { "slug": "RECALLAI_LIST_RECORDING", "name": "List Recordings", "description": "Tool to list recordings from Recall.ai. Use when you need to retrieve recordings filtered by bot, creation date, status, or desktop SDK upload. Returns paginated results." }, { "slug": "RECALLAI_LIST_SDK_UPLOADS", "name": "List Desktop SDK Uploads", "description": "Tool to get a paginated list of all Desktop SDK uploads in your Recall.ai workspace. Use when you need to retrieve upload history, monitor upload status, or access upload tokens and recording configurations." }, { "slug": "RECALLAI_LIST_SLACK_TEAMS", "name": "List Slack Teams", "description": "Tool to list all Slack team integrations. Use when you need to retrieve configured Slack teams for huddle bot functionality. Returns all Slack workspaces where the bot can join huddles." }, { "slug": "RECALLAI_LIST_TRANSCRIPT", "name": "List transcript", "description": "Tool to list transcripts from Recall.ai recordings. Returns a paginated list of transcripts with their status, content, and metadata. Use when you need to retrieve or filter transcripts by recording, status, or creation time." }, { "slug": "RECALLAI_LIST_VIDEO_MIXED", "name": "List Video Mixed Artifacts", "description": "List video mixed artifacts from recorded meetings. Video mixed artifacts combine all video sources (participants, screen shares, etc.) into a single MP4 file. Use when you need to retrieve processed meeting recordings with combined video output." }, { "slug": "RECALLAI_LIST_VIDEO_SEPARATE", "name": "List video separate", "description": "List video separate artifacts from Recall.ai recordings. Returns a paginated list of artifacts containing individual participant video files separated from recordings. Filter by creation date, recording ID, or processing status. Use cursor for pagination." }, { "slug": "RECALLAI_LIST_ZOOM_MEETINGS_TO_CREDENTIALS", "name": "List zoom meetings to credentials", "description": "Tool to retrieve mappings from Zoom Meeting IDs to Zoom OAuth Credentials. Use when debugging bots that don't automatically record due to missing credentials or when inspecting which credential Recall uses for automatically fetching join tokens for a meeting. Supports filtering by credential, meeting ID, or sync time." }, { "slug": "RECALLAI_LIST_ZOOM_OAUTH_APP_LOGS", "name": "List Zoom OAuth App Logs", "description": "Tool to retrieve Zoom OAuth app logs from Recall.ai. Use when you need to view warnings or errors related to Zoom OAuth apps for debugging purposes. Supports filtering by OAuth app, creation date, and pagination. Rate limit: 60 requests per minute per workspace." }, { "slug": "RECALLAI_LIST_ZOOM_OAUTH_APPS", "name": "List Zoom OAuth Apps", "description": "Tool to retrieve a list of Zoom OAuth apps configured in Recall.ai. Use when you need to view all registered Zoom OAuth applications, check their configuration, or filter by client ID, creation date, or webhook validation. Supports pagination for large result sets." }, { "slug": "RECALLAI_LIST_ZOOM_OAUTH_CREDENTIAL_LOGS", "name": "List Zoom OAuth Credential Logs", "description": "Tool to retrieve all Zoom OAuth Credential logs from Recall.ai. Use when debugging OAuth credential issues or investigating warnings and errors related to Zoom OAuth credentials. Helpful for troubleshooting authentication problems with Zoom bots." }, { "slug": "RECALLAI_LIST_ZOOM_O_AUTH_CREDENTIALS", "name": "List Zoom OAuth Credentials", "description": "Tool to retrieve a list of all Zoom OAuth credentials in your Recall.ai workspace. Use when you need to view Zoom authentication credentials, check their health status, or filter by account ID, user ID, sync status, or OAuth app. Supports pagination for large result sets." }, { "slug": "RECALLAI_REMOVE_BOT_FROM_CALL", "name": "Remove bot from call", "description": "Removes the bot from the meeting call. This action is irreversible and will immediately disconnect the bot. Use this when you need to manually end a bot's participation in a meeting before it would automatically leave. The bot must be in a state where it's joining or in a call (not already completed or failed)." }, { "slug": "RECALLAI_RETRIEVE_BILLING_USAGE", "name": "Retrieve Billing Usage", "description": "Retrieve bot usage statistics for billing purposes. Returns the total amount of bot usage time in seconds for a specified date range. Use this to monitor usage, track billing metrics, or analyze bot activity over time." }, { "slug": "RECALLAI_RETRIEVE_BOT", "name": "Retrieve bot", "description": "Retrieve detailed information about a specific bot instance by its ID. Returns comprehensive bot data including meeting details, recording configuration, status history, recordings, and automatic leave settings. Use this to check bot status, access recordings, or monitor bot lifecycle events." }, { "slug": "RECALLAI_RETRIEVE_CALENDARS", "name": "Retrieve calendars", "description": "Retrieve detailed information about a specific calendar by its UUID. Returns the calendar configuration including OAuth credentials, platform details, status, and webhook settings." }, { "slug": "RECALLAI_RETRIEVE_GOOGLE_LOGIN_GROUP", "name": "Retrieve Google Login Group", "description": "Tool to retrieve an existing Google Login Group by its ID. Use when you need to fetch details about a specific Google login group, including its login credentials, login mode, and associated metadata." }, { "slug": "RECALLAI_RETRIEVE_MEETING_DIRECT_CONNECT", "name": "Retrieve Meeting Direct Connect", "description": "Tool to retrieve detailed information about a Meeting Direct Connect instance by its ID. Use when you need to check the status, configuration, or recordings of a specific Meeting Direct Connect instance." }, { "slug": "RECALLAI_RETRIEVE_RECORDING", "name": "Retrieve recording", "description": "Tool to retrieve detailed information about a specific recording by its UUID. Returns comprehensive recording data including creation timestamps, status, media file shortcuts, and associated bot or desktop SDK upload references. Use when you need to access recording details, download links, or check recording status." }, { "slug": "RECALLAI_RETRIEVE_SDK_UPLOAD", "name": "Retrieve sdk upload", "description": "Retrieve detailed information about a Desktop SDK upload instance by its ID. Returns comprehensive upload data including status, recording configuration, upload token, and metadata. Use this to check upload status or access recording details." }, { "slug": "RECALLAI_RETRIEVE_VIDEO_MIXED", "name": "Retrieve Video Mixed", "description": "Retrieve a video mixed artifact by its ID. Returns details about the mixed video including download URL, format, status, and associated recording information. Use this to access processed mixed video files from recordings." }, { "slug": "RECALLAI_RETRIEVE_ZOOM_OAUTH_APP", "name": "Retrieve Zoom OAuth App", "description": "Retrieve detailed information about a specific Zoom OAuth app by its ID. Returns the OAuth app configuration including client credentials, app type (user-level or account-level), webhook settings, and creation timestamp. Use this to verify OAuth app configuration or retrieve credentials for integration setup." }, { "slug": "RECALLAI_START_RECORDING", "name": "Start recording", "description": "Instructs the bot to start recording the meeting. This will restart the current recording if one is already in progress." }, { "slug": "RECALLAI_STOP_RECORDING", "name": "Stop recording", "description": "Stops the current recording for the specified bot. This creates a new recording entry in the bot's recordings field. Important: The bot must be actively recording for this action to succeed. If the bot is not in a call or not currently recording, the API will return a 400 error. Use the RECALLAI_RETRIEVE_BOT action to check the bot's status before attempting to stop recording. Note: For pausing and resuming a single continuous recording, use the pause/resume recording endpoints instead. Stop recording will create separate recording entries." }, { "slug": "RECALLAI_UPDATE_BOT", "name": "Update Bot", "description": "Tool to partially update a scheduled bot. Use when you need to modify bot settings like bot_name, metadata, or configuration options for a scheduled bot that has not yet completed. Only provide fields you want to update." }, { "slug": "RECALLAI_UPDATE_CALENDAR", "name": "Update Calendar", "description": "Update an existing calendar integration in Recall.ai. Use this to modify calendar metadata, OAuth credentials, webhook URLs, or platform settings. Only include fields you want to update; omitted fields remain unchanged." }, { "slug": "RECALLAI_UPDATE_CALENDAR_USER", "name": "Update Calendar User", "description": "Update recording preferences and calendar connections for a calendar user. Use this to configure which meetings should be automatically recorded based on meeting type (internal/external, recurring, host status) and to manage calendar platform connections (Google, Microsoft)." }, { "slug": "RECALLAI_UPDATE_GOOGLE_LOGIN", "name": "Update Google Login", "description": "Tool to update an existing Google Login credential. Use when you need to modify authentication details like email, certificates, private keys, or SSO workspace domain for an existing Google login that bots use to join Google Meet meetings." }, { "slug": "RECALLAI_UPDATE_GOOGLE_LOGIN_GROUP", "name": "Update Google Login Group", "description": "Tool to update an existing Google Login Group in Recall.ai. Use when you need to modify the name, login mode, or login credentials for a Google login group that bots use to authenticate with Google Meet." }, { "slug": "RECALLAI_UPDATE_GOOGLE_LOGIN_GROUPS", "name": "Partial Update Google Login Group", "description": "Tool to partially update an existing Google Login Group in Recall.ai. Use when you need to modify the name or login mode of a Google login group without replacing all fields. This performs a PATCH operation that only updates the fields you provide." }, { "slug": "RECALLAI_UPDATE_RECORDING", "name": "Update Recording", "description": "Tool to update a recording's metadata. Use when you need to update custom metadata fields on an existing recording without modifying other recording properties." }, { "slug": "RECALLAI_UPDATE_VIDEO_MIXED", "name": "Update Video Mixed", "description": "Tool to partially update a video mixed artifact by ID. Use when you need to update metadata or other properties of an existing video mixed artifact without replacing the entire resource. This is commonly used to attach custom metadata to video recordings." }, { "slug": "RECALLAI_UPDATE_ZOOM_O_AUTH_APP", "name": "Update Zoom OAuth App", "description": "Tool to update an existing Zoom OAuth App's credentials. Use when you need to update the client secret or webhook secret for a Zoom OAuth app without changing other properties." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "recallai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Recall AI base URL (e.g., https://us-west-2.recall.ai, https://us-east-1.recall.ai, https://eu-west-1.recall.ai). Find this in your Recall AI dashboard.", "required": true, "default": "https://api.recall.ai" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Recall AI API key for authentication. Obtain it from your Recall AI dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apaleo", "name": "Apaleo", "logo": "https://logos.composio.dev/api/apaleo", "description": "Apaleo is a cloud-based property management platform handling reservations, billing, and daily operations for hospitality businesses", "category": "scheduling & booking", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APALEO_ARCHIVE_A_PROPERTY", "name": "Archive a property", "description": "Use this endpoint to archive an existing live property This operation set the IsArchived flag to true
You must have at least one of these scopes: 'properties.manage, setup.manage'." }, { "slug": "APALEO_CHECK_IF_A_PROPERTY_EXISTS", "name": "Check if a property exists", "description": "Check if a property exists by id.
You need to be authorized (no particular scope required)" }, { "slug": "APALEO_CHECK_IF_A_UNIT_ATTRIBUTE_EXISTS", "name": "Check if a unit attribute exists", "description": "Check if a unit attribute exists
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'." }, { "slug": "APALEO_CHECK_IF_A_UNIT_EXISTS", "name": "Check if a unit exists", "description": "Check if a unit exists by id.
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'." }, { "slug": "APALEO_CHECK_IF_A_UNIT_GROUP_EXISTS", "name": "Check if a unit group exists", "description": "Check if a unit group exists by id.
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'." }, { "slug": "APALEO_CLONES_A_PROPERTY", "name": "Clones a property", "description": "Use this call to clone a specific property. This operation creates a new property with inventory and rate plans from the specified property.
You must have at least one of these scopes: 'properties.create, setup.manage'." }, { "slug": "APALEO_CREATE_A_UNIT", "name": "Create a unit", "description": "Use this call to create a new unit.
You must have at least one of these scopes: 'units.create, setup.manage'." }, { "slug": "APALEO_CREATE_A_UNIT_ATTRIBUTE", "name": "Create a unit attribute", "description": "Use this call to create a new unit attribute.
You must have at least one of these scopes: 'unitattributes.create, setup.manage'." }, { "slug": "APALEO_CREATE_A_UNIT_GROUP", "name": "Create a unit group", "description": "Use this call to create a new unit group.
You must have at least one of these scopes: 'unitgroups.create, setup.manage'." }, { "slug": "APALEO_CREATE_MULTIPLE_UNITS", "name": "Create multiple units", "description": "Use this call to create multiple units, following a naming rule.
You must have at least one of these scopes: 'units.create, setup.manage'." }, { "slug": "APALEO_CREATES_A_PROPERTY", "name": "Creates a property", "description": "Use this call to create a new property.
You must have at least one of these scopes: 'properties.create, setup.manage'." }, { "slug": "APALEO_DELETE_A_UNIT", "name": "Delete a unit", "description": "Use this call to delete a unit.
You must have at least one of these scopes: 'units.delete, setup.manage'." }, { "slug": "APALEO_DELETE_A_UNIT_GROUP", "name": "Delete a unit group", "description": "Use this call to delete a unit group.
You must have at least one of these scopes: 'unitgroups.delete, setup.manage'." }, { "slug": "APALEO_DELETES_UNIT_ATTRIBUTE", "name": "Deletes unit attribute", "description": "Deletes unit attribute
You must have at least one of these scopes: 'unitattributes.delete, setup.manage'." }, { "slug": "APALEO_GET_A_PROPERTIES_LIST", "name": "Get a properties list", "description": "Get the list of properties.
You need to be authorized (no particular scope required)" }, { "slug": "APALEO_GET_A_PROPERTY", "name": "Get a property", "description": "Get a property by id.
You need to be authorized (no particular scope required)" }, { "slug": "APALEO_GET_A_UNIT", "name": "Get a unit", "description": "Get a unit by id.
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'." }, { "slug": "APALEO_GET_A_UNIT_GROUP", "name": "Get a unit group", "description": "Get a unit group by id.
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'." }, { "slug": "APALEO_GET_A_UNITS_LIST", "name": "Get a units list", "description": "Get the list of units.
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'." }, { "slug": "APALEO_GET_UNIT_ATTRIBUTE_BY_ID", "name": "Get unit attribute by id", "description": "Get unit attribute by id
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'." }, { "slug": "APALEO_GET_UNIT_ATTRIBUTE_LIST", "name": "Get unit attribute list", "description": "Get unit attribute list
You must have at least one of these scopes: 'unitattributes.read, setup.read, setup.manage'." }, { "slug": "APALEO_LIST_UNIT_GROUPS", "name": "List Unit Groups", "description": "Get the list of unit groups.
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'." }, { "slug": "APALEO_MOVE_PROPERTY_TO_LIVE", "name": "Move property to live", "description": "Use this endpoint to move an existing test property to live This operation changes the property status to 'Live'
You must have at least one of these scopes: 'properties.manage, setup.manage'." }, { "slug": "APALEO_REPLACE_A_UNIT_GROUP", "name": "Replace a unit group", "description": "Use this call to modify a unit group.
You must have at least one of these scopes: 'unitgroups.manage, setup.manage'." }, { "slug": "APALEO_RESET_PROPERTY_DATA", "name": "Reset Property Data", "description": "This endpoint deletes transactional data for a property in 'Test' status. Requires 'properties.manage' or 'setup.manage' scopes." }, { "slug": "APALEO_RETURNS_A_LIST_OF_SUPPORTED_COUNTRIES", "name": "Returns a list of supported countries", "description": "Returns a list of ISO country codes that could be used to create properties.
You need to be authorized (no particular scope required)" }, { "slug": "APALEO_RETURNS_NUMBER_OF_UNIT_GROUPS", "name": "Returns number of unit groups", "description": "Returns number of unit groups matching the filter criteria
You must have at least one of these scopes: 'unitgroups.read, setup.read, setup.manage'." }, { "slug": "APALEO_RETURNS_NUMBER_OF_UNITS", "name": "Returns number of units", "description": "Returns number of units matching the filter criteria
You must have at least one of these scopes: 'units.read, setup.read, setup.manage'." }, { "slug": "APALEO_RETURN_TOTAL_COUNT_OF_PROPERTIES", "name": "Return total count of properties", "description": "Return total count of properties
You need to be authorized (no particular scope required)" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "apaleo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "offline_access,account.manage,account.suspend,accounting.read,authorizations.manage,authorizations.read,availability.manage,availability.read,charges.delete,companies.manage,companies.read,depositItems.manage,deposits.manage,deposits.read,folios.manage,folios.payment-with-charges,folios.read,invoices.manage,invoices.read,logs.read,maintenances.manage,maintenances.read,offer-index.read,offers.read,operations.change-room-state,operations.trigger-night-audit,payment-accounts.manage,payment-accounts.read,payments.manage,payments.read,prepayment-notices.read,rateplans.read-corporate,rateplans.read-negotiated,rates.manage,rates.read,reports.read,reservations.force-manage,reservations.manage,reservations.read,routings.create,routings.manage,routings.read,servicegroups.create,servicegroups.manage,servicegroups.read,setup.manage,setup.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "survey_monkey", "name": "SurveyMonkey", "logo": "https://logos.composio.dev/api/survey_monkey", "description": "SurveyMonkey is an online survey development platform that enables users to create, distribute, and analyze surveys for various purposes.", "category": "forms & surveys", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SURVEY_MONKEY_CREATE_BULK_CONTACTS", "name": "Create Bulk Contacts", "description": "Creates multiple contacts in SurveyMonkey in a single API call. Use this action to efficiently add multiple contacts at once, optionally updating existing ones. Each contact requires first_name, last_name, and either email or phone_number. The response indicates which contacts succeeded, which were invalid, and which already existed. Requires 'contacts_write' OAuth scope." }, { "slug": "SURVEY_MONKEY_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in SurveyMonkey. Contacts can be added to contact lists and used for email invitations. Use this action when you need to add a new contact to your SurveyMonkey account for survey distribution." }, { "slug": "SURVEY_MONKEY_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Creates a new contact list in SurveyMonkey. Contact lists are used to organize contacts for sending survey invitations via email or SMS collectors. Use this action when you need to create a contact list before adding contacts and sending surveys. Returns the contact list ID and API URL for managing the list." }, { "slug": "SURVEY_MONKEY_CREATE_SURVEY", "name": "Create Survey", "description": "Creates a new empty survey in SurveyMonkey with one empty page and no questions. Returns the survey ID and internal URLs for editing, previewing, and analyzing results — shareable collector URLs are not returned; use SURVEY_MONKEY_GET_COLLECTORS after creation to retrieve or manage those. The survey_id can be used with other actions to add questions, pages, or collectors. Finalize survey design before broad distribution, as modifying questions after distributing live links can invalidate prior responses. Example: \"Create a survey titled 'Customer Satisfaction Survey'\"" }, { "slug": "SURVEY_MONKEY_CREATE_SURVEY_FOLDER", "name": "Create Survey Folder", "description": "Creates a new survey folder in SurveyMonkey to organize surveys. Use when you need to create a folder for grouping related surveys." }, { "slug": "SURVEY_MONKEY_DELETE_SURVEY", "name": "Delete Survey", "description": "Tool to delete a specific survey. Use when the survey ID is confirmed correct. Deletion is irreversible. Example prompt: \"Delete survey '123456789'.\"" }, { "slug": "SURVEY_MONKEY_GET_BULK_CONTACTS", "name": "Bulk Get Contacts", "description": "Tool to retrieve contacts in bulk from SurveyMonkey. Use when you need to fetch multiple contacts efficiently with pagination support." }, { "slug": "SURVEY_MONKEY_GET_COLLECTORS", "name": "Get Survey Collectors", "description": "Tool to retrieve a list of collectors for a specific survey. Use when you need collector URLs, counts, and statuses. Survey creation does not return shareable links; use this tool to obtain collector URLs after creating a survey." }, { "slug": "SURVEY_MONKEY_GET_CONTACTS", "name": "Get Contacts", "description": "Retrieves a list of contacts from SurveyMonkey. Use this tool to fetch contacts that can be used for sending survey invitations. Contacts can be filtered by status (active, optout, bounced), searched by email or name, sorted by various fields, and paginated through using page/per_page parameters. Returns contact details including ID, email, names, phone numbers, and custom fields. Requires 'contacts_read' or 'contacts_write' OAuth scope." }, { "slug": "SURVEY_MONKEY_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the current authenticated user's account details including plan information. Use when you need to get information about the authenticated user's SurveyMonkey account." }, { "slug": "SURVEY_MONKEY_GET_GROUPS", "name": "Get Groups", "description": "Tool to retrieve a list of groups. Use after authentication when you need to enumerate or paginate through all groups in your SurveyMonkey account." }, { "slug": "SURVEY_MONKEY_GET_RESPONSES", "name": "Get Survey Responses", "description": "Tool to retrieve a paginated list of responses for a specific survey. Use when you need to browse or filter responses after confirming the survey ID. Iterate through all pages using `page` and `per_page` to avoid missing responses in large surveys." }, { "slug": "SURVEY_MONKEY_GET_SURVEY_DETAILS", "name": "Get Survey Details", "description": "Retrieves comprehensive details and metadata for a specific survey by its ID. Returns survey configuration including title, language, question/page counts, response count, URLs for preview/edit/analyze/collect, navigation button text, and creation/modification timestamps. Use this to get detailed information about a survey after obtaining its ID from Get Surveys." }, { "slug": "SURVEY_MONKEY_GET_SURVEY_DETAILS2", "name": "Get Survey Details (Expanded)", "description": "Retrieves expanded survey details including all pages, questions, and answer options. Use when you need the complete survey structure with question IDs and answer option IDs for mapping responses." }, { "slug": "SURVEY_MONKEY_GET_SURVEY_RESPONSES_BULK", "name": "Get Survey Responses (Bulk)", "description": "Tool to retrieve bulk survey responses with full question answers and response data. Use when you need to export or analyze detailed response data for a survey." }, { "slug": "SURVEY_MONKEY_GET_SURVEYS", "name": "Get Surveys", "description": "Tool to retrieve a paginated list of surveys. Use when you need to enumerate or paginate through all surveys. Results are capped at 100 per page (`per_page` max=100); iterate over all pages using `page` to avoid missing surveys on large accounts." }, { "slug": "SURVEY_MONKEY_GET_SURVEY_TRENDS", "name": "Get Survey Trends", "description": "Tool to retrieve trend data for a survey showing answer counts for particular time periods. Use when you need to analyze response trends over time for survey questions. Not available for file_upload, slider, presentation, demographic, matrix_menu, or datetime question types." }, { "slug": "SURVEY_MONKEY_LIST_AVAILABLE_LANGUAGES", "name": "List Available Languages", "description": "Tool to retrieve all available languages for creating multilingual surveys. Use when you need to get language codes and names for survey creation or translation." }, { "slug": "SURVEY_MONKEY_LIST_BENCHMARK_BUNDLES", "name": "List Benchmark Bundles", "description": "Tool to retrieve a list of benchmark bundles. Use when you need to enumerate available benchmark bundles for benchmarking survey results." }, { "slug": "SURVEY_MONKEY_LIST_CONTACT_FIELDS", "name": "List Contact Fields", "description": "Tool to retrieve a list of contact fields from SurveyMonkey. Use when you need to enumerate available contact fields that can be used for contact management and data collection." }, { "slug": "SURVEY_MONKEY_LIST_CONTACT_LISTS", "name": "List Contact Lists", "description": "Tool to retrieve a list of contact lists from SurveyMonkey. Use this when you need to enumerate all contact lists in your account or find a specific list by name. Contact lists are collections of contacts that can be used for sending survey invitations." }, { "slug": "SURVEY_MONKEY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a list of webhooks from SurveyMonkey. Use when you need to view all configured webhooks or find a specific webhook by name." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "surveymonkey_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "surveys_read,surveys_write" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for SurveyMonkey API. US: https://api.surveymonkey.com, EU: https://api.eu.surveymonkey.com, Canada: https://api.surveymonkey.ca", "required": true, "default": "https://api.surveymonkey.com" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "surveymonkey_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for SurveyMonkey API. US: https://api.surveymonkey.com, EU: https://api.eu.surveymonkey.com, Canada: https://api.surveymonkey.ca", "required": true, "default": "https://api.surveymonkey.com" }, { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "The access token obtained through the OAuth 2.0 flow, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoho_books", "name": "Zoho Books", "logo": "https://logos.composio.dev/api/zoho_books", "description": "Zoho Books handles accounting, invoicing, and expense tracking, offering real-time collaboration and integrations within the Zoho ecosystem", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 265, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_BOOKS_ACCEPT_ESTIMATE", "name": "Accept Estimate", "description": "Tool to mark an estimate as accepted. Use after reviewing and confirming the estimate." }, { "slug": "ZOHO_BOOKS_ACTIVATE_BANK_ACCOUNT", "name": "Activate Bank Account", "description": "Tool to activate a bank account. Use when you need to reactivate a previously deactivated bank account after confirming its ID." }, { "slug": "ZOHO_BOOKS_ADD_BILL_ATTACHMENT", "name": "Add Bill Attachment", "description": "Tool to add an attachment to an existing bill in Zoho Books. Use when you need to attach a file to a bill." }, { "slug": "ZOHO_BOOKS_ADD_BILL_COMMENT", "name": "Add Bill Comment", "description": "Tool to add a comment to a bill in Zoho Books. Use when you need to add notes or comments to an existing bill for tracking or collaboration purposes." }, { "slug": "ZOHO_BOOKS_ADD_CONTACT_ADDRESS", "name": "Add Contact Address", "description": "Tool to add an additional address to a contact in Zoho Books. Use when you need to add a new shipping, billing, or other address to an existing contact." }, { "slug": "ZOHO_BOOKS_ADD_INVOICE_COMMENT", "name": "Add Invoice Comment", "description": "Tool to add a comment to an invoice. Use when you need to attach notes or comments to an existing invoice." }, { "slug": "ZOHO_BOOKS_ADD_PROJECT_COMMENT", "name": "Add Project Comment", "description": "Tool to add a comment to a project. Use when you need to attach notes or comments to an existing project for tracking or collaboration purposes." }, { "slug": "ZOHO_BOOKS_ADD_PURCHASE_ORDER_COMMENT", "name": "Add Purchase Order Comment", "description": "Tool to add a comment to a purchase order in Zoho Books. Use when you need to add notes or comments to an existing purchase order for tracking or collaboration purposes." }, { "slug": "ZOHO_BOOKS_ADD_SALES_ORDER_COMMENT", "name": "Add Sales Order Comment", "description": "Tool to add a comment to a sales order in Zoho Books. Use when you need to add notes or comments to an existing sales order for tracking or collaboration purposes." }, { "slug": "ZOHO_BOOKS_ADD_VENDOR_CREDIT_COMMENT", "name": "Add Vendor Credit Comment", "description": "Tool to add a comment to a vendor credit. Use when you need to attach notes or comments to an existing vendor credit for tracking or collaboration purposes." }, { "slug": "ZOHO_BOOKS_APPLY_CREDIT_NOTE_TO_INVOICE", "name": "Apply Credit Note to Invoice", "description": "Tool to apply a credit note to one or more invoices in Zoho Books. Use when you need to apply available credit from a credit note to reduce the outstanding balance of invoices." }, { "slug": "ZOHO_BOOKS_APPLY_CREDITS_TO_BILL", "name": "Apply Credits to Bill", "description": "Tool to apply vendor credits to a bill in Zoho Books. Use when you need to apply one or more vendor credits to reduce the outstanding balance of a bill." }, { "slug": "ZOHO_BOOKS_APPLY_CREDITS_TO_INVOICE", "name": "Apply Credits to Invoice", "description": "Tool to apply credit notes to an invoice in Zoho Books. Use when you need to apply one or more credit notes to reduce the outstanding balance of an invoice." }, { "slug": "ZOHO_BOOKS_BULK_EXPORT_INVOICES_PDF", "name": "Bulk Export Invoices PDF", "description": "Tool to export multiple invoices to a single PDF. Use when you have up to 25 invoice IDs ready to merge." }, { "slug": "ZOHO_BOOKS_BULK_PRINT_INVOICES", "name": "Bulk Print Invoices", "description": "Tool to bulk print up to 25 invoices as a single PDF. Use when you have multiple invoice IDs and need a combined PDF for printing." }, { "slug": "ZOHO_BOOKS_CATEGORIZE_AS_CUSTOMER_PAYMENT_REFUND", "name": "Categorize As Customer Payment Refund", "description": "Tool to categorize an uncategorized bank transaction as a customer payment refund. Use when you need to link a bank withdrawal to a refund issued to a customer." }, { "slug": "ZOHO_BOOKS_CATEGORIZE_UNCATEGORIZED_TRANSACTION", "name": "Categorize Uncategorized Transaction", "description": "Tool to categorize an uncategorized bank transaction. Use after fetching an uncategorized entry to assign proper type and details." }, { "slug": "ZOHO_BOOKS_CLONE_PROJECT", "name": "Clone Project", "description": "Tool to clone an existing project. Use when duplicating a project with a new name and optional description." }, { "slug": "ZOHO_BOOKS_CONVERT_PURCHASE_ORDER_TO_BILL", "name": "Convert Purchase Order To Bill", "description": "Tool to retrieve bill data from purchase orders for conversion. Use when you need to convert one or more purchase orders into a bill." }, { "slug": "ZOHO_BOOKS_CREATE_BANK_ACCOUNT", "name": "Create Bank Account", "description": "Tool to create a bank or credit card account. Use when you need to add a new bank or credit card account to your Zoho Books organization." }, { "slug": "ZOHO_BOOKS_CREATE_BANK_TRANSACTION", "name": "Create Bank Transaction", "description": "Tool to create a manual bank transaction. Use when you need to record a non-invoice bank movement in Zoho Books after obtaining valid account IDs. All IDs (from_account_id, to_account_id, customer_id) must belong to the same organization as organization_id." }, { "slug": "ZOHO_BOOKS_CREATE_CHART_OF_ACCOUNT", "name": "Create Chart Of Account", "description": "Tool to create a new chart of account in Zoho Books. Use when you need to add a new account with account type, code, and other details to the organization's chart of accounts." }, { "slug": "ZOHO_BOOKS_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Zoho Books. Use when adding a customer or vendor after gathering details." }, { "slug": "ZOHO_BOOKS_CREATE_CONTACT_PERSON", "name": "Create Contact Person", "description": "Tool to create a new contact person for an existing contact in Zoho Books. Use when adding an individual to a contact record." }, { "slug": "ZOHO_BOOKS_CREATE_CURRENCY", "name": "Create Currency", "description": "Tool to create a new currency for an organization. Use when you need to add a new currency to Zoho Books." }, { "slug": "ZOHO_BOOKS_CREATE_CUSTOMER_PAYMENT_REFUND", "name": "Create Customer Payment Refund", "description": "Tool to refund an excess customer payment. Use when a customer has overpaid and needs to receive a refund." }, { "slug": "ZOHO_BOOKS_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Tool to create a new employee in Zoho Books. Use when adding an employee to track expenses and time entries." }, { "slug": "ZOHO_BOOKS_CREATE_EXCHANGE_RATE", "name": "Create Exchange Rate", "description": "Tool to create a new exchange rate for a currency. Use after confirming currency_id and organization_id." }, { "slug": "ZOHO_BOOKS_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new expense in Zoho Books. Use when you need to record business expenses." }, { "slug": "ZOHO_BOOKS_CREATE_INVOICE_FROM_SALESORDER", "name": "Create Invoice From Sales Order", "description": "Tool to create an instant invoice from an existing sales order. Use when you need to convert a sales order to an invoice." }, { "slug": "ZOHO_BOOKS_CREATE_ITEM", "name": "Create Item", "description": "Tool to create a new item (product or service). Use when you need to add new items with pricing and inventory details. Item names must be unique within an organization. If an item with the same name already exists, the API returns code=1001 with message indicating the duplicate. Check the response code to handle this scenario - use LIST_ITEMS to verify if an item exists before creating, or handle code=1001 responses to retrieve/update the existing item instead." }, { "slug": "ZOHO_BOOKS_CREATE_JOURNAL", "name": "Create Journal", "description": "Tool to create a journal entry in Zoho Books. Use when recording manual journal entries with debit and credit line items." }, { "slug": "ZOHO_BOOKS_CREATE_LOCATION", "name": "Create Location", "description": "Tool to create a new location in Zoho Books. Use when you need to add a new physical or virtual location for inventory management or business operations." }, { "slug": "ZOHO_BOOKS_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a project in Zoho Books. Use when you need to create a new project for tracking work and billing." }, { "slug": "ZOHO_BOOKS_CREATE_RECURRING_BILL", "name": "Create Recurring Bill", "description": "Tool to create a recurring bill in Zoho Books. Use when you need to set up automated vendor bills that recur at regular intervals (daily, weekly, monthly, or yearly)." }, { "slug": "ZOHO_BOOKS_CREATE_RECURRING_EXPENSE", "name": "Create Recurring Expense", "description": "Tool to create a new recurring expense in Zoho Books. Use when you need to set up automated recurring expenses." }, { "slug": "ZOHO_BOOKS_CREATE_RECURRING_INVOICE", "name": "Create Recurring Invoice", "description": "Tool to create a recurring invoice. Use when you need to set up automatic invoice generation on a regular schedule." }, { "slug": "ZOHO_BOOKS_CREATE_REPORTING_TAG", "name": "Create Reporting Tag", "description": "Tool to create a new reporting tag in Zoho Books. Use when you need to create custom tags for categorizing transactions, customers, or other entities for reporting purposes." }, { "slug": "ZOHO_BOOKS_CREATE_RULE", "name": "Create Bank Account Rule", "description": "Tool to create a rule for automatic transaction categorization. Use when you need to set up automatic categorization for deposits/withdrawals (bank accounts) or refunds/charges (credit card accounts) based on transaction criteria like amount, description, or payee." }, { "slug": "ZOHO_BOOKS_CREATE_SALES_RECEIPT", "name": "Create Sales Receipt", "description": "Tool to create a sales receipt in Zoho Books. Use when you need to record a payment received from a customer along with line items for goods or services sold." }, { "slug": "ZOHO_BOOKS_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry for a project task. Use when you need to log time spent by a user on a specific task." }, { "slug": "ZOHO_BOOKS_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in Zoho Books. Use when inviting a team member to your organization." }, { "slug": "ZOHO_BOOKS_CREATE_VENDOR_CREDIT", "name": "Create Vendor Credit", "description": "Tool to create a vendor credit in Zoho Books. Use when you need to record a credit from a vendor." }, { "slug": "ZOHO_BOOKS_CREATE_VENDOR_PAYMENT", "name": "Create Vendor Payment", "description": "Tool to create a vendor payment in Zoho Books. Use when you need to record a payment made to a vendor, either for specific bills or as a general payment." }, { "slug": "ZOHO_BOOKS_DEACTIVATE_BANK_ACCOUNT", "name": "Deactivate Bank Account", "description": "Tool to deactivate a bank account. Use when you need to mark an existing bank account as inactive after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_BANK_ACCOUNT", "name": "Delete Bank Account", "description": "Tool to delete a bank account from your organization. Use when you need to remove an existing bank account after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_BANK_TRANSACTION", "name": "Delete Bank Transaction", "description": "Tool to delete a specific bank transaction. Use when you need to remove an existing transaction after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_BILL", "name": "Delete Bill", "description": "Tool to delete a specific bill. Use when you need to remove an existing bill after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_BILL_ATTACHMENT", "name": "Delete Bill Attachment", "description": "Tool to delete an attachment from a specific bill. Use when you need to remove an attached document from an existing bill." }, { "slug": "ZOHO_BOOKS_DELETE_BILL_COMMENT", "name": "Delete Bill Comment", "description": "Tool to delete a comment from a bill. Use when you need to remove a specific comment after confirming both the bill ID and comment ID." }, { "slug": "ZOHO_BOOKS_DELETE_BILL_PAYMENT", "name": "Delete Bill Payment", "description": "Tool to delete a specific bill payment. Use when you need to remove a payment record from a bill after confirming both the bill ID and payment ID." }, { "slug": "ZOHO_BOOKS_DELETE_BULK_CUSTOMER_PAYMENTS", "name": "Delete Bulk Customer Payments", "description": "Tool to bulk delete multiple customer payments. Use when you need to remove multiple customer payment records at once." }, { "slug": "ZOHO_BOOKS_DELETE_BULK_VENDOR_PAYMENTS", "name": "Delete Bulk Vendor Payments", "description": "Tool to bulk delete multiple vendor payments. Use when you need to remove multiple vendor payment records at once." }, { "slug": "ZOHO_BOOKS_DELETE_CHART_OF_ACCOUNT", "name": "Delete Chart of Account", "description": "Tool to delete a specific chart of account. Use when you need to remove an existing account after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_CHART_OF_ACCOUNT_TRANSACTION", "name": "Delete Chart Of Account Transaction", "description": "Tool to delete a chart of account transaction. Use when you need to remove an existing transaction after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a specific contact. Use when you need to remove an existing contact after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_CONTACT_ADDRESS", "name": "Delete Contact Address", "description": "Tool to delete an additional address from a contact. Use when you need to remove a specific address entry from a contact's address list." }, { "slug": "ZOHO_BOOKS_DELETE_CONTACT_PERSON", "name": "Delete Contact Person", "description": "Tool to delete a specific contact person. Use when you need to remove a contact person from a contact after confirming their ID." }, { "slug": "ZOHO_BOOKS_DELETE_CREDIT_NOTE", "name": "Delete Credit Note", "description": "Tool to delete a specific credit note. Use when you need to remove an existing credit note after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_CREDIT_NOTE_COMMENT", "name": "Delete Credit Note Comment", "description": "Tool to delete a comment from a credit note. Use when you need to remove a specific comment from a credit note after confirming both IDs." }, { "slug": "ZOHO_BOOKS_DELETE_CREDIT_NOTE_REFUND", "name": "Delete Credit Note Refund", "description": "Tool to delete a specific credit note refund. Use when you need to remove a refund entry from a credit note." }, { "slug": "ZOHO_BOOKS_DELETE_CURRENCY", "name": "Delete Currency", "description": "Tool to delete a specific currency from organization settings. Use when you need to remove an unused currency after confirming it has no associated transactions." }, { "slug": "ZOHO_BOOKS_DELETE_CUSTOMER_PAYMENT", "name": "Delete Customer Payment", "description": "Tool to delete a customer payment. Use when you need to remove an existing payment record after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_CUSTOMER_PAYMENT_REFUND", "name": "Delete Customer Payment Refund", "description": "Tool to delete a specific customer payment refund. Use when you need to remove an existing refund after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_EMPLOYEE", "name": "Delete Employee", "description": "Tool to delete a specific employee. Use when you need to remove an existing employee after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_ESTIMATE", "name": "Delete Estimate", "description": "Tool to delete a specific estimate. Use when you need to remove an existing estimate after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_EXCHANGE_RATE", "name": "Delete Exchange Rate", "description": "Tool to delete an exchange rate for a currency. Use when you need to remove an existing exchange rate after confirming the currency_id and exchange_rate_id." }, { "slug": "ZOHO_BOOKS_DELETE_EXPENSE", "name": "Delete Expense", "description": "Tool to delete a specific expense. Use when you need to remove an existing expense after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_EXPENSE_RECEIPT", "name": "Delete Expense Receipt", "description": "Tool to delete a receipt from an expense. Use when you need to remove an attached receipt from an existing expense after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete a specific invoice. Use when you need to remove an existing invoice after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_INVOICE_ATTACHMENT", "name": "Delete Invoice Attachment", "description": "Tool to delete the last attached attachment from an invoice. Use when you need to remove the most recently attached file from a specific invoice." }, { "slug": "ZOHO_BOOKS_DELETE_INVOICE_COMMENT", "name": "Delete Invoice Comment", "description": "Tool to delete a comment from an invoice. Use when you need to remove a specific comment from an invoice." }, { "slug": "ZOHO_BOOKS_DELETE_INVOICE_DOCUMENT", "name": "Delete Invoice Document", "description": "Tool to delete a document/attachment from a specific invoice. Use when you need to remove an invoice attachment after confirming it is no longer needed." }, { "slug": "ZOHO_BOOKS_DELETE_INVOICE_PAYMENT", "name": "Delete Invoice Payment", "description": "Tool to delete a payment applied to an invoice. Use when you need to remove a payment record from a specific invoice." }, { "slug": "ZOHO_BOOKS_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete a specific item. Use when you need to remove an unused item after confirming it has no linked transactions." }, { "slug": "ZOHO_BOOKS_DELETE_JOURNAL_COMMENT_V4", "name": "Delete Journal Comment V4", "description": "Tool to delete a journal comment using Zoho Books API v4 (Beta). Use when you need to remove an existing comment from a journal after confirming both the journal ID and comment ID." }, { "slug": "ZOHO_BOOKS_DELETE_JOURNAL_DOCUMENT", "name": "Delete Journal Document", "description": "Tool to delete a document/attachment from a journal entry. Use when you need to remove an existing attachment from a journal." }, { "slug": "ZOHO_BOOKS_DELETE_JOURNALS", "name": "Delete Journals", "description": "Tool to delete multiple journal entries in one request. Use when you need to remove multiple journals after confirming their IDs." }, { "slug": "ZOHO_BOOKS_DELETE_JOURNAL_V4", "name": "Delete Journal (v4 Beta)", "description": "Tool to delete a journal using the v4 Beta API. Use when you need to remove an existing journal after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_LOCATION", "name": "Delete Location", "description": "Tool to delete a specific location. Use when you need to remove a location from the organization." }, { "slug": "ZOHO_BOOKS_DELETE_PROJECT_COMMENT_V4", "name": "Delete Project Comment (v4 Beta)", "description": "Tool to delete a project comment using v4 Beta API. Use when you need to remove an existing comment from a project after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_PROJECT_TASK", "name": "Delete Project Task", "description": "Tool to delete a project task. Use when you need to remove a task from a project after confirming both project ID and task ID." }, { "slug": "ZOHO_BOOKS_DELETE_PROJECT_V4", "name": "Delete Project V4", "description": "Tool to delete a specific project using v4 Beta API. Use when you need to remove an existing project after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_PURCHASE_ORDER", "name": "Delete Purchase Order", "description": "Tool to delete a specific purchase order. Use when you need to remove an existing purchase order after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_PURCHASE_ORDER_ATTACHMENT", "name": "Delete Purchase Order Attachment", "description": "Tool to delete an attachment from a purchase order. Use when you need to remove a file attached to a purchase order after confirming the purchase order ID." }, { "slug": "ZOHO_BOOKS_DELETE_PURCHASE_ORDER_COMMENT", "name": "Delete Purchase Order Comment", "description": "Tool to delete a comment from a purchase order. Use when you need to remove an existing comment after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_RECURRING_BILL", "name": "Delete Recurring Bill", "description": "Tool to delete a recurring bill. Use when you need to remove an existing recurring bill after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_RECURRING_INVOICE", "name": "Delete Recurring Invoice", "description": "Tool to delete a recurring invoice. Use when you need to remove an existing recurring invoice after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_RULE", "name": "Delete Bank Account Rule", "description": "Tool to delete a bank account rule from your account. Use when you need to remove a rule and make it no longer applicable on transactions." }, { "slug": "ZOHO_BOOKS_DELETE_SALES_ORDER_COMMENT", "name": "Delete Sales Order Comment", "description": "Tool to delete a comment from a sales order. Use when you need to remove a specific comment from a sales order." }, { "slug": "ZOHO_BOOKS_DELETE_SALES_RECEIPT", "name": "Delete Sales Receipt", "description": "Tool to delete a specific sales receipt. Use when you need to remove an existing sales receipt after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to delete a specific time entry from a project. Use when you need to remove an existing time entry after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_VENDOR_CREDIT", "name": "Delete Vendor Credit", "description": "Tool to delete a specific vendor credit. Use when you need to remove an existing vendor credit after confirming its ID." }, { "slug": "ZOHO_BOOKS_DELETE_VENDOR_CREDIT_REFUND", "name": "Delete Vendor Credit Refund", "description": "Tool to delete a vendor credit refund. Use when you need to remove a refund associated with a vendor credit." }, { "slug": "ZOHO_BOOKS_DELETE_VENDOR_PAYMENT", "name": "Delete Vendor Payment", "description": "Tool to delete a vendor payment. Use when you need to remove an existing vendor payment record after confirming its ID." }, { "slug": "ZOHO_BOOKS_DISABLE_CONTACT_PAYMENT_REMINDER", "name": "Disable Contact Payment Reminder", "description": "Tool to disable payment reminders for a contact. Use when you need to stop all automated payment reminder emails for a specific contact." }, { "slug": "ZOHO_BOOKS_DISABLE_INVOICE_PAYMENT_REMINDER", "name": "Disable Invoice Payment Reminder", "description": "Tool to disable payment reminders for an invoice. Use when you need to stop automatic payment reminder emails for a specific invoice." }, { "slug": "ZOHO_BOOKS_EMAIL_CONTACT_STATEMENT", "name": "Email Contact Statement", "description": "Tool to email a statement to a contact. Use when you need to send account statements to customers or vendors for a specific period." }, { "slug": "ZOHO_BOOKS_EMAIL_ESTIMATE", "name": "Email Estimate", "description": "Tool to send an estimate email. Use after estimate creation to share it with the customer." }, { "slug": "ZOHO_BOOKS_EMAIL_INVOICE", "name": "Email Invoice", "description": "Tool to send an invoice email. Use after invoice creation to share it with the customer." }, { "slug": "ZOHO_BOOKS_ENABLE_CONTACT_PAYMENT_REMINDER", "name": "Enable Contact Payment Reminder", "description": "Tool to enable payment reminders for a contact. Use when you need to activate automated payment reminder emails for a specific contact." }, { "slug": "ZOHO_BOOKS_ENABLE_CONTACT_PORTAL", "name": "Enable Contact Portal", "description": "Tool to enable portal access for a contact. Use when you need to grant customer portal access to a specific contact after confirming its ID." }, { "slug": "ZOHO_BOOKS_ENABLE_INVOICE_PAYMENT_REMINDER", "name": "Enable Invoice Payment Reminder", "description": "Tool to enable payment reminders for an invoice. Use when you need to activate automated payment reminder emails for a specific invoice." }, { "slug": "ZOHO_BOOKS_EXCLUDE_BANK_TRANSACTION", "name": "Exclude Bank Transaction", "description": "Tool to exclude an uncategorized bank transaction. Use when you need to mark a transaction as excluded from categorization." }, { "slug": "ZOHO_BOOKS_EXPORT_BULK_ESTIMATES_PDF", "name": "Bulk Export Estimates PDF", "description": "Tool to export multiple estimates to a single PDF. Use when you have up to 25 estimate IDs ready to merge." }, { "slug": "ZOHO_BOOKS_EXPORT_SALES_ORDERS_PDF", "name": "Bulk Export Sales Orders PDF", "description": "Tool to export multiple sales orders to a single PDF. Use when you have up to 25 sales order IDs ready to merge." }, { "slug": "ZOHO_BOOKS_GET_ALL_TAG_OPTIONS", "name": "Get All Tag Options", "description": "Tool to retrieve all options for a reporting tag. Use when you need to fetch the complete list of tag option values." }, { "slug": "ZOHO_BOOKS_GET_BANK_ACCOUNT", "name": "Get Bank Account", "description": "Tool to fetch details of a specific bank account. Use when you need full metadata of one account by ID." }, { "slug": "ZOHO_BOOKS_GET_BASE_CURRENCY_ADJUSTMENT", "name": "Get Base Currency Adjustment", "description": "Tool to fetch details of a specific base currency adjustment. Use when you need to retrieve adjustment information by its ID." }, { "slug": "ZOHO_BOOKS_GET_BILL", "name": "Get Bill", "description": "Tool to fetch details of a specific bill. Use after confirming the organization context." }, { "slug": "ZOHO_BOOKS_GET_BILL_ATTACHMENT", "name": "Get Bill Attachment", "description": "Tool to fetch an attachment from a specific bill. Use when you need to download a document attached to a bill." }, { "slug": "ZOHO_BOOKS_GET_CHART_OF_ACCOUNT", "name": "Get Chart Of Account", "description": "Tool to fetch details of a specific chart of account. Use when you need to retrieve all attributes of an existing account by its ID." }, { "slug": "ZOHO_BOOKS_GET_CONTACT", "name": "Get Contact", "description": "Tool to fetch details of a specific contact. Use when you need to retrieve comprehensive contact information after obtaining the contact_id." }, { "slug": "ZOHO_BOOKS_GET_CONTACT_ADDRESS", "name": "Get Contact Address", "description": "Tool to retrieve all addresses associated with a contact. Use when you need to fetch billing, shipping, and additional addresses for a specific contact." }, { "slug": "ZOHO_BOOKS_GET_CONTACT_PERSON", "name": "Get Contact Person", "description": "Tool to retrieve details of a specific contact person. Use when you need to fetch information about an individual associated with a contact." }, { "slug": "ZOHO_BOOKS_GET_CONTACT_STATEMENT_MAIL", "name": "Get Contact Statement Mail", "description": "Tool to retrieve the pre-populated email content for a contact statement. Use when you need to get the email template, subject, body, and recipients before sending a statement." }, { "slug": "ZOHO_BOOKS_GET_CREDIT_NOTE", "name": "Get Credit Note", "description": "Tool to fetch details of a specific credit note by ID. Use when you need the full credit note record including line items, taxes, and applied invoices." }, { "slug": "ZOHO_BOOKS_GET_CURRENCY", "name": "Get Currency", "description": "Tool to retrieve details of a specific currency. Use when you need to get currency settings including exchange rates and formatting options." }, { "slug": "ZOHO_BOOKS_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to fetch details of a specific estimate. Use when you need to retrieve all attributes of an existing estimate by its ID." }, { "slug": "ZOHO_BOOKS_GET_ESTIMATE_EMAIL", "name": "Get Estimate Email", "description": "Tool to retrieve the pre-populated email content for an estimate. Use when you need to get the email template, subject, body, and recipients before sending an estimate email." }, { "slug": "ZOHO_BOOKS_GET_EXPENSE", "name": "Get Expense", "description": "Tool to fetch details of a specific expense. Use when you need the full expense record by its ID after creation or listing." }, { "slug": "ZOHO_BOOKS_GET_INVOICE", "name": "Get Invoice", "description": "Tool to fetch details of a specific invoice. Use when you need the full invoice record by its ID after creation or listing." }, { "slug": "ZOHO_BOOKS_GET_INVOICE_ATTACHMENT", "name": "Get Invoice Attachment", "description": "Tool to fetch the last attached attachment from a specific invoice. Use when you need to download a document attached to an invoice." }, { "slug": "ZOHO_BOOKS_GET_INVOICE_EMAIL", "name": "Get Invoice Email", "description": "Tool to retrieve the pre-populated email content for an invoice. Use when you need to get the email template, subject, body, and recipients before sending an invoice email." }, { "slug": "ZOHO_BOOKS_GET_ITEM", "name": "Get Item", "description": "Tool to fetch details of a specific item. Use when you need to retrieve all attributes of an existing item by its ID." }, { "slug": "ZOHO_BOOKS_GET_JOURNAL_CREDITS_LIST_V4", "name": "Get Journal Credits List (v4 Beta)", "description": "Tool to retrieve the list of available journal credits for a specific journal using v4 Beta API. Use when you need to view credits associated with a journal entry." }, { "slug": "ZOHO_BOOKS_GET_JOURNAL_DETAILS_V4", "name": "Get Journal Details V4", "description": "Tool to fetch details of a specific journal entry from Zoho Books API v4 (Beta). Use when you need complete journal information including line items, tax details, metadata, and approvals." }, { "slug": "ZOHO_BOOKS_GET_JOURNALS_LIST_V4", "name": "Get Journals List (v4 Beta)", "description": "Tool to retrieve a paginated list of journals using Zoho Books v4 Beta API. Use when you need to fetch and filter journal entries with advanced filtering options." }, { "slug": "ZOHO_BOOKS_GET_LAST_IMPORTED_STATEMENT", "name": "Get Last Imported Statement", "description": "Tool to get details of previously imported statement for a bank account. Use when you need to retrieve information about the last statement import." }, { "slug": "ZOHO_BOOKS_GET_MATCHING_BANK_TRANSACTIONS", "name": "Get Matching Bank Transactions", "description": "Tool to retrieve potential matching transactions for an uncategorized bank transaction. Use when you need to find existing transactions that could be matched with an imported or uncategorized transaction for reconciliation purposes." }, { "slug": "ZOHO_BOOKS_GET_OPENING_BALANCE", "name": "Get Opening Balance", "description": "Tool to retrieve opening balance for an organization. Use when you need to view the initial account balances configured in Zoho Books." }, { "slug": "ZOHO_BOOKS_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to fetch details of a specific organization. Use when you need to retrieve comprehensive organization information by its ID." }, { "slug": "ZOHO_BOOKS_GET_PAYMENT_REMINDER_MAIL_CONTENT_FOR_INVOICE", "name": "Get Payment Reminder Mail Content", "description": "Tool to retrieve the pre-populated payment reminder email content for an invoice. Use when you need to get the email template, subject, body, and recipients before sending a payment reminder." }, { "slug": "ZOHO_BOOKS_GET_PROJECT", "name": "Get Project", "description": "Tool to fetch details of a specific project. Use when you need to retrieve comprehensive project information after obtaining the project_id." }, { "slug": "ZOHO_BOOKS_GET_PROJECT_USER", "name": "Get Project User", "description": "Tool to fetch details of a specific user associated with a project. Use when you need to retrieve user information for a project." }, { "slug": "ZOHO_BOOKS_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Tool to fetch details of a specific purchase order. Use after confirming the organization context to retrieve comprehensive purchase order information." }, { "slug": "ZOHO_BOOKS_GET_RECURRING_INVOICE", "name": "Get Recurring Invoice", "description": "Tool to retrieve a single recurring invoice profile's full configuration by ID. Returns complete schedule, customer, line items, and status for 'read-before-write' update safety." }, { "slug": "ZOHO_BOOKS_GET_SALES_ORDER", "name": "Get Sales Order", "description": "Tool to fetch details of a specific sales order. Use when you need the full record of a sales order by its ID." }, { "slug": "ZOHO_BOOKS_GET_SALES_ORDER_ATTACHMENT", "name": "Get Sales Order Attachment", "description": "Tool to fetch an attachment from a specific sales order. Use when you need to download a document attached to a sales order." }, { "slug": "ZOHO_BOOKS_GET_SALES_ORDER_EMAIL_CONTENT", "name": "Get Sales Order Email Content", "description": "Tool to retrieve the pre-populated email content for a sales order. Use when you need to get the email template, subject, body, and recipients before sending a sales order email." }, { "slug": "ZOHO_BOOKS_GET_USER", "name": "Get User", "description": "Tool to fetch details of a specific user. Use after obtaining the user_id to retrieve comprehensive user information." }, { "slug": "ZOHO_BOOKS_GET_VENDOR_CREDIT_REFUND", "name": "Get Vendor Credit Refund", "description": "Tool to fetch details of a specific vendor credit refund. Use when you need to retrieve information about a refund associated with a vendor credit." }, { "slug": "ZOHO_BOOKS_IMPORT_BANK_STATEMENTS", "name": "Import Bank Statements", "description": "Tool to import bank or credit card statement transactions in bulk. Use when you need to import multiple transactions from a bank statement." }, { "slug": "ZOHO_BOOKS_LIST_BANK_ACCOUNTS", "name": "List Bank Accounts", "description": "Tool to list bank and credit card accounts. Use when retrieving all accounts for reconciliation or overview. Paginate using `page` and `per_page` for large organizations with many accounts." }, { "slug": "ZOHO_BOOKS_LIST_BANK_RULES", "name": "List Bank Rules", "description": "Tool to list all rules created for a bank or credit card account. Use when you need to retrieve rules for transaction categorization and automation." }, { "slug": "ZOHO_BOOKS_LIST_BANK_TRANSACTIONS", "name": "List Bank Transactions", "description": "Tool to list bank transactions with optional filters. Use when you need to retrieve transactions for reconciliation and reporting." }, { "slug": "ZOHO_BOOKS_LIST_BASE_CURRENCY_ADJUSTMENTS", "name": "List Base Currency Adjustments", "description": "Tool to list base currency adjustments for an organization. Use when retrieving currency adjustment records for reconciliation or reporting." }, { "slug": "ZOHO_BOOKS_LIST_BILL_COMMENTS_AND_HISTORY", "name": "List Bill Comments and History", "description": "Tool to list comments and history entries for a bill. Use when retrieving all comments and historical activities associated with a specific bill." }, { "slug": "ZOHO_BOOKS_LIST_BILL_PAYMENTS", "name": "List Bill Payments", "description": "Tool to list payments recorded against a bill. Use when retrieving all payment transactions applied to a specific vendor bill." }, { "slug": "ZOHO_BOOKS_LIST_BILLS", "name": "List Bills", "description": "Tool to retrieve a paginated list of bills. Use when listing bills with filters and pagination." }, { "slug": "ZOHO_BOOKS_LIST_CHART_OF_ACCOUNTS", "name": "List Chart Of Accounts", "description": "Tool to list chart of accounts. Use when you need to fetch all chart of accounts with optional filtering, sorting, and pagination." }, { "slug": "ZOHO_BOOKS_LIST_CHART_OF_ACCOUNT_TRANSACTIONS", "name": "List Chart of Account Transactions", "description": "Tool to list transactions for a specific chart of account. Use when you need to retrieve transaction history for an account with optional filters." }, { "slug": "ZOHO_BOOKS_LIST_CONTACT_COMMENTS", "name": "List Contact Comments", "description": "Tool to retrieve recent activities and comments for a specific contact. Use when you need to fetch the comment history of a contact." }, { "slug": "ZOHO_BOOKS_LIST_CONTACT_PERSONS", "name": "List Contact Persons", "description": "Tool to retrieve a paginated list of contact persons from Zoho Books. Use when you need to list all contact persons across all contacts in the organization." }, { "slug": "ZOHO_BOOKS_LIST_CONTACT_REFUNDS", "name": "List Contact Refunds", "description": "Tool to list refunds for a contact. Use when retrieving all refund transactions associated with a specific contact." }, { "slug": "ZOHO_BOOKS_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a paginated list of contacts with optional filters. Use when you need to fetch and filter contacts from Zoho Books before processing them." }, { "slug": "ZOHO_BOOKS_LIST_CREDIT_NOTE_REFUNDS", "name": "List Credit Note Refunds", "description": "Tool to retrieve a paginated list of credit note refunds with filters. Use when you need to fetch credit note refunds from Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Tool to retrieve a paginated list of credit notes with optional filters. Use when you need to discover credit note IDs or fetch credit notes by status, customer, date, or amount." }, { "slug": "ZOHO_BOOKS_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to list currencies configured for the organization. Use after authentication to retrieve all currency settings." }, { "slug": "ZOHO_BOOKS_LIST_CUSTOMER_PAYMENT_REFUNDS", "name": "List Customer Payment Refunds", "description": "Tool to list refunds of a customer payment. Use when retrieving all refund transactions for a specific customer payment." }, { "slug": "ZOHO_BOOKS_LIST_CUSTOMER_PAYMENTS", "name": "List Customer Payments", "description": "Tool to list customer payments in Zoho Books. Use when retrieving all customer payment transactions with optional filters." }, { "slug": "ZOHO_BOOKS_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to retrieve a paginated list of employees. Use when you need to fetch and browse employees of an organization in Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_ESTIMATE_COMMENTS_AND_HISTORY", "name": "List Estimate Comments & History", "description": "Tool to retrieve comments and history for a specific estimate. Use when you need to fetch activity log, status changes, or user comments associated with an estimate." }, { "slug": "ZOHO_BOOKS_LIST_ESTIMATES", "name": "List Estimates", "description": "Tool to retrieve a paginated list of estimates with optional filters. Use when you need to discover estimate IDs or fetch estimates by status, customer, date range, or amount." }, { "slug": "ZOHO_BOOKS_LIST_ESTIMATE_TEMPLATES", "name": "List Estimate Templates", "description": "Tool to retrieve a list of estimate templates. Use when you need to fetch available estimate templates for the organization." }, { "slug": "ZOHO_BOOKS_LIST_EXPENSE_COMMENTS", "name": "List Expense Comments", "description": "Tool to retrieve history and comments for a specific expense. Use when you need to fetch the comment history and activity log of an expense." }, { "slug": "ZOHO_BOOKS_LIST_EXPENSES", "name": "List Expenses", "description": "Tool to retrieve a paginated list of expenses with filters and search. Use when you need to fetch and filter expenses from Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_FIXED_ASSETS", "name": "List Fixed Assets", "description": "Tool to retrieve a paginated list of fixed assets from Zoho Books. Use when you need to fetch and filter fixed assets with optional sorting and pagination." }, { "slug": "ZOHO_BOOKS_LIST_FIXED_ASSET_TYPES", "name": "List Fixed Asset Types", "description": "Tool to retrieve a paginated list of fixed asset types from Zoho Books. Use when you need to fetch available fixed asset type classifications for categorizing fixed assets." }, { "slug": "ZOHO_BOOKS_LIST_INVOICE_COMMENTS_AND_HISTORY", "name": "List Invoice Comments and History", "description": "Tool to list comments and history entries for an invoice. Use when retrieving all comments and historical activities associated with a specific invoice." }, { "slug": "ZOHO_BOOKS_LIST_INVOICE_CREDITS_APPLIED", "name": "List Invoice Credits Applied", "description": "Tool to list credit notes applied to an invoice. Use when retrieving all credit transactions applied to a specific invoice." }, { "slug": "ZOHO_BOOKS_LIST_INVOICE_PAYMENTS", "name": "List Invoice Payments", "description": "Tool to list payments recorded against an invoice. Use when retrieving all payment transactions applied to a specific invoice." }, { "slug": "ZOHO_BOOKS_LIST_INVOICES", "name": "List Invoices", "description": "Tool to retrieve a paginated list of invoices with filters and search. Use when you need to fetch and filter invoices before processing." }, { "slug": "ZOHO_BOOKS_LIST_INVOICE_TEMPLATES", "name": "List Invoice Templates", "description": "Tool to retrieve a list of invoice templates. Use when you need to fetch available invoice templates for the organization." }, { "slug": "ZOHO_BOOKS_LIST_ITEM_DETAILS", "name": "List Item Details", "description": "Tool to bulk fetch details for multiple items from Zoho Books using their IDs. Use when you need to retrieve detailed information for multiple items in a single API call." }, { "slug": "ZOHO_BOOKS_LIST_ITEMS", "name": "List Items", "description": "Tool to retrieve a paginated list of items from Zoho Books. Use when you need to list items with optional filters, search, and sorting." }, { "slug": "ZOHO_BOOKS_LIST_JOURNAL_TEMPLATES", "name": "List Journal Templates", "description": "Tool to list journal templates with pagination. Use when you need to retrieve predefined journal entry templates for accounting." }, { "slug": "ZOHO_BOOKS_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to list all locations in the organization. Use when you need to retrieve all available locations from Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations for the authenticated user. Use when you need to obtain the organization_id for subsequent API calls." }, { "slug": "ZOHO_BOOKS_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve a paginated list of projects with optional filters. Use when you need to fetch projects from Zoho Books for a specific organization." }, { "slug": "ZOHO_BOOKS_LIST_PROJECT_USERS", "name": "List Project Users", "description": "Tool to retrieve all users assigned to a project. Use when you need to fetch the list of users associated with a specific project in Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_PURCHASE_ORDERS", "name": "List Purchase Orders", "description": "Tool to retrieve a paginated list of purchase orders. Use when listing purchase orders with filters, search, and pagination." }, { "slug": "ZOHO_BOOKS_LIST_RECURRING_BILL_HISTORY", "name": "List Recurring Bill History", "description": "Tool to list comments and history entries for a recurring bill. Use when retrieving all comments and historical activities associated with a specific recurring bill." }, { "slug": "ZOHO_BOOKS_LIST_RECURRING_INVOICE_HISTORY", "name": "List Recurring Invoice History", "description": "Tool to retrieve comments and history for a specific recurring invoice. Use when you need to view all activities, comments, and historical changes associated with a recurring invoice." }, { "slug": "ZOHO_BOOKS_LIST_REPORTING_TAGS", "name": "List Reporting Tags", "description": "Tool to retrieve all reporting tags from Zoho Books. Use when you need to list reporting tags for categorization and filtering purposes." }, { "slug": "ZOHO_BOOKS_LIST_RETAINER_INVOICES", "name": "List Retainer Invoices", "description": "Tool to retrieve a paginated list of retainer invoices with filters and sorting. Use when listing retainer invoices before processing them." }, { "slug": "ZOHO_BOOKS_LIST_SALES_ORDER_COMMENTS_AND_HISTORY", "name": "List Sales Order Comments & History", "description": "Tool to list comments and history entries for a sales order. Use when retrieving all comments and historical activities associated with a specific sales order." }, { "slug": "ZOHO_BOOKS_LIST_SALES_ORDERS", "name": "List Sales Orders", "description": "Tool to retrieve a paginated list of sales orders. Use when browsing sales orders by organization with optional sorting and filtering." }, { "slug": "ZOHO_BOOKS_LIST_SALES_RECEIPTS", "name": "List Sales Receipts", "description": "Tool to retrieve a paginated list of sales receipts with filters. Use when you need to fetch sales receipts by customer, date range, amount, or other criteria." }, { "slug": "ZOHO_BOOKS_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve a paginated list of tasks for a specific project. Use when you need to fetch tasks associated with a project in Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_TAXES", "name": "List Taxes", "description": "Tool to retrieve a paginated list of taxes. Use when you need to fetch tax configurations for an organization in Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_TAX_EXEMPTIONS", "name": "List Tax Exemptions", "description": "Tool to retrieve a list of tax exemptions from Zoho Books. Use when you need to list tax exemptions for US Edition organizations. This feature is only available for US Edition of Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a paginated list of users. Use when you need to fetch and browse users of an organization in Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_VENDOR_CREDIT_REFUNDS", "name": "List Vendor Credit Refunds", "description": "Tool to retrieve a paginated list of vendor credit refunds with filters. Use when you need to fetch vendor credit refunds from Zoho Books." }, { "slug": "ZOHO_BOOKS_LIST_VENDOR_CREDIT_REFUNDS2", "name": "List Vendor Credit Refunds", "description": "Tool to list refunds of a specific vendor credit. Use when retrieving all refund transactions applied to a particular vendor credit." }, { "slug": "ZOHO_BOOKS_LIST_VENDOR_CREDITS", "name": "List Vendor Credits", "description": "Tool to retrieve a paginated list of vendor credits with filters and search. Use when you need to fetch and filter vendor credits before processing." }, { "slug": "ZOHO_BOOKS_LIST_VENDOR_PAYMENT_REFUNDS", "name": "List Vendor Payment Refunds", "description": "Tool to list refunds of a vendor payment. Use when retrieving all refund transactions applied to a specific vendor payment." }, { "slug": "ZOHO_BOOKS_LIST_VENDOR_PAYMENTS", "name": "List Vendor Payments", "description": "Tool to retrieve a paginated list of vendor payments with filters and search. Use when listing vendor payments for reporting or reconciliation." }, { "slug": "ZOHO_BOOKS_MARK_BILL_OPEN", "name": "Mark Bill Open", "description": "Tool to mark a bill as open. Use when you need to change a bill's status to open (e.g., from void status)." }, { "slug": "ZOHO_BOOKS_MARK_BILL_VOID", "name": "Mark Bill Void", "description": "Tool to mark a bill as Void. Use when you need to void an existing bill after reviewing any outstanding payments." }, { "slug": "ZOHO_BOOKS_MARK_CONTACT_AS_ACTIVE", "name": "Mark Contact as Active", "description": "Tool to mark a contact as active. Use when you need to reactivate a previously deactivated contact after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_CONTACT_AS_INACTIVE", "name": "Mark Contact as Inactive", "description": "Tool to mark a contact as inactive. Use when you need to deactivate a contact after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_ESTIMATE_AS_SENT", "name": "Mark Estimate As Sent", "description": "Tool to mark an estimate as Sent. Use after the estimate is finalized and ready for delivery to the customer." }, { "slug": "ZOHO_BOOKS_MARK_INVOICE_AS_SENT", "name": "Mark Invoice As Sent", "description": "Tool to mark an invoice as Sent. Use after the invoice is finalized and ready for delivery to the customer." }, { "slug": "ZOHO_BOOKS_MARK_ITEM_AS_ACTIVE", "name": "Mark Item as Active", "description": "Tool to mark an item as active. Use when you need to reactivate a previously deactivated item after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_ITEM_INACTIVE", "name": "Mark Item as Inactive", "description": "Tool to mark an item as inactive. Use when you need to deactivate an item after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_LOCATION_ACTIVE", "name": "Mark Location Active", "description": "Tool to mark a location as active. Use when you need to activate a previously inactive location." }, { "slug": "ZOHO_BOOKS_MARK_LOCATION_INACTIVE", "name": "Mark Location as Inactive", "description": "Tool to mark a location as inactive. Use when you need to deactivate a location without permanently deleting it." }, { "slug": "ZOHO_BOOKS_MARK_LOCATION_PRIMARY", "name": "Mark Location Primary", "description": "Tool to mark a location as primary. Use when you need to set a specific location as the primary location for the organization after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_PROJECT_ACTIVE", "name": "Mark Project Active", "description": "Tool to mark a project as active. Use when you need to reactivate a previously inactive project after confirming its ID." }, { "slug": "ZOHO_BOOKS_MARK_REPORTING_TAG_AS_ACTIVE", "name": "Mark Reporting Tag as Active", "description": "Tool to mark a reporting tag as active. Use when you need to activate a reporting tag after ensuring it has at least one option configured." }, { "slug": "ZOHO_BOOKS_MARK_REPORTING_TAG_AS_INACTIVE", "name": "Mark Reporting Tag as Inactive", "description": "Tool to mark a reporting tag as inactive. Use when you need to deactivate a reporting tag that is no longer needed." }, { "slug": "ZOHO_BOOKS_MARK_REPORTING_TAG_DEFAULT_OPTION", "name": "Mark Reporting Tag Default Option", "description": "Tool to mark an option as default for a reporting tag. Use when you need to set a specific tag option as the default choice." }, { "slug": "ZOHO_BOOKS_MARK_RETAINER_INVOICE_SENT", "name": "Mark Retainer Invoice Sent", "description": "Tool to mark a retainer invoice as Sent. Use after the retainer invoice is finalized and ready for delivery to the customer." }, { "slug": "ZOHO_BOOKS_MARK_SALES_ORDER_VOID", "name": "Mark Sales Order Void", "description": "Tool to mark a sales order as Void. Use when you need to void an existing sales order after reviewing any outstanding deliveries or invoices." }, { "slug": "ZOHO_BOOKS_MARK_TAG_OPTION_ACTIVE", "name": "Mark Tag Option Active", "description": "Tool to mark a reporting tag option as active. Use when you need to activate a previously inactive tag option for an organization." }, { "slug": "ZOHO_BOOKS_MARK_TAG_OPTION_AS_INACTIVE", "name": "Mark Tag Option as Inactive", "description": "Tool to mark a reporting tag option as inactive. Use when you need to deactivate a specific tag option for reporting purposes." }, { "slug": "ZOHO_BOOKS_MARK_USER_INACTIVE", "name": "Mark User as Inactive", "description": "Tool to mark a user as inactive in Zoho Books. Use when you need to deactivate a user account while preserving their historical data." }, { "slug": "ZOHO_BOOKS_MARK_VENDOR_CREDIT_VOID", "name": "Mark Vendor Credit Void", "description": "Tool to void a vendor credit. Use when you need to mark an existing vendor credit as void, making it inactive in the system." }, { "slug": "ZOHO_BOOKS_OPEN_SALES_ORDER", "name": "Open Sales Order", "description": "Tool to mark a sales order as Open. Use when a sales order in Draft status needs to be opened for processing." }, { "slug": "ZOHO_BOOKS_PRINT_BULK_ESTIMATES", "name": "Bulk Print Estimates", "description": "Tool to bulk print up to 25 estimates as a single PDF. Use when you have multiple estimate IDs and need a combined PDF for printing." }, { "slug": "ZOHO_BOOKS_PRINT_BULK_SALES_ORDERS", "name": "Bulk Print Sales Orders", "description": "Tool to bulk print up to 25 sales orders as a single PDF. Use when you have multiple sales order IDs and need a combined PDF for printing." }, { "slug": "ZOHO_BOOKS_REMIND_CUSTOMER_INVOICE", "name": "Send Payment Reminder", "description": "Tool to send a payment reminder for an invoice. Use when invoice is in Open or Overdue status." }, { "slug": "ZOHO_BOOKS_RESUME_RECURRING_INVOICE", "name": "Resume Recurring Invoice", "description": "Tool to resume a recurring invoice. Use when you need to reactivate a paused or stopped recurring invoice." }, { "slug": "ZOHO_BOOKS_SEND_BULK_INVOICE_REMINDER", "name": "Send Bulk Invoice Reminder", "description": "Tool to send payment reminders for multiple invoices at once. Use when you need to send reminders to multiple customers for their outstanding invoices." }, { "slug": "ZOHO_BOOKS_SEND_CONTACT_EMAIL", "name": "Send Contact Email", "description": "Tool to send an email to a contact in Zoho Books. Use when you need to email a customer or vendor about statements, documents, or general communication." }, { "slug": "ZOHO_BOOKS_STOP_RECURRING_INVOICE", "name": "Stop Recurring Invoice", "description": "Tool to stop a recurring invoice. Use when you need to stop a recurring invoice from generating future invoices." }, { "slug": "ZOHO_BOOKS_UNTRACK_CONTACT1099", "name": "Untrack Contact 1099", "description": "Tool to untrack a contact for 1099 reporting. Use when you need to stop tracking a vendor for 1099 tax form reporting in the US." }, { "slug": "ZOHO_BOOKS_UPDATE_BANK_TRANSACTION", "name": "Update Bank Transaction", "description": "Tool to update an existing bank transaction in Zoho Books. Use when you need to modify transaction details such as amount, description, or date after the transaction has been created." }, { "slug": "ZOHO_BOOKS_UPDATE_BILL", "name": "Update Vendor Bill", "description": "Tool to update a vendor bill. Use when you need to modify an existing bill in Zoho Books. Use after fetching the current bill details." }, { "slug": "ZOHO_BOOKS_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update details of a contact. Use when you need to modify any contact attribute after verifying contact_id." }, { "slug": "ZOHO_BOOKS_UPDATE_CONTACT_PERSON", "name": "Update Contact Person", "description": "Tool to update an existing contact person in Zoho Books. Use when modifying details of a contact person after verifying their contact_person_id." }, { "slug": "ZOHO_BOOKS_UPDATE_CREDIT_NOTE_REFUND", "name": "Update Credit Note Refund", "description": "Tool to update details of a specific credit note refund. Use when you need to modify an existing refund associated with a credit note—change the description, reference number, or other refund fields." }, { "slug": "ZOHO_BOOKS_UPDATE_CURRENCY", "name": "Update Currency", "description": "Tool to update an existing currency in Zoho Books. Use when you need to modify currency settings such as symbol, format, or precision." }, { "slug": "ZOHO_BOOKS_UPDATE_CUSTOM_FIELDS_IN_ITEM", "name": "Update Custom Fields in Item", "description": "Tool to update custom field values in an existing item. Use when you need to modify custom field data for a specific item without changing other item properties." }, { "slug": "ZOHO_BOOKS_UPDATE_ESTIMATE", "name": "Update Estimate", "description": "Tool to update an existing estimate (quote). Use when you need to modify an existing customer quote in Zoho Books." }, { "slug": "ZOHO_BOOKS_UPDATE_ESTIMATE_BILLING_ADDRESS", "name": "Update Estimate Billing Address", "description": "Tool to update the billing address of an estimate. Use when you need to modify billing address details for an existing estimate in Zoho Books." }, { "slug": "ZOHO_BOOKS_UPDATE_ESTIMATE_SHIPPING_ADDRESS", "name": "Update Estimate Shipping Address", "description": "Tool to update the shipping address for an estimate. Use when you need to modify the delivery address details of an existing estimate." }, { "slug": "ZOHO_BOOKS_UPDATE_ESTIMATE_TEMPLATE", "name": "Update Estimate Template", "description": "Tool to update the template associated with an estimate. Use when you need to change the PDF template used for an existing estimate." }, { "slug": "ZOHO_BOOKS_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update details of a specific invoice. Use when you need to modify an existing invoice in Zoho Books—change line items, dates, or other invoice fields. Requires invoice ID and organization ID before calling." }, { "slug": "ZOHO_BOOKS_UPDATE_INVOICE_ATTACHMENT_PREFERENCE", "name": "Update Invoice Attachment Preference", "description": "Tool to update attachment preference for an invoice. Use when you need to control whether the invoice attachment should be sent when the invoice is emailed." }, { "slug": "ZOHO_BOOKS_UPDATE_INVOICE_BILLING_ADDRESS", "name": "Update Invoice Billing Address", "description": "Tool to update the billing address of an invoice. Use when you need to modify billing address fields (city, state, zip, country, fax) for an existing invoice." }, { "slug": "ZOHO_BOOKS_UPDATE_INVOICE_SHIPPING_ADDRESS", "name": "Update Invoice Shipping Address", "description": "Tool to update the shipping address of a specific invoice. Use when you need to modify the shipping address details for an existing invoice in Zoho Books." }, { "slug": "ZOHO_BOOKS_UPDATE_INVOICE_TEMPLATE", "name": "Update Invoice Template", "description": "Tool to update the template associated with an invoice. Use when you need to change the PDF template used for an existing invoice." }, { "slug": "ZOHO_BOOKS_UPDATE_ITEM", "name": "Update Item", "description": "Tool to update details of a specific item. Use when you need to modify an existing item's attributes after fetching its current state." }, { "slug": "ZOHO_BOOKS_UPDATE_JOURNAL", "name": "Update Journal", "description": "Tool to update a journal entry in Zoho Books. Use when modifying existing journal entries—changing line items, dates, amounts, or other journal fields." }, { "slug": "ZOHO_BOOKS_UPDATE_LOCATION", "name": "Update Location", "description": "Tool to update an existing location in Zoho Books. Use when you need to modify location details such as name, address, or associated users." }, { "slug": "ZOHO_BOOKS_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update an organization's settings and details. Use when you need to modify organization information like name, contact details, or fiscal year settings." }, { "slug": "ZOHO_BOOKS_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update a project in Zoho Books. Use when you need to modify project details like name, billing type, rate, or other project attributes. Requires project_id." }, { "slug": "ZOHO_BOOKS_UPDATE_PROJECT_USER", "name": "Update Project User", "description": "Tool to update a user's details in a project. Use when you need to modify the role, rate, or budget hours for a user assigned to a specific project." }, { "slug": "ZOHO_BOOKS_UPDATE_PURCHASE_ORDER_BILLING_ADDRESS", "name": "Update Purchase Order Billing Address", "description": "Tool to update the billing address of a purchase order. Use when you need to modify billing address details for an existing purchase order." }, { "slug": "ZOHO_BOOKS_UPDATE_PURCHASE_ORDER_COMMENT", "name": "Update Purchase Order Comment", "description": "Tool to update a comment on a purchase order. Use when you need to modify the text of an existing comment. Only user-created comments can be updated; system-generated comments will fail with error 4073." }, { "slug": "ZOHO_BOOKS_UPDATE_RECURRING_BILL", "name": "Update Recurring Bill", "description": "Tool to update a recurring bill in Zoho Books. Use when you need to modify an existing recurring bill's details such as vendor, recurrence pattern, line items, or other bill attributes." }, { "slug": "ZOHO_BOOKS_UPDATE_RECURRING_INVOICE_TEMPLATE", "name": "Update Recurring Invoice Template", "description": "Tool to update the template associated with a recurring invoice. Use when you need to change the PDF template used for an existing recurring invoice." }, { "slug": "ZOHO_BOOKS_UPDATE_REPORTING_TAG", "name": "Update Reporting Tag", "description": "Tool to update an existing reporting tag in Zoho Books. Use when you need to modify the name, description, or settings of a reporting tag." }, { "slug": "ZOHO_BOOKS_UPDATE_REPORTING_TAG_OPTIONS", "name": "Update Reporting Tag Options", "description": "Tool to update reporting tag options in Zoho Books. Use when you need to modify, add, or update the available options for a reporting tag including their active status and default settings." }, { "slug": "ZOHO_BOOKS_UPDATE_SALES_ORDER", "name": "Update Sales Order", "description": "Tool to update a specific sales order. Use when you need to modify an existing sales order (e.g., change dates, line items, or custom fields) after creation." }, { "slug": "ZOHO_BOOKS_UPDATE_SALES_ORDER_ATTACHMENT_PREFERENCE", "name": "Update Sales Order Attachment Preference", "description": "Tool to update attachment preference for a sales order. Use when you need to control whether the sales order attachment should be sent when the sales order is emailed." }, { "slug": "ZOHO_BOOKS_UPDATE_SALES_ORDER_BILLING_ADDRESS", "name": "Update Sales Order Billing Address", "description": "Tool to update the billing address of a sales order. Use when you need to modify billing address details for an existing sales order in Zoho Books." }, { "slug": "ZOHO_BOOKS_UPDATE_SALES_ORDER_SHIPPING_ADDRESS", "name": "Update Sales Order Shipping Address", "description": "Tool to update the shipping address of a specific sales order. Use when you need to modify the shipping address details for an existing sales order in Zoho Books." }, { "slug": "ZOHO_BOOKS_UPDATE_SALES_ORDER_TEMPLATE", "name": "Update Sales Order Template", "description": "Tool to update the template associated with a sales order. Use when you need to change the PDF template used for an existing sales order." }, { "slug": "ZOHO_BOOKS_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user in Zoho Books. Use when modifying user details like name, email, or role." }, { "slug": "ZOHO_BOOKS_UPDATE_VENDOR_PAYMENT_REFUND", "name": "Update Vendor Payment Refund", "description": "Tool to update a vendor payment refund in Zoho Books. Use when you need to modify an existing refund's details such as amount, date, or reference information." }, { "slug": "ZOHO_BOOKS_VOID_INVOICE", "name": "Void Invoice", "description": "Tool to mark an invoice as Void. Use when you need to void an existing invoice after reviewing any outstanding payments." }, { "slug": "ZOHO_BOOKS_WRITE_OFF_INVOICE", "name": "Write Off Invoice", "description": "Tool to write off an invoice. Use when an invoice amount is not expected to be recovered and should be treated as bad debt." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoBooks.fullaccess.all" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Domain Extension", "type": "string", "description": "The ending of your Zoho Books web address (check your browser address bar) — e.g. 'eu' for books.zoho.eu, 'au' for books.zoho.com.au. Most accounts can keep 'com'.", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "zoho_inventory", "name": "Zoho Inventory", "logo": "https://logos.composio.dev/api/zoho_inventory", "description": "Zoho Inventory helps businesses track stock, manage orders, and sync inventory across multiple sales channels, streamlining supply chain operations", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 58, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_INVENTORY_ADD_CREDIT_NOTE_COMMENT", "name": "Add Credit Note Comment", "description": "Tool to add a comment to a credit note in Zoho Inventory. Use when needing to add notes or comments to a specific credit note for record-keeping or audit purposes." }, { "slug": "ZOHO_INVENTORY_ADD_INVOICE_ATTACHMENT", "name": "Add Invoice Attachment", "description": "Tool to upload an attachment to a specific invoice. Use when you need to add a file attachment to an invoice." }, { "slug": "ZOHO_INVENTORY_ADD_INVOICE_COMMENT", "name": "Add Invoice Comment", "description": "Tool to add a comment to a specific invoice in Zoho Inventory. Use when you need to add notes, updates, or internal/client-visible comments to an invoice." }, { "slug": "ZOHO_INVENTORY_APPLY_CREDITS_TO_INVOICES", "name": "Apply Credits To Invoices", "description": "Tool to apply credits from a credit note to one or more invoices. Use when you need to apply available credits from a credit note to settle invoice balances." }, { "slug": "ZOHO_INVENTORY_BULK_DELETE_SALES_ORDERS", "name": "Bulk Delete Sales Orders", "description": "Tool to bulk delete sales orders. Use this to remove multiple sales orders at once." }, { "slug": "ZOHO_INVENTORY_BULK_EMAIL_INVOICES", "name": "Bulk Email Invoices", "description": "Sends multiple invoices by email to a contact in a single API call. Use this tool when you need to email up to 10 invoices at once to a customer. The invoices will be scheduled for delivery and the contact will receive individual emails for each invoice. If contact_id is not provided, the action will automatically fetch the customer_id from the first invoice and use that as the contact." }, { "slug": "ZOHO_INVENTORY_BULK_EXPORT_INVOICES", "name": "Bulk Export Invoices", "description": "Tool to bulk export invoices as a single PDF. Use when you need to download multiple invoices in a single file for archiving or sharing." }, { "slug": "ZOHO_INVENTORY_BULK_PRINT_INVOICES", "name": "Bulk Print Invoices", "description": "Generate a consolidated PDF containing multiple invoices for printing or archiving. Use this tool to download one or more invoices as a single PDF document. The PDF can contain up to 25 invoices and is useful for bulk printing, record keeping, or sharing with customers." }, { "slug": "ZOHO_INVENTORY_BULK_PRINT_PACKAGES", "name": "Bulk Print Packages", "description": "Tool to bulk print package slips as a consolidated PDF. Use when you need a PDF file of multiple package slips for printing or archiving." }, { "slug": "ZOHO_INVENTORY_CANCEL_INVOICE_WRITE_OFF", "name": "Cancel Invoice Write Off", "description": "Tool to cancel write off for an invoice. Use when undoing a previously applied write off on an invoice after verifying the invoice has a write off applied." }, { "slug": "ZOHO_INVENTORY_CREATE_BILL", "name": "Create Bill", "description": "Tool to create a bill in Zoho Inventory. Use when a vendor supplies goods/services on credit and you need to track the amount owed." }, { "slug": "ZOHO_INVENTORY_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact (customer or vendor) in Zoho Inventory. Use when you need to add a new business relationship to your organization." }, { "slug": "ZOHO_INVENTORY_CREATE_CONTACT_PERSON", "name": "Create Contact Person", "description": "Tool to create a contact person. Use when you need to add a new contact person to an existing contact in Zoho Inventory." }, { "slug": "ZOHO_INVENTORY_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Tool to create a new credit note in Zoho Inventory. Use when you need to issue a credit note to a customer for returns, refunds, or adjustments." }, { "slug": "ZOHO_INVENTORY_CREATE_CUSTOMER_PAYMENT", "name": "Create Customer Payment", "description": "Tool to create a customer payment in Zoho Inventory. Use when recording a payment received from a customer against one or more invoices." }, { "slug": "ZOHO_INVENTORY_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice in Zoho Inventory. Use when you need to invoice a customer for products or services sold." }, { "slug": "ZOHO_INVENTORY_CREATE_ITEM", "name": "Create Item", "description": "Tool to create a new item in Zoho Inventory. Use when you need to add a new product or service to your inventory catalog." }, { "slug": "ZOHO_INVENTORY_CREATE_ITEM_GROUP", "name": "Create Item Group", "description": "Tool to create an item group in Zoho Inventory. Use when you need to create a new item group with multiple items that share common attributes like size or color variations." }, { "slug": "ZOHO_INVENTORY_CREATE_PACKAGE", "name": "Create Package", "description": "Tool to create a package for a sales order in Zoho Inventory. Use when you need to prepare items from a sales order for shipping." }, { "slug": "ZOHO_INVENTORY_CREATE_PURCHASE_ORDER", "name": "Create Purchase Order", "description": "Tool to create a purchase order in Zoho Inventory. Use when you need to order goods or services from a vendor." }, { "slug": "ZOHO_INVENTORY_CREATE_SALES_ORDER", "name": "Create Sales Order", "description": "Tool to create a sales order in Zoho Inventory. Use when a customer places an order for products and you need to track the sale before invoicing." }, { "slug": "ZOHO_INVENTORY_DEACTIVATE_CONTACT", "name": "Deactivate Contact", "description": "Tool to mark a contact as inactive in Zoho Inventory. Use when you need to deactivate a contact without permanently deleting it." }, { "slug": "ZOHO_INVENTORY_DEACTIVATE_ITEM", "name": "Deactivate Item", "description": "Tool to mark an item as inactive in Zoho Inventory. Use when you need to deactivate an item without permanently deleting it." }, { "slug": "ZOHO_INVENTORY_DEACTIVATE_ITEM_GROUP", "name": "Deactivate Item Group", "description": "Tool to mark an item group as inactive in Zoho Inventory. Use when you need to deactivate an item group and all its items without permanently deleting them." }, { "slug": "ZOHO_INVENTORY_DELETE_COMPOSITE_ITEM", "name": "Delete Composite Item", "description": "Permanently deletes a composite item from Zoho Inventory. A composite item (also known as a bundle or kit) is a product made up of multiple individual inventory items sold together as a single unit. This action removes the composite item definition but does not affect the underlying component items. Prerequisites: - Composite items feature must be enabled in the organization's item preferences - The composite item must exist and not be associated with active transactions Common error codes: - 2006: Resource does not exist (invalid composite_item_id) - 2054: Composite items feature not enabled in organization settings API Endpoint: DELETE /inventory/v1/compositeitems/{composite_item_id}" }, { "slug": "ZOHO_INVENTORY_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact. Use when you need to remove an existing contact from your organization after confirming it is no longer needed." }, { "slug": "ZOHO_INVENTORY_DELETE_CONTACT_PERSON", "name": "Delete Contact Person", "description": "Tool to delete a contact person. Use when you need to remove a contact person from your organization after confirming it is no longer needed." }, { "slug": "ZOHO_INVENTORY_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an invoice. Use when you need to remove an existing invoice that has no payments or credits applied." }, { "slug": "ZOHO_INVENTORY_DELETE_INVOICE_ATTACHMENT", "name": "Delete Invoice Attachment", "description": "Tool to delete an invoice attachment. Use when you need to remove a file attached to an invoice." }, { "slug": "ZOHO_INVENTORY_DELETE_INVOICE_COMMENT", "name": "Delete Invoice Comment", "description": "Delete a specific comment from an invoice in Zoho Inventory. Zoho API: DELETE /inventory/v1/invoices/{invoice_id}/comments/{comment_id} Required query param: organization_id Auth header format: Authorization: Zoho-oauthtoken " }, { "slug": "ZOHO_INVENTORY_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete an item. Use when you need to remove an existing inventory item after confirming it is not referenced in any transactions." }, { "slug": "ZOHO_INVENTORY_DELETE_ITEM_GROUP", "name": "Delete Item Group", "description": "Tool to delete an item group. Use to remove an existing item group that is no longer needed." }, { "slug": "ZOHO_INVENTORY_DELETE_ITEM_IMAGE", "name": "Delete Item Image", "description": "Tool to delete an image associated with an item. Use when you need to remove an item's image after ensuring it's no longer required." }, { "slug": "ZOHO_INVENTORY_DELETE_PACKAGE", "name": "Delete Package", "description": "Tool to delete a package. Use when you need to remove an existing package created for a sales order." }, { "slug": "ZOHO_INVENTORY_DELETE_SALES_ORDER", "name": "Delete Sales Order", "description": "Tool to delete a sales order. Use when you need to remove an existing sales order." }, { "slug": "ZOHO_INVENTORY_DISABLE_PAYMENT_REMINDER", "name": "Disable Payment Reminder", "description": "Tool to disable payment reminders for an invoice. Use when you want to stop automatic payment reminders for an invoice after it has been issued." }, { "slug": "ZOHO_INVENTORY_EMAIL_CONTACT", "name": "Email Contact", "description": "Tool to email a contact in Zoho Inventory. Use when you need to send an email to a specific contact with a custom subject and body." }, { "slug": "ZOHO_INVENTORY_EMAIL_CONTACT_STATEMENT", "name": "Email Contact Statement", "description": "Tool to email a statement of transactions to a contact. Use when you need to send account statements to customers or vendors." }, { "slug": "ZOHO_INVENTORY_EMAIL_CREDIT_NOTE", "name": "Email Credit Note", "description": "Tool to email a credit note to customers. Use when you need to send a credit note via email to recipients." }, { "slug": "ZOHO_INVENTORY_EMAIL_INVOICE", "name": "Email Invoice", "description": "Tool to email a specific invoice to customers. Use when you need to send an invoice via email, with optional attachments." }, { "slug": "ZOHO_INVENTORY_ENABLE_INVOICE_PAYMENT_REMINDER", "name": "Enable Invoice Payment Reminder", "description": "Tool to enable payment reminders for an invoice. Use when you want to activate automatic payment reminders for an invoice after it has been issued." }, { "slug": "ZOHO_INVENTORY_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID from Zoho Inventory. Use when you need to get detailed information about a customer or vendor contact." }, { "slug": "ZOHO_INVENTORY_GET_CONTACT_ADDRESS", "name": "Get Contact Address", "description": "Tool to get contact address. Use when you need to retrieve address information for a specific contact." }, { "slug": "ZOHO_INVENTORY_GET_CREDIT_NOTE", "name": "Get Credit Note", "description": "Tool to retrieve a credit note by ID. Use when you need to fetch detailed information about a specific credit note." }, { "slug": "ZOHO_INVENTORY_GET_CREDIT_NOTE_EMAIL_CONTENT", "name": "Get Credit Note Email Content", "description": "Tool to get credit note email content including subject, body, recipients, and available templates. Use when you need to preview or retrieve the email content for a credit note before sending it." }, { "slug": "ZOHO_INVENTORY_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get details of the currently authenticated user in Zoho Inventory. Use when you need to retrieve user profile information, permissions, or validate the authenticated user." }, { "slug": "ZOHO_INVENTORY_GET_SALES_ORDER", "name": "Get Sales Order", "description": "Tool to retrieve the details of an existing sales order. Use when you need to get complete information about a sales order including line items, customer details, shipping information, and order status." }, { "slug": "ZOHO_INVENTORY_LIST_BILLS", "name": "List Bills", "description": "Tool to list bills. Use when needing to fetch bills for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list all contacts (customers and vendors) in Zoho Inventory. Use when needing to fetch contacts for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Tool to list all credit notes. Use when needing to fetch credit notes for an organization. Supports filtering by status, customer, date, and other criteria." }, { "slug": "ZOHO_INVENTORY_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to list all currencies configured in Zoho Inventory. Use when you need to retrieve available currencies, exchange rates, or identify the base currency for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_INVOICE_PAYMENTS", "name": "List Invoice Payments", "description": "Tool to list all payments received for a specific invoice. Use when you need to retrieve payment records for an invoice." }, { "slug": "ZOHO_INVENTORY_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list all invoices in Zoho Inventory. Use when you need to retrieve invoices for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_ITEM_GROUPS", "name": "List Item Groups", "description": "Tool to list all item groups in Zoho Inventory. Use when needing to fetch item groups for an organization. Item groups allow grouping of related items with variations." }, { "slug": "ZOHO_INVENTORY_LIST_ITEMS", "name": "List Items", "description": "Tool to list all items in Zoho Inventory. Use when you need to retrieve inventory items for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations the user has access to in Zoho Inventory. Use when you need to get organization IDs or view available organizations. This action does not require organization_id as a parameter." }, { "slug": "ZOHO_INVENTORY_LIST_PURCHASE_ORDERS", "name": "List Purchase Orders", "description": "Tool to list purchase orders. Use when needing to fetch purchase orders for an organization." }, { "slug": "ZOHO_INVENTORY_LIST_SALES_ORDERS", "name": "List Sales Orders", "description": "Tool to list sales orders. Use when needing to fetch sales orders for an organization." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zoho_inventory_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoInventory.contacts.ALL,ZohoInventory.items.ALL,ZohoInventory.compositeitems.ALL,ZohoInventory.transferorders.ALL,ZohoInventory.salesorders.ALL,ZohoInventory.packages.ALL,ZohoInventory.shipmentorders.ALL,ZohoInventory.invoices.ALL,ZohoInventory.customerpayments.ALL,ZohoInventory.creditnotes.ALL,ZohoInventory.purchaseorders.ALL,ZohoInventory.purchasereceives.ALL,ZohoInventory.bills.ALL,ZohoInventory.settings.READ" } ] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "The Zoho data center region (e.g., com, eu, in, au, jp, ca, cn, sa).", "required": true, "default": "com" } ], "optional": [ { "name": "generic_key", "displayName": "Organization ID", "type": "string", "description": "Your Zoho Inventory organization ID. Find it in Settings → Organization Profile. If not provided, we'll use the first available organization for your account.", "required": false, "default": null } ] } } } ] }, { "slug": "adobe", "name": "Adobe", "logo": "https://logos.composio.dev/api/adobe", "description": "Adobe provides creative software and digital media solutions, including Photoshop and Acrobat, empowering individuals and enterprises to design, edit, and distribute content across multiple formats", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "adobe_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Adobe API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "facebook", "name": "Facebook", "logo": "https://logos.composio.dev/api/facebook", "description": "Facebook is a social media and advertising platform used by individuals and businesses to connect, share content, and promote products or services. Only supports Facebook Pages, not Facebook Personal accounts.", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 43, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FACEBOOK_ASSIGN_PAGE_TASK", "name": "Assign Page Task", "description": "Assigns tasks/roles to a business-scoped user or system user for a specific Facebook Page. Important: This action requires a business-scoped user ID or system user ID from Facebook Business Manager. Regular Facebook user IDs cannot be used. The page must also be managed through Facebook Business Manager for this action to work. Required permissions: business_management, pages_manage_metadata" }, { "slug": "FACEBOOK_CREATE_COMMENT", "name": "Create Comment", "description": "Creates a comment on a Facebook post or replies to an existing comment." }, { "slug": "FACEBOOK_CREATE_PHOTO_ALBUM", "name": "Create Photo Album", "description": "Creates a new photo album on a Facebook Page. Note: This endpoint requires the 'pages_manage_posts' permission or equivalent permissions to be granted to your Facebook application. This action is publicly visible on the Page; confirm with the user before calling." }, { "slug": "FACEBOOK_CREATE_PHOTO_POST", "name": "Create Photo Post", "description": "Creates a photo post on a Facebook Page. Requires an image to be provided via either 'url' (publicly accessible image URL) or 'photo' (local image file upload). This action is specifically for posting images with optional captions, not text-only posts. Returns a composite post_id (PageID_PostID); use this for follow-up operations, not the photo/media id alone." }, { "slug": "FACEBOOK_CREATE_POST", "name": "Create Post", "description": "Creates a new text or link post on a Facebook Page. Requires `pages_manage_posts` permission and manage-level Page role on the target Page. For image posts use FACEBOOK_CREATE_PHOTO_POST; for video posts use FACEBOOK_CREATE_VIDEO_POST — media fields are not supported here. Returns a composite post ID in `PageID_PostID` format, required for FACEBOOK_GET_POST retrieval." }, { "slug": "FACEBOOK_CREATE_VIDEO_POST", "name": "Create Video Post", "description": "Creates a video post on a Facebook Page. Requires a Page access token with `pages_manage_posts` scope and manage-level permissions on the target page." }, { "slug": "FACEBOOK_DELETE_COMMENT", "name": "Delete Comment", "description": "Deletes a Facebook comment. Requires a Page Access Token with appropriate permissions for comments on Page-owned content. The page_id parameter helps ensure the correct page token is used for authentication." }, { "slug": "FACEBOOK_DELETE_POST", "name": "Delete Post", "description": "Permanently deletes a Facebook Page post. Deletion is irreversible — deleted posts cannot be recovered. For bulk deletions, keep throughput to ~1 delete/second to avoid Graph API rate limits." }, { "slug": "FACEBOOK_GET_COMMENT", "name": "Get Comment", "description": "Retrieves details of a specific Facebook comment." }, { "slug": "FACEBOOK_GET_COMMENTS", "name": "Get Comments", "description": "Retrieves comments from a Facebook post or comment (for replies). This endpoint requires appropriate permissions: - For page-owned posts: A Page Access Token with 'pages_read_engagement' permission - The API automatically swaps user tokens for page tokens when available API Version: Uses v23.0 which was released May 2025." }, { "slug": "FACEBOOK_GET_CONVERSATION_MESSAGES", "name": "Get Conversation Messages", "description": "Retrieves messages from a specific conversation." }, { "slug": "FACEBOOK_GET_CURRENT_USER", "name": "Get Current User", "description": "Validates the access token and retrieves the authenticated user's own profile via /me. Cannot fetch arbitrary users by name or ID." }, { "slug": "FACEBOOK_GET_MESSAGE_DETAILS", "name": "Get Message Details", "description": "Retrieves details of a specific message sent or received by the Page." }, { "slug": "FACEBOOK_GET_PAGE_CONVERSATIONS", "name": "Get Page Conversations", "description": "Retrieves a list of conversations between users and the Page." }, { "slug": "FACEBOOK_GET_PAGE_DETAILS", "name": "Get Page Details", "description": "Fetches details about a specific Facebook Page." }, { "slug": "FACEBOOK_GET_PAGE_INSIGHTS", "name": "Get Page Insights", "description": "Retrieves analytics and insights for a Facebook Page. Returns metrics like impressions, page views, fan counts, and engagement data. Empty objects (`{}`) in results indicate missing data, not zero values. High-volume calls risk Graph API rate limits (error codes 4/613)." }, { "slug": "FACEBOOK_GET_PAGE_PHOTOS", "name": "Get Page Photos", "description": "Retrieves photos from a Facebook Page. CDN-based URLs (including `source`) are time-limited and expire; download and persist images promptly if long-term access is needed." }, { "slug": "FACEBOOK_GET_PAGE_POSTS", "name": "Get Page Posts", "description": "Retrieves posts from a Facebook Page. Endpoint choice: Uses /{page_id}/feed instead of /posts or /published_posts because: - /feed returns all content on page timeline (page's posts + visitor posts + tagged posts) - /posts returns only posts created by the page itself - /published_posts returns only published posts by the page (excludes scheduled/unpublished) The /feed endpoint provides the most comprehensive view of page activity. Pagination: follow paging.cursors.after or paging.next across multiple calls until no next cursor exists. Throttling: high-volume pagination can trigger Graph API errors 4 and 613; use backoff between requests. API Version: Uses v23.0 (released May 2025). v20.0 and earlier will be deprecated by Meta. See: https://developers.facebook.com/docs/graph-api/changelog" }, { "slug": "FACEBOOK_GET_PAGE_ROLES", "name": "Get Page Roles", "description": "Retrieves a list of people and their tasks/roles on a Facebook Page. The connected account must have management access to the target Page; otherwise the response may be empty or incomplete. Returned role types include MANAGE and CREATE_CONTENT — verify these before calling tools like FACEBOOK_UPDATE_PAGE_SETTINGS. Recently changed roles may take time to propagate; retry if role data appears stale after an update." }, { "slug": "FACEBOOK_GET_PAGE_TAGGED_POSTS", "name": "Get Page Tagged Posts", "description": "Retrieves posts where a Facebook Page is tagged or mentioned. Use when monitoring brand mentions or tracking posts that tag your Page but don't appear on your Page's own feed." }, { "slug": "FACEBOOK_GET_PAGE_VIDEOS", "name": "Get Page Videos", "description": "Retrieves videos from a Facebook Page." }, { "slug": "FACEBOOK_GET_POST", "name": "Get Post", "description": "Retrieves details of a specific Facebook post." }, { "slug": "FACEBOOK_GET_POST_INSIGHTS", "name": "Get Post Insights", "description": "Retrieves analytics and insights for a specific Facebook post. Returns metrics like impressions, clicks, and engagement data. Very new posts may return empty metric values; allow a short delay before querying and treat absent fields as partial data." }, { "slug": "FACEBOOK_GET_POST_REACTIONS", "name": "Get Post Reactions", "description": "Retrieves reactions (like, love, wow, etc.) for a Facebook post. Very recent posts may return empty or partial reactions data; treat missing fields as incomplete coverage, not an error." }, { "slug": "FACEBOOK_GET_SCHEDULED_POSTS", "name": "Get Scheduled Posts", "description": "Retrieves scheduled and unpublished posts for a Facebook Page. Results are cursor-paginated; follow pagination cursors to retrieve all results beyond the limit. When searching for posts near a specific time, filter to a narrow (~±5 minutes) window. Use this tool to check for existing entries before scheduling new posts to avoid duplicates." }, { "slug": "FACEBOOK_GET_USER_PAGES", "name": "Get User Pages (Deprecated)", "description": "DEPRECATED: Use FACEBOOK_LIST_MANAGED_PAGES instead. Retrieves Facebook Pages the user manages (excludes personal profiles, groups, and non-Page entities); an empty `data` array means no manageable Pages exist. Requires `pages_show_list` scope; missing scopes yield empty `data` or OAuthException code 200. Results paginate ~100 items per page — follow `paging.cursors.after` or `next` until exhausted." }, { "slug": "FACEBOOK_LIKE_POST_OR_COMMENT", "name": "Add Reaction", "description": "Adds a LIKE reaction to a Facebook post or comment. Note: Due to API limitations, only LIKE reactions can be added programmatically. This action is user-visible and irreversible — confirm with the user before calling." }, { "slug": "FACEBOOK_LIST_MANAGED_PAGES", "name": "List Managed Pages", "description": "Retrieves a list of Facebook Pages that the user manages (not personal profiles), including page details, access tokens, and tasks. Requires `pages_show_list` or `pages_read_engagement` OAuth scopes; missing scopes silently return empty results rather than an error. An empty `data` array means the user manages no Pages. Results are paginated via `paging.cursors`; follow `paging.next` until absent to retrieve all Pages when count exceeds `limit`. Graph API throttling (error codes 4, 17, 613) can occur during pagination — use exponential backoff." }, { "slug": "FACEBOOK_MARK_MESSAGE_SEEN", "name": "Mark Message Seen", "description": "Marks a user's message as seen by the Page, visibly updating the read status in the user's conversation. Note: This action requires an active messaging session with the user. Facebook's messaging policy requires that users have messaged the Page within the last 24 hours for sender actions to work." }, { "slug": "FACEBOOK_PUBLISH_SCHEDULED_POST", "name": "Publish Scheduled Post", "description": "Publishes a previously scheduled or unpublished Facebook post immediately. This action takes a scheduled or unpublished post and publishes it immediately by setting is_published to true. The post must have been previously created with published=false or with a scheduled_publish_time. Requirements: - The post must exist and be in an unpublished/scheduled state - The user must have admin access to the page that owns the post - The app must have pages_manage_posts permission" }, { "slug": "FACEBOOK_REMOVE_PAGE_TASK", "name": "Remove Page Task", "description": "Removes a user's tasks/access from a specific Facebook Page. Caller must have admin-level rights on the Page. Operates on one page_id at a time; repeat for each page if removing from multiple pages. Partial access may remain if only some tasks are revoked." }, { "slug": "FACEBOOK_RESCHEDULE_POST", "name": "Reschedule Post", "description": "Changes the scheduled publish time of an unpublished Facebook post. This action updates the scheduled_publish_time of a previously scheduled post. The post must have been created with published=false and a scheduled_publish_time." }, { "slug": "FACEBOOK_SEARCH_PAGES", "name": "Search Pages", "description": "Searches for Facebook Pages based on a query string. Returns pages matching the search criteria with requested fields. DEPRECATION WARNING: The /pages/search endpoint was deprecated by Facebook in 2019 and is now ONLY available to Workplace by Meta apps. Standard Facebook apps will receive Error #10 (permission error) regardless of which permissions or features have been granted. For Workplace apps only - requires one of: - 'pages_read_engagement' permission - 'Page Public Content Access' feature - 'Page Public Metadata Access' feature Standard Facebook apps should use alternative methods to discover pages, such as: - Direct page ID lookup via /{page-id} endpoint - User's managed pages via /me/accounts endpoint Reference: https://developers.facebook.com/docs/apps/review/feature#reference-PAGES_ACCESS. Results include only Facebook Pages; personal profiles, groups, and other entity types are excluded." }, { "slug": "FACEBOOK_SEND_MEDIA_MESSAGE", "name": "Send Media Message", "description": "Sends a media message (image, video, audio, or file) from the Page to a user." }, { "slug": "FACEBOOK_SEND_MESSAGE", "name": "Send Message", "description": "Sends a text message from a Facebook Page (not personal profiles) to a user via Messenger. Requires explicit user confirmation before calling, as this action delivers a message to a real end user." }, { "slug": "FACEBOOK_TOGGLE_TYPING_INDICATOR", "name": "Toggle Typing Indicator", "description": "Shows or hides the typing indicator for a user in Messenger." }, { "slug": "FACEBOOK_UNLIKE_POST_OR_COMMENT", "name": "Unlike Post or Comment", "description": "Removes a like from a Facebook post or comment." }, { "slug": "FACEBOOK_UPDATE_COMMENT", "name": "Update Comment", "description": "Updates an existing Facebook comment. IMPORTANT: This action requires a Page Access Token. The comment must belong to a post on a Page that you manage. Use the page_id parameter to ensure the correct page token is used, especially if you manage multiple pages." }, { "slug": "FACEBOOK_UPDATE_PAGE_SETTINGS", "name": "Update Page Settings", "description": "Updates settings for a specific Facebook Page. Requires the authenticated user to have MANAGE and CREATE_CONTENT tasks for the target page; verify roles via FACEBOOK_GET_PAGE_ROLES. Not all fields (about, description, general_info, etc.) are available for every Page category." }, { "slug": "FACEBOOK_UPDATE_POST", "name": "Update Post", "description": "Updates an existing Facebook Page post." }, { "slug": "FACEBOOK_UPLOAD_PHOTO", "name": "Upload Photo", "description": "DEPRECATED: Use FACEBOOK_CREATE_PHOTO_POST instead. Uploads a photo file directly to a Facebook Page. Supports local file upload up to 10MB." }, { "slug": "FACEBOOK_UPLOAD_PHOTOS_BATCH", "name": "Upload Photos Batch", "description": "Uploads multiple photo files in batch to a Facebook Page or Album. Uses Facebook's batch API for efficient multi-photo upload. Maximum 50 photos per batch." }, { "slug": "FACEBOOK_UPLOAD_VIDEO", "name": "Upload Video (Deprecated)", "description": "DEPRECATED: Use CreateVideoPost instead. Uploads a video file directly to a Facebook Page. Supports local file upload. For large videos (>100MB), uses resumable upload. After upload completes, the video enters a processing/pending state; do not reference or schedule it until processing finishes." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "facebook_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "public_profile,email,pages_show_list,pages_read_engagement,pages_manage_posts,pages_manage_engagement,pages_read_user_content,pages_manage_metadata,pages_messaging,read_insights,business_management" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "tinypng", "name": "TinyPNG", "logo": "https://logos.composio.dev/api/tinypng", "description": "TinyPNG uses smart lossy compression techniques to reduce the file size of your WebP, JPEG, and PNG files.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "TINYPNG_GET_COMPRESSION_COUNT", "name": "Get TinyPNG Compression Count", "description": "Tool to retrieve the number of compressions made this month. Use when you need to monitor your TinyPNG API usage." }, { "slug": "TINYPNG_SHRINK_AND_GET_IMAGE_ID", "name": "Shrink and get image ID", "description": "Tool to shrink an image and return its TinyPNG image ID. Use when you need only the compressed image identifier from the API response Location header." }, { "slug": "TINYPNG_TINIFY_COMPRESS_AND_STORE_IN_AZURE", "name": "Compress and Store Image in Azure", "description": "Compress an image using the Tinify API and upload the optimized result directly to Azure Blob Storage in a single operation. The image is first compressed by Tinify, then uploaded to the specified Azure Blob URL using the provided SAS token. Use this when you need to optimize images and store them in Azure without intermediate steps. Supports JPEG, PNG, and WebP image formats." }, { "slug": "TINYPNG_TINIFY_OUTPUT", "name": "Download Compressed Image", "description": "Tool to retrieve a compressed image by its image ID. Use after compressing an image to download the result." }, { "slug": "TINYPNG_TRANSFORM_IMAGE", "name": "Transform Compressed Image", "description": "Tool to transform a compressed image by resizing, converting format, preserving metadata, or storing to cloud storage. Use when you have an image ID from a previous compression and need to apply transformations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tinypng_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your TinyPNG API key from https://tinypng.com/developers", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mopinion", "name": "Mopinion", "logo": "https://logos.composio.dev/api/mopinion", "description": "Mopinion captures user feedback across websites and apps, providing insights, analytics, and reporting to optimize user experiences and drive conversions", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOPINION_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve the current authenticated account information. Use to verify authentication and get account details." }, { "slug": "MOPINION_GET_DATASET_BY_ID", "name": "Get Dataset by ID", "description": "Retrieve complete metadata for a specific Mopinion dataset (feedback form) by its ID. Returns dataset properties including name, associated report ID, data source type, and description. Use this action when you need detailed information about a specific dataset/form. To discover available dataset IDs, use the List Datasets action first. This is a read-only operation that does not modify any data." }, { "slug": "MOPINION_GET_DATASET_FEEDBACK", "name": "Get Dataset Feedback", "description": "Retrieve feedback items (survey responses) for a specific dataset/form with optional pagination and filtering. Use this action to fetch multiple feedback entries from a dataset. Each feedback item contains the survey responses including custom fields, scores, metadata, and timestamps. Supports pagination for large result sets and filtering by field values. For retrieving a single feedback item by ID, use GET_DATASET_FEEDBACK_BY_ID instead." }, { "slug": "MOPINION_GET_DATASET_FEEDBACK_BY_ID", "name": "Get Dataset Feedback By ID", "description": "Retrieves a single feedback item by its unique identifier from a specific dataset. Use this tool when you need detailed information about a specific feedback item. First obtain the dataset_id using List Datasets, then get feedback_id values using Get Dataset Feedback. **Important Notes:** - Returns a warning in metadata if the feedback item doesn't exist (with null field values) - Returns 404 error if the dataset_id itself is invalid or inaccessible - The response includes feedback fields, tags, scores, timestamps, and associated metadata" }, { "slug": "MOPINION_GET_DATASET_FIELDS", "name": "Get Dataset Field Definitions", "description": "Tool to retrieve field definitions for a dataset. Use when you need the schema of a dataset's fields." }, { "slug": "MOPINION_GET_DEPLOYMENT_BY_ID", "name": "Get Deployment by ID", "description": "Retrieves detailed configuration for a specific feedback form deployment by its ID. Returns deployment rules, trigger conditions, scheduling settings, target URLs, and active status. Use this to understand when, where, and how a feedback form is displayed to users." }, { "slug": "MOPINION_GET_DEPLOYMENTS", "name": "Get Deployments", "description": "Tool to list all deployments for the authenticated Mopinion account. Use after setting up authentication." }, { "slug": "MOPINION_GET_REPORT_BY_ID", "name": "Get Report By ID", "description": "Retrieves detailed information about a specific Mopinion report by its ID. Returns comprehensive report details including name, description, language, creation date, and all associated datasets with their metadata. Use this when you need full information about a specific report. To find available report IDs, use the Get Reports action first. Example use case: Get complete details of report 22511 to understand its datasets and configuration." }, { "slug": "MOPINION_GET_REPORT_FEEDBACK", "name": "Get Report Feedback", "description": "Tool to retrieve feedback items for a report. Use when you need paginated and filtered feedback entries for analysis." }, { "slug": "MOPINION_GET_REPORT_FIELDS", "name": "Get Report Fields", "description": "Tool to retrieve field definitions for a specific report. Use when you need the schema of a report's feedback fields before constructing or analyzing forms." }, { "slug": "MOPINION_GET_ROOT", "name": "Get API Root", "description": "Check Mopinion API availability and get version information. Pings the API health check endpoint (/ping) and returns status code, 'pong' response, and current API version. Use this to verify the API is reachable and operational." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mopinion_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Public Key", "type": "string", "description": "The public key (ID) for the application communicating with the API. Obtained from Mopinion Suite at Settings » Feedback Api (classic) or Integrations » Feedback API (Raspberry)", "required": true, "default": null }, { "name": "generic_id", "displayName": "Private Key", "type": "string", "description": "The private key used for obtaining the signature-token.", "required": true, "default": null } ], "optional": [ { "name": "generic_id_2", "displayName": "Token", "type": "string", "description": "The signature token used to create encrypted authentication tokens. Can be obtained via the /token endpoint using public_key and private_key. Keep this secret", "required": false, "default": null } ] } } } ] }, { "slug": "crustdata", "name": "Crustdata", "logo": "https://logos.composio.dev/api/crustdata", "description": "CrustData is an AI-powered data intelligence platform that provides real-time company and people data via APIs and webhooks, empowering B2B sales teams, AI SDRs, and investors to act on live signals", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CRUSTDATA_ENRICH_PERSON_SCREENER", "name": "Enrich person screener", "description": "The screener_person_enrich endpoint enriches person data by providing additional information based on the given query. It allows users to retrieve detailed information about individuals, which can be useful for various purposes such as customer profiling, lead generation, or data verification. This endpoint should be used when you need to augment existing person data with additional details or verify information about a specific individual. The enrichment process draws from CrustData's extensive database and real-time data sources to provide up-to-date and comprehensive information. Users can customize the response by specifying the exact fields they need, optimizing data transfer and processing. Note that the availability and accuracy of enriched data may vary depending on the input provided and the information available in CrustData's systems." }, { "slug": "CRUSTDATA_FETCH_HEADCOUNT_BY_FACET_TIMESERIES", "name": "Fetch headcount by facet timeseries", "description": "Retrieves headcount data as a timeseries with faceted analysis capabilities. This endpoint allows users to fetch detailed headcount information over time, applying complex filters, pagination, and sorting. It's particularly useful for HR analytics, workforce planning, and organizational growth analysis. The endpoint supports nested logical operations in its filtering mechanism, enabling highly specific queries. Users can paginate through large datasets and sort results based on multiple criteria. While powerful, this endpoint requires careful construction of the filters parameter to ensure accurate data retrieval. It should be used when detailed, time-based headcount analysis is needed, but may not be suitable for simple, non-time-series headcount queries or for real-time data needs due to its complexity." }, { "slug": "CRUSTDATA_FETCH_INVESTOR_PORTFOLIO_DATA", "name": "Fetch investor portfolio data", "description": "Retrieves comprehensive investor portfolio data from the Data Lab section of the CrustData API. This endpoint provides access to detailed information about investor portfolios, including investment holdings, performance metrics, and other relevant data points. It is designed to support investment analysis, portfolio management, and decision-making processes in a B2B context. The endpoint should be used when detailed investor portfolio information is required for tasks such as investment screening, performance tracking, or generating analytical reports. It's important to note that this endpoint may not provide real-time data and the frequency of updates should be verified in the API documentation. Additionally, users should be aware of any data privacy and usage restrictions that may apply to the retrieved investor information." }, { "slug": "CRUSTDATA_FILTER_DECISION_MAKERS_DATA", "name": "Filter decision makers data", "description": "Filters and retrieves decision maker data from the CrustData B2B SaaS integration platform based on complex criteria. This endpoint allows for advanced querying of decision maker information using a combination of filters, pagination, sorting, and title-based filtering. It's designed for scenarios where specific subsets of decision maker data need to be extracted or analyzed. The endpoint supports nested logical conditions in filters, enabling highly targeted data retrieval. Use this when you need to perform detailed analysis or reporting on decision makers across various organizations or industries. Note that the endpoint requires careful structuring of the request body to effectively utilize its advanced filtering capabilities." }, { "slug": "CRUSTDATA_POST_FUNDING_MILESTONE_TIME_SERIES_DATA", "name": "Post funding milestone timeseries data", "description": "The FundingMilestoneTimeseries endpoint retrieves time-series data related to funding milestones for companies. It allows for complex querying of funding events over time, with flexible filtering, pagination, and sorting options. This endpoint is particularly useful for analyzing funding trends, comparing company funding histories, or tracking specific funding events across multiple organizations. The data returned is based on the specified filters and can be tailored to focus on particular time ranges, funding stages, or company characteristics. While it provides comprehensive funding milestone data, it does not include detailed company information beyond what's directly related to funding events." }, { "slug": "CRUSTDATA_POST_HEADCOUNT_TIMESERIES_DATA", "name": "Post headcount timeseries data", "description": "Retrieves filtered and sorted headcount timeseries data from the CrustData Data Lab. This endpoint allows for complex querying of historical headcount information, enabling users to analyze workforce trends over time. It supports advanced filtering with nested conditions, pagination for handling large datasets, and customizable sorting. Ideal for generating reports, conducting workforce analysis, or integrating headcount data into third-party business intelligence tools. Note that the specifics of the returned data structure are not provided in the given schema." }, { "slug": "CRUSTDATA_POST_JOB_LISTINGS_TABLE_DATA", "name": "Post job listings table data", "description": "This endpoint retrieves filtered and sorted job listings data for specified company tickers from a chosen dataset in the CrustData platform. It allows for highly customizable queries with complex filtering conditions, pagination, and sorting options. The endpoint is designed for bulk data retrieval and analysis of job market trends across multiple companies. Use this endpoint when you need to fetch and analyze job listing data for specific companies, apply custom filters to narrow down the results, or when you want to paginate through large sets of job data. It's particularly useful for market research, competitive analysis, or tracking employment trends in specific industries or companies. Note that this endpoint requires careful construction of the request body, especially for the filters parameter, which can support nested logical conditions. The performance and response time may vary depending on the complexity of the filters and the amount of data requested." }, { "slug": "CRUSTDATA_POST_WEB_TRAFFIC_DATA", "name": "Post web traffic data", "description": "Retrieves filtered and sorted web traffic data from the CrustData platform. This endpoint allows for complex querying of web traffic information using nested conditions and logical operators. It supports pagination for handling large datasets and provides sorting capabilities for customized data presentation. Use this endpoint when you need to analyze web traffic patterns, filter data based on specific criteria, or extract insights from your web analytics. The endpoint is particularly useful for generating reports, identifying trends, or monitoring key performance indicators related to web traffic." }, { "slug": "CRUSTDATA_RETRIEVE_LINKED_IN_POSTS", "name": "Retrieve linkedin posts", "description": "Retrieves LinkedIn posts for a specified company using CrustData's screener functionality. This endpoint allows users to gather social media data from LinkedIn, which can be used for analyzing company activity, engagement, and sentiment. It's particularly useful for B2B marketers, sales professionals, and analysts who need insights into a company's social media presence and content strategy. The endpoint supports filtering by date range and customizing the response fields, making it versatile for various use cases such as competitive analysis, lead generation, and market research. Note that the availability and completeness of data may depend on the company's LinkedIn activity and privacy settings." }, { "slug": "CRUSTDATA_SCREENER_COMPANY_INFORMATION", "name": "Screener company information", "description": "The GetCompanyScreener endpoint allows users to search and filter companies based on various criteria such as headcount, growth rate, funding, and more. It provides a powerful way to identify specific companies that meet predefined conditions. This endpoint is particularly useful for tasks like lead generation, market research, and competitive analysis. The endpoint returns a list of companies matching the specified criteria, with each company entry containing key information such as name, industry, headcount, funding details, and growth metrics. Users can customize their search using multiple filters, sort the results, and paginate through large result sets. Note that the accuracy of the data depends on CrustData's real-time data collection and update frequency." }, { "slug": "CRUSTDATA_SCREEN_METRICS_AND_FILTER_CONDITIONS", "name": "Screen metrics and filter conditions", "description": "The ScreenData endpoint enables advanced data screening and filtering on the CrustData platform. It allows users to construct complex queries for retrieving specific datasets based on custom metrics, filtering conditions, and sorting criteria. Use this endpoint for targeted data extraction, custom reporting, or data analysis within the B2B SaaS integration ecosystem. Note that while powerful, complex queries may impact performance with large datasets." }, { "slug": "CRUSTDATA_SEARCH_COMPANIES_WITH_FILTERS", "name": "Search companies with filters", "description": "The CompanySearch endpoint enables users to search and filter companies using the CrustData API. It provides a powerful mechanism for querying company data based on multiple criteria, supporting complex filtering and pagination. This endpoint is ideal for applications that need to retrieve specific sets of company information, such as financial analysis tools, market research platforms, or business intelligence systems. The search functionality allows for precise data retrieval, enhancing the efficiency of data integration and analysis processes in B2B scenarios. Users should be aware that the endpoint requires careful construction of filter objects and proper use of pagination to ensure optimal performance and accurate results." }, { "slug": "CRUSTDATA_SEARCH_FOR_JOB_ID_IN_SCREENER", "name": "Search for job id in screener", "description": "The screener_person_search endpoint allows users to search for persons associated with a specific job ID within the CrustData B2B SaaS integration platform. This POST request accepts a JSON payload containing a job_id and returns relevant person data linked to that job. It's particularly useful for scenarios where you need to quickly retrieve all individuals connected to a particular job or project. The endpoint is part of the platform's screening functionality, enabling efficient filtering of person records based on job-related criteria. While it provides a focused search based on job ID, it may not offer advanced filtering options or return comprehensive job details." }, { "slug": "CRUSTDATA_SEARCH_LINKED_IN_POSTS_BY_KEYWORD", "name": "Search linkedin posts by keyword", "description": "This endpoint enables searching for LinkedIn posts using a specific keyword. It allows users to retrieve relevant content from LinkedIn by specifying a search term, along with options for pagination, sorting, and filtering by post date. The function is particularly useful for conducting market research, competitor analysis, or tracking industry trends on the LinkedIn platform. Users can fine-tune their search results by choosing how to sort the posts (by relevance or date) and selecting a specific time frame for the content. The endpoint returns paginated results, allowing for efficient navigation through large sets of matching posts." }, { "slug": "CRUSTDATA_VALIDATE_CREDENTIAL", "name": "Validate API Credentials", "description": "Validate Crustdata API credentials by testing authentication with a lightweight API call. Use this action when you need to verify that API credentials are valid and properly configured before making other API calls. Returns validation status and a descriptive message about the credential state." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "crustdata_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Auth Token", "type": "string", "description": "Enter the Auth Token for your Crustdata account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lever_sandbox", "name": "Lever Sandbox", "logo": "https://logos.composio.dev/api/lever_sandbox", "description": "Lever Sandbox is a test environment for Lever's ATS, allowing organizations to experiment with configurations, workflows, and integrations without affecting production data", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "lever_oauth2_sandbox", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "files:write:admin,form_templates:write:admin,forms:write:admin,interviews:write:admin,notes:write:admin,offers:read:admin,opportunities:write:admin,panels:write:admin,postings:write:admin,referrals:read:admin,requisition_fields:write:admin,requisitions:write:admin,resumes:read:admin,sources:read:admin,stages:read:admin,tags:read:admin,tasks:read:admin,uploads:write:admin,users:write:admin" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "lever_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key (Base64)", "type": "string", "description": "Your Lever API key, Base64 encoded", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "front", "name": "Front", "logo": "https://logos.composio.dev/api/front", "description": "Front is a shared inbox and collaboration platform that centralizes customer communications from multiple channels, enabling teams to manage emails, chats, and more", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "front_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Front API token for authentication. Generate it from your Front settings under API tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "webex", "name": "Webex", "logo": "https://logos.composio.dev/api/webex", "description": "Webex is a Cisco-powered video conferencing and collaboration platform offering online meetings, webinars, screen sharing, and team messaging", "category": "video conferencing", "authSchemes": [ "OAUTH2" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEBEX_CREATE_TEAM", "name": "Create Team", "description": "Creates a new Webex team and automatically adds the authenticated user as a member. Teams are used to organize and group multiple rooms (spaces) under a common umbrella. Use this when you need to create a collaborative workspace for a project, department, or any group that needs multiple related discussion spaces. Note: The creator is automatically added as a team member and can manage team memberships. Use the Team Memberships API to add additional members after creation." }, { "slug": "WEBEX_GET_TEAM_DETAILS", "name": "Get Team Details", "description": "Tool to retrieve details for a specific team by teamId. Use when you need full metadata of a team before performing team-related operations." }, { "slug": "WEBEX_LIST_TEAMS", "name": "List Teams", "description": "Lists all teams the authenticated user belongs to. Teams are groups of people with shared rooms visible to all members. Use this when you need to find available teams, get team IDs for other operations, or discover which teams a user has access to. Results are ordered by creation date (newest first) and can be paginated using the max parameter." }, { "slug": "WEBEX_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Lists all webhooks registered for the authenticated user or organization. Supports optional filtering by maximum results and ownership type (creator vs org-wide)." }, { "slug": "WEBEX_MESSAGING_CREATE_MESSAGE", "name": "Create Message", "description": "Tool to post a message to a Webex room or person. Use when you have a target roomId or private recipient and want to send text, markdown, files, or card attachments." }, { "slug": "WEBEX_MESSAGING_CREATE_ROOM", "name": "Create Room", "description": "Creates a new Webex room for team collaboration. The authenticated user is automatically added as a member. Use this to create group rooms for team discussions or associate rooms with existing teams. To create a 1:1 room, use the Create Message action with toPersonId/toPersonEmail instead. Note: Team rooms cannot be moved after creation. Bots cannot simultaneously create and classify rooms." }, { "slug": "WEBEX_MESSAGING_CREATE_TEAM_MEMBERSHIP", "name": "Create Team Membership", "description": "Tool to add a person to a Webex team by personId or personEmail. Use when granting a user access to a team; requires teamId and one of personId or personEmail." }, { "slug": "WEBEX_MESSAGING_DELETE_MEMBERSHIP", "name": "Delete Membership", "description": "Tool to delete a Webex membership by its unique identifier. Use when you need to remove a member from a space after confirming the membership exists. Example: \"Delete the membership with ID Y2lzY29zcGFjMDczNzA2Njg0ZDliY2YxNDE4NDQyYzQ5NDQzOTExYTk4\"." }, { "slug": "WEBEX_MESSAGING_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a Webex message by its unique identifier. Use after confirming the messageId to remove unintended or obsolete messages. Example: \"Delete the message with ID Y2lzY29zcGFyazovL21lc3NhZ2UvYWJjMTIzNDU2Nzg5\"." }, { "slug": "WEBEX_MESSAGING_DELETE_ROOM", "name": "Delete Room", "description": "Deletes a Webex room by its ID. Deleted rooms cannot be recovered. Note: Non-moderators will be removed from the room instead of deleting it (as a safety measure). Rooms that are part of a team will be archived instead of deleted. Use this when you need to permanently remove a room or leave a room." }, { "slug": "WEBEX_MESSAGING_GET_MEMBERSHIP_DETAILS", "name": "Get Membership Details", "description": "Tool to retrieve details for a specific membership. Use when you need metadata for a membership by its ID." }, { "slug": "WEBEX_MESSAGING_GET_MESSAGE_DETAILS", "name": "Get Message Details", "description": "Tool to retrieve details for a specific message. Use when you need full content and metadata by message ID." }, { "slug": "WEBEX_MESSAGING_GET_TEAM_MEMBERSHIP_DETAILS", "name": "Get Team Membership Details", "description": "Tool to retrieve details for a specific team membership. Use when you need metadata for a team membership by its ID." }, { "slug": "WEBEX_MESSAGING_LIST_MEMBERSHIPS", "name": "List Memberships", "description": "List memberships in Webex rooms. When called without parameters, returns memberships for all rooms the authenticated user belongs to. Use roomId to list all members of a specific room. Use personId or personEmail with roomId to check if a specific person is a member of a room. Supports filtering by teamId and limiting results with max parameter." }, { "slug": "WEBEX_MESSAGING_LIST_MESSAGES", "name": "List Messages", "description": "Tool to list messages in a room. Use when you need to retrieve chat history filtered by room, time window, or mentions." }, { "slug": "WEBEX_MESSAGING_LIST_ROOMS", "name": "List Rooms", "description": "Tool to list rooms the authenticated user belongs to. Use after authentication when needing to retrieve spaces filtered by team, type, or sorted. Example: \"List my group rooms sorted by last activity.\"" }, { "slug": "WEBEX_MESSAGING_LIST_TEAM_MEMBERSHIPS", "name": "List Team Memberships", "description": "Tool to list all memberships for a specific team. Use when you need to retrieve all members of a team, including their roles (moderator status). Requires a valid teamId." }, { "slug": "WEBEX_PEOPLE_GET_PERSON", "name": "Get Person Details", "description": "Retrieves detailed profile information for a specific person by their ID. Returns comprehensive user details including contact information, organizational data, presence status, and Webex Calling information. Use when you need full profile details for a known person ID. To find person IDs, use the List People action first." }, { "slug": "WEBEX_PEOPLE_LIST_PEOPLE", "name": "List People", "description": "Tool to list people in your organization. Use when you need to retrieve people filtered by email, display name, IDs, roles, or location." }, { "slug": "WEBEX_ROOMS_GET_ROOM_DETAILS", "name": "Get Room Details", "description": "Tool to retrieve details for a specific room. Use when you need full metadata of a room before posting messages or updating settings." }, { "slug": "WEBEX_UPDATE_MEMBERSHIP", "name": "Update Membership", "description": "Updates a Webex room membership by ID to change moderator or monitor status. Use this to grant or revoke moderator privileges, or to enable/disable room monitoring for a member. Note: Assigning moderator status requires special account permissions; operations may fail with 403 Forbidden if the authenticated user lacks the necessary entitlements." }, { "slug": "WEBEX_UPDATE_ROOM", "name": "Update Room", "description": "Update a room's title, lock status, or team association. The title parameter is always required by the Webex API - if you're only updating isLocked or teamId, you must still provide the current room title." }, { "slug": "WEBEX_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update a team's name by teamId. Use when you need to rename a Webex team. Example: \"Change team 12345 name to 'Project X Team'\"." }, { "slug": "WEBEX_WEBHOOKS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates a Webex webhook to receive real-time event notifications via HTTP POST requests to your specified URL. Use this tool to register for automated notifications when resources (messages, rooms, memberships, meetings, etc.) are created, updated, deleted, or undergo other state changes. Webhooks enable event-driven integrations without polling. Important: The webhook will be automatically disabled if your target URL fails to respond with HTTP 2xx status codes 100 times within five minutes. Requires 'read' scope for the monitored resource type." }, { "slug": "WEBEX_WEBHOOKS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use when you need to remove an existing webhook by its ID after confirming the identifier." }, { "slug": "WEBEX_WEBHOOKS_GET_WEBHOOK", "name": "Get Webhook Details", "description": "Retrieves detailed information about a specific Webex webhook by its ID. Use this action to: - Inspect a webhook's configuration (target URL, resource, event type, filters) - Verify webhook status (active/inactive) - Check webhook ownership and security settings (secret, ownedBy) - Get webhook metadata (creation date, creator, organization) The webhook must exist and be accessible with your current credentials. Returns 404 error if the webhook ID is invalid or you don't have permission to view it." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "webex_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "spark:all" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "brandfetch", "name": "Brandfetch", "logo": "https://logos.composio.dev/api/brandfetch", "description": "Brandfetch offers an API that retrieves company logos, brand colors, and other visual assets, helping marketers and developers maintain consistent branding across apps", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BRANDFETCH_GET_BRAND_INFO", "name": "Get Brand Information", "description": "Retrieves brand information including logos, colors, fonts, and company details using a domain, Brand ID, ISIN, or stock ticker. Logo data may be absent for some domains — do not assume logos are always returned. The response includes multiple logo types (e.g., icon, logo) and themes; explicitly select the desired type and size rather than defaulting to the first URL." }, { "slug": "BRANDFETCH_GET_GRAPHQL_VERSION", "name": "Get GraphQL API Version", "description": "Tool to retrieve the Brandfetch GraphQL API version. Use when you need to check the current API version via the GraphQL endpoint." }, { "slug": "BRANDFETCH_GET_TAXONOMY", "name": "Get Brandfetch Taxonomy", "description": "Tool to retrieve Brandfetch's taxonomy via GraphQL API. Use this to get a complete list of industries, countries, and geographic regions used in Brandfetch's classification system. The taxonomy includes hierarchical industry data with parent-child relationships." }, { "slug": "BRANDFETCH_GET_TRANSACTION_INFO", "name": "Get Transaction Info", "description": "This tool converts payment transaction labels into detailed merchant brand information. It takes a transaction label (like what you see on your credit card statement) and returns comprehensive brand data (including logos, colors, fonts, and company information). It is useful for identifying merchants and enriching transaction data with detailed brand information." }, { "slug": "BRANDFETCH_LIST_SUBSCRIBABLE_EVENTS", "name": "List Subscribable Events", "description": "Tool to retrieve all available webhook event types that can be subscribed to via the Brandfetch GraphQL API. Returns event names and descriptions for webhook configuration. Available events include brand.claimed, brand.deleted, brand.updated, brand.company.updated, and brand.verified." }, { "slug": "BRANDFETCH_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a list of all webhooks via GraphQL API. Use when you need to query webhook configurations and their statuses in the Brandfetch system." }, { "slug": "BRANDFETCH_SEARCH_BRANDS", "name": "Search Brands", "description": "Searches for brands by name and returns matching brand information including URLs and icons, enabling rich autocomplete experiences. Use this tool first to resolve a vague name or ticker to a precise domain or brandId before calling BRANDFETCH_GET_BRAND_INFO or BRANDFETCH_GET_LOGO. Results may include multiple candidates; disambiguate using the domain, geography, qualityScore, and verified fields rather than defaulting to the first result. Returns empty results for new or niche brands." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API Key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API Key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "canva", "name": "Canva", "logo": "https://logos.composio.dev/api/canva", "description": "Canva offers a drag-and-drop design suite for creating social media graphics, presentations, and marketing materials with prebuilt templates and a vast element library", "category": "images & design", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CANVA_ACCESS_USER_SPECIFIC_BRAND_TEMPLATES_LIST", "name": "Access user specific brand templates list", "description": "Lists brand templates available to the user (Canva Enterprise only). This endpoint retrieves all brand templates the user has access to. Brand templates are pre-designed layouts with variable data fields that can be populated programmatically using the autofill API. Returns template metadata including IDs, names, and dataset schemas." }, { "slug": "CANVA_CREATE_ASSET_UPLOAD_JOB", "name": "Create Asset Upload Job", "description": "Uploads an asset file to the user's Canva content library. This endpoint initiates an asynchronous upload job for images, videos, audio files, PDFs, or fonts. Returns a job ID to track the upload progress. Once complete, the asset can be used in designs, referenced by its asset ID, and managed through other asset endpoints. IMPORTANT: This is an async operation. Use CANVA_FETCH_ASSET_UPLOAD_JOB_STATUS to poll the job status until it reaches 'success' or 'failed' status." }, { "slug": "CANVA_CREATE_CANVA_DESIGN_EXPORT_JOB", "name": "Create Canva Design Export Job (Deprecated)", "description": "DEPRECATED: Use CANVA_POST_EXPORTS instead. Exports a Canva design to various file formats. This endpoint initiates an asynchronous export job for designs. Supports image formats (PNG, JPG, GIF), documents (PDF, PPTX), and video (MP4). Each format has specific configuration options like dimensions, quality, and page selection. IMPORTANT: This is an async operation. Use GET_DESIGN_EXPORT_JOB_RESULT to poll the job status until completion and retrieve the download URLs for the exported files." }, { "slug": "CANVA_CREATE_CANVA_DESIGN_WITH_OPTIONAL_ASSET", "name": "Create canva design with optional asset (Deprecated)", "description": "DEPRECATED: Use CANVA_POST_DESIGNS instead. Creates a new Canva design with specified dimensions or from an asset. This endpoint creates a design using either a preset type (doc, presentation, whiteboard), custom dimensions, or by importing an image asset. Returns the design ID, URLs for editing and viewing, owner info, and metadata. The design can be immediately accessed and edited." }, { "slug": "CANVA_CREATE_COMMENT_REPLY_IN_DESIGN", "name": "Create comment reply in design", "description": "This preview API allows replying to comments within a design on Canva, with a limit of 100 replies per comment. Users should note potential unannounced changes, and that preview APIs are not eligible for public integrations." }, { "slug": "CANVA_CREATE_DESIGN_COMMENT_IN_PREVIEW_API", "name": "Create design comment in preview api", "description": "Creates a new comment thread on a Canva design. This preview API allows adding text comments to designs for collaboration and feedback. Returns the created comment with ID, author info, and timestamp. Comments can be replied to using the comment reply endpoint." }, { "slug": "CANVA_CREATE_DESIGN_IMPORT_JOB", "name": "Create Design Import Job", "description": "Imports an external file as a new Canva design. This endpoint converts documents (PDF, Word, PowerPoint, Excel) and design files (PSD, AI) into editable Canva designs. The import runs asynchronously and returns a job ID to track progress and retrieve the created design. IMPORTANT: This is an async operation. Use CANVA_RETRIEVE_DESIGN_IMPORT_JOB_STATUS to poll the job status until it reaches 'success' or 'failed' to get the final design ID." }, { "slug": "CANVA_CREATE_DESIGN_RESIZE_JOB", "name": "Create Design Resize Job", "description": "Creates a resized copy of an existing design (Canva Pro/Enterprise only). This endpoint creates a new design with different dimensions from an existing one. The resize operation runs asynchronously and preserves content where possible. Returns a job ID to track progress and retrieve the new design once complete. IMPORTANT: This is an async operation. Use CANVA_RETRIEVE_DESIGN_RESIZE_JOB_STATUS to poll the job status until completion to get the resized design ID and access URLs." }, { "slug": "CANVA_CREATE_URL_ASSET_UPLOAD_JOB", "name": "Create URL Asset Upload Job", "description": "Tool to create an asynchronous Canva asset import job from a public URL. Use when you need to import an asset into Canva directly from a publicly accessible URL without S3 choreography." }, { "slug": "CANVA_DELETE_ASSET_BY_ID", "name": "Delete asset by id", "description": "You can delete an asset by specifying its `assetId`. This operation mirrors the behavior in the Canva UI. Deleting an item moves it to the trash. Deleting an asset doesn't remove it from designs that already use it." }, { "slug": "CANVA_EXCHANGE_OAUTH20_ACCESS_OR_REFRESH_TOKEN", "name": "Exchange oauth 2 0 access or refresh token", "description": "The OAuth 2.0 endpoint issues time-limited (4-hour) access tokens of up to 4KB for user authorization via codes or refresh tokens. It requires client ID/secret for authentication." }, { "slug": "CANVA_FETCH_ASSET_UPLOAD_JOB_STATUS", "name": "Fetch asset upload job status", "description": "Polls for asset upload job completion status. Use this after CANVA_CREATE_ASSET_UPLOAD_JOB to check the upload progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final asset ID and metadata. IMPORTANT: This tool is ONLY for direct file upload jobs (CANVA_CREATE_ASSET_UPLOAD_JOB). Do NOT use this for URL import jobs created by CANVA_CREATE_URL_ASSET_UPLOAD_JOB - those use a different API endpoint. Use CANVA_GET_URL_ASSET_UPLOADS_JOBID to poll URL import job status." }, { "slug": "CANVA_FETCH_CANVA_CONNECT_SIGNING_PUBLIC_KEYS", "name": "Fetch canva connect signing public keys", "description": "The API for verifying Canva webhooks, 'connect/keys,' is in preview, meaning unstable, not for public integrations, and provides a rotating JWK for signature verification to prevent replay attacks. Cache keys for efficiency." }, { "slug": "CANVA_FETCH_CURRENT_USER_DETAILS", "name": "Fetch current user details", "description": "Returns the User ID, Team ID, and display name of the user account associated with the provided access token." }, { "slug": "CANVA_FETCH_DESIGN_METADATA_AND_ACCESS_INFORMATION", "name": "Fetch design metadata and access information", "description": "Gets the metadata for a design. This includes owner information, URLs for editing and viewing, and thumbnail information." }, { "slug": "CANVA_GET_DESIGN_COMMENT_REPLIES", "name": "Get design comment thread replies", "description": "Retrieves a list of replies for a comment or suggestion thread on a design. Use when you need to view all replies in a specific thread." }, { "slug": "CANVA_GET_DESIGN_COMMENT_REPLY", "name": "Get specific design comment reply", "description": "Retrieves a specific reply to a comment or suggestion thread on a design. Use when you need to view details of a particular reply." }, { "slug": "CANVA_GET_DESIGN_EXPORT_JOB_RESULT", "name": "Get design export job result", "description": "Polls for design export job completion status. Use this after CANVA_CREATE_CANVA_DESIGN_EXPORT_JOB to check the export progress. Call this endpoint repeatedly until the job is complete to receive download links for the exported design pages. Download URLs expire after 30 days." }, { "slug": "CANVA_GET_DESIGNS_DESIGNID_COMMENTS_THREADID", "name": "Get designs designid comments threadid", "description": "Retrieves metadata for a comment or suggestion thread on a design. Use when you need to get details about a specific thread including content, author, timestamps, and status." }, { "slug": "CANVA_GET_DESIGNS_DESIGNID_EXPORT_FORMATS", "name": "Get design export formats", "description": "Lists available file formats for exporting a design. Use this to check which export formats (PDF, JPG, PNG, SVG, PPTX, GIF, MP4) are supported for a specific design." }, { "slug": "CANVA_GET_URL_ASSET_UPLOADS_JOBID", "name": "Get URL asset upload job status", "description": "Tool to retrieve the status and result of a URL-based asset upload job. Use this after creating a URL asset upload job to check progress and retrieve the uploaded asset ID when successful." }, { "slug": "CANVA_GET_URL_IMPORTS_JOBID", "name": "Get URL import job status", "description": "Polls for URL import job completion status. Use this after creating a URL import job to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID and metadata." }, { "slug": "CANVA_GET_USERS_ME_CAPABILITIES", "name": "Get user capabilities", "description": "Lists the API capabilities for the user account associated with the provided access token. Use when you need to check what features are available based on the user's Canva plan." }, { "slug": "CANVA_INITIATE_CANVA_DESIGN_AUTOFILL_JOB", "name": "Initiate canva design autofill job", "description": "Upcoming brand template ID updates require migration within 6 months. Canva Enterprise users can auto-fill designs using various data types, including experimental chart data. Monitor jobs with specific API." }, { "slug": "CANVA_LIST_DESIGN_PAGES_WITH_PAGINATION", "name": "List design pages with pagination", "description": "Preview API for Canva: subject to unannounced changes and not for public integrations. Lists metadata for design pages with optional `offset` and `limit`; not applicable to all design types." }, { "slug": "CANVA_LIST_FOLDER_ITEMS_BY_TYPE_WITH_SORTING", "name": "List folder items by type with sorting", "description": "Lists the items in a folder, including each item's `type`. Folders can contain: - Other folders. - Designs, such as Instagram posts, Presentations, and Documents ([Canva Docs](https://www.canva.com/create/documents/)). - Image assets." }, { "slug": "CANVA_LIST_USER_DESIGNS", "name": "List User Designs", "description": "Provides a summary of Canva user designs, includes search filtering, and allows showing both self-created and shared designs with sorting options." }, { "slug": "CANVA_MOVE_ITEM_TO_SPECIFIED_FOLDER", "name": "Move item to specified folder", "description": "Transfers an item to a different folder by specifying both the destination folder's ID and the item's ID. If the item is in various folders, an error occurs; manual relocation via Canva UI is required." }, { "slug": "CANVA_POST_DESIGNS", "name": "Create new Canva design", "description": "Creates a new Canva design with preset type or custom dimensions. Use when creating new designs for docs, presentations, whiteboards, or with specific pixel dimensions. Optionally insert an image asset into the design. Returns design ID, edit/view URLs, and metadata." }, { "slug": "CANVA_POST_DESIGNS_DESIGNID_COMMENTS", "name": "Post designs designid comments", "description": "Creates a comment thread on a Canva design. Use when you need to add feedback or collaboration comments to a specific design. Rate limited to 100 requests per minute per user." }, { "slug": "CANVA_POST_DESIGNS_DESIGNID_COMMENTS_THREADID_REPLIES", "name": "Create reply to comment thread", "description": "Tool to create a reply to a comment or suggestion thread on a Canva design. Use when you need to respond to existing comments or suggestions. Maximum 100 replies per thread allowed." }, { "slug": "CANVA_POST_EXPORTS", "name": "Start design export job", "description": "Starts a new asynchronous job to export a Canva design file. Use when exporting designs to various formats (PDF, JPG, PNG, GIF, PPTX, MP4). Returns a job ID that can be used to poll for completion status and download URLs. IMPORTANT: Format compatibility varies by design type. Before exporting, use the CANVA_GET_DESIGNS_DESIGNID_EXPORT_FORMATS action to check which formats are supported for the specific design. Attempting to export in an unsupported format will result in a 400 error (e.g., 'png export not supported for this design type')." }, { "slug": "CANVA_POST_FOLDERS", "name": "Create folder", "description": "Tool to create a folder in Canva. Use when you need to organize designs, assets, or create nested folder structures in a user's projects or uploads folder." }, { "slug": "CANVA_POST_URL_IMPORTS", "name": "Create URL Import Job", "description": "Tool to start an asynchronous job to import an external file from a URL as a new design in Canva. Use when you need to import a design from a publicly accessible URL. This is an async operation; poll the job status using the job ID until it reaches 'success' or 'failed'." }, { "slug": "CANVA_REMOVE_FOLDER_AND_MOVE_CONTENTS_TO_TRASH", "name": "Remove folder and move contents to trash", "description": "Deletes a folder by moving the user's content to Trash and reassigning other users' content to their top-level projects." }, { "slug": "CANVA_RETRIEVE_APP_PUBLIC_KEY_SET", "name": "Retrieve app public key set", "description": "Returns the Json Web Key Set (public keys) of an app. These keys are used to verify JWTs sent to app backends." }, { "slug": "CANVA_RETRIEVE_ASSET_METADATA_BY_ID", "name": "Retrieve asset metadata by id", "description": "You can retrieve the metadata of an asset by specifying its `assetId`." }, { "slug": "CANVA_RETRIEVE_BRAND_TEMPLATE_DATASET_DEFINITION", "name": "Retrieve brand template dataset definition", "description": "Canva's brand template IDs will change later this year, including a 6-month integration migration. API access requires Enterprise membership, providing autofill for images, text, and charts, although chart data could change during preview." }, { "slug": "CANVA_RETRIEVE_CANVA_ENTERPRISE_BRAND_TEMPLATE_METADATA", "name": "Retrieve canva enterprise brand template metadata", "description": "Upcoming update will change brand template IDs; integrations must migrate within 6 months. API use requires Canva Enterprise membership." }, { "slug": "CANVA_RETRIEVE_DESIGN_AUTOFILL_JOB_STATUS", "name": "Retrieve design autofill job status", "description": "API users with Canva Enterprise membership can retrieve design autofill job results, potentially requiring multiple requests until a `success` or `failed` status is received." }, { "slug": "CANVA_RETRIEVE_DESIGN_IMPORT_JOB_STATUS", "name": "Retrieve design import job status", "description": "Polls for design import job completion status. Use this after CANVA_CREATE_DESIGN_IMPORT_JOB to check the import progress. Repeatedly call this endpoint until a 'success' or 'failed' status is received to get the final imported design ID and metadata." }, { "slug": "CANVA_RETRIEVE_DESIGN_RESIZE_JOB_STATUS", "name": "Retrieve Design Resize Job Status", "description": "Retrieves the status and results of a design resize job. Polls for design resize job completion status. Use this after CANVA_CREATE_DESIGN_RESIZE_JOB to check the resize progress. Keep polling until status is 'success' or 'failed'. Successful jobs include the new design ID and temporary access URLs." }, { "slug": "CANVA_RETRIEVE_FOLDER_DETAILS_BY_ID", "name": "Retrieve folder details by id", "description": "Gets the name and other details of a folder using a folder's `folderID`." }, { "slug": "CANVA_RETRIEVE_USER_PROFILE_DATA", "name": "Retrieveuserprofiledata", "description": "Currently, this returns the display name of the user account associated with the provided access token. More user information is expected to be included in the future." }, { "slug": "CANVA_REVOKE_OAUTH_TOKENS", "name": "Revoke oauth tokens", "description": "Revoke a refresh token to end its lineage and user consent, requiring re-authentication. Authenticate using either basic access with Base64-encoded credentials or body parameters with client ID and secret." }, { "slug": "CANVA_UPDATE_ASSET_S_NAME_AND_TAGS_BY_ID", "name": "Update asset s name and tags by id", "description": "You can update the name and tags of an asset by specifying its `assetId`. Updating the tags replaces all existing tags of the asset." }, { "slug": "CANVA_UPDATE_FOLDER_DETAILS_BY_ID", "name": "Update folder details by id", "description": "Updates a folder's details using its `folderID`. Currently, you can only update a folder's name." }, { "slug": "CANVA_VALIDATE_OAUTH_TOKEN_PROPERTIES", "name": "Validate oauth token properties", "description": "Check an access token's validity and properties via introspection, requiring authentication. Use Basic access (Base64 encoded `client_id:client_secret`) or body parameters for credentialing." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "canva_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "app:read,app:write,asset:read,asset:write,brandtemplate:content:read,brandtemplate:meta:read,comment:read,comment:write,design:content:read,design:content:write,design:meta:read,design:permission:read,design:permission:write,folder:read,folder:write,folder:permission:read,folder:permission:write,profile:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "digicert", "name": "Digicert", "logo": "https://logos.composio.dev/api/digicert", "description": "DigiCert is a leading provider of high-assurance TLS/SSL, PKI, IoT, and signing solutions, enabling secure digital interactions worldwide.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 101, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DIGICERT_ADD_TAGS_TO_CERTIFICATE", "name": "Add Tags to Certificate", "description": "Tool to add custom tags to one or more certificates for categorization. Use when you need to organize or label certificates with custom tags for easier management and filtering." }, { "slug": "DIGICERT_CHECK_PERMISSION", "name": "Check Permission", "description": "Tool to check if a specific permission is available. Use when validating that the authenticated user may perform an operation before attempting it." }, { "slug": "DIGICERT_CREATE_API_KEY", "name": "Create API Key", "description": "Tool to create a new API key with specified permissions. Use when you have a valid DigiCert user_id and need to generate a new key. Note the API key appears only once; save it securely." }, { "slug": "DIGICERT_CREATE_AUTH_KEY", "name": "Create AuthKey", "description": "Tool to create a new AuthKey for account authentication. Use when you need to generate a new AuthKey, either permanent or with a specific validity period (TTL)." }, { "slug": "DIGICERT_CREATE_CONTAINER_IP_RULES", "name": "Create Container IP Rules", "description": "Tool to add an IP restriction rule to a CertCentral account. Use when you need to limit API or user access to specific IP address ranges for enhanced security." }, { "slug": "DIGICERT_CREATE_FINANCE_ORDER_PRICING", "name": "Create Finance Order Pricing", "description": "Tool to get price estimates for a certificate order. Use when you need to calculate the cost of a certificate before placing an order, including base price, add-ons, tax estimates, and total cost. For Code Signing/EV Code Signing with hardware tokens or KeyLocker, include the corresponding add-on IDs for accurate estimates." }, { "slug": "DIGICERT_CREATE_ORGANIZATION", "name": "Create Organization", "description": "Tool to create a new organization in your DigiCert CertCentral account. Use when you need to add a new organization with required details like legal name, address, contact information, and country." }, { "slug": "DIGICERT_CREATE_ORGANIZATION_VALIDATION", "name": "Create Organization Validation", "description": "Tool to submit an organization for validation and add verified contacts for specific product types. Use when you need to validate an organization for certificate issuance. Note: EV, CS, and EV_CS validation types require verified users." }, { "slug": "DIGICERT_CREATE_SCAN_LIST", "name": "List Scan Templates", "description": "Tool to retrieve the list of scan templates along with their name, status, and configuration. Use when you need to view or manage DigiCert Discovery scans with support for filtering by division, state, and other criteria." }, { "slug": "DIGICERT_DELETE_ACCOUNT_AUTH_KEY", "name": "Delete Account AuthKey", "description": "Tool to delete your account's AuthKey. Use when you need to revoke an existing AuthKey. If no auth_key_id is specified, deletes the primary AuthKey." }, { "slug": "DIGICERT_DELETE_CERTIFICATE", "name": "Delete Certificate from Discovery", "description": "Tool to delete certificates from DigiCert Discovery inventory. Use when you need to remove one or more certificates identified by their certificate IDs." }, { "slug": "DIGICERT_DELETE_DOMAIN", "name": "Delete Domain", "description": "Tool to delete a domain with the given ID. Use when you need to remove a domain from the CertCentral account." }, { "slug": "DIGICERT_DELETE_KEY", "name": "Delete SSH Key", "description": "Tool to delete SSH keys from DigiCert Discovery. Use when you need to remove one or more SSH keys by their names." }, { "slug": "DIGICERT_DELETE_REPORTS_ENDPOINTS", "name": "Delete Discovery Endpoints", "description": "Tool to delete one or more endpoints from the Discovery API. Permanently removes the endpoints and any certificates associated with the scan results. Use when you need to clean up IP/port combinations that should no longer be monitored." }, { "slug": "DIGICERT_EXECUTE_GRAPHQL_QUERY", "name": "Execute GraphQL Query", "description": "Tool to execute GraphQL queries against DigiCert Custom Reports API. Use when you need to retrieve customizable certificate order data using GraphQL syntax. Supports queries like order_details and order_details_by_id with flexible field selection." }, { "slug": "DIGICERT_FILTER_KEYS", "name": "Filter Keys", "description": "Tool to filter keys in DigiCert Discovery API by various criteria. Use when you need to search and filter keys based on attributes like name, IP, port, authentication methods, or other key properties." }, { "slug": "DIGICERT_GET_ACCOUNT", "name": "Get Account Details", "description": "Tool to retrieve details about your CertCentral account. Use when you need account information such as billing model, account manager details, or account settings." }, { "slug": "DIGICERT_GET_ACCOUNT_DETAILS", "name": "Get Account Details", "description": "Tool to retrieve account details for the authenticated user. Use when you need to get information about the user assigned to the API key, including profile details, roles, and container assignments." }, { "slug": "DIGICERT_GET_ACCOUNT_GUEST_ACCESS", "name": "Get Account Guest Access URL", "description": "Tool to retrieve the guest access URL for your DigiCert account. Use when you need to obtain the guest access URL to share with external users." }, { "slug": "DIGICERT_GET_ACCOUNT_METADATA", "name": "Get Account Metadata", "description": "Tool to retrieve metadata for custom order fields in the account. Use when you need to list custom field configurations including their validation types and display settings." }, { "slug": "DIGICERT_GET_ACCOUNT_SAML_ENTITY", "name": "Get Account SAML Entity", "description": "Tool to retrieve SAML entity details for your account. Use when you need to check SAML SSO configuration or verify identity provider settings. Returns empty object if no SAML entity is configured." }, { "slug": "DIGICERT_GET_AGENT_IP_PORT", "name": "Get Agent IP Port Details", "description": "Tool to retrieve agent IP port details from DigiCert Discovery API. Use when you need to view IP addresses and ports being monitored by DigiCert agents in a specific account and division." }, { "slug": "DIGICERT_GET_ALERT_COUNT", "name": "Get Alert Count", "description": "Tool to retrieve alert count from DigiCert Discovery API dashboard. Use when you need to query the number of alerts for a specific module (scan, cert, endpoint, etc.) within an account and division." }, { "slug": "DIGICERT_GET_AUTH_KEY", "name": "Get AuthKey Details", "description": "Tool to retrieve AuthKey details by ID. Use when you need to fetch information about an active, inactive, or expired AuthKey." }, { "slug": "DIGICERT_GET_AUTHORIZATION_CONTAINER", "name": "List Authorized Containers", "description": "Tool to list all containers authorized to perform a permission action. Use when checking which containers a user can access for specific operations like viewing, editing, or creating resources." }, { "slug": "DIGICERT_GET_CERTIFICATE_AUTHORITY_HELPER", "name": "Get Certificate Authority Helper", "description": "Tool to retrieve certificate authority API helper information including version details. Use when verifying API connectivity or checking the current API version." }, { "slug": "DIGICERT_GET_CERTIFICATE_RATING", "name": "Get Certificate Security Rating", "description": "Tool to retrieve SSL certificate security rating from DigiCert Discovery API. Use when you need to assess certificate security posture, view rating details, or audit certificate configurations. Requires valid accountId and certId from DigiCert." }, { "slug": "DIGICERT_GET_CLOUD_SCAN", "name": "Get Cloud Scan Details", "description": "Tool to get cloud scan details from DigiCert Discovery API. Use when you need to retrieve information about an existing cloud scan template including its status and completion percentage." }, { "slug": "DIGICERT_GET_CONTAINER_BY_CONTAINER", "name": "Get Container by ID", "description": "Tool to get details about a specific container using its ID. Use when you need to retrieve information about a container's configuration, status, and properties." }, { "slug": "DIGICERT_GET_CONTAINER_CHILDREN", "name": "Get Container Children", "description": "Tool to list all child containers for a parent container. Use when you need to retrieve the hierarchy of containers under a specific parent." }, { "slug": "DIGICERT_GET_CONTAINER_IP_RULES", "name": "Get Container IP Rules", "description": "Tool to retrieve a list of existing IP restriction rules in a CertCentral account. Use when you need to audit or manage IP access controls for a specific container." }, { "slug": "DIGICERT_GET_CONTAINER_ORDER_ORGANIZATION", "name": "Get Container Order Organizations", "description": "Tool to list all organizations assigned to a container. Use when you need to retrieve organization details and validation information for a specific container." }, { "slug": "DIGICERT_GET_CONTAINER_PRODUCT_LIMITS", "name": "Get Container Product Limits", "description": "Tool to get information about the limits and settings for a container's enabled products. Use when you need to check product-specific restrictions for certificate ordering." }, { "slug": "DIGICERT_GET_CONTAINER_ROLE", "name": "Get Container Roles", "description": "Tool to retrieve all access roles available to a container. Use when you need to list permissions or roles associated with a specific container." }, { "slug": "DIGICERT_GET_CONTAINER_TEMPLATE_BY_TEMPLATE", "name": "Get Container Template Details", "description": "Tool to get details about a template in a container. Use when you need to retrieve template information including access roles and creation date." }, { "slug": "DIGICERT_GET_DOMAIN_DCV", "name": "Get Domain DCV Information", "description": "Tool to retrieve domain DCV (Domain Control Validation) information from DigiCert. Use when you need to check domain validation status, DCV tokens, expiration dates, or validation methods." }, { "slug": "DIGICERT_GET_DOMAIN_DCV_EMAILS", "name": "Get Domain DCV Emails", "description": "Tool to retrieve email addresses that receive validation emails from DigiCert for the email domain control validation (DCV) method. Use when you need to determine which email addresses can be used to validate domain ownership during certificate issuance." }, { "slug": "DIGICERT_GET_DOMAIN_EXPIRATION_COUNT", "name": "Get Domain Expiration Count", "description": "Tool to get the number of domains in your account with expired or expiring OV or EV domain validations. Use when you need to audit domain validation status across different time ranges." }, { "slug": "DIGICERT_GET_DOMAIN_VALIDATION_TYPE", "name": "Get Domain Validation Type", "description": "Tool to list available validation types for domains. Use when you need to retrieve the supported domain validation types (e.g., OV, EV) and their requirements." }, { "slug": "DIGICERT_GET_FINANCE_BALANCE", "name": "Get Finance Balance", "description": "Tool to view the current balance of your DigiCert account. Use when you need to check available funds, unpaid invoices, or credit limits." }, { "slug": "DIGICERT_GET_FINANCE_BALANCE_HISTORY", "name": "Get Finance Balance History", "description": "Tool to list balance adjustment history for your DigiCert account. Use when you need to review financial transactions, track deposits, charges, or refunds." }, { "slug": "DIGICERT_GET_INFO", "name": "Get Remote Service Information", "description": "Tool to retrieve remote service information from DigiCert Document Manager CSC API. Use when you need details about the remote service such as supported authentication methods, API methods, service description, or language preferences." }, { "slug": "DIGICERT_GET_KEY_BY_KEY", "name": "Get API Key Details", "description": "Tool to retrieve detailed information about an API key. Use when you need to check key status, owner, creation date, or ACME configuration." }, { "slug": "DIGICERT_GET_MPKI_VERSION", "name": "Get MPKI Version", "description": "Tool to query the TLM application version from DigiCert MPKI API. Use when you need to check the current version of the DigiCert ONE MPKI system." }, { "slug": "DIGICERT_GET_ORDER_CERTIFICATE_STATUS_CHANGES", "name": "Get Order Certificate Status Changes", "description": "Tool to list orders that changed status during a given time frame. Use when you need to track order status changes within a specific time period." }, { "slug": "DIGICERT_GET_ORGANIZATION_BY_ORGANIZATION", "name": "Get Organization Details", "description": "Tool to retrieve detailed information about an organization from DigiCert. Use when you need organization details such as legal name, address, contacts, validation status, or container assignments." }, { "slug": "DIGICERT_GET_ORGANIZATION_CONTACT", "name": "Get Organization Contact Info", "description": "Tool to retrieve organization and technical contact details for a specific organization. Use when you need contact information for administrative or technical purposes." }, { "slug": "DIGICERT_GET_ORGANIZATION_RECENT", "name": "Get Recent Organizations", "description": "Tool to retrieve the three most recently used organizations from your CertCentral account. Use when you need to quickly access organizations that were recently used for certificate orders or management." }, { "slug": "DIGICERT_GET_ORGANIZATION_VALIDATION", "name": "Get Organization Validation", "description": "Tool to get validation details for an organization. Use when you need to retrieve approved validation types, statuses, and expiration dates for a specific organization." }, { "slug": "DIGICERT_GET_ORGANIZATION_VALIDATION_TYPE", "name": "Get Organization Validation Type", "description": "Tool to list available validation types for organizations. Use when you need to retrieve the supported organization validation types and their requirements." }, { "slug": "DIGICERT_GET_PRODUCT_BY_NAME", "name": "Get Product by Name", "description": "Tool to get information about a product by its name identifier. Use when you need product details such as validation type, validity periods, supported platforms, or certificate configuration options." }, { "slug": "DIGICERT_GET_PRODUCT_PLATFORM_CERTFORMAT_MAPPING", "name": "Get Product Platform Certificate Format Mapping", "description": "Tool to list the certificate format that is returned for a particular server platform. Use when you need to determine the recommended certificate format for a specific platform or to view all available platform-certificate format mappings." }, { "slug": "DIGICERT_GET_PRODUCT_PRICING", "name": "Get Product Pricing", "description": "Tool to retrieve a comprehensive list of product prices available under your DigiCert account. Use when you need pricing information including product names, validity periods, costs, and additional Subject Alternative Names (SANs) pricing." }, { "slug": "DIGICERT_GET_REMOTE_SERVICE_INFO", "name": "Get Remote Service Info", "description": "Tool to retrieve information about DigiCert's Document Manager CSC (Cloud Signature Consortium) remote service. Use when you need service metadata such as supported authentication methods, API version, available methods, or service description." }, { "slug": "DIGICERT_GET_REPORT_ORDER", "name": "Get Order Report", "description": "Tool to retrieve a CSV report of all certificate orders. Use when you need to export or analyze certificate order data in bulk with support for pagination." }, { "slug": "DIGICERT_GET_REPORT_ORDER_EXPIRING", "name": "Get Report Order Expiring", "description": "Tool to get the number of orders and certificates that expire within 0-30, 30-60, and 60-90 days from now. Use when you need to audit certificate and order expiration status across different time ranges." }, { "slug": "DIGICERT_GET_REPORT_REQUEST", "name": "Get Report Request Summary", "description": "Tool to get total requests and requests by type for your account. Use when you need to retrieve aggregated pending request data categorized by type (new requests, revocations, duplicates, and reissues)." }, { "slug": "DIGICERT_GET_SCAN_SUBDOMAINS", "name": "Get Scan Subdomains", "description": "Tool to retrieve all subdomains included in a DigiCert Discovery scan. Use when you need to get a list of subdomains for one or more domains from the scan results." }, { "slug": "DIGICERT_GET_USER", "name": "Get User Details", "description": "Tool to retrieve details about a specific user in CertCentral. Use when you need user information such as access roles, container assignments, or contact details. Specify 'me' as user_id to get the authenticated user's information." }, { "slug": "DIGICERT_GET_USER_AVAILABILITY", "name": "Check Username Availability", "description": "Tool to check if a username is available in DigiCert. Use when you need to verify whether a username can be used before creating a new user account." }, { "slug": "DIGICERT_LIST_API_ACCESS_ROLES", "name": "List API Access Roles", "description": "Tool to retrieve a list of available API access roles. Use after confirming authentication with an API key." }, { "slug": "DIGICERT_LIST_API_KEYS", "name": "List API Keys", "description": "Tool to retrieve a list of API keys and ACME URLs. Use to view all keys or filter by user_id or container_id." }, { "slug": "DIGICERT_LIST_CERTIFICATE_FILTER_VALUES", "name": "List Certificate Filter Values", "description": "Tool to retrieve available filter values for certificate attributes from DigiCert Discovery API. Use when you need to discover valid values for filtering certificates by common name, organization, status, serial number, security rating, or certificate authority." }, { "slug": "DIGICERT_LIST_CERTIFICATE_ORDERS", "name": "List Certificate Orders", "description": "Tool to list all certificate orders in your DigiCert account. Use when you need to retrieve order information with support for filtering by status, product, container, and pagination." }, { "slug": "DIGICERT_LIST_CERTIFICATES", "name": "List Certificates", "description": "Tool to list all certificates discovered by DigiCert Discovery scans. Use when you need to retrieve certificate inventory with support for filtering by status, organization, common name, expiration, and other attributes." }, { "slug": "DIGICERT_LIST_CONTAINERS", "name": "List Containers", "description": "Tool to retrieve a list of all containers (divisions) in your DigiCert account. Use when you need to view or manage account divisions." }, { "slug": "DIGICERT_LIST_CONTAINER_TEMPLATES", "name": "List Container Templates", "description": "Tool to list all templates that can be used when creating containers. Use when you need to retrieve available container templates for a specific container." }, { "slug": "DIGICERT_LIST_DOMAIN_DCV_METHODS", "name": "List Domain DCV Methods", "description": "Tool to retrieve available domain control validation (DCV) methods for domains. Use when you need to know which DCV methods are available for domain verification." }, { "slug": "DIGICERT_LIST_DOMAINS", "name": "List Domains", "description": "Tool to list all domains in your CertCentral account. Use when you need to retrieve domain information with support for filtering by name, validation status, and pagination." }, { "slug": "DIGICERT_LIST_INTERMEDIATE_CERTIFICATES", "name": "List Intermediate Certificates", "description": "Tool to retrieve a list of intermediate certificates. Use when you need to list all intermediate certificates for your account. No input required." }, { "slug": "DIGICERT_LIST_LOCALES", "name": "List Locales", "description": "Tool to retrieve a list of available locales. Use when you need to get supported locale codes and languages for the DigiCert Account Manager API." }, { "slug": "DIGICERT_LIST_ORGANIZATION_POTENTIAL_APPROVERS", "name": "List Organization Potential Approvers", "description": "Tool to list all users and contacts that can be validated as verified contacts (also called EV approvers). Use when you need to identify potential approvers for organization validation." }, { "slug": "DIGICERT_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to retrieve all organizations in your DigiCert account. Use when you need to list, search, or audit organizations with support for filtering and pagination." }, { "slug": "DIGICERT_LIST_PERMISSIONS", "name": "List Permissions", "description": "Tool to list all permissions for the authenticated user. Use when you need to audit or verify the complete set of permissions available to the current API key." }, { "slug": "DIGICERT_LIST_PRODUCTS", "name": "List Available Products", "description": "Tool to list all products available to your CertCentral account. Use when you need to discover available certificate products, their validation periods, or supported hash algorithms." }, { "slug": "DIGICERT_LIST_SENSORS", "name": "List Sensors", "description": "Tool to list all sensors used for network scanning in DigiCert Discovery. Use when you need to retrieve sensor inventory with support for filtering by status, name, IP address, and other attributes." }, { "slug": "DIGICERT_LIST_SERVICE_USERS", "name": "List Service Users", "description": "Tool to list all DigiCert service users (API-only users). Use when you need to retrieve or audit service user accounts with support for filtering by container, access role, status, or search terms." }, { "slug": "DIGICERT_LIST_USERS", "name": "List CertCentral Users", "description": "Tool to retrieve a list of CertCentral account users. Use when you need to audit or manage users with support for pagination and optional detail inclusion." }, { "slug": "DIGICERT_RESEND_USER_CREATE_EMAIL", "name": "Resend User Create Email", "description": "Tool to resend the create user email to a user. Use when you need to resend the account creation email to a user who may not have received it." }, { "slug": "DIGICERT_SUBMIT_DOMAIN_FOR_VALIDATION", "name": "Submit Domain for Validation", "description": "Tool to submit a domain for validation with specified validation types. Use when you need to initiate domain validation for OV or EV certificates with various DCV methods." }, { "slug": "DIGICERT_UPDATE_ACCOUNT_EMAILS", "name": "Update Account Emails", "description": "Tool to update account notification and emergency email addresses. Use when you need to change the email addresses that receive account notifications or urgent security communications." }, { "slug": "DIGICERT_UPDATE_CONTAINER", "name": "Update Container", "description": "Tool to edit a container's details including name and description. Use when you need to update container information in your DigiCert account." }, { "slug": "DIGICERT_UPDATE_CONTAINER_ALLOWED_DOMAIN_NAMES", "name": "Update Container Allowed Domain Names", "description": "Tool to update a container's allowed domains. Use when you need to control which domains are permitted for certificate operations within a specific container. Note that this operation is destructive and will replace the entire allowed domains list." }, { "slug": "DIGICERT_UPDATE_CONTAINER_USER_ASSIGNMENTS", "name": "Update Container User Assignments", "description": "Tool to update a container's user assignments. Use when you need to assign or reassign users to a container. Note that this operation overwrites all existing assignments." }, { "slug": "DIGICERT_UPDATE_DOMAIN_ACTIVATE", "name": "Activate Domain", "description": "Tool to activate a domain in DigiCert CertCentral. Use when you need to activate a domain that has been validated and is ready for certificate issuance." }, { "slug": "DIGICERT_UPDATE_DOMAIN_DCV_EMAILS", "name": "Resend Domain DCV Emails", "description": "Tool to resend domain control validation (DCV) emails for a domain. Use when you need to trigger a new DCV email to be sent for domain validation purposes, such as when the original email was not received or has expired." }, { "slug": "DIGICERT_UPDATE_KEY", "name": "Update API Key", "description": "Tool to edit an API key's name or access role restrictions. Use when you need to rename an API key or modify its permission scope." }, { "slug": "DIGICERT_UPDATE_KEY_STATUS", "name": "Update API Key Status", "description": "Tool to activate, deactivate, or revoke a DigiCert API key. Use when you need to change the status of an existing API key by its ID." }, { "slug": "DIGICERT_UPDATE_NOTIFICATIONS", "name": "Update Notification Settings", "description": "Tool to update CertCentral account notification settings. Use when you need to configure certificate lifecycle email recipients, organization validation preferences, or account balance notifications." }, { "slug": "DIGICERT_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update an organization's details in your DigiCert CertCentral account. Use when you need to modify organization information such as name, address, telephone, or location details. Note: All fields (name, address, city, state, country, telephone) are required. The zip field may be required depending on the country (e.g., required for US). Updating organization details will invalidate current validations." }, { "slug": "DIGICERT_UPDATE_ORGANIZATION_ACTIVATE", "name": "Activate Organization", "description": "Tool to activate an organization in DigiCert CertCentral. Use when you need to activate an organization that has been validated and is ready for certificate operations." }, { "slug": "DIGICERT_UPDATE_ORGANIZATION_CONTACT", "name": "Update Organization Contact", "description": "Tool to update or replace organization contact and technical contact for an organization. Use when you need to modify contact information associated with an organization." }, { "slug": "DIGICERT_UPDATE_ORGANIZATION_DEACTIVATE", "name": "Deactivate Organization", "description": "Tool to deactivate an organization in DigiCert CertCentral. Use when you need to deactivate an organization that is no longer active or should be disabled." }, { "slug": "DIGICERT_UPDATE_RENEWAL_EMAIL_PREFERENCE", "name": "Update Renewal Email Preference", "description": "Tool to enable or disable renewal notifications for SSL/TLS certificates discovered in DigiCert Discovery. Use when you need to manage email alerts for certificate renewals." }, { "slug": "DIGICERT_UPDATE_REPORT", "name": "Update Report", "description": "Tool to update an existing report’s configuration. Use when you need to modify the schedule, recipients, or format of a scheduled report." }, { "slug": "DIGICERT_UPDATE_USER", "name": "Update User Profile", "description": "Tool to update a user's profile information in CertCentral. Use when you need to modify user details such as name, email, job title, or SAML SSO settings. The email field is required; other fields are optional." }, { "slug": "DIGICERT_UPDATE_USER_CONTAINER_ASSIGNMENTS", "name": "Update User Container Assignments", "description": "Tool to update container (division) assignments for a user. Use when you need to modify which containers a user has access to. Note that this completely overwrites existing assignments, and an empty array removes all restrictions." }, { "slug": "DIGICERT_UPDATE_USER_ROLE", "name": "Update User Role", "description": "Tool to change a user's access role in CertCentral. Use when you need to modify permissions by assigning different roles to an existing user." }, { "slug": "DIGICERT_VALIDATE_VMC_ENCODED_LOGO", "name": "Validate VMC Encoded Logo", "description": "Tool to validate if an SVG file format is compatible with Verified Mark Certificate (VMC) or Common Mark Certificate (CMC) requirements. Use when you need to verify logo format compliance before submitting for VMC/CMC issuance." }, { "slug": "DIGICERT_VALIDATE_VMC_LOGO", "name": "Validate VMC/CMC Logo Format", "description": "Tool to validate SVG logo format for Verified Mark Certificates (VMC) or Common Mark Certificates (CMC). Use when you need to check if an SVG file meets DigiCert's VMC/CMC requirements before certificate issuance." }, { "slug": "DIGICERT_VERIFY_TEMPLATE", "name": "Verify Template", "description": "Tool to verify a certificate template structure against DigiCert's validation rules. Use when you need to validate template JSON before creating or updating a template. Returns success (204) if valid, or raises ExecutionFailed with details if invalid." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "digicert_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DigiCert API Key", "type": "string", "description": "The API key used for authenticating requests to the DigiCert API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "factorial", "name": "Factorial", "logo": "https://logos.composio.dev/api/factorial", "description": "Factorial streamlines HR management, from employee onboarding and time-off requests to payroll and performance evaluations, aimed at small and mid-sized companies", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "factorial_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Factorial API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amazon", "name": "Amazon", "logo": "https://logos.composio.dev/api/amazon", "description": "Amazon is an e-commerce giant delivering a massive online marketplace, cloud services, and digital products that connect retailers, consumers, and businesses worldwide for seamless transactions", "category": "ecommerce", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "amazon_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Amazon API requests. For more information, visit https://developer.amazon.com/docs/app-submission-api/auth.html", "required": true, "default": "https://api.amazon.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "dailybot", "name": "Dailybot", "logo": "https://logos.composio.dev/api/dailybot", "description": "DailyBot simplifies team collaboration and tasks with chat-based standups, reminders, polls, and integrations, streamlining workflow automation in popular messaging platforms", "category": "team collaboration", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DAILYBOT_CREATE_CHECKIN", "name": "Create Check-in", "description": "Tool to create a check-in based on a template in DailyBot. Use when you need to set up a new recurring check-in (like daily standups, weekly syncs) for a team. The check-in can be scheduled with custom triggers, reminders, and reporting channels." }, { "slug": "DAILYBOT_FIND_USER", "name": "Find User by UUID", "description": "This tool allows you to find and retrieve information about a specific user in DailyBot. It uses the provided user_uuid to lookup the user and returns detailed information including the user's uuid, full name, image, username, occupation, birth date, chat platform data, and organization details." }, { "slug": "DAILYBOT_FIND_WORKFLOW", "name": "Find Workflow by Name", "description": "Fetches one page of workflows from DailyBot, optionally filtered by name. DailyBot exposes HATEOAS pagination on `/v1/workflows/`: each response carries a `next` field that is the full URL of the next page. ONE DailyBot API call is made per invocation; pagination is caller-driven via the `cursor` parameter (pass the previous response's `next_cursor`) and the `next_cursor` / `has_next_page` fields in the response. When `workflow_name` is supplied, the current page is filtered locally (case-insensitive) and only the matching workflow is returned; if the name is not found on this page, callers should re-invoke with `cursor=next_cursor` to continue searching." }, { "slug": "DAILYBOT_GET_USERS", "name": "Get All Users", "description": "Retrieves a paginated list of all users within the authenticated organization from DailyBot. This action requires no input parameters and returns comprehensive user information including: - User identification (UUID, full name, username) - Status information (is_active, bot_enabled) - Work details (role, timezone, occupation, work_days, work hours) - Time off information (timeoff_start, timeoff_end) - Chat platform integration data (user_external_id, external_grid_id) - Organization details The response includes pagination fields (count, next, previous) for navigating large user lists. All users in the organization are returned regardless of their active status or role." }, { "slug": "DAILYBOT_GIVE_KUDOS", "name": "Give Kudos to Users", "description": "This tool allows giving kudos to one or multiple users in DailyBot. Kudos can be given either on behalf of DailyBot or the API key owner." }, { "slug": "DAILYBOT_SEND_MESSAGE", "name": "Send Message", "description": "This tool allows sending a message through DailyBot to either specific users or channels/rooms. The message can include markdown formatting." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dailybot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your DailyBot API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vero", "name": "Vero", "logo": "https://logos.composio.dev/api/vero", "description": "Vero is a customer messaging platform that personalizes email, push notifications, and webhooks to build targeted campaigns and user journeys", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vero_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Vero API key. You can find it in your Vero account settings under Integrations > API Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "terminus", "name": "Terminus", "logo": "https://logos.composio.dev/api/terminus", "description": "Terminus is a data-driven platform offering project oversight, campaign coordination, and analytics to help teams unify tasks, measure impact, and leverage insights", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "terminus_bearer_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Terminus API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ravenseotools", "name": "Ravenseotools", "logo": "https://logos.composio.dev/api/ravenseotools", "description": "Raven SEO Tools provides site auditing, rank tracking, and marketing reporting, helping digital marketers monitor and improve their online presence", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ravenseotools_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to the Raven SEO Tools API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linkhut", "name": "Linkhut", "logo": "https://logos.composio.dev/api/linkhut", "description": "LinkHut manages bookmarked links in a minimalistic, shareable interface, helping teams organize URLs and track references in one place", "category": "bookmark managers", "authSchemes": [ "OAUTH2" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINKHUT_ADD_BOOKMARK", "name": "Add bookmark", "description": "Adds a new bookmark to LinkHut. The bookmark can be marked as private/public and read/unread, with optional tags and notes." }, { "slug": "LINKHUT_DELETE_BOOKMARK", "name": "Delete bookmark", "description": "This tool allows users to delete a bookmark from their Linkhut account by providing the bookmark URL. It operates independently and only requires the URL parameter to identify and remove the bookmark." }, { "slug": "LINKHUT_GET_ALL_TAGS", "name": "Get all tags", "description": "Retrieves a list of all tags and their usage counts for the authenticated user. No additional parameters required besides authentication." }, { "slug": "LINKHUT_GET_BOOKMARKS", "name": "Get bookmarks", "description": "Retrieves bookmarks from the user's Linkhut account with optional filtering. This tool fetches bookmarks from Linkhut and supports filtering by: - Tag: Filter by one or more tags (space-separated) - Date: Filter by a specific date (ISO8601 format) - URL: Get a specific bookmark by its exact URL - Meta: Request additional metadata about bookmarks Returns a list of bookmarks with details including URL, title/description, tags, extended notes, timestamp, privacy status (shared), and read status (toread)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "linkhut_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Linkhut API requests.", "required": true, "default": "https://api.ln.ht/v1" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "posts:read,posts:write,tags:read,tags:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "idea_scale", "name": "IdeaScale", "logo": "https://logos.composio.dev/api/idea_scale", "description": "Integrate IdeaScale to access and manage innovation and idea management solutions for your organization.", "category": "team collaboration", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ideascale_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your IdeaScale API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dropbox_sign", "name": "Dropbox Sign", "logo": "https://logos.composio.dev/api/dropbox_sign", "description": "Dropbox Sign (formerly HelloSign) offers electronic signature and document workflow solutions, simplifying how businesses collect legally binding signatures online", "category": "signatures", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DROPBOX_SIGN_ADD_USER_TO_TEAM", "name": "Invite User to Team", "description": "Tool to invite a user to your Team. Use when you need to add a member by email or account ID." }, { "slug": "DROPBOX_SIGN_ADD_USER_TO_TEMPLATE", "name": "Add User to Template", "description": "Tool to grant a specified account access to a template. Use when you need to share a template with another user after confirming template and account identifiers." }, { "slug": "DROPBOX_SIGN_BULK_CREATE_EMBEDDED_SIG_REQ_WITH_TEMPLATE", "name": "Bulk create embedded signature request with template", "description": "Tool to create a BulkSendJob for embedded templated signature requests. Use when you need to send up to 250 embedded signature requests at once via one or more templates for iFrame signing." }, { "slug": "DROPBOX_SIGN_BULK_SEND_WITH_TEMPLATE", "name": "Bulk send with template", "description": "Tool to create a BulkSendJob for templated signature requests. Use when you need to send up to 250 signature requests at once via one or more templates." }, { "slug": "DROPBOX_SIGN_CANCEL_SIGNATURE_REQUEST", "name": "Cancel Signature Request", "description": "Cancels an incomplete signature request. Use when you need to cancel a pending signature request that has not been completed. The operation is asynchronous and not reversible - once canceled, the signature request cannot be restored." }, { "slug": "DROPBOX_SIGN_CREATE_ACCOUNT", "name": "Create Dropbox Sign Account", "description": "Tool to create a new Dropbox Sign account associated with a specified email address. Use when you need to programmatically register new users in the Dropbox Sign platform." }, { "slug": "DROPBOX_SIGN_CREATE_API_APP", "name": "Create API App", "description": "Tool to create a new Dropbox Sign API App. Use when you need to register a new application for API integration. The app will have a client_id for authentication and can be configured with OAuth, callbacks, and white labeling." }, { "slug": "DROPBOX_SIGN_CREATE_EMBEDDED_SIGNATURE_REQUEST", "name": "Create Embedded Signature Request", "description": "Tool to create an embedded signature request for signing in an iFrame. Use when you need to initiate a signature request that will be signed within your application rather than via email links." }, { "slug": "DROPBOX_SIGN_CREATE_EMBEDDED_SIGNATURE_REQUEST_WITH_TEMPLATE", "name": "Create Embedded Signature Request With Template", "description": "Tool to create an embedded signature request based on a template. Use when you need to initiate a new signature request for embedded signing using pre-defined templates. Returns signature request details including signing URLs for embedded iFrame integration." }, { "slug": "DROPBOX_SIGN_CREATE_EMBEDDED_TEMPLATE_DRAFT", "name": "Create Embedded Template Draft", "description": "Tool to create an embedded template draft. Use when initiating an embedded template workflow where users can edit the template in an iframe before finalizing it." }, { "slug": "DROPBOX_SIGN_CREATE_EMBEDDED_UNCLAIMED_DRAFT_WITH_TEMPLATE", "name": "Create Embedded Unclaimed Draft with Template", "description": "Tool to create an embedded unclaimed draft using saved templates. Use when you need to create a draft that can be claimed and embedded in an iFrame for signature collection." }, { "slug": "DROPBOX_SIGN_CREATE_REPORT", "name": "Create Report", "description": "Request creation of CSV report(s) for a specified date range. Reports are generated asynchronously and delivered via email. Available report types: user_activity (account activity), document_status (signature request status), sms_activity (SMS delivery info). You can request up to 2 report types per call. Date range can be up to 12 months, with start_date no more than 10 years in the past. Note: This feature may require a paid plan." }, { "slug": "DROPBOX_SIGN_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a reusable template for document signing workflows. Use when you need to establish a template with pre-defined form fields, signer roles, and documents." }, { "slug": "DROPBOX_SIGN_CREATE_UNCLAIMED_DRAFT", "name": "Create Unclaimed Draft", "description": "Tool to create an unclaimed draft that can be claimed via a unique URL. Use when you need to prepare a signature request or document send that will be finalized later by someone else through the claim URL." }, { "slug": "DROPBOX_SIGN_DELETE_API_APP", "name": "Delete API App", "description": "Tool to delete an API App from your Dropbox Sign account by its client_id. Use when you need to remove an API App that is no longer needed. The API App must be owned by the requesting user." }, { "slug": "DROPBOX_SIGN_DELETE_FAX", "name": "Delete Fax", "description": "Tool to delete a fax from the system by its fax_id. Use when you need to remove a fax from Dropbox Sign. Returns success if the fax is deleted or doesn't exist." }, { "slug": "DROPBOX_SIGN_DELETE_TEMPLATE", "name": "Delete Template", "description": "Permanently deletes a template from your Dropbox Sign account by its template_id. Once deleted, the template cannot be recovered. Use this when you need to remove outdated or unused templates. Returns success if template is deleted or doesn't exist." }, { "slug": "DROPBOX_SIGN_DOWNLOAD_SIGNATURE_REQUEST_FILES", "name": "Download Signature Request Files", "description": "Download files for a signature request as PDF (merged) or ZIP (individual documents). Returns immediately if files are ready, or indicates if files are still being prepared (409 status)." }, { "slug": "DROPBOX_SIGN_EDIT_AND_RESEND_EMBEDDED_SIGNATURE_REQUEST", "name": "Edit and Resend Embedded Signature Request", "description": "Tool to edit and resend an embedded signature request. Use when you need to modify and restart the embedded signing flow for an existing request." }, { "slug": "DROPBOX_SIGN_EDIT_AND_RESEND_SIGNATURE_REQUEST", "name": "Edit and Resend Signature Request", "description": "Edits and resends an existing non-templated signature request with updated documents, signers, or settings. Use this tool when you need to modify an already-created signature request and resend it to signers. Note: This will reset signatures - anyone who already signed will need to sign again. Important: Edit and resend operations deduct from your signature request quota. Required: You must provide either 'files' or 'file_urls' (not both) and either 'signers' or 'grouped_signers' (not both)." }, { "slug": "DROPBOX_SIGN_EDIT_AND_RESEND_UNCLAIMED_DRAFT", "name": "Edit and Resend Unclaimed Draft", "description": "Tool to edit and resend a previously created unclaimed draft. Use when you have an existing signature_request_id and want to modify the draft before reissuing." }, { "slug": "DROPBOX_SIGN_EDIT_RESEND_EMBEDDED_SIGNATURE_REQUEST_TEMPLATE", "name": "Edit and Resend Embedded Signature Request With Template", "description": "Tool to edit and resend an embedded signature request using templates. Use when you need to update request details or recipients and resend within an embedded signing flow." }, { "slug": "DROPBOX_SIGN_GET_ACCOUNT", "name": "Get Dropbox Sign Account", "description": "Retrieves detailed information about a Dropbox Sign account including quotas, payment status, and settings. Use this tool to: - Check account quota limits (API requests, documents, templates remaining) - Verify account payment status (paid vs free tier) - Get account settings (SMS delivery, authentication options) - Retrieve account identifiers and contact information Requires either account_id (40-character identifier) or email_address, but not both." }, { "slug": "DROPBOX_SIGN_GET_API_APP", "name": "Get API App", "description": "Tool to retrieve information about an API App by its client ID. Use when you need to fetch API App configuration, OAuth settings, white labeling options, or owner details." }, { "slug": "DROPBOX_SIGN_GET_BULK_SEND_JOB", "name": "Get Bulk Send Job", "description": "Tool to retrieve the status of a bulk send job. Use when you need up-to-date job progress and request details." }, { "slug": "DROPBOX_SIGN_GET_CURRENT_TEAM", "name": "Get Current Team Membership", "description": "Tool to get the current team membership status and details. Use when you need to check if the authenticated user is part of a team and retrieve team information. Returns is_on_team False if user is not part of any team (no retries needed for this case)." }, { "slug": "DROPBOX_SIGN_GET_EMBEDDED_SIGN_URL", "name": "Get Embedded Sign URL", "description": "Retrieves an embedded signing URL for a specific signer's signature. Use this after creating an embedded signature request to get a temporary URL that can be embedded in an iFrame for the signer to complete signing. The URL expires after 60 minutes or upon first access, but you can generate a new URL anytime using the same signature_id. Note: Requires the signature_id (per signer), not the signature_request_id." }, { "slug": "DROPBOX_SIGN_GET_EMBEDDED_TEMPLATE_EDIT_URL", "name": "Get Embedded Template Edit URL", "description": "Tool to generate an edit URL for embedded template editing. Use after selecting or uploading a template to allow users to modify it in an iframe." }, { "slug": "DROPBOX_SIGN_GET_FAX_LINE_AREA_CODES", "name": "Get Available Fax Line Area Codes", "description": "Tool to retrieve available fax line area codes for a given country, state/province, and city. Use when you need to determine which area codes are available for purchasing or provisioning a fax line in a specific location." }, { "slug": "DROPBOX_SIGN_GET_SIGNATURE_REQUEST", "name": "Get Signature Request", "description": "Retrieves the current status and complete details of a signature request by ID. Use this action to: - Check if signers have viewed, signed, or declined the request - Get signer information and signature timestamps - Access form field responses and custom field values - Retrieve URLs for document downloads and management - Monitor signature request progress and completion status Returns detailed information including signer names, emails, signing status, custom fields, response data, attachments, and signing options. Handles errors gracefully with structured error responses for invalid or non-existent signature request IDs." }, { "slug": "DROPBOX_SIGN_GET_SIGNATURE_REQUEST_FILES_AS_DATA_URI", "name": "Get Signature Request Files as Data URI", "description": "Tool to download signature request files as a base64-encoded data URI. Use when you need the document content as a data URI string for embedding or transmission. Returns immediately if files are ready (status 200), or indicates if files are still being prepared (status 409)." }, { "slug": "DROPBOX_SIGN_GET_SIGNATURE_REQUEST_FILES_AS_FILE_URL", "name": "Get Signature Request Files as File URL", "description": "Retrieves a copy of the current documents and returns a JSON object with a URL to the file (PDFs only). Use this action when you need a temporary download link for signature request documents instead of downloading the files directly. The returned URL will expire after a certain time period indicated by the expires_at field." }, { "slug": "DROPBOX_SIGN_GET_TEAM_INFO", "name": "Get Team Info", "description": "Retrieves information about a Dropbox Sign team, including team name, member count, and sub-team count. Use when you need to get team details. If team_id is provided, retrieves info for that specific team; otherwise retrieves info for the authenticated user's team." }, { "slug": "DROPBOX_SIGN_GET_TEMPLATE", "name": "Get Template", "description": "Tool to return the specified template. Use when you need to fetch full template details by ID." }, { "slug": "DROPBOX_SIGN_GET_TEMPLATE_FILES", "name": "Download Template Files", "description": "Tool to download documents associated with a template. Use after confirming the template is created; returns a PDF or ZIP archive of the documents." }, { "slug": "DROPBOX_SIGN_GET_TEMPLATE_FILES_AS_DATA_URI", "name": "Get Template Files as Data URI", "description": "Tool to retrieve template documents as base64-encoded data URI. Use when you need template files in data URI format instead of downloading binary files." }, { "slug": "DROPBOX_SIGN_GET_TEMPLATE_FILES_AS_FILE_URL", "name": "Get Template Files as File URL", "description": "Tool to retrieve a copy of template documents and return a JSON object with a URL to the file (PDFs only). Use this action when you need a temporary download link for template documents instead of downloading the files directly." }, { "slug": "DROPBOX_SIGN_LIST_API_APPS", "name": "List API Apps", "description": "Tool to list API Apps. Use when you need to retrieve a paginated list of API Apps accessible to your account." }, { "slug": "DROPBOX_SIGN_LIST_BULK_SEND_JOBS", "name": "List Bulk Send Jobs", "description": "Tool to list bulk send jobs. Use when you need to retrieve all bulk send job summaries the authenticated user can access. Supports pagination via page and page_size." }, { "slug": "DROPBOX_SIGN_LIST_FAXES", "name": "List Faxes", "description": "Tool to list faxes and their properties. Use when you need to retrieve paginated faxes with information about transmissions and status." }, { "slug": "DROPBOX_SIGN_LIST_FAX_LINES", "name": "List Fax Lines", "description": "Tool to list fax lines and their properties. Use when you need to retrieve available fax lines for an account, optionally paging or including team lines." }, { "slug": "DROPBOX_SIGN_LIST_SIGNATURE_REQUESTS", "name": "List Signature Requests", "description": "Tool to list signature requests. Use when you need to retrieve paginated signature requests with optional filters." }, { "slug": "DROPBOX_SIGN_LIST_SUB_TEAMS", "name": "List Sub-Teams", "description": "Lists all sub-teams belonging to a parent team with pagination support. Returns team identifiers and names for each sub-team. Use this to discover the organizational structure of teams within Dropbox Sign. Requires a valid team_id from the parent team. Returns empty list if the team has no sub-teams or if team features are not available for the account." }, { "slug": "DROPBOX_SIGN_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "Lists all members and their roles for a specific team. Returns a paginated list of team members with their account IDs, email addresses, and roles. Requires team_id which can be obtained from LIST_TEAMS or GET_TEAM_INFO actions. Supports pagination for teams with many members." }, { "slug": "DROPBOX_SIGN_LIST_TEAMS", "name": "List All Teams", "description": "Lists all Dropbox Sign teams accessible to the authenticated user, including the current team and its sub-teams. Returns team IDs and names which can be used with other team-related actions. Returns an empty list if the account doesn't have team features enabled." }, { "slug": "DROPBOX_SIGN_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates. Use when you need to retrieve a paginated list of templates accessible to your account." }, { "slug": "DROPBOX_SIGN_O_AUTH_AUTHORIZE", "name": "Generate OAuth Authorization URL", "description": "Tool to generate an OAuth authorization URL. Use before directing the user to grant access." }, { "slug": "DROPBOX_SIGN_RELEASE_SIGNATURE_REQUEST_HOLD", "name": "Release Signature Request Hold", "description": "Release a held signature request to send it to signers. Use this when a signature request was created from an unclaimed draft with hold_request=true and has been claimed but not yet sent. After releasing, the request will be sent to all designated signers." }, { "slug": "DROPBOX_SIGN_REMOVE_USER_FROM_TEMPLATE", "name": "Remove User from Template", "description": "Tool to remove an account's access to a template. Use when you need to revoke a user's permission on a template after confirming template ID and target account." }, { "slug": "DROPBOX_SIGN_SEND_SIGNATURE_REQUEST", "name": "Send Signature Request", "description": "Tool to create and send a new signature request with documents. Use when you need to send documents for electronic signature. The action sends emails to all specified signers with links to view and sign the documents. Supports multiple signers, CC recipients, custom fields, form fields, and various signing options. Documents can be uploaded directly or provided via publicly accessible URLs." }, { "slug": "DROPBOX_SIGN_SEND_SIGNATURE_REQUEST_REMINDER", "name": "Send Request Reminder", "description": "Sends an email reminder to a signer about a pending signature request. Use this when a signer needs a reminder to complete their signature. Important constraints: - Cannot send a reminder within 1 hour of the last reminder (automatic or manual) - Cannot be used with embedded signature requests - The signature request must exist and not be completed - The email address must match a signer on the request" }, { "slug": "DROPBOX_SIGN_UPDATE_ACCOUNT", "name": "Update Dropbox Sign Account", "description": "Tool to update Dropbox Sign account properties and settings. Use when you need to modify callback URLs or locale settings for an account." }, { "slug": "DROPBOX_SIGN_UPDATE_API_APP", "name": "Update API App", "description": "Tool to update an existing API App in Dropbox Sign. Use when you need to modify API App settings such as name, callback URL, domains, OAuth configuration, branding options, or custom logo." }, { "slug": "DROPBOX_SIGN_UPDATE_SIGNATURE_REQUEST", "name": "Update Signature Request", "description": "Updates the email address and/or name for a specific signer on a signature request. Use this when you need to correct or update signer contact information before they complete signing. Important: This endpoint only works for signature requests created with explicit form_fields_per_document (no appended signature page). At least one of email_address or name must be provided." }, { "slug": "DROPBOX_SIGN_UPDATE_TEMPLATE_FILES", "name": "Update Template Files", "description": "Tool to update files for an existing template. Overlays new files with the overlay of an existing template. Use when you need to replace the documents in a template while keeping the field configuration. The update is processed asynchronously; completion is communicated via callback events (template_created or template_error)." }, { "slug": "DROPBOX_SIGN_VERIFY_ACCOUNT", "name": "Verify Dropbox Sign Account", "description": "Tool to verify whether a Dropbox Sign account exists for the given email. Use when you need to check account existence before sending signature requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "dropbox_sign_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "basic_account_info,request_signature" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "dropbox_sign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Dropbox Sign API key (raw, not Base64)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wiz", "name": "Wiz", "logo": "https://logos.composio.dev/api/wiz", "description": "Wiz is a cloud security platform automating risk detection, compliance checks, and infrastructure scanning across cloud environments", "category": "security & identity tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "wiz_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "visme", "name": "Visme", "logo": "https://logos.composio.dev/api/visme", "description": "Visme is a visual content creation platform, enabling users to build engaging presentations, infographics, and graphics with customizable templates and multimedia elements", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "visme_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Visme API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "aero_workflow", "name": "AeroWorkflow", "logo": "https://logos.composio.dev/api/aero_workflow", "description": "Aero Workflow is a practice management tool for accounting firms, offering task tracking, time billing, and client collaboration in a centralized workspace", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "aero-workflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Secret", "type": "string", "description": "Your Aero Workflow API secret for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "timely", "name": "Timely", "logo": "https://logos.composio.dev/api/timely", "description": "Timely is an automatic time-tracking platform capturing activity across applications, calendars, and devices, creating detailed timesheets for billing or productivity insights", "category": "time tracking software", "authSchemes": [ "OAUTH2" ], "toolCount": 41, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TIMELY_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client in the specified Timely account. Use when adding a new client to track time against. Client names must be unique within an account." }, { "slug": "TIMELY_CREATE_DAY_LOCKING", "name": "Create Day Locking", "description": "Tool to create a day locking entry that prevents editing of time entries for specific dates and users. Use when you need to lock time entries to prevent modifications after approval or billing." }, { "slug": "TIMELY_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new label in the specified Timely account. Use when you need to create a label for categorizing projects, time entries, or other resources." }, { "slug": "TIMELY_CREATE_REPORT", "name": "Create report", "description": "Tool to generate reports for a Timely account with optional filters. Use when you need to create reports for time tracking, billing analysis, or project summaries with date range or user/project filters." }, { "slug": "TIMELY_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in the specified Timely account. Use when organizing users into teams for better collaboration and project management." }, { "slug": "TIMELY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for the specified account. Use after specifying the target URL and event subscriptions. Call only once per configuration." }, { "slug": "TIMELY_DELETE_LABEL", "name": "Delete a label", "description": "Tool to delete a label by ID from a Timely account. Use when you need to remove an existing label." }, { "slug": "TIMELY_DELETE_TEAM", "name": "Delete a team", "description": "Tool to delete a team by its ID. Use when you need to remove a specific team from the account. This operation is destructive and cannot be undone." }, { "slug": "TIMELY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook by its ID. Use when you need to remove a webhook subscription from an account." }, { "slug": "TIMELY_FILTER_REPORTS", "name": "Filter reports", "description": "Tool to filter Timely reports based on date range, users, projects, labels, teams, and billing status. Use when you need to generate custom reports with specific criteria or analyze time tracking data for specific periods or resources." }, { "slug": "TIMELY_GET_ACTIVITIES", "name": "Get activities", "description": "Tool to retrieve all activities (audit trail) for a Timely account. Activities include logged hours, created reports, shared reports, project changes, and other account events. Use when you need to view the activity log or audit trail for an account." }, { "slug": "TIMELY_GET_CLIENT", "name": "Get Client", "description": "Tool to retrieve details of a specific client by its ID. Use when you need to fetch client information such as name, color, active status, or external references." }, { "slug": "TIMELY_GET_CURRENT_PERMISSIONS", "name": "Get current user's permissions", "description": "Tool to retrieve the current user's permissions for a specified account. Use when you need to check what actions the authenticated user can perform." }, { "slug": "TIMELY_GET_CURRENT_USER", "name": "Get current user", "description": "Tool to retrieve the currently authenticated user. Use when you need to get details of the logged-in user." }, { "slug": "TIMELY_GET_LABEL", "name": "Retrieve a label", "description": "Tool to retrieve a label by ID from a Timely account. Use when you need to fetch label details such as name, color, and parent relationship." }, { "slug": "TIMELY_GET_PROJECT", "name": "Get project", "description": "Tool to retrieve a single project by its ID. Use when you need detailed information about a specific project, such as its name, budget, billable status, or associated client." }, { "slug": "TIMELY_GET_TEAM", "name": "Retrieve a team", "description": "Tool to retrieve details of a specific team by its ID. Use when you need to fetch team information including name, color, and members." }, { "slug": "TIMELY_GET_USER", "name": "Retrieve a user", "description": "Tool to retrieve a user by ID from a Timely account. Use when you need to fetch user details such as name, email, and avatar." }, { "slug": "TIMELY_GET_USER_CAPACITIES", "name": "Get user capacities", "description": "Tool to retrieve capacity information for a specific user in a Timely account. Use when you need to check user work capacity or availability schedules." }, { "slug": "TIMELY_GET_USER_PERMISSIONS", "name": "Get user permissions", "description": "Tool to retrieve a user's permissions by their ID. Use when you need to check what permissions a specific user has in a Timely account." }, { "slug": "TIMELY_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by its ID. Use when you need to check the configuration or status of an existing webhook." }, { "slug": "TIMELY_LIST_ACCOUNTS", "name": "List accounts", "description": "Retrieve all accessible Timely accounts for the authenticated user. Example: \"List all Timely accounts\"" }, { "slug": "TIMELY_LIST_CLIENTS", "name": "List clients", "description": "Tool to list all clients in a Timely account with optional filtering and sorting. Use when you need to discover client IDs or names for project creation, reporting, or mapping external systems." }, { "slug": "TIMELY_LIST_EVENTS", "name": "List events", "description": "Tool to list all events (time entries) in a Timely account with optional filtering by date range, users, and projects. Use when you need to retrieve time entries for reporting, analysis, or synchronization with external systems." }, { "slug": "TIMELY_LIST_FORECASTS", "name": "List forecasts", "description": "Tool to list all forecasts (tasks) in a Timely account with optional date filtering. Use when you need to view planned tasks, retrieve forecast IDs, or analyze scheduled work." }, { "slug": "TIMELY_LIST_LABELS", "name": "List labels", "description": "Tool to list all labels in a Timely account. Use when you need to discover label IDs or names for organizing projects and time entries. Can optionally filter to show only child labels by providing a parent_id." }, { "slug": "TIMELY_LIST_PROJECT_EVENTS", "name": "List project events", "description": "Tool to list all events (time entries) for a specific project in Timely. Use when you need to retrieve all time logs associated with a project for reporting, analysis, or verification." }, { "slug": "TIMELY_LIST_PROJECTS", "name": "List projects", "description": "Tool to list all projects in a Timely account with optional filtering and sorting. Use when you need to discover project IDs or names for time entry creation, reporting, or mapping external systems." }, { "slug": "TIMELY_LIST_ROLES", "name": "List roles", "description": "Tool to list all available roles in a Timely account. Use when you need to discover role IDs or names for user assignment or permission management." }, { "slug": "TIMELY_LIST_TEAMS", "name": "List teams", "description": "Tool to list all teams in the specified Timely account. Use when you need to retrieve all teams for collaboration and project management purposes." }, { "slug": "TIMELY_LIST_USER_EVENTS", "name": "List user events", "description": "Tool to list all events (time entries) for a specific user in Timely. Use when you need to retrieve all time logs for a user for reporting, analysis, or verification." }, { "slug": "TIMELY_LIST_USERS", "name": "List users", "description": "Tool to list all users in a Timely account with optional filtering and pagination. Use when you need to discover user IDs, names, or emails for time entry creation, reporting, or user management." }, { "slug": "TIMELY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks in the specified account. Use when you need to see existing webhook configurations or verify webhook setup." }, { "slug": "TIMELY_PROCESS_BULK_EVENTS", "name": "Process bulk events", "description": "Tool to create, update, or delete multiple events in a single bulk operation. Use when performing multiple event operations to improve efficiency. Supports up to 100 operations per request across create, update, and delete operations." }, { "slug": "TIMELY_RETRIEVE_ACCOUNT", "name": "Retrieve an account", "description": "Tool to retrieve details of a specific account by its ID. Use when you need to fetch fresh account info after confirming the ID. Example: \"Retrieve account details for account ID 364\"" }, { "slug": "TIMELY_UPDATE_CLIENT", "name": "Update a client", "description": "Tool to update an existing client by ID in Timely. Use when you need to modify client details such as name, status, color, or external ID." }, { "slug": "TIMELY_UPDATE_DAY_LOCKING", "name": "Update day locking settings", "description": "Tool to update day locking settings for specified users and dates. Use when you need to lock or unlock specific days for time tracking. Locked days prevent users from editing time entries on those dates." }, { "slug": "TIMELY_UPDATE_LABEL", "name": "Update a label", "description": "Tool to update a label by ID in a Timely account. Use when you need to modify an existing label's name, color, or hierarchy." }, { "slug": "TIMELY_UPDATE_PROJECT", "name": "Update a project", "description": "Tool to update a project by ID in a Timely account. Use when you need to modify project details such as name, description, billing status, or archive a project." }, { "slug": "TIMELY_UPDATE_USER", "name": "Update a user", "description": "Tool to update a user by ID in a Timely account. Use when you need to modify user details such as email, name, role, or status." }, { "slug": "TIMELY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook by ID. Use when you need to modify webhook settings such as URL, subscriptions, or active status." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "generic_id", "displayName": "Account ID", "type": "string", "description": "Optional Timely account ID; if omitted we'll fetch the first available account.", "required": false, "default": null } ] } } } ] }, { "slug": "box", "name": "Box", "logo": "https://logos.composio.dev/api/box", "description": "Box is a cloud content management platform for secure file storage, sharing, collaboration, and governance.", "category": "file management & storage", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 286, "triggerCount": 20, "version": "20260703_00", "tools": [ { "slug": "BOX_ADD_ALLOWED_COLLABORATION_DOMAIN", "name": "Add domain to list of allowed collaboration domains", "description": "Creates a new entry in the list of allowed domains for collaboration within your enterprise. This allows you to whitelist specific domains for external collaboration. Use 'inbound' to allow users from the specified domain to collaborate on your enterprise's files and folders. Use 'outbound' to allow your enterprise users to collaborate on content owned by the specified domain. Use 'both' for bidirectional collaboration. Note: This action requires enterprise admin privileges and the 'manage_enterprise_properties' scope." }, { "slug": "BOX_ADD_CLASSIFICATION_TO_FILE", "name": "Add classification to file", "description": "Adds a classification to a file by specifying the label of the classification to add. **Enterprise-only feature**: This action requires a Box enterprise account with classification templates configured. Users without an enterprise account will receive an error when attempting to use this feature. This API can also be called by including the enterprise ID in the URL explicitly, for example `/files/:id//enterprise_12345/securityClassification-6VMVochwUWo`." }, { "slug": "BOX_ADD_CLASSIFICATION_TO_FOLDER", "name": "Add classification to folder", "description": "Adds a classification to a folder by specifying the label of the classification to add. **Enterprise-only feature**: This action requires a Box enterprise account with classification templates configured. Users without an enterprise account will receive an error when attempting to use this feature. **Prerequisites**: - A classification template must exist in the enterprise. Use `list_all_classifications` to retrieve available classification keys. - If no classifications exist, an admin must first create the classification template using `add_initial_classifications`. **Common errors**: - 404: Classification template not found (no classifications exist in enterprise) - 409: Classification already exists on this folder (use update action instead) - 403: Insufficient permissions to add classifications This API can also be called by including the enterprise ID in the URL explicitly, for example `/folders/:id//enterprise_12345/securityClassification-6VMVochwUWo`." }, { "slug": "BOX_ADD_INITIAL_CLASSIFICATIONS", "name": "Add initial classifications", "description": "Initializes the classification template for an enterprise with an initial set of classification options. IMPORTANT: This action requires admin permissions and should only be called once per enterprise when no classifications exist. If classifications already exist, use the 'add_classification' action to add more options. Common classification examples: 'Confidential', 'Internal', 'Public', 'Restricted'. Returns 400 if the classification template already exists. Returns 403 if the user lacks admin permissions." }, { "slug": "BOX_ADD_OR_UPDATE_USER_AVATAR", "name": "Add or update user avatar", "description": "Adds or updates a user avatar." }, { "slug": "BOX_ADD_SHARED_LINK_TO_FILE", "name": "Add shared link to file", "description": "Adds a shared link to a file." }, { "slug": "BOX_ADD_SHARED_LINK_TO_FOLDER", "name": "Add shared link to folder", "description": "Adds a shared link to a folder, allowing it to be shared with others via a URL. This action creates or updates a shared link on a folder. The shared link can be configured with different access levels: - 'open': Anyone with the link can access - 'company': Only people within the company can access (paid accounts only) - 'collaborators': Only those invited to the folder can access To create a shared link with default enterprise settings, call with just folder_id and fields='shared_link'. To customize access, set shared_link_access parameter. Returns the folder object with the new shared_link information including the URL." }, { "slug": "BOX_ADD_SHARED_LINK_TO_WEB_LINK", "name": "Add shared link to web link", "description": "Adds a shared link to a web link." }, { "slug": "BOX_ADD_USER_TO_GROUP", "name": "Add user to group", "description": "Creates a group membership. Only users with admin-level permissions will be able to use this API." }, { "slug": "BOX_APPEND_METADATA_TAXONOMY_LEVEL", "name": "Append metadata taxonomy level", "description": "Appends a new level to a metadata taxonomy structure. Use when adding hierarchical categories to organize metadata. If no levels exist, this creates the first level." }, { "slug": "BOX_APPLY_WATERMARK_TO_FILE", "name": "Apply watermark to file", "description": "Applies or update a watermark on a file." }, { "slug": "BOX_APPLY_WATERMARK_TO_FOLDER", "name": "Apply watermark to folder", "description": "Applies or update a watermark on a folder." }, { "slug": "BOX_ASK_QUESTION", "name": "Ask question", "description": "Ask questions about Box files using Box AI. Use this action to query one or more files with natural language questions. Box AI will analyze the file contents and provide an answer based on the information found in the files. Modes: - single_item_qa: Ask about a single file (items array must have exactly 1 element) - multiple_item_qa: Ask about multiple files (up to 25 files) Limitations: - Text documents: Up to 1MB per file, max 25 files - Images: 1024x1024px resolution, max 5 images/pages - Prompts: Max 10,000 characters Requires 'manage_ai' scope in the access token." }, { "slug": "BOX_ASSIGN_LEGAL_HOLD_POLICY", "name": "Assign legal hold policy", "description": "Assign a legal hold policy to a file, file version, folder, or user. Legal hold policies preserve content for litigation or compliance purposes by preventing the deletion of specified items. When assigned to a folder, the hold applies recursively to all contents. When assigned to a user, the hold applies to all content owned by that user. Note: This feature requires Box Enterprise or higher with legal hold capabilities enabled. The authenticated user must have admin privileges with 'manage_legal_holds' scope." }, { "slug": "BOX_ASSIGN_RETENTION_POLICY", "name": "Assign retention policy", "description": "Assigns a retention policy to an item in Box to enforce content retention. Use this action to apply a retention policy to: - An entire enterprise (assign_to_type='enterprise', no ID needed) - A specific folder (assign_to_type='folder', provide folder ID) - Items matching metadata criteria (assign_to_type='metadata_template', provide template ID) Prerequisites: - Box Governance license is required - Admin permissions with 'manage_data_retention' and 'enterprise_content' scopes - A retention policy must exist (use create_retention_policy first) Example usage for folder assignment: - policy_id: \"173463\" (from create_retention_policy or list_retention_policies) - assign_to_type: \"folder\" - assign_to_id: \"6564564\" (the folder ID)" }, { "slug": "BOX_ASSIGN_STORAGE_POLICY", "name": "Assign storage policy", "description": "Creates a storage policy assignment for an enterprise or user. Storage policies control where data is stored geographically (data residency). This action requires Box Zones or similar enterprise feature to be enabled. Use 'list_storage_policies' to get available policies before assignment." }, { "slug": "BOX_ASSIGN_TASK", "name": "Assign task", "description": "Assigns a task to a user. A task can be assigned to more than one user by creating multiple assignments." }, { "slug": "BOX_AUTHORIZE_USER", "name": "Authorize user", "description": "Authorize a user by sending them through the [Box](https://box.com) website and request their permission to act on their behalf. This is the first step when authenticating a user using OAuth 2.0. To request a user's authorization to use the Box APIs on their behalf you will need to send a user to the URL with this format." }, { "slug": "BOX_CANCEL_BOX_SIGN_REQUEST", "name": "Cancel box sign request", "description": "Cancels a pending Box Sign request that has not yet been fully signed or declined. After cancellation, any outstanding signers will no longer be able to sign the document. Only the user who created the request (the requester) is able to cancel it. Note: A request cannot be cancelled if it was already declined, fully signed, or if the document is still in the converting state. Returns the cancelled sign request object with updated status set to 'cancelled'." }, { "slug": "BOX_COMMIT_UPLOAD_SESSION", "name": "Commit upload session", "description": "Commits an upload session and creates a file from the uploaded chunks. This is the final step in a chunked upload workflow: 1. Create an upload session using 'create_upload_session' 2. Upload file parts using 'upload_part_of_file' 3. Commit the session using this action to finalize the file Requirements: - All parts must be uploaded before committing - The digest header must contain the SHA1 hash of the entire file (Base64 encoded) - Parts array must include part_id, offset, and size for each uploaded chunk Note: The API may return 202 if processing is not complete. In this case, check the retry_after field and retry after the specified number of seconds." }, { "slug": "BOX_COPY_FILE", "name": "Copy file", "description": "Creates a copy of a file." }, { "slug": "BOX_COPY_FILE_REQUEST", "name": "Copy file request", "description": "Copies an existing file request to a new folder. File requests allow external users to upload files to a specific folder without needing a Box account. This action creates a copy of an existing file request and associates it with a different destination folder. IMPORTANT LIMITATION: File request IDs cannot be discovered via API - they can only be obtained from the Box web application. To find a file_request_id: 1. Navigate to Box web UI (https://app.box.com) 2. Go to the folder containing the file request 3. Open the file request settings 4. Copy the ID from the URL (e.g., https://*.app.box.com/filerequest/123 → ID is \"123\") Common use cases: - Creating file request templates that can be copied to multiple project folders - Automating file request creation for new cases/customers/projects - Duplicating file requests with different settings (title, description, etc.) When copying, you can optionally override settings from the source file request including title, description, status, and form requirements." }, { "slug": "BOX_COPY_FOLDER", "name": "Copy folder", "description": "Creates a copy of a folder within a destination folder. The original folder will not be changed." }, { "slug": "BOX_CREATE_AI_AGENT", "name": "Create AI Agent", "description": "Creates a custom AI agent in Box AI Studio. At least one capability required: ask (Q&A), text_gen (content generation), or extract (metadata extraction). Requirements: Box Enterprise Advanced account, Box AI Studio enabled, \"Manage AI\" scope in Developer Console. Access options: 'enabled' (all users), 'disabled' (none), 'enabled_for_selected_users' (specified in allowed_entities). Example: Set name + ask__type='ai_agent_ask' + ask__access__state='enabled' + ask__description to create Q&A agent." }, { "slug": "BOX_CREATE_BOX_SIGN_REQUEST", "name": "Create Box Sign Request", "description": "Creates a Box Sign request to send documents for electronic signing. Prepares documents and sends signature requests to signers via email. Signers do not need Box accounts. Supports up to 10 files, 35 signers, sequential signing order, templates, and custom redirect URLs. Requires Box Sign feature enabled and sign_requests.readwrite scope." }, { "slug": "BOX_CREATE_BOX_SKILL_CARDS_ON_FILE", "name": "Create box skill cards on file", "description": "Applies one or more Box Skills metadata cards to a file. NOTE: This action creates NEW Box Skill cards on a file. If Box Skill cards already exist on the file, this action will fail with a 409 Conflict error. In that case: - Use 'remove_box_skill_cards_from_file' to delete existing cards first, then create new ones, OR - Use 'update_all_box_skill_cards_on_file' to overwrite all existing cards" }, { "slug": "BOX_CREATE_COLLAB_EXEMPTION", "name": "Create user exemption from collaboration domain restrictions", "description": "Exempts a specific user from the enterprise's collaboration domain restrictions. This allows the specified user to collaborate with external parties from any domain, bypassing the enterprise's allowed collaboration domain list. PREREQUISITES: - The enterprise MUST have at least one allowed collaboration domain configured. Use 'Add domain to list of allowed collaboration domains' first if needed. - The user must not already have an exemption (returns 409 Conflict if exists). - Requires enterprise admin privileges with 'manage_users' scope. COMMON ERRORS: - 409 Conflict: User already exempt OR no whitelisted domains exist for enterprise. - 403 Forbidden: Insufficient permissions to manage user exemptions. - 404 Not Found: The specified user ID does not exist." }, { "slug": "BOX_CREATE_COLLABORATION", "name": "Create collaboration", "description": "Adds a collaboration for a single user or a single group to a file or folder. Collaborations can be created using email address, user IDs, or a group IDs. If a collaboration is being created with a group, access to this endpoint is dependent on the group's ability to be invited. If collaboration is in `pending` status, the following fields are redacted: - `login` and `name` are hidden if a collaboration was created using `user_id`, - `name` is hidden if a collaboration was created using `login`." }, { "slug": "BOX_CREATE_COMMENT", "name": "Create comment", "description": "Adds a comment by the user to a specific file, or as a reply to an other comment." }, { "slug": "BOX_CREATE_EMAIL_ALIAS", "name": "Create email alias", "description": "Adds a new email alias to a user account. The email domain must be registered to your enterprise. Returns the newly created email alias object with id, type, email, and is_confirmed fields." }, { "slug": "BOX_CREATE_FOLDER", "name": "Create folder", "description": "Creates a new empty folder within the specified parent folder." }, { "slug": "BOX_CREATE_FOLDER_LOCK", "name": "Create folder lock", "description": "Creates a folder lock on a folder, preventing it from being moved and/or deleted. You must be authenticated as the owner or co-owner of the folder to use this endpoint." }, { "slug": "BOX_CREATE_GROUP", "name": "Create group", "description": "Creates a new group of users in an enterprise. Only users with admin permissions can create new groups." }, { "slug": "BOX_CREATE_LEGAL_HOLD_POLICY", "name": "Create legal hold policy", "description": "Create a new legal hold policy in Box. Legal hold policies are used to prevent permanent deletion of content during ongoing litigation. Once created, the policy can be assigned to specific users, folders, or files. IMPORTANT: Either `is_ongoing` must be set to true, OR both `filter_started_at` and `filter_ended_at` must be provided. The policy name must be unique within the enterprise. Requires Box Governance add-on (Enterprise plan with legal hold feature enabled)." }, { "slug": "BOX_CREATE_METADATA_CASCADE_POLICY", "name": "Create metadata cascade policy", "description": "Creates a new metadata cascade policy that automatically applies a metadata template to all files and subfolders within a specified folder. Prerequisites: - A metadata instance must already be applied to the target folder before creating the cascade policy. - The target folder cannot be the root folder (ID '0'). - Enterprise admin must have enabled 'Cascading Folder Level Metadata' in Admin Console > Enterprise Settings > Content & Sharing. Common use case: After applying metadata to a folder, create a cascade policy to ensure all new items added to that folder automatically inherit the metadata. Returns: A MetadataCascadePolicy object with id, type, owner_enterprise, parent, scope, and templateKey fields. Error codes: - 400: Invalid format for scope, templateKey, or folder_id - 403: Policy cannot apply to restricted folders (e.g., root folder) - 404: Folder or template not found/inaccessible - 409: Duplicate policy already exists for this folder/template combination" }, { "slug": "BOX_CREATE_METADATA_INSTANCE_ON_FILE", "name": "Create metadata instance on file", "description": "Applies an instance of a metadata template to a file. The metadata_fields parameter contains key-value pairs that match the fields defined in the template. In most cases only field keys present in the metadata template will be accepted, except for the `global.properties` template which accepts any key-value pair. Common error codes: - 409 (tuple_already_exists): A metadata instance of this template already exists on the file. - 404 (not_found): The file was not found or the user does not have access. - 404 (instance_tuple_not_found): The metadata template was not found. - 400 (schema_validation_failed): Invalid field key or value type for the template." }, { "slug": "BOX_CREATE_METADATA_INSTANCE_ON_FOLDER", "name": "Create metadata instance on folder", "description": "Applies an instance of a metadata template to a folder. In most cases only values that are present in the metadata template will be accepted, except for the `global.properties` template which accepts any key-value pair. To display the metadata template in the Box web app the enterprise needs to be configured to enable **Cascading Folder Level Metadata** for the user in the admin console." }, { "slug": "BOX_CREATE_METADATA_TAXONOMY", "name": "Create metadata taxonomy", "description": "Tool to create a new metadata taxonomy in Box. Use when you need to set up a hierarchical classification system for organizing and categorizing metadata templates." }, { "slug": "BOX_CREATE_METADATA_TAXONOMY_LEVELS", "name": "Create metadata taxonomy levels", "description": "Creates new hierarchical levels for a metadata taxonomy in Box. Use this to define the structure of your taxonomy by specifying levels like Continent -> Country -> City. Each level must have a unique level number starting from 1, with higher numbers representing deeper levels in the hierarchy." }, { "slug": "BOX_CREATE_METADATA_TAXONOMY_NODE", "name": "Create metadata taxonomy node", "description": "Tool to create a new metadata taxonomy node within a specified taxonomy. Use when you need to add a new classification or category to an existing metadata taxonomy hierarchy." }, { "slug": "BOX_CREATE_METADATA_TEMPLATE", "name": "Create metadata template", "description": "Creates a new metadata template that can be applied to files and folders." }, { "slug": "BOX_CREATE_RETENTION_POLICY", "name": "Create retention policy", "description": "Creates a retention policy for managing content lifecycle in Box. Retention policies prevent permanent deletion of content for a specified duration. Once created, policies can be assigned to folders or the entire enterprise. Note: This endpoint requires the Box Governance add-on feature and the 'manage retention policies' scope enabled in your application." }, { "slug": "BOX_CREATE_SHIELD_INFORMATION_BARRIER", "name": "Create shield information barrier", "description": "Creates a shield information barrier to establish an \"ethical wall\" that separates individuals/groups within an enterprise and prevents confidential information sharing. Prerequisites: Box Shield add-on must be licensed and enabled. Admin-level permissions required. Only one barrier allowed per enterprise. NOT available in Shield trials. Workflow: 1) Get enterprise ID from /users/me, 2) Create barrier (starts in 'draft'), 3) Create segments and add users, 4) Define segment restrictions, 5) Enable barrier. Common errors: 400 (missing enterprise), 404 (Shield not enabled/invalid ID), 409 (barrier already exists)." }, { "slug": "BOX_CREATE_SHIELD_INFORMATION_BARRIER_REPORT", "name": "Create shield information barrier report", "description": "Creates a shield information barrier report for a given barrier. Shield information barrier reports track the configuration status of information barriers in Box Shield. When created, reports start with status 'pending' and transition to 'done', 'error', or 'cancelled'. Note: Requires Box Shield enterprise add-on license. Returns 404 if Shield is not enabled for the enterprise. Returns 409 if a report is already being created." }, { "slug": "BOX_CREATE_SHIELD_INFORMATION_BARRIER_SEGMENT", "name": "Create shield information barrier segment", "description": "Creates a new shield information barrier segment for compliance and information isolation. Segments represent organizational divisions (e.g., Investment Banking, Research, Trading) that need to be isolated from each other for regulatory compliance. Each segment can have users assigned to it, and restrictions can be created to prevent collaboration between specific segments. Prerequisites: Box Shield license, existing barrier (create_shield_information_barrier), barrier in 'draft'/'pending' status. Returns 404 if Shield not enabled or barrier doesn't exist. Returns 409 if segment name already exists. Related: create_shield_information_barrier_segment_member, create_shield_information_barrier_segment_restriction, list_shield_information_barrier_segments" }, { "slug": "BOX_CREATE_SHIELD_INFORMATION_BARRIER_SEGMENT_MEMBER", "name": "Create shield information barrier segment member", "description": "Adds a Box user to a shield information barrier segment for compliance and information security. This assigns users to segments that restrict collaboration between departments (e.g., Investment Banking vs Research in financial institutions). Users can only belong to ONE segment at a time. Prerequisites: Box Shield license, existing barrier and segment, valid user ID. Returns 404 if Shield not enabled or resources don't exist. Related: create_shield_information_barrier_segment, list_shield_information_barrier_segment_members" }, { "slug": "BOX_CREATE_SHIELD_INFORMATION_BARRIER_SEGMENT_RESTRICTION", "name": "Create shield information barrier segment restriction", "description": "Creates a ONE-WAY shield information barrier segment restriction preventing collaboration between members of two segments (e.g., Investment Banking cannot collaborate with Research). Prerequisites: - Box Shield add-on enabled (returns 404 if not available) - Admin privileges required - Both segments must exist in the same barrier Key details: - Creates ONE-WAY restriction. For bidirectional, call twice with swapped segment IDs - shield_information_barrier parameter is optional (inferred from segments) - Use create_shield_information_barrier_segment to create segments first - Common for regulatory compliance and ethical walls Workflow: 1) Create barrier 2) Create segments 3) Create restrictions 4) Add members to segments" }, { "slug": "BOX_CREATE_SLACK_INTEGRATION_MAPPING", "name": "Create slack integration mapping", "description": "Creates a [Slack integration mapping](https://support.box.com/hc/en-us/articles/4415585987859-Box-as-the-Content-Layer-for-Slack) by mapping a Slack channel to a Box item. You need Admin or Co-Admin role to use this endpoint." }, { "slug": "BOX_CREATE_TASK", "name": "Create task", "description": "Creates a single task on a file. This task is not assigned to any user and will need to be assigned separately." }, { "slug": "BOX_CREATE_TEAMS_INTEGRATION_MAPPING", "name": "Create Teams integration mapping", "description": "Creates a Microsoft Teams integration mapping that links a Teams channel or team to a Box folder. Once mapped, files shared in the Teams channel are automatically stored in the linked Box folder. Requires Admin/Co-Admin role and the `manage_enterprise_properties` scope. **Prerequisites:** - Box for Teams must be installed in the Microsoft Teams workspace - The Box folder must be owned by the enterprise and not already mapped See: https://support.box.com/hc/en-us/articles/360044681474-Using-Box-for-Teams" }, { "slug": "BOX_CREATE_TERMS_OF_SERVICE", "name": "Create terms of service", "description": "Creates a terms of service for a given enterprise and type of user. This action requires enterprise admin permissions with 'Edit settings for your company' enabled. The Terms of Service feature must also be enabled for the enterprise in the Box Admin Console. Box supports two types of Terms of Service: - 'managed': Applied to the enterprise's own users - 'external': Applied to external collaborators from other enterprises" }, { "slug": "BOX_CREATE_TERMS_OF_SERVICE_STATUS_FOR_NEW_USER", "name": "Create terms of service status for new user", "description": "Creates a terms of service status record for a user who has not previously accepted or rejected the terms. This action records whether a user has accepted or rejected a specific terms of service. Use this for users who are encountering the terms of service for the first time. For users who have previously accepted or rejected terms, use update_terms_of_service_status_for_existing_user instead. Prerequisites: - The Terms of Service feature must be enabled for the enterprise in the Box Admin Console - A terms of service must exist (created via create_terms_of_service) - The user must not already have a status record for this terms of service Note: If a status already exists for the user and terms of service combination, the API will return an error." }, { "slug": "BOX_CREATE_UPLOAD_SESSION", "name": "Create upload session", "description": "Creates an upload session for chunked upload of large files (20MB+). This is the first step in Box's chunked upload process. After creating the session, you must: (1) upload file chunks using the upload_part endpoint, (2) commit the session using the commit endpoint to finalize the file. The session expires after 7 days. Use this for files 20MB or larger. For smaller files, use the regular upload endpoint instead." }, { "slug": "BOX_CREATE_UPLOAD_SESSION_FOR_EXISTING_FILE", "name": "Create upload session for existing file", "description": "Creates an upload session for uploading a new version of an existing file using chunked upload. Use this for files larger than 20MB. The session provides endpoints for uploading file parts, committing the upload, and checking status. Returns session info including part_size, total_parts, and session_endpoints for managing the chunked upload process." }, { "slug": "BOX_CREATE_USER", "name": "Create user", "description": "Creates a new managed user in an enterprise. This endpoint is only available to users and applications with the right admin permissions." }, { "slug": "BOX_CREATE_USER_INVITE", "name": "Create user invite", "description": "Invites an existing external user to join an enterprise. The existing user can not be part of another enterprise and must already have a Box account. Once invited, the user will receive an email and are prompted to accept the invitation within the Box web application. This method requires the \"Manage An Enterprise\" scope enabled for the application, which can be enabled within the developer console." }, { "slug": "BOX_CREATE_WEBHOOK", "name": "Create webhook", "description": "Creates a webhook to monitor a file or folder for specific events. Webhooks allow you to receive notifications at a specified URL when events occur on Box content. When an event triggers, Box sends an HTTP POST request to your specified address with details about the event. Requirements: - The notification URL must use HTTPS on port 443 - The URL must respond with HTTP 200-299 within 30 seconds - Requires 'Manage Webhooks' scope enabled for the application Note: Folder webhooks cascade to sub-folders automatically." }, { "slug": "BOX_CREATE_WEB_LINK", "name": "Create web link", "description": "Creates a web link object within a folder." }, { "slug": "BOX_CREATE_ZIP_DOWNLOAD", "name": "Create zip download", "description": "Creates a request to download multiple files and folders as a single `zip` archive file. This API does not return the archive but instead performs all the checks to ensure that the user has access to all the items, and then returns a `download_url` and a `status_url` that can be used to download the archive. The limit for an archive is either the Account's upload limit or 10,000 files, whichever is met first. **Note**: Downloading a large file can be affected by various factors such as distance, network latency, bandwidth, and congestion, as well as packet loss ratio and current server load. For these reasons we recommend that a maximum ZIP archive total size does not exceed 25GB." }, { "slug": "BOX_DELETE_AI_AGENT", "name": "Delete AI Agent", "description": "Permanently deletes a custom AI agent from Box AI Studio. This action removes the specified AI agent and all its configuration, including any custom instructions and capability settings. This operation cannot be undone. Note: This action requires the 'Manage AI' scope to be enabled for the Box application. The authenticated user must have appropriate permissions to delete AI agents. Common error responses: - 403 Forbidden: Insufficient permissions or 'Manage AI' scope not enabled - 404 Not Found: The specified agent_id does not exist" }, { "slug": "BOX_DELETE_ALLOWED_COLLABORATION_DOMAIN", "name": "Remove domain from list of allowed collaboration domains", "description": "Removes a domain from the list of allowed collaboration domains (whitelist) within your enterprise. This action deletes a specific collaboration whitelist entry, preventing users from that domain from collaborating on your enterprise's content (or vice versa, depending on the original direction). **Requirements:** - Enterprise admin privileges - The 'manage_enterprise_properties' scope - External collaboration allowlisting must be enabled for your enterprise (part of the Governance package) **Usage:** Provide the collaboration_whitelist_entry_id of the domain entry you want to remove. You can obtain this ID from the 'Add domain' or 'List allowed collaboration domains' actions. **Response:** Returns 204 No Content on successful deletion. This operation is idempotent - deleting an already deleted entry will still return success." }, { "slug": "BOX_DELETE_BARRIER_RESTRICTION", "name": "Delete shield information barrier segment restriction by id", "description": "Deletes a shield information barrier segment restriction by its unique ID. Shield information barrier segment restrictions define which segments cannot communicate with each other. When a restriction is deleted, users in the previously restricted segments will be able to collaborate again. **Important Notes:** - This operation is destructive and cannot be undone - Returns HTTP 204 (No Content) with empty response body on success - Requires Box Shield add-on with information barriers enabled - Idempotent: Deleting a non-existent restriction returns 404 (not an error state) - Requires admin privileges **Prerequisites:** - Box Shield add-on enabled (returns 404 if not available) - Valid segment restriction ID from create or list operations" }, { "slug": "BOX_DELETE_BOX_SKILL_CARDS_FROM_FILE", "name": "Remove box skill cards from file", "description": "Removes any Box Skills cards metadata from a file." }, { "slug": "BOX_DELETE_COLLABORATION", "name": "Remove collaboration", "description": "Removes a collaboration from a file or folder, revoking the collaborator's access. A collaboration in Box represents shared access granted to a user or group on a file or folder. Removing a collaboration will: - Revoke the collaborator's access to the item immediately - Remove the item from the collaborator's \"Shared with Me\" view - Cancel any pending invitations if the collaboration was not yet accepted This action is permanent and cannot be undone. To restore access, you would need to create a new collaboration. Returns HTTP 204 (No Content) on successful deletion." }, { "slug": "BOX_DELETE_COMMENT", "name": "Remove comment", "description": "Permanently deletes a comment from a file or folder in Box. This action removes a comment that was previously added to a Box item. Once deleted, the comment cannot be recovered. The operation returns HTTP 204 (No Content) on success. If the comment does not exist or has already been deleted, a 404 error is returned. Note: Only the user who created the comment or an admin can delete it." }, { "slug": "BOX_DELETE_DEVICE_PIN", "name": "Remove device pin", "description": "Deletes an individual device pin from the enterprise. Device pins are created when users access Box from mobile or desktop devices that support device pinning. Removing a device pin will require the user to re-authenticate on that device. This endpoint requires admin privileges and the 'manage_enterprise_properties' scope. On successful deletion, returns HTTP 204 No Content." }, { "slug": "BOX_DELETE_EMAIL_ALIAS", "name": "Remove email alias", "description": "Removes an email alias from a user. This endpoint permanently deletes an email alias associated with a user account. Note: You cannot remove a user's primary email address. To change the primary email, you must first create a new alias, set it as primary, then remove the old one. Returns HTTP 204 (No Content) on success with an empty response body. Returns HTTP 404 if the user or email alias is not found." }, { "slug": "BOX_DELETE_FILE", "name": "Delete file", "description": "Deletes a file from Box by moving it to trash or permanently (based on enterprise settings). Use the `if_match` parameter with the file's ETag for safe concurrent operations. To permanently delete a trashed file, use the 'Permanently remove file' action instead." }, { "slug": "BOX_DELETE_FILE_PERMANENTLY", "name": "Permanently remove file", "description": "Permanently deletes a file from the trash. This action is irreversible and cannot be undone. The file must already be in the trash before it can be permanently removed. To move a file to trash first, use the 'Delete file' action." }, { "slug": "BOX_DELETE_FILE_REQUEST", "name": "Delete file request", "description": "Deletes a file request permanently. File requests allow external users to upload files to a specific folder without needing a Box account. This action permanently deletes a file request. IMPORTANT LIMITATION: File request IDs cannot be discovered via API - they can only be obtained from the Box web application. To find a file_request_id: 1. Navigate to Box web UI (https://app.box.com) 2. Go to the folder containing the file request 3. Open the file request settings 4. Copy the ID from the URL (e.g., https://*.app.box.com/filerequest/123 → ID is \"123\") **Response:** Returns HTTP 204 No Content on success (empty response body). **Common Use Cases:** - Removing file requests that are no longer needed - Cleaning up expired or inactive file requests - Managing file request lifecycle programmatically **Note:** This operation is permanent and cannot be undone. The file request will be deleted immediately, but any files that were already uploaded through the file request will remain in the destination folder." }, { "slug": "BOX_DELETE_FILE_VERSION", "name": "Remove file version", "description": "Move a file version to the trash. Versions are only tracked for Box users with premium accounts." }, { "slug": "BOX_DELETE_FOLDER", "name": "Delete folder", "description": "Deletes a folder, either permanently or by moving it to the trash." }, { "slug": "BOX_DELETE_FOLDER_LOCK", "name": "Delete folder lock", "description": "Deletes a folder lock on a given folder, removing restrictions on move and delete operations. You must be authenticated as the owner or co-owner of the folder to use this endpoint. This action removes a lock that was previously applied to prevent a folder from being moved or deleted. Once the lock is removed, the folder can be moved, transferred to another owner, or deleted normally." }, { "slug": "BOX_DELETE_FOLDER_PERMANENTLY", "name": "Permanently remove folder", "description": "Permanently deletes a folder that is in the trash. This action cannot be undone." }, { "slug": "BOX_DELETE_GROUP", "name": "Remove group", "description": "Permanently deletes a group. Only users with admin-level permissions will be able to use this API." }, { "slug": "BOX_DELETE_LEGAL_HOLD_POLICY", "name": "Remove legal hold policy", "description": "Permanently delete an existing legal hold policy from Box. This is an asynchronous operation - the policy deletion is initiated but may not complete immediately. A successful response (HTTP 202) indicates the deletion has started. The policy cannot be recovered after deletion. Note: Legal Hold is an enterprise feature that must be enabled for your Box account. Requires 'manage_legal_holds' scope." }, { "slug": "BOX_DELETE_METADATA_CASCADE_POLICY", "name": "Remove metadata cascade policy", "description": "Permanently deletes a metadata cascade policy from a folder. When deleted, existing metadata on files/subfolders remains, but new items will no longer automatically inherit the template. Prerequisites: Requires 'manage_managed_metadata' scope and admin permissions. Returns: HTTP 204 No Content on success (empty response body). Operation is idempotent. Error codes: - 400: Invalid policy ID format - 404: Policy not found or folder inaccessible - 403: Insufficient permissions Related: BOX_CREATE_METADATA_CASCADE_POLICY, BOX_LIST_METADATA_CASCADE_POLICIES" }, { "slug": "BOX_DELETE_METADATA_INSTANCE_FROM_FILE", "name": "Remove metadata instance from file", "description": "Removes a metadata instance from a file. Deletes all metadata associated with a specific template from a file. This operation cannot be undone. The metadata template itself is not deleted, only the instance of metadata applied to this specific file. Returns a 204 No Content response on success. Returns 404 if the metadata instance doesn't exist on the file or if the file is not found." }, { "slug": "BOX_DELETE_METADATA_INSTANCE_FROM_FOLDER", "name": "Remove metadata instance from folder", "description": "Remove a metadata instance from a folder. Deletes a specific metadata template instance that has been applied to a folder. This operation is idempotent and will return a 404 error if the metadata instance doesn't exist. Returns HTTP 204 No Content on successful deletion. Note: This only removes the metadata instance, not the folder itself. To remove a folder, use the delete folder action instead." }, { "slug": "BOX_DELETE_METADATA_TAXONOMY", "name": "Remove metadata taxonomy", "description": "Permanently deletes a metadata taxonomy from the enterprise. This deletion is permanent and cannot be reverted. Once deleted, the taxonomy and all associated metadata will be removed from files and folders. Use with caution." }, { "slug": "BOX_DELETE_METADATA_TAXONOMY_NODE", "name": "Remove metadata taxonomy node", "description": "Permanently deletes a metadata taxonomy node from Box. Metadata taxonomies in Box allow you to organize and classify content using hierarchical structures. This action removes a specific node from a taxonomy. Important constraints: - Only nodes without any children can be deleted - This deletion is permanent and cannot be reverted - Requires admin or co-admin permissions - The user must have access to the metadata taxonomies feature Returns HTTP 204 No Content on successful deletion. Returns HTTP 400 Bad Request if the node has children or request is invalid. Returns HTTP 403 Forbidden if the user lacks necessary permissions. Returns HTTP 404 Not Found if the taxonomy or node does not exist." }, { "slug": "BOX_DELETE_METADATA_TEMPLATE", "name": "Remove metadata template", "description": "Permanently delete a metadata template and all its instances from files and folders. **WARNING**: This operation is destructive and cannot be undone. Once deleted: - The template definition is permanently removed - All metadata instances using this template on files/folders are also deleted - Any cascade policies using this template will stop working **Scope**: Use 'enterprise' for custom templates created within your organization. Global templates (scope='global') cannot be deleted. **Required Permission**: Requires 'manage enterprise properties' scope. Only enterprise admins can delete metadata templates." }, { "slug": "BOX_DELETE_RETENTION_POLICY", "name": "Delete retention policy", "description": "Permanently deletes a retention policy from the Box enterprise. This action removes the specified retention policy. Once deleted, the policy cannot be recovered. Only modifiable retention policies can be deleted; non-modifiable policies used for regulatory compliance cannot be deleted. The authenticated user must have admin privileges and the application must have the 'manage_data_retention' or 'enterprise_content' scope enabled. Returns an empty response (HTTP 204) on successful deletion." }, { "slug": "BOX_DELETE_RETENTION_POLICY_ASSIGNMENT", "name": "Remove retention policy assignment", "description": "Removes a retention policy assignment from content in Box. This action permanently removes the link between a retention policy and its assigned target (folder, enterprise, or metadata template). Once removed, the retention policy will no longer apply to the previously associated content. **Important restrictions:** - Only assignments for **modifiable** retention policies can be deleted. - Assignments for **non-modifiable** (regulatory) retention policies cannot be removed to ensure compliance with retention requirements. - Requires Box Governance license and admin permissions. **Required scopes:** manage_data_retention, enterprise_content **Returns:** HTTP 204 No Content on success (empty response body)." }, { "slug": "BOX_DELETE_SHARED_LINK_FROM_FILE", "name": "Remove shared link from file", "description": "Removes a shared link from a file in Box. This action disables the shared link for the specified file, making it no longer accessible via the previously shared URL. The file itself is not deleted - only the shared link is removed. After successful execution, the shared_link field in the response will be null. This is an idempotent operation - calling it on a file that already has no shared link will succeed without error." }, { "slug": "BOX_DELETE_SHARED_LINK_FROM_FOLDER", "name": "Remove shared link from folder", "description": "Removes a shared link from a folder in Box. This action disables the shared link for the specified folder, making it no longer accessible via the previously shared URL. The folder itself is not deleted - only the shared link is removed. After successful execution, the shared_link field in the response will be null. This is an idempotent operation - calling it on a folder that already has no shared link will succeed without error." }, { "slug": "BOX_DELETE_SHARED_LINK_FROM_WEB_LINK", "name": "Remove shared link from web link", "description": "Removes a shared link from a web link in Box. This action disables the shared link for the specified web link, making it no longer accessible via the previously shared URL. The web link itself is not deleted - only the shared link is removed. After successful execution, the shared_link field in the response will be null. This is an idempotent operation - calling it on a web link that already has no shared link will succeed without error." }, { "slug": "BOX_DELETE_SHIELD_INFORMATION_BARRIER_SEGMENT", "name": "Delete shield information barrier segment", "description": "Permanently deletes a shield information barrier segment by its ID. Shield information barriers help prevent conflicts of interest by restricting collaboration between user segments within an organization. This action removes a specific segment from the barrier configuration. Requirements: - Box Shield add-on must be enabled for the enterprise - Admin privileges are required to delete segments - The segment must not have any active restrictions referencing it Returns HTTP 204 No Content on successful deletion. Returns HTTP 404 Not Found if the segment ID does not exist." }, { "slug": "BOX_DELETE_SHIELD_INFORMATION_BARRIER_SEGMENT_MEMBER_BY_ID", "name": "Delete shield information barrier segment member by id", "description": "Removes a user from a shield information barrier segment by deleting their membership. Shield information barriers are used to prevent conflicts of interest by restricting communication and collaboration between specific groups of users within an enterprise. This action removes a user's membership from a specific barrier segment. Note: This feature requires Box Shield and is only available for enterprise accounts with the appropriate licensing. Returns 204 No Content on successful deletion." }, { "slug": "BOX_DELETE_SLACK_INTEGRATION_MAPPING", "name": "Delete Slack integration mapping", "description": "Deletes a Slack integration mapping that links a Box folder to a Slack channel. This endpoint removes an existing mapping between a Slack channel and a Box folder created through the Box for Slack integration. After deletion, any new files shared in the Slack channel will be stored in the default location rather than the previously mapped Box folder. **Requirements:** - Admin or Co-Admin role in the Box enterprise - Box for Slack must be installed in the relevant Slack workspace - Box as the Content Layer for Slack must be enabled **Note:** This action is irreversible. Once deleted, a new mapping must be created to restore the integration between the Slack channel and Box folder. For more information, see: https://support.box.com/hc/en-us/articles/4415585987859-Box-as-the-Content-Layer-for-Slack" }, { "slug": "BOX_DELETE_STORAGE_POLICY_ASSIGNMENT", "name": "Unassign storage policy", "description": "Deletes a storage policy assignment, causing the assigned user to inherit the enterprise's default storage policy (Box Zone). Use this action when you want to reset a user's storage policy back to the enterprise default. This is useful when: - A user moves to a different region and should use the default zone - Cleaning up custom storage assignments - Reverting a user's data residency settings **Prerequisites**: Requires Box Zones feature to be enabled for the enterprise. **Rate Limit**: Only twice per user in a 24-hour period. **Response**: Returns 204 No Content on success (empty data object)." }, { "slug": "BOX_DELETE_TASK", "name": "Remove task", "description": "Permanently deletes a task from Box. Tasks are work assignments on files that can be assigned to collaborators for review or completion. Once deleted, the task and its assignments are permanently removed and cannot be recovered. Returns HTTP 204 (No Content) on successful deletion. Returns HTTP 404 if the task does not exist or has already been deleted. Use cases: - Remove completed tasks to clean up a file's task list - Cancel tasks that are no longer needed - Delete tasks created in error" }, { "slug": "BOX_DELETE_TASK_ASSIGNMENT", "name": "Unassign task", "description": "Deletes a specific task assignment, removing the task from the assigned user. This action unassigns a user from a task without deleting the task itself. The task remains on the file and can be reassigned to other users. To delete the task entirely, use the 'remove_task' action instead. The authenticated user must have permission to modify task assignments on the file. Typically, this means being the user who created the assignment, the assigned user themselves, or having appropriate file access permissions." }, { "slug": "BOX_DELETE_TEAMS_INTEGRATION_MAPPING", "name": "Delete teams integration mapping", "description": "Deletes a Microsoft Teams integration mapping that links a Box folder to a Teams channel. This endpoint removes an existing mapping between a Microsoft Teams channel or team and a Box folder created through the Box for Teams integration. After deletion, any new files shared in the Teams channel will be stored in the default location rather than the previously mapped Box folder. **Requirements:** - Admin or Co-Admin role in the Box enterprise - Box for Teams must be installed in the relevant Microsoft Teams workspace **Note:** This action is irreversible. Once deleted, a new mapping must be created to restore the integration between the Teams channel and Box folder. For more information, see: https://support.box.com/hc/en-us/articles/360044681474-Using-Box-for-Teams" }, { "slug": "BOX_DELETE_UPLOAD_SESSION", "name": "Remove upload session", "description": "Abort and permanently remove a chunked upload session, discarding all uploaded data. This action is irreversible - once removed, all uploaded file parts are permanently deleted and the upload session cannot be recovered. Use this to cancel an in-progress chunked upload or clean up abandoned upload sessions. Returns HTTP 204 (No Content) on success. The upload_session_id can be obtained from the response of the 'Create upload session' or 'Get upload session' endpoints." }, { "slug": "BOX_DELETE_USER", "name": "Delete user", "description": "Permanently deletes a user from the enterprise. By default, deletion fails if the user still owns content, was recently active, or recently joined from a free account. Use the `force` parameter to bypass these restrictions and delete the user along with all their content. Returns an empty response (HTTP 204) on success." }, { "slug": "BOX_DELETE_USER_AVATAR", "name": "Delete user avatar", "description": "Deletes a user's custom avatar image from Box. This operation is irreversible. After deletion, the user will revert to the default Box avatar. If the user does not have a custom avatar set (only the default avatar), the operation will still succeed but indicate that no custom avatar was found. Note: This only removes custom uploaded avatars. Users always retain a default Box-generated avatar. Required scopes: root_readwrite or manage_managed_users" }, { "slug": "BOX_DELETE_USER_DOMAIN_EXEMPTION", "name": "Remove User Domain Exemption", "description": "Removes a user's exemption from the enterprise's collaboration domain restrictions. After removal, the user will be subject to the allowed collaboration domain list configured for the enterprise and can no longer collaborate with users from domains outside of that list. PREREQUISITES: - The exemption must exist (obtain ID from 'List users exempt from collaboration domain restrictions' or when creating an exemption). - Requires enterprise admin privileges. - The enterprise must have collaboration domain restrictions enabled. COMMON ERRORS: - 204 No Content: Successful deletion (empty response body). - 403 Forbidden: Insufficient permissions or collaboration domain restrictions feature not enabled for the enterprise. - 404 Not Found: The specified exemption ID does not exist. NOTE: This is a destructive action. Once removed, the exemption cannot be recovered and the user will immediately be subject to domain restrictions." }, { "slug": "BOX_DELETE_USER_FROM_GROUP", "name": "Remove user from group", "description": "Deletes a specific group membership. Only admins of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_DELETE_WATERMARK_FROM_FILE", "name": "Remove watermark from file", "description": "Removes the watermark from a file. This action deletes the watermark that was previously applied to the specified file. After removal, the file will no longer display watermark overlays when viewed or downloaded. Returns: - 204 No Content: Watermark successfully removed (empty response body) - 404 Not Found: File does not exist or has no watermark applied Note: This operation is idempotent. If the file doesn't have a watermark, the API will return a 404 error." }, { "slug": "BOX_DELETE_WATERMARK_FROM_FOLDER", "name": "Remove watermark from folder", "description": "Removes the watermark from a folder. This action deletes the watermark applied to a specified folder. The folder must have a watermark applied to it, otherwise the API will return a 404 error. Only users with Owner, Co-owner, or Editor permissions on the folder can remove watermarks. This feature is available for Box Enterprise plans and above." }, { "slug": "BOX_DELETE_WEBHOOK", "name": "Remove webhook", "description": "Permanently deletes a webhook from the Box account. Webhooks are used to receive notifications at a specified URL when events occur on Box content. Once deleted, the webhook will no longer send notifications for its configured triggers. This operation cannot be undone. To restore webhook functionality, you would need to create a new webhook with the same configuration. Returns an empty response (HTTP 204) on success. Returns 404 if the webhook ID does not exist or the user doesn't have access to it. Returns 403 if the application doesn't have the 'Manage Webhooks' permission scope." }, { "slug": "BOX_DELETE_WEB_LINK", "name": "Remove web link", "description": "Deletes a web link." }, { "slug": "BOX_DELETE_WEB_LINK_PERMANENTLY", "name": "Permanently remove web link", "description": "Permanently deletes a web link that is in the trash. This action cannot be undone." }, { "slug": "BOX_DOWNLOAD_FILE", "name": "Download file", "description": "Returns the contents of a file in binary format." }, { "slug": "BOX_DOWNLOAD_ZIP_ARCHIVE", "name": "Download zip archive", "description": "Downloads a zip archive containing files and/or folders from Box. **Prerequisites**: You must first call 'BOX_CREATE_ZIP_DOWNLOAD' to create a zip download request. The response from that action contains a 'download_url' field, from which you should extract the 'zip_download_id'. **Important Notes**: - The download URL is only valid for a limited time (typically a few seconds after creation, or 12 hours once the download starts). - Once a download has started, it cannot be stopped and resumed. - If the download fails or times out, create a new zip download request. Returns the zip archive in binary format as a downloadable file." }, { "slug": "BOX_EXTRACT_METADATA_FREEFORM", "name": "Extract metadata freeform", "description": "Extract metadata from Box files using AI with freeform prompts. Use this action to extract custom metadata from files without needing a predefined metadata template. Box AI will analyze the file contents and extract information based on your prompt instructions. Features: - Freeform prompts: Specify exactly what metadata to extract using natural language - Flexible output: Response format adapts to your prompt (can be JSON, key-value pairs, etc.) - No template required: Unlike structured extraction, no metadata template setup needed Limitations: - Text documents: Up to 1MB per file - Maximum 25 files per request - Prompts: Maximum 10,000 characters Requires 'ai.readwrite' or 'manage_ai' scope in the access token." }, { "slug": "BOX_EXTRACT_METADATA_STRUCTURED", "name": "Extract metadata structured", "description": "Extract structured metadata from files using Box AI. Uses Large Language Models (LLMs) to extract metadata as key-value pairs from files. Requires Box AI access (ai.readwrite scope). Supports two extraction approaches: 1. **Using fields**: Define custom fields with 'key', optional 'description', 'type', 'prompt', and 'options'. 2. **Using metadata_template**: Reference an existing Box metadata template by its template_key, type, and scope. You must use EITHER 'fields' OR 'metadata_template', but NOT both. Supports OCR for images (TIFF, PNG, JPEG) and scanned documents automatically." }, { "slug": "BOX_FIND_APP_ITEM_FOR_SHARED_LINK", "name": "Find item for shared link", "description": "Returns the file, folder, web link, or app item represented by a shared link. This endpoint allows you to retrieve information about any Box item (file, folder, web link, or app item) using its shared link URL. The shared link can originate from the current enterprise or another. While the action name references \"app items\", it works with all types of shared links in Box. The endpoint requires a valid shared link to be provided via the `boxapi` header or through the `shared_link` field. If the link is password-protected, provide the password via `shared_link_password`." }, { "slug": "BOX_FIND_FILE_FOR_SHARED_LINK", "name": "Find file for shared link", "description": "Returns the file represented by a shared link. A shared file can be represented by a shared link, which can originate within the current enterprise or within another. This endpoint allows an application to retrieve information about a shared file when only given a shared link. The `shared_link_permission_options` array field can be returned by requesting it in the `fields` query parameter." }, { "slug": "BOX_FIND_FOLDER_FOR_SHARED_LINK", "name": "Find folder for shared link", "description": "Return the folder represented by a shared link. A shared folder can be represented by a shared link, which can originate within the current enterprise or within another. This endpoint allows an application to retrieve information about a shared folder when only given a shared link. Conditional parameter requirements: - To retrieve the folder, you must supply a valid shared link via either the `shared_link` field (recommended) or the `boxapi` header string. If the shared link is password-protected, also provide `shared_link_password`." }, { "slug": "BOX_FIND_METADATA_TEMPLATE_BY_INSTANCE_ID", "name": "Find metadata template by instance id", "description": "Finds a metadata template by searching for the ID of an instance of the template. This action is useful when you have a metadata instance ID (the '$id' field from a metadata instance on a file or folder) and need to retrieve the full template definition including all field configurations. Common use case: After listing metadata instances on a file/folder, use this action to get the complete template schema to understand what fields are available." }, { "slug": "BOX_FORCE_APPLY_METADATA_CASCADE_POLICY_TO_FOLDER", "name": "Force apply metadata cascade policy to folder", "description": "Forces a metadata cascade policy to immediately apply the folder's metadata template to all existing child files and subfolders. This operation is asynchronous and returns immediately with HTTP 202 Accepted. Use cases: - After creating a new cascade policy to back-fill metadata on existing content - To retroactively apply metadata changes to all items in a folder hierarchy - When you need to enforce consistent metadata across all folder contents Important notes: - The cascade operation runs asynchronously in the background after the API returns - There is currently no API to check the status of this operation - Use the conflict_resolution parameter carefully to avoid unintended data overwrites - Only works with enterprise-scoped metadata templates (not global templates) - Newly added files/folders will automatically inherit metadata via the existing cascade policy Returns: HTTP 202 Accepted with an empty response body when the cascade operation is queued successfully." }, { "slug": "BOX_GENERATE_TEXT", "name": "Generate text", "description": "Generate text using Box AI based on a prompt and file context. This action sends a request to Box AI's text generation endpoint, which uses Large Language Models (LLMs) to generate text based on your prompt and the content of a specified file. Use cases include: - Summarizing document content - Generating responses based on file content - Creating content drafts using file context - Answering questions about document content Note: Requires Box AI access (Business, Business Plus, Enterprise, or higher plans). Files up to 1MB of text content are supported." }, { "slug": "BOX_GET_AI_AGENT", "name": "Get AI Agent by ID", "description": "Retrieves detailed information about a specific AI Agent by its unique identifier. **Use Cases:** - Get the current configuration and capabilities of an AI agent - Check the access state and allowed users/groups for an agent - Retrieve capability settings (ask, text_gen, extract) for an agent **Requirements:** - Box Enterprise Advanced account with Box AI Studio enabled - \"Manage AI\" scope must be enabled in the Box Developer Console **Example:** To get an agent with all capability details, use: agent_id=\"1234567890\", fields=[\"ask\", \"text_gen\", \"extract\"]" }, { "slug": "BOX_GET_AI_AGENT_DEFAULT_CONFIGURATION", "name": "Get ai agent default configuration", "description": "Retrieve the default AI agent configuration for a specific mode. Returns the default AI agent settings used by Box AI features. The configuration includes model settings, token limits, LLM endpoint parameters, and tool configurations for text processing, image handling, and spreadsheet operations. Use this to understand or customize the AI agent behavior for ask, text generation, or metadata extraction operations." }, { "slug": "BOX_GET_ALLOWED_COLLABORATION_DOMAIN", "name": "Get allowed collaboration domain", "description": "Retrieves details of a specific allowed collaboration domain entry within your enterprise. This endpoint returns information about a domain that has been whitelisted for collaboration, including the domain name, the direction of allowed collaborations (inbound, outbound, or both), and the enterprise that owns the entry. Use 'list_allowed_collaboration_domains' to get a list of all whitelist entry IDs, or use the ID returned when adding a new domain via 'add_domain_to_list_of_allowed_collaboration_domains'. Note: This endpoint requires enterprise admin privileges and the 'manage_enterprise_properties' scope." }, { "slug": "BOX_GET_BOX_SIGN_REQUEST", "name": "Get box sign request by id", "description": "Retrieves the details of a specific Box Sign request by its unique ID. Returns comprehensive information about the signature request including: - Request status (e.g., 'converting', 'created', 'sent', 'viewed', 'signed', 'declined', 'cancelled', 'expired', 'error_converting', 'error_sending') - Signers information with their email, role, decision status, and embed URLs - Source files included in the request - Signed document copies available for download (when completed) - Signing log reference - Request timestamps and sender information Note: Requires Box Sign to be enabled for the enterprise account." }, { "slug": "BOX_GET_BOX_SIGN_TEMPLATE", "name": "Get Box Sign Template by ID", "description": "Retrieves details of a specific Box Sign template by its unique ID. Returns template configuration including name, email subject/message, signers, source files, destination folder, and various lock settings that control what can be modified when creating signature requests. Note: Templates can only be created and edited via the Box web application. This API is read-only for template data. Required scope: sign_requests.readwrite" }, { "slug": "BOX_GET_COLLABORATION", "name": "Get collaboration", "description": "Retrieves details of a single collaboration by its ID. A collaboration represents shared access between a user/group and a file or folder in Box. This action returns information about who has access, what role they have, and which item the collaboration grants access to." }, { "slug": "BOX_GET_COLLECTION", "name": "Get collection by id", "description": "Retrieves details of a specific collection by its unique identifier. Collections in Box are used to organize items (files and folders). Currently, Box only supports the 'favorites' collection, which contains items that the user has marked as favorites. Use 'list_all_collections' to discover available collection IDs. Returns the collection's id, type, name, and collection_type." }, { "slug": "BOX_GET_COMMENT", "name": "Get comment", "description": "Retrieves the message and metadata for a specific comment, as well as information on the user who created the comment." }, { "slug": "BOX_GET_CURRENT_USER", "name": "Get current user", "description": "Retrieves information about the user who is currently authenticated. In the case of a client-side authenticated OAuth 2.0 application this will be the user who authorized the app. In the case of a JWT, server-side authenticated application this will be the service account that belongs to the application by default. Use the `As-User` header to change who this API call is made on behalf of." }, { "slug": "BOX_GET_DEVICE_PIN", "name": "Get device pin", "description": "Retrieves information about an individual device pin in the enterprise. Device pins are created when users access Box from mobile or desktop devices that support device pinning. This endpoint returns details about a specific device pin including the device type and the user who owns it. The user must have admin privileges and the application needs the 'manage_enterprise_properties' scope to make this call." }, { "slug": "BOX_GET_EVENTS_LONG_POLL_ENDPOINT", "name": "Get Real-Time Server URL for Long-Polling Events", "description": "Returns a list of real-time servers that can be used for long-polling user events. Long-polling allows applications to listen for events in real-time without repeatedly polling the /events endpoint. After calling this endpoint, make a GET request to the returned `url` to start listening for events. When events occur, the server responds with 'new_change' to signal that you should fetch events from GET /events. If no events occur within `retry_timeout` seconds, you'll receive 'reconnect' and should call this endpoint again to get a fresh URL. Note: Long-polling is only available for user events, not enterprise events." }, { "slug": "BOX_GET_FILE_INFORMATION", "name": "Get file information", "description": "Retrieves the details about a file." }, { "slug": "BOX_GET_FILE_REQUEST", "name": "Get file request", "description": "Retrieves detailed information about a file request in Box. File requests are forms that allow external users to upload files to a specific folder without needing a Box account. This action returns the file request's configuration including its title, description, status, associated folder, and the shareable URL. Note: File request IDs can only be obtained from the Box web application URL (e.g., https://*.app.box.com/filerequest/123). There is no API endpoint to list all file requests." }, { "slug": "BOX_GET_FILES_UNDER_RETENTION", "name": "Get files under retention", "description": "Returns a paginated list of files under retention for a specific retention policy assignment. This endpoint is part of Box Governance and requires: - 'manage_retention_policies' scope enabled for the application - Global Content Manager (GCM) permissions, which must be enabled by Box support The response includes file metadata (id, name, sha1, etag) and file version information. Results are paginated using marker-based pagination." }, { "slug": "BOX_GET_FILE_THUMBNAIL", "name": "Get file thumbnail", "description": "Retrieves a thumbnail, or smaller image representation, of a file. Sizes of `32x32`,`64x64`, `128x128`, and `256x256` can be returned in the `.png` format and sizes of `32x32`, `160x160`, and `320x320` can be returned in the `.jpg` format. Thumbnails can be generated for the image and video file formats listed [found on our community site][1]. [1]: https://community.box.com/t5/Migrating-and-Previewing-Content/File-Types-and-Fonts-Supported-in-Box-Content-Preview/ta-p/327" }, { "slug": "BOX_GET_FILE_VERSION", "name": "Get file version", "description": "Retrieve detailed information about a specific version of a file. This action returns metadata about a file version including its SHA1 hash, size, creation date, and who modified it. Versions are only tracked for Box users with premium accounts. Use BOX_LIST_ALL_FILE_VERSIONS to get a list of all available versions for a file." }, { "slug": "BOX_GET_FILE_VERSION_LEGAL_HOLD", "name": "Get file version legal hold", "description": "Retrieves detailed information about a specific file version legal hold by its ID. A file version legal hold represents the preservation of a specific file version due to legal hold policies. This action returns the hold details including which file and file version are held, and which legal hold policy assignments created the hold. Use this action when you need to inspect the legal hold status and details for a specific file version legal hold record." }, { "slug": "BOX_GET_FILE_VERSIONS_UNDER_RETENTION", "name": "Get file versions under retention", "description": "Returns a list of file versions under retention for a specified retention policy assignment. A retention policy assignment links a retention policy to content (enterprise, folder, or metadata template). This endpoint retrieves all file versions that are currently being retained under the specified assignment. Use cases: - Audit which file versions are being retained under a specific policy assignment - Monitor retention compliance for specific folders or metadata templates - Track file versions before their disposition date Prerequisites: - Requires a valid retention_policy_assignment_id (obtain from 'List retention policy assignments' endpoint) - Requires the 'manage_data_retention' scope enabled for the application Note: Retention policies are an enterprise feature and require Box Governance or similar Box product." }, { "slug": "BOX_GET_FOLDER", "name": "Get folder information", "description": "Retrieves details for a folder, including the first 100 entries in the folder. Passing `sort`, `direction`, `offset`, and `limit` parameters in query allows you to manage the list of returned [folder items](r://folder--full#param-item-collection). To fetch more items within the folder, use the [Get items in a folder](e://get-folders-id-items) endpoint." }, { "slug": "BOX_GET_GROUP", "name": "Get group", "description": "Retrieves information about a group. Only members of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_GET_GROUP_MEMBERSHIP", "name": "Get group membership", "description": "Retrieves a specific group membership. Only admins of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_GET_LEGAL_HOLD_POLICY", "name": "Get legal hold policy", "description": "Retrieve detailed information about a specific legal hold policy by its ID. Legal hold policies preserve content for litigation or compliance purposes by preventing deletion or modification. This action returns the policy's name, description, status (active/applying/releasing/released), assignment counts by type (user/folder/file/ file_version/ownership/interactions), creator info, and timestamps. Prerequisites: - Box Governance add-on must be enabled for the enterprise - Requires 'manage_legal_holds' or 'enterprise_content' OAuth scope - Admin or co-admin role required To enable Legal Hold: https://www.box.com/business/governance-and-compliance" }, { "slug": "BOX_GET_LEGAL_HOLD_POLICY_ASSIGNMENT", "name": "Get legal hold policy assignment", "description": "Retrieves detailed information about a specific legal hold policy assignment by its ID. Legal hold policy assignments link a legal hold policy to specific items (files, folders, file versions, users, ownership-based content, or user interactions). When a policy is assigned, it places a legal hold on the relevant file versions, preventing them from being deleted or modified until the hold is released. The response includes the assignment ID, the associated legal hold policy, the assigned item details, the user who created the assignment, creation timestamp, and deletion timestamp (if applicable). Prerequisites: - Requires Box Governance add-on (Box Enterprise Plus or higher) - Requires 'manage_legal_holds' or 'enterprise_content' OAuth scope - Admin or co-admin role required Use cases: - Verify legal hold coverage on specific items - Audit legal hold assignments for compliance - Check assignment status and metadata" }, { "slug": "BOX_GET_METADATA_CASCADE_POLICY", "name": "Get metadata cascade policy", "description": "Retrieve a specific metadata cascade policy assigned to a folder." }, { "slug": "BOX_GET_METADATA_INSTANCE_ON_FILE", "name": "Get metadata instance on file", "description": "Retrieves a specific metadata template instance that has been applied to a file. This action returns the metadata key-value pairs for a particular template on a file. Use BOX_LIST_METADATA_INSTANCES_ON_FILE first to discover which templates are applied to a file if you don't know the scope and template_key. Common error codes: - 404 (instance_not_found): The metadata template has not been applied to this file. - 404 (not_found): The file was not found or the user does not have access. - 403 (forbidden): The user does not have permission to view this metadata. Example usage: - Get global properties: scope='global', template_key='properties' - Get enterprise classification: scope='enterprise', template_key='classification' - Get custom template: scope='enterprise', template_key='yourCustomTemplate'" }, { "slug": "BOX_GET_METADATA_INSTANCE_ON_FOLDER", "name": "Get metadata instance on folder", "description": "Retrieves the instance of a metadata template that has been applied to a folder. This can not be used on the root folder with ID `0`." }, { "slug": "BOX_GET_METADATA_TAXONOMIES_FOR_NAMESPACE", "name": "Get metadata taxonomies for namespace", "description": "Retrieves all metadata taxonomies within a specific namespace. Use this when you need to list all taxonomy templates available in an enterprise namespace." }, { "slug": "BOX_GET_METADATA_TAXONOMY_BY_TAXONOMY_KEY", "name": "Get metadata taxonomy by taxonomy key", "description": "Retrieves a metadata taxonomy by its namespace and taxonomy key. Use when you need to fetch detailed information about a specific taxonomy structure." }, { "slug": "BOX_GET_METADATA_TAXONOMY_NODE_BY_ID", "name": "Get metadata taxonomy node by ID", "description": "Retrieves a specific node from a metadata taxonomy by its identifier. Use when you need to get details about a particular taxonomy node including its display name, level, and ancestor information." }, { "slug": "BOX_GET_METADATA_TEMPLATE_BY_ID", "name": "Get metadata template by id", "description": "Retrieves a metadata template by its ID." }, { "slug": "BOX_GET_METADATA_TEMPLATE_BY_NAME", "name": "Get metadata template by name", "description": "Retrieves a metadata template by its `scope` and `templateKey` values. To find the `scope` and `templateKey` for a template, list all templates for an enterprise or globally, or list all templates applied to a file or folder." }, { "slug": "BOX_GET_RETENTION_ON_FILE", "name": "Get retention on file", "description": "Returns information about a file version retention. **Note**: File retention API is now **deprecated**. To get information about files and file versions under retention, see [files under retention](e://get-retention-policy-assignments-id-files-under-retention) or [file versions under retention](e://get-retention-policy-assignments-id-file-versions-under-retention) endpoints." }, { "slug": "BOX_GET_RETENTION_POLICY", "name": "Get retention policy", "description": "Retrieves a retention policy by its unique ID. Retention policies define how long content is retained before being automatically deleted or having the retention removed. This is an enterprise-level feature that requires the 'manage_data_retention' OAuth scope to be enabled. Returns details including policy name, retention length, disposition action, status, and assignment counts." }, { "slug": "BOX_GET_RETENTION_POLICY_ASSIGNMENT", "name": "Get retention policy assignment", "description": "Retrieves a retention policy assignment by its unique ID. A retention policy assignment represents a link between a retention policy and its target (a folder, the enterprise, or a metadata template). This action returns details about where and how the retention policy is applied. Requires Box Governance license and scopes: manage_data_retention, enterprise_content." }, { "slug": "BOX_GET_SHARED_LINK_FOR_FILE", "name": "Get shared link for file", "description": "Retrieves the shared link information for a file. This action fetches details about an existing shared link, including the URL, access level, permissions, and usage statistics. If the file does not have a shared link, the shared_link field in the response will be null." }, { "slug": "BOX_GET_SHARED_LINK_FOR_FOLDER", "name": "Get shared link for folder", "description": "Retrieves shared link information for a folder. This action fetches the shared link details for a specified folder, including the public URL, access level, permissions, and usage statistics. If the folder does not have a shared link, the 'shared_link' field in the response will be null. Use the 'fields' parameter to request additional folder information beyond just the shared link. This is useful for getting context about the folder (name, path, owner) in the same request. Note: This action only retrieves existing shared link information. To create a shared link, use the 'add_shared_link_to_folder' action." }, { "slug": "BOX_GET_SHARED_WEB_LINK", "name": "Get shared items web links", "description": "Tool to retrieve web link information for a shared link. Use when you have a Box shared link URL and need to get details about the web link object it points to." }, { "slug": "BOX_GET_SHIELD_INFORMATION_BARRIER_BY_ID", "name": "Get shield information barrier with specified id", "description": "Retrieves a shield information barrier by its unique ID. Shield information barriers are used to separate individuals/groups within the same enterprise and prevent confidential information from passing between them. Note: This feature requires Box Shield enterprise licensing. Returns 404 if the barrier ID doesn't exist or if Shield is not enabled for the enterprise." }, { "slug": "BOX_GET_SHIELD_INFORMATION_BARRIER_REPORT_BY_ID", "name": "Get shield information barrier report by id", "description": "Retrieves a shield information barrier report by its ID. Shield information barrier reports provide information about users and groups that are affected by shield information barriers in the enterprise. Reports include details about which users are in which segments and any policy violations. Note: This endpoint requires Box Shield, an enterprise add-on feature. The report must exist and belong to a barrier in your enterprise." }, { "slug": "BOX_GET_SHIELD_INFORMATION_BARRIER_SEGMENT_BY_ID", "name": "Get shield information barrier segment with specified id", "description": "Retrieves a shield information barrier segment by its unique identifier. Shield information barriers are used to prevent conflicts of interest by restricting communication between specific groups of users. Segments define groups of users within a barrier. Note: This feature requires Box Shield, which is an enterprise-level add-on. The API will return 404 if Shield is not enabled for the enterprise." }, { "slug": "BOX_GET_SHIELD_INFORMATION_BARRIER_SEGMENT_MEMBER_BY_ID", "name": "Get shield information barrier segment member by id", "description": "Retrieves a shield information barrier segment member by its unique ID. Shield Information Barriers enforce compliance by restricting collaboration between departments (e.g., Investment Banking vs Research in financial institutions). Returns details about a user's segment assignment including when added, by whom, and which barrier/segment. Prerequisites: Box Shield license, valid member ID from create/list operations. Returns 200 on success, 404 if not found or feature disabled. Related: create_shield_information_barrier_segment_member, list_shield_information_barrier_segment_members" }, { "slug": "BOX_GET_SHIELD_INFORMATION_BARRIER_SEGMENT_RESTRICTION_BY_ID", "name": "Get shield information barrier segment restriction by id", "description": "Retrieves a shield information barrier segment restriction by its unique ID. Shield information barrier segment restrictions define which segments cannot communicate or collaborate with each other. This action fetches the details of a specific restriction including the requesting segment, restricted segment, and the parent barrier information. Note: This feature requires Box Shield subscription and enterprise-level access." }, { "slug": "BOX_GET_STORAGE_POLICY", "name": "Get storage policy", "description": "Fetches a specific storage policy by its ID. Storage policies define the geographic location where content is stored (data residency). This is an enterprise feature that requires Box Zones or similar subscription. Use this action to get details about a storage policy, including its name and the geographic region(s) it covers. To find available storage policy IDs, first use the 'list_storage_policies' action." }, { "slug": "BOX_GET_STORAGE_POLICY_ASSIGNMENT", "name": "Get storage policy assignment", "description": "Retrieves information about a specific storage policy assignment. Storage policies control where data is physically stored (data residency). This action requires the Box Zones add-on or equivalent enterprise feature. Use 'list_storage_policy_assignments' to find assignment IDs for users or the enterprise." }, { "slug": "BOX_GET_TASK", "name": "Get task", "description": "Retrieves detailed information about a specific task in Box. A task is a to-do item that can be assigned to users for a specific file. Tasks can be of type 'review' (approval workflow) or 'complete' (general task). Use this action to get task details including the associated file, assignees, due date, message, and completion status." }, { "slug": "BOX_GET_TASK_ASSIGNMENT", "name": "Get task assignment", "description": "Retrieves detailed information about a specific task assignment in Box. A task assignment represents a task that has been assigned to a specific user. This endpoint returns information including: - The file associated with the task - The user the task is assigned to - The user who created the assignment - The assignment status (incomplete, completed, approved, or rejected) - Timestamps for assignment, completion, and reminders" }, { "slug": "BOX_GET_TERMS_OF_SERVICE", "name": "Get terms of service", "description": "Retrieves a specific terms of service by its unique identifier. Returns the full terms of service object including: - Status (enabled/disabled) - Terms text content - Type (managed users or external collaborators) - Associated enterprise information - Creation and modification timestamps Note: This endpoint requires the Terms of Service feature to be enabled for the enterprise. Admin permissions may be required to access this data." }, { "slug": "BOX_GET_TRASHED_FILE", "name": "Get trashed file", "description": "Retrieves a file that has been moved to the trash. Please note that only if the file itself has been moved to the trash can it be retrieved with this API call. If instead one of its parent folders was moved to the trash, only that folder can be inspected using the [`GET /folders/:id/trash`](e://get_folders_id_trash) API. To list all items that have been moved to the trash, please use the [`GET /folders/trash/items`](e://get-folders-trash-items/) API." }, { "slug": "BOX_GET_TRASHED_FOLDER", "name": "Get trashed folder", "description": "Retrieves a folder that has been moved to the trash. Please note that only if the folder itself has been moved to the trash can it be retrieved with this API call. If instead one of its parent folders was moved to the trash, only that folder can be inspected using the [`GET /folders/:id/trash`](e://get_folders_id_trash) API. To list all items that have been moved to the trash, please use the [`GET /folders/trash/items`](e://get-folders-trash-items/) API." }, { "slug": "BOX_GET_TRASHED_WEB_LINK", "name": "Get trashed web link", "description": "Retrieves a web link that has been moved to the trash. Returns detailed information about a trashed web link including its original URL, name, description, creator, when it was trashed, and when it will be permanently purged. The web link must exist in the trash (not permanently deleted) for this action to succeed." }, { "slug": "BOX_GET_UPLOAD_SESSION", "name": "Get upload session", "description": "Retrieves detailed information about an existing chunked upload session. Returns the session status including: - Total number of parts expected for the file upload - Size of each part in bytes - Number of parts already processed/uploaded - Session expiration timestamp - Available endpoints for uploading parts, committing, aborting, and checking status Use this action to monitor upload progress or retrieve session endpoints needed to continue a chunked file upload. The upload_session_id is obtained from the 'Create upload session' action." }, { "slug": "BOX_GET_USER", "name": "Get user", "description": "Retrieves information about a user in the enterprise. The application and the authenticated user need to have the permission to look up users in the entire enterprise. This endpoint also returns a limited set of information for external users who are collaborated on content owned by the enterprise for authenticated users with the right scopes. In this case, disallowed fields will return null instead." }, { "slug": "BOX_GET_USER_AVATAR", "name": "Get user avatar", "description": "Retrieves the avatar image of a Box user. Returns 404 if the user has no avatar set." }, { "slug": "BOX_GET_USER_EXEMPT_FROM_COLLABORATION_DOMAIN_RESTRICTIONS", "name": "Get user exempt from collaboration domain restrictions", "description": "Retrieves details of a specific user exemption from collaboration domain restrictions. This endpoint returns information about a user who has been granted an exemption from the enterprise's collaboration domain allowlist, allowing them to collaborate with external parties from any domain. PREREQUISITES: - The enterprise MUST have collaboration domain restrictions enabled. - The authenticated user must have admin privileges. - The exemption ID must exist (obtained from creating an exemption or listing exempt users). COMMON ERRORS: - 403 Forbidden: Enterprise doesn't have collaboration domain restrictions enabled, or the authenticated user lacks admin permissions. - 404 Not Found: The specified exemption ID does not exist. USE CASE: Use this to verify a specific user's exemption status or retrieve exemption metadata after creating or discovering an exemption ID." }, { "slug": "BOX_GET_USER_INVITE_STATUS", "name": "Get user invite status", "description": "Returns the status of a user invite. This endpoint retrieves detailed information about a specific invite, including: - The invited user's details (email, name, ID) - The enterprise they were invited to - The user who created the invite - The invite status (e.g., 'pending', 'accepted') - Creation and modification timestamps Note: The invite_id must be obtained from creating an invite using the BOX_CREATE_USER_INVITE action. This endpoint requires the 'manage_enterprise' scope." }, { "slug": "BOX_GET_WATERMARK_ON_FILE", "name": "Get watermark on file", "description": "Retrieve the watermark for a file. Returns the watermark information (created_at and modified_at timestamps) for a file that has a watermark applied. If the file does not have a watermark, a 404 Not Found error is returned. Prerequisites: - The file must exist in Box - A watermark must have been applied to the file using BOX_APPLY_WATERMARK_TO_FILE Use BOX_APPLY_WATERMARK_TO_FILE to apply a watermark to a file first if needed." }, { "slug": "BOX_GET_WATERMARK_ON_FOLDER", "name": "Get watermark for folder", "description": "Retrieve the watermark for a folder." }, { "slug": "BOX_GET_WEBHOOK", "name": "Get webhook", "description": "Retrieves detailed information about a specific webhook by its ID. Use this action to get the configuration of an existing webhook, including the target item being monitored (file or folder), the notification URL, the event triggers, and who created the webhook. Note: This action requires the 'Manage Webhooks' scope to be enabled for the application. The webhook must exist and be accessible to the authenticated user." }, { "slug": "BOX_GET_WEB_LINK", "name": "Get web link", "description": "Retrieve detailed information about a web link (bookmark) in Box. Returns the full web link object including its URL, name, description, parent folder, path collection, creation and modification timestamps, and ownership details. Web links are bookmarks to external URLs stored in Box folders." }, { "slug": "BOX_GET_ZIP_DOWNLOAD_STATUS", "name": "Get zip download status", "description": "Get the download status of a zip archive, including progress, skipped items, and current state. **Prerequisites:** Call 'BOX_CREATE_ZIP_DOWNLOAD' first to get a zip_download_id, then initiate the download via 'BOX_DOWNLOAD_ZIP_ARCHIVE'. The status endpoint is only accessible after the download starts and remains valid for 12 hours. Skipped files/folders indicate permission issues." }, { "slug": "BOX_LIST_AI_AGENTS", "name": "List ai agents", "description": "Lists AI agents based on the provided parameters." }, { "slug": "BOX_LIST_ALL_CLASSIFICATIONS", "name": "List all classifications", "description": "Retrieves the classification metadata template and lists all the classifications available to this enterprise. This API can also be called by including the enterprise ID in the URL explicitly, for example `/metadata_templates/enterprise_12345/securityClassification-6VMVochwUWo/schema`. Note: Returns a 404 if no classifications have been added to the enterprise yet. In this case, the action returns an empty classifications list." }, { "slug": "BOX_LIST_ALL_COLLECTIONS", "name": "List all collections", "description": "Retrieves all collections for a given user. Currently, only the `favorites` collection is supported." }, { "slug": "BOX_LIST_ALL_FILE_VERSIONS", "name": "List all file versions", "description": "Retrieve a list of the past versions for a file. Versions are only tracked by Box users with premium accounts. To fetch the ID of the current version of a file, use the `GET /file/:id` API." }, { "slug": "BOX_LIST_ALL_GLOBAL_METADATA_TEMPLATES", "name": "List all global metadata templates", "description": "Used to retrieve all generic, global metadata templates available to all enterprises using Box." }, { "slug": "BOX_LIST_ALLOWED_COLLABORATION_DOMAINS", "name": "List allowed collaboration domains", "description": "Returns the list domains that have been deemed safe to create collaborations for within the current enterprise." }, { "slug": "BOX_LIST_BOX_SIGN_REQUESTS", "name": "List box sign requests", "description": "Gets signature requests created by a user. If the `sign_files` and/or `parent_folder` are deleted, the signature request will not return in the list." }, { "slug": "BOX_LIST_BOX_SIGN_TEMPLATES", "name": "List box sign templates", "description": "Gets Box Sign templates created by a user." }, { "slug": "BOX_LIST_BOX_SKILL_CARDS_ON_FILE", "name": "List box skill cards on file", "description": "List the Box Skills metadata cards that are attached to a file." }, { "slug": "BOX_LIST_COLLECTION_ITEMS", "name": "List collection items", "description": "Retrieves the files and/or folders contained within a Box collection. Collections in Box are used to organize content. Currently, Box supports one type of collection: 'Favorites', which allows users to mark files and folders for quick access. Use this action to: - List all files and folders in a user's Favorites collection - Paginate through large collections using offset and limit parameters - Request specific fields to reduce response size Note: To get the collection_id, first use the 'List all collections' action (BOX_LIST_ALL_COLLECTIONS)." }, { "slug": "BOX_LIST_ENTERPRISE_DEVICE_PINS", "name": "List enterprise device pins", "description": "Retrieves all the device pins within an enterprise. The user must have admin privileges, and the application needs the \"manage enterprise\" scope to make this call." }, { "slug": "BOX_LIST_ENTERPRISE_GROUPS", "name": "List groups for enterprise", "description": "Retrieves all of the groups for a given enterprise. The user must have admin permissions to inspect enterprise's groups." }, { "slug": "BOX_LIST_ENTERPRISE_METADATA_TEMPLATES", "name": "List all metadata templates for enterprise", "description": "Used to retrieve all metadata templates created to be used specifically within the user's enterprise" }, { "slug": "BOX_LIST_ENTERPRISE_USERS", "name": "List enterprise users", "description": "Returns a list of all users for the Enterprise along with their `user_id`, `public_name`, and `login`. The application and the authenticated user need to have the permission to look up users in the entire enterprise." }, { "slug": "BOX_LIST_EVENTS", "name": "List user and enterprise events", "description": "Returns up to a year of past events for a given user or for the entire enterprise. By default this returns events for the authenticated user. To retrieve events for the entire enterprise, set the `stream_type` to `admin_logs_streaming` for live monitoring of new events, or `admin_logs` for querying across historical events. The user making the API call will need to have admin privileges, and the application will need to have the scope `manage enterprise properties` checked." }, { "slug": "BOX_LIST_FILE_APP_ITEM_ASSOCIATIONS", "name": "List file app item associations", "description": "**This is a beta feature, which means that its availability might be limited.** Returns all app items the file is associated with. This includes app items associated with ancestors of the file. Assuming the context user has access to the file, the type/ids are revealed even if the context user does not have **View** permission on the app item." }, { "slug": "BOX_LIST_FILE_COLLABORATIONS", "name": "List file collaborations", "description": "Retrieves a list of pending and active collaborations for a file. This returns all the users that have access to the file or have been invited to the file." }, { "slug": "BOX_LIST_FILE_COMMENTS", "name": "List file comments", "description": "Retrieves a list of comments for a file." }, { "slug": "BOX_LIST_FILES_ON_LEGAL_HOLD_POLICY_ASSIGNMENT", "name": "Review files on legal hold policy assignment", "description": "Get a list of files with current file versions for a legal hold assignment. In some cases you may want to get previous file versions instead. In these cases, use the `GET /legal_hold_policy_assignments/:id/file_versions_on_hold` API instead to return any previous versions of a file for this legal hold policy assignment. Due to ongoing re-architecture efforts this API might not return all file versions held for this policy ID. Instead, this API will only return the latest file version held in the newly developed architecture. The `GET /file_version_legal_holds` API can be used to fetch current and past versions of files held within the legacy architecture. This endpoint does not support returning any content that is on hold due to a Custodian collaborating on a Hub. The `GET /legal_hold_policy_assignments?policy_id={id}` API can be used to find a list of policy assignments for a given policy ID." }, { "slug": "BOX_LIST_FILE_VERSION_LEGAL_HOLDS", "name": "List file version legal holds", "description": "Get a list of file versions on legal hold for a legal hold assignment. Due to ongoing re-architecture efforts this API might not return all file versions for this policy ID. Instead, this API will only return file versions held in the legacy architecture. Two new endpoints will available to request any file versions held in the new architecture. For file versions held in the new architecture, the `GET /legal_hold_policy_assignments/:id/file_versions_on_hold` API can be used to return all past file versions available for this policy assignment, and the `GET /legal_hold_policy_assignments/:id/files_on_hold` API can be used to return any current (latest) versions of a file under legal hold. The `GET /legal_hold_policy_assignments?policy_id={id}` API can be used to find a list of policy assignments for a given policy ID. Once the re-architecture is completed this API will be deprecated." }, { "slug": "BOX_LIST_FILE_VERSION_RETENTIONS", "name": "List file version retentions", "description": "Retrieves all file version retentions for the given enterprise. **Note**: File retention API is now **deprecated**. To get information about files and file versions under retention, see [files under retention](e://get-retention-policy-assignments-id-files-under-retention) or [file versions under retention](e://get-retention-policy-assignments-id-file-versions-under-retention) endpoints." }, { "slug": "BOX_LIST_FOLDER_APP_ITEM_ASSOCIATIONS", "name": "List folder app item associations", "description": "**This is a beta feature, which means that its availability might be limited.** Returns all app items the folder is associated with. This includes app items associated with ancestors of the folder. Assuming the context user has access to the folder, the type/ids are revealed even if the context user does not have **View** permission on the app item." }, { "slug": "BOX_LIST_FOLDER_COLLABORATIONS", "name": "List folder collaborations", "description": "Retrieves a list of pending and active collaborations for a folder. This returns all the users that have access to the folder or have been invited to the folder." }, { "slug": "BOX_LIST_FOLDER_LOCKS", "name": "List folder locks", "description": "Retrieves folder lock details for a given folder. You must be authenticated as the owner or co-owner of the folder to use this endpoint." }, { "slug": "BOX_LIST_GROUP_COLLABORATIONS", "name": "List group collaborations", "description": "Retrieves all the collaborations for a group. The user must have admin permissions to inspect enterprise's groups. Each collaboration object has details on which files or folders the group has access to and with what role." }, { "slug": "BOX_LIST_GROUP_MEMBERS", "name": "List members of group", "description": "Retrieves all the members for a group. Only members of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_LIST_HOLD_FILE_VERSIONS", "name": "List previous file versions for legal hold policy assignment", "description": "Retrieves a list of previous (non-current) file versions that are on legal hold for a specific legal hold policy assignment. This endpoint returns file versions held under the new Box architecture. For current (latest) file versions, use BOX_REVIEW_FILES_ON_LEGAL_HOLD_POLICY_ASSIGNMENT instead. For file versions in the legacy architecture, use BOX_LIST_FILE_VERSION_LEGAL_HOLDS. Note: Due to ongoing re-architecture efforts, this API might not return all file versions held for this policy ID. This endpoint does not support returning content that is on hold due to a Custodian collaborating on a Hub. Requires the 'manage_legal_holds' scope and Legal Hold feature enabled for the enterprise." }, { "slug": "BOX_LIST_HUBS", "name": "List Box Hubs", "description": "Tool to list all Box Hubs for the authenticated user or enterprise. Use when you need to retrieve, search, or filter Box Hubs." }, { "slug": "BOX_LIST_ITEMS_IN_FOLDER", "name": "List items in folder", "description": "Retrieves a page of items in a folder. These items can be files, folders, and web links. To request more information about the folder itself, like its size, use the [Get a folder](#get-folders-id) endpoint instead." }, { "slug": "BOX_LIST_LEGAL_HOLD_POLICIES", "name": "List all legal hold policies", "description": "Retrieves a list of legal hold policies that belong to an enterprise." }, { "slug": "BOX_LIST_LEGAL_HOLD_POLICY_ASSIGNMENTS", "name": "List legal hold policy assignments", "description": "Retrieves a list of items a legal hold policy has been assigned to." }, { "slug": "BOX_LIST_METADATA_CASCADE_POLICIES", "name": "List metadata cascade policies", "description": "Retrieves a list of all the metadata cascade policies that are applied to a given folder. This can not be used on the root folder with ID `0`." }, { "slug": "BOX_LIST_METADATA_INSTANCES_ON_FILE", "name": "List metadata instances on file", "description": "Retrieves all metadata instances applied to a file. Returns all metadata template instances that have been applied to the specified file, including both enterprise and global templates. The API does not support pagination and will return all metadata instances in a single response." }, { "slug": "BOX_LIST_METADATA_INSTANCES_ON_FOLDER", "name": "List metadata instances on folder", "description": "Retrieves all metadata for a given folder. This can not be used on the root folder with ID `0`." }, { "slug": "BOX_LIST_METADATA_TAXONOMY_NODES", "name": "List metadata taxonomy nodes", "description": "Retrieves metadata taxonomy nodes based on the specified parameters. Use when you need to browse or search hierarchical metadata classifications in Box. Results are sorted in lexicographic order unless a query parameter is passed, in which case results are sorted by relevance." }, { "slug": "BOX_LIST_PENDING_COLLABORATIONS", "name": "List pending collaborations", "description": "Retrieves all pending collaboration invites for this user." }, { "slug": "BOX_LIST_RECENTLY_ACCESSED_ITEMS", "name": "List recently accessed items", "description": "Returns information about the recent items accessed by a user, either in the last 90 days or up to the last 1000 items accessed." }, { "slug": "BOX_LIST_RETENTION_POLICIES", "name": "List retention policies", "description": "Retrieves all of the retention policies for an enterprise." }, { "slug": "BOX_LIST_RETENTION_POLICY_ASSIGNMENTS", "name": "List retention policy assignments", "description": "Retrieves all retention policy assignments for a specified retention policy. Retention policies can be assigned to: - 'enterprise': Apply to all content in the enterprise - 'folder': Apply to a specific folder - 'metadata_template': Apply based on metadata template values Requires the 'manage_retention_policies' scope." }, { "slug": "BOX_LIST_SHIELD_INFORMATION_BARRIER_REPORTS", "name": "List shield information barrier reports", "description": "Lists shield information barrier reports for a specified barrier. Shield information barrier reports contain details about barrier violations and compliance status. This feature requires Box Shield enterprise license. Returns a paginated list of report objects with status (pending/completed), creation timestamps, and details about the barrier scope." }, { "slug": "BOX_LIST_SHIELD_INFORMATION_BARRIERS", "name": "List shield information barriers", "description": "Retrieves a list of shield information barrier objects for the enterprise of JWT." }, { "slug": "BOX_LIST_SHIELD_INFORMATION_BARRIER_SEGMENT_MEMBERS", "name": "List shield information barrier segment members", "description": "Lists shield information barrier segment members based on provided segment IDs." }, { "slug": "BOX_LIST_SHIELD_INFORMATION_BARRIER_SEGMENT_RESTRICTIONS", "name": "List shield information barrier segment restrictions", "description": "Lists all shield information barrier segment restrictions for a specific segment. Shield information barrier segment restrictions define which segments are prevented from collaborating with each other. This endpoint retrieves all restrictions where the specified segment is the requesting segment (the segment whose members are restricted from collaborating with other segments). Note: This feature requires Box Shield add-on and enterprise admin privileges. Returns 404 if Shield is not enabled for your enterprise or if the segment ID does not exist. Use Cases: - View all collaboration restrictions for a specific segment - Audit compliance boundaries between organizational divisions - Paginate through large sets of restrictions using marker-based pagination" }, { "slug": "BOX_LIST_SHIELD_INFORMATION_BARRIER_SEGMENTS", "name": "List shield information barrier segments", "description": "Retrieves a list of shield information barrier segment objects for the specified Information Barrier ID. Shield Information Barriers are used to separate individuals/groups within the same enterprise to prevent confidential information from passing between them. Segments define the groups of users that are separated by the barrier. Note: This is an enterprise-level feature that requires Box Shield to be enabled. Returns a 404 error if Shield Information Barriers is not available for the enterprise." }, { "slug": "BOX_LIST_SLACK_INTEGRATION_MAPPINGS", "name": "List slack integration mappings", "description": "Lists [Slack integration mappings](https://support.box.com/hc/en-us/articles/4415585987859-Box-as-the-Content-Layer-for-Slack) in a users' enterprise. You need Admin or Co-Admin role to use this endpoint." }, { "slug": "BOX_LIST_STORAGE_POLICIES", "name": "List storage policies", "description": "Fetches all the storage policies in the enterprise." }, { "slug": "BOX_LIST_STORAGE_POLICY_ASSIGNMENTS", "name": "List storage policy assignments", "description": "Fetches all the storage policy assignment for an enterprise or user." }, { "slug": "BOX_LIST_TASK_ASSIGNMENTS", "name": "List task assignments", "description": "Lists all of the assignments for a given task. Returns a collection of task assignment objects showing who has been assigned to complete or review a task. Each assignment includes the assigned user's details, the assignment status, and the associated file information. This endpoint does not support pagination as tasks typically have a limited number of assignees." }, { "slug": "BOX_LIST_TASKS_ON_FILE", "name": "List tasks on file", "description": "Retrieves a list of all the tasks for a file. This endpoint does not support pagination." }, { "slug": "BOX_LIST_TEAMS_INTEGRATION_MAPPINGS", "name": "List teams integration mappings", "description": "Lists [Teams integration mappings](https://support.box.com/hc/en-us/articles/360044681474-Using-Box-for-Teams) in a users' enterprise. You need Admin or Co-Admin role to use this endpoint." }, { "slug": "BOX_LIST_TERMS_OF_SERVICES", "name": "List terms of services", "description": "Returns the current terms of service text and settings for the enterprise." }, { "slug": "BOX_LIST_TERMS_OF_SERVICE_USER_STATUSES", "name": "List terms of service user statuses", "description": "Retrieves a list of users and their acceptance status for a specific terms of service. Returns information about whether each user has accepted the terms, including: - User details (ID, name, email) - Acceptance status (accepted or not) - Creation and modification timestamps Note: This endpoint requires the Terms of Service feature to be enabled for the enterprise and appropriate admin permissions (manage enterprise properties or manage users). Use 'list_terms_of_services' first to get valid terms of service IDs." }, { "slug": "BOX_LIST_TRASHED_ITEMS", "name": "List trashed items", "description": "Retrieves the files and folders that have been moved to the trash. Any attribute in the full files or folders objects can be passed in with the `fields` parameter to retrieve those specific attributes that are not returned by default. This endpoint defaults to use offset-based pagination, yet also supports marker-based pagination using the `marker` parameter." }, { "slug": "BOX_LIST_UPLOAD_SESSION_PARTS", "name": "List upload session parts", "description": "List the parts (chunks) that have been uploaded to a chunked upload session. This is useful for tracking upload progress, verifying which parts have been successfully uploaded, and determining which parts still need to be uploaded. The upload_session_id is obtained from the 'Create upload session' action. Note: Chunked uploads are only for files larger than 20MB." }, { "slug": "BOX_LIST_USER_EMAIL_ALIASES", "name": "List user's email aliases", "description": "Retrieves all email aliases for a user. The collection does not include the primary login for the user." }, { "slug": "BOX_LIST_USER_GROUPS", "name": "List user's groups", "description": "Retrieves all group memberships for a user, including the groups they belong to and their role in each group (member or admin). Only members of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_LIST_USERS_EXEMPT_FROM_COLLABORATION_DOMAIN_RESTRICTIONS", "name": "List users exempt from collaboration domain restrictions", "description": "Returns a list of users who have been exempt from the collaboration domain restrictions. Note: This endpoint requires an enterprise account with collaboration domain restrictions enabled. A 403 Forbidden error will be returned if the feature is not available for the enterprise." }, { "slug": "BOX_LIST_WEBHOOKS", "name": "List all webhooks", "description": "Returns all defined webhooks for the requesting application. This API only returns webhooks that are applied to files or folders that are owned by the authenticated user. This means that an admin can not see webhooks created by a service account unless the admin has access to those folders, and vice versa." }, { "slug": "BOX_LIST_WORKFLOWS", "name": "List workflows", "description": "Lists Box Relay workflows configured for a specific folder. Use the 'trigger_type' parameter to filter workflows by trigger type (e.g., 'WORKFLOW_MANUAL_START' for workflows that can be manually started via API). Your application must be authorized to use the 'Manage Box Relay' application scope within the Box developer console. Returns a paginated list of workflow objects with their flows and outcomes." }, { "slug": "BOX_PREFLIGHT_CHECK_BEFORE_UPLOAD", "name": "Preflight check before upload", "description": "Performs a preflight check to verify that a file will be accepted by Box before uploading the entire file. This helps verify permissions, quota, and filename conflicts before starting the actual upload. A successful response (HTTP 200) indicates the upload can proceed. A 409 Conflict response indicates a file with the same name already exists." }, { "slug": "BOX_PROMOTE_FILE_VERSION", "name": "Promote file version", "description": "Promote a specific version of a file. If previous versions exist, this method can be used to promote one of the older versions to the top of the version history. This creates a new copy of the old version and puts it at the top of the versions history. The file will have the exact same contents as the older version, with the the same hash digest, `etag`, and name as the original. Other properties such as comments do not get updated to their former values. Don't use this endpoint to restore Box Notes, as it works with file formats such as PDF, DOC, PPTX or similar." }, { "slug": "BOX_QUERY_FILES_FOLDERS_BY_METADATA", "name": "Query files folders by metadata", "description": "Query files and folders by metadata using SQL-like syntax. Returns items that have metadata instances matching the specified template and optional query conditions. Use this action when you need to find files/folders based on their metadata values rather than searching by file name or content. This is useful for locating documents based on custom attributes like status, category, department, dates, etc. Examples: - Find all files with a specific metadata template: set `from_` to \"enterprise_XXXXX.templateKey\" - Find files in a specific folder: set `ancestor_folder_id` to the folder ID (use \"0\" for all folders) - Filter by metadata values: use `query` and `query_params` (e.g., query=\"status = :val\", query_params={\"val\": \"approved\"}) Note: Classification templates cannot be queried with this endpoint." }, { "slug": "BOX_REFRESH_ACCESS_TOKEN", "name": "Refresh access token", "description": "Refresh an Access Token using its client ID, secret, and refresh token. This endpoint exchanges a refresh token for a new access token. The refresh token must be valid (they expire after 60 days). Each time a refresh token is used, it is invalidated and a new one is returned along with the new access token. Access tokens expire after 1 hour and need to be refreshed periodically. Note: This action requires valid OAuth2 credentials (client_id, client_secret, and a valid refresh_token) that cannot be automatically generated." }, { "slug": "BOX_REQUEST_ACCESS_TOKEN", "name": "Request access token", "description": "Request an Access Token using either a client-side obtained OAuth 2.0 authorization code or a server-side JWT assertion. An Access Token is a string that enables Box to verify that a request belongs to an authorized session. In the normal order of operations you will begin by requesting authentication from the [authorize](#get-authorize) endpoint and Box will send you an authorization code. You will then send this code to this endpoint to exchange it for an Access Token. The returned Access Token can then be used to to make Box API calls." }, { "slug": "BOX_RESEND_BOX_SIGN_REQUEST", "name": "Resend Box Sign Request", "description": "Resends signature request emails to all outstanding signers. Use this when a signer did not receive the original email, the email was lost, or the signer accidentally deleted it. The email is sent asynchronously after the API call returns. Rate limit: Can only be called once every 10 minutes per sign request. Note: For automated reminders, consider setting 'are_reminders_enabled' to true when creating the sign request, which sends automatic reminder emails after 3, 8, 13, and 18 days. Requires Box Sign feature to be enabled and sign_requests.readwrite scope." }, { "slug": "BOX_RESTORE_FILE", "name": "Restore file", "description": "Restores a file that has been moved to the trash. An optional new parent ID can be provided to restore the file to in case the original folder has been deleted." }, { "slug": "BOX_RESTORE_FILE_VERSION", "name": "Restore file version", "description": "Restores a specific version of a file after it was deleted (trashed). This action restores a file version that was previously moved to the trash by setting its trashed_at field back to null. Do not use this endpoint to restore Box Notes - it only works with standard file formats such as PDF, DOC, PPTX, or similar. To restore a file version: 1. First use 'List all file versions' to find versions with trashed_at set 2. Then call this action with the file_id and file_version_id The restored version will have trashed_at=null and restored_at/restored_by fields populated." }, { "slug": "BOX_RESTORE_FOLDER", "name": "Restore folder", "description": "Restores a folder that has been moved to the trash. An optional new parent ID can be provided to restore the folder to in case the original folder has been deleted. During this operation, part of the file tree will be locked, mainly the source folder and all of its descendants, as well as the destination folder. For the duration of the operation, no other move, copy, delete, or restore operation can performed on any of the locked folders." }, { "slug": "BOX_RESTORE_WEB_LINK", "name": "Restore web link", "description": "Restores a web link that has been moved to the trash. This action recovers a trashed web link and restores it to its original parent folder. If the original folder has been deleted, you can optionally specify an alternative parent folder using the parent_id parameter. You can also rename the web link during restoration using the name parameter. The web link must exist in the trash (not permanently deleted) for this action to succeed. Returns the restored web link with item_status changed from 'trashed' to 'active'." }, { "slug": "BOX_REVOKE_ACCESS_TOKEN", "name": "Revoke access token", "description": "Revoke an active Access Token, effectively logging a user out that has been previously authenticated." }, { "slug": "BOX_SEARCH_FOR_CONTENT", "name": "Search for content", "description": "Searches for files, folders, web links, and shared files across the users content or across the entire enterprise." }, { "slug": "BOX_START_WORKFLOW", "name": "Starts workflow based on request body", "description": "Starts a Box Relay workflow with trigger type `WORKFLOW_MANUAL_START`. Prerequisites: - Your application must have the 'Manage Box Relay' scope enabled in the Box Developer Console. - Use the 'List Workflows' endpoint to get the workflow_id, flow.id, and folder.id. - All files specified must exist in the workflow's configured folder. Workflow: 1. Call 'List Workflows' with the folder_id to get available workflows. 2. From the response, extract: workflow.id, flows[].id, and any outcome IDs if needed. 3. Call this endpoint with the extracted IDs and the file IDs to process. Returns HTTP 204 No Content on success." }, { "slug": "BOX_TERMINATE_USER_GROUP_SESSIONS", "name": "Create jobs to terminate user group session", "description": "Terminates all active sessions for users belonging to the specified Box enterprise groups. This action validates the roles and permissions of each group, then creates asynchronous background jobs to terminate sessions for all users in those groups. The operation is processed asynchronously - check admin events to monitor job status. Requires admin privileges. Use this to enforce security policies or respond to security incidents affecting entire groups." }, { "slug": "BOX_TERMINATE_USER_SESSIONS", "name": "Create jobs to terminate users session", "description": "Creates asynchronous jobs to terminate active Box sessions for specified users. Use this when a user account may be compromised, a device is lost/stolen, or you need to force users to re-authenticate. This logs out users from all active sessions including web, desktop, and mobile apps. Both user_ids and user_logins parameters are required. Returns HTTP 202 on success with an async job created." }, { "slug": "BOX_TRANSFER_OWNED_FOLDERS", "name": "Transfer owned folders", "description": "Transfers all files and folders owned by one user to another user's account in Box. This creates a new folder in the destination user's root directory containing all the source user's content. The operation is commonly used for employee offboarding, role transitions, or account consolidation. Important: This operation is irreversible and requires enterprise admin permissions. All existing shared links and folder-level collaborations are preserved during transfer." }, { "slug": "BOX_TRIM_METADATA_TAXONOMY_LEVELS", "name": "Trim metadata taxonomy levels", "description": "Deletes the last level from a metadata taxonomy by trimming it. Use when you need to remove the deepest hierarchical level from a taxonomy structure." }, { "slug": "BOX_UNASSIGN_LEGAL_HOLD_POLICY", "name": "Unassign legal hold policy", "description": "Remove a legal hold policy assignment from an item (user, folder, file, or file version). This endpoint unassigns a legal hold policy by deleting the assignment record. When successful, the API returns a 202 Accepted response with an empty body. IMPORTANT: This is an asynchronous operation - the legal hold is not fully removed when the response returns. The removal process continues in the background. To get the assignment ID: - Use 'assign_legal_hold_policy' and capture the returned 'id' field - Or use 'list_legal_hold_policy_assignments' to find existing assignment IDs Prerequisites: - Box Enterprise account with Box Governance add-on - OAuth scope: 'manage_legal_hold' - Admin-level permissions on the Box account Use case: Remove legal holds when litigation is resolved or content no longer needs to be preserved for compliance purposes." }, { "slug": "BOX_UPDATE_AI_AGENT", "name": "Update AI Agent", "description": "Updates an existing custom AI agent in Box AI Studio. You can modify the agent's name, access settings, icon, and capability configurations (ask, text_gen, extract). **Requirements:** - Box Enterprise Advanced account with Box AI Studio enabled - \"Manage AI\" scope must be enabled in the Box Developer Console **Usage Notes:** - The `type` field must always be set to 'ai_agent' - Only custom agents (origin='CUSTOM') can be updated; Box default agents cannot be modified - When updating capabilities, provide all required fields (type, access_state, description) - Use `enabled_for_selected_users` access_state with `allowed_entities` to restrict access **Example:** To update an agent's name and enable the ask capability: agent_id=\"1234567890\", name=\"Updated Agent\", access_state=\"enabled\", ask_type=\"ai_agent_ask\", ask_access_state=\"enabled\", ask_description=\"Ask questions about documents\"" }, { "slug": "BOX_UPDATE_ALL_BOX_SKILL_CARDS_ON_FILE", "name": "Update all box skill cards on file", "description": "An alternative method to overwrite and update all Box Skill metadata cards on a file. IMPORTANT: This endpoint is designed for Box Skills applications. The skill_id parameter must be a valid Box-assigned skill invocation ID that is received in the webhook payload when Box triggers a skill on a file. This ID is NOT a user-created identifier. Use Cases: - Update skill card metadata after processing a file with a custom Box Skill - Report processing status (success, failure, in-progress) back to Box - Overwrite existing skill cards with new results from ML/AI processing For creating skill cards on files without a skill invocation ID, use: - 'create_box_skill_cards_on_file' to add new skill cards - 'list_box_skill_cards_on_file' to view existing skill cards - 'remove_box_skill_cards_from_file' to delete skill cards" }, { "slug": "BOX_UPDATE_BARRIER_SEGMENT", "name": "Update shield information barrier segment with specified id", "description": "Updates a shield information barrier segment's name and/or description. Shield Information Barrier segments represent organizational divisions (e.g., 'Investment Banking', 'Research', 'Trading') that need to be isolated from each other for regulatory compliance or information security purposes. Use this action to modify a segment's identifying information after creation. At least one of 'name' or 'description' should be provided. Requirements: - Box Shield license is required to use this feature - The segment must exist (obtained from list_shield_information_barrier_segments) - Admin permissions are required to update segments Returns 404 if segment not found, 409 if name conflicts with an existing segment." }, { "slug": "BOX_UPDATE_BOX_SKILL_CARDS_ON_FILE", "name": "Update box skill cards on file", "description": "Updates one or more Box Skills metadata cards on a file using JSON-Patch format. This action allows you to selectively update specific skill cards by their index position without affecting other cards. Use the 'replace' operation to modify existing cards at specified positions (e.g., /cards/0 for the first card). NOTE: This updates existing cards in place. To view existing cards first, use 'list_box_skill_cards_on_file'. To add new cards, use 'create_box_skill_cards_on_file'. To remove all cards, use 'remove_box_skill_cards_from_file'." }, { "slug": "BOX_UPDATE_COLLABORATION", "name": "Update collaboration", "description": "Updates a collaboration. Can be used to change the owner of an item, or to accept collaboration invites." }, { "slug": "BOX_UPDATE_COMMENT", "name": "Update comment", "description": "Update the message of a comment." }, { "slug": "BOX_UPDATE_FILE", "name": "Update file", "description": "Updates a file. This can be used to rename or move a file, create a shared link, or lock a file." }, { "slug": "BOX_UPDATE_FILE_REQUEST", "name": "Update file request", "description": "Updates a file request in Box. File requests allow external users to upload files to a specific folder without needing a Box account. Use this action to modify file request settings such as title, description, status, and form requirements. Common use cases: - Activate or deactivate a file request by changing its status - Update the title or description shown to uploaders - Set or change form requirements (email, description) - Set an expiration date for the file request Note: File request IDs can only be obtained from the Box web application URL. There is no API endpoint to list all file requests. To find a file_request_id, navigate to the file request in Box web UI and copy the ID from the URL (e.g., https://*.app.box.com/filerequest/123)." }, { "slug": "BOX_UPDATE_FOLDER", "name": "Update folder", "description": "Updates a folder. This can be also be used to move the folder, create shared links, update collaborations, and more." }, { "slug": "BOX_UPDATE_GROUP", "name": "Update group", "description": "Updates a specific group. Only admins of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_UPDATE_GROUP_MEMBERSHIP", "name": "Update group membership", "description": "Updates a user's group membership. Only admins of this group or users with admin-level permissions will be able to use this API." }, { "slug": "BOX_UPDATE_LEGAL_HOLD_POLICY", "name": "Update legal hold policy", "description": "Update an existing legal hold policy in Box. This action allows you to modify the name, description, and release notes of an existing legal hold policy. Legal hold policies are used to preserve content for litigation or compliance purposes. At least one of the optional parameters (policy_name, description, or release_notes) should be provided. Note: This is a Box Governance feature that requires an enterprise account with legal hold capabilities enabled. The authenticated user must have admin-level permissions with the 'manage_legal_holds' scope." }, { "slug": "BOX_UPDATE_METADATA_INSTANCE_ON_FILE", "name": "Update metadata instance on file", "description": "Updates a metadata instance on a file using JSON-Patch operations. The metadata template must already be applied to the file before it can be updated. Only values that match the template schema are accepted. The update is atomic - if any operation fails, no changes are applied." }, { "slug": "BOX_UPDATE_METADATA_INSTANCE_ON_FOLDER", "name": "Update metadata instance on folder", "description": "Updates metadata on a folder using JSON-Patch operations (RFC 6902). The metadata template must already be applied to the folder. Only values matching the template schema are accepted (except global.properties which accepts any key-value pairs). All operations are applied atomically - if any fail, no changes are made." }, { "slug": "BOX_UPDATE_METADATA_TAXONOMY", "name": "Update metadata taxonomy", "description": "Tool to update an existing metadata taxonomy's display name. Use when you need to rename a taxonomy while keeping its structure and key intact." }, { "slug": "BOX_UPDATE_METADATA_TAXONOMY_NODE", "name": "Update metadata taxonomy node", "description": "Tool to update an existing metadata taxonomy node's display name. Use when you need to rename a taxonomy node in the Box metadata taxonomy hierarchy." }, { "slug": "BOX_UPDATE_METADATA_TEMPLATE", "name": "Update metadata template", "description": "Updates a metadata template by applying JSON-Patch operations. The template must already exist. The update is applied atomically - if any error occurs during the application of operations, the metadata template will not be changed. Use this to modify template properties, add/edit/remove fields, or manage enum/multiSelect options." }, { "slug": "BOX_UPDATE_RETENTION_POLICY", "name": "Update retention policy", "description": "Updates an existing Box retention policy. Use this action to modify retention policy settings such as name, description, retention duration, disposition action, and notification settings. Requires Box Governance add-on and 'manage retention policies' scope. Note: Non-modifiable policies have limited update options (can only extend duration, add folders, retire policy, or change notification settings)." }, { "slug": "BOX_UPDATE_SHARED_LINK_ON_FILE", "name": "Update shared link on file", "description": "Updates a shared link on a file." }, { "slug": "BOX_UPDATE_SHARED_LINK_ON_FOLDER", "name": "Update shared link on folder", "description": "Updates a shared link on a folder." }, { "slug": "BOX_UPDATE_SHARED_LINK_ON_WEB_LINK", "name": "Update shared link on web link", "description": "Updates a shared link on a web link." }, { "slug": "BOX_UPDATE_SHIELD_INFORMATION_BARRIER_STATUS", "name": "Change shield information barrier status", "description": "Change the status of a shield information barrier. Shield information barriers are ethical walls that prevent exchanges or communication between individuals/groups within the same enterprise to avoid conflicts of interest. This action allows you to: - Set status to 'pending': Transition a barrier from 'draft' status in preparation for enablement - Set status to 'disabled': Deactivate an enabled or pending barrier Note: Barriers cannot be directly enabled via this endpoint. The 'enabled' status is set automatically by Box after all required segments and restrictions are configured on a 'pending' barrier." }, { "slug": "BOX_UPDATE_SLACK_INTEGRATION_MAPPING", "name": "Update slack integration mapping", "description": "Updates an existing [Slack integration mapping](https://support.box.com/hc/en-us/articles/4415585987859-Box-as-the-Content-Layer-for-Slack). Use this to change which Box folder is mapped to a Slack channel, or to update configuration options like automatic access management. Requires Admin or Co-Admin role and the 'manage_enterprise_properties' scope. At least one of 'box_item' or 'options' must be provided." }, { "slug": "BOX_UPDATE_STORAGE_POLICY_ASSIGNMENT", "name": "Update storage policy assignment", "description": "Updates a storage policy assignment for an enterprise or user. Storage policies control where data is stored geographically (data residency). Use this action to change which storage policy is assigned to a user or enterprise. This action requires Box Zones or similar enterprise feature to be enabled and admin-level permissions with 'manage_enterprise_properties' scope. Use 'list_storage_policies' to get available policies and 'list_storage_policy_assignments' to find existing assignment IDs." }, { "slug": "BOX_UPDATE_TASK", "name": "Update task", "description": "Updates a task. This can be used to update a task's configuration, or to update its completion state." }, { "slug": "BOX_UPDATE_TASK_ASSIGNMENT", "name": "Update task assignment", "description": "Updates a task assignment to change its resolution state or add a message. This endpoint allows updating the state of a task assigned to a user. Use this to mark tasks as completed, approved, rejected, or incomplete, and optionally add a message explaining the decision. Important notes: - Only the assignee can typically update their own task assignment - For 'complete' action tasks: use 'completed' or 'incomplete' - For 'review' action tasks: use 'approved', 'rejected', or 'incomplete' - At least one of 'message' or 'resolution_state' should be provided" }, { "slug": "BOX_UPDATE_TEAMS_INTEGRATION_MAPPING", "name": "Update teams integration mapping", "description": "Updates a Microsoft Teams integration mapping that links a Box folder to a Teams channel. This endpoint allows you to change which Box folder is associated with a Microsoft Teams channel through the Box for Teams integration. After updating, any new files shared in the Teams channel will be stored in the newly mapped Box folder. **Requirements:** - Admin or Co-Admin role in the Box enterprise - The 'manage_enterprise_properties' scope - Box for Teams must be installed in the relevant Microsoft Teams workspace **Use Cases:** - Reorganize where Teams channel files are stored in Box - Move team collaboration content to a different department folder - Update mappings after folder restructuring For more information, see: https://support.box.com/hc/en-us/articles/360044681474-Using-Box-for-Teams" }, { "slug": "BOX_UPDATE_TERMS_OF_SERVICE", "name": "Update terms of service", "description": "Updates an existing terms of service for the enterprise. This action allows you to modify the status (enabled/disabled) and text content of an existing terms of service. When enabled, users will be prompted to accept the terms before accessing Box content. Note: This endpoint requires enterprise admin permissions with 'Edit settings for your company' enabled. The Terms of Service feature must also be enabled for the enterprise in the Box Admin Console. Use 'list_terms_of_services' to find the terms_of_service_id to update." }, { "slug": "BOX_UPDATE_TERMS_OF_SERVICE_STATUS_FOR_EXISTING_USER", "name": "Update terms of service status for existing user", "description": "Updates the acceptance status of a terms of service for a user who has previously accepted or rejected it. This action allows you to change whether a user has accepted or rejected a specific terms of service. Use this for users who already have a status record. For users who are encountering the terms of service for the first time, use create_terms_of_service_status_for_new_user instead. Prerequisites: - The Terms of Service feature must be enabled for the enterprise in the Box Admin Console - A terms of service user status record must already exist for the user (created via create_terms_of_service_status_for_new_user) - Requires admin permissions with 'manage enterprise properties' or 'manage users' scope Use list_terms_of_service_user_statuses to find existing status IDs for users." }, { "slug": "BOX_UPDATE_USER", "name": "Update user", "description": "Updates a managed or app user in an enterprise. This endpoint is only available to users and applications with the right admin permissions." }, { "slug": "BOX_UPDATE_WEBHOOK", "name": "Update webhook", "description": "Updates an existing webhook's configuration. Use this action to modify a webhook's target item (file or folder), notification URL, or event triggers. Only the fields provided in the request will be updated; omitted fields remain unchanged. Requirements: - The notification URL must use HTTPS on port 443 - The URL must respond with HTTP 200-299 within 30 seconds - Requires 'Manage Webhooks' scope enabled for the application Note: When changing the target, both target_id and target_type must be provided together." }, { "slug": "BOX_UPDATE_WEB_LINK", "name": "Update web link", "description": "Updates a web link object. This action allows you to modify an existing web link's properties including: - Changing the URL destination - Updating the name and description - Moving it to a different folder - Configuring shared link settings (access level, password, vanity URL, expiration) All fields except web_link_id are optional - only provide the fields you want to update." }, { "slug": "BOX_UPLOAD_FILE", "name": "Upload file", "description": "Uploads a small file to Box. For file sizes over 50MB we recommend using the Chunk Upload APIs. The `attributes` part of the body must come **before** the `file` part. Requests that do not follow this format when uploading the file will receive a HTTP `400` error with a `metadata_after_file_contents` error code." }, { "slug": "BOX_UPLOAD_FILE_VERSION", "name": "Upload file version", "description": "Update a file's content. For file sizes over 50MB we recommend using the Chunk Upload APIs. The `attributes` part of the body must come **before** the `file` part. Requests that do not follow this format when uploading the file will receive a HTTP `400` error with a `metadata_after_file_contents` error code." }, { "slug": "BOX_UPLOAD_PART_OF_FILE", "name": "Upload part of file", "description": "Uploads a chunk of a file for an upload session. The actual endpoint URL is returned by the [`Create upload session`](e://post-files-upload-sessions) and [`Get upload session`](e://get-files-upload-sessions-id) endpoints. Requirements: - Chunked uploads require files with a minimum size of 20MB - Each part's size must match the part_size from the upload session (except the last part) - The offset must be a multiple of the part_size - Parts cannot overlap with previously uploaded parts" } ], "triggers": [ { "slug": "BOX_COLLABORATION_DETAILS_CHANGED_TRIGGER", "name": "Collaboration Details Changed", "description": "Triggers when a collaboration's details change (e.g., role, status, expiration).\n\n This trigger monitors a specific collaboration and detects when any meaningful\n field changes, such as role, status, expiration date, access type, or\n acknowledgment status." }, { "slug": "BOX_COMMENT_CHANGED_TRIGGER", "name": "Comment Changed", "description": "Triggers when a comment's content or details change in Box.\n\n This trigger monitors a specific Box comment and detects when any meaningful\n field changes, such as message text edits, tagged message changes, or\n modification timestamp updates." }, { "slug": "BOX_FILE_COMMENT_ADDED_TRIGGER", "name": "New File Comment Added", "description": "Triggers when a new comment is added to a file in Box.\n\n This trigger monitors a specific Box file and fires when new comments are detected." }, { "slug": "BOX_FILE_METADATA_CHANGED_TRIGGER", "name": "File Metadata Changed", "description": "Triggers when a file's metadata or properties change in Box.\n\n This trigger monitors a specific Box file and fires when changes are detected\n in key fields like name, description, size, modification time, parent folder,\n or status." }, { "slug": "BOX_FILE_SHARED_LINK_CHANGED_TRIGGER", "name": "File Shared Link Changed", "description": "Triggers when a file's shared link settings change in Box.\n\n This trigger monitors a specific Box file's shared link and fires when changes\n are detected in the shared link configuration, such as access level, permissions,\n password protection, expiration date, or vanity URL." }, { "slug": "BOX_FILE_VERSION_UPLOADED_TRIGGER", "name": "New File Version Uploaded", "description": "Triggers when a new file version is uploaded to a file in Box.\n\n This trigger monitors a specific Box file and fires when new versions are detected." }, { "slug": "BOX_FOLDER_ITEM_ADDED_TRIGGER", "name": "New Item Added to Folder", "description": "Triggers when a new item (file, folder, or web link) is added to a folder in Box.\n\n This trigger monitors a specific Box folder and fires when new items are detected." }, { "slug": "BOX_FOLDER_PROPERTIES_CHANGED_TRIGGER", "name": "Folder Properties Changed", "description": "Triggers when a folder's core properties change in Box.\n\n This trigger monitors a specific Box folder and fires when changes are detected\n in properties like name, description, modification time, parent folder,\n item status, or shared link settings." }, { "slug": "BOX_FOLDER_SHARED_LINK_CHANGED_TRIGGER", "name": "Folder Shared Link Changed", "description": "Triggers when a folder's shared link settings change in Box.\n\n This trigger monitors a specific Box folder's shared link and fires when changes\n are detected in the shared link configuration, such as access level, permissions,\n password protection, expiration date, or vanity URL." }, { "slug": "BOX_NEW_FILE_ADDED_TRIGGER", "name": "New File Added to Folder", "description": "Triggers when a new file is added to a folder in Box.\n\n This trigger monitors a specific Box folder and fires when new files are detected.\n Only files (not folders or web links) are monitored." }, { "slug": "BOX_NEW_FOLDER_COLLABORATION_CREATED_TRIGGER", "name": "New Folder Collaboration Created", "description": "Triggers when a new collaboration is created on a specific folder in Box.\n\n This trigger monitors a specific Box folder and fires when new collaborations are detected." }, { "slug": "BOX_NEW_PENDING_COLLABORATION_TRIGGER", "name": "New Pending Collaboration Invite", "description": "Triggers when a new pending collaboration invite is created.\n\n This trigger monitors the user's pending collaborations and fires when new\n pending collaboration invites are detected." }, { "slug": "BOX_NEW_SIGN_REQUEST_CREATED_TRIGGER", "name": "New Sign Request Created", "description": "Triggers when a new Box sign request is created.\n This trigger monitors Box sign requests and fires when new sign requests are detected." }, { "slug": "BOX_NEW_TASK_ASSIGNMENT_TRIGGER", "name": "New Task Assignment Added", "description": "Triggers when a new assignment is added to a task in Box.\n\n This trigger monitors a specific Box task and fires when new assignments are detected." }, { "slug": "BOX_NEW_TASK_CREATED_TRIGGER", "name": "New Task Created on File", "description": "Triggers when a new task is created on a Box file.\n\n This trigger monitors a specific Box file and fires when new tasks are detected." }, { "slug": "BOX_SIGN_REQUEST_STATUS_CHANGED_TRIGGER", "name": "Box Sign Request Status Changed", "description": "Triggers when a Box Sign request's status or meaningful fields change.\n\n This trigger monitors a specific Box Sign request and fires when changes are detected\n in key fields like status, signer decisions, document readiness, or completion state." }, { "slug": "BOX_TASK_ASSIGNMENT_STATE_CHANGED_TRIGGER", "name": "Task Assignment State Changed", "description": "Triggers when a task assignment's state changes.\n\n This trigger monitors task assignments for a specific task and detects when\n the resolution_state changes (e.g., from incomplete to completed, or from\n completed to approved/rejected)." }, { "slug": "BOX_TASK_STATE_CHANGED_TRIGGER", "name": "Task State Changed", "description": "Triggers when a task's status or details change in Box.\n\n This trigger monitors a specific Box task and fires when changes are detected\n in key fields like status, due date, message, or completion state." }, { "slug": "BOX_TRASHED_FILE_STATE_CHANGED_TRIGGER", "name": "Trashed File State Changed", "description": "Triggers when a file's trash state changes in Box.\n\n This trigger monitors a specific Box file and fires when its trash state changes\n (e.g., moved to trash or restored from trash)." }, { "slug": "BOX_TRASHED_FOLDER_STATE_CHANGED_TRIGGER", "name": "Trashed Folder State Changed", "description": "Triggers when a folder's trash state changes in Box.\n\n This trigger monitors a specific Box folder and fires when its trash state changes\n (e.g., moved to trash or restored from trash)." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAUTH2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "smugmug", "name": "SmugMug", "logo": "https://logos.composio.dev/api/smugmug", "description": "SmugMug is a platform for photographers to showcase, share, and sell their photos and videos.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SMUGMUG_GET_ALBUM", "name": "Get Album", "description": "Retrieves detailed information about a SmugMug album using its album key. Returns album settings, metadata, image count, and links to related resources like images and user info. Use this to get comprehensive details about a specific album/gallery." }, { "slug": "SMUGMUG_GET_ALBUM_HIGHLIGHT_IMAGE", "name": "Get Album Highlight Image", "description": "Retrieves the highlight/cover image for a SmugMug album. Returns detailed information about the album's cover image including dimensions, URLs, and metadata. Use this when you need to get the featured image for an album." }, { "slug": "SMUGMUG_GET_ALBUM_IMAGE", "name": "Get Album Image", "description": "Get an image within a specific album context as an AlbumImage relationship object. Returns detailed information about the image including metadata, dimensions, URLs, and relationships. Use this when you need to retrieve a specific image from an album with full album context." }, { "slug": "SMUGMUG_GET_ALBUM_IMAGES", "name": "Get Album Images", "description": "Tool to retrieve all images in a SmugMug album as AlbumImage relationship objects. Use this action when you need to list or access images within a specific album. An AlbumImage represents the relationship between an album and an image, which is useful because the same image may appear in multiple albums. The response includes image metadata, URIs for different sizes, and pagination support for large albums. Returns AlbumImage objects with fields like ImageKey, Title, Caption, WebUri, ArchivedUri, and nested Uris for accessing related resources (ImageSizes, LargestImage, etc.)." }, { "slug": "SMUGMUG_GET_FOLDER_ALBUMS", "name": "Get Folder Albums", "description": "Tool to retrieve albums from a specific folder in a SmugMug user's account by nickname and folder path. Use when you need to list albums in a folder using the user's nickname and folder path rather than NodeID. This is particularly useful when you know the folder structure but don't have the NodeID." }, { "slug": "SMUGMUG_GET_FOLDER_BY_USER_PATH", "name": "Get Folder by User and Path", "description": "Tool to retrieve folder details by user nickname and folder path. Use when you need to access a specific folder within a user's SmugMug account using the hierarchical path structure. Note: For New SmugMug, use the Node endpoint (SMUGMUG_GET_NODE_DETAILS) instead." }, { "slug": "SMUGMUG_GET_FOLDER_DETAILS", "name": "Get Folder Details", "description": "Retrieves details of a specific folder in SmugMug using its Node ID. Returns folder metadata including name, description, URL path, creation and modification dates, node ID, and optionally the URI of the album set as the highlight image for the folder. Note: This action only works with Folder-type nodes. If a non-folder node ID (e.g., Album) is provided, an error will be raised. Use SMUGMUG_GET_NODE_DETAILS for general node information." }, { "slug": "SMUGMUG_GET_FOLDER_SUBFOLDERS", "name": "Get Folder Subfolders", "description": "Retrieves all subfolders within a specified folder in a SmugMug user's account. Use this action to navigate the folder hierarchy by fetching direct child folders of a given parent folder. Specify the user's nickname and the folder path (use empty string or omit for root-level folders). Returns folder metadata including names, URLs, security settings, and IDs." }, { "slug": "SMUGMUG_GET_IMAGE", "name": "Get Image", "description": "Tool to retrieve details for a specific image (photo or video) by its image key. Returns comprehensive image metadata including dimensions, upload dates, geolocation, and links to related resources like sizes, metadata, and comments. Use when you need detailed information about a specific photo or video in SmugMug." }, { "slug": "SMUGMUG_GET_IMAGE_METADATA", "name": "Get Image Metadata", "description": "Tool to retrieve additional metadata from an image file including EXIF data, camera settings, GPS location, and other embedded information. Use when you need detailed technical information about an image, such as camera make/model, exposure settings, GPS coordinates, or timestamps." }, { "slug": "SMUGMUG_GET_IMAGE_SIZE_DETAILS", "name": "Get Image Size Details", "description": "Retrieve raw media URLs and dimensions for all available sizes of an image. Returns detailed information including direct download URLs, dimensions, and file sizes for each variant. Use this when you need to download photos or videos with specific size requirements." }, { "slug": "SMUGMUG_GET_IMAGE_SIZES", "name": "Get Image Sizes", "description": "Retrieves available image sizes and URLs for a SmugMug image by its unique image key. Use this to get download URLs for different resolutions (tiny, thumb, small, medium, large, xlarge, original, etc.)." }, { "slug": "SMUGMUG_GET_NODE_HIGHLIGHT_IMAGE", "name": "Get Node Highlight Image", "description": "Tool to get the highlight/cover image for a node (folder, album, or page). Use when you need to retrieve the representative image set for a SmugMug node." }, { "slug": "SMUGMUG_GET_NODE_PARENT", "name": "Get Node Parent", "description": "Tool to retrieve the parent node of a specified SmugMug node. Use when navigating up the folder hierarchy or determining a node's location within the organizational structure." }, { "slug": "SMUGMUG_GET_NODE_PARENTS", "name": "Get Node Parents", "description": "Tool to retrieve a node and all its ancestor nodes (breadcrumb trail). Use when you need to understand the full hierarchy path from a node to the root." }, { "slug": "SMUGMUG_GET_USER", "name": "Get User", "description": "Tool to get a SmugMug user account by their nickname. Returns user details including display name, view pass hint, and links to related resources like albums, profile, and images. Use when you need to fetch basic information about a SmugMug user." }, { "slug": "SMUGMUG_GET_USER_BIO_IMAGE", "name": "Get User Bio Image", "description": "Tool to retrieve the bio image for a SmugMug user by their nickname (username). Use when you need to get information about a user's bio/profile image including image metadata, dimensions, URLs, and related resource URIs." }, { "slug": "SMUGMUG_GET_USER_FEATURED_ALBUMS", "name": "Get User Featured Albums", "description": "Retrieves the featured albums for a SmugMug user by their nickname. Use this when you need to see which albums a user has highlighted as featured content on their profile." }, { "slug": "SMUGMUG_GET_USER_FEATURES", "name": "Get User Features", "description": "Tool to retrieve a list of features available to a SmugMug user based on their subscription plan. Use when you need to check what capabilities or features a specific user has access to on SmugMug." }, { "slug": "SMUGMUG_GET_USER_PROFILE", "name": "Get User Profile", "description": "Retrieves the public profile information for a SmugMug user by their nickname (username). Returns profile details including name, bio, contact email, and social media links. Use this to get information about a SmugMug photographer or user." }, { "slug": "SMUGMUG_GET_USER_ROOT_NODE", "name": "Get User Root Node", "description": "Tool to retrieve the root node of a user's folder tree on SmugMug. Use when you need to navigate a user's gallery structure or find the starting point of their folder hierarchy." }, { "slug": "SMUGMUG_LIST_CHILD_NODES", "name": "List Child Nodes", "description": "Lists all child nodes (folders and albums) under a specified parent node in SmugMug. Use this action to navigate SmugMug's folder/album hierarchy. Start from a user's root node (obtained from user profile) and traverse down through folders to find albums. Returns child nodes with their NodeID, Type, Name, and WebUri. Use the NodeID from results to fetch further nested children or to get detailed node information." }, { "slug": "SMUGMUG_SEARCH_USER_CONTENT", "name": "Search User Content", "description": "Search for images across a user's SmugMug content. This tool searches through a user's images by querying titles, captions, keywords, and filenames. Returns a list of matching images with details like title, caption, URLs, and related resources. Use this when you need to find specific images within a user's SmugMug account. Results are returned in paginated format with up to 100 images per page. The default ordering is by popularity, but can be changed to newest or oldest." }, { "slug": "SMUGMUG_UNLOCK_ALBUM", "name": "Unlock Album", "description": "Tool to unlock a password-protected SmugMug album. Use when you need to access content in a locked album. Only available for albums that are currently password-protected." }, { "slug": "SMUGMUG_UNLOCK_USER", "name": "Unlock User Site", "description": "Tool to unlock a user's password-protected SmugMug site. Use when you need to access a locked user's site content. This action is only available if the user's site is currently locked with a password." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "smugmug_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key provided by SmugMug upon application approval.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "atlassian", "name": "Atlassian", "logo": "https://logos.composio.dev/api/atlassian", "description": "Atlassian provides developer tools and collaboration software, including Jira and Confluence, to empower teams with comprehensive issue tracking, project planning, documentation, and agile workflows capabilities", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth 2.0 for Atlassian", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read:account,read:me,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "productboard", "name": "Productboard", "logo": "https://logos.composio.dev/api/productboard", "description": "Productboard is a product management platform that gathers feedback, prioritizes features, and aligns roadmaps based on customer insights and strategic goals", "category": "product management", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 99, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRODUCTBOARD_ADD_NOTE_FOLLOWERS", "name": "Add Note Followers", "description": "Tool to add multiple followers to a Productboard note. Use when you need to bulk-add existing users as followers to a specific note by their email addresses." }, { "slug": "PRODUCTBOARD_ADD_NOTE_TAG", "name": "Add Note Tag", "description": "Adds a tag to a Productboard note for categorization and organization. Use this action to apply tags to notes based on their content, priority, source, or any other classification criteria. Tags help organize and filter notes in Productboard. If the specified tag doesn't exist in the workspace, it will be automatically created. Tags are case-sensitive. Common use cases: - Categorize notes by priority (e.g., \"Urgent\", \"High Priority\") - Label feature requests vs. bugs (e.g., \"feature-request\", \"bug\") - Mark notes for review stages (e.g., \"needs review\", \"approved\") - Associate notes with time periods (e.g., \"Q1-2026\", \"Sprint-5\")" }, { "slug": "PRODUCTBOARD_CREATE_COMPANY", "name": "Create Company in Productboard", "description": "Tool to create a new company in Productboard. Use when you need to add a company record after gathering its details and optional metadata." }, { "slug": "PRODUCTBOARD_CREATE_COMPANY_FIELD", "name": "Create Company Custom Field", "description": "Tool to create a new custom field for companies. Use when you need to define custom company attributes in Productboard after confirming the field schema." }, { "slug": "PRODUCTBOARD_CREATE_COMPONENT", "name": "Create Component", "description": "Tool to create a new (sub)component under a product or component. Use after determining the parent component ID." }, { "slug": "PRODUCTBOARD_CREATE_ENTITIES_RELATIONSHIPS_V2", "name": "Create Entity Relationship", "description": "Tool to create a relationship between two entities in Productboard. Use when you need to establish a parent, child, link, or dependency relationship between entities." }, { "slug": "PRODUCTBOARD_CREATE_ENTITIES_V2", "name": "Create Entity (v2)", "description": "Tool to create a new entity in Productboard using the v2 API. Use when you need to create products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups." }, { "slug": "PRODUCTBOARD_CREATE_FEATURE", "name": "Create Feature", "description": "Tool to create a new feature or subfeature in Productboard. Use when you need to add a feature to a product or component, or create a subfeature under an existing feature." }, { "slug": "PRODUCTBOARD_CREATE_FEATURE_OBJECTIVE_LINK", "name": "Create Feature-Objective Link", "description": "Tool to create a link between a feature and an objective (OKR). Use when associating a feature with a specific objective to track alignment." }, { "slug": "PRODUCTBOARD_CREATE_NOTE_LINK", "name": "Create Note Link", "description": "Tool to create a link between a note and an entity. Use when associating a note with a productboard entity." }, { "slug": "PRODUCTBOARD_CREATE_NOTES_V2", "name": "Create Note (v2)", "description": "Tool to create a new note in Productboard using the v2 API. Use when you need to create simple text notes or conversation-style notes with optional relationships to customers, companies, or external links." }, { "slug": "PRODUCTBOARD_CREATE_OBJECTIVES", "name": "Create Objective", "description": "Tool to create a new objective in Productboard. Use when you need to create a strategic objective with optional details like owner, parent, status, and timeframe." }, { "slug": "PRODUCTBOARD_CREATE_OBJECTIVES_LINKS_FEATURES", "name": "Create Objective-Feature Link", "description": "Tool to create a new link between an objective and a feature. Use when associating a feature with an objective (OKR)." }, { "slug": "PRODUCTBOARD_CREATE_RELEASE", "name": "Create Release", "description": "Tool to create a new release in Productboard. Use when you need to create a release with a name, description, and assigned release group." }, { "slug": "PRODUCTBOARD_CREATE_USERS", "name": "Create User", "description": "Tool to create a new user in Productboard. Use when you need to add a user with email, name, and/or external identifier." }, { "slug": "PRODUCTBOARD_CREATE_WEBHOOK", "name": "Create Webhook Subscription", "description": "Tool to create a new webhook subscription. Use when you need to register a public endpoint to receive webhooks from Productboard." }, { "slug": "PRODUCTBOARD_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a specific company. Use when you have confirmed the company ID and need to remove it from Productboard." }, { "slug": "PRODUCTBOARD_DELETE_COMPANY_FIELD", "name": "Delete Company Field", "description": "Tool to delete a specific company custom field. Use after confirming the field ID and ensuring no dependencies remain." }, { "slug": "PRODUCTBOARD_DELETE_CUSTOM_FIELD_VALUE", "name": "Delete Custom Field Value", "description": "Tool to delete a custom field value from a hierarchy entity in Productboard. Use when you need to remove a custom field value from a product, component, or feature after confirming the field and entity IDs." }, { "slug": "PRODUCTBOARD_DELETE_ENTITIES_RELATIONSHIPS_V2", "name": "Delete Entity Relationship", "description": "Tool to delete a relationship between two entities. Use when you need to remove a specific relationship type between entities in Productboard." }, { "slug": "PRODUCTBOARD_DELETE_ENTITIES_V2", "name": "Delete Entity V2", "description": "Tool to delete a PM entity using the v2 API. Use when you need to permanently remove an entity from Productboard. Returns 204 on success." }, { "slug": "PRODUCTBOARD_DELETE_FEATURE", "name": "Delete Feature", "description": "Tool to delete a specific feature. Use when you have confirmed the feature ID and deleted its subfeatures before removal." }, { "slug": "PRODUCTBOARD_DELETE_FEATURE_OBJECTIVE_LINK", "name": "Delete Feature Objective Link", "description": "Tool to delete a link between a feature and an objective. Use when you need to remove the association between a specific feature and objective." }, { "slug": "PRODUCTBOARD_DELETE_INITIATIVES", "name": "Delete Initiative", "description": "Tool to delete a specific initiative. Use when you have confirmed the initiative ID and need to permanently remove it from Productboard." }, { "slug": "PRODUCTBOARD_DELETE_KEY_RESULTS", "name": "Delete Key Result", "description": "Tool to delete a specific key result from Productboard. Use when you need to remove a key result that is no longer relevant or was created in error." }, { "slug": "PRODUCTBOARD_DELETE_NOTES_RELATIONSHIPS_V2", "name": "Delete Note Relationship", "description": "Tool to delete a note relationship. Use when you need to remove a specific relationship between a note and another entity (customer or link) in Productboard." }, { "slug": "PRODUCTBOARD_DELETE_NOTES_V2", "name": "Delete Note V2", "description": "Tool to delete a note using the v2 API. Permanently removes the note and all its associated data. Returns 204 on success." }, { "slug": "PRODUCTBOARD_DELETE_NOTE_TAG", "name": "Delete Note Tag", "description": "Tool to remove a tag from a Productboard note. Use when you need to detach a specific tag from a note after tagging." }, { "slug": "PRODUCTBOARD_DELETE_OBJECTIVES", "name": "Delete Objective", "description": "Tool to delete a specific objective from Productboard. Use when you have confirmed the objective ID and need to permanently remove it." }, { "slug": "PRODUCTBOARD_DELETE_OBJECTIVES_LINKS_FEATURES", "name": "Delete Objective-Feature Link", "description": "Tool to delete a link between an objective and a feature. Use when you need to remove the association between a specific objective and feature." }, { "slug": "PRODUCTBOARD_DELETE_RELEASE", "name": "Delete Release", "description": "Tool to delete a specific release. Use when you have confirmed the release ID and need to remove it from Productboard." }, { "slug": "PRODUCTBOARD_DELETE_USER", "name": "Delete User", "description": "Tool to delete a specific user. Use when you have confirmed the user ID and need to remove it from Productboard." }, { "slug": "PRODUCTBOARD_DELETE_WEBHOOK", "name": "Delete Webhook Subscription", "description": "Tool to delete a webhook subscription. Use when you need to remove a webhook subscription from Productboard." }, { "slug": "PRODUCTBOARD_GET_COMPONENT", "name": "Get Component", "description": "Tool to retrieve details of a specific component. Use when you have the component ID to fetch its full details including description, parent hierarchy, owner, and timestamps." }, { "slug": "PRODUCTBOARD_GET_CUSTOM_FIELD_VALUE", "name": "Get Custom Field Value", "description": "Tool to retrieve a custom field's value for a specific hierarchy entity. Use when you need to get the current value of a custom field on a product, component, or feature." }, { "slug": "PRODUCTBOARD_GET_ENTITIES_CONFIGURATIONS_V2", "name": "Get Entity Configuration", "description": "Tool to retrieve entity configuration for a specific type. Use when you need to understand the structure, fields, and relationships available for an entity type in Productboard." }, { "slug": "PRODUCTBOARD_GET_ENTITIES_V2", "name": "Get Entity V2", "description": "Tool to retrieve a PM entity using the v2 API. Use when you need to fetch details of a specific entity by its UUID. Returns entity data with optional field filtering." }, { "slug": "PRODUCTBOARD_GET_FEATURE_RELEASE_ASSIGNMENT", "name": "Get Feature Release Assignment", "description": "Tool to retrieve a specific feature release assignment. Use when you need to check if a particular feature is assigned to a specific release. Returns assignment status (true/false) and entity references." }, { "slug": "PRODUCTBOARD_GET_HIERARCHY_ENTITIES_CUSTOM_FIELDS", "name": "Get Hierarchy Entity Custom Field", "description": "Tool to retrieve a specific custom field definition for hierarchy entities. Use when you have a custom field ID to fetch its complete details including type, name, description, and options." }, { "slug": "PRODUCTBOARD_GET_NOTES_CONFIGURATIONS_V2", "name": "Get Notes Configuration V2", "description": "Tool to retrieve note configuration by type (simple, conversation, or opportunity). Use when you need to understand the fields, relationships, and constraints for a specific note type." }, { "slug": "PRODUCTBOARD_GET_NOTES_V2", "name": "Get Note V2", "description": "Tool to retrieve a note using the v2 API. Use when you need to fetch details of a specific note by its UUID." }, { "slug": "PRODUCTBOARD_GET_OBJECTIVE", "name": "Get Objective", "description": "Tool to retrieve details of a specific objective. Use when you have the objective ID to fetch its full details including name, description, status, timeframe, and owner." }, { "slug": "PRODUCTBOARD_GET_RELEASE", "name": "Get Release", "description": "Tool to retrieve details of a specific release by ID. Use when you need complete information about a single release." }, { "slug": "PRODUCTBOARD_GET_RELEASE_GROUP", "name": "Get Release Group", "description": "Tool to retrieve details of a specific release group. Use when you have the release group ID to fetch its full details." }, { "slug": "PRODUCTBOARD_GET_WEBHOOKS", "name": "Get Webhook Subscription", "description": "Tool to retrieve details of a specific webhook subscription. Use when you have the webhook ID to fetch its complete configuration." }, { "slug": "PRODUCTBOARD_LIST_ANALYTICS_MEMBER_ACTIVITIES_V2", "name": "List Analytics Member Activities V2", "description": "Tool to retrieve member activity analytics data from Productboard. Use when you need to analyze member engagement metrics, activity patterns, or usage statistics. Supports date-range filtering and pagination." }, { "slug": "PRODUCTBOARD_LIST_COMPANIES", "name": "List Companies", "description": "Tool to list companies. Use when you need a paginated list of companies with optional filters." }, { "slug": "PRODUCTBOARD_LIST_COMPANY_FIELDS", "name": "List Company Custom Fields", "description": "Lists all custom field definitions for companies in your Productboard workspace. This endpoint returns metadata about company custom fields (field schemas), not the actual values. Use this to discover available company fields before setting or retrieving field values. Returns field ID, name, type, and optional description/settings for each field." }, { "slug": "PRODUCTBOARD_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Lists custom field definitions for hierarchy entities (Products, Components, Features). Returns metadata about custom fields (name, type, description) but not their values. Use this to discover available custom fields before querying their values for specific entities." }, { "slug": "PRODUCTBOARD_LIST_CUSTOM_FIELD_VALUES", "name": "List Custom Field Values", "description": "Lists custom field values for hierarchy entities (products, components, features) in Productboard. Returns only non-empty values. Filter by custom field type or specific field ID. Combine filters to narrow results (e.g., get specific field values for a specific entity). Use links.next for pagination if more results exist." }, { "slug": "PRODUCTBOARD_LIST_ENTITIES_CONFIGURATIONS_V2", "name": "List Entities Configurations V2", "description": "Tool to retrieve configurations for all entity types in Productboard. Use when you need to understand available fields, relationships, and metadata for entity types like features, components, products, etc." }, { "slug": "PRODUCTBOARD_LIST_ENTITIES_RELATIONSHIPS_V2", "name": "List Entity Relationships", "description": "Tool to retrieve relationships for an entity in Productboard. Use when you need to find parent, child, or link relationships between entities." }, { "slug": "PRODUCTBOARD_LIST_ENTITIES_V2", "name": "List Entities V2", "description": "Tool to list entities from Productboard using the v2 API. Use when you need a paginated list of PM entities (products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups) with optional filters." }, { "slug": "PRODUCTBOARD_LIST_FEATURE_INITIATIVES", "name": "List Feature Initiatives", "description": "Tool to list initiatives linked to a given feature. Use when you need to retrieve all initiatives associated with a feature after confirming its ID." }, { "slug": "PRODUCTBOARD_LIST_FEATURE_OBJECTIVES", "name": "List Feature Objectives", "description": "Lists all objectives (OKRs) linked to a top-level feature. Returns objective IDs and hypermedia links. Note: This endpoint only works with top-level features, not subfeatures. Use PRODUCTBOARD_LIST_FEATURES to obtain valid feature IDs first." }, { "slug": "PRODUCTBOARD_LIST_FEATURE_RELEASE_ASSIGNMENTS", "name": "List Feature Release Assignments", "description": "Tool to list feature–release assignments. Use when you need to retrieve assignments for a specific feature or release with optional state or date filters; paginate using links.next." }, { "slug": "PRODUCTBOARD_LIST_FEATURE_STATUSES", "name": "List Feature Statuses", "description": "Tool to list feature statuses. Use when you need to retrieve all feature status records in a paginated form. Follow 'links.next' for additional pages." }, { "slug": "PRODUCTBOARD_LIST_FEEDBACK_FORM_CONFIGURATIONS", "name": "List Feedback Form Configurations", "description": "Tool to list feedback form configurations. Use when you need a paginated list of feedback form configurations." }, { "slug": "PRODUCTBOARD_LIST_INITIATIVES", "name": "List Initiatives", "description": "Tool to list initiatives from Productboard. Use when you need a paginated list of initiatives with optional filters for archived status, owner, and status. Follow 'links.next' URL to retrieve additional pages." }, { "slug": "PRODUCTBOARD_LIST_JIRA_INTEGRATIONS", "name": "List Jira Integrations", "description": "Tool to list Jira integrations. Use when you need to retrieve Productboard's connected Jira integrations with optional pagination." }, { "slug": "PRODUCTBOARD_LIST_KEY_RESULTS", "name": "List Key Results", "description": "List key results from Productboard. Key results are measurable outcomes that track progress toward objectives. Use this action to: - Get all key results in the workspace - Filter key results by parent objective, status, owner, or archived state - Track progress on objectives through their associated key results Returns paginated results with comprehensive details including progress metrics, ownership, and status. Note: If key results are not enabled in the workspace, this returns an empty list gracefully." }, { "slug": "PRODUCTBOARD_LIST_NOTES_CONFIGURATIONS_V2", "name": "List Notes Configurations V2", "description": "Tool to list note configurations from Productboard v2 API. Use when you need to discover available fields, relationships, and validation rules for different note types (simple, conversation, opportunity, feature, initiative)." }, { "slug": "PRODUCTBOARD_LIST_NOTES_LINKS", "name": "List Note Links", "description": "Tool to list links associated with a note. Returns entities (products, components, features, or subfeatures) linked to the specified note." }, { "slug": "PRODUCTBOARD_LIST_NOTES_RELATIONSHIPS_V2", "name": "List Note Relationships V2", "description": "Tool to retrieve relationships associated with a note. Returns entities (users, companies, features, components, products) linked to the specified note via customer or link relationships." }, { "slug": "PRODUCTBOARD_LIST_NOTES_V2", "name": "List Notes V2", "description": "Tool to retrieve a paginated list of notes from Productboard using the v2 API. Use when you need to list notes with advanced filtering by archived/processed status, owner, creator, source, or date ranges. Supports field selection to optimize response size." }, { "slug": "PRODUCTBOARD_LIST_NOTE_TAGS", "name": "List Note Tags", "description": "Tool to retrieve all tags associated with a specific Productboard note. Use when you need to view the current tags applied to a note for filtering, categorization, or analysis purposes." }, { "slug": "PRODUCTBOARD_LIST_OBJECTIVES_LINKS_FEATURES", "name": "List Objective Linked Features", "description": "Lists all features linked to a specific objective. Returns feature IDs and hypermedia links for each linked feature." }, { "slug": "PRODUCTBOARD_LIST_OBJECTIVES_LINKS_INITIATIVES", "name": "List Objective Linked Initiatives", "description": "Tool to list initiatives linked to a specific objective. Use when you need to retrieve all initiatives associated with an objective after confirming its ID." }, { "slug": "PRODUCTBOARD_LIST_PLUGIN_INTEGRATIONS", "name": "List Plugin Integrations", "description": "List all plugin integrations in the Productboard workspace. Plugin integrations allow you to add columns to the Productboard Features board that integrate with third-party systems (e.g., Jira, GitHub). They enable a \"push button\" workflow to send features to external systems. Returns a paginated list of plugin integration objects, each containing id, name, and description. Use the links.next URL in pageUrl parameter to fetch subsequent pages." }, { "slug": "PRODUCTBOARD_LIST_RELEASE_GROUPS", "name": "List Release Groups", "description": "Lists all release groups in the Productboard workspace. Release groups allow organizing multiple sets of releases (e.g., sprints, development cycles, internal releases, or marketing launches). Use this action to discover available release groups, their IDs, names, and whether they are archived. Returns the first 100 release groups. Follow the 'links.next' URL to retrieve additional pages if more than 100 groups exist." }, { "slug": "PRODUCTBOARD_LIST_RELEASES", "name": "List Releases", "description": "Tool to list all releases in Productboard. Use when you need a paginated list of releases; follow links.next for more pages." }, { "slug": "PRODUCTBOARD_LIST_USERS", "name": "List Users", "description": "Retrieves a paginated list of all users in the Productboard workspace. Returns user details including id, name, email, externalId, and companyId. The API paginates results (up to 100 users per page). Use the 'next' URL from the response links to fetch subsequent pages if available." }, { "slug": "PRODUCTBOARD_LIST_WEBHOOKS", "name": "List Webhook Subscriptions", "description": "Tool to list all webhook subscriptions. Use when you need to retrieve all registered webhook endpoints and their configurations." }, { "slug": "PRODUCTBOARD_REMOVE_NOTE_FOLLOWER", "name": "Remove Note Follower", "description": "Tool to remove a follower from a Productboard note. Use after confirming the note ID and follower email are correct." }, { "slug": "PRODUCTBOARD_RETRIEVE_COMPANY", "name": "Retrieve Company", "description": "Tool to retrieve details of a specific company. Use when you have the company ID to fetch its full details." }, { "slug": "PRODUCTBOARD_RETRIEVE_COMPANY_FIELD", "name": "Retrieve Company Field", "description": "Tool to retrieve details of a specific company custom field. Use when you have the custom field ID and need its metadata." }, { "slug": "PRODUCTBOARD_RETRIEVE_COMPANY_FIELD_VALUE", "name": "Retrieve Company Field Value", "description": "Tool to retrieve a specific company custom field value. Use when you need the current value of a custom field for a given company by its IDs." }, { "slug": "PRODUCTBOARD_RETRIEVE_FEATURE", "name": "Retrieve Feature", "description": "Tool to retrieve details of a specific feature. Use when you need complete info on one feature." }, { "slug": "PRODUCTBOARD_RETRIEVE_PRODUCT", "name": "Retrieve Product", "description": "Tool to retrieve details of a specific product. Use when you have the product ID to fetch its full details." }, { "slug": "PRODUCTBOARD_RETRIEVE_USER", "name": "Retrieve User", "description": "Tool to retrieve details of a specific user. Use when you have the user ID to fetch its full details." }, { "slug": "PRODUCTBOARD_SCIM_LIST_USERS", "name": "List SCIM Users", "description": "Tool to list users via SCIM. Use when checking for existing users before creation." }, { "slug": "PRODUCTBOARD_SEARCH_ENTITIES_V2", "name": "Search Entities V2", "description": "Tool to search for entities across Productboard using the v2 API. Use when you need to find entities by various criteria like IDs, name, type, status, owner, parent, or archived status. Supports pagination for large result sets." }, { "slug": "PRODUCTBOARD_SET_COMPANY_FIELD_VALUE", "name": "Set Company Field Value", "description": "Tool to set or replace a specific company custom field's value. Use when you need to update a company's custom field after confirming the field ID and ensuring the new value matches the field type." }, { "slug": "PRODUCTBOARD_SET_CUSTOM_FIELD_VALUE", "name": "Set Custom Field Value", "description": "Tool to set a custom field value on a hierarchy entity. Use when you need to update a product, component, or feature field with a specific value after confirming the field and entity IDs." }, { "slug": "PRODUCTBOARD_SET_ENTITIES_RELATIONSHIPS_PARENT_V2", "name": "Set Entity Parent Relationship", "description": "Tool to set parent relationship on an entity. Use when establishing hierarchical relationships between entities in Productboard." }, { "slug": "PRODUCTBOARD_SET_FEATURE_RELEASE_ASSIGNMENT", "name": "Set Feature Release Assignment", "description": "Tool to update a feature release assignment. Use when you need to assign a feature to a release (set assigned=true) or remove it from a release (set assigned=false)." }, { "slug": "PRODUCTBOARD_SET_FEATURES", "name": "Set Features", "description": "Tool to update a feature by ID. Use when you need to modify feature properties like name, description, status, parent, timeframe, or archived flag." }, { "slug": "PRODUCTBOARD_SET_NOTES_RELATIONSHIPS_CUSTOMER_V2", "name": "Set Note Customer Relationship", "description": "Tool to set a customer relationship on a note in Productboard. Use when you need to associate a note with a user or company customer entity." }, { "slug": "PRODUCTBOARD_SET_PRODUCT", "name": "Set Product", "description": "Tool to update a product using PUT method in Productboard. Use when you need to modify a product's name, description, or owner with full replacement semantics." }, { "slug": "PRODUCTBOARD_UPDATE_COMPANIES_CUSTOM_FIELDS", "name": "Update Company Custom Field", "description": "Tool to update a company custom field name. Use when you need to rename an existing company custom field in Productboard." }, { "slug": "PRODUCTBOARD_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company in Productboard. Use when you need to modify company details such as name, description, domain, or source metadata." }, { "slug": "PRODUCTBOARD_UPDATE_COMPONENT", "name": "Update Component", "description": "Tool to update an existing component. Use when you need to modify component name, description, owner, or parent entity." }, { "slug": "PRODUCTBOARD_UPDATE_ENTITIES_V2", "name": "Update Entity V2", "description": "Tool to update a PM entity using the v2 API. Use when you need to modify entity fields or apply patch operations to products, components, features, subfeatures, initiatives, objectives, key results, releases, or release groups." }, { "slug": "PRODUCTBOARD_UPDATE_FEATURES", "name": "Update Features", "description": "Tool to update a feature in Productboard. Use when modifying feature details like name, description, status, owner, parent, or timeframe." }, { "slug": "PRODUCTBOARD_UPDATE_NOTES_V2", "name": "Update Note V2", "description": "Tool to update a note using the v2 API. Supports two update methods: direct field updates via 'fields' parameter or granular patch operations via 'patch' parameter. Use 'fields' for simple updates (e.g., changing name), and 'patch' for array operations like adding/removing tags." }, { "slug": "PRODUCTBOARD_UPDATE_OBJECTIVES", "name": "Update Objective", "description": "Tool to update an existing objective in Productboard. Use when you need to modify objective properties such as name, description, owner, status, timeframe, or archive state." }, { "slug": "PRODUCTBOARD_UPDATE_PRODUCT", "name": "Update Product", "description": "Tool to update a product in Productboard. Use when you need to modify a product's name, description, or owner." }, { "slug": "PRODUCTBOARD_UPDATE_RELEASE", "name": "Update Release", "description": "Tool to update an existing release in Productboard. Use when you need to modify release properties such as name, description, state, archived status, release group, or timeframe." }, { "slug": "PRODUCTBOARD_UPDATE_USER", "name": "Update User", "description": "Tool to update a user's information. Use when you need to modify a user's name, email, or external ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "productboard_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "product_hierarchy_data:read,product_hierarchy_data:create,product_hierarchy_data:manage,custom_fields:read,releases:read,releases:create,releases:manage,notes:read,notes:create,users:read,users:manage,users_pii:read,members_pii:read,plugin_integrations:manage,objectives:read,objectives:create,objectives:manage,key_results:read,key_results:create,key_results:manage,initiatives:read,initiatives:create,initiatives:manage,feedback_form_configurations:read,feedback_forms:create" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "productboard_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Productboard access token. Create it under Settings → Integrations → Public API → Access token (admin only, Pro plan+) — it's shown only once, so copy it right away.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "blackbaud", "name": "Blackbaud", "logo": "https://logos.composio.dev/api/blackbaud", "description": "Blackbaud offers cloud-based software for nonprofits, schools, and healthcare institutions, supporting fundraising, financial management, and donor engagement in mission-driven organizations", "category": "fundraising", "authSchemes": [ "OAUTH2" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BLACKBAUD_ADD_GIFTS_TO_BATCH", "name": "Add Gifts To Batch", "description": "Add one or more gifts (donations) to an existing gift batch in Blackbaud Raiser's Edge NXT. Use this tool when you need to: - Append new gifts to an open batch for later processing - Batch multiple donations together before committing them - Add gifts with detailed information (payments, splits, custom fields) Prerequisites: - The batch must already exist (use a create batch action first if needed) - The batch must be in \"open\" status (not committed) - You need the batch_id (system record ID) and constituent_id (donor ID) for each gift Note: This action returns response details for all HTTP status codes (including errors). Check the status_code field in the response to determine success (200) vs errors (4xx/5xx)." }, { "slug": "BLACKBAUD_GET_GIFT_BY_ID", "name": "Get Gift By ID", "description": "Retrieves comprehensive gift details from Blackbaud Raiser's Edge NXT by gift ID. Use this tool when you need to fetch detailed information about a specific gift including: - Gift amount and currency - Donor/constituent information - Gift type and status - Important dates (gift date, post date) - Associated metadata and custom fields The gift_id is the unique system record ID (integer) that identifies the gift in Raiser's Edge NXT." }, { "slug": "BLACKBAUD_GET_MEMBERSHIP_DETAILS", "name": "Get Membership Details", "description": "Retrieves comprehensive membership details from Blackbaud Raiser's Edge NXT by member junction ID. Fetches detailed information about a specific membership including program name, category/subcategory, membership status and standing (Active, Lapsed), start/expiration dates, dues information, and associated constituent ID. Requires a valid member_junction_id (GUID) that uniquely identifies a membership junction record linking a constituent to a membership program in Raiser's Edge NXT. Returns error information in the response object for graceful error handling in agent workflows." }, { "slug": "BLACKBAUD_GET_PAYMENT_TRANSACTION", "name": "Get Payment Transaction", "description": "Retrieves payment transaction details from Blackbaud SKY Payments API. Use this to check transaction status, amounts, payment methods, and error details. Transaction IDs come from payment processing endpoints, checkout callbacks, batch operations, or webhook notifications. Requires: Payments API subscription key (Bb-Api-Subscription-Key) and OAuth Bearer token. This retrieves existing transactions; it does not process new payments." }, { "slug": "BLACKBAUD_ONE_ROSTER_O_AUTH2_BASE_API", "name": "OneRoster OAuth2 Base API", "description": "Tool to interact with Blackbaud OneRoster OAuth2 base endpoints. Use to fetch OpenID configuration (/.well-known/openid-configuration), JWKS key set (publickeys), or obtain an access token via the client credentials grant. Ensure client credentials are configured before using the token operation." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "blackbaud_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "full" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "venly", "name": "Venly", "logo": "https://logos.composio.dev/api/venly", "description": "Venly provides blockchain tools, wallets, and NFT services, enabling businesses to integrate decentralized technology into apps without complex blockchain development", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "venly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Venly API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "qualaroo", "name": "Qualaroo", "logo": "https://logos.composio.dev/api/qualaroo", "description": "Qualaroo offers on-site surveys and user feedback tools, helping businesses understand visitor behavior, gather insights, and optimize customer experiences", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "qualaroo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Qualaroo API key. You can find it in your Qualaroo account settings under Integrations > API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "webflow", "name": "Webflow", "logo": "https://logos.composio.dev/api/webflow", "description": "Webflow is a no-code website design and hosting platform, letting users build responsive sites, launch online stores, and maintain content without coding", "category": "website builders", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEBFLOW_CREATE_ASSET", "name": "Create Asset Metadata", "description": "Creates asset metadata in Webflow and returns pre-signed S3 upload credentials. This action prepares an asset for upload by registering it in Webflow and generating S3 upload details. Use this when you need to create an asset record and obtain upload credentials without performing the actual file upload. After calling this action, use the returned uploadUrl and uploadDetails to upload the file binary to S3 separately. This action requires the 'assets:write' authentication scope." }, { "slug": "WEBFLOW_CREATE_ASSET_FOLDER", "name": "Create Asset Folder", "description": "Tool to create a new Asset Folder within a Webflow site. Use when you need to organize assets by creating folders. Requires assets:write scope." }, { "slug": "WEBFLOW_CREATE_BULK_COLLECTION_ITEMS", "name": "Bulk Create Collection Items", "description": "Tool to create one or multiple items in a Webflow CMS Collection across multiple locales. Use when you need to create up to 100 collection items in a single request. If cmsLocaleIds is not included for an item, it will only be created in the primary locale. Requires CMS:write scope." }, { "slug": "WEBFLOW_CREATE_COLLECTION", "name": "Create Webflow Collection", "description": "Tool to create a new collection in a Webflow site. Each collection includes required 'name' and 'slug' fields which are generated automatically. Use this when you need to create a new CMS collection with custom fields. Required scope: cms:write" }, { "slug": "WEBFLOW_CREATE_COLLECTION_FIELD", "name": "Create Collection Field", "description": "Tool to create a custom field in a Webflow collection. Use when you need to add a new field to an existing collection. Field validation is currently not available through the API. Bulk creation of fields is not supported - fields must be created one at a time." }, { "slug": "WEBFLOW_CREATE_COLLECTION_ITEM", "name": "Create Webflow Collection Item", "description": "This tool creates a new item in a specified Webflow collection. It requires the collection_id and field_data parameters (including required name and slug) and optionally accepts an is_draft flag. Authentication is assumed to be provided, and the collection_id can be obtained by using the WEBFLOW_LIST_COLLECTIONS tool. IMPORTANT: The field_data keys must use the exact field 'slug' values from the collection schema, not display names. Use WEBFLOW_GET_COLLECTION first to retrieve the collection schema and identify the correct field slugs to use." }, { "slug": "WEBFLOW_CREATE_LIVE_COLLECTION_ITEM", "name": "Create Live Webflow Collection Item", "description": "Tool to create a collection item that will be immediately published to the live site. Use when you need items to appear on the live site instantly without staging. This bypasses the staged item workflow and creates items directly in the live database." }, { "slug": "WEBFLOW_CREATE_WEBHOOK", "name": "Create Webflow Webhook", "description": "Creates a new webhook for a Webflow site to receive notifications when specific events occur. Use this action when you need to register a webhook endpoint that will be called automatically when events like form submissions, page creations, order updates, or collection item changes happen. The filter parameter is only applicable for 'form_submission' trigger types to target specific forms. Requires 'sites:read' scope." }, { "slug": "WEBFLOW_DELETE_ASSET", "name": "Delete Webflow Asset", "description": "Tool to delete an Asset from Webflow. Use when you need to permanently remove an asset from a site. Requires assets:write scope." }, { "slug": "WEBFLOW_DELETE_COLLECTION", "name": "Delete Webflow Collection", "description": "Tool to delete a collection from Webflow using its unique identifier. Use when you need to permanently remove a collection. This operation requires the 'cms:write' scope and cannot be undone." }, { "slug": "WEBFLOW_DELETE_COLLECTION_FIELD", "name": "Delete Collection Field", "description": "Tool to delete a custom field from a Webflow collection. Use when you need to permanently remove a field from a collection schema. This endpoint does not currently support bulk deletion and requires the 'cms:write' authentication scope." }, { "slug": "WEBFLOW_DELETE_COLLECTION_ITEM", "name": "Delete Webflow Collection Item", "description": "This tool allows you to delete a specific item from a collection in Webflow. It permanently removes the item from the specified collection and complements existing collection management tools. The tool requires a collection_id to identify the collection and an item_id to identify the item, with an optional cms_locale_id parameter for handling multi-language content." }, { "slug": "WEBFLOW_DELETE_COLLECTION_ITEMS", "name": "Delete Multiple Collection Items", "description": "Tool to delete multiple items from a Webflow collection in a single request. Use when you need to remove multiple collection items efficiently. Items are deleted only in the primary locale unless cmsLocaleIds are specified. Requires CMS:write scope." }, { "slug": "WEBFLOW_DELETE_WEBHOOK", "name": "Delete Webflow Webhook", "description": "Tool to remove a Webhook from Webflow. Use when you need to delete an existing webhook by its ID. Requires 'sites:read' scope." }, { "slug": "WEBFLOW_FULFILL_ORDER", "name": "Fulfill Order", "description": "This tool allows you to mark an order as fulfilled in Webflow's e-commerce system. It's essential for managing order fulfillment in Webflow stores." }, { "slug": "WEBFLOW_GET_ASSET", "name": "Get Asset Details", "description": "Retrieves detailed information about a specific asset by its ID from a Webflow site. Returns asset metadata including content type, size, URLs, variants, and other properties. Use this when you need to access details about an uploaded asset. This tool requires the 'assets:read' authentication scope." }, { "slug": "WEBFLOW_GET_ASSET_FOLDER", "name": "Get Asset Folder Details", "description": "Tool to retrieve details about a specific Asset Folder in Webflow. Use when you need information about a folder's name, parent folder, assets it contains, and metadata like creation/update dates. Requires assets:read scope." }, { "slug": "WEBFLOW_GET_COLLECTION", "name": "Get Collection Details", "description": "Retrieves a specific collection by its ID from a Webflow site. This endpoint returns detailed information about the collection, including its name, slug, and schema. It requires a valid collection_id as a parameter and complements the WEBFLOW_LIST_COLLECTIONS tool for accessing specific collection details. This tool requires the 'cms:read' authentication scope." }, { "slug": "WEBFLOW_GET_COLLECTION_ITEM", "name": "Get Collection Item", "description": "This tool retrieves a specific item from a Webflow collection. It allows users to fetch detailed information about a single collection item using its unique identifier. The tool is used to get an item's details such as its id, timestamps (lastPublished, lastUpdated, createdOn), archive/draft status, fieldData, and cmsLocaleId. This tool requires appropriate 'cms:read' authentication scope." }, { "slug": "WEBFLOW_GET_COMPONENT_PROPERTIES", "name": "Get Component Properties", "description": "Tool to get the default property values of a component definition. Use when you need to retrieve text content properties (plain text or rich text) for a specific component. If you do not include a localeId in your request, the response will return any properties that can be localized from the Primary locale. Required scope: components:read" }, { "slug": "WEBFLOW_GET_CUSTOM_DOMAINS", "name": "Get Custom Domains", "description": "Tool to retrieve all custom domains associated with a specific Webflow site. Use when you need to list the custom domain URLs configured for a site." }, { "slug": "WEBFLOW_GET_ITEM_INVENTORY", "name": "Get Item Inventory", "description": "This tool retrieves the current inventory levels for a specific SKU item in a Webflow e-commerce site. It provides information about the item's inventory quantity and type (finite or infinite) and complements the WEBFLOW_UPDATE_ITEM_INVENTORY action by allowing users to check inventory levels before making any updates. Requirements: - E-commerce must be enabled on the Webflow site - The collection_id must be a SKU collection ID (not a regular CMS collection) - The item_id must be a valid SKU item ID - Requires the 'ecommerce:read' authentication scope" }, { "slug": "WEBFLOW_GET_LIVE_COLLECTION_ITEM", "name": "Get Live Collection Item", "description": "Retrieves details of a selected Collection live Item from Webflow. Use this when you need to access the published version of a collection item. For serving data to applications in real-time, the CDN-backed endpoint at api-cdn.webflow.com is recommended for better performance. This tool requires the 'cms:read' authentication scope." }, { "slug": "WEBFLOW_GET_ORDER", "name": "Get Order Details", "description": "This tool retrieves detailed information about a specific order in Webflow. It allows users to fetch comprehensive order details including customer information, items purchased, payment status, and shipping details. The response includes order status, customer details, billing and shipping information, items purchased, payment details, order total, timestamps, fulfillment status, and additional comments or tracking information." }, { "slug": "WEBFLOW_GET_PAGE", "name": "Get Page Metadata", "description": "Tool to retrieve metadata for a single Webflow page by page_id. Use when you need detailed information about a specific page including title, slug, SEO/OpenGraph settings, draft/published state, localization, and branching details. Requires pages:read scope." }, { "slug": "WEBFLOW_GET_PAGE_DOM", "name": "Get Page DOM Content", "description": "Tool to retrieve the DOM/content node structure for a Webflow static page. Use when you need to inspect page elements, locate text content, or identify components for localization or text replacement. Returns static text and image nodes but not the complete DOM structure. Only works with static pages, not CMS template pages." }, { "slug": "WEBFLOW_GET_SITE_INFO", "name": "Get Webflow Site Information", "description": "This tool retrieves detailed information about a specific Webflow site. It includes site id, workspaceId, creation and update dates, display names, and other settings like previewUrl, timeZone, customDomains, and locale settings. It requires a valid 'site_id' and appropriate 'sites:read' authentication scope." }, { "slug": "WEBFLOW_GET_TOKEN_AUTHORIZED_BY", "name": "Get Token Authorized By", "description": "Tool to retrieve information about the user who authorized the access token. Use when you need to identify the authorized user's ID, email, first name, and last name." }, { "slug": "WEBFLOW_GET_WEBHOOK", "name": "Get Webhook Details", "description": "Retrieves detailed information about a specific webhook by its ID from Webflow. Use this action when you need to get the configuration details of an existing webhook, including its trigger type, target URL, creation date, and filter settings. This is useful for verifying webhook configurations or when you have a webhook ID and need its full details." }, { "slug": "WEBFLOW_LIST_ASSET_FOLDERS", "name": "List Asset Folders", "description": "Tool to list all asset folders within a given Webflow site. Use when you need to retrieve folder structure for asset organization or when uploading assets to specific folders." }, { "slug": "WEBFLOW_LIST_ASSETS", "name": "List Webflow Assets", "description": "Tool to retrieve all assets (images, files) uploaded to a Webflow site. Use when you need to list or search for assets within a site. Supports pagination for large asset collections." }, { "slug": "WEBFLOW_LIST_COLLECTION_ITEMS", "name": "List Collection Items", "description": "This tool retrieves a list of items from a specified collection in Webflow. It supports pagination and filtering, and is essential for fetching multiple items from a collection, such as blog posts, products, or any content stored in collections." }, { "slug": "WEBFLOW_LIST_COLLECTIONS", "name": "List Webflow Collections", "description": "This tool retrieves a list of all collections for a given Webflow site. It uses the site_id (obtained from WEBFLOW_LIST_WEBFLOW_SITES) to return a list of collections, each with properties such as id, name, slug, singularName, lastUpdated, and fields. This tool is fundamental for working with Webflow's CMS and requires appropriate 'cms:read' authentication scope." }, { "slug": "WEBFLOW_LIST_COMMENT_THREADS", "name": "List Comment Threads", "description": "Tool to list all comment threads for a Webflow site. Use when you need to retrieve comments on pages for collaboration or review purposes. Note: New comments may take up to 5 minutes to appear." }, { "slug": "WEBFLOW_LIST_CUSTOM_DOMAINS", "name": "List Custom Domains", "description": "Retrieves a list of all custom domains configured for a specific Webflow site. Use this action when you need to view all custom domain URLs associated with a site, including their publication status and unique identifiers. This action returns all domains in a single response and does not support pagination." }, { "slug": "WEBFLOW_LIST_FORMS", "name": "List Forms", "description": "Retrieves a list of forms for a specific Webflow site. This action returns all forms defined on the site, including their fields, response settings, and metadata. Use this action when you need to discover what forms exist on a site before retrieving form submissions or managing form configurations." }, { "slug": "WEBFLOW_LIST_FORM_SUBMISSIONS", "name": "List Form Submissions", "description": "This tool retrieves a list of form submissions for a specific Webflow site. It allows users to fetch form submission data with pagination support and optional filtering by form element ID." }, { "slug": "WEBFLOW_LIST_LIVE_COLLECTION_ITEMS", "name": "List Live Collection Items", "description": "Retrieves a list of live (published) collection items from a Webflow collection. Use this action when you need to fetch the published versions of collection items that are currently visible on the live site. This is different from the draft collection items endpoint - it only returns items that have been published to the live site. For serving data to applications in real-time, consider using the CDN-backed endpoint at api-cdn.webflow.com for better performance." }, { "slug": "WEBFLOW_LIST_ORDERS", "name": "List Webflow Orders", "description": "This tool retrieves a list of all orders for a specified Webflow site using the GET /sites/{site_id}/orders endpoint. It accepts a required site_id parameter and optional parameters such as status (to filter orders by their status), offset (for pagination), and limit (specifies the number of items per request). The response includes order details like order_id, created_on, customer_info, status, total, items, shipping_address, billing_address, and payment_info. This functionality supports ecommerce workflow management and requires the scope ecommerce:read." }, { "slug": "WEBFLOW_LIST_PAGES", "name": "List Pages", "description": "This tool retrieves a list of all pages for a specified Webflow site. It can access both static and CMS-driven pages and provides information such as the page's unique identifier, name, URL slug, creation and update timestamps, and publication status. It is useful for auditing site structure, building site maps, and monitoring page updates." }, { "slug": "WEBFLOW_LIST_WEBFLOW_SITES", "name": "List Webflow Sites", "description": "This tool retrieves a list of all Webflow sites accessible to the authenticated user. It is a fundamental and independent action which only requires an authentication token and returns details for each site including site_id, name, shortName, lastPublished, previewUrl, timezone, and status." }, { "slug": "WEBFLOW_LIST_WEBHOOKS", "name": "List Webflow Webhooks", "description": "Tool to list all App-created Webhooks registered for a given site. Use when you need to retrieve the webhooks configured for a Webflow site. Requires 'sites:read' scope." }, { "slug": "WEBFLOW_PUBLISH_COLLECTION_ITEMS", "name": "Publish Collection Items", "description": "Tool to publish one or multiple staged collection items in Webflow. Use when you need to make draft items live on the published site. Supports both simple publishing (via item_ids) and locale-specific publishing (via items with cms_locale_ids) for multi-locale sites." }, { "slug": "WEBFLOW_PUBLISH_SITE", "name": "Publish Webflow Site", "description": "This tool publishes a Webflow site, making all staged changes live. It uses the POST /v2/sites/{site_id}/publish API endpoint and requires a valid site_id. You can optionally specify custom domain IDs or choose to publish to the default Webflow subdomain. It is essential for deploying updates made to site content, design, or structure. Rate limit: 1 successful publish per minute." }, { "slug": "WEBFLOW_REFUND_ORDER", "name": "Refund Order", "description": "This tool allows you to refund a Webflow e-commerce order. When executed, it reverses the Stripe charge and sets the order's status to 'refunded'. It handles customer returns or order cancellations." }, { "slug": "WEBFLOW_UNFULFILL_ORDER", "name": "Unfulfill Order", "description": "This tool allows you to mark a previously fulfilled order as unfulfilled in Webflow. It is useful for reversing a fulfillment action when an order was mistakenly marked as fulfilled or if there are issues with shipment." }, { "slug": "WEBFLOW_UNPUBLISH_LIVE_COLLECTION_ITEM", "name": "Unpublish Live Collection Item", "description": "Tool to unpublish a live item from the Webflow site and set the isDraft property to true. Use when you need to take a published collection item offline and revert it to draft status. Requires CMS:write scope." }, { "slug": "WEBFLOW_UNPUBLISH_LIVE_COLLECTION_ITEMS", "name": "Unpublish Live Collection Items", "description": "Tool to unpublish up to 100 items from the live site and set isDraft property to true. Use when you need to remove items from live view while keeping them in the collection. Items are unpublished only in the primary locale unless cmsLocaleIds are specified. Requires CMS:write scope." }, { "slug": "WEBFLOW_UPDATE_COLLECTION_FIELD", "name": "Update Collection Field", "description": "Tool to update a custom field in a Webflow collection. Use when you need to modify field properties like display name, help text, or required status. Requires cms:write scope. At least one field property (displayName, helpText, or isRequired) must be provided for the update." }, { "slug": "WEBFLOW_UPDATE_COLLECTION_ITEM", "name": "Update Webflow Collection Item (Deprecated)", "description": "DEPRECATED: Use WEBFLOW_UPDATE_COLLECTION_ITEM_V2 instead. Updates an EXISTING item in a Webflow collection. This action is for modifying items that already exist - it requires a valid item_id (24-character hexadecimal MongoDB ObjectId) of an existing collection item. IMPORTANT: This action cannot create new items. To create new collection items, use WEBFLOW_CREATE_COLLECTION_ITEM instead. Uses the PATCH /collections/{collection_id}/items endpoint to modify fields available in the collection's schema and returns the updated item with metadata." }, { "slug": "WEBFLOW_UPDATE_COLLECTION_ITEMS_BULK", "name": "Update Collection Items in Bulk", "description": "Updates multiple items (up to 100) in a Webflow CMS collection in a single request. Use when you need to update several existing collection items at once with new field values, draft status, or archive status. Each item must include an existing item ID and the fields to update. This action is more efficient than updating items individually when you have multiple items to modify. Requires CMS:write scope." }, { "slug": "WEBFLOW_UPDATE_COLLECTION_ITEM_V2", "name": "Update Collection Item (V2 Single)", "description": "Tool to update a selected Item in a Webflow Collection using the single-item PATCH endpoint. Use when you need to update an existing collection item with new field values, draft status, or archive status. Requires CMS:write scope." }, { "slug": "WEBFLOW_UPDATE_ITEM_INVENTORY", "name": "Update Item Inventory", "description": "This tool allows you to update the inventory levels of a specific SKU item in your Webflow e-commerce site by either setting the inventory quantity directly or updating it incrementally. It updates the inventory status using the PATCH /collections/:collection_id/items/:item_id/inventory endpoint and requires the 'ecommerce:write' scope." }, { "slug": "WEBFLOW_UPDATE_LIVE_COLLECTION_ITEM", "name": "Update Live Webflow Collection Item", "description": "Tool to update a selected live Item in a Webflow Collection. Use when you need to publish updates to a collection item directly to the live site. The updates are immediately published and visible on the production website." }, { "slug": "WEBFLOW_UPDATE_LIVE_COLLECTION_ITEMS", "name": "Update Live Collection Items", "description": "Tool to update single or multiple published items (up to 100) in a Webflow Collection. Use when you need to update items that are already published to the live site. Items will only be updated in the primary locale unless a cmsLocaleId is included in the request." }, { "slug": "WEBFLOW_UPDATE_ORDER", "name": "Update Order", "description": "This tool allows updating specific fields of an existing order in Webflow. It's particularly useful for managing order fulfillment details and adding internal notes." }, { "slug": "WEBFLOW_UPDATE_PAGE", "name": "Update Page", "description": "Updates a Webflow page's settings including title, slug, SEO, and Open Graph metadata using the v2 stable API endpoint. Use this action when you need to modify core page properties such as the display title, URL slug, search engine optimization fields, or social media sharing metadata. All fields are optional - only include the fields you want to update. Requires pages:write OAuth scope." }, { "slug": "WEBFLOW_UPDATE_PAGE_METADATA", "name": "Update Page Metadata", "description": "Tool to update page-level metadata in Webflow including SEO and Open Graph fields. Use when you need to modify a page's title, slug, SEO settings, or Open Graph annotations. Requires pages:write scope." }, { "slug": "WEBFLOW_UPDATE_SITE", "name": "Update Webflow Site", "description": "Tool to update a Webflow site's properties such as name and parent folder. Use when you need to modify site settings. This endpoint requires an Enterprise workspace and the sites:write OAuth scope." }, { "slug": "WEBFLOW_UPLOAD_ASSET", "name": "Upload Asset to Webflow", "description": "This tool allows users to upload assets (files, images, etc.) to a Webflow site. It involves a two-step process: first, generating a pre-signed Amazon S3 upload URL by calling the Webflow API, and second, uploading the file to that S3 URL. IMPORTANT: The file_content parameter must contain actual base64-encoded binary data, NOT a placeholder or variable reference. For example, 'SGVsbG8gV29ybGQh' is valid base64 that decodes to 'Hello World!'. The tool requires parameters such as site_id, file_name, file_content, md5, and optionally asset_folder_id to correctly upload and manage assets for the specified Webflow site." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "webflow_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "assets:read,assets:write,authorized_user:read,cms:read,cms:write,custom_code:read,custom_code:write,forms:read,forms:write,pages:read,pages:write,sites:read,sites:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "webflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "An API token for one Webflow site. Create it in Site settings → Apps & integrations → API access with the scopes you need (CMS, pages, forms) — it is shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amcards", "name": "Amcards", "logo": "https://logos.composio.dev/api/amcards", "description": "AMCards enables users to create personalized greeting cards, automate mailing campaigns, strengthen customer relationships using a convenient online platform for individualized connections", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AMCARDS_GET_API_SCHEMA", "name": "Get API Schema", "description": "Tool to retrieve the entire schema for AMCards API V1. Use when you need to discover available API endpoints, resources, and their structure." }, { "slug": "AMCARDS_GET_CARDS", "name": "Get Cards", "description": "This tool retrieves a list of all cards associated with the authenticated account. The action is completely independent and doesn't require any external resource IDs or parameters beyond authentication. It allows users to monitor, track, and manage their cards." }, { "slug": "AMCARDS_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve details of a specific category by ID. Use when you need to fetch information about a card template category including its title, hierarchy, and priority." }, { "slug": "AMCARDS_GET_CATEGORY_SCHEMA", "name": "Get Category Schema", "description": "Tool to retrieve the schema for Category resource. Categories are readonly. Use when you need to understand the structure and available fields of the Category resource." }, { "slug": "AMCARDS_GET_CONTACTS", "name": "Get Contacts", "description": "This tool retrieves a list of contacts from AMCards. It is used for managing contacts by providing details like limit, skip, and filters (e.g., last_name, first_name, email). The tool returns an array of contact objects containing fields such as id, first_name, last_name, email, created_at, and updated_at." }, { "slug": "AMCARDS_GET_GIFT", "name": "Get Gift", "description": "Tool to retrieve details of a specific gift by ID. Use when you need to fetch information about a particular gift including its name, description, price, shipping cost, and availability." }, { "slug": "AMCARDS_GET_PUBLIC_TEMPLATE", "name": "Get Public Template", "description": "Tool to retrieve details of a specific public template by ID. Use when you need to get information about a specific template including its configuration, panels, and metadata." }, { "slug": "AMCARDS_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to retrieve a list of card template categories from AMCards. Categories are returned ordered by their priority (1 is highest). Use when you need to browse available categories, filter by parent category, or search categories by title." }, { "slug": "AMCARDS_LIST_GIFTS", "name": "List Gifts", "description": "Tool to retrieve a list of Gift items offered by AMcards. Use when you need to display or reference available gifts for selection or purchase. No authorization required." }, { "slug": "AMCARDS_LIST_PUBLIC_TEMPLATES", "name": "List Public Templates", "description": "Tool to retrieve a list of public templates available to all users. Use when you need to browse or search available card templates. No authorization required for this endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "amcards_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your AMCards access token. Generate one at https://amcards.com/user/generate-access-token/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "simplesat", "name": "Simplesat", "logo": "https://logos.composio.dev/api/simplesat", "description": "Simplesat captures customer feedback and CSAT scores through surveys, integrating directly with helpdesk systems for real-time performance insights", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMPLESAT_CREATE_OR_UPDATE_CUSTOMER2", "name": "Create or Update Customer V2", "description": "Tool to create a new customer or update an existing customer if one already exists with the same email. Use when you need to add or modify customer information including name, email, company, tags, external_id, and custom attributes." }, { "slug": "SIMPLESAT_CREATE_OR_UPDATE_TEAM_MEMBER", "name": "Create or Update Team Member", "description": "This tool creates a new team member or updates an existing one if a team member with the same email address is found. It is an independent action that requires only basic team member information (email, first_name, last_name, and optionally title and phone) and does not depend on any other resource IDs." }, { "slug": "SIMPLESAT_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to retrieve a single customer by their Simplesat ID. Returns customer details including name, email, company, tags, and custom attributes." }, { "slug": "SIMPLESAT_LIST_ANSWERS", "name": "List Answers", "description": "Tool to fetch a list of all answers from Simplesat. Returns answers with detailed question, customer, ticket, and team member information. Supports filtering by modified date and pagination. Note: This endpoint is deprecated; the v1 API POST /api/v1/answers/search is recommended instead." }, { "slug": "SIMPLESAT_LIST_QUESTIONS", "name": "List Questions", "description": "Tool to retrieve a paginated list of all questions in Simplesat. Use when you need to fetch question details including order, metric type, text, rating scale, choices, and conditional rules. Supports filtering by metric (csat, nps, ces) and survey_id." }, { "slug": "SIMPLESAT_LIST_SURVEYS", "name": "List Surveys", "description": "Tool to list all surveys in the Simplesat account. Returns survey details including id, name, and metric type (CSAT, NPS, CES). Use when you need to retrieve available surveys or find a specific survey by name or metric type." }, { "slug": "SIMPLESAT_SEARCH_ANSWERS", "name": "Search Answers", "description": "Tool to search and retrieve answers from Simplesat with advanced filtering. Use when you need to find specific answers based on filters like date range, choice value, sentiment, survey, customer, or custom attributes. If no filters are provided, returns all answers from the last 30 days by default." }, { "slug": "SIMPLESAT_SEARCH_RESPONSES", "name": "Search Responses", "description": "Tool to search and retrieve responses from Simplesat by applying specific filters. Returns all responses from the last 30 days by default if no date range is specified. Supports filtering by date range, choice value, collaborator, company, comment, customer, sentiment, metric, survey, tag, team member, ticket_id, and custom attributes. Use this when you need to find specific responses based on criteria like sentiment, customer, or time period." }, { "slug": "SIMPLESAT_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer by their Simplesat ID. Use when you need to modify customer information such as name, email, company, external ID, tags, or custom attributes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "simplesat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Simplesat API Token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "flutterwave", "name": "Flutterwave", "logo": "https://flutterwave.com/favicon.ico", "description": "Flutterwave is a payments technology company that provides payment infrastructure and APIs enabling businesses to accept and send payments in Africa and globally.", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FLUTTERWAVE_CANCEL_PAYMENT_PLAN", "name": "Cancel Payment Plan", "description": "Tool to cancel a payment plan. Use when you need to prevent all future subscriptions under this plan." }, { "slug": "FLUTTERWAVE_CREATE_BENEFICIARY", "name": "Create Beneficiary", "description": "Tool to create a new transfer beneficiary. Use when you need to add a beneficiary before making a transfer." }, { "slug": "FLUTTERWAVE_CREATE_BULK_TOKENIZED_CHARGE", "name": "Create Bulk Tokenized Charge", "description": "Tool to create a bulk tokenized charge batch for charging multiple previously tokenized cards. Use when you need to process multiple recurring or subscription charges in a single batch. Each charge must reference a valid card token obtained from prior tokenization." }, { "slug": "FLUTTERWAVE_CREATE_BULK_VIRTUAL_ACCOUNT_NUMBERS", "name": "Create Bulk Virtual Account Numbers", "description": "Tool to create multiple virtual account numbers. Use when you need to generate multiple static virtual accounts for customers in a single request." }, { "slug": "FLUTTERWAVE_CREATE_PAYMENT_LINK", "name": "Create Payment Link", "description": "Tool to create a hosted payment link. Use when you need a shareable payment URL for one-time transactions." }, { "slug": "FLUTTERWAVE_CREATE_PAYMENT_PLAN", "name": "Create Payment Plan", "description": "Tool to create a new payment plan. Use after confirming plan and customer details." }, { "slug": "FLUTTERWAVE_CREATE_REFUND", "name": "Create Refund", "description": "Tool to create a refund for a transaction. Use when you need to initiate a refund after confirming the transaction ID and refund amount." }, { "slug": "FLUTTERWAVE_CREATE_SUBACCOUNT", "name": "Create Subaccount", "description": "Tool to create a new subaccount. Use when you need to configure split disbursement accounts." }, { "slug": "FLUTTERWAVE_CREATE_VIRTUAL_ACCOUNT", "name": "Create Virtual Account", "description": "Tool to create a new virtual account number. Use after confirming customer details when assigning a unique account for bank transfers." }, { "slug": "FLUTTERWAVE_DELETE_BENEFICIARY", "name": "Delete Beneficiary", "description": "Tool to delete a beneficiary by ID. Use when you need to remove a saved transfer beneficiary by its unique ID after confirming the ID." }, { "slug": "FLUTTERWAVE_DELETE_SUBACCOUNT", "name": "Delete Subaccount", "description": "Tool to delete a subaccount by ID. Use when you need to remove a subaccount from your Flutterwave account." }, { "slug": "FLUTTERWAVE_DISABLE_PAYMENT_LINK", "name": "Disable Payment Link", "description": "Tool to disable a Flutterwave payment link. Use when you need to prevent further payments from an existing link after confirming the link is valid." }, { "slug": "FLUTTERWAVE_FETCH_BENEFICIARY", "name": "Fetch Beneficiary", "description": "Tool to retrieve details of a specific beneficiary by ID. Use after obtaining a beneficiary ID to fetch its full details from Flutterwave." }, { "slug": "FLUTTERWAVE_FETCH_SUBACCOUNT", "name": "Fetch Subaccount", "description": "Tool to retrieve details of a specific subaccount by ID. Use when you need full subaccount info after creating or updating splits." }, { "slug": "FLUTTERWAVE_GENERATE_TRANSACTION_REFERENCE", "name": "Generate Transaction Reference", "description": "Tool to generate a unique transaction reference. Use when initiating a new Flutterwave transaction requires a unique reference to prevent duplication." }, { "slug": "FLUTTERWAVE_GET_ALL_SUBSCRIPTIONS", "name": "Get All Subscriptions", "description": "Tool to retrieve all subscriptions, including cancelled ones. Use when you need a comprehensive list of subscription records for auditing or reporting." }, { "slug": "FLUTTERWAVE_GET_ALL_TRANSACTIONS", "name": "Retrieve all transactions", "description": "Tool to retrieve a list of all transactions with optional filters. Use when you need to paginate or filter transaction history after confirming valid API credentials." }, { "slug": "FLUTTERWAVE_GET_ALL_WALLET_BALANCES", "name": "Get All Wallet Balances", "description": "Tool to retrieve all wallet balances across currencies. Use when reconciling balances after authentication." }, { "slug": "FLUTTERWAVE_GET_BALANCES_PER_CURRENCY", "name": "Get Balances per Currency", "description": "Tool to retrieve wallet balance for a specific currency. Use after transactions to confirm available and ledger balances in a given currency." }, { "slug": "FLUTTERWAVE_GET_BANK_BRANCHES", "name": "Get Bank Branches", "description": "Tool to retrieve branch codes for a specific bank. Use when you need branch information for transfers in countries like Ghana that require branch codes." }, { "slug": "FLUTTERWAVE_GET_BANKS_BY_COUNTRY", "name": "Get Banks by Country", "description": "Tool to retrieve all banks in a specified country. Use when you need to get available banks for transfers or payments in a specific country." }, { "slug": "FLUTTERWAVE_GET_BILL_CATEGORIES", "name": "Get Bill Categories", "description": "Tool to retrieve available bill categories. Use after authenticating to Flutterwave to display bill payment options to users." }, { "slug": "FLUTTERWAVE_GET_BULK_TOKENIZED_CHARGE", "name": "Get Bulk Tokenized Charge Status", "description": "Tool to retrieve the status of a bulk tokenized charge operation by ID. Use after initiating a bulk tokenized charge to check its processing status." }, { "slug": "FLUTTERWAVE_GET_BULK_VIRTUAL_ACCOUNT", "name": "Get Bulk Virtual Account", "description": "Tool to fetch bulk virtual account details using batch ID. Use this after creating bulk virtual accounts to retrieve the generated account numbers and their details." }, { "slug": "FLUTTERWAVE_GET_MULTIPLE_REFUND_TRANSACTIONS", "name": "Get Multiple Refund Transactions", "description": "Tool to retrieve multiple refund transactions with optional filters. Use when you need to fetch paginated refund data after confirming valid API credentials." }, { "slug": "FLUTTERWAVE_GET_PAYMENT_PLAN", "name": "Get Payment Plan", "description": "Tool to retrieve details of a specific payment plan by ID. Use after obtaining the payment plan ID to fetch its details from Flutterwave." }, { "slug": "FLUTTERWAVE_GET_PAYMENT_PLANS", "name": "Get Payment Plans", "description": "Tool to retrieve a list of all payment plans. Use when you need to fetch and present your account’s configured billing plans." }, { "slug": "FLUTTERWAVE_GET_REFUND", "name": "Get Refund", "description": "Tool to retrieve details of a specific refund by ID. Use after obtaining the refund ID to fetch its details from Flutterwave." }, { "slug": "FLUTTERWAVE_GET_TRANSACTION", "name": "Get Transaction", "description": "Tool to retrieve details of a specific transaction by ID. Use after obtaining the transaction ID to fetch its details from Flutterwave." }, { "slug": "FLUTTERWAVE_GET_TRANSACTION_FEE", "name": "Get Transaction Fee", "description": "Tool to retrieve the fee for a specific transaction. Use when you need to calculate the total charge including fees before initiating the transaction." }, { "slug": "FLUTTERWAVE_GET_TRANSFER_FEE", "name": "Get Transfer Fee", "description": "Tool to retrieve the fee for initiating a transfer. Use when you need to estimate transfer costs before creating a transfer. Example: \"Calculate the fee for transferring NGN 5000 to an account.\"" }, { "slug": "FLUTTERWAVE_GET_TRANSFER_RATES", "name": "Get Transfer Rates", "description": "Tool to retrieve exchange rates for transfers between currencies. Use when you need to calculate conversion rates before initiating a cross-currency transfer." }, { "slug": "FLUTTERWAVE_GET_VIRTUAL_ACCOUNT_NUMBER", "name": "Get Virtual Account Number", "description": "Tool to fetch details of a virtual account number by order reference. Use when you need to retrieve account details after creation." }, { "slug": "FLUTTERWAVE_GET_WALLET_STATEMENT", "name": "Get Wallet Statement", "description": "Tool to retrieve wallet balance history with optional filters. Use when you need to view transaction history and balance changes over a period." }, { "slug": "FLUTTERWAVE_INITIATE_BVN_VERIFICATION", "name": "Initiate BVN Verification", "description": "Tool to initiate BVN verification consent. Use when you need to verify a customer's Bank Verification Number (BVN) by obtaining their consent first. The customer will be redirected to a consent page where they provide approval to access their BVN data." }, { "slug": "FLUTTERWAVE_INITIATE_MOBILE_MONEY_TANZANIA", "name": "Initiate Mobile Money Tanzania", "description": "Tool to initiate a mobile money payment in Tanzania. Use after collecting customer details to charge via Tanzanian mobile money networks." }, { "slug": "FLUTTERWAVE_LIST_ALL_BENEFICIARIES", "name": "List All Beneficiaries", "description": "Tool to list all saved beneficiaries. Use when you need to retrieve all transfer beneficiaries associated with your account." }, { "slug": "FLUTTERWAVE_LIST_BILLER_PRODUCTS", "name": "List Biller Products", "description": "Tool to retrieve all products available under a specific biller. Use after getting bill categories to display available products for bill payment." }, { "slug": "FLUTTERWAVE_LIST_BILLERS", "name": "List Billers", "description": "Tool to retrieve available billers. Use after authenticating to Flutterwave to display bill payment biller options to users." }, { "slug": "FLUTTERWAVE_LIST_CHARGEBACKS", "name": "List Chargebacks", "description": "Tool to retrieve a list of chargebacks with optional filtering by Flutterwave reference. Use when you need to view all chargebacks or search for a specific chargeback by transaction reference." }, { "slug": "FLUTTERWAVE_LIST_PAYOUT_SUBACCOUNT_REFUNDS", "name": "List Payout Subaccount Refunds", "description": "Tool to list all payout subaccount refunds with pagination support. Use when you need to retrieve payout subaccount refund history with optional page filtering." }, { "slug": "FLUTTERWAVE_LIST_PAYOUT_SUBACCOUNTS", "name": "List Payout Subaccounts", "description": "Tool to list all payout subaccounts. Use when you need to retrieve all payout subaccounts associated with your Flutterwave account." }, { "slug": "FLUTTERWAVE_LIST_RECURRING_BILLS", "name": "List Recurring Bills", "description": "Tool to retrieve all recurring bill payments. Use when you need to view scheduled or active recurring billing arrangements." }, { "slug": "FLUTTERWAVE_LIST_SETTLEMENTS", "name": "List all settlements", "description": "Tool to retrieve all settlements with optional filters. Use when you need to fetch settlement records, view transaction settlements, or track payment disbursements." }, { "slug": "FLUTTERWAVE_LIST_SUBACCOUNTS", "name": "List All Subaccounts", "description": "Tool to fetch all collection subaccounts. Use when you need to retrieve the complete list of subaccounts for split disbursements." }, { "slug": "FLUTTERWAVE_LIST_TRANSFERS", "name": "List Transfers", "description": "Tool to fetch a list of bulk transfers from your Flutterwave account. Use when you need to retrieve transfer history, check transfer statuses, or filter transfers by reference or status." }, { "slug": "FLUTTERWAVE_RESOLVE_BANK_ACCOUNT", "name": "Resolve Bank Account", "description": "Tool to verify and resolve bank account details. Use when you need to retrieve the account holder name for a Nigerian bank account by providing the account number and bank code." }, { "slug": "FLUTTERWAVE_RESOLVE_CARD_BIN", "name": "Resolve Card BIN", "description": "Tool to resolve and retrieve card BIN information from Flutterwave. Use when you need to get issuer details, card type, and country information for a 6-digit BIN." }, { "slug": "FLUTTERWAVE_UPDATE_PAYMENT_PLAN", "name": "Update Payment Plan", "description": "Tool to update an existing payment plan. Use when you need to modify a payment plan's name or status." }, { "slug": "FLUTTERWAVE_UPDATE_SUBACCOUNT", "name": "Update Subaccount", "description": "Tool to update an existing subaccount. Use when you need to modify split disbursement settings or business details." }, { "slug": "FLUTTERWAVE_VALIDATE_BILL_ITEM", "name": "Validate Bill Item", "description": "Tool to validate a bill service before payment. Use before initiating a bill payment to confirm the customer identifier (account number, meter number, etc.) is valid and retrieve customer details." }, { "slug": "FLUTTERWAVE_VERIFY_TRANSACTION_BY_REFERENCE", "name": "Verify Transaction by Reference", "description": "Tool to verify a transaction using its transaction reference. Use when you have a transaction reference (tx_ref) and need to confirm the transaction status and retrieve its details." }, { "slug": "FLUTTERWAVE_VIEW_TRANSACTION_TIMELINE", "name": "View Transaction Timeline", "description": "Tool to retrieve the event timeline for a transaction. Use after obtaining the transaction ID to audit or track the sequence of events." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "flutterwave_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_secret", "displayName": "Flutterwave Secret Key", "type": "string", "description": "Your Flutterwave Secret Key (starts with FLWSECK_TEST- or FLWSECK-). Obtainable from your Flutterwave dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hackerrank_work", "name": "HackerRank Work", "logo": "https://logos.composio.dev/api/hackerrank_work", "description": "HackerRank Work enables coding interviews and technical assessments, providing developers with challenges and real-time collaboration for data-driven hiring decisions", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HACKERRANK_WORK_COMPANIES_LIST", "name": "List Companies", "description": "Tool to list all companies and their unique identifiers. Use when you need the company_unique_id for SSO metadata retrieval." }, { "slug": "HACKERRANK_WORK_SSO_ASSERTION_CONSUMER_SERVICE", "name": "Consume SAML Assertion", "description": "Tool to consume SAML assertions. Use when receiving SAMLResponse and RelayState from the Identity Provider for SSO sign-in." }, { "slug": "HACKERRANK_WORK_SSO_SIGN_ON_URL", "name": "Get SSO Sign-On URL", "description": "Tool to get the SP-initiated SSO sign-on URL. Use when configuring SAML SSO with your identity provider." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hackerrank_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your HackerRank API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freshbooks", "name": "FreshBooks", "logo": "https://logos.composio.dev/api/freshbooks", "description": "FreshBooks is a cloud-based accounting software service designed for small and medium-sized businesses, offering features like invoicing, expense tracking, and time management.", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FRESHBOOKS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Register a new webhook callback for a FreshBooks account. Webhooks notify your application when specified events occur (e.g., when invoices are created, clients are updated, or payments are received). **Prerequisites:** Obtain a valid account_id using the List Businesses action first. **Important Notes:** - FreshBooks implements a verification mechanism to ensure you own the callback URI. The 'verified' field will initially be false. - Your webhook endpoint must respond with a 2xx HTTP status code. Any other status code (including 3xx redirects) is treated as a failure. - Webhook requests have a 10-second timeout. - Requires 'user:webhooks:write' OAuth scope. **Common Event Types:** client.create, client.update, client.delete, invoice.create, invoice.update, invoice.delete, payment.create, payment.update, payment.delete, expense.create, expense.update, expense.delete." }, { "slug": "FRESHBOOKS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Delete a webhook callback from a FreshBooks account. Use when you need to remove an existing webhook subscription that is no longer needed." }, { "slug": "FRESHBOOKS_GET_BUSINESS_USERS", "name": "Get Business Users", "description": "Retrieves staff identities and members for a specific FreshBooks business. This action returns detailed information about all staff members (owners, admins, employees) in a business group, including their roles, email addresses, and active status. Use this to discover team members before assigning time entries or tasks." }, { "slug": "FRESHBOOKS_LIST_BUSINESSES", "name": "List Businesses", "description": "List all businesses associated with the authenticated user. This action retrieves business membership information from the FreshBooks Identity endpoint, showing all businesses the user has access to along with their role in each business. The business_id from this response is required for many other FreshBooks API calls." }, { "slug": "FRESHBOOKS_LIST_CLIENTS", "name": "List Clients", "description": "Retrieves all clients for a FreshBooks account. Clients are entities you send invoices to. Supports pagination, filtering by email/user ID/visibility state, sorting, and includes optional balance data (outstanding, credit, draft, overdue)." }, { "slug": "FRESHBOOKS_LIST_JOURNAL_ENTRIES2", "name": "List Journal Entries", "description": "Retrieves all journal entries for a FreshBooks business account. Journal entries are the building blocks of financial accounting, recording all business transactions including invoices, payments, credits, and expenses. Use this action to get a comprehensive view of your accounting records." }, { "slug": "FRESHBOOKS_LIST_PROJECTS", "name": "List Projects", "description": "Retrieves all projects associated with a FreshBooks business account. This action returns a paginated list of projects with comprehensive details including client information, billing rates, budget, completion status, team members, and associated services. Use this to discover available projects before performing project-specific operations. **Prerequisites:** Obtain a valid business_id using the List Businesses action first. **Use Cases:** - Get all projects for time tracking or invoicing - Find projects by client, status, or date range - Monitor project completion and budget tracking - Retrieve team assignments and project groups **Response:** Returns an empty list if no projects exist or match the filters." }, { "slug": "FRESHBOOKS_LIST_WEBHOOKS", "name": "List Webhooks", "description": "List all webhook callbacks registered for a FreshBooks account. Webhooks notify your application when events occur (e.g., invoice creation, payment received). Use this to discover what webhook callbacks are currently active for an account before creating or managing webhook subscriptions." }, { "slug": "FRESHBOOKS_REGISTER_AS_A_NEW_USER", "name": "Register as a New User", "description": "Register a new user account in FreshBooks. Returns an access token upon successful registration. Use this action when you need to create a new FreshBooks user account programmatically with their business information." }, { "slug": "FRESHBOOKS_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update or verify a FreshBooks webhook callback. Use this to verify a newly created webhook by providing the verification code, or to request a new verification code be sent to the callback URI. **Prerequisites:** You need the account_id (from List Businesses as business_uuid) and callback_id (from webhook creation). **Use Cases:** - Verify a webhook after creation by providing the verifier code received at your callback URI - Request a new verification code if the original was lost or expired (set resend=true) **Important:** The verifier and resend parameters are mutually exclusive - provide only one per request." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "freshbooks_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user:profile:read,user:projects:read,user:clients:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "process_street", "name": "Process Street", "logo": "https://logos.composio.dev/api/process_street", "description": "Process Street supports creating and running checklists, SOPs, and workflows, helping teams automate recurring processes and track compliance", "category": "task management", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROCESS_STREET_COMPLETE_WORKFLOW_RUN", "name": "Complete a workflow run", "description": "This tool marks an entire workflow run as completed in Process Street. It first retrieves the current workflow run details, then updates the status to 'Completed' while preserving other fields like name and shared status. This distinguishes it from PROCESS_STREET_COMPLETE_TASK which completes individual tasks within a workflow run." }, { "slug": "PROCESS_STREET_CREATE_WORKFLOW_RUN", "name": "Create Workflow Run", "description": "This tool creates a new workflow run from a specified workflow template. It is one of the most fundamental operations in Process Street, allowing users to initiate a new instance of a workflow. The tool requires a workflow_template_id and optionally allows setting a custom name, due date, and whether to enable a share link." }, { "slug": "PROCESS_STREET_FIND_DATA_SET_ROWS", "name": "Find Data Set Rows", "description": "Retrieves records from a Process Street data set with optional filtering by column values. Use this tool to search for specific records within a data set or to paginate through all records. Data sets are tables that store structured data which can be used across workflows." }, { "slug": "PROCESS_STREET_LIST_WORKFLOWS", "name": "List Workflows", "description": "This tool retrieves a list of all workflows available in the Process Street account. It is a fundamental action that allows users to view and access all their workflows, which is essential for other operations that require workflow IDs. This action is important because it provides the foundation for other actions that require workflow IDs as input parameters, such as creating workflow runs or managing workflow-specific tasks, thereby enabling better workflow management and automation." }, { "slug": "PROCESS_STREET_UNDELETE_WORKFLOW_RUN", "name": "Undelete Workflow Run", "description": "Restores a previously deleted workflow run in Process Street. Uses the POST /workflow-runs/{workflowRunId}/undelete endpoint to recover a workflow run within the valid recovery period (typically up to 30 days). Only workflow runs that have been deleted (not permanently removed) can be restored." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API_KEY", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key for authentication. Obtain it from your Process Street settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "screenshotone", "name": "ScreenshotOne", "logo": "https://screenshotone.com/logo.png", "description": "ScreenshotOne is a screenshot API for developers, enabling the rendering of website screenshots through simple API calls without managing browser clusters.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCREENSHOTONE_GET_USAGE", "name": "Get Usage", "description": "Tool to retrieve current API plan usage information. Returns total requests allowed, available requests remaining, used requests count, and concurrency limits for the current billing period." }, { "slug": "SCREENSHOTONE_LIST_DEVICES", "name": "List Devices", "description": "Tool to retrieve the list of supported devices for viewport emulation. Use when you need to get available device IDs and their viewport configurations for device emulation in screenshot operations." }, { "slug": "SCREENSHOTONE_TAKE_ANIMATED_SCREENSHOT", "name": "Take Animated Screenshot", "description": "This tool captures an animated screenshot (video or GIF) of a given website URL. It allows customization of the animation format, duration, viewport dimensions, and animation scenario (e.g., scrolling)." }, { "slug": "SCREENSHOTONE_TAKE_BULK_SCREENSHOTS", "name": "Take Bulk Screenshots", "description": "Tool to take multiple screenshots in a single request with shared defaults and individual overrides. Use when you need to capture screenshots of multiple URLs or the same URL with different parameters. Supports lazy loading (default) where screenshots are taken on download, or immediate execution with execute=true." }, { "slug": "SCREENSHOTONE_TAKE_SCREENSHOT", "name": "Take Screenshot", "description": "Tool to generate a screenshot or PDF of a website, render HTML, or Markdown using POST request. Use when you need to capture webpage content in various formats (PNG, JPEG, WebP, PDF, HTML). Supports both returning binary content directly or getting a cached URL via JSON response." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "screenshotone_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Key", "type": "string", "description": "Your ScreenshotOne API access key.", "required": true, "default": null } ], "optional": [ { "name": "generic_secret", "displayName": "Secret Key", "type": "string", "description": "Your ScreenshotOne API secret key used for signing requests.", "required": false, "default": null } ] } } } ] }, { "slug": "chatwork", "name": "Chatwork", "logo": "https://logos.composio.dev/api/chatwork", "description": "Chatwork is a team communication platform featuring group chats, file sharing, and task management, aiming to enhance collaboration and productivity for businesses", "category": "team chat", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CHATWORK_CREATE_ROOM", "name": "Create Chatwork Room", "description": "Tool to create a new group chat room in Chatwork. Use when you need to set up a new collaborative space for team communication. This action allows you to specify room administrators, members with different permission levels (admin, regular, read-only), and optionally configure invitation links with custom access controls." }, { "slug": "CHATWORK_CREATE_ROOM_LINK", "name": "Create Room Invitation Link", "description": "Tool to create an invitation link for a Chatwork room. Returns a URL that can be shared for others to join the room. Use when you need to generate a shareable link for room access. Returns 400 error if a link already exists for the room." }, { "slug": "CHATWORK_CREATE_TASK", "name": "Create Task in Chatwork Room", "description": "Tool to create a new task in a Chatwork room. Use when you need to assign tasks to users in a specific chat room. Requires the task description, assignee account IDs, and optionally a deadline timestamp." }, { "slug": "CHATWORK_DELETE_MESSAGE", "name": "Delete Message", "description": "This tool allows you to delete a specific message from a Chatwork room by calling the DELETE endpoint at https://api.chatwork.com/v2/rooms/{room_id}/messages/{message_id}. It requires authentication using a Chatwork API token provided in the X-ChatWorkToken header, and the necessary permissions to delete messages in the specified room." }, { "slug": "CHATWORK_DELETE_ROOM", "name": "Delete or Leave Chatwork Room", "description": "Tool to leave or delete a Chatwork room. When leaving, your tasks and files in the room are deleted. When deleting, all messages, tasks, and files in the room are permanently deleted. Use with caution as deletion is irreversible." }, { "slug": "CHATWORK_DELETE_ROOM_LINK", "name": "Delete Room Link", "description": "Delete the invitation link for a Chatwork room. Use when you need to disable or remove the invite link for a chat room. Returns a 400 error if the invitation link is already disabled." }, { "slug": "CHATWORK_GET_CHATWORK_CONTACTS", "name": "Get Chatwork Contacts", "description": "This tool retrieves a list of all contacts from Chatwork. It is a fundamental tool that fetches all contact information such as account_id, room_id, name, chatwork_id, organization details, department, and avatar image URL, without needing additional parameters beyond authentication." }, { "slug": "CHATWORK_GET_FILE2", "name": "Get Chatwork File Information", "description": "Tool to get information about a specific file in a chat room. Use when you need to retrieve file metadata including filename, size, upload time, and optionally a download URL." }, { "slug": "CHATWORK_GET_INCOMING_REQUESTS", "name": "Get Incoming Contact Requests", "description": "Tool to retrieve pending contact approval requests received by the authenticated user. Use when you need to check incoming connection requests from other users (up to 100 items)." }, { "slug": "CHATWORK_GET_ME", "name": "Get My Chatwork Profile", "description": "Tool to retrieve the authenticated user's profile information including account details, organization, contact information, and avatar URL. Use when you need to get the current user's complete profile data." }, { "slug": "CHATWORK_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve information about a specific message in a Chatwork room. Use when you need to get details about a particular message, including its content, sender, and timestamps." }, { "slug": "CHATWORK_GET_MY_STATUS", "name": "Get My Chatwork Status", "description": "This tool retrieves the current status of the authenticated user, including unread message counts and task status. It provides a quick overview of unread messages, mentions, and tasks, making it valuable for monitoring ChatWork activity and building automation workflows." }, { "slug": "CHATWORK_GET_MY_TASKS", "name": "Get My Chatwork Tasks", "description": "Tool to retrieve the authenticated user's task list from Chatwork (up to 100 items). Use when you need to fetch tasks assigned to the user, with optional filtering by assigner or completion status." }, { "slug": "CHATWORK_GET_ROOM", "name": "Get Chatwork Room", "description": "Retrieves detailed information about a specific Chatwork room using the API endpoint GET /rooms/{room_id}. Returns comprehensive room details including name, icon, type, role, message/file/task counts, and other metadata. Useful for obtaining room-specific information when you already have the room ID." }, { "slug": "CHATWORK_GET_ROOM_FILES", "name": "Get Room Files", "description": "Tool to get list of files in a chat room (up to 100 files). Use when you need to retrieve file information from a Chatwork room, optionally filtered by uploader." }, { "slug": "CHATWORK_GET_ROOM_LINK", "name": "Get Room Invitation Link", "description": "Retrieves the invitation link for a specified Chatwork room using the API endpoint GET /rooms/{room_id}/link. Returns link information including the URL, public/private status, whether admin acceptance is needed, and a description. Useful for sharing room access and managing room invitations." }, { "slug": "CHATWORK_GET_ROOM_MEMBERS", "name": "Get Room Members", "description": "Retrieves a complete list of all members in a specified Chatwork room using the API endpoint GET /rooms/{room_id}/members. Returns detailed member information including account IDs, roles (admin/member/readonly), names, Chatwork IDs, organization details, departments, and avatar URLs. Useful for managing room permissions, generating member lists, and understanding room composition." }, { "slug": "CHATWORK_GET_ROOM_MESSAGES2", "name": "Get Room Messages V2", "description": "Tool to retrieve messages from a Chatwork room (up to 100 messages). Use when you need to fetch chat history from a specific room. By default (force=0), returns only messages since the last retrieval. Set force=1 to get the latest 100 messages." }, { "slug": "CHATWORK_GET_ROOMS2", "name": "Get Chatwork Rooms", "description": "Tool to retrieve a list of all chat rooms the authenticated user belongs to. Use when you need to get information about all accessible rooms including group chats, direct messages, and personal chats." }, { "slug": "CHATWORK_GET_ROOM_TASKS", "name": "Get Room Tasks", "description": "Retrieves a list of tasks from a Chatwork room. Returns up to 100 tasks. Use optional filters to narrow results by assignee, assigner, or completion status. Returns an empty list if there are no matching tasks." }, { "slug": "CHATWORK_GET_TASK", "name": "Get Task", "description": "Retrieves detailed information about a specific task in a Chatwork room using the API endpoint GET /rooms/{room_id}/tasks/{task_id}. Returns task details including assignee, creator, body, deadline, and completion status. Use this when you need to check the current state of a specific task or retrieve its full details." }, { "slug": "CHATWORK_MARK_MESSAGES_READ", "name": "Mark Messages as Read", "description": "Tool to mark messages as read in a Chatwork room. Use when you need to update the read status of messages up to a specific message ID. All messages up to and including the specified message will be marked as read." }, { "slug": "CHATWORK_MARK_MESSAGES_UNREAD", "name": "Mark Messages as Unread", "description": "Tool to mark messages as unread in a Chatwork room. Use when you need to mark a specific message and all subsequent messages as unread. This is useful for re-flagging important messages that need attention." }, { "slug": "CHATWORK_POST_MESSAGE", "name": "Post Message", "description": "Tool to post a new message to a Chatwork room. Use when you need to send a message to a specific chat room. Supports marking the message as unread for the sender via the self_unread parameter." }, { "slug": "CHATWORK_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to update an existing message in a Chatwork room. Use when you need to modify the content of a previously sent message. Requires appropriate permissions to edit messages in the room." }, { "slug": "CHATWORK_UPDATE_ROOM", "name": "Update Chatwork Room", "description": "Tool to update chat room information (name, icon, description). Use when you need to modify existing chat room settings. At least one field (name, icon_preset, or description) must be provided." }, { "slug": "CHATWORK_UPDATE_ROOM_LINK", "name": "Update Room Invitation Link", "description": "Tool to update the invitation link settings for a Chatwork room. Use when you need to modify the link code, description, or acceptance settings for a room's invitation link. Returns 400 if the invitation link feature is disabled for the room." }, { "slug": "CHATWORK_UPDATE_ROOM_MEMBERS", "name": "Update Room Members", "description": "Updates the complete member list of a Chatwork room with bulk assignment of member roles (admin, member, readonly). This is a bulk update operation that replaces the entire member list - any existing members not included in the request will be removed from the room. At least one admin must be specified. Use this when reorganizing room permissions or changing multiple member roles at once." }, { "slug": "CHATWORK_UPDATE_TASK_STATUS", "name": "Update Task Status", "description": "Tool to update the completion status of a task in a Chatwork room. Use when you need to mark a task as done or reopen a completed task. Requires appropriate permissions to modify tasks in the specified room." }, { "slug": "CHATWORK_UPLOAD_FILE", "name": "Upload File to Chatwork Room", "description": "This tool allows users to upload files to a specific Chatwork room. It enables file sharing functionality within the Chatwork platform by providing an endpoint to upload files (along with an optional message) to a given room." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chatwork_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Chatwork API Token", "type": "string", "description": "Your Chatwork API token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "klipfolio", "name": "Klipfolio", "logo": "https://logos.composio.dev/api/klipfolio", "description": "Klipfolio is a cloud-based business intelligence platform that enables users to create and share real-time dashboards and reports.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 50, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KLIPFOLIO_ASSIGN_USER_ROLE", "name": "Assign User Role", "description": "Tool to assign a role to a user in Klipfolio. Use when you need to grant role-based permissions to a specific user. Requires both user ID and role ID." }, { "slug": "KLIPFOLIO_CREATE_DATA_SOURCE", "name": "Create Data Source", "description": "This tool creates a new data source in Klipfolio. It uses the POST /datasources endpoint to add a data source with required parameters (name, format, connector, endpointUrl) and optional parameters (description, refreshInterval, method, additionalProperties)." }, { "slug": "KLIPFOLIO_CREATE_DATA_SOURCE_INSTANCE", "name": "Create Data Source Instance", "description": "Tool to create a new data source instance based on an existing data source in Klipfolio. Use when you need to instantiate a data source with specific properties or configuration. Requires datasource.create permission." }, { "slug": "KLIPFOLIO_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in Klipfolio. Use when you need to organize users into groups for managing permissions and access control." }, { "slug": "KLIPFOLIO_CREATE_ROLE", "name": "Create Role", "description": "Tool to create a new role in Klipfolio with optional permissions. Use when you need to define a new role with specific access rights. Requires 'user.manage' permission." }, { "slug": "KLIPFOLIO_CREATE_TAB", "name": "Create Tab (Dashboard)", "description": "This tool creates a new tab (dashboard) in Klipfolio. A tab serves as a container for organizing and displaying Klips (data visualizations) in a meaningful way. The tool allows users to set up a new dashboard with specific properties and configurations." }, { "slug": "KLIPFOLIO_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in Klipfolio with optional roles and client association. Use when you need to add a new user account. Requires 'user.manage' permission." }, { "slug": "KLIPFOLIO_DELETE_DATA_SOURCE", "name": "Delete Data Source", "description": "This tool permanently removes a specified data source from the Klipfolio account. This operation is destructive and cannot be undone. The data source must not be currently in use, and proper permissions are required." }, { "slug": "KLIPFOLIO_DELETE_DATA_SOURCE_INSTANCE_PROPERTY", "name": "Delete Data Source Instance Property", "description": "Tool to delete a property from a data source instance in Klipfolio. Use when you need to remove custom properties or metadata from a specific data source instance." }, { "slug": "KLIPFOLIO_DELETE_DATA_SOURCE_PROPERTY", "name": "Delete Data Source Property", "description": "Tool to delete a property from a data source in Klipfolio. Use when you need to remove custom properties or metadata from a specific data source." }, { "slug": "KLIPFOLIO_DELETE_DATA_SOURCE_SHARE_RIGHT", "name": "Delete Data Source Share Right", "description": "Tool to delete a data source share right for a specific user or group. Use when you need to revoke access permissions from a data source." }, { "slug": "KLIPFOLIO_DELETE_GROUP", "name": "Delete Group", "description": "Tool to permanently delete a specified group from the Klipfolio account. Use when you need to remove a user group. This operation is destructive and cannot be undone. Proper permissions are required." }, { "slug": "KLIPFOLIO_DELETE_ROLE", "name": "Delete Role", "description": "Tool to delete a role from Klipfolio. Use when you need to permanently remove a role from the account. This operation is destructive and cannot be undone." }, { "slug": "KLIPFOLIO_DISABLE_DATA_SOURCE", "name": "Disable Data Source", "description": "Tool to disable a data source in Klipfolio. Use when you need to temporarily stop a data source from refreshing without deleting it. The data source can be re-enabled later if needed." }, { "slug": "KLIPFOLIO_ENABLE_DATA_SOURCE", "name": "Enable Data Source", "description": "Tool to enable a disabled data source in Klipfolio. Use when you need to reactivate a data source that was previously disabled. Note: The data source must be in disabled state before it can be enabled, otherwise a 403 error will be returned." }, { "slug": "KLIPFOLIO_GET_DASHBOARD", "name": "Get Dashboard Details", "description": "This tool retrieves detailed information about a specific dashboard (formerly known as tab) in Klipfolio. It allows users to obtain comprehensive information including properties, settings, and metadata of the dashboard." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE", "name": "Get Data Source Details", "description": "Tool to retrieve detailed information about a specific data source in Klipfolio. Use when you need to get configuration details, refresh settings, or metadata for a data source." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE_INSTANCE2", "name": "Get Data Source Instance Details", "description": "Tool to retrieve detailed information about a specific data source instance in Klipfolio. Use when you need to fetch metadata and status for a data source instance." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE_INSTANCE_DATA", "name": "Get Data Source Instance Data", "description": "Tool to retrieve the actual data from a specific data source instance in Klipfolio. Use when you need to access the raw data stored in a data source instance." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE_INSTANCE_PROPERTIES", "name": "Get Data Source Instance Properties", "description": "Tool to retrieve configuration properties for a specific data source instance in Klipfolio. Use when you need to inspect how the API connects to a data source instance (endpoint URL, method, headers, etc.)." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE_PROPERTIES", "name": "Get Data Source Properties", "description": "Tool to retrieve properties for a specific data source in Klipfolio by its ID. Use when you need to get configuration details of a data source such as endpoint URLs, authentication tokens, or custom properties." }, { "slug": "KLIPFOLIO_GET_DATA_SOURCE_SHARE_RIGHTS", "name": "Get Data Source Share Rights", "description": "Tool to retrieve sharing permissions for a specific data source in Klipfolio. Returns both group-level and user-level access rights, including edit permissions for each." }, { "slug": "KLIPFOLIO_GET_GROUP", "name": "Get Group Details", "description": "Tool to retrieve detailed information about a specific group in Klipfolio. Use when you need to get group properties such as name, description, member count, and optionally the list of members." }, { "slug": "KLIPFOLIO_GET_GROUP_DEFAULT_TABS", "name": "Get Group Default Tabs", "description": "Tool to retrieve the list of default tabs (dashboards) for a specific group. Use when you need to see which dashboards are set as defaults for a user group." }, { "slug": "KLIPFOLIO_GET_GROUP_USERS", "name": "Get Group Users", "description": "Tool to retrieve all users belonging to a specific group in Klipfolio. Use when you need to list members of a group." }, { "slug": "KLIPFOLIO_GET_KLIPS", "name": "Get Klips", "description": "This tool retrieves a list of all Klips accessible to the authenticated user. Klips are visualization components in Klipfolio that display data in various formats like charts, tables, or metrics." }, { "slug": "KLIPFOLIO_GET_PROFILE", "name": "Get User Profile", "description": "This tool is used to retrieve the authenticated user's profile information and test the authentication status. It verifies API connectivity and access permissions by returning profile details such as User ID, Username, Email, Company information, Role and permissions, and Account status." }, { "slug": "KLIPFOLIO_GET_ROLE", "name": "Get Role Details", "description": "Tool to retrieve detailed information about a specific role in Klipfolio. Use when you need to check role permissions, view role assignments, or understand role configuration." }, { "slug": "KLIPFOLIO_GET_ROLE_PERMISSIONS", "name": "Get Role Permissions", "description": "Tool to retrieve the list of permissions assigned to a specific role in Klipfolio. Use when you need to view what permissions a role has, such as account.api, admin.client, client.access, dashboard permissions, datasource permissions, klip permissions, tab permissions, or user.manage." }, { "slug": "KLIPFOLIO_GET_ROLE_USERS", "name": "Get Role Users", "description": "Tool to retrieve all users associated with a specific role in Klipfolio. Use when you need to see which users are assigned to a role. Requires user.manage permission." }, { "slug": "KLIPFOLIO_GET_USER", "name": "Get User Details", "description": "Tool to retrieve detailed information about a specific user in Klipfolio. Use when you need to get user properties such as name, email, login history, group memberships, and role assignments." }, { "slug": "KLIPFOLIO_GET_USER_GROUPS", "name": "Get User Groups", "description": "Tool to retrieve all groups that a specific user belongs to in Klipfolio. Use when you need to check group membership for a user." }, { "slug": "KLIPFOLIO_GET_USER_PROPERTIES", "name": "Get User Properties", "description": "Tool to retrieve custom properties associated with a specific user in Klipfolio. Use when you need to access user-defined key-value pairs stored as user properties." }, { "slug": "KLIPFOLIO_GET_USER_ROLES", "name": "Get User Roles", "description": "Tool to retrieve all roles assigned to a specific user in Klipfolio. Use when you need to check what permissions and access levels a user has through their role assignments." }, { "slug": "KLIPFOLIO_GET_USER_TAB_INSTANCES", "name": "Get User Tab Instances", "description": "Tool to retrieve all tab instances associated with a specific user. Use when you need to view dashboard copies assigned to a user's account. Tab instances represent copies of tabs in a user's account." }, { "slug": "KLIPFOLIO_LIST_DATA_SOURCE_INSTANCES", "name": "List Data Source Instances", "description": "Tool to retrieve all data source instances accessible to the authenticated user. Use when you need to list, query, or monitor data source instances with optional filtering by client or data source." }, { "slug": "KLIPFOLIO_LIST_DATA_SOURCES", "name": "List All Data Sources", "description": "This tool retrieves a list of all data sources associated with an authenticated Klipfolio account. It supports optional query parameters for pagination (limit and offset) and filtering by client_id. The response includes details for each data source such as id, name, description, format, connector type, refresh interval, and timestamps." }, { "slug": "KLIPFOLIO_LIST_GROUPS", "name": "List All Groups", "description": "Tool to retrieve all groups from a Klipfolio account. Use when you need to list groups for access management or filtering purposes. Supports filtering by client_id or external_id, and can include member data when used with external_id." }, { "slug": "KLIPFOLIO_LIST_ROLES", "name": "List All Roles", "description": "Tool to retrieve all roles in the company. Use when you need to view available roles, check role configurations, or identify role IDs for permission management." }, { "slug": "KLIPFOLIO_LIST_USERS", "name": "List All Users", "description": "Tool to retrieve all users in the company. Use when you need to view all users, search for specific users by email or external ID, or get user details for access management." }, { "slug": "KLIPFOLIO_REFRESH_DATA_SOURCE_INSTANCE", "name": "Refresh Data Source Instance", "description": "Tool to manually refresh a data source instance in Klipfolio. Use when you need to update the data from its source immediately rather than waiting for the scheduled refresh interval." }, { "slug": "KLIPFOLIO_REFRESH_MULTIPLE_DATA_SOURCES", "name": "Refresh Multiple Data Sources", "description": "This tool allows users to refresh multiple data sources in Klipfolio simultaneously. It queues the specified data sources for refresh, updating their data from their respective sources. At least one data source ID must be provided." }, { "slug": "KLIPFOLIO_RESEND_USER_INVITE", "name": "Resend User Invite", "description": "Tool to resend a user invitation email in Klipfolio. Use when you need to resend an invitation to a user who has not yet accepted their account invite." }, { "slug": "KLIPFOLIO_RESET_USER_PASSWORD", "name": "Reset User Password", "description": "Tool to reset a user's password in Klipfolio. Use when you need to trigger a password reset for a specific user account. This will send a password reset link to the user." }, { "slug": "KLIPFOLIO_UPDATE_DATA_SOURCE", "name": "Update Data Source", "description": "This tool allows you to replace/update the data in an existing Klipfolio data source. It completely replaces the existing data with new data in the specified data source. The tool requires new data (in plain-text or CSV format) to be provided and updates the data source accordingly." }, { "slug": "KLIPFOLIO_UPDATE_DATA_SOURCE_INSTANCE_PROPERTIES", "name": "Update Data Source Instance Properties", "description": "Tool to update custom properties on a Klipfolio data source instance. Use when you need to set or modify key-value property pairs on an existing data source instance." }, { "slug": "KLIPFOLIO_UPDATE_DATA_SOURCE_METADATA", "name": "Update Data Source Metadata", "description": "Tool to update metadata (name, description, refresh_interval) of an existing data source. Use when you need to modify properties of a data source without changing its actual data." }, { "slug": "KLIPFOLIO_UPDATE_DATA_SOURCE_PROPERTIES", "name": "Update Data Source Properties", "description": "Tool to update custom properties for a data source in Klipfolio. Use when you need to modify metadata or configuration properties associated with a specific data source." }, { "slug": "KLIPFOLIO_UPDATE_DATA_SOURCE_SHARE_RIGHTS", "name": "Update Data Source Share Rights", "description": "Tool to update data source share rights in Klipfolio. Use when you need to grant or modify access permissions for users or groups to a specific data source. This allows you to control who can view or edit a data source by specifying user IDs and group IDs with their respective permissions." }, { "slug": "KLIPFOLIO_UPDATE_USER_PROPERTIES", "name": "Update User Properties", "description": "Tool to update custom properties for a user in Klipfolio. Use when you need to modify metadata or configuration properties associated with a specific user account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "klipfolio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Klipfolio API Key", "type": "string", "description": "Your Klipfolio API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "demio", "name": "Demio", "logo": "https://logos.composio.dev/api/demio", "description": "Demio is a webinar software for marketers, offering live and automated sessions, audience engagement tools, and analytics to optimize lead generation", "category": "webinars", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEMIO_CREATE_JOIN_LINK", "name": "Demio Create Join Link", "description": "Tool to register an attendee and obtain their unique Demio join link. Use after confirming a valid event_id." }, { "slug": "DEMIO_GET_EVENT", "name": "Demio: Get Event by ID", "description": "Tool to retrieve event details by ID. Use when you need the full metadata for a specific Demio event." }, { "slug": "DEMIO_LIST_EVENT_DATE_PARTICIPANTS", "name": "List Event Date Participants", "description": "Tool to list participants for a specific event date. Use after scheduling an event session to retrieve attendees." }, { "slug": "DEMIO_LIST_EVENT_DATES", "name": "List Event Dates", "description": "Tool to list all scheduled session dates for a given Demio event. Use when you need the session schedule by event ID." }, { "slug": "DEMIO_LIST_EVENTS", "name": "List Demio Events", "description": "Tool to retrieve a list of Demio events. Use when you need to fetch events optionally filtered by type or paginated." }, { "slug": "DEMIO_PING", "name": "Demio API Ping", "description": "Tool to perform a health check on the Demio API. Use to verify the API is reachable before other calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "API Key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Demio API Key.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "API Secret", "type": "string", "description": "Your Demio API Secret.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "altoviz", "name": "Altoviz", "logo": "https://logos.composio.dev/api/altoviz", "description": "Altoviz is a cloud-based billing and invoicing platform for businesses, offering online payments, expense tracking, document management, and customizable invoices.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 67, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALTOVIZ_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in the Altoviz system. Use when you need to add a new contact with details like name, email, phone, and company information." }, { "slug": "ALTOVIZ_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer in Altoviz. Use type='Company' for business customers (requires companyName) or type='Individual' for personal customers (typically uses firstName/lastName)." }, { "slug": "ALTOVIZ_CREATE_CUSTOMER_FAMILY", "name": "Create Customer Family", "description": "Creates a new customer family in Altoviz for categorizing and organizing customers into groups. Use when you need to create customer segments or categories for better organization." }, { "slug": "ALTOVIZ_CREATE_PRODUCT", "name": "Create Product", "description": "Creates a new product in the Altoviz system. This tool allows for the independent creation of a product with all necessary details." }, { "slug": "ALTOVIZ_CREATE_PRODUCT_FAMILY", "name": "Create Product Family", "description": "Tool to create a new product family in Altoviz. Use when you need to organize products into categories or families for better inventory management." }, { "slug": "ALTOVIZ_CREATE_RECEIPT", "name": "Create Receipt", "description": "Creates a new receipt in the Altoviz system to record customer payments. Use when you need to document received payments and optionally link them to invoices or other documents." }, { "slug": "ALTOVIZ_CREATE_SALE_CREDIT", "name": "Create Sale Credit", "description": "Creates a new draft credit note (avoir) in Altoviz. Credit notes are used to cancel or refund invoices. The credit note is created in draft status and can be modified before being finalized." }, { "slug": "ALTOVIZ_CREATE_SALE_INVOICE", "name": "Create Sale Invoice", "description": "Creates a new draft sale invoice in Altoviz. The invoice is created in draft status and can be modified before being finalized. Use when you need to generate an invoice for a customer with line items." }, { "slug": "ALTOVIZ_DELETE_COLLEAGUE", "name": "Delete Colleague", "description": "Tool to delete a colleague from Altoviz. Use when you need to permanently remove a colleague from the system." }, { "slug": "ALTOVIZ_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a customer from Altoviz. Use when you need to permanently remove a customer record from the system. Use ALTOVIZ_FIND_CUSTOMER first to look up customer IDs by email address if needed." }, { "slug": "ALTOVIZ_DELETE_CUSTOMER_FAMILY", "name": "Delete Customer Family", "description": "Tool to delete a customer family from Altoviz. Use when you need to permanently remove a customer family from the system." }, { "slug": "ALTOVIZ_DELETE_PRODUCT", "name": "Delete Product", "description": "This tool allows you to delete an existing product from Altoviz. The action permanently removes the product from the system." }, { "slug": "ALTOVIZ_DELETE_PRODUCT_FAMILY", "name": "Delete Product Family", "description": "Tool to delete a product family from Altoviz. Use when you need to permanently remove a product family from the system." }, { "slug": "ALTOVIZ_DELETE_RECEIPT", "name": "Delete Receipt", "description": "Tool to delete a receipt from Altoviz. Use when you need to permanently remove a receipt from the system." }, { "slug": "ALTOVIZ_DELETE_SALE_CREDIT", "name": "Delete Draft Sale Credit", "description": "Tool to delete a draft credit from Altoviz. Use when you need to permanently remove a draft credit. Only draft credits can be deleted; finalized credits cannot be removed." }, { "slug": "ALTOVIZ_DELETE_SALE_INVOICE", "name": "Delete Sale Invoice", "description": "Tool to delete a draft sale invoice from Altoviz. Use when you need to permanently remove a draft invoice from the system. Only draft invoices can be deleted; finalized invoices cannot be deleted." }, { "slug": "ALTOVIZ_DELETE_SALE_QUOTE", "name": "Delete Sale Quote", "description": "Tool to delete a sale quote from Altoviz. Use when you need to permanently remove a quote from the system." }, { "slug": "ALTOVIZ_DELETE_SUPPLIER", "name": "Delete Supplier", "description": "Tool to delete a supplier from Altoviz. Use when you need to permanently remove a supplier record from the system." }, { "slug": "ALTOVIZ_DOWNLOAD_PURCHASE_INVOICE", "name": "Download Purchase Invoice", "description": "Tool to download a purchase invoice as a PDF file from Altoviz. Use when you need to retrieve the PDF document of a specific purchase invoice." }, { "slug": "ALTOVIZ_DOWNLOAD_SALE_CREDIT", "name": "Download Sale Credit PDF", "description": "Tool to download a sale credit as a PDF file from Altoviz. Use when you need to retrieve the PDF version of a specific sale credit document." }, { "slug": "ALTOVIZ_DOWNLOAD_SALE_INVOICE", "name": "Download Sale Invoice PDF", "description": "Tool to download a sale invoice as a PDF file from Altoviz. Use when you need to retrieve the PDF document of a specific sale invoice." }, { "slug": "ALTOVIZ_FIND_CONTACT", "name": "Find Contact by Email", "description": "This tool allows searching for contacts in Altoviz using an email address. The action is independently executable and returns contact details if found." }, { "slug": "ALTOVIZ_FIND_CUSTOMER", "name": "Find Customer by Email", "description": "This tool allows you to find a customer in Altoviz by their email address. This is a standalone action that doesn't require any resource IDs or dependencies on other tools." }, { "slug": "ALTOVIZ_FIND_PRODUCT", "name": "Find Product by Number", "description": "Search for a product in Altoviz by its product number/SKU. Returns the first matching product with complete details including name, description, pricing, VAT, unit of measurement, and more. Returns null if no product matches. Use cases: - Look up a specific product by its SKU before creating an invoice - Verify a product exists before referencing it in orders - Retrieve product pricing and tax information" }, { "slug": "ALTOVIZ_FIND_PRODUCT_BY_NUMBER_OR_ID", "name": "Find Product by Number or Internal ID", "description": "Tool to find a product in Altoviz by exact product number or internal ID. Use when you need to look up a product by either its product number/SKU or your internal system ID. At least one of the parameters must be provided." }, { "slug": "ALTOVIZ_FIND_RECEIPT", "name": "Find Receipt by Internal ID", "description": "Tool to find receipts in Altoviz by customer internal ID. Returns a list of receipts associated with the specified internal ID. If no internal ID is provided, may return all receipts. Use when you need to search for receipts by customer identifier." }, { "slug": "ALTOVIZ_FIND_SALE_CREDIT", "name": "Find Sale Credits", "description": "Tool to find sale credits in Altoviz. Use when you need to search for or retrieve credit notes. Can filter by internal ID or return all credits if no filter is provided." }, { "slug": "ALTOVIZ_FIND_SALE_INVOICE", "name": "Find Sale Invoices", "description": "Tool to find sale invoices in Altoviz. Use when you need to search for or retrieve invoices. Can filter by internal ID or return all invoices if no filter is provided." }, { "slug": "ALTOVIZ_FIND_SALE_QUOTE", "name": "Find Sale Quotes", "description": "Tool to find sale quotes in Altoviz. Use when you need to search for or retrieve quotations. Can filter by internal ID or return all quotes if no filter is provided." }, { "slug": "ALTOVIZ_GET_CLASSIFICATIONS", "name": "Get Classifications List", "description": "This tool retrieves a list of classifications from the Altoviz platform. Classifications are essential for producing accounting registers from user-created invoices. It can fetch all classifications or filter them by type." }, { "slug": "ALTOVIZ_GET_COLLEAGUE", "name": "Get Colleague by ID", "description": "Tool to retrieve a colleague's details from Altoviz by their ID. Use this when you need to fetch information about a specific colleague including their contact information, partner status, and metadata." }, { "slug": "ALTOVIZ_GET_CONTACT", "name": "Get Contact by ID", "description": "Tool to retrieve a contact by its unique ID from Altoviz. Use when you need to fetch detailed information about a specific contact." }, { "slug": "ALTOVIZ_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the current authenticated user's information from Altoviz. Use when you need to get details about the currently authenticated user." }, { "slug": "ALTOVIZ_GET_CUSTOMER", "name": "Get Customer by ID", "description": "Tool to retrieve a customer by their ID from Altoviz. Use when you need detailed information about a specific customer." }, { "slug": "ALTOVIZ_GET_CUSTOMER_BY_INTERNAL_ID", "name": "Get Customer by Internal ID", "description": "Tool to retrieve a single customer from Altoviz by their internal ID. Use when you need to fetch detailed information about a specific customer using their internal identifier." }, { "slug": "ALTOVIZ_GET_CUSTOMER_CONTACTS", "name": "Get Customer Contacts", "description": "Tool to retrieve all contacts associated with a specific customer in Altoviz. Use when you need to get contact information for a customer using their customer ID." }, { "slug": "ALTOVIZ_GET_CUSTOMER_FAMILY", "name": "Get Customer Family", "description": "Tool to retrieve a customer family by ID from Altoviz. Use when you need to fetch details of a specific customer family." }, { "slug": "ALTOVIZ_GET_PRODUCT", "name": "Get Product by ID", "description": "Tool to retrieve a product by its unique ID in Altoviz. Use when you need complete details about a specific product including pricing, VAT, units, and inventory information." }, { "slug": "ALTOVIZ_GET_PRODUCT_FAMILY", "name": "Get Product Family by ID", "description": "Tool to retrieve a specific product family by its ID from Altoviz. Use when you need to fetch details about a product category or family grouping." }, { "slug": "ALTOVIZ_GET_RECEIPT", "name": "Get Receipt by ID", "description": "Tool to retrieve a receipt by its ID from Altoviz. Use when you need to fetch details of a specific receipt including amount, payment method, status, and customer information." }, { "slug": "ALTOVIZ_GET_SALE_CREDIT", "name": "Get Sale Credit by ID", "description": "Tool to retrieve a sale credit by its ID from Altoviz. Use when you need to get detailed information about a specific credit." }, { "slug": "ALTOVIZ_GET_SALE_INVOICE", "name": "Get Sale Invoice by ID", "description": "Tool to retrieve a sale invoice by its ID from Altoviz. Use when you need to get detailed information about a specific invoice." }, { "slug": "ALTOVIZ_GET_SETTINGS", "name": "Get Settings", "description": "Tool to retrieve application settings from Altoviz. Use when you need to access configuration for accounting, company information, emailing, sales, social media, or VAT settings." }, { "slug": "ALTOVIZ_GET_SUPPLIER", "name": "Get Supplier by ID", "description": "Tool to retrieve a supplier by their ID from Altoviz. Use when you need detailed information about a specific supplier." }, { "slug": "ALTOVIZ_GET_SUPPLIER_CONTACTS", "name": "Get Supplier Contacts", "description": "Tool to retrieve all contacts associated with a specific supplier in Altoviz. Use when you need to get contact information for a supplier using their supplier ID." }, { "slug": "ALTOVIZ_GET_UNITS", "name": "Get Units List", "description": "This tool retrieves a list of all available units in the Altoviz system. Units are used for product measurements and quantity specifications in various transactions." }, { "slug": "ALTOVIZ_GET_VATS", "name": "Get VAT Rates", "description": "This tool retrieves a list of all available VAT rates from Altoviz. It's essential for creating and managing invoices and quotes where VAT calculations are required. It supports retrieving VAT rates, validating them for different regions, and ensuring correct tax calculations in financial documents." }, { "slug": "ALTOVIZ_LIST_COLLEAGUES", "name": "List Colleagues", "description": "Retrieves a list of colleagues from Altoviz. Supports pagination, sorting, and full-text search. Use this to discover available colleagues, search for specific team members, or list all colleagues in the system." }, { "slug": "ALTOVIZ_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a list of contacts from Altoviz with optional filtering and pagination. Use when you need to browse or search through available contacts." }, { "slug": "ALTOVIZ_LIST_CUSTOMER_FAMILIES", "name": "List Customer Families", "description": "Tool to list customer families from Altoviz. Use when you need to retrieve or search through customer family groups. Supports pagination and full-text search to filter results." }, { "slug": "ALTOVIZ_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to retrieve a paginated list of customers from Altoviz. Use when you need to browse all customers, search for customers by name/email/company, or fetch multiple customers at once. Supports pagination, sorting, and full-text search across customer fields." }, { "slug": "ALTOVIZ_LIST_PRODUCT_FAMILIES", "name": "List Product Families", "description": "Tool to retrieve a list of product families from Altoviz. Use when you need to browse available product families, search for specific families, or get family information for product categorization." }, { "slug": "ALTOVIZ_LIST_RECEIPTS", "name": "List Receipts", "description": "Tool to retrieve a list of receipts from Altoviz. Use this when you need to view, search, or filter receipts by pagination, ordering, or full-text search." }, { "slug": "ALTOVIZ_LIST_SALE_CREDITS", "name": "List Sale Credits", "description": "Tool to retrieve a list of sale credits from Altoviz. Use when you need to view credit notes issued to customers, filter by date range, or find credits for a specific customer. Supports pagination and sorting for efficient data retrieval." }, { "slug": "ALTOVIZ_LIST_SALE_INVOICES", "name": "List Sale Invoices", "description": "Tool to retrieve a list of sale invoices from Altoviz. Use when you need to view invoices issued to customers, filter by date range, status, or find invoices for a specific customer. Supports pagination, sorting, and status filtering for efficient data retrieval." }, { "slug": "ALTOVIZ_LIST_SALE_QUOTES", "name": "List Sale Quotes", "description": "Tool to retrieve a list of sale quotes from Altoviz. Use when you need to view quotes issued to customers, filter by date range, or find quotes for a specific customer. Supports pagination and sorting for efficient data retrieval." }, { "slug": "ALTOVIZ_LIST_SUPPLIERS", "name": "List Suppliers", "description": "Tool to retrieve a paginated list of suppliers from Altoviz. Use when you need to browse all suppliers, search for suppliers by name/email/company, or fetch multiple suppliers at once. Supports pagination, sorting, and full-text search across supplier fields." }, { "slug": "ALTOVIZ_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all configured webhooks from Altoviz. Use when you need to view all webhook configurations, including their URLs, event types, and authentication details." }, { "slug": "ALTOVIZ_REGISTER_WEBHOOK", "name": "Register Webhook", "description": "Tool to register a new webhook in Altoviz. Use when you need to receive real-time notifications for events like customer creation, invoice updates, or product changes." }, { "slug": "ALTOVIZ_TEST_API_KEY", "name": "Test API Key", "description": "Tool to test API key validity and retrieve basic account information. Use this action to verify that the API key is working correctly and to get basic information about the authenticated account." }, { "slug": "ALTOVIZ_UNREGISTER_WEBHOOK", "name": "Unregister Webhook", "description": "Tool to unregister a webhook from Altoviz. Use when you need to remove a webhook configuration. Either webhook ID or URL must be provided to identify which webhook to unregister." }, { "slug": "ALTOVIZ_UPDATE_COLLEAGUE", "name": "Update Colleague Information", "description": "Updates an existing colleague's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this action to modify colleague details such as contact information, partner status, and associated metadata." }, { "slug": "ALTOVIZ_UPDATE_CUSTOMER", "name": "Update Customer Information", "description": "Updates an existing customer's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Important: For Individual customers, you must provide either last_name or company_name. Setting company_name will change the customer type to Company. Use ALTOVIZ_FIND_CUSTOMER first to look up customer IDs by email address." }, { "slug": "ALTOVIZ_UPDATE_RECEIPT", "name": "Update Receipt", "description": "Updates an existing receipt in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this to modify receipt details such as amount, date, payment method, status, or notes." }, { "slug": "ALTOVIZ_UPDATE_SALE_CREDIT", "name": "Update Sale Credit", "description": "Tool to update a draft credit note in Altoviz. Use when you need to modify an existing draft credit. Only draft credits can be updated; finalized credits cannot be modified." }, { "slug": "ALTOVIZ_UPDATE_SUPPLIER", "name": "Update Supplier Information", "description": "Updates an existing supplier's information in Altoviz. Only fields that are provided will be updated; omitted fields retain their current values. Use this when you need to modify supplier details such as contact information, address, payment terms, or internal notes." }, { "slug": "ALTOVIZ_UPLOAD_PURCHASE_INVOICE", "name": "Upload Purchase Invoice", "description": "Tool to upload and create a new purchase invoice from a file (PDF or image format). Use when you need to create a purchase invoice by uploading a document." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "altoviz_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Altoviz API Key", "type": "string", "description": "The API key used for authenticating requests to the Altoviz API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "d2lbrightspace", "name": "D2L Brightspace", "logo": "https://logos.composio.dev/api/d2lbrightspace", "description": "D2L Brightspace is a learning management system that provides a comprehensive suite of tools for educators to create, manage, and deliver online courses and learning experiences.", "category": "education", "authSchemes": [ "OAUTH2" ], "toolCount": 45, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "D2LBRIGHTSPACE_COPY_ROLE", "name": "Copy Role", "description": "Creates a new role copied from an existing role in D2L Brightspace. Notes: - The new role will not have any capabilities upon the old role from which it was created - Some capabilities will be copied for the new role (e.g., if old role users could impersonate other old role users, new role users will be able to impersonate other new role users) - Additional capabilities must be manually created after copying Requires OAuth2 scope: - role:detail:create Available in API versions unstable (LMS v10.4.10+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_A_COURSE_OFFERING", "name": "Create Course Offering", "description": "Creates a new course offering in D2L Brightspace. Notes: - Course code limitations: max 50 chars, no special chars: \\ : * ? \" < > | ' # , % & - Path: leave empty if path enforcement is enabled - SemesterId: provide null if not using the Semester element - CanSelfRegister: required for API v1.28+, not supported before v1.28 Requires OAuth2 scope: - orgunits:course:create Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_A_COURSE_TEMPLATE", "name": "Create Course Template", "description": "Creates a new course template in D2L Brightspace. Notes: - Course template code limitations: max 50 chars, no special chars: \\ : * ? \" < > | ' # , % & - Path: leave empty if path enforcement is enabled Requires OAuth2 scope: - orgunits:coursetemplate:create Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_GRADE_OBJECT", "name": "Create Grade Object", "description": "Creates a new grade object for a particular org unit. The grade object can be one of four types: 1. Numeric: For numeric grades with max points 2. PassFail: For pass/fail assessments 3. SelectBox: For predefined grade options 4. Text: For text-only feedback Returns a GradeObject JSON block containing the created grade object's data, including its assigned ID. Requires OAuth2 scope: - grades:gradeobjects:write Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_QUIZ", "name": "Create Quiz", "description": "Creates a new quiz in D2L Brightspace. Notes: - NumberOfAttemptsAllowed must be between 1 and 10 (inclusive) or null for unlimited - Password must not be empty or whitespace if provided - NotificationEmail must be a valid email address if provided - TimeLimitValue: 0 for no limit (with IsEnforced false), or 1-9999 for enforced limit - DeductionPercentage must be between 0 and 100 if provided - As of LE API v1.71: - LateLimitMinutes is ignored - LateSubmissionOption 1 is treated as 2 (AutoSubmitAttempt) - SubmissionGracePeriod is not used - PagingTypeId added in LE API v1.78 - Date fields should be in UTC format Requires OAuth2 scopes: - quizzing:quizzes:read - quizzing:quizzes:create Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_QUIZ_CATEGORY", "name": "Create Quiz Category", "description": "Creates a new quiz category in D2L Brightspace. Returns a QuizCategoryReadData JSON block containing: - CategoryId: The ID of the created category - Name: The name of the category - SortOrder: The sort order value Requires OAuth2 scopes: - quizzing:quizzes:read - quizzing:quizzes:create Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_CREATE_USER", "name": "Create User", "description": "Creates a new user entity in D2L Brightspace. Requires OAuth2 scope: - users:userdata:create Available in API versions 1.46+ (LMS v20.24.3+) Notes: - FirstName and LastName are used as legal names - ExternalEmail must be null or a valid email address - OrgDefinedId must be unique across the organization if provided - Preferred names must be set separately after user creation" }, { "slug": "D2LBRIGHTSPACE_DELETE_A_COURSE_TEMPLATE", "name": "Delete Course Template", "description": "Deletes a course template from D2L Brightspace. Requires OAuth2 scope: - orgunits:course:delete Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_COURSE", "name": "Delete Course", "description": "Deletes a course offering from D2L Brightspace. Requires OAuth2 scope: - orgunits:course:delete Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_GRADE_OBJECT", "name": "Delete Grade Object", "description": "Deletes a specific grade object from an org unit. Requires OAuth2 scope: - grades:gradeobjects:delete Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_QUIZ", "name": "Delete Quiz", "description": "Deletes a quiz from D2L Brightspace. Requires OAuth2 scope: - quizzing:quizzes:delete Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_QUIZ_CATEGORY", "name": "Delete Quiz Category", "description": "Deletes a quiz category from D2L Brightspace. Requires OAuth2 scope: - quizzing:quizzes:delete Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_USER", "name": "Delete User", "description": "Deletes a user entity from D2L Brightspace. Requires OAuth2 scope: - users:userdata:delete Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_DELETE_USER_DEMOGRAPHICS", "name": "Delete User Demographics", "description": "Deletes one or more of a particular user's associated demographics entries. Notes: - If entry_ids are provided, only those specific entries will be deleted - If entry_ids are not provided, all demographics entries for the user will be deleted Requires OAuth2 scope: - demographics:user:delete Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_A_COURSE_OFFERING", "name": "Get Course Offering", "description": "Retrieves a specific course offering from D2L Brightspace. Returns a CourseOffering JSON block with the course's information. Requires OAuth2 scope: - orgunits:course:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_A_COURSE_TEMPLATE", "name": "Get Course Template", "description": "Retrieves a course template from D2L Brightspace. Returns a CourseTemplate JSON block with the template's information. Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_COURSE_SCHEMA", "name": "Get Course Schema", "description": "Retrieves the list of parent org unit type constraints for course offerings. Returns a JSON array of SchemaElement blocks defining the allowed parent organizational unit types for courses. Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_COURSE_TEMPLATE_SCHEMA", "name": "Get Course Template Schema", "description": "Retrieves the list of parent org unit type constraints for course offerings built on this template. Returns a JSON array of SchemaElement blocks defining the allowed parent organizational unit types for course templates. Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_CURRENT_USER", "name": "Get Current User Information", "description": "Retrieves the current user context's user information from D2L Brightspace. Requires one of these OAuth2 scopes: - users:profile:read - users:own_profile:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_ENROLLED_ROLES", "name": "Get Enrolled Roles", "description": "Retrieves a list of all enrolled user roles the calling user can view in an org unit. Returns a JSON array of Role data blocks containing the properties of all user roles that the calling user context has permission to view and that are currently enrolled in the provided org unit. Requires OAuth2 scope: - role:detail:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_GRADE_ACCESS", "name": "Get Grade Access", "description": "Retrieves a list of users with access to a specified grade. Returns an ObjectListPage containing UserAccess blocks. Can optionally filter by specific user ID or role ID. Requires OAuth2 scope: - grades:access:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_GRADE_OBJECT", "name": "Get Grade Object", "description": "Retrieves a specific grade object for a particular org unit. Returns a GradeObject JSON block containing the grade object's properties. Requires OAuth2 scope: - grades:gradeobjects:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_GRADE_OBJECTS", "name": "Get Grade Objects", "description": "Retrieves all current grade objects for a particular org unit. Returns an array of grade objects. Requires OAuth2 scope: - grades:gradeobjects:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_GRADE_SETUP", "name": "Get Grade Setup", "description": "Retrieves the grades configuration for an org unit. Returns a GradeSetupInfo JSON block containing the grades setup information. Requires OAuth2 scope: - grades:gradesettings:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_GRADE_STATISTICS", "name": "Get Grade Statistics", "description": "Retrieves statistics for a specified grade item. Returns a GradeStatisticsInfo JSON block containing statistical data about the grade item. Requires OAuth2 scope: - grades:gradestatistics:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_ORG_UNIT_DEMOGRAPHICS", "name": "Get Org Unit Demographics", "description": "Retrieves all demographics entries for users enrolled in a particular org unit. Notes: - Filters are applied cumulatively (all conditions must match) - When using ID lists in filters, matching any ID in the list satisfies that filter - For example: with roleIds=[1,2], userIds=[3,4], search=\"value\": * Users must have role 1 OR 2 (either role matches) * AND must have ID 3 OR 4 (either ID matches) * AND must have a field matching \"value\" - Results are paged; use bookmark parameter for subsequent pages Requires OAuth2 scope: - demographics:orgunit:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ", "name": "Get Quiz", "description": "Retrieves a specific quiz from an org unit. Returns a QuizReadData JSON block containing the quiz's properties. Requires OAuth2 scope: - quizzing:quizzes:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_ACCESS", "name": "Get Quiz Access", "description": "Retrieves a list of users with access to a specified quiz. Returns an ObjectListPage JSON block containing a list of UserAccess blocks. Can filter by specific user ID or role ID. Requires OAuth2 scope: - quizzing:access:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_ATTEMPT", "name": "Get Quiz Attempt", "description": "Retrieves a specific quiz attempt. Returns a QuizAttemptData JSON block containing the attempt's properties. Requires OAuth2 scope: - quizzing:attempts:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_ATTEMPTS", "name": "Get Quiz Attempts", "description": "Retrieves a list of attempts for a quiz. Can optionally filter attempts for a specific user. Returns an ObjectListPage JSON block containing a list of QuizAttemptData blocks. Requires OAuth2 scope: - quizzing:attempts:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_CATEGORIES", "name": "Get Quiz Categories", "description": "Retrieves all quiz categories belonging to an org unit. Returns an ObjectListPage JSON block containing a list of QuizCategoryReadData blocks. Requires OAuth2 scope: - quizzing:quizzes:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_CATEGORY", "name": "Get Quiz Category", "description": "Retrieves a specific quiz category from an org unit. Returns a QuizCategoryReadData JSON block containing the category's properties. Requires OAuth2 scope: - quizzing:quizzes:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZ_QUESTIONS", "name": "Get Quiz Questions", "description": "Retrieves all questions in a quiz. Returns an ObjectListPage JSON block containing a list of QuestionData blocks. Requires OAuth2 scope: - quizzing:quizzes:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_QUIZZES", "name": "Get Quizzes", "description": "Retrieves all quizzes belonging to an org unit. Returns an ObjectListPage JSON block containing a list of QuizReadData blocks. Requires OAuth2 scope: - quizzing:quizzes:read Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_GET_ROLE_BY_ID", "name": "Get Role by ID", "description": "Retrieves a particular user role from D2L Brightspace by its ID. Requires OAuth2 scope: - role:detail:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_ROLES", "name": "Get Roles", "description": "Retrieves a list of all known user roles in D2L Brightspace. Returns a list of Role data blocks containing the properties of all user roles that the calling user context has permission to manage. Requires OAuth2 scope: - role:detail:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_USER_BY_ID", "name": "Get User by ID", "description": "Retrieves data for a particular user from D2L Brightspace. Requires OAuth2 scope: - users:userdata:read Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_GET_USERS", "name": "Get Users", "description": "Retrieves data for one or more users from D2L Brightspace. Requires OAuth2 scope: - users:userdata:read Available in API versions 1.46+ (LMS v20.24.3+) Notes: - All search parameters (orgDefinedId, userName, externalEmail) are optional - Returns paginated results when using bookmark parameter" }, { "slug": "D2LBRIGHTSPACE_UPDATE_A_COURSE_OFFERING", "name": "Update Course Offering", "description": "Updates an existing course offering in D2L Brightspace. Notes: - Course code limitations: max 50 chars, no special chars: \\ : * ? \" < > | ' # , % & - StartDate/EndDate: null values won't overwrite existing dates - CanSelfRegister: required for API v1.27+, not supported before v1.27 - Description: ignored in API versions 1.25 and earlier Requires OAuth2 scope: - orgunits:course:update Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_A_COURSE_TEMPLATE", "name": "Update Course Template", "description": "Updates an existing course template in D2L Brightspace. Notes: - This action completely replaces the template's data with the provided values - Course template code limitations: max 50 chars, no special chars: \\ : * ? \" < > | ' # , % & Available in API versions 1.46+ (LMS v20.24.3+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_GRADE_OBJECT", "name": "Update Grade Object", "description": "Updates a specific grade object. The grade object can be one of four types: 1. Numeric: For numeric grades with max points 2. PassFail: For pass/fail assessments 3. SelectBox: For predefined grade options 4. Text: For text-only feedback Note: The provided data completely replaces the existing grade object's data. Returns a GradeObject JSON block containing the updated grade object's data. Requires OAuth2 scope: - grades:gradeobjects:write Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_GRADE_SETUP", "name": "Update Grade Setup", "description": "Updates the grades configuration for an org unit. Expects a GradeSetupInfo JSON block containing: - GradingSystem: The grading system type - IsNullGradeZero: Whether null grades should be treated as zero - DefaultGradeSchemeId: ID of the default grade scheme Returns the updated GradeSetupInfo JSON block. Requires OAuth2 scope: - grades:gradesettings:write Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_QUIZ", "name": "Update Quiz", "description": "Updates an existing quiz in D2L Brightspace. Notes: - This action updates only the provided quiz properties - NumberOfAttemptsAllowed must be between 1 and 10 (inclusive) or null for unlimited - Password must not be empty or whitespace if provided - NotificationEmail must be a valid email address if provided - TimeLimitValue: 0 for no limit (with IsEnforced false), or 1-9999 for enforced limit - DeductionPercentage must be between 0 and 100 if provided - Cannot restrict shared quizzes for special access - Cannot set auto-submit for quizzes with mandatory questions - As of LE API v1.71: - LateLimitMinutes is ignored - LateSubmissionOption 1 is treated as 2 (AutoSubmitAttempt) - SubmissionGracePeriod is not used - PagingTypeId added in LE API v1.78 - Date fields should be in UTC format Requires OAuth2 scopes: - quizzing:quizzes:read - quizzing:quizzes:write Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_QUIZ_CATEGORY", "name": "Update Quiz Category", "description": "Updates an existing quiz category in D2L Brightspace. Returns a QuizCategoryReadData JSON block containing: - CategoryId: The ID of the category - Name: The name of the category - SortOrder: The sort order value Requires OAuth2 scopes: - quizzing:quizzes:read - quizzing:quizzes:write Available in API versions 1.75+ (LMS v20.24.5+)" }, { "slug": "D2LBRIGHTSPACE_UPDATE_USER", "name": "Update User", "description": "Updates an existing user entity in D2L Brightspace. Requires OAuth2 scope: - users:userdata:update Available in API versions 1.46+ (LMS v20.24.3+) Notes: - FirstName and LastName update preferred names if set, otherwise update legal names - ExternalEmail must be null or a valid email address - OrgDefinedId must be unique across the organization if provided - Pronouns: use empty string (\"\") to reset, null to keep existing value" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "d2l_brightspace_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "quizzing:quizzes:delete,quizzing:quizzes:read,quizzing:quizzes:create" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "D2L Brightspace Domain", "type": "string", "description": "Your D2L Brightspace domain (e.g., brightspace.university.edu)", "required": true, "default": null }, { "name": "version", "displayName": "API Version", "type": "string", "description": "D2L Brightspace API version (e.g., 1.75)", "required": true, "default": "1.75" } ], "optional": [] } } } ] }, { "slug": "blackboard", "name": "Blackboard", "logo": "https://logos.composio.dev/api/blackboard", "description": "Anthology Adopt powered by Pendo allows institutions to gain insights on Blackboard Learn usage and take action through in-app messages, digital walkthrough guides, and tooltips.", "category": "education", "authSchemes": [ "OAUTH2" ], "toolCount": 314, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BLACKBOARD_ACCESS_CONTROLLED_COURSE_ANNOUNCEMENTS", "name": "Course Announcements Access", "description": "Retrieves a list of announcements for a specific course in the Blackboard learning management system. This endpoint allows users to access important messages, updates, or notifications related to a particular course. It should be used when there's a need to fetch all announcements or check for recent updates in a course. The tool returns announcement data but does not provide functionality for creating, updating, or deleting announcements. Keep in mind that the returned list may be paginated if there are many announcements, and additional calls might be necessary to retrieve all data." }, { "slug": "BLACKBOARD_ACCESS_COURSE_ANNOUNCEMENTS_BASED_ON_PERMISSIONS", "name": "Get course announcement by id", "description": "Retrieves a specific announcement from a particular course in the Blackboard Learn system. This endpoint allows users to fetch detailed information about a single announcement, including its content, creation date, and any attachments. It is particularly useful for displaying announcement details in external applications or for retrieving updated information about a previously known announcement. The endpoint requires both the course ID and the announcement ID to ensure precise retrieval of the intended announcement. It should be used when specific announcement details are needed, rather than for listing all announcements in a course." }, { "slug": "BLACKBOARD_ADD_CHILD_COURSE", "name": "Update child course in parent", "description": "This endpoint updates the relationship between a parent course and its child course in the Blackboard Learning Management System. It is used to modify existing course hierarchies, allowing administrators to restructure course organizations or adjust course relationships. The endpoint should be used when there's a need to change the parent-child association between two courses, such as moving a sub-course to a different parent course or updating the hierarchical structure of courses. It's important to note that this endpoint only modifies existing relationships and does not create new courses or new child-parent associations if they don't already exist in some form." }, { "slug": "BLACKBOARD_ATTACH_FILE", "name": "Upload file to attempt in gradebook", "description": "This endpoint allows for the upload and attachment of files to a specific attempt within a course's gradebook in the Blackboard learning management system. It is used to associate submitted work, supporting documents, or any relevant files with a student's attempt on an assignment, quiz, or other assessable items. The endpoint should be called after the initial file upload process, using the generated uploadId to link the file to the specific attempt. It's particularly useful for instructors or system integrators who need to programmatically attach files to student submissions, or for building custom submission interfaces that interact with Blackboard's backend. This endpoint does not handle the actual file transfer; it assumes the file has already been uploaded to Blackboard's system and is now being associated with a specific attempt." }, { "slug": "BLACKBOARD_AUTHORIZATION_CODE", "name": "Get oauth2 authorization code", "description": "Initiates the OAuth 2.0 authorization code flow for the Blackboard API. This endpoint is used to obtain an authorization code, which is a crucial step in the OAuth 2.0 authentication process. The authorization code can later be exchanged for an access token, granting limited access to user resources on the Blackboard platform. This endpoint should be called when an application needs to request permission from a user to access their Blackboard data. It's important to note that this endpoint does not directly provide access to user data; it only initiates the authorization process. The response will typically include a redirect URL containing the authorization code, which the client application must handle appropriately." }, { "slug": "BLACKBOARD_CONDITIONAL_GRADE_ACCESS", "name": "Get user gradebook for course", "description": "Retrieves the gradebook information for a specific user within a particular course in Blackboard. This endpoint allows instructors or authorized personnel to access individual student grade data, including assignment scores, overall course grade, and any custom gradebook columns. It should be used when detailed grade information for a single student in a specific course is needed, such as for progress monitoring or grade reviews. The endpoint does not modify any data and is read-only. Note that this tool only provides grade data and does not include other course or user information beyond what's directly related to the gradebook." }, { "slug": "BLACKBOARD_COPY_COURSE", "name": "Copy course with specific options", "description": "The CourseCopyTool allows you to create a copy of a Blackboard course with fine-grained control over which elements are included in the copy. This endpoint is used when you need to duplicate a course, either creating a new course or overwriting an existing one, while selectively choosing which components to transfer. It's particularly useful for course administrators or instructors preparing for a new semester or creating variations of an existing course. The tool provides extensive customization options, allowing you to include or exclude specific course elements such as content areas, assessments, gradebook settings, and more. However, it does not handle enrollment of students or instructors in the new course - this must be done separately after the copy is complete." }, { "slug": "BLACKBOARD_COURSE_AND_ORG_DUPLICATION_PERMISSIONS_UPDATE", "name": "Copy course by courseid", "description": "This endpoint creates a copy of an existing course in the Blackboard learning management system. It allows instructors or administrators to duplicate course content, settings, and structure into a new or existing course. Use this endpoint when you need to replicate a course for a new semester, create a template from an existing course, or backup course content. The operation copies all copyable elements of the source course into the target course specified by the courseId. Note that this process may take some time for large courses, and certain elements (such as student data or time-sensitive content) may not be copied. The endpoint does not provide real-time progress updates on the copying process." }, { "slug": "BLACKBOARD_COURSE_ANNOUNCEMENT_CREATION_PERMISSION", "name": "Create course announcement", "description": "Creates a new announcement within a specified course in the Blackboard learning management system. This endpoint allows instructors or course administrators to post important messages, updates, or notifications to all enrolled students. The announcement can be customized with a title, rich text body using BbML, and specific availability settings. Use this endpoint when you need to communicate course-wide information, such as syllabus changes, assignment reminders, or important dates. The announcement can be created as a draft for later publication or immediately made visible based on the specified availability settings." }, { "slug": "BLACKBOARD_COURSE_DATA_ACCESS_CONTROL_BY_USER_ENTITLEMENT", "name": "Retrieve course list", "description": "Retrieves a list of courses from the Blackboard Learn platform. This endpoint allows developers to fetch information about courses available in the learning management system. It can be used to integrate course data into external applications, create custom dashboards, or sync course information with other systems. The endpoint returns read-only data and does not modify any course information. While it provides a comprehensive list of courses, it may not include detailed information about course content, assignments, or student data, which might require additional API calls. Use this endpoint when you need to obtain an overview of courses in the Blackboard Learn environment, such as for course catalogs or administrative purposes." }, { "slug": "BLACKBOARD_COURSE_ENDPOINT_ENTITLEMENT_ACCESS", "name": "Course endpoint entitlement access", "description": "Retrieves detailed information about a specific course in the Blackboard Learn platform using its unique identifier. This endpoint allows users to fetch comprehensive course data, which may include the course name, code, description, enrollment information, instructor details, and other relevant metadata. It's particularly useful for applications that need to display or process course information, such as student portals, administrative tools, or integration with other educational systems. The endpoint should be used when specific course details are required, but it will not provide information about student performance or course content. Note that the exact scope of information returned may depend on the user's permissions within the Blackboard system. name = \"course_endpoint_entitlement_access\" display_name = \"Course Endpoint Entitlement Access\"" }, { "slug": "BLACKBOARD_COURSE_ENTITLEMENT_AND_DATA_ACCESS_CONTROL", "name": "Retrieve course details by id", "description": "Retrieves detailed information about a specific course in the Blackboard Learning Management System. This endpoint allows users to fetch comprehensive data related to a course, such as its title, description, start and end dates, enrollment information, and other course-specific attributes. It is particularly useful for applications that need to display or process course information outside of the Blackboard interface. This tool should be used when detailed course information is required for a known course ID, but it will not provide a list of all courses or modify any course data." }, { "slug": "BLACKBOARD_COURSE_GROUP_INITIATION", "name": "Create course group", "description": "Creates a new group within a specified course in the Blackboard Learn system. This endpoint allows for detailed customization of group properties, including its name, description, availability, and enrollment settings. It's particularly useful for organizing students into smaller units for collaborative work, discussions, or specific course activities. The function supports creating both regular groups and group sets, with options for self-enrollment or instructor-managed membership. Use this when setting up course structures that require student groupings, whether for project teams, study groups, or other collaborative activities within a course." }, { "slug": "BLACKBOARD_COURSE_GROUP_MODIFICATION", "name": "Update group details by course and group id", "description": "Updates the properties of a specific group within a Blackboard Learn course. This endpoint allows modification of group details such as name, description, availability, and enrollment settings. It's particularly useful for adjusting group configurations after initial creation, managing student access, and controlling enrollment options. The endpoint supports partial updates, allowing you to modify only the specified fields without affecting others. Use this when you need to change group settings, update availability, or adjust enrollment limits and signup options for an existing group in a course." }, { "slug": "BLACKBOARD_COURSE_MODIFICATION_PERMISSION_CHECKS", "name": "Update course information by courseid", "description": "The PatchCourse endpoint allows for updating specific details and settings of an existing course in the Blackboard Learn system. It is used when modifications to course properties such as name, description, availability, enrollment options, or localization settings are needed. This endpoint supports partial updates, meaning only the fields that require changes need to be included in the request body. It's particularly useful for making adjustments to course settings after initial creation or for updating course information based on changes in the academic calendar or institutional policies. However, it's important to note that some settings, like allowing guests or observers, are only modifiable for Classic courses, and certain operations may be restricted when a course is in a closed and complete state." }, { "slug": "BLACKBOARD_COURSE_MODIFICATION_PERMISSIONS", "name": "Update course information", "description": "Updates an existing course in the Blackboard Learn system. This endpoint allows modification of various course attributes including basic information, availability settings, enrollment options, and localization preferences. It's used to adjust course details after initial creation, enabling instructors or administrators to manage course lifecycle and accessibility. The endpoint requires the course ID and accepts a range of optional parameters for fine-tuning course properties. It's particularly useful for making bulk changes to course settings or adapting courses to changing educational needs. Note that some settings, like allowing guests, are only modifiable for specific course types (Classic vs Ultra)." }, { "slug": "BLACKBOARD_COURSE_ORG_SYNC_REMOVAL", "name": "Delete course by courseid", "description": "Deletes a specific course from the Blackboard Learn platform. This endpoint should be used when an administrator or authorized user needs to permanently remove a course from the system, including all associated content, enrollments, and data. It is particularly useful for cleaning up old or unused courses, or when restructuring the course catalog. Caution should be exercised when using this endpoint, as the deletion is irreversible and will result in the loss of all course-related information. This operation may have significant implications for student records and institutional data, so it should only be used after careful consideration and in compliance with institutional policies." }, { "slug": "BLACKBOARD_COURSE_OR_ORGANIZATION_CREATION", "name": "Create a class course", "description": "Creates a new course in the Blackboard Learn system with specified settings and configurations. This endpoint allows administrators or instructors to set up a course with various parameters including its basic information, availability, enrollment options, and localization settings. It's particularly useful when setting up new courses for an academic term or creating specialized learning environments. The endpoint requires at minimum a course ID and name, but offers extensive customization through optional parameters. It's important to note that some settings, like Ultra status, can significantly impact the course's interface and functionality, so careful consideration should be given when configuring these options." }, { "slug": "BLACKBOARD_COURSE_USER_REMOVAL", "name": "Delete user from course", "description": "Removes a specific user from a particular course in the Blackboard learning management system. This endpoint should be used when an administrator or instructor needs to unenroll a student, remove a teaching assistant, or disassociate any user from a course. It's particularly useful for managing course rosters, handling student withdrawals, or updating staff assignments. The operation is irreversible, so it should be used with caution. This endpoint does not delete the user from the entire Blackboard system; it only removes their association with the specified course. It's important to note that this action may affect the user's access to course materials and their course-related data." }, { "slug": "BLACKBOARD_CREATE_ADAPTIVE_RELEASE_ACL_USER_PREDICATE", "name": "Update user criterion in adaptive rule", "description": "This endpoint updates a user-specific criterion within an adaptive release rule for a particular content item in a Blackboard course. It allows for fine-tuning of content visibility based on individual user conditions. Use this endpoint when you need to modify existing user-based criteria for adaptive release rules, such as changing performance thresholds or adjusting access conditions for a specific student. This tool is specifically for updating existing criteria and should not be used for creating new rules or criteria. Note that this endpoint focuses solely on user-specific criteria and does not handle group-based or date-based release conditions." }, { "slug": "BLACKBOARD_CREATE_ADAPTIVE_RELEASE_RULE_CRITERIA", "name": "Create adaptive release criteria by rule", "description": "This endpoint allows for the creation of new adaptive release criteria for a specific rule within a course's content in Blackboard. It is used to define conditions under which course content will be made available to students, such as completion of prerequisites, achievement of certain grades, or specific dates. The endpoint should be used when instructors or course designers want to implement or modify conditional access to course materials. It's important to note that this endpoint only creates criteria for existing adaptive release rules and does not create the rules themselves." }, { "slug": "BLACKBOARD_CREATE_ANNOUNCEMENT", "name": "Create system announcement", "description": "Creates a new system-wide announcement in the Blackboard Learn environment. This endpoint allows administrators to compose and configure announcements that can be displayed to users across the platform. The announcement can be customized with rich text content, specific visibility durations, and display locations such as the login page or within courses. Use this endpoint when you need to broadcast important information, updates, or alerts to all users or specific segments of your Blackboard Learn community. It's particularly useful for system-wide notifications, maintenance alerts, or important institutional announcements. Note that creating excessive or irrelevant announcements may lead to information overload for users, so use this feature judiciously." }, { "slug": "BLACKBOARD_CREATE_ASSIGNMENT", "name": "Create assignment in course contents", "description": "Creates a new assignment within a specified Blackboard course. This endpoint allows instructors to set up detailed assignments with customizable settings for availability, grading, and plagiarism detection. It supports rich text instructions using BbML, adaptive release for controlled content visibility, and integration with originality reporting tools. Use this endpoint when you need to programmatically create assignments with specific requirements or to batch create multiple assignments. The endpoint provides extensive customization options but requires careful consideration of parameters to ensure the assignment is set up correctly for student access and evaluation." }, { "slug": "BLACKBOARD_CREATE_ATTENDANCE_RECORD", "name": "Update user meeting attendance status", "description": "Adds a user to a specific meeting within a Blackboard course and sets their attendance status. This endpoint is essential for managing attendance and user participation in course meetings. It allows instructors or authorized users to update a student's attendance record for a particular meeting. The endpoint should be used when recording attendance for course meetings, updating a user's attendance status, or integrating external attendance tracking systems with Blackboard. It provides a way to maintain accurate attendance records, which can be crucial for course management and student engagement tracking." }, { "slug": "BLACKBOARD_CREATE_CALENDAR_ITEM", "name": "Create calendar items", "description": "This endpoint creates a new calendar item in the Blackboard platform. It allows users to add various types of events, such as course-related activities, personal appointments, or institution-wide events, to specific calendars within the system. The endpoint supports creating one-time events as well as recurring items with customizable recurrence patterns. It also facilitates the integration of Learning Tools Interoperability (LTI) links, enabling the association of external learning tools with calendar items. This endpoint should be used when adding new events or activities to Blackboard calendars, but it cannot be used to modify existing calendar items or to create items for the read-only GradebookColumn type." }, { "slug": "BLACKBOARD_CREATE_CATEGORY", "name": "Add catalog category by type", "description": "Creates a new category in the Blackboard catalog system. This endpoint allows administrators to define and organize content categories within the learning management system. Use this tool to add a new category with specific properties such as title, description, availability, and access restrictions. It's particularly useful for structuring course offerings, organizing resources, or creating custom catalogs within Blackboard. The created category can be set to appear on the front page and can be restricted to specific institutional roles, providing flexible control over content organization and access." }, { "slug": "BLACKBOARD_CREATE_CHILD", "name": "Create child content in course", "description": "Creates a new content item within a specified course and parent content in the Blackboard Learn platform. This endpoint allows for the creation of various types of content, such as documents, external links, folders, and assignments. It provides extensive control over content properties, including title, body, description, availability, and positioning within the course structure. The endpoint supports rich text formatting through BbML and offers features like review status and adaptive release settings. It should be used when adding new materials, resources, or organizational elements to a course. Note that the content type is determined by the contentHandler, and some properties may have different effects depending on the course experience (Classic vs. Ultra)." }, { "slug": "BLACKBOARD_CREATE_CHILD_NODE", "name": "Add child node in hierarchy", "description": "Creates a new child node within the institutional hierarchy of Blackboard Learn. This endpoint allows administrators to expand and organize the structure of their educational institution by adding new nodes as children of existing ones. It is particularly useful for creating department, faculty, or program-level nodes within a larger institutional framework. The endpoint requires at least a title for the new node and can optionally include an external ID, description, and specific parent ID. Use this when you need to add a new organizational unit or level to your institution's hierarchy in Blackboard." }, { "slug": "BLACKBOARD_CREATE_COLUMN_ATTEMPT", "name": "Submit gradebook attempt", "description": "Creates a new attempt for a specific gradebook column in a Blackboard course. This endpoint allows instructors or authorized users to add a new attempt record for a student's assignment or assessment. It can be used to manually enter grades, provide feedback, or update the status of an attempt. The endpoint is particularly useful for managing individual student submissions, entering grades for offline assignments, or updating attempt statuses in bulk. Note that some fields, such as the attemptReceipt, are read-only and will be generated by the system rather than accepted as input." }, { "slug": "BLACKBOARD_CREATE_COLUMN_GROUP_ATTEMPT", "name": "Post group attempts for gradebook column", "description": "The CreateGroupAttempt endpoint allows for the creation or update of a group attempt for a specific gradebook column in a Blackboard Learn course. This tool is essential for managing group submissions, tracking their progress, and facilitating the grading process. It supports various aspects of group work, including submission status tracking, grading, feedback, and metadata management. The endpoint is particularly useful for instructors and course administrators who need to manage group assignments and assessments within the Blackboard learning environment. It provides flexibility in handling different stages of the submission process, from initial attempt to final grading, and supports both regular and Ultra course formats. However, users should be aware that some status options are deprecated and may cause unexpected behavior if used." }, { "slug": "BLACKBOARD_CREATE_CONTENT", "name": "Create course content in course", "description": "Creates new content within a specified Blackboard course. This endpoint allows for the addition of various types of content, including documents, external links, folders, and more, with detailed configuration options. It supports rich text formatting through BbML, hierarchical content structure, and granular control over content availability and accessibility. Use this endpoint when adding new materials, resources, or structural elements to a course. It's particularly useful for bulk content creation or programmatic course setup. Note that while it offers extensive customization, some advanced features may depend on the Blackboard Learn version in use." }, { "slug": "BLACKBOARD_CREATE_CONTENT_GROUP", "name": "Update content group association", "description": "This endpoint updates the association between a specific content item and a group within a Blackboard Learn course. It is used to modify existing content-group relationships, enabling instructors or administrators to manage group-specific content access or visibility. The endpoint requires the course ID, content ID, and group ID to be specified in the URL path, with the content ID and group ID repeated in the request body for confirmation. This operation is particularly useful for customizing content delivery to different student groups or managing group-based learning activities within a course. Note that this endpoint only updates existing associations and cannot create new content or groups." }, { "slug": "BLACKBOARD_CREATE_COURSE", "name": "Create a new course", "description": "Creates a new course in the Blackboard Learn system with specified attributes and settings. This endpoint allows for the detailed configuration of a course, including its basic information, availability, enrollment options, and localization settings. It supports both Classic and Ultra course views and provides flexibility in defining course duration, access control, and integration with external systems. Use this endpoint when setting up a new course or organization within Blackboard, ensuring all required parameters are provided and optional parameters are used as needed to fully customize the course setup." }, { "slug": "BLACKBOARD_CREATE_COURSE_MEETING", "name": "Create course meeting", "description": "Creates a new meeting for a specific course within the Blackboard learning management system. This endpoint allows you to schedule and define the details of a course meeting, including its title, description, start and end times, and an optional external link. Use this when you need to add a new meeting or event to a course's calendar or schedule. The created meeting will be associated with the specified course and visible to course participants. This tool is specifically for creating new meetings and cannot be used to update existing ones or retrieve meeting information." }, { "slug": "BLACKBOARD_CREATE_DATA_SOURCE", "name": "Create data source with external id", "description": "Creates a new data source in the Blackboard Learn system. This endpoint is used to establish a unique identifier for an external data source, which can then be referenced in other API calls or integrations. It's particularly useful when setting up integrations between Blackboard and external systems, such as Student Information Systems (SIS) or other educational tools. The created data source can be used for various purposes, including batch operations, data synchronization, or as a reference point for imported content. This endpoint should be used when initially setting up a new integration or when a new external system needs to be recognized within Blackboard. It's important to note that the externalId must be unique across all data sources in the Blackboard instance, and once created, it cannot be changed." }, { "slug": "BLACKBOARD_CREATE_DISCUSSION", "name": "Create discussion forum in course", "description": "Creates a new discussion forum within a specified course in the Blackboard Learning Management System. This endpoint allows instructors or course administrators to set up a discussion topic, define its availability, and optionally make it gradable. It's particularly useful for initiating course-related discussions, Q&A sessions, or collaborative learning activities. The endpoint requires a course ID in the path and accepts JSON payload with discussion details. It should be used when setting up new discussion areas for a course, but not for posting individual messages within an existing discussion. Note that while you can set the initial topic message, many properties of the discussion are auto-generated and read-only." }, { "slug": "BLACKBOARD_CREATE_DOMAIN_CONFIG", "name": "Create lti domain configuration", "description": "Creates or updates an LTI (Learning Tools Interoperability) domain configuration in Blackboard Learn. This endpoint allows administrators to set up and manage integrations with external learning tools, configuring various aspects such as user data sharing, security settings, and service permissions. It's used when setting up a new LTI tool or modifying an existing integration to control how the tool interacts with Blackboard and what data it can access. The configuration includes options for managing user privacy, tool authentication, and access to Blackboard services like membership and grading." }, { "slug": "BLACKBOARD_CREATE_FILE_ATTACHMENT", "name": "Add course content attachment", "description": "Adds an attachment to a specific content item within a Blackboard Learn course. This endpoint allows developers to programmatically upload and associate files with course materials, enhancing the content available to students. It should be used when integrating external systems with Blackboard Learn to automate the process of adding supplementary materials, documents, or resources to course content. The endpoint requires specifying both the course and the content item to which the attachment will be added, ensuring precise placement of materials within the course structure. Note that this operation likely has size limitations for attachments and may be subject to storage quotas set by the institution's Blackboard Learn administrator." }, { "slug": "BLACKBOARD_CREATE_GRADE_COLUMN", "name": "Add new gradebook column for course", "description": "Creates a new grade column in a course's gradebook within the Blackboard Learn platform. This endpoint allows instructors or administrators to set up various types of grade columns, including manual entry, calculated grades, and those based on student attempts. It supports features such as anonymous grading, external tool integration, and custom formulas for grade calculation. The endpoint is particularly useful when setting up a new assignment or assessment that requires a corresponding grade column in the course gradebook. It should be used to establish the grading structure for a course, but not for entering actual grades (which would be done through a separate endpoint). Note that some features may have version-specific availability, and certain settings (like includeInCalculations) may behave differently between Classic and Ultra courses." }, { "slug": "BLACKBOARD_CREATE_GRADE_NOTATION", "name": "Post grade notation to course gradebook", "description": "Creates a new grade notation in the gradebook for a specific course in Blackboard. This endpoint allows instructors or administrators to add custom performance codes and their corresponding descriptions to the grading system. It's particularly useful for implementing non-standard grading schemes or providing additional context to traditional letter or number grades. The created grade notation can then be used when assigning grades to students, offering more nuanced feedback on their performance. This tool should be used when setting up or modifying the grading structure for a course, especially in cases where standard grading notations are insufficient to capture the full range of student performance or special grading circumstances." }, { "slug": "BLACKBOARD_CREATE_GRADE_SCHEMA", "name": "Create course gradebook schema", "description": "Creates a new gradebook schema for a specific course in Blackboard Learn. This endpoint allows instructors or administrators to define custom grading structures tailored to their course needs. It supports various grading scales including percentage, score-based, tabular (letter grades), text-based, and complete/incomplete systems. The created schema can then be applied to assignments and other gradable items within the course. This tool is essential for setting up the grading framework at the beginning of a course or when implementing a new grading strategy. It should be used carefully as it forms the foundation for grade calculations and student grade representations throughout the course." }, { "slug": "BLACKBOARD_CREATE_GRADING_PERIOD", "name": "Create grading period in course gradebook", "description": "Creates a new grading period within a specific course's gradebook in the Blackboard Learn system. This endpoint allows instructors or administrators to define and organize temporal segments for grade collection and management. It's particularly useful for structuring the academic year into distinct grading intervals, such as semesters, quarters, or specific assessment periods. The created grading period can be used to associate gradable items (columns) with specific timeframes, facilitating organized grade tracking and reporting. This endpoint should be used when setting up a new course structure or adjusting existing grading timelines. It's important to note that while the endpoint offers flexibility in date handling, careful consideration should be given to the dateMode parameter and its implications on start and end dates." }, { "slug": "BLACKBOARD_CREATE_GROUP", "name": "Create course group in course", "description": "Creates a new group within a specified course in the Blackboard learning management system. This endpoint allows instructors or administrators to set up and configure groups for collaborative work, discussions, or other course-related activities. The function provides extensive customization options for group availability, enrollment methods, and signup processes. It's particularly useful for organizing students into smaller teams for projects, facilitating peer-to-peer learning, or managing course sections. Note that while many parameters are optional, careful configuration is recommended to ensure the group serves its intended purpose within the course structure." }, { "slug": "BLACKBOARD_CREATE_GROUP_MEMBERSHIP", "name": "Update user in course group", "description": "This endpoint updates a user's information within a specific group in a Blackboard course. It allows administrators or instructors to modify user details, roles, or permissions for a particular user in the context of a course group. Use this endpoint when you need to change a user's status, role, or other attributes within a group, such as updating their group membership type or adjusting their group-specific permissions. This operation is specifically for modifying existing user data and should not be used for adding new users to a group or creating new groups. The endpoint requires the course ID, group ID, and user ID to precisely target the user's information in the correct context." }, { "slug": "BLACKBOARD_CREATE_GROUP_PREDICATE", "name": "Modify course content adaptive release group criteria", "description": "This endpoint updates the criteria for a specific group within an adaptive release rule for a particular content item in a Blackboard course. It allows instructors or course administrators to modify how and when course content is made available to different groups of students based on various conditions. Use this endpoint when you need to adjust the release criteria for course materials for a specific student group, such as changing date restrictions, grade requirements, or other access conditions. This operation is crucial for maintaining flexible and personalized learning paths within a course. Note that this endpoint only updates existing criteria and cannot be used to create new adaptive release rules or groups." }, { "slug": "BLACKBOARD_CREATE_GROUP_SET", "name": "Create group set", "description": "Creates a new group set within a specified course in the Blackboard Learn platform. This endpoint allows instructors or administrators to set up a structured group of students for collaborative work, discussions, or other course activities. The group set can be configured with various settings controlling its visibility, enrollment method, and description. Use this when you need to organize students into groups for project work, facilitate peer reviews, or create focused discussion spaces within a course. It's particularly useful for larger classes where multiple small groups are needed for effective collaboration and management." }, { "slug": "BLACKBOARD_CREATE_GROUP_SET_CHILD", "name": "Create group in course", "description": "Creates a new group within a specified course group set in the Blackboard Learn platform. This endpoint allows instructors or administrators to set up groups with customizable settings for student collaboration and activities. It provides options for controlling group availability, enrollment methods, and detailed descriptions using BbML formatting. Use this endpoint when you need to create structured student groups within a course, whether for project work, discussions, or other collaborative activities. The created group can be configured for instructor-managed enrollment or student self-enrollment, with optional signup sheets and member visibility settings." }, { "slug": "BLACKBOARD_CREATE_MEMBERSHIP", "name": "Update course category details", "description": "This endpoint updates an existing course within a specific category in the Blackboard catalog. It allows administrators or authorized users to modify course details such as title, description, or other attributes associated with the course. The endpoint should be used when changes need to be made to a course that is already placed within a category in the catalog structure. It's important to note that this endpoint only updates existing courses and cannot be used to create new courses or move courses between categories. Proper authorization is likely required to perform this operation, as it involves modifying the course catalog." }, { "slug": "BLACKBOARD_CREATE_MESSAGE", "name": "Post course message with bbml support", "description": "Creates a new message within a specific Blackboard course. This endpoint allows users to compose and send messages to course participants, supporting rich text formatting through BbML, file attachments, and flexible recipient management. It's ideal for course announcements, discussions, or direct communication between instructors and students. The endpoint should be used when there's a need to initiate or continue a conversation within the context of a particular course. It provides comprehensive options for message creation, including subject, body content with rich formatting, recipient lists (To, CC, BCC), and file attachments. However, it does not support scheduling messages for future delivery or sending to recipients outside the course context." }, { "slug": "BLACKBOARD_CREATE_MESSAGE_REPLY", "name": "Post discussion message reply", "description": "Creates a reply to a specific message within a Blackboard course discussion. This endpoint allows users to contribute to ongoing discussions by posting responses to existing messages. It supports both course-wide and group-specific discussions, with options to control the visibility and state of the reply. The content of the reply must be formatted in BbML (Blackboard Markup Language) for rich text support. Use this endpoint when a user wants to respond to a particular message in a discussion thread, either immediately publishing the reply or saving it as a draft for later review." }, { "slug": "BLACKBOARD_CREATE_NODE", "name": "Create institutional hierarchy node", "description": "Creates a new node in the institutional hierarchy of Blackboard. This endpoint allows for the addition of organizational elements such as departments, courses, or other structural units within an educational institution's Blackboard system. It is used to build and maintain the hierarchical structure that organizes content and permissions. The endpoint requires a JSON payload with node details and supports optional parameters for flexibility in node creation and positioning within the hierarchy." }, { "slug": "BLACKBOARD_CREATE_NODE_COURSE_ASSOCIATION", "name": "Update course primary node association", "description": "This endpoint updates the association between a specific course and a node in the Blackboard institutional hierarchy. It allows you to set or change whether the specified node is the primary association for the given course. Use this endpoint when you need to modify the primary status of a course-node relationship, such as when restructuring your institution's course organization or correcting misallocations. The endpoint is particularly useful for managing courses that span multiple nodes or departments. Note that this operation only affects the 'primary' status of the association and does not create or delete associations between courses and nodes." }, { "slug": "BLACKBOARD_CREATE_NODE_USER_ASSOCIATION", "name": "Update institutional hierarchy user node", "description": "Updates a user's information or association within a specific node of the institutional hierarchy in Blackboard. This endpoint is used to modify a user's relationship or details within a particular organizational unit, such as a department, school, or other institutional division. It allows for the management of user data in the context of the institution's structure, enabling administrators to keep user information accurate and up-to-date within the hierarchy. This tool should be used when there's a need to change a user's status, role, or other attributes specific to their position within a certain part of the institution. It's particularly useful for large educational organizations with complex hierarchical structures." }, { "slug": "BLACKBOARD_CREATE_OBSERVER", "name": "Update user observer", "description": "Updates the observer relationship between a user and an observer in the Blackboard Learn platform. This endpoint is used to modify existing observer connections, such as changing the level of access or updating the relationship status between a student and a parent/guardian. It should be used when there's a need to adjust the monitoring permissions or details of an established observer relationship. The endpoint doesn't create new observer relationships; it only modifies existing ones. Note that this operation may have implications on privacy settings and data access within the Blackboard environment." }, { "slug": "BLACKBOARD_CREATE_PLACEMENT", "name": "Create new lti placement", "description": "Creates a new LTI (Learning Tools Interoperability) placement in the Blackboard Learn system. This endpoint allows integration of external tools and services into the learning management system, enhancing the capabilities and user experience. It supports various types of placements, including content handlers, system tools, and course navigation elements. Use this endpoint when you need to add a new external tool or service to Blackboard Learn, specifying its type, location, and configuration settings. The created placement can be used for various purposes such as content delivery, student engagement, or administrative tasks, depending on the specified type." }, { "slug": "BLACKBOARD_CREATE_PRONOUN", "name": "Post pronouns details", "description": "Creates a new pronoun entry in the Blackboard Learning Management System. This endpoint is used to add new pronouns to the system's user identity management, supporting inclusive and diverse user representation. It should be used when administrators or authorized users need to introduce new pronoun options for users to select from. The endpoint incorporates an approval workflow, allowing for review of new pronoun entries before they become available for general use. Note that this endpoint only creates the pronoun entry; it does not assign pronouns to specific users or modify existing user profiles." }, { "slug": "BLACKBOARD_CREATE_QUESTION", "name": "Post course assessment question", "description": "This endpoint creates a new question within an existing Blackboard assessment. It supports various question types and allows for customization of content, feedback, and scoring. Use it to build or modify assessments by adding new questions. Note that while many parameters are optional, the 'text' field is required. The question type determines its structure and behavior, but specific configurations may require additional documentation." }, { "slug": "BLACKBOARD_CREATE_RUBRIC", "name": "Create course rubric with details", "description": "Creates a new rubric for a specific course in Blackboard Learn. This endpoint allows instructors or course designers to define a structured evaluation tool with customizable criteria, performance levels, and scoring methods. The rubric can be used for various assessment types, including assignments, discussions, and projects. It supports different rubric types (Numeric, Percentage, Range-based) to accommodate diverse grading needs. The created rubric can include detailed descriptions for each performance level and criterion, ensuring clear expectations and consistent grading across evaluators. This tool is essential for setting up comprehensive and transparent assessment frameworks within Blackboard courses." }, { "slug": "BLACKBOARD_CREATE_RUBRIC_ASSOCIATION", "name": "Create rubric association in course", "description": "Creates a new association between a rubric and a specific course content item in the Blackboard learning management system. This endpoint allows instructors or course designers to link a rubric to elements such as assignments, discussions, or other gradable items within a course. It's used to establish grading criteria, set visibility options for students, and connect the rubric to the appropriate gradebook column or question. The association can be configured for grading purposes or as an informational guide, with flexible options for when and how students can view the rubric and its evaluation. This tool is essential for implementing consistent assessment strategies across course content and providing clear expectations to students." }, { "slug": "BLACKBOARD_CREATE_RUBRIC_EVALUATIONS", "name": "Create rubric evaluation for course", "description": "Creates or updates a rubric evaluation for a specific course, rubric, and rubric association in the Blackboard Learn platform. This endpoint allows instructors or authorized users to submit detailed evaluations of student work using predefined rubrics. It supports various types of rubrics (Numeric, Numeric Range, Percentage, Percentage Range) and allows for granular scoring and feedback at the cell level. The evaluation can be associated with individual, group, or question attempts, providing flexibility for different assessment scenarios. Use this endpoint when you need to programmatically submit or modify rubric-based evaluations, such as grading assignments or providing structured feedback on assessments." }, { "slug": "BLACKBOARD_CREATE_RULE", "name": "Add adaptive release rule to course content", "description": "Creates a new adaptive release rule for a specific content item within a Blackboard course. This endpoint allows instructors or course administrators to set up conditions for releasing course content to students based on various criteria. The rule is identified by a title and associated with a particular content item in a course. Use this when you need to control the visibility or accessibility of course materials based on specific conditions. Note that while this endpoint creates the rule, setting up the specific conditions for release would likely require additional API calls or configuration." }, { "slug": "BLACKBOARD_CREATE_TERM", "name": "Create term with availability and description", "description": "Creates a new term in the Blackboard Learn system with the specified attributes. This endpoint allows administrators to define academic periods or sessions, setting up the structure for courses and student enrollments. It provides options for customizing term availability and duration, which is crucial for managing access to educational content over time. The created term can be associated with a specific data source, enabling integration with external systems. Use this endpoint when setting up a new academic year, semester, or any other defined study period in your institution's Blackboard environment." }, { "slug": "BLACKBOARD_CREATE_USER", "name": "Create new user profile", "description": "Creates a new user account in the Blackboard Learn system with detailed profile information. This endpoint allows for the creation of user profiles with comprehensive data, including personal details, educational information, institutional and system roles, contact information, and localization preferences. It should be used when adding new users to the system, such as during student enrollment, faculty onboarding, or administrative staff addition. The endpoint requires at least the user's name, username, and password, but allows for extensive customization of the user profile with optional fields. It's important to note that some fields have specific formats or enumerated values that must be adhered to for successful user creation." }, { "slug": "BLACKBOARD_DELETE_ACL_USER_PREDICATE", "name": "Delete user criterion from course content rule", "description": "Removes a specific user from an adaptive release rule criterion for a particular content item within a course. This endpoint is used to modify the conditions under which course content is made available to individual students. It should be used when an instructor or administrator wants to exclude a user from a previously set adaptive release criterion. This action may be necessary when updating course accessibility or correcting mistakenly applied criteria. The endpoint does not provide information about the rule or criterion itself, nor does it return any data about the removed user. It's important to note that this operation is irreversible, and re-adding the user would require a separate API call." }, { "slug": "BLACKBOARD_DELETE_ADAPTIVE_RELEASE_RULE_CRITERION", "name": "Delete adaptive release rule criterion", "description": "Deletes a specific criterion from an adaptive release rule for a content item within a Blackboard course. This endpoint allows instructors or course administrators to remove individual conditions that control when content becomes available to students. Use this when you need to modify an existing adaptive release rule by removing a particular criterion, such as a date restriction or grade requirement. The deletion is permanent and cannot be undone, so use with caution. This operation does not affect other criteria within the same rule or other rules applied to the content item." }, { "slug": "BLACKBOARD_DELETE_ALL_ATTENDANCE_BY_USER_ID", "name": "Delete user course meetings", "description": "Deletes all meeting attendance records for a specific user within a particular course in the Blackboard system. This endpoint is used when an administrator or instructor needs to remove all attendance data for a student, which may be necessary for course transfers, data corrections, or privacy compliance. It should be used with caution as it permanently removes all attendance records for the specified user in the given course. This operation cannot be undone, so it's important to verify the necessity of this action before proceeding. The endpoint does not provide any information about the deleted records or return a list of affected meetings." }, { "slug": "BLACKBOARD_DELETE_ALL_MEETINGS_IN_COURSE", "name": "Delete course meeting", "description": "Deletes all meetings associated with a specific course in the Blackboard Learn platform. This endpoint should be used when an instructor or administrator needs to remove virtual sessions or scheduled meetings from a course, potentially at the end of a term or when restructuring the course schedule. It's important to note that this operation may be irreversible and could affect all meetings linked to the specified course. Use with caution, as it might impact student access to past or upcoming virtual sessions. The endpoint does not provide options for selective deletion of individual meetings, so it should only be used when intending to remove all meetings from the course." }, { "slug": "BLACKBOARD_DELETE_ALL_RECORDS_IN_MEETING", "name": "Delete all records in meeting", "description": "Deletes all attendance records in the course meeting for a given meeting Id. The 'course.attendance.DELETE' entitlement is required to delete attendance records. **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_DELETE_ANNOUNCEMENT", "name": "Delete announcement by id", "description": "Deletes a specific announcement from the Blackboard Learning Management System (LMS) using its unique identifier. This endpoint should be used when an instructor, administrator, or authorized user needs to permanently remove an announcement from a course or the system. It's particularly useful for managing outdated information or correcting mistakenly posted announcements. The deletion is irreversible, so users should exercise caution when invoking this endpoint. This tool does not provide a way to archive or recover deleted announcements, nor does it return the content of the deleted announcement." }, { "slug": "BLACKBOARD_DELETE_ATTACHMENT", "name": "Delete gradebook attempt file", "description": "Deletes a specific file associated with an attempt in a course's gradebook within the Blackboard Learn environment. This endpoint should be used when an instructor or administrator needs to remove a file that was incorrectly uploaded or is no longer relevant to a student's attempt. It permanently removes the file from the system, so it should be used with caution. This operation cannot be undone, and the file cannot be recovered once deleted. The endpoint does not provide any information about the deleted file or confirm its previous existence." }, { "slug": "BLACKBOARD_DELETE_ATTENDANCE_RECORD", "name": "Delete attendance record", "description": "Delete attendance record for meeting.It will delete meeting attendance within a course meeting. The 'course.attendance.DELETE' entitlement is required to delete Attendance Record. **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_DELETE_CALENDAR_ITEM", "name": "Delete calendar item by type and id", "description": "This endpoint deletes a specific calendar item from the Blackboard Learn system. It allows users to remove events from personal, course, organization, or institution calendars. The endpoint should be used when a calendar item needs to be permanently removed from the system, such as canceling an event or correcting erroneously created entries. It's important to note that this operation is irreversible, and once an item is deleted, it cannot be recovered through the API. Users should exercise caution when invoking this endpoint to avoid unintentional loss of calendar data. The endpoint requires precise identification of the calendar item through its type and unique ID, ensuring accurate removal of the intended event." }, { "slug": "BLACKBOARD_DELETE_CATEGORY", "name": "Delete category by type and id", "description": "This endpoint deletes a specific category from the Blackboard catalog based on the provided category type and ID. It should be used when an administrator or authorized user needs to remove a category that is no longer needed or relevant. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for catalog maintenance, such as removing outdated course categories or reorganizing the catalog structure. It does not return any content upon successful deletion, typically responding with a 204 No Content status. Be aware that deleting a category may affect related items or sub-categories, depending on the Blackboard system's configuration." }, { "slug": "BLACKBOARD_DELETE_CONTENT", "name": "Delete course content by id", "description": "Deletes a specific content item from a course in the Blackboard learning management system. This endpoint should be used when an administrator or authorized user needs to remove outdated, incorrect, or unnecessary learning materials from a course. It permanently removes the specified content, so it should be used with caution. This operation cannot be undone, and once content is deleted, it cannot be recovered through the API. The endpoint requires both a valid course ID and content ID to function correctly." }, { "slug": "BLACKBOARD_DELETE_CONTENT_GROUP", "name": "Delete course content group by id", "description": "This endpoint deletes a specific group associated with a content item within a Blackboard course. It is used to remove group assignments or collaborations tied to particular course content. The operation is irreversible and should be used with caution, as it will permanently remove the group's association with the content item. This can affect student access and collaboration settings for the specified content. The endpoint should be used when reorganizing course structure, removing outdated group assignments, or cleaning up course content. It does not delete the content item itself or the course, only the group's association with the content. Note that this operation may impact students currently assigned to the group, potentially affecting their access to the content item." }, { "slug": "BLACKBOARD_DELETE_COURSE", "name": "Delete course by id", "description": "Deletes a specific course from the Blackboard learning management system. This endpoint permanently removes all course data, including content, assignments, and student records associated with the specified course. It should be used with caution, typically at the end of an academic term or when a course is no longer needed. Once a course is deleted, it cannot be recovered through the API. This operation is irreversible and should only be performed by users with appropriate permissions, such as system administrators or course managers." }, { "slug": "BLACKBOARD_DELETE_COURSE_MEETING", "name": "Delete course meeting", "description": "This endpoint deletes a specific meeting within a course in the Blackboard learning management system. It should be used when an administrator or instructor needs to remove a scheduled meeting from a course, such as cancelling a virtual class session or removing an outdated meeting entry. The operation is irreversible, so it should be used with caution. This endpoint only performs the deletion and does not return any information about the deleted meeting or provide options for rescheduling. It's important to note that this action may affect student schedules and course planning, so proper communication with course participants is advised before deleting a meeting." }, { "slug": "BLACKBOARD_DELETE_DATA_SOURCE", "name": "Delete data source by id", "description": "Deletes a specific data source from the Blackboard Learn platform. This endpoint should be used when an administrator needs to permanently remove a data source, such as those related to users, courses, or enrollments, from the system. It's crucial to use this endpoint with caution as the deletion is irreversible and may impact associated data. This operation is particularly useful for cleaning up obsolete or erroneous data sources, but should not be used on active data sources that are still in use. Note that deleting a data source does not automatically remove the data that was previously associated with it." }, { "slug": "BLACKBOARD_DELETE_DOMAIN_CONFIG", "name": "Delete lti domain by id", "description": "Deletes a specific LTI (Learning Tools Interoperability) domain from the Blackboard learning management system. This endpoint is used to remove an existing domain configuration, which may include associated LTI tool integrations and settings. It should be used when an institution needs to discontinue the use of a particular LTI domain, perhaps due to changes in tool usage, administrative restructuring, or cleanup of unused integrations. Caution should be exercised when using this endpoint, as deletion is permanent and may affect existing course content or tool accessibility that relies on the deleted domain." }, { "slug": "BLACKBOARD_DELETE_FILE_ATTACHMENT", "name": "Delete course content attachment", "description": "Deletes a specific attachment from a content item within a course in Blackboard Learn. This endpoint should be used when an instructor or authorized user needs to remove an attachment from course materials. It permanently removes the specified attachment from the content, and this action cannot be undone. The endpoint requires precise identification of the course, content item, and attachment using their respective IDs. It's important to note that this operation only removes the attachment and does not affect the content item itself or other attachments." }, { "slug": "BLACKBOARD_DELETE_GRADE_COLUMN", "name": "Delete gradebook column by id", "description": "Deletes a specific gradebook column from a course in the Blackboard Learn system. This endpoint should be used when an instructor or administrator needs to permanently remove a column from the gradebook, such as when a graded item is no longer relevant or was created in error. It's important to note that this action is irreversible and will permanently delete all associated grade data for all students in the course. Use this endpoint with caution, as it may have significant implications for course grading and student records. This operation cannot be undone, so it's recommended to have a backup of the data before proceeding with the deletion." }, { "slug": "BLACKBOARD_DELETE_GRADE_NOTATION", "name": "Delete course grade notation by id", "description": "Deletes a specific grade notation from a course's gradebook in Blackboard Learn. This endpoint should be used when an instructor or administrator needs to remove an existing grade notation that is no longer relevant or was created in error. It permanently removes the specified grade notation from the system, so it should be used with caution. This operation cannot be undone, so it's important to verify the correct gradeNotationId before deletion. The endpoint does not return the deleted data; it typically only confirms the successful deletion or reports an error if the deletion fails." }, { "slug": "BLACKBOARD_DELETE_GRADING_PERIOD", "name": "Delete gradebook period by course id", "description": "Deletes a specific gradebook period from a course in the Blackboard Learning Management System. This endpoint allows administrators or instructors to remove a grading period that is no longer needed or was created in error. It should be used when restructuring the gradebook's temporal organization or when cleaning up unused grading periods. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return the deleted data, only performs the deletion action." }, { "slug": "BLACKBOARD_DELETE_GROUP", "name": "Delete course group by ids", "description": "This endpoint deletes a specific group from a course in the Blackboard learning management system. It is used to remove a group that is no longer needed or has been created in error. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for course administrators or instructors who need to manage group structures within their courses. It should not be used to temporarily disable a group; instead, it permanently removes the group and all associated data from the course. Note that this action does not affect the individual user accounts of group members, only the group itself within the specified course." }, { "slug": "BLACKBOARD_DELETE_GROUP_MEMBERSHIP", "name": "Delete user from course group", "description": "Removes a specific user from a particular group within a course in the Blackboard learning management system. This endpoint is used when an instructor or administrator needs to remove a student or participant from a group, perhaps due to course changes, group reorganization, or student withdrawal. It's important to note that this action only removes the user from the specified group, not from the entire course. Use this endpoint with caution, as it immediately revokes the user's access to group-specific content and collaborations." }, { "slug": "BLACKBOARD_DELETE_GROUP_PREDICATE", "name": "Delete course content adaptive release rule", "description": "Removes a specific group from a criterion within an adaptive release rule for a particular content item in a Blackboard course. This endpoint is used to modify the access conditions for course content by eliminating a group's inclusion in the release criteria. It should be used when an instructor or course administrator wants to adjust the visibility rules for content, specifically by removing a group's access under certain conditions. This operation is permanent and immediately affects the adaptive release settings for the specified content." }, { "slug": "BLACKBOARD_DELETE_GROUP_SET", "name": "Delete group set in course", "description": "This endpoint deletes a specific group set within a course in the Blackboard learning management system. It permanently removes the entire group set, including all associated groups and their memberships, from the specified course. This operation should be used with caution as it cannot be undone and will affect all students assigned to groups within the set. The endpoint is particularly useful for instructors or administrators who need to restructure group assignments or remove outdated group configurations. It should not be used to temporarily disable group functionality, as deletion is permanent. Note that this operation does not affect the course structure itself or any other group sets within the course." }, { "slug": "BLACKBOARD_DELETE_MEMBERSHIP", "name": "Delete course from category list", "description": "Removes a specific course from a designated category within the Blackboard Learning Management System (LMS) catalog. This endpoint is used when you need to disassociate a course from a particular category, which can be useful for reorganizing the course catalog, updating course classifications, or managing access control based on categories. It should be used cautiously as it permanently removes the course-category association. This operation does not delete the course itself from the system; it only removes the association between the course and the specified category. The endpoint requires precise identification of both the category (through categoryType and categoryId) and the course (through courseId) to ensure accurate removal of the correct association." }, { "slug": "BLACKBOARD_DELETE_MESSAGE", "name": "Delete course message by id", "description": "This endpoint deletes a specific message within a course in the Blackboard learning management system. It should be used when an instructor or authorized user needs to remove a particular message from a course's communication thread. The deletion is permanent and cannot be undone, so it should be used with caution. This tool is particularly useful for managing course content, removing outdated or inappropriate messages, or maintaining a clean communication environment within the course. Note that this action may be subject to user permissions, and the ability to delete messages might be restricted to certain roles within the course." }, { "slug": "BLACKBOARD_DELETE_NODE", "name": "Delete institutional hierarchy node by nodeid", "description": "Deletes a specific node from the institutional hierarchy in Blackboard Learn. This endpoint should be used when an administrator needs to remove a node, such as a department, school, or program, from the institution's organizational structure. It permanently removes the specified node and its association within the hierarchy. Caution should be exercised when using this endpoint, as deleting a node may have cascading effects on courses, users, or other entities associated with that node. It's important to note that this operation cannot be undone, so it should only be used when you are certain that the node and its data are no longer needed." }, { "slug": "BLACKBOARD_DELETE_NODE_ADMIN", "name": "Delete institution node admin", "description": "Removes an administrator's access from a specific node in the institutional hierarchy of Blackboard Learn. This endpoint should be used when you need to revoke administrative privileges for a user at a particular level of the institution's structure. It's particularly useful for managing access control and maintaining the security of the institutional hierarchy. The operation is permanent and immediate, so it should be used with caution. This endpoint does not delete the user account itself; it only removes the administrative role for the specified node. Note that this action may affect the user's ability to manage courses, users, or other resources associated with the given node and its sub-nodes." }, { "slug": "BLACKBOARD_DELETE_NODE_COURSE_ASSOCIATION", "name": "Delete specific course node", "description": "Removes a specific course from a designated node in the institutional hierarchy of Blackboard Learn. This endpoint is used for managing the organizational structure of courses within an institution's Blackboard environment. It allows administrators to disassociate a course from a particular hierarchical node, which can be useful for reorganizing content, archiving old courses, or correcting misplaced courses. The operation is permanent and should be used with caution, as it may affect the visibility and accessibility of the course within the institutional structure. This endpoint does not delete the course itself from the system; it only removes the association between the course and the specified hierarchical node." }, { "slug": "BLACKBOARD_DELETE_NODE_USER_ASSOCIATION", "name": "Delete user from institutional node", "description": "This endpoint removes a specified user from a particular node within the Institutional Hierarchy of Blackboard Learn. It is used to disassociate a user (such as a student, faculty member, or staff) from a specific organizational unit (e.g., school, department, or program) in the institution's structure. This operation is typically performed when a user no longer needs access to or association with a particular part of the institution, such as when a student changes departments or a faculty member leaves a specific program. The endpoint does not delete the user from the system entirely, but only removes their association with the specified node. It's important to note that this action may affect the user's access rights and visibility within the Blackboard Learn environment related to the specific node." }, { "slug": "BLACKBOARD_DELETE_OBSERVER", "name": "Delete user observer", "description": "This endpoint removes a specific observer from a user's list of observers in the Blackboard learning management system. It is used to terminate the observer-user relationship, revoking the observer's ability to monitor or view the specified user's activities and information. The endpoint should be called when an institution or administrator needs to discontinue an observer's access to a particular user's data, such as when a parent's observing privileges for a student are revoked or when a teacher's monitoring of a student is no longer required. This operation is irreversible, and re-establishing the observer relationship would require creating a new connection. The endpoint does not provide any information about the observer or user; it simply performs the deletion of the relationship." }, { "slug": "BLACKBOARD_DELETE_PLACEMENT", "name": "Delete lt i placement by id", "description": "This endpoint deletes a specific Learning Tools Interoperability (LTI) placement from the Blackboard Learn platform. LTI placements define where and how external learning tools are integrated within the Blackboard user interface. Use this endpoint when you need to remove an LTI tool integration from a specific location in the Blackboard environment. This action is permanent and cannot be undone, so it should be used with caution. The deletion will remove the placement configuration but does not affect the LTI tool provider registration itself. Be aware that removing a placement may impact users who rely on the tool at that specific location within Blackboard." }, { "slug": "BLACKBOARD_DELETE_PRONOUN", "name": "Delete pronoun by id", "description": "Deletes a specific pronoun setting from the Blackboard learning management system. This endpoint is used to remove a user's pronoun preference from the system, identified by a unique pronounId. It should be used when a pronoun setting is no longer needed, such as when a user wants to change their pronoun preference or when an administrator needs to remove an incorrect or outdated setting. The operation is irreversible, so caution should be exercised when using this endpoint. It's important to note that this endpoint only deletes the pronoun setting and does not affect any other user data or settings in the system." }, { "slug": "BLACKBOARD_DELETE_QUESTION", "name": "Delete course assessment question", "description": "Deletes a specific question from an assessment within a Blackboard course. This endpoint allows instructors or course administrators to remove individual questions from existing assessments, which can be useful for updating or refining assessment content. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful when modifying assessments after they've been created, such as removing outdated or incorrect questions. It should not be used to temporarily hide questions; instead, consider using other Blackboard features for that purpose. Note that deleting a question may affect the overall structure and scoring of the assessment, so it's important to review and adjust the assessment settings after using this endpoint." }, { "slug": "BLACKBOARD_DELETE_RUBRIC", "name": "Delete course rubric", "description": "Deletes a specific rubric associated with a given course in the Blackboard Learn system. This endpoint should be used when an instructor or administrator needs to permanently remove a rubric from a course, such as when the rubric is no longer relevant or has been replaced. The operation is irreversible, so caution should be exercised before deletion. This endpoint does not return the deleted rubric data; it only performs the deletion operation. It's important to note that deleting a rubric may impact any assignments or assessments that were using it, so those should be updated accordingly after deletion." }, { "slug": "BLACKBOARD_DELETE_RUBRIC_ASSOCIATION", "name": "Delete rubric association", "description": "Deletes a specific rubric association within a course in the Blackboard Learn platform. This endpoint removes the link between a rubric and its associated item (such as an assignment or assessment) in a given course. It should be used when an instructor or administrator needs to disassociate a rubric from a particular course item, perhaps due to changes in assessment criteria or course structure. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return any content upon successful deletion, indicating that the association has been removed from the system." }, { "slug": "BLACKBOARD_DELETE_TERM", "name": "Delete term by termid", "description": "The DeleteTerm endpoint removes a specific academic term from the Blackboard learning management system. It should be used when an administrator needs to permanently remove a term that is no longer needed, such as an outdated or erroneously created term. This operation is irreversible and will delete all associated data for the specified term, including course associations and enrollment information. It's crucial to use this endpoint with caution, as it may have far-reaching consequences on the institution's academic records and student data. Before deletion, ensure that all necessary data has been backed up or migrated if required." }, { "slug": "BLACKBOARD_DELETE_USER", "name": "Delete user by id", "description": "This endpoint permanently deletes a user account from the Blackboard Learn platform. It should be used when an administrator needs to remove a user's access and information from the system, such as when a student graduates or an employee leaves the institution. The deletion is irreversible, so it should be used with caution. Once deleted, all associated data, including course enrollments, submissions, and personal information, will be permanently removed. This endpoint does not provide a way to archive or temporarily deactivate a user; it only performs a complete deletion. It's crucial to verify the userId and ensure that any necessary data has been backed up before proceeding with the deletion." }, { "slug": "BLACKBOARD_DELETE_USER_ATTENDANCE", "name": "Delete user from course meetings", "description": "This endpoint removes a user from a meeting within a specific course in the Blackboard learning management system. It should be used when an administrator or instructor needs to revoke a user's access to a particular course meeting, such as when a student drops a course or a teaching assistant's role changes. The operation is permanent and cannot be undone through this API, so it should be used with caution. This endpoint does not provide any information about the success of the operation or the current state of the meeting after the deletion." }, { "slug": "BLACKBOARD_DEPRECATE_COURSE_GROUP_DELETE", "name": "Delete group in course", "description": "This endpoint deletes a specific group within a course in the Blackboard Learning Management System. It is used to remove a group that is no longer needed or to clean up the course structure. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for instructors or administrators who need to manage course organization, especially when restructuring group activities or at the end of a term. It does not provide any information about the deleted group or its members; it simply removes the group from the course." }, { "slug": "BLACKBOARD_DEPRECATED_GRADE_COLUMN_ACCESS", "name": "Get gradebook column details", "description": "Retrieves detailed information about a specific gradebook column for a particular course in the Blackboard learning management system. This endpoint allows educators and administrators to access the configuration and content of individual grading components within a course's gradebook. It should be used when detailed information about a specific grading column is needed, such as its name, points possible, visibility settings, or associated assignments. The endpoint does not modify any data and is suitable for read-only operations. It's important to note that this endpoint only provides information for a single column and does not return data about student grades or submissions." }, { "slug": "BLACKBOARD_DOWNLOAD", "name": "Download course content attachment", "description": "Downloads a specific attachment from a course's content in the Blackboard learning management system. This endpoint retrieves the file associated with the given attachmentId, which is linked to a particular content item (contentId) within a specific course (courseId). It's useful for programmatically accessing course materials, such as lecture slides, assignment documents, or supplementary resources. The endpoint returns the raw file data, allowing for direct download or further processing of the attachment content." }, { "slug": "BLACKBOARD_ENHANCE_GRADEBOOK_ENTRIES", "name": "Update user grade details by course", "description": "Updates a specific user's grade information within a course's gradebook column in the Blackboard learning management system. This endpoint allows instructors or authorized users to modify various aspects of a student's grade, including the textual representation, numerical score, private notes, student feedback, and exemption status. It's particularly useful for manual grade columns or when grades have been manually overridden in attempt-based columns. The endpoint provides flexibility in grading practices, enabling detailed feedback and grade management for individual students within a course." }, { "slug": "BLACKBOARD_ENROLL_COURSE_WITH_PERMISSIONS", "name": "Enroll Course With Permissions", "description": "Updates a user's enrollment details in a specific Blackboard Learn course. This endpoint allows for modifying various aspects of a user's course membership, including their role, availability status, and association with cross-listed courses. It's particularly useful for managing instructor assignments, adjusting student access, and organizing cross-listed course enrollments. The endpoint should be used when changes to a user's course enrollment are required, such as changing their role, updating their availability, or moving them between cross-listed courses. It does not provide functionality for initial course enrollment or complete removal of a user from a course." }, { "slug": "BLACKBOARD_FETCH_COURSE_CATEGORY_ASSOCIATIONS", "name": "Fetch course category by id", "description": "Retrieves a list of categories for a specific course within the Blackboard learning management system. This endpoint allows developers to access the organizational structure of a course, providing information about how content is categorized and arranged. It should be used when there's a need to understand or display the content structure of a Blackboard course, such as for content navigation or course mapping purposes. The endpoint focuses solely on category information and does not return the actual content within these categories. It's particularly useful for applications that need to mirror or interact with Blackboard's course organization." }, { "slug": "BLACKBOARD_FETCH_COURSE_RUBRIC_ASSESSMENTS", "name": "Retrieve rubric evaluation by association", "description": "Retrieves the evaluations associated with a specific rubric for a particular course and rubric association in the Blackboard learning management system. This endpoint is designed for instructors, administrators, or authorized personnel to access and review assessment data based on predefined rubric criteria. It should be used when detailed evaluation information is needed for a specific course, rubric, and its application context (association). The endpoint provides a targeted view of assessment data, focusing solely on the evaluations tied to the specified parameters. It does not modify any data and is intended for read-only access to evaluation information." }, { "slug": "BLACKBOARD_FETCH_GROUP_ATTEMPT_RUBRIC_SCORES", "name": "Fetch rubric evaluation for group attempt column", "description": "Retrieves the rubric evaluations for a specific group attempt within a gradebook column of a Blackboard course. This endpoint is designed to fetch detailed assessment data based on predefined rubric criteria for group assignments or projects. It should be used when instructors or authorized users need to access or review the structured feedback and scoring for a particular group's work. The tool is particularly useful for courses that incorporate collaborative assignments and utilize rubrics for standardized evaluation. It provides a comprehensive view of how a group's work was assessed across various rubric criteria, enabling thorough analysis of group performance and facilitating transparent grading practices. Note that this endpoint specifically deals with group attempts, so it may not be suitable for individual student assessments or non-rubric based evaluations." }, { "slug": "BLACKBOARD_FILTER_GRADES_WITH_EXCLUSIONS_AND_SECURITY", "name": "Retrieve user grades for course column", "description": "Retrieves the grades for all users associated with a specific gradebook column in a particular Blackboard course. This endpoint is useful for instructors or administrators who need to access and analyze grade data for a single assignment or grade item across all students in the course. It provides a comprehensive view of student performance for a specific graded component. The tool should be used when there's a need to review or export grades for a particular assignment, quiz, or other graded item. It does not modify any grade data and is intended for read-only operations. Note that the response will likely include sensitive student information, so proper authorization and data handling practices should be observed." }, { "slug": "BLACKBOARD_GENERATE_ATTENDANCE_DATA_DOWNLOAD_URL", "name": "Get course meeting download url", "description": "Retrieves a download URL for meeting-related resources within a specific Blackboard course. This endpoint should be used when access to downloadable content associated with course meetings is required, such as meeting recordings, shared documents, or other meeting-specific materials. The tool returns a URL that can be used to download the meeting resources, allowing for easy access to important course-related content. It's important to note that this endpoint only provides the URL for downloading and does not actually transfer the file content. The specific type of meeting resources available may vary depending on the course configuration and meeting settings in Blackboard." }, { "slug": "BLACKBOARD_GET_ACTIVE_SESSIONS", "name": "Fetch learning session data", "description": "Retrieves a list of active sessions from the Blackboard Learn platform. This endpoint provides information about ongoing learning activities, such as class meetings, online discussions, or interactive modules. It can be used to monitor current engagement, track attendance, or gather data on session participation. The tool is particularly useful for administrators or instructors who need an overview of active learning sessions across the platform. Note that the specific details returned for each session may vary depending on the user's permissions and the session type. This endpoint does not create or modify sessions; it is for retrieval purposes only." }, { "slug": "BLACKBOARD_GET_ADAPTIVE_RELEASE_ACL_GROUP_PREDICATES", "name": "Get course content adaptive release group criteria", "description": "Retrieves the groups associated with a specific criterion of an adaptive release rule for a particular content item within a Blackboard course. This endpoint is used to get information about which groups are part of the conditions for releasing content based on the adaptive release feature. It's particularly useful when you need to review or audit the adaptive release settings for a course, especially the group-based criteria. The endpoint does not modify any data and is intended for read-only operations. It's important to note that this endpoint only retrieves group information for a single criterion and does not provide a comprehensive view of all adaptive release rules or criteria for the content item." }, { "slug": "BLACKBOARD_GET_ADAPTIVE_RELEASE_ACL_USER_PREDICATES", "name": "Fetch user criteria from course content rule", "description": "Retrieves a list of users who meet a specific criterion within an adaptive release rule for a particular content item in a Blackboard Learn course. This endpoint is used to identify which users have satisfied the conditions set by the adaptive release criterion, allowing administrators or instructors to monitor and manage access to course content. It's particularly useful for tracking student progress, assessing the effectiveness of adaptive release strategies, and ensuring that content is being accessed as intended. The endpoint does not modify any data or grant access; it only provides information about which users currently meet the specified criterion." }, { "slug": "BLACKBOARD_GET_ADAPTIVE_RELEASE_RULE_CRITERION", "name": "Retrieve course content adaptive release rule criterion", "description": "Retrieves detailed information about a specific criterion within an adaptive release rule for a particular content item in a Blackboard Learn course. This endpoint allows instructors or administrators to examine the conditions set for releasing content to students. It should be used when reviewing or troubleshooting adaptive release settings, or when preparing to modify existing criteria. The tool provides granular access to individual criterion details, enabling precise management of content availability. Note that this endpoint only retrieves information and does not modify any settings." }, { "slug": "BLACKBOARD_GET_ANNOUNCEMENT", "name": "Get announcement by id", "description": "Retrieves a specific announcement from the Blackboard Learn platform using its unique identifier. This endpoint allows users to fetch detailed information about a single announcement, such as its title, content, publication date, and author. It's particularly useful when you need to display or process information about a known announcement. The endpoint should be used when you have the specific ID of an announcement and require its full details. Note that this endpoint only retrieves existing announcements and cannot be used to create, modify, or delete announcements." }, { "slug": "BLACKBOARD_GET_ANNOUNCEMENTS", "name": "List announcements", "description": "Retrieves a list of announcements from the Blackboard Learn platform. This endpoint allows users to fetch announcements, which are important messages or updates shared within courses or across the institution. It can be used to display recent announcements to students, instructors, or administrators, keeping them informed about course-related information, deadlines, or institutional news. The endpoint supports optional filtering by course and pagination of results. It's particularly useful for building dashboards, notification systems, or integrating Blackboard announcements into external applications. Note that the specific content and visibility of announcements may depend on the user's role and permissions within the Blackboard Learn system." }, { "slug": "BLACKBOARD_GET_ATTEMPT_FILE_META_DATA", "name": "Retrieve course attempt file", "description": "Retrieves a specific file associated with a student's attempt in a course's gradebook within the Blackboard Learn system. This endpoint allows authorized users, such as instructors or administrators, to access individual files submitted as part of a student's assignment or assessment attempt. It can be used to review submitted work, download attachments, or verify file contents for grading purposes. The endpoint requires precise identification of the course, attempt, and file, ensuring accurate and secure access to the requested gradebook data." }, { "slug": "BLACKBOARD_GET_ATTEMPT_FILE_META_DATA_LIST", "name": "Fetch gradebook attempt files", "description": "Retrieves the files associated with a specific gradebook attempt for a given course in the Blackboard learning management system. This endpoint allows access to student-submitted files for a particular assignment or assessment attempt. It is useful for instructors or systems integrating with Blackboard to review submissions, facilitate grading processes, or archive student work. The endpoint should be used when there's a need to access the actual file content of student submissions, rather than just metadata about the attempt. Note that this endpoint only provides access to files and does not include other attempt details such as scores or feedback." }, { "slug": "BLACKBOARD_GET_ATTEMPT_RECEIPT", "name": "Retrieve attempt receipt by id", "description": "Retrieves detailed information about a specific attempt receipt in the Blackboard learning management system. This endpoint allows users to access data related to a student's attempt on an assessment, test, or other evaluated activity. It should be used when detailed information about a particular attempt is needed, such as for reviewing student performance, grading, or addressing disputes. The endpoint provides a snapshot of the attempt, which may include timestamps, scores, and other relevant metadata. It does not modify any data and is intended for read-only access to attempt information." }, { "slug": "BLACKBOARD_GET_ATTENDANCE_RECORD", "name": "Get attendance record", "description": "Returns a Course Meeting Attendance information for the given meeting and user Id. The \"course.attendance.VIEW\" entitlement is required to view a Course Meeting Attendance. **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_GET_ATTENDANCE_RECORDS_BY_MEETING_ID", "name": "Get attendance records by meeting id", "description": "Returns a list of Course Meeting Attendance for a given meeting id. The \"course.attendance.VIEW\" entitlement is required to view a Course Meeting attendance. **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_GET_ATTENDANCE_RECORDS_BY_USER_ID", "name": "Retrieve user meetings in course", "description": "Retrieves detailed information about a specific user's participation or engagement in meetings for a particular course within the Blackboard learning management system. This endpoint is useful for instructors, administrators, or analytics tools to gather data on individual student involvement in course activities. It should be used when detailed user-level meeting data is required, such as for attendance tracking, participation analysis, or performance evaluation. The endpoint will not provide aggregate course data or information about users not associated with the specified course. It's important to note that the exact details returned may depend on the course settings and the user's role within the course." }, { "slug": "BLACKBOARD_GET_CALENDAR_ITEM", "name": "Fetch calendar item by type and id", "description": "Retrieves detailed information about a specific calendar item from the Blackboard learning management system. This endpoint allows you to fetch data for a single calendar entry, such as an event, appointment, or assignment, based on its type and unique identifier. Use this when you need to access or display comprehensive information about a particular item in a user's or course's calendar. The endpoint is particularly useful for building integrations that sync calendar data or for displaying detailed event information in external applications. Note that this endpoint only retrieves existing calendar items and cannot be used to create, modify, or delete calendar entries." }, { "slug": "BLACKBOARD_GET_CALENDAR_ITEMS", "name": "Get calendar items", "description": "Retrieves calendar items from the Blackboard Learn platform. This endpoint allows users to fetch a list of calendar events, which may include course schedules, assignment deadlines, and institution-wide events. It provides access to the integrated calendar system within Blackboard Learn, enabling applications to synchronize with or display Blackboard calendar data. This tool is particularly useful for building applications that need to display or manage academic schedules, deadlines, and events from Blackboard. Note that the response may include various types of calendar items such as course events, office hours, and gradebook deadlines. The endpoint does not provide functionality for creating, updating, or deleting calendar items; it is read-only." }, { "slug": "BLACKBOARD_GET_CALENDARS", "name": "Get calendars", "description": "Get the list of calendars. This endpoint will return all calendars viewable by the user. All users can request a list of calendars viewable to them. **Since**: 3400.9.0" }, { "slug": "BLACKBOARD_GET_CATEGORIES", "name": "Retrieve category type details", "description": "Retrieves a list of categories from the Blackboard catalog based on the specified category type. This endpoint is used to fetch organized groups of resources or content within the Blackboard Learn platform, such as course categories, program categories, or departmental categories. It's particularly useful for applications that need to display or manage the structure of educational content within Blackboard. The endpoint should be used when you need to populate category listings, build navigation menus, or gather information about how content is organized in the Blackboard system. Note that this endpoint only provides category information and does not return the actual content within those categories." }, { "slug": "BLACKBOARD_GET_CATEGORY", "name": "Fetch category details by id", "description": "Retrieves detailed information about a specific category in the Blackboard catalog system. This endpoint allows users to access category data based on the category type and its unique identifier. It is useful for obtaining metadata, structure, or any other relevant information about a particular category within the educational content organization. The endpoint should be used when detailed information about a specific category is needed, such as when populating category details in a user interface or when synchronizing category information with external systems. It provides a focused view of a single category and does not return information about items within the category or related categories." }, { "slug": "BLACKBOARD_GET_CHILD", "name": "Retrieve course child details", "description": "Retrieves detailed information about a specific child course within a parent course in the Blackboard Learn platform. This endpoint is useful for accessing hierarchical course structures, allowing developers to fetch data about nested or sub-courses. Use this when you need to gather information about a particular child course, such as its name, description, or specific attributes related to its parent-child relationship. The endpoint requires both the parent course ID and the child course ID to uniquely identify the requested child course within the Blackboard Learn system." }, { "slug": "BLACKBOARD_GET_CHILD_CATEGORIES", "name": "Retrieve catalog category children", "description": "Retrieves the child categories of a specified parent category within the Blackboard catalog system. This endpoint allows users to navigate through the hierarchical structure of categories, which is crucial for organizing and accessing educational content. It should be used when exploring the category tree, building category-based navigation, or when needing to list subcategories of a specific parent category. The endpoint is particularly useful for applications that need to mirror or interact with Blackboard's content organization structure. Note that this endpoint only provides direct children of the specified parent category and does not recursively fetch all descendants." }, { "slug": "BLACKBOARD_GET_CHILDREN_GOALS", "name": "Retrieve children goals by id", "description": "Retrieves the child elements (sub-goals, tasks, or related items) of a specified goal in the Blackboard learning management system. This endpoint is used to fetch the hierarchical structure of educational objectives, allowing users to view and manage the breakdown of a parent goal into its component parts. It's particularly useful for educators and administrators who need to track the progress of complex, multi-layered learning objectives or course structures. The endpoint should be used when there's a need to understand the sub-components of a specific goal or to navigate through the goal hierarchy. It will not provide detailed information about the parent goal itself, only its immediate children." }, { "slug": "BLACKBOARD_GET_COLUMN_ATTEMPT", "name": "Retrieve grade attempt by course and column id", "description": "Retrieves detailed information about a specific attempt for a gradebook column within a course in the Blackboard Learn system. This endpoint allows users to access individual submission data, such as scores, comments, or other relevant information associated with a student's attempt on a particular graded item. It is particularly useful for instructors or administrators who need to review or analyze individual student performances on assignments or assessments. The endpoint should be used when detailed information about a specific submission is required, rather than aggregate data for the entire column or course." }, { "slug": "BLACKBOARD_GET_COLUMN_ATTEMPTS", "name": "Retrieve gradebook attempts", "description": "Retrieves attempt data for a specific gradebook column within a course in the Blackboard Learn platform. This endpoint allows users to access detailed information about student attempts for a particular assessment or assignment. It's useful for analyzing student performance, tracking submission patterns, and gathering data for educational analytics. The endpoint should be used when detailed information about student interactions with a specific gradebook item is needed, but it won't provide an overview of the entire gradebook or course structure." }, { "slug": "BLACKBOARD_GET_COLUMN_GRADE", "name": "Retrieve user gradebook column", "description": "Retrieves a specific user's grade for a particular gradebook column in a Blackboard course. This endpoint is useful for accessing individual student performance data within a course, allowing for targeted grade retrieval and analysis. It should be used when detailed grade information for a single student on a specific assignment or gradebook entry is needed. The endpoint provides focused access to gradebook data, which is particularly valuable for generating individual student reports, conducting performance reviews, or integrating with external grade management systems." }, { "slug": "BLACKBOARD_GET_COLUMN_GRADE_LAST_CHANGED", "name": "Get last changed grade column for user", "description": "Retrieves information about the last changes made to a specific gradebook column for a particular course in Blackboard. This endpoint is useful for tracking recent modifications to grades, comments, or other gradebook data, enhancing transparency and accountability in the grading process. It provides details about the most recent updates, potentially including the user who made the change and the timestamp of the modification. This tool should be used when there's a need to monitor or audit recent activity in a specific gradebook column, such as verifying when the last grade was entered or identifying who made the most recent changes. It's particularly valuable for instructors and administrators who need to keep track of grading activities and ensure the accuracy and timeliness of gradebook entries." }, { "slug": "BLACKBOARD_GET_COLUMN_GRADES", "name": "List gradebook columns for users", "description": "Retrieves user data associated with a specific gradebook column for a given course in Blackboard. This endpoint allows educators and administrators to access detailed information about students' performance or participation in a particular graded item or category. It should be used when there's a need to analyze or report on student data for a specific gradebook column, such as assignment scores or participation grades. The endpoint provides a focused view of user data, limited to the context of the specified course and gradebook column, and does not include overall course performance or data from other columns." }, { "slug": "BLACKBOARD_GET_COLUMN_GROUP_ATTEMPTS", "name": "Get course gradebook group attempts", "description": "Retrieves group attempts data for a specific gradebook column within a course in Blackboard Learn. This endpoint allows users to access detailed information about group submissions, including submission dates, grades, and potentially group member contributions for a particular grading item. It is particularly useful for instructors or administrators who need to analyze group performance or review the history of group submissions for a specific assignment or grading criteria. The endpoint supports both Ultra and Original Course Views, making it versatile across different Blackboard Learn interfaces. Use this when you need to gather comprehensive data about group work and collaborative assignments within a course's gradebook structure." }, { "slug": "BLACKBOARD_GET_CONTENT", "name": "Retrieve course content by ids", "description": "Retrieves specific content within a Blackboard course using the course ID and content ID. This endpoint allows users to access detailed information about a particular content item, such as a lecture, assignment, or resource, within the context of a specific course. It's useful for applications that need to display or process individual course materials. The endpoint should be used when detailed information about a specific piece of course content is required, rather than for retrieving a list of all content in a course. Note that this endpoint only provides information about the content and does not include user-specific data like submission status or grades." }, { "slug": "BLACKBOARD_GET_CONTENT_CHILDREN", "name": "Retrieve course content children", "description": "Retrieves a list of child content items for a specific content within a Blackboard Learn course. This endpoint is used to navigate the hierarchical structure of course materials, allowing users to explore sub-items or nested content within a parent content item. It's particularly useful for building course content navigation systems or for analyzing the structure of course materials. The endpoint returns only direct children of the specified content, not deeper levels of the hierarchy. It should be used when you need to display or process the immediate sub-items of a given course content, but not for searching or retrieving specific content across the entire course." }, { "slug": "BLACKBOARD_GET_CONTENT_COLLECTION_RESOURCE", "name": "Retrieve contentcollection resource", "description": "Retrieves a specific resource from a content collection in Blackboard Learn. This endpoint allows developers to access detailed information about a particular resource, such as a document, video, or other educational material, stored within Blackboard's content management system. It is particularly useful when you need to retrieve metadata or content details for a known resource, perhaps to display it in a custom interface or to verify its properties. The endpoint requires a valid resourceId to function correctly and will likely return comprehensive details about the resource, including its name, type, size, and associated metadata. However, it may not provide the actual content of the resource, depending on Blackboard's implementation." }, { "slug": "BLACKBOARD_GET_CONTENT_GROUP", "name": "Get course content group details", "description": "Retrieves detailed information about a specific group within a content item of a course in the Blackboard Learn platform. This endpoint is used to access group-related data, such as group name, description, membership, and any associated settings or properties. It should be used when you need to fetch comprehensive information about a particular group in the context of a specific course and content item. The endpoint does not modify any data and is suitable for read-only operations. It's particularly useful for applications that need to display or process group information within the structure of Blackboard's course content organization." }, { "slug": "BLACKBOARD_GET_CONTENT_GROUPS", "name": "Retrieve course content groups", "description": "Retrieves the groups associated with a specific content item within a Blackboard course. This endpoint is useful for understanding the group structure or permissions related to particular course content. It should be used when you need to list all groups that have access to or are associated with a specific piece of content in a course. The endpoint does not modify any data and is intended for read-only operations. Note that it does not provide detailed information about the groups themselves, only their association with the specified content." }, { "slug": "BLACKBOARD_GET_CONTENTS", "name": "Retrieve course contents", "description": "Retrieves the contents of a specific course in the Blackboard Learn platform. This endpoint allows you to fetch all learning materials, resources, and content items associated with a given course. It should be used when you need to access or display the structure and components of a course, such as modules, assignments, documents, or other learning objects. The endpoint provides a comprehensive view of the course content, which can be useful for building course outlines, content management interfaces, or synchronizing course materials with external systems. Note that this endpoint only retrieves the content structure and metadata; it does not download the actual content files. To access specific content items, you may need to use additional API calls based on the information provided by this endpoint." }, { "slug": "BLACKBOARD_GET_COURSE", "name": "Retrieve course details", "description": "Retrieves detailed information about a specific course in the Blackboard Learn system. This endpoint is used to access course data such as title, description, availability, enrollment information, and other course-specific attributes. It's particularly useful for applications that need to display or process course information outside of the Blackboard Learn interface. The endpoint should be used when detailed information about a single course is required, rather than for bulk operations or listing multiple courses. Note that the exact fields returned may depend on the user's permissions and the course's configuration within Blackboard Learn." }, { "slug": "BLACKBOARD_GET_COURSE_CHILDREN", "name": "List child courses for a given course", "description": "Retrieves a list of child courses or sub-courses associated with a specified parent course in the Blackboard Learn platform. This endpoint is useful for exploring the hierarchical structure of courses, such as main courses and their associated sections or modules. It should be used when you need to obtain information about the sub-components of a particular course. The endpoint does not provide detailed information about the child courses; it likely returns a list of basic details such as course IDs and names. It's important to note that this endpoint may not be applicable for courses without any child elements." }, { "slug": "BLACKBOARD_GET_COURSE_COLUMN_LOGS", "name": "Get Course Column Logs", "description": "Retrieves the log entries for a specific gradebook column within a Blackboard course. This endpoint provides a detailed history of all actions and changes made to the specified gradebook column, including grade modifications, updates to comments, and other relevant activities. It is particularly useful for auditing purposes, allowing educators and administrators to track and review the complete history of a gradebook column. The endpoint should be used when there's a need to investigate grading discrepancies, verify changes, or maintain a record of grading activities for compliance and transparency. Note that this endpoint only returns logs for a single gradebook column; to get a comprehensive view of all gradebook activities, you may need to make multiple calls for different columns." }, { "slug": "BLACKBOARD_GET_COURSE_GOAL_ALIGNMENTS", "name": "Retrieve course alignments by id", "description": "Retrieves the course goal alignments for a specified course in Blackboard. This endpoint allows users to fetch detailed information about how course goals are linked to specific learning objectives within a particular course. It is essential for educators and administrators who need to understand or analyze the structure of course objectives and their relationships to broader educational goals. The endpoint should be used when reviewing course design, preparing for accreditation processes, or assessing curriculum coherence. It does not modify any alignments; it only provides a read-only view of the existing structure. The response likely includes a list of goals, associated objectives, and potentially metadata about these alignments." }, { "slug": "BLACKBOARD_GET_COURSE_GRADEBOOK_LOGS", "name": "Get course gradebook logs", "description": "Retrieves the gradebook logs for a specific course in the Blackboard learning management system. This endpoint provides a historical record of all gradebook-related activities and changes within the specified course. It's particularly useful for instructors and administrators who need to audit grade modifications, track changes over time, or investigate discrepancies in student grades. The logs typically include information such as the date and time of changes, the user who made the changes, and the nature of the modifications (e.g., grade updates, column additions, or deletions). This tool should be used when detailed tracking of gradebook activities is required, but it does not provide real-time grade data or allow for grade modifications." }, { "slug": "BLACKBOARD_GET_COURSE_MEETING", "name": "Get course meeting details", "description": "Retrieves detailed information about a specific meeting within a course in the Blackboard learning management system. This endpoint is used to fetch comprehensive data about a scheduled meeting, including its date, time, duration, participants, and any associated resources or links. It's particularly useful for applications that need to display or manage course-related events and schedules. The endpoint requires both the course ID and meeting ID to uniquely identify the requested meeting. It should be used when detailed information about a single meeting is needed, rather than for listing all meetings in a course." }, { "slug": "BLACKBOARD_GET_COURSE_MEETINGS", "name": "Get course meetings", "description": "Retrieves a list of meetings associated with a specific course in the Blackboard learning management system. This endpoint is used to fetch details about scheduled meetings, such as virtual classroom sessions, office hours, or other course-related events. It provides educators and students with up-to-date information on upcoming or past meetings for a particular course. The endpoint should be used when you need to display or manage the meeting schedule for a course. It will not provide information about meetings across multiple courses or institution-wide events. The response likely includes meeting titles, dates, times, durations, and possibly attendance information, though the exact details are not specified in the schema." }, { "slug": "BLACKBOARD_GET_COURSE_MEMBERSHIPS", "name": "Retrieve users from course", "description": "Retrieves a list of users enrolled in a specific course within the Blackboard learning management system. This endpoint is used to access information about students, instructors, and other roles associated with a particular course. It's particularly useful for course management, generating class rosters, or analyzing course participation. The endpoint returns user details such as IDs, names, roles, and enrollment statuses, but does not provide access to sensitive information like grades or private user data. Use this when you need an overview of course membership or to verify enrollment status for specific users." }, { "slug": "BLACKBOARD_GET_COURSE_RESOURCE", "name": "Get course resource", "description": "Retrieves a specific resource from a particular course within the Blackboard learning management system. This endpoint is used to access detailed information about a single course resource, such as a document, assignment, or any other learning material. It should be used when you need to fetch the properties or content of a specific resource within a known course. The endpoint requires both the course ID and resource ID to be specified in the path. It's important to note that this endpoint only retrieves the resource information and does not modify or delete the resource. Access to the resource may be subject to user permissions within the Blackboard system." }, { "slug": "BLACKBOARD_GET_COURSE_RESOURCE_CHILDREN", "name": "Get course resource children", "description": "Retrieves a list of child resources associated with a specific resource within a Blackboard course. This endpoint is useful for exploring the hierarchical structure of course materials, such as folders, documents, or assignments nested within a parent resource. Use this when you need to display or process the contents of a particular course resource. The endpoint returns only direct child resources and does not provide details about the parent resource itself or any grandchild resources. It's particularly helpful for building course content navigation or for analyzing the structure of course materials." }, { "slug": "BLACKBOARD_GET_COURSE_ROLE", "name": "Retrieve course role by role id", "description": "Retrieves detailed information about a specific course role in Blackboard Learn using its unique identifier. This endpoint is used to fetch the properties, permissions, and settings associated with a particular role within a course. It's essential for understanding the access levels and capabilities assigned to different user types in the Blackboard learning environment. Use this endpoint when you need to review or verify the configuration of a course role, such as instructor, teaching assistant, or student. The returned data can be used for role management, troubleshooting access issues, or ensuring proper permissions are set for different user categories. Note that this endpoint only provides read access to role information and cannot be used to modify role settings." }, { "slug": "BLACKBOARD_GET_COURSE_ROLES", "name": "Fetch course roles information", "description": "Retrieves a list of available course roles in the Blackboard Learn system. This endpoint allows users to fetch all predefined roles that can be assigned to users within courses. It is useful for administrators and developers who need to understand the available role options when managing course memberships or setting up integrations. The endpoint does not create, modify, or delete roles; it only provides read access to the existing role definitions. Use this endpoint when you need to display role options, validate role assignments, or gather information about the roles structure in your Blackboard Learn instance." }, { "slug": "BLACKBOARD_GET_COURSES", "name": "List courses", "description": "Retrieves a list of courses from the Blackboard learning management system. This endpoint allows users to fetch information about multiple courses at once, providing an overview of the available courses within the institution's Blackboard environment. It's particularly useful for applications that need to display course catalogs, manage course enrollments, or synchronize course data with external systems. The endpoint returns course-related data, which may include course IDs, names, descriptions, and other relevant metadata. However, it's important to note that the exact details returned for each course are not specified in the given schema and may vary based on system configurations or user permissions. This tool should be used when you need to obtain a broad view of courses in the Blackboard system, such as for course discovery or administrative purposes. It may not provide in-depth details about individual courses, which might require separate, course-specific API calls." }, { "slug": "BLACKBOARD_GET_CRITERIA", "name": "Retrieve course content release criteria", "description": "Retrieves the criteria associated with a specific adaptive release rule for a particular content item within a Blackboard course. This endpoint allows instructors or administrators to view the conditions that must be met for students to access the content. It's useful for reviewing or auditing adaptive release settings without modifying them. The endpoint doesn't provide information about whether students have met the criteria, only the criteria themselves. Use this when you need to understand or verify the access conditions for specific course content." }, { "slug": "BLACKBOARD_GET_CROSS_LIST_SET", "name": "Get cross list set by course id", "description": "Retrieves the cross-listed course set for a specified course in Blackboard Learn. This endpoint is used to obtain information about courses that are linked together, typically representing different sections of the same course that share content. It's particularly useful for administrators or instructors managing multiple sections of a course with shared materials. The endpoint returns details about the cross-listed courses, which may include their IDs, names, and other relevant information. Use this when you need to identify or manage courses that are part of a cross-listed set. Note that this endpoint only provides information about the cross-listed courses and does not modify any course data." }, { "slug": "BLACKBOARD_GET_CURRENT_ACTIVE_USER_BY_ID", "name": "Retrieve user sessions by user id", "description": "Retrieves the active or historical sessions for a specific user in the Blackboard Learn platform. This endpoint allows developers to access detailed information about a user's interaction with the system, including login times, duration, and potentially other session-related data. It is particularly useful for tracking user activity, analyzing engagement patterns, or implementing custom analytics for educational institutions. The endpoint should be used when there's a need to monitor or report on individual user activity within the Blackboard environment. It does not provide real-time session management capabilities, such as terminating active sessions." }, { "slug": "BLACKBOARD_GET_DATA_SOURCE", "name": "Get data source by id", "description": "Retrieves detailed information about a specific data source within the Blackboard Learn platform. This endpoint allows you to access metadata and configuration details for a particular data source, which can be crucial for understanding the origin and nature of data within the Blackboard ecosystem. Use this endpoint when you need to verify data source information, troubleshoot data-related issues, or integrate external systems with Blackboard Learn. The tool provides a comprehensive view of a single data source but does not modify or create new data sources. It's particularly useful for administrators and developers working on data management and integration tasks within educational institutions using Blackboard." }, { "slug": "BLACKBOARD_GET_DATA_SOURCES", "name": "Fetch data source list", "description": "Retrieves a list of data sources available in the Blackboard learning management system. This endpoint provides information about various data sources that can be used for integrating external systems, reporting, or data analysis within the Blackboard platform. It should be used when you need to obtain an overview of all available data sources or when preparing to work with specific data sets in Blackboard. The endpoint does not modify any data and is safe for frequent calls, but be aware that the list of data sources may be extensive for large institutions." }, { "slug": "BLACKBOARD_GET_DISCUSSION", "name": "Retrieve coursediscussion details", "description": "Retrieves detailed information about a specific discussion thread within a course on the Blackboard Learn platform. This endpoint allows users to access the content, metadata, and other relevant details of a discussion, enabling them to view or analyze discussion activities without directly accessing the Blackboard user interface. It should be used when detailed information about a particular discussion is needed, such as for reporting, content management, or integration with other educational tools. The endpoint requires both the course ID and discussion ID to be specified, ensuring precise retrieval of the desired discussion data." }, { "slug": "BLACKBOARD_GET_DISCUSSION_MESSAGES", "name": "Get discussion messages for course", "description": "Retrieves all messages within a specific discussion for a given course in the Blackboard learning management system. This endpoint allows users to fetch the entire conversation thread, including all posts and replies, for a particular discussion topic. It's useful for displaying the full context of a discussion, enabling students and instructors to review past interactions, and facilitating asynchronous communication in online learning environments. The endpoint should be used when a comprehensive view of a discussion is needed, such as for moderation, grading, or catching up on missed conversations. It does not provide capabilities for posting new messages or editing existing ones; separate endpoints would be required for those actions." }, { "slug": "BLACKBOARD_GET_DISCUSSIONS", "name": "Get course discussion threads", "description": "Retrieves all discussions associated with a specific course in the Blackboard Learning Management System. This endpoint allows developers to access the discussion forums and threads for a particular course, enabling integration of course discussions into external applications or custom dashboards. It's particularly useful for building tools that aggregate or analyze student engagement in course discussions. The endpoint returns a collection of discussion objects, likely including details such as discussion titles, creation dates, and potentially the number of posts or participants. It should be used when you need a comprehensive view of all discussions within a course, but note that it may not include the actual content of individual posts or replies." }, { "slug": "BLACKBOARD_GET_DOMAIN_CONFIG", "name": "Retrieve lti domain details by domainid", "description": "Retrieves detailed information about a specific LTI (Learning Tools Interoperability) domain within the Blackboard Learn system. This endpoint is used to fetch configuration details, status, and other relevant information for a particular LTI domain integration. It's particularly useful for administrators and developers who need to manage or troubleshoot LTI tool integrations with Blackboard. The endpoint should be used when specific information about an LTI domain is required, such as verifying its configuration or checking its current status. It will not modify any domain settings; it's a read-only operation." }, { "slug": "BLACKBOARD_GET_DOMAIN_CONFIGS", "name": "Retrieve lti domain listings", "description": "Retrieves a list of LTI (Learning Tools Interoperability) domains registered with the Blackboard Learn platform. This endpoint is used to obtain information about the external tools and platforms that have been integrated with Blackboard using the LTI specification. It provides essential data for managing and troubleshooting LTI integrations within the Blackboard Learn environment. The returned list of domains can be used to verify the correct configuration of LTI tools, ensure security by checking authorized domains, and audit the current integrations. This endpoint is particularly useful for administrators and developers working on LTI integrations with Blackboard Learn." }, { "slug": "BLACKBOARD_GET_FILE_ATTACHMENT", "name": "Get course content attachment", "description": "Retrieves detailed information about a specific attachment associated with a particular content item within a Blackboard course. This endpoint allows users to access metadata and potentially the content of an attachment, such as a document, image, or other file types, that has been added to course materials. It should be used when detailed information about a specific attachment is needed, such as for displaying file properties, preparing download links, or verifying attachment availability. The endpoint does not modify the attachment or course content; it is solely for retrieval purposes. Note that this endpoint requires precise identification of the course, content item, and attachment, making it useful for targeted access but not for broad queries or searches across multiple courses or content items." }, { "slug": "BLACKBOARD_GET_FILE_ATTACHMENTS", "name": "Get course content attachment", "description": "Retrieves the attachments associated with a specific content item within a Blackboard course. This endpoint allows users to access files, documents, or other resources that have been attached to a particular piece of course content. It's useful for applications that need to display or process course materials, such as displaying lecture slides, assignment instructions, or supplementary reading materials. The endpoint should be used when there's a need to access or download attachments related to a specific content item in a course. It will not provide the actual content itself, only the attachments linked to that content. This tool is particularly valuable for building integrations that enhance the learning experience by providing easy access to course resources." }, { "slug": "BLACKBOARD_GET_FOLDERS", "name": "Retrieve course message folders", "description": "Retrieves a list of message folders for a specific course in the Blackboard learning management system. This endpoint allows users to access the organizational structure of course messages, providing an overview of how communication is categorized within the course. It should be used when needing to understand the message folder hierarchy or before performing operations on specific message folders. The endpoint returns only the folder structure and does not include the actual messages within these folders. It's particularly useful for applications that need to display or manage course communication organization." }, { "slug": "BLACKBOARD_GET_GOAL_ALIGNMENTS", "name": "Get goal alignments by goalid", "description": "Retrieves the alignments associated with a specific educational goal in the Blackboard learning management system. This endpoint allows users to fetch the learning activities or assessments that are linked to a particular goal, enabling educators and administrators to understand how curriculum elements are mapped to educational objectives. It should be used when there's a need to review or analyze the alignment of course content with specific learning outcomes. The endpoint provides a comprehensive view of how a goal is integrated into the curriculum but does not modify any alignment data." }, { "slug": "BLACKBOARD_GET_GOAL_BY_ID", "name": "Retrieve goal by id", "description": "Retrieves detailed information about a specific learning goal within the Blackboard Learn platform. This endpoint allows educators and administrators to access comprehensive data about an individual goal, including its description, associated courses, and progress metrics. Use this when you need to review or analyze a particular learning objective. The tool returns only information about the requested goal and does not provide an overview of all goals or modify any goal data. It's particularly useful for tracking student progress, curriculum planning, and ensuring alignment with educational standards." }, { "slug": "BLACKBOARD_GET_GOALS", "name": "Get learning goals", "description": "The GetGoals endpoint retrieves a list of educational goals within the Blackboard learning management system. It provides access to goal information that can be used to track student progress, align curriculum with objectives, or generate reports on learning outcomes. This endpoint is particularly useful for administrators, instructors, or integrated systems that need to assess or manage educational targets across courses or programs. The endpoint returns all available goals without requiring specific parameters, making it suitable for general goal overviews or as a first step in more detailed goal analysis. However, it may not provide granular filtering options in this version, so additional processing might be needed for specific use cases. While the endpoint is labeled as 'public', users should verify access rights as some implementations may still require authentication or have usage limitations to protect sensitive educational data." }, { "slug": "BLACKBOARD_GET_GOAL_SET_BY_ID", "name": "Retrieve goal set by id", "description": "Retrieves detailed information about a specific goal set within the Blackboard Learning Management System. This endpoint allows educators and administrators to access comprehensive data about a particular collection of educational objectives or targets. It should be used when there's a need to review, analyze, or integrate goal set information into other educational processes or reports. The endpoint provides a snapshot of the goal set's current state and structure but does not allow for modifications. It's particularly useful for tracking progress, aligning curricula, or generating reports on educational objectives across courses or programs." }, { "slug": "BLACKBOARD_GET_GOAL_SET_CATEGORY_BY_ID", "name": "Get goal set category by id", "description": "Retrieves detailed information about a specific goal category within a designated goal set in the Blackboard Learn platform. This endpoint allows users to access the properties and metadata of a particular goal category, which is useful for understanding the structure and organization of goals within a course or program. It should be used when detailed information about a specific goal category is needed, such as when displaying category details or preparing for goal management tasks. The endpoint does not modify any data and is intended for read-only operations." }, { "slug": "BLACKBOARD_GET_GOAL_SETS", "name": "Retrieve goal sets", "description": "Retrieves a list of goal sets from the Blackboard Learn platform. This endpoint allows users to fetch collections of goals, which are likely used for organizing and categorizing educational objectives within the system. It's part of the public API, making it suitable for integration with external applications or systems that need to access goal-related data. Use this endpoint when you need to obtain an overview of the goal sets available in the Blackboard environment. It's particularly useful for applications that manage or display educational objectives, track student progress, or provide insights into the structure of learning goals within an institution. Note that this endpoint returns goal sets, not individual goals. It may not provide detailed information about the specific goals within each set. Additionally, as it's a GET request without parameters, it might return all available goal sets, which could be a large dataset for extensive Blackboard implementations." }, { "slug": "BLACKBOARD_GET_GOALS_FROM_SET_AND_CATEGORY", "name": "Fetch goal set category goals", "description": "This endpoint retrieves a list of goals associated with a specific category within a goal set in the Blackboard learning management system. It allows administrators and educators to access and review the goals that have been set for a particular category, enabling them to align course objectives with institutional goals. The endpoint is useful for goal management, curriculum planning, and ensuring educational alignment across courses and programs. It should be used when there's a need to review, assess, or report on the goals within a specific category of a goal set. Note that this endpoint only provides read access to the goals and does not allow for creation, modification, or deletion of goals." }, { "slug": "BLACKBOARD_GET_GRADEBOOK_CATEGORIES", "name": "Retrieve course gradebook categories", "description": "Retrieves the list of gradebook categories for a specific course in the Blackboard learning management system. This endpoint allows users to fetch the organizational structure of a course's gradebook, including the categories used to group different types of assessments and assignments. It is particularly useful for understanding how grades are organized within a course, which can aid in grade calculations, reporting, and overall course management. The endpoint should be used when there's a need to view or analyze the grading structure of a particular course, but it will not provide actual grade data for students." }, { "slug": "BLACKBOARD_GET_GRADEBOOK_CATEGORY", "name": "Retrieve gradebook category by id", "description": "Retrieves detailed information about a specific gradebook category within a course in the Blackboard learning management system. This endpoint allows users to access important data about how grades are organized and weighted within a course, which is crucial for understanding the grading structure. It should be used when needing to review or verify the setup of a particular grading category, such as its name, weight in the overall grade, and potentially associated grade items. This tool is particularly useful for instructors, teaching assistants, or administrators who need to audit or manage the grading system for a course. Note that this endpoint only provides information about the category itself and may not include the actual grades or student data associated with it." }, { "slug": "BLACKBOARD_GET_GRADE_COLUMN", "name": "Retrieve gradebook column by course and column ids", "description": "Retrieves detailed information about a specific gradebook column within a particular course in the Blackboard learning management system. This endpoint allows users to access the properties and settings of an individual grading column, such as its name, description, points possible, and grading type. It should be used when detailed information about a specific grading component is needed, for example, when reviewing or auditing the grading structure of a course. The endpoint provides read-only access and does not allow modification of the column data. It's particularly useful for instructors, teaching assistants, or administrators who need to verify or analyze the setup of their course gradebook without making changes." }, { "slug": "BLACKBOARD_GET_GRADE_COLUMNS", "name": "List course gradebook columns", "description": "Retrieves a list of gradebook columns for a specified course in the Blackboard Learn environment. This endpoint allows users to access detailed information about the structure and components of a course's gradebook. It should be used when there's a need to view or analyze the grading schema for a particular course, such as when integrating external grading tools or performing academic audits. The endpoint provides a comprehensive overview of how grades are organized within the course but does not include actual student grades or scores. It's particularly useful for understanding the weighting and categorization of different assignments and assessments within the course." }, { "slug": "BLACKBOARD_GET_GRADE_NOTATION", "name": "Retrieve course grade notation", "description": "Retrieves detailed information about a specific grade notation within a course's gradebook in the Blackboard Learning Management System. This endpoint allows users to fetch individual grade notation data, which may include the notation symbol, description, and associated grading rules. It should be used when precise information about a particular grade notation is needed, such as during grade reviews or when updating grading policies. The endpoint does not modify any data and is suitable for read-only operations. Note that it only returns data for a single grade notation; to retrieve multiple notations, separate API calls would be required for each." }, { "slug": "BLACKBOARD_GET_GRADE_NOTATIONS", "name": "List grade notations for course", "description": "Retrieves the grade notations for a specific course's gradebook in the Blackboard learning management system. Grade notations are symbols or short texts used to represent specific grading statuses or conditions (e.g., 'A', 'B+', 'Incomplete', 'Withdrawn'). This endpoint should be used when you need to fetch the complete list of grade notations configured for a particular course, which can be useful for understanding the grading scheme or for integrating with other systems. It does not modify any data and is typically used for reporting or display purposes. Note that this endpoint only provides the notation definitions and does not return actual grades assigned to students." }, { "slug": "BLACKBOARD_GET_GRADE_SCHEMAS", "name": "Get gradebook schema for course", "description": "Retrieves the gradebook schemas for a specific course in the Blackboard learning management system. This endpoint allows developers to access the structure and format of the gradebook data for a given course, which is crucial for understanding how grades are organized and stored within Blackboard. It can be used when integrating external grading systems, developing custom grade reporting tools, or when needing to understand the grading structure of a particular course. The endpoint returns the schemas without actual grade data, focusing solely on the structural aspects of the gradebook." }, { "slug": "BLACKBOARD_GET_GRADING_PERIOD", "name": "Get gradebook periods by course and period id", "description": "Retrieves detailed information about a specific gradebook period within a course in the Blackboard learning management system. This endpoint allows users to access important data related to a particular grading period, such as its start and end dates, associated assignments, and any specific grading policies. It's particularly useful for instructors or administrators who need to review or manage the structure of their course's grading periods. The endpoint should be used when detailed information about a single gradebook period is required, rather than a list of all periods. Note that this endpoint does not modify any data; it's for retrieval purposes only." }, { "slug": "BLACKBOARD_GET_GRADING_PERIODS", "name": "Retrieve course gradebook periods", "description": "Retrieves the gradebook periods for a specified course in the Blackboard learning management system. This endpoint allows users to fetch information about the temporal structure of grade entries and assessments within a particular course. It is useful for understanding how the course's grading is organized over time, which can be essential for course management, grade reporting, and student performance tracking. The endpoint should be used when there's a need to review or analyze the grading structure of a specific course, particularly for administrative or reporting purposes. It does not modify any data and is meant for read-only operations." }, { "slug": "BLACKBOARD_GET_GROUP", "name": "Retrieve course group by ids", "description": "Retrieves detailed information about a specific group within a particular course in the Blackboard learning management system. This endpoint is used to access group data, which may include the group's name, description, membership, and other relevant details. It's particularly useful for instructors or administrators who need to manage or review group activities within a course. The endpoint should be used when specific group information is required, such as for displaying group details, verifying group settings, or preparing reports on group-based activities. It does not modify any data and is intended for read-only operations." }, { "slug": "BLACKBOARD_GET_GROUP_MEMBERSHIP", "name": "Retrieve user from course group", "description": "Retrieves detailed information about a specific user's membership or role within a group in a particular course on the Blackboard platform. This endpoint is used to access user-specific data in the context of their group participation within a course. It provides information such as the user's role in the group, join date, or any custom attributes related to their group membership. This endpoint should be used when you need to verify a user's status within a group or gather details about their group-related activities in a specific course. It does not modify any data and is purely for information retrieval purposes. Note that this endpoint only returns data for a single user in a single group and course context; it cannot be used to fetch multiple users or compare across different groups or courses simultaneously." }, { "slug": "BLACKBOARD_GET_GROUP_MEMBERSHIPS", "name": "List course group users", "description": "Retrieves a list of users belonging to a specific group within a Blackboard Learn course. This endpoint is used to access user information for group-based activities, collaborative assignments, or administrative purposes. It provides details about the members of a particular group, which can be useful for instructors or administrators managing course activities. The endpoint should be used when you need to obtain user data for a specific group context, rather than for the entire course. It's important to note that this endpoint only provides user information within the scope of the specified group and course, and does not offer details about user activities or performance outside of this context." }, { "slug": "BLACKBOARD_GET_GROUPS", "name": "Fetch course groups by id", "description": "Retrieves a list of all groups associated with a specific course in the Blackboard learning management system. This endpoint is useful for obtaining information about the various student groups, project teams, or study circles within a particular course. It should be used when you need to access group data for course management, reporting, or to facilitate group-based activities and assignments. The endpoint provides a comprehensive view of the group structure within a course but does not modify any group information. Note that this endpoint only returns group data and does not include detailed information about individual group members or their activities." }, { "slug": "BLACKBOARD_GET_GROUP_SET", "name": "Retrieve course group information", "description": "Retrieves detailed information about a specific group set within a course in the Blackboard learning management system. This endpoint allows users to fetch the properties and configuration of a particular group set, which may include details such as the group set name, description, availability, and associated groups. It is useful for obtaining up-to-date information about how groups are organized within a course, which can be valuable for course management and student collaboration purposes. This endpoint should be used when detailed information about a specific group set is needed, rather than a list of all group sets in a course. It does not modify the group set or its associated groups; it only provides read access to the existing data." }, { "slug": "BLACKBOARD_GET_GROUP_SET_CHILDREN", "name": "List course group sets", "description": "Retrieves a list of groups within a specific group set for a given course in the Blackboard learning management system. This endpoint allows educators and administrators to access detailed information about the groups created within a particular group set, facilitating management of student collaborations and assignments. It should be used when there's a need to view or analyze the structure of groups within a course, such as for attendance tracking, assignment distribution, or organizing collaborative activities. This endpoint is particularly useful for applications that need to synchronize group data with external systems or generate reports on course organization." }, { "slug": "BLACKBOARD_GET_GROUP_SETS", "name": "Retrieve course group sets", "description": "Retrieves all group sets associated with a specific course in the Blackboard learning management system. Group sets are collections of groups within a course that can be used for various collaborative activities, such as group projects, discussions, or assignments. This endpoint should be used when you need to obtain an overview of the group structure within a course, such as when preparing for group assignments or managing course organization. It provides a list of group sets, but does not include detailed information about individual groups within each set. This endpoint is particularly useful for instructors or administrators who need to manage or review the group organization of a course." }, { "slug": "BLACKBOARD_GET_INFO", "name": "Get system info", "description": "Retrieves system information about the Blackboard Learn platform. This endpoint provides essential metadata about the current state of the Blackboard system, which can include details such as the platform version, configuration settings, and operational status. It is particularly useful for administrators, developers, and integration partners who need to understand the system's capabilities, ensure compatibility, or troubleshoot issues. The endpoint should be used when up-to-date information about the Blackboard system is required, such as during initial setup, maintenance, or when developing integrations. It's important to note that this endpoint likely provides high-level system information and may not include sensitive or user-specific data." }, { "slug": "BLACKBOARD_GET_INSTITUTION_ROLE", "name": "Retrieves institution role by id", "description": "Retrieves detailed information about a specific institutional role in the Blackboard learning management system. This endpoint should be used when you need to access the properties, permissions, or settings associated with a particular role within an educational institution. It provides valuable data for role management, user access control, and system administration tasks. The endpoint is particularly useful for administrators or developers who need to verify role configurations or integrate role-based access control into their applications. Note that this endpoint only retrieves role information and cannot be used to modify or create new roles." }, { "slug": "BLACKBOARD_GET_INSTITUTION_ROLES", "name": "List institution roles", "description": "Retrieves a list of all institution roles defined within the Blackboard Learn environment. This endpoint is crucial for administrators and developers who need to understand and manage the various roles available in their institution's Blackboard system. It provides a comprehensive overview of the role structure, which is essential for user management, access control, and permission assignment across the platform. The endpoint should be used when setting up new user accounts, auditing existing roles, or integrating role-based access control in external applications. Note that this endpoint only retrieves role information and does not allow for creating, modifying, or deleting roles." }, { "slug": "BLACKBOARD_GET_LOGIN_AS_SESSIONS", "name": "Retrieve loginas sessions", "description": "Retrieves active login sessions for users in the Blackboard learning management system. This endpoint is used to monitor and manage current user sessions across the platform. It provides a list of all ongoing login sessions, which can be crucial for system administrators to track user activity, troubleshoot access issues, or enforce security policies. The tool should be used when there's a need to audit active user sessions or investigate potential unauthorized access. It does not provide historical session data or allow for direct session manipulation." }, { "slug": "BLACKBOARD_GET_MEMBERSHIP", "name": "Get user course by id", "description": "Retrieves detailed information about a specific user within a particular course in the Blackboard learning management system. This endpoint is used to fetch user-specific data in the context of a given course, which may include enrollment status, role in the course, progress, or other relevant details. It should be used when you need to access or verify a user's information or status within a specific course. This endpoint is particularly useful for generating reports, checking user progress, or managing course-specific user data. Note that it only provides information for a single user-course combination and does not return data about the user across multiple courses or course-wide user lists." }, { "slug": "BLACKBOARD_GET_MEMBERSHIPS", "name": "Get courses for category", "description": "Retrieves a list of courses associated with a specific category in the Blackboard catalog. This endpoint allows users to fetch course information based on the category type and category ID, providing a way to browse or search for courses within a particular organizational structure. It's useful for applications that need to display course offerings for a given department, subject area, or other categorical groupings. The endpoint should be used when you need to present users with a filtered view of courses or when populating course selection interfaces tied to specific categories in the Blackboard system." }, { "slug": "BLACKBOARD_GET_MESSAGE_PARTICIPANTS", "name": "Retrieve participants of course message", "description": "Retrieves a list of participants for a specific message within a Blackboard course. This endpoint allows users to access information about who is involved in a particular course message, which can be useful for tracking student engagement, managing communication, or analyzing participation patterns. It should be used when you need to know who has access to or has interacted with a specific message in a course. The endpoint does not provide the content of the message or detailed information about the participants beyond their identification within the system." }, { "slug": "BLACKBOARD_GET_MESSAGE_REPLIES", "name": "Retrieve discussion message reply", "description": "Retrieves all replies to a specific message within a discussion thread of a course in the Blackboard learning management system. This endpoint allows users to access the responses and interactions related to a particular message in a course discussion. It is useful for viewing the conversation thread, monitoring student engagement, or gathering information about a specific topic within the course discussion. The endpoint should be used when there's a need to review or analyze the replies to a particular message, such as for grading participation or facilitating further discussion. It does not provide information about other messages in the discussion or allow for creating or modifying replies; it is strictly for retrieving existing replies to the specified message." }, { "slug": "BLACKBOARD_GET_MESSAGES", "name": "Fetch messages for course id", "description": "Retrieves all messages associated with a specific course in the Blackboard learning management system. This endpoint is used to access course-related communication, announcements, and notifications. It provides a comprehensive view of all messages within the context of a particular course, which can include instructor announcements, student discussions, and system notifications. This tool should be used when there's a need to gather all communication related to a specific course, such as for auditing purposes or to provide a complete message history to students or instructors. It does not allow for filtering or searching messages; all messages for the specified course are returned." }, { "slug": "BLACKBOARD_GET_NODE", "name": "Get hierarchy node by node id", "description": "Retrieves detailed information about a specific node within the institutional hierarchy of Blackboard. This endpoint allows users to fetch data about a particular component or entity in the educational institution's structure. It should be used when specific information about a node, such as its attributes, relationships, or metadata, is needed. The endpoint is useful for applications that require navigation or display of the institutional hierarchy, or for integrations that need to synchronize node data with external systems. Note that this endpoint only provides information for a single node; to retrieve the entire hierarchy or multiple nodes, separate API calls may be necessary." }, { "slug": "BLACKBOARD_GET_NODE_ADMIN", "name": "Retrieve admin info by nodeid and userid", "description": "Retrieves the administrative status of a specific user for a particular node within the Blackboard institutional hierarchy. This endpoint allows you to check whether a user has administrative privileges for a given organizational unit, such as a department or course. Use this endpoint when you need to verify a user's administrative role or permissions within a specific part of the institution's structure. The endpoint provides information about the user's admin status but does not modify any permissions. It's particularly useful for access control, auditing, or displaying user roles in management interfaces." }, { "slug": "BLACKBOARD_GET_NODE_ADMINS", "name": "Retrieve node admins", "description": "Retrieves the list of administrators associated with a specific node in the Blackboard institutional hierarchy. This endpoint is used to fetch administrative information for a particular organizational unit, such as a department, school, or program within an educational institution. It provides insights into the management structure and helps in understanding who has administrative access to various parts of the institutional hierarchy. This tool is particularly useful for system administrators, IT staff, or institutional managers who need to review or manage administrative roles within the Blackboard system." }, { "slug": "BLACKBOARD_GET_NODE_CHILDREN", "name": "List child nodes by node id", "description": "Retrieves the immediate child nodes of a specified parent node in the Blackboard Learn Institutional Hierarchy. This endpoint is used to navigate and explore the hierarchical structure of an educational institution, allowing administrators and authorized users to view the subordinate entities (such as departments, programs, or courses) under a given node. It's particularly useful for building user interfaces that display the institutional structure or for programmatically traversing the hierarchy. The endpoint returns only direct children and does not provide information about deeper levels of the hierarchy in a single call." }, { "slug": "BLACKBOARD_GET_NODE_COURSE_ASSOCIATIONS", "name": "Retrieve courses for institutional node", "description": "Retrieves a list of courses associated with a specific node in the institutional hierarchy of Blackboard. This endpoint is used to fetch all courses linked to a particular organizational unit (such as a department, faculty, or program) within the educational institution's structure. It provides a way to navigate and explore the course offerings based on the hierarchical organization of the institution. The endpoint should be used when you need to list or enumerate courses for a specific segment of the institution, as defined by the hierarchy node. It does not provide detailed information about individual courses, only their association with the specified node." }, { "slug": "BLACKBOARD_GET_NODES", "name": "Fetch institutional hierarchy nodes", "description": "Retrieves information about the nodes within the institutional hierarchy of a Blackboard learning environment. This endpoint allows users to fetch data representing the organizational structure of an educational institution, such as departments, schools, or other administrative units. It's particularly useful for understanding the layout and relationships of different entities within the institution's Blackboard setup. The endpoint should be used when needing to map out the institutional structure, populate organization charts, or when integrating systems that require knowledge of the institution's hierarchy. Note that this endpoint only provides structural information and may not include detailed data about each node's operations or members." }, { "slug": "BLACKBOARD_GET_NODES_FOR_COURSE", "name": "Retrieve course nodes", "description": "Retrieves a list of nodes (modules or units) for a specific course in the Blackboard learning management system. This endpoint allows developers to access the structure and content organization of a course, enabling them to build applications that can navigate or display course content. It should be used when there's a need to understand the layout of a course, such as for creating a course outline or building a custom course navigation interface. The endpoint focuses solely on retrieving node information and does not modify any course data. Note that while this endpoint provides the structure of the course, it may not include the actual content of each node, which might require additional API calls." }, { "slug": "BLACKBOARD_GET_NODES_FOR_USER", "name": "Get user nodes for user id", "description": "Retrieves a list of nodes associated with a specific user in the Blackboard Learn platform. Nodes typically represent courses, organizations, or content areas that the user has access to. This endpoint is useful for obtaining an overview of a user's course enrollments or accessible content areas. It should be used when you need to list all the educational resources available to a particular user. The endpoint does not provide detailed information about the courses or content itself, only the basic node information and access levels." }, { "slug": "BLACKBOARD_GET_NODE_USER_ASSOCIATIONS", "name": "Retrieve users in institutional node", "description": "Retrieves a list of users associated with a specific node in the Blackboard Learn institutional hierarchy. This endpoint allows administrators and authorized users to fetch user information within the context of the institution's organizational structure. It is particularly useful for managing user access, roles, and permissions at different levels of the institutional hierarchy. The endpoint should be used when there's a need to audit or review user assignments within a specific department, faculty, or sub-institution. It provides a comprehensive view of user associations but does not modify any user data. Note that the response may be paginated for large user sets, and additional API calls might be necessary to retrieve the complete list of users for nodes with a high number of associated accounts." }, { "slug": "BLACKBOARD_GET_OBSERVEES", "name": "Retrieve observees of user profile", "description": "Retrieves a list of observees associated with a specific user in the Blackboard learning management system. This endpoint is used to fetch information about individuals or entities that the specified user is authorized to observe or monitor within the system. It is particularly useful for scenarios where a user, such as a parent or guardian, needs to access data about students they are responsible for. The endpoint returns details about the observees, which may include their identifiers, names, and potentially other relevant information depending on the system's configuration and privacy settings. It should be used when there's a need to gather information about the relationship between a user and their observees in an educational context." }, { "slug": "BLACKBOARD_GET_OBSERVERS", "name": "Get user observers by id", "description": "Retrieves the list of observers associated with a specific user in the Blackboard learning management system. This endpoint is used to fetch information about individuals or entities that have been granted observer access to a particular user's activities and progress. It's particularly useful for administrators, instructors, or guardians who need to monitor a student's performance and engagement within the Blackboard platform. The endpoint returns details about each observer, which may include their roles, permissions, and relationship to the observed user. This tool should be used when there's a need to review or manage the observers for a given user, such as during student progress reviews or when updating access permissions." }, { "slug": "BLACKBOARD_GET_PLACEMENT", "name": "Retrieve lti placement by id", "description": "Retrieves detailed information about a specific LTI (Learning Tools Interoperability) placement within the Blackboard Learn platform. This endpoint allows developers and administrators to fetch the configuration, settings, and integration details for a particular LTI tool placement identified by its unique placementId. Use this endpoint when you need to inspect or verify the setup of an LTI tool within Blackboard courses or content areas. The returned data may include information such as the tool's name, description, launch URL, and custom parameters. This endpoint is particularly useful for troubleshooting LTI integrations or gathering information for reporting purposes." }, { "slug": "BLACKBOARD_GET_PLACEMENTS", "name": "Fetch lti placements", "description": "Retrieves a list of all available LTI (Learning Tools Interoperability) placements within the Blackboard Learn environment. This endpoint allows developers and administrators to obtain information about where external learning tools can be integrated within the Blackboard platform. It's particularly useful when setting up or managing LTI tool integrations, as it provides insight into the possible locations where these tools can be placed. The response likely includes details such as placement IDs, names, and descriptions, though specific return fields are not provided in the schema. Use this endpoint when you need to explore or verify LTI integration options in Blackboard." }, { "slug": "BLACKBOARD_GET_POLICIES", "name": "Fetch privacy policies", "description": "Retrieves the current privacy policy for the Blackboard system. This endpoint provides access to the most up-to-date privacy policy information, which is crucial for understanding how user data is handled and protected within the Blackboard platform. It should be used when administrators, educators, or students need to review or reference the privacy policy, especially in situations involving data protection compliance or user rights inquiries. The endpoint returns the full text of the privacy policy, but does not provide version history or allow for policy modifications." }, { "slug": "BLACKBOARD_GET_PROCTORING_SERVICE", "name": "Retrieve proctoring service by id", "description": "Retrieves detailed information about a specific proctoring service integrated with Blackboard Learn. This endpoint allows users to fetch configuration details, availability status, and other relevant information for a particular online exam proctoring solution. It's particularly useful for administrators and instructors who need to verify or review the settings of a proctoring service before configuring exams. The endpoint should be used when specific details about a proctoring service are required, such as during exam setup or troubleshooting integration issues. Note that this endpoint only provides information about the service itself and does not include data about individual proctored exams or student sessions." }, { "slug": "BLACKBOARD_GET_PROCTORING_SERVICES", "name": "Retrieve proctoring services", "description": "Retrieves a list of available proctoring services integrated with the Blackboard Learn platform. This endpoint is part of Blackboard's Proctoring Services Framework and is designed to support online examination security. It should be used when administrators or instructors need to view the proctoring options available for configuring secure assessments in the Ultra Course View. The endpoint provides information about the integrated third-party proctoring solutions but does not include details about individual exam configurations or student data. Note that the actual implementation of proctoring services may require additional setup and configuration within the Blackboard Learn environment." }, { "slug": "BLACKBOARD_GET_PRONOUNS", "name": "Retrieve pronouns information", "description": "Retrieves the list of available pronouns in the Blackboard learning management system. This endpoint is used to fetch the predefined set of pronouns that users can choose from when setting up or updating their profile. It's particularly useful for applications that need to synchronize or display pronoun options consistent with the Blackboard system. The endpoint returns all currently supported pronouns, which can be used for user interface elements like dropdown menus or form fields. It should be called when initializing user profile forms or when updating the list of available pronouns in integrated systems. Note that this endpoint does not provide individual user's chosen pronouns, but rather the system-wide list of pronoun options." }, { "slug": "BLACKBOARD_GET_QUESTION_BY_ID", "name": "Retrieve assessment question", "description": "Retrieves detailed information about a specific question within an assessment for a particular course in the Blackboard learning management system. This endpoint allows users to access question content, type, scoring information, and other relevant details. It should be used when detailed information about a single question is needed, such as for review, editing, or analysis purposes. The endpoint does not modify the question; it only provides read access to the existing data. Note that the response will not include student answers or performance data related to the question." }, { "slug": "BLACKBOARD_GET_QUESTIONS", "name": "Get assessment questions by course and assessment id", "description": "Retrieves a list of questions for a specific assessment within a Blackboard course. This endpoint allows users to access the questions associated with a particular assessment, such as a quiz, test, or assignment, in a given course. It's useful for instructors or administrators who need to review, analyze, or export assessment questions. The endpoint requires both a course identifier and an assessment identifier to pinpoint the exact set of questions to retrieve. It should be used when detailed information about assessment questions is needed, but it does not provide information about student responses or scores. Note that the accessibility of this data may depend on the user's permissions within the Blackboard system." }, { "slug": "BLACKBOARD_GET_RESOURCE_CHILDREN", "name": "Get content collection resources children", "description": "Retrieves a list of child resources for a specified parent resource within the Blackboard content collection. This endpoint is used to navigate through the hierarchical structure of educational content, allowing users to explore sub-items or nested resources within a given parent resource. It's particularly useful for applications that need to display or manage the content structure of Blackboard courses or materials. The endpoint returns only direct children of the specified resource, not the entire subtree, making it suitable for building tree-like navigation or content exploration features. Note that this endpoint does not provide the actual content of the resources, only their metadata and structural information." }, { "slug": "BLACKBOARD_GET_RESOURCES", "name": "Fetch content collection resources", "description": "Retrieves a list of resources from a specified content collection within a Blackboard Learn course. This endpoint enables access to various educational materials in a course's content collection. It supports pagination and is useful for applications that need to display or manage course resources. Note that it only provides resource metadata, not the full content." }, { "slug": "BLACKBOARD_GET_REVIEW_STATUS", "name": "Get review status of user in course content", "description": "Retrieves the review status of a specific content item for a particular user within a Blackboard Learn course. This endpoint is useful for instructors or administrators to track whether a student has reviewed or interacted with a particular piece of course content. It can be used to monitor student engagement, ensure compliance with course requirements, or identify students who may need additional support. The endpoint does not modify any data and is intended for read-only operations. It's important to note that this endpoint only provides the review status and does not give detailed information about the user's interaction with the content." }, { "slug": "BLACKBOARD_GET_REVIEW_STATUS_BY_COURSE_ID", "name": "Get course performance content review status", "description": "Retrieves the content review status for a specific course in the Blackboard learning management system. This endpoint provides information about the current state of content reviews within the course, which may include details such as the number of items pending review, items that have been reviewed, or the overall progress of the review process. It is particularly useful for instructors, course designers, or administrators who need to monitor the quality assurance process of course materials. The tool should be used when there's a need to check the progress or status of content reviews for a particular course, especially in scenarios where courses undergo regular content audits or quality checks. It does not modify any course content or review status; it only retrieves the current state of reviews." }, { "slug": "BLACKBOARD_GET_RUBRIC_ASSOCIATION_BY_ID", "name": "Retrieve rubric association for course", "description": "Retrieves detailed information about a specific rubric association within a Blackboard Learn course. This endpoint allows users to access the configuration and application details of a rubric to a particular assessment or assignment. It is particularly useful for understanding how grading criteria are applied to specific coursework, enabling instructors and administrators to review and manage assessment structures. The tool should be used when detailed information about rubric implementation for a specific assignment is needed, such as during course setup, grading processes, or when analyzing assessment methodologies. It does not modify any data and is solely for retrieval purposes." }, { "slug": "BLACKBOARD_GET_RUBRIC_ASSOCIATIONS", "name": "Retrieve course rubric associations", "description": "Retrieves the associations of a specific rubric within a given course in Blackboard Learn. This endpoint allows users to fetch information about how a particular rubric is linked to various course elements such as assignments, discussions, or other assessable items. It's useful for understanding the application of rubrics across different components of a course, aiding in consistent assessment practices. The endpoint requires both a course ID and a rubric ID to pinpoint the exact associations being queried. It does not create, modify, or delete associations; it only provides read access to existing rubric-course element relationships." }, { "slug": "BLACKBOARD_GET_RUBRIC_ASSOCIATIONS_BY_COLUMN_ID", "name": "Get rubric associations for gradebook columns", "description": "Retrieves the rubric associations for a specific gradebook column within a Blackboard course. This endpoint allows users to access detailed information about how rubrics are connected to a particular grading column, which is crucial for understanding the assessment criteria and grading structure. It should be used when there's a need to review or analyze the rubric setup for a specific gradable item in a course. The tool is particularly useful for instructors, course designers, or administrators who need to ensure that the appropriate rubrics are linked to the correct gradebook columns. Note that this endpoint only provides information about existing associations and does not allow for creating, modifying, or deleting these associations." }, { "slug": "BLACKBOARD_GET_RUBRIC_BY_ID", "name": "Get course rubric by course id", "description": "Retrieves a specific rubric for a given course in the Blackboard learning management system. This endpoint allows users to access detailed information about a rubric, including its criteria, scoring methods, and any associated metadata. It is particularly useful for instructors or administrators who need to review or integrate rubric data into other systems or workflows. The endpoint should be used when detailed rubric information is required for a known course and rubric combination, but it will not modify or create new rubrics." }, { "slug": "BLACKBOARD_GET_RUBRIC_EVALUATION_BY_ID", "name": "Retrieve rubric evaluation details", "description": "Retrieves detailed information about a specific rubric evaluation within a Blackboard course. This endpoint allows users to access the assessment data, including scores and feedback, for a particular rubric evaluation associated with a course component. It is useful for instructors reviewing assessments, students viewing their feedback, or administrators analyzing evaluation data. The endpoint requires specific identifiers for the course, rubric, association, and evaluation to pinpoint the exact evaluation record. It should be used when detailed evaluation data is needed, but won't provide an overview of multiple evaluations or allow modifications to the evaluation." }, { "slug": "BLACKBOARD_GET_RUBRIC_EVALUATIONS", "name": "Retrieve rubric evaluation for attempt", "description": "Retrieves the rubric evaluations for a specific attempt on a gradebook item within a Blackboard course. This endpoint allows instructors or administrators to access detailed rubric-based assessment data for a particular student's submission. It is useful for reviewing grading decisions, providing feedback, or analyzing assessment outcomes. The tool should be used when detailed information about how a specific assignment attempt was evaluated against rubric criteria is needed. It does not modify any data and is intended for read-only access to evaluation information." }, { "slug": "BLACKBOARD_GET_RUBRICS", "name": "Fetch rubric list for course", "description": "Retrieves all rubrics associated with a specific course in the Blackboard Learn platform. This endpoint allows users to access the grading criteria and assessment tools set up for a particular course. It's useful for instructors, teaching assistants, or administrators who need to review, analyze, or manage the rubrics used for assignments and assessments within a course. The endpoint returns a list of rubrics, including their titles, descriptions, and criteria, which are essential for maintaining consistent and transparent grading practices. It should be used when there's a need to programmatically access or audit the assessment structure of a course. Note that this endpoint only provides read access to rubrics and does not allow for creation, modification, or deletion of rubrics." }, { "slug": "BLACKBOARD_GET_RULES", "name": "Retrieve course content adaptive release rules", "description": "Retrieves the adaptive release rules associated with a specific content item within a Blackboard course. This endpoint allows instructors or administrators to view the conditions under which the content becomes available to students. It should be used when there's a need to understand or audit the release criteria for a particular piece of course content. The tool returns details about the rules, which may include date, grade, membership, or review status criteria. It's particularly useful for managing complex content release strategies or troubleshooting student access issues. Note that this endpoint only provides information about existing rules and does not allow for creation or modification of rules." }, { "slug": "BLACKBOARD_GET_SETTINGS", "name": "Get upload settings", "description": "Retrieves the current upload settings for the Blackboard Learn platform. This endpoint allows administrators and authorized users to fetch the configuration parameters related to file uploads within the Blackboard system. It provides information about various aspects of file upload handling, such as maximum file size limits, allowed file types, storage configurations, and any other relevant upload-related settings. This tool should be used when there's a need to review or verify the current upload policies and constraints in place for the Blackboard instance. It does not modify any settings; it only returns the existing configuration." }, { "slug": "BLACKBOARD_GET_SIS_LOGS_BY_DATA_SET_UID", "name": "Retrieve sis dataset log by id", "description": "Retrieves a specific Student Information System (SIS) dataset from the Blackboard Learn platform using its unique identifier. This endpoint is used to access detailed information about a particular SIS dataset, which may include student records, course enrollments, or other education-related data integrated into Blackboard. It's particularly useful for administrators and developers who need to audit, analyze, or synchronize SIS data with external systems. The endpoint should be used when specific dataset details are required, rather than for bulk data retrieval. Note that access to SIS datasets may be restricted based on user roles and permissions within the Blackboard system." }, { "slug": "BLACKBOARD_GET_SYSTEM_ROLE", "name": "Retrieve system role by id", "description": "Retrieves detailed information about a specific system role in the Blackboard learning management system. This endpoint should be used when you need to access the properties, permissions, or other attributes associated with a particular role. It's useful for administrators or developers who need to understand or verify the capabilities assigned to different user types within Blackboard. The endpoint returns comprehensive data about the requested role, which may include its name, description, associated permissions, and any custom settings. However, it does not modify role information or provide a list of users assigned to the role." }, { "slug": "BLACKBOARD_GET_SYSTEM_ROLES", "name": "List system roles", "description": "Retrieves a list of all system roles defined in the Blackboard Learn platform. This endpoint provides comprehensive information about the various roles that can be assigned to users within the system, including their associated permissions and access levels. It is particularly useful for administrators and developers who need to understand the role structure of the Blackboard Learn instance, manage user permissions, or integrate role-based access control in their applications. The endpoint should be used when a complete overview of the system's role hierarchy is required, but it should not be relied upon for real-time permission checks of individual users." }, { "slug": "BLACKBOARD_GET_SYSTEM_TASK", "name": "Retrieve task by id", "description": "Retrieves detailed information about a specific system task in the Blackboard Learn platform. This endpoint allows developers to fetch the current status, details, and metadata of an individual task identified by its unique taskId. It should be used when monitoring or tracking the progress of system-level operations, such as batch processes, system updates, or administrative functions. The endpoint provides up-to-date information about the task but does not allow modification of the task itself. It's particularly useful for integrations that need to synchronize with Blackboard's system tasks or provide status updates to users." }, { "slug": "BLACKBOARD_GET_TASK", "name": "Fetch course task details", "description": "Retrieves detailed information about a specific task within a course in the Blackboard Learn platform. This endpoint allows users to fetch comprehensive data about an individual assignment, activity, or any other task associated with a particular course. It should be used when detailed information about a single task is needed, such as viewing assignment instructions, due dates, or associated materials. The endpoint is particularly useful for building interfaces that display task details to students or instructors, or for integrating task information into external learning tools. Note that this endpoint only provides information about the task itself and does not include submission data or grades." }, { "slug": "BLACKBOARD_GET_TERM", "name": "Retrieve term by id", "description": "Retrieves detailed information about a specific academic term in the Blackboard Learn system. This endpoint is used to fetch comprehensive data about a term, such as its name, start date, end date, and any associated metadata. It's particularly useful for applications that need to synchronize term information or display term details to users. The endpoint should be used when specific term information is required, rather than a list of all terms. Note that this endpoint only provides details for a single term; to get information about multiple terms, separate requests must be made for each termId." }, { "slug": "BLACKBOARD_GET_TERMS", "name": "Fetch terms list", "description": "Retrieves a list of academic terms or information about specific terms in the Blackboard learning management system. This endpoint provides access to term definitions, including start and end dates, term names, and other relevant metadata. It's useful for applications that need to synchronize academic calendars, manage course schedules, or provide term-based information to users. The endpoint supports pagination and field selection, allowing for efficient data retrieval and reduced payload sizes when only specific term information is needed. It should be used when building integrations that require up-to-date term information or when displaying term-related data in external applications connected to Blackboard." }, { "slug": "BLACKBOARD_GET_TOC_ITEMS", "name": "Retrieve toc items by course id", "description": "Retrieves the Table of Contents (TOC) items for a specified course in the Blackboard learning management system. This endpoint provides access to the structured organization of educational materials within a course, including modules, lessons, assignments, and other content types. It should be used when needing to display or analyze the content structure of a course, such as for building a course navigation interface or auditing course materials. The endpoint returns only the TOC structure and does not include the actual content of the items. It's particularly useful for applications that need to understand or replicate the course layout without accessing the full content details." }, { "slug": "BLACKBOARD_GET_TOKEN_INFO", "name": "Fetch oauth2 tokeninfo", "description": "Retrieves detailed information about a specified OAuth2 token used for authentication in the Blackboard Learn API. This endpoint allows developers to verify the validity, scope, and associated details of an access token. It should be used when an application needs to check the current state or permissions of a token, such as during user session management or before making API calls. The endpoint does not refresh or modify the token; it only provides read-only information about the token's current state." }, { "slug": "BLACKBOARD_GET_TOOLS", "name": "Get institutional node tool information", "description": "Retrieves detailed information about a specific tool associated with a particular node in the Blackboard institutional hierarchy. This endpoint is used to fetch configuration, settings, or status details for a given tool type within a specific organizational unit (node) of an educational institution. It allows developers to access and potentially manage tool-specific data for various components of the Blackboard learning environment. This endpoint should be used when detailed information about a particular tool's implementation or settings within a specific context (e.g., a course or department) is needed. It does not modify any data and is primarily for information retrieval purposes." }, { "slug": "BLACKBOARD_GET_TOP_LEVEL_COURSE_RESOURCES", "name": "Retrieve course resources by id", "description": "Retrieves a list of resources associated with a specific course in the Blackboard Learning Management System (LMS). This endpoint allows users to access educational materials, such as assignments, readings, and other study materials, that are linked to a particular course. It should be used when there's a need to fetch all available resources for a given course, which can be useful for building course content viewers, resource management tools, or for synchronizing course materials with external systems. The endpoint does not provide the actual content of the resources, but rather metadata and references to access them. It's important to note that the accessibility of resources may depend on the user's permissions within the Blackboard system." }, { "slug": "BLACKBOARD_GET_TYPES", "name": "Fetch types of goal sets", "description": "Retrieves a list of available goal set types in the Blackboard Learn system. This endpoint allows users to fetch information about the different categories or classifications of goal sets that can be created or managed within the learning management system. It is useful for understanding the structure and organization of educational objectives or learning outcomes in Blackboard. The endpoint should be used when planning to create new goal sets or when needing an overview of the existing goal set categories. It does not provide specific goals or content within these sets, only the types or categories available for organization." }, { "slug": "BLACKBOARD_GET_USER", "name": "Retrieve user by id", "description": "Retrieves detailed information about a specific user in the Blackboard Learn system. This endpoint allows you to fetch user profile data, such as name, email, system role, and other relevant details associated with the user account. It should be used when you need to access or display information about a particular user, such as for user management tasks, profile displays, or data synchronization between systems. The endpoint returns only the publicly available information about the user and does not provide access to sensitive or private data. It's important to note that while this is a public API endpoint, the actual data returned may still be subject to user privacy settings and system-wide access controls." }, { "slug": "BLACKBOARD_GET_USER_AVATAR", "name": "Retrieve user avatar by userid", "description": "Retrieves the avatar (profile picture) for a specified user in the Blackboard Learn platform. This endpoint allows you to fetch the current profile image associated with a user's account based on their unique user ID. It should be used when you need to display or access a user's avatar within your application or integration. The endpoint returns the image data directly, which can be used for rendering the avatar or storing it locally. Note that this endpoint only provides the avatar image and does not include any other user profile information. If the user has not set an avatar, the endpoint may return a default image or an appropriate error response." }, { "slug": "BLACKBOARD_GET_USER_GRADES", "name": "Retrieve gradebook entry for user in course", "description": "Retrieves detailed gradebook information for a specific user within a particular course in the Blackboard learning management system. This endpoint allows educators, administrators, or authorized users to access individual student performance data, including grades, assignments, and other relevant gradebook entries. It should be used when detailed grade information for a single student in a specific course is required, such as for progress monitoring or generating individual reports. The endpoint does not provide aggregate data for multiple students or courses and cannot be used to modify gradebook entries." }, { "slug": "BLACKBOARD_GET_USER_MEMBERSHIPS", "name": "Retrieve user courses by id", "description": "Retrieves a list of courses associated with a specific user in the Blackboard Learn platform. This endpoint is used to fetch all courses that a user is enrolled in or has access to, providing essential information for course management and user-specific content delivery. It's particularly useful for generating user dashboards, course listings, or when syncing course data with external systems. The endpoint returns course details but does not provide in-depth information about course content or student performance within those courses." }, { "slug": "BLACKBOARD_GET_USER_PRONUNCIATION_AUDIO", "name": "Get user pronunciation audio", "description": "Retrieves the pronunciation audio associated with a specific user's profile in Blackboard Learn. This endpoint allows applications to access the audio file that contains the correct pronunciation of the user's name. It should be used when there's a need to play or display the audio pronunciation of a user's name, such as in user directory listings, class rosters, or personalized greetings. The audio file returned may be in a common audio format (e.g., MP3, WAV). If no pronunciation audio has been set for the user, the endpoint may return a 404 error or an empty response. This tool does not upload or modify the pronunciation audio; it is for retrieval purposes only." }, { "slug": "BLACKBOARD_GET_USERS", "name": "Retrieve users list", "description": "The GetUsersEndpoint retrieves user information from the Blackboard Learn system. This endpoint allows you to fetch a list of users with their associated details, supporting various query parameters for filtering, sorting, and pagination. It's particularly useful for applications that need to synchronize user data, manage user accounts, or display user information within an educational context. The endpoint returns user data in a structured format, likely including fields such as user IDs, usernames, email addresses, and other relevant profile information. While it provides comprehensive user data, it does not modify user information - separate endpoints would be required for user creation, updates, or deletion. Use this endpoint when you need to access user data for reporting, user management, or integration purposes within your Blackboard-connected application." }, { "slug": "BLACKBOARD_GET_VERSION", "name": "Retrieve system version information", "description": "Retrieves the current version information of the Blackboard Learn system. This endpoint should be used when developers or administrators need to check the specific version of the Blackboard instance they are working with. It's particularly useful for ensuring compatibility with other tools or services that integrate with Blackboard, or for troubleshooting version-specific issues. The endpoint returns version details of the system, which may include the major, minor, and patch version numbers. It does not provide information about individual components or modules within the Blackboard system, focusing solely on the overall system version." }, { "slug": "BLACKBOARD_GRADE_ACCESS_WITH_RIGHTS_VALIDATION", "name": "Retrieve user gradebook column", "description": "Retrieves a specific user's grade for a particular gradebook column in a Blackboard Learn course. This endpoint allows instructors or administrators to fetch individual grade entries, providing a targeted way to access student performance data. It's particularly useful for generating individual student reports, verifying grade entries, or integrating with external grading systems. The endpoint returns the grade value and potentially additional metadata such as submission date or feedback. It should be used when precise, individual grade information is needed, rather than for bulk grade retrieval across multiple students or columns." }, { "slug": "BLACKBOARD_GROUP_MEMBERSHIP_API_DETAILS", "name": "List users in course group", "description": "Retrieves a list of users belonging to a specific group within a course in the Blackboard learning management system. This endpoint is useful for obtaining detailed information about group members, such as their names, roles, and other relevant data. It should be used when you need to access user information for a particular group in a course, for example, to manage group activities or assess group participation. The endpoint does not modify any data and is intended for read-only operations. It may not provide real-time updates if user information has changed very recently." }, { "slug": "BLACKBOARD_INITIALIZE_EDUCATIONAL_ENTITY", "name": "Create new course with json input", "description": "Creates a new course in the Blackboard Learn system with specified attributes and settings. This endpoint allows for the creation of both academic courses and organizational units, with extensive customization options for course properties, availability, enrollment methods, and localization. It should be used when setting up new courses or organizations within Blackboard, either manually or as part of an automated provisioning process. The endpoint provides flexibility in course setup, supporting both Ultra and Classic course views, various availability and enrollment options, and integration with external systems through data source and external ID fields. However, it's important to note that some settings are specific to either Ultra or Classic courses, and certain parameters may have interdependencies or require specific permissions to modify. " }, { "slug": "BLACKBOARD_INITIATE_GROUP_MEMBER_ADDITION", "name": "Update user in course group", "description": "Updates a user's information within a specific group of a course in Blackboard Learn. This endpoint allows for modifying user-related data or settings in the context of a particular course group. It should be used when changes need to be made to a user's status, role, or other attributes specific to their participation in a group within a course. The endpoint doesn't create new user entries or move users between groups; it's specifically for updating existing user information. Note that the actual data being updated is likely sent in the request body, which is not detailed in the provided schema. Ensure you have the necessary permissions to modify user data within the specified course and group before using this endpoint." }, { "slug": "BLACKBOARD_LIST_GOAL_SET_CATEGORIES", "name": "Fetch goal set categories", "description": "Retrieves the categories associated with a specific goal set in the Blackboard learning management system. This endpoint is used to fetch the organizational structure of educational objectives within a predefined set of goals. It should be used when needing to understand or display the categorization of learning objectives for a particular goal set, such as when building course structures or reporting on educational outcomes. The endpoint returns only the categories within the specified goal set and does not provide detailed information about the goals themselves. This tool is particularly useful for administrators and instructors who need to manage and organize educational goals across courses or programs." }, { "slug": "BLACKBOARD_LIST_GRADEBOOK_COLUMNS", "name": "List Gradebook Columns", "description": "Retrieves all gradebook columns for a specified course in the Blackboard learning management system. This endpoint allows instructors or authorized users to access the structure and details of the gradebook for a particular course. It returns information about each column, such as column name, points possible, creation date, and last modified date. This tool is essential for understanding the current layout of a course's gradebook, preparing for grade entry, or auditing the grading structure. It should be used when a comprehensive view of the gradebook organization is needed. Note that this endpoint only provides metadata about the columns and does not include actual student grades or submissions." }, { "slug": "BLACKBOARD_LOAD_COURSE_GROUP_DETAILS", "name": "Get group details from course api", "description": "Retrieves detailed information about a specific group within a Blackboard course. This endpoint is used to fetch comprehensive data about a group, including its name, description, membership details, and other relevant attributes. It's particularly useful for applications that need to display or manage group information within the context of a course. The endpoint should be used when detailed group information is required, such as for group management interfaces or when populating group-specific views in an application integrated with Blackboard. It does not modify any group data and is intended for read-only operations. Note that this endpoint focuses on a single group and does not provide a list of all groups in a course or allow for group creation or modification." }, { "slug": "BLACKBOARD_LOAD_COURSE_GROUP_USER_INFO", "name": "Retrieve user in course group", "description": "Retrieves detailed information about a specific user within a group in a Blackboard Learn course. This endpoint allows developers to access user data in the context of both the course and the group, providing insights into the user's role, permissions, and activities within that specific group and course. Use this endpoint when you need to fetch user-specific information related to their participation in a particular group within a course. It's particularly useful for generating reports, managing group activities, or personalizing user experiences within the course and group context. Note that this endpoint only provides information about the user in relation to the specified group and course; it does not return general user profile data or information about the user's participation in other courses or groups." }, { "slug": "BLACKBOARD_MANAGE_COURSE_DATA_ACCESS", "name": "Retrieve course list", "description": "Retrieves a list of courses from the Blackboard Learn environment. This endpoint is essential for applications that need to access and display course information within the Learning Management System (LMS). It allows developers to fetch course data for various purposes such as building course catalogs, managing enrollments, or syncing course information with external systems. The endpoint is part of the public v2 API, making it suitable for integration with third-party services. While it provides a comprehensive list of courses, it may not include detailed course content or student-specific information, which might require separate API calls." }, { "slug": "BLACKBOARD_MANUAL_GRADE_COLUMN_CREATION", "name": "Add course gradebook column", "description": "Creates a new grade column in a Blackboard course's gradebook. This endpoint allows instructors or administrators to add a new column for recording and managing student grades within a specific course. It provides extensive customization options for grading methods, score calculations, student visibility, and anonymous grading. Use this endpoint when setting up a new assignment, exam, or other gradable item in a course. It's particularly useful for configuring complex grading scenarios or when integrating external grading systems with Blackboard." }, { "slug": "BLACKBOARD_MANUAL_GRADE_COLUMN_MODIFICATION", "name": "Patch gradebook column", "description": "This endpoint allows for updating specific properties of an existing grade column within a course's gradebook in the Blackboard Learn platform. It provides granular control over various aspects of the grade column, including its metadata, scoring configuration, visibility to students, and grading settings. The PATCH operation supports partial updates, meaning you can modify individual properties without affecting others. This is particularly useful for adjusting grade column settings throughout the academic term, such as changing due dates, modifying scoring models, or updating anonymous grading configurations. Note that this endpoint does not create new grade columns or delete existing ones; it is specifically for modifying properties of an already existing grade column identified by the courseId and columnId." }, { "slug": "BLACKBOARD_MODIFY_COURSE_ANNOUNCEMENT_ACCESS", "name": "Modify announcement details", "description": "This endpoint allows you to update an existing course announcement in the Blackboard Learn platform. It can modify the announcement's title, body content, draft status, and availability settings. The body content supports rich text formatting using BbML (Blackboard Markup Language), enabling the creation of visually appealing and structured announcements. Use this endpoint when you need to edit or refine an announcement's content, change its visibility, or update its publication status. It's particularly useful for correcting errors, adding new information, or adjusting the timing of announcement visibility to students." }, { "slug": "BLACKBOARD_PATCH_TOOL", "name": "Patch hierarchy node tool settings", "description": "This endpoint allows you to update the settings of a specific tool within a node of Blackboard's institutional hierarchy. It provides granular control over tool availability and configuration for different user types (regular, guest, and observer). Use this endpoint when you need to modify existing tool settings, such as enabling/disabling a tool, locking its configuration, or adjusting its applicability for different user roles. This is particularly useful for managing tool access across various levels of an institution's structure, ensuring appropriate permissions and visibility for different user categories." }, { "slug": "BLACKBOARD_POST_ULTRA_COURSE_DISCUSSION_REPLY", "name": "Post discussion message in course", "description": "Posts a new message to a specific discussion within a Blackboard Learn course. This endpoint allows users to contribute to course discussions by adding new messages, supporting both general course discussions and group-specific discussions. It provides options for setting the message status, enabling features like draft saving and soft deletion. The endpoint is essential for facilitating student engagement and collaborative learning through structured, asynchronous communication within the Blackboard platform." }, { "slug": "BLACKBOARD_REMOVE_CHILD_COURSE", "name": "Delete child course association", "description": "Deletes a specified child course from a parent course in the Blackboard learning management system. This endpoint is used to remove a sub-course or section from the main course structure, helping to organize and manage course hierarchies. It should be used when restructuring courses, removing outdated sections, or cleaning up course catalogs. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint requires both the parent course ID and the child course ID to ensure precise deletion of the correct course relationship." }, { "slug": "BLACKBOARD_REMOVE_COURSE_GROUP", "name": "Delete user from course group", "description": "This endpoint removes a specific user from a designated group within a course in Blackboard Learn. It is used when an administrator or instructor needs to adjust group membership, such as when a student changes project teams or is no longer part of a specific study group. The operation is final and will immediately revoke the user's access to group-specific resources and activities. It should be used cautiously, as removing a user from a group may affect their ability to participate in group-related coursework. This endpoint does not remove the user from the course itself, only from the specified group within the course." }, { "slug": "BLACKBOARD_REMOVE_COURSE_NOTICE", "name": "Delete course announcement by id", "description": "This endpoint deletes a specific announcement within a course in the Blackboard Learn platform. It allows administrators or authorized users to remove outdated, incorrect, or unnecessary announcements from a course, helping to maintain clear and relevant communication. The operation is irreversible, so it should be used with caution. This tool is particularly useful for content clean-up, managing course information, and ensuring that students only see current and applicable announcements." }, { "slug": "BLACKBOARD_REMOVE_SPECIFIC_GRADE_FIELD", "name": "Delete gradebook column in course", "description": "Deletes a specific gradebook column from a course in Blackboard Learn. This endpoint allows instructors or administrators to remove a column from the gradebook, which may be necessary for course restructuring or correcting errors in grade calculations. It should be used with caution as the deletion is permanent and may affect overall grade calculations. This operation is available in both Ultra and Original experiences of Blackboard Learn. Note that this action cannot be undone, and all associated grade data for the column will be permanently removed." }, { "slug": "BLACKBOARD_REMOVE_ULTRA_COURSE_DISCUSSION_POST", "name": "Delete discussion message by id", "description": "This endpoint allows for the deletion of a specific message within a discussion thread in a Blackboard course. It should be used when an instructor or authorized user needs to remove inappropriate, outdated, or incorrect content from a course discussion. The operation is irreversible, so it should be used with caution. This endpoint only deletes the specified message and does not affect other messages in the discussion or the discussion thread itself. It's important to note that deleting a parent message may have implications for its child messages or the structure of the discussion thread, depending on how Blackboard handles such deletions." }, { "slug": "BLACKBOARD_REQUEST_TOKEN", "name": "Obtain oauth2 token via post", "description": "Obtains an OAuth2 token for authenticating and authorizing requests to the Blackboard API. This endpoint is essential for securing access to Blackboard's resources and should be used before making any API calls that require authentication. The token obtained from this endpoint is typically valid for a limited time and should be refreshed periodically. This endpoint supports both client credentials flow for server-to-server interactions and authorization code flow for user-centric operations. It's important to note that the token should be kept secure and not exposed to end-users or in client-side code." }, { "slug": "BLACKBOARD_RETRIEVE_STUDENT_SUBMISSION_FILE", "name": "Download course gradebook attempt file", "description": "This endpoint allows for downloading a specific file associated with a student's attempt on an assignment within a Blackboard course. It retrieves the file content based on the provided course, attempt, and file identifiers. This tool should be used when access to the actual file submitted by a student is required, such as for grading, review, or archival purposes. It's particularly useful for assignments that involve file submissions like essays, projects, or any document-based work. The endpoint does not provide metadata about the file or attempt; it solely focuses on file retrieval." }, { "slug": "BLACKBOARD_REVISE_ULTRA_COURSE_DISCUSSION_POST", "name": "Update discussion message status", "description": "Updates a specific message within a course discussion on the Blackboard platform. This endpoint allows for modifying the status and/or content of an existing message. It can be used to publish drafts, soft-delete messages, or update the body text of a message. The update is partial, meaning you can modify either the status, the body, or both without affecting the other fields. This endpoint is particularly useful for moderating discussions, editing messages for clarity, or managing the visibility of messages within a course context. Note that updating a message's status may affect its visibility to other users in the discussion." }, { "slug": "BLACKBOARD_ROLE_BASED_GRADE_ATTEMPT_VISIBILITY", "name": "Retrieve course gradebook column attempts", "description": "Retrieves attempt data for a specific gradebook column within a Blackboard course. This endpoint allows instructors and administrators to access detailed information about student attempts on assignments, tests, or other graded activities associated with the specified gradebook column. It is particularly useful for tracking student progress, analyzing performance trends, and gathering data for assessment purposes. The endpoint should be used when detailed information about individual student attempts is needed, such as for grading, providing feedback, or generating reports. It does not modify any data and is intended for read-only access to attempt information." }, { "slug": "BLACKBOARD_SECURE_GRADE_ATTEMPT_VERSION", "name": "Get course gradebook attempt", "description": "Retrieves detailed information about a specific attempt for a gradebook column in a Blackboard course. This endpoint allows instructors or authorized users to access individual student attempt data, including scores, submission dates, and potentially feedback. It's particularly useful for tracking student progress, reviewing specific submissions, or addressing grade inquiries. The endpoint should be used when detailed information about a single attempt is needed, rather than for bulk data retrieval or when an overview of all attempts is required." }, { "slug": "BLACKBOARD_SET_NODE_ADMIN_ASSOCIATION", "name": "Update admin node roles", "description": "Updates the roles of an administrative user for a specific node within the institutional hierarchy of Blackboard. This endpoint allows you to modify the permissions and responsibilities of an admin user by assigning or changing their roles for a particular node. It is used when you need to adjust an admin's access or capabilities within a specific part of the institution's structure. The endpoint requires the node ID, user ID, and a list of roles to be assigned. It's important to note that this operation replaces the existing roles for the user at the specified node, so all desired roles should be included in the request." }, { "slug": "BLACKBOARD_SYNCHRONOUS_COURSE_OR_ORG_REMOVAL", "name": "Delete course by courseid", "description": "The DeleteCourse endpoint permanently removes a specific course from the Blackboard Learn platform. This operation deletes all associated course content, assignments, and student data for the specified course. It should be used with extreme caution, typically only when a course is no longer needed and all necessary data has been backed up. This action is irreversible, so it's crucial to verify the courseId before execution. The endpoint is part of the v2 API, indicating it's a more recent version of the Blackboard Learn REST API." }, { "slug": "BLACKBOARD_UPDATE_ADAPTIVE_RELEASE_RULE_CRITERION", "name": "Patch adaptiverelease criterion", "description": "Updates a specific criterion within an adaptive release rule for a course content item in Blackboard Learn. This endpoint allows instructors or administrators to modify the conditions under which course materials become available to students. It can be used to adjust release criteria based on dates, grades, user progress, or other factors supported by Blackboard's adaptive release feature. The endpoint should be used when fine-tuning content visibility rules or correcting existing criteria. It's important to note that this operation only modifies the specified criterion and does not affect other criteria within the same rule or other rules for the content item. Proper understanding of the adaptive release feature and careful consideration of the impact on student access is recommended before making changes." }, { "slug": "BLACKBOARD_UPDATE_ANNOUNCEMENT", "name": "Modify system announcement details", "description": "This endpoint allows you to update an existing System Announcement in Blackboard. It provides the ability to modify the announcement's title, content (using BbML formatting), availability settings, and display options. Use this endpoint when you need to change the content or visibility of a specific announcement, such as extending its duration, updating its message, or adjusting where it appears in the Blackboard interface. The update is partial, meaning you only need to include the fields you want to change. Be cautious when updating availability settings, as changes may immediately affect the announcement's visibility to users." }, { "slug": "BLACKBOARD_UPDATE_ATTENDANCE_RECORD", "name": "Update attendance record", "description": "Update the Course Meeting Attendance data for the given Course/Organization. The \"course.attendance.MODIFY\" entitlement is required to update a Course Meeting Attendance. The \"course.attendance.VIEW\" entitlement is required to view a Course Meeting attendance. **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_UPDATE_ATTENDANCE_RECORDS", "name": "Update attendance records", "description": "Creates or updates attendance records for the meeting for all users in the course. User required both of the entitlements below. If the user does not have the required entitlements,no records are created or modified. Entitlement | User Access ------------|----------- course.attendance.CREATE | Create Course/Organization Course Meeting Attendance course.attendance.MODIFY | Update Course/Organization Meeting Attendance **Since**: 3500.7.0" }, { "slug": "BLACKBOARD_UPDATE_CALENDAR_ITEM", "name": "Patch calendar item by type and id", "description": "This endpoint allows you to update an existing calendar item in the Blackboard system. It can be used to modify various aspects of an event, assignment, or other calendar entries, including basic details, recurrence settings, and LTI (Learning Tools Interoperability) integration. The endpoint is particularly useful for making changes to scheduled items, adjusting dates, updating descriptions, or linking to external learning resources. It supports both one-time and recurring events, with detailed options for setting recurrence patterns. Note that some properties, such as dynamicCalendarItemProps, are read-only and cannot be modified through this endpoint." }, { "slug": "BLACKBOARD_UPDATE_CATEGORY", "name": "Update category details by type", "description": "Updates specific details of a category in the Blackboard catalog system. This endpoint allows modification of various category attributes such as title, description, front page visibility, availability, access restrictions, and associated institution roles. It's used to manage and organize the catalog structure, controlling how categories are presented and accessed within the Blackboard learning environment. The endpoint requires specifying both the category type and ID in the URL path to target the correct category for updates. It's particularly useful for administrators or content managers who need to refine category settings or adjust access permissions." }, { "slug": "BLACKBOARD_UPDATE_COLUMN_ATTEMPT", "name": "Update attempt status in gradebook", "description": "This endpoint allows for updating specific attributes of a gradebook attempt for a particular course, column, and attempt ID. It is used to modify various aspects of a student's submission, including its status, score, feedback, and grading properties. The PATCH operation enables partial updates, allowing instructors to change only the necessary fields without affecting others. This tool is particularly useful for managing the grading process, providing feedback to students, and handling special grading scenarios such as exemptions or multiple attempts. It should be used when there's a need to update any information related to a specific gradebook entry, but not for creating new attempts or retrieving attempt information. Note that some status values are deprecated, and changing the reconciliationMode requires also providing a new score." }, { "slug": "BLACKBOARD_UPDATE_COLUMN_GRADE", "name": "Patch grade information for user", "description": "The UpdateGrade endpoint allows instructors to modify various aspects of a student's grade for a specific course and gradebook column in the Blackboard Learning Management System. This PATCH operation enables overriding grades, adding instructor notes and feedback, marking grades as exempt from course grade calculations, and associating predefined grade notations. It's particularly useful for handling manual grade entries, overriding automatically calculated grades, and managing special grading circumstances. The endpoint should be used when there's a need to adjust individual student grades outside of the standard grading process, provide detailed feedback, or apply special grading considerations. It's important to note that this endpoint modifies existing grade entries and does not create new ones; it should not be used for initial grade submissions." }, { "slug": "BLACKBOARD_UPDATE_CONTENT", "name": "Patch course content", "description": "This endpoint allows you to update existing content within a specific Blackboard Learn course. It provides extensive control over content properties, including title, body, description, position, availability, and more. Use this endpoint when you need to modify course content attributes, reorganize content structure, or adjust content visibility and access settings. The endpoint is particularly useful for content management tasks such as updating content details, moving content between folders, setting adaptive release rules, or changing content types. Note that while you can update various aspects of the content, you cannot create new content or delete existing content using this endpoint. Be aware of the specific content handler types supported and their respective documentation when dealing with specialized content types." }, { "slug": "BLACKBOARD_UPDATE_COURSE", "name": "Patch course details by id", "description": "Updates an existing course in Blackboard Learn with the provided information. This endpoint allows modification of various course attributes including basic details, availability settings, enrollment options, and localization preferences. It's particularly useful for administrators or instructors who need to adjust course settings after initial creation, such as changing the course name, updating its availability, or modifying enrollment options. The endpoint supports partial updates, meaning only the fields that need to be changed should be included in the request body. Note that some settings, like allowing guests or observers, are only modifiable for Classic courses, while others apply to both Classic and Ultra courses. Care should be taken when using the 'closedComplete' status, as it can limit further updates, especially for Ultra courses." }, { "slug": "BLACKBOARD_UPDATE_COURSE_MEETING", "name": "Patch course meeting details", "description": "This endpoint allows you to update the details of a specific meeting within a course in the Blackboard learning management system. It uses a PATCH request to modify one or more attributes of an existing meeting, such as its title, description, start and end times, or associated external link. This tool is particularly useful for making changes to scheduled meetings, correcting information, or updating virtual meeting links without having to recreate the entire meeting entry. When using this endpoint, you can selectively update only the fields that need to be changed, leaving other attributes untouched. Note that you must have appropriate permissions within the Blackboard system to modify course meetings, and changes made through this API will be reflected in the course's meeting schedule visible to students and instructors." }, { "slug": "BLACKBOARD_UPDATE_DATA_SOURCE", "name": "Patch data source by external id", "description": "This endpoint allows for updating specific attributes of an existing data source in the Blackboard system. It uses the PATCH method to apply partial modifications to a data source identified by its unique dataSourceId. The primary use case is to update the external ID or description of a data source, enabling better synchronization with external systems and improved documentation within Blackboard. This endpoint should be used when there's a need to modify data source metadata without changing its core functionality or relationships within the system. It's particularly useful for maintaining accurate and up-to-date information about data sources used in educational institutions integrated with Blackboard." }, { "slug": "BLACKBOARD_UPDATE_DISCUSSION", "name": "Update course discussion details", "description": "Updates a specific discussion forum within a Blackboard Learn course. This endpoint allows for partial updates to discussion properties such as title, availability, grading options, and the main topic content. It is used when modifying existing discussions without creating a new one or altering read-only metadata. The endpoint supports BbML formatting for rich text content in the topic body. Note that this operation only affects the discussion settings and main topic; it does not modify individual replies or nested messages within the discussion thread." }, { "slug": "BLACKBOARD_UPDATE_DOMAIN_CONFIG", "name": "Update lti domain configuration", "description": "This endpoint allows updating an existing LTI (Learning Tools Interoperability) domain configuration in the Blackboard Learn platform. It is used to modify various settings related to LTI tool integration, including domain information, security settings, user data sharing preferences, and service permissions. The endpoint is particularly useful when changes need to be made to an existing LTI tool configuration, such as updating the primary domain, modifying data sharing settings, or adjusting service permissions. It provides fine-grained control over how the LTI tool interacts with Blackboard Learn and what data it can access. This endpoint should be used carefully, as changes to these settings can significantly impact the functionality and security of the LTI integration." }, { "slug": "BLACKBOARD_UPDATE_GRADE_COLUMN", "name": "Update gradebook column", "description": "This endpoint updates a specific grade column in a course's gradebook. It allows modification of column details, scoring settings, availability, grading options, and rubric associations. Use it to adjust existing columns for changes in course structure or grading policies. Note that some fields are version-specific or limited by course type (Classic vs Ultra)." }, { "slug": "BLACKBOARD_UPDATE_GRADE_NOTATION", "name": "Patch grade notation for course", "description": "This endpoint allows you to update an existing grade notation for a specific course in the Blackboard learning management system. It's used to modify the performance code and/or description associated with a grade notation in the course's gradebook. This tool is particularly useful for administrators or instructors who need to adjust grading scales or clarify the meaning of certain grade notations. The update is performed by specifying the course ID and grade notation ID in the path, and providing the new code and/or description in the request body. Note that this endpoint only updates existing grade notations and cannot be used to create new ones or delete existing notations." }, { "slug": "BLACKBOARD_UPDATE_GRADING_PERIOD", "name": "Update grading period info", "description": "Updates a specific grading period within a course's gradebook in the Blackboard Learn system. This endpoint allows for modification of various attributes of an existing grading period, including its title, description, position in the gradebook, date settings, and temporal coverage. It's used when course instructors or administrators need to adjust grading period details after initial creation, such as extending deadlines or reorganizing the gradebook structure. The endpoint provides flexibility in updating individual fields without requiring all parameters to be specified. It's particularly useful for managing the chronological structure of a course and associating gradable items with specific time frames." }, { "slug": "BLACKBOARD_UPDATE_GROUP", "name": "Update course group information", "description": "Updates an existing group within a specified course in the Blackboard Learn system. This endpoint allows for modification of various group properties including its external ID, name, description, availability status, and enrollment settings. It's particularly useful for adjusting group configurations after initial creation, such as changing visibility, updating enrollment limits, or modifying the signup process. The endpoint supports rich text formatting through BbML for descriptions, enabling detailed and well-formatted group information. Use this when you need to alter any aspect of an existing group's setup or presentation to students within a course." }, { "slug": "BLACKBOARD_UPDATE_GROUP_SET", "name": "Update course group details", "description": "Updates the properties of an existing group within a specific course in the Blackboard Learn platform. This endpoint allows for modifying various aspects of a group, including its name, description, availability to students, and enrollment settings. It's particularly useful for instructors or administrators who need to adjust group configurations after initial creation, such as changing access permissions, updating descriptive information, or modifying enrollment limits. The endpoint supports rich text formatting through BbML in description fields, enabling the creation of detailed, well-formatted group information. When using this endpoint, be aware that changes may immediately affect student access and group visibility within the course." }, { "slug": "BLACKBOARD_UPDATE_MEMBERSHIP", "name": "Modify user enrollment in course", "description": "Updates a user's membership details within a specific Blackboard course. This endpoint allows for modifying various aspects of a user's enrollment, including their role, availability, and position within the course hierarchy. It's particularly useful for managing cross-listed courses, updating user roles, and adjusting instructor display orders. The endpoint should be used when changes to a user's course membership are required, such as promoting a teaching assistant to an instructor or updating a user's availability status. It does not provide functionality for adding or removing users from a course." }, { "slug": "BLACKBOARD_UPDATE_MESSAGE", "name": "Update course message read status", "description": "Updates the read status of a specific message within a Blackboard course. This endpoint allows you to mark a message as read or unread, which can be useful for tracking user engagement or managing message statuses. Use this when you need to update the read status of a particular message, such as when a user views a message or wants to mark it as unread for later attention. The endpoint only modifies the read status and does not affect other properties of the message or return the updated message content." }, { "slug": "BLACKBOARD_UPDATE_NODE", "name": "Update institution node by id", "description": "This endpoint allows for updating specific properties of a node within the institutional hierarchy of Blackboard. It is used to modify existing nodes, enabling administrators to keep the institutional structure up-to-date. The endpoint supports partial updates, meaning only the provided fields will be modified. It's particularly useful for renaming nodes, updating descriptions, changing external identifiers, or restructuring the hierarchy by updating parent relationships. However, it cannot be used to create new nodes or delete existing ones. Care should be taken when modifying the parentId to ensure the integrity of the hierarchical structure is maintained." }, { "slug": "BLACKBOARD_UPDATE_NODE_COURSE_ASSOCIATION", "name": "Update course primary node status", "description": "Updates the association between a course and a node in the Blackboard Learn institutional hierarchy. This endpoint allows you to modify the primary status of a course-node association. Use this when you need to change whether a specific node is the primary association for a course, which can affect how the course is organized and displayed within the institutional hierarchy. This operation is particularly useful for managing course placements in complex institutional structures with multiple hierarchical levels. Note that this endpoint only modifies the 'isPrimary' status and does not create or delete associations." }, { "slug": "BLACKBOARD_UPDATE_PLACEMENT", "name": "Update lti placement details", "description": "This endpoint allows you to update an existing LTI (Learning Tools Interoperability) placement in the Blackboard learning management system. It provides granular control over various aspects of the placement, including its name, description, icon, URL, visibility settings, grading capabilities, and custom launch parameters. Use this endpoint when you need to modify the properties of an existing LTI integration, such as changing its availability, updating its display information, or adjusting its behavior within courses. The endpoint is particularly useful for administrators or instructors who need to fine-tune the integration of external learning tools with Blackboard." }, { "slug": "BLACKBOARD_UPDATE_PRONOUN", "name": "Update pronoun status by id", "description": "Updates the information for a specific pronoun in the Blackboard system. This endpoint allows modification of an existing pronoun's name and status, identified by the pronoun ID in the URL path. It's used to manage the list of available pronouns that users can select for their profiles, supporting inclusive identity representation. The endpoint should be used when administrators need to edit pronoun details or change approval statuses. Note that this operation only updates the specified fields and does not affect other pronoun attributes not included in the request." }, { "slug": "BLACKBOARD_UPDATE_QUESTION", "name": "Modify assessment question", "description": "This endpoint allows you to update an existing question within a specific assessment in a Blackboard course. It provides the ability to modify various aspects of the question, including its title, content, scoring, feedback, and positioning within the assessment. This tool is particularly useful for refining assessment questions after initial creation, adjusting difficulty levels, or incorporating new information into existing questions. It supports a wide range of question types, from simple multiple-choice to complex AI-driven chat questions, making it versatile for different educational needs. When using this endpoint, ensure that the updates maintain the integrity and educational objectives of the assessment." }, { "slug": "BLACKBOARD_UPDATE_REVIEW_STATUS", "name": "Patch course content review status", "description": "Updates the review status of a specific content item for a particular user within a Blackboard Learn course. This endpoint allows for marking course materials as reviewed or not reviewed, which can be useful for tracking student progress or ensuring compliance with course requirements. It should be used when a user has completed reviewing a piece of content or when their review status needs to be reset. This operation is particularly useful for self-paced learning scenarios or when instructors need to monitor student engagement with course materials. The endpoint is available from Blackboard Learn API version 3700.16.0 onwards." }, { "slug": "BLACKBOARD_UPDATE_RUBRIC", "name": "Patch course rubric details", "description": "Updates a specific rubric within a Blackboard Learn course. This endpoint allows for modification of various aspects of an existing rubric, including its title, description, type, and detailed grading criteria. It's used to refine assessment tools, adjust grading scales, or modify evaluation criteria without creating an entirely new rubric. The update can encompass changes to the rubric's structure (columns and rows) as well as the specific grading details in each cell. This functionality is particularly useful for instructors who need to fine-tune their assessment methods based on course progression or student feedback. Note that this endpoint modifies an existing rubric; it cannot be used to create a new one or to delete a rubric entirely." }, { "slug": "BLACKBOARD_UPDATE_RUBRIC_ASSOCIATION", "name": "Update rubric association settings", "description": "Updates the properties of a rubric association within a specific Blackboard course. This endpoint allows for modifying various aspects of how a rubric is associated with course content, including its visibility to students and its use in grading. It can be used to adjust rubric settings after initial setup, enabling instructors to fine-tune their assessment strategies. The endpoint is particularly useful for changing rubric visibility or toggling whether the rubric is used for grading without creating a new association. Note that this endpoint updates an existing association; it cannot create new associations or completely remove existing ones." }, { "slug": "BLACKBOARD_UPDATE_RUBRIC_EVALUATION", "name": "Update rubric evaluation", "description": "Updates a specific rubric evaluation for a course in the Blackboard Learning Management System. This endpoint allows for modifying the scores and feedback for individual criteria within a rubric that has been associated with a course item (such as an assignment or discussion). It is used when an instructor needs to adjust their evaluation of a student's work using a predefined rubric. The update can include changes to scores for different rubric cells and detailed feedback using Blackboard's rich text format (BbML). This endpoint is particularly useful for refining assessments, providing more detailed feedback, or correcting errors in previous evaluations." }, { "slug": "BLACKBOARD_UPDATE_TERM", "name": "Patch term details by termid", "description": "Updates an existing term in the Blackboard Learn platform. This endpoint allows modification of various term properties, including its external ID, name, description, availability settings, and duration. It's particularly useful for adjusting term dates, changing access settings, or updating term information after initial creation. The endpoint supports partial updates, meaning you only need to include the fields you want to modify. Note that some settings, like duration type, may require additional fields to be updated simultaneously for consistency." }, { "slug": "BLACKBOARD_UPDATE_TOC_ITEM", "name": "Update course toc item", "description": "Updates the visibility settings for a specific Table of Contents (TOC) item within a Blackboard course. This endpoint allows you to modify guest and observer access permissions for a particular TOC item. Use this when you need to change who can view certain course content, such as during course setup or when adjusting access throughout the semester. The endpoint only updates visibility settings and does not modify other properties of the TOC item. Note that this operation may affect course accessibility and should be used carefully to ensure compliance with institutional policies." }, { "slug": "BLACKBOARD_UPDATE_USER", "name": "Update user information", "description": "Updates a user's profile in the Blackboard learning management system. This endpoint allows for partial or complete updates to various aspects of a user's account, including personal information, contact details, system roles, and preferences. It's particularly useful for synchronizing user data with external systems, managing user accounts, or allowing users to update their own information. The endpoint supports granular updates, meaning you can modify specific fields without affecting others. Be cautious when updating sensitive information like passwords or system roles, as these changes can significantly impact the user's access and experience within the Blackboard system." }, { "slug": "BLACKBOARD_UPLOAD", "name": "Create new uploads", "description": "Uploads a file to the Blackboard Learn platform. This endpoint allows users to add various types of educational content, such as documents, images, or multimedia files, to courses or other areas within Blackboard. It should be used when new materials need to be added to the platform or existing content needs to be updated. The endpoint handles the file transfer process, but does not automatically associate the uploaded file with any specific course or content area; additional API calls may be required for such organization. Note that file size limits and supported file types may vary depending on the specific Blackboard Learn instance configuration." }, { "slug": "BLACKBOARD_VIEW_COURSE_GROUP_ACCESSIBILITIES", "name": "Get course groups", "description": "Retrieves a list of all groups associated with a specific course in the Blackboard learning management system. This endpoint allows educators and administrators to access information about the various student groups created within a particular course. It is useful for managing course structure, facilitating group assignments, and organizing collaborative activities. The endpoint returns details about each group, which may include group names, descriptions, and member counts. It should be used when there's a need to review or manage the group structure of a course. Note that this endpoint only provides group information and does not allow for the modification of groups or their memberships." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "blackboard_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Blackboard Learn Server", "type": "string", "description": "Your institution's Blackboard Learn server hostname (e.g., institution.blackboard.com)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lever", "name": "Lever", "logo": "https://logos.composio.dev/api/lever", "description": "Lever is an applicant tracking system combining sourcing, CRM functionalities, and analytics, helping companies scale recruiting efforts with a collaborative approach", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 64, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEVER_ADD_OPPORTUNITY_LINKS", "name": "Add Opportunity Links", "description": "Tool to add links to a contact associated with an opportunity. Use when you need to attach URLs like LinkedIn profiles, GitHub accounts, personal websites, or other social media links to a candidate. Adding new links does not replace existing links." }, { "slug": "LEVER_ADD_OPPORTUNITY_SOURCES", "name": "Add Opportunity Sources", "description": "Tool to add sources to an opportunity. Use when you need to attribute specific recruitment channels or sources to an existing opportunity." }, { "slug": "LEVER_ADD_OPPORTUNITY_TAGS", "name": "Add Opportunity Tags", "description": "Tool to add tags to an opportunity. Use when you need to append labels or categorize an existing opportunity." }, { "slug": "LEVER_CREATE_FORM", "name": "Create Form Submission", "description": "Tool to create a completed profile form submission for a candidate's opportunity profile. Use when you need to submit a filled form based on an existing template." }, { "slug": "LEVER_CREATE_FORM_TEMPLATE", "name": "Create Form Template", "description": "Tool to create a profile form template for an account. Use when you need to create a new form template with custom fields." }, { "slug": "LEVER_CREATE_INTERVIEW", "name": "Create Interview", "description": "Tool to create an interview on an externally-managed panel in Lever. Use when scheduling a new interview for an opportunity on a panel where externallyManaged is true." }, { "slug": "LEVER_CREATE_NOTE", "name": "Create Note", "description": "Tool to create a note on an opportunity profile or add a threaded comment to an existing note." }, { "slug": "LEVER_CREATE_OPPORTUNITY", "name": "Create Opportunity", "description": "Tool to create a new candidate opportunity in Lever. Use when adding a new candidate to the system with automatic email-based deduplication." }, { "slug": "LEVER_CREATE_PANEL", "name": "Create Panel", "description": "Tool to create a new interview panel for an opportunity. Use when scheduling interviews for a candidate." }, { "slug": "LEVER_CREATE_REQUISITION", "name": "Create Requisition", "description": "Tool to create a new requisition in Lever for tracking hiring needs. Use when establishing job requisitions to manage headcount and hiring workflows." }, { "slug": "LEVER_CREATE_REQUISITION_FIELD", "name": "Create Requisition Field", "description": "Tool to create a custom requisition field schema for use across requisitions. Use when establishing requisition field schemas for your account." }, { "slug": "LEVER_CREATE_REQUISITION_FIELD_OPTION", "name": "Create Requisition Field Option", "description": "Tool to add new options to a dropdown requisition field without replacing existing options. Use when you need to expand dropdown choices for requisition fields." }, { "slug": "LEVER_CREATE_UPLOAD", "name": "Upload File", "description": "Tool to upload a file temporarily to Lever for use with posting applications. Use when you need to attach resumes or documents before creating opportunities. Files expire after 24 hours and have a 30MB size limit." }, { "slug": "LEVER_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in the Lever system. Use when adding a new team member with configurable access role." }, { "slug": "LEVER_DEACTIVATE_USER", "name": "Deactivate User", "description": "Tool to deactivate a user in the Lever system. Use when you need to prevent a user from logging in while preserving their historical records. Deactivated users remain in the system for historical record keeping but can no longer log in and use Lever." }, { "slug": "LEVER_DELETE_FORM_TEMPLATE", "name": "Delete Form Template", "description": "Tool to delete a profile form template from account. Use when you need to remove a custom API-created form template. System templates cannot be deleted." }, { "slug": "LEVER_DELETE_INTERVIEW", "name": "Delete Interview", "description": "Tool to delete an interview from an opportunity panel. Use when you need to remove an externally managed interview on behalf of a user. Only interviews with externallyManaged=true can be deleted." }, { "slug": "LEVER_DELETE_NOTE", "name": "Delete Note", "description": "Tool to delete a note on an opportunity. Use when you need to remove an API-created note." }, { "slug": "LEVER_DELETE_PANEL", "name": "Delete Panel", "description": "Tool to delete a panel from an opportunity. Use when you need to remove an externally managed panel on behalf of a user. Only panels with externallyManaged=true can be deleted." }, { "slug": "LEVER_DELETE_REQUISITION", "name": "Delete Requisition", "description": "Tool to delete or archive a requisition from Lever account. Use when you need to remove a requisition." }, { "slug": "LEVER_DELETE_REQUISITION_FIELD", "name": "Delete Requisition Field", "description": "Tool to delete a requisition field from the account. Use when you need to remove a requisition field that is no longer in use." }, { "slug": "LEVER_DELETE_REQUISITION_FIELD_OPTION", "name": "Delete Requisition Field Option", "description": "Tool to remove specific options from a dropdown requisition field. Use when you need to delete dropdown choices without removing the entire field." }, { "slug": "LEVER_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download a file associated with an opportunity. Use when you have opportunity and file UIDs and need to retrieve the actual file content." }, { "slug": "LEVER_GET_FILE", "name": "Get File Metadata", "description": "Tool to retrieve metadata for a single file on an opportunity. Use when you have opportunity and file UIDs and need details like name, size, and status before downloading." }, { "slug": "LEVER_GET_FORM", "name": "Get Form", "description": "Tool to retrieve a specific profile form for an opportunity. Use when you need to fetch details of a form including field values and completion status." }, { "slug": "LEVER_GET_FORM_TEMPLATE", "name": "Get Form Template", "description": "Tool to retrieve a single form template by unique identifier. Use when you need to obtain a reference template for creating a new profile form." }, { "slug": "LEVER_GET_INTERVIEW", "name": "Get Interview", "description": "Tool to retrieve a single interview for an opportunity. Use when you need to fetch detailed interview information by opportunity and interview UIDs." }, { "slug": "LEVER_GET_NOTE", "name": "Get Note", "description": "Tool to retrieve a single note for an opportunity. Use when you need to fetch detailed information for a specific note after confirming the opportunity and note IDs." }, { "slug": "LEVER_GET_OPPORTUNITY", "name": "Get Opportunity", "description": "Tool to retrieve detailed information about a single opportunity. Use when you need to fetch comprehensive candidate details including contact information, stage progression, sources, tags, and applications." }, { "slug": "LEVER_GET_PANEL", "name": "Get Panel", "description": "Tool to retrieve a single interview panel for an opportunity. Use when you need to fetch detailed panel info by opportunity and panel UIDs." }, { "slug": "LEVER_GET_REQUISITION", "name": "Get Requisition", "description": "Tool to retrieve detailed information about a single requisition by ID. Use when you need to fetch comprehensive requisition details including hiring status, headcount, and associated postings." }, { "slug": "LEVER_GET_REQUISITION_FIELD", "name": "Get Requisition Field", "description": "Tool to retrieve detailed information about a single custom requisition field by ID. Use when you need to fetch the schema and configuration of a specific requisition field." }, { "slug": "LEVER_GET_STAGE", "name": "Get Stage", "description": "Tool to retrieve detailed information about a single stage by its UUID. Use when you need to fetch stage details from the recruiting pipeline workflow." }, { "slug": "LEVER_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information about a single user by their UUID. Use when you need to fetch complete user profile data including access role, contact links, and organizational details." }, { "slug": "LEVER_LIST_FILES", "name": "List Opportunity Files", "description": "Tool to list all files on an opportunity. Use after obtaining the opportunity UID." }, { "slug": "LEVER_LIST_FORMS", "name": "List Forms", "description": "Tool to list all profile forms for an opportunity. Use when you need to retrieve all forms associated with a candidate's profile." }, { "slug": "LEVER_LIST_FORM_TEMPLATES", "name": "List Form Templates", "description": "Tool to list all active form templates. Use when you need to retrieve all profile form templates for an account." }, { "slug": "LEVER_LIST_INTERVIEWS", "name": "List Interviews", "description": "Tool to list all interviews for an opportunity. Use when you have an opportunity UID and need to retrieve all its interviews." }, { "slug": "LEVER_LIST_NOTES", "name": "List Notes", "description": "Tool to list notes on an opportunity profile. Use when you have an opportunity UID and need to retrieve its notes." }, { "slug": "LEVER_LIST_OFFERS", "name": "List Offers", "description": "Tool to list offers for an opportunity. Use when you have an opportunity UID and need to retrieve its offers." }, { "slug": "LEVER_LIST_OPPORTUNITIES", "name": "List Opportunities", "description": "Tool to list all opportunities in the hiring pipeline. Use when you need to retrieve candidate opportunities with optional filtering by contact, posting, stage, tags, time ranges, or other criteria." }, { "slug": "LEVER_LIST_PANELS", "name": "List Panels", "description": "Tool to list all interview panels for an opportunity. Use when you need to retrieve all panels associated with a specific opportunity UID." }, { "slug": "LEVER_LIST_POSTINGS", "name": "List Postings", "description": "Tool to list all job postings including published, internal, closed, draft, pending, and rejected postings. Use when you need to retrieve job postings with optional filtering by state, team, department, location, commitment, level, tag, or update timestamp." }, { "slug": "LEVER_LIST_REFERRALS", "name": "List Referrals", "description": "Tool to list all referrals for an opportunity. Use when you have an opportunity UID and need to retrieve its referrals." }, { "slug": "LEVER_LIST_REQUISITION_FIELDS", "name": "List Requisition Fields", "description": "Tool to list all requisition field schemas in your Lever account with optional filtering. Use when you need to retrieve requisition fields with optional filtering by required status or field type." }, { "slug": "LEVER_LIST_REQUISITIONS", "name": "List Requisitions", "description": "Tool to list all requisitions with filtering and pagination. Use when you need to retrieve requisitions, optionally filtered by status, code, confidentiality, or creation date." }, { "slug": "LEVER_LIST_RESUMES", "name": "List Opportunity Resumes", "description": "Tool to list all resumes for an opportunity. Use after obtaining the opportunity UID to retrieve candidate resumes." }, { "slug": "LEVER_LIST_SOURCES", "name": "List Sources", "description": "Tool to list all recruitment sources in your Lever account. Use when you need to retrieve information about sources (e.g., LinkedIn, Indeed, referrals, career site)." }, { "slug": "LEVER_LIST_STAGES", "name": "List Stages", "description": "Tool to retrieve all pipeline stages in your Lever account. Use when you need to list all hiring stages." }, { "slug": "LEVER_LIST_TAGS", "name": "List Tags", "description": "Tool to list all tags in your Lever account. Use when you need to retrieve tags used to categorize candidates, opportunities, and postings." }, { "slug": "LEVER_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all active users in your Lever account with optional filters. Use when you need to list users, filter by email, access role, or include deactivated users." }, { "slug": "LEVER_REACTIVATE_USER", "name": "Reactivate User", "description": "Tool to reactivate a previously deactivated user in the Lever system. Use when you need to restore login and Lever access to a user. After reactivation, the user's deactivatedAt field will be set to null, indicating the user is active again." }, { "slug": "LEVER_REMOVE_CONTACT_LINKS_BY_OPPORTUNITY", "name": "Remove Contact Links by Opportunity", "description": "Tool to remove links from a contact associated with an opportunity. Useful when invalid or outdated URLs need to be detached from a candidate profile." }, { "slug": "LEVER_REMOVE_OPPORTUNITY_SOURCES", "name": "Remove Opportunity Sources", "description": "Tool to remove sources from an opportunity. Use when you need to delete source attributions from a candidate's recruitment tracking information." }, { "slug": "LEVER_REMOVE_OPPORTUNITY_TAGS", "name": "Remove Opportunity Tags", "description": "Tool to remove tags from an opportunity. Use when you need to detach specific labels from an existing opportunity before further updates or archiving." }, { "slug": "LEVER_UPDATE_FORM_TEMPLATE", "name": "Update Form Template", "description": "Tool to update an existing profile form template. Use when you need to modify a form template's name, instructions, fields, or other properties." }, { "slug": "LEVER_UPDATE_INTERVIEW", "name": "Update Interview", "description": "Tool to update an interview on an externally-managed panel. Use when modifying all details of an externally-managed panel interview via API." }, { "slug": "LEVER_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update a note on an opportunity profile. Endpoint: PUT /opportunities/{opportunity}/notes/{note} Notes: Only notes originally created via the API can be updated." }, { "slug": "LEVER_UPDATE_PANEL", "name": "Update Panel", "description": "Tool to update an externally-managed panel for an opportunity. Use when modifying panel details such as applications, timezone, interviews, or notes after confirming the panel is externally-managed." }, { "slug": "LEVER_UPDATE_REQUISITION", "name": "Update Requisition", "description": "Tool to update an existing requisition in Lever. Use when modifying requisition details such as name, headcount, status, or other attributes. This performs a full resource update where all required fields must be provided." }, { "slug": "LEVER_UPDATE_REQUISITION_FIELD", "name": "Update Requisition Field", "description": "Tool to update an existing requisition field in Lever. Use when modifying requisition field properties. IMPORTANT: This is an atomic update - include all properties you want to keep, as omitted properties will be deleted." }, { "slug": "LEVER_UPDATE_REQUISITION_FIELD_OPTION", "name": "Update Requisition Field Option", "description": "Tool to update existing options in a dropdown requisition field without replacing the entire field object. Use when you need to modify the text of dropdown choices for requisition fields." }, { "slug": "LEVER_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user in the Lever system. Use when modifying user information such as name, email, access role, or job details. WARNING: This performs a full resource update - all fields will be overwritten, and missing optional fields will be reset to defaults." }, { "slug": "LEVER_UPLOAD_FILE", "name": "Upload File to Opportunity", "description": "Tool to upload a file permanently to an opportunity. Use when you need to attach resumes, documents, or other files directly to a candidate's opportunity profile. Files have a 30MB size limit." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "lever_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Lever API", "required": true, "default": "https://api.lever.co/v1" }, { "name": "authorizationUrl", "displayName": "Authorization URL", "type": "string", "description": "Full URL for Lever OAuth authorize endpoint", "required": true, "default": "https://hire.lever.co/oauth/authorize" }, { "name": "tokenUrl", "displayName": "Token URL", "type": "string", "description": "Full URL for Lever OAuth token exchange", "required": true, "default": "https://hire.lever.co/oauth/token" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "files:write:admin,form_templates:write:admin,forms:write:admin,interviews:write:admin,notes:write:admin,offers:read:admin,opportunities:write:admin,panels:write:admin,postings:write:admin,referrals:read:admin,requisition_fields:write:admin,requisitions:write:admin,resumes:read:admin,sources:read:admin,stages:read:admin,tags:read:admin,tasks:read:admin,uploads:write:admin,users:write:admin" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "lever_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key (Base64)", "type": "string", "description": "Your Lever API key, Base64 encoded", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoho_bigin", "name": "Zoho Bigin", "logo": "https://logos.composio.dev/api/zoho_bigin", "description": "Zoho Bigin is a simplified CRM solution from Zoho tailored for small businesses, focusing on pipeline tracking and relationship management", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_BIGIN_ADD_RECORDS", "name": "Add Records", "description": "Tool to add new records to a module. Use when you need to programmatically insert one or more records into Bigin after confirming module name and field API names. Module-specific mandatory fields: - Tasks: Subject (required) - Events: Event_Title, Start_DateTime, End_DateTime (all required) - Calls: Subject, Call_Type (Outbound/Inbound/Missed), Call_Start_Time, Call_Duration (all required) - Contacts: Last_Name (required) - Other modules: Use Get Fields action to discover mandatory fields" }, { "slug": "ZOHO_BIGIN_ADD_TAGS_TO_RECORDS", "name": "Add Tags to Records", "description": "Tool to add tags to a specific record in a module. Use when you need to categorize or label a record after creation or update." }, { "slug": "ZOHO_BIGIN_CREATE_BULK_READ_JOB", "name": "Create Bulk Read Job", "description": "Tool to create a bulk read job for exporting large amounts of data asynchronously. Use when you need to export records from a module that may exceed standard API limits. Returns a job ID that can be used to track progress and download results once complete." }, { "slug": "ZOHO_BIGIN_CREATE_NOTES", "name": "Create Notes", "description": "Tool to create notes and associate them with records in Zoho Bigin. Use when you need to add notes to contacts, accounts, pipelines, or other module records. Each note requires content, parent record ID, and the module name." }, { "slug": "ZOHO_BIGIN_CREATE_RECORD_NOTES", "name": "Create Record Notes", "description": "Tool to create new notes for a specific record. Use when you need to add notes to a Bigin record after confirming the module name and record ID." }, { "slug": "ZOHO_BIGIN_CREATE_TAGS", "name": "Create Tags", "description": "Tool to create tags for a module. Use when you need to add new tags to a specific module in Zoho Bigin." }, { "slug": "ZOHO_BIGIN_DELETE_ATTACHMENT", "name": "Delete Attachment", "description": "Tool to delete an attachment from a record. Use when you need to remove a file after confirming its record_id and attachment_id." }, { "slug": "ZOHO_BIGIN_DELETE_NOTE", "name": "Delete Note", "description": "Tool to delete a note from a specific record. Use when you need to remove a note after confirming its record_id and note_id." }, { "slug": "ZOHO_BIGIN_DELETE_NOTES", "name": "Delete Notes", "description": "Tool to delete multiple notes from Zoho Bigin. Use when removing notes after confirming their IDs." }, { "slug": "ZOHO_BIGIN_DELETE_RECORD", "name": "Delete Record", "description": "Tool to delete a specific record from a module. Use when removing a single record after confirming its ID. Can also be used to delink related records." }, { "slug": "ZOHO_BIGIN_DELETE_RECORD_PHOTO", "name": "Delete Record Photo", "description": "Tool to delete a profile photo from a record. Use when you need to remove the photo associated with a specific record." }, { "slug": "ZOHO_BIGIN_DELETE_RECORDS", "name": "Delete Records", "description": "Tool to delete records from a module. Use when removing one or multiple records after confirming their IDs." }, { "slug": "ZOHO_BIGIN_DELINK_RELATED_RECORDS", "name": "Delink Related Records", "description": "Tool to delete the association between a module record and related list records. Use when you need to remove relationships between records without deleting the records themselves." }, { "slug": "ZOHO_BIGIN_DISABLE_NOTIFICATIONS", "name": "Disable Notifications", "description": "Tool to disable instant notifications for one or more channels. Use when you need to stop receiving notifications for specific channels that were previously enabled." }, { "slug": "ZOHO_BIGIN_DOWNLOAD_ATTACHMENT", "name": "Download Attachment", "description": "Tool to download an attachment from a record. Use when you need the binary content of a specific attachment after confirming the record and attachment IDs." }, { "slug": "ZOHO_BIGIN_DOWNLOAD_BULK_READ_RESULT", "name": "Download Bulk Read Result", "description": "Tool to download the bulk read job result in ZIP format (containing CSV or ICS export). Use when you need to retrieve completed bulk read job data after obtaining the job_id from the bulk read job creation or status check." }, { "slug": "ZOHO_BIGIN_DOWNLOAD_RECORD_PHOTO", "name": "Download Record Photo", "description": "Tool to download the profile photo associated with a specific record. Use when you need the binary content of a record's photo after confirming the record ID. Returns HTTP 204 if the record exists but has no photo." }, { "slug": "ZOHO_BIGIN_ENABLE_NOTIFICATIONS", "name": "Enable Notifications", "description": "Tool to enable instant webhook notifications for module events in Bigin. Use when you need to receive real-time alerts for record create, edit, or delete operations in specific modules (Contacts, Pipelines, etc.)." }, { "slug": "ZOHO_BIGIN_GET_ALL_NOTES", "name": "Get All Notes", "description": "Tool to retrieve the list of notes associated with records. Use when you need to fetch notes with pagination support. Maximum 200 records per call." }, { "slug": "ZOHO_BIGIN_GET_ATTACHMENTS", "name": "Get Attachments", "description": "Tool to retrieve attachments for a record. Use when you need a paginated list of attachments for a given module record." }, { "slug": "ZOHO_BIGIN_GET_BULK_READ_JOB_STATUS", "name": "Get Bulk Read Job Status", "description": "Tool to retrieve the details of a bulk read job performed earlier. Use when you need to check the status of a bulk export operation or download the results after job completion." }, { "slug": "ZOHO_BIGIN_GET_CUSTOM_VIEW", "name": "Get Custom View", "description": "Tool to get the metadata of a specific custom view configured in a module. Use when you need to retrieve configuration details, criteria, or field lists for a particular custom view." }, { "slug": "ZOHO_BIGIN_GET_CUSTOM_VIEWS", "name": "Get Custom Views", "description": "Tool to retrieve the list of custom views available for a module. Use when you need to discover which custom views exist for a specific Bigin module." }, { "slug": "ZOHO_BIGIN_GET_DELETED_RECORDS", "name": "Get Deleted Records", "description": "Tool to get a list of deleted records in a module. Use when auditing or restoring recently deleted data (recycle within 60 days, permanent within 120 days)." }, { "slug": "ZOHO_BIGIN_GET_FIELDS", "name": "Get Fields", "description": "Tool to retrieve field metadata for a Bigin module. Use when you need to discover available fields, their types, validation rules, and picklist values for a module." }, { "slug": "ZOHO_BIGIN_GET_LAYOUT", "name": "Get Layout", "description": "Tool to retrieve details of a specific layout by layout ID. Use when you need to get detailed configuration, sections, fields, and permissions for a particular layout." }, { "slug": "ZOHO_BIGIN_GET_LAYOUTS", "name": "Get Layouts", "description": "Tool to retrieve the list of layouts available for a module. Use when you need to discover layout metadata, sections, fields, and configuration for a specific module." }, { "slug": "ZOHO_BIGIN_GET_MODULE_METADATA", "name": "Get Module Metadata", "description": "Tool to retrieve metadata of a specific module by its API name. Use when you need detailed information about a module's configuration, permissions, and features." }, { "slug": "ZOHO_BIGIN_GET_MODULES", "name": "Get Modules", "description": "Tool to retrieve a list of all modules. Use when you need to discover which modules are available in Bigin." }, { "slug": "ZOHO_BIGIN_GET_NOTIFICATION_DETAILS", "name": "Get Notification Details", "description": "Tool to retrieve information about enabled notifications. Use when you need to list notification channels, check their configuration, or verify which modules have active notifications." }, { "slug": "ZOHO_BIGIN_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve organization details including name, ID, currency, time zone, and other settings. Use when you need to fetch organization-level configuration and metadata." }, { "slug": "ZOHO_BIGIN_GET_PROFILES", "name": "Get Profiles", "description": "Tool to retrieve the list of available profiles and their properties in an organization. Use when you need to discover which profiles exist in Bigin." }, { "slug": "ZOHO_BIGIN_GET_RECORD", "name": "Get Record", "description": "Tool to retrieve details of a specific record in a module using the record ID. Use when you need to fetch complete information about a single record by its ID." }, { "slug": "ZOHO_BIGIN_GET_RECORD_NOTES", "name": "Get Record Notes", "description": "Tool to retrieve the list of notes associated with a specific record. Use when you need to fetch notes for a given module record with optional field filtering and pagination." }, { "slug": "ZOHO_BIGIN_GET_RECORDS", "name": "Get Records", "description": "Tool to retrieve records from a Bigin module. Use when listing or paginating module data with specific fields, sorting, filtering. No free-text search supported; use cvid for saved view filtering. Records are nested under result['data']['data']; check result['data']['info']['more_records'] to detect additional pages." }, { "slug": "ZOHO_BIGIN_GET_RECORDS_COUNT", "name": "Get Records Count", "description": "Tool to get the count of records in a Bigin module. Use when you need to know how many records exist in a module, optionally filtered by a custom view." }, { "slug": "ZOHO_BIGIN_GET_RELATED_LISTS_METADATA", "name": "Get Related Lists Metadata", "description": "Tool to retrieve the list of related lists metadata for a module. Use when you need to discover which related lists are available for a specific module." }, { "slug": "ZOHO_BIGIN_GET_RELATED_RECORDS", "name": "Get Related Records", "description": "Tool to retrieve related records associated with a specific record in a module. Use when fetching related data like Notes, Attachments, Products, or Activities linked to a parent record." }, { "slug": "ZOHO_BIGIN_GET_ROLES", "name": "Get Roles", "description": "Tool to retrieve the list of available roles and their properties in an organization. Use when you need to discover role hierarchy and permissions." }, { "slug": "ZOHO_BIGIN_GET_TEAM_PIPELINE_RECORDS", "name": "Get Team Pipeline Records", "description": "Tool to retrieve pipeline records from Team Pipelines in Zoho Bigin. Use when you need to fetch deals or records from a specific team pipeline with filtering, sorting, and pagination." }, { "slug": "ZOHO_BIGIN_GET_USER", "name": "Get User", "description": "Tool to retrieve details of a specific user using the user identification. Use when you need to get complete information about a single user by their ID." }, { "slug": "ZOHO_BIGIN_GET_USERS", "name": "Get Users", "description": "Tool to retrieve the list of users in the organization. Use when you need to get user information with filtering by type (ActiveUsers, DeactiveUsers, AdminUsers, etc.)." }, { "slug": "ZOHO_BIGIN_SEARCH_RECORDS", "name": "Search Records", "description": "Tool to search for records in a Bigin module using various criteria. Use when you need to find records by keyword, email, phone, or custom criteria with specific field comparators." }, { "slug": "ZOHO_BIGIN_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note for a specific record in a module. Use when you need to modify the title or content of a note after confirming the module name, record ID, and note ID." }, { "slug": "ZOHO_BIGIN_UPDATE_NOTIFICATION_DETAILS", "name": "Update Notification Details", "description": "Tool to update notification channel details in Zoho Bigin. Use when you need to modify notification URLs, events, tokens, or expiry times for existing channels. Supports up to 100 channels per call." }, { "slug": "ZOHO_BIGIN_UPDATE_NOTIFICATION_INFO", "name": "Update Notification Info", "description": "Tool to update specific notification information without losing existing data. Use when you need to modify notification channel settings such as events, expiry, token, or webhook URL." }, { "slug": "ZOHO_BIGIN_UPDATE_RECORDS", "name": "Update Records", "description": "Tool to update existing records in a module. Use when you need to modify one or multiple records after confirming their IDs and field API names. Supports up to 100 records per call; specify an optional trigger to control workflow execution." }, { "slug": "ZOHO_BIGIN_UPDATE_RELATED_RECORDS", "name": "Update Related Records", "description": "Tool to update related records associated with a specific record in a module. Use when you need to modify existing relationships such as updating notes, products, or activities linked to a contact or account. Max 100 records per call." }, { "slug": "ZOHO_BIGIN_UPDATE_USER", "name": "Update User", "description": "Tool to update details of an existing user by user ID. Use when you need to modify user information such as phone, date of birth, time format, role, or status. Cannot update deactivated users." }, { "slug": "ZOHO_BIGIN_UPDATE_USERS", "name": "Update Users", "description": "Tool to update details of multiple users in an organization. Use when you need to modify user information such as phone, date of birth, time format, role, or status. Cannot update deactivated users. Maximum 100 users per request." }, { "slug": "ZOHO_BIGIN_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Tool to upload an attachment to a record. Use when you need to attach a file or specify a public URL for upload to a Bigin record. Ensure module_api_name and record_id are correct before calling." }, { "slug": "ZOHO_BIGIN_UPLOAD_ORGANIZATION_PHOTO", "name": "Upload Organization Photo", "description": "Tool to upload or update the brand logo or image for the current organization. Use when you need to set or change the organization's photo/logo in Zoho Bigin." }, { "slug": "ZOHO_BIGIN_UPLOAD_RECORD_PHOTO", "name": "Upload Record Photo", "description": "Tool to upload a photo/image to a specific record (e.g., contact photo). Use when you need to attach a profile picture or image to a Bigin record." }, { "slug": "ZOHO_BIGIN_UPSERT_RECORDS", "name": "Upsert Records", "description": "Tool to insert or update records in a module based on unique field values. Use when you need to sync data without checking if records exist first. Updates existing records if duplicates are found, otherwise inserts new records." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoBigin.modules.ALL,ZohoBigin.users.ALL,ZohoBigin.org.ALL,ZohoBigin.settings.ALL,ZohoBigin.bulk.ALL,ZohoBigin.notifications.ALL" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Region", "type": "string", "description": "Your Zoho data center — match your sign-in address (e.g. 'eu' for bigin.zoho.eu). Most accounts can keep the default 'com'. Options: com, eu, in, au, cn, jp, sa, ca.", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "pandadoc", "name": "PandaDoc", "logo": "https://logos.composio.dev/api/pandadoc", "description": "PandaDoc offers document creation, e-signatures, and workflow automation, helping sales teams and businesses streamline proposals, contracts, and agreement processes", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PANDADOC_CREATE_DOCUMENT_ATTACHMENT", "name": "Create Document Attachment", "description": "Creates and adds an attachment to a PandaDoc document. This tool allows you to attach downloadable files such as supplemental materials, Excel spreadsheets, or other content without embedding them directly into the document. Attachments can be added only to documents in 'document.draft' status, with a maximum of 10 files per document and a size limit of 50MB per file." }, { "slug": "PANDADOC_CREATE_DOCUMENT_FROM_FILE", "name": "Create Document from File Upload", "description": "Creates a new document in PandaDoc by uploading a file (PDF, DOCX, or RTF). Converts existing documents into PandaDoc documents for processing, signing, and tracking. Either `file` or `url` must be provided; omitting both will fail. Large files may time out during upload and conversion." }, { "slug": "PANDADOC_CREATE_FOLDER", "name": "Create Document Folder", "description": "Creates a new folder in PandaDoc to organize documents. This action allows users to create a new folder with a specified name and optionally set a parent folder to create a nested folder structure." }, { "slug": "PANDADOC_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "This tool creates a new contact or updates an existing one in PandaDoc based on the email address. If a contact with the provided email exists, it will be updated; otherwise, a new contact will be created." }, { "slug": "PANDADOC_CREATE_TEMPLATE", "name": "Create Template", "description": "This tool allows users to create a new template in PandaDoc from a PDF file or from scratch. It handles file upload validation, parameter checks, proper error handling, and authentication with the PandaDoc API. The template can be created either by uploading a PDF file or by providing a structured content object that defines the template layout and elements." }, { "slug": "PANDADOC_CREATE_WEBHOOK", "name": "Create PandaDoc Webhook", "description": "Creates a new webhook subscription in PandaDoc to receive notifications about specific events. This action allows you to set up webhook notifications for various document-related events such as status changes, recipient completions, and updates. The webhook will send HTTP notifications to your specified endpoint when the configured events occur." }, { "slug": "PANDADOC_DELETE_CONTACT", "name": "Delete Contact", "description": "This tool allows you to delete a contact from your PandaDoc account. The action is permanent and cannot be undone." }, { "slug": "PANDADOC_DELETE_TEMPLATE", "name": "Delete Template", "description": "This tool deletes a specific template from PandaDoc. Once a template is deleted, it cannot be recovered. This action is permanent and should be used with caution." }, { "slug": "PANDADOC_GET_DOCUMENT_DETAILS", "name": "Get Document Details", "description": "Fetch detailed metadata for a specific PandaDoc document including recipients, fields/tokens values, pricing data, metadata, tags, and content-block names. Use this after discovering a document via list/search to inspect recipients/status/fields/metadata/content-block references for follow-up automation or reporting." }, { "slug": "PANDADOC_GET_TEMPLATE_DETAILS", "name": "Get Template Details", "description": "This tool retrieves detailed information about a specific template by its ID. The endpoint returns comprehensive template details including metadata, content details, and sharing settings." }, { "slug": "PANDADOC_LIST_CONTACTS", "name": "List Contacts", "description": "List all contacts in your PandaDoc workspace. Returns all contacts with their details including email, name, company, and contact information. Optionally filter by exact email address. Note: The API returns all contacts at once without pagination - filtering and pagination should be done client-side if needed." }, { "slug": "PANDADOC_LIST_DOCUMENT_FOLDERS", "name": "List Document Folders", "description": "This tool retrieves a list of all document folders in PandaDoc. It's a standalone action that doesn't require any external dependencies or resource IDs. The tool will return a list of folders containing documents, with each folder containing information about its ID, name, and parent folder relationship." }, { "slug": "PANDADOC_LIST_TEMPLATES", "name": "List Templates", "description": "This tool retrieves a list of all templates available in the PandaDoc account. It supports parameters to filter templates by name, shared status, deleted status, pagination, and tag filtering, and returns detailed template information." }, { "slug": "PANDADOC_MOVE_DOCUMENT_TO_FOLDER", "name": "Move Document to Folder", "description": "This tool allows users to move a document to a specific folder within their PandaDoc account. It performs a POST request to move the document to the specified folder. Both the document and the destination folder must exist. Only documents in draft status can be moved; attempting to move documents in sent, completed, or other non-draft states will fail." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pandadoc_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your PandaDoc API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "workiom", "name": "Workiom", "logo": "https://logos.composio.dev/api/workiom", "description": "Workiom allows businesses to create custom workflows, integrate apps, and automate processes, reducing manual overhead and streamlining operations", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WORKIOM_CREATE_RECORD", "name": "Create record", "description": "Creates a new record in a specified Workiom list. This tool creates a record with basic field types like text, numbers, dates, and static list items. The record data should be provided as a JSON object where each key is a field ID and the value matches the expected data type for that field." }, { "slug": "WORKIOM_GET_ALL_LISTS", "name": "Get all lists", "description": "Get all lists from a Workiom app. This action fetches all lists within a specific Workiom app. Lists are containers for records (similar to database tables) and are the fundamental data structure in Workiom. Each list has a unique ID and contains views for displaying data. Use this action to discover available lists before performing operations like creating records (which require a list ID)." }, { "slug": "WORKIOM_GET_RECORDS", "name": "Get records", "description": "Retrieves records from a specified Workiom list. Use this action to fetch data from a Workiom list. The list_id is required and can be obtained from the WORKIOM_GET_ALL_LISTS action. Each record contains field values keyed by numeric field IDs. Features: - Pagination: Use max_result_count and skip_count to paginate through large datasets - Sorting: Sort by any field using 'FIELD_ID ASC' or 'FIELD_ID DESC' format - Filtering: Apply conditions using filter operators (Contains, Is, Greater, etc.) Note: Field IDs are numeric (e.g., 5037173) and can be found in list metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "workiom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Workiom API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lexoffice", "name": "Lexoffice", "logo": "https://logos.composio.dev/api/lexoffice", "description": "Lexoffice is a cloud-based accounting software designed for freelancers and small businesses, offering invoicing, expense management, and integration with banks", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEXOFFICE_CREATE_ARTICLE", "name": "Create Article", "description": "Tool to create a new article (product or service) in Lexoffice. Use when you need to add items to the product/service catalog for invoicing or quotations. The leadingPrice field must be uppercase (NET or GROSS)." }, { "slug": "LEXOFFICE_CREATE_CONTACT", "name": "Create contact", "description": "Tool to create a new contact (customer or vendor) in Lexoffice. Use when you need to add a new business contact. Either company or person details must be provided, and at least one role (customer/vendor) must be assigned." }, { "slug": "LEXOFFICE_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Tool to create a credit note in Lexoffice. Credit notes are created in draft mode by default; set finalize=true to create with status 'open'. Use when you need to issue a refund or credit for an invoice. Maximum 300 line items per credit note." }, { "slug": "LEXOFFICE_CREATE_DELIVERY_NOTE", "name": "Create Delivery Note", "description": "Create a delivery note in lexoffice. Delivery notes are created in draft mode by default (set finalize=true for open status). Use when shipping goods or providing services and need to document what was delivered without prices/payment terms. Maximum 300 line items allowed per delivery note." }, { "slug": "LEXOFFICE_CREATE_EVENT_SUBSCRIPTION", "name": "Create Event Subscription", "description": "Tool to register a new webhook for Lexoffice events. Use when you need to receive real-time notifications for specific events like invoice creation, contact changes, or payment updates." }, { "slug": "LEXOFFICE_CREATE_ORDER_CONFIRMATION", "name": "Create Order Confirmation", "description": "Tool to create an Order Confirmation in Lexoffice/Lexware. Order confirmations are always created in draft mode and do not need to be finalized. Use when you need to confirm a customer order with line items, pricing, and shipping details." }, { "slug": "LEXOFFICE_CREATE_QUOTATION", "name": "Create Quotation", "description": "Tool to create a quotation in Lexoffice. Quotations are created in draft mode by default. Use the finalize parameter to create a finalized quotation with status 'open'. Requires address with either contactId or name+countryCode, line items, total pricing, and tax conditions." }, { "slug": "LEXOFFICE_CREATE_VOUCHER", "name": "Create Voucher", "description": "Tool to create a bookkeeping voucher in Lexoffice. Use when you need to create expense receipts, sales invoices, purchase invoices, or other accounting vouchers. The voucher requires line items with amounts, tax rates, and posting category IDs." }, { "slug": "LEXOFFICE_DELETE_ARTICLE", "name": "Delete Article", "description": "Tool to permanently delete an article by its ID. Returns success confirmation on 204, or raises error if article not found (404)." }, { "slug": "LEXOFFICE_DELETE_EVENT_SUBSCRIPTION", "name": "Delete Event Subscription", "description": "Tool to delete an event subscription by its ID. Use when you need to remove an existing event subscription from Lexoffice." }, { "slug": "LEXOFFICE_DOWNLOAD_FILE", "name": "Download File", "description": "Download a file from lexoffice by its ID. Use this to retrieve PDF documents, images, or XML files associated with invoices, vouchers, or other records. The file format returned depends on the Accept header specified." }, { "slug": "LEXOFFICE_GET_ARTICLE", "name": "Get Article", "description": "Tool to retrieve an article by ID from Lexoffice. Use when you need to fetch details of a specific article including its price, type, and other metadata." }, { "slug": "LEXOFFICE_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by its ID. Use when you need to fetch detailed information about a contact." }, { "slug": "LEXOFFICE_GET_CREDIT_NOTE", "name": "Get Credit Note", "description": "Tool to retrieve a credit note by its UUID from Lexoffice. Use when you need to fetch details of a specific credit note. Credit notes can be in draft or finalized (open) mode." }, { "slug": "LEXOFFICE_GET_CREDIT_NOTE_DOCUMENT", "name": "Get Credit Note Document", "description": "Tool to render a credit note document (PDF). Use to trigger PDF document file rendering for credit notes in status 'open'. Note: This endpoint only works for credit notes that have been finalized (status 'open'), not for draft credit notes." }, { "slug": "LEXOFFICE_GET_DELIVERY_NOTE", "name": "Get Delivery Note", "description": "Tool to retrieve a specific delivery note from Lexoffice by its ID. Use when you need to fetch complete details of a delivery note including address, line items, and tax information." }, { "slug": "LEXOFFICE_GET_DELIVERY_NOTE_DOCUMENT", "name": "Get Delivery Note Document", "description": "Tool to render a delivery note document (PDF) and retrieve its file ID. This endpoint triggers the PDF document file rendering and returns a documentFileId that can be used to download the actual PDF. Note: This endpoint is deprecated; consider using GET /v1/delivery-notes/{id}/file instead to directly download the PDF." }, { "slug": "LEXOFFICE_GET_DUNNING", "name": "Get Dunning", "description": "Tool to retrieve a dunning document by its ID. Use when you need to fetch details of a specific dunning from Lexoffice." }, { "slug": "LEXOFFICE_GET_DUNNING_DOCUMENT", "name": "Get Dunning Document", "description": "Tool to render and retrieve a dunning document (PDF) reference. Triggers the PDF document file rendering for newly created dunnings. Use when you need to get the document file ID for a specific dunning to download or reference the PDF." }, { "slug": "LEXOFFICE_GET_EVENT_SUBSCRIPTION", "name": "Get Event Subscription", "description": "Tool to retrieve a specific event subscription by its ID. Use when you need to get details about an existing event subscription." }, { "slug": "LEXOFFICE_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve a specific invoice by its UUID. Use when you need to fetch detailed information about an invoice including line items, pricing, and payment terms." }, { "slug": "LEXOFFICE_GET_INVOICE_DOCUMENT", "name": "Get Invoice Document", "description": "Tool to render an Invoice Document (PDF) by invoice ID. Use when you need to generate or retrieve the PDF document reference for an invoice that is in 'open' status. This triggers the PDF rendering process and returns a document file ID that can be used to download the actual PDF file." }, { "slug": "LEXOFFICE_GET_ORDER_CONFIRMATION", "name": "Get Order Confirmation", "description": "Tool to retrieve a specific order confirmation by its ID. Use when you need to fetch the complete details of an order confirmation including line items, pricing, addresses, and payment terms." }, { "slug": "LEXOFFICE_GET_ORDER_CONFIRMATION_DOCUMENT", "name": "Render Order Confirmation Document", "description": "Tool to render an Order Confirmation Document as PDF. Use when you need to trigger PDF document rendering for a specific order confirmation by providing its ID. Returns a document file reference that can be used to retrieve the rendered PDF." }, { "slug": "LEXOFFICE_GET_PAYMENT", "name": "Get Payment Information", "description": "Tool to retrieve payment information for a specific voucher (invoice or credit note) from Lexoffice. Use when you need to check payment status, outstanding amounts, or view payment transaction details for bookkeeping or sales vouchers." }, { "slug": "LEXOFFICE_GET_PROFILE", "name": "Get Profile", "description": "Retrieves the user and company profile information from Lexoffice. Use this action to get account details, enabled features, subscription status, and company information." }, { "slug": "LEXOFFICE_GET_QUOTATION", "name": "Get Quotation", "description": "Tool to retrieve a quotation by its ID. Use when you need to fetch details of a specific quotation including line items, pricing, and payment terms." }, { "slug": "LEXOFFICE_GET_QUOTATION_DOCUMENT", "name": "Get Quotation Document", "description": "Tool to render a quotation document as a PDF file. Triggers the PDF document file rendering for newly created quotations in status open. Returns a document file ID that can be used to download the PDF." }, { "slug": "LEXOFFICE_GET_VOUCHER", "name": "Get Voucher", "description": "Tool to retrieve a specific voucher by its UUID. Use when you need to fetch detailed information about vouchers such as sales invoices, credit notes, and other financial documents." }, { "slug": "LEXOFFICE_LIST_ARTICLES", "name": "List Articles", "description": "Tool to list articles from Lexoffice using filters and pagination. Use when you need to retrieve articles filtered by articleNumber, gtin, or type (PRODUCT/SERVICE). Supports pagination with page and size parameters." }, { "slug": "LEXOFFICE_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve all contacts from Lexoffice with optional filters. Use when you need to list contacts with filtering options for number, email, name, vendor status, or customer status." }, { "slug": "LEXOFFICE_LIST_COUNTRIES", "name": "List Countries", "description": "Tool to retrieve the list of all available countries with tax classifications from Lexoffice. Use when you need to get country information for invoicing, tax calculations, or address validation." }, { "slug": "LEXOFFICE_LIST_EVENT_SUBSCRIPTIONS", "name": "List Event Subscriptions", "description": "Tool to retrieve all event subscriptions for the current access token. Use when you need to inspect configured webhook subscriptions for events." }, { "slug": "LEXOFFICE_LIST_PAYMENT_CONDITIONS", "name": "List Payment Conditions", "description": "Tool to retrieve list of currently configured payment conditions from Lexoffice. Use when you need to view all payment terms and conditions set up in the organization." }, { "slug": "LEXOFFICE_LIST_POSTING_CATEGORIES", "name": "List Posting Categories", "description": "Tool to retrieve the list of posting categories for bookkeeping vouchers (revenue or expense) supported in lexoffice. Use when you need to get available posting categories for creating or updating vouchers." }, { "slug": "LEXOFFICE_LIST_PRINT_LAYOUTS", "name": "List Print Layouts", "description": "Tool to retrieve all print layouts for invoices and other documents. Use when you need to list available print layouts that can be referenced when creating sales vouchers (invoices, delivery notes, credit notes, etc.)." }, { "slug": "LEXOFFICE_LIST_RECURRING_TEMPLATES", "name": "List Recurring Templates", "description": "Tool to retrieve all recurring templates from Lexoffice. Use when you need to list recurring invoice templates with pagination and sorting options." }, { "slug": "LEXOFFICE_LIST_VOUCHERLIST", "name": "List Voucherlist", "description": "Tool to retrieve voucherlist from Lexoffice including bookkeeping vouchers (salesinvoices, salescreditnotes), invoices, credit notes, order confirmations, quotations, and delivery notes. Use when you need to list vouchers with filtering options for type, status, dates, or contact." }, { "slug": "LEXOFFICE_LIST_VOUCHERS", "name": "List Vouchers", "description": "Tool to filter vouchers by voucher number from Lexoffice. Use when you need to retrieve vouchers with a specific voucher number." }, { "slug": "LEXOFFICE_UPDATE_ARTICLE", "name": "Update Article", "description": "Tool to update an existing article in Lexoffice with new data. Use when you need to modify article details such as price, title, type, or other attributes. Requires the article ID and version number for optimistic locking." }, { "slug": "LEXOFFICE_UPDATE_CONTACT", "name": "Update lexoffice contact", "description": "Tool to update an existing contact in lexoffice. Use when modifying customer or vendor information. Requires the contact ID and current version number for optimistic locking." }, { "slug": "LEXOFFICE_UPLOAD_VOUCHER_FILE", "name": "Upload Voucher File", "description": "Tool to upload and assign files (PDF or image) to a specific voucher in lexoffice. Use when you need to attach supporting documents or receipts to an existing voucher. The file upload is asynchronous and returns HTTP 202 (Accepted) when the file is accepted for processing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lexoffice_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to Lexoffice.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browserhub", "name": "Browserhub", "logo": "https://logos.composio.dev/api/browserhub", "description": "Browserhub supports web automation and data extraction, letting users build workflows, scrape information, and integrate insights into their analytics pipelines", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "browserhub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to BrowserHub. Obtain your API key from the integrations page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fitbit", "name": "Fitbit", "logo": "https://logos.composio.dev/api/fitbit", "description": "Fitbit manufactures wearable devices and apps for fitness tracking, monitoring steps, heart rate, sleep patterns, and other health metrics", "category": "fitness", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "fitbit_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "activity,heartrate,location,nutrition,profile,settings,sleep,social,weight" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "keap", "name": "Keap", "logo": "https://logos.composio.dev/api/keap", "description": "Keap (formerly Infusionsoft) combines CRM, marketing automation, and e-commerce, helping small businesses manage leads, automate campaigns, and boost sales", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAUTH2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "full" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "gorgias", "name": "Gorgias", "logo": "https://logos.composio.dev/api/gorgias", "description": "Gorgias is a helpdesk and live chat platform specializing in e-commerce, offering automated support, order management, and unified customer communication", "category": "crm", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GORGIAS_ADD_TICKET_TAGS", "name": "Add Ticket Tags", "description": "Adds tags to a ticket in Gorgias." }, { "slug": "GORGIAS_CREATE_ACCOUNT_SETTING", "name": "Create Account Setting", "description": "Creates a new account setting in Gorgias." }, { "slug": "GORGIAS_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer in Gorgias." }, { "slug": "GORGIAS_CREATE_TEAM", "name": "Create Team", "description": "Creates a new team in Gorgias." }, { "slug": "GORGIAS_CREATE_TICKET", "name": "Create Ticket", "description": "Creates a new ticket in Gorgias." }, { "slug": "GORGIAS_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Deletes a specific customer from Gorgias." }, { "slug": "GORGIAS_DELETE_CUSTOMER_FIELD_VALUE", "name": "Delete Customer Field Value", "description": "Deletes a specific field value for a customer in Gorgias." }, { "slug": "GORGIAS_DELETE_CUSTOMERS", "name": "Delete Customers", "description": "Deletes multiple customers from Gorgias." }, { "slug": "GORGIAS_DELETE_TEAM", "name": "Delete Team", "description": "Deletes a specific team from Gorgias." }, { "slug": "GORGIAS_DELETE_TICKET", "name": "Delete Ticket", "description": "Deletes a specific ticket from Gorgias." }, { "slug": "GORGIAS_DELETE_TICKET_FIELD_VALUE", "name": "Delete Ticket Field Value", "description": "Deletes a specific field value for a ticket in Gorgias." }, { "slug": "GORGIAS_GET_ACCOUNT", "name": "Get Account", "description": "Retrieves your Gorgias account information." }, { "slug": "GORGIAS_GET_CUSTOMER", "name": "Get Customer", "description": "Retrieves a specific customer from Gorgias." }, { "slug": "GORGIAS_GET_EVENT", "name": "Get Event", "description": "Retrieves a specific event from Gorgias." }, { "slug": "GORGIAS_GET_TEAM", "name": "Get Team", "description": "Retrieves a specific team from Gorgias." }, { "slug": "GORGIAS_GET_TICKET", "name": "Get Ticket", "description": "Retrieves a specific ticket from Gorgias." }, { "slug": "GORGIAS_LIST_ACCOUNT_SETTINGS", "name": "List Account Settings", "description": "Lists all account settings in Gorgias." }, { "slug": "GORGIAS_LIST_CUSTOMER_FIELD_VALUES", "name": "List Customer Field Values", "description": "Lists all field values for a customer in Gorgias." }, { "slug": "GORGIAS_LIST_CUSTOMERS", "name": "List Customers", "description": "Lists customers in Gorgias with various filtering options." }, { "slug": "GORGIAS_LIST_EVENTS", "name": "List Events", "description": "Lists events in Gorgias. Returns event objects with pagination support via cursor. Reference: https://developers.gorgias.com/reference/get_api-events" }, { "slug": "GORGIAS_LIST_TEAMS", "name": "List Teams", "description": "Lists teams in Gorgias." }, { "slug": "GORGIAS_LIST_TICKET_FIELD_VALUES", "name": "List Ticket Field Values", "description": "Lists all field values for a ticket in Gorgias." }, { "slug": "GORGIAS_LIST_TICKETS", "name": "List Tickets", "description": "Lists tickets in Gorgias with various filtering options." }, { "slug": "GORGIAS_LIST_TICKET_TAGS", "name": "List Ticket Tags", "description": "Lists all tags for a ticket in Gorgias." }, { "slug": "GORGIAS_MERGE_CUSTOMERS", "name": "Merge Customers", "description": "Merges two customers in Gorgias, combining their data and history." }, { "slug": "GORGIAS_REMOVE_TICKET_TAGS", "name": "Remove Ticket Tags", "description": "Removes tags from a ticket in Gorgias." }, { "slug": "GORGIAS_SET_CUSTOMER_DATA", "name": "Set Customer Data", "description": "Sets the complete data object for a customer in Gorgias." }, { "slug": "GORGIAS_SET_TICKET_TAGS", "name": "Set Ticket Tags", "description": "Sets the complete list of tags for a ticket in Gorgias." }, { "slug": "GORGIAS_UPDATE_ACCOUNT_SETTING", "name": "Update Account Setting", "description": "Updates an existing account setting in Gorgias." }, { "slug": "GORGIAS_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Updates an existing customer in Gorgias." }, { "slug": "GORGIAS_UPDATE_TEAM", "name": "Update Team", "description": "Updates an existing team in Gorgias." }, { "slug": "GORGIAS_UPDATE_TICKET", "name": "Update Ticket", "description": "Updates an existing ticket in Gorgias." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gorgias_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,email,profile,offline,account:read,account:write,users:read,users:write,customers:read,customers:write,tickets:read,tickets:write,custom_fields:read,custom_fields:write,events:read,events:write,integrations:read,integrations:write,jobs:read,jobs:write,macros:read,macros:write,rules:read,rules:write,satisfaction_survey:read,satisfaction_survey:write,statistics:read,tags:read,tags:write,apps:read,apps:write" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "The part of your Gorgias web address before .gorgias.com — for acme.gorgias.com, enter just 'acme'. We use it to send you to the right Gorgias sign-in page.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "gorgias_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "The part of your Gorgias web address before .gorgias.com — for acme.gorgias.com, enter just 'acme'. Find it in your browser's address bar when logged in.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Gorgias API key, used as your API password. In Gorgias, go to Settings → Account → REST API and create or copy an API key.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Email", "type": "string", "description": "The email you log in to Gorgias with (e.g. jane@acme.com). Shown as 'Username' on the Settings → Account → REST API page, next to your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_analytics", "name": "Google Analytics", "logo": "https://logos.composio.dev/api/google_analytics", "description": "Google Analytics tracks and reports website traffic, user behavior, and conversion data, enabling marketers to optimize online performance and customer journeys", "category": "analytics", "authSchemes": [ "OAUTH2" ], "toolCount": 69, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_ANALYTICS_ARCHIVE_CUSTOM_DIMENSION", "name": "Archive Custom Dimension", "description": "Tool to archive a CustomDimension on a property. Use when you need to remove a custom dimension from active use without permanently deleting it. Archived dimensions cannot be used in new reports." }, { "slug": "GOOGLE_ANALYTICS_BATCH_RUN_PIVOT_REPORTS", "name": "Batch Run Pivot Reports", "description": "Tool to return multiple pivot reports in a batch for a GA4 property. Use when you need to fetch multiple pivot table reports with multi-dimensional analysis in a single request." }, { "slug": "GOOGLE_ANALYTICS_BATCH_RUN_REPORTS", "name": "Batch Run Reports", "description": "Tool to return multiple analytics data reports in a batch. Use when you need to fetch multiple reports for one GA4 property in a single request." }, { "slug": "GOOGLE_ANALYTICS_CHECK_COMPATIBILITY", "name": "Check Compatibility", "description": "Tool to list dimensions and metrics compatible with a GA4 report request. Use when you need to validate compatibility of chosen dimensions or metrics before running a report." }, { "slug": "GOOGLE_ANALYTICS_CREATE_AUDIENCE_EXPORT", "name": "Create Audience Export", "description": "Tool to create an audience export for Google Analytics. Use when you need to export a snapshot of users in an audience at a specific point in time. This initiates a long-running asynchronous request that returns an operation resource name immediately. The export begins in CREATING state with rowCount=0; the operation must complete before export data is accessible for querying." }, { "slug": "GOOGLE_ANALYTICS_CREATE_AUDIENCE_LIST", "name": "Create Audience List", "description": "Tool to create an audience list for later retrieval by initiating a long-running asynchronous request. Use when you need to create a snapshot of users currently in an audience. The method returns quickly with an Operation resource while processing occurs in the background." }, { "slug": "GOOGLE_ANALYTICS_CREATE_CUSTOM_DIMENSION", "name": "Create Custom Dimension", "description": "Tool to create a CustomDimension for a Google Analytics property. Use when you need to add a new custom dimension to track specific user properties, event parameters, or eCommerce item parameters." }, { "slug": "GOOGLE_ANALYTICS_CREATE_CUSTOM_METRIC", "name": "Create Custom Metric", "description": "Tool to create a custom metric in Google Analytics. Use when you need to define a new custom metric for tracking specific event parameters." }, { "slug": "GOOGLE_ANALYTICS_CREATE_EXPANDED_DATA_SET", "name": "Create Expanded Data Set", "description": "Tool to create an expanded data set for a property. Use when you need to combine specific dimensions and metrics into a custom dataset after property creation." }, { "slug": "GOOGLE_ANALYTICS_CREATE_RECURRING_AUDIENCE_LIST", "name": "Create Recurring Audience List", "description": "Tool to create a recurring audience list that automatically generates new audience lists daily based on the latest data. Use when you need to automate audience list creation and reduce quota token consumption." }, { "slug": "GOOGLE_ANALYTICS_CREATE_REPORT_TASK", "name": "Create Report Task", "description": "Tool to create a report task as a long-running asynchronous request for customized Google Analytics event data reports. Use when you need to generate large or complex reports that process asynchronously." }, { "slug": "GOOGLE_ANALYTICS_CREATE_ROLLUP_PROPERTY", "name": "Create Rollup Property", "description": "Tool to create a roll-up property. Use when consolidating multiple GA4 properties into one aggregated view." }, { "slug": "GOOGLE_ANALYTICS_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve a single Account by its resource name. Use when you need detailed account info after confirming the account resource name (e.g., accounts/100)." }, { "slug": "GOOGLE_ANALYTICS_GET_ATTRIBUTION_SETTINGS", "name": "Get Attribution Settings", "description": "Tool to retrieve attribution configuration for a Google Analytics property. Use when you need to check attribution models, lookback windows, and conversion export settings." }, { "slug": "GOOGLE_ANALYTICS_GET_AUDIENCE", "name": "Get Audience", "description": "Tool to retrieve a single Audience configuration from a Google Analytics property. Use when you need detailed audience information including membership criteria and filter clauses." }, { "slug": "GOOGLE_ANALYTICS_GET_AUDIENCE_EXPORT", "name": "Get Audience Export", "description": "Tool to get configuration metadata about a specific audience export. Use when you need to understand an audience export after it has been created or check its status." }, { "slug": "GOOGLE_ANALYTICS_GET_AUDIENCE_LIST", "name": "Get Audience List", "description": "Tool to get configuration metadata about a specific audience list. Use after confirming the audience list resource name." }, { "slug": "GOOGLE_ANALYTICS_GET_CUSTOM_DIMENSION", "name": "Get Custom Dimension", "description": "Tool to retrieve a single CustomDimension by its resource name. Use when you need detailed information about a specific custom dimension including its display name, scope, and parameter name." }, { "slug": "GOOGLE_ANALYTICS_GET_DATA_RETENTION_SETTINGS", "name": "Get Data Retention Settings", "description": "Tool to retrieve data retention configuration for a Google Analytics property. Use when you need to check event-level and user-level data retention durations and reset settings." }, { "slug": "GOOGLE_ANALYTICS_GET_DATA_SHARING_SETTINGS", "name": "Get Data Sharing Settings", "description": "Tool to retrieve data sharing configuration for a Google Analytics account. Use when you need to check which data sharing settings are enabled for an account, including sharing with Google support, sales teams, products, and benchmarking." }, { "slug": "GOOGLE_ANALYTICS_GET_GOOGLE_SIGNALS_SETTINGS", "name": "Get Google Signals Settings", "description": "Tool to retrieve Google Signals configuration settings for a GA4 property. Use when you need to check whether Google Signals is enabled and the consent status for a property." }, { "slug": "GOOGLE_ANALYTICS_GET_KEY_EVENT", "name": "Get Key Event", "description": "Tool to retrieve a Key Event. Use after confirming the key event resource name. Read-only; create, update, or delete operations require the Google Analytics UI." }, { "slug": "GOOGLE_ANALYTICS_GET_METADATA", "name": "Get Metadata", "description": "Tool to get metadata for dimensions, metrics, and comparisons for a GA4 property. Use to discover available fields before building a report — always derive dimension/metric apiNames from this output rather than hardcoding from GA4 UI labels, which differ. Available fields vary per property; skip validation and downstream report tools like GOOGLE_ANALYTICS_RUN_REPORT return 400 INVALID_ARGUMENT on incompatible or invalid field combinations. Response can contain hundreds of fields; filter to relevant subset before passing to downstream logic." }, { "slug": "GOOGLE_ANALYTICS_GET_PROPERTY", "name": "Get Property", "description": "Tool to retrieve a single GA4 Property by its resource name. Use when you need detailed property configuration including display name, time zone, currency, and other settings." }, { "slug": "GOOGLE_ANALYTICS_GET_PROPERTY_QUOTAS_SNAPSHOT", "name": "Get Property Quotas Snapshot", "description": "Tool to retrieve all property quotas organized by category (corePropertyQuota, funnelPropertyQuota, realtimePropertyQuota) for a given GA4 property. Use when you need to check current quota usage. Snapshot data can lag real consumption by several minutes; treat reported values as approximate and avoid scheduling high-volume jobs at full apparent capacity." }, { "slug": "GOOGLE_ANALYTICS_GET_RECURRING_AUDIENCE_LIST", "name": "Get Recurring Audience List", "description": "Tool to get configuration metadata about a specific recurring audience list. Use when you need to understand a recurring audience list's state after it has been created or to get the resource name of the most recent audience list instance." }, { "slug": "GOOGLE_ANALYTICS_GET_REPORT_TASK", "name": "Get Report Task", "description": "Tool to get report metadata about a specific report task. Use after creating a report task to check its processing state or inspect its report definition." }, { "slug": "GOOGLE_ANALYTICS_LIST_ACCOUNTS", "name": "List Accounts (Deprecated)", "description": "DEPRECATED: Use ListAccountsV1Beta instead. Tool to list all Accounts accessible by the caller. Use when you need to enumerate all Google Analytics accounts your credentials can access. Empty or partial results may indicate a permissions issue rather than no resources existing. Returned resource names follow the format accounts/{account_id}; use these in subsequent calls." }, { "slug": "GOOGLE_ANALYTICS_LIST_ACCOUNT_SUMMARIES", "name": "List Account Summaries", "description": "Tool to retrieve summaries of all Google Analytics accounts accessible by the caller. Use when you need a high-level overview of accounts and their properties without fetching full account details." }, { "slug": "GOOGLE_ANALYTICS_LIST_ACCOUNTS_V1_BETA", "name": "List Accounts (v1beta)", "description": "Tool to list all Google Analytics accounts accessible by the caller using v1beta API. Use when you need to enumerate accounts. Note that these accounts might not have GA properties yet. Soft-deleted accounts are excluded by default." }, { "slug": "GOOGLE_ANALYTICS_LIST_ADSENSE_LINKS", "name": "List AdSense Links", "description": "Tool to list all AdSenseLinks on a property. Use when you need to fetch all AdSense links for a given Google Analytics property." }, { "slug": "GOOGLE_ANALYTICS_LIST_AUDIENCE_EXPORTS", "name": "List Audience Exports", "description": "Tool to list all audience exports for a property. Use when you need to find and reuse existing audience exports rather than creating new ones." }, { "slug": "GOOGLE_ANALYTICS_LIST_AUDIENCE_LISTS", "name": "List Audience Lists", "description": "Tool to list all audience lists for a specified property to help find and reuse existing lists. Use when you need to retrieve a property's configured audience lists after confirming the property ID." }, { "slug": "GOOGLE_ANALYTICS_LIST_AUDIENCES", "name": "List Audiences", "description": "Tool to list Audiences on a property. Use when you need to retrieve audience configurations for a Google Analytics property. Audiences created before 2020 may not be supported." }, { "slug": "GOOGLE_ANALYTICS_LIST_BIGQUERY_LINKS", "name": "List BigQuery Links", "description": "Tool to list BigQuery Links on a property. Use when you need to retrieve BigQuery link resources associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLE_ANALYTICS_LIST_CALCULATED_METRICS", "name": "List Calculated Metrics", "description": "List Calculated Metrics" }, { "slug": "GOOGLE_ANALYTICS_LIST_CHANNEL_GROUPS", "name": "List Channel Groups", "description": "Tool to list ChannelGroups on a property. Use when you need to retrieve channel groups that categorize traffic sources in Analytics reports." }, { "slug": "GOOGLE_ANALYTICS_LIST_CONVERSION_EVENTS", "name": "List Conversion Events", "description": "Tool to list conversion events on a property. Use when you need to retrieve conversion events configured for a given property." }, { "slug": "GOOGLE_ANALYTICS_LIST_CUSTOM_DIMENSIONS", "name": "List Custom Dimensions", "description": "List Custom Dimensions" }, { "slug": "GOOGLE_ANALYTICS_LIST_CUSTOM_METRICS", "name": "List Custom Metrics", "description": "Tool to list CustomMetrics on a property. Use when you need to retrieve all custom metrics configured for a given property." }, { "slug": "GOOGLE_ANALYTICS_LIST_DATA_STREAMS", "name": "List DataStreams", "description": "Tool to list DataStreams on a property. Use when you need to retrieve data stream configurations for a Google Analytics property." }, { "slug": "GOOGLE_ANALYTICS_LIST_DV360_AD_LINKS", "name": "List Display & Video 360 Advertiser Links", "description": "Tool to list Display & Video 360 advertiser links on a property. Use when you need to retrieve DisplayVideo360AdvertiserLink resources associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLE_ANALYTICS_LIST_DV360_LINK_PROPOSALS", "name": "List DisplayVideo360 Advertiser Link Proposals", "description": "Tool to list DisplayVideo360AdvertiserLinkProposals on a property. Use when you need to retrieve Display & Video 360 advertiser link proposals associated with a Google Analytics property. Results support pagination for large datasets." }, { "slug": "GOOGLE_ANALYTICS_LIST_EVENT_CREATE_RULES", "name": "List Event Create Rules", "description": "Tool to list EventCreateRules configured on a web data stream. Use when you need to retrieve event create rules for a specific GA4 property data stream." }, { "slug": "GOOGLE_ANALYTICS_LIST_EXPANDED_DATA_SETS", "name": "List Expanded Data Sets", "description": "Tool to list ExpandedDataSets on a property. Use when you need to retrieve expanded data set configurations for a Google Analytics 360 property." }, { "slug": "GOOGLE_ANALYTICS_LIST_FIREBASE_LINKS", "name": "List Firebase Links", "description": "Tool to list FirebaseLinks on a property. Use when you need to retrieve Firebase connections associated with a Google Analytics property. Each property can have at most one FirebaseLink." }, { "slug": "GOOGLE_ANALYTICS_LIST_GOOGLE_ADS_LINKS", "name": "List Google Ads Links", "description": "Tool to list GoogleAdsLinks on a property. Use when you need to retrieve Google Ads account links configured for a Google Analytics property. Supports pagination for large result sets." }, { "slug": "GOOGLE_ANALYTICS_LIST_KEY_EVENTS", "name": "List Key Events", "description": "Tool to list Key Events. Use when you need to retrieve all key event definitions for a given property. Key events are read-only via API; creation, updates, and deletion require the Google Analytics UI. An empty results list means no key events are configured, not a failure. Do not infer key-event status from report data (e.g., eventCount); use this tool to confirm." }, { "slug": "GOOGLE_ANALYTICS_LIST_MEASUREMENT_PROTOCOL_SECRETS", "name": "List Measurement Protocol Secrets", "description": "Tool to list MeasurementProtocolSecrets under a data stream. Use when you need to retrieve measurement protocol secrets for server-side event tracking." }, { "slug": "GOOGLE_ANALYTICS_LIST_PROPERTIES", "name": "List Properties (Deprecated)", "description": "DEPRECATED: Use ListPropertiesV1Beta instead. Tool to list GA4 properties under a specific account. Use after obtaining an account ID; supports pagination and including soft-deleted properties. Results may include legacy Universal Analytics properties; verify property type before use." }, { "slug": "GOOGLE_ANALYTICS_LIST_PROPERTIES_FILTERED", "name": "List Property", "description": "Tool to list GA4 properties based on filter criteria. Use when you need to find properties under a specific parent account or with specific firebase projects. Supports pagination and including soft-deleted properties." }, { "slug": "GOOGLE_ANALYTICS_LIST_RECURRING_AUDIENCE_LISTS", "name": "List Recurring Audience Lists", "description": "Tool to list all recurring audience lists for a GA4 property. Use when you need to find and reuse existing recurring audience lists." }, { "slug": "GOOGLE_ANALYTICS_LIST_REPORTING_DATA_ANNOTATIONS", "name": "List Reporting Data Annotations", "description": "Tool to list all Reporting Data Annotations for a specific property. Use when you need to retrieve annotations that document important events or periods in GA4 reporting data." }, { "slug": "GOOGLE_ANALYTICS_LIST_REPORT_TASKS", "name": "List Report Tasks", "description": "Tool to list all report tasks for a Google Analytics property. Use when you need to retrieve report task definitions and their execution status." }, { "slug": "GOOGLE_ANALYTICS_LIST_SEARCH_ADS360_LINKS", "name": "List Search Ads 360 Links", "description": "Tool to list all SearchAds360Links on a property. Use when you need to retrieve all Search Ads 360 links for a given Google Analytics property. Supports pagination for large result sets." }, { "slug": "GOOGLE_ANALYTICS_LIST_SK_AD_NETWORK_CONVERSION_VALUE_SCHEMAS", "name": "List SKAdNetwork Conversion Value Schemas", "description": "Tool to list SKAdNetworkConversionValueSchema configurations for an iOS data stream. Use when you need to retrieve conversion value schemas for iOS app tracking. Maximum one schema per property is supported." }, { "slug": "GOOGLE_ANALYTICS_LIST_SUBPROPERTY_EVENT_FILTERS", "name": "List Subproperty Event Filters", "description": "Tool to list all subproperty event filters on a property. Use when you need to retrieve event filters that route events to subproperties." }, { "slug": "GOOGLE_ANALYTICS_LIST_SUBPROPERTY_SYNC_CONFIGS", "name": "List Subproperty Sync Configs", "description": "Tool to list SubpropertySyncConfig resources for managing subproperty synchronization configurations. Use when you need to fetch subproperty sync configs for a GA4 property." }, { "slug": "GOOGLE_ANALYTICS_PROVISION_ACCOUNT_TICKET", "name": "Provision Account Ticket", "description": "Tool to request a ticket for creating a Google Analytics account. Use when you need to initiate the account creation flow that requires user acceptance of Terms of Service." }, { "slug": "GOOGLE_ANALYTICS_QUERY_AUDIENCE_EXPORT", "name": "Query Audience Export", "description": "Tool to query a completed audience export. Use when you need to fetch user rows with pagination." }, { "slug": "GOOGLE_ANALYTICS_QUERY_AUDIENCE_LIST", "name": "Query Audience List", "description": "Tool to query an audience list. Use when you need to retrieve user rows from a GA4 audience list with pagination." }, { "slug": "GOOGLE_ANALYTICS_QUERY_REPORT_TASK", "name": "Query Report Task", "description": "Tool to retrieve a report task's content. Use this after creating a report task with CreateReportTask and confirming it is in ACTIVE state. This method returns an error if the report task's state is not ACTIVE." }, { "slug": "GOOGLE_ANALYTICS_RUN_FUNNEL_REPORT", "name": "Run Funnel Report", "description": "Tool to run a GA4 funnel report. Use when you need a customized funnel analysis report for a given property. Funnel step sequence is determined by step attributes in the response, not row order." }, { "slug": "GOOGLE_ANALYTICS_RUN_PIVOT_REPORT", "name": "Run Pivot Report", "description": "Tool to run a customized pivot report of Google Analytics event data. Use when you need a pivot table view with advanced segmentation and multi-dimensional analysis of GA4 data." }, { "slug": "GOOGLE_ANALYTICS_RUN_REALTIME_REPORT", "name": "Run Realtime Report", "description": "Tool to run a customized realtime report of Google Analytics event data. Use when you need realtime data (last 30-60 minutes) with dimensions and metrics for a GA4 property." }, { "slug": "GOOGLE_ANALYTICS_RUN_REPORT", "name": "Run Report", "description": "Tool to run a customized GA4 data report. Use when you need event data after specifying dimensions, metrics, and date ranges. IMPORTANT - DIMENSION/METRIC COMPATIBILITY: The Google Analytics Data API has strict compatibility rules between dimensions and metrics. Not all combinations are valid. If you receive a 400 error with a message about incompatible dimensions/metrics, use the GOOGLE_ANALYTICS_CHECK_COMPATIBILITY action first to validate your dimension/metric combinations before running reports. Common incompatibilities include: - Demographic dimensions (userAgeBracket, userGender) with session-scoped dimensions/filters (sessionCampaignName, sessionSource) - Certain user-scoped dimensions with event-scoped metrics For complex queries, consider starting with simpler dimension/metric combinations or use CHECK_COMPATIBILITY to pre-validate your request." }, { "slug": "GOOGLE_ANALYTICS_SEND_EVENTS", "name": "Send Events", "description": "Tool to send event data to Google Analytics 4 using the Measurement Protocol. Use when you need to track server-side events that supplement client-side gtag.js or Firebase tracking. The Measurement Protocol allows sending event data directly to GA4 from servers, applications, or other devices. Events are processed asynchronously and typically appear in reports within 24-48 hours. For validation, use the validation server endpoint first (mp/collect/validate)." }, { "slug": "GOOGLE_ANALYTICS_UPDATE_PROPERTY", "name": "Update Property", "description": "Tool to update an existing GA4 Property. Use when you need to modify property settings such as display name, time zone, currency code, or industry category." }, { "slug": "GOOGLE_ANALYTICS_VALIDATE_EVENTS", "name": "Validate Events", "description": "Tool to validate Measurement Protocol events before sending them to production. Use when you need to verify event structure and parameters are correct before sending real data." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_analytics_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/analytics.readonly,https://www.googleapis.com/auth/analytics,https://www.googleapis.com/auth/userinfo.profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "todoist", "name": "Todoist", "logo": "https://logos.composio.dev/api/todoist", "description": "Todoist is a task management tool allowing users to create to-do lists, set deadlines, and collaborate on projects with reminders and cross-platform syncing", "category": "task management", "authSchemes": [ "OAUTH2" ], "toolCount": 84, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "TODOIST_ADD_WORKSPACE", "name": "Add Workspace", "description": "Tool to create a new workspace in Todoist. Use when you need a separate workspace to organize projects. Generates UUID and temp_id automatically." }, { "slug": "TODOIST_ARCHIVE_PROJECT2", "name": "Archive Project (API v1)", "description": "Tool to archive a project using Todoist API v1. For personal projects, archives it for the initiating user. For workspace projects, archives it for all workspace users." }, { "slug": "TODOIST_BULK_CREATE_TASKS", "name": "Bulk Create Tasks", "description": "Create many tasks in one request using Todoist's Sync batching. Use when scaffolding projects or creating multiple tasks at once to reduce round trips." }, { "slug": "TODOIST_CLOSE_TASK", "name": "Close Task (Deprecated)", "description": "DEPRECATED: Use TODOIST_CLOSE_TASK_V1 instead. This tool marks an existing task as completed in Todoist. It requires the `task_id` of the task to be closed. Closing an already-completed task returns an error; check task state first if idempotent behavior is needed." }, { "slug": "TODOIST_CLOSE_TASK_V1", "name": "Close Task (API v1)", "description": "Tool to close (complete) a task in Todoist using API v1. Use when you need to mark a task as complete using the v1 endpoint." }, { "slug": "TODOIST_CREATE_COMMENT_V1", "name": "Create Comment (API v1)", "description": "Tool to create a new comment on a project or task using Todoist API v1. Use when you need to add a note to a specific task or project. IMPORTANT: You must provide EXACTLY ONE of task_id or project_id - these parameters are mutually exclusive. - To comment on a task, provide task_id (and omit project_id) - To comment on a project, provide project_id (and omit task_id) - Providing both task_id AND project_id will cause an error." }, { "slug": "TODOIST_CREATE_LABEL", "name": "Create Label (Deprecated)", "description": "DEPRECATED: Use TODOIST_CREATE_LABEL_V1 instead. Creates a new label." }, { "slug": "TODOIST_CREATE_LABEL_V1", "name": "Create Label (API v1)", "description": "Tool to create a new personal label using API v1. Use when you need to add a new label to organize tasks." }, { "slug": "TODOIST_CREATE_PROJECT", "name": "Create Project (Deprecated)", "description": "DEPRECATED: Use TODOIST_TODOIST_CREATE_PROJECT2 instead. Creates a new project in Todoist. Project names are not unique; use the returned project_id for subsequent operations to avoid ambiguous matches." }, { "slug": "TODOIST_CREATE_PROJECT2", "name": "Create Project (API v1)", "description": "Tool to create a new project in Todoist using the unified API v1. Use when you need to create a new project with specific parameters like name, color, or parent project." }, { "slug": "TODOIST_CREATE_SECTION", "name": "Create Section (Deprecated)", "description": "DEPRECATED: Use TODOIST_CREATE_SECTION_V1 instead. Tool to create a new section within a specific project. Use when you need to group tasks under a new heading in a project." }, { "slug": "TODOIST_CREATE_SECTION_V1", "name": "Create Section (API v1)", "description": "Tool to create a new section within a project using API v1. Use when you need to organize tasks under a new heading in a project." }, { "slug": "TODOIST_CREATE_TASK", "name": "Create task", "description": "Create a new task in Todoist using the unified API v1. This action allows users to create tasks with various parameters including content, due dates, priority, and more. The task can be created in a specific project, section, or as a subtask of another task. Bulk creation may trigger HTTP 429; honor Retry-After response headers." }, { "slug": "TODOIST_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a specific comment from Todoist by its ID. Use when you need to permanently remove a comment." }, { "slug": "TODOIST_DELETE_LABEL_V1", "name": "Delete Label (V1)", "description": "Tool to delete a personal label using API v1. Use when you need to permanently remove a label by its ID. All instances of the label will be removed from tasks." }, { "slug": "TODOIST_DELETE_PROJECT2", "name": "Delete Project (API v1)", "description": "Tool to delete a project and all of its sections and tasks using Todoist API v1. Use when you need to permanently remove a project by its ID." }, { "slug": "TODOIST_DELETE_SECTION2", "name": "Delete Section (v1)", "description": "Tool to delete a section and all tasks within it. Use when you need to permanently remove a section by its ID." }, { "slug": "TODOIST_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a specific task from Todoist. Permanently removes the task and all its subtasks with no recycle bin or undo option. Confirm with the user before executing, especially for bulk deletions." }, { "slug": "TODOIST_DELETE_TASK_V1", "name": "Delete Task (API v1)", "description": "DEPRECATED: Use TODOIST_DELETE_TASK instead. Tool to delete a specific task from Todoist using API v1. Use when you need to permanently remove a task by its ID." }, { "slug": "TODOIST_DELETE_UPLOAD", "name": "Delete Upload", "description": "Tool to delete an uploaded file from Todoist. Use when you need to remove a file that was previously uploaded." }, { "slug": "TODOIST_EXPORT_TEMPLATE_AS_FILE", "name": "Export Template As File", "description": "Tool to export a Todoist project as a CSV template file. Use when you need to download a project template as a file for backup or sharing." }, { "slug": "TODOIST_EXPORT_TEMPLATE_AS_URL", "name": "Export Template As URL", "description": "Tool to export a Todoist project as a shareable template URL. Use when you need to share a project structure or create copies from a template." }, { "slug": "TODOIST_FILTER_TASKS", "name": "Filter Tasks", "description": "Tool to get all tasks matching the filter. Use when you need to retrieve tasks based on specific filter criteria. This is a paginated endpoint using cursor-based pagination." }, { "slug": "TODOIST_GET_ALL_COMMENTS", "name": "Get All Comments", "description": "This tool retrieves all comments associated with a specific task or project in Todoist. You must provide exactly one of task_id or project_id (they are mutually exclusive - do not provide both). Returns a JSON array of comment objects with details such as id, posted_at, content, and attachment information." }, { "slug": "TODOIST_GET_ALL_PROJECTS", "name": "Get all projects", "description": "Get all projects from a user's Todoist account. Retrieves all active (non-archived) projects; use TODOIST_LIST_ARCHIVED_WORKSPACE_PROJECTS for archived ones. Response returns the list in the projects field, with fields including project_id, name, color, parent project, sharing status, and is_inbox_project flag. Always reference projects by project_id — names are non-unique and may be localized. Detect the Inbox via is_inbox_project, not by name. Results are a point-in-time snapshot; re-call after structural changes before relying on cached project_ids. In large accounts, paginate until no next-page token remains to avoid missing projects. Check existing projects before creating new ones to prevent duplicates." }, { "slug": "TODOIST_GET_ALL_TASKS", "name": "Get All Tasks", "description": "Fetches all INCOMPLETE tasks from Todoist and returns their details. Supports cursor-based pagination. IMPORTANT LIMITATIONS: - This endpoint only returns active (incomplete) tasks - Cannot retrieve completed tasks - use a different endpoint for that - Filter queries using 'completed', '!completed', or 'completed after' will fail - Project/label references must use ACTUAL EXISTING names from the user's account - Arbitrary text in filters causes 400 errors - use 'search: keyword' for text search Common use cases: - Get all tasks: no filter - Get today's tasks: filter=\"today\" - Get overdue tasks: filter=\"overdue\" - Get tasks from specific project: filter=\"#ProjectName\" (project must exist) - Get high priority tasks: filter=\"p1\" - Search task content: filter=\"search: keyword\" - Paginate results: use limit and cursor parameters" }, { "slug": "TODOIST_GET_BACKUPS", "name": "Get Backups", "description": "Tool to list all available backup archives for the user. Returns archive metadata only — not live task or project data; do not use as a proxy for active data availability. May return an empty list if no backups exist or backups are not enabled. For completed task history, use /sync/v9/completed/get_all instead." }, { "slug": "TODOIST_GET_COMMENT_V1", "name": "Get Comment (V1)", "description": "Tool to retrieve a single comment by ID using the v1 API. Use when you need to fetch details of a specific comment." }, { "slug": "TODOIST_GET_COMPLETED_TASKS_BY_COMPLETION_DATE", "name": "Get Completed Tasks By Completion Date", "description": "Tool to retrieve completed tasks within a specified completion date window. Use when you need to fetch historical completed tasks for reporting, audits, or weekly summaries. The API restricts the completion-date range to approximately 3 months between since and until parameters." }, { "slug": "TODOIST_GET_ID_MAPPINGS", "name": "Get ID Mappings", "description": "Tool to translate IDs between Todoist API v1 and v2. Use when you need to convert IDs between API versions for sections, tasks, comments, reminders, location_reminders, or projects." }, { "slug": "TODOIST_GET_PERSONAL_LABEL", "name": "Get Personal Label", "description": "Tool to retrieve a personal label by its ID. Use when you need to fetch details about a specific personal label." }, { "slug": "TODOIST_GET_PRODUCTIVITY_STATS", "name": "Get Productivity Stats", "description": "Tool to retrieve comprehensive productivity statistics for the authenticated user. Use when you need detailed completion data, karma scores, streaks, or goal tracking information for productivity reports and analysis." }, { "slug": "TODOIST_GET_PROJECT", "name": "Get Project (API v1)", "description": "Tool to retrieve a specific project by its ID using Todoist API v1. Use when you have a project ID and need its metadata before display or update. Verify project_id matches the intended project before destructive operations — similar project names can cause mistakes; use TODOIST_GET_ALL_PROJECTS to resolve ambiguous names to IDs first." }, { "slug": "TODOIST_GET_PROJECT_FULL", "name": "Get Full Project Data", "description": "Tool to retrieve full project data including all sections, tasks, and collaborators. Use when you need comprehensive project information beyond basic metadata." }, { "slug": "TODOIST_GET_PROJECT_PERMISSIONS", "name": "Get Project Permissions", "description": "Tool to retrieve all available roles and their associated actions in Todoist projects. Use when you need to understand what permissions different roles have in projects." }, { "slug": "TODOIST_GET_SECTION_V1", "name": "Get Section (v1 API)", "description": "Tool to retrieve a specific section by its ID using Todoist v1 API. Use when you need section metadata from the v1 endpoint." }, { "slug": "TODOIST_GET_SPECIAL_BACKUPS", "name": "Get Special Backups", "description": "Tool to list special backup archives for the authenticated user's projects. Returns an empty list if no backups exist — callers must not assume archives are present. Read-only: confirms archive visibility only, not live task or project data access." }, { "slug": "TODOIST_GET_TASK", "name": "Get Task (Deprecated)", "description": "DEPRECATED: Use TODOIST_GET_TASK2 instead. Tool to retrieve a specific task by its ID. Use when you need to fetch all details of an existing task before processing or display. Comments and attachments with additional context require separate API calls. Rate limit: ~50 req/min; honor Retry-After on HTTP 429." }, { "slug": "TODOIST_GET_TASK2", "name": "Get Task (API v1)", "description": "Tool to retrieve a single active (non-completed) task by ID using API v1. Use when you need to fetch task details from the v1 endpoint." }, { "slug": "TODOIST_GET_USER", "name": "Get User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need user details like email, name, preferences, karma, or subscription status." }, { "slug": "TODOIST_GET_WORKSPACE_PLAN_DETAILS", "name": "Get Workspace Plan Details", "description": "Tool to retrieve details about a workspace's current plan and usage. Use when you need information about subscription status, member count, project limits, pricing, or trial status for a specific workspace." }, { "slug": "TODOIST_IMPORT_TEMPLATE_INTO_PROJECT_BY_ID", "name": "Import Template Into Project By ID", "description": "Tool to import a template from Todoist's template gallery into an existing project. Use when you need to add structured tasks and sections from a pre-made template to an existing project." }, { "slug": "TODOIST_IMPORT_TEMPLATE_INTO_PROJECT_FROM_FILE", "name": "Import Template Into Project From File", "description": "Tool to import a CSV template into an existing Todoist project from a file. Use when you need to bulk-create tasks, sections, and notes from a template file." }, { "slug": "TODOIST_INVITE_PROJECT_COLLABORATOR", "name": "Invite Project Collaborator", "description": "Tool to invite a collaborator to a Todoist project by email. Use when the user asks to share, invite someone to, or add a collaborator to a project. For workspace or team projects, you can optionally specify a role. If the role is omitted, the workspace default role is used. For invite-only workspace projects, the caller may need admin or owner permissions; otherwise the API may return a forbidden error." }, { "slug": "TODOIST_LIST_ACTIVITIES", "name": "List Activities", "description": "Tool to get activity logs from Todoist. Returns a paginated list of activity events for the user. Events can be filtered by object type (project, item, note), event type, and other criteria. Uses cursor-based pagination for efficient navigation through results." }, { "slug": "TODOIST_LIST_ALL_INVITATIONS_WORKSPACES", "name": "List All Workspace Invitations", "description": "Tool to return a list containing details of all pending invitations to a workspace. Use when you need to view all pending workspace invitations. This list is not paginated, and all workspace members can access it." }, { "slug": "TODOIST_LIST_ARCHIVED_PROJECTS", "name": "List Archived Projects", "description": "Tool to get all archived projects from Todoist. Use when you need to retrieve archived projects with pagination support." }, { "slug": "TODOIST_LIST_ARCHIVED_SECTIONS", "name": "List Archived Sections", "description": "Tool to retrieve all archived sections for a specific project in Todoist. Use when you need to access sections that have been archived in a project." }, { "slug": "TODOIST_LIST_ARCHIVED_WORKSPACE_PROJECTS", "name": "List Archived Workspace Projects", "description": "Tool to list all archived projects in a workspace. Archived projects are excluded from TODOIST_GET_ALL_PROJECTS; combine both tools when a complete project list is needed. Use when you need to retrieve archived workspace projects with optional filters or pagination." }, { "slug": "TODOIST_LIST_COMPLETED_TASKS", "name": "List Completed Tasks", "description": "Tool to retrieve all completed tasks with optional project filtering. Use when you need to fetch completed tasks without date range restrictions. Note: This action uses an undocumented Todoist API endpoint (/api/v1/tasks/completed). The endpoint is not officially documented but is confirmed to work based on runtime testing. The response schemas are based on actual API responses." }, { "slug": "TODOIST_LIST_COMPLETED_TASKS_BY_DUE_DATE", "name": "List Completed Tasks By Due Date", "description": "Tool to retrieve completed tasks within a specified due date range (up to 6 weeks). Use when you need to fetch completed tasks filtered by their original due dates rather than completion dates." }, { "slug": "TODOIST_LIST_FILTERS", "name": "List Filters", "description": "Tool to list all filters for the authenticated user. Use when you need to retrieve the current set of custom filters." }, { "slug": "TODOIST_LIST_JOINABLE_WORKSPACES", "name": "List Joinable Workspaces", "description": "Tool to get workspaces the user can join. Use when you need to discover available workspaces that the authenticated user can join." }, { "slug": "TODOIST_LIST_LABELS", "name": "List Labels", "description": "Tool to get all user labels with pagination support. Use when you need to retrieve labels from the user's Todoist account." }, { "slug": "TODOIST_LIST_PENDING_WORKSPACE_INVITATIONS", "name": "List Pending Workspace Invitations", "description": "Tool to list pending invitation emails in a workspace. Use when you need to check which email invites are still pending acceptance in a workspace." }, { "slug": "TODOIST_LIST_PROJECT_COLLABORATORS", "name": "List Project Collaborators", "description": "Tool to get all collaborators for a given project with cursor-based pagination. Use when you need to retrieve the list of people who have access to a specific project." }, { "slug": "TODOIST_LIST_SECTIONS", "name": "List Sections", "description": "Tool to get all active sections for the user, with optional filtering by project. Supports cursor-based pagination to handle large result sets." }, { "slug": "TODOIST_LIST_SHARED_LABELS", "name": "List Shared Labels", "description": "Tool to retrieve shared label names from active tasks with pagination support. Use when you need to list labels across the workspace with optional filtering of personal labels." }, { "slug": "TODOIST_LIST_WORKSPACE_ACTIVE_PROJECTS", "name": "List Workspace Active Projects", "description": "Tool to list all active workspace projects. Returns active projects that are visible to the user, including those not yet joined. For guest users, only joined workspace projects are returned." }, { "slug": "TODOIST_LIST_WORKSPACE_ARCHIVED_PROJECTS", "name": "List Workspace Archived Projects", "description": "Tool to get archived projects in a workspace. Use when you need to retrieve a list of archived projects for a specific workspace with optional pagination." }, { "slug": "TODOIST_LIST_WORKSPACE_INVITATIONS", "name": "List Workspace Invitations", "description": "Tool to list user emails with pending invitations to a workspace. Use when you need to check which email invites are still pending. The list is not paginated and accessible by all workspace members." }, { "slug": "TODOIST_LIST_WORKSPACE_USERS", "name": "List Workspace Users", "description": "Tool to list users in workspace(s). Use when you need to retrieve workspace members. Returns users from a specific workspace if workspace_id is provided, otherwise returns users from all workspaces the authenticated user is part of. Not accessible by guests." }, { "slug": "TODOIST_MOVE_TASK", "name": "Move Task", "description": "Tool to move a task to another project, section, or parent task while preserving task identity and metadata. Use when you need to relocate a task without recreating it." }, { "slug": "TODOIST_MOVE_TASK_REST_API", "name": "Move Task (REST API)", "description": "Tool to move a task to another project, section, or parent task using the REST API. Use when you need to relocate a task while preserving its identity and metadata." }, { "slug": "TODOIST_QUICK_ADD_TASK", "name": "Quick Add Task", "description": "Tool to add tasks using natural language parsing similar to the official Todoist clients. Use when you want to create a task quickly with natural language that includes dates, projects, labels, priority, and other task attributes in a single text string." }, { "slug": "TODOIST_REMOVE_SHARED_LABEL_V1", "name": "Remove Shared Label (API v1)", "description": "Tool to remove a shared label from all active tasks using API v1. Use when you need to remove a shared label created by a collaborator from your account." }, { "slug": "TODOIST_RENAME_SHARED_LABELS_V1", "name": "Rename Shared Labels (API v1)", "description": "Tool to rename a shared label across all active tasks using API v1. Use when you need to change the name of a shared label." }, { "slug": "TODOIST_REOPEN_TASK2", "name": "Reopen Task (API v1)", "description": "Tool to reopen a completed task in Todoist using API v1. Use when you need to restore a previously completed task. Any ancestor tasks or sections will also be marked as uncomplete and restored from history." }, { "slug": "TODOIST_REORDER_TASKS", "name": "Reorder Tasks", "description": "Reorder tasks deterministically by updating child_order in bulk via the Sync API item_reorder command. Use when you need to set specific ordering for tasks." }, { "slug": "TODOIST_SEARCH_LABELS", "name": "Search Labels", "description": "Tool to search user labels by name with case-insensitive matching. Use when you need to find specific labels by name pattern." }, { "slug": "TODOIST_SEARCH_PROJECTS", "name": "Search Projects", "description": "Search active user projects by name with support for wildcards and pagination. Use when you need to find projects matching a specific name pattern." }, { "slug": "TODOIST_SEARCH_SECTIONS", "name": "Search Sections", "description": "Tool to search active sections by name, optionally filtered by project. Use when you need to find sections matching a specific name pattern across all projects or within a specific project. Supports pagination for large result sets." }, { "slug": "TODOIST_SYNC", "name": "Todoist Sync", "description": "Tool to sync data with Todoist server, supporting both read and write operations. This is the central endpoint used by Todoist apps for all data synchronization. Use this action to: - Read multiple resource types in a single request (projects, tasks, labels, etc.) - Perform batch write operations (create/update/delete up to 100 resources at once) - Implement efficient incremental sync using sync tokens - Execute complex multi-step operations in a single atomic request For read-only operations, pass sync_token and resource_types. For write operations, include commands array with the operations to execute. Commands support batching up to 100 operations per request." }, { "slug": "TODOIST_UNARCHIVE_PROJECT2", "name": "Unarchive Project (API v1)", "description": "Tool to unarchive a previously archived Todoist project using API v1. Use when you need to reactivate an archived project, making it visible again for the initiating user (personal projects) or all workspace users (workspace projects)." }, { "slug": "TODOIST_UPDATE_COMMENT2", "name": "Update Comment (v1)", "description": "Tool to update a comment by ID and return its content via v1 API. Use when you need to modify an existing comment's text using the v1 API endpoint." }, { "slug": "TODOIST_UPDATE_LABEL_V1_SECOND", "name": "Update Label (API v1)", "description": "Tool to update an existing label using API v1. Use when you need to modify a label's name, color, order, or favorite status." }, { "slug": "TODOIST_UPDATE_NOTIFICATION_SETTING", "name": "Update Notification Setting", "description": "Tool to update notification settings for the current user. Use when you need to enable or disable notifications for specific event types and channels." }, { "slug": "TODOIST_UPDATE_PROJECT", "name": "Update Project (Deprecated)", "description": "DEPRECATED: Use TODOIST_TODOIST_UPDATE_PROJECT2 instead. Tool to update a project's properties including name, color, favorite status, and view style. Use when you need to modify project settings after reviewing its current configuration." }, { "slug": "TODOIST_UPDATE_PROJECT2", "name": "Update Project (API v1)", "description": "Tool to update a project's properties using Todoist API v1. Use when you need to modify project settings like name, description, favorite status, color, or view style." }, { "slug": "TODOIST_UPDATE_SECTION", "name": "Update Section (Deprecated)", "description": "DEPRECATED: Use TODOIST_TODOIST_UPDATE_SECTION2 instead. Tool to update a specific section's name. Use when you need to rename a section after confirming its ID." }, { "slug": "TODOIST_UPDATE_SECTION2", "name": "Update Section (v1)", "description": "Tool to update an existing section by its ID using Todoist v1 API. Use when you need to rename a section." }, { "slug": "TODOIST_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task's properties. Cannot change a task's project; to move a task, use TODOIST_CREATE_TASK then TODOIST_DELETE_TASK. Use when you need to modify a task's details after confirming its ID and new values." }, { "slug": "TODOIST_UPDATE_WORKSPACE_LOGO", "name": "Update Workspace Logo", "description": "Tool to upload an image as the workspace logo or delete the existing logo. Use when you need to set or remove a workspace's branding image." }, { "slug": "TODOIST_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to Todoist. Use when you need to attach files to tasks or projects. The uploaded file can be later attached to comments or tasks using the returned file_url." } ], "triggers": [ { "slug": "TODOIST_NEW_TASK_CREATED", "name": "New Task Created", "description": "Trigger when a new task is added to Todoist." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "todoist_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "data:read_write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "zoho_desk", "name": "Zoho Desk", "logo": "https://logos.composio.dev/api/zoho_desk", "description": "Zoho Desk is a context-aware helpdesk platform enabling support teams to track tickets, automate workflows, and gain insights on customer interactions", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "ZOHO_DESK_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Zoho Desk with name, email, and other details. Use this action when you need to add a new contact to the system, such as when onboarding a new customer or registering a support requester. Returns the created contact with id and webUrl for downstream operations." }, { "slug": "ZOHO_DESK_CREATE_TICKET", "name": "Create Ticket", "description": "Tool to create a new Zoho Desk ticket with subject, description, department, and requester details. Use when you need to create a support ticket in Zoho Desk. Returns the created ticket with id and webUrl for downstream chaining." }, { "slug": "ZOHO_DESK_DOWNLOAD_TICKET_ATTACHMENT", "name": "Download Ticket Attachment", "description": "Download a file attachment from a Zoho Desk ticket by attachment ID. Use this action when you need to retrieve a specific file that was previously attached to a ticket. Requires both the ticket ID and the attachment ID to identify the file to download." }, { "slug": "ZOHO_DESK_GET_AGENT", "name": "Get Agent", "description": "Tool to fetch details of a Zoho Desk agent. Use when you have an agent ID and need its full data, optionally including related resources." }, { "slug": "ZOHO_DESK_GET_AGENTS_COUNT", "name": "Get Agents Count", "description": "Tool to get the total count of agents in Zoho Desk. Use when you need the number of agents optionally filtered by status, confirmation, or light agents." }, { "slug": "ZOHO_DESK_GET_CONTACT", "name": "Get Contact", "description": "Tool to fetch details of a Zoho Desk contact. Use when you have a contact ID and need its full data, optionally including accounts or owner details." }, { "slug": "ZOHO_DESK_GET_CONTACTS_BY_IDS", "name": "Get Contacts By IDs", "description": "Tool to fetch multiple contacts by their IDs using Zoho Desk's contactsByIds endpoint." }, { "slug": "ZOHO_DESK_GET_DEPARTMENT", "name": "Get Department", "description": "Tool to fetch details of a Zoho Desk department by ID." }, { "slug": "ZOHO_DESK_GET_DEPARTMENT_LOGO", "name": "Get Department Logo", "description": "Tool to get/download a department's logo from Zoho Desk." }, { "slug": "ZOHO_DESK_GET_DEPARTMENTS_COUNT", "name": "Get Departments Count", "description": "Tool to get the total count of departments in Zoho Desk. Use when you need the number of departments, optionally filtered by enabled status." }, { "slug": "ZOHO_DESK_GET_TICKET", "name": "Get Ticket", "description": "Get Ticket" }, { "slug": "ZOHO_DESK_GET_TICKET_LATEST_THREAD", "name": "Get Ticket Latest Thread", "description": "Tool to fetch the most recent thread of a ticket. Use when you need the latest conversation on a ticket." }, { "slug": "ZOHO_DESK_GET_TICKET_RESOLUTION", "name": "Get Ticket Resolution", "description": "Get Ticket Resolution" }, { "slug": "ZOHO_DESK_GET_TICKET_THREAD", "name": "Get Ticket Thread", "description": "Tool to fetch a specific thread within a Zoho Desk ticket. Use when you need detailed thread information by ticket and thread IDs." }, { "slug": "ZOHO_DESK_LIST_AGENTS", "name": "List Agents", "description": "Tool to list all agents in the Zoho Desk organization with optional filtering and pagination. Use when you need to retrieve multiple agents, optionally filtered by status or confirmation state." }, { "slug": "ZOHO_DESK_LIST_CONTACT_ACCOUNTS", "name": "List Contact Accounts", "description": "Tool to list accounts associated with a Zoho Desk contact. Use when you need to retrieve the accounts linked to a specific contact." }, { "slug": "ZOHO_DESK_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts with filters and pagination. Use when you need to fetch contacts from Zoho Desk with optional filtering, sorting, or field selection." }, { "slug": "ZOHO_DESK_LIST_DEPARTMENTS", "name": "List Departments", "description": "Tool to list all departments in the current Zoho Desk organization." }, { "slug": "ZOHO_DESK_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations the current user belongs to. Use when you need to retrieve organization metadata like portal URLs, names, and editions." }, { "slug": "ZOHO_DESK_LIST_ROLES", "name": "List Roles", "description": "List Roles" }, { "slug": "ZOHO_DESK_LIST_ROLES_BY_IDS", "name": "List Roles By IDs", "description": "List Roles By IDs" }, { "slug": "ZOHO_DESK_LIST_TEAMS_IN_DEPARTMENT", "name": "List Teams in Department", "description": "Tool to list teams in the specified Zoho Desk department." }, { "slug": "ZOHO_DESK_LIST_TICKET_CONVERSATIONS", "name": "List Ticket Conversations", "description": "List Ticket Conversations" }, { "slug": "ZOHO_DESK_LIST_TICKETS", "name": "List Tickets", "description": "List Tickets" }, { "slug": "ZOHO_DESK_LIST_VIEWS", "name": "List Views", "description": "List all ticket views in the Zoho Desk organization with pagination support. Views are saved filters that help organize and display tickets based on specific criteria. Use this action when you need to retrieve available views for filtering tickets, such as before calling the list tickets endpoint with a specific viewId." }, { "slug": "ZOHO_DESK_SEARCH", "name": "Search", "description": "Search across Zoho Desk modules including tickets, accounts, contacts, and tasks using keywords or phrases. Use this action when you need to find records across multiple modules or within a specific module based on search criteria. Returns matching results with pagination support." }, { "slug": "ZOHO_DESK_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update an existing Zoho Desk account's information such as name, email, phone, website, or description. Use this action when you need to modify account details after the account has been created. Only the fields you provide will be updated; other fields remain unchanged." }, { "slug": "ZOHO_DESK_UPDATE_MANY_TASKS", "name": "Update Many Tasks", "description": "Update multiple tasks in a single call using Zoho Desk API. Endpoint: POST /api/v1/tasks/updateMany" }, { "slug": "ZOHO_DESK_UPDATE_TICKET", "name": "Update Ticket", "description": "Updates an existing Zoho Desk ticket by modifying one or more fields such as status, priority, assignee, description, or other ticket properties. Use this action when you need to modify an existing support ticket in Zoho Desk, such as changing its status, reassigning it to a different agent, updating priority, or adding information. Returns the updated ticket object with all current field values including the modified fields." }, { "slug": "ZOHO_DESK_UPLOAD_DEPARTMENT_LOGO", "name": "Upload Department Logo", "description": "Tool to upload/update a department logo in Zoho Desk." }, { "slug": "ZOHO_DESK_UPLOAD_TICKET_ATTACHMENT", "name": "Upload Ticket Attachment", "description": "Uploads a file attachment to a specific Zoho Desk ticket. The uploaded file becomes accessible as an attachment within the ticket for support agents and customers to reference. Use this action when you need to attach documentation, screenshots, logs, or any supporting files to an existing ticket. Maximum file size is 20 MB per attachment." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Desk.contacts.ALL,Desk.tickets.ALL,Desk.tasks.ALL,Desk.settings.ALL,Desk.events.ALL" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Domain Extension", "type": "string", "description": "The Zoho domain extension (com, eu, in, au, jp, ca, cn, sa).", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "battlenet", "name": "Battlenet", "logo": "https://logos.composio.dev/api/battlenet", "description": "Battle.net is a gaming platform by Blizzard Entertainment that hosts titles like World of Warcraft and Overwatch, providing account management, social features, and online matchmaking", "category": "gaming", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "battlenet_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "ashby", "name": "Ashby", "logo": "https://logos.composio.dev/api/ashby", "description": "Ashby delivers an applicant tracking system for modern teams, offering features like job postings, candidate management, and data-driven hiring insights to streamline the recruitment process", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY" ], "toolCount": 125, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ASHBY_ADD_CANDIDATE_PROJECT", "name": "Add Candidate to Project", "description": "Add a candidate to a project in Ashby. Projects are sourcing initiatives or recruiting campaigns used to organize and track candidate pipelines. Use this to associate candidates with specific sourcing efforts. Common use cases: - Adding sourced candidates to recruiting campaigns - Organizing candidates by sourcing channel or initiative - Tracking candidates in specific hiring projects Requires candidatesWrite permission. Returns the updated candidate object on success, or error details if the candidate or project is not found." }, { "slug": "ASHBY_ADD_CANDIDATE_TAG", "name": "Add Candidate Tag", "description": "Add a tag to a candidate in Ashby. Use this to categorize and organize candidates with existing tags from the system. This action allows you to apply labels/tags to candidates for filtering, searching, and organizational purposes. Tags must already exist in the system - use LIST_CANDIDATE_TAGS to view available tags or CREATE_CANDIDATE_TAG to create new ones. The response includes the full updated candidate object when successful, showing the newly added tag in the candidate's tags array. If a candidate already has the tag, the operation will still succeed idempotently." }, { "slug": "ASHBY_ADD_HIRING_TEAM_MEMBER", "name": "Add Hiring Team Member", "description": "Add an Ashby user to a hiring team at the application, job, or opening level. Use this when you need to assign a team member to participate in the hiring process with a specific role. Requires the organizationWrite permission." }, { "slug": "ASHBY_ADD_INTERVIEWER_POOL_USER", "name": "Add User to Interviewer Pool", "description": "Add a user to an interviewer pool. Use this to assign interviewers to interview pools for scheduling and coordination. Requires the hiringProcessMetadataWrite permission." }, { "slug": "ASHBY_ADD_OPENING_JOB", "name": "Add Opening Job", "description": "Adds a job to an opening (job requisition) in Ashby ATS. An opening represents a position to be filled, while a job defines the role details. This action associates an existing job with an existing opening, allowing multiple jobs to be linked to a single opening. Use this when you need to add job definitions to an opening or when creating multi-role requisitions. Requires the jobsWrite permission. On success, returns the updated opening with the job added to its jobIds array. On failure, returns error details with specific error codes." }, { "slug": "ASHBY_ADD_OPENING_LOCATION", "name": "Add Opening Location", "description": "Tool to add a location to an opening (job requisition). Use when you need to associate a location with an existing opening. Requires the jobsWrite permission." }, { "slug": "ASHBY_ANONYMIZE_CANDIDATE", "name": "Anonymize Candidate", "description": "Anonymize a candidate by removing personally identifiable information. Use this when you need to permanently anonymize a candidate's data. This action cannot be reversed and requires all of the candidate's applications to be in the archived or hired state." }, { "slug": "ASHBY_APPROVE_OFFER", "name": "Approve Offer", "description": "Approve an offer or a specific approval step within an offer's approval process. This action supports two modes: - Complete offer approval: Provide only offerId to approve the entire offer - Step-specific approval: Provide offerId, approvalStepId, and userId to approve a specific step When approving a specific step, both approvalStepId and userId are required together. Requires the 'offersWrite' permission." }, { "slug": "ASHBY_ARCHIVE_DEPARTMENT", "name": "Archive Department", "description": "Archive a department by its unique identifier. Archiving a department marks it as inactive while preserving all its data and historical records. Archived departments are excluded from active department lists by default but can be restored later using the restore department action. This action is idempotent - archiving an already archived department will succeed and return the same result. Required permission: organizationWrite" }, { "slug": "ASHBY_ARCHIVE_INTERVIEWER_POOL", "name": "Archive Interviewer Pool", "description": "Archive an interviewer pool in Ashby. This marks the pool as archived, making it unavailable for new interview assignments while preserving historical data. Use this when an interviewer pool is no longer needed (e.g., for deprecated roles or outdated interview formats). The operation is idempotent - archiving an already archived pool will succeed without errors. Requires the hiringProcessMetadataWrite permission. To restore an archived pool, use the ASHBY_RESTORE_INTERVIEWER_POOL action." }, { "slug": "ASHBY_ARCHIVE_LOCATION", "name": "Archive Location", "description": "Archives a location or location hierarchy in Ashby. When archived, the location is marked as inactive (isArchived=true) and typically becomes unavailable for new job postings or assignments. The operation is idempotent - archiving an already archived location succeeds without error. Requires the organizationWrite permission. Common use cases: - Decommissioning office locations that are no longer in use - Removing obsolete location entries from active use - Managing location lifecycle when restructuring office locations Note: Use restore_location to unarchive a location if needed." }, { "slug": "ASHBY_CHANGE_APPLICATION_SOURCE", "name": "Change Application Source", "description": "Change the source attribution of an application. Use this to update which source and user should be credited for bringing in the candidate." }, { "slug": "ASHBY_CHANGE_APPLICATION_STAGE", "name": "Change Application Stage", "description": "Move an application to a different interview stage in the hiring pipeline. Use this to: - Advance candidates to the next interview stage (e.g., from \"Application Review\" to \"First Round\") - Move candidates to any stage within their job's interview plan (forward or backward) - Archive applications by moving to an Archived stage (requires archiveReasonId) - Move to Offer or Hired stages when progressing candidates Important: The interview stage must belong to the same interview plan as the application's job. Use LIST_INTERVIEW_STAGES with the application's job interview plan ID to get valid stage options." }, { "slug": "ASHBY_CREATE_APPLICATION", "name": "Create Application", "description": "Create a new job application by associating a candidate with a job opening in Ashby ATS. Use this action to: - Add a candidate to a job's hiring pipeline and interview process - Track the source of the application (referral, job board, etc.) - Credit a user (recruiter/referrer) for bringing in the candidate - Place the candidate directly into a specific interview stage (optional) The created application will automatically be assigned to the job's hiring team and start tracking the candidate's progress through the interview stages. Required: candidateId and jobId must reference existing entities in Ashby." }, { "slug": "ASHBY_CREATE_CANDIDATE", "name": "Create Candidate", "description": "Create a new candidate in the system. Use this to add candidates with their contact information and social profiles before applying them to jobs." }, { "slug": "ASHBY_CREATE_CANDIDATE_NOTE", "name": "Create Candidate Note", "description": "Create a note on a candidate profile. Use this to add comments, observations, or feedback about a candidate during the recruitment process." }, { "slug": "ASHBY_CREATE_CANDIDATE_TAG", "name": "Create Candidate Tag", "description": "Create a new candidate tag in Ashby for categorizing and organizing candidates. Tags are labels that help you filter, search, and group candidates for better organization and workflow management. Use this action to create custom tags based on skills, experience levels, departments, or any other criteria relevant to your hiring process. Returns the newly created tag with its unique ID, title, and archived status. Tags are created in an active (non-archived) state by default." }, { "slug": "ASHBY_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Create a new custom field in Ashby. Custom fields allow you to track additional structured data on Ashby objects like candidates, applications, and jobs. This action creates the field definition that can then be populated with values using the set custom field value actions. Supported field types: - String: Free text input - Number: Numeric values - Boolean: True/false values - Date: Date values (optionally date-only without time) - ValueSelect: Single selection from predefined options - MultiValueSelect: Multiple selections from predefined options - Employee: Reference to an Ashby employee (limited object type support) Note: ValueSelect and MultiValueSelect field types require the selectableValues parameter. Requires the hiringProcessMetadataWrite permission." }, { "slug": "ASHBY_CREATE_DEPARTMENT", "name": "Create Department", "description": "Create a new department. Use this to add organizational departments or teams for structuring jobs and hierarchy." }, { "slug": "ASHBY_CREATE_INTERVIEWER_POOL", "name": "Create Interviewer Pool", "description": "Create a new interviewer pool. Use this to organize interviewers into groups by expertise or interview type. Requires the hiringProcessMetadataWrite permission." }, { "slug": "ASHBY_CREATE_JOB", "name": "Create Job", "description": "Create a new job opening in Ashby ATS. Use this action to: - Add a new role to your organization with a title, department, location, and brand - Set up the job structure before publishing or opening it to candidates - Optionally assign a default interview plan to define the hiring process Important notes: - Newly created jobs start in 'Draft' status and cannot accept applications yet - To open the job for applications, you must set a defaultInterviewPlanId either during creation or update it later - Use LIST_DEPARTMENTS, LIST_LOCATIONS, LIST_BRAND, and LIST_INTERVIEW_PLANS actions to get valid IDs - The job creator is automatically set as the author" }, { "slug": "ASHBY_CREATE_LOCATION", "name": "Create Location", "description": "Create a new location or location hierarchy. Use this to add office locations, remote work settings, or nested location structures for organizational management." }, { "slug": "ASHBY_CREATE_OFFER", "name": "Create Offer", "description": "Create a new offer for a candidate in Ashby ATS. Use this to generate formal job offers with all required field values after starting an offer process and obtaining the form definition. Prerequisites: Must first call offerProcess.start to get offerProcessId, then offer.start to get offerFormId and field definitions. Date fields must use YYYY-MM-DD format (not ISO timestamp)." }, { "slug": "ASHBY_CREATE_OPENING", "name": "Create Opening", "description": "Create a new opening (job requisition) in Ashby ATS. An opening represents a job requisition - a request to hire for a specific position. All parameters are optional, but typically you'll want to provide at least a title, job IDs, and location IDs for a meaningful opening. Use this action to: - Create a new job opening with specific requirements - Associate openings with existing jobs, locations, and teams - Set hiring targets, employment type, and opening state - Track backfill positions vs new roles Required permission: openingsWrite Note: To get valid IDs for teamId, locationIds, and jobIds, use the corresponding List Departments, List Locations, and List Jobs actions." }, { "slug": "ASHBY_CREATE_REFERRAL", "name": "Create Referral", "description": "Create a referral in Ashby ATS by submitting a referral form with candidate information. Use this action to formally submit employee referrals for job openings, which creates both a candidate record (if new) and an application linked to the specified job." }, { "slug": "ASHBY_CREATE_SURVEY_REQUEST", "name": "Create Survey Request", "description": "Generate a survey request and receive a survey URL to send to a candidate. Use this when you need to collect feedback or information from candidates via a survey. Requires candidatesWrite permission. Note that calling this endpoint does not automatically email the survey to the candidate." }, { "slug": "ASHBY_CREATE_SURVEY_SUBMISSION", "name": "Create Survey Submission", "description": "Create a new survey submission for a candidate's application. Use this to submit candidate survey responses programmatically, such as candidate experience ratings or feedback forms. Requires the candidatesWrite permission." }, { "slug": "ASHBY_GET_API_KEY_INFO", "name": "Get API Key Info", "description": "Retrieve information about the current API key, including associated organization, user details, and permissions. Use this to verify API key validity and check what access level the key has. Useful as a prerequisite check before write operations (e.g., ASHBY_UPDATE_CANDIDATE) or list operations (e.g., ASHBY_LIST_APPLICATIONS) to confirm the key has required scopes." }, { "slug": "ASHBY_GET_APPLICATION_INFO", "name": "Get Application Info", "description": "Retrieve detailed information about a specific application by its ID. Returns complete details including candidate info, interview stages, and hiring team nested under data.results. To find a recruiting coordinator, match hiringTeam entries where role == \"Recruiting Coordinator\" (exact string). Optional fields such as primaryEmailAddress may be null; handle accordingly." }, { "slug": "ASHBY_GET_CANDIDATE_INFO", "name": "Get Candidate Info", "description": "Retrieve detailed information about a specific candidate by their ID. This action returns comprehensive candidate data including: - Basic information (name, position, company, school) - Contact details (email addresses, phone numbers) - Social profiles (LinkedIn, etc.) - Associated applications and tags - Custom field values - Source and credited user information - Location and timezone - Profile URL Use this when you need complete details about a specific candidate. To find candidate IDs, use the list_candidates or search_candidates actions first." }, { "slug": "ASHBY_GET_CUSTOM_FIELD_INFO", "name": "Get Custom Field Info", "description": "Retrieve detailed information about a specific custom field by its ID. Use this to get custom field details including title, object type, field type, and selectable values. Requires the hiringProcessMetadataRead permission." }, { "slug": "ASHBY_GET_DEPARTMENT_INFO", "name": "Get Department Info", "description": "Retrieve detailed information about a specific department by its ID. Returns comprehensive department details including: - Department name (internal and external) - Parent department relationship (parentId for hierarchical structure) - Archive status (isArchived) - Creation and last update timestamps Use this action when you need information about a specific department (e.g., to verify a department exists, check its archive status, or understand organizational hierarchy). For listing all departments or finding department IDs, use the List Departments action instead. Requires 'organizationRead' permission." }, { "slug": "ASHBY_GET_FEEDBACK_FORM_DEFINITION", "name": "Get Feedback Form Definition", "description": "Retrieve detailed information about a specific feedback form definition by its ID. Use this action to: - Get the complete structure of a feedback form including all sections and fields - View field types (ValueSelect, MultiValueSelect, Boolean, RichText) and their configurations - Check if a form is the default form or a custom scorecard - See which interview the form is linked to (if any) - Access selectable values and field metadata for form rendering To find available feedback form IDs, use the List Feedback Form Definitions action first. Requires the hiringProcessMetadataRead permission." }, { "slug": "ASHBY_GET_FILE_INFO", "name": "Get File Info", "description": "Retrieve the URL of a file associated with a candidate. Use this to get a pre-signed S3 URL for accessing candidate files like resumes. Requires the candidatesRead permission." }, { "slug": "ASHBY_GET_INTERVIEWER_POOL_INFO", "name": "Get Interviewer Pool Info", "description": "Retrieve detailed information about a specific interviewer pool by its ID. Returns comprehensive pool information including: - Basic details (ID, title, archived status) - Qualified members who can conduct interviews - Trainees currently in training - Training path configuration with stages and requirements Use this to view interviewer pool composition, training programs, and member status for scheduling interviews or managing interviewer assignments." }, { "slug": "ASHBY_GET_INTERVIEWER_USER_SETTINGS", "name": "Get Interviewer User Settings", "description": "Get interviewer settings for a specific user by their ID. Use this to retrieve daily and weekly interview limits configured for the user. Requires the organizationRead permission." }, { "slug": "ASHBY_GET_INTERVIEW_INFO", "name": "Get Interview Info", "description": "Retrieve detailed information about a specific interview type by its ID. Use this to get interview details including title, instructions, and feedback form configuration." }, { "slug": "ASHBY_GET_INTERVIEW_STAGE_INFO", "name": "Get Interview Stage Info", "description": "Tool to fetch interview stage details by ID. Use when you need specific information about an interview stage including its title, type, order, and parent interview plan. Requires the interviewsRead permission." }, { "slug": "ASHBY_GET_JOB_INFO", "name": "Get Job Info", "description": "Retrieve detailed information about a specific job by its ID. Use this to get complete details about a job including title, status, hiring team, interview plans, and more. Job offer payloads omit full job details; combine with ASHBY_LIST_APPLICATIONS and ASHBY_GET_APPLICATION_INFO for complete reporting data." }, { "slug": "ASHBY_GET_JOB_INTERVIEW_PLAN_INFO", "name": "Get Job Interview Plan Info", "description": "Retrieve the interview plan information for a specific job. Use this to get details about the interview stages and process configured for a job." }, { "slug": "ASHBY_GET_JOB_POSTING_INFO", "name": "Get Job Posting Info", "description": "Retrieve detailed information about a specific job posting by its ID. Use this to get complete job posting details including full description, application form fields, compensation, and publish settings." }, { "slug": "ASHBY_GET_LOCATION_INFO", "name": "Get Location Info", "description": "Retrieve detailed information about a specific location by its ID. Use this to get complete location details including address, remote status, and workplace type." }, { "slug": "ASHBY_GET_OFFER_INFO", "name": "Get Offer Info", "description": "Retrieve detailed information about a specific offer by its ID. This action returns comprehensive offer data including application ID, status, version, timestamps, candidate ID, job ID, start date, and custom fields. Use this when you need complete details about a specific offer. To find offer IDs, use the list_offers action first. Requires the 'offersRead' permission." }, { "slug": "ASHBY_GET_OPENING_INFO", "name": "Get Opening Info", "description": "Retrieve detailed information about a specific opening (job requisition) by its ID. An opening represents a headcount position that needs to be filled. Each opening belongs to a job and tracks hiring progress including state (Open/Closed), hiring team members, employment type, and target dates. Use this action to: - Get complete details about a specific opening including its current state - View the hiring team assigned to the opening - Check employment type, target hire date, and target start date - Access custom fields associated with the opening Returns opening details on success, or error information if the opening ID is invalid." }, { "slug": "ASHBY_GET_REFERRAL_FORM", "name": "Get Referral Form", "description": "Fetches the default referral form or creates a default referral form if none exists. Requires the hiringProcessMetadataRead permission." }, { "slug": "ASHBY_GET_SURVEY_FORM_DEFINITION", "name": "Get Survey Form Definition", "description": "Retrieve detailed information about a specific survey form definition by its ID. This action returns comprehensive details about a survey form including: - Survey title and type (e.g., Diversity, EEOC, QualityOfHire) - Form definition with sections and fields - Field types (ValueSelect, MultiValueSelect, RichText, LinearRating, etc.) - Selectable values for choice fields - Required field indicators - Archive status Use the LIST_SURVEY_FORM_DEFINITIONS action first to discover available survey form IDs. Common survey types include candidate experience surveys, hiring manager assessments, quality of hire evaluations, and EEOC compliance forms. Requires the hiringProcessMetadataRead permission." }, { "slug": "ASHBY_GET_USER_INFO", "name": "Get User Info", "description": "Retrieve detailed information about a specific user by their ID. Use this to get user details including name, email, role, and permissions." }, { "slug": "ASHBY_LIST_APPLICATION_CRITERIA_EVALUATIONS", "name": "List Application Criteria Evaluations", "description": "Retrieve AI-generated criteria evaluations for an application. Use this to get the AI assessment of how well a candidate meets specific job requirements, including evaluation outcomes and reasoning." }, { "slug": "ASHBY_LIST_APPLICATION_FEEDBACK", "name": "List Application Feedback", "description": "Retrieve all feedback submissions for an application. Use this to view interviewer feedback, evaluations, and notes collected throughout the hiring process." }, { "slug": "ASHBY_LIST_APPLICATION_HIRING_TEAM_ROLE", "name": "List Application Hiring Team Roles", "description": "Retrieve all available hiring team roles for applications in the organization. These roles can be assigned to hiring team members at the application level (e.g., Recruiter, Hiring Manager, Recruiting Coordinator, Sourcer). Use this endpoint to get the complete list of role IDs and titles that are available for assignment. Requires candidatesRead permission. Note: This differs from the general hiring team roles list - this specifically returns roles used at the application level in the hiring workflow." }, { "slug": "ASHBY_LIST_APPLICATION_HISTORY", "name": "List Application History", "description": "Retrieve the complete history of stage transitions for an application. Use this to get detailed information about when and how a candidate moved through different interview stages." }, { "slug": "ASHBY_LIST_APPLICATIONS", "name": "List Applications", "description": "Retrieve a list of applications with optional pagination and sync-token filtering for incremental updates. No server-side recruiter filter exists; attribute applications to team members client-side." }, { "slug": "ASHBY_LIST_APPROVAL", "name": "List Approvals", "description": "Retrieve a list of approvals (offer approvals, job approvals, etc.). Use this to track approval workflows and pending approvals." }, { "slug": "ASHBY_LIST_ARCHIVE_REASONS", "name": "List Archive Reasons", "description": "Retrieve a list of all archive reasons. Use this to see available reasons for archiving candidates or applications, such as rejection categories." }, { "slug": "ASHBY_LIST_BRAND", "name": "List Brands", "description": "Retrieve a list of all brands for the organization. Use this to get available brands for job postings and employer branding. Requires organizationRead permission." }, { "slug": "ASHBY_LIST_CANDIDATE_CLIENT_INFO", "name": "List Candidate Client Info", "description": "Retrieve all client info records for a specific candidate with pagination support. Client info records contain additional client-specific information associated with candidates in your Ashby account. This endpoint supports pagination and incremental synchronization for efficient data retrieval. Use the cursor and limit parameters to paginate through large result sets. For incremental syncing, use the syncToken to fetch only changes since your last sync. Requires candidatesRead permission." }, { "slug": "ASHBY_LIST_CANDIDATE_NOTES", "name": "List Candidate Notes", "description": "Retrieve all notes for a specific candidate in Ashby. Use this action to view comments, observations, and internal notes added by recruiters and hiring team members during the hiring process. Common use cases: - Review feedback and observations from interviewers - Check historical communication and decisions about a candidate - Audit the hiring process for a specific candidate Prerequisites: - You need a valid candidateId. Get this from list_candidates or search_candidates. - Requires 'candidatesRead' permission in Ashby. Returns an empty list if the candidate has no notes." }, { "slug": "ASHBY_LIST_CANDIDATE_PROJECTS", "name": "List Candidate Projects", "description": "Retrieve all projects associated with a candidate. Use this to see which sourcing projects or recruiting initiatives a candidate is part of." }, { "slug": "ASHBY_LIST_CANDIDATES", "name": "List Candidates", "description": "Retrieve a list of candidates. Use this to fetch all candidates with optional pagination and filtering by sync token for incremental updates." }, { "slug": "ASHBY_LIST_CANDIDATE_TAGS", "name": "List Candidate Tags", "description": "Retrieve a list of all candidate tags in your Ashby account. Tags are labels used to categorize and organize candidates for filtering and search purposes. Use this action to: - Get all available tags for tagging candidates - Implement incremental sync using the syncToken parameter - Paginate through large sets of tags using cursor Returns tag id, title, and archived status for each tag." }, { "slug": "ASHBY_LIST_CLOSE_REASONS", "name": "List Close Reasons", "description": "Lists all close reasons for jobs or openings. Close reasons categorize why a job or opening was closed (e.g., rejected by candidate, rejected by organization, or other reasons). Requires hiringProcessMetadataRead permission." }, { "slug": "ASHBY_LIST_COMMUNICATION_TEMPLATES", "name": "List Communication Templates", "description": "Retrieve a list of all communication templates. Use this to see available email and message templates for candidate outreach." }, { "slug": "ASHBY_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Retrieve a list of all custom field definitions configured in Ashby. Use this action to discover what custom fields are available for candidates, applications, jobs, offers, and openings. This is useful when you need to: - Know what custom fields exist before setting values on resources - Understand the data types and available options for each field - Identify the IDs of custom fields needed for other API operations Returns fields with their types (String, Number, Boolean, Date, ValueSelect, MultiValueSelect, Currency, CompensationRange) and selectable values for dropdown fields." }, { "slug": "ASHBY_LIST_DEPARTMENTS", "name": "List Departments", "description": "Retrieve a list of all departments in the organization. Use this action to: - Get all departments for organizing jobs and candidates by team structure - Find department IDs needed for creating or filtering jobs - Understand the organizational hierarchy via parentId relationships - Perform incremental syncs to detect newly created or updated departments Supports pagination for large organizations. When moreDataAvailable is true, use the nextCursor value in subsequent requests to fetch more results." }, { "slug": "ASHBY_LIST_FEEDBACK_FORM_DEFINITIONS", "name": "List Feedback Form Definitions", "description": "Retrieve all feedback form definitions from your Ashby organization. Use this action to: - Discover available interview feedback templates - Get form IDs for use with other feedback-related actions - Understand the structure of feedback forms including fields and sections - Identify the default feedback form vs custom scorecards Returns a list of feedback forms with their complete structure, including field types (ValueSelect, MultiValueSelect, Boolean, RichText) and selectable values." }, { "slug": "ASHBY_LIST_HIRING_TEAM_ROLE", "name": "List Hiring Team Roles", "description": "Retrieve a list of possible hiring team roles in the organization. Use this to get available roles that can be assigned to members of a hiring team (e.g., Hiring Manager, Recruiter, Recruiting Coordinator, Sourcer). Requires the organizationRead permission." }, { "slug": "ASHBY_LIST_INTERVIEWER_POOLS", "name": "List Interviewer Pools", "description": "Retrieve a list of all interviewer pools. Interviewer pools are groups of interviewers organized by expertise, role, or interview type (e.g., \"Backend Engineer\", \"Bar Raiser\"). Use this to see available interviewer pools for scheduling interviews or managing interview assignments. Supports pagination via cursor and incremental sync via syncToken." }, { "slug": "ASHBY_LIST_INTERVIEW_EVENTS", "name": "List Interview Events", "description": "Retrieves all interview events for a specific interview schedule. Each interview event represents a scheduled time slot with assigned interviewers for conducting interviews. Use this action to: - Get details about scheduled interviews including start/end times, locations, and meeting links - View which interviewers are assigned to each interview event - Check feedback submission status for interviews - Access feedback submission links for interviewers Key information returned: - Event timing (start/end times in ISO 8601 format) - Interviewer details (names, emails, roles) - Meeting logistics (physical location or virtual meeting link) - Feedback status and submission links Supports pagination via cursor and incremental synchronization via syncToken. Requires interviewsRead permission." }, { "slug": "ASHBY_LIST_INTERVIEW_PLANS", "name": "List Interview Plans", "description": "Retrieve a list of interview plans. Use this to get the structured interview processes and stages configured for different roles." }, { "slug": "ASHBY_LIST_INTERVIEWS", "name": "List Interview Types", "description": "List all interview types defined in Ashby. Returns interview templates/definitions (e.g., 'Technical Phone Screen', 'Debrief', 'Intro Call with CEO') rather than scheduled interview instances. Use this to discover available interview types for building interview plans or to sync interview type data. Supports pagination via cursor and incremental sync via syncToken." }, { "slug": "ASHBY_LIST_INTERVIEW_SCHEDULES", "name": "List Interview Schedules", "description": "Retrieve a list of interview schedules. Use this to fetch all scheduled interviews with candidates, including timing, interviewers, and interview details." }, { "slug": "ASHBY_LIST_INTERVIEW_STAGE_GROUPS", "name": "List Interview Stage Groups", "description": "Retrieve a list of interview stage groups. Use this to see how interview stages are organized into logical groups within interview plans." }, { "slug": "ASHBY_LIST_INTERVIEW_STAGES", "name": "List Interview Stages", "description": "Retrieve all interview stages for an interview plan in order. Use this to get the structured sequence of stages a candidate progresses through during the interview process for a specific role. Requires interviewsRead permission." }, { "slug": "ASHBY_LIST_JOB_BOARDS", "name": "List Job Boards", "description": "Retrieve a list of job boards. Use this to see where job postings can be published (e.g., LinkedIn, Indeed, company career page)." }, { "slug": "ASHBY_LIST_JOB_POSTINGS", "name": "List Job Postings", "description": "Retrieve a list of job postings. Use this to fetch all public job postings with optional pagination and filtering. May return zero results even when open jobs exist; if so, use ASHBY_LIST_JOBS as a fallback." }, { "slug": "ASHBY_LIST_JOBS", "name": "List Jobs", "description": "Retrieve a list of all jobs from Ashby ATS (Applicant Tracking System). Use this action to: - Fetch all open, closed, or draft jobs in your organization - Get job details including title, status, employment type, department, and hiring team - Paginate through large result sets using cursor-based pagination - Perform incremental syncs using syncToken to only fetch changed jobs Each job includes comprehensive information such as hiring team members, interview plan IDs, job posting IDs, custom fields, and timestamps. When ASHBY_LIST_JOB_POSTINGS returns zero results, use this action as the authoritative source for open job data. Job payloads exclude application details; follow up with ASHBY_LIST_APPLICATIONS or ASHBY_GET_APPLICATION_INFO for complete data." }, { "slug": "ASHBY_LIST_JOB_TEMPLATES", "name": "List Job Templates", "description": "Retrieve a list of all job templates from Ashby ATS. Use this action to: - Discover available job templates for creating standardized job postings - View both active and inactive templates in your organization - Get template details including title, department, location, and employment type - Paginate through results using cursor-based pagination - Perform incremental syncs using syncToken to only fetch changed templates Job templates provide reusable configurations that help maintain consistency when creating new jobs in your organization." }, { "slug": "ASHBY_LIST_LOCATIONS", "name": "List Locations", "description": "Retrieve a list of all locations. Use this to get available office locations and remote work settings for jobs." }, { "slug": "ASHBY_LIST_OFFERS", "name": "List Offers", "description": "Retrieve a list of job offers with their latest versions. This action fetches all offers made to candidates in your Ashby account. Use pagination (cursor/perPage) to handle large result sets efficiently. Use syncToken for incremental updates to fetch only changed offers since last sync. Use createdAfter to filter offers by creation time. Requires the 'offersRead' permission." }, { "slug": "ASHBY_LIST_OPENINGS", "name": "List Openings", "description": "Retrieve a list of openings (job requisitions). Use this to fetch all openings with optional pagination and filtering. Each opening may represent multiple hires; inspect headcount fields rather than assuming one opening equals one hire." }, { "slug": "ASHBY_LIST_PROJECTS", "name": "List Projects", "description": "Retrieve a list of all projects. Use this to see candidate sourcing projects and recruiting initiatives." }, { "slug": "ASHBY_LIST_SOURCES", "name": "List Sources", "description": "Retrieve a list of all candidate sources. Use this to get available sources for categorizing how candidates were sourced (e.g., LinkedIn, referrals, job boards)." }, { "slug": "ASHBY_LIST_SOURCE_TRACKING_LINKS", "name": "List Source Tracking Links", "description": "Retrieve all source tracking links configured in Ashby. Source tracking links are UTM-tagged URLs used to track where candidates are coming from (e.g., LinkedIn, job boards, referral campaigns). Use this action to: - View all active and inactive tracking links - Get tracking codes for analytics and reporting - Find the sourceId associated with each tracking link This is a read-only operation that requires no parameters." }, { "slug": "ASHBY_LIST_SURVEY_FORM_DEFINITIONS", "name": "List Survey Form Definitions", "description": "Retrieve a list of all survey form definitions from Ashby. Use this action to discover available candidate survey templates including: - Candidate Experience Surveys (NPS ratings for candidate feedback) - Hiring Manager Experience Surveys (feedback on recruiting process) - Quality of Hire Assessments (post-hire performance ratings) - EEOC Surveys (equal employment opportunity information collection) Each survey form contains sections with fields defining the questions and response types. This is a read-only operation that does not require any parameters." }, { "slug": "ASHBY_LIST_SURVEY_SUBMISSIONS", "name": "List Survey Submissions", "description": "Lists all survey submissions of a given survey type from Ashby. Survey submissions contain candidate responses to surveys sent during the hiring process. Use this action to: - Retrieve candidate experience survey responses - Access submitted survey data including answers and metadata - Paginate through large sets of submissions using cursor - Sync only new/updated submissions using syncToken - Filter submissions by creation date using createdAfter The most common survey type is 'CandidateExperience'. This action returns empty results if no submissions exist for the specified type. Requires candidatesRead permission." }, { "slug": "ASHBY_LIST_USERS", "name": "List Users", "description": "Retrieve a list of all users in the organization. Use this to get information about team members, their roles, and permissions." }, { "slug": "ASHBY_MOVE_DEPARTMENT", "name": "Move Department", "description": "Tool to move a department to another parent in the organizational hierarchy. Use when reorganizing department structure or changing parent-child relationships. Requires the organizationWrite permission." }, { "slug": "ASHBY_MOVE_LOCATION", "name": "Move Location", "description": "Tool to move a location to a different parent in the location hierarchy. Use when reorganizing location structure or changing parent-child relationships. Requires the organizationWrite permission." }, { "slug": "ASHBY_REMOVE_HIRING_TEAM_MEMBER", "name": "Remove Hiring Team Member", "description": "Remove an Ashby user from a hiring team at the application, job, or opening level. Use this when you need to unassign a team member from participating in the hiring process. Requires the jobsWrite permission." }, { "slug": "ASHBY_REMOVE_INTERVIEWER_POOL_USER", "name": "Remove User from Interviewer Pool", "description": "Remove a user from an interviewer pool. Use this to unassign interviewers from specific interview pools when they should no longer be part of that pool's roster. This removes the user from either the qualified members list or trainees list, depending on their current status in the pool. Requires the hiringProcessMetadataWrite permission." }, { "slug": "ASHBY_REMOVE_OPENING_JOB", "name": "Remove Opening Job", "description": "Remove a job from an opening (job requisition) in Ashby ATS. Use this action to disassociate a job from a specific opening. This is useful when: - A job was added to the wrong opening - You need to reorganize job-opening associations - An opening should no longer be associated with a particular job The action removes the job from the opening's jobIds list and returns the updated opening object. Both the opening and job must exist and be valid. Requires jobsWrite permission." }, { "slug": "ASHBY_REMOVE_OPENING_LOCATION", "name": "Remove Opening Location", "description": "Tool to remove a location from an opening (job requisition). Use when you need to disassociate a location from an existing opening. Requires the jobsWrite permission." }, { "slug": "ASHBY_RESTORE_DEPARTMENT", "name": "Restore Department", "description": "Restore an archived department by its unique identifier. Restoring a department marks it as active again, making it available in active department lists and allowing it to be used for new jobs and organizational structures. All historical data and relationships are preserved. This action is idempotent - restoring an already active department will succeed and return the same result. Use cases: - Reactivate a previously archived department that is needed again - Undo an accidental archive operation - Restore departments as part of organizational restructuring Required permission: organizationWrite" }, { "slug": "ASHBY_RESTORE_INTERVIEWER_POOL", "name": "Restore Interviewer Pool", "description": "Restore an archived interviewer pool in Ashby. This unarchives the pool, making it available again for new interview assignments. Use this when you need to reactivate an interviewer pool that was previously archived (e.g., reviving a pool for a role that's hiring again or correcting an accidental archive). The operation is idempotent - restoring an already active pool will succeed without errors. Requires the hiringProcessMetadataWrite permission. To archive a pool, use the ASHBY_ARCHIVE_INTERVIEWER_POOL action." }, { "slug": "ASHBY_RESTORE_LOCATION", "name": "Restore Location", "description": "Restores an archived location or location hierarchy in Ashby. When restored, the location is marked as active (isArchived=false) and becomes available again for job postings, assignments, and other location-based operations. The operation is idempotent - restoring an already active location succeeds without error. Requires the organizationWrite permission. Common use cases: - Reactivating previously closed office locations - Undoing accidental location archives - Bringing back seasonal or temporary office locations - Restoring location availability during organizational restructuring Note: Use archive_location to archive a location if needed." }, { "slug": "ASHBY_SEARCH_CANDIDATES", "name": "Search Candidates", "description": "Search for candidates by email or name. Use this for quick lookups to find specific candidates without pagination. Supports exact email match or partial name match." }, { "slug": "ASHBY_SEARCH_JOBS", "name": "Search Jobs", "description": "Search for jobs by title in Ashby ATS (Applicant Tracking System). Use this action to: - Quickly find jobs by title without pagination - Perform partial match searches (e.g., \"engineer\" matches \"Backend Engineer\") - Look up specific job openings by name Returns matching jobs with full details including hiring team, department, location, interview plans, and job postings. Note: For listing all jobs or paginated results, use the List Jobs action instead." }, { "slug": "ASHBY_SEARCH_OPENING", "name": "Search Opening", "description": "Search for openings by identifier. Use this for quick lookups to find specific openings without pagination. Returns empty results if no match found." }, { "slug": "ASHBY_SEARCH_PROJECTS", "name": "Search Projects", "description": "Search for projects by title in Ashby. Projects in Ashby are used to track sourcing initiatives, recruiting campaigns, or candidate portfolios. Use this action to: - Quickly find projects by title without pagination - Perform partial match searches (e.g., \"recruiting\" matches \"Engineering Recruiting 2024\") - Look up specific sourcing projects or initiatives by name - Build project autocomplete features Returns matching projects with details including id, title, archive status, confidentiality settings, author, and creation timestamp. Note: Results are limited to 100 matches. If you need to browse all projects or expect more results, use the List Projects action instead for paginated access." }, { "slug": "ASHBY_SEARCH_USERS", "name": "Search Users", "description": "Search for an Ashby user by email address. Use this to find specific team members in the organization when you know their email. Returns matching user details including their ID, name, role, and status. Requires organizationRead permission." }, { "slug": "ASHBY_SET_CUSTOM_FIELD_VALUE", "name": "Set Custom Field Value", "description": "Set the value of a custom field for a given object (candidate, application, job, etc.). Use when you need to update a single custom field value. Important: When updating multiple custom fields on the same object, use customField.setValues instead to avoid race conditions." }, { "slug": "ASHBY_SET_CUSTOM_FIELD_VALUES", "name": "Set Custom Field Values", "description": "Set the values of multiple custom fields for a given object in a single call. Use when you need to update multiple custom fields on the same object (candidate, application, job, or opening). This is the recommended approach to avoid race conditions that can occur with concurrent customField.setValue calls." }, { "slug": "ASHBY_SET_JOB_STATUS", "name": "Set Job Status", "description": "Set the status of a job in Ashby ATS (Applicant Tracking System). Use this action to change the workflow state of a job: - Set to 'Open' to make a job actively accept applications - Set to 'Closed' to stop accepting applications for a job - Set to 'Draft' to put a job back into preparation mode Common use cases: - Close a job after filling the position - Open a draft job to start accepting applications - Transition a job through the hiring workflow Important limitations: - Cannot transition from Open to Draft (must close first) - Cannot transition from Closed to Open (create a new job instead) Returns the updated job details on success, or error information if the status transition is not allowed." }, { "slug": "ASHBY_SET_OPENING_ARCHIVED", "name": "Set Opening Archived", "description": "Sets the archived state of an opening. Requires the jobsWrite permission. Use this to archive or unarchive job openings." }, { "slug": "ASHBY_SET_OPENING_OPENING_STATE", "name": "Set Opening State", "description": "Set the workflow state of an opening (job requisition). Use this to transition an opening between states: Draft, Approved, Open, or Closed. Important notes: - When setting state to 'Closed', you must provide a closeReasonId (use LIST_CLOSE_REASONS to get valid IDs) - Not all state transitions are allowed by Ashby's workflow rules; the API will return an error for invalid transitions - Common valid transitions: Open ↔ Closed, Approved → Open - Returns the updated opening details including the new state, timestamps, and close reason if applicable" }, { "slug": "ASHBY_START_OFFER", "name": "Start Offer", "description": "Create a new offer version instance for an in-progress offer process. The returned offer version can be filled out and submitted using the Create Offer action. Use this action before creating a finalized offer to initialize the offer version that will hold the offer details. After starting the offer, use the Create Offer endpoint to populate and submit the offer form. Requires the 'offersWrite' permission." }, { "slug": "ASHBY_START_OFFER_PROCESS", "name": "Start Offer Process", "description": "Start an offer process for a candidate's application in Ashby ATS. Use this action when you need to initiate the formal offer workflow for a candidate who has progressed through interviews and is ready to receive an offer. The application must be in the Offer stage before starting an offer process. Once started, the offer process will have a status (typically 'WaitingOnOfferCreation') and a unique identifier that can be used to track and manage the offer through completion. Requires the 'offersWrite' permission." }, { "slug": "ASHBY_SUBMIT_APPLICATION_FEEDBACK", "name": "Submit Application Feedback", "description": "Submit structured feedback for an application using a feedback form. Use this for formal interview feedback and scorecards, not for informal notes or comments." }, { "slug": "ASHBY_TRANSFER_APPLICATION", "name": "Transfer Application", "description": "Transfer an application to a different job position in Ashby ATS. Use this action to move a candidate's application from one job opening to another while optionally preserving their application history and context. This is useful when: - A candidate is better suited for a different open position - Job requirements change and the candidate should be considered for an alternative role - Internal mobility scenarios where employees are being considered for different positions The transfer will update the application's associated job, interview plan, and current interview stage. You can optionally trigger automatic activities (emails, tasks) configured for the target stage." }, { "slug": "ASHBY_UPDATE_APPLICATION", "name": "Update Application", "description": "Update an application's properties in Ashby. Use this action to modify application metadata such as: - Source attribution (how the candidate found or was found for the job) - Credited user (who should get credit for sourcing the candidate) - Creation date (useful for backdating imported applications) - Notification settings for the update Note: To update custom fields on applications, use the customFields.setValue endpoint instead. To change the application's interview stage, use change_application_stage. To archive/unarchive, use the archive actions. Returns the full updated application object with all current field values." }, { "slug": "ASHBY_UPDATE_APPLICATION_HISTORY", "name": "Update Application History", "description": "Update the complete history of an application's stage transitions. Use this to modify stage entry times, delete history events, or update existing history records. CRITICAL: This endpoint requires sending the COMPLETE application history array - use ASHBY_GET_APPLICATION_INFO first to retrieve all existing entries, then modify and send back the full array. Requires the 'candidatesWrite' permission and the 'Allow updating application history?' setting enabled in your admin API key configuration." }, { "slug": "ASHBY_UPDATE_CANDIDATE", "name": "Update Candidate", "description": "Update an existing candidate's profile information in Ashby ATS. Use this action to modify candidate details like name, email, phone number, job title, company, school, and social profiles (LinkedIn, GitHub, website). Requires a valid candidateId which can be obtained from list_candidates or search_candidates actions. Note: To update custom fields, use the customFields.setValue endpoint separately." }, { "slug": "ASHBY_UPDATE_COMPENSATION_JOB", "name": "Update Job Compensation", "description": "Update a job's compensation tiers in Ashby ATS. Use this action to define or modify the compensation structure for a job posting. You can specify multiple tiers (e.g., 'Junior', 'Senior', 'Staff') and each tier can include multiple compensation components like: - Salary (with min/max range, currency, and payment interval) - Equity (as percentage or cash value) - Bonus compensation - Commission structures Example use cases: - Setting salary ranges for a new job posting - Adding equity compensation to existing jobs - Updating compensation to reflect market changes - Creating tiered compensation for different experience levels Prerequisites: - You need a valid jobId from list_jobs or search_jobs - Compensation amounts should be appropriate for the currency and interval - At least one compensation tier with one component is required" }, { "slug": "ASHBY_UPDATE_DEPARTMENT", "name": "Update Department", "description": "Update an existing department's information such as its name. Use this action to: - Rename a department to reflect organizational changes - Update department names with Unicode/international characters - Modify department details as your organization evolves Prerequisites: - You need a valid departmentId (obtain from list_departments action) - The department must not be archived - At least one field (e.g., name) must be provided for the update Note: The externalName is automatically updated to match the name." }, { "slug": "ASHBY_UPDATE_INTERVIEWER_POOL", "name": "Update Interviewer Pool", "description": "Update an existing interviewer pool's title or training requirements. Interviewer pools are groups of interviewers organized by expertise or role (e.g., \"Backend Engineers\", \"Bar Raiser Interviews\"). Use this action to: - Rename an interviewer pool by updating its title - Enable or disable training requirements for the pool - Update both title and training settings simultaneously At least one of title or requiresTraining must be provided. Use LIST_INTERVIEWER_POOLS to get valid pool IDs. Requires hiringProcessMetadataWrite permission." }, { "slug": "ASHBY_UPDATE_JOB", "name": "Update Job", "description": "Update an existing job's properties in Ashby ATS. Use this action to modify job details such as: - Job title (e.g., change \"Engineer\" to \"Senior Engineer\") - Department/team assignment - Office location - Default interview plan - Confidentiality settings - Custom requisition ID Prerequisites: - You need a valid jobId from list_jobs or search_jobs - For teamId, get valid IDs from list_departments - For locationId, get valid IDs from list_locations - For defaultInterviewPlanId, get valid IDs from list_interview_plans Note: To update custom fields, use the customFields.setValue endpoint instead. To change job status (open/close/archive), use the set_job_status action." }, { "slug": "ASHBY_UPDATE_JOB_POSTING", "name": "Update Job Posting", "description": "Update an existing job posting's details including title, description, and visibility status. This action allows you to modify public job postings properties such as: - Title: Change the job posting title - Description: Update the job description (HTML format, certain tags supported) - Listing Status: Control whether the posting is publicly visible on job boards - Description Customization: Suppress opening/closing sections for full API control Use this to keep job postings current, control visibility, or customize descriptions. Requires the jobsWrite permission." }, { "slug": "ASHBY_UPDATE_LOCATION_ADDRESS", "name": "Update Location Address", "description": "Update the address of a location or location hierarchy. Use this when you need to modify location address details such as city, region, country, or postal code. Requires the organizationWrite permission." }, { "slug": "ASHBY_UPDATE_LOCATION_EXTERNAL_NAME", "name": "Update Location External Name", "description": "Update a location's external (candidate-facing) name. Use this to set or clear an alternate name for a location that is displayed on job boards and used in the API." }, { "slug": "ASHBY_UPDATE_LOCATION_NAME", "name": "Update Location Name", "description": "Update a location's name. Use this to rename an existing location. Requires the organizationWrite permission." }, { "slug": "ASHBY_UPDATE_LOCATION_REMOTE_STATUS", "name": "Update Location Remote Status", "description": "Tool to update a location's remote status. Use when you need to mark a location as remote or non-remote. Requires organizationWrite permission." }, { "slug": "ASHBY_UPDATE_LOCATION_WORKPLACE_TYPE", "name": "Update Location Workplace Type", "description": "Tool to update a location's workplace type (OnSite, Remote, or Hybrid). Use when you need to modify the workplace setting for an office location. Requires organizationWrite permission." }, { "slug": "ASHBY_UPDATE_OPENING", "name": "Update Opening", "description": "Update properties of an existing opening (job requisition). Use this to modify opening details such as description, team, hire dates, and employment type. Requires jobsWrite permission." }, { "slug": "ASHBY_UPDATE_SELECTABLE_VALUES_CUSTOM_FIELD", "name": "Update Selectable Values Custom Field", "description": "Update the selectable values for a ValueSelect or MultiValueSelect custom field. Use this to add new options, modify existing option labels, or archive outdated options. Values are merged with existing options - matching values are updated, new values are added." }, { "slug": "ASHBY_UPDATE_USER_INTERVIEWER_SETTINGS", "name": "Update User Interviewer Settings", "description": "Update interviewer settings for a user, including daily and weekly interview limits. Use this when you need to set or modify interview scheduling constraints for a user. Either limit can be provided individually or both together; unprovided limits remain unchanged." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ashby_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Ashby API key. An admin can create one under Admin → Integrations → API Keys — grant the permissions you need and copy it right away; it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "datarobot", "name": "DataRobot", "logo": "https://logos.composio.dev/api/datarobot", "description": "DataRobot is a machine learning platform that automates model building, deployment, and monitoring, enabling organizations to derive predictive insights from large datasets", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 840, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATAROBOT_ADD_USERS_TO_GROUP", "name": "Add Users to Group", "description": "Tool to add one or more users to a DataRobot user group by groupId. Use when you have a valid groupId and want to add existing usernames. Limit 100 users per request." }, { "slug": "DATAROBOT_ADD_USER_TO_ORGANIZATION", "name": "Add User to Organization", "description": "Tool to add a user to an existing organization. Use when you have an organizationId and wish to add or create a user within it." }, { "slug": "DATAROBOT_ANALYZE_DATASET_DEFINITION", "name": "Analyze Dataset Definition", "description": "Tool to analyze a dataset definition by ID. Use when you need to trigger an analysis job that retrieves dataset metadata, schema, and statistics." }, { "slug": "DATAROBOT_ARCHIVE_MODEL_PACKAGE", "name": "Archive Model Package", "description": "Tool to archive a DataRobot model package. Use when you need to archive a model package that is no longer actively used." }, { "slug": "DATAROBOT_BUILD_SCORING_CODE_JAVA_PACKAGE", "name": "Build Java Scoring Code Package", "description": "Initiates an asynchronous build of a Java JAR package containing DataRobot Scoring Code for a deployment. The JAR can be executed locally for predictions or used as a library in Java applications. Use after confirming the deployment is active and supports scoring code. Poll the returned statusId or location URL to track build progress." }, { "slug": "DATAROBOT_CANCEL_NOTEBOOK_JOB", "name": "Cancel Notebook Job", "description": "Tool to cancel a running or pending notebook job execution. Use when you need to stop a notebook job that is currently executing or queued. The cancellation is immediate and cannot be undone." }, { "slug": "DATAROBOT_CANCEL_PROJECT_JOB", "name": "Cancel Project Job", "description": "Tool to cancel a pending job for a project. Use when you need to stop a queued or running job after confirming its ID." }, { "slug": "DATAROBOT_CHECK_PROJECT_STATUS", "name": "Check Project Status", "description": "Tool to check the status of a DataRobot project. Use after creating or loading a project to monitor its stage and Autopilot completion." }, { "slug": "DATAROBOT_CLONE_APPLICATION_TEMPLATE", "name": "Clone Application Template", "description": "Tool to clone an application template into a codespace. Use when you need to create a new codespace from an existing template." }, { "slug": "DATAROBOT_CLONE_FILES", "name": "Clone Files Collection", "description": "Tool to create a duplicate files collection in DataRobot. Use when you need to clone an existing files catalog item, optionally excluding specific files. The cloning operation is asynchronous - poll the returned location URL to check status." }, { "slug": "DATAROBOT_COPY_FILE", "name": "Copy File or Folder", "description": "Tool to copy a file or folder within the same DataRobot catalog item. Use when you need to duplicate files or folders in the data registry with configurable overwrite strategies." }, { "slug": "DATAROBOT_CREATE_ACCESS_ROLE", "name": "Create Access Role", "description": "Create a custom Access Role for an organization. Use to define tailored permission sets controlling user access to DataRobot entities (projects, deployments, datasets, etc.). Requires an organization ID which can be obtained from the account info endpoint." }, { "slug": "DATAROBOT_CREATE_AND_START_NOTEBOOK_CODESPACE", "name": "Create and Start Notebook Codespace", "description": "Tool to create and start a new notebook codespace in DataRobot. Use when you need to set up an interactive Jupyter notebook environment within a use case. Note: DataRobot limits concurrent notebooks to 4 running in parallel. If the limit is reached, stop or delete an existing notebook before creating a new one." }, { "slug": "DATAROBOT_CREATE_AUTOMATED_DOCUMENT", "name": "Create Automated Document", "description": "Tool to request generation of automated compliance documents in DataRobot. Use when you need to generate documentation for projects, models, or deployments. The document generation is asynchronous. Poll the returned location URL to check status and retrieve the document once generation completes." }, { "slug": "DATAROBOT_CREATE_BATCH_MONITORING", "name": "Create Batch Monitoring Job", "description": "Tool to create a DataRobot Batch Monitoring job for tracking model performance and data drift on batch predictions. Use when you need to monitor predictions at scale. The job is created asynchronously and returns immediately with a job ID." }, { "slug": "DATAROBOT_CREATE_BATCH_MONITORING_JOB_DEFINITION", "name": "Create Batch Monitoring Job Definition", "description": "Tool to create a Batch Monitoring job definition for tracking deployment performance and data drift. Use when you need to set up scheduled or manual monitoring jobs for a DataRobot deployment." }, { "slug": "DATAROBOT_CREATE_BATCH_PREDICTION_JOB_DEFINITION", "name": "Create Batch Prediction Job Definition", "description": "Tool to create a Batch Prediction job definition. Use when you need to manually or scheduled scoring on large datasets." }, { "slug": "DATAROBOT_CREATE_BATCH_PREDICTIONS", "name": "Create Batch Predictions", "description": "Tool to create a new batch predictions job in DataRobot. Use when you need to score large datasets using a deployment, model, or model package. The job processes predictions asynchronously." }, { "slug": "DATAROBOT_CREATE_BATCH_PREDICTIONS_FROM_EXISTING", "name": "Create Batch Predictions From Existing", "description": "Tool to create a new Batch Prediction job based on an existing job's configuration. Use when you need to re-run predictions with the same settings." }, { "slug": "DATAROBOT_CREATE_BATCH_PREDICTIONS_FROM_JOB_DEF", "name": "Create Batch Predictions From Job Definition", "description": "Tool to launch a Batch Prediction job from a job definition. Use when you need to execute a previously created batch prediction job definition for scoring." }, { "slug": "DATAROBOT_CREATE_CALENDARS_FILE_UPLOAD", "name": "Create Calendar from File Upload", "description": "Tool to create a DataRobot calendar by uploading a CSV or XLSX file containing date events. Use when you need to define custom calendars for time-series modeling with specific event dates. The operation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_CALENDARS_FROM_COUNTRY_CODE", "name": "Create Calendars from Country Code", "description": "Initialize generation of preloaded calendars from a country code. Creates calendars with national holidays for the specified country and date range. Calendar generation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_CALENDARS_FROM_DATASET", "name": "Create Calendar from Dataset", "description": "Tool to create a calendar from a dataset in DataRobot. Use when preparing time-series projects that require custom calendar definitions. Calendar creation is asynchronous - use the returned statusId to monitor progress." }, { "slug": "DATAROBOT_CREATE_CHANGE_REQUEST", "name": "Create Change Request", "description": "Create a Change Request for a DataRobot deployment to enable governance workflows. Use when you need to request approval for deployment changes such as changing importance, replacing models, updating status, or deleting deployments. Change requests require approval from authorized reviewers before changes can be applied." }, { "slug": "DATAROBOT_CREATE_CODE_SNIPPETS", "name": "Create Code Snippets", "description": "Tool to generate code snippets for DataRobot models, predictions, or workloads. Use when you need sample code to interact with DataRobot models, make predictions, or process workloads in various programming languages." }, { "slug": "DATAROBOT_CREATE_CODE_SNIPPETS_DOWNLOAD", "name": "Download Code Snippet", "description": "Tool to download code snippets for DataRobot deployments, models, or workloads. Use when you need sample code to make predictions, interact with models, or work with workloads. Generates code in Python, cURL, PowerShell, or Qlik based on your deployment/model configuration." }, { "slug": "DATAROBOT_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on a DataRobot entity (deployment, use case, model, catalog, etc.). Use when you need to add notes, feedback, or documentation to DataRobot objects." }, { "slug": "DATAROBOT_CREATE_COMPLIANCE_DOC_TEMPLATES", "name": "Create Compliance Doc Template", "description": "Tool to create a new compliance documentation template in DataRobot. Use when you need to define a reusable structure for model compliance documentation. Templates can include DataRobot-generated content, user-provided text, custom sections, and table of contents. Sections can be nested up to 5 levels deep with a maximum of 500 total sections." }, { "slug": "DATAROBOT_CREATE_CREDENTIALS", "name": "Create Credentials", "description": "Store a new set of credentials in DataRobot for use with data sources and connections. Supports multiple credential types including basic auth, OAuth, cloud provider credentials (AWS, GCP, Azure), and database-specific authentication. Use when you need to securely store credentials for connecting to external data sources or services." }, { "slug": "DATAROBOT_CREATE_CUSTOM_APPLICATION_SOURCE", "name": "Create Custom Application Source", "description": "Tool to create a custom application source in DataRobot. Use when you need to create a new source for custom applications." }, { "slug": "DATAROBOT_CREATE_CUSTOM_APPLICATION_SOURCE_VERSION", "name": "Create Custom Application Source Version", "description": "Create a new custom application source version in DataRobot. Use when you need to create a new version of an existing custom application source with optional file uploads, environment configuration, or based on a previous version." }, { "slug": "DATAROBOT_CREATE_CUSTOM_APP_SOURCES_FROM_CUSTOM_TPL", "name": "Create Custom Application Source From Template", "description": "Tool to create a custom application source from a custom template. Use when you need to instantiate a new application source based on an existing custom template." }, { "slug": "DATAROBOT_CREATE_CUSTOM_JOB", "name": "Create Custom Job", "description": "Tool to create a new DataRobot custom job. Use when you need to define a custom execution task that runs arbitrary Python code in DataRobot's managed environment. Only the 'name' field is required; DataRobot applies sensible defaults for other fields." }, { "slug": "DATAROBOT_CREATE_CUSTOM_JOBS_CLEANUP", "name": "Create Custom Jobs Cleanup", "description": "Tool to permanently delete a custom job. Use when you need to permanently remove a soft-deleted custom job and all its components. The custom job must be soft-deleted first before permanent deletion." }, { "slug": "DATAROBOT_CREATE_CUSTOM_JOBS_HOSTED_CUSTOM_METRIC_TEMPLATE", "name": "Create Custom Job Hosted Custom Metric Template", "description": "Tool to create a hosted custom metric template for a DataRobot custom job. Use when defining how custom metrics should be collected and aggregated for observability. The template must specify whether metrics are model-specific, the aggregation type, and for numeric metrics, directionality and units." }, { "slug": "DATAROBOT_CREATE_CUSTOM_MODEL", "name": "Create Custom Model", "description": "Tool to create a new DataRobot custom model for training or inference. Use when you need to register a custom model in DataRobot. For inference models, targetType and targetName are typically required (e.g., targetType='Regression' requires targetName)." }, { "slug": "DATAROBOT_CREATE_CUSTOM_MODEL_DEPLOYMENT_LOGS", "name": "Get Custom Model Deployment Logs", "description": "Tool to request logs from a deployed custom model. Use when troubleshooting failed prediction requests or debugging custom model behavior. Returns a status ID for polling - logs are generated asynchronously." }, { "slug": "DATAROBOT_CREATE_CUSTOM_MODELS_FROM_CUSTOM_MODEL", "name": "Clone Custom Model", "description": "Tool to clone an existing custom model in DataRobot. Use when you need to create a copy of a custom model for reuse or experimentation." }, { "slug": "DATAROBOT_CREATE_CUSTOM_MODELS_VERSIONS", "name": "Create Custom Model Version", "description": "Tool to create a new version for an existing DataRobot custom model. Use when you need to update a custom model with new code files, environment changes, or configuration updates. Creates either a major or minor version based on the isMajorUpdate parameter." }, { "slug": "DATAROBOT_CREATE_DATA_DISPARITY_INSIGHTS", "name": "Create Data Disparity Insights", "description": "Tool to start data disparity insight calculations for a DataRobot model. Use when you need to analyze data disparity between two classes for a specific feature. The calculation is asynchronous; poll the returned location URL to check job status and retrieve results." }, { "slug": "DATAROBOT_CREATE_DATA_ENGINE_WORKSPACE_STATES", "name": "Create Data Engine Workspace State", "description": "Create a Data Engine workspace state by executing a SQL query against DataRobot datasets. Use when you need to transform, join, or prepare data before modeling. The workspace state captures the query definition and can be used to generate new datasets or feed into projects." }, { "slug": "DATAROBOT_CREATE_DATASET_DEFINITIONS", "name": "Create Dataset Definition", "description": "Create a dataset definition in DataRobot to define how to access and use a dataset from the AI Catalog. Use when you need to establish a reusable definition for a dataset that can be referenced in projects and deployments." }, { "slug": "DATAROBOT_CREATE_DATASET_DEFINITIONS_CHUNK_DEFINITIONS", "name": "Create Dataset Chunk Definition", "description": "Tool to create a chunk definition for a dataset definition in DataRobot. Use when you need to define how to partition a dataset into chunks for distributed processing or validation strategies." }, { "slug": "DATAROBOT_CREATE_DATASET_FEATURELIST", "name": "Create Dataset Feature List", "description": "Tool to create a custom feature list within a dataset. Use when you need to define a specific subset of features for analysis or modeling." }, { "slug": "DATAROBOT_CREATE_DATASET_FROM_FILE", "name": "Create Dataset from File", "description": "Tool to create a DataRobot dataset by uploading a file (CSV, Excel, etc.). Use when you need to upload data files to DataRobot's global catalog for modeling or prediction. Dataset creation is asynchronous - poll the statusId to monitor completion." }, { "slug": "DATAROBOT_CREATE_DATASETS_FEATURE_TRANSFORMS", "name": "Create Dataset Feature Transform", "description": "Tool to create a feature transform on a DataRobot dataset. Use when you need to transform an existing feature into a new feature with a different type or extract date components. Feature creation is asynchronous - poll the returned location URL to check status." }, { "slug": "DATAROBOT_CREATE_DATASETS_FROM_DATA_SOURCE", "name": "Create Dataset from Data Source", "description": "Tool to create a dataset from an external data source connector (database, S3, etc.). Use when you need to import data from a configured data source into DataRobot. The dataset creation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_DATASETS_FROM_RECIPE", "name": "Create Dataset from Recipe", "description": "Tool to create a dataset from a DataRobot wrangling recipe. Use when you need to materialize a recipe into a reusable dataset. Creation is asynchronous - poll the location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_DATASETS_FROM_URL", "name": "Create Dataset from URL", "description": "Tool to create a DataRobot dataset from a publicly accessible URL. Use when you need to import data from HTTP/HTTPS URLs into DataRobot's data catalog. Returns immediately with catalog and status IDs - dataset ingestion happens asynchronously." }, { "slug": "DATAROBOT_CREATE_DATASETS_REFRESH_JOBS", "name": "Create Dataset Refresh Job", "description": "Tool to schedule a dataset refresh job in DataRobot. Use when you need to automate periodic data updates for a dataset. The schedule must be at least daily (hourly schedules are not supported)." }, { "slug": "DATAROBOT_CREATE_DATASETS_RELATIONSHIPS", "name": "Create Dataset Relationships", "description": "Tool to create dataset relationships in DataRobot by linking features between two datasets. Use when you need to enable advanced feature engineering across multiple datasets for modeling." }, { "slug": "DATAROBOT_CREATE_DATASETS_VERSIONS_FROM_LATEST_VERSION", "name": "Create Dataset Version from Latest Version", "description": "Tool to create a new dataset version from the latest version of its data source. Use when you need to refresh a dataset with updated data from its original source. The dataset version creation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_DATASETS_VERSIONS_FROM_URL", "name": "Create Dataset Version from URL", "description": "Tool to create a new version for an existing DataRobot dataset from a publicly accessible URL. Use when you need to update an existing dataset with new data from HTTP/HTTPS URLs. Returns immediately with status ID - version creation happens asynchronously." }, { "slug": "DATAROBOT_CREATE_DATASETS_VERSIONS_FROM_VERSION", "name": "Create Dataset Version from Previous Version", "description": "Tool to create a new dataset version from a specific previous version of its data source. Use when you need to refresh a dataset based on a particular historical version. The dataset version creation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_CREATE_DATASET_VERSIONS_FROM_FILE", "name": "Create Dataset Version from File", "description": "Tool to create a new version of an existing DataRobot dataset by uploading a file (CSV, Excel, etc.). Use when you need to update an existing dataset with new data. Dataset version creation is asynchronous - poll the statusId to monitor completion." }, { "slug": "DATAROBOT_CREATE_DATA_SLICES", "name": "Create Data Slice", "description": "Create a new data slice in a DataRobot project to define a subset of data based on feature filters. Use when you need to analyze or model specific segments of your data (e.g., high-value customers, specific regions). Supports up to 3 filters with operators: eq, in, <, >, between, notBetween." }, { "slug": "DATAROBOT_CREATE_DATA_SLICES_SLICE_SIZES", "name": "Create Data Slice Size Computation", "description": "Tool to compute the number of rows available after applying a data slice to a dataset subset. Use when validating data slice filters or checking how many rows will be included in analysis for a specific data partition. Returns slice size and validation messages. Status 202 indicates successful validation." }, { "slug": "DATAROBOT_CREATE_DATA_STAGES", "name": "Create Data Stage", "description": "Tool to create a data stage in DataRobot. Use when you need to create a new data stage with a specified filename for data staging operations." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENT", "name": "Create Deployment", "description": "Create a DataRobot deployment from a model package to enable real-time or batch predictions. Prerequisites: 1. First obtain a modelPackageId using LIST_MODEL_PACKAGES or CREATE_MODEL_PACKAGE 2. Optionally get predictionEnvironmentId using LIST_PREDICTION_ENVIRONMENTS 3. For managed SaaS, get defaultPredictionServerId using LIST_PREDICTION_SERVERS The deployment is created asynchronously. Poll the returned location URL to check readiness status." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENT_CUSTOM_METRIC_FROM_CUSTOM_JOB", "name": "Create Deployment Custom Metric from Custom Job", "description": "Tool to create a deployment custom metric from an existing custom job in DataRobot. Use when you need to track custom business or operational metrics for a deployment. The custom job must have an associated hosted custom metric template." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_ACTUALS_DATA_EXPORTS", "name": "Create Deployments Actuals Data Exports", "description": "Tool to create a deployment actuals data export for a specified time period. Use when you need to export actuals data from a deployment to analyze model performance and accuracy." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_ACTUALS_FROM_DATASET", "name": "Create Deployment Actuals from Dataset", "description": "Tool to submit actuals values from AI Catalog dataset for deployment monitoring. Use when you need to upload actual outcomes for predictions to enable accuracy tracking and monitoring. The submission is asynchronous - poll the Location header URL to check completion status." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_ACTUALS_FROM_JSON", "name": "Create Deployment Actuals from JSON", "description": "Submit actual values for predictions to a DataRobot deployment. Use this to track model accuracy and performance over time by providing ground truth values that can be compared against predictions." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_CUSTOM_METRICS", "name": "Create Deployment Custom Metric", "description": "Create a deployment custom metric for monitoring deployment or model-specific metrics. Use for numeric metrics (average, gauge, sum) or categorical metrics to track custom KPIs beyond standard monitoring." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_CUSTOM_METRICS_BULK_UPLOAD", "name": "Create Deployment Custom Metrics Bulk Upload", "description": "Bulk upload custom metric values to a DataRobot deployment. Use this to efficiently submit multiple timestamped custom metric values in a single request for model monitoring and observability." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_CUSTOM_METRICS_FROM_DATASET", "name": "Upload Custom Metric Values from Dataset", "description": "Tool to upload custom metric values from a dataset to a deployment. Use when you need to populate custom metrics with data from an existing dataset. The operation is asynchronous and returns a location URL to check the import status." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_CUSTOM_METRICS_FROM_JSON", "name": "Upload Custom Metrics from JSON", "description": "Tool to upload custom metric values from JSON for a DataRobot deployment. Use when you need to submit custom monitoring metrics (e.g., business KPIs, external performance measures) to track alongside model predictions. The operation is asynchronous - returns immediately with a location URL to poll for job status." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_MONITORING_BATCHES", "name": "Create Deployment Monitoring Batch", "description": "Tool to create a monitoring batch for a DataRobot deployment. Use when you need to organize predictions into named batches for monitoring and tracking purposes. Monitoring batches help group related predictions for analysis and reporting." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_MONITORING_DATA_DELETIONS", "name": "Delete Deployment Monitoring Data", "description": "Tool to delete deployment monitoring data for a specific model within a time period. Use when you need to remove historical monitoring data for a model in a deployment. Specify time ranges using top-of-the-hour RFC3339 datetime strings." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_PREDICTION_DATA_EXPORTS", "name": "Create Deployment Prediction Data Export", "description": "Tool to create a prediction data export for a deployment. Use when you need to export prediction data for observability and data exploration." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_RETRAINING_POLICIES", "name": "Create Deployment Retraining Policy", "description": "Tool to create a deployment retraining policy in DataRobot. Use when you need to set up automated model retraining based on schedules, data drift, or accuracy decline triggers." }, { "slug": "DATAROBOT_CREATE_DEPLOYMENTS_TRAINING_DATA_EXPORTS", "name": "Create Deployment Training Data Export", "description": "Tool to create a deployment training data export in DataRobot. Use when you need to export the training data used for a deployed model. The export is enqueued asynchronously and processes in the background. Poll the returned location URL to check export status and retrieve the data once ready." }, { "slug": "DATAROBOT_CREATE_ENTITY_NOTIFICATION_CHANNELS", "name": "Create Entity Notification Channel", "description": "Tool to create an entity notification channel in DataRobot. Use when you need to set up notifications for deployments or custom jobs." }, { "slug": "DATAROBOT_CREATE_ENTITY_NOTIFICATION_POLICIES", "name": "Create Entity Notification Policy", "description": "Tool to create an entity notification policy in DataRobot. Use when you need to set up automated notifications for specific events on deployments or custom jobs (e.g., health changes, model replacements, batch job completions). Requires a pre-existing notification channel; create one via the entity notification channels endpoint first." }, { "slug": "DATAROBOT_CREATE_ENTITY_NOTIFICATION_POLICIES_FROM_TEMPLATE", "name": "Create Entity Notification Policy from Template", "description": "Tool to create an entity notification policy from a template. Use when you need to set up automated notifications for events on deployments or custom jobs. The policy defines when notifications should be sent and through which channel (email, Slack, webhook, etc.)." }, { "slug": "DATAROBOT_CREATE_ENTITY_NOTIFICATION_POLICY_TEMPLATE", "name": "Create Entity Notification Policy Template", "description": "Tool to create an entity notification policy template in DataRobot. Use when you need to set up notification rules for deployments or custom jobs. Templates allow you to define reusable notification policies that can be applied to multiple entities." }, { "slug": "DATAROBOT_CREATE_ENTITY_TAG", "name": "Create Entity Tag", "description": "Tool to create a new entity tag in DataRobot. Use when you need to tag experiment containers for organization and categorization." }, { "slug": "DATAROBOT_CREATE_EXECUTION_ENVIRONMENTS_VERSIONS", "name": "Create Execution Environment Version", "description": "Tool to create a new version for an existing DataRobot execution environment. Use when you need to add a new version to an execution environment by specifying a Docker image URI, Docker context, or Docker image file. The environment version build is asynchronous - the API returns immediately with a 202 status." }, { "slug": "DATAROBOT_CREATE_EXECUTION_ENVIRONMENTS_VERSIONS_DOWNLOAD", "name": "Request Execution Environment Version Build", "description": "Tool to request an on-demand image build for an execution environment version. Use when you need to trigger a build for a specific environment version before downloading or deploying it." }, { "slug": "DATAROBOT_CREATE_EXT_DS_STANDARD_USER_DEF_FUNCTIONS", "name": "Create External Data Store Standard UDF", "description": "Tool to start a job that creates a standard user-defined function in an external data store. Use when you need to add rolling aggregation functions (median or most frequent) to a database for use in DataRobot feature engineering. Requires write permissions to the data store." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_SOURCES", "name": "Create External Data Sources", "description": "Tool to create a new external data source in DataRobot. Use when you need to create a connection to an external database or filesystem. Requires a valid dataStoreId from an existing data store connection." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_STORES", "name": "Create External Data Store", "description": "Tool to create a new external data store in DataRobot. Use when establishing a connection to external databases or data systems. The created data store ID can then be used with CREATE_EXTERNAL_DATA_SOURCES to define specific tables or queries." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_STORES_COLUMNS", "name": "Get External Data Store Columns", "description": "Tool to retrieve column metadata from an external data store. Use when you need to discover the schema and data types of tables in an external database connection. Requires a valid dataStoreId and authentication credentials." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_STORES_COLUMNS_INFO", "name": "Get Data Store Columns Info", "description": "Tool to retrieve column metadata for a table in an external data store. Use when you need to inspect the schema and structure of a database table. This operation is only supported for JDBC data stores." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_STORES_SCHEMAS", "name": "Retrieve Data Store Schemas", "description": "Tool to retrieve data store schemas. Use when you need to list available schemas and catalogs from an external data store." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_DATA_STORES_TABLES", "name": "List External Data Store Tables", "description": "Tool to retrieve database tables and views from a DataRobot external data store. Use when you need to browse available tables before creating a dataset from an external data source." }, { "slug": "DATAROBOT_CREATE_EXTERNAL_O_AUTH_PROVIDERS", "name": "Create External OAuth Provider", "description": "Create an external OAuth provider configuration in DataRobot for integrating with external services. Use this to configure OAuth authentication for services like GitHub, GitLab, Bitbucket, Google, Box, Microsoft, Jira, or Confluence. The provider enables secure authentication flows for accessing external resources from DataRobot." }, { "slug": "DATAROBOT_CREATE_FILES", "name": "Create Empty Files Catalog Item", "description": "Tool to create an empty files catalog item in DataRobot. Use when you need to create a placeholder catalog entry before uploading files to it. After creating the empty catalog item, use CREATE_FILES_FROM_FILE or CREATE_FILES_FROM_URL to populate it with actual files." }, { "slug": "DATAROBOT_CREATE_FILES_COPY_BATCH", "name": "Copy Files in Batch", "description": "Tool to copy multiple files or folders in a batch operation within DataRobot's data registry. Use when you need to copy multiple files at once, either within the same catalog item or to a different catalog item." }, { "slug": "DATAROBOT_CREATE_FILES_DOWNLOADS", "name": "Create Files Downloads", "description": "Tool to generate a temporary download URL for a DataRobot catalog file. Use when you need to download data from a catalog item. The download URL is valid for a limited time (default 60 seconds, maximum 5 minutes)." }, { "slug": "DATAROBOT_CREATE_FILES_FROM_FILE_BY_ID", "name": "Add Files to Existing Catalog Item", "description": "Tool to add file(s) to an existing DataRobot files catalog item. Use when you need to upload additional files to an existing catalog entry. The file addition is asynchronous - poll the returned location URL to check status." }, { "slug": "DATAROBOT_CREATE_FILES_FROM_STAGE", "name": "Create Files From Stage", "description": "Tool to apply staged files to a catalog item. Use when you need to finalize and commit files from a stage to a files catalog item." }, { "slug": "DATAROBOT_CREATE_FILES_FROM_URL", "name": "Create Files From URL", "description": "Tool to create a files catalog item in DataRobot from a URL. Use when you need to import files from a publicly accessible URL into the DataRobot catalog. The file is downloaded and processed asynchronously - use GET_CATALOG_ITEM to check the import status." }, { "slug": "DATAROBOT_CREATE_FILES_FROM_URL_BY_ID", "name": "Add Files to Catalog Item from URL", "description": "Tool to add file(s) into an existing files catalog item from a URL. Use when you need to add additional files from a URL to an existing DataRobot files catalog item. The file download and processing happens asynchronously - poll the returned location URL to check status." }, { "slug": "DATAROBOT_CREATE_FILES_LINKS", "name": "Create Files Download Links", "description": "Tool to generate temporary download URLs for files in a catalog item. Use when you need to retrieve data from an unstructured dataset via direct download links. The generated URLs are temporary and valid for the specified duration (default 10 minutes, max 50 minutes)." }, { "slug": "DATAROBOT_CREATE_FILES_STAGES", "name": "Create File Stage", "description": "Tool to create an empty stage for File Registry files upload. Use when you need to upload files to DataRobot's File Registry. The stage acts as a temporary upload container before finalizing the file." }, { "slug": "DATAROBOT_CREATE_FILES_STAGES_UPLOAD", "name": "Stage File for Batch Upload", "description": "Tool to stage a file for a batch upload in DataRobot. Use when uploading files to a specific catalog item's stage. Returns the catalog ID and stage ID upon successful upload." }, { "slug": "DATAROBOT_CREATE_FILES_VERSIONS_LINKS", "name": "Create File Version Download Links", "description": "Tool to generate temporary download URLs for catalog file versions. Use when you need to retrieve data from a catalog item and version via URLs. The generated URLs expire after the specified duration (default 600 seconds, maximum 3000 seconds)." }, { "slug": "DATAROBOT_CREATE_GENAI_CHAT_PROMPTS", "name": "Create GenAI Chat Prompts", "description": "Tool to create a GenAI chat prompt and execute it with an LLM. Use when you want to send a prompt to a DataRobot LLM for completion, optionally leveraging vector database retrieval for RAG workflows." }, { "slug": "DATAROBOT_CREATE_GENAI_COMPARISON_CHATS", "name": "Create GenAI Comparison Chat", "description": "Tool to create a new GenAI comparison chat within a playground for comparing different LLM responses. Use when you need to set up a new comparison chat environment to evaluate multiple model outputs side-by-side." }, { "slug": "DATAROBOT_CREATE_GENAI_CUSTOM_MODEL_EMBEDDING_VALIDATIONS", "name": "Create GenAI Custom Model Embedding Validations", "description": "Tool to create and run validation tests for GenAI custom model embeddings. Use when you need to verify that a custom model deployment meets DataRobot's requirements for embedding generation before using it in production." }, { "slug": "DATAROBOT_CREATE_GENAI_CUSTOM_MODEL_LLM_VALIDATIONS", "name": "Create GenAI Custom Model LLM Validations", "description": "Tool to create a GenAI custom model LLM validation. Use when you need to test and validate LLM deployment behavior. Returns a validation object with status TESTING initially; poll the validation status to check completion." }, { "slug": "DATAROBOT_CREATE_GENAI_CUSTOM_MODEL_VECTOR_DB_VALIDATION", "name": "Create GenAI Custom Model Vector Database Validation", "description": "Create a validation for a GenAI custom model deployment's vector database capabilities. Returns immediately with validation ID - validation runs asynchronously and status can be checked using the returned ID. Use when you need to verify that a custom model deployment can properly handle vector database operations for RAG (Retrieval-Augmented Generation) use cases." }, { "slug": "DATAROBOT_CREATE_GENAI_CUSTOM_MODEL_VERSIONS", "name": "Create GenAI Custom Model Version", "description": "Tool to create a GenAI custom model version from an LLM blueprint in DataRobot. Use when you need to register a custom model version for deployment or testing. Prerequisites: You must first create an LLM blueprint before calling this endpoint." }, { "slug": "DATAROBOT_CREATE_GENAI_EVALUATION_DATASET_CONFIGURATIONS", "name": "Create GenAI Evaluation Dataset Configuration", "description": "Tool to create a GenAI evaluation dataset configuration for testing LLM applications. Use when you need to set up evaluation datasets with prompt columns and optional response/tool call columns for assessing GenAI playground outputs. Required for running AI robustness tests on GenAI use cases." }, { "slug": "DATAROBOT_CREATE_GENAI_LLM_BLUEPRINTS", "name": "Create GenAI LLM Blueprint", "description": "Tool to create a new GenAI LLM blueprint for generative AI applications. Use when you need to configure an LLM with specific settings, system prompts, and optional RAG capabilities. Requires a valid playgroundId and llmId. Set llmId to 'custom-model' when using customModelLlmSettings." }, { "slug": "DATAROBOT_CREATE_GENAI_LLM_BLUEPRINTS_FROM_CHAT_PROMPT", "name": "Create GenAI LLM Blueprints from Chat Prompt", "description": "Tool to create a GenAI LLM blueprint from an existing chat prompt. Use when you have a chat prompt ID and want to convert it into a reusable LLM blueprint for experimentation and deployment." }, { "slug": "DATAROBOT_CREATE_GENAI_LLM_BLUEPRINTS_FROM_LLMBLUEPRINT", "name": "Create GenAI LLM Blueprint from LLM Blueprint", "description": "Tool to create a new GenAI LLM Blueprint by copying from an existing LLM Blueprint. Use when you need to duplicate an LLM blueprint configuration with modifications or for version control. The new blueprint inherits all properties from the source blueprint except for the name and description." }, { "slug": "DATAROBOT_CREATE_GENAI_LLM_TEST_CONFIGURATION", "name": "Create GenAI LLM Test Configuration", "description": "Tool to create a GenAI LLM test configuration for AI robustness testing. Use when you need to set up automated testing for LLM outputs against metrics like toxicity, jailbreak attempts, or PII leakage." }, { "slug": "DATAROBOT_CREATE_GENAI_LLM_TEST_SUITE", "name": "Create GenAI LLM Test Suite", "description": "Tool to create a new GenAI LLM test suite for evaluating LLM applications. Use when you need to group LLM test configurations together for AI robustness testing. Requires a valid useCaseId - use DATAROBOT_LIST_USE_CASES to find available use cases." }, { "slug": "DATAROBOT_CREATE_GENAI_PLAYGROUND", "name": "Create GenAI Playground", "description": "Tool to create a new GenAI playground for experimenting with LLM applications. Use when you need to set up a new playground environment associated with a specific use case." }, { "slug": "DATAROBOT_CREATE_GENAI_PLAYGROUNDS_OOTB_METRIC_CONFIGS", "name": "Create GenAI Playground OOTB Metric Configurations", "description": "Tool to create OOTB (Out-of-the-Box) metric configurations for a GenAI playground. Use when you need to add performance, safety, and governance metrics to monitor LLM responses in a playground." }, { "slug": "DATAROBOT_CREATE_GENAI_PLAYGROUNDS_TRACE_DATASETS", "name": "Create GenAI Playground Trace Dataset", "description": "Tool to create a trace dataset for a GenAI playground. Use when you need to create a dataset for storing playground traces associated with a specific playground ID." }, { "slug": "DATAROBOT_CREATE_GUARD_CONFIG_TO_NEW_CUSTOM_MODEL_VER", "name": "Create Guard Configurations to New Custom Model Version", "description": "Tool to apply guard configurations to a new custom model version in DataRobot. Creates a new version with the specified moderation guards. Use when you need to add toxicity detection, PII filtering, or other content moderation to a custom model." }, { "slug": "DATAROBOT_CREATE_GUARD_CONFIGURATION", "name": "Create Guard Configuration", "description": "Create a guard configuration to monitor and control AI model behavior during prompt and response stages. Guards can detect issues like PII, toxic content, off-topic responses, or custom validation rules. Requires a templateId (from DATAROBOT_LIST_GUARD_TEMPLATES) and entityId (custom model or playground)." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_LIFT_CHART", "name": "Create Insights Lift Chart", "description": "Tool to request calculation of a Lift chart insight in DataRobot. Use when you need to analyze model performance across population segments with optional data slicing. The Lift chart calculation is asynchronous. Poll the returned location URL to check status and retrieve results once calculation completes." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_ROC_CURVE", "name": "Create ROC Curve Insight", "description": "Request calculation of ROC curve insights for a DataRobot model, custom model, or vector database. The ROC curve is computed asynchronously and can optionally be filtered by a data slice. Use this to evaluate binary classification model performance across different data partitions." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_SHAP_DISTRIBUTIONS", "name": "Create Insights SHAP Distributions", "description": "Tool to request calculation of SHAP Distributions in DataRobot. Use when you need to analyze the distribution of SHAP values across features with optional data slicing. SHAP (SHapley Additive exPlanations) Distributions help understand how feature values contribute to model predictions across the dataset. The calculation is asynchronous - poll the returned location URL to check status and retrieve results once calculation completes." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_SHAP_IMPACT", "name": "Create SHAP Impact Insight", "description": "Tool to request calculation of SHAP Impact insights in DataRobot. Use when you need to understand feature importance based on Shapley values with optional data slicing. SHAP (SHapley Additive exPlanations) Impact provides model-agnostic feature importance by quantifying how much each feature contributes to individual predictions. The calculation is asynchronous - poll the returned location URL to check status and retrieve results once computation completes." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_SHAP_MATRIX", "name": "Create Insights SHAP Matrix", "description": "Tool to request calculation of a SHAP Matrix insight in DataRobot. Use when you need feature importance explanations showing how each feature impacts model predictions, with optional data slicing. The SHAP Matrix calculation is asynchronous. Poll the returned location URL to check status and retrieve results once calculation completes." }, { "slug": "DATAROBOT_CREATE_INSIGHTS_SHAP_PREVIEW", "name": "Create SHAP Preview Insights", "description": "Request calculation of SHAP Preview insights with an optional data slice. Returns immediately with a queue ID - the SHAP computation happens asynchronously. Use the queue ID to poll for job status and retrieve results when complete." }, { "slug": "DATAROBOT_CREATE_MODELING_FEATURELIST", "name": "Create Modeling Featurelist", "description": "Tool to create a new modeling featurelist in a DataRobot project. Use when you need to define a custom set of features for model training." }, { "slug": "DATAROBOT_CREATE_MODEL_PACKAGE", "name": "Create Model Package", "description": "Tool to create a model package from a DataRobot Leaderboard model. Use after a model is trained and you need an offline package." }, { "slug": "DATAROBOT_CREATE_MODEL_PACKAGES_FROM_JSON", "name": "Create Model Package from JSON", "description": "Tool to create a DataRobot model package from JSON metadata. Use when you have custom model metadata and want to register it as a model package without a Leaderboard model." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK", "name": "Create Notebook", "description": "Tool to create a new notebook in DataRobot Workbench for interactive code development. Use when you need to create a Jupyter notebook for data exploration, analysis, or model development." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_ENVIRONMENT_VARIABLES", "name": "Create Notebook Environment Variables", "description": "Tool to create one or more environment variables for a specific notebook. Use when you need to add environment variables like API keys, credentials, or configuration values to a notebook." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_EXECUTION_ENVIRONMENT_PORT", "name": "Expose Notebook Port", "description": "Tool to expose a port on a DataRobot notebook execution environment. Use when you need to access a web service or application running inside a notebook (e.g., Flask/FastAPI apps, Jupyter extensions, or custom web servers). The notebook must be running to expose ports. Maximum 5 ports can be exposed per notebook." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_FROM_REVISION", "name": "Clone Notebook from Revision", "description": "Tool to clone a notebook from an existing revision, creating a new notebook as a copy. Use when you need to create a new notebook based on a specific revision of an existing notebook. The operation is asynchronous and returns immediately with the new notebook ID." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_JOBS", "name": "Create Notebook Job", "description": "Tool to create a scheduled notebook job in DataRobot. Use when you need to run a Jupyter notebook on a schedule or programmatically. The notebook must exist in DataRobot Codespaces before creating the job. Configure cron-like schedules to automate notebook execution." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_JOBS_MANUAL_RUN", "name": "Create Notebook Job Manual Run", "description": "Tool to manually trigger a notebook job run in DataRobot. Use when you need to execute a notebook on-demand with optional parameters. For Codespace notebooks, both notebookId and notebookPath are required." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_REVISIONS", "name": "Create Notebook Revision", "description": "Tool to create a new revision for a DataRobot notebook. Use when you need to save a checkpoint of a notebook's current state for version control or tracking changes." }, { "slug": "DATAROBOT_CREATE_NOTEBOOK_RUNTIME_CLIENT_ACTIVITY", "name": "Create Notebook Runtime Client Activity", "description": "Tool to record client activity for a running notebook session. Use when tracking notebook session heartbeats or activity. This endpoint helps DataRobot track that a notebook session is still active." }, { "slug": "DATAROBOT_CREATE_NOTEBOOKS_CELLS_BATCH_CREATE", "name": "Batch Create Notebook Cells", "description": "Tool to batch create multiple cells in a DataRobot notebook. Use when you need to add multiple code or markdown cells to an existing notebook at a specific position. The cells are inserted after the specified cell ID, allowing precise control over cell placement." }, { "slug": "DATAROBOT_CREATE_NOTEBOOKS_CELLS_BATCH_DELETE", "name": "Batch Delete Notebook Cells", "description": "Tool to batch delete multiple cells from a DataRobot notebook. Use when you need to remove multiple cells at once by their cell IDs. The deletion is permanent and cannot be undone." }, { "slug": "DATAROBOT_CREATE_NOTEBOOKS_FROM_FILE", "name": "Create Notebook from File", "description": "Tool to create a new notebook in DataRobot by uploading a notebook file. Use when you need to import an existing Jupyter notebook (.ipynb) into DataRobot. The notebook is created asynchronously and returns immediately with notebook metadata." }, { "slug": "DATAROBOT_CREATE_NOTIFICATION_CHANNEL_TEMPLATE", "name": "Create Notification Channel Template", "description": "Tool to create a notification channel template in DataRobot. Use when you need to set up notification channels for alerts, monitoring, or integration with external services. Different channel types require different parameters (e.g., Email requires emailAddress, Webhook requires payloadUrl)." }, { "slug": "DATAROBOT_CREATE_NOTIFICATION_EMAIL_CHANNEL_VERIFICATION", "name": "Send Email Verification Code for Notification Channel", "description": "Tool to send a 6-digit verification code to a user's email address for setting up a notification channel. Use this action before creating an email notification channel to verify the email address. The verification code sent via this endpoint should be used when creating the actual email notification channel." }, { "slug": "DATAROBOT_CREATE_NOTIFICATION_WEBHOOK_CHANNEL_TESTS", "name": "Create Notification Webhook Channel Test", "description": "Tool to test webhook notification channel configuration by creating a test notification. Use when you need to validate webhook settings before creating a production notification channel." }, { "slug": "DATAROBOT_CREATE_NOTIFY_EMAIL_CHANNEL_VERIFY_STATUS", "name": "Verify Email Channel Code", "description": "Verify the notification email channel verification code. Use when an admin needs to confirm their email address for notifications by entering a 6-digit verification code." }, { "slug": "DATAROBOT_CREATE_OCR_JOB_RESOURCES", "name": "Create OCR Job Resource", "description": "Tool to create an OCR (Optical Character Recognition) job resource in DataRobot. Use when you need to extract text from images or scanned documents in a dataset. The OCR job processes the input dataset and creates an output dataset with extracted text." }, { "slug": "DATAROBOT_CREATE_OTEL_METRICS_CONFIGS", "name": "Create OpenTelemetry Metric Configuration", "description": "Tool to create an OpenTelemetry metric configuration for a DataRobot entity (deployment, use case, etc.). Use when you need to set up custom metric tracking for monitoring entity performance." }, { "slug": "DATAROBOT_CREATE_OTEL_METRICS_VALUES_OVER_TIME_SEGMENTS", "name": "Get OTEL Metrics Values Over Time Segments", "description": "Tool to get OpenTelemetry metric values for a specified entity, grouped by multiple attributes. Use when analyzing metrics segmented by attributes like HTTP method, status code, or other OpenTelemetry dimensions." }, { "slug": "DATAROBOT_CREATE_PREDICTION_DATASET_FROM_DATA_SOURCE", "name": "Create Prediction Dataset from Data Source", "description": "Upload a prediction dataset from a DataSource for making predictions on a DataRobot project. Returns immediately with a status URL - the upload happens asynchronously. Use when you need to make predictions using data from an external data source connector." }, { "slug": "DATAROBOT_CREATE_PREDICTION_EXPLANATIONS_INITIALIZATION", "name": "Initialize Prediction Explanations", "description": "Tool to initialize prediction explanations for a DataRobot model. Prediction explanations help understand which features most influenced individual predictions. Use after a model is trained to enable prediction explanation insights for that model." }, { "slug": "DATAROBOT_CREATE_PROJECT", "name": "Create DataRobot Project", "description": "Create a new DataRobot project from a dataset URL, existing dataset ID, or data source connector. Returns immediately with a project ID and status URL - project creation happens asynchronously. Use DATAROBOT_CHECK_PROJECT_STATUS or DATAROBOT_GET_PROJECT to verify the project is ready before starting modeling." }, { "slug": "DATAROBOT_CREATE_PROJECT_CLONES", "name": "Clone DataRobot Project", "description": "Tool to clone an existing DataRobot project. Use when you need to create a copy of a project with its dataset and optionally its settings. Project cloning happens asynchronously - use DATAROBOT_CHECK_PROJECT_STATUS to verify completion." }, { "slug": "DATAROBOT_CREATE_PROJECTS_AUTOPILOTS", "name": "Create Projects Autopilots", "description": "Tool to start Autopilot on a DataRobot project with a specific feature list. Use when you need to initiate automated model building with specified Autopilot settings. Prerequisites: The project must be in 'modeling' stage with a target already set." }, { "slug": "DATAROBOT_CREATE_PROJECTS_BATCH_TYPE_TRANSFORM_FEATURES", "name": "Batch Transform Feature Types", "description": "Create multiple new features by transforming existing features to a different variable type. Use when you need to convert feature types in bulk (e.g., numeric to categorical, text to numeric). The operation is asynchronous - monitor the returned Location URL for completion status." }, { "slug": "DATAROBOT_CREATE_PROJECTS_BIAS_MITIGATION_FEATURE_INFO", "name": "Create Bias Mitigation Feature Info", "description": "Tool to submit a job to create bias mitigation data quality information for a given project and feature. Use when you need to create bias mitigation feature info for fairness analysis." }, { "slug": "DATAROBOT_CREATE_PROJECTS_BLENDER_MODELS", "name": "Create Blender Model", "description": "Tool to create a blender model from multiple existing models in a DataRobot project. Blenders combine predictions from multiple models using methods like averaging or stacking. Use this after training multiple models to create an ensemble that may improve prediction accuracy." }, { "slug": "DATAROBOT_CREATE_PROJECTS_CROSS_SERIES_PROPERTIES", "name": "Validate Cross-Series Properties", "description": "Tool to validate columns for potential use as the group-by column for cross-series functionality in a DataRobot project. Use when configuring multiseries or time series projects with cross-series features." }, { "slug": "DATAROBOT_CREATE_PROJECTS_DATETIME_MODELS_FROM_MODEL", "name": "Create Datetime Model From Model", "description": "Tool to retrain an existing datetime model with specified parameters. Use when you need to create a new version of a datetime model with different training settings, sample size, or feature list. This action is asynchronous and returns a job URL to monitor progress." }, { "slug": "DATAROBOT_CREATE_PROJECTS_DEPLOYMENT_READY_MODELS", "name": "Prepare Model for Deployment", "description": "Tool to prepare a DataRobot model for deployment by marking it as deployment-ready. Use when you have a trained model that needs to be packaged for deployment. The operation is asynchronous - poll the returned location URL to check completion status. After the model is deployment-ready, use DATAROBOT_CREATE_MODEL_PACKAGE to create a deployable package." }, { "slug": "DATAROBOT_CREATE_PROJECTS_FEATURE_ASSOCIATION_MATRIX", "name": "Create Feature Association Matrix", "description": "Tool to compute a feature association matrix for a DataRobot project using a specific featurelist. Use when you need to analyze feature correlations and associations in a project. The computation is asynchronous and returns immediately with a job ID to monitor progress." }, { "slug": "DATAROBOT_CREATE_PROJECTS_FEATURELISTS", "name": "Create Feature List", "description": "Tool to create a new featurelist in a DataRobot project. Use when you need to define a custom set of features for model training." }, { "slug": "DATAROBOT_CREATE_PROJECTS_FROZEN_MODELS", "name": "Create Frozen Model", "description": "Train a new frozen model with parameters from an existing model. Frozen models replicate the training parameters and hyperparameters of a source model, allowing you to retrain with different sample sizes or cluster counts while maintaining consistent methodology. Use when you want to test how a model performs with different data sizes or clustering configurations without changing its fundamental approach." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS", "name": "Train DataRobot Model", "description": "Tool to train a new model in a DataRobot project using a specific blueprint. Use this after obtaining a blueprintId from DATAROBOT_LIST_BLUEPRINTS or from existing models. The model training happens asynchronously - poll the returned location URL to monitor progress." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS_ADVANCED_TUNING", "name": "Create Advanced-Tuned Model", "description": "Submit a job to create a new version of a DataRobot model with different advanced tuning parameters. Use this to fine-tune model hyperparameters beyond the default Autopilot settings. The operation is asynchronous - poll the returned location URL to check job status." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS_FEATURE_EFFECTS", "name": "Create Feature Effects", "description": "Tool to request Feature Effects calculation for a DataRobot model. Feature Effects show how each feature impacts predictions, including partial dependence and predicted vs actual relationships. Use when you need to compute Feature Effects for model interpretability analysis. The computation is asynchronous - use the returned location URL to poll for completion status." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS_FEATURE_IMPACT", "name": "Calculate Model Feature Impact", "description": "Tool to add a request to calculate feature impact for a DataRobot model to the job queue. Use this to understand which features have the most influence on model predictions. The operation is asynchronous - poll the returned location URL to check job status." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS_FROM_MODEL", "name": "Retrain Model From Existing Model", "description": "Tool to retrain an existing model with specified parameters. Use when you need to create a new version of a model with different training settings, sample size, or feature list. This action is asynchronous and returns a job URL to monitor progress." }, { "slug": "DATAROBOT_CREATE_PROJECTS_MODELS_SHAP_IMPACT", "name": "Create SHAP Impact for Model (Deprecated)", "description": "Tool to create SHAP-based Feature Impact for a specific DataRobot model. DEPRECATED API - prefer CreateInsightsShapImpact for new implementations. This endpoint initiates an asynchronous calculation of SHAP values for feature importance. Poll the returned location URL to check status and retrieve results once the calculation completes." }, { "slug": "DATAROBOT_CREATE_PROJECTS_PAYOFF_MATRICES", "name": "Create Projects Payoff Matrices", "description": "Tool to create a payoff matrix for a binary classification project in DataRobot. Use when you need to define cost-benefit values for model predictions to evaluate profit curves. Only works with binary classification projects." }, { "slug": "DATAROBOT_CREATE_PROJECTS_PRED_DATASETS_DATASET_UPLOADS", "name": "Create Prediction Dataset Upload", "description": "Tool to create a prediction dataset upload for a DataRobot project. Use when you need to upload a dataset that will be used for making predictions on a project. Returns a new dataset ID for the prediction dataset. For time series projects, you can specify forecast points or bulk prediction date ranges." }, { "slug": "DATAROBOT_CREATE_PROJECTS_PREDICTION_DATASETS_URL_UPLOADS", "name": "Create Prediction Dataset from URL", "description": "Tool to upload a prediction dataset from a URL to a DataRobot project. Use when you need to add prediction data from a publicly accessible URL to an existing project for scoring. The upload happens asynchronously - use the returned statusId to monitor progress." }, { "slug": "DATAROBOT_CREATE_PROJECTS_PREDICTIONS", "name": "Create Project Predictions", "description": "Tool to create new predictions for a dataset using a trained model within a DataRobot project. Returns immediately with a status URL - prediction computation happens asynchronously. Use the location URL to poll for completion and retrieve results." }, { "slug": "DATAROBOT_CREATE_PROJECTS_RATING_TABLES", "name": "Create Project Rating Table", "description": "Tool to upload a modified rating table file to a DataRobot project. Use when you need to create a new rating table from a parent model. Returns the created rating table ID and name." }, { "slug": "DATAROBOT_CREATE_PROJECTS_TRAINING_PREDICTIONS", "name": "Create Project Training Predictions", "description": "Tool to create training predictions for a DataRobot project. Use when you need to compute predictions on the training data using a trained model. Returns immediately with a status URL - computation happens asynchronously." }, { "slug": "DATAROBOT_CREATE_PROJECTS_TYPE_TRANSFORM_FEATURES", "name": "Transform Feature Type", "description": "Create a new feature by changing the type of an existing feature in a DataRobot project. Use when you need to convert a single feature to a different variable type (e.g., numeric to text, categorical to numeric). The operation is asynchronous - monitor the returned Location URL for completion status." }, { "slug": "DATAROBOT_CREATE_RECIPE_FROM_RECIPE", "name": "Create Recipe from Recipe", "description": "Tool to clone an existing wrangling recipe in DataRobot. Use when you need to create a copy of an existing recipe. The cloned recipe will have the same operations and settings as the original recipe." }, { "slug": "DATAROBOT_CREATE_RECIPES_FROM_DATASET", "name": "Create Recipe from Dataset", "description": "Tool to create a DataRobot recipe from a dataset. Use when creating wrangling, SQL, or feature discovery recipes. Supports two modes: simple mode (requires dialect and status) or extended mode (requires recipeType with optional inputs and settings)." }, { "slug": "DATAROBOT_CREATE_RECIPES_FROM_DATA_STORE", "name": "Create Recipe from Data Store", "description": "Create a recipe and data source from a DataRobot data store. Use when connecting to external databases like Snowflake, BigQuery, Databricks, or Postgres to create a wrangling or SQL recipe. Requires an existing data store ID (from DATAROBOT_LIST_DATA_SOURCES) and use case ID (from GET /api/v2/useCases/)." }, { "slug": "DATAROBOT_CREATE_RECIPES_PREVIEW", "name": "Create Recipe Preview", "description": "Tool to start the job that generates a preview of the data after applying a wrangling recipe. Returns immediately with a status URL - preview generation happens asynchronously." }, { "slug": "DATAROBOT_CREATE_RECIPES_SQL", "name": "Create Recipe SQL Query", "description": "Tool to build SQL query for a DataRobot recipe. Use when you need to generate SQL from recipe operations or preview the SQL that would be executed. You can optionally override recipe operations or use input aliases instead of real table names." }, { "slug": "DATAROBOT_CREATE_RELATIONSHIPS_CONFIGURATIONS", "name": "Create Relationships Configuration", "description": "Tool to create a relationships configuration in DataRobot for connecting multiple datasets for feature engineering. Use when you need to define how datasets relate to each other for time-aware or multi-table machine learning projects. The relationships configuration enables DataRobot to automatically generate features from related datasets by defining join keys and temporal relationships." }, { "slug": "DATAROBOT_CREATE_REMOTE_EVENTS", "name": "Create Remote Events", "description": "Tool to post a remote deployment event to DataRobot. Use when you need to record custom events related to deployments such as health changes, model replacements, or prediction failures." }, { "slug": "DATAROBOT_CREATE_SECURE_CONFIG", "name": "Create Secure Configuration", "description": "Tool to create a secure configuration for storing credentials and sensitive data. Use when you need to securely store OAuth tokens, API keys, database credentials, or LLM provider credentials. The configuration can then be referenced in data sources, deployments, or other DataRobot resources." }, { "slug": "DATAROBOT_CREATE_STRING_ENCRYPTIONS", "name": "Create String Encryption", "description": "Tool to encrypt a string which DataRobot can decrypt when needed. Use when storing sensitive data like passwords or credentials that DataRobot needs to access data stores." }, { "slug": "DATAROBOT_CREATE_USAGE_DATA_EXPORTS", "name": "Create Usage Data Exports", "description": "Tool to create a customer usage data artifact request in DataRobot. Use when you need to export usage tracking data for audit, billing, or compliance purposes. Requires \"CAN_ACCESS_USER_ACTIVITY\" permission. The artifact generation is asynchronous. Poll the returned location URL to check status and retrieve the artifact ID once generation completes. The artifact will be in .zip format." }, { "slug": "DATAROBOT_CREATE_USE_CASE", "name": "Create Use Case", "description": "Tool to create a new DataRobot use case. Use when you need to create a container for organizing related projects, deployments, models, and other resources around a business problem or initiative." }, { "slug": "DATAROBOT_CREATE_USE_CASES_MULTILINK", "name": "Link Multiple Entities to Use Case", "description": "Tool to link multiple entities to a DataRobot use case in bulk. Use when you need to associate projects, notebooks, deployments, datasets, or other resources with a use case for organizational purposes." }, { "slug": "DATAROBOT_CREATE_USER_BLUEPRINT_FROM_BLUEPRINT_ID", "name": "Create User Blueprint From Blueprint", "description": "Clone a blueprint from a project to create a user blueprint. Use when you need to save a project blueprint to your catalog for reuse in other projects. The created user blueprint can be customized and applied to different datasets." }, { "slug": "DATAROBOT_CREATE_USER_BLUEPRINTS_BULK_VALIDATIONS", "name": "Validate User Blueprints in Bulk", "description": "Tool to validate multiple user blueprints in bulk and check their configuration correctness. Use when you need to verify that custom blueprints are properly configured before running them in a project." }, { "slug": "DATAROBOT_CREATE_USER_BLUEPRINTS_PROJECT_BLUEPRINTS", "name": "Add User Blueprints to Project", "description": "Add user blueprints to a DataRobot project's repository. Use when you want to make custom blueprints available for modeling in a specific project." }, { "slug": "DATAROBOT_CREATE_USER_BLUEPRINTS_TASK_PARAMETERS", "name": "Validate User Blueprint Task Parameters", "description": "Tool to validate task parameters for custom tasks in DataRobot User Blueprints. Use when building custom blueprints to verify that parameter values are acceptable before saving. Returns validation errors for any invalid parameters, or an empty errors list if all are valid." }, { "slug": "DATAROBOT_CREATE_USER_GROUP", "name": "Create User Group", "description": "Tool to create a new user group. Use when you need to add a group to an existing DataRobot organization after confirming orgId." }, { "slug": "DATAROBOT_CREATE_VALUE_TRACKERS", "name": "Create Value Tracker", "description": "Tool to create a new DataRobot value tracker for tracking ML project value and lifecycle stages. Use when you need to register a new ML initiative and track its business impact, feasibility, and stage progression. Value trackers help measure ROI and manage the lifecycle from ideation through production to retirement." }, { "slug": "DATAROBOT_CREATE_VALUE_TRACKERS_ATTACHMENTS", "name": "Create Value Tracker Attachments", "description": "Tool to attach resources to a DataRobot value tracker. Use when you need to link datasets, projects, deployments, or other objects to a value tracker for monitoring. Returns the list of successfully attached objects. Requires that the value tracker is writable and all specified objects are readable." }, { "slug": "DATAROBOT_DELETE_ACCESS_ROLE", "name": "Delete Access Role", "description": "Tool to delete a custom Access Role. Use when you need to remove a custom role by its ID after verifying the ID." }, { "slug": "DATAROBOT_DELETE_BATCH_JOB", "name": "Delete Batch Job", "description": "Tool to cancel a DataRobot batch job. Use when you need to abort a queued or running batch prediction job." }, { "slug": "DATAROBOT_DELETE_BATCH_MONITORING_JOB_DEFINITION", "name": "Delete Batch Monitoring Job Definition", "description": "Tool to delete a Batch Prediction job definition. Use when you need to permanently remove a batch monitoring job definition by its ID. Cannot delete if there are currently running jobs in the queue." }, { "slug": "DATAROBOT_DELETE_BATCH_PREDICTION", "name": "Delete Batch Prediction", "description": "Tool to cancel a DataRobot Batch Prediction job. Use when you need to abort a running or queued batch prediction job." }, { "slug": "DATAROBOT_DELETE_BATCH_PREDICTION_JOB_DEFINITION", "name": "Delete Batch Prediction Job Definition", "description": "Tool to delete a Batch Prediction job definition. Use when you need to permanently remove a job definition by its ID." }, { "slug": "DATAROBOT_DELETE_CALENDARS", "name": "Delete Calendar", "description": "Tool to delete a DataRobot calendar. Use when you need to permanently remove a calendar by its unique ID." }, { "slug": "DATAROBOT_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a DataRobot comment. Use when you need to permanently remove a comment by its unique ID." }, { "slug": "DATAROBOT_DELETE_COMPLIANCE_DOC_TEMPLATE", "name": "Delete Compliance Doc Template", "description": "Tool to delete a compliance documentation template. Use when you need to permanently remove a compliance doc template by its ID." }, { "slug": "DATAROBOT_DELETE_CREDENTIALS", "name": "Delete Credentials", "description": "Tool to delete a credentials set. Use when you need to permanently remove credentials by their unique ID." }, { "slug": "DATAROBOT_DELETE_CUSTOM_APPLICATION", "name": "Delete Custom Application", "description": "Tool to delete a DataRobot custom application. Use when you need to permanently remove an application by its unique ID." }, { "slug": "DATAROBOT_DELETE_CUSTOM_APPLICATION_SOURCES", "name": "Delete Custom Application Source", "description": "Tool to delete a custom application source with all its versions. Use when you need to permanently remove a custom application source by its ID." }, { "slug": "DATAROBOT_DELETE_CUSTOM_APPLICATION_SOURCES_VERSIONS", "name": "Delete Custom Application Source Version", "description": "Tool to delete a custom application source version if it is still mutable. Use when you need to remove a specific version of a custom application source by its ID." }, { "slug": "DATAROBOT_DELETE_CUSTOM_JOB", "name": "Delete Custom Job", "description": "Tool to delete a DataRobot custom job. Use when you need to permanently remove a custom job by its ID." }, { "slug": "DATAROBOT_DELETE_CUSTOM_MODEL", "name": "Delete Custom Model", "description": "Tool to delete a custom model in DataRobot. Use when you need to permanently remove a custom model by its unique ID. Cannot delete models that are currently deployed." }, { "slug": "DATAROBOT_DELETE_DATASET", "name": "Delete Dataset", "description": "Tool to delete a dataset from DataRobot. Use when you need to permanently remove a dataset by its unique ID." }, { "slug": "DATAROBOT_DELETE_DATASET_DEFINITIONS", "name": "Delete Dataset Definition", "description": "Tool to soft delete a dataset definition by ID. Use when you need to remove a dataset definition without permanently deleting the underlying data." }, { "slug": "DATAROBOT_DELETE_DATASET_DEFINITIONS_CHUNK_DEFINITIONS", "name": "Delete Chunk Definition", "description": "Tool to soft delete a chunk definition by ID. Use when you need to remove a chunk definition from a dataset definition." }, { "slug": "DATAROBOT_DELETE_DATASET_FEATURELIST", "name": "Delete Dataset Featurelist", "description": "Tool to delete a dataset featurelist. Use when you need to permanently remove a featurelist from a dataset by its unique ID." }, { "slug": "DATAROBOT_DELETE_DATASETS_REFRESH_JOBS", "name": "Delete Dataset Refresh Job", "description": "Tool to delete a DataRobot dataset refresh job. Use when you need to remove a scheduled dataset refresh job." }, { "slug": "DATAROBOT_DELETE_DATASETS_RELATIONSHIPS", "name": "Delete Dataset Relationship", "description": "Tool to delete a dataset relationship. Use when you need to permanently remove a relationship between datasets by their unique IDs." }, { "slug": "DATAROBOT_DELETE_DATASETS_VERSIONS", "name": "Delete Dataset Version", "description": "Tool to delete a specific version of a dataset from DataRobot's catalog. Use when you need to permanently remove a dataset version that is no longer needed." }, { "slug": "DATAROBOT_DELETE_DATA_SLICES", "name": "Delete Data Slices", "description": "Tool to delete multiple data slices in bulk. Use when you need to remove one or more data slices by their IDs. Supports deletion of up to 20 data slices in a single request." }, { "slug": "DATAROBOT_DELETE_DATA_SLICES_BY_ID", "name": "Delete Data Slice", "description": "Tool to delete a data slice. Use when you need to permanently remove a data slice by its unique ID." }, { "slug": "DATAROBOT_DELETE_DEPLOYMENT", "name": "Delete Deployment", "description": "Tool to delete a DataRobot deployment. Use when you need to permanently remove a deployment by its unique ID." }, { "slug": "DATAROBOT_DELETE_DEPLOYMENTS_ACTUALS_DATA_EXPORT", "name": "Delete Actuals Data Export", "description": "Tool to delete an actuals data export job from a deployment. Use when you need to remove an export by its unique ID." }, { "slug": "DATAROBOT_DELETE_DEPLOYMENTS_CUSTOM_METRIC", "name": "Delete Deployment Custom Metric", "description": "Tool to delete a custom metric from a deployment. Use when you need to permanently remove a custom metric by its unique ID." }, { "slug": "DATAROBOT_DELETE_DEPLOYMENTS_MONITORING_BATCHES", "name": "Delete Deployment Monitoring Batch", "description": "Tool to delete a monitoring batch from a deployment. Use when you need to permanently remove a monitoring batch by its unique ID." }, { "slug": "DATAROBOT_DELETE_DEPLOYMENTS_RETRAINING_POLICIES", "name": "Delete Deployment Retraining Policy", "description": "Tool to delete a retraining policy from a deployment. Use when you need to permanently remove a retraining policy by its unique ID." }, { "slug": "DATAROBOT_DELETE_ENTITY_NOTIFICATION_CHANNEL", "name": "Delete Entity Notification Channel", "description": "Tool to delete an entity notification channel. Use when you need to remove a notification channel from a deployment or custom job." }, { "slug": "DATAROBOT_DELETE_ENTITY_NOTIFICATION_POLICY", "name": "Delete Entity Notification Policy", "description": "Tool to delete an entity notification policy. Use when you need to remove a notification policy for a deployment or custom job." }, { "slug": "DATAROBOT_DELETE_ENTITY_TAGS", "name": "Delete Entity Tag", "description": "Tool to delete an entity tag. Use when you need to remove an entity tag by its unique ID." }, { "slug": "DATAROBOT_DELETE_EXTERNAL_DATA_SOURCE", "name": "Delete External Data Source", "description": "Tool to delete an external data source. Use when you need to permanently remove a data source by its unique ID. Note: deletion will fail if the data source is in use by one or more datasets." }, { "slug": "DATAROBOT_DELETE_EXTERNAL_DATA_STORE", "name": "Delete External Data Store", "description": "Tool to delete an external data store. Use when you need to permanently remove a data store by its unique ID. Note: deletion will fail if the data store is in use by one or more data sources." }, { "slug": "DATAROBOT_DELETE_EXTERNAL_O_AUTH_PROVIDERS", "name": "Delete External OAuth Provider", "description": "Tool to delete an external OAuth provider from DataRobot. Use when removing OAuth integrations for external services. This is an asynchronous operation that returns a job location URL for tracking deletion progress." }, { "slug": "DATAROBOT_DELETE_FILES", "name": "Delete Files", "description": "Tool to delete a file from DataRobot. Use when you need to permanently remove a file by its catalog ID." }, { "slug": "DATAROBOT_DELETE_FILES_ALL_FILES", "name": "Delete Files from Catalog", "description": "Tool to delete files or folders from a DataRobot catalog item. Use when you need to remove specific files or folders by their paths. Folder paths should end with a slash '/'. Maximum 1000 paths can be deleted in a single request." }, { "slug": "DATAROBOT_DELETE_GENAI_COST_METRIC_CONFIGURATION", "name": "Delete GenAI Cost Metric Configuration", "description": "Tool to delete a GenAI cost metric configuration. Use when you need to remove a cost metric configuration by its unique ID." }, { "slug": "DATAROBOT_DELETE_GENAI_CUSTOM_MODEL_LLM_VALIDATION", "name": "Delete GenAI Custom Model LLM Validation", "description": "Tool to delete a custom model LLM validation from DataRobot. Use when you need to remove a specific LLM validation by its ID." }, { "slug": "DATAROBOT_DELETE_GENAI_CUSTOM_MODEL_VECTOR_DB_VALIDATIONS", "name": "Delete GenAI Custom Model Vector Database Validations", "description": "Tool to delete a custom model vector database validation in DataRobot. Use when you need to remove a validation test for a custom model's vector database compatibility." }, { "slug": "DATAROBOT_DELETE_GENAI_LLM_BLUEPRINTS", "name": "Delete GenAI LLM Blueprints", "description": "Tool to delete a GenAI LLM blueprint in DataRobot. Use when you need to remove an LLM blueprint configuration by its unique ID." }, { "slug": "DATAROBOT_DELETE_GENAI_LLM_TEST_CONFIGURATIONS", "name": "Delete GenAI LLM Test Configurations", "description": "Tool to delete an LLM test configuration in DataRobot. Use when you need to remove a test configuration for LLM robustness testing." }, { "slug": "DATAROBOT_DELETE_GENAI_OOTB_METRIC_CONFIGURATION", "name": "Delete GenAI OOTB Metric Configuration", "description": "Tool to delete a GenAI out-of-the-box (OOTB) metric configuration. Use when you need to remove an OOTB metric configuration by its unique ID." }, { "slug": "DATAROBOT_DELETE_GENAI_PLAYGROUND", "name": "Delete GenAI Playground", "description": "Tool to delete a GenAI playground. Use when you need to permanently remove a playground by its unique ID." }, { "slug": "DATAROBOT_DELETE_GROUPS", "name": "Delete Multiple Groups", "description": "Tool to delete multiple user groups by their IDs in a single request. Use when you need to remove several groups at once (limit 100 per request)." }, { "slug": "DATAROBOT_DELETE_GROUPS_USERS", "name": "Remove Users from Group", "description": "Tool to remove one or more users from a DataRobot user group by groupId. Use when you need to revoke group membership for existing users. Limit 100 users per request." }, { "slug": "DATAROBOT_DELETE_MODELING_FEATURELIST", "name": "Delete Modeling Featurelist", "description": "Tool to delete a specified modeling featurelist from a DataRobot project. Use when you need to remove a modeling featurelist by its ID. Supports dry-run mode to preview deletion impact and automatic deletion of dependencies." }, { "slug": "DATAROBOT_DELETE_NOTEBOOK_CELL", "name": "Delete Notebook Cell", "description": "Tool to delete a specific cell from a DataRobot notebook. Use when you need to permanently remove a cell from a notebook by its unique ID. Use after confirming the cell is no longer needed." }, { "slug": "DATAROBOT_DELETE_NOTEBOOK_ENVIRONMENT_VARIABLES_BY_ID", "name": "Delete Notebook Environment Variable", "description": "Tool to delete a notebook environment variable by ID. Use when you need to remove an environment variable from a specific notebook." }, { "slug": "DATAROBOT_DELETE_NOTEBOOK_EXECUTION_ENVIRONMENTS_PORTS", "name": "Delete Notebook Execution Environment Port", "description": "Tool to delete an exposed port from a notebook execution environment in DataRobot. Use when you need to remove a specific port that was previously exposed for a notebook." }, { "slug": "DATAROBOT_DELETE_NOTEBOOK_JOBS", "name": "Delete Notebook Job", "description": "Tool to delete a notebook job in DataRobot. Use when you need to permanently remove a scheduled or manual notebook job by its unique ID." }, { "slug": "DATAROBOT_DELETE_NOTEBOOK_REVISION", "name": "Delete Notebook Revision", "description": "Tool to delete a specific notebook revision by its ID. Use when you need to permanently remove a notebook revision." }, { "slug": "DATAROBOT_DELETE_NOTEBOOKS", "name": "Delete Notebook", "description": "Tool to delete a notebook in DataRobot. Use when you need to permanently remove a notebook by its unique ID." }, { "slug": "DATAROBOT_DELETE_NOTIFICATION_CHANNEL_TEMPLATE", "name": "Delete Notification Channel Template", "description": "Tool to delete a notification channel template. Use when you need to permanently remove a notification channel template by its ID." }, { "slug": "DATAROBOT_DELETE_OTEL_METRICS_CONFIG", "name": "Delete OpenTelemetry Metric Configuration", "description": "Tool to delete an OpenTelemetry metric configuration for a specified entity. Use when you need to remove a metric configuration by its ID." }, { "slug": "DATAROBOT_DELETE_PAYOFF_MATRIX", "name": "Delete Payoff Matrix", "description": "Tool to delete a payoff matrix from a DataRobot project. Use when you need to permanently remove a payoff matrix by its unique ID." }, { "slug": "DATAROBOT_DELETE_PREDICTION_EXPLANATIONS_INITIALIZATION", "name": "Delete Prediction Explanations Initialization", "description": "Tool to delete an existing prediction explanations initialization for a model. Use when you need to remove prediction explanation configuration from a specific model in a project." }, { "slug": "DATAROBOT_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a DataRobot project. Use when you need to permanently remove a project by its unique ID. Use after confirming the project is no longer needed." }, { "slug": "DATAROBOT_DELETE_PROJECT_MODEL", "name": "Delete Project Model", "description": "Tool to delete a model from a DataRobot project's leaderboard. Use when you need to permanently remove a model by its ID." }, { "slug": "DATAROBOT_DELETE_PROJECT_MODEL_JOB", "name": "Delete Project Model Job", "description": "Tool to cancel a modeling job for a DataRobot project. Use when you need to stop a queued or running model job by its ID. The job must not have already completed." }, { "slug": "DATAROBOT_DELETE_PROJECTS_FEATURELISTS", "name": "Delete Feature List", "description": "Tool to delete a specified featurelist from a DataRobot project. Use when you need to remove a featurelist by its ID. Supports dry-run mode to preview deletion impact and automatic deletion of dependencies." }, { "slug": "DATAROBOT_DELETE_PROJECTS_PREDICTION_DATASETS", "name": "Delete Projects Prediction Datasets", "description": "Tool to delete a prediction dataset that was uploaded for a DataRobot project. Use when you need to permanently remove a prediction dataset by its unique ID." }, { "slug": "DATAROBOT_DELETE_QUOTA", "name": "Delete Quota", "description": "Tool to delete a quota by its ID. Use when you need to permanently remove a quota from the system." }, { "slug": "DATAROBOT_DELETE_RECIPE", "name": "Delete Recipe", "description": "Tool to delete a wrangling recipe. Use when you need to permanently remove a recipe by its unique ID." }, { "slug": "DATAROBOT_DELETE_REGISTERED_MODELS", "name": "Delete Registered Model", "description": "Tool to archive a registered model in DataRobot. Use when you need to remove a registered model by its unique ID." }, { "slug": "DATAROBOT_DELETE_SECURE_CONFIGS", "name": "Delete Secure Configuration", "description": "Tool to delete a secure configuration and its values. Use when you need to permanently remove a secure configuration by its unique ID." }, { "slug": "DATAROBOT_DELETE_SPARK_SESSIONS", "name": "Delete Spark Sessions", "description": "Tool to stop a DataRobot Spark wrangling session by size. Use when you need to terminate an active Spark session to free up resources." }, { "slug": "DATAROBOT_DELETE_STATUS", "name": "Delete Status", "description": "Tool to delete a task status object. Use when you need to remove a status entry by its unique ID." }, { "slug": "DATAROBOT_DELETE_USE_CASE", "name": "Delete Use Case", "description": "Tool to delete a DataRobot use case. Use when you need to permanently remove a use case by its unique ID." }, { "slug": "DATAROBOT_DELETE_USE_CASE_REFERENCE", "name": "Delete Use Case Reference", "description": "Tool to remove a related entity from a DataRobot use case. Use when you need to unlink a resource (dataset, project, deployment, etc.) from a use case." }, { "slug": "DATAROBOT_DELETE_USER_BLUEPRINT", "name": "Delete User Blueprint", "description": "Tool to delete a user-owned blueprint in DataRobot. Use when you need to permanently remove a user blueprint by its unique ID." }, { "slug": "DATAROBOT_DELETE_USER_BLUEPRINTS", "name": "Delete User Blueprints", "description": "Tool to delete one or more user blueprints by their IDs. Use when you need to remove custom blueprints from DataRobot. Returns lists of successfully and unsuccessfully deleted blueprint IDs." }, { "slug": "DATAROBOT_DELETE_USER_GROUP", "name": "Delete User Group", "description": "Tool to delete a user group by its ID. Use after confirming the group ID to remove that group." }, { "slug": "DATAROBOT_DELETE_USER_NOTIFICATION", "name": "Delete User Notification", "description": "Tool to delete a user notification by ID. Use when you need to permanently remove a specific notification from the user's notification list." }, { "slug": "DATAROBOT_DELETE_USER_NOTIFICATIONS", "name": "Delete All User Notifications", "description": "Tool to delete all user notifications in DataRobot. Use when you need to clear all notifications for the authenticated user." }, { "slug": "DATAROBOT_DELETE_VALUE_TRACKER", "name": "Delete Value Tracker", "description": "Tool to delete a DataRobot value tracker. Use when you need to permanently remove a value tracker by its unique ID." }, { "slug": "DATAROBOT_DETECT_EXT_DS_STANDARD_USER_DEF_FUNCTIONS", "name": "Detect External Data Store UDFs", "description": "Tool to start the job that detects standard user-defined functions for an external data store. Use when you need to detect rolling_median or rolling_most_frequent functions in a database schema." }, { "slug": "DATAROBOT_DOWNLOAD_CUSTOM_MODEL", "name": "Download Custom Model", "description": "Tool to download the latest custom model version content from DataRobot. Use when you need to retrieve a custom model archive." }, { "slug": "DATAROBOT_DOWNLOAD_CUSTOM_MODEL_VERSION", "name": "Download Custom Model Version", "description": "Tool to download custom model version content from DataRobot as a file archive. Use when you need to retrieve the full model version package including code and dependencies." }, { "slug": "DATAROBOT_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download file data from a DataRobot catalog item by streaming it. Use when you need to retrieve the actual file content from the catalog." }, { "slug": "DATAROBOT_DOWNLOAD_SCORING_CODE", "name": "Download Scoring Code", "description": "Tool to download scoring code for a DataRobot deployment. Use after deployment is active." }, { "slug": "DATAROBOT_EVALUATE_ENTITLEMENTS", "name": "Evaluate Entitlements", "description": "Tool to evaluate which entitlements are enabled for the authenticated user's DataRobot account. Use when checking feature availability or permissions before attempting operations that require specific entitlements." }, { "slug": "DATAROBOT_EXPORT_TENANT_USAGE", "name": "Export Tenant Usage", "description": "Export tenant resource usage data for billing and cost analysis. Retrieves detailed usage records including CPU, GPU, and LLM workloads for a specified tenant and date range. Use the Get Account Info action first to obtain the required tenantId. Note: Start date cannot be before 2025-07-01." }, { "slug": "DATAROBOT_FINALIZE_BATCH_PREDICTIONS_CSV_UPLOAD", "name": "Finalize Batch Predictions CSV Upload", "description": "Tool to finalize a multipart CSV upload for batch predictions. Use after uploading all CSV parts via PUT requests to submit the job to the scoring queue. Only works for jobs created with multipart=true." }, { "slug": "DATAROBOT_GET_ACCESS_ROLE", "name": "Get Access Role", "description": "Tool to retrieve details for a specific Access Role by ID. Use when you need confirmation of role permissions." }, { "slug": "DATAROBOT_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Retrieves account information for the currently authenticated user, including user ID (uid), email, name, tenant ID, and organization ID (orgId). No parameters required. Use this action to get the current user's orgId for listing organization users or tenantId for tenant-level operations." }, { "slug": "DATAROBOT_GET_ACCURACY_METRICS_CONFIG", "name": "Get Accuracy Metrics Config", "description": "Tool to retrieve which accuracy metrics are displayed and their order for a deployment. Use when you need the configured metrics order for a deployment." }, { "slug": "DATAROBOT_GET_ACCURACY_OVER_TIME", "name": "Get Accuracy Over Time", "description": "Tool to retrieve baseline and accuracy metric values over time buckets for a deployment. Use when analyzing model performance trends; call after confirming the deployment is live." }, { "slug": "DATAROBOT_GET_BATCH_JOB", "name": "Get Batch Job", "description": "Tool to retrieve a DataRobot batch job by ID. Use when you need details about a specific batch prediction or monitoring job." }, { "slug": "DATAROBOT_GET_BATCH_PREDICTION_JOB_DEFINITION", "name": "Get Batch Prediction Job Definition", "description": "Tool to retrieve a Batch Prediction job definition by ID. Use when you need to inspect configuration or check scheduling status." }, { "slug": "DATAROBOT_GET_BATCH_PREDICTION_JOB_DEFINITION_PORTABLE", "name": "Get Portable Batch Prediction Job Definition", "description": "Tool to retrieve a portable batch prediction job definition snippet. Use when you need the configuration to run portable batch predictions outside DataRobot." }, { "slug": "DATAROBOT_GET_BATCH_PREDICTIONS", "name": "Get Batch Predictions", "description": "Tool to retrieve a Batch Prediction job by ID. Use when you need to check the status or details of a batch prediction job." }, { "slug": "DATAROBOT_GET_CALENDARS", "name": "Get Calendar", "description": "Tool to retrieve information about a calendar by ID. Use when you need calendar details including events and format." }, { "slug": "DATAROBOT_GET_CATALOG_ITEM", "name": "Get Catalog Item", "description": "Tool to retrieve catalog item details by ID. Use when you need information about a specific catalog item including its status, type, and metadata." }, { "slug": "DATAROBOT_GET_CHANGE_REQUEST", "name": "Get Change Request", "description": "Tool to retrieve a DataRobot change request by ID. Use when you need details about a pending or completed change request for a deployment." }, { "slug": "DATAROBOT_GET_COMPLIANCE_DOC_TEMPLATE", "name": "Get Compliance Doc Template", "description": "Tool to retrieve a compliance documentation template by ID. Use when you need to view template details, structure, or sections before generating compliance documents." }, { "slug": "DATAROBOT_GET_CREDENTIALS", "name": "Get Credentials", "description": "Tool to retrieve the credentials set by ID. Use when you need to fetch details of a specific credential." }, { "slug": "DATAROBOT_GET_CREDENTIALS_ASSOCIATIONS", "name": "Get Credentials Associations", "description": "Tool to list credentials associated with a specific object. Use when you need to retrieve credentials linked to a data connection or batch prediction job definition." }, { "slug": "DATAROBOT_GET_CUSTOM_APPLICATION_SOURCE", "name": "Get Custom Application Source", "description": "Tool to retrieve a custom application source by ID. Use when you need to get details about a specific custom application source." }, { "slug": "DATAROBOT_GET_CUSTOM_JOB", "name": "Get Custom Job", "description": "Tool to retrieve a custom job by ID. Use when you need details about a specific DataRobot custom job." }, { "slug": "DATAROBOT_GET_CUSTOM_JOB_ITEM", "name": "Get Custom Job Item", "description": "Tool to retrieve custom job file content by custom job ID and item ID. Use when you need to access the contents of a specific file associated with a DataRobot custom job." }, { "slug": "DATAROBOT_GET_CUSTOM_MODELS", "name": "Get Custom Model", "description": "Tool to retrieve a DataRobot custom model by ID. Use when you need custom model metadata and version details before deployment or testing." }, { "slug": "DATAROBOT_GET_CUSTOM_MODEL_VERSION", "name": "Get Custom Model Version", "description": "Tool to retrieve a specific custom model version in DataRobot. Use when you need details about a particular version of a custom model." }, { "slug": "DATAROBOT_GET_CUSTOM_TEMPLATE", "name": "Get Custom Template", "description": "Tool to retrieve a single custom template by ID from DataRobot. Use when you need to get detailed information about a specific custom template." }, { "slug": "DATAROBOT_GET_CUSTOM_TEMPLATES_FILES", "name": "Get Custom Templates Files", "description": "Tool to retrieve a single custom template file by its ID. Use when you need to access the content and metadata of a specific file within a custom template." }, { "slug": "DATAROBOT_GET_DATA_ENGINE_WORKSPACE_STATE", "name": "Get Data Engine Workspace State", "description": "Tool to retrieve a data engine workspace state by ID. Use when you need details about a specific data engine query execution." }, { "slug": "DATAROBOT_GET_DATASET", "name": "Get Dataset", "description": "Tool to retrieve a dataset by ID from DataRobot's catalog. Use when you need detailed metadata about a specific dataset." }, { "slug": "DATAROBOT_GET_DATASET_DEFINITION", "name": "Get Dataset Definition", "description": "Tool to retrieve a dataset definition by ID. Use when you need to inspect dataset schema, size, or metadata before using it in modeling or predictions." }, { "slug": "DATAROBOT_GET_DATASET_FEATURELIST", "name": "Get Dataset Featurelist", "description": "Tool to retrieve a specific featurelist from a dataset. Use when you need to get details of a dataset featurelist including its features and metadata." }, { "slug": "DATAROBOT_GET_DATASET_FILE", "name": "Get Dataset File", "description": "Tool to download the original dataset file from DataRobot. Use when you need to retrieve the raw data for a dataset. Note: dataset must have dataPersisted=true and be a snapshot to be downloadable." }, { "slug": "DATAROBOT_GET_DATASETS_FEATURE_HISTOGRAMS", "name": "Get Dataset Feature Histogram", "description": "Tool to retrieve histogram data for a specific feature in a dataset. Use when you need to analyze the distribution of values for a feature in the DataRobot dataset catalog." }, { "slug": "DATAROBOT_GET_DATASETS_FEATURE_TRANSFORMS", "name": "Get Dataset Feature Transform", "description": "Tool to retrieve a feature transform for a specific dataset feature. Use when you need details about how a feature was transformed in DataRobot." }, { "slug": "DATAROBOT_GET_DATASETS_REFRESH_JOB", "name": "Get Dataset Refresh Job", "description": "Tool to retrieve a scheduled dataset refresh job by ID. Use when you need details about a specific dataset refresh schedule configuration." }, { "slug": "DATAROBOT_GET_DATASETS_VERSIONS", "name": "Get Dataset Version", "description": "Tool to retrieve detailed information about a specific dataset version. Use when you need to inspect dataset metadata, schema, and processing state for a particular version." }, { "slug": "DATAROBOT_GET_DATASETS_VERSIONS_FEATURE_HISTOGRAMS", "name": "Get Dataset Feature Histogram", "description": "Tool to retrieve dataset feature histogram from DataRobot. Use when you need to visualize feature value distributions or understand feature characteristics." }, { "slug": "DATAROBOT_GET_DATASETS_VERSIONS_FEATURELISTS", "name": "Get Dataset Version Featurelist", "description": "Tool to retrieve a specific featurelist from a dataset version. Use when you need to get details of a featurelist associated with a specific version of a dataset." }, { "slug": "DATAROBOT_GET_DATA_SLICE", "name": "Get Data Slice", "description": "Tool to retrieve a Data Slice by ID. Use when you need to inspect a data slice configuration or filters for a project." }, { "slug": "DATAROBOT_GET_DATETIME_PARTITIONING", "name": "Get Datetime Partitioning", "description": "Tool to retrieve datetime partitioning configuration for a project. Use when you need to inspect a project's time-series settings before modeling." }, { "slug": "DATAROBOT_GET_DEPLOYMENT", "name": "Get Deployment", "description": "Tool to retrieve a deployment by ID. Use after creating or updating a deployment to fetch its full metadata and status." }, { "slug": "DATAROBOT_GET_DEPLOYMENT_ACCURACY", "name": "Get Deployment Accuracy", "description": "Tool to retrieve accuracy metrics for a deployment over a time period. Use when you need to analyze model performance trends or drift for a specific deployment." }, { "slug": "DATAROBOT_GET_DEPLOYMENT_CAPABILITIES", "name": "Get Deployment Capabilities", "description": "Tool to retrieve the capabilities for a deployment. Use after creating or loading a deployment to check supported features." }, { "slug": "DATAROBOT_GET_DEPLOYMENT_CHAMPION_MODEL_PACKAGE", "name": "Get Deployment Champion Model Package", "description": "Tool to retrieve the champion model package for a deployment. Use when you need detailed information about the model package currently deployed as champion." }, { "slug": "DATAROBOT_GET_DEPLOYMENT_FEATURES", "name": "Get Deployment Features", "description": "Tool to retrieve features in the universe dataset associated with a deployment. Use after deployment creation to explore its feature set." }, { "slug": "DATAROBOT_GET_DEPLOYMENTS_ACTUALS_DATA_EXPORT", "name": "Get Deployment Actuals Data Export", "description": "Tool to retrieve a single actuals data export for a deployment. Use when you need to check the status or results of an actuals data export job." }, { "slug": "DATAROBOT_GET_DEPLOYMENTS_CUSTOM_METRIC", "name": "Get Deployment Custom Metric", "description": "Tool to retrieve a single custom metric metadata for a deployment. Use when you need detailed information about a specific custom metric configured for a deployment." }, { "slug": "DATAROBOT_GET_DEPLOYMENT_SETTINGS_CHECKLIST", "name": "Get Deployment Settings Checklist", "description": "Tool to return a checklist of deployment settings and their configuration state. Use when you need to verify which settings are set, partial, or not set for a given deployment." }, { "slug": "DATAROBOT_GET_DEPLOYMENTS_MONITORING_BATCHES", "name": "Get Deployment Monitoring Batch", "description": "Tool to retrieve a monitoring batch in a deployment. Use when you need to check the status or details of a specific monitoring batch." }, { "slug": "DATAROBOT_GET_DEPLOYMENTS_PREDICTION_DATA_EXPORTS", "name": "Get Deployment Prediction Data Export", "description": "Tool to retrieve a single prediction data export for a deployment. Use when you need to check the status or results of a prediction data export job." }, { "slug": "DATAROBOT_GET_DEPLOYMENTS_TRAINING_DATA_EXPORTS", "name": "Get Deployment Training Data Export", "description": "Tool to retrieve a single training data export for a deployment. Use when you need to get details of a training data export by ID." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_CHANNEL_BY_ID", "name": "Get Entity Notification Channel By ID", "description": "Tool to retrieve an entity notification channel by ID for a specific deployment or custom job. Use when you need to get details about a notification channel configuration." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_CHANNELS", "name": "Get Entity Notification Channels", "description": "Tool to list notification channels related to a specific entity. Use when retrieving notification channels for a deployment or custom job." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_POLICIES", "name": "Get Entity Notification Policies", "description": "Tool to list entity notification policies for deployments or custom jobs. Use when retrieving notification configurations for a specific entity." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_POLICY_BY_ID", "name": "Get Entity Notification Policy by ID", "description": "Tool to retrieve an entity notification policy by ID. Use when you need to fetch details about a specific notification policy for a deployment or custom job." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_POLICY_TEMPLATES", "name": "Get Entity Notification Policy Templates", "description": "Tool to list entity notification policy templates for a specific entity type. Use when retrieving notification policy templates for deployments or custom jobs." }, { "slug": "DATAROBOT_GET_ENTITY_NOTIFICATION_POLICY_TEMPLATES_BY_ID", "name": "Get Entity Notification Policy Template by ID", "description": "Tool to retrieve a specific entity notification policy template by ID. Use when you need to fetch details about a specific notification policy template for a deployment or custom job." }, { "slug": "DATAROBOT_GET_EXECUTION_ENVIRONMENT", "name": "Get Execution Environment", "description": "Tool to retrieve details about a specific execution environment by its ID. Use when you need to check environment configuration, versions, and deployment status." }, { "slug": "DATAROBOT_GET_EXECUTION_ENVIRONMENTS_VERSIONS", "name": "Get Execution Environment Version", "description": "Tool to retrieve a specific execution environment version by ID. Use when you need details about a particular environment version's build status, Docker context, and configuration." }, { "slug": "DATAROBOT_GET_EXTERNAL_DATA_DRIVERS", "name": "Get External Data Driver", "description": "Tool to retrieve external data driver details by driver ID. Use when you need driver metadata, configuration, or authentication types." }, { "slug": "DATAROBOT_GET_EXTERNAL_DATA_SOURCE", "name": "Get External Data Source", "description": "Tool to retrieve external data source details by ID. Use when you need to inspect data source configuration or metadata." }, { "slug": "DATAROBOT_GET_EXTERNAL_DATA_STORES", "name": "Get External Data Store", "description": "Tool to retrieve external data store details by ID. Use when you need information about a specific data store configuration." }, { "slug": "DATAROBOT_GET_EXTERNAL_DRIVER_CONFIGURATIONS", "name": "Get External Driver Configurations", "description": "Tool to retrieve external driver configuration details by ID. Use when you need driver configuration metadata including JDBC settings, field schemas, and authentication types." }, { "slug": "DATAROBOT_GET_EXTERNAL_O_AUTH_PROVIDER", "name": "Get External OAuth Provider", "description": "Tool to retrieve an external OAuth provider by ID. Use when you need the provider's configuration and connection details." }, { "slug": "DATAROBOT_GET_FEATURELIST", "name": "Get Feature List", "description": "Tool to retrieve a specific feature list by ID. Use when you need detailed information about a particular feature list in a DataRobot project." }, { "slug": "DATAROBOT_GET_FROZEN_MODEL", "name": "Get Frozen Model", "description": "Tool to retrieve a frozen model from a DataRobot project. Use when you need details about a specific frozen model's configuration and performance metrics." }, { "slug": "DATAROBOT_GET_GENAI_CHAT", "name": "Get GenAI Chat", "description": "Tool to retrieve a GenAI chat by ID. Use when you need to fetch chat details including status, associated LLM blueprint, and prompt count." }, { "slug": "DATAROBOT_GET_GENAI_CHAT_PROMPT", "name": "Get GenAI Chat Prompt", "description": "Tool to retrieve a GenAI chat prompt by ID. Use when you need to fetch details about a specific chat prompt interaction." }, { "slug": "DATAROBOT_GET_GENAI_COMPARISON_CHATS", "name": "Get GenAI Comparison Chat", "description": "Tool to retrieve a GenAI comparison chat by ID. Use when you need to fetch details about a specific comparison chat in DataRobot's GenAI playground." }, { "slug": "DATAROBOT_GET_GENAI_CUSTOM_MODEL_LLM_VALIDATIONS", "name": "Get GenAI Custom Model LLM Validations", "description": "Tool to retrieve a GenAI custom model LLM validation by ID. Use when you need validation details, status, or configuration for a custom model deployment." }, { "slug": "DATAROBOT_GET_GENAI_LLM", "name": "Get GenAI LLM", "description": "Tool to retrieve details for a specific GenAI LLM by its ID. Use when you need to get configuration, settings, or metadata for a particular language model." }, { "slug": "DATAROBOT_GET_GENAI_LLM_TEST_SUITE", "name": "Get GenAI LLM Test Suite", "description": "Tool to retrieve a GenAI LLM test suite by ID. Use when you need details about a specific LLM test suite configuration." }, { "slug": "DATAROBOT_GET_GENAI_OOTB_METRIC_CONFIGURATION", "name": "Get GenAI OOTB Metric Configuration", "description": "Tool to retrieve a GenAI OOTB metric configuration by ID. Use when you need details about a specific out-of-the-box metric configuration for GenAI playgrounds." }, { "slug": "DATAROBOT_GET_GENAI_PLAYGROUNDS", "name": "Get GenAI Playground", "description": "Tool to retrieve a DataRobot GenAI playground by ID. Use when you need playground details for GenAI operations." }, { "slug": "DATAROBOT_GET_GUARD_CONFIGURATION", "name": "Get Guard Configuration", "description": "Tool to retrieve a DataRobot guard configuration by ID. Use when you need to inspect or verify guard settings for custom models, playgrounds, or other entities." }, { "slug": "DATAROBOT_GET_GUARD_TEMPLATES", "name": "Get Guard Template", "description": "Tool to retrieve information about a guard template by ID. Use when you need details about a specific guardrail template." }, { "slug": "DATAROBOT_GET_INSIGHTS_DATA_QUALITY_REPORT_DATASET_VERSIONS", "name": "Get Data Quality Report for Dataset Version Feature", "description": "Tool to retrieve data quality report for a feature of a dataset version. Use when you need to assess data quality issues for a specific feature." }, { "slug": "DATAROBOT_GET_INSIGHTS_DATA_QUALITY_SUMMARY_DATASETS", "name": "Get Data Quality Summary for Dataset", "description": "Tool to retrieve data quality summary for a dataset. Use when you need to assess data quality issues, check for anomalies, or review data quality check results before modeling." }, { "slug": "DATAROBOT_GET_INSIGHTS_DATA_QUALITY_SUMMARY_DATASET_VERSIONS", "name": "Get Data Quality Summary for Dataset Version", "description": "Tool to retrieve data quality summary for a dataset version. Use when you need to check data quality issues, warnings, or recommendations for a specific dataset version." }, { "slug": "DATAROBOT_GET_INSIGHTS_FEATURE_EFFECTS_MODELS", "name": "Get Model Feature Effects Insights", "description": "Tool to retrieve feature effects insights for a DataRobot model. Use when analyzing feature importance and impact on model predictions for a specific data source (validation, training, or backtest)." }, { "slug": "DATAROBOT_GET_INSIGHTS_FEATURE_IMPACT_MODELS", "name": "Get Feature Impact Insights", "description": "Tool to retrieve feature impact insights for a DataRobot model. Use when you need to understand which features are most important in model predictions. Supports filtering by data slice, source partition, and pagination for large result sets." }, { "slug": "DATAROBOT_GET_INSIGHTS_LIFT_CHART_MODELS", "name": "Get Lift Chart Insights", "description": "Tool to retrieve Lift chart insights for a DataRobot model. Use when you need to analyze model performance across different population segments, comparing predicted vs actual outcomes. Supports filtering by data slice, source partition, and pagination for large result sets." }, { "slug": "DATAROBOT_GET_INSIGHTS_ROC_CURVE_MODELS", "name": "Get ROC Curve Insights for Model", "description": "Tool to retrieve paginated ROC curve insights for a specific model. Use when you need to analyze model performance using ROC curves for different data sources or slices." }, { "slug": "DATAROBOT_GET_INSIGHTS_SHAP_DISTRIBUTIONS_MODELS", "name": "Get SHAP Distributions Insights", "description": "Tool to retrieve SHAP (SHapley Additive exPlanations) distribution insights for a DataRobot model. Use when you need to understand how feature values contribute to model predictions across the dataset. SHAP distributions show how features impact predictions for different data subsets, helping explain model behavior. Supports filtering by data slice, source partition, external datasets, and pagination for large result sets." }, { "slug": "DATAROBOT_GET_INSIGHTS_SHAP_IMPACT_MODELS", "name": "Get SHAP Impact Insights for Model", "description": "Tool to retrieve paginated SHAP Impact insights for a specific model. Use when analyzing feature importance and impact on model predictions for a given model ID." }, { "slug": "DATAROBOT_GET_INSIGHTS_SHAP_PREVIEW_MODELS", "name": "Get SHAP Preview Insights for Model", "description": "Tool to retrieve SHAP Preview insights for a DataRobot model. Use when analyzing feature importance and SHAP values for model predictions." }, { "slug": "DATAROBOT_GET_MLOPS_COMPUTE_BUNDLE", "name": "Get MLOps Compute Bundle", "description": "Tool to retrieve a specific MLOps compute bundle by ID. Use when you need to check resource specifications (CPU, memory, GPU) for deployments or custom models." }, { "slug": "DATAROBOT_GET_MODEL_NUM_ITERATIONS_TRAINED", "name": "Get Model Number of Iterations Trained", "description": "Tool to retrieve the number of iterations trained for a DataRobot model. Use when you need early stopping information for a specific model." }, { "slug": "DATAROBOT_GET_MODEL_PACKAGE", "name": "Get Model Package", "description": "Tool to retrieve a model package by ID. Use when you need detailed information about a specific model package including capabilities, datasets, target info, and deployment status." }, { "slug": "DATAROBOT_GET_MODEL_WORD_CLOUD", "name": "Get Model Word Cloud", "description": "Tool to retrieve word cloud data for a DataRobot text-based model. Returns the most important ngrams (words/phrases) with their coefficients, frequencies, and counts. Use when analyzing feature importance for NLP models or understanding which text features drive predictions." }, { "slug": "DATAROBOT_GET_NOTEBOOK", "name": "Get Notebook", "description": "Tool to retrieve a specific DataRobot notebook by ID. Use when you need detailed information about a specific notebook." }, { "slug": "DATAROBOT_GET_NOTEBOOK_CODE_SNIPPET", "name": "Get Notebook Code Snippet", "description": "Tool to retrieve a notebook code snippet by ID. Use when you need to fetch details of a specific code snippet from DataRobot notebooks." }, { "slug": "DATAROBOT_GET_NOTEBOOK_ENVIRONMENT_VARIABLES", "name": "Get Notebook Environment Variables", "description": "Tool to retrieve notebook environment variables by ID. Use when you need to view configured environment variables for a specific notebook." }, { "slug": "DATAROBOT_GET_NOTEBOOK_EXECUTION_ENVIRONMENT", "name": "Get Notebook Execution Environment", "description": "Tool to retrieve a notebook execution environment by ID. Use when you need details about a specific execution environment configuration." }, { "slug": "DATAROBOT_GET_NOTEBOOK_EXECUTION_STATUS", "name": "Get Notebook Execution Status", "description": "Tool to retrieve the execution status of a DataRobot notebook. Use when you need to check the current execution state of a notebook, including running status and queued cells." }, { "slug": "DATAROBOT_GET_NOTEBOOK_JOBS", "name": "Get Notebook Job", "description": "Tool to retrieve a DataRobot notebook job by ID. Use when you need to inspect the configuration, schedule, or status of a specific notebook job." }, { "slug": "DATAROBOT_GET_NOTEBOOK_REVISIONS_BY_ID", "name": "Get Notebook Revision by ID", "description": "Tool to retrieve a specific notebook revision by notebook ID and revision ID. Use when you need details about a particular saved version of a notebook." }, { "slug": "DATAROBOT_GET_NOTIFICATION_CHANNEL_TEMPLATES", "name": "Get Notification Channel Template", "description": "Tool to retrieve a specific notification channel template by ID. Use when you need to fetch details about a notification channel template configuration." }, { "slug": "DATAROBOT_GET_NOTIFICATION_WEBHOOK_CHANNEL_TESTS", "name": "Get Notification Webhook Channel Tests", "description": "Tool to retrieve the status of a notification webhook channel test. Use when checking test results after creating a webhook channel test." }, { "slug": "DATAROBOT_GET_OTEL_METRICS_CONFIGS", "name": "Get OpenTelemetry Metric Configuration", "description": "Tool to retrieve an OpenTelemetry metric configuration for a specific entity. Use when you need details about OTel metrics for deployments, use cases, or other DataRobot entities." }, { "slug": "DATAROBOT_GET_OTEL_METRICS_VALUES_OVER_TIME_SEGMENTS", "name": "Get OTel Metrics Values Over Time Segments", "description": "Tool to get OpenTelemetry metric values grouped by segments attribute. Use when analyzing metrics across different segment values." }, { "slug": "DATAROBOT_GET_OTEL_METRICS_VALUES_SEGMENTS", "name": "Get OTel Metrics Values by Segments", "description": "Tool to retrieve OpenTelemetry metric values grouped by a segment attribute over a time period. Use when analyzing metrics segmented by attributes like model version or deployment ID." }, { "slug": "DATAROBOT_GET_OTEL_TRACES", "name": "Get OpenTelemetry Traces", "description": "Tool to retrieve OpenTelemetry traces for monitoring and debugging. Use when you need to inspect trace details for deployments, use cases, or other entities." }, { "slug": "DATAROBOT_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a DataRobot project by ID. Use when you need project metadata before further operations." }, { "slug": "DATAROBOT_GET_PROJECT_ACCESS_CONTROL", "name": "Get Project Access Control", "description": "Tool to list users with their roles on a project. Use after assigning permissions or when auditing project access. Example prompt: \"List access control entries for project 5f6a7b8c9d0e1f2a3b4c5d6e, first page of 20.\"" }, { "slug": "DATAROBOT_GET_PROJECT_BLUEPRINT", "name": "Get Project Blueprint", "description": "Tool to retrieve a blueprint by its ID. Use when you need blueprint metadata and model details for a specific project." }, { "slug": "DATAROBOT_GET_PROJECT_BLUEPRINT_JSON", "name": "Get Project Blueprint JSON", "description": "Tool to retrieve the JSON representation of a DataRobot blueprint. Use when you need the detailed blueprint structure with task configurations." }, { "slug": "DATAROBOT_GET_PROJECT_JOB", "name": "Get Project Job", "description": "Tool to retrieve details for an in-progress project job. Use after starting a project job to monitor its status before completion." }, { "slug": "DATAROBOT_GET_PROJECT_MULTICATEGORICAL_INVALID_FORMAT_FILE", "name": "Get Project Multicategorical Invalid Format File", "description": "Tool to retrieve a file with format errors of potential multicategorical features for a DataRobot project. Use when you need to inspect formatting issues in multicategorical features." }, { "slug": "DATAROBOT_GET_PROJECTS_BATCH_TYPE_TRANSFORM_FEATURES_RESULT", "name": "Get Batch Type Transform Features Result", "description": "Tool to retrieve the result of a batch variable type transformation. Use when you need to check the status and outcome of a feature type transformation job." }, { "slug": "DATAROBOT_GET_PROJECTS_DUPLICATE_IMAGES", "name": "Get Projects Duplicate Images", "description": "Tool to get a list of duplicate images containing the number of occurrences of each image. Use when analyzing Visual AI projects for duplicate images." }, { "slug": "DATAROBOT_GET_PROJECTS_FEATURE_HISTOGRAMS", "name": "Get Project Feature Histograms", "description": "Tool to retrieve feature histogram data for a specific feature in a DataRobot project. Use when you need to visualize feature distributions or analyze feature value patterns." }, { "slug": "DATAROBOT_GET_PROJECTS_FEATURES", "name": "Get Project Feature", "description": "Tool to retrieve detailed information about a specific feature in a DataRobot project. Use when you need to inspect feature properties, statistics, or metadata for a given feature name." }, { "slug": "DATAROBOT_GET_PROJECTS_MODELING_FEATURELISTS", "name": "Get Modeling Featurelist", "description": "Tool to retrieve a single modeling featurelist by ID. Use when you need details about a specific featurelist within a DataRobot project." }, { "slug": "DATAROBOT_GET_PROJECTS_MODELING_FEATURES", "name": "Get Project Modeling Feature", "description": "Tool to retrieve detailed information about a specific modeling feature in a DataRobot project. Use when you need to inspect modeling feature properties, statistics, importance, or metadata for a given feature name." }, { "slug": "DATAROBOT_GET_PROJECTS_MODELS", "name": "Get Project Model", "description": "Tool to retrieve a model from a DataRobot project. Use when you need details about a specific model's configuration, performance metrics, and training settings." }, { "slug": "DATAROBOT_GET_PROJECTS_MODELS_LIFT_CHART", "name": "Get Lift Chart", "description": "Tool to retrieve lift chart data from a single source for a project model. Use when you need to analyze lift chart performance metrics for a specific data source like validation, crossValidation, holdout, or backtests." }, { "slug": "DATAROBOT_GET_PROJECTS_MODELS_ROC_CURVE", "name": "Get Model ROC Curve", "description": "Tool to retrieve ROC curve data for a specific model from a single data source. Use when analyzing binary classification model performance across different thresholds." }, { "slug": "DATAROBOT_GET_PROJECTS_PREDICTION_DATASETS", "name": "Get Projects Prediction Datasets", "description": "Tool to get metadata of a specific prediction dataset in a DataRobot project. Use when you need to retrieve details about a dataset uploaded for prediction." }, { "slug": "DATAROBOT_GET_PROJECTS_RATING_TABLE_MODELS", "name": "Get Project Rating Table Model", "description": "Tool to retrieve a rating table model from a DataRobot project. Use when you need details about a specific rating table model's configuration, performance metrics, and training settings." }, { "slug": "DATAROBOT_GET_PROJECTS_RATING_TABLES", "name": "Get Project Rating Table", "description": "Tool to retrieve rating table information from a DataRobot project. Use when you need details about a specific rating table including validation status and associated models." }, { "slug": "DATAROBOT_GET_PROJECTS_TRAINING_PREDICTIONS", "name": "Get Project Training Predictions", "description": "Tool to retrieve training predictions for a project. Use when you need to access prediction results from model training for analysis or validation purposes." }, { "slug": "DATAROBOT_GET_QUOTAS", "name": "Get Quotas", "description": "Tool to retrieve a specific quota by ID. Use when you need details about resource quotas and policies." }, { "slug": "DATAROBOT_GET_QUOTA_TEMPLATE", "name": "Get Quota Template", "description": "Tool to retrieve a specific quota template by ID. Use when you need details of a particular quota template." }, { "slug": "DATAROBOT_GET_RECIPE_OPERATION", "name": "Get Recipe Operation", "description": "Tool to retrieve details of a specific operation from a wrangling recipe. Use when inspecting individual data transformation steps." }, { "slug": "DATAROBOT_GET_RECIPES", "name": "Get Recipe", "description": "Tool to retrieve a DataRobot wrangling recipe by ID. Use when you need details about a specific recipe." }, { "slug": "DATAROBOT_GET_RECOMMENDED_SETTINGS", "name": "Get Recommended Settings", "description": "Tool to retrieve configured recommended settings for an entity type. Use when you need to get recommended configuration settings for deployments or other entities." }, { "slug": "DATAROBOT_GET_REGISTERED_MODEL", "name": "Get Registered Model", "description": "Tool to retrieve a registered model by ID. Use when you need to fetch metadata about a specific registered model." }, { "slug": "DATAROBOT_GET_REGISTERED_MODEL_VERSION", "name": "Get Registered Model Version", "description": "Tool to retrieve a specific version of a registered model. Use when you need detailed information about a registered model version including its capabilities, datasets, target info, and deployment status." }, { "slug": "DATAROBOT_GET_SECURE_CONFIG", "name": "Get Secure Config", "description": "Tool to retrieve a secure configuration by ID. Use when you need to inspect secure configuration metadata before performing operations." }, { "slug": "DATAROBOT_GET_SECURE_CONFIG_SCHEMA", "name": "Get Secure Config Schema", "description": "Tool to retrieve a secure configuration schema by ID. Use when you need the schema definition for a secure config." }, { "slug": "DATAROBOT_GET_TENANT_ACTIVE_USERS", "name": "Get Tenant Active Users", "description": "Retrieve active users in a tenant over a date range. Returns a list of users who were active during the specified period. Use when an admin needs to audit user activity or generate usage reports. Note: The start date must be on or after 2025-07-01." }, { "slug": "DATAROBOT_GET_USE_CASES", "name": "Get Use Case", "description": "Tool to retrieve a DataRobot use case by ID. Use when you need to get details about a specific use case including its metadata, associated resources, and member information." }, { "slug": "DATAROBOT_GET_USE_CASES_DATASETS", "name": "Get Use Cases Datasets", "description": "Tool to get dataset details in the scope of a use case. Use when you need detailed information about a specific dataset within a use case context." }, { "slug": "DATAROBOT_GET_USER_GROUP", "name": "Get User Group", "description": "Tool to retrieve a user group by its ID. Use when you need the group's properties and permissions." }, { "slug": "DATAROBOT_GET_VALUE_TRACKER", "name": "Get Value Tracker", "description": "Tool to retrieve a value tracker by ID. Use when you need to get details about a specific value tracker." }, { "slug": "DATAROBOT_GET_VALUE_TRACKER_VALUE_TEMPLATES", "name": "Get Value Tracker Value Templates", "description": "Tool to retrieve a value tracker value template by its type. Use when you need to understand the schema and parameters for classification or regression value tracking." }, { "slug": "DATAROBOT_INITIALIZE_MODEL_COMPLIANCE_DOCS", "name": "Initialize Model Compliance Documentation", "description": "Tool to initialize compliance documentation pre-processing for a model or model package. Use when you need to prepare a model for compliance document generation. The initialization is asynchronous. Poll the returned location URL to check status and wait for completion before generating compliance documents." }, { "slug": "DATAROBOT_INVITE_USERS", "name": "Invite Users", "description": "Tool to invite multiple users by email to join the DataRobot platform. Use when you need to send invitation emails to new users. The API returns a 202 status with a Location header to poll for job status." }, { "slug": "DATAROBOT_LINK_ENTITY_TO_USE_CASE", "name": "Link Entity to Use Case", "description": "Tool to link a single entity to a DataRobot use case. Use when you need to associate a project, dataset, notebook, deployment, or other resource with a use case for organizational purposes." }, { "slug": "DATAROBOT_LINK_NOTEBOOKS_BULK_TO_USE_CASE", "name": "Link Notebooks to Use Case (Bulk)", "description": "Tool to bulk link multiple DataRobot notebooks to a use case. Use when you need to associate multiple notebooks with a specific use case in DataRobot Workbench. All notebook IDs and the use case ID must be valid 24-character hexadecimal ObjectIds." }, { "slug": "DATAROBOT_LIST_ACCESS_ROLES", "name": "List Access Roles", "description": "Tool to list access roles. Use when you need to retrieve available access roles, with optional global filtering." }, { "slug": "DATAROBOT_LIST_ACCESS_ROLE_USERS", "name": "List Access Role Users", "description": "Tool to list users assigned to an Access Role. Use when you need to fetch all users directly, via groups, or via organization by role ID." }, { "slug": "DATAROBOT_LIST_APPLICATIONS", "name": "List Applications", "description": "Tool to list DataRobot applications created by the authenticated user. Use when retrieving a paginated list of applications." }, { "slug": "DATAROBOT_LIST_APPLICATION_TEMPLATES", "name": "List Application Templates", "description": "Tool to list application templates the user has access to. Use when browsing available application templates in DataRobot." }, { "slug": "DATAROBOT_LIST_APPLICATION_TEMPLATES_MEDIA", "name": "List Application Templates Media", "description": "Tool to retrieve an application template image from DataRobot. Use when you need to download the media/image associated with a specific application template." }, { "slug": "DATAROBOT_LIST_APPROVAL_POLICY_MATCH", "name": "List Approval Policy Match", "description": "Tool to find approval policy ID matching the query. Use when determining which approval policy applies to a specific entity type and action." }, { "slug": "DATAROBOT_LIST_APPROVAL_POLICY_TRIGGERS", "name": "List Approval Policy Triggers", "description": "Tool to get a list of available approval policy triggers. Use when you need to view all possible triggers that can be configured for approval policies." }, { "slug": "DATAROBOT_LIST_AUTOMATED_DOCUMENT_OPTIONS", "name": "List Automated Document Options", "description": "Tool to list all available automated document types and locales. Use when determining which document types can be generated for compliance documentation." }, { "slug": "DATAROBOT_LIST_AUTOMATED_DOCUMENTS", "name": "List Automated Documents", "description": "Tool to list all automated documents in DataRobot. Use when retrieving compliance documents, model reports, or other generated documentation." }, { "slug": "DATAROBOT_LIST_BATCH_JOBS", "name": "List Batch Jobs", "description": "Tool to list DataRobot batch jobs. Use when you need to retrieve batch job records filtered by status or source." }, { "slug": "DATAROBOT_LIST_BATCH_MONITORING_JOB_DEFINITIONS", "name": "List Batch Monitoring Job Definitions", "description": "Tool to list DataRobot batch monitoring job definitions. Use when you need to retrieve scheduled batch monitoring job configurations with optional filtering by name or deployment ID." }, { "slug": "DATAROBOT_LIST_BATCH_PREDICTION_JOB_DEFINITIONS", "name": "List Batch Prediction Job Definitions", "description": "Tool to list batch prediction job definitions. Use when retrieving scheduled or manual batch prediction configurations." }, { "slug": "DATAROBOT_LIST_BATCH_PREDICTIONS", "name": "List Batch Predictions", "description": "Tool to list DataRobot batch prediction jobs. Use when you need to retrieve batch prediction job records filtered by status, source, deployment, or other criteria." }, { "slug": "DATAROBOT_LIST_CALENDAR_COUNTRY_CODES", "name": "List Calendar Country Codes", "description": "Tool to retrieve the list of allowed country codes for preloaded calendar generation. Use when you need to find which country codes are supported for calendar features in DataRobot." }, { "slug": "DATAROBOT_LIST_CALENDARS", "name": "List Calendars", "description": "Tool to list all available calendars for a user in DataRobot. Use when you need to browse or filter calendars for time-series modeling." }, { "slug": "DATAROBOT_LIST_CALENDARS_ACCESS_CONTROL", "name": "List Calendars Access Control", "description": "Tool to list users with their roles on a calendar. Use when you need to retrieve access control information for a specific calendar." }, { "slug": "DATAROBOT_LIST_CATALOG_ITEMS", "name": "List Catalog Items", "description": "Tool to list all catalog items accessible by the user. Use when you need to browse or search available datasets, user blueprints, and files in the DataRobot catalog." }, { "slug": "DATAROBOT_LIST_CHANGE_REQUESTS", "name": "List Change Requests", "description": "Tool to list change requests in DataRobot. Use when you need to retrieve change requests for deployments or other entities, optionally filtering by status, owner, or entity." }, { "slug": "DATAROBOT_LIST_CODE_SNIPPETS", "name": "List Code Snippets", "description": "Tool to retrieve available code snippets from DataRobot. Use when you need to get code examples for models, predictions, or workloads in various languages." }, { "slug": "DATAROBOT_LIST_COMPLIANCE_DOC_TEMPLATES", "name": "List Compliance Doc Templates", "description": "Tool to list compliance documentation templates in DataRobot. Use when you need to browse or filter available templates for compliance documentation." }, { "slug": "DATAROBOT_LIST_COMPLIANCE_DOC_TEMPLATES_DEFAULT", "name": "List Compliance Doc Templates Default", "description": "Tool to retrieve the default compliance documentation template from DataRobot. Use when you need to get the template structure for creating compliance documentation for AutoML projects, time series projects, or text generation models." }, { "slug": "DATAROBOT_LIST_CREDENTIALS", "name": "List Credentials", "description": "Tool to list all available credentials. Use when you need to retrieve credentials accessible to the authenticated user." }, { "slug": "DATAROBOT_LIST_CREDENTIALS_ASSOCIATIONS", "name": "List Credentials Associations", "description": "Tool to list all objects associated with specific credentials. Use when you need to find which deployments, data sources, or other objects are using a particular credential." }, { "slug": "DATAROBOT_LIST_CUSTOM_APPLICATIONS", "name": "List Custom Applications", "description": "Tool to list custom applications created by the authenticated user. Use when retrieving a paginated list of custom applications from DataRobot." }, { "slug": "DATAROBOT_LIST_CUSTOM_APPLICATION_SOURCES", "name": "List Custom Application Sources", "description": "Tool to list custom application sources created by the authenticated user. Use when retrieving a paginated list of custom application sources for managing application deployments." }, { "slug": "DATAROBOT_LIST_CUSTOM_APPLICATION_SOURCES_VERSIONS", "name": "List Custom Application Sources Versions", "description": "Tool to list custom application source versions of a specified application source. Use when you need to retrieve paginated versions of a custom application source." }, { "slug": "DATAROBOT_LIST_CUSTOM_JOB_LIMITS", "name": "List Custom Job Limits", "description": "Tool to retrieve custom job limits from DataRobot. Use when you need to check parallel job run limits or timeout settings." }, { "slug": "DATAROBOT_LIST_CUSTOM_JOBS", "name": "List Custom Jobs", "description": "Tool to list custom jobs in DataRobot. Use when you need to browse or filter available custom jobs, optionally filtering by running status, search term, or job type." }, { "slug": "DATAROBOT_LIST_CUSTOM_JOBS_CUSTOM_METRICS", "name": "List Custom Jobs Custom Metrics", "description": "Tool to list all custom metrics associated with a custom job in DataRobot. Use when you need to browse or retrieve custom metrics linked to a specific custom job." }, { "slug": "DATAROBOT_LIST_CUSTOM_JOBS_RUNS", "name": "List Custom Job Runs", "description": "Tool to list custom job runs for a specific custom job in DataRobot. Use when you need to browse execution history of a custom job, optionally filtering by scheduled job ID." }, { "slug": "DATAROBOT_LIST_CUSTOM_JOBS_SHARED_ROLES", "name": "List Custom Jobs Shared Roles", "description": "Tool to get the access control list for a custom job. Use when you need to view who has access to a specific custom job and their roles." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODEL_DEPLOYMENTS", "name": "List Custom Model Deployments", "description": "Tool to list custom model deployments in DataRobot. Use when retrieving custom model deployments sorted by creation time." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODEL_DEPLOYMENTS_LOGS", "name": "List Custom Model Deployments Logs", "description": "Tool to retrieve custom model deployment logs. Use when debugging or monitoring custom model deployments." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODEL_LIMITS", "name": "List Custom Model Limits", "description": "Tool to get custom model resource limits in DataRobot. Use when you need to check memory, replica, and testing constraints for custom models." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODELS", "name": "List Custom Models", "description": "Tool to list custom models in DataRobot. Use when retrieving paginated custom models from DataRobot." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODELS_ACCESS_CONTROL", "name": "List Custom Models Access Control", "description": "Tool to list users with their roles on a custom model. Use when you need to retrieve access control information for a specific custom model." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODELS_VERSIONS", "name": "List Custom Models Versions", "description": "Tool to list custom model versions in DataRobot. Use when retrieving all versions of a specific custom model." }, { "slug": "DATAROBOT_LIST_CUSTOM_MODEL_TESTS", "name": "List Custom Model Tests", "description": "Tool to list custom model tests for a specific custom model in DataRobot. Use when you need to retrieve testing history and results for a custom model." }, { "slug": "DATAROBOT_LIST_CUSTOM_TEMPLATES", "name": "List Custom Templates", "description": "Tool to retrieve a list of custom templates from DataRobot. Use when you need to browse, filter, or search available custom templates for applications." }, { "slug": "DATAROBOT_LIST_CUSTOM_TRAINING_BLUEPRINTS", "name": "List Custom Training Blueprints", "description": "Tool to list custom training blueprints in DataRobot. Use when you need to retrieve blueprints for custom model training, optionally filtered by model ID or target types." }, { "slug": "DATAROBOT_LIST_DATASET_DEFINITIONS", "name": "List Dataset Definitions", "description": "Tool to list all dataset definitions for the user. Use when you need to browse or retrieve available dataset definitions." }, { "slug": "DATAROBOT_LIST_DATASET_DEFINITIONS_VERSIONS", "name": "List Dataset Definition Versions", "description": "Tool to list all dataset definition versions for a given dataset definition. Use when you need to view version history or select a specific version of a dataset definition." }, { "slug": "DATAROBOT_LIST_DATASET_PERMISSIONS", "name": "List Dataset Permissions", "description": "Tool to retrieve permissions for a specific dataset in DataRobot. Use when you need to check what operations the current user can perform on a dataset." }, { "slug": "DATAROBOT_LIST_DATASETS", "name": "List Datasets", "description": "Tool to list all datasets in the DataRobot global catalog. Use when you need to browse or filter available datasets before modeling or prediction." }, { "slug": "DATAROBOT_LIST_DATASETS_ACCESS_CONTROL", "name": "List Datasets Access Control", "description": "Tool to list users with their roles on a dataset. Use when you need to retrieve access control information for a specific dataset." }, { "slug": "DATAROBOT_LIST_DATASETS_ALL_FEATURES_DETAILS", "name": "List Dataset All Features Details", "description": "Tool to retrieve detailed information about all features in a DataRobot dataset. Use when you need feature statistics, types, and metadata for analysis or model preparation." }, { "slug": "DATAROBOT_LIST_DATASETS_FEATURELISTS", "name": "List Dataset Featurelists", "description": "Tool to retrieve featurelists associated with a specific dataset in DataRobot. Use when you need to browse or filter featurelists for a dataset." }, { "slug": "DATAROBOT_LIST_DATASETS_FEATURE_TRANSFORMS", "name": "List Dataset Feature Transforms", "description": "Tool to list all feature transforms applied to a dataset. Use when you need to understand the transformations applied to dataset features before modeling." }, { "slug": "DATAROBOT_LIST_DATASETS_PROJECTS", "name": "List Dataset Projects", "description": "Tool to list all projects associated with a specific dataset. Use when you need to find which projects are using a particular dataset." }, { "slug": "DATAROBOT_LIST_DATASETS_REFRESH_JOBS", "name": "List Dataset Refresh Jobs", "description": "Tool to list scheduled refresh jobs for a specific dataset. Use when you need to view or manage dataset refresh schedules." }, { "slug": "DATAROBOT_LIST_DATASETS_REFRESH_JOBS_EXECUTION_RESULTS", "name": "List Dataset Refresh Job Execution Results", "description": "Tool to list execution results of a dataset refresh job. Use when you need to view the history and status of refresh job executions." }, { "slug": "DATAROBOT_LIST_DATASETS_RELATIONSHIPS", "name": "List Dataset Relationships", "description": "Tool to list related datasets for a specific dataset. Use when you need to discover relationships between datasets in DataRobot's catalog." }, { "slug": "DATAROBOT_LIST_DATASETS_SHARED_ROLES", "name": "List Datasets Shared Roles", "description": "Tool to list shared roles for a dataset. Use when you need to view who has access to a dataset and their permission levels." }, { "slug": "DATAROBOT_LIST_DATASETS_VERSIONS", "name": "List Dataset Versions", "description": "Tool to list all versions of a specific dataset in DataRobot. Use when you need to browse or filter different versions of a dataset before selecting one for modeling or prediction." }, { "slug": "DATAROBOT_LIST_DATASETS_VERSIONS_ALL_FEATURES_DETAILS", "name": "List Dataset Version All Features Details", "description": "Tool to retrieve detailed information about all features in a specific DataRobot dataset version. Use when you need feature statistics, types, and metadata for a particular version of a dataset." }, { "slug": "DATAROBOT_LIST_DATASETS_VERSIONS_FEATURELISTS", "name": "List Dataset Version Feature Lists", "description": "Tool to retrieve feature lists for a specific dataset version in DataRobot. Use when you need to list, search, or filter feature lists associated with a particular version of a dataset." }, { "slug": "DATAROBOT_LIST_DATASETS_VERSIONS_FILE", "name": "Download Dataset Version File", "description": "Tool to download original dataset data from a specific dataset version. Use when you need to retrieve the raw file for a dataset version." }, { "slug": "DATAROBOT_LIST_DATASET_VERSION_PROJECTS", "name": "List Dataset Version Projects", "description": "Tool to list all projects that use a specific dataset version. Use when you need to find which projects are using a particular version of a dataset." }, { "slug": "DATAROBOT_LIST_DATA_SLICES_SLICE_SIZES", "name": "List Data Slices Slice Sizes", "description": "Tool to retrieve the number of rows available after applying a data slice to a specified dataset subset. Use when you need to check the size of a data slice for a specific source (e.g., crossValidation, training, holdout)." }, { "slug": "DATAROBOT_LIST_DATA_SOURCES", "name": "List Data Sources", "description": "Tool to list all available data sources. Use when retrieving the catalog of data connections." }, { "slug": "DATAROBOT_LIST_DELETED_CUSTOM_JOBS", "name": "List Deleted Custom Jobs", "description": "Tool to list all deleted custom jobs in DataRobot. Use when you need to retrieve information about custom jobs that have been deleted from the system." }, { "slug": "DATAROBOT_LIST_DEPLOYMENT_CHALLENGERS", "name": "List Deployment Challengers", "description": "Tool to list challenger models for a deployment. Use when retrieving challenger models that can replace the current champion model." }, { "slug": "DATAROBOT_LIST_DEPLOYMENT_RUNTIME_PARAMETERS", "name": "List Deployment Runtime Parameters", "description": "Tool to list runtime parameters for a deployment. Use when retrieving deployment runtime parameter configurations." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS", "name": "List Deployments", "description": "Tool to list deployments a user can view. Use when retrieving paginated deployments from DataRobot." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_ACCURACY_OVER_BATCH", "name": "List Deployments Accuracy Over Batch", "description": "Tool to retrieve accuracy metrics over batches for a deployment. Use when analyzing batch-level model accuracy trends or comparing performance across batches." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_ACTUALS_DATA_EXPORTS", "name": "List Deployments Actuals Data Exports", "description": "Tool to retrieve a list of asynchronous actuals data exports for a deployment. Use when you need to monitor or retrieve actuals data export status for a specific deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_BATCH_SERVICE_STATS", "name": "List Deployments Batch Service Stats", "description": "Tool to retrieve service health metrics for a deployment's batch predictions. Use when analyzing batch service performance, execution times, or error rates." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CHALLENGER_REPLAY_SETTINGS", "name": "List Deployments Challenger Replay Settings", "description": "Tool to retrieve challenger replay settings for a deployment. Use when checking scheduled replay configuration for challenger models." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS", "name": "List Deployment Custom Metrics", "description": "Tool to retrieve a list of custom metrics for a deployment. Use when you need to view all custom metrics configured for a specific deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS_BATCH_SUMMARY", "name": "List Deployments Custom Metrics Batch Summary", "description": "Tool to retrieve the summary of deployment batch custom metric. Use when you need to get aggregated custom metric data for a specific deployment batch." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS_SUMMARY", "name": "List Deployment Custom Metrics Summary", "description": "Tool to retrieve the summary of a deployment custom metric. Use when you need to view aggregated statistics and performance metrics for a specific custom metric within a deployment over a time period." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS_SUMMARY_BY_ID", "name": "List Deployments Custom Metrics Summary", "description": "Tool to retrieve the bulk summary of deployment custom metrics. Use when you need to get an overview of all custom metric values for a deployment over a specific time period." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS_VALUES_OVER_BATCH", "name": "List Deployment Custom Metrics Values Over Batch", "description": "Tool to retrieve custom metric values over batch for a deployment. Use when you need to analyze custom metric performance across different batches for a specific deployment and custom metric." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_CUSTOM_METRICS_VALUES_OVER_TIME", "name": "List Deployment Custom Metrics Values Over Time", "description": "Tool to retrieve custom metric values over time for a deployment. Use when analyzing custom metric trends or monitoring custom metrics across time periods." }, { "slug": "DATAROBOT_LIST_DEPLOYMENT_SEGMENT_ATTRIBUTES", "name": "List Deployment Segment Attributes", "description": "Tool to retrieve segment attributes for a deployment based on monitoring type. Use when you need to analyze deployment segmentation for service health, data drift, accuracy, or other monitoring metrics." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_FEATURE_DRIFT", "name": "List Deployments Feature Drift", "description": "Tool to retrieve feature drift scores for a deployment over a time period. Use when you need to analyze feature drift metrics to monitor data quality and distribution changes in production." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_FEATURE_DRIFT_OVER_BATCH", "name": "List Deployments Feature Drift Over Batch", "description": "Tool to retrieve drift over batch info for features of a deployment. Use when analyzing feature drift across batches to monitor data quality." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_HEALTH_SETTINGS", "name": "List Deployment Health Settings", "description": "Tool to retrieve deployment health settings. Use when you need to check the configuration for health monitoring of a deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_HEALTH_SETTINGS_DEFAULTS", "name": "List Deployments Health Settings Defaults", "description": "Tool to retrieve default deployment health settings for a deployment. Use when you need to understand the default health monitoring configuration." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_HUMILITY_STATS", "name": "List Deployments Humility Stats", "description": "Tool to retrieve humility stats for a deployment. Use when you need to analyze humility metrics and rule violations for a specific deployment over a time period." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_HUMILITY_STATS_OVER_TIME", "name": "List Deployments Humility Stats Over Time", "description": "Tool to retrieve humility statistics over time for a deployment. Use when monitoring humility rule performance and trends across time periods." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_MODEL_HISTORY", "name": "List Deployments Model History", "description": "Tool to retrieve champion model history for a deployment. Use when examining model changes and deployment history over time." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_MONITORING_BATCHES", "name": "List Deployment Monitoring Batches", "description": "Tool to list monitoring batches for a deployment in DataRobot. Use when you need to retrieve paginated monitoring batches with optional filtering by creator, search term, creation time, or prediction timestamps." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_MONITORING_BATCHES_MODELS", "name": "List Deployment Monitoring Batch Models", "description": "Tool to list information about models that have data in a monitoring batch. Use when you need to view which models contributed predictions to a specific batch." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_MONITORING_BATCH_LIMITS", "name": "Get Deployment Monitoring Batch Limits", "description": "Tool to retrieve the limits related to monitoring batches for a deployment. Use when you need to check constraints on batch size and prediction counts for monitoring operations." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTION_DATA_EXPORTS", "name": "List Prediction Data Exports", "description": "Tool to list prediction data exports for a deployment. Use when retrieving paginated prediction data exports from DataRobot for observability and data exploration." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTION_RESULTS", "name": "List Deployments Prediction Results", "description": "Tool to retrieve predictions results for a deployment. Use when you need to analyze prediction outputs and compare them with actual values." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTIONS_OVER_BATCH", "name": "List Deployment Predictions Over Batch", "description": "Tool to retrieve prediction metadata over batches for a deployment. Use when analyzing batch prediction performance and trends." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTIONS_OVER_TIME", "name": "List Deployment Predictions Over Time", "description": "Tool to retrieve metrics about predictions over time for a deployment. Use when analyzing prediction patterns, distribution trends, or monitoring prediction characteristics across time periods for a specific deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTIONS_VS_ACTUALS_OVER_BATCH", "name": "List Predictions vs Actuals Over Batch", "description": "Tool to retrieve metrics about predictions and actuals over a specific set of batches. Use when you need to analyze mean predicted & actual values, predicted & actual class distributions for a deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_PREDICTIONS_VS_ACTUALS_OVER_TIME", "name": "List Deployments Predictions Vs Actuals Over Time", "description": "Tool to retrieve predictions vs actuals over time for a deployment. Use when analyzing prediction quality and comparing predicted values with actual outcomes across time periods." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_QUOTA_CONSUMERS", "name": "List Deployment Quota Consumers", "description": "Tool to retrieve deployment quota consumers. Use when querying resource consumption or quota allocation for a specific deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_RETRAINING_POLICIES", "name": "List Deployment Retraining Policies", "description": "Tool to list retraining policies for a deployment. Use when retrieving policies that automate model retraining based on triggers." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_RETRAINING_SETTINGS", "name": "List Deployment Retraining Settings", "description": "Tool to fetch deployment retraining settings. Use when you need to retrieve the retraining configuration for a specific deployment." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SEGMENT_VALUES", "name": "List Deployments Segment Values", "description": "Tool to retrieve deployment segment values for monitoring and analytics. Use when filtering or analyzing deployment predictions by segment attributes." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SERVICE_STATS", "name": "List Deployments Service Stats", "description": "Tool to retrieve service health metrics for a deployment. Use when analyzing deployment service performance, request rates, error rates, or execution times." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SERVICE_STATS_OVER_BATCH", "name": "List Deployment Service Stats Over Batch", "description": "Tool to retrieve service health metrics over batch for a deployment. Use when analyzing service performance across different batches." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SERVICE_STATS_OVER_TIME", "name": "List Deployments Service Stats Over Time", "description": "Tool to retrieve service health metrics over time for a deployment. Use when analyzing service performance trends and patterns across time periods." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SETTINGS", "name": "List Deployment Settings", "description": "Tool to retrieve deployment settings. Use when you need to check configuration settings for data drift, predictions, accuracy, and other deployment features." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_SHARED_ROLES", "name": "List Deployments Shared Roles", "description": "Tool to get a model deployment's access control list. Use when you need to view who has access to a deployment and their permission levels." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_TARGET_DRIFT", "name": "List Deployments Target Drift", "description": "Tool to retrieve target drift for a deployment over a specified time period. Use when analyzing target distribution changes between training and prediction data." }, { "slug": "DATAROBOT_LIST_DEPLOYMENTS_TRAINING_DATA_EXPORTS", "name": "List Training Data Exports", "description": "Tool to list training data exports for a deployment. Use when retrieving paginated training data exports from DataRobot for observability and data exploration." }, { "slug": "DATAROBOT_LIST_DEPLOY_MODEL_SECONDARY_DS_CONFIG_HISTORY", "name": "List Deployments Model Secondary Dataset Configuration History", "description": "Tool to list the secondary datasets configuration history for a deployment. Use when tracking changes to secondary dataset configurations over time." }, { "slug": "DATAROBOT_LIST_ENTITLEMENT_SET_LEASES", "name": "List Entitlement Set Leases", "description": "Tool to retrieve entitlement set leases from DataRobot. Use when you need to list or filter entitlement set leases by entitlement set ID, tenant ID, or status." }, { "slug": "DATAROBOT_LIST_ENTITY_NOTIFY_POLICY_TPL_RELATED_POLICIES", "name": "List Entity Notification Policy Templates Related Policies", "description": "Tool to retrieve all policies created from a notification policy template. Use when you need to view policies associated with a specific template that are visible to the user." }, { "slug": "DATAROBOT_LIST_ENTITY_NOTIFY_POLICY_TPL_SHARED_ROLES", "name": "List Entity Notification Policy Templates Shared Roles", "description": "Tool to list shared roles for an entity notification policy template. Use when retrieving the access control list for notification policy templates." }, { "slug": "DATAROBOT_LIST_ENTITY_TAGS", "name": "List Entity Tags", "description": "Tool to retrieve a list of entity tags from DataRobot. Use when you need to list or search for entity tags." }, { "slug": "DATAROBOT_LIST_EVENT_LOGS", "name": "List Event Logs", "description": "Tool to retrieve audit log records from DataRobot. Use when you need to track user actions, administrative events, or system activities for compliance and monitoring." }, { "slug": "DATAROBOT_LIST_EVENT_LOGS_EVENTS", "name": "List Event Logs Events", "description": "Tool to retrieve all available events from DataRobot event logs. Use when you need to list event labels for filtering or querying event logs. Note: This is a deprecated API." }, { "slug": "DATAROBOT_LIST_EVENT_LOGS_PREDICTION_USAGE", "name": "List Event Logs Prediction Usage", "description": "Tool to retrieve prediction usage event logs from DataRobot. Use when you need to track prediction activity within a specified time range (max 24 hours)." }, { "slug": "DATAROBOT_LIST_EXECUTION_ENVIRONMENTS", "name": "List Execution Environments", "description": "Tool to list execution environments in DataRobot. Use when retrieving available execution environments for custom models, notebooks, or other use cases." }, { "slug": "DATAROBOT_LIST_EXECUTION_ENVIRONMENTS_VERSIONS_BUILD_LOG", "name": "List Execution Environments Versions Build Log", "description": "Tool to download execution environment build log. Use when you need to retrieve build logs for a specific execution environment version." }, { "slug": "DATAROBOT_LIST_EXECUTION_ENVIRONMENTS_VERSIONS_DOWNLOAD", "name": "Download Execution Environment Version", "description": "Tool to download execution environment version files from DataRobot. Downloads either a Docker image tarball or Docker context depending on the imageFile parameter. Use when you need to retrieve the built environment for deployment or inspection." }, { "slug": "DATAROBOT_LIST_EXECUTION_ENVIRONMENT_VERSIONS", "name": "List Execution Environment Versions", "description": "Tool to list all versions of an execution environment in DataRobot. Use when you need to browse available versions of a specific execution environment, optionally filtered by build status or search criteria." }, { "slug": "DATAROBOT_LIST_EXT_DS_STANDARD_USER_DEF_FUNCTIONS", "name": "List External Data Store Standard User-Defined Functions", "description": "Tool to retrieve detected standard user-defined functions for a given external data store. Use when you need to list available standard UDFs for a specific data store, credentials, function type, and schema." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_DRIVER_CONFIGURATION", "name": "List External Data Driver Configuration", "description": "Tool to retrieve external data driver configuration details by driver ID. Use when you need to understand JDBC connection requirements for a specific driver." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_DRIVERS", "name": "List External Data Drivers", "description": "Tool to list all available external data drivers in DataRobot. Use when retrieving the catalog of data drivers for data connectivity." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_SOURCES_ACCESS_CONTROL", "name": "List External Data Sources Access Control", "description": "Tool to list users with their roles on an external data source. Use when you need to retrieve access control information for a specific data source." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_SOURCES_PERMISSIONS", "name": "List External Data Sources Permissions", "description": "Tool to list permissions for the current user on an external data source. Use when you need to check what actions the user can perform on a specific data source." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_SOURCES_SHARED_ROLES", "name": "List External Data Sources Shared Roles", "description": "Tool to get an external data source's access control list. Use when you need to view who has access to a data source and their permission levels." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_STORES", "name": "List External Data Stores", "description": "Tool to list external data stores in DataRobot. Use when you need to browse available data stores, filter by type, database type, connector type, or search by name." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_STORES_CREDENTIALS", "name": "List External Data Store Credentials", "description": "Tool to list credentials associated with a specified external data store. Use when you need to retrieve all credentials linked to a data store." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_STORES_PERMISSIONS", "name": "List External Data Stores Permissions", "description": "Tool to retrieve permissions for an external data store. Use when you need to check what actions a user can perform on a specific data store." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DATA_STORES_SHARED_ROLES", "name": "List External Data Stores Shared Roles", "description": "Tool to list access control entries (shared roles) for an external data store. Use when you need to retrieve who has access to a specific data store and their roles." }, { "slug": "DATAROBOT_LIST_EXTERNAL_DRIVER_CONFIGURATIONS", "name": "List External Driver Configurations", "description": "Tool to list available external driver configurations in DataRobot. Use when you need to retrieve driver configurations for data connectivity, optionally filtered by type or visibility." }, { "slug": "DATAROBOT_LIST_EXTERNAL_O_AUTH_PROVIDERS", "name": "List External OAuth Providers", "description": "Tool to list external OAuth providers configured in DataRobot. Use when retrieving available OAuth integrations for external services like GitHub, GitLab, Bitbucket, Google, Box, Microsoft, Jira, or Confluence." }, { "slug": "DATAROBOT_LIST_FEATURE_ASSOCIATION_FEATURELISTS", "name": "List Feature Association Featurelists", "description": "Tool to list all featurelists with feature association matrix availability flags for a project. Use when you need to check which featurelists have feature association matrices available." }, { "slug": "DATAROBOT_LIST_FEATURE_LISTS", "name": "List Feature Lists", "description": "Tool to list all feature lists for a project. Use when you need to retrieve and filter feature lists associated with a DataRobot project." }, { "slug": "DATAROBOT_LIST_FILES_ALL_FILES", "name": "List All Files for Catalog Item", "description": "Tool to list all files associated with a catalog item in DataRobot. Use when you need to browse or retrieve files from a specific catalog entry, with support for pagination and filtering by file type or path prefix." }, { "slug": "DATAROBOT_LIST_GENAI_CHAT_PROMPTS", "name": "List GenAI Chat Prompts", "description": "Tool to list GenAI chat prompts in DataRobot. Use when retrieving chat prompts associated with playgrounds, LLM blueprints, or chat sessions." }, { "slug": "DATAROBOT_LIST_GENAI_CHATS", "name": "List GenAI Chats", "description": "Tool to list GenAI chats available to the user. Use when retrieving paginated chats from DataRobot GenAI." }, { "slug": "DATAROBOT_LIST_GENAI_COMPARISON_PROMPTS", "name": "List GenAI Comparison Prompts", "description": "Tool to list GenAI comparison prompts filtered by comparison chat ID or LLM blueprint IDs. Use when retrieving comparison prompts for analysis or testing." }, { "slug": "DATAROBOT_LIST_GENAI_CUSTOM_MODEL_EMBEDDING_VALIDATIONS", "name": "List GenAI Custom Model Embedding Validations", "description": "Tool to list GenAI custom model embedding validations. Use when retrieving paginated custom model embedding validation records from DataRobot." }, { "slug": "DATAROBOT_LIST_GENAI_CUSTOM_MODEL_VECTOR_DB_VALIDATIONS", "name": "List GenAI Custom Model Vector Database Validations", "description": "Tool to list custom model vector database validations for GenAI use cases. Use when retrieving validations for custom models used as vector databases in RAG workflows." }, { "slug": "DATAROBOT_LIST_GENAI_EVALUATION_DATASET_CONFIGURATIONS", "name": "List GenAI Evaluation Dataset Configurations", "description": "Tool to list GenAI evaluation dataset configurations. Use when you need to retrieve evaluation dataset configurations for a specific use case and playground." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_BLUEPRINTS", "name": "List GenAI LLM Blueprints", "description": "Tool to list LLM blueprints for building generative AI applications with various large language models. Use when you need to browse available LLM blueprints for GenAI deployments." }, { "slug": "DATAROBOT_LIST_GENAI_LLMS", "name": "List GenAI LLMs", "description": "Tool to list all available GenAI LLMs in DataRobot. Use when you need to retrieve available language models for GenAI applications." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_TEST_CONFIG_SUPPORTED_INSIGHTS", "name": "List GenAI LLM Test Configurations Supported Insights", "description": "Tool to list supported insights for LLM test configurations in DataRobot. Use when retrieving available insight types for a use case or playground." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_TEST_CONFIGURATIONS", "name": "List GenAI LLM Test Configurations", "description": "Tool to list GenAI LLM test configurations. Use when retrieving paginated LLM test configurations from DataRobot AI Robustness Tests." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_TEST_CONFIGURATIONS_OOTB_DATASETS", "name": "List GenAI LLM Test Configurations OOTB Datasets", "description": "Tool to list out-of-the-box (OOTB) datasets for GenAI LLM test configurations. Use when you need to retrieve available datasets for LLM compliance and robustness testing." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_TEST_RESULTS", "name": "List GenAI LLM Test Results", "description": "Tool to list GenAI LLM test results filtered by use case and playground. Use when retrieving test results for LLM robustness evaluations." }, { "slug": "DATAROBOT_LIST_GENAI_LLM_TEST_SUITES", "name": "List GenAI LLM Test Suites", "description": "Tool to list GenAI LLM test suites in DataRobot. Use when retrieving AI robustness test suites for LLM models." }, { "slug": "DATAROBOT_LIST_GENAI_PLAYGROUNDS", "name": "List GenAI Playgrounds", "description": "Tool to list all GenAI playgrounds accessible by the user. Use when you need to browse or filter available playgrounds for LLM blueprint development." }, { "slug": "DATAROBOT_LIST_GENAI_PLAYGROUNDS_OOTB_METRIC_CONFIGURATIONS", "name": "List GenAI Playgrounds OOTB Metric Configurations", "description": "Tool to list OOTB metric configurations for a GenAI playground. Use when you need to retrieve all out-of-the-box metric configurations associated with a specific playground." }, { "slug": "DATAROBOT_LIST_GENAI_PLAYGROUNDS_SUPPORTED_INSIGHTS", "name": "List GenAI Playgrounds Supported Insights", "description": "Tool to list supported insights for a GenAI playground. Use when you need to retrieve all available insight configurations for a specific playground." }, { "slug": "DATAROBOT_LIST_GENAI_PLAYGROUNDS_TRACE", "name": "List GenAI Playground Traces", "description": "Tool to list all prompt traces for a GenAI playground. Use when you need to retrieve execution history and tracing data from playground prompts." }, { "slug": "DATAROBOT_LIST_GENAI_SIDECAR_MODEL_METRIC_VALIDATIONS", "name": "List GenAI Sidecar Model Metric Validations", "description": "Tool to list GenAI sidecar model metric validations from DataRobot. Use when retrieving available metric validation configurations for generative AI models." }, { "slug": "DATAROBOT_LIST_GENAI_USER_LIMITS_LLM_API_CALLS", "name": "List GenAI User Limits LLM API Calls", "description": "Tool to retrieve the count of LLM API calls made by the authenticated user. Use when you need to check how many LLM API requests the user has made that count towards their usage limits." }, { "slug": "DATAROBOT_LIST_GENAI_USER_LIMITS_VECTOR_DATABASES", "name": "List GenAI User Limits Vector Databases", "description": "Tool to retrieve the number of vector databases the user has created which count towards the usage limit. Use when checking GenAI user limits for vector database resources." }, { "slug": "DATAROBOT_LIST_GENAI_VECTOR_DATABASES", "name": "List GenAI Vector Databases", "description": "Tool to list all GenAI vector databases used for RAG (Retrieval Augmented Generation) applications. Use when you need to retrieve or filter vector databases." }, { "slug": "DATAROBOT_LIST_GENAI_VECTOR_DBS_SUPPORTED_RETRIEVAL_SETS", "name": "List GenAI Vector Databases Supported Retrieval Settings", "description": "Tool to list all supported retrieval settings for GenAI vector databases. Returns configuration options for retrieval parameters including retriever names, retrieval modes, and document retrieval limits." }, { "slug": "DATAROBOT_LIST_GENAI_VECTOR_DBS_SUPPORTED_TEXT_CHUNKINGS", "name": "List GenAI Vector Databases Supported Text Chunkings", "description": "Tool to list all supported text chunking configurations for GenAI vector databases. Returns recommended chunking parameters for each supported embedding model including recursive and semantic chunking methods." }, { "slug": "DATAROBOT_LIST_GUARD_CONFIG_PRED_ENVS_IN_USE", "name": "List Guard Configurations Prediction Environments In Use", "description": "Tool to show prediction environments in use for moderation by a specific custom model version. Use when you need to identify which prediction environments are using a particular guard configuration custom model." }, { "slug": "DATAROBOT_LIST_GUARD_CONFIGURATIONS", "name": "List Guard Configurations", "description": "Tool to list guard configurations for a specific entity in DataRobot. Use when you need to retrieve guard configurations associated with a custom model, custom model version, or playground." }, { "slug": "DATAROBOT_LIST_GUARD_TEMPLATES", "name": "List Guard Templates", "description": "Tool to list guard templates in DataRobot. Use when retrieving available guardrails templates for LLM deployments." }, { "slug": "DATAROBOT_LIST_IMAGE_AUGMENTATION_LISTS", "name": "List Image Augmentation Lists", "description": "Tool to list image augmentation lists for a DataRobot project. Use when retrieving augmentation lists for image-based projects." }, { "slug": "DATAROBOT_LIST_MLOPS_COMPUTE_BUNDLES", "name": "List MLOps Compute Bundles", "description": "Tool to list resource bundles for MLOps compute. Use when retrieving available compute bundles for custom models, jobs, or applications." }, { "slug": "DATAROBOT_LIST_MODEL_FEATURES", "name": "List Model Features", "description": "Tool to retrieve the list of features used in a specific DataRobot model. Use when you need to understand which features a model is using for predictions or analysis." }, { "slug": "DATAROBOT_LIST_MODEL_PACKAGE_FEATURES", "name": "List Model Package Features", "description": "Tool to retrieve features in a model package. Use after model package creation to explore its feature set." }, { "slug": "DATAROBOT_LIST_MODEL_PACKAGES", "name": "List Model Packages", "description": "Tool to list model packages. Use when you need to search or page through model packages." }, { "slug": "DATAROBOT_LIST_MODEL_PACKAGES_CAPABILITIES", "name": "List Model Package Capabilities", "description": "Tool to retrieve capabilities of a model package. Use after creating or loading a model package to check supported features." }, { "slug": "DATAROBOT_LIST_MODEL_PACKAGES_MODEL_LOGS", "name": "List Model Package Model Logs", "description": "Tool to list model logs for a specific model package. Use when you need to retrieve log entries generated during model package operations." }, { "slug": "DATAROBOT_LIST_MODEL_PACKAGES_SHARED_ROLES", "name": "List Model Packages Shared Roles", "description": "Tool to get model package's access control list. Use when you need to retrieve shared roles for a specific model package." }, { "slug": "DATAROBOT_LIST_MODEL_RECORDS", "name": "List Model Records", "description": "Retrieve a paginated list of trained model records from a DataRobot project. Returns model metadata including model type, metrics, training info, and configuration. Use this to explore models built during AutoML or manually submitted models. Supports filtering by characteristics, search terms, labels, blueprints, model families, and sorting by metrics." }, { "slug": "DATAROBOT_LIST_MODEL_SUPPORTED_CAPABILITIES", "name": "List Model Supported Capabilities", "description": "Tool to retrieve supported capabilities for a model. Use after training a model to check which insights and features are available." }, { "slug": "DATAROBOT_LIST_MODERATION_SUPPORTED_LLMS", "name": "List Moderation Supported LLMs", "description": "Tool to list supported LLMs for moderation in DataRobot. Use when retrieving available LLM models for moderation purposes." }, { "slug": "DATAROBOT_LIST_MULTILABEL_INSIGHTS_PAIRWISE_MANUAL_SELS", "name": "List Multilabel Insights Pairwise Manual Selections", "description": "Tool to retrieve all manually selected label lists for pairwise multilabel insights analysis. Use when analyzing multilabel features to get user-defined label combinations for pairwise comparison." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_CODE_SNIPPETS", "name": "List Notebook Code Snippets", "description": "Tool to retrieve all available notebook code snippets from DataRobot. Use when you need to discover or browse code snippets for notebooks." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_CODE_SNIPPETS_TAGS", "name": "List Notebook Code Snippets Tags", "description": "Tool to retrieve available tags for notebook code snippets from DataRobot. Use when you need to discover or filter code snippet tags." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_EXECUTION_ENVIRONMENT_NOTEBOOKS", "name": "List Notebook Execution Environment Notebooks", "description": "Tool to list notebooks that use a specific execution environment in DataRobot. Use when you need to see which notebooks are using a particular execution environment." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_EXECUTION_ENVIRONMENTS", "name": "List Notebook Execution Environments", "description": "Tool to list all notebook execution environments in DataRobot. Use when you need to browse available execution environments for notebooks." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_EXECUTION_ENVIRONMENTS_MACHINES", "name": "List Notebook Execution Environments Machines", "description": "Tool to list available machine types for notebook execution environments. Use when you need to retrieve machine specifications for notebooks." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_EXECUTION_ENVIRONMENTS_PORTS", "name": "List Notebook Execution Environment Ports", "description": "Tool to list exposed ports for a notebook execution environment. Use when you need to retrieve port information for a specific notebook environment." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_EXECUTION_ENVIRONMENTS_VERSIONS", "name": "List Notebook Execution Environment Versions", "description": "Tool to list all versions of a notebook execution environment. Use when retrieving version history for a specific notebook execution environment." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_JOBS_RUN_HISTORY", "name": "List Notebook Jobs Run History", "description": "Tool to list notebook job run history in DataRobot. Use when you need to retrieve historical execution records of scheduled or manually triggered notebook jobs." }, { "slug": "DATAROBOT_LIST_NOTEBOOKS", "name": "List Notebooks", "description": "Tool to list Jupyter notebooks in DataRobot workspace. Use when you need to browse or filter available notebooks for data exploration and model development." }, { "slug": "DATAROBOT_LIST_NOTEBOOKS_CELLS", "name": "List Notebook Cells", "description": "Tool to retrieve all cells from a DataRobot notebook. Use when you need to inspect or analyze the contents of a specific notebook." }, { "slug": "DATAROBOT_LIST_NOTEBOOK_SESSIONS_TERMINALS", "name": "List Notebook Sessions Terminals", "description": "Tool to list all terminals in a DataRobot notebook session. Use when you need to retrieve terminal sessions for a running notebook." }, { "slug": "DATAROBOT_LIST_NOTEBOOKS_FILTER_OPTIONS", "name": "List Notebooks Filter Options", "description": "Tool to retrieve available filter options for notebooks, including tags and owners. Use when you need to get valid filter values before filtering notebooks." }, { "slug": "DATAROBOT_LIST_NOTEBOOKS_SHARED_ROLES", "name": "List Notebooks Shared Roles", "description": "Tool to get access control lists for multiple notebooks. Use when you need to retrieve shared roles for several notebooks at once." }, { "slug": "DATAROBOT_LIST_NOTIFICATION_CHANNEL_TEMPLATES", "name": "List Notification Channel Templates", "description": "Tool to list notification channel templates in DataRobot. Use when retrieving available notification channel templates for setting up alerts and notifications." }, { "slug": "DATAROBOT_LIST_NOTIFICATION_CHANNEL_TEMPLATES_SHARED_ROLES", "name": "List Notification Channel Templates Shared Roles", "description": "Tool to get channel template's access control list. Use when you need to view who has access to a notification channel template and their permission levels." }, { "slug": "DATAROBOT_LIST_NOTIFICATION_EVENTS", "name": "List Notification Events", "description": "Tool to list notification event types and groups available for notification policies. Use when creating or updating notification policies to see available event types." }, { "slug": "DATAROBOT_LIST_NOTIFY_CHANNEL_TPL_POLICY_TEMPLATES", "name": "List Notification Channel Templates Policy Templates", "description": "Tool to retrieve list of all policy templates using a specific notification channel template. Use when you need to identify which policies are configured to use a particular channel." }, { "slug": "DATAROBOT_LIST_NOTIFY_CHANNEL_TPL_RELATED_POLICIES", "name": "List Notification Channel Templates Related Policies", "description": "Tool to retrieve all policies created from a notification channel template. Use when you need to view policies associated with a specific channel template that are visible to the user." }, { "slug": "DATAROBOT_LIST_OCR_JOB_RESOURCES", "name": "List OCR Job Resources", "description": "Tool to retrieve user's OCR job resources from DataRobot. Use when you need to list and browse OCR job resources with pagination support." }, { "slug": "DATAROBOT_LIST_ORGANIZATION_USERS", "name": "List Organization Users", "description": "Tool to list memberships (users) in an organization. Use when you need to page through or filter users by ID." }, { "slug": "DATAROBOT_LIST_OTEL_LOGS", "name": "List OpenTelemetry Logs", "description": "Tool to retrieve OpenTelemetry logs for a specified entity. Use when debugging deployments or investigating issues with custom applications, workloads, or other entities." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_AUTOCOLLECTED_VALUES", "name": "List OpenTelemetry Metrics Autocollected Values", "description": "Tool to get aggregated values of OpenTelemetry metrics that DataRobot automatically collects for a specified entity. Use when monitoring deployments, use cases, or workloads with auto-collected metrics." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_CONFIGS", "name": "List OpenTelemetry Metrics Configs", "description": "Tool to list OpenTelemetry metric configurations for a specified entity. Use when you need to retrieve metric collection settings for deployments, use cases, or other DataRobot entities." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_POD_INFO", "name": "List OpenTelemetry Metrics Pod Info", "description": "Tool to list pods and containers found in OpenTelemetry metrics of the specified entity. Use when retrieving pod and container information from deployment, use case, or workload monitoring data." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_SUMMARY", "name": "List OpenTelemetry Metrics Summary", "description": "Tool to list reported OpenTelemetry metrics of the specified entity. Use when retrieving available OTEL metrics for deployments, use cases, or other DataRobot entities." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_VALUE_OVER_TIME", "name": "List OpenTelemetry Metrics Value Over Time", "description": "Tool to get a single OpenTelemetry metric value of the specified entity over time. Use when analyzing container resource usage, performance metrics, or custom telemetry for deployments, use cases, or other DataRobot entities." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_VALUES", "name": "List OpenTelemetry Metrics Values", "description": "Tool to get OpenTelemetry metrics values for a specific entity over a single time period. Use when retrieving OTEL performance metrics for deployments, use cases, or other entities." }, { "slug": "DATAROBOT_LIST_OTEL_METRICS_VALUES_OVER_TIME", "name": "List OTel Metrics Values Over Time", "description": "Tool to retrieve OpenTelemetry configured metrics values for a specific entity over time. Use when monitoring or analyzing entity performance metrics over time periods." }, { "slug": "DATAROBOT_LIST_OTEL_TRACES", "name": "List OpenTelemetry Traces", "description": "Tool to list OpenTelemetry traces for a specified entity (deployment, use case, etc.). Use when retrieving observability data to debug or monitor AI applications." }, { "slug": "DATAROBOT_LIST_OVERALL_MODERATION_CONFIGURATION", "name": "List Overall Moderation Configuration", "description": "Tool to get overall moderation configuration for an entity. Use when you need to retrieve moderation settings for custom models, custom model versions, or playgrounds." }, { "slug": "DATAROBOT_LIST_PINNED_USECASES", "name": "List Pinned Use Cases", "description": "Tool to list all pinned use cases in DataRobot. Use when you need to retrieve the user's pinned use cases (up to 8)." }, { "slug": "DATAROBOT_LIST_PREDICTION_ENVIRONMENTS", "name": "List Prediction Environments", "description": "Lists all available prediction environments. Use this to find an environment ID for deploying models. Returns environment details including platform type, supported model formats, and management status." }, { "slug": "DATAROBOT_LIST_PREDICTION_SERVERS", "name": "List Prediction Servers", "description": "Tool to list prediction servers available to the user. Use after authenticating to retrieve real-time and batch scoring endpoints." }, { "slug": "DATAROBOT_LIST_PROJECT_IMAGES", "name": "List Project Images", "description": "Tool to retrieve image metadata for a DataRobot project. Use when you need to list images from a project with image data, optionally filtering by column or target values." }, { "slug": "DATAROBOT_LIST_PROJECT_JOBS", "name": "List Project Jobs", "description": "Tool to list all jobs for a given DataRobot project. Use when you need to inspect or monitor the status of jobs within a project, optionally filtering by status." }, { "slug": "DATAROBOT_LIST_PROJECT_MODELS", "name": "List Project Models", "description": "Tool to list models for a DataRobot project. Use when retrieving models from a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all available DataRobot projects. Use when retrieving a catalog of projects to select from." }, { "slug": "DATAROBOT_LIST_PROJECTS_BIAS_MITIGATED_MODELS", "name": "List Bias Mitigated Models for Project", "description": "Tool to list bias-mitigated models for a DataRobot project. Use when retrieving models that have been created with bias mitigation techniques applied." }, { "slug": "DATAROBOT_LIST_PROJECTS_BIAS_MITIGATION_FEATURE_INFO", "name": "List Projects Bias Mitigation Feature Info", "description": "Tool to get bias mitigation data quality information for a given project and feature. Use when analyzing protected features for fairness and bias issues." }, { "slug": "DATAROBOT_LIST_PROJECTS_BIAS_VS_ACCURACY_INSIGHTS", "name": "List Projects Bias vs Accuracy Insights", "description": "Tool to list bias vs accuracy insights for a DataRobot project. Use when evaluating model fairness and accuracy trade-offs." }, { "slug": "DATAROBOT_LIST_PROJECTS_BLENDER_MODELS", "name": "List Project Blender Models", "description": "Tool to list all blender models in a DataRobot project. Use when you need to retrieve blender (ensemble) models that combine multiple sub-models." }, { "slug": "DATAROBOT_LIST_PROJECTS_BLUEPRINTS", "name": "List Project Blueprints", "description": "Tool to list all blueprints available in a DataRobot project. Use when you need to explore available modeling blueprints for a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_BLUEPRINTS_BLUEPRINT_CHART", "name": "Get Blueprint Chart", "description": "Tool to retrieve a blueprint chart by blueprint ID. Use when you need to visualize the structure and flow of a DataRobot blueprint." }, { "slug": "DATAROBOT_LIST_PROJECTS_BLUEPRINTS_BLUEPRINT_DOCS", "name": "List Projects Blueprints Blueprint Docs", "description": "Tool to retrieve blueprint tasks documentation. Use when you need detailed information about the tasks, parameters, and references in a blueprint." }, { "slug": "DATAROBOT_LIST_PROJECTS_COMBINED_MODELS", "name": "List Projects Combined Models", "description": "Tool to retrieve all existing combined models for a DataRobot project. Use when you need to list combined models from segmented modeling projects." }, { "slug": "DATAROBOT_LIST_PROJECTS_DATA_SLICES", "name": "List Projects Data Slices", "description": "Tool to list paginated data slices for a specific DataRobot project. Use when you need to browse or filter data slices within a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_DATETIME_MODELS", "name": "List Projects Datetime Models", "description": "Tool to list datetime partitioned models in a DataRobot project. Use when you need to retrieve models from time series projects with datetime partitioning." }, { "slug": "DATAROBOT_LIST_PROJECTS_DOCUMENT_TEXT_EXTRACTION_SAMPLES", "name": "List Projects Document Text Extraction Samples", "description": "Tool to list metadata on all computed document text extraction samples in a DataRobot project across all models. Use when you need to retrieve document text extraction sample information for a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS_DOCUMENT_THUMBNAILS", "name": "List Project Document Thumbnails", "description": "Tool to list document thumbnail metadata for a DataRobot project. Use when retrieving document page information for features with document data." }, { "slug": "DATAROBOT_LIST_PROJECTS_DT_MODELS_ACCURACY_OVER_TIME_PLOTS", "name": "List Projects Datetime Models Accuracy Over Time Plots", "description": "Tool to retrieve metadata for Accuracy over Time insights for datetime models. Use when analyzing time series model accuracy trends across backtests and holdout sets." }, { "slug": "DATAROBOT_LIST_PROJECTS_EXTERNAL_SCORES", "name": "List Projects External Scores", "description": "Tool to list external scores on prediction datasets for a DataRobot project. Use when retrieving scoring results for predictions made on external datasets." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURE_ASSOCIATION_MATRIX", "name": "List Projects Feature Association Matrix", "description": "Tool to retrieve pairwise feature association statistics for a DataRobot project. Use when you need to analyze feature correlations or associations between features in a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURE_ASSOCIATION_MATRIX_DETAILS", "name": "List Projects Feature Association Matrix Details", "description": "Tool to retrieve feature association matrix details between two features in a DataRobot project. Use when you need to analyze the relationship and association between a pair of features for visualization." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURES", "name": "List Project Features", "description": "Tool to list all features in a DataRobot project. Use when you need to retrieve feature details, statistics, and metadata for analysis or model preparation." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURES_FREQUENT_VALUES", "name": "List Project Feature Frequent Values", "description": "Tool to retrieve frequent values information for a feature in a DataRobot project. Use when analyzing feature distributions or data quality for a specific feature." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURES_METRICS", "name": "List Project Features Metrics", "description": "Tool to retrieve available metrics for a specific feature in a DataRobot project. Use when you need to check which metrics are compatible with a given feature as a target." }, { "slug": "DATAROBOT_LIST_PROJECTS_FEATURES_MULTISERIES_PROPERTIES", "name": "List Feature Multiseries Properties", "description": "Tool to retrieve potential multiseries ID columns to use with a particular datetime partition column. Use when configuring time series projects with multiseries functionality." }, { "slug": "DATAROBOT_LIST_PROJECTS_FROZEN_MODELS", "name": "List Projects Frozen Models", "description": "Tool to list all frozen models from a DataRobot project. Use when you need to retrieve frozen model records from a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS_IMAGE_ACTIVATION_MAPS", "name": "List Project Image Activation Maps", "description": "Tool to list all image activation maps for a DataRobot project. Use when you need to retrieve activation map records for visual AI models." }, { "slug": "DATAROBOT_LIST_PROJECTS_IMAGE_EMBEDDINGS", "name": "List Project Image Embeddings", "description": "Tool to list all image embeddings for a DataRobot project. Use when you need to retrieve image embeddings generated for a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELING_FEATURELISTS", "name": "List Project Modeling Featurelists", "description": "Tool to list all modeling featurelists from a DataRobot project. Use when you need to retrieve featurelists available for modeling in a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELING_FEATURES", "name": "List Projects Modeling Features", "description": "Tool to list all modeling features for a DataRobot project. Use when you need to retrieve feature metadata, statistics, and importance scores for model training." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODEL_JOBS", "name": "List Projects Model Jobs", "description": "Tool to list modeling jobs for a given DataRobot project. Use when you need to inspect or monitor the status of model training jobs within a project, optionally filtering by status." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_ADVANCED_TUNING_PARAMETERS", "name": "List Projects Models Advanced Tuning Parameters", "description": "Tool to retrieve information about all advanced tuning parameters available for a specified model. Use when you need to understand what parameters can be tuned for a model before creating an advanced tuned version." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_BLUEPRINT_CHART", "name": "Get Model Blueprint Chart", "description": "Tool to retrieve a reduced model blueprint chart by model ID. Use when you need to visualize the structure of a trained model's blueprint." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_BLUEPRINT_DOCS", "name": "List Projects Models Blueprint Docs", "description": "Tool to retrieve task documentation for a reduced model blueprint. Use when you need detailed information about the tasks, parameters, and references in a model's blueprint." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_CROSS_CLASS_ACCURACY_SCORES", "name": "List Projects Models Cross Class Accuracy Scores", "description": "Tool to list cross-class accuracy scores for a specific model in a project. Use when analyzing per-class accuracy metrics for bias and fairness evaluation." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_CROSS_VALIDATION_SCORES", "name": "List Projects Models Cross Validation Scores", "description": "Tool to retrieve cross-validation scores for each partition in a DataRobot model. Use when evaluating model performance across different cross-validation folds." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_DATA_DISPARITY_INSIGHTS", "name": "List Projects Models Data Disparity Insights", "description": "Tool to retrieve Cross Class Data Disparity insights for a DataRobot model. Use when analyzing data disparity between two classes for a protected feature." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_DATASET_LIFT_CHARTS", "name": "List Lift Charts for Model Datasets", "description": "Tool to retrieve list of lift chart data on prediction datasets for a project model. Use when you need to analyze lift chart performance metrics for model predictions across different datasets." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_DATASET_ROC_CURVES", "name": "List Model Dataset ROC Curves", "description": "Tool to retrieve ROC curve data for a model's prediction datasets. Use when analyzing model performance via ROC curves. NOTE: This endpoint is deprecated; DataRobot recommends using /api/v2/insights/rocCurve/models/{entityId}/ instead." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_FEATURE_EFFECTS", "name": "List Feature Effects", "description": "Tool to retrieve Feature Effects for a DataRobot model. Feature Effects show how each feature impacts predictions, including partial dependence and predicted vs actual relationships. Use when analyzing feature behavior and model interpretability." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_FEATURE_EFFECTS_METADATA", "name": "List Model Feature Effects Metadata", "description": "Tool to retrieve Feature Effects metadata for a model. Use when you need to check the status and available sources for Feature Effects computation." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_FEATURE_IMPACT", "name": "List Model Feature Impact", "description": "Tool to retrieve feature impact scores for features in a DataRobot model. Use when you need to understand which features have the most impact on model predictions." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_GRID_SEARCH_SCORES", "name": "List Grid Search Scores", "description": "Tool to retrieve grid search scores for a specific model in a DataRobot project. Use when analyzing hyperparameter tuning results or comparing parameter combinations for model optimization." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_LIFT_CHART", "name": "List Model Lift Charts", "description": "Tool to retrieve all available lift charts for a DataRobot model. Use when analyzing model performance to understand how well the model separates predictions. Lift charts show mean actual vs predicted values across bins sorted by prediction value." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_MISSING_REPORT", "name": "Get Model Missing Values Report", "description": "Tool to retrieve a summary of how a model's subtasks handle missing values. Use when analyzing model preprocessing behavior for features with missing data." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_PRIME_RULESETS", "name": "List Prime Rulesets", "description": "Tool to list DataRobot Prime rulesets that approximate a specific model. Use when you need to retrieve interpretable rule-based approximations of a trained model." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_ROC_CURVES", "name": "List Model ROC Curves", "description": "Tool to retrieve all available ROC curves for a binary classification model. Use when you need to analyze model performance across all data sources (validation, holdout, cross-validation)." }, { "slug": "DATAROBOT_LIST_PROJECTS_MODELS_SCORING_CODE", "name": "Retrieve Model Scoring Code", "description": "Tool to retrieve scoring code JAR file for a specific DataRobot model. Use when you need to download the model's scoring code for local execution." }, { "slug": "DATAROBOT_LIST_PROJECTS_MULTICATEGORICAL_INVALID_FORMAT", "name": "List Projects Multicategorical Invalid Format", "description": "Tool to retrieve multicategorical data quality log for a DataRobot project. Use when you need to check for multicategorical feature format errors." }, { "slug": "DATAROBOT_LIST_PROJECTS_MULTISERIES_NAMES", "name": "List Projects Multiseries Names", "description": "Tool to list the names of a multiseries project. Use when you need to retrieve series names from a multiseries time series project." }, { "slug": "DATAROBOT_LIST_PROJECTS_OPTIMIZED_DATETIME_PARTITIONINGS", "name": "List Optimized Datetime Partitionings", "description": "Tool to list all created optimized datetime partitioning configurations for a project. Use when you need to retrieve the datetime partitioning options that have been generated for time-series modeling." }, { "slug": "DATAROBOT_LIST_PROJECTS_PAYOFF_MATRICES", "name": "List Projects Payoff Matrices", "description": "Tool to list all payoff matrices for a DataRobot project. Use when retrieving payoff matrices to evaluate model cost-benefit trade-offs." }, { "slug": "DATAROBOT_LIST_PROJECTS_PREDICTION_DATASETS", "name": "List Project Prediction Datasets", "description": "Tool to list prediction datasets uploaded to a DataRobot project. Use when you need to browse or retrieve prediction datasets for batch predictions or accuracy tracking." }, { "slug": "DATAROBOT_LIST_PROJECTS_PREDICTION_EXPLANATIONS_RECORDS", "name": "List Project Prediction Explanations Records", "description": "Tool to list prediction explanations records for a DataRobot project. Use when you need to retrieve prediction explanations that have been computed for models in a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_PREDICTIONS", "name": "List Project Predictions", "description": "Tool to list prediction records for a DataRobot project. Use when retrieving batch prediction metadata for a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS_PREDICT_JOBS", "name": "List Project Predict Jobs", "description": "Tool to list all prediction jobs for a given DataRobot project. Use when you need to inspect or monitor prediction job statuses within a project, optionally filtering by status." }, { "slug": "DATAROBOT_LIST_PROJECTS_PRIME_FILES", "name": "List Projects Prime Files", "description": "Tool to list Prime files available in a DataRobot project. Use when you need to retrieve exportable Prime model code files." }, { "slug": "DATAROBOT_LIST_PROJECTS_PRIME_MODELS", "name": "List Prime Models", "description": "Tool to list all Prime models in a DataRobot project. Use when you need to retrieve Prime models, which are interpretable rule-based approximations of complex models." }, { "slug": "DATAROBOT_LIST_PROJECTS_RATING_TABLE_MODELS", "name": "List Projects Rating Table Models", "description": "Tool to list rating table models for a DataRobot project. Use when you need to retrieve all rating table models associated with a project." }, { "slug": "DATAROBOT_LIST_PROJECTS_RATING_TABLES", "name": "List Projects Rating Tables", "description": "Tool to list rating tables for a DataRobot project. Use when you need to retrieve all rating tables associated with a specific project." }, { "slug": "DATAROBOT_LIST_PROJECTS_RATING_TABLES_FILE", "name": "Retrieve Rating Table File", "description": "Tool to retrieve a rating table file from a DataRobot project. Use when you need to download the source CSV file for a specific rating table." }, { "slug": "DATAROBOT_LIST_PROJECTS_RECOMMENDED_MODELS", "name": "List Project Recommended Models", "description": "Tool to list recommended models for a DataRobot project. Use when you need to retrieve the models that DataRobot recommends for deployment or further analysis based on accuracy and performance characteristics." }, { "slug": "DATAROBOT_LIST_PROJECTS_RULE_FIT_FILES", "name": "List Project RuleFit Files", "description": "Tool to list RuleFit code files for a DataRobot project. Use when you need to retrieve RuleFit code files, optionally filtered by a specific RuleFit model." }, { "slug": "DATAROBOT_LIST_PROJECTS_SECONDARY_DATASETS_CONFIGURATIONS", "name": "List Project Secondary Datasets Configurations", "description": "Tool to list all secondary dataset configurations for a DataRobot project. Use when you need to retrieve configurations for secondary datasets used in modeling." }, { "slug": "DATAROBOT_LIST_PROJECTS_SHAP_MATRICES", "name": "List Project SHAP Matrices", "description": "Tool to list SHAP matrix records for a DataRobot project. Use when you need to retrieve SHAP explanations for models in a project. Note: This is a deprecated API endpoint." }, { "slug": "DATAROBOT_LIST_PROJECTS_TRAINING_PREDICTIONS", "name": "List Projects Training Predictions", "description": "Tool to list training prediction jobs for a specific DataRobot project. Use when you need to retrieve training predictions that have been generated for models within a project." }, { "slug": "DATAROBOT_LIST_QUOTAS", "name": "List Quotas", "description": "Tool to list all quotas configured in DataRobot. Use when retrieving quota configurations for resources or users." }, { "slug": "DATAROBOT_LIST_QUOTA_TEMPLATES", "name": "List Quota Templates", "description": "Tool to list quota templates in DataRobot. Use when retrieving available quota templates for resource management." }, { "slug": "DATAROBOT_LIST_RECIPE_INPUTS", "name": "List Recipe Inputs", "description": "Tool to get inputs on a recipe. Use when you need to retrieve the list of inputs configured for a specific recipe." }, { "slug": "DATAROBOT_LIST_RECIPES_INSIGHTS", "name": "List Recipe Insights", "description": "Tool to retrieve recipe insights for a specific recipe. Use when analyzing feature characteristics and statistics for a data wrangling recipe." }, { "slug": "DATAROBOT_LIST_RECIPES_PREVIEW", "name": "List Recipes Preview", "description": "Tool to retrieve a wrangling recipe preview. Use when you need to see sample data output from a recipe." }, { "slug": "DATAROBOT_LIST_RECOMMENDED_SETTINGS_CHOICES", "name": "List Recommended Settings Choices", "description": "Tool to retrieve available setting choices list for an entity type. Use when you need to discover what recommended settings are available before configuring them." }, { "slug": "DATAROBOT_LIST_REGISTERED_MODELS", "name": "List Registered Models", "description": "Tool to list registered models from DataRobot. Use when you need to search, filter, or page through registered models in the model registry." }, { "slug": "DATAROBOT_LIST_REGISTERED_MODELS_DEPLOYMENTS", "name": "List Registered Model Deployments", "description": "Tool to list deployments associated with a registered model. Use when retrieving deployments for a specific registered model with pagination and filtering support." }, { "slug": "DATAROBOT_LIST_REGISTERED_MODELS_SHARED_ROLES", "name": "List Registered Models Shared Roles", "description": "Tool to get a registered model's access control list. Use when you need to view who has access to a specific registered model and their assigned roles." }, { "slug": "DATAROBOT_LIST_REGISTERED_MODELS_VERSIONS_DEPLOYMENTS", "name": "List Registered Model Version Deployments", "description": "Tool to list all deployments associated with a registered model version. Use when retrieving deployment information for a specific model version." }, { "slug": "DATAROBOT_LIST_REGISTERED_MODEL_VERSIONS", "name": "List Registered Model Versions", "description": "Tool to list versions of a registered model. Use when you need to view or search through versions of a specific registered model in DataRobot." }, { "slug": "DATAROBOT_LIST_SCHEDULED_JOBS", "name": "List Scheduled Jobs", "description": "Tool to list scheduled deployment batch prediction jobs a user can view. Use when retrieving paginated scheduled jobs from DataRobot." }, { "slug": "DATAROBOT_LIST_SEAT_LICENSE_ALLOCATIONS", "name": "List Seat License Allocations", "description": "Tool to list seat license allocations. Use when you need to retrieve seat license allocation information with optional filtering by IDs, organization, or subjects." }, { "slug": "DATAROBOT_LIST_SECURE_CONFIGS", "name": "List Secure Configurations", "description": "Tool to retrieve a list of secure configurations in DataRobot. Use when you need to browse or filter available secure configurations for credentials management." }, { "slug": "DATAROBOT_LIST_SECURE_CONFIG_SCHEMAS", "name": "List Secure Config Schemas", "description": "Tool to retrieve a list of secure configuration schemas. Use when you need to list available secure configuration schemas with optional filtering by name." }, { "slug": "DATAROBOT_LIST_SECURE_CONFIGS_VALUES", "name": "List Secure Config Values", "description": "Tool to retrieve a list of values for a secure configuration. Use when you need to fetch the key-value pairs associated with a specific secure configuration." }, { "slug": "DATAROBOT_LIST_STATUS", "name": "List Status Jobs", "description": "Tool to list currently running async status jobs in DataRobot. Use when you need to monitor or inspect the status of asynchronous tasks across the system." }, { "slug": "DATAROBOT_LIST_TENANTS_RESOURCE_CATEGORIES", "name": "List Tenants Resource Categories", "description": "Tool to retrieve available resource categories for a specific tenant. Use when you need to understand what resource types are available for a tenant." }, { "slug": "DATAROBOT_LIST_TENANT_USAGE_RESOURCES_CATEGORIES", "name": "List Tenant Usage Resources Categories", "description": "Tool to get available resource categories for tenant usage. Use when retrieving the list of resource categories that can be used for filtering or analyzing tenant usage data." }, { "slug": "DATAROBOT_LIST_USAGE_DATA_EXPORTS_SUPPORTED_EVENTS", "name": "List Usage Data Exports Supported Events", "description": "Tool to list supported audit events for usage data export filtering. Use when you need to discover available event types before creating or filtering usage data exports." }, { "slug": "DATAROBOT_LIST_USE_CASE_CUSTOM_APPLICATIONS", "name": "List Use Case Custom Applications", "description": "Tool to list custom applications referenced by a DataRobot use case. Use when you need to retrieve custom applications associated with a specific use case." }, { "slug": "DATAROBOT_LIST_USE_CASE_DATASETS", "name": "List Use Case Datasets", "description": "Tool to get a list of datasets associated with a DataRobot Use Case. Use when you need to view or filter datasets within a specific Use Case." }, { "slug": "DATAROBOT_LIST_USE_CASE_DEPLOYMENTS", "name": "List Use Case Deployments", "description": "Tool to get deployments associated with a use case. Use when retrieving paginated deployments linked to a specific DataRobot use case." }, { "slug": "DATAROBOT_LIST_USE_CASE_NOTEBOOKS_BY_ID", "name": "List Use Case Notebooks By ID", "description": "Tool to get a list of notebooks associated with a specific Use Case by ID. Use when you need to retrieve notebooks for a particular use case in DataRobot." }, { "slug": "DATAROBOT_LIST_USE_CASE_REGISTERED_MODELS", "name": "List Use Case Registered Models", "description": "Tool to get registered models associated with a use case. Use when retrieving paginated registered models linked to a specific DataRobot use case." }, { "slug": "DATAROBOT_LIST_USE_CASES", "name": "List Use Cases", "description": "Tool to retrieve a list of Use Cases from DataRobot. Use when you need to browse or filter available Use Cases to select one for further operations." }, { "slug": "DATAROBOT_LIST_USE_CASES_ALL_RESOURCES", "name": "List Use Cases All Resources", "description": "Tool to get a list of references associated with all Use Cases. Use when retrieving all resources (projects, datasets, files, etc.) linked to any Use Case." }, { "slug": "DATAROBOT_LIST_USE_CASES_APPLICATIONS", "name": "List Use Cases Applications", "description": "Tool to list applications associated with a DataRobot Use Case. Use when retrieving a paginated list of applications for a specific Use Case." }, { "slug": "DATAROBOT_LIST_USE_CASES_DATA", "name": "List Use Case Data", "description": "Tool to retrieve a list of datasets and recipes from a specific DataRobot Use Case. Use when you need to browse or filter available datasets and recipes within a use case." }, { "slug": "DATAROBOT_LIST_USE_CASES_FILES", "name": "List Use Cases Files", "description": "Tool to list catalog files associated with a specific Use Case. Use when retrieving files from a DataRobot Use Case for further analysis or processing." }, { "slug": "DATAROBOT_LIST_USE_CASES_FILTER_METADATA", "name": "Get Use Case Filter Metadata", "description": "Tool to retrieve filtering metadata for a DataRobot Use Case. Use when you need to understand available metrics, model families, and sample sizes for filtering models within a Use Case." }, { "slug": "DATAROBOT_LIST_USE_CASES_MODELS_FOR_COMPARISON", "name": "List Use Case Models for Comparison", "description": "Tool to get models from projects in a Use Case for comparison. Use when you need to compare models across multiple projects within a Use Case, filter by metrics, or find top-performing models." }, { "slug": "DATAROBOT_LIST_USE_CASES_NOTEBOOKS", "name": "List Use Cases Notebooks", "description": "Tool to get a list of notebooks from all Use Cases. Use when you need to retrieve or browse notebooks across all use cases in DataRobot." }, { "slug": "DATAROBOT_LIST_USE_CASES_PLAYGROUNDS", "name": "List Use Cases Playgrounds", "description": "Tool to list playgrounds associated with a Use Case. Use when retrieving playground information for a specific use case." }, { "slug": "DATAROBOT_LIST_USE_CASES_PROJECTS", "name": "List Use Case Projects", "description": "Tool to get a list of projects associated with a use case. Use when retrieving paginated projects linked to a specific DataRobot use case." }, { "slug": "DATAROBOT_LIST_USE_CASES_RESOURCES", "name": "List Use Case Resources", "description": "Tool to get a list of the references associated with a DataRobot use case. Use when retrieving resources linked to a specific use case." }, { "slug": "DATAROBOT_LIST_USE_CASES_SHARED_ROLES", "name": "List Use Cases Shared Roles", "description": "Tool to get a use case's access control list. Use when you need to see who has access to a specific use case and their roles." }, { "slug": "DATAROBOT_LIST_USE_CASES_VECTOR_DATABASES", "name": "List Use Case Vector Databases", "description": "Tool to retrieve a list of vector databases associated with a DataRobot Use Case. Use when you need to browse or filter vector databases linked to a specific use case." }, { "slug": "DATAROBOT_LIST_USE_CASES_WITH_SHORTENED_INFO", "name": "List Use Cases With Shortened Info", "description": "Tool to retrieve a list of Use Cases with abbreviated content from DataRobot. Use when you need to quickly browse Use Cases without full metadata." }, { "slug": "DATAROBOT_LIST_USER_BLUEPRINTS", "name": "List User Blueprints", "description": "Tool to list user blueprints from DataRobot. Use when retrieving custom blueprints created by users for model building." }, { "slug": "DATAROBOT_LIST_USER_BLUEPRINTS_INPUT_TYPES", "name": "List User Blueprints Input Types", "description": "Tool to retrieve available input types for user blueprints. Use when you need to understand what input types are supported for custom blueprint creation." }, { "slug": "DATAROBOT_LIST_USER_BLUEPRINTS_TASKS", "name": "List User Blueprints Tasks", "description": "Tool to retrieve tasks for blueprint construction in DataRobot. Use when you need to view available tasks for creating or modifying blueprints, optionally filtered by project, blueprint, or user blueprint ID." }, { "slug": "DATAROBOT_LIST_USER_GROUPS", "name": "List User Groups", "description": "Tool to list user groups. Use when you need to retrieve DataRobot user groups with optional filtering and pagination." }, { "slug": "DATAROBOT_LIST_USER_NOTIFICATIONS", "name": "List User Notifications", "description": "Tool to list user notifications in DataRobot. Use when you need to retrieve a paginated list of notifications for the authenticated user, optionally filtering by read/unread status." }, { "slug": "DATAROBOT_LIST_USERS_IN_GROUP", "name": "List Users in Group", "description": "Lists users in a specific DataRobot user group. Returns paginated user membership details including username, status, and organization. Use the List User Groups action first to obtain a valid groupId. Supports filtering by name, active status, and admin status, with sorting options." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKERS", "name": "List Value Trackers", "description": "Tool to list Value Trackers that the requesting user has access to in DataRobot. Use when you need to retrieve a catalog of Value Trackers for review or selection." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKERS_ACTIVITIES", "name": "List Value Trackers Activities", "description": "Tool to retrieve the activities of a value tracker. Use when you need to view the history of changes and events for a specific value tracker." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKERS_ATTACHMENTS", "name": "List Value Tracker Attachments", "description": "Tool to list resources attached to a DataRobot value tracker. Use when you need to retrieve datasets, deployments, models, or other resources associated with a specific value tracker." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKERS_SHARED_ROLES", "name": "List Value Trackers Shared Roles", "description": "Tool to get a value tracker's access control list. Use when you need to view who has access to a value tracker and their permission levels." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKER_VALUE_TEMPLATES", "name": "List Value Tracker Value Templates", "description": "Tool to list available value tracker templates in DataRobot. Use when you need to discover available value tracker templates for classification or regression models." }, { "slug": "DATAROBOT_LIST_VALUE_TRACKER_VALUE_TEMPLATES_CALCULATION", "name": "List Value Tracker Value Templates Calculation", "description": "Tool to calculate value of template with given template parameters. Use when you need to estimate the value and savings of a DataRobot model based on accuracy improvements and decision costs." }, { "slug": "DATAROBOT_LIST_VCS_GIT_PROVIDERS", "name": "List VCS Git Providers", "description": "Tool to list all VCS Git providers configured in DataRobot. Use when you need to view available Git provider integrations." }, { "slug": "DATAROBOT_LIST_VERSION", "name": "List Version", "description": "Tool to retrieve DataRobot API version information. Use when you need to check the API version or verify compatibility." }, { "slug": "DATAROBOT_LIST_WRANGLING_RECIPES", "name": "List Wrangling Recipes", "description": "Tool to list all available wrangling recipes. Use when fetching paginated recipes for data wrangling." }, { "slug": "DATAROBOT_MOVE_NOTEBOOK_FILESYSTEM_OBJECT", "name": "Move Notebook Filesystem Object", "description": "Tool to move a file or directory within a DataRobot notebook session filesystem. Use when you need to relocate files or directories to a different path within the same notebook session." }, { "slug": "DATAROBOT_PAUSE_OR_UNPAUSE_AUTOPILOT", "name": "Pause or Unpause Autopilot", "description": "Tool to pause or unpause Autopilot for a project. Use when you need to stop or resume automated modeling jobs after confirming the project ID." }, { "slug": "DATAROBOT_RESTORE_NOTEBOOK_REVISION", "name": "Restore Notebook Revision", "description": "Tool to restore a DataRobot notebook to a specific revision. Use when you need to revert a notebook to a previous state identified by its revision ID." }, { "slug": "DATAROBOT_START_MODELING", "name": "Start DataRobot Autopilot", "description": "Tool to start the data modeling (Autopilot) process for a DataRobot project. Use after uploading data and configuring the project to initiate modeling." }, { "slug": "DATAROBOT_START_OCR_JOB_RESOURCE", "name": "Start OCR Job Resource", "description": "Start an OCR job resource for optical character recognition processing. Use after creating an OCR job resource to initiate the actual OCR processing." }, { "slug": "DATAROBOT_STOP_NOTEBOOK_RUNTIME", "name": "Stop Notebook Runtime", "description": "Tool to stop a running DataRobot notebook runtime. Use when you need to terminate an active notebook session to free up resources or end work." }, { "slug": "DATAROBOT_TEST_EXTERNAL_DATA_STORES_CONNECTION", "name": "Test External Data Store Connection", "description": "Tool to test an external data store connection in DataRobot. Use when you need to validate that a data store is properly configured and accessible with the provided credentials." }, { "slug": "DATAROBOT_UPDATE_ACCESS_ROLE", "name": "Update Access Role", "description": "Tool to update a custom Access Role. Use when you need to change the name or permissions of an existing custom role." }, { "slug": "DATAROBOT_UPDATE_ACCURACY_METRICS_CONFIG", "name": "Update Accuracy Metrics Config", "description": "Tool to update which accuracy metrics are returned by the accuracy endpoint for a deployment. Use after deployment is live to customize returned metrics." }, { "slug": "DATAROBOT_UPDATE_BATCH_JOBS_CSV_UPLOAD", "name": "Upload CSV Data to Batch Job", "description": "Tool to stream CSV data to a DataRobot batch job. Use when you need to upload CSV data for batch predictions. The batch job must have been created with localFile intake settings before using this endpoint." }, { "slug": "DATAROBOT_UPDATE_BATCH_MONITORING_JOB_DEFINITION", "name": "Update Batch Monitoring Job Definition", "description": "Tool to update a Batch Monitoring job definition. Use when you need to modify settings like name, schedule, or monitoring configuration for an existing batch monitoring job." }, { "slug": "DATAROBOT_UPDATE_BATCH_PREDICTION_JOB_DEFINITION", "name": "Update Batch Prediction Job Definition", "description": "Tool to update an existing Batch Prediction job definition. Use when you need to modify job parameters, scheduling, or configuration for batch scoring operations." }, { "slug": "DATAROBOT_UPDATE_BATCH_PREDICTIONS", "name": "Update Batch Predictions", "description": "Tool to update a Batch Prediction job in DataRobot. Use when you need to hide/unhide a job or update job status information." }, { "slug": "DATAROBOT_UPDATE_BATCH_PREDICTIONS_CSV_UPLOAD_PART", "name": "Upload Batch Prediction CSV Part", "description": "Tool to upload CSV data in multiple parts for batch predictions. Use when you need to submit prediction input data for an existing batch prediction job in chunks." }, { "slug": "DATAROBOT_UPDATE_CALENDAR", "name": "Update Calendar", "description": "Tool to update a calendar's name in DataRobot. Use when you need to rename an existing calendar." }, { "slug": "DATAROBOT_UPDATE_CALENDARS_ACCESS_CONTROL", "name": "Update Calendars Access Control", "description": "Tool to update access control for a calendar. Use when you need to grant, modify, or revoke user access to a calendar. Allows setting roles (OWNER, EDITOR, CONSUMER) for up to 100 users at once." }, { "slug": "DATAROBOT_UPDATE_CATALOG_ITEM", "name": "Update Catalog Item", "description": "Tool to update a catalog item's name, description, or tags. Use when you need to modify metadata for an existing DataRobot catalog item." }, { "slug": "DATAROBOT_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment in DataRobot. Use when you need to modify the content of a comment or update mentioned users." }, { "slug": "DATAROBOT_UPDATE_COMPLIANCE_DOC_TEMPLATES", "name": "Update Compliance Doc Templates", "description": "Tool to update an existing model compliance documentation template in DataRobot. Use when you need to modify the name, description, labels, project type, or sections of a compliance template." }, { "slug": "DATAROBOT_UPDATE_COMPLIANCE_DOC_TEMPLATES_SHARED_ROLES", "name": "Update Compliance Doc Template Shared Roles", "description": "Tool to update shared roles for a compliance document template. Use when you need to grant, modify, or revoke access to a compliance doc template. Allows setting roles (OWNER, EDITOR, CONSUMER) for users, groups, or organizations. Maximum 100 entries per request." }, { "slug": "DATAROBOT_UPDATE_CREDENTIALS", "name": "Update Credentials", "description": "Tool to update existing DataRobot credentials. Use when you need to modify credential fields such as name, description, or credential-specific parameters (tokens, keys, etc.)." }, { "slug": "DATAROBOT_UPDATE_CREDENTIALS_ASSOCIATIONS", "name": "Update Credentials Associations", "description": "Tool to add or remove objects associated with credentials. Use when you need to associate data connections with stored credentials or remove existing associations." }, { "slug": "DATAROBOT_UPDATE_CREDENTIALS_ASSOCIATIONS_BY_ID", "name": "Update Credentials Associations by ID", "description": "Tool to set default credentials for a data connection or batch prediction job. Use when you need to update the default status of a credential association." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_APPLICATION_SOURCE", "name": "Update Custom Application Source", "description": "Tool to update a custom application source's name. Use when you need to rename an existing custom application source." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_APPLICATION_SOURCES_VERSIONS", "name": "Update Custom Application Source Version", "description": "Tool to update a custom application source version with new label, base environment, or files. Use when you need to modify an existing version's metadata or file configuration." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_JOB", "name": "Update Custom Job", "description": "Tool to update an existing DataRobot custom job. Use when you need to modify custom job properties like name, description, environment, or runtime parameters." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_JOBS_SHARED_ROLES", "name": "Update Custom Job Shared Roles", "description": "Tool to update shared roles for a custom job. Use when you need to grant, modify, or revoke access to a custom job. Allows setting roles (OWNER, EDITOR, CONSUMER) for users, groups, or organizations. Maximum 100 entries per request." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_MODEL", "name": "Update Custom Model", "description": "Tool to update a DataRobot custom model. Use when you need to modify properties of an existing custom model such as description, memory settings, class labels, or other configuration." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_MODELS_ACCESS_CONTROL", "name": "Update Custom Model Access Control", "description": "Tool to update access control for a custom model. Use when you need to grant, modify, or revoke user access to a custom model. Allows setting roles (OWNER, EDITOR, CONSUMER) and share permissions for up to 100 users at once." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_MODELS_VERSIONS", "name": "Update Custom Model Version", "description": "Tool to update custom model version files and configuration in DataRobot. Use when you need to create a new version of a custom model by uploading new files or updating settings." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_MODELS_VERSIONS_BY_ID", "name": "Update Custom Model Version", "description": "Tool to update a custom model version in DataRobot. Use when you need to modify the description, git attributes, or metadata of an existing custom model version." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_MODELS_VERSIONS_WITH_TRAINING_DATA", "name": "Update Custom Models Versions With Training Data", "description": "Tool to add or replace training and holdout data for a custom model version. Use when you need to update the datasets associated with a custom model for training or validation purposes. The operation is asynchronous - poll the returned location URL to check completion status." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_TASKS_VERSIONS", "name": "Update Custom Task Version", "description": "Tool to update a DataRobot custom task version by uploading new files and/or updating configuration. Creates a new version (major or minor) of an existing custom task with updated code files. Use when you need to modify custom task code, change the base environment, or update task configuration." }, { "slug": "DATAROBOT_UPDATE_CUSTOM_TASK_VERSION", "name": "Update Custom Task Version", "description": "Tool to update a custom task version in DataRobot. Use when you need to modify the description or metadata of an existing custom task version." }, { "slug": "DATAROBOT_UPDATE_DATASET_DEFINITIONS_CHUNK_DEFINITIONS", "name": "Update Dataset Definitions Chunk Definitions", "description": "Tool to update a chunk definition in a dataset definition. Use when you need to modify chunk definition properties such as name, partition columns, or validation dates." }, { "slug": "DATAROBOT_UPDATE_DATASET_FEATURELIST", "name": "Update Dataset Featurelist", "description": "Tool to update a dataset featurelist's name or description. Use when you need to modify the metadata of an existing dataset featurelist." }, { "slug": "DATAROBOT_UPDATE_DATASET_RELATIONSHIP", "name": "Update Dataset Relationship", "description": "Tool to update an existing dataset relationship in DataRobot. Use when you need to modify the linked dataset or features used in a relationship between two datasets." }, { "slug": "DATAROBOT_UPDATE_DATASETS", "name": "Update Datasets (Bulk Action)", "description": "Tool to execute bulk actions on multiple datasets. Supports tagging, deleting, and updating role-based access (sharing/unsharing) for datasets. Use when you need to perform the same action on multiple datasets at once." }, { "slug": "DATAROBOT_UPDATE_DATASETS_ACCESS_CONTROL", "name": "Update Dataset Access Control", "description": "Tool to update access control for a dataset. Use when you need to grant, modify, or revoke user access to a dataset. Allows setting roles (OWNER, EDITOR, CONSUMER) and permissions (canShare, canUseData) for multiple users at once." }, { "slug": "DATAROBOT_UPDATE_DATASETS_BY_ID", "name": "Update Dataset by ID", "description": "Tool to update a dataset's name or categories in DataRobot's global catalog. Use when you need to modify dataset metadata such as its name or intended-use categories." }, { "slug": "DATAROBOT_UPDATE_DATASETS_DELETED", "name": "Recover Deleted Dataset", "description": "Tool to recover a deleted dataset in DataRobot. Use when you need to restore a dataset that was previously marked as deleted." }, { "slug": "DATAROBOT_UPDATE_DATASETS_REFRESH_JOBS", "name": "Update Dataset Refresh Job", "description": "Tool to update a dataset refresh job configuration. Use when you need to modify the schedule, name, enabled status, or other settings for an existing dataset refresh job." }, { "slug": "DATAROBOT_UPDATE_DATASETS_SHARED_ROLES", "name": "Update Dataset Shared Roles", "description": "Tool to modify dataset shared roles in DataRobot. Use when you need to update permissions for users, groups, or organizations on a dataset. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates." }, { "slug": "DATAROBOT_UPDATE_DATASETS_VERSIONS_DELETED", "name": "Recover Deleted Dataset Version", "description": "Tool to recover a deleted dataset version in DataRobot. Use when you need to restore a specific version of a dataset that was previously marked as deleted." }, { "slug": "DATAROBOT_UPDATE_DATA_STAGES_PARTS", "name": "Update Data Stage Part", "description": "Tool to upload a part file to a DataRobot data stage. Use when uploading large datasets in multiple parts. The uploaded part is verified with a checksum and size returned in the response." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENT", "name": "Update Deployment", "description": "Tool to update an existing DataRobot deployment's metadata. Use when you need to modify a deployment's label, description, or importance level." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_CHALLENGER_REPLAY_SETTINGS", "name": "Update Challenger Replay Settings", "description": "Tool to update challenger replay settings for a deployment. Use to enable/disable scheduled replay and configure the schedule." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_CUSTOM_METRICS", "name": "Update Deployment Custom Metric", "description": "Tool to update settings for a deployment's custom metric. Use to modify metric description, directionality, units, or other configuration settings." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENT_SETTINGS", "name": "Update Deployment Settings", "description": "Tool to update deployment settings for a DataRobot deployment. Use when you need to configure settings like predictions data collection, feature drift, target drift, bias and fairness, humility, prediction intervals, and other deployment-level configurations." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_HEALTH_SETTINGS", "name": "Update Deployment Health Settings", "description": "Tool to update health settings for a DataRobot deployment. Configure monitoring thresholds for accuracy, data drift, service health, fairness, and timeliness. Use after deployment is active to customize health monitoring behavior." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_MODEL", "name": "Update Deployment Model", "description": "Tool to replace a deployment's champion model with a different model or model package. Use when updating the active model in a deployment due to accuracy improvements, data drift, or performance needs." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_MONITORING_BATCHES", "name": "Update Deployment Monitoring Batch", "description": "Tool to update a monitoring batch in a deployment. Use when you need to modify batch properties like name, description, lock status, or external context URL." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_RETRAINING_SETTINGS", "name": "Update Deployments Retraining Settings", "description": "Tool to update deployment retraining settings. Use when configuring automatic retraining for a deployment." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENTS_SHARED_ROLES", "name": "Update Deployment Shared Roles", "description": "Tool to modify deployment shared roles in DataRobot. Use when you need to update permissions for users, groups, or organizations on a deployment. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates." }, { "slug": "DATAROBOT_UPDATE_DEPLOYMENT_STATUS", "name": "Update Deployment Status", "description": "Tool to update deployment status. Use when you need to activate or deactivate a deployment. Returns 202 when job is submitted." }, { "slug": "DATAROBOT_UPDATE_ENTITY_NOTIFICATION_CHANNELS", "name": "Update Entity Notification Channel", "description": "Tool to update an entity notification channel for a deployment or custom job. Use when you need to modify the configuration of an existing notification channel, such as changing the name, language preference, or channel-specific settings like email addresses, payload URLs, or custom headers." }, { "slug": "DATAROBOT_UPDATE_ENTITY_NOTIFICATION_POLICIES", "name": "Update Entity Notification Policies", "description": "Tool to update entity notification policy. Use when you need to modify notification settings for deployments or custom jobs." }, { "slug": "DATAROBOT_UPDATE_ENTITY_NOTIFICATION_POLICY_TEMPLATE", "name": "Update Entity Notification Policy Template", "description": "Tool to update an entity notification policy template in DataRobot. Use when you need to modify notification settings for existing templates. At least one optional field must be provided for update." }, { "slug": "DATAROBOT_UPDATE_ENTITY_NOTIFY_POLICY_TPL_SHARED_ROLES", "name": "Update Notification Policy Template Shared Roles", "description": "Tool to update entity notification policy template shared roles in DataRobot. Use when you need to modify permissions for users, groups, or organizations on a notification policy template. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates to avoid leaving the template without an owner." }, { "slug": "DATAROBOT_UPDATE_ENTITY_TAGS", "name": "Update Entity Tag", "description": "Tool to update an entity tag's name in DataRobot. Use when you need to rename an existing entity tag." }, { "slug": "DATAROBOT_UPDATE_EXECUTION_ENVIRONMENT", "name": "Update Execution Environment", "description": "Tool to update a DataRobot execution environment. Use when you need to modify properties like description, name, programming language, or use cases of an existing environment." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_SOURCE", "name": "Update External Data Source", "description": "Tool to update an external data source's canonical name or configuration parameters. Use when modifying properties of an existing data source connection." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_SOURCES_ACCESS_CONTROL", "name": "Update External Data Sources Access Control", "description": "Tool to update access control roles for an external data source. Use when you need to grant, modify, or revoke user access permissions on a data source." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_SOURCES_SHARED_ROLES", "name": "Update External Data Source Shared Roles", "description": "Tool to modify external data source shared roles in DataRobot. Use when you need to update permissions for users, groups, or organizations on an external data source. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_STORE", "name": "Update External Data Store", "description": "Tool to update an external data store configuration. Use when you need to modify the name or parameters of an existing data store connection." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_STORES_ACCESS_CONTROL", "name": "Update External Data Store Access Control", "description": "Tool to update access control settings for an external data store. Use when you need to grant, modify, or revoke user access to a data store. Note: The request must not leave the data store without an owner." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_DATA_STORES_SHARED_ROLES", "name": "Update External Data Store Shared Roles", "description": "Tool to modify external data store shared roles in DataRobot. Use when you need to update permissions for users, groups, or organizations on an external data store. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates." }, { "slug": "DATAROBOT_UPDATE_EXTERNAL_OAUTH_PROVIDER", "name": "Update External OAuth Provider", "description": "Tool to update an external OAuth provider configuration. Use when you need to modify name, client secret, consent settings, or status of an existing OAuth provider." }, { "slug": "DATAROBOT_UPDATE_FILES_ALL_FILES", "name": "Rename File or Folder in Catalog", "description": "Tool to rename a file or folder within a DataRobot catalog item. Use when you need to change the path or name of a file or folder in the files catalog. Supports conflict resolution strategies like rename, replace, skip, or error." }, { "slug": "DATAROBOT_UPDATE_FILES_DELETED", "name": "Recover Deleted File", "description": "Tool to recover a deleted file from DataRobot. Use when you need to restore a previously deleted file by its catalog item ID." }, { "slug": "DATAROBOT_UPDATE_GENAI_COMPARISON_CHAT", "name": "Update GenAI Comparison Chat", "description": "Tool to update a GenAI comparison chat name. Use when you need to rename an existing comparison chat for better organization." }, { "slug": "DATAROBOT_UPDATE_GENAI_CUSTOM_MODEL_LLM_VALIDATIONS", "name": "Update GenAI Custom Model LLM Validations", "description": "Tool to update a GenAI custom model LLM validation. Use when you need to modify validation settings, rename, or change associated model/deployment IDs. At least one optional field must be provided for the update to succeed." }, { "slug": "DATAROBOT_UPDATE_GENAI_CUSTOM_MODEL_VECTOR_DB_VALIDATIONS", "name": "Update GenAI Custom Model Vector Database Validations", "description": "Tool to update a GenAI custom model vector database validation. Use when you need to modify validation settings, rename, or change associated model/deployment IDs. At least one optional field must be provided for the update to succeed." }, { "slug": "DATAROBOT_UPDATE_GENAI_PLAYGROUND", "name": "Update GenAI Playground", "description": "Tool to update a GenAI playground. Use when you need to modify the name or description of an existing playground." }, { "slug": "DATAROBOT_UPDATE_GROUPS", "name": "Update User Group", "description": "Tool to update a user group by its ID. Use when you need to modify group properties like name, description, email, access role, or permissions." }, { "slug": "DATAROBOT_UPDATE_GUARD_CONFIGURATIONS", "name": "Update Guard Configuration", "description": "Tool to update a DataRobot guard configuration. Use when you need to modify guard settings such as name, description, intervention rules, or LLM configurations." }, { "slug": "DATAROBOT_UPDATE_IMAGE_AUGMENTATION_LISTS", "name": "Update Image Augmentation Lists", "description": "Tool to update an existing image augmentation list in DataRobot. Use when you need to modify augmentation settings for image data preprocessing." }, { "slug": "DATAROBOT_UPDATE_MODELING_FEATURELIST", "name": "Update Modeling Featurelist", "description": "Tool to update a modeling featurelist's name or description. Use when you need to modify an existing featurelist's metadata." }, { "slug": "DATAROBOT_UPDATE_NOTEBOOK", "name": "Update Notebook", "description": "Tool to update a DataRobot notebook's name or description. Use when you need to modify notebook metadata." }, { "slug": "DATAROBOT_UPDATE_NOTEBOOK_EXECUTION_ENVIRONMENT", "name": "Update Notebook Execution Environment", "description": "Tool to update a notebook execution environment configuration. Use when you need to change environment settings, compute resources, or inactivity timeout for a notebook." }, { "slug": "DATAROBOT_UPDATE_NOTEBOOK_JOBS", "name": "Update Notebook Job", "description": "Tool to update an existing notebook job in DataRobot. Use when you need to modify the schedule, enable/disable a job, change the use case association, or update parameters for an existing scheduled notebook job." }, { "slug": "DATAROBOT_UPDATE_NOTEBOOKS_CELLS_OUTPUT", "name": "Update Notebook Cell Output", "description": "Tool to update the output of a specific cell in a DataRobot notebook. Use when you need to update cell output data with an MD5 validation hash." }, { "slug": "DATAROBOT_UPDATE_NOTEBOOK_STATE", "name": "Update Notebook State", "description": "Tool to update notebook state and retrieve current cell information. Use when you need to refresh the notebook's execution state and get details about all cells. Note: This operation is not supported for Codespace-type notebooks." }, { "slug": "DATAROBOT_UPDATE_NOTIFICATION_CHANNEL_TEMPLATE", "name": "Update Notification Channel Template", "description": "Tool to update a notification channel template in DataRobot. Use when you need to modify an existing notification channel template's configuration, such as changing its name, language, or channel-specific settings." }, { "slug": "DATAROBOT_UPDATE_NOTIFICATION_CHANNEL_TEMPLATES_SHARED_ROLES", "name": "Update Notification Channel Template Shared Roles", "description": "Tool to update notification channel template shared roles in DataRobot. Use when you need to modify permissions for users, groups, or organizations on a notification channel template. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates to avoid leaving the template without an owner." }, { "slug": "DATAROBOT_UPDATE_OTEL_METRICS_CONFIGS", "name": "Update OpenTelemetry Metrics Configurations", "description": "Tool to set all OpenTelemetry metric configurations for a specified entity. Use when you need to configure which OTel metrics are collected and how they are aggregated for deployments, use cases, or other entities. This replaces all existing configurations." }, { "slug": "DATAROBOT_UPDATE_OTEL_METRICS_CONFIGS_BY_ID", "name": "Update OTEL Metrics Config By ID", "description": "Tool to update an OpenTelemetry metric configuration for a specified entity. Use when you need to modify display name, aggregation method, or other settings of an existing OTEL metric." }, { "slug": "DATAROBOT_UPDATE_OVERALL_MODERATION_CONFIGURATION", "name": "Update Overall Moderation Configuration", "description": "Tool to update overall moderation configuration for a custom model, custom model version, or playground. Use when you need to configure timeout behavior and NeMo Evaluator settings for guardrails." }, { "slug": "DATAROBOT_UPDATE_PINNED_USECASES", "name": "Update Pinned Use Cases", "description": "Tool to add or remove pinned use cases in DataRobot. Use when you need to pin or unpin use cases for quick access. Accepts 1-8 use case IDs and an operation type (add/remove)." }, { "slug": "DATAROBOT_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update a DataRobot project's name, description, worker settings, or unlock holdout. Use when you need to modify project metadata or resource allocation after project creation." }, { "slug": "DATAROBOT_UPDATE_PROJECT_ACCESS_CONTROL", "name": "Update Project Access Control", "description": "Tool to update access control settings for a DataRobot project. Use when you need to grant, modify, or revoke user access to a project. Allows setting roles (OWNER, USER, OBSERVER) for multiple users at once. Note: The request must leave at least one OWNER for the project." }, { "slug": "DATAROBOT_UPDATE_PROJECTS_FEATURELISTS", "name": "Update Feature List", "description": "Tool to update an existing feature list in a DataRobot project. Use when you need to rename or update the description of a feature list." }, { "slug": "DATAROBOT_UPDATE_PROJECTS_MODELS", "name": "Update Projects Models", "description": "Tool to update a model's attributes in a DataRobot project. Use when you need to star/unstar a model or change the prediction threshold for binary classification." }, { "slug": "DATAROBOT_UPDATE_PROJECTS_PAYOFF_MATRICES", "name": "Update Payoff Matrix", "description": "Tool to update a payoff matrix for a DataRobot project. Use when you need to modify payoff values or the name of an existing payoff matrix for profit curve calculations." }, { "slug": "DATAROBOT_UPDATE_QUOTAS", "name": "Update Quotas", "description": "Tool to update quota configuration for a DataRobot deployment resource. Use when you need to modify capacity, rules, policies, or saturation threshold of an existing quota." }, { "slug": "DATAROBOT_UPDATE_RECIPE", "name": "Update Wrangling Recipe", "description": "Tool to update a DataRobot wrangling recipe. Use when modifying recipe name, description, type, or SQL query." }, { "slug": "DATAROBOT_UPDATE_RECIPES_DOWNSAMPLING", "name": "Update Recipe Downsampling", "description": "Tool to update the downsampling configuration in a DataRobot recipe. Use when you need to modify downsampling settings for data transformation. Note: Cannot modify published recipes (status 422)." }, { "slug": "DATAROBOT_UPDATE_RECIPES_INPUTS", "name": "Update Recipe Inputs", "description": "Tool to update the input data sources for a DataRobot recipe. Use when you need to change the data source, dataset, or sampling configuration for a recipe. This operation implicitly restarts the initial sampling job." }, { "slug": "DATAROBOT_UPDATE_RECIPES_OPERATIONS", "name": "Update Recipe Operations", "description": "Tool to update the operations in a DataRobot recipe. Use when modifying data transformation directives for wrangling recipes." }, { "slug": "DATAROBOT_UPDATE_RECIPES_SETTINGS", "name": "Update Recipe Settings", "description": "Tool to update recipe settings that are reusable at the modeling stage. Use when modifying Spark instance size, target feature, prediction point, or Feature Discovery settings." }, { "slug": "DATAROBOT_UPDATE_RECOMMENDED_SETTINGS", "name": "Update Recommended Settings", "description": "Tool to update recommended settings for a DataRobot entity (currently only deployments). Use when you need to configure deployment settings checklist items." }, { "slug": "DATAROBOT_UPDATE_REGISTERED_MODEL", "name": "Update Registered Model", "description": "Tool to update a registered model in DataRobot. Use when you need to modify the name, description, or visibility settings of an existing registered model." }, { "slug": "DATAROBOT_UPDATE_REGISTERED_MODELS_SHARED_ROLES", "name": "Update Registered Model Shared Roles", "description": "Tool to modify registered model shared roles in DataRobot. Use when you need to update permissions for users, groups, or organizations on a registered model. Updates roles by adding, modifying, or removing access permissions. Ensure at least one OWNER remains after updates." }, { "slug": "DATAROBOT_UPDATE_SECURE_CONFIG", "name": "Update Secure Configuration", "description": "Tool to update a secure configuration. Use when you need to modify the name, schema, or values of an existing secure configuration." }, { "slug": "DATAROBOT_UPDATE_SECURE_CONFIGS_SHARED_ROLES", "name": "Update Secure Config Shared Roles", "description": "Tool to share a secure configuration with users, groups, or organizations. Use when you need to update permissions for a secure configuration." }, { "slug": "DATAROBOT_UPDATE_USE_CASE", "name": "Update Use Case", "description": "Tool to update an existing DataRobot use case's metadata. Use when you need to modify a use case's name or description." }, { "slug": "DATAROBOT_UPDATE_USE_CASES_BY_ID", "name": "Move Entity Between Use Cases", "description": "Tool to move an entity (project, dataset, notebook, etc.) from one use case to another. Use when you need to reorganize entities across use cases or reassign entity ownership." }, { "slug": "DATAROBOT_UPDATE_USE_CASE_SHARED_ROLES", "name": "Update Use Case Shared Roles", "description": "Tool to update a use case's access control list. Use when you need to change who has access to a use case and their roles. Supports sharing with users (by username), groups (by name), or any entity (by ID)." }, { "slug": "DATAROBOT_UPDATE_USER_NOTIFICATION_BY_ID", "name": "Update User Notification", "description": "Tool to mark a DataRobot user notification as read. Use when you need to update the status of a notification by its unique identifier." }, { "slug": "DATAROBOT_UPDATE_USER_NOTIFICATIONS", "name": "Update User Notifications", "description": "Tool to mark all user notifications as read. Use when you need to mark all pending notifications for the authenticated user as read. This operation affects all unread notifications at once." }, { "slug": "DATAROBOT_UPDATE_VALUE_TRACKER", "name": "Update Value Tracker", "description": "Tool to update a DataRobot value tracker. Use when you need to modify value tracker properties like name, stage, business impact, or monetary values." }, { "slug": "DATAROBOT_UPDATE_VALUE_TRACKER_SHARED_ROLES", "name": "Update Value Tracker Shared Roles", "description": "Tool to update shared roles for a DataRobot value tracker. Use when you need to share a value tracker with users, groups, or organizations." }, { "slug": "DATAROBOT_VALIDATE_DEPLOYMENT_MODEL_REPLACEMENT", "name": "Validate Deployment Model Replacement", "description": "Tool to validate whether a model can replace the current champion model in a deployment. Returns detailed validation checks for model compatibility. Use before replacing a deployment model to ensure compatibility." }, { "slug": "DATAROBOT_VALIDATE_USER_BLUEPRINT", "name": "Validate User Blueprint", "description": "Tool to validate a user-defined blueprint (custom modeling pipeline) in DataRobot. Use when you need to verify that a blueprint structure is valid before training models with it. Returns validation context including any errors, warnings, or informational messages for each task vertex in the blueprint DAG." }, { "slug": "DATAROBOT_VERIFY_EXTERNAL_DATA_STORE_SQL", "name": "Verify External Data Store SQL", "description": "Tool to verify a SQL query for an external data store. Use when you need to test SQL syntax and retrieve sample results. Returns column names and up to maxRows records if successful." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "datarobot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your DataRobot API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ngrok", "name": "Ngrok", "logo": "https://logos.composio.dev/api/ngrok", "description": "Ngrok creates secure tunnels to locally hosted applications, enabling developers to share and test webhooks or services without configuring complex network settings", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 102, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NGROK_CREATE_API_KEY", "name": "Create API Key", "description": "Creates a new API key for authenticating with the ngrok API. This tool allows programmatic creation of API keys that can be used to access ngrok's API services." }, { "slug": "NGROK_CREATE_CREDENTIAL", "name": "Create Tunnel Credential", "description": "Creates a new tunnel authtoken credential for authenticating ngrok agents. This authtoken credential can be used to start a new tunnel session. The response to this API call is the only time the generated token is available." }, { "slug": "NGROK_CREATE_ENDPOINT", "name": "Create Endpoint", "description": "Create a cloud endpoint on the ngrok account. Use when you need to set up a new cloud endpoint with custom traffic policies for handling HTTP traffic." }, { "slug": "NGROK_CREATE_EVENT_SOURCE", "name": "Create Event Source", "description": "Add a new event source to an event subscription. Event sources define which types of events will trigger the subscription. Use this when you need to subscribe to additional event types for an existing event subscription." }, { "slug": "NGROK_CREATE_EVENT_SUBSCRIPTION", "name": "Create Event Subscription", "description": "Creates a new event subscription in ngrok. Event subscriptions allow you to be notified when specific events occur in your ngrok account. Use this when you need to set up webhooks or event-driven workflows for ngrok resource changes." }, { "slug": "NGROK_CREATE_HTTPS_EDGE", "name": "Create HTTPS Edge", "description": "Creates a new HTTPS edge in your ngrok account. HTTPS edges define how ngrok handles HTTPS traffic for your domains. Use this when you need to set up a new HTTPS endpoint with custom TLS or mutual TLS configuration." }, { "slug": "NGROK_CREATE_HTTPS_EDGE_ROUTE", "name": "Create HTTPS Edge Route", "description": "Creates a new route on an HTTPS edge in ngrok. Routes define how traffic matching specific patterns should be handled and can include various security and transformation modules. Use when you need to configure routing rules for an HTTPS edge with optional modules like OAuth, IP restrictions, header transformations, and more." }, { "slug": "NGROK_CREATE_SSH_CREDENTIAL", "name": "Create SSH Credential", "description": "Creates a new SSH credential from an uploaded public SSH key. This SSH credential can be used to start new tunnels via ngrok's SSH gateway. Use when you need to authenticate SSH-based tunnel connections with ngrok." }, { "slug": "NGROK_CREATE_VAULT", "name": "Create Vault", "description": "Creates a new vault in your ngrok account. Vaults are used for securely storing and managing sensitive data such as secrets, credentials, and tokens." }, { "slug": "NGROK_CREATE_VAULT_SECRET", "name": "Create Vault Secret", "description": "Tool to create a new secret in an ngrok vault for secure storage of sensitive data like API keys, passwords, or tokens. Use when you need to securely store sensitive information that can be referenced in traffic policies without exposing the actual values." }, { "slug": "NGROK_DELETE_API_KEY", "name": "Delete API Key", "description": "Delete an API key by its ID. This action permanently removes the specified API key from your ngrok account. This is an important security feature that allows users to revoke access when an API key is compromised or no longer needed. Once deleted, the API key cannot be recovered and any services using it will lose access." }, { "slug": "NGROK_DELETE_CREDENTIALS", "name": "Delete Credentials", "description": "Delete a tunnel authtoken credential by ID. This action permanently removes the specified credential from your ngrok account." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_CIRCUIT_BREAKER_MODULE", "name": "Delete HTTPS Edge Route Circuit Breaker Module", "description": "Delete the Circuit Breaker module from an HTTPS Edge Route. This action removes the circuit breaker configuration that protects upstream services from being overwhelmed by automatically rejecting requests when error thresholds are exceeded." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_COMPRESSION_MODULE", "name": "Delete Edge Route Compression Module", "description": "Delete the compression module from an HTTPS edge route. Use this to remove compression settings from a specific route within an HTTPS edge configuration." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_REQUEST_HEADERS_MODULE", "name": "Delete Edge Route Request Headers Module", "description": "Delete the request headers module from an HTTPS edge route. This removes any custom request header modifications configured for the specified route. Use this action when you need to stop modifying request headers on a specific edge route. After deletion, requests will pass through without header modifications." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_RESPONSE_HEADERS_MODULE", "name": "Delete Edge Route Response Headers Module", "description": "Delete the response headers module from an HTTPS edge route. Use when you need to remove response header manipulation from a specific route." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_SAML_MODULE", "name": "Delete Edge Route SAML Module", "description": "Delete the SAML module configuration from an HTTPS edge route. This action removes SAML authentication from the specified route, allowing traffic to pass through without SAML validation. The operation is idempotent and returns success even if no SAML module exists." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_USER_AGENT_FILTER_MODULE", "name": "Delete Edge Route User Agent Filter Module", "description": "Delete the user agent filter module from an HTTPS edge route. Use this to remove user agent filtering from a specific route within an HTTPS edge configuration." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_WEBHOOK_VERIFICATION_MODULE", "name": "Delete Edge Route Webhook Verification Module", "description": "Delete the webhook verification module from an HTTPS edge route. This removes webhook signature verification configured for the specified route. Use this action when you need to stop verifying webhook signatures on a specific edge route. After deletion, webhooks will pass through without signature verification." }, { "slug": "NGROK_DELETE_EDGE_ROUTE_WEBSOCKET_TCP_CONVERTER_MODULE", "name": "Delete Edge Route WebSocket TCP Converter Module", "description": "Delete the WebSocket TCP converter module from an HTTPS edge route. Use when you need to remove WebSocket to TCP conversion functionality from a specific route. The operation is idempotent." }, { "slug": "NGROK_DELETE_ENDPOINT", "name": "Delete Endpoint", "description": "Delete an endpoint by ID. This action permanently removes the specified endpoint from your ngrok account. Currently only available for cloud endpoints. Cloud endpoints are those created through the ngrok dashboard or API with reserved domains. Once deleted, the endpoint cannot be recovered and traffic to the endpoint will no longer be processed." }, { "slug": "NGROK_DELETE_EVENT_SOURCE", "name": "Delete Event Source", "description": "Delete an event source from an event subscription. This removes a specific event type from the subscription, so the subscription will no longer trigger for that event. Event sources define which types of events trigger notifications for a subscription. Removing an event source does not delete the subscription itself - only the association with that specific event type." }, { "slug": "NGROK_DELETE_EVENT_SUBSCRIPTION", "name": "Delete Event Subscription", "description": "Delete an event subscription by ID. This action permanently removes the specified event subscription from your ngrok account. Event subscriptions allow you to receive notifications when specific events occur in your ngrok account. Once deleted, you will no longer receive notifications for events matching this subscription." }, { "slug": "NGROK_DELETE_HTTPS_EDGE", "name": "Delete HTTPS Edge", "description": "Delete an HTTPS edge by ID. This action permanently removes the specified HTTPS edge configuration from your ngrok account. HTTPS edges define how ngrok handles HTTPS traffic for your domains. Once deleted, the edge and all associated routes cannot be recovered, and traffic to the configured hostports will no longer be processed." }, { "slug": "NGROK_DELETE_HTTPS_EDGE_ROUTE", "name": "Delete HTTPS Edge Route", "description": "Delete an HTTPS edge route by ID. This action permanently removes the specified route from an HTTPS edge configuration in your ngrok account. HTTPS edge routes define how traffic is handled for specific hostnames and paths. Once deleted, the route cannot be recovered and traffic matching the route will no longer be processed." }, { "slug": "NGROK_DELETE_RESERVED_DOMAIN_CERTIFICATE", "name": "Delete Reserved Domain Certificate", "description": "Detach the certificate attached to a reserved domain. Use when you need to remove a certificate from a reserved domain without deleting the domain itself." }, { "slug": "NGROK_DELETE_RESERVED_DOMAIN_CERTIFICATE_MANAGEMENT_POLICY", "name": "Delete Reserved Domain Certificate Management Policy", "description": "Detach the certificate management policy from a reserved domain. Use this action when you need to remove certificate management configuration from a domain." }, { "slug": "NGROK_DELETE_SECRET", "name": "Delete Secret", "description": "Delete a vault secret by ID. This action permanently removes the specified secret from your ngrok vault." }, { "slug": "NGROK_DELETE_SSH_CREDENTIALS", "name": "Delete SSH Credentials", "description": "Delete an SSH credential by ID. This action permanently removes the specified SSH credential from your ngrok account. SSH credentials are used to authenticate SSH connections through ngrok. Once deleted, the credential cannot be recovered and any services using it will lose access." }, { "slug": "NGROK_DELETE_VAULT", "name": "Delete Vault", "description": "Delete a vault by ID. This action permanently removes the specified vault from your ngrok account." }, { "slug": "NGROK_GET_API_KEY", "name": "Get API Key", "description": "Get the details of an API key by ID. Use this tool to retrieve information about a specific ngrok API key, including its description, metadata, and creation timestamp." }, { "slug": "NGROK_GET_CREDENTIALS", "name": "Get Credentials", "description": "Tool to retrieve detailed information about a tunnel authtoken credential by ID. Use when you need to view the details, metadata, or ACL rules of an existing credential. Note: The token field will be null for existing credentials (only available on creation)." }, { "slug": "NGROK_GET_EDGE_ROUTE_BACKEND_MODULE", "name": "Get Edge Route Backend Module", "description": "Retrieves the backend module configuration for an HTTPS edge route. Backend modules define where traffic is routed after passing through the edge route's modules. Use this to verify backend configuration or audit routing behavior." }, { "slug": "NGROK_GET_EDGE_ROUTE_CIRCUIT_BREAKER_MODULE", "name": "Get Edge Route Circuit Breaker Module", "description": "Tool to retrieve the circuit breaker module configuration for a specific HTTPS edge route. Use when you need to check the current circuit breaker settings, verify protection parameters, or audit traffic protection policies." }, { "slug": "NGROK_GET_EDGE_ROUTE_COMPRESSION_MODULE", "name": "Get Edge Route Compression Module", "description": "Retrieves the compression module configuration for a specific HTTPS edge route. Use this to check if compression is enabled for the route." }, { "slug": "NGROK_GET_EDGE_ROUTE_IP_RESTRICTION_MODULE", "name": "Get Edge Route IP Restriction Module", "description": "Retrieves the IP restriction module configuration for a specific HTTPS edge route. Use this to check which IP policies are applied to control access to the route." }, { "slug": "NGROK_GET_EDGE_ROUTE_OIDC_MODULE", "name": "Get Edge Route OIDC Module", "description": "Retrieves the OIDC (OpenID Connect) module configuration for a specific HTTPS edge route. OIDC modules enable authentication via OpenID Connect providers on your edge routes. This action fetches the current OIDC configuration including provider settings, scopes, and session timeout settings. Returns null if the OIDC module is not configured for the route." }, { "slug": "NGROK_GET_EDGE_ROUTE_REQUEST_HEADERS_MODULE", "name": "Get Edge Route Request Headers Module", "description": "Retrieves the request headers module configuration for a specific HTTPS edge route. The request headers module allows you to add and remove headers from HTTP requests before they are sent to your upstream server. Use this action to inspect the current request header manipulation rules for a route." }, { "slug": "NGROK_GET_EDGE_ROUTE_RESPONSE_HEADERS_MODULE", "name": "Get Edge Route Response Headers Module", "description": "Get the response headers module configuration for an HTTPS edge route. Use when you need to retrieve the current response header manipulation settings for a specific route." }, { "slug": "NGROK_GET_EDGE_ROUTE_SAML_MODULE", "name": "Get Edge Route SAML Module", "description": "Retrieves the SAML authentication module configuration for a specific HTTPS edge route. Use this to view SAML settings including identity provider configuration, session timeouts, and authorized groups." }, { "slug": "NGROK_GET_EDGE_ROUTE_TRAFFIC_POLICY", "name": "Get Edge Route Traffic Policy", "description": "Retrieves the Traffic Policy module configuration for a specific HTTPS edge route. Traffic policies define how ngrok handles requests and responses on the edge route. Use this to inspect current traffic policy rules applied to an edge route." }, { "slug": "NGROK_GET_EDGE_ROUTE_USER_AGENT_FILTER_MODULE", "name": "Get Edge Route User Agent Filter Module", "description": "Retrieves the user agent filter module configuration for a specific HTTPS edge route. Use this to view filtering rules that control access based on User-Agent headers." }, { "slug": "NGROK_GET_EDGE_ROUTE_WEBHOOK_VERIFICATION_MODULE", "name": "Get Edge Route Webhook Verification Module", "description": "Retrieves the webhook verification module configuration for an HTTPS edge route. Webhook verification modules validate incoming webhooks from supported providers. Use this to verify webhook configuration or audit webhook security settings." }, { "slug": "NGROK_GET_EDGE_ROUTE_WEBSOCKET_TCP_CONVERTER_MODULE", "name": "Get Edge Route WebSocket TCP Converter Module", "description": "Retrieves the WebSocket TCP Converter module configuration for a specific HTTPS edge route. This module converts WebSocket connections to TCP streams. Use this to inspect whether the converter is enabled." }, { "slug": "NGROK_GET_ENDPOINT", "name": "Get Endpoint", "description": "Get the status of an endpoint by ID. Use this tool to retrieve detailed information about a specific ngrok endpoint, including its configuration, URLs, and associated resources." }, { "slug": "NGROK_GET_EVENT_SOURCE", "name": "Get Event Source", "description": "Get an event source by type for a specific event subscription. Use this tool to retrieve details about a specific event source type that triggers notifications for an event subscription." }, { "slug": "NGROK_GET_HTTPS_EDGE", "name": "Get HTTPS Edge", "description": "Get the details of an HTTPS edge by ID. Use this to retrieve information about a specific HTTPS edge configuration including its hostports, TLS settings, and routes." }, { "slug": "NGROK_GET_HTTPS_EDGE_MUTUAL_TLS_MODULE", "name": "Get HTTPS Edge Mutual TLS Module", "description": "Retrieves the mutual TLS module configuration for an HTTPS edge. Use this to check if mutual TLS is enabled and which certificate authorities are configured for client certificate validation." }, { "slug": "NGROK_GET_HTTPS_EDGE_ROUTE", "name": "Get HTTPS Edge Route", "description": "Retrieves detailed information about a specific HTTPS edge route by its ID. HTTPS edge routes define how ngrok routes traffic based on path matching rules and apply various modules like authentication, compression, and traffic policies." }, { "slug": "NGROK_GET_IP_RESTRICTIONS", "name": "Get IP Restriction Details", "description": "Retrieves detailed information about a specific IP restriction by its ID. IP restrictions control which IP addresses can access various ngrok resources (dashboard, API, agents, or endpoints). This action fetches complete details including enforcement status, associated IP policies, and metadata. Use this action for auditing, verification, or before modifying IP restrictions. Note: Requires Account Governance add-on on a Pay-as-you-go plan to have IP restrictions." }, { "slug": "NGROK_GET_RESERVED_DOMAIN", "name": "Get Reserved Domain", "description": "Get the details of a reserved domain by ID. Use this to retrieve information about a specific reserved domain including its hostname, certificate configuration, and DNS settings." }, { "slug": "NGROK_GET_SECRET", "name": "Get Secret", "description": "Tool to retrieve detailed information about a vault secret by ID. Use when you need to view the metadata, description, or vault information for an existing secret." }, { "slug": "NGROK_GET_SECRETS_BY_VAULT", "name": "Get Secrets by Vault", "description": "Tool to get all secrets in a vault by vault ID. Use this to retrieve the list of secrets stored in a specific ngrok vault. Supports pagination for large result sets." }, { "slug": "NGROK_GET_SSH_CREDENTIALS", "name": "Get SSH Credentials", "description": "Tool to retrieve detailed information about an SSH credential by ID. Use when you need to view the details, public key, metadata, or ACL rules of an existing SSH credential." }, { "slug": "NGROK_GET_VAULT", "name": "Get Vault", "description": "Get the details of a vault by ID. Use this tool to retrieve information about a specific ngrok vault, including its name, description, metadata, and timestamps." }, { "slug": "NGROK_LIST_AGENT_INGRESSES", "name": "List Agent Ingresses", "description": "List all Agent Ingresses owned by this account. Agent Ingresses are used to configure custom domains for ngrok agent connections, allowing you to use your own domain instead of the default ngrok domains." }, { "slug": "NGROK_LIST_API_KEYS", "name": "List API Keys", "description": "This tool lists all API keys owned by the user. The API keys are used to authenticate API requests to ngrok's REST API. The endpoint returns a paginated list of API keys." }, { "slug": "NGROK_LIST_BOT_USERS", "name": "List Bot Users", "description": "Tool to list all bot users on this ngrok account. Use when you need to retrieve all bot users with their status and metadata." }, { "slug": "NGROK_LIST_CERT_AUTHORITIES", "name": "List Certificate Authorities", "description": "List all certificate authorities on this account. Certificate authorities are x509 certificates used to sign other x509 certificates. Supports pagination and filtering via CEL expressions." }, { "slug": "NGROK_LIST_CREDENTIALS", "name": "List Tunnel Credentials", "description": "List all tunnel authtoken credentials on the ngrok account. Use when you need to view all credentials that can authenticate ngrok agents and start tunnel sessions." }, { "slug": "NGROK_LIST_ENDPOINTS", "name": "List All Endpoints", "description": "List all active endpoints on the ngrok account. This tool will list all active endpoints on the ngrok account, providing visibility into running tunnels and endpoints. It requires no input parameters beyond authentication and serves as a fundamental component for monitoring, managing, and referencing ngrok resources." }, { "slug": "NGROK_LIST_EVENT_DESTINATIONS", "name": "List Event Destinations", "description": "List all Event Destinations on the ngrok account. Event Destinations define where and how ngrok should send event data (e.g., to AWS, Datadog, Azure). Use this to view configured event streaming targets." }, { "slug": "NGROK_LIST_EVENT_SUBSCRIPTIONS", "name": "List Event Subscriptions", "description": "List all event subscriptions on the ngrok account. Event subscriptions allow you to be notified when specific events occur in your ngrok account. Use this to view all configured event subscriptions." }, { "slug": "NGROK_LIST_EVENT_SUBSCRIPTION_SOURCES", "name": "List Event Subscription Sources", "description": "Tool to list the types for which this event subscription will trigger. Use when you need to see all event sources configured for a specific event subscription." }, { "slug": "NGROK_LIST_FAILOVER_BACKENDS", "name": "List Failover Backends", "description": "List all failover backends on this account. Failover backends define failover behavior within a list of referenced backends where traffic is sent to the first backend, and if that backend is offline, ngrok attempts to connect to the next backend in the list." }, { "slug": "NGROK_LIST_HTTP_RESPONSE_BACKENDS", "name": "List HTTP Response Backends", "description": "List all HTTP response backends on the account. Use this to retrieve all configured static HTTP response backends that return fixed responses with specific status codes." }, { "slug": "NGROK_LIST_HTTPS_EDGES", "name": "List HTTPS Edges", "description": "Lists all HTTPS Edges in your ngrok account. HTTPS edges are configurations that tell ngrok how to handle HTTPS traffic. The action returns a paginated list of all HTTPS edges associated with your account." }, { "slug": "NGROK_LIST_IP_POLICIES", "name": "List IP Policies", "description": "List all IP policies on this account. IP policies are reusable groups of CIDR ranges with an allow or deny action that can be attached to endpoints via the Endpoint Configuration IP Policy module. Supports pagination and filtering with CEL expressions." }, { "slug": "NGROK_LIST_IP_POLICY_RULES", "name": "List IP Policy Rules", "description": "This tool lists all IP policy rules associated with your ngrok account. It retrieves detailed information including rule id, creation timestamp, description, metadata, CIDR, the associated IP policy, and the action (allow or deny) for each rule. It supports pagination with parameters 'limit' for the maximum number of results and 'before_id' for pagination." }, { "slug": "NGROK_LIST_IP_RESTRICTIONS", "name": "List IP Restrictions", "description": "Lists all IP restrictions configured on the ngrok account. IP restrictions control which source CIDR blocks are permitted to access specific ngrok account features such as the dashboard, API, agents, or public endpoints. Supports pagination via 'limit' and 'before_id', and filtering via CEL expressions. Returns details including id, uri, created_at, description, metadata, enforced status, type, and associated IP policies for each restriction." }, { "slug": "NGROK_LIST_RESERVED_ADDRS", "name": "List Reserved Addresses", "description": "List all reserved addresses on this account. Use this to retrieve all TCP addresses that have been reserved for listening to traffic on your ngrok account." }, { "slug": "NGROK_LIST_RESERVED_DOMAINS", "name": "List Reserved Domains", "description": "List all reserved domains on this account. Use this to retrieve all hostnames that have been reserved for listening to HTTP, HTTPS, and TLS traffic on your ngrok account." }, { "slug": "NGROK_LIST_SERVICE_USERS", "name": "List Service Users", "description": "Tool to list all service users on this ngrok account. Use when you need to retrieve all service users with their status and metadata." }, { "slug": "NGROK_LIST_SSH_CERTIFICATE_AUTHORITIES", "name": "List SSH Certificate Authorities", "description": "List all SSH Certificate Authorities on this account. SSH Certificate Authorities are pairs of SSH certificates and their private keys used to sign other SSH host and user certificates. Supports pagination and filtering via CEL expressions." }, { "slug": "NGROK_LIST_SSH_CREDENTIALS", "name": "List SSH Credentials", "description": "List all SSH credentials on the ngrok account. Use when you need to view all SSH public keys that can authenticate to start SSH tunnels." }, { "slug": "NGROK_LIST_SSH_HOST_CERTIFICATES", "name": "List SSH Host Certificates", "description": "List all SSH Host Certificates issued on this account. SSH Host Certificates are used to sign SSH host keys and authenticate SSH servers. Supports pagination for efficient retrieval of large result sets." }, { "slug": "NGROK_LIST_SSH_USER_CERTIFICATES", "name": "List SSH User Certificates", "description": "List all SSH user certificates on the ngrok account. Use when you need to view all SSH certificates that authenticate SSH clients to SSH servers." }, { "slug": "NGROK_LIST_STATIC_BACKENDS", "name": "List Static Backends", "description": "List all static backends on the account. Static backends forward traffic to TCP addresses (hostname and port) that are reachable on the public internet." }, { "slug": "NGROK_LIST_TCP_EDGES", "name": "List TCP Edges", "description": "Lists all TCP Edges in your ngrok account. TCP edges are configurations that tell ngrok how to handle TCP traffic. The action returns a paginated list of all TCP edges associated with your account." }, { "slug": "NGROK_LIST_TLS_CERTIFICATES", "name": "List TLS Certificates", "description": "List all TLS certificates on the ngrok account. Use when you need to retrieve information about uploaded TLS certificates including validity, domains, and metadata." }, { "slug": "NGROK_LIST_TLS_EDGES", "name": "List TLS Edges", "description": "Lists all TLS Edges in your ngrok account. TLS edges are configurations that tell ngrok how to handle TLS traffic. The action returns a paginated list of all TLS edges associated with your account." }, { "slug": "NGROK_LIST_TUNNELS", "name": "List Active Tunnels", "description": "List all active tunnels in the ngrok account. This tool lists all active tunnels in the ngrok account, providing details such as tunnel ID, public URL, start time, protocol, configuration details, and metadata. It requires no input parameters beyond authentication and returns a paginated list of all running tunnels with their complete status information." }, { "slug": "NGROK_LIST_TUNNEL_SESSIONS", "name": "List Tunnel Sessions", "description": "List all online tunnel sessions running on this account. Tunnel sessions represent instances of ngrok agents or SSH reverse tunnel sessions connected to the ngrok service. Each tunnel session can include one or more tunnels." }, { "slug": "NGROK_LIST_VAULTS", "name": "List Vaults", "description": "List all vaults owned by the ngrok account. Vaults are used for securely storing and managing sensitive data such as secrets, credentials, and tokens." }, { "slug": "NGROK_LIST_VAULT_SECRETS", "name": "List Vault Secrets", "description": "List all vault secrets owned by the ngrok account. Use when you need to view all secrets stored in vaults for traffic policy configurations." }, { "slug": "NGROK_LIST_WEIGHTED_BACKENDS", "name": "List Weighted Backends", "description": "List all weighted backends on the ngrok account. Weighted backends balance traffic among referenced backends proportionally based on their assigned weights." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_CIRCUIT_BREAKER_MODULE", "name": "Replace Edge Route Circuit Breaker Module", "description": "Replaces the circuit breaker module configuration on an HTTPS edge route. Circuit breakers protect upstream applications by rejecting traffic when error rates exceed thresholds, giving systems time to recover. Use this action when you need to configure or update circuit breaker settings for a specific route on an HTTPS edge." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_COMPRESSION_MODULE", "name": "Replace Edge Route Compression Module", "description": "Replaces the compression module configuration for an HTTPS edge route. Use this when you need to enable or disable automatic HTTP response compression for a specific route." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_REQUEST_HEADERS_MODULE", "name": "Replace Edge Route Request Headers Module", "description": "Replaces the request headers module configuration for an HTTPS edge route. Use this to modify HTTP request headers before they are sent to your upstream application server. You can add new headers or remove existing ones." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_RESPONSE_HEADERS_MODULE", "name": "Replace Edge Route Response Headers Module", "description": "Replaces the response headers module configuration for an HTTPS edge route. Use this to control which HTTP headers are added to or removed from responses sent to clients. This allows customization of response headers for security, CORS, caching, or other purposes." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_TRAFFIC_POLICY", "name": "Replace Edge Route Traffic Policy", "description": "Replaces the traffic policy module on an HTTPS edge route. Traffic policies allow you to control and modify HTTP traffic flowing through your ngrok endpoints. Use this action when you need to update or change the traffic policy rules for a specific route on an HTTPS edge." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_USER_AGENT_FILTER_MODULE", "name": "Replace Edge Route User Agent Filter Module", "description": "Replaces the user agent filter module configuration for an HTTPS edge route. Use this to control which User-Agent strings are allowed or denied access to your route based on regex patterns. Denied patterns take precedence over allowed patterns." }, { "slug": "NGROK_REPLACE_EDGE_ROUTE_WEBHOOK_VERIFICATION_MODULE", "name": "Replace Edge Route Webhook Verification Module", "description": "Replaces the webhook verification module configuration for an HTTPS edge route. Use this to configure ngrok to automatically verify webhook signatures from supported providers. This ensures that only authenticated webhook requests from your chosen provider reach your backend service." }, { "slug": "NGROK_UPDATE_API_KEY", "name": "Update API Key", "description": "Updates attributes of an API key by ID. Use this to modify the description or metadata of an existing API key without changing its token or credentials." }, { "slug": "NGROK_UPDATE_CREDENTIALS", "name": "Update Credentials", "description": "Tool to update attributes of a tunnel authtoken credential by ID. Use when you need to modify the description, metadata, or ACL rules of an existing credential." }, { "slug": "NGROK_UPDATE_ENDPOINT", "name": "Update Endpoint", "description": "Tool to update an Endpoint by ID, currently available only for cloud endpoints. Use this to modify the description, metadata, traffic policy, bindings, or other attributes of an existing endpoint." }, { "slug": "NGROK_UPDATE_EVENT_SUBSCRIPTION", "name": "Update Event Subscription", "description": "Tool to update attributes of an event subscription by ID. Use when you need to modify the description, metadata, destination IDs, or sources of an existing event subscription." }, { "slug": "NGROK_UPDATE_HTTPS_EDGE_ROUTE", "name": "Update HTTPS Edge Route", "description": "Tool to update an HTTPS edge route by ID. Use when you need to modify route configuration for HTTPS traffic handling. Updates can include match patterns, module settings, and metadata. Unspecified modules remain unchanged." }, { "slug": "NGROK_UPDATE_RESERVED_DOMAIN", "name": "Update Reserved Domain", "description": "Tool to update the attributes of a reserved domain by ID. Use this to modify the description, metadata, certificate configuration, or DNS resolver targets of an existing reserved domain." }, { "slug": "NGROK_UPDATE_SECRET", "name": "Update Secret", "description": "Tool to update a vault secret by ID. Use when you need to modify the name, description, metadata, or value of an existing secret in the ngrok vault." }, { "slug": "NGROK_UPDATE_SSH_CREDENTIAL", "name": "Update SSH Credential", "description": "Tool to update attributes of an SSH credential by ID. Use when you need to modify the description, metadata, or ACL rules of an existing SSH credential." }, { "slug": "NGROK_UPDATE_VAULT", "name": "Update Vault", "description": "Tool to update attributes of a vault by ID. Use when you need to modify the name, description, or metadata of an existing vault." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ngrok_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ngrok API Key used for authentication to manage your ngrok account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "precoro", "name": "Precoro", "logo": "https://logos.composio.dev/api/precoro", "description": "Precoro is a procurement software simplifying purchase order creation, approvals, and budget control, helping organizations manage sourcing and supplier relationships efficiently", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "precoro_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The API base URL for Precoro", "required": true, "default": "https://api.precoro.com/v1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Precoro API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "square", "name": "Square", "logo": "https://logos.composio.dev/api/square", "description": "Square provides payment processing, POS systems, invoicing, and e-commerce tools, enabling sellers to accept card payments and manage their business", "category": "payment processing", "authSchemes": [ "OAUTH2" ], "toolCount": 122, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SQUARE_ACCEPT_DISPUTE", "name": "Accept Dispute", "description": "Accept a dispute and acknowledge liability, returning funds to the cardholder. When you accept a dispute, Square debits the disputed amount from your account and updates the dispute state to ACCEPTED. This action is irreversible - once accepted, a dispute cannot be challenged. Only use after reviewing all evidence and determining that challenging the dispute is not viable. Note: Requires DISPUTES_WRITE permission scope." }, { "slug": "SQUARE_ADD_GROUP_TO_CUSTOMER", "name": "Add Group to Customer", "description": "Tool to add a customer to a customer group. Use when you need to associate a customer with a specific group for targeted marketing, loyalty programs, or customer segmentation." }, { "slug": "SQUARE_CALCULATE_ORDER", "name": "Calculate Order", "description": "Tool to preview order pricing without creating an order. Use when you need to calculate the total cost, taxes, discounts, and other pricing details for an order before finalizing it. Particularly useful for integrating rewards, discounts, and complex pricing scenarios." }, { "slug": "SQUARE_CANCEL_BOOKING", "name": "Cancel Booking", "description": "Cancels an existing Square booking, terminating the reservation. Use this action when a customer or seller needs to cancel a scheduled appointment. The booking must be in a cancellable state, and the cancellation will update the booking status accordingly. This action is irreversible - once a booking is cancelled, it cannot be restored and must be rebooked if needed. Use the booking_version parameter to ensure safe concurrent updates." }, { "slug": "SQUARE_CANCEL_INVOICE", "name": "Cancel Invoice", "description": "Cancels a Square invoice, preventing further payments from being collected. Requirements: - Invoice must be in SCHEDULED, UNPAID, or PARTIALLY_PAID state - Cannot cancel invoices in DRAFT state or terminal states (PAID, REFUNDED, CANCELED, FAILED) - Requires INVOICES_WRITE and ORDERS_WRITE OAuth scopes - Version number must match the current invoice version to prevent conflicts After cancellation, the associated order status is set to CANCELED and webhook events are triggered." }, { "slug": "SQUARE_CANCEL_PAYMENT", "name": "Cancel Payment", "description": "Cancels (voids) a payment that is in APPROVED status. This is typically used in delayed capture scenarios where a payment was authorized but not yet captured, allowing you to void the authorization before settlement. Important: Only payments with APPROVED status can be canceled. Attempting to cancel a payment in any other status (COMPLETED, PENDING, CANCELED, FAILED) will result in an error. Once canceled, the payment status changes to CANCELED and the card details status changes to VOIDED. Required permissions: PAYMENTS_WRITE" }, { "slug": "SQUARE_CREATE_BATCH_INVENTORY_CHANGES", "name": "Batch Create Inventory Changes", "description": "Applies multiple inventory adjustments and physical counts in a single batch request. Returns the created changes and current inventory counts for all affected items. Use this action when you need to update inventory quantities for multiple items or locations at once, either through physical stock counts or adjustments (e.g., receiving stock, recording waste, or correcting discrepancies). Supports up to 100 inventory changes per request. Each change can be either a PHYSICAL_COUNT (setting absolute quantity) or an ADJUSTMENT (modifying quantity with state transitions). The ignore_unchanged_counts parameter controls whether calculated counts are returned in the response." }, { "slug": "SQUARE_CREATE_BULK_CUSTOMERS", "name": "Create Bulk Customers", "description": "Tool to create multiple customer profiles in a single request. Use when you need to efficiently create up to 100 customers at once. Each customer is identified by a unique idempotency key." }, { "slug": "SQUARE_CREATE_CARD", "name": "Create Card", "description": "Tool to create a card on file. Use when you need to securely store a customer's card for future payments. Requires a valid nonce or payment ID." }, { "slug": "SQUARE_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer profile in Square. Use when you need to add a customer to the Square account. At least one of given_name, family_name, company_name, email_address, or phone_number is required." }, { "slug": "SQUARE_CREATE_CUSTOMER_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Create Customer Custom Attribute Definition", "description": "Tool to create a customer-related custom attribute definition. Use when you need to define a new custom attribute that can be applied to customer profiles. Custom attributes allow storing additional structured data on customers beyond the standard fields." }, { "slug": "SQUARE_CREATE_CUSTOMER_GROUP", "name": "Create Customer Group", "description": "Tool to create a new customer group for a business. Use when you need to organize customers into groups for targeted marketing or segmentation." }, { "slug": "SQUARE_CREATE_DISPUTE_EVIDENCE_FILE", "name": "Create Dispute Evidence File", "description": "Tool to upload a file as dispute evidence. Use when you need to attach supporting documents (PDF, image, etc.) to an existing dispute. Use after creating or retrieving a dispute." }, { "slug": "SQUARE_CREATE_DISPUTE_EVIDENCE_TEXT", "name": "Create Dispute Evidence Text", "description": "Upload text evidence for a dispute challenge. Use this to submit textual information (up to 500 characters) that supports your case in a payment dispute. After uploading all evidence, you must call SubmitEvidence to finalize the dispute challenge. Endpoint: POST /v2/disputes/{dispute_id}/evidence-text" }, { "slug": "SQUARE_CREATE_GIFT_CARD_ACTIVITY", "name": "Create Gift Card Activity", "description": "Creates a gift card activity to manage gift card balances. This action supports multiple activity types including ACTIVATE (initiate a gift card with an opening balance), LOAD (add funds), REDEEM (withdraw funds), CLEAR_BALANCE (set balance to zero), DEACTIVATE (permanently block), ADJUST_INCREMENT/ADJUST_DECREMENT (manual adjustments), REFUND (restore funds from refunds), and others. Use this action when you need to modify a gift card's balance or state. Each activity type requires specific details in the corresponding activity_details field (e.g., activate_activity_details for ACTIVATE type). Either gift_card_id or gift_card_gan must be provided to identify the target gift card. Important: DEACTIVATE and CLEAR_BALANCE are destructive operations - DEACTIVATE permanently blocks the card from future balance changes, and CLEAR_BALANCE sets the balance to zero." }, { "slug": "SQUARE_CREATE_INVOICE_ATTACHMENT", "name": "Create Invoice Attachment", "description": "Upload and attach a file to a Square invoice. Use this action to add supplementary documents (receipts, contracts, supporting documentation) to an existing invoice. Attachments can only be added to invoices in DRAFT, SCHEDULED, UNPAID, or PARTIALLY_PAID state. Square supports up to 10 attachments per invoice with a combined maximum size of 25 MB in production (1 KB in Sandbox). Supported file formats: GIF, JPEG, PNG, TIFF, BMP, PDF. Creating an attachment increments the invoice version and triggers an invoice.updated webhook event." }, { "slug": "SQUARE_CREATE_LOCATION", "name": "Create Location", "description": "Tool to create a new business location in a Square account. Use when you need to add a new physical or mobile location for the merchant." }, { "slug": "SQUARE_CREATE_LOCATION_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Create Location Custom Attribute Definition", "description": "Tool to create a location-related custom attribute definition. Use when you need to define new custom attributes for Square location objects to store additional business-specific data." }, { "slug": "SQUARE_CREATE_ORDER", "name": "Create Order", "description": "Creates a new Square order with line items, taxes, discounts, and fulfillment details. Use this action when you need to create an order for processing payments or tracking sales. The created order will have a state of DRAFT or OPEN depending on the configuration. Each line item must have a quantity and either a catalog_object_id (for catalog items) or both name and base_price_money (for custom items). You can optionally include taxes, discounts, service charges, and fulfillment information. Use when: Creating a new order for a customer transaction, building a cart for checkout, or initiating a sales order workflow." }, { "slug": "SQUARE_CREATE_REFUND", "name": "Create Refund", "description": "Refunds a Square payment in full or partially. Use this action when you need to return funds to a customer for a completed payment, such as for returned products, cancelled services, or billing errors. The refund amount cannot exceed the original payment total minus any prior refunds." }, { "slug": "SQUARE_CREATE_TEAM_MEMBER", "name": "Create Team Member", "description": "Tool to create a new team member in Square. Creates a team member profile that can be used to assign permissions and track employee data. Use when you need to add a new employee or staff member to the Square account. The team member can then be assigned to locations and given access to Square products like Point of Sale. Requires given_name and family_name at minimum. Optionally specify email, phone, status (ACTIVE/INACTIVE), and location assignments." }, { "slug": "SQUARE_DELETE_CATALOG_OBJECT", "name": "Delete Catalog Object", "description": "Tool to delete a Square catalog object by ID. When an object is deleted, other objects in the graph that depend on that object will be deleted as well (cascading deletion). Use this action when you need to permanently remove a catalog item, category, modifier, or other catalog object from Square. This action is irreversible — the catalog object cannot be recovered once deleted. Note: Only one delete request is processed at a time per seller account." }, { "slug": "SQUARE_DELETE_CATALOG_OBJECTS_BATCH", "name": "Delete Catalog Objects (Batch)", "description": "Deletes a set of CatalogObjects based on a list of target object IDs and returns a set of successfully deleted IDs in the response. Deletion is a cascading event such that all children of the targeted object are also deleted. Use this action when you need to remove multiple catalog objects (items, categories, modifiers, etc.) at once. This action is irreversible — the catalog objects cannot be recovered once deleted." }, { "slug": "SQUARE_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a Square customer profile. Use when you need to permanently remove a customer record from Square." }, { "slug": "SQUARE_DELETE_CUSTOMER_CUSTOM_ATTRIBUTE", "name": "Delete Customer Custom Attribute", "description": "Tool to delete a custom attribute from a customer profile. Use when you need to remove custom data associated with a specific customer. Requires the CUSTOMERS_WRITE OAuth permission scope." }, { "slug": "SQUARE_DELETE_CUSTOMER_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Delete Customer Custom Attribute Definition", "description": "Tool to delete a customer-related custom attribute definition. Use when you need to remove a custom attribute definition that is no longer needed. This action requires CUSTOMERS_WRITE permission." }, { "slug": "SQUARE_DELETE_CUSTOMER_GROUP", "name": "Delete Customer Group", "description": "Tool to delete a customer group by its ID. Use when you need to permanently remove a customer group from Square." }, { "slug": "SQUARE_DELETE_CUSTOMERS_BULK", "name": "Bulk Delete Customers", "description": "Tool to bulk delete customer profiles from Square. Use when you need to delete multiple customer profiles at once (1-100 customers per request). Each successful deletion returns an empty object; failed deletions include error details. Note that delete events trigger separate webhook notifications per customer." }, { "slug": "SQUARE_DELETE_DISPUTE_EVIDENCE", "name": "Delete Dispute Evidence", "description": "Removes a specific piece of evidence from a dispute. Evidence that is removed will NOT be sent to the bank. This action requires the DISPUTES_WRITE permission scope. Important: You CANNOT remove evidence after it has been submitted to the bank using the SubmitEvidence endpoint. The deletion is permanent and cannot be undone. Use this when: - You need to remove evidence that was uploaded by mistake - You want to replace evidence with a better version (delete old, upload new) - The evidence is no longer relevant to the dispute case Prerequisites: - A valid dispute_id (obtain from list/retrieve disputes) - A valid evidence_id (obtain from list evidence or create evidence response) - The evidence must not have been submitted to the bank yet" }, { "slug": "SQUARE_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete a Square invoice (only DRAFT invoices can be deleted)." }, { "slug": "SQUARE_DELETE_INVOICE_ATTACHMENT", "name": "Delete Invoice Attachment", "description": "Tool to delete an attachment from a Square invoice. Endpoint: DELETE /v2/invoices/{invoice_id}/attachments/{attachment_id}" }, { "slug": "SQUARE_DELETE_LOCATION_CUSTOM_ATTRIBUTE", "name": "Delete Location Custom Attribute", "description": "Tool to delete a custom attribute from a location. Use when you need to remove custom data associated with a specific business location. Requires the MERCHANT_PROFILE_WRITE OAuth permission scope." }, { "slug": "SQUARE_DELETE_LOCATION_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Delete Location Custom Attribute Definition", "description": "Tool to delete a location-related custom attribute definition. Once deleted, the custom attribute definition cannot be used to add custom attributes to locations. Use when you need to remove obsolete or incorrect custom attribute definitions from your Square account." }, { "slug": "SQUARE_DELETE_LOCATIONS_CUSTOM_ATTRIBUTES_BATCH", "name": "Delete Locations Custom Attributes (Batch)", "description": "Tool to delete custom attributes from multiple locations in a single batch request. Use when you need to remove custom metadata from multiple business locations efficiently. To delete custom attributes owned by other applications, the attribute's visibility must be set to VISIBILITY_READ_WRITE_VALUES." }, { "slug": "SQUARE_DELETE_MERCHANT_CUSTOM_ATTRIBUTE", "name": "Delete Merchant Custom Attribute", "description": "Tool to delete a custom attribute from a merchant profile. Use when you need to remove custom data associated with a specific merchant. Requires the MERCHANT_PROFILE_WRITE OAuth permission scope." }, { "slug": "SQUARE_DELETE_MERCHANT_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Delete Merchant Custom Attribute Definition", "description": "Tool to delete a merchant-related custom attribute definition. Once deleted, the custom attribute definition cannot be used to add custom attributes to merchants. Use when you need to remove obsolete or incorrect custom attribute definitions from your Square account." }, { "slug": "SQUARE_DELETE_MERCHANTS_CUSTOM_ATTRIBUTES_BATCH", "name": "Delete Merchants Custom Attributes (Batch)", "description": "Tool to delete custom attributes from multiple merchants in a single batch request. Use when you need to remove custom metadata from merchant profiles efficiently. To delete custom attributes owned by other applications, the attribute's visibility must be set to VISIBILITY_READ_WRITE_VALUES." }, { "slug": "SQUARE_DELETE_WEBHOOK_SUBSCRIPTION", "name": "Delete Webhook Subscription", "description": "Permanently deletes a webhook subscription by its ID. Once deleted, the subscription will no longer receive event notifications. This action cannot be undone. Note: Webhook subscriptions are application-level resources and require personal access token authentication (not OAuth tokens)." }, { "slug": "SQUARE_GET_BOOKING", "name": "Get Booking", "description": "Retrieves detailed information about a specific Square booking by its ID. Returns the complete booking object including appointment segments, customer notes, seller notes, location details, creator information, and current status. Use this action when you need to view or verify booking details for a known booking ID, check appointment times, or retrieve information about services and team members assigned to the booking. Required permission: APPOINTMENTS_READ (buyer-level) or both APPOINTMENTS_ALL_READ and APPOINTMENTS_READ (seller-level)." }, { "slug": "SQUARE_GET_BUSINESS_BOOKING_PROFILE", "name": "Get Business Booking Profile", "description": "Tool to retrieve the business booking profile for a Square merchant via GraphQL. Use when you need to check if bookings are enabled, view cancellation policies, or access booking configuration settings. This is an alpha feature." }, { "slug": "SQUARE_GET_CURRENT_MERCHANT", "name": "Get Current Merchant", "description": "Tool to retrieve merchant information associated with the access token using Square's GraphQL API. Use when you need to obtain the merchant ID required for other GraphQL queries, or to get merchant details like business name, status, currency, and main location." }, { "slug": "SQUARE_GET_CUSTOMER_CUSTOM_ATTRIBUTE", "name": "Get Customer Custom Attribute", "description": "Retrieves a custom attribute from a customer profile in Square. Use this when you need to access specific custom data associated with a customer, such as preferences, external IDs, or other merchant-defined information. Requires CUSTOMERS_READ permission." }, { "slug": "SQUARE_GET_CUSTOMERS_CUSTOM_ATTRIBUTE_DEFINITIONS", "name": "Get Customer Custom Attribute Definition", "description": "Tool to retrieve a customer-related custom attribute definition from Square. Use when you need to fetch the schema, visibility, or metadata of a specific custom attribute definition by its key." }, { "slug": "SQUARE_GET_CUSTOMERS_GRAPHQL", "name": "Get Customers via GraphQL", "description": "Tool to retrieve customer profiles from Square Customer Directory using GraphQL API. Use when you need to fetch customer information including name, contact details, and profile data for a specific merchant. Requires merchant ID filter." }, { "slug": "SQUARE_GET_DISPUTE_EVIDENCE", "name": "Get Dispute Evidence", "description": "Retrieves detailed information about a specific piece of evidence that was uploaded for a dispute. Use this action to: - Get metadata about evidence (file details, upload time, evidence type) - Verify evidence was uploaded successfully - Review evidence details before submitting a dispute response Note: This returns metadata only, not the actual file content. To upload evidence, use the Create Dispute Evidence File or Create Dispute Evidence Text actions. Endpoint: GET /v2/disputes/{dispute_id}/evidence/{evidence_id}" }, { "slug": "SQUARE_GET_GIFT_CARD_FROM_GAN", "name": "Get Gift Card From GAN", "description": "Retrieves detailed information about a gift card by its GAN (gift card account number). Use this action when you need to look up a gift card using the GAN that buyers use to make purchases or check balances. Returns the complete gift card object including ID, type, state, balance, and associated customer IDs." }, { "slug": "SQUARE_GET_INVOICE", "name": "Get Invoice", "description": "Retrieves detailed information about a specific Square invoice by its ID. Returns the complete invoice object including payment requests, recipient details, accepted payment methods, custom fields, attachments, and current status. Use this when you need to view or verify invoice details for a known invoice ID. Required permission: INVOICES_READ" }, { "slug": "SQUARE_GET_LOYALTY_ACCOUNT", "name": "Get Loyalty Account", "description": "Tool to retrieve detailed information about a specific Square loyalty account by ID. Use when you need to fetch loyalty account data including balance, lifetime points, customer association, and point expiration schedules. This action provides read-only access to loyalty program membership details." }, { "slug": "SQUARE_GET_MERCHANT", "name": "Get Merchant", "description": "Tool to retrieve detailed information about a specific Square merchant by ID. Use when you need to fetch merchant profile data including business name, country, currency, and main location ID. Use 'me' as the merchant_id to retrieve the currently authenticated merchant." }, { "slug": "SQUARE_GET_ONLINE_CHECKOUT_LOCATION_SETTINGS", "name": "Get Online Checkout Location Settings", "description": "Tool to retrieve location-level settings for Square online checkout. Use when you need to get checkout configuration including customer notes, policies, branding, and tipping options for a specific location." }, { "slug": "SQUARE_GET_REFUND", "name": "Get Payment Refund", "description": "Retrieves a specific payment refund by its unique ID from Square. Returns complete refund details including amount, status, associated payment and order IDs, and refund destination information. Use this action when you need to retrieve detailed information about a specific refund, such as verifying refund status, checking refund amounts, or accessing refund metadata for reconciliation or customer service purposes." }, { "slug": "SQUARE_GET_SUBSCRIPTION", "name": "Get Subscription", "description": "Retrieves detailed information about a specific Square customer subscription by its ID. Use this action when you need to fetch subscription details including status, billing information, plan variation, associated customer, and scheduled actions. Returns comprehensive subscription data including payment information, invoices, phases, and configured actions. Required permission: SUBSCRIPTIONS_READ." }, { "slug": "SQUARE_GET_TEAM_MEMBER", "name": "Get Team Member", "description": "Tool to retrieve detailed information about a specific Square team member by ID. Use when you need to fetch team member profile data including name, contact information, location assignments, and wage settings." }, { "slug": "SQUARE_LINK_CUSTOMER_TO_GIFT_CARD", "name": "Link Customer to Gift Card", "description": "Tool to link a customer to a gift card in Square. Links the customer profile to the gift card, adding their ID to the gift card's customer_ids list. Use when you need to associate a customer with a gift card for tracking purchases, balances, or gifting purposes." }, { "slug": "SQUARE_LIST_CARDS", "name": "List Cards", "description": "Tool to retrieve cards on file associated with a Square account. Use when you need to list saved payment methods for a merchant or customer for payment processing or management purposes. Returns a maximum of 25 cards per request with pagination support." }, { "slug": "SQUARE_LIST_CHANNELS", "name": "List Channels", "description": "Tool to list requested channels from Square. Use when you need to retrieve channel information for a specific reference type, reference ID, or status." }, { "slug": "SQUARE_LIST_CUSTOMER_CUSTOM_ATTRIBUTE_DEFINITIONS", "name": "List Customer Custom Attribute Definitions", "description": "Tool to list customer-related custom attribute definitions from Square. Use when you need to discover available custom attributes that can be attached to customer profiles." }, { "slug": "SQUARE_LIST_CUSTOMER_CUSTOM_ATTRIBUTE_DEFINITIONS_GRAPH_QL", "name": "List Customer Custom Attribute Definitions (GraphQL)", "description": "Tool to retrieve customer custom attribute definitions via Square's GraphQL API. Use when you need to discover available custom attributes and their metadata for customer profiles. Alpha feature." }, { "slug": "SQUARE_LIST_CUSTOMER_CUSTOM_ATTRIBUTES", "name": "List Customer Custom Attributes", "description": "Tool to list custom attributes for a customer profile. Use when you need to retrieve all custom data associated with a specific customer, including optional definitions that provide metadata about each attribute." }, { "slug": "SQUARE_LIST_CUSTOMER_GROUPS", "name": "List Customer Groups", "description": "Tool to retrieve the list of customer groups of a business. Use when you need to discover customer group IDs or list all customer groups for segmentation and targeting purposes." }, { "slug": "SQUARE_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to retrieve customer profiles associated with a Square account. Use when you need to list customers for CRM, reporting, or customer management purposes. Only returns profiles with public information (given_name, family_name, company_name, email_address, or phone_number)." }, { "slug": "SQUARE_LIST_CUSTOMER_SEGMENTS", "name": "List Customer Segments", "description": "Tool to retrieve the list of customer segments of a business. Use when you need to discover customer segment IDs for targeting or filtering customer groups in Square." }, { "slug": "SQUARE_LIST_DISPUTE_EVIDENCE", "name": "List Dispute Evidence", "description": "Tool to list evidence items associated with a given dispute. Endpoint: GET /v2/disputes/{dispute_id}/evidence" }, { "slug": "SQUARE_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices for a Square location." }, { "slug": "SQUARE_LIST_LOCATION_CUSTOM_ATTRIBUTE_DEFINITIONS", "name": "List Location Custom Attribute Definitions", "description": "Tool to list location-related custom attribute definitions from Square. Use when you need to discover available custom attributes that can be attached to location profiles." }, { "slug": "SQUARE_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to retrieve all business locations from a Square account. Use when you need to discover available location IDs for other Square API calls that require location_id parameter (like listing invoices or payments)." }, { "slug": "SQUARE_LIST_LOCATIONS_CUSTOM_ATTRIBUTES", "name": "List Locations Custom Attributes", "description": "Tool to list custom attributes for a specific location in Square. Use when you need to retrieve all custom attribute values associated with a particular location." }, { "slug": "SQUARE_LIST_MERCHANT_CUSTOM_ATTRIBUTE_DEFINITIONS", "name": "List Merchant Custom Attribute Definitions", "description": "Tool to list merchant-related custom attribute definitions from Square. Use when you need to discover available custom attributes that can be attached to merchant profiles." }, { "slug": "SQUARE_LIST_MERCHANTS", "name": "List Merchants", "description": "Tool to retrieve merchant account information associated with the access token. Use when you need to get merchant profile details including business name, country, currency, and main location ID." }, { "slug": "SQUARE_LIST_MERCHANTS_CUSTOM_ATTRIBUTES", "name": "List Merchants Custom Attributes", "description": "Tool to list custom attributes for a specific merchant in Square. Use when you need to retrieve all custom attribute values associated with a particular merchant." }, { "slug": "SQUARE_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list payments by location and time range to enable reconciliation and net sales reporting from Square POS. Use when you need to retrieve payment records for reporting, analytics, or reconciliation purposes." }, { "slug": "SQUARE_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Tool to search and list Square customer billing subscriptions. Use this action when you need to retrieve subscription information for customers, filter subscriptions by location, or view all active subscriptions. Results are ordered chronologically by subscription creation date." }, { "slug": "SQUARE_LIST_WEBHOOK_EVENT_TYPES", "name": "List Webhook Event Types", "description": "Tool to list available webhook event types. Use when you need to discover event types before creating or updating a webhook subscription." }, { "slug": "SQUARE_LIST_WEBHOOK_SUBSCRIPTIONS", "name": "List Webhook Subscriptions", "description": "List all webhook subscriptions owned by your application. Returns webhook subscriptions with their event types, notification URLs, and status. Supports filtering by enabled/disabled status, sorting by creation date, and pagination for large result sets. Note: Webhook subscriptions are application-level resources and require personal access token authentication (not OAuth tokens)." }, { "slug": "SQUARE_PAY_ORDER", "name": "Pay Order", "description": "Pays an existing Square order by processing approved payments and completing the transaction. Use this action when you need to finalize payment on an order that has already been created and has associated approved payments. The total amount of the payment_ids provided must equal the order total, and upon success, the order state transitions to COMPLETED. Important: The payments referenced in payment_ids must be in APPROVED status and must have been created with a reference to this order_id. For orders with a zero total, you can pass an empty payment_ids array or omit it entirely. Using the idempotency_key prevents duplicate payment processing if the request is retried. Required permissions: ORDERS_WRITE, PAYMENTS_WRITE" }, { "slug": "SQUARE_REMOVE_GROUP_FROM_CUSTOMER", "name": "Remove Group From Customer", "description": "Removes a customer from a customer group. Use this when you need to disassociate a customer from a specific group. Once removed, the customer will no longer be part of the group and won't receive group-specific benefits or targeting." }, { "slug": "SQUARE_RETRIEVE_BULK_CUSTOMERS", "name": "Retrieve Bulk Customers", "description": "Tool to retrieve multiple customer profiles in a single request. Use when you need to efficiently fetch up to 100 customer profiles by their IDs." }, { "slug": "SQUARE_RETRIEVE_CHANNEL", "name": "Retrieve Channel", "description": "Retrieve a Square channel by its ID. Channels represent different distribution points for catalog content, including physical locations and online platforms. Use this to get detailed information about a specific channel, including its status, associated references, and metadata." }, { "slug": "SQUARE_RETRIEVE_CHANNELS_BULK", "name": "Bulk Retrieve Channels", "description": "Tool to bulk retrieve multiple Square channels by their IDs in a single request. Use when you need to fetch specific channels by their unique identifiers rather than listing all channels." }, { "slug": "SQUARE_RETRIEVE_CUSTOMER", "name": "Retrieve Customer", "description": "Tool to retrieve detailed information about a specific Square customer by ID. Use when you need to fetch customer profile data including contact information, preferences, and group memberships." }, { "slug": "SQUARE_RETRIEVE_CUSTOMER_GROUP", "name": "Retrieve Customer Group", "description": "Tool to retrieve a specific Square customer group by ID. Use when you need to fetch details about a customer group including its name and timestamps." }, { "slug": "SQUARE_RETRIEVE_CUSTOMER_SEGMENT", "name": "Retrieve Customer Segment", "description": "Tool to retrieve a specific customer segment by its ID. Use when you need to get details about a customer segment including its name and timestamps." }, { "slug": "SQUARE_RETRIEVE_DISPUTE", "name": "Retrieve Dispute", "description": "Tool to retrieve a Square dispute by ID. Endpoint: GET /v2/disputes/{dispute_id}" }, { "slug": "SQUARE_RETRIEVE_INVENTORY_CHANGES", "name": "Retrieve Inventory Changes", "description": "Retrieves the inventory change history for a catalog object at specified locations. Returns adjustments, physical counts, and transfers sorted by occurrence timestamp (newest first). Use this action when you need to track inventory movements, audit stock changes, or reconcile inventory discrepancies for a specific catalog item." }, { "slug": "SQUARE_RETRIEVE_INVENTORY_COUNTS_BATCH", "name": "Batch Retrieve Inventory Counts", "description": "Retrieve inventory counts for multiple catalog objects and locations in a single batch request. Use this action when you need to efficiently check inventory levels across multiple item variations, locations, or states. The endpoint supports filtering by catalog objects, locations, states, and time ranges, making it ideal for inventory sync operations and reporting." }, { "slug": "SQUARE_RETRIEVE_LOCATION", "name": "Retrieve Location", "description": "Tool to retrieve detailed information about a specific Square location by ID. Use when you need to get complete details about a specific location, including address, business hours, contact information, and capabilities." }, { "slug": "SQUARE_RETRIEVE_LOCATION_CUSTOM_ATTRIBUTE", "name": "Retrieve Location Custom Attribute", "description": "Retrieves a custom attribute associated with a location in Square. Use this when you need to access specific custom data associated with a location, such as metadata, external IDs, or other merchant-defined information." }, { "slug": "SQUARE_RETRIEVE_LOCATION_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Retrieve Location Custom Attribute Definition", "description": "Tool to retrieve a location-related custom attribute definition. Use when you need to get the schema, visibility, and metadata for a custom attribute associated with locations." }, { "slug": "SQUARE_RETRIEVE_MERCHANT_CUSTOM_ATTRIBUTE", "name": "Retrieve Merchant Custom Attribute", "description": "Retrieves a custom attribute associated with a merchant in Square. Use this when you need to access specific custom data associated with a merchant, such as metadata, external IDs, or other merchant-defined information." }, { "slug": "SQUARE_RETRIEVE_MERCHANT_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Retrieve Merchant Custom Attribute Definition", "description": "Tool to retrieve a merchant-related custom attribute definition from Square. Use when you need to fetch the schema, visibility, or metadata of a specific custom attribute definition by its key." }, { "slug": "SQUARE_RETRIEVE_MERCHANTS", "name": "Retrieve Merchants", "description": "Tool to retrieve merchant information including status, main location details, and capabilities using Square's GraphQL API. Use when you need to fetch merchant profile data for specific merchant IDs." }, { "slug": "SQUARE_RETRIEVE_ORDER", "name": "Retrieve Order", "description": "Retrieves detailed information about a specific Square order by its ID. Use this tool when you need to: - Fetch complete details of an order including line items, pricing, taxes, and discounts - Check order status and fulfillment information - View payment tenders and refunds associated with an order - Access order metadata and timestamps Requires: ORDERS_READ permission scope." }, { "slug": "SQUARE_RETRIEVE_PAYMENT_LINK", "name": "Retrieve Payment Link", "description": "Retrieves a Square-hosted payment link by ID. Returns complete payment link details including the checkout URL, associated order ID, checkout options, pre-populated buyer data, and creation timestamps. Requires ORDERS_READ permission." }, { "slug": "SQUARE_RETRIEVE_TOKEN_STATUS", "name": "Retrieve Token Status", "description": "Tool to retrieve information about an OAuth access token or personal access token. Use when you need to verify token validity, check token expiration, inspect authorized scopes, or validate merchant association before making API calls." }, { "slug": "SQUARE_RETRIEVE_WEBHOOK_SUBSCRIPTION", "name": "Retrieve Webhook Subscription", "description": "Retrieve a Square webhook subscription by its ID. Returns subscription details including name, enabled status, event types, notification URL, and signature key. Note: Requires personal access token authentication with DEVELOPER_APPLICATION_WEBHOOKS_READ scope (OAuth tokens are not supported for webhook subscriptions)." }, { "slug": "SQUARE_SEARCH_BOOKING_AVAILABILITY", "name": "Search Booking Availability", "description": "Searches for available appointment time slots for booking services at Square locations. Use this action when you need to find open booking slots for a specific service, location, and time range. This is essential for scheduling appointments as it shows which times are available for booking based on service requirements and team member availability." }, { "slug": "SQUARE_SEARCH_CATALOG_OBJECTS", "name": "Search Catalog Objects", "description": "Searches for catalog objects (items, categories, taxes, discounts, etc.) in the Square catalog. Use this action when you need to find specific catalog items by name, SKU, category, or other attributes, or when retrieving the entire catalog with filtering and sorting options. Supports full-text search, exact matching, prefix matching, range queries, and complex combinations of filters." }, { "slug": "SQUARE_SEARCH_CUSTOMERS", "name": "Search Customers", "description": "Tool to search customer profiles in Square Customer Directory. Use when you need to find customers by email, phone, creation date, or other filters. Returns paginated results with optional total count." }, { "slug": "SQUARE_SEARCH_ORDERS", "name": "Search Orders", "description": "Tool to search orders across one or more Square locations with filters. Use when you need to find orders within a date range, by state, by customer, or other criteria. This is the primary way Square exposes 'list orders for a date range' functionality." }, { "slug": "SQUARE_SUBMIT_DISPUTE_EVIDENCE", "name": "Submit Dispute Evidence", "description": "Submits evidence for a dispute to the cardholder's bank. IMPORTANT: You must upload evidence FIRST using CreateDisputeEvidenceText or CreateDisputeEvidenceFile before calling this endpoint. Once evidence is submitted, it cannot be modified or removed. The dispute state will change to PROCESSING after successful submission. Use this when: (1) You have uploaded all evidence files/text, (2) The dispute is in EVIDENCE_REQUIRED state, and (3) You are ready to finalize and send evidence to the bank before the due date." }, { "slug": "SQUARE_TEST_WEBHOOK_SUBSCRIPTION", "name": "Test Webhook Subscription", "description": "Tests a webhook subscription by sending a test event to the configured notification URL. Use this to verify that your webhook endpoint is correctly receiving and processing Square events. The response includes the HTTP status code returned by your endpoint and the test payload that was sent. Useful after creating or updating a subscription to confirm proper integration." }, { "slug": "SQUARE_UPDATE_BOOKING", "name": "Update Booking", "description": "Updates an existing Square booking with new appointment details, times, notes, or team members. Use when you need to modify a booking's start time, change appointment segments, update customer or seller notes, or modify the location type. Requires the current booking version number for optimistic concurrency control - get this from a previous retrieve booking call. Seller must subscribe to Appointments Plus or Premium to use this action." }, { "slug": "SQUARE_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing Square customer profile. Use when you need to modify customer details like name, email, address, or phone number. Supports sparse updates: only include fields you want to change, null values will remove fields. Include the version field for optimistic concurrency control." }, { "slug": "SQUARE_UPDATE_CUSTOMER_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Update Customer Custom Attribute Definition", "description": "Tool to update a customer-related custom attribute definition in Square. Use when you need to modify the name, description, visibility, or schema of an existing custom attribute definition. Supports sparse updates: only include fields you want to change. Use the version parameter for optimistic concurrency control to prevent conflicting updates." }, { "slug": "SQUARE_UPDATE_CUSTOMER_GROUP", "name": "Update Customer Group", "description": "Tool to update a customer group's information by its ID. Use when you need to modify the name or other attributes of an existing customer group in Square." }, { "slug": "SQUARE_UPDATE_CUSTOMERS_BULK", "name": "Bulk Update Customers", "description": "Tool to update multiple customer profiles in a single batch operation. Use when you need to efficiently update 1-100 customer profiles at once. Each update request includes the customer ID as a key and the customer data to update as the value. Only modified fields need to be provided, and fields can be removed by setting them to null. Requires version number for optimistic concurrency control." }, { "slug": "SQUARE_UPDATE_LOCATION", "name": "Update Location", "description": "Tool to update an existing business location in a Square account. Use when you need to modify location details like name, description, address, business hours, contact information, or social media profiles." }, { "slug": "SQUARE_UPDATE_LOCATION_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Update Location Custom Attribute Definition", "description": "Tool to update a location-related custom attribute definition in Square. Use when you need to modify the description, name, visibility, or schema of an existing location custom attribute definition." }, { "slug": "SQUARE_UPDATE_MERCHANT_CUSTOM_ATTRIBUTE_DEFINITION", "name": "Update Merchant Custom Attribute Definition", "description": "Tool to update a merchant-related custom attribute definition in Square. Use when you need to modify the description, name, visibility, or schema of an existing merchant custom attribute definition." }, { "slug": "SQUARE_UPDATE_ONLINE_CHECKOUT_LOCATION_SETTINGS", "name": "Update Online Checkout Location Settings", "description": "Tool to update location-level settings for Square online checkout. Use when you need to modify checkout configuration including customer notes, policies, branding, and tipping options for a specific location. Supports sparse updates: only include fields you want to change." }, { "slug": "SQUARE_UPDATE_ORDER", "name": "Update Order", "description": "Updates an existing Square order by adding, modifying, or removing fields. Use for OPEN or DRAFT orders only (COMPLETED/CANCELED orders cannot be updated). Requires the current order version number for optimistic concurrency control - get this from retrieve/search order first. Supports sparse updates: only include fields you want to change. To remove fields, use fields_to_clear array with dot notation paths. Common use cases: adding line items, updating quantities, applying discounts/taxes, modifying fulfillment details, updating metadata." }, { "slug": "SQUARE_UPDATE_TEAM_MEMBER", "name": "Update Team Member", "description": "Tool to update an existing Square team member's information. Use when you need to modify team member details like name, email, phone number, status, location assignments, or wage settings. Supports sparse updates: only include fields you want to change. To update wage_setting.job_assignments, provide the complete list of job assignments." }, { "slug": "SQUARE_UPDATE_WEBHOOK_SUBSCRIPTION", "name": "Update Webhook Subscription", "description": "Tool to update a Square webhook subscription. Use when you need to modify subscription settings such as name, enabled state, event types, notification URL, or API version of an existing webhook subscription." }, { "slug": "SQUARE_UPDATE_WEBHOOK_SUBSCRIPTION_SIGNATURE_KEY", "name": "Update Webhook Subscription Signature Key", "description": "Tool to rotate the signature key for a webhook subscription. Use when you need to replace the current signature key for security purposes." }, { "slug": "SQUARE_UPSERT_CATALOG_OBJECT", "name": "Upsert Catalog Object", "description": "Creates or updates a catalog object in the Square catalog. Use when you need to add or modify items, variations, categories, taxes, discounts, or other catalog entities in the merchant's inventory system. For new objects, use a temporary ID starting with '#' (e.g., '#new-item-1'). For updates, provide the existing object ID and current version number. The object type field determines which data field should be populated (e.g., type=ITEM requires item_data). Only one update request is processed at a time per seller account." }, { "slug": "SQUARE_UPSERT_CATALOG_OBJECTS_BATCH", "name": "Batch Upsert Catalog Objects", "description": "Creates or updates multiple catalog objects in a single batch operation. Use this action when you need to efficiently manage catalog items, categories, discounts, taxes, or other catalog entities in bulk. Supports up to 10,000 objects across all batches, with each batch containing up to 1,000 objects. Use temporary IDs starting with # (e.g., #Tea) for new objects, and existing IDs to update objects. Each batch is processed atomically (all succeed or all fail). Use when you need to create multiple catalog items at once, update existing catalog objects in bulk, or set up an initial product catalog. The idempotency_key ensures safe retries without duplicate creation. Required permissions: ITEMS_WRITE" }, { "slug": "SQUARE_UPSERT_CUSTOMER_CUSTOM_ATTRIBUTE", "name": "Upsert Customer Custom Attribute", "description": "Tool to create or update a custom attribute for a customer profile. Use when you need to store custom data on a customer record, such as preferences, loyalty tiers, or external system IDs. The custom attribute key must match an existing custom attribute definition in the Square account." }, { "slug": "SQUARE_UPSERT_CUSTOMER_CUSTOM_ATTRIBUTES_BATCH", "name": "Batch Upsert Customer Custom Attributes", "description": "Tool to create or update custom attributes for multiple customers in a single batch request. Use when you need to set custom data on customer profiles (e.g., preferences, loyalty tiers, tags). Supports 1 to 25 upsert operations per request. Before using this action, ensure the custom attribute definitions exist in your Square seller account. The custom attribute keys must match existing definitions. Use optimistic concurrency (version field) to prevent overwriting concurrent updates. Required permissions: CUSTOMERS_WRITE" }, { "slug": "SQUARE_UPSERT_LOCATION_CUSTOM_ATTRIBUTE", "name": "Upsert Location Custom Attribute", "description": "Tool to create or update a custom attribute for a location. Use when you need to store custom data on a location record, such as capacity limits, special features, or external system IDs. The custom attribute key must match an existing custom attribute definition in the Square account." }, { "slug": "SQUARE_UPSERT_LOCATIONS_CUSTOM_ATTRIBUTES_BATCH", "name": "Batch Upsert Locations Custom Attributes", "description": "Tool to create or update custom attributes for multiple locations in a single batch request. Use when you need to set custom data on location records (e.g., store ratings, delivery zones, tags). Supports 1 to 25 upsert operations per request. Before using this action, ensure the custom attribute definitions exist in your Square seller account. The custom attribute keys must match existing definitions. Use optimistic concurrency (version field) to prevent overwriting concurrent updates. Required permissions: MERCHANT_PROFILE_WRITE" }, { "slug": "SQUARE_UPSERT_MERCHANT_CUSTOM_ATTRIBUTE", "name": "Upsert Merchant Custom Attribute", "description": "Tool to create or update a custom attribute for a merchant profile. Use when you need to store custom data on a merchant record, such as business notes, external system IDs, or configuration values. The custom attribute key must match an existing custom attribute definition in the Square account." }, { "slug": "SQUARE_UPSERT_MERCHANTS_CUSTOM_ATTRIBUTES_BATCH", "name": "Batch Upsert Merchants Custom Attributes", "description": "Tool to create or update custom attributes for multiple merchants in a single batch request. Use when you need to set custom data on merchant profiles (e.g., business types, establishment dates, merchant categories). Supports 1 to 25 upsert operations per request. Before using this action, ensure the custom attribute definitions exist in your Square seller account. The custom attribute keys must match existing definitions. Use optimistic concurrency (version field) to prevent overwriting concurrent updates. Required permissions: MERCHANT_PROFILE_WRITE" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "square_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "CUSTOMERS_READ,CUSTOMERS_WRITE,MERCHANT_PROFILE_READ,MERCHANT_PROFILE_WRITE" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "yandex", "name": "Yandex", "logo": "https://logos.composio.dev/api/yandex", "description": "Yandex is a Russian internet services provider offering search, email, navigation, and other web-based solutions, often referred to as “Russia’s Google”", "category": "email", "authSchemes": [ "OAUTH2" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "YANDEX_GEOCODER_REVERSE", "name": "Reverse Geocode Coordinates", "description": "Tool to convert geographic coordinates to a human-readable address (reverse geocoding). Returns address information including street, city, country, and other location details. Use this when you have latitude/longitude coordinates and need to find the corresponding address." }, { "slug": "YANDEX_GET_ACCOUNT_EXPERIMENTS", "name": "Get Account Experiments", "description": "Tool to retrieve Yandex Music account experimental features and A/B testing flags. Use when you need to check which experimental features are enabled for an account." }, { "slug": "YANDEX_GET_ACCOUNT_STATUS", "name": "Get Account Status", "description": "Tool to retrieve Yandex Music account status and permissions. Use when you need to check account availability, region, subscription status, and granted permissions." }, { "slug": "YANDEX_GET_GENRES", "name": "Get Music Genres", "description": "Tool to retrieve the list of music genres from Yandex Music. Use when you need to get available music genres for browsing or categorization." }, { "slug": "YANDEX_GET_PERMISSION_ALERTS", "name": "Get Permission Alerts", "description": "Tool to retrieve permission alerts and notifications from Yandex Music API. Use this to check for system notifications about subscription status, permissions, or other user alerts." }, { "slug": "YANDEX_GET_PLAYLISTS_IDS_BY_TAG", "name": "Get Playlists by Tag", "description": "Tool to retrieve playlist IDs associated with a specific tag. Use when you need to find playlists categorized under a tag like 'rock', 'pop', or 'jazz'." }, { "slug": "YANDEX_GET_PUBLIC_RESOURCE", "name": "Get Public Resource Metadata", "description": "Tool to retrieve metadata for a public file or folder on Yandex Disk. Use when you need to get information about publicly shared resources including their properties, nested items, and download URLs." }, { "slug": "YANDEX_GET_PUBLIC_RESOURCE_DOWNLOAD_LINK", "name": "Get Public Resource Download Link", "description": "Tool to get a direct download link for a publicly shared Yandex Disk resource. Use when you need to download a file or folder that has been shared publicly." }, { "slug": "YANDEX_GET_ROTOR_ACCOUNT_STATUS", "name": "Get Rotor Account Status", "description": "Tool to retrieve authenticated user's rotor account status with supplementary fields. Use to check user subscription status, permissions, and radio-specific settings like skips_per_hour." }, { "slug": "YANDEX_GET_ROTOR_STATIONS_DASHBOARD", "name": "Get Rotor Stations Dashboard", "description": "Tool to retrieve recommended radio stations for the current user. Use when you need to get the user's personalized station dashboard." }, { "slug": "YANDEX_GET_SETTINGS", "name": "Get Yandex Music Settings", "description": "Tool to retrieve Yandex Music settings including available purchase products and payment configuration. Use when you need to check available subscription options, pricing, or payment methods." }, { "slug": "YANDEX_GET_STATIONS_LIST", "name": "Get Yandex Music Stations List", "description": "Tool to retrieve all radio stations with user settings from Yandex Music. Use when you need to get the list of available radio stations and their configurations." }, { "slug": "YANDEX_GET_TRACK_DOWNLOAD_INFO", "name": "Get Track Download Info", "description": "Tool to retrieve available download options for a Yandex Music track. Returns a list of download variants with different codecs (MP3/AAC) and bitrates. Use this when you need to get download links for a specific track ID." }, { "slug": "YANDEX_LIST_FILTERS", "name": "List Filters", "description": "Tool to retrieve all filters configured for a Yandex Metrica counter. Use when you need to view existing filters for data filtering or analysis." }, { "slug": "YANDEX_LIST_GOALS", "name": "List Goals", "description": "Tool to retrieve all goals configured for a Yandex Metrica counter. Use when you need to list or inspect goals for analytics tracking." }, { "slug": "YANDEX_LIST_GRANTS", "name": "List Counter Grants", "description": "Tool to retrieve the list of permissions (grants) for a Yandex Metrica counter. Use when you need to check who has access to view or manage a counter and their permission levels." }, { "slug": "YANDEX_LIST_LOG_REQUESTS", "name": "List Log Requests", "description": "Tool to retrieve a list of log requests for a Yandex Metrica counter. Use when you need to view all log requests associated with a specific counter ID." }, { "slug": "YANDEX_LIST_STORAGE_BUCKETS", "name": "List Storage Buckets", "description": "Tool to list all Yandex Object Storage buckets owned by the authenticated user. Use when you need to retrieve a list of available S3-compatible storage buckets." }, { "slug": "YANDEX_ORGANIZATION_SEARCH", "name": "Organization Search", "description": "Tool to find businesses and organizations by name, address, or TIN. Use when you need to search for companies in a specific region or text query." }, { "slug": "YANDEX_ROUTE", "name": "Generate detailed route", "description": "Tool to generate detailed route for driving, walking, or public transport. Use when planning a route between specified geographic points." }, { "slug": "YANDEX_TILES", "name": "Yandex Tiles API", "description": "Tool to fetch individual map tile images by x/y coordinates and zoom level. Use after calculating tile indices for custom map rendering." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "yandex_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "login:avatar,login:birthday,login:email,login:info,login:default_phone" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "baserow", "name": "Baserow", "logo": "https://logos.composio.dev/api/baserow", "description": "Baserow is an open-source database tool that lets teams build no-code data applications, collaborate on records, and integrate with other services for data management", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BASEROW_CREATE_USER", "name": "Create User", "description": "Tool to create a new Baserow user with the provided details. Use when you need to register a new user account in Baserow. After creating an account, an initial workspace containing a database is automatically created. Optionally generates authentication JWT tokens if authenticate parameter is set to true." }, { "slug": "BASEROW_DISPATCH_BUILDER_PAGE_DATA_SOURCE", "name": "Dispatch Builder Page Data Source", "description": "Tool to dispatch the service of a builder page data source and return the result. Use when you need to execute a data source query in Baserow's builder application." }, { "slug": "BASEROW_DISPATCH_PUBLIC_BUILDER_PAGE_DATA_SOURCE", "name": "Dispatch Public Builder Page Data Source", "description": "Tool to dispatch the service of a published builder page data source and return the result. Use this when you need to execute a data source in a public/published Baserow builder domain." }, { "slug": "BASEROW_GET_FORM_VIEW_METADATA", "name": "Get Form View Metadata", "description": "Tool to retrieve metadata for a Baserow form view. Use when you need to get form structure and configuration details for constructing a form with the right fields. The form must be publicly shared or the user must have access to the related workspace." }, { "slug": "BASEROW_GET_PUBLIC_BUILDER_BY_DOMAIN_NAME", "name": "Get Public Builder by Domain Name", "description": "Tool to retrieve the public published version of a builder by its domain name. Use when you need to access a published Baserow builder application and its configuration, including pages, scripts, theme, and user sources." }, { "slug": "BASEROW_GET_RECORD_NAMES_BUILDER_PAGE_DATA_SOURCE", "name": "Get Record Names for Builder Page Data Source", "description": "Tool to find the record names associated with a given list of record ids. Use when you need to retrieve the display names for specific records from a builder page data source." }, { "slug": "BASEROW_GET_SETTINGS", "name": "Get Settings", "description": "Tool to retrieve all admin configured settings for the Baserow instance. Use when you need to check system-wide configuration like signup policies, email verification settings, or workspace creation permissions." }, { "slug": "BASEROW_LIST_APPLICATION_USER_SOURCES", "name": "List Application User Sources", "description": "Tool to list all user sources of an application if the user has access to the related application's workspace. Use when you need to retrieve user source configurations for a Baserow application. If the workspace is related to a template, this endpoint is publicly accessible." }, { "slug": "BASEROW_LIST_AUTH_PROVIDERS_LOGIN_OPTIONS", "name": "List Auth Providers Login Options", "description": "Tool to list available login options for configured authentication providers. Use when you need to discover which authentication methods are enabled for the Baserow instance." }, { "slug": "BASEROW_LIST_DATABASES", "name": "List Databases", "description": "This tool retrieves a list of all databases in a specified workspace. As a fundamental operation, it allows users to discover which databases are available in their Baserow workspace. This operation is independent and requires only authentication in order to fetch essential metadata for subsequent operations." }, { "slug": "BASEROW_LIST_TABLES", "name": "List Tables in Database", "description": "This tool lists all tables within a specified Baserow database. It allows users to retrieve information about all tables in a database by using the GET /api/database/{database_id}/tables/ endpoint. The expected output is an array of table objects containing details such as id, name, order, database_id, type, and first_row_header." }, { "slug": "BASEROW_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all template categories and their related templates. The template's workspace_id can be used for previewing purposes because that workspace contains publicly accessible applications. Use when you need to discover available templates in Baserow." }, { "slug": "BASEROW_SEND_PASSWORD_RESET_EMAIL", "name": "Send Password Reset Email", "description": "Tool to send a password reset email to a user's email address. The email contains a password reset link that is valid for 48 hours. The endpoint will not fail if the email address is not found." }, { "slug": "BASEROW_SEND_VERIFY_EMAIL", "name": "Send Verification Email", "description": "Tool to send a verification email to a user's email address. Use when you need to trigger email verification for a user account that hasn't been verified yet." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "baserow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Database Token", "type": "string", "description": "Your Baserow database token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dialpad", "name": "Dialpad", "logo": "https://logos.composio.dev/api/dialpad", "description": "Dialpad is a cloud-based business phone system and contact center platform that enables voice, video, messages and meetings across your existing devices", "category": "communication", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 192, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DIALPAD_ACCESS_CONTROL_POLICIES_LISTING", "name": "Access control policies listing", "description": "Retrieves a list of access control policies for the authenticated Dialpad company. This endpoint allows company administrators to view all custom sets of permissions defined for AI Contact Center settings. It should be used when auditing existing policies, preparing to assign roles to users, or before creating new policies to avoid duplication. The endpoint provides an overview of all policies but does not include detailed permission sets for each policy. For specific policy details, a separate API call may be required." }, { "slug": "DIALPAD_ADD_BLOCKED_PHONE_NUMBERS", "name": "Add blocked phone numbers", "description": "Adds specified phone numbers to the blocked list in Dialpad. This endpoint allows users to block unwanted or spam numbers, preventing incoming calls or messages from these numbers. It accepts a list of E.164 formatted phone numbers and adds them to the user's blocked list. This tool should be used when there's a need to block multiple phone numbers at once, enhancing the platform's call and message filtering capabilities. It's particularly useful for maintaining communication hygiene and reducing unwanted interactions. Note that this operation is additive; it doesn't replace the existing blocked list but appends to it." }, { "slug": "DIALPAD_ADD_DEPARTMENT_OPERATOR_BY_ID", "name": "Add department operator by id", "description": "Adds a new operator to a specific department in Dialpad. This endpoint allows you to assign either a user or a room as an operator, with the option to specify their role. It's used to manage call handling and department operations by adding new operators or updating existing ones with different roles. The department ID is specified in the URL path. Use this when setting up new departments, expanding existing ones, or adjusting operator assignments and roles within a department." }, { "slug": "DIALPAD_ADD_MEMBER_TO_CHANNEL", "name": "Add member to channel", "description": "Adds a new member to a specified channel within the Dialpad communication platform. This endpoint allows you to expand the membership of a channel by providing the user ID of the person you want to add. It's particularly useful for programmatically managing channel memberships, such as when onboarding new team members or reorganizing communication structures. The endpoint should be used when you need to include a user in a channel's conversations and collaborations. Note that this operation only adds the user to the channel; it does not create new users or channels. Ensure that both the channel ID (specified in the URL) and the user ID (provided in the request body) exist in your Dialpad organization before making this call." }, { "slug": "DIALPAD_ADD_MEMBER_TO_COACHING_TEAM", "name": "Add member to coaching team", "description": "Adds a new member to a specific coaching team in Dialpad. This endpoint allows you to assign a user to a coaching team with a designated role, enabling effective team management and performance monitoring. Use this when you need to include a new coach or trainee in an existing coaching team. The endpoint requires the coaching team ID in the URL path and the member details in the request body. It's particularly useful for setting up or expanding coaching teams for call center training and quality assurance purposes." }, { "slug": "DIALPAD_ADD_OPERATOR_TO_CALL_CENTER", "name": "Add operator to call center", "description": "This endpoint adds a new operator to a specified call center in the Dialpad system. It allows for the configuration of the operator's role, skill level, and license type, as well as managing phone number retention when switching to a support license. Use this endpoint when you need to expand your call center team or adjust an existing user's role within the call center. The endpoint is particularly useful for setting up new operators with specific skill levels and roles, which can help in optimizing call routing and management within the call center. Note that while adding an operator, careful consideration should be given to the license type and role assigned, as these affect the operator's capabilities and the associated costs." }, { "slug": "DIALPAD_ADD_OPERATOR_TO_OFFICE", "name": "Add operator to office", "description": "This endpoint adds a new operator to a specific office within the Dialpad system. It allows administrators to assign users or rooms as operators, enhancing the office's communication capabilities. The endpoint requires the office ID (specified in the path), the operator's ID, and the type of operator (user or room). Optionally, the role of the new operator can be set to either standard operator or admin. Use this endpoint when you need to expand or modify the operator team for a particular office, ensuring efficient call handling and management within the Dialpad platform." }, { "slug": "DIALPAD_ADD_PARTICIPANT_TO_CALL", "name": "Add participant to call", "description": "Adds a new participant to an existing call in the Dialpad system. This endpoint allows you to include additional members in an ongoing call by specifying either a phone number or a target within your Dialpad organization. Use this when you need to add someone to a call that is already in progress, such as bringing in an expert or including a manager in a customer service call. The endpoint requires the ID of the existing call and the details of the new participant. It's important to note that the target, if used, must have a primary number assigned in the Dialpad system." }, { "slug": "DIALPAD_ASSIGN_FAX_LINE_TO_TARGET", "name": "Assign fax line to target", "description": "Creates and assigns a new fax line to a specified target (user or department) in the Dialpad system. This endpoint allows you to set up a fax line with various options, including reserved numbers, area code-based searches, or toll-free numbers. Use this when you need to provision a new fax line for a user or department, or when you want to assign an existing number as a fax line. The endpoint is flexible, allowing for different types of fax line assignments based on your specific needs and available numbers. Note that the assignment process is immediate, and the fax line will be ready for use once the API call is successful. However, this endpoint does not handle the actual sending or receiving of faxes; it only sets up the line for future use." }, { "slug": "DIALPAD_ASSIGN_NUMBER_TO_CALL_ROUTER", "name": "Assign number to call router", "description": "This endpoint assigns a phone number to a specific call router in the Dialpad system. It allows users to either provide a full phone number for assignment or specify an area code to automatically select an available number within that region. The assigned number can optionally be set as the primary number for the call router. This functionality is crucial for setting up and managing call routing within an organization, enabling efficient distribution of incoming calls to the appropriate departments or individuals." }, { "slug": "DIALPAD_ASSIGN_PHONE_NUMBER_TO_OFFICE", "name": "Assign phone number to office", "description": "This endpoint assigns a phone number to a specific office in the Dialpad system. It allows you to either specify a particular phone number or request an available number from a given area code. The assigned number can optionally be set as the primary number for the office. Use this endpoint when you need to add a new phone number to an office or change the office's primary number. It's particularly useful for setting up new offices or modifying existing office phone configurations. Note that this endpoint does not handle number porting or releasing existing numbers; it's specifically for assigning available numbers within the Dialpad system." }, { "slug": "DIALPAD_ASSIGN_PHONE_NUMBER_TO_ROOM", "name": "Assign phone number to room", "description": "Assigns a phone number to a specified room in Dialpad. This endpoint allows you to either assign a specific phone number or request a number from a given area code. It's useful for setting up new rooms or updating existing ones with additional or primary phone numbers. The assigned number can optionally be set as the primary number for the room. Use this endpoint when you need to manage phone number assignments for Dialpad rooms programmatically." }, { "slug": "DIALPAD_ASSIGN_PHONE_NUMBER_TO_TARGET", "name": "Assign phone number to target", "description": "Assigns a phone number to a specified target within the Dialpad system. This endpoint allows you to either assign a specific number or request a number from a given area code. It can be used to add new numbers to various entities such as users, departments, or call centers. The assigned number can optionally be set as the primary number for the target. This tool is particularly useful for managing phone number assignments across different parts of your Dialpad organization, enabling flexible number allocation and management." }, { "slug": "DIALPAD_ASSIGN_PHONE_NUMBER_TO_USER", "name": "Assign phone number to user", "description": "This endpoint assigns a phone number to a specific Dialpad user. It allows for either searching for an available number within a given area code or assigning a specific number to the user. The assigned number can optionally be set as the user's primary number. Use this endpoint when you need to provide a user with a new phone number or add an additional number to their account. It's particularly useful for setting up new users or expanding the communication capabilities of existing users. Note that this endpoint doesn't handle number porting or transferring existing numbers between users." }, { "slug": "DIALPAD_ASSIGN_POLICY_TO_USER_BY_ID", "name": "Assign policy to user by id", "description": "Assigns an access control policy to a specific user within the Dialpad system. This endpoint allows administrators to grant customized settings permissions to users at various levels of the organization: company-wide, for specific offices, or for contact centers. It's particularly useful for implementing Role-Based Access Control (RBAC) and managing user permissions across different parts of the Dialpad platform. The endpoint should be used when setting up new users, modifying existing user permissions, or implementing changes in the organizational structure that require updates to access control policies. Note that this feature is part of an Early Adopter Program and may be subject to changes or limitations." }, { "slug": "DIALPAD_ATTACH_LABELS_TO_CALL", "name": "Attach labels to call", "description": "Creates or updates labels for a specific call in the Dialpad system. This endpoint allows you to attach one or more labels to a call, which can be used for categorization, filtering, or tracking purposes. The function takes a call ID and an array of label strings, replacing any existing labels on the call with the provided set. Use this when you need to categorize a call or update its existing labels. The endpoint is particularly useful for integrating call labeling into automated workflows or custom applications built on top of Dialpad. Note that this operation will overwrite any previously existing labels on the call." }, { "slug": "DIALPAD_CONFIGURE_CALL_CENTER_SETTINGS", "name": "Configure call center settings", "description": "This endpoint creates a new call center within the Dialpad system with customizable settings for call handling, routing, operational hours, and advanced features. It allows for detailed configuration of call center behavior, including auto-recording, hold queue management, alert thresholds, and voice intelligence integration. Use this endpoint when setting up a new call center or department that requires specific call routing and management capabilities. The endpoint provides extensive customization options but requires careful consideration of settings to ensure optimal call center operation." }, { "slug": "DIALPAD_CREATE_ACCESS_CONTROL_POLICY", "name": "Create access control policy", "description": "Creates a new access control policy in Dialpad, defining a set of permissions and their application scope. This endpoint allows administrators to establish granular control over various Dialpad features and settings. It's used to manage user access and configure operational parameters across different levels of the organization. The policy created can encompass a wide range of permissions, from agent settings to AI configurations, enabling customized access control tailored to specific organizational needs. This tool is essential for setting up and maintaining a secure, well-organized communication environment within Dialpad." }, { "slug": "DIALPAD_CREATE_AGENT_STATUS_SUBSCRIPTION", "name": "Create agent status subscription", "description": "Creates or updates an agent status subscription for real-time monitoring of contact center agent statuses in Dialpad. This endpoint allows you to configure event notifications for changes in agent availability, such as when agents become available, busy, or go off-duty. Use this when setting up integrations that require up-to-date information on agent statuses for workforce management, real-time dashboards, or automated workflows. The subscription can be associated with a specific webhook or websocket endpoint for receiving the status updates. Note that this endpoint only configures the subscription; you need to separately set up the webhook or websocket to receive the actual event data." }, { "slug": "DIALPAD_CREATE_CALLBACK", "name": "Create callback", "description": "Creates a callback request in a Dialpad call center. This endpoint allows you to initiate a callback to a specified phone number through a designated call center. It's useful for implementing features like \"Request a Call\" on websites or applications, or for scheduling return calls to customers. The endpoint doesn't immediately place the call but queues it in the specified call center for an agent to handle. Note that while both parameters are optional, at least one should be provided for a meaningful request. If no call_center_id is specified, the system may use a default or return an error, depending on your account configuration." }, { "slug": "DIALPAD_CREATE_CALL_REVIEW_SHARE_LINK", "name": "Create call review share link", "description": "Creates a shareable link for a specific call review in the Dialpad platform. This endpoint allows users to generate a URL that can be used to share call recordings or summaries with others, either within the company or publicly. It's particularly useful for sharing important call information, training materials, or for compliance purposes. The function provides control over the privacy level of the shared content, allowing for secure sharing within an organization or broader distribution as needed." }, { "slug": "DIALPAD_CREATE_CALL_ROUTER_CONFIGURATION", "name": "Create call router configuration", "description": "Creates a new call router in the Dialpad system, allowing for custom call routing logic based on a specified URL. This endpoint configures essential settings for the call router, including its name, default target for fallback scenarios, and the routing URL for decision-making. It's used when setting up a new automated call distribution system or when implementing custom call routing logic for an office. The call router can be enabled or disabled, and includes an optional security feature through a signature secret. Note that this endpoint only creates the call router; additional setup may be required in the Dialpad interface or through other API calls to fully integrate it into the calling workflow." }, { "slug": "DIALPAD_CREATE_CHANNEL_ENDPOINT", "name": "Create channel endpoint", "description": "Creates a new communication channel within the Dialpad platform. This endpoint allows users to set up a dedicated space for team collaboration, discussions, or topic-specific conversations. It's particularly useful for organizing communication within a company or project. The created channel can be either public or private, providing flexibility in managing access and information sharing. Use this endpoint when you need to programmatically create channels for various teams, projects, or departments, streamlining the process of setting up communication structures within Dialpad." }, { "slug": "DIALPAD_CREATE_CUSTOM_IVR_WITH_AUDIO_FILE", "name": "Create custom ivr with audio file", "description": "Creates a new custom Interactive Voice Response (IVR) system within the Dialpad platform. This endpoint allows you to define and configure an IVR workflow by specifying its type, associated audio file, and target assignment. Use this when setting up automated phone menus, call routing systems, or customized voice interactions for different parts of your Dialpad organization. The IVR can be assigned to various entities like call centers, departments, or individual users, providing flexibility in managing call flows and customer interactions." }, { "slug": "DIALPAD_CREATE_NEW_CONTACT_ENTRY", "name": "Create new contact entry", "description": "The CreateContact endpoint adds a new contact to Dialpad's system. Use it to create local or shared contacts with comprehensive information. Ideal for user onboarding, data migration, or system integrations. Supports various contact details, with some fields restricted to single-line entries for consistency." }, { "slug": "DIALPAD_CREATE_NEW_DEPARTMENT_RECORD", "name": "Create new department record", "description": "Creates a new department within the Dialpad system with customizable settings for call handling, operating hours, and advanced features. This endpoint allows for detailed configuration of department properties, including automatic call recording, hold queue management, custom operating hours, call routing strategies, and voice intelligence settings. It's particularly useful for setting up complex call flow structures within an organization, enabling efficient call distribution and management. The endpoint requires specifying the department name and associated office ID, with numerous optional parameters for fine-tuning department behavior. It's important to note that some default values are applied if optional parameters are not provided, ensuring a functional department setup even with minimal configuration." }, { "slug": "DIALPAD_CREATE_PIN_FOR_INTERNATIONAL_ROOM_CALLS", "name": "Create pin for international room calls", "description": "Creates a PIN for protected international calls from a Dialpad room. This endpoint generates a unique PIN that can be used to authenticate and authorize international calls made from a specific Dialpad room. It's particularly useful for businesses that want to control and track international calling capabilities within their organization. The generated PIN adds an extra layer of security, ensuring that only authorized users can make international calls from the room. Use this endpoint when you need to set up or refresh international calling access for a room, especially in scenarios where you want to monitor usage or restrict access to certain team members." }, { "slug": "DIALPAD_CREATE_ROOM_IN_OFFICE_VIA_POST", "name": "Create room in office via post", "description": "Creates a new room within a specified office in the Dialpad system. This endpoint is used to set up physical or virtual spaces for collaboration, meetings, or other communication purposes. It allows you to define a room with a name and associate it with a specific office. This is particularly useful for organizations managing multiple locations or wanting to organize their communication spaces efficiently. The created room can then be used for various purposes such as scheduling meetings, assigning resources, or managing call routing within the Dialpad platform." }, { "slug": "DIALPAD_CREATE_SCHEDULE_REPORTS_ENDPOINT", "name": "Create schedule reports endpoint", "description": "Creates a scheduled report in the Dialpad system for various types of communication data. This endpoint allows users to automate the generation and delivery of reports on a regular basis, such as call logs, user statistics, or voicemails. It's particularly useful for managers, administrators, and analysts who need consistent, periodic insights into communication patterns and performance metrics. The endpoint offers flexible scheduling options, including daily, weekly, or monthly frequencies, and can target specific organizational units or user groups. Use this when you need to set up recurring reports for monitoring, compliance, or analytical purposes. Note that this endpoint creates a new schedule; to modify existing schedules, use the appropriate update endpoint." }, { "slug": "DIALPAD_CREATE_SECONDARY_OFFICE", "name": "Create secondary office", "description": "Creates a new office within the Dialpad system with specified configurations and settings. This endpoint allows you to set up a new office location or entity, including its billing information, operational hours, routing options, and various communication preferences. Use this when you need to add a new office to your Dialpad organization, such as when expanding to a new location or setting up a separate department with its own communication settings. The endpoint requires several mandatory parameters for basic office setup and billing, while offering numerous optional parameters for fine-tuning office operations and call handling. Note that some settings, like voice intelligence and E911 address, may have regulatory implications depending on your location and should be configured carefully." }, { "slug": "DIALPAD_CREATE_SMS_EVENT_SUBSCRIPTION", "name": "Create sms event subscription", "description": "Creates a new SMS event subscription in the Dialpad API, allowing users to receive notifications for inbound and/or outbound SMS messages. This endpoint enables fine-grained control over SMS event monitoring, including options for filtering by direction, target, and message type. It's particularly useful for integrating real-time SMS notifications into external systems or applications. The subscription can be configured to include or exclude internal company messages and to provide updates on message delivery statuses. Use this endpoint when setting up new SMS monitoring systems or when adjusting existing subscription parameters." }, { "slug": "DIALPAD_CREATE_USER_WITH_AUTO_ASSIGN", "name": "Create user with auto assign", "description": "Creates a new user account in the Dialpad system with the specified details. This endpoint allows you to add a new user to your Dialpad organization, set up their basic profile information, assign them to an office, and optionally auto-assign a phone number. It's particularly useful for bulk user creation or when integrating Dialpad user management with other systems. The endpoint requires at minimum an email and office ID, with options to further customize the user's profile and permissions through additional parameters. Note that while a license can be specified, it defaults to 'talk' if not provided, ensuring that the new user has basic Dialpad functionality." }, { "slug": "DIALPAD_CREATE_WEBHOOK_POST_ENDPOINT", "name": "Create webhook post endpoint", "description": "Creates a new webhook integration for receiving real-time event notifications from Dialpad. This endpoint allows you to specify a URL where Dialpad will send event data when specific actions occur within the Dialpad system. It's essential for building responsive, event-driven integrations with Dialpad. The endpoint also supports an optional secret for verifying the authenticity of incoming webhook requests, enhancing security. Use this when you need to set up automated workflows or sync Dialpad events with external systems." }, { "slug": "DIALPAD_DEAUTHORIZE_OAUTH2_SESSION", "name": "Deauthorize oauth2 session", "description": "Deauthorizes (revokes) an OAuth2 access token, effectively terminating the application's access to the Dialpad API. This endpoint should be used when an application needs to invalidate its current access token, such as during user logout, when suspending an integration, or in response to potential security threats. It's an essential security measure to prevent unauthorized access once a token is no longer needed or potentially compromised. Note that after deauthorization, the application will need to re-authenticate to obtain a new access token for future API calls. This endpoint does not return any specific data; a successful call simply invalidates the token." }, { "slug": "DIALPAD_DELETE_ACCESS_CONTROL_POLICY_BY_ID", "name": "Delete access control policy by id", "description": "Deletes a specific access control policy from the Dialpad system. This endpoint allows company administrators to remove custom permission settings that were previously created for managing user roles and access within the Dialpad platform. It should be used when a particular access control policy is no longer needed or requires complete removal from the system. This operation is permanent and cannot be undone, so it should be used with caution. The endpoint does not return the deleted policy details; it typically returns a success status upon successful deletion." }, { "slug": "DIALPAD_DELETE_AGENT_STATUS_BY_ID", "name": "Delete agent status by id", "description": "Deletes a specific agent status subscription identified by its unique ID. This endpoint is used to stop receiving real-time updates about an agent's status (e.g., Available, Busy, Off-duty) in the Dialpad system. It should be used when you no longer need to track the status changes for a particular agent or when cleaning up unused subscriptions. The operation is irreversible, so care should be taken to ensure the correct subscription ID is provided. This endpoint does not return the deleted subscription details; it typically returns a success status code upon successful deletion." }, { "slug": "DIALPAD_DELETE_CALL_CENTER_BY_ID", "name": "Delete call center by id", "description": "Deletes a specific call center from the Dialpad system. This endpoint should be used when you need to permanently remove a call center from your Dialpad account. It's important to note that this action is irreversible and will affect all associated resources, such as agents, call logs, and configurations linked to the specified call center. Before using this endpoint, ensure that all necessary data has been backed up or migrated. This operation may have significant implications for ongoing operations, so it should be used with caution and typically requires appropriate authorization." }, { "slug": "DIALPAD_DELETE_CALL_REVIEW_SHARE_LINK_BY_ID", "name": "Delete callreviewsharelink by id", "description": "This endpoint deletes a specific call review share link in the Dialpad system. It's used to revoke access to a previously shared call review, ensuring that the link can no longer be used to view the associated call information. This action is permanent and should be used when you want to immediately prevent further access to a shared call review, such as when sensitive information was mistakenly shared or when the review is no longer relevant. Once deleted, the share link cannot be recovered, and anyone attempting to use it will receive an error." }, { "slug": "DIALPAD_DELETE_CALL_ROUTER_BY_ID", "name": "Delete callrouter by id", "description": "Deletes a specific call router from the Dialpad system. This endpoint should be used when you need to remove an existing call routing configuration, such as when restructuring your call flow or decommissioning outdated routing rules. The deletion is permanent and cannot be undone, so use with caution. This operation will immediately affect incoming calls that were previously handled by the deleted router, potentially disrupting call flows if not properly managed. Ensure that any dependencies on the call router (e.g., DIDs or mainline menu routings) are updated before deletion to maintain smooth call handling." }, { "slug": "DIALPAD_DELETE_CALL_SUBSCRIPTION_BY_ID", "name": "Delete call subscription by id", "description": "Deletes a specific call subscription from the Dialpad system. This endpoint should be used when an application no longer needs to receive real-time notifications for a particular call-related event or functionality. It allows developers to clean up unused subscriptions, potentially freeing up resources and reducing unnecessary data processing. The deletion is permanent and cannot be undone, so use this endpoint with caution. It's important to note that this operation only affects the specified subscription and does not impact any other active subscriptions or ongoing calls." }, { "slug": "DIALPAD_DELETE_CHANNEL_BY_ID", "name": "Delete channel by id", "description": "Deletes a specific channel from the Dialpad communication platform. This endpoint should be used when you need to remove a communication channel that is no longer needed or has become obsolete. It permanently removes the channel and all associated data, so it should be used with caution. This operation cannot be undone, and once a channel is deleted, it cannot be recovered. The endpoint is useful for maintaining a clean and organized communication structure within your Dialpad account." }, { "slug": "DIALPAD_DELETE_CHANNEL_MEMBER_BY_ID", "name": "Delete channel member by id", "description": "Removes a specified member from a Dialpad channel. This endpoint allows you to delete a user from a particular channel, effectively revoking their access and participation in that channel's communications. It should be used when you need to remove a team member from a specific collaboration space, such as when an employee changes roles or leaves the organization. The endpoint requires the channel ID (specified in the URL path) and the user ID of the member to be removed. Note that this action is irreversible, and the removed member will lose access to the channel's history and future communications. It's important to ensure you have the necessary permissions to remove members before using this endpoint." }, { "slug": "DIALPAD_DELETE_CONTACT_BY_ID", "name": "Delete contact by id", "description": "Deletes a specific contact from the Dialpad system using the provided contact ID. This endpoint should be used when you need to permanently remove a contact's information from your Dialpad account. It's important to note that this action is irreversible, and once a contact is deleted, it cannot be recovered through the API. Use this endpoint with caution, ensuring that you have verified the correct contact ID before deletion. This operation affects both shared company contacts and user-specific local contacts, depending on the scope of the provided ID." }, { "slug": "DIALPAD_DELETE_CUSTOM_IVR_BY_TARGET_TYPE_AND_IVRTYPE", "name": "Delete customivr by targettype and ivrtype", "description": "Deletes a custom Interactive Voice Response (IVR) configuration from a specified target in the Dialpad system. This endpoint is used to remove IVR settings, allowing for the reset or reconfiguration of call routing and automated response systems. It's particularly useful when updating IVR workflows or when a specific IVR configuration is no longer needed. The operation affects the IVR settings for the specified target type and ID, with an option to limit the change to either inbound or outbound calls in call center contexts. This endpoint should be used cautiously, as deleting an IVR configuration is irreversible and may impact existing call routing processes." }, { "slug": "DIALPAD_DELETE_DEPARTMENT_RESOURCE", "name": "Delete department resource", "description": "Deletes a specific department from the Dialpad system. This endpoint should be used when you need to remove a department that is no longer needed or has been deprecated within your organization's structure. The operation is irreversible, so it should be used with caution. Once a department is deleted, all associated data, such as user assignments and resource allocations, may be affected. This endpoint is particularly useful for maintaining an up-to-date organizational structure in Dialpad, especially during restructuring or when cleaning up obsolete departments." }, { "slug": "DIALPAD_DELETE_DESKPHONE_BY_USER_ID", "name": "Delete deskphone by user id", "description": "Deletes a specific deskphone associated with a user in the Dialpad system. This endpoint should be used when you need to remove a deskphone from a user's account, such as when the device is no longer in use or needs to be reassigned. The operation is permanent and cannot be undone, so it should be used with caution. This endpoint is particularly useful for managing hardware inventory and ensuring that user accounts accurately reflect their current device assignments." }, { "slug": "DIALPAD_DELETE_DESKPHONE_IN_ROOM", "name": "Delete deskphone in room", "description": "This endpoint removes a specific deskphone from a designated room within the Dialpad system. It's used to unassign or decommission a deskphone from a particular shared space, such as a conference room or reception area. The operation is permanent and should be used with caution as it will disassociate the deskphone from the room, potentially affecting call routing and room communication capabilities. This endpoint is particularly useful during office reorganizations, when updating room phone setups, or when removing faulty devices from the system. Note that this operation only removes the association between the deskphone and the room; it does not delete the deskphone from the overall Dialpad account." }, { "slug": "DIALPAD_DELETE_NUMBER_VIA_API", "name": "Delete number via api", "description": "Deletes a specific phone number from the user's Dialpad account. This endpoint should be used when a phone number is no longer needed and needs to be removed from the system. It's important to note that this action is irreversible, and once a number is deleted, it may not be possible to reclaim the same number. This endpoint is particularly useful for managing phone inventory, removing temporary numbers, or cleaning up unused numbers to optimize resource allocation. The deletion process may have implications on call routing, billing, and other phone-related features within Dialpad, so it should be used with caution and only when the user is certain that the number is no longer required." }, { "slug": "DIALPAD_DELETE_OFFICE_OPERATOR_BY_ID", "name": "Delete office operator by id", "description": "Removes a specified operator (user or room) from a particular office in the Dialpad system. This endpoint is used to manage the association between operators and offices, allowing administrators to control access and permissions within the organization's structure. It should be used when you need to disassociate a user or a room from an office, such as when an employee changes departments or a shared space is no longer used for a specific office. The endpoint requires both the operator's ID and type to ensure precise removal of the correct entity. Note that this action does not delete the user or room from the system entirely; it only removes their association with the specified office." }, { "slug": "DIALPAD_DELETE_OPERATOR_FROM_CALL_CENTER", "name": "Delete operator from call center", "description": "Removes a specified operator from a call center in the Dialpad system. This endpoint should be used when you need to disassociate an agent or user from a particular call center, such as when an employee changes roles or leaves the organization. The operation is permanent and cannot be undone through this API. If you need to re-add the operator to the call center, you would need to use a separate API call. Note that this endpoint only removes the operator's association with the call center; it does not delete the user account from Dialpad." }, { "slug": "DIALPAD_DELETE_OPERATOR_FROM_DEPARTMENT", "name": "Delete operator from department", "description": "Removes a specified operator from a department in the Dialpad system. This endpoint is used to update department operator assignments by removing either a user or a room from the list of operators for a given department. It's particularly useful for managing call routing and department resources. The endpoint requires both the operator's unique ID and type (user or room) to ensure accurate removal. Use this when reorganizing department structures, changing operator assignments, or updating call handling workflows. Note that this action is irreversible and may affect ongoing call routing for the department." }, { "slug": "DIALPAD_DELETE_RECORDING_SHARE_LINK_BY_ID", "name": "Delete recording share link by id", "description": "Deletes a specific recording share link in the Dialpad system. This endpoint is used to revoke access to a shared recording by removing the associated link. It should be called when you want to prevent further access to a recording through a previously generated share link. This action is permanent and cannot be undone, so use it cautiously. The endpoint is particularly useful for maintaining privacy and controlling access to sensitive or outdated recorded content." }, { "slug": "DIALPAD_DELETE_ROOM_BY_ID", "name": "Delete room by id", "description": "Deletes a specific room from the Dialpad system using its unique identifier. This endpoint should be used when you need to remove a room that is no longer in use or has been decommissioned, such as a closed conference room or a removed reception desk. The deletion is permanent and cannot be undone, so use this endpoint with caution. It's important to note that deleting a room will also remove any associated configurations, such as room phone settings or extensions. This operation is part of Dialpad's room management functionality and helps maintain an up-to-date inventory of active rooms in your organization." }, { "slug": "DIALPAD_DELETE_SCHEDULE_REPORT_BY_ID", "name": "Delete schedule report by id", "description": "Deletes a specific scheduled report from the Dialpad system. This endpoint allows users to permanently remove a previously configured report that was set up for automatic generation and delivery. It should be used when a particular scheduled report is no longer needed or when you want to stop the automatic generation of a specific report. This operation cannot be undone, so it should be used with caution. The endpoint will not provide any information about the deleted report; it will only confirm the successful deletion or return an error if the operation fails." }, { "slug": "DIALPAD_DELETE_SMS_SUBSCRIPTION_BY_ID", "name": "Delete sms subscription by id", "description": "Deletes a specific SMS subscription from the Dialpad system. This endpoint should be used when you want to cancel or remove an existing SMS subscription, such as when a user no longer needs SMS services or wants to change their subscription plan. The operation is irreversible, so it should be used with caution. Once deleted, the subscription and its associated settings will no longer be available. This endpoint only handles the deletion process and does not provide any information about the subscription being deleted. It's important to ensure that you have the correct subscription ID before making this call, as there is no way to recover a mistakenly deleted subscription." }, { "slug": "DIALPAD_DELETE_SUBSCRIPTION_CHANGELOG_BY_ID", "name": "Delete subscription changelog by id", "description": "Deletes a specific changelog entry from a subscription in the Dialpad system. This endpoint is used to permanently remove a record of changes made to a subscription, which could include modifications to webhook configurations, event subscriptions, or other subscription-related settings. It should be used when you need to clean up or remove outdated or erroneous changelog entries. Be cautious when using this endpoint, as deleting changelog entries may affect auditing and tracking capabilities. Note that this operation is irreversible, and once a changelog entry is deleted, it cannot be recovered. This endpoint is part of Dialpad's subscription management API and helps maintain an accurate and up-to-date record of subscription changes." }, { "slug": "DIALPAD_DELETE_SUBSCRIPTION_CONTACT_BY_ID", "name": "Delete subscription contact by id", "description": "Deletes a specific subscription contact from the Dialpad system. This endpoint should be used when you need to remove a contact from your subscription list, such as when a user unsubscribes or when cleaning up outdated contact information. The operation is irreversible, so use it with caution. This endpoint only handles the deletion process and does not return the deleted contact's information. It's important to note that this action may affect any ongoing subscriptions or notifications associated with the deleted contact." }, { "slug": "DIALPAD_DELETE_USER_BY_ID", "name": "Delete user by id", "description": "Deletes a user from the Dialpad system based on the provided user ID. This endpoint should be used when permanently removing a user's account and associated data from Dialpad. It's important to note that deleted users can be restored for up to 72 hours after deletion, after which their records are anonymized. Use this endpoint with caution as it will remove the user's access to Dialpad services and may affect team structures or ongoing communications. This operation cannot be undone after the 72-hour restoration period." }, { "slug": "DIALPAD_DELETE_WEBHOOK_BY_ID", "name": "Delete webhook by id", "description": "Deletes a specific webhook subscription from the Dialpad platform using its unique identifier. This endpoint should be used when you want to stop receiving real-time event notifications for a particular webhook. It's important to note that once a webhook is deleted, it cannot be recovered, and you will need to create a new webhook subscription if you wish to receive events again. This operation is useful for managing webhook subscriptions, especially when cleaning up outdated or unnecessary event listeners in your integration with Dialpad." }, { "slug": "DIALPAD_DELETE_WEBSOCKET_CONNECTION_BY_ID", "name": "Delete websocket connection by id", "description": "Closes and removes a specific WebSocket connection in the Dialpad system. This endpoint should be used when an application needs to programmatically terminate a real-time event subscription or clean up unused WebSocket connections. It's particularly useful for managing resources and ensuring that inactive or unnecessary WebSocket connections are properly closed. This operation is irreversible, so it should be used with caution. Once a WebSocket is deleted, any active subscriptions or real-time data streams associated with it will be immediately terminated." }, { "slug": "DIALPAD_FETCH_CALL_BY_ID", "name": "Fetch call byid", "description": "Retrieves detailed information about a specific call using its unique identifier. This endpoint allows developers to access comprehensive data about a particular call made through the Dialpad platform. It should be used when you need to fetch specific call details for purposes such as logging, analysis, or displaying call information to users. The endpoint provides a snapshot of the call at the time of the request, including details like duration, participants, and call status. It does not provide real-time updates for ongoing calls; for that, you would need to poll the endpoint or use a different real-time communication method. This endpoint is particularly useful for applications that need to integrate call history or detailed call records from Dialpad." }, { "slug": "DIALPAD_FETCH_CALL_TRANSCRIPT_BY_ID", "name": "Fetch call transcript by id", "description": "Retrieves the transcript for a specific call in the Dialpad system. This endpoint allows you to fetch the text representation of the spoken content from a particular call or meeting. It's useful for reviewing conversation details, analyzing call content, or creating searchable records of communications. The transcript is generated using Dialpad's AI-powered transcription feature, which provides accurate text conversion of audio content. Use this endpoint when you need to access the written record of a call for purposes such as quality assurance, training, or content analysis. Note that the availability and accuracy of transcripts may depend on the audio quality of the original call and the capabilities of the AI transcription system." }, { "slug": "DIALPAD_FETCH_CUSTOM_IVRS", "name": "Fetch custom ivrs", "description": "Retrieves a list of all custom Interactive Voice Response (IVR) configurations associated with the authenticated Dialpad account. This endpoint allows developers to fetch comprehensive details about the custom IVRs set up in their Dialpad system, including menu structures, voice prompts, and routing rules. It's particularly useful for auditing existing IVR setups, gathering information for reporting purposes, or syncing IVR configurations with external systems. The endpoint returns all custom IVRs by default, without requiring any parameters. However, it does not provide real-time analytics or call logs related to these IVRs. Use this endpoint when you need an overview of your IVR landscape or when preparing to make bulk updates to your IVR configurations." }, { "slug": "DIALPAD_FETCH_OPERATORS_FOR_OFFICE_ID", "name": "Fetch operators for office id", "description": "Retrieves a list of operators associated with a specific office in Dialpad. This endpoint should be used when you need to get information about the operators managing calls and operations within a particular office. It's useful for auditing office structure, managing call center operations, or gathering data for reporting purposes. The endpoint returns details about the operators, which may include their names, IDs, roles, and current statuses. Note that this endpoint only provides information about operators and does not allow for modifying operator data or office structure." }, { "slug": "DIALPAD_FETCH_SCHEDULED_REPORTS", "name": "Fetch scheduled reports", "description": "Retrieves a list of scheduled reports from the Dialpad system. This endpoint allows users to fetch information about reports that have been set up for automatic generation on a regular basis. It's particularly useful for administrators or users who need to review or manage the scheduled reporting configuration within their Dialpad account. The endpoint supports filtering by report type, frequency, and date range, making it easy to find specific scheduled reports. It should be used when there's a need to audit existing report schedules, verify report configurations, or gather information about automated reporting processes in place. Note that this endpoint only provides metadata about the scheduled reports, not the actual report content itself. It's ideal for getting an overview of reporting activities but not for accessing the report data directly." }, { "slug": "DIALPAD_FETCH_TRANSCRIPT_URL_BY_CALL_ID", "name": "Fetch transcript url by call id", "description": "Retrieves the URL of a transcript for a specific call in the Dialpad system. This endpoint allows developers to access the text version of a call's audio content by providing the unique identifier of the call. The returned URL can be used to fetch the actual transcript content. This tool is particularly useful when you need to programmatically access call transcripts for analysis, record-keeping, or integration with other systems. It should be used when a user needs to obtain the transcript URL for a known call ID, but not for directly retrieving the transcript content itself." }, { "slug": "DIALPAD_FETCH_USER_DETAILS_BY_ID", "name": "Fetch user details by id", "description": "Retrieves detailed information about a specific user in the Dialpad system. This endpoint is used to fetch comprehensive user data, including profile details, account settings, and associated communication information. It's particularly useful for user management tasks, such as verifying user information, updating records in external systems, or displaying user profiles in integrated applications. The endpoint returns a single user object based on the provided user ID. It should be used when detailed information about a particular user is needed, but it will not provide aggregate data or information about multiple users simultaneously. Note that the specific fields returned may depend on the requester's permissions and the user's privacy settings." }, { "slug": "DIALPAD_FORMAT_PHONE_NUMBERS", "name": "Format phone numbers", "description": "The format_phone_number endpoint is used to standardize and format phone numbers within the Dialpad ecosystem. This tool takes a raw phone number input and converts it into a specified or default format, ensuring consistency across the platform. It's particularly useful when integrating new contact information, preparing numbers for display, or standardizing data for call routing purposes. The endpoint supports various input formats and can adapt to different country-specific number structures, making it versatile for international use. However, it's important to note that this tool is for formatting purposes only and does not validate the existence or operability of the phone number." }, { "slug": "DIALPAD_GET_AVAILABLE_LICENSES_FOR_AN_OFFICE", "name": "Get available licenses for an office", "description": "Retrieves the number of available (unused) licenses for a specific office within a Dialpad organization. This endpoint is used to check the current license capacity and availability before assigning new licenses to users or features. It provides essential information for office administrators to manage their license inventory effectively. The endpoint should be used when planning user onboarding, upgrading subscriptions, or performing license audits. Note that this endpoint only returns information about unassigned licenses and does not provide details about currently assigned licenses or their usage." }, { "slug": "DIALPAD_GET_CALL_CENTER_STATUS_BY_ID", "name": "Get call center status by id", "description": "Retrieves the current operational status of a specific call center in the Dialpad system. This endpoint allows you to get real-time information about a call center's state, which can include details such as whether it's active, the number of agents available, current call volume, or any ongoing issues. It's particularly useful for monitoring call center performance, making informed decisions about resource allocation, or triggering automated workflows based on the call center's status. The endpoint should be used when you need up-to-the-minute information about a call center's operational condition, but it does not provide historical data or detailed analytics." }, { "slug": "DIALPAD_GET_CALL_LABELS", "name": "Get call labels", "description": "Retrieves a list of all available call labels in the Dialpad system. This endpoint allows users to fetch the current set of labels that can be applied to calls for categorization and management purposes. It's particularly useful for applications that need to display or use the full range of call labeling options in their interface or logic. The endpoint returns a collection of call labels, likely including their names and any associated metadata. It should be used when initializing call management interfaces or when needing to synchronize local label data with the current state in Dialpad. Note that this endpoint does not provide information about which labels are applied to specific calls; it only returns the set of available labels." }, { "slug": "DIALPAD_GET_CALL_REVIEW_SHARE_LINK_BY_ID", "name": "Get call review share link by id", "description": "Retrieves or generates a share link for a specific call review in the Dialpad system. This endpoint allows users to obtain a unique URL that can be used to share call review data, including summaries, transcripts, or analysis, with other team members or external parties. The share link provides a convenient way to collaborate on call reviews without requiring direct access to the Dialpad platform. This tool should be used when a user needs to distribute call review information quickly and securely. It's particularly useful for managers sharing feedback, trainers providing examples, or team members collaborating on customer interactions. The endpoint does not provide the actual call review content, only the means to access it via the generated link." }, { "slug": "DIALPAD_GET_CALL_SUBSCRIPTION_DETAILS", "name": "Get call subscription details", "description": "Retrieves a list of call subscriptions associated with the authenticated user's account in the Dialpad platform. This endpoint allows developers to fetch details about existing call event subscriptions, which are used to receive real-time updates on call states and activities. It should be used when an application needs to monitor or manage the current set of call subscriptions, such as for auditing purposes or to verify the existence of specific subscriptions. The endpoint does not create, modify, or delete subscriptions; it only provides read access to the existing subscription data. Note that the response may include various types of call subscriptions, and developers should be prepared to handle different subscription formats or filters that may be present in the returned data." }, { "slug": "DIALPAD_GET_CHANNEL_MEMBERS_BY_ID", "name": "Get channel members by id", "description": "Retrieves a list of members for a specific channel in Dialpad. This endpoint allows you to fetch user information for all members associated with the given channel ID. It's useful for obtaining an overview of channel participants, which can be helpful for managing team collaboration, assigning tasks, or analyzing channel activity. The endpoint should be used when you need to access member details for a particular channel, such as when displaying member lists, checking channel membership, or performing channel-related operations that require knowledge of its members. Note that this endpoint only provides member information and does not modify the channel or its membership." }, { "slug": "DIALPAD_GET_DEPARTMENTS_BY_OFFICE_ID", "name": "Get departments by office id", "description": "Retrieves a list of all departments associated with a specific office in the Dialpad system. This endpoint is essential for understanding the organizational structure within a company's Dialpad account. It should be used when there's a need to view, manage, or analyze the departmental breakdown of a particular office. The endpoint provides a comprehensive overview of the office's internal structure, which can be valuable for administrative tasks, reporting, or integration with other systems. Note that this endpoint only returns department information and does not provide details about individual users within those departments." }, { "slug": "DIALPAD_GET_DESKPHONE_BY_PARENT_ID", "name": "Get deskphone by parent id", "description": "Retrieves detailed information about a specific deskphone within a designated room or parent entity in the Dialpad system. This endpoint is useful for obtaining the current configuration, status, and attributes of a particular deskphone device. It should be used when you need to access or verify the details of a single deskphone, such as during troubleshooting, inventory management, or when updating device settings. The endpoint does not modify any data and is intended for read-only operations. Keep in mind that the response will only provide information about the specified deskphone and will not include details about other devices or the parent entity itself." }, { "slug": "DIALPAD_GET_DESKPHONES_FOR_USER_PARENT_ID", "name": "Get deskphones for user parent id", "description": "Retrieves a list of deskphones associated with a specific user in the Dialpad system. This endpoint is useful for managing and tracking the deskphone inventory assigned to individual users within an organization. It can be used to audit user equipment, troubleshoot connectivity issues, or gather information for user setup and onboarding processes. The endpoint returns details about all deskphones linked to the specified user, which may include information such as deskphone models, serial numbers, and configuration status. This tool should be used when you need to obtain a comprehensive view of a user's assigned deskphone equipment in Dialpad." }, { "slug": "DIALPAD_GET_DESKPHONES_IN_ROOMS", "name": "Get deskphones in rooms", "description": "Retrieves a list of deskphones associated with a specific room in the Dialpad system. This endpoint is used to get detailed information about the communication devices deployed in shared spaces such as conference rooms, reception areas, or phone booths. It provides an overview of the deskphones' configuration and status within the context of a particular room. Use this endpoint when you need to inventory, manage, or troubleshoot deskphones in a specific location. The response likely includes details such as deskphone models, serial numbers, configuration status, and any associated user information. This tool is particularly useful for IT administrators and facilities managers who need to maintain an up-to-date record of communication equipment in various rooms across the organization." }, { "slug": "DIALPAD_GET_OFFICE_CALL_CENTERS", "name": "Get office call centers", "description": "Retrieves a list of call centers associated with a specific office in the Dialpad platform. This endpoint allows administrators and developers to fetch information about all call centers within a given office, which is useful for managing and organizing communication resources. Use this endpoint when you need to get an overview of call center units within an office, such as for reporting, resource allocation, or integration purposes. The endpoint returns basic information about each call center, but detailed configuration or real-time status may require additional API calls." }, { "slug": "DIALPAD_GET_OPERATOR_SKILLS_BY_CALL_CENTER_AND_USER", "name": "Get operator skills by call center and user", "description": "Retrieves the skill information for a specific operator within a designated call center. This endpoint allows you to access details about an operator's assigned skills, which are crucial for efficient call routing and task assignment in the call center environment. Use this endpoint when you need to review or verify an operator's capabilities, such as language proficiency, technical expertise, or customer service specialization. The retrieved information can be valuable for workforce management, skill-based routing configurations, and ensuring optimal operator-to-task matching. Note that this endpoint only provides skill data and does not allow for skill modification; separate endpoints would be required for updating skills." }, { "slug": "DIALPAD_GET_PHONE_NUMBER_DETAILS", "name": "Get phone number details", "description": "Retrieves detailed information about a specific phone number associated with the Dialpad account. This endpoint allows you to fetch comprehensive data about a single phone number, including its current status, assigned user or department, tags, and other relevant attributes. Use this endpoint when you need to access or verify the details of a particular phone number within your Dialpad system. It's particularly useful for auditing phone number assignments, checking number status, or retrieving associated metadata. The endpoint does not modify any data and is safe for frequent use, making it ideal for real-time information retrieval or periodic synchronization with external systems." }, { "slug": "DIALPAD_GET_RECORDING_SHARE_LINK_BY_ID", "name": "Get recording share link by id", "description": "Retrieves detailed information about a specific recording share link in the Dialpad system. This endpoint allows you to fetch the current status, settings, and metadata associated with a previously created share link for a call recording. It's particularly useful when you need to verify the current state of a share link, check its expiration status, or retrieve the associated recording details. The endpoint should be used when you have a valid recording share link ID and need to access its up-to-date information. Note that this endpoint only provides information about the share link itself and does not return the actual recording content." }, { "slug": "DIALPAD_GET_ROOMS_LIST", "name": "Get rooms list", "description": "Retrieves a list of all available meeting rooms or spaces within the Dialpad system. This endpoint is essential for managing and organizing video-enabled meetings, allowing users to view and select appropriate meeting spaces for their needs. It provides an overview of both physical conference rooms and virtual meeting spaces, supporting Dialpad's hybrid team collaboration features. Use this endpoint when you need to display available rooms, check room capabilities, or integrate room selection into scheduling workflows. The response likely includes details such as room names, capacities, available equipment (e.g., Poly Studio X integration), and potentially real-time availability status. This endpoint does not create or modify rooms; it's purely for fetching room information. Keep in mind that the returned data may need to be combined with calendar integration data to provide a complete picture of room availability." }, { "slug": "DIALPAD_GET_SUBSCRIPTION_CONTACT_BY_ID", "name": "Get subscription contact by id", "description": "Retrieves the subscription information for a specific contact in the Dialpad system. This endpoint allows you to access details about a contact's current subscription status, type, and related information. Use this when you need to check or verify the subscription details for a particular contact, such as during account management or support processes. The endpoint focuses solely on subscription data and does not provide other contact information or modify any existing data. It's particularly useful for scenarios involving subscription management, billing inquiries, or when integrating Dialpad's contact subscription system with other applications." }, { "slug": "DIALPAD_GET_USER_CALLER_ID", "name": "Get user caller id", "description": "Retrieves the caller ID information for a specific user in the Dialpad system. This endpoint allows you to fetch the current caller ID settings associated with a user's account, which may include their display name, phone number, or other identifying information used when making outbound calls. It's particularly useful for administrators or integrations that need to verify or display a user's current caller ID configuration. The endpoint should be used when you need to check or display a user's caller ID settings, but not for modifying these settings. Note that this endpoint only provides read access to the caller ID information and cannot be used to update or change the caller ID settings." }, { "slug": "DIALPAD_GET_USER_DESKPHONES", "name": "Get user deskphones", "description": "Retrieves detailed information about a specific deskphone associated with a particular user in the Dialpad system. This endpoint is useful when you need to access or verify the configuration, status, or other attributes of a user's deskphone. It should be used when you have both the user's ID and the specific deskphone ID, and need to fetch the most up-to-date information about that device. This endpoint does not modify any data and is safe for frequent calls, but consider caching the results if you're making multiple requests for the same deskphone in a short period." }, { "slug": "DIALPAD_GET_USER_E911_DETAILS", "name": "Get user e911 details", "description": "Retrieves the Enhanced 911 (E911) information for a specific user in the Dialpad system. This endpoint provides critical location data associated with the user's account, which is essential for emergency services to accurately locate the caller during an emergency. It should be used when setting up or verifying a user's emergency contact information, ensuring compliance with E911 regulations for VoIP services. The tool returns the current E911 configuration for the specified user, including registered address and any additional location details. It's important to note that this endpoint only retrieves information and does not modify any E911 settings." }, { "slug": "DIALPAD_GET_WEBHOOKS_INFORMATION", "name": "Get webhooks information", "description": "Retrieves a list of all webhooks configured for the authenticated user's Dialpad account. This endpoint allows developers to view and manage their existing webhook subscriptions for various communication events such as calls, SMS, contacts, and agent status changes. It should be used when you need to audit your current webhook configurations, verify the status of your integrations, or gather information before modifying existing webhooks. The endpoint provides an overview of active webhooks but does not include detailed event data or allow for webhook creation or modification." }, { "slug": "DIALPAD_HANGUP_CALL_VIA_ID", "name": "Hangup call via id", "description": "Terminates an active call in the Dialpad system. This endpoint should be used when you need to programmatically end a specific ongoing call. It's particularly useful for automated call management, such as in customer service systems or when integrating Dialpad's functionality into other applications. The endpoint has a rate limit of 1200 requests per minute, allowing for high-volume usage in busy call centers or large-scale communication systems. Note that this action is irreversible; once a call is hung up, it cannot be reinstated, and a new call would need to be initiated if further communication is required." }, { "slug": "DIALPAD_INITIATE_IVR_CALL_API_ENDPOINT", "name": "Initiate ivr call api endpoint", "description": "Initiates an outbound IVR (Interactive Voice Response) call using the Dialpad API. This endpoint allows you to programmatically start a call to a specified phone number from a designated group within your Dialpad organization, such as a call center, department, or office. It's particularly useful for automating outbound calls, implementing scheduled call campaigns, or integrating Dialpad's calling capabilities into your own applications. The endpoint provides options for customizing the call with additional data and managing the displayed caller ID, enhancing flexibility in various use cases like customer service, sales outreach, or automated notifications." }, { "slug": "DIALPAD_INITIATE_OUTBOUND_CALL_VIA_API", "name": "Initiate outbound call via api", "description": "The InitiateOutboundCall endpoint allows you to programmatically initiate an outbound call using the Dialpad API. This tool is used to place calls on behalf of a Dialpad user to a specified phone number. It supports various customization options, including setting custom caller ID, associating the call with a group, and enabling consult mode for handling multiple calls. Use this endpoint when you need to automate outbound calling in your application, such as for customer outreach, automated notifications, or integrating calling capabilities into your workflow. The endpoint is particularly useful for scenarios requiring programmatic call initiation, but it does not handle the actual call audio or provide real-time call control. Be aware that the call's success depends on the user's Dialpad account status and permissions." }, { "slug": "DIALPAD_INITIATE_USER_CALL_WITH_GROUP_OPTIONS", "name": "Initiate user call with group options", "description": "Initiates an outbound call for a specified Dialpad user. This endpoint allows you to programmatically start a phone call to a given number, with options to customize the call's properties such as the caller ID and associated group. It's particularly useful for automating outbound calling processes or integrating Dialpad's calling capabilities into other applications. The endpoint supports additional features like custom data association for call tracking and the ability to initiate calls through specific organizational groups. Note that while the endpoint doesn't explicitly mark any parameters as required, a valid destination phone number is necessary to initiate a call." }, { "slug": "DIALPAD_LIST_CHANNELS_API", "name": "List channels api", "description": "Retrieves a list of all available communication channels in the Dialpad platform. This endpoint provides an overview of the various channels that can be used for voice, SMS, and other digital engagement methods within Dialpad. It should be used when you need to obtain information about the communication options available to your account or organization. The endpoint returns details about each channel, which may include channel IDs, types (e.g., voice, SMS), and their current status. This tool is particularly useful for applications that need to dynamically adjust their communication strategies based on available channels or for monitoring the health and availability of different communication methods in Dialpad. Note that this endpoint likely returns only basic channel information and may not include detailed usage statistics or real-time activity data." }, { "slug": "DIALPAD_LIST_CONFERENCE_ROOMS", "name": "List conference rooms", "description": "Retrieves a list of conference rooms available in the Dialpad system. This endpoint allows users to fetch information about both virtual and physical conference rooms set up within their Dialpad account. It can be used to gather details such as room names, capacities, and configurations for scheduling or managing meetings. The endpoint is particularly useful for applications that need to display available conference rooms or integrate Dialpad's room information into third-party scheduling systems. Note that this endpoint does not provide real-time availability of rooms or allow for booking; it's primarily for listing and describing the configured rooms." }, { "slug": "DIALPAD_LIST_OFFICES_ENDPOINT", "name": "List offices endpoint", "description": "Retrieves a list of offices within the Dialpad platform. This endpoint provides access to office information, which is crucial for managing multiple offices in an organization using Dialpad. It should be used when you need to obtain an overview of all offices or gather specific details about offices registered in the Dialpad system. The endpoint likely returns essential information such as office names, locations, administrators, and possibly user counts or other relevant metadata. It's important to note that this endpoint does not modify any office data and is intended for read-only operations. Keep in mind that the returned data may be subject to the user's permissions within the Dialpad system." }, { "slug": "DIALPAD_LIST_USERS", "name": "List users", "description": "Retrieves a list of users from the Dialpad system. This endpoint allows you to fetch user account information, which is essential for user management and provisioning tasks. It can be used to sync user data with external systems, perform audits, or gather information for reporting purposes. The endpoint likely supports pagination and filtering options to manage large sets of user data efficiently. However, it does not provide real-time updates or webhook functionality for user changes - separate endpoints or features would be needed for those use cases." }, { "slug": "DIALPAD_MODIFY_CONTACT_DETAILS_USING_ID", "name": "Modify contact details using id", "description": "Updates an existing contact's information in the Dialpad system. This endpoint allows for partial updates of contact details, including personal information, communication details, and associated URLs. It's used when you need to modify or add information to an existing contact record. The endpoint supports updating multiple fields simultaneously, making it efficient for bulk changes or comprehensive contact updates. Note that all fields are optional, allowing for targeted updates without affecting other contact information. When updating list-based fields like emails or phones, the provided lists will replace the existing data entirely." }, { "slug": "DIALPAD_MODIFY_CUSTOM_IVR_SETTINGS", "name": "Modify custom ivr settings", "description": "Updates a custom Interactive Voice Response (IVR) configuration for a specific target within the Dialpad system. This endpoint allows you to assign an existing IVR workflow to a particular target (such as a call center or department) and specify its application for inbound, outbound, or both types of calls. It's particularly useful for customizing call routing and auto-recording settings in call centers. The endpoint requires specifying the target type, target ID, and IVR type in the URL path, along with the IVR ID in the request body. Use this when you need to modify IVR settings for specific departments or call centers in your Dialpad organization." }, { "slug": "DIALPAD_MODIFY_OPERATOR_SKILL_LEVEL", "name": "Modify operator skill level", "description": "Updates the skill level of a specific operator in a designated call center. This endpoint allows administrators to adjust an operator's proficiency rating, which can be used for call routing, performance tracking, and workforce management. The skill level is represented as an integer from 0 to 100, with higher values indicating greater expertise. Use this endpoint when you need to modify an operator's skill level based on performance reviews, training completion, or changes in responsibilities. It's particularly useful for maintaining an up-to-date and accurate representation of your call center team's capabilities." }, { "slug": "DIALPAD_MODIFY_WEBHOOK_CONFIGURATION", "name": "Modify webhook configuration", "description": "Updates an existing webhook configuration in the Dialpad API. This endpoint allows you to modify the destination URL and/or the secret used for request validation of a specific webhook. Use this when you need to change where webhook events are sent or update the security settings of an existing webhook. The endpoint is particularly useful for maintaining webhook configurations as your integration evolves or when you need to rotate security credentials. Note that updating these settings will affect all future events for this webhook, so ensure your receiving endpoint is prepared for the changes before updating." }, { "slug": "DIALPAD_MOVE_USER_TO_SPECIFIED_OFFICE", "name": "Move user to specified office", "description": "Updates a user's office assignment within the Dialpad system. This endpoint allows administrators to move a user from their current office to a different office. It should be used when there's a need to change a user's organizational association, such as during departmental transfers or office relocations. The operation is performed by specifying the user's ID in the URL path and optionally providing the new office ID in the request body. If no office ID is provided, the user's current office assignment remains unchanged. This endpoint is particularly useful for managing organizational structure and ensuring users are correctly associated with their respective offices in Dialpad." }, { "slug": "DIALPAD_OAUTH2_AUTHORIZE_ENDPOINT", "name": "Oauth2 authorize endpoint", "description": "Initiates the OAuth 2.0 authorization process for the Dialpad API. This endpoint is the entry point for obtaining user consent and generating an authorization code, which can later be exchanged for an access token. It should be used when an application needs to request permission to access a user's Dialpad resources. The endpoint will redirect the user to Dialpad's login and consent page. After the user grants permission, they will be redirected back to the specified redirect_uri with an authorization code. This endpoint is crucial for implementing secure, user-authorized access to Dialpad's API features." }, { "slug": "DIALPAD_PATCH_ACCESS_CONTROL_POLICY_BY_ID", "name": "Patch access control policy by id", "description": "This endpoint allows you to update an existing access control policy in the Dialpad system. It provides the ability to modify various attributes of a policy, including its name, description, associated permissions, and state. This endpoint is particularly useful for adjusting policy settings as organizational needs change or for reactivating deleted policies. It's important to note that only company administrators can perform this operation, and care should be taken when modifying permissions to ensure appropriate access levels are maintained. The endpoint doesn't return the updated policy details, so a separate GET request may be necessary to confirm changes." }, { "slug": "DIALPAD_PATCH_AGENT_STATUS_EVENT_SUBSCRIPTION", "name": "Patch agent status event subscription", "description": "Updates an existing agent status subscription in the Dialpad system. This endpoint allows you to modify the configuration of a subscription that tracks changes in agent statuses within a contact center environment. Use this to adjust the subscription's enabled state, change the associated logging endpoint, or update the agent type. It's particularly useful for maintaining up-to-date event tracking setups as your contact center needs evolve. Note that all fields are optional, allowing for partial updates to the subscription. Be cautious when changing the endpoint_id, as this will affect where status change events are sent." }, { "slug": "DIALPAD_PATCH_CALL_ROUTER_BY_ID", "name": "Patch call router by id", "description": "Updates an existing call router in the Dialpad system. This endpoint allows you to modify various settings of a call router, including its default target, enabled state, name, office association, error handling, routing URL, and authentication secret. Use this when you need to change the behavior or configuration of an existing call router. The endpoint is particularly useful for adjusting routing logic, updating fallback options, or managing error states. Note that while all parameters are optional, providing at least one is necessary to make meaningful changes. Be cautious when updating critical parameters like the routing URL or secret, as incorrect values could disrupt call routing." }, { "slug": "DIALPAD_PATCH_DEPARTMENT_DETAILS_BY_ID", "name": "Patch department details by id", "description": "Updates the settings and configuration of a specific department in the Dialpad system. This endpoint allows for comprehensive modification of department properties, including operating hours, call routing strategies, hold queue settings, and voice intelligence features. It's particularly useful for adjusting department behavior to match changing business needs or to optimize call handling efficiency. The endpoint supports partial updates, allowing you to modify only the specific fields you need to change without affecting other settings." }, { "slug": "DIALPAD_PATCH_SUBSCRIPTION_CHANGELOG_ENDPOINT", "name": "Patch subscription changelog endpoint", "description": "Updates an existing change log event subscription in the Dialpad system. This endpoint allows you to modify the status of a subscription and associate it with a specific logging endpoint. Use this when you need to enable or disable notifications for system changes or when you want to change the destination for these notifications. The endpoint is particularly useful for managing event-driven integrations and maintaining up-to-date information flows between Dialpad and external systems. Note that updating a subscription does not create new events; it only affects future notifications for the specified change log." }, { "slug": "DIALPAD_PATCH_USER_ACTIVE_CALL_RECORDING", "name": "Patch user active call recording", "description": "Updates the call recording settings for an active call of a specific Dialpad user. This endpoint allows real-time management of call recording features during an ongoing call, including enabling or disabling recording, controlling the playback of recording indication messages, and specifying the scope of recording for group calls. It should be used when there's a need to dynamically change recording settings mid-call, such as for compliance purposes or user preferences. This endpoint is only effective for active calls and will not affect future calls or general user settings. Note that all parameters are optional, allowing for granular control over specific aspects of call recording without affecting others." }, { "slug": "DIALPAD_PATCH_USER_STATUS", "name": "Patch user status", "description": "Updates the status of a specific user in the Dialpad system. This endpoint allows you to set or modify a user's status message and optionally specify an expiration time for that status. It's particularly useful for indicating a user's availability, current activity, or temporary absence. The endpoint should be used when you need to programmatically update a user's status, such as integrating with calendar systems, automatic out-of-office settings, or custom workflow automations. It's important to note that this endpoint updates the status for a single user identified by their ID in the URL path. The status update is immediate, and if an expiration is set, the status will automatically clear at the specified time. This tool does not retrieve the current status; it only updates it. If you need to fetch the current status before updating, you would need to use a separate GET endpoint (not provided in this schema)." }, { "slug": "DIALPAD_PATCH_WEBSOCKET_SIGNATURE_SECRET", "name": "Patch websocket signature secret", "description": "Updates the signature secret for a specific websocket connection in the Dialpad platform. This endpoint allows you to modify the authentication mechanism used to validate incoming requests to the websocket. Use this when you need to rotate the secret for security reasons or when setting up a new authentication scheme for an existing websocket. The update affects future validations and may require updating the secret on the client-side as well. Be cautious when using this endpoint, as it can potentially disrupt active connections if not managed properly. Note that setting the secret to null effectively removes any signature validation for the websocket, which should only be done if alternative security measures are in place." }, { "slug": "DIALPAD_POST_CALL_EVENT_SUBSCRIPTION", "name": "Post call event subscription", "description": "Creates a new call event subscription in the Dialpad system, allowing real-time notifications for various call states and actions. This endpoint enables developers to set up targeted event streams for specific call centers, users, or other entities within Dialpad. Use this when you need to monitor call activities, automate workflows based on call states, or integrate Dialpad's call data with external systems. The subscription can be fine-tuned to listen for specific call states and target types, making it versatile for various use cases such as call monitoring, analytics, or custom integrations. Note that while the subscription can be created with this endpoint, you'll need to have a properly configured webhook or websocket to receive the events." }, { "slug": "DIALPAD_POST_RECORDING_SHARE_LINK", "name": "Post recording share link", "description": "Creates a shareable link for a specific recording in Dialpad, such as a call recording or voicemail. This endpoint allows users to generate a link that can be used to share recordings with others, with customizable privacy settings. It should be used when you need to create a URL for sharing a recording outside of the Dialpad interface. The endpoint requires specifying the recording ID and type, and optionally allows setting the privacy level of the share link. Note that this endpoint only creates the share link; it does not modify the recording itself or its storage location." }, { "slug": "DIALPAD_POST_SUBSCRIPTION_CHANGE_LOG_EVENT", "name": "Post subscription change log event", "description": "Creates or updates a subscription for changelog events in the Dialpad system. This endpoint allows developers to set up real-time notifications for changes and updates within Dialpad, such as API modifications, feature releases, or system updates. By configuring this subscription, you can ensure your application stays informed about important changes that may affect its integration with Dialpad. The subscription can be enabled or disabled as needed, and notifications are sent to a pre-configured webhook or websocket endpoint. Use this when you need to monitor Dialpad's evolving features and API changes to maintain compatibility and leverage new functionalities promptly." }, { "slug": "DIALPAD_POST_USERS_SCREENPOP_URI", "name": "Post users screenpop uri", "description": "Triggers a screen pop for a specific Dialpad user, displaying relevant information during a call or communication event. This endpoint should be used when you need to automatically present contextual data to a user's screen, such as customer information from a CRM system. It's particularly useful in contact center scenarios where agents need quick access to caller details. The screen pop URL can be a web page or a custom URI to launch a native application. Note that this endpoint does not retrieve or send any customer data directly; it only initiates the display of the specified URL on the user's device." }, { "slug": "DIALPAD_POST_WEBSOCKET_CONNECTION_SECRET", "name": "Post websocket connection secret", "description": "Creates a websocket connection for real-time communication with the Dialpad platform. This endpoint enables applications to establish a persistent, full-duplex connection for receiving live updates and event notifications from Dialpad. Use this when you need to implement features that require instant updates, such as live call status changes, message delivery notifications, or agent availability updates. The websocket connection allows for efficient, low-latency communication, reducing the need for frequent polling of other API endpoints. Note that while this endpoint creates the connection, you'll need to implement appropriate event listeners and handlers in your application to process the incoming data streams effectively." }, { "slug": "DIALPAD_REASSIGN_PHONE_NUMBER_TO_TARGET", "name": "Reassign phone number to target", "description": "Assigns or reassigns a phone number to a specific target within the Dialpad system. This endpoint allows you to associate a phone number with various entities such as users, departments, call centers, or other supported target types. Use this when you need to allocate or reallocate phone numbers across your Dialpad organization. The endpoint is particularly useful for managing phone number assignments during user onboarding, department restructuring, or call center setup. Note that this operation may affect existing call routing and should be used cautiously in production environments." }, { "slug": "DIALPAD_REDEEM_ACCESS_OR_REFRESH_TOKEN", "name": "Redeem access or refresh token", "description": "The OAuth 2.0 token endpoint for Dialpad's API is used to obtain access tokens for authenticating API requests. It supports two grant types: Authorization Code and Refresh Token. For the Authorization Code flow, it exchanges an authorization code for an access token, enabling secure user authentication without exposing credentials. The Refresh Token flow allows obtaining a new access token when the current one expires, maintaining long-term access without user intervention. This endpoint is crucial for implementing OAuth 2.0 authentication in applications integrating with Dialpad's API, ensuring secure and authorized access to user data and Dialpad services." }, { "slug": "DIALPAD_REMOVE_BLOCKED_NUMBERS", "name": "Remove blocked numbers", "description": "Removes specified phone numbers from the blocked list in the Dialpad system. This endpoint allows you to unblock multiple phone numbers in a single API call, streamlining the process of managing blocked numbers. Use this when you need to restore communication capabilities with previously blocked numbers, such as when a number is no longer considered spam or when a block was applied in error. The endpoint accepts a list of E164 formatted numbers, ensuring standardized input across different countries and number formats. Note that this operation is irreversible; once numbers are removed from the blocked list, they will be able to communicate with your Dialpad account unless blocked again." }, { "slug": "DIALPAD_RETRIEVE_ACCESS_CONTROL_POLICY_ASSIGNMENTS", "name": "Retrieve access control policy assignments", "description": "Retrieves the assignments of a specific access control policy in Dialpad. This endpoint allows company administrators to view which users, roles, or groups have been assigned to a particular access control policy. It's useful for auditing and managing permissions within the Dialpad platform. The endpoint returns a list of assignments, which may include user IDs, role names, or group identifiers associated with the specified policy. Use this when you need to review or verify the current assignments of an access control policy, such as during security audits or when updating user permissions. Note that this endpoint only provides assignment information and does not allow for modifying the assignments." }, { "slug": "DIALPAD_RETRIEVE_ACCESS_CONTROL_POLICY_BY_ID", "name": "Retrieve access control policy by id", "description": "Retrieves detailed information about a specific access control policy in the Dialpad system. This endpoint allows administrators to fetch the configuration and settings of a particular policy, which defines custom permissions and access levels for users within the Dialpad platform. Use this endpoint when you need to review or audit the settings of an existing access control policy. It's particularly useful for verifying policy details before making modifications or when troubleshooting access-related issues. The endpoint returns comprehensive information about the policy but does not allow for modifications; separate endpoints would be used for updating policies." }, { "slug": "DIALPAD_RETRIEVE_AGENT_STATUS_BY_ID", "name": "Retrieve agent status by id", "description": "Retrieves detailed information about a specific agent status subscription using its unique identifier. This endpoint is used to fetch the current configuration and settings of an agent status subscription, which may include details such as the associated agent, status types being tracked, and any custom off-duty statuses. It's particularly useful for administrators or supervisors who need to review or troubleshoot individual agent status subscriptions. The endpoint does not modify any data and is safe for frequent calls to keep the client application updated with the latest subscription information. Note that this endpoint only provides details for a single subscription and cannot be used to list multiple subscriptions or modify existing ones." }, { "slug": "DIALPAD_RETRIEVE_AGENT_STATUS_SUBSCRIPTION", "name": "Retrieve agent status subscription", "description": "Retrieves a list of agent status subscriptions from the Dialpad system. This endpoint allows you to fetch real-time information about the current subscriptions to agent status events. It is useful for monitoring which agents or systems are subscribed to receive updates about changes in agent statuses, such as availability or activity. This tool should be used when you need to audit or manage the subscriptions related to agent status events in your Dialpad integration. Note that this endpoint does not provide the actual agent statuses, but rather information about the subscriptions to these status updates." }, { "slug": "DIALPAD_RETRIEVE_APP_SETTINGS", "name": "Retrieve app settings", "description": "Retrieves the current application settings for the authenticated Dialpad account. This endpoint provides access to various configuration options and preferences set for the Dialpad application. It should be used when you need to review or audit the current app settings, such as user interface preferences, notification settings, or integration configurations. The endpoint returns a comprehensive list of all available settings, which can be useful for troubleshooting, customization, or ensuring consistency across different instances of the application. Note that this endpoint is read-only and does not allow for modifying settings; separate endpoints would be required for updating individual settings." }, { "slug": "DIALPAD_RETRIEVE_BLOCKED_NUMBER_DETAILS", "name": "Retrieve blocked number details", "description": "Retrieves information about a specific blocked number in the Dialpad system. This endpoint allows users or administrators to check if a particular phone number is currently blocked. It's useful for verifying the status of a number before attempting communication or when reviewing security settings. The endpoint returns details about the blocked number, which may include when it was blocked and any associated metadata. It should be used when there's a need to confirm the blocked status of a specific number, but it won't provide a list of all blocked numbers or modify any existing blocks." }, { "slug": "DIALPAD_RETRIEVE_BLOCKED_PHONE_NUMBERS", "name": "Retrieve blocked phone numbers", "description": "Retrieves a comprehensive list of all phone numbers that have been blocked through the Dialpad API. This endpoint is useful for managing call blocking settings and reviewing the current state of blocked numbers associated with your Dialpad account. It provides a straightforward way to fetch all blocked numbers without the need for additional parameters. Use this endpoint when you need to audit your blocked number list, verify if a specific number is blocked, or prepare for bulk operations on blocked numbers. Keep in mind that this endpoint only returns numbers blocked via the API and may not include numbers blocked through other methods in the Dialpad interface." }, { "slug": "DIALPAD_RETRIEVE_CALL_CENTER_BY_ID", "name": "Retrieve call center by id", "description": "Retrieves detailed information about a specific call center in the Dialpad system. This endpoint allows you to fetch comprehensive data about a call center, including its configuration, associated agents, and operational metrics. Use this when you need to access or review the current state and settings of a particular call center. The endpoint is particularly useful for administrators managing multiple call centers or for integrations that need up-to-date call center information. Note that this endpoint only provides read access and cannot be used to modify call center details." }, { "slug": "DIALPAD_RETRIEVE_CALLCENTER_OPERATORS_BY_ID", "name": "Retrieve callcenter operators by id", "description": "Retrieves a list of operators associated with a specific call center in Dialpad. This endpoint allows you to fetch detailed information about the operators working in a particular call center, which is essential for managing call center operations, monitoring staff, and optimizing workload distribution. Use this endpoint when you need to view the current roster of operators, check staffing levels, or gather operator details for reporting purposes. The endpoint returns operator information but does not provide real-time status updates or allow modifications to operator data. It's particularly useful for integrations that require synchronization of call center staff information with external systems or for building custom dashboards to monitor call center composition." }, { "slug": "DIALPAD_RETRIEVE_CALL_CENTERS_INFORMATION", "name": "Retrieve call centers information", "description": "Retrieves a list of call centers and their associated information from the Dialpad platform. This endpoint allows developers to fetch details about all call centers configured in the Dialpad account, including their settings, agent statuses, and operational metrics. It's particularly useful for applications that need to monitor or manage multiple call centers, analyze call center performance, or integrate call center data with other systems. The endpoint returns comprehensive data about each call center, which can be used for reporting, dashboard creation, or automating call center management tasks. Note that this endpoint provides a high-level overview of call centers and may not include granular details about individual calls or agents." }, { "slug": "DIALPAD_RETRIEVE_CALL_INFORMATION", "name": "Retrieve call information", "description": "Retrieves call information from the Dialpad system. This endpoint allows you to fetch details about one or more calls, which may include call duration, participants, timestamps, and other relevant metadata. It can be used to gather historical call data for analysis, reporting, or integration with other systems. The endpoint does not provide real-time call control or the ability to initiate new calls. Note that the specific details returned may vary based on user permissions and the scope of the API token used." }, { "slug": "DIALPAD_RETRIEVE_CALL_ROUTER_BY_ID", "name": "Retrieve callrouter by id", "description": "Retrieves detailed information about a specific call router in the Dialpad system. This endpoint allows developers to fetch the configuration and status of a call router by providing its unique identifier. Use this when you need to check the current settings, routing rules, or other properties of a particular call router. It's particularly useful for auditing your call routing setup or before making changes to an existing router. The endpoint returns read-only data and does not modify any settings." }, { "slug": "DIALPAD_RETRIEVE_CALL_ROUTERS_V2_API", "name": "Retrieve call routers v2 api", "description": "Retrieves a list of call routers configured in the Dialpad system. This endpoint allows you to fetch information about the call routing setup in your Dialpad account, including details such as router identifiers, associated dedicated DIDs, and routing rules. It's particularly useful for auditing your current call routing configuration or gathering data for reporting purposes. The endpoint provides read-only access to call router information and does not allow modifications to the routing setup. Use this when you need to review your call routing structure or integrate call routing information into your applications for advanced call management or analytics." }, { "slug": "DIALPAD_RETRIEVE_CALL_SUBSCRIPTION_BY_ID", "name": "Retrieve call subscription by id", "description": "Retrieves detailed information about a specific call subscription in the Dialpad system. This endpoint allows developers to access the current state and configuration of a call subscription, which is used for tracking and receiving notifications about call-related events. It's particularly useful for monitoring the status of automated workflows or integrations that depend on call data. The endpoint should be used when you need to check the details of a single, known call subscription, such as its activation status, associated phone numbers, or event types it's configured to track. It will not modify the subscription or return data about multiple subscriptions." }, { "slug": "DIALPAD_RETRIEVE_CHANNEL_BY_ID", "name": "Retrieve channel by id", "description": "Retrieves detailed information about a specific communication channel in the Dialpad platform using its unique identifier. This endpoint allows developers to fetch comprehensive data about a particular channel, which can include its type (e.g., voice, video, or messaging), current status, associated users or groups, and other relevant metadata. It is particularly useful when you need to access or verify the properties of a specific channel within your application. The endpoint should be used when detailed information about a known channel is required, such as during channel management tasks, reporting, or when integrating channel-specific features into your application. Note that this endpoint only provides information for a single channel at a time and does not support batch retrieval or listing of multiple channels." }, { "slug": "DIALPAD_RETRIEVE_COACHING_STATS_V2", "name": "Retrieve coaching stats v2", "description": "The GetStatistics endpoint retrieves comprehensive statistics for various aspects of Dialpad usage, including calls, customer satisfaction (CSAT), dispositions, on-duty status, recordings, screen shares, texts, and voicemails. It offers flexible options for targeting specific users, groups, or offices, and allows for customized date ranges and aggregation methods. This endpoint is particularly useful for analyzing performance metrics, tracking customer satisfaction, and gaining insights into communication patterns within an organization. It supports both aggregated statistics and individual record retrieval, making it versatile for different analytical needs. However, users should note that certain stat types (like CSAT and dispositions) require specific targeting parameters and only support individual record retrieval." }, { "slug": "DIALPAD_RETRIEVE_COACHING_TEAM_BY_ID", "name": "Retrieve coaching team by id", "description": "Retrieves detailed information about a specific coaching team in Dialpad. This endpoint allows users to fetch comprehensive data about a coaching team, including its configuration, members (coaches and trainees), settings, and potentially performance metrics. It should be used when detailed information about a particular coaching team is needed, such as for displaying team details, verifying settings, or analyzing team performance. The endpoint provides a snapshot of the coaching team's current state and does not modify any data. It's particularly useful for managers or administrators who need to review or audit coaching team setups." }, { "slug": "DIALPAD_RETRIEVE_COACHING_TEAMS_INFORMATION", "name": "Retrieve coaching teams information", "description": "Retrieves information about coaching teams in the Dialpad platform. This endpoint allows users to fetch details about existing coaching teams, which are essential for managing call monitoring, feedback, and agent performance improvement. It provides an overview of team structures, including coaches, trainees, and associated settings. The endpoint is useful for administrators and managers who need to review or manage coaching team configurations across the organization. Note that while this endpoint retrieves team information, it does not modify any team settings or structures." }, { "slug": "DIALPAD_RETRIEVE_COMPANY_DATA", "name": "Retrieve company data", "description": "Retrieves detailed information about a specific company within the Dialpad platform. This endpoint allows developers to access various company-level data, such as company name, settings, and other relevant details. It should be used when an application needs to fetch or display company information, update local records, or verify company-specific configurations. The endpoint provides a comprehensive view of a company's profile in Dialpad but does not modify any data. Note that the specific fields returned may depend on the user's permissions and the company's privacy settings." }, { "slug": "DIALPAD_RETRIEVE_CONFERENCE_MEETINGS", "name": "Retrieve conference meetings", "description": "Retrieves information about conference meetings in the Dialpad platform. This endpoint allows users to fetch details about scheduled, ongoing, or past conference meetings, providing valuable data for managing and analyzing virtual collaboration sessions. It can be used to obtain an overview of meeting activities, track usage patterns, or gather information for reporting purposes. The endpoint is particularly useful for administrators or team leaders who need to monitor conference usage across their organization. Note that while this endpoint retrieves meeting data, it does not provide real-time control over active meetings or allow for meeting creation or modification." }, { "slug": "DIALPAD_RETRIEVE_CONTACT_BY_ID", "name": "Retrieve contact by id", "description": "Retrieves detailed information for a specific contact in your Dialpad account using the contact's unique identifier. This endpoint allows you to fetch comprehensive data about a single contact, including their name, phone numbers, email addresses, and any custom fields associated with the contact. Use this when you need to access or display detailed information about a particular contact in your application. The endpoint is useful for scenarios such as populating contact details in a CRM integration or displaying contact information during an active call. Note that this endpoint only retrieves information for one contact at a time and does not support batch retrieval or searching across multiple contacts." }, { "slug": "DIALPAD_RETRIEVE_CONTACT_LIST", "name": "Retrieve contact list", "description": "Retrieves a list of contacts from the Dialpad platform. This endpoint allows you to fetch contact information, which is crucial for managing user data and communication records within your Dialpad-integrated application. It supports pagination, searching, and sorting to efficiently handle large contact lists. Use this endpoint when you need to access or display contact information, sync contacts with other systems, or perform contact-related operations in your application. The endpoint returns basic contact details, but may not include sensitive information or full communication history." }, { "slug": "DIALPAD_RETRIEVE_DEPARTMENT_BY_ID", "name": "Retrieve department by id", "description": "Retrieves detailed information about a specific department within the Dialpad organization. This endpoint allows you to fetch comprehensive data about a department, including its name, description, member count, and other relevant attributes. Use this endpoint when you need to access or display information about a particular department, such as for department management interfaces or generating reports. The endpoint returns the most up-to-date information available for the specified department. Note that this endpoint only provides read access to department data and cannot be used to modify department information." }, { "slug": "DIALPAD_RETRIEVE_DEPARTMENT_OPERATORS_BY_ID", "name": "Retrieve department operators by id", "description": "Retrieves a list of operators associated with a specific department in Dialpad. This endpoint allows you to fetch detailed information about the operators assigned to a particular department, enabling efficient management of department resources and personnel. Use this endpoint when you need to review, audit, or manage the operators within a specific department. The response likely includes operator details such as names, contact information, and roles. Note that this endpoint does not modify any department or operator data; it is for retrieval purposes only. It's particularly useful for administrative tasks, reporting, and ensuring proper staffing across departments." }, { "slug": "DIALPAD_RETRIEVE_E911_OFFICE_DETAILS", "name": "Retrieve e911 office details", "description": "Retrieves the Enhanced 911 (E911) settings for a specific office within the Dialpad communication platform. This endpoint allows administrators to fetch crucial emergency service configuration details associated with a particular office location. It should be used when auditing or verifying E911 compliance, updating emergency response information, or integrating office-specific emergency settings into external systems. The endpoint provides read-only access to E911 data and does not allow modifications. It's important to note that this tool only retrieves settings for a single office at a time and does not provide aggregate data across multiple offices." }, { "slug": "DIALPAD_RETRIEVE_LIST_OF_DEPARTMENTS", "name": "Retrieve list of departments", "description": "Retrieves a list of departments for a specified office within the Dialpad organization. This endpoint is essential for obtaining the organizational structure and can be used to populate department selectors, generate reports, or manage team assignments. It returns basic information about each department, such as its name, ID, and possibly the number of members. The endpoint should be used when needing an up-to-date view of the departmental structure within an office. It does not provide detailed information about individual department members or historical data about department changes. Pagination parameters may be necessary for offices with a large number of departments to manage response sizes and API performance." }, { "slug": "DIALPAD_RETRIEVE_MEMBERS_OF_COACHING_TEAM_BY_ID", "name": "Retrieve members of coaching team by id", "description": "Retrieves a list of members belonging to a specific coaching team in Dialpad. This endpoint allows you to fetch all users assigned to a particular coaching team, including both coaches and trainees. It's useful for getting an overview of team composition, managing team members, or integrating team information into other systems. The endpoint returns member details, which may include user IDs, names, roles, and other relevant information. Use this when you need to review or analyze the current membership of a coaching team, or when syncing team data with external applications." }, { "slug": "DIALPAD_RETRIEVE_NUMBERS_VIA_API_V2", "name": "Retrieve numbers via api v2", "description": "Retrieves a list of phone numbers associated with the user's Dialpad account. This endpoint allows users to view all the phone numbers they have access to, which may include both assigned and unassigned numbers. It's useful for inventory management, number allocation, and auditing purposes. The endpoint returns basic information about each number, such as its value, status, and associated user or department. It does not modify any data and is safe for frequent polling. Note that the response may be paginated for large number inventories, and additional calls may be needed to retrieve the full list." }, { "slug": "DIALPAD_RETRIEVE_OFF_DUTY_STATUS_BY_OFFICE_ID", "name": "Retrieve off duty status by office id", "description": "Retrieves the list of custom off-duty statuses for a specific office within the Dialpad system. This endpoint is used to fetch and manage the availability statuses of agents assigned to a particular office. It provides administrators and supervisors with insights into why agents might be stepping away from their desks, helping to track and understand agent activity. The endpoint should be used when there's a need to review, update, or manage the off-duty status options for a given office. It's particularly useful for larger organizations with multiple offices that may have different sets of off-duty statuses. Note that this endpoint only retrieves the statuses and does not provide real-time information about which agents are currently using each status." }, { "slug": "DIALPAD_RETRIEVE_OFFICE_BY_ID", "name": "Retrieve office by id", "description": "Retrieves detailed information about a specific office within the Dialpad system. This endpoint should be used when you need to access comprehensive data about a particular office, such as its name, location, assigned users, or custom settings. It's particularly useful for administrative tasks, reporting, or displaying office information in integrated applications. The endpoint returns all available details for the specified office, making it efficient for obtaining a complete office profile in a single API call. However, it does not allow for modifying office information or retrieving data for multiple offices simultaneously." }, { "slug": "DIALPAD_RETRIEVE_OFFICE_PLAN_BY_ID", "name": "Retrieve office plan by id", "description": "Retrieves the current plan details for a specific office in your Dialpad organization. This endpoint allows you to fetch information about the subscribed features, limitations, and other plan-specific details for a given office. Use this endpoint when you need to review or verify the current plan status of an office, such as during account management or when considering plan upgrades. The response will likely include details such as the plan name, included features, user limits, and any custom configurations. Note that this endpoint only provides read-only access to plan information and cannot be used to modify or update the office plan." }, { "slug": "DIALPAD_RETRIEVE_OPERATOR_DUTY_STATUS", "name": "Retrieve operator duty status", "description": "Retrieves the current duty status of a specific call center operator in Dialpad. This endpoint allows you to check whether an operator is Active (available to receive inbound calls) or Off-Duty (not available for calls). Use this endpoint when you need to determine an operator's availability in real-time, such as for load balancing, scheduling, or monitoring operator activity. The endpoint provides a snapshot of the operator's current status and does not include historical data or future scheduled statuses. It's particularly useful for systems that need to make routing decisions based on operator availability or for creating dashboards that display team capacity." }, { "slug": "DIALPAD_RETRIEVE_ROOM_INFORMATION_BY_ID", "name": "Retrieve room information by id", "description": "Retrieves detailed information about a specific room in the Dialpad system. This endpoint allows you to fetch the current state, settings, and properties of a virtual collaboration space identified by its unique ID. Use this when you need to access up-to-date information about a particular room, such as its name, participants, or configuration. The endpoint is particularly useful for applications that need to display room details or make decisions based on a room's current status. Note that this endpoint only provides information and does not modify the room in any way." }, { "slug": "DIALPAD_RETRIEVE_SCHEDULE_REPORT_BY_ID", "name": "Retrieve schedule report by id", "description": "Retrieves detailed information about a specific scheduled report in the Dialpad system. This endpoint allows you to fetch the configuration and metadata of a pre-defined report, which may include communication metrics, analytics, or other relevant data aggregated from Dialpad's communication platform. Use this endpoint when you need to access or review the settings of a particular scheduled report, such as its frequency, included data points, or last run time. It's particularly useful for auditing report configurations or preparing to update existing reports. Note that this endpoint only retrieves the report configuration, not the actual report data itself. To get the latest generated report content, you may need to use a separate endpoint or check if this response includes a link to the most recent report output." }, { "slug": "DIALPAD_RETRIEVE_SMS_OPT_OUT_BY_COMPANY_ID", "name": "Retrieve sms opt out by company id", "description": "Retrieves the SMS opt-out list for a specific company within the Dialpad platform. This endpoint allows you to fetch all phone numbers that have opted out of receiving SMS messages from the specified company. Use this endpoint when you need to check which recipients have unsubscribed from SMS communications, ensuring compliance with messaging regulations and user preferences. The returned list can be used to update your contact database or messaging system to prevent sending unwanted messages. Note that this endpoint only provides the opt-out information and does not modify the opt-out status of any recipients." }, { "slug": "DIALPAD_RETRIEVE_SMS_SUBSCRIPTION_BY_ID", "name": "Retrieve sms subscription by id", "description": "Retrieves detailed information about a specific SMS subscription in Dialpad. This endpoint allows developers to fetch the current status, configuration, and other relevant details of an SMS subscription by providing its unique identifier. Use this endpoint when you need to check the properties of an existing SMS subscription, such as its active status, associated phone number, or any custom settings. It's particularly useful for managing and monitoring SMS capabilities within your Dialpad integration. Note that this endpoint only provides read access to subscription data and cannot be used to modify or create new subscriptions." }, { "slug": "DIALPAD_RETRIEVE_SMS_SUBSCRIPTIONS", "name": "Retrieve sms subscriptions", "description": "Retrieves a list of SMS subscriptions associated with the authenticated user's Dialpad account. This endpoint allows users to view and manage their current SMS subscription plans and settings. It should be used when you need to obtain information about active SMS subscriptions, such as subscription status, plan details, or associated phone numbers. The endpoint provides an overview of SMS-related services but does not allow for modification of subscriptions. Note that this endpoint may have pagination for large numbers of subscriptions, and additional calls might be necessary to retrieve the complete list." }, { "slug": "DIALPAD_RETRIEVE_SPECIFIC_WEBHOOK_BY_ID", "name": "Retrieve specific webhook by id", "description": "Retrieves detailed information about a specific webhook configuration in the Dialpad system. This endpoint allows developers to fetch the current status, settings, and event subscriptions for a particular webhook identified by its unique ID. Use this endpoint when you need to check the configuration of an existing webhook, verify its status, or retrieve its associated event types. It's particularly useful for troubleshooting webhook-related issues or auditing webhook configurations. The endpoint returns comprehensive data about the webhook, including its target URL, subscribed events, and any custom headers or authentication settings." }, { "slug": "DIALPAD_RETRIEVE_STAT_BY_ID", "name": "Retrieve stat by id", "description": "Retrieves detailed statistics and analytics data for a specific entity within the Dialpad platform. This endpoint allows you to access performance metrics, communication data, and other relevant statistics for a user, team, or call center identified by the provided ID. Use this endpoint when you need to analyze the performance or usage patterns of a particular entity within your Dialpad organization. The data returned may include call volumes, average call durations, customer satisfaction scores, and other communication metrics. Note that the specific metrics available may vary depending on the type of entity (user, team, or call center) and your organization's settings. This endpoint is particularly useful for generating reports, monitoring performance, and making data-driven decisions to improve communication efficiency and effectiveness." }, { "slug": "DIALPAD_RETRIEVE_SUBSCRIPTION_CHANGE_LOG", "name": "Retrieve subscription change log", "description": "Retrieves the changelog for Dialpad API subscriptions. This endpoint provides a historical record of changes and updates made to subscription events and notifications within the Dialpad system. It's useful for tracking modifications to webhooks, event subscriptions, and other notification-related configurations over time. The changelog can help developers understand when and how subscription settings have been altered, aiding in troubleshooting and maintaining up-to-date integrations. Note that while the endpoint doesn't appear to require specific parameters, it may support optional query parameters for filtering or pagination, which are not visible in the provided schema." }, { "slug": "DIALPAD_RETRIEVE_SUBSCRIPTION_CHANGE_LOG_BY_ID", "name": "Retrieve subscription change log by id", "description": "Retrieves the changelog for a specific subscription in the Dialpad system. This endpoint allows you to access a historical record of changes made to a particular subscription, including updates, modifications, or status changes. It is useful for auditing purposes, troubleshooting issues, or tracking the evolution of a subscription over time. The endpoint returns a chronological list of changes, likely including details such as the date of change, type of change, and any relevant metadata. Note that this endpoint only provides changelog information and does not allow for modifying the subscription itself." }, { "slug": "DIALPAD_RETRIEVE_SUBSCRIPTION_CONTACTS", "name": "Retrieve subscription contacts", "description": "Retrieves subscription information for contacts in the Dialpad system. This endpoint allows you to fetch details about contact event subscriptions, which are crucial for receiving real-time notifications about contact-related events such as updates, calls, or SMS activities. Use this endpoint when you need to monitor or manage the current contact subscriptions in your Dialpad integration. It provides a comprehensive view of all active contact subscriptions, enabling you to track which contact events you're currently listening to. Note that this endpoint likely returns all contact subscriptions associated with your account, and may not support filtering or pagination in the request." }, { "slug": "DIALPAD_RETRIEVE_TEAMS_FOR_OFFICE_ID", "name": "Retrieve teams for office id", "description": "Retrieves a list of teams associated with a specific office in the Dialpad organization. This endpoint is useful for getting an overview of the team structure within a particular office, which can be valuable for administrative tasks, reporting, or integrating Dialpad's organizational structure with other systems. It should be used when you need to obtain information about multiple teams within a single office context. The endpoint will not provide detailed information about individual team members or their communications; it focuses solely on team-level data within the specified office." }, { "slug": "DIALPAD_RETRIEVE_USER_DEVICE_BY_ID", "name": "Retrieve user device by id", "description": "Retrieves detailed information about a specific user device associated with a Dialpad account. This endpoint allows developers to fetch the current state and configuration of a particular device by providing its unique identifier. Use this when you need to access up-to-date information about a user's device, such as its type, status, or associated settings. The endpoint is particularly useful for device management, troubleshooting, or syncing device information across integrated systems. Note that this endpoint only provides read access to device data and cannot be used to modify device settings." }, { "slug": "DIALPAD_RETRIEVE_USER_DEVICES_LIST", "name": "Retrieve user devices list", "description": "Retrieves a list of devices associated with users in the Dialpad system. This endpoint allows you to fetch information about various communication devices used within your Dialpad organization, such as desk phones, softphones, or mobile devices. Use this endpoint when you need to inventory or manage the devices connected to user accounts, track device usage, or troubleshoot device-related issues. The response likely includes details such as device type, status, associated user, and device-specific information. This tool is particularly useful for administrators managing a large number of devices across their organization or for integrating device information into custom dashboards or management systems. Note that while the endpoint doesn't specify any parameters, it may support query parameters for filtering results, such as by user ID or device type. The exact structure of the response and any available filters would need to be confirmed in the full API documentation." }, { "slug": "DIALPAD_RETRIEVE_USER_PERSONAS_BY_ID", "name": "Retrieve user personas by id", "description": "Retrieves all personas associated with a specific user in the Dialpad system. This endpoint allows you to fetch the various identities or roles that a user can assume when making calls, providing detailed information about each persona. Use this endpoint when you need to display or manage the different caller identities available to a user. The response will include a list of persona objects, each containing information such as the persona name, phone number, and any associated metadata. This endpoint is particularly useful for applications that need to offer users a choice of outbound caller identities or for administrative purposes to review a user's available personas." }, { "slug": "DIALPAD_RETRIEVE_WEBSOCKET_BY_ID", "name": "Retrieve websocket by id", "description": "Retrieves detailed information about a specific WebSocket connection using its unique identifier. This endpoint allows developers to query the status, metadata, and other relevant details of an active or recent WebSocket connection in the Dialpad system. It's particularly useful for monitoring real-time event subscriptions, troubleshooting connection issues, or auditing WebSocket usage. The endpoint should be used when you need to inspect or verify the state of a particular WebSocket connection, such as checking if it's still active or retrieving its configuration. Note that this endpoint provides information about the connection itself and may not include the actual event data being transmitted through the WebSocket." }, { "slug": "DIALPAD_RETRIEVE_WEBSOCKET_CONNECTION", "name": "Retrieve websocket connection", "description": "Retrieves information about WebSocket connections or initiates a WebSocket connection for real-time event subscriptions with Dialpad. This endpoint is essential for applications that require live updates and real-time communication capabilities within the Dialpad platform. It enables developers to establish a persistent connection for receiving instant notifications about various events such as calls, SMS, contacts, agent status, and system changes. Use this endpoint when building applications that need to react immediately to Dialpad events or maintain a live data stream. Note that while this endpoint provides the WebSocket connection details, you may need to implement the WebSocket client separately to handle the actual connection and data exchange." }, { "slug": "DIALPAD_SEND_SMS_WITH_OPTIONAL_MEDIA_AND_GROUP_SENDER", "name": "Send sms with optional media and group sender", "description": "The SendSMS endpoint allows you to send SMS or MMS messages through the Dialpad platform to one or multiple recipients. This versatile tool supports various sender identification methods, group messaging, and media attachments. Use it to programmatically send text or multimedia messages, integrate with Dialpad channels, and leverage organizational structures for messaging. The endpoint is particularly useful for automating communication workflows, sending notifications, or implementing messaging features within applications integrated with Dialpad. Note that while the endpoint offers flexibility in number formatting and sender identification, proper authorization and adherence to messaging regulations are assumed to be handled separately." }, { "slug": "DIALPAD_SET_USER_CALLER_ID_BY_ID", "name": "Set user caller id by id", "description": "Sets or blocks the Caller ID for a specific Dialpad user. This endpoint allows you to define the phone number that will be displayed when the user makes outgoing calls, or to block the Caller ID entirely. Use this when you need to customize how a user's calls appear to recipients or to ensure privacy by blocking the Caller ID. The endpoint is particularly useful for managing professional appearances in business communications or for compliance with privacy regulations. Note that this setting affects all outgoing calls made by the user through the Dialpad platform." }, { "slug": "DIALPAD_SUBSCRIBE_CONTACT_EVENT", "name": "Subscribe contact event", "description": "Creates a new contact event subscription in the Dialpad platform, allowing you to receive real-time updates about changes to contacts. This endpoint enables you to subscribe to events for either local (personal) or shared (organization-wide) contacts. Use this when you need to integrate contact management functionalities or automate workflows based on contact updates in your Dialpad-connected application. The subscription can be linked to a specific logging endpoint (webhook or websocket) for event delivery and can be enabled or disabled upon creation. Note that you must have previously set up a logging endpoint to receive the events if you specify an endpoint_id." }, { "slug": "DIALPAD_TOGGLE_USER_DO_NOT_DISTURB_STATUS", "name": "Toggle user do not disturb status", "description": "The ToggleUserDoNotDisturb endpoint allows you to update the Do Not Disturb (DND) status for a specific user in the Dialpad system. This powerful feature enables programmatic control over a user's availability, helping to manage notifications and improve focus time. The endpoint can be used to enable or disable DND for an individual user, and optionally within the context of a specific group (such as a call center, department, or office). This granular control makes it ideal for implementing custom availability management solutions or integrating with external scheduling systems. Keep in mind that changing a user's DND status may affect their ability to receive incoming communications, so use this endpoint judiciously and in accordance with your organization's communication policies." }, { "slug": "DIALPAD_TOGGLE_VI_CALL_FOR_USER_BY_ID", "name": "Toggle vi call for user by id", "description": "Toggles the Voice Intelligence (VI) feature for a specific Dialpad user. This endpoint allows administrators to enable or disable VI capabilities for individual users, which includes features like real-time transcription, sentiment analysis, and smart notes during calls. Use this endpoint when you need to manage VI access on a per-user basis, such as when onboarding new team members or adjusting feature access based on user roles or requirements. The endpoint requires the user's ID in the URL path and accepts a boolean parameter to set the VI status. Note that this operation may affect billing or feature availability for the specified user, so it should be used judiciously and in accordance with your organization's policies." }, { "slug": "DIALPAD_TRANSFER_CALL_TO_DESTINATION", "name": "Transfer call to destination", "description": "Transfers an active call within the Dialpad system to a new destination. This endpoint allows for flexible call routing by enabling transfers to another ongoing call, a specific phone number, or a predefined target within the Dialpad ecosystem (such as a call center, department, office, or user). It provides options to specify the transfer state and attach custom data to the call. Use this endpoint when you need to programmatically redirect an ongoing call, implement call forwarding logic, or integrate Dialpad's call transfer functionality into your application's workflow. Note that the success of the transfer may depend on the availability and settings of the destination." }, { "slug": "DIALPAD_UNASSIGN_ACCESS_CONTROL_POLICY_FROM_USER", "name": "Unassign access control policy from user", "description": "This endpoint unassigns a user from a specific access control policy in Dialpad. It allows for granular control over policy assignments by supporting unassignment at different target levels (company, office, or call center). The endpoint can be used to remove a user's access to specific settings or features defined by the policy. It's particularly useful when modifying user permissions or during role changes within the organization. The endpoint provides flexibility in unassigning from a single target or all associated targets simultaneously." }, { "slug": "DIALPAD_UNASSIGN_OFFICE_NUMBER", "name": "Unassign office number", "description": "This endpoint unassigns a specific phone number from a Dialpad office. It is used to remove the association between a phone number and an office, which can be helpful for reorganizing phone number allocations or preparing a number for reassignment. The endpoint should be used when an administrator needs to free up a phone number from its current office assignment. It's important to note that this action only unassigns the number from the office and does not delete the number from the Dialpad account. After unassignment, the number becomes available for reassignment to other offices or users within the organization. Ensure that unassigning a number won't disrupt ongoing communications or routing rules associated with that number." }, { "slug": "DIALPAD_UNASSIGN_ROOM_PHONE_NUMBER", "name": "Unassign room phone number", "description": "This endpoint unassigns a phone number from a specific room in the Dialpad system. It allows you to remove a previously assigned phone number from a room, freeing it up for potential reassignment or to adjust room configurations. Use this when you need to change the phone number associated with a room or when decommissioning a room's phone capabilities. The operation is irreversible, so ensure you want to remove the number before making the API call. Note that this endpoint doesn't provide information about the success of the operation or the current state of the room after unassignment." }, { "slug": "DIALPAD_UNASSIGN_USER_PHONE_NUMBER", "name": "Unassign user phone number", "description": "Unassigns a specified phone number from a user's Dialpad account. This endpoint should be used when you need to remove a phone number association from a particular user, such as when an employee changes roles or leaves the organization. It allows for efficient management of phone number resources within your Dialpad system. The operation is irreversible, so ensure that you want to remove the number from the user before making the API call. Note that this endpoint only unassigns the number; it does not delete the number from your Dialpad account or make it available for immediate reassignment to another user." }, { "slug": "DIALPAD_UNPARK_CALL_BY_USER_ID", "name": "Unpark call by user id", "description": "Unparks a previously parked call in the Dialpad system. This endpoint allows you to retrieve a call that was temporarily placed on hold (parked) and assign it to a specific user for handling. It's particularly useful in call center or team environments where calls may need to be transferred or picked up by different team members. The endpoint should be used when a parked call needs to be reactivated and connected to a user. It's important to note that this action may affect call routing and should be used judiciously to ensure proper call flow management." }, { "slug": "DIALPAD_UPDATE_CALL_CENTER_SETTINGS_BY_ID", "name": "Update call center settings by id", "description": "Updates the configuration of an existing call center in the Dialpad platform. This endpoint allows for comprehensive modifications to call center settings, including operational hours, routing strategies, hold queue management, alerts, and advanced features like auto call recording and voice intelligence. It's particularly useful for adjusting call center operations to meet changing business needs or to optimize performance based on analytics. The endpoint provides granular control over various aspects of call center management, enabling customization of everything from service level alerts to DTMF menu options for both open and closed states. When using this endpoint, carefully consider the interdependencies between different settings to ensure a cohesive call center configuration." }, { "slug": "DIALPAD_UPDATE_CALL_REVIEW_SHARE_LINK_PRIVACY", "name": "Update call review share link privacy", "description": "Updates the privacy settings of an existing call review share link in Dialpad. This endpoint allows you to modify the accessibility of a shared call recording, controlling whether it can be viewed only by company members or by anyone with the link. Use this when you need to adjust the visibility of a previously shared call review, either to increase security by limiting access to the company or to allow broader access by making it public. It's particularly useful for managing sensitive information in call recordings or adapting to changing collaboration needs. Note that this endpoint only modifies the privacy settings and does not create new share links or alter the content of the call review itself." }, { "slug": "DIALPAD_UPDATE_CALL_SUBSCRIPTION_BY_ID", "name": "Update call subscription by id", "description": "Updates an existing call event subscription in the Dialpad system. This endpoint allows you to modify various aspects of a subscription, including the call states to monitor, the subscription's active status, associated logging endpoint, and event filtering criteria. Use this when you need to adjust the behavior of an existing subscription, such as changing which call events you receive notifications for or updating the target of the subscription. It's particularly useful for fine-tuning your application's integration with Dialpad's real-time call event system. Note that this endpoint updates only the specified fields; unspecified fields retain their current values." }, { "slug": "DIALPAD_UPDATE_CONTACT_INFORMATION", "name": "Update contact information", "description": "Updates an existing contact's information in the Dialpad system. This endpoint allows you to modify various details of a contact, including their name, company, contact information, and job details. It's particularly useful for keeping contact records up-to-date or correcting information. The endpoint requires at least the first name, last name, and a unique identifier (uid) to update a contact. Other fields such as email addresses, phone numbers, and URLs can be optionally updated. Note that this endpoint overwrites existing data, so include all current information along with any changes to avoid unintended data loss." }, { "slug": "DIALPAD_UPDATE_CONTACT_SUBSCRIPTION_BY_ID", "name": "Update contact subscription by id", "description": "Updates an existing contact event subscription in the Dialpad system. This endpoint allows you to modify the configuration of a subscription, including changing the contact type it listens for, enabling or disabling the subscription, and associating it with a different logging endpoint. Use this when you need to adjust the behavior of an existing contact event subscription, such as changing its scope from local to shared contacts or temporarily disabling event notifications. The subscription ID must be provided in the URL path. Note that this endpoint only updates the specified fields; any fields not included in the request will retain their current values." }, { "slug": "DIALPAD_UPDATE_E911_ADDRESS_FOR_OFFICE", "name": "Update e911 address for office", "description": "This endpoint updates the Enhanced 911 (E911) address for a specific office in Dialpad. It allows you to modify crucial location information used by emergency services to accurately locate the office in case of an emergency call. The endpoint can update the address for the office itself and optionally for all users associated with that office. It also provides an option to validate the address using Dialpad's service, ensuring the highest possible accuracy for emergency response. Use this endpoint when setting up a new office, relocating an existing office, or correcting address information. It's particularly important for maintaining compliance with E911 regulations and ensuring employee safety." }, { "slug": "DIALPAD_UPDATE_E911_ADDRESS_FOR_USER", "name": "Update e911 address for user", "description": "Updates the E911 address for a specified user in the Dialpad system. This endpoint allows you to modify the emergency location information associated with a user's account, ensuring accurate dispatch of emergency services if needed. The updated address will be used for E911 services, which provide precise location data to emergency responders. This tool should be used when a user's physical location changes or when correcting inaccurate E911 address information. It's crucial for maintaining compliance with E911 regulations and ensuring user safety. The endpoint requires detailed address information and offers an option for address validation to improve accuracy." }, { "slug": "DIALPAD_UPDATE_IVR_DETAILS_BY_ID", "name": "Update ivr details by id", "description": "Updates an existing custom Interactive Voice Response (IVR) workflow in the Dialpad system. This endpoint allows you to modify the name and description of a specific IVR identified by its unique ID. Use this when you need to rename an IVR or update its description to reflect changes in its purpose or functionality. The operation is partial, meaning you can update either the name, the description, or both without affecting other properties of the IVR. This endpoint is particularly useful for maintaining accurate and up-to-date documentation of your IVR systems, especially in large-scale deployments where clear labeling is crucial. Note that this operation only updates metadata and does not alter the actual call flow or logic of the IVR." }, { "slug": "DIALPAD_UPDATE_OPERATOR_DUTY_STATUS", "name": "Update operator duty status", "description": "Updates the duty status of a specific call center operator in Dialpad. This endpoint allows you to change an operator's availability and optionally provide a reason for their status. Use this when you need to manage operator schedules, indicate break times, or adjust availability in real-time. The endpoint is crucial for maintaining up-to-date operator statuses, which directly impact call routing and overall call center efficiency. Note that this operation only updates the duty status and reason; it does not modify any other operator information or settings." }, { "slug": "DIALPAD_UPDATE_RECORDING_SHARE_LINK_PRIVACY", "name": "Update recording share link privacy", "description": "Updates the privacy settings of a specific recording share link in Dialpad. This endpoint allows you to modify who can access a shared call recording by changing its privacy state. Use this when you need to adjust the visibility of a recording, such as making it public for external sharing or restricting it to company-only access. The endpoint requires the ID of the recording share link to be updated, which should be provided in the URL path. Note that this operation only changes the privacy settings and does not create or delete the share link itself." }, { "slug": "DIALPAD_UPDATE_ROOM_DETAILS", "name": "Update room details", "description": "Updates the configuration of a specific Dialpad room identified by its ID. This endpoint allows you to modify the room's name and manage its assigned phone numbers. Use this when you need to rename a room, update its phone number assignments, or reorder existing phone numbers. The endpoint is particularly useful for maintaining accurate room information and adjusting telephony settings as your organization's needs change. Note that this is a partial update operation, so only the fields you provide will be modified. Be cautious when updating phone numbers, as reordering or removing numbers from the list will affect their assignment to the room." }, { "slug": "DIALPAD_UPDATE_SCHEDULE_REPORT_SETTINGS", "name": "Update schedule report settings", "description": "The UpdateScheduledReport endpoint allows you to modify the settings of an existing scheduled report in Dialpad. This powerful tool enables fine-tuning of report generation parameters, including frequency, timing, type, and scope. Use this endpoint when you need to adjust report schedules, change report types, update target information, or modify other settings of a previously configured report. The endpoint is particularly useful for adapting reporting needs as your organization's requirements evolve. It provides flexibility in managing various aspects of scheduled reports, from basic timing adjustments to more complex changes in report focus and delivery. Keep in mind that this endpoint updates an existing report schedule; it does not create new schedules or generate reports on demand. Also, note that some parameters are interdependent (e.g., frequency, at, and on_day), so ensure their values are consistent when making updates." }, { "slug": "DIALPAD_UPDATE_SMS_SUBSCRIPTION_SETTINGS", "name": "Update sms subscription settings", "description": "Updates an existing SMS event subscription in the Dialpad API. This endpoint allows you to modify various aspects of an SMS subscription, such as its direction, enabled status, associated endpoint, and target settings. Use this when you need to change the configuration of an existing SMS event subscription to adjust its behavior or scope. The endpoint provides flexibility in updating multiple parameters simultaneously, allowing for fine-tuned control over SMS event notifications. Note that all parameters are optional, so you can update only the specific fields you want to change without affecting the others." }, { "slug": "DIALPAD_UPDATE_USER_INFORMATION_BY_ID", "name": "Update user information by id", "description": "This endpoint allows you to update various aspects of a user's profile and settings in the Dialpad system. It provides comprehensive control over user management, including personal information, administrative roles, communication settings, and account status. Use this endpoint when you need to modify existing user data, such as changing contact details, adjusting administrative privileges, updating license types, or managing phone numbers and extensions. The endpoint is particularly useful for keeping user information up-to-date and managing user access within the Dialpad platform. Note that some changes, like updating license types or office assignments, may have billing implications. Ensure you have the necessary permissions and understand the impact of changes before using this endpoint." }, { "slug": "DIALPAD_VALIDATE_CALLBACK_REQUEST", "name": "Validate callback request", "description": "Validates a callback request for the Dialpad system. This endpoint is used to check if a callback can be successfully initiated for a given call center and phone number. It helps ensure that the necessary information is correct and available before actually placing the callback. Use this endpoint when you need to verify the validity of a callback request, such as before scheduling or queuing a callback. The endpoint does not initiate the actual callback; it only performs validation. Note that both parameters are optional, allowing for flexible validation scenarios, but providing both ensures the most comprehensive validation." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "dialpad_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "recordings_export,message_content_export,screen_pop,calls:list,fax_message,change_log,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "dialpad_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret Dialpad API key. A Company Admin can create one under Admin Settings → My Company → Authentication → API keys; copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "formsite", "name": "Formsite", "logo": "https://logos.composio.dev/api/formsite", "description": "Formsite helps users create online forms and surveys with drag-and-drop tools, secure data capture, and integrations to simplify workflows", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FORMSITE_GET_FORM", "name": "Get Form Details", "description": "This tool retrieves detailed information about a specific form in Formsite. It provides comprehensive details including the form's internal description, directory identifier, name, publishing information (embed code and form link), current state (e.g., \"open\"), and statistics (file size and number of results). **Important**: If the connection's base_url doesn't include the user directory, you must provide the 'user_dir' parameter. Find this in your Formsite form URLs (e.g., if URL is https://fs8.formsite.com/user123/forms/abc, user_dir is 'user123') or in Settings -> Integrations -> Formsite API." }, { "slug": "FORMSITE_GET_FORM_ITEMS", "name": "Get Form Items", "description": "Retrieves all items (questions) for a specific form using the Formsite API. This action returns detailed information about each form item including: - Item ID (unique identifier for the form question) - Position (sequential order in the form) - Label (the question text) - Children (optional, for Matrix and Multi Scale items with sub-items) The item data can be used to label results data by matching item IDs from this action to item IDs from the Get Form Results action. **Important**: If the connection's base_url doesn't include the user directory, you must provide the 'user_dir' parameter. Find this in your Formsite form URLs (e.g., if URL is https://fs8.formsite.com/user123/forms/abc, user_dir is 'user123') or in Settings -> Integrations -> Formsite API." }, { "slug": "FORMSITE_GET_FORM_RESULTS", "name": "Get Form Results", "description": "This tool retrieves form results from a specified FormSite form. It uses the GET https://{server}.formsite.com/api/v2/{user_dir}/forms/{form_id}/results endpoint to fetch results, handling required parameters such as form_id, user_dir, limit, page, and sort direction. **Important**: If the connection's base_url doesn't include the user directory, you must provide the 'user_dir' parameter. Find this in your Formsite form URLs (e.g., if URL is https://fs8.formsite.com/user123/forms/abc, user_dir is 'user123') or in Settings -> Integrations -> Formsite API." }, { "slug": "FORMSITE_GET_WEBHOOKS", "name": "Get Form Webhooks", "description": "Retrieves all webhooks configured for a specific form in FormSite. This action returns webhook configurations including URL, event type (e.g., 'result_completed'), and optional handshake_key for security. Webhooks notify external URLs when form events occur. **Important**: If the connection's base_url doesn't include the user directory, you must provide the 'user_dir' parameter. Find this in your Formsite form URLs (e.g., if URL is https://fs8.formsite.com/user123/forms/abc, user_dir is 'user123') or in Settings -> Integrations -> Formsite API." }, { "slug": "FORMSITE_LIST_ALL_FORMS", "name": "List All Forms", "description": "Retrieves a list of all forms in the user's Formsite account. This action returns detailed information about each form including: - Form directory (identifier for accessing the form via API) - Form name (the display name of the form) - Description (optional internal description) - Publish information (embed code and public link) - State (open/closed status) - Statistics (file storage size and results count) The form directory returned by this action can be used with other Formsite actions like Get Form Details, Get Form Items, and Get Form Results. **Important**: If the connection's base_url doesn't include the user directory, you must provide the 'user_dir' parameter. Find this in your Formsite form URLs (e.g., if URL is https://fs8.formsite.com/user123/forms/abc, user_dir is 'user123') or in Settings -> Integrations -> Formsite API." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "formsite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Formsite API Base URL", "type": "string", "description": "Your Formsite API base URL. Example: https://fs8.formsite.com/api/v2/YOUR_USER_ID", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key generated from your Formsite account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ynab", "name": "YNAB", "logo": "https://logos.composio.dev/api/ynab", "description": "YNAB (You Need A Budget) is a budgeting tool helping users track expenses, plan finances, and gain control over spending to reduce debt", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "YNAB_CREATE_ACCOUNT", "name": "Create a new account in a budget", "description": "Tool to create a new account in a budget. Use when you need to add a manual (non-linked) account to a specific budget." }, { "slug": "YNAB_CREATE_SCHEDULED_TRANSACTION", "name": "Create Scheduled Transaction", "description": "Creates a scheduled (recurring) transaction in a YNAB budget. Use this to set up bills, recurring expenses, or income that repeats on a schedule. Requires an account_id (from YNAB_LIST_ACCOUNTS), a date, frequency, and amount in milliunits." }, { "slug": "YNAB_DELETE_SCHEDULED_TRANSACTION", "name": "Delete Scheduled Transaction", "description": "Permanently deletes a scheduled transaction from a YNAB budget. Use this when a recurring transaction is no longer needed. This action cannot be undone. Obtain the scheduled_transaction_id from list_scheduled_transactions or get_scheduled_transaction_by_id before calling this." }, { "slug": "YNAB_GET_ACCOUNT_BY_ID", "name": "Get Account by ID", "description": "Tool to retrieve a single account resource. Use when you need details of a specific account by its ID after determining the budget." }, { "slug": "YNAB_GET_BUDGET_BY_ID", "name": "Get Budget By ID", "description": "Retrieve a complete budget export by ID, including all accounts, categories, payees, and transactions. Use this tool when you need comprehensive budget data. The response includes: - Budget metadata (name, date/currency formats) - All accounts with balances - Category groups and categories with budgeted amounts and balances - All payees - All transactions and scheduled transactions (optional, may be large) For incremental syncing, use last_knowledge_of_server to only fetch changes since your last request. Note: Currency amounts are in 'milliunits' format (divide by 1000 for standard units)." }, { "slug": "YNAB_GET_BUDGET_MONTH", "name": "Get Budget Month", "description": "Tool to retrieve a specific budget month. Use when you need detailed summary and category budgets for a given month after confirming the budget ID. Monetary amounts are returned in milliunits (divide by 1000 for standard currency). Response includes high-level aggregates and a nested category array within the month payload for per-category budget analysis." }, { "slug": "YNAB_GET_BUDGET_SETTINGS", "name": "Get Budget Settings", "description": "Tool to retrieve budget-level settings. Use when you need to fetch currency and date formatting preferences for a specific budget." }, { "slug": "YNAB_GET_CATEGORY_BY_ID", "name": "Get Category by ID", "description": "Retrieve a single YNAB budget category by its ID. Use this to get detailed category information including budgeted amounts, activity, balance, and goal settings. Amounts are returned for the current budget month (UTC). Requires both budget_id and category_id - use 'last-used' or 'default' for budget_id if you don't have a specific budget ID." }, { "slug": "YNAB_GET_MONTH_CATEGORY_BY_ID", "name": "Get Month Category By ID", "description": "Tool to retrieve a single category for a specific budget month. Use after selecting the budget and month when you need month-specific category details." }, { "slug": "YNAB_GET_PAYEE_BY_ID", "name": "Get Payee by ID", "description": "Tool to retrieve a single payee by its ID. Use when you need full details of a payee after confirming the budget and payee selection." }, { "slug": "YNAB_GET_SCHEDULED_TRANSACTION_BY_ID", "name": "Get Scheduled Transaction by ID", "description": "Tool to retrieve a single scheduled transaction. Use when you need details of a specific scheduled transaction by its ID after confirming the budget." }, { "slug": "YNAB_GET_TRANSACTION_BY_ID", "name": "Get Transaction by ID", "description": "Tool to retrieve a single transaction by its ID. Use when you need detailed information for a specific transaction after confirming the budget." }, { "slug": "YNAB_GET_USER", "name": "Get Authorized User", "description": "Tool to retrieve the authorized user's information. Use after authentication to get current user details." }, { "slug": "YNAB_LIST_ACCOUNTS", "name": "List Accounts", "description": "Retrieves all accounts for a specified YNAB budget. Use this tool to: - Get a complete list of accounts (checking, savings, credit cards, loans, etc.) in a budget - Retrieve account IDs for use with other YNAB account-related operations - Monitor account balances (current, cleared, and uncleared) - Perform efficient delta syncing by passing last_knowledge_of_server Returns account details including balances in milliunits (1000 milliunits = 1 currency unit). For example, a balance of 150000 milliunits equals $150.00. Note: Use 'default' or 'last-used' as budget_id for convenience, or obtain specific budget UUIDs from the List Budgets endpoint." }, { "slug": "YNAB_LIST_BUDGETS", "name": "List Budgets", "description": "Retrieves all budgets accessible to the authenticated YNAB user. Use this tool to: - Get a list of all budgets in the user's YNAB account - Retrieve budget IDs for use with other YNAB operations - Optionally include account details for each budget Returns budget summaries including name, last modification time, date range, and formatting preferences. Budget IDs from this response are required for most other YNAB API operations." }, { "slug": "YNAB_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to list all category groups and their categories for a budget. Use when you need the full set of budget categories or only those changed since last sync. Category names may include emojis or near-identical labels; always use category_id from the response in downstream requests." }, { "slug": "YNAB_LIST_MONTHS", "name": "List Budget Months", "description": "Tool to list months for a budget with summary information. Use when you need an overview of all months or only changed months since a given knowledge value (delta requests)." }, { "slug": "YNAB_LIST_PAYEE_LOCATIONS", "name": "List Payee Locations", "description": "Retrieves all GPS locations associated with payees in a budget. Payee locations are recorded when transactions are saved using the YNAB mobile apps, storing GPS coordinates to help pre-populate nearby payees. Use this tool when you need to find all recorded locations for payees in a budget. Note: Not all payees will have locations recorded." }, { "slug": "YNAB_LIST_PAYEE_LOCATIONS_BY_PAYEE", "name": "List Payee Locations by Payee", "description": "Retrieves all GPS locations associated with a specific payee in a budget. Payee locations are recorded when transactions are saved using the YNAB mobile apps, storing GPS coordinates to help pre-populate nearby payees. Use this tool when you need to find where a payee's transactions typically occur. Note: Not all payees will have locations recorded." }, { "slug": "YNAB_LIST_PAYEES", "name": "List payees in a budget", "description": "Tool to list payees in a budget. Use when you need all payees or only those changed since a known server knowledge value." }, { "slug": "YNAB_LIST_SCHEDULED_TRANSACTIONS", "name": "List Scheduled Transactions", "description": "List all scheduled (recurring) transactions for a YNAB budget. Returns future-dated transactions that repeat on a schedule (e.g., rent, subscriptions, paychecks). Supports delta sync to fetch only changes since a previous request using the server_knowledge value." }, { "slug": "YNAB_LIST_TRANSACTIONS", "name": "List Transactions", "description": "Tool to list transactions in a budget. Use when you need all or delta-filtered transactions after confirming the budget. Omitting all filters returns the full transaction history, which may produce large payloads; prefer since_date, type, or last_knowledge_of_server to scope results." }, { "slug": "YNAB_LIST_TRANSACTIONS_BY_ACCOUNT", "name": "List Transactions by Account", "description": "Tool to list transactions for a specific account. Use when you need all or delta-filtered transactions for a given account after confirming the budget and account ID." }, { "slug": "YNAB_LIST_TRANSACTIONS_BY_CATEGORY", "name": "List Transactions by Category", "description": "Tool to list transactions for a specific category (excludes pending). Use when you need completed transactions for a given category after obtaining budget_id and category_id. Response includes deleted transactions; filter client-side using the deleted boolean field." }, { "slug": "YNAB_LIST_TRANSACTIONS_BY_PAYEE", "name": "List Transactions by Payee", "description": "Tool to list transactions for a specific payee in a budget. Use when you need to fetch all non-pending transactions for a payee after confirming budget and payee IDs." }, { "slug": "YNAB_UPDATE_PAYEE", "name": "Update Payee", "description": "Tool to update a payee. Use when you need to rename an existing payee." }, { "slug": "YNAB_UPDATE_SCHEDULED_TRANSACTION", "name": "Update Scheduled Transaction", "description": "Update an existing scheduled transaction in YNAB. Allows modifying the date, frequency, amount, payee, category, memo, or account of a scheduled transaction. Use YNAB_LIST_SCHEDULED_TRANSACTIONS first to get the scheduled_transaction_id. Amounts should be in milliunits (negative for expenses, positive for income)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "kommo", "name": "Kommo", "logo": "https://logos.composio.dev/api/kommo", "description": "Kommo CRM is a platform for managing customer relationships, sales pipelines, and business processes.", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KOMMO_ADD_AI_SOURCE_FILE", "name": "Add AI Source File", "description": "Tool to add a knowledge source file to Kommo AI. Use when you need to upload a file (like documentation, policies, or knowledge base articles) to be used by the Kommo AI agent or suggested reply feature." }, { "slug": "KOMMO_CREATE_COMPANY", "name": "Create Kommo Companies", "description": "Action to add one or more companies into the Kommo account." }, { "slug": "KOMMO_CREATE_CONTACT", "name": "Create Kommo Contact", "description": "Action to create one or more contacts in Kommo CRM." }, { "slug": "KOMMO_CREATE_LEAD", "name": "Create Kommo Lead", "description": "Action to create a lead in Kommo CRM." }, { "slug": "KOMMO_CREATE_TASK", "name": "Create Kommo Task", "description": "Action to create a task in Kommo CRM." }, { "slug": "KOMMO_DELETE_FILES", "name": "Delete Kommo Files", "description": "Tool to delete files (move to trash) in Kommo. Use when you need to remove files from the Kommo account." }, { "slug": "KOMMO_GET_ACCOUNT", "name": "Get Kommo Account", "description": "Tool to get account information including user data, custom fields, task types, user groups, amojo rights, and integration status. Use when you need to retrieve account-level details from Kommo CRM." }, { "slug": "KOMMO_GET_COMPANY", "name": "Get Kommo Company", "description": "Tool to get a company by its ID from Kommo CRM. Use when you need to retrieve detailed information about a specific company including its name, responsible user, and optionally embedded data like contacts, leads, or catalog elements." }, { "slug": "KOMMO_GET_CONTACT", "name": "Get Kommo Contact", "description": "Tool to get a specific contact by its ID from Kommo CRM. Use when you need to retrieve detailed information about a particular contact." }, { "slug": "KOMMO_GET_CUSTOM_FIELD", "name": "Get Kommo Custom Field", "description": "Tool to retrieve a custom field by its ID from Kommo CRM. Use when you need detailed information about a specific custom field including its type, settings, and enum values." }, { "slug": "KOMMO_GET_EVENT", "name": "Get Kommo Event", "description": "Tool to get a specific event by its ID from Kommo CRM. Use when you need to retrieve detailed information about a particular event, including before/after state changes for entities." }, { "slug": "KOMMO_GET_FIELD_GROUP", "name": "Get Kommo Field Group", "description": "Tool to retrieve a custom field group by its ID from Kommo CRM. Use when you need to get details about a specific field group including its fields and metadata." }, { "slug": "KOMMO_GET_FILE_LINKS", "name": "Get File Links", "description": "Tool to get entities associated with a file in Kommo. Use when you need to find which leads, contacts, companies, or catalog elements are linked to a specific file." }, { "slug": "KOMMO_GET_INCOMING_LEADS_SUMMARY", "name": "Get Incoming Leads Summary", "description": "Tool to retrieve summary statistics for incoming (unsorted) leads in Kommo CRM. Use when you need aggregate metrics like total count, acceptance/decline rates, average processing time, and breakdown by lead source category." }, { "slug": "KOMMO_GET_LEAD", "name": "Get Kommo Lead", "description": "Tool to get a lead by its ID from Kommo CRM. Use when you need to retrieve detailed information about a specific lead including its status, price, responsible user, and optionally embedded data like contacts, catalog elements, or loss reasons." }, { "slug": "KOMMO_GET_LOSS_REASON", "name": "Get Kommo Loss Reason", "description": "Tool to retrieve a specific loss reason by its ID from Kommo CRM. Use when you need detailed information about a particular loss reason, such as its name, sort order, and timestamps." }, { "slug": "KOMMO_GET_PIPELINE", "name": "Get Kommo Pipeline", "description": "Tool to get a pipeline by its ID from Kommo CRM. Use when you need to retrieve details about a specific pipeline including its stages." }, { "slug": "KOMMO_GET_PIPELINE_STATUS", "name": "Get Kommo Pipeline Status", "description": "Tool to get a specific pipeline stage by its ID from Kommo CRM. Use when you need to retrieve detailed information about a particular stage within a pipeline." }, { "slug": "KOMMO_GET_TASK", "name": "Get Kommo Task", "description": "Tool to retrieve a task by its ID from Kommo CRM. Use when you need to fetch details of a specific task." }, { "slug": "KOMMO_GET_USER", "name": "Get Kommo User", "description": "Tool to retrieve user data by its ID from Kommo CRM. Use when you need to fetch details about a specific user including their name, email, role, group, and access rights." }, { "slug": "KOMMO_GET_WIDGET", "name": "Get Kommo Widget Info", "description": "Tool to get detailed information about a widget by its code. Use when you need to retrieve widget metadata, settings, version, or check if a widget is active in the account." }, { "slug": "KOMMO_IMPORT_PRODUCTS_TO_AI", "name": "Import Products to AI", "description": "Tool to launch import of products from CRM to AI knowledge base. Use when you need to initiate the process of importing product data into the AI system for enhanced product recommendations and knowledge." }, { "slug": "KOMMO_LIST_CATALOGS", "name": "List Kommo Catalogs", "description": "Tool to retrieve a list of catalogs (lists) from Kommo CRM. Use when you need to fetch available catalogs in the account." }, { "slug": "KOMMO_LIST_COMPANIES", "name": "List Kommo Companies", "description": "Action to list Kommo companies with various filter options." }, { "slug": "KOMMO_LIST_CONTACTS", "name": "List Kommo Contacts", "description": "Action to list contacts in Kommo CRM." }, { "slug": "KOMMO_LIST_CONVERSATIONS", "name": "List Kommo Conversations", "description": "Tool to get a list of conversations from Kommo CRM. Use when you need to retrieve conversations with pagination support." }, { "slug": "KOMMO_LIST_CUSTOM_FIELDS", "name": "List Kommo Custom Fields", "description": "Action to list custom fields in Kommo CRM." }, { "slug": "KOMMO_LIST_ENTITY_FILES", "name": "List Entity Files", "description": "Tool to retrieve a list of files attached to an entity in Kommo CRM. Use when you need to see all files (documents, images, PDFs, etc.) that have been uploaded to a specific lead, contact, or company." }, { "slug": "KOMMO_LIST_ENTITY_LINKS", "name": "List Kommo Entity Links", "description": "Tool to get a list of entities linked to a specific entity in Kommo. Use when you need to retrieve contacts, companies, or leads linked to another entity." }, { "slug": "KOMMO_LIST_ENTITY_NOTES", "name": "List Kommo Entity Notes", "description": "Tool to get a list of all notes for an entity type (leads, contacts, or companies) in Kommo CRM. Use when you need to retrieve notes across all entities of a specific type, not just for a single entity." }, { "slug": "KOMMO_LIST_ENTITY_TAGS", "name": "List Kommo Entity Tags", "description": "Tool to get a list of tags for an entity type (leads, contacts, or companies). Use when you need to retrieve available tags for a specific entity type in Kommo CRM." }, { "slug": "KOMMO_LIST_EVENTS", "name": "List Kommo Events", "description": "Tool to get a list of events from Kommo CRM with filtering options. Use when you need to retrieve events history, track changes to entities (leads, contacts, companies), or monitor specific event types like status changes, field updates, or assignment changes." }, { "slug": "KOMMO_LIST_EVENT_TYPES", "name": "List Kommo Event Types", "description": "Tool to get a list of all available event types in Kommo CRM. Use when you need to see what event types can be used for filtering events or configuring webhooks." }, { "slug": "KOMMO_LIST_FIELD_GROUPS", "name": "List Kommo Field Groups", "description": "Tool to get a list of custom field groups for an entity type in Kommo CRM. Use when you need to retrieve field group information to organize custom fields." }, { "slug": "KOMMO_LIST_FILES", "name": "List Kommo Files", "description": "Tool to retrieve a list of files from Kommo Drive. Use when you need to search, filter, or browse files stored in the Kommo CRM system. Supports filtering by name, extension, size, date, creator, and other criteria." }, { "slug": "KOMMO_LIST_INCOMING_LEADS", "name": "List Incoming Leads", "description": "Tool to get a list of incoming leads (unsorted) from Kommo with filtering and pagination. Use when you need to retrieve unprocessed leads that haven't been sorted into pipelines yet. Supports filtering by category (sip, mail, forms, chats), UID, and pipeline ID." }, { "slug": "KOMMO_LIST_LEADS", "name": "List Kommo Leads", "description": "Action to list leads in Kommo CRM." }, { "slug": "KOMMO_LIST_LEADS_PIPELINES", "name": "List Kommo Lead Pipelines", "description": "Action to list lead pipelines in Kommo CRM." }, { "slug": "KOMMO_LIST_LOSS_REASONS", "name": "List Kommo Loss Reasons", "description": "Action to list loss reasons for leads in Kommo CRM. Use when you need to retrieve all available loss reasons that can be assigned to lost leads." }, { "slug": "KOMMO_LIST_NOTES_BY_ENTITY", "name": "List Kommo Notes By Entity", "description": "Tool to get notes for a specific entity by its ID in Kommo CRM. Use when you need to retrieve all notes associated with a lead, contact, or company." }, { "slug": "KOMMO_LIST_PIPELINE_STAGES", "name": "List Kommo Pipeline Stages", "description": "Action to list stages of a pipeline in Kommo CRM." }, { "slug": "KOMMO_LIST_ROLES", "name": "List Kommo User Roles", "description": "Tool to get a list of user roles in Kommo CRM. Use when you need to retrieve available user roles and their permissions." }, { "slug": "KOMMO_LIST_SOURCES", "name": "List Kommo Lead Sources", "description": "Tool to get a list of lead sources in Kommo CRM. Use when you need to retrieve all available lead sources that can be assigned to leads." }, { "slug": "KOMMO_LIST_TASKS", "name": "List Kommo Tasks", "description": "Action to list tasks in Kommo CRM." }, { "slug": "KOMMO_LIST_TEMPLATES", "name": "List Kommo Templates", "description": "Tool to get a list of message templates in Kommo CRM. Use when you need to retrieve chat response templates that can be utilized in cards and bots." }, { "slug": "KOMMO_LIST_USERS", "name": "List Kommo Users", "description": "Tool to get a list of users from Kommo CRM with pagination support. Use when you need to retrieve all users in the account or paginate through the users list." }, { "slug": "KOMMO_LIST_WEBHOOKS", "name": "List Kommo Webhooks", "description": "Tool to get a list of registered webhooks for the Kommo account. Use when you need to view all webhook configurations and their settings." }, { "slug": "KOMMO_LIST_WEBSITE_BUTTONS", "name": "List Kommo Website Buttons", "description": "Tool to get a list of website chat button (CRM Plugin) objects from Kommo. Use when you need to retrieve all configured website chat buttons in the account. Supports pagination for large result sets." }, { "slug": "KOMMO_LIST_WIDGETS", "name": "List Kommo Widgets", "description": "Tool to get a list of installed widgets in Kommo. Use when you need to see which widgets are installed and their current status in the account." }, { "slug": "KOMMO_UPDATE_COMPANY", "name": "Update Kommo Company", "description": "Action to update a single company in Kommo CRM." }, { "slug": "KOMMO_UPDATE_CONTACT", "name": "Update Kommo Contact", "description": "Action to update contact information in Kommo CRM by contact ID." }, { "slug": "KOMMO_UPDATE_LEAD", "name": "Update Kommo Lead", "description": "Action to update an existing lead in Kommo CRM. Allows modifying lead properties including name, price, pipeline stage, responsible user, tags, and custom fields. Requires the lead ID to be specified." }, { "slug": "KOMMO_UPDATE_TASK", "name": "Update Kommo Task", "description": "Action to update a task in Kommo CRM." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "kommo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "The part before .kommo.com in your browser's address bar when logged in — e.g. 'acme' in acme.kommo.com. You chose it when creating your account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "deel", "name": "Deel", "logo": "https://logos.composio.dev/api/deel", "description": "Deel provides a global payroll and compliance platform for hiring international contractors and employees, automating onboarding, payments, and legal documentation", "category": "hr talent & recruitment", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "deel_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "contracts:read,contracts:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "tisane", "name": "Tisane", "logo": "https://logos.composio.dev/api/tisane", "description": "Tisane API is a natural language processing tool that detects problematic content, extracts topics, and performs aspect-based sentiment analysis across 27 languages.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TISANE_ANALYZE_TEXT", "name": "Analyze Text", "description": "Tool to analyze input text for detailed NLU insights. Use after preparing text when you need to detect sentiment, entities, topics, and other linguistic features." }, { "slug": "TISANE_CALCULATE_SIMILARITY", "name": "Calculate Semantic Similarity", "description": "Tool to calculate semantic similarity between two text fragments. Use when you need a numeric similarity score (0-1) for two texts." }, { "slug": "TISANE_COMPARE_ENTITIES", "name": "Compare Entities", "description": "Tool to compare two compound named entities and identify differences. Currently only supports person entity type. Use when you need to determine if two person names refer to the same individual or identify specific differences." }, { "slug": "TISANE_DETECT_LANGUAGE", "name": "Detect Language", "description": "Tool to detect the language of the provided text. Use when you need to identify the language code." }, { "slug": "TISANE_EXTRACT_TEXT", "name": "Extract Text", "description": "Tool to extract raw text from markup content. Use when cleaning HTML, CSS, JS, or JSON to get pure decoded text. Use after confirming the input is UTF-8 text; this does not process binary content." }, { "slug": "TISANE_GET_FAMILY_DETAILS", "name": "Get Family Details", "description": "Tool to fetch metadata for a family from Tisane language models, including definition, description, hypernyms, and external references (Wikidata, WordNet). Use when you need detailed information about a specific family concept by its numeric identifier." }, { "slug": "TISANE_GET_SUPPORTED_LANGUAGES", "name": "Get Supported Languages", "description": "Tool to list all languages supported by the API. Use when needing to discover available languages for text analysis or processing. Call before submitting text to ensure support." }, { "slug": "TISANE_LIST_FEATURE_VALUES", "name": "List Feature Values", "description": "Tool to list feature values for a particular category such as entity types, subtypes, abuse types, and tags. Use when you need to discover valid values for a specific feature category before analysis or filtering." }, { "slug": "TISANE_LIST_HYPERNYMS", "name": "List Hypernyms", "description": "Tool to list all hypernyms related to a family. A hypernym is a parent concept (e.g., vehicle is a hypernym of truck). Use when you need to understand the conceptual hierarchy or broader categories for a given family ID." }, { "slug": "TISANE_LIST_HYPONYMS", "name": "List Hyponyms", "description": "Tool to list all hyponyms related to a family. A hyponym is a child concept (e.g., 'truck' is a hyponym of 'vehicle'). Use when you need to discover more specific concepts within a semantic family." }, { "slug": "TISANE_LIST_INFLECTIONS", "name": "List Inflections", "description": "Tool to retrieve inflected forms of a specified lexeme within a given language family. Use when you need to get all grammatical variants of a word." }, { "slug": "TISANE_LIST_WORD_SENSES", "name": "List Word Senses", "description": "Tool to fetch all senses (meanings) related to a word. Use when you need to explore word definitions, families, features, and lemma information for linguistic analysis." }, { "slug": "TISANE_TRANSFORM_TEXT", "name": "Transform Text", "description": "Tool to translate or paraphrase text. Use when you need to convert content between languages or paraphrase within the same language." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tisane_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Ocp-Apim-Subscription-Key", "type": "string", "description": "The API key obtained from the Tisane Labs Developer Profile, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "coinmarketcal", "name": "CoinMarketCal", "logo": "https://logos.composio.dev/api/coinmarketcal", "description": "CoinMarketCal is a community-driven crypto calendar, highlighting upcoming events, announcements, and releases, helping traders and enthusiasts track market-impacting developments in the cryptocurrency space", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COINMARKETCAL_LIST_COINS", "name": "List Coins", "description": "Tool to retrieve list of all available coins/cryptocurrencies in CoinMarketCal database. Use when you need to fetch coin information including IDs, names, symbols, and event counts." }, { "slug": "COINMARKETCAL_LIST_EVENT_CATEGORIES", "name": "List Event Categories", "description": "Tool to list all event categories. Use when you need to fetch available event categories." }, { "slug": "COINMARKETCAL_LIST_EVENTS", "name": "List Cryptocurrency Events", "description": "Tool to retrieve list of cryptocurrency events. Use when you need to fetch upcoming or past crypto events filtered by date range, coins, categories, or other criteria. Note: Cannot retrieve events before 25/11/2017. The can_occur_before field is important as some events may happen before their stated date." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "coinmarketcal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CoinMarketCal API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browseai", "name": "Browseai", "logo": "https://logos.composio.dev/api/browseai", "description": "Browse.ai allows you to turn any website into an API using its advanced web automation and data extraction tools, enabling easy monitoring and data retrieval from websites.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BROWSEAI_BULK_RUN_TASKS", "name": "Bulk Run Tasks", "description": "This action allows users to bulk run up to 1,000 tasks per API call using a specified robot. For larger datasets, submit multiple bulk runs sequentially (up to 500,000 tasks total). It provides a POST endpoint at /v2/robots/{robotId}/bulk-runs and supports parameters such as robot_id (required), title (required), and input_parameters (required). This bulk operation is essential for large-scale data extraction." }, { "slug": "BROWSEAI_CREATE_MONITOR", "name": "Create Monitor", "description": "Creates a new monitor for a Browse AI robot to automatically track website changes over time. A monitor runs a robot on a recurring schedule and can notify you when the captured data (screenshots or text) changes. This is useful for tracking price changes, content updates, availability status, or any other dynamic website information. You must first have a robot created (via the Browse AI dashboard) before you can monitor it. Use the GET_ROBOTS action to find available robot IDs. Key features: - Configure recurring schedules (hourly, daily, weekly) using RRULE format - Get email notifications when screenshots or text content changes - Customize notification sensitivity with threshold settings - Override robot parameters for each monitor" }, { "slug": "BROWSEAI_CREATE_WEBHOOK", "name": "Create Webhook", "description": "This tool creates a new webhook for a Browse AI robot. Webhooks are HTTP callbacks that Browse AI sends to your server immediately when specific events occur, eliminating the need for polling. It is useful for: - Setting up automated notifications for task completion - Receiving real-time updates when changes are detected - Integrating Browse AI with your own systems - Automating workflows based on robot task results The webhook can be configured to trigger on different event types: - taskFinished: Triggers on any task completion (success or failure) - taskFinishedSuccessfully: Triggers only on successful task completions - taskFinishedWithError: Triggers only on failed task completions - taskCapturedDataChanged: Triggers when data changes are detected during monitoring - tableExportFinishedSuccessfully: Triggers when table export completes (Beta feature) Note: Browse AI only supports one event type per webhook. To monitor multiple event types, create separate webhooks for each event type." }, { "slug": "BROWSEAI_DELETE_MONITOR", "name": "Delete a specific monitor", "description": "This tool allows users to delete a specific monitor from their Browse AI account. It uses the DELETE method and requires a valid monitor_id." }, { "slug": "BROWSEAI_DELETE_TASK", "name": "Delete a specific task", "description": "This tool allows you to delete a specific task in BrowseAI by its task ID. It is used for cleaning up completed or failed tasks, managing resources, and maintaining your task list." }, { "slug": "BROWSEAI_GET_ROBOTS", "name": "Get Robots List", "description": "Retrieves a list of all robots (automated web tasks) under your Browse AI account. A robot is an automated browser task that can be trained to perform web operations such as: - Opening webpages and navigating through sites - Logging into websites - Clicking buttons and filling forms - Extracting structured data from web pages - Monitoring websites for changes This action returns comprehensive information about each robot including: - Robot ID (required for running tasks via other API endpoints) - Robot name and timestamps (creation/update) - Input parameters the robot accepts (parameter names, types, and whether they're required) Use this to: - Discover available robots and their IDs for task execution - Check robot configuration and required input parameters - Monitor robot creation and update activity - Get an overview of all automated tasks in your account No parameters required - simply call this action to retrieve all robots." }, { "slug": "BROWSEAI_GET_ROBOT_TASKS", "name": "Get Robot Tasks", "description": "Retrieves a paginated list of all tasks (execution runs) for a specific Browse AI robot. Each task represents one execution of the robot, which includes its current status, execution timestamps, input parameters, captured text data, screenshots, and extracted lists. This tool returns tasks in reverse chronological order (newest first) by default. Use the limit and offset parameters to paginate through large result sets. Use this tool to: - Check the status of recent robot executions (pending, running, successful, failed) - Access data captured by robot tasks (text, screenshots, lists) - Monitor robot performance and execution history - Retrieve task IDs for use with other task-related actions - Debug failed robot executions Note: You must have at least one robot configured in your Browse AI account to use this action. Use the Get Robots List action first to find available robot IDs." }, { "slug": "BROWSEAI_GET_SYSTEM_STATUS", "name": "Get System Status", "description": "Tool to check the operational status of Browse AI infrastructure, including the tasks queue condition. Use when you need to verify if Browse AI services are operational before running robots or tasks." }, { "slug": "BROWSEAI_GET_TASK_DETAILS", "name": "Get Task Details", "description": "Retrieves detailed information about a specific Browse AI task by robot ID and task ID. This tool returns comprehensive task details including execution status, captured data, screenshots, input parameters, timestamps (created, started, completed), and error information if the task failed. It provides an in-depth view of individual task execution for monitoring, debugging, and data retrieval purposes. Use this tool when you need to: - Check the current status of a task (running, successful, failed) - Retrieve data captured during task execution - Access screenshots taken during the task - Review input parameters used for the task - Debug task failures by examining error details - Monitor task execution timestamps" }, { "slug": "BROWSEAI_LIST_ROBOT_WEBHOOKS", "name": "List Robot Webhooks", "description": "Tool to retrieve all webhooks configured for a specific Browse AI robot. Use when you need to view, audit, or manage webhook configurations for a robot. Returns webhook details including URL, event type, active status, and creation timestamp." }, { "slug": "BROWSEAI_RUN_ROBOT", "name": "Run Robot", "description": "Triggers the execution of a Browse.ai robot to extract data from websites. This action starts a new robot task that will scrape/extract data according to the robot's pre-configured settings. The robot runs asynchronously and returns a task ID immediately. To retrieve the extracted data, use BROWSEAI_GET_TASK_DETAILS with the returned task ID. Prerequisites: - You must have at least one robot configured in your Browse.ai account - Obtain robot_id using BROWSEAI_GET_ROBOTS action first - Know what input parameters your robot expects (configured during robot creation) Common use cases: - Scraping product data from e-commerce sites - Monitoring website changes for specific content - Extracting structured data from multiple web pages - Automating repetitive web data collection tasks Note: The robot executes asynchronously. Check task status using BROWSEAI_GET_TASK_DETAILS or BROWSEAI_GET_ROBOT_TASKS to retrieve results when the task completes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "browse_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to Browse.ai.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "maintainx", "name": "Maintainx", "logo": "https://logos.composio.dev/api/maintainx", "description": "MaintainX is a cloud-based computerized maintenance management system (CMMS) that helps organizations centralize maintenance data, communication, and workflows.", "category": "task management", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAINTAINX_CREATE_CATEGORY", "name": "Create Category", "description": "Tool to create a new category in MaintainX for organizing work orders, assets, and other items. Use when you need to add a new category to the organization's classification system." }, { "slug": "MAINTAINX_CREATE_LOCATION", "name": "Create Location", "description": "Tool to create a new location in MaintainX. Use when you need to add a new physical location where assets are stored or work is performed. Locations can be organized hierarchically using the parentId parameter." }, { "slug": "MAINTAINX_CREATE_PROCEDURE_TEMPLATE", "name": "Create Procedure Template", "description": "Tool to create a new procedure template in MaintainX with checklist items for work orders. Use when you need to create a standardized procedure that can be attached to work orders. The template can include various field types like text, checkboxes, signatures, and multiple choice options." }, { "slug": "MAINTAINX_CREATE_WORK_ORDER", "name": "Create Work Order", "description": "This tool creates a new work order in MaintainX. It uses the POST /api/v1/workorders endpoint. The tool requires a 'title' for the work order and offers several optional parameters including description, priority, dueDate, startDate, userIds, teamIds, procedureTemplateId, locationId, assetId, and categories." }, { "slug": "MAINTAINX_CREATE_WORK_ORDER_COMMENT", "name": "Create Work Order Comment", "description": "This tool creates a new comment on an existing work order in MaintainX. It allows users to add comments for documentation, updates, or communication purposes within a specific work order. It requires a workOrderId and the text content of the comment to create a new comment on the work order, providing capabilities to update maintenance work order records." }, { "slug": "MAINTAINX_CREATE_WORK_REQUEST", "name": "Create Work Request", "description": "Tool to create a new work request in MaintainX. Use when you need to submit a request for work that can later be converted to a work order. Work requests are typically used to initiate maintenance or service requests that require approval before becoming work orders." }, { "slug": "MAINTAINX_CREATE_WORK_REQUEST_PORTAL", "name": "Create Work Request Portal", "description": "Creates a new work request portal in MaintainX. A work request portal allows users to submit work requests through a dedicated URL. The portal can be customized with a title, welcome text, and description placeholder. It can be associated with a specific location and asset, and can be configured to require email contact information." }, { "slug": "MAINTAINX_DELETE_ASSETS", "name": "Delete Assets", "description": "Tool to delete an asset from MaintainX by its ID. Use when you need to permanently remove an asset from the system. Returns a success confirmation upon successful deletion (HTTP 204)." }, { "slug": "MAINTAINX_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to delete a category in MaintainX. Use when you need to remove a category from the system. Returns success status upon deletion (HTTP 204)." }, { "slug": "MAINTAINX_FIND_ENTITY", "name": "Find Entity", "description": "A tool to search and find specific entities within MaintainX by specified fields. This tool allows users to search for different types of entities including work orders, users, and locations." }, { "slug": "MAINTAINX_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve detailed information about a specific category by its ID. Use when you need to get the label, description, update time, or work order count for a category." }, { "slug": "MAINTAINX_GET_LOCATION", "name": "Get Location", "description": "Tool to retrieve detailed information about a specific location by its ID. Use when you need to get comprehensive details including address, attachments, child locations, and custom fields for a location." }, { "slug": "MAINTAINX_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information about a specific user by their ID. Use when you need to get user data including name, email, role, hourly rate, and custom fields." }, { "slug": "MAINTAINX_GET_VENDOR", "name": "Get Vendor", "description": "Tool to retrieve detailed information about a specific vendor by its ID. Use when you need to get comprehensive details about a vendor including contact information, attachments, and custom fields." }, { "slug": "MAINTAINX_GET_WORKORDERS_COSTS", "name": "Get Work Order Costs", "description": "Tool to retrieve costs information for a specific work order by its ID. Use when you need to get detailed cost breakdown including total costs and individual cost rows for a work order." }, { "slug": "MAINTAINX_LIST_ASSET_CRITICALITIES", "name": "List Asset Criticalities", "description": "Tool to retrieve a list of asset criticalities from MaintainX. Use when you need to get all available asset criticality levels in the organization, optionally filtered by label or level." }, { "slug": "MAINTAINX_LIST_ASSETS", "name": "List Assets", "description": "This tool allows users to retrieve a list of all assets in their organization." }, { "slug": "MAINTAINX_LIST_CATEGORIES", "name": "List Categories", "description": "This tool retrieves a list of all categories in your MaintainX organization. Categories are used to organize and classify work orders, assets, and other items in the system. It supports listing the categories with pagination and provides details such as category_id, name, description, and timestamps for creation and update." }, { "slug": "MAINTAINX_LIST_LOCATIONS", "name": "List Locations", "description": "This tool retrieves a list of all available locations in the organization's MaintainX account. The locations can be physical places where assets are located, work is performed, or maintenance is needed." }, { "slug": "MAINTAINX_LIST_METERS", "name": "List Meters", "description": "Tool to list all meters in your organization. Use this to retrieve meter information including measurement types, units, and readings." }, { "slug": "MAINTAINX_LIST_PARTS", "name": "List Parts", "description": "Tool to list parts/inventory items with pagination and filtering. Use when you need to retrieve available parts from the organization's inventory." }, { "slug": "MAINTAINX_LIST_PROCEDURE_TEMPLATES", "name": "List Procedure Templates", "description": "Tool to list procedure templates from MaintainX. Use when you need to retrieve available procedure templates that can be used in work orders." }, { "slug": "MAINTAINX_LIST_TEAMS", "name": "List Teams", "description": "This tool retrieves a list of all teams in your MaintainX organization." }, { "slug": "MAINTAINX_LIST_WORK_ORDERS", "name": "List Work Orders", "description": "Action to list work orders from MaintainX." }, { "slug": "MAINTAINX_LIST_WORK_REQUEST_PORTALS", "name": "List Work Request Portals", "description": "Tool to list all work request portals in your MaintainX organization. Use when you need to retrieve available work request portals for managing external work requests." }, { "slug": "MAINTAINX_LIST_WORK_REQUESTS", "name": "List Work Requests", "description": "Tool to retrieve a list of work requests from MaintainX. Use when you need to view all work requests. Supports pagination for large result sets using cursor and limit parameters." }, { "slug": "MAINTAINX_UPDATE_VENDORS_ATTACHMENT", "name": "Update Vendor Attachment", "description": "Tool to update a vendor attachment in MaintainX. Use when you need to upload or replace a file attachment for a specific vendor. The file is uploaded as binary data." }, { "slug": "MAINTAINX_UPDATE_WORK_ORDER", "name": "Update Work Order", "description": "This tool allows users to update an existing work order in MaintainX by modifying specific attributes without affecting other unchanged fields. It requires the workorder_id and at least one of the optional parameters (title, description, or priority) to perform the update." }, { "slug": "MAINTAINX_UPDATE_WORK_ORDER_STATUS", "name": "Update Work Order Status", "description": "This tool allows users to update the status of a specific work order in MaintainX. It is focused specifically on status updates, making it more streamlined than the comprehensive 'Update Work Order' action which allows updating multiple fields." }, { "slug": "MAINTAINX_UPDATE_WORK_REQUEST_PORTAL", "name": "Update Work Request Portal", "description": "Updates an existing work request portal in MaintainX. Tool to update work request portal information such as title, welcome text, contact information, and notification settings. Use when modifying an existing portal's configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "maintainx_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MaintainX API Key", "type": "string", "description": "The API key generated from the MaintainX platform.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tinyurl", "name": "Tinyurl", "logo": "https://logos.composio.dev/api/tinyurl", "description": "TinyURL shortens lengthy URLs, generating concise links for easier sharing and managing, often used in social media and marketing campaigns", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TINYURL_CREATE_SHORT_URL", "name": "Create short url", "description": "Creates a shortened URL using TinyURL's API. This action takes a long URL and returns a shortened version, with optional parameters for customization like domain, alias, tags, and expiration date." }, { "slug": "TINYURL_LIST_URLS", "name": "List TinyURLs", "description": "Tool to retrieve a list of TinyURLs from your account. Use when you need to view available or archived shortened URLs. Supports pagination and filtering by URL type (available or archived)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tinyurl_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "Your TinyURL API token, obtained from the TinyURL dashboard settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bitwarden", "name": "Bitwarden", "logo": "https://logos.composio.dev/api/bitwarden", "description": "Bitwarden is a secure password management solution providing encrypted vaults, cross-platform sync, and enterprise-grade security tools for storing and sharing credentials", "category": "security & identity tools", "authSchemes": [ "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BITWARDEN_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group. Use when you need to permanently remove a group by its ID after ensuring no dependencies exist." }, { "slug": "BITWARDEN_DELETE_MEMBER", "name": "Delete Member", "description": "Tool to delete a specific organization member. Use when you need to remove a member from the organization after verifying their member ID." }, { "slug": "BITWARDEN_GET_GROUP_MEMBER_IDS", "name": "Get Group Member IDs", "description": "Tool to retrieve the list of member IDs for a specific Bitwarden group. Use when you need only the user IDs of all members in a group." }, { "slug": "BITWARDEN_GET_ORG_SUBSCRIPTION", "name": "Get Organization Subscription", "description": "Tool to retrieve subscription details of the current organization. Use after obtaining a valid bearer token." }, { "slug": "BITWARDEN_IMPORT_MEMBERS_AND_GROUPS", "name": "Import Members and Groups", "description": "Tool to bulk import members and groups in a single request. Use when migrating or seeding an organization with multiple members and groups at once. Import is all-or-nothing: a single malformed entry in `members` or `groups` causes the entire request to fail." }, { "slug": "BITWARDEN_REINVITE_MEMBER", "name": "Reinvite Member", "description": "Tool to re-send an invitation to a pending or removed member. Use when an existing member's invite needs re-issuing." }, { "slug": "BITWARDEN_RETRIEVE_GROUP", "name": "Retrieve Group", "description": "Tool to retrieve details for a specific group. Use when you need to fetch group permissions and assigned collections by group ID after authenticating with a valid access token." }, { "slug": "BITWARDEN_RETRIEVE_MEMBER", "name": "Retrieve Member", "description": "Tool to retrieve details for a specific member. Use after obtaining a valid member ID to get full metadata." }, { "slug": "BITWARDEN_UPDATE_MEMBER", "name": "Update Member", "description": "Tool to update an organization member’s admin status. Use when toggling admin privileges for an existing member." } ], "triggers": [], "authConfigDetails": [ { "mode": "S2S_OAUTH2", "name": "bitwarden_service_account", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The API base URL for Bitwarden. For EU servers, use \"https://api.bitwarden.eu\".", "required": true, "default": "https://api.bitwarden.com" }, { "name": "tokenUrl", "displayName": "Token URL", "type": "string", "description": "The token URL for Bitwarden. For EU servers, use \"https://identity.bitwarden.eu/connect/token\".", "required": true, "default": "https://identity.bitwarden.com/connect/token" } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "The organization API key client ID from Bitwarden Admin Console → Settings → Organization info (format: organization.{UUID}).", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "The client secret for the Bitwarden organization API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "epic_games", "name": "Epic Games", "logo": "https://logos.composio.dev/api/epic_games", "description": "Epic Games is a video game developer and publisher known for titles like Fortnite and the Unreal Engine, offering an online store and platform", "category": "gaming", "authSchemes": [ "OAUTH2" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EPIC_GAMES_DELETE_PRESET_METADATA_KEY", "name": "Delete Preset Metadata Key", "description": "Tool to delete a metadata key-value pair associated with a Remote Control Preset. Use after confirming you have the correct preset name and metadata key." }, { "slug": "EPIC_GAMES_GET_ISLAND", "name": "Get Island Metadata", "description": "Tool to fetch metadata for a specific Fortnite island by its code. Use when you have an island code and need detailed island information." }, { "slug": "EPIC_GAMES_GET_ISLAND_AVG_MINUTES_PER_PLAYER", "name": "Get Island Average Minutes per Player", "description": "Tool to retrieve average minutes per unique player for a given island code and interval. Use when you need daily or more granular (hour/minute) player engagement metrics. Hourly/minute intervals may not be available." }, { "slug": "EPIC_GAMES_GET_ISLAND_FAVORITES", "name": "Get Island Favorites Metrics", "description": "Tool to fetch how many times an island was added to favorites over a time interval. Use when analyzing island popularity trends." }, { "slug": "EPIC_GAMES_GET_ISLAND_METRICS_BY_INTERVAL", "name": "Get Island Metrics by Interval", "description": "Tool to retrieve usage metrics for a Fortnite island aggregated by interval. Use when analyzing island usage over time buckets." }, { "slug": "EPIC_GAMES_GET_ISLAND_MINUTES_PLAYED", "name": "Get Island Minutes Played", "description": "Tool to retrieve total minutes played on an island during a given interval. Use after obtaining the island code to analyze player engagement metrics." }, { "slug": "EPIC_GAMES_GET_ISLAND_PEAK_CCU", "name": "Get Island Peak CCU", "description": "Tool to retrieve peak concurrent users for an island. Use when you need to monitor the highest concurrent users over a specific interval." }, { "slug": "EPIC_GAMES_GET_ISLAND_PLAYS", "name": "Get Island Plays", "description": "Tool to retrieve the number of plays (session starts) for a Fortnite island. Use when you need play metrics for a specific island and time interval." }, { "slug": "EPIC_GAMES_GET_ISLAND_RECOMMENDATIONS", "name": "Get Island Recommendations", "description": "Tool to retrieve the count of player recommendations for an island. Use when you need recommendation metrics over a given interval." }, { "slug": "EPIC_GAMES_GET_ISLAND_RETENTION", "name": "Get Island Retention", "description": "Tool to retrieve day-over-day retention metrics for a Fortnite island. Use when analyzing retention performance by day (only supported for day interval)." }, { "slug": "EPIC_GAMES_GET_ISLAND_UNIQUE_PLAYERS", "name": "Get Island Unique Players", "description": "Tool to retrieve the number of unique players who played an island over a specific interval. Use after obtaining the island code and desired interval." }, { "slug": "EPIC_GAMES_GET_PRESET", "name": "Get Remote Control Preset", "description": "Tool to get details for a specific Remote Control Preset by name. Use after listing or identifying available presets to fetch their configuration including groups, properties, and functions." }, { "slug": "EPIC_GAMES_GET_PRESET_METADATA", "name": "Get Preset Metadata", "description": "Tool to retrieve all metadata entries associated with a preset. Use when you need to inspect metadata of a Remote Control Preset after confirming it exists." }, { "slug": "EPIC_GAMES_GET_PRESET_METADATA_KEY", "name": "Get Preset Metadata Key", "description": "Tool to read a single metadata key's value for a Remote Control Preset. Use when you need to fetch a specific metadata entry after listing presets." }, { "slug": "EPIC_GAMES_GET_PRESET_PROPERTY", "name": "Get Preset Property", "description": "Tool to read the value(s) of a property exposed through a Remote Control Preset. Use when you need to fetch the current state of a specific property from a preset." }, { "slug": "EPIC_GAMES_LIST_BLUEPRINT_CALLABLE_FUNCTIONS", "name": "List Blueprint-Callable Functions", "description": "Tool to list blueprint-callable functions on a UObject. Use when you need to inspect available functions for automation or debugging." }, { "slug": "EPIC_GAMES_LIST_ISLANDS", "name": "List Fortnite Islands", "description": "Tool to list public discoverable Fortnite islands sorted by newest releases first. Use when browsing community-created islands." }, { "slug": "EPIC_GAMES_OPTIONS_REMOTE", "name": "Remote API CORS Preflight", "description": "Tool to perform a CORS preflight OPTIONS request to the Remote Control API. Use when verifying cross-origin HTTP request permissions before making other calls." }, { "slug": "EPIC_GAMES_PUT_OBJECT_CALL", "name": "Call UObject Blueprint Function", "description": "Tool to invoke a Blueprint-callable function on an in-memory UObject. Use after confirming the target object path and function name (e.g., call SetActorLocation to move an actor)." }, { "slug": "EPIC_GAMES_PUT_OBJECT_DESCRIBE", "name": "Describe a UObject", "description": "Tool to describe a UObject. Use when you need metadata of an object identified by its path. Example: Describe UObject with path '/Game/MyMap:PersistentLevel.MyActor'." }, { "slug": "EPIC_GAMES_PUT_OBJECT_EVENT_EXPERIMENTAL", "name": "Wait for UObject Event (Experimental)", "description": "Tool to block until the next specified UObject event occurs. Use when you need to wait for a specific property-change event on a UObject before proceeding. Experimental: this route only returns after the event fires (requires WebControl.EnableExperimentalRoutes=1)." }, { "slug": "EPIC_GAMES_PUT_OBJECT_PROPERTY", "name": "Put UObject Property", "description": "Tool to read or set a UObject's property values. Use when you need to inspect or modify one or more properties of a specified Unreal Engine UObject via Remote Control HTTP API." }, { "slug": "EPIC_GAMES_PUT_OBJECT_THUMBNAIL", "name": "Get Object Thumbnail", "description": "Tool to fetch the Content Browser thumbnail image for a specified asset. Use when you need a preview of the asset's thumbnail." }, { "slug": "EPIC_GAMES_PUT_PRESET_FUNCTION", "name": "Invoke Preset Function", "description": "Tool to invoke a function in a Remote Control Preset. Use after locating the preset and function name." }, { "slug": "EPIC_GAMES_PUT_PRESET_METADATA_KEY", "name": "Put Preset Metadata Key", "description": "Tool to create or update a metadata key on a Remote Control Preset. Use when you need to set or modify metadata value for a preset." }, { "slug": "EPIC_GAMES_PUT_PRESET_PROPERTY", "name": "Update Preset Property", "description": "Tool to update a property exposed through a Remote Control Preset. Use when you need to change the value of a preset’s property after inspecting its metadata." }, { "slug": "EPIC_GAMES_PUT_REMOTE_BATCH", "name": "Batch Remote Control Requests", "description": "Tool to batch multiple Remote Control API calls into a single request. Use when needing to reduce round-trip latency by grouping several API calls into one batch." }, { "slug": "EPIC_GAMES_PUT_REMOTE_CONTROL_SESSION", "name": "Initiate Remote Control Session", "description": "Tool to initiate a Remote Control session. Use when asset operations require an active session before other /remote calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "epic_games_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "basic_profile,friends_list,presence" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "ncscale", "name": "Ncscale", "logo": "https://logos.composio.dev/api/ncscale", "description": "NCScale offers analytics and data management capabilities, potentially helping companies consolidate, process, and visualize information from multiple sources", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NCSCALE_DELETE_LOG_TOKEN", "name": "Delete Log Token", "description": "Tool to delete a specific log token by ID. Use when you need to revoke or remove a log token by its identifier." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ncscale_bearer_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "Your ncScale API access token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "timecamp", "name": "TimeCamp", "logo": "https://logos.composio.dev/api/timecamp", "description": "TimeCamp is a time tracking solution designed to help businesses of all sizes track time for projects to maximize their profits.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TIMECAMP_GET_PROJECTS_LIST", "name": "Get Projects List", "description": "Retrieves a list of all projects from TimeCamp. In TimeCamp's API, projects are represented as tasks. This action fetches all tasks and returns only the root-level tasks (those with no parent_id), which represent projects. Note: This API endpoint requires a paid TimeCamp plan. Free plans do not have API access to tasks/projects. Returns project details including: task_id, name, archived status, color, dates, budget information, and assigned users." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "timecamp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your TimeCamp API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tapform", "name": "Tapform", "logo": "https://logos.composio.dev/api/tapform", "description": "Tapform lets users build and manage forms, automate data collection, and organize submissions, streamlining the way businesses gather and process information", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tapform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to Tapform.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "braintree", "name": "Braintree", "logo": "https://logos.composio.dev/api/braintree", "description": "Braintree is a payment gateway supporting credit card, PayPal, and alternative payment methods, handling e-commerce, subscription, and mobile transactions securely", "category": "payment processing", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "braintree_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Braintree API requests. For more information, visit https://graphql.braintreepayments.com/guides/making_api_calls/#using-graphiql", "required": true, "default": "https://payments.braintree-api.com/graphql" }, { "name": "hostUrl", "displayName": "OAuth2 Base URL", "type": "string", "description": "The OAuth2 base URL for Braintree OAuth2 flow. For more information, visit https://developer.paypal.com/braintree/docs/guides/extend/oauth/overview", "required": true, "default": "https://api.braintreegateway.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "address:create,address:delete,address:find,address:update,apple_pay:manage_web_domains,client_token:generate,credit_card_verification:search,credit_card:expiring_between,customer:create,customer:delete,customer:find,customer:search,customer:update,dispute:accept,dispute:accept/facilitated,dispute:add_evidence,dispute:add_evidence/facilitated,dispute:finalize,dispute:finalize/facilitated,dispute:find,dispute:find/facilitated,dispute:remove_evidence,dispute:remove_evidence/facilitated,dispute:search,dispute:search/facilitated,document_upload:create,merchant_account:all,merchant_account:find,payment_method:create,payment_method:delete,payment_method:find,payment_method:update,payment_method_nonce:create,payment_method_nonce:find,settlement_batch_summary:generate,subscription:cancel,subscription:create,subscription:find,subscription:search,subscription:update,transaction:manage_escrow,transaction:clone,transaction:find,transaction:refund,transaction:sale,transaction:search,transaction:manage_settlement,transaction:void,view_facilitated_transaction_metrics,grant_payment_method,read_facilitated_transactions,shared_vault_transactions" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "piggy", "name": "Piggy", "logo": "https://logos.composio.dev/api/piggy", "description": "Piggy offers cashback and loyalty program integrations for online stores, letting users earn points or discounts and encouraging repeat purchases", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PIGGY_CLAIM_ANONYMOUS_CONTACT", "name": "Claim Anonymous Contact", "description": "Tool to claim an anonymous contact by associating it with a real email address. Use when converting an anonymous contact (with a fictional email) into a verified contact with a real email address." }, { "slug": "PIGGY_CREATE_CONTACT_ATTRIBUTE", "name": "Create Contact Attribute", "description": "Tool to create a custom Contact Attribute. Use when you need to define new fields for contacts after initial setup." }, { "slug": "PIGGY_CREATE_CREDIT_RECEPTION", "name": "Create Credit Reception", "description": "Tool to create a credit reception for a contact. Use when awarding credits to customers based on purchases or fixed amounts." }, { "slug": "PIGGY_CREATE_VOUCHERS_BATCH", "name": "Create Vouchers Batch", "description": "Tool to create a batch of vouchers for a promotion. Use when you need to generate multiple vouchers at once for a specific promotion. Batch processing is asynchronous and returns a PENDING status initially." }, { "slug": "PIGGY_FIND_OR_CREATE_PRODUCTS", "name": "Find or Create Products", "description": "Tool to find an existing product by external_identifier or create a new one if it doesn't exist. Use when you need to ensure a product exists in Piggy's system for loyalty programs or rewards." }, { "slug": "PIGGY_FIND_VOUCHER_BY_CODE", "name": "Find Voucher By Code", "description": "Tool to find a voucher by its unique code. Use when you need to retrieve voucher details, check redemption status, or validate a voucher code." }, { "slug": "PIGGY_GET_CONTACT_AUTH_TOKEN", "name": "Get Contact Auth Token", "description": "Tool to get an auth token for a Contact. Use after obtaining a Contact UUID and needing to verify identity for secure operations." }, { "slug": "PIGGY_GET_CONTACTS_CREDIT_BALANCE", "name": "Get Contact's Credit Balance", "description": "Tool to get a Contact's credit balance. Use when you need to check a contact's current credit balance before processing rewards or promotions." }, { "slug": "PIGGY_LIST_FORMS", "name": "List Forms", "description": "Tool to list all forms in the Piggy account. Use when you need to retrieve available forms for customer interactions." }, { "slug": "PIGGY_LIST_PERKS", "name": "List Perks", "description": "Tool to list all available perks in Piggy. Use when you need to retrieve the catalog of perks that can be associated with contacts or transactions." }, { "slug": "PIGGY_MERGE_CONTACTS", "name": "Merge Contacts", "description": "Merges a source contact into a destination contact in Piggy's CRM. The source contact's data (attributes, balances, transactions) is transferred to the destination contact, and the source contact is removed. This operation is irreversible and processed asynchronously via a job queue. Use this when consolidating duplicate customer records." }, { "slug": "PIGGY_SEND_CONTACT_VERIFICATION_EMAIL", "name": "Send Contact Verification Email", "description": "Send a verification email to a Piggy contact for identity verification. The contact must exist in the system with a configured Contacts Portal. Returns success message with email sent confirmation. Use this when implementing email-based authentication workflows or when contacts need to verify their email address to access the Contacts Portal." }, { "slug": "PIGGY_UPDATE_BOOKINGS", "name": "Update Bookings", "description": "Tool to update an existing booking in Piggy. Use when you need to modify booking details such as party size, status, or company name. Note: Shop and contact cannot be updated after creation." }, { "slug": "PIGGY_UPDATE_CONTACT_IDENTIFIERS", "name": "Update Contact Identifiers", "description": "Tool to update a contact identifier in Piggy. Use when you need to modify the display name or active state of an existing contact identifier. Only the name and active properties can be updated; the identifier value itself cannot be changed." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "piggy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Piggy API key. You can find it in your Piggy account settings under Integrations > API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ring_central", "name": "RingCentral", "logo": "https://logos.composio.dev/api/ring_central", "description": "RingCentral offers cloud-based communication services including voice, video meetings, team messaging, and contact center solutions for businesses of all sizes", "category": "communication", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "ring_central_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Base URL for RingCentral API requests.", "required": true, "default": "https://platform.ringcentral.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ReadAccounts,EditAccounts,ReadMessages,EditMessages,ReadContacts,ReadPresence,SMS,CallControl" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "alchemy", "name": "Alchemy", "logo": "https://logos.composio.dev/api/alchemy", "description": "Alchemy is a blockchain development platform that provides powerful APIs and developer tools for building and scaling Ethereum applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALCHEMY_COMPUTE_RARITY_V3", "name": "Compute NFT Rarity", "description": "Tool to compute the rarity of each attribute for a specific NFT based on its collection. Returns prevalence data for each trait, indicating how common or rare each attribute is compared to other NFTs in the same collection. Use when analyzing NFT rarity for trading decisions, collection analysis, or valuation purposes." }, { "slug": "ALCHEMY_GET_COLLECTION_METADATA", "name": "Get NFT Collection Metadata", "description": "Tool to get metadata for an NFT collection using its marketplace slug (OpenSea, LooksRare, etc). Use when you need collection-level information such as name, description, social links, and floor price. This is useful for discovering collection details without needing the contract address." }, { "slug": "ALCHEMY_GET_COLLECTIONS_FOR_OWNER", "name": "Get Collections for Owner", "description": "Tool to retrieve all NFT collections held by a specified owner address. Use when you need to get a comprehensive view of what NFT collections a wallet owns, including collection metadata, ownership counts, and spam classification. Only supported on Ethereum. Supports pagination for large collections and filtering options to include or exclude spam/airdrops." }, { "slug": "ALCHEMY_GET_CONTRACT_METADATA_BATCH_V3", "name": "Get Contract Metadata Batch V3", "description": "Tool to retrieve metadata for multiple NFT contracts in a single batch request. Use when you need to fetch contract information for several NFT collections at once to improve efficiency and reduce API calls." }, { "slug": "ALCHEMY_GET_CONTRACT_METADATA_V3", "name": "Get Contract Metadata V3", "description": "Tool to get the metadata for an NFT contract including name, symbol, total supply, and token type (ERC721/ERC1155). Use when you need to retrieve comprehensive contract information such as deployer address, deployment block, OpenSea metadata, and collection details." }, { "slug": "ALCHEMY_GET_CONTRACTS_FOR_OWNER_V3", "name": "Get Contracts for Owner (NFT API v3)", "description": "Tool to get all NFT contracts owned by an address with contract metadata. Use when you need to retrieve a comprehensive list of NFT collections held by a specific wallet address, including detailed contract information such as token type, total supply, deployer info, spam classification, and OpenSea metadata. Supports pagination for addresses with large NFT holdings." }, { "slug": "ALCHEMY_GET_FLOOR_PRICE_V3", "name": "Get NFT Floor Price", "description": "Tool to get the floor price for an NFT collection across multiple marketplaces (OpenSea, LooksRare, etc). Use when you need to check the current floor price of an NFT collection or compare prices across different marketplaces. Returns floor price data including price, currency, collection URL, and timestamp of when the price was retrieved." }, { "slug": "ALCHEMY_GET_HISTORICAL_PRICES", "name": "Get Historical Token Prices", "description": "Retrieves historical price data for a token over a specified time range with configurable intervals. Identify the token either by symbol (e.g., ETH, BTC) or by network and contract address. Use this to build price charts, analyze price trends, calculate historical returns, or display historical price information in your application. Important: Provide either symbol OR both network and address (not both methods simultaneously). Time range is specified with start_time and end_time (Unix timestamps or ISO 8601 strings). The interval parameter controls data point granularity (5m, 1h, or 1d)." }, { "slug": "ALCHEMY_GET_NFT_CONTRACTS_BY_ADDRESS", "name": "Get NFT Contracts By Address", "description": "Tool to retrieve NFT contracts associated with one or more wallet addresses across multiple blockchain networks. Use when you need to discover which NFT collections a wallet owns tokens from, across networks like Ethereum, Base, Polygon, Arbitrum, and Optimism. Returns contract details including metadata, spam classification, and OpenSea data." }, { "slug": "ALCHEMY_GET_NFT_METADATA", "name": "Get NFT Metadata", "description": "Tool to retrieve comprehensive metadata for a specific NFT, including contract details, media URLs, attributes, ownership info, and OpenSea data. Use when you need detailed information about a particular NFT token, such as its image, traits, description, or contract metadata." }, { "slug": "ALCHEMY_GET_NFT_METADATA_BATCH", "name": "Get NFT Metadata Batch", "description": "Tool to retrieve metadata for multiple NFTs in a single request (up to 100 NFTs), including contract details, media URLs, attributes, and collection data. Use when you need detailed information about multiple NFT tokens efficiently. More efficient than making individual calls for each NFT." }, { "slug": "ALCHEMY_GET_NFT_SALES_V3", "name": "Get NFT Sales V3", "description": "Retrieves NFT sales that have occurred through on-chain marketplaces using Alchemy's v3 API. Supports Ethereum (Seaport, Wyvern, X2Y2, Blur, LooksRare, Cryptopunks), Polygon (Seaport), and Optimism (Seaport) mainnets. Use this to track NFT sales activity, analyze market trends, monitor specific collections or tokens, and gather comprehensive sales data including prices, fees, and transaction details. Supports flexible filtering by block range, marketplace, contract, token, buyer, seller, and taker role." }, { "slug": "ALCHEMY_GET_NF_TS_FOR_COLLECTION_V3", "name": "Get NFTs for Collection V3", "description": "Retrieves all NFTs in a collection using OpenSea collection slug or contract address. Use when you need to fetch NFTs by collection name rather than contract address. Similar to getNFTsForContract but uses collection slug for easier querying. Supports pagination for large collections." }, { "slug": "ALCHEMY_GET_NF_TS_FOR_CONTRACT", "name": "Get NFTs for Contract", "description": "Retrieves all NFTs for a given NFT contract address. Supports both ERC721 and ERC1155 token standards. Returns detailed NFT data including token IDs, metadata, images, and attributes. Use this to analyze NFT collections, build marketplace features, track collection holdings, or create analytics dashboards. Supports pagination to handle large collections efficiently (returns up to 100 NFTs per request)." }, { "slug": "ALCHEMY_GET_NF_TS_FOR_OWNER", "name": "Get NFTs for Owner", "description": "Tool to get all NFTs currently owned by a given address. Supports ERC721 and ERC1155 tokens on Ethereum and L2s including Polygon, Arbitrum, Optimism, Base. Use when you need to retrieve NFT holdings for an address with optional metadata." }, { "slug": "ALCHEMY_GET_OWNERS_FOR_COLLECTION", "name": "Get Owners for Collection", "description": "Tool to retrieve all owner addresses for a given NFT collection contract. Use when you need to analyze NFT ownership distribution, find all holders of a collection, or build ownership analytics for ERC721 and ERC1155 contracts. Optionally returns token balances per owner." }, { "slug": "ALCHEMY_GET_OWNERS_FOR_CONTRACT", "name": "Get Owners for Contract", "description": "Tool to get all owners of NFTs in a contract with optional token balances. Use when you need to analyze NFT holder distribution, prepare airdrops, or identify token owners for specific collections." }, { "slug": "ALCHEMY_GET_OWNERS_FOR_NFTV3", "name": "Get NFT Owners (v3)", "description": "Tool to retrieve all owners for a specific NFT using Alchemy's v3 API. For ERC-721 tokens returns single owner, for ERC-1155 tokens returns all owners with quantities. Use when you need to identify current ownership of an NFT token." }, { "slug": "ALCHEMY_GET_PORTFOLIO_NF_TS_BY_ADDRESS", "name": "Get Portfolio NFTs By Address", "description": "Tool to fetch NFTs owned by multiple wallet addresses across different blockchain networks. Returns comprehensive NFT metadata including contract details, images, attributes, and ownership information. Use when you need to retrieve NFT portfolio data for wallets across multiple chains." }, { "slug": "ALCHEMY_GET_PRICES_BY_SYMBOL", "name": "Get Token Prices By Symbol", "description": "Tool to get current token prices by symbol (e.g., ETH, USDC, BTC) using aggregated CEX and DEX data. Use when you need real-time cryptocurrency prices in USD or other currencies. Supports up to 25 symbols per request. Note: Response succeeds even if some tokens are missing - check the error field in each result item." }, { "slug": "ALCHEMY_GET_TOKEN_BALANCES", "name": "Get Token Balances", "description": "This tool retrieves ERC20 token balances for a specified Ethereum address. It can either return balances for all tokens an address has ever interacted with or for a specific set of token contract addresses. It is useful for checking token balances for wallets, monitoring ERC20 token holdings, portfolio tracking, and DeFi applications." }, { "slug": "ALCHEMY_GET_TOKEN_BALANCES_BY_ADDRESS", "name": "Get Token Balances By Address", "description": "Tool to get token balances for wallet addresses across multiple networks using Alchemy's Portfolio API. Use when you need lightweight balance checks for one or more addresses without full token metadata. Supports up to 3 address/network pairs per request with pagination for large result sets." }, { "slug": "ALCHEMY_GET_TOKEN_METADATA", "name": "Get Token Metadata", "description": "Retrieves metadata for an ERC-20 token on Ethereum mainnet, including its name, symbol, decimals, and logo URL. This information is essential for displaying token details in user interfaces, calculating token amounts (using decimals), and showing token branding. Use this when you need to: - Display token information to users (name, symbol, logo) - Convert token amounts between human-readable and contract formats (requires decimals) - Build token listings or portfolio displays - Validate or enrich token data Note: Returns empty/null values for invalid or non-token contract addresses." }, { "slug": "ALCHEMY_GET_TOKEN_PRICES_BY_ADDRESS", "name": "Get Token Prices By Address", "description": "Retrieves current token prices by contract address and network from decentralized exchanges (DEXes). Use when you need real-time token price data for specific contract addresses across multiple networks. Price data is aggregated from DEXes only (not CEXes) and weighted by total volume. Supports up to 25 addresses per request across maximum 3 different networks. Returns price in USD by default with timestamp. Response succeeds even if some prices are unavailable." }, { "slug": "ALCHEMY_GET_TOKENS_BY_ADDRESS", "name": "Get Tokens By Address", "description": "Tool to fetch fungible tokens (native, ERC-20, SPL) for multiple wallet addresses across networks. Returns comprehensive token information including balances, metadata (name, symbol, decimals, logo), and current prices. Use when you need complete token portfolio data for wallets across multiple chains (Ethereum, Polygon, Arbitrum, Base, Optimism, Solana, and 30+ EVM chains). Supports up to 2 addresses with 5 networks each per request, with pagination for large result sets." }, { "slug": "ALCHEMY_GET_TRANSACTION_COUNT", "name": "Get Transaction Count", "description": "This tool retrieves the number of transactions sent from a specific address (also known as the nonce). It uses the eth_getTransactionCount endpoint to return the transaction count for an address at a specified block tag (latest, pending, earliest, or a HEX block number), which is essential for determining the nonce for subsequent transactions." }, { "slug": "ALCHEMY_GET_TRANSACTIONS_HISTORY_BY_ADDRESS", "name": "Get Transactions History By Address", "description": "Tool to get transaction history for wallet addresses across multiple networks using Alchemy's Data API. Use when you need to retrieve historical transactions with detailed metadata including logs and internal transactions. Supports pagination for large result sets with a maximum of 50 transactions per request." }, { "slug": "ALCHEMY_INVALIDATE_CONTRACT_V3", "name": "Invalidate NFT Contract Cache", "description": "Tool to invalidate the cached metadata for an NFT contract. Use when you need to force a refresh of stale or outdated NFT metadata on the next request. This is useful after contract updates or when metadata changes are expected." }, { "slug": "ALCHEMY_IS_AIRDROP", "name": "Check If NFT Is Airdrop", "description": "Tool to check if a specific NFT token is marked as an airdrop. Use when you need to determine whether an NFT was distributed via airdrop mechanism. Returns true if the token is identified as an airdrop, false otherwise." }, { "slug": "ALCHEMY_IS_AIRDROP_NFT", "name": "Check If NFT Is Airdrop", "description": "Tool to determine whether an NFT was airdropped to the owner address. Use when you need to identify if a specific token was received as an airdrop rather than through a purchase or mint." }, { "slug": "ALCHEMY_IS_HOLDER_OF_COLLECTION", "name": "Check Collection Ownership", "description": "Tool to check if a wallet address owns any token from a specific NFT collection. Use this when you need to verify collection ownership without retrieving full NFT details, supporting both ERC721 and ERC1155 standards." }, { "slug": "ALCHEMY_IS_HOLDER_OF_CONTRACT", "name": "Check NFT Holder Status", "description": "Tool to check if a wallet address holds any NFTs from a specific contract. Use when you need to verify NFT ownership for access control, membership verification, or token-gating features. Supports both ERC721 and ERC1155 contracts." }, { "slug": "ALCHEMY_IS_SPAM_CONTRACT", "name": "Check if Contract is Spam", "description": "Tool to check if an NFT contract is marked as spam by Alchemy. Use when you need to verify the legitimacy of an NFT contract before interacting with it or displaying its assets. Returns true if the contract is flagged as spam, false if it's valid or hasn't been evaluated yet." }, { "slug": "ALCHEMY_IS_SPAM_CONTRACT_V3", "name": "Check if Contract is Spam (V3)", "description": "Tool to determine if a specific NFT contract is marked as spam by Alchemy. Use when you need to verify the legitimacy of an NFT contract address before interacting with it. Available on paid Alchemy tiers only." }, { "slug": "ALCHEMY_SEARCH_CONTRACT_METADATA_V3", "name": "Search NFT Contract Metadata", "description": "Tool to search for keywords across metadata of all ERC-721 and ERC-1155 smart contracts. Use when you need to find NFT collections by name, symbol, or description keywords. Returns contract addresses, names, symbols, token types, deployer info, and OpenSea metadata for matching collections." }, { "slug": "ALCHEMY_SUMMARIZE_NFT_ATTRIBUTES", "name": "Summarize NFT Attributes", "description": "Retrieves a comprehensive summary of all attributes and traits for NFTs in a collection, including trait counts and distribution statistics. Use this to analyze rarity, understand collection composition, or build trait filters for NFT marketplaces and analytics dashboards." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "alchemy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Alchemy API Key used for authentication to manage your Alchemy account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "guru", "name": "Guru", "logo": "https://logos.composio.dev/api/guru", "description": "Guru is a knowledge management solution that captures, organizes, and shares company information, enabling teams to access expert-verified insights and reduce repetitive questions", "category": "documents", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "guru_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Guru API Key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gumroad", "name": "Gumroad", "logo": "https://logos.composio.dev/api/gumroad", "description": "Gumroad simplifies selling digital goods, physical products, and memberships by offering a streamlined checkout, marketing tools, and direct payout options", "category": "ecommerce", "authSchemes": [ "OAUTH2" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GUMROAD_GET_RESOURCE_SUBSCRIPTIONS", "name": "Get Resource Subscriptions", "description": "Tool to show all active subscriptions of the user for the input resource. Use when you need to review existing webhooks before adding a new one." }, { "slug": "GUMROAD_GET_SALES", "name": "Get Sales", "description": "Tool to retrieve all successful sales by the authenticated user; excludes failed charges, abandoned carts, and page views — conversion rates cannot be derived from this data. Use when you need to list your Gumroad sales, optionally filtering by email, date range, product, or pagination. For high sales volumes, combine product_id and/or after/before filters with page to avoid large unfiltered result sets." }, { "slug": "GUMROAD_GET_USER", "name": "Get User", "description": "Tool to retrieve the authenticated user's data. Use when you need the current user's profile details after authentication." }, { "slug": "GUMROAD_LIST_PRODUCTS", "name": "List Products", "description": "Tool to retrieve all products for the authenticated Gumroad account. Use when you need product IDs for downstream operations like license verification, subscriber retrieval, or offer-code management." }, { "slug": "GUMROAD_SUBSCRIBE_TO_RESOURCE", "name": "Subscribe to Resource", "description": "Tool to subscribe to a resource. Use when you need to receive real-time event webhooks after creating your webhook endpoint." }, { "slug": "GUMROAD_UNSUBSCRIBE_FROM_RESOURCE", "name": "Unsubscribe From Resource", "description": "Tool to unsubscribe from a resource. Use after verifying the subscription ID exists to remove webhook." }, { "slug": "GUMROAD_VERIFY_LICENSE", "name": "Verify License", "description": "Tool to verify a Gumroad license key against a specific product. Use when you need to check if a license key is valid, check usage count, or verify membership entitlement for software licensing or gated content." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gumroad_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "view_profile,edit_products,view_sales,mark_sales_as_shipped" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "appsflyer", "name": "AppsFlyer", "logo": "https://logos.composio.dev/api/appsflyer", "description": "AppsFlyer is a mobile attribution and marketing analytics platform enabling marketers to measure campaign performance, optimize acquisition channels, and protect against fraud for app growth", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appsflyer_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AppsFlyer API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "seismic", "name": "Seismic", "logo": "https://logos.composio.dev/api/seismic", "description": "Seismic is a sales enablement platform offering content management, training, and analytics, ensuring sales teams have the right materials to close deals", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "seismic_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "foursquare", "name": "Foursquare", "logo": "https://logos.composio.dev/api/foursquare", "description": "Foursquare provides location-based search and discovery, offering detailed venue information, place recommendations, and geospatial data for businesses and points of interest worldwide", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FOURSQUARE_AUTOCOMPLETE_PLACES", "name": "Autocomplete places", "description": "Returns autocomplete suggestions for places as the user types their search query. This endpoint provides real-time search suggestions including places, search terms, and geographic areas. Use this action when you need to provide typeahead/autocomplete functionality for place searches, typically after a user has entered at least 3 characters. The results are optimized for interactive search experiences and include text highlighting to show matched portions of the query." }, { "slug": "FOURSQUARE_GET_TRENDING_VENUES", "name": "Get trending venues", "description": "Retrieves venues currently trending in a specified geographic area, sorted by popularity based on recent foot traffic and activity patterns. This action identifies places experiencing increased visitor engagement over a 6-month period, making it ideal for discovering what's hot and popular right now in a given location. The popularity metric ranges from 0 to 1, with higher values indicating stronger trending status based on real-world visitation data. Use this action when you need to find popular venues, discover trending spots, or identify places with high current engagement in a specific area. This is particularly useful for recommendations, local discovery features, or understanding which venues are currently experiencing peak popularity." }, { "slug": "FOURSQUARE_RETRIEVE_NEARBY_PLACES_V3", "name": "Retrieve nearby places v3", "description": "The GetNearbyPlaces endpoint retrieves a list of places near a specified location, primarily supporting check-in use cases and local discovery. It returns points of interest (POIs) including lower quality results not found in the standard Place Search, enhancing location-based experiences with additional data like photos, reviews, and tips. This endpoint is ideal for applications seeking to provide users with a comprehensive view of their surroundings, including less prominent or newer locations. While it offers a broader range of results, it may sacrifice some precision compared to more focused search endpoints. Use this when you want to offer users a diverse array of nearby options, particularly for social check-in features or exploratory local recommendations." }, { "slug": "FOURSQUARE_RETRIEVE_PLACE_PHOTOS_BY_ID", "name": "Retrieve place photos by id", "description": "Retrieves photos associated with a specific place in Foursquare's database. This endpoint allows you to access user-generated images for a particular point of interest (POI) using its unique Foursquare ID (fsq_id). It's useful for enhancing your application with visual content related to locations, such as restaurants, landmarks, or businesses. The endpoint returns photo data that can be used to construct image URLs for display. Keep in mind that the number and quality of photos may vary depending on the popularity and user engagement of the place. This tool should be used when you need to display or analyze visual information about a specific location in your application." }, { "slug": "FOURSQUARE_RETRIEVE_PLACES_BY_ID", "name": "Retrieve places by id", "description": "Retrieves detailed information about a specific place using its unique Foursquare ID (FSQ ID). This endpoint provides comprehensive data about a venue, including its name, address, category, ratings, tips, photos, and other relevant information. It's particularly useful when you need in-depth details about a known location, such as for displaying venue profiles or gathering specific place attributes. The endpoint should be used when you have a valid FSQ ID and require the most up-to-date and complete information about that place. Note that this endpoint focuses on individual place details and does not provide search functionality or lists of multiple venues." }, { "slug": "FOURSQUARE_RETRIEVE_PLACE_TIPS_USING_FSQ_ID", "name": "Retrieve place tips using fsq id", "description": "Retrieves user-generated tips for a specific place in the Foursquare database. This endpoint allows you to fetch valuable insights and experiences shared by Foursquare users about a particular venue. It's useful for enhancing location-based applications with real user feedback, helping users make informed decisions about places they might visit. The endpoint returns a list of tips, which may include information such as the tip text, the user who created it, and potentially a timestamp or rating." }, { "slug": "FOURSQUARE_SEARCH_PLACES_API_REQUEST", "name": "Search places api request", "description": "The GetPlacesSearch endpoint allows you to search for places in the Foursquare database based on various criteria such as location, keywords, and categories. This tool is ideal for discovering nearby points of interest or finding specific venues. It returns a list of places matching the specified parameters, providing essential information about each location. Use this endpoint for location-based features or gathering venue information in a specific area." }, { "slug": "FOURSQUARE_VALIDATE_CREDENTIAL", "name": "Validate API credentials", "description": "Validates Foursquare API credentials by performing a lightweight place search. This action verifies that the provided API key is valid and has proper access to the Foursquare Places API. Use this action when you need to test API connectivity or confirm that authentication credentials are correctly configured before performing other operations. The action returns a success indicator along with the count of places retrieved from a test search, confirming both authentication and API access." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "PlacesApiKeyAuth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Foursquare API key for authentication. Obtain it from your developer portal.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "go_to_webinar", "name": "GoToWebinar", "logo": "https://logos.composio.dev/api/go_to_webinar", "description": "GoToWebinar is a webinar hosting platform that enables businesses to create live and automated online events, engage audiences, and gather analytics for lead nurturing", "category": "webinars", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gotowebinar_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identity:scim.me" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "open_sea", "name": "OpenSea", "logo": "https://logos.composio.dev/api/open_sea", "description": "OpenSea is the world's first and largest NFT marketplace for NFTs and crypto collectibles.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPEN_SEA_BUILD_CRITERIA_OFFER", "name": "Build criteria offer", "description": "Build a portion of a criteria offer including the merkle tree needed to post an offer." }, { "slug": "OPEN_SEA_CANCEL_ORDER", "name": "Cancel order", "description": "Offchain cancel a single order, offer or listing, by its order hash when protected by the SignedZone. Protocol and Chain are required to prevent hash collisions. Please note cancellation is only assured if a fulfillment signature was not vended prior to cancellation." }, { "slug": "OPEN_SEA_CREATE_CRITERIA_OFFER", "name": "Create criteria offer", "description": "Create a criteria offer to purchase any NFT in a collection or which matches the specified trait." }, { "slug": "OPEN_SEA_CREATE_ITEM_OFFER", "name": "Create item offer", "description": "Create an offer to purchase a single NFT (ERC721 or ERC1155)." }, { "slug": "OPEN_SEA_CREATE_LISTING", "name": "Create listing", "description": "List a single NFT (ERC721 or ERC1155) for sale on the OpenSea marketplace." }, { "slug": "OPEN_SEA_FULFILL_LISTING", "name": "Fulfill listing", "description": "Retrieve all the information, including signatures, needed to fulfill a listing directly onchain." }, { "slug": "OPEN_SEA_FULFILL_OFFER", "name": "Fulfill offer", "description": "Retrieve all the information, including signatures, needed to fulfill an offer directly onchain." }, { "slug": "OPEN_SEA_GET_ACCOUNT", "name": "Get account", "description": "Get an OpenSea Account Profile including details such as bio, social media usernames, and profile image." }, { "slug": "OPEN_SEA_GET_ALL_LISTINGS_BY_COLLECTION", "name": "Get all listings by collection", "description": "Get all active, valid listings for a single collection." }, { "slug": "OPEN_SEA_GET_ALL_OFFERS_BY_COLLECTION", "name": "Get all offers by collection", "description": "Get all active, valid offers for the specified collection. This includes individual and criteria offers." }, { "slug": "OPEN_SEA_GET_BEST_LISTING_BY_NFT", "name": "Get best listing by nft", "description": "Get the best listing for an NFT." }, { "slug": "OPEN_SEA_GET_BEST_LISTINGS_BY_COLLECTION", "name": "Get best listings by collection", "description": "Get the cheapest priced active, valid listings on a single collection." }, { "slug": "OPEN_SEA_GET_BEST_OFFER_BY_NFT", "name": "Get best offer by nft", "description": "Get the best offers for an NFT." }, { "slug": "OPEN_SEA_GET_COLLECTION", "name": "Get collection", "description": "Get a single collection including details such as fees, traits, and links." }, { "slug": "OPEN_SEA_GET_COLLECTIONS", "name": "Get collections", "description": "Get a list of OpenSea collections with optional filtering and pagination." }, { "slug": "OPEN_SEA_GET_COLLECTION_STATS", "name": "Get collection stats", "description": "Get stats for a single collection on OpenSea." }, { "slug": "OPEN_SEA_GET_CONTRACT", "name": "Get contract", "description": "Get a smart contract for a given chain and address." }, { "slug": "OPEN_SEA_GET_EVENTS", "name": "Get events", "description": "Get a list of events from OpenSea based on various filters like timestamps and event types." }, { "slug": "OPEN_SEA_GET_LISTINGS", "name": "Get listings", "description": "Get the complete set of active, valid listings." }, { "slug": "OPEN_SEA_GET_NFT", "name": "Get nft", "description": "Get metadata, traits, ownership information, and rarity for a single NFT." }, { "slug": "OPEN_SEA_GET_ORDER", "name": "Get order", "description": "Get a single order, offer or listing, by its order hash. Protocol and Chain are required to prevent hash collisions." }, { "slug": "OPEN_SEA_GET_PAYMENT_TOKEN", "name": "Get payment token", "description": "Get a smart contract for a given chain and address." }, { "slug": "OPEN_SEA_GET_TRAITS", "name": "Get traits", "description": "Get the traits in a collection." }, { "slug": "OPEN_SEA_REFRESH_NFT_METADATA", "name": "Refresh nft metadata", "description": "Refresh metadata for a single NFT." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "opensea_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your OpenSea API key. You can obtain this from your OpenSea developer settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "customer_io", "name": "Customer Io", "logo": "https://logos.composio.dev/api/customer_io", "description": "Customer.io is a customer engagement platform providing automated messaging, segmentation, and personalized campaigns through email, SMS, and push notifications to boost conversions", "category": "marketing automation", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "customer_io_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Your Customer.io username, typically your email address", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Customer.io password", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "customer_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key for authenticating with the Customer.io API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "humanloop", "name": "Humanloop", "logo": "https://logos.composio.dev/api/humanloop", "description": "Humanloop helps developers build and refine AI applications, offering user feedback loops, model training, and data annotation to iterate on language model performance", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HUMANLOOP_CREATE_PROJECT", "name": "Create Project", "description": "This tool creates a new project in Humanloop. It is an independent action that generates a project by accepting a project's name (required), an optional description, and an optional organization_id. Upon execution, it returns details of the created project, including the project's id, name, description, created_at timestamp, and organization_id." }, { "slug": "HUMANLOOP_DELETE_PROJECT", "name": "Delete Project", "description": "This tool allows you to delete a specific project from your Humanloop organization. The deletion is permanent and cannot be undone. All associated data, including sessions, datapoints, and evaluations linked to the project, will be permanently removed." }, { "slug": "HUMANLOOP_LIST_EXPERIMENTS", "name": "List Experiments", "description": "This tool retrieves an array of experiments associated with a specific project in Humanloop. It requires a project_id (starting with 'pr_') and returns details including experiment_id, name, description, creation timestamp, status, configuration details, and metrics/results. It is useful for monitoring experiments, analyzing results, tracking model configurations, and comparing experimental setups." }, { "slug": "HUMANLOOP_LIST_SESSIONS", "name": "List Sessions", "description": "This tool retrieves a paginated list of sessions for a specific project in Humanloop. It requires a project_id (and optionally, page and size for pagination) and returns session details such as id, reference_id, project information, datapoints_count, first_inputs, last_output, created_at, and updated_at. This enables users to monitor and analyze historical project interactions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "humanloop_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Humanloop API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "auth0", "name": "Auth0", "logo": "https://logos.composio.dev/api/auth0", "description": "Auth0 delivers a flexible identity and access management solution, offering authentication, authorization, and secure login flows to help developers protect applications across various platforms effectively", "category": "security & identity tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "auth0_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read:users,read:refresh_tokens,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Tenant Base URL", "type": "string", "description": "The base URL for Auth0 API requests. For more information, visit https://auth0.com/docs/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoominfo", "name": "Zoominfo", "logo": "https://logos.composio.dev/api/zoominfo", "description": "ZoomInfo is a go-to-market intelligence platform that provides AI-powered B2B data and sales intelligence to help GTM teams find in-market buyers, build pipeline, and close deals faster.", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOOMINFO_ENRICH_COMPANY", "name": "Company Enrich", "description": "Company Enrich" }, { "slug": "ZOOMINFO_ENRICH_CONTACT", "name": "Contact Enrich", "description": "Contact Enrich" }, { "slug": "ZOOMINFO_ENRICH_INTENT", "name": "Intent Enrich", "description": "Intent Enrich" }, { "slug": "ZOOMINFO_ENRICH_LOCATION", "name": "Location Enrich", "description": "Location Enrich" }, { "slug": "ZOOMINFO_ENRICH_NEWS", "name": "News Enrich", "description": "News Enrich" }, { "slug": "ZOOMINFO_ENRICH_SCOOP", "name": "Scoop Enrich", "description": "Scoop Enrich" }, { "slug": "ZOOMINFO_ENRICH_TECHNOLOGY", "name": "Technology Enrich", "description": "Technology Enrich" }, { "slug": "ZOOMINFO_SEARCH_COMPANY", "name": "Company Search", "description": "Returns a list of Companies from ZoomInfo's data which meet the specified search criteria." }, { "slug": "ZOOMINFO_SEARCH_COMPANY_INPUT", "name": "Company Search Inputs", "description": "Returns a list of fields you can use as input for the Company Search Action." }, { "slug": "ZOOMINFO_SEARCH_CONTACT", "name": "Contact Search", "description": "Returns a list of Contacts from ZoomInfo's data that meet the specified search criteria." }, { "slug": "ZOOMINFO_SEARCH_CONTACT_INPUT", "name": "Contact Search Inputs", "description": "Returns a list of fields you can use as input for the Contact Search Action." }, { "slug": "ZOOMINFO_SEARCH_INTENT_INPUT", "name": "Intent Search Inputs", "description": "Returns a list of fields you can use as input for the Intent Action." }, { "slug": "ZOOMINFO_SEARCH_NEWS", "name": "News Search", "description": "Returns a list of news articles from ZoomInfo's data which meet the specified search criteria. All inputs are optional, but you must use at least one input parameter to generate a successful response." }, { "slug": "ZOOMINFO_SEARCH_NEWS_INPUT", "name": "News Search Inputs", "description": "Returns a list of fields you can use as input for the News Search endpoint." }, { "slug": "ZOOMINFO_SEARCH_SCOOP", "name": "Scoop Search", "description": "Returns a list of Scoops from ZoomInfo's data which meet the specified search criteria." }, { "slug": "ZOOMINFO_SEARCH_SCOOP_INPUT", "name": "Scoop Search Inputs", "description": "Returns a list of fields you can use as input for the Scoop Search Action." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zoominfo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "api:account-summary:read,api:audience:manage,api:audience:read,api:audience-member:manage,api:audience-member:read,api:data:contact,api:data:company,api:data:scoops,api:data:news,api:data:intent" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "gong", "name": "Gong", "logo": "https://logos.composio.dev/api/gong", "description": "Gong is a platform for video meetings, call recording, and team collaboration.", "category": "analytics", "authSchemes": [ "BASIC", "OAUTH2" ], "toolCount": 58, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GONG_ADD_CALL_MEDIA_V2_CALLS_ID_MEDIA", "name": "Add call media", "description": "Adds a call media, recorded by a telephony system (PBX) or other media recording facility. Gong accepts call recordings in various audio and video file formats, including WAV, MP3, MP4, MKV and FLAC. If uploading a dual-channel (stereo) file separated by speaker, make sure to specify which channel corresponds to the company team member (rep) in the parties/mediaChannelId parameter of the Add New Call operation. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:calls:create'." }, { "slug": "GONG_ADD_NEW_CALL_V2_CALLS", "name": "Add new call v2 calls", "description": "When using this endpoint, either provide a downloadMediaUrl or use the returned callId in a follow-up request to /v2/calls/{id}/media to upload the media file. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:calls:create'." }, { "slug": "GONG_AGGREGATE_ACTIVITY_BY_PERIOD_VIA_API", "name": "Aggregate activity by period via api", "description": "Lists the aggregated activity of multiple users within the Gong system for each time period within the defined date range. This endpoint returns multiple records, one for each user. For each user there are items for every time period in the date range, including statistics about the user's activity. Records are returned only for users with activity in the range. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:stats:user-actions'." }, { "slug": "GONG_AGGREGATE_USER_ACTIVITY_STATISTICS", "name": "Aggregate user activity statistics", "description": "Lists the activity of multiple users within the Gong system during a defined period. Given the period, this endpoint returns multiple records, one for each user, with an applicable activity during the period. Each record includes statistics about the user's activity. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:stats:user-actions'." }, { "slug": "GONG_ASSIGN_PROSPECTS_TO_FLOW", "name": "Assign prospects to flow", "description": "Use this endpoint to assign a number of prospects to a flow. Prospects can be contacts or leads in your CRM. Generate a list of comma separated CRM Ids of the prospects you want to add to a flow. The flowInstanceOwnerEmail parameter is the email address of the Gong user who set up the flow instance and owns the flow to-dos. You can assign up to 200 prospects to a flow in a single request. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:flows:write'." }, { "slug": "GONG_CREATE_ACTIVITY_SCORECARDS_REPORT", "name": "Retrieve activity scorecards report", "description": "Retrieve all the answers for the scorecards that were reviewed during a specified date range, for calls that took place during a specified date range, for specific scorecards or for specific reviewed users. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:stats:scorecards'." }, { "slug": "GONG_CREATE_A_NEW_GONG_MEETING_V2_MEETINGS", "name": "Create a new gong meeting v2 meetings", "description": "When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:meetings:user:create'." }, { "slug": "GONG_CREATE_PERMISSION_PROFILE_V2_PERMISSION_PROFILE", "name": "Create permission profile v2 permission profile", "description": "Create a permission profile in a given workspace." }, { "slug": "GONG_DATA_PRIVACY_FOR_PHONE_NUMBER", "name": "Data privacy for phone number", "description": "Shows the elements in the Gong system that reference the given phone number. Given a phone number, this endpoint returns details of any leads or contacts with this phone number and their associated calls and email messages. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:data-privacy:read'." }, { "slug": "GONG_DELETE_A_GENERIC_CRM_INTEGRATION_V2_CRM_INTEGRATIONS", "name": "Delete a generic CRM integration", "description": "Deletes an existing generic CRM integration from the Gong platform. This endpoint asynchronously removes a CRM integration and all its associated CRM objects (Accounts, Contacts, Deals, Leads, and Users). Use this when you want to disconnect a previously established integration between Gong and a CRM system. IMPORTANT: This endpoint only works with generic CRM integrations created via the 'register_crm_integration' action. It does NOT delete native integrations (e.g., Salesforce, HubSpot) that were set up directly through Gong's UI. The deletion is permanent and cannot be undone, so use with caution. This operation will affect data synchronization and may impact existing analytics or reports that rely on the integrated CRM data. Before deletion, you can retrieve existing integration details using the 'get_crm_integration_details' action to verify the integration ID." }, { "slug": "GONG_DELETE_MEETING", "name": "Delete Meeting", "description": "Deletes a Gong meeting created via the Meetings API (Beta). Use this to remove a scheduled meeting by providing its unique meeting ID and the organizer's email address. Note: This endpoint is for meetings created through Gong's Meetings API, not for recorded calls accessible via the Calls API. Returns organizer email and request ID upon successful deletion." }, { "slug": "GONG_DELETE_USERS_FROM_CALL_ACCESS_LIST", "name": "Delete users from call access list", "description": "Remove individual user access from calls. The request can only remove access previously given by the /v2/calls/users-access API. If a given user does not have access to the call, they will be unaffected. If a given user does have access to the call, but not through the public API (for example if the call was shared with the user), the user's access will remain unchanged. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:call-user-access:write'." }, { "slug": "GONG_ERASE_DATA_FOR_EMAIL_ADDRESS", "name": "Erase data for email address", "description": "Erase all data associated with an email address from Gong (GDPR compliance). This endpoint permanently deletes from the Gong system: - All calls where the email address appears (as lead, contact, attendee, or speaker) - All email messages sent to or from the address - All leads or contacts with this email address **IMPORTANT NOTES:** - The deletion is NOT immediate and may take several hours to complete - Has a data integrity protection mechanism to prevent deletion of abnormal number of objects - Delete the data from your CRM and email system BEFORE this operation to prevent re-import - If deletion fails, contact support at help@gong.io - Requires Bearer token scope: 'api:data-privacy:delete' **CAUTION:** This is a destructive operation that cannot be undone." }, { "slug": "GONG_ERASE_DATA_FOR_PHONE_NUMBER", "name": "Erase data for phone number", "description": "Given a phone number, this endpoint deletes from the Gong system any leads or contacts with a matching phone number or mobile phone number. Email messages sent to or from these leads/contacts are deleted. Calls where the leads/contacts appear are deleted. The deletion is not immediate, and may take several hours to complete. This endpoint contains a data integrity protection mechanism to prevent the deletion of an abnormal number of objects. If the deletion fails please contact support at help@gong.io Delete the data from your CRM and email system before performing this operation so that private data is not re-imported into Gong. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:data-privacy:delete'." }, { "slug": "GONG_FETCH_ALL_PERMISSION_PROFILES", "name": "Fetch all permission profiles", "description": "Returns a list of all permission profiles. The listing is in the alphabetical order of the profile names." }, { "slug": "GONG_GET_CALL_BY_ID", "name": "Get Call By ID", "description": "Tool to fetch specific call metadata by call ID. Use when you need to retrieve detailed information about a specific call using Gong's unique identifier." }, { "slug": "GONG_GET_CALL_TRANSCRIPT", "name": "Get Call Transcript", "description": "Tool to retrieve call transcripts from Gong. Use when you need to access the text content of calls with speaker information, timestamps, and topic categorization. Requires either a date range or specific call IDs to filter results." }, { "slug": "GONG_GET_CRM_INTEGRATION_DETAILS", "name": "Get Crm Integration Details", "description": "Retrieves details of generic CRM integrations registered with Gong. This endpoint returns generic CRM integrations that were set up using the PUT /v2/crm/integrations endpoint. It does NOT return native integrations (e.g., SALESFORCE, HubSpot) that are configured through Gong's UI. Note: Gong allows only one active CRM integration at a time (either generic or native). If a native integration is active, you cannot register a generic integration until the native one is disconnected. Returns an empty list if no generic CRM integrations exist. Required OAuth scope: 'api:crm:integrations:read'" }, { "slug": "GONG_GET_CRM_OBJECTS_V2_CRM_ENTITIES", "name": "Get crm objects v2 crm entities", "description": "Retrieves specific CRM objects by their IDs from Gong's CRM integration. Use this endpoint to fetch detailed information about CRM entities (accounts, contacts, deals, or leads) that have been uploaded to Gong through a registered CRM integration. This is particularly useful during development to verify that CRM objects are uploaded and processed correctly. Prerequisites: - A registered CRM integration (use the register CRM integration endpoint first) - CRM objects must be uploaded to Gong before they can be retrieved - You need the specific CRM IDs of the objects you want to fetch The response includes a crmObjectsMap containing the requested CRM objects with their fields and values as defined in your CRM system." }, { "slug": "GONG_GET_FLOW_PROSPECTS", "name": "Get Flow Prospects", "description": "Tool to retrieve Gong Engage flows assigned to specified prospects. Use when you need to get flow instance IDs and details for specific CRM prospect IDs. Requires 'api:flows:read' scope." }, { "slug": "GONG_GET_INTERACTION_STATISTICS", "name": "Get Interaction Statistics", "description": "Tool to retrieve interaction trend statistics for users based on calls with Whisper enabled. Use when analyzing user interaction patterns, measuring engagement metrics, or tracking communication behaviors over a specified date range. Returns metrics like interactivity, question rate, longest monologue, and patience levels." }, { "slug": "GONG_GET_PERMISSION_PROFILE", "name": "Get permission profile", "description": "Returns a permission profile." }, { "slug": "GONG_GET_REQUEST_STATUS_V2_CRM_REQUEST_STATUS", "name": "Get CRM Request Status", "description": "The GetCRMRequestStatus endpoint retrieves the current status of CRM integration requests in the Gong platform. It allows users to check the progress and outcome of operations related to CRM data uploads, synchronization, or other CRM-related processes. This endpoint is particularly useful for monitoring the health and progress of CRM integrations, troubleshooting issues, and ensuring data consistency between Gong and connected CRM systems. It should be used when you need to verify if a CRM integration request has been completed, is still in progress, or has encountered any errors. The endpoint does not modify any data and is intended for status checking only. Note that the specific details returned may vary depending on the type and complexity of the CRM integration request being queried." }, { "slug": "GONG_GET_USER_BY_ID", "name": "Get User By ID", "description": "Tool to retrieve individual user details by user ID. Use when you need to fetch specific user information including profile data, settings, and organizational details." }, { "slug": "GONG_GET_USER_SETTINGS_HISTORY", "name": "Get User Settings History", "description": "Tool to retrieve historical changes to a user's settings. Use when you need to track capability modifications for a specific user identified by their Gong ID." }, { "slug": "GONG_LIST_ALL_COACHING_METRICS_V2_COACHING", "name": "List all coaching metrics v2 coaching", "description": "List all of the coaching metrics of a manager. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:coaching:read'." }, { "slug": "GONG_LIST_ALL_COMPANY_WORKSPACES_V2_WORKSPACES", "name": "List all company workspaces v2 workspaces", "description": "Returns a list of all workspaces including their details. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:workspaces:read'." }, { "slug": "GONG_LIST_ALL_USERS_V2_USERS", "name": "List all users v2 users", "description": "List all of the company's users. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:users:read'." }, { "slug": "GONG_LIST_CALL_OUTCOMES", "name": "List Call Outcomes", "description": "Tool to retrieve all available call outcomes defined in Gong. Use when you need to list all call outcome configurations including their categories, sentiments, and automation settings." }, { "slug": "GONG_LIST_FLOW_FOLDERS", "name": "List Flow Folders", "description": "Tool to list all Gong Engage flow folders with visibility types. Use when you need to retrieve company flow folders, personal folders, and folders shared with a specific user." }, { "slug": "GONG_LIST_FOLDER_CALLS", "name": "List Folder Calls", "description": "Given a folder id, this endpoint retrieves a list of calls in it. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:library:read'." }, { "slug": "GONG_LIST_GONG_ENGAGE_FLOWS_V2_FLOWS", "name": "List gong engage flows v2 flows", "description": "Engage flows have the following visibility types: * Company: visible to everyone in the company, can only be edited by users with edit permissions. * Personal: reps can set up their own flows which are only available to them. * Shared: reps can share a flow with other reps. Those reps can then add leads to the flow. This endpoint returns all company flows, together with personal flows and flows shared with the user specified in the flowOwnerEmail parameter. When accessed through a Bearer token authorization method, use the 'api:flows:read' scope." }, { "slug": "GONG_LIST_SCHEMA_FIELDS_V2_CRM_ENTITY_SCHEMA", "name": "List schema fields v2 crm entity schema", "description": "Retrieves schema fields for a specific CRM object type within a Generic CRM integration. Returns field metadata including names, data types (STRING, NUMBER, PICKLIST, etc.), labels, reference relationships, and picklist values for ACCOUNT, CONTACT, DEAL, or LEAD objects. IMPORTANT: Only works with Generic CRM integrations created via /v2/crm/integrations API. Does NOT work with native integrations (Salesforce, HubSpot, Dynamics 365). Required: integrationId (from Generic CRM integration creation), objectType (ACCOUNT/CONTACT/DEAL/LEAD)." }, { "slug": "GONG_LIST_SCORECARDS", "name": "List Scorecards", "description": "Tool to retrieve all scorecards within the Gong system. Use when you need to list all scorecard configurations and their associated assessment questions." }, { "slug": "GONG_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve Engage tasks assigned to a specific user with filtering options. Use when you need to list tasks by status, action type, and other criteria. Requires 'api:tasks:read' scope." }, { "slug": "GONG_LIST_USERS_BY_FILTER_V2_USERS_EXTENSIVE", "name": "List users by filter v2 users extensive", "description": "List multiple Users. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:users:read'." }, { "slug": "GONG_MANAGE_USER_CALL_ACCESS", "name": "Get user call access", "description": "Retrieves a list of users who have been granted individual access to specific calls through the API. This endpoint returns only users with explicit API-granted access and doesn't include users who have access through other means (such as being sharing recipients or having access through permission profiles). When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:call-user-access:read'." }, { "slug": "GONG_POST_A_DIGITAL_INTERACTION_V2_DIGITAL_INTERACTION", "name": "Post a digital interaction v2 digital interaction", "description": "When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:digital-interactions:write'." }, { "slug": "GONG_POST_DAY_BY_DAY_ACTIVITY_STATS", "name": "Post day by day activity stats", "description": "Retrieve the daily activity of multiple users within the Gong system for a range of dates. This endpoint returns records including statistics about each user's activity, on the daily level. Records are returned only for users with activity in the range. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:stats:user-actions:detailed'." }, { "slug": "GONG_REGISTER_CRM_INTEGRATION", "name": "Register Crm Integration", "description": "Updates an existing CRM integration in the Gong platform. This endpoint allows you to modify the details of a previously set up integration between Gong and your Customer Relationship Management (CRM) system. It's primarily used for changing the integration's name or reassigning the ownership to a different team member. This operation is crucial for maintaining accurate and up-to-date integration configurations, especially when there are changes in your organization's structure or integration strategies. Note that this endpoint only updates the integration metadata and does not affect the actual data synchronization between Gong and your CRM." }, { "slug": "GONG_REPORT_CONTENT_SHARE_EVENT", "name": "Report Content Share Event", "description": "Tool to push content share engagement events to Gong's activity timeline. Use when documenting that a Gong user shared content with external participants such as contracts or proposals." }, { "slug": "GONG_REPORT_CONTENT_VIEW_EVENT", "name": "Report Content View Event", "description": "Tool to log content view engagement events to Gong's activity timeline. Use when tracking external participants viewing shared content like documents or presentations." }, { "slug": "GONG_REPORT_CUSTOM_ENGAGEMENT_EVENT", "name": "Report Custom Engagement Event", "description": "Report custom engagement events to Gong's activity timeline. Use this action to track when external participants (prospects, customers) engage with content such as viewing documents, signing contracts, attending webinars, or downloading materials. The events appear in Gong's activity timeline and help track customer engagement. Required fields: reportingSystem (identifier for your system), eventTimestamp (ISO-8601 format), and actor information (at minimum actor__email and actor__name) to identify who performed the action. Common use cases: Document viewed, contract signed, webinar attended, presentation downloaded, proposal opened. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:engagement-data:write'." }, { "slug": "GONG_RETRIEVE_CALL_DATA_BY_DATE_RANGE_V2_CALLS", "name": "Retrieve call data by date range v2 calls", "description": "List calls that took place during a specified date range. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:calls:read:basic'." }, { "slug": "GONG_RETRIEVE_DATA_PRIVACY_INFO_FOR_EMAIL_ADDRESS", "name": "Retrieve data privacy info for email address", "description": "Retrieves data privacy information for a third-party email address. Shows all elements in the Gong system that reference the given email address, including calls, email messages, meetings, customer data, and engagement events. This endpoint is designed for third-party privacy requests (e.g., customers, prospects, or external contacts) and will reject internal Gong user email addresses. When accessed through a Bearer token authorization, this endpoint requires the scope 'api:data-privacy:read'." }, { "slug": "GONG_RETRIEVE_FILTERED_CALL_DETAILS", "name": "Retrieve filtered call details", "description": "Lists detailed call data for calls that took place during a specified date range, have specified call IDs or hosted by specified users. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:calls:read:extensive'. Moreover, clients requesting media download URLs by the contentSelector.exposedFields.media field should also have the scope 'api:calls:read:media-url'." }, { "slug": "GONG_RETRIEVE_LIBRARY_FOLDERS_V2_LIBRARY_FOLDERS", "name": "Retrieve library folders v2 library folders", "description": "Use this endpoint to retrieve a list of public library folders. We do not allow retrieval of either private or archived folders. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:library:read'." }, { "slug": "GONG_RETRIEVE_LOGS_DATA_BY_TYPE_AND_TIME_RANGE_V2_LOGS", "name": "Retrieve logs data by type and time range v2 logs", "description": "List log entries that took place during a specified time range. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:logs:read'." }, { "slug": "GONG_RETRIEVE_MANUAL_CRM_CALL_ASSOCIATIONS", "name": "Retrieve manual crm call associations", "description": "Returns a list of all calls that were manually associated or re-associated with CRM account and deal/opportunity since a given time. Actions will be listed in the ascending order of their timing. Notice if a call was associated and later re-associated the API will return both events. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:crm-calls:manual-association:read'." }, { "slug": "GONG_RETRIEVE_TRACKER_DETAILS_V2_SETTINGS_TRACKERS", "name": "Retrieve tracker details v2 settings trackers", "description": "Retrieves details of all keyword trackers in the system or in a given workspace. When accessed through a Bearer token authorization method, this endpoint requires the 'api:settings:trackers:read' scope." }, { "slug": "GONG_RETRIEVE_TRANSCRIPTS_OF_CALLS_V2_CALLS_TRANSCRIPT", "name": "Retrieve transcripts of calls v2 calls transcript (Deprecated)", "description": "DEPRECATED: Use GONG_GET_CALL_TRANSCRIPT instead. Returns transcripts for calls that took place during the specified date period. If call IDs are specified, only transcripts for calls with those IDs that took place during the time period are returned. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:calls:read:transcript'." }, { "slug": "GONG_RETRIEVE_USERS_FROM_PERMISSION_PROFILE", "name": "Retrieve users from permission profile", "description": "Returns a list of all users whose access is controlled by the given permission profile. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:users:read'." }, { "slug": "GONG_SET_USER_CALL_ACCESS", "name": "Set User Call Access", "description": "Give individual users access to calls. If a user already has access (perhaps the call was shared with them, or they have access through their permission profiles) the request will have no effect. When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:call-user-access:write'." }, { "slug": "GONG_UNASSIGN_FLOWS_BY_CRM_ID", "name": "Unassign Flows By CRM ID", "description": "Tool to unassign flows from prospects by their CRM Prospect ID. Use when you need to remove a prospect from specific flows or all flows in Gong Engage." }, { "slug": "GONG_UPDATE_A_GONG_MEETING_V2_MEETINGS_MEETING_ID", "name": "Update a gong meeting v2 meetings meetingid", "description": "When accessed through a Bearer token authorization method, this endpoint requires the scope 'api:meetings:user:update'." }, { "slug": "GONG_UPDATE_PERMISSION_PROFILE_V2_PERMISSION_PROFILE", "name": "Update permission profile v2 permission profile", "description": "Update a permission profile." }, { "slug": "GONG_UPLOAD_CRM_OBJECTS_V2_CRM_ENTITIES", "name": "Upload crm objects v2 crm entities", "description": "Uploads CRM entity data to Gong via LDJSON file. Use this to insert, update, or delete CRM entities (Accounts, Contacts, Deals, Leads, Stages, Business Users) in Gong's platform. The file should be in LDJSON format (Line-Delimited JSON) where each line is a separate JSON object representing one entity. Each entity object must include 'objectId' (unique CRM ID), 'objectType' (matching the objectType parameter), and 'fields' (array of name-value pairs for entity attributes). Maximum file size is 200MB. After upload, use the returned requestId with /v2/crm/request-status to check processing status. Requires 'api:crm:upload' scope and a registered CRM integration (via /v2/crm/integrations)." }, { "slug": "GONG_VALIDATE_MEETING_INTEGRATION", "name": "Validate Meeting Integration", "description": "Validates Gong meeting integration status for one or more users by their email addresses. This endpoint checks if users have their meeting integration properly configured in Gong. Returns status information including whether users exist, if their integration is valid, and any error messages with help/fix URLs if issues are found. Use this when you need to: - Verify meeting integration is working for specific users - Diagnose meeting recording or import issues - Check if users are properly set up to use Gong meeting features - Troubleshoot why meetings aren't being captured for certain users Note: The API returns an empty array when all specified users have valid integration or when users don't have meeting integration issues to report." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gong_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "api:calls:read:transcript,api:provisioning:read,api:workspaces:read,api:meetings:user:delete,api:crm:get-objects,api:data-privacy:delete,api:crm:schema,api:flows:write,api:crm:upload,api:meetings:integration:status,api:calls:read:extensive,api:meetings:user:update,api:integration-settings:write,api:settings:scorecards:read,api:stats:scorecards,api:stats:interaction,api:stats:user-actions,api:crm:integration:delete,api:calls:read:basic,api:calls:read:media-url,api:tasks:read,api:digital-interactions:write,api:crm:integrations:read,api:library:read,api:data-privacy:read,api:users:read,api:tasks:write,api:logs:read,api:calls:create,api:meetings:user:create,api:stats:user-actions:detailed,api:settings:trackers:read,api:crm:integration:register,api:provisioning:read-write,api:engagement-data:write,api:permission-profile:read,api:permission-profile:write,api:flows:read,api:crm-calls:manual-association:read,api:call-outcomes:read" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Base URL", "type": "string", "description": "Where Gong API requests go. Keep the default https://api.gong.io unless your company has its own Gong address like https://company-17.api.gong.io — ask your Gong admin.", "required": true, "default": "https://api.gong.io" } ], "optional": [] } } }, { "mode": "BASIC", "name": "gong_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Where Gong API requests are sent. Most accounts can keep the default https://api.gong.io; if yours differs, find it in Gong under Company settings → Ecosystem → API.", "required": true, "default": "https://api.gong.io" }, { "name": "username", "displayName": "Access Key", "type": "string", "description": "Your Gong API access key, half of the key/secret pair a Gong admin creates at Settings → Ecosystem → API → Get API Key. Only Gong admins can create keys.", "required": true, "default": null }, { "name": "password", "displayName": "Access Secret", "type": "string", "description": "The secret paired with your access key. Gong shows it only once when the key is created (Settings → Ecosystem → API); if lost, create a new key pair.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "placekey", "name": "Placekey", "logo": "https://logos.composio.dev/api/placekey", "description": "Placekey standardizes location data by assigning unique IDs to physical addresses, simplifying address matching and enabling data sharing across platforms", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLACEKEY_GET_GEOCODE_FROM_ADDRESS", "name": "Get Geocode From Address", "description": "This tool retrieves geocode information (latitude and longitude) for a given address using the Placekey API. It accepts address components (street_address, city, region, postal_code, iso_country_code) and returns geocode data including the unique Placekey identifier and location details." }, { "slug": "PLACEKEY_GET_PLACEKEY", "name": "Get Placekey", "description": "Tool to get a Placekey for a single location using address, coordinates, or POI details. Use when you need to obtain a unique identifier for a physical place with support for address fields, coordinates, location name, and optional metadata for enhanced matching." }, { "slug": "PLACEKEY_GET_PLACEKEY_FROM_ADDRESS", "name": "Get placekey from address", "description": "Convert a physical address into a unique Placekey identifier. The Placekey is a universal standard identifier for any physical place that helps in location matching, enrichment, and deduplication." }, { "slug": "PLACEKEY_GET_PLACEKEYS_BULK", "name": "Get Placekeys Bulk", "description": "Get Placekeys for multiple locations in bulk (up to 100 queries per request). All queries must have the same iso_country_code. Supports address, coordinates, and POI queries with optional query_id for tracking. Returns an array of Placekey results for each query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "placekey_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Placekey API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lastpass", "name": "Lastpass", "logo": "https://logos.composio.dev/api/lastpass", "description": "LastPass is a password manager that securely stores credentials, autofills logins, and offers multi-factor authentication for personal and enterprise users", "category": "security & identity tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "lastpass_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write,delete,user" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "datagma", "name": "Datagma", "logo": "https://logos.composio.dev/api/datagma", "description": "Datagma delivers data intelligence and analytics, assisting companies in discovering market insights, tracking competitive metrics, and strategizing growth opportunities", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATAGMA_DETECT_JOB_CHANGE", "name": "Detect Job Change", "description": "Tool to detect if a contact changed jobs. Use when verifying a contact’s current employment details by email." }, { "slug": "DATAGMA_ENRICH_PERSON_OR_COMPANY", "name": "Enrich Person or Company", "description": "Enrich person or company data using LinkedIn URLs, emails, domains, or names. Returns enriched data including: contact information, LinkedIn profiles, company details, work experience, education, phone numbers (with phoneFull), and company metrics. Input types: LinkedIn profile URL (~100% success), email (~60% success), name+company (~90% success), company domain/name, or SIREN number (French companies)." }, { "slug": "DATAGMA_FIND_WORK_EMAIL", "name": "Find Work Email", "description": "Find verified work email address for a person using their name and company. Returns a professionally verified email address with validation metadata including SMTP checks and MX records. Requires either fullName or firstName+lastName, plus company domain or LinkedIn company slug." }, { "slug": "DATAGMA_GET_CREDITS", "name": "Get Credits", "description": "Get the current credit balance for the authenticated Datagma API account. Use this to check how many API credits remain before making enrichment calls." }, { "slug": "DATAGMA_GET_TWITTER_BY_EMAIL", "name": "Get Twitter Profile By Email", "description": "Retrieve Twitter account information associated with an email address. This action looks up Twitter username and display name for a given email address using Datagma's enrichment database. Returns Twitter username, display name, and the queried email if a match is found, or status 'NOT_FOUND' if no Twitter account is associated with the email. Use this when you need to: - Find someone's Twitter handle from their email address - Verify if an email has an associated Twitter account - Enrich contact data with social media information" }, { "slug": "DATAGMA_GET_TWITTER_BY_USERNAME", "name": "Get Twitter Profile by Username", "description": "Enrich Twitter profile data using Datagma's database. Returns contact information (email), social media profiles (LinkedIn, Facebook, GitHub), and professional details (skills, interests, industry) associated with a Twitter username. Note: Not all usernames are in Datagma's database. A 'not found' response (code 5) indicates the username hasn't been indexed yet." }, { "slug": "DATAGMA_REVERSE_PHONE_LOOKUP", "name": "Reverse Phone Lookup", "description": "Tool to reverse-lookup information associated with a phone number. Use when you have a phone number and need associated details (e.g., carrier, location)." }, { "slug": "DATAGMA_SEARCH_PHONE_NUMBERS", "name": "Search Phone Numbers", "description": "Find mobile phone numbers using email address and/or LinkedIn profile URL. Returns list of phone numbers with confidence scores and optional WhatsApp verification. Best results when both email and LinkedIn URL are provided." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "datagma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Datagma API Key", "type": "string", "description": "Your Datagma API key. Find it in your Datagma account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "servicem8", "name": "Servicem8", "logo": "https://logos.composio.dev/api/servicem8", "description": "ServiceM8 helps field service businesses schedule jobs, send quotes, and manage invoices, offering staff mobile apps and real-time job status tracking", "category": "scheduling & booking", "authSchemes": [ "OAUTH2" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERVICEM8_CREATE_JOB_NOTE", "name": "ServiceM8 Create Job Note", "description": "Create a new job note in ServiceM8. Requires the job's UUID (related_object_uuid) and the note content. Returns the UUID of the created note record. Use this to add comments, updates, or action items to a specific job." }, { "slug": "SERVICEM8_CREATE_JOB_PAYMENT", "name": "ServiceM8 Create Job Payment", "description": "Tool to create a new job payment in ServiceM8. Use when you have collected payment details and need to record payment against a job. Example: \"Create a 100.00 cash payment for job 123e4567-e89b-12d3-a456-426614174000 at 2023-01-01 13:00:00.\"" }, { "slug": "SERVICEM8_CREATE_JOBS", "name": "Create a new Job", "description": "Tool to create a new Job in ServiceM8. Use when you have gathered all job details and need to push a record. Example: \"Create a Quote job for 123 Main St with PO #1234.\"" }, { "slug": "SERVICEM8_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Delete a custom field in ServiceM8 by its UUID. Use this when you need to permanently remove a custom field definition from the system. This will remove the custom field and any associated data." }, { "slug": "SERVICEM8_DELETE_JOB_NOTE", "name": "Delete Job Note", "description": "Deletes (archives) a job note in ServiceM8 by its UUID. Use this tool when you need to remove a note from a job's diary. In ServiceM8, deletion is a soft-delete: the note is archived (active=0) rather than permanently removed, and can be restored later if needed. Prerequisites: You need the note's UUID, which can be obtained from the 'List All Job Notes' or 'Retrieve Job Note' actions." }, { "slug": "SERVICEM8_DELETE_JOB_PAYMENT", "name": "Delete Job Payment", "description": "Archives (soft-deletes) a job payment record in ServiceM8 by its UUID. In ServiceM8, records are never permanently deleted. Instead, deletion sets the record's 'active' field to 0, which hides it from the UI but keeps it accessible via the API. Archived records can be restored by setting their 'active' field back to 1. Use this tool when you need to remove a payment record from active use, such as when a payment was recorded in error or needs to be voided. Requires the 'manage_job_payments' OAuth scope." }, { "slug": "SERVICEM8_LIST_ALL_ASSETS", "name": "List All Assets", "description": "Tool to list all ServiceM8 assets. Use when you need a comprehensive asset registry, including custom fields, for inventory or reporting." }, { "slug": "SERVICEM8_LIST_ALL_CLIENTS", "name": "List All Clients", "description": "Tool to list all ServiceM8 clients. Use when you need a complete set of customer records for integrations or reporting." }, { "slug": "SERVICEM8_LIST_ALL_DOCUMENT_TEMPLATES", "name": "List All Document Templates", "description": "Tool to list document templates. Use when you need to retrieve available template UUIDs and names before generating job documents." }, { "slug": "SERVICEM8_LIST_ALL_FORMS", "name": "List All Forms", "description": "Tool to list all ServiceM8 forms. Use when you need to fetch available form templates with optional filters." }, { "slug": "SERVICEM8_LIST_ALL_JOB_NOTES", "name": "List All Job Notes", "description": "List all job notes from ServiceM8. Use this tool to: - Retrieve all notes across all jobs (no filter) - Get notes for a specific job using filter: \"related_object_uuid eq ''\" - Filter by active status: \"active eq 1\" for active notes only The response contains a list of note records with their content, timestamps, and associated job UUIDs. For large result sets, use cursor-based pagination: pass cursor='-1' for the first page, then use the 'next_cursor' value from each response to fetch subsequent pages. Each page returns up to 5,000 records." }, { "slug": "SERVICEM8_LIST_ALL_JOB_QUEUES", "name": "List All Job Queues", "description": "List all job queues in ServiceM8. Job queues are virtual folders for organizing jobs on hold. Use this to fetch available queues before assigning jobs to a queue, or to check queue configurations. Returns both regular queues (for jobs waiting on external actions) and assignable queues (for staff assignments)." }, { "slug": "SERVICEM8_LIST_ALL_JOBS", "name": "List All Jobs", "description": "Tool to list all jobs. Use when you need to fetch all job records from your ServiceM8 account." }, { "slug": "SERVICEM8_LIST_ALL_LOCATIONS", "name": "List All Locations", "description": "Lists all ServiceM8 locations. Use to fetch configured service areas, office locations, or warehouses for job assignments, mapping, or reporting." }, { "slug": "SERVICEM8_LIST_ALL_MATERIALS", "name": "List All Materials", "description": "Retrieve all materials (products, labour rates, inventory items) from ServiceM8. Use this to get a complete catalog of materials for quoting, invoicing, or inventory management. Requires the 'read_inventory' OAuth scope." }, { "slug": "SERVICEM8_LIST_ALL_TASKS", "name": "List All Tasks", "description": "Retrieves all tasks from a ServiceM8 account with optional filtering and cursor-based pagination. Use this to fetch task records, track task assignments, monitor completion status, or sync task data. Requires 'read_tasks' OAuth scope." }, { "slug": "SERVICEM8_RETRIEVE_CLIENT", "name": "Retrieve ServiceM8 Client", "description": "Tool to retrieve details of a specific client by its UUID. Use after confirming the client's UUID is valid." }, { "slug": "SERVICEM8_RETRIEVE_FORM", "name": "Retrieve Form", "description": "Retrieve details of a specific form template by its UUID. Use this tool when you have a form UUID and need to fetch its metadata, such as form name, description, and status. Requires the Forms add-on to be enabled in ServiceM8." }, { "slug": "SERVICEM8_RETRIEVE_JOB", "name": "Retrieve Job", "description": "Tool to retrieve details of a specific job by its UUID. Use when you have the Job UUID and need its full record." }, { "slug": "SERVICEM8_RETRIEVE_JOB_ACTIVITY", "name": "Retrieve Job Activity", "description": "Tool to retrieve details of a specific job activity by its UUID. Use when you have the job activity UUID and need its full details." }, { "slug": "SERVICEM8_RETRIEVE_JOB_NOTE", "name": "Retrieve Job Note", "description": "Retrieve the full details of a specific job note by its UUID. Use this action when you have a note UUID (e.g., from listing job notes) and need to view its complete record including content, timestamps, and the associated job reference." }, { "slug": "SERVICEM8_RETRIEVE_JOB_PAYMENT", "name": "Retrieve Job Payment", "description": "Retrieve a specific job payment record from ServiceM8 by its UUID. Use this tool when you need to: - Get full details of a specific payment (amount, method, timestamp, notes) - Check if a payment is a deposit or regular payment - View which staff member processed a payment - Verify payment information for a job Prerequisites: You need the job payment UUID, which can be obtained from the 'List All Job Payments' action or from creating a new job payment." }, { "slug": "SERVICEM8_RETRIEVE_JOB_QUEUE", "name": "Retrieve Job Queue", "description": "Tool to retrieve details of a specific job queue by its UUID. Use when you need full queue metadata before dispatching work." }, { "slug": "SERVICEM8_RETRIEVE_LOCATION", "name": "Retrieve Location", "description": "Retrieve a specific ServiceM8 location by its UUID. Returns complete location details including name, address fields (street, city, state, country, postal code), geographic coordinates (lat/lng), contact phone number, and active status. Use this when you have a known location UUID and need its full details. To list all available locations, use the List All Locations action first." }, { "slug": "SERVICEM8_RETRIEVE_MATERIAL", "name": "Retrieve ServiceM8 Material", "description": "Retrieve detailed information about a specific material/product/service by its UUID. Returns pricing, inventory levels, tax settings, and identification details. Use this when you have a material UUID from a job or list operation and need complete details like current stock levels or pricing information." }, { "slug": "SERVICEM8_RETRIEVE_STAFF_MEMBER", "name": "Retrieve Staff Member", "description": "Tool to retrieve details of a specific staff member by their UUID. Use when you need up-to-date staff information given a known staff UUID." }, { "slug": "SERVICEM8_UPDATE_JOB_NOTE", "name": "Update a ServiceM8 Job Note", "description": "Tool to update details of an existing job note. Use when modifying a note after its creation." }, { "slug": "SERVICEM8_UPDATE_JOB_PAYMENT", "name": "Update Job Payment", "description": "Update an existing job payment record in ServiceM8. Use this to modify payment details such as amount, method, note, or status. Requires the payment UUID and at least one field to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "servicem8_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "staff_locations,staff_activity,publish_sms,publish_email,vendor,vendor_logo,vendor_email,read_locations,manage_locations,read_staff,manage_staff,read_customers,manage_customers,read_customer_contacts,manage_customer_contacts,read_jobs,manage_jobs,create_jobs,read_job_contacts,manage_job_contacts,read_job_materials,manage_job_materials,read_job_categories,manage_job_categories,read_job_queues,manage_job_queues,read_tasks,manage_tasks,read_schedule,manage_schedule,read_inventory,manage_inventory,read_job_notes,publish_job_notes,read_job_photos,publish_job_photos,read_job_attachments,publish_job_attachments,read_inbox,read_messages,manage_notifications,manage_templates,manage_badges,read_assets,manage_assets" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "microsoft_tenant", "name": "Microsoft Tenant", "logo": "https://logos.composio.dev/api/microsoft_tenant", "description": "Microsoft Tenant commonly refers to an instance of Microsoft 365 or Azure used by enterprises for cloud-based services, billing, and account management", "category": "security & identity tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft-tenant_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "smartrecruiters", "name": "SmartRecruiters", "logo": "https://logos.composio.dev/api/smartrecruiters", "description": "SmartRecruiters provides an enterprise-grade applicant tracking system with job posting, candidate management, and collaborative hiring features to scale recruitment", "category": "hr talent & recruitment", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "smartrecruiters_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "candidates_read,candidates_create,candidates_offers_read,jobs_read,jobs_write,users_read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "textrazor", "name": "TextRazor", "logo": "https://logos.composio.dev/api/textrazor", "description": "TextRazor is a natural language processing API that extracts meaning, entities, and relationships from text, powering advanced content analysis and sentiment detection", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEXTRAZOR_ACCOUNT_INFO", "name": "Get Account Information", "description": "This tool retrieves comprehensive information about a TextRazor account, providing essential details about the account's status, usage, and limits. It returns an Account object containing properties such as the current subscription plan, concurrent request limits, and daily usage among others, making it crucial for monitoring API usage, managing requests, and ensuring compliance with subscription limits." }, { "slug": "TEXTRAZOR_CLASSIFY_TEXT", "name": "Classify Text", "description": "This tool will classify text into predefined categories using TextRazor's classification capabilities. It takes input text, optional cleanup mode and language, and returns a list of relevant categories with their confidence scores from the analysis. The tool supports various built-in classifiers including: - textrazor_iab: IAB QAG segments - textrazor_iab_content_taxonomy_3.0: IAB Content Taxonomy v3.0 (2022) - textrazor_mediatopics_2023Q1: Latest IPTC Media Topics (March 2023) - And other versions of these taxonomies" }, { "slug": "TEXTRAZOR_CUSTOM_CLASSIFIER_MANAGER", "name": "Manage Custom Classifiers", "description": "This tool manages custom classifiers in TextRazor, allowing users to create, update, and manage custom classification categories." }, { "slug": "TEXTRAZOR_DICTIONARY_MANAGER", "name": "Dictionary Manager", "description": "Manage custom entity dictionaries in TextRazor for enhanced named entity recognition. This tool enables you to create and manage dictionaries of domain-specific entities (e.g., product names, company names, technical terms) that TextRazor will recognize in text analysis. Operations include: - Creating new dictionaries with configurable matching rules - Listing all available dictionaries - Retrieving dictionary details and configuration - Deleting dictionaries - Adding, retrieving, and removing dictionary entries Note: Dictionaries created here can be used in text analysis by specifying their IDs in the 'entityDictionaries' parameter of TextRazor analysis requests." }, { "slug": "TEXTRAZOR_EXTRACT_ENTITIES", "name": "Extract Named Entities from Text", "description": "Extract named entities (people, places, companies, etc.) from text using TextRazor's entity extraction API. The tool will identify and classify named entities within the provided text, returning detailed information about each entity including its type, confidence score, and relevance score. The API returns many entities by default; filter by `relevanceScore` and `confidenceScore` thresholds to retain only meaningful results." }, { "slug": "TEXTRAZOR_TEXT_RAZOR_ANALYZE_CONTENT", "name": "Analyze Content with TextRazor", "description": "A comprehensive content analysis tool that combines multiple TextRazor extractors to perform a complete analysis of the input text. This action allows users to analyze text content with multiple extractors in a single API call." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "textrazor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your TextRazor API Key used for authenticating requests to the TextRazor API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bubble", "name": "Bubble", "logo": "https://logos.composio.dev/api/bubble", "description": "Bubble is a visual programming language and a PaaS developed by Bubble Group.", "category": "app builder", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUBBLE_DATA_BULK_CREATE_THINGS", "name": "Bulk Create Things", "description": "Tool to bulk create multiple Things in Bubble via newline-separated JSON. Use when you need to insert many records at once. Must have Create via API permission." }, { "slug": "BUBBLE_DATA_CREATE_THING", "name": "Create Thing", "description": "Tool to create a new Thing. Use when providing a complete JSON payload to add a new record." }, { "slug": "BUBBLE_DATA_DELETE_THING_BY_ID", "name": "Delete Thing By ID", "description": "Tool to delete a Bubble Thing by its unique ID. Use when you need to remove a specific record via the Bubble Data API." }, { "slug": "BUBBLE_DATA_GET_THING_BY_ID", "name": "Get Thing By ID", "description": "Retrieves a single Thing (record) from a Bubble Data Type by its unique ID. This is a read-only operation that fetches complete details of a specific record. The response includes all custom fields defined in the Data Type, plus standard Bubble fields (_id, created_by, created_date, modified_date). Use when you need to: - Fetch details of a specific record you know the ID of - Verify a record exists - Get the latest field values for a Thing Note: Requires the Data API to be enabled in your Bubble app settings and the specific Data Type to be exposed via the API." }, { "slug": "BUBBLE_DATA_PATCH_THING_BY_ID", "name": "Patch Thing By ID", "description": "Tool to modify selected fields on a Thing by its unique ID. Use after confirming the Thing exists." }, { "slug": "BUBBLE_DATA_PUT_REPLACE_THING_BY_ID", "name": "Replace Thing by ID", "description": "Tool to replace all editable fields on a Thing by its Unique ID. Use when you need a full overwrite of a Thing's fields and reset omitted fields to default." }, { "slug": "BUBBLE_FILE_DOWNLOAD", "name": "Download File", "description": "Tool to download a file given its URL. Use when you need to retrieve file content for subsequent upload tests." }, { "slug": "BUBBLE_FILE_TEMP_CREATE", "name": "Create Temp File", "description": "Tool to upload bytes as a temporary file to Cloudflare R2 and return an S3 key. Use when you need a short-lived file reference before persisting it in a Thing." }, { "slug": "BUBBLE_FILE_UPLOAD", "name": "Upload File", "description": "Tool to upload a file to Bubble storage. Use when you need to store arbitrary files via Bubble's /fileupload endpoint." }, { "slug": "BUBBLE_META_GET_SWAGGER_JSON", "name": "Get Bubble API Swagger JSON", "description": "Tool to retrieve the auto-generated Swagger JSON for enabled APIs. Use after enabling the Swagger file in your Bubble app's API settings." }, { "slug": "BUBBLE_O_AUTH_ACCESS_TOKEN", "name": "Get OAuth Access Token", "description": "Tool to exchange an authorization code or refresh token for an OAuth2 access token. Use after obtaining an authorization code or when refreshing an expired token." }, { "slug": "BUBBLE_OAUTH_AUTHORIZE", "name": "OAuth Authorize", "description": "Tool to initiate OAuth2 authorization flow for Bubble. Use when setting up third-party login integration. Returns the URL for user-agent redirection to obtain an authorization code." }, { "slug": "BUBBLE_O_AUTH_REGISTER_APP", "name": "Bubble OAuth Register App", "description": "Tool to validate/initialize OAuth application credentials with Bubble. It performs a real call to Bubble's /oauth/authorize endpoint (or provided override) using client_id and redirect_uri to confirm connectivity and returns supplied credentials." }, { "slug": "BUBBLE_WORKFLOW_TRIGGER_GET", "name": "Trigger Bubble Workflow via GET", "description": "Trigger a Bubble API workflow using an HTTP GET request. API workflows are server-side workflows in Bubble that can be triggered externally. Use GET for simple workflows that don't require a request body (parameters passed as query strings). For workflows requiring complex data or file uploads, use the POST version instead. Before using: The workflow must be created in Bubble's workflow editor and marked as \"Expose as a public API workflow\". The Bubble app must have API access enabled in its subscription." }, { "slug": "BUBBLE_WORKFLOW_TRIGGER_POST", "name": "Trigger Bubble Workflow via POST", "description": "Triggers a Bubble API workflow by name using a POST request. Use this tool to execute backend workflows in your Bubble application. The workflow must be configured in your Bubble app's API Workflows section with \"Expose as public API workflow\" enabled. Pass any required parameters as a JSON object in the parameters field." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bubble_data_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The root URL of your Bubble Data API. If using Bubble's domain: https://appname.bubbleapps.io, or if using your custom domain: https://yourdomain.com", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Data API Key", "type": "string", "description": "API key used for authenticating requests to Bubble.io's Data API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sage", "name": "Sage", "logo": "https://logos.composio.dev/api/sage", "description": "Sage delivers accounting, payroll, and payment software solutions aimed at small to medium enterprises, automating financial tasks and compliance", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAUTH2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "readonly,offline_access,email,openid" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "chmeetings", "name": "Chmeetings", "logo": "https://logos.composio.dev/api/chmeetings", "description": "CHMeetings is a comprehensive church management platform offering event planning, member engagement tracking, donation management, volunteer coordination, and communication tools for faith-based organizations and religious communities", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CHMEETINGS_ATTENDEE_CREATE", "name": "Invite Meeting Attendee", "description": "Tool to invite a new attendee to a specified meeting. Use when you need to add attendees before the meeting begins." }, { "slug": "CHMEETINGS_ATTENDEE_GET", "name": "Get Attendee Details", "description": "Tool to retrieve details for a specific attendee. Use when you have an attendee_id and need the attendee's full profile." }, { "slug": "CHMEETINGS_CREATE_MEETING", "name": "ChMeetings: Create Meeting", "description": "Tool to create a new meeting in ChMeetings. Use when you have all meeting details and need to schedule it via the ChMeetings API." }, { "slug": "CHMEETINGS_CREATE_ORGANIZATION", "name": "ChMeetings: Create Organization", "description": "Tool to create a new organization." }, { "slug": "CHMEETINGS_CREATE_REMINDER", "name": "ChMeetings: Create Reminder", "description": "Tool to create/schedule a reminder for a meeting in ChMeetings." }, { "slug": "CHMEETINGS_DELETE_MEETING_ATTENDEE", "name": "Delete Meeting Attendee", "description": "Tool to remove an attendee from a meeting. Use after confirming attendee details." }, { "slug": "CHMEETINGS_LIST_MEETING_ATTENDEES", "name": "List Meeting Attendees", "description": "Tool to list attendees of a meeting. Use when you need to retrieve attendees for a specific meeting." }, { "slug": "CHMEETINGS_MEETINGS_DELETE", "name": "ChMeetings: Delete Meeting", "description": "Tool to delete an existing meeting. Use when you have confirmed the meeting ID to permanently remove the meeting." }, { "slug": "CHMEETINGS_MEETINGS_GET", "name": "ChMeetings: Get Meeting", "description": "Tool to retrieve a specific meeting's details by ID." }, { "slug": "CHMEETINGS_MEETINGS_UPDATE", "name": "ChMeetings: Update Meeting", "description": "Tool to update meeting details. Use when modifying an existing meeting; call after retrieving meeting ID." }, { "slug": "CHMEETINGS_NOTIFICATIONS_SEND", "name": "ChMeetings: Send Notification", "description": "Tool to attempt sending a notification." }, { "slug": "CHMEETINGS_ORGANIZATION_GET", "name": "ChMeetings: Get Organization", "description": "Tool to get details of a specific organization. Use when you have confirmed the organization ID and need full organization data." }, { "slug": "CHMEETINGS_ORGANIZATIONS_DELETE", "name": "ChMeetings: Delete Organization", "description": "Tool to delete an existing organization. Use when you have confirmed the organization ID to permanently remove the organization." }, { "slug": "CHMEETINGS_ORGANIZATIONS_LIST", "name": "ChMeetings: List Organizations", "description": "Tool to list all organizations. Use when you need to retrieve organization data; no parameters required." }, { "slug": "CHMEETINGS_ORGANIZATION_UPDATE", "name": "ChMeetings: Update Organization", "description": "Tool to update an organization's information. Use when modifying an existing organization; call after retrieving organization ID." }, { "slug": "CHMEETINGS_PEOPLE_DELETE", "name": "ChMeetings: Delete Person", "description": "Tool to delete a person record. Use after confirming the person ID you wish to remove." }, { "slug": "CHMEETINGS_PEOPLE_LIST", "name": "ChMeetings: List People", "description": "Tool to retrieve list of People records from ChMeetings. Use when syncing people data; rate limit 100 requests per 20 seconds." }, { "slug": "CHMEETINGS_PEOPLE_UPDATE", "name": "ChMeetings: Update Person", "description": "Tool to update an existing person's information in ChMeetings. Use when modifying person details; call after retrieving person ID via CHMEETINGS_PEOPLE_LIST or CHMEETINGS_PEOPLE_GET. Supported update fields (use snake_case): - Personal: first_name, last_name, middle_name, nick_name, native_name, email, mobile, telephone, birth_date - Demographics: gender (Male/Female/Unknown), social_status (Single/Married/etc.) - Professional: job_title, work_place, qualification, education_level, school - Religious: church, baptism_date, baptism_location, is_deacon, rank, bishop_donor - Communication: do_not_text, do_not_email (boolean) - Address: address object with country, state, city, etc." }, { "slug": "CHMEETINGS_PERSON_CREATE", "name": "ChMeetings: Create Person", "description": "Tool to create a new person record in ChMeetings People directory. Use when you need to add a person before tracking interactions. Required fields: first_name, last_name" }, { "slug": "CHMEETINGS_PERSON_GET", "name": "ChMeetings: Get Person", "description": "Tool to retrieve a specific person's details by ID. Use when you have a person ID and need their full record." }, { "slug": "CHMEETINGS_REMINDER_DELETE", "name": "ChMeetings: Delete Reminder", "description": "Tool to cancel a scheduled reminder. Use when you have the reminder ID and want to stop it before execution." }, { "slug": "CHMEETINGS_REMINDER_GET", "name": "ChMeetings: Get Reminder", "description": "Tool to retrieve details of a specific reminder. Use when you have the reminder ID and need its full information." }, { "slug": "CHMEETINGS_REMINDERS_LIST", "name": "ChMeetings: List Reminders", "description": "Tool to list reminders from ChMeetings. Use when you need to retrieve reminder records; rate limit applies." }, { "slug": "CHMEETINGS_REMINDER_UPDATE", "name": "ChMeetings: Update Reminder", "description": "Tool to update an existing reminder. Use when adjusting scheduled reminders after creation." }, { "slug": "CHMEETINGS_SETTINGS_GET", "name": "ChMeetings: Get Settings", "description": "Tool to retrieve account configuration settings. Returns the available lookup values for genders, social statuses, grade levels, and family roles used throughout ChMeetings. Use when you need to know what options are available for creating or updating people and families." }, { "slug": "CHMEETINGS_SETTINGS_UPDATE", "name": "ChMeetings: Update Settings", "description": "Tool to update account settings. Use when updating account-level preferences after authentication." }, { "slug": "CHMEETINGS_UPDATE_ATTENDEE_ROLE", "name": "Update attendee role", "description": "Tool to update the role of an attendee. Use when you need to change an existing attendee's role after creation." }, { "slug": "CHMEETINGS_USER_PROFILE_GET", "name": "ChMeetings: Get User Profile", "description": "Tool to retrieve current user's profile information. Use when you need to get the authenticated user's profile details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chmeetings_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key used for authenticating requests to the CHMeetings API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudflare", "name": "Cloudflare", "logo": "https://logos.composio.dev/api/cloudflare", "description": "Cloudflare is a global network designed to make everything you connect to the Internet secure, private, fast, and reliable.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDFLARE_CREATE_DNS_RECORD", "name": "Create DNS record", "description": "Tool to create a new DNS record within a specific zone. Requires write privileges and makes live changes to the zone. Use after obtaining the zone ID via CLOUDFLARE_LIST_ZONES to programmatically add DNS entries." }, { "slug": "CLOUDFLARE_CREATE_LIST", "name": "Create WAF List", "description": "Create a new empty custom list for use in WAF rules and filters. Lists can contain IP addresses, hostnames, ASNs, or redirects. Once created, use separate actions to add items to the list. Note: List availability depends on plan (Free: 1 list, Pro/Business: 10 lists, Enterprise: 1000 lists). Example: CREATE_LIST(account_id=\"abc123\", kind=\"ip\", name=\"blocklist\", description=\"Block malicious IPs\")" }, { "slug": "CLOUDFLARE_CREATE_ZONE", "name": "Create Zone", "description": "Creates a new DNS zone (domain) in Cloudflare. A zone represents a domain and its DNS records. Use this when adding a new domain to manage with Cloudflare. Requires account ID (obtainable via LIST_ACCOUNTS). The zone will be in 'pending' status until nameservers are updated at the domain registrar." }, { "slug": "CLOUDFLARE_DELETE_DNS_RECORD", "name": "Delete DNS Record", "description": "Tool to delete a DNS record within a specific zone. Deletion is immediate and irreversible. Use only after confirming both zone and record IDs. Requires write privileges on the zone. Example: \"Delete DNS record 372e6795... from zone 023e105f4ecef...\"" }, { "slug": "CLOUDFLARE_DELETE_LIST", "name": "Delete WAF List", "description": "Tool to delete a WAF list. Use when you need to remove a list after verifying no filters reference it. Example: DELETE_LIST(account_id=\"\", list_id=\"\")" }, { "slug": "CLOUDFLARE_DELETE_ZONE", "name": "Delete Zone", "description": "Tool to delete a zone. Use after confirming the zone identifier to permanently remove a DNS zone and all its DNS records from your Cloudflare account. Example: DELETE_ZONE(zone_identifier=\"023e105f4ecef8ad9ca31a8372d0c353\")" }, { "slug": "CLOUDFLARE_GET_BOT_MANAGEMENT_SETTINGS", "name": "Get Bot Management Settings", "description": "Tool to retrieve a zone's Bot Management configuration (Bot Fight Mode / Super Bot Fight Mode / Enterprise Bot Management). Use after identifying the correct zone_id (e.g., via CLOUDFLARE_LIST_ZONES). This tool is the canonical way to audit bot-related configuration; firewall rules are adjacent controls but not equivalent to Bot Management settings." }, { "slug": "CLOUDFLARE_GET_LISTS", "name": "List WAF Lists", "description": "Tool to fetch all WAF lists (no items) for an account. Results are paginated; iterate using page and per_page parameters until result_info.total_pages is reached to retrieve all lists. Use after confirming account ID." }, { "slug": "CLOUDFLARE_LIST_ACCOUNT_MEMBERS", "name": "List Account Members", "description": "Lists all members of a Cloudflare account with their roles, permissions, and status. Returns detailed information about each account member including their user details (name, email, 2FA status), assigned roles with granular permissions, membership status (accepted/pending/rejected), and access policies. Supports filtering by status, sorting by various fields, and pagination for accounts with many members. Use this action when you need to: - View all users with access to a Cloudflare account - Audit account member permissions and roles - Check membership status of invited users - List members with specific roles or statuses Requires the account ID which can be obtained using the List Accounts action. Note: caller's account role may restrict visibility of some members if permissions are insufficient." }, { "slug": "CLOUDFLARE_LIST_ACCOUNTS", "name": "List Accounts", "description": "List all Cloudflare accounts you have ownership or verified access to. Retrieves a paginated list of accounts with their details including account ID, name, type, settings, and creation date. An empty or partial result may indicate insufficient API token scope or permissions, not the absence of accounts. When multiple accounts are returned, confirm the intended account_id before performing any write operations to avoid acting on unintended environments. Use this when you need to: - Discover available accounts before performing account-specific operations - Find an account ID for other API calls that require an account identifier - Audit account configurations and settings - Filter accounts by name or paginate through large account lists" }, { "slug": "CLOUDFLARE_LIST_DNS_RECORDS", "name": "List DNS records", "description": "Tool to list and search DNS records in a Cloudflare zone. Use when you need to find existing DNS record IDs for update or delete operations, especially after a \"record already exists\" error during creation. Returns matching records with their IDs, names, types, content, and other properties." }, { "slug": "CLOUDFLARE_LIST_FIREWALL_RULES", "name": "List Firewall Rules", "description": "Tool to list firewall rules for a specific DNS zone. Use after confirming the zone ID to retrieve and audit current firewall rules. Does not expose Workers routes or other routing constructs." }, { "slug": "CLOUDFLARE_LIST_MONITORS", "name": "List Monitors", "description": "Tool to list all load-balancer monitors in a Cloudflare account. Use after creating or updating monitors to retrieve a paginated list. Response includes `result_info.total_pages` to determine when all pages have been fetched." }, { "slug": "CLOUDFLARE_LIST_POOLS", "name": "List Pools", "description": "Tool to list all load balancer pools in a Cloudflare account. Use after confirming account ID to discover pool IDs. Paginate using `page` and `per_page`; check `result_info.total_pages` in the response to determine if additional pages exist." }, { "slug": "CLOUDFLARE_LIST_TUNNELS", "name": "List Tunnels", "description": "List Cloudflare Tunnel (cloudflared) tunnels in an account to discover tunnel IDs, names, and statuses. Use when you need to find a tunnel_id before performing tunnel operations like routing, DNS configuration, or debugging." }, { "slug": "CLOUDFLARE_LIST_ZONES", "name": "List Zones", "description": "Lists, searches, sorts, and filters zones in the authenticated account. Use `page`/`per_page` to paginate; check `result_info.total_pages` in the response to iterate all pages. Does not return DNS records — extract `zone_id` from results before passing to zone-scoped tools (DNS, firewall, etc.). Only zones delegated to Cloudflare nameservers appear; empty results indicate scope or delegation constraints, not errors." }, { "slug": "CLOUDFLARE_UPDATE_DNS_RECORD", "name": "Update DNS record", "description": "Tool to update an existing DNS record within a specific zone. Use after confirming both zone and record identifiers; only provided fields are modified. Updates to records used by active tunnels take effect immediately and can disrupt live traffic." }, { "slug": "CLOUDFLARE_UPDATE_LIST", "name": "Update WAF List", "description": "Tool to update the description of a WAF list (cannot update items). Use after confirming list metadata." }, { "slug": "CLOUDFLARE_UPDATE_TUNNEL_CONFIGURATION", "name": "Update Tunnel Configuration", "description": "Tool to update a remotely-managed Cloudflare Tunnel's configuration (ingress rules and routing). Use when you need to programmatically configure hostname-to-origin mappings for a tunnel. WARNING: This operation REPLACES the entire configuration - incorrect configuration can break routing and make services unreachable. Best practice: fetch current configuration first (if patching) to preserve existing rules. At least one ingress rule is required, and the last rule should typically be a catch-all (hostname='*' or omitted) with service='http_status:404'." }, { "slug": "CLOUDFLARE_UPDATE_ZONE", "name": "Update Zone", "description": "Tool to update properties of an existing zone; changes apply immediately to the live zone. Confirm zone ID and intended change with the user before calling. Only one field can be modified per call." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudflare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cloudflare Global API Key", "type": "string", "description": "Global API Key for the Cloudflare account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Cloudflare Account Email", "type": "string", "description": "Email address associated with the Cloudflare account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "harvest", "name": "Harvest", "logo": "https://logos.composio.dev/api/harvest", "description": "Harvest is a time-tracking and invoicing tool designed for teams and freelancers, helping them log billable hours, manage projects, and streamline payments", "category": "time tracking software", "authSchemes": [ "OAUTH2" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HARVEST_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client. Use after gathering client details to register a new client in Harvest." }, { "slug": "HARVEST_CREATE_CLIENT_CONTACT", "name": "Create Client Contact", "description": "Tool to create a new client contact. Use when you need to add a contact under an existing client. Call after you've retrieved or confirmed the client_id." }, { "slug": "HARVEST_CREATE_ESTIMATE", "name": "Create Estimate", "description": "Tool to create a new estimate. Use after gathering client and line item details." }, { "slug": "HARVEST_CREATE_ESTIMATE_ITEM_CATEGORY", "name": "Create Estimate Item Category", "description": "Tool to create a new estimate item category in Harvest. Use after deciding to categorize line items within an estimate." }, { "slug": "HARVEST_CREATE_ESTIMATE_MESSAGE", "name": "Create Estimate Message", "description": "Tool to create a new message for an estimate. Use when you have an estimate ID and want to send a message or run an event (send, accept, decline, re-open) on the estimate." }, { "slug": "HARVEST_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new expense entry. Use when recording costs against projects. Ensure either units or total_cost is provided." }, { "slug": "HARVEST_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice. Use when you have gathered all invoice details and need to bill a client in Harvest." }, { "slug": "HARVEST_CREATE_INVOICE_ITEM_CATEGORY", "name": "Create Invoice Item Category", "description": "Tool to create a new invoice item category. Use after you have decided on the category name to register it in Harvest." }, { "slug": "HARVEST_CREATE_INVOICE_MESSAGE", "name": "Create Invoice Message", "description": "Creates a new message for an invoice in Harvest. Use this to send invoice notifications to clients, create draft messages, or change invoice states (close/reopen). Requires a valid invoice ID. The invoice must be in the appropriate state for the requested event_type." }, { "slug": "HARVEST_CREATE_INVOICE_PAYMENT", "name": "Create Invoice Payment", "description": "Tool to create a new payment on an invoice. Use when recording a payment against an existing invoice." }, { "slug": "HARVEST_CREATE_PROJECT", "name": "Create Project", "description": "Create a new project in Harvest. A project is a container for tracking time, expenses, and invoices for a specific client engagement. Required: You must provide a valid client_id (use list_clients or create_client first), project name, and billing configuration (is_billable, bill_by, budget_by). Common use cases: - Time & Materials: is_billable=true, bill_by=\"Tasks\", budget_by=\"project\" - Fixed Fee: is_billable=true, bill_by=\"Project\", budget_by=\"none\", is_fixed_fee=true - Internal/Non-billable: is_billable=false, bill_by=\"none\", budget_by=\"none\"" }, { "slug": "HARVEST_CREATE_TASK", "name": "Create Task", "description": "Creates a new task in Harvest. Tasks are reusable activity types (e.g., \"Development\", \"Design\", \"Consulting\") that can be assigned to projects for time tracking. Use this to define billable or non-billable work categories that your team will track time against." }, { "slug": "HARVEST_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry. Use when logging hours for a project by specifying start/end times or duration." }, { "slug": "HARVEST_CREATE_USER", "name": "Create User", "description": "Creates a new user in Harvest and sends an invitation email to the specified address. Use this action to add team members to your Harvest account. You can specify their role, permissions, rates, and whether they are employees or contractors. The user will receive an invitation email to activate their account. Required: first_name, last_name, and email. Optional: timezone, access roles, rates, weekly capacity, and business roles." }, { "slug": "HARVEST_DELETE_CLIENT", "name": "Delete Client", "description": "Tool to delete a client. Use when you need to remove a client that has no associated projects, invoices, or estimates. Call after confirming the client_id exists and has no dependent resources." }, { "slug": "HARVEST_DELETE_CLIENT_CONTACT", "name": "Delete Client Contact", "description": "Permanently deletes a client contact from Harvest. Use when you need to remove a contact that is no longer relevant. Requires Administrator or Manager permissions. The deletion cannot be undone, so verify the contact_id before calling." }, { "slug": "HARVEST_DELETE_ESTIMATE", "name": "Delete Estimate", "description": "Tool to delete an estimate. Use when you need to remove an estimate that is no longer needed. Call after confirming the estimate_id exists and has no dependent resources." }, { "slug": "HARVEST_DELETE_ESTIMATE_MESSAGE", "name": "Delete Estimate Message", "description": "Tool to delete an estimate message. Use when you need to remove a message from an estimate. Call after confirming estimate_id and message_id are correct." }, { "slug": "HARVEST_DELETE_INVOICE", "name": "Delete Invoice", "description": "Delete an invoice from Harvest. Removes the specified invoice permanently. Requires Administrator or Manager permissions with invoice editing access." }, { "slug": "HARVEST_DELETE_INVOICE_ITEM_CATEGORY", "name": "Delete Invoice Item Category", "description": "Tool to delete an invoice item category from Harvest. Returns 200 OK on success with no response body. Important: Deletion is only possible if both use_as_service and use_as_expense are false. Categories actively used for billable hours or expenses cannot be deleted. Use when you need to remove an obsolete or unused invoice item category. Requires Admin or Project Manager permissions." }, { "slug": "HARVEST_DELETE_INVOICE_MESSAGE", "name": "Delete Invoice Message", "description": "Tool to delete a message from an invoice. Use when you need to remove a specific message that is no longer relevant. Call after confirming the invoice_id and message_id." }, { "slug": "HARVEST_DELETE_INVOICE_PAYMENT", "name": "Delete Invoice Payment", "description": "Tool to delete an invoice payment. Use when you need to remove a payment from an invoice after confirming payment details." }, { "slug": "HARVEST_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project. Use when you need to remove a project and all its associated time entries and expenses; invoices remain intact. Call after confirming the project_id exists." }, { "slug": "HARVEST_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task. Use when you need to remove a task that has no associated time entries. Call after confirming the task_id exists and has no dependent time entries." }, { "slug": "HARVEST_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to delete a time entry. Use when removing an existing time entry that is deletable (not closed or on archived projects/tasks). Call after confirming the time_entry_id exists." }, { "slug": "HARVEST_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user. Use when you need to remove a user that has no associated time entries or expenses. Call after confirming the user_id exists and has no dependent time entries or expenses." }, { "slug": "HARVEST_GET_CLIENT", "name": "Get Client", "description": "Retrieves a specific client by ID from Harvest. Use this to get detailed information about a client including their name, active status, address, currency, and timestamps. Returns complete client details needed for invoicing, reporting, or verifying client information." }, { "slug": "HARVEST_GET_COMPANY_INFO", "name": "Get Company Info", "description": "Retrieves detailed information about the company associated with the authenticated Harvest account. This endpoint returns comprehensive company settings including: - Basic information (name, domain, active status) - Time tracking preferences (format, week start day, timer type) - Localization settings (date/time format, currency, separators) - Feature flags (expenses, invoices, estimates, approvals, team scheduling) - Weekly capacity and other operational settings No parameters required. Use this to understand company configuration before performing other operations." }, { "slug": "HARVEST_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to retrieve a specific estimate by ID. Use after confirming the estimate ID. Example: \"Get estimate with ID 123456\"." }, { "slug": "HARVEST_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve a specific invoice by ID. Use when you need the full details of an invoice after selecting or creating it. Example: 'Get invoice with ID 13150378.'" }, { "slug": "HARVEST_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific Harvest project by ID. Use when you have a project ID and need its details." }, { "slug": "HARVEST_GET_TASK", "name": "Get Task", "description": "Tool to retrieve a specific task by ID. Use when you have a task ID and need its detailed information." }, { "slug": "HARVEST_GET_TIME_ENTRY", "name": "Get Time Entry", "description": "Tool to retrieve a single time entry by ID. Use when you have a specific time entry ID and need its full details." }, { "slug": "HARVEST_GET_USER", "name": "Get User", "description": "Tool to retrieve a specific user by ID. Use after obtaining a valid user ID (for example via List Users). Example: \"Get details of user 3230547\"." }, { "slug": "HARVEST_LIST_CLIENT_CONTACTS", "name": "List Client Contacts", "description": "Tool to list client contacts. Use when you need to retrieve contacts with optional filtering and pagination." }, { "slug": "HARVEST_LIST_CLIENTS", "name": "List Clients", "description": "Tool to list clients. Use when you need to retrieve a paginated list of clients from Harvest. Ensure you have a valid access token in metadata before calling." }, { "slug": "HARVEST_LIST_ESTIMATE_MESSAGES", "name": "List Estimate Messages", "description": "Lists all messages associated with a specific estimate in Harvest. Returns messages sorted by creation date (most recent first). Use this tool when you need to: - View communication history for an estimate - Check what messages have been sent to clients regarding an estimate - Track events that occurred on an estimate (send, accept, decline, re-open) - Filter messages by update time to find recent communications Requires a valid estimate_id. Supports pagination via per_page parameter (default 2000, max 2000)." }, { "slug": "HARVEST_LIST_EXPENSE_CATEGORIES", "name": "List Expense Categories", "description": "Tool to list expense categories. Use when you need to retrieve a paginated list of expense categories, optionally filtering by active status or last update timestamp." }, { "slug": "HARVEST_LIST_INVOICE_ITEM_CATEGORIES", "name": "List Invoice Item Categories", "description": "Tool to retrieve invoice item categories. Use when you need to fetch a paginated list of invoice item categories in Harvest." }, { "slug": "HARVEST_LIST_INVOICE_MESSAGES", "name": "List Invoice Messages", "description": "Tool to list messages associated with a given invoice. Use when you need to retrieve invoice messages with optional filtering by update time and pagination." }, { "slug": "HARVEST_LIST_INVOICE_PAYMENTS", "name": "List Invoice Payments", "description": "List all payments recorded for a specific invoice. Returns payment details including amounts, dates, payment gateway information, and who recorded each payment. Supports filtering by updated_since date and pagination. Returns an empty list if the invoice has no payments." }, { "slug": "HARVEST_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices. Use when you need to retrieve invoices filtered by client, project, date range, or state. Example: 'List invoices for client 5735776 from 2023-01-01 to 2023-01-31.'" }, { "slug": "HARVEST_LIST_PROJECTS", "name": "List projects", "description": "Tool to list projects. Use when you need to retrieve a paginated list of projects from Harvest. Ensure a valid access token is present in metadata before calling. Results span multiple pages; check total_pages in the response and increment page to retrieve all projects. Large result sets may be returned as remote files rather than inline JSON; use structure_info to parse the response correctly." }, { "slug": "HARVEST_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks. Use when you need to retrieve a paginated list of tasks from Harvest. Ensure you have a valid access token in metadata before calling. Response includes `total_pages` to iterate all pages when task count exceeds `per_page`." }, { "slug": "HARVEST_LIST_TIME_ENTRIES", "name": "List Time Entries", "description": "Tool to retrieve a list of time entries. Use when you need to fetch tracked hours with filters or date ranges for reporting or invoicing. Example: \"List time entries for project 123 between 2023-01-01 and 2023-01-31\"." }, { "slug": "HARVEST_LIST_USERS", "name": "List Users", "description": "Tool to list users. Use when you need to retrieve a paginated list of users from Harvest." }, { "slug": "HARVEST_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client. Use after retrieving client details to modify its properties. Supports partial updates; omit fields to leave them unchanged." }, { "slug": "HARVEST_UPDATE_CLIENT_CONTACT", "name": "Update Client Contact", "description": "Tool to update a client contact. Use when you have a contact_id and need to modify its details." }, { "slug": "HARVEST_UPDATE_COMPANY_INFO", "name": "Update Company Info", "description": "Updates company time tracking settings in Harvest. This endpoint allows modification of two company settings: 1. wants_timestamp_timers - Controls whether time is tracked via duration or start/end times 2. weekly_capacity - Sets the expected working hours per week (in seconds) Returns the complete updated company object. Requires admin permissions. Note: Other company settings (name, timezone, currency, date/time formats, color scheme, etc.) cannot be modified via the API and must be changed through the Harvest web interface." }, { "slug": "HARVEST_UPDATE_ESTIMATE", "name": "Update Estimate", "description": "Tool to update an existing estimate. Use when you need to modify specific fields of an estimate; omit parameters to leave other fields unchanged." }, { "slug": "HARVEST_UPDATE_ESTIMATE_ITEM_CATEGORY", "name": "Update Estimate Item Category", "description": "Updates an existing estimate item category's name in Harvest. Estimate item categories are used to organize line items within estimates. Provide the category ID and the new name you want to set." }, { "slug": "HARVEST_UPDATE_EXPENSE", "name": "Update Expense", "description": "Tool to update an existing expense. Use after retrieving an expense to modify project, category, date, cost, or delete a receipt; omit fields to leave unchanged." }, { "slug": "HARVEST_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update an existing invoice. Use after retrieving invoice details to modify its fields. Supports partial updates; omit fields to leave unchanged." }, { "slug": "HARVEST_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project. Use when you need to modify one or more fields of a project by its ID. Invoke after confirming the project ID and desired changes." }, { "slug": "HARVEST_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task. Use after retrieving task details to modify its attributes such as name, billing defaults, or status. Supports partial updates; omit fields to leave them unchanged." }, { "slug": "HARVEST_UPDATE_TIME_ENTRY", "name": "Update Time Entry", "description": "Tool to update an existing time entry. Use after retrieving the entry to adjust hours, notes, project, or task details. Supports partial updates; omit fields to leave unchanged." }, { "slug": "HARVEST_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user. Use when you need to modify a user's profile or settings after confirming the user ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "harvest_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "harvest:read,harvest:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "wakatime", "name": "WakaTime", "logo": "https://logos.composio.dev/api/wakatime", "description": "WakaTime offers automatic time tracking for developers, integrating with code editors and delivering dashboards on coding activity, project progress, and productivity", "category": "time tracking software", "authSchemes": [ "OAUTH2" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WAKATIME_GET_AGGREGATE_STATS", "name": "Get Aggregate Stats", "description": "Tool to retrieve aggregate coding statistics across all WakaTime users for a given time range. Use when analyzing global trends in programming languages, editors, operating systems, and categories." }, { "slug": "WAKATIME_GET_CURRENT_USER_STATUS_BAR_TODAY", "name": "Get current user's status bar summary for today", "description": "Tool to get current user's coding activity today for displaying in IDE status bars. Use when you need a summary of today's coding time broken down by projects, languages, editors, etc." }, { "slug": "WAKATIME_GET_EDITORS", "name": "List IDE Plugins", "description": "Tool to list WakaTime IDE plugins with metadata. Use when you want to discover available IDE integrations and their latest versions." }, { "slug": "WAKATIME_GET_GOALS", "name": "List Goals", "description": "Tool to list a user's goals with progress series and metadata. Use after authenticating the user with read_goals scope." }, { "slug": "WAKATIME_GET_INSIGHTS", "name": "Get User Insight", "description": "Tool to retrieve an insight for a user over a time range. Use when analyzing user coding metrics after authentication." }, { "slug": "WAKATIME_GET_LEADERS", "name": "List Leaders", "description": "Tool to list public leaders ranked by coding activity. Use when viewing top coders globally or filtering by language, country code, or hireable status." }, { "slug": "WAKATIME_GET_MACHINE_NAMES", "name": "List Machine Names", "description": "Tool to list a user's machines including last seen time. Use when needing machine names for a specific user." }, { "slug": "WAKATIME_GET_META", "name": "Get API Meta Information", "description": "Tool to retrieve WakaTime API meta information, including public IP addresses used by WakaTime servers. Use when you need to know WakaTime's infrastructure details for network configuration or security purposes." }, { "slug": "WAKATIME_GET_OAUTH_AUTHORIZE", "name": "Generate WakaTime OAuth authorize URL", "description": "Tool to generate OAuth 2.0 authorization URL. Use when redirecting users to WakaTime to grant access." }, { "slug": "WAKATIME_GET_USER", "name": "Get User Details", "description": "Tool to get detailed profile information for a WakaTime user by user ID or username. Use 'current' as the user parameter to get the authenticated user's details. Returns comprehensive profile data including display name, email, timezone, plan, and privacy settings." }, { "slug": "WAKATIME_GET_USERS_ALL_TIME_SINCE_TODAY", "name": "Get User's Total Time Since Creation", "description": "Tool to retrieve total coding time since account creation for a user. Use after authenticating to fetch all-time stats." }, { "slug": "WAKATIME_GET_USER_STATS", "name": "Get User Stats", "description": "Tool to retrieve coding statistics for a user over the default time range. Returns comprehensive metrics including languages, editors, projects, and daily averages. Use when analyzing a user's coding patterns and productivity metrics." }, { "slug": "WAKATIME_GET_USER_STATS_BY_RANGE", "name": "Get User Stats by Range", "description": "Tool to retrieve comprehensive coding statistics for a user over a specific time range. Returns breakdowns by language, editor, project, OS, and more, along with daily averages and best day. Use when analyzing productivity patterns or generating coding activity reports for time periods." }, { "slug": "WAKATIME_GET_USER_SUMMARIES", "name": "Get User Summaries", "description": "Get user's coding activity for a time range as daily summaries. Returns detailed breakdowns by projects, languages, editors, and more for each day. Use when you need to analyze coding patterns, track project time, or generate activity reports over a date range. Requires 'read_summaries' scope." }, { "slug": "WAKATIME_LIST_PROGRAM_LANGUAGES", "name": "List Program Languages", "description": "Tool to list all verified program languages supported by WakaTime. Use when you need to discover available programming languages tracked by WakaTime." }, { "slug": "WAKATIME_LIST_USER_PROJECTS", "name": "List User Projects", "description": "List WakaTime projects for a specified user. Returns project names, IDs, creation dates, and last activity times. Use to discover available projects for any user before querying project-specific stats." }, { "slug": "WAKATIME_LIST_USER_USER_AGENTS", "name": "List User Agents", "description": "Tool to list plugins and editors which have sent data for a specified user. Use when needing to discover which development environments and tools a user is actively using." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "wakatime_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_summaries,read_summaries.editors,read_summaries.languages" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "xero", "name": "Xero", "logo": "https://logos.composio.dev/api/xero", "description": "Xero is a cloud-based accounting software for small businesses, providing invoicing, bank reconciliation, bookkeeping, and financial reporting in real time", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "XERO_CREATE_BANK_TRANSACTION", "name": "Create Bank Transaction", "description": "Create a bank transaction in Xero. Use SPEND for payments out or RECEIVE for money received." }, { "slug": "XERO_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact in Xero. Contacts can be customers, suppliers, or both." }, { "slug": "XERO_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Create a new credit note in Xero. Credit notes are used to reduce amounts owed by customers (ACCRECCREDIT) or to suppliers (ACCPAYCREDIT)." }, { "slug": "XERO_CREATE_INVOICE", "name": "Create Invoice", "description": "Create a new invoice in Xero. Supports both sales invoices (ACCREC) and bills (ACCPAY)." }, { "slug": "XERO_CREATE_ITEM", "name": "Create Item", "description": "Create an inventory item in Xero. Items can be tracked for sales and/or purchases." }, { "slug": "XERO_CREATE_MANUAL_JOURNAL", "name": "Create Manual Journal", "description": "Create one or more manual journals (journal entries) in Xero with journal lines. Manual journals must balance (debits equal credits)." }, { "slug": "XERO_CREATE_PAYMENT", "name": "Create Payment", "description": "Create a payment in Xero to link an invoice with a bank account transaction." }, { "slug": "XERO_CREATE_PURCHASE_ORDER", "name": "Create Purchase Order", "description": "Create a purchase order in Xero to order goods/services from suppliers." }, { "slug": "XERO_CREATE_QUOTE", "name": "Create Quote", "description": "Create a new sales quote in Xero for a customer or prospect. Quotes can be sent to contacts for approval and later converted to invoices. Use this action when you need to create a formal price proposal or quotation for goods or services before issuing an invoice." }, { "slug": "XERO_GET_ACCOUNT", "name": "Get Account", "description": "Retrieve a specific account from Xero's chart of accounts by its unique ID. Returns detailed account information including code, name, type (BANK, REVENUE, EXPENSE, etc.), status (ACTIVE/ARCHIVED), tax settings, bank details (for BANK accounts), and classification. Use XERO_LIST_ACCOUNTS to get account IDs if you don't already have one." }, { "slug": "XERO_GET_ASSET", "name": "Get Asset", "description": "Retrieve a specific asset by ID from Xero. Returns depreciation details and book value." }, { "slug": "XERO_GET_BALANCE_SHEET_REPORT", "name": "Get Balance Sheet Report", "description": "Retrieve Balance Sheet report from Xero. Shows assets, liabilities, and equity at a specific date. Liability and credit balances appear as negative numbers in the response. Response structure is Reports → Rows → Sections; account lines are nested inside group sections and summary totals (e.g., 'Total Current Assets') appear in SummaryRows." }, { "slug": "XERO_GET_BANK_TRANSACTION", "name": "Get Bank Transaction", "description": "Retrieve a specific spent or received money transaction from Xero by its unique bank transaction ID. Returns full transaction details including line items, contact, bank account, amounts, and reconciliation status. Use this action when you need to fetch the details of a specific bank transaction that was previously created." }, { "slug": "XERO_GET_BUDGET", "name": "Get Budget", "description": "Retrieve a budget from Xero. Budgets track planned vs actual spending by account." }, { "slug": "XERO_GET_CONNECTIONS", "name": "Get Connections", "description": "Tool to list active Xero connections. Use to retrieve all current tenant connections for the authenticated user and resolve the correct tenant_id before making data requests. When multiple tenants are returned, never assume the first connection is correct — always explicitly pass the intended tenant_id to every subsequent call. Using a wrong or stale tenant_id can silently return or modify data for a different organisation." }, { "slug": "XERO_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts. Use when you need up-to-date contact information with filtering, paging, or incremental updates." }, { "slug": "XERO_GET_CREDIT_NOTE", "name": "Get Credit Note", "description": "Retrieve a specific credit note by ID from Xero. Returns full credit note details including line items, allocations, and status. Use this action when you need to fetch detailed information about a single credit note by its UUID identifier." }, { "slug": "XERO_GET_INVOICE", "name": "Get Invoice", "description": "Retrieve a specific invoice by ID from Xero. Returns full invoice details including line items and status." }, { "slug": "XERO_GET_ITEM", "name": "Get Item", "description": "Retrieve a specific item by ID from Xero. Returns item code, name, pricing, and tax details." }, { "slug": "XERO_GET_MANUAL_JOURNAL", "name": "Get Manual Journal", "description": "Retrieve a specific manual journal by ID from Xero. Returns full details including journal lines." }, { "slug": "XERO_GET_ORGANISATION", "name": "Get Organisation", "description": "Retrieve organisation details from Xero. Returns company info, base currency, timezone, financial year settings, SalesTaxBasis, SalesTaxPeriod, etc. Response fields are nested under data.data.Organisations[0]. Use Timezone when computing date ranges to avoid boundary errors." }, { "slug": "XERO_GET_PAYMENT", "name": "Get Payment", "description": "Retrieve a specific payment by ID from Xero. Returns full payment details including associated invoice, account, and reconciliation status. Use this action when you need to inspect a particular payment record to verify its status, amount, or linked transactions." }, { "slug": "XERO_GET_PROFIT_LOSS_REPORT", "name": "Get Profit & Loss Report", "description": "Retrieve Profit & Loss report from Xero. Shows income, expenses, and net profit for a specified period. Response rows are labeled (e.g., 'Net Profit', SummaryRow); parse by row label, not array index. Aggregates multiple tax codes — not suitable for tax compliance reporting." }, { "slug": "XERO_GET_PROJECT", "name": "Get Project", "description": "Retrieve a specific project by ID from Xero. Returns project details, deadlines, and status." }, { "slug": "XERO_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Retrieve a specific purchase order by ID from Xero. Returns full details including line items and status." }, { "slug": "XERO_GET_QUOTES", "name": "Get Quotes", "description": "Tool to retrieve a list of quotes. Use when you need to list, filter, or page through sales quotes. Use after obtaining the tenant ID via connections." }, { "slug": "XERO_GET_TRIAL_BALANCE_REPORT", "name": "Get Trial Balance Report", "description": "Retrieve Trial Balance report from Xero. Shows all account balances (debits and credits) at a specific date. Use to verify that total debits equal total credits and to prepare financial statements. Credit balances appear as negative numbers in the response." }, { "slug": "XERO_LIST_ACCOUNTS", "name": "List Accounts", "description": "Retrieve chart of accounts from Xero. Returns all accounting codes used for categorizing transactions. Use AccountID (not name or code) as the unique identifier for accounts. Results may be paginated; increment the page parameter until empty results are returned to avoid missing accounts in large organisations." }, { "slug": "XERO_LIST_ASSETS", "name": "List Assets", "description": "Retrieve fixed assets from Xero. Assets track depreciation and book value of capital equipment." }, { "slug": "XERO_LIST_ATTACHMENTS", "name": "List Attachments", "description": "List all attachments for a specific entity in Xero (invoice, contact, etc.)." }, { "slug": "XERO_LIST_BANK_TRANSACTIONS", "name": "List Bank Transactions", "description": "Retrieve bank transactions from Xero. Includes SPEND, RECEIVE, and transfer types; unfiltered results include DELETED transactions that skew totals. Dates returned in /Date(milliseconds_since_epoch)/ format. Rate limit: ~60 requests/minute per org; heavy pagination may trigger 429 errors." }, { "slug": "XERO_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Retrieve list of credit notes from Xero. Credit notes are issued to reduce amounts owed by customers." }, { "slug": "XERO_LIST_FILES", "name": "List Files", "description": "Retrieve files from Xero Files. Lists documents stored in Xero's file management system." }, { "slug": "XERO_LIST_FOLDERS", "name": "List Folders", "description": "Retrieve folders from Xero Files. Lists document folders in Xero's file management system." }, { "slug": "XERO_LIST_INVOICES", "name": "List Invoices", "description": "Retrieve a list of invoices from Xero. Results include both sales invoices (Type=ACCREC) and bills (Type=ACCPAY) by default; filter by Type in the `where` clause when only one is needed. Supports filtering by status, contact, date range, and pagination." }, { "slug": "XERO_LIST_ITEMS", "name": "List Items", "description": "Retrieve items (inventory/products) from Xero. Items can be tracked for sales and/or purchases." }, { "slug": "XERO_LIST_JOURNALS", "name": "List Journals", "description": "Retrieve journals from Xero. Journals show the accounting entries for all transactions. Omitting filters returns the full historical journal ledger and can produce very large responses — use If-Modified-Since and/or paymentsOnly to narrow scope. No date range filter parameter exists. Results are returned inside a Journals array field." }, { "slug": "XERO_LIST_MANUAL_JOURNALS", "name": "List Manual Journals", "description": "Retrieve manual journals from Xero. Manual journals are used for period-end adjustments and corrections." }, { "slug": "XERO_LIST_PAYMENTS", "name": "List Payments", "description": "Retrieve list of payments from Xero. Payments link invoices to bank transactions; invoices may have multiple partial/split payment records. Response Date fields use Xero's /Date(milliseconds)/ format requiring custom parsing." }, { "slug": "XERO_LIST_PROJECTS", "name": "List Projects", "description": "Retrieve projects from Xero. Projects track time and costs for client work." }, { "slug": "XERO_LIST_PURCHASE_ORDERS", "name": "List Purchase Orders", "description": "Retrieve list of purchase orders from Xero. Purchase orders track goods/services ordered from suppliers." }, { "slug": "XERO_LIST_QUOTES", "name": "List Quotes", "description": "Retrieve a list of sales quotes from Xero with optional filtering and pagination. Supports filtering by date ranges, contact, status, and quote number. Returns up to 100 quotes per page with full line item details. Use this action when you need to query, list, or search for quotes in a Xero organization." }, { "slug": "XERO_LIST_TAX_RATES", "name": "List Tax Rates", "description": "Retrieve tax rates from Xero. Shows available tax codes and rates for the organization. Use returned tax codes as valid `TaxType` values in other tools — invalid values cause ValidationException errors." }, { "slug": "XERO_LIST_TRACKING_CATEGORIES", "name": "List Tracking Categories", "description": "Retrieve tracking categories from Xero. Tracking categories are used to segment data for reporting (e.g., departments, regions)." }, { "slug": "XERO_POST_INVOICE_UPDATE", "name": "Update Invoice", "description": "Tool to update an existing invoice. Use when you need to modify the details of an invoice after it's been created." }, { "slug": "XERO_UPDATE_BANK_TRANSACTION", "name": "Update Bank Transaction", "description": "Update an existing bank transaction in Xero. Use this action when you need to modify details of a previously created bank transaction such as line items, reference, date, or status. Note: Reconciled transactions cannot be updated and will return a validation error." }, { "slug": "XERO_UPDATE_CONTACT", "name": "Update Contact", "description": "Update an existing contact in Xero. Only provided fields will be updated." }, { "slug": "XERO_UPDATE_CREDIT_NOTE", "name": "Update Credit Note", "description": "Updates a specific credit note in Xero by its unique identifier. This action allows you to modify credit note details such as status, line items, reference numbers, and other fields after the credit note has been created. Use this action when you need to change the status of a credit note (e.g., from DRAFT to AUTHORISED), update line items, modify reference information, or make other changes to an existing credit note. The credit note must already exist in Xero - use the credit_note_id to specify which credit note to update. Not all fields can be updated depending on the current status of the credit note." }, { "slug": "XERO_UPDATE_MANUAL_JOURNAL", "name": "Update Manual Journal", "description": "Update an existing manual journal (journal entry) in Xero by its ID. Use this action when you need to modify the narration, date, journal lines, status, or other properties of an existing manual journal. Manual journals must balance (debits equal credits) or the update will fail. Only DRAFT manual journals can have their journal lines updated; POSTED journals can have limited fields updated." }, { "slug": "XERO_UPDATE_PURCHASE_ORDER", "name": "Update Purchase Order", "description": "Updates a specific purchase order in Xero by its unique identifier. Use this action when you need to modify an existing purchase order's details such as line items, delivery information, status, or other fields. Only the fields provided in the request will be updated; fields not included will remain unchanged." }, { "slug": "XERO_UPDATE_QUOTE", "name": "Update Quote", "description": "Updates a specific quote in Xero by its QuoteID. Use this action when you need to modify an existing sales quote, such as changing its status, updating line items, contact details, dates, or other quote properties. Only the fields provided in the request will be updated - unprovided fields will remain unchanged." }, { "slug": "XERO_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Upload a file attachment to a Xero entity (invoice, contact, etc.). Supports PDF, images, and documents." }, { "slug": "XERO_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validate Xero API credentials by testing access to connected organisations. Returns success status and a message indicating whether authentication is working. Use this action when you need to verify that Xero API credentials are valid and properly configured before attempting other operations. This is particularly useful for troubleshooting authentication issues or confirming a new connection is operational." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "xero_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "offline_access,email,profile,openid,files,files.read,projects,projects.read,accounting.manualjournals.read,accounting.manualjournals,accounting.banktransactions.read,accounting.banktransactions,accounting.payments.read,accounting.payments,accounting.invoices.read,accounting.invoices,accounting.reports.tenninetynine.read,accounting.budgets.read,accounting.attachments.read,accounting.attachments,accounting.contacts.read,accounting.contacts,accounting.settings.read,accounting.settings,accounting.reports.taxreports.read,accounting.reports.trialbalance.read,accounting.reports.profitandloss.read,accounting.reports.executivesummary.read,accounting.reports.budgetsummary.read,accounting.reports.banksummary.read,accounting.reports.aged.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "boldsign", "name": "Boldsign", "logo": "https://logos.composio.dev/api/boldsign", "description": "BoldSign delivers eSignature solutions, letting organizations create, send, and manage legally binding documents through streamlined digital signing workflows", "category": "signatures", "authSchemes": [ "OAUTH2" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOLDSIGN_BRAND_GET", "name": "Get Brand Details", "description": "Tool to get brand details by brand ID. Use after obtaining the brand identifier." }, { "slug": "BOLDSIGN_BRAND_LIST", "name": "List Brands", "description": "Tool to list all brands in the account. Use after confirming account is authenticated." }, { "slug": "BOLDSIGN_CUSTOM_FIELD_CREATE", "name": "Create Custom Field", "description": "Tool to create a brand-scoped custom field. Use when you need to define and register a new custom field for a specific brand." }, { "slug": "BOLDSIGN_CUSTOM_FIELD_EDIT", "name": "Edit Custom Field", "description": "Tool to edit an existing custom field. Use when you need to update a custom field's properties after creation." }, { "slug": "BOLDSIGN_DOCUMENT_BEHALF_LIST", "name": "List Behalf Documents", "description": "Tool to list documents sent on behalf of users. Use when fetching and filtering documents you've sent or on behalf of others." }, { "slug": "BOLDSIGN_DOCUMENT_EDIT_BETA", "name": "Edit Document (Beta)", "description": "Tool to edit a draft or sent document. Use when updating files, recipients, or document settings before finalizing the document." }, { "slug": "BOLDSIGN_DOCUMENT_EXTEND_EXPIRY", "name": "Extend Document Expiry", "description": "Tool to extend a document's expiry date. Use before signing to prolong a document's deadline." }, { "slug": "BOLDSIGN_DOCUMENT_LIST", "name": "List Documents", "description": "Tool to list documents in My Documents with filters. Use when you need to fetch and filter documents based on various criteria." }, { "slug": "BOLDSIGN_DOCUMENT_REMOVE_AUTHENTICATION", "name": "Remove Document Authentication", "description": "Tool to remove authentication from a document. Use when you need to disable signer authentication on an existing document before the signing process." }, { "slug": "BOLDSIGN_DOCUMENT_SEND", "name": "Send Document", "description": "Tool to send a document for eSignature. Use when you need to deliver documents to recipients for signing." }, { "slug": "BOLDSIGN_DOCUMENT_TEAM_LIST", "name": "List Team Documents", "description": "Tool to list team documents. Use when a team or account admin needs to retrieve all team documents with optional filters." }, { "slug": "BOLDSIGN_EMBEDDED_REQUEST_CREATE_LINK", "name": "Create Embedded Request Link", "description": "Tool to create an embedded request link. Use after specifying title and signers to generate an embeddable URL for in-app document preparation and sending." }, { "slug": "BOLDSIGN_FILE_UPLOAD", "name": "Upload File (Helper)", "description": "Helper action to upload a file to R2 temp via the Composio file pipeline, returning a key that can be passed to FileUploadable fields in other actions (e.g., BrandLogo in brand create)." }, { "slug": "BOLDSIGN_PLAN_GET_API_CREDITS_COUNT", "name": "Get API Credits Count", "description": "Tool to get remaining BoldSign API credits count. Use after authenticating your BoldSign account." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "boldsign_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email,offline_access,BoldSign.Documents.All" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "accelo", "name": "Accelo", "logo": "https://logos.composio.dev/api/accelo", "description": "Accelo offers a unified platform for professional service teams, combining project management, CRM, billing, and analytics to enhance client work visibility and overall operational efficiency", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "accelo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read(all)" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Sub Domain", "type": "string", "description": "The Sub Domain for Accelo API requests. For more information, visit https://api.accelo.com/docs/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moxie", "name": "Moxie", "logo": "https://logos.composio.dev/api/moxie", "description": "Moxie integrates client management, invoicing, and project tracking to help freelancers and small businesses manage leads, proposals, and payments", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moxie_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Moxie API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "brightpearl", "name": "Brightpearl", "logo": "https://logos.composio.dev/api/brightpearl", "description": "Brightpearl is a retail operations platform offering inventory management, accounting, CRM, and order fulfillment to help merchants handle multichannel sales more efficiently", "category": "ecommerce", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "brightpearl_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "brightpearl.api" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your Brightpearl account ID, used to construct the base URL.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "brightpearl_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your Brightpearl account ID, used to construct the base URL.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Brightpearl API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rippling", "name": "Rippling", "logo": "https://logos.composio.dev/api/rippling", "description": "Rippling unifies HR, IT, and finance tasks, handling payroll, benefits, device management, and app provisioning under a single platform", "category": "human resources", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "rippling_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "rippling_api-key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Rippling API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "active_campaign", "name": "ActiveCampaign", "logo": "https://logos.composio.dev/api/active_campaign", "description": "ActiveCampaign is a marketing automation and CRM platform enabling businesses to manage email campaigns, sales pipelines, and customer segmentation to boost engagement and drive growth", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 298, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ACTIVE_CAMPAIGN_ADD_BROWSE_SESSION_CART", "name": "Add Browse Session to Cart", "description": "Set a browse session to have addedToCart flag set to true in ActiveCampaign. This action updates an existing browse session or creates a new one with the addedToCart flag enabled for the specified email and connection. Use this to track when a customer adds items to their shopping cart during their browsing session." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CONTACT_NOTE", "name": "Add contact note", "description": "Add a note to a contact in ActiveCampaign. The note will be associated with a contact as a subscriber type. The tool will first find the contact ID using the provided email address and then create the note." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CONTACT_TO_AUTOMATION", "name": "Add Contact to Automation", "description": "Adds an existing ActiveCampaign contact to a specific automation workflow. This action enrolls a contact in an automation by their email address. The contact must already exist in ActiveCampaign, and the automation must be created beforehand (automations can only be created through the ActiveCampaign UI, not via API). The action performs two steps: 1. Looks up the contact by email to retrieve their contact ID 2. Enrolls the contact in the specified automation Returns enrollment details including the contact ID, automation ID, status, and timestamps. Note: The automation_id must correspond to an existing, active automation in your ActiveCampaign account. You can find automation IDs through the ActiveCampaign UI or by listing automations via the GET /api/3/automations endpoint." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CONTACT_TO_LIST", "name": "Add contact to list", "description": "Tool to add a contact to a list in ActiveCampaign. Use when you need to subscribe or unsubscribe a contact to/from a specific list using their IDs." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CUSTOM_FIELD", "name": "Add Custom Field", "description": "Tool to add a new custom field in ActiveCampaign. Use when you need to create a custom contact field to store additional information like industry, company size, or other custom data points. Supports various field types including text, dropdown, date, and more." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CUSTOM_FIELD_OPTIONS", "name": "Add Custom Field Options", "description": "Tool to add custom field options in bulk to ActiveCampaign. Use when you need to create multiple options for dropdown, radio, checkbox, or listbox custom fields. The field must already exist before adding options." }, { "slug": "ACTIVE_CAMPAIGN_ADD_CUSTOM_FIELD_TO_FIELD_GROUP", "name": "Add Custom Field to Field Group", "description": "Tool to add a custom field to a field group in ActiveCampaign. Use when you need to associate a custom field with a display group to organize related fields together on contact or deal pages." }, { "slug": "ACTIVE_CAMPAIGN_ADD_DOMAIN_TO_WHITE_LIST", "name": "Add Domain to Site Tracking Whitelist", "description": "Add a domain to ActiveCampaign's site tracking whitelist. Use this to enable site tracking functionality for specific domains in your ActiveCampaign account. This action registers a domain that is allowed for site tracking. After adding a domain to the whitelist, ActiveCampaign can track visitor activity on that domain for analytics and automation purposes." }, { "slug": "ACTIVE_CAMPAIGN_ADD_FIELD_RELATIONSHIP", "name": "Add Field Relationship", "description": "Add a field relationship in ActiveCampaign. Use this to associate a custom field with a list or other entity, enabling the field to be used within that context." }, { "slug": "ACTIVE_CAMPAIGN_ADD_SECONDARY_CONTACT_TO_DEAL", "name": "Add Secondary Contact to Deal", "description": "Adds a secondary contact to an existing deal in ActiveCampaign. Secondary contacts are additional team members associated with a deal beyond the primary contact. You can optionally specify a job title to provide context about the contact's role in the deal. Required permissions: User must have permission to manage deals. Required parameters: contact_id, deal_id Optional parameters: job_title" }, { "slug": "ACTIVE_CAMPAIGN_ADD_TAG_TO_CONTACT", "name": "Add Tag to Contact", "description": "Tool to add a tag to a contact in ActiveCampaign. Use when you need to directly associate a tag with a contact using their IDs. Both contact ID and tag ID must already exist." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ACCOUNT", "name": "Create Account", "description": "Creates a new account in ActiveCampaign. An account represents a business or organization that you want to track in your CRM. Each account must have a unique name. Required: account name Optional: account URL, owner (user ID, defaults to 1), custom fields Note: Account names must be unique. If an account with the same name already exists, the API will return an error." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ACCOUNT_CONTACTS", "name": "Create Account Contact Association", "description": "Tool to create a new account-contact association in ActiveCampaign. Use when you need to link an existing contact to an existing account, optionally specifying the contact's job title at that account." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ACCOUNT_CUSTOM_FIELD_DATA", "name": "Create Account Custom Field Data", "description": "Creates a custom field value for an account in ActiveCampaign. Use when you need to set or add a custom field value to an existing account. Requires the account ID and custom field ID." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ACCOUNT_CUSTOM_FIELD_META", "name": "Create Account Custom Field Metadata", "description": "Tool to create a new account custom field metadata in ActiveCampaign. Use when you need to define a new custom field for accounts. After creating the field, you must call the Add Custom Field to Field Group API to add it to a field group for visibility on record pages." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ACCOUNT_NOTE", "name": "Create Account Note", "description": "Tool to create a new note for an account in ActiveCampaign. Use when you need to add notes or comments to a specific account. The note will be associated with the account specified by the account ID." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_ADDRESS", "name": "Create Address", "description": "Tool to create a new address in ActiveCampaign. Use when you need to add a company address for campaigns, forms, or other communications. Requires company name, primary address, and country code." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_A_DEAL_NOTE", "name": "Create a Deal Note", "description": "Tool to create a note for a specific deal in ActiveCampaign. Use when you need to add documentation, comments, or important information to a deal record." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_AN_ORDER", "name": "Create An Order", "description": "Tool to create an e-commerce order in ActiveCampaign. Use when you need to record a purchase or transaction for e-commerce tracking and automation triggers." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_A_TAG2", "name": "Create Tag with Type", "description": "Tool to create a new tag in ActiveCampaign with explicit tag type specification. Use when you need to create a tag with a specific type (contact or template)." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_BULK_ACCOUNT_CUSTOM_FIELD_DATA", "name": "Bulk Create Account Custom Field Data", "description": "Tool to bulk create custom field values for accounts in ActiveCampaign. Use when you need to set multiple custom field values across one or more accounts in a single request. Note: This endpoint updates the Last Modified date of associated accounts. If multiple items in the request reference the same accountId, the first item's account will show the modified timestamp." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CALENDARS", "name": "Create Calendar Feed", "description": "Tool to create a new calendar feed in ActiveCampaign. Use when you need to create a calendar feed that syncs with external calendar applications like Google Calendar or Outlook." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign in ActiveCampaign. Use when you need to create a broadcast email campaign or automation campaign." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CHILD_SCHEMA", "name": "Create Child Schema", "description": "Tool to create a child schema in ActiveCampaign. Use when you need to create a child schema for a parent schema. Parent/child schemas allow multiple customers to share the same schema, useful for resellers and application developers. The parent schema must be public and associated with an application ID." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CONNECTION", "name": "Create Connection", "description": "Tool to create a new connection in ActiveCampaign. Use when you need to establish a link between an ActiveCampaign account and an external service or application." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CONTACT_TASK", "name": "Create contact task", "description": "Create a task associated with a contact in ActiveCampaign. This action allows you to create a new task that will be associated with a specific contact in your ActiveCampaign account. The task can include details such as due date, title, description, and can be assigned to a specific user." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create an e-commerce customer in ActiveCampaign. Use when you need to register a new customer from your e-commerce platform for tracking purchases and automations." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DEAL_CUSTOM_FIELD_META", "name": "Create Deal Custom Field Metadata", "description": "Tool to create a new deal custom field metadata in ActiveCampaign. Use when you need to define a new custom field for deals. After creating the field, you must call the Add Custom Field to Field Group API (/api/3/groupMembers) to add it to a field group for visibility on deal pages." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DEAL_PIPELINE", "name": "Create Deal Pipeline", "description": "Creates a new deal pipeline in ActiveCampaign. A deal pipeline is a visual representation of your sales process that helps organize and track deals through different stages. When you create a new pipeline, it automatically comes with three default stages: 'To Contact,' 'In Contact,' and 'Follow Up.'" }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DEAL_ROLE", "name": "Create Deal Role", "description": "Tool to create a new deal role in ActiveCampaign. Use when you need to define roles that contacts can have in deals, such as Decision Maker, Influencer, or Head of Sales." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DEAL_STAGE", "name": "Create Deal Stage", "description": "Tool to create a new stage in an ActiveCampaign deal pipeline. Use when you need to add a custom stage to organize deals in a specific pipeline." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DEAL_TASK_TYPE", "name": "Create Deal Task Type", "description": "This tool creates a new deal task type in ActiveCampaign. Deal task types are used to categorize and organize tasks associated with deals, and they are an important feature for maintaining a structured task management system within the deals pipeline. This action complements the existing ACTIVE_CAMPAIGN_CREATE_DEAL_TASK action by enabling the creation of custom task types that can be used when creating deal tasks." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_DUPLICATE_CAMPAIGN", "name": "Create Duplicate Campaign", "description": "Tool to duplicate an existing campaign in ActiveCampaign. Use when you need to create a copy of a campaign with the same configuration and content." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_EVENT_TRACKING_EVENT", "name": "Create Event Tracking Event", "description": "Tool to create a new event tracking event in ActiveCampaign. Use when you need to whitelist a new event name for tracking and use in automations." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_FORM_OPTIN", "name": "Create Form Opt-in", "description": "Submit a form opt-in for a specific form in ActiveCampaign. Use when you need to programmatically opt-in a contact to a form without requiring them to fill it out manually." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_IMPORT_BULK", "name": "Bulk Import Contacts", "description": "Bulk import large numbers of contacts into ActiveCampaign with a single API call. This action allows you to upload up to 250,000 contacts at once. The import is processed asynchronously - contacts are queued and imported in the background. You can optionally provide a webhook callback URL to be notified when the import completes. Use cases: - Migrate contacts from another platform - Import large CSV files of contacts - Bulk upload leads from marketing campaigns - Synchronize contacts from external databases Note: This is an asynchronous operation. The API returns immediately with a batch ID, but contacts are processed in the background. Use the callback parameter to get notified when processing completes." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_LIST", "name": "Create List", "description": "Tool to create a new list in ActiveCampaign. Use when you need to create a subscriber list for organizing contacts and sending campaigns." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_LIST_GROUP_PERMISSION", "name": "Create List Group Permission", "description": "Creates a list group permission in ActiveCampaign by associating a list with a user group. This allows you to grant a specific group access permissions to a particular list." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_MESSAGE", "name": "Create Message", "description": "Tool to create a message in ActiveCampaign. Use when you need to create an email message template that can be used in campaigns or automations. The message must include a subject, sender information (name and email), reply-to address, and content (HTML and/or text)." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_METRICS_SNAPSHOT", "name": "Create Metrics Snapshot for Broadcasts", "description": "Tool to retrieve snapshot metrics for specified SMS broadcast IDs in ActiveCampaign. Use when you need aggregated metrics (campaigns, sends, deliveries, clicks, replies, failures, opt-outs) for specific broadcast IDs." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_NOTE", "name": "Create Note", "description": "Create a note and attach it to a specific entity (contact, deal, account, etc.) in ActiveCampaign. Use this when you need to add notes to track information about contacts, deals, or accounts." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Create a new contact or update an existing contact in ActiveCampaign using the sync endpoint. This action uses the contact sync endpoint which automatically handles both creation and updates: - If a contact with the given email exists, it will be updated with the provided data - If no contact with the email exists, a new contact will be created This is the recommended way to ensure contact data is up-to-date without manually checking for existence." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_OR_UPDATE_CUSTOM_OBJECT_RECORD", "name": "Create or Update Custom Object Record", "description": "Tool to create or update a custom object record in ActiveCampaign. Use when you need to store custom data associated with contacts, accounts, or deals using custom object schemas. The API uses upsert logic: if external_id matches an existing record, it updates; otherwise, it creates a new record." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_PRISM_URL_WHITELIST", "name": "Add Domain to Tracking Whitelist", "description": "Add a domain to ActiveCampaign's site tracking whitelist. Use this to enable tracking, conversations, and WordPress integration for specific domains or pages in your ActiveCampaign account. This action is required before ActiveCampaign tracking scripts will function on your domain. You can control which features (tracking, conversations, WordPress) are enabled for each whitelisted domain." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_PRODUCT", "name": "Create Product in Catalog", "description": "Create a new product entry in the ActiveCampaign ecommerce catalog using GraphQL. This action creates a product in your ActiveCampaign ecommerce catalog with details like name, SKU, price, and variant information. The product is associated with a specific DeepData connection ID that links it to your e-commerce integration." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_SAVED_RESPONSE", "name": "Create Saved Response", "description": "Tool to create a new saved response in ActiveCampaign. Use when you need to create a reusable email template with title, subject, and body content." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_SEGMENTS_V2", "name": "Create Segment V2", "description": "Tool to create advanced segments in ActiveCampaign using the V2 segments API. Use when you need to create flexible contact segments with complex filtering conditions based on tags, lists, fields, or other contact attributes. Only segments supported by the segment-builder UI are guaranteed to work as expected." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_SHAREABLE_CAMPAIGN_TEMPLATE_LINK", "name": "Create Shareable Campaign Template Link", "description": "Tool to create a shareable link for a campaign template in ActiveCampaign. Use when you need to generate a URL that can be shared with others to access a specific campaign template." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_TASKOUTCOME", "name": "Create Task Outcome", "description": "Tool to create a new task outcome in ActiveCampaign. Use when you need to add a new outcome option for tasks, which helps categorize task results with associated sentiment." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_TASK_REMINDER", "name": "Create Task Reminder", "description": "Create a new task reminder notification in ActiveCampaign. Use this action to set up notifications that will remind users about upcoming tasks before their due date." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_USER", "name": "Create User", "description": "Creates a new user (team member/staff account) in ActiveCampaign with specified details. Use when you need to add a new team member who can log into ActiveCampaign. Note: This creates account users (staff), not contacts (marketing database entries)." }, { "slug": "ACTIVE_CAMPAIGN_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a new webhook in ActiveCampaign to receive real-time notifications when specific events occur. Use this when you need to set up automated notifications for contact activities like subscriptions, email interactions, or other events." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ACCOUNT", "name": "Delete Account", "description": "Permanently deletes an account from ActiveCampaign by its ID. This action is irreversible and will remove the account and all associated data from the system. Use this when you need to clean up old or unwanted accounts. The deletion is immediate and cannot be undone. Returns the deleted account ID upon successful deletion. Raises an error if the account is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ACCOUNT_CONTACTS", "name": "Delete Account Contact Association", "description": "Deletes an existing account-contact association in ActiveCampaign. Use when you need to remove the relationship between an account and a contact without deleting either entity." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ACCOUNT_CUSTOM_FIELD_DATA", "name": "Delete Account Custom Field Data", "description": "Tool to delete a custom account field value in ActiveCampaign. Use when you need to remove a specific custom field value associated with an account. Requires permission to manage accounts." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ACCOUNT_CUSTOM_FIELD_META", "name": "Delete Account Custom Field Meta", "description": "Tool to delete an account custom field meta definition from ActiveCampaign. Use when you need to remove a custom field definition permanently. Requires account management permissions. This action is irreversible." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ACCOUNTS_BULK", "name": "Delete Bulk Accounts", "description": "Tool to bulk delete multiple accounts from ActiveCampaign in a single operation. Use when you need to delete multiple accounts at once rather than deleting them individually. This action is irreversible and will permanently remove all specified accounts and their associated data. Provide a list of account IDs to delete." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ADDRESS", "name": "Delete Address", "description": "Permanently deletes an address from ActiveCampaign by its ID. This action is irreversible and will remove the address from the system. Use this when you need to clean up old or unwanted addresses. The deletion is immediate and cannot be undone. Returns the deleted address ID upon successful deletion. Raises an error if the address is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_ADDRESS_GROUP", "name": "Delete Address Group", "description": "Tool to delete an address group from ActiveCampaign by its ID. Use when you need to remove an address group permanently. This action is irreversible and will remove the address group from the system immediately." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_AN_ORDER", "name": "Delete An Order", "description": "Tool to permanently delete an e-commerce order from ActiveCampaign by its ID. Use when you need to remove an order from the system. This action is irreversible - the deleted order cannot be recovered." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CALENDAR", "name": "Delete Calendar Feed", "description": "Tool to permanently delete a calendar feed from ActiveCampaign by its ID. Use when you need to remove a calendar feed that is no longer needed. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CONNECTION", "name": "Delete Connection", "description": "Permanently deletes a connection from ActiveCampaign by its ID. This action is irreversible and will remove the connection from the system. Use this when you need to clean up old or unwanted connections. The deletion is immediate and cannot be undone. Returns the deleted connection ID upon successful deletion. Raises an error if the connection is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CONTACT", "name": "Delete Contact", "description": "Permanently deletes a contact from ActiveCampaign by its ID. This action is irreversible and will remove the contact and all associated data from the system. Use this when you need to clean up old or unwanted contacts. The deletion is immediate and cannot be undone. Returns the deleted contact ID upon successful deletion. Raises an error if the contact is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to permanently delete an e-commerce customer from ActiveCampaign by ID. Use when you need to remove a customer and all associated data. This action is irreversible and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field from ActiveCampaign by its ID. Use when you need to remove an unwanted or obsolete custom field. This action is irreversible and will permanently delete the field and its associated data." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_CUSTOM_FIELD_FIELD_GROUP", "name": "Delete Custom Field Field Group", "description": "Tool to delete a custom field field group member in ActiveCampaign. Use when you need to remove the association between a custom field and a field group. This operation is permanent and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL", "name": "Delete Deal", "description": "Tool to permanently delete a deal from ActiveCampaign by its ID. Use when you need to remove unwanted or obsolete deals from the system. This action is irreversible and will permanently remove the deal and all associated data. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_CUSTOM_FIELD_DATA", "name": "Delete Deal Custom Field Data", "description": "Tool to delete a custom deal field value in ActiveCampaign. Use when you need to remove custom field data from a deal. Requires deal management permissions and pipeline-specific permissions." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_CUSTOM_FIELD_META", "name": "Delete Deal Custom Field Metadata", "description": "Tool to delete a custom deal field metadata from ActiveCampaign. Use when you need to remove a custom field definition from deals. Requires deal management permissions and pipeline-specific permissions." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_PIPELINE", "name": "Delete Deal Pipeline", "description": "This tool deletes an existing deal pipeline in ActiveCampaign. When deleting a pipeline that has existing deals and stages associated with it, the DELETE request will remove all stages and deals associated with it. This tool complements the existing ACTIVE_CAMPAIGN_CREATE_DEAL_PIPELINE action and provides the ability to manage the full lifecycle of deal pipelines in ActiveCampaign." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_ROLE", "name": "Delete Deal Role", "description": "Tool to delete an existing deal role in ActiveCampaign. Use when you need to permanently remove a deal role that is no longer needed." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_STAGE", "name": "Delete Deal Stage", "description": "This tool deletes an existing deal stage in ActiveCampaign. Before deleting the stage, it provides options to handle existing deals: use action_type='Move' to move deals to a different stage/pipeline (requires new_pipeline_id and new_stage_id), or use action_type='Delete' to delete the stage directly. This action uses the ActiveCampaign DELETE /api/3/dealStages/{id} endpoint with additional logic to safely manage deals." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_DEAL_TASKS", "name": "Delete Deal Task", "description": "Permanently deletes a deal task from ActiveCampaign by its ID. Use when you need to remove a task associated with a deal. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_EVENT", "name": "Delete Event", "description": "Tool to delete an event tracking event from ActiveCampaign. Use when you need to remove an event name from the tracking whitelist." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_FIELD_RELATIONSHIP", "name": "Delete Field Relationship", "description": "Tool to delete a field relationship in ActiveCampaign. Use when you need to remove the association between a custom field and a list. This action is irreversible and will permanently remove the field relationship from the system." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_FIELD_VALUE", "name": "Delete Field Value", "description": "Tool to permanently delete a custom field value from ActiveCampaign by its ID. Use when you need to remove a specific field value from a contact. This action is irreversible and will remove the field value immediately." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_FORM", "name": "Delete Form", "description": "Tool to permanently delete a form from ActiveCampaign by its ID. Use when you need to remove old or unwanted forms. This action is irreversible and will remove the form and all associated data from the system." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_GROUP", "name": "Delete Group", "description": "Tool to permanently delete a permission group from ActiveCampaign by its ID. Use when you need to remove a group that is no longer needed. This action is irreversible and will remove the group from the system." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_LIST", "name": "Delete List", "description": "Permanently deletes a list from ActiveCampaign by its ID. This action is irreversible and will remove the list from the system. Use this when you need to clean up old or unwanted lists. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_MESSAGE", "name": "Delete Message", "description": "Permanently deletes a message from ActiveCampaign by its ID. This action is irreversible and will remove the message from the system. Use this when you need to clean up old or unwanted messages. Returns the deleted message ID upon successful deletion. Raises an error if the message is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_NOTE", "name": "Delete Note", "description": "Permanently deletes a note from ActiveCampaign by its ID. This action is irreversible and will remove the note and all associated data from the system. Use this when you need to clean up old or unwanted notes. The deletion is immediate and cannot be undone. Returns the deleted note ID upon successful deletion. Raises an error if the note is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_PRODUCT", "name": "Delete Product", "description": "Permanently delete a product from ActiveCampaign's e-commerce catalog by its ID. This action removes a product from the catalog using the deleteProduct GraphQL mutation. The deletion is immediate and irreversible. Use this when you need to remove discontinued or unwanted products from your catalog." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_RECORD_BY_EXTERNAL_ID", "name": "Delete Record by External ID", "description": "Permanently deletes a custom object record from ActiveCampaign by its external ID. This action is irreversible and will remove the record from the system. Use this when you need to clean up old or unwanted custom object records using their external identifier. The deletion is immediate and cannot be undone. Returns the deleted record's schema ID and external ID upon successful deletion. Raises an error if the record is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_RECORD_BY_ID", "name": "Delete Custom Object Record", "description": "Permanently deletes a custom object record from ActiveCampaign by its ID and schema ID. This action is irreversible and will remove the record and all associated data from the custom object. Use this when you need to clean up old or unwanted custom object records. The deletion is immediate and cannot be undone. Returns the deleted record ID and schema ID upon successful deletion. Raises an error if the record or schema is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_SAVED_RESPONSE", "name": "Delete Saved Response", "description": "Tool to permanently delete a saved response from ActiveCampaign by its ID. Use when you need to remove saved response templates that are no longer needed. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_SCHEMA", "name": "Delete Schema", "description": "Permanently deletes a custom object schema from ActiveCampaign by its UUID. This action is irreversible and will remove the schema and all associated data. Use with caution as deletion cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_SECONDARY_CONTACT", "name": "Delete Secondary Contact", "description": "Permanently deletes a secondary contact association from a deal in ActiveCampaign. This removes the link between a contact and a deal, but does not delete the contact or deal themselves. Use this when you need to remove a secondary contact from a deal. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_SEGMENTS_V2", "name": "Delete Segment V2", "description": "Tool to permanently delete a segment from ActiveCampaign by its UUID. This operation removes the segment including all its historic versions and cannot be undone. Use when you need to clean up unused or outdated segments. The API returns the segment's final state before deletion as an audit trail." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_TAG", "name": "Delete Tag", "description": "Tool to permanently delete a tag from ActiveCampaign by its ID. Use when you need to remove unused or unwanted tags from the system. This action is irreversible." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_USER", "name": "Delete User", "description": "Permanently deletes a user from ActiveCampaign by their ID. This action is irreversible and will remove the user account from the system. Use this when you need to remove team members or staff accounts. The deletion is immediate and cannot be undone. Returns the deleted user ID upon successful deletion. Raises an error if the user is not found." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_VARIABLE", "name": "Delete Variable", "description": "Permanently deletes a personalization variable from ActiveCampaign by its ID. Use when you need to remove unused or unwanted personalization variables. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_VARIABLES_BULK", "name": "Bulk Delete Variables", "description": "Tool to bulk delete personalization variables in ActiveCampaign. Use when you need to delete multiple personalization variables at once by providing their IDs. The operation will delete existing variables and silently ignore non-existent IDs." }, { "slug": "ACTIVE_CAMPAIGN_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently deletes a webhook from ActiveCampaign by its ID. Use this when you need to remove a webhook that is no longer needed. The deletion is immediate and cannot be undone." }, { "slug": "ACTIVE_CAMPAIGN_EDIT_CAMPAIGN", "name": "Edit Campaign", "description": "Edit an existing campaign in ActiveCampaign. Use this to modify campaign properties like the name." }, { "slug": "ACTIVE_CAMPAIGN_FIND_CONTACT", "name": "Find contact", "description": "Find a specific contact in ActiveCampaign using either their email address, ID, or phone number. This action provides a more efficient way to find a specific contact instead of listing all contacts." }, { "slug": "ACTIVE_CAMPAIGN_FIND_CONTACT_TASK", "name": "Find Contact Tasks", "description": "This tool allows you to find tasks associated with a specific contact in ActiveCampaign. It searches for tasks using the contact task title and optionally filters by contact ID. It returns an object with details such as task_id, title, description, status, due_date, owner_type (which is Subscriber for contact tasks), related_id, created_date, and updated_date." }, { "slug": "ACTIVE_CAMPAIGN_FIND_USER_ACTION", "name": "Find User by Email", "description": "Find an ActiveCampaign account user (team member/staff) by their email address. Returns user details including username, email, first name, last name, phone, signature, language preference, timezone, MFA status, and related resource links. Note: This finds account users (staff who can log into ActiveCampaign), not contacts (people in your marketing database). To find contacts, use the find contact action instead." }, { "slug": "ACTIVE_CAMPAIGN_GET_ACCOUNT_CONTACT", "name": "Get Account Contact Association", "description": "Tool to retrieve an existing account-contact association in ActiveCampaign. Use when you need to get details about the relationship between a specific account and contact." }, { "slug": "ACTIVE_CAMPAIGN_GET_ACCOUNT_CUSTOM_FIELD_DATA", "name": "Get Account Custom Field Data", "description": "Retrieves a specific account custom field data record by ID. Use when you need to get the value of a custom field associated with an account." }, { "slug": "ACTIVE_CAMPAIGN_GET_ACCOUNT_CUSTOM_FIELD_META", "name": "Get Account Custom Field Metadata", "description": "Retrieve metadata for a specific account custom field by ID. Returns details including field label, type, options, default value, visibility settings, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_GET_ADDRESS", "name": "Get Address by ID", "description": "Retrieves a single address by ID from ActiveCampaign. Use when you need to fetch complete details of a specific address including company name, location fields, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_GET_ALL_FIELD_RELATIONSHIPS", "name": "Get All Field Relationships", "description": "Get all field relationships in ActiveCampaign. Use this to retrieve custom field associations with lists or other entities. Supports pagination via limit and offset parameters for handling large numbers of field relationships." }, { "slug": "ACTIVE_CAMPAIGN_GET_AUDIENCES", "name": "Get Audience Segment by ID", "description": "Retrieve a specific audience segment by ID from ActiveCampaign. Returns detailed information about the segment including its conditions, groups, and metadata. Use this action when you need to inspect the configuration or criteria of a saved segment/audience." }, { "slug": "ACTIVE_CAMPAIGN_GET_BRANDING", "name": "Get Branding", "description": "Tool to retrieve an existing branding resource from ActiveCampaign by its ID. Use when you need to fetch branding configuration details such as site name, logos, templates, and styling information." }, { "slug": "ACTIVE_CAMPAIGN_GET_BROADCAST_METRICS_FAILURES", "name": "Get Broadcast Metrics Failures", "description": "Retrieve grouping and counts of failures for an SMS broadcast in ActiveCampaign. Use when you need to analyze failure patterns for a specific broadcast, with optional date filtering." }, { "slug": "ACTIVE_CAMPAIGN_GET_BROADCASTS_METRICS", "name": "Get Broadcasts Metrics", "description": "Tool to retrieve metrics for specified SMS broadcast IDs in ActiveCampaign. Use when you need detailed performance data including sends, deliveries, replies, failures, opt-outs, and clicks for specific broadcasts." }, { "slug": "ACTIVE_CAMPAIGN_GET_BROADCASTS_RECIPIENTS", "name": "Get Broadcast Recipients", "description": "Fetch all contacts who were sent a specific SMS broadcast in ActiveCampaign. Returns recipient details including delivery status, engagement metrics, and replies." }, { "slug": "ACTIVE_CAMPAIGN_GET_BULK_IMPORT_STATUS_INFO", "name": "Get Bulk Import Status Info", "description": "Tool to retrieve the status of a specific bulk import in ActiveCampaign. Use when you need to check the progress and results of a bulk contact import, including newly created contact IDs and any failed email addresses." }, { "slug": "ACTIVE_CAMPAIGN_GET_CALENDAR", "name": "Get Calendar Feed", "description": "Tool to retrieve a specific calendar feed from ActiveCampaign by its ID. Returns calendar details including title, type, token, notification settings, and creation/modification dates." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_AUTOMATION_CAMPAIGN_LISTS", "name": "Get Campaign Automation Campaign Lists", "description": "Tool to retrieve all lists associated with a specific campaign automation in ActiveCampaign. Use when you need to see which lists a campaign is configured to send to." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_AUTOMATIONS", "name": "Get Campaign Automations", "description": "Get automation information associated with a specific campaign in ActiveCampaign. This action retrieves automation details linked to a campaign ID." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_BY_ID", "name": "Get Campaign By ID", "description": "Retrieve a single campaign by its ID from ActiveCampaign. Returns comprehensive campaign details including engagement metrics, content configuration, and automation settings." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_LINKS", "name": "Get Campaign Links", "description": "Get all links associated with a specific campaign in ActiveCampaign. Use when you need to retrieve tracking links, read trackers, and other URLs associated with a campaign." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_MESSAGE", "name": "Get Campaign Message", "description": "Get the message associated with a specific campaign in ActiveCampaign. Returns message details including subject, content (HTML and text), sender information, and configuration settings." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_MESSAGES", "name": "Get Campaign Messages", "description": "Get campaign messages associated with a specific campaign in ActiveCampaign. Returns an array of message objects linked to the campaign ID." }, { "slug": "ACTIVE_CAMPAIGN_GET_CAMPAIGN_USER", "name": "Get Campaign User", "description": "Get the user (account owner/staff member) associated with a specific campaign in ActiveCampaign. Returns user details including username, email, name, phone, and other account information." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_ACCOUNT_CONTACTS", "name": "Get Contact Account Contacts", "description": "Retrieve all account-contact associations for a specific contact in ActiveCampaign. Use this action when you need to see which accounts a contact is associated with and their role at each account." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_AUTOMATION_ENTRY_COUNTS", "name": "Get Contact Automation Entry Counts", "description": "Tool to retrieve the number of times a contact has entered each automation. Use when you need to understand a contact's automation engagement history." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_AUTOMATIONS", "name": "Get Contact Automations", "description": "Retrieve all automations that a specific contact is enrolled in or has been enrolled in. Returns automation enrollment details including status, progress, and completion information." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_DATA", "name": "Get contact data", "description": "Retrieve detailed data for a specific contact in ActiveCampaign. Use when you need to access a contact's geographic information, social media IDs, Google Analytics data, and tracking timestamps." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_DATA_GOALS", "name": "Get Contact Goals", "description": "Retrieve a contact's goals from ActiveCampaign. Use when you need to access goal completion data, automation goals, and goal tracking information for a specific contact." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_DEALS", "name": "Get Contact Deals", "description": "Tool to retrieve all deals associated with a specific contact in ActiveCampaign. Use when you need to see all deals linked to a particular contact, including deal details like value, stage, status, and associated metadata." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_EVENTS_AND_ACTIVITIES", "name": "Get Contact Events and Activities", "description": "Tool to retrieve contact events and activities from ActiveCampaign. Use when you need to view the activity history for a specific contact or all contacts, including deal-related activities and general activities. Returns paginated results with limit and offset parameters." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_FIELD_VALUES", "name": "Get Contact Field Values", "description": "Tool to retrieve all custom field values for a specific contact in ActiveCampaign. Use when you need to access a contact's custom field data such as custom text fields, dropdown selections, or other custom attributes." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_GEO_IPS_LIST", "name": "Get Contact Geo IPs List", "description": "Retrieve all geo IP addresses associated with a specific contact in ActiveCampaign. Use when you need to view the geographic locations from which a contact has interacted with your campaigns." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_LISTS", "name": "Get Contact Lists", "description": "Tool to retrieve all list memberships for a specific contact in ActiveCampaign. Use when you need to see which lists a contact is subscribed to and their subscription details." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_LOGS", "name": "Get Contact Logs", "description": "Tool to retrieve logs for a specific contact in ActiveCampaign. Use when you need to access a contact's activity history, including subscription changes, campaign interactions, and automation events." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_NOTES", "name": "Get contact notes", "description": "Retrieve all existing notes associated with a specific contact in ActiveCampaign. Use when you need to view all notes that have been added to a contact's record." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_ORGANIZATION", "name": "Get Contact Organization", "description": "Tool to retrieve organization information associated with a specific contact in ActiveCampaign. Use when you need to get details about the organization that a contact belongs to." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_PLUS_APPEND", "name": "Get Contact Plus Append", "description": "Tool to retrieve a contact's plus append enrichment data from ActiveCampaign. Use when you need to access enriched contact information including social media profiles, profile images, and demographic data from services like FullContact, Rapleaf, and Fliptop." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_SCORE_VALUES", "name": "Get Contact Score Values", "description": "Tool to retrieve all score values associated with a specific contact in ActiveCampaign. Use when you need to see scoring data for a contact." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_TAGS", "name": "Get Contact Tags", "description": "Tool to retrieve all tags associated with a specific contact in ActiveCampaign. Use when you need to see which tags are applied to a contact." }, { "slug": "ACTIVE_CAMPAIGN_GET_CONTACT_TRACKING_LOGS", "name": "Get contact tracking logs", "description": "Retrieve tracking logs for a specific contact in ActiveCampaign. Use when you need to view all tracking events such as page views, link clicks, and file downloads associated with a contact." }, { "slug": "ACTIVE_CAMPAIGN_GET_CUSTOM_FIELD", "name": "Get Custom Field", "description": "Retrieve a specific custom field by ID from ActiveCampaign. Returns field metadata including title, type, options, relationships, and configuration settings. Use when you need detailed information about a custom contact field." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_CUSTOM_FIELD_DATA", "name": "Get Deal Custom Field Data", "description": "Retrieves a specific deal custom field data record by ID. Use when you need to get the value of a custom field associated with a deal." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_CUSTOM_FIELD_META", "name": "Get Deal Custom Field Metadata", "description": "Retrieve metadata for a specific deal custom field by ID. Returns details including field label, type, options, default value, visibility settings, and timestamps. Requires deal management permission." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_PIPELINE", "name": "Get Deal Pipeline", "description": "Tool to retrieve an existing pipeline (deal group) from ActiveCampaign by its ID. Use when you need to get details about a specific pipeline including its name, currency, stages, and configuration settings." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_STAGE", "name": "Get Deal Stage", "description": "Tool to retrieve an existing deal stage from ActiveCampaign by its ID. Use when you need to get detailed information about a specific stage including its title, color, order, and card region configurations." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_TASK", "name": "Get Deal Task", "description": "Tool to retrieve an existing task in ActiveCampaign by its ID. Use when you need to get detailed information about a specific task including its title, status, due date, assignee, and related contact or deal information." }, { "slug": "ACTIVE_CAMPAIGN_GET_DEAL_TASK_TYPE", "name": "Get Deal Task Type", "description": "Tool to retrieve an existing deal task type in ActiveCampaign by its ID. Use when you need to get details about a specific task type configuration." }, { "slug": "ACTIVE_CAMPAIGN_GET_EVENT_TRACKING_STATUS", "name": "Get Event Tracking Status", "description": "Tool to retrieve the event tracking status for your ActiveCampaign account. Use this to check whether event tracking is enabled or disabled." }, { "slug": "ACTIVE_CAMPAIGN_GET_FIELD_VALUE", "name": "Get Field Value", "description": "Tool to retrieve a specific field value by its ID in ActiveCampaign. Use when you need to get detailed information about a particular custom field value including its contact, field, value, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_GET_FORM", "name": "Get Form", "description": "Retrieve a single form by its ID from ActiveCampaign. Returns comprehensive form details including field configuration, styling, submission behavior, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_GET_GROUP_BY_ID", "name": "Get Group By ID", "description": "Retrieve a specific group by ID in ActiveCampaign. Use this to get detailed information about a single group including its title, description, settings, and associated resource links." }, { "slug": "ACTIVE_CAMPAIGN_GET_GROUP_LIMITS", "name": "Get Group Limits", "description": "Tool to retrieve group limits configured for different groups in ActiveCampaign account. Use when you need to check limits for emails, contacts, lists, campaigns, users, and other resources per group." }, { "slug": "ACTIVE_CAMPAIGN_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve all mailing lists in ActiveCampaign. Use when you need to fetch list IDs or list information for subscription management." }, { "slug": "ACTIVE_CAMPAIGN_GET_LOGGED_IN_USER", "name": "Get Logged-In User", "description": "Retrieve information about the currently authenticated user (the user whose API token is being used). Use when you need to identify the current user or access their account details." }, { "slug": "ACTIVE_CAMPAIGN_GET_NOTE", "name": "Get Note", "description": "Tool to retrieve a specific note from ActiveCampaign by its ID. Use when you need to get details about a particular note including its content, creation date, and related entity." }, { "slug": "ACTIVE_CAMPAIGN_GET_ORDER", "name": "Get Order from ActiveCampaign", "description": "Retrieve a single order from ActiveCampaign by legacy connection ID and store order ID. Use this to fetch complete order details including customer information, line items, addresses, and order status." }, { "slug": "ACTIVE_CAMPAIGN_GET_PRODUCT_BY_ID", "name": "Get Product By ID", "description": "Retrieve a single product by its ID from ActiveCampaign's e-commerce catalog. Use when you need to fetch detailed information about a specific product, including its name, SKU, pricing, and description." }, { "slug": "ACTIVE_CAMPAIGN_GET_RECENT_SEGMENT_COUNTS", "name": "Get Recent Segment Counts", "description": "Retrieve the most recent result count for segments that were run without additional criteria. Use when you need to check segment sizes or monitor segment growth over time." }, { "slug": "ACTIVE_CAMPAIGN_GET_RECORD_BY_EXTERNAL_ID", "name": "Get Record by External ID", "description": "Tool to retrieve a custom object record from ActiveCampaign by its external ID. Use when you need to get detailed information about a specific custom object record using its external identifier." }, { "slug": "ACTIVE_CAMPAIGN_GET_RECORD_BY_ID", "name": "Get Custom Object Record By ID", "description": "Tool to retrieve a custom object record from ActiveCampaign by schema ID and record ID. Use when you need to get detailed information about a specific custom object record including its fields, values, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_GET_SAVED_RESPONSE", "name": "Get Saved Response", "description": "Tool to retrieve a specific saved response from ActiveCampaign by its ID. Use when you need to fetch details of a saved response including title, subject, and body content." }, { "slug": "ACTIVE_CAMPAIGN_GET_SCHEMA_BY_ID", "name": "Get Schema by ID", "description": "Retrieve a specific custom object schema by ID in ActiveCampaign. Use this to get detailed information about a schema including its fields, relationships, and metadata. Optionally include deleted fields by setting show_fields to 'all'." }, { "slug": "ACTIVE_CAMPAIGN_GET_SECONDARY_CONTACT", "name": "Get Secondary Contact", "description": "Tool to retrieve a specific secondary contact (contact-deal association) by ID in ActiveCampaign. Use when you need to get details about a particular secondary contact associated with a deal." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_COUNT_BY_TIMESTAMP", "name": "Get Segment Count by Timestamp", "description": "Tool to retrieve all result counts for a segment that were run without an AdditionalCriteria. Use when you need to access historical segment count data before a specific timestamp. Returns up to 50 segment count history records." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_COUNT_HISTORY", "name": "Get Segment Count History", "description": "Tool to retrieve all historical result counts for a given segment that were run without additional criteria. Use when you need to track segment size changes over time or audit segment evaluation history. Returns up to 50 results with data available for the past 90 days." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_MATCH", "name": "Get Segment Match", "description": "Retrieve segment match evaluation for a contact in ActiveCampaign. Use this to determine if a specific contact matches the criteria of a given segment." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_MATCH_ALL_RESULT", "name": "Get Segment Match-All Result Set", "description": "Tool to retrieve segment match-all result set by ID. Use when you need to check the status and results of a segment match-all request. The is_ready attribute indicates if results are complete (true) or still processing (false). If is_ready is false and run_id_end is populated, the request has errored." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_MATCH_BY_EXTERNAL_ID", "name": "Get Segment Match by External ID", "description": "Check if a contact matches a segment using segment ID, contact ID, and external ID. Use when you need to verify if a specific contact belongs to a segment and get match evaluation details." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENT_MATCH_SOME_RESULT", "name": "Get Segment Match Result", "description": "Tool to retrieve segment match result set by run ID in ActiveCampaign. Use when you need to fetch the results of a segment evaluation request, including which contacts match the segment criteria. The is_ready field indicates if results are available." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENTS_V2", "name": "Get Segment V2", "description": "Tool to retrieve a specific segment by its ID in ActiveCampaign. Use when you need detailed information about a segment including its conditions, groups, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_GET_SEGMENTS_V2_CREATED_DATE", "name": "Get Historic Segment by Timestamp", "description": "Tool to retrieve a segment as it existed at a given point in time in ActiveCampaign. Use when you need to access the historical state of a segment definition. Only supports segments with non-numeric segment IDs." }, { "slug": "ACTIVE_CAMPAIGN_GET_SITE_TRACKING_CODE", "name": "Get Site Tracking Code", "description": "Tool to retrieve the site tracking JavaScript code for your ActiveCampaign account. Use when you need to get the tracking code snippet to embed on your website for visitor tracking and behavior monitoring. The returned code enables site tracking features like page view tracking, visitor identification, and site-based automation triggers." }, { "slug": "ACTIVE_CAMPAIGN_GET_SITE_TRACKING_STATUS", "name": "Get Site Tracking Status", "description": "Tool to retrieve the site tracking status for your ActiveCampaign account. Use this to check whether site tracking is enabled or disabled." }, { "slug": "ACTIVE_CAMPAIGN_GET_SMS_BROADCAST_METRICS_SNAPSHOT", "name": "Get SMS Broadcast Metrics Snapshot", "description": "Tool to retrieve snapshot data for all SMS broadcasts in ActiveCampaign. Use when you need aggregate metrics including campaigns, sends, deliveries, clicks, replies, failures, and opt-outs." }, { "slug": "ACTIVE_CAMPAIGN_GET_SMS_CREDITS", "name": "Get SMS Credits", "description": "Tool to retrieve the current period's SMS credit usage and remaining balance. Use when you need to check how many SMS credits are available, used, or included in the billing cycle." }, { "slug": "ACTIVE_CAMPAIGN_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve a tag from ActiveCampaign by its ID. Use when you need to get detailed information about a specific tag including its name, type, description, and subscriber count." }, { "slug": "ACTIVE_CAMPAIGN_GET_TASKOUTCOME", "name": "Get Task Outcome", "description": "Tool to retrieve a specific task outcome from ActiveCampaign by its ID. Use when you need to get details about a task outcome including its title, sentiment, and associated deal task types." }, { "slug": "ACTIVE_CAMPAIGN_GET_TEMPLATE", "name": "Get Template", "description": "Retrieve a single template by its ID from ActiveCampaign. Returns comprehensive template details including content, subject, and configuration settings." }, { "slug": "ACTIVE_CAMPAIGN_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a specific ActiveCampaign account user (team member/staff) by their ID. Use when you need to get detailed information about a specific user including username, email, name, phone, signature, language, timezone, and MFA status." }, { "slug": "ACTIVE_CAMPAIGN_GET_USER_BY_USERNAME", "name": "Get User by Username", "description": "Tool to retrieve an ActiveCampaign account user (team member/staff) by their username. Use when you need to get detailed information about a specific user by username." }, { "slug": "ACTIVE_CAMPAIGN_GET_USERS", "name": "Get Users", "description": "Tool to retrieve all ActiveCampaign account users (team members/staff). Use when you need to list all users in the account with pagination and sorting options." }, { "slug": "ACTIVE_CAMPAIGN_GET_USERS_BY_GROUP", "name": "Get Users By Group", "description": "Tool to retrieve all users associated with a specific group in ActiveCampaign. Use when you need to get the list of users who belong to a particular group." }, { "slug": "ACTIVE_CAMPAIGN_GET_VARIABLE", "name": "Get Variable", "description": "Tool to retrieve a personalization variable from ActiveCampaign by its ID. Use when you need to get details about a specific variable including its name, tag, content, format, and associated lists." }, { "slug": "ACTIVE_CAMPAIGN_GET_VARIABLES", "name": "Get Personalization Variables", "description": "Tool to retrieve personalization variables from ActiveCampaign. Use when you need to list or search for custom variables that can be used for personalization in campaigns and automations." }, { "slug": "ACTIVE_CAMPAIGN_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieve an existing webhook by ID from ActiveCampaign. Use this when you need to get detailed information about a specific webhook including its URL, events, sources, and current state." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ACCOUNT_CONTACTS", "name": "List Account Contact Associations", "description": "Tool to retrieve all existing account-contact associations in ActiveCampaign. Use when you need to list relationships between accounts and contacts, with optional filters." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ACCOUNT_CUSTOM_FIELD_DATA", "name": "List Account Custom Field Data", "description": "Tool to list all custom field values for accounts in ActiveCampaign. Use when you need to retrieve account custom field data including field IDs, values, account associations, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ACCOUNT_CUSTOM_FIELD_META", "name": "List Account Custom Field Metadata", "description": "Tool to list all account custom field metadata in ActiveCampaign. Use when you need to retrieve information about custom fields available for accounts, including field types, labels, options, and validation requirements." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ADDRESSES", "name": "List Addresses", "description": "Tool to list all addresses in the ActiveCampaign account. Use when you need to retrieve all configured addresses. Returns an array of address objects with company name, address details, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_ACCOUNTS", "name": "List All Accounts", "description": "Tool to list all accounts in ActiveCampaign. Use when you need to retrieve all existing accounts, optionally filtered by name search. Can include contact and deal counts for each account." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_CONTACTS", "name": "List all contacts", "description": "List all contacts in ActiveCampaign. This action allows you to: 1. List all contacts with pagination 2. Search contacts by name, organization, phone, or email 3. Filter contacts by email pattern 4. Sort contacts by various fields 5. Filter contacts by creation and update dates 6. Filter contacts by list, tag, or segment" }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_CUSTOM_FIELDS2", "name": "List All Custom Fields (with pagination)", "description": "Tool to list all custom fields in ActiveCampaign with pagination support. Use when you need to retrieve information about custom fields with control over the number of results returned per request." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_CUSTOM_FIELD_VALUES", "name": "List All Custom Field Values", "description": "Tool to list all custom field values in ActiveCampaign. Use when you need to retrieve all custom field values across all contacts including field IDs, values, contact associations, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_EVENTS_NAME_ONLY", "name": "List All Event Tracking Events", "description": "Tool to list all whitelisted event tracking events in ActiveCampaign. Use when you need to retrieve the names of all events that are whitelisted for tracking and can be used in automations." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_SCHEMAS", "name": "List All Schemas", "description": "Tool to list all custom object schemas in ActiveCampaign. Use when you need to retrieve all schema definitions including their fields, relationships, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_TAGS2", "name": "List All Tags", "description": "Tool to retrieve all tags in ActiveCampaign with search functionality. Use when you need to list or search for tags." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ALL_WHITE_LISTED_DOMAINS", "name": "List All Whitelisted Domains", "description": "Tool to list all whitelisted domains for site tracking in ActiveCampaign. Use when you need to retrieve all domains that are allowed for site tracking." }, { "slug": "ACTIVE_CAMPAIGN_LIST_AUDIENCES", "name": "List Audiences", "description": "Retrieve all saved segment summaries (audiences) from ActiveCampaign. Returns a list of all saved segments with their configurations, conditions, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_LIST_AUTOMATIONS", "name": "List Automations", "description": "List all automations in ActiveCampaign. Use this to retrieve all automation workflows in your account. Supports pagination via limit and offset parameters for handling large numbers of automations." }, { "slug": "ACTIVE_CAMPAIGN_LIST_BULK_IMPORT_STATUS", "name": "List Bulk Import Status", "description": "Tool to monitor bulk import progress in ActiveCampaign. Use this after sending bulk data via POST endpoint to track the status of outstanding and recently completed batches. Requires the batchId returned from the bulk import POST request." }, { "slug": "ACTIVE_CAMPAIGN_LIST_BULK_IMPORT_STATUS_AGGREGATE", "name": "List Bulk Import Status Aggregate", "description": "Tool to retrieve aggregate progress data for all bulk import jobs in ActiveCampaign. Returns daily summaries of outstanding and recently completed batch jobs in a rolling 7-day window. Use this to monitor overall bulk import progress across all batches without needing a specific batch ID." }, { "slug": "ACTIVE_CAMPAIGN_LIST_CALENDARS", "name": "List All Calendar Feeds", "description": "Tool to list all calendar feeds in ActiveCampaign. Use when you need to retrieve all available calendar feeds for the account." }, { "slug": "ACTIVE_CAMPAIGN_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list all campaigns in ActiveCampaign. Use when you need to retrieve campaign information including standard campaigns and automation campaigns." }, { "slug": "ACTIVE_CAMPAIGN_LIST_CONTACT_AUTOMATIONS", "name": "List Contact Automations", "description": "List all automations that contacts are enrolled in. Returns enrollment details including status, dates, and progress for each contact-automation pair." }, { "slug": "ACTIVE_CAMPAIGN_LIST_CONTACT_DEALS", "name": "List All Secondary Contacts", "description": "Tool to retrieve all secondary contacts (contact-deal associations) in ActiveCampaign. Use when you need to list all additional contacts associated with deals, beyond the primary contacts." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_ACTIVITIES", "name": "List All Deal Activities", "description": "Tool to retrieve all recent activities for deals in ActiveCampaign. Use when you need to view activity history across deals, including notes, tasks, and other interactions." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_CUSTOM_FIELD_DATA", "name": "List Deal Custom Field Data", "description": "Tool to list all custom field values for deals in ActiveCampaign. Use when you need to retrieve deal custom field data including field IDs, values, deal associations, and timestamps." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_CUSTOM_FIELD_META", "name": "List Deal Custom Field Metadata", "description": "Tool to list all deal custom field metadata in ActiveCampaign. Use when you need to retrieve information about custom fields available for deals, including field types, labels, options, and validation requirements. Requires deal management permissions." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEALGROUPS", "name": "List Deal Pipelines", "description": "Tool to retrieve all existing deal pipelines from ActiveCampaign. Use when you need to list all pipelines in the account or filter pipelines by title." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_ROLES", "name": "List All Deal Roles", "description": "Tool to retrieve all deal roles in ActiveCampaign. Use when you need to view available deal roles that can be assigned to contacts in deals." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEALS2", "name": "List All Deals (Search & Filter)", "description": "Tool to list all deals from ActiveCampaign with search and filtering capabilities. Use when you need to retrieve deals with search by title or filter by stage, pipeline, owner, or status." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_STAGES", "name": "List Deal Stages", "description": "Tool to list all deal stages (pipeline stages) in ActiveCampaign. Use when you need to retrieve stage information for mapping stage titles to stage IDs before updating or moving deals. Optionally filter by pipeline/group ID or stage title." }, { "slug": "ACTIVE_CAMPAIGN_LIST_DEAL_TASK_TYPES", "name": "List All Deal Task Types", "description": "Tool to retrieve all existing task types for deals in ActiveCampaign. Use when you need to view available task type categories that can be assigned to deal tasks." }, { "slug": "ACTIVE_CAMPAIGN_LIST_EMAIL_ACTIVITIES", "name": "List Email Activities", "description": "Tool to list all email activities in ActiveCampaign. Use when you need to retrieve email activity records for a specific subscriber or deal. At least one filter parameter (subscriber ID or deal ID) should be provided for optimal performance." }, { "slug": "ACTIVE_CAMPAIGN_LIST_FORMS", "name": "List Forms", "description": "Tool to list all forms in ActiveCampaign. Use when you need to retrieve form information including form configurations, fields, and styling." }, { "slug": "ACTIVE_CAMPAIGN_LIST_GROUP_MEMBERS", "name": "List All Group Members", "description": "Tool to list all group members in ActiveCampaign. Use when you need to retrieve the relationships between custom fields and field groups. Group members link custom fields to their display groups." }, { "slug": "ACTIVE_CAMPAIGN_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve all permission groups from ActiveCampaign. Use when you need to list user groups with their permission settings. Supports pagination via limit and offset parameters." }, { "slug": "ACTIVE_CAMPAIGN_LIST_MESSAGES", "name": "List Messages", "description": "Tool to list all messages in ActiveCampaign. Use when you need to retrieve message information including email content, sender details, and metadata." }, { "slug": "ACTIVE_CAMPAIGN_LIST_NOTES", "name": "List all notes", "description": "Retrieve a list of all notes in ActiveCampaign. Use when you need to view all notes across all contacts and activities in the account." }, { "slug": "ACTIVE_CAMPAIGN_LIST_ORDER_PRODUCTS", "name": "List Order Products", "description": "Tool to list all e-commerce order products in ActiveCampaign. Use when you need to retrieve all order products with pagination support." }, { "slug": "ACTIVE_CAMPAIGN_LIST_PRISM_URL_WHITELISTINGS", "name": "List Prism URL Whitelistings", "description": "Tool to list all whitelisted site tracking domains in ActiveCampaign. Use when you need to retrieve domains that are allowed for site tracking." }, { "slug": "ACTIVE_CAMPAIGN_LIST_RECORDS_FOR_SCHEMA", "name": "List Records for Schema", "description": "Tool to list custom object records for a specific schema in ActiveCampaign. Use when you need to retrieve records created from a custom object schema. Note: Non-admin users must provide a filter parameter for contact, account, or deal." }, { "slug": "ACTIVE_CAMPAIGN_LIST_SAVED_RESPONSES", "name": "List Saved Responses", "description": "Tool to list all saved responses in ActiveCampaign. Use when you need to retrieve saved response templates for one-off personal emails." }, { "slug": "ACTIVE_CAMPAIGN_LIST_SCORES", "name": "List All Scores", "description": "Tool to list all scoring rules configured in ActiveCampaign. Use when you need to retrieve all available scores for contacts or deals." }, { "slug": "ACTIVE_CAMPAIGN_LIST_SEGMENT_MATCH_ALL", "name": "List Segment Match All Contacts", "description": "Initiate a match-all request for contacts in a segment. If results are not ready within 4 seconds, returns immediately with is_ready=False and a run_id. Use when you need to retrieve all contacts that match a specific segment's criteria, especially for large segments where immediate results may not be available." }, { "slug": "ACTIVE_CAMPAIGN_LIST_SMS_BROADCAST_LISTS", "name": "List SMS Broadcast Lists", "description": "Tool to retrieve a paged list of all SMS broadcast lists in ActiveCampaign. Use when you need to view available SMS broadcast lists, optionally filtered by name." }, { "slug": "ACTIVE_CAMPAIGN_LIST_SMS_BROADCASTS", "name": "List SMS Broadcasts", "description": "Tool to list all SMS broadcasts in ActiveCampaign with optional filtering and pagination. Use when you need to retrieve broadcast messages, check their status, or search for specific broadcasts by name or date range." }, { "slug": "ACTIVE_CAMPAIGN_LIST_TASK_OUTCOMES", "name": "List Task Outcomes", "description": "Tool to retrieve all existing task outcomes from ActiveCampaign. Use when you need to list all available task outcome options that can be assigned to tasks." }, { "slug": "ACTIVE_CAMPAIGN_LIST_WEBHOOK_EVENTS", "name": "List Webhook Events", "description": "List all available webhook events in ActiveCampaign. Use this action when you need to discover what webhook events are available for subscription." }, { "slug": "ACTIVE_CAMPAIGN_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all existing webhooks in ActiveCampaign. Use when you need to retrieve all configured webhooks including their names, URLs, events, and sources." }, { "slug": "ACTIVE_CAMPAIGN_LOCK_PERSONALIZATION", "name": "Lock Personalization Variable", "description": "Tool to lock a personalization variable in ActiveCampaign. Use when you need to prevent modifications to a personalization variable. Once locked, the variable cannot be edited." }, { "slug": "ACTIVE_CAMPAIGN_MANAGE_CONTACT_TAG", "name": "Manage contact tag", "description": "Manage tags for a contact in ActiveCampaign. This action allows adding or removing tags from a contact. The action can be performed using either the contact's ID or email address." }, { "slug": "ACTIVE_CAMPAIGN_REMOVE_CONTACT_FROM_AUTOMATION", "name": "Remove Contact from Automation", "description": "Removes a contact from a specified automation in ActiveCampaign. This action looks up the contact by their email address to get their ID, then removes them from the specified automation. A contact can be enrolled in the same automation multiple times (different runs), and you can choose to remove them from all runs or just the most recent run using the run_remove_option parameter. Use this when you need to unenroll a contact from an automation workflow they're currently enrolled in. This is a destructive operation that cannot be undone. Technical details: Uses /api/3/contacts to find the contact, /api/3/contactAutomations to list their enrollments, and DELETE /api/3/contactAutomations/{id} to remove each enrollment." }, { "slug": "ACTIVE_CAMPAIGN_REMOVE_DOMAIN_FROM_WHITELIST", "name": "Remove Domain from Whitelist", "description": "Remove a domain from ActiveCampaign's URL whitelist. Use this to revoke site tracking access for a specific domain that was previously whitelisted." }, { "slug": "ACTIVE_CAMPAIGN_REMOVE_TAG_FROM_CONTACT", "name": "Remove Tag from Contact", "description": "Tool to remove a tag from a contact in ActiveCampaign. Use when you need to disassociate a tag from a contact. Requires the contactTag ID (the relationship ID, not the tag ID itself)." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ACCOUNT", "name": "Retrieve Account", "description": "Tool to retrieve an account from ActiveCampaign by its ID. Use when you need to get detailed information about a specific account including its name, URL, timestamps, and custom fields." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_A_DEAL", "name": "Retrieve a Deal", "description": "Tool to retrieve a specific deal by its ID in ActiveCampaign. Use when you need detailed information about a single deal including its title, value, stage, status, and associated contacts or organizations." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ALL_CONNECTIONS", "name": "Retrieve All Connections", "description": "Tool to retrieve all Deep Data connection resources in ActiveCampaign. Use when you need to list connections between the ActiveCampaign account and external services like Shopify or other e-commerce platforms." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ALL_CUSTOMERS", "name": "Retrieve All E-Commerce Customers", "description": "Tool to retrieve all e-commerce customer resources from ActiveCampaign. Use when you need to list customers from external e-commerce services like Shopify, including aggregated metrics such as total revenue, orders, and products." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ALL_DEALS", "name": "Retrieve All Deals", "description": "Tool to retrieve all deals from ActiveCampaign with filtering and pagination support. Use when you need to list deals, optionally filtered by stage, contact, organization, status, or value range." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ALL_ORDERS", "name": "Retrieve All E-Commerce Orders", "description": "Tool to retrieve all e-commerce orders from ActiveCampaign with pagination support. Use when you need to list orders from external e-commerce platforms like Shopify, including order details such as total price, products, and customer information." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_ALL_PRODUCTS_FOR_ORDER", "name": "Retrieve All Products for Order", "description": "Tool to retrieve all products associated with a specific e-commerce order in ActiveCampaign. Use when you need to list all products that belong to a particular order." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_AN_ORDER", "name": "Retrieve An Order", "description": "Tool to retrieve an e-commerce order from ActiveCampaign by its ID. Use when you need to get detailed information about a specific order including customer, pricing, products, and order status." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_AN_ORDER_PRODUCT", "name": "Retrieve an Order Product", "description": "Tool to retrieve an ecommerce order product from ActiveCampaign by its ID. Use when you need to get detailed information about a specific order product including SKU, price, quantity, and related order details." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_CONNECTION", "name": "Retrieve Connection", "description": "Tool to retrieve a connection from ActiveCampaign by its ID. Use when you need to get detailed information about a specific connection including service type, status, and synchronization details." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_CUSTOMER", "name": "Retrieve Customer", "description": "Tool to retrieve an e-commerce customer from ActiveCampaign by their ID. Use when you need to get detailed information about a specific customer including email, revenue, order statistics, and connection details." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_DEAL_ACTIVITIES", "name": "Retrieve Deal Activities", "description": "Tool to retrieve all activities associated with a deal in ActiveCampaign. Use when you need to track changes, interactions, and history for a specific deal including contact additions, notes, stage changes, and custom field updates." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_LIST", "name": "Retrieve List", "description": "Tool to retrieve a specific list from ActiveCampaign by its ID. Use when you need to get detailed information about a list including its name, description, tracking settings, and configuration." }, { "slug": "ACTIVE_CAMPAIGN_RETRIEVE_MESSAGE", "name": "Retrieve Message", "description": "Tool to retrieve a specific message by its ID in ActiveCampaign. Use when you need detailed information about a single message including its subject, content (HTML and text), sender information, and configuration settings." }, { "slug": "ACTIVE_CAMPAIGN_SAVE_BROWSE_SESSION", "name": "Save Browse Session", "description": "Create a browse session in ActiveCampaign for testing purposes. Use this to simulate customer browsing behavior in a specified state. This action creates a new browse session with the specified status, products, and metadata. It is intended for testing and development purposes only, not for production integrations. The action will always create a new session rather than updating an existing one. Note that sessions created in an ABANDONED state will NOT generate Browse Abandonment custom objects." }, { "slug": "ACTIVE_CAMPAIGN_SEARCH_BROWSE_SESSION", "name": "Search Browse Sessions", "description": "Search for browse sessions matching specified criteria in ActiveCampaign. Use when you need to find browse sessions for a specific contact, connection, and status combination." }, { "slug": "ACTIVE_CAMPAIGN_SEARCH_PRODUCT", "name": "Search Products", "description": "Search for products using filter criteria in ActiveCampaign's e-commerce catalog. Use when you need to find products by name, status, or other attributes with pagination support." }, { "slug": "ACTIVE_CAMPAIGN_SEARCH_RECURRING_PAYMENT", "name": "Search Recurring Payments", "description": "Search for recurring payment records based on filter criteria. Use when you need to find subscription payments by email, status, connection, or other attributes." }, { "slug": "ACTIVE_CAMPAIGN_TEST_TRACKING_EVENT", "name": "Test Tracking Event", "description": "Simulate a tracking event coming into the Browse Session system with debug output for testing URL patterns. This action allows you to test how ActiveCampaign's Browse Session system will process tracking events and identify products from URLs. It's useful for validating URL patterns and understanding how browsing events will be handled before implementing live tracking." }, { "slug": "ACTIVE_CAMPAIGN_TRACK_EVENT", "name": "Track Event in ActiveCampaign", "description": "Track custom events for contacts in ActiveCampaign to trigger automations and monitor user engagement. This action records specific user actions (e.g., file downloads, button clicks, logins) for existing contacts. Events can be used to trigger automation workflows in ActiveCampaign. Prerequisites: - Event Tracking must be enabled in ActiveCampaign (Settings > Tracking > Site Tracking) - The contact must already exist in ActiveCampaign - Event names should be whitelisted in ActiveCampaign for automation usage Use cases: - Track user behavior on your website or application - Trigger targeted email campaigns based on user actions - Monitor engagement and build user profiles - Create conditional automation workflows" }, { "slug": "ACTIVE_CAMPAIGN_UNLOCK_PERSONALIZATION", "name": "Unlock Personalization Variable", "description": "Tool to unlock a personalization variable in ActiveCampaign. Use when you need to allow modifications to a personalization variable. Once unlocked, the variable can be edited." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT", "name": "Update Account", "description": "This tool updates an existing account in ActiveCampaign. It allows modification of account details such as name, website URL, and custom fields. It complements the existing ACTIVE_CAMPAIGN_CREATE_ACCOUNT action and provides the ability to modify account details after creation, which is a crucial functionality for account management." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT_CONTACT", "name": "Update Account Contact Association", "description": "Tool to update an existing account-contact association in ActiveCampaign. Use when you need to modify the relationship between an account and contact, such as updating the contact's job title at that account." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT_CUSTOM_FIELD_DATA", "name": "Update Account Custom Field Data", "description": "Updates a custom account field value in ActiveCampaign. Use when you need to modify an existing custom field value for an account. Requires account permission to manage accounts." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT_CUSTOM_FIELD_DATA_BULK", "name": "Bulk Update Account Custom Field Data", "description": "Tool to bulk update multiple custom account field values in a single request. Use when you need to update existing accountCustomFieldData records by their IDs with new field values. This is more efficient than making individual update requests when modifying multiple field values." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT_CUSTOM_FIELD_META", "name": "Update Account Custom Field Metadata", "description": "Update metadata for an account custom field. Allows modification of field label, options, default value, visibility, and display order." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ACCOUNT_NOTE", "name": "Update Account Note", "description": "Tool to update an existing account note in ActiveCampaign. Use when you need to modify the content of an existing note attached to a specific account. The note will be updated for the account specified by the account ID and note ID." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_ADDRESS", "name": "Update Address", "description": "Tool to update an existing address in ActiveCampaign. Use when you need to modify address details such as company name, street address, city, state, zip code, or country for an existing address record." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_A_DEAL", "name": "Update a Deal", "description": "Tool to update an existing deal in ActiveCampaign. Use when you need to modify deal properties such as title, value, stage, or status." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_A_DEAL_NOTE", "name": "Update a Deal Note", "description": "Tool to update an existing note for a specific deal in ActiveCampaign. Use when you need to modify the content of an existing note attached to a deal record." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_AN_ORDER", "name": "Update An Order", "description": "Tool to update an existing e-commerce order in ActiveCampaign. Use when you need to modify order details such as pricing, shipping, or customer information." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_A_TAG", "name": "Update a Tag", "description": "Tool to update an existing tag in ActiveCampaign. Use when you need to modify a tag's name, type, or description. Requires the tag ID and at least the tag name and type." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_BRANDING", "name": "Update Branding", "description": "Tool to update an existing branding resource in ActiveCampaign. Use when you need to modify branding configuration such as site name, logos, templates, styling, or other branding-related settings." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CALENDAR", "name": "Update Calendar Feed", "description": "Tool to update an existing calendar feed in ActiveCampaign. Use when you need to modify calendar properties like title, type, or notification settings." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CONFIGS", "name": "Update Configuration", "description": "Tool to update an existing configuration in ActiveCampaign. Use when you need to modify configuration settings like pagination preferences or onboarding states for users." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CONNECTION", "name": "Update Connection", "description": "Tool to update an existing connection in ActiveCampaign. Use when you need to modify connection details such as service name, external ID, display name, logo URL, or link URL." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CONTACT", "name": "Update Contact", "description": "Update an existing contact in ActiveCampaign by ID. Use when you need to modify specific fields of a contact such as email, name, or phone number. Note: Contact-Organization relationships are now managed through Account-Contact endpoints." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CONTACT_DEALS", "name": "Update Secondary Contact", "description": "Tool to update an existing secondary contact (contact-deal association) in ActiveCampaign. Use when you need to modify the contact, deal, or role assignment for a secondary contact." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing e-commerce customer in ActiveCampaign. Use when you need to modify customer details such as email, external ID, connection ID, or marketing preferences." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Tool to update an existing custom field in ActiveCampaign. Use when you need to modify field properties such as label, type, options, default value, visibility, or display order." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CUSTOM_FIELD_FIELD_GROUP", "name": "Update Custom Field Field Group", "description": "Tool to update a custom field field group member in ActiveCampaign. Use when you need to change the display order or group association of a custom field within a field group." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_CUSTOM_FIELD_VALUE_FOR_CONTACT", "name": "Update Custom Field Value For Contact", "description": "Tool to update a custom field value for a contact in ActiveCampaign. Use when you need to set or modify a specific custom field's value for a given contact, such as updating subscription tier, preferences, or custom data." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_CUSTOM_FIELD_DATA", "name": "Update Deal Custom Field Data", "description": "Updates a custom deal field value in ActiveCampaign. Use when you need to modify an existing custom field value for a deal. Requires deal permission and pipeline-specific permission." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_CUSTOM_FIELD_META", "name": "Update Deal Custom Field Metadata", "description": "Updates a custom deal field metadata in ActiveCampaign. Use when you need to modify the definition of a custom field (label, options, default value, visibility, display order). Requires deal management permission and pipeline-specific permission." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_GROUPS", "name": "Update Deal Pipeline", "description": "Tool to update an existing pipeline (deal group) in ActiveCampaign. Use when you need to modify pipeline properties such as the title, currency, or permission settings. Only the fields provided in the dealGroup object will be updated; other fields remain unchanged." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_OWNERS_BULK", "name": "Bulk Update Deal Owners", "description": "Tool to bulk update deal owners in ActiveCampaign. Use when you need to reassign multiple deals to new owners in a single API call. Requires deal management permissions, pipeline-specific permissions, and deal reassign permission." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_STAGE", "name": "Update Deal Stage", "description": "Tool to update an existing stage in an ActiveCampaign deal pipeline. Use when you need to modify a stage's title, move it to a different pipeline, or change its display order." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEALSTAGES_DEALS", "name": "Update Deal Stage Deals", "description": "Tool to move all deals from one stage to another stage in ActiveCampaign. Use when you need to bulk-move all deals in a specific stage to a different stage within the same pipeline. The source and target stages must belong to the same pipeline, otherwise a 422 error will be returned." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_TASK", "name": "Update Deal Task", "description": "Tool to update an existing task in ActiveCampaign. Use when you need to modify task details such as title, description, due date, assignee, status, or associated records (deal, contact, account)." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_DEAL_TASK_TYPE", "name": "Update Deal Task Type", "description": "Tool to update an existing deal task type in ActiveCampaign. Use when you need to modify the title or status of a task type used for categorizing deal tasks." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_EDIT_VARIABLE", "name": "Update Edit Variable", "description": "Tool to edit an existing personalization variable in ActiveCampaign. Use when you need to update the name, tag, content, format, or associated lists of a variable." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_EVENT_TRACKING_STATUS", "name": "Update Event Tracking Status", "description": "Tool to enable or disable event tracking for your ActiveCampaign account. Use this to toggle event tracking on or off based on your tracking requirements." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_FIELD_VALUE", "name": "Update Field Value", "description": "Tool to update a custom field value by its field value ID in ActiveCampaign. Use when you need to modify an existing field value record directly. Datetime field values are converted to the account's timezone when saved." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update an existing permission group in ActiveCampaign. Use when you need to modify a group's title or description." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to update an existing message in ActiveCampaign. Use when you need to modify message properties such as subject line, sender information, content, or other email configuration settings." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note in ActiveCampaign by its ID. Use when you need to modify the content of any existing note. This is a generic note update tool that works for notes related to contacts, deals, or accounts." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_PRODUCT", "name": "Update Product", "description": "Tool to update an existing product in ActiveCampaign's e-commerce system using GraphQL. Use when you need to modify product details like name, store ID, or connection association." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_SAVED_RESPONSE", "name": "Update Saved Response", "description": "Tool to update an existing saved response in ActiveCampaign. Use when you need to modify the title, subject, or body of a saved response template." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_SCHEMA", "name": "Update Schema", "description": "Tool to update a custom object schema in ActiveCampaign. Use when you need to modify schema properties or add new options to dropdown/multi-select fields. Note: For child schemas, you can only add new options to existing dropdown/multi-select fields." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_SEGMENTS_V2", "name": "Update Segment V2", "description": "Tool to update existing segments in ActiveCampaign using the V2 segments API. Use when you need to modify segment configurations, including filtering conditions, descriptions, or metadata. The segment ID must be in UUID format (e.g., 'f0390c20-ce33-46ae-8c19-468f770fd1f7'), not numeric format." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_SEGMENTS_V2_CREATED_DATE", "name": "Revert Segment to Historic State", "description": "Tool to revert a segment to how it looked at a specific point in time in ActiveCampaign. Use when you need to restore a segment to a previous state using a historic timestamp. Only segments with non-numeric segment IDs are supported." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_SITE_TRACKING", "name": "Update Site Tracking Status", "description": "Tool to enable or disable site tracking for your ActiveCampaign account. Use this when you need to toggle site tracking functionality on or off." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing ActiveCampaign user (team member/staff account) by ID. Use when you need to modify user details such as name, email, phone, username, or group assignment. Group assignment is required." }, { "slug": "ACTIVE_CAMPAIGN_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update an existing webhook in ActiveCampaign to modify its configuration such as URL, events, or sources. Use this when you need to change the settings of an already created webhook." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_ACCOUNT", "name": "Upsert Account", "description": "Creates a new account or updates an existing one in ActiveCampaign based on the account name. This action searches for an account by name and either: - Updates the existing account if found (modifies URL, owner, and custom fields) - Creates a new account if not found Use this when you want to ensure an account exists with specific properties without worrying about duplicate creation. The account name is used as the unique identifier for matching existing accounts." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_ORDER", "name": "Upsert Order", "description": "Create a new order or update an existing order in ActiveCampaign. Existence is determined by the combination of legacyConnectionId and storeOrderId. Use this to sync order data from your e-commerce platform." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_ORDERS_BULK", "name": "Bulk Upsert Orders", "description": "Insert multiple orders or update them if they already exist in ActiveCampaign. This action uses the GraphQL bulkUpsertOrders mutation to synchronously create or update multiple e-commerce orders in a single request. Orders are matched by storeOrderId - if an order with the same storeOrderId exists for the given connection, it will be updated; otherwise, a new order will be created. Use this action when you need to sync multiple orders from your e-commerce system to ActiveCampaign in an efficient manner. This is ideal for batch imports, periodic syncs, or processing multiple orders at once." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_ORDERS_BULK_ASYNC", "name": "Bulk Upsert Orders Async", "description": "Tool to insert or update multiple orders asynchronously in ActiveCampaign with high throughput. This action performs data store writes completely asynchronously, making it much faster than synchronous bulk operations. Recommended for all stores processing large volumes of orders. Use when you need to import historical orders or sync real-time order data from e-commerce platforms." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_PRODUCTS", "name": "Bulk Upsert Products", "description": "Create or update multiple products in a single request using ActiveCampaign's GraphQL API. This action uses the bulkUpsertProducts mutation to efficiently create or update multiple products at once. The API automatically deduplicates entries with identical storePrimaryId and legacyConnectionId combinations, ensuring no duplicate products are created." }, { "slug": "ACTIVE_CAMPAIGN_UPSERT_RECURRING_PAYMENTS_BULK", "name": "Upsert Recurring Payments Bulk", "description": "Create or update multiple recurring payments asynchronously in ActiveCampaign. Use this action to sync subscription data from your e-commerce platform to ActiveCampaign for automated marketing and customer tracking." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "activecampaign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API URL", "type": "string", "description": "Your account's unique API URL, e.g. https://youraccount.api-us1.com. Copy it exactly from Settings (gear icon) → Developer — the domain varies by region.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The long key shown next to your API URL at Settings (gear icon) → Developer in ActiveCampaign. Each user has their own key — keep it secret.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoho_mail", "name": "Zoho Mail", "logo": "https://logos.composio.dev/api/zoho_mail", "description": "Zoho Mail is a secure and ad-free email hosting platform with collaboration tools, calendar integration, and extensive administrative controls", "category": "email", "authSchemes": [ "OAUTH2" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_MAIL_ACCOUNTS_LIST_ACCOUNTS", "name": "List Zoho Mail Accounts", "description": "Retrieves all Zoho Mail accounts associated with the authenticated user. Returns account details including accountId (required for other mail operations), email addresses, storage information, account status, user preferences, and security settings. Use this action first to get the accountId needed for subsequent mailbox, message, folder, and email operations. The accountId is a unique identifier for each mail account. Typical workflow: List accounts → Get accountId → Use accountId in other mail operations." }, { "slug": "ZOHO_MAIL_DOMAIN_OPERATIONS", "name": "Domain Operations", "description": "Tool to perform domain operations like verify, set primary domain, hosting, aliases, MX/SPF checks, DKIM management, and notifications. Use after creating or retrieving a domain." }, { "slug": "ZOHO_MAIL_GET_ALL_BOOKMARKS", "name": "Get All Bookmarks", "description": "Tool to retrieve all personal bookmarks from a Zoho Mail account. Use when you need to fetch saved bookmarks/links with support for pagination and field filtering." }, { "slug": "ZOHO_MAIL_GROUPS_DELETE_GROUP_BULK", "name": "Delete Groups in Bulk", "description": "Delete multiple groups in a single API call. This action permanently removes the specified groups from your Zoho Mail organization. Use this when you need to: - Remove multiple obsolete or unused groups at once - Clean up groups after organizational restructuring - Batch delete groups for administrative purposes Note: Deleted groups cannot be recovered. Ensure you have the correct group IDs before deletion." }, { "slug": "ZOHO_MAIL_GROUPS_DELETE_GROUP_BY_ZGID", "name": "Delete Group", "description": "Tool to delete a specific mail group by its zgid. Use when you need to remove a group from your organization after confirming the IDs." }, { "slug": "ZOHO_MAIL_MESSAGES_CREATE_DRAFT", "name": "Create Email Draft", "description": "Tool to create and save an email draft in Zoho Mail without sending it. Use when composing emails that need to be saved for later editing or sending." }, { "slug": "ZOHO_MAIL_MESSAGES_GET_MESSAGE_CONTENT", "name": "Get Message Content", "description": "Tool to retrieve the full content/body of a specific Zoho Mail email. Use when you need to fetch the complete email content after listing or searching messages, as list/search endpoints typically return only metadata/summary." }, { "slug": "ZOHO_MAIL_MESSAGES_LIST_EMAILS", "name": "List Emails", "description": "Tool to retrieve a list of emails from a Zoho Mail account folder. Use when you need to fetch emails from inbox or specific folder, with support for filtering by read status, attachments, flags, and pagination." }, { "slug": "ZOHO_MAIL_MESSAGES_REPLY_TO_EMAIL", "name": "Reply to Email", "description": "Tool to reply to an existing email via Zoho Mail API. Use when you need to send a reply to a received email message, maintaining email threading." }, { "slug": "ZOHO_MAIL_MESSAGES_SEND_EMAIL", "name": "Send Email", "description": "Tool to send an email via Zoho Mail API. Use when you need to send emails immediately to recipients." }, { "slug": "ZOHO_MAIL_ORGANIZATION_GET_USER_STORAGE_DETAILS", "name": "Get Organization User Storage Details", "description": "Tool to retrieve storage details for a specific user in the organization. Use when you need to know a user’s total and used storage quotas." }, { "slug": "ZOHO_MAIL_ORGANIZATION_UPDATE_SPAM_PROCESS_TYPE", "name": "Update Organization Spam Process Type", "description": "Tool to update organization spam processing type. Use when changing the spam filtering strategy for an organization." }, { "slug": "ZOHO_MAIL_ORGANIZATION_UPDATE_USER_STORAGE", "name": "Update User Storage", "description": "Updates a user's storage allocation within a Zoho Mail organization. Can modify either base storage plan or extra storage add-ons. Use this when you need to: - Change a user's base storage plan (e.g., from basic to mailPremium) - Add or modify extra storage add-ons for a user Prerequisites: You must have valid zoid (organization ID) and zuid (user ID) before calling this action." }, { "slug": "ZOHO_MAIL_SEARCH_MESSAGES", "name": "Search Messages", "description": "Tool to search emails in a Zoho Mail account using Zoho's searchKey syntax. Use when you need to find specific emails by sender, subject, keywords, status (e.g., unread), attachments, or flags. Returns messageId and folderId needed to fetch full message content." }, { "slug": "ZOHO_MAIL_UPDATE_GROUP_SETTINGS", "name": "Update Group Settings", "description": "Tool to update group settings. Use after group creation to adjust general or text settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoMail.partner.organization.ALL,ZohoMail.organization.accounts.ALL,ZohoMail.accounts.ALL,ZohoMail.organization.subscriptions.ALL,ZohoMail.organization.spam.ALL,ZohoMail.organization.domains.ALL,ZohoMail.organization.groups.ALL,ZohoMail.organization.policy.ALL,ZohoMail.organization.audit.ALL,ZohoMail.folders.ALL,ZohoMail.tags.ALL,ZohoMail.messages.ALL,ZohoMail.tasks.ALL,ZohoMail.links.ALL,ZohoMail.notes.ALL" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Domain Extension", "type": "string", "description": "The region code from your Zoho Mail web address — e.g. 'eu' for mail.zoho.eu, 'au' for mail.zoho.com.au. Most accounts keep the default 'com' (mail.zoho.com).", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "mural", "name": "Mural", "logo": "https://logos.composio.dev/api/mural", "description": "Mural is a digital whiteboard platform enabling distributed teams to visually brainstorm, map ideas, and collaborate in real time with sticky notes and diagrams", "category": "team collaboration", "authSchemes": [ "OAUTH2" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MURAL_AUTHORIZATION_REQUEST", "name": "MURAL Authorization Request", "description": "Tool to initiate the OAuth 2.0 authorization process. Use when you need to redirect a user to Mural to obtain an authorization code." }, { "slug": "MURAL_CREATE_STICKY_NOTE", "name": "Create sticky note", "description": "Create one or more sticky note widgets on a mural. Each sticky note must be a properly structured object with required x and y coordinates. Pass the 'stickies' parameter as a direct array of objects - NOT strings, NOT nested objects. Example usage: { \"muralId\": \"mural-id-here\", \"stickies\": [ {\"x\": 100, \"y\": 200, \"text\": \"First note\"}, {\"x\": 300, \"y\": 400, \"text\": \"Second note\", \"shape\": \"circle\"} ] }" }, { "slug": "MURAL_GET_CURRENT_USER", "name": "Get current user", "description": "Tool to retrieve information about the currently authenticated user. Use when you need current user details after authentication." }, { "slug": "MURAL_GET_FILES_FOR_MURAL", "name": "Get files for a mural", "description": "Tool to retrieve a list of file widgets in a mural. Use after confirming the mural ID when listing file attachments." }, { "slug": "MURAL_GET_MURAL_WIDGETS", "name": "Get Mural Widgets", "description": "Tool to retrieve all widgets within a specified mural. Widgets include sticky notes, text boxes, shapes, images, areas, arrows, icons, files, and comments. Use this after obtaining a valid mural ID from workspace murals or other mural-related actions. Supports filtering by widget type, parent container, and pagination for large result sets." }, { "slug": "MURAL_GET_ROOM", "name": "Get room by ID", "description": "Tool to retrieve information about a specific room by its ID. Use when you need details about a particular room that the authenticated user has read access to." }, { "slug": "MURAL_GET_WORKSPACE", "name": "Get workspace by ID", "description": "Tool to retrieve information about a specific workspace by its ID. Use when you need details about a particular workspace that the authenticated user has read access to." }, { "slug": "MURAL_GET_WORKSPACES", "name": "Get workspaces", "description": "Tool to retrieve all workspaces the authenticated user is a member of. Use to list available workspaces before accessing rooms or murals." }, { "slug": "MURAL_LIST_FOLDERS", "name": "List folders in room", "description": "Tool to list all folders within a room that the authenticated user has access to. Use after MURAL_LIST_ROOMS to navigate folders within a specific room." }, { "slug": "MURAL_LIST_OPEN_ROOMS", "name": "List open rooms in workspace", "description": "Tool to list all discoverable open rooms within a workspace. Use when you need to access publicly available rooms in a workspace that don't require specific membership." }, { "slug": "MURAL_LIST_RECENT_MURALS", "name": "List recent murals in workspace", "description": "Tool to list recently opened active murals for the authenticated user in a workspace. Use after MURAL_LIST_WORKSPACES to view recent murals before opening or editing them." }, { "slug": "MURAL_LIST_RECENT_TEMPLATES", "name": "List recent templates", "description": "Tool to retrieve recent templates used by a user for a workspace. Use when you need to access recently used templates for creating new murals." }, { "slug": "MURAL_LIST_ROOM_MURALS", "name": "List murals in room", "description": "Tool to list all murals for a room that the authenticated user has read access to. Use after getting a room ID to retrieve murals within that room." }, { "slug": "MURAL_LIST_ROOMS", "name": "List rooms in workspace", "description": "Tool to list all rooms within a workspace. Use after MURAL_LIST_WORKSPACES to navigate rooms and before MURAL_CREATE_MURAL, since murals are created within rooms." }, { "slug": "MURAL_LIST_ROOM_USERS", "name": "List users in room", "description": "Tool to list all members and guests for a room. Returns users that the authenticated user has access to view. Use after LIST_ROOMS to get room membership details." }, { "slug": "MURAL_LIST_TAGS", "name": "List tags in a mural", "description": "Tool to retrieve all tags in a mural. Use when you need to list or view tags associated with a specific mural." }, { "slug": "MURAL_LIST_TEMPLATES", "name": "List default templates", "description": "Tool to retrieve all default templates available in Mural. Use when you need to browse or select from standard Mural templates." }, { "slug": "MURAL_LIST_WORKSPACE_MURALS", "name": "List workspace murals", "description": "Tool to list all murals in a workspace that the authenticated user owns or is a member of. Use after getting a workspace ID to browse available murals." }, { "slug": "MURAL_LIST_WORKSPACE_TEMPLATES", "name": "List workspace templates", "description": "Tool to get default and custom templates for a workspace. Use when you need to list available templates after authentication." }, { "slug": "MURAL_SEARCH_MURALS", "name": "Search murals in workspace", "description": "Tool to search for murals within a workspace. Returns all murals that the authenticated user owns or is a member of for the specified workspace. Use when searching for specific murals by query text." }, { "slug": "MURAL_SEARCH_ROOMS", "name": "Search rooms in workspace", "description": "Tool to search for rooms within a workspace by name or description. Returns all rooms that the authenticated user owns or is a member of matching the query. Use when you need to find specific rooms by search text." }, { "slug": "MURAL_SEARCH_TEMPLATES", "name": "Search templates in workspace", "description": "Tool to search templates within a workspace that the authenticated user owns or has access to. Use when you need to find specific templates by name or keyword." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "mural_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "rooms:write,workspaces:write,murals:write,templates:write,rooms:read,users:read,workspaces:read,murals:read,identity:read,templates:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "brex", "name": "Brex", "logo": "https://logos.composio.dev/api/brex", "description": "Brex provides corporate credit cards, spend management, and financial tools tailored for startups and tech businesses to optimize cash flow, accounting, and growth", "category": "accounting", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 84, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BREX_ADD_WEBHOOK_GROUP_MEMBERS", "name": "Add Webhook Group Members", "description": "Add webhook subscription members to a webhook group. This action associates one or more webhook subscriptions with an existing webhook group, allowing those subscriptions to receive events targeted at the group. Note: Webhook groups are only available for Brex partner accounts. Requires an existing webhook group ID and valid webhook subscription IDs. Use this when you need to organize webhook subscriptions into groups for easier management of webhook events across multiple subscriptions." }, { "slug": "BREX_ARCHIVE_BUDGET", "name": "Archive Budget", "description": "Archive a budget to mark it as inactive and prevent future expenses. Archives the specified budget, making it unusable for new transactions and removing it from active budget lists in the UI. This action is permanent and cannot be undone." }, { "slug": "BREX_ARCHIVE_SPEND_LIMIT", "name": "Archive Spend Limit", "description": "Archive a spend limit in Brex. Archives an existing spend limit to remove it from active use, making it unusable for future expenses and hiding it from the UI. Once archived, the spend limit cannot be used to authorize new transactions." }, { "slug": "BREX_CREATE_BUDGET", "name": "Create Budget", "description": "Create a new budget for departments or projects." }, { "slug": "BREX_CREATE_BUDGET_V1", "name": "Create Spend Limit (Budget V1)", "description": "Tool to create a new Spend Limit (Budget) in Brex. Use when you need to set up spending controls with specific limits, visibility settings, and period types." }, { "slug": "BREX_CREATE_CARD", "name": "Create Card", "description": "Create a new card and assign it to a user." }, { "slug": "BREX_CREATE_DEPARTMENT", "name": "Create Department", "description": "Create a new department." }, { "slug": "BREX_CREATE_DOCUMENT", "name": "Create Document Upload for Referral", "description": "Create a document upload URL for a referral and return a pre-signed S3 upload URL. Use this tool when you need to upload supporting documents for a business referral application. The tool returns a pre-signed S3 URL that can be used to upload document files (PDF, JPG, PNG, etc.) up to 50 MB. The pre-signed URL expires 30 minutes after creation and can only be used for a PUT operation. Supported document types: - ARTICLES_OF_INCORPORATION: Company incorporation documents - IRS_EIN_CONFIRMATION: IRS CP 575 or 147C form (EIN confirmation letter) - IRS_EIN_APPLICATION: IRS SS4 form (Application for Employer Identification Number) - CERTIFICATE_GOOD_STANDING: Certificate of good standing from the state" }, { "slug": "BREX_CREATE_EXPENSE", "name": "Create Expense", "description": "Create a new expense." }, { "slug": "BREX_CREATE_FIELD", "name": "Create Custom Field", "description": "Create a new custom field in Brex. Use when you need to add custom metadata fields for accounting or ERP integrations. Fields can be associated with specific integrations and can be enabled or disabled as needed." }, { "slug": "BREX_CREATE_FIELD_VALUES", "name": "Create Field Values", "description": "Create custom field values for a specific Brex field. Use when you need to add new dropdown options or values to a custom field (up to 1000 values per request). This action allows you to bulk-create field values for custom fields in Brex. Custom fields are used throughout Brex for categorizing expenses, cards, budgets, and other entities. Each value can have a custom ID, be marked as disabled, and include an external system reference for integrations." }, { "slug": "BREX_CREATE_LOCATION", "name": "Create Location", "description": "Create a new location." }, { "slug": "BREX_CREATE_REFERRAL_REQUEST", "name": "Create Referral Request", "description": "Tool to create a new referral to Brex for onboarding. Use when you want to refer a prospect to Brex and get a personalized application link. The response contains a unique referral ID and a personalized signup URL. Many fields are optional; when provided, they prefill the application form for the prospect. The referral link expires after a certain time period." }, { "slug": "BREX_CREATE_SPEND_LIMIT", "name": "Create Spend Limit", "description": "Tool to create a spend limit in Brex. Use when you need to establish spending controls with authorization settings, visibility rules, and policy associations. Requires expense policy ID and authorization settings. Optionally link to parent budget." }, { "slug": "BREX_CREATE_TITLE", "name": "Create Job Title", "description": "Create a new job title." }, { "slug": "BREX_CREATE_USER", "name": "Create User", "description": "Create a new user in the Brex account." }, { "slug": "BREX_CREATE_VENDOR", "name": "Create Vendor", "description": "Create a new vendor in Brex for payment operations. The vendor company name must be unique within your Brex account - attempting to create a vendor with a duplicate name will result in an error. You can optionally include contact information (email, phone) and payment account details (ACH, wire transfer, or check) at creation time. Returns a vendor ID that can be used in transfer operations and other vendor-related actions." }, { "slug": "BREX_CREATE_WEBHOOK_GROUP", "name": "Create Webhook Group", "description": "Tool to create a webhook group for targeting webhook subscriptions. Use when you need to create a webhook group to organize webhook subscriptions for specific members. Webhook groups are only available for partners." }, { "slug": "BREX_CREATE_WEBHOOK_SUBSCRIPTION", "name": "Create Webhook Subscription", "description": "Register a new webhook subscription to receive real-time notifications for Brex events. This allows you to be notified via HTTPS POST requests when events occur, such as USER_UPDATED, EXPENSE_PAYMENT_UPDATED, TRANSFER_PROCESSED, TRANSFER_FAILED, and others. Note: Currently only one webhook endpoint can be registered per customer/client_id, though each endpoint can handle multiple event types. Requires 'openid' and 'offline_access' OAuth scopes, plus event-specific scopes (e.g., 'expenses.card.readonly' for EXPENSE_PAYMENT_UPDATED)." }, { "slug": "BREX_DELETE_FIELD", "name": "Delete Field", "description": "Tool to delete a custom field by Brex ID. Use when you need to permanently remove a custom field from the system." }, { "slug": "BREX_DELETE_FIELD_VALUES", "name": "Delete Field Values", "description": "Delete custom field values for a specific field. You can delete up to 1000 values at once. Each value must be identified by exactly one of: brex_id (Brex-generated ID), value_id (value identifier), or remote_id (external system ID). Use this when you need to bulk delete field values from a custom field." }, { "slug": "BREX_DELETE_VENDOR", "name": "Delete Vendor", "description": "Delete a vendor by ID. Use this when you need to remove a vendor from the system. The vendor must exist and not have any pending transactions or dependencies." }, { "slug": "BREX_GET_ACCOUNT_STATEMENTS", "name": "Get Account Statements", "description": "Get finalized statements for the primary cash account. Returns statement history including start and end balances for each statement period." }, { "slug": "BREX_GET_BUDGET_DETAILS", "name": "Get Budget Details", "description": "Get detailed information about a specific budget. This action retrieves comprehensive budget details including balance, limits, ownership, and period information from the Brex v2 Budgets API." }, { "slug": "BREX_GET_CARD_DETAILS", "name": "Get Card Details", "description": "Get detailed information about a specific card." }, { "slug": "BREX_GET_CARD_EXPENSE", "name": "Get Card Expense", "description": "Tool to retrieve detailed information about a specific card expense by its ID. Use when you need to get comprehensive details about a card transaction, including merchant information, amounts, status, and other expense metadata. Supports expanding additional fields like merchant MCC code, location, department, user, budget, and payment details." }, { "slug": "BREX_GET_CARD_NUMBER", "name": "Get Card Number", "description": "Get card number, CVV, and expiration date for a specific card." }, { "slug": "BREX_GET_CARD_TRANSACTIONS", "name": "Get Card Transactions", "description": "Get settled card transactions for the primary card account. Returns purchases, refunds, and chargebacks that have been posted/settled. Use the next_cursor field in the response for pagination to retrieve additional results. No server-side date filtering is supported; filter by posted_at_date client-side after fetching. For large accounts, process pages incrementally rather than accumulating all results in memory." }, { "slug": "BREX_GET_COMPANY_CASH_ACCOUNTS", "name": "Get Company Cash Accounts", "description": "Retrieve all cash (deposit) accounts for the company. Returns account details including balances, account numbers, routing numbers, and status. Use this to view available cash accounts, check balances, or get account information for transfers. Each Brex account has at least one primary cash account. Requires the 'accounts.cash.readonly' scope." }, { "slug": "BREX_GET_COMPANY_DETAILS", "name": "Get Company Details", "description": "Get company information associated with the OAuth2 access token. Returns details including company ID, legal name, account type, and mailing address." }, { "slug": "BREX_GET_DEPARTMENT_BY_ID", "name": "Get Department By ID", "description": "Get detailed information about a specific department by ID. Use when you need to retrieve department details for a given department identifier." }, { "slug": "BREX_GET_EXPENSE", "name": "Get Expense", "description": "Tool to get details of a specific expense by ID. Use when you need to retrieve complete information about an expense including merchant details, receipts, budget allocation, and payment status." }, { "slug": "BREX_GET_FIELD_BY_ID", "name": "Get Field By ID", "description": "Tool to retrieve a custom field by its Brex ID. Use when you need detailed information about a specific custom field." }, { "slug": "BREX_GET_FIELD_VALUE_BY_ID", "name": "Get Field Value By ID", "description": "Tool to retrieve a specific field value by field ID and field value ID. Use when you need details about a custom field value." }, { "slug": "BREX_GET_LEGAL_ENTITY", "name": "Get Legal Entity", "description": "Tool to retrieve a legal entity by its ID from Brex. Use when you need detailed information about a specific legal entity." }, { "slug": "BREX_GET_LOCATION_BY_ID", "name": "Get Location By ID", "description": "Get detailed information about a specific location by ID. Use when you need to retrieve location details for a given location identifier." }, { "slug": "BREX_GET_REFERRAL", "name": "Get Referral By ID", "description": "Tool to retrieve a specific referral by its ID from Brex. Use when you need to check the status of a referral or get the signup URL." }, { "slug": "BREX_GET_SPEND_LIMIT_BY_ID", "name": "Get Spend Limit By ID", "description": "Tool to get detailed information about a specific spend limit by its ID. Use when you need to retrieve the configuration, status, balance, or settings of a particular spend limit." }, { "slug": "BREX_GET_SPEND_LIMITS", "name": "Get Spend Limits", "description": "Get spend limits configuration." }, { "slug": "BREX_GET_TITLE_BY_ID", "name": "Get Title by ID", "description": "Get detailed information about a specific job title by ID. Use when you need to retrieve title details for a given title identifier." }, { "slug": "BREX_GET_TRANSACTION_BY_ID", "name": "Get Transaction by ID", "description": "Get details of a specific transaction by ID. Retrieves detailed information about a card transaction including amount, merchant details, dates, and metadata. This action searches through recent transactions to find the one matching the provided ID. Note: Very old transactions may not be retrievable." }, { "slug": "BREX_GET_TRANSACTIONS", "name": "Get Card Transactions", "description": "Get card transactions from the primary Brex account. Retrieves settled card transactions including purchases, refunds, chargebacks, and collections. Returns transaction details with merchant information, amounts, dates, and associated metadata. Supports pagination for handling large result sets. Note: The Brex API does not support server-side date filtering. Date filtering (posted_at_start/posted_at_end) is performed client-side by filtering the posted_at_date field in the response. When using date filters, paginate through all pages by following next_cursor until exhausted before applying date range filtering locally — stopping early will cause in-range transactions to be missed." }, { "slug": "BREX_GET_TRANSACTIONS_BY_AMOUNT_RANGE", "name": "Get Transactions by Amount Range", "description": "Get card transactions filtered by amount range and date period. This action retrieves settled card transactions within a specified amount range (min to max in USD) and date period. Useful for finding transactions of specific values, expense analysis, budget tracking, or identifying large purchases. The action performs client-side filtering to return only transactions matching both the amount and date criteria." }, { "slug": "BREX_GET_TRANSACTIONS_BY_DESCRIPTION", "name": "Search Transactions by Description", "description": "Search and filter card transactions by description text. This action retrieves transactions from the primary card account and filters them by description (case-insensitive partial match) and date range. Useful for finding all transactions from a specific merchant or category." }, { "slug": "BREX_GET_USER_LIMIT", "name": "Get User Limit", "description": "Retrieves the monthly spending limit and available balance for a specific Brex user. Use this action when you need to check how much a user is allowed to spend per month and how much of that limit remains available. Returns empty if no spending limit has been configured for the user." }, { "slug": "BREX_GET_USER_PROFILE", "name": "Get User Profile", "description": "Get user profile information from Brex Team API. Returns the user profile associated with the OAuth2 access token when using 'me', or retrieves a specific user's profile when providing a user ID. Requires 'users.readonly' or 'users' OAuth scope." }, { "slug": "BREX_GET_VENDOR_BY_ID", "name": "Get Vendor By ID", "description": "Tool to get vendor details by ID. Use when you need to retrieve information about a specific vendor including payment accounts." }, { "slug": "BREX_GET_WEBHOOK_GROUP", "name": "Get Webhook Group", "description": "Tool to retrieve details of a specific webhook group by ID. Use when you need to get information about a webhook group including its name and identifier. Webhook groups allow webhook subscriptions to target specific members, providing granular control over webhook delivery. This feature is only available for Brex partners. Returns the webhook group's ID and name." }, { "slug": "BREX_GET_WEBHOOK_SUBSCRIPTION", "name": "Get Webhook Subscription", "description": "Tool to retrieve details of a specific webhook subscription by ID. Use this when you need to: - Get information about an existing webhook subscription - Verify webhook configuration (URL, event types, status) - Check if a webhook subscription is active or inactive - Retrieve the webhook group ID for partner integrations Returns the webhook subscription's ID, URL, event types, status (ACTIVE/INACTIVE), and optionally the webhook group ID." }, { "slug": "BREX_LIST_BUDGET_PROGRAMS", "name": "List Budget Programs", "description": "Tool to list all budget programs in the organization. Use when you need to retrieve budget programs that define spend limits for eligible users." }, { "slug": "BREX_LIST_BUDGETS", "name": "List Budgets", "description": "List all budgets and show available amounts across all cards." }, { "slug": "BREX_LIST_CARD_ACCOUNTS", "name": "List Card Accounts", "description": "Tool to list all card accounts for the company. Use when you need to retrieve information about card accounts, including balances and statement periods." }, { "slug": "BREX_LIST_CARDS", "name": "List Cards", "description": "List all cards associated with the account." }, { "slug": "BREX_LIST_CARD_STATEMENTS", "name": "List Card Statements", "description": "Tool to list finalized statements for primary card accounts. Use when you need to retrieve statement history for primary card accounts including balances and statement periods." }, { "slug": "BREX_LIST_DEPARTMENTS", "name": "List Departments", "description": "List all departments in the organization." }, { "slug": "BREX_LIST_EXPENSES", "name": "List Expenses", "description": "Tool to list expenses from the Brex platform. Use when you need to retrieve expenses with various filters such as user, budget, date ranges, or status. Supports pagination and expandable fields for additional details." }, { "slug": "BREX_LIST_FIELD_VALUES", "name": "List Field Values", "description": "Tool to list values under a custom field. Use when you need to retrieve all values defined for a specific custom field, optionally filtering by Brex ID, value ID, remote ID, or value string." }, { "slug": "BREX_LIST_LEGAL_ENTITIES", "name": "List Legal Entities", "description": "Tool to list all legal entities in the Brex account with pagination support. Use when you need to retrieve all legal entities or browse through them page by page." }, { "slug": "BREX_LIST_LOCATIONS", "name": "List Locations", "description": "List all locations in the organization." }, { "slug": "BREX_LIST_REFERRALS", "name": "List Referrals", "description": "Tool to list all referrals created in the Brex account. Use when you need to view or manage customer referrals. Note: This endpoint only returns active referrals and does not include expired ones." }, { "slug": "BREX_LIST_TITLES", "name": "List Job Titles", "description": "List all job titles in the organization." }, { "slug": "BREX_LIST_TRANSFERS", "name": "List Transfers", "description": "Lists transfers for the account. Use when you need to retrieve transfer history or monitor transfer status." }, { "slug": "BREX_LIST_TRIPS", "name": "List Trips", "description": "Lists trips according to the filters passed in the query string. Use when you need to retrieve trip history or monitor trip status." }, { "slug": "BREX_LIST_USERS", "name": "List Users", "description": "List all users in the Brex account." }, { "slug": "BREX_LIST_VENDORS", "name": "List Vendors", "description": "List all vendors." }, { "slug": "BREX_LIST_WEBHOOK_GROUP_MEMBERS", "name": "List Webhook Group Members", "description": "Tool to list all members of a webhook group. Use when you need to retrieve the webhook subscriptions that are members of a specific webhook group. Supports pagination using cursor and limit parameters." }, { "slug": "BREX_LIST_WEBHOOK_GROUPS", "name": "List Webhook Groups", "description": "Tool to list all webhook groups. Use when you need to retrieve all webhook groups in the system. Webhook groups allow subscriptions to target specific members and are only available for Brex partners. Supports pagination using cursor and limit parameters." }, { "slug": "BREX_LIST_WEBHOOK_SECRETS", "name": "List Webhook Secrets", "description": "Tool to retrieve webhook signing secrets for validating incoming webhook messages from Brex. Use when you need to verify webhook authenticity. During key rotation, this may return two secrets." }, { "slug": "BREX_LIST_WEBHOOK_SUBSCRIPTIONS", "name": "List Webhook Subscriptions", "description": "Tool to list all registered webhook subscriptions. Use when you need to retrieve all webhook subscriptions configured in the Brex account, including their URLs, event types, and status. Supports pagination using cursor and limit parameters." }, { "slug": "BREX_RECEIPT_MATCH", "name": "Create Receipt Match", "description": "Creates a receipt match request and returns a pre-signed S3 upload URI. Use this when you need to upload a receipt that will be automatically matched to existing Brex card expenses. The returned URI allows secure file upload (max 50 MB) and expires 30 minutes after creation. After upload completes, Brex will automatically attempt to match the receipt with card transactions based on date, amount, and merchant information." }, { "slug": "BREX_RECEIPT_UPLOAD", "name": "Create Receipt Upload for Expense", "description": "Creates a receipt upload request for a specific card expense and returns a pre-signed S3 upload URL. Use this tool when you need to attach a receipt to an existing Brex card expense. The tool returns a pre-signed S3 URL that can be used to upload receipt files (PDF, JPG, PNG, etc.) up to 50 MB. The pre-signed URL expires 30 minutes after creation and can only be used for a PUT operation. Requirements: - The expense_id must belong to an existing card expense in the Brex system - The expense must be accessible by the authenticated user - Receipt file names should include the file extension (e.g., 'receipt.pdf', 'invoice.jpg') Note: For uploading receipts that should be automatically matched to expenses (without specifying an expense_id), use the BREX_RECEIPT_MATCH action instead." }, { "slug": "BREX_SET_USER_LIMIT", "name": "Set User Limit", "description": "Set or update the monthly spending limit for a Brex user. The limit controls the maximum amount the user can spend per month. Set monthly_limit to null to remove an existing limit. The limit amount must be specified in the smallest currency unit (e.g., cents for USD)." }, { "slug": "BREX_TRANSFER_CARD", "name": "Transfer Card", "description": "Transfer a card to a different user." }, { "slug": "BREX_UPDATE_BUDGET", "name": "Update Budget", "description": "Update an existing budget's configuration in Brex. This action allows you to modify budget properties such as name, description, amount limits, ownership, parent budget relationships, and recurrence settings. Only the fields you provide will be updated; all other fields remain unchanged. Common use cases: - Adjust budget amounts (increase or decrease limits) - Change budget ownership or reassign to different users - Update budget names and descriptions for clarity - Modify recurrence periods (e.g., change from MONTHLY to QUARTERLY) - Reorganize budget hierarchy by changing parent budgets" }, { "slug": "BREX_UPDATE_BUDGET_V1", "name": "Update Spend Limit (V1)", "description": "Tool to update a Spend Limit (budget) using the v1 API. Use when you need to modify budget details such as name, description, owners, members, limits, or date ranges." }, { "slug": "BREX_UPDATE_CARD_LIMITS", "name": "Update Card Limits", "description": "Update spending limits and controls for a Brex card. This action allows you to modify the spending limits, duration, and lock date for cards that have limit_type=CARD. You can update one or more spend control settings while leaving others unchanged. Cards with limit_type=USER inherit limits from the user and cannot be updated with this action." }, { "slug": "BREX_UPDATE_CARD_STATUS", "name": "Update Card Status", "description": "Update the status of a Brex card by locking, unlocking, or terminating it. This action provides a unified interface for card status management: - Lock a card to temporarily block transactions (requires lock_reason) - Unlock a locked card to resume normal operation - Terminate a card permanently (cannot be undone) The action uses the appropriate Brex API endpoint based on the target status." }, { "slug": "BREX_UPDATE_EXPENSE", "name": "Update Expense", "description": "Tool to update an expense by its ID. Use when you need to modify expense details such as memo, location, department, or category. You can update one or multiple fields in a single request." }, { "slug": "BREX_UPDATE_FIELD", "name": "Update Field", "description": "Tool to update a custom field in Brex. Use when you need to modify a field's name or disable/enable it." }, { "slug": "BREX_UPDATE_FIELD_VALUES", "name": "Update Field Values", "description": "Tool to update custom field values in Brex for a specific field. Use when you need to modify existing field values, supporting batch updates of up to 1000 values at once. Each value can be identified by brex_id (entity identifier), value_id (field value ID), or remote_id (external system ID). The API will update the field values and return the complete updated state including metadata like updated_at timestamps." }, { "slug": "BREX_UPDATE_SPEND_LIMIT", "name": "Update Spend Limit", "description": "Updates an existing Brex spend limit by its ID. Allows modifying spend limit properties including name, description, status (ACTIVE/INACTIVE), period settings, authorization controls, spending limits, merchant restrictions, member/owner assignments, and policy associations. At least one optional field must be provided to update. Requires the spend limit ID from BREX_GET_SPEND_LIMITS or creation actions." }, { "slug": "BREX_UPDATE_USER", "name": "Update User", "description": "Update user details." }, { "slug": "BREX_UPDATE_VENDOR", "name": "Update Vendor", "description": "Tool to update vendor information in Brex. Use when you need to modify vendor details such as company name, email, phone, payment accounts, or beneficiary information." }, { "slug": "BREX_UPDATE_WEBHOOK_SUBSCRIPTION", "name": "Update Webhook Subscription", "description": "Updates an existing Brex webhook subscription's configuration. You can modify the webhook URL endpoint, change which event types trigger notifications, activate/deactivate the subscription, or reassign it to a different webhook group (partners only). This is useful when you need to redirect webhooks to a new URL, add/remove event types from your subscription, or temporarily pause webhook deliveries without deleting the subscription." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "brex_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "API Server Base URL", "type": "string", "description": "API Server Base URL for Brex platform API.", "required": true, "default": "https://platform.brexapis.com" }, { "name": "authorizationUrl", "displayName": "Auth Server Base URL", "type": "string", "description": "Auth Server Base URL for Brex platform API.", "required": true, "default": "https://accounts-api.brex.com/oauth2/default" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "accounts.card.readonly,accounts.cash.readonly,budgets,budgets.readonly,cards,cards.pan,cards.readonly,cash.accounts.readonly,companies.readonly,departments,departments.readonly,expenses.card,expenses.card.readonly,incoming_transfers,linked_accounts.readonly,locations,locations.readonly,offline_access,openid,statements.card.readonly,statements.cash.readonly,titles,titles.readonly,transactions.card.readonly,transactions.cash.readonly,transfers,transfers.readonly,users,users.readonly,vendors,vendors.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "brex_api_key", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Base URL for Brex platform API.", "required": true, "default": "https://platform.brexapis.com" } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Access token for Brex platform API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "intercom", "name": "Intercom", "logo": "https://logos.composio.dev/api/intercom", "description": "Intercom provides live chat, messaging, and customer engagement tools, enabling businesses to drive conversions, handle support, and personalize communication at scale", "category": "customer support", "authSchemes": [ "OAUTH2" ], "toolCount": 133, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INTERCOM_ADD_SUBSCRIPTION_TO_A_CONTACT", "name": "Add subscription to a contact", "description": "You can add a specific subscription to a contact. In Intercom, we have two different subscription types based on user consent - opt-out and opt-in: 1.Attaching a contact to an opt-out subscription type will opt that user out from receiving messages related to that subscription type. 2.Attaching a contact to an opt-in subscription type will opt that user in to receiving messages related to that subscription type. This will return a subscription type model for the subscription type that was added to the contact." }, { "slug": "INTERCOM_ADD_TAG_TO_CONTACT", "name": "Add tag to contact", "description": "Tool to add a tag to a contact in Intercom. Use when you need to attach or add a specific tag to a contact for categorization or tracking purposes." }, { "slug": "INTERCOM_ARCHIVE_CONTACT", "name": "Archive contact", "description": "Tool to archive a single contact in Intercom. Use when you need to archive a contact by their ID." }, { "slug": "INTERCOM_ASSIGN_CONVERSATION", "name": "Assign conversation", "description": "Assigns a conversation to a specific admin or team in Intercom. Mutates live conversation state; confirm intent before bulk-assigning multiple conversations." }, { "slug": "INTERCOM_ATTACH_CONTACT_TO_COMPANY", "name": "Attach contact to company", "description": "Tool to attach a contact to a company in Intercom. Use when you need to associate a contact with a company." }, { "slug": "INTERCOM_ATTACH_CONTACT_TO_CONVERSATION", "name": "Attach contact to conversation", "description": "Tool to attach a contact participant to a conversation on behalf of admin or contact. Use when you need to add a new participant to an existing conversation." }, { "slug": "INTERCOM_ATTACH_TAG_TO_CONVERSATION", "name": "Attach tag to conversation", "description": "Tool to add a tag to a specific conversation in Intercom. Use when you need to attach or tag a conversation." }, { "slug": "INTERCOM_ATTACH_TAG_TO_TICKET", "name": "Attach tag to ticket", "description": "Tool to add a tag to a ticket in Intercom. Use when you need to attach or add a specific tag to a ticket for categorization or tracking purposes." }, { "slug": "INTERCOM_BLOCK_CONTACT", "name": "Block contact", "description": "Tool to block a single contact in Intercom. Use when you need to block a contact, which will also archive their conversations." }, { "slug": "INTERCOM_CANCEL_DATA_EXPORT", "name": "Cancel data export", "description": "Tool to cancel an active content data export job. Use when you need to terminate an ongoing export and update its status to 'canceled'." }, { "slug": "INTERCOM_CLOSE_CONVERSATION", "name": "Close conversation", "description": "Closes a conversation in Intercom, marking it as resolved. Requires explicit user confirmation before calling; closing is irreversible without a separate reopen action. Send any reply via INTERCOM_REPLY_TO_CONVERSATION before calling this tool — parallel execution on the same conversation causes conflicts." }, { "slug": "INTERCOM_CREATE_A_COLLECTION", "name": "Create a collection", "description": "You can create a new collection by making a POST request to `https://api.intercom.io/help_center/collections.`" }, { "slug": "INTERCOM_CREATE_AN_ARTICLE", "name": "Create an article", "description": "You can create a new article by making a POST request to `https://api.intercom.io/articles`." }, { "slug": "INTERCOM_CREATE_A_NOTE", "name": "Create a note", "description": "You can add a note to a single contact." }, { "slug": "INTERCOM_CREATE_CONTACT", "name": "Create contact", "description": "Tool to create a new contact in Intercom workspace. Use when you need to add a user or lead to Intercom. At least one identifier (email, external_id, or role) must be provided." }, { "slug": "INTERCOM_CREATE_CONTENT_IMPORT_SOURCE", "name": "Create content import source", "description": "Tool to create a new content import source for the Fin Content Library. Use when you need to create a container for External Pages to be ingested into Intercom's AI content system." }, { "slug": "INTERCOM_CREATE_CONVERSATION", "name": "Create conversation", "description": "Creates a new conversation in Intercom. Requires exactly one of from_user_id or from_contact_id — both are schema-optional but at least one must be provided." }, { "slug": "INTERCOM_CREATE_DATA_ATTRIBUTE", "name": "Create data attribute", "description": "Tool to create a custom data attribute for contacts or companies. Use when you need to define a new attribute to track additional information beyond standard fields." }, { "slug": "INTERCOM_CREATE_DATA_EVENT", "name": "Create data event", "description": "Tool to submit a data event to Intercom to track user activities. Use when you need to notify Intercom of user actions and changes. Events are detected as duplicates using workspace ID, contact identifier, event name, and timestamp." }, { "slug": "INTERCOM_CREATE_DATA_EXPORT", "name": "Create data export", "description": "Tool to initiate an async data export job for message content. Use when you need to export messages created within a specific timeframe. Only one active job per workspace is allowed; exceeding this limit triggers a 429 error. Jobs expire two days after completion." }, { "slug": "INTERCOM_CREATE_EXTERNAL_PAGE", "name": "Create external page", "description": "Tool to create an external page in Fin Content Library or update an existing page by external ID. Use when you need to ingest new content or update existing content for AI-generated answers. Supports upsert behavior: if a page with the same source_id and external_id exists, it will be updated instead of creating a new one." }, { "slug": "INTERCOM_CREATE_HELP_CENTER_SECTION", "name": "Create help center section", "description": "Tool to create a new help center section within a collection. Use when you need to add a new section to organize articles in the help center hierarchy (Help Center → Collections → Sections → Articles). Supports multilingual content via translated_content parameter." }, { "slug": "INTERCOM_CREATE_INTERNAL_ARTICLE", "name": "Create internal article", "description": "Tool to create a new internal article for team knowledge sharing. Use when you need to add new internal documentation or knowledge base articles for team members." }, { "slug": "INTERCOM_CREATE_OR_UPDATE_A_COMPANY", "name": "Create or update a company", "description": "You can create or update a company. Companies will be only visible in Intercom when there is at least one associated user. Companies are looked up via `company_id` in a `POST` request, if not found via `company_id`, the new company will be created, if found, that company will be updated. {% admonition type=\"attention\" name=\"Using `company_id`\" %} You can set a unique `company_id` value when creating a company. However, it is not possible to update `company_id`. Be sure to set a unique value once upon creation of the company. {% /admonition %}" }, { "slug": "INTERCOM_CREATE_TAG", "name": "Create or update tag", "description": "Tool to create or update a tag, and optionally tag/untag companies or tag contacts. Use when you need to create a new tag, update an existing tag, or apply/remove tags to/from companies or users." }, { "slug": "INTERCOM_CREATE_TICKET", "name": "Create ticket", "description": "Tool to create a ticket in Intercom to track customer requests and issues. Use when you need to create a new support ticket with specified type, contacts, and attributes." }, { "slug": "INTERCOM_CREATE_TICKET_TYPE", "name": "Create a ticket type", "description": "Tool to create a new ticket type that defines the data structure for tracking customer requests. Use when you need to establish a new category of tickets with specific fields and states." }, { "slug": "INTERCOM_CREATE_TICKET_TYPE_ATTRIBUTE", "name": "Create ticket type attribute", "description": "Tool to create a new attribute for a ticket type in Intercom. Use when you need to add custom attributes to ticket types for data collection." }, { "slug": "INTERCOM_DATA_EVENT_SUMMARIES", "name": "Create event summaries", "description": "Tool to create event summaries for a user to track event occurrences. Use when you need to bulk update event counts for a user." }, { "slug": "INTERCOM_DELETE_A_COLLECTION", "name": "Delete a collection", "description": "You can delete a single collection by making a DELETE request to `https://api.intercom.io/collections/`." }, { "slug": "INTERCOM_DELETE_A_COMPANY", "name": "Delete a company", "description": "You can delete a single company." }, { "slug": "INTERCOM_DELETE_AN_ARTICLE", "name": "Delete an article", "description": "You can delete a single article by making a DELETE request to `https://api.intercom.io/articles/`." }, { "slug": "INTERCOM_DELETE_A_TAG_DELETE_TAG", "name": "Delete a tag", "description": "Tool to delete a tag from Intercom workspace. Use when you need to permanently remove a tag that is no longer needed." }, { "slug": "INTERCOM_DELETE_A_VISITOR", "name": "Delete a visitor", "description": "Tool to delete a visitor from the Intercom workspace. Use when you need to permanently remove a visitor record." }, { "slug": "INTERCOM_DELETE_CONTACT", "name": "Delete a contact", "description": "Tool to delete a contact from the Intercom workspace. Use when you need to permanently remove a contact record." }, { "slug": "INTERCOM_DELETE_CONTENT_IMPORT_SOURCE", "name": "Delete content import source", "description": "Tool to delete a content import source and all its external pages. Use when you need to remove a content import source from Intercom. This operation is permanent and cannot be undone." }, { "slug": "INTERCOM_DELETE_EXTERNAL_PAGE", "name": "Delete external page", "description": "Tool to delete an external page from content library and AI answers. Use when you need to remove an external page from Intercom's AI knowledge base." }, { "slug": "INTERCOM_DELETE_INTERNAL_ARTICLE", "name": "Delete internal article", "description": "Tool to delete a single internal article by ID. Use when you need to permanently remove an internal article from Intercom." }, { "slug": "INTERCOM_DELETE_TICKET", "name": "Delete ticket", "description": "Tool to delete a ticket from the Intercom system. Use when you need to permanently remove a ticket." }, { "slug": "INTERCOM_DETACH_A_CONTACT", "name": "Detach a contact from tag", "description": "Tool to remove a tag from a specific contact in Intercom. Use when you need to detach or untag a contact." }, { "slug": "INTERCOM_DETACH_CONTACT_FROM_COMPANY", "name": "Detach contact from company", "description": "Tool to detach a contact from a company in Intercom. Use when you need to remove a company association from a contact." }, { "slug": "INTERCOM_DETACH_TAG_FROM_CONVERSATION", "name": "Detach tag from conversation", "description": "Tool to remove a tag from a specific conversation in Intercom. Use when you need to detach or untag a conversation." }, { "slug": "INTERCOM_DETACH_TAG_FROM_TICKET", "name": "Detach tag from ticket", "description": "Tool to remove a tag from a ticket in Intercom. Use when you need to detach or remove a specific tag from a ticket." }, { "slug": "INTERCOM_DOWNLOAD_DATA_EXPORT", "name": "Download data export", "description": "Tool to download content data export from Intercom. Use when you need to retrieve exported message data from a completed data export job. The data is returned as a gzipped CSV file stream." }, { "slug": "INTERCOM_ENQUEUE_CREATE_TICKET", "name": "Enqueue create ticket", "description": "Tool to enqueue ticket creation for asynchronous processing. Use when you need to create a ticket in Intercom. The system attempts validation on inputs before tasks are enqueued." }, { "slug": "INTERCOM_FIND_TAG", "name": "Find a tag", "description": "Tool to retrieve details for a specific tag by its ID. Use when you need to get information about a particular tag in the workspace." }, { "slug": "INTERCOM_GET_A_CONTACT", "name": "Get a contact", "description": "You can fetch the details of a single contact." }, { "slug": "INTERCOM_GET_CONTENT_IMPORT_SOURCE", "name": "Get content import source", "description": "Tool to retrieve a content import source by its ID. Use when you need to fetch details about a specific content import source from Intercom's AI features." }, { "slug": "INTERCOM_GET_CONVERSATION", "name": "Get conversation", "description": "Retrieves a specific conversation by ID with all messages and details. Key response caveats: `conversation_parts` are paginated — walk all cursors for complete transcripts. Fields `title`, `subject`, `source.body`, `conversation_parts.body`, `statistics`, and some contact properties can be null. System/workflow events appear in `conversation_parts` with null `body` or `author`; `first_admin_reply_at` may be null despite actual replies — use `last_admin_reply_at` for SLA calculations. Attachment URLs in `conversation_parts` are short-lived — download promptly. The `state` field and `open` boolean can diverge — re-fetch to verify state before assign/reply/close actions. Timestamps are Unix epoch seconds UTC. Use this tool (not INTERCOM_SEARCH_CONVERSATIONS) when full message context is required." }, { "slug": "INTERCOM_GET_COUNTS", "name": "Get entity counts", "description": "Tool to retrieve summary counts for Intercom app entities including companies, users, leads, tags, segments, and conversations. Use when you need to get statistics about the total number of entities in the workspace or conversation counts." }, { "slug": "INTERCOM_GET_CUSTOM_OBJECT_INSTANCE_BY_EXTERNAL_ID", "name": "Get custom object instance by external ID", "description": "Tool to retrieve a custom object instance by its external_id. Use when you need to fetch a specific custom object instance from Intercom using an identifier from your external system rather than Intercom's internal ID." }, { "slug": "INTERCOM_GET_EXTERNAL_PAGE", "name": "Get external page", "description": "Tool to retrieve an external page from Fin Content Library by ID. Use when you need to fetch details of a specific external page including its content, metadata, and AI availability settings." }, { "slug": "INTERCOM_GET_TICKET", "name": "Get ticket", "description": "Tool to retrieve a ticket from Intercom. Use when you need to fetch comprehensive details about a specific ticket including state, type, attributes, and contacts." }, { "slug": "INTERCOM_GET_TICKET_TYPE", "name": "Get a ticket type", "description": "Tool to retrieve details for a specific ticket type by its ID. Use when you need to get complete information about a ticket type including its attributes and states." }, { "slug": "INTERCOM_IDENTIFY_AN_ADMIN", "name": "Identify an admin", "description": "You can view the currently authorised admin along with the embedded app object (a \"workspace\" in legacy terminology). > 🚧 Single Sign On > > If you are building a custom \"Log in with Intercom\" flow for your site, and you call the `/me` endpoint to identify the logged-in user, you should not accept any sign-ins from users with unverified email addresses as it poses a potential impersonation security risk." }, { "slug": "INTERCOM_JOBS_STATUS", "name": "Retrieve job status", "description": "Tool to retrieve the status of job execution. Use when checking progress and outcome of asynchronous operations like data imports or exports." }, { "slug": "INTERCOM_LIST_ALL_ACTIVITY_LOGS", "name": "List all activity logs", "description": "You can get a log of activities by all admins in an app." }, { "slug": "INTERCOM_LIST_ALL_ADMINS", "name": "List all admins", "description": "You can fetch a list of admins for a given workspace." }, { "slug": "INTERCOM_LIST_ALL_ARTICLES", "name": "List all articles", "description": "You can fetch a list of all articles by making a GET request to `https://api.intercom.io/articles`. > 📘 How are the articles sorted and ordered? > > Articles will be returned in descending order on the `updated_at` attribute. This means if you need to iterate through results then we'll show the most recently updated articles first." }, { "slug": "INTERCOM_LIST_ALL_COLLECTIONS", "name": "List all collections", "description": "You can fetch a list of all collections by making a GET request to `https://api.intercom.io/help_center/collections`. Collections will be returned in descending order on the `updated_at` attribute. This means if you need to iterate through results then we'll show the most recently updated collections first." }, { "slug": "INTERCOM_LIST_ALL_COMPANIES", "name": "List all companies", "description": "You can list companies. The company list is sorted by the `last_request_at` field and by default is ordered descending, most recently requested first. Note that the API does not include companies who have no associated users in list responses. When using the Companies endpoint and the pages object to iterate through the returned companies, there is a limit of 10,000 Companies that can be returned. If you need to list or iterate on more than 10,000 Companies, please use the [Scroll API](https://developers.intercom.com/reference#iterating-over-all-companies). {% admonition type=\"warning\" name=\"Pagination\" %} You can use pagination to limit the number of results returned. The default is `20` results per page. See the [pagination section](https://developers.intercom.com/docs/build-an-integration/learn-more/rest-apis/pagination/#pagination-for-list-apis) for more details on how to use the `starting_after` param. {% /admonition %}" }, { "slug": "INTERCOM_LIST_ALL_HELP_CENTERS", "name": "List all help centers", "description": "You can list all Help Centers by making a GET request to `https://api.intercom.io/help_center/help_centers`." }, { "slug": "INTERCOM_LIST_ALL_MACROS", "name": "List all macros", "description": "Tool to fetch a list of all macros (saved replies) in your workspace for use in automating responses. The macros are returned in descending order by updated_at. Use when you need to retrieve available macros or sync macro data." }, { "slug": "INTERCOM_LIST_ALL_NOTES", "name": "List all notes", "description": "You can fetch a list of notes that are associated to a contact." }, { "slug": "INTERCOM_LIST_ATTACHED_COMPANIES_FOR_CONTACT", "name": "List attached companies for contact", "description": "You can fetch a list of companies that are associated to a contact." }, { "slug": "INTERCOM_LIST_ATTACHED_CONTACTS", "name": "List attached contacts", "description": "You can fetch a list of all contacts that belong to a company." }, { "slug": "INTERCOM_LIST_ATTACHED_SEGMENTS_FOR_COMPANIES", "name": "List attached segments for companies", "description": "You can fetch a list of all segments that belong to a company." }, { "slug": "INTERCOM_LIST_ATTACHED_SEGMENTS_FOR_CONTACT", "name": "List attached segments for contact", "description": "You can fetch a list of segments that are associated to a contact." }, { "slug": "INTERCOM_LIST_AWAY_STATUS_REASONS", "name": "List away status reasons", "description": "Tool to retrieve all away status reasons for a workspace including deleted ones. Use when you need to list available away status options for team members." }, { "slug": "INTERCOM_LIST_CALLS", "name": "List calls", "description": "Tool to list all phone calls from Intercom with pagination support. Use when you need to retrieve call records, view call history, or iterate through calls." }, { "slug": "INTERCOM_LIST_CALLS_WITH_TRANSCRIPTS", "name": "List calls with transcripts", "description": "Tool to retrieve calls by conversation IDs with transcripts when available. Use when you need to get call records with their transcripts for specific conversations. Maximum 20 conversation IDs per request." }, { "slug": "INTERCOM_LIST_COMPANY_NOTES", "name": "List company notes", "description": "Tool to list all notes associated with a specific company. Use when you need to retrieve all notes that have been added to a company record." }, { "slug": "INTERCOM_LIST_CONTACTS", "name": "List all contacts", "description": "Tool to list all contacts (users or leads) in your Intercom workspace with pagination support. Use when you need to retrieve multiple contacts or iterate through all contacts in the workspace." }, { "slug": "INTERCOM_LIST_CONTENT_IMPORT_SOURCES", "name": "List content import sources", "description": "Tool to retrieve all content import sources for the workspace. Use when you need to list all content sources for Fin Content Library." }, { "slug": "INTERCOM_LIST_CONVERSATIONS", "name": "List conversations", "description": "Lists all conversations from Intercom with pagination support. This endpoint does not support filtering by state, assignee, or other attributes - use INTERCOM_SEARCH_CONVERSATIONS for filtering. Paginate by reading pages.next.starting_after from each response and passing it as starting_after until pages.next is absent. Response fields including title, source.body, conversation_parts.body, and statistics may be null; guard before string operations." }, { "slug": "INTERCOM_LIST_DATA_ATTRIBUTES", "name": "List data attributes", "description": "Tool to list all data attributes for contacts, companies, and conversations. Use when you need to retrieve metadata about available data attributes." }, { "slug": "INTERCOM_LIST_DATA_EVENTS", "name": "List data events", "description": "Tool to retrieve a log of data events belonging to a customer. Use when you need to list events for a specific user. Note: Only events less than 90 days old can be listed." }, { "slug": "INTERCOM_LIST_EXTERNAL_PAGES", "name": "List external pages", "description": "Tool to list all external pages from Fin Content Library. Use when you need to retrieve external pages used for AI-generated answers in Intercom." }, { "slug": "INTERCOM_LIST_HELP_CENTER_SECTIONS", "name": "List help center sections", "description": "Tool to fetch a list of all help center sections in descending order by updated_at. Use when you need to retrieve sections from the help center hierarchy (Help Center → Collections → Sections → Articles)." }, { "slug": "INTERCOM_LIST_INTERNAL_ARTICLES", "name": "List internal articles", "description": "Fetches one page of internal articles from Intercom. Uses Intercom's cursor-based pagination via `starting_after`. ONE Intercom API call is made per invocation; pagination is caller-driven via the `starting_after` request parameter and the `next_starting_after` field in the response." }, { "slug": "INTERCOM_LIST_NEWS_ITEMS", "name": "List all news items", "description": "Tool to fetch a list of all news items from Intercom. Use when you need to retrieve news items posted in the workspace." }, { "slug": "INTERCOM_LIST_SEGMENTS", "name": "List all segments", "description": "Tool to retrieve all segments defined within a workspace for filtering and categorizing contacts. Use when you need to get a list of all available segments or check segment counts." }, { "slug": "INTERCOM_LIST_SUBSCRIPTIONS_FOR_A_CONTACT", "name": "List subscriptions for a contact", "description": "You can fetch a list of subscription types that are attached to a contact. These can be subscriptions that a user has 'opted-in' to or has 'opted-out' from, depending on the subscription type. This will return a list of Subscription Type objects that the contact is associated with. The data property will show a combined list of: 1.Opt-out subscription types that the user has opted-out from. 2.Opt-in subscription types that the user has opted-in to receiving." }, { "slug": "INTERCOM_LIST_SUBSCRIPTION_TYPES", "name": "List subscription types", "description": "Tool to list all subscription types available in the workspace. Use when you need to retrieve subscription configuration details including state, translations, consent type, and supported content types." }, { "slug": "INTERCOM_LIST_TAGS", "name": "List all tags", "description": "Tool to fetch all tags for the workspace. Use when you need to retrieve all available tags that can be applied to contacts, companies, and conversations." }, { "slug": "INTERCOM_LIST_TAGS_ATTACHED_TO_A_CONTACT", "name": "List tags attached to a contact", "description": "You can fetch a list of all tags that are attached to a specific contact." }, { "slug": "INTERCOM_LIST_TEAMS", "name": "List all teams", "description": "Tool to retrieve all teams within a workspace. Use when you need to get a list of all available teams, their members, or assignment configurations." }, { "slug": "INTERCOM_LIST_TICKET_STATES", "name": "List all ticket states", "description": "Tool to fetch all ticket states for the workspace. Use when you need to retrieve all configured ticket states, including both active and archived ones." }, { "slug": "INTERCOM_LIST_TICKET_TYPES", "name": "List all ticket types", "description": "Tool to retrieve all ticket types for the workspace. Use when you need to get all available ticket type configurations including attributes and states." }, { "slug": "INTERCOM_MERGE_A_LEAD_AND_A_USER", "name": "Merge a lead and a user", "description": "You can merge a contact with a `role` of `lead` into a contact with a `role` of `user`." }, { "slug": "INTERCOM_REGISTER_FIN_VOICE_CALL", "name": "Register Fin Voice call", "description": "Tool to register a Fin Voice call with Intercom. Use when you need to create a record of an external voice call in Intercom, enabling AI-powered call analysis and customer interaction tracking." }, { "slug": "INTERCOM_REMOVE_SUBSCRIPTION_FROM_A_CONTACT", "name": "Remove subscription from a contact", "description": "You can remove a specific subscription from a contact. This will return a subscription type model for the subscription type that was removed from the contact." }, { "slug": "INTERCOM_REMOVE_TAG_FROM_A_CONTACT", "name": "Remove tag from a contact", "description": "You can remove tag from a specific contact. This will return a tag object for the tag that was removed from the contact." }, { "slug": "INTERCOM_REOPEN_CONVERSATION", "name": "Reopen conversation", "description": "Reopens a closed conversation in Intercom. Only operates correctly on conversations in a closed state; verify state via INTERCOM_GET_CONVERSATION before calling, as using on open or snoozed conversations may produce unexpected results." }, { "slug": "INTERCOM_REPLY_TICKET", "name": "Reply to ticket", "description": "Tool to reply to a ticket with a message from admin or contact, or with a note for admins. Use when you need to add a response or comment to an existing ticket." }, { "slug": "INTERCOM_REPLY_TO_CONVERSATION", "name": "Reply to conversation", "description": "Sends a reply to an existing conversation in Intercom. Always send reply before closing a conversation — never parallelize with INTERCOM_CLOSE_CONVERSATION on the same conversation. Verify conversation state via INTERCOM_GET_CONVERSATION before replying, as open/snoozed/closed states may diverge from cached values." }, { "slug": "INTERCOM_RETRIEVE_A_COLLECTION", "name": "Retrieve a collection", "description": "You can fetch the details of a single collection by making a GET request to `https://api.intercom.io/help_center/collections/`." }, { "slug": "INTERCOM_RETRIEVE_A_COMPANY_BY_ID", "name": "Retrieve a company by id", "description": "You can fetch a single company." }, { "slug": "INTERCOM_RETRIEVE_A_HELP_CENTER", "name": "Retrieve a help center", "description": "You can fetch the details of a single Help Center by making a GET request to `https://api.intercom.io/help_center/help_center/`." }, { "slug": "INTERCOM_RETRIEVE_A_JOB_STATUS", "name": "Retrieve job status", "description": "Tool to retrieve the status of a data export job. Use when checking the progress of an export job by providing the job identifier." }, { "slug": "INTERCOM_RETRIEVE_A_MACRO", "name": "Retrieve a macro", "description": "Tool to fetch a single macro (saved reply) by its ID. The macro will only be returned if it is visible to the authenticated user based on its visibility settings." }, { "slug": "INTERCOM_RETRIEVE_AN_ADMIN", "name": "Retrieve an admin", "description": "You can retrieve the details of a single admin." }, { "slug": "INTERCOM_RETRIEVE_AN_ARTICLE", "name": "Retrieve an article", "description": "You can fetch the details of a single article by making a GET request to `https://api.intercom.io/articles/`." }, { "slug": "INTERCOM_RETRIEVE_A_SEGMENT", "name": "Retrieve a segment", "description": "Tool to retrieve details for a single segment by its ID. Use when you need to get information about a specific segment including its name, type, and optionally the count of items." }, { "slug": "INTERCOM_RETRIEVE_COMPANIES", "name": "Retrieve companies", "description": "You can fetch a single company by passing in `company_id` or `name`. `https://api.intercom.io/companies?name={name}` `https://api.intercom.io/companies?company_id={company_id}` You can fetch all companies and filter by `segment_id` or `tag_id` as a query parameter. `https://api.intercom.io/companies?tag_id={tag_id}` `https://api.intercom.io/companies?segment_id={segment_id}`" }, { "slug": "INTERCOM_RETRIEVE_INTERNAL_ARTICLE", "name": "Retrieve internal article", "description": "Tool to retrieve an internal article by ID from Intercom. Use when you need to fetch details of a specific internal article including its title, body content, and metadata." }, { "slug": "INTERCOM_RETRIEVE_NOTE", "name": "Retrieve note", "description": "Tool to retrieve details of a single note by its identifier. Use when you need to fetch the complete information about a specific note." }, { "slug": "INTERCOM_RETRIEVE_TEAM", "name": "Retrieve a team", "description": "Tool to retrieve detailed information about a specific team by ID. Use when you need to get team details including members and assignment configuration." }, { "slug": "INTERCOM_RETRIEVE_VISITOR_WITH_USER_ID", "name": "Retrieve visitor with user ID", "description": "Tool to retrieve a specific visitor's details using their user_id. Use when you need to fetch comprehensive visitor information including profile data, location, and activity metrics." }, { "slug": "INTERCOM_SCROLL_OVER_ALL_COMPANIES", "name": "Scroll over all companies", "description": "The `list all companies` functionality does not work well for huge datasets, and can result in errors and performance problems when paging deeply. The Scroll API provides an efficient mechanism for iterating over all companies in a dataset. - Each app can only have 1 scroll open at a time. You'll get an error message if you try to have more than one open per app. You can get the first page of companies by simply sending a GET request to the scroll endpoint. For subsequent requests you will need to use the scroll parameter from the response type=\"danger\" name=\"Scroll network timeouts\". Since scroll is often used on large datasets network errors such as timeouts can be encountered. When this occurs you will see a HTTP 500 error with the following message: \"Request failed due to an internal network error. Please restart the scroll operation.\" If this happens, you will need to restart your scroll query." }, { "slug": "INTERCOM_SEARCH_CONTACTS", "name": "Search contacts", "description": "Tool to search for contacts using query filters with operators. Use when finding contacts by role, email, name, or attributes. Response entries may include null or non-dictionary values; guard against missing/null fields before accessing nested properties. A contact may have multiple emails or contact_ids; deduplicate when aggregating across searches." }, { "slug": "INTERCOM_SEARCH_CONVERSATIONS", "name": "Search conversations", "description": "Searches for conversations using query string with support for filtering and sorting" }, { "slug": "INTERCOM_SEARCH_FOR_ARTICLES", "name": "Search for articles", "description": "You can search for articles by making a GET request to `https://api.intercom.io/articles/search`." }, { "slug": "INTERCOM_SEARCH_INTERNAL_ARTICLES", "name": "Search internal articles", "description": "Searches one page of internal articles in Intercom. Uses Intercom's cursor-based pagination via `starting_after`. ONE Intercom API call is made per invocation; pagination is caller-driven via the `starting_after` request parameter and the `next_starting_after` field in the response. Optionally filtered by `folder_id`." }, { "slug": "INTERCOM_SEARCH_TICKETS", "name": "Search tickets", "description": "Tool to search tickets in Intercom by filtering attribute values. Use when you need to find tickets matching specific criteria like state, creation date, assignment, or custom attributes." }, { "slug": "INTERCOM_SET_ADMIN_TO_AWAY", "name": "Set admin to away", "description": "Tool to set an admin to away status in Intercom. Use when you need to mark an admin as away, optionally with a specific reason and reassignment behavior." }, { "slug": "INTERCOM_SET_AN_ADMIN_TO_AWAY", "name": "Set an admin to away", "description": "You can set an Admin as away for the Inbox." }, { "slug": "INTERCOM_SHOW_CALL", "name": "Show call", "description": "Tool to retrieve a single call by ID from Intercom. Use when you need to get detailed information about a specific phone call." }, { "slug": "INTERCOM_SHOW_CALL_TRANSCRIPT", "name": "Show call transcript", "description": "Tool to get call transcript by call ID. Use when you need to retrieve the transcript text from a recorded call." }, { "slug": "INTERCOM_SHOW_CONTACT_BY_EXTERNAL_ID", "name": "Show contact by external ID", "description": "Tool to retrieve a contact by their external ID. Use when you need to fetch contact details using an identifier from your external system rather than Intercom's internal ID. Only supports users, not leads." }, { "slug": "INTERCOM_UNARCHIVE_CONTACT", "name": "Unarchive contact", "description": "Tool to unarchive a previously archived contact in Intercom. Use when you need to restore an archived contact by their ID." }, { "slug": "INTERCOM_UPDATE_A_COLLECTION", "name": "Update a collection", "description": "You can update the details of a single collection by making a PUT request to `https://api.intercom.io/collections/`." }, { "slug": "INTERCOM_UPDATE_A_COMPANY", "name": "Update a company", "description": "You can update a single company using the Intercom provisioned `id`. {% admonition type=\"attention\" name=\"Using `company_id`\" %} When updating a company it is not possible to update `company_id`. This can only be set once upon creation of the company. {% /admonition %}" }, { "slug": "INTERCOM_UPDATE_A_CONTACT", "name": "Update a contact", "description": "You can update an existing contact (ie. user or lead)." }, { "slug": "INTERCOM_UPDATE_AN_ARTICLE", "name": "Update an article", "description": "You can update the details of a single article by making a PUT request to `https://api.intercom.io/articles/`." }, { "slug": "INTERCOM_UPDATE_CONTACT", "name": "Update contact", "description": "Tool to update an existing contact in Intercom. Use when you need to modify contact information such as name, email, custom attributes, or other properties." }, { "slug": "INTERCOM_UPDATE_CONTENT_IMPORT_SOURCE", "name": "Update content import source", "description": "Tool to update an existing content import source in Fin Content Library. Use when you need to modify the URL, sync behavior, or status of an existing content import source." }, { "slug": "INTERCOM_UPDATE_DATA_ATTRIBUTE", "name": "Update data attribute", "description": "Tool to update an existing data attribute in Intercom. Use when you need to modify a data attribute's description, archive status, or messenger writability. Note: Changing a data attribute's type via the API is restricted and must be done through the UI." }, { "slug": "INTERCOM_UPDATE_EXTERNAL_PAGE", "name": "Update external page", "description": "Tool to update an existing external page in Fin Content Library. Use when you need to modify the content, metadata, or availability settings of an external page. Only pages created through the API can be updated." }, { "slug": "INTERCOM_UPDATE_INTERNAL_ARTICLE", "name": "Update internal article", "description": "Tool to update an internal article with new title, body, author or owner information. Use when you need to modify an existing internal article in Intercom." }, { "slug": "INTERCOM_UPDATE_TICKET", "name": "Update ticket", "description": "Tool to update an existing ticket in Intercom. Use when you need to modify ticket attributes, state, assignment, or other properties." }, { "slug": "INTERCOM_UPDATE_TICKET_TYPE", "name": "Update a ticket type", "description": "Tool to update an existing ticket type in the workspace. Use when you need to modify a ticket type's name, description, category, icon, or archive status." }, { "slug": "INTERCOM_UPDATE_TICKET_TYPE_ATTRIBUTE", "name": "Update ticket type attribute", "description": "Tool to update an existing attribute for a ticket type. Use when you need to modify properties like description, visibility, or requirements for a ticket type attribute." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Base URL for Intercom API requests.", "required": true, "default": "https://api.intercom.io" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_user,write_user,read_company,write_company,read_conversation,write_conversation,read_admin,write_admin,read_tag,write_tag,read_event,write_event,read_segment,write_segment,read_count,write_count,read_data_attribute,write_data_attribute,read_ticket,write_ticket,read_team,write_team,read_note,write_note,read_news,write_news,read_article,write_article,read_webhook,write_webhook,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "highlevel", "name": "Highlevel", "logo": "https://logos.composio.dev/api/highlevel", "description": "HighLevel provides a marketing automation and CRM platform for agencies, featuring funnels, appointment scheduling, two-way texting, and other tools to drive client success", "category": "marketing automation", "authSchemes": [ "OAUTH2" ], "toolCount": 218, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HIGHLEVEL_ADD_AN_INBOUND_MESSAGE", "name": "Add An Inbound Message", "description": "Adds an inbound message to a conversation in GoHighLevel. Use this action to record a message received from a contact (e.g. SMS, Email, WhatsApp) into an existing conversation. The conversationId, contactId, conversationProviderId, and message type are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_ADD_CONTACT_TAGS", "name": "Add Contact Tags", "description": "Adds one or more tags to an existing contact in a GoHighLevel sub-account. Use this action to label or segment a contact by attaching tags to it. The contactId identifies the contact, and tags is the list of tags to add. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_ADD_FOLLOWERS_CONTACT", "name": "Add Followers Contact", "description": "Adds one or more followers to an existing contact in a GoHighLevel sub-account. The contactId identifies the contact, and followers is the list of user IDs to add as followers. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_ADD_FOLLOWERS_OPPORTUNITY", "name": "Add Followers Opportunity", "description": "Adds one or more followers to an existing opportunity in a GoHighLevel sub-account. The id identifies the opportunity, and followers is the list of user IDs to add as followers. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_ADD_REMOVE_CONTACT_FROM_BUSINESS", "name": "Add Remove Contact From Business", "description": "Adds or removes a set of contacts from a business in a GoHighLevel sub-account in bulk. Provide the locationId, the list of contact ids, and the businessId to associate them with; pass a null businessId to remove the contacts from their business. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_BULK_EDIT", "name": "Bulk Edit", "description": "Bulk updates multiple products in a GoHighLevel sub-account. Use this action to edit several products at once by providing an array of product objects, each identified by its '_id'. The altId and altType identify the location the products belong to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_BULK_UPDATE", "name": "Bulk Update", "description": "Performs a bulk update operation on products within a GoHighLevel sub-account. Supports updating price, availability, product collections, currency, or bulk deleting products for the specified product IDs or all products matching filters when selectAll is true. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CANCEL_SCHEDULED_MESSAGE", "name": "Cancel Scheduled Message", "description": "Cancels a previously scheduled message in a GoHighLevel sub-account, identified by its messageId. This operation is destructive and prevents the scheduled message from being sent. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CHECK_ACCOUNT_FUNDS", "name": "Check Account Funds", "description": "Checks if the GoHighLevel account has sufficient funds to cover marketplace charges. Use this action when you need to verify whether an account has adequate balance before initiating marketplace purchases, billing operations, or any transaction that requires funds to be available. This is a read-only operation that simply queries the current fund status. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CHECK_URL_SLUG_EXISTS", "name": "Check Url Slug Exists", "description": "Checks whether a given URL slug already exists for blog posts in a GoHighLevel sub-account. Use this action to validate slug uniqueness before creating or updating a blog post. Optionally exclude a specific post from the check by providing its post ID. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_COMPLETE_FILE_UPLOAD", "name": "Complete File Upload", "description": "Completes a previously initiated file upload for a GoHighLevel conversation message. Use this action after requesting an upload, passing the uploadId and filePath from that response to finalize the file and obtain its public URL. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CONTACTS_CREATE_ASSOCIATION", "name": "Bulk Update Contact Tags", "description": "Performs a bulk tag update on a list of GoHighLevel contacts. Use this action to add or remove tags across many contacts at once, with the operation type supplied as a path parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_APPOINTMENT", "name": "Create Appointment", "description": "Creates a new appointment (calendar event) in a GoHighLevel sub-account. Use this action to book a contact onto a calendar with a start time, optional end time, meeting location, and status. The calendarId, locationId, contactId, and startTime are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_APPOINTMENT_NOTE", "name": "Create Appointment Note", "description": "Creates a note for an existing appointment in a GoHighLevel sub-account. Use this action to attach a free-form note to a specific appointment identified by appointmentId. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_ASSOCIATION", "name": "Create Association", "description": "Creates a new association between two object types in a GoHighLevel sub-account. Use this action to define a relationship (such as linking a custom object to a contact) by specifying the labels and keys for both objects. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_BLOCK_SLOT", "name": "Create Block Slot", "description": "Creates a block slot on a GoHighLevel calendar to reserve time so it is unavailable for booking. Either calendarId or assignedUserId can be set, not both. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_BLOG_POST", "name": "Create Blog Post", "description": "Creates a new blog post and adds it to an existing blog's post collection in a GoHighLevel sub-account. Use this action to publish or draft a blog post with its title, content, image, categories, author, and URL slug. The locationId and blogId identify the sub-account and the blog whose post set is modified. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_BRAND_BOARDS_VOICES", "name": "Create Brand Voice", "description": "Creates a new brand voice for the specified location in GoHighLevel. Use this action when you need to define a brand voice with a name, tone, target audience, and customer pain points to represent the brand's communication style. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CALENDAR", "name": "Create Calendar", "description": "Creates a new calendar in a GoHighLevel sub-account. Use this action to set up a booking calendar (round robin, event, class, collective, service, or personal) with its scheduling rules, availability, and team members. The locationId and name are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_CALENDAR_GROUP", "name": "Create Calendar Group", "description": "Creates a new calendar group in a GoHighLevel sub-account. Calendar groups organize related calendars under a shared name and slug. The locationId, name, description, and slug are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_CALENDARS_SERVICE_LOCATION", "name": "Create Calendars Service Location", "description": "Creates a new service location for the calendar services. Use this action when you need to add a new service location within a location in GoHighLevel. The service location will be associated with the location identified by the location_id parameter and will be accessible via the calendars API. Required headers (handled automatically): Content-Type: application/json, Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in a GoHighLevel sub-account. Use this action to add a person (lead or customer) with their name, contact details, tags, and custom fields. The locationId is required and identifies the sub-account the contact belongs to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CONTACT_NOTE", "name": "Create Contact Note", "description": "Creates a new note for a specific contact in GoHighLevel. Use this action to attach a text note to a contact, optionally attributing it to a user and setting a title, color, or pinned state. The contactId identifies the contact the note belongs to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CONTACT_TASK", "name": "Create Contact Task", "description": "Creates a new task for a specific contact in GoHighLevel. Use this action to add a task (such as a follow-up or reminder) tied to a contact, with a title, due date, completion status, optional body text, and an optional assignee. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Creates a new conversation in a GoHighLevel sub-account between the sub-account and a contact. Use this action to start a conversation thread for a given contact. Both the locationId and contactId are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Creates a new custom field in a GoHighLevel sub-account (location). Custom fields let you capture additional structured data on records of a custom or standard object. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CUSTOM_FIELD_FOLDER", "name": "Create Custom Field Folder", "description": "Creates a new custom field folder for a custom object in a GoHighLevel sub-account. Use this action to group custom fields under a folder for the given objectKey and location. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CUSTOM_OBJECT_SCHEMA", "name": "Create Custom Object Schema", "description": "Creates a new custom object schema in a GoHighLevel sub-account. Use this action to define a custom object with its display labels, internal key, primary display property, and the location it belongs to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_CUSTOM_VALUE", "name": "Create Custom Value", "description": "Creates a new custom value within a GoHighLevel sub-account (location). Custom values act as reusable placeholders that can be referenced across the account. Provide the locationId, along with the name and value for the new custom value. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_EMAILS_TEMPLATES_FOLDER", "name": "Create Email Template Folder", "description": "Creates a new email template folder for the specified location. Use this action when you need to create a folder to organize email templates within a location in GoHighLevel. The folder will be associated with the location identified by the location_id parameter. This action is useful for organizing email templates into logical categories. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_EVENT_NOTIFICATION", "name": "Create Event Notification", "description": "Creates one or more event notifications for a GoHighLevel calendar. Use this action to configure how and when participants are notified about calendar events (e.g. booking confirmations, reminders, follow-ups) across channels such as email, SMS, in-App and WhatsApp. The calendarId identifies the calendar. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_LINK", "name": "Create Link", "description": "Creates a new trigger link in a GoHighLevel sub-account. Use this action to add a trigger link with a name and a destination URL that contacts are redirected to when they click it. The locationId is required and identifies the sub-account the link belongs to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_MEDIAS_FOLDER", "name": "Create Media Folder", "description": "Creates a new folder in the media storage for a location. Use this action when you need to organize media files by creating a new folder in the GoHighLevel media library. The folder can be created at the root level or as a nested folder under an existing parent folder." }, { "slug": "HIGHLEVEL_CREATE_OBJECT_RECORD", "name": "Create Object Record", "description": "Creates a new record for a custom object schema in a GoHighLevel sub-account. Use this action to add an instance of a custom object (identified by its schemaKey) with its field values supplied via properties, and optionally assign owners and followers. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_OPPORTUNITY", "name": "Create Opportunity", "description": "Creates a new opportunity in a GoHighLevel sub-account. Use this action to add an opportunity to a pipeline, associating it with a contact and a pipeline stage, and optionally setting its monetary value, assignee, and custom fields. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_PRODUCT", "name": "Create Product", "description": "Creates a new product with the specified details in the HighLevel system. Use this action when you need to add a new product to a location in HighLevel, such as creating a service, digital product, or physical item with associated pricing, variants, and tax configurations." }, { "slug": "HIGHLEVEL_CREATE_PRODUCT_COLLECTION", "name": "Create Product Collection", "description": "Creates a new product collection in a GoHighLevel sub-account. Use this action to group products under a named, navigable collection with an optional thumbnail image and SEO metadata. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_PRODUCT_PRICE", "name": "Create Product Price", "description": "Creates a new price for an existing product in a GoHighLevel sub-account. Use this action to attach pricing (one-time or recurring) to a product, specifying the amount, currency, and optional inventory, trial, and billing-cycle settings. The productId identifies the product and locationId identifies the sub-account. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_RECURRING_TASK", "name": "Create Recurring Task", "description": "Creates a recurring task within a GoHighLevel sub-account (location). Provide the task title and the recurrence rules (rruleOptions) that define how often the task repeats. Optionally associate contacts and assign owners. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_RELATION", "name": "Create Relation", "description": "Creates a relation between two records under a given association in a GoHighLevel sub-account. Use this action to link two entities (e.g. a contact and a custom object record) according to a previously defined association. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_SCHEDULE", "name": "Create Schedule", "description": "Creates a new calendar schedule in a GoHighLevel sub-account. A schedule defines the availability rules (intervals, days, dates) within a given timezone for a user and its associated calendars. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_CREATE_TAG", "name": "Create Tag", "description": "Creates a new tag for the specified location. Use this action when you need to create a tag within a location in GoHighLevel. The tag will be associated with the location identified by the location_id parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_CREATE_TEMPLATE", "name": "Create Template", "description": "Creates a new email template in a GoHighLevel sub-account. Use this action to add an email template (html, folder, import, builder, or blank) to a location. The locationId and type are required. importProvider is required only for import templates. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_APPOINTMENT_NOTE", "name": "Delete Appointment Note", "description": "Deletes a note associated with an appointment in a GoHighLevel sub-account. Identify the note by its appointmentId and noteId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_ASSOCIATION", "name": "Delete Association", "description": "Deletes a user-defined association by its ID. Deleting an association will also delete all the relations for that association. Use this action when you need to remove a specific association and all its associated relations from the system. This action is irreversible — once the association is deleted, it cannot be recovered." }, { "slug": "HIGHLEVEL_DELETE_BUSINESS", "name": "Delete Business", "description": "Deletes a business by its unique identifier. Use this action when you need to permanently remove a business and all its associated data from the HighLevel system. This action is irreversible — once the business is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_CALENDAR", "name": "Delete Calendar", "description": "Deletes a calendar from a GoHighLevel sub-account identified by its calendarId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_CONTACT", "name": "Delete Contact", "description": "Deletes a contact from a GoHighLevel sub-account. Use this action to permanently remove a contact identified by its contactId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Deletes a conversation from a GoHighLevel sub-account, identified by its conversationId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Deletes a custom field from a GoHighLevel location. Use this action to permanently remove a custom field identified by its id. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_CUSTOM_FIELD_FOLDER", "name": "Delete Custom Field Folder", "description": "Deletes a custom field folder from a GoHighLevel sub-account. Use this action to permanently remove a custom field folder identified by its id. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_CUSTOM_VALUE", "name": "Delete Custom Value", "description": "Deletes a custom value from a GoHighLevel sub-account (location). Use this action to permanently remove a custom value identified by its id within the given locationId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_EMAILS_TEMPLATE", "name": "Delete Email Template", "description": "Deletes an email template by its ID for a specified location. Use this action when you need to permanently remove an email template from GoHighLevel. This action is irreversible — once the email template is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_EVENT", "name": "Delete Event", "description": "Deletes a calendar event from a GoHighLevel sub-account. Use this action to permanently remove a calendar event identified by its eventId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_EVENT_NOTIFICATION", "name": "Delete Event Notification", "description": "Deletes a notification from a calendar by removing the specified notification ID. Use this action when you need to permanently remove a calendar notification from the GoHighLevel system. This action is irreversible — once the notification is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_GROUP", "name": "Delete Group", "description": "Deletes a calendar group from a GoHighLevel sub-account, identified by its groupId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_LINK", "name": "Delete Link", "description": "Deletes a link by its unique identifier. Use this action when you need to permanently remove a link from the HighLevel system. This action is irreversible — once the link is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_MEDIAS", "name": "Delete Media", "description": "Deletes a specific file or folder from the media storage by its unique identifier. Use this action when you need to permanently remove a media file or folder from the HighLevel media library. This action requires the media object ID and the owning location information. This action is irreversible — once the media is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_NOTE", "name": "Delete Note", "description": "Deletes a note associated with a specific contact in a GoHighLevel sub-account. Use this action to permanently remove a note identified by its id under the given contactId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_OBJECTS_RECORD", "name": "Delete Object Record", "description": "Deletes a record by its ID from a specified object schema (business or custom objects). Use this action when you need to permanently remove a specific record from the HighLevel objects system. This action is irreversible — once the record is deleted, it cannot be recovered. Supported objects include business objects and custom objects. For custom objects, include the 'custom_objects.' prefix in the schemaKey parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_OPPORTUNITY", "name": "Delete Opportunity", "description": "Deletes an opportunity from a GoHighLevel sub-account. Use this action to permanently remove an opportunity identified by its opportunityId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_PRICE_BY_ID_FOR_PRODUCT", "name": "Delete Price By Id For Product", "description": "Deletes a price identified by its priceId from a specific product in a GoHighLevel sub-account. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_PRODUCT_BY_ID", "name": "Delete Product By Id", "description": "Deletes a product from a GoHighLevel sub-account. Use this action to permanently remove a product identified by its productId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_PRODUCT_COLLECTION", "name": "Delete Product Collection", "description": "Deletes a product collection from a GoHighLevel sub-account. Use this action to permanently remove a product collection identified by its collectionId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_PRODUCTS_REVIEW", "name": "Delete Product Review", "description": "Deletes a product review by its unique identifier. Use this action when you need to permanently remove a product review from the HighLevel system. This action is irreversible — once the product review is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_RECURRING_TASK", "name": "Delete Recurring Task", "description": "Deletes a recurring task from a GoHighLevel sub-account (location). Use this action to permanently remove a recurring task identified by its id within a specific location. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_RELATION", "name": "Delete Relation", "description": "Deletes a relation between two objects by its ID. Use this action when you need to remove a specific relation from the system. This action is irreversible — once the relation is deleted, it cannot be recovered. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Deletes a calendar schedule from a GoHighLevel sub-account, identified by its id. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_DELETE_TAG", "name": "Delete Tag", "description": "Deletes a tag from a GoHighLevel sub-account (location). Use this action to permanently remove a tag identified by its tagId within the given locationId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_TASK", "name": "Delete Task", "description": "Deletes a task associated with a contact in a GoHighLevel sub-account. Use this action to permanently remove a task identified by its taskId from the given contact. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DELETE_TEMPLATE", "name": "Delete Template", "description": "Deletes an email builder template from a GoHighLevel sub-account. Use this action to permanently remove a template identified by its templateId within a given location. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_DISABLE_GROUP", "name": "Disable Group", "description": "Enables or disables a calendar group in a GoHighLevel sub-account. Set isActive to false to disable the group or true to enable it; the groupId identifies the group to update. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_EDIT_APPOINTMENT", "name": "Edit Appointment", "description": "Edits an existing appointment event in a GoHighLevel calendar. Use this action to update an appointment's time, status, location, assignment, and other details. The eventId identifies the appointment to edit; only the fields you provide are changed. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_EDIT_BLOCK_SLOT", "name": "Edit Block Slot", "description": "Updates an existing block slot event on a GoHighLevel calendar. Use this action to modify the title, calendar/assigned user, location, and start/end times of a block slot identified by eventId. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_EDIT_GROUP", "name": "Edit Group", "description": "Edits an existing calendar group in a GoHighLevel sub-account. Use this action to update a group's name, description, and slug. The groupId identifies the calendar group to update. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_EXPORT_MESSAGES_BY_LOCATION", "name": "Export Messages By Location", "description": "Exports messages for a specific GoHighLevel sub-account (location). Use this action to retrieve a paginated list of messages, optionally filtered by conversation, contact, channel, and date range, sorted by creation or update time. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_FETCH_CALENDAR_RESOURCES", "name": "Fetch Calendar Resources", "description": "Retrieves a paginated list of calendar resources (equipments or rooms) for a specific sub-account in GoHighLevel. Use this action to explore the resources available for calendar scheduling, such as meeting rooms or equipment. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_FETCH_CAMPAIGNS", "name": "Fetch Campaigns", "description": "Retrieves a list of email campaigns (schedules) for a specific GoHighLevel sub-account. Use this action to fetch and explore campaign information, with support for filtering by status, email status, name, and parent, as well as pagination via limit and offset. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_FETCH_EMAIL_TEMPLATES", "name": "Fetch Email Templates", "description": "Fetches email templates for the specified location from the GoHighLevel email builder. Use this action when you need to retrieve a list of email templates available in a location. The locationId parameter is required to identify which location's templates to fetch. This action returns templates from the email builder including their names, subjects, categories, and other metadata. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_FETCH_REDIRECTS_LIST", "name": "Fetch Redirects List", "description": "Retrieves a paginated list of URL redirects configured for a specific GoHighLevel sub-account (location). Use this action to explore, search, and paginate through the redirects set up under a location's funnels. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_FIND_ASSOCIATIONS", "name": "Find Associations", "description": "Retrieves all associations for a sub-account / location. Use this action when you need to list or discover all associations defined within a specific location, including custom object associations and their relations. This is a read-only action that returns existing associations without making any modifications. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GENERATE_ESTIMATE_NUMBER", "name": "Generate Estimate Number", "description": "Generates the next estimate number for the given location. Use this action when you need to retrieve the next available estimate number before creating a new estimate. This is a read-only action that does not modify any data - it simply returns the next estimate number based on the location's current state. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_AGENT_STUDIO_PUBLIC_API_AGENTS", "name": "Get Agent Studio Agents (Deprecated)", "description": "Lists all active agents with a published production version for the specified location. Use this action when you need to retrieve all agents available in GoHighLevel's Agent Studio for a specific location. Note: This is a deprecated endpoint. Consider using GET /agent instead for new integrations." }, { "slug": "HIGHLEVEL_GET_ALL_BLOG_AUTHORS_BY_LOCATION", "name": "Get All Blog Authors By Location", "description": "Retrieves a paginated list of blog authors for a specific GoHighLevel sub-account (location). Use this action to fetch the available blog authors when managing or displaying blog content. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ALL_CATEGORIES_BY_LOCATION", "name": "Get All Categories By Location", "description": "Retrieves a paginated list of blog categories for a specific GoHighLevel sub-account (location). Use this action to fetch and explore the blog categories configured for a location, such as to display available categories or paginate through them. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ALL_NOTES", "name": "Get All Notes", "description": "Retrieves all notes associated with a specific contact. Use this action when you need to fetch all notes for a contact in GoHighLevel, such as to review communication history or track important information about a contact. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ALL_OR_EMAIL_SMS_TEMPLATES", "name": "Get All Or Email Sms Templates", "description": "Retrieves all templates (or email/SMS/WhatsApp templates filtered by type) for a specific GoHighLevel sub-account (location). Use this action to list available message templates, optionally filtering by template type and paginating through the results. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ALL_SCHEDULES", "name": "Get All Schedules", "description": "Retrieves all schedules for a given user within a sub-account (location), optionally filtered by calendar. Use this action to list the working/availability schedules configured for a user. Supports pagination via the skip and limit query parameters. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_ALL_TASKS", "name": "Get All Tasks", "description": "Retrieves all tasks associated with a specific contact. Use this action when you need to fetch all tasks for a contact in GoHighLevel, such as to track pending activities, follow-ups, or completed work related to a contact. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_APPOINTMENTS_FOR_CONTACT", "name": "Get Appointments For Contact", "description": "Retrieves all appointments associated with a specific contact in a GoHighLevel sub-account. Use this action to list the events booked for a contact, including their calendar, status, timing, and assignment details. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ASSOCIATION_BY_ID", "name": "Get Association By Id", "description": "Retrieves a single association from GoHighLevel by its unique identifier. Use this action to fetch the full details of an association, including the objects it links and its association type. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_ASSOCIATION_BY_OBJECT_KEYS", "name": "Get Association By Object Keys", "description": "Retrieves associations from a GoHighLevel sub-account by object key. Use this action to fetch association details, including the first and second object labels, keys, and the association type. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_BLOCKED_SLOTS", "name": "Get Blocked Slots", "description": "Retrieves blocked slots for a GoHighLevel sub-account within a given time range. Use this action to fetch calendar blocked slots, optionally filtered by user, calendar, or group. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_BLOGS", "name": "Get Blogs", "description": "Retrieves all blogs for a specific location ID. Use this action when you need to fetch all blogs associated with a GoHighLevel location, such as to display a list of blogs on a website or manage blog content for a specific location. This is a read-only action that retrieves existing blogs without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_BRAND_BOARDS", "name": "Get Brand Boards", "description": "Retrieves all brand boards for a specific location. Use this action when you need to fetch all brand boards associated with a location in GoHighLevel, including their logos, colors, and fonts. This is a read-only action that retrieves existing brand boards without modification." }, { "slug": "HIGHLEVEL_GET_BRAND_VOICE", "name": "Get Brand Voice", "description": "Retrieves a brand voice by its ID within the specified location. Use this action when you need to fetch details of a specific brand voice, including its name, description, and sample content that represents the brand's tone and communication style. This is a read-only action that retrieves existing brand voice data without modification." }, { "slug": "HIGHLEVEL_GET_CALENDAR", "name": "Get Calendar", "description": "Retrieves a single calendar by its unique identifier. Use this action when you need to fetch the full details of a specific GoHighLevel calendar, including its booking rules, availability settings, team member assignments, and integration configurations. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CALENDAR_EVENTS", "name": "Get Calendar Events", "description": "Retrieves calendar events for a GoHighLevel sub-account within a given time range. Use this action to fetch appointments and events, optionally filtered by user, calendar, or calendar group. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CALENDARS", "name": "Get Calendars", "description": "Retrieves all calendars associated with a GoHighLevel location. Use this action when you need to list all booking calendars available in a GoHighLevel location, including their configuration details, availability settings, and team member assignments. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CALENDARS_SCHEDULES_EVENT_CALENDAR", "name": "Get Event Calendar Schedule", "description": "Retrieves the availability schedule for a specific event calendar. Use this action when you need to fetch the availability schedule configuration for an event calendar in GoHighLevel, including custom availabilities, open hours, recurring settings, and buffer times. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CALENDARS_SERVICES_BOOKINGS", "name": "Get Service Bookings", "description": "Retrieves service bookings for a location within a given date range, with an optional service location filter. Use this action when you need to fetch a list of booked service appointments for a GoHighLevel location, such as to view all upcoming or historical bookings, generate reports, or sync booking data with an external system. The startTime and endTime parameters define the date range for the query. Both are required and must be in ISO 8601 format. Optionally filter by serviceLocationId to narrow results to a specific service location. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CONTACT", "name": "Get Contact", "description": "Retrieves a single contact from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a contact, including their name, contact information, tags, and custom fields. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CONTACTS_BY_BUSINESS_ID", "name": "Get Contacts By Business Id", "description": "Retrieves a paginated list of contacts associated with a specific business in a GoHighLevel sub-account. Use this action to fetch contacts filtered by business identifier, optionally narrowing the results with a search query and paginating via limit and skip parameters. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CONVERSATIONS", "name": "Get Conversation", "description": "Retrieves a specific conversation by its unique identifier. Use this action when you need to fetch the details of a particular conversation in GoHighLevel, including its status, assigned user, contact information, and metadata. This is a read-only action that retrieves an existing conversation without modification." }, { "slug": "HIGHLEVEL_GET_CONVERSATIONS_MESSAGES2", "name": "Get Conversation Messages", "description": "Retrieves all messages for a specific conversation in GoHighLevel. Use this action when you need to fetch the message history of a conversation to review communication details or track the history of interactions with a contact. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_CUSTOM_FIELD", "name": "Get Custom Field", "description": "Retrieves a single custom field from a GoHighLevel sub-account (location) by its unique identifier. Use this action to fetch the full details of a custom field, including its name, key, data type, and available options. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CUSTOM_FIELD_BY_ID", "name": "Get Custom Field By Id", "description": "Retrieves a single custom field from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a custom field, including its name, data type, options, and configuration. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Retrieves the custom fields configured for a specific GoHighLevel sub-account (location). Use this action to list all custom fields, optionally filtering by model (contact, opportunity, or all). Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CUSTOM_FIELDS_BY_OBJECT_KEY", "name": "Get Custom Fields By Object Key", "description": "Retrieves all custom fields and custom field folders for a given object within a GoHighLevel sub-account, identified by the object key (e.g. 'contact', 'opportunity', or a custom object key). Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CUSTOM_VALUE", "name": "Get Custom Value", "description": "Retrieves a single custom value from a GoHighLevel sub-account (location) by its unique identifier. Use this action to fetch the details of a custom value, including its name, field key, and value. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_CUSTOM_VALUES", "name": "Get Custom Values", "description": "Retrieves all custom values associated with a specific location in GoHighLevel. Use this action when you need to fetch all custom field values configured for a location, such as to access location-specific custom data or display custom field information in an integrated application. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_EMAIL_BY_ID", "name": "Get Email By Id", "description": "Retrieves a single email message from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of an email, including its subject, body, sender, recipients, and delivery status. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_EMAILS_CAMPAIGNS_BULK_ACTIONS2", "name": "Get Bulk Action Campaigns", "description": "Retrieves all bulk action campaigns for a specific GoHighLevel location. Use this action when you need to list email campaigns that use bulk actions for a location, such as to view available campaigns, check their status, or identify campaigns for enrollment purposes. This is a read-only action that retrieves existing campaigns without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_EMAILS_CAMPAIGNS_EMAILS", "name": "Get Email Campaigns", "description": "Retrieves all email campaigns for a specific GoHighLevel location. Use this action when you need to list all email marketing campaigns associated with a location, such as to review campaign statuses, track campaign performance metrics, or select a specific campaign for further operations. This is a read-only action that retrieves existing email campaigns without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_EMAILS_TEMPLATES", "name": "Get Email Templates", "description": "Retrieves all email templates for a specific location. Use this action when you need to fetch all email templates available in a GoHighLevel location, including their content, subjects, and metadata. This is a read-only action that retrieves existing email templates without modification. The templates can be used for email campaigns, automations, and other communications. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_EVENT_NOTIFICATION", "name": "Get Event Notification", "description": "Retrieves a single event notification by its unique notification ID. Use this action when you need to fetch the details of a specific calendar notification, including its delivery channel, timing configuration, and recipient settings in the GoHighLevel system. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_FUNNELS_PAGE", "name": "Get Funnels Page", "description": "Retrieves a list of all funnel pages based on the given query parameters. Use this action when you need to fetch all pages belonging to a specific funnel in GoHighLevel, such as to display funnel page information, manage funnel content, or retrieve page details for a marketing funnel. This is a read-only action that retrieves existing funnel pages without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_FUNNELS_PAGE_COUNT", "name": "Get Funnels Page Count", "description": "Retrieves the count of funnel pages based on the given query parameters. Use this action when you need to get the number of pages in a specific funnel in GoHighLevel, such as to determine pagination requirements or to display page counts in a UI. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_GROUPS", "name": "Get Groups", "description": "Retrieves the list of calendar groups for a specific GoHighLevel sub-account (location). Use this action to fetch and explore calendar group information, such as group name, description, slug, and active status. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_INVOICE_SETTINGS", "name": "Get Invoice Settings", "description": "Retrieves invoice settings for a specific location in GoHighLevel. Use this action when you need to fetch the invoice configuration for a location, such as to display invoice templates, check default terms, or verify tax settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_INVOICES_SCHEDULE", "name": "Get Invoice Schedules", "description": "Retrieves a list of invoice schedules for a location or company. Use this action when you need to fetch all invoice schedules from GoHighLevel, such as to list recurring billing schedules, view scheduled payment plans, or filter schedules by status, date range, or other criteria. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_LINK_BY_ID", "name": "Get Link By Id", "description": "Retrieves a single trigger link from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the details of a link, including its name, redirect URL, and field key. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_LINKS", "name": "Get Links", "description": "Retrieves all trigger links for a specific GoHighLevel sub-account (location). Use this action to fetch the list of links, including their names, redirect targets, and field keys. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_LIST_INVENTORY", "name": "Get List Inventory", "description": "Retrieves a paginated list of inventory items for a specific location. Use this action to fetch inventory data such as available quantities, SKUs, and product associations from GoHighLevel. Supports filtering by search query and pagination using limit and offset parameters. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_LOCATION", "name": "Get Location", "description": "Retrieves a single sub-account (location) from GoHighLevel by its unique identifier. Use this action to fetch the full details of a location, including its name, address, contact information, and timezone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_LOST_REASON", "name": "Get Lost Reason", "description": "Retrieves the list of opportunity lost reasons configured for a GoHighLevel sub-account. Use this action to fetch and filter lost reasons by name or search query, with support for pagination and optionally including deleted reasons and a total count. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_MEDIAS_FILES", "name": "List Media Files", "description": "Fetches a list of files and folders from the media storage for a location. Use this action when you need to retrieve the contents of the media library, browse folders, or search for specific files. The results can be filtered by type (file/folder), sorted by various fields, and paginated using offset and limit. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_MESSAGE", "name": "Get Message", "description": "Retrieves a single message from a GoHighLevel conversation by its unique identifier. Use this action to fetch the full details of a message, including its body, type, direction, status, and attachments. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_NOTE", "name": "Get Note", "description": "Retrieves a single note for a specific contact in a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a note, including its body, title, and metadata. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_OBJECT_BY_LOCATION_ID", "name": "Get Object By Location Id", "description": "Retrieves the list of custom and standard object schemas for a specific GoHighLevel sub-account (location). Use this action to discover the available objects, their keys, labels, and metadata configured for a location. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_OBJECT_SCHEMA", "name": "Get Object Schema", "description": "Retrieves the schema definition for an object by its key or ID in GoHighLevel. Use this action when you need to fetch the field structure and metadata for objects such as contacts, opportunities, businesses, or custom objects. This is a read-only operation that returns the schema definition including all field properties like data types, labels, and constraints. Required headers (handled automatically): Version: 2021-07-28 Supported object keys: contact, opportunity, business, and custom object keys." }, { "slug": "HIGHLEVEL_GET_OBJECTS_RECORDS", "name": "Get Object Record By Id", "description": "Retrieves a Standard Object (like business) or Custom Object record by its ID. Use this action when you need to fetch a specific record from the HighLevel objects system by providing the schema key and record ID. This is a read-only action that retrieves record data without making any modifications. Supported objects include business objects and custom objects. For custom objects, include the 'custom_objects.' prefix in the schemaKey parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_OPPORTUNITY", "name": "Get Opportunity", "description": "Retrieves a single opportunity from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of an opportunity, including its name, monetary value, pipeline, stage, status, and associated contact. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PIPELINES", "name": "Get Pipelines", "description": "Retrieves all opportunity pipelines associated with a GoHighLevel location. Use this action when you need to list all sales/opportunity pipelines available in a GoHighLevel location, including their stages, display settings, and probability configurations. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_POSTS", "name": "Get Posts", "description": "Retrieves a list of social media posts for a specific location. Use this action when you need to fetch social media posts from GoHighLevel, such as to review scheduled content, monitor published posts, check failed posts, or manage social media content across different platforms. This is a read-only action that retrieves existing posts without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRICE_BY_ID_FOR_PRODUCT", "name": "Get Price By Id For Product", "description": "Retrieves a single price for a specific product in a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a product price, including its amount, currency, type, and inventory settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCT_BY_ID", "name": "Get Product By Id", "description": "Retrieves a single product from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a product, including its name, type, variants, taxes, and label information. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCT_COLLECTION_ID", "name": "Get Product Collection Id", "description": "Retrieves a single product collection from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a product collection. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCT_REVIEWS", "name": "Get Product Reviews", "description": "Retrieves a paginated list of product reviews for a specific sub-account (location) in GoHighLevel. Use this action to fetch and explore product reviews, optionally filtered by product, store, rating, or date range, and sorted by creation date or rating. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCTS", "name": "List Products", "description": "Retrieves a paginated list of products for a specific location. Use this action when you need to fetch and explore product information from GoHighLevel, such as to display a product catalog, search for specific products by name, or paginate through available products. Supports filtering by product name, category (collection), store, and various product attributes. Also supports pagination using limit and offset parameters for efficient data retrieval. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCTS_PRICE", "name": "List Product Prices", "description": "Lists all prices associated with a specific product in the HighLevel system. Use this action when you need to retrieve pricing information for a product, including both one-time and recurring prices, with optional filtering by price IDs and pagination support for large result sets. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_PRODUCT_STORE_STATS", "name": "Get Product Store Stats", "description": "Retrieves product statistics for a specific store in a GoHighLevel sub-account, including the total number of products, the number included in the store, and the number excluded from the store. Supports filtering by search term and collection ids. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_RECURRING_TASK_BY_ID", "name": "Get Recurring Task By Id", "description": "Retrieves a single recurring task from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a recurring task, including its title, description, recurrence rule, and assignment. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_RELATIONS_BY_RECORD_ID", "name": "Get Relations By Record Id", "description": "Retrieves all relations for a specific record by its ID. Use this action when you need to find or list all relations associated with a specific record, such as contacts, custom objects, or opportunities. This is a read-only action that returns existing relations without making any modifications. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_REVIEWS_COUNT", "name": "Get Reviews Count", "description": "Retrieves the count of reviews for a specific location in GoHighLevel, optionally filtered by rating, date range, product, or store. Use this action to obtain aggregated review status counts for reporting and analytics. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_SCHEDULE_BY_ID", "name": "Get Schedule By Id", "description": "Retrieves a single calendar schedule from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a schedule, including its availability rules, timezone, and linked calendars. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_SLOTS", "name": "Get Slots", "description": "Retrieves the available free time slots for a specific GoHighLevel calendar within a given date range. Use this action to determine when appointments can be booked, optionally filtered by timezone and by specific user(s). The response is a mapping keyed by date, where each entry contains the list of free slot timestamps for that date. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_GET_STORE_STORE_SETTING", "name": "Get Store Settings", "description": "Retrieves store settings for a specific location or agency. Use this action when you need to fetch the store configuration and settings for a GoHighLevel location, such as shipping origins, order notifications, and fulfillment settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_TAG", "name": "Get Tag", "description": "Retrieves a single tag from a GoHighLevel sub-account by its unique identifier. Use this action to fetch the details of a tag, including its name and the location it belongs to. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_TASK", "name": "Get Task", "description": "Retrieves a single task for a specific contact in a GoHighLevel sub-account by its unique identifier. Use this action to fetch the full details of a task, including its title, body, assignee, due date, and completion status. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_TIMEZONES", "name": "Get Timezones", "description": "Retrieves all available timezones for a GoHighLevel location. Use this action when you need to fetch the list of supported timezones, such as to display timezone options in scheduling interfaces or configure location-specific time settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_GET_USER_BY_LOCATION", "name": "Get User By Location", "description": "Retrieves all users associated with a specific location in GoHighLevel. Use this action when you need to fetch the list of users belonging to a location, such as to view team members, check user details, or enumerate available users for task assignments. This is a read-only action that retrieves existing users without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_INITIATE_FILE_UPLOAD", "name": "Initiate File Upload", "description": "Initiates a direct file upload for a GoHighLevel conversation message by requesting a signed GCS upload URL. Use the returned uploadUrl to PUT the file content, then complete the upload via the confirmation endpoint. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_LIST_AGENT_STUDIO_AGENT", "name": "List Agent Studio Agents", "description": "Lists all active agents for the specified location in Agent Studio. Use this action when you need to retrieve all agents available for a location in GoHighLevel's Agent Studio. The locationId parameter is required to ensure optimal performance. Supports pagination using limit and offset parameters. Optionally filter by isPublished=true to return only agents with a published production version. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LIST_BRAND_BOARDS_VOICES", "name": "List Brand Voices", "description": "Retrieves all brand voices for a specific location in GoHighLevel. Use this action when you need to fetch all brand voices associated with a location, including their names, descriptions, and sample content that represent the brand's tone. This is a read-only action that retrieves existing brand voices without modification." }, { "slug": "HIGHLEVEL_LIST_EVENT_NOTIFICATIONS", "name": "List Event Notifications", "description": "Retrieves the event notifications configured for a specific GoHighLevel calendar. Use this action to list how and when notifications are sent for calendar events, optionally filtering by active or deleted status and paginating the results. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_LIST_FUNNELS_FUNNEL", "name": "List Funnels Funnel", "description": "Retrieves a list of all funnels based on the given query parameters. Use this action when you need to fetch all funnels available in a GoHighLevel location, such as to display funnel information, manage funnel content, or retrieve funnel details for marketing campaigns. This is a read-only action that retrieves existing funnels without modification. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LIST_PAYMENTS_COUPON", "name": "List Coupons", "description": "Retrieves a list of all coupons available in a GoHighLevel location. Use this action when you need to view all promotional offers and special discounts available in a GoHighLevel location. Supports filtering by status (scheduled, active, expired) and searching by coupon name or code. Use pagination parameters to retrieve large result sets. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LIST_PRODUCT_COLLECTIONS", "name": "List Product Collections", "description": "Retrieves a paginated list of product collections for a specific location (sub-account) in GoHighLevel. Use this action to browse or filter product collections by name or by specific collection ids. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LIST_TAGS", "name": "List Tags", "description": "Retrieves the list of tags defined in a GoHighLevel sub-account (location). Use this action to fetch all tags available for a given location, including each tag's id, name, and location identifier. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LOCATIONS_CREATE_CUSTOM_FIELD", "name": "Locations Create Custom Field", "description": "Creates a new custom field within a GoHighLevel sub-account (location). Use this action to define a custom field for contacts or opportunities, specifying its name, data type, and other display options. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LOCATIONS_DELETE_CUSTOM_FIELD", "name": "Locations Delete Custom Field", "description": "Deletes a custom field from a GoHighLevel location (sub-account). Use this action to permanently remove a custom field identified by its id within the specified locationId. This operation is destructive and cannot be undone. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_LOCATIONS_UPDATE_CUSTOM_FIELD", "name": "Locations Update Custom Field", "description": "Updates an existing custom field in a GoHighLevel sub-account (location). Use this action to modify a custom field's name, placeholder, position, accepted formats, and other attributes. The locationId and id together identify the custom field to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_PUT_LOCATION", "name": "Put Location", "description": "Updates an existing sub-account/location in GoHighLevel. Use this action to modify a location's business details, settings, social links, and integration credentials. The locationId identifies the location to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_REMOVE_CONTACT_FROM_EVERY_CAMPAIGN", "name": "Remove Contact From Every Campaign", "description": "Removes a contact from all campaigns they are enrolled in. Use this action when you need to unenroll a contact from all marketing campaigns in GoHighLevel. This action is irreversible — the contact will be removed from all campaigns and would need to be re-enrolled manually if needed. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_REMOVE_CONTACT_TAGS", "name": "Remove Contact Tags", "description": "Removes one or more tags from a contact in a GoHighLevel sub-account. Use this action to detach existing tags from a contact identified by its contactId. The tags to remove are provided in the request body. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_REMOVE_FOLLOWERS_CONTACT", "name": "Remove Followers Contact", "description": "Removes one or more followers from a contact in a GoHighLevel sub-account. Provide the contactId and a list of follower user IDs to remove. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_REMOVE_FOLLOWERS_OPPORTUNITY", "name": "Remove Followers Opportunity", "description": "Removes one or more followers from an existing opportunity in a GoHighLevel sub-account. Provide the opportunity id and the list of follower user IDs to remove, or set isRemoveAllFollowers to true to remove all followers. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Searches for contacts in a GoHighLevel sub-account using advanced filters, sorting, and pagination. Use this action to find contacts matching specific criteria within a location. The locationId is required and identifies the sub-account to search. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_CONVERSATION_AI_AGENTS", "name": "Search Conversation AI Agents", "description": "Searches for AI agents based on various criteria including name, status, and configuration. Use this action when you need to find conversation AI agents in GoHighLevel with support for advanced filtering and full-text search capabilities. Supports full-text search across agent names and descriptions. The target location is derived from the authenticated token. Results can be capped with the limit parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_CONVERSATIONS", "name": "Search Conversations", "description": "Returns a list of all conversations matching the search criteria along with the sort and filter options selected. Use this action when you need to search and retrieve conversations from GoHighLevel with various filtering options such as status, assigned user, contact, message type, direction, and more. Required headers (handled automatically): Version: 2021-04-15 At least `locationId` is required to perform the search. Additional filters can narrow down results based on assigned users, followers, mentions, contact details, message characteristics, and conversation status." }, { "slug": "HIGHLEVEL_SEARCH_DUPLICATE_CONTACT", "name": "Search Duplicate Contact", "description": "Searches for duplicate contacts in a GoHighLevel location. Use this action when you need to find contacts that may already exist in the system before creating a new contact. If `Allow Duplicate Contact` is disabled under Settings, the global unique identifier will be used for searching the contact. If the setting is enabled, first priority for search is `email` and the second priority will be `phone`. At least one of `email` or `number` should be provided for the search to return meaningful results. If neither is provided, an empty list may be returned. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_LINKS", "name": "Search Links", "description": "Searches for trigger links within a GoHighLevel location. Use this action when you need to find or retrieve a list of trigger links based on search criteria. The search supports filtering by a query string and pagination via skip/limit parameters. Results are scoped to the specified location ID. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_SEARCH_LOCATIONS", "name": "Search Locations", "description": "Searches for sub-accounts (locations) within a GoHighLevel agency. Use this action to look up locations belonging to a company, optionally filtering by email and paginating through the results using skip and limit. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_OBJECT_RECORDS", "name": "Search Object Records", "description": "Searches records of a custom object in a GoHighLevel sub-account. Use this action to find records of a given object schema by querying its searchable properties. The schemaKey identifies the object, locationId identifies the sub-account, and query drives the search. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_OPPORTUNITIES", "name": "Search Opportunities", "description": "Searches for opportunities within a GoHighLevel sub-account. Use this action to find and filter opportunities by pipeline, stage, contact, assigned user, status, date, and more. The location_id is required and identifies the sub-account to search. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_OPPORTUNITIES_ADVANCED", "name": "Search Opportunities Advanced", "description": "Performs an advanced search for opportunities within a GoHighLevel sub-account. Use this action to query opportunities with pagination and optionally include related entities such as notes, tasks, calendar events, and unread conversations for each result. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEARCH_USERS", "name": "Search Users", "description": "Searches users in a HighLevel company and location. Use this action to harvest user IDs for assignment, follower, schedule, and calendar-resource workflows. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_SEND_MESSAGE", "name": "Send Message", "description": "Sends a message to a contact in a GoHighLevel sub-account across a channel (SMS, RCS, Email, WhatsApp, Instagram, or Facebook). Use this action to deliver outbound messages, schedule them, or reply within an existing conversation thread. The message type and contactId are required. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_SET_DEFAULT_BRAND_VOICE", "name": "Set Default Brand Voice", "description": "Sets a brand voice as the default for a location. Use this action when you need to designate a specific brand voice as the default for a location, which automatically unsets the previous default brand voice. This action is idempotent - setting the same brand voice as default multiple times will return a successful response." }, { "slug": "HIGHLEVEL_TASK_SEARCH", "name": "Task Search", "description": "Searches tasks within a GoHighLevel sub-account (location). Use this action to find tasks filtered by contact, assigned user, completion status, a free-text query, or business, with pagination support via limit and skip. The locationId is required and identifies the sub-account to search within. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_ASSOCIATIONS", "name": "Update Association", "description": "Updates the labels of an association by its ID. This action allows you to modify the firstObjectLabel and secondObjectLabel of an existing association. Use this action when you need to update the label configuration of an existing association in a specific location/sub-account. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_BUSINESS", "name": "Update Business", "description": "Updates an existing business with the provided information. Use this action when you need to modify details of an existing business entity within the HighLevel system. All fields except business_id are optional. Only provide the fields you want to update; omitted fields will retain their current values. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_CALENDAR", "name": "Update Calendar", "description": "Updates an existing calendar by its unique identifier. Use this action when you need to modify the settings, availability, team member assignments, or other configurations of an existing GoHighLevel booking calendar. Only include the fields you want to change — all fields except calendarId are optional. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_UPDATE_CALENDAR_SCHEDULE", "name": "Update Calendar Schedule", "description": "Updates an existing calendar's availability schedule. Use this action when you need to modify the availability rules, open hours, recurring settings, or buffer times for a GoHighLevel calendar. All fields are optional—only provided fields will be updated. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_UPDATE_CALENDARS_SCHEDULES_EVENT_CALENDAR", "name": "Update Event Calendar Schedule", "description": "Updates the availability schedule for a specific event calendar. Use this action when you need to modify the availability schedule configuration for an event calendar in GoHighLevel, including timezone settings and availability rules. Only the fields provided in the request body will be modified; unspecified fields retain their current values. Required headers (handled automatically): Version: 2021-07-28, Content-Type: application/json" }, { "slug": "HIGHLEVEL_UPDATE_CONTACT", "name": "Update Contact", "description": "Updates an existing contact in a GoHighLevel sub-account. Use this action to modify a contact's name, contact details, tags, and custom fields. The contactId identifies the contact to update; only the fields you provide are changed. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_CONTACT_TASK", "name": "Update Contact Task", "description": "Updates a task associated with a contact in GoHighLevel. Use this action to modify an existing task's title, body, due date, completion status, or assignee. Both the contactId and taskId identify the task to update. Required headers (handled automatically): Version: 2021-07-28, Content-Type: application/json" }, { "slug": "HIGHLEVEL_UPDATE_CONVERSATIONS", "name": "Update Conversation", "description": "Updates the conversation details based on the conversation ID. Use this action when you need to modify properties of an existing conversation, such as marking it as starred or updating the unread count. This action requires a valid conversation_id and location_id. Note that some field updates may be irreversible depending on the conversation state." }, { "slug": "HIGHLEVEL_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Updates an existing custom field in a GoHighLevel location. Use this action to modify a custom field's name, description, placeholder, options, and display settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_CUSTOM_FIELD_FOLDER", "name": "Update Custom Field Folder", "description": "Updates an existing custom field folder in a GoHighLevel sub-account. The id identifies the folder to update; provide the folder name and location id. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_CUSTOM_OBJECT", "name": "Update Custom Object", "description": "Updates an existing custom object schema in a GoHighLevel sub-account. Use this action to modify the object's labels, description, and searchable properties. The key identifies the custom object schema to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_CUSTOM_VALUE", "name": "Update Custom Value", "description": "Updates an existing custom value within a GoHighLevel sub-account (location). Provide the locationId and the custom value id to identify the record, along with the new name and value. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_DISPLAY_PRIORITY", "name": "Update Display Priority", "description": "Updates the display priority (ordering) of products within a GoHighLevel store. Provide the storeId along with the location context and the list of products with their display priorities. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_EMAILS_TEMPLATES", "name": "Update Email Template", "description": "Updates an existing email template for the specified location. Use this action when you need to modify an email template's name, subject, content, or other properties. All request body fields are optional - only include the fields you want to update. The template will be associated with the specified location and template ID. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_INVENTORY", "name": "Update Inventory", "description": "Updates the inventory for one or more prices in a GoHighLevel sub-account. Provide the altId/altType identifying the location and a list of items, each referencing a priceId along with its available quantity and out-of-stock purchase settings. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_LINK", "name": "Update Link", "description": "Updates an existing trigger link in a GoHighLevel sub-account. Use this action to change the link's name or redirect destination. The linkId identifies the link to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_MEDIAS_DELETE_FILES", "name": "Bulk Delete Media Files", "description": "Bulk soft-deletes or trashes multiple files and folders in a single request. Use this action when you need to efficiently remove multiple media items at once by setting their status to either 'deleted' or 'trashed'. This operation affects only the specified files and does not permanently remove them from the system. This action is irreversible — files that are deleted or trashed cannot be recovered through this action. Consider using this for batch cleanup operations where you need to remove multiple media files from the HighLevel media library. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_MEDIAS_UPDATE_FILES", "name": "Bulk Update Media Files", "description": "Updates metadata or status of multiple files and folders in bulk. Use this action when you need to rename multiple media files or folders in a single request. This action requires the location ID (altId), the entity type (altType), and an array of file objects containing their IDs and optional new names. Note: This is an update (not create) operation — only the name field can be modified; other metadata retains its current values. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_NOTE", "name": "Update Note", "description": "Updates an existing note attached to a contact in a GoHighLevel sub-account. Use this action to modify the note's body, title, color, or pinned status. The contactId and id identify the note to update; only the fields you provide are changed. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_OBJECT_RECORD", "name": "Update Object Record", "description": "Updates an existing record of a custom object (or standard object) in a GoHighLevel sub-account. Identify the record by its schemaKey and id, and provide the locationId of the owning sub-account along with the fields to change. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_OPPORTUNITY", "name": "Update Opportunity", "description": "Updates an existing opportunity in a GoHighLevel sub-account. Use this action to modify an opportunity's name, pipeline, stage, status, monetary value, assignee, and custom fields. The opportunityId identifies the opportunity to update; only the fields you provide are changed. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_OPPORTUNITY_STATUS", "name": "Update Opportunity Status", "description": "Updates the status of an existing opportunity in a GoHighLevel sub-account. Use this action to move an opportunity to open, won, lost, or abandoned. The opportunityId identifies the opportunity to update; a lostReasonId may be supplied when marking an opportunity as lost. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_PRICE_BY_ID_FOR_PRODUCT", "name": "Update Price By Id For Product", "description": "Updates an existing price for a product in a GoHighLevel sub-account. Use this action to modify a price's name, type, currency, amount, recurring details, inventory settings, and other attributes. The productId and priceId identify the price to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_PRODUCT_BY_ID", "name": "Update Product By Id", "description": "Updates an existing product in a GoHighLevel sub-account by its productId. Use this action to modify a product's name, type, description, media, variants, pricing references, taxes, and other attributes. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_PRODUCT_COLLECTION", "name": "Update Product Collection", "description": "Updates an existing product collection in a GoHighLevel sub-account. The collectionId identifies the collection to update; only the fields you provide are changed. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_PRODUCTS_REVIEWS", "name": "Update Product Review", "description": "Updates the status, reply, and other details of a product review. Use this action when you need to moderate, respond to, or modify an existing product review in the HighLevel system. This action allows updating the review status (approved/pending/rejected), adding a reply, or modifying the review headline, detail, and rating. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_RECURRING_TASK", "name": "Update Recurring Task", "description": "Updates an existing recurring task for a GoHighLevel sub-account (location). Use this action to modify a recurring task's title, description, assigned contacts/owners, and recurrence rules. The locationId and id identify the task to update. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_STORE_STATUS", "name": "Update Store Status", "description": "Includes or excludes products from a GoHighLevel store. Provide the storeId along with the action ('include' or 'exclude') and the list of product IDs to update their association with the store. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_TAG", "name": "Update Tag", "description": "Updates an existing tag for the specified location. Use this action when you need to modify a tag's name within a location in GoHighLevel. The tag will be updated in the location identified by the location_id parameter. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPDATE_TASK_COMPLETED", "name": "Update Task Completed", "description": "Updates the completed status of a task associated with a contact. Use this action when you need to mark a task as completed or uncompleted for a specific contact in GoHighLevel. This action modifies the completion status of an existing task identified by its ID. Required headers (handled automatically): Version: 2021-07-28, Content-Type: application/json" }, { "slug": "HIGHLEVEL_UPDATE_TEMPLATE", "name": "Update Template", "description": "Updates an existing email builder template in a GoHighLevel sub-account. Supply the template's drag-and-drop builder data, HTML content, and editor type to modify it. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPLOAD_FILE_ATTACHMENTS", "name": "Upload File Attachments", "description": "Uploads file attachments to a GoHighLevel conversation. Provide the conversationId, contactId, locationId, and a list of attachmentUrls to upload. Optionally supports group SMS uploads via chatServiceSid and isGroupSms. Required headers (handled automatically): Version: 2021-04-15" }, { "slug": "HIGHLEVEL_UPLOAD_FILE_CUSTOM_FIELDS", "name": "Upload File to Custom Fields", "description": "Upload files to custom fields. Use when you need to attach files to contacts, opportunities, or custom object records via custom field file upload functionality. The 'id' parameter should be the ID of the Contact, Opportunity, or Custom Field that the file should be associated with. The actual file field within the custom field configuration will be updated with the uploaded file URL. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPLOAD_MEDIA_FILE", "name": "Upload Media File", "description": "Upload a file to the Highlevel Media Library. Use when you need to upload documents, images, or videos to store them in the media library for use in campaigns and other features. If hosted is true, fileUrl is required. Otherwise, file is required. Maximum file size: 25 MB for regular files, 500 MB for video files." }, { "slug": "HIGHLEVEL_UPSERT_CONTACT", "name": "Upsert Contact", "description": "Creates or updates a contact in a GoHighLevel sub-account. If a duplicate contact is found (based on the location's duplicate settings), it is updated; otherwise a new contact is created. The locationId is required and identifies the sub-account. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_UPSERT_OPPORTUNITY", "name": "Upsert Opportunity", "description": "Creates or updates an opportunity in a GoHighLevel sub-account. If an opportunity id is provided, the existing opportunity is updated; otherwise a new opportunity is created. The pipelineId and locationId are required. Required headers (handled automatically): Version: 2021-07-28" }, { "slug": "HIGHLEVEL_VALIDATE_GROUPS_SLUG", "name": "Validate Groups Slug", "description": "Validates whether a calendar group slug is available within a GoHighLevel sub-account (location). Use this action before creating or updating a calendar group to confirm the desired slug is not already in use. Required headers (handled automatically): Version: 2021-04-15" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "highlevel_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "agent-studio/agent.delete,agent-studio/agent.readonly,associations.readonly,associations.write,associations/relation.readonly,associations/relation.write,blogs/list.readonly,brand-boards/design-kit.readonly,brandboards.write,businesses.write,calendars.readonly,calendars.write,calendars/events.readonly,calendars/events.write,charges.readonly,contacts.readonly,contacts.write,conversation-ai.readonly,conversations.readonly,conversations.write,conversations/message.readonly,conversations/message.write,emails/builder.readonly,emails/builder.write,invoices/estimate.readonly,invoices/estimate.write,invoices/schedule.readonly,invoices/schedule.write,knowledgebases/crawler.write,knowledgebases/faqs.write,knowledgebases/write,links.readonly,links.write,locations.readonly,locations/brandVoices.read,locations/brandVoices.write,locations/customFields.write,locations/customValues.readonly,locations/emailCampaigns.readonly,locations/emailTemplates.readonly,locations/emailTemplates.write,locations/invoicesSettings.readonly,locations/tags.write,medias.readonly,medias.write,objects.readonly,objects.write,objects/schema.readonly,opportunities.readonly,payments/coupons.readonly,products.readonly,products.write,products/prices.readonly,proposals/templates.readonly,socialplanner/post.readonly,store/shipping-zones.delete,users.readonly,voice-ai-agents.write" } ] }, "connected_account_initiation": { "required": [ { "name": "user_type", "displayName": "Token Type", "type": "string", "description": "Type of access token to request from HighLevel: 'Location' for a single sub-account (recommended — required by most actions) or 'Company' for an agency-level token.", "required": true, "default": "Location" } ], "optional": [] } } } ] }, { "slug": "axonaut", "name": "Axonaut", "logo": "https://logos.composio.dev/api/axonaut", "description": "Axonaut is an integrated business management platform combining finance, invoicing, and CRM, enabling SMEs to handle accounting, client relations, and administrative tasks in one environment", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "axonaut_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Secret", "type": "string", "description": "Your Axonaut API secret for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eventbrite", "name": "Eventbrite", "logo": "https://logos.composio.dev/api/eventbrite", "description": "Eventbrite enables organizers to plan, promote, and manage events, selling tickets and providing attendee tools for conferences, concerts, and gatherings", "category": "event management", "authSchemes": [ "OAUTH2" ], "toolCount": 95, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVENTBRITE_ADD_TICKET_TO_GROUP", "name": "Add Ticket Class to Groups", "description": "Tool to add a ticket class to one or more explicitly specified ticket groups for an Eventbrite event. Use when you need to organize tickets by grouping them together. The caller must supply a non-empty list of ticket_group_ids; to discover available groups, call a list ticket groups action first." }, { "slug": "EVENTBRITE_ADD_TICKET_TO_GROUP_BY_ORGANIZATION", "name": "Add Ticket to Group by Organization", "description": "Tool to add a ticket class to ticket groups using organization and event IDs. Use when managing ticket groups at the organization level." }, { "slug": "EVENTBRITE_CALCULATE_PRICE_FOR_ITEM", "name": "Calculate Price For Item", "description": "Tool to calculate Eventbrite fees for a given ticket price. Use when you need to determine the exact fees, taxes, and organizer share for a specific price point before creating tickets." }, { "slug": "EVENTBRITE_CANCEL_EVENT", "name": "Cancel Event", "description": "Tool to cancel an Eventbrite event. Use when you need to cancel an event. Note: Event must not have any pending or completed orders or the cancellation will fail." }, { "slug": "EVENTBRITE_COPY_EVENT", "name": "Copy Event", "description": "Tool to copy an Eventbrite event and create a duplicate with a new Event ID. Use when you need to duplicate an existing event to create a similar event with the same settings." }, { "slug": "EVENTBRITE_CREATE_ACCESS_CODE", "name": "Create Access Code", "description": "Tool to create a new access code for an Eventbrite event. Use when you need to create promotional codes, early bird access, or VIP ticket codes that unlock hidden ticket classes." }, { "slug": "EVENTBRITE_CREATE_CHECKOUT_SETTINGS", "name": "Create Checkout Settings", "description": "Tool to create checkout settings for an Eventbrite organization. Use when you need to configure payment methods, country, and currency for an organization's checkout process." }, { "slug": "EVENTBRITE_CREATE_CUSTOM_QUESTION", "name": "Create Custom Question", "description": "Tool to create a custom question for an Eventbrite event. Use when you need to collect additional information from attendees during registration (e.g., dietary preferences, T-shirt sizes, special requirements)." }, { "slug": "EVENTBRITE_CREATE_DISCOUNT", "name": "Create Discount", "description": "Tool to create a new discount for an Eventbrite organization. Use when you need to create promotional discounts, coupon codes, or special pricing for events." }, { "slug": "EVENTBRITE_CREATE_EVENT", "name": "Create Event", "description": "Tool to create a new Eventbrite event. Use when you need to create single events or series parent events for repeating events. By default creates a single occurrence event unless is_series is set to true." }, { "slug": "EVENTBRITE_CREATE_EVENT_SCHEDULE", "name": "Create Event Schedule", "description": "Tool to create an event schedule for a series parent event. Use when you need to add recurring occurrences to an event based on a recurrence pattern (daily, weekly, monthly, etc.). The schedule follows iCalendar RFC 5545 format." }, { "slug": "EVENTBRITE_CREATE_INVENTORY_TIER", "name": "Create Inventory Tier", "description": "Tool to create a new inventory tier for an Eventbrite event. Use when you need to set up tiered seating, pricing levels, or capacity allocation for an event." }, { "slug": "EVENTBRITE_CREATE_ORGANIZER", "name": "Create Organizer", "description": "Tool to create a new organizer for an Eventbrite organization. Use when you need to add an organizer profile that can be associated with events." }, { "slug": "EVENTBRITE_CREATE_TICKET_CLASS", "name": "Create Ticket Class", "description": "Tool to create a new ticket class for an Eventbrite event. Use when you need to add ticket types such as General Admission, VIP, Early Bird, or other pricing tiers to an event." }, { "slug": "EVENTBRITE_CREATE_TICKET_GROUP", "name": "Create Ticket Group", "description": "Tool to create a new ticket group for an Eventbrite organization. Use when you need to organize multiple ticket classes across events. Maximum 300 live ticket groups per organization." }, { "slug": "EVENTBRITE_CREATE_TRACKING_BEACON", "name": "Create Tracking Beacon", "description": "Tool to create a tracking beacon for an Eventbrite event or user. Use when you need to add analytics pixels (Google Analytics, Facebook Pixel, etc.) to track attendee behavior on event pages or order confirmation pages. Either event_id or user_id must be provided." }, { "slug": "EVENTBRITE_CREATE_VENUE", "name": "Create Venue", "description": "Tool to create a new venue under an organization in Eventbrite. Use when you need to add a physical location that can be reused across multiple events within the same organization." }, { "slug": "EVENTBRITE_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for an Eventbrite organization. Use when you need to set up webhook notifications for events like order placement, event creation, or attendee check-ins." }, { "slug": "EVENTBRITE_DELETE_DEFAULT_QUESTION", "name": "Delete Default Question", "description": "Tool to deactivate a canned question for an event. Use when you need to remove default questions like cell_phone, job_title, company, or work_phone from event registration forms." }, { "slug": "EVENTBRITE_DELETE_DISCOUNT", "name": "Delete Discount", "description": "Tool to delete a discount from Eventbrite. Only unused discounts can be deleted. Use when you need to remove a discount that has not been applied to any orders." }, { "slug": "EVENTBRITE_DELETE_EVENT", "name": "Delete Event", "description": "Tool to delete an Eventbrite event. Use when you need to remove an event from the system. Note: Event must not have any pending or completed orders or the deletion will fail." }, { "slug": "EVENTBRITE_DELETE_INVENTORY_TIER", "name": "Delete Inventory Tier", "description": "Tool to mark an existing inventory tier as deleted for an Eventbrite event. Use when you need to remove an inventory tier that is no longer needed." }, { "slug": "EVENTBRITE_DELETE_TICKET_CLASS", "name": "Delete Ticket Class", "description": "Tool to delete a ticket class from an Eventbrite event by its ID. Use when you need to remove a ticket type/class that is no longer needed or was created in error." }, { "slug": "EVENTBRITE_DELETE_TICKET_GROUP", "name": "Delete Ticket Group", "description": "Tool to delete a ticket group by changing its status to deleted. Use when you need to remove a ticket group from an event." }, { "slug": "EVENTBRITE_GET_ACCESS_CODE", "name": "Get Access Code", "description": "Tool to retrieve a specific access code by ID for an Eventbrite event. Use when you need to check access code details, availability, or redemption status." }, { "slug": "EVENTBRITE_GET_ASSORTMENT", "name": "Get Organization Assortment", "description": "Tool to retrieve assortment information for a specific organization. Use when you need to check the plan type or version details associated with an organization." }, { "slug": "EVENTBRITE_GET_ATTENDEE_REPORT", "name": "Get Attendee Report", "description": "Tool to retrieve an attendee report for events in an Eventbrite organization. Use when you need aggregated attendee data, sales statistics, or demographic information across events. Supports filtering by event status, date ranges, and grouping by various dimensions." }, { "slug": "EVENTBRITE_GET_CAPACITY_TIER", "name": "Get Capacity Tier", "description": "Tool to retrieve the capacity tier for an Eventbrite event. Use when you need to check ticket availability, sales status, or capacity information for an event." }, { "slug": "EVENTBRITE_GET_CATEGORY", "name": "Get Category by ID", "description": "Tool to retrieve a specific category by ID. Use when fetching details about a particular event category. Returns category information including name, localized names, and subcategories." }, { "slug": "EVENTBRITE_GET_CHECKOUT_SETTINGS", "name": "Get Checkout Settings", "description": "Tool to retrieve checkout settings for a specific Eventbrite organization. Use when you need to view or verify payment configuration and checkout methods for an organization." }, { "slug": "EVENTBRITE_GET_DEFAULT_QUESTION", "name": "Get Default Question", "description": "Tool to retrieve a specific default (canned) question for an Eventbrite event by Event ID and Question ID. Use when you need to get details about a specific attendee information field." }, { "slug": "EVENTBRITE_GET_DISCOUNT", "name": "Get Discount", "description": "Tool to retrieve a discount by its ID from Eventbrite. Use when you need to check discount details, verify discount codes, or inspect discount configurations." }, { "slug": "EVENTBRITE_GET_DISPLAY_SETTINGS", "name": "Get Display Settings", "description": "Tool to retrieve display settings for a specific Eventbrite event. Use when you need to view what information is shown on an event page." }, { "slug": "EVENTBRITE_GET_EVENT", "name": "Get Event", "description": "Tool to retrieve detailed information for a specific Eventbrite event by ID. Use when you need event details like name, description, dates, venue, organizer, or ticket information. Supports expanding related objects via the expand parameter." }, { "slug": "EVENTBRITE_GET_EVENT_CATEGORIES", "name": "Get Event Categories", "description": "Tool to retrieve event categories. Use when selecting a category for an event. Localizes results via optional locale parameter." }, { "slug": "EVENTBRITE_GET_EVENT_DESCRIPTION", "name": "Get Event Description", "description": "Tool to retrieve the full HTML description for an Eventbrite event. Use when you need the complete event description content (formatted as HTML)." }, { "slug": "EVENTBRITE_GET_EVENT_FORMATS", "name": "Get Event Formats", "description": "Tool to list event formats. Use when you need the available formats before creating or updating an event." }, { "slug": "EVENTBRITE_GET_EVENT_SUBCATEGORIES", "name": "Get Event Subcategories", "description": "Tool to list all event subcategories. Use when fetching available subcategory options, optionally filtered by locale after selecting a category." }, { "slug": "EVENTBRITE_GET_FORMAT", "name": "Get Format", "description": "Tool to retrieve a format by format ID. Use when you need detailed information about a specific event format." }, { "slug": "EVENTBRITE_GET_INVENTORY_TIER", "name": "Get Inventory Tier", "description": "Tool to retrieve an Inventory Tier by ID for an Event. Use when you need to check inventory tier details, capacity, or ticket class associations for a specific event." }, { "slug": "EVENTBRITE_GET_ME", "name": "Get Current User", "description": "Tool to retrieve the authenticated user's account information. Use when you need to get details about the current user." }, { "slug": "EVENTBRITE_GET_MEDIA_UPLOAD", "name": "Get Media Upload", "description": "Tool to retrieve information on a Media image upload. Use when you need to check the status or details of an uploaded media image for events, organizers, or user profiles." }, { "slug": "EVENTBRITE_GET_ORGANIZER", "name": "Get Organizer by ID", "description": "Tool to retrieve an organizer by organizer ID from Eventbrite. Use when you need detailed information about a specific event organizer." }, { "slug": "EVENTBRITE_GET_SALES_REPORT", "name": "Get Sales Report", "description": "Tool to retrieve a sales report by Event ID or Event status for an organization. Use when you need detailed sales data including gross revenue, net revenue, quantity sold, fees, and royalties. Supports filtering by event status and grouping by various dimensions." }, { "slug": "EVENTBRITE_GET_SERIES", "name": "Get Event Series", "description": "Tool to retrieve a parent Event Series by Event Series ID. Use when fetching details about a specific event series, including series-specific fields like is_series and is_series_parent." }, { "slug": "EVENTBRITE_GET_STRUCTURED_CONTENT", "name": "Get Structured Content", "description": "Tool to retrieve structured content for an Eventbrite event. Returns the latest published version of the event's structured content including modules, widgets, and page metadata." }, { "slug": "EVENTBRITE_GET_STRUCTURED_CONTENT_EDIT", "name": "Get Structured Content Edit Version", "description": "Tool to retrieve the latest working version of structured content for an event. Use when accessing the editable version of an event's structured content layout." }, { "slug": "EVENTBRITE_GET_SUBCATEGORY", "name": "Get Subcategory by ID", "description": "Tool to retrieve a specific subcategory by ID. Use when fetching details about a particular event subcategory. Returns subcategory information including name, localized names, and parent category details." }, { "slug": "EVENTBRITE_GET_TICKET_CLASS", "name": "Get Ticket Class", "description": "Tool to retrieve a specific ticket class by ID for an Eventbrite event. Use when you need to check ticket pricing, availability, sales status, or configuration details." }, { "slug": "EVENTBRITE_GET_TICKET_GROUP", "name": "Get Ticket Group", "description": "Tool to retrieve a ticket group by its ID from Eventbrite. Use when you need to check ticket group details, configuration, or associated event ticket mappings." }, { "slug": "EVENTBRITE_GET_TRACKING_BEACON", "name": "Get Tracking Beacon", "description": "Tool to retrieve a tracking beacon by ID from Eventbrite. Use when you need to inspect tracking pixel configuration, verify beacon setup, or check which events or organizations are associated with a tracking beacon." }, { "slug": "EVENTBRITE_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve information about a user by user ID. Use 'me' as the user_id to get the currently authenticated user's details." }, { "slug": "EVENTBRITE_GET_VENUE", "name": "Get Venue by ID", "description": "Tool to retrieve detailed information for a specific venue by venue ID. Use when you need venue details like name, location coordinates, capacity, address, or age restrictions." }, { "slug": "EVENTBRITE_LIST_ACCESS_CODES", "name": "List Access Codes", "description": "Tool to retrieve all access codes for an Eventbrite event. Use when you need to view all available access codes, check their availability, or manage event access restrictions." }, { "slug": "EVENTBRITE_LIST_CUSTOM_QUESTIONS", "name": "List Custom Questions", "description": "Tool to retrieve custom questions configured for an Eventbrite event. Use when you need to see what additional information is collected from attendees during registration." }, { "slug": "EVENTBRITE_LIST_DEFAULT_QUESTIONS", "name": "List Default Questions", "description": "Tool to retrieve default (canned) questions for an Eventbrite event by Event ID. Use when you need to understand what attendee information is collected, customize registration forms, or sync form data with external systems." }, { "slug": "EVENTBRITE_LIST_EVENT_ATTENDEES", "name": "List Event Attendees", "description": "Tool to retrieve the list of attendees for an Eventbrite event. Use when you need to check attendee details, perform check-in operations, sync with CRM, or generate reports. Returns paginated results; use the continuation token for subsequent pages." }, { "slug": "EVENTBRITE_LIST_EVENT_ORDERS", "name": "List Event Orders", "description": "Tool to list orders for a specific Eventbrite event. Use when you need to retrieve order information, check order status, or access buyer details. Returns paginated results; use the continuation token for subsequent pages." }, { "slug": "EVENTBRITE_LIST_INVENTORY_TIERS", "name": "List Inventory Tiers", "description": "Tool to retrieve inventory tiers for an Eventbrite event. Use when you need to understand tiered seating, pricing levels, or capacity allocation for an event." }, { "slug": "EVENTBRITE_LIST_ORGANIZATION_EVENTS", "name": "List Organization Events", "description": "Tool to list events owned by a specific Eventbrite organization. Use for event discovery (finding target events by name/title/date) prior to attendee/order retrieval. Supports filtering by status, time period, pagination, and field expansion." }, { "slug": "EVENTBRITE_LIST_ORGANIZATION_MEMBERS", "name": "List Organization Members", "description": "Tool to list members of an Eventbrite organization by organization ID. Returns a paginated response with member information including user IDs and role summaries." }, { "slug": "EVENTBRITE_LIST_ORGANIZATION_ORDERS", "name": "List Organization Orders", "description": "Tool to list orders placed for events owned by a specific Eventbrite organization. Use when you need to retrieve order information, track sales, or analyze attendee data across all organization events. Supports filtering by email, status, and change date." }, { "slug": "EVENTBRITE_LIST_ORGANIZATION_ROLES", "name": "List Organization Roles", "description": "Tool to list roles within a specific Eventbrite organization by organization ID. Use when you need to discover available roles, permissions, or role management capabilities for an organization. Returns a paginated list of roles with their permissions and metadata." }, { "slug": "EVENTBRITE_LIST_ORGANIZATION_WEBHOOKS", "name": "List Organization Webhooks", "description": "Tool to list all webhooks configured for a specific Eventbrite organization. Use when you need to view existing webhook configurations or verify webhook endpoints." }, { "slug": "EVENTBRITE_LIST_ORG_ATTENDEES", "name": "List Organization Attendees", "description": "Tool to list attendees across all events owned by an Eventbrite organization. Use when you need to retrieve attendees for an entire organization rather than a specific event. Returns paginated results; use the continuation token for subsequent pages." }, { "slug": "EVENTBRITE_LIST_ORG_ORGANIZERS", "name": "List Organization Organizers", "description": "Tool to list organizers belonging to a specific Eventbrite organization. Use when you need to discover organizers for an organization before creating or managing events." }, { "slug": "EVENTBRITE_LIST_ORG_VENUES", "name": "List Organization Venues", "description": "Tool to list venues owned by a specific Eventbrite organization. Use when you need to discover available venues for event planning or venue management within an organization." }, { "slug": "EVENTBRITE_LIST_PRICING", "name": "List Pricing", "description": "Tool to list available pricing fee rates for a specific currency and country. Use when you need to retrieve Eventbrite's pricing structure and fee information." }, { "slug": "EVENTBRITE_LIST_SERIES_EVENTS", "name": "List Series Events", "description": "Tool to list all events in an Eventbrite event series by series ID. Use when you need to retrieve all occurrences of a recurring event. Returns paginated results with event details." }, { "slug": "EVENTBRITE_LIST_TICKET_CLASSES", "name": "List Ticket Classes", "description": "Tool to list ticket classes for a specific Eventbrite event by event ID. Use when you need to retrieve available ticket types, pricing information, and sales status for an event. Returns a paginated response with all ticket classes associated with the event." }, { "slug": "EVENTBRITE_LIST_TICKET_CLASSES_FOR_SALE", "name": "List Ticket Classes For Sale", "description": "Tool to list ticket classes available for sale for a specific Eventbrite event. Use this in the purchase flow to display available ticket options to users." }, { "slug": "EVENTBRITE_LIST_TICKET_GROUPS", "name": "List Organization Ticket Groups", "description": "Tool to list ticket groups for a specific Eventbrite organization. Use when you need to retrieve groupings of ticket types for an organization. Returns a paginated response." }, { "slug": "EVENTBRITE_LIST_TRACKING_BEACONS", "name": "List Tracking Beacons", "description": "Tool to list tracking beacons for an Eventbrite organization by organization ID. Use when you need to view tracking pixels and analytics beacons configured for the organization." }, { "slug": "EVENTBRITE_LIST_USER_ORDERS", "name": "List User Orders", "description": "Tool to list orders for a specific Eventbrite user. Use when you need to retrieve user order information or check order history. Returns all orders for the user with pagination metadata." }, { "slug": "EVENTBRITE_LIST_USER_ORGANIZATIONS", "name": "List User Organizations", "description": "Tool to list organizations the authenticated user belongs to. Use this early in workflows that need organization-scoped endpoints (e.g., list events by organization, list venues, orders, or attendees by organization)." }, { "slug": "EVENTBRITE_LIST_USER_ORGS", "name": "List Organizations by User ID", "description": "Tool to list organizations by user ID. Use when you need to fetch organizations for a specific user. Returns a paginated response with organization details." }, { "slug": "EVENTBRITE_LIST_VENUE_EVENTS", "name": "List Venue Events", "description": "Tool to list all events at a specific Eventbrite venue by venue ID. Use when you need to discover events at a particular location or venue." }, { "slug": "EVENTBRITE_PUBLISH_EVENT", "name": "Publish Event", "description": "Tool to publish an Eventbrite event. Use when you need to make an event live and publicly accessible. Event must have all required information including name, description, organizer, and at least one ticket before publishing." }, { "slug": "EVENTBRITE_RETRIEVE_MEDIA", "name": "Retrieve Media", "description": "Tool to retrieve media information by ID. Use when you need to fetch details about a specific media asset including URLs, dimensions, and metadata." }, { "slug": "EVENTBRITE_SEARCH_DISCOUNTS_BY_ORGANIZATION", "name": "Search Discounts by Organization", "description": "Tool to search and list discounts by organization ID. Use when you need to retrieve discount codes for a specific event within an organization. Returns paginated results with discount details." }, { "slug": "EVENTBRITE_SET_STRUCTURED_CONTENT", "name": "Set Structured Content", "description": "Tool to set structured content for an Eventbrite event by version. Encapsulates both create and update operations. Use when you need to define the content layout for an event listing page with modules and widgets." }, { "slug": "EVENTBRITE_UNPUBLISH_EVENT", "name": "Unpublish Event", "description": "Tool to unpublish an Eventbrite event. Use when you need to remove an event from public view while keeping it in the system. The event can be republished later if needed." }, { "slug": "EVENTBRITE_UPDATE_ACCESS_CODE", "name": "Update Access Code", "description": "Tool to update an existing access code for an Eventbrite event. Use when you need to modify access code details like the code string, ticket IDs, quantity, or validity dates." }, { "slug": "EVENTBRITE_UPDATE_ASSORTMENT", "name": "Update Organization Assortment", "description": "Tool to update the assortment plan for a specific organization. Use when you need to change the plan type associated with an organization." }, { "slug": "EVENTBRITE_UPDATE_CAPACITY_TIER", "name": "Update Capacity Tier", "description": "Tool to update the capacity tier for an Eventbrite event. Use when you need to modify the total capacity or other capacity tier settings for an event. Supports partial updates and GA capacity hold inventory tiers." }, { "slug": "EVENTBRITE_UPDATE_DEFAULT_QUESTION", "name": "Update Default Question", "description": "Tool to update a default (canned) question for an Eventbrite event. Use when you need to modify properties of default attendee information fields like making them required or optional." }, { "slug": "EVENTBRITE_UPDATE_DISCOUNT", "name": "Update Discount", "description": "Tool to update a discount by its ID in Eventbrite. Use when you need to modify discount details such as code, amount, percentage, validity period, or ticket class associations." }, { "slug": "EVENTBRITE_UPDATE_DISPLAY_SETTINGS", "name": "Update Display Settings", "description": "Tool to update display settings for a specific Eventbrite event. Use when you need to configure what information is visible on an event page." }, { "slug": "EVENTBRITE_UPDATE_EVENT", "name": "Update Event", "description": "Tool to update an Eventbrite event by ID. Use when you need to modify event details like name, description, dates, capacity, or other settings. For series parent events, updates to certain fields will propagate to all occurrences in the series." }, { "slug": "EVENTBRITE_UPDATE_INVENTORY_TIER", "name": "Update Inventory Tier", "description": "Tool to update an existing Inventory Tier by ID for an Event. Use when you need to modify inventory tier settings such as name, quantity, tier level, color, or capacity settings. Supports partial updates." }, { "slug": "EVENTBRITE_UPDATE_ORGANIZER", "name": "Update Organizer", "description": "Tool to update an Eventbrite organizer by ID. Use when you need to modify organizer details like name, description, logo, or marketing preferences." }, { "slug": "EVENTBRITE_UPDATE_TICKET_BUYER_SETTINGS", "name": "Update Ticket Buyer Settings", "description": "Tool to update ticket buyer settings for an Eventbrite event. Use when you need to configure post-purchase redirect URL, survey/registration form name, survey time limit, or specify who should fill out the survey (each attendee or just the ticket buyer)." }, { "slug": "EVENTBRITE_UPDATE_TICKET_CLASS", "name": "Update Ticket Class", "description": "Tool to update a ticket class for an Eventbrite event. Use when you need to modify ticket class details like name, description, cost, quantity, or free status." }, { "slug": "EVENTBRITE_UPDATE_TICKET_GROUP", "name": "Update Ticket Group", "description": "Tool to update a ticket group by its ID in Eventbrite. Use when you need to modify ticket group details like name, status, or event ticket mappings." }, { "slug": "EVENTBRITE_UPDATE_VENUE", "name": "Update Venue", "description": "Tool to update a venue's details by venue ID. Use when you need to modify venue information such as name, capacity, address, age restrictions, or location coordinates." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "eventbrite_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "event:read,event:write,order:read,order:write,attendee:read,attendee:write,user:read,user:write,organizer:read,organizer:write,venue:read,venue:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "wave_accounting", "name": "Wave", "logo": "https://logos.composio.dev/api/wave_accounting", "description": "Wave Accounting is a free accounting solution tailored for small businesses, featuring invoicing, expense tracking, and payroll add-ons", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "wave-accounting_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "account:write,account:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "beeminder", "name": "Beeminder", "logo": "https://logos.composio.dev/api/beeminder", "description": "Beeminder is an online goal-tracking service that uses financial incentives-pledge money on your objectives and forfeit it if you don’t keep up-to help you achieve your goals.", "category": "task management", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BEEMINDER_AUTHENTICATE_AND_REDIRECT_USER", "name": "Authenticate and Redirect User", "description": "Tool to authenticate a user and redirect them to a given URL. Use when sending a user into the Beeminder web UI directly after OAuth or token validation." }, { "slug": "BEEMINDER_CREATE_CHARGE", "name": "Create Charge", "description": "Tool to create a new charge for a user. Use when billing a user outside of goal pledges; supports dryrun mode." }, { "slug": "BEEMINDER_GET_ALL_GOALS", "name": "Get all goals", "description": "Tool to retrieve all goals for a specified user. Use when listing a user's active goals." }, { "slug": "BEEMINDER_GET_ARCHIVED_GOALS", "name": "Get Archived Goals", "description": "Tool to retrieve archived goals for a specified user. Use when you need to inspect a user's past archived goals." }, { "slug": "BEEMINDER_GET_USER_INFORMATION", "name": "Get Beeminder User Information", "description": "Tool to retrieve information about a specified Beeminder user. Use when you need to fetch details like timezone, goals, urgency, or deleted goals after authenticating successfully." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "beeminder_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "beeminder_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Beeminder Personal Auth Token", "type": "string", "description": "Your personal Beeminder API auth token, obtainable from Account Settings → Apps & API in your Beeminder account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "printnode", "name": "Printnode", "logo": "https://logos.composio.dev/api/printnode", "description": "PrintNode provides cloud printing services, enabling remote printing from web or desktop applications and simplifying multi-location print management", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRINTNODE_PING", "name": "Ping API", "description": "Tests the accessibility of the PrintNode API. Returns 'OK' if the API is available. No authentication is required for this endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "printnode_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "PrintNode API Key", "type": "string", "description": "Your PrintNode API key. Find it in your PrintNode account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rocket_reach", "name": "RocketReach", "logo": "https://logos.composio.dev/api/rocket_reach", "description": "RocketReach locates and verifies professional contact details, helping sales and recruiters reach leads and candidates more efficiently", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROCKET_REACH_CHECK_PERSON_STATUS", "name": "Check Person Status", "description": "Tool to check the status of multiple person lookup requests. Use when you need to retrieve the current status of previously initiated person lookups." }, { "slug": "ROCKET_REACH_GET_ACCOUNT", "name": "Get RocketReach Account Info", "description": "Tool to retrieve account information for the authenticated user. Use when you need to fetch the current user's account details." }, { "slug": "ROCKET_REACH_GET_COMPANY_FUNDING", "name": "RocketReach Get Company Funding", "description": "Tool to retrieve funding details for a specified company. Use when you need to fetch historical funding rounds by company domain." }, { "slug": "ROCKET_REACH_GET_COMPANY_GROWTH", "name": "Get Company Growth Metrics", "description": "Tool to get growth metrics for a specified company domain. Use when historical company growth data is needed after confirming the exact company domain." }, { "slug": "ROCKET_REACH_GET_COMPANY_INDUSTRIES", "name": "Get Company Industries", "description": "Tool to list industries associated with a specified company. Tries multiple RocketReach endpoints using the provided identifier (ID, domain, or name) and extracts industry information from the response payload." }, { "slug": "ROCKET_REACH_GET_COMPANY_SIZE", "name": "Get Company Size", "description": "Tool to retrieve size metrics of a company. Use when you have a company's domain to get its employee size range." }, { "slug": "ROCKET_REACH_GET_COMPANY_TECH_STACK", "name": "Get Company Tech Stack", "description": "Tool to get technology stack for a company by domain. Use when you need to discover the tech a company uses after confirming its domain." }, { "slug": "ROCKET_REACH_LOOKUP_COMPANY", "name": "RocketReach Lookup Company", "description": "Tool to lookup a company's domain via RocketReach Company Lookup API. Use when you need the company domain by name for downstream actions like funding, size, or tech stack." }, { "slug": "ROCKET_REACH_LOOKUP_PERSON", "name": "RocketReach Lookup Person", "description": "Tool to lookup detailed person information from RocketReach. Use when you need to fetch a person's profile by email." }, { "slug": "ROCKET_REACH_LOOKUP_PERSON_AND_COMPANY", "name": "Lookup Person and Company", "description": "Tool to lookup both person and company information in a single request. Use when you need comprehensive profile data including employment details. At least one search parameter (name, email, id, linkedin_url, or npi_number) must be provided." }, { "slug": "ROCKET_REACH_SEARCH_COMPANIES", "name": "List Companies", "description": "Tool to list companies by name or keyword. Use when you need to discover companies matching specific criteria after obtaining an API key." }, { "slug": "ROCKET_REACH_SEARCH_PEOPLE", "name": "Search People", "description": "Tool to search for people by name, title, or keywords. Use when you need to discover individuals matching specific criteria after obtaining an API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rocketreach_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your RocketReach API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "interzoid", "name": "Interzoid", "logo": "https://logos.composio.dev/api/interzoid", "description": "Interzoid offers APIs for data matching, verification, and enrichment, allowing developers to improve data quality and integrate real-time insights into applications", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INTERZOID_ADDRESS_PARSE", "name": "Parse Address", "description": "Tool to parse a free-form address into structured components. Use when you need to extract street, city, state, etc. from unstructured address strings." }, { "slug": "INTERZOID_EMAIL_TRUST_SCORE", "name": "Interzoid Email Trust Score", "description": "Tool to return a trust score for an email address. Use when you need to assess the quality and legitimacy of an email address. Call after acquiring the target email." }, { "slug": "INTERZOID_GET_ADDRESS_MATCH_ADVANCED", "name": "Get Address Match Advanced", "description": "Tool to generate a similarity key for a US street address. Use when performing fuzzy deduplication of addresses across datasets." }, { "slug": "INTERZOID_GET_AREA_CODE", "name": "Get Area Code Information", "description": "Tool to retrieve telephone area code information including primary city and geographic locale. Use when you need to get details about a specific area code." }, { "slug": "INTERZOID_GET_AREA_CODE_FROM_NUMBER", "name": "Get Area Code From Number", "description": "Tool to get area code information from a telephone number. Use when you need to identify the geographic location or area code details for a given phone number." }, { "slug": "INTERZOID_GET_BUSINESS_INFO", "name": "Get Business Info", "description": "Tool to retrieve comprehensive company profiles and business intelligence. Use when you need detailed company information by name, domain, or email." }, { "slug": "INTERZOID_GET_COMPANY_MATCH_ADVANCED", "name": "Get Company Match Advanced", "description": "Tool to generate a fuzzy-matching key for an organization name. Use when normalizing and deduplicating company names after extraction." }, { "slug": "INTERZOID_GET_COUNTRY_INFO", "name": "Get Country Info", "description": "Tool to standardize a country name and return metadata like ISO codes, currency, TLD, and calling code. Use when you need detailed country information based on a country name or code." }, { "slug": "INTERZOID_GET_CURRENCY_RATE", "name": "Get Currency Rate", "description": "Tool to retrieve live USD exchange rate for a currency symbol. Use when you need current market rate for a three-letter ISO 4217 currency." }, { "slug": "INTERZOID_GET_CUSTOM_DATA", "name": "Get Custom Data", "description": "Tool to retrieve custom enriched data based on a topic and lookup value. Use after specifying the desired output fields." }, { "slug": "INTERZOID_GET_EMAIL_INFO", "name": "Get Email Info", "description": "Tool to validate an email and return enrichment/demographics. Use when you need in-depth email analysis after confirming the email address." }, { "slug": "INTERZOID_GET_ENTITY_TYPE", "name": "Get Entity Type", "description": "Tool to classify a text string into an entity type. Use when you need to identify if input refers to a Location, Organization, or Individual." }, { "slug": "INTERZOID_GET_EXECUTIVE_PROFILE", "name": "Get Executive Profile", "description": "Tool to retrieve executive profile details based on company and title keywords. Use when you need executive information such as LinkedIn and biography links." }, { "slug": "INTERZOID_GET_FULL_NAME_MATCH", "name": "Get Full Name Match", "description": "Tool to generate a similarity key for a full name. Use when performing fuzzy matching or deduplication of individual names." }, { "slug": "INTERZOID_GET_FULL_NAME_MATCH_SCORE", "name": "Get Full Name Match Score", "description": "Tool to return a similarity score between two full names. Use when determining if two person names likely refer to the same individual." }, { "slug": "INTERZOID_GET_GLOBAL_ADDRESS_MATCH", "name": "Get Global Address Match", "description": "Tool to generate a similarity key for a global address. Use when performing fuzzy matching and deduplication of international addresses." }, { "slug": "INTERZOID_GET_GLOBAL_PAGE_LOAD_PERFORMANCE", "name": "Get Global Page Load Performance", "description": "Tool to measure page/API load time from a specified global origin. Use when benchmarking response times across geographic locations." }, { "slug": "INTERZOID_GET_GLOBAL_WEATHER", "name": "Get Global Weather", "description": "Tool to return current weather conditions for a global location. Use when you need up-to-the-minute weather details for any city worldwide." }, { "slug": "INTERZOID_GET_IP_PROFILE", "name": "Get IP Profile", "description": "Tool to retrieve IP intelligence including ASN, organization, geolocation, and reputation. Use when profiling an IP address for threat analysis." }, { "slug": "INTERZOID_GET_LICENSE", "name": "Get API License Key", "description": "Tool to retrieve the configured Interzoid API license key. Use when you need to inspect which API key is active in the current connection." }, { "slug": "INTERZOID_GET_NAME_ORIGIN", "name": "Get Name Origin", "description": "Tool to infer the likely country or region of origin from a personal name. Use after obtaining a name to guess its origin." }, { "slug": "INTERZOID_GET_ORG_MATCH_SCORE", "name": "Get Org Match Score", "description": "Tool to return a 1–99 match score between two organization names. Use after gathering both names to evaluate organization similarity." }, { "slug": "INTERZOID_GET_ORG_STANDARD", "name": "Get Org Standard", "description": "Tool to standardize an organization name to a canonical English form. Use when you need consistent company naming for data normalization." }, { "slug": "INTERZOID_GET_PARENT_COMPANY_INFO", "name": "Get Parent Company Info", "description": "Tool to retrieve ultimate parent company information. Use when you have a company name or domain and need its ownership details." }, { "slug": "INTERZOID_GET_PHONE_PROFILE", "name": "Get Phone Number Profile", "description": "Tool to retrieve phone number intelligence including validation, normalization, carrier, and risk assessment. Use when you need to enrich and validate a phone number after capture." }, { "slug": "INTERZOID_GET_PRODUCT_MATCH", "name": "Get Product Match", "description": "Tool to generate a similarity key for a product name. Use when normalizing and fuzzy-matching names across catalogs." }, { "slug": "INTERZOID_GET_REMAINING_CREDITS", "name": "Get Remaining API Credits", "description": "Tool to retrieve remaining Interzoid API credits. Use when you need to check your credit balance after usage." }, { "slug": "INTERZOID_GET_WEATHER_ZIPCODE", "name": "Get Weather by ZIP Code", "description": "Tool to get current weather conditions for a US ZIP code. Use when you need real-time weather information for a specific area after confirming the ZIP code is valid." }, { "slug": "INTERZOID_IDENTIFY_LANGUAGE", "name": "Identify Language", "description": "Tool to detect the language of a text string. Use when you need to identify the language of arbitrary text. Call after obtaining the text input." }, { "slug": "INTERZOID_TRANSLATE_TO_ANY", "name": "Translate any text (auto-detect language)", "description": "Tool to auto-detect the input language and translate given text to the specified target language. Use when you need quick translations without specifying the source language." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "interzoid_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Interzoid API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "exist", "name": "Exist", "logo": "https://logos.composio.dev/api/exist", "description": "Exist is a personal analytics app that combines data from various services to help users understand and improve their lives.", "category": "analytics", "authSchemes": [ "OAUTH2" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EXIST_ACQUIRE_ATTRIBUTE_OWNERSHIP", "name": "Acquire Attribute Ownership", "description": "Tool to acquire ownership of attributes for the authenticated user. Allows your service to write data to these attributes. Use when you need to create or take ownership of attributes before writing data. Acquiring a templated attribute the user doesn't have yet will create this attribute and give you ownership." }, { "slug": "EXIST_GET_ATTRIBUTES_WITH_VALUES", "name": "Get Attributes With Values", "description": "Tool to retrieve attributes with their current values for the authenticated user. Use when you need both attribute metadata and their historical values. Results are limited to your read scopes." }, { "slug": "EXIST_GET_ATTRIBUTE_TEMPLATES", "name": "Get Attribute Templates", "description": "Tool to retrieve a paged list of supported attribute templates. Use when you need to browse available templates before creating or updating data." }, { "slug": "EXIST_GET_AVERAGES", "name": "Get Averages", "description": "Tool to retrieve the most recent average values for each tracked attribute, with one set per week. Returns overall weekly averages plus daily breakdowns (Monday-Sunday). Use include_historical flag to retrieve historical average records." }, { "slug": "EXIST_GET_CORRELATIONS", "name": "Get Correlations", "description": "Retrieve a paginated list of correlations discovered between tracked attributes in the last week. Correlations reveal statistical relationships between different metrics (e.g., sleep duration vs mood). Filter by relationship strength, confidence level (statistical significance), or specific attributes. Returns correlation coefficients, p-values, and human-readable descriptions." }, { "slug": "EXIST_GET_INSIGHTS", "name": "Get Insights", "description": "Tool to retrieve automatically-generated insights about patterns in tracked data for the authenticated user. Insights are observations about correlations, trends, and anomalies (e.g., \"You walked more on days you slept well\"). Use when analyzing user behavior patterns or displaying personalized feedback." }, { "slug": "EXIST_GET_OWNED_ATTRIBUTES", "name": "Get Owned Attributes", "description": "Tool to retrieve attributes owned by your service for the authenticated user. Use when you need to limit data updates to only the attributes your service controls." }, { "slug": "EXIST_GET_USER_ATTRIBUTES", "name": "Get User Attributes", "description": "Tool to retrieve a paged list of the user's attributes without values. Use when you need metadata on available attributes for filtering or selection. Omitting `groups` and `attributes` filters returns the full attribute catalog; use those filters to narrow results and avoid oversized responses." }, { "slug": "EXIST_GET_USER_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve the authenticated user's profile details and preferences. Use after authentication to inspect account settings and status. OAuth scopes granted during authentication determine which fields are returned; missing fields indicate insufficient scopes. Response includes a timezone field; use it when interpreting any date-based attributes." }, { "slug": "EXIST_INCREMENT_ATTRIBUTE_VALUES", "name": "Increment Attribute Values", "description": "Tool to increment attribute values by a delta amount rather than setting totals. Use for counters and cumulative data. Does not work with string, scale, or time of day attributes." }, { "slug": "EXIST_OAUTH2_AUTHORIZE", "name": "Exist OAuth2 Authorize", "description": "Constructs an OAuth2 authorization URL for Exist.io. This tool generates the URL that users must visit in their browser to grant permissions to your application. After user consent, Exist redirects back to your redirect_uri with an authorization code that can be exchanged for an access token. This action does not make an API call - it only builds the authorization URL." }, { "slug": "EXIST_RELEASE_ATTRIBUTE_OWNERSHIP", "name": "Release Attribute Ownership", "description": "Tool to release ownership of attributes for the authenticated user. Use when your service will stop providing data for an attribute or becomes inactive." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "exist_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "activity_read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "zenserp", "name": "Zenserp", "logo": "https://logos.composio.dev/api/zenserp", "description": "Zenserp is a real-time SERP API that extracts Google Search results in JSON format.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZENSERP_BING_SEARCH", "name": "Bing Search", "description": "Tool to obtain Bing search results. Use when you need real-time scraping of Bing SERPs from bing.com." }, { "slug": "ZENSERP_GET_SHOPPING_PRODUCT", "name": "Get Shopping Product Details", "description": "Tool to retrieve detailed Google Shopping product page information by product_id. Use when you need comprehensive product details including pricing, reviews, specifications, and seller information for a specific product." }, { "slug": "ZENSERP_GET_STATUS", "name": "Get API Status", "description": "Tool to check the remaining API requests for your API key. Use when you need to verify your Zenserp API quota." }, { "slug": "ZENSERP_GOOGLE_REVERSE_IMAGE_SEARCH", "name": "Google Reverse Image Search", "description": "Tool to perform a reverse image search on Google. Use after obtaining a public image URL to find where the image appears online." }, { "slug": "ZENSERP_GOOGLE_SEARCH", "name": "Zenserp Google Search", "description": "Tool to perform a standard Google search via Zenserp. Use when you need structured SERP data for a given query." }, { "slug": "ZENSERP_GOOGLE_TRENDS", "name": "Google Trends", "description": "Tool to retrieve Google Trends data. Use when comparing keyword popularity over time." }, { "slug": "ZENSERP_LIST_BATCHES", "name": "List Batches", "description": "Tool to list all submitted batches for your Zenserp API key. Use when you need to retrieve batch processing status or history." }, { "slug": "ZENSERP_LIST_COUNTRIES", "name": "List Countries", "description": "Tool to get the list of supported Google country (gl) parameters. Use when you need to know valid country codes for geolocation." }, { "slug": "ZENSERP_LIST_LANGUAGES", "name": "List Supported Languages", "description": "Tool to get a list of supported Google interface language (hl) parameters. Use when you need to find valid language codes for Google search queries." }, { "slug": "ZENSERP_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to get a list of supported geo locations for search targeting. Use when you need to know which location parameters are available for geolocation queries." }, { "slug": "ZENSERP_LIST_SEARCH_ENGINES", "name": "List Search Engines", "description": "Tool to get the list of supported search engines that can be queried via Zenserp. Use when you need to determine which search engine domains are available for searches." }, { "slug": "ZENSERP_YANDEX_SEARCH", "name": "Yandex Search via Zenserp", "description": "Tool to obtain Yandex search results via Zenserp API. Use when you need programmatic access to Yandex search data after constructing a query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zenserp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Zenserp API Key", "type": "string", "description": "Your Zenserp API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoho_invoice", "name": "Zoho Invoice", "logo": "https://logos.composio.dev/api/zoho_invoice", "description": "Zoho Invoice simplifies billing, recurring payments, and expense management, helping freelancers and small businesses send professional invoices", "category": "proposal & invoice management", "authSchemes": [ "OAUTH2" ], "toolCount": 137, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZOHO_INVOICE_ADD_CREDITNOTE_TO_INVOICES", "name": "Add Credit Note to Invoices", "description": "Tool to apply a credit note to one or more invoices. Use when you need to apply credits from a credit note to specific invoices. The invoice and credit note must belong to the same customer, and the invoice must not be in closed or paid status." }, { "slug": "ZOHO_INVOICE_ADD_INVOICE_COMMENT", "name": "Add Invoice Comment", "description": "Tool to add a comment to an invoice. Use when you need to add notes or comments to a specific invoice for internal tracking or client communication." }, { "slug": "ZOHO_INVOICE_APPLY_CREDITS_TO_INVOICE", "name": "Apply Credits to Invoice", "description": "Tool to apply credit notes to an invoice in Zoho Invoice. Use when you need to reduce an invoice balance by applying one or more existing credit notes." }, { "slug": "ZOHO_INVOICE_CANCEL_WRITE_OFF_INVOICE", "name": "Cancel Write Off Invoice", "description": "Tool to cancel a write-off on an invoice. Use when you need to reverse a previously written-off invoice amount." }, { "slug": "ZOHO_INVOICE_CLONE_PROJECT", "name": "Clone Zoho Invoice Project", "description": "Tool to clone an existing project. Use when you need to duplicate a project with a new name and description." }, { "slug": "ZOHO_INVOICE_CREATE_ADDITIONAL_ADDRESS", "name": "Create Additional Address", "description": "Tool to add an additional address to a contact. Use when you need to create a secondary shipping or billing address for an existing contact." }, { "slug": "ZOHO_INVOICE_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a contact in Zoho Invoice. Use when you need to add a new customer or vendor to the system." }, { "slug": "ZOHO_INVOICE_CREATE_CONTACT_PERSON", "name": "Create Contact Person", "description": "Tool to create a contact person for an existing contact. Use when you need to add a new contact person to a contact record." }, { "slug": "ZOHO_INVOICE_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Tool to create a credit note to refund or give credit to a customer. Use when you need to issue a credit for returned items or adjustments." }, { "slug": "ZOHO_INVOICE_CREATE_CREDIT_NOTE_COMMENT", "name": "Create Credit Note Comment", "description": "Tool to add a comment to a credit note. Use when you need to add notes or comments to an existing credit note." }, { "slug": "ZOHO_INVOICE_CREATE_CURRENCY", "name": "Create Currency", "description": "Tool to create a new currency in Zoho Invoice. Use when you need to add a currency with specific code, symbol, and formatting options." }, { "slug": "ZOHO_INVOICE_CREATE_CUSTOMER_PAYMENT", "name": "Create Customer Payment", "description": "Tool to create a customer payment in Zoho Invoice. Use when you need to record a payment made by a customer and apply it to one or more invoices." }, { "slug": "ZOHO_INVOICE_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Tool to create an employee in Zoho Invoice. Use when you need to add a new employee to the organization." }, { "slug": "ZOHO_INVOICE_CREATE_ESTIMATE", "name": "Create Estimate", "description": "Tool to create a new estimate (quote) for a customer. Use when you need to generate a price quotation before creating an invoice." }, { "slug": "ZOHO_INVOICE_CREATE_ESTIMATE_COMMENT", "name": "Create Estimate Comment", "description": "Tool to add a comment to an estimate. Use when you need to add notes or comments to an existing estimate." }, { "slug": "ZOHO_INVOICE_CREATE_EXCHANGE_RATE", "name": "Create Exchange Rate", "description": "Tool to create an exchange rate for a specified currency. Use when you need to set or update the exchange rate for a currency with respect to the base currency, effective from a specific date." }, { "slug": "ZOHO_INVOICE_CREATE_EXPENSE_CATEGORY", "name": "Create Expense Category", "description": "Tool to create a new expense category in Zoho Invoice. Use when you need to add a new expense category for tracking business expenses." }, { "slug": "ZOHO_INVOICE_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice for a customer in Zoho Invoice. Use when you need to bill a customer with line items and pricing details." }, { "slug": "ZOHO_INVOICE_CREATE_ITEM", "name": "Create Item", "description": "Tool to create a new item in Zoho Invoice. Use when you need to add a product or service to your item catalog." }, { "slug": "ZOHO_INVOICE_CREATE_PROJECT_COMMENT", "name": "Create Project Comment", "description": "Tool to post a comment to a project. Use when you need to add comments or notes to a specific project." }, { "slug": "ZOHO_INVOICE_CREATE_RECURRING_INVOICE", "name": "Create Recurring Invoice", "description": "Tool to create a recurring invoice profile that automatically generates invoices at specified intervals. Use when you need to set up automatic invoice generation for subscriptions or regular billing." }, { "slug": "ZOHO_INVOICE_CREATE_REFUND_CREDIT_NOTE_REFUNDS", "name": "Create Refund Credit Note Refunds", "description": "Tool to create a refund for a credit note. Use when you need to refund credit note amount to a customer." }, { "slug": "ZOHO_INVOICE_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in a Zoho Invoice project. Use when you need to add a task to an existing project with task name and optional details like description, hourly rate, and budget hours." }, { "slug": "ZOHO_INVOICE_CREATE_TAX", "name": "Create Tax", "description": "Tool to create a new tax in Zoho Invoice. Use when you need to add a tax rate that can be applied to items and invoices." }, { "slug": "ZOHO_INVOICE_CREATE_TAX_GROUP", "name": "Create Tax Group", "description": "Tool to create a new tax group in Zoho Invoice. Use when you need to combine multiple taxes into a single group for easier application to invoices and items." }, { "slug": "ZOHO_INVOICE_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to log time entries for projects in Zoho Invoice. Use when you need to track billable or non-billable hours against a project or task." }, { "slug": "ZOHO_INVOICE_CREATE_USER", "name": "Create Zoho Invoice User", "description": "Tool to create a new user in Zoho Invoice. Use when you need to add a user to an organization. The user will receive an invitation email." }, { "slug": "ZOHO_INVOICE_DELETE_ADDITIONAL_ADDRESS", "name": "Delete Additional Address", "description": "Tool to delete an additional address from a contact. Use when you need to remove a specific address from a contact's address list." }, { "slug": "ZOHO_INVOICE_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact from Zoho Invoice. Use when you need to permanently remove a contact from the system." }, { "slug": "ZOHO_INVOICE_DELETE_CONTACT_PERSON", "name": "Delete Contact Person", "description": "Tool to delete a contact person from Zoho Invoice. Use when you need to remove a specific contact person from the system." }, { "slug": "ZOHO_INVOICE_DELETE_CREDIT_NOTES_APPLIED_TO_INVOICE", "name": "Delete Credit Notes Applied to Invoice", "description": "Tool to delete invoices credited from a credit note. Use when you need to remove an invoice that was previously credited by a credit note." }, { "slug": "ZOHO_INVOICE_DELETE_CURRENCY", "name": "Delete Currency", "description": "Tool to delete a currency from Zoho Invoice settings. Use when you need to permanently remove a currency from the system." }, { "slug": "ZOHO_INVOICE_DELETE_CUSTOMER_PAYMENT", "name": "Delete Customer Payment", "description": "Tool to delete an existing payment from Zoho Invoice. Use when you need to remove a specific customer payment from the system." }, { "slug": "ZOHO_INVOICE_DELETE_EMPLOYEE", "name": "Delete Employee", "description": "Tool to delete an employee from Zoho Invoice. Use when you need to permanently remove an employee from the system." }, { "slug": "ZOHO_INVOICE_DELETE_ESTIMATE_COMMENT", "name": "Delete Estimate Comment", "description": "Tool to delete a comment from an estimate. Use when you need to remove a specific comment from an existing estimate." }, { "slug": "ZOHO_INVOICE_DELETE_ESTIMATES", "name": "Delete Estimates", "description": "Tool to delete one or more estimates (quotes). Use when you need to permanently remove estimates from the system. This is a bulk delete operation that can delete multiple estimates at once." }, { "slug": "ZOHO_INVOICE_DELETE_EXPENSE", "name": "Delete Expense", "description": "Tool to delete an expense from Zoho Invoice. Use when you need to permanently remove an expense from the system." }, { "slug": "ZOHO_INVOICE_DELETE_EXPENSE_CATEGORY", "name": "Delete Expense Category", "description": "Tool to delete an expense category from Zoho Invoice. Use when you need to permanently remove an expense category. Note: Categories associated with expenses cannot be deleted." }, { "slug": "ZOHO_INVOICE_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an existing invoice from Zoho Invoice. Use when you need to permanently remove an invoice. Invoices with payments or credit notes applied cannot be deleted." }, { "slug": "ZOHO_INVOICE_DELETE_INVOICE_ATTACHMENT", "name": "Delete Invoice Attachment", "description": "Tool to delete an attachment from an invoice. Use when you need to remove a document or file from a Zoho Invoice." }, { "slug": "ZOHO_INVOICE_DELETE_INVOICE_COMMENT", "name": "Delete Invoice Comment", "description": "Tool to delete a comment from an invoice. Use when you need to remove a specific comment from an existing invoice." }, { "slug": "ZOHO_INVOICE_DELETE_INVOICE_EXPENSE_RECEIPT", "name": "Delete Invoice Expense Receipt", "description": "Tool to delete the receipt attached to an expense in Zoho Invoice. Use when you need to remove the receipt file from an expense while keeping the expense itself." }, { "slug": "ZOHO_INVOICE_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete an existing item from Zoho Invoice. Items that are part of a transaction cannot be deleted and will return an error." }, { "slug": "ZOHO_INVOICE_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from Zoho Invoice. Use when you need to permanently remove a project from the system." }, { "slug": "ZOHO_INVOICE_DELETE_PROJECT_COMMENT", "name": "Delete Project Comment", "description": "Tool to delete a comment from a project. Use when you need to remove a specific comment from an existing project." }, { "slug": "ZOHO_INVOICE_DELETE_SETTING_TAXES", "name": "Delete Tax", "description": "Tool to delete a simple or compound tax from Zoho Invoice settings. Use when you need to permanently remove a tax from the system." }, { "slug": "ZOHO_INVOICE_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task from a Zoho Invoice project. Use when you need to permanently remove a task from a project." }, { "slug": "ZOHO_INVOICE_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to delete a time entry from Zoho Invoice. Use when you need to permanently remove a time entry from a project." }, { "slug": "ZOHO_INVOICE_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user from Zoho Invoice. Use when you need to permanently remove a user from an organization." }, { "slug": "ZOHO_INVOICE_DISABLE_CONTACT_PAYMENT_REMINDERS", "name": "Disable Contact Payment Reminders", "description": "Tool to disable payment reminders for a contact. Use when you need to stop automatic payment reminder notifications for all invoices associated with a specific contact." }, { "slug": "ZOHO_INVOICE_DISABLE_INVOICE_PAYMENT_REMINDER", "name": "Disable Invoice Payment Reminder", "description": "Tool to disable payment reminders for an invoice. Use when you need to stop automatic payment reminder notifications for a specific invoice." }, { "slug": "ZOHO_INVOICE_EMAIL_CONTACT_STATEMENT", "name": "Email Contact Statement", "description": "Tool to email a statement to a contact in Zoho Invoice. Use when you need to send account statements showing transaction history for a specific period to a customer or vendor." }, { "slug": "ZOHO_INVOICE_EMAIL_ESTIMATE", "name": "Email Estimate", "description": "Tool to email an estimate to a customer. Use when you need to send an estimate via email to one or more recipients." }, { "slug": "ZOHO_INVOICE_EMAIL_INVOICE", "name": "Email Invoice", "description": "Tool to email an invoice to customers. Use when you need to send an invoice via email to one or more recipients with optional CC recipients and custom email content." }, { "slug": "ZOHO_INVOICE_EMAIL_MULTIPLE_ESTIMATES", "name": "Email Multiple Estimates", "description": "Tool to send estimates via email to customers in bulk. Use when you need to email multiple estimates at once to their respective customers." }, { "slug": "ZOHO_INVOICE_ENABLE_INVOICE_PAYMENT_REMINDER", "name": "Enable Invoice Payment Reminder", "description": "Tool to enable payment reminders for an invoice. Use when you need to activate automatic payment reminder notifications for a specific invoice." }, { "slug": "ZOHO_INVOICE_ENABLE_PAYMENT_REMINDERS", "name": "Enable Payment Reminders", "description": "Tool to enable payment reminders for a contact. Use when you need to activate automatic payment reminder notifications for a specific contact." }, { "slug": "ZOHO_INVOICE_ENABLE_PORTAL_ACCESS", "name": "Enable Portal Access", "description": "Tool to enable portal access for contact persons in Zoho Invoice. Use when you need to grant customer portal access to specific contact persons." }, { "slug": "ZOHO_INVOICE_EXPORT_INVOICES_BULK", "name": "Bulk Export Invoices", "description": "Tool to bulk export multiple invoices as a single PDF file. Use when you need to download invoices in PDF format for multiple invoice IDs at once." }, { "slug": "ZOHO_INVOICE_GET_ALL_TASKS", "name": "Get All Tasks", "description": "Tool to list all tasks in a Zoho Invoice project. Use when you need to retrieve tasks for a specific project with optional pagination." }, { "slug": "ZOHO_INVOICE_GET_CLIENT_REVIEW", "name": "Get Client Review", "description": "Tool to retrieve details of a particular client review by comment ID. Use when you need to fetch a specific client review or feedback from Zoho Invoice." }, { "slug": "ZOHO_INVOICE_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID. Use when you need to fetch detailed information about a customer or vendor." }, { "slug": "ZOHO_INVOICE_GET_CONTACT_ADDRESSES", "name": "Get Contact Addresses", "description": "Tool to retrieve all addresses for a contact. Use when you need to fetch shipping or billing addresses associated with a specific contact." }, { "slug": "ZOHO_INVOICE_GET_CONTACT_PERSON", "name": "Get Contact Person", "description": "Tool to retrieve details of a specific contact person. Use when you need to fetch information about a contact person associated with a contact." }, { "slug": "ZOHO_INVOICE_GET_CREDIT_NOTE", "name": "Get Credit Note", "description": "Tool to retrieve the details of a specific credit note by creditnote_id. Use when you need to fetch a credit note's information after confirming its existence." }, { "slug": "ZOHO_INVOICE_GET_CREDIT_NOTE_EMAIL_HISTORY", "name": "Get Credit Note Email History", "description": "Tool to retrieve email history for a credit note. Use when you need to see all emails sent for a specific credit note." }, { "slug": "ZOHO_INVOICE_GET_CREDIT_NOTE_REFUND", "name": "Get Credit Note Refund", "description": "Tool to retrieve details of a specific credit note refund. Use when you need to fetch refund information by credit note ID and refund ID." }, { "slug": "ZOHO_INVOICE_GET_EXPENSE", "name": "Get Expense", "description": "Tool to retrieve a specific expense by ID. Use when you need to fetch detailed information about an expense record." }, { "slug": "ZOHO_INVOICE_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve the details of a specific invoice by invoice_id. Use when you need to fetch an invoice's information after confirming its existence." }, { "slug": "ZOHO_INVOICE_GET_INVOICE_ATTACHMENT", "name": "Get Invoice Attachment", "description": "Tool to get invoice attachment details. Use when you need to retrieve information about files attached to a Zoho Invoice." }, { "slug": "ZOHO_INVOICE_GET_INVOICE_EMAIL_CONTENT", "name": "Get Invoice Email Content", "description": "Tool to retrieve the email content for a specific invoice. Use when you need to fetch the email subject, body, and recipients that would be used when emailing an invoice." }, { "slug": "ZOHO_INVOICE_GET_ITEM", "name": "Get Zoho Invoice Item", "description": "Tool to retrieve the details of a specific item by item_id. Use when you need to fetch an item's data after confirming its existence." }, { "slug": "ZOHO_INVOICE_GET_PAYMENT_REMINDER_MAIL_CONTENT", "name": "Get Payment Reminder Mail Content", "description": "Tool to retrieve payment reminder mail content for a specific invoice. Use when you need to fetch the email subject, body, and settings for sending payment reminder emails." }, { "slug": "ZOHO_INVOICE_GET_PRICE_LIST", "name": "Get Price List", "description": "Tool to retrieve the details of a specific price list by pricebook_id. Use when you need to fetch pricing information for items." }, { "slug": "ZOHO_INVOICE_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a specific project by project ID. Use when you need to fetch project information including tasks, users, and billing details." }, { "slug": "ZOHO_INVOICE_GET_PROJECT_USER", "name": "Get Project User", "description": "Tool to retrieve a specific user from a project. Use when you need to fetch details about a user assigned to a project." }, { "slug": "ZOHO_INVOICE_GET_RECURRING_INVOICE", "name": "Get Recurring Invoice", "description": "Tool to retrieve the details of a specific recurring invoice by recurring_invoice_id. Use when you need to fetch a recurring invoice's information." }, { "slug": "ZOHO_INVOICE_GET_STATEMENT_MAIL_CONTENT", "name": "Get Statement Mail Content", "description": "Tool to retrieve statement mail content for a specific contact. Use when you need to fetch the email subject, body, and settings for sending statement emails to customers or vendors." }, { "slug": "ZOHO_INVOICE_GET_TASK", "name": "Get Task", "description": "Tool to retrieve a specific task from a Zoho Invoice project. Use when you need to fetch detailed information about a task using its ID." }, { "slug": "ZOHO_INVOICE_GET_TAX", "name": "Get Tax", "description": "Tool to retrieve details of a specific tax by tax_id. Use when you need to fetch information about a tax rate configured in Zoho Invoice." }, { "slug": "ZOHO_INVOICE_GET_TAX_GROUP", "name": "Get Tax Group", "description": "Tool to retrieve a specific tax group by ID. Use when you need to fetch details about a tax group including its name, total percentage, and individual taxes." }, { "slug": "ZOHO_INVOICE_GET_TIME_ENTRY", "name": "Get Time Entry", "description": "Tool to retrieve a specific time entry from Zoho Invoice. Use when you need to fetch details of a time entry by its ID." }, { "slug": "ZOHO_INVOICE_INACTIVATE_PROJECT", "name": "Inactivate Project", "description": "Tool to deactivate a project in Zoho Invoice. Use when you need to change a project's status from active to inactive." }, { "slug": "ZOHO_INVOICE_LIST_CHILD_EXPENSES_CREATED", "name": "List Child Expenses Created", "description": "Tool to list child expenses created from a recurring expense. Use when you need to retrieve all expense instances generated from a recurring expense pattern." }, { "slug": "ZOHO_INVOICE_LIST_CLIENT_REVIEWS", "name": "List Client Reviews", "description": "Tool to retrieve all client reviews for contacts. Use when you need to view feedback and reviews from clients in Zoho Invoice." }, { "slug": "ZOHO_INVOICE_LIST_CONTACT_COMMENTS", "name": "List Contact Comments", "description": "Tool to list all comments on a contact. Use when you need to retrieve comments or notes added to a specific contact." }, { "slug": "ZOHO_INVOICE_LIST_CONTACT_REFUNDS", "name": "List Contact Refunds", "description": "Tool to list refunds associated with a contact. Use when you need to retrieve all refunds for a specific contact with optional pagination." }, { "slug": "ZOHO_INVOICE_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts. Use after obtaining the organization ID to retrieve contacts with optional filters and pagination." }, { "slug": "ZOHO_INVOICE_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Tool to list credit notes. Use when you need to retrieve all credit notes with optional filters and pagination." }, { "slug": "ZOHO_INVOICE_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to list all currencies configured for the organization. Use when you need to retrieve available currencies after specifying the organization ID." }, { "slug": "ZOHO_INVOICE_LIST_CUSTOMER_PAYMENT_REFUNDS", "name": "List Customer Payment Refunds", "description": "Tool to list refunds of a customer payment. Use when you need to retrieve all refunds for a specific customer payment with optional pagination." }, { "slug": "ZOHO_INVOICE_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to list all employees in the organization. Use when you need to retrieve the list of employees with pagination support after specifying the organization ID." }, { "slug": "ZOHO_INVOICE_LIST_ESTIMATES", "name": "List Estimates", "description": "Tool to list all estimates. Use when you need to retrieve estimates with optional filtering and pagination." }, { "slug": "ZOHO_INVOICE_LIST_EXPENSE_CATEGORIES", "name": "List Expense Categories", "description": "Tool to list all expense categories with optional filtering, sorting, and pagination. Use when you need to retrieve expense categories for tracking business expenses." }, { "slug": "ZOHO_INVOICE_LIST_EXPENSE_COMMENTS", "name": "List Expense Comments", "description": "Tool to list expense history and comments. Use when you need to retrieve all comments, notes, and history entries for a specific expense." }, { "slug": "ZOHO_INVOICE_LIST_EXPENSES", "name": "List Expenses", "description": "List all expenses with optional filtering, sorting, and pagination. Use this tool when you need to: - Retrieve a list of expenses - Filter expenses by status (billable, unbilled, invoiced, reimbursed) - Search expenses by customer name, account name, or description - Filter expenses by date range - Sort expenses by date, total, account name, etc." }, { "slug": "ZOHO_INVOICE_LIST_INVOICE_COMMENTS", "name": "List Invoice Comments", "description": "Tool to list all comments and history for an invoice. Use when you need to retrieve comment history and notes associated with a specific invoice." }, { "slug": "ZOHO_INVOICE_LIST_INVOICE_PAYMENTS", "name": "List Invoice Payments", "description": "Tool to list payments for a specific invoice. Use when you need to retrieve all payments applied to a particular invoice." }, { "slug": "ZOHO_INVOICE_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices. Use after obtaining the organization ID to retrieve invoices with optional filters and pagination." }, { "slug": "ZOHO_INVOICE_LIST_INVOICES_CREDITED", "name": "List Invoices Credited", "description": "Tool to list invoices to which a specific credit note has been applied. Use when you need to see which invoices have received credits from a particular credit note." }, { "slug": "ZOHO_INVOICE_LIST_ITEMS", "name": "List Items", "description": "Tool to list all items. Use when you need to retrieve your item catalog with optional pagination and filtering after specifying the organization ID." }, { "slug": "ZOHO_INVOICE_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations. Use when you need to retrieve all organizations you are part of to obtain organization IDs for other API calls." }, { "slug": "ZOHO_INVOICE_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list payments. Use when you need to retrieve all payments with optional filters like customer, invoice, date range, and pagination." }, { "slug": "ZOHO_INVOICE_LIST_PRICE_LISTS", "name": "List Price Lists", "description": "Tool to list all price lists. Use when you need to retrieve available price lists with optional pagination." }, { "slug": "ZOHO_INVOICE_LIST_PROJECT_COMMENTS", "name": "List Project Comments", "description": "Tool to list all comments for a project. Use when you need to retrieve comments or notes associated with a specific project." }, { "slug": "ZOHO_INVOICE_LIST_PROJECT_INVOICES", "name": "List Project Invoices", "description": "Tool to list all invoices for a specific project. Use when you need to retrieve invoices associated with a project, with optional sorting and pagination." }, { "slug": "ZOHO_INVOICE_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects. Use when you need to retrieve projects with optional filters by status or customer, and pagination support." }, { "slug": "ZOHO_INVOICE_LIST_PROJECT_USERS", "name": "List Project Users", "description": "Tool to list all users assigned to a specific project. Use when you need to retrieve all users working on a project." }, { "slug": "ZOHO_INVOICE_LIST_RECURRING_INVOICES", "name": "List Recurring Invoices", "description": "Tool to list recurring invoices. Use when you need to retrieve all recurring invoices with optional filters for status, search text, and pagination." }, { "slug": "ZOHO_INVOICE_LIST_RETAINER_INVOICES", "name": "List Retainer Invoices", "description": "Tool to list retainer invoices. Use when you need to retrieve all retainer invoices with optional filters and pagination." }, { "slug": "ZOHO_INVOICE_LIST_RETAINER_INVOICE_TEMPLATES", "name": "List Retainer Invoice Templates", "description": "Tool to list retainer invoice templates. Use when you need to retrieve available retainer invoice templates for an organization." }, { "slug": "ZOHO_INVOICE_LIST_USERS", "name": "List Users", "description": "Tool to list users in a Zoho Invoice organization. Use after obtaining the organization ID to retrieve all users with optional filters and pagination." }, { "slug": "ZOHO_INVOICE_MARK_CONTACT_ACTIVE", "name": "Mark Contact as Active", "description": "Tool to mark an inactive contact as active. Use when you need to reactivate a previously deactivated contact." }, { "slug": "ZOHO_INVOICE_MARK_CONTACT_INACTIVE", "name": "Mark Contact as Inactive", "description": "Tool to mark a contact as inactive in Zoho Invoice. Use when you need to deactivate a contact without deleting it." }, { "slug": "ZOHO_INVOICE_MARK_CONTACT_PERSON_AS_PRIMARY", "name": "Mark Contact Person as Primary", "description": "Tool to mark a contact person as primary in Zoho Invoice. Use when you need to designate a specific contact person as the primary contact." }, { "slug": "ZOHO_INVOICE_MARK_ESTIMATE_AS_DECLINED", "name": "Mark Estimate as Declined", "description": "Tool to mark an estimate as declined. Use when you need to change an estimate's status to declined." }, { "slug": "ZOHO_INVOICE_MARK_EXPENSE_CATEGORY_ACTIVE", "name": "Mark Expense Category as Active", "description": "Tool to mark an inactive expense category as active. Use when you need to reactivate a previously deactivated expense category." }, { "slug": "ZOHO_INVOICE_MARK_INVOICE_AS_SENT", "name": "Mark Invoice as Sent", "description": "Tool to mark an invoice as sent. Use when you need to update an invoice's status to sent without actually emailing it." }, { "slug": "ZOHO_INVOICE_MARK_INVOICE_AS_VOID", "name": "Mark Invoice as Void", "description": "Tool to mark an invoice as void. Use when you need to void an existing invoice without deleting it." }, { "slug": "ZOHO_INVOICE_MARK_ITEM_AS_INACTIVE", "name": "Mark Item as Inactive", "description": "Tool to mark an active item as inactive. Use when you need to deactivate an item without deleting it." }, { "slug": "ZOHO_INVOICE_MARK_RETAINER_INVOICE_AS_SENT", "name": "Mark Retainer Invoice as Sent", "description": "Tool to mark a retainer invoice as sent. Use when you need to update a retainer invoice's status to sent without actually emailing it." }, { "slug": "ZOHO_INVOICE_PRINT_ESTIMATES", "name": "Bulk Print Estimates", "description": "Tool to bulk print multiple estimates as PDF. Use when you need to generate printable versions of multiple estimates at once. Maximum of 10 estimates can be printed at once." }, { "slug": "ZOHO_INVOICE_PRINT_INVOICES", "name": "Bulk Print Invoices", "description": "Tool to bulk print invoices as PDF. Use when you need to export and print multiple invoices. Maximum of 25 invoices can be printed at once." }, { "slug": "ZOHO_INVOICE_REFUND_CUSTOMER_PAYMENT", "name": "Refund Customer Payment", "description": "Tool to refund an excess customer payment. Use when you need to process a refund for a customer payment that has excess funds." }, { "slug": "ZOHO_INVOICE_RESUME_RECURRING_INVOICE", "name": "Resume Recurring Invoice", "description": "Tool to resume a recurring invoice in Zoho Invoice. Use when you need to reactivate a stopped recurring invoice to restart automatic invoice generation." }, { "slug": "ZOHO_INVOICE_SEND_BULK_INVOICE_REMINDER", "name": "Send Bulk Invoice Reminder", "description": "Tool to send payment reminders for multiple invoices in bulk. Use when you need to remind customers about pending payments for multiple invoices at once." }, { "slug": "ZOHO_INVOICE_SEND_CONTACT_EMAIL", "name": "Send Contact Email", "description": "Tool to send an email to a contact in Zoho Invoice. Use when you need to email customer statements or other communications to contacts." }, { "slug": "ZOHO_INVOICE_START_TIMER", "name": "Start Timer", "description": "Tool to start a timer on an existing time entry in Zoho Invoice. Use when you need to begin tracking time on a previously created time entry." }, { "slug": "ZOHO_INVOICE_STOP_RECURRING_INVOICE", "name": "Stop Recurring Invoice", "description": "Tool to stop a recurring invoice in Zoho Invoice. Use when you need to prevent future invoices from being automatically generated while keeping the profile and history intact." }, { "slug": "ZOHO_INVOICE_UPDATE_ADDITIONAL_ADDRESS", "name": "Update Additional Address", "description": "Tool to update an additional address for a contact. Use when you need to modify an existing secondary shipping or billing address." }, { "slug": "ZOHO_INVOICE_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Zoho Invoice. Use when you need to modify customer or vendor information. To delete a contact person, remove it from the contact_persons list." }, { "slug": "ZOHO_INVOICE_UPDATE_CONTACT_PERSON", "name": "Update Contact Person", "description": "Tool to update a contact person in Zoho Invoice. Use when you need to modify details of an existing contact person such as name, email, phone, or other attributes." }, { "slug": "ZOHO_INVOICE_UPDATE_CREDIT_NOTE", "name": "Update Credit Note", "description": "Tool to update an existing credit note in Zoho Invoice. Use when you need to modify credit note details such as line items, reference numbers, or notes." }, { "slug": "ZOHO_INVOICE_UPDATE_CREDIT_NOTE_TEMPLATE", "name": "Update Credit Note Template", "description": "Tool to update the template associated with a credit note. Use when you need to change the PDF template applied to an existing credit note." }, { "slug": "ZOHO_INVOICE_UPDATE_CUSTOMER_PAYMENT_REFUND", "name": "Update Customer Payment Refund", "description": "Tool to update an existing customer payment refund. Use when you need to modify refund details such as amount, date, refund mode, reference number, or description." }, { "slug": "ZOHO_INVOICE_UPDATE_ESTIMATE_SHIPPING_ADDRESS", "name": "Update Estimate Shipping Address", "description": "Tool to update the shipping address for an estimate. Use when you need to modify the delivery address for an existing estimate." }, { "slug": "ZOHO_INVOICE_WRITE_OFF_INVOICE", "name": "Write Off Invoice", "description": "Tool to write off an invoice. Use when you need to mark an invoice amount as uncollectable or bad debt." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoInvoice.contacts.ALL,ZohoInvoice.settings.ALL,ZohoInvoice.estimates.ALL,ZohoInvoice.invoices.ALL,ZohoInvoice.customerpayments.ALL,ZohoInvoice.creditnotes.ALL,ZohoInvoice.projects.ALL,ZohoInvoice.expenses.ALL" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Domain Extension", "type": "string", "description": "The Zoho domain extension (com, eu, in, au, jp, ca, cn, sa).", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "timekit", "name": "Timekit", "logo": "https://logos.composio.dev/api/timekit", "description": "Timekit is a scheduling infrastructure for businesses, offering booking workflows, calendar integrations, and automation of appointment handling through an API-first approach", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "timekit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key (Base64)", "type": "string", "description": "Your Timekit API key, Base64 encoded in the format 'api_key:'", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stack_exchange", "name": "Stack Exchange", "logo": "https://logos.composio.dev/api/stack_exchange", "description": "Stack Exchange is a network of Q&A communities where users ask questions, share knowledge, and collaborate on topics like coding, math, and more", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "toolCount": 121, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STACK_EXCHANGE_CREATE_FILTER", "name": "Create Filter", "description": "Tool to create a custom filter for Stack Exchange API responses. Use when you need to customize which fields are included/excluded in API responses to reduce payload size or include additional data not in the default filter." }, { "slug": "STACK_EXCHANGE_FIND_SIMILAR_QUESTIONS", "name": "Find Similar Questions", "description": "Tool to find questions similar to a hypothetical one based on a title and optional tag combination. Use when you need to correlate external data with similar content within a Stack Exchange site, or to get suggestions similar to a site's related questions feature." }, { "slug": "STACK_EXCHANGE_GET_ACCESS_TOKENS", "name": "Get Access Tokens", "description": "Tool to read the properties for a set of access tokens obtained via OAuth 2.0. Use when you need to verify token validity, check expiration dates, review granted scopes, or identify the account associated with tokens." }, { "slug": "STACK_EXCHANGE_GET_ANSWER_COMMENTS", "name": "Get Answer Comments", "description": "Tool to retrieve comments on a set of answers from Stack Exchange. Use when you have answer IDs and need to fetch their associated comments. If you know you have a question ID instead, use the questions endpoint. If unsure whether you have an answer or question ID, use the posts endpoint. Supports filtering by date range, sorting by creation date or votes, and pagination. Returns comment metadata including body, score, owner details, and timestamps." }, { "slug": "STACK_EXCHANGE_GET_ANSWER_FLAG_OPTIONS", "name": "Get Answer Flag Options", "description": "Tool to fetch valid flag options for a specific answer. Returns flags that the authenticated user can create for the answer. Available flags vary from post to post and user to user. Use when you need to know which flags a user can raise before submitting." }, { "slug": "STACK_EXCHANGE_GET_ANSWERS_BY_IDS", "name": "Get Answers By IDs", "description": "Tool to retrieve a set of answers by their IDs from a Stack Exchange site. Use when you need to fetch specific answers by ID (up to 100 semicolon-delimited IDs). Supports filtering by date, sorting by activity/creation/votes, and pagination." }, { "slug": "STACK_EXCHANGE_GET_BADGE_RECIPIENTS_BY_IDS", "name": "Get Badge Recipients By IDs", "description": "Tool to retrieve recently awarded badges constrained to a specific set of badge IDs. Use when you need to track who has received specific badges (up to 100 badge IDs) within an optional date range." }, { "slug": "STACK_EXCHANGE_GET_BADGES_BY_IDS", "name": "Get Badges By IDs", "description": "Tool to retrieve badges by their IDs on a Stack Exchange site. Use when you need to get details about specific badges using semicolon-delimited badge IDs." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVE_ANSWERS", "name": "Get Collective Answers", "description": "Tool to retrieve answers belonging to the specified collective(s) on a Stack Exchange site. Use when you need to find answers associated with a specific collective or multiple collectives." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVE_QUESTIONS", "name": "Get Collective Questions", "description": "Tool to retrieve questions associated with the specified collective. Use when you have a collective ID and need its questions for a site." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVES", "name": "Get Collectives", "description": "Tool to retrieve all collectives on a Stack Exchange site in alphabetical order. Use when you need to list collectives for display or filtering." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVES_BY_SLUGS", "name": "Get Collectives By Slugs", "description": "Tool to retrieve Collective objects by their slugs from a Stack Exchange site. Use when you need to fetch specific collectives by their identifier slugs." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVE_TAGS", "name": "Get Collective Tags", "description": "Retrieve tags associated with specified Stack Overflow collectives. Returns tag information including usage count, moderator status, and collective membership details. Use this when you need to discover what tags are used within specific collectives (e.g., 'aws', 'google-cloud'). Requires collective slugs (string identifiers) - obtain these first via the Get Collectives action." }, { "slug": "STACK_EXCHANGE_GET_COLLECTIVE_USERS", "name": "Get Collective Users", "description": "Tool to retrieve users who are members of the specified Collectives on Stack Exchange. Use when you need to list members of a collective (e.g., google-cloud, azure) on a Stack Exchange site." }, { "slug": "STACK_EXCHANGE_GET_COMMENT_FLAG_OPTIONS", "name": "Get Comment Flag Options", "description": "Tool to fetch valid flag options for a given comment. Use when you need to know which flags a user can raise before submitting. Requires authenticated access." }, { "slug": "STACK_EXCHANGE_GET_COMMENTS", "name": "Get Comments", "description": "Retrieves comments from a Stack Exchange site (e.g., Stack Overflow, Super User, Server Fault). Returns recent comments with full metadata including comment body, score, creation date, owner details (reputation, profile, etc.), and reply information. Supports pagination, date filtering, and sorting by creation date or vote score. Use this when you need to browse recent activity, find comments by specific users, or analyze comment patterns on Stack Exchange sites. Monitor `quota_remaining` in responses; paginated requests can exhaust the daily API quota." }, { "slug": "STACK_EXCHANGE_GET_COMMENTS_BY_IDS", "name": "Get Comments By IDs", "description": "Tool to retrieve specific comments by their IDs from a Stack Exchange site. Use when you have a cache of comment IDs obtained through other means (such as /questions/{id}/comments) but suspect the data may be stale. Accepts up to 100 semicolon-delimited comment IDs at once. Supports sorting by creation date or vote score, and filtering by date ranges." }, { "slug": "STACK_EXCHANGE_GET_EVENTS", "name": "Get Events", "description": "Retrieves a stream of recent events that occurred on a Stack Exchange site. Events include posting questions, answers, comments, editing posts, and creating users. Events are only accessible for 15 minutes after they occurred, and by default only events in the last 5 minutes are returned. Use the 'since' parameter to specify older events within the 15-minute window." }, { "slug": "STACK_EXCHANGE_GET_FILTERS_BY_IDS", "name": "Get Filters By IDs", "description": "Tool to retrieve the fields included by the given filters and the safeness of those filters. Use when you need to debug or understand what fields a filter includes before using it in other API calls." }, { "slug": "STACK_EXCHANGE_GET_LINKED_QUESTIONS", "name": "Get Linked Questions", "description": "Tool to get questions which link to those questions identified in the ids parameter. Use when you need to find questions that reference or are related to specific question IDs by explicit hyperlinks within a single Stack Exchange site." }, { "slug": "STACK_EXCHANGE_GET_ME", "name": "Get Me", "description": "Tool to retrieve the authenticated user's profile information from Stack Exchange. Use when you need details about the current user associated with the access token." }, { "slug": "STACK_EXCHANGE_GET_MY_ACHIEVEMENTS", "name": "Get My Achievements", "description": "Retrieves the authenticated user's recent network-wide achievements across all Stack Exchange sites. Returns achievements including badges earned and reputation changes with metadata like site information, timestamps, and links. Supports pagination for browsing through achievement history. Use this when you need to view the user's recent activity and accomplishments across the Stack Exchange network." }, { "slug": "STACK_EXCHANGE_GET_MY_ASSOCIATED_ACCOUNTS", "name": "Get My Associated Accounts", "description": "Tool to retrieve all Stack Exchange accounts associated with the authenticated user. Use when you need to discover which Stack Exchange sites the user participates in, along with their reputation, activity stats, and badges on each site." }, { "slug": "STACK_EXCHANGE_GET_MY_FEATURED_QUESTIONS", "name": "Get My Featured Questions", "description": "Tool to retrieve questions with active bounties offered by the authenticated user. Use when you need to check which questions the user has placed bounties on. Requires authentication." }, { "slug": "STACK_EXCHANGE_GET_MY_MENTIONS", "name": "Get My Mentions", "description": "Tool to retrieve comments mentioning the authenticated user on a Stack Exchange site. Use when you need to find where the user has been mentioned in comments, track discussions involving the user, or monitor user engagement." }, { "slug": "STACK_EXCHANGE_GET_MY_MERGE_HISTORY", "name": "Get My Merge History", "description": "Tool to retrieve account merge history for the authenticated user. Returns records of merges involving the user's accounts. Use when you need to track account id changes, confirm if an account_id is new to your application, or understand which account ids were equivalent in the past. Account merges happen for various reasons and should not be assumed to have particular causes." }, { "slug": "STACK_EXCHANGE_GET_MY_NETWORK_ACTIVITY", "name": "Get My Network Activity", "description": "Tool to retrieve a summary of the authenticated user's activity across the Stack Exchange network. Returns recent activity including questions posted, answers given, badges earned, and other user actions across all Stack Exchange sites." }, { "slug": "STACK_EXCHANGE_GET_MY_NO_ANSWER_QUESTIONS", "name": "Get My No Answer Questions", "description": "Tool to retrieve questions owned by the authenticated user that have no answers. Use when you need to find unanswered questions asked by the current user on a Stack Exchange site." }, { "slug": "STACK_EXCHANGE_GET_MY_POSTS", "name": "Get My Posts", "description": "Tool to retrieve posts (questions and answers) owned by the authenticated user from a Stack Exchange site. Use when you need to list the user's own content, review their posting history, or track their contributions to a specific Stack Exchange community." }, { "slug": "STACK_EXCHANGE_GET_MY_PRIVILEGES", "name": "Get My Privileges", "description": "Tool to retrieve privileges for the authenticated user on a Stack Exchange site. Use when you need to check what permissions or capabilities the current user has earned based on their reputation." }, { "slug": "STACK_EXCHANGE_GET_MY_QUESTIONS", "name": "Get My Questions", "description": "Tool to retrieve questions owned by the authenticated user on a Stack Exchange site. Use when you need to list the user's question history, check their recent questions, or analyze their contribution patterns. Requires authentication via access token." }, { "slug": "STACK_EXCHANGE_GET_MY_REPUTATION", "name": "Get My Reputation", "description": "Tool to retrieve reputation changes for the authenticated user on a Stack Exchange site. Use when you need to track the user's reputation history, including gains and losses from votes, accepts, and other reputation-affecting actions." }, { "slug": "STACK_EXCHANGE_GET_MY_REPUTATION_HISTORY", "name": "Get My Reputation History", "description": "Tool to retrieve the authenticated user's public reputation history on a Stack Exchange site. Returns a chronological list of reputation changes with details about what caused each change (upvotes, downvotes, accepted answers, etc.). Use when you need to track reputation gains and losses over time." }, { "slug": "STACK_EXCHANGE_GET_MY_SUGGESTED_EDITS", "name": "Get My Suggested Edits", "description": "Tool to retrieve suggested edits submitted by the authenticated user on a Stack Exchange site. Use when you need to list the user's own suggested edits with filtering by date range, sort by creation/approval/rejection date, and paginate through results." }, { "slug": "STACK_EXCHANGE_GET_MY_TAG_PREFERENCES", "name": "Get My Tag Preferences", "description": "Tool to retrieve tag preferences for the authenticated user on a Stack Exchange site. Returns the tags the user has marked as favorite or ignored. Use when you need to fetch the user's tag filter settings." }, { "slug": "STACK_EXCHANGE_GET_MY_TAGS", "name": "Get My Tags", "description": "Tool to retrieve tags the authenticated user is active in on a Stack Exchange site. Use when you need to fetch the user's tag activity, filter by date, or sort by popularity/activity/name." }, { "slug": "STACK_EXCHANGE_GET_MY_TIMELINE", "name": "Get My Timeline", "description": "Tool to retrieve a timeline of actions the authenticated user has taken on a Stack Exchange site. Use when you need to track user activity history, review their contributions chronologically, or monitor recent actions across questions, answers, comments, badges, and edits." }, { "slug": "STACK_EXCHANGE_GET_MY_TOP_ANSWERS_IN_TAGS", "name": "Get My Top Answers In Tags", "description": "Tool to retrieve the top 30 answers the authenticated user has posted in response to questions with specific tags. Use when you need to fetch the user's best answers filtered by tags, sorted by activity, creation date, or votes." }, { "slug": "STACK_EXCHANGE_GET_MY_TOP_ANSWER_TAGS", "name": "Get My Top Answer Tags", "description": "Tool to retrieve the authenticated user's top 30 tags by answer score on a Stack Exchange site. Use when you need to identify which tags the user is most active in or has the highest scoring answers." }, { "slug": "STACK_EXCHANGE_GET_MY_TOP_QUESTIONS_IN_TAGS", "name": "Get My Top Questions In Tags", "description": "Tool to retrieve the top 30 questions the authenticated user has posted in response to questions with the given tags. Use when you need to find the user's most successful or highly-voted questions in specific topic areas." }, { "slug": "STACK_EXCHANGE_GET_MY_TOP_QUESTION_TAGS", "name": "Get My Top Question Tags", "description": "Tool to retrieve the authenticated user's top 30 tags by question score on a Stack Exchange site. Use when you need to analyze which tags the user has the most expertise in based on their question activity." }, { "slug": "STACK_EXCHANGE_GET_MY_TOP_TAGS", "name": "Get My Top Tags", "description": "Tool to retrieve the authenticated user's top 30 tags by combined question and answer score on a Stack Exchange site. Use when you need to discover the user's areas of expertise based on their participation in specific topics." }, { "slug": "STACK_EXCHANGE_GET_MY_UNACCEPTED_QUESTIONS", "name": "Get My Unaccepted Questions", "description": "Tool to retrieve questions owned by the authenticated user that have no accepted answer. Use when you need to find the user's unresolved questions or track which questions still need an accepted answer." }, { "slug": "STACK_EXCHANGE_GET_MY_UNANSWERED_QUESTIONS", "name": "Get My Unanswered Questions", "description": "Tool to retrieve questions owned by the authenticated user that are not considered answered. Use when you need to find the user's unanswered questions on a Stack Exchange site." }, { "slug": "STACK_EXCHANGE_GET_POST_COMMENTS", "name": "Get Post Comments", "description": "Tool to retrieve comments on posts identified by IDs, regardless of post type (question or answer). Use when you have post IDs from users or other sources but are unsure of the specific post type. If you know the post is a question, use get_question_comments; if you know it's an answer, use get_answer_comments. This method handles both cases and accepts up to 100 semicolon-delimited post IDs." }, { "slug": "STACK_EXCHANGE_GET_POSTS_BY_IDS", "name": "Get Posts By IDs", "description": "Tool to retrieve a set of posts by their IDs from a Stack Exchange site. Use when grabbing an object when unsure whether an ID identifies a question or an answer (commonly with user-entered data). Accepts up to 100 semicolon-delimited IDs." }, { "slug": "STACK_EXCHANGE_GET_POST_SUGGESTED_EDITS", "name": "Get Post Suggested Edits", "description": "Tool to retrieve suggested edits on posts from a Stack Exchange site. Use when you need to fetch pending or historical suggested edits for specific posts by their IDs (up to 100 semicolon-delimited post IDs). Supports sorting by creation, approval, or rejection dates, and filtering by date ranges." }, { "slug": "STACK_EXCHANGE_GET_QUESTION_ANSWERS", "name": "Get Question Answers", "description": "Tool to retrieve all answers for a set of questions identified by their IDs. Use when you have specific question IDs and need to fetch all answers for those questions (up to 100 semicolon-delimited question IDs). Most useful for polling for new or updated answers (with sort=activity)." }, { "slug": "STACK_EXCHANGE_GET_QUESTION_CLOSE_OPTIONS", "name": "Get Question Close Options", "description": "Tool to fetch flag options that make up close reasons for a specific question. Returns close options that the authenticated user can create for the question. Available flags vary from post to post and user to user." }, { "slug": "STACK_EXCHANGE_GET_QUESTION_COMMENTS", "name": "Get Question Comments", "description": "Tool to retrieve comments on a set of questions from Stack Exchange. Use when you have question IDs and need to fetch their associated comments. If you know you have an answer ID instead, use the answers endpoint. If unsure whether you have an answer or question ID, use the posts endpoint. Supports filtering by date range, sorting by creation date or votes, and pagination. Returns comment metadata including body, score, owner details, and timestamps." }, { "slug": "STACK_EXCHANGE_GET_QUESTION_FLAG_OPTIONS", "name": "Get Question Flag Options", "description": "Tool to fetch valid flag options, including close reasons, for a specific question. Returns flags that the authenticated user can create for the question. Available flags vary from post to post and user to user." }, { "slug": "STACK_EXCHANGE_GET_QUESTIONS", "name": "Get Questions", "description": "Tool to retrieve a list of questions from a Stack Exchange site without requiring tags or keywords. Use when you need to list newest questions overall, most voted questions, or apply date filters across the entire site corpus." }, { "slug": "STACK_EXCHANGE_GET_QUESTIONS_BY_ANSWER_IDS", "name": "Get Questions By Answer IDs", "description": "Tool to retrieve questions that specific answers belong to on a Stack Exchange site. Use when you have answer IDs and need to find the parent questions they were posted on." }, { "slug": "STACK_EXCHANGE_GET_QUESTIONS_BY_IDS", "name": "Get Questions By IDs", "description": "Tool to retrieve a set of questions by their IDs from a Stack Exchange site. Use when you need to fetch specific questions by ID (up to 100 semicolon-delimited IDs) for fresh data or polling changes. Supports filtering by date, sorting by activity/creation/votes, and pagination." }, { "slug": "STACK_EXCHANGE_GET_QUESTION_TIMELINE", "name": "Get Question Timeline", "description": "Tool to retrieve timeline events for specified questions on a Stack Exchange site. Use when you need to see the history of events (votes, comments, edits, etc.) that have happened to questions. Voting data is scrubbed to prevent voter identification." }, { "slug": "STACK_EXCHANGE_GET_RELATED_TAGS", "name": "Get Related Tags", "description": "Tool to retrieve tags most related to the specified tags on a Stack Exchange site. Use when you need to find related or similar tags. Including multiple tags is equivalent to asking for 'tags related to tag #1 and tag #2' (AND logic, not OR)." }, { "slug": "STACK_EXCHANGE_GET_REVISIONS_BY_IDS", "name": "Get Revisions By IDs", "description": "Tool to retrieve revisions for specific posts by their IDs. Use when you need to examine the edit history of posts by providing semicolon-delimited IDs." }, { "slug": "STACK_EXCHANGE_GET_SEARCH_RESULTS", "name": "Search Questions", "description": "Tool to search the site for questions meeting certain criteria. Use after defining tags or keywords to locate relevant questions. At least one of 'tagged' or 'intitle' must be set. Monitor `quota_remaining` in responses when paginating to avoid exhausting API quota." }, { "slug": "STACK_EXCHANGE_GET_SITE_INFO", "name": "Get Site Info", "description": "Tool to retrieve comprehensive statistics and information about a Stack Exchange site. Returns data including site customization details, related sites, aggregate statistics (total questions, answers, users, votes), activity rates (questions/answers per minute), and metadata. Use this to discover site-specific information, aggregate statistics, and configuration details. This data is heavily cached; query sparingly (ideally no more than once per hour)." }, { "slug": "STACK_EXCHANGE_GET_SITES", "name": "Get Sites", "description": "Retrieves a comprehensive list of all Stack Exchange network sites with detailed information including site names, URLs, styling, and api_site_parameter values needed for other API calls. Use this to discover available sites (Stack Overflow, Math, Gaming, etc.) and get their API identifiers before making site-specific queries. Responses include has_more field; increment page until has_more=false to retrieve all sites." }, { "slug": "STACK_EXCHANGE_GET_SUGGESTED_EDITS_BY_IDS", "name": "Get Suggested Edits By IDs", "description": "Tool to retrieve suggested edits by their IDs from a Stack Exchange site. Use when you need to fetch specific suggested edits (up to 100 semicolon-delimited IDs). Supports filtering by date, sorting by creation/approval/rejection date, and pagination." }, { "slug": "STACK_EXCHANGE_GET_TAG_FAQ", "name": "Get Tag FAQ", "description": "Tool to retrieve frequently asked questions for a set of tags on Stack Exchange. Use when you need to find the most common or important questions for specific tags (max 5 tags)." }, { "slug": "STACK_EXCHANGE_GET_TAG_INFO", "name": "Get Tag Info", "description": "Tool to retrieve tag objects representing specified tags on a Stack Exchange site. Use when you need to get detailed information about specific tags, including usage count, synonyms, and activity." }, { "slug": "STACK_EXCHANGE_GET_TAG_SYNONYMS", "name": "Get Tag Synonyms", "description": "Tool to retrieve all synonyms that point to the specified tags on a Stack Exchange site. Use when you need to discover tag synonyms for specific tags (up to 20 per request)." }, { "slug": "STACK_EXCHANGE_GET_TAG_TOP_ANSWERERS", "name": "Get Tag Top Answerers", "description": "Tool to retrieve the top 30 answerers active in a single tag, of either all-time or the last 30 days. Use when you need to identify the most active or highest-scoring answerers for a specific tag on a Stack Exchange site." }, { "slug": "STACK_EXCHANGE_GET_TAG_TOP_ASKERS", "name": "Get Tag Top Askers", "description": "Tool to retrieve the top askers active in a single tag. Use when you need to find the most active users who ask questions in a specific tag, either for all-time or the last 30 days." }, { "slug": "STACK_EXCHANGE_GET_TAG_WIKIS", "name": "Get Tag Wikis", "description": "Tool to retrieve wiki content for specified tags on a Stack Exchange site. Use when you need detailed documentation about tags including body content, excerpts, and edit history. Note that not all tags have wikis." }, { "slug": "STACK_EXCHANGE_GET_USER_ANSWERS", "name": "Get User Answers", "description": "Tool to retrieve answers posted by specific users on a Stack Exchange site. Use when you need to list answers from one or more users, analyze their contributions, or filter by date/score ranges." }, { "slug": "STACK_EXCHANGE_GET_USER_ASSOCIATED_ACCOUNTS", "name": "Get User Associated Accounts", "description": "Tool to retrieve all Stack Exchange accounts associated with specified users by their account IDs. Use when you need to discover which Stack Exchange sites users participate in, along with their reputation, activity stats, and badges on each site." }, { "slug": "STACK_EXCHANGE_GET_USER_BADGES", "name": "Get User Badges", "description": "Tool to retrieve badges earned by specified users on a Stack Exchange site. Use when you need to fetch badge collections for one or more users, optionally filtered by date or sorted by rank/name/type/award date." }, { "slug": "STACK_EXCHANGE_GET_USER_COMMENTS", "name": "Get User Comments", "description": "Tool to retrieve comments posted by specified users on a Stack Exchange site. Use when you need to find all comments from specific users, analyze their comment activity, or track their contributions. Supports up to 100 semicolon-delimited user IDs at once. Can filter by date range, sort by creation date or votes, and paginate through results for users with many comments." }, { "slug": "STACK_EXCHANGE_GET_USER_COMMENTS_TO_USER", "name": "Get User Comments To User", "description": "Tool to retrieve comments that specific users have posted in reply to a single user. Use when you need to extract conversations between users, especially over time or across multiple posts on Stack Exchange." }, { "slug": "STACK_EXCHANGE_GET_USER_FAVORITES", "name": "Get User Favorites", "description": "Tool to retrieve the questions that users have favorited/bookmarked. Use when you need to view a user's favorite questions or analyze what questions users have bookmarked." }, { "slug": "STACK_EXCHANGE_GET_USER_FEATURED_QUESTIONS", "name": "Get User Featured Questions", "description": "Tool to retrieve questions with active bounties offered by specified users. Use when you need to check which questions specific users have placed bounties on." }, { "slug": "STACK_EXCHANGE_GET_USER_FULL_REPUTATION_HISTORY", "name": "Get User Full Reputation History", "description": "Tool to retrieve a user's full reputation history on a Stack Exchange site, including private events. Use when you need the complete reputation history with all event types. This method requires an access token with a scope containing \"private_info\"." }, { "slug": "STACK_EXCHANGE_GET_USER_INBOX", "name": "Get User Inbox", "description": "Tool to retrieve a user's inbox from Stack Exchange. Returns inbox items including comments, answers, questions, and chat messages directed at the specified user. Use when you need to check a specific user's notifications, mentions, or recent activity. Requires an access_token with 'read_inbox' scope." }, { "slug": "STACK_EXCHANGE_GET_USER_MENTIONS", "name": "Get User Mentions", "description": "Tool to retrieve comments that mention specific users on a Stack Exchange site. Use when you need to find where specific users have been mentioned in comments. A comment only counts as a mention if it is \"in reply to\" a user, and a comment can only be in reply to a single user." }, { "slug": "STACK_EXCHANGE_GET_USER_MERGE_HISTORY", "name": "Get User Merge History", "description": "Tool to retrieve account merge history for specified user account IDs across the Stack Exchange network. Returns records of merges involving the provided accounts. Use when you need to track account ID changes, map invalid account IDs to their current valid IDs, or confirm if an account_id is new to your application. This is a network-wide endpoint and does not require a 'site' parameter." }, { "slug": "STACK_EXCHANGE_GET_USER_NO_ANSWER_QUESTIONS", "name": "Get User No Answer Questions", "description": "Tool to retrieve questions asked by specified users that have zero undeleted answers. Use when you need to find unanswered questions from specific users on a Stack Exchange site. These questions are completely disjoint from unanswered or unaccepted questions which have at least one answer." }, { "slug": "STACK_EXCHANGE_GET_USER_NOTIFICATIONS", "name": "Get User Notifications", "description": "Tool to retrieve notifications for a specific Stack Exchange user by ID. Returns unread and read notifications including comments, answers, badges, and other activity. Requires an access_token with 'read_inbox' scope. Use when you need to check another user's notification feed or monitor their activity." }, { "slug": "STACK_EXCHANGE_GET_USER_POSTS", "name": "Get User Posts", "description": "Tool to retrieve posts (questions and answers) posted by specific users on a Stack Exchange site. Use when you need to list all posts from one or more users, analyze their contributions, or filter by date/score ranges." }, { "slug": "STACK_EXCHANGE_GET_USER_PRIVILEGES", "name": "Get User Privileges", "description": "Tool to retrieve privileges a specific user has on a Stack Exchange site. Use when you need to check what permissions or capabilities a user has earned based on their reputation. Applications are encouraged to calculate privileges themselves by comparing results from /privileges with user.user_type." }, { "slug": "STACK_EXCHANGE_GET_USER_QUESTIONS", "name": "Get User Questions", "description": "Tool to retrieve questions asked by specific users on a Stack Exchange site. Use when you need to analyze a user's question history, check their recent contributions, or compare question patterns across multiple users (up to 100 user IDs)." }, { "slug": "STACK_EXCHANGE_GET_USER_REPUTATION", "name": "Get User Reputation", "description": "Tool to retrieve reputation changes for users on a Stack Exchange site. Use when you need to track reputation history for specific users, including gains and losses from votes, accepts, and other reputation-affecting actions. Reputation changes are intentionally scrubbed to make it difficult to correlate votes on particular posts with user reputation changes." }, { "slug": "STACK_EXCHANGE_GET_USER_REPUTATION_HISTORY", "name": "Get User Reputation History", "description": "Tool to retrieve public reputation history for specified Stack Exchange users. Use when you need to track reputation changes over time, understand how users gained or lost reputation, or audit reputation events." }, { "slug": "STACK_EXCHANGE_GET_USERS_BY_IDS", "name": "Get Users By IDs", "description": "Tool to retrieve user profiles by their IDs from a Stack Exchange site. Use when you have obtained user IDs from other sources (e.g., /questions) and need detailed user information including reputation, badges, profile links, and activity statistics." }, { "slug": "STACK_EXCHANGE_GET_USER_SUGGESTED_EDITS", "name": "Get User Suggested Edits", "description": "Tool to retrieve suggested edits submitted by specified users on a Stack Exchange site. Use when you need to fetch suggested edits from specific users (up to 100 semicolon-delimited user IDs) with filtering by date, sorting by creation/approval/rejection date, and pagination support." }, { "slug": "STACK_EXCHANGE_GET_USER_TAGS", "name": "Get User Tags", "description": "Tool to retrieve tags that specified users are active in on a Stack Exchange site. Use when you need to fetch tag activity for specific user IDs, filter by date, or sort by popularity/activity/name." }, { "slug": "STACK_EXCHANGE_GET_USER_TIMELINE", "name": "Get User Timeline", "description": "Tool to retrieve a timeline of actions taken by specified users on a Stack Exchange site. Returns users' posts, edits, and earned badges in chronological order. Use when tracking activity history for specific users or monitoring their contributions across questions, answers, comments, badges, and edits." }, { "slug": "STACK_EXCHANGE_GET_USER_TOP_ANSWERS_IN_TAGS", "name": "Get User Top Answers In Tags", "description": "Tool to retrieve the top 30 answers a specific user has posted in response to questions with given tags. Use when you need to fetch a user's best answers filtered by tags (maximum 5 tags), sorted by activity, creation date, or votes." }, { "slug": "STACK_EXCHANGE_GET_USER_TOP_ANSWER_TAGS", "name": "Get User Top Answer Tags", "description": "Tool to retrieve a single user's top tags by answer score on Stack Exchange. Use when you need to discover which topics a user is most active in answering." }, { "slug": "STACK_EXCHANGE_GET_USER_TOP_QUESTIONS_IN_TAGS", "name": "Get User Top Questions In Tags", "description": "Tool to retrieve the top 30 questions a user has asked with the given tags. Use when you need to find a user's most successful or highly-voted questions in specific topic areas (limited to 5 tags maximum)." }, { "slug": "STACK_EXCHANGE_GET_USER_TOP_QUESTION_TAGS", "name": "Get User Top Question Tags", "description": "Tool to retrieve a single user's top tags by question score on a Stack Exchange site. Use when you need to analyze which tags a specific user has the most expertise in based on their question activity." }, { "slug": "STACK_EXCHANGE_GET_USER_TOP_TAGS", "name": "Get User Top Tags", "description": "Tool to retrieve a single user's top tags by combined question and answer score on a Stack Exchange site. Use when you need to discover a specific user's areas of expertise based on their participation in topics." }, { "slug": "STACK_EXCHANGE_GET_USER_UNACCEPTED_QUESTIONS", "name": "Get User Unaccepted Questions", "description": "Tool to retrieve questions asked by specified users that have at least one answer but no accepted answer. Use when you need to find unresolved questions from specific users or track which of their questions still need an accepted answer." }, { "slug": "STACK_EXCHANGE_GET_USER_UNANSWERED_QUESTIONS", "name": "Get User Unanswered Questions", "description": "Tool to retrieve questions asked by specific users that the site considers unanswered. Use when you need to find a user's questions that lack upvoted or accepted answers." }, { "slug": "STACK_EXCHANGE_GET_USER_UNREAD_INBOX", "name": "Get User Unread Inbox", "description": "Tool to retrieve unread items in a specific user's Stack Exchange inbox. Use when you need to check for new notifications, comments, answers, or other inbox activity for a particular user. This method requires an access token with the \"read_inbox\" scope." }, { "slug": "STACK_EXCHANGE_GET_USER_UNREAD_NOTIFICATIONS", "name": "Get User Unread Notifications", "description": "Tool to retrieve unread notifications for a specific user on Stack Exchange. Use when you need to check unread activity notifications, badge awards, comment replies, or other alerts for a particular user. Requires an access_token with 'read_inbox' scope." }, { "slug": "STACK_EXCHANGE_LIST_ANSWERS", "name": "List Answers", "description": "Tool to retrieve all undeleted answers from a Stack Exchange site. Use when you need to list recent answers, most voted answers, or apply date/score filters across the entire site." }, { "slug": "STACK_EXCHANGE_LIST_BADGE_RECIPIENTS", "name": "List Badge Recipients", "description": "Tool to retrieve recently awarded badges from a Stack Exchange site. Use when you need to see recent badge activity, track specific badge awards, or analyze badge distribution over time. As these badges have been awarded, they will have the user property set." }, { "slug": "STACK_EXCHANGE_LIST_BADGES", "name": "List Badges", "description": "Tool to retrieve all badges available in a Stack Exchange site. Use when you need to browse available badges, search for specific badges by name, or filter by rank (gold/silver/bronze) or type (named/tag-based)." }, { "slug": "STACK_EXCHANGE_LIST_ELECTED_MODERATORS", "name": "List Elected Moderators", "description": "Tool to retrieve users who have moderator powers and were actually elected on a Stack Exchange site. Use when you need to get the list of elected moderators, excluding Stack Exchange Inc. employees unless they were elected before employment." }, { "slug": "STACK_EXCHANGE_LIST_ERRORS", "name": "List Errors", "description": "Tool to retrieve the various error codes that can be produced by the Stack Exchange API. Use when you need to discover, document, or test error handling, or to understand what error codes mean." }, { "slug": "STACK_EXCHANGE_LIST_FEATURED_QUESTIONS", "name": "List Featured Questions", "description": "Tool to retrieve all questions with active bounties in the system. Use when you need to find questions with bounties, filter by tags, or sort by activity/creation/votes." }, { "slug": "STACK_EXCHANGE_LIST_MODERATOR_ONLY_TAGS", "name": "List Moderator Only Tags", "description": "Tool to retrieve tags that only moderators can use on a Stack Exchange site. Use when you need to discover moderator-only tags, filter by name substring, or sort by popularity/activity/name." }, { "slug": "STACK_EXCHANGE_LIST_MODERATORS", "name": "List Moderators", "description": "Tool to retrieve users who can exercise moderation powers on a Stack Exchange site. Use when you need to identify site moderators, including Stack Exchange employees granted moderation abilities." }, { "slug": "STACK_EXCHANGE_LIST_NAMED_BADGES", "name": "List Named Badges", "description": "Tool to retrieve all explicitly named badges from a Stack Exchange site. Use when you need to discover available badges, filter badges by name, or rank badges by type (gold, silver, bronze). Named badges are general badges awarded site-wide, as opposed to tag-based badges." }, { "slug": "STACK_EXCHANGE_LIST_NO_ANSWER_QUESTIONS", "name": "List No Answer Questions", "description": "Tool to retrieve questions that have received no answers from a Stack Exchange site. Use when you need to find unanswered questions across the site, optionally filtered by tags, dates, or score." }, { "slug": "STACK_EXCHANGE_LIST_POSTS", "name": "List Posts", "description": "Tool to retrieve all posts (questions and answers) from a Stack Exchange site. Use when you need to list recent posts across all content types, most voted posts, or apply date/score filters across the entire site. This is the union of questions and answers, returning common fields for both." }, { "slug": "STACK_EXCHANGE_LIST_PRIVILEGES", "name": "List Privileges", "description": "Tool to retrieve all earnable privileges on a Stack Exchange site. Use when you need to discover what abilities users can earn based on reputation, including the reputation thresholds required for each privilege." }, { "slug": "STACK_EXCHANGE_LIST_REQUIRED_TAGS", "name": "List Required Tags", "description": "Tool to retrieve tags found on a site that fulfill required tag constraints on questions. Use when you need to discover which tags are required for certain question types on a Stack Exchange site." }, { "slug": "STACK_EXCHANGE_LIST_SUGGESTED_EDITS", "name": "List Suggested Edits", "description": "Tool to retrieve all suggested edits in a Stack Exchange site. Use when you need to list all pending, approved, or rejected edit suggestions with filtering by date range, sort by creation/approval/rejection date, and paginate through results." }, { "slug": "STACK_EXCHANGE_LIST_TAG_BADGES", "name": "List Tag Badges", "description": "Returns badges awarded for participation in specific tags on Stack Exchange sites. Use when you need to discover tag-specific badges (like language or topic badges), filter badges by rank (gold/silver/bronze), or search for badges by name." }, { "slug": "STACK_EXCHANGE_LIST_TAGS", "name": "List Tags", "description": "Tool to retrieve tags found on a Stack Exchange site. Use when you need to browse available tags, search for tags by name substring, or filter by popularity, activity, or alphabetically." }, { "slug": "STACK_EXCHANGE_LIST_TAG_SYNONYMS", "name": "List Tag Synonyms", "description": "Tool to retrieve all tag synonyms found on a Stack Exchange site. Use when you need to discover which tags are synonyms of other tags (e.g., 'js' -> 'javascript'). For synonyms of specific tags, prefer using the get tags by tags endpoint." }, { "slug": "STACK_EXCHANGE_LIST_UNANSWERED_QUESTIONS", "name": "List Unanswered Questions", "description": "Tool to retrieve questions the site considers to be unanswered. Use when you need to find questions that lack upvoted answers. Note: a question must have at least one upvoted answer to be considered answered, so questions with only non-upvoted answers will appear in results." }, { "slug": "STACK_EXCHANGE_LIST_UNANSWERED_QUESTIONS_MY_TAGS", "name": "List Unanswered Questions My Tags", "description": "Tool to retrieve unanswered questions within the authenticated user's favorite or frequented tags. Use when you need to find questions the site considers unanswered that match the user's tag interests." }, { "slug": "STACK_EXCHANGE_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all users on a Stack Exchange site. Use when you need to browse users on a site, search for users by name substring, or filter by reputation, creation date, or modification date with sorting options." }, { "slug": "STACK_EXCHANGE_RENDER_ANSWER", "name": "Render Answer", "description": "Tool to render a preview of an answer given its body and the question it's on. Use when you need to see how an answer will look after markdown is converted to HTML without actually posting it to Stack Exchange." }, { "slug": "STACK_EXCHANGE_SEARCH_ADVANCED", "name": "Advanced Search", "description": "Tool to search a Stack Exchange site for questions matching advanced criteria. Use when you need to search with complex filters like accepted answers, closed status, body text, title text, user filters, or view counts. Supports free-form text search and multiple tag filters." }, { "slug": "STACK_EXCHANGE_SEARCH_EXCERPTS", "name": "Search Excerpts", "description": "Tool to search a Stack Exchange site for items matching given criteria with excerpt snippets. Use when you need search results with highlighted excerpts showing matching text from questions and answers." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "OAuth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "no_expiry,read_inbox,private_info" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "botbaba", "name": "Botbaba", "logo": "https://logos.composio.dev/api/botbaba", "description": "Botbaba provides APIs for building and managing chatbots, including conversational AI and messaging integrations.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOTBABA_CART_CREATION_EVENT_SIMULATOR", "name": "Shopify Cart Creation Simulator", "description": "Tool to simulate a Shopify cart creation webhook payload. Use when generating test payloads for BOTBABA_CART_CREATION_SHOPIFY_WEBHOOK." }, { "slug": "BOTBABA_CART_CREATION_SHOPIFY_WEBHOOK", "name": "Cart Creation Shopify Webhook", "description": "Tool to receive Shopify Cart Creation webhooks. Use when configuring Shopify webhook for Cart Creation events and forwarding the payload to Botbaba. Must be called upon receiving Shopify payload." }, { "slug": "BOTBABA_CART_UPDATE_SHOPIFY_WEBHOOK", "name": "Cart Update Shopify Webhook", "description": "Tool to forward Shopify cart update events to BotBaba. Use when processing Shopify Cart Update webhook after configuring the webhook in your store." }, { "slug": "BOTBABA_CHECKOUT_CREATION_SHOPIFY_WEBHOOK", "name": "Shopify Checkout Creation Webhook Receiver", "description": "Tool to receive Shopify checkout creation webhook events. Use when configuring your Shopify store to notify BotBaba of checkout creation events." }, { "slug": "BOTBABA_CHECKOUT_UPDATE_SHOPIFY_WEBHOOK", "name": "Checkout Update Shopify Webhook", "description": "Tool to forward Shopify checkout/update events to Botbaba. Use when handling Shopify checkout update notifications." }, { "slug": "BOTBABA_DELETE_BROADCAST", "name": "Delete a broadcast campaign", "description": "Tool to delete a broadcast campaign. Use when you need to permanently remove a Botbaba broadcast by its ID after confirming it exists." }, { "slug": "BOTBABA_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact. Use when you have the contact ID and want to remove it from Botbaba." }, { "slug": "BOTBABA_DELETE_FLOW", "name": "Delete a conversation flow", "description": "Tool to delete a conversation flow. Use when you need to permanently remove a Botbaba flow by its ID after confirming it exists." }, { "slug": "BOTBABA_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag. Use when you have a tag ID and want to remove it from Botbaba. Tries multiple known Botbaba endpoint variations to improve compatibility across deployments." }, { "slug": "BOTBABA_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a message template. Use when you have the template ID and want to remove it from Botbaba. Tries multiple known Botbaba endpoint variations to improve compatibility across deployments." }, { "slug": "BOTBABA_DELETE_WEBHOOK", "name": "Delete a webhook subscription", "description": "Tool to delete a webhook subscription. Use when you have the webhook ID and want to remove it from Botbaba." }, { "slug": "BOTBABA_EXECUTE_BOT_ACTION", "name": "Execute Bot Action", "description": "Tool to execute a bot action or workflow. Use when triggering automated actions or workflows for a specific conversation." }, { "slug": "BOTBABA_EXECUTE_BOT_ACTION_BY_USER", "name": "Execute Bot Action By User", "description": "Tool to execute a bot action for specific users. Use when you need to trigger actions for one or multiple bot users." }, { "slug": "BOTBABA_GET_BOT_WIDGET_SETTINGS", "name": "Get Bot Widget Settings", "description": "Tool to retrieve widget configuration settings for a bot. Use when you need to check or verify the widget display settings, styling, or behavior configuration for a specific bot." }, { "slug": "BOTBABA_GET_BROADCAST", "name": "Get Broadcast", "description": "Tool to retrieve details of a specific broadcast. Use when you need to confirm broadcast settings or status after creating or scheduling a broadcast." }, { "slug": "BOTBABA_GET_CONTACT", "name": "Get BotBaba Contact", "description": "Tool to fetch a BotBaba contact by its ID. Use when you need to retrieve the full details of a contact after creation or update." }, { "slug": "BOTBABA_GET_CONTACT_ANALYTICS", "name": "Get Contact Analytics", "description": "Tool to retrieve analytics data for contacts. Use when you need summary metrics (e.g., new or active contacts) over a date range. Note: BotBaba API does not have a dedicated contact analytics endpoint. This action aggregates data from messages and tags to provide contact interaction metrics." }, { "slug": "BOTBABA_GET_FILENAME", "name": "Get Filename from Path", "description": "Tool to extract the filename from a file path. Use when you need to parse a file path and retrieve just the filename component." }, { "slug": "BOTBABA_GET_FLOW", "name": "Get Flow", "description": "Tool to retrieve details of a specific flow. Use when you need the full configuration for a given flow ID." }, { "slug": "BOTBABA_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve status of a specific message. Use after sending a message to check its delivery status." }, { "slug": "BOTBABA_GET_MESSAGE_ANALYTICS", "name": "Get Message Analytics", "description": "Tool to retrieve analytics data for a specific message. Use after sending a message to analyze its delivery and engagement statistics." }, { "slug": "BOTBABA_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve details of a specific template. Use when you need to confirm template details before sending a message using a template." }, { "slug": "BOTBABA_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook. Use when you need to confirm webhook configuration before debugging event deliveries." }, { "slug": "BOTBABA_LIST_BROADCASTS", "name": "List Broadcasts", "description": "Tool to list all broadcast campaigns. Use when retrieving BotBaba broadcast campaigns with pagination." }, { "slug": "BOTBABA_LIST_FLOWS", "name": "List Flows", "description": "Tool to list all conversation flows with their IDs and metadata. Use when you need to retrieve all available flows from your BotBaba account." }, { "slug": "BOTBABA_LIST_TAGS", "name": "List Tags", "description": "Tool to list all tags. Use when you need to retrieve all tags available in your Botbaba account." }, { "slug": "BOTBABA_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a paginated list of templates. Use when you need to browse or manage existing templates; supports optional search filtering." }, { "slug": "BOTBABA_LIST_WEBHOOK_EVENT_TYPES", "name": "List Webhook Event Types", "description": "Tool to list available webhook event types. Use before creating or updating a webhook to ensure you subscribe to valid event identifiers." }, { "slug": "BOTBABA_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all registered webhooks. Use when you need to retrieve and manage webhook subscriptions in your BotBaba account." }, { "slug": "BOTBABA_ORDER_CANCELLATION_SHOPIFY_WEBHOOK", "name": "Receive Shopify Order Cancellation Webhook", "description": "Tool to receive Shopify order cancellation webhooks. Use when handling Shopify orders/cancelled events from your store." }, { "slug": "BOTBABA_ORDER_FULFILLMENT_EVENT_SIMULATOR", "name": "Order Fulfillment Simulator", "description": "Tool to simulate a Shopify order fulfillment webhook payload. Use when generating test payloads for BOTBABA_ORDER_FULFILLMENT_SHOPIFY_WEBHOOK." }, { "slug": "BOTBABA_ORDER_FULFILLMENT_SHOPIFY_WEBHOOK", "name": "Order Fulfillment Shopify Webhook", "description": "Tool to receive Shopify Order Fulfillment webhooks. Use when handling Shopify fulfillments/create or fulfillments/update events from your store. This action acknowledges receipt of the webhook and extracts key fulfillment details." }, { "slug": "BOTBABA_ORDER_PAYMENT_SHOPIFY_WEBHOOK", "name": "Order Payment Shopify Webhook", "description": "Tool to receive Shopify Order Payment webhooks. Use when handling Shopify orders/paid events from your store. This action acknowledges receipt of the webhook and extracts key payment details from the order." }, { "slug": "BOTBABA_SEND_WHATSAPP_TEMPLATE_MESSAGES", "name": "Send WhatsApp Template Message", "description": "Tool to forward/send a WhatsApp template message via Botbaba. Use after copying the full message JSON from the Template UI." }, { "slug": "BOTBABA_SHOPIFY_CHECKOUT_CREATION_EVENT_SIMULATOR", "name": "Shopify Checkout Creation Simulator", "description": "Tool to simulate a Shopify checkout creation webhook payload. Use when generating test payloads for BOTBABA_CHECKOUT_CREATION_SHOPIFY_WEBHOOK." }, { "slug": "BOTBABA_SHOPIFY_CHECKOUT_UPDATE_EVENT_SIMULATOR", "name": "Shopify Checkout Update Simulator", "description": "Tool to simulate a Shopify checkout update webhook payload. Use when generating test payloads for BOTBABA_CHECKOUT_UPDATE_SHOPIFY_WEBHOOK." }, { "slug": "BOTBABA_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact. Use when needing to modify contact details after confirming contact_id." }, { "slug": "BOTBABA_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag. Use when renaming a tag after confirming its tag ID." }, { "slug": "BOTBABA_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing message template. Use when you need to modify template details after confirming its template ID. Tries multiple base URLs, HTTP methods, and path variants to be resilient across different Botbaba deployments." }, { "slug": "BOTBABA_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook. Use when modifying webhook URL, events, or activation status after confirming the webhook ID." }, { "slug": "BOTBABA_WA_GUPSHUP_EVENT_SIMULATOR", "name": "Gupshup WhatsApp Webhook Event Simulator", "description": "Tool to simulate Gupshup WhatsApp webhook events. Use when testing BOTBABA_WA_GUPSHUP_MESSAGE dispatcher with different event types." }, { "slug": "BOTBABA_WA_GUPSHUP_MESSAGE", "name": "Forward Gupshup Webhook Message", "description": "Tool to forward inbound WhatsApp webhook events from Gupshup to Botbaba. Use when handling the POST callback from Gupshup's WhatsApp integration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "botbaba_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Botbaba API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twitch", "name": "Twitch", "logo": "https://logos.composio.dev/api/twitch", "description": "Twitch is a live streaming platform popular with gamers, creators, and communities, offering real-time interaction and monetization through subscriptions and donations", "category": "video & audio", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "twitch_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user:read:email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "datadog", "name": "Datadog", "logo": "https://logos.composio.dev/api/datadog", "description": "Datadog offers monitoring, observability, and security for cloud-scale applications, unifying metrics, logs, and traces to help teams detect issues and optimize performance", "category": "server monitoring", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 43, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATADOG_CREATE_DASHBOARD", "name": "Create Dashboard", "description": "Create a dashboard in Datadog. Dashboards provide customizable visualizations for monitoring your infrastructure, applications, and business metrics in a unified view." }, { "slug": "DATADOG_CREATE_DOWNTIME", "name": "Create downtime", "description": "Creates a new downtime in Datadog to suppress alerts during maintenance windows or planned outages. Useful for preventing false alarms during deployments or maintenance." }, { "slug": "DATADOG_CREATE_EVENT", "name": "Create event", "description": "Creates a new event in Datadog. Events are useful for tracking deployments, outages, configuration changes, and other important occurrences." }, { "slug": "DATADOG_CREATE_MONITOR", "name": "Create monitor", "description": "Creates a new Datadog monitor to track metrics, logs, or other data sources with configurable alerting thresholds and notifications." }, { "slug": "DATADOG_CREATE_SLO", "name": "Create SLO", "description": "Create a Service Level Objective (SLO) in Datadog. SLOs help you define and track reliability targets for your services, enabling data-driven decisions about service quality and reliability investments." }, { "slug": "DATADOG_CREATE_SYNTHETIC_API_TEST", "name": "Create Synthetic API Test", "description": "Create a synthetic API test in Datadog. Creates a new synthetic API test that continuously monitors API endpoints from multiple locations worldwide. Useful for proactive monitoring of API uptime, performance, and functionality." }, { "slug": "DATADOG_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a webhook in Datadog. Registers a named destination endpoint; each monitor must explicitly reference the webhook by name in its message or notification settings for alerts to be delivered." }, { "slug": "DATADOG_DELETE_DASHBOARD", "name": "Delete Dashboard", "description": "Delete a dashboard in Datadog. Permanently removes a dashboard from your organization. This action cannot be undone. Use with caution." }, { "slug": "DATADOG_DELETE_MONITOR", "name": "Delete monitor", "description": "Deletes a Datadog monitor permanently. Use with caution as this action cannot be undone." }, { "slug": "DATADOG_GET_DASHBOARD", "name": "Get Dashboard", "description": "Get a specific dashboard from Datadog. Retrieves detailed information about a dashboard including its widgets, layout, template variables, and metadata." }, { "slug": "DATADOG_GET_MONITOR", "name": "Get monitor", "description": "Retrieves detailed information about a specific Datadog monitor, including its current state, configuration, and any active downtimes." }, { "slug": "DATADOG_GET_SERVICE_DEPENDENCIES", "name": "Get Service Dependencies", "description": "Get service dependency mapping from Datadog APM. This action retrieves the dependency graph for a specific service, showing both upstream services (that call this service) and downstream services (that this service calls). It's essential for: - Understanding the blast radius of service failures - Identifying critical dependencies during incidents - Analyzing service communication patterns - Planning architectural changes - Monitoring service health in context The dependency information includes call rates, error rates, and latency metrics to help assess the health of service relationships. Requires APM instrumentation on the target service; uninstrumented services return empty or incomplete dependency data." }, { "slug": "DATADOG_GET_SYNTHETICS_LOCATIONS", "name": "Get Synthetics Locations", "description": "Tool to retrieve all available public and private locations for Synthetic tests in Datadog. Use when you need a list of location identifiers for creating or managing synthetic tests." }, { "slug": "DATADOG_GET_TAGS", "name": "Get host tags", "description": "Retrieves all tags associated with a specific host in Datadog. Useful for understanding host metadata and organizing infrastructure." }, { "slug": "DATADOG_GET_TRACE_BY_ID", "name": "Get Trace by ID", "description": "DEPRECATED: Use DATADOG_SEARCH_TRACES instead. Get detailed information about a specific trace by its ID. This action retrieves comprehensive details about a distributed trace, including all spans, timing information, errors, and metadata. It's essential for: - Deep diving into specific request flows during incidents - Understanding the complete journey of a problematic request - Analyzing performance bottlenecks in detail - Correlating errors across services - Debugging complex distributed system issues The trace ID is typically obtained from logs, error reports, or trace search results. Use targeted time windows to avoid rate limiting; prefer narrow ranges over full 15-day spans when the approximate trace time is known." }, { "slug": "DATADOG_GET_USAGE_SUMMARY", "name": "Get usage summary", "description": "Retrieves usage summary information from Datadog including API calls, hosts, containers, and other billable usage metrics. Useful for cost monitoring and usage analysis. Months with no activity return empty payloads on success; absent data is expected, not an error." }, { "slug": "DATADOG_LIST_ALL_TAGS", "name": "List All Tags", "description": "List all tags from Datadog. Tags help organize and filter your infrastructure and applications. This action shows all tags in use across your organization." }, { "slug": "DATADOG_LIST_API_KEYS", "name": "List API Keys", "description": "List API keys in Datadog. Retrieves all API keys in the organization for security auditing, access management, and key rotation planning. Helps maintain security posture by tracking key usage and ownership. Response contains sensitive key metadata (names, owners, last-used timestamps); restrict tool access to authorized personnel and handle output securely." }, { "slug": "DATADOG_LIST_APM_SERVICES", "name": "List APM Services", "description": "List APM services from Datadog. Application Performance Monitoring (APM) provides deep visibility into your applications, helping you track performance, errors, and dependencies." }, { "slug": "DATADOG_LIST_AWS_INTEGRATION", "name": "List AWS Integration", "description": "List AWS integrations in Datadog. Retrieves all configured AWS account integrations, showing which AWS accounts are monitored by Datadog and their configuration settings. Useful for cloud infrastructure management and ensuring comprehensive monitoring coverage." }, { "slug": "DATADOG_LIST_DASHBOARDS", "name": "List dashboards", "description": "Lists all Datadog dashboards with basic information. Useful for dashboard management and getting an overview of available dashboards." }, { "slug": "DATADOG_LIST_EVENTS", "name": "List events", "description": "Lists events from Datadog within a specified time range. Events track important occurrences like deployments, outages, and configuration changes. Combining multiple filters (tags, sources, priority) with narrow time ranges may return empty results even when events exist — start with broad filters and narrow incrementally. Large time ranges with minimal filtering can return very high event volumes; tune tags, sources, and start/end before processing results." }, { "slug": "DATADOG_LIST_HOSTS", "name": "List hosts", "description": "Lists all hosts in your Datadog infrastructure with detailed information including metrics, tags, and status. Useful for infrastructure monitoring and management." }, { "slug": "DATADOG_LIST_INCIDENTS", "name": "List Incidents", "description": "List incidents from Datadog. Incident Management helps you track, manage, and resolve incidents efficiently with comprehensive timeline and impact tracking." }, { "slug": "DATADOG_LIST_LOG_INDEXES", "name": "List Log Indexes", "description": "Tool to retrieve a list of all log indexes configured in Datadog, including their names and configurations. Use before DATADOG_SEARCH_LOGS to identify the correct index name; searching without specifying the right index can hide valid logs and increase usage costs across high-volume indexes." }, { "slug": "DATADOG_LIST_METRICS", "name": "List active metrics", "description": "Discover metric names by listing actively reporting metrics since a given timestamp. Use when you need to find what metrics exist before querying timeseries data with DATADOG_QUERY_METRICS." }, { "slug": "DATADOG_LIST_MONITORS", "name": "List monitors", "description": "Get all monitor details. This endpoint allows you to retrieve information about all monitors configured in your organization. You can filter by group states, name, tags, and use pagination to manage large result sets." }, { "slug": "DATADOG_LIST_ROLES", "name": "List Roles", "description": "List roles from Datadog organization. Roles define sets of permissions that control what users can do within your Datadog organization." }, { "slug": "DATADOG_LIST_SERVICE_CHECKS", "name": "List service checks", "description": "Lists service checks from Datadog. Service checks are status checks that track the health of your services and infrastructure components." }, { "slug": "DATADOG_LIST_SL_OS", "name": "List SLOs", "description": "List Service Level Objectives (SLOs) from Datadog. Service Level Objectives help you track the reliability and performance of your services by setting measurable targets for key metrics." }, { "slug": "DATADOG_LIST_SYNTHETICS", "name": "List Synthetics Tests", "description": "List Synthetics tests from Datadog. Synthetics monitoring allows you to proactively monitor your applications and APIs by simulating user interactions and API calls from various locations." }, { "slug": "DATADOG_LIST_USERS", "name": "List Users", "description": "List users from Datadog organization. User management allows you to see team members, their roles, and access levels within your Datadog organization." }, { "slug": "DATADOG_LIST_WEBHOOKS", "name": "List Webhooks", "description": "List webhooks from Datadog. Webhooks allow you to send notifications to external services when monitors trigger, enabling integration with your workflows." }, { "slug": "DATADOG_MUTE_MONITOR", "name": "Mute Monitor", "description": "Mute a monitor in Datadog. Temporarily silences alerts from a monitor, which is useful during maintenance windows, deployments, or when investigating known issues to prevent alert fatigue." }, { "slug": "DATADOG_QUERY_METRICS", "name": "Query metrics", "description": "Queries Datadog metrics and returns time series data. Useful for retrieving historical metric data, creating custom dashboards, or building reports." }, { "slug": "DATADOG_SEARCH_LOGS", "name": "Search logs", "description": "Searches Datadog logs with advanced filtering capabilities. IMPORTANT NOTES: - Sort parameter is NOT supported by the Datadog Logs API and will cause errors - Time parameters must be in milliseconds (13-digit UNIX timestamps) - Limit parameter is passed as string to the API - Log content is nested under 'content' field in API response Useful for troubleshooting, monitoring application behavior, and analyzing log patterns." }, { "slug": "DATADOG_SEARCH_SPANS_ANALYTICS", "name": "Search Spans Analytics", "description": "Search and analyze span data with aggregations in Datadog. This action uses the Datadog Spans Analytics API to perform advanced queries and aggregations on trace span data. It's essential for: - Analyzing error rates and latency patterns - Understanding service dependencies and bottlenecks - Root cause analysis during incidents - Performance monitoring and optimization The API supports complex queries with grouping, filtering, and various aggregation functions similar to log analytics. The request body must conform to the `aggregate_request` schema; schema violations return \"Invalid type. Expected 'aggregate_request'\". If `filter` or `compute` cannot satisfy this schema, use basic trace search instead." }, { "slug": "DATADOG_SEARCH_TRACES", "name": "Search Traces", "description": "Search for traces in Datadog APM. This action allows you to search for distributed traces across your services. It's essential for: - Finding specific request flows during incident investigation - Analyzing performance bottlenecks across services - Understanding error propagation through your system - Correlating user requests with backend operations Traces provide the complete picture of a request as it travels through your distributed system, making them crucial for root cause analysis." }, { "slug": "DATADOG_SUBMIT_METRICS", "name": "Submit metrics", "description": "Submits custom metrics to Datadog. Useful for sending application-specific metrics, business KPIs, or custom performance indicators." }, { "slug": "DATADOG_UNMUTE_MONITOR", "name": "Unmute Monitor", "description": "Unmute a monitor in Datadog. Re-enables alerts from a previously muted monitor, returning it to normal monitoring and alerting behavior. Alerting resumes immediately upon call, so ensure maintenance or issue resolution is fully complete before unmuting to avoid alert storms. Use this after maintenance windows or issue resolution to resume monitoring." }, { "slug": "DATADOG_UPDATE_DASHBOARD", "name": "Update Dashboard", "description": "Update a dashboard in Datadog. Updates an existing dashboard with new configuration, widgets, or layout while preserving its identity and creation metadata." }, { "slug": "DATADOG_UPDATE_HOST_TAGS", "name": "Update host tags", "description": "Updates tags for a specific host in Datadog. This replaces all existing tags from the specified source with the new tags provided." }, { "slug": "DATADOG_UPDATE_MONITOR", "name": "Update monitor", "description": "Updates an existing Datadog monitor with new configuration, thresholds, or notification settings. Only specified fields will be updated." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "datadog_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "dashboards_read,dashboards_write,monitors_read,monitors_write,metrics_read,timeseries_query,events_read,logs_read_data,users_read,incidents_read" } ] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Datadog Site Region", "type": "string", "description": "Your Datadog site, shown in your browser address bar: app.datadoghq.com → us1, us5.datadoghq.com → us5, app.datadoghq.eu → eu. Most accounts can keep the default us1.", "required": true, "default": "us1" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "datadog_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Datadog Site", "type": "string", "description": "Your Datadog site, shown in your browser address bar: app.datadoghq.com → us1, us5.datadoghq.com → us5, app.datadoghq.eu → eu. Most accounts can keep the default us1.", "required": true, "default": "us1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Datadog API key — a 32-character code that identifies your organization. Find or create one in Datadog under Organization Settings → API Keys.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Application Key", "type": "string", "description": "Your Datadog Application key — a 40-character code, separate from the API key. Create or copy one in Datadog under Organization Settings → Application Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "waboxapp", "name": "Waboxapp", "logo": "https://logos.composio.dev/api/waboxapp", "description": "Waboxapp integrates WhatsApp messaging into CRM systems, allowing businesses to centralize customer communications for sales and support", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WABOXAPP_WEBHOOK_ACK_EVENT", "name": "Waboxapp Webhook ACK Event", "description": "Tool to process incoming message acknowledgment events. Use when waboxapp posts real-time deliver/read statuses to your webhook endpoint. Validates token before processing." }, { "slug": "WABOXAPP_WEBHOOK_MESSAGE_EVENT", "name": "Receive incoming WABOXAPP message event", "description": "Tool to receive real-time incoming WhatsApp message events via webhook. Use after configuring your webhook URL to handle WABOXAPP POST form payloads." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "waboxapp_app_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "APP Token", "type": "string", "description": "Your enabled Waboxapp APP token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "echtpost", "name": "Echtpost", "logo": "https://logos.composio.dev/api/echtpost", "description": "EchtPost facilitates secure digital communication, encryption, and data privacy, providing a reliable channel for sending confidential documents and messages", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ECHTPOST_LIST_TEMPLATES", "name": "List templates", "description": "This tool retrieves a list of all available templates in the Echtpost account. Templates serve as the base design for postcards and are essential for creating cards. The action operates independently using only an authentication token and returns detailed template information including id, name, description, preview URL, type, and creation time. This action is crucial for viewing templates before creating cards and obtaining the necessary template IDs for subsequent actions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "echtpost_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key for EchtPost. Generate one at www.echtpost.de.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_1msg", "name": "1msg", "logo": "https://logos.composio.dev/api/_1msg", "description": "Tools & automation for WhatsApp Business API.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "_1msg_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "Channel ID", "type": "string", "description": "Sign in and get your Channel ID from your Dev Toolkit at https://my.1msg.io/testing/send-message", "required": true, "default": null }, { "name": "generic_token", "displayName": "User Token", "type": "string", "description": "Sign in and get your User Token from your Profile at https://my.1msg.io/profile", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_1password", "name": "1password", "logo": "https://logos.composio.dev/api/1password", "description": "Password manager and digital vault for secure credential storage and team collaboration", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "_1PASSWORD_CREATE_ITEM", "name": "Create Item", "description": "Creates a new item in a 1Password vault." }, { "slug": "_1PASSWORD_DELETE_ITEM", "name": "Delete Item", "description": "Permanently deletes an item from a 1Password vault." }, { "slug": "_1PASSWORD_GET_ITEM", "name": "Get Item", "description": "Retrieves a specific item from a vault, including all fields and secrets." }, { "slug": "_1PASSWORD_LIST_ITEMS", "name": "List Items", "description": "Lists all items in a given vault." }, { "slug": "_1PASSWORD_LIST_VAULTS", "name": "List Vaults", "description": "Lists all vaults the service account has access to." }, { "slug": "_1PASSWORD_UPDATE_ITEM", "name": "Update Item", "description": "Updates an existing item's title or field values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onepassword_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "For Connect Server: your self-hosted server URL (e.g., https://connect.example.com). For Events API: https://events.1password.com, https://events.ent.1password.com, https://events.1password.ca, or https://events.1password.eu based on your account server.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Bearer Token", "type": "string", "description": "Service Account Token (ops_* prefix), Connect Server Access Token, or Events API Bearer Token. Get it from your 1Password account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_21risk", "name": "21risk", "logo": "https://logos.composio.dev/api/_21risk", "description": "21RISK is a web application that simplifies working with checklists, audits, and actions, facilitating compliance and risk management processes.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "_21RISK_GET_COMPLIANCE", "name": "Get Compliance", "description": "Tool to retrieve compliance data for sites, categories, or questions. Use when you need OData-based compliance data for analytics or reporting." }, { "slug": "_21RISK_GET_ITEMS", "name": "Get Items (BETA)", "description": "Tool to retrieve items (BETA) from the 21RISK OData API. Use when you need a filtered and paged list of items for analytics and reporting. Example: GET_ITEMS($filter=\"Item Cost gt 100\", $top=50)." }, { "slug": "_21RISK_GET_ITEMS_PER_MONTH", "name": "Get Items Per Month", "description": "Tool to retrieve fact table data for ItemsPerMonth, one row per question per site per month. Use when querying monthly item data with OData parameters ($filter, $top, $skip, $select, maxPageSizeInMb)." }, { "slug": "_21RISK_GET_ORGANIZATIONS", "name": "Get Organizations", "description": "Tool to retrieve organizations from the 21RISK OData API. Use when you need to list, filter, or paginate organizations via OData parameters after authentication is confirmed." }, { "slug": "_21RISK_GET_PROPERTIES", "name": "Get Properties", "description": "Tool to fetch a list of properties related to sites, including COPE information and other relevant data. Use when you need property insurance details via OData API after authentication." }, { "slug": "_21RISK_GET_REPORTS", "name": "Get Reports", "description": "Tool to retrieve audit reports, including draft, published, and scheduled reports. Use when you need a paginated list of reports with optional OData filtering." }, { "slug": "_21RISK_GET_RISKMODEL_CATEGORIES", "name": "Get RiskModel Categories", "description": "Tool to retrieve risk model categories for grouping questions and compliance checks. Use when you need to filter, select, or paginate risk model categories via OData parameters ($filter, $select, $orderby, $top, $skip, $count)." }, { "slug": "_21RISK_GET_RISK_MODELS", "name": "Get Risk Models", "description": "Tool to retrieve risk models used for audits and compliance. Use when you need to list available risk models with optional OData queries." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "21risk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "21RISK API Key", "type": "string", "description": "The API key generated from 21RISK's Account Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_2chat", "name": "2chat", "logo": "https://logos.composio.dev/api/_2chat", "description": "2Chat provides a programmable API for integrating WhatsApp and other text channels, enabling developers to send and receive messages, manage groups, and automate workflows.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "_2CHAT_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in your 2Chat account. Use after gathering and verifying first name and at least one contact detail (email, phone, or address)." }, { "slug": "_2CHAT_GET_API_USAGE_INFO", "name": "Get API Usage Info", "description": "Tool to retrieve current API usage and account information. Use when you need to monitor your remaining quotas before sending more requests." }, { "slug": "_2CHAT_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list all contacts in your 2Chat account. Use when you need to retrieve your contact list after confirming your account connection." }, { "slug": "_2CHAT_LIST_WEBHOOKS", "name": "List Webhook Subscriptions", "description": "List all configured webhook subscriptions for WhatsApp and phone call events. Use this when you need to audit, review, or retrieve UUIDs of your active webhook subscriptions. Returns details including webhook UUID, event type, channel UUID, callback URL, and creation timestamp." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "2chat_api_key_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "2Chat API Key", "type": "string", "description": "Your 2Chat API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_360nrs", "name": "360NRS", "logo": "https://logos.composio.dev/api/_360nrs", "description": "Multichannel marketing platform: SMS marketing, email marketing, WhatsApp and interactive voice.", "category": "marketing automation", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "_360nrs_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "360NRS requires their users enter their 360NRS username in order to connect to their API. For more info, refer to 360NRS documentation at https://apidocs.360nrs.com/?shell#authentication", "required": true, "default": null }, { "name": "password", "displayName": "API Password", "type": "string", "description": "Generate and copy your API Password from \"APIs\" tab > \"Change API password\". Note: This is different from your platform login password.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "_8x8_connect", "name": "8x8 Connect", "logo": "https://logos.composio.dev/api/_8x8_connect", "description": "8x8 Connect is your intuitive all-in-one omnichannel communications management platform. Send millions of messages, get insights, and optimize effortlessly.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "_8x8_connect_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your API base URL based on region: Asia Pacific (https://sms.8x8.com), North America (https://sms.us.8x8.com), Europe (https://sms.8x8.uk), or Indonesia (https://sms.8x8.id). See https://developer.8x8.com/connect/docs/getting-started-with-sms-api/ for details.", "required": true, "default": "https://sms.8x8.com" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your 8x8 Connect API Key. Get it from https://connect.8x8.com/messaging/api-keys", "required": true, "default": null }, { "name": "generic_id", "displayName": "Subaccount ID", "type": "string", "description": "Your subaccount identifier (e.g., \"account_hq\"). Every account has a default subaccount with \"_hq\" suffix. Find it at https://connect.8x8.com/messaging/api-keys", "required": true, "default": null } ], "optional": [ { "name": "generic_id_2", "displayName": "Account ID", "type": "string", "description": "Your account identifier (typically the subaccount ID without \"_hq\" suffix). Required for balance endpoint. Find it at https://connect.8x8.com/messaging/api-keys", "required": false, "default": null } ] } } } ] }, { "slug": "abstract", "name": "Abstract", "logo": "https://logos.composio.dev/api/abstract", "description": "Abstract API provides a suite of APIs for developers to automate various tasks, including data validation, enrichment, and more.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ABSTRACT_EMAIL_REPUTATION_API", "name": "Email validation and quality check", "description": "Validate email addresses and assess their deliverability and quality. Returns comprehensive validation data including format checks, disposable email detection, free provider identification, role-based email detection, MX records verification, and SMTP validation. Use this to verify email addresses before sending, filter out risky or low-quality emails, and improve email deliverability rates." }, { "slug": "ABSTRACT_GET_VAT_CATEGORIES", "name": "Get VAT Categories", "description": "Tool to retrieve VAT rate categories for a specific country, including standard, reduced, and special VAT rates. Use when you need to determine applicable VAT rates for different product/service categories in a country." }, { "slug": "ABSTRACT_IBAN_VALIDATION_API", "name": "Validate IBAN", "description": "Tool to validate the format and country code of an IBAN number. Use after collecting an IBAN to ensure it is correctly formatted." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "abstractapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Abstract API Key", "type": "string", "description": "Your Abstract API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "abuselpdb", "name": "AbuseIPDB", "logo": "https://logos.composio.dev/api/abuseipdb", "description": "AbuseIPDB is a project dedicated to helping make the internet safer by providing a central repository for reporting and checking IP addresses associated with malicious activities.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ABUSELPDB_BLACKLIST", "name": "Retrieve IP Blacklist", "description": "Retrieves a list of the most reported malicious IP addresses from AbuseIPDB's database. Use this tool to build dynamic blocklists, threat intelligence feeds, or firewall rules. The blacklist is updated hourly and contains IPs with high abuse confidence scores. Free accounts receive up to 10,000 IPs. Paid subscriptions unlock filtering options (confidenceMinimum, country filters) and higher limits (up to 500,000 IPs)." }, { "slug": "ABUSELPDB_BULK_REPORT", "name": "Bulk Report", "description": "Submit multiple IP abuse reports to AbuseIPDB in bulk via CSV upload. Use this when you need to report many malicious IPs at once instead of one-by-one. Returns the count of successfully saved reports and details about any invalid entries." }, { "slug": "ABUSELPDB_CHECK_BLOCK", "name": "Check Block", "description": "Tool to check the reputation of all IP addresses in a CIDR range. Use when you need aggregated abuse data for a network block." }, { "slug": "ABUSELPDB_CHECK_IP", "name": "Check IP Reputation", "description": "Tool to check the reputation of an IP address. Use when you need to determine if an IP address has been reported for abusive activity within a specified look-back period. Example: CheckIp(ipAddress='8.8.8.8', maxAgeInDays=90)." }, { "slug": "ABUSELPDB_CLEAR_ADDRESS", "name": "Clear Address Reports", "description": "Tool to remove all reports associated with a specific IP address. Use when you need to purge your own abuse records after verifying control of the IP." }, { "slug": "ABUSELPDB_GET_REPORTS", "name": "Get Abuse Reports", "description": "Retrieve abuse reports for a specific IP address from AbuseIPDB. Use this tool to view the history of abuse complaints filed against an IP address, including the reported abuse categories, reporter details, and timestamps. Supports pagination for IPs with many reports." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "abuseipdb_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AbuseIPDB API Key", "type": "string", "description": "Your AbuseIPDB API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "abyssale", "name": "Abyssale", "logo": "https://logos.composio.dev/api/abyssale", "description": "Abyssale is a creative automation platform that enables users to generate images, videos, GIFs, PDFs, and HTML5 content programmatically, streamlining visual content production.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ABYSSALE_AUTHENTICATION_TEST", "name": "Test Abyssale Authentication", "description": "Tool to test API authentication via the /ready endpoint. Use after configuring your API key to ensure credentials are valid before other requests." }, { "slug": "ABYSSALE_CREATE_PROJECT", "name": "Create Abyssale Project", "description": "Tool to create a new project to organize designs and images. Use after deciding on a project name to group your templates and assets." }, { "slug": "ABYSSALE_GET_DESIGNS", "name": "Get Designs", "description": "Tool to retrieve all designs with optional filtering by category or type. Use after authenticating to list available templates." }, { "slug": "ABYSSALE_GET_FONTS", "name": "Get Fonts", "description": "Tool to list all available fonts, including custom and Google fonts. Use when you need to fetch font options before generating or editing designs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "abyssale_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Abyssale API Key", "type": "string", "description": "Your Abyssale API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "accredible_certificates", "name": "Accredible certificates", "logo": "https://logos.composio.dev/api/accredible_certificates", "description": "Accredible Certificates is a platform that enables organizations to create, manage, and distribute digital certificates, open badges, and blockchain credentials.", "category": "education", "authSchemes": [ "API_KEY" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ACCREDIBLE_CERTIFICATES_BULK_CREATE_CREDENTIALS_V2", "name": "Bulk Create Credentials (V2)", "description": "Tool to bulk create credentials. Use when batching up to 30 credentials in one call; supports multi-status (207) responses." }, { "slug": "ACCREDIBLE_CERTIFICATES_CLONE_GROUP", "name": "Clone Group", "description": "Tool to clone an existing group. Use after confirming the source group exists and you need a copy with optional overrides." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_ATTRIBUTE_KEY", "name": "Create Attribute Key", "description": "Tool to create a new custom attribute key. Use when you need to define a new custom attribute for credentials. Requires department ID to associate the attribute with a specific department." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection. Use when you need a curated set of groups." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_CREDENTIAL", "name": "Create Credential", "description": "Tool to create a new credential with optional evidence items and references. Use when issuing credentials to recipients; ensure group exists before creation." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_EVIDENCE_ITEM", "name": "Create Evidence Item", "description": "Tool to create a new evidence item for a credential. Use after confirming credential ID." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group. Use after gathering all group details." }, { "slug": "ACCREDIBLE_CERTIFICATES_CREATE_REFERENCE", "name": "Create Reference", "description": "Tool to create a new reference for a credential. Use when you need to add a reference from someone who can vouch for the credential recipient's skills or achievements." }, { "slug": "ACCREDIBLE_CERTIFICATES_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to delete a collection. Use after confirming you want to permanently remove an existing collection. Executes DELETE on /v1/collections/{collection_id} endpoint and returns status code." }, { "slug": "ACCREDIBLE_CERTIFICATES_DELETE_CREDENTIAL", "name": "Delete Credential", "description": "Tool to delete a credential. Use after confirming you want to permanently remove an existing credential. Executes DELETE on /credentials/{credential_id} endpoint and returns status code." }, { "slug": "ACCREDIBLE_CERTIFICATES_DELETE_EVIDENCE_ITEM", "name": "Delete Evidence Item", "description": "Tool to delete an evidence item from a credential. Use after confirming you want to permanently remove a specific evidence item." }, { "slug": "ACCREDIBLE_CERTIFICATES_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group. Use after confirming no credentials remain and when you need to permanently remove the group." }, { "slug": "ACCREDIBLE_CERTIFICATES_DELETE_REFERENCE", "name": "Delete Reference", "description": "Tool to delete a specific reference by ID. Use after confirming both credential_id and reference_id. Example: \"Delete reference 1234 from credential 'abc123'.\"" }, { "slug": "ACCREDIBLE_CERTIFICATES_GENERATE_PD_FS_FOR_CREDENTIALS", "name": "Generate PDFs for Credentials", "description": "Tool to generate PDFs for multiple credentials. Use when you need to batch-download a zip archive of certificate PDFs for a list of published credential IDs. Example: \"Generate PDFs for credentials [10000005, 10272642]\"." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_ANALYTICS", "name": "Get Analytics", "description": "Tool to retrieve analytics data for credentials. Use when you need to track credential views, shares, and other events with optional date and group filters." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_CREDENTIAL", "name": "Get Credential", "description": "Tool to view a credential by ID. Use when you need to retrieve detailed information about a specific credential." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_CREDENTIAL_ANALYTICS", "name": "Get Credential Analytics", "description": "Tool to view analytics for a specific credential. Use when you need to retrieve analytics data such as views, shares, or other events for a credential." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_DEPARTMENT", "name": "Get Department", "description": "Tool to view a specific department by ID. Use when you need to retrieve detailed information about a department." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_EVIDENCE_ITEM", "name": "Get Evidence Item", "description": "Tool to retrieve a specific evidence item from a credential. Use when you need to view details of an existing evidence item." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_GROUP", "name": "Get Group", "description": "Tool to retrieve a specific group by ID. Use when you need to view details of an existing group." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_ISSUER", "name": "Get Issuer Details", "description": "Tool to retrieve details about the authenticated issuer. Use when you need to view information about the issuer organization." }, { "slug": "ACCREDIBLE_CERTIFICATES_GET_REFERENCE", "name": "Get Reference", "description": "Tool to view a specific reference by ID. Use when you need to retrieve details of a reference associated with a credential." }, { "slug": "ACCREDIBLE_CERTIFICATES_INITIALIZE_BADGE_DESIGNER", "name": "Initialize Badge Designer", "description": "Tool to initialize the embedded badge designer. Use to create a new badge design or edit an existing one." }, { "slug": "ACCREDIBLE_CERTIFICATES_INITIALIZE_CERTIFICATE_DESIGNER", "name": "Initialize Certificate Designer", "description": "Tool to initialize the embedded certificate designer. Returns a JWT token for embedding the designer in your application. Use when you need to create or edit certificate designs programmatically." }, { "slug": "ACCREDIBLE_CERTIFICATES_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of all templates. Use after authentication to fetch paginated certificate templates." }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_ATTRIBUTE_KEYS", "name": "Search Attribute Keys", "description": "Tool to search for attribute keys by various criteria. Use when you need to find custom attribute keys by name, department, or type (e.g., \"Search for email type attribute keys in department 123\")." }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_COLLECTIONS", "name": "Search Collections", "description": "Tool to search for collections. Use when you need to filter collections by IDs, name, or public flag and paginate through results. e.g., \"Search for public collections named 'abc' on page 2.\"" }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_CREDENTIALS_V2", "name": "Search Credentials V2", "description": "Tool to search for credentials using the v2 API. This is a faster alternative to the v1 Search API and supports operations on query fields for complex queries. Use when you need to filter credentials by group, recipient, dates, or other attributes with advanced operators (eq, in, lt, gt, lte, gte)." }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_DEPARTMENTS", "name": "Search Departments", "description": "Tool to search for departments by various criteria. Use when you need to find departments by name or retrieve a paginated list of departments." }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_DESIGNS", "name": "Search Designs", "description": "Tool to search for designs (certificate/badge templates). Use when you need to filter designs by type, metadata, or paginate through design results." }, { "slug": "ACCREDIBLE_CERTIFICATES_SEARCH_GROUPS", "name": "Search Groups", "description": "Tool to search for groups in Accredible. Use when you need to filter groups by IDs, name, update dates, or metadata and paginate through results." }, { "slug": "ACCREDIBLE_CERTIFICATES_UPDATE_CREDENTIAL", "name": "Update Credential", "description": "Tool to update an existing credential. Use when you need to modify credential details such as description, dates, recipient information, or custom attributes." }, { "slug": "ACCREDIBLE_CERTIFICATES_UPDATE_EVIDENCE_ITEM", "name": "Update Evidence Item", "description": "Tool to update an existing evidence item for a credential. Use when you need to modify the details of an evidence item after it has been created." }, { "slug": "ACCREDIBLE_CERTIFICATES_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update an existing group. Use when you need to modify group details after fetching its current data." }, { "slug": "ACCREDIBLE_CERTIFICATES_UPDATE_REFERENCE", "name": "Update Reference", "description": "Tool to update a reference by ID. Use when you need to modify a reference's details for a credential. Use after retrieving the reference ID to change comments or relationship." }, { "slug": "ACCREDIBLE_CERTIFICATES_VIEW_ALL_SKILL_CATEGORIES", "name": "View All Skill Categories", "description": "Tool to retrieve all skill categories. Use when you need to list all available skill categories (e.g., to link them to groups)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "accredible_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Accredible API base URL. US: https://api.accredible.com/v1, EU: https://eu.api.accredible.com/v1, Sandbox: https://sandbox.api.accredible.com/v1", "required": true, "default": "https://api.accredible.com/v1" }, { "name": "generic_api_key", "displayName": "Accredible API Key", "type": "string", "description": "The API key provided by Accredible for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "active_trail", "name": "ActiveTrail", "logo": "https://logos.composio.dev/api/active_trail", "description": "ActiveTrail is the world's friendliest email marketing platform, newsletter software and marketing automation software.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 159, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ACTIVE_TRAIL_ADD_GROUP_MEMBER", "name": "Add Group Member", "description": "Tool to add a member to a group in ActiveTrail. Creates a new contact or adds an existing contact to the specified group. Supports comprehensive contact information including names, phone numbers, addresses, dates, and custom extension fields. The API will not return errors if the contact is already in the group (idempotent operation)." }, { "slug": "ACTIVE_TRAIL_ADD_MAILINGLIST_MEMBER", "name": "Add Mailing List Member", "description": "Tool to add a member to a mailing list in ActiveTrail. Creates a new contact or adds an existing contact to the specified mailing list and groups. Either email or SMS must be provided." }, { "slug": "ACTIVE_TRAIL_CONTACT_GROWTH", "name": "Get Contact Growth", "description": "Retrieves daily contact growth statistics showing active (subscribed) and inactive (unsubscribed) contact counts over a specified date range. Use this to analyze contact acquisition trends and measure the growth of your subscriber base over time. Returns time-series data with daily breakdowns." }, { "slug": "ACTIVE_TRAIL_CREATE_A_NEW_GROUP", "name": "Create a New Group", "description": "Creates a new contact group in ActiveTrail for organizing and segmenting contacts. Groups are containers for contacts that allow you to: - Organize contacts by category, campaign, or segment - Target specific groups for email/SMS campaigns - Manage contact memberships independently The newly created group will be empty. Use the \"Add Group Member\" action to add contacts to this group. Returns the complete group details including the assigned group ID." }, { "slug": "ACTIVE_TRAIL_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new email campaign in ActiveTrail. Use when you need to create and return a new campaign for specific groups. The campaign can be configured as an A/B split test, E-commerce campaign, or a regular campaign. Campaign will be created in draft status unless is_sent is set to true." }, { "slug": "ACTIVE_TRAIL_CREATE_CAMPAIGN_FOR_CONTACTS", "name": "Create Campaign for Contacts", "description": "Tool to create and send a new campaign to specific contacts in ActiveTrail. Use when you need to create campaigns targeted at selected recipients by contact IDs or email addresses. Supports regular campaigns, A/B split campaigns, and e-commerce campaigns." }, { "slug": "ACTIVE_TRAIL_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in ActiveTrail with the provided information. At least one of email or sms must be provided as the primary identifier. All other fields are optional and can be used to enrich the contact profile. Important: Newly created contacts are not automatically assigned to any group. To enable email/SMS campaigns for this contact, you must add them to a group using a separate action after creation. Returns the complete contact record including the assigned contact ID." }, { "slug": "ACTIVE_TRAIL_CREATE_CONTENT_CATEGORY", "name": "Create Content Category", "description": "Tool to create a new content category in ActiveTrail account. Use when you need to add a new category for organizing campaigns and templates." }, { "slug": "ACTIVE_TRAIL_CREATE_NEW_MAILING_LIST", "name": "Create New Mailing List", "description": "Tool to create a new mailing list in ActiveTrail. Use when you need to add a new mailing list to organize and manage contacts." }, { "slug": "ACTIVE_TRAIL_CREATE_ORDER", "name": "Create Order", "description": "Tool to create new orders in ActiveTrail commerce system. Use when you need to add order records with customer information, products, and transaction details. Accepts an array of order objects for batch creation." }, { "slug": "ACTIVE_TRAIL_CREATE_SEGMENTATION", "name": "Create Segmentation", "description": "Create a new contact segmentation in ActiveTrail. Segmentations are rule-based filters that define target audiences based on contact field values (e.g., email equals specific value, city contains text, etc.). Use this to create dynamic segments for campaign targeting, automation workflows, or contact organization. Requires a unique name and at least one base rule with field, operator, and values." }, { "slug": "ACTIVE_TRAIL_CREATE_SMART_CODE_SITE", "name": "Create Smart Code Site", "description": "Creates a new Smart Code tracking site in ActiveTrail. Smart Code is ActiveTrail's web analytics and visitor tracking solution that monitors visitor behavior on your website. Use this action to register a website for Smart Code tracking by providing a site name and domain(s)." }, { "slug": "ACTIVE_TRAIL_CREATE_SMS_CAMPAIGN", "name": "Create SMS Campaign", "description": "Tool to create a new SMS campaign in ActiveTrail. Use when you need to send SMS messages to segments of your audience with customizable content, sender name, and scheduling options." }, { "slug": "ACTIVE_TRAIL_CREATE_SMS_OPERATIONAL_MESSAGE", "name": "Create SMS Operational Message", "description": "Tool to create a new operational SMS transactional message. Use when you need to create an SMS campaign for later use or editing." }, { "slug": "ACTIVE_TRAIL_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a new webhook for event notifications in ActiveTrail. Webhooks enable real-time notifications for events like contact changes or campaign activities. After creating the webhook, use the 'Update Webhook Parameter' action to add custom parameters (headers, query params, body data) if needed." }, { "slug": "ACTIVE_TRAIL_DELETE_ACCOUNT_CONTENT_CATEGORIES", "name": "Delete content category", "description": "Tool to delete a specific content category by ID. Use when you need to remove a category from your ActiveTrail account." }, { "slug": "ACTIVE_TRAIL_DELETE_A_MEMBER_IN_A_GROUP", "name": "Delete group member", "description": "Tool to delete a group member by ID. Use when you need to remove a contact from a specific group in ActiveTrail." }, { "slug": "ACTIVE_TRAIL_DELETE_AUTOMATIONS", "name": "Delete Automations", "description": "Tool to delete one or more automations from Active Trail. Use when you need to remove automations by their IDs. Supports bulk deletion by providing comma-separated IDs." }, { "slug": "ACTIVE_TRAIL_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to remove a campaign from ActiveTrail account. Use when you need to delete a campaign that is no longer needed." }, { "slug": "ACTIVE_TRAIL_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to permanently remove a contact from the ActiveTrail account by their unique contact ID. Use when you need to delete a specific contact. This operation is destructive and cannot be undone. Returns success status and optional message." }, { "slug": "ACTIVE_TRAIL_DELETE_GROUP_BY_ID", "name": "Delete group by ID", "description": "Tool to delete a group by ID. Use when you need to permanently remove a group from ActiveTrail. This is a destructive operation that cannot be undone." }, { "slug": "ACTIVE_TRAIL_DELETE_MAILING_LIST", "name": "Delete Mailing List", "description": "Tool to permanently remove a mailing list from the ActiveTrail account by its unique ID. Use when you need to delete a mailing list that is no longer needed. This operation is destructive and cannot be undone. Returns success status and confirmation message." }, { "slug": "ACTIVE_TRAIL_DELETE_SMART_CODE_SITE", "name": "Delete Smart Code Site", "description": "Tool to remove a Smart Code site from ActiveTrail. Use when you need to permanently delete a Smart Code site identified by its unique ID." }, { "slug": "ACTIVE_TRAIL_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to remove a template from ActiveTrail account. Use when you need to delete a template that is no longer needed." }, { "slug": "ACTIVE_TRAIL_DELETE_TEMPLATES_TEMPLATE_CATEGORY", "name": "Delete template category", "description": "Tool to delete a template category by ID. Use when you need to remove a template category. Warning: Deleting a category will cascade-delete all templates within that category." }, { "slug": "ACTIVE_TRAIL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to remove a webhook from ActiveTrail account by its ID. Use when you need to delete a webhook that is no longer needed." }, { "slug": "ACTIVE_TRAIL_DELETE_WEBHOOKS_PARAMETERS", "name": "Delete webhook parameter", "description": "Removes a specific parameter from a webhook configuration in ActiveTrail. Use this when you need to delete custom headers, query parameters, or body parameters that were previously added to a webhook. Requires both the webhook ID and the specific parameter ID to delete." }, { "slug": "ACTIVE_TRAIL_GET_ACCOUNT_BALANCE", "name": "Get Account Balance", "description": "Tool to retrieve email and SMS credit balance for the account. Use when you need to check available email and SMS credits." }, { "slug": "ACTIVE_TRAIL_GET_ACCOUNT_CONTENT_CATEGORIES2", "name": "Get specific content category", "description": "Tool to retrieve specific category details by ID. Use when you need to get information about a content category from your ActiveTrail account." }, { "slug": "ACTIVE_TRAIL_GET_ACCOUNT_INTEGRATIONDATA", "name": "Get ActiveCommerce Integration Data", "description": "Retrieves the account's ActiveCommerce integration configuration data including mailing list and group associations. This endpoint returns the integration settings that connect ActiveTrail with ActiveCommerce, showing which mailing list and group are configured for the integration. Use this when you need to verify ActiveCommerce integration setup or troubleshoot integration issues." }, { "slug": "ACTIVE_TRAIL_GET_ACCOUNT_MERGE", "name": "Get Account Merge Status", "description": "Check if the ActiveTrail account has any pending account merge operations. This action retrieves the current account merge status, indicating whether there are any account merges awaiting completion. Account merges are typically used when consolidating multiple ActiveTrail accounts into one. Returns information about pending merges including their status, source and target accounts, and creation dates. Use this when you need to: - Verify if any account merge operations are in progress - Monitor the status of account consolidation processes - Check for pending administrative merge tasks" }, { "slug": "ACTIVE_TRAIL_GET_ALL_CAMPAIGN_REPORTS", "name": "Get All Campaign Reports", "description": "Tool to retrieve a full overview of all campaign reports with comprehensive metrics. Use when you need to get reports for all campaigns including send date, opened emails, number of clicks, CTO, bounces, unsubscribers, complaints, unopened and sent emails. Default behavior: Returns campaigns filtered by last update date within the previous 3 months when date parameters are not specified. Default limit is 20 records per page, maximum is 100." }, { "slug": "ACTIVE_TRAIL_GET_ALL_GROUPS", "name": "Get All Groups", "description": "Tool to retrieve the full list of account groups with pagination and filtering. Use when you need to get all groups or search for groups by name. Default limit is 100 groups per page." }, { "slug": "ACTIVE_TRAIL_GET_ALL_SENT_CAMPAIGNS", "name": "Get All Sent Campaigns", "description": "Tool to retrieve campaigns with optional filtering by date, mailing list, and search criteria. Use when you need to get campaigns filtered by date range (default is last 3 months), limited to a specific number (default is 100), or filtered by mailing list." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATION_LOG", "name": "Get Automation Log", "description": "Tool to track contacts through automation journey by retrieving detailed logs. Use when you need to see which contacts started a specific automation and their progress through each step of the workflow." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATION_REPORTS_LOG_AUTOMATION_QUEUE", "name": "Get Automation Queue Logs", "description": "Tool to retrieve contacts that did not finish a specific automation. Use when you need to get the list of contacts remaining in the automation queue for a given automation ID." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATION_REPORTS_SMS_CAMPAIGN_SUMMARY", "name": "Get Automation SMS Campaign Summary Report", "description": "Tool to retrieve SMS campaigns' summary reports for a specific automation. Use when you need to analyze SMS campaign performance including sent, delivered, failed, credits consumed, unsubscribe, and click metrics within an automation." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATION_REPORTS_SUMMARY_REPORT", "name": "Get Automation Email Campaign Summary Report", "description": "Tool to retrieve email campaigns' summary reports for a specific automation. Use when you need to analyze email campaign performance metrics including opens, clicks, click-to-open rate, conversions, bounces, unsubscribes, and spam complaints within an automation for a given date range." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATIONS", "name": "Get Automations", "description": "Tool to list account automations with filtering and pagination. Use when you need to retrieve automations from the ActiveTrail account. Supports filtering by state and pagination parameters." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATIONS_DETAILS", "name": "Get Automation Details", "description": "Tool to retrieve detailed configuration of a specific automation excluding step-by-step execution details. Use when you need metadata about automation behavior, scheduling, reporting settings, and operational constraints." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATIONS_EMAIL_CAMPAIGN_STEPS", "name": "Get Automation Email Campaign Steps", "description": "Tool to retrieve all email campaign steps in an automation workflow. Use when you need to get details about all 'send email' steps configured within a specific automation, including email content, scheduling, and tracking settings." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATIONS_SMS_CAMPAIGN_STEPS", "name": "Get Automation SMS Campaign Steps", "description": "Tool to retrieve all SMS campaign steps in an automation workflow. Use when you need to get details about all 'send SMS' steps configured within a specific automation, including SMS content, scheduling, and tracking settings." }, { "slug": "ACTIVE_TRAIL_GET_AUTOMATION_TRIGGER_TYPES", "name": "Get Automation Trigger Types", "description": "Tool to retrieve all available start trigger options for automations. Use when you need to get the list of trigger types that can initiate automation workflows in ActiveTrail." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_BOUNCES", "name": "Get Campaign Bounces", "description": "Tool to retrieve bounce details by domain for a specific campaign. Use when you need to analyze campaign bounce rates and identify problematic email domains. Defaults to campaigns updated in the last 3 months." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_CLICKS", "name": "Get Campaign Click-Through Data", "description": "Retrieves detailed click-through data for all links in a campaign or optionally for a specific link. Returns comprehensive information including contact details (name, email), click timestamps, device information (browser, OS, device type), and click counts. Default date range: last 3 months from current date. Use this for aggregate click analysis across multiple links; for detailed analysis of a single link, consider using 'Get Click Details by Link ID' action instead. Returns an error if the campaign wasn't sent within the specified date range." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_DESIGN", "name": "Get Campaign Design", "description": "Tool to retrieve campaign design configuration including visual layout and HTML content. Use when you need to get the design details of a specific email campaign." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_DOMAINS_REPORT", "name": "Get Campaign Domains Report", "description": "Tool to retrieve a report by domain for a specific campaign. Use when you need to analyze campaign performance grouped by recipient email domains, including sends, opens, clicks, bounces, and engagement metrics per domain. Defaults to campaigns updated in the last 3 months." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_OPENS", "name": "Get Campaign Opens", "description": "Tool to retrieve contacts who opened a specific campaign email. Use when you need to identify which recipients opened your campaign, track open rates, and analyze campaign engagement. Default search covers campaigns updated in the last 3 months; if the campaign wasn't sent during the specified date range, an empty list is returned. Supports pagination and filtering by group." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORT", "name": "Get Campaign Report", "description": "Retrieves comprehensive performance metrics for a specific email campaign by its ID. Returns detailed statistics including send count, open rate, click rate, click-to-open rate (CTO), bounce rate, unsubscribe rate, spam complaints, and conversion data. Use this when you need detailed performance analytics for a single campaign. Default behavior: Returns data for campaigns updated in the last 3 months when date parameters are not specified. Note: Returns an error if the campaign wasn't sent/updated within the specified date range." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORTS_BOUNCED", "name": "Get Campaign Bounced Emails by Type", "description": "Tool to retrieve bounced email details filtered by bounce type for a specific campaign. Use when you need detailed information about which contacts' emails bounced and why, with the ability to filter by hard or soft bounces." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORTS_COMPLAINTS", "name": "Get Campaign Spam Complaints", "description": "Tool to retrieve contacts who reported a specific campaign as spam. Use when you need to identify which contacts flagged your campaign as unwanted. The default search window is the last 3 months; if the campaign wasn't sent during the specified dates, an empty list is returned." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORTS_EMAIL_ACTIVITY", "name": "Get Campaign Email Activity Report", "description": "Tool to retrieve all contacts' activity on a specific campaign. Use when you need comprehensive activity data including opens, clicks, bounces, and other engagement metrics for each contact in a campaign. By default, the search covers campaigns updated in the last 3 months; if the campaign wasn't sent in the specified date range, an error will be returned." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORTS_SENT", "name": "Get Campaign Sent Emails", "description": "Tool to retrieve contacts who received a specific campaign email. Use when you need to identify which recipients successfully received your campaign. The default search window is the last 3 months; if the campaign wasn't sent during the specified dates, an empty list is returned." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_REPORTS_UNOPENED", "name": "Get Campaign Unopened Contacts", "description": "Tool to retrieve contacts who did not open a specific campaign. Use when you need to identify which recipients received but did not open your campaign email. The default search window is the last 3 months; if the campaign wasn't sent during the specified dates, an empty list is returned." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_SCHEDULING", "name": "Get Campaign Scheduling", "description": "Retrieves the scheduling configuration for a specific email campaign, including send status and scheduled datetime. Use this action when you need to check if a campaign is scheduled to send, when it's scheduled to send (in UTC), or verify the send status of a campaign. The response includes is_sent flag (whether campaign is dispatched) and scheduled_date_utc (planned send datetime). Campaign ID can be obtained from campaign list actions." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_S_DETAILS", "name": "Get Campaign by ID", "description": "Tool to retrieve complete campaign information including send settings, design, template, and A/B test configuration. Use when you need comprehensive details about a specific email campaign." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGNS_DETAILS", "name": "Get Campaign Details", "description": "Tool to retrieve detailed campaign information including name, subject, and settings. Use when you need to get comprehensive details about a specific email campaign." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGNS_SEGMENT", "name": "Get Campaign Segment Settings", "description": "Tool to retrieve campaign sending settings including target groups and sending restrictions. Use when you need to get the segmentation configuration for a specific campaign." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGNS_SENT_CAMPAIGNS", "name": "Get Sent Campaigns", "description": "Tool to retrieve a list of all sent campaigns from ActiveTrail. Use when you need to view all campaigns that have been sent, including their details such as name, subject, send status, and delivery metrics." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_TEMPLATE", "name": "Get Campaign Template", "description": "Retrieves template details (design, content, subject line, sender info) for a specific email campaign. Use this action when you need to: - View the template configuration used in a campaign - Get HTML/plain text content of a campaign template - Retrieve sender information (from name, from email, reply-to) - Access template metadata like category, creation/modification dates Note: Requires a valid campaign ID which can be obtained from the 'Get Sent Campaigns' action." }, { "slug": "ACTIVE_TRAIL_GET_CAMPAIGN_UNSUBSCRIBED", "name": "Get Campaign Unsubscribed Contacts", "description": "Retrieves the list of contacts who unsubscribed from a specific email campaign. Use this action when you need to: - Identify which recipients opted out of receiving future communications from a campaign - Analyze unsubscribe patterns and reasons for a particular campaign - Track campaign unsubscribe metrics and contact details By default, searches campaigns updated within the last 3 months. If the campaign wasn't sent within the specified date range, an empty list is returned. Supports pagination for large unsubscribe lists." }, { "slug": "ACTIVE_TRAIL_GET_COMMERCE_SCHEMA", "name": "Get Commerce Schema", "description": "Tool to retrieve order fields schema information from the ActiveTrail commerce API. Use when you need to get information about available order fields, their types, and custom names for commerce/order management." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_ACTIVITY", "name": "Get Contact Activity", "description": "Tool to retrieve contact's email engagement history including opens and clicks. Use when you need detailed activity data showing which campaigns were sent to a contact and their engagement metrics." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_DETAILS", "name": "Get Contact Details", "description": "Tool to retrieve complete details of a specific contact by their ID. Use when you need full contact information including personal data, contact fields, subscription status, and all custom extended fields." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_FIELDS", "name": "Get Contact Fields", "description": "Tool to retrieve account contact fields filtered by type. Use when you need to get contact field definitions from the ActiveTrail account." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_GROUPS", "name": "Get Contact Groups", "description": "Tool to retrieve all groups associated with a specific contact. Returns group details including group ID, name, member counts, and creation dates. Use when you need to list a contact's group memberships by contact ID." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_LIST", "name": "Get Contact List", "description": "Tool to retrieve account contacts filtered by status and date range. Use when you need to get a list of contacts filtered by customer status (active, unsubscribed, bounced, etc.) or by registration date. Default behavior: retrieves contacts modified within the last three months with a limit of 100 contacts per page." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_ERRORS", "name": "Get Contact's Errors", "description": "Tool to retrieve bounce and error history for a specific contact. Use when you need to understand delivery issues or bounce patterns for a contact's email address." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_MAILINGLISTS", "name": "Get Contact's Mailing Lists", "description": "Tool to retrieve all mailing lists associated with a specific contact. Use when you need to list a contact's mailing list memberships by contact ID." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_MERGES", "name": "Get Contacts Merges", "description": "Tool to retrieve contacts experiencing merge conflicts with filtering options. Use when you need to get the list of contacts with merge conflicts, filtered by status, date range, or limited to a specific number of conflicts." }, { "slug": "ACTIVE_TRAIL_GET_CONTACT_SMS_STATISTICS", "name": "Get Contact SMS Statistics", "description": "Tool to retrieve contact interaction statistics for a specific transactional SMS. Use when you need to see how a contact interacted with a transactional/operational SMS including delivery status, bounce information, and unsubscribe actions." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_STATISTICS_CAMPAIGN", "name": "Get Contact's Statistics for Campaign", "description": "Tool to retrieve contact's interaction statistics for a specific campaign. Use when you need to see how a specific contact engaged with a campaign including opens, clicks, bounces, unsubscribes, and spam complaints." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_SUBSCRIPTION_ALL_CONTACTS", "name": "Get Contacts Subscription All Contacts", "description": "Tool to get contacts' subscription status and the source of their status (if known). Use when you need to retrieve all contacts with their subscription status information filtered by creation date. Defaults to three months back if date range is not specified." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_SUBSCRIPTION_CUSTOMERS_STATUS", "name": "Get Contacts Subscription Status", "description": "Get daily breakdown of contact status statistics over a date range. Returns counts of active, unsubscribed, bounced, quarantined, spam complaints, inactive, and user-requested removal contacts for each day in the specified period. Defaults to recent days when no date range is provided." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_SUBSCRIPTION_SUBSCRIBERS", "name": "Get Contacts Subscription Subscribers", "description": "Tool to retrieve all contacts who subscribed and the source of their subscription status. Use when you need to get a comprehensive list of subscribers. The search defaults to 3 months back if date range is not specified." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_SUBSCRIPTION_UNSUBSCRIBERS", "name": "Get Contacts Subscription Unsubscribers", "description": "Tool to retrieve all contacts who unsubscribed and the source of their unsubscription status. Use when you need to get a comprehensive list of unsubscribers. The search defaults to 3 months back if date range is not specified." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_UNSUBSCRIBERS_SMS", "name": "Get Contacts Unsubscribers SMS", "description": "Tool to retrieve all contacts who unsubscribed from receiving SMS messages. Use when you need to get a list of SMS unsubscribers with optional filtering by date range and pagination support." }, { "slug": "ACTIVE_TRAIL_GET_CONTACTS_WITH_SMS_STATE", "name": "Get Contacts With SMS State", "description": "Tool to retrieve account's contacts list with SMS subscription state. Use when you need to get contacts filtered by customer status (active, unsubscribed, bounced, etc.) and by state change date range, with default filtering to three months back." }, { "slug": "ACTIVE_TRAIL_GET_CONTENT_CATEGORIES", "name": "Get Content Categories", "description": "Tool to retrieve all content categories from the ActiveTrail account. Use when you need to get the list of categories used for organizing campaigns and templates." }, { "slug": "ACTIVE_TRAIL_GET_CUSTOMER_STATS_FOR_TRANSACTIONAL_MESSAGE", "name": "Get Customer Stats for Transactional Message", "description": "Tool to retrieve customer interaction statistics for a specific transactional message. Use when you need to see how a contact engaged with a transactional/operational message including delivery status, opens, clicks, and other interaction metrics." }, { "slug": "ACTIVE_TRAIL_GET_EXECUTIVE_REPORT", "name": "Get Executive Report", "description": "Retrieve executive performance report for the ActiveTrail account, providing email marketing metrics over the past 12 months. Returns monthly statistics including emails sent, bounce rates, open rates, click rates, click-to-open rates, complaint rates, and unsubscribe rates for both marketing campaigns and transactional emails. Use this to analyze overall account performance trends and generate summary statistics." }, { "slug": "ACTIVE_TRAIL_GET_EXTERNAL_SCHEMA", "name": "Get External Schema", "description": "Tool to retrieve contact field schema information for the account. Use when you need to get the structure and metadata of all available contact fields." }, { "slug": "ACTIVE_TRAIL_GET_GROUP", "name": "Get Group Details", "description": "Tool to retrieve detailed information about a specific group by its unique identifier. Use when you need to fetch group details including name, contact counters, and timestamps." }, { "slug": "ACTIVE_TRAIL_GET_GROUP_CONTENTS_BY_ID", "name": "Get Group Contents by ID", "description": "Tool to retrieve all group members by group ID with pagination and filtering. Use when you need to get complete information about contacts in a specific group. Returns up to 100 contacts per page with optional filtering by status and date range." }, { "slug": "ACTIVE_TRAIL_GET_GROUPS_EVENTS", "name": "Get Group Events", "description": "Tool to retrieve all events for a specific group with optional filtering by event type, event date, and subscriber creation date. Use when you need to analyze group engagement metrics like opens, clicks, and unsubscribes. Default date range is 3 months back if not specified." }, { "slug": "ACTIVE_TRAIL_GET_LANDING_PAGES", "name": "Get Landing Pages", "description": "Tool to retrieve landing pages from the ActiveTrail account with pagination support. Use when you need to get all landing pages or fetch paginated results." }, { "slug": "ACTIVE_TRAIL_GET_MAILING_LIST", "name": "Get Mailing List", "description": "Tool to retrieve basic information about a specific mailing list by its unique identifier. Returns the mailing list ID and name. Use when you need to verify a mailing list exists or get its name by ID." }, { "slug": "ACTIVE_TRAIL_GET_MAILING_LIST_MEMBERS", "name": "Get Mailing List Members", "description": "Tool to retrieve all members belonging to a specific mailing list. Use when you need to get contacts from a mailing list, with optional filtering by contact status and state change date range." }, { "slug": "ACTIVE_TRAIL_GET_MAILING_LISTS", "name": "Get Mailing Lists", "description": "Tool to retrieve all mailing lists from the ActiveTrail account. Use when you need to get the list of mailing lists associated with the account." }, { "slug": "ACTIVE_TRAIL_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve complete details of a specific order from ActiveTrail commerce system. Use when you need to fetch order information including customer details, financial data, products, and shipping information." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_OPENS", "name": "Get Push Campaign Opens", "description": "Retrieves a list of contacts who opened a specific push notification campaign, including contact details and when they opened the notification. Use this action to: - Track engagement metrics for push campaigns - Identify which recipients interacted with your push notifications - Filter opens by date range, send type, or search for specific contacts Note: The campaign must have been sent within the date range (defaults to last 3 months from current date if not specified). Results are paginated for campaigns with many opens." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_REPORT_DELIVERED", "name": "Get Push Campaign Delivered Report", "description": "Tool to retrieve contacts who successfully received a specific push notification campaign. Use when you need to identify which recipients had the push campaign delivered to their devices. The campaign must have been sent within the specified date range (defaults to last 3 months); if not sent during these dates, an empty list is returned." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_REPORT_FAILED", "name": "Get Push Campaign Failed Delivery Report", "description": "Tool to retrieve the failed delivery report for a specific push campaign. Use when you need to see which contacts experienced delivery failures and why. The campaign must be sent in the specified date range (defaults to last 3 months)." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_REPORTS", "name": "Get Push Campaign Reports", "description": "Retrieves push notification campaign performance metrics and reports filtered by date range, send type, or search term. Returns analytics including sent count, delivered count, opened count, clicked count, open rate, click rate, and delivery status for each campaign. Default behavior: Returns the last 20 campaigns from the last 3 months when no parameters are specified." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_REPORT_SENT", "name": "Get Push Campaign Sent Report", "description": "Tool to retrieve the list of contacts who were sent a specific push notification campaign, including contact details, device types, and sent timestamps. Use when you need to see the complete list of recipients for a push campaign with their delivery information. Supports filtering by date range (defaults to last 3 months), send type, and search terms. Returns paginated results with contact details for each recipient." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGN_REPORT_SUMMARY", "name": "Get Push Campaign Report Summary", "description": "Tool to retrieve aggregated summary statistics for push notification campaigns filtered by date range. Returns total counts across all campaigns including total sent, opens, clicks, clickers, unsubscribes, failed deliveries, and total devices. Use this when you need overall push campaign performance metrics rather than individual campaign details. Default behavior: Returns aggregate statistics for campaigns from the last 3 months when date parameters are not specified." }, { "slug": "ACTIVE_TRAIL_GET_PUSH_CAMPAIGNS", "name": "Get Push Campaigns", "description": "Tool to retrieve push notification campaigns with optional filtering by date, campaign ID, and search criteria. Use when you need to get push campaigns filtered by date range (default is last 6 months and last 20 campaigns), or filtered by specific campaign ID or search term." }, { "slug": "ACTIVE_TRAIL_GET_SEGMENTATION_RULE_FIELD_TYPES", "name": "Get Segmentation Rule Field Types", "description": "Retrieve a reference dictionary of all available field types that can be used in segmentation rules for ActiveTrail automation. Returns field type definitions including their identifiers, names, data types, and descriptions. This endpoint provides the foundational metadata needed to understand which contact fields (email, phone, custom fields, behavioral data, etc.) can be evaluated when constructing segmentation conditions in marketing automations. Use this when you need to discover what field types are available before building or validating segmentation rules." }, { "slug": "ACTIVE_TRAIL_GET_SEGMENTATION_RULE_OPERATIONS", "name": "Get Segmentation Rule Operations", "description": "Retrieves available rule operations for segmentation by field type. Returns operations categorized by field types (Info, Date, Action, Numeric, etc.) with their corresponding operation types (Is, IsNot, Contain, GreaterThan, etc.). Use this to understand which operations are valid when building segmentation rules based on field types." }, { "slug": "ACTIVE_TRAIL_GET_SEGMENTATION_RULE_TYPES", "name": "Get Segmentation Rule Types", "description": "Tool to retrieve available segmentation rule types for automation. Returns a list of rule type names that can be used when creating or editing automation segmentations. Use this to discover what types of rules are available (e.g., Info, Numeric, Date, Group, Action, Order-related, Cart, Catalog, etc.)." }, { "slug": "ACTIVE_TRAIL_GET_SEGMENTATION_RULE_TYPES_MAPPING", "name": "Get Segmentation Rule Types Mapping", "description": "Tool to retrieve the complete mapping of segmentation rule types with their associated field types and operations from ActiveTrail. Use this when building segmentation rules to understand which field types and operations are available for each rule type (e.g., Info rules support Email fields with 'Is' operation)." }, { "slug": "ACTIVE_TRAIL_GET_SEGMENTATIONS", "name": "Get Segmentations", "description": "Retrieve all contact segmentations from your ActiveTrail account. Segmentations are rule-based filters that define target audiences for campaigns and automations (e.g., contacts who opened specific campaigns, belong to certain groups, or match demographic criteria). Use this to list all configured segmentations and their IDs for use in campaign targeting or automation workflows." }, { "slug": "ACTIVE_TRAIL_GET_SENDING_PROFILES", "name": "Get Sending Profiles", "description": "Tool to retrieve account email sending profiles. Use when you need to get sending profile configurations including sender names, email addresses, and reply-to settings." }, { "slug": "ACTIVE_TRAIL_GET_SIGNUP_FORMS", "name": "Get Signup Forms", "description": "Tool to retrieve all signup forms from the ActiveTrail account. Use when you need to get the list of signup forms associated with the account." }, { "slug": "ACTIVE_TRAIL_GET_SMART_CODE_SITES", "name": "Get Smart Code Sites", "description": "Retrieves all Smart Code tracking sites configured in the ActiveTrail account. Smart Code is ActiveTrail's web analytics and visitor tracking solution. Use this action to list all registered websites with Smart Code tracking, including their IDs, names, and associated domains." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN", "name": "Get SMS Campaign by ID", "description": "Tool to retrieve detailed information about a specific SMS campaign by its unique identifier. Use when you need to fetch campaign details including message content, sender, status, and delivery metrics." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_CLICKERS", "name": "Get SMS Campaign Clickers", "description": "Retrieve contacts who clicked links in an SMS campaign with detailed click analytics. Returns contact information (name, email, phone), click timestamps, link details, and click counts. Supports filtering by specific links, date ranges, and contact search. Note: If the SMS was sent using \"add numbers manually\" instead of groups/mailing lists, you'll receive click counts but mobile numbers may not be available. Default search window is 3 months from today." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_DELIVERED", "name": "Get SMS Campaign Delivered Report", "description": "Tool to retrieve delivery confirmations for a specific SMS campaign. Use when you need to see which contacts successfully received the SMS message. The campaign must be sent in the specified date range (defaults to last 3 months). Note: If SMS was sent using manual number entry instead of a group, only the delivery count is returned without specific mobile numbers." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_ESTIMATE", "name": "Get SMS Campaign Estimate", "description": "Tool to calculate the estimated number of messages for a given SMS campaign. Use when you need to get message count estimates for campaigns that have not been sent yet. Cannot be used for already-sent campaigns." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT", "name": "Get SMS Campaign Report", "description": "Tool to retrieve summary report for a specific SMS campaign by ID. Use when you need detailed metrics about an SMS campaign's performance including sent count, delivery rate, clicks, and errors." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT_CLICKS", "name": "Get SMS Campaign Report Clicks", "description": "Tool to retrieve detailed click event data for links in SMS campaigns. Returns individual click records (not unique clickers) with contact information, timestamps, link details, and device/browser information. Use when you need granular click-level analytics for SMS campaign links. Note: By default, searches for clicks within the last 3 months. If the campaign wasn't sent in the specified date range, no data will be returned. If SMS recipients were added manually (not from a group), you may get click counts but not all contact details." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT_FAILED", "name": "Get SMS Campaign Failed Delivery Report", "description": "Tool to retrieve the failed delivery report for a specific SMS campaign. Use when you need to see which contacts experienced delivery failures and why. The campaign must be sent in the specified date range (defaults to last 3 months). Note: If SMS was sent using manual number entry instead of a group, only the failure count is returned without specific mobile numbers." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORTS", "name": "Get SMS Campaign Reports", "description": "Tool to retrieve SMS campaign performance metrics and reports with filtering options. Use when you need to access SMS campaign analytics including sent, delivered, failed, clicks, and engagement statistics. Returns the last 20 campaigns from the last 6 months by default when no date range or filters are specified." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT_SENT", "name": "Get SMS Campaign Sent Contacts Report", "description": "Tool to retrieve all contacts that an SMS campaign was sent to. Use when you need to see the list of recipients for a specific SMS campaign. The campaign must be sent in the specified date range (defaults to last 3 months). Note: If SMS was sent using manual number entry instead of a group, only the contact count is returned without specific mobile numbers." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT_SUMMARY", "name": "Get SMS Campaign Report Summary", "description": "Retrieve aggregate summary metrics for SMS campaigns across a filtered date range. Returns total counts for sent messages, failed deliveries, clicks, unique clicks, unsubscribes, and credits consumed. Use this to get high-level performance statistics across all SMS campaigns in a given period. Default behavior: Returns aggregate metrics for the last 3 months when date parameters are not specified." }, { "slug": "ACTIVE_TRAIL_GET_SMS_CAMPAIGN_REPORT_UNSUBSCRIBED", "name": "Get SMS Campaign Unsubscribed Contacts", "description": "Tool to retrieve contacts who unsubscribed from a specific SMS campaign. Use when you need to identify recipients who opted out of receiving future SMS messages. Note: For manually added numbers, only the count is returned, not individual phone numbers. Default search range is last 3 months; if campaign wasn't sent in the given range, no information will be returned." }, { "slug": "ACTIVE_TRAIL_GET_SMS_SENDING_PROFILES", "name": "Get SMS Sending Profiles", "description": "Tool to retrieve SMS sending profiles configured for the account. Use when you need to get SMS sender profile configurations including sender names and phone numbers." }, { "slug": "ACTIVE_TRAIL_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve detailed information about a specific template from the account's saved templates. Use when you need to fetch template details including name, subject, content, category, and encoding settings." }, { "slug": "ACTIVE_TRAIL_GET_TEMPLATE_CONTENT", "name": "Get Template Content", "description": "Tool to retrieve HTML content of a specific template. Use when you need to get the HTML markup or design content of a template by its ID." }, { "slug": "ACTIVE_TRAIL_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve saved templates from the ActiveTrail account. Use when you need to list all templates or search for templates by name. Supports pagination and filtering." }, { "slug": "ACTIVE_TRAIL_GET_TEMPLATES_TEMPLATE_CATEGORY", "name": "Get Template Categories", "description": "Tool to retrieve all template categories from 'my templates' section. Use when you need to get the list of categories for organizing email templates." }, { "slug": "ACTIVE_TRAIL_GET_TRANSACTIONAL_MESSAGES_CLASSIFICATION", "name": "Get Transactional Messages Classification", "description": "Tool to retrieve all classification options for operational/transactional messages. Use when you need to get available classifications for categorizing and filtering transactional message reports." }, { "slug": "ACTIVE_TRAIL_GET_TRANSACTIONAL_SMS_MESSAGE", "name": "Get Transactional SMS Message", "description": "Tool to retrieve detailed information about a specific transactional SMS message by its unique identifier. Use when you need to fetch SMS message content, delivery statistics, and metadata for operational SMS messages." }, { "slug": "ACTIVE_TRAIL_GET_TWO_WAY_SMS_REPLIES", "name": "Get Two-Way SMS Replies", "description": "Tool to retrieve virtual number SMS replies with filtering options. Use when you need to fetch two-way SMS responses for campaigns with optional filtering by search term, campaign ID, or date range." }, { "slug": "ACTIVE_TRAIL_GET_UPDATE_ACTIONS", "name": "Get Automation Update Actions", "description": "Retrieves all available update action types that can be applied to contacts within automation workflows. Each action type includes its ID, name, description, type category, and required parameters. Use this to discover what contact update operations are available when building or modifying automation workflows (e.g., updating contact fields, changing status, adding tags, etc.)." }, { "slug": "ACTIVE_TRAIL_GET_USER_SOCIAL_ACCOUNTS_GET", "name": "Get User Social Accounts", "description": "Retrieve social media accounts (Facebook, Instagram, etc.) connected to the ActiveTrail account. Returns a list of connected social media accounts with details like platform, username, status, and connection date. Note: Social media integration is only available for ActiveTrail Plus plan customers." }, { "slug": "ACTIVE_TRAIL_GET_WEBHOOK", "name": "Get Webhook by ID", "description": "Tool to retrieve detailed information about a specific webhook by its unique identifier. Use when you need to fetch complete webhook configuration including event type, target URL, state, and associated parameters." }, { "slug": "ACTIVE_TRAIL_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to list account webhooks with optional filtering. Use when you need to retrieve webhooks configured for the ActiveTrail account with filtering by event type, state, or target type." }, { "slug": "ACTIVE_TRAIL_GET_WEBHOOKS_PARAMETERS", "name": "Get Webhook Parameters", "description": "Retrieves custom parameters configured for a specific webhook. Parameters define additional data (headers, query parameters, or body fields) that ActiveTrail includes when calling the webhook URL. Use this to inspect webhook configuration details including parameter keys, values, types, and dynamic field mappings." }, { "slug": "ACTIVE_TRAIL_IMPORT_NEW_CONTACTS", "name": "Import New Contacts", "description": "Tool to import new contacts into a group in ActiveTrail. Use when you need to bulk import contacts with customer information (limited to 1000 contacts per call). Returns success count and any errors for failed contact imports." }, { "slug": "ACTIVE_TRAIL_LIST_SMS_CAMPAIGNS", "name": "List SMS Campaigns", "description": "Tool to retrieve SMS campaigns with optional filtering by date, search term, and type. Use when you need to get SMS campaigns filtered by date range (default is last 3 months) or other criteria. Returns up to 20 campaigns per page by default." }, { "slug": "ACTIVE_TRAIL_LIST_TRANSACTIONAL_SMS_MESSAGES", "name": "List Transactional SMS Messages", "description": "Tool to retrieve all SMS transactional messages with pagination support. Use when you need to fetch the list of operational SMS campaigns configured in the account." }, { "slug": "ACTIVE_TRAIL_POST_TEMPLATES_CAMPAIGN", "name": "Create Campaign from Template", "description": "Creates a new email campaign from an existing template. The campaign will be created in draft status. Prerequisites: - A valid template ID (obtain from 'Get Templates' action) - A valid sending profile ID (obtain from 'Get Sending Profiles' action) Use this when you need to quickly create a campaign using a pre-designed template rather than building from scratch." }, { "slug": "ACTIVE_TRAIL_POST_TEMPLATES_TEMPLATE_CATEGORY", "name": "Create Template Category", "description": "Tool to create a new template category in ActiveTrail. Use when you need to add a new category for organizing email templates." }, { "slug": "ACTIVE_TRAIL_POST_WEBHOOKS_PARAMETERS", "name": "Add Webhook Parameter", "description": "Tool to add a new parameter to an existing webhook in your ActiveTrail account. Use when you need to configure additional parameters for webhook events, such as authentication headers, custom query parameters, or body fields. Each parameter can have either a static value or dynamically pull from contact fields." }, { "slug": "ACTIVE_TRAIL_POST_WEBHOOKS_TEST2", "name": "Send Test Webhook Request", "description": "Tool to send a test webhook request with configurable URL and parameters. Use when you need to validate webhook configurations by sending a test request to a specified URL with custom event types, parameters, and target types." }, { "slug": "ACTIVE_TRAIL_PUT_ACCOUNT_CONTENT_CATEGORIES", "name": "Update content category", "description": "Tool to update a specific content category by ID. Use when you need to modify the name or display order of a category in your ActiveTrail account." }, { "slug": "ACTIVE_TRAIL_PUT_CAMPAIGNS_SEGMENT", "name": "Update Campaign Segment Settings", "description": "Tool to update campaign sending settings including groups and sending restrictions. Use when you need to modify which groups receive a campaign. Note: Only campaigns in draft mode can be updated." }, { "slug": "ACTIVE_TRAIL_REMOVE_A_CONTACT_FROM_A_MAILING_LIST", "name": "Remove Contact from Mailing List", "description": "Removes a specific contact from a mailing list in ActiveTrail. Use this action to unsubscribe or remove a contact from a particular mailing list without deleting the contact from your account entirely. The contact will no longer receive campaigns sent to this specific mailing list, but will remain in other lists they belong to. Note: This is a destructive operation that cannot be undone via API. To re-add the contact to the list, use the 'Import New Contacts' action." }, { "slug": "ACTIVE_TRAIL_REMOVE_EXTERNAL_CONTACT_FROM_GROUP", "name": "Remove external contacts from group", "description": "Tool to remove contacts from a group via external ID. Use when you need to delete external contacts from a specific group in ActiveTrail. Limited to 1000 contacts per call." }, { "slug": "ACTIVE_TRAIL_SEND_OPERATIONAL_MESSAGE", "name": "Send Operational Message", "description": "Tool to send operational email messages to individual recipients (limited to 500 messages per request). Use when you need to send transactional or automated emails with personalized content. Recipients will be created as contacts in your account if they don't already exist." }, { "slug": "ACTIVE_TRAIL_SEND_OPERATIONAL_MESSAGE_EMAIL", "name": "Send Operational Message Email", "description": "Tool to send transactional/operational email messages via ActiveTrail. Use when you need to send automated emails like order confirmations, password resets, or notifications. Supports dynamic text replacement via key-value pairs and can send to multiple recipients (max 500)." }, { "slug": "ACTIVE_TRAIL_TEST_WEBHOOK", "name": "Test Webhook", "description": "Send a test request to a configured webhook to verify it's working correctly. This action triggers a test event for the specified webhook without waiting for actual events to occur. Use this to validate that the webhook URL is reachable, properly configured, and able to receive notifications from ActiveTrail. The webhook must already exist in your ActiveTrail account." }, { "slug": "ACTIVE_TRAIL_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update draft campaigns in ActiveTrail. Use when you need to modify campaign properties such as name, subject, content, or design settings. IMPORTANT: Only campaigns in draft mode can be updated - campaigns that have been sent or are scheduled cannot be modified." }, { "slug": "ACTIVE_TRAIL_UPDATE_CAMPAIGN_DESIGN", "name": "Update Campaign Design", "description": "Tool to update the design and HTML content of an email campaign in ActiveTrail. Use when you need to modify a campaign's visual layout, HTML content, or encoding settings. Important: Only campaigns in draft mode can be updated through this endpoint." }, { "slug": "ACTIVE_TRAIL_UPDATE_CAMPAIGN_SCHEDULING", "name": "Update Campaign Scheduling", "description": "Tool to configure send schedule for draft campaigns. Use when you need to update the scheduling configuration of a campaign. Only campaigns in draft mode can be updated." }, { "slug": "ACTIVE_TRAIL_UPDATE_CAMPAIGN_S_DETAILS", "name": "Update Campaign Details", "description": "Updates an email campaign's core details including name, subject line, sender profile, category, and delivery settings. Important: Only campaigns in DRAFT status can be updated. Attempting to update sent or scheduled campaigns will fail. Use 'Get Campaign by ID' first to verify the campaign is in draft mode before updating." }, { "slug": "ACTIVE_TRAIL_UPDATE_CAMPAIGN_TEMPLATE", "name": "Update Campaign Template", "description": "Tool to update the template associated with an email campaign in ActiveTrail. Use when you need to assign or change a template for a campaign. Important: Only campaigns in draft mode can be updated through this endpoint." }, { "slug": "ACTIVE_TRAIL_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's information by ID. Use when you need to modify contact details such as name, email, phone, address, or custom fields. Only the fields you include in the request will be updated; other fields remain unchanged." }, { "slug": "ACTIVE_TRAIL_UPDATE_GROUP", "name": "Update Group", "description": "Updates an existing group in ActiveTrail by its ID. Primary use case: Rename a group by updating its name field. Important notes: - Only the 'name' field is reliably updateable via this endpoint - The API typically returns HTTP 204 (No Content) on success - Group must exist or will return 404 error Use 'Get All Groups' or 'Get Group by ID' actions to find the group ID first." }, { "slug": "ACTIVE_TRAIL_UPDATE_ORDER", "name": "Update Order", "description": "Updates an existing order in the ActiveTrail commerce system. Use this action to modify order details including customer information (name, email, phone), shipping address, order status, pricing (amounts, tax, currency), or product items. You must provide the existing order_id - this action cannot create new orders. Common use cases: - Update order status (e.g., from \"pending\" to \"shipped\") - Modify customer contact information - Adjust pricing or add/remove items - Update shipping addresses - Change order metadata (dates, custom fields)" }, { "slug": "ACTIVE_TRAIL_UPDATE_SEGMENTATION", "name": "Update Segmentation", "description": "Tool to update an existing segmentation's name and/or rules by its ID. Use when you need to modify segmentation criteria or rename a segment. Segmentations are rule-based filters that define target audiences based on contact attributes, behaviors, or campaign interactions." }, { "slug": "ACTIVE_TRAIL_UPDATE_SMART_CODE_SITE", "name": "Update Smart Code Site", "description": "Updates an existing Smart Code tracking site in ActiveTrail. Use this action to modify a site's name and domain configuration. Both name and domains must be provided in the update request (the API does not support partial updates)." }, { "slug": "ACTIVE_TRAIL_UPDATE_SMS_OPERATIONAL_MESSAGE", "name": "Update SMS Operational Message", "description": "Tool to update an operational SMS transactional message by ID. Use when you need to modify the name, sender, or content of an existing SMS campaign. Important: You cannot update a campaign that has already been sent." }, { "slug": "ACTIVE_TRAIL_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing email template in ActiveTrail account. Use this action to modify template properties including: - Template name and subject line - HTML content/body - Editor type and display settings - Template categorization - Character encoding settings All fields except 'id' are optional - only provide the fields you want to update. The template will be updated with the new values while preserving any fields not specified. Note: To update only the HTML content of a template, consider using the 'Update Template Content' action instead." }, { "slug": "ACTIVE_TRAIL_UPDATE_TEMPLATE_CATEGORY", "name": "Update Template Category", "description": "Tool to update an existing template category in ActiveTrail. Use when you need to modify the name of a template category used for organizing email templates." }, { "slug": "ACTIVE_TRAIL_UPDATE_TEMPLATE_CONTENT", "name": "Update Template Content", "description": "Tool to update the HTML content of an email template in ActiveTrail. Use when you need to modify the design or layout of an existing template." }, { "slug": "ACTIVE_TRAIL_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in ActiveTrail. Use when you need to modify webhook properties such as name, URL, event type, format, or active status." }, { "slug": "ACTIVE_TRAIL_UPDATE_WEBHOOK_PARAMETER", "name": "Update Webhook Parameter", "description": "Tool to update an existing webhook parameter in your ActiveTrail account. Use when you need to modify parameter properties such as key, value, type, or field mappings for webhook events." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "active_trail_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Get your access token in your account under Integrations > API > API Keys (https://app.activetrail.com/Members/Settings/ApiApps.aspx)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "adafruit_io", "name": "Adafruit Io", "logo": "https://logos.composio.dev/api/adafruit_io", "description": "Cloud service for IoT projects that allows you to store, retrieve, and display sensor data", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "adafruit_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AIO Key", "type": "string", "description": "Your Adafruit IO API key (found at https://io.adafruit.com/)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "addevent", "name": "Addevent", "logo": "https://logos.composio.dev/api/addevent", "description": "AddEvent provides calendar and event management API for creating, managing, and tracking events across multiple calendar platforms", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "addevent_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AddEvent API key. Get it from https://dashboard.addevent.com/account/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "addressfinder", "name": "Addressfinder", "logo": "https://logos.composio.dev/api/addressfinder", "description": "A reliably smart, reliably accurate data quality platform for address, email, and phone verification", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ADDRESSFINDER_AU_ADDRESS_AUTOCOMPLETE_API", "name": "AU Address Autocomplete", "description": "Tool to perform interactive search of Australian addresses from the AddressFinder database. Use when you need to search for and autocomplete Australian addresses based on partial input." }, { "slug": "ADDRESSFINDER_AU_ADDRESS_METADATA", "name": "Get AU Address Metadata", "description": "Tool to retrieve full metadata for an Australian address selected from the Address Autocomplete API. Use when you need complete address details including GPS coordinates and census data." }, { "slug": "ADDRESSFINDER_AU_ADDRESS_VERIFICATION", "name": "AU Address Verification", "description": "Tool to verify Australian addresses against PAF/GNAF databases. Use when you need to validate or standardize an Australian address and retrieve associated metadata like coordinates, statistical identifiers, and GNAF data." }, { "slug": "ADDRESSFINDER_AU_LOCATION_AUTOCOMPLETE_API", "name": "AU Location Autocomplete", "description": "Tool to perform interactive autocomplete search for Australian streets, suburbs, and states. Use when you need to find or suggest Australian locations based on partial input." }, { "slug": "ADDRESSFINDER_AU_LOCATION_METADATA_API", "name": "Get AU Location Metadata", "description": "Tool to retrieve comprehensive metadata for an Australian location (street, suburb, or state) selected from the Location Autocomplete API. Use when you need detailed information about a specific Australian location including coordinates, street details, suburb, state, and postcode." }, { "slug": "ADDRESSFINDER_EMAIL_VERIFICATION_API", "name": "Email Verification API", "description": "Tool to verify email addresses including syntax validation, domain existence, and email account verification. Use when you need to validate an email address before sending messages or storing contact information." }, { "slug": "ADDRESSFINDER_INT_ADDRESS_AUTOCOMPLETE_API", "name": "International Address Autocomplete", "description": "Tool to search for international addresses using autocomplete functionality. Use when users need to find and select addresses in supported countries (AU, BE, CA, CZ, DK, FR, DE, IE, NZ, NL, PT, SG, ES, SE, GB, US). Returns address IDs that can be used with the Address Metadata API to retrieve full address details." }, { "slug": "ADDRESSFINDER_INT_ADDRESS_METADATA_API", "name": "Get International Address Metadata", "description": "Tool to retrieve full metadata for an international address selected from the Address Autocomplete API. Use when you need complete address details including street metadata and optional GPS coordinates for addresses outside your primary region." }, { "slug": "ADDRESSFINDER_NZ_ADDRESS_AUTOCOMPLETE", "name": "NZ Address Autocomplete", "description": "Tool to perform interactive search for New Zealand addresses. Use when you need to find closely matching NZ addresses based on partial address input. The tool searches the Addressfinder database and returns matching addresses which can then be selected by the user. Works with the Address Metadata API to retrieve associated address data using the pxid identifier." }, { "slug": "ADDRESSFINDER_NZ_ADDRESS_METADATA", "name": "Get NZ Address Metadata", "description": "Tool to retrieve full metadata for a NZ address including coordinates, census data, and postal details. Use after selecting an address from the Address Autocomplete API to get complete address information." }, { "slug": "ADDRESSFINDER_NZ_ADDRESS_REVERSE_GEOCODE", "name": "NZ Address Reverse Geocode", "description": "Tool to reverse geocode NZ addresses from GPS coordinates. Use when you need to find the nearest addresses to a given longitude and latitude. Returns addresses ordered by distance." }, { "slug": "ADDRESSFINDER_NZ_ADDRESS_VERIFICATION_API", "name": "NZ Address Verification", "description": "Tool to verify New Zealand addresses against the Addressfinder database. Use when you need to validate and enrich NZ addresses, correct spelling mistakes, or retrieve detailed address metadata including coordinates and postal information." }, { "slug": "ADDRESSFINDER_NZ_LOCATION_AUTOCOMPLETE", "name": "NZ Location Autocomplete", "description": "Tool to perform interactive search for New Zealand streets, suburbs, cities, and regions. Use when you need to find or autocomplete location names in New Zealand. Returns closely matching locations with unique identifiers for further metadata lookups." }, { "slug": "ADDRESSFINDER_NZ_LOCATION_METADATA", "name": "Get NZ Location Metadata", "description": "Tool to retrieve full metadata for a New Zealand location selected from the Location Autocomplete API. Use when you need detailed information including coordinates and LINZ address data for a specific location." }, { "slug": "ADDRESSFINDER_NZ_POI_AUTOCOMPLETE_API", "name": "NZ POI Autocomplete", "description": "Tool to perform interactive search for points of interest in New Zealand. Use when you need to find POIs like hospitals, cafes, or schools based on partial name matching." }, { "slug": "ADDRESSFINDER_NZPOI_METADATA_API", "name": "Get NZ POI Metadata", "description": "Tool to retrieve comprehensive metadata for New Zealand points of interest including coordinates and address details. Use when you need full POI information after selecting from autocomplete API." }, { "slug": "ADDRESSFINDER_PHONE_VERIFICATION_API", "name": "Phone Verification API", "description": "Tool to verify phone numbers through syntax, range checks, and network verification. Use when you need to validate a phone number's format, line type, and connection status. Returns verified number details including line type, connection status, and formatted representations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "addressfinder_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Secret", "type": "string", "description": "Your AddressFinder API secret. Get this from Projects > [Your Project] > Credentials in the AddressFinder Portal (portal.addressfinder.io)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Key", "type": "string", "description": "Your AddressFinder API key. Get this from Projects > [Your Project] > Credentials in the AddressFinder Portal (portal.addressfinder.io)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "addresszen", "name": "Addresszen", "logo": "https://logos.composio.dev/api/addresszen", "description": "AddressZen provides address autocomplete and verification services, offering real-time address suggestions and validation to ensure accurate and deliverable addresses.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ADDRESSZEN_KEY_AVAILABILITY", "name": "Key Availability", "description": "Tool to get public information on an API key, including whether it is currently usable. Use when you need to verify that a key is valid and available before making further API requests." }, { "slug": "ADDRESSZEN_RESOLVE_ADDRESS_USA", "name": "Resolve Address USA", "description": "Tool to resolve an address autocompletion by its address ID and return the full address in US format. Use after obtaining an address suggestion ID from the autocomplete endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "addresszen_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AddressZen API Key", "type": "string", "description": "Your unique API key for authenticating requests to AddressZen.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "adobe_document_generation_api", "name": "Adobe Document Generation Api", "logo": "https://logos.composio.dev/api/adobe_document_generation_api", "description": "Adobe Document Generation API enables automated document creation from templates using dynamic data", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "adobe_document_generation_api_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "adrapid", "name": "Adrapid", "logo": "https://logos.composio.dev/api/adrapid", "description": "Adrapid is a tool designed for efficient creation of digital marketing visuals, including banners, images, videos, and HTML5 content, utilizing reusable templates and offering automation through a REST API.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ADRAPID_GET_API_INFO", "name": "Get API info", "description": "Retrieves AdRapid API version information from the root endpoint. Use this tool to: - Check the current API version being used - Verify API connectivity and authentication - Ensure compatibility with API features Returns the current API version number (e.g., \"1.5.0\")." }, { "slug": "ADRAPID_GET_SYSTEM_ME", "name": "Get user and API info", "description": "Tool to get user account and API information. Use when you need to retrieve authenticated user details and API versions." }, { "slug": "ADRAPID_LIST_BANNERS", "name": "List Banners", "description": "Tool to list all banners and their statuses. Use when you need to retrieve banners after creation or to audit existing banners. Ensure you apply filters to narrow down results (e.g., status='ready')." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "adrapid_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Adrapid API Token", "type": "string", "description": "The API token used for authenticating requests to the Adrapid API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "adyntel", "name": "Adyntel", "logo": "https://logos.composio.dev/api/adyntel", "description": "Adyntel provides an API to retrieve LinkedIn ads for a given company using the company's domain or LinkedIn Page ID.", "category": "ads & conversion", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ADYNTEL_GET_GOOGLE_ADS_BY_COMPANY", "name": "Get Google Ads By Company", "description": "Retrieve Google ads for a company domain. Returns ad creatives including text, image, and video ads with advertiser information. Response includes a `total_ad_count` field that typically exceeds the count of ads in the returned `ads` array — a single call returns only a partial slice of all available ads." }, { "slug": "ADYNTEL_GET_GOOGLE_SHOPPING_SEARCH_STATUS", "name": "Get Google Shopping Search Status", "description": "Check the status and retrieve results of a Google Shopping ads search. Use the ID returned from the google_shopping endpoint. No credits charged for status checks." }, { "slug": "ADYNTEL_GET_LINKED_IN_ADS_BY_COMPANY", "name": "Get LinkedIn Ads By Company", "description": "Retrieve LinkedIn ads for a company by domain or LinkedIn page ID. Returns ad creatives and campaign details." }, { "slug": "ADYNTEL_GET_META_ADS_BY_COMPANY_OR_PAGE", "name": "Get Meta Ads By Company Or Page", "description": "Retrieve Meta/Facebook ads for a company domain or Facebook page URL. Returns ad creatives, engagement metrics, and campaign details." }, { "slug": "ADYNTEL_GET_PAID_VS_ORGANIC_KEYWORDS", "name": "Get Paid Vs Organic Keywords", "description": "Analyze paid vs organic keyword performance for a company domain. Returns keyword data comparing paid advertising and organic search performance." }, { "slug": "ADYNTEL_META_AD_SEARCH", "name": "Search Meta Ads", "description": "Search the Meta ad library." }, { "slug": "ADYNTEL_SEARCH_TIK_TOK_ADS_BY_KEYWORD", "name": "Search TikTok Ads By Keyword", "description": "Search the TikTok ad library using keywords. Returns matching ads with creative content, engagement metrics, and targeting information." }, { "slug": "ADYNTEL_START_GOOGLE_SHOPPING_SEARCH", "name": "Start Google Shopping Search", "description": "Start an asynchronous Google Shopping ads search for a company domain. Returns a job ID to check status with the google_shopping_status endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "adyntel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Adyntel API Key", "type": "string", "description": "Your Adyntel API key. Find it in your Adyntel.com profile under 'integrations'.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Adyntel Account Email", "type": "string", "description": "Your Adyntel account email address used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "aeroleads", "name": "Aeroleads", "logo": "https://logos.composio.dev/api/aeroleads", "description": "AeroLeads is a B2B lead generation platform that helps users find business emails and phone numbers of prospects.", "category": "contact management", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AEROLEADS_GET_DETAILS_FROM_LINKEDIN_URL", "name": "Get Details From LinkedIn URL", "description": "Tool to retrieve detailed information about a prospect using their LinkedIn profile URL. Use after confirming you have a valid public LinkedIn URL, to enrich lead profiles with additional details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "generic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AeroLeads API Key", "type": "string", "description": "Your AeroLeads API key, found in your AeroLeads account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "affinda", "name": "Affinda", "logo": "https://logos.composio.dev/api/affinda", "description": "Affinda provides an AI-powered document processing platform that automates data extraction from various document types.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 119, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AFFINDA_ADD_TAG_TO_DOCUMENTS", "name": "Add Tag to Documents", "description": "Tool to add a tag to multiple documents in a single operation. Use when you need to organize or categorize multiple documents by assigning them a shared tag. Tags enable efficient filtering and grouping of documents in your workspace." }, { "slug": "AFFINDA_BATCH_UPDATE_ANNOTATIONS", "name": "Batch Update Annotations", "description": "Batch update multiple document annotations in a single API call. Use this action to efficiently update parsed values or other fields across many annotations at once, rather than making individual update requests for each annotation. Prerequisites: - Obtain annotation IDs using the 'Get Annotations' action with a document filter - Annotations must exist in documents that have been processed by Affinda Common use cases: - Correcting OCR/extraction errors in bulk - Updating parsed values after manual review - Modifying annotation data programmatically" }, { "slug": "AFFINDA_CREATE_API_USER", "name": "Create API User", "description": "Tool to create a new API user within an organization. Use when you need to generate a new API user with authentication credentials for programmatic access to Affinda services." }, { "slug": "AFFINDA_CREATE_BATCH_ANNOTATIONS", "name": "Batch Create Annotations", "description": "Batch create multiple document annotations in a single API call. Use this action to efficiently create multiple annotations at once for documents that have been processed by Affinda. This is useful for programmatically adding structured data to documents or importing annotation data from external sources. Prerequisites: - Documents must be created first using 'Create Document' action - Obtain document identifiers from 'Create Document' or 'Get Documents' actions - Know the data point identifiers for your collection (from extractor configuration) Common use cases: - Importing annotation data from external systems - Programmatically adding structured data to documents - Creating annotations for validation or training purposes" }, { "slug": "AFFINDA_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection. Use after you have a valid workspace ID and want to group documents by a specific extractor within that workspace." }, { "slug": "AFFINDA_CREATE_DATA_FIELD_FOR_COLLECTION", "name": "Create Data Field For Collection", "description": "Tool to create a data field for a collection along with a new data point. Use when you need to add a custom field to a collection for document processing and validation." }, { "slug": "AFFINDA_CREATE_DATA_POINT", "name": "Create Data Point", "description": "Tool to create a custom data point for document extraction. Use when you need to define a new field that should be extracted from documents in a specific extractor. Note: This endpoint is deprecated but still functional. Data points define custom fields for extraction models." }, { "slug": "AFFINDA_CREATE_DATA_POINT_CHOICE", "name": "Create Data Point Choice", "description": "Tool to create a custom data point choice. Use when you need to add a new choice option for a specific data point in a collection or organization. Note: This endpoint is deprecated but still functional." }, { "slug": "AFFINDA_CREATE_DATA_SOURCE", "name": "Create Data Source", "description": "Tool to create a custom mapping data source. Use when you need to set up a new data source for mapping AI-extracted values to your database records." }, { "slug": "AFFINDA_CREATE_DATA_SOURCE_VALUE", "name": "Create Data Source Value", "description": "Tool to add a new value to a mapping data source. Use when you need to add entries to a data source for mapping or validation purposes. The created value can then be referenced in document extraction and mapping workflows." }, { "slug": "AFFINDA_CREATE_DOCUMENT", "name": "Create Document", "description": "Upload a document to Affinda for parsing and data extraction. Use this action when you need to: - Parse resumes/CVs to extract candidate information - Process invoices to extract line items, amounts, and vendor details - Extract data from any supported document type (PDF, DOCX, images) You can upload either a file directly or provide a publicly accessible URL. The document will be processed by Affinda's AI extraction engine. Prerequisites: - For collection-based uploads: Get collection ID from get_collections action - For workspace-specific uploads: Get workspace ID from get_workspaces action" }, { "slug": "AFFINDA_CREATE_DOCUMENT_TYPE", "name": "Create Document Type", "description": "Tool to create a new document type in the specified organization. Use when you need to define a new category of documents for processing. Document types allow you to organize and categorize documents within an organization." }, { "slug": "AFFINDA_CREATE_EXTRACTOR", "name": "Create Extractor", "description": "Tool to create a new extractor. Use when you need to define a custom document parser with specific fields and extraction rules, typically derived from a base extractor." }, { "slug": "AFFINDA_CREATE_FROM_DATA_DOCUMENTS", "name": "Create Document from Data", "description": "Create a document from structured resume or job description data for Search & Match. Use this when you have structured data to create a document programmatically without file uploads. Returns an identifier for subsequent status checks via /documents/{identifier}." }, { "slug": "AFFINDA_CREATE_INDEX", "name": "Create Index", "description": "Tool to create a new index for search and match functionality. Use when you need to set up a new index for organizing and searching documents like resumes or job descriptions." }, { "slug": "AFFINDA_CREATE_INVITATION", "name": "Create Invitation", "description": "Tool to create a new organization invitation. Use when you need to invite a user to join an organization with a specific role." }, { "slug": "AFFINDA_CREATE_JOB_DESCRIPTION_SEARCH", "name": "Create Job Description Search", "description": "Search through parsed job descriptions using custom criteria or resume matching. Use this action when you need to find job postings that match specific requirements such as skills, experience, location, education, or to find jobs matching a candidate's resume. Returns ranked results with detailed match scores." }, { "slug": "AFFINDA_CREATE_JOB_DESCRIPTION_SEARCH_EMBED_URL", "name": "Create Job Description Search Embed URL", "description": "Tool to create and return a signed URL for the embeddable job description search tool. Use this when you need to generate a URL that can be embedded on a web page to provide job description search functionality. Optionally pass config_override to customize display settings, field weights, and theme." }, { "slug": "AFFINDA_CREATE_MAPPING", "name": "Create Mapping", "description": "Tool to create a custom mapping for a data source. Use when you need to configure specific lookup settings for a MappingDataSource. Note: This endpoint is deprecated." }, { "slug": "AFFINDA_CREATE_ORGANIZATION", "name": "Create Organization", "description": "Tool to create a new organization. Use when you have a unique organization name and want to group resources under it." }, { "slug": "AFFINDA_CREATE_RESTHOOK_SUBSCRIPTION", "name": "Create RESTHook Subscription", "description": "Tool to create a new RESTHook subscription. Use after confirming your webhook endpoint is ready to receive document event notifications." }, { "slug": "AFFINDA_CREATE_RESUME_SEARCH", "name": "Create Resume Search", "description": "Tool to search through parsed resumes using three methods: match to a job description, match to a resume, or custom criteria. Use when you need to find candidates matching specific requirements." }, { "slug": "AFFINDA_CREATE_RESUME_SEARCH_EMBED_URL", "name": "Create Resume Search Embed URL", "description": "Tool to create and return a signed URL for the embeddable resume search tool. Use this when you need to generate a URL that can be embedded on a web page to provide resume search functionality. Optionally pass config_override to customize display settings, field weights, and theme." }, { "slug": "AFFINDA_CREATE_TAG", "name": "Create Tag", "description": "Creates a new tag in the specified workspace. Tags can be used to categorize and label documents for organization and filtering. Each tag name must be unique within its workspace. Returns the created tag with its ID and metadata." }, { "slug": "AFFINDA_CREATE_VALIDATION_RESULT", "name": "Create Validation Result", "description": "Create a validation result for document annotations in Affinda. Use this tool to record validation outcomes after parsing a document. Validation results track whether specific annotations (extracted data fields) pass or fail business rules. Prerequisites: 1. Get a document identifier from Get Documents or Create Document 2. Get annotation IDs from Get Annotations for that document 3. Define a kebab-case rule slug that identifies your validation rule Example use cases: - Recording that an invoice total matches the sum of line items - Marking that a required field is present and valid - Logging validation failures for review workflows" }, { "slug": "AFFINDA_CREATE_VALIDATION_RESULTS_BATCH", "name": "Batch Create Validation Results", "description": "Batch create multiple validation results for document annotations in a single API call. Use this action to efficiently record validation outcomes for multiple documents or rules at once, rather than making individual create requests for each validation result. This is particularly useful for bulk validation workflows or when validating multiple rules across many documents. Prerequisites: - Obtain document identifiers from Get Documents or Create Document actions - Get annotation IDs from Get Annotations for those documents - Define kebab-case rule slugs that identify your validation rules Common use cases: - Bulk recording of validation results across multiple documents - Validating multiple business rules on the same document - Automated validation workflows for large document batches" }, { "slug": "AFFINDA_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Tool to create a new workspace. Use when you need to programmatically create a workspace container within an organization." }, { "slug": "AFFINDA_CREATE_WORKSPACE_MEMBERSHIP", "name": "Create Workspace Membership", "description": "Tool to add a user to a workspace by creating a membership. Use when you need to grant a user access to a specific workspace." }, { "slug": "AFFINDA_DELETE_ANNOTATIONS_BATCH", "name": "Batch Delete Annotations", "description": "Batch delete multiple document annotations in a single API call. Use this action to efficiently remove multiple annotations at once rather than making individual delete requests for each annotation. Prerequisites: - Obtain annotation IDs using the 'Get Annotations' action with a document filter - Annotations must exist in documents that have been processed by Affinda Common use cases: - Removing incorrect or unwanted annotations in bulk - Cleaning up annotations after document reprocessing - Deleting specific extracted data fields programmatically" }, { "slug": "AFFINDA_DELETE_COLLECTION", "name": "Delete Collection", "description": "Permanently delete a collection from Affinda by its identifier. This is a destructive operation that cannot be undone. Use Get Collections first to verify the collection ID before deletion. Note: Documents in the collection may also be affected." }, { "slug": "AFFINDA_DELETE_DATA_POINT", "name": "Delete Data Point", "description": "Tool to permanently delete a data point by its identifier. Use when you need to remove a data point from the database after confirming the identifier. Note: This endpoint is deprecated but still functional." }, { "slug": "AFFINDA_DELETE_DATA_SOURCE", "name": "Delete Data Source", "description": "Permanently delete a mapping data source from the database by its identifier. This is a destructive operation that cannot be undone. Use when you need to remove a data source that is no longer needed or was created in error." }, { "slug": "AFFINDA_DELETE_DATA_SOURCE_VALUE", "name": "Delete Data Source Value", "description": "Tool to delete a specific value from a mapping data source. Use when you need to remove an incorrect or outdated value from a data source mapping." }, { "slug": "AFFINDA_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a specific document by its ID. Use when you need to remove a document that is incorrect or no longer needed, after confirming the document ID." }, { "slug": "AFFINDA_DELETE_DOCUMENT_TYPE", "name": "Delete Document Type", "description": "Tool to permanently delete a document type by its identifier. Use when you need to remove a document type that is no longer needed. This is a destructive operation that cannot be undone." }, { "slug": "AFFINDA_DELETE_EXTRACTOR", "name": "Delete Extractor", "description": "Permanently delete an extractor from Affinda by its identifier. This is a destructive operation that cannot be undone. Use Get Extractors first to verify the extractor ID before deletion. Note: This action is deprecated by the API." }, { "slug": "AFFINDA_DELETE_INDEX", "name": "Delete Index", "description": "Tool to permanently delete an index from Affinda by its name. Use when you need to remove an index that is no longer needed. This is a destructive operation that cannot be undone." }, { "slug": "AFFINDA_DELETE_INVITATION", "name": "Delete Invitation", "description": "Tool to delete an invitation by its identifier. Use when you need to remove or revoke an invitation after confirming the invitation identifier." }, { "slug": "AFFINDA_DELETE_MAPPING", "name": "Delete Mapping", "description": "Tool to delete a specific mapping by its identifier. Use when you need to remove an unused or incorrect mapping from the database. Note: This endpoint is deprecated." }, { "slug": "AFFINDA_DELETE_ORGANIZATION", "name": "Delete Organization", "description": "Permanently deletes an organization from Affinda. This action is destructive and cannot be undone. All workspaces, collections, and documents associated with the organization will also be deleted. Use the get_organizations action first to confirm the organization identifier before deletion." }, { "slug": "AFFINDA_DELETE_RESTHOOK_SUBSCRIPTION", "name": "Delete Resthook Subscription", "description": "Tool to delete a specific resthook subscription by ID. Use after confirming the subscription identifier when the webhook is no longer needed." }, { "slug": "AFFINDA_DELETE_TAG", "name": "Delete Tag", "description": "Permanently delete a tag from Affinda by its ID. This is a destructive operation that cannot be undone. Use Get Tags first to verify the tag ID before deletion." }, { "slug": "AFFINDA_DELETE_VALIDATION_RESULTS", "name": "Delete Validation Results", "description": "Delete multiple validation results in a single API call. Use this action to efficiently remove multiple validation results at once rather than making individual delete requests for each validation result. Prerequisites: - Obtain validation result IDs using the 'Get All Validation Results' action Common use cases: - Removing obsolete validation results in bulk - Cleaning up validation results after reprocessing documents - Deleting validation results for specific documents programmatically" }, { "slug": "AFFINDA_DELETE_WORKSPACE", "name": "Delete Workspace", "description": "Tool to delete a specific workspace by its ID. Use when you need to remove an unused workspace after confirming the workspace ID." }, { "slug": "AFFINDA_DELETE_WORKSPACE_MEMBERSHIP", "name": "Delete Workspace Membership", "description": "Tool to remove a user from a workspace by membership ID. Use after confirming the workspace membership ID to revoke access." }, { "slug": "AFFINDA_GET_ALL_API_USERS", "name": "Get All API Users", "description": "Tool to retrieve a list of all API users. Use when you need to list API users, optionally filtered by organization." }, { "slug": "AFFINDA_GET_ALL_DOCUMENT_SPLITTERS", "name": "Get All Document Splitters", "description": "Tool to get a list of all document splitters. Use when you need to retrieve document splitters, optionally filtered by organization." }, { "slug": "AFFINDA_GET_ALL_INVITATIONS", "name": "Get All Invitations", "description": "Tool to retrieve all invitations you created or sent to you. Use when you need to list organization invitations with optional filtering by status, role, or organization." }, { "slug": "AFFINDA_GET_ALL_ORGANIZATION_MEMBERSHIPS", "name": "Get Organization Memberships", "description": "Retrieve all organization memberships across the account. Returns paginated results showing which users belong to which organizations. Use to audit organization access or find specific user memberships." }, { "slug": "AFFINDA_GET_ALL_TAGS", "name": "Get Tags", "description": "Tool to list all tags. Use after confirming authentication to fetch tags across workspaces." }, { "slug": "AFFINDA_GET_ALL_VALIDATION_RESULTS", "name": "Get All Validation Results", "description": "Tool to list validation results for documents. Use after processing documents to inspect validation outcomes." }, { "slug": "AFFINDA_GET_ALL_WORKSPACE_MEMBERSHIPS", "name": "Get Workspace Memberships", "description": "Retrieve all workspace memberships across the account. Returns paginated results showing which users belong to which workspaces. Use to audit workspace access or find specific user memberships." }, { "slug": "AFFINDA_GET_ANNOTATIONS", "name": "Get Annotations", "description": "Retrieves all annotations for a specific document. Annotations are extracted data fields (text, dates, numbers, tables, etc.) from parsed documents. Use this after a document has been processed to access the extracted data." }, { "slug": "AFFINDA_GET_COLLECTION", "name": "Get Collection", "description": "Tool to retrieve details of a specific collection by its ID. Use when you need full metadata about a collection after confirming its identifier." }, { "slug": "AFFINDA_GET_COLLECTION_FIELDS", "name": "Get Collection Data Field", "description": "Tool to retrieve data field configuration for a collection associated with a data point. Use when you need to understand the structure and validation rules of a specific field in a collection. Note: This endpoint is deprecated." }, { "slug": "AFFINDA_GET_COLLECTIONS", "name": "Get Collections", "description": "Tool to retrieve a list of all collections. Use when you need to list collections in your Affinda workspace after authentication." }, { "slug": "AFFINDA_GET_COLLECTION_USAGE", "name": "Get Collection Usage", "description": "Retrieves monthly credits consumption statistics for a specific collection. Returns a list of usage records showing how many credits were consumed each month. Use this to track collection activity, monitor consumption trends, or generate usage reports. Note: This endpoint is deprecated." }, { "slug": "AFFINDA_GET_DATA_POINT", "name": "Get Data Point", "description": "Tool to retrieve details of a specific data point by its identifier. Use when you need to inspect a data point's configuration, type, or structure. Data points represent individual fields that can be extracted from documents (e.g., 'name', 'email', 'date'). This endpoint is deprecated but still functional for retrieving data point metadata." }, { "slug": "AFFINDA_GET_DATA_POINT_CHOICE", "name": "Get Data Point Choice", "description": "Tool to return a specific data point choice by its ID. Use when you need details about a particular data point choice option. Note: This endpoint is deprecated but still functional." }, { "slug": "AFFINDA_GET_DATA_SOURCE", "name": "Get Data Source", "description": "Tool to retrieve details of a specific mapping data source by its identifier. Use when you need to fetch mapping data source metadata and schema configuration." }, { "slug": "AFFINDA_GET_DATA_SOURCE_VALUE", "name": "Get Data Source Value", "description": "Tool to retrieve a specific value from a mapping data source. Use when you need to get details about a particular value in a data source." }, { "slug": "AFFINDA_GET_DATA_SOURCE_VALUES", "name": "Get Data Source Values", "description": "Tool to retrieve all values from a mapping data source. Use when you need to list or search values in a specific data source after authentication." }, { "slug": "AFFINDA_GET_DOCUMENT", "name": "Get Document", "description": "Retrieve full details and parsed data for a specific document by its identifier. Use this tool to get comprehensive information about a document including: - Processing status (ready/failed) - Document metadata (file name, page count, language) - Parsed/extracted data results - URLs for PDF, original file, and review page - Collection and workspace information The document identifier can be either a system-generated ID or a custom identifier set during document upload." }, { "slug": "AFFINDA_GET_DOCUMENT_REDACTED", "name": "Get Document Redacted", "description": "Tool to retrieve the redacted version of a document as a PDF file. Use when you need to get a document with sensitive information removed. The original document is not modified by this operation." }, { "slug": "AFFINDA_GET_DOCUMENTS", "name": "Get Documents", "description": "Tool to retrieve a list of all documents. Use when you need to list documents in your Affinda workspace after authentication." }, { "slug": "AFFINDA_GET_DOCUMENT_SPLITTER", "name": "Get Document Splitter", "description": "Tool to retrieve details of a specific document splitter by its identifier. Use when you need to fetch metadata about a document splitter configuration." }, { "slug": "AFFINDA_GET_DOCUMENT_TYPE", "name": "Get Document Type", "description": "Tool to retrieve details of a specific document type by its ID. Use when you need to confirm the configuration or metadata of a document type before processing documents." }, { "slug": "AFFINDA_GET_DOCUMENT_TYPE_JSON_SCHEMA", "name": "Get Document Type JSON Schema", "description": "Tool to generate a JSON schema from a document type by its identifier. Use when you need the structured schema definition for a document type to understand its field structure and validation rules." }, { "slug": "AFFINDA_GET_DOCUMENT_TYPE_PYDANTIC_MODELS", "name": "Get Document Type Pydantic Models", "description": "Tool to generate Pydantic model code from a document type's schema. Use when you need type-safe Python models for parsing documents of a specific type." }, { "slug": "AFFINDA_GET_DOCUMENT_TYPES", "name": "Get Document Types", "description": "Retrieve all document types accessible to the authenticated user. Returns a list containing each document type's identifier, name, description, ingest email, and organization. Use this to discover available document types before uploading or processing documents." }, { "slug": "AFFINDA_GET_EXTRACTOR", "name": "Get Extractor", "description": "Tool to retrieve detailed information about a specific extractor by its identifier. Use when you need complete metadata about an extractor's configuration, fields, and capabilities." }, { "slug": "AFFINDA_GET_EXTRACTORS", "name": "Get Extractors", "description": "Retrieve all extractors available for an organization. Extractors are document parsing configurations that define what data to extract from documents. This includes both Affinda's built-in extractors (resumes, invoices, etc.) and any custom extractors created for the organization. Use this action to: - List available extractors before creating a collection - Find the identifier of a specific extractor type - Check if custom extractors exist for the organization" }, { "slug": "AFFINDA_GET_INDEX_DOCUMENTS", "name": "Get Index Documents", "description": "Tool to retrieve all indexed documents for a specific index. Use when you need to list documents in a search index after creating or accessing an index." }, { "slug": "AFFINDA_GET_INVITATION", "name": "Get Invitation", "description": "Tool to retrieve details of a specific organization invitation by its identifier. Use when you need to check invitation status or get invitation metadata." }, { "slug": "AFFINDA_GET_JOB_DESCRIPTION_SEARCH_CONFIG", "name": "Get Job Description Search Config", "description": "Tool to get the configuration for the logged in user's embeddable job description search tool. Returns display settings, field weights, and maximum results limits." }, { "slug": "AFFINDA_GET_MAPPING", "name": "Get Mapping", "description": "Tool to retrieve a specific mapping by its identifier. Use when you need to fetch mapping configuration details for a lookup against a MappingDataSource." }, { "slug": "AFFINDA_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve details of a specific organization by its ID. Use when you need to fetch an organization's metadata after confirming its identifier." }, { "slug": "AFFINDA_GET_ORGANIZATION_MEMBERSHIP", "name": "Get Organization Membership", "description": "Tool to retrieve details of a specific organization membership by its ID. Use when you need to confirm a user's role and details within an organization." }, { "slug": "AFFINDA_GET_ORGANIZATIONS", "name": "Get Organizations", "description": "Retrieves all organizations accessible to the authenticated user. Returns a list of organizations with details including identifier, name, user role, trial status, and configuration settings. Use the 'identifier' field from the response when calling other organization-related endpoints." }, { "slug": "AFFINDA_GET_RESTHOOK_SUBSCRIPTION", "name": "Get Resthook Subscription", "description": "Tool to retrieve details of a specific resthook subscription by its ID. Use after confirming its creation to verify its settings." }, { "slug": "AFFINDA_GET_RESTHOOK_SUBSCRIPTIONS", "name": "Get RESTHook Subscriptions", "description": "Tool to retrieve a list of all RESTHook subscriptions. Use after authenticating to list all webhook subscriptions associated with your account." }, { "slug": "AFFINDA_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve details of a specific tag by its ID. Use when you need to fetch information about a particular tag." }, { "slug": "AFFINDA_GET_USAGE_BY_WORKSPACE", "name": "Get Usage by Workspace", "description": "Retrieves monthly document processing usage statistics for a specific workspace. Returns a list of usage records showing how many documents were processed each month. Use this to track workspace activity, monitor consumption trends, or generate usage reports." }, { "slug": "AFFINDA_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve details of a specific workspace by its ID. Use when you need full workspace metadata after confirming its identifier." }, { "slug": "AFFINDA_GET_WORKSPACE_MEMBERSHIP", "name": "Get Workspace Membership", "description": "Tool to retrieve details of a specific workspace membership by its ID. Use when you need to confirm a user's role and details within a workspace after obtaining the membership identifier." }, { "slug": "AFFINDA_GET_WORKSPACES", "name": "Get Workspaces", "description": "Tool to retrieve a list of all workspaces. Use when you need to list workspaces filtered by organization and optional name." }, { "slug": "AFFINDA_LIST_DATA_POINT_CHOICES", "name": "List Data Point Choices", "description": "Tool to retrieve available choices for a specific enum data point. Use when you need to discover valid options for dropdown/enum fields in a collection's data schema. Note: This endpoint is deprecated but still functional for accessing data point choice metadata." }, { "slug": "AFFINDA_LIST_DATA_POINTS", "name": "List Data Points", "description": "Tool to retrieve all data points. Returns both custom data points and Affinda's off-the-shelf data points. Use when you need to list available data points for extractors." }, { "slug": "AFFINDA_LIST_DATA_SOURCES", "name": "List Data Sources", "description": "Tool to retrieve the list of all custom mapping data sources. Use when you need to list or search for mapping data sources in your Affinda workspace." }, { "slug": "AFFINDA_LIST_INDEXES", "name": "List Indexes", "description": "Tool to retrieve a list of all search indexes. Use when you need to view available indexes for searching and matching documents in Affinda." }, { "slug": "AFFINDA_LIST_MAPPINGS", "name": "List Mappings", "description": "Tool to retrieve the list of all custom data mappings. Use when you need to list mappings for a specific data source." }, { "slug": "AFFINDA_LIST_OCCUPATION_GROUPS", "name": "List Occupation Groups", "description": "Tool to retrieve the list of searchable occupation groups. Use when you need to get available occupation categories for job matching or classification." }, { "slug": "AFFINDA_LIST_RESUME_SEARCH_CONFIG", "name": "List Resume Search Config", "description": "Tool to get the configuration for the logged in user's embeddable resume search tool. Use this to retrieve display field settings, search weights, maximum results, and theme customization options for the resume search interface." }, { "slug": "AFFINDA_LIST_RESUME_SEARCH_JOB_TITLE_SUGGESTIONS", "name": "List Resume Search Job Title Suggestions", "description": "Tool to get job title suggestions based on provided job title(s). Use when you need to find related job titles for resume search." }, { "slug": "AFFINDA_LIST_RESUME_SEARCH_SKILL_SUGGESTIONS", "name": "List Resume Search Skill Suggestions", "description": "Tool to get skill suggestions based on provided skills. Use when you need to find related skills to expand or refine resume search queries." }, { "slug": "AFFINDA_REMOVE_TAG_FROM_DOCUMENTS", "name": "Remove Tag from Documents", "description": "Remove a tag from multiple documents in a single batch operation. Use this action to efficiently untag many documents at once rather than making individual remove requests. The operation is idempotent - removing a tag that isn't present on a document will not cause an error." }, { "slug": "AFFINDA_REPLACE_DATA_POINT_CHOICES", "name": "Replace Data Point Choices", "description": "Tool to completely replace all choices for a data point. Use when you need to bulk update enum options - existing choices are matched by value, new values are created, updated values are modified, and values not in the incoming list are deleted. Note: This is a deprecated endpoint but still functional. Either collection or organization must be specified to scope the replacement." }, { "slug": "AFFINDA_REPLACE_DATA_SOURCE_VALUES", "name": "Replace Data Source Values", "description": "Tool to completely replace all values in a mapping data source. Use when you need to bulk update or refresh an entire data source's value list. Note: For large data sources (>1000 values), new values may take a few minutes to become searchable after the operation completes." }, { "slug": "AFFINDA_SPLIT_DOCUMENT_PAGES", "name": "Split Document Pages", "description": "Split a document into multiple documents by dividing its pages. Use when you need to separate a multi-page document into distinct documents based on page groupings. Prerequisites: - Obtain the document identifier from create_document or get_document actions - Use get_document to retrieve page IDs for the pages you want to split Important notes: - Each page can only be assigned to one split - All pages should be accounted for across all splits - One split can optionally use the original document identifier to maintain the root document" }, { "slug": "AFFINDA_UPDATE_ANNOTATION", "name": "Update Annotation", "description": "Tool to update data of a single annotation in Affinda. Use when you need to correct extracted values, verify annotations, or modify annotation metadata after document processing. Prerequisites: - Obtain the annotation ID using the 'Get Annotations' action with a document filter - Annotations must exist in documents that have been processed by Affinda Common use cases: - Correcting OCR or extraction errors in individual fields - Marking annotations as verified after manual review (set isClientVerified=true) - Updating parsed values to fix incorrect data extraction - Modifying annotation coordinates or page references Note: For bulk updates across multiple annotations, use the 'Batch Update Annotations' action instead for better efficiency." }, { "slug": "AFFINDA_UPDATE_COLLECTION", "name": "Update Collection", "description": "Tool to update specific fields of a collection. Use when you need to rename or reassign a collection after creation." }, { "slug": "AFFINDA_UPDATE_DATA_FIELD_FOR_COLLECTION", "name": "Update Data Field For Collection", "description": "Tool to update a data field configuration for a collection's data point. Use when you need to modify field properties such as label, type, mandatory status, or validation settings after the field has been created." }, { "slug": "AFFINDA_UPDATE_DATA_POINT", "name": "Update Data Point", "description": "Tool to update data of a data point by its identifier. Use when you need to modify a data point's name, description, slug, parent, or mapping data source. Note: This endpoint is deprecated but still functional." }, { "slug": "AFFINDA_UPDATE_DATA_POINT_CHOICE", "name": "Update Data Point Choice", "description": "Tool to update data of a data point choice by its ID. Use when you need to modify label, value, description, synonyms, or associated collection/organization for an existing data point choice. Note: This endpoint is deprecated but still functional." }, { "slug": "AFFINDA_UPDATE_DATA_SOURCE_VALUE", "name": "Update Data Source Value", "description": "Tool to update an existing value in a mapping data source. Use when you need to modify the label or description of an existing data source value. The value identifier itself cannot be changed." }, { "slug": "AFFINDA_UPDATE_DOCUMENT", "name": "Update Document", "description": "Tool to update specific fields of a document. Use when you need to rename, reassign, or adjust expiry and storage settings after document creation." }, { "slug": "AFFINDA_UPDATE_DOCUMENT_DATA", "name": "Update Document Data", "description": "Update parsed data for a resume or job description document in Affinda. This endpoint is ONLY applicable for documents that have been processed with 'resume' or 'job-description' extractors. For other document types, use the batch_update_annotations endpoint instead. Use this tool when you need to correct or add parsed fields to an existing resume or job description document after it has been uploaded and processed." }, { "slug": "AFFINDA_UPDATE_DOCUMENT_TYPE", "name": "Update Document Type", "description": "Tool to update a document type by its identifier. Use when you need to modify the name or description of an existing document type." }, { "slug": "AFFINDA_UPDATE_EXTRACTOR", "name": "Update Extractor", "description": "Tool to update specific fields of an extractor. Use when you need to modify an extractor's name, category, validation settings, or field groups after creation." }, { "slug": "AFFINDA_UPDATE_INDEX", "name": "Update Index", "description": "Tool to update the name of an existing search index. Use when you need to rename an index after creation." }, { "slug": "AFFINDA_UPDATE_INVITATION", "name": "Update Invitation", "description": "Tool to update an organization invitation's role. Use when you need to change the role assigned to an invitation before it is accepted." }, { "slug": "AFFINDA_UPDATE_JOB_DESCRIPTION_SEARCH_CONFIG", "name": "Update Job Description Search Config", "description": "Tool to update the configuration for the logged in user's embeddable job description search tool. Use to configure display fields, field weights, maximum results, and UI customization options." }, { "slug": "AFFINDA_UPDATE_MAPPING", "name": "Update Mapping", "description": "Tool to update a specific mapping's settings. Use when you need to adjust score cutoff or ordering for a lookup against a MappingDataSource." }, { "slug": "AFFINDA_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update specific fields of an organization. Use when you need to modify an organization's name, avatar, or webhook and validation settings after creation." }, { "slug": "AFFINDA_UPDATE_ORGANIZATION_MEMBERSHIP", "name": "Update Organization Membership", "description": "Tool to update an organization membership's role. Use when you need to change a user's role within an organization." }, { "slug": "AFFINDA_UPDATE_RESTHOOK_SUBSCRIPTION", "name": "Update RESTHook Subscription", "description": "Tool to update an existing RESTHook subscription. Use after confirming the subscription identifier to modify its URL, event, or activation status." }, { "slug": "AFFINDA_UPDATE_RESUME_SEARCH_CONFIG", "name": "Update Resume Search Config", "description": "Tool to update the configuration for the logged in user's embeddable resume search tool. Use this to modify which fields are displayed, their search weights, maximum results limit, distance units, custom actions, and theme settings." }, { "slug": "AFFINDA_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update data of a tag. Use when you need to modify a tag's name or reassign it to a different workspace. Only provide the fields you want to change; other fields will remain unchanged." }, { "slug": "AFFINDA_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Tool to update specific fields of a workspace. Use when you need to modify a workspace's name, visibility, document rejection policy, or other settings. Only provide the fields you want to change; other fields will remain unchanged." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "affinda_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Affinda API Key", "type": "string", "description": "The API key used for authenticating requests to the Affinda API.", "required": true, "default": null }, { "name": "workspace_id", "displayName": "Workspace ID", "type": "string", "description": "The identifier of the workspace within which the API operations are performed.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agency_analytics", "name": "Agency Analytics", "logo": "https://logos.composio.dev/api/agency_analytics", "description": "Agency Analytics is a white-label reporting platform for marketing agencies to manage client data and campaigns.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "agency_analytics_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Agency Analytics API key. Get it from Settings > API Playground in your Agency Analytics account (Admin users only).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agent_mail", "name": "Agent Mail", "logo": "https://logos.composio.dev/api/agent_mail", "description": "AgentMail provides AI agents with their own email inboxes, enabling them to send, receive, and act upon emails for communication with services, people, and other agents.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "AGENT_MAIL_CREATE_INBOX", "name": "Create Inbox", "description": "Create a new AgentMail inbox via API. Returns the inbox_id and email address for sending/receiving messages. Use when provisioning new inboxes for agents or workflows." }, { "slug": "AGENT_MAIL_GET_MESSAGE", "name": "Get Message", "description": "Retrieve the complete details of a specific email message from an AgentMail inbox. This action returns the full message content including sender, recipients, subject, body (both text and HTML), attachments, labels, and metadata. Use this to read individual messages after discovering them via LIST_MESSAGES or webhooks." }, { "slug": "AGENT_MAIL_LIST_INBOXES", "name": "List Inboxes", "description": "List all inboxes available to the authenticated AgentMail account. Use this to discover valid inbox_id values for message operations." }, { "slug": "AGENT_MAIL_LIST_MESSAGES", "name": "List Messages", "description": "List messages from an AgentMail inbox. Returns a `messages` array; each message uses `message_id` and `timestamp` fields (not `id`, `date`, or `items`)." }, { "slug": "AGENT_MAIL_SEND_EMAIL", "name": "Send Email", "description": "Send an email using AgentMail API" } ], "triggers": [ { "slug": "AGENT_MAIL_NEW_EMAIL_TRIGGER", "name": "New Email Received", "description": "Trigger for new emails in an AgentMail inbox" } ], "authConfigDetails": [ { "mode": "API_KEY", "name": "AgentMail_auth_1", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AgentMail API Key", "type": "string", "description": "Your secret AgentMail API key. Sign in to the AgentMail Console (console.agentmail.to), create a key from the dashboard, and paste it here.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agent_resources", "name": "Agent Resources", "logo": "https://logos.composio.dev/api/agent_resources", "description": "API platform for managing, monitoring, and certifying AI agents. Provides endpoints for agent registration, scanning, KYA certification, memory management, skills, and metrics tracking.", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "agent_resources_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Bearer token from Agent Resources workspace settings. Navigate to Settings → API Keys to generate one.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agentbroker", "name": "Agentbroker", "logo": "https://logos.composio.dev/api/agentbroker", "description": "AgentBroker is a trading platform API for AI agents to execute trades programmatically", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "agentbroker_bearer", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AgentBroker API key (starts with ab_). Get it by registering at https://agentbroker.polsia.app", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agentql", "name": "Agentql", "logo": "https://logos.composio.dev/api/agentql", "description": "AgentQL is a suite of tools designed to connect AI agents to the web, enabling web interaction and structured data extraction through a specialized query language.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AGENTQL_CREATE_REMOTE_BROWSER_SESSION", "name": "Create Remote Browser Session", "description": "Tool to create a remote browser session. Use when you need to run browser automation on remote infrastructure." }, { "slug": "AGENTQL_GET_USAGE", "name": "Get AgentQL Usage Statistics", "description": "Retrieves API usage statistics and subscription limits for the AgentQL account. Returns current billing cycle dates, lifetime usage limits, API key usage counts, and total account usage. Useful for monitoring quota consumption and planning usage. No parameters required - uses the authenticated API key from connection settings." }, { "slug": "AGENTQL_QUERY_DATA", "name": "Query Data", "description": "Tool to query structured data as JSON from a web page using an AgentQL query or natural language prompt. Use after defining your query or prompt and a URL or HTML." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "agentql_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AgentQL API Key", "type": "string", "description": "Your AgentQL API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agenty", "name": "Agenty", "logo": "https://logos.composio.dev/api/agenty", "description": "Agenty is a web scraping and automation platform that enables users to extract data, monitor changes, and automate browser tasks without coding.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 79, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "AGENTY_ADD_LIST_ROWS", "name": "Add List Rows", "description": "Tool to add new rows to a list. Use when you need to insert one or more data rows into an existing list. Column names in row objects must match the list's schema." }, { "slug": "AGENTY_AGENTS_CONTROLLER_CREATE_AGENT", "name": "Create Agent", "description": "Creates a new Agenty agent for web scraping, change detection, crawling, map monitoring, or brand monitoring. Use this tool to set up automated data extraction agents. Requires: - name: A descriptive name for the agent - type: One of 'scraping', 'changedetection', 'crawling', 'mapmonitoring', 'brandmonitoring' - config: Configuration object with url, browser, and collections defining what data to extract The config.collections array contains field definitions with CSS selectors or other extraction methods. Each field specifies what data to extract and how (TEXT content, ATTR for attributes, etc.). Optional: Set start=true to immediately run the agent after creation, or configure a scheduler for recurring runs. Returns the created agent with its unique agent_id for future reference." }, { "slug": "AGENTY_AGENTS_CONTROLLER_GET_TEMPLATES", "name": "Get Agent Templates", "description": "Tool to fetch all public agent templates and sample agents. Use when listing available templates for users to select." }, { "slug": "AGENTY_AGENTS_DELETE_BY_ID", "name": "Delete Agent by ID", "description": "Tool to delete a single agent by its ID. Use when you need to permanently remove an agent after confirming it exists." }, { "slug": "AGENTY_AGENTS_GET_ALL", "name": "Fetch all agents", "description": "Tool to fetch all active agents under an account. Use after authenticating when you need to list agents with pagination and sorting." }, { "slug": "AGENTY_AGENTS_GET_BY_ID", "name": "Get Agent by ID", "description": "Retrieves complete details of a specific agent including its configuration, input settings, scheduler, and metadata. Use this tool when you need to: - View full agent configuration and settings - Check agent type and current version - Access scheduler and script configurations - Verify agent status before executing jobs - Retrieve agent metadata for updates or cloning" }, { "slug": "AGENTY_AGENTS_UPDATE_BY_ID", "name": "Update Agent by ID", "description": "Updates an existing agent's configuration, settings, and metadata. Use this tool to modify an agent's properties such as name, type, config, tags, scheduler, scripts, or visibility settings. The API only returns the fields that were updated in the response, not the complete agent object. To get the full updated agent details, use the 'Get Agent by ID' action after updating. Example uses: - \"Update agent abc123 to change its name to 'Production Scraper'\" - \"Enable scheduling for agent xyz789 with a cron expression '0 */6 * * *'\" - \"Update agent def456 config to scrape a different URL\"" }, { "slug": "AGENTY_API_KEYS_CONTROLLER_CREATE_API_KEYS", "name": "Create API Key", "description": "Creates a new API key for programmatic access to the Agenty API. The generated API key can be used to authenticate API requests with different permission levels (Owner, Admin, or Manager). The key is returned in the response and should be securely stored as it provides access to your Agenty account." }, { "slug": "AGENTY_API_KEYS_DELETE_BY_ID", "name": "Delete API key by ID", "description": "Delete an API key by its unique identifier. Use this tool to permanently revoke access for a specific API key. The key_id can be obtained from the \"Get all API keys\" or \"Create API key\" actions. This action cannot be undone." }, { "slug": "AGENTY_API_KEYS_DOWNLOAD", "name": "Download API keys", "description": "Tool to download all API keys under an account in CSV format. Use when you need a complete list of API keys for export or backup." }, { "slug": "AGENTY_API_KEYS_GET_ALL", "name": "Get all API keys", "description": "Tool to retrieve all API keys under an account. Use after authentication when you need to list API keys with pagination and sorting." }, { "slug": "AGENTY_API_KEYS_GET_BY_ID", "name": "Get API key by ID", "description": "Retrieves detailed information about a specific API key by its ID. Use this action when you need to: - Get the full details of an API key including its value, role, and status - Verify the existence and properties of a specific API key - Check if an API key is enabled or disabled The key_id can be obtained from the 'Get all API keys' action or when creating a new API key." }, { "slug": "AGENTY_API_KEYS_RESET_BY_ID", "name": "Reset API key by ID", "description": "Resets (regenerates) the secret value of an existing API key. The old secret becomes invalid immediately. Important: This action only confirms the reset was successful but does NOT return the new secret. After resetting, use the 'Get API Key By ID' action to retrieve the new secret value. Use this when you need to: - Rotate API key secrets for security - Invalidate a compromised API key and generate a new secret - Update credentials as part of security maintenance" }, { "slug": "AGENTY_API_KEYS_UPDATE_BY_ID", "name": "Update API key by ID", "description": "Updates an existing API key's name and role by its unique identifier. This action allows you to modify the display name and permission level of an API key. Only the name and role fields can be updated; other properties are read-only. After updating, the action automatically fetches and returns the complete updated API key details. Use this when you need to: - Rename an API key for better identification - Change the permission level (Owner, Admin, or Manager) of an API key - Update multiple properties of an API key at once" }, { "slug": "AGENTY_CAPTURE_SCREENSHOT", "name": "Capture Screenshot", "description": "Tool to capture a full-page or visible screenshot of any webpage URL. Use when you need to capture visual representation of a webpage as an image file. The screenshot is captured using browser automation with default settings." }, { "slug": "AGENTY_CAPTURE_SCREENSHOT_WITH_OPTIONS", "name": "Capture Screenshot with Options", "description": "Tool to capture webpage screenshots with extensive customization options including full-page capture, image format, quality settings, viewport configuration, and post-processing. Use when you need to take screenshots of web pages with specific requirements for size, format, or rendering behavior." }, { "slug": "AGENTY_CHANGE_API_KEY_STATUS_BY_ID", "name": "Change API key status by ID", "description": "Toggles the enabled/disabled status of an API key. This endpoint switches the key between enabled and disabled states - if the key is currently enabled, it will be disabled, and vice versa. Returns a confirmation message upon successful status change. Use this after retrieving the key_id from the list or get API key endpoints." }, { "slug": "AGENTY_CONNECTIONS_GET_ALL", "name": "Get all connections", "description": "Retrieves all connections from your Agenty account. Supports pagination via limit/offset and sorting by field name. Returns an empty list if no connections exist." }, { "slug": "AGENTY_CONVERT_URL_TO_PDF", "name": "Convert URL to PDF", "description": "Tool to convert a webpage URL to a PDF document. Use when you need to generate a PDF file from a web page for archival, reporting, or offline viewing purposes." }, { "slug": "AGENTY_CONVERT_URL_TO_PDF_WITH_OPTIONS", "name": "Convert URL to PDF with Options", "description": "Tool to convert a URL or raw HTML to PDF with customizable options. Use when you need to generate PDFs with specific formatting requirements like custom page sizes, margins, headers/footers, or orientation. Supports both URL-based and HTML content conversion." }, { "slug": "AGENTY_COPY_AGENT", "name": "Copy Agent", "description": "Tool to copy an existing agent by its ID, creating a duplicate with optionally a new name. Use when you need to duplicate an agent's configuration to create a similar agent without starting from scratch." }, { "slug": "AGENTY_CREATE_WORKFLOW", "name": "Create Workflow", "description": "Creates a new workflow in Agenty to automate actions based on agent events. Use this to set up automated responses like sending emails, triggering webhooks, or notifications when specific agent events occur (e.g., job completed, job failed)." }, { "slug": "AGENTY_DASHBOARD_GET_REPORTS_USAGE", "name": "Get dashboard reports and usage", "description": "Tool to fetch account reports like pages used by agent, date, and product. Use when analyzing usage over a date range." }, { "slug": "AGENTY_DELETE_LIST_ROW", "name": "Delete List Row by ID", "description": "Tool to delete a specific row from a list by its unique identifier. Use when you need to permanently remove a single row from a list." }, { "slug": "AGENTY_DELETE_LIST_ROWS", "name": "Delete List Rows by IDs", "description": "Tool to delete specific rows from a list by their IDs. Use when you need to remove one or more rows from a list by providing their unique identifiers." }, { "slug": "AGENTY_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project by its ID. Use when you need to permanently remove a project. This action cannot be undone, so ensure the project ID is correct before deletion." }, { "slug": "AGENTY_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Tool to delete a schedule for an agent by its agent ID. Use when you need to remove scheduled automation for a specific agent." }, { "slug": "AGENTY_DELETE_WORKFLOW", "name": "Delete Workflow by ID", "description": "Tool to delete a workflow by its ID. Use when you need to permanently remove a workflow after confirming it exists." }, { "slug": "AGENTY_DOWNLOAD_AGENT_RESULT", "name": "Download Agent Result", "description": "Tool to download agent results by agent ID in CSV, TSV or JSON format. Use when you need to export or analyze agent execution results as a file." }, { "slug": "AGENTY_DOWNLOAD_LIST_ROWS", "name": "Download List Rows", "description": "Tool to download list rows as CSV file. Use when you need to export or backup all rows from a specific list." }, { "slug": "AGENTY_DOWNLOAD_USERS", "name": "Download users", "description": "Tool to download users list in CSV format. Use when you need to export or backup the complete list of team members and users." }, { "slug": "AGENTY_DOWNLOAD_WORKFLOWS", "name": "Download workflows", "description": "Tool to download all workflows in CSV format. Use when you need to export or backup all workflows from your account." }, { "slug": "AGENTY_EXTRACT_BROWSER_STRUCTURED_DATA", "name": "Extract Structured Data", "description": "Tool to auto-extract structured data from a webpage including schema.org, RDFa, Microdata, and JSON-LD formats. Use when you need to automatically extract semantic markup from web pages without writing custom scraping rules. The API returns organized structured data in four categories: metatags, microdata, rdfa, and jsonld." }, { "slug": "AGENTY_EXTRACT_STRUCTURED_DATA", "name": "Extract Structured Data from URL", "description": "Tool to auto-extract structured data from a webpage URL. Use when you need to extract schema.org, RDFa, Microdata, or JSON-LD structured data from web pages." }, { "slug": "AGENTY_GET_AGENT_RESULT", "name": "Get Agent Result", "description": "Tool to get the most recent result data for an agent. Use when you need to retrieve and view the scraped/collected data from an agent's latest execution. Returns result data with pagination support." }, { "slug": "AGENTY_GET_ALL_TEAM_MEMBERS", "name": "Get all team members", "description": "Tool to retrieve all team members (users) under an account. Use after authentication when you need to list team members with pagination, sorting, and search filtering." }, { "slug": "AGENTY_GET_BROWSER_REDIRECTS", "name": "Get URL Redirects", "description": "Tool to get the complete redirect chain for a URL. Use when you need to trace how a URL redirects, including both server-side (HTTP 3xx redirects) and client-side redirects (JavaScript, meta tags). Returns an ordered list of all redirect steps from the original URL to the final destination." }, { "slug": "AGENTY_GET_JOB_RESULT", "name": "Get Job Result", "description": "Tool to get the result data from a completed job. Use when you need to retrieve and view the scraped/collected data from a finished job. Returns result data with pagination support." }, { "slug": "AGENTY_GET_LIST_BY_ID", "name": "Get list by ID", "description": "Retrieves detailed information about a specific list by its ID. Use this action when you need to: - Get the full details of a list including its name, description, and metadata - Verify the existence of a specific list - Check when a list was created or last updated - Access additional data associated with a list The list_id can be obtained from the 'Get all lists' action or when creating a new list." }, { "slug": "AGENTY_GET_LIST_ROW_BY_ID", "name": "Get List Row by ID", "description": "Tool to fetch a specific row by its ID from a list. Use when you need to retrieve a single data entry from a list using its unique identifier." }, { "slug": "AGENTY_GET_PAGE_CONTENT", "name": "Get Page Content", "description": "Tool to fetch the complete HTML content of any webpage URL. Use this when you need to retrieve the full HTML source code of a page, including content rendered after JavaScript execution. The API navigates to the URL using proxies and captures the page's source content." }, { "slug": "AGENTY_GET_PAGE_CONTENT_WITH_OPTIONS", "name": "Get Page Content with Options", "description": "Tool to fetch HTML content of a webpage with custom options including ad blocking. Use this when you need to retrieve the full HTML source of a webpage, particularly for web scraping or content analysis tasks. The tool supports ad blocking to speed up page loads and reduce unnecessary content." }, { "slug": "AGENTY_GET_PROJECT_BY_ID", "name": "Get Project by ID", "description": "Retrieves complete details of a specific project by its ID, including name, description, creator information, and timestamps. Use this to get project metadata before adding agents, checking project existence, or verifying project details for updates." }, { "slug": "AGENTY_GET_REDIRECTS_WITH_OPTIONS", "name": "Get Redirects with Options", "description": "Tool to get the complete redirect chain of a URL with custom navigation options. Use when you need to trace URL redirects including both server-side (3xx) and client-side redirects (JavaScript, meta tags). Supports custom timeout and navigation wait conditions to ensure all redirects are captured." }, { "slug": "AGENTY_GET_SCHEDULE", "name": "Get Agent Schedule", "description": "Tool to retrieve the schedule configuration for a specific agent. Use when you need to check the current scheduling settings for an agent." }, { "slug": "AGENTY_GET_USER_BY_ID", "name": "Get User by ID", "description": "Tool to retrieve detailed information about a user by their ID. Use this to fetch user profile data including email, role, status, and activity timestamps." }, { "slug": "AGENTY_GET_WORKFLOW_BY_ID", "name": "Get Workflow by ID", "description": "Retrieves complete details of a specific workflow by its ID. Use this to view workflow configuration including agents, triggers, and actions before updating or deleting." }, { "slug": "AGENTY_INPUTS_GET_BY_AGENT_ID", "name": "Get agent input by ID", "description": "Retrieves the input configuration for a specific agent by its ID. Returns the input source type (URL, manual list, saved list reference, or another agent's output) and associated configuration details. Use this to inspect an agent's current input setup before modifying it or starting a job, or to verify what data sources an agent will process." }, { "slug": "AGENTY_INPUTS_UPDATE_BY_AGENT_ID", "name": "Update Input by Agent ID", "description": "Updates the input configuration for a specific agent in Agenty. This tool modifies where an agent gets its input data from. You can configure the agent to: - Pull from a URL feed (type='url') - Use a manually specified list of URLs (type='manual') - Reference data from an Agenty list (type='list') - Use output from another agent (type='agent') Use this after creating or identifying an agent to set up its data source before running jobs." }, { "slug": "AGENTY_JOBS_DOWNLOAD", "name": "Download jobs", "description": "Tool to download all jobs in CSV format. Use when you need a complete list of jobs for export or analysis." }, { "slug": "AGENTY_JOBS_DOWNLOAD_FILES_BY_ID", "name": "Download job file by ID", "description": "Tool to download output files by job ID. Use when you need to fetch a specific output file after a job completes." }, { "slug": "AGENTY_JOBS_DOWNLOAD_RESULT_BY_ID", "name": "Download Job Result by ID", "description": "Tool to download the agent output result by job ID. Use when you need to fetch the final output of a completed job in CSV, TSV, or JSON format." }, { "slug": "AGENTY_JOBS_GET_ALL", "name": "Fetch all jobs", "description": "Tool to fetch all jobs under an account. Use when you need to view and filter the list of jobs with pagination and sorting." }, { "slug": "AGENTY_JOBS_GET_BY_ID", "name": "Get Job by ID", "description": "Retrieves comprehensive details about a specific job including its status, progress metrics (pages processed/succeeded/failed), timing information (created/started/completed times), resource consumption (page credits), and any error messages. Use this action to check job status, monitor execution progress, or diagnose job failures. Returns complete job metadata needed before downloading results." }, { "slug": "AGENTY_JOBS_GET_LOGS_BY_ID", "name": "Get Job Logs by ID", "description": "Tool to fetch logs for a given job by its ID. Use when you need to review or debug job execution logs with pagination support." }, { "slug": "AGENTY_JOBS_LIST_FILES_BY_ID", "name": "List job output files", "description": "Lists all output files generated by a specific job. Returns file names and sizes for available downloads including CSV/JSON/TSV data exports and compressed logs. Use this after a job completes to discover what output files are available before downloading them." }, { "slug": "AGENTY_JOBS_START", "name": "Start Agent Job", "description": "Tool to start a new agent job. Use when you need to trigger execution of an existing agent." }, { "slug": "AGENTY_JOBS_STOP_BY_ID", "name": "Stop Job by ID", "description": "Tool to stop a running job by job ID. Use when you need to halt an in-progress job before it completes. Confirm the job ID beforehand to avoid unintended stops." }, { "slug": "AGENTY_LISTS_CLEAR_ROWS", "name": "Clear List Rows", "description": "Tool to clear all rows in a list by its ID. Use when you need to wipe out all data in a list before re-populating (e.g., \"Clear all rows in list 123\")." }, { "slug": "AGENTY_LISTS_CONTROLLER_CREATE_LIST", "name": "Create List", "description": "Tool to create a new list. Use after preparing the list name and optional description. Example: \"Create a list named 'Contacts' with description 'Potential leads'.\"" }, { "slug": "AGENTY_LISTS_DELETE_BY_ID", "name": "Delete List by ID", "description": "Tool to delete a specific list by its ID. Use when you need to permanently remove a list after confirming it exists." }, { "slug": "AGENTY_LISTS_DOWNLOAD", "name": "Download lists", "description": "Tool to download all lists in CSV format. Use when you need a complete set of lists for export or backup." }, { "slug": "AGENTY_LISTS_GET_ALL", "name": "Get all lists", "description": "Tool to retrieve all lists under an account. Use after authentication when you need to list lists with pagination and sorting." }, { "slug": "AGENTY_LISTS_GET_ROWS_BY_ID", "name": "Fetch List Rows by ID", "description": "Tool to fetch all rows in a specified list. Use when you need to retrieve all data entries from a list with optional pagination and sorting. Example: \"Fetch rows from list '61db...' with limit=50\"." }, { "slug": "AGENTY_LISTS_UPDATE_BY_ID", "name": "Update List by ID", "description": "Tool to update a list's name and optionally description by list ID. The name field is always required. Use when you need to modify list metadata after confirming its ID. Example: \"Update list 123 with name 'My Updated List' and description 'New description'\"." }, { "slug": "AGENTY_LISTS_UPLOAD_CSV", "name": "Upload CSV file to List", "description": "Tool to upload a CSV file to an Agenty list for bulk import of data rows. Use this action when you need to: - Import multiple rows of data into an existing list from a CSV file - Bulk update list data - Add structured tabular data to a list Prerequisites: The target list must already exist. Use the 'Create List' action first if needed." }, { "slug": "AGENTY_PATCH_WORKFLOW", "name": "Patch Workflow", "description": "Tool to partially update a workflow by ID. Use when you need to update specific fields of a workflow without replacing the entire workflow object. This action performs a PATCH operation, allowing you to update only the fields you specify (e.g., just the name) without affecting other workflow properties. Currently supports updating the workflow name." }, { "slug": "AGENTY_PROJECTS_ADD_AGENTS", "name": "Add Agents to Project", "description": "Add one or more agents to an Agenty project to organize and group related agents together. This action associates agents with a project, allowing better organization and management of your automation workflows. The response includes the complete updated project information with all associated agents. Prerequisites: - Project must exist (use projects_get_all to find valid project IDs) - Agent(s) must exist (use agents_get_all to find valid agent IDs) Example usage: \"Add agents ['tx8lubfbun', 'o3xuc2n8es'] to project 7\"" }, { "slug": "AGENTY_PROJECTS_CONTROLLER_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new project in Agenty. Use this to initialize a project with a name and optional description." }, { "slug": "AGENTY_PROJECTS_GET_ALL", "name": "Get all projects", "description": "Retrieve all projects in the authenticated user's account. Returns a paginated list of projects with metadata (total count, pagination info). Use this to discover available projects, check project existence, or get project IDs for other operations. Supports sorting by fields like 'name' or 'created_at'." }, { "slug": "AGENTY_REMOVE_AGENT_FROM_PROJECT", "name": "Remove Agent from Project", "description": "Remove an agent from an Agenty project. Use when you need to disassociate an agent from a project while keeping both the agent and project intact. The agent will no longer be part of the project's organization structure." }, { "slug": "AGENTY_SCRAPE_WEBPAGE_DATA", "name": "Scrape Webpage Data", "description": "Tool to scrape data from any webpage using jQuery/CSS selectors. Use when you need to extract specific data from web pages by defining jQuery selector expressions. Each query field maps a name to a jQuery expression (e.g., \"$('h1').text()\" extracts the h1 text). The browser will load the page, execute JavaScript, and run your jQuery queries to extract the data." }, { "slug": "AGENTY_TOGGLE_SCHEDULE", "name": "Toggle Agent Schedule", "description": "Tool to toggle schedule on/off for an agent. Use when you need to enable or disable an agent's scheduled execution without modifying other agent settings." }, { "slug": "AGENTY_TRANSFER_AGENT_OWNERSHIP", "name": "Transfer Agent Ownership", "description": "Tool to transfer agent ownership to another Agenty account. Use when you need to move an agent to a different user's account by specifying their email address." }, { "slug": "AGENTY_UPDATE_LIST_ROW", "name": "Update List Row", "description": "Tool to update a specific row in a list by list ID and row ID. Use when you need to modify existing data in a list row. The row_data must include the '_id' field and any column fields (col1, col2, etc.) you want to update." }, { "slug": "AGENTY_UPDATE_PROJECT", "name": "Update Project", "description": "Update an existing project's name and description in Agenty. Use this to modify project details such as changing the project name or updating its description." }, { "slug": "AGENTY_UPDATE_SCHEDULE", "name": "Update Agent Schedule", "description": "Updates the schedule configuration for a specific agent. Use when you need to modify how often an agent runs automatically." }, { "slug": "AGENTY_UPDATE_USER_BY_ID", "name": "Update User by ID", "description": "Tool to update a user's information by user ID. Use this to modify user properties including email, role, status, name, and subscription settings. Email, role, and status are required fields." }, { "slug": "AGENTY_UPDATE_WORKFLOW", "name": "Update Workflow", "description": "Tool to update an existing workflow's configuration by workflow ID. Use this to modify workflow properties including name, agent selection, trigger conditions, and actions to execute. Workflows automate responses to agent events such as job completion, errors, or change detection. Common use cases include sending notifications, triggering webhooks, or updating external systems." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "agenty_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Agenty API Key", "type": "string", "description": "Your Agenty API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agiled", "name": "Agiled", "logo": "https://logos.composio.dev/api/agiled", "description": "Agiled is an all-in-one business management platform designed to streamline operations such as CRM, project management, finance, and more.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AGILED_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new expense in Agiled. Use after gathering expense details and authenticating with your API key." }, { "slug": "AGILED_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Agiled. Use when you have collected all project details and need to set up the project before assigning tasks. Example: \"Create a new project named Website Redesign with start date 2023-09-01 and status in progress.\"" }, { "slug": "AGILED_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Agiled. Use when you have all task details and want to add it to your project board. Example: \"Create a task titled 'Draft specs' for project 45, assigned to user 7, priority normal, due date 2025-11-05.\"" }, { "slug": "AGILED_CREATE_TICKET", "name": "Create Ticket", "description": "Tool to create a new support ticket in Agiled. Use after gathering all required ticket details (subject, message, priority, user ID)." }, { "slug": "AGILED_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of all contacts. Use after configuring the API key to fetch contacts with optional pagination or search filters." }, { "slug": "AGILED_GET_CURRENCIES", "name": "Get Currencies", "description": "Tool to list currencies. Use when you need to fetch available currency options after authentication." }, { "slug": "AGILED_GET_DEALS", "name": "Get Deals", "description": "Tool to retrieve a list of all deals. Use after confirming your API key to list all deals for CRM reporting." }, { "slug": "AGILED_GET_EMPLOYEES", "name": "Get Employees", "description": "Tool to retrieve a list of all employees. Use when you need up-to-date employee directory from Agiled." }, { "slug": "AGILED_GET_ESTIMATES", "name": "Get Estimates", "description": "Tool to retrieve a list of all estimates. Use after configuring the API key to list estimates for reporting." }, { "slug": "AGILED_GET_EXPENSES", "name": "Get Expenses", "description": "Tool to retrieve a list of all expenses. Use after authenticating with your Agiled API key to fetch all expense records." }, { "slug": "AGILED_GET_INVOICES", "name": "Get Invoices", "description": "Tool to retrieve a list of all invoices from Agiled. Use after obtaining valid API credentials." }, { "slug": "AGILED_GET_PRODUCTS", "name": "Get Products", "description": "Tool to retrieve a list of all products. Use when you need to display all available offerings." }, { "slug": "AGILED_GET_PROJECT_CATEGORIES", "name": "Get Project Categories", "description": "Tool to retrieve a list of all project categories. Use when you need to fetch category options before creating or filtering projects after authentication." }, { "slug": "AGILED_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a list of all projects. Use after obtaining the API token." }, { "slug": "AGILED_GET_TASKS", "name": "GET_TASKS", "description": "Tool to retrieve a list of all tasks. Use when you need to fetch all tasks across your account after authentication." }, { "slug": "AGILED_GET_TICKETS", "name": "Get Tickets", "description": "Tool to retrieve a list of all tickets. Use after obtaining API token when you need an overview of support or issue tickets." }, { "slug": "AGILED_GET_TIMESHEETS", "name": "Get Timesheets", "description": "Tool to retrieve timesheets for a project. Use when you have a valid project ID to fetch all its time logs." }, { "slug": "AGILED_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of users from Agiled. Use when you need the full user directory for selection or validation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "agiled_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Agiled API Key", "type": "string", "description": "The API key used for authenticating requests to the Agiled API. Obtain it from your Agiled account under 'Profile' > 'API Settings'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "agility_cms", "name": "Agility CMS", "logo": "https://logos.composio.dev/api/agility_cms", "description": "Agility CMS is a headless content management system that allows developers to build and manage digital experiences across various platforms.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AGILITY_CMS_GET_API_TYPES", "name": "Get API Types", "description": "Tool to retrieve all enum types used throughout the Agility CMS Management API. Use when you need to understand available values for status codes, types, permissions, and other enumerated fields." }, { "slug": "AGILITY_CMS_GET_CONTENT_ITEM", "name": "Get Content Item", "description": "Tool to fetch details of a content item by Content ID. Use when you need item fields and metadata from Agility CMS." }, { "slug": "AGILITY_CMS_GET_CONTENT_LIST", "name": "Get Content List", "description": "Retrieves a paginated list of content items by reference name from Agility CMS. Use this action to: - Fetch multiple content items of a specific type (e.g., blog posts, products, authors) - Retrieve content with pagination, filtering, and sorting capabilities - Expand linked content to specified depths Required parameters: instance GUID, API type (fetch/preview), locale code, and lowercase reference name. Tip: Use Get Content Models action first to discover available reference names for your instance." }, { "slug": "AGILITY_CMS_GET_CONTENT_MODELS", "name": "Get Content Models", "description": "Tool to retrieve content models and page modules. Use when you need schema definitions to dynamically build content structures." }, { "slug": "AGILITY_CMS_GET_LOGS", "name": "Get Logs", "description": "Retrieve sync items (content change logs) from Agility CMS using the Content Sync API. This tool implements incremental content synchronization: - Use syncToken='0' for initial full sync (retrieves all content) - Use the returned syncToken in subsequent calls to get only new/updated content - Maximum pageSize is 500 items per request - Continue pagination until syncToken='0' is returned (indicating you're up to date) Typical workflow: 1. Call with syncToken='0' to get initial content batch 2. Store the returned syncToken 3. On next sync, pass the stored syncToken to get only changes since last sync 4. Repeat until syncToken='0' (no more updates)" }, { "slug": "AGILITY_CMS_GET_PAGE", "name": "Get Page", "description": "Tool to retrieve details of a Page, including metadata, content zones, and components. Use after you know the page_id to fetch." }, { "slug": "AGILITY_CMS_GET_PAGE_MODULES", "name": "Get Page Modules", "description": "Retrieves page module definitions from Agility CMS. Page modules are UI components that can be added to pages. This action fetches all model definitions and filters to return only page modules (definitions without contentReferenceNames). Use this to understand what page modules are available for building pages. For content type definitions, use Get Content Models instead." }, { "slug": "AGILITY_CMS_GET_SITEMAP_FLAT", "name": "Get Sitemap Flat", "description": "Retrieves the flat sitemap for a specific channel and locale in Agility CMS. Returns a dictionary mapping page paths to sitemap items containing page metadata, SEO info, and routing details. Use this when you need to get all pages and their URLs for implementing page routing, generating sitemaps, or navigating the site structure. Required: instance GUID, API type (fetch/preview), locale code, and channel name." }, { "slug": "AGILITY_CMS_SYNC_PAGES", "name": "Sync Pages", "description": "Retrieves all page items from Agility CMS in paged format with sync tokens for incremental updates. Use this to synchronize local page data with the CMS. Start with syncToken=0 for initial sync, then use the returned syncToken in subsequent calls to get only changed pages. Each response includes page metadata, SEO fields, visibility settings, and script configurations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "agilitycms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Base URL", "type": "string", "description": "API base URL for your region. USA: https://api.aglty.io, Canada: https://api-ca.aglty.io, Europe: https://api-eu.aglty.io, Australia: https://api-aus.aglty.io", "required": true, "default": "https://api.aglty.io" }, { "name": "suffix.one", "displayName": "API Type", "type": "string", "description": "The type of API to access: 'preview' for draft content or 'fetch' for published content.", "required": true, "default": "fetch" }, { "name": "suffix.two", "displayName": "Instance GUID", "type": "string", "description": "The unique identifier for your Agility CMS instance.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Agility CMS API Key", "type": "string", "description": "The secret API Key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ai_ml_api", "name": "AI/ML API", "logo": "https://logos.composio.dev/api/ai_ml_api", "description": "AI/ML API provides a suite of AI models and solutions for various tasks, including text generation, image processing, and more.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AI_ML_API_CANCEL_RUN", "name": "Cancel Run", "description": "Tool to cancel a run that is currently in progress. Use when you need to stop an assistant run before it completes." }, { "slug": "AI_ML_API_CREATE_ASSISTANT", "name": "Create Assistant", "description": "Tool to create an AI assistant with configurable model, instructions, and tools. Use when you need to set up a new assistant that can maintain conversation context and use tools like code_interpreter or file_search." }, { "slug": "AI_ML_API_CREATE_MESSAGE", "name": "Create Message", "description": "Tool to create a new message in a thread. Use when you need to add a user or assistant message to an existing conversation thread." }, { "slug": "AI_ML_API_CREATE_RUN", "name": "Create Run", "description": "Tool to create a run that executes an assistant on a thread. The assistant processes messages in the thread and generates responses based on its instructions and available tools." }, { "slug": "AI_ML_API_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread for conversation with an assistant. Threads store messages and maintain context across interactions. Use when starting a new conversation or when you need a fresh context for assistant interactions." }, { "slug": "AI_ML_API_DELETE_ASSISTANT", "name": "Delete Assistant", "description": "Tool to delete an assistant by ID. Use when you need to remove an assistant that is no longer needed." }, { "slug": "AI_ML_API_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a specific message from a thread. Use when you need to remove an unwanted or erroneous message from a conversation thread." }, { "slug": "AI_ML_API_DELETE_THREAD", "name": "Delete Thread", "description": "Tool to delete a thread by its ID. Use when you need to remove an existing thread from the system." }, { "slug": "AI_ML_API_GET_ASSISTANT", "name": "Get Assistant", "description": "Tool to retrieve details of a specific assistant by ID. Use when you need to fetch configuration, model settings, instructions, or available tools for an existing assistant." }, { "slug": "AI_ML_API_GET_BILLING_BALANCE", "name": "Get Billing Balance", "description": "Tool to retrieve the current billing balance for the account. Use when you need to check available credits, balance status, or auto-debit configuration." }, { "slug": "AI_ML_API_GET_LUMA_GENERATION", "name": "Get Luma Generation", "description": "Tool to fetch Luma AI video generation results by generation IDs. Use after creating a generation to check its status and retrieve the generated video URL when completed." }, { "slug": "AI_ML_API_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve information about a specific message by its ID. Use when you need to fetch details of a particular message in a thread." }, { "slug": "AI_ML_API_GET_RESPONSE", "name": "Get Response by ID", "description": "Tool to retrieve a previously generated model response by its unique ID. Use when you need to access details of a specific response, including its output, status, and usage statistics." }, { "slug": "AI_ML_API_GET_RUN", "name": "Get Run", "description": "Tool to retrieve a specific run by ID from a thread. Use when you need to check the status, results, or details of a previously created run." }, { "slug": "AI_ML_API_GET_RUN_STEP", "name": "Get Run Step", "description": "Tool to retrieve a specific run step by its ID within a thread and run. Use when you need detailed information about a particular step's execution status and results." }, { "slug": "AI_ML_API_GET_THREAD", "name": "Get Thread", "description": "Tool to retrieve information about a specific thread by ID. Use when you need to fetch thread details, metadata, or available tool resources for an existing conversation thread." }, { "slug": "AI_ML_API_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to list all assistants associated with the account. Use when you need to retrieve available assistants with pagination support." }, { "slug": "AI_ML_API_LIST_BATCHES", "name": "List Batches", "description": "Tool to get the status or results of a batch processing job. Use when you need to check the progress or retrieve results of a previously submitted batch." }, { "slug": "AI_ML_API_LIST_LUMA_GENERATIONS", "name": "List Luma AI Generations", "description": "Tool to fetch user's Luma AI video generations. Use when you need to retrieve a list of all Luma AI video generation tasks for the authenticated user." }, { "slug": "AI_ML_API_LIST_MESSAGES", "name": "List Thread Messages", "description": "Tool to retrieve a list of messages from a specific thread. Use when you need to fetch conversation history or message content from an AI assistant thread." }, { "slug": "AI_ML_API_LIST_MODELS", "name": "List Models", "description": "Tool to list all available AI models from the AI/ML API. Use when you need to retrieve the complete catalog of 400+ models including chat, image, video, voice, and other model types." }, { "slug": "AI_ML_API_LIST_MODELS_WITH_DETAILS", "name": "List Models With Details", "description": "Tool to list all available AI/ML models with detailed information including pricing, features, and capabilities. Use when you need to discover available models or get comprehensive model metadata." }, { "slug": "AI_ML_API_LIST_RUNS", "name": "List Runs", "description": "Tool to list all runs for a specific thread. Use when you need to retrieve runs with pagination support." }, { "slug": "AI_ML_API_LIST_RUN_STEPS", "name": "List Run Steps", "description": "Tool to list the steps in a run. Use when you need to retrieve and examine the execution steps of a specific run within a thread." }, { "slug": "AI_ML_API_SUBMIT_TOOL_OUTPUTS", "name": "Submit Tool Outputs", "description": "Tool to submit tool outputs for a run that requires action. Use when a run has status 'requires_action' and needs tool call results to continue execution." }, { "slug": "AI_ML_API_TEXT_CHAT_COMPLETION", "name": "Text Chat Completion", "description": "Tool to generate text completions or chat responses using a specified LLM model. Use after assembling the conversation history to produce the next response." }, { "slug": "AI_ML_API_UPDATE_ASSISTANT", "name": "Update Assistant", "description": "Tool to modify an existing assistant's properties including name, instructions, model, and tools. Use when you need to update an assistant's configuration or behavior after it has been created." }, { "slug": "AI_ML_API_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to modify metadata for a specific message in a thread. Use when you need to update message metadata such as tags or custom fields." }, { "slug": "AI_ML_API_UPDATE_RUN", "name": "Update Run", "description": "Tool to update a run's metadata with key-value pairs. Use when you need to attach or modify additional information for a specific run." }, { "slug": "AI_ML_API_UPDATE_THREAD", "name": "Update Thread", "description": "Tool to update thread metadata and tool resources in the AI/ML API. Use when you need to modify existing thread properties or attach resources." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ai_ml_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AI/ML API Key", "type": "string", "description": "Your AI/ML API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airbrake", "name": "Airbrake", "logo": "https://logos.composio.dev/api/airbrake", "description": "Airbrake collects errors generated by other applications and aggregates the results for review. Monitor and track application errors in real-time.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "airbrake_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Your Airbrake User API Key. Found in your profile settings page (bottom of page) or Profile & notifications dropdown (top right). Go to Profile > Profile & Notifications to access it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airbyte", "name": "Airbyte", "logo": "https://logos.composio.dev/api/airbyte", "description": "The biggest community of ELT Data Connectors. Move data from any DB/API to any Database/Warehouse.", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "airbyte_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "URL", "type": "string", "description": "For Airbyte Cloud edition, use https://api.airbyte.com (default). If your Airbyte instance is hosted via Docker Compose or Kubernetes, e.g. at http://example.airbyte.com then your URL is http://example.airbyte.com.", "required": true, "default": "https://api.airbyte.com" } ], "optional": [] } } } ] }, { "slug": "aircall", "name": "Aircall", "logo": "https://logos.composio.dev/api/aircall", "description": "Cloud-based phone system for customer support and sales teams", "category": "communication", "authSchemes": [ "OAUTH2", "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "aircall_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "public_api" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "BASIC", "name": "aircall_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API ID", "type": "string", "description": "Your Aircall API ID (found in Dashboard Settings > API Keys)", "required": true, "default": null }, { "name": "password", "displayName": "API Token", "type": "string", "description": "Your Aircall API Token (found in Dashboard Settings > API Keys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airnow", "name": "Airnow", "logo": "https://logos.composio.dev/api/airnow", "description": "US EPA Air Quality API providing air quality observations and forecasts for the United States, Canada, and Mexico", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "airnow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AirNow API key. Get it from https://docs.airnowapi.org/account/request/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airops", "name": "Airops", "logo": "https://logos.composio.dev/api/airops", "description": "AirOps provides AI-powered workflow automation and app execution capabilities for building and deploying intelligent applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "airops_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AirOps API key from Workspace Settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airparser", "name": "Airparser", "logo": "https://logos.composio.dev/api/airparser", "description": "Airparser extracts structured data from emails and documents using GPT-powered parsing", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "airparser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Airparser API key from https://app.airparser.com/account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airship", "name": "Airship", "logo": "https://logos.composio.dev/api/airship", "description": "Mobile app engagement platform for push notifications, messaging, and customer engagement", "category": "marketing", "authSchemes": [ "BASIC", "BEARER_TOKEN", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "airship_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "psh,chn,evt,nu,lst,sch,pln,att" } ] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Choose your Airship OAuth region", "required": true, "default": "api.asnapius.com" }, { "name": "generic_id", "displayName": "App Key", "type": "string", "description": "Your Airship App Key (required for OAuth 2.0)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "airship_basic_master_secret", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Choose your Airship region", "required": true, "default": "go.urbanairship.com" }, { "name": "username", "displayName": "App Key", "type": "string", "description": "Your Airship App Key", "required": true, "default": null }, { "name": "password", "displayName": "Master Secret", "type": "string", "description": "Your Airship Master Secret", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BEARER_TOKEN", "name": "airship_bearer_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "region", "displayName": "Region", "type": "string", "description": "Choose your Airship region", "required": true, "default": "go.urbanairship.com" }, { "name": "bearer_token", "displayName": "Bearer Token", "type": "string", "description": "Your Airship Bearer Token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "airweave", "name": "Airweave", "logo": "https://logos.composio.dev/api/airweave", "description": "Semantic search and hybrid search API for AI assistants and knowledge management", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "airweave_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "generic_id", "displayName": "Collection ID", "type": "string", "description": "Collection identifier (readable_id) for search operations - optional, falls back to default if not provided", "required": false, "default": null } ] } } }, { "mode": "API_KEY", "name": "airweave_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key from Airweave dashboard under API Keys section", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Collection ID", "type": "string", "description": "Collection identifier (readable_id) for search operations - optional, falls back to default if not provided", "required": false, "default": null } ] } } } ] }, { "slug": "aitableai", "name": "Aitableai", "logo": "https://logos.composio.dev/api/aitableai", "description": "AITable.ai is a visual database and collaboration platform that combines spreadsheets with database functionality for managing and automating workflows.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "aitableai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Get your API token from AITable.ai: Profile > User Center > Developer Configuration", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "aivoov", "name": "Aivoov", "logo": "https://logos.composio.dev/api/aivoov", "description": "AiVOOV is an AI-driven text-to-speech platform that converts written text into natural-sounding voiceovers, offering over 1,000 voices across 150+ languages.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AIVOOV_LIST_VOICES", "name": "List Voices", "description": "Retrieves available text-to-speech voices from AiVOOV. Returns voice details including voice_id (required for audio creation), name, gender, and language information. Use language_code parameter to filter voices by language. Rate limited to 20 daily calls - consider caching results." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "aivoov_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AiVOOV API Key", "type": "string", "description": "Your AiVOOV API key, obtainable from your AiVOOV account under Profile -> API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "akismet", "name": "Akismet", "logo": "https://logos.composio.dev/api/akismet", "description": "Spam filtering service for websites to protect against spam comments and form submissions", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "akismet_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Akismet API key from https://akismet.com/account/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alegra", "name": "Alegra", "logo": "https://logos.composio.dev/api/alegra", "description": "Cloud-based accounting software for small businesses and entrepreneurs", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "alegra_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your API token from Alegra account settings", "required": true, "default": null }, { "name": "generic_id", "displayName": "Email", "type": "string", "description": "Your registered email address in Alegra", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "algodocs", "name": "Algodocs", "logo": "https://logos.composio.dev/api/algodocs", "description": "AlgoDocs is an AI-powered platform that automates data extraction from business documents, offering fast, secure, and accurate processing without the need for templates or training.", "category": "ai document extraction", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALGODOCS_GET_ME", "name": "Get Current User", "description": "Tool to retrieve current user information. Use after authenticating with your API key to verify identity." }, { "slug": "ALGODOCS_LIST_EXTRACTORS", "name": "List document data extractors", "description": "Tool to list document data extractors. Use when you need identifiers and names of all extractors in your AlgoDocs account." }, { "slug": "ALGODOCS_LIST_FOLDERS", "name": "List folders", "description": "Tool to list folders. Use when you need to retrieve all folder IDs and their hierarchy. Must be called after obtaining an API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "algodocs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AlgoDocs API Key", "type": "string", "description": "Your secret API key for accessing AlgoDocs API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "algolia", "name": "Algolia", "logo": "https://logos.composio.dev/api/algolia", "description": "Algolia is a hosted search API that provides developers with tools to build fast and relevant search experiences for their applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 133, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALGOLIA_ADD_AB_TEST", "name": "Add AB Test", "description": "Tool to create an A/B test comparing search performance between two index variants. Use when you need to test different search configurations, ranking strategies, or index settings and measure their impact on user behavior." }, { "slug": "ALGOLIA_ADD_OR_REPLACE_RECORD", "name": "Add or Replace Record", "description": "Tool to add or replace a specific record in an index by objectID. If a record with the given objectID exists, it is replaced; otherwise, a new record is created. Use when you need to upsert an object with a known ID." }, { "slug": "ALGOLIA_ADD_RECORD", "name": "Add Record to Index", "description": "Tool to add a record to an index with auto-generated objectID. Records with matching IDs are replaced. Use when you need to insert a new object into an index." }, { "slug": "ALGOLIA_BROWSE_INDEX", "name": "Browse Algolia Index", "description": "Tool to retrieve all records from an index. Use when you need to export or iterate through an entire index dataset." }, { "slug": "ALGOLIA_CLEAR_OBJECTS", "name": "Clear Objects", "description": "Tool to clear records of an index without affecting settings. Use when you need to completely wipe all objects (e.g., after a bulk reindex) while preserving index configuration." }, { "slug": "ALGOLIA_CLEAR_RULES", "name": "Clear Rules", "description": "Tool to delete all rules in an index. Use when you need to wipe all rules before re-creating them. Use after confirming no critical rules require retention." }, { "slug": "ALGOLIA_CLEAR_SYNONYMS", "name": "Clear Synonyms", "description": "Tool to delete all synonyms from an index. Use when you need to remove all synonym definitions in one operation." }, { "slug": "ALGOLIA_CLICKED_OBJECT_IDS", "name": "Clicked Object IDs", "description": "Tool to send a click event to Algolia to capture clicked items. Use immediately after a user click outside of search contexts to report click events." }, { "slug": "ALGOLIA_CLICKED_OBJECT_IDS_AFTER_SEARCH", "name": "Clicked Object IDs After Search", "description": "Tool to send a click event after a search response. Use when you want to report which items a user clicked in search results." }, { "slug": "ALGOLIA_COMPUTE_REALTIME_USER", "name": "Compute Realtime User Profile", "description": "Tool to compute a user's real-time personalization profile in Algolia. Use when you need to trigger calculation of personalization data for a specific user. Note: This endpoint is deprecated." }, { "slug": "ALGOLIA_CONVERTED_OBJECT_IDS", "name": "Converted Object IDs", "description": "Tool to send a conversion event for items outside of search context. Use when tracking conversions on category pages or external flows unrelated to Algolia search." }, { "slug": "ALGOLIA_COPY_INDEX", "name": "Copy Index", "description": "Tool to copy the specified index to a new index. Use when you need to duplicate an existing index including records, settings, synonyms, and rules after confirming source and destination names." }, { "slug": "ALGOLIA_CREATE_API_KEY", "name": "Create API Key", "description": "Tool to create a new API key with specific permissions and restrictions. Use when you need to generate API keys with custom ACL permissions, index restrictions, rate limits, or expiration times." }, { "slug": "ALGOLIA_CREATE_AUTHENTICATION", "name": "Create Authentication", "description": "Tool to create a new authentication resource in Algolia. Use when you need to set up authentication credentials for connecting to sources or destinations in the Algolia ingestion API." }, { "slug": "ALGOLIA_CREATE_DESTINATION", "name": "Create Destination", "description": "Tool to create a new destination in Algolia Ingestion API. Use when you need to set up a new destination for data ingestion." }, { "slug": "ALGOLIA_CREATE_INGESTION_TASK", "name": "Create Ingestion Task", "description": "Tool to create a new ingestion task connecting a source to a destination in Algolia. Use when you need to set up data synchronization between a source and an Algolia index." }, { "slug": "ALGOLIA_CREATE_OR_UPDATE_RECOMMEND_RULES", "name": "Create or Update Recommend Rules", "description": "Tool to create or update a batch of Recommend Rules in an index. Use when you need to add or modify multiple rules at once for a recommendation model. Each rule is created or updated depending on whether a rule with the same objectID already exists." }, { "slug": "ALGOLIA_CREATE_QS_CONFIG", "name": "Create Query Suggestions Config", "description": "Tool to create a new Query Suggestions configuration for an Algolia index. Use when you need to set up query suggestions to help users discover popular searches. Up to 100 configurations per application are supported." }, { "slug": "ALGOLIA_CREATE_SOURCE", "name": "Create Source", "description": "Tool to create a new data source in Algolia Ingestion API. Use when you need to set up a new source for data ingestion from external platforms or custom data feeds." }, { "slug": "ALGOLIA_CREATE_TRANSFORMATION", "name": "Create Transformation", "description": "Tool to create a new transformation in Algolia Ingestion API. Use when you need to set up data transformations for enriching or modifying records during ingestion." }, { "slug": "ALGOLIA_DELETE_AB_TEST", "name": "Delete AB Test", "description": "Tool to delete an A/B test by its unique identifier. Use when you need to permanently remove an A/B test configuration." }, { "slug": "ALGOLIA_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete an API key. Use when you need to revoke or remove an existing API key from your Algolia application." }, { "slug": "ALGOLIA_DELETE_AUTHENTICATION", "name": "Delete Authentication", "description": "Tool to delete an authentication resource from Algolia. Use when you need to remove an existing authentication resource by its ID." }, { "slug": "ALGOLIA_DELETE_CONFIG", "name": "Delete Query Suggestions Config", "description": "Tool to delete a Query Suggestions configuration for the specified index. Use when you need to remove a Query Suggestions configuration permanently." }, { "slug": "ALGOLIA_DELETE_DESTINATION", "name": "Delete Destination", "description": "Tool to delete a destination in Algolia Ingestion API. Use when you need to permanently remove a destination by its ID." }, { "slug": "ALGOLIA_DELETE_INDEX", "name": "Delete Index", "description": "Tool to delete the specified index and all its records. Use when you need to permanently remove an index after confirming it's no longer needed." }, { "slug": "ALGOLIA_DELETE_OBJECTS", "name": "Delete Multiple Records", "description": "Tool to delete multiple records from an Algolia index. Use when you need to remove multiple objects by their IDs." }, { "slug": "ALGOLIA_DELETE_RECOMMEND_RULE", "name": "Delete Recommend Rule", "description": "Tool to delete a Recommend rule from a recommendation scenario. Use when you need to remove a specific rule from an index's recommend model." }, { "slug": "ALGOLIA_DELETE_RECORDS_BY_FILTER", "name": "Delete Records by Filter", "description": "Tool to delete records matching a filter from an Algolia index. Use when you need to remove multiple records based on filter criteria (e.g., category, tags, numeric ranges). This is a resource-intensive operation." }, { "slug": "ALGOLIA_DELETE_RULE", "name": "Delete Rule", "description": "Tool to delete the specified rule from an index. Use when you need to permanently remove a rule after confirming its objectID." }, { "slug": "ALGOLIA_DELETE_SOURCE", "name": "Delete Source", "description": "Tool to delete a source from the Algolia Ingestion API. Use when you need to permanently remove a source after confirming it's no longer needed." }, { "slug": "ALGOLIA_DELETE_SYNONYM", "name": "Delete Synonym", "description": "Tool to delete a synonym from a specified index. Use when you need to remove an existing synonym by its objectID." }, { "slug": "ALGOLIA_DELETE_TRANSFORMATION", "name": "Delete Transformation", "description": "Tool to delete a transformation in Algolia Ingestion API. Use when you need to permanently remove a transformation by its ID." }, { "slug": "ALGOLIA_DELETE_USER_PROFILE", "name": "Delete User Profile", "description": "Tool to delete a user profile from personalization. Use when you need to remove a user's personalization data and reset their profile." }, { "slug": "ALGOLIA_DELETE_USER_TOKEN", "name": "Delete User Token", "description": "Tool to delete all events related to a user token from events metrics and analytics. Use when removing user data from Algolia Insights." }, { "slug": "ALGOLIA_DISABLE_TASK_V1", "name": "Disable Task V1", "description": "Tool to disable a task V1 in Algolia Ingestion API. Use when you need to disable a specific task. Note: This API is deprecated but still functional." }, { "slug": "ALGOLIA_ENABLE_TASK_V1", "name": "Enable Task V1", "description": "Tool to enable a task V1 in Algolia Ingestion API. Use when you need to activate a previously disabled task. Note: This API is deprecated but still functional." }, { "slug": "ALGOLIA_EXECUTE_BATCH_ON_MULTIPLE_INDICES", "name": "Batch Operations on Multiple Indices", "description": "Tool to perform batch operations (add, update, delete) across multiple Algolia indices in a single request. Use when you need to modify records in different indices efficiently. Each operation specifies its target index and action type." }, { "slug": "ALGOLIA_EXPORT_RULES", "name": "Export Rules", "description": "Tool to export all rules defined on an index. Use when you need to backup or migrate index rules." }, { "slug": "ALGOLIA_FIND_OBJECT", "name": "Find Object", "description": "Tool to find the first object matching a query or filter in an index. Use when debugging relevance or filter logic after confirming index exists." }, { "slug": "ALGOLIA_GET_AB_TEST", "name": "Get A/B Test", "description": "Tool to retrieve detailed information about an A/B test by its ID. Use when you need to check A/B test status, performance metrics, or configuration details." }, { "slug": "ALGOLIA_GET_ADD_TO_CART_RATE", "name": "Get Add to Cart Rate", "description": "Tool to retrieve add-to-cart rate metrics for e-commerce search analytics. Use when you need to analyze conversion effectiveness and user purchasing behavior for an index, including daily breakdowns." }, { "slug": "ALGOLIA_GET_API_KEY", "name": "Get API Key", "description": "Tool to retrieve the permissions and details of a specific API key. Use when you need to inspect an API key's ACL, restrictions, or other settings." }, { "slug": "ALGOLIA_GET_APP_TASK", "name": "Get App Task Status", "description": "Tool to check the status of an application task. Use when you need to verify if a task has completed." }, { "slug": "ALGOLIA_GET_AUTHENTICATION", "name": "Get Authentication", "description": "Tool to retrieve an authentication resource by its ID. Use when you need to fetch details about a specific authentication configuration in Algolia's ingestion API." }, { "slug": "ALGOLIA_GET_AVERAGE_CLICK_POSITION", "name": "Get Average Click Position", "description": "Tool to retrieve average click position metrics from Algolia Analytics. Use when analyzing user engagement and click behavior for search results." }, { "slug": "ALGOLIA_GET_CLICK_POSITIONS", "name": "Get Click Positions", "description": "Tool to retrieve the distribution of clicks by position from Algolia Analytics. Use when analyzing which search result positions receive the most user engagement." }, { "slug": "ALGOLIA_GET_CLICK_THROUGH_RATE", "name": "Get Click Through Rate", "description": "Tool to retrieve click-through rate (CTR) for searches with at least one click event. Use when you need to analyze search effectiveness and user engagement metrics for an index, including daily breakdowns." }, { "slug": "ALGOLIA_GET_CONFIG", "name": "Get Query Suggestions Config", "description": "Tool to retrieve a Query Suggestions configuration by index name. Use when you need to inspect or verify Query Suggestions settings for a specific index." }, { "slug": "ALGOLIA_GET_CONFIG2", "name": "Get Personalization Config", "description": "Tool to retrieve the advanced personalization configuration. Use when you need to check personalization settings, re-ranking impact levels, or profile types for your Algolia application." }, { "slug": "ALGOLIA_GET_CONVERSION_RATE", "name": "Get Conversion Rate", "description": "Tool to retrieve conversion rate for searches with conversion events. Use when you need to analyze conversion effectiveness and user behavior metrics for an index, including daily breakdowns." }, { "slug": "ALGOLIA_GET_DESTINATION", "name": "Get Destination", "description": "Tool to retrieve a destination by its ID. Use when you need to get details about a specific Algolia destination resource." }, { "slug": "ALGOLIA_GET_DICTIONARY_LANGUAGES", "name": "Get Dictionary Languages", "description": "Tool to list available languages for dictionary entries. Use when you need to check which languages support custom dictionary entries (plurals, stopwords, compounds)." }, { "slug": "ALGOLIA_GET_DICTIONARY_SETTINGS", "name": "Get Dictionary Settings", "description": "Tool to retrieve dictionary settings for all dictionaries. Use when you need to check which standard dictionary entries are disabled across different languages." }, { "slug": "ALGOLIA_GET_LOGS", "name": "Get Logs", "description": "Tool to retrieve log entries for API requests made to your Algolia application. Use when you need to debug issues, monitor API usage, or analyze search patterns." }, { "slug": "ALGOLIA_GET_NO_CLICK_RATE", "name": "Get No Click Rate", "description": "Tool to retrieve the rate of searches that received no clicks. Use when you need to analyze search effectiveness and identify queries where users didn't engage with any results." }, { "slug": "ALGOLIA_GET_NO_RESULTS_RATE", "name": "Get No Results Rate", "description": "Tool to retrieve the fraction of searches that didn't return any results. Use when you need to analyze search effectiveness and identify queries that fail to return results." }, { "slug": "ALGOLIA_GET_NO_RESULTS_SEARCHES", "name": "Get No Results Searches", "description": "Tool to retrieve the most frequent searches that produced zero results. Use when analyzing search gaps or identifying content opportunities to improve search experience." }, { "slug": "ALGOLIA_GET_OBJECT_POSITION", "name": "Get Object Position", "description": "Tool to retrieve an object’s position in a result set. Use when debugging relevance after performing a search query." }, { "slug": "ALGOLIA_GET_OBJECTS", "name": "Get multiple objects", "description": "Tool to retrieve multiple records from an index. Use when you need to batch-fetch several objectIDs in one call." }, { "slug": "ALGOLIA_GET_PURCHASE_RATE", "name": "Get Purchase Rate", "description": "Tool to retrieve purchase rate metrics for searches that led to purchase events. Use when you need to analyze conversion effectiveness and purchase behavior for an index, including daily breakdowns." }, { "slug": "ALGOLIA_GET_RECOMMEND_RULE", "name": "Get Recommend Rule", "description": "Tool to retrieve a Recommend rule that was previously created in the Algolia dashboard. Use when you need to inspect a specific rule's configuration, conditions, or consequences by its objectID." }, { "slug": "ALGOLIA_GET_RECOMMEND_TASK_STATUS", "name": "Get Recommend Task Status", "description": "Tool to check the status of a Recommend task. Use when you need to verify if an asynchronous Recommend operation (such as deleting a Recommend rule) has completed." }, { "slug": "ALGOLIA_GET_RECORD", "name": "Get Record from Index", "description": "Tool to retrieve a specific record from an index by its objectID. Use when you need to fetch a single object's details." }, { "slug": "ALGOLIA_GET_REVENUE", "name": "Get Revenue", "description": "Tool to retrieve revenue data from Algolia Analytics. Use when analyzing revenue metrics and conversion tracking for search results." }, { "slug": "ALGOLIA_GET_RULE", "name": "Get Rule", "description": "Tool to retrieve a specific rule by its objectID from an index. Use when you need to inspect a rule's configuration, conditions, and consequences." }, { "slug": "ALGOLIA_GET_SEARCHES_COUNT", "name": "Get Searches Count", "description": "Tool to retrieve the number of searches within a time range, including a daily breakdown. Use when analyzing search volume and traffic patterns for an index." }, { "slug": "ALGOLIA_GET_SEARCHES_NO_CLICKS", "name": "Get Searches No Clicks", "description": "Tool to retrieve top searches that did not receive any clicks. Use when analyzing search queries that may need optimization, such as queries with poor results or missing content." }, { "slug": "ALGOLIA_GET_SETTINGS", "name": "Get Index Settings", "description": "Tool to retrieve the settings of a specified index. Use when you need to inspect index configurations after creation or update." }, { "slug": "ALGOLIA_GET_SOURCE", "name": "Get Source", "description": "Tool to retrieve a source from the Algolia Ingestion API. Use when you need to get details about a specific data source by its ID." }, { "slug": "ALGOLIA_GET_SYNONYM", "name": "Get Synonym", "description": "Tool to retrieve a specific synonym by its objectID. Use when you need to fetch details of an existing synonym from an index." }, { "slug": "ALGOLIA_GET_TASK_STATUS", "name": "Get Task Status", "description": "Tool to check the status of an asynchronous task. Use when you need to verify completion of operations like adding or deleting records." }, { "slug": "ALGOLIA_GET_TASK_V1", "name": "Get Task V1", "description": "Tool to retrieve a task V1 from Algolia Ingestion API. Use when you need to fetch details about a specific task. Note: This API is deprecated but still functional." }, { "slug": "ALGOLIA_GET_TOP_COUNTRIES", "name": "Get Top Countries", "description": "Tool to retrieve top countries by search volume for a specified index. Use when you need to analyze geographic distribution of searches and understand where your users are searching from." }, { "slug": "ALGOLIA_GET_TOP_FILTER_ATTRIBUTES", "name": "Get Top Filter Attributes", "description": "Tool to retrieve top filter attributes from Algolia Analytics. Use when analyzing which filters are most commonly used by users in searches." }, { "slug": "ALGOLIA_GET_TOP_FILTER_FOR_ATTRIBUTE", "name": "Get Top Filter For Attribute", "description": "Tool to retrieve top filter values for a specific attribute from Algolia Analytics. Use when analyzing which filter values are most commonly used for a given attribute in search queries." }, { "slug": "ALGOLIA_GET_TOP_FILTERS_NO_RESULTS", "name": "Get Top Filters No Results", "description": "Tool to retrieve top filters for searches that returned no results from Algolia Analytics. Use when analyzing which filters are commonly applied to searches that yield zero results, helping identify potential catalog or filtering issues." }, { "slug": "ALGOLIA_GET_TOP_HITS", "name": "Get Top Hits", "description": "Tool to retrieve the object IDs of the most frequent search results from Algolia Analytics. Returns up to 1,000 top hits ranked by frequency, optionally including click analytics (CTR, conversion rates) and revenue metrics. Use when analyzing which results appear most often in searches." }, { "slug": "ALGOLIA_GET_TOP_SEARCHES", "name": "Get Top Searches", "description": "Tool to retrieve the most popular searches from Algolia Analytics. Returns search queries ranked by frequency, optionally including click analytics (CTR, conversion rates) and revenue metrics. Use when analyzing search behavior and identifying trending queries." }, { "slug": "ALGOLIA_GET_TRANSFORMATION", "name": "Get Transformation", "description": "Tool to retrieve a transformation by its ID from Algolia's Ingestion API. Use when you need to fetch details about a specific transformation including its code, configuration, and metadata." }, { "slug": "ALGOLIA_GET_USAGE", "name": "Get Usage Statistics", "description": "Tool to retrieve Algolia usage statistics over a specified time period. Use when you need to analyze search operations, indexing operations, capacity metrics, or other usage data for an Algolia application. Requires Premium plan or Enterprise add-on access." }, { "slug": "ALGOLIA_GET_USAGE_FOR_INDEX", "name": "Get Usage for Index", "description": "Tool to retrieve usage statistics for a specific Algolia index over a time period. Use when you need to analyze index metrics such as record counts, query volumes, processing times, or capacity usage. Supports both hourly and daily aggregation granularity." }, { "slug": "ALGOLIA_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of user profiles from Algolia advanced personalization. Use when you need to fetch user affinities, filter by date ranges, or paginate through user data." }, { "slug": "ALGOLIA_GET_USERS_COUNT", "name": "Get Users Count", "description": "Tool to retrieve the number of unique users within a time range, including daily breakdown. Use when you need to analyze user engagement metrics for a specific index over a date range." }, { "slug": "ALGOLIA_INDEX_EXISTS", "name": "Index Exists", "description": "Tool to check if an Algolia index exists. Use before performing index operations to prevent accidental index creation. Results are scoped to the Algolia app ID configured in the Composio connection. Example: IndexExists(index_name='products')." }, { "slug": "ALGOLIA_INIT_INSIGHTS", "name": "Init Insights API Client", "description": "Tool to initialize the Algolia Insights API client. Use before sending any Insights events." }, { "slug": "ALGOLIA_LIST_AB_TESTS", "name": "List AB Tests", "description": "Tool to list all A/B tests configured for this application. Use when you need to view existing A/B tests, check their status, or retrieve test IDs for further operations." }, { "slug": "ALGOLIA_LIST_API_KEYS", "name": "List API Keys", "description": "Tool to list all API keys associated with your Algolia application, including their permissions and restrictions. Use when you need to audit API key usage, check permissions, or manage access control." }, { "slug": "ALGOLIA_LIST_AUTHENTICATIONS", "name": "List Authentications", "description": "Tool to list authentication resources from Algolia. Use when you need to retrieve available authentication configurations for sources or destinations." }, { "slug": "ALGOLIA_LIST_DESTINATIONS", "name": "List Destinations", "description": "Tool to list destinations in Algolia. Use when you need to retrieve all destinations or filter them by type, authentication ID, or transformation ID." }, { "slug": "ALGOLIA_LIST_INDICES", "name": "List Indices", "description": "Tool to list all indices and their metadata. Use when you need to retrieve index names, sizes, and state before performing operations that depend on index properties." }, { "slug": "ALGOLIA_LIST_INGESTION_TASKS", "name": "List Ingestion Tasks", "description": "Tool to retrieve a list of ingestion tasks from Algolia. Use when you need to fetch configured tasks for ingestion pipelines. Supports filtering by various criteria such as source, destination, trigger type, action, and enabled status, with pagination and sorting." }, { "slug": "ALGOLIA_LIST_QS_CONFIGS", "name": "List Query Suggestions Configurations", "description": "Tool to retrieve all Query Suggestions configurations for an Algolia application. Use when you need to view or audit existing Query Suggestions setups." }, { "slug": "ALGOLIA_LIST_RUNS", "name": "List Task Runs", "description": "Tool to list task runs. Use when you need to retrieve and monitor task execution status, filter by time range, or paginate through run history." }, { "slug": "ALGOLIA_LIST_SOURCES", "name": "List Sources", "description": "Tool to list sources from the Algolia Ingestion API. Use when you need to retrieve available data sources for ingestion pipelines. Supports filtering by type and authentication ID, with pagination and sorting options." }, { "slug": "ALGOLIA_LIST_TRANSFORMATIONS", "name": "List Transformations", "description": "Tool to list all transformations in Algolia Ingestion API. Use when you need to retrieve transformation configurations, filter by type, or paginate through transformation lists." }, { "slug": "ALGOLIA_PARTIAL_UPDATE_OBJECTS", "name": "Partial Update Objects", "description": "Tool to partially update multiple records in the specified index. Use when you need to change only selected fields of many objects without replacing entire records. Use after confirming objectIDs and desired updates." }, { "slug": "ALGOLIA_PUSH_TASK", "name": "Push Records to Task", "description": "Tool to push records to an Algolia task by task ID. Use when you need to send data to a configured ingestion task. Note: tasks with source type 'json' cannot use this endpoint." }, { "slug": "ALGOLIA_REPLACE_ALL_RULES", "name": "Replace All Rules", "description": "Tool to push a new set of rules, erasing previous ones. Use when you need zero-downtime atomic replacement of all rules in an index." }, { "slug": "ALGOLIA_REPLACE_TASK", "name": "Replace Task", "description": "Tool to fully replace a task in Algolia Ingestion API. Use when you need to completely update a task with new configuration, replacing all existing settings." }, { "slug": "ALGOLIA_RESTORE_API_KEY", "name": "Restore API Key", "description": "Tool to restore a deleted API key within 72 hours of deletion. Use when you need to recover an accidentally deleted API key." }, { "slug": "ALGOLIA_RUN_TASK_V1", "name": "Run Task V1", "description": "Tool to run a task V1 from Algolia Ingestion API. Use when you need to manually trigger a task execution. Note: This API is deprecated but still functional." }, { "slug": "ALGOLIA_SAVE_RULE", "name": "Save Rule", "description": "Tool to create or replace a rule in an index. Use when you need to add merchandising rules, query modifications, or conditional search behavior." }, { "slug": "ALGOLIA_SAVE_SYNONYM", "name": "Save Synonym", "description": "Tool to add or update a synonym in the specified index. Use when you need programmatic upsert of search synonyms after index creation." }, { "slug": "ALGOLIA_SAVE_SYNONYMS", "name": "Save Synonyms", "description": "Tool to batch create or replace synonyms in an Algolia index. If a synonym with the objectID doesn't exist, Algolia adds a new one. Use when you need to add or update multiple synonyms at once." }, { "slug": "ALGOLIA_SEARCH_AUTHENTICATIONS", "name": "Search Authentications", "description": "Tool to search for authentication resources by IDs in Algolia. Use when you need to retrieve multiple specific authentication configurations by their IDs." }, { "slug": "ALGOLIA_SEARCH_DESTINATIONS", "name": "Search Destinations", "description": "Tool to search for specific destinations by their IDs. Use when you need to retrieve multiple destinations at once by providing their unique identifiers." }, { "slug": "ALGOLIA_SEARCH_DICTIONARY_ENTRIES", "name": "Search Dictionary Entries", "description": "Tool to search dictionary entries in Algolia dictionaries. Use when you need to find stopwords, plurals, or compound words in specific dictionaries." }, { "slug": "ALGOLIA_SEARCH_FACET_VALUES", "name": "Search Facet Values", "description": "Tool to search for values of a specified facet attribute. Use when you need to find specific facet values that match a query string. Facet values are sorted by decreasing count by default." }, { "slug": "ALGOLIA_SEARCH_INDEX", "name": "Search Algolia Index", "description": "Tool to perform a search on a specified Algolia index. Use after confirming the index name. Example: SearchIndex(index_name='contacts', query='apple', search_params={'hitsPerPage':10})" }, { "slug": "ALGOLIA_SEARCH_MULTIPLE_INDICES", "name": "Search Multiple Indices", "description": "Tool to perform searches across multiple indices in a single call. Use when you need to batch multiple index queries into one API request." }, { "slug": "ALGOLIA_SEARCH_RECOMMEND_RULES", "name": "Search Recommend Rules", "description": "Tool to search for Recommend rules in the specified index and model. Use when you need to retrieve rules matching a query, or use an empty query to list all rules for this recommendation scenario." }, { "slug": "ALGOLIA_SEARCH_SOURCES", "name": "Search Sources", "description": "Tool to search for sources by IDs in Algolia Ingestion API. Use when you need to retrieve multiple specific data sources by their IDs." }, { "slug": "ALGOLIA_SEARCH_SYNONYMS", "name": "Search Synonyms", "description": "Tool to search for synonyms in the specified index. Use when you need to retrieve synonyms matching a query or filter by type." }, { "slug": "ALGOLIA_SEARCH_TASKS_V1", "name": "Search Tasks V1", "description": "Tool to search for tasks V1 from Algolia Ingestion API. Use when you need to retrieve details about multiple specific tasks by their IDs. Note: This API is deprecated." }, { "slug": "ALGOLIA_SEARCH_TRANSFORMATIONS", "name": "Search Transformations", "description": "Tool to search for transformations by IDs in Algolia Ingestion API. Use when you need to retrieve multiple specific transformation configurations by their IDs." }, { "slug": "ALGOLIA_SET_DICTIONARY_SETTINGS", "name": "Set Dictionary Settings", "description": "Tool to update dictionary settings for Algolia. Use when you need to enable or disable built-in stop words, plurals, or compounds for specific languages." }, { "slug": "ALGOLIA_SET_PERSONALIZATION_STRATEGY", "name": "Set Personalization Strategy", "description": "Tool to define personalization strategy that controls how user behavior affects search results. Use when you need to configure which events and facets influence personalized search rankings." }, { "slug": "ALGOLIA_SET_SETTINGS", "name": "Set Index Settings", "description": "Tool to update an Algolia index's settings. Use when you need to configure index behavior before indexing records. Example: set searchableAttributes and customRanking for products index." }, { "slug": "ALGOLIA_STOP_AB_TEST", "name": "Stop AB Test", "description": "Tool to stop an A/B test by its unique identifier. Use when you need to halt an active A/B test. Note that stopped A/B tests cannot be restarted." }, { "slug": "ALGOLIA_TRY_TRANSFORMATION", "name": "Try Transformation", "description": "Tool to try a transformation before creating it in Algolia. Use when you need to test transformation code or no-code configurations against sample data to verify they work correctly before deployment." }, { "slug": "ALGOLIA_TRY_TRANSFORMATION_BEFORE_UPDATE", "name": "Try Transformation Before Update", "description": "Tool to test a transformation before updating it in Algolia Ingestion API. Use when you need to validate transformation code or configuration against sample data before applying it to production." }, { "slug": "ALGOLIA_UPDATE_API_KEY", "name": "Update API Key", "description": "Tool to update the permissions and settings of an existing API key. Use when you need to modify ACL permissions, index restrictions, rate limits, or other settings of an existing API key." }, { "slug": "ALGOLIA_UPDATE_AUTHENTICATION", "name": "Update Authentication", "description": "Tool to update an authentication resource in Algolia. Use when you need to modify the name or credentials of an existing authentication configuration." }, { "slug": "ALGOLIA_UPDATE_CONFIG", "name": "Update Query Suggestions Config", "description": "Tool to update an existing Query Suggestions configuration. Use when you need to modify settings for query suggestions on an existing index." }, { "slug": "ALGOLIA_UPDATE_DESTINATION", "name": "Update Destination", "description": "Tool to update a destination in Algolia Ingestion API. Use when you need to modify an existing destination's configuration, name, type, or associated transformations." }, { "slug": "ALGOLIA_UPDATE_DICTIONARY_ENTRIES", "name": "Update Dictionary Entries", "description": "Tool to add or delete dictionary entries in Algolia dictionaries. Use when you need to batch modify stopwords, plurals, or compound word entries." }, { "slug": "ALGOLIA_UPDATE_RECORD_PARTIALLY", "name": "Update Record Partially", "description": "Tool to add or update attributes in a single record. Use when you need to modify specific fields without replacing the entire record. Creates a new record if the objectID doesn't exist (when create_if_not_exists is true)." }, { "slug": "ALGOLIA_UPDATE_SOURCE", "name": "Update Source", "description": "Tool to update a source in the Algolia Ingestion API. Use when you need to modify the name, authentication, or input configuration of an existing data source." }, { "slug": "ALGOLIA_UPDATE_TASK", "name": "Update Task", "description": "Tool to partially update a task in Algolia Ingestion API. Use when you need to modify task configuration such as schedule, failure threshold, destination, or notification settings." }, { "slug": "ALGOLIA_UPDATE_TRANSFORMATION", "name": "Update Transformation", "description": "Tool to update an existing transformation in Algolia Ingestion API. Use when you need to modify transformation settings, code, or configuration for data processing during ingestion." }, { "slug": "ALGOLIA_VALIDATE_SOURCE", "name": "Validate Source", "description": "Tool to validate a source payload before creating it in Algolia. Use when you need to verify that a source configuration is valid before actually creating the source." }, { "slug": "ALGOLIA_VALIDATE_SOURCE_BEFORE_UPDATE", "name": "Validate Source Before Update", "description": "Tool to validate a source update payload in the Algolia Ingestion API. Use when you need to verify that an update to a source configuration is valid before actually updating it." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "algolia_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Algolia API Key", "type": "string", "description": "The API key for your Algolia application, used to authenticate requests. It can be either the Admin API key (for full access) or the Search-only API key (for read-only access).", "required": true, "default": null }, { "name": "generic_id", "displayName": "Algolia Application ID", "type": "string", "description": "The Application ID for your Algolia application, used to identify your application.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "algorithmia", "name": "Algorithmia", "logo": "https://logos.composio.dev/api/algorithmia", "description": "Algorithmia is a community algorithm development platform providing access to machine learning algorithms, data analysis, and natural language processing capabilities via API.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "algorithmia_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Algorithmia API key. Get it from Profile > Manage API Keys in the Algorithmia dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alibaba_cloud", "name": "Alibaba Cloud", "logo": "https://logos.composio.dev/api/alibaba_cloud", "description": "Alibaba Cloud provides cloud computing services including compute, storage, networking, database, and security solutions", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "alibaba_cloud_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,aliuid,ecs:*,vpc:*,ram:*" } ] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Alibaba Cloud region (e.g., cn-hangzhou, us-west-1, eu-central-1)", "required": true, "default": "cn-hangzhou" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "alibaba_cloud_access_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Alibaba Cloud region (e.g., cn-hangzhou, us-west-1, eu-central-1)", "required": true, "default": "cn-hangzhou" }, { "name": "generic_api_key", "displayName": "AccessKey ID", "type": "string", "description": "Your Alibaba Cloud AccessKey ID from RAM console", "required": true, "default": null }, { "name": "generic_secret", "displayName": "AccessKey Secret", "type": "string", "description": "Your Alibaba Cloud AccessKey Secret from RAM console", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "all_images_ai", "name": "All Images AI", "logo": "https://logos.composio.dev/api/all_images_ai", "description": "All-Images.ai provides AI-powered image generation, retrieval, and management services, enabling developers to create and manage images through advanced AI capabilities.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALL_IMAGES_AI_CHECK_API_KEY", "name": "Check API Key", "description": "Validates the current API key and retrieves associated account information. Returns the email address and optional name associated with the API key. Use this action to verify your API key is valid before making other API calls." }, { "slug": "ALL_IMAGES_AI_CREATE_WEBHOOK_ENDPOINT", "name": "Create webhook endpoint", "description": "Tool to add a webhook endpoint to an API key. Use when you want to receive print event callbacks at a custom endpoint." }, { "slug": "ALL_IMAGES_AI_DELETE_IMAGE_GENERATIONS", "name": "Delete Image Generations", "description": "Tool to delete one or more image generation batches by their print IDs. Use when you need to remove image generations that are no longer needed." }, { "slug": "ALL_IMAGES_AI_GET_CREDITS", "name": "Get Credits Balance", "description": "Tool to retrieve the current credits balance for your API key. Use this action to check available credits before making API calls that consume credits." }, { "slug": "ALL_IMAGES_AI_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve webhook details by its ID. Use when you need to check the configuration of an existing webhook endpoint, including its URL and subscribed events." }, { "slug": "ALL_IMAGES_AI_LIST_AUTOMATED_IMAGES", "name": "List Automated Images", "description": "Tool to list all images generated automatically for bulk use. Use after creating automated-image batches to review and manage them." }, { "slug": "ALL_IMAGES_AI_LIST_DOWNLOADED_IMAGES", "name": "List Downloaded Images", "description": "Tool to list images that have been downloaded from All-Images.ai. Use this action to retrieve and filter downloaded images with optional date range filtering and pagination support." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "all_images_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "All-Images.ai API Key", "type": "string", "description": "Your All-Images.ai API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alltrails", "name": "Alltrails", "logo": "https://logos.composio.dev/api/alltrails", "description": "AllTrails is a trail-finding and outdoor recreation platform with a comprehensive database of hiking, biking, and running trails worldwide", "category": "lifestyle & entertainment", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "alltrails_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AllTrails API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alpaca", "name": "Alpaca", "logo": "https://logos.composio.dev/api/alpaca", "description": "Stock and crypto trading platform with commission-free trading, real-time market data, and algorithmic trading capabilities", "category": "commerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 100, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALPACA_ADD_ASSET_TO_WATCHLIST", "name": "Add Asset to Watchlist", "description": "Adds a symbol to an existing watchlist in the authenticated account. Use when you need to track a new security in an existing watchlist. This action appends the specified symbol to the end of the watchlist's asset list. The watchlist_id can be obtained from the ALPACA_GET_WATCHLISTS action." }, { "slug": "ALPACA_ADD_ASSET_TO_WATCHLIST_BY_NAME", "name": "Add Asset to Watchlist by Name", "description": "Add an asset to a watchlist by name. Use when you need to add a symbol to a specific watchlist identified by its name. If a watchlist with the specified name does not exist, it will be created automatically and the symbol will be added to it. The asset will be appended to the end of the watchlist's asset list." }, { "slug": "ALPACA_CREATE_WATCHLIST", "name": "Create Watchlist", "description": "Creates a new watchlist for the authenticated account. Use this action when you need to: - Create a new watchlist to track specific securities - Set up initial symbols for a watchlist at creation time - Organize tracked symbols under a named watchlist Note: This action creates a watchlist at the account level (using v2 API). The name must be unique within the account and contain only alphanumeric characters, spaces, hyphens, and underscores (up to 64 characters)." }, { "slug": "ALPACA_CREATE_WATCHLIST_FOR_ACCOUNT", "name": "Create Watchlist", "description": "Create a new watchlist for the authenticated account. Use when you need to create a watchlist to track specific securities. The name must contain only alphanumeric characters (no spaces or special characters)." }, { "slug": "ALPACA_DELETE_ALL_OPEN_POSITIONS", "name": "Delete All Open Positions", "description": "Liquidates all open positions by closing them at market price. This action is irreversible and will permanently close all positions in the account. Use when you need to quickly exit all positions, such as before closing an account or in emergency situations. Optionally cancels all open orders before liquidating positions." }, { "slug": "ALPACA_DELETE_ALL_ORDERS_FOR_ACCOUNT", "name": "Delete All Orders for Account", "description": "Attempts to cancel all open orders for a specified trading account. A response will be provided for each order that is attempted to be cancelled. This action is irreversible for individual orders that are successfully cancelled." }, { "slug": "ALPACA_DELETE_UNSUBSCRIBE_ACCOUNT", "name": "Delete Unsubscribe Account", "description": "Delete a rebalancing subscription to unsubscribe an account. This action permanently removes the specified subscription. Use when you need to unsubscribe an account from rebalancing services. This action is irreversible once executed. Note: If the subscription_id is invalid, a 400 error is returned. If the subscription does not exist, a 404 error is returned." }, { "slug": "ALPACA_DELETE_WATCHLIST_BY_ID", "name": "Delete Watchlist By ID", "description": "Delete a watchlist by its unique identifier. Use when you need to remove an entire watchlist that is no longer needed. This action is irreversible once executed — the watchlist and all its contents cannot be recovered. Note: If the watchlist_id is invalid or does not exist, a 404 error is returned." }, { "slug": "ALPACA_GET_ACCOUNT", "name": "Get Account", "description": "Retrieves account information for the authenticated Alpaca account. Use this action when you need to check account status, available buying power, cash balance, equity, margin information, day trade count, or other account details. This is a read-only operation that returns the current state of the authenticated account. The response includes important account flags such as trading_blocked, account_blocked, pattern_day_trader, and shorting_enabled which indicate any restrictions on the account's trading capabilities." }, { "slug": "ALPACA_GET_ACCOUNT_ACTIVITIES", "name": "Get Account Activities", "description": "Retrieves account activities for the authenticated Alpaca account. Use this action when you need to retrieve transaction history, dividend payments, interest payments, fees, transfers, or other account-related activities. Supports filtering by date range, account ID, and sorting direction. Results are paginated using page_token for efficient retrieval of large datasets." }, { "slug": "ALPACA_GET_ACCOUNT_ACTIVITIES2", "name": "Get Account Activities V2", "description": "Retrieves account activities of one type for the authenticated Alpaca account using the v2 API. Use this action when you need to retrieve transaction history, dividend payments, interest payments, fees, transfers, or order fill activities. Supports filtering by date range, activity types, and sorting direction. Results are paginated using page_token for efficient retrieval of large datasets. This action is read-only and does not modify any data." }, { "slug": "ALPACA_GET_ACCOUNT_ACTIVITIES_BY_ACTIVITY_TYPE", "name": "Get Account Activities By Activity Type", "description": "Retrieves account activities of a specific type for the authenticated Alpaca account. Use when you need to filter account activities by a specific type such as trade fills, dividends, interest payments, fees, or transfers. Supports date range filtering, pagination, and sorting. This endpoint is useful for retrieving a specific category of account transactions rather than all activities. Note: date parameter cannot be used with 'after' parameter. Use 'date' for a single day or 'until'/'after' for date ranges." }, { "slug": "ALPACA_GET_ACCOUNT_CONFIG", "name": "Get Account Configurations", "description": "Retrieves the current trading account configuration settings for the authenticated Alpaca account. Use this action when you need to check the current trading account settings such as day-trading margin call (DTMC) checks, fractional trading status, shorting permissions, trade suspension status, and trade confirmation email preferences. This is a read-only operation that returns the current configuration without any modifications. The account is determined from the authentication credentials." }, { "slug": "ALPACA_GET_ACCOUNT_PORTFOLIO_HISTORY", "name": "Get Account Portfolio History", "description": "Retrieves the portfolio history statistics for an Alpaca trading account. Portfolio history provides a time series of equity values, profit/loss metrics, and other performance data over a specified time period. Use when you need to analyze account performance over time, track equity curves, or review historical P&L. Note: The timeframe parameter auto-selects based on the period: 1Min for <7 days, 15Min for <30 days, or 1D otherwise." }, { "slug": "ALPACA_GET_ACCOUNT_PORTFOLIO_HISTORY1", "name": "Get Account Portfolio History", "description": "Retrieves the portfolio history statistics for a trading account. Portfolio history provides a time series of equity values, profit/loss metrics, and optionally cashflow data over a specified time period. Use when you need to analyze account performance over time, track equity curves, or review historical P&L. Note: The timeframe parameter auto-selects based on the period: 1Min for <7 days, 15Min for <30 days, or 1D otherwise." }, { "slug": "ALPACA_GET_ACCOUNTS_POSITIONS", "name": "Get All Account Positions", "description": "Bulk fetches all open positions for the authenticated account. Use when you need to retrieve all current positions, monitor overall portfolio holdings, or check unrealized P&L across the entire account. This action does not require an account_id parameter as it automatically uses the account associated with the API credentials. Note: This action returns positions for the account associated with the authenticated API key. Use this read-only action to get a complete view of the account's open positions." }, { "slug": "ALPACA_GET_ALL_OPEN_POSITIONS", "name": "Get All Open Positions", "description": "Retrieves all open positions for the authenticated Alpaca trading account. Use this action when you need to retrieve all current positions, monitor portfolio holdings, or check unrealized P&L across the entire account. This action does not require an account_id parameter as it automatically uses the account associated with the API credentials. Note: This action returns positions for the account associated with the authenticated API key. Use this read-only action to get a complete view of the account's open positions. The response is updated live as price information changes." }, { "slug": "ALPACA_GET_ALL_ORDERS", "name": "Get All Orders", "description": "Retrieves all orders for an account based on specified filter criteria. Returns a list of orders with their current status, filled quantity, prices, and any nested legs for complex orders. Use when you need to query historical or current orders for a trading account, such as checking open positions or reviewing trade history. By default, only open orders are returned. Use status='all' to include closed orders, or status='closed' for only closed/canceled orders." }, { "slug": "ALPACA_GET_ALPACA_DATA_CRYPTO_US_BARS", "name": "Get Historical Crypto US Bars", "description": "Retrieves historical OHLCV (Open, High, Low, Close, Volume) bars for crypto symbols in a specific US location. Use this action when you need to analyze historical price movements and trading activity for cryptocurrency pairs over a given timeframe. The bars are aggregated based on the specified timeframe (e.g., 1 minute, 5 minutes, 1 hour, 1 day). Results are sorted by symbol first, then by timestamp. Note: This endpoint uses the data.alpaca.markets base URL and requires the 'us' location path parameter." }, { "slug": "ALPACA_GET_BARS_FOR_MULTIPLE_CRYPTO_SYMBOLS", "name": "Get Crypto Bars for Multiple Symbols", "description": "Retrieves OHLCV (Open, High, Low, Close, Volume) bars for multiple crypto symbols. Use this action when you need to: - Get historical price data for multiple crypto symbols - Analyze price trends over a specific timeframe - Fetch aggregated bar data for multiple cryptocurrencies Results are sorted by symbol first, then by bar timestamp. If the limit is reached for one symbol, subsequent requests with the next_page_token will retrieve bars for remaining symbols." }, { "slug": "ALPACA_GET_BARS_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Stock Bars for Multiple Symbols", "description": "Retrieves OHLCV (Open, High, Low, Close, Volume) bars for multiple stock symbols. Use this action when you need to: - Get historical price data for multiple stock symbols - Analyze price trends over a specific timeframe - Fetch aggregated bar data for stock analysis - Backtest trading strategies on multiple stocks Results are sorted by symbol first, then by bar timestamp. If the limit is reached for one symbol, subsequent requests with the next_page_token will retrieve bars for remaining symbols. Note: This endpoint uses the data.alpaca.markets base URL and requires appropriate data subscriptions for SIP and OTC feeds." }, { "slug": "ALPACA_GET_BARS_FOR_STOCK_SYMBOL", "name": "Get Historical Bars for Stock Symbol", "description": "Retrieves historical OHLCV (Open, High, Low, Close, Volume) bars for a single stock symbol. Use this action when you need to analyze historical price movements and trading activity for a specific stock ticker over a given timeframe. The bars are aggregated based on the specified timeframe (e.g., 1 minute, 15 minutes, 1 hour, 1 day). Note: This endpoint uses the data.alpaca.markets base URL." }, { "slug": "ALPACA_GET_BARS_STOCKS", "name": "Get Historical Stock Bars", "description": "Retrieves historical OHLCV (Open, High, Low, Close, Volume) bars for a single stock symbol. Use this action when you need to analyze historical price movements and trading activity for a specific stock ticker over a given timeframe. The bars are aggregated based on the specified timeframe (e.g., 1 minute, 15 minutes, 1 hour, 1 day). Results are sorted by timestamp and support pagination via the next_page_token field when the limit is reached and more data is available. Note: This endpoint uses the data.alpaca.markets base URL and requires appropriate data subscriptions for SIP and OTC feeds." }, { "slug": "ALPACA_GET_CALENDAR", "name": "Get Calendar", "description": "Retrieves market calendar information for trading days from the Alpaca Trading API. Use this action when you need to: - Get market open and close times for specific dates - Check trading session times - Verify market operating hours for date ranges - Plan trading activities around market hours This is a read-only operation that returns market calendar data." }, { "slug": "ALPACA_GET_CLOCK", "name": "Get Clock", "description": "Retrieves the current market clock information from the Alpaca Trading API. Use this action when you need to: - Check if the market is currently open - Determine when the next market open or close will occur - Plan trading activities based on market hours - Verify server time for timestamp-sensitive operations This is a read-only operation that returns the current state of the market clock including whether the market is open and the timestamps for the next open and close." }, { "slug": "ALPACA_GET_CONDITIONS", "name": "Get Stock Conditions", "description": "Retrieves the mapping of condition codes to their names from Alpaca Markets API for the specified type (trade or quote conditions) and tape. Use this action when you need to: - Decode condition codes from stock market data - Get the list of all valid condition codes and their meanings for a specific type - Translate raw condition code integers to human-readable names - Understand the meaning of condition codes from trade or quote data This is a read-only action that queries the stocks meta conditions endpoint." }, { "slug": "ALPACA_GET_CRYPTO_LATEST_QUOTES", "name": "Get Crypto Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified crypto symbols at a specific location. Use when you need real-time quote data for cryptocurrency trading, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_CRYPTO_PERP_LATEST_BARS", "name": "Get Crypto Perp Latest Bars", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bars for crypto perpetual futures symbols. Use this action when you need real-time or near real-time price data for crypto perpetual futures contracts for a specific location (e.g., 'global'). Returns the most recent bar for each requested symbol, including open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_CRYPTO_PERP_LATEST_ORDER_BOOKS", "name": "Get Crypto Perp Latest Orderbooks", "description": "Retrieves the latest bid and ask orderbook data for specified crypto perpetual futures symbols. Use when you need real-time orderbook data for crypto perpetual futures trading, such as checking current market depth before placing orders or analyzing liquidity. Returns the most recent orderbook for each requested symbol, including bid and ask price levels with their sizes." }, { "slug": "ALPACA_GET_CRYPTO_PERP_LATEST_PRICING", "name": "Get Crypto Perp Latest Pricing", "description": "Retrieves the latest pricing data for specified crypto perpetual futures symbols. Use when you need real-time pricing data for crypto perpetual futures trading, such as checking current market prices, index prices, mark prices, funding rates, or open interest before placing orders or analyzing the market. Returns the most recent pricing data for each requested symbol, including timestamp, funding timestamp, open interest, index price, mark price, and funding rate." }, { "slug": "ALPACA_GET_CRYPTO_PERP_LATEST_QUOTES", "name": "Get Crypto Perp Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified crypto perpetual futures symbols for a specific location. Use when you need real-time quote data for crypto perpetual futures trading, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_CRYPTO_PERP_LATEST_TRADES", "name": "Get Crypto Perp Latest Trades", "description": "Retrieves the latest trade data for specified crypto perpetual futures symbols. Use when you need real-time trade data for crypto perpetual futures trading, such as monitoring recent trades, analyzing price movements, or tracking trading volume. Returns the most recent trade for each requested symbol, including price, size, timestamp, and tick direction." }, { "slug": "ALPACA_GET_CRYPTO_PERPS_GLOBAL_LATEST_BARS", "name": "Get Crypto Perps Global Latest Bars", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bars for crypto perpetual futures symbols. Use this action when you need real-time or near real-time price data for crypto perpetual futures contracts. Returns the most recent bar for each requested symbol, including open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_CRYPTO_PERPS_GLOBAL_LATEST_PRICING", "name": "Get Crypto Perps Global Latest Pricing", "description": "Returns the latest pricing data for crypto perpetual futures symbols. Use this action when you need to retrieve current market data for crypto perpetual futures contracts including mark price, index price, open interest, and funding rate." }, { "slug": "ALPACA_GET_CRYPTO_PERPS_GLOBAL_LATEST_QUOTES", "name": "Get Crypto Perps Global Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified crypto perpetual futures symbols. Use when you need real-time quote data for crypto perpetual futures trading, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_CRYPTO_PERPS_GLOBAL_LATEST_TRADES", "name": "Get Crypto Perps Global Latest Trades", "description": "Retrieves the latest trade data for specified crypto perpetual futures symbols. Use when you need real-time trade data for crypto perpetual futures trading, such as monitoring recent trades, analyzing price movements, or tracking trading volume." }, { "slug": "ALPACA_GET_CRYPTO_SNAPSHOTS", "name": "Get Crypto Snapshots", "description": "Retrieves snapshots (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for multiple cryptocurrency symbols in a specific location. Use this action when you need comprehensive real-time market data for crypto symbols, such as building a crypto dashboard, checking current market conditions across multiple assets, or analyzing price movements before trading. Note: This endpoint uses the data.alpaca.markets base URL for crypto market data." }, { "slug": "ALPACA_GET_CRYPTO_US_LATEST_BARS", "name": "Get Crypto US Latest Bars", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bars for US crypto symbols. Use this action when you need real-time or near real-time price data for multiple crypto trading pairs. Returns the most recent bar for each requested symbol, including open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_CRYPTO_US_LATEST_ORDER_BOOKS", "name": "Get Crypto US Latest Orderbooks", "description": "Retrieves the latest bid and ask orderbook data for specified crypto symbols in the US market. Use when you need real-time orderbook data for cryptocurrency trading in the US market, such as checking current market depth before placing orders or analyzing liquidity. Returns the most recent orderbook for each requested symbol, including bid and ask price levels with their sizes." }, { "slug": "ALPACA_GET_CRYPTO_US_LATEST_QUOTES", "name": "Get Crypto US Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified crypto symbols in the US location. Use when you need real-time quote data for cryptocurrency trading in the US market, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_CRYPTO_US_LATEST_TRADES", "name": "Get Crypto US Latest Trades", "description": "Retrieves the latest trade data for specified crypto symbols in the US location. Use when you need real-time trade data for cryptocurrency trading, such as monitoring recent trades, analyzing price movements, or tracking trading volume." }, { "slug": "ALPACA_GET_CRYPTO_US_QUOTES", "name": "Get Crypto US Historical Quotes", "description": "Retrieves historical quote data (bid/ask prices) for specified crypto symbols on US exchanges. Returns quotes sorted by symbol first, then by timestamp. Use when you need: - Historical bid/ask price data for cryptocurrency pairs - Analyzing spread patterns over time - Backtesting trading strategies with quote data - Studying market microstructure with bid/ask sizes Note: Historical quotes for US-1 location only go back to October 14, 2025." }, { "slug": "ALPACA_GET_CRYPTO_US_SNAPSHOTS", "name": "Get Crypto US Snapshots", "description": "Retrieves snapshots (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for multiple cryptocurrency symbols in the US market location. Use this action when you need comprehensive real-time market data for multiple crypto symbols in the US market, such as building a crypto dashboard, checking current market conditions across multiple assets, or analyzing price movements before trading." }, { "slug": "ALPACA_GET_CRYPTO_US_TRADES", "name": "Get Crypto US Trades", "description": "Retrieves historical trade data for specified US crypto symbols. Use when you need to: - Get historical trade data for US crypto symbols at once - Analyze trading volume and price movements over time - Build datasets for backtesting or research - Query trades within a specific time range Results are sorted by symbol first, then by trade timestamp. If the response contains more data than the limit allows, use the next_page_token to continue fetching." }, { "slug": "ALPACA_GET_EXCHANGES", "name": "Get Exchanges", "description": "Retrieves a list of supported stock exchanges with their short codes and full names from the Alpaca Market Data API. Use this action when you need to: - Get the mapping between exchange codes and full names - Understand what exchange codes like 'Z', 'V', 'N' mean in market data - Parse exchange identifiers in trading data responses This is a read-only operation that queries the stocks meta exchanges endpoint." }, { "slug": "ALPACA_GET_LATEST_BAR_FOR_STOCK_SYMBOL", "name": "Get Latest Bar for Stock Symbol", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bar for a single stock symbol. Use this action when you need real-time or near real-time price bar data for a specific stock trading symbol. This is useful for dashboards, price monitoring, and triggering alerts based on current market conditions. Returns the most recent bar including open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_LATEST_BARS_FOR_CRYPTO_SYMBOL", "name": "Get Latest Bars For Crypto Symbol", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bar data for a crypto symbol. Use this action when you need real-time or near real-time price data for a specific cryptocurrency pair. Returns the most recent bar including open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_LATEST_BARS_FOR_CRYPTO_SYMBOLS", "name": "Get Latest Bars for Crypto Symbols", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bars for multiple crypto symbols. Use this action when you need real-time or near real-time price bar data for multiple cryptocurrency pairs simultaneously. This is useful for dashboards, price monitoring, and triggering alerts based on current market conditions. The response includes the most recent bar for each requested symbol, containing open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_LATEST_BARS_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Latest Bars for Multiple Stock Symbols", "description": "Retrieves the latest OHLCV (Open, High, Low, Close, Volume) bars for multiple stock symbols. Use this action when you need real-time or near real-time price bar data for multiple stock trading symbols simultaneously. This is useful for dashboards, price monitoring, and triggering alerts based on current market conditions. The response includes the most recent bar for each requested symbol, containing open, high, low, close prices, volume, trade count, and volume-weighted average price." }, { "slug": "ALPACA_GET_LATEST_ORDER_BOOKS_FOR_CRYPTO", "name": "Get Crypto Latest Orderbooks", "description": "Retrieves the latest bid and ask orderbook data for specified crypto symbols. Use when you need real-time orderbook data for cryptocurrency trading, such as checking current market depth before placing orders or analyzing liquidity. Returns the most recent orderbook for each requested symbol, including bid and ask price levels with their sizes." }, { "slug": "ALPACA_GET_LATEST_QUOTE_FOR_CRYPTO_SYMBOL", "name": "Get Crypto Latest Quote", "description": "Retrieves the latest bid and ask prices for a specified crypto symbol. Use when you need real-time quote data for a specific cryptocurrency, such as checking current market prices before placing an order or monitoring price movements." }, { "slug": "ALPACA_GET_LATEST_QUOTE_FOR_STOCK_SYMBOL", "name": "Get Latest Quote for Stock Symbol", "description": "Retrieves the latest NBBO (National Best Bid and Offer) quote for a single stock symbol. Use this action when you need real-time or near real-time bid and ask prices for a specific stock trading symbol. This is useful for checking market conditions before placing an order or monitoring price movements for a single symbol. Note: This endpoint uses the data.alpaca.markets base URL for stock data." }, { "slug": "ALPACA_GET_LATEST_QUOTES_FOR_MULTIPLE_CRYPTO_SYMBOLS", "name": "Get Crypto Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified crypto symbols. Use when you need real-time quote data for cryptocurrency trading, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_LATEST_QUOTES_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Latest Quotes for Multiple Stock Symbols", "description": "Retrieves the latest NBBO (National Best Bid and Offer) quotes for multiple stock symbols. Use this action when you need real-time or near real-time bid and ask prices for multiple stock trading symbols simultaneously. This is useful for checking market conditions before placing orders, monitoring price movements, or evaluating spread opportunities. The response includes the most recent quote for each requested symbol, containing bid price, ask price, bid size, ask size, and exchange information." }, { "slug": "ALPACA_GET_LATEST_TRADE_FOR_STOCK_SYMBOL", "name": "Get Latest Trade for Stock Symbol", "description": "Retrieves the latest trade data for a single stock symbol. Use this action when you need the most recent trade information for a specific stock ticker, such as checking current market price and volume before placing an order or monitoring real-time price movements for a single symbol. This provides the single most recent trade including price, size, exchange, and timestamp. Note: This endpoint uses the data.alpaca.markets base URL for stock market data." }, { "slug": "ALPACA_GET_LATEST_TRADES_FOR_MULTIPLE_CRYPTO_SYMBOLS", "name": "Get Latest Crypto Trades", "description": "Retrieves the latest trade data for specified crypto symbols. Use when you need real-time trade data for cryptocurrency trading, such as monitoring recent trades, analyzing price movements, or tracking trading volume." }, { "slug": "ALPACA_GET_LATEST_TRADES_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Latest Trades for Multiple Stock Symbols", "description": "Retrieves the latest trade data for multiple stock symbols. Use this action when you need real-time or near real-time trade data for multiple stock trading symbols simultaneously. This is useful for dashboards, trade monitoring, and triggering alerts based on current market conditions. The response includes the most recent trade for each requested symbol, containing price, size, timestamp, exchange, and trade conditions." }, { "slug": "ALPACA_GET_MARKET_CALENDAR", "name": "Get Market Calendar", "description": "Retrieves market calendar information for a specific exchange from the Alpaca Trading API. Use this action when you need to: - Get market open and close times for a specific exchange (NYSE, NASDAQ, etc.) - Check trading session times for a particular market - Verify market operating hours for specific date ranges - Plan trading activities around specific market hours This is a read-only operation that returns market calendar data for the specified exchange." }, { "slug": "ALPACA_GET_META_EXCHANGES", "name": "Get Meta Exchanges", "description": "Retrieves a list of all US stock exchanges and their identifying information from the Alpaca Market Data API. Use this action when you need to: - Get details about available stock exchanges for order routing - Understand the market structure and exchange types - Map exchange IDs to their names and types - Get participant IDs for market data filtering This is a read-only action that queries the stocks meta exchanges endpoint." }, { "slug": "ALPACA_GET_MOST_ACTIVES", "name": "Get Most Active Stocks", "description": "Retrieves the most active stocks by trading volume or trade count. Use this action when you need to: - Fetch top traded stocks for the current period - Monitor market liquidity and activity - Build trading signals based on volume or trade frequency - Analyze market breadth through most active stocks Note: This endpoint uses data.alpaca.markets base URL and provides real-time SIP data for US stock markets." }, { "slug": "ALPACA_GET_NEWS", "name": "Get News", "description": "Retrieves news articles for specified crypto symbols from the Alpaca Market Data API. Use this action when you need to: - Fetch the latest news for crypto assets (BTCUSD, ETHUSD, etc.) - Monitor news sentiment for trading decisions - Build news-based signals or alerts - Get historical news for specific time periods Note: The data.alpaca.markets endpoint is used for news API requests." }, { "slug": "ALPACA_GET_OPEN_POSITION", "name": "Get Open Position", "description": "Fetches a single open position by symbol or asset ID. Use when you need to retrieve detailed information about a specific position, including cost basis, shares traded, market value, and unrealized P&L. This action is useful for checking the current status of a particular holding, monitoring P&L for a specific symbol, or verifying position details after placing or closing orders. Returns real-time updated information as price data changes. Note: The position must be currently open to be retrieved through this endpoint. Once closed, the position will no longer be queryable." }, { "slug": "ALPACA_GET_OPTION_BARS", "name": "Get Options Historical Bars", "description": "Retrieves historical OHLCV (Open, High, Low, Close, Volume) bars for options contracts. Use this action when you need to analyze historical price movements and trading activity for specific option contracts over a given timeframe. The bars are aggregated based on the specified timeframe (e.g., 1 minute, 5 minutes, 1 hour, 1 day). Results are sorted by symbol first, then by timestamp." }, { "slug": "ALPACA_GET_OPTION_CHAIN", "name": "Get Option Chain", "description": "Retrieves the option chain for a specific underlying symbol including quotes and greeks for all available strikes and expirations. Use this action when you need comprehensive option market data for a specific underlying asset, such as analyzing option strategies, comparing strikes/expirations, or viewing real-time quotes and Greeks." }, { "slug": "ALPACA_GET_OPTION_CONTRACT_SYMBOL_OR_ID", "name": "Get Option Contract", "description": "Get an option contract by its symbol or unique identifier. Use this action when you need to retrieve detailed information about a specific option contract. You can query by either the contract's OCC symbol (e.g., 'AAPL250620C00100000') or its unique Alpaca ID. This endpoint is useful for getting contract specifications before placing orders or for retrieving current market data for a specific option. Note: This is a BETA endpoint and may be subject to changes." }, { "slug": "ALPACA_GET_OPTION_LATEST_QUOTES", "name": "Get Option Latest Quotes", "description": "Retrieves the latest bid and ask prices for specified option symbols. Use when you need real-time quote data for options trading, such as checking current market prices before placing orders or monitoring price movements." }, { "slug": "ALPACA_GET_OPTION_META_CONDITIONS", "name": "Get Options Meta Conditions", "description": "Retrieves the mapping of condition codes to their names from Alpaca Markets API for the specified tick type (trade or quote conditions). Use this action when you need to: - Decode condition codes from options market data - Get the list of all valid condition codes and their meanings for a specific tick type - Translate raw condition code integers to human-readable names This is a read-only action that queries the options meta conditions endpoint." }, { "slug": "ALPACA_GET_OPTIONS_CONTRACTS", "name": "Get Option Contracts", "description": "Retrieve option contracts from Alpaca Markets API (BETA). Use this action when you need to: - Search for option contracts by underlying symbol - Filter contracts by expiration date, strike price, type (call/put), or style - Get a paginated list of all available option contracts - Find contracts eligible for penny price increments By default, only active contracts expiring before the upcoming weekend are returned." }, { "slug": "ALPACA_GET_OPTIONS_LATEST_TRADES", "name": "Get Options Latest Trades", "description": "Retrieves the latest trade for each requested option contract symbol. Use this action when you need to: - Get the most recent trade price and size for specific option contracts - Check the last traded time for option symbols before trading - Monitor real-time trading activity for option positions This endpoint requires market data subscription and uses the data.alpaca.markets base URL." }, { "slug": "ALPACA_GET_OPTIONS_META_CONDITIONS_TRADE", "name": "Get Options Meta Conditions Trade", "description": "Retrieves the mapping of trade condition codes to their names from Alpaca Markets API. Use this action when you need to: - Decode trade condition codes from options market data - Get the list of all valid trade condition codes and their meanings - Translate raw condition code integers to human-readable names This is a read-only action that queries the options meta conditions endpoint." }, { "slug": "ALPACA_GET_OPTION_SNAPSHOTS", "name": "Get Options Snapshots", "description": "Retrieves snapshots (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for multiple option contract symbols. Use this action when you need comprehensive real-time market data for option contracts, such as building an option price dashboard, checking current bid/ask prices across multiple option strikes, or analyzing intraday price movements before trading. Note: This endpoint requires market data subscription and uses the data.alpaca.markets base URL." }, { "slug": "ALPACA_GET_OPTIONS_SNAPSHOTS_UNDERLYING_SYMBOL", "name": "Get Options Snapshots by Underlying Symbol", "description": "Retrieves the option chain snapshot data for a specific underlying symbol. This endpoint provides the latest trade, quote, and greeks data for all option contracts associated with an underlying symbol. It returns snapshots including delta, gamma, theta, vega, implied volatility, and real-time bid/ask prices. Use when you need to analyze an entire option chain - checking all available strike prices and expiration dates for a given underlying asset, including their Greeks and current market pricing. This is useful for: - Building option chains for analysis - Finding specific strike/expiration combinations - Analyzing Greeks across an entire chain - Detecting unusual option activity" }, { "slug": "ALPACA_GET_OPTION_TRADES", "name": "Get Options Historical Trades", "description": "Retrieves historical trade data for option contracts. Use this action when you need to: - Analyze historical trade activity for option contracts - Review past trades for specific option symbols - Calculate volume patterns and trading activity - Track price movements over specific time periods Note: This endpoint uses the data.alpaca.markets base URL and requires market data subscription." }, { "slug": "ALPACA_GET_PDT_STATUS", "name": "Get PDT Status", "description": "Retrieves the Pattern Day Trader (PDT) status for a specified Alpaca trading account. Use when you need to check if an account is flagged as a PDT, monitor PDT call counts, or verify day trading buying power status for regulatory compliance. PDT rules apply to accounts that execute more than 3 day trades within 5 business days when holding a cash account or using margin. This endpoint helps monitor and track PDT-related information for accounts." }, { "slug": "ALPACA_GET_POSITIONS_FOR_ACCOUNT", "name": "List account positions", "description": "Lists all open positions for a specified trading account. Use when you need to retrieve current positions, monitor portfolio holdings, or check unrealized P&L for an account." }, { "slug": "ALPACA_GET_QUOTES_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Quotes for Multiple Stock Symbols", "description": "Retrieves historical quote (bid/ask) data for multiple stock symbols. Use this action when you need historical quote data including bid and ask prices for multiple stock trading symbols. This is useful for trading analysis, backtesting strategies, and monitoring price spreads. Note: Results are sorted by symbol first, then by timestamp. If you hit the limit for one symbol, subsequent symbols won't appear in the response - use next_page_token to get more results." }, { "slug": "ALPACA_GET_QUOTES_FOR_STOCK_SYMBOL", "name": "Get Quotes for Stock Symbol", "description": "Retrieves historical NBBO (National Best Bid and Offer) quotes for a specific stock symbol. Use this action when you need historical quote data for a single stock symbol, such as for analysis, backtesting trading strategies, or research purposes. You can filter results by time range using start and end parameters. The response includes an array of quotes with bid/ask prices, sizes, and exchange information. Pagination is supported via the page_token parameter when results exceed the limit." }, { "slug": "ALPACA_GET_SNAPSHOT_FOR_STOCK_SYMBOL", "name": "Get Stock Snapshot for Symbol", "description": "Retrieves a snapshot (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for a single stock symbol. Use this action when you need comprehensive real-time market data for a single stock symbol, such as checking current market conditions, displaying price information, or analyzing price movements before trading. This endpoint requires the data.alpaca.markets API." }, { "slug": "ALPACA_GET_SNAPSHOTS_FOR_MULTIPLE_CRYPTO_SYMBOLS", "name": "Get Crypto Snapshots", "description": "Retrieves snapshots (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for multiple cryptocurrency symbols. Use this action when you need comprehensive real-time market data for multiple crypto symbols, such as building a crypto dashboard, checking current market conditions across multiple assets, or analyzing price movements before trading." }, { "slug": "ALPACA_GET_SNAPSHOTS_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Stock Snapshots for Multiple Symbols", "description": "Retrieves snapshots (latest trade, latest quote, minute bar, daily bar, and previous daily bar) for multiple stock symbols. Use this action when you need comprehensive real-time market data for multiple stock symbols, such as building a stock dashboard, checking current market conditions across multiple stocks, or analyzing price movements before trading. This endpoint requires the data.alpaca.markets API." }, { "slug": "ALPACA_GET_SPECIFIC_ANNOUNCEMENT", "name": "Get Specific Announcement", "description": "Retrieves a specific corporate action announcement by its unique identifier. Use this action when you need to fetch detailed information about a corporate action such as dividends, stock splits, mergers, spinoffs, or other corporate events. This is a read-only operation that returns the complete announcement details including the corporate action type, relevant dates (ex-date, record date, payable date), and any associated values (cash amounts, split ratios, etc.). The response includes the announcement ID which can be used for reference or correlation with other systems." }, { "slug": "ALPACA_GET_STOCK_AUCTIONS", "name": "Get Stock Auctions", "description": "Retrieves historical auction data for specified stock symbols. Use this action when you need to: - Analyze opening and closing auction prices for stocks - Study pre-market and post-market auction behavior - Understand auction volume and price discovery - Monitor auction-based market data for trading decisions Results are sorted by timestamp in descending order (most recent first). Pagination is supported via the page_token field. Note: This endpoint uses the data.alpaca.markets base URL and requires appropriate data subscriptions for SIP and OTC feeds." }, { "slug": "ALPACA_GET_STOCK_AUCTION_SINGLE", "name": "Get Stock Auctions for Symbol", "description": "Retrieves historical auction (opening/closing print) data for a single stock symbol. Use this action when you need to analyze auction-related price and volume data for a specific stock ticker. This is useful for: - Understanding opening and closing auction prices - Analyzing auction volume and liquidity - Studying price discovery at market open and close - Trading strategies based on auction data Note: This endpoint uses the data.alpaca.markets base URL and requires appropriate data subscriptions for SIP and OTC feeds." }, { "slug": "ALPACA_GET_STOCKS_META_CONDITIONS_TRADE", "name": "Get Stocks Meta Conditions Trade", "description": "Retrieves the mapping of trade condition codes to their names from Alpaca Markets API. Use this action when you need to: - Decode trade condition codes from stock market data - Get the list of all valid trade condition codes and their meanings - Translate raw condition code integers to human-readable names - Understand the meaning of condition codes from trade data This is a read-only action that queries the stocks meta conditions trade endpoint." }, { "slug": "ALPACA_GET_SUBSCRIPTION", "name": "Get Subscription", "description": "Retrieves a rebalancing subscription by its unique ID. Returns complete subscription details including the associated account ID, portfolio ID, creation timestamp, and last rebalancing timestamp. Use when you need to fetch subscription information for an existing rebalancing setup. Note: If the subscription_id is invalid or malformed, a 400 error is returned. If the subscription does not exist, a 404 error is returned." }, { "slug": "ALPACA_GET_TOP_MOVERS_BY_MARKET_TYPE", "name": "Get Top Movers By Market Type", "description": "Retrieves the top market movers (gainers and losers) for a specified market type. Use this action when you need to: - Fetch top gainers and losers for stock market analysis - Get cryptocurrency movers for crypto trading strategies - Identify assets with significant price movements - Build market sentiment indicators Note: The screener endpoint uses data.alpaca.markets, not api.alpaca.markets." }, { "slug": "ALPACA_GET_TRADES_FOR_MULTIPLE_CRYPTO_SYMBOLS", "name": "Get Trades for Multiple Crypto Symbols", "description": "Retrieves historical trade data for specified crypto symbols. Use when you need to: - Get historical trade data for multiple crypto symbols at once - Analyze trading volume and price movements over time - Build datasets for backtesting or research - Monitor trades across different exchanges Results are sorted by symbol first, then by trade timestamp. If the response contains more data than the limit allows, use the next_page_token to continue fetching." }, { "slug": "ALPACA_GET_TRADES_FOR_MULTIPLE_STOCK_SYMBOLS", "name": "Get Trades for Multiple Stock Symbols", "description": "Retrieves historical trade data for multiple stock symbols. Use this action when you need: - Historical trade data for multiple stock symbols at once - Analyze trading volume and price movements over time - Build datasets for backtesting or research - Monitor trades across different exchanges Results are sorted by symbol first, then by trade timestamp. If the response contains more data than the limit allows, use the next_page_token to continue fetching. Note: This endpoint uses the data.alpaca.markets base URL and requires appropriate data subscriptions for SIP and OTC feeds." }, { "slug": "ALPACA_GET_TRADES_FOR_STOCK_SYMBOL", "name": "Get Historical Trades for Stock Symbol", "description": "Retrieves historical trade data for a single stock symbol. Use this action when you need to analyze historical trade data for a specific stock ticker, such as reviewing price movements, trading volume patterns, or tick data analysis. Each trade record includes price, size, exchange, timestamp, and trade conditions. Note: This endpoint uses the data.alpaca.markets base URL." }, { "slug": "ALPACA_GET_WATCHLIST_BY_ID", "name": "Get Watchlist By ID", "description": "Retrieves a single watchlist by its unique identifier. Use when you need to view the details of a specific watchlist, including its name, associated assets, and timestamps. This endpoint provides direct access to a watchlist using its ID rather than requiring account-level traversal. This is a read-only operation that does not modify any data." }, { "slug": "ALPACA_GET_WATCHLIST_BY_NAME", "name": "Get Watchlist By Name", "description": "Retrieves a specific watchlist by its name. Use when you need to find a particular watchlist without knowing its ID, such as when managing watchlists for display or modification. Returns the watchlist details including all contained symbols. If multiple watchlists share the same name, the API may return the first match." }, { "slug": "ALPACA_GET_WATCHLISTS", "name": "Get Watchlists", "description": "Retrieves all watchlists associated with the authenticated account. Use this action when you need to: - View all watchlists for an account - Find a specific watchlist by name - Check what symbols are being tracked before adding or removing symbols - Get watchlist IDs for subsequent operations This is a read-only operation that returns the current state of all watchlists including their metadata (ID, name, timestamps) and the assets contained within each." }, { "slug": "ALPACA_PATCH_ACCOUNT_CONFIGURATIONS", "name": "Update Account Configurations", "description": "Update the trading account configuration settings for the authenticated account. Use when you need to modify account-level trading settings such as day-trading buying power checks, fractional trading permissions, margin multiplier limits, shorting restrictions, or trade confirmation email preferences. Supports partial updates - only specify the settings you want to change. Settings not included in the request remain unchanged. This action operates on the currently authenticated account and does not require an account_id parameter." }, { "slug": "ALPACA_REMOVE_ASSET_FROM_WATCHLIST", "name": "Remove Asset From Watchlist", "description": "Removes a symbol from an existing watchlist in Alpaca. Use this action when you need to delete a ticker symbol from a watchlist that is no longer being tracked. The action returns the updated watchlist after the symbol has been removed. This action is irreversible - once a symbol is removed from a watchlist, it cannot be recovered through this API. You would need to re-add it using a separate add-to-watchlist action if available." }, { "slug": "ALPACA_REMOVE_SYMBOL_FROM_WATCHLIST", "name": "Remove Symbol From Watchlist", "description": "Tool to remove a symbol from an existing watchlist in Alpaca. Use when you need to delete a ticker symbol from a watchlist that is no longer being tracked. This action is irreversible - once a symbol is removed from a watchlist, it cannot be recovered through this API. You would need to re-add it using ALPACA_ADD_ASSET_TO_WATCHLIST." }, { "slug": "ALPACA_UPDATE_TRADING_CONFIGURATIONS", "name": "Update Trading Configurations", "description": "Updates trading account configurations for an Alpaca trading account. Use when you need to modify account-level trading settings such as day-trading buying power checks, trade confirmation email preferences, or trading restrictions. Supports partial updates - only specify the settings you want to change. Settings not included in the request remain unchanged. This action requires the 'account:write' scope." }, { "slug": "ALPACA_UPDATE_WATCHLIST_BY_ID", "name": "Update Watchlist By ID", "description": "Updates an existing watchlist by its unique identifier. Use when you need to modify the name or symbols in a watchlist using its ID rather than name. This action allows partial updates - you can update just the name, just the symbols, or both at once. The watchlist_id identifies which watchlist to update and is provided in the request. Note: The symbols field, if provided, will replace all existing symbols in the watchlist." }, { "slug": "ALPACA_UPDATE_WATCHLIST_BY_NAME", "name": "Update Watchlist By Name", "description": "Updates an existing watchlist by its name. Use when you need to modify the symbols in a watchlist or rename it. The action allows partial updates - you can provide only symbols to update the watchlist contents, only a new_name to rename it, or both to update both. At least one of new_name or symbols must be provided. Note: The `name` parameter identifies which watchlist to update (case-insensitive)." }, { "slug": "ALPACA_UPDATE_WATCHLIST_BY_NAME2", "name": "Update Watchlist By Name (v2)", "description": "Updates an existing watchlist by its name. Use when you need to modify the symbols in a watchlist or rename it. The action allows partial updates - you can provide only symbols to update the watchlist contents, only a new_name to rename it, or both to update both. At least one of new_name or symbols must be provided. Note: The `name` parameter identifies which watchlist to update (case-insensitive)." }, { "slug": "ALPACA_UPLOAD_ACCOUNT_CIP", "name": "Upload Account CIP Information", "description": "Upload CIP (Customer Identification Program) information for an account to complete identity verification. Use when you need to submit identity information for a new Alpaca trading account as part of the account onboarding process. This action is typically called after account creation to provide the required identity verification data including citizenship, tax ID, and name." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "alpaca_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "account:write,trading,data" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "alpaca_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key ID", "type": "string", "description": "Your Alpaca API Key ID (APCA-API-KEY-ID)", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret Key", "type": "string", "description": "Your Alpaca API Secret Key (APCA-API-SECRET-KEY)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alpha_vantage", "name": "Alpha Vantage", "logo": "https://logos.composio.dev/api/alpha_vantage", "description": "Alpha Vantage provides free APIs for real-time and historical financial data, including stock time series, technical indicators, and more.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALPHA_VANTAGE_ALL_COMMODITIES", "name": "Get All Commodities Price Index", "description": "Tool to retrieve the global price index of all commodities. Use when you need monthly, quarterly, or annual aggregated price index data for commodities." }, { "slug": "ALPHA_VANTAGE_ALUMINUM", "name": "ALUMINUM", "description": "Tool to fetch global aluminum prices. Use when you need monthly, quarterly, or annual LME aluminum price data." }, { "slug": "ALPHA_VANTAGE_BALANCE_SHEET", "name": "Balance Sheet", "description": "Tool to return annual and quarterly balance sheets for a company. Use when you need detailed fiscal statements for analysis. Numeric fields may be returned as strings or empty values; treat empty/missing fields as null, not zero, before performing calculations." }, { "slug": "ALPHA_VANTAGE_BRENT", "name": "Brent Crude Oil Prices", "description": "Tool to fetch Brent crude oil prices. Use when you need daily, weekly, or monthly Brent price data." }, { "slug": "ALPHA_VANTAGE_CASH_FLOW", "name": "Cash Flow", "description": "Tool to return annual and quarterly cash flow statements for a company. Use when you need to analyze cash movements." }, { "slug": "ALPHA_VANTAGE_COFFEE", "name": "Global Coffee Price", "description": "Tool to retrieve the global coffee price series. Use when you need historical monthly, quarterly, or annual coffee prices." }, { "slug": "ALPHA_VANTAGE_COMPANY_OVERVIEW", "name": "Company Overview (Stocks Only)", "description": "Tool to retrieve company overview and fundamental data for individual company stocks. Note: This endpoint only works for stocks, not ETFs, mutual funds, or indices. Use after specifying a valid stock ticker symbol. Numeric fields (e.g., MarketCapitalization, SharesOutstanding, Beta, DividendYield, PERatio) are returned as strings and may be empty — treat empty/missing values as null, not zero. Fundamentals such as Beta, PERatio, and PayoutRatio may reflect different reporting periods across symbols; avoid naive cross-symbol aggregation without aligning periods. Check the as-of date in the response; SharesOutstanding and similar fields can lag corporate actions. Alpha Vantage enforces per-minute and per-day rate caps; throttle requests when processing bulk symbol lists." }, { "slug": "ALPHA_VANTAGE_COPPER", "name": "COPPER", "description": "Tool to fetch global price of copper in monthly, quarterly, and annual intervals. Use when you need historical copper price series for analysis." }, { "slug": "ALPHA_VANTAGE_CORN", "name": "Corn", "description": "Tool to retrieve global price of corn in monthly, quarterly, and annual intervals. Use after verifying API key when you need historical Corn price data." }, { "slug": "ALPHA_VANTAGE_COTTON", "name": "COTTON", "description": "Tool to retrieve global cotton prices in monthly, quarterly, and annual intervals. Use when you need historical cotton price data." }, { "slug": "ALPHA_VANTAGE_CPI", "name": "Consumer Price Index (CPI)", "description": "Tool to fetch monthly and semiannual Consumer Price Index (CPI) data of the United States. Use when you need inflation metrics or CPI historical data." }, { "slug": "ALPHA_VANTAGE_CRYPTO_INTRADAY", "name": "Crypto Intraday Time Series", "description": "Tool to retrieve intraday time series data for cryptocurrencies with realtime updates. Use when you need high-frequency OHLCV data (open, high, low, close, volume) for a specific cryptocurrency/market pair within the trading day." }, { "slug": "ALPHA_VANTAGE_CURRENCY_EXCHANGE_RATE", "name": "Currency Exchange Rate", "description": "Tool to retrieve real-time exchange rate for a currency pair. Use after confirming base and quote currency codes to get current rates. Rate is nested at response['Realtime Currency Exchange Rate']['5. Exchange Rate'] as a string; cast to float before calculations. Treat missing key or '0.00000000' as unavailable. On free-tier keys, throttling returns HTTP 200 with 'Information' or 'Note' field instead of data — inspect response body before parsing. Free-tier limits: ~5 requests/minute, ~25 requests/day. For historical or intraday data use ALPHA_VANTAGE_FX_DAILY or TWELVE_DATA_TIME_SERIES." }, { "slug": "ALPHA_VANTAGE_DIGITAL_CURRENCY_DAILY", "name": "Digital Currency Daily Time Series", "description": "Tool to retrieve daily historical time series for a digital currency traded on a specific market. Use when needing daily OHLC and volume data for a crypto/fiat pair, refreshed daily at midnight UTC." }, { "slug": "ALPHA_VANTAGE_DIGITAL_CURRENCY_MONTHLY", "name": "Digital Currency Monthly Time Series", "description": "Tool to retrieve monthly digital currency prices in a fiat currency. Use when needing long-term monthly OHLC and volume data for a given crypto/fiat pair. Always returns full history; no date range filtering — filter client-side. OHLCV response values are strings; convert to numeric types before calculations." }, { "slug": "ALPHA_VANTAGE_DIGITAL_CURRENCY_WEEKLY", "name": "Digital Currency Weekly Time Series", "description": "Tool to retrieve weekly digital currency prices in a fiat currency. Use when needing weekly OHLC and volume data for a given crypto/fiat pair." }, { "slug": "ALPHA_VANTAGE_DURABLES", "name": "Durable Goods Orders", "description": "Tool to fetch monthly manufacturers' new orders of durable goods data for the United States. Use when you need historical data on big-ticket consumer purchases like cars, appliances, and refrigerators." }, { "slug": "ALPHA_VANTAGE_EARNINGS", "name": "Earnings", "description": "Tool to retrieve annual and quarterly earnings (EPS history) for a specific company symbol. Free tier limit: ~25 requests/day, 1 request/second; an 'Information' key or empty array in the response indicates rate limit exhaustion or missing data — avoid parallel calls." }, { "slug": "ALPHA_VANTAGE_EARNINGS_CALENDAR", "name": "Earnings Calendar", "description": "Tool to return the earnings calendar for the next three months. Use when you need a schedule of upcoming earnings across symbols. Returned dates reflect local exchange time, not UTC; normalize to UTC before comparing against the horizon window." }, { "slug": "ALPHA_VANTAGE_EARNINGS_CALL_TRANSCRIPT", "name": "Earnings Call Transcript", "description": "Tool to retrieve the earnings call transcript for a given company and quarter. Use after confirming symbol and quarter. Returns full transcript text and associated LLM-based sentiment signals. Transcripts may be unavailable for some quarters; verify available periods via ALPHA_VANTAGE_EARNINGS if response is empty. Free tier: ~25 requests/day, ~1 request/second — empty arrays or 'Information' messages may indicate rate limits rather than missing data; space out requests and avoid parallel calls. Transcripts can be very long; chunk or extract key sections before passing to an LLM." }, { "slug": "ALPHA_VANTAGE_FEDERAL_FUNDS_RATE", "name": "Federal Funds Rate", "description": "Tool to fetch daily, weekly, and monthly federal funds rate data of the United States. Use when you need historical interest rate data from the US Federal Reserve for economic analysis." }, { "slug": "ALPHA_VANTAGE_FX_DAILY", "name": "FX Daily Time Series", "description": "Tool to fetch daily time series (open, high, low, close) for a currency pair. Use after confirming base and quote currency codes to retrieve historical daily FX rates. Response keys are timestamp strings and are not guaranteed to be sorted; always sort explicitly to find the most recent entry. Weekends and market holidays are excluded from the series." }, { "slug": "ALPHA_VANTAGE_FX_INTRADAY", "name": "FX Intraday Time Series", "description": "Tool to retrieve intraday OHLC time series for a forex pair at 1-60 minute intervals (premium endpoint). Use when you need minute-bar FX data for backtesting or monitoring. Note: This is a premium Alpha Vantage function; check entitlement if errors occur." }, { "slug": "ALPHA_VANTAGE_FX_MONTHLY", "name": "FX Monthly Time Series", "description": "Tool to get monthly time series (open, high, low, close) for a currency pair. Use when you need historical monthly forex data for a given currency pair. Data is returned in reverse-chronological order; OHLC values are strings and must be cast to numeric types before computations. The most recent entry may represent an incomplete period — treat its OHLC values as preliminary until the month closes." }, { "slug": "ALPHA_VANTAGE_FX_WEEKLY", "name": "FX Weekly Time Series", "description": "Tool to get weekly time series (open, high, low, close) for a currency pair. Use when you need weekly FX rates. Results are reverse-chronological; sort ascending and cast OHLC string values to numeric before computing indicators. The most recent entry may represent an incomplete week — treat its high, low, and close as provisional until the week closes." }, { "slug": "ALPHA_VANTAGE_GET_DIVIDENDS", "name": "Get Dividend History", "description": "Tool to retrieve historical dividend payment records for a stock symbol. Use when you need dividend dates and amounts for analyzing company distributions." }, { "slug": "ALPHA_VANTAGE_GET_HISTORICAL_OPTIONS", "name": "Get Historical Options", "description": "Tool to retrieve full historical options chain for a symbol on a specific date with 15+ years of history, including Greeks and IV. Use when you need historical options data with pricing, volume, and Greeks for analysis. Note: This is a premium Alpha Vantage endpoint." }, { "slug": "ALPHA_VANTAGE_GET_SLIDING_WINDOW_ANALYTICS", "name": "Analytics Sliding Window", "description": "Tool to retrieve advanced analytics metrics with sliding window calculations for trend analysis. Use when you need to perform statistical analysis on stock price movements over time, such as calculating moving averages, standard deviations, variances, or correlations between multiple stocks. Ideal for technical analysis and identifying trends." }, { "slug": "ALPHA_VANTAGE_GLOBAL_QUOTE", "name": "Global Quote", "description": "Tool to retrieve latest price and volume information for a specified security ticker in realtime. Use when you need current stock quote data with price, volume, and daily trading metrics." }, { "slug": "ALPHA_VANTAGE_INCOME_STATEMENT", "name": "Income Statement", "description": "Tool to fetch annual and quarterly income statements. Use after confirming the company symbol. Numeric fields may be returned as strings or empty values — convert safely and treat empty/missing as null, not zero, before computing derived metrics. Some symbols may be missing fields entirely; treat absent fields as missing data rather than defaults. One API call per symbol; when processing multiple symbols, retain only key derived fields rather than full raw responses." }, { "slug": "ALPHA_VANTAGE_INFLATION", "name": "Inflation", "description": "Tool to fetch annual U.S. inflation rates (consumer prices). Use when you need historical inflation data for economic analysis." }, { "slug": "ALPHA_VANTAGE_IPO_CALENDAR", "name": "IPO Calendar", "description": "Tool to retrieve the IPO calendar for the next three months. Use when you need a list of upcoming IPO events across markets." }, { "slug": "ALPHA_VANTAGE_LISTING_STATUS", "name": "Listing Status", "description": "Tool to fetch listing status of US stocks and ETFs. Use when you need active or delisted securities as of a date." }, { "slug": "ALPHA_VANTAGE_MARKET_STATUS", "name": "Market Status", "description": "Tool to retrieve current market status (open/closed) for global stock exchanges. Use when you need to check if major trading venues worldwide are currently open or closed." }, { "slug": "ALPHA_VANTAGE_NEWS_SENTIMENT", "name": "News Sentiment", "description": "Tool to fetch live and historical market news & sentiment. Use when you need curated news articles with sentiment scores for specified tickers and topics." }, { "slug": "ALPHA_VANTAGE_NONFARM_PAYROLL", "name": "Nonfarm Payroll", "description": "Tool to fetch monthly U.S. nonfarm payroll employment data from the Bureau of Labor Statistics. Use when you need historical employment statistics for economic analysis." }, { "slug": "ALPHA_VANTAGE_REAL_GDP", "name": "Real GDP", "description": "Tool to fetch U.S. real GDP time series. Use when you need quarterly or annual GDP data." }, { "slug": "ALPHA_VANTAGE_REAL_GDP_PER_CAPITA", "name": "Real GDP Per Capita", "description": "Tool to fetch quarterly Real GDP per capita data of the United States. Use when you need real GDP per capita information adjusted for inflation." }, { "slug": "ALPHA_VANTAGE_REALTIME_BULK_QUOTES", "name": "Realtime Bulk Quotes", "description": "Tool to retrieve realtime quotes for US-traded symbols in bulk (up to 100 symbols per request). Use when you need current price and volume data for multiple symbols simultaneously, covering both regular and extended trading hours. This is a premium API function requiring subscription. If subscription access is denied, use ALPHA_VANTAGE_GLOBAL_QUOTE for single-symbol quotes." }, { "slug": "ALPHA_VANTAGE_RETAIL_SALES", "name": "Retail Sales", "description": "Tool to fetch monthly retail trade sales data of the United States. Use when you need historical U.S. retail sales statistics sourced from Census Bureau." }, { "slug": "ALPHA_VANTAGE_SECTOR", "name": "Sector Performance", "description": "Tool to retrieve real-time and historical sector performance data. Use when you need sector performance metrics across timeframes." }, { "slug": "ALPHA_VANTAGE_SPLITS", "name": "Stock Splits", "description": "Tool to retrieve historical stock split events for a symbol. Use when you need past split dates and ratio details before analyzing corporate actions." }, { "slug": "ALPHA_VANTAGE_SUGAR", "name": "Global Sugar Price", "description": "Tool to retrieve the global sugar price series. Use when you need historical monthly, quarterly, or annual sugar prices." }, { "slug": "ALPHA_VANTAGE_SYMBOL_SEARCH", "name": "Symbol Search", "description": "Tool to search for best-matching symbols based on keywords. Use when you need to find ticker symbols by a name or keyword. Returns multiple close matches — inspect the exchange, region, and currency fields in each result to select the correct symbol before passing it to downstream calls. Coverage excludes some exotic instruments and non-US assets; handle empty results explicitly." }, { "slug": "ALPHA_VANTAGE_TECHNICAL_INDICATOR", "name": "Technical Indicator", "description": "Tool to fetch technical indicators for the specified equity or currency pair. Use after obtaining time series to compute moving averages or oscillators. Response body may contain 'Information' or 'Note' keys indicating errors or rate-limit signals — inspect payload before treating data as valid. Results are nested under a function-specific key (e.g., 'Technical Analysis: RSI') with values as strings; convert to numeric before calculations. No date range filtering supported; returns all available data points — filter client-side to the required window." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_DAILY", "name": "Time Series Daily", "description": "Tool to retrieve daily time series data (date, daily open, high, low, close, volume) for a global equity symbol, covering 20+ years of historical data. Use when you need daily OHLCV data for a specific stock." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_INTRADAY", "name": "Time Series Intraday", "description": "Tool to retrieve intraday OHLCV for a given equity. Use when you need high-frequency pricing data within the trading day. Always inspect the JSON response body for 'Information' or 'Error Message' fields — the API may return these instead of data even on HTTP 200." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_INTRADAY_EXTENDED", "name": "Time Series Intraday Extended", "description": "Tool to retrieve historical intraday OHLCV data for the trailing 2 years, covering over 2 million data points per ticker. Use when you need extensive historical intraday pricing data for data visualization, trading simulation, backtesting, or machine learning applications with longer horizons." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_MONTHLY", "name": "Time Series Monthly", "description": "Tool to retrieve monthly open, high, low, close, and volume for a global equity. Use when you need month-end OHLCV data for a specific stock symbol." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_MONTHLY_ADJUSTED", "name": "Monthly Adjusted Time Series", "description": "Tool to retrieve monthly adjusted OHLC and volume for a global equity. Use after confirming the ticker symbol when you need end-of-month adjusted price and dividend data. Dividends are returned as a single aggregated value per month; annual or multi-year payout totals require manual summation across monthly data points." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_WEEKLY", "name": "Weekly Time Series", "description": "Tool to fetch weekly open, high, low, close, and volume for a global equity symbol. Use after confirming the target symbol to obtain its historical weekly OHLCV series. Alpha Vantage enforces per-minute and per-day rate limits; throttle sequential calls combining this tool with other time series or fundamentals endpoints." }, { "slug": "ALPHA_VANTAGE_TIME_SERIES_WEEKLY_ADJUSTED", "name": "Weekly Adjusted Time Series", "description": "Tool to fetch weekly adjusted time series data with split/dividend adjustments, covering 20+ years of historical data. Use after confirming the target symbol to obtain its historical weekly adjusted OHLCV series with dividend information." }, { "slug": "ALPHA_VANTAGE_TOP_GAINERS_LOSERS", "name": "Top Gainers, Losers & Most Active", "description": "Tool to fetch the top 20 gainers, losers, and most actively traded US tickers. Use when you need current market movers data without maintaining a ticker universe. Data is updated end-of-day by default, with realtime/15-min delayed access available via premium." }, { "slug": "ALPHA_VANTAGE_TREASURY_YIELD", "name": "US Treasury Yield", "description": "Tool to fetch US Treasury yield data for specified maturity and interval. Use when you need daily, weekly, or monthly treasury yield rates for various constant maturities (3-month, 2-year, 5-year, 7-year, 10-year, 30-year)." }, { "slug": "ALPHA_VANTAGE_UNEMPLOYMENT", "name": "Unemployment Rate", "description": "Tool to fetch monthly unemployment rate data of the United States. Use when you need historical U.S. unemployment statistics sourced from Bureau of Labor Statistics." }, { "slug": "ALPHA_VANTAGE_WHEAT", "name": "WHEAT", "description": "Tool to fetch global price of wheat. Use when you need historical wheat prices in monthly, quarterly, or annual intervals." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "alpha_vantage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Alpha Vantage API Key", "type": "string", "description": "Your Alpha Vantage API key, required for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "alttext_ai", "name": "AltText.ai", "logo": "https://logos.composio.dev/api/alttext_ai", "description": "AltText.ai is a service that automatically generates alt text for images, enhancing accessibility and SEO.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ALTTEXT_AI_CREATE_BULK_IMAGES", "name": "Bulk Create Images", "description": "Tool to bulk upload and process a CSV file of image URLs for alt text generation. Use when you need to process multiple images at once (up to 100,000 URLs). Invalid rows are returned in row_errors for debugging." }, { "slug": "ALTTEXT_AI_CREATE_IMAGE", "name": "Create Image", "description": "Tool to add an image and generate alt text. Supports both URL and base64-encoded file upload. Use when you need to generate alt text for images, with options for custom prompts, keywords, multiple languages, and ecommerce data. Rate limited to 4 calls per second." }, { "slug": "ALTTEXT_AI_DELETE_IMAGE_BY_ASSET_ID", "name": "Delete Image by Asset ID", "description": "Tool to delete an image from your library by its asset ID. Use when you need to remove a specific image permanently from your AltText.ai account." }, { "slug": "ALTTEXT_AI_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve account settings and usage information. Use when you need to check your AltText.ai account configuration and usage limits before generating alt text." }, { "slug": "ALTTEXT_AI_GET_IMAGE_BY_ASSET_ID", "name": "Get Image by Asset ID", "description": "Tool to retrieve detailed information about a specific image using its asset ID. Use when you need to fetch alt text, metadata, or status of a previously processed image." }, { "slug": "ALTTEXT_AI_GET_IMAGES", "name": "Get Images", "description": "Tool to retrieve a paginated list of images in your library, including their alt text and metadata. Use when you need to browse or filter images programmatically after authentication." }, { "slug": "ALTTEXT_AI_SCRAPE_PAGE", "name": "Scrape Page for Images", "description": "Tool to scrape a web page or HTML document and queue all images for alt text generation. Images are processed asynchronously. Does not execute JavaScript. Use when you need to batch-process images from a website or HTML content." }, { "slug": "ALTTEXT_AI_SEARCH_IMAGES", "name": "Search Images", "description": "Search for images in your AltText.ai library by keywords. Searches through your previously processed images to find matches based on URLs, alt text content, and metadata. Useful for finding specific images in large libraries. Returns paginated results with alt text and metadata. Note: This searches your own image library, not a public image database. Images must be added via the Create Image endpoint before they can be searched." }, { "slug": "ALTTEXT_AI_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update account settings (e.g., webhook_url, name). Use after confirming current account details to modify settings." }, { "slug": "ALTTEXT_AI_UPDATE_IMAGE_BY_ASSET_ID", "name": "Update Image by Asset ID", "description": "Tool to update an image with new data including asset ID, alt text, and metadata. Use when you need to modify existing image information. Note: You cannot update the URL of an existing image." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "alttext_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AltText.ai API Key", "type": "string", "description": "Your AltText.ai API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amara", "name": "Amara", "logo": "https://logos.composio.dev/api/amara", "description": "Amara is an online platform that enables users to create, edit, and manage subtitles and captions for videos, facilitating accessibility and multilingual content.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AMARA_ADD_SUBTITLE_NOTE", "name": "Add Subtitle Note", "description": "Adds a note/comment to a specific subtitle language for a video. Notes are used for collaboration and providing feedback on subtitles during the editing process. Requires a valid video ID and language code. Use this tool to document issues, provide suggestions, or communicate with other subtitle editors." }, { "slug": "AMARA_ADD_VIDEO_URL", "name": "Add Video URL", "description": "Tool to add a new URL to a video, allowing association with multiple video providers (YouTube, Vimeo, etc.). Use when you need to add alternative URLs for the same video content on different platforms." }, { "slug": "AMARA_CREATE_SUBTITLE_LANGUAGE", "name": "Create Subtitle Language", "description": "Creates a new subtitle language track for an Amara video. This is the first step before adding or uploading subtitles - you must create the language track before you can add subtitle content. Each video can have multiple subtitle languages, but you cannot create the same language twice for the same video. Use list_subtitle_languages to check existing languages before creating a new one." }, { "slug": "AMARA_CREATE_SUBTITLES", "name": "Create Subtitles", "description": "Tool to create new subtitles for a video in a specific language. Accepts subtitle data in multiple formats (SRT, VTT, DFXP, etc.) either as a string or via URL. The subtitle language must already exist for the video - use create_subtitle_language first if needed. Use when you need to add subtitle content to a video." }, { "slug": "AMARA_CREATE_VIDEO", "name": "Create Video", "description": "Tool to add a new video to Amara. Use when you need to create a video entry from a URL. Supports URLs from YouTube, Vimeo, Dailymotion, or direct video file URLs." }, { "slug": "AMARA_DELETE_VIDEO_URL", "name": "Delete Video URL", "description": "Tool to remove a video URL from a video. Use when you need to delete an unwanted or incorrect URL from a video's list of URLs. The video must have at least one other URL remaining." }, { "slug": "AMARA_FETCH_SUBTITLES_DATA", "name": "Fetch Subtitles Data", "description": "Fetch subtitle data for a video in a specific language. Returns a list of subtitle segments with start/end timestamps and text content. Use this after obtaining a video ID (from List Videos) and confirming available language codes (from List Subtitle Languages)." }, { "slug": "AMARA_GET_ACTIVITY", "name": "Get Activity", "description": "Tool to retrieve detailed information about a specific activity by its ID. Use when you need to fetch metadata for a particular activity event." }, { "slug": "AMARA_GET_SUBTITLE_LANGUAGE_DETAILS", "name": "Get Subtitle Language Details", "description": "Tool to retrieve details for a single subtitle language. Use when you have video ID and language code and need metadata about that language track." }, { "slug": "AMARA_GET_TEAM_DETAILS", "name": "Get Team Details", "description": "Tool to get details on a specific team by slug. Use when you need metadata for a single team." }, { "slug": "AMARA_GET_TEAM_LANGUAGES", "name": "Get Team Languages", "description": "Tool to get language preferences for a specific team by slug. Use when you need to retrieve preferred and blacklisted languages for a team." }, { "slug": "AMARA_GET_USER_ACTIVITY", "name": "Get User Activity", "description": "Tool to retrieve activity log for a specific user on Amara. Use when you need to view a user's recent actions such as video additions, subtitle edits, or comments. Returns a paginated list of activity items with details about what actions the user performed, on which videos, and in which languages." }, { "slug": "AMARA_GET_USER_DATA", "name": "Get User Data", "description": "Retrieves detailed user profile information from Amara, including username, avatar, biography, languages spoken, and video counts. Use this tool when you need to: - Fetch a user's profile details by their username or user ID - Get information about the authenticated user using 'me' as identifier - Look up user metadata like languages, biography, or avatar - Obtain user resource URIs for further API operations Note: User IDs (with 'id$' prefix) are more reliable than usernames since usernames can be changed by users." }, { "slug": "AMARA_GET_VIDEO_URL", "name": "Get Video URL", "description": "Tool to get details for a specific video URL. Use when you need to retrieve metadata about a specific URL entry in Amara's system by video_id and url_id." }, { "slug": "AMARA_GET_VIDEO_URL_DETAILS", "name": "Get Video URL Details", "description": "Tool to get details for a specific video URL. Use when you have a public or embeddable video URL and need its Amara metadata (ID, title, duration, thumbnails, etc.)." }, { "slug": "AMARA_LIST_ACTIVITY", "name": "List Activity", "description": "Tool to list activity across Amara. Use when you need to retrieve activity logs with optional filters by team, video, or activity type." }, { "slug": "AMARA_LIST_AVAILABLE_LANGUAGES", "name": "List Available Languages", "description": "Tool to get a list of all supported languages. Use when you need to know available language options from Amara." }, { "slug": "AMARA_LIST_SUBTITLE_ACTIONS", "name": "List Subtitle Actions", "description": "Tool to list available actions for subtitles based on current workflow state. Use when you need to determine what operations can be performed on a subtitle (e.g., approve, reject, publish) for a specific video and language." }, { "slug": "AMARA_LIST_SUBTITLE_LANGUAGES", "name": "List Subtitle Languages", "description": "Tool to list all subtitle languages for a video. Use when you have a video ID and need to fetch its available subtitle languages." }, { "slug": "AMARA_LIST_SUBTITLE_NOTES", "name": "List Subtitle Notes", "description": "List notes for subtitles in a specific language. Use this to retrieve all notes/comments added to a subtitle language for collaboration and feedback purposes." }, { "slug": "AMARA_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams. Use when you need to retrieve your accessible teams with pagination." }, { "slug": "AMARA_LIST_VIDEO_ACTIVITY", "name": "List Video Activity", "description": "Tool to list activity for a specific video. Use when you need to fetch the activity log or history of actions performed on a video." }, { "slug": "AMARA_LIST_VIDEOS", "name": "List Videos", "description": "Tool to list all videos. Use when you need to fetch a paginated list of videos with optional filters." }, { "slug": "AMARA_LIST_VIDEO_URLS", "name": "List Video URLs", "description": "Tool to list all URLs associated with a video. Use when you need to retrieve every URL for embedding or processing." }, { "slug": "AMARA_MAKE_VIDEO_URL_PRIMARY", "name": "Make Video URL Primary", "description": "Tool to set a video URL as the primary URL. Use when you need to designate one of a video's URLs as primary for embedding and display. Call after listing video URLs to confirm the URL ID." }, { "slug": "AMARA_PERFORM_SUBTITLE_ACTION", "name": "Perform Subtitle Action", "description": "Tool to perform an action on subtitles such as publish, unpublish, approve, reject, send-back, or endorse. Use when you need to change the workflow state of subtitles for a specific video and language. The available actions depend on the current workflow state and team settings." }, { "slug": "AMARA_SEND_MESSAGE", "name": "Send Message", "description": "Sends a message to a user or team member in Amara. Use this tool to send notifications, updates, or communicate with other users or teams on the platform. You must specify either a recipient user (by username or user ID) or a team (by team slug), but not both." }, { "slug": "AMARA_UPDATE_SUBTITLE_LANGUAGE", "name": "Update Subtitle Language", "description": "Tool to update a subtitle language for a video. Use after reviewing existing subtitle language settings and needing to adjust completeness flags or soft-limit constraints." }, { "slug": "AMARA_UPDATE_VIDEO", "name": "Update Video", "description": "Tool to update an existing video's metadata including title, description, team, and project assignment. Use when you need to modify video information after creation." }, { "slug": "AMARA_VIEW_VIDEO_DETAILS", "name": "View Video Details", "description": "Tool to view details of a specific video by ID. Use when you need complete metadata for a given video." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "amara_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Amara API Key", "type": "string", "description": "The API key for authenticating requests to the Amara API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amazon_polly", "name": "Amazon Polly", "logo": "https://logos.composio.dev/api/amazon_polly", "description": "Amazon Polly is a text-to-speech service that uses advanced deep learning technologies to synthesize natural-sounding human speech.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "amazon_polly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "AWS Region", "type": "string", "description": "AWS region for Amazon Polly endpoint (e.g., us-east-1, eu-west-1, ap-southeast-1). See https://docs.aws.amazon.com/general/latest/gr/pol.html for available regions.", "required": true, "default": "us-east-1" }, { "name": "generic_api_key", "displayName": "AWS Access Key ID", "type": "string", "description": "Your AWS Access Key ID from the AWS IAM console. Visit https://console.aws.amazon.com/iam/ to create or manage access keys.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "AWS Secret Access Key", "type": "string", "description": "Your AWS Secret Access Key associated with the Access Key ID. This is shown only once when created.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ambee", "name": "Ambee", "logo": "https://logos.composio.dev/api/ambee", "description": "Ambee provides real-time, hyperlocal environmental data through APIs, offering insights into air quality, weather, pollen, and more.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AMBEE_GEOCODE_BY_PLACE", "name": "Geocode by Place", "description": "Tool to transform a place name or address into geographic coordinates. Use after confirming the location name to get precise latitude and longitude." }, { "slug": "AMBEE_GET_AIR_QUALITY_BY_CITY", "name": "Get Air Quality by City", "description": "Tool to retrieve real-time air quality data for a specific city. Use after obtaining a valid city name when current AQI and pollutant levels are needed." }, { "slug": "AMBEE_GET_AIR_QUALITY_BY_COUNTRY_CODE", "name": "Get Air Quality by Country Code", "description": "Tool to retrieve real-time air quality data for a specific country using a 3-letter ISO code. Use after acquiring the country code and when you want a national overview of air quality." }, { "slug": "AMBEE_GET_AIR_QUALITY_BY_LAT_LNG", "name": "Get Air Quality by Latitude and Longitude", "description": "Tool to retrieve real-time air quality data for a specific latitude and longitude. Use when you need hyper-local air quality readings for given coordinates." }, { "slug": "AMBEE_GET_AIR_QUALITY_BY_POSTAL_CODE", "name": "Get Air Quality by Postal Code", "description": "Retrieve real-time air quality data for a specific postal code and country. Returns comprehensive air quality metrics including pollutant concentrations (PM2.5, PM10, CO, NO2, O3, SO2), Air Quality Index (AQI) with category (Good/Moderate/Unhealthy), and location details. Data is updated hourly with 500-meter spatial resolution following US EPA standards. Use this when you need hyper-local air quality insights for a specific postal code." }, { "slug": "AMBEE_GET_AIR_QUALITY_FORECAST_BY_LAT_LNG", "name": "Get Air Quality Forecast by Latitude and Longitude", "description": "Tool to retrieve air quality forecast for a specific latitude and longitude. Use when you need predicted air quality data up to 48 hours in advance based on geographic coordinates." }, { "slug": "AMBEE_GET_AIR_QUALITY_HISTORY_BY_LAT_LNG", "name": "Get Air Quality History by Latitude and Longitude", "description": "Tool to retrieve historical air quality data for a specific latitude and longitude. Use when you need past air quality readings for given coordinates within the last 2 days." }, { "slug": "AMBEE_GET_DISASTERS_BY_CONTINENT_LATEST", "name": "Retrieve latest natural disasters by continent", "description": "Tool to retrieve latest natural disaster data for a specific continent. Use when you need up-to-date disaster information by continent code." }, { "slug": "AMBEE_GET_DISASTERS_HISTORY", "name": "Get historical natural disasters by date range", "description": "Tool to retrieve global historical natural disaster data with date range filtering. Use when you need to search disaster events from a specific starting date onwards." }, { "slug": "AMBEE_GET_DISASTERS_HISTORY_BY_COUNTRY_CODE", "name": "Get historical natural disasters by country code", "description": "Tool to retrieve historical natural disaster data for a country by ISO country code. Use when you need past disaster information for a specific country within a given date range." }, { "slug": "AMBEE_GET_DISASTERS_HISTORY_BY_LAT_LNG", "name": "Get historical natural disasters by coordinates", "description": "Tool to retrieve historical natural disaster data for a specific location by coordinates with date range. Use when you need historical disaster information for a geographic point within the past month." }, { "slug": "AMBEE_GET_DISASTERS_LATEST_BY_COUNTRY_CODE", "name": "Get latest disasters by country code", "description": "Tool to retrieve latest natural disaster data for a specific country using ISO country code. Use when you need up-to-date disaster information for a particular country." }, { "slug": "AMBEE_GET_DISASTERS_LATEST_BY_LAT_LNG", "name": "Get latest natural disasters by coordinates", "description": "Tool to retrieve latest natural disaster data (earthquakes, floods, droughts, volcanic eruptions) for a specific location using geographic coordinates. Use when you need up-to-date disaster information for a particular latitude and longitude." }, { "slug": "AMBEE_GET_ELEVATION_BY_LAT_LNG", "name": "Get Elevation by Latitude and Longitude", "description": "Tool to retrieve elevation statistics (min, max, mean) for a specific latitude and longitude. Use when you need geospatial elevation data for a location within North America." }, { "slug": "AMBEE_GET_ELEVATION_BY_PLACE", "name": "Get Elevation by Place", "description": "Retrieve elevation statistics (minimum, maximum, and mean) for a location by place name. Returns elevation data in meters above sea level. This endpoint has global coverage and is updated every 6 months. Use this when you have a place name (like \"San Francisco, USA\" or \"Tokyo\") and need detailed elevation information." }, { "slug": "AMBEE_GET_FIRE_RISK_BY_LAT_LNG", "name": "Get Fire Risk by Latitude and Longitude", "description": "Tool to retrieve fire risk forecast and Fire Weather Index (FWI) data for specific geographic coordinates. Use when you need weekly fire risk predictions for a location over the next four weeks based on latitude and longitude." }, { "slug": "AMBEE_GET_ILI_FORECAST_BY_LAT_LNG", "name": "Get ILI Forecast by Latitude and Longitude", "description": "Tool to retrieve up to 28-day forecast of Influenza-like Illness (ILI) risk using latitude and longitude. Use when you need daily ILI risk levels for a specific location, optionally including pollen and weather details." }, { "slug": "AMBEE_GET_POLLEN_FORECAST_BY_PLACE", "name": "Get Pollen Forecast by Place", "description": "Tool to retrieve 48-hour pollen forecast for a specific location by place name. Use when you need hourly pollen count predictions including grass, tree, and weed pollen levels with risk assessments." }, { "slug": "AMBEE_GET_POLLEN_HISTORY_BY_PLACE", "name": "Get Pollen History by Place", "description": "Tool to retrieve historical pollen data for a specific place name. Use after obtaining a valid place name and time range when historical pollen counts and risk levels are needed." }, { "slug": "AMBEE_GET_POLLEN_LATEST_BY_LAT_LNG", "name": "Get Latest Pollen Data by Latitude and Longitude", "description": "Tool to retrieve latest pollen data for a specific geographic location using latitude and longitude coordinates. Use when you need current pollen concentration levels and risk assessments for grass, tree, and weed pollen at a location." }, { "slug": "AMBEE_GET_POLLEN_LATEST_BY_PLACE", "name": "Get Latest Pollen by Place", "description": "Tool to retrieve latest pollen data for a specific place by name. Use when current pollen count and risk levels are needed for allergy awareness." }, { "slug": "AMBEE_GET_WEATHER_FORECAST_BY_LAT_LNG", "name": "Get Weather Forecast by Latitude and Longitude", "description": "Tool to retrieve weather forecast for a specific latitude and longitude (up to 72 hours). Use when you need predicted weather data based on geographic coordinates with customizable time intervals." }, { "slug": "AMBEE_GET_WEATHER_LATEST_BY_LAT_LNG", "name": "Get Current Weather by Latitude and Longitude", "description": "Tool to retrieve current weather data for a specific latitude and longitude, including temperature, pressure, humidity, and wind conditions. Use when you need real-time weather information for given coordinates." }, { "slug": "AMBEE_GET_WILDFIRE_BY_LAT_LNG", "name": "Get Wildfire Data by Latitude and Longitude", "description": "Retrieves real-time wildfire data for a specific geographic location using latitude and longitude coordinates. Returns nearby wildfire incidents including both detected fires (from satellite imagery) and reported fires (from official sources). Each record includes location, detection time, fire category, Fire Radiative Power (FRP), Fire Weather Index (FWI), and confidence level when available. Use this tool when you need to: - Monitor wildfire activity in a specific area - Get real-time fire detection data for coordinates - Check for fire hazards at a particular location - Filter fires by type (detected vs reported) The API returns fires within a radius of the specified coordinates." }, { "slug": "AMBEE_GET_WILDFIRE_BY_PLACE", "name": "Get Wildfire Data by Place", "description": "Retrieves real-time wildfire data for a specific location by place name. Returns wildfire incidents from the last 7 days including both satellite-detected fires and officially reported fires. Each record includes precise location coordinates, detection time, fire intensity metrics (FRP, FWI), fire category, and confidence level. Use this tool when you need to: - Check for active wildfires in a city, state, or country - Monitor fire activity in a specific geographic area - Get recent wildfire detection data without knowing exact coordinates - Filter fires by type (satellite-detected vs officially reported) The API searches within a geographic area around the place name provided. More specific locations (e.g., \"San Francisco, CA\") return more localized results than broad queries (e.g., \"California\")." }, { "slug": "AMBEE_GET_WILDFIRE_RISK_FORECAST_BY_PLACE", "name": "Get Wildfire Risk Forecast by Place", "description": "Tool to retrieve wildfire risk forecast for a specific place. Use when you need weekly wildfire risk predictions for a location over the next four weeks." }, { "slug": "AMBEE_REVERSE_GEOCODE_BY_LAT_LNG", "name": "Reverse Geocode by Latitude and Longitude", "description": "Tool to convert geographic coordinates into human-readable location data (address, place name, postal code). Use when you have latitude and longitude and need to get the corresponding address or location details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ambee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Ambee API Key", "type": "string", "description": "Your unique Ambee API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ambient_weather", "name": "Ambient Weather", "logo": "https://logos.composio.dev/api/ambient_weather", "description": "Ambient Weather provides personal weather stations and an API for accessing real-time and historical weather data.", "category": "internet of things", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AMBIENT_WEATHER_GET_DEVICES", "name": "Get Devices", "description": "Tool to retrieve a list of user's Ambient Weather devices with their most recent data. Use when you need to list your stations and view their latest readings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ambient_weather_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Grants access to past and present data for a user's devices. Obtainable from the AmbientWeather.net account page.", "required": true, "default": null }, { "name": "generic_key", "displayName": "Application Key", "type": "string", "description": "Identifies the developer/application. Required for each application developed. Obtainable from the AmbientWeather.net account page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ambivo", "name": "Ambivo", "logo": "https://logos.composio.dev/api/ambivo", "description": "Ambivo is a CRM platform for managing leads, contacts, and business relationships with integrated communication tools.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ambivo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Access token generated from https://account.ambivo.com/integrations. Create with custom expiration (recommended 1 year) and configure permission scopes.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amc_cinemas", "name": "Amc Cinemas", "logo": "https://logos.composio.dev/api/amc_cinemas", "description": "AMC Theatres API provides access to movie showtimes, theatre locations, and ticket information", "category": "lifestyle & entertainment", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "amc_cinemas_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "X-AMC-Vendor-Key", "type": "string", "description": "Your AMC Theatres API vendor key. Apply at https://developers.amctheatres.com/GettingStarted/NewVendorRequest", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amentum_aerospace", "name": "Amentum Aerospace", "logo": "https://logos.composio.dev/api/amentum_aerospace", "description": "Aerospace data APIs for ocean, atmosphere, gravity, aviation radiation, and magnetic field data", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "amentum_aerospace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "API Service", "type": "string", "description": "Select the Amentum service (ocean, atmosphere, gravity, avrad, or globalmagnet)", "required": true, "default": "atmosphere" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key from https://developer.amentum.io/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "amplifier", "name": "Amplifier", "logo": "https://logos.composio.dev/api/amplifier", "description": "Amplifier is a marketing platform for running campaigns and managing customer engagement.", "category": "marketing", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "amplifier_api_key_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Amplifier API key (requires PRO account)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "anakin", "name": "Anakin", "logo": "https://logos.composio.dev/api/anakin", "description": "AI-powered automation platform for content generation and chatbot applications", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "anakin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "API Access Token generated from Anakin.ai Web App (app.anakin.ai) under Integration section. Note: Tokens are only displayed once upon generation.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "anchor_browser", "name": "Anchor Browser", "logo": "https://logos.composio.dev/api/anchor_browser", "description": "Anchor Browser is a developer platform that enables AI agents to interact with the web through browser automation, transforming complex web interactions into simple API endpoints.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 64, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "ANCHOR_BROWSER_CLICK_MOUSE", "name": "Click Mouse", "description": "Tool to perform a mouse click at specified coordinates within a browser session. Use when you need to interact with page elements by clicking at specific x/y positions. The click is executed in the context of the specified browser session." }, { "slug": "ANCHOR_BROWSER_COPY_SELECTED_TEXT", "name": "Copy Selected Text", "description": "Tool to copy currently selected text in a browser session to the clipboard. Use when you need to extract text that the user or automation has selected in the browser." }, { "slug": "ANCHOR_BROWSER_CREATE_INTEGRATION", "name": "Create Integration", "description": "Tool to create a new integration with a third-party service like 1Password. Use when you need to set up an integration for managing credentials or accessing external services. The integration will be available immediately after creation for use in browser sessions and profiles." }, { "slug": "ANCHOR_BROWSER_CREATE_OR_UPDATE_TASK_DRAFT", "name": "Create or Update Task Draft", "description": "Tool to create or update the draft version of a task. Draft versions are used for development and testing before publishing. Use when you need to save task code changes without creating a published version." }, { "slug": "ANCHOR_BROWSER_CREATE_PROFILE", "name": "Create Profile", "description": "Creates a new browser profile from an active session. A profile stores cookies, local storage, and cache data. The session must be running when this is called; profile data is persisted once the session terminates. Use profiles to maintain persistent browser state across multiple sessions." }, { "slug": "ANCHOR_BROWSER_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task or update an existing task with the same name. Tasks are reusable TypeScript code snippets that execute in browser sessions. Use when you need to define repeatable automation workflows that can be invoked across multiple sessions." }, { "slug": "ANCHOR_BROWSER_DELETE_EXTENSION", "name": "Delete Extension", "description": "Tool to delete a browser extension and remove it from storage. Use after confirming the extension exists." }, { "slug": "ANCHOR_BROWSER_DELETE_INTEGRATION", "name": "Delete Integration", "description": "Tool to delete an existing integration and remove its stored credentials. Use after confirming the integration ID exists." }, { "slug": "ANCHOR_BROWSER_DELETE_PROFILE", "name": "Delete Profile", "description": "Tool to delete a browser profile by ID. Use after confirming the profile exists." }, { "slug": "ANCHOR_BROWSER_DELETE_TASK", "name": "Delete Task", "description": "Tool to soft delete a task and all its versions. Use after confirming the task exists." }, { "slug": "ANCHOR_BROWSER_DELETE_TASK_VERSION", "name": "Delete Task Version", "description": "Tool to soft delete a specific version of a task. The version will no longer be accessible but data is preserved for recovery. Use when you need to remove a specific task version." }, { "slug": "ANCHOR_BROWSER_DEPLOY_TASK", "name": "Deploy Task", "description": "Tool to deploy a task by creating a new version with auto-incremented version number. Use when you need to publish task changes and make them available for execution." }, { "slug": "ANCHOR_BROWSER_DOUBLE_CLICK_MOUSE", "name": "Double Click Mouse", "description": "Tool to perform a double click at specified coordinates in a browser session. Use when you need to trigger double-click events on UI elements or specific page locations." }, { "slug": "ANCHOR_BROWSER_DRAG_AND_DROP", "name": "Drag and Drop", "description": "Tool to perform a drag and drop operation from start coordinates to end coordinates within a browser session. Use when you need to simulate dragging UI elements or files in automated workflows." }, { "slug": "ANCHOR_BROWSER_END_ALL_SESSIONS", "name": "End All Sessions", "description": "Tool to terminate all active browser sessions at once. Use when you need to immediately close every browser session for the authenticated user, such as during cleanup operations or security concerns." }, { "slug": "ANCHOR_BROWSER_END_BROWSER_SESSION", "name": "End Browser Session", "description": "Tool to end a specific browser session by ID. Use after confirming the session ID you want to terminate." }, { "slug": "ANCHOR_BROWSER_GET_BATCH_SESSION_STATUS", "name": "Get Batch Session Status", "description": "Tool to retrieve detailed status information for a specific batch including progress and errors. Use when you need to check the status of a batch session creation request." }, { "slug": "ANCHOR_BROWSER_GET_BROWSER_SESSION", "name": "Get Browser Session", "description": "Tool to retrieve detailed information about a specific browser session. Use when you need to check the status, configuration, or execution details of a browser session." }, { "slug": "ANCHOR_BROWSER_GET_CLIPBOARD_CONTENT", "name": "Get Clipboard Content", "description": "Tool to retrieve the current content of the clipboard from a browser session. Use when you need to read clipboard data from an active session." }, { "slug": "ANCHOR_BROWSER_GET_LATEST_TASK_VERSION", "name": "Get Latest Task Version", "description": "Tool to retrieve the latest version of a task including the full base64 encoded code content. Use when you need to access the most recent task implementation." }, { "slug": "ANCHOR_BROWSER_GET_PROFILE2", "name": "Get Profile (v2)", "description": "Tool to retrieve details of a specific profile by its name. Use when you need to fetch information about a particular browser profile." }, { "slug": "ANCHOR_BROWSER_GET_SESSION_PAGES", "name": "Get Session Pages", "description": "Tool to retrieve all pages associated with a specific browser session. Use when you need to list all open tabs or pages in an active or completed session." }, { "slug": "ANCHOR_BROWSER_GET_TASK_DRAFT", "name": "Get Task Draft", "description": "Tool to retrieve the draft version of a task, including the full Base64 encoded code content. Use when you need to access the current draft of a task that hasn't been published yet." }, { "slug": "ANCHOR_BROWSER_GET_TASK_EXECUTION_RESULT", "name": "Get Task Execution Result", "description": "Tool to retrieve a single task execution result by its ID. Use when you need to check the status, output, or error details of a specific task execution." }, { "slug": "ANCHOR_BROWSER_GET_TASK_METADATA", "name": "Get Task Metadata", "description": "Tool to retrieve task metadata without downloading the full task code. Use when you need task information such as status, creation time, or language without the code content." }, { "slug": "ANCHOR_BROWSER_GET_TASK_VERSION", "name": "Get Task Version", "description": "Tool to retrieve a specific version of a task, including the full code content. Use when you need to access the complete task code for a particular version (draft, latest, or specific version number)." }, { "slug": "ANCHOR_BROWSER_GET_WEBPAGE_CONTENT", "name": "Get Webpage Content", "description": "Tool to retrieve rendered content of a webpage in HTML or Markdown format. Use when you need to fetch a page’s full content, optionally within an existing browser session." }, { "slug": "ANCHOR_BROWSER_LIST_AGENT_RESOURCES", "name": "List Agent Resources", "description": "List all agent resources (files) uploaded to a browser session. Returns metadata for each file including name, size, file type, and last modified timestamp. Requires an active running session - use START_BROWSER_SESSION first. Files can be uploaded using UPLOAD_FILE action." }, { "slug": "ANCHOR_BROWSER_LIST_EXTENSIONS", "name": "List Extensions", "description": "Retrieves all browser extensions uploaded by the authenticated user. Use this to view available extensions that can be attached to browser sessions for automation tasks." }, { "slug": "ANCHOR_BROWSER_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to retrieve all integrations for the authenticated team. Use when you need to view available integrations that can be used with browser sessions." }, { "slug": "ANCHOR_BROWSER_LIST_PROFILES", "name": "List Profiles", "description": "Tool to fetch all stored browser profiles. Use when you need an overview of all profiles available to the authenticated user (e.g., after creating or deleting profiles)." }, { "slug": "ANCHOR_BROWSER_LIST_SESSION_DOWNLOADS", "name": "List Session Downloads", "description": "Tool to retrieve metadata of files downloaded during a browser session. Use after confirming the session ID." }, { "slug": "ANCHOR_BROWSER_LIST_SESSION_RECORDINGS", "name": "List Session Recordings", "description": "Tool to list all recordings for a specific browser session. Use after confirming the session ID." }, { "slug": "ANCHOR_BROWSER_LIST_SESSIONS", "name": "List Sessions", "description": "Tool to list all browser sessions. Use when you need to retrieve both active and inactive sessions." }, { "slug": "ANCHOR_BROWSER_LIST_TASK_EXECUTIONS", "name": "List Task Executions", "description": "Tool to retrieve execution history for a specific task with filtering and pagination support. Use when you need to view past execution results, monitor task success rates, or debug failed executions." }, { "slug": "ANCHOR_BROWSER_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve a paginated list of all tasks for the authenticated team. Use when you need to view available tasks with their latest version information and metadata." }, { "slug": "ANCHOR_BROWSER_LIST_TASK_VERSIONS", "name": "List Task Versions", "description": "Tool to retrieve all versions of a specific task, including draft and published versions. Use when you need to view the version history of a task or select a specific version for deployment or execution." }, { "slug": "ANCHOR_BROWSER_MOVE_MOUSE", "name": "Mouse Move", "description": "Tool to move the mouse cursor to specified coordinates within a browser session. Use when you need to simulate mouse movement at the OS level." }, { "slug": "ANCHOR_BROWSER_NAVIGATE_TO_URL", "name": "Navigate to URL", "description": "Tool to navigate a browser session to a specified URL. Use when you need to direct an existing session to a new webpage." }, { "slug": "ANCHOR_BROWSER_PASTE_TEXT", "name": "Paste Text", "description": "Tool to paste text at the current cursor position in a browser session. Use when you need to insert text into an active form field or text area." }, { "slug": "ANCHOR_BROWSER_PAUSE_AGENT", "name": "Pause Agent", "description": "Tool to pause the AI agent for a specific browser session. Use when you need to temporarily halt autonomous agent execution while keeping the session active." }, { "slug": "ANCHOR_BROWSER_PAUSE_SESSION_RECORDING", "name": "Pause Session Recording", "description": "Tool to pause the video recording for a specific browser session. Use when you need to temporarily stop recording without ending the session." }, { "slug": "ANCHOR_BROWSER_PERFORM_KEYBOARD_SHORTCUT", "name": "Perform Keyboard Shortcut", "description": "Tool to perform a keyboard shortcut using specified keys in a browser session. Use when you need to simulate keyboard input like copy (Control+C), paste (Control+V), or any other key combination." }, { "slug": "ANCHOR_BROWSER_PERFORM_WEB_TASK", "name": "Perform Web Task", "description": "Tool to perform autonomous web tasks using AI agents. Use when you need to automate complex browser interactions like form filling, data extraction, or multi-step workflows." }, { "slug": "ANCHOR_BROWSER_PRESS_MOUSE_BUTTON", "name": "Mouse Down", "description": "Tool to perform a mouse button down action at specified coordinates within a browser session. Use when you need to simulate pressing and holding a mouse button at a specific screen position." }, { "slug": "ANCHOR_BROWSER_PUBLISH_TASK_VERSION", "name": "Publish Task Version", "description": "Tool to publish a specific version of a task. Creates a new version if it doesn't exist, or updates an existing version's metadata. Use when you need to make a specific task version available for execution. Cannot publish to 'draft' versions." }, { "slug": "ANCHOR_BROWSER_RELEASE_MOUSE_BUTTON", "name": "Release Mouse Button", "description": "Tool to release a mouse button at specified coordinates within a browser session. Use when automating mouse interactions that require button release events, such as completing drag operations or simulating natural mouse behavior." }, { "slug": "ANCHOR_BROWSER_RESUME_AGENT", "name": "Resume Agent", "description": "Tool to resume the AI agent for a specific browser session. Use when you need to restart agent execution after it has been paused or stopped." }, { "slug": "ANCHOR_BROWSER_RESUME_SESSION_RECORDING", "name": "Resume Session Recording", "description": "Tool to resume video recording for a specific browser session. Use when recording was previously paused and needs to be restarted." }, { "slug": "ANCHOR_BROWSER_RUN_TASK", "name": "Run Task", "description": "Tool to execute a task in a browser session with a specific or latest version. Use when you need to run an existing task with optional session reuse and configuration overrides." }, { "slug": "ANCHOR_BROWSER_RUN_TASK_BY_NAME", "name": "Run Task by Name", "description": "Tool to execute a task by its name, always using the latest version. Use when you need to run a predefined browser automation task by referencing its name." }, { "slug": "ANCHOR_BROWSER_SCREENSHOT_WEBPAGE", "name": "Screenshot Webpage", "description": "Tool to take a screenshot of a specified webpage within a session. Use when you need a visual PNG snapshot of a live page. Example: \"Capture a 1280×720 screenshot of https://example.com\"." }, { "slug": "ANCHOR_BROWSER_SCROLL_SESSION", "name": "Scroll Session", "description": "Tool to perform a scroll action at specified coordinates within a browser session. Use when you need to scroll to specific positions or simulate user scrolling behavior. Example: \"Scroll down 100 pixels from position (100, 100) in session sess_123\"." }, { "slug": "ANCHOR_BROWSER_SET_CLIPBOARD_CONTENT", "name": "Set Clipboard Content", "description": "Tool to set the content of the clipboard in a browser session. Use when you need to programmatically copy text to the clipboard for automated workflows." }, { "slug": "ANCHOR_BROWSER_SIGNAL_EVENT", "name": "Signal Event", "description": "Tool to signal a specific event to be received by other processes or sessions. Use when you need real-time coordination across browser sessions after verifying session is active." }, { "slug": "ANCHOR_BROWSER_START_BROWSER_SESSION", "name": "Start Browser Session", "description": "Tool to start a new browser session with optional customizations. Use when you need to programmatically allocate an isolated browser instance with recording, proxy, live view, and feature toggles." }, { "slug": "ANCHOR_BROWSER_TAKE_SCREENSHOT", "name": "Take Screenshot", "description": "Tool to take a screenshot of the current browser session and return it as an image. Use when you need a visual snapshot of an active browser session." }, { "slug": "ANCHOR_BROWSER_TYPE_TEXT", "name": "Type Text", "description": "Tool to type specified text with optional delay between keystrokes. Use when you need to input text into a browser session, such as filling forms or entering search queries." }, { "slug": "ANCHOR_BROWSER_UPDATE_PROFILE", "name": "Update Profile", "description": "Updates an existing browser profile with data from an active session. The profile stores cookies, local storage, and cache from the session. Requires an active (running) browser session - the session_id must reference a session that has not been terminated." }, { "slug": "ANCHOR_BROWSER_UPDATE_TASK_METADATA", "name": "Update Task Metadata", "description": "Updates task metadata (name and description). This does not affect the task code or versions. Use when you need to update task information without modifying the implementation." }, { "slug": "ANCHOR_BROWSER_UPLOAD_EXTENSION", "name": "Upload Extension", "description": "Tool to upload a new browser extension as a ZIP file for use in browser sessions. Use when you need to add custom extensions that can be attached to automation sessions. The ZIP file must contain a valid extension manifest (manifest.json). Extensions are scoped to the authenticated user and can be listed or attached to sessions later." }, { "slug": "ANCHOR_BROWSER_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to a browser session as an agent resource. Use after starting or referencing a session when you need to provide file inputs (single files or ZIP archives) for web forms or AI-driven tasks. Supports direct base64-encoded content or S3 key references from other actions." }, { "slug": "ANCHOR_BROWSER_UPLOAD_FILES_TO_SESSION", "name": "Upload Files to Session", "description": "Tool to upload files directly to a browser session for use with web forms and file inputs. Use when you need to provide file inputs to web forms during automated browser sessions." }, { "slug": "ANCHOR_BROWSER_WAIT_FOR_EVENT", "name": "Wait for Event", "description": "Blocks execution until a specific named event is signaled or the timeout expires. Used for cross-session coordination, MFA handling, and workflow synchronization. The event must first be signaled using the Signal Event action. Returns the data payload that was sent with the signal. Events are user-scoped." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "anchor_browser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Anchor Browser API Key", "type": "string", "description": "Your Anchor Browser API key. Find it in your Anchor Browser dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "angelone", "name": "AngelOne", "logo": "https://logos.composio.dev/api/angelone", "description": "AngelOne SmartAPI provides programmatic access to trading and investment services including order placement, portfolio management, and market data.", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "angelone_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "JWT Token", "type": "string", "description": "JWT token obtained from loginByPassword endpoint. Used for authenticated API calls.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "X-PrivateKey - API Key generated by SmartAPI app. Required for all requests including login.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Client Local IP", "type": "string", "description": "X-ClientLocalIP - System Local IP Address", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "Client Public IP", "type": "string", "description": "X-ClientPublicIP - Public IP Address", "required": true, "default": null }, { "name": "generic_id_3", "displayName": "MAC Address", "type": "string", "description": "X-MACAddress - System Mac Address", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "annature", "name": "Annature", "logo": "https://logos.composio.dev/api/annature", "description": "Digital document signing and workflow automation platform for Australian businesses", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "annature_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Public API Key (X-Annature-Id)", "type": "string", "description": "Your public API key obtained from https://dashboard.annature.com.au/developers", "required": true, "default": null }, { "name": "generic_token", "displayName": "Private API Key (X-Annature-Key)", "type": "string", "description": "Your private API key - keep this secure", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "announcekit", "name": "Announcekit", "logo": "https://logos.composio.dev/api/announcekit", "description": "AnnounceKit helps you create beautiful changelog and product update pages to keep your users informed", "category": "marketing", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "announcekit_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email", "type": "string", "description": "Your AnnounceKit account email address", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your AnnounceKit account password", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "anonyflow", "name": "Anonyflow", "logo": "https://logos.composio.dev/api/anonyflow", "description": "AnonyFlow offers a simple and powerful service for encryption-based data anonymization and community sharing, enabling GDPR, CCPA, and HIPAA data privacy protection compliance.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ANONYFLOW_ANONYMIZE_PACKET", "name": "Anonymize Packet", "description": "Tool to anonymize a JSON data packet with support for partial anonymization. Use when you need to conceal specific fields in structured data. If keys array is empty, the complete data packet will be anonymized." }, { "slug": "ANONYFLOW_ANONYMIZE_VALUE", "name": "Anonymize Value", "description": "Tool to anonymize a string or array of string values. Use when you need to conceal sensitive text before storage or transmission. Example: `AnonymizeValue().execute(AnonymizeValueRequest(data=['secret']))` Limitations: Only supports list of strings, not nested structures." }, { "slug": "ANONYFLOW_DEANONYMIZE_PACKET", "name": "Deanonymize Packet", "description": "Tool to deanonymize a JSON data packet using your private key. Use after receiving an anonymized packet to recover specific fields." }, { "slug": "ANONYFLOW_DEANONYMIZE_VALUE", "name": "Deanonymize Value", "description": "Tool to deanonymize one or more anonymized string values. Use when you need to recover the original plaintext values after encryption-based anonymization. Example: `DeanonymizeValue().execute(DeanonymizeValueRequest(data=[\"\"]))`" }, { "slug": "ANONYFLOW_TEST_CONNECTION", "name": "Test Connection", "description": "Tool to test the connection to the AnonyFlow API. Use when verifying that the AnonyFlow service is reachable and operational before performing anonymization tasks. Example: `TestConnection().execute(TestConnectionRequest())`" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "anonyflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AnonyFlow API Key", "type": "string", "description": "Your AnonyFlow API key, obtainable from your AnonyFlow account under the 'Get API Key' section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "anthology_student", "name": "Anthology Student", "logo": "https://logos.composio.dev/api/anthology_student", "description": "Anthology Student API for institutional campus management, student information systems, and CampusLabs integrations", "category": "education", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "anthology_student_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "CampusLabs API Base URL", "type": "string", "description": "Base URL for CampusLabs API service (e.g., https://courses.api.campuslabs.com, https://demographics.api.campuslabs.com)", "required": true, "default": "https://courses.api.campuslabs.com" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "anthology_student_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Institution Domain", "type": "string", "description": "Your institution-specific Anthology Student domain (e.g., https://yourinstitution.anthology.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Application Key", "type": "string", "description": "Your Anthology Student Application Key generated from Settings > System > Application API Keys", "required": true, "default": null }, { "name": "generic_id", "displayName": "Calling App Name", "type": "string", "description": "Name of your application (used in authentication payload)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "anthropic_administrator", "name": "Anthropic Administrator", "logo": "https://logos.composio.dev/api/anthropic_administrator", "description": "The Anthropic Admin API allows programmatic management of organizational resources, including members, workspaces, and API keys.", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ANTHROPIC_ADMINISTRATOR_CREATE_MESSAGE", "name": "Create Message", "description": "Create a message completion from Claude. Send a conversation history with user/assistant messages and receive Claude's response. Useful for: chatbots, Q&A systems, text generation, conversational AI, and any task requiring natural language understanding or generation." }, { "slug": "ANTHROPIC_ADMINISTRATOR_GET_MODEL", "name": "Get Model", "description": "Tool to retrieve details of a specific model by its ID. Use after confirming the model ID is valid." }, { "slug": "ANTHROPIC_ADMINISTRATOR_LIST_MODELS", "name": "List models", "description": "Tool to list available models. Use when you need to see which models are available before selection. Always source model IDs from this tool rather than hard-coding them; stale or outdated model IDs passed to CREATE_MESSAGE will cause a not_found_error." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "anthropic_admin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Admin API Key", "type": "string", "description": "The Admin API key used for authentication, starting with 'sk-ant-admin...'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apex27", "name": "Apex27", "logo": "https://logos.composio.dev/api/apex27", "description": "Apex 27 is a comprehensive estate agency software platform designed for real estate professionals, offering tools for property listings, client management, and office administration.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apex27_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Apex27 API Key", "type": "string", "description": "The API key generated from the Apex27 Admin Panel under the Integrations section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api_labz", "name": "API Labz", "logo": "https://logos.composio.dev/api/api_labz", "description": "API Labz offers a comprehensive suite of AI-driven APIs and tools designed to streamline workflows, automate tasks, and build innovative applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "API_LABZ_IBAN_VALIDATOR", "name": "Validate IBAN", "description": "Tool to validate International Bank Account Numbers (IBANs). Use when you need to verify an IBAN's structure before processing transactions." }, { "slug": "API_LABZ_INTEGRATE_DEAL", "name": "Integrate Deal", "description": "Tool to integrate a deal into API Labz. Use when you need to push a new or updated deal record into the system after preparing required fields." }, { "slug": "API_LABZ_LIST_TABLES", "name": "List Airtable Tables", "description": "Tool to list all Airtable tables for a given base. Use when you need to retrieve table names before interacting with a table." }, { "slug": "API_LABZ_TRELLO_AI_SEARCH_ENGINE", "name": "Trello AI Search Engine", "description": "AI-powered semantic search tool for Trello cards across boards and lists. Use this when you need to: - Find cards by natural language queries (e.g., \"bug reports from last week\") - Search across multiple Trello boards or within a specific board/list - Locate cards containing specific keywords, topics, or concepts - Discover relevant cards without knowing exact titles Returns matching cards with IDs, titles, descriptions, and direct URLs for easy access." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_labz_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Labz API Key", "type": "string", "description": "Your unique API key for authenticating requests to API Labz.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api_ninjas", "name": "API Ninjas", "logo": "https://logos.composio.dev/api/api_ninjas", "description": "API Ninjas offers over 120 unique APIs across various categories, enabling developers to build real applications with real data.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 129, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "API_NINJAS_ANALYZE_SENTIMENT", "name": "Analyze Text Sentiment", "description": "Tool to analyze the sentiment of text. Returns a numerical sentiment score from -1 to 1 and a classification (POSITIVE, WEAK_POSITIVE, NEUTRAL, WEAK_NEGATIVE, or NEGATIVE). Use when you need to determine the emotional tone or sentiment of text content." }, { "slug": "API_NINJAS_BARCODE_GENERATE", "name": "Generate Barcode Image", "description": "Tool to generate a barcode image for specified text. Use when you need a barcode image (PNG or SVG) of custom data." }, { "slug": "API_NINJAS_BIN_LOOKUP", "name": "BIN Lookup", "description": "Tool to look up bank information from a Bank Identification Number. Use after you have a BIN to fetch issuer details (brand, type, country)." }, { "slug": "API_NINJAS_BITCOIN", "name": "Get Bitcoin Price and Market Data", "description": "Tool to retrieve the latest Bitcoin price and 24-hour market data. Use when you need real-time Bitcoin metrics in USD." }, { "slug": "API_NINJAS_CALCULATE_CALORIES_BURNED", "name": "Calculate Calories Burned", "description": "Tool to calculate calories burned for an activity based on duration and body weight. Use when you need to estimate energy expenditure for physical activities." }, { "slug": "API_NINJAS_CALCULATE_MORTGAGE", "name": "Calculate Mortgage", "description": "Tool to calculate mortgage payments and breakdowns. Use when you need to determine monthly/annual payments, including mortgage, property tax, HOA, and insurance components." }, { "slug": "API_NINJAS_CALCULATE_SALES_TAX", "name": "Calculate Sales Tax", "description": "Tool to calculate sales tax for a purchase amount at a US location. Use when you need to determine the sales tax for a purchase based on ZIP code or city/state. Premium features include detailed breakdowns by city, county, and special districts." }, { "slug": "API_NINJAS_CHECK_DOMAIN", "name": "Check Domain Availability", "description": "Tool to check domain availability and retrieve registration information. Use when you need to verify if a domain is available for registration or get details about an existing domain." }, { "slug": "API_NINJAS_CHECK_IS_PUBLIC_HOLIDAY", "name": "Check If Date Is Public Holiday", "description": "Tool to check if a specific date is a public holiday in a given country. Use when you need to verify holiday status for scheduling, planning, or calendar-related tasks. Returns holiday name if applicable." }, { "slug": "API_NINJAS_CHECK_IS_WORKING_DAY", "name": "Check If Date Is Working Day", "description": "Tool to check if a date is a working day in a specific country. Returns whether the date is a working day, accounting for weekends and public holidays. Use when you need to determine if a business is likely to be open on a specific date." }, { "slug": "API_NINJAS_CHECK_SPELLING", "name": "Check Spelling", "description": "Tool to check spelling and get corrections for text. Returns the original text, corrected version, and detailed corrections with alternative suggestions." }, { "slug": "API_NINJAS_COMMODITY_PRICE", "name": "Commodity Price", "description": "Get real-time commodity prices from major exchanges (CME, NYMEX, COMEX). Prices are based on rolling futures contracts in USD. Free tier has limited commodities that rotate weekly. Use snake_case for commodity names (e.g., 'micro_gold', 'natural_gas'). Example: \"What is the current price of natural gas?\"" }, { "slug": "API_NINJAS_COMPUTE_TEXT_SIMILARITY", "name": "Compute Text Similarity", "description": "Tool to compute semantic similarity between two texts. Returns a similarity score from 0 to 1 using NLP embeddings and cosine similarity. Use when comparing text content, detecting duplicates, or measuring semantic relatedness." }, { "slug": "API_NINJAS_CONVERT_CURRENCY", "name": "Convert Currency", "description": "Convert between currencies using current exchange rates. Returns the converted amount with both source and target currency details. Use this when you need to know how much a specific amount in one currency is worth in another currency." }, { "slug": "API_NINJAS_CONVERT_UNIT", "name": "Convert Unit", "description": "Convert between measurement units across different categories. Returns converted values for all units in the same category. Use this when you need to convert measurements (length, weight, temperature, volume, area, time, speed, etc.) from one unit to another." }, { "slug": "API_NINJAS_CRYPTO_PRICE", "name": "Crypto Price", "description": "Get the current real-time price for a cryptocurrency trading pair. Returns the latest price and timestamp for symbols like BTCUSDT (Bitcoin to USD), ETHUSDT (Ethereum to USD), or crypto-to-crypto pairs like LTCBTC (Litecoin to Bitcoin). Use this to check current cryptocurrency market prices." }, { "slug": "API_NINJAS_DETECT_TEXT_LANGUAGE", "name": "Detect Text Language", "description": "Tool to detect the language of input text. Returns the ISO language code and full language name. For best accuracy, use text with 10 or more words." }, { "slug": "API_NINJAS_DISPOSABLE_EMAIL_CHECKER", "name": "Check Disposable Email", "description": "Tool to check whether an email address is from a disposable email provider. Use when validating user emails prior to sending communications." }, { "slug": "API_NINJAS_DNS_LOOKUP", "name": "DNS Lookup", "description": "Tool to retrieve DNS records for a specified domain. Use when you need DNS record details for troubleshooting or validation." }, { "slug": "API_NINJAS_EARNINGS_CALENDAR", "name": "Earnings Calendar", "description": "Fetches historical earnings data (EPS and revenue - actual vs. estimated) for a publicly traded company by stock ticker. Returns past quarterly earnings dates with actual and estimated EPS/revenue figures. Useful for tracking earnings beats/misses and analyzing company financial performance over time." }, { "slug": "API_NINJAS_EARNINGS_CALL_TRANSCRIPT", "name": "Earnings Call Transcript", "description": "Retrieve the full earnings call transcript for a publicly traded company. Use this tool when you need to analyze what was discussed during a company's quarterly earnings call, including management commentary, Q&A with analysts, financial guidance, and strategic updates. Note: This endpoint requires a premium API Ninjas subscription. Example use cases: - Analyze management sentiment during earnings calls - Extract forward guidance and projections - Review analyst questions and company responses - Compare earnings call content across quarters" }, { "slug": "API_NINJAS_ETF_INFO", "name": "ETF Info", "description": "Retrieve detailed information about an Exchange-Traded Fund (ETF) by its ticker symbol. Returns the ETF's full name, ISIN, CUSIP, and country of origin. Note: expense_ratio, aum, holdings, and num_holdings require a premium API subscription and will return null for free-tier users." }, { "slug": "API_NINJAS_EXTRACT_WEBPAGE_CONTENT", "name": "Extract Webpage Content", "description": "Tool to extract main content and metadata from a webpage. Returns URL, domain, path, page title, description, meta tags, and favicon. Use when you need to retrieve structured information from any web page." }, { "slug": "API_NINJAS_FILTER_PROFANITY", "name": "Filter Profanity from Text", "description": "Tool to detect and censor profanity in text. Returns the original text, censored version with profane words replaced by asterisks, and whether profanity was detected." }, { "slug": "API_NINJAS_FIND_EV_CHARGING_STATIONS", "name": "Find EV Charging Stations", "description": "Tool to find electric vehicle charging stations near a specified location. Use when you need to locate EV charging infrastructure by geographic coordinates." }, { "slug": "API_NINJAS_GENERATE_LOREM_IPSUM", "name": "Generate Lorem Ipsum Text", "description": "Tool to generate Lorem Ipsum placeholder text. Use when you need dummy text for design mockups, testing, or content placeholders." }, { "slug": "API_NINJAS_GENERATE_PASSWORD", "name": "Generate Secure Password", "description": "Tool to generate secure random passwords with configurable length and character types. Use when you need to create strong passwords with specific requirements for uppercase, lowercase, numbers, and special characters." }, { "slug": "API_NINJAS_GENERATE_QR_CODE", "name": "Generate QR Code", "description": "Tool to generate QR code images for encoding data. Use when you need to create scannable QR codes for URLs, text, or other data. Returns the QR code as a PNG or SVG image file." }, { "slug": "API_NINJAS_GENERATE_RANDOM_USER", "name": "Generate Random User Profiles", "description": "Tool to generate fake random user profiles with realistic data. Returns user profiles with names, addresses, contact info, job details, and technical data. Use when you need realistic test data, demo users, or placeholder profiles for development and testing purposes." }, { "slug": "API_NINJAS_GENERATE_SUDOKU", "name": "Generate Sudoku Puzzle", "description": "Tool to generate a new Sudoku puzzle with a specified difficulty level. Use when you need to create Sudoku puzzles for games or educational purposes. Returns both the puzzle grid (with empty cells) and the complete solution." }, { "slug": "API_NINJAS_GENERATE_TEXT_EMBEDDINGS", "name": "Generate Text Embeddings", "description": "Tool to encode text into vector embeddings using NLP models. Use when you need to generate semantic vectors for text comparison, search, or recommendation systems." }, { "slug": "API_NINJAS_GENERATE_USER_AGENT", "name": "Generate User Agent String", "description": "Tool to generate realistic random user agent strings with optional filters for brand, model, OS, and browser. Use when you need authentic-looking user agent strings for web scraping, testing, or browser simulation." }, { "slug": "API_NINJAS_GET_ADVICE", "name": "Get Random Life Advice", "description": "Tool to get a random piece of life advice from the API Ninjas Advice endpoint. Use when you need motivational or thought-provoking advice." }, { "slug": "API_NINJAS_GET_AIRCRAFT", "name": "Get Aircraft Information", "description": "Tool to retrieve aircraft information by manufacturer and model including specifications and performance data. Use when you need technical details about specific aircraft models or want to search aircraft by performance criteria." }, { "slug": "API_NINJAS_GET_AIRLINES", "name": "Get Airline Information", "description": "Tool to retrieve airline information by name, IATA code, or ICAO code. Use when you need details about airlines including fleet size, base location, and branding assets." }, { "slug": "API_NINJAS_GET_AIRPORTS", "name": "Get Airport Information", "description": "Tool to search for airport information by IATA code, ICAO code, name, city, country, or region. Use when you need to find airport details, coordinates, or codes. Returns up to 10 matching airports." }, { "slug": "API_NINJAS_GET_AIR_QUALITY", "name": "Get Air Quality Data", "description": "Tool to retrieve air quality index and pollutant data for a location. Use when you need current air quality information for environmental monitoring or health assessments. Query by city name or GPS coordinates." }, { "slug": "API_NINJAS_GET_ANIMALS", "name": "Get Animal Information", "description": "Tool to retrieve detailed scientific information about animal species including taxonomy, habitat, diet, and physical characteristics. Use when you need comprehensive facts about specific animals." }, { "slug": "API_NINJAS_GET_BABY_NAMES", "name": "Get Baby Names", "description": "Tool to get baby name suggestions by gender. Returns 10 baby name suggestions that can be filtered by gender (boy, girl, or neutral) and popularity. Use when you need baby name ideas or recommendations." }, { "slug": "API_NINJAS_GET_BUCKETLIST", "name": "Get Random Bucket List Idea", "description": "Tool to retrieve a random bucket list idea or activity. Use when you need inspiration for bucket list items or life goals." }, { "slug": "API_NINJAS_GET_CARS", "name": "Get Car Specifications", "description": "Tool to get car specifications including make, model, fuel type, MPG, transmission, and engine details. Use when you need detailed vehicle data filtered by manufacturer, year, fuel efficiency, or other attributes. Note: This endpoint is deprecated; consider using newer car API endpoints if available." }, { "slug": "API_NINJAS_GET_CATS", "name": "Get Cat Breed Information", "description": "Tool to retrieve information on cat breeds matching specified parameters. Use when you need to search for cat breeds by characteristics such as name, weight, life expectancy, shedding level, playfulness, grooming needs, or friendliness with family and other pets." }, { "slug": "API_NINJAS_GET_CELEBRITY", "name": "Get Celebrity Information", "description": "Tool to search for celebrity information by name or other criteria. Returns details including net worth, height, birthday, nationality, and occupation. Use when you need to find information about famous people, filter celebrities by attributes like net worth or nationality, or gather biographical data." }, { "slug": "API_NINJAS_GET_CHUCK_NORRIS_JOKE", "name": "Get Chuck Norris Joke", "description": "Tool to retrieve a random Chuck Norris joke from the API Ninjas database. Use when you need humorous Chuck Norris content." }, { "slug": "API_NINJAS_GET_CITY", "name": "Get City Information", "description": "Tool to retrieve city information by name, country, coordinates, or population filters. Use when you need geographic data about cities including coordinates, population, and capital status. At least one search parameter is required." }, { "slug": "API_NINJAS_GET_COCKTAIL", "name": "Get Cocktail Recipes", "description": "Tool to search for cocktail recipes by name or ingredients. Returns up to 10 cocktail recipes with ingredients and preparation instructions. Use when you need cocktail recipes, drink mixing instructions, or want to find drinks by specific ingredients." }, { "slug": "API_NINJAS_GET_COMPANY_LOGO", "name": "Get Company Logo", "description": "Tool to retrieve company logo images by company name or ticker symbol. Use when you need to display or download company logos." }, { "slug": "API_NINJAS_GET_COUNTER", "name": "Get and Increment Counter", "description": "Tool to get and optionally increment a persistent counter. Use when you need to track counts or maintain state across API calls." }, { "slug": "API_NINJAS_GET_COUNTRY_FLAG", "name": "Get Country Flag SVG", "description": "Tool to retrieve country flag images in SVG format. Use when you need flag URLs for display or download." }, { "slug": "API_NINJAS_GET_COUNTRY_INFO", "name": "Get Country Information", "description": "Tool to retrieve detailed country information by name, ISO code, or filtering by economic and demographic criteria. Use when you need comprehensive data about countries including population, GDP, surface area, unemployment, fertility rates, and other key statistics. Supports filtering by min/max ranges for various metrics." }, { "slug": "API_NINJAS_GET_COUNTY", "name": "Get County Information", "description": "Tool to retrieve US county information by name, ZIP code, or state. Use when you need geographic, demographic, or administrative data about US counties. Returns county name, FIPS code, location coordinates, timezone, population, and median age." }, { "slug": "API_NINJAS_GET_DAD_JOKE", "name": "Get Random Dad Jokes", "description": "Tool to retrieve random dad jokes from API Ninjas. Returns one or more dad jokes suitable for light humor. Use when you need clean, family-friendly jokes." }, { "slug": "API_NINJAS_GET_DAY_IN_HISTORY", "name": "Get Day in History Events", "description": "Tool to get historical events for a specific date. Use when you need to retrieve events that occurred on a particular day in history. Returns events for today's date if no parameters are provided." }, { "slug": "API_NINJAS_GET_DICTIONARY_DEFINITION", "name": "Get Dictionary Definition", "description": "Tool to retrieve dictionary definition for an English word. Use when you need the meaning or definition of a word." }, { "slug": "API_NINJAS_GET_DOGS", "name": "Get Dog Breed Information", "description": "Tool to get information on dog breeds matching specified parameters. Use when you need breed characteristics like temperament, size, life expectancy, or other traits." }, { "slug": "API_NINJAS_GET_EARNINGS", "name": "Get Earnings", "description": "Tool to retrieve comprehensive earnings report data for publicly traded companies. Returns financial statements including income statement, balance sheet, and cash flow data sourced from SEC filings (10-Q for Q1-Q3, 10-K for Q4). Use when you need detailed quarterly financial metrics." }, { "slug": "API_NINJAS_GET_ELECTRIC_VEHICLE_INFO", "name": "Get Electric Vehicle Info", "description": "Get electric vehicle information by make, model, year range, or electric range. Returns details including battery capacity, charging power, dimensions, and performance specs. At least one filter parameter (make, model, min_year, max_year, min_range, or max_range) is required - limit and offset alone are not sufficient." }, { "slug": "API_NINJAS_GET_EMOJI", "name": "Get Emoji Information", "description": "Tool to retrieve emoji information and images from the API Ninjas Emoji database. Use when you need emoji metadata, Unicode codes, or emoji images based on name, code, category, or subcategory. At least one search parameter (name, code, group, or subgroup) must be provided. Returns up to 30 results per request; use offset for pagination." }, { "slug": "API_NINJAS_GET_EXCHANGE_RATE", "name": "Get Exchange Rate", "description": "Get the current exchange rate for a currency pair. Returns the conversion rate from the first currency to the second currency. Use this to check current foreign exchange rates between any two currencies." }, { "slug": "API_NINJAS_GET_EXERCISES", "name": "Get Exercises", "description": "Tool to get exercise information by muscle group, type, or difficulty level. Returns up to 10 exercises that match the specified criteria. Use when you need to find exercises for specific muscle groups, workout types, or difficulty levels." }, { "slug": "API_NINJAS_GET_FACT_OF_THE_DAY", "name": "Get Fact of the Day", "description": "Tool to retrieve the fact of the day from API Ninjas. Returns the same fact for all users on a given day, with facts changing daily. Use when you need a daily interesting fact to display or share." }, { "slug": "API_NINJAS_GET_FACTS", "name": "Get Random Facts", "description": "Tool to retrieve random interesting facts from API Ninjas. Returns facts about science, literature, philosophy, and other topics. Use when you need interesting factual information to display or share." }, { "slug": "API_NINJAS_GET_GDP", "name": "Get GDP Data", "description": "Tool to get GDP data for a country. Use when you need GDP statistics including growth rate, nominal GDP, GDP per capita, and purchasing power parity data." }, { "slug": "API_NINJAS_GET_GEOCODING", "name": "Convert City to Coordinates", "description": "Tool to convert city names to geographic coordinates (forward geocoding). Returns latitude, longitude, and country code for specified city. Use when you need to find the coordinates of a location by its name." }, { "slug": "API_NINJAS_GET_HELICOPTER", "name": "Get Helicopter Information", "description": "Tool to get helicopter information by manufacturer, model, and specifications. Use when you need detailed technical specifications for helicopters including speed, range, dimensions, and load capacity. At least one search parameter (manufacturer, model, or specification filter) must be provided." }, { "slug": "API_NINJAS_GET_HISTORICAL_EVENTS", "name": "Get Historical Events", "description": "Tool to retrieve historical events by date or keywords. Use when you need information about events that happened on a specific date or related to specific topics." }, { "slug": "API_NINJAS_GET_HISTORICAL_FIGURES", "name": "Get Historical Figures", "description": "Tool to search for historical figures by name. Returns biographical information including birth/death dates, titles, awards, offices held, and family details. Use when you need information about famous people from history." }, { "slug": "API_NINJAS_GET_HOBBIES", "name": "Get Random Hobby Suggestions", "description": "Tool to get random hobby suggestions from API Ninjas. Use when you need inspiration for new hobbies or activities, optionally filtered by category." }, { "slug": "API_NINJAS_GET_HOLIDAYS", "name": "Get Holidays", "description": "Tool to retrieve holidays for a specific country and year. Use when you need information about public holidays, observances, or national holidays for planning or scheduling purposes. Supports over 230 countries worldwide." }, { "slug": "API_NINJAS_GET_HOROSCOPE", "name": "Get Daily Horoscope", "description": "Tool to get daily horoscope for a zodiac sign. Returns the horoscope text for the specified zodiac sign and date. Use when you need astrological predictions or daily horoscope information for any of the 12 zodiac signs." }, { "slug": "API_NINJAS_GET_HOSPITALS", "name": "Get Hospital Information", "description": "Tool to retrieve hospital information by name, location, or geographic coordinates. Use when you need to find hospitals in a specific area or search for a particular hospital by name." }, { "slug": "API_NINJAS_GET_INCOME_TAX", "name": "Income Tax", "description": "Get current and historical income tax bracket rates for a country by year. Returns federal tax brackets organized by filing status (e.g., single, married, head_of_household for US) or as a single bracket list for countries without filing statuses. State/provincial data may require a premium subscription. Use this tool when you need to: - Look up tax brackets and rates for a specific country and tax year - Compare tax rates across different filing statuses - Get historical tax bracket information Supported countries include US (United States) and CA (Canada)." }, { "slug": "API_NINJAS_GET_INSIDER_TRANSACTIONS", "name": "Get Insider Transactions", "description": "Tool to get insider trading transactions for publicly traded companies. Returns SEC-filed insider trading data including purchases, sales, and awards by company executives, directors, and major shareholders. Use when you need to track insider activity, analyze insider sentiment, or research specific transactions by ticker, insider name, or transaction details." }, { "slug": "API_NINJAS_GET_IP_LOOKUP", "name": "Get IP Geolocation", "description": "Tool to retrieve geolocation information for an IP address. Returns country, region, city, coordinates, ISP, and timezone data. Use when you need to identify the geographic location or ISP associated with an IPv4 or IPv6 address." }, { "slug": "API_NINJAS_GET_JOKE_OF_THE_DAY", "name": "Get Joke of the Day", "description": "Tool to retrieve the joke of the day from API Ninjas. Returns the same joke for all users on a given day, with jokes changing daily. Use when you need a daily joke to display or share." }, { "slug": "API_NINJAS_GET_JOKES", "name": "Get Random Jokes", "description": "Tool to retrieve random jokes from API Ninjas. Returns one or more jokes suitable for entertainment. Use when you need general humor content." }, { "slug": "API_NINJAS_GET_MOTORCYCLES", "name": "Get Motorcycle Specifications", "description": "Tool to get detailed motorcycle specifications by make, model, and year. Use when you need technical data about specific motorcycle models including engine specs, dimensions, transmission, suspension, and performance data." }, { "slug": "API_NINJAS_GET_MUTUAL_FUND", "name": "Get Mutual Fund Info", "description": "Tool to get mutual fund information by ticker. Returns the fund's name, ISIN, CUSIP, and country. Note: price, expense_ratio, aum, num_holdings, and holdings require a premium API subscription and will return null for free-tier users." }, { "slug": "API_NINJAS_GET_MX_RECORDS", "name": "Get MX Records", "description": "Tool to retrieve MX (Mail Exchange) records for a specified domain. Use when you need to identify mail servers responsible for accepting email for a domain." }, { "slug": "API_NINJAS_GET_PLANETS", "name": "Get Planet Information", "description": "Tool to retrieve detailed information about planets and exoplanets including mass, radius, orbital period, temperature, and host star data. Use when you need astronomical data about planets in the known universe. At least one parameter (other than offset) must be set." }, { "slug": "API_NINJAS_GET_POPULATION", "name": "Get Population Data", "description": "Tool to get population data for a country. Use when you need historical and forecasted population statistics including yearly changes, migration, demographics, and urban population metrics." }, { "slug": "API_NINJAS_GET_POSTAL_CODE", "name": "Get Postal Code Location Info", "description": "Tool to retrieve location information for Canadian postal codes. Returns city, province, coordinates, area code, and timezone data. Use when you need to find location details for a postal code or search by city/province." }, { "slug": "API_NINJAS_GET_PROPERTY_TAX", "name": "Get Property Tax Rates", "description": "Tool to get property tax rates by city, county, or ZIP code. Use when you need effective property tax rate statistics for a specific location." }, { "slug": "API_NINJAS_GET_PUBLIC_HOLIDAYS", "name": "Get Public Holidays", "description": "Tool to retrieve official public holidays for a specific country and year. Use when you need information about federal and regional public holidays for planning, scheduling, or calendar-related tasks. Supports calendar years from 1980 to 2050." }, { "slug": "API_NINJAS_GET_QUOTE_OF_THE_DAY", "name": "Get Quote of the Day", "description": "Tool to retrieve the quote of the day from API Ninjas. Returns the same quote for all users on a given day, with quotes changing daily. Use when you need an inspirational or thought-provoking daily quote to display or share." }, { "slug": "API_NINJAS_GET_QUOTES", "name": "Get Random Quotes", "description": "Tool to get random quotes from famous people, filtered by category or author. Use when you need inspirational quotes, philosophical wisdom, or quotes for content creation." }, { "slug": "API_NINJAS_GET_RANDOM_IMAGE", "name": "Get Random Image", "description": "Tool to get a random image by category from API Ninjas. Use when you need random image content for display or download." }, { "slug": "API_NINJAS_GET_RANDOM_QUOTES", "name": "Get Random Quotes", "description": "Tool to retrieve random quotes from API Ninjas. Filter by categories, author, or work title. Use when you need inspirational quotes, wisdom, or literary references for content or motivation." }, { "slug": "API_NINJAS_GET_RANDOM_WORD", "name": "Get Random Word", "description": "Tool to get a random English word from the API Ninjas Random Word endpoint. Use when you need random words for games, education, or creative projects. Optionally filter by word type (noun, verb, adjective, adverb)." }, { "slug": "API_NINJAS_GET_RECIPE", "name": "Get Recipe", "description": "Tool to search for recipes by title or ingredients from a database of over 200,000 recipes. Returns up to 10 recipes with ingredients, instructions, servings, and optional nutrition data. Use when you need recipe ideas, cooking instructions, or want to find recipes by specific ingredients." }, { "slug": "API_NINJAS_GET_REVERSE_GEOCODING", "name": "Convert Coordinates to Location", "description": "Tool to convert geographic coordinates to location information (reverse geocoding). Returns location name, country code, and state/region for specified coordinates. Use when you need to find address or place information from latitude and longitude." }, { "slug": "API_NINJAS_GET_RHYMES", "name": "Get Rhyming Words", "description": "Tool to get words that rhyme with a given word. Use when you need to find rhyming words for creative writing, poetry, or songwriting." }, { "slug": "API_NINJAS_GET_RIDDLES", "name": "Get Random Riddles", "description": "Tool to retrieve random riddles with answers from API Ninjas. Returns one or more riddles suitable for entertainment and brain teasers. Use when you need riddles for games, quizzes, or entertainment purposes." }, { "slug": "API_NINJAS_GET_SALES_TAX", "name": "Get Sales Tax Rates", "description": "Tool to get sales tax rates by ZIP code or city and state. Use when you need current sales tax rate information for a specific US location. Either provide zip_code alone OR city+state together." }, { "slug": "API_NINJAS_GET_SEC_FILING", "name": "Get SEC Filing", "description": "Tool to retrieve SEC filing information for publicly traded companies. Returns a list of SEC filings including the filing date, form type, and direct URL to the filing document. Use when you need to access company regulatory filings like 10-K annual reports, 10-Q quarterly reports, 8-K current reports, or other SEC documents." }, { "slug": "API_NINJAS_GET_SP500_CONSTITUENTS", "name": "Get S&P 500 Constituents", "description": "Tool to retrieve current S&P 500 index constituents with filtering by ticker, name, sector, or date added. Use when you need information about companies in the S&P 500 index. Returns company details including ticker symbols, names, sectors, CIK numbers, sub-industries, headquarters locations, and dates added to the index." }, { "slug": "API_NINJAS_GET_STARS", "name": "Get Star Information", "description": "Tool to retrieve detailed information about stars including name, constellation, coordinates, magnitude, distance, and spectral classification. Use when you need astronomical data about stars in the known universe. At least one parameter (other than offset) must be provided." }, { "slug": "API_NINJAS_GET_STOCK_EXCHANGE", "name": "Get Stock Exchange Information", "description": "Tool to retrieve stock exchange information by Market Identifier Code (MIC), name, city, or country. Use when you need details about stock exchanges including market data, location, and operational hours." }, { "slug": "API_NINJAS_GET_STOCK_PRICE", "name": "Get Stock Price", "description": "Tool to get current stock price data for any publicly traded company or index. Use when you need real-time (premium) or 15-minute delayed (free) stock prices, trading volume, and market data by ticker symbol." }, { "slug": "API_NINJAS_GET_SWIFT_CODE", "name": "Get SWIFT Code", "description": "Tool to get bank information from SWIFT code or search by bank name, city, or country. Use when you need to look up bank details using a SWIFT/BIC code or search for banks by various criteria. At least one parameter must be provided." }, { "slug": "API_NINJAS_GET_THESAURUS", "name": "Get Thesaurus", "description": "Tool to get synonyms and antonyms for an English word. Use when you need to find alternative words with similar or opposite meanings." }, { "slug": "API_NINJAS_GET_TICKER", "name": "Get Ticker", "description": "Tool to retrieve comprehensive company profile information for publicly traded companies by stock ticker symbol. Returns executive details, financial metrics, identifiers (CIK, CUSIP, ISIN), exchange, contact information, stock price, market cap, and latest earnings data. Use when you need detailed company information for a specific ticker." }, { "slug": "API_NINJAS_GET_TIMEZONE", "name": "Get Timezone Information", "description": "Tool to get timezone information for a location including UTC offset, local time, and timezone name. Use when you need timezone details for geographic locations or IANA timezone names. FREE tier supports timezone parameter; city, state, country, lat, and lon parameters require premium subscription." }, { "slug": "API_NINJAS_GET_TRIVIA", "name": "Get Trivia Questions", "description": "Tool to retrieve trivia questions by category from API Ninjas. Returns trivia questions with answers from various categories like music, sports, science, and more. Use when you need trivia questions for games, quizzes, or entertainment purposes." }, { "slug": "API_NINJAS_GET_TRIVIA_OF_THE_DAY", "name": "Get Trivia of the Day", "description": "Tool to retrieve the trivia question of the day from API Ninjas. Returns the same trivia question for all users on a given day, with questions changing daily. Use when you need a daily trivia question to display or share." }, { "slug": "API_NINJAS_GET_UNEMPLOYMENT", "name": "Get Unemployment Rate", "description": "Tool to get unemployment rate data for countries. Use when you need historical or current unemployment statistics by country or year." }, { "slug": "API_NINJAS_GET_UNIVERSITY", "name": "Get University Information", "description": "Tool to retrieve university information by name or country. Use when you need details about universities in the USA or Canada including location, contact info, enrollment, tuition, and degree programs offered. At least one search parameter (name or country) is required." }, { "slug": "API_NINJAS_GET_URL_LOOKUP", "name": "Get URL Location Info", "description": "Tool to get location information for a URL domain. Returns geolocation data including country, region, city, coordinates, ISP, and timezone. Use when you need to identify the geographic location or hosting provider of a URL." }, { "slug": "API_NINJAS_GET_WEATHER", "name": "Get Current Weather", "description": "Tool to retrieve current weather data for a location. Use when you need real-time weather information including temperature, humidity, wind conditions, and sunrise/sunset times. Query by city name or GPS coordinates." }, { "slug": "API_NINJAS_GET_WEATHER_FORECAST", "name": "Get Weather Forecast", "description": "Tool to retrieve 5-day weather forecast in 3-hour intervals for a location. Use when you need future weather predictions including temperature, humidity, wind, and sunrise/sunset times. Query by GPS coordinates or city name." }, { "slug": "API_NINJAS_GET_WHOIS", "name": "Get WHOIS Information", "description": "Tool to get WHOIS domain registration information including registrar, creation date, and expiration date. Use when you need details about domain registration." }, { "slug": "API_NINJAS_GET_WORKING_DAYS", "name": "Get Working Days", "description": "Tool to get working days for a specific country and time period. Returns the count and list of working days, accounting for weekends and public holidays. Use when you need to calculate business days, plan schedules, or determine operational days for a country." }, { "slug": "API_NINJAS_GET_WORLDTIME", "name": "Get World Time", "description": "Tool to get current date and time for a location with detailed date/time components. Returns timezone, datetime, date, year, month, day, hour, minute, second, and day of the week. Use when you need detailed time information for a specific location or timezone." }, { "slug": "API_NINJAS_GET_ZIPCODE", "name": "Get US Zipcode Location Info", "description": "Tool to retrieve location information for US zip codes. Returns city, state, county, coordinates, timezone, and area codes. Use when you need to find location details for a zip code or search by city/state." }, { "slug": "API_NINJAS_IBAN_LOOKUP", "name": "IBAN Lookup", "description": "Tool to look up and validate an International Bank Account Number (IBAN). Use when you have an IBAN and need to retrieve its components (country, bank code, account number, etc.) and its validity." }, { "slug": "API_NINJAS_INCOME_TAX_CALCULATOR", "name": "Income Tax Calculator", "description": "Tool to calculate income taxes for US and Canada. Use when you need detailed breakdown of federal, state/provincial, and FICA taxes. Country and region codes must be correct." }, { "slug": "API_NINJAS_INFLATION", "name": "Get Inflation Data", "description": "Tool to get current inflation data for a country. Use when you need latest CPI or HICP monthly and annual inflation rates." }, { "slug": "API_NINJAS_INTEREST_RATE", "name": "Interest Rate", "description": "Tool to get current interest rates for central banks and benchmarks. Use when you need to fetch the latest interest rate for a specific country or all available countries." }, { "slug": "API_NINJAS_LIST_STOCK_TICKERS", "name": "List Stock Tickers", "description": "Tool to retrieve a paginated list of all available stock ticker symbols and company names. Use when you need to browse available stocks or find ticker symbols for specific companies. Returns company tickers and names with pagination support." }, { "slug": "API_NINJAS_LOOKUP_VIN", "name": "VIN Lookup", "description": "Tool to decode Vehicle Identification Number (VIN) and retrieve vehicle information. Returns make, model, year, manufacturing country, and VIN components. Use when you need to identify vehicle specifications from a 17-character VIN." }, { "slug": "API_NINJAS_MARKET_CAP", "name": "Market Cap", "description": "Tool to get real-time market cap data for a company. Use when you need up-to-date market capitalization by specifying the stock ticker. Example: \"What is the market cap of NVDA?\"" }, { "slug": "API_NINJAS_MORTGAGE_RATE", "name": "Mortgage Rate", "description": "Tool to get current and historical mortgage rates. Use when you need weekly fixed-rate mortgage data, optionally for specific dates or date ranges." }, { "slug": "API_NINJAS_NUTRITION", "name": "Extract Nutrition Information", "description": "Tool to extract nutrition information from text query. Use when you need to parse food-related text (e.g., recipes, menus) to calculate corresponding nutrition data." }, { "slug": "API_NINJAS_SCRAPE_WEBSITE", "name": "Scrape Website Content", "description": "Tool to scrape HTML content from a URL using the API Ninjas Webscraper endpoint. Use when you need to retrieve website content programmatically without dealing with browser automation." }, { "slug": "API_NINJAS_SOLVE_SUDOKU", "name": "Solve Sudoku Puzzle", "description": "Tool to solve a Sudoku puzzle using the API Ninjas Sudoku Solver. Takes a partially filled puzzle grid and returns the complete solution if one exists. Use when you need to solve standard or custom-sized Sudoku puzzles (2x2, 3x3, or 4x4 box dimensions)." }, { "slug": "API_NINJAS_VALIDATE_EMAIL", "name": "Validate Email", "description": "Tool to validate email address format and check deliverability. Returns validity status, domain info, MX records, disposability check, and email role categorization. Use when you need to verify if an email address is valid and deliverable before sending communications." }, { "slug": "API_NINJAS_VALIDATE_EU_VAT", "name": "Validate EU VAT", "description": "Tool to retrieve and validate EU VAT (Value Added Tax) rates by country code. Use when you need current or historical VAT rates for EU member states, with optional filtering by VAT type, date range, or specific categories." }, { "slug": "API_NINJAS_VALIDATE_PHONE", "name": "Validate Phone Number", "description": "Tool to validate and format phone numbers. Returns validity status, country code, carrier information, and normalized E.164 format. Use when you need to verify phone number validity or retrieve phone metadata." }, { "slug": "API_NINJAS_VALIDATE_ROUTING_NUMBER", "name": "Validate Routing Number", "description": "Tool to validate and retrieve bank information from a routing number. Use when you need to verify a 9-digit routing number and get associated bank details including name, location, and contact information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_ninjas_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key associated with your API Ninjas account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api_sports", "name": "API-Sports", "logo": "https://logos.composio.dev/api/api_sports", "description": "API-Sports provides comprehensive sports data APIs covering over 2,000 competitions with more than 15 years of historical data, offering real-time updates and easy integration for developers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 67, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "API_SPORTS_GET_AFL_GAMES", "name": "Get AFL Games", "description": "Tool to retrieve AFL games and matches. Use when filtering games by id, date, league, season, team, or timezone to get upcoming, past, or live matches." }, { "slug": "API_SPORTS_GET_AFL_GAMES_STATISTICS_PLAYERS", "name": "Get AFL Game Player Statistics", "description": "Tool to retrieve player statistics from AFL (Australian Football League) game(s). Use when you need detailed player performance data for specific AFL games by game ID, player ID, or season." }, { "slug": "API_SPORTS_GET_AFL_SEASONS", "name": "Get AFL Seasons", "description": "Tool to get the list of available seasons for AFL. All seasons are 4-digit keys (e.g., 2018 for 2018-2019 season). Use when you need season filters for AFL endpoints." }, { "slug": "API_SPORTS_GET_AFL_STANDINGS", "name": "Get AFL Standings", "description": "Tool to retrieve AFL standings for a league. Use when needing current team rankings, points, and positions for a specific season." }, { "slug": "API_SPORTS_GET_BASEBALL_GAMES_H2H", "name": "Get Baseball Games Head-to-Head", "description": "Tool to get head-to-head baseball games between two teams. Use when comparing the match history between two specific baseball teams." }, { "slug": "API_SPORTS_GET_BASKETBALL_BETS", "name": "Get Basketball Bets", "description": "Tool to get all available basketball bet types. Use when you need to retrieve available betting options for basketball games." }, { "slug": "API_SPORTS_GET_BASKETBALL_BOOKMAKERS", "name": "Get Basketball Bookmakers", "description": "Tool to get all available basketball bookmakers. Use when you need to retrieve available bookmakers for basketball odds and betting data." }, { "slug": "API_SPORTS_GET_BASKETBALL_STATISTICS", "name": "Get basketball statistics", "description": "Tool to get basketball statistics for a team in a given league and season. Use when you need detailed basketball team statistics including games played, wins, losses, points, and other performance metrics." }, { "slug": "API_SPORTS_GET_CIRCUITS", "name": "Get Formula 1 Circuits", "description": "Tool to get the list of available Formula 1 circuits. Use when searching for circuits by id, competition, name, or search term." }, { "slug": "API_SPORTS_GET_COACHS", "name": "Get Coaches", "description": "Tool to fetch coaches and their career history. Use when you need coach info by ID, team filter, or name search." }, { "slug": "API_SPORTS_GET_COUNTRIES", "name": "Get Countries", "description": "Tool to fetch available countries for league queries. Use when filtering by name, code, or search string before retrieving leagues." }, { "slug": "API_SPORTS_GET_FIGHTERS_RECORDS", "name": "Get Fighters Records", "description": "Tool to get fighter career statistics. Use when you need a fighter's complete record including wins, losses, draws, knockouts, and submissions." }, { "slug": "API_SPORTS_GET_FIXTURES", "name": "Get Fixtures", "description": "Tool to retrieve football fixtures/matches. Use when filtering fixtures by id, date, league, season, team, or date ranges to get upcoming or past matches. Always provide at least one of season, date, team, or league to avoid oversized payloads. Never guess IDs — obtain valid league, season, team, or fixture IDs before calling this tool." }, { "slug": "API_SPORTS_GET_FIXTURES_EVENTS", "name": "Get fixtures events", "description": "Tool to get events (goals, cards, substitutions, VAR, etc.) from a fixture. Use when you need detailed event data after confirming the fixture ID." }, { "slug": "API_SPORTS_GET_FIXTURES_HEADTOHEAD", "name": "Get Head-to-Head Fixtures", "description": "Tool to get head-to-head fixtures between two teams. Use after determining team IDs to compare their direct match history." }, { "slug": "API_SPORTS_GET_FIXTURES_LINEUPS", "name": "Get Fixture Lineups", "description": "Tool to retrieve starting XI and substitutes for a fixture. Use after confirming fixture ID; optionally filter by team, player, or section (startXI/substitutes). Lineups appear ~20-40 minutes before kickoff for supported competitions." }, { "slug": "API_SPORTS_GET_FIXTURES_PLAYERS", "name": "Get fixtures players", "description": "Tool to get player statistics from a fixture. Use when you need detailed per-player stats for a specific match. Optionally filter by team." }, { "slug": "API_SPORTS_GET_FIXTURES_ROUNDS", "name": "Get Fixtures Rounds", "description": "Tool to get the rounds for a league or cup. Use after confirming league and season to retrieve available round identifiers (optionally with dates) for filtering fixtures." }, { "slug": "API_SPORTS_GET_FIXTURES_STATISTICS", "name": "Get fixture statistics", "description": "Tool to get statistics for a fixture. Use when you need detailed match stats (shots, fouls, possession, cards, passes, etc.), optionally filtered by team, statistic type, or including halftime data." }, { "slug": "API_SPORTS_GET_FORMULA1_COMPETITIONS", "name": "Get Formula 1 Competitions", "description": "Tool to retrieve Formula 1 competitions (Grand Prix races). Use when filtering competitions by id, name, country, city, or search term." }, { "slug": "API_SPORTS_GET_FORMULA1_RACES", "name": "Get Formula 1 Races", "description": "Tool to retrieve Formula 1 race information for a given season. Use when you need to get race schedules, results, or details for a specific Formula 1 competition season." }, { "slug": "API_SPORTS_GET_FORMULA1_RANKINGS_STARTINGGRID", "name": "Get Formula 1 Starting Grid", "description": "Tool to retrieve the starting grid for a Formula 1 race. Use when you need to get the qualifying positions and times for drivers before a race starts." }, { "slug": "API_SPORTS_GET_GAMES_EVENTS", "name": "Get games events", "description": "Tool to get events (goals, penalties, etc.) from a game. Use when you need detailed event data after confirming the game ID." }, { "slug": "API_SPORTS_GET_GAMES_QUARTERS", "name": "Get AFL Games Quarters", "description": "Tool to retrieve AFL game quarter scores. Use when you need detailed scoring breakdown by quarter for one or multiple AFL games." }, { "slug": "API_SPORTS_GET_GAMES_STATISTICS_TEAMS", "name": "Get game statistics by teams", "description": "Tool to get team statistics from a game by ID. Use when you need detailed team stats (assists, blocks, field goals, rebounds, steals, turnovers, etc.) for a specific game or multiple games." }, { "slug": "API_SPORTS_GET_INJURIES", "name": "Get Injuries", "description": "Tool to get injured or suspended players. Use when you need a list of sidelined players filtered by league, season, fixture, team, player, date, ids, or timezone." }, { "slug": "API_SPORTS_GET_LEAGUES", "name": "Get Leagues", "description": "Tool to retrieve leagues and cups. Use when filtering competitions by id, name, country, code, season, team, type, current, search, or last." }, { "slug": "API_SPORTS_GET_LEAGUES_SEASONS", "name": "Get League Seasons", "description": "Tool to get the list of available seasons for all leagues. Use when you need season filters for other league endpoints." }, { "slug": "API_SPORTS_GET_MMA_CATEGORIES", "name": "Get MMA Categories", "description": "Tool to fetch the list of all available MMA categories. Use when you need to get weight class categories (e.g., 'Flyweight', 'Lightweight', 'Heavyweight') for MMA fights." }, { "slug": "API_SPORTS_GET_MMA_FIGHTERS", "name": "Get MMA Fighters", "description": "Tool to fetch MMA fighters data. Use when you need to get fighter information by id, team, name, category, or search term." }, { "slug": "API_SPORTS_GET_MMA_FIGHTS", "name": "Get MMA Fights", "description": "Tool to retrieve the list of MMA fights according to given parameters. Use when filtering fights by id, date, season, fighter, or weight category to get upcoming or past MMA fight details." }, { "slug": "API_SPORTS_GET_MMA_FIGHTS_RESULTS", "name": "Get MMA Fight Results", "description": "Tool to retrieve results from one or several MMA fights. Use when you need outcome details like victory method, round, time, knockout type, or judge scores for specific fights by id(s) or date." }, { "slug": "API_SPORTS_GET_MMA_FIGHTS_STATISTICS_FIGHTERS", "name": "Get MMA Fighter Statistics", "description": "Tool to get fighter statistics from MMA fights. Use when you need detailed strike, takedown, and grappling statistics for fighters in specific fights or on a specific date." }, { "slug": "API_SPORTS_GET_NBA_GAMES_STATISTICS", "name": "Get NBA game statistics", "description": "Tool to get NBA game statistics including player stats for both teams. Use when you need detailed statistics for a specific NBA game such as points, rebounds, assists, field goals, free throws, and other performance metrics." }, { "slug": "API_SPORTS_GET_NFL_STANDINGS_CONFERENCES", "name": "Get NFL Standings Conferences", "description": "Tool to retrieve the list of available conferences for the NFL to be used in the standings endpoint. Use when you need to know which conferences are available for a specific NFL league and season before fetching detailed standings data." }, { "slug": "API_SPORTS_GET_ODDS", "name": "Get Odds", "description": "Tool to fetch pre-match odds. Use when you need odds filterable by fixture, league, season, date, timezone, bookmaker, bet, or to navigate pages." }, { "slug": "API_SPORTS_GET_ODDS_BETS", "name": "Get Odds Bets", "description": "Tool to get all available pre-match bet types. Use when filtering by bet ID or searching bet names before fetching odds." }, { "slug": "API_SPORTS_GET_ODDS_BOOKMAKERS", "name": "Get Odds Bookmakers", "description": "Tool to list all available pre-match bookmakers. Use when you need to discover or filter bookmakers before fetching odds." }, { "slug": "API_SPORTS_GET_ODDS_LIVE", "name": "Get In-Play Odds", "description": "Tool to fetch in-play odds for fixtures in progress. Use during live matches to get in-play odds." }, { "slug": "API_SPORTS_GET_ODDS_LIVE_BETS", "name": "Get Live Odds Bets", "description": "Tool to fetch all available bet types for in-play odds. Use when you need to retrieve bet IDs or names (optionally filtering by id or search) before fetching live odds." }, { "slug": "API_SPORTS_GET_ODDS_MAPPING", "name": "Get Odds Mapping", "description": "Tool to get the list of available fixture IDs for the odds endpoint. Use when you need to discover which fixtures have odds data available." }, { "slug": "API_SPORTS_GET_PLAYERS", "name": "Get Players", "description": "Tool to get player statistics. Use when fetching players by id, team, league, season, search, or pagination. Returned player IDs are used as inputs to downstream tools such as fixtures statistics, predictions, and odds." }, { "slug": "API_SPORTS_GET_PLAYERS_PROFILES", "name": "Get Players Profiles", "description": "Tool to get the list of all available players. Use when you need player profiles optionally filtered by ID, name search, or page." }, { "slug": "API_SPORTS_GET_PLAYERS_SEASONS", "name": "Get Players Seasons", "description": "Tool to list all available seasons for player statistics. Use when building a player statistics query, optionally filtering by a specific player id." }, { "slug": "API_SPORTS_GET_PLAYERS_SQUADS", "name": "Get Players Squads", "description": "Tool to get player squads. Use when fetching the current squad of a team (with team ID) or finding which teams a player belongs to (with player ID)." }, { "slug": "API_SPORTS_GET_PLAYERS_STATISTICS", "name": "Get player statistics", "description": "Tool to get player statistics for a specific basketball game. Use when you need detailed performance stats like points, rebounds, assists, field goals, three pointers, free throws, etc. Requires at least a game ID to retrieve player statistics." }, { "slug": "API_SPORTS_GET_PLAYERS_TEAMS", "name": "Get Players Teams", "description": "Tool to get the list of teams and seasons in which a player played during his career. Use after confirming the player ID to retrieve club history." }, { "slug": "API_SPORTS_GET_PLAYERS_TOP_ASSISTS", "name": "Get Players Top Assists", "description": "Tool to get the 20 best players (top assists) for a league or cup. Use after confirming league and season." }, { "slug": "API_SPORTS_GET_PLAYERS_TOP_RED_CARDS", "name": "Get Players Top Red Cards", "description": "Tool to get the 20 players with the most red cards for a league or cup. Use after confirming league and season." }, { "slug": "API_SPORTS_GET_PLAYERS_TOP_SCORERS", "name": "Get Players Top Scorers", "description": "Tool to get the 20 best players (top scorers) for a league or cup. Use after confirming league and season." }, { "slug": "API_SPORTS_GET_PLAYERS_TOP_YELLOW_CARDS", "name": "Get Players Top Yellow Cards", "description": "Tool to get the 20 players with the most yellow cards for a league or cup. Use after confirming league and season." }, { "slug": "API_SPORTS_GET_PREDICTIONS", "name": "Get Predictions", "description": "Tool to get predictions about a fixture. Use when you need calculated predictions for a given fixture ID. Predictions may not be available for all fixtures; empty or null responses indicate no predictions exist, not an error." }, { "slug": "API_SPORTS_GET_RANKINGS_DRIVERS", "name": "Get Formula 1 Driver Rankings", "description": "Tool to retrieve Formula 1 driver rankings for a season. Use when querying driver standings, championship positions, or filtering by specific driver or team." }, { "slug": "API_SPORTS_GET_RANKINGS_FASTEST_LAPS", "name": "Get Fastest Laps Rankings", "description": "Tool to get the ranking of the fastest laps for a Formula 1 race. Use when retrieving fastest lap times, speeds, and rankings by race, team, or driver." }, { "slug": "API_SPORTS_GET_RANKINGS_RACES", "name": "Get Race Rankings", "description": "Tool to retrieve rankings for a specific Formula 1 race. Use when you need to get finishing positions, lap times, and pit stop information for drivers in a race." }, { "slug": "API_SPORTS_GET_RANKINGS_TEAMS", "name": "Get Formula 1 Team Rankings", "description": "Tool to retrieve Formula 1 team rankings for a specific season. Use when you need to get championship standings showing teams ordered by points." }, { "slug": "API_SPORTS_GET_SIDELINED", "name": "Get Sidelined", "description": "Tool to get sidelined information (injuries, suspensions, etc.). Use when you need current sidelined records filtered by player or coach." }, { "slug": "API_SPORTS_GET_STANDINGS_DIVISIONS", "name": "Get Standings Divisions", "description": "Tool to retrieve the list of available divisions for an NFL competition to be used in the standings endpoint. Use when you need to know which divisions are available for a specific league and season before fetching detailed standings data." }, { "slug": "API_SPORTS_GET_STANDINGS_GROUPS", "name": "Get Standings Groups", "description": "Tool to retrieve the list of available groups for a league to be used in the standings endpoint. Use when querying standings groups for a specific league and season before fetching detailed standings data." }, { "slug": "API_SPORTS_GET_STANDINGS_STAGES", "name": "Get Standings Stages", "description": "Tool to retrieve the list of available stages for a league to be used in the standings endpoint. Use when you need to know which stages or groups are available for a specific league and season before fetching standings data." }, { "slug": "API_SPORTS_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve available teams. Use when filtering teams by id, name, league, season, country, code, venue, or search before fetching detailed team data. Team IDs are not inferrable from names; use `name` or `search` to look up and confirm the correct `id` before passing it to downstream requests." }, { "slug": "API_SPORTS_GET_TEAMS_SEASONS", "name": "Get Team Seasons", "description": "Tool to get the list of seasons available for a team. Use when you need to know which seasons a specific team has data for." }, { "slug": "API_SPORTS_GET_TEAMS_STATISTICS", "name": "Get team statistics", "description": "Tool to get detailed statistics of a team for a given league and season. Use after confirming league, season, and team ID." }, { "slug": "API_SPORTS_GET_TIMEZONE", "name": "Get Timezone", "description": "Tool to fetch the complete list of available timezones for fixture queries. Use when you need valid timezone identifiers (e.g., 'Europe/London') before calling fixtures endpoints." }, { "slug": "API_SPORTS_GET_TRANSFERS", "name": "Get Transfers", "description": "Tool to get all available transfers for players and teams. Use when you need transfer history filtered by player or team." }, { "slug": "API_SPORTS_GET_TROPHIES", "name": "Get Trophies", "description": "Tool to get trophies for a player or coach. Use when you need to list honors filtered by player(s) or coach(es)." }, { "slug": "API_SPORTS_GET_VENUES", "name": "Get Venues", "description": "Tool to retrieve available venues. Use when filtering venues by id, name, city, country, or search before fetching detailed venue data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_sports_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API-Sports API Key", "type": "string", "description": "Your unique API key provided by API-Sports.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api_bible", "name": "API.Bible", "logo": "https://logos.composio.dev/api/api_bible", "description": "API.Bible allows developers to integrate Scripture content into their applications or websites for non-commercial purposes.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "API_BIBLE_GET_ALL_BOOKS", "name": "Get All Books", "description": "Retrieve all books for a specific Bible version. Requires a valid Bible version ID (obtainable from Get Supported Versions). Returns a list of books with their IDs, names, and abbreviations in the Bible's native language." }, { "slug": "API_BIBLE_GET_AUDIO_BIBLE", "name": "Get Audio Bible by ID", "description": "Tool to retrieve details of a specific audio Bible by its ID. Use when you need metadata about an audio Bible version." }, { "slug": "API_BIBLE_GET_AUDIO_BOOK", "name": "Get Audio Book", "description": "Tool to retrieve a single audio Book object for a given audio Bible ID and book ID. Use when you need metadata about a specific audio book." }, { "slug": "API_BIBLE_GET_AUDIO_CHAPTER", "name": "Get Audio Chapter", "description": "Tool to retrieve a single audio chapter with mp3 resource URL. Use when you need to fetch audio content for a specific chapter of an audio Bible. The resourceUrl provided in the response is temporary and expires after a certain time (indicated by expiresAt)." }, { "slug": "API_BIBLE_GET_BIBLE", "name": "Get Bible by ID", "description": "Tool to retrieve details of a specific Bible version by its ID. Use when you need full metadata after listing versions. Example prompt: 'Get metadata for bibleId de4e12af7f28f599-01'." }, { "slug": "API_BIBLE_GET_BOOK", "name": "Get Book", "description": "Tool to retrieve a single Book object for a given Bible version and book ID. Use when you need details about a specific book, optionally including its chapters." }, { "slug": "API_BIBLE_GET_CHAPTER", "name": "Get Chapter", "description": "Retrieve a complete chapter with all verses from a Bible version. Use when you need to fetch an entire chapter's content including all verses, navigation to adjacent chapters, and copyright information. First use Get Supported Versions to obtain valid Bible IDs." }, { "slug": "API_BIBLE_GET_PASSAGE", "name": "Get Passage", "description": "Retrieve a Bible passage by ID. A passage can represent a chapter, verse, or range of verses. Use when you need to fetch specific scripture content with configurable display options." }, { "slug": "API_BIBLE_GET_SECTION", "name": "Get Section", "description": "Retrieve detailed content for a Bible section by ID. A section represents a thematic grouping of verses (e.g., 'The Genealogy of Jesus', 'The Sermon on the Mount'). First use Get Sections to obtain section IDs for a specific book, then use this action to fetch the full content with configurable display options." }, { "slug": "API_BIBLE_GET_SECTIONS", "name": "Get Sections", "description": "Tool to retrieve a list of sections for a specific book in a Bible version. Use after obtaining the Bible and book IDs to view sectional breakdown." }, { "slug": "API_BIBLE_GET_SUPPORTED_VERSIONS", "name": "Get Supported Bible Versions", "description": "Retrieve a list of available Bible versions (translations) from API.Bible. Use this tool to: - List all available Bible translations before searching for verses - Find Bible versions by language (e.g., English, Spanish, German) - Search for specific translations by name or abbreviation - Get the Bible version ID needed for other API.Bible operations The returned version IDs can be used with other API.Bible tools to access specific Bible content like books, chapters, verses, and sections." }, { "slug": "API_BIBLE_GET_VERSE", "name": "Get Verse", "description": "Retrieve a specific Bible verse by ID. Use this action when you need to fetch the content of a single verse from a specific Bible version. First use Get Supported Versions to obtain a valid bibleId, then provide the verse ID in format BOOK.CHAPTER.VERSE (e.g., 'JHN.3.16' for John 3:16). Configurable display options allow control over footnotes, titles, and verse numbering." }, { "slug": "API_BIBLE_LIST_AUDIO_BIBLES", "name": "List Audio Bibles", "description": "Tool to retrieve an array of audio Bible objects authorized for the current API Key. Use when you need to discover available audio Bible versions, filter by language, name, or abbreviation." }, { "slug": "API_BIBLE_LIST_AUDIO_BOOKS", "name": "List Audio Books", "description": "Tool to retrieve all books for a specific audio Bible version. Use when you need to list available audio books for a given audio Bible ID. Returns a list of books with their IDs, names, and abbreviations in the Bible's native language." }, { "slug": "API_BIBLE_LIST_AUDIO_CHAPTERS", "name": "List Audio Chapters", "description": "Tool to retrieve a list of audio chapters for a specific book in an audio Bible version. Use after obtaining the audio Bible ID and book ID to view available audio chapters." }, { "slug": "API_BIBLE_LIST_CHAPTERS", "name": "List Chapters", "description": "Tool to retrieve an array of Chapter objects for a given Bible version and book. Use after obtaining the Bible and book IDs to view all chapters available." }, { "slug": "API_BIBLE_LIST_CHAPTER_SECTIONS", "name": "List Chapter Sections", "description": "Tool to retrieve an array of section objects for a specific chapter in a Bible version. Use after obtaining the Bible and chapter IDs to view sectional breakdown of a chapter." }, { "slug": "API_BIBLE_LIST_VERSES", "name": "List Verses", "description": "Tool to retrieve an array of verses for a specific chapter in a Bible version. Use after obtaining Bible and chapter IDs to get all verses in that chapter." }, { "slug": "API_BIBLE_SEARCH_VERSES", "name": "Search Bible Verses", "description": "Search for Bible verses containing specified keywords or passage references. This tool searches within a specific Bible version for verses matching your query. For keyword searches, all keywords must be present in a verse to match. You can also search by passage reference (e.g., 'John 3:16-19'). Use API_BIBLE_GET_SUPPORTED_VERSIONS to get valid Bible version IDs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_bible_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API.Bible API Key", "type": "string", "description": "Your unique API key for authenticating requests to API.Bible.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api2pdf", "name": "API2PDF", "logo": "https://logos.composio.dev/api/api2pdf", "description": "Api2Pdf is a REST API that enables developers to generate PDFs from HTML, URLs, and various document formats using engines like wkhtmltopdf, Headless Chrome, and LibreOffice.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "API2PDF_ADD_HEADER_FOOTER", "name": "Add Header Footer", "description": "Convert HTML to PDF with customizable headers and footers using Headless Chrome. Use for generating reports, invoices, or documents with consistent page numbering, titles, dates, or branding on every page." }, { "slug": "API2PDF_CHECK_STATUS", "name": "Check API Status", "description": "Tool to check the health status of the API2PDF service. Use when you need to verify if the API is available and responding. This endpoint does not require authentication and returns a simple status indicator." }, { "slug": "API2PDF_DELETE_PDF", "name": "Delete PDF", "description": "Delete a previously generated PDF from API2PDF storage by its response ID. By default, API2PDF automatically deletes PDFs after 24 hours. Use this tool when you need to immediately remove a PDF for security or cleanup purposes. The response_id parameter is the ResponseId returned from any PDF generation operation (e.g., merge, convert HTML to PDF, etc.)." }, { "slug": "API2PDF_EXTRACT_PAGES", "name": "Extract PDF Pages", "description": "Tool to extract specific pages from a PDF document. Use when you need only certain pages from a larger PDF file. Provide a URL to the source PDF and optionally a page range (0-indexed, end exclusive). Returns a URL to the extracted PDF." }, { "slug": "API2PDF_LIBREOFFICE_PDF_TO_HTML", "name": "LibreOffice PDF to HTML", "description": "Tool to convert a PDF document to HTML using LibreOffice. Use when you need HTML output of a PDF file (experimental; images may be excluded)." }, { "slug": "API2PDF_LIBREOFFICE_THUMBNAIL", "name": "LibreOffice Thumbnail", "description": "Tool to generate a thumbnail image of a document using LibreOffice. Use when you need a quick visual preview of a PDF or Office file's first page." }, { "slug": "API2PDF_MERGE_PDFS", "name": "Merge PDFs", "description": "Merge multiple PDF documents into a single PDF file. Provide a list of publicly accessible PDF URLs, and they will be combined in the order specified. The merged PDF is available via a download URL for 24 hours." }, { "slug": "API2PDF_OPTIMIZE_PDF", "name": "Optimize PDF", "description": "Tool to optimize a PDF document to reduce file size while maintaining quality. Use when you need to minimize storage or bandwidth for an existing PDF." }, { "slug": "API2PDF_REORDER_PAGES", "name": "Reorder PDF Pages", "description": "Reorder pages of a PDF document by specifying a new page sequence. Provide a URL to the source PDF and a list of zero-based page indices in the desired order. For example, to reverse a 3-page PDF, use pages=[2,1,0]. The reordered PDF is available via a download URL for 24 hours." }, { "slug": "API2PDF_ZEBRA_GENERATE_BARCODE", "name": "Generate Barcode or QR Code", "description": "Tool to generate barcodes or QR codes using Zebra Crossing (ZXING). Use when you need a barcode or QR code image from text values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api2pdf_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Api2Pdf API Key", "type": "string", "description": "Your unique API key obtained from the Api2Pdf portal.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "api4ai", "name": "Api4Ai", "logo": "https://logos.composio.dev/api/api4ai", "description": "AI-powered APIs for image and video processing including OCR, brand recognition, NSFW detection, and more", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api4ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API4AI API key from portal.api4.ai", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apiflash", "name": "Apiflash", "logo": "https://logos.composio.dev/api/apiflash", "description": "ApiFlash is a website screenshot API that allows users to capture high-quality screenshots of web pages programmatically.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APIFLASH_BATCH_CAPTURE_SCREENSHOTS", "name": "Batch Capture Screenshots", "description": "Tool to capture screenshots for multiple URLs in a single request. Use when you have a list of pages to snapshot in batch." }, { "slug": "APIFLASH_CAPTURE_SCREENSHOT", "name": "Capture Screenshot", "description": "Tool to capture a screenshot of a website. Returns a JSON response with URLs to the screenshot (and optionally extracted HTML/text). Supports extensive customization including viewport dimensions, full page capture, quality settings, element selection, geolocation emulation, and more. Use when you need to capture website screenshots for documentation, testing, or monitoring purposes." }, { "slug": "APIFLASH_CAPTURE_WEBSITE_SCREENSHOT_POST", "name": "Capture Website Screenshot (POST)", "description": "Capture a screenshot of any website. Returns a URL to the generated screenshot image. Supports full-page captures, custom viewport sizes, and multiple image formats (JPEG, PNG, WebP). Use this tool when you need to visually capture web pages for documentation, monitoring, or analysis." }, { "slug": "APIFLASH_GET_QUOTA_INFORMATION", "name": "Get Quota Information", "description": "Tool to retrieve current API quota usage and limits. Use after authentication to monitor usage and reset times." }, { "slug": "APIFLASH_GET_SCREENSHOT_METADATA", "name": "Get Screenshot Metadata", "description": "Retrieve metadata (file size, MIME type) for a previously captured screenshot. Use this tool when you need to check the size or format of a screenshot without downloading the full image. Requires the screenshot URL from a prior capture action." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apiflash_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "ApiFlash API Key", "type": "string", "description": "Your unique API access key for authenticating requests. You can find it in your ApiFlash dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apify", "name": "Apify", "logo": "https://logos.composio.dev/api/apify", "description": "Apify is a platform for building, deploying, and managing web scraping and automation tools, known as Actors.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 113, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "APIFY_ACT_BUILDS_POST", "name": "Build Actor", "description": "Tool to build an Actor with specified configuration. Use when you need to create a new build of an Actor with a specific version. The build process compiles the Actor's source code into a Docker image." }, { "slug": "APIFY_ACTOR_BUILD_ABORT_POST", "name": "Abort Actor Build", "description": "Tool to abort an Actor build that is starting or running. Use when you need to cancel a build in progress. Builds in terminal states (FINISHED, FAILED, ABORTING, TIMED-OUT) are not affected." }, { "slug": "APIFY_ACTOR_BUILD_DELETE", "name": "Delete Actor Build", "description": "Tool to delete an Actor build permanently. Use when you need to remove a specific build by its ID. The default build for an Actor cannot be deleted. Only users with build permissions can delete builds." }, { "slug": "APIFY_ACTOR_BUILD_GET", "name": "Get Actor Build", "description": "Tool to get detailed information about a specific Actor build. Use when you need to retrieve complete build details by build ID. Optionally wait for the build to finish using the waitForFinish parameter to avoid polling." }, { "slug": "APIFY_ACTOR_BUILD_LOG_GET", "name": "Get Actor Build Log", "description": "Tool to retrieve the log file for a specific Actor build. Use when you need to inspect logs generated during an Actor build process. Only the trailing 5 million characters of the log are stored." }, { "slug": "APIFY_ACTOR_BUILDS_GET", "name": "Get user builds list", "description": "Tool to get a paginated list of all builds for a user. Use when you need to retrieve build history across all actors. Supports pagination up to 1000 records." }, { "slug": "APIFY_ACTOR_RUN_ABORT_POST", "name": "Abort Actor Run", "description": "Tool to abort a running or starting Actor run. Use when you need to stop an Actor run that is currently in STARTING or RUNNING status. For runs with status FINISHED, FAILED, ABORTING, and TIMED-OUT this call does nothing." }, { "slug": "APIFY_ACTOR_RUN_DELETE", "name": "Delete Actor Run", "description": "Tool to delete a finished Actor run. Use when you need to permanently remove a completed run. Only finished runs can be deleted by the initiating user or organization." }, { "slug": "APIFY_ACTOR_RUN_GET", "name": "Get Actor Run", "description": "Tool to get details about a specific Actor run. Use when you need to retrieve comprehensive information about a run including its execution status, resource usage, storage IDs, and metadata." }, { "slug": "APIFY_ACTOR_RUN_PUT", "name": "Update Actor Run Status Message", "description": "Tool to update the status message of an Actor run. Use when you need to set progress information or status updates that will be displayed in the Apify Console UI during Actor execution." }, { "slug": "APIFY_ACTOR_TASK_DELETE", "name": "Delete Actor Task", "description": "Tool to delete an Actor task permanently. Use when you need to remove a task by its ID or username~taskName. Confirm before calling." }, { "slug": "APIFY_ACTOR_TASK_GET", "name": "Get Actor Task", "description": "Tool to get complete details about an Actor task. Use when you need to retrieve task configuration, input settings, or metadata by task ID or username~task-name." }, { "slug": "APIFY_ACTOR_TASK_PUT", "name": "Update Actor Task", "description": "Tool to update Actor task settings using JSON payload. Only specified properties are updated; others remain unchanged. Use when you need to modify task configuration, input, or execution options." }, { "slug": "APIFY_ACTOR_TASK_RUNS_LAST_GET", "name": "Get last actor task run", "description": "Tool to get the most recent run of a specific Actor task. Use when you need to retrieve the last execution details. You can filter by status to get only successful runs using status='SUCCEEDED'." }, { "slug": "APIFY_ACTOR_TASK_RUN_SYNC_GET", "name": "Run Task Sync (GET)", "description": "Tool to run a specific task synchronously and return its output. Use when immediate task results are needed with pre-configured settings. The run must finish within 300 seconds otherwise the HTTP request fails with a timeout error." }, { "slug": "APIFY_ACTOR_TASK_RUN_SYNC_GET_DATASET_ITEMS_GET", "name": "Run Task Sync & Get Dataset Items", "description": "Tool to run an actor task synchronously and retrieve its dataset items. Use when immediate access to task run results is needed. The run must finish within 300 seconds otherwise the request times out. For large datasets exceeding the timeout, use `limit`/`offset` pagination to retrieve results in smaller batches or switch to an async run pattern with a separate dataset retrieval call." }, { "slug": "APIFY_ACTOR_TASK_RUN_SYNC_GET_DATASET_ITEMS_POST", "name": "Run Task Sync with Input Override & Get Dataset Items", "description": "Tool to run an actor task synchronously with input overrides and retrieve its dataset items. Use when you need to override task input configuration and get immediate results. The run must finish within 300 seconds otherwise the request times out." }, { "slug": "APIFY_ACTOR_TASK_RUN_SYNC_POST", "name": "Run Task Sync (POST)", "description": "Tool to run an Actor task synchronously with input override and return its output. Use when immediate task results are needed with custom input parameters. The run must finish within 300 seconds otherwise the HTTP request fails with a timeout error (though the run continues server-side)." }, { "slug": "APIFY_ACT_PUT", "name": "Update Actor", "description": "Tool to update Actor settings using JSON payload. Only specified fields will be updated. Use when you need to modify Actor configuration, make an Actor public, or update version settings." }, { "slug": "APIFY_ACT_RUNS_LAST_GET", "name": "Get last actor run", "description": "Tool to get the most recent run of a specific Actor. Use when you need to retrieve the last execution details of an Actor and optionally filter by status (e.g., status='SUCCEEDED' to get only the last successful run)." }, { "slug": "APIFY_ACT_RUN_SYNC_GET", "name": "Run Actor Sync without Input (GET)", "description": "Tool to run a specific Actor synchronously without input and return its output. Use when immediate Actor results are needed without providing input data; the run must finish within 300 seconds otherwise the HTTP request fails with a timeout error." }, { "slug": "APIFY_ACT_RUN_SYNC_GET_DATASET_ITEMS_GET", "name": "Run Actor Sync & Get Dataset Items", "description": "Tool to run Actor synchronously and get dataset items. Supports both actors that require input and those that don't. Use when immediate access to Actor results is needed. The run must finish within 300 seconds otherwise the request times out." }, { "slug": "APIFY_ACTS_GET", "name": "Get list of Actors", "description": "Tool to get the list of all Actors that the user created or used. Use when you need to enumerate or browse Actors. Add my=1 to get only user-created Actors." }, { "slug": "APIFY_ACT_VERSION_DELETE", "name": "Delete Actor Version", "description": "Tool to delete a specific version of an Actor's source code. Use when you need to remove an Actor version by actor ID and version number. Confirm before calling." }, { "slug": "APIFY_ACT_VERSION_ENV_VAR_DELETE", "name": "Delete Actor Version Environment Variable", "description": "Tool to delete an environment variable from a specific Actor version. Use when removing environment variables from Actor versions." }, { "slug": "APIFY_ACT_VERSION_ENV_VAR_GET", "name": "Get Actor Version Environment Variable", "description": "Tool to get environment variable details for a specific Actor version. Use when retrieving environment variable information from an Actor version. Returns name, value (if not secret), and secret status." }, { "slug": "APIFY_ACT_VERSION_ENV_VAR_PUT", "name": "Update Actor Version Environment Variable", "description": "Tool to update environment variable for a specific Actor version using JSON payload. Only specified fields will be updated. Use when modifying existing environment variables in Actor versions." }, { "slug": "APIFY_ACT_VERSION_ENV_VARS_GET", "name": "Get list of Actor version environment variables", "description": "Tool to get the list of environment variables for a specific Actor version. Use when you need to retrieve environment variable configurations for an Actor version." }, { "slug": "APIFY_ACT_VERSION_ENV_VARS_POST", "name": "Create Actor Version Environment Variable", "description": "Tool to create an environment variable for a specific Actor version. Use when adding new environment variables to Actor versions. Requires name and value parameters." }, { "slug": "APIFY_ACT_VERSION_GET", "name": "Get Actor version", "description": "Tool to get details about a specific version of an Actor. Use when you need version metadata including source type, build tag, and configuration details." }, { "slug": "APIFY_ACT_VERSION_PUT", "name": "Update Actor Version", "description": "Tool to update an Actor version's configuration and source code. Use when modifying version properties such as buildTag, sourceType, or environment variables. Only specified properties will be updated." }, { "slug": "APIFY_ACT_VERSIONS_GET", "name": "Get list of Actor versions", "description": "Tool to get the list of versions of a specific Actor. Use when you need to retrieve version metadata including source type, version number, and configuration details." }, { "slug": "APIFY_ACT_VERSIONS_POST", "name": "Create Actor Version", "description": "Tool to create a new version of an Actor. Use when you need to add a new version with specific source code location and configuration. Requires versionNumber and sourceType parameters, plus conditional parameters based on the sourceType." }, { "slug": "APIFY_ACT_WEBHOOKS_GET", "name": "Get list of Actor webhooks", "description": "Tool to get a list of webhooks for a specific Actor. Use when you need to review or manage webhooks configured for an Actor." }, { "slug": "APIFY_CREATE_ACTOR", "name": "Create Actor", "description": "Tool to create a new Actor with specified configuration. Use when you need to initialize a fresh Actor programmatically before publishing or running it." }, { "slug": "APIFY_CREATE_DATASET", "name": "Create Dataset", "description": "Tool to create a new dataset. Use when you need to initialize or retrieve a dataset by name." }, { "slug": "APIFY_CREATE_TASK", "name": "Create Actor Task", "description": "Tool to create a new Actor task with specified settings. Use when you need to configure or schedule recurring Actor runs programmatically." }, { "slug": "APIFY_CREATE_TASK_WEBHOOK", "name": "Create Task Webhook", "description": "Tool to create a webhook for an Actor task. Use when you need external notifications about task run events (e.g., completion or failure) in downstream systems." }, { "slug": "APIFY_DATASET_DELETE", "name": "Delete Dataset", "description": "Tool to delete a dataset permanently. Use when you need to remove a dataset by its ID or username~dataset-name. Confirm before calling." }, { "slug": "APIFY_DATASET_GET", "name": "Get Dataset", "description": "Tool to retrieve dataset metadata by dataset ID. Use when you need information about a dataset's structure, item counts, or access URLs. This does not return dataset items themselves." }, { "slug": "APIFY_DATASET_PUT", "name": "Update Dataset", "description": "Tool to update a dataset's name via JSON payload. Use when you need to rename an existing dataset." }, { "slug": "APIFY_DATASETS_GET", "name": "Get list of datasets", "description": "Tool to get list of datasets for a user. Use when you need to enumerate or browse user's datasets. Supports pagination with up to 1000 items per page." }, { "slug": "APIFY_DATASET_STATISTICS_GET", "name": "Get Dataset Statistics", "description": "Tool to get dataset field statistics by dataset ID. Use when you need statistical information about dataset fields including min, max, null count, and empty count. Only provides field statistics when dataset schema is configured." }, { "slug": "APIFY_DELETE_ACTOR", "name": "Delete Actor", "description": "Tool to delete an Actor permanently. Use when you need to remove an Actor by its ID or username~actorName. Confirm before calling." }, { "slug": "APIFY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its ID. Use when removing a webhook after confirming the webhook ID." }, { "slug": "APIFY_GET_ACTOR", "name": "Get Actor Details", "description": "Tool to get details of a specific Actor. Use when you need actor metadata by ID or username/actorName. Response includes `isDeprecated` and `notice` fields indicating deprecation status, and `pricingInfos` for per-unit cost details — review both before scheduling runs." }, { "slug": "APIFY_GET_ACTOR_LAST_RUN_DATASET_ITEMS", "name": "Get Actor Last Run Dataset Items", "description": "Tool to get dataset items from the last run of an Actor. Use when you need to retrieve output data from the most recent Actor execution, optionally filtered by run status (e.g., status='SUCCEEDED' to get items only from the last successful run)." }, { "slug": "APIFY_GET_ALL_WEBHOOKS", "name": "Get all webhooks", "description": "Tool to get a list of all webhooks created by the user. Use when you need to enumerate webhooks before filtering or maintenance." }, { "slug": "APIFY_GET_DATASET_ITEMS", "name": "Get dataset items", "description": "Tool to retrieve items from a dataset. Use when you need to fetch data from a specified dataset by pagination or filtering. Only JSON format is fully supported. For datasets larger than 1000 items, issue multiple calls incrementing `offset` by `limit` until the response returns fewer items than `limit`." }, { "slug": "APIFY_GET_DEFAULT_BUILD", "name": "Get Default Build", "description": "Tool to get the default build for an Actor. Use after specifying the Actor ID; optionally wait for the build to finish before returning." }, { "slug": "APIFY_GET_KEY_VALUE_RECORD", "name": "Get Key-Value Record", "description": "Tool to retrieve a record from a key-value store. Use when you need to fetch a specific value by key from an Apify Key-Value Store." }, { "slug": "APIFY_GET_LIST_OF_BUILDS", "name": "Get list of builds", "description": "Tool to get a list of builds for a specific Actor. Use when you need paginated access to an Actor’s build (version) history." }, { "slug": "APIFY_GET_LIST_OF_RUNS", "name": "Get list of runs", "description": "Tool to get a list of runs for a specific Actor. Use when you need to paginate through runs and optionally filter by status before processing run data." }, { "slug": "APIFY_GET_LIST_OF_TASK_RUNS", "name": "Get list of task runs", "description": "Tool to get a list of runs for a specific Actor task. Use when you need to paginate through task runs and optionally filter by status." }, { "slug": "APIFY_GET_LIST_OF_TASKS", "name": "Get list of tasks", "description": "Tool to fetch a paginated list of tasks belonging to the authenticated user. Use when you need to browse or sort tasks created by the user." }, { "slug": "APIFY_GET_LIST_OF_TASK_WEBHOOKS", "name": "Get list of task webhooks", "description": "Tool to get a list of webhooks for a specific Actor task. Use when you need to review or paginate webhooks after creating or updating a task." }, { "slug": "APIFY_GET_LOG", "name": "Get log", "description": "Tool to retrieve logs for a specific Actor run or build. Use after a run completes or fails — a run may report success status yet contain only informational messages, making log inspection the only way to confirm actual outcomes. For long runs, log responses can be very large; prioritize error-level entries and recent timestamps to diagnose issues efficiently." }, { "slug": "APIFY_GET_OPEN_API_DEFINITION", "name": "Get OpenAPI Definition", "description": "Tool to get the OpenAPI definition for a specific Actor build. Use when you need the API schema for code generation or analysis." }, { "slug": "APIFY_GET_RUN_DATASET_ITEMS", "name": "Get Run Dataset Items", "description": "Tool to get dataset items from a specific Actor run. Use when you need to retrieve the output data from a completed or running Actor run." }, { "slug": "APIFY_GET_TASK_INPUT", "name": "Get Task Input", "description": "Tool to retrieve the input configuration of a specific task. Use when you need to inspect stored task input before execution or debugging." }, { "slug": "APIFY_GET_TASK_LAST_RUN_DATASET_ITEMS", "name": "Get Task Last Run Dataset Items", "description": "Tool to get dataset items from the last run of an Actor task. Use when you need to retrieve data from the most recent task execution. Filter by status (e.g., 'SUCCEEDED') to get items from the last successful run only." }, { "slug": "APIFY_KEY_VALUE_STORE_DELETE", "name": "Delete Key-Value Store", "description": "Tool to delete a key-value store permanently. Use when you need to remove a key-value store by its ID. Confirm before calling." }, { "slug": "APIFY_KEY_VALUE_STORE_GET", "name": "Get Key-Value Store", "description": "Tool to retrieve key-value store metadata by store ID. Use when you need detailed information about a specific key-value store including stats and access URLs." }, { "slug": "APIFY_KEY_VALUE_STORE_KEYS_GET", "name": "Get Key-Value Store Keys", "description": "Tool to retrieve a list of keys from a key-value store. Use when you need to list keys in a store with optional filtering and pagination support." }, { "slug": "APIFY_KEY_VALUE_STORE_RECORD_DELETE", "name": "Delete Key-Value Store Record", "description": "Tool to delete a record from a key-value store. Use when you need to remove a specific record by its key from an Apify Key-Value Store." }, { "slug": "APIFY_KEY_VALUE_STORE_RECORD_HEAD", "name": "Check Key-Value Store Record Exists", "description": "Tool to check if a record exists in a key-value store. Use when you need to verify whether a specific key exists in an Apify Key-Value Store without retrieving its content." }, { "slug": "APIFY_KEY_VALUE_STORES_GET", "name": "Get list of key-value stores", "description": "Tool to get the list of key-value stores owned by the user. Use when you need to enumerate or browse available stores. Supports pagination up to 1000 records per request." }, { "slug": "APIFY_KEY_VALUE_STORES_POST", "name": "Create Key-Value Store", "description": "Tool to create a new key-value store or retrieve an existing one by name. Use when you need to initialize a store for saving data records or files. If a store with the given name already exists, returns that store instead of creating a duplicate." }, { "slug": "APIFY_LIST_USER_RUNS", "name": "List User Actor Runs", "description": "Tool to get a paginated list of all Actor runs for the authenticated user. Use when you need to browse all runs across all actors, optionally filtered by status or date range." }, { "slug": "APIFY_REQUEST_QUEUE_DELETE", "name": "Delete Request Queue", "description": "Tool to delete a request queue permanently. Use when you need to remove a request queue by its ID." }, { "slug": "APIFY_REQUEST_QUEUE_GET", "name": "Get Request Queue", "description": "Tool to retrieve request queue metadata by queue ID. Use when you need information about a specific request queue including its statistics and request counts." }, { "slug": "APIFY_REQUEST_QUEUE_HEAD_GET", "name": "Get Request Queue Head", "description": "Tool to retrieve first requests from the queue for inspection. Use when you need to examine pending requests without locking them." }, { "slug": "APIFY_REQUEST_QUEUE_HEAD_LOCK_POST", "name": "Get Head and Lock Queue Requests", "description": "Tool to get and lock head requests from the queue. Returns the given number of first requests from the queue and locks them for the given time, preventing other clients from accessing them during the lock period. Use when you need to process requests exclusively without concurrent access by other clients." }, { "slug": "APIFY_REQUEST_QUEUE_PUT", "name": "Update Request Queue", "description": "Tool to update request queue name using JSON payload. Use when you need to rename an existing request queue." }, { "slug": "APIFY_REQUEST_QUEUE_REQUEST_DELETE", "name": "Delete Request from Queue", "description": "Tool to delete a specific request from a request queue. Use when you need to remove a request by its ID from an Apify request queue." }, { "slug": "APIFY_REQUEST_QUEUE_REQUEST_GET", "name": "Get Request from Queue", "description": "Tool to retrieve a specific request from a request queue by its ID. Use when you need to get detailed information about a request in an Apify request queue." }, { "slug": "APIFY_REQUEST_QUEUE_REQUEST_LOCK_DELETE", "name": "Delete Request Lock", "description": "Tool to delete a request lock from a request queue. Use when you need to unlock a previously locked request. Only the client that locked the request can delete its lock." }, { "slug": "APIFY_REQUEST_QUEUE_REQUEST_LOCK_PUT", "name": "Prolong Request Lock", "description": "Tool to prolong request lock in a request queue. Use when you need to extend the lock duration on a previously locked request. Only the client that locked the request can prolong its lock." }, { "slug": "APIFY_REQUEST_QUEUE_REQUEST_PUT", "name": "Update Request in Queue", "description": "Tool to update a request in a request queue. Use when you need to modify request properties or mark a request as handled by setting handledAt to the current date/time. If handledAt is set, the request will be removed from the head of the queue and unlocked if applicable." }, { "slug": "APIFY_REQUEST_QUEUE_REQUESTS_BATCH_DELETE", "name": "Batch Delete Requests from Queue", "description": "Tool to batch-delete up to 25 requests from a queue. Use when you need to remove multiple requests efficiently. Failed requests due to rate limits should be retried with exponential backoff." }, { "slug": "APIFY_REQUEST_QUEUE_REQUESTS_BATCH_POST", "name": "Batch Add Requests to Queue", "description": "Tool to batch-add up to 25 requests to a request queue. Use when you need to add multiple requests efficiently. Failed requests due to rate limits should be retried with exponential backoff." }, { "slug": "APIFY_REQUEST_QUEUE_REQUESTS_GET", "name": "List Request Queue Requests", "description": "Tool to list requests in a request queue with pagination support. Use when you need to retrieve multiple requests from an Apify request queue." }, { "slug": "APIFY_REQUEST_QUEUE_REQUESTS_POST", "name": "Add Request to Queue", "description": "Tool to add a request to the queue. Use when you need to add a web page URL to a request queue for crawling. If a request with the same uniqueKey was already present in the queue, returns the ID of the existing request." }, { "slug": "APIFY_REQUEST_QUEUE_REQUESTS_UNLOCK_POST", "name": "Unlock Queue Requests", "description": "Tool to unlock requests in a request queue that are currently locked by the client. If the client is within an Actor run, unlocks all requests locked by that specific run plus all requests locked by the same clientKey. If the client is outside of an Actor run, unlocks all requests locked using the same clientKey." }, { "slug": "APIFY_REQUEST_QUEUES_GET", "name": "Get list of request queues", "description": "Tool to get list of request queues for a user. Use when you need to enumerate or browse user's request queues. Supports pagination with up to 1000 items per page." }, { "slug": "APIFY_REQUEST_QUEUES_POST", "name": "Create Request Queue", "description": "Tool to create a new request queue or retrieve an existing one by name. Use when you need to initialize a queue for storing and managing web scraping requests. If a queue with the given name already exists, returns that queue instead of creating a duplicate. Unnamed queues follow data retention period policies." }, { "slug": "APIFY_RESURRECT_RUN", "name": "Resurrect Run", "description": "Tool to resurrect a finished Actor run. Use when you need to restart a completed or failed run. Deprecated endpoint; may be removed in future." }, { "slug": "APIFY_RUN_ACTOR", "name": "Run Actor Asynchronously", "description": "Tool to run a specific Actor asynchronously. Use when you need to trigger an Actor run without waiting for completion and retrieve its run details immediately." }, { "slug": "APIFY_RUN_ACTOR_SYNC", "name": "Run Actor Sync", "description": "Tool to run a specific Actor synchronously with input and return its output record. Use when immediate Actor results are needed; runs may timeout after 300 seconds. To avoid timeouts, scope inputs to specific URLs rather than broad crawls and request only necessary fields (e.g., text or markdown)." }, { "slug": "APIFY_RUN_ACTOR_SYNC_GET_DATASET_ITEMS", "name": "Run Actor Sync & Get Dataset Items", "description": "Tool to run an Actor synchronously and retrieve its dataset items. Use when immediate access to run results is needed." }, { "slug": "APIFY_RUN_TASK", "name": "Run Task Asynchronously", "description": "Tool to run a specific Actor task asynchronously. Use when you need to trigger a task run without waiting for completion and immediately retrieve its run details." }, { "slug": "APIFY_SCHEDULE_DELETE", "name": "Delete Schedule", "description": "Tool to delete a schedule by its ID. Use when you need to remove a schedule from the Apify system." }, { "slug": "APIFY_SCHEDULE_GET", "name": "Get Schedule", "description": "Tool to get schedule details by ID. Use when you need to retrieve comprehensive information about a schedule including cron expression, timezone, actions, and execution times." }, { "slug": "APIFY_SCHEDULE_LOG_GET", "name": "Get Schedule Log", "description": "Tool to get schedule log by ID. Use when you need to retrieve execution history for a schedule, including invocation timestamps and status messages. Returns up to 1000 invocations." }, { "slug": "APIFY_SCHEDULE_PUT", "name": "Update Schedule", "description": "Tool to update an existing schedule with new settings. Use when you need to modify schedule properties like cron expression, timezone, enabled status, or actions. Only specified fields are updated; others remain unchanged." }, { "slug": "APIFY_SCHEDULES_GET", "name": "Get list of schedules", "description": "Tool to get list of schedules created by the user. Use when you need to browse or enumerate user's schedules. Supports pagination with up to 1000 items per page." }, { "slug": "APIFY_SCHEDULES_POST", "name": "Create Schedule", "description": "Tool to create a new schedule with specified settings. Use when you need to automate Actor or Actor task execution at specific times using cron expressions." }, { "slug": "APIFY_STORE_DATA_IN_DATASET", "name": "Store Data in Dataset", "description": "Tool to store data items in a dataset. Use after collecting data when you want to batch-append or update items in an existing dataset." }, { "slug": "APIFY_STORE_DATA_IN_KEY_VALUE_STORE", "name": "Store Data in Key-Value Store", "description": "Tool to create or update a record in a key-value store. Use after you have the store ID and record key to persist JSON data." }, { "slug": "APIFY_STORE_GET", "name": "Get list of Actors in Store", "description": "Tool to get list of public Actors from Apify Store. Use when you need to browse or search public Actors available in the store. Supports searching by title, name, description, username, and readme." }, { "slug": "APIFY_UPDATE_KEY_VALUE_STORE", "name": "Update Key-Value Store", "description": "Tool to update a key-value store's properties. Use when renaming or changing access of the store after confirming the store ID." }, { "slug": "APIFY_UPDATE_TASK_INPUT", "name": "Update Task Input", "description": "Tool to update the input configuration of a specific Actor task. Use when you need to modify a scheduled task\u0019s input before execution." }, { "slug": "APIFY_USER_GET", "name": "Get Public User Data", "description": "Tool to get public user data. Use when you need to retrieve publicly accessible information about a specific Apify user account, similar to what can be seen on public profile pages. This operation requires no authentication token." }, { "slug": "APIFY_USERS_ME_GET", "name": "Get Current User Account Data", "description": "Tool to get private user account information. Use when you need to retrieve comprehensive data about the current user identified by the authentication token, including profile, subscription plan, and proxy settings. Note: 'plan', 'email', and 'profile' fields are omitted when accessed from Actor run." }, { "slug": "APIFY_USERS_ME_LIMITS_GET", "name": "Get Account Limits", "description": "Tool to get a complete summary of account limits and usage. Use when you need to retrieve information about usage cycles, spending caps, compute resources, data transfer quotas, and other account limits. This shows the same information as the Limits page in Apify console." }, { "slug": "APIFY_USERS_ME_LIMITS_PUT", "name": "Update Account Limits", "description": "Tool to update account limits manageable on the Limits page. Use when you need to set or modify the monthly spending cap (maxMonthlyUsageUsd) or data retention period (dataRetentionDays). At least one limit parameter must be provided." }, { "slug": "APIFY_USERS_ME_USAGE_MONTHLY_GET", "name": "Get Monthly Usage", "description": "Tool to get monthly usage summary with daily breakdown. Use when you need detailed usage information including storage, data transfer, and request queue metrics for the current or a specific billing cycle. This shows the same information as the Billing page in Apify console." }, { "slug": "APIFY_WEBHOOK_DISPATCHES_GET", "name": "Get list of webhook dispatches", "description": "Tool to get list of webhook dispatches for the user. Use when you need to retrieve webhook execution history with pagination support." }, { "slug": "APIFY_WEBHOOK_DISPATCH_GET", "name": "Get Webhook Dispatch", "description": "Tool to get webhook dispatch object with all details. Use when you need to retrieve information about a specific webhook dispatch including its status, event data, and call history." }, { "slug": "APIFY_WEBHOOK_GET", "name": "Get webhook", "description": "Tool to get webhook object with all details. Use when you need to retrieve complete information about a specific webhook by its ID." }, { "slug": "APIFY_WEBHOOK_PUT", "name": "Update Webhook", "description": "Tool to update webhook using JSON payload. Only specified properties are updated; others remain unchanged. Use when you need to modify webhook settings like event types, target URL, or other configuration." }, { "slug": "APIFY_WEBHOOK_TEST_POST", "name": "Test Webhook", "description": "Tool to test a webhook by creating a test dispatch with a dummy payload. Use when you need to verify webhook configuration before production use." }, { "slug": "APIFY_WEBHOOK_WEBHOOK_DISPATCHES_GET", "name": "Get webhook dispatches", "description": "Tool to get list of webhook dispatches for a specific webhook. Use when you need to retrieve dispatch history for a particular webhook with pagination support." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Apify API Token", "type": "string", "description": "Your Apify API token (starts with 'apify_api_'). Find or create it in Apify Console under Settings → API & Integrations.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apilio", "name": "Apilio", "logo": "https://logos.composio.dev/api/apilio", "description": "Apilio is a home automation platform that enables users to connect and control smart devices from various brands, offering flexible automation through complex conditions, time constraints, and integrations with services like IFTTT and Tuya.", "category": "internet of things", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APILIO_GET_BOOLEAN_VARIABLES", "name": "Get Boolean Variables", "description": "Tool to fetch all boolean variables. Use when you need the full list of boolean variables and their current states." }, { "slug": "APILIO_GET_CONDITIONS", "name": "Get Conditions", "description": "Retrieves all conditions from your Apilio account. Conditions are logic rules that evaluate to true or false based on variable values. Use this to list all available conditions, get their UUIDs for use in other operations, or check when conditions were last updated. No parameters required." }, { "slug": "APILIO_GET_LOGICBLOCKS", "name": "Get Logicblocks", "description": "Retrieves all logicblocks for the authenticated Apilio user. Logicblocks are the core automation logic units in Apilio that combine conditions and actions. Use this tool to list all available logicblocks with their UUIDs, names, active status, last evaluation results, and update timestamps." }, { "slug": "APILIO_GET_NUMERIC_VARIABLES", "name": "Get Numeric Variables", "description": "Retrieves all numeric variables from your Apilio account with their current values and metadata. Numeric variables in Apilio store numerical values (integers or decimals) that can be used in conditions and logicblocks for automation. This action returns a complete list of all numeric variables including their names, current values, UUIDs, and last update timestamps. Use this when you need to: - View all numeric variables in your account - Check current values of numeric variables - Get UUIDs for numeric variables (needed for other operations) - Monitor when variables were last updated" }, { "slug": "APILIO_GET_STRING_VARIABLES", "name": "Get String Variables", "description": "Tool to fetch all string variables. Use after authenticating the Apilio API." }, { "slug": "APILIO_LIST_TIME_CONDITIONS", "name": "List Time Conditions", "description": "Tool to fetch all time conditions of a user. Time conditions are conditions based on time, such as sunset/sunrise times, specific hours, or cron expressions. Use when you need to retrieve all time conditions configured in the user's Apilio account." }, { "slug": "APILIO_LIST_TUYA_CONDITIONS", "name": "List Tuya Conditions", "description": "Tool to retrieve all Tuya conditions from your Apilio account. Use when you need to list all Tuya-based conditions (conditions based on Tuya/Smart Life device states), get their UUIDs for use in other operations, or check when conditions were last updated." }, { "slug": "APILIO_LIST_VARIABLE_CONDITIONS", "name": "List Variable Conditions", "description": "Tool to retrieve all variable conditions from your Apilio account. Variable conditions are conditions based on the value of variables. Use when you need to list all available variable conditions, get their UUIDs for use in other operations, or check when they were last updated." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "apilio_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Your Apilio Username from https://app.apilio.com/user", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Apilio Password from https://app.apilio.com/user", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "apilio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Apilio Basic Authorization Header", "type": "string", "description": "The Basic Authorization Header. Get it from https://app.apilio.com/user - copy the full value after 'Basic ' from the Authorization header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apipie_ai", "name": "APIpie AI", "logo": "https://logos.composio.dev/api/apipie_ai", "description": "APIpie.ai is an AI super aggregator providing a unified API to access a vast array of AI models from leading providers, enabling cost-effective and latency-optimized solutions.", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APIPIE_AI_ANONYMIZE_TEXT", "name": "Anonymize Sensitive Text", "description": "Anonymize sensitive entities (PII) in text for data privacy and compliance. Use this tool to detect and replace personally identifiable information like names, phone numbers, locations, and other sensitive data with truncated SHA-256 hashes. Returns both the anonymized text and mappings showing what was replaced." }, { "slug": "APIPIE_AI_CREATE_VECTOR_COLLECTION", "name": "Create Vector Collection", "description": "Create a new vector collection (Pinecone-style index and namespace combined) in APIpie. Use this when you need to set up a new vector database for storing embeddings with a specific dimension. The dimension must match the embedding model you'll use (e.g., 1536 for OpenAI text-embedding-ada-002)." }, { "slug": "APIPIE_AI_DELETE_STATE", "name": "Delete state", "description": "Tool to delete state settings from APIpie. Without query parameter deletes app-level state; with query parameter deletes specific user state. Use after configuring state to remove unwanted state records or reset configuration." }, { "slug": "APIPIE_AI_DELETE_VECTORS", "name": "Delete Vectors", "description": "Delete vectors from a vector collection in APIpie. Use this tool to: - Delete ALL vectors in a collection: set delete_all=True (requires credits) - Delete specific vectors: set delete_all=False and provide a list of vector IDs Note: Deleting by metadata filter is not currently supported - you must specify vector IDs." }, { "slug": "APIPIE_AI_GET_DETAILED_MODELS", "name": "Get Detailed Models", "description": "Fetch detailed information about available AI models including pricing, capabilities, and specifications. Use when you need comprehensive model data with pricing rates, token limits, modality support, and benchmark scores." }, { "slug": "APIPIE_AI_GET_QUERY_HISTORY", "name": "Get query history", "description": "Tool to retrieve historic API usage logs including latency, token counts, costs, and source IP. Use after authenticating to analyze past queries for cost management, performance monitoring, or auditing." }, { "slug": "APIPIE_AI_GET_STATE", "name": "Get state", "description": "Tool to retrieve current state settings including user preferences, memory configuration, and routing settings. Use when you need to check or audit the current configuration for an app or specific user." }, { "slug": "APIPIE_AI_LIST_MODELS", "name": "List AI Models", "description": "Fetch a list of available AI models from APIPie. Use this tool when you need: - Up-to-date model listings with filtering by type, subtype, or provider - Voice model listings (set voices=true) - Country restriction information (set restrictions=true) Returns models with pricing, latency, availability, and capability information." }, { "slug": "APIPIE_AI_LIST_VECTOR_COLLECTIONS", "name": "List Vector Collections", "description": "Tool to retrieve a list of all vector collections under your account. Use when you need to view available collections before performing vector operations like querying, upserting, or deleting vectors." }, { "slug": "APIPIE_AI_PARSE_DOCUMENT", "name": "Parse Document", "description": "Tool to parse document content and metadata using Apache Tika. Extract text and metadata from various document formats (PDF, DOCX, TXT, etc.). Use when you need to extract readable text or metadata from uploaded documents." }, { "slug": "APIPIE_AI_TRANSCRIBE_AUDIO", "name": "Transcribe audio to text", "description": "Tool to transcribe audio files to text using AI speech-to-text models like Whisper. Use when you need to convert spoken audio into written text. Supports multiple models and output formats." }, { "slug": "APIPIE_AI_UPDATE_STATE", "name": "Update State Settings", "description": "Tool to create or update state settings in APIpie, including configurations, deletions, and feature toggling at app or user levels. Use when you need to manage persistent state for AI completions, memory, routing, or other APIpie features." }, { "slug": "APIPIE_AI_UPLOAD_FILE", "name": "Upload File", "description": "Upload a file to APIPie and retrieve a temporary URL. Use when you need to upload an image file and get a shareable URL. Supports image formats (.png, .jpg, .jpeg, .svg, .gif, .bmp, .tif, .tiff, .webp) with a maximum size limit of 5MB." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apipie_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "APIpie.ai API Key", "type": "string", "description": "Your APIpie.ai API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apitemplate", "name": "Apitemplate", "logo": "https://logos.composio.dev/api/apitemplate", "description": "APITemplate.io provides APIs for generating PDFs and images from reusable templates using JSON data.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APITEMPLATE_CREATE_PDF", "name": "Create PDF", "description": "Tool to create a PDF file using JSON data and a specified template. Use after confirming the template ID is valid when you need to generate a PDF." }, { "slug": "APITEMPLATE_DELETE_OBJECT", "name": "Delete Object", "description": "Tool to delete a generated PDF or image object. Use when you want to remove a previously generated object by its transaction reference after confirming it's no longer needed." }, { "slug": "APITEMPLATE_LIST_OBJECTS", "name": "List Objects", "description": "Tool to list all generated PDFs and images with filtering options. Use when you need to browse or manage generated assets after creation." }, { "slug": "APITEMPLATE_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of all templates available in your account. Use after authenticating to APITemplate.io when you need to enumerate all templates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apitemplate_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "APITemplate.io API Key", "type": "string", "description": "Your personal API key obtained from the APITemplate.io web console.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "apiverve", "name": "Apiverve", "logo": "https://logos.composio.dev/api/apiverve", "description": "APIVerve offers a comprehensive suite of APIs designed to simplify integration processes, providing developers with scalable and reliable solutions for various applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APIVERVE_ADVICE_GENERATOR", "name": "Advice Generator", "description": "Tool to generate a random piece of advice. Use when you need spontaneous guidance or motivation." }, { "slug": "APIVERVE_AGE_CALCULATOR", "name": "Age Calculator", "description": "Tool to calculate age from date of birth. Use when you need a breakdown of years, months, weeks, and days from a given DOB. Example: \"Calculate age for dob=1990-01-01\"" }, { "slug": "APIVERVE_AIRLINE_LOOKUP_NAME", "name": "Get Airline Info by Name", "description": "Look up airline information by name. Returns airline details including IATA code (2-letter), ICAO code (3-letter), radio callsign, and country of operation. Supports partial name matching, so searching 'American' returns all airlines containing 'American' in their name." }, { "slug": "APIVERVE_AIRPORT_DISTANCE_IATA", "name": "Get airport distance by IATA", "description": "Tool to get distance between two airports by their IATA codes. Use when you have valid airport IATA codes and need the flight distance." }, { "slug": "APIVERVE_AIRPORTS_LOOKUP_ICAO", "name": "Get Airport Info by ICAO Code", "description": "Tool to get airport information by ICAO code. Use when you have a valid 4-letter ICAO code and need detailed airport information." }, { "slug": "APIVERVE_AIR_QUALITY", "name": "Air Quality", "description": "Tool to get air quality data for a city. Use when you need current AQI, pollutant levels, and a health recommendation." }, { "slug": "APIVERVE_ANTONYM_FINDER", "name": "Find antonyms for a word", "description": "Tool to get antonyms for a word. Use when you need opposite terms for text analysis." }, { "slug": "APIVERVE_APP_STORE_SCRAPER", "name": "App Store Scraper", "description": "Fetch detailed metadata for an iOS/macOS app from the Apple App Store. Use this tool to retrieve comprehensive app information including title, description, ratings, reviews, pricing, screenshots, developer info, and version history. Common use cases: - Research competitor apps - Monitor app ratings and reviews - Get app details for app store optimization (ASO) - Verify app availability in specific countries Example: To get info for Candy Crush Saga in the US store, use appid='553834731' and country='us'." }, { "slug": "APIVERVE_CURRENCY_CONVERTER", "name": "Currency Converter", "description": "Tool to convert currency rates. Use when you need to convert an amount between two currencies with the latest exchange rate." }, { "slug": "APIVERVE_DICTIONARY", "name": "Get Word Definition", "description": "Tool to get the definition of a word. Use when you need to find the meaning of a specific word. E.g., \"Define the word apple.\"" }, { "slug": "APIVERVE_WEATHER_BY_CITY", "name": "Weather by City", "description": "Tool to get current weather by city. Use when you need to obtain up-to-date weather details for a specific city after confirming the city name. Example: \"What's the weather in Berlin?\"" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "apiverve_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "APIVerve API Key", "type": "string", "description": "Your unique API key for authenticating requests to APIVerve.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appcircle", "name": "Appcircle", "logo": "https://logos.composio.dev/api/appcircle", "description": "Appcircle is an enterprise-grade mobile CI/CD platform that enables developers to build, test, and publish mobile applications efficiently, offering both cloud-based and self-hosted deployment options.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APPCIRCLE_BUILD_REPO_WEBHOOK_CALLBACK_STANDARD", "name": "Standard Repo Webhook Callback", "description": "Trigger Appcircle builds via Git provider webhook callbacks. This action forwards webhook payloads from GitHub, GitLab, Bitbucket, or Azure DevOps to Appcircle's build webhook endpoint to automatically trigger builds when code is pushed. Use this action when: - Simulating or testing webhook-triggered builds - Programmatically triggering builds using webhook payloads - Integrating custom CI/CD workflows that need to trigger Appcircle builds - Replaying or debugging webhook events Requirements: - The organization must exist and have webhook integration configured in Appcircle - Build profiles must be set up with repository connections - The webhook URL pattern is: https://api.appcircle.io/build/v1/callback/hooks/{provider}/{org_id}/V7 Note: The action returns the raw HTTP response including status code and response body, allowing you to handle success, validation errors, or authentication issues appropriately." }, { "slug": "APPCIRCLE_BUILD_WEBHOOK_CUSTOM_INTEGRATION", "name": "Custom Integration Webhook Callback", "description": "Triggers Appcircle builds via custom integration webhook endpoint by forwarding Git provider webhook payloads. This action is designed to receive and forward webhook payloads from Git providers (GitHub, GitLab, Bitbucket, Azure DevOps) to Appcircle's build system. The webhook URL format and parameters (organization_id, integration_id, version) are provided by Appcircle when you configure custom integrations for repositories connected via SSH or public URL in the build profile settings. Use this action when: - You need to programmatically trigger Appcircle builds from Git provider webhook events - Testing webhook integrations with different payload structures - Implementing custom CI/CD workflows that forward webhook events to Appcircle Note: The organization_id and integration_id values must correspond to actual configurations in Appcircle. Test payloads will typically return 400/404 errors indicating no valid configuration exists for the provided IDs." }, { "slug": "APPCIRCLE_DISTRIBUTION_LIST_PROFILES", "name": "List Distribution Profiles", "description": "List all distribution profiles for the authenticated organization. Distribution profiles are used to manage and distribute app builds to testers. This endpoint supports pagination, sorting, and filtering by profile name. Use this when you need to retrieve available distribution profiles." }, { "slug": "APPCIRCLE_GET_DISTRIBUTE_SENT_PROFILES", "name": "Get Distribution Sent Profiles", "description": "Get distinct profile names for App Sharing Report filter. Returns a list of unique profile names that can be used to filter app sharing reports within the specified date range and organization. Use this to discover available profile names before querying detailed sharing reports." }, { "slug": "APPCIRCLE_GET_PUBLISH_ACTIVITY_REPORT", "name": "Get Publish Activity Report", "description": "Retrieve the publish activity report for your organization. Returns paginated list of publish activities with filtering options by date range, platform, action type, and organization. Use this to monitor and audit publish operations across profiles." }, { "slug": "APPCIRCLE_LIST_BUILD_PROFILES", "name": "List Build Profiles", "description": "List all build profiles for the authenticated organization. Build profiles define the configuration for building mobile applications. Use this to discover available build profiles and their IDs before triggering builds or configuring webhooks." }, { "slug": "APPCIRCLE_LIST_BUNDLE_IDENTIFIERS", "name": "List Bundle Identifiers", "description": "List all bundle identifiers in Appcircle. Returns all bundle identifiers configured in your organization, including their platforms, capabilities, and associated credentials. Use this to discover available bundle identifiers before managing signing identities or app configurations." }, { "slug": "APPCIRCLE_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "List organizations accessible to the authenticated user. Returns a paginated list of organizations with their details including ID, name, logo URL, and SSO status. Supports search filtering and pagination controls. Use this to discover available organizations before performing organization-specific operations like managing builds, distributions, or webhooks." }, { "slug": "APPCIRCLE_LIST_STORE_PROFILES", "name": "List Store Profiles", "description": "List all Enterprise App Store profiles for the authenticated organization. Enterprise App Store profiles are used to distribute apps internally. Use this to discover available store profiles and their IDs before listing app versions or managing store content." }, { "slug": "APPCIRCLE_RENAME_VARIABLE_GROUP", "name": "Rename Variable Group", "description": "Tool to rename an environment group (variable group) in Appcircle. Use when you need to update the name of an existing variable group to better reflect its purpose or environment." }, { "slug": "APPCIRCLE_STORE_IN_APP_AUTH_TOKEN", "name": "Obtain In-App Update Auth Token", "description": "Tool to fetch an access token for Enterprise App Store in-app updates. Use when you have the enterprise store profileId and secret and need to obtain a bearer token for subsequent update requests." }, { "slug": "APPCIRCLE_STORE_IN_APP_DOWNLOAD_VERSION_WITH_USER", "name": "Download In-App Update Version with User", "description": "Tool to download a specific in-app store version and attribute the download to a user for reporting. Use when triggering an in-app update download after obtaining an access token." }, { "slug": "APPCIRCLE_STORE_INAPP_LIST_APP_VERSIONS", "name": "List Enterprise App Store App Versions", "description": "Tool to list available app versions for the Enterprise App Store profile. Use when fetching available in-app update versions." }, { "slug": "APPCIRCLE_STORE_LIST_PROFILE_APP_VERSIONS_V2", "name": "List Store Profile App Versions V2", "description": "Tool to list app versions under a given store profile. Use when you need to fetch all versions for a specific Enterprise App Store profile after obtaining its ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appcircle_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal API Token", "type": "string", "description": "The Personal API Token generated from the Appcircle dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appcues", "name": "Appcues", "logo": "https://logos.composio.dev/api/appcues", "description": "Appcues is a product adoption platform that helps teams build personalized in-app experiences like onboarding flows, feature announcements, and user surveys without code.", "category": "product management", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "appcues_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your Appcues API Key. Navigate to Settings > API Keys in your Appcues dashboard to create one.", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your Appcues API Secret. This is shown only once when you create the API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appointo", "name": "Appointo", "logo": "https://logos.composio.dev/api/appointo", "description": "Appointo is an appointment booking application designed for Shopify stores, enabling businesses to integrate online booking systems seamlessly into their websites without any coding required.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APPOINTO_AUTHENTICATE", "name": "Authenticate Appointo API Token", "description": "Tool to authenticate with the Appointo API by validating the APPOINTO-TOKEN header. Use when verifying the token before subsequent API calls." }, { "slug": "APPOINTO_CANCEL_BOOKING", "name": "Cancel Booking", "description": "Tool to cancel a booking or selected customers. Use when you need to revoke an entire booking or individual attendees after verifying booking details. Use after retrieving booking information." }, { "slug": "APPOINTO_CREATE_BOOKING", "name": "Create Booking", "description": "Tool to create a new booking. Use when scheduling a customer booking after confirming appointment availability." }, { "slug": "APPOINTO_GET_APPOINTMENT_AVAILABILITY", "name": "Get Appointment Availability", "description": "Tool to get calendar availability for a specific appointment. Use when you need to fetch available time slots for an appointment within a date range." }, { "slug": "APPOINTO_LIST_APPOINTMENTS", "name": "List Appointments", "description": "Tool to list appointments. Use when fetching appointments with optional filters and pagination after confirming a valid API token." }, { "slug": "APPOINTO_LIST_BOOKINGS", "name": "List Bookings", "description": "Tool to list bookings. Use when you need to fetch bookings filtered by status, paging, or search term." }, { "slug": "APPOINTO_LIST_PRODUCTS", "name": "List Products", "description": "Tool to fetch all available products. Use when browsing products with optional paging and search. Call after authenticating with Appointo API." }, { "slug": "APPOINTO_LIST_SUBSCRIPTION_CONTRACTS", "name": "List Subscription Contracts", "description": "Tool to list subscription contracts. Use when retrieving contracts with optional search after confirming a valid API token." }, { "slug": "APPOINTO_RESCHEDULE_BOOKING", "name": "Reschedule Booking", "description": "Tool to reschedule an existing booking to a new timeslot. Use after confirming new timeslot availability." }, { "slug": "APPOINTO_UPDATE_BOOKING", "name": "Update Booking Buffers", "description": "Tool to update buffer times for an existing booking. Use after confirming new buffer durations." }, { "slug": "APPOINTO_UPSERT_APPOINTMENT_CONFIG", "name": "Upsert Appointment Configuration", "description": "Tool to upsert availability config for an appointment. Use when setting or updating appointment availability settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appointo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Appointo API Token", "type": "string", "description": "The API token used for authenticating requests to the Appointo API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appsignal", "name": "Appsignal", "logo": "https://logos.composio.dev/api/appsignal", "description": "Application monitoring and error tracking for web applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appsignal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal API Token", "type": "string", "description": "Your personal API token from https://appsignal.com/users/edit", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appveyor", "name": "Appveyor", "logo": "https://logos.composio.dev/api/appveyor", "description": "AppVeyor is a hosted continuous integration service for building and deploying applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "APPVEYOR_DELETE_BUILD", "name": "Delete Build", "description": "Tool to delete a build by ID. Use when you need to remove a build from AppVeyor. The API returns 204 No Content on successful deletion." }, { "slug": "APPVEYOR_DOWNLOAD_BUILD_LOG", "name": "Download Build Log", "description": "Tool to download the build log for a specific job. Use when you need to retrieve the log output from a completed or running build job." }, { "slug": "APPVEYOR_GET_BUILD_ARTIFACTS", "name": "Get Build Artifacts", "description": "Tool to get the list of artifacts for a specific build job. Use when you need to retrieve artifacts after a job completes." }, { "slug": "APPVEYOR_GET_BUILD_BY_VERSION", "name": "Get Build By Version", "description": "Tool to get a specific project build by version number. Use when you need to retrieve detailed information about a build using its version identifier." }, { "slug": "APPVEYOR_GET_ENVIRONMENTS", "name": "Get Environments", "description": "Tool to get a list of all deployment environments. Use when you need to enumerate available environments before creating deployments." }, { "slug": "APPVEYOR_GET_PROJECT_BRANCH_STATUS_BADGE", "name": "Get Project Branch Status Badge", "description": "Tool to get a project branch status badge image. Returns a PNG or SVG badge image showing the build status for a specific project branch." }, { "slug": "APPVEYOR_GET_PROJECTS", "name": "Get Projects", "description": "Tool to get a list of all projects for the authenticated account. Use after authentication to enumerate available projects." }, { "slug": "APPVEYOR_GET_PROJECT_STATUS_BADGE", "name": "Get Project Status Badge", "description": "Tool to get project status badge image. Use when you need to retrieve the status badge for displaying project build status." }, { "slug": "APPVEYOR_GET_PUBLIC_PROJECT_STATUS_BADGE", "name": "Get Public Project Status Badge", "description": "Tool to get status badge image for a project with a public repository. Use when you need to retrieve a build status badge for display or documentation purposes." }, { "slug": "APPVEYOR_GET_ROLE", "name": "Get Role", "description": "Tool to retrieve details of a specific role. Use when you need to inspect permissions and metadata of a role by ID." }, { "slug": "APPVEYOR_GET_ROLES", "name": "Get Roles", "description": "Tool to retrieve all roles in the account. Use when you need to enumerate available roles before assigning permissions." }, { "slug": "APPVEYOR_GET_USER_INVITATIONS", "name": "Get User Invitations", "description": "Tool to retrieve all pending user invitations in the account. Use when you need to list all outstanding invitations sent to potential team members." }, { "slug": "APPVEYOR_GET_USERS", "name": "Get Users", "description": "Tool to retrieve all users in the account. Use when you need to list all team users in your AppVeyor account." }, { "slug": "APPVEYOR_LIST_COLLABORATORS", "name": "List Collaborators", "description": "Tool to retrieve all collaborators in the account. Use when you need to list all team collaborators in your AppVeyor account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appveyor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "AppVeyor API Token", "type": "string", "description": "The API token used for authenticating requests to the AppVeyor API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "appwrite", "name": "Appwrite", "logo": "https://logos.composio.dev/api/appwrite", "description": "Self-hosted Backend-as-a-Service platform with authentication, databases, storage, and serverless functions", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "appwrite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Appwrite instance URL. For cloud: https://cloud.appwrite.io/v1 or region-specific like https://fra.cloud.appwrite.io/v1. For self-hosted: your custom domain with /v1 path.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Appwrite API key (X-Appwrite-Key). Create one in your Appwrite Console under API Keys with the necessary scopes.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Project ID", "type": "string", "description": "Your Appwrite project ID (X-Appwrite-Project). Find this in your Appwrite Console project settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "aryn", "name": "Aryn", "logo": "https://logos.composio.dev/api/aryn", "description": "Aryn is an AI-powered platform for document parsing, data extraction, and analytics, enabling users to process and query unstructured documents at scale.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ARYN_CREATE_DOCSET", "name": "Create DocSet", "description": "Tool to create a new DocSet. Use when you need to allocate a storage container before adding documents." }, { "slug": "ARYN_DELETE_DOCSET", "name": "Delete DocSet", "description": "Tool to delete a DocSet and all its documents. Use after confirming the DocSet ID, when you need to permanently remove a DocSet and its contents." }, { "slug": "ARYN_GENERATE_PLAN", "name": "Generate plan", "description": "Tool to generate a query plan without executing it. Use when you need to review the logical plan before running your query (e.g., \"Generate a plan for revenue breakdown by region\")." }, { "slug": "ARYN_GET_DOC_SET", "name": "Get DocSet Metadata", "description": "Tool to retrieve metadata for a specific DocSet by its ID. Use when you need to check DocSet details like name, creation time, properties, or prompts." }, { "slug": "ARYN_GET_DOCUMENT", "name": "Get Document by ID", "description": "Retrieve a document by ID from Aryn DocParse storage. Returns the document's parsed elements (text, tables, sections with embeddings), custom properties, and optionally the original binary content. Use this after obtaining a docset_id and doc_id from other Aryn actions (e.g., list_docs or add_doc)." }, { "slug": "ARYN_GET_DOCUMENT_BINARY", "name": "Download Document Binary", "description": "Download the original binary content (e.g., PDF, image) of a document from an Aryn DocSet. This action retrieves the raw binary file that was originally uploaded to the DocSet. Use this when you need to access the original document file rather than the parsed elements or extracted text." }, { "slug": "ARYN_LIST_ASYNC_TASKS", "name": "List Async Tasks", "description": "Tool to list all outstanding asynchronous tasks for the account. Use when you need to check pending or running tasks." }, { "slug": "ARYN_PARTITION_DOCUMENT", "name": "Partition Document", "description": "Partition a document using Aryn DocParse to extract and structure its content elements including text, tables, and images. Supports file upload or URL input with extensive processing options for chunking, OCR, table extraction, image extraction, and multiple output formats. Use when you need to extract structured content from PDFs or other document formats." }, { "slug": "ARYN_SUBMIT_ASYNC_ADD_DOC", "name": "Submit Document for Async Add Doc", "description": "Tool to submit a document for asynchronous addition to a DocSet. Returns a task ID to track the operation. Use when you need to add documents to an existing DocSet and want to track the processing status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "aryn_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Aryn API Key", "type": "string", "description": "Your Aryn API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ascora", "name": "Ascora", "logo": "https://logos.composio.dev/api/ascora", "description": "Ascora is a cloud-based field service management software designed to streamline operations for service-based businesses, offering features such as job scheduling, invoicing, customer management, and mobile access.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ASCORA_CREATE_NOTE", "name": "Create Note", "description": "Creates a note on an entity (customer, job, quote, etc.) in Ascora. Use this when you need to add comments, updates, or documentation to any entity in the system. Requires a valid entity ID from the Ascora system." }, { "slug": "ASCORA_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Tool to create a new contact or update an existing contact for a customer. Use when you need to add or modify contact information for a specific customer in Ascora. Requires a valid customer ID and accepts optional contact details like name, email, phone numbers, and default contact flag." }, { "slug": "ASCORA_CREATE_OR_UPDATE_CUSTOMER", "name": "Create or Update Customer", "description": "Tool to create a new customer or update an existing customer in Ascora. Use when you need to add a new customer with company name and optional contact details, address information (street and postal), and communication preferences. If the customer already exists, their details will be updated." }, { "slug": "ASCORA_CREATE_OR_UPDATE_SUPPLIER", "name": "Create or Update Supplier", "description": "Tool to create a new supplier or update an existing supplier in Ascora. Use when you need to add a new supplier with contact and address details, or modify an existing supplier's information by providing the supplierId." }, { "slug": "ASCORA_CREATE_QUOTATION", "name": "Create Quotation", "description": "Creates a new quotation/enquiry in Ascora for a customer. Use this tool when you need to submit a quote request with customer details (name, email, contact info), optional address information, work description, and custom fields. Returns a unique entity ID for the created enquiry that can be used to track or reference the quotation." }, { "slug": "ASCORA_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a specific customer by ID. Use when you need to remove a customer after confirming its existence." }, { "slug": "ASCORA_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact by their unique identifier. Use when you need to fetch information about a contact including their name, contact details, address, and customer association." }, { "slug": "ASCORA_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to retrieve details of a specific customer by their unique identifier. Use when you need to fetch information about a single customer including contact details, addresses, and status." }, { "slug": "ASCORA_GET_CUSTOMERS", "name": "Get Customers", "description": "Retrieves all customers from the Ascora system. Returns a list of customer records including contact information (name, email, phone) and address details (street, city, state, postcode, country). This is a read-only operation that requires authentication via API key. Useful for syncing customer data, creating customer lists, or verifying customer information exists in the system." }, { "slug": "ASCORA_GET_INVENTORY_CATEGORIES", "name": "Get Inventory Categories", "description": "Retrieves all inventory categories used to organize supplies and kits in Ascora. Returns a paginated list of categories with their IDs, names, and numeric identifiers. Use this when you need to list available inventory categories or reference category information for organizing inventory items." }, { "slug": "ASCORA_GET_INVENTORY_KITS", "name": "Get Inventory Kits", "description": "Retrieves all inventory kits from Ascora. Returns a paginated list of kit items that bundle multiple supplies together. Use this when you need to list available inventory kits or access kit details for quoting, job planning, or inventory management." }, { "slug": "ASCORA_GET_INVENTORY_SUPPLIES", "name": "Get Inventory Supplies", "description": "Retrieves all inventory supplies with pricing and stock information from Ascora. Returns a paginated list of supply items. Use this when you need to list available inventory supplies or access supply details including pricing and stock levels." }, { "slug": "ASCORA_GET_JOB", "name": "Get Job", "description": "Retrieves details of a specific job by its unique identifier. Returns comprehensive job information including job number, name, status, customer details, dates, and other job-specific data. Use this when you need to fetch detailed information about a particular job in the Ascora system." }, { "slug": "ASCORA_GET_JOBS", "name": "Get Jobs", "description": "Retrieves a paginated list of jobs from Ascora with optional filtering by job type, status, secondary status, and date range. Returns job details including job number, name, status, customer information, and assignment details. Use this when you need to list, search, or monitor jobs in the Ascora system." }, { "slug": "ASCORA_GET_QUOTE_LABOUR_ROLES", "name": "Get Quote Labour Roles", "description": "Retrieves labour roles available for use in quotes from Ascora. Use this when you need to list available labour roles with their hourly rates for quotation purposes." }, { "slug": "ASCORA_GET_QUOTES", "name": "Get Quotes", "description": "Retrieves a paginated list of quotes from Ascora with optional filtering by status, date range, or customer. Returns quote details including quote number, customer information, status, creation date, and total amount. Use this when you need to list, search, or monitor quotes in the Ascora system." }, { "slug": "ASCORA_GET_QUOTE_STANDARD_SECTIONS", "name": "Get Quote Standard Sections", "description": "Retrieves standard sections that can be used in quotes. Returns a list of pre-configured standard sections that can be included in quotations. This is a read-only operation that requires authentication via API key. Use when you need to list available standard sections for quote generation or to verify what sections exist in the system." }, { "slug": "ASCORA_GET_QUOTE_STANDARD_STAGES", "name": "Get Quote Standard Stages", "description": "Retrieves standard stages that can be used in quotes for progress tracking. Use this when you need to list available quote stages, display progress tracking options, or reference standard stages for quote management. Returns all configured standard stages in the Ascora system." }, { "slug": "ASCORA_GET_SUPPLIER", "name": "Get Supplier", "description": "Tool to retrieve details of a specific supplier by ID. Use when you need to fetch supplier information including contact details, address, and business information." }, { "slug": "ASCORA_GET_SUPPLIER_INVOICES", "name": "Get Supplier Invoices", "description": "Retrieves supplier invoices from Ascora with optional pagination. Returns invoice details including invoice number, supplier name, dates, amounts, and status. Use this when you need to list, search, or monitor supplier invoices in the Ascora system." }, { "slug": "ASCORA_GET_SUPPLIERS", "name": "Get Suppliers", "description": "Retrieves a list of suppliers from the Ascora system. Returns supplier details including name, contact information (email, phone), address details, ABN, and activity status. Use this when you need to list or search for suppliers in the Ascora system." }, { "slug": "ASCORA_SEARCH_JOBS", "name": "Search Jobs", "description": "Search for jobs by various criteria including job number, customer, or address. Use this when you need to find specific jobs based on identifiers or search terms rather than filtering by status or type." }, { "slug": "ASCORA_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Tool to upload an attachment to an entity (quote, job, customer, etc.) in Ascora. Use when you need to attach files like documents, images, or plans to existing entities in the system." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ascora_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Ascora API Key", "type": "string", "description": "The API key generated from Ascora's API Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "asin_data_api", "name": "ASIN Data API", "logo": "https://logos.composio.dev/api/asin_data_api", "description": "ASIN Data API provides detailed product data from Amazon, including price, rank, reviews, and more, enabling real-time insights for e-commerce professionals, marketers, and data analysts.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ASIN_DATA_API_CLEAR_COLLECTION_REQUESTS", "name": "Clear multiple collection requests", "description": "Delete multiple requests from a collection by their IDs using the bulk delete endpoint. Use this tool when you need to remove a selected set of request entries from an existing collection. Note: Requests can only be deleted when the collection is not running." }, { "slug": "ASIN_DATA_API_DELETE_DESTINATION", "name": "Delete Destination", "description": "Delete a destination from your account. Use this when you need to remove a destination that is no longer needed." }, { "slug": "ASIN_DATA_API_GET_COLLECTION", "name": "Get Collection Details", "description": "Get details of a specific collection including status and request counts. Use when you need to check collection configuration, operational status, or aggregate statistics." }, { "slug": "ASIN_DATA_API_LIST_COLLECTION_REQUESTS", "name": "List Collection Requests", "description": "List all requests in a Collection (paginated). Use to retrieve and paginate through all requests added to a specific collection. Returns up to 1000 requests per page with pagination info." }, { "slug": "ASIN_DATA_API_LIST_DESTINATIONS", "name": "List Destinations", "description": "List all destinations configured on your account. Use to retrieve and filter destination configurations for data export. Maximum 50 destinations allowed per account. Returns 10 destinations per page with pagination support." }, { "slug": "ASIN_DATA_API_UPDATE_DESTINATION", "name": "Update Destination", "description": "Update an existing destination's configuration. Use to modify cloud storage settings, change the destination name, or enable/disable a destination. Only include fields you want to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "asin_data_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ASIN Data API Key", "type": "string", "description": "Your ASIN Data API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "assemblyai", "name": "Assemblyai", "logo": "https://logos.composio.dev/api/assemblyai", "description": "Speech-to-text API with AI-powered transcription, speaker diarization, and audio intelligence", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "assemblyai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AssemblyAI API key from https://www.assemblyai.com/app/api-keys", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select region for data residency: US (default) or EU", "required": false, "default": "us" } ] } } } ] }, { "slug": "asterpay", "name": "Asterpay", "logo": "https://logos.composio.dev/api/asterpay", "description": "AsterPay is a payment platform using the x402 protocol for micropayments with USDC on Base blockchain. API keys are optional for tracking usage and analytics.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "asterpay_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your AsterPay API key (sk_sand_ for sandbox, sk_live_ for production). Get it from https://asterpay-dashboard.pages.dev/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "astica_ai", "name": "Astica AI", "logo": "https://logos.composio.dev/api/astica_ai", "description": "astica ai offers a suite of cognitive intelligence APIs, including computer vision, natural language processing, and voice synthesis, enabling developers to integrate advanced AI capabilities into their applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ASTICA_AI_ANALYZE_AUDIO", "name": "Analyze Audio", "description": "Tool to analyze audio input for transcription. Use when you need to convert an audio URL or Base64 string to text." }, { "slug": "ASTICA_AI_ASTICA_READ_TEXT", "name": "ASTICA_READ_TEXT", "description": "Perform OCR (Optical Character Recognition) on an image to extract text. Supports HTTPS image URLs and Base64-encoded images. Returns detected text blocks with bounding box coordinates. Works with printed text, handwritten notes, and various image qualities. Note: SVG and WebP formats are not supported." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "astica_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Astica API Key", "type": "string", "description": "Your astica API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "async_interview", "name": "Async Interview", "logo": "https://logos.composio.dev/api/async_interview", "description": "Async Interview is an on-demand video interview platform that streamlines the hiring process by allowing candidates to respond to pre-recorded questions at their convenience, enabling employers to review responses asynchronously.", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ASYNC_INTERVIEW_DELETE_JOB", "name": "Delete Job", "description": "Tool to delete an interview job. Use when you need to permanently remove a job after reviewing responses." }, { "slug": "ASYNC_INTERVIEW_LIST_INTERVIEW_RESPONSES", "name": "List Interview Responses", "description": "Tool to retrieve all interview responses with candidate details. Use when monitoring incoming responses or triggering follow-up workflows." }, { "slug": "ASYNC_INTERVIEW_LIST_JOBS", "name": "List Jobs", "description": "Tool to retrieve a list of all interview jobs. Use when you need to display or manage existing jobs." }, { "slug": "ASYNC_INTERVIEW_UPDATE_JOB", "name": "Update Job", "description": "Tool to update an existing interview job. Use when you need to modify job details after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "async_interview_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Async Interview API Token", "type": "string", "description": "The API token used for authenticating requests to the Async Interview API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "autobound", "name": "Autobound", "logo": "https://logos.composio.dev/api/autobound", "description": "Autobound provides AI-driven sales engagement solutions, offering personalized content generation and actionable insights to enhance sales outreach.", "category": "ai sales tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AUTOBOUND_GENERATE_INSIGHTS", "name": "Generate Insights", "description": "Tool to generate ranked prospect or company insights. Use after resolving identifiers to retrieve the most relevant insights." }, { "slug": "AUTOBOUND_GENERATE_PERSONALIZED_CONTENT", "name": "Generate Personalized Content", "description": "Tool to generate hyper-personalized sales content. Use after confirming contact and user details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "autobound_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Autobound API Key", "type": "string", "description": "Your unique API key for authenticating requests to Autobound's API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "autom", "name": "Autom", "logo": "https://logos.composio.dev/api/autom", "description": "Autom is a service that delivers lightning-fast search engine results page (SERP) outcomes for Google, Bing, and Brave, offering developers rapid access to search data with minimal latency.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AUTOM_GOOGLE_COUNTRIES", "name": "Google Countries", "description": "Search for Google-supported countries by name substring. Use this to get valid country codes for Google Search API parameters. Results are ordered by population reach (most populous countries first)." }, { "slug": "AUTOM_GOOGLE_IMAGES", "name": "Google Images", "description": "Tool to fetch images from Google search results. Use when you need URLs, titles, domains, and metadata for images matching a query." }, { "slug": "AUTOM_GOOGLE_LANGUAGES", "name": "Google Languages", "description": "Tool to retrieve Google-supported languages. Use when you need a list of language codes for localization." }, { "slug": "AUTOM_GOOGLE_LOCATIONS", "name": "Google Locations", "description": "Tool to retrieve Google-supported locations. Use when searching for locations by name. Returns locations ordered by reach (most populous first)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "autom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Autom.dev API Key", "type": "string", "description": "The API key used for authenticating requests to the Autom.dev API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "axiom", "name": "Axiom", "logo": "https://logos.composio.dev/api/axiom", "description": "Axiom is a cloud-native observability platform for logs, events, and analytics at any scale.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "axiom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Axiom API Token or Personal Access Token. Get it from Settings > Tokens in your Axiom dashboard.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Organization ID", "type": "string", "description": "Required when using Personal Access Token (PAT). Found in Settings > General.", "required": false, "default": null } ] } } } ] }, { "slug": "ayrshare", "name": "Ayrshare", "logo": "https://logos.composio.dev/api/ayrshare", "description": "Ayrshare provides a Social Media API that enables developers to programmatically manage and automate social media posts, analytics, and interactions across multiple platforms.", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "AYRSHARE_CREATE_AUTO_SCHEDULE", "name": "Create Auto Schedule", "description": "Tool to create a new auto-post schedule with specified times and optional weekday filters. Use when setting up recurring posting plans." }, { "slug": "AYRSHARE_DELETE_DELETE_POST", "name": "Delete a previously published Ayrshare post", "description": "Tool to delete an Ayrshare post. Use when you need to remove a published or scheduled post by its Ayrshare Post ID, after confirming the correct ID. Note: Instagram and TikTok published posts cannot be deleted via API; set `mark_manual_deleted=True` or remove manually." }, { "slug": "AYRSHARE_GET_POST_HISTORY", "name": "Get Post History", "description": "Tool to retrieve Ayrshare post history with metrics. Use when you need to fetch and filter past posts by date, status, or record count." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ayrshare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The primary API Key for authenticating requests, found in the Ayrshare Dashboard under the API Key page.", "required": true, "default": null } ], "optional": [ { "name": "generic_secret", "displayName": "Profile Key", "type": "string", "description": "The Profile Key used to interact on behalf of a User Profile, available for Business or Enterprise plans, found in the Ayrshare Dashboard under the Profile Key page.", "required": false, "default": null } ] } } } ] }, { "slug": "azure_devops", "name": "Azure DevOps", "logo": "https://logos.composio.dev/api/azure_devops", "description": "Azure DevOps provides developer services for allowing teams to plan work, collaborate on code development, and build and deploy applications.", "category": "developer tools", "authSchemes": [ "BASIC", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "azure_devops_entra_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "499b84ac-1321-427f-aa17-267ca6975798/.default" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization", "type": "string", "description": "Your Azure DevOps organization name", "required": true, "default": null } ], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } }, { "mode": "BASIC", "name": "azure_devops_pat", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "subdomain", "displayName": "Organization", "type": "string", "description": "Your Azure DevOps organization name", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Azure DevOps Personal Access Token (PAT). Create one at https://dev.azure.com/{organization}/_usersSettings/tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "backendless", "name": "Backendless", "logo": "https://logos.composio.dev/api/backendless", "description": "Backendless is a comprehensive backend-as-a-service (BaaS) platform providing scalable backend functionality for mobile and web applications, including user authentication, data persistence, file storage, and custom API services.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BACKENDLESS_COPY_FILE", "name": "Copy File", "description": "Tool to copy a file or directory within Backendless file storage. Use when duplicating files to a new location after verifying source and destination paths." }, { "slug": "BACKENDLESS_CREATE_DIRECTORY", "name": "Create Directory", "description": "Tool to create a new directory at the specified path. Use when you need to organize files under a new folder structure." }, { "slug": "BACKENDLESS_CREATE_HIVE", "name": "Create Backendless Hive", "description": "Tool to create a new Hive. Use when you need to provision a new Hive resource before performing Hive operations. Example: Create a hive named 'groceryStore'." }, { "slug": "BACKENDLESS_CREATE_TIMER", "name": "Create Backendless Timer", "description": "Tool to create a new timer with schedule and code. Use when scheduling recurring or one-off tasks to run server-side logic after confirming parameters." }, { "slug": "BACKENDLESS_DELETE_DIRECTORY", "name": "Delete Directory", "description": "Tool to delete a directory at the specified path in Backendless file storage. Use when you need to remove folders after confirming the path." }, { "slug": "BACKENDLESS_DELETE_FILE", "name": "Delete File", "description": "Deletes a file from Backendless file storage at the specified path. Use this tool when you need to remove files from storage. The operation is permanent and cannot be undone. Ensure the file path is correct before deletion." }, { "slug": "BACKENDLESS_DELETE_TIMER", "name": "Delete Backendless Timer", "description": "Deletes a Backendless timer by its unique name. Use this tool to permanently remove a scheduled timer from your Backendless application. The timer must exist and you must provide its exact name. Once deleted, the timer's scheduled executions will stop immediately and cannot be recovered. Note: Requires access to Backendless Console Management API (available with Plus or Enterprise plans)." }, { "slug": "BACKENDLESS_DIRECTORY_LISTING", "name": "Directory Listing", "description": "Tool to retrieve a listing of files and directories at a given path. Use when browsing or filtering file storage directories." }, { "slug": "BACKENDLESS_GENERAL_OBJECT_RETRIEVAL", "name": "General Object Retrieval", "description": "Tool to retrieve objects from a specified Backendless table with filtering, sorting, and pagination. Use after confirming the table name and query options. Example: \"Get Users where age > 30 sorted by created desc\"." }, { "slug": "BACKENDLESS_GET_ALL_VALUES", "name": "Get All Values", "description": "Tool to retrieve all values from a map in a specified Hive. Use when you need to fetch the entire contents of a Hive map at once." }, { "slug": "BACKENDLESS_GET_COUNTER_VALUE", "name": "Get Counter Value", "description": "Tool to retrieve the current value of a Backendless counter. Use when you need to inspect an atomic counter's value." }, { "slug": "BACKENDLESS_GET_FILE_COUNT", "name": "Get File Count", "description": "Tool to get the count of files in a Backendless directory. Use when you need to determine how many items match a filter or include subdirectories." }, { "slug": "BACKENDLESS_GET_KEY_ITEMS", "name": "Get Key Items", "description": "Tool to retrieve values for a specified key in a list (all, single, or range). Use when you need specific elements or the entire list from a Hive key. Supports single index retrieval, range retrieval, or full list." }, { "slug": "BACKENDLESS_GET_TIMER", "name": "Get Backendless Timer", "description": "Tool to retrieve information about a specific timer. Use when you need to inspect a timer's schedule and next run details by name." }, { "slug": "BACKENDLESS_MAP_PUT", "name": "Map Put", "description": "Tool to set or update key-value pairs in a Hive map. Use when you need to add or update multiple entries in a Hive map." }, { "slug": "BACKENDLESS_MOVE_FILE", "name": "Move File", "description": "Tool to move a file or directory within Backendless file storage. Use when relocating resources to a new path after verifying source and destination." }, { "slug": "BACKENDLESS_PUBLISH_MESSAGE", "name": "Publish Message", "description": "Tool to publish a message to a specified messaging channel. Use when you need to send notifications or events to subscribers after confirming channel and payload." }, { "slug": "BACKENDLESS_RESET_COUNTER", "name": "Reset Counter", "description": "Tool to reset a Backendless counter back to zero. Use when you need to reinitialize a counter before starting a new sequence." }, { "slug": "BACKENDLESS_SET_COUNTER_VALUE", "name": "Set Counter Value", "description": "Tool to set a Backendless counter to a specific value conditionally. Use when you need to ensure the counter only updates if it currently matches an expected value." }, { "slug": "BACKENDLESS_UPDATE_TIMER", "name": "Update Backendless Timer", "description": "Tool to update schedule or code of an existing timer. Use when you need to modify a timer's configuration after retrieval." }, { "slug": "BACKENDLESS_USER_DELETE", "name": "Delete User", "description": "Tool to delete a user by user ID. Use when removing a user account after confirming permissions." }, { "slug": "BACKENDLESS_USER_FIND", "name": "Find User by ID", "description": "Tool to retrieve user information by ID. Use when you need to fetch details for a specific user after you have their objectId." }, { "slug": "BACKENDLESS_USER_GRANT_PERMISSION", "name": "Grant Permission to User", "description": "Tool to grant a permission to a user on a specific data object. Use when precise access rights must be assigned after verifying the table and object IDs. Example: \"Grant FIND permission to a user for a Person record\"." }, { "slug": "BACKENDLESS_USER_LOGIN", "name": "User Login", "description": "Tool to log in a registered user with identity and password. Use when you need to authenticate a user before making subsequent requests. Example: \"Login alice@wonderland.com with password wonderland\"." }, { "slug": "BACKENDLESS_USER_LOGOUT", "name": "User Logout", "description": "Tool to log out the currently authenticated user. Use when you need to terminate the user session after operations." }, { "slug": "BACKENDLESS_USER_PASSWORD_RECOVERY", "name": "User Password Recovery", "description": "Tool to initiate password recovery for a user. Use when a user requests a password reset after forgetting their password. Triggers an email with recovery instructions." }, { "slug": "BACKENDLESS_USER_REGISTRATION", "name": "User Registration", "description": "Tool to register a new user with email and password. Use when creating a user account or converting a guest account to a registered one after collecting credentials. Example: Register 'alice@wonderland.com' with password 'wonderland'." }, { "slug": "BACKENDLESS_USER_REVOKE_PERMISSION", "name": "Revoke Permission from User", "description": "Tool to revoke a permission from a specified user or role on a specific data object. Use when you need to deny a previously granted operation for a user or role on a data object after verifying the table and object IDs." }, { "slug": "BACKENDLESS_USER_UPDATE", "name": "Update User", "description": "Tool to update properties of an existing Backendless user. Use when you need to modify user profile fields after login. Example: Update phoneNumber to \"5551212\"." }, { "slug": "BACKENDLESS_VALIDATE_USER_TOKEN", "name": "Validate User Token", "description": "Tool to validate a user session token. Use after obtaining a token from login to confirm the session is active." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "backendless_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Application ID", "type": "string", "description": "The unique identifier for your Backendless application.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "REST API Key", "type": "string", "description": "The REST API key associated with your Backendless application.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "backlog_api", "name": "Backlog Api", "logo": "https://logos.composio.dev/api/backlog_api", "description": "Project management and collaboration tool for development teams with issue tracking, wikis, and version control integration", "category": "project management", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "backlog_api_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Space ID", "type": "string", "description": "Your Backlog space ID (e.g., \"yourcompany\" from yourcompany.backlog.com)", "required": true, "default": null }, { "name": "suffix.one", "displayName": "Domain", "type": "string", "description": "Your Backlog domain: backlog.com (global), backlog.jp (Japan), or backlogtool.com (legacy)", "required": true, "default": "backlog.com" } ], "optional": [] } } }, { "mode": "API_KEY", "name": "backlog_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Space ID", "type": "string", "description": "Your Backlog space ID (e.g., \"yourcompany\" from yourcompany.backlog.com)", "required": true, "default": null }, { "name": "suffix.one", "displayName": "Domain", "type": "string", "description": "Your Backlog domain: backlog.com (global), backlog.jp (Japan), or backlogtool.com (legacy)", "required": true, "default": "backlog.com" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Backlog API key. You can create one at: Settings > Personal Settings > API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "barcode_lookup", "name": "Barcode Lookup", "logo": "https://logos.composio.dev/api/barcode_lookup", "description": "API for looking up product information using barcodes (UPC, EAN, ISBN, GTIN)", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "barcode_lookup_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Barcode Lookup API key from https://www.barcodelookup.com/api#sign-up", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bart", "name": "Bart", "logo": "https://logos.composio.dev/api/bart", "description": "BART (Bay Area Rapid Transit) provides public transportation services in the San Francisco Bay Area.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BART_GET_API_VERSION", "name": "Get BART API Version", "description": "Get the current version of the BART API. This action retrieves version information for the BART (Bay Area Rapid Transit) API, including the current API version number, copyright information, and license details. This is useful for verifying API compatibility and ensuring you're working with the expected API version. The BART API is currently at version 3.10 and supports both XML and JSON output formats. Use this action to confirm which version of the API you're interfacing with and to access licensing information." }, { "slug": "BART_GET_AVAILABLE_SCHEDULES", "name": "Get BART Available Schedules", "description": "DEPRECATED: Retrieve available BART schedules (deprecated since Dec 2, 2019). This endpoint is deprecated and returns an empty schedules list. BART recommends using GTFS/GTFS-RT feeds for current schedule data instead. Use BART_GET_GTFS_STATIC_SCHEDULE_FEED for schedule information." }, { "slug": "BART_GET_ELEVATOR_STATUS", "name": "Get Elevator Status", "description": "Tool to fetch current elevator status across all BART stations. Use when you need real-time elevator availability information for accessibility planning or route guidance." }, { "slug": "BART_GET_ESTIMATED_DEPARTURES", "name": "Get Estimated Departures", "description": "Tool to get real-time estimated departure times for a specified BART station. Returns live train departure predictions including minutes until departure, platform assignments, train lengths, line colors, bicycle accommodation, and delay information. Use this when you need current departure times for planning trips or checking train status." }, { "slug": "BART_GET_FARE", "name": "Get BART Fare", "description": "Get fare information between two BART stations including Clipper and cash prices. Returns multiple fare types (Clipper, cash, senior/disabled, youth, Clipper START) with their respective prices. Use this when you need to find out how much a BART trip costs between two stations." }, { "slug": "BART_GET_GTFS_ALERTS", "name": "Get GTFS-RT Service Alerts", "description": "Tool to fetch GTFS-RT service alerts in protobuf format for integration with GTFS static feed. Use when you need real-time service advisories, disruptions, or alert information." }, { "slug": "BART_GET_GTFS_RT_TRIP_UPDATES", "name": "Get GTFS-RT Trip Updates", "description": "Tool to fetch real-time trip updates in GTFS-Realtime format. Use when you need the latest live trip information as raw protobuf." }, { "slug": "BART_GET_GTFS_STATIC_SCHEDULE_FEED", "name": "Download GTFS Static Schedule Feed", "description": "Downloads the BART static GTFS (General Transit Feed Specification) schedule feed as a ZIP archive. The GTFS feed contains comprehensive transit data including stations, routes, trip schedules, fares, and service calendars in standardized CSV format. Use this to access complete BART schedule information for route planning, analysis, or integration with transit applications." }, { "slug": "BART_GET_ROUTE_INFO", "name": "Get Route Info", "description": "Tool to fetch detailed information about a specific BART route. Use when you know the route number (1–12) or need all routes configuration. Call after confirming the route ID." }, { "slug": "BART_GET_ROUTE_SCHEDULE", "name": "Get Route Schedule", "description": "Tool to get detailed schedule information for a specific BART route showing all trains and their stops. Use when you need to see the complete schedule for a route including departure times, station stops, bike policies, and passenger load indicators. Call this after determining the specific route number (1-12)." }, { "slug": "BART_GET_SCHEDULE_ARRIVE", "name": "Get BART Schedule Arrive", "description": "Tool to retrieve schedule information based on a specified arrival time. Use when planning trips arriving by a given time." }, { "slug": "BART_GET_SCHEDULE_DEPART", "name": "Get BART Schedule Depart", "description": "Get BART train schedules departing from an origin station to a destination station at a specified time. Returns multiple trip options with departure/arrival times, fares (Clipper, cash, senior/disabled, youth), transfer details, train information, and platform numbers. Use this when you need to plan BART trips with specific departure times or when users ask about train schedules between two stations." }, { "slug": "BART_GET_SERVICE_ADVISORIES", "name": "Get Service Advisories", "description": "Tool to fetch current BART service advisories. Use when you need up-to-date system-wide or station-level alerts before presenting or planning transit routes." }, { "slug": "BART_GET_SPECIAL_SCHEDULES", "name": "Get Special Schedules", "description": "DEPRECATED: Get special schedule announcements for holidays or event modifications. This endpoint is deprecated as of June 26, 2020 and references a legacy system that is no longer available. The API returns a deprecation message instead of schedule data. Use BART_GET_GTFS_STATIC_SCHEDULE_FEED for current schedule information." }, { "slug": "BART_GET_STATION_ACCESS", "name": "Get Station Access", "description": "Get comprehensive station access information including parking, transit, bike facilities, and lockers. Returns detailed access information for a specific BART station including: entering/exiting instructions, parking availability and lot capacity, bike parking and bike station details, locker availability, car-sharing options, nearby destinations, and connected transit services. Use this when you need to help users understand how to access a BART station or what facilities are available." }, { "slug": "BART_GET_STATION_INFO", "name": "Get Station Info", "description": "Get detailed information for a specific BART station by its abbreviation code. Returns comprehensive station details including: name, location (address, city, county, coordinates), routes serving the station (northbound/southbound), platform information, nearby amenities (food, shopping, attractions), and general station description. Use this when you need detailed information about a specific BART station and you already have its 4-letter abbreviation code (e.g., 'EMBR' for Embarcadero, 'MONT' for Montgomery Street, '12TH' for 12th Street Oakland)." }, { "slug": "BART_GET_STATIONS", "name": "Get BART Stations", "description": "Get a list of all BART stations with their complete information. This action retrieves information about all BART (Bay Area Rapid Transit) stations including station names, abbreviation codes, geographic coordinates (latitude/longitude), and full addresses. This is useful for finding station locations, getting station codes for other API calls, or building station lookup tools." }, { "slug": "BART_GET_STATION_SCHEDULE", "name": "Get Station Schedule", "description": "Get detailed scheduled departure information for a specific BART station. Returns all trains departing from the station including route line, destination, departure time, bike allowance, crowding level, and platform number. Use this when you need to see all departures from a specific station." }, { "slug": "BART_GET_TRAIN_COUNT", "name": "Get Train Count", "description": "Tool to fetch current count of trains active in the BART system. Use when you need real-time information about how many trains are currently operating." }, { "slug": "BART_LIST_ROUTES", "name": "List BART Routes", "description": "Tool to get a list of all current BART routes/lines with basic information. Use when you need to see all available routes, their colors, directions, or route numbers." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bart_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BART API Key", "type": "string", "description": "Your unique API key for accessing the BART API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "basecamp", "name": "Basecamp", "logo": "https://logos.composio.dev/api/basecamp", "description": "Project management and team collaboration tool by 37signals", "category": "project management", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 142, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BASECAMP_COMPLETE_TODO", "name": "Complete To-Do", "description": "Tool to mark a to-do as completed in Basecamp. Use when you need to complete a to-do item." }, { "slug": "BASECAMP_CREATE_CARD", "name": "Create Card in Column", "description": "Tool to create a new card in a column of a Basecamp card table. Use when you need to add a card to a card table column with optional content and due date." }, { "slug": "BASECAMP_CREATE_CARD_STEP", "name": "Create Step in Card", "description": "Tool to create a step within a card in a Basecamp card table. Use when you need to add a subtask or checklist item to an existing card with optional due date and assignees." }, { "slug": "BASECAMP_CREATE_CHATBOT", "name": "Create Chatbot", "description": "Tool to create a new chatbot in a Basecamp Campfire chat. Use when you need to add an automated bot to a chat room for posting messages and responding to commands." }, { "slug": "BASECAMP_CREATE_CHATBOT_LINE", "name": "Create Chatbot Line", "description": "Tool to post a message as a chatbot to a Basecamp Campfire. Use when you need to post messages via a chatbot integration without OAuth authentication." }, { "slug": "BASECAMP_CREATE_DOCUMENT", "name": "Create Document in Vault", "description": "Tool to create a new document in a Basecamp vault. Use when you need to publish a document in a specific project vault with title, HTML content, and optional publication status." }, { "slug": "BASECAMP_CREATE_PROJECT_CONSTRUCTION", "name": "Create Project from Template", "description": "Tool to create a new project from a Basecamp template asynchronously. Use when you need to instantiate a project based on an existing template. Poll the returned URL to monitor construction progress until status becomes 'completed'." }, { "slug": "BASECAMP_CREATE_TODO", "name": "Create To-Do (Deprecated)", "description": "DEPRECATED: Use BASECAMP_POST_BUCKETS_TODOLISTS_TODOS instead. Tool to create a new to-do in a Basecamp to-do list. Use when you need to add a task with optional description, assignees, and due date." }, { "slug": "BASECAMP_CREATE_TODOLIST_GROUP", "name": "Create To-Do List Group", "description": "Tool to create a new to-do group within a parent to-do list in Basecamp. Use when organizing todos into groups with optional color coding." }, { "slug": "BASECAMP_CREATE_UPLOAD", "name": "Create Upload in Vault", "description": "Tool to create a new upload (file) in a Basecamp vault. Use when you need to create an upload entry for a previously uploaded attachment in a specific project vault." }, { "slug": "BASECAMP_CREATE_VAULT", "name": "Create a Vault", "description": "Tool to create a new vault (folder) within an existing parent vault in a Basecamp project. Use when you need to organize documents and files hierarchically by creating nested vaults." }, { "slug": "BASECAMP_DELETE_BUCKETS_CARD_TABLES_COLUMNS_ON_HOLD", "name": "Delete Card Table Column On-Hold Section", "description": "Tool to remove the on-hold section from a card table column. Use when you need to delete the on-hold section from a column in a Basecamp project's card table." }, { "slug": "BASECAMP_DELETE_BUCKETS_RECORDINGS_PIN", "name": "Unpin Recording", "description": "Tool to unpin a recording (message) in a Basecamp project. Use when you need to remove the pinned status from a message on a message board or project." }, { "slug": "BASECAMP_DELETE_CAMPFIRE_LINE", "name": "Delete Campfire Line", "description": "Tool to delete a Campfire line from a chat conversation. Use when removing a specific message from a Basecamp Campfire chat." }, { "slug": "BASECAMP_DELETE_CHATBOT", "name": "Delete Chatbot", "description": "Tool to delete a chatbot from a Campfire chat. Use when removing a chatbot from the account. Note: Deletion is account-wide and only account administrators can delete chatbots." }, { "slug": "BASECAMP_DELETE_MESSAGE_TYPE", "name": "Delete Message Type", "description": "Tool to delete a message type from a Basecamp project. Use when removing a custom message category. Permanently removes the specified message type." }, { "slug": "BASECAMP_DELETE_WEBHOOKS", "name": "Delete Webhook", "description": "Tool to delete a webhook from a Basecamp project. Use when you need to remove a webhook subscription from a project. Permanently deletes the specified webhook." }, { "slug": "BASECAMP_GET_BUCKETS_CARD_TABLES_LISTS_CARDS", "name": "Get Cards from Card Table List", "description": "Tool to retrieve a paginated list of cards from a card table column. Use when you need to fetch cards from a specific list/column within a Basecamp project's card table." }, { "slug": "BASECAMP_GET_BUCKETS_CATEGORIES", "name": "Get Message Categories", "description": "Tool to retrieve all message types (categories) from a Basecamp project. Use when you need to list all available message categories for organizing messages in a project." }, { "slug": "BASECAMP_GET_BUCKETS_CHATS_INTEGRATIONS", "name": "Get Campfire Chatbot Integrations", "description": "Tool to retrieve all chatbot integrations from a Campfire chat. Use when you need to get the list of chatbots accessible to the account with chat-specific line URLs for posting messages." }, { "slug": "BASECAMP_GET_BUCKETS_CHATS_LINES", "name": "Get Campfire Lines", "description": "Tool to retrieve a paginated list of Campfire lines from a specific chat. Use when you need to fetch messages from a Campfire conversation in a Basecamp project." }, { "slug": "BASECAMP_GET_BUCKETS_INBOXES_FORWARDS", "name": "Get Inbox Forwards", "description": "Tool to retrieve a paginated list of active email forwards from a project's inbox. Use when you need to fetch forwarded emails in a Basecamp inbox." }, { "slug": "BASECAMP_GET_BUCKETS_MESSAGE_BOARDS_MESSAGES", "name": "Get Messages from Message Board", "description": "Tool to retrieve a paginated list of active messages from a message board in a Basecamp project. Use when you need to fetch messages from a specific message board." }, { "slug": "BASECAMP_GET_BUCKETS_QUESTION_ANSWERS", "name": "Get Question Answer by ID", "description": "Tool to retrieve a specific question answer by ID from a Basecamp project. Use when you need to fetch details about an automatic check-in question answer including its content, creator, and associated comments." }, { "slug": "BASECAMP_GET_BUCKETS_QUESTIONNAIRES", "name": "Get Questionnaire", "description": "Tool to retrieve a specific questionnaire (automatic check-ins) from a Basecamp project. Use when you need to fetch details about a questionnaire including its questions count and metadata." }, { "slug": "BASECAMP_GET_BUCKETS_QUESTIONNAIRES_QUESTIONS", "name": "Get Questions from Questionnaire", "description": "Tool to retrieve a paginated list of questions from a questionnaire in a Basecamp project. Use when you need to fetch questions from a specific questionnaire." }, { "slug": "BASECAMP_GET_BUCKETS_QUESTIONS", "name": "Get Question by ID", "description": "Tool to retrieve a specific check-in question by ID from a Basecamp project. Use when you already know the question ID and need its details without listing all questions from a questionnaire." }, { "slug": "BASECAMP_GET_BUCKETS_RECORDINGS_EVENTS", "name": "Get Recording Events", "description": "Tool to retrieve a paginated list of events for a recording. Use when you need to fetch change history from a specific recording in a Basecamp project." }, { "slug": "BASECAMP_GET_BUCKETS_SCHEDULES_ENTRIES", "name": "Get Schedule Entries", "description": "Tool to retrieve a paginated list of schedule entries from a schedule. Use when you need to fetch entries from a specific schedule in a Basecamp project." }, { "slug": "BASECAMP_GET_BUCKETS_TODOLISTS_GROUPS", "name": "Get To-do List Groups", "description": "Tool to retrieve a paginated list of active groups from a to-do list in a Basecamp project. Use when you need to list all groups within a specific to-do list for organizing tasks." }, { "slug": "BASECAMP_GET_BUCKETS_TODOLISTS_TODOS", "name": "Get To-Dos from To-Do List", "description": "Tool to retrieve a paginated list of to-dos from a specific to-do list in a Basecamp project. Use when you need to fetch to-do items from a to-do list, optionally filtering by status or completion state." }, { "slug": "BASECAMP_GET_BUCKETS_TODOS", "name": "Get To-Do by ID", "description": "Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch a single to-do item including its content, title, assignees, completion status, and dates." }, { "slug": "BASECAMP_GET_BUCKETS_TODOSETS_TODOLISTS", "name": "Get Todoset To-Do Lists", "description": "Tool to retrieve a paginated list of to-do lists within a specific to-do set in a Basecamp project. Use when you need to fetch all to-do lists from a to-do set, optionally filtering by status." }, { "slug": "BASECAMP_GET_BUCKETS_UPLOADS", "name": "Get Upload by ID", "description": "Tool to retrieve a specific upload by ID from a Basecamp project vault. Use when you need to fetch details about an uploaded file including its metadata, download URL, and dimensions." }, { "slug": "BASECAMP_GET_BUCKETS_VAULTS", "name": "Get Vault from Project", "description": "Tool to retrieve a specific vault from a Basecamp project. Use when you need details about a vault including its documents, uploads, and nested vaults." }, { "slug": "BASECAMP_GET_BUCKETS_VAULTS_DOCUMENTS", "name": "Get Documents from Vault", "description": "Tool to retrieve a paginated list of active documents from a vault in a Basecamp project. Use when you need to fetch all documents stored in a specific vault." }, { "slug": "BASECAMP_GET_BUCKETS_VAULTS_UPLOADS", "name": "Get Uploads from Vault", "description": "Tool to retrieve a paginated list of active uploads from a vault in a Basecamp project. Use when you need to fetch all uploaded files stored in a specific vault." }, { "slug": "BASECAMP_GET_BUCKETS_VAULTS_VAULTS", "name": "Get Vaults from Parent Vault", "description": "Tool to retrieve a paginated list of vaults nested within a parent vault in a Basecamp project. Use when you need to fetch child vaults from a specific vault." }, { "slug": "BASECAMP_GET_BUCKETS_WEBHOOKS", "name": "Get Project Webhooks", "description": "Tool to retrieve all webhooks configured for a Basecamp project. Use when you need to list all webhook configurations including their payload URLs, event types, and active status." }, { "slug": "BASECAMP_GET_CAMPFIRE", "name": "Get Campfire", "description": "Tool to retrieve a specific Campfire (chat room) by ID from a Basecamp project. Use when you need to get complete Campfire details including metadata, URLs, topic, and creator information." }, { "slug": "BASECAMP_GET_CAMPFIRE_LINE", "name": "Get Campfire Line", "description": "Tool to retrieve a specific Campfire line by ID from a Basecamp project. Use when you need to fetch a single message from a chat transcript." }, { "slug": "BASECAMP_GET_CARD", "name": "Get a specific card by ID", "description": "Tool to get a specific card by ID from a card table. Use when you need to retrieve complete card details including title, description, status, assignees, steps, and metadata." }, { "slug": "BASECAMP_GET_CARD_TABLE", "name": "Get card table (Kanban board)", "description": "Tool to retrieve a card table (Kanban board) for a project. Use when you need to fetch information about a specific card table including its columns, cards count, and subscribers." }, { "slug": "BASECAMP_GET_CARD_TABLE_COLUMN", "name": "Get Card Table Column", "description": "Tool to get a specific column from a card table within a Basecamp project. Use when you need to fetch details about a card table column by its ID." }, { "slug": "BASECAMP_GET_CHATBOT", "name": "Get Chatbot by ID", "description": "Tool to get a specific chatbot by ID from a Basecamp Campfire chat. Use when you need to retrieve details about a chatbot, including its service name, command URL, and lines URL." }, { "slug": "BASECAMP_GET_CHATS", "name": "Get Chats", "description": "Tool to retrieve a paginated list of all active Campfires (chats) visible to the current user. Use when you need to list all available chat rooms in Basecamp." }, { "slug": "BASECAMP_GET_CIRCLES_PEOPLE", "name": "Get Circles People", "description": "Tool to retrieve all people on this Basecamp account who can be pinged. Use when you need to get a list of all pingable users in the account." }, { "slug": "BASECAMP_GET_COMMENT", "name": "Get Comment", "description": "Tool to retrieve a specific comment by ID from a Basecamp project. Use when you need to fetch details about a particular comment including its content, creator, and parent resource." }, { "slug": "BASECAMP_GET_DOCUMENT", "name": "Get Document by ID", "description": "Tool to get a specific document by ID from a Basecamp project bucket. Use when you need to retrieve complete document details including title, content, creator, metadata, and comments count." }, { "slug": "BASECAMP_GET_INBOX", "name": "Get Inbox", "description": "Tool to get the inbox (email forwards) for a Basecamp project. Use when you need to retrieve details about a specific inbox including its forwards count and metadata." }, { "slug": "BASECAMP_GET_MESSAGE", "name": "Get Message by ID", "description": "Tool to retrieve a specific message by ID from a Basecamp project message board. Use when you need to fetch details of a single message including its content, author, and metadata." }, { "slug": "BASECAMP_GET_MESSAGE_BOARD", "name": "Get Message Board", "description": "Tool to get the message board for a project. Use when you need to retrieve details about a specific message board including its title, creator, message count, and URLs." }, { "slug": "BASECAMP_GET_MESSAGE_TYPE", "name": "Get Message Type by ID", "description": "Tool to retrieve a specific message type by ID from a Basecamp project. Use when you need details about a specific message type/category." }, { "slug": "BASECAMP_GET_MY_PROFILE", "name": "Get My Profile", "description": "Tool to retrieve the current user's personal info including profile details, permissions, and settings. Use when you need to get information about the authenticated user." }, { "slug": "BASECAMP_GET_PEOPLE", "name": "Get All People", "description": "Tool to retrieve all people visible to the current user in the Basecamp account. Use when you need to list users, check permissions, or get contact information for team members." }, { "slug": "BASECAMP_GET_PEOPLE_BY_PERSON_ID", "name": "Get Person by ID", "description": "Tool to retrieve the profile for a specific user by their ID. Use when you need to get detailed information about a specific person in the Basecamp account." }, { "slug": "BASECAMP_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific project by its ID with complete details. Use when you need to get comprehensive information about a particular project including its status, metadata, and dock tools configuration." }, { "slug": "BASECAMP_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a paginated list of projects visible to the current user, sorted by most recently created first. Use when you need to list all projects, filter by status (active/archived/trashed), or access project details." }, { "slug": "BASECAMP_GET_PROJECTS_BY_PROJECT_ID", "name": "Get Project by ID", "description": "Tool to retrieve a single project by its ID with full details including dock tools. Use when you need to get information about a specific project that the user has access to." }, { "slug": "BASECAMP_GET_PROJECTS_PEOPLE", "name": "Get Projects People", "description": "Tool to retrieve all active people assigned to a Basecamp project. Use when you need to list all members who have access to a specific project." }, { "slug": "BASECAMP_GET_PROJECTS_RECORDINGS", "name": "Get Projects Recordings", "description": "Tool to retrieve a paginated list of records for a given type of recording across projects. Use when you need to list recordings of a specific type (Message, Document, Todo, etc.) with optional filtering by project, status, and sorting." }, { "slug": "BASECAMP_GET_REPORTS_TIMESHEET", "name": "Get Timesheet Report", "description": "Tool to retrieve all timesheet entries across the Basecamp account within a given timeframe. Use when you need to generate time reports, track hours logged, or analyze time entries by person or project. Without date parameters, returns only the last month of entries." }, { "slug": "BASECAMP_GET_SCHEDULE", "name": "Get Schedule for Project", "description": "Tool to retrieve schedule details for a specific project. Use when you need information about a schedule including entries count and configuration." }, { "slug": "BASECAMP_GET_SCHEDULE_ENTRY", "name": "Get Schedule Entry", "description": "Tool to get a specific schedule entry by ID from a Basecamp project. Use when you need to retrieve details about a scheduled event including its time, participants, and metadata." }, { "slug": "BASECAMP_GET_SUBSCRIPTION", "name": "Get Subscription", "description": "Tool to get subscription information for a recording. Use when you need to check subscription status, view subscriber count, or get detailed information about all subscribers for a specific recording." }, { "slug": "BASECAMP_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve a paginated list of active templates visible to the current user, sorted by most recently created first. Use when you need to list templates or filter by status (active/archived/trashed)." }, { "slug": "BASECAMP_GET_TEMPLATES_BY_TEMPLATE_ID", "name": "Get Template by ID", "description": "Tool to retrieve a single template by its ID with full details including dock tools. Use when you need to get information about a specific template that the user has access to." }, { "slug": "BASECAMP_GET_TEMPLATES_PROJECT_CONSTRUCTIONS", "name": "Get Project Construction Status", "description": "Tool to retrieve the status of a project construction from a template. Use when you need to monitor the progress of a project being created from a template. Can be polled at intervals (no more than once per second) to track construction status." }, { "slug": "BASECAMP_GET_TODO", "name": "Get To-Do by ID", "description": "Tool to retrieve a specific to-do by ID from a Basecamp project. Use when you need to fetch detailed information about a single to-do item including its content, title, assignees, completion status, dates, and parent relationships." }, { "slug": "BASECAMP_GET_TODOLIST", "name": "Get To-Do List", "description": "Tool to retrieve a specific to-do list from a Basecamp project by its ID. Use when you need to get details about a to-do list including its title, description, completion status, and URLs for todos and groups." }, { "slug": "BASECAMP_GET_TODOSET", "name": "Get To-Do Set", "description": "Tool to retrieve a specific to-do set from a Basecamp project. Use when you need to get details about a to-do set, including its completion status and to-do lists count." }, { "slug": "BASECAMP_GET_UPLOAD", "name": "Get Upload", "description": "Tool to get a specific upload by ID from a Basecamp project. Use when you need to retrieve details about an uploaded file including metadata, download URL, and dimensions." }, { "slug": "BASECAMP_GET_WEBHOOK", "name": "Get Webhook by ID", "description": "Tool to retrieve a specific webhook by ID from a Basecamp project. Use when you need details about a webhook including its delivery history." }, { "slug": "BASECAMP_LIST_CHATBOTS", "name": "List Chatbots", "description": "Tool to get all chatbots for a chat/campfire. Use when you need to retrieve the list of chatbot integrations with their line URLs for posting messages." }, { "slug": "BASECAMP_LIST_COMMENTS", "name": "List Comments", "description": "Tool to get all comments on a recording in a Basecamp project. Use when you need to retrieve the list of active comments with their content, creators, and metadata." }, { "slug": "BASECAMP_LIST_MESSAGE_TYPES", "name": "List Message Types", "description": "Tool to retrieve all message types in a Basecamp project. Use when you need to list all available message types for organizing messages in a project." }, { "slug": "BASECAMP_LIST_PROJECT_PEOPLE", "name": "List Project People", "description": "Tool to get all people on a specific Basecamp project. Use when you need to retrieve the list of active members who have access to a particular project." }, { "slug": "BASECAMP_LIST_TODOLISTS", "name": "List To-Do Lists in To-Do Set", "description": "Tool to get all to-do lists in a to-do set within a Basecamp project. Use when you need to retrieve all to-do lists from a specific to-do set, optionally filtering by status (archived or trashed)." }, { "slug": "BASECAMP_LIST_UPLOADS", "name": "List Uploads from Vault", "description": "Tool to retrieve all active uploads from a vault in a Basecamp project. Use when you need to list all uploaded files stored in a specific vault." }, { "slug": "BASECAMP_MOVE_CARD", "name": "Move Card to Column", "description": "Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project." }, { "slug": "BASECAMP_MOVE_CARD_TABLE_COLUMN", "name": "Reorder Card Table Column", "description": "Tool to reorder columns within a Basecamp card table. Use when you need to change the position of a column in a card table by specifying the column to move and its new position." }, { "slug": "BASECAMP_PIN_MESSAGE", "name": "Pin Message", "description": "Tool to pin a message to the top of the message board. Use when you need to feature a message prominently at the top of a message board in a project." }, { "slug": "BASECAMP_POST_ATTACHMENTS", "name": "Upload File Attachment", "description": "Tool to upload a file to Basecamp system. Use when you need to upload a file to get an attachable_sgid reference for use in other operations like creating messages or todos with attachments." }, { "slug": "BASECAMP_POST_BUCKETS_CARD_TABLES_CARDS_MOVES", "name": "Move Card to Column", "description": "Tool to move a card to a different column within a Basecamp card table. Use when you need to relocate a card from one column to another in a project." }, { "slug": "BASECAMP_POST_BUCKETS_CARD_TABLES_CARDS_POSITIONS", "name": "Reposition Step in Card", "description": "Tool to reposition a step within a card in a Basecamp card table. Use when you need to change the order of steps/subtasks within a card by moving a step to a specific position." }, { "slug": "BASECAMP_POST_BUCKETS_CARD_TABLES_COLUMNS", "name": "Create Card Table Column", "description": "Tool to create a column within a Basecamp card table. Use when you need to add a new column to organize cards in a card table project." }, { "slug": "BASECAMP_POST_BUCKETS_CARD_TABLES_COLUMNS_ON_HOLD", "name": "Create On-Hold Section in Column", "description": "Tool to create an on-hold section in a card table column. Use when you need to add an on-hold area to organize cards that are temporarily paused or waiting." }, { "slug": "BASECAMP_POST_BUCKETS_CATEGORIES", "name": "Create Message Category", "description": "Tool to create a new message type (category) in a Basecamp project. Use when you need to create a custom message category for organizing different types of messages in a project." }, { "slug": "BASECAMP_POST_BUCKETS_CHATS_LINES", "name": "Create Campfire Line", "description": "Tool to create a line in a Basecamp Campfire chat. Use when you need to post a message to a specific Campfire chat within a project." }, { "slug": "BASECAMP_POST_BUCKETS_MESSAGE_BOARDS_MESSAGES", "name": "Create Message on Message Board", "description": "Tool to publish a message to a Basecamp message board within a project. Use when you need to create a new message with optional rich HTML content and subscriptions." }, { "slug": "BASECAMP_POST_BUCKETS_RECORDINGS_COMMENTS", "name": "Create Comment on Recording", "description": "Tool to publish a comment on a recording within a Basecamp project. Use when you need to add a comment with rich text to any recording such as a todolist, message, or document." }, { "slug": "BASECAMP_POST_BUCKETS_RECORDINGS_PIN", "name": "Pin Recording", "description": "Tool to pin a recording (message) in a Basecamp project. Use when you need to feature a message prominently at the top of a message board or project." }, { "slug": "BASECAMP_POST_BUCKETS_RECORDINGS_SUBSCRIPTION", "name": "Subscribe to Recording", "description": "Tool to subscribe the current user to a recording for notifications. Use when you need to start watching/subscribing to a specific recording to receive notifications for new comments." }, { "slug": "BASECAMP_POST_BUCKETS_SCHEDULES_ENTRIES", "name": "Create Schedule Entry", "description": "Tool to create a schedule entry in a Basecamp schedule within a project. Use when you need to add a new event with start/end times and optional participants." }, { "slug": "BASECAMP_POST_BUCKETS_TODOLISTS_COMMENTS", "name": "Create Comment on To-Do List", "description": "Tool to add a comment to a to-do list in a Basecamp project. Use when you need to comment on a todolist with feedback, updates, or discussions. All subscribers to the to-do list will be notified." }, { "slug": "BASECAMP_POST_BUCKETS_TODOLISTS_TODOS", "name": "Create To-Do in To-Do List", "description": "Tool to create a to-do in a Basecamp to-do list within a project. Use when you need to add a new to-do item with optional description, assignees, and due date." }, { "slug": "BASECAMP_POST_BUCKETS_TODOS_COMMENTS", "name": "Comment on To-Do", "description": "Tool to add a comment to a to-do in a Basecamp project. Use when you need to add feedback, updates, or discussion to a specific to-do item." }, { "slug": "BASECAMP_POST_BUCKETS_TODOSETS_TODOLISTS", "name": "Create To-Do List in To-Do Set", "description": "Tool to create a new to-do list in a Basecamp to-do set within a project. Use when you need to add a new to-do list with optional HTML description." }, { "slug": "BASECAMP_POST_BUCKETS_WEBHOOKS", "name": "Create Webhook", "description": "Tool to create a new webhook subscription for a Basecamp project. Use when you need to receive event notifications at a specified HTTPS endpoint for project activities." }, { "slug": "BASECAMP_POST_INTEGRATIONS_CHATBOT_KEY_BUCKETS_CHATS_LINES", "name": "Create Campfire Line via Chatbot", "description": "Tool to create a line in a Basecamp Campfire chat using a chatbot key. Use when you need to post messages via a chatbot integration without OAuth authentication." }, { "slug": "BASECAMP_POST_LINEUP_MARKERS", "name": "Create Lineup Marker", "description": "Tool to create an account-wide marker that shows up in the Lineup. Use when you need to add a visual marker to highlight important dates or milestones across all projects." }, { "slug": "BASECAMP_POST_PROJECTS", "name": "Create New Project", "description": "Tool to create a new project in Basecamp with a name and optional description. Use when you need to set up a new project workspace for team collaboration." }, { "slug": "BASECAMP_POST_TEMPLATES", "name": "Create New Template", "description": "Tool to create a new template in Basecamp with a name and optional description. Use when you need to set up a reusable project template for standardizing workflows." }, { "slug": "BASECAMP_PUT_BUCKETS_CARD_TABLES_COLUMNS_COLOR", "name": "Update Card Table Column Color", "description": "Tool to update a card table column's visual color designation in a Basecamp project. Use when you need to change the color of a specific column for better visual organization." }, { "slug": "BASECAMP_PUT_BUCKETS_CARD_TABLES_STEPS", "name": "Update Card Table Step", "description": "Tool to update an existing card table step in Basecamp. Use when you need to modify a step's title, due date, or assignees. Omitted parameters remain unchanged." }, { "slug": "BASECAMP_PUT_BUCKETS_CARD_TABLES_STEPS_COMPLETIONS", "name": "Mark Step Completion Status", "description": "Tool to mark a card table step as completed or uncompleted in Basecamp. Use when you need to toggle the completion status of a step by setting completion to \"on\" or \"off\"." }, { "slug": "BASECAMP_PUT_BUCKETS_CATEGORIES", "name": "Update Message Category", "description": "Tool to update an existing message type (category) in a Basecamp project. Use when you need to modify the name or icon of a message category." }, { "slug": "BASECAMP_PUT_BUCKETS_CHATS_INTEGRATIONS", "name": "Update Chatbot Integration", "description": "Tool to update an existing chatbot integration in a Basecamp Campfire chat. Use when you need to change the service name or command URL of a chatbot." }, { "slug": "BASECAMP_PUT_BUCKETS_COMMENTS", "name": "Update Comment", "description": "Tool to update comment content in a Basecamp project. Use when you need to modify the content of an existing comment." }, { "slug": "BASECAMP_PUT_BUCKETS_DOCUMENTS", "name": "Update Document in Bucket", "description": "Tool to update an existing document in a Basecamp project bucket. Use when you need to modify a document's title, content, or both. Omitted parameters remain unchanged." }, { "slug": "BASECAMP_PUT_BUCKETS_MESSAGES", "name": "Update Message", "description": "Tool to update a message's subject, content, or category in a Basecamp project. Use when you need to modify an existing message's title, body text, or categorization." }, { "slug": "BASECAMP_PUT_BUCKETS_RECORDINGS_CLIENT_VISIBILITY", "name": "Update Recording Client Visibility", "description": "Tool to update client visibility for a recording in Basecamp. Use when you need to show or hide a recording from clients. Returns 403 if the recording inherits visibility from parent resource." }, { "slug": "BASECAMP_PUT_BUCKETS_RECORDINGS_STATUS_ACTIVE", "name": "Unarchive Recording", "description": "Tool to unarchive a recording in a Basecamp project by marking it as active. Use when you need to restore an archived recording to make it visible again in the project." }, { "slug": "BASECAMP_PUT_BUCKETS_RECORDINGS_STATUS_ARCHIVED", "name": "Archive Recording", "description": "Tool to mark a recording as archived in a Basecamp project. Use when you need to archive a recording to remove it from active view while preserving it for reference." }, { "slug": "BASECAMP_PUT_BUCKETS_RECORDINGS_STATUS_TRASHED", "name": "Trash Recording", "description": "Tool to mark a recording as trashed in a Basecamp project. Use when you need to move a recording to trash without permanently deleting it." }, { "slug": "BASECAMP_PUT_BUCKETS_RECORDINGS_SUBSCRIPTION", "name": "Update Recording Subscription", "description": "Tool to update recording subscriptions by adding or removing subscribers. Use when you need to manage who receives notifications for a specific recording. At least one of subscriptions or unsubscriptions must be provided." }, { "slug": "BASECAMP_PUT_BUCKETS_SCHEDULE_ENTRIES", "name": "Update Schedule Entry", "description": "Tool to update an existing schedule entry in a Basecamp schedule. Use when you need to modify an entry's title, times, description, or participants. Omitted parameters remain unchanged." }, { "slug": "BASECAMP_PUT_BUCKETS_SCHEDULES", "name": "Update Schedule Configuration", "description": "Tool to update a schedule configuration in a Basecamp project. Use when you need to change whether the schedule includes due assignments from to-dos, cards and steps." }, { "slug": "BASECAMP_PUT_BUCKETS_TODOLISTS_GROUPS_POSITION", "name": "Reposition To-Do List Group", "description": "Tool to reposition a to-do list group within its parent to-do list in a Basecamp project. Use when you need to change the order of to-do list groups by moving a group to a specific position." }, { "slug": "BASECAMP_PUT_BUCKETS_TODOS", "name": "Update To-Do in Bucket", "description": "Tool to update an existing to-do in a Basecamp project. Use when you need to modify a to-do's content, description, assignees, dates, or notification settings. Note: Pass all existing parameters along with those being updated to prevent clearing values." }, { "slug": "BASECAMP_PUT_BUCKETS_TODOS_POSITION", "name": "Reposition To-Do", "description": "Tool to change the position of a to-do within its list in a Basecamp project. Use when you need to reorder to-dos by moving a specific to-do to a new position." }, { "slug": "BASECAMP_PUT_BUCKETS_UPLOADS", "name": "Update Upload in Bucket", "description": "Tool to update an existing upload in a Basecamp project bucket. Use when you need to modify an upload's description or filename. Omitted parameters remain unchanged." }, { "slug": "BASECAMP_PUT_BUCKETS_VAULTS", "name": "Update Vault Title", "description": "Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket." }, { "slug": "BASECAMP_PUT_BUCKETS_WEBHOOKS", "name": "Update Webhook", "description": "Tool to update an existing webhook in a Basecamp project. Use when you need to modify the webhook's URL, event types, or active status." }, { "slug": "BASECAMP_PUT_PROJECTS", "name": "Update Project", "description": "Tool to update an existing project's name, description, access policy, or schedule in Basecamp. Use when you need to modify project details or settings. Note: name parameter is required; schedule dates must be provided as pairs (both start_date and end_date)." }, { "slug": "BASECAMP_PUT_PROJECTS_PEOPLE_USERS", "name": "Grant or Revoke Project Access", "description": "Tool to grant or revoke project access for users in Basecamp. Use when you need to add existing users to a project, create new users with access, or remove users from a project. At least one of grant, revoke, or create must be provided." }, { "slug": "BASECAMP_PUT_TEMPLATES", "name": "Update Template", "description": "Tool to update a template's name and description in Basecamp. Use when you need to modify template metadata. Omitted parameters remain unchanged." }, { "slug": "BASECAMP_REPOSITION_CARD_STEP", "name": "Reposition Card Step", "description": "Tool to change the position of a step within a card. Use when you need to reorder steps in a card table card by moving a step to a specific position." }, { "slug": "BASECAMP_TRASH_PROJECT", "name": "Trash Project", "description": "Tool to mark a Basecamp project as trashed. Use when you need to trash a project. Trashed projects will be permanently deleted after 30 days." }, { "slug": "BASECAMP_TRASH_TEMPLATE", "name": "Trash Template", "description": "Tool to mark a template as trashed in Basecamp. Use when you need to soft-delete a template; it will be permanently removed after 30 days." }, { "slug": "BASECAMP_UNCOMPLETE_TODO", "name": "Uncomplete To-Do", "description": "Tool to mark a to-do as uncompleted in Basecamp. Use when you need to reverse the completion status of a completed to-do item." }, { "slug": "BASECAMP_UNPIN_MESSAGE", "name": "Unpin Message", "description": "Tool to unpin a message from the message board. Use when you need to remove the pinned status from a message that was previously pinned to the top of a message board." }, { "slug": "BASECAMP_UNSUBSCRIBE_CURRENT_USER", "name": "Unsubscribe Current User from Recording", "description": "Tool to unsubscribe the current user from a recording. Use when you need to stop receiving notifications for a specific recording. This is an idempotent operation that returns success even if the user wasn't previously subscribed." }, { "slug": "BASECAMP_UNWATCH_CARD_TABLE_COLUMN", "name": "Stop Watching Card Table Column", "description": "Tool to stop watching a card table column. Use when you want to unsubscribe from a specific column and no longer receive notifications about changes to it." }, { "slug": "BASECAMP_UPDATE_CARD", "name": "Update Card", "description": "Tool to update a card's details in a Basecamp card table. Use when you need to modify a card's title, content, due date, or assignees." }, { "slug": "BASECAMP_UPDATE_CARD_TABLE_COLUMN", "name": "Update Card Table Column", "description": "Tool to update a card table column's properties in a Basecamp project. Use when you need to modify a column's title or description." }, { "slug": "BASECAMP_UPDATE_DOCUMENT", "name": "Update Document", "description": "Tool to update an existing document's title or content in a Basecamp project. Use when you need to modify document title, content, or both." }, { "slug": "BASECAMP_UPDATE_TODO", "name": "Update To-Do", "description": "Tool to update a to-do's content, assignees, or due date in a Basecamp project. Use when you need to modify an existing to-do item. Pass all existing parameters along with those being updated to prevent clearing values." }, { "slug": "BASECAMP_UPDATE_TODOLIST", "name": "Update To-Do List", "description": "Tool to update a to-do list's name or description in a Basecamp project. Use when you need to modify an existing to-do list's title or HTML description. Pass all existing parameters along with those being updated to prevent clearing values." }, { "slug": "BASECAMP_UPDATE_VAULT", "name": "Update Vault Title", "description": "Tool to update a vault's title in a Basecamp project. Use when you need to rename a vault within a specific project bucket." }, { "slug": "BASECAMP_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validates Basecamp API credentials by verifying the OAuth token and retrieving authorization details. Returns user identity, token expiration, and accessible accounts. Use this action when you need to verify that API credentials are valid and working correctly before making other API calls." }, { "slug": "BASECAMP_WATCH_CARD_TABLE_COLUMN", "name": "Watch Card Table Column", "description": "Tool to start watching a card table column in a Basecamp project. Use when you need to subscribe to a specific column to receive notifications about changes." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "basecamp_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your numeric Basecamp account ID — the number after 3.basecamp.com/ in your browser address bar when logged in (e.g. 5855817). Not your email.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "baselinker", "name": "Baselinker", "logo": "https://logos.composio.dev/api/baselinker", "description": "BaseLinker is a comprehensive e-commerce management platform that integrates with various marketplaces, online stores, carriers, and accounting systems to streamline order processing, inventory management, and sales automation.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 106, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BASELINKER_ADD_INVENTORY", "name": "Add Inventory", "description": "Tool to add or update a BaseLinker catalog (inventory). Use when you need to create a new catalog or update an existing one with the same identifier." }, { "slug": "BASELINKER_ADD_INVENTORY_CATEGORY", "name": "Add Inventory Category", "description": "Tool to add or update a category in the BaseLinker catalog. Use when you need to create a new category or update an existing one. Adding a category with the same identifier again updates the previously saved category." }, { "slug": "BASELINKER_ADD_INVENTORY_DOCUMENT", "name": "Add Inventory Document", "description": "Tool to create a new inventory document in BaseLinker storage. Use when you need to create goods receipts, issues, or transfers. Documents are created as drafts and require confirmation via user action or setInventoryDocumentStatusConfirmed API method." }, { "slug": "BASELINKER_ADD_INVENTORY_MANUFACTURER", "name": "Add Inventory Manufacturer", "description": "Tool to add or update a manufacturer in the BaseLinker catalog. Use when you need to create a new manufacturer or update an existing one. Adding a manufacturer with the same identifier again updates the previously saved manufacturer." }, { "slug": "BASELINKER_ADD_INVENTORY_PAYER", "name": "Add Inventory Payer", "description": "Tool to add a new payer or update an existing one in BaseLinker storage. Use when you need to create a new payer with contact details or update an existing payer's information." }, { "slug": "BASELINKER_ADD_INVENTORY_PRICE_GROUP", "name": "Add Inventory Price Group", "description": "Tool to create or update a price group in BaseLinker storage. Use when you need to define pricing tiers (e.g., wholesale, retail, VIP) that can be later assigned to inventory items via addInventory method." }, { "slug": "BASELINKER_ADD_INVENTORY_PRODUCT", "name": "Add Inventory Product", "description": "Add a new product to BaseLinker catalog or update an existing product. Use when creating inventory items or modifying product details like SKU, price, stock, dimensions, and text fields. Provide product_id to update existing products, omit it to create new ones." }, { "slug": "BASELINKER_ADD_INVENTORY_PURCHASE_ORDER", "name": "Add Inventory Purchase Order", "description": "Tool to create a new purchase order in BaseLinker storage. Orders are created as drafts by default. Use when you need to create a new purchase order for inventory management." }, { "slug": "BASELINKER_ADD_INVENTORY_PURCHASE_ORDER_ITEMS", "name": "Add Inventory Purchase Order Items", "description": "Tool to add items to an existing purchase order in BaseLinker. Use when you need to add products to a purchase order that has already been created." }, { "slug": "BASELINKER_ADD_INVENTORY_SUPPLIER", "name": "Add Inventory Supplier", "description": "Tool to add a new supplier or update an existing one in BaseLinker storage. Use when you need to manage supplier information for inventory management. If supplier_id is provided, the existing supplier will be updated; otherwise, a new supplier will be created." }, { "slug": "BASELINKER_ADD_INVENTORY_WAREHOUSE", "name": "Add Inventory Warehouse", "description": "Tool to add a new warehouse or update an existing warehouse in BaseLinker inventories. Use when you need to create new warehouse locations for inventory management or update warehouse details. Adding a warehouse with the same identifier again will update the previously saved warehouse. The method does not allow editing warehouses created automatically for external stocks." }, { "slug": "BASELINKER_ADD_INVOICE", "name": "Add Invoice", "description": "Tool to issue an order invoice in BaseLinker. Use when you need to generate an invoice for an existing order using a specific numbering series." }, { "slug": "BASELINKER_ADD_INVOICE_CORRECTION", "name": "Add Invoice Correction", "description": "Tool to issue an order invoice correction. Use when correcting pricing errors, handling returns, or updating invoice data. Either original_invoice_id or return_order_id must be provided." }, { "slug": "BASELINKER_ADD_ORDER", "name": "Add Order", "description": "Tool to add a new order to the BaseLinker order manager. Use when you need to create a new order with customer details, products, and delivery information." }, { "slug": "BASELINKER_ADD_ORDER_BY_SPLIT", "name": "Add Order By Split", "description": "Tool to create a new order by splitting selected products from an existing order. Use when you need to split an order into multiple shipments or separate deliveries. The new order inherits all customer details, addresses, and settings from the original order, with only the specified products and optional delivery costs moved to it." }, { "slug": "BASELINKER_ADD_ORDER_DUPLICATE", "name": "Add Order Duplicate", "description": "Tool to add a new order by duplicating an existing order in BaseLinker. The new order will have the same data as the original order but with a different ID." }, { "slug": "BASELINKER_ADD_ORDER_RETURN", "name": "Add Order Return", "description": "Tool to add a new order return to BaseLinker. Use when creating a return for an order. Requires status_id (get from getOrderReturnStatusList), date_add (Unix timestamp), currency (3-letter code), and refunded status." }, { "slug": "BASELINKER_ADD_ORDER_RETURN_PRODUCT", "name": "Add Order Return Product", "description": "Tool to add a new product to an existing order return in BaseLinker. Use when a customer is returning items and you need to register the returned products." }, { "slug": "BASELINKER_ADD_SHOP_CATEGORY", "name": "Add Shop Category", "description": "Tool to add a new category to BaseLinker storage (shops, warehouses, or BaseLinker inventory). Use when you need to create a new category in a connected storage's category structure. Requires a storage_id which can be obtained from GetExternalStoragesList or use 'bl_1' for BaseLinker inventory." }, { "slug": "BASELINKER_CREATE_PACKAGE_MANUAL", "name": "Create Package Manual", "description": "Tool to register shipping details for orders when shipments are created outside BaseLinker. Use when you need to add tracking numbers and courier information for manually created shipments. Supports marking packages as return shipments." }, { "slug": "BASELINKER_DELETE_INVENTORY", "name": "Delete Inventory", "description": "Tool to delete a catalog from BaseLinker storage. Use when you need to permanently remove an inventory/catalog." }, { "slug": "BASELINKER_DELETE_INVENTORY_CATEGORY", "name": "Delete Inventory Category", "description": "Tool to remove categories from BaseLinker warehouse. Along with the category, the products contained therein are removed (however, this does not apply to products in subcategories). The subcategories will be changed to the highest level categories." }, { "slug": "BASELINKER_DELETE_INVENTORY_MANUFACTURER", "name": "Delete Inventory Manufacturer", "description": "Tool to remove a manufacturer from the BaseLinker catalog. Use when you need to delete a manufacturer that is no longer needed or was added by mistake." }, { "slug": "BASELINKER_DELETE_INVENTORY_PAYER", "name": "Delete Inventory Payer", "description": "Tool to remove a payer from BaseLinker storage. Use when you need to delete an existing payer entry by its ID." }, { "slug": "BASELINKER_DELETE_INVENTORY_PRICE_GROUP", "name": "Delete Inventory Price Group", "description": "Tool to remove a price group from BaseLinker storage. Use when you need to delete an existing price group by its identifier." }, { "slug": "BASELINKER_DELETE_INVENTORY_PRODUCT", "name": "Delete Inventory Product", "description": "Tool to remove a product from the BaseLinker catalog. Use when you need to permanently delete an inventory product by its ID." }, { "slug": "BASELINKER_DELETE_INVENTORY_WAREHOUSE", "name": "Delete Inventory Warehouse", "description": "Tool to remove a warehouse from BaseLinker inventories. Use when you need to delete a warehouse that is no longer needed. Note: This method does not allow removal of warehouses created automatically for external stock management (shops, wholesalers, etc.)." }, { "slug": "BASELINKER_DELETE_ORDER_PRODUCT", "name": "Delete Order Product", "description": "Tool to remove a specific product from an order in BaseLinker. Use when you need to delete an order item without canceling the entire order." }, { "slug": "BASELINKER_DELETE_ORDER_RETURN_PRODUCT", "name": "Delete Order Return Product", "description": "Tool to remove a specific product from an order return in BaseLinker. Use when you need to delete a product item from an existing return request." }, { "slug": "BASELINKER_DELETE_ORDERS", "name": "Delete Orders", "description": "Tool to delete multiple orders from BaseLinker order manager. Use when you need to permanently remove orders from the system." }, { "slug": "BASELINKER_GET_CONNECT_INTEGRATION_CONTRACTORS", "name": "Get Connect Integration Contractors", "description": "Tool to retrieve a list of contractors connected to a selected Base Connect integration. Use when you need to discover available contractors for a specific integration before performing contractor-specific operations." }, { "slug": "BASELINKER_GET_CONNECT_INTEGRATIONS", "name": "Get Connect Integrations", "description": "Tool to retrieve a list of all Base Connect integrations on this account. Returns both integrations created on the account and integrations to which the account has connected." }, { "slug": "BASELINKER_GET_COURIER_ACCOUNTS", "name": "Get Courier Accounts", "description": "Tool to retrieve the list of accounts connected to a given courier. Use when you need to identify available courier accounts before performing shipping operations." }, { "slug": "BASELINKER_GET_COURIER_FIELDS", "name": "Get Courier Fields", "description": "Tool to retrieve the form fields required for creating shipments with a specific courier. Use when you need to discover which fields are required or optional for shipment creation." }, { "slug": "BASELINKER_GET_COURIER_PACKAGES_STATUS_HISTORY", "name": "Get Courier Packages Status History", "description": "Tool to retrieve the history of status changes for courier packages. Use when you need to track the delivery progress of shipments through their complete status timeline. Returns chronological status updates for up to 100 packages per request." }, { "slug": "BASELINKER_GET_COURIERS_LIST", "name": "Get Couriers List", "description": "Tool to retrieve a list of available couriers from BaseLinker. Use when you need to discover which shipping carriers are configured before creating packages or querying courier-specific fields." }, { "slug": "BASELINKER_GET_EXTERNAL_STORAGE_PRODUCTS_QUANTITY", "name": "Get External Storage Products Quantity", "description": "Retrieve stock quantities from an external storage (shop/wholesaler) connected to BaseLinker. Use this tool to check current inventory levels for products in external integrations. Returns product IDs with their quantities, including variant-level stock if applicable." }, { "slug": "BASELINKER_GET_EXTERNAL_STORAGES_LIST", "name": "Get External Storages List", "description": "Retrieve a list of external storages (shops, warehouses, wholesalers) connected to BaseLinker that can be referenced via API. Returns storage IDs (e.g., 'shop_2444', 'warehouse_1334'), names, and supported API methods for each storage. Use this to discover available integrations before calling storage-specific methods like getExternalStorageProductsList." }, { "slug": "BASELINKER_GET_INVENTORIES", "name": "Get Inventories", "description": "Tool to retrieve a list of catalogs (inventories) available in the BaseLinker storage. Use when you need to discover available catalogs and their configurations before performing inventory-specific operations." }, { "slug": "BASELINKER_GET_INVENTORY_AVAILABLE_TEXT_FIELD_KEYS", "name": "Get Inventory Available Text Field Keys", "description": "Tool to retrieve a list of product text fields that can be overwritten for a specific integration. Use when you need to discover which text fields are available for modification within a given inventory catalog." }, { "slug": "BASELINKER_GET_INVENTORY_CATEGORIES", "name": "Get Inventory Categories", "description": "Tool to retrieve a list of categories for a BaseLinker catalog. Use when you need to fetch category hierarchies for inventory management or product organization." }, { "slug": "BASELINKER_GET_INVENTORY_DOCUMENT_ITEMS", "name": "Get Inventory Document Items", "description": "Tool to retrieve items from inventory documents in BaseLinker. Use when you need to fetch product details from a specific document with support for pagination (100 items per page)." }, { "slug": "BASELINKER_GET_INVENTORY_DOCUMENTS", "name": "Get Inventory Documents", "description": "Tool to retrieve a list of inventory documents. Use when you need to fetch inventory records with optional filters for ID, type, status, date range, warehouse, or pagination." }, { "slug": "BASELINKER_GET_INVENTORY_DOCUMENT_SERIES", "name": "Get Inventory Document Series", "description": "Tool to retrieve available inventory document series. Use when you need to assign a numbering series to a new inventory document." }, { "slug": "BASELINKER_GET_INVENTORY_EXTRA_FIELDS", "name": "Get Inventory Extra Fields", "description": "Tool to retrieve extra fields defined for BaseLinker catalog inventory items. Use before fetching or updating inventory products to list available custom fields." }, { "slug": "BASELINKER_GET_INVENTORY_INTEGRATIONS", "name": "Get Inventory Integrations", "description": "Tool to retrieve a list of integrations where text values in the catalog can be overwritten. Use when you need to discover which sales channels support text customization and what languages are available for each integration." }, { "slug": "BASELINKER_GET_INVENTORY_MANUFACTURERS", "name": "Get Inventory Manufacturers", "description": "Tool to retrieve a list of manufacturers from the BaseLinker catalog. Use when you need to view all manufacturers available in the system before adding or modifying manufacturer information." }, { "slug": "BASELINKER_GET_INVENTORY_PAYERS", "name": "Get Inventory Payers", "description": "Tool to retrieve a list of payers available in BaseLinker storage. Use when you need to list payers, optionally filtered by ID or name." }, { "slug": "BASELINKER_GET_INVENTORY_PRICE_GROUPS", "name": "Get Inventory Price Groups", "description": "Tool to retrieve price groups existing in BaseLinker storage. Use when you need to discover available pricing tiers before assigning them to inventory items or performing price-related operations." }, { "slug": "BASELINKER_GET_INVENTORY_PRINTOUT_TEMPLATES", "name": "Get Inventory Printout Templates", "description": "Tool to retrieve a list of all configured printout templates available for inventory (products). Use when you need to discover available printout templates before generating product documents." }, { "slug": "BASELINKER_GET_INVENTORY_PRODUCT_LOGS", "name": "Get Inventory Product Logs", "description": "Tool to retrieve a list of events related to product changes in the BaseLinker catalog. Use when tracking product modification history, auditing changes, or monitoring inventory updates." }, { "slug": "BASELINKER_GET_INVENTORY_PRODUCTS_DATA", "name": "Get Inventory Products Data", "description": "Tool to retrieve detailed data for selected products from the BaseLinker inventory. Use when you need comprehensive product information including SKU, prices, stock, dimensions, descriptions, images, variants, and bundle details." }, { "slug": "BASELINKER_GET_INVENTORY_PRODUCTS_LIST", "name": "Get Inventory Products List", "description": "Tool to retrieve basic data of chosen products from BaseLinker catalogs. Use when you need to list products with optional filtering by ID, category, EAN, SKU, name, price range, or stock levels. Supports pagination for large catalogs (1000 products per page)." }, { "slug": "BASELINKER_GET_INVENTORY_PRODUCTS_PRICES", "name": "Get Inventory Products Prices", "description": "Retrieve gross prices of products from BaseLinker inventories. Use when you need to get pricing information for products and their variants across different price groups. Supports pagination for large product catalogs." }, { "slug": "BASELINKER_GET_INVENTORY_PRODUCTS_STOCK", "name": "Get Inventory Products Stock", "description": "Tool to retrieve stock data of products from BaseLinker catalogs. Use when you need to check current inventory levels, reservations, or variant stock across warehouses. Results are paginated at 1000 products per page." }, { "slug": "BASELINKER_GET_INVENTORY_PURCHASE_ORDER_ITEMS", "name": "Get Inventory Purchase Order Items", "description": "Tool to retrieve items from a specific purchase order in BaseLinker. Use when you need to fetch product details from a purchase order with support for pagination (100 items per page)." }, { "slug": "BASELINKER_GET_INVENTORY_PURCHASE_ORDERS", "name": "Get Inventory Purchase Orders", "description": "Tool to retrieve a list of purchase orders from BaseLinker storage. Use when you need to fetch purchase orders with optional filters like date range, supplier or pagination." }, { "slug": "BASELINKER_GET_INVENTORY_PURCHASE_ORDER_SERIES", "name": "Get Inventory Purchase Order Series", "description": "Tool to retrieve a list of purchase order document series. Use when you need to select a numbering series for a new purchase order." }, { "slug": "BASELINKER_GET_INVENTORY_SUPPLIERS", "name": "Get Inventory Suppliers", "description": "Tool to retrieve a list of suppliers available in BaseLinker storage. Use when you need to list suppliers, optionally filtered by ID or name." }, { "slug": "BASELINKER_GET_INVENTORY_TAGS", "name": "Get Inventory Tags", "description": "Tool to retrieve a list of tags for a BaseLinker catalog. Use when you need to view all tags available in the system before categorizing or filtering inventory items." }, { "slug": "BASELINKER_GET_INVENTORY_WAREHOUSES", "name": "Get Inventory Warehouses", "description": "Tool to retrieve a list of warehouses available in BaseLinker inventories. Use when you need to discover available warehouse locations before performing inventory or stock operations. Returns warehouses created manually as well as those created automatically for external stocks (shops, wholesalers)." }, { "slug": "BASELINKER_GET_INVOICE_FILE", "name": "Get Invoice File", "description": "Tool to retrieve an invoice file from BaseLinker in base64-encoded format. Use when you need to download an invoice document generated by BaseLinker or from an external accounting system." }, { "slug": "BASELINKER_GET_INVOICES", "name": "Get Invoices", "description": "Download invoices from BaseLinker order manager with optional filtering. Use this tool to: - Fetch all invoices from a specific date onwards - Retrieve a single invoice by ID or order ID - Filter invoices by numbering series - Paginate through invoices using id_from parameter Returns up to 100 invoices per request. Use getSeries to get available series IDs for filtering." }, { "slug": "BASELINKER_GET_JOURNAL_LIST", "name": "Get Journal List", "description": "Tool to download order event logs from the last 3 days. Use when you need to track order activities, changes, or events. IMPORTANT: This method must be activated by BaseLinker support on your account. If not activated, it returns an empty response. Events include order creation, status changes, payments, invoices, receipts, product modifications, and package operations. Use last_log_id to paginate through results incrementally." }, { "slug": "BASELINKER_GET_NEW_RECEIPTS", "name": "Get New Receipts", "description": "Tool to retrieve receipts waiting to be issued. Use after confirming fiscal printer availability; fetch pending receipts and mark them with setOrderReceipt." }, { "slug": "BASELINKER_GET_ORDER_EXTRA_FIELDS", "name": "Get Order Extra Fields", "description": "Tool to retrieve extra fields defined for orders. Use before fetching orders with include_custom_extra_fields to list available custom order fields." }, { "slug": "BASELINKER_GET_ORDER_PACKAGES", "name": "Get Order Packages", "description": "Tool to download shipments previously created for a selected order. Use when you need to retrieve tracking numbers, courier information, and delivery status for order packages." }, { "slug": "BASELINKER_GET_ORDER_PAYMENTS_HISTORY", "name": "Get Order Payments History", "description": "Tool to retrieve payment history for a selected order, including external payment identifiers from payment gateways. Use when you need to track payment events for an order. One order can have multiple payment history entries due to surcharges, order value changes, or manual payment editing." }, { "slug": "BASELINKER_GET_ORDER_PICK_PACK_HISTORY", "name": "Get Order Pick Pack History", "description": "Tool to retrieve pick and pack history for a selected order. Use when you need to track the fulfillment timeline and events for an order (reservations, picking, packing, photography). Returns chronological list of pick/pack events with timestamps and responsible profiles." }, { "slug": "BASELINKER_GET_ORDER_PRINTOUT_TEMPLATES", "name": "Get Order Printout Templates", "description": "Tool to retrieve a list of all configured printout templates available for orders. Use when you need to discover available printout templates before generating order documents." }, { "slug": "BASELINKER_GET_ORDER_RETURN_EXTRA_FIELDS", "name": "Get Order Return Extra Fields", "description": "Tool to retrieve extra fields defined for order returns. Use before calling getOrderReturns with include_custom_extra_fields to list available custom fields. Field values can be set via setOrderReturnFields." }, { "slug": "BASELINKER_GET_ORDER_RETURN_JOURNAL_LIST", "name": "Get Order Return Journal List", "description": "Tool to download return event logs from the last 3 days in BaseLinker. Use when tracking return order history, monitoring return status changes, or auditing return-related activities. Returns events like return creation, status changes, product modifications, and refund creation." }, { "slug": "BASELINKER_GET_ORDER_RETURN_PAYMENTS_HISTORY", "name": "Get Order Return Payments History", "description": "Tool to retrieve payment history for a selected order return, including external payment identifiers from the payment gateway. Use when you need to track payment events, surcharges, order value changes, or manual payment edits for a return." }, { "slug": "BASELINKER_GET_ORDER_RETURN_PRODUCT_STATUSES", "name": "Get Order Return Product Statuses", "description": "Tool to retrieve a list of order return product statuses from BaseLinker. Use when you need to identify valid status IDs for return items, or to map status IDs to human-readable names." }, { "slug": "BASELINKER_GET_ORDER_RETURN_REASONS_LIST", "name": "Get Order Return Reasons List", "description": "Tool to retrieve a list of order return reasons. Use when you need to discover available return reasons before setting return fields with setOrderReturnFields." }, { "slug": "BASELINKER_GET_ORDER_RETURNS", "name": "Get Order Returns", "description": "Download order returns from BaseLinker return manager with optional filtering. Use this tool to: - Fetch returns from a specific date onwards using date_from parameter - Retrieve a single return by return_id - Filter returns by source order, status, or marketplace source - Paginate through returns using id_from parameter Returns up to 100 order returns per request. For complete return data including custom fields, set include_custom_extra_fields=true. Use include_connect_data=true for Base Connect integration info." }, { "slug": "BASELINKER_GET_ORDER_RETURN_STATUS_LIST", "name": "Get Order Return Status List", "description": "Tool to retrieve order return statuses created in the BaseLinker order manager. Use when you need to map return status IDs to human-readable names." }, { "slug": "BASELINKER_GET_ORDERS", "name": "Get Orders", "description": "Download orders from BaseLinker order manager with optional filtering. Use this tool to: - Fetch all orders from a specific date onwards - Retrieve a single order by ID - Filter orders by status, email, or marketplace source - Paginate through orders using id_from parameter Returns up to 100 orders per request. For confirmed orders only, omit get_unconfirmed_orders. Tip: Use getOrderStatusList to get status IDs for filtering." }, { "slug": "BASELINKER_GET_ORDERS_BY_PHONE", "name": "Get Orders by Phone", "description": "Search for orders associated with a specific phone number in BaseLinker. Use when identifying callers in phone recognition systems or finding order history by phone. Returns basic order information including status, recipient names, and timestamps." }, { "slug": "BASELINKER_GET_ORDER_SOURCES", "name": "Get Order Sources", "description": "Tool to retrieve types of order sources along with their IDs from BaseLinker. Use when you need to understand available order sources for filtering orders or mapping order_source field values from getOrders method." }, { "slug": "BASELINKER_GET_ORDER_STATUS_LIST", "name": "Get Order Status List", "description": "Tool to retrieve a list of order statuses created in the BaseLinker order manager. Use when you need to map status IDs to human-readable names." }, { "slug": "BASELINKER_GET_ORDER_TRANSACTION_DATA", "name": "Get Order Transaction Data", "description": "Tool to retrieve transaction details for a selected order. Use when you need marketplace transaction IDs, fulfillment data, or detailed tax breakdowns for an order." }, { "slug": "BASELINKER_GET_PACKAGE_DETAILS", "name": "Get Package Details", "description": "Tool to get detailed information about a package. If the package contains multiple subpackages, information about all of them is included in the response. Use when you need comprehensive package dimensions, weight, COD, insurance, and shipping cost details." }, { "slug": "BASELINKER_GET_PICK_PACK_CARTS", "name": "Get PickPack Carts", "description": "Tool to retrieve a list of all PickPack carts belonging to the authenticated user. Use when you need to discover available carts and their details (ID, name, color) before performing cart-specific operations." }, { "slug": "BASELINKER_GET_PROTOCOL", "name": "Get Protocol", "description": "Tool to download a parcel protocol for selected shipments. Use when you need to retrieve shipping protocol documents (PDF or HTML) for packages sent via a courier. The protocol is available only if supported by the chosen courier." }, { "slug": "BASELINKER_GET_RECEIPTS", "name": "Get Receipts", "description": "Tool to retrieve issued receipts from BaseLinker. Use when you need to fetch historical receipt data. Max 100 receipts returned per request." }, { "slug": "BASELINKER_GET_REQUEST_PARCEL_PICKUP_FIELDS", "name": "Get Request Parcel Pickup Fields", "description": "Tool to retrieve additional fields for a parcel pickup request from a specific courier. Use when preparing to request a parcel pickup and need to know which additional information the courier requires (e.g., pickup time, contact details, special instructions)." }, { "slug": "BASELINKER_GET_SERIES", "name": "Get Series", "description": "Tool to download invoice/receipt numbering series. Use when you need to retrieve all series configurations before issuing documents." }, { "slug": "BASELINKER_GET_STORAGES_LIST", "name": "Get Storages List", "description": "Tool to download a list of available storages accessible via API. Use when you need to discover storage endpoints and capabilities before performing storage-specific operations." }, { "slug": "BASELINKER_RUN_ORDER_MACRO_TRIGGER", "name": "Run Order Macro Trigger", "description": "Tool to run personal trigger for orders automatic actions. Use when you need to execute a specific automation trigger on an order." }, { "slug": "BASELINKER_RUN_PRODUCT_MACRO_TRIGGER", "name": "Run Product Macro Trigger", "description": "Tool to execute a personal trigger for products automatic actions. Use when you need to manually run a custom event trigger for a specific product in BaseLinker inventory." }, { "slug": "BASELINKER_RUN_REQUEST_PARCEL_PICKUP", "name": "Run Request Parcel Pickup", "description": "Tool to request a parcel pickup for previously created shipments. Use when you need to schedule a courier pickup for packages that have been created. The method sends a pickup request to the courier API if the courier supports it. Use getRequestParcelPickupFields first to check if the courier requires additional fields." }, { "slug": "BASELINKER_SET_INVENTORY_PURCHASE_ORDER_STATUS", "name": "Set Inventory Purchase Order Status", "description": "Tool to change the status of a purchase order in BaseLinker inventory. Use when you need to update a purchase order's status (e.g., mark as sent, received, completed, or canceled)." }, { "slug": "BASELINKER_SET_ORDER_FIELDS", "name": "Set Order Fields", "description": "Tool to edit selected fields of a specific order in BaseLinker. Use when you need to update order details such as address data, notes, payment method, delivery information, or invoice details. Only provide the fields you want to change; other fields can be omitted." }, { "slug": "BASELINKER_SET_ORDER_PAYMENT", "name": "Set Order Payment", "description": "Tool to add a payment to an order in BaseLinker. Use when recording a payment for an order. The payment amount replaces (not adds to) the current payment value; if it matches the order total, the order is marked as paid." }, { "slug": "BASELINKER_SET_ORDER_PRODUCT_FIELDS", "name": "Set Order Product Fields", "description": "Tool to edit data of selected items in a specific BaseLinker order. Use when you need to update product fields like prices, quantities, SKU, or other item details. Only provide the fields you want to edit; other fields can be omitted." }, { "slug": "BASELINKER_SET_ORDER_RECEIPT", "name": "Set Order Receipt", "description": "Tool to mark orders with a receipt already issued. Use after printing receipts retrieved from getNewReceipts to confirm receipt issuance." }, { "slug": "BASELINKER_SET_ORDER_RETURN_FIELDS", "name": "Set Order Return Fields", "description": "Tool to edit selected fields of a specific order return. Use when updating return information such as buyer contact details, delivery address, or custom fields. Only the fields that need to be changed should be provided; other fields can be omitted." }, { "slug": "BASELINKER_SET_ORDER_RETURN_PRODUCT_FIELDS", "name": "Set Order Return Product Fields", "description": "Tool to edit data of selected items (e.g., prices, quantities, attributes) of a specific order return product. Use when you need to update fields of a returned product in an order return." }, { "slug": "BASELINKER_SET_ORDER_RETURN_REFUND", "name": "Set Order Return Refund", "description": "Tool to mark an order return as refunded in BaseLinker. Use when recording that a refund has been issued for a return. Note: This method doesn't issue an actual money refund - it only updates the refund status in BaseLinker." }, { "slug": "BASELINKER_SET_ORDER_RETURN_STATUS", "name": "Set Order Return Status", "description": "Tool to change order return status in BaseLinker. Use when you need to update the status of a single order return." }, { "slug": "BASELINKER_SET_ORDER_RETURN_STATUSES", "name": "Set Order Return Statuses", "description": "Tool to batch set order return statuses in BaseLinker. Use when you need to update the status of multiple order returns at once." }, { "slug": "BASELINKER_SET_ORDERS_MERGE", "name": "Set Orders Merge", "description": "Tool to merge multiple orders into one, based on the selected merge mode. Use when you need to combine orders together with either technical merge or into main order mode." }, { "slug": "BASELINKER_SET_ORDER_STATUS", "name": "Set Order Status", "description": "Tool to change the status of an existing order in BaseLinker. Use when you need to update an order's status to a different value." }, { "slug": "BASELINKER_SET_ORDER_STATUSES", "name": "Set Order Statuses", "description": "Tool to batch update order statuses in BaseLinker. Use when you need to set the same status for multiple orders at once." }, { "slug": "BASELINKER_UPDATE_INVENTORY_PRODUCTS_STOCK", "name": "Update Inventory Products Stock", "description": "Tool to update stocks of products and their variants in BaseLinker catalog. Use when you need to modify inventory levels for products across warehouses. Maximum 1000 products per request." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "baselinker_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BaseLinker API Key", "type": "string", "description": "The API key generated in the BaseLinker panel under 'My account' -> 'API' section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "basin", "name": "Basin", "logo": "https://logos.composio.dev/api/basin", "description": "Basin is a no-code form backend that enables users to set up powerful, reliable forms quickly without writing server-side code.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BASIN_CREATE_FORM", "name": "Create Form", "description": "Tool to create a new form in Basin. Use when you need to automate form setup with name, timezone, and project association; optionally configure redirect, notifications, or spam protection." }, { "slug": "BASIN_CREATE_FORM_WEBHOOK", "name": "Create Form Webhook", "description": "Tool to create a new webhook for a specific form. Use when you need to programmatically add a webhook once you have the form ID and callback URL confirmed." }, { "slug": "BASIN_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new Basin project. Use when you need a new organizational container for forms. Example: \"Create a project named Marketing Leads.\"" }, { "slug": "BASIN_DELETE_FORM", "name": "Delete Form", "description": "Tool to delete a form. Use when permanently removing a form after it's no longer needed. Ensure the form_id is correct; this operation is irreversible." }, { "slug": "BASIN_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project. Use when you need to remove a project after confirming its ID. Returns the deleted project's details." }, { "slug": "BASIN_DELETE_SUBMISSION", "name": "Delete Submission", "description": "Tool to permanently delete a form submission by its ID. Use when you need to remove a submission after confirming its ID. This operation is irreversible." }, { "slug": "BASIN_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use when you need to remove a webhook from a form after confirming its ID." }, { "slug": "BASIN_GET_DOMAINS", "name": "Get Domains", "description": "Tool to retrieve a list of all custom domains associated with the Basin account. Custom domains allow you to send emails from your own domain through Basin forms. Supports pagination and filtering by domain name or ID." }, { "slug": "BASIN_GET_FORM_DETAILS", "name": "Get Form Details", "description": "Retrieves comprehensive details about a specific Basin form including configuration, notification settings, security options, branding, webhooks, and submission counts. Use this when you need complete information about a form's setup and current state. Requires a form ID (obtain from Get Forms action if needed)." }, { "slug": "BASIN_GET_FORMS", "name": "Get Forms", "description": "Retrieves a list of all Basin forms with their configuration and metadata. Supports optional pagination via the 'page' parameter and filtering via the 'query' parameter (searches across form id, name, uuid, and project_id). Returns comprehensive form details including webhooks, submission counts, notification settings, and security configurations." }, { "slug": "BASIN_GET_FORM_WEBHOOK", "name": "Get Form Webhook", "description": "Tool to retrieve details of a specific form webhook by its ID. Use when you need to view webhook configuration including URL, format, and trigger settings." }, { "slug": "BASIN_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to retrieve detailed information about a specific project. Use when you have a project ID and need its metadata (name, created_at, updated_at)." }, { "slug": "BASIN_GET_PROJECTS", "name": "Get Projects", "description": "Retrieves a list of Basin projects from your account. Returns project details including IDs, names, and timestamps. Use this to list all projects or filter by name/ID. The response includes pagination metadata to help navigate large result sets. Typical use: Get project IDs for use with other project-specific endpoints like forms or submissions." }, { "slug": "BASIN_GET_SUBMISSIONS", "name": "Get Submissions", "description": "Retrieve form submissions from Basin with optional filtering, sorting, and search capabilities. Can retrieve all submissions across forms or filter by specific form_id. Supports filtering by status (new/spam/trash/all), text search, date range, and sorting by date or email." }, { "slug": "BASIN_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve all webhooks associated with a specific form. Use after obtaining the form ID." }, { "slug": "BASIN_LIST_FORM_VIEWS", "name": "List Form Views", "description": "Retrieves a list of all Basin form views with their configuration and metadata. Supports optional pagination via the 'page' parameter and filtering via the 'query' parameter (searches across form view id, uuid, form id, and form uuid)." }, { "slug": "BASIN_UPDATE_FORM", "name": "Update Form", "description": "Tool to update an existing Basin form by ID. Use when you need to modify form settings including name, notifications, spam protection, redirects, or other configuration options." }, { "slug": "BASIN_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update details of an existing project. Use when you need to change a project's name after confirming the project ID. Example: \"Update project 123 to 'Rebrand Launch'\"." }, { "slug": "BASIN_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update settings of an existing webhook for a form. Use after obtaining the webhook's ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "basin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Basin API Key", "type": "string", "description": "The API key for authenticating requests to the Basin API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "beaconchain", "name": "beaconcha.in", "logo": "https://logos.composio.dev/api/beaconchain", "description": "Beaconchain is a platform providing real-time data and analytics for the Ethereum 2.0 Beacon Chain, offering insights into validators, blocks, and network performance.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BEACONCHAIN_GET_CHART", "name": "Get Chart", "description": "Retrieve chart visualizations from beaconcha.in as PNG images. Use when you need visual representations of Ethereum Beacon Chain data like validator counts, staked ether, network liveness, or block statistics." }, { "slug": "BEACONCHAIN_GET_EPOCH", "name": "Get Epoch", "description": "Retrieve aggregate metrics and status for a beacon chain epoch. Use this tool to fetch epoch-level statistics including validator counts, balances, participation rates, block counts, and various operations (slashings, deposits, exits). Supports lookup by epoch number or keywords 'latest' or 'finalized'." }, { "slug": "BEACONCHAIN_GET_ETH1_DEPOSITS_BY_TX_HASH", "name": "Get ETH1 Deposits by Transaction Hash", "description": "Retrieve all beacon chain validator deposit events associated with a specific execution-layer transaction hash. Use this tool to inspect deposit transactions and verify deposit parameters like amount, public key, and withdrawal credentials. Returns an empty array if the transaction contains no deposit events." }, { "slug": "BEACONCHAIN_GET_ETH_STORE_DAILY", "name": "Get ETH.Store Daily Aggregates", "description": "Retrieve ETH.Store daily aggregate metrics for Ethereum validators. Use this to analyze the average financial return validators achieved over a specific 24-hour period, including APR metrics, consensus/execution layer rewards, and balance aggregates." }, { "slug": "BEACONCHAIN_GET_EXECUTION_ADDRESS_ERC20_TOKENS", "name": "Get ERC-20 Token Balances", "description": "Retrieve a paginated list of ERC-20 token balances for a specific Ethereum address. Use offset and limit query parameters for pagination. Returns token contract address, balance in token units, and token symbol for each ERC-20 token held by the address." }, { "slug": "BEACONCHAIN_GET_EXECUTION_BLOCK", "name": "Get Execution Block", "description": "Retrieve one or more execution-layer blocks by block number from the Ethereum Beacon Chain. Use this tool to look up execution block details including block hash, timestamp, rewards, gas usage, transaction counts, and consensus information. Supports querying up to 100 blocks in a single request by providing block numbers as a comma-separated list. Returns an array of execution block data. If a requested block number is not found, it will be omitted from the results." }, { "slug": "BEACONCHAIN_GET_EXECUTION_PRODUCED_BLOCKS", "name": "Get Execution Produced Blocks", "description": "Retrieve execution-layer blocks attributed to one or more producers. Use this tool to query blocks produced by specific fee recipients, proposer indices, or validator public keys. Supports comma-separated lists to query multiple producers. Returns block details including gas usage, fees, transactions, and timestamps." }, { "slug": "BEACONCHAIN_GET_LATEST_STATE", "name": "Get Latest State", "description": "Retrieve the latest known Ethereum Beacon Chain network state. Returns current slot, epoch numbers, finalized epoch, finality delay indicator, syncing status, and ETH/USD price along with multi-currency conversion rates. Use this to check current network status and get real-time ETH pricing data." }, { "slug": "BEACONCHAIN_GET_NETWORK_PERFORMANCE", "name": "Get Network Performance", "description": "Retrieve aggregated network performance metrics for the Ethereum Beacon Chain. Use this to analyze validator performance across attestations, proposals, and sync committee duties over a specified time window. Returns beacon scores, duty statistics, and finality information." }, { "slug": "BEACONCHAIN_GET_NODE_HEALTH", "name": "Get Explorer Health", "description": "Check the health status of the beaconcha.in explorer service. Returns status of monitoring modules including execution layer data, consensus layer data, services, Redis, app, and API modules. Use this to verify the beaconcha.in explorer is operational before making other API calls." }, { "slug": "BEACONCHAIN_GET_QUEUES", "name": "Get Validator Queues", "description": "Retrieve current queue metrics for Ethereum Beacon Chain validators. Use this tool to check activation queue status, exit queue status, withdrawal sweep progress, and chain finality. Returns deposit queue count and balance, exit queue count and balance, estimated processing times, and churn limits." }, { "slug": "BEACONCHAIN_GET_ROCKETPOOL_VALIDATOR", "name": "Get Rocket Pool Validator", "description": "Retrieve Rocket Pool-specific metadata for validators including minipool status, node fee, smoothing pool status, and RPL stake metrics. Use this to access Rocket Pool protocol data such as minipool addresses, node operator information, commission rates, and reward details. Returns empty data array if the validator is not a Rocket Pool validator." }, { "slug": "BEACONCHAIN_GET_SLOT", "name": "Get Slot", "description": "Retrieve detailed information about an Ethereum Beacon Chain slot. Use this tool to look up slot details including attestations, slashing counts, block roots, execution payload data, validator proposer, graffiti, and sync aggregate information. Supports lookup by slot number, 'latest'/'head' keywords, or block root hash. Returns comprehensive slot data including: attestation count, block roots, epoch info, execution layer details (gas, fees, transactions), proposer info, and withdrawal count." }, { "slug": "BEACONCHAIN_GET_SLOT_ATTESTATIONS", "name": "Get Slot Attestations", "description": "Retrieve all attestations included in the beacon block for a specific slot. Use this tool to get detailed attestation data including committee participation, checkpoint information, and validator indices for attestations in a given slot." }, { "slug": "BEACONCHAIN_GET_SLOT_ATTESTER_SLASHINGS", "name": "Get Slot Attester Slashings", "description": "Retrieve all attester slashing operations included in the beacon block for a specific slot. Use this tool to check for attester slashings at a given slot number or the latest processed slot." }, { "slug": "BEACONCHAIN_GET_SLOT_PROPOSER_SLASHINGS", "name": "Get Slot Proposer Slashings", "description": "Retrieve all proposer slashing operations included in the beacon block for a specific slot. Use this tool to check for proposer slashings at a given slot number or the latest processed slot." }, { "slug": "BEACONCHAIN_GET_SLOT_VOLUNTARY_EXITS", "name": "Get Slot Voluntary Exits", "description": "Retrieve all voluntary exit operations included in the beacon block for a specific slot. Use when you need to examine which validators submitted exit requests in a given slot. Returns an empty array if the slot has no voluntary exits." }, { "slug": "BEACONCHAIN_GET_SYNC_COMMITTEE", "name": "Get Sync Committee", "description": "Retrieve the sync committee membership for a given sync period. Returns a list of 512 validator indices that participate in light-client finality for the specified period. Each sync period spans 256 epochs. Use this to determine which validators have sync committee duties during a specific period." }, { "slug": "BEACONCHAIN_GET_VALIDATOR", "name": "Get Validator", "description": "Retrieve detailed information about an Ethereum Beacon Chain validator. Use this tool to look up validator status, balance, activation epochs, slashing status, and other details. Supports lookup by validator index or BLS public key. Returns validator data including: current status (active_online, active_offline, pending, exiting, slashed, exited), balance in Gwei, activation/exit epochs, and withdrawal credentials." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_ATTESTATION_EFFICIENCY", "name": "Get Validator Attestation Efficiency", "description": "Retrieve normalized attestation inclusion effectiveness for one or more validators. Use this tool to measure how effectively validators are getting their attestations included in the Beacon Chain. A score of 1.0 indicates perfect effectiveness (100% inclusion), while higher scores indicate lower effectiveness (max 2.0 for 0% inclusion). Supports lookup by validator index, BLS public key, or a mix of both (comma-separated, maximum 100 validators per request by default)." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_ATTESTATIONS", "name": "Get Validator Attestations", "description": "Retrieve attestations observed for one or more validators within a bounded epoch window. By default, returns data for the last 100 epochs. Use when you need to check validator attestation history, verify attestation performance, or analyze missed attestations." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_BALANCE_HISTORY", "name": "Get Validator Balance History", "description": "Retrieve per-epoch balance history for one or more Ethereum Beacon Chain validators. Use optional query parameters to control the time window (latest_epoch, offset, limit). Returns an array of balance snapshots showing how validator balances changed over time, including both total balance and effective balance. Useful for tracking validator performance and generating historical balance charts." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_BLS_CHANGES", "name": "Get Validator BLS Changes", "description": "Retrieve on-chain BLS-to-execution credential change messages (EIP-4881) for validators. Use this tool to check if validators have changed their withdrawal credentials from BLS (0x00) to execution-layer addresses (0x01)." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_CONSENSUS_REWARDS", "name": "Get Validator Consensus Rewards", "description": "Retrieve consensus-layer rewards for one or more validators over multiple lookback windows. Returns reward totals for the last 1, 7, 31, and 365 days, plus cumulative totals when available. All amounts are returned in gwei. Supports lookup by validator index or BLS public key." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_DAILY_STATS", "name": "Get Validator Daily Stats", "description": "Retrieve per-day statistics for a single Ethereum Beacon Chain validator by index. Returns daily balance snapshots (start/end/min/max), duty counts (proposed/missed blocks, attestations), and deposit/withdrawal activity. Use this tool to analyze validator performance over time, track balance changes, and identify issues like missed duties or slashing events. Supports filtering by day range using `start_day` and `end_day` parameters." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_DEPOSITS", "name": "Get Validator Deposits", "description": "Retrieve execution-layer deposit events for one or more validators. Use when you need to check deposit history, verify deposit amounts, or audit withdrawal credentials for validators." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_EXECUTION_REWARDS", "name": "Get Validator Execution Rewards", "description": "Retrieve execution-layer rewards (priority fees and MEV payments) for one or more validators. Values are reported in wei and include reward totals for the last 1, 7, 31, and 365 days, plus cumulative rewards since genesis when available. Accepts up to 100 validator identifiers." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_INCOME_HISTORY", "name": "Get Validator Income History", "description": "Retrieve a per-epoch income breakdown for one or more validators. Returns consensus-layer rewards/penalties in gwei and execution-layer tips in wei. Use this to analyze validator earnings over time, including attestation rewards, proposer rewards, penalties, and MEV/tips." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_LEADERBOARD", "name": "Get Validator Leaderboard", "description": "Retrieve the current top 100 validators ranked by 7-day consensus-layer rewards. Returns performance metrics including 1-day, 7-day, 31-day, 365-day, and total rewards in Gwei for each validator. Use this to identify the highest-performing validators on the Ethereum Beacon Chain over the past week." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_PROPOSALS", "name": "Get Validator Proposals", "description": "Retrieve beacon chain blocks proposed by one or more validators within a bounded epoch window. By default, returns proposals from the last 100 epochs. Use this to get proposal history for validators by their indices or public keys." }, { "slug": "BEACONCHAIN_GET_VALIDATORS_BY_DEPOSIT_ADDRESS", "name": "Get Validators by Deposit Address", "description": "Retrieve validators that have made deposits from a specific execution-layer address. Supports ENS names which are resolved server-side. Returns validator public keys, signature validity, and validator indices for all deposits from the address." }, { "slug": "BEACONCHAIN_GET_VALIDATORS_BY_WITHDRAWAL_CREDENTIALS", "name": "Get Validators by Withdrawal Credentials", "description": "Retrieve validators whose withdrawal credentials match the provided value or execution-layer address. Use this tool to find all validators associated with a specific withdrawal credential (32-byte hex) or Ethereum address (20-byte hex). ENS names are supported for address lookups. Results are paginated using limit and offset parameters." }, { "slug": "BEACONCHAIN_GET_VALIDATORS_PROPOSAL_LUCK", "name": "Get Validators Proposal Luck", "description": "Retrieve proposal luck statistics for one or more Ethereum Beacon Chain validators. Use this to analyze how lucky validators have been with block proposals compared to expected rates." }, { "slug": "BEACONCHAIN_GET_VALIDATORS_QUEUE", "name": "Get Validators Queue", "description": "Retrieve current queue metrics for validators on the Ethereum Beacon Chain. Returns counts and total effective balances for validators awaiting activation and validators scheduled to exit. Use this to monitor validator queue status and network entry/exit activity." }, { "slug": "BEACONCHAIN_GET_VALIDATOR_WITHDRAWALS", "name": "Get Validator Withdrawals", "description": "Retrieve withdrawal operations attributed to one or more validators within a bounded epoch window. Use this tool to fetch historical withdrawal data for validators on the Ethereum Beacon Chain. The API returns withdrawals from up to 100 epochs (defaulting to the most recent 100 epochs if no epoch is specified)." }, { "slug": "BEACONCHAIN_POST_VALIDATORS", "name": "Post Validators", "description": "Retrieve validator information using a JSON request body for multiple validators. Use this when the list of identifiers is too long for the GET path parameter (up to 100 identifiers). Supports lookup by validator indices or BLS public keys. Returns validator data including status, balance, activation/exit epochs, slashing status, and withdrawal credentials." }, { "slug": "BEACONCHAIN_RESOLVE_ENS", "name": "Resolve ENS Name or Address", "description": "Resolve ENS (Ethereum Name Service) names to addresses and vice versa. Use this tool to perform bidirectional lookups between ENS domain names and Ethereum addresses. Accepts either an ENS name (e.g., 'vitalik.eth') or an Ethereum address and returns the corresponding mapping." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "beaconchain_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Beaconcha.in API Key", "type": "string", "description": "The API key provided by beaconcha.in for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "beaconstac", "name": "Beaconstac", "logo": "https://logos.composio.dev/api/beaconstac", "description": "Beaconstac provides a platform for creating and managing QR codes and beacons, enabling businesses to engage customers through proximity marketing and track analytics.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BEACONSTAC_CREATE_PLACE", "name": "Create Place", "description": "Tool to create a new place for location-based assets. Use when you need to register a new physical place under an organization." }, { "slug": "BEACONSTAC_CREATE_QR_TEMPLATE", "name": "Create QR Template", "description": "Creates a new QR Code template with customizable design attributes. QR Code templates allow you to define reusable design presets for QR codes in your organization. You can customize colors, patterns, shapes, gradients, logos, frames, and more. Once created, templates can be applied to multiple QR codes for consistent branding. Use this when you need to: - Create branded QR code designs for your organization - Set up reusable design presets for QR code campaigns - Define custom styling including colors, patterns, logos, and frames" }, { "slug": "BEACONSTAC_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag for organizing QR Codes and other objects. Use when you need to categorize QR Codes under a specific organization." }, { "slug": "BEACONSTAC_CREATE_USER", "name": "Create User", "description": "Tool to create a new User. Use when onboarding a new user under your organization (Reseller plan and above)." }, { "slug": "BEACONSTAC_DELETE_QR_CODE", "name": "Delete QR Code", "description": "Tool to delete a QR Code by its ID. Use when you need to remove an existing QR Code after validation." }, { "slug": "BEACONSTAC_DELETE_QR_TEMPLATE", "name": "Delete QR Code Template", "description": "Tool to delete a QR Code template by its ID. Use when you need to permanently remove a QR Code template that is no longer needed." }, { "slug": "BEACONSTAC_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag by its ID. Use when you need to remove an existing Tag after validation." }, { "slug": "BEACONSTAC_LIST_BULK_QR_CODES", "name": "List Bulk QR Code Collections", "description": "Tool to list Bulk QR Code collections. Use when you need to filter, search, or order your bulk QR Code collections." }, { "slug": "BEACONSTAC_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "List all organizations accessible to the authenticated account. Use this tool when you need to: - Get a list of all organizations the user has access to - Retrieve organization details including IDs, names, and configuration - Access organization feature permissions and account limits - Check subscription status and owner information The response includes comprehensive organization data with pagination support." }, { "slug": "BEACONSTAC_LIST_PLACES", "name": "List Places", "description": "Tool to list your Places. Use when you need to browse or search your account's Places with filtering and ordering." }, { "slug": "BEACONSTAC_LIST_QR_TEMPLATES", "name": "List QR Templates", "description": "Tool to list all QR code templates in your account. Use when you need to filter and paginate templates." }, { "slug": "BEACONSTAC_LIST_TAGS", "name": "List Tags", "description": "Tool to list all tags with optional filtering and pagination. Use when you need to browse or search tags in your account." }, { "slug": "BEACONSTAC_LIST_USERS", "name": "List Users", "description": "Tool to list all users with optional filtering, searching, ordering, and pagination. Use when you need to retrieve user records across your organization." }, { "slug": "BEACONSTAC_PERIOD_OVERVIEW", "name": "Get Period Overview", "description": "Tool to get period overview analytics for products including counts, impressions, and conversion percentage. Use after specifying the product_type and time interval." }, { "slug": "BEACONSTAC_PRODUCT_OVERVIEW", "name": "Get Product Overview", "description": "Tool to get analytics overview for a specified product type over a given time interval. Use after specifying the product type and time range to obtain summary metrics." }, { "slug": "BEACONSTAC_RETRIEVE_QR_CODE", "name": "Retrieve QR Code", "description": "Retrieve detailed information about a specific QR Code by its ID. Returns QR code properties including name, type (static/dynamic), short URL, encoded data, design attributes, scan count, organization, and timestamps. Use this when you need to fetch, verify, or inspect QR Code details after creation or update." }, { "slug": "BEACONSTAC_RETRIEVE_USER", "name": "Retrieve User", "description": "Tool to retrieve the details of an existing User by ID. Use when you need to fetch a user's profile after confirming its existence." }, { "slug": "BEACONSTAC_UPDATE_PLACE", "name": "Update Place", "description": "Tool to update the specified Place by ID. Use after retrieving the Place to modify its details, such as name, address, or coordinates." }, { "slug": "BEACONSTAC_UPDATE_QR_CODE", "name": "Update QR Code", "description": "Update an existing QR Code by its ID. Modify QR Code properties like name, design attributes, tags, and content. Returns the complete updated QR Code object. Important: When updating qr_type, you must also provide the corresponding content: - For static QR codes (qr_type=1): Include fields_data with qr_type and content (e.g., url) - For dynamic QR codes (qr_type=2): Include campaign with content_type and custom_url" }, { "slug": "BEACONSTAC_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag by its ID. Use when you need to modify a tag's name or color after confirming its ID via list_tags." }, { "slug": "BEACONSTAC_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing User. Use when you need to modify profile details or organization of a User by their ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "beaconstac_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Beaconstac API Key", "type": "string", "description": "Your personal API key for authenticating requests to the Beaconstac API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "beamer", "name": "Beamer", "logo": "https://logos.composio.dev/api/beamer", "description": "Beamer is a platform that enables companies to announce news, updates, and features directly within their applications or websites, enhancing user engagement and communication.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BEAMER_COUNT_POST_COMMENTS", "name": "Count Post Comments", "description": "Tool to count existing comments on a specific post. Use when you need the total number of comments matching specific filters." }, { "slug": "BEAMER_COUNT_POST_REACTIONS", "name": "Count Post Reactions", "description": "Tool to count existing reactions on a specific post. Use when you need the total number of reactions for a given post." }, { "slug": "BEAMER_COUNT_POSTS", "name": "Count Posts", "description": "Tool to count existing posts. Use when you need the number of posts matching specific filters." }, { "slug": "BEAMER_COUNT_UNREAD_POSTS", "name": "Count Unread Posts", "description": "Tool to count unread posts for a user. Use when you need the number of posts the user would see when opening their Beamer feed." }, { "slug": "BEAMER_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve metadata for a Beamer category by its ID. Use when you need category information for filtering or grouping posts. Beamer uses a fixed set of categories: new, improvement, fix, comingsoon, announcement, and other." }, { "slug": "BEAMER_GET_FEED", "name": "Get Feed", "description": "Tool to retrieve the URL for your standalone feed. Use after embedding to fetch the feed link for embedding or sharing." }, { "slug": "BEAMER_GET_NOTIFICATION", "name": "Get Notification", "description": "Tool to retrieve details of a specific notification by its unique notification ID. Use after obtaining the notification ID to fetch its full details." }, { "slug": "BEAMER_GET_NOTIFICATIONS", "name": "Get Notifications", "description": "Tool to fetch unread notifications. Use after providing user context to retrieve and mark notifications as read." }, { "slug": "BEAMER_GET_POST_COMMENTS", "name": "Get Post Comments", "description": "Tool to retrieve comments for a specific post. Use after identifying the post ID to list its comments." }, { "slug": "BEAMER_GET_POST_REACTIONS", "name": "Get Post Reactions", "description": "Tool to retrieve all reactions associated with a specific post. Use when you need to list reactions and optionally filter by date, reaction type, or pagination." }, { "slug": "BEAMER_GET_POSTS", "name": "Get Posts", "description": "Tool to retrieve a list of posts. Use when you need IDs and titles of posts for further operations." }, { "slug": "BEAMER_PING", "name": "Ping API", "description": "Tool to ping the Beamer API. Use when verifying API key authentication before making further requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "beamer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Beamer API Key", "type": "string", "description": "Your Beamer API key, found under Settings > API in your Beamer account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bench", "name": "Bench", "logo": "https://logos.composio.dev/api/bench", "description": "Benchmarking tool", "category": "developer tools", "authSchemes": [ "NO_AUTH" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BENCH_SLEEP", "name": "Sleep", "description": "Sleep" } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Bench No Auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "benchmark_email", "name": "Benchmark Email", "logo": "https://logos.composio.dev/api/benchmark_email", "description": "Benchmark Email is a comprehensive email marketing platform offering tools for creating, sending, and analyzing email campaigns.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 298, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BENCHMARK_EMAIL_ADD_EMAIL_IN_AUTOMATION", "name": "Add Email in Automation", "description": "Tool to add an email to an automation workflow. Use when configuring automation sequences for email campaigns." }, { "slug": "BENCHMARK_EMAIL_ADD_EMAIL_TO_ARCHIVE", "name": "Add Email to Archive", "description": "Tool to add an email to the archive page. Use when you need to archive an email campaign by its ID." }, { "slug": "BENCHMARK_EMAIL_ADD_EMAIL_TO_COMMUNITY", "name": "Add Email to Community", "description": "Tool to add an email campaign to the public community with category and keywords. Use after creating an email campaign to publish it to the community platform." }, { "slug": "BENCHMARK_EMAIL_ADD_REMOVE_INBOX_TESTS_FROM_SUB_ACCOUNT", "name": "Add/Remove Inbox Tests from Sub-Account", "description": "Tool to add or remove inbox tests from a sub-account. Use when you need to allocate or deallocate inbox testing credits for a child account." }, { "slug": "BENCHMARK_EMAIL_CHECK_IF_RESPONSIVE", "name": "Check if responsive", "description": "Tool to check if the client is responsive. Use when verifying client responsiveness status." }, { "slug": "BENCHMARK_EMAIL_CLEAN_CONTACT_LIST", "name": "Clean Contact List", "description": "Tool to clean a contact list by removing invalid or bounced email addresses. Use when you need to improve list quality." }, { "slug": "BENCHMARK_EMAIL_COMPARE_CONTACTS", "name": "Compare Contacts", "description": "Tool to compare contacts across multiple contact lists. Use when you need to identify shared or unique contacts between lists." }, { "slug": "BENCHMARK_EMAIL_CONNECT_SERVICE", "name": "Connect Third-Party Service", "description": "Tool to get the OAuth authorization URL for connecting a third-party e-commerce or CRM service. Use when integrating with ETSY, EBAY, SHOPIFY, or SALESFORCE." }, { "slug": "BENCHMARK_EMAIL_COPY_BULK_CONTACTS", "name": "Copy Bulk Contacts", "description": "Tool to copy multiple contacts in bulk to target lists. Use when you need to duplicate contacts across lists without moving them." }, { "slug": "BENCHMARK_EMAIL_COPY_CONTACTS", "name": "Copy Contacts", "description": "Tool to copy a contact to a specific list. Use when you need to duplicate a contact from one list to another." }, { "slug": "BENCHMARK_EMAIL_COPY_EMAIL_IN_AUTOMATION", "name": "Copy Email in Automation", "description": "Tool to create a copy of an automation email. Use when duplicating an email within an automation workflow." }, { "slug": "BENCHMARK_EMAIL_COPY_EXISTING_EMAIL", "name": "Copy Existing Email", "description": "Tool to copy an existing email. Use when duplicating an email campaign by its ID. The copied email will have a new ID and the specified name." }, { "slug": "BENCHMARK_EMAIL_COPY_IMAGE_TO_SUB_ACCOUNT", "name": "Copy Image to Sub-Account", "description": "Tool to copy an image to one or more sub-accounts. Use when sharing an image with specific sub-accounts by providing comma-separated client IDs." }, { "slug": "BENCHMARK_EMAIL_COPY_SIGNUP_FORM", "name": "Copy Signup Form", "description": "Tool to copy an existing signup form. Use when you need to duplicate a signup form with a new name." }, { "slug": "BENCHMARK_EMAIL_CREATE_AUTOMATION_COPY", "name": "Create Automation Copy", "description": "Tool to create a copy of an existing automation. Use after confirming the automation ID to duplicate." }, { "slug": "BENCHMARK_EMAIL_CREATE_INBOX", "name": "Create Inbox", "description": "Tool to create a new inbox for email testing. Use when you need to set up an inbox for testing email campaigns." }, { "slug": "BENCHMARK_EMAIL_CREATE_SEGMENT_FROM_CONTACT_IDS", "name": "Create Segment from Contact IDs", "description": "Tool to create a segment from a list of contact IDs. Use after collecting contact IDs to group them into a segment." }, { "slug": "BENCHMARK_EMAIL_CREATE_SIGNUP_FORM", "name": "Create Signup Form", "description": "Tool to create a new signup form for collecting email subscribers. Use when you need to set up a subscription form with associated contact lists." }, { "slug": "BENCHMARK_EMAIL_DELETE_ABSPLIT_CAMPAIGN", "name": "Delete ABSplit Campaign", "description": "Tool to delete an ABSplit campaign configuration from an email. Use when removing A/B split test settings from a campaign by its ID." }, { "slug": "BENCHMARK_EMAIL_DELETE_AB_TEST_EMAIL", "name": "Delete AB Test Email", "description": "Tool to move an AB test email to trash. Use when removing an AB split test by its ID." }, { "slug": "BENCHMARK_EMAIL_DELETE_A_POLL", "name": "Delete A Poll", "description": "Tool to delete a poll by its ID. Use when removing a poll from the system." }, { "slug": "BENCHMARK_EMAIL_DELETE_A_SURVEY", "name": "Delete A Survey", "description": "Tool to delete a survey by its ID. Use when removing a survey from the system." }, { "slug": "BENCHMARK_EMAIL_DELETE_AUTOMATION", "name": "Delete Automation", "description": "Tool to delete an automation by its ID. Use when removing an automation workflow after confirming the automation ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_AUTOMATION_EMAIL", "name": "Delete Automation Email", "description": "Tool to delete an automation email from an automation workflow. Use when removing a specific email from an automation sequence by providing both the automation ID and automation email ID." }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACT_FROM_ALL_LISTS_BY_ID", "name": "Delete Contact From All Lists By ID", "description": "Tool to delete a specific contact from all lists by list ID and contact ID. Use when you need to remove a contact globally from all lists using the contact details page." }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACT_FROM_LIST", "name": "Delete Contact From List", "description": "Tool to delete a contact from a specific list by ContactID. Use when you have list and contact IDs. Example: \"Delete contact 2040826674 from list 15257899\"" }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACT_FROM_SEARCH", "name": "Delete Contact From Search", "description": "Tool to delete a contact from the search contact page. Use when you need to remove a contact by its ContactID directly from the search results." }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACT_LIST", "name": "Delete Contact List", "description": "Tool to delete a contact list. Use after confirming that the list is no longer in use." }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACTS_FROM_ALL_LISTS", "name": "Delete Contacts From All Lists", "description": "Tool to delete selected contacts from all lists. Use when you need to remove contacts globally across all lists, optionally filtered by search or filter criteria." }, { "slug": "BENCHMARK_EMAIL_DELETE_CONTACTS_FROM_CURRENT_LISTS", "name": "Delete Contacts From Current Lists", "description": "Tool to delete selected contacts from current lists. Use when you need to remove contacts from current lists, filtered by search or filter criteria." }, { "slug": "BENCHMARK_EMAIL_DELETE_EMAIL", "name": "Delete Email Campaign", "description": "Tool to delete an email campaign. Use when removing a campaign by its ID. Use after confirming the campaign ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_EMAIL_FROM_ARCHIVE", "name": "Delete Email from Archive", "description": "Tool to delete an email from the archive. Use when removing an archived email by its archive ID." }, { "slug": "BENCHMARK_EMAIL_DELETE_EMAIL_FROM_TRASH", "name": "Permanently Delete Email from Trash", "description": "Tool to permanently delete an email from trash. Use when permanently removing a trashed email by its ID. This action cannot be undone." }, { "slug": "BENCHMARK_EMAIL_DELETE_IMAGE", "name": "Delete Image", "description": "Tool to delete an image by its ID. Use when removing an image from the Benchmark Email account after confirming the image ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_INBOX", "name": "Delete Inbox", "description": "Tool to delete an inbox by its ID. Use after confirming the inbox ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_LINK_ACCOUNT", "name": "Delete Linked Agency Account", "description": "Tool to delete a linked agency account. Use when revoking a linked agency account by its ID. Use after confirming the account ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_LIST", "name": "Delete List", "description": "Tool to delete one or more contact lists by their IDs. Use after confirming that the lists are no longer needed." }, { "slug": "BENCHMARK_EMAIL_DELETE_PRODUCT_ASSOCIATION", "name": "Delete Product Association", "description": "Tool to delete a Shopify product association from Benchmark Email. Use when removing a product integration between Shopify and Benchmark Email." }, { "slug": "BENCHMARK_EMAIL_DELETE_SEGMENT", "name": "Delete Segment", "description": "Tool to delete a contact segment by its ID. Use after confirming the segment ID is correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_SEGMENT_CRITERIA", "name": "Delete Segment Criteria", "description": "Tool to delete criteria from a segment. Use after confirming the segment ID exists." }, { "slug": "BENCHMARK_EMAIL_DELETE_TRASH_LIST", "name": "Delete Trash List", "description": "Tool to delete all trash contacts from a list. Use when cleaning up trash contacts from a specific list." }, { "slug": "BENCHMARK_EMAIL_DELETE_VIDEO", "name": "Delete Video", "description": "Tool to delete one or more videos by their IDs. Use when removing videos from the Benchmark Email account after confirming the video IDs are correct." }, { "slug": "BENCHMARK_EMAIL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook from a contact list by its ID. Use when removing obsolete or invalid webhooks after confirming list and webhook details." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_EBAY", "name": "Disconnect eBay Integration", "description": "Tool to disconnect the eBay integration from the authenticated account. Use when removing eBay integration or revoking eBay access." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_ETSY_INTEGRATION", "name": "Disconnect Etsy Integration", "description": "Tool to disconnect Etsy integration from the Benchmark Email account. Use when removing the connection between Benchmark Email and Etsy e-commerce platform." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_EVENTBRITE", "name": "Disconnect Eventbrite Integration", "description": "Tool to disconnect the Eventbrite integration from Benchmark Email account. Use when removing Eventbrite integration to stop syncing event attendees." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_FACEBOOK", "name": "Disconnect Facebook Integration", "description": "Tool to disconnect Facebook integration from Benchmark Email account. Use when revoking Facebook integration. Returns status 1 on success, -1 on error." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_FACEBOOK_EVENTS", "name": "Disconnect Facebook Events", "description": "Tool to disconnect the Facebook Events integration from Benchmark Email. Use when removing the Facebook Events connection from the account." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_INSTAGRAM", "name": "Disconnect Instagram Integration", "description": "Tool to disconnect the Instagram integration from Benchmark Email account. Use when revoking Instagram access or removing the Instagram connection." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_LINKED_IN", "name": "Disconnect LinkedIn Integration", "description": "Tool to disconnect the LinkedIn integration from the Benchmark Email account. Use when removing LinkedIn social media integration." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_PINTEREST_CONNECTION", "name": "Disconnect Pinterest Connection", "description": "Tool to disconnect the Pinterest integration from the Benchmark Email account. Use when removing Pinterest connection or revoking Pinterest access." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_SALESFORCE", "name": "Disconnect Salesforce Integration", "description": "Tool to disconnect the Salesforce integration from Benchmark Email account. Use when revoking the Salesforce CRM connection." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_SHOPIFY", "name": "Disconnect Shopify", "description": "Tool to disconnect Shopify integration from Benchmark Email. Use when removing the connection between Shopify and Benchmark Email accounts." }, { "slug": "BENCHMARK_EMAIL_DISCONNECT_TWITTER", "name": "Disconnect Twitter Integration", "description": "Tool to disconnect Twitter integration from Benchmark Email account. Use when removing Twitter integration." }, { "slug": "BENCHMARK_EMAIL_DOWNLOAD_CONTACT_REPORT", "name": "Download Contact Report", "description": "Tool to download contact list report. Use when you need to export or download contact data for a specific list." }, { "slug": "BENCHMARK_EMAIL_GENERATE_TICKET", "name": "Generate Support Ticket", "description": "Tool to generate a support ticket. Use when you need to create a help desk ticket for customer support or technical assistance." }, { "slug": "BENCHMARK_EMAIL_GET_AB_SPLIT_DETAILS", "name": "Get AB Split Details", "description": "Tool to get details for an AB split test by email ID. Use when you need to retrieve A/B test configuration and status for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_AB_SPLIT_RESULTS", "name": "Get AB Split Results", "description": "Tool to get the results for an AB split test. Use when retrieving performance metrics and outcomes of A/B test campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_AB_TEST_REPORT", "name": "Get AB Test Report", "description": "Tool to retrieve AB split test reports with pagination. Use when you need to fetch A/B test campaign results." }, { "slug": "BENCHMARK_EMAIL_GET_ABUSE_CAMPAIGN_REPORT_BY_EMAIL_ID", "name": "Get Abuse Campaign Report By Email ID", "description": "Tool to get abuse campaign report for an email by ID. Use when you need to retrieve abuse report data for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_ABUSE_REPORT", "name": "Get Abuse Report", "description": "Tool to get abuse report containing statistics about email abuse complaints. Use when you need to review abuse complaint metrics and rates." }, { "slug": "BENCHMARK_EMAIL_GET_A_CAMPAIGN_LIST_OF_ENGAGEMENT", "name": "Get Campaign Engagement List", "description": "Tool to retrieve campaign engagement statistics. Use when you need to analyze campaign performance metrics including opens, clicks, bounces, and unsubscribes." }, { "slug": "BENCHMARK_EMAIL_GET_ACCOUNT_SUMMARY", "name": "Get account summary", "description": "Tool to get account summary including plan type and image storage limit. Use when checking available image storage space." }, { "slug": "BENCHMARK_EMAIL_GET_ACTIVE_CONTACT_COUNT", "name": "Get Active Contact Count", "description": "Tool to get the total count of all active contacts/emails in the account. Use when you need to retrieve the active contact count." }, { "slug": "BENCHMARK_EMAIL_GET_A_LIST_OF_AB_TESTS", "name": "Get a List of AB Tests", "description": "Tool to retrieve a list of AB tests with optional filtering and pagination. Use when you need to list or search AB test campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_A_LIST_OF_IMAGES", "name": "Get a list of images", "description": "Tool to retrieve a list of images. Use when you need to list or search images from the account." }, { "slug": "BENCHMARK_EMAIL_GET_ALL_CONFIRMED_EMAILS", "name": "Get All Confirmed Emails", "description": "Tool to retrieve all confirmed email addresses for the client account. Use after user completes email confirmation flows to fetch final list." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_DOMAIN_NAME", "name": "Get Archive Domain Name", "description": "Tool to get the archive domain name for the client. Use when you need to retrieve the configured domain name for email archives." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_EMAIL_DETAILS", "name": "Get Archive Email Details", "description": "Tool to get details of an archived email by its ArchiveID. Use when you need to retrieve information about a specific archived email." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_EMAILS", "name": "Get Archive Emails", "description": "Tool to retrieve a list of emails from the archive. Use when you need to list or search archived emails." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_HOME_DATA", "name": "Get Archive Home Data", "description": "Tool to get archive home data for a specific domain and type. Use when retrieving details of an archived email by its domain identifier." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_HOME_PAGE", "name": "Get Archive Home Page", "description": "Tool to get the archive home page containing archive entries. Use when retrieving archive listing or home page data." }, { "slug": "BENCHMARK_EMAIL_GET_ARCHIVE_PAGES", "name": "Get Archive Pages", "description": "Tool to retrieve list of archive pages. Use when you need to view or list all archive pages in the account." }, { "slug": "BENCHMARK_EMAIL_GET_AUTOMATION_DETAILS", "name": "Get automation details", "description": "Tool to get details of an automation by its ID. Use when you need to retrieve information about a specific automation workflow." }, { "slug": "BENCHMARK_EMAIL_GET_AUTOMATION_EMAIL_DETAILS", "name": "Get Automation Email Details", "description": "Tool to get details for an automation email. Use when retrieving configuration and settings of a specific email in an automation workflow." }, { "slug": "BENCHMARK_EMAIL_GET_AUTOMATION_SUMMARY_REPORT", "name": "Get automation summary report", "description": "Tool to get summary report of an automation by ID. Use when you need to retrieve performance metrics and statistics for a specific automation workflow." }, { "slug": "BENCHMARK_EMAIL_GET_BADGES_LIST", "name": "Get Badges List", "description": "Tool to retrieve all available email badges. Use when you need to list or view badge information." }, { "slug": "BENCHMARK_EMAIL_GET_BOUNCES_REPORT_BY_EMAIL_ID", "name": "Get Bounces Report By Email ID", "description": "Tool to get bounces report for an email campaign by ID. Use when you need to retrieve information about bounced emails for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_CAMPAIGN_HISTORY_BY_EMAIL_ID", "name": "Get Campaign History By Email ID", "description": "Tool to get campaign history for an email by ID. Use when you need to retrieve historical campaign data for a specific email." }, { "slug": "BENCHMARK_EMAIL_GET_CLICK_CONTACT_COUNT", "name": "Get Click Contact Count", "description": "Tool to get click contact count for email campaigns. Use when you need to retrieve the count of contacts who clicked on emails." }, { "slug": "BENCHMARK_EMAIL_GET_CLICK_HEATMAP_BY_EMAIL_ID", "name": "Get Click HeatMap By Email ID", "description": "Tool to get click heatmap report for an email by ID. Use when you need to analyze the click patterns and visualize which links in an email campaign received the most engagement." }, { "slug": "BENCHMARK_EMAIL_GET_CLICK_PERFORMANCE_BY_EMAIL_ID", "name": "Get Click Performance By Email ID", "description": "Tool to get click performance report for an email by ID. Use when you need to retrieve click performance metrics for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_CLICK_PERFORMANCE_DETAILS_BY_EMAIL", "name": "Get Click Performance Details By Email", "description": "Tool to get click performance details for an email campaign by ID. Use when you need detailed click tracking data including who clicked, when, and which links were clicked." }, { "slug": "BENCHMARK_EMAIL_GET_CLICKS_REPORT_BY_EMAIL_ID", "name": "Get Clicks Report By Email ID", "description": "Tool to get clicks report for an email by ID. Use when you need to retrieve the list of contacts who clicked links in a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_CLICK_URL_CONTACT_COUNT", "name": "Get Click URL Contact Count", "description": "Tool to get click URL contact count of engagement metrics. Use when you need to retrieve engagement statistics for campaign URLs." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENT_ACCOUNT_SETTINGS", "name": "Get Client Account Settings", "description": "Tool to get client account settings such as company, language, timezone, and sender info. Use when you need to fetch account configuration before sending campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENT_DETAILS", "name": "Get client details", "description": "Tool to get client details including profile data, contact count, and plan information. Use when verifying account profile and limits." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENT_FILTER_DOMAIN", "name": "Get client filter domain", "description": "Tool to get client filter domains. Use when you need to retrieve the list of whitelisted domains." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENT_PLAN_INFORMATION", "name": "Get Client Plan Information", "description": "Tool to get client's plan information including addons, email plan, and total contacts. Use when you need the current plan details before managing upgrades or billing." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENT_PROFILE_DETAILS", "name": "Get client profile details", "description": "Tool to get client's profile details like business city, country, phone, and company. Use after confirming authentication to fetch client profile info." }, { "slug": "BENCHMARK_EMAIL_GET_CLIENTS_RATING_RANGE", "name": "Get clients rating range", "description": "Tool to get clients rating range including min, max, and current rating values. Use when you need to retrieve rating information for the authenticated client." }, { "slug": "BENCHMARK_EMAIL_GET_COMMISSION_LIST", "name": "Get Commission List", "description": "Tool to get the partner commission list. Use when you need to retrieve commission information for partners." }, { "slug": "BENCHMARK_EMAIL_GET_COMMUNITY_CATEGORY", "name": "Get Community Category", "description": "Tool to retrieve a list of available community categories. Use when you need to get available category options before adding an email to the community." }, { "slug": "BENCHMARK_EMAIL_GET_COMMUNITY_DOMAIN", "name": "Get community domain", "description": "Tool to get the community domain name for the client. Use when you need to retrieve the configured domain for the community." }, { "slug": "BENCHMARK_EMAIL_GET_COMMUNITY_EMAIL_BY_ID", "name": "Get Community Email By ID", "description": "Tool to get details of a community email by ID. Use when you need to retrieve information about a specific community email." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_AUDIT_HISTORY", "name": "Get Contact Audit History", "description": "Tool to retrieve audit history for contacts in a specific list. Use when you need to track changes and actions performed on contacts." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_AUDIT_HISTORY_DETAIL", "name": "Get Contact Audit History Detail", "description": "Tool to get detailed audit history for a specific batch and group of contact changes. Use after getting BatchID and GroupID from the audit history endpoint to retrieve detailed information about contact modifications." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_DETAILS", "name": "Get Contact Details", "description": "Tool to retrieve detailed information for a specific contact including custom field values and rating. Use when you need complete contact details from a list." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_IMPORT_STATUS", "name": "Get Contact Import Status", "description": "Tool to get the status of contact import operations. Use when you need to check the progress or results of a contact import." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LIST_DEEP_VIEW", "name": "Get Contact List Deep View", "description": "Tool to fetch deep view of contact list(s) including all fields and field types. Use when you need comprehensive list metadata and structure information." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LIST_DETAILS", "name": "Get Contact List Details", "description": "Tool to fetch detailed information for a contact list. Use after confirming the list ID to retrieve all metadata." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LIST_FIELD_NAMES", "name": "Get Contact List Field Names", "description": "Tool to retrieve field names and attributes for a contact list. Use when you need to get available fields for a specific list." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LISTS", "name": "Get Contact Lists", "description": "Tool to retrieve all contact lists. Use when you need to list or select a contact list." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LISTS_SHOPIFY", "name": "Get Contact Lists for Shopify", "description": "Tool to get Shopify integration contact lists and configuration. Use when retrieving Shopify integration settings or verifying connected contact lists for Shopify." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_LIST_SUMMARY", "name": "Get contact list summary", "description": "Tool to get summary details and performance metrics of a contact list. Use when you need to retrieve statistics and counts for a specific contact list." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_MERGE_LIST", "name": "Get Contact Merge List", "description": "Tool to retrieve a list of contact lists that can be merged with a specified list. Use when you need to find compatible lists for merging contacts." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACT_REPORT_HISTORY", "name": "Get Contact Report History", "description": "Tool to get engagement history for a specific contact by email address. Use when you need to review which campaigns a contact has interacted with and their engagement metrics." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACTS_COUNT", "name": "Get Contacts Count", "description": "Tool to get the count of contacts in specified lists and segments. Use when you need to know how many contacts exist in particular lists or segments without retrieving the full contact data." }, { "slug": "BENCHMARK_EMAIL_GET_CONTACTS_IN_LIST", "name": "Get Filtered Contacts in List", "description": "Tool to fetch filtered and paginated contacts from a list by ListID. Use when narrowing a list via search, filters, and paging." }, { "slug": "BENCHMARK_EMAIL_GET_CURRENT_EMAIL_AT_TIME_OF_RESET", "name": "Get Current Email at Time of Reset", "description": "Tool to get the current email address at the time of a reset request. Use when verifying the email associated with a password reset or email change operation." }, { "slug": "BENCHMARK_EMAIL_GET_DELETE_LIST_CHECK", "name": "Get Delete List Check", "description": "Tool to check if contact lists can be deleted. Use before attempting to delete lists to verify deletion eligibility." }, { "slug": "BENCHMARK_EMAIL_GET_DETAILS_ABOUT_ARCHIVE_PAGE", "name": "Get Details About Archive Page", "description": "Tool to get details about the archive page including URLs, share settings, and domain. Use when you need to retrieve archive page configuration and URLs." }, { "slug": "BENCHMARK_EMAIL_GET_DETAILS_OF_POLL", "name": "Get Details Of Poll", "description": "Tool to retrieve details of a specific poll by ID. Use when you need information about a poll including its question, embed code, and share links." }, { "slug": "BENCHMARK_EMAIL_GET_DIGIOH_USERNAME", "name": "Get Digioh Username", "description": "Tool to get Digioh username for the authenticated account. Use when checking Digioh integration status or retrieving the associated username." }, { "slug": "BENCHMARK_EMAIL_GET_DMARC_LIST", "name": "Get DMARC List", "description": "Tool to retrieve DMARC (Domain-based Message Authentication, Reporting & Conformance) list for the client account. Use when you need to view domain authentication records." }, { "slug": "BENCHMARK_EMAIL_GET_DOWNLOAD_REPORT", "name": "Get Download Report", "description": "Tool to get download report for a contact list. Use when you need to retrieve the download URL or status for a specific contact list." }, { "slug": "BENCHMARK_EMAIL_GET_DOWNLOAD_SEGMENT_DATA", "name": "Get download segment data", "description": "Tool to retrieve segment data for download. Use when you need to export or download contact data from a specific segment." }, { "slug": "BENCHMARK_EMAIL_GET_EBAY_SELLER_ID", "name": "Get eBay Seller ID", "description": "Tool to get the eBay Seller ID for the authenticated account. Use when retrieving eBay integration details or verifying eBay connection status." }, { "slug": "BENCHMARK_EMAIL_GET_EBAY_SITE_LIST", "name": "Get eBay Site List", "description": "Tool to retrieve a list of available eBay sites for integration. Use when you need to get eBay site options for connecting eBay accounts." }, { "slug": "BENCHMARK_EMAIL_GET_EDITOR_INTEGRATION_CONNECTION_LIST", "name": "Get Integration Connection List", "description": "Tool to retrieve the list of editor integration connections. Use when you need to view or list connected integrations." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_DETAILS", "name": "Get email campaign details", "description": "Tool to get details for a specific email campaign by ID. Use when needing campaign information such as subject, sender, schedule, and contact lists." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_OPENS_BY_COUNTRY_REGION", "name": "Get Email Opens by Country and Region", "description": "Tool to get a list of contacts who opened an email from a specific country and region. Use when you need geographic engagement data for email campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_PREVIEW", "name": "Get Email Preview", "description": "Tool to get the preview of an email campaign. Use when you need to view the email content before sending." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_RECIPIENT_COUNT", "name": "Get Email Recipient Count", "description": "Tool to get the recipient count for an email campaign. Use when you need to know how many contacts will receive or have received a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_REPORT", "name": "Get Email Report", "description": "Tool to get email reports with pagination and filtering options. Use when you need to retrieve a list of email campaign reports." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_REPORT_FORWARDS", "name": "Get Email Report Forwards", "description": "Tool to get forwards report for an email campaign. Use after campaign send to export its forwards." }, { "slug": "BENCHMARK_EMAIL_GET_EMAIL_SPAM_CHECK", "name": "Get Email Spam Check", "description": "Tool to check spam score for an email campaign by ID. Use when you need to verify if an email campaign passes spam filters before sending." }, { "slug": "BENCHMARK_EMAIL_GET_ETSY_STORE_NAME", "name": "Get Etsy Store Name", "description": "Tool to get the connected Etsy store name. Use when verifying Etsy integration status or retrieving store details." }, { "slug": "BENCHMARK_EMAIL_GET_EVENTBRITE_USERNAME", "name": "Get Eventbrite Username", "description": "Tool to get the Eventbrite username associated with the Benchmark Email account. Use when verifying Eventbrite integration status or retrieving connected username." }, { "slug": "BENCHMARK_EMAIL_GET_FACEBOOK_ACCOUNT_HOLDER", "name": "Get Facebook Account Holder", "description": "Tool to get Facebook account holder information. Use when you need to retrieve details about the connected Facebook account." }, { "slug": "BENCHMARK_EMAIL_GET_FACEBOOK_ACCOUNT_NAME", "name": "Get Facebook Account Name", "description": "Tool to get the Facebook account name from Facebook Events integration. Use when retrieving the connected Facebook account information." }, { "slug": "BENCHMARK_EMAIL_GET_FILTERED_CONTACTS_WITH_EXTRA_FIELDS", "name": "Get Filtered Contacts with Extra Fields", "description": "Tool to fetch filtered and paginated contacts with custom/extra fields from a list by ListID. Use when you need contact data including custom field values along with standard contact information." }, { "slug": "BENCHMARK_EMAIL_GET_FORWARDS_REPORT_BY_EMAIL_ID", "name": "Get Forwards Report By Email ID", "description": "Tool to get forwards report for an email campaign by ID. Use when you need to retrieve the list of contacts who forwarded a specific email." }, { "slug": "BENCHMARK_EMAIL_GET_FULL_REPORT_OF_SURVEY", "name": "Get Full Report of Survey", "description": "Tool to retrieve the full report of a survey including all responses and answers. Use when you need to analyze survey results and response data." }, { "slug": "BENCHMARK_EMAIL_GET_HTML_FOR_ARCHIVE_NEWSLETTER", "name": "Get HTML for Archive Newsletter", "description": "Tool to get HTML content for an archive newsletter by domain and URL. Use when you need to retrieve the HTML content of an archived email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_HTML_FOR_BUTTON", "name": "Get HTML for Button", "description": "Tool to get HTML content for a button URL from the archive. Use when you need to retrieve the HTML markup for a specific button by its ID." }, { "slug": "BENCHMARK_EMAIL_GET_HTML_SIGNUP_FORM", "name": "Get HTML Signup Form", "description": "Tool to retrieve HTML and JavaScript embed code for a Tumbler signup form. Use when you need to get the complete embed code including jQuery dependencies and colorbox popup functionality for newsletter signup integration." }, { "slug": "BENCHMARK_EMAIL_GET_IMAGE_DETAILS", "name": "Get image details", "description": "Tool to get details of a specific image by its ID. Use when retrieving information about a single image including its URL, size, and dates." }, { "slug": "BENCHMARK_EMAIL_GET_IMAGE_FOR_BUTTON", "name": "Get Image for Button", "description": "Tool to get HTML code for an 'Image' style archive button. This returns a pre-defined HTML snippet with an embedded image button for newsletter archive access. Similar to GetHtmlForButton but specifically returns the 'Image' button style variant." }, { "slug": "BENCHMARK_EMAIL_GET_INBOX_DETAIL_RESULT", "name": "Get Inbox Detail Result", "description": "Tool to get inbox detail test statistics including total purchases, tests used, and remaining balance. Use when you need to check inbox testing capacity and usage." }, { "slug": "BENCHMARK_EMAIL_GET_INBOX_LIST", "name": "Get Inbox List", "description": "Tool to retrieve inbox list with optional filtering and pagination. Use when you need to list or search inbox entries." }, { "slug": "BENCHMARK_EMAIL_GET_INBOX_MASTER_RESULT", "name": "Get inbox master result", "description": "Tool to get Inbox Master Result by ID. Use when retrieving inbox information for a specific inbox identifier." }, { "slug": "BENCHMARK_EMAIL_GET_INDIVIDUAL_QUESTION_RESULT_DETAIL_IN", "name": "Get Individual Question Result Detail in Survey", "description": "Tool to get individual question result details for a specific respondent in a survey by email address. Use when retrieving detailed survey response data for a single participant." }, { "slug": "BENCHMARK_EMAIL_GET_INTEGRATION_AUTH_URL", "name": "Get Integration Authorization URL", "description": "Tool to get the OAuth authorization URL for integrating with third-party platforms. Use when setting up integrations with services like SurveyMonkey, EventBrite, Instagram, Facebook, or Twitter." }, { "slug": "BENCHMARK_EMAIL_GET_LAYOUT_LIST", "name": "Get layout list", "description": "Tool to retrieve a list of email layouts. Use when you need to list or select a layout for email campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_LINK_ACCOUNT_DETAILS", "name": "Get Linked Agency Account Details", "description": "Tool to get details of a linked agency account. Use when retrieving info for a specific linked account by ID after confirming the account exists." }, { "slug": "BENCHMARK_EMAIL_GET_LINK_DETAIL_BY_EMAIL_ID", "name": "Get Link Detail By Email ID", "description": "Tool to get link detail report for an email campaign by ID. Use when you need to retrieve detailed link click statistics for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_LINKED_IN_TOKEN", "name": "Get LinkedIn Token", "description": "Tool to get LinkedIn integration token information. Use when checking LinkedIn connection status or retrieving LinkedIn token details." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_LINK_ACCOUNTS", "name": "Get Linked Agency Accounts", "description": "Tool to get list of linked agency accounts. Use after linking agency accounts to retrieve all associated accounts." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_MAPPING", "name": "Get list mapping", "description": "Tool to get the field mapping of an uploaded contact list file. Use when you need to retrieve how the uploaded file fields are mapped to Benchmark Email list fields." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_OF_CONFIRMED_EMAILS", "name": "Get List of Confirmed Emails", "description": "Tool to retrieve a list of confirmed email addresses for the client account. Use when you need a simple list of confirmed emails without detailed metadata." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_OF_EMAILS", "name": "Get List of Emails", "description": "Tool to retrieve all email campaigns with optional filters and pagination. Use when you need to list, search, or select an email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_OF_GIPHY_IMAGES", "name": "Get list of Giphy images", "description": "Tool to retrieve a list of Giphy images. Use when you need to list or search Giphy images available in the account." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_OF_HELP_TOPICS", "name": "Get List of Help Topics", "description": "Tool to retrieve help topics from Benchmark Email. Use when you need to browse or search available help resources." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_OF_POLLS", "name": "Get List of Polls", "description": "Tool to retrieve a list of polls. Use when you need to list or search polls from the account." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_SHOPIFY_PRODUCTS", "name": "Get List of Shopify Products", "description": "Tool to get a list of Shopify products in HTML format. Use when you need to retrieve Shopify product data for integration purposes." }, { "slug": "BENCHMARK_EMAIL_GET_LIST_UPLOAD_TERMS", "name": "Get List Upload Terms", "description": "Tool to get list upload terms from Benchmark Email. Use when retrieving terms and conditions for list uploads." }, { "slug": "BENCHMARK_EMAIL_GET_MAGENTO_HTML_DROP", "name": "Get Magento HTML dropdown", "description": "Tool to get Magento signup form dropdown HTML. Use when integrating Magento with email marketing campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_MAGENTO_HTML_SELECTED", "name": "Get Magento HTML Selected", "description": "Tool to retrieve Magento HTML code for a selected signup form. Use when you need to get the HTML and JavaScript code to integrate a Benchmark Email signup form with a Magento store's newsletter subscription." }, { "slug": "BENCHMARK_EMAIL_GET_NON_CONTACT_COUNT", "name": "Get Non Contact Count", "description": "Tool to get the count of non-contacts based on email IDs and filter criteria. Use when you need to count recipients who are not in the contact list for specific campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_NOTIFICATION", "name": "Get notification", "description": "Tool to get client notifications from Benchmark Email. Use when checking for account alerts or messages." }, { "slug": "BENCHMARK_EMAIL_GET_OPEN_CONTACT_COUNT", "name": "Get Open Contact Count", "description": "Tool to get the count of contacts who opened specified email campaigns. Use when you need to retrieve engagement metrics for email campaigns by counting unique contacts who opened one or more emails." }, { "slug": "BENCHMARK_EMAIL_GET_OPENS_HOURLY_REPORT_BY_EMAIL", "name": "Get Opens Hourly Report By Email", "description": "Tool to get hourly opens report for an email campaign by ID. Use when you need to analyze the hour-by-hour pattern of email opens for a specific campaign." }, { "slug": "BENCHMARK_EMAIL_GET_OPENS_LOCATION_REPORT", "name": "Get Opens Location Report", "description": "Tool to get a list of contacts by location for an email campaign's opens. Use when you need geographic distribution data of email opens." }, { "slug": "BENCHMARK_EMAIL_GET_OPENS_LOCATION_REPORT_BY_EMAIL", "name": "Get Opens Location Report By Email", "description": "Tool to get a list of contacts who opened an email from a specific country. Use when you need geographic engagement data for email campaigns by country." }, { "slug": "BENCHMARK_EMAIL_GET_OPENS_REPORT", "name": "Get Opens Report", "description": "Tool to get opens report for an email campaign by ID. Use when you need to retrieve information about contacts who opened a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_PARTNER_PROFILE_DETAILS", "name": "Get Partner Profile Details", "description": "Tool to get partner profile details including company information and payment settings. Use when you need to fetch partner account configuration and payment preferences." }, { "slug": "BENCHMARK_EMAIL_GET_PAYPAL_LINK", "name": "Get PayPal Integration Link", "description": "Tool to retrieve the PayPal integration callback URL for a specific contact list. Use when you need to get the PayPal integration link for a list." }, { "slug": "BENCHMARK_EMAIL_GET_PAYPAL_LISTS", "name": "Get PayPal Contact Lists", "description": "Tool to get contact lists formatted for PayPal integration. Returns HTML select dropdown with available contact lists." }, { "slug": "BENCHMARK_EMAIL_GET_PINTEREST_USERNAME", "name": "Get Pinterest Username", "description": "Tool to retrieve the Pinterest username associated with the Benchmark Email account. Use when checking Pinterest integration status or fetching connected Pinterest username." }, { "slug": "BENCHMARK_EMAIL_GET_POLL_RESPONSE_REPORT", "name": "Get Poll Response Report", "description": "Tool to retrieve the response report of a poll by ID. Use when you need to analyze poll results and response data." }, { "slug": "BENCHMARK_EMAIL_GET_PREVIEW_OF_A_POLL", "name": "Get Preview of a Poll", "description": "Tool to get a preview/render of a poll by its ID. Use when you need to see how a poll will appear." }, { "slug": "BENCHMARK_EMAIL_GET_REFERRALS_LEVEL1_LIST", "name": "Get referrals level 1 list", "description": "Tool to get level 1 referrals list for a specific month and year. Use when you need to retrieve partner referral data." }, { "slug": "BENCHMARK_EMAIL_GET_REFERRALS_LIST", "name": "Get Referrals List", "description": "Tool to retrieve the list of partner referrals. Use when you need to view referral information for commission tracking." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_ANSWER_COMMENT_IN_SURVEY", "name": "Get Report Answer Comment in Survey", "description": "Tool to retrieve comment answers from a survey report for a specific question. Use when analyzing open-ended or comment-type responses from survey participants." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_ANSWER_OTHER_IN_SURVEY", "name": "Get Report Answer Other in Survey", "description": "Tool to retrieve 'other' text answers from survey questions that have an 'other' option. Use when you need to analyze free-text responses that don't fit predefined answer choices." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_ANSWER_TEXT_IN_SURVEY", "name": "Get Report Answer Text in Survey", "description": "Tool to retrieve text answers from survey questions. Use when you need to analyze free-text responses to survey questions." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_DETAILS_BY_AB_TEST", "name": "Get Report Details By AB Test", "description": "Tool to get report details for a specific AB split test by ID and ABID. Use when you need to retrieve detailed metrics and statistics for a particular A/B test campaign." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_DETAILS_BY_EMAIL_ID", "name": "Get Report Details By Email ID", "description": "Tool to get detailed report summary for an email campaign by ID. Use when you need to review performance metrics like opens, clicks, bounces, and unsubscribes for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_DOWNLOAD", "name": "Get Report Download", "description": "Tool to download email campaign report by type. Use when you need to export clicks, forwards, bounces, complaints, or unsubscribe data for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_LIST_OF_SURVEY", "name": "Get Report List of Survey", "description": "Tool to retrieve a paginated list of survey reports. Use when you need to view or analyze survey report data across multiple surveys." }, { "slug": "BENCHMARK_EMAIL_GET_REPORT_OF_SURVEY_INDIVIDUAL_RESULT", "name": "Get Report of Survey Individual Result", "description": "Tool to retrieve paginated individual survey results showing who responded and when. Use when you need to list all survey participants and their response metadata." }, { "slug": "BENCHMARK_EMAIL_GET_REPORTS_FOR_AUTORESPONDERS", "name": "Get Reports for Autoresponders", "description": "Tool to get reports for autoresponders with pagination and filtering options. Use when you need to retrieve automation campaign reports or analyze autoresponder performance." }, { "slug": "BENCHMARK_EMAIL_GET_RESEND_CONFIRM_EMAIL", "name": "Resend Confirm Email", "description": "Tool to resend confirmation email to a specific email address. Use when an email address needs to receive a new confirmation link." }, { "slug": "BENCHMARK_EMAIL_GET_RSS_HISTORY_BY_EMAIL_ID", "name": "Get RSS History By Email ID", "description": "Tool to get RSS history for an email campaign by ID. Use when you need to retrieve RSS feed history for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_SALESFORCE_INTEGRATION", "name": "Get Salesforce Integration Status", "description": "Tool to get Salesforce integration status and details from Benchmark Email account. Use when checking if Salesforce CRM is connected." }, { "slug": "BENCHMARK_EMAIL_GET_SAVE_AS_LIST", "name": "Get save as list", "description": "Tool to retrieve save-as-list data with optional filters. Use when you need to query lists that were saved from email campaigns, events, or AB tests." }, { "slug": "BENCHMARK_EMAIL_GET_SCHEME", "name": "Get Scheme", "description": "Tool to retrieve color schemes with optional filtering. Use when fetching default or saved color schemes for email templates." }, { "slug": "BENCHMARK_EMAIL_GET_SEGMENT_AUTO_GENERATE_NAME", "name": "Get Segment Auto Generate Name", "description": "Tool to get an auto-generated segment name for a list. Use when creating segments to get a default name suggestion." }, { "slug": "BENCHMARK_EMAIL_GET_SEGMENT_BY_ID", "name": "Get Segment by ID", "description": "Tool to retrieve details of a specific contact segment by its ID. Use when you need to get information about a particular segment." }, { "slug": "BENCHMARK_EMAIL_GET_SEGMENT_DETAILS", "name": "Get Segment Details", "description": "Tool to retrieve contact details from a specific segment with optional filtering, pagination, and sorting. Use when you need to access the contacts within a segment." }, { "slug": "BENCHMARK_EMAIL_GET_SEGMENT_LIST", "name": "Get Segment List", "description": "Tool to retrieve segment lists for a specific contact list by ListID. Use when you need to get all segments associated with a particular contact list." }, { "slug": "BENCHMARK_EMAIL_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a paginated list of contact segments. Use when you need to list or find segments with optional filtering and sorting." }, { "slug": "BENCHMARK_EMAIL_GET_SHOPIFY_PRODUCT_LIST_TABULAR", "name": "Get Shopify Product List Tabular", "description": "Tool to get Shopify product list in tabular (HTML) format. Use when you need to retrieve product data from a Shopify integration." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_BUTTON_CODE", "name": "Get Signup Form Button Code", "description": "Tool to get the code for the signup form button. Use when you need to retrieve the HTML/JavaScript code snippet for embedding a signup form button on a website." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_CONTACT_FIELDS", "name": "Get Signup Form Contact Fields", "description": "Tool to get the contact fields of a signup form by ID. Use when you need to retrieve the list of contact fields configured for a specific signup form." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_DETAILS", "name": "Get Signup Form Details", "description": "Tool to get details for a specific signup form by ID. Use when needing information about a signup form's configuration and associated contact lists." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUPFORM_FOR_MAGENTO", "name": "Get SignupForm for Magento", "description": "Tool to get SignupForm data for Magento integration. Use when you need to retrieve signup form configuration for integrating with a Magento store." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUPFORM_FOR_UNBOUNCE", "name": "Get SignupForm For Unbounce", "description": "Tool to retrieve signup form integration data for Unbounce. Use when you need to get the Unbounce integration URL or configuration for a specific contact master ID." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_LINK", "name": "Get Signup Form Link", "description": "Tool to get the link URL for a specific signup form. Use when needing the public URL for a signup form to share or embed." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_LIST", "name": "Get Signup Form List", "description": "Tool to retrieve all signup forms (listbuilder forms). Use when you need to list available signup forms for the account." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_LIST_CONTACT", "name": "Get Signup Forms for Contact List", "description": "Tool to get a list of signup forms associated with a specific contact list. Use when needing to identify which signup forms feed into a particular contact list." }, { "slug": "BENCHMARK_EMAIL_GET_SIGNUP_FORM_TUMBLER", "name": "Get SignupForm Tumbler", "description": "Tool to get third-party SignupForm Tumbler query string parameters. Use when you need to retrieve Tumbler integration parameters for a signup form." }, { "slug": "BENCHMARK_EMAIL_GET_SOCIAL_PERFORMANCE_REPORT", "name": "Get Social Performance Report", "description": "Tool to get social performance report for an email campaign by ID. Use when you need to retrieve social sharing metrics and statistics for a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNT_BALANCE", "name": "Get sub-account balance", "description": "Tool to get the balance (plan limit) for a specific sub-account by ID. Use when needing to check the contact limit or plan balance of a child account." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNT_DETAILS", "name": "Get sub-account details", "description": "Tool to get details for a specific sub-account by ID. Use when needing profile and plan info of a child account." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNT_HISTORY", "name": "Get Sub-Account History", "description": "Tool to get sub-account history. Use after listing sub-accounts to retrieve each account's billing history." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNT_HISTORY_DETAILS", "name": "Get sub-account history details", "description": "Tool to get detailed history information for a specific sub-account billing cycle. Use when you need billing cycle details for a particular history record." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNTS", "name": "Get Sub-Accounts", "description": "Tool to retrieve all sub-accounts for the client. Use when you need to view or manage sub-accounts." }, { "slug": "BENCHMARK_EMAIL_GET_SUB_ACCOUNTS_PLAN_LIST", "name": "Get Sub-Accounts Plan List", "description": "Tool to retrieve available plans for a sub-account. Use when you need to determine list and email limits for a specific sub-account client ID." }, { "slug": "BENCHMARK_EMAIL_GET_SURVEY_DETAILS", "name": "Get Survey Details", "description": "Tool to retrieve details of a specific survey by ID. Use when you need information about a survey including its questions and metadata." }, { "slug": "BENCHMARK_EMAIL_GET_SURVEY_REPORT_DETAIL", "name": "Get survey report detail", "description": "Tool to get detailed report of a survey including questions, responses, and response counts. Use when needing survey analytics and response data." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATE_BY_TEMPLATE_ID", "name": "Get template by template ID", "description": "Tool to get details for a specific email template by ID. Use when needing template information such as name, subject, content, and metadata." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATE_CATEGORY_BY_CATEGORY_ID", "name": "Get template category by ID", "description": "Tool to get details for a specific email template category by ID. Use when needing information about a template category." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATE_CATEGORY_LIST", "name": "Get Template Category List", "description": "Tool to retrieve template category list with optional filters. Use when you need to browse or select email template categories." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATE_LIST_OF_SURVEY", "name": "Get Template List of Survey", "description": "Tool to retrieve the list of survey templates. Use when you need to view available survey templates." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATES", "name": "Get Email Templates", "description": "Tool to retrieve email templates from Benchmark Email. Use when you need to list or select an email template for campaigns." }, { "slug": "BENCHMARK_EMAIL_GET_TEMPLATES_FOR_SIGNUP_FORM_CLASSIC", "name": "Get Templates for Signup Form Classic", "description": "Tool to retrieve templates for Signup Forms (Classic Only). Use when you need to list available signup form templates for the classic editor." }, { "slug": "BENCHMARK_EMAIL_GET_THE_CLEAN_COUNT", "name": "Get the clean count", "description": "Tool to get the clean count for a contact list. Use when you need to retrieve clean count statistics for a specific list." }, { "slug": "BENCHMARK_EMAIL_GET_TRASH_COUNT", "name": "Get Trash Count", "description": "Tool to get the count of contacts in the trash. Use when you need to retrieve the number of deleted contacts." }, { "slug": "BENCHMARK_EMAIL_GET_TUMBLER_LISTS", "name": "Get Tumbler Lists", "description": "Tool to get Tumbler signup form lists in HTML format. Use when you need to retrieve the list of signup forms for Tumbler integration." }, { "slug": "BENCHMARK_EMAIL_GET_TWITTER_LOGIN", "name": "Get Twitter Login Status", "description": "Tool to get Twitter login/integration status for the authenticated Benchmark Email account. Use when checking if Twitter is connected or retrieving Twitter account details." }, { "slug": "BENCHMARK_EMAIL_GET_UNBOUNCE_LINK", "name": "Get Unbounce Link", "description": "Tool to get the Unbounce integration URL for a specific contact list. Use when you need to retrieve the Unbounce URL for integrating a contact list with Unbounce landing pages." }, { "slug": "BENCHMARK_EMAIL_GET_UNBOUNCE_LISTS", "name": "Get Unbounce Lists", "description": "Tool to get Unbounce contact lists in HTML format. Use when integrating with Unbounce to retrieve available signup form lists." }, { "slug": "BENCHMARK_EMAIL_GET_UNIQUE_COUNT", "name": "Get unique contact count", "description": "Tool to get the total count of unique contacts in the account. Use when needing the unique contact count." }, { "slug": "BENCHMARK_EMAIL_GET_UNOPENS_REPORT_BY_EMAIL_ID", "name": "Get Unopens Report By Email ID", "description": "Tool to get unopens report for an email campaign by ID. Use when you need to retrieve a list of contacts who did not open a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_UNSUBSCRIBE_REPORT_BY_EMAIL_ID", "name": "Get Unsubscribe Report By Email ID", "description": "Tool to get unsubscribe report for an email campaign by ID. Use when you need to review recipients who unsubscribed from a specific email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_URL_LIST_BY_EMAIL_ID", "name": "Get URL List By Email ID", "description": "Tool to get URL list for a specific email campaign by ID. Use when you need to retrieve all URLs included in an email campaign." }, { "slug": "BENCHMARK_EMAIL_GET_URL_LIST_OF_ENGAGEMENT", "name": "Get URL Engagement List", "description": "Tool to retrieve URL engagement statistics for email campaigns. Use when you need to analyze which URLs in your emails were clicked and their engagement metrics." }, { "slug": "BENCHMARK_EMAIL_GET_VIDEO_DETAILS", "name": "Get Video Details", "description": "Tool to get details for a specific video by its ID. Use when needing information about a video in the Benchmark Email account." }, { "slug": "BENCHMARK_EMAIL_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve all webhooks for a contact list. Use when you need to view or list webhooks configured for a specific list." }, { "slug": "BENCHMARK_EMAIL_GET_WEB_PAGE_ADS_DETAIL", "name": "Get web page ads detail", "description": "Tool to get web page ads detail from the Partner API. Use when you need to retrieve information about web page advertisements." }, { "slug": "BENCHMARK_EMAIL_INITIATE_EMAIL_SCREEN_CAPTURE", "name": "Initiate Email Screen Capture", "description": "Tool to initiate the screen capture process for an email campaign. Use when you need to generate a screen capture of a specific email by its ID." }, { "slug": "BENCHMARK_EMAIL_LINK_ACCOUNT", "name": "Link Agency Account", "description": "Tool to link an agency account to your Benchmark Email account. Use when you need to connect and manage another account with the provided credentials." }, { "slug": "BENCHMARK_EMAIL_LOG_OUT_TWITTER_TWEETS", "name": "Log Out Twitter Tweets", "description": "Tool to log out of Twitter Tweets integration from Benchmark Email account. Use when removing Twitter Tweets posting integration." }, { "slug": "BENCHMARK_EMAIL_MERGE_CONTACTS_INTO_EXISTING_LIST", "name": "Merge Contacts Into Existing List", "description": "Tool to merge contacts from source list(s) into an existing target list. Use when you need to consolidate contacts from one or more lists into another list." }, { "slug": "BENCHMARK_EMAIL_MERGE_CONTACTS_INTO_NEW_LIST", "name": "Merge Contacts Into New List", "description": "Tool to merge contacts from multiple lists into a new list. Use when you need to consolidate contacts from different lists into a single new list." }, { "slug": "BENCHMARK_EMAIL_MOVE_BULK_CONTACTS", "name": "Move Bulk Contacts", "description": "Tool to move contacts in bulk from a source list to one or more target lists. Use when you need to transfer contacts between lists, removing them from the source." }, { "slug": "BENCHMARK_EMAIL_MOVE_CONTACTS", "name": "Move Contacts", "description": "Tool to move contacts from one list to another. Use when you need to relocate contacts between lists." }, { "slug": "BENCHMARK_EMAIL_MOVE_CONTACT_TO_DO_NOT_CONTACT", "name": "Move Contact to Do Not Contact List", "description": "Tool to move a contact to the Do Not Contact (Master Unsubscribe) list. Use when you need to permanently unsubscribe a contact from all communications." }, { "slug": "BENCHMARK_EMAIL_PATCH_ADD_UPDATE_SCHEME", "name": "Add / Update Scheme", "description": "Tool to add or update a color scheme. Use when creating new schemes or modifying existing ones with color hex codes." }, { "slug": "BENCHMARK_EMAIL_PATCH_CHANGE_PASSWORD", "name": "Change Password", "description": "Tool to change the password for the client account. Use when updating account credentials after validating new and confirm passwords match." }, { "slug": "BENCHMARK_EMAIL_PATCH_SAVE_SECURITY_PIN", "name": "Save Security PIN", "description": "Tool to save a new security PIN for the client account. Use when you need to update the account PIN after confirming both entries match." }, { "slug": "BENCHMARK_EMAIL_PATCH_SEND_RESET_EMAIL", "name": "Send Reset Email", "description": "Tool to send a reset email link to change the primary email address. Use when initiating an email-based reset of the account’s primary email after user request." }, { "slug": "BENCHMARK_EMAIL_PATCH_UPDATE_CLIENT_SETTINGS", "name": "Patch Update Client Settings", "description": "Tool to update client account settings. Use after fetching current settings. Updates company info, timezone, language, sender defaults, and signature details." }, { "slug": "BENCHMARK_EMAIL_PATCH_UPDATE_CONTACT_LIST", "name": "Update Contact List", "description": "Tool to update an existing contact list. Use after confirming list ID and desired modifications to name, description, labels, or custom fields." }, { "slug": "BENCHMARK_EMAIL_PATCH_UPDATE_EDIT_PROFILE", "name": "Update/Edit Profile", "description": "Tool to update or edit profile information such as first name, last name, and phone number. Use after retrieving profile details to apply changes." }, { "slug": "BENCHMARK_EMAIL_PATCH_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook for a contact list by webhook ID. Use after retrieving or creating a webhook to modify its event settings such as cleaned-address, email-change, profile-update, subscribe, and unsubscribe callbacks." }, { "slug": "BENCHMARK_EMAIL_POST_ADD_CONTACT_TO_LIST", "name": "Add Contact to List", "description": "Tool to add a new contact to a specific list. Use after verifying the list ID exists." }, { "slug": "BENCHMARK_EMAIL_POST_ASSIGN_PRODUCT_LIST", "name": "Assign Product to List", "description": "Tool to assign a Shopify product to a list where purchasers are added. Use when integrating Shopify purchases with email lists." }, { "slug": "BENCHMARK_EMAIL_POST_CHANGE_SECURITY_PIN", "name": "Change Security PIN", "description": "Tool to change security PIN for the client account. Use after confirming your current PIN to rotate your PIN." }, { "slug": "BENCHMARK_EMAIL_POST_COPY_POLL", "name": "Copy Poll", "description": "Tool to copy an existing poll. Use when you need to duplicate a poll with a new name." }, { "slug": "BENCHMARK_EMAIL_POST_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Tool to create a new contact list. Use after planning list name and optional description." }, { "slug": "BENCHMARK_EMAIL_POST_CREATE_POLL", "name": "Create Poll", "description": "Tool to create a new poll in Benchmark Email. Use when you need to create a poll for collecting responses." }, { "slug": "BENCHMARK_EMAIL_POST_CREATE_SEGMENT_CRITERIA", "name": "Create Segment Criteria", "description": "Tool to create criteria for a segment. Use after confirming the segment ID exists and defining filter rules." }, { "slug": "BENCHMARK_EMAIL_POST_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for a contact list. Use when you need to get callbacks for list events after list creation." }, { "slug": "BENCHMARK_EMAIL_POST_DISABLE_SECURITY_PIN", "name": "Disable Security PIN", "description": "Tool to disable security PIN for the client account. Use when revoking the current PIN to remove PIN protection." }, { "slug": "BENCHMARK_EMAIL_POST_LOGIN_REDIRECT_USING_TOKEN", "name": "Login Redirect Using Token", "description": "Tool to acquire a temporary token to an account. Use when you need to authenticate and get redirected to a specific path in the application using a token-based login." }, { "slug": "BENCHMARK_EMAIL_POST_SAVE_WEBSITE_DOMAIN", "name": "Save Website Domain", "description": "Tool to save a website domain for your Benchmark Email account. Use after account setup to register your domain for link tracking." }, { "slug": "BENCHMARK_EMAIL_POST_SEND_CONFIRM_EMAIL_VERIFICATION", "name": "Send Confirm Email Verification", "description": "Tool to send confirm email verification. Use when unverified addresses must receive verification emails after signup." }, { "slug": "BENCHMARK_EMAIL_POST_SEND_PIN_EMAIL", "name": "Send PIN via Email", "description": "Tool to send PIN via email. Use when you forgot your security PIN and need it emailed to you." }, { "slug": "BENCHMARK_EMAIL_POST_SHOPIFY_PURCHASE_LIST", "name": "Configure Shopify Purchase List", "description": "Tool to configure Shopify purchase list integration. Use when setting up or updating the contact list for Shopify purchase tracking." }, { "slug": "BENCHMARK_EMAIL_RESEND_EMAILS", "name": "Resend Emails to Contacts", "description": "Tool to resend confirmation emails to contacts in a specific list. Use when you need to resend verification or confirmation emails to contacts." }, { "slug": "BENCHMARK_EMAIL_RESTORE_EMAIL_FROM_TRASH", "name": "Restore Email From Trash", "description": "Tool to restore an email from trash. Use when you need to recover a deleted email campaign by moving it out of trash." }, { "slug": "BENCHMARK_EMAIL_RESTORE_TRASH_LIST", "name": "Restore Trash List", "description": "Tool to restore deleted contact lists from trash. Use after confirming the list IDs to recover." }, { "slug": "BENCHMARK_EMAIL_SAVE_EMAIL_ADDRESS", "name": "Save Email Address", "description": "Tool to save email address(es) to a contact list in CSV format. Use when you need to add or update email addresses in a specific list." }, { "slug": "BENCHMARK_EMAIL_SAVE_VERIFIED_EMAIL_ADDRESSES", "name": "Save Verified Email Addresses", "description": "Tool to save email addresses which have verified URLs to a contact list. Use when you need to mark specific email addresses as verified in a list." }, { "slug": "BENCHMARK_EMAIL_SCHEDULE_EMAIL", "name": "Schedule Email Campaign", "description": "Tool to schedule an email campaign for sending at a specific date and time. Use when you need to schedule a verified email campaign for future delivery." }, { "slug": "BENCHMARK_EMAIL_SEARCH_CONTACT_DETAILS_BY_EMAIL", "name": "Search Contact Details by Email", "description": "Tool to search for contact details by email address and show lists they belong to and status. Use when you need to find a contact's membership information across lists." }, { "slug": "BENCHMARK_EMAIL_SEND_SUPPORT_FEEDBACK", "name": "Send Support Feedback", "description": "Tool to send support feedback or inquiry to Benchmark Email support team. Use when users need to contact support with questions, issues, or feedback." }, { "slug": "BENCHMARK_EMAIL_SEND_TEST_EMAIL_FOR_SIGNUP_FORM", "name": "Send Test Email for Signup Form", "description": "Tool to send a test email for a signup form. Use when you need to test the signup form email configuration before going live." }, { "slug": "BENCHMARK_EMAIL_SET_RESPONSIVE", "name": "Set Responsive", "description": "Tool to set the client's responsive status. Use when enabling or disabling responsive mode for the client account." }, { "slug": "BENCHMARK_EMAIL_SHARE_LISTS_WITH_SUBACCOUNTS", "name": "Share Lists with SubAccounts", "description": "Tool to share contact lists with sub-accounts. Use when you need to grant sub-accounts access to a specific list." }, { "slug": "BENCHMARK_EMAIL_SHARE_TEMPLATE_TO_SUB_ACCOUNTS", "name": "Share Template to Sub-Accounts", "description": "Tool to share an email template with sub-accounts. Use when distributing templates across sub-accounts." }, { "slug": "BENCHMARK_EMAIL_SHARE_VIDEO", "name": "Share Video", "description": "Tool to share/copy a video to other client accounts. Use when you need to duplicate a video across multiple client accounts." }, { "slug": "BENCHMARK_EMAIL_TEST_EBAY_INTEGRATION", "name": "Test eBay Integration", "description": "Tool to test eBay integration and verify connection status. Use when validating eBay account connectivity and retrieving integration details." }, { "slug": "BENCHMARK_EMAIL_TEST_ETSY_INTEGRATION", "name": "Test Etsy Integration", "description": "Tool to test the Etsy integration connection with Benchmark Email. Use when verifying if the Etsy integration is properly configured and working." }, { "slug": "BENCHMARK_EMAIL_TEST_EVENTBRITE_INTEGRATION", "name": "Test Eventbrite Integration", "description": "Tool to test the Eventbrite integration connection with Benchmark Email. Use when verifying if Eventbrite is properly connected and syncing." }, { "slug": "BENCHMARK_EMAIL_TEST_FACEBOOK_EVENTS_INTEGRATION", "name": "Test Facebook Events Integration", "description": "Tool to test Facebook Events integration in Benchmark Email. Use when verifying the Facebook Events connection is working properly." }, { "slug": "BENCHMARK_EMAIL_TEST_FACEBOOK_INTEGRATION", "name": "Test Facebook Integration", "description": "Tool to test Facebook integration status for the Benchmark Email account. Use when verifying Facebook connection. Returns status 1 on success, -1 on error, with an HTML-formatted message describing the result." }, { "slug": "BENCHMARK_EMAIL_TEST_LINKED_IN_CONNECTION", "name": "Test LinkedIn Connection", "description": "Tool to test the LinkedIn integration connection status. Use when verifying if LinkedIn is properly connected to the Benchmark Email account." }, { "slug": "BENCHMARK_EMAIL_TEST_PINTEREST_INTEGRATION", "name": "Test Pinterest Integration", "description": "Tool to test the Pinterest integration connection for the Benchmark Email account. Use when verifying Pinterest integration status or troubleshooting connection issues." }, { "slug": "BENCHMARK_EMAIL_TEST_SALESFORCE_INTEGRATION", "name": "Test Salesforce Integration", "description": "Tool to test the Salesforce integration connection. Use when verifying that Salesforce CRM is properly connected and accessible." }, { "slug": "BENCHMARK_EMAIL_TEST_TWITTER_INTEGRATION", "name": "Test Twitter Integration", "description": "Tool to test the Twitter/X integration connection. Use when verifying that Twitter (X) is properly connected and accessible." }, { "slug": "BENCHMARK_EMAIL_TEST_TWITTER_TWEETS", "name": "Test Twitter Tweets", "description": "Tool to test Twitter tweets integration and retrieve follower information. Use to verify Twitter connection and get follower statistics in HTML format." }, { "slug": "BENCHMARK_EMAIL_UPDATE_ARCHIVE_HOME_PAGE", "name": "Update Archive Home Page", "description": "Tool to add an email to the archive home page with a specific view order. Use when you need to feature an archived email on the archive home page." }, { "slug": "BENCHMARK_EMAIL_UPDATE_ARCHIVE_HOME_PAGE_DATA", "name": "Update Archive Home Page Data", "description": "Tool to update archive home page data like page title, logo, header, and footer. Use when modifying the appearance or content of the archive home page." }, { "slug": "BENCHMARK_EMAIL_UPDATE_CONTACT_DETAILS", "name": "Update Contact Details", "description": "Tool to update contact details in a specific list. Use when you need to modify a contact's email, name, or rating." }, { "slug": "BENCHMARK_EMAIL_UPDATE_EMAIL", "name": "Update Email Campaign", "description": "Tool to update an existing email campaign. Use to modify campaign properties such as name, subject, sender name, sender email, or reply-to address." }, { "slug": "BENCHMARK_EMAIL_UPDATE_EMAIL_CONTENT_FOR_AUTOMATION", "name": "Update Email Content for Automation", "description": "Tool to update email content for an automation workflow. Use when modifying the subject, template content, or sender details of an existing automation email." }, { "slug": "BENCHMARK_EMAIL_UPDATE_LINK_ACCOUNT", "name": "Update Linked Agency Account", "description": "Tool to update a linked agency account. Use when modifying login credentials or alias for an existing linked account by its ID." }, { "slug": "BENCHMARK_EMAIL_UPDATE_LIST_COMPILATION_DETAILS", "name": "Update List Compilation Details", "description": "Tool to update the compilation details for a contact list file upload. Use when changing the file upload compilation URL after uploading contacts to a list." }, { "slug": "BENCHMARK_EMAIL_UPDATE_PARTNER_PROFILE", "name": "Update Partner Profile", "description": "Tool to update partner profile details including company name, email, phone, and PayPal email. Use when you need to modify partner account information. PayPalEmail is required." }, { "slug": "BENCHMARK_EMAIL_UPDATE_POLL", "name": "Update Poll", "description": "Tool to update an existing poll in Benchmark Email. Use when you need to modify a poll's name or question." }, { "slug": "BENCHMARK_EMAIL_UPDATE_RESET_EMAIL", "name": "Update/Reset Email", "description": "Tool to reset the primary email address using a GUID from the reset email link. Use when completing the email change process after the reset link has been sent." }, { "slug": "BENCHMARK_EMAIL_UPDATE_SEGMENT", "name": "Update Segment", "description": "Tool to update an existing contact segment. Use when you need to modify a segment's name, description, or associated list ID." }, { "slug": "BENCHMARK_EMAIL_UPDATE_SURVEY_STATUS", "name": "Update Survey Status", "description": "Tool to update the status of a survey. Use when activating, deactivating, or removing a survey." }, { "slug": "BENCHMARK_EMAIL_UPLOAD_VIDEO", "name": "Upload Video", "description": "Tool to upload a video via URL. Use when adding videos from external sources (YouTube, Vimeo, etc.) to the Benchmark Email account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "benchmark_email_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Benchmark Email API Key", "type": "string", "description": "Your Benchmark Email API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "benzinga", "name": "Benzinga", "logo": "https://logos.composio.dev/api/benzinga", "description": "Benzinga provides real-time financial news and data APIs, offering comprehensive coverage of market-moving information for developers and financial professionals.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BENZINGA_GET_CALENDAR_EARNINGS_STREAM", "name": "Get Calendar Earnings Stream", "description": "Tool to subscribe to real-time earnings calendar events via WebSocket. Use when you need immediate updates as reports are announced." }, { "slug": "BENZINGA_GET_CONFERENCE_CALLS_V21", "name": "Get Conference Calls V2.1", "description": "Tool to retrieve conference call data for a selected period and/or security using v2.1 API. Conference calls are scheduled calls where company management discusses quarterly or annual financial results, business updates, and answers questions from analysts and investors." }, { "slug": "BENZINGA_GET_CONSENSUS_RATINGS", "name": "Get Consensus Ratings", "description": "Get aggregated consensus analyst ratings and price targets for a stock ticker. Returns analyst sentiment distribution (strong_buy, buy, hold, sell counts or percentages), consensus rating, price target range (low, high, average), and analyst counts. Specify a ticker symbol to get results - not all tickers have consensus data available. Use this when you need to understand the overall analyst sentiment and price expectations for a stock to inform investment decisions." }, { "slug": "BENZINGA_GET_EARNINGS_V21", "name": "Get Earnings Calendar V2.1", "description": "Tool to retrieve earnings calendar data (v2.1). Use when you need dates, estimates, and actuals for upcoming earnings events." }, { "slug": "BENZINGA_GET_ECONOMICS_V21", "name": "Get Economics Calendar V2.1", "description": "Tool to retrieve economic calendar data including indicators, releases, and reports from various countries. Returns actual values, consensus estimates, and prior values for economic events such as GDP, employment data, inflation metrics, and more." }, { "slug": "BENZINGA_GET_NEWS_CHANNELS", "name": "Get News Channels", "description": "Tool to retrieve all available news channels that can be used to filter news items. Use when you need to discover available channel categories for news filtering. Channels can have sub-channels (identified by parent field), but all are listed as individual items." }, { "slug": "BENZINGA_GET_NEWSFEED_STREAM", "name": "Get Newsfeed Stream", "description": "Get WebSocket connection details for real-time Benzinga newsfeed streaming. Returns the WebSocket URL and authentication token needed to establish a WebSocket connection for receiving real-time news events. Use this when you need immediate updates as news articles are created, updated, or removed. Note: This action returns connection details only. You will need a WebSocket client library to establish the actual streaming connection using the provided URL and token." }, { "slug": "BENZINGA_GET_RATINGS_V21", "name": "Get Analyst Ratings V2.1", "description": "Tool to fetch analyst ratings data including upgrades, downgrades, initiations, and price target changes from Wall Street analysts. Returns current and prior ratings, price targets, analyst information, and ratings accuracy metrics when available. Use when querying analyst ratings with advanced filtering options like analyst ID, firm ID, and specific rating actions." }, { "slug": "BENZINGA_GET_REMOVED_NEWS", "name": "Get Removed News", "description": "Retrieves IDs and timestamps of news articles that have been removed from Benzinga's database. Use this to track deleted/retracted news articles, sync local caches, or identify articles removed after a specific timestamp. Returns removed article IDs with their removal timestamps, supporting pagination up to 100 pages. Note: This endpoint returns only article identifiers and removal times - not the original article content." }, { "slug": "BENZINGA_GET_REMOVED_V21", "name": "Get Removed Calendar Events V2.1", "description": "Tool to retrieve removed or cancelled calendar events from Benzinga (v2.1). Use when you need to track calendar events that have been deleted or cancelled from specific event types like earnings, ratings, dividends, splits, IPOs, offerings, economics, guidance, M&A, or conference calls. Supports filtering by event type and update timestamp for change tracking and data synchronization." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "benzinga_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Benzinga API Key", "type": "string", "description": "Your Benzinga API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bestbuy", "name": "Bestbuy", "logo": "https://developer.bestbuy.com/images/bestbuy-logo.png", "description": "Best Buy offers a suite of APIs providing access to product, store, category, and recommendation data.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BESTBUY_GET_CATEGORIES", "name": "Get Categories", "description": "Tool to retrieve Best Buy product categories. Use when you need to list or filter categories in the catalog." }, { "slug": "BESTBUY_GET_CATEGORY_DETAILS", "name": "Get Category Details", "description": "Tool to retrieve detailed information about a Best Buy category by its ID. Use when you need enriched metadata about a specific category." }, { "slug": "BESTBUY_GET_PRODUCT_DETAILS", "name": "Get Product Details by SKU", "description": "Tool to retrieve detailed information about a specific product by SKU. Use after obtaining a valid SKU to fetch its attributes." }, { "slug": "BESTBUY_GET_PRODUCTS", "name": "Get Products", "description": "Tool to retrieve products from Best Buy. Use when you need to fetch product listings with optional filters and sorting. Example: 'Get products for category abcat0101000 sorted by salePrice.dsc.'" }, { "slug": "BESTBUY_GET_REVIEW_DETAILS", "name": "Get Review Details", "description": "Tool to retrieve detailed information for a specific review by ID. Use after confirming the review ID." }, { "slug": "BESTBUY_GET_REVIEWS", "name": "Get Product Reviews", "description": "Tool to retrieve product reviews. Use when you need customer feedback with filters or sorting. Use after obtaining product SKUs." }, { "slug": "BESTBUY_GET_STORE_DETAILS", "name": "Get Store Details", "description": "Tool to retrieve detailed information about a specific Best Buy store. Use when you have a valid store ID." }, { "slug": "BESTBUY_GET_STORES", "name": "Get Best Buy Stores", "description": "Tool to retrieve a list of Best Buy stores. Use when you need store listings with optional filters or geo-search after confirming your API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bestbuy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Best Buy API Key", "type": "string", "description": "The API key provided by Best Buy for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "better_proposals", "name": "Better Proposals", "logo": "https://logos.composio.dev/api/better_proposals", "description": "Better Proposals is a web-based proposal creation tool that enables users to send professionally designed proposals.", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BETTER_PROPOSALS_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company. Use after confirming the company does not already exist." }, { "slug": "BETTER_PROPOSALS_CREATE_DOCUMENT_TYPE", "name": "Create Document Type", "description": "Tool to create a new document type. Use after confirming the desired type name does not already exist." }, { "slug": "BETTER_PROPOSALS_CREATE_PROPOSAL_COVER", "name": "Create Proposal Cover", "description": "Tool to create a new proposal cover design. Use when you need a custom cover design before sending out a proposal. Use after finalizing cover settings." }, { "slug": "BETTER_PROPOSALS_GET_ALL_COMPANIES", "name": "Get All Companies", "description": "Tool to retrieve a paginated list of all companies. Use when listing available companies for display or selection." }, { "slug": "BETTER_PROPOSALS_GET_ALL_CURRENCIES", "name": "Get All Currencies", "description": "Tool to retrieve a paginated list of all currencies. Use when listing available currency options before selection." }, { "slug": "BETTER_PROPOSALS_GET_ALL_DOCUMENT_TYPES", "name": "Get All Document Types", "description": "Tool to retrieve a paginated list of all document types. Use when you need to display or select a document type ID." }, { "slug": "BETTER_PROPOSALS_GET_ALL_PROPOSALS", "name": "Get All Proposals", "description": "Tool to retrieve a paginated list of all proposals. Use when you need to fetch proposals list after validating credentials." }, { "slug": "BETTER_PROPOSALS_GET_ALL_QUOTES", "name": "Get All Quotes", "description": "Tool to retrieve a paginated list of all quotes. Use after setting pagination parameters." }, { "slug": "BETTER_PROPOSALS_GET_ALL_TEMPLATES", "name": "Get All Templates", "description": "Tool to retrieve a paginated list of all templates. Use when you need to list available templates for selection." }, { "slug": "BETTER_PROPOSALS_GET_BRAND_SETTINGS", "name": "Get Brand Settings", "description": "Tool to retrieve settings for the default brand. Use when you need default-brand configuration (colors, tax, name, etc.) before creating or customizing documents." }, { "slug": "BETTER_PROPOSALS_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve details of a specific company. Use when you need company metadata by ID." }, { "slug": "BETTER_PROPOSALS_GET_CURRENCY", "name": "Get Currency", "description": "Tool to retrieve details of a specific currency. Use when you need currency metadata by ID." }, { "slug": "BETTER_PROPOSALS_GET_NEW_PROPOSALS", "name": "Get New Proposals", "description": "Tool to retrieve all new proposals. Use after validating credentials when you need only newly created proposals." }, { "slug": "BETTER_PROPOSALS_GET_OPENED_PROPOSALS", "name": "Get Opened Proposals", "description": "Tool to retrieve all opened proposals. Use when you need proposals that recipients have opened." }, { "slug": "BETTER_PROPOSALS_GET_PAID_PROPOSALS", "name": "Get Paid Proposals", "description": "Tool to retrieve all paid proposals. Use when you need to list proposals that have been paid." }, { "slug": "BETTER_PROPOSALS_GET_PROPOSAL", "name": "Get Proposal", "description": "Tool to retrieve details of a specific proposal by ID. Use when you need complete proposal metadata and content." }, { "slug": "BETTER_PROPOSALS_GET_PROPOSAL_COUNT", "name": "Get Proposal Count", "description": "Tool to retrieve the total count of proposals. Use when you need to know how many proposals exist." }, { "slug": "BETTER_PROPOSALS_GET_QUOTE", "name": "Get Quote", "description": "Tool to retrieve details of a specific quote. Use when you need full quote data by ID." }, { "slug": "BETTER_PROPOSALS_GET_SENT_PROPOSALS", "name": "Get Sent Proposals", "description": "Tool to retrieve all sent proposals. Use after dispatching proposals to clients to list them." }, { "slug": "BETTER_PROPOSALS_GET_SETTINGS", "name": "Get Settings", "description": "Tool to retrieve current account settings. Use when you need default currency, tax, and timezone configuration before creating proposals." }, { "slug": "BETTER_PROPOSALS_GET_SIGNED_PROPOSALS", "name": "Get Signed Proposals", "description": "Tool to retrieve all signed proposals. Use when you need to list proposals clients have signed after confirming credentials." }, { "slug": "BETTER_PROPOSALS_GET_TEMPLATE", "name": "Get Template Details", "description": "Tool to retrieve details of a specific template. Use after selecting the template ID to fetch metadata." }, { "slug": "BETTER_PROPOSALS_LIST_MERGE_TAGS", "name": "List Merge Tags", "description": "Tool to retrieve custom merge tags with pagination support. Use when you need to list available merge tags for templates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "better_proposals_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key used for authenticating requests to the Better Proposals API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "better_stack", "name": "Better Stack", "logo": "https://logos.composio.dev/api/better_stack", "description": "Better Stack provides monitoring, logging, and incident management solutions to help teams ensure the reliability and performance of their applications.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 117, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BETTER_STACK_ACKNOWLEDGE_INCIDENT", "name": "Acknowledge Incident", "description": "Tool to acknowledge an ongoing incident. Use when you need to mark an incident as being worked on, which prevents further escalations. Acknowledging an incident signals that someone is actively addressing the issue." }, { "slug": "BETTER_STACK_CREATE_ESCALATION_POLICY", "name": "Create Escalation Policy", "description": "Creates a new escalation policy for incident management. Escalation policies define who gets notified and in what order when incidents occur. Supports multiple step types: 'escalation' (notify members), 'instructions' (guidance text), 'time_branching' (route by schedule), and 'metadata_branching' (route by incident metadata). For escalation steps, a valid urgency_id from the Severities API is required." }, { "slug": "BETTER_STACK_CREATE_HEARTBEAT", "name": "Create Heartbeat", "description": "Tool to create a new heartbeat monitor for cron jobs and scheduled tasks. Use when you need to set up monitoring for a service that should send regular heartbeat signals." }, { "slug": "BETTER_STACK_CREATE_HEARTBEAT_GROUP", "name": "Create Heartbeat Group", "description": "Tool to create a new heartbeat group. Use when you need to organize related heartbeat checks under a single, logical group. Example prompt: \"Create a new heartbeat group named 'Backend services'.\"" }, { "slug": "BETTER_STACK_CREATE_INCIDENT", "name": "Create Incident", "description": "Tool to create a new incident and alert the on-call person. Use when you need to manually report an incident or trigger escalation workflows. The incident will be routed according to the specified escalation policy or default team settings." }, { "slug": "BETTER_STACK_CREATE_INCIDENT_COMMENT", "name": "Create Incident Comment", "description": "Tool to create a new comment on an incident. Use when you need to add documentation, updates, or notes to an existing incident in Better Stack." }, { "slug": "BETTER_STACK_CREATE_METADATA", "name": "Create Metadata", "description": "Tool to create or update a metadata record for a resource. Metadata provides key-value associations for resources like monitors, heartbeats, or incidents. Use when you need to tag or annotate resources with custom data. Existing values for the specified key will be completely replaced." }, { "slug": "BETTER_STACK_CREATE_MONITOR", "name": "Create Monitor", "description": "Tool to create a new uptime monitor for a URL or service. Use when you need to set up monitoring for websites, APIs, servers, or network services. Supports multiple monitor types including HTTP/HTTPS status checks, keyword monitoring, ping, TCP/UDP, email protocols, DNS queries, and browser automation with Playwright." }, { "slug": "BETTER_STACK_CREATE_MONITOR_GROUP", "name": "Create Monitor Group", "description": "Tool to create a new monitor group. Use when you need to organize related monitors under a single, logical group for better dashboard organization." }, { "slug": "BETTER_STACK_CREATE_ON_CALL_SCHEDULE", "name": "Create On-Call Schedule", "description": "Tool to create a new on-call schedule. Use when you need to set up a new on-call calendar for managing team rotations." }, { "slug": "BETTER_STACK_CREATE_OUTGOING_WEBHOOK", "name": "Create Outgoing Webhook Integration", "description": "Tool to create a new outgoing webhook integration. Use when you need to register an endpoint to receive event notifications from Better Stack." }, { "slug": "BETTER_STACK_CREATE_POLICY_GROUP", "name": "Create Escalation Policy Group", "description": "Tool to create a new escalation policy group. Use when you need to organize related escalation policies under a single logical group." }, { "slug": "BETTER_STACK_CREATE_SOURCE_GROUP", "name": "Create Source Group", "description": "Tool to create a new source group. Use when you have finalized the group name (and optional sort index) and need to organize related log sources under that group." }, { "slug": "BETTER_STACK_CREATE_STATUS_PAGE_GROUP", "name": "Create Status Page Group", "description": "Tool to create a new status page group. Use when you need to organize related status pages under a single logical group with a descriptive name." }, { "slug": "BETTER_STACK_CREATE_STATUS_PAGE_REPORT", "name": "Create Status Page Report", "description": "Tool to create a new status page report (incident or maintenance). Use when you need to publish a status update about an ongoing incident or scheduled maintenance on a status page." }, { "slug": "BETTER_STACK_CREATE_STATUS_PAGE_RESOURCE", "name": "Create Status Page Resource", "description": "Tool to create a new status page resource. Use when you need to add a monitor, heartbeat, or other resource to a status page for public visibility tracking." }, { "slug": "BETTER_STACK_CREATE_STATUS_PAGE_SECTION", "name": "Create Status Page Section", "description": "Tool to create a new section on a status page. Use when organizing resources into logical groups (e.g., by datacenter or service type). Leave name blank to hide the section header." }, { "slug": "BETTER_STACK_CREATE_STATUS_UPDATE", "name": "Create Status Update", "description": "Tool to create a new status update for an existing status report. Use when you need to post an update about the current state of an incident or maintenance. The update can include a message, affected resources with their status, and optionally notify subscribers." }, { "slug": "BETTER_STACK_CREATE_URGENCIES", "name": "Create Severity Level", "description": "Tool to create a new severity level (urgency) for incident management. Use when you need to define notification preferences for different incident severity levels." }, { "slug": "BETTER_STACK_CREATE_URGENCY_GROUP", "name": "Create Urgency Group", "description": "Tool to create a new urgency group (severity group) for incident categorization. Use when you need to define severity levels for monitoring alerts and incidents." }, { "slug": "BETTER_STACK_DELETE_ESCALATION_POLICY", "name": "Delete Escalation Policy", "description": "Tool to delete an escalation policy by ID. Use when you need to permanently remove an existing escalation policy after confirming its ID." }, { "slug": "BETTER_STACK_DELETE_HEARTBEAT", "name": "Delete Heartbeat", "description": "Tool to permanently delete a heartbeat by ID. Use when you need to remove a heartbeat that is no longer needed." }, { "slug": "BETTER_STACK_DELETE_HEARTBEAT_GROUP", "name": "Delete Heartbeat Group", "description": "Tool to permanently delete a heartbeat group by ID. Use when you need to remove a heartbeat group that is no longer needed." }, { "slug": "BETTER_STACK_DELETE_INCIDENT", "name": "Delete Incident", "description": "Tool to permanently delete an existing incident by ID. Use when you need to remove an incident from Better Stack Uptime." }, { "slug": "BETTER_STACK_DELETE_INCIDENT_COMMENT", "name": "Delete Incident Comment", "description": "Tool to delete an existing comment from an incident. Use when you need to remove a comment that was previously added via the API. Note: Only comments created via the API can be deleted; comments created in the UI cannot be deleted via the API." }, { "slug": "BETTER_STACK_DELETE_MONITOR", "name": "Delete Monitor", "description": "Tool to permanently delete a monitor by ID from Better Stack Uptime. Use when you need to remove a monitor that is no longer needed." }, { "slug": "BETTER_STACK_DELETE_MONITOR_GROUP", "name": "Delete Monitor Group", "description": "Tool to permanently delete a monitor group by ID from Better Stack Uptime. Use when you need to remove a monitor group that is no longer needed." }, { "slug": "BETTER_STACK_DELETE_ON_CALL_SCHEDULE", "name": "Delete On-Call Schedule", "description": "Tool to permanently delete an on-call schedule by ID. Use when you need to remove an on-call calendar that is no longer needed." }, { "slug": "BETTER_STACK_DELETE_OUTGOING_WEBHOOK", "name": "Delete Outgoing Webhook Integration", "description": "Tool to delete an outgoing webhook integration by ID. Use when you need to permanently remove an existing webhook integration." }, { "slug": "BETTER_STACK_DELETE_POLICY_GROUP", "name": "Delete Escalation Policy Group", "description": "Tool to delete an escalation policy group by ID. Use when you need to permanently remove an existing escalation policy group after confirming its ID." }, { "slug": "BETTER_STACK_DELETE_SOURCE_GROUP", "name": "Delete Source Group", "description": "Tool to permanently delete a source group by ID from Better Stack Telemetry (Logs). Source groups are used to organize related log sources. Use this action when you need to remove a source group that is no longer needed. Note: This action requires a Telemetry API token (not an Uptime API token). Deleting a source group does not delete the sources within it - they will become ungrouped." }, { "slug": "BETTER_STACK_DELETE_STATUS_PAGE_GROUP", "name": "Delete Status Page Group", "description": "Tool to delete a status page group by ID. Use when you need to permanently remove an existing status page group." }, { "slug": "BETTER_STACK_DELETE_STATUS_PAGE_REPORT", "name": "Delete Status Page Report", "description": "Tool to permanently delete a status page report by ID from Better Stack Uptime. Use this action when you need to remove an existing status page report that is no longer needed. The report will be permanently deleted and cannot be recovered." }, { "slug": "BETTER_STACK_DELETE_STATUS_PAGE_RESOURCE", "name": "Delete Status Page Resource", "description": "Tool to delete an existing resource from a status page. Use when you need to permanently remove a resource (monitor or heartbeat) that is displayed on a status page." }, { "slug": "BETTER_STACK_DELETE_STATUS_PAGE_SECTION", "name": "Delete Status Page Section", "description": "Tool to permanently delete a status page section by ID. Use when you need to remove a section from a status page that is no longer needed. Sections organize resources on status pages for better visibility." }, { "slug": "BETTER_STACK_DELETE_STATUS_PAGE_STATUS_REPORT_STATUS_UPDATE", "name": "Delete Status Update", "description": "Tool to delete an existing status update from a status report. Use when you need to permanently remove a status update after confirming its ID." }, { "slug": "BETTER_STACK_DELETE_URGENCY", "name": "Delete Severity", "description": "Tool to delete a severity (urgency) by ID. Use when you need to permanently remove an existing severity level after confirming its ID." }, { "slug": "BETTER_STACK_DELETE_URGENCY_GROUP", "name": "Delete Urgency Group", "description": "Tool to permanently delete an urgency group (severity group) by ID. Use when you need to remove an existing severity group that is no longer needed." }, { "slug": "BETTER_STACK_ESCALATE_INCIDENT", "name": "Escalate Incident", "description": "Tool to escalate an ongoing incident to a user, team, schedule, policy, or organization. Use when you need to route an active incident to the appropriate responders with specified notification channels (call, SMS, email, push)." }, { "slug": "BETTER_STACK_GET_ESCALATION_POLICY", "name": "Get Escalation Policy", "description": "Tool to get a single escalation policy by its ID. Use when you need full details of a specific escalation policy including its steps, repeat settings, and team information." }, { "slug": "BETTER_STACK_GET_HEARTBEAT", "name": "Get Heartbeat", "description": "Tool to get a single heartbeat by ID. Use when you need to fetch details of a specific heartbeat." }, { "slug": "BETTER_STACK_GET_HEARTBEAT_AVAILABILITY", "name": "Get Heartbeat Availability", "description": "Tool to retrieve availability summary for a specific heartbeat. Use when you need availability metrics for a heartbeat within an optional date range." }, { "slug": "BETTER_STACK_GET_HEARTBEAT_GROUP", "name": "Get Heartbeat Group", "description": "Tool to get a single heartbeat group by ID. Use when you need to fetch details of a specific heartbeat group." }, { "slug": "BETTER_STACK_GET_INCIDENT_COMMENT", "name": "Get Incident Comment", "description": "Tool to get a single comment from an incident. Use when you need to retrieve details of a specific comment on a Better Stack incident." }, { "slug": "BETTER_STACK_GET_MONITOR", "name": "Get Monitor", "description": "Tool to get a single monitor. Use when you need full details of a specific monitor by its ID." }, { "slug": "BETTER_STACK_GET_MONITOR_AVAILABILITY", "name": "Get Monitor Availability", "description": "Tool to return an availability summary for a specific monitor. Use when you need uptime percentage and incident details within an optional date range." }, { "slug": "BETTER_STACK_GET_MONITOR_GROUPS", "name": "Get Monitor Group", "description": "Tool to get a single monitor group by ID. Use when you need to fetch details of a specific monitor group." }, { "slug": "BETTER_STACK_GET_MONITOR_GROUPS_MONITORS", "name": "Get Monitor Group's Monitors", "description": "Tool to get all monitors belonging to a monitor group. Use when you need to retrieve all monitors within a specific monitor group, with optional pagination support." }, { "slug": "BETTER_STACK_GET_MONITOR_RESPONSE_TIMES", "name": "Get Monitor Response Times", "description": "Retrieves response time performance metrics for a specific uptime monitor. Returns detailed timing data (DNS lookup, connection, TLS handshake, data transfer) grouped by geographic region. By default returns data for the last 24 hours. Use this to analyze monitor performance, identify latency issues, or compare response times across regions. Requires a valid monitor_id which can be obtained from the list_monitors action." }, { "slug": "BETTER_STACK_GET_ON_CALL_SCHEDULE", "name": "Get On-Call Schedule", "description": "Tool to get a single on-call schedule by ID. Use when you need to retrieve who is currently on-call for a specific schedule. Optionally specify a date to check on-call status at a specific time." }, { "slug": "BETTER_STACK_GET_OUTGOING_WEBHOOK", "name": "Get Outgoing Webhook Integration", "description": "Tool to get a single outgoing webhook integration by ID. Use when you need to retrieve details of a specific webhook integration." }, { "slug": "BETTER_STACK_GET_POLICY_GROUP", "name": "Get Escalation Policy Group", "description": "Tool to get a single escalation policy group. Use when you need full details of a specific escalation policy group by its ID." }, { "slug": "BETTER_STACK_GET_STATUS_PAGE", "name": "Get Status Page", "description": "Tool to get a single status page by ID. Use when you need detailed information about a specific status page." }, { "slug": "BETTER_STACK_GET_STATUS_PAGE_GROUP", "name": "Get Status Page Group", "description": "Tool to get a single status page group by ID. Use when you need to retrieve details of a specific status page group." }, { "slug": "BETTER_STACK_GET_STATUS_PAGE_REPORT", "name": "Get Status Page Report", "description": "Tool to get a single status page report by ID. Use when you need detailed information about a specific status report or incident." }, { "slug": "BETTER_STACK_GET_STATUS_PAGE_RESOURCE", "name": "Get Status Page Resource", "description": "Tool to get a single status page resource by ID. Use when you need detailed information about a specific resource on a status page." }, { "slug": "BETTER_STACK_GET_STATUS_PAGE_SECTION", "name": "Get Status Page Section", "description": "Tool to get a single status page section. Use when you need details of a specific section within a status page by its ID." }, { "slug": "BETTER_STACK_GET_STATUS_UPDATE", "name": "Get Status Update", "description": "Tool to get a single status update by its ID. Use when you need details of a specific status update for a status report on your status page." }, { "slug": "BETTER_STACK_GET_UPTIME_API_TOKEN", "name": "Get Uptime API Token", "description": "Tool to retrieve the configured Uptime API token. Use when you need the Uptime API token for subsequent authenticated API calls." }, { "slug": "BETTER_STACK_GET_URGENCY", "name": "Get Severity Level", "description": "Tool to get a single severity level (urgency) by ID. Use when you need to fetch details of a specific urgency configuration." }, { "slug": "BETTER_STACK_GET_URGENCY_GROUP", "name": "Get Urgency Group", "description": "Tool to get a single urgency group (severity group) by ID. Use when you need to fetch details of a specific urgency group." }, { "slug": "BETTER_STACK_LIST_AWS_CLOUDWATCH_INTEGRATIONS", "name": "List AWS CloudWatch Integrations", "description": "Tool to list all AWS CloudWatch integrations. Use when you need to retrieve and inspect all configured AWS CloudWatch on-call integrations." }, { "slug": "BETTER_STACK_LIST_AZURE_INTEGRATIONS", "name": "List Azure Integrations", "description": "Tool to list all Azure integrations. Use when you need to retrieve and inspect all configured Azure on-call integrations." }, { "slug": "BETTER_STACK_LIST_CATALOG_RELATIONS", "name": "List Catalog Relations", "description": "Tool to list all catalog relations. Use when you need to retrieve all catalog relations, supports pagination." }, { "slug": "BETTER_STACK_LIST_DATADOG_INTEGRATIONS", "name": "List Datadog Integrations", "description": "Tool to list all Datadog integrations. Use when you need to retrieve and inspect all configured Datadog on-call integrations." }, { "slug": "BETTER_STACK_LIST_ELASTIC_INTEGRATIONS", "name": "List Elastic Integrations", "description": "Tool to list Elastic integrations. Use when you need to retrieve and inspect all configured Elastic integrations." }, { "slug": "BETTER_STACK_LIST_EMAIL_INTEGRATIONS", "name": "List Email Integrations", "description": "Tool to list email integrations. Use when you need to retrieve and inspect all configured email integrations with optional team filtering and pagination support." }, { "slug": "BETTER_STACK_LIST_GOOGLE_MONITORING_INTEGRATIONS", "name": "List Google Monitoring Integrations", "description": "Tool to list all Google Monitoring integrations. Use when you need to view your configured Google Monitoring on-call integrations with pagination support." }, { "slug": "BETTER_STACK_LIST_GRAFANA_INTEGRATIONS", "name": "List Grafana Integrations", "description": "Tool to list all Grafana integrations. Use when you need to retrieve and inspect all configured Grafana integrations." }, { "slug": "BETTER_STACK_LIST_HEARTBEAT_GROUPS", "name": "List Heartbeat Groups", "description": "Tool to list all heartbeat groups. Use when you need to retrieve configured heartbeat groups with optional filtering by team name." }, { "slug": "BETTER_STACK_LIST_HEARTBEATS", "name": "List Heartbeats", "description": "Tool to list all heartbeats. Use when you need to retrieve your configured uptime heartbeats with optional pagination." }, { "slug": "BETTER_STACK_LIST_INCIDENTS_COMMENTS", "name": "List Incidents Comments", "description": "Tool to list all comments on an incident. Use when you need to retrieve all comments associated with a Better Stack incident." }, { "slug": "BETTER_STACK_LIST_INCIDENTS_TIMELINE", "name": "List Incidents Timeline", "description": "Tool to retrieve all timeline events for an incident. Use when you need to get a chronological history of events, comments, responses, and changes for a specific incident in Better Stack. Returns all timeline items without pagination." }, { "slug": "BETTER_STACK_LIST_INCIDENTS_UPTIME", "name": "List Incidents Uptime", "description": "Tool to list all incidents with optional filtering by monitor, heartbeat, date range, or resolution status. Supports pagination with default of 10 per page and maximum of 50." }, { "slug": "BETTER_STACK_LIST_JIRA_INTEGRATIONS", "name": "List Jira Integrations", "description": "Tool to list all Jira integrations. Use when you need to retrieve and inspect all configured Jira integrations." }, { "slug": "BETTER_STACK_LIST_METADATA", "name": "List Metadata", "description": "Tool to list all existing metadata. Use when you need to retrieve metadata records with optional filtering by team, owner resource ID, or owner resource type." }, { "slug": "BETTER_STACK_LIST_MONITOR_GROUPS", "name": "List Monitor Groups", "description": "Tool to list all monitor groups. Use when you need to retrieve existing monitor groups with optional team filtering and pagination support." }, { "slug": "BETTER_STACK_LIST_MONITORS", "name": "List Monitors", "description": "Tool to list all monitors. Use when you need to retrieve existing uptime monitors with optional filtering by URL or name and pagination." }, { "slug": "BETTER_STACK_LIST_NEW_RELIC_INTEGRATIONS", "name": "List New Relic Integrations", "description": "Tool to list New Relic integrations. Use when you need to retrieve and inspect all configured New Relic integrations with pagination support." }, { "slug": "BETTER_STACK_LIST_ON_CALL_EVENTS", "name": "List On-Call Schedule Events", "description": "Tool to list all events for a specific on-call schedule. Use when you need to retrieve the calendar of scheduled on-call periods for a team." }, { "slug": "BETTER_STACK_LIST_ON_CALL_SCHEDULES", "name": "List On-Call Schedules", "description": "Tool to list all on-call schedules. Use when you need to retrieve all configured on-call calendars." }, { "slug": "BETTER_STACK_LIST_OUTGOING_WEBHOOKS", "name": "List Outgoing Webhook Integrations", "description": "Tool to list all outgoing webhook integrations. Use when you need to retrieve configured webhook endpoints for event notifications." }, { "slug": "BETTER_STACK_LIST_PAGER_DUTY_WEBHOOKS", "name": "List PagerDuty Webhooks", "description": "Tool to list PagerDuty integrations. Use when you need to retrieve and inspect all configured PagerDuty integrations." }, { "slug": "BETTER_STACK_LIST_POLICIES", "name": "List Escalation Policies", "description": "Tool to list all escalation policies. Use when you need to retrieve existing escalation policies with optional filtering by team name." }, { "slug": "BETTER_STACK_LIST_POLICY_GROUPS", "name": "List Escalation Policy Groups", "description": "Tool to list all escalation policy groups. Use when you need to retrieve existing policy groups with optional team filtering and pagination support." }, { "slug": "BETTER_STACK_LIST_PROMETHEUS_INTEGRATIONS", "name": "List Prometheus Integrations", "description": "Tool to list all Prometheus integrations. Use when you need to retrieve and inspect all configured Prometheus on-call integrations." }, { "slug": "BETTER_STACK_LIST_SINGLE_INCIDENT", "name": "List Single Incident", "description": "Tool to retrieve detailed information about a single incident by its ID. Use when you need to get the full details of a specific incident including its status, timeline, affected regions, and notification settings." }, { "slug": "BETTER_STACK_LIST_SLACK_INTEGRATIONS", "name": "List Slack Integrations", "description": "Tool to list all Slack integrations. Use when you need to retrieve and inspect all configured Slack channel integrations." }, { "slug": "BETTER_STACK_LIST_SPLUNK_ON_CALL_INTEGRATIONS", "name": "List Splunk On-Call Integrations", "description": "Tool to list all Splunk On-Call integrations. Use when you need to retrieve and inspect all configured Splunk On-Call on-call integrations." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGE_GROUPS", "name": "List Status Page Groups", "description": "Tool to list all status page groups. Use when you need to retrieve existing status page groups with optional pagination." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGE_GROUPS_STATUS_PAGES", "name": "List Status Pages In Status Page Group", "description": "Tool to list status pages within a specific status page group. Use when you need to retrieve all status pages belonging to a particular group with optional pagination." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGE_REPORTS", "name": "List Status Page Reports", "description": "Tool to list all reports on a status page. Use when you need to retrieve existing status page reports with optional pagination via `page` and `per_page`." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGE_REPORT_STATUS_UPDATES", "name": "List Status Page Report Status Updates", "description": "Tool to list all status updates for a status page report. Use when you need to retrieve updates posted on a specific status page report with optional pagination." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGES", "name": "List Status Pages", "description": "Tool to list all your status pages. Use when you need to retrieve existing status pages with optional pagination." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGE_SECTIONS", "name": "List Status Page Sections", "description": "Tool to list all sections of a specific status page. Use when you need to retrieve the existing sections within a status page." }, { "slug": "BETTER_STACK_LIST_STATUS_PAGES_RESOURCES", "name": "List Status Page Resources", "description": "Tool to list all resources on a status page. Use when you need to retrieve existing resources with optional pagination." }, { "slug": "BETTER_STACK_LIST_URGENCIES", "name": "List Severity Levels", "description": "Tool to list all severity levels (urgencies). Use when you need to retrieve existing incident severity configurations with their notification settings." }, { "slug": "BETTER_STACK_LIST_URGENCY_GROUPS", "name": "List Urgency Groups", "description": "Tool to list all urgency groups (severity groups). Use when you need to retrieve existing urgency groups with optional team filtering and pagination support." }, { "slug": "BETTER_STACK_RESOLVE_INCIDENT", "name": "Resolve Incident", "description": "Tool to resolve an ongoing incident. Use when you need to mark an incident as resolved and close it. Resolving an incident signals that the issue has been fixed and stops any further escalations." }, { "slug": "BETTER_STACK_UPDATE_ESCALATION_POLICY", "name": "Update Escalation Policy", "description": "Tool to update an existing escalation policy. Use when you need to modify policy attributes like name, repeat settings, or escalation steps. Only the fields you provide will be updated (partial updates supported)." }, { "slug": "BETTER_STACK_UPDATE_HEARTBEAT", "name": "Update Heartbeat", "description": "Tool to update an existing heartbeat configuration. Use after retrieving a heartbeat and choosing which fields to change." }, { "slug": "BETTER_STACK_UPDATE_HEARTBEAT_GROUP", "name": "Update Heartbeat Group", "description": "Updates an existing heartbeat group's properties. Use to rename a group, change its display order, or pause/resume monitoring for all heartbeats in the group." }, { "slug": "BETTER_STACK_UPDATE_INCIDENT_COMMENT", "name": "Update Incident Comment", "description": "Tool to update an existing comment on an incident. Use when you need to modify the content of a comment that was previously added to a Better Stack incident." }, { "slug": "BETTER_STACK_UPDATE_MONITOR", "name": "Update Monitor", "description": "Tool to update an existing uptime monitor configuration. Use when you need to modify settings of an existing monitor such as check frequency, notification preferences, URLs, or monitoring behavior." }, { "slug": "BETTER_STACK_UPDATE_MONITOR_GROUP", "name": "Update Monitor Group", "description": "Updates an existing monitor group's properties. Use to rename a group, change its display order, or pause/resume monitoring for all monitors in the group." }, { "slug": "BETTER_STACK_UPDATE_ON_CALL_SCHEDULE", "name": "Update On-Call Schedule", "description": "Tool to update an on-call schedule's name. Use when you need to rename an existing on-call calendar." }, { "slug": "BETTER_STACK_UPDATE_OUTGOING_WEBHOOK", "name": "Update Outgoing Webhook Integration", "description": "Tool to update an existing outgoing webhook integration. Use when you need to modify the configuration of a webhook endpoint." }, { "slug": "BETTER_STACK_UPDATE_POLICY_GROUP", "name": "Update Escalation Policy Group", "description": "Updates an existing escalation policy group's properties. Use to rename a group or change its display order." }, { "slug": "BETTER_STACK_UPDATE_SOURCE_GROUP", "name": "Update Source Group", "description": "Update an existing source group in Better Stack Logs/Telemetry. Use this to rename a source group or change its sort order. Requires a Telemetry API token (different from Uptime API token)." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGE_GROUP", "name": "Update Status Page Group", "description": "Tool to update an existing status page group. Use when you need to modify the name or display order of a status page group." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGE_REPORT", "name": "Update Status Page Report", "description": "Tool to update an existing status page report. Use when you need to modify the title, timing, or affected resources of an existing incident or maintenance report." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGE_RESOURCE", "name": "Update Status Page Resource", "description": "Tool to update an existing status page resource. Use when you need to modify the display name, position, widget type, or other properties of a resource on a status page." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGES", "name": "Update Status Pages", "description": "Tool to update an existing status page configuration. Use when modifying settings like company info, appearance, access control, or display preferences." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGE_SECTION", "name": "Update Status Page Section", "description": "Tool to update an existing status page section. Use when reorganizing sections or changing their display. Leave name blank to hide the section header." }, { "slug": "BETTER_STACK_UPDATE_STATUS_PAGE_STATUS_REPORT_STATUS_UPDATE", "name": "Update Status Update", "description": "Tool to update an existing status update for a status report. Use when you need to modify the message, affected resources, or other details of a previously created status update." }, { "slug": "BETTER_STACK_UPDATE_URGENCIES", "name": "Update Severity Level", "description": "Tool to update an existing severity level (urgency) configuration. Use when you need to modify notification settings or name for a specific severity level." }, { "slug": "BETTER_STACK_UPDATE_URGENCY_GROUP", "name": "Update Urgency Group", "description": "Tool to update an existing urgency group (severity group). Use when you need to modify the name or sort order of a severity group." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "better_stack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Better Stack API Token", "type": "string", "description": "The API token used for authenticating requests to the Better Stack API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bettercontact", "name": "Bettercontact", "logo": "https://logos.composio.dev/api/bettercontact", "description": "Smart Waterfall Email & Phone Finder for contact enrichment and lead generation", "category": "contact management", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BETTERCONTACT_CHECK_CREDITS_BALANCE", "name": "Check Credits Balance", "description": "Tool to check the remaining credits balance for a BetterContact account. Use when you need to verify available credits before making API requests that consume credits." }, { "slug": "BETTERCONTACT_CREATE_LEAD_FINDER_SEARCH", "name": "Create Lead Finder Search", "description": "Tool to create a new Lead Finder search to discover leads based on company and people criteria. Use when you need to find prospects matching specific job titles, departments, seniority, company size, industry, or technology stack." }, { "slug": "BETTERCONTACT_ENRICH_LEADS", "name": "Enrich Leads", "description": "Tool to create a lead enrichment request for work emails and direct phone numbers. Uses waterfall enrichment across multiple data providers for higher accuracy. Supports batches of 1-100 leads." }, { "slug": "BETTERCONTACT_GET_ENRICHMENT_RESULTS", "name": "Get Enrichment Results", "description": "Tool to retrieve enrichment results for a specific request ID. Use when you need to check the status and get enriched lead data including email addresses, contact information, and summary statistics for a submitted enrichment request." }, { "slug": "BETTERCONTACT_GET_LEAD_FINDER_RESULTS", "name": "Get Lead Finder Results", "description": "Tool to retrieve results from a submitted Lead Finder search. Returns comprehensive lead and company data including contact information, LinkedIn profiles, job titles, company details, and enrichment data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bettercontact_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard under \"Connection\" > \"API cockpit\" at https://app.bettercontact.rocks/api", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Email", "type": "string", "description": "Your BetterContact account email address. Required for the /account endpoint to verify authentication.", "required": false, "default": null } ] } } } ] }, { "slug": "bidsketch", "name": "Bidsketch", "logo": "https://logos.composio.dev/api/bidsketch", "description": "Bidsketch is a proposal software that helps businesses create professional proposals quickly and efficiently.", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BIDSKETCH_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a client. Use when adding a new client record to Bidsketch." }, { "slug": "BIDSKETCH_CREATE_PROPOSAL", "name": "Create Proposal", "description": "Tool to create a new proposal. Use when you need to create a proposal for a client with a name, description, and other details." }, { "slug": "BIDSKETCH_DELETE_CLIENT", "name": "Delete Client", "description": "Tool to delete a client and all their proposals. Use when you want to permanently remove a client and its associated proposals from your account." }, { "slug": "BIDSKETCH_DELETE_FEE", "name": "Delete Fee", "description": "Tool to delete a fee. Use when a saved fee is no longer needed. Use after confirming this fee isn't referenced in any live proposals." }, { "slug": "BIDSKETCH_DELETE_PROPOSAL", "name": "Delete Proposal", "description": "Tool to delete a proposal and all its content. Use after confirming the proposal ID to prevent accidental deletions." }, { "slug": "BIDSKETCH_DELETE_PROPOSAL_FEE", "name": "Delete Proposal Fee", "description": "Tool to delete a proposal fee. Use when you need to remove an existing fee before finalizing or sending a proposal." }, { "slug": "BIDSKETCH_DELETE_PROPOSAL_SECTION", "name": "Delete Proposal Section", "description": "Tool to delete a proposal section. Use when you need to remove a section from a proposal after verifying its ID." }, { "slug": "BIDSKETCH_DELETE_SECTION", "name": "Delete Section", "description": "Tool to delete a section. Use when you need to permanently remove a saved section after confirming its ID." }, { "slug": "BIDSKETCH_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently delete a webhook subscription by ID. This removes the webhook and stops all future event notifications to its endpoint. Use this tool when you no longer need to receive events at a specific webhook URL, or when cleaning up test webhooks. Returns HTTP 204 No Content on success, or HTTP 404 if the webhook ID doesn't exist." }, { "slug": "BIDSKETCH_GET_CLIENT", "name": "Get Client", "description": "Tool to get a client by ID. Use when you need detailed client info after obtaining its ID." }, { "slug": "BIDSKETCH_GET_CLIENT_PROPOSALS", "name": "Get Client Proposals", "description": "Tool to list proposals for a specific client. Use after confirming the client ID exists." }, { "slug": "BIDSKETCH_GET_CLIENTS", "name": "Get Clients", "description": "Tool to retrieve all clients. Use when you need to list all clients on the account." }, { "slug": "BIDSKETCH_GET_FEE", "name": "Get Fee", "description": "Tool to get a single fee. Use when you need detailed information about a fee by its ID after confirming its existence." }, { "slug": "BIDSKETCH_GET_FEES", "name": "Get Fees", "description": "Tool to list all the fees for the account. Use when you need to fetch every saved fee." }, { "slug": "BIDSKETCH_GET_PROPOSAL", "name": "Get Proposal", "description": "Tool to get a proposal by ID. Use when you need detailed information for a specific proposal after obtaining its ID." }, { "slug": "BIDSKETCH_GET_PROPOSAL_CONTENT", "name": "Get Proposal Content", "description": "Tool to get a proposal with all its content (sections and fees). Use when you need a full proposal in one call." }, { "slug": "BIDSKETCH_GET_PROPOSAL_FEE", "name": "Get Proposal Fee", "description": "Tool to get a single fee item for a proposal. Use when you need detailed information about a specific fee before updating or displaying it." }, { "slug": "BIDSKETCH_GET_PROPOSAL_FEES", "name": "Get Proposal Fees", "description": "Tool to list all fees for a proposal. Use after confirming the proposal ID exists; supports pagination." }, { "slug": "BIDSKETCH_GET_PROPOSALS", "name": "Get Proposals", "description": "Tool to retrieve all proposals for the account. Use when you need an overview of existing proposals." }, { "slug": "BIDSKETCH_GET_PROPOSAL_SECTION", "name": "Get Proposal Section", "description": "Tool to fetch a single proposal section. Use when you need detailed information for a section after listing proposal sections." }, { "slug": "BIDSKETCH_GET_PROPOSAL_SECTIONS", "name": "Get Proposal Sections", "description": "Tool to get all sections for a proposal. Use when you need to list opening or closing sections by proposal ID." }, { "slug": "BIDSKETCH_GET_PROPOSAL_STATS", "name": "Get Proposal Stats", "description": "Get proposal statistics for your Bidsketch account. This endpoint retrieves the total count of proposals in your account, including all proposals regardless of their status (draft, sent, won, lost, or archived). Use this when you need to: - Get a quick overview of total proposal count - Track the number of proposals created over time - Display proposal statistics in dashboards or reports No parameters required - simply call this action to get the current proposal count." }, { "slug": "BIDSKETCH_GET_SECTION", "name": "Get Section", "description": "Tool to fetch a section by ID. Use when you need detailed section information after confirming its ID." }, { "slug": "BIDSKETCH_GET_SECTIONS", "name": "Get Sections", "description": "Retrieves all reusable proposal sections saved to your Bidsketch account. Sections are text blocks that can be included in proposals, categorized as 'opening' (appear at the start) or 'closing' (appear at the end). Use this to browse available sections before adding them to proposals." }, { "slug": "BIDSKETCH_GET_TEMPLATES", "name": "Get Templates", "description": "Retrieves all proposal templates saved in the account. Templates contain predefined sections, fees, and structure that can be used to create new proposals. Use this action to discover available templates before creating proposals or to display template options to users." }, { "slug": "BIDSKETCH_LIST_PROPOSAL_CLOSING_SECTIONS", "name": "List Proposal Closing Sections", "description": "Tool to get a collection of closing sections for a proposal. Closing sections appear at the end of the proposal. Use when you need to retrieve all closing sections for a specific proposal." }, { "slug": "BIDSKETCH_LIST_PROPOSAL_OPENING_SECTIONS", "name": "List Proposal Opening Sections", "description": "Tool to get a collection of opening sections for a proposal. Opening sections appear first in the proposal. Use when you need to retrieve all opening sections for a specific proposal." }, { "slug": "BIDSKETCH_POST_FEE", "name": "Create Fee", "description": "Tool to create a fee. Use when you need to add a reusable fee to the account before adding it to a proposal. Ensure required fields are set (e.g., unit for custom fees)." }, { "slug": "BIDSKETCH_POST_PROPOSAL_FEE", "name": "Create Proposal Fee", "description": "Tool to create a proposal fee. Use after confirming the proposal exists to add a cost line item; require unit when feetype is custom." }, { "slug": "BIDSKETCH_POST_PROPOSAL_SECTION", "name": "Create Proposal Section", "description": "Tool to create a proposal section. Use after confirming a proposal exists to add a new opening or closing section." }, { "slug": "BIDSKETCH_POST_SECTION", "name": "Create Section", "description": "Tool to create a section. Use when you need to add a new section to your account before including it in proposals." }, { "slug": "BIDSKETCH_POST_WEBHOOK", "name": "Create Webhook", "description": "Create a webhook subscription in Bidsketch to receive real-time notifications when specific events occur. Webhooks enable your application to receive immediate notifications when events happen in Bidsketch, such as when clients are created or proposals are sent, viewed, accepted, or declined. Your webhook endpoint must be publicly accessible and respond with HTTP 200 OK to webhook POST requests. Bidsketch will retry failed deliveries up to 20 times. Common use cases: - Sync client data to your CRM when a new client is created - Trigger workflows when proposals are sent or viewed - Update project management tools when proposals are accepted - Send notifications to your team when proposals are declined" }, { "slug": "BIDSKETCH_PUT_CLIENT", "name": "Update Client", "description": "Tool to update a client. Use when you need to modify existing client records with new data." }, { "slug": "BIDSKETCH_PUT_FEE", "name": "Update Fee", "description": "Tool to update a fee. Use when you need to modify existing fee records with new data after verifying current values." }, { "slug": "BIDSKETCH_PUT_PROPOSAL", "name": "Update Proposal", "description": "Tool to update a specific proposal's details. Use after retrieving a proposal to apply changes." }, { "slug": "BIDSKETCH_PUT_PROPOSAL_FEE", "name": "Update Proposal Fee", "description": "Tool to update a proposal fee. Use when modifying specific properties of an existing fee within a proposal after verifying its existence." }, { "slug": "BIDSKETCH_PUT_PROPOSAL_SECTION", "name": "Update Proposal Section", "description": "Tool to update a proposal section. Use when you need to modify the name or content of an existing section after verifying its existence." }, { "slug": "BIDSKETCH_PUT_SECTION", "name": "Update Section", "description": "Tool to update a section. Use when you need to modify an existing section after confirming its ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bidsketch_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bidsketch API Token", "type": "string", "description": "The API token used for authenticating requests to the Bidsketch API. Obtain this from your Bidsketch account settings under the 'API & Integration' tab.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bigcommerce", "name": "Bigcommerce", "logo": "https://logos.composio.dev/api/bigcommerce", "description": "Enterprise e-commerce platform for building and managing online stores", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "bigcommerce_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "OAuth2 access token for API authentication", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "store_v2_products,store_v2_products_read_only,store_v2_orders,store_v2_orders_read_only,store_v2_customers,store_v2_customers_read_only,store_v2_content,store_v2_content_read_only,store_v2_marketing,store_v2_information_read_only" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store Hash", "type": "string", "description": "Your store hash (obtained from OAuth callback)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "bigcommerce_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store Hash", "type": "string", "description": "Your store hash (visible in API path: stores/{store_hash}/v3)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Store-level API access token from BigCommerce API Account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "big_data_cloud", "name": "BigDataCloud", "logo": "https://logos.composio.dev/api/big_data_cloud", "description": "BigDataCloud offers a suite of APIs providing geolocation, reverse geocoding, and data validation services.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BIG_DATA_CLOUD_AM_I_ROAMING_API", "name": "Am I Roaming API", "description": "Tool to determine if the user is roaming based on their IP address and GPS coordinates. Use after obtaining device location to verify roaming status before mobile actions." }, { "slug": "BIG_DATA_CLOUD_ASN_EXTENDED_RECEIVING_FROM_INFO_API", "name": "ASN Extended Receiving From Info API", "description": "Tool to return upstream providers (receivingFrom) for a given ASN. Use when you need a paginated list of ASes feeding traffic for the specified ASN." }, { "slug": "BIG_DATA_CLOUD_ASN_EXTENDED_TRANSIT_TO_INFO_API", "name": "ASN Extended Transit To Info API", "description": "Tool to return downstream customers (transitTo) for a given ASN. Use when you need a paginated list of ASes receiving traffic from a specific ASN." }, { "slug": "BIG_DATA_CLOUD_ASN_RANK_LIST_API", "name": "ASN Rank List API", "description": "Retrieves a ranked list of Autonomous Systems (ASNs) sorted by IPv4 address announcement volumes. Use cases: - Find the largest ASNs by IP address count (DoD, Amazon, Microsoft, etc.) - Look up ASN rankings for network analysis - Paginate through the global ASN database (79,000+ entries) - Sort ASNs by various criteria (rank, name, organisation, country) Returns paginated results with total count for navigation." }, { "slug": "BIG_DATA_CLOUD_BGP_ACTIVE_PREFIXES_API", "name": "BGP Active Prefixes API", "description": "Tool to retrieve IPv4 or IPv6 prefixes currently announced on BGP. Use when inspecting BGP routing announcements for a given ASN." }, { "slug": "BIG_DATA_CLOUD_COUNTRY_BY_IP_ADDRESS_API", "name": "Country by IP Address API", "description": "Tool to geolocate an IP address and retrieve country details and demographics. Use when you need country-level data after obtaining the target IP address." }, { "slug": "BIG_DATA_CLOUD_COUNTRY_INFO_API", "name": "Country Info API", "description": "Tool to fetch detailed country information by ISO code. Use when you need localized names, currencies, regions, and other metadata for a country." }, { "slug": "BIG_DATA_CLOUD_EMAIL_ADDRESS_VERIFICATION_API", "name": "Email Address Verification API", "description": "Tool to verify email addresses for syntax, domain validity, and disposability. Use after obtaining the email input." }, { "slug": "BIG_DATA_CLOUD_HAZARD_REPORT_API", "name": "Hazard Report API", "description": "Tool to fetch a cybersecurity hazard report for a specified IP address. Use when assessing an IP's threat profile (VPN, proxy, blacklists, hosting risk)." }, { "slug": "BIG_DATA_CLOUD_NETWORK_BY_CIDR", "name": "Networks by CIDR", "description": "Tool to retrieve BGP-announced networks within a specified CIDR range. Use when you need to analyze network announcements within a particular CIDR after confirming the range format." }, { "slug": "BIG_DATA_CLOUD_NETWORK_BY_IP_ADDRESS_API", "name": "Network by IP Address API", "description": "Tool to retrieve registry, ASN, and BGP details for a given IP address’s network. Use when you need detailed network information (e.g., ASNs, prefixes) after confirming the target IP." }, { "slug": "BIG_DATA_CLOUD_PHONE_NUMBER_VALIDATION_BY_IP", "name": "Phone Number Validation by IP", "description": "Tool to validate phone numbers by inferring country from client IP. Use when you want to validate a number without specifying country." }, { "slug": "BIG_DATA_CLOUD_REVERSE_GEOCODING_TIMEZONE_API", "name": "Reverse Geocoding With Timezone API", "description": "Tool to return reverse geocoding and time zone info for given coordinates. Use when you need both locality details and timezone data in one call." }, { "slug": "BIG_DATA_CLOUD_TIME_ZONE_BY_IP_ADDRESS_API", "name": "Time Zone by IP Address API", "description": "Tool to retrieve time zone information for a given IP address. Use when you need DST status, UTC offsets, and local/UTC time for a specific IP." }, { "slug": "BIG_DATA_CLOUD_TOR_EXIT_NODES_GEOLOCATED_API", "name": "Tor Exit Nodes Geolocated API", "description": "Retrieve a paginated list of active TOR exit node IP addresses with geolocation and carrier (ASN) details. Use this tool to: - Get a list of known TOR exit node IPs to detect/block anonymous traffic - Analyze geographic distribution of TOR exit nodes by country - Look up carrier/ASN information for TOR nodes - Build IP blocklists or allowlists for TOR traffic Returns nodes with IP address, country info (when available), and detailed carrier/ASN data including BGP prefix counts and global ranking." }, { "slug": "BIG_DATA_CLOUD_USER_AGENT_PARSER_API", "name": "User Agent Parser API", "description": "Tool to parse a User-Agent string into device, OS, browser, and bot details. Use when you have a raw User-Agent header and need structured client info." }, { "slug": "BIG_DATA_CLOUD_USER_RISK_API", "name": "User Risk API", "description": "Tool to return a risk assessment for a user based on IP signals for fraud prevention. Use after initial IP checks to decide whether to bypass or require captcha challenges." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bigdatacloud_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BigDataCloud API Key", "type": "string", "description": "Your unique API key obtained from your BigDataCloud account dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bigmailer", "name": "Bigmailer", "logo": "https://logos.composio.dev/api/bigmailer", "description": "BigMailer is an email marketing platform designed for managing multiple brands, offering features like white-labeling, automation, and integration with Amazon SES.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BIGMAILER_CREATE_BRAND", "name": "Create Brand", "description": "Tool to create a new brand in BigMailer. Brands are used to organize email campaigns and define default sending settings. Requires at minimum a brand name, from_name, and from_email. Returns the unique UUID of the created brand." }, { "slug": "BIGMAILER_CREATE_BRAND_PROPERTY", "name": "Create Brand Property", "description": "Tool to create a brand property in BigMailer. Use when you need to define a custom property for a brand that can be referenced in email templates via merge tags. The merge_tag_name allows the property to be used as *|TAG_NAME|* in templates." }, { "slug": "BIGMAILER_CREATE_BULK_CAMPAIGN", "name": "Create Bulk Campaign", "description": "Tool to create a bulk email campaign in BigMailer. Use when you need to send marketing emails to multiple recipients. The campaign can be sent immediately or scheduled for later. Throttling options allow you to control send rate. At minimum, you must provide a brand_id and campaign name. Use BIGMAILER_LIST_ALL_BRANDS to get valid brand IDs." }, { "slug": "BIGMAILER_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in BigMailer within a specified brand. Use when you need to add contacts to your mailing lists with optional custom fields and subscription settings. The contact's email address is required, and you can optionally add custom field values, assign to lists, and manage subscription status." }, { "slug": "BIGMAILER_CREATE_CONTACT_BATCH", "name": "Create Contact Batch", "description": "Tool to create a batch of contacts in BigMailer for a specific brand. Use when you need to upload multiple contacts (1-1000) at once. Supports custom fields, list assignments, and unsubscribe operations. The batch is queued for asynchronous processing and returns a batch ID for tracking." }, { "slug": "BIGMAILER_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a custom field in a BigMailer brand. Custom fields allow you to store additional contact information (text, date, or integer values). Use when you need to add a new field to track contact data like company name, birthday, or loyalty points." }, { "slug": "BIGMAILER_CREATE_LIST", "name": "Create List", "description": "Creates a new contact list within a specified brand in BigMailer. Use this to organize and segment contacts. The list must be associated with an existing brand. Use BIGMAILER_LIST_ALL_BRANDS to retrieve valid brand IDs before creating a list." }, { "slug": "BIGMAILER_CREATE_SEGMENT", "name": "Create Segment", "description": "Tool to create a segment in BigMailer for a specific brand. Segments allow filtering contacts based on conditions like campaign activity (opened, clicked) or custom field values. Use when you need to organize contacts into targeted groups for campaigns." }, { "slug": "BIGMAILER_CREATE_SUPPRESSION_LIST", "name": "Create Suppression List", "description": "Tool to upload a suppression list for a brand in BigMailer. Use when you need to add email addresses that should be excluded from campaigns. The file must be a CSV with email addresses in the first column of each row." }, { "slug": "BIGMAILER_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new email or page template in BigMailer. Templates can be used with bulk campaigns to define the HTML structure. Use when you need to create reusable email designs or landing pages. The template can be shared across all brands in the account if desired." }, { "slug": "BIGMAILER_CREATE_TRANSACTIONAL_CAMPAIGN", "name": "Create Transactional Campaign", "description": "Creates a new transactional campaign within a specified brand in BigMailer. Transactional campaigns are used for sending automated emails like welcome emails, password resets, order confirmations, etc. The campaign must be associated with an existing brand (use BIGMAILER_LIST_ALL_BRANDS to get valid brand IDs). Returns the unique ID of the created campaign on success." }, { "slug": "BIGMAILER_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in BigMailer. Use when you need to add team members with specific roles and permissions. Returns the unique UUID of the created user." }, { "slug": "BIGMAILER_DELETE_BRAND_PROPERTY", "name": "Delete Brand Property", "description": "Tool to delete a brand property from a brand in BigMailer. Use when you need to remove a custom property that was previously associated with a brand." }, { "slug": "BIGMAILER_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact from a brand in BigMailer. Use when you need to remove a contact permanently from a brand's contact list." }, { "slug": "BIGMAILER_DELETE_FIELD", "name": "Delete Custom Field", "description": "Deletes a custom field from a specified brand in BigMailer. Custom fields are used to store additional contact information. This action permanently removes the field and cannot be undone. Use this when you need to clean up unused fields or remove fields that are no longer needed." }, { "slug": "BIGMAILER_DELETE_LIST", "name": "Delete List", "description": "Tool to delete a list from BigMailer. Use when you need to permanently remove a list from a brand. Returns the ID of the deleted list upon success." }, { "slug": "BIGMAILER_DELETE_SEGMENT", "name": "Delete Segment", "description": "Tool to delete a segment from a brand in BigMailer. Use when you need to remove a segment that is no longer needed. Returns the ID of the deleted segment on success." }, { "slug": "BIGMAILER_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template from BigMailer. Use when you need to permanently remove a template from a brand. Returns the ID of the deleted template upon success." }, { "slug": "BIGMAILER_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user from BigMailer. Use when you need to permanently remove a user from the system. Returns the ID of the deleted user upon success." }, { "slug": "BIGMAILER_GET_BRAND", "name": "Get Brand", "description": "Tool to retrieve detailed information about a specific brand by its ID. Use when you need to get brand configuration, email settings, bounce thresholds, or other brand properties." }, { "slug": "BIGMAILER_GET_BRAND_PROPERTY", "name": "Get Brand Property", "description": "Tool to retrieve a specific brand property by its ID for a given brand. Use when you need to fetch details about a brand property, such as its name, merge tag name, value, or HTML status." }, { "slug": "BIGMAILER_GET_BULK_CAMPAIGN", "name": "Get Bulk Campaign", "description": "Tool to retrieve detailed information about a specific bulk campaign in BigMailer. Use when you need to get campaign details including status, content, recipient lists, and performance metrics like opens, clicks, bounces, and unsubscribes." }, { "slug": "BIGMAILER_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve detailed information about a specific contact from BigMailer. Use when you need to fetch contact details including email, custom field values, list memberships, and engagement metrics." }, { "slug": "BIGMAILER_GET_CONTACT_BATCH", "name": "Get Contact Batch Status", "description": "Tool to retrieve the status and results of a contact batch upload in BigMailer. Use when you need to check the processing status of a batch contact import or review the results of individual contacts in the batch." }, { "slug": "BIGMAILER_GET_FIELD", "name": "Get Custom Field", "description": "Tool to retrieve a custom field from a BigMailer brand. Use when you need to get details about a specific custom field including its ID, name, type, merge tag name, and sample value." }, { "slug": "BIGMAILER_GET_LIST", "name": "Get List", "description": "Tool to retrieve details of a specific list within a brand. Use when you need to get information about a list such as its name, creation time, and whether it's the special system list containing all contacts." }, { "slug": "BIGMAILER_GET_SEGMENT", "name": "Get Segment", "description": "Tool to retrieve a specific segment from BigMailer by brand ID and segment ID. Use when you need to get details about a segment including its conditions and operator." }, { "slug": "BIGMAILER_GET_SUPPRESSION_LIST", "name": "Get Suppression List", "description": "Tool to retrieve details of a specific suppression list for a brand in BigMailer. Use when you need to get information about a suppression list including its file name, size, and creation timestamp." }, { "slug": "BIGMAILER_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve detailed information about a specific template by its ID. Use when you need to get template content, HTML body, type, creation time, or sharing settings." }, { "slug": "BIGMAILER_GET_TRANSACTIONAL_CAMPAIGN", "name": "Get Transactional Campaign", "description": "Tool to retrieve detailed information about a specific transactional campaign in BigMailer. Use when you need to get campaign details including status, content, tracking settings, and performance metrics like opens, clicks, bounces, and unsubscribes." }, { "slug": "BIGMAILER_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information about a specific user by their ID. Use when you need to get user details including email, role, activation status, and brand permissions." }, { "slug": "BIGMAILER_GET_USER_INFO", "name": "Get User Information", "description": "This tool retrieves information about the authenticated user in BigMailer using the GET /me endpoint. It requires only authentication and no additional parameters, making it ideal for verifying API connectivity and retrieving essential user details." }, { "slug": "BIGMAILER_LIST_ALL_BRANDS", "name": "List All Brands", "description": "This tool retrieves a list of all brands associated with the authenticated BigMailer account. It allows users to view and manage their brands. The operation is executed via a simple GET request to the /brands endpoint and requires proper authentication using the X-API-Key header. The response is a JSON array containing information such as Brand ID, Brand name, and other related details." }, { "slug": "BIGMAILER_LIST_BRAND_PROPERTIES", "name": "List Brand Properties", "description": "Tool to retrieve a list of brand properties for a specific brand in BigMailer. Use when you need to view custom properties associated with a brand, such as merge tags and their values used in email campaigns." }, { "slug": "BIGMAILER_LIST_BULK_CAMPAIGNS", "name": "List Bulk Campaigns", "description": "Tool to list bulk campaigns for a specified brand in BigMailer. Use when you need to retrieve all bulk email campaigns associated with a brand, including their status, statistics, and configuration. Supports pagination using cursor-based navigation for large result sets." }, { "slug": "BIGMAILER_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to list all connections in your BigMailer account. Use when you need to retrieve connections for email delivery (e.g., AWS SES). Supports pagination for accounts with many connections." }, { "slug": "BIGMAILER_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts for a brand in BigMailer. Use when you need to retrieve contacts from a specific brand, optionally filtered by list membership. Supports pagination for large contact lists." }, { "slug": "BIGMAILER_LIST_FIELDS", "name": "List Fields", "description": "Tool to list custom fields for a brand in BigMailer. Use when you need to retrieve all custom fields defined for a specific brand, including field names, types, and merge tags." }, { "slug": "BIGMAILER_LIST_LISTS", "name": "List Contact Lists", "description": "Tool to retrieve all contact lists for a specified brand in BigMailer. Use when you need to view or manage contact lists within a brand, or when you need to get a list ID for other operations. Supports pagination for brands with many lists." }, { "slug": "BIGMAILER_LIST_MESSAGE_TYPES", "name": "List Message Types", "description": "Tool to list message types for a specific brand in BigMailer. Use when you need to retrieve available message type categories that can be used for organizing and categorizing email campaigns. Supports filtering by type (user-created, account-level, or all) and pagination for large result sets." }, { "slug": "BIGMAILER_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to list segments for a brand in BigMailer. Use when you need to retrieve and view all segments associated with a specific brand. Segments are used to organize and filter contacts based on conditions like campaign activity or field values." }, { "slug": "BIGMAILER_LIST_SENDERS", "name": "List Senders", "description": "Tool to list all senders configured for a specific brand in BigMailer. Use when you need to retrieve sender identities (domains or email addresses) associated with a brand, including their verification status and DNS configuration details." }, { "slug": "BIGMAILER_LIST_SUPPRESSION_LISTS", "name": "List Suppression Lists", "description": "Tool to list suppression lists for a specific brand. Suppression lists contain contacts that should be excluded from campaigns. Use this to view and manage suppression lists associated with a brand. Supports pagination via cursor and limit parameters." }, { "slug": "BIGMAILER_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates for a brand in BigMailer. Use when you need to retrieve all templates associated with a specific brand. Templates can be email or SMS templates used for campaigns and transactional messages." }, { "slug": "BIGMAILER_LIST_TRANSACTIONAL_CAMPAIGNS", "name": "List Transactional Campaigns", "description": "Tool to list transactional campaigns for a specified brand in BigMailer. Use when you need to retrieve all transactional email campaigns associated with a brand, including their status, statistics, and configuration. Supports pagination using cursor-based navigation for large result sets." }, { "slug": "BIGMAILER_LIST_USERS", "name": "List Users", "description": "Tool to list all users in your BigMailer account. Use when you need to retrieve user information, check account access, or manage user permissions. Supports pagination for accounts with many users." }, { "slug": "BIGMAILER_UPDATE_BRAND", "name": "Update Brand", "description": "Tool to update a brand in BigMailer. Use when you need to modify brand settings such as name, email defaults, contact limits, bounce settings, or branding elements. Only the fields provided in the request will be updated; unspecified fields retain their current values." }, { "slug": "BIGMAILER_UPDATE_BRAND_PROPERTY", "name": "Update Brand Property", "description": "Tool to update a brand property in BigMailer. Use when you need to modify properties of an existing brand, such as the property name, merge tag name, string value, or HTML flag. At least one of the optional fields must be provided." }, { "slug": "BIGMAILER_UPDATE_BULK_CAMPAIGN", "name": "Update Bulk Campaign", "description": "Tool to update an existing bulk campaign in BigMailer. Use when modifying campaign properties like name, subject, content, recipients, scheduling, or tracking settings. Only the name field is required; all other fields are optional and will only update if provided." }, { "slug": "BIGMAILER_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in BigMailer. Use when you need to modify contact details, manage list subscriptions, or update field values. Supports multiple operation modes (add, replace, remove) for field_values, list_ids, and unsubscribe_ids." }, { "slug": "BIGMAILER_UPDATE_FIELD", "name": "Update Field", "description": "Tool to update a custom field in BigMailer. Use when you need to modify the name, merge tag name, or sample value of an existing field within a brand. At least one of merge_tag_name, name, or sample_value must be provided." }, { "slug": "BIGMAILER_UPDATE_LIST", "name": "Update List", "description": "Tool to update a list in BigMailer. Use when you need to rename an existing list within a brand. This action requires both the brand ID and list ID to identify the list to update." }, { "slug": "BIGMAILER_UPDATE_SEGMENT", "name": "Update Segment", "description": "Tool to update an existing segment in BigMailer. Use when modifying segment properties such as name, operator logic, or conditions. At least one field (name, operator, or conditions) should be provided to update the segment." }, { "slug": "BIGMAILER_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing email or page template in BigMailer. Use when you need to modify template properties such as name, HTML content, type, or sharing settings. Only the fields provided in the request will be updated; unspecified fields retain their current values." }, { "slug": "BIGMAILER_UPDATE_TRANSACTIONAL_CAMPAIGN", "name": "Update Transactional Campaign", "description": "Tool to update a transactional campaign in BigMailer. Use when you need to modify campaign settings such as name, subject, content, tracking options, or activation status. Only the fields provided in the request will be updated; unspecified fields retain their current values." }, { "slug": "BIGMAILER_UPDATE_USER", "name": "Update User", "description": "Tool to update a user in BigMailer. Use when you need to modify user settings such as email, role, or allowed brands. Only the fields provided will be updated." }, { "slug": "BIGMAILER_UPSERT_CONTACT", "name": "Upsert Contact", "description": "Tool to create or update a contact in a BigMailer brand. Use when you need to add a new contact or update an existing contact's information. If a contact with the given email already exists, it will be updated; otherwise, a new contact will be created. Optionally validates email deliverability before adding (requires validation credits)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bigmailer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BigMailer API Key", "type": "string", "description": "The API key obtained from the BigMailer API key management page.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Campaign ID", "type": "string", "description": "The unique identifier for the campaign, obtained from the campaign's 'API Settings' tab.", "required": false, "default": null } ] } } } ] }, { "slug": "bigml", "name": "Bigml", "logo": "https://logos.composio.dev/api/bigml", "description": "BigML is a comprehensive machine learning platform that simplifies the creation and deployment of predictive models through an intuitive web interface and a REST API.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 45, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BIGML_CREATE_EXTERNAL_CONNECTOR", "name": "Create External Connector", "description": "Tool to create a new external connector for data sources. Use after configuring external databases or search indices." }, { "slug": "BIGML_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project. Use when you need to group related BigML resources into a project." }, { "slug": "BIGML_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete an existing project. Use when you need to permanently remove a project resource after confirming it is not in use by other resources." }, { "slug": "BIGML_GET_CONFIGURATION", "name": "Get Configuration", "description": "Retrieves complete details of a BigML configuration by its ID to get stored parameters. Configuration resources in BigML store parameters that can be reused across different resources. Use this action to inspect stored configuration parameters, verify configuration settings, check processing status, or retrieve metadata after creating a configuration." }, { "slug": "BIGML_GET_EXTERNAL_CONNECTOR", "name": "Get External Connector", "description": "Retrieves complete details of a BigML external connector by its ID. External connectors enable BigML to import data from external databases (PostgreSQL, MySQL, SQL Server) or search engines (Elasticsearch). Use this action to inspect connection parameters, verify connector configuration, check processing status, or retrieve metadata after creating an external connector." }, { "slug": "BIGML_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a project by ID. Use when you need to inspect project metadata before analysis." }, { "slug": "BIGML_GET_SOURCE", "name": "Get Source", "description": "Retrieves complete details of a BigML source by its ID. Use this to get information about the raw data and its parsing configuration." }, { "slug": "BIGML_LIST_ANOMALIES", "name": "List Anomaly Detectors", "description": "Tool to list anomaly detector resources in your account. Use when you need to browse or paginate existing anomaly detectors with support for filtering, ordering, and pagination." }, { "slug": "BIGML_LIST_ANOMALY_SCORES", "name": "List Anomaly Scores", "description": "Tool to list anomaly score resources. Use when you need to browse or paginate existing anomaly scores for the authenticated user." }, { "slug": "BIGML_LIST_ASSOCIATIONS", "name": "List Associations", "description": "Tool to list association resources. Use when you need to browse or paginate existing associations for the authenticated user." }, { "slug": "BIGML_LIST_ASSOCIATION_SETS", "name": "List Association Sets", "description": "Tool to list association set resources in your account. Use when you need to browse or paginate existing association sets with support for filtering, ordering, and pagination." }, { "slug": "BIGML_LIST_BATCH_ANOMALY_SCORES", "name": "List Batch Anomaly Scores", "description": "Tool to list batch anomaly score resources. Use when you need to browse or paginate existing batch anomaly scores for the authenticated user." }, { "slug": "BIGML_LIST_BATCH_CENTROIDS", "name": "List Batch Centroids", "description": "Tool to list all batch centroid resources in your account with support for filtering, ordering, and pagination. Use when you need to browse or retrieve existing batch centroids for the authenticated user." }, { "slug": "BIGML_LIST_BATCH_PREDICTIONS", "name": "List Batch Predictions", "description": "Tool to list batch prediction resources. Use when you need to browse or paginate existing batch predictions for the authenticated user." }, { "slug": "BIGML_LIST_BATCH_PROJECTIONS", "name": "List Batch Projections", "description": "Tool to list batch projection resources with support for filtering, ordering, and pagination. Use when you need to browse or retrieve batch projections for the authenticated account." }, { "slug": "BIGML_LIST_BATCH_TOPIC_DISTRIBUTIONS", "name": "List Batch Topic Distributions", "description": "Tool to list batch topic distribution resources. Use when you need to browse or paginate existing batch topic distributions for the authenticated user." }, { "slug": "BIGML_LIST_CENTROIDS", "name": "List Centroids", "description": "Tool to list centroid resources. Use when you need to browse or paginate existing centroids for the authenticated user." }, { "slug": "BIGML_LIST_CLUSTERS", "name": "List Clusters", "description": "Tool to list cluster resources with support for filtering, ordering, and pagination. Use when you need to browse or paginate existing clusters for the authenticated user." }, { "slug": "BIGML_LIST_COMPOSITES", "name": "List Composites", "description": "Tool to list composite source resources. Use when you need to browse or paginate existing composites for the authenticated user." }, { "slug": "BIGML_LIST_CONFIGURATIONS", "name": "List Configurations", "description": "Tool to list all configuration resources in your account. Use when you need to browse or paginate existing configurations with support for filtering, ordering, and pagination." }, { "slug": "BIGML_LIST_CORRELATIONS", "name": "List Correlations", "description": "Tool to list correlation resources. Use when you need to browse or paginate existing correlations for the authenticated user." }, { "slug": "BIGML_LIST_DATASETS", "name": "List Datasets", "description": "Tool to list dataset resources. Use when you need to browse or paginate existing datasets for the authenticated user." }, { "slug": "BIGML_LIST_DEEPNETS", "name": "List Deepnets", "description": "Tool to list deep neural network resources. Use when you need to browse or paginate existing deepnets for the authenticated user." }, { "slug": "BIGML_LIST_ENSEMBLES", "name": "List Ensembles", "description": "Tool to list ensemble resources with filtering, ordering, and pagination support. Use when you need to browse or paginate existing ensembles for the authenticated user." }, { "slug": "BIGML_LIST_EVALUATIONS", "name": "List Evaluations", "description": "Tool to list evaluation resources. Use when you need to browse or paginate existing evaluations for the authenticated user." }, { "slug": "BIGML_LIST_EXECUTIONS", "name": "List Executions", "description": "Tool to list execution resources. Use when you need to browse or paginate existing executions for the authenticated user." }, { "slug": "BIGML_LIST_FORECASTS", "name": "List Forecasts", "description": "Tool to list forecast resources. Use when you need to browse or paginate existing forecasts for the authenticated user." }, { "slug": "BIGML_LIST_FUSIONS", "name": "List Fusions", "description": "Tool to list fusion resources. Use when you need to browse or paginate existing fusions for the authenticated user." }, { "slug": "BIGML_LIST_LIBRARIES", "name": "List Libraries", "description": "Tool to list WhizzML library resources. Use when you need to browse or paginate existing libraries for the authenticated user." }, { "slug": "BIGML_LIST_LINEAR_REGRESSIONS", "name": "List Linear Regressions", "description": "Tool to list linear regression resources. Use when you need to browse or paginate existing linear regressions for the authenticated user." }, { "slug": "BIGML_LIST_LOGISTIC_REGRESSIONS", "name": "List Logistic Regressions", "description": "Tool to list logistic regression resources. Use when you need to browse or paginate existing logistic regressions for the authenticated user." }, { "slug": "BIGML_LIST_MODELS", "name": "List Models", "description": "Tool to list model resources. Use when you need to browse or paginate existing models for the authenticated user." }, { "slug": "BIGML_LIST_OPTIMLS", "name": "List OptiMLs", "description": "Tool to list OptiML resources in your account. Use when you need to browse or paginate existing OptiML models with support for filtering, ordering, and pagination." }, { "slug": "BIGML_LIST_PCAS", "name": "List PCAs", "description": "Tool to list PCA resources. Use when you need to browse or paginate existing PCAs for the authenticated user." }, { "slug": "BIGML_LIST_PREDICTIONS", "name": "List Predictions", "description": "Tool to list prediction resources. Use when you need to browse or paginate existing predictions for the authenticated user." }, { "slug": "BIGML_LIST_PROJECTIONS", "name": "List Projections", "description": "Tool to list projection resources with support for filtering, ordering, and pagination. Use when you need to browse or retrieve projections for the authenticated account." }, { "slug": "BIGML_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all project resources in your account with support for filtering, ordering, and pagination. Use when you need to browse or paginate existing projects." }, { "slug": "BIGML_LIST_SAMPLES", "name": "List Samples", "description": "Tool to list sample resources. Use when you need to browse or paginate existing samples for the authenticated user." }, { "slug": "BIGML_LIST_SCRIPTS", "name": "List Scripts", "description": "Tool to list WhizzML script resources. Use when you need to browse or paginate existing scripts for the authenticated user." }, { "slug": "BIGML_LIST_SOURCES", "name": "List Sources", "description": "Tool to list source resources in your account. Use when you need to browse or paginate existing data sources with support for filtering, ordering, and pagination." }, { "slug": "BIGML_LIST_STATISTICAL_TESTS", "name": "List Statistical Tests", "description": "Tool to list statistical test resources. Use when you need to browse or paginate existing statistical tests for the authenticated user." }, { "slug": "BIGML_LIST_TIMESERIES", "name": "List Time Series", "description": "Tool to list time series resources. Use when you need to browse or paginate existing time series for the authenticated user." }, { "slug": "BIGML_LIST_TOPIC_DISTRIBUTIONS", "name": "List Topic Distributions", "description": "Tool to list topic distribution resources. Use when you need to browse or paginate existing topic distributions for the authenticated user." }, { "slug": "BIGML_LIST_TOPIC_MODELS", "name": "List Topic Models", "description": "Tool to list topic model resources. Use when you need to browse or paginate existing topic models for the authenticated user." }, { "slug": "BIGML_UPDATE_SOURCE", "name": "Update Source", "description": "Tool to update a source's name, description, tags, or parsing configuration. Use when you need to modify source metadata or field properties." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bigml_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key associated with your BigML account.", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your BigML account username.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bigpicture_io", "name": "BigPicture.io", "logo": "https://logos.composio.dev/api/bigpicture_io", "description": "BigPicture.io provides APIs and datasets for accessing comprehensive company data, including information on over 20 million profiles, used in applications like fintech products, cybersecurity, market research, and sales & marketing tools.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BIGPICTURE_IO_COMPANY_FIND", "name": "Company Find", "description": "Tool to lookup company data by domain name. Use when you need detailed company profile by providing a website domain. Use after confirming domain correctness." }, { "slug": "BIGPICTURE_IO_FIND_COMPANY_STREAM", "name": "Find Company Stream", "description": "Tool to lookup company data by domain with streaming response. Holds connection open until data is ready, avoiding 202 async responses. Use when you need immediate company data without async polling. Rate limited to 5 requests per minute." }, { "slug": "BIGPICTURE_IO_IP_TO_COMPANY", "name": "IP to Company Lookup", "description": "Lookup company information by IP address using BigPicture's IP-to-Company API. Returns detailed company data including: - Company name, domain, description, and legal name - Geographic location of the IP (city, state, country, coordinates) - Confidence score indicating match reliability (0.0-1.0) - Network ownership type: 'business' (company-owned), 'isp' (ISP), or 'hosting' (cloud provider) - Company metrics (employees, revenue, market cap) - Industry categorization - WHOIS and ASN registration data Use this tool when you need to identify which company owns or operates from a given IP address. Works with both IPv4 and IPv6 addresses." }, { "slug": "BIGPICTURE_IO_NAME_TO_DOMAIN_SEARCH", "name": "Name to Domain Search", "description": "Tool to find company domain(s) by company name. Use when you have a company name and need up to 3 likely domains." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bigpicture_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BigPicture.io API Key", "type": "string", "description": "Your BigPicture.io API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bilflo", "name": "Bilflo", "logo": "https://logos.composio.dev/api/bilflo", "description": "Next Gen Staffing Management Tools", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bilflo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to Bilflo Developer Portal, and go to Credentials (https://developer.bilflo.com/credentials)", "required": true, "default": null }, { "name": "generic_id", "displayName": "Company ID", "type": "string", "description": "Sign in to Bilflo and go to Settings > Company > Company Information. The Company ID is a GUID, displayed as \"API Access Key\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bitbucket_data_center", "name": "Bitbucket Data Center", "logo": "https://logos.composio.dev/api/bitbucket_data_center", "description": "Self-hosted Git solution for enterprise teams providing centralized code collaboration and management.", "category": "developer tools", "authSchemes": [ "API_KEY", "BASIC", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "bitbucket_data_center_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "PROJECT_READ,REPO_READ,REPO_WRITE" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Bitbucket Base URL", "type": "string", "description": "Your Bitbucket Data Center instance URL (e.g., https://bitbucket.example.com)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "bitbucket_data_center_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Bitbucket Base URL", "type": "string", "description": "Your Bitbucket Data Center instance URL (e.g., https://bitbucket.example.com)", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your Bitbucket Data Center username.", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Bitbucket Data Center password or app password.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "bitbucket_data_center_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Bitbucket Base URL", "type": "string", "description": "Your Bitbucket Data Center instance URL (e.g., https://bitbucket.example.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "HTTP Access Token or Personal Access Token", "type": "string", "description": "HTTP Access Token (user/project/repository level) or Personal Access Token with appropriate permissions. Get from Bitbucket Settings > HTTP access tokens or Personal access tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bitquery", "name": "Bitquery", "logo": "https://logos.composio.dev/api/bitquery", "description": "Bitquery provides historical and real-time indexed data for over 40 blockchains through GraphQL APIs, Websockets, SQL, and cloud providers.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BITQUERY_ARCHIVE_DATABASE_QUERY", "name": "Archive Database Query", "description": "Query the Bitquery Archive Database (V1 API) for historical blockchain data. The Archive Database provides complete historical blockchain data across 40+ blockchains including Bitcoin, Ethereum, BSC, Solana, and more. Data has a delay of tens of minutes to hours from real-time. For near-real-time data, use the Realtime Database Query instead. The V1 API uses blockchain-specific root types (bitcoin, ethereum, etc.) with fields like blocks, transactions, transfers, and trades. Queries support filtering, pagination with limit/offset, and sorting with orderBy. Example queries: - Bitcoin blocks: { bitcoin { blocks(limit: 5, orderBy: {descending: height}) { height } } } - Ethereum transactions: { ethereum { transactions(limit: 10) { hash value } } }" }, { "slug": "BITQUERY_COMBINED_DATABASE_QUERY", "name": "Combined Database Query", "description": "Query Bitquery's Combined Database (v2 API) for blockchain data across 40+ networks. Use this tool to fetch real-time and historical blockchain data including: - Blocks, transactions, and events - Token transfers and balances - DEX trades and liquidity data - Smart contract interactions - NFT data and metadata Supported networks include: Ethereum (eth), BSC (bsc), Polygon (matic), Solana, Tron, and more. The v2 API uses a different schema than v1 - use EVM(network: eth) instead of ethereum root field." }, { "slug": "BITQUERY_CONDITIONAL_METRICS", "name": "Conditional Metrics Snippet", "description": "Generate a Bitquery GraphQL metric snippet with conditional logic using the 'if:' attribute. This tool builds metric aggregation snippets (count, sum, avg, min, max) that can be embedded in Bitquery GraphQL queries. The 'if:' filter allows applying conditions directly to metric calculations, enabling conditional aggregation like counting only successful transactions. Output format examples: - count(if: {Block: {GasUsed: {gt: \"0\"}}}) - sum(of: Block_GasUsed if: {Block: {Time: {after: \"2024-01-01\"}}}) - myAlias: avg(of: Transaction_Value if: {Transaction: {Success: true}})" }, { "slug": "BITQUERY_DATABASE_SELECTION", "name": "Database Selection", "description": "Tool to select the database (archive, realtime, combined) to query at the top level of a GraphQL request. Use after determining whether you need live, historical, or combined blockchain data." }, { "slug": "BITQUERY_EARLY_ACCESS_PROGRAM_QUERY", "name": "Early Access Program Query", "description": "Execute GraphQL queries against the Bitquery Early Access Program (EAP) Streaming API. This tool queries the EAP endpoint (streaming.bitquery.io/eap) for real-time blockchain data. The EAP provides access to streaming data across various blockchain networks including Solana, EVM chains (Ethereum, Polygon, etc.), and others for evaluation purposes. Key features: - Real-time blockchain data with minimal latency - Supports both queries and subscriptions - Networks: Solana, Ethereum, Polygon (Matic), and other EVM-compatible chains Note: EAP is limited to real-time data only. For historical data, use the Archive Database Query. Existing users can continue using EAP; new users should prefer the V2 endpoint for most use cases. Example queries: - Get latest ETH blocks: { EVM(network: eth) { Blocks(limit: {count: 5}) { Block { Number Time } } } } - Solana DEX trades: subscription { Solana { DEXTrades { Block { Time } Trade { Price } } } }" }, { "slug": "BITQUERY_NETWORK_SELECTION", "name": "Network Selection", "description": "Tool to select the blockchain network for GraphQL queries. Use before constructing dataset or metric queries to ensure the correct chain is targeted." }, { "slug": "BITQUERY_OPTIONS_QUERY", "name": "Options Query", "description": "Tool to fetch GraphQL dataset options via schema introspection. Use when you need to discover root-level query fields and their arguments before building queries. Dataset and token availability varies by Bitquery environment; verify available fields here before constructing complex queries that depend on specific datasets." }, { "slug": "BITQUERY_PRICE_ASYMMETRY_METRIC", "name": "Price Asymmetry Metric", "description": "Tool to generate GraphQL PriceAsymmetry filter snippet. Use when you need to filter trades based on price asymmetry metric." }, { "slug": "BITQUERY_REALTIME_DATABASE_QUERY", "name": "Realtime Database Query", "description": "Query the Bitquery Streaming (V2) API for realtime blockchain data. This tool accesses the Bitquery Streaming API at streaming.bitquery.io/graphql which provides real-time blockchain data with minimal latency. Use this for recent data (within minutes). For historical data, use the Archive Database Query. Supported query formats: - V2 EVM queries: { EVM(network: eth) { Blocks(limit: {count: 5}) { Block { Number Time } } } } - V2 Bitcoin queries: { bitcoin(network: bitcoin) { blocks(limit: {count: 5}) { height timestamp { time } } } } Note: Requires an active Bitquery subscription for streaming API access." }, { "slug": "BITQUERY_SELECT_BY_METRIC", "name": "Select By Metric", "description": "Tool to generate a GraphQL metric snippet filtering by its value using selectWhere. Use when you need to include only metrics meeting specific value conditions (e.g., only positive sums)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bitquery_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key provided by Bitquery for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "blazemeter", "name": "Blazemeter", "logo": "https://logos.composio.dev/api/blazemeter", "description": "BlazeMeter is a continuous testing platform that enables users to create, run, and analyze performance and functional tests for web and mobile applications.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 92, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BLAZEMETER_CONVERT_TRANSACTIONS", "name": "Convert Transactions", "description": "Tool to convert transaction files to BlazeMeter DSL format for service virtualization. Use when importing API specifications (Swagger, HAR, YAML) to create virtual service transactions." }, { "slug": "BLAZEMETER_CREATE_API_MONITORING_SCHEDULE", "name": "Create API Monitoring Schedule", "description": "Tool to create a new schedule for running API monitoring tests. Use when you need to automate test runs at defined intervals after determining the correct cron expression and test or collection ID." }, { "slug": "BLAZEMETER_CREATE_MULTI_TEST", "name": "Create Multi Test", "description": "Tool to create a new multi-test within a specified project. Use after confirming the project ID. Example: \"Create a multi-test named 'load-test' in project 12345.\"" }, { "slug": "BLAZEMETER_CREATE_PRIVATE_LOCATION", "name": "Create Private Location", "description": "Tool to create a new private location in BlazeMeter. Private locations allow you to run performance tests from your own infrastructure. Use when you need to test internal applications or simulate load from specific geographic regions. Requires valid account and workspace IDs." }, { "slug": "BLAZEMETER_CREATE_PRIVATE_LOCATIONS_SERVERS", "name": "Create Private Location Agent", "description": "Creates a new agent (server) within a BlazeMeter private location. Use this when you need to add an agent to handle test execution in your private infrastructure. Save the returned agent ID for subsequent private location setup steps." }, { "slug": "BLAZEMETER_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new project within a BlazeMeter workspace. Projects are containers for organizing performance tests. Requires a valid workspace_id which can be obtained using the GET_WORKSPACES action. Returns the created project with its unique ID, timestamps, and other metadata." }, { "slug": "BLAZEMETER_CREATE_SEARCH", "name": "Create Search", "description": "Execute a search query against BlazeMeter entities using advanced filtering and sorting. Use when you need to find tests, multi-tests, masters, or other entities with complex criteria like name patterns, date ranges, or workspace filters." }, { "slug": "BLAZEMETER_CREATE_TAGS", "name": "Create Tag", "description": "Creates a new tag in BlazeMeter for organizing and categorizing resources. Tags can be used in searches and filters to group related assets. Use when you need to create a new tag category with a name and description." }, { "slug": "BLAZEMETER_CREATE_TEST", "name": "Create Test", "description": "Tool to create a new single test within a specified project. Use when registering a new performance test via API." }, { "slug": "BLAZEMETER_CREATE_WORKSPACES_ASSETS", "name": "Create Workspace Asset", "description": "Tool to create an asset in a workspace for test data management. Use when you need to create data models, test data, or other assets within a BlazeMeter workspace. Assets are used for organizing and managing test data, configurations, and related resources." }, { "slug": "BLAZEMETER_CREATE_WORKSPACES_ASSETS_DEPENDENCIES2", "name": "Create Asset Dependency", "description": "Tool to create a dependency relationship between two assets in a BlazeMeter workspace. Use when establishing that one asset depends on another asset. The source asset (aId) will depend on the target asset (targetDepId). This is useful for tracking asset relationships in the BlazeMeter Asset Repository." }, { "slug": "BLAZEMETER_CREATE_WORKSPACES_PACKAGES", "name": "Create Workspace Package", "description": "Creates a new package within a BlazeMeter workspace. Packages are used for managing and organizing test artifacts and dependencies. Use when you need to create a new package with a specific name, version, and optional dependencies." }, { "slug": "BLAZEMETER_CREATE_WORKSPACES_TRANSACTIONS", "name": "Create Workspace Transactions", "description": "Tool to create transactions in a BlazeMeter workspace for service virtualization. Use when you need to define mock API behaviors by specifying request matching criteria and response definitions. Transactions allow you to virtualize services and simulate API responses for testing purposes." }, { "slug": "BLAZEMETER_DELETE_API_MONITORING_SCHEDULE", "name": "Delete API Monitoring Schedule", "description": "Tool to delete a specific test schedule by its ID. Use when you need to remove a scheduled test by its unique schedule identifier." }, { "slug": "BLAZEMETER_DELETE_PRIVATE_LOCATION_WORKSPACE", "name": "Delete Private Location Workspace", "description": "Tool to remove a workspace from a private location. Use when you need to revoke a workspace's access to a specific private location by providing both the harbor ID and workspace ID." }, { "slug": "BLAZEMETER_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a specific project by its ID. Use when you need to remove a project from BlazeMeter. If the project contains tests or test reports, use the force parameter to delete it including all contents." }, { "slug": "BLAZEMETER_DELETE_TEST_FILE", "name": "Delete Test File", "description": "Tool to delete a file from a test. Use when you need to remove an uploaded file asset (JMX script, CSV data, or configuration) from a BlazeMeter test." }, { "slug": "BLAZEMETER_DELETE_TESTS", "name": "Delete Tests", "description": "Tool to delete a test by its ID. Use when you need to remove a performance test from BlazeMeter." }, { "slug": "BLAZEMETER_DELETE_WORKSPACE_ASSET_DEPENDENCY", "name": "Delete Workspace Asset Dependency", "description": "Tool to delete a dependency from a workspace's asset repository by its ID. Use when you need to remove a specific asset dependency." }, { "slug": "BLAZEMETER_DELETE_WORKSPACES_ASSETS", "name": "Delete Workspace Asset", "description": "Tool to delete an asset from a workspace in BlazeMeter's Asset Repository. Use when you need to remove an asset that is no longer needed. This permanently deletes the asset from the workspace." }, { "slug": "BLAZEMETER_DELETE_WORKSPACES_ASSETS_DEPENDENCIES", "name": "Delete Workspace Assets Dependencies", "description": "Tool to delete asset dependencies by source/target in a workspace. Use when you need to remove dependency relationships between workspace assets." }, { "slug": "BLAZEMETER_DELETE_WORKSPACES_LOGS", "name": "Delete Workspace Logs", "description": "Tool to delete master test execution logs from a BlazeMeter workspace. Use when you need to remove logs for specific test masters to free up storage space. The operation is irreversible and removes all logs associated with the specified master IDs." }, { "slug": "BLAZEMETER_DELETE_WORKSPACES_MANAGERS", "name": "Delete Workspace Managers", "description": "Tool to remove managers from a workspace. Use when you need to revoke manager access for one or more users by providing the workspace ID and an array of manager IDs." }, { "slug": "BLAZEMETER_DELETE_WORKSPACES_PACKAGES", "name": "Delete Workspace Package", "description": "Tool to delete a package from a workspace in the BlazeMeter Asset Repository. Use when you need to remove a package by its workspace and package identifiers." }, { "slug": "BLAZEMETER_DUPLICATE_TEST", "name": "Duplicate Test", "description": "Tool to duplicate an existing test by its ID. Use when you need to create a copy of a test with all its configuration settings." }, { "slug": "BLAZEMETER_EXPORT_PACKAGE", "name": "Export Package", "description": "Tool to export a package from BlazeMeter Asset Repository as a zip file. Use when you need to download or backup a package's assets and metadata." }, { "slug": "BLAZEMETER_EXPORT_WORKSPACES_PACKAGES", "name": "Export Workspaces Packages", "description": "Tool to export multiple packages from a workspace as a zip file. Use when you need to download and bundle multiple test packages for backup, transfer, or sharing purposes." }, { "slug": "BLAZEMETER_GENERATE_WORKSPACES_DATAMODELS", "name": "Generate Test Data from Data Model", "description": "Tool to generate test data from a data model in Asset Repository. Use when you need to create synthetic test data based on a predefined data model structure." }, { "slug": "BLAZEMETER_GENERATE_WORKSPACES_TESTDATA", "name": "Generate Workspace Test Data", "description": "Tool to generate synthetic test data on-the-fly without storing in Asset Repository. Use when you need to quickly generate test data based on a data model schema with generator functions. The data model defines entity schemas with properties, data types, and generator function requirements. Generator functions (like randText, regExp, randInt) create realistic synthetic data. Use the GET_GENERATOR_FUNCTIONS action to discover available generator functions and their parameters." }, { "slug": "BLAZEMETER_GET_ACCOUNTS", "name": "Get Accounts", "description": "Tool to retrieve a list of accounts associated with the authenticated user. Use after confirming valid authentication." }, { "slug": "BLAZEMETER_GET_API_MONITORING_SCHEDULE", "name": "Get API Monitoring Schedule", "description": "Tool to retrieve details of a specific API monitoring schedule by its ID. Use when you need to inspect the configuration or timing of an existing schedule." }, { "slug": "BLAZEMETER_GET_API_MONITORING_SCHEDULES", "name": "Get API Monitoring Schedules", "description": "Retrieves a paginated list of API monitoring test schedules. Use to enumerate, review, or manage scheduled test runs. IMPORTANT: At least one of testId, collectionId, workspaceId, or projectId must be provided. Use BLAZEMETER_GET_WORKSPACES or BLAZEMETER_GET_PROJECTS to get valid IDs for filtering." }, { "slug": "BLAZEMETER_GET_GENERATOR_FUNCTIONS", "name": "Get Generator Functions", "description": "Tool to retrieve all available test data generator functions from BlazeMeter Test Data API. Use when you need to discover what generator functions are available for creating synthetic test data. This action returns a comprehensive list of generator functions organized by category (numeric, text, datetime, logical, CSV, etc.), including function signatures, parameters, return types, descriptions, and usage examples." }, { "slug": "BLAZEMETER_GET_GENERATOR_SEEDLISTS", "name": "Get Generator Seed Lists", "description": "Tool to retrieve a list of all available seed lists from BlazeMeter Test Data Management API. Use when you need to view available seed list files that contain sample text such as names of countries, persons, streets, banks, months, weekdays, etc., for test data generation." }, { "slug": "BLAZEMETER_GET_INFO_HEALTH", "name": "Get Info Health", "description": "Tool to retrieve the BlazeMeter service health status. Use when you need to check if the service is operational and healthy." }, { "slug": "BLAZEMETER_GET_INFO_VERSION", "name": "Get Info Version", "description": "Tool to retrieve BlazeMeter service version information. Returns version details including git branch, commit hash, and build number. Use when you need to check the current version of the BlazeMeter service or verify which build is deployed." }, { "slug": "BLAZEMETER_GET_MASTERS_REPORTS_MAIN_SUMMARY", "name": "Get Masters Reports Main Summary", "description": "Tool to retrieve request statistics summary for a master test run. Use when you need high-level performance metrics including response times, throughput, error rates, and percentiles for a completed or running test execution." }, { "slug": "BLAZEMETER_GET_MULTI_TEST", "name": "Get Multi Test", "description": "Tool to retrieve details of a specific multi-test. Use after creating or listing multi-tests when you need full configuration and status. Minimal example: \"Get multi-test 12345678 with populated tests.\"" }, { "slug": "BLAZEMETER_GET_MULTI_TESTS", "name": "Get Multi Tests", "description": "Retrieves a paginated list of multi-tests within a BlazeMeter workspace. Multi-tests allow you to run multiple test configurations together. Use this to list, filter by project, and paginate through available multi-tests. Requires workspaceId (obtain via GET_WORKSPACES)." }, { "slug": "BLAZEMETER_GET_PRIVATE_LOCATIONS", "name": "Get Private Locations", "description": "Tool to retrieve a list of private locations filtered by account or workspace. Use when you need to list available private locations for performance testing." }, { "slug": "BLAZEMETER_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to retrieve detailed information about a specific project by its ID. Use when you need to fetch metadata for a single project including name, description, workspace association, and timestamps." }, { "slug": "BLAZEMETER_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a list of projects within a specified workspace. Use when you need to enumerate or page through projects under a given workspace." }, { "slug": "BLAZEMETER_GET_REGIONS", "name": "Get Regions", "description": "Tool to retrieve a list of all available test regions for API monitoring. Use when you need to identify valid region codes for scheduling tests or determining where tests can run." }, { "slug": "BLAZEMETER_GET_SEARCH_METADATA", "name": "Get Search Metadata", "description": "Retrieve metadata about searchable entities, fields, relationships, and operators in BlazeMeter's search API. Use when you need to understand available search entities, their fields, relationships between entities, or supported query operators." }, { "slug": "BLAZEMETER_GET_SHARED_FOLDERS", "name": "Get Shared Folders", "description": "Tool to retrieve a list of shared folders within a specified workspace. Use when you need to list or enumerate shared folders for organizing tests and assets." }, { "slug": "BLAZEMETER_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve a list of all tags from BlazeMeter Mock Services API. Use when you need to enumerate or page through tags for service virtualization." }, { "slug": "BLAZEMETER_GET_TEST_DETAILS", "name": "Get Test Details", "description": "Tool to retrieve complete details of a specific test by its ID. Use when you need full information about a test including configuration, executions, tags, and metadata." }, { "slug": "BLAZEMETER_GET_TESTS", "name": "Get Tests", "description": "Retrieve a list of performance tests filtered by workspace or project. Either workspaceId or projectId is required. Use this action to list all tests within a specific workspace or project, with support for pagination and sorting. Example: Get all tests in workspace 2225472: {\"workspaceId\": 2225472, \"limit\": 10}" }, { "slug": "BLAZEMETER_GET_TESTS_FILES", "name": "Get Tests Files", "description": "Tool to list all files associated with a test. Use when you need to view the files attached to a specific test, such as JMX scripts, CSV data files, or YAML configurations. The download links in the response are valid for 20 minutes." }, { "slug": "BLAZEMETER_GET_TEST_VALIDATIONS", "name": "Get Test Validations", "description": "Tool to retrieve validation results for a specific test by its ID. Use after uploading or modifying test files to confirm file validation status." }, { "slug": "BLAZEMETER_GET_USER", "name": "Get User", "description": "Retrieve the authenticated user's profile information including their default project and preferences. This tool fetches details about the currently authenticated BlazeMeter user, including: - Basic profile info (name, email, timezone) - Account status (enabled, roles) - Activity timestamps (created, last login, last access) - Default project and workspace configuration - User preferences and settings No parameters required - returns information based on the authentication credentials used." }, { "slug": "BLAZEMETER_GET_USER_ACTIVE_SESSIONS", "name": "Get User Active Sessions", "description": "Tool to retrieve the list of active test sessions for the authenticated user. Use when you need to check which performance tests or functional tests are currently running for the user. Returns an empty list if no sessions are active." }, { "slug": "BLAZEMETER_GET_USER_INVITES", "name": "Get User Invites", "description": "Tool to retrieve pending invites for the authenticated user. Use when checking for workspace or account invitations." }, { "slug": "BLAZEMETER_GET_USER_PROJECTS", "name": "Get User Projects", "description": "Tool to retrieve all projects belonging to the authenticated user. Use when you need to list projects accessible by the current user across all workspaces." }, { "slug": "BLAZEMETER_GET_WORKSPACE_DETAILS", "name": "Get Workspace Details", "description": "Tool to retrieve detailed information about a specific workspace by its ID. Use when you need to fetch workspace configuration, owner details, member count, allowances, available locations, and capabilities." }, { "slug": "BLAZEMETER_GET_WORKSPACE_PACKAGE", "name": "Get Workspace Package", "description": "Tool to retrieve a specific package by its ID from a workspace in the BlazeMeter Asset Repository. Use when you need to fetch detailed information about a package, including its metadata, version, and optionally its dependencies." }, { "slug": "BLAZEMETER_GET_WORKSPACES", "name": "Get Workspaces", "description": "Tool to retrieve a list of workspaces for a specified account. Use when you need to list or filter workspaces by account, status, or name." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS", "name": "Get Workspace Assets", "description": "Tool to retrieve all data models (assets) in a workspace for Test Data Management. Use when you need to list or search for test data assets within a specific workspace." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS2", "name": "Get Workspace Asset By ID", "description": "Tool to retrieve a specific asset by ID from the Test Data Management Asset Repository. Use when you need to fetch details of a single asset including metadata, data content, or dependencies." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS_DATA", "name": "Get Workspace Asset Data", "description": "Tool to retrieve data from a specific asset in a workspace's asset repository. Use when you need to fetch the actual content/data of an asset stored in BlazeMeter's Asset Repository." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS_DEPENDENCIES", "name": "Get Workspace Assets Dependencies", "description": "Tool to retrieve all dependencies for a given workspace with optional filtering criteria. Use when you need to understand asset relationships and dependencies within a workspace." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS_DEPENDENCIES2", "name": "Get Workspace Asset Dependency", "description": "Tool to retrieve a specific dependency by ID from a workspace's asset repository. Use when you need to fetch detailed information about a particular dependency asset." }, { "slug": "BLAZEMETER_GET_WORKSPACES_ASSETS_DEPENDENCIES3", "name": "Get Asset Dependencies", "description": "Tool to retrieve dependencies for a specific asset in a workspace from the BlazeMeter Asset Repository. Use when you need to list dependencies of an asset." }, { "slug": "BLAZEMETER_GET_WORKSPACES_DATAMODELS2", "name": "Get Workspace Data Model By ID", "description": "Tool to retrieve a specific data model by ID from a workspace in Test Data Management. Use when you need to fetch the schema and details of a particular data model for test data generation." }, { "slug": "BLAZEMETER_GET_WORKSPACE_SERVICE_MOCK_TEMPLATE_BY_ID", "name": "Get Virtual Service Template by ID", "description": "Tool to get virtual service template details from a specific workspace. Use when you need to retrieve configuration and metadata for a specific service mock template by its ID." }, { "slug": "BLAZEMETER_GET_WORKSPACES_PACKAGES", "name": "Get Workspace Packages", "description": "Tool to retrieve packages from a BlazeMeter workspace. Use when you need to list or filter packages within a specific workspace using the Asset Repository API." }, { "slug": "BLAZEMETER_GET_WORKSPACES_PACKAGES_DEPENDENCIES", "name": "Get Workspace Package Dependencies", "description": "Tool to retrieve package dependencies for a specific package in a workspace. Use when you need to list dependencies for a package managed in BlazeMeter's artifact repository." }, { "slug": "BLAZEMETER_GET_WORKSPACES_SERVICE_MOCK_TEMPLATES", "name": "Get Workspace Service Mock Templates", "description": "Tool to list virtual service templates available in a workspace. Use when you need to retrieve available service mock templates for service virtualization." }, { "slug": "BLAZEMETER_GET_WORKSPACES_TRANSACTIONS", "name": "Get Workspace Transactions", "description": "Tool to list transactions for virtual services in a workspace. Use when you need to retrieve transactions (request/response pairs) for service virtualization." }, { "slug": "BLAZEMETER_GET_WORKSPACES_USERS", "name": "Get Workspace Users", "description": "Tool to retrieve a list of users within a specified workspace. Use when you need to enumerate users, filter by roles, or check user status in a workspace." }, { "slug": "BLAZEMETER_IMPORT_WORKSPACE_PACKAGE", "name": "Import Workspace Package", "description": "Import a package from a ZIP file into a BlazeMeter workspace. Use to upload and deploy test packages, with an optional force parameter to overwrite existing packages with the same name." }, { "slug": "BLAZEMETER_LIST_GENERATOR_CARD_ISSUERS", "name": "List Generator Card Issuers", "description": "Tool to retrieve a list of available card issuers for test data generation. Use when you need to generate credit card test data and want to know which card issuer types are supported and their valid digit lengths." }, { "slug": "BLAZEMETER_PUBLISH_API_DATA", "name": "Publish API Data", "description": "Publishes test data through the BlazeMeter Test Data Management API. This tool enables API Publishing to initialize test environments by reading, writing, or deleting data before executing tests. Use when preparing stateful test environments with HTTP requests mapped to data entities." }, { "slug": "BLAZEMETER_REGISTER_USER", "name": "Register User", "description": "Tool to register a new user account in BlazeMeter. Use when creating a new user registration via API. This endpoint creates a new user with the provided credentials and returns the user details upon successful registration." }, { "slug": "BLAZEMETER_START_TEST", "name": "Start Test", "description": "Tool to start a preconfigured performance load test. Use when you need to execute a test that has already been created and configured. Returns a masterId that can be used to track test status, stop the test, or retrieve results." }, { "slug": "BLAZEMETER_STOP_MASTER", "name": "Stop Master", "description": "Gracefully stop a running BlazeMeter test execution (master) by its ID. The stop operation signals test sessions to close gracefully and archive test files. Use this to abort a running performance test. To find the master_id, use GET /masters endpoint filtered by testId or workspaceId. Note: This is a graceful stop - for immediate termination, use the terminate endpoint instead." }, { "slug": "BLAZEMETER_STOP_TEST", "name": "Stop Test", "description": "Tool to stop all active masters (test executions) for a given test ID. Use when you need to terminate all running sessions associated with a test. For more selective control, use the stop master action with a specific masterId to avoid terminating instances launched by other users." }, { "slug": "BLAZEMETER_TERMINATE_USER_ACTIVE_SESSIONS", "name": "Terminate User Active Sessions", "description": "Tool to immediately terminate active user sessions in BlazeMeter. Use when you need to forcefully stop running test sessions for the authenticated user. This is an immediate termination action - for graceful shutdown, use the stop endpoint instead." }, { "slug": "BLAZEMETER_TERMINATE_WORKSPACES_MASTERS", "name": "Terminate Workspaces Masters", "description": "Tool to terminate all running masters in a BlazeMeter workspace. Use when you need to stop all active test executions in a workspace. Set dryRun=true to preview which masters would be terminated without actually stopping them." }, { "slug": "BLAZEMETER_UPDATE_API_MONITORING_SCHEDULE", "name": "Update API Monitoring Schedule", "description": "Tool to update the configuration of an existing API monitoring schedule. Use when you need to enable or disable a schedule after confirming its ID." }, { "slug": "BLAZEMETER_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing BlazeMeter project by its ID. Use when you need to modify the name, description, or workspace association of a project. Only the fields you provide will be updated; all other fields remain unchanged." }, { "slug": "BLAZEMETER_UPDATE_TEST", "name": "Update Test", "description": "Tool to update details of a specific test by its ID. Use when you need to modify test configuration or name of an existing test after confirming its ID. Example: \"Update the test name to 'LoadTest' for test with ID '12345'.\"" }, { "slug": "BLAZEMETER_UPDATE_WORKSPACES_ASSETS", "name": "Update Workspace Asset", "description": "Tool to update an existing asset in a BlazeMeter workspace. Use when you need to modify asset properties such as name, display name, type, metadata, or data content. All fields are optional - provide only the fields you want to update. The asset is identified by workspace_id and asset_id." }, { "slug": "BLAZEMETER_UPDATE_WORKSPACES_ASSETS_DEPENDENCIES", "name": "Update Workspaces Assets Dependencies", "description": "Tool to update asset dependencies in a BlazeMeter workspace. Use when you need to define or modify the dependency relationships between assets. The provided dependencies list replaces all existing dependencies for the specified asset." }, { "slug": "BLAZEMETER_UPDATE_WORKSPACES_PACKAGES", "name": "Update Workspace Package", "description": "Tool to update an existing package in a BlazeMeter workspace. Use when you need to modify package properties such as name, display name, version, or dependencies. The package name field is required even when updating other fields." }, { "slug": "BLAZEMETER_UPDATE_WORKSPACES_PACKAGES_DEPENDENCIES", "name": "Update Workspace Package Dependencies", "description": "Tool to update package dependencies for a specific package in a workspace. Use when you need to add, modify, or remove dependencies for a package managed in BlazeMeter's artifact repository." }, { "slug": "BLAZEMETER_UPDATE_WORKSPACES_SERVICE_MOCK_TEMPLATES", "name": "Update Workspace Service Mock Template", "description": "Tool to update a virtual service template configuration (Service Virtualization). Use when you need to modify settings like name, description, live system configuration, endpoint preferences, or request handling behavior for an existing virtual service template." }, { "slug": "BLAZEMETER_UPDATE_WORKSPACE_USER", "name": "Update Workspace User", "description": "Tool to update a user's role and status within a BlazeMeter workspace. Use when you need to change a user's permissions (tester, manager, or viewer) or enable/disable their access. Only ONE role should be assigned per user. Requires valid workspace and user IDs." }, { "slug": "BLAZEMETER_UPLOAD_TEST_FILES", "name": "Upload Test Files", "description": "Upload a file asset (script, data file, or configuration) to a BlazeMeter test. Use after creating a test via CREATE_TEST to attach JMX scripts, CSV data files, YAML Taurus configs, or other test resources before execution." }, { "slug": "BLAZEMETER_UPLOAD_WORKSPACES_ASSETS_DATA", "name": "Upload Workspace Asset Data", "description": "Tool to upload asset data to a BlazeMeter workspace. Use when you need to upload CSV, JSON, or other data files to workspace assets for test data or configuration." }, { "slug": "BLAZEMETER_VALIDATE_TEST", "name": "Validate Test", "description": "Tool to validate a specific test by its ID. Use after creating or updating a test to ensure its configuration is valid." }, { "slug": "BLAZEMETER_VALIDATE_WORKSPACES_ASSETS", "name": "Validate Workspace Asset", "description": "Tool to validate a data model asset in a workspace for test data management. Use when you need to verify that a data model configuration is correct and passes validation rules before using it in tests." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "blazemeter_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "Account ID", "type": "string", "description": "The Account ID used for authentication.", "required": true, "default": null }, { "name": "username", "displayName": "API Key ID", "type": "string", "description": "The API Key ID used for authentication.", "required": true, "default": null }, { "name": "password", "displayName": "API Key Secret", "type": "string", "description": "The API Key Secret used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "blocknative", "name": "Blocknative", "logo": "https://logos.composio.dev/api/blocknative", "description": "Blocknative provides real-time mempool monitoring and transaction management tools for public blockchains.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BLOCKNATIVE_CONFIGURE_FILTERS", "name": "Configure Mempool Filters", "description": "Tool to configure filters and ABI decoding for Ethereum mempool transactions. Use after establishing a Blocknative WebSocket connection to set up event filters and decoding." }, { "slug": "BLOCKNATIVE_GET_GAS_DISTRIBUTION", "name": "Get Gas Price Distribution", "description": "Tool to retrieve the current mempool gas price distribution breakdown. Use when analyzing gas price trends or preparing fee strategies." }, { "slug": "BLOCKNATIVE_GET_GAS_ORACLES", "name": "Get Gas Oracles", "description": "Tool to retrieve metadata on supported gas oracles per chain. Use when you need to dynamically discover all available on-chain gas estimation oracles across networks." }, { "slug": "BLOCKNATIVE_GET_GAS_PRICES", "name": "Get Gas Prices", "description": "Tool to fetch gas price estimates for specific inclusion probabilities. Use when you need gas price ranges for the next block or next ~10 seconds." }, { "slug": "BLOCKNATIVE_GET_SUPPORTED_CHAINS", "name": "Get Supported Chains", "description": "Tool to retrieve supported chains metadata. Use when discovering available networks for Blocknative gas services." }, { "slug": "BLOCKNATIVE_PREDICTION_API_BASEFEE_ESTIMATES", "name": "Get Base Fee Estimates", "description": "Get real-time gas fee predictions for Ethereum mainnet's next 5 blocks. Returns base fee, blob base fee, and priority fee estimates at multiple confidence levels (99% and 50%). Essential for optimizing transaction costs and timing. Predictions include current block context (block number, time since last block) and estimated fees in gwei." }, { "slug": "BLOCKNATIVE_SUBSCRIBE_MULTICHAIN", "name": "Subscribe Multichain", "description": "Generate WebSocket connection details to subscribe to real-time blockchain events (transactions or account activity) across multiple chains via Blocknative's Multichain API. Returns the WebSocket URL and subscription message payload needed to establish the connection and start receiving event notifications for a specific transaction hash or account address on any supported blockchain." }, { "slug": "BLOCKNATIVE_SUBSCRIBE_TRANSACTION_HASH", "name": "Subscribe Transaction Hash", "description": "Tool to subscribe to transaction state change events of an Ethereum transaction hash. Use after establishing a Blocknative WebSocket connection to prepare the subscription message." }, { "slug": "BLOCKNATIVE_UNSUBSCRIBE_MULTICHAIN", "name": "Unsubscribe Multichain", "description": "Tool to unsubscribe from events across multiple chains using the Multichain SDK. Use after stopping monitoring of an address or transaction to clean up resources, e.g., call: blocknative.unsubscribe({ id: '0x..', chainId: '0x1' })." }, { "slug": "BLOCKNATIVE_UNSUBSCRIBE_TRANSACTION_HASH", "name": "Unsubscribe Transaction Hash", "description": "Tool to unsubscribe from transaction state change events for an Ethereum transaction hash. Use after establishing a Blocknative WebSocket connection to prepare the unsubscription message." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "blocknative_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Blocknative API Key", "type": "string", "description": "Your Blocknative API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "blogger", "name": "Blogger", "logo": "https://logos.composio.dev/api/bloggercom", "description": "Google Blogger API for managing blogs and posts", "category": "content & files", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "bloggercom_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/blogger,https://www.googleapis.com/auth/blogger.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "bloggercom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Google API Key for Blogger API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bluecart_api", "name": "Bluecart Api", "logo": "https://logos.composio.dev/api/bluecart_api", "description": "Walmart Product Data API for retrieving real-time Walmart product, search, category, and reviews data", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bluecart_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your BlueCart API key. Get it from https://app.bluecartapi.com/signup", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "boloforms", "name": "Boloforms", "logo": "https://logos.composio.dev/api/boloforms", "description": "BoloForms is an eSignature platform designed for small businesses, offering unlimited signatures, templates, forms, and team members at a fixed price.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOLOFORMS_GET_DOCUMENTS_LIST", "name": "Get Documents List", "description": "Retrieves a list of documents from a BoloForms workspace. Returns document metadata including IDs, names, signing types, status, and timestamps. Optionally filter by workspace ID. Use this to enumerate all documents available for signing, tracking, or management operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "boloforms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BoloForms API Key", "type": "string", "description": "The API key used for authenticating requests to the BoloForms API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bolt_iot", "name": "Bolt Iot", "logo": "https://logos.composio.dev/api/bolt_iot", "description": "Bolt IoT is an integrated platform that enables users to build IoT projects by connecting sensors and actuators to the internet, offering cloud-based control and monitoring capabilities.", "category": "internet of things", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOLT_IOT_ANALOG_READ", "name": "Analog Read", "description": "Tool to read the analog value from a specified pin on a Bolt device. Use when you need sensor readings (0–1023) after confirming the device is online." }, { "slug": "BOLT_IOT_CHECK_DEVICE_STATUS", "name": "Check Bolt device online status", "description": "Tool to check whether a specified Bolt device is online. Use when you need to verify device connectivity before sending commands (e.g., control signals). Example: 'Check if device BOLT1234567 is online.'" }, { "slug": "BOLT_IOT_DIGITAL_WRITE", "name": "Bolt IoT Digital Write", "description": "Tool to set a digital pin HIGH or LOW on a specified Bolt device. Use when controlling actuators or LEDs via digital output." }, { "slug": "BOLT_IOT_SERIAL_READ", "name": "Bolt IoT Serial Read", "description": "Tool to read incoming serial data from a Bolt device. Use when you've initialized UART with serialBegin and need to retrieve serial data." }, { "slug": "BOLT_IOT_SERIAL_WRITE", "name": "Bolt IoT Serial Write", "description": "Tool to send serial data to a Bolt device. Use when you need to transmit ASCII data over UART after initializing UART with serialBegin." }, { "slug": "BOLT_IOT_SERIAL_WRITE_READ", "name": "Bolt IoT Serial Write & Read", "description": "Tool to send serial data and read the response on a Bolt device. Use when you need to transmit ASCII data over UART and capture its reply immediately." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bolt_iot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bolt API Key", "type": "string", "description": "The API key for authenticating requests to the Bolt IoT Cloud.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Bolt Device ID", "type": "string", "description": "The unique identifier for your Bolt IoT device.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bonsai", "name": "Bonsai", "logo": "https://logos.composio.dev/api/bonsai", "description": "Bonsai is a fully managed Elasticsearch and OpenSearch hosting service, providing scalable search infrastructure with automatic backups, security, and monitoring.", "category": "databases", "authSchemes": [ "BASIC" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BONSAI_GET_CLUSTER_DETAILS", "name": "Get Bonsai Cluster Details", "description": "Tool to retrieve details for a single bonsai cluster by slug. Use when you need to inspect a cluster's configuration and status." }, { "slug": "BONSAI_GET_SPACE_DETAILS", "name": "Retrieve Space Details", "description": "Tool to retrieve details for a single space by its path. Use when you need metadata for a space before provisioning a cluster. Use after confirming this detail exists. E.g., 'omc/bonsai/us-east-1/common'." }, { "slug": "BONSAI_LIST_SPACES", "name": "List Spaces", "description": "Tool to retrieve a list of all available spaces. Use when you need to see the server groups and geographic regions available for your account." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "bonsai_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Token Key", "type": "string", "description": "Your Bonsai API token key. Found in Account Settings > API Tokens.", "required": true, "default": null }, { "name": "password", "displayName": "API Token Secret", "type": "string", "description": "Your Bonsai API token secret. Found in Account Settings > API Tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bookingmood", "name": "Bookingmood", "logo": "https://logos.composio.dev/api/bookingmood", "description": "Bookingmood provides flexible, commission-free booking software for rental businesses of all sizes, enabling seamless integration with your website.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 142, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOOKINGMOOD_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new bookable product in the organization. Use this when you need to register a new rental property, accommodation, or bookable item in the system. This action will automatically update your subscription based on the product count." }, { "slug": "BOOKINGMOOD_CREATE_SITE_PAGES", "name": "Create Site Pages", "description": "Tool to create new site pages. Use when you need to add pages to a site in the organization." }, { "slug": "BOOKINGMOOD_CREATE_WIDGET", "name": "Create Booking Widget", "description": "Tool to create a new booking widget. Use after preparing widget parameters." }, { "slug": "BOOKINGMOOD_DELETE_ATTRIBUTES", "name": "Delete Attributes", "description": "Tool to delete attributes matching given filters. Use after confirming which attribute records to remove." }, { "slug": "BOOKINGMOOD_DELETE_BOOKING_DETAILS", "name": "Delete Booking Details", "description": "Tool to delete booking details matching given filters. Use after confirming which booking detail records to remove." }, { "slug": "BOOKINGMOOD_DELETE_BOOKINGS", "name": "Delete Bookings", "description": "Tool to delete bookings matching given filters. Use when you need to remove bookings from the system. At least one filter parameter is required to prevent accidental deletion of all bookings." }, { "slug": "BOOKINGMOOD_DELETE_CALENDAR_EVENT_NOTES", "name": "Delete Calendar Event Notes", "description": "Tool to delete calendar event notes matching given filters. Use after confirming which notes to remove. At least one filter parameter is required to prevent accidental bulk deletion." }, { "slug": "BOOKINGMOOD_DELETE_CALENDAR_EVENTS", "name": "Delete Calendar Events", "description": "Tool to delete calendar events matching given filters. Use after confirming which calendar event records to remove." }, { "slug": "BOOKINGMOOD_DELETE_CALENDAR_EVENT_TASKS", "name": "Delete Calendar Event Tasks", "description": "Tool to delete calendar event tasks matching given filters. Use after confirming which calendar event task records to remove." }, { "slug": "BOOKINGMOOD_DELETE_CAPACITIES", "name": "Delete Capacities", "description": "Tool to delete capacities matching given filters. Use when you need to remove capacity records from the system." }, { "slug": "BOOKINGMOOD_DELETE_CAPACITY_GROUP_DEPS", "name": "Delete Capacity Group Dependencies", "description": "Tool to delete capacity group dependencies matching given filters. Use after confirming which dependency records to remove." }, { "slug": "BOOKINGMOOD_DELETE_CAPACITY_GROUPS", "name": "Delete Capacity Groups", "description": "Tool to delete capacity groups matching given filters. Use after confirming which capacity group records to remove." }, { "slug": "BOOKINGMOOD_DELETE_CONTACT_BOOKINGS", "name": "Delete Contact Bookings", "description": "Tool to delete contact bookings matching given filters. Use after confirming which contact booking records to remove." }, { "slug": "BOOKINGMOOD_DELETE_CONTACTS", "name": "Delete Contacts", "description": "Tool to delete customer contacts from the system. Use after confirming which contacts to remove. Supports filter patterns like email=like.%test.com to delete test contacts." }, { "slug": "BOOKINGMOOD_DELETE_COUPON_PRODUCTS", "name": "Delete Coupon Products", "description": "Tool to delete coupon product links matching given filters. Use when you need to remove associations between coupons and products. At least one filter parameter is required." }, { "slug": "BOOKINGMOOD_DELETE_COUPONS", "name": "Delete Coupons", "description": "Tool to delete coupons matching given filters. Use after confirming which coupons to remove. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_DELETE_COUPON_SERVICES", "name": "Delete Coupon Services", "description": "Tool to delete coupon service links matching given filters. Use after confirming which coupon-service associations to remove. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_DELETE_COUPON_USES", "name": "Delete Coupon Uses", "description": "Tool to delete coupon use records matching given filters. Use after confirming which coupon uses to remove. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_DELETE_EMAIL_TEMPLATES", "name": "Delete Email Templates", "description": "Tool to delete email templates matching given filters. Use after confirming which email template records to remove." }, { "slug": "BOOKINGMOOD_DELETE_EXTERNAL_CALENDARS", "name": "Delete External Calendars", "description": "Tool to delete external calendars by ID. Use when you need to remove an external calendar integration from the system." }, { "slug": "BOOKINGMOOD_DELETE_INVOICES", "name": "Delete Invoices", "description": "Tool to delete an invoice by its ID. Use when you need to remove an invoice from the system. The API requires a valid UUID and uses PostgREST filter format." }, { "slug": "BOOKINGMOOD_DELETE_LINE_ITEMS", "name": "Delete Line Items", "description": "Tool to delete line items matching the given filters. Use when you need to remove line items from bookings. Returns the deleted line items." }, { "slug": "BOOKINGMOOD_DELETE_LINE_ITEM_TAXES", "name": "Delete Line Item Taxes", "description": "Tool to delete line item taxes matching given filters. Use when you need to remove line item tax records from the system." }, { "slug": "BOOKINGMOOD_DELETE_PAYMENTS", "name": "Delete Payments", "description": "Tool to delete payments matching given filters. Use when you need to remove payments from the system. At least one filter parameter is required to prevent accidental deletion of all payments. Supported filters: id, invoice_id, or booking_id (all in UUID format)." }, { "slug": "BOOKINGMOOD_DELETE_PERMISSIONS", "name": "Delete Permissions", "description": "Tool to delete permissions matching given filters. Use after confirming which permissions to remove. At least one filter parameter is required (DELETE requires WHERE clause)." }, { "slug": "BOOKINGMOOD_DELETE_PRICING_WIDGETS", "name": "Delete Pricing Widgets", "description": "Tool to delete pricing widgets matching given filters. Use after confirming which pricing widgets to remove. Requires ID filter for safety." }, { "slug": "BOOKINGMOOD_DELETE_PRODUCT_ATTR_OPTIONS", "name": "Delete Product Attribute Options", "description": "Tool to delete product attribute options matching given filters. Use when you need to remove product attribute option records from the system. At least one filter parameter is required." }, { "slug": "BOOKINGMOOD_DELETE_PRODUCT_CONFIGURATIONS", "name": "Delete Product Configurations", "description": "Tool to delete product configurations matching given filters. Use when you need to remove product configuration records from the system." }, { "slug": "BOOKINGMOOD_DELETE_PRODUCT_REPLY_ADDRS", "name": "Delete Product Reply-To Addresses", "description": "Tool to delete product reply-to addresses matching given filters. Use after confirming which reply-to address records to remove." }, { "slug": "BOOKINGMOOD_DELETE_PRODUCT_SERVICES", "name": "Delete Product Services", "description": "Tool to delete product service links matching given filters. Use after confirming which product-service associations to remove. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_DELETE_REPLY_TO_ADDRESSES", "name": "Delete Reply-To Addresses", "description": "Tool to delete reply-to addresses matching given filters. Use after confirming which reply-to addresses to remove. Supports PostgREST-style filtering." }, { "slug": "BOOKINGMOOD_DELETE_REVIEW_PRODUCTS", "name": "Delete Review Products", "description": "Tool to delete review products matching given filters. Use when you need to remove review product records from the system. At least one filter parameter is required." }, { "slug": "BOOKINGMOOD_DELETE_REVIEWS", "name": "Delete Reviews", "description": "Tool to delete reviews matching given filters. Use when you need to remove review records from the system. At least one filter parameter is required." }, { "slug": "BOOKINGMOOD_DELETE_REVIEW_WIDGET_LISTINGS", "name": "Delete Review Widget Listings", "description": "Tool to delete review widget listings matching given filters. Use after confirming which review widget listings to remove. Supports PostgREST-style filtering." }, { "slug": "BOOKINGMOOD_DELETE_SERVICES", "name": "Delete Services", "description": "Tool to delete services matching given filters. Use after confirming which services to remove. Supports PostgREST-style filtering with operators like eq, in, etc." }, { "slug": "BOOKINGMOOD_DELETE_SITE_NAV_ITEMS", "name": "Delete Site Navigation Items", "description": "Tool to delete site navigation items matching given filters. Use after confirming which navigation items to remove. DELETE operation requires a WHERE clause (at least one filter parameter)." }, { "slug": "BOOKINGMOOD_DELETE_SITE_PAGES", "name": "Delete Site Pages", "description": "Tool to delete site pages matching given filters. Use after confirming which site pages to remove. DELETE endpoint requires a WHERE clause via filter parameters." }, { "slug": "BOOKINGMOOD_DELETE_TAXES", "name": "Delete Taxes", "description": "Tool to delete taxes matching given filters. Use after confirming which tax records to remove." }, { "slug": "BOOKINGMOOD_DELETE_WEBHOOKS", "name": "Delete Webhooks", "description": "Tool to delete webhooks matching given filters. Use after confirming which webhooks to remove. Supports PostgREST-style filtering." }, { "slug": "BOOKINGMOOD_DELETE_WIDGET_LISTINGS", "name": "Delete Widget Listings", "description": "Tool to delete widget listings matching given filters. Use after confirming which widget listings to remove. Supports PostgREST-style filtering." }, { "slug": "BOOKINGMOOD_DELETE_WIDGETS", "name": "Delete Widgets", "description": "Tool to delete widgets from the system. Use when you need to remove widget configurations. Supports PostgREST filtering with operators like id=eq.uuid." }, { "slug": "BOOKINGMOOD_INVITE_MEMBER", "name": "Invite Member", "description": "Tool to invite a member to your organization. The member will receive an email with a link to accept the invitation. Use this when you need to add new team members or grant access to your BookingMood organization." }, { "slug": "BOOKINGMOOD_LIST_ATTRIBUTE_OPTIONS", "name": "List Attribute Options", "description": "List attribute options with filtering and pagination support. Use this to retrieve selectable options for booking attributes, with support for filtering by attribute ID, name, creation date, and display order. Supports pagination via limit and offset parameters with a maximum of 1000 results per request." }, { "slug": "BOOKINGMOOD_LIST_ATTRIBUTES", "name": "List Attributes", "description": "Tool to retrieve custom attributes defined for products. Use when you need to list all available attributes with optional field filtering via the select parameter. Attributes are custom fields that can be associated with products in the Bookingmood system." }, { "slug": "BOOKINGMOOD_LIST_BOOKING_DETAILS", "name": "List Booking Details", "description": "List booking details with filtering and pagination. Booking details contain guest-filled form field data such as names, contact info, and custom field values. Use this to retrieve booking detail records, optionally filtered by booking ID, service ID, timestamps, or customer values. Supports PostgREST query operators for flexible filtering." }, { "slug": "BOOKINGMOOD_LIST_BOOKINGS", "name": "List Bookings", "description": "Tool to retrieve bookings from the system with optional filtering and pagination. Returns a list of booking records including details like reference codes, organization info, timestamps, and payment information. Use this when you need to list bookings, search by reference or organization, or paginate through booking records." }, { "slug": "BOOKINGMOOD_LIST_BOOKING_UPDATES", "name": "List Booking Updates", "description": "Tool to list booking updates with filtering and pagination. Use when you need to retrieve booking update history, track changes to bookings, or audit booking modifications. Supports PostgREST query parameters for flexible filtering by ID, booking ID, user ID, and creation timestamp." }, { "slug": "BOOKINGMOOD_LIST_CALENDAR_EVENT_NOTES", "name": "List Calendar Event Notes", "description": "Tool to list calendar event notes with filtering and pagination. Use when you need to retrieve notes attached to calendar events, optionally filtered by author, event, timestamps, or content. Supports PostgREST filter operators for advanced querying." }, { "slug": "BOOKINGMOOD_LIST_CALENDAR_EVENTS", "name": "List Calendar Events", "description": "Tool to list calendar events with filtering and pagination. Use this to retrieve events visible on the timeline (bookings, blocked periods, notes), optionally filtering by status, type, date ranges, or other criteria. Supports PostgREST-style filtering and pagination via limit/offset parameters." }, { "slug": "BOOKINGMOOD_LIST_CALENDAR_EVENT_TASKS", "name": "List Calendar Event Tasks", "description": "Tool to list calendar event tasks with filtering and pagination. Use this to retrieve tasks associated with calendar events, optionally filtering by calendar event ID, completion status, due dates, or schedule type. Supports PostgREST-style filtering and pagination via limit/offset parameters." }, { "slug": "BOOKINGMOOD_LIST_CALENDAR_EVENT_UPDATES", "name": "List Calendar Event Updates", "description": "List calendar event updates with filtering and pagination. Use when you need to track changes to calendar events, including status updates, product reassignments, and interval modifications. Supports PostgREST-based query parameters for selecting specific columns and ordering results." }, { "slug": "BOOKINGMOOD_LIST_CAPACITIES", "name": "List Capacities", "description": "List booking capacities with filtering and pagination. Use this to retrieve capacity configurations that define booking limits for products and capacity groups. Supports filtering by ID, capacity group, or product, as well as column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_CAPACITY_GROUP_DEPS", "name": "List Capacity Group Dependencies", "description": "Tool to list capacity group dependencies with optional field filtering. Use when you need to retrieve relationships between accumulator and element capacity groups in the BookingMood system." }, { "slug": "BOOKINGMOOD_LIST_CAPACITY_GROUPS", "name": "List Capacity Groups", "description": "Tool to list capacity groups with filtering and pagination. Use when you need to retrieve capacity group configurations, which define how guest capacity is managed and grouped. Supports filtering by various attributes and pagination for large result sets." }, { "slug": "BOOKINGMOOD_LIST_CONTACT_BOOKINGS", "name": "List Contact Bookings", "description": "List contact bookings with filtering and pagination. Use when you need to retrieve associations between contacts and bookings. Supports filtering by id, booking_id, contact_id, and created_at, as well as column selection and sorting." }, { "slug": "BOOKINGMOOD_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list customer contacts with filtering and pagination. Supports PostgREST query parameters for column selection, ordering, and pagination. Use this to retrieve contacts from the system." }, { "slug": "BOOKINGMOOD_LIST_COUPON_PRODUCTS", "name": "List Coupon Products", "description": "List coupon products that define which products a coupon applies to. Use this when you need to retrieve product-coupon linkages, especially when coupon.scope is 'rent' or 'product'. Supports PostgREST-style filtering on all fields (id, coupon_id, product_id, created_at), selection, sorting, and pagination." }, { "slug": "BOOKINGMOOD_LIST_COUPONS", "name": "List Coupons", "description": "Tool to list discount coupons with filtering and pagination. Use this when you need to retrieve coupons from the system, search by code or scope, or paginate through coupon records. Supports PostgREST-style filtering on all fields including code, scope, stackable status, quota, and timestamps." }, { "slug": "BOOKINGMOOD_LIST_COUPON_SERVICES", "name": "List Coupon Services", "description": "List coupon services that define which services a coupon applies to. Use this when you need to retrieve service-coupon linkages, especially when coupon.scope is 'service'. Supports PostgREST-style filtering on all fields (id, coupon_id, service_id, created_at), selection, sorting, and pagination." }, { "slug": "BOOKINGMOOD_LIST_COUPON_USES", "name": "List Coupon Uses", "description": "List coupon uses that track which coupons have been applied to bookings. Use this when you need to retrieve coupon usage history, audit coupon applications, or track which bookings used specific coupons. Supports PostgREST-style filtering on all fields (id, booking_id, coupon_id, created_at), selection, sorting, and pagination." }, { "slug": "BOOKINGMOOD_LIST_EMAIL_EVENTS", "name": "List Email Events", "description": "Tool to retrieve email events (bounce, delivery, open) with filtering and pagination. Use this to track email delivery status, monitor bounces, or analyze email engagement. Supports PostgREST-style filtering on event type, email address, timestamps, and other criteria." }, { "slug": "BOOKINGMOOD_LIST_EMAILS", "name": "List Emails", "description": "Tool to retrieve emails from the system with optional filtering and pagination. Returns a list of email records including details like subject, body, status, scheduled send time, and related booking information. Use this when you need to list emails, search by booking or status, or paginate through email records." }, { "slug": "BOOKINGMOOD_LIST_EMAIL_TEMPLATES", "name": "List Email Templates", "description": "Tool to list email templates with filtering and pagination. Supports PostgREST query parameters for column selection, ordering, and pagination. Use this to retrieve email template configurations used for booking notifications." }, { "slug": "BOOKINGMOOD_LIST_EXTERNAL_CALENDARS", "name": "List External Calendars", "description": "Tool to list external calendar sync configurations (e.g., Google Calendar, iCal). Use this to retrieve all external calendars with optional filtering and pagination. Supports PostgREST-style filtering for querying specific calendars by name, type, or organization." }, { "slug": "BOOKINGMOOD_LIST_INVOICES", "name": "List Invoices", "description": "Tool to retrieve invoices from the system with optional filtering and pagination. Returns a list of invoice records including amounts, statuses, and payment information. Use this when you need to list invoices, search by organization, or paginate through invoice records." }, { "slug": "BOOKINGMOOD_LIST_LINE_ITEMS", "name": "List Line Items", "description": "Tool to retrieve line items from the system with optional filtering and pagination. Returns a list of line item records including details like quantities, amounts, unit prices, and related booking/product/service information. Use this when you need to list line items, search by booking or product, or paginate through line item records." }, { "slug": "BOOKINGMOOD_LIST_LINE_ITEM_TAXES", "name": "List Line Item Taxes", "description": "Tool to list line item taxes with filtering and pagination. Returns tax records applied to line items in bookings. Use this to retrieve line item tax data from the system." }, { "slug": "BOOKINGMOOD_LIST_MEMBERS", "name": "List Members", "description": "Tool to list organization members with filtering and pagination. Supports PostgREST query parameters for column selection, ordering, and pagination. Use this to retrieve team members from the organization." }, { "slug": "BOOKINGMOOD_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list organizations. Use when you need to retrieve all organizations accessible by the current API key." }, { "slug": "BOOKINGMOOD_LIST_PADDLE_SUBSCRIPTIONS", "name": "List Paddle Subscriptions", "description": "Tool to list Paddle subscriptions with filtering and pagination. Use this when you need to retrieve subscription information from the Paddle payment provider, filter by status or organization, or paginate through subscription records. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to retrieve payment transactions from the system with optional filtering and pagination. Returns a list of payment records including amounts, statuses, payment methods, and transaction details. Use this when you need to list payments, search by invoice or organization, or paginate through payment records." }, { "slug": "BOOKINGMOOD_LIST_PERMISSIONS", "name": "List Permissions", "description": "Tool to list permissions with filtering and pagination. Supports PostgREST query parameters for column selection, ordering, and pagination. Use this to retrieve user permissions for products in the system." }, { "slug": "BOOKINGMOOD_LIST_PRICING_WIDGETS", "name": "List Pricing Widgets", "description": "Tool to list pricing widgets with filtering and pagination. Use this to retrieve pricing widget configurations from the system. Supports PostgREST-style filtering on fields (id, organization_id, widget_id), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_ATTR_OPTIONS", "name": "List Product Attribute Options", "description": "List product attribute options with filtering and pagination. Use this to retrieve which attribute options are available for specific products, enabling product customization through attribute selection. Supports PostgREST-style filtering on all fields (id, product_id, attribute_option_id, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_CALENDAR_LOGS", "name": "List Product Calendar Logs", "description": "Tool to list product calendar logs with filtering and pagination. Use this to retrieve historical snapshots of product calendar changes, track updates to product availability, or audit calendar modifications. Supports PostgREST-style filtering on all fields." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_CONFIGS", "name": "List Product Configurations", "description": "List product configurations with filtering and pagination. Use this to retrieve configuration settings for products in the system. Supports PostgREST-style filtering on all fields (id, organization_id, product_id, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_REPLY_ADDRS", "name": "List Product Reply-to Addresses", "description": "Tool to list product reply-to addresses with filtering and pagination. Use this to retrieve reply-to email addresses configured for products in the system. Supports PostgREST-style query parameters for column selection, ordering, and pagination." }, { "slug": "BOOKINGMOOD_LIST_PRODUCTS", "name": "List Products", "description": "List bookable products with filtering and pagination. Use this to retrieve product configurations that define rentals, services, or other bookable items in the system. Supports PostgREST-style filtering on all fields (id, organization_id, name, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_SERVICES", "name": "List Product Services", "description": "List product services that define which services are linked to which products. Use this when you need to retrieve product-service associations. Supports PostgREST-style filtering on all fields (id, product_id, service_id, created_at), selection, sorting, and pagination." }, { "slug": "BOOKINGMOOD_LIST_PRODUCT_TASKS", "name": "List Product Tasks", "description": "Tool to list product tasks with filtering and pagination. Product tasks are task templates associated with products that can be instantiated for specific calendar events or bookings. Use this to retrieve product task configurations from the system." }, { "slug": "BOOKINGMOOD_LIST_REPLY_TO_ADDRESSES", "name": "List Reply-To Addresses", "description": "Tool to list reply-to addresses with filtering and pagination. Use this to retrieve reply-to email addresses configured for communications. Supports PostgREST-style query parameters for column selection, ordering, and pagination." }, { "slug": "BOOKINGMOOD_LIST_REVIEW_PRODUCTS", "name": "List Review Products", "description": "List review products with filtering and pagination. Use this to retrieve review product configurations that define products available for customer reviews in the system. Supports PostgREST-style filtering, column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_REVIEWS", "name": "List Reviews", "description": "Tool to list customer reviews with filtering and pagination. Use this to retrieve review records from the system, including ratings, comments, and associated booking/product information. Supports PostgREST-style filtering, column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_REVIEW_WIDGET_LISTINGS", "name": "List Review Widget Listings", "description": "Tool to list review widget listings with filtering and pagination. Returns a list of review widget listing associations between review widgets and listings. Use this when you need to retrieve review widget listing mappings, filter by widget or listing IDs, or paginate through results." }, { "slug": "BOOKINGMOOD_LIST_REVIEW_WIDGETS", "name": "List Review Widgets", "description": "Tool to retrieve review widgets from the system with optional filtering and pagination. Returns a list of review widget configurations including their IDs, names, and organization associations. Use this when you need to list review widgets, search by name or organization, or paginate through review widget records." }, { "slug": "BOOKINGMOOD_LIST_SEASONS", "name": "List Seasons", "description": "List seasons with filtering and pagination. Use this to retrieve seasonal pricing periods that define price variations for different times of the year. Supports PostgREST-style filtering on all fields (id, organization_id, name, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_SERVICES", "name": "List Services", "description": "List bookable services with filtering and pagination. Use this to retrieve service configurations that define activities, treatments, or other bookable services in the system. Supports PostgREST-style filtering on all fields (id, organization_id, name, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_SITE_LISTINGS", "name": "List Site Listings", "description": "Tool to list site listings with filtering and pagination. Use when you need to retrieve site listing records from the system. Supports PostgREST query parameters for field selection, ordering, and pagination." }, { "slug": "BOOKINGMOOD_LIST_SITE_NAV_ITEMS", "name": "List Site Navigation Items", "description": "Tool to list site navigation items with filtering and pagination. Use when you need to retrieve navigation menu structure or specific navigation entries. Supports PostgREST query parameters for field selection, ordering, and pagination." }, { "slug": "BOOKINGMOOD_LIST_SITE_PAGES", "name": "List Site Pages", "description": "Tool to retrieve site pages from the system with optional filtering and pagination. Use when you need to list pages, filter by site, or paginate through page records." }, { "slug": "BOOKINGMOOD_LIST_SITES", "name": "List Sites", "description": "Tool to list sites with filtering and pagination. Supports PostgREST query parameters for column selection, ordering, and pagination. Use this to retrieve physical locations or sites from the system." }, { "slug": "BOOKINGMOOD_LIST_SITE_VIEWS", "name": "List Site Views", "description": "Tool to list site views with filtering and pagination. Returns analytics data about page views and visitor sessions on your sites. Use this to retrieve site traffic data, analyze visitor behavior, or track page views over time." }, { "slug": "BOOKINGMOOD_LIST_TAXES", "name": "List Taxes", "description": "List tax configurations with filtering and pagination. Use this to retrieve tax definitions like VAT, Sales Tax, GST that can be applied to bookings and line items. Supports PostgREST-style filtering on all fields (id, organization_id, name, percentage, timestamps), column selection, pagination, and sorting." }, { "slug": "BOOKINGMOOD_LIST_USER_PROFILES", "name": "List User Profiles", "description": "List all user profiles accessible by the current API key. Returns user profile information including IDs, names, email addresses, and organization associations. Use this to discover users in the system before performing operations or assigning resources. Supports pagination via limit and offset parameters." }, { "slug": "BOOKINGMOOD_LIST_WEBHOOK_NOTIFICATIONS", "name": "List Webhook Notifications", "description": "Tool to list webhook notifications with filtering and pagination. Returns webhook notification records including their status, event types, and delivery information. Use this to monitor webhook deliveries and troubleshoot webhook issues." }, { "slug": "BOOKINGMOOD_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list webhook configurations with filtering and pagination. Returns webhook endpoints including their URLs, subscribed events, and status. Use this to discover configured webhooks before managing or debugging webhook integrations." }, { "slug": "BOOKINGMOOD_LIST_WIDGET_ANALYTICS", "name": "List Widget Analytics", "description": "Tool to list widget analytics with pagination. Returns metrics and statistics for widgets including views, bookings, conversion rates, and revenue data. Supports pagination via limit and offset parameters." }, { "slug": "BOOKINGMOOD_LIST_WIDGET_LISTINGS", "name": "List Widget Listings", "description": "Tool to list widget listings with filtering and pagination. Returns a list of widget listing associations between widgets and listings. Use this when you need to retrieve widget listing mappings, filter by widget or listing IDs, or paginate through results." }, { "slug": "BOOKINGMOOD_LIST_WIDGETS", "name": "List Booking Widgets", "description": "List all booking widgets accessible by the current API key. Returns widget configurations including their IDs, names, types, and organization associations. Use this to discover available widgets before performing operations like searching availability or managing bookings. Supports pagination via limit and offset parameters." }, { "slug": "BOOKINGMOOD_QUERY_AVAILABILITY", "name": "Query Availability", "description": "Tool to fetch availability of multiple products over a long period of time. Use this to check when products can be booked by querying availability records. Supports PostgREST-style filtering on product ID, date ranges, and availability status, plus pagination via limit/offset parameters." }, { "slug": "BOOKINGMOOD_UPDATE_ATTRIBUTE_OPTIONS", "name": "Update Attribute Options", "description": "Updates attribute option records that match the specified filters. Attribute options represent possible values for custom attributes (like size options: S, M, L). At least one filter must be provided to target specific records. Use this to modify the localized names, display order, or parent attribute association." }, { "slug": "BOOKINGMOOD_UPDATE_ATTRIBUTES", "name": "Update Attributes", "description": "Updates attribute records that match the specified filters. Attributes define custom properties for bookings (e.g., room type, amenities). At least one filter must be provided to target specific records. Use this to modify the localized name, display order, or attribute type. Typically used with the 'id' filter to update a specific attribute." }, { "slug": "BOOKINGMOOD_UPDATE_BOOKING_DETAILS", "name": "Update Booking Details", "description": "Updates booking detail records that match the specified filters. Booking details store guest-filled form field data such as names, contact info, and custom field values. At least one filter must be provided to target specific records. Use this to modify attachment URLs, localized field names, descriptions, or customer-provided values." }, { "slug": "BOOKINGMOOD_UPDATE_BOOKINGS", "name": "Update Bookings", "description": "Updates booking records that match the specified filters. Bookings represent customer reservations with metadata such as currency, references, confirmation status, and silent mode. At least one filter must be provided to target specific records. Use this to modify booking attributes like confirmation timestamp, currency settings, or booking references." }, { "slug": "BOOKINGMOOD_UPDATE_CALENDAR_EVENT_NOTES", "name": "Update Calendar Event Notes", "description": "Updates calendar event note records that match the specified filters. Use this to modify notes associated with calendar events. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_CALENDAR_EVENTS", "name": "Update Calendar Events", "description": "Update existing calendar events that match the specified filters. Use this to modify event status (CANCELLED, TENTATIVE, CONFIRMED), notes, title, or dates. At least one filter must be provided to target specific events. Commonly used to confirm tentative bookings or add notes to existing events." }, { "slug": "BOOKINGMOOD_UPDATE_CALENDAR_EVENT_TASKS", "name": "Update Calendar Event Tasks", "description": "Tool to update existing calendar event tasks. Use when you need to modify task details such as labels, completion status, due dates, or schedule information." }, { "slug": "BOOKINGMOOD_UPDATE_CAPACITIES", "name": "Update Capacities", "description": "Tool to update existing capacity records that match the specified filters. Capacities define occupancy thresholds (min/max) for products or capacity groups. Use this to modify maximum or minimum occupancy limits for booking resources." }, { "slug": "BOOKINGMOOD_UPDATE_CAPACITY_GROUP_DEPS", "name": "Update Capacity Group Dependencies", "description": "Updates capacity group dependency records that match the specified filters. Capacity group dependencies define relationships between accumulating and accumulated capacity groups. At least one filter must be provided to target specific records. Use this to modify which capacity groups depend on each other." }, { "slug": "BOOKINGMOOD_UPDATE_CAPACITY_GROUPS", "name": "Update Capacity Groups", "description": "Updates capacity group records that match the specified filters. Capacity groups define guest types (e.g., adults, children) and how their numbers are tracked (manual input or sum of sub-groups). At least one filter must be provided to target specific records. Use this to modify names, descriptions, display order, or capacity calculation settings." }, { "slug": "BOOKINGMOOD_UPDATE_CONTACT_BOOKINGS", "name": "Update Contact Bookings", "description": "Updates contact booking records that match the specified filters. Contact bookings link contacts to bookings, enabling tracking of which contacts are associated with which reservations. At least one filter must be provided to target specific records. Use this to reassign contact bookings to different contacts or bookings. Typically used with the 'id' filter to update a specific contact booking." }, { "slug": "BOOKINGMOOD_UPDATE_CONTACTS", "name": "Update Contacts", "description": "Updates contact records that match the specified filters. Use this to modify existing contact information such as name, email, phone, address, company details, or custom metadata. At least one filter must be provided to target specific contacts." }, { "slug": "BOOKINGMOOD_UPDATE_COUPON_PRODUCTS", "name": "Update Coupon Products", "description": "Updates coupon product link records that match the specified filters. Use this to modify existing coupon-product associations by changing which coupon or product they link to. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_COUPONS", "name": "Update Coupons", "description": "Updates coupon records that match the specified filters. Use this to modify existing coupons such as code, description, definition, quota, scope, or stackable status. At least one filter must be provided to target specific coupons." }, { "slug": "BOOKINGMOOD_UPDATE_COUPON_SERVICES", "name": "Update Coupon Services", "description": "Updates coupon service records that match the specified filters. Use this to modify existing coupon-service associations. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_COUPON_USES", "name": "Update Coupon Uses", "description": "Updates coupon use records that match the specified filters. Use this to modify which booking or coupon is associated with a coupon use record. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_EXTERNAL_CALENDARS", "name": "Update External Calendars", "description": "Tool to update existing external calendars that match the specified filters. Use this to modify external calendar properties such as the calendar name. At least one filter must be provided to target specific external calendars." }, { "slug": "BOOKINGMOOD_UPDATE_LINE_ITEMS", "name": "Update Line Items", "description": "Updates line item records that match the specified filters. Line items represent individual charges or products within a booking, including quantity, unit price, amount, and associated service or tax configuration. At least one filter must be provided to target specific records. Use this to modify line item details such as quantity, pricing, or description." }, { "slug": "BOOKINGMOOD_UPDATE_LINE_ITEM_TAXES", "name": "Update Line Item Taxes", "description": "Updates line item tax records that match the specified filters. Line item taxes represent tax amounts or percentages applied to individual line items in a booking. At least one filter must be provided to target specific records. Use this to modify the tax amount or percentage for existing line item tax entries." }, { "slug": "BOOKINGMOOD_UPDATE_PAYMENTS", "name": "Update Payments", "description": "Tool to update existing payments in the Bookingmood system. Use when you need to modify payment details such as amount, status, currency, or transaction information. At least one filter must be provided to target specific payment records." }, { "slug": "BOOKINGMOOD_UPDATE_PERMISSIONS", "name": "Update Permissions", "description": "Updates permission records that match the specified filters. Use this to modify product associations for existing permissions. At least one filter must be provided to target specific permissions." }, { "slug": "BOOKINGMOOD_UPDATE_PRICING_WIDGETS", "name": "Update Pricing Widgets", "description": "Tool to update existing pricing widget records that match the specified filters. Pricing widgets represent pricing configuration widgets in the system. Use this to modify pricing widget names or localized translations. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCT_ATTRIBUTE_OPTIONS", "name": "Update Product Attribute Options", "description": "Updates product attribute option records that match the specified filters. Product attribute options link products to their available attribute values (e.g., linking a specific product to size options). Use this to modify the associations between products and attribute options. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCT_CONFIGS", "name": "Update Product Configurations", "description": "Tool to update existing product configuration records that match the specified filters. Use when you need to modify product configuration attributes such as updated timestamps." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCT_REPLY_TO_ADDRESSES", "name": "Update Product Reply-To Addresses", "description": "Tool to update existing product reply-to address associations. Use when you need to modify the relationship between products and their reply-to email addresses. This action follows PostgREST patterns and requires at least one filter to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCTS", "name": "Update Products", "description": "Updates product records that match the specified filters. Use this to modify existing product configurations such as name, description, type, status, pricing, or guest capacity. At least one filter must be provided to target specific products. Typically used with the 'id' filter to update a specific product." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCT_SERVICES", "name": "Update Product Services", "description": "Tool to update existing product_services records that match the specified filters. Use when you need to modify the product-service associations. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_PRODUCT_TASKS", "name": "Update Product Tasks", "description": "Update existing product tasks that match the specified filters. Product tasks define activities or checklist items associated with products. Use this to modify task labels for the matched product tasks." }, { "slug": "BOOKINGMOOD_UPDATE_REVIEW_PRODUCTS", "name": "Update Review Products", "description": "Updates review product link records that match the specified filters. Use this to modify existing review-product associations by changing which review is linked to a product. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_REVIEWS", "name": "Update Reviews", "description": "Updates review records that match the specified filters. Use this to modify existing customer reviews such as ratings, comments, responses, status, or associated entities. At least one filter must be provided to target specific reviews." }, { "slug": "BOOKINGMOOD_UPDATE_REVIEW_WIDGET_LISTINGS", "name": "Update Review Widget Listings", "description": "Updates review widget listing records that match the specified filters. Use this to modify existing review widget-product associations by changing which products are associated with review widgets. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_REVIEW_WIDGETS", "name": "Update Review Widgets", "description": "Updates review widget records that match the specified filters. Use this to modify existing review widget configurations by changing associations between reviews and widgets. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_SERVICES", "name": "Update Services", "description": "Updates service records that match the specified filters. Use this to modify existing service information such as description, name, price, duration, or active status. At least one filter must be provided to target specific services." }, { "slug": "BOOKINGMOOD_UPDATE_SITE_LISTINGS", "name": "Update Site Listings", "description": "Tool to update site listing records matching specified filters. Use when you need to modify listing details such as name, status, URLs, or metadata. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_SITE_NAV_ITEMS", "name": "Update Site Navigation Items", "description": "Updates site navigation item records that match the specified filters. Use this to modify navigation menu items such as labels, URLs, types, or hierarchical parent relationships. At least one filter must be provided to target specific navigation items." }, { "slug": "BOOKINGMOOD_UPDATE_SITE_PAGES", "name": "Update Site Pages", "description": "Updates site page records that match the specified filters. Use this to modify existing site page information such as title. At least one filter must be provided to target specific site pages." }, { "slug": "BOOKINGMOOD_UPDATE_SITES", "name": "Update Sites", "description": "Tool to update existing site records that match the specified filters. Use when you need to modify the site name. At least one filter must be provided to target specific sites." }, { "slug": "BOOKINGMOOD_UPDATE_TAXES", "name": "Update Taxes", "description": "Updates tax configuration records that match the specified filters. Use this to modify existing tax definitions such as the tax name or percentage rate. At least one filter must be provided to target specific tax records." }, { "slug": "BOOKINGMOOD_UPDATE_USER_PROFILES", "name": "Update User Profiles", "description": "Tool to update existing user profile records that match the specified filters. Use this to modify user preferences such as name, language, avatar, or calendar settings. At least one filter must be provided to target specific user profiles." }, { "slug": "BOOKINGMOOD_UPDATE_WEBHOOKS", "name": "Update Webhooks", "description": "Tool to update existing webhook subscriptions that match the specified filters. Use this to modify webhook URLs, event type subscriptions, enabled status, or descriptions. At least one filter must be provided to target specific webhooks." }, { "slug": "BOOKINGMOOD_UPDATE_WIDGET_LISTINGS", "name": "Update Widget Listings", "description": "Updates existing widget listing records that match the specified filters. Use this to modify widget-product associations such as display order or change which widget or product is associated. At least one filter must be provided to target specific records." }, { "slug": "BOOKINGMOOD_UPDATE_WIDGETS", "name": "Update Booking Widgets", "description": "Update existing booking widgets that match the specified filters. Use this to modify widget configurations such as name, type, locale, currency, interaction settings, display options, and customization parameters. At least one filter must be provided to target specific widgets." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bookingmood_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bookingmood API Key", "type": "string", "description": "The API key used for authenticating requests to the Bookingmood API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "booqable", "name": "Booqable", "logo": "https://logos.composio.dev/api/booqable", "description": "Booqable is a rental software platform that helps businesses manage inventory, bookings, and online reservations.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 49, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOOQABLE_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer. Use when onboarding a new client and you have verified their details. Example: Create 'Jane Doe' with email jane@doe.com." }, { "slug": "BOOQABLE_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order. Use after collecting valid customer ID and timing details. Example: Create an order for customer '297f2584-...' starting at '2018-01-01T09:00:00Z'." }, { "slug": "BOOQABLE_CREATE_PRODUCT_GROUP", "name": "Create Product Group", "description": "Tool to create a new product group in Booqable. Use when you have defined the group's name and pricing details and want to organize items under a shared group." }, { "slug": "BOOQABLE_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete (archive) a customer by ID. Use after confirming the customer should be hidden from searches." }, { "slug": "BOOQABLE_DELETE_ORDER", "name": "Delete Order", "description": "Tool to delete (archive) an order by ID. Use when you need to hide completed or canceled orders from active listings." }, { "slug": "BOOQABLE_DELETE_PRODUCT_GROUP", "name": "Delete Product Group", "description": "Tool to delete a product group by ID. Use when you need to permanently remove a product group from your catalog after confirming its identifier." }, { "slug": "BOOQABLE_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to fetch a specific customer by ID. Use after obtaining a customer identifier to retrieve full customer details." }, { "slug": "BOOQABLE_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to retrieve a list of customers. Use when you need to paginate through customers." }, { "slug": "BOOQABLE_GET_INVENTORY_LEVELS", "name": "Get Inventory Levels", "description": "Tool to fetch inventory levels for products. Shows availability of products across locations for a date range. Use when checking product availability or stock levels." }, { "slug": "BOOQABLE_GET_NEW_ORDER", "name": "Get New Order", "description": "Tool to retrieve a new order template with default values. Use when you need to initialize an order creation form or fetch default order settings before creating an order." }, { "slug": "BOOQABLE_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve a specific order by ID. Use when you need complete details of a known order, including optional relationships like customer or coupon. Call after confirming the order ID." }, { "slug": "BOOQABLE_GET_PRODUCT", "name": "Get Product", "description": "Tool to fetch a specific product by ID. Use after obtaining a product identifier to retrieve detailed inventory item data." }, { "slug": "BOOQABLE_GET_PRODUCT_GROUP", "name": "Get Product Group", "description": "Tool to fetch a specific product group by ID. Use after obtaining the product group identifier to retrieve its full details." }, { "slug": "BOOQABLE_LIST_BARCODES", "name": "List Barcodes", "description": "Tool to retrieve a list of barcodes. Use when you need to list barcodes with pagination, filtering by owner, type, or dates." }, { "slug": "BOOQABLE_LIST_BUNDLE_ITEMS", "name": "List Bundle Items", "description": "Tool to retrieve a list of bundle items. Use when you need to see which products are included in bundles, with their quantities and discounts." }, { "slug": "BOOQABLE_LIST_CLUSTERS", "name": "List Clusters", "description": "Tool to retrieve a list of clusters from Booqable. Use when you need to list clusters with optional filtering, field selection, and pagination support." }, { "slug": "BOOQABLE_LIST_COUPONS", "name": "List Coupons", "description": "Tool to retrieve a list of coupons. Use when you need to list or search for discount coupons with pagination and filtering." }, { "slug": "BOOQABLE_LIST_DEFAULT_PROPERTIES", "name": "List Default Properties", "description": "Tool to retrieve a list of default properties from Booqable. Use when you need to view custom property definitions with pagination, filtering, or sorting options." }, { "slug": "BOOQABLE_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to retrieve a list of documents. Use when you need to fetch invoices, quotes, contracts, or packing slips with optional filtering and pagination." }, { "slug": "BOOQABLE_LIST_EMAIL_TEMPLATES", "name": "List Email Templates", "description": "Tool to list email templates from Booqable. Use when you need to retrieve available email templates with optional filtering, pagination, and sorting." }, { "slug": "BOOQABLE_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to retrieve a list of employees from Booqable. Use when you need to list employee accounts with pagination and filtering options." }, { "slug": "BOOQABLE_LIST_INVENTORY_BREAKDOWNS", "name": "List Inventory Breakdowns", "description": "Tool to retrieve a list of inventory breakdowns filtered by status and product/product group. Use when you need to analyze inventory allocation across locations. Note: Both status filter and either product_id or product_group_id filter are required." }, { "slug": "BOOQABLE_LIST_ITEMS", "name": "List Items", "description": "Tool to retrieve a list of items (products and product groups). Use when you need to browse the catalog with pagination and filtering." }, { "slug": "BOOQABLE_LIST_LINES", "name": "List Lines", "description": "Tool to retrieve a paginated list of lines from orders. Use when you need to list line items, with support for filtering by order, product, or other attributes." }, { "slug": "BOOQABLE_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to retrieve a list of locations from Booqable. Use when you need to view available locations with pagination, filtering, or sorting options." }, { "slug": "BOOQABLE_LIST_NOTES", "name": "List Notes", "description": "Tool to retrieve a list of notes. Use when you need to list notes with optional filtering by owner, date, or content." }, { "slug": "BOOQABLE_LIST_ORDERS", "name": "List Orders", "description": "Tool to retrieve a paginated list of orders. Use when you need to browse orders with support for filtering by status, customer, dates, and other attributes." }, { "slug": "BOOQABLE_LIST_PAYMENT_METHODS", "name": "List Payment Methods", "description": "Tool to retrieve a list of payment methods from Booqable. Use when you need to list payment methods with optional filtering by creation date, customer, status, or ID, and support for pagination." }, { "slug": "BOOQABLE_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list all payments from Booqable. Use when you need to retrieve payment records with optional filtering by created_at, order_id, payment_method, or payment_status." }, { "slug": "BOOQABLE_LIST_PHOTOS", "name": "List Photos", "description": "Tool to retrieve a paginated list of photos from Booqable. Use when you need to list photos with support for filtering by owner resource and pagination." }, { "slug": "BOOQABLE_LIST_PLANNINGS", "name": "List Plannings", "description": "Tool to retrieve planning records that track product and bundle reservations across locations and time periods. Use when you need to check what items are planned or reserved for specific dates, locations, or orders." }, { "slug": "BOOQABLE_LIST_PRICE_RULESETS", "name": "List Price Rulesets", "description": "Tool to list price rulesets. Use when you need to retrieve price rulesets with optional filtering by archived status, name, or ID, and pagination support." }, { "slug": "BOOQABLE_LIST_PRICE_STRUCTURES", "name": "List Price Structures", "description": "Tool to list price structures. Use when you need to retrieve price structures with optional filtering by name, ID, or product group, and pagination support." }, { "slug": "BOOQABLE_LIST_PRODUCT_GROUPS", "name": "List Product Groups", "description": "Tool to list product groups from Booqable API v4. Use when you need to retrieve multiple product groups with filtering, pagination, and field selection options." }, { "slug": "BOOQABLE_LIST_PRODUCTS", "name": "List Products", "description": "Tool to retrieve a list of products. Use when you need to browse products with pagination and filtering." }, { "slug": "BOOQABLE_LIST_PROPERTIES", "name": "List Properties", "description": "Tool to retrieve a list of properties. Use when you need to list custom properties associated with customers, products, or other resources in Booqable." }, { "slug": "BOOQABLE_LIST_PROVINCES", "name": "List Provinces", "description": "Tool to retrieve a list of provinces. Use when you need to list available provinces, optionally filtered by country." }, { "slug": "BOOQABLE_LIST_STOCK_ITEM_PLANNINGS", "name": "List Stock Item Plannings", "description": "Tool to retrieve a list of stock item plannings. Use when you need to list stock item plannings with filtering and pagination." }, { "slug": "BOOQABLE_LIST_STOCK_ITEMS", "name": "List Stock Items", "description": "Tool to retrieve a list of stock items. Use when you need to list physical inventory items with tracking identifiers like serial numbers or barcodes." }, { "slug": "BOOQABLE_LIST_TAX_RATES", "name": "List Tax Rates", "description": "Tool to retrieve a list of tax rates. Use when you need to list or search for tax rates with pagination and filtering." }, { "slug": "BOOQABLE_LIST_TAX_VALUES", "name": "List Tax Values", "description": "Tool to retrieve a list of tax values. Use when you need to fetch tax rates with optional filtering, pagination, and sorting." }, { "slug": "BOOQABLE_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a list of users from Booqable. Use when you need to list user accounts with pagination and filtering options." }, { "slug": "BOOQABLE_SEARCH_BUNDLES", "name": "Search Bundles", "description": "Tool to search bundles with advanced filtering. Use when you need to find bundles by specific criteria (discountable, taxable, show_in_store, etc.) using complex queries with logical operators." }, { "slug": "BOOQABLE_SEARCH_CUSTOMERS", "name": "Search Customers", "description": "Tool to search customers in the Booqable system. Use when you need to retrieve customer data with optional field selection and relationship inclusion." }, { "slug": "BOOQABLE_SEARCH_DOCUMENTS", "name": "Search Documents", "description": "Tool to search documents using advanced filtering with logical operators. Use when you need to find documents matching complex criteria with AND/OR conditions." }, { "slug": "BOOQABLE_SEARCH_ITEMS", "name": "Search Items", "description": "Tool to search items (products and bundles) with advanced filtering. Use when you need to find items by specific criteria (name, product_type, archived status, etc.) using complex queries." }, { "slug": "BOOQABLE_SEARCH_ORDERS", "name": "Search Orders", "description": "Tool to search orders with advanced filtering using logical operators. Use when you need to find orders by specific criteria (status, dates, customer) with complex queries like date ranges or multiple conditions." }, { "slug": "BOOQABLE_SEARCH_PLANNINGS", "name": "Search Plannings", "description": "Tool to search plannings with advanced filtering. Use when you need to find planning records by specific criteria using complex queries with logical operators." }, { "slug": "BOOQABLE_UPDATE_COMPANIES", "name": "Update Company", "description": "Tool to update the current company's information in Booqable. Use when you need to modify company details such as name, contact information, address, or billing settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "booqable_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company Subdomain", "type": "string", "description": "The subdomain of your Booqable account, used to construct the base URL.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Booqable API Key", "type": "string", "description": "The API key generated in your Booqable account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "botpress", "name": "Botpress", "logo": "https://logos.composio.dev/api/botpress", "description": "Botpress is an open-source platform for building, deploying, and managing chatbots.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOTPRESS_BREAK_DOWN_WORKSPACE_USAGE_BY_BOT", "name": "Break Down Workspace Usage By Bot", "description": "Tool to break down workspace usage by bot. Use this to get detailed usage metrics for individual bots within a workspace, such as invocation calls, storage count, or AI spend." }, { "slug": "BOTPRESS_CHARGE_WORKSPACE_UNPAID_INVOICES", "name": "BOTPRESS_CHARGE_WORKSPACE_UNPAID_INVOICES", "description": "Tool to charge unpaid invoices for a specific Botpress workspace. Use when you need to manually trigger payment for outstanding workspace invoices. Returns details of successfully charged invoices and any that failed." }, { "slug": "BOTPRESS_CHECK_HANDLE_AVAILABILITY", "name": "Check Handle Availability", "description": "Tool to check if a workspace handle is available in Botpress. Use when creating or renaming a workspace to verify the handle is not already taken. Returns availability status and suggestions for alternative handles if unavailable." }, { "slug": "BOTPRESS_CREATE_ADMIN_INTEGRATION", "name": "BOTPRESS_CREATE_ADMIN_INTEGRATION", "description": "Tool to create a new integration in a Botpress workspace via the Admin API. Use when you need to provision a new integration with configuration including name, version, code, actions, events, and channels." }, { "slug": "BOTPRESS_CREATE_ADMIN_WORKSPACE", "name": "BOTPRESS_CREATE_ADMIN_WORKSPACE", "description": "Tool to create a new workspace in Botpress via the Admin API. Use when you need to provision a new workspace for organizing bots and managing team resources. The workspace will be created under the authenticated account's ownership." }, { "slug": "BOTPRESS_CREATE_BOT", "name": "BOTPRESS_CREATE_BOT", "description": "Tool to create a new bot in a Botpress workspace via the Admin API. Use when you need to provision a new bot with optional configuration including name, code, tags, events, states, and integrations." }, { "slug": "BOTPRESS_CREATE_CONVERSATION", "name": "BOTPRESS_CREATE_CONVERSATION", "description": "Tool to create a new conversation in Botpress via the Runtime API. Use when you need to initiate a new conversation thread. The required tags must be provided according to the specific integration being used." }, { "slug": "BOTPRESS_DELETE_ADMIN_WORKSPACE", "name": "Delete Admin Workspace", "description": "Tool to permanently delete a workspace from Botpress admin. Use this to remove workspaces that are no longer needed. The deletion is irreversible and removes all associated bots and data." }, { "slug": "BOTPRESS_DELETE_FILE", "name": "Delete File", "description": "Permanently deletes a file from a Botpress bot's storage by its file ID. Use this tool to remove files that are no longer needed. The deletion is irreversible. Requires a valid file ID and the bot ID that owns the file." }, { "slug": "BOTPRESS_DELETE_INTEGRATION_SHAREABLE_ID", "name": "Delete Integration Shareable ID", "description": "Tool to delete a shareable ID for an integration installed in a Botpress bot. Use when you need to remove the human-readable identifier for a specific bot-integration crossover. This is an experimental feature used for the integrations channel sandbox." }, { "slug": "BOTPRESS_DELETE_KNOWLEDGE_BASE", "name": "Delete Knowledge Base", "description": "Permanently deletes a knowledge base from Botpress by its knowledge base ID. Use this tool to remove knowledge bases that are no longer needed. The deletion is irreversible. Requires a valid knowledge base ID and the bot ID that owns the knowledge base." }, { "slug": "BOTPRESS_GET_ACCOUNT", "name": "Get Account", "description": "Tool to get details of the authenticated account. Use after confirming valid credentials." }, { "slug": "BOTPRESS_GET_ACCOUNT_PREFERENCE", "name": "Get Account Preference", "description": "Tool to get a preference of the account. Use when you need to retrieve a specific account preference value by its key." }, { "slug": "BOTPRESS_GET_ALL_WORKSPACE_QUOTA_COMPLETION", "name": "Get All Workspace Quota Completion", "description": "Tool to get a map of workspace IDs to their highest quota completion rate. Use when monitoring workspace usage or checking quota limits across multiple workspaces." }, { "slug": "BOTPRESS_GET_DEREFERENCED_PUBLIC_PLUGIN_BY_ID", "name": "Get Dereferenced Public Plugin By ID", "description": "Tool to get a public plugin by ID with all interface entity references resolved to the corresponding entities as extended by the backing integrations. Use when you need to retrieve a plugin with its interfaces fully dereferenced using specific backing integrations." }, { "slug": "BOTPRESS_GET_INTEGRATION", "name": "Get Integration", "description": "Tool to get a specific Botpress integration by name and version. Use this to retrieve detailed information about an integration including its configuration, actions, events, channels, and metadata. Supports retrieving specific versions or the latest version." }, { "slug": "BOTPRESS_GET_PUBLIC_INTEGRATION", "name": "Get Public Integration", "description": "Tool to retrieve a public integration by name and version from the Botpress hub. Use when you need to get integration details, check available actions/events/channels, or verify integration configuration." }, { "slug": "BOTPRESS_GET_PUBLIC_INTEGRATION_BY_ID", "name": "Get Public Integration By ID", "description": "Tool to retrieve detailed information about a public Botpress integration by its ID. Use when you need to fetch integration details including configuration, channels, actions, events, and metadata." }, { "slug": "BOTPRESS_GET_PUBLIC_INTERFACE", "name": "Get Public Interface", "description": "Tool to get a public interface by name and version from the Botpress Hub. Use when you need to retrieve interface specifications, schemas, or metadata for integrations." }, { "slug": "BOTPRESS_GET_PUBLIC_INTERFACE_BY_ID", "name": "Get Public Interface by ID", "description": "Tool to retrieve a public interface by its ID from the Botpress Hub. Use when you need to get detailed information about a specific interface including its actions, events, channels, and entities." }, { "slug": "BOTPRESS_GET_PUBLIC_PLUGIN", "name": "Get Public Plugin", "description": "Tool to retrieve detailed information about a public plugin from Botpress Hub by name and version. Use when you need to inspect plugin configuration, dependencies, actions, events, or metadata before installation." }, { "slug": "BOTPRESS_GET_PUBLIC_PLUGIN_BY_ID", "name": "Get Public Plugin By ID", "description": "Tool to retrieve details of a public plugin by its unique ID. Use this to get full plugin information including configuration, actions, events, and metadata." }, { "slug": "BOTPRESS_GET_PUBLIC_PLUGIN_CODE", "name": "Get Public Plugin Code", "description": "Tool to retrieve public plugin code from Botpress Hub. Use when you need to access the source code for a specific plugin version on a particular platform (node or browser)." }, { "slug": "BOTPRESS_GET_TABLE_ROW", "name": "Get Table Row", "description": "Tool to fetch a specific row from a table using the row's unique identifier. Use when you need to retrieve detailed data for a specific table row." }, { "slug": "BOTPRESS_GET_UPCOMING_INVOICE", "name": "Get Upcoming Invoice", "description": "Tool to get the upcoming invoice for a workspace. Use this to preview upcoming charges before they are billed." }, { "slug": "BOTPRESS_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to get detailed information about a specific Botpress workspace by ID. Use this when you need to retrieve workspace details such as plan, bot count, owner, billing info, or settings for a known workspace ID." }, { "slug": "BOTPRESS_GET_WORKSPACE_QUOTA", "name": "Get Workspace Quota", "description": "Tool to get workspace quota information for a specific usage type. Use when you need to check resource limits or usage for a workspace." }, { "slug": "BOTPRESS_LIST_ACTION_RUNS", "name": "LIST_ACTION_RUNS", "description": "Tool to list action runs for a specific integration of a bot. Use when you need to retrieve execution history of actions for a bot's integration, optionally filtering by timestamp range and paginating through results." }, { "slug": "BOTPRESS_LIST_BOT_ISSUES", "name": "LIST_BOT_ISSUES", "description": "Tool to list issues associated with a specific bot. Use when you need to discover errors or configuration problems tied to a bot, optionally paginating through results." }, { "slug": "BOTPRESS_LIST_CONVERSATIONS", "name": "LIST_CONVERSATIONS", "description": "Tool to list all Conversations. Use when you need to retrieve and page through chat threads." }, { "slug": "BOTPRESS_LIST_FILE_TAGS", "name": "LIST_FILE_TAGS", "description": "Tool to list all tags used across all bot files. Use when you need to retrieve or display file tag metadata; supports pagination via nextToken." }, { "slug": "BOTPRESS_LIST_FILE_TAG_VALUES", "name": "LIST_FILE_TAG_VALUES", "description": "Tool to list all values for a given file tag across all files. Use after determining the tag name; supports pagination via nextToken." }, { "slug": "BOTPRESS_LIST_HUB_INTEGRATIONS", "name": "LIST_HUB_INTEGRATIONS", "description": "Tool to list public integrations from the Botpress hub. Use when you need to browse available integrations, search for specific integration types, or filter integrations by various criteria such as verification status, interface, or installation status." }, { "slug": "BOTPRESS_LIST_INTEGRATION_API_KEYS", "name": "LIST_INTEGRATION_API_KEYS", "description": "Tool to list Integration API Keys (IAKs) for a specific integration. Use when you need to retrieve all API keys associated with an integration within a workspace." }, { "slug": "BOTPRESS_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to list integrations with filtering and sorting capabilities. Use when you need to browse available integrations, search for specific integration types, or filter integrations by various criteria such as verification status, interface, visibility, or installation status." }, { "slug": "BOTPRESS_LIST_KNOWLEDGE_BASES", "name": "LIST_KNOWLEDGE_BASES", "description": "Tool to list knowledge bases for a bot. Use when you need to retrieve or display knowledge bases with optional tag filtering; supports pagination via nextToken." }, { "slug": "BOTPRESS_LIST_PLUGINS", "name": "List Plugins", "description": "Tool to list Botpress plugins. Use to discover available plugins, filter by name or version, or page through all plugins in a workspace." }, { "slug": "BOTPRESS_LIST_PUBLIC_INTERFACES", "name": "List Public Interfaces", "description": "Tool to retrieve a list of public interfaces available in the Botpress Hub. Use when browsing available interfaces to integrate with bots." }, { "slug": "BOTPRESS_LIST_PUBLIC_PLUGINS", "name": "LIST_PUBLIC_PLUGINS", "description": "Tool to retrieve a list of public plugins available in the Botpress hub. Use when browsing available plugins or searching for specific plugins by name and version." }, { "slug": "BOTPRESS_LIST_PUBLIC_WORKSPACES", "name": "LIST_PUBLIC_WORKSPACES", "description": "Tool to retrieve a list of public workspaces. Use when browsing publicly available workspaces before selection." }, { "slug": "BOTPRESS_LIST_USAGE_HISTORY", "name": "LIST_USAGE_HISTORY", "description": "Tool to retrieve usage history for a bot or workspace. Use to track resource consumption, monitor quota usage, or analyze historical trends for metrics like AI spend, member count, or invocation calls." }, { "slug": "BOTPRESS_LIST_WORKSPACE_INVOICES", "name": "List Workspace Invoices", "description": "Tool to list all invoices billed to a workspace. Use when you need to retrieve billing history and invoice details for a specific workspace." }, { "slug": "BOTPRESS_LIST_WORKSPACES", "name": "LIST_WORKSPACES", "description": "List all Botpress workspaces accessible to the authenticated user. Use this to enumerate workspaces, check workspace details like bot count and plan type, or find a specific workspace by handle. Supports pagination for accounts with many workspaces." }, { "slug": "BOTPRESS_REQUEST_INTEGRATION_VERIFICATION", "name": "Request Integration Verification", "description": "Tool to request verification for a Botpress integration via the Admin API. Use when you need to submit an integration for verification to make it available for public use." }, { "slug": "BOTPRESS_RUN_VRL", "name": "BOTPRESS_RUN_VRL", "description": "Tool to execute a VRL (Vector Remap Language) script against input data using the Botpress Admin API. Use when you need to transform or process data using VRL syntax. The script receives the input data and can perform transformations, validations, or data manipulations." }, { "slug": "BOTPRESS_SEND_MESSAGE", "name": "BOTPRESS_SEND_MESSAGE", "description": "Tool to send a message to an existing Botpress conversation via the Runtime API. Use when you need to create and deliver a message to a user." }, { "slug": "BOTPRESS_SET_ACCOUNT_PREFERENCE", "name": "Set Account Preference", "description": "Tool to set a preference for the account. Use when you need to create or update a specific account preference by its key." }, { "slug": "BOTPRESS_SET_WORKSPACE_PREFERENCE", "name": "Set Workspace Preference", "description": "Tool to set a preference for a Botpress workspace. Use when you need to store or update a workspace-specific preference value by its key." }, { "slug": "BOTPRESS_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update details of the authenticated account. Use when you need to change the display name, profile picture, or refresh account data." }, { "slug": "BOTPRESS_UPDATE_ADMIN_BOTS", "name": "BOTPRESS_UPDATE_ADMIN_BOTS", "description": "Tool to update an existing bot in a Botpress workspace via the Admin API. Use when you need to modify bot configuration, update tags, change code, or adjust any other bot properties. Only the fields you provide will be updated." }, { "slug": "BOTPRESS_UPDATE_ADMIN_WORKSPACE", "name": "UPDATE_ADMIN_WORKSPACE", "description": "Tool to update a Botpress workspace via the Admin API. Use this to modify workspace properties including name, description, contact information, public visibility, handle, profile picture, social accounts, and spending limits." }, { "slug": "BOTPRESS_UPDATE_WORKFLOW", "name": "BOTPRESS_UPDATE_WORKFLOW", "description": "Tool to update a workflow object in Botpress by setting parameter values. Use when you need to change workflow status, add output data, update tags, or set failure reasons. Any parameters not provided will remain unchanged." }, { "slug": "BOTPRESS_VALIDATE_INTEGRATION_UPDATE", "name": "BOTPRESS_VALIDATE_INTEGRATION_UPDATE", "description": "Tool to validate an integration update request in Botpress Admin API. Use when you need to verify that integration update parameters are valid before performing the actual update. Returns success if the integration can be updated with the provided parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "botpress_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Personal Access Token", "type": "string", "description": "A Personal Access Token (PAT) generated in the Profile Settings section of your Botpress account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "botsonic", "name": "Botsonic", "logo": "https://logos.composio.dev/api/botsonic", "description": "Botsonic is a no-code AI chatbot builder that enables users to create and integrate AI chatbots into their websites without any coding knowledge.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOTSONIC_BULK_UPLOAD_URLS", "name": "Bulk Upload Bot URLs", "description": "Tool to bulk upload URLs for bot training. Use when you need to upsert multiple document URLs into a bot in one request." }, { "slug": "BOTSONIC_CREATE_STARTER_QUESTION", "name": "Create Starter Question", "description": "Tool to create a new starter question for the bot. Use when you need to add a preset question-answer pair that users can quickly select." }, { "slug": "BOTSONIC_DELETE_STARTER_QUESTION", "name": "Delete Starter Question", "description": "Deletes a specific starter question from a bot using its unique identifier. This operation is destructive and permanent. First retrieve available starter questions using the Get All Starter Questions action to obtain valid IDs before deletion." }, { "slug": "BOTSONIC_DELETE_UPLOADED_FILE", "name": "Delete Uploaded File", "description": "Delete a specific uploaded file/bot data entry by its unique identifier. This permanently removes the file from the bot's training data. Use this action when you need to clean up outdated content, remove incorrect data, or manage bot training materials. The file ID can be obtained using the Get All Bot Data action. Returns the full deleted object details including metadata, status, and timestamps." }, { "slug": "BOTSONIC_GET_ALL_BOT_DATA", "name": "Get All Bot Data", "description": "Tool to retrieve all data associated with the bot, including files and resources. Use when you need a comprehensive export of bot assets for backup or inspection." }, { "slug": "BOTSONIC_GET_ALL_BOTS", "name": "Get All Bots", "description": "Retrieve all bots associated with your account. Supports pagination, search, and sorting to efficiently manage and query bot configurations. Use this when you need to list, search, or filter existing bots." }, { "slug": "BOTSONIC_GET_ALL_CONVERSATIONS", "name": "Get All Conversations", "description": "Tool to retrieve all conversations related to the bot. Use after authentication when you need a paginated list of conversation threads for review or analytics." }, { "slug": "BOTSONIC_GET_ALL_CONVERSATIONS_WITH_SOURCE", "name": "Get All Conversations With Source", "description": "Tool to retrieve all conversations with source information. Use when you need detailed conversation data including source tracking, user form data, and comprehensive metadata for analytics or conversation management." }, { "slug": "BOTSONIC_GET_ALL_FAQS", "name": "Get All FAQs", "description": "Retrieve all frequently asked questions (FAQs) associated with your bot in paginated format. Returns a list of FAQ entries with their questions, answers, status, and metadata. Supports filtering by search query, sorting by various attributes, and pagination controls. Use this when you need to list, review, or manage bot FAQ entries." }, { "slug": "BOTSONIC_GET_ALL_STARTER_PRESETS", "name": "Get All Starter Presets", "description": "Tool to retrieve all starter presets for a bot by bot ID. Use when you need to fetch the bot's welcome message and starter questions configured for user interactions." }, { "slug": "BOTSONIC_GET_ALL_STARTER_QUESTIONS", "name": "Get All Starter Questions", "description": "Tool to retrieve all starter questions. Use after authenticating when you need to list the bot’s opening prompts." }, { "slug": "BOTSONIC_UPDATE_STARTER_QUESTION", "name": "Update Starter Question", "description": "Tool to update an existing starter question by its unique identifier. Use after confirming the ID and desired updates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "botsonic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bot API Key", "type": "string", "description": "Your X-BOT-KEY for API access. Found in Botsonic Dashboard > Settings > API Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "botstar", "name": "Botstar", "logo": "https://logos.composio.dev/api/botstar", "description": "BotStar is a comprehensive chatbot platform that enables businesses to design, develop, and train chatbots visually for Messenger and websites.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOTSTAR_CREATE_BOT", "name": "Create Bot", "description": "Tool to create a new bot in BotStar. Use when you need to create a new bot instance with a specific name." }, { "slug": "BOTSTAR_CREATE_BOT_ATTRIBUTE", "name": "Create Bot Attribute", "description": "Tool to create a new bot attribute in BotStar. Bot attributes are global variables for a bot and support multilingual values. Use when you need to define custom data fields for your bot." }, { "slug": "BOTSTAR_CREATE_CMS_ENTITY", "name": "Create CMS Entity", "description": "Tool to create a CMS entity in BotStar with a name and optional fields. Use when you need to define a new content structure with custom fields supporting various data types." }, { "slug": "BOTSTAR_CREATE_ENTITY_FIELDS", "name": "Create Entity Fields", "description": "Tool to create entity field(s) in BotStar CMS. Supports multiple field types including text, multiple_values, single_option, multiple_options, image, date, and entity. Use when you need to add new fields to an existing entity." }, { "slug": "BOTSTAR_CREATE_ENTITY_ITEM", "name": "Create Entity Item", "description": "Tool to create a new entity item in BotStar CMS. Use when adding items to a CMS entity with custom field values." }, { "slug": "BOTSTAR_CREATE_USER_ATTRIBUTES", "name": "Create User Attributes", "description": "Tool to create custom user attributes in BotStar. Use when you need to define new custom attributes for users with specified field name and type." }, { "slug": "BOTSTAR_DELETE_BOT_ATTRIBUTE", "name": "Delete Bot Attribute", "description": "Tool to delete a bot attribute by ID. Use when you need to remove a custom attribute from a bot." }, { "slug": "BOTSTAR_DELETE_CMS_ENTITY", "name": "Delete CMS Entity", "description": "Tool to delete a CMS entity by ID. Use when you need to remove an entity from the bot's content management system." }, { "slug": "BOTSTAR_DELETE_ENTITY_FIELDS", "name": "Delete Entity Fields", "description": "Tool to delete entity field(s) from a CMS entity. Use when you need to remove fields from a CMS entity by their unique names." }, { "slug": "BOTSTAR_DELETE_ENTITY_ITEM", "name": "Delete Entity Item", "description": "Tool to delete an entity item from a CMS entity. Use when you need to remove a specific item from a bot's CMS entity." }, { "slug": "BOTSTAR_GET_BOT", "name": "Get Bot", "description": "Tool to get your bot by bot ID. Use when you need detailed bot information including ID, name, and team name." }, { "slug": "BOTSTAR_GET_BOT_APP_ID", "name": "Get BotStar Application IDs", "description": "Tool to retrieve the BotStar application ID (`appId`). Use when initializing or reinitializing the live chat widget." }, { "slug": "BOTSTAR_GET_CMS_ENTITY", "name": "Get CMS Entity", "description": "Tool to get a specific CMS entity by ID. Returns entity details including fields configuration. Use when you need to retrieve metadata about a CMS entity structure." }, { "slug": "BOTSTAR_GET_ENTITY_ITEM", "name": "Get Entity Item", "description": "Tool to retrieve a specific item from a CMS entity with all field values. Use when you need to get detailed information about a single entity item." }, { "slug": "BOTSTAR_LIST_BOT_ATTRIBUTES", "name": "List Bot Attributes", "description": "Tool to get all bot attributes from BotStar. Returns array of bot attributes with id, name, desc, value, and data_type. Use when you need to retrieve or inspect all attributes configured for a bot." }, { "slug": "BOTSTAR_LIST_BOTS", "name": "List Bots", "description": "Tool to get your list of bots. Use when you need to retrieve all bots associated with your account. Returns an array of bots with their id, name, and team_name." }, { "slug": "BOTSTAR_LIST_CMS_ENTITIES", "name": "List CMS Entities", "description": "Tool to retrieve all CMS entities for a bot. Use when you need to access entity definitions, field configurations, or available entity schemas." }, { "slug": "BOTSTAR_LIST_ENTITY_ITEMS", "name": "List Entity Items", "description": "Tool to retrieve all entity items with pagination support. Use when you need to list CMS entity items, with optional filtering by name and status." }, { "slug": "BOTSTAR_LIVECHAT_BOOT", "name": "Livechat boot", "description": "Tool to reinitialize the live chat widget with provided data. Use after initial load to reset or update widget configuration." }, { "slug": "BOTSTAR_LIVECHAT_CLOSE", "name": "Close BotStar Livechat Widget", "description": "Tool to hide the live chat window. Use when the chat widget is configured in livechat or popup mode." }, { "slug": "BOTSTAR_LIVECHAT_ON_CLOSE", "name": "BotStar LiveChat onClose Callback", "description": "Tool to register a callback when the chat window is closed. Use after the widget is initialized. Example prompt: \"Register an onClose handler that logs 'Goodbye!' to the console.\"" }, { "slug": "BOTSTAR_LIVECHAT_ON_OPEN", "name": "Livechat on open", "description": "Tool to register a callback when the chat window is opened. Use after widget initialization." }, { "slug": "BOTSTAR_LIVECHAT_OPEN", "name": "Livechat open", "description": "Tool to show the live chat window. Use after the widget has been bootstrapped with BotStarApi('boot') to programmatically open the chat window (mode must be 'livechat' or 'popup')." }, { "slug": "BOTSTAR_LIVECHAT_UPDATE", "name": "Livechat update", "description": "Tool to update user details on the current live chat session. Use when you need to modify user profile attributes during an active conversation." }, { "slug": "BOTSTAR_PUBLISH_BOT", "name": "Publish Bot to Live", "description": "Tool to publish a bot to live. Use when you need to deploy changes to the production environment." }, { "slug": "BOTSTAR_UPDATE_BOT_ATTRIBUTE", "name": "Update Bot Attribute", "description": "Tool to update a bot attribute in BotStar. Use when you need to modify the description or value of a bot attribute with optional multilingual support." }, { "slug": "BOTSTAR_UPDATE_CMS_ENTITY", "name": "Update CMS Entity", "description": "Tool to update a CMS entity in BotStar. Use when you need to modify the name or configuration of an existing CMS entity." }, { "slug": "BOTSTAR_UPDATE_ENTITY_FIELDS", "name": "Update Entity Fields", "description": "Tool to update entity field(s) in BotStar CMS. Use when you need to modify the name or options of existing fields." }, { "slug": "BOTSTAR_UPDATE_ENTITY_ITEM", "name": "Update Entity Item", "description": "Tool to update a CMS entity item in BotStar. Use when you need to modify the name, status, or custom field values of an entity item." }, { "slug": "BOTSTAR_WEBVIEW_GET_PARAMETER", "name": "Get BotStar Webview Parameter", "description": "Tool to retrieve a parameter value passed from the BotStar chatbot to the webview. Use inside onChatBotReady after your page loads in modal mode with bs:input meta tags." }, { "slug": "BOTSTAR_WEBVIEW_SEND_RESPONSE", "name": "Webview send response", "description": "Tool to send data from the webview back to the BotStar chatbot. Use when you need to transmit responses or custom outputs from an open webview." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "botstar_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "BotStar API Access Token", "type": "string", "description": "The API Access Token for authenticating requests to the BotStar API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bouncer", "name": "Bouncer", "logo": "https://logos.composio.dev/api/bouncer", "description": "Bouncer is an email verification and validation service that helps ensure email deliverability by verifying email addresses through real-time and batch processing APIs.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOUNCER_CHECK_TOXICITY_LIST_JOB_STATUS", "name": "Check Toxicity List Job Status", "description": "Tool to check the status of a specific toxicity list job. Use after creating a toxicity list job to poll its status until completion." }, { "slug": "BOUNCER_CREATE_BATCH_REQUEST", "name": "Create Batch Request", "description": "Initiates an asynchronous batch email verification request. Use when you have multiple emails to verify. Returns a batch ID for tracking - use BOUNCER_GET_BATCH_RESULTS to retrieve verification results after processing completes, or provide a callback URL." }, { "slug": "BOUNCER_CREATE_TOXICITY_LIST_JOB", "name": "Create Toxicity List Job", "description": "Tool to create a toxicity analysis job for a list of email addresses. Use when you need to batch-process toxicity checks for multiple emails at once." }, { "slug": "BOUNCER_DELETE_BATCH_REQUEST", "name": "Delete batch request", "description": "Deletes a batch email verification request and all associated emails and results. Use when you need to permanently remove batch data. This operation is idempotent - calling it multiple times on the same batch ID is safe and returns success. Data is automatically deleted by Bouncer after 60 days if not deleted manually." }, { "slug": "BOUNCER_DELETE_TOXICITY_LIST_JOB", "name": "Delete Toxicity List Job", "description": "Tool to delete a specific toxicity list job. Use when you need to remove a completed or unwanted toxicity analysis job after confirming its ID." }, { "slug": "BOUNCER_FINISH_BATCH", "name": "Finish Batch", "description": "Tool to mark a batch verification process as finished early. Use when you need to stop batch processing before all emails are verified and reclaim credits for unprocessed emails. IMPORTANT: The batch must be in 'processing' status - cannot finish a batch that is 'queued' or already 'completed'." }, { "slug": "BOUNCER_GET_BATCH_RESULTS", "name": "Get Batch Results", "description": "Tool to retrieve the results of a batch verification process. Use after submitting a batch to fetch all processed email verification outcomes. Note: If the batch is still processing, the API will return a 405 status indicating results are not yet available. Wait for the batch to complete before retrieving results." }, { "slug": "BOUNCER_GET_CREDITS", "name": "Get Credits", "description": "Tool to retrieve the current credit balance for the account. Use when you need to check available credits before performing verification operations." }, { "slug": "BOUNCER_VERIFY_DOMAIN", "name": "Verify Domain", "description": "Tool to verify the validity and configuration of a domain. Use when you need to confirm the domain's MX records and catch-all behavior." }, { "slug": "BOUNCER_VERIFY_EMAIL", "name": "Verify Email", "description": "Tool to verify a single email address in real-time. Use when validating email entry form inputs instantly." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bouncer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bouncer API Key", "type": "string", "description": "The API key used for authenticating requests to the Bouncer API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "boxhero", "name": "Boxhero", "logo": "https://logos.composio.dev/api/boxhero", "description": "BoxHero is a cloud-based inventory management solution designed for small to medium-sized businesses, offering real-time updates, barcode scanning, team collaboration, and analytics.", "category": "product management", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BOXHERO_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete a specific item (barcode) by its ID. Use when you need to remove an item from the inventory." }, { "slug": "BOXHERO_DELETE_LOCATION", "name": "BoxHero - Delete Location", "description": "Tool to delete a specific warehouse location by its ID. Use when you need to remove a location from the system." }, { "slug": "BOXHERO_GET_ITEM", "name": "Get Item", "description": "Tool to retrieve a specific item (barcode) by ID. Use when you need detailed information about a single item including its attributes, pricing, and inventory quantities." }, { "slug": "BOXHERO_GET_ITEM_ATTRIBUTE", "name": "Get Item Attribute", "description": "Tool to retrieve a specific item attribute by ID. Use when you need to get detailed information about an item attribute specification." }, { "slug": "BOXHERO_GET_LOCATION", "name": "Get Location", "description": "Tool to retrieve a specific location by ID. Use when you need detailed information about a particular warehouse location including its name, quantity, and notes." }, { "slug": "BOXHERO_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve a specific team member by ID. Use when you need to get details about a particular member." }, { "slug": "BOXHERO_GET_TEAM_INFO", "name": "Get Linked Team Info", "description": "Tool to get information about the linked team and its mode. Use when you need to retrieve the currently linked team details." }, { "slug": "BOXHERO_LIST_BASIC_TRANSACTIONS", "name": "BoxHero - List Basic Transactions", "description": "Tool to list basic inventory transactions. Use when you need a high-level overview of in/out/move transactions." }, { "slug": "BOXHERO_LIST_ITEM_ATTRIBUTES", "name": "List Item Attributes", "description": "Tool to retrieve the list of item attribute specifications used within the team. Use when you need to understand what custom attributes are defined for items." }, { "slug": "BOXHERO_LIST_ITEMS", "name": "List Items", "description": "Tool to list items. Use when fetching products with optional location filters and pagination." }, { "slug": "BOXHERO_LIST_LOCATIONS", "name": "BoxHero - List Locations", "description": "Tool to list warehouse locations. Use when you need valid warehouse_id values for filtering transactions." }, { "slug": "BOXHERO_LIST_LOCATION_TRANSACTIONS", "name": "BoxHero - List Location Transactions", "description": "Tool to retrieve the list of transactions in location mode. Use when you need to fetch transaction history with location-based details including in/out/move/adjust operations." }, { "slug": "BOXHERO_LIST_MEMBERS", "name": "List Team Members", "description": "Tool to retrieve the list of team members. Use when you need to get all members in the team with their roles." }, { "slug": "BOXHERO_LIST_PARTNERS", "name": "BoxHero - List Partners", "description": "Tool to list partners (suppliers and customers). Use when retrieving partner information with optional type filtering and pagination." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "boxhero_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "BoxHero API Token", "type": "string", "description": "The API token used for authenticating requests to the BoxHero API. Obtain this from your BoxHero account under Settings > Integrations & API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "breathehr", "name": "Breathe HR", "logo": "https://logos.composio.dev/api/breathehr", "description": "BreatheHR is a simple, cloud-based HR software designed for SMEs to manage employee records, absences, performance reviews, and other HR processes.", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 50, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BREATHEHR_APPROVE_LEAVE_REQUEST", "name": "Approve Leave Request", "description": "Tool to approve a leave request in BreatheHR. Use when an authorized user needs to approve a pending leave request." }, { "slug": "BREATHEHR_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Tool to create a new employee in BreatheHR. Use when you need to add a new employee record with their personal information, contact details, and employment information. Required fields are first_name, last_name, email, and company_join_date." }, { "slug": "BREATHEHR_CREATE_EMPLOYEE_CHANGE_REQUEST", "name": "Create Employee Change Request", "description": "Tool to create a change request for an employee field. Use when you need to update employee information such as job title, department, or salary." }, { "slug": "BREATHEHR_CREATE_EMPLOYEE_EXPENSE", "name": "Create Employee Expense", "description": "Tool to create an employee expense record in BreatheHR. Use when an employee needs to submit a new expense claim for reimbursement or record a company-paid expense." }, { "slug": "BREATHEHR_CREATE_EMPLOYEE_EXPENSE_CLAIM", "name": "Create Employee Expense Claim", "description": "Tool to create a new expense claim for an employee. Use when you need to submit expenses for reimbursement by grouping one or more unclaimed expense records into a claim." }, { "slug": "BREATHEHR_CREATE_EMPLOYEE_SICKNESS", "name": "Create Employee Sickness", "description": "Tool to create a sickness record for an employee in BreatheHR. Use when you need to log an employee's sick leave with details like type, dates, and status." }, { "slug": "BREATHEHR_DELETE_EMPLOYEE_EXPENSE", "name": "Delete Employee Expense", "description": "Tool to delete an employee expense by ID. Use when you need to remove an expense record from the system." }, { "slug": "BREATHEHR_DELETE_EMPLOYEE_TRAINING_COURSE", "name": "Delete Employee Training Course", "description": "Tool to delete an employee training course record by its ID. Use when you need to remove a training record from an employee's profile." }, { "slug": "BREATHEHR_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve account information including ID, name, domain, UUID, and RTA usage status. Use when you need to check account details or verify account configuration." }, { "slug": "BREATHEHR_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to retrieve detailed information about a specific employee by ID. Use when you need comprehensive employee data including personal details, employment information, organizational structure, and compensation." }, { "slug": "BREATHEHR_GET_EMPLOYEE_EXPENSE", "name": "Get Employee Expense", "description": "Tool to retrieve a specific employee expense record by ID. Use when you need detailed information about a particular expense." }, { "slug": "BREATHEHR_GET_LEAVE_REQUEST", "name": "Get Leave Request", "description": "Tool to retrieve detailed information about a specific leave request by ID. Use when you need to check the status, dates, or details of a particular leave/absence request." }, { "slug": "BREATHEHR_GET_LEAVE_REQUEST_CANCELLING", "name": "Get Leave Request Cancelling", "description": "Tool to retrieve the leave request that is being cancelled. Use when you need to find the original leave request associated with a cancellation request." }, { "slug": "BREATHEHR_LIST_ABSENCES", "name": "List Absences", "description": "Tool to list all absences with optional filtering by date range, employee, department, and type. Use when you need to retrieve absence records from BreatheHR with pagination support." }, { "slug": "BREATHEHR_LIST_BENEFITS", "name": "List Employee Benefits", "description": "Tool to retrieve a list of employee benefits with optional pagination. Use when you need to access benefit information across employees." }, { "slug": "BREATHEHR_LIST_BONUSES", "name": "List Employee Bonuses", "description": "Tool to retrieve employee bonuses from BreatheHR with pagination support. Use when you need to list bonuses across the organization." }, { "slug": "BREATHEHR_LIST_CHANGE_REQUESTS", "name": "List Change Requests", "description": "Tool to list change requests from BreatheHR. Use when you need to retrieve change requests with optional pagination." }, { "slug": "BREATHEHR_LIST_COMPANY_DOCUMENTS", "name": "List Company Documents", "description": "Tool to retrieve a paginated list of company documents from BreatheHR. Use when you need to access or view company-wide documents stored in the BreatheHR system." }, { "slug": "BREATHEHR_LIST_COMPANY_PROJECTS", "name": "List Company Projects", "description": "Tool to list company projects from BreatheHR. Use when you need to retrieve all projects associated with the company. Supports pagination via page and per_page parameters." }, { "slug": "BREATHEHR_LIST_COMPANY_TRAINING_TYPES", "name": "List Company Training Types", "description": "Tool to list company training types. Use when you need to retrieve available training type categories. Returns paginated training type records including identifiers, names, and timestamps." }, { "slug": "BREATHEHR_LIST_DEPARTMENT_ABSENCES", "name": "List Department Absences", "description": "Tool to list absences for a specific department. Use when you need to retrieve absence records for employees in a department. Supports pagination and filtering of cancelled absences." }, { "slug": "BREATHEHR_LIST_DEPARTMENT_BENEFITS", "name": "List Department Benefits", "description": "Tool to list all employee benefits for a specific department. Use when you need to retrieve benefit information including contributions, dates, and provider details for department members." }, { "slug": "BREATHEHR_LIST_DEPARTMENT_BONUSES", "name": "List Department Bonuses", "description": "Tool to list bonuses for a specific department. Use when you need to retrieve bonus information for employees within a department. Returns paginated bonus records including amounts, award dates, and descriptions." }, { "slug": "BREATHEHR_LIST_DEPARTMENT_LEAVE_REQUESTS", "name": "List Department Leave Requests", "description": "Tool to list leave requests for a specific department. Use when you need to retrieve absence or time-off requests for employees within a particular department." }, { "slug": "BREATHEHR_LIST_DEPARTMENTS", "name": "List Departments", "description": "Tool to list all company departments from BreatheHR. Use when you need to retrieve department information including IDs and names. Returns a paginated list of departments." }, { "slug": "BREATHEHR_LIST_DEPARTMENT_SALARIES", "name": "List Department Salaries", "description": "Tool to list salaries for a specific department. Use when you need to retrieve salary information for employees within a department. Returns paginated salary records including amounts, dates, and basis information." }, { "slug": "BREATHEHR_LIST_DIVISIONS", "name": "List Divisions", "description": "Tool to retrieve all company divisions. Use when you need to view organizational divisions or departments." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_ABSENCES", "name": "List Employee Absences", "description": "Tool to list absences for a specific employee from BreatheHR. Use when you need to retrieve absence records for an employee with optional filtering and pagination." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_BENEFITS", "name": "List Employee Benefits", "description": "Tool to list benefits for an employee. Use when you need to retrieve all benefits associated with a specific employee by their ID." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_BONUSES", "name": "List Employee Bonuses", "description": "Tool to list bonuses for a specific employee. Use when you need to retrieve all bonus records associated with an employee." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_CHANGE_REQUESTS", "name": "List Employee Change Requests", "description": "Tool to list change requests for a specific employee. Use when you need to retrieve pending or historical change requests associated with an employee." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_EXPENSE_CLAIMS", "name": "List Employee Expense Claims", "description": "Tool to list employee expense claims from BreatheHR. Use when you need to retrieve expense claims, optionally filtered by employee ID or claim state. Supports pagination for large result sets." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_EXPENSES", "name": "List Employee Expenses", "description": "Tool to list employee expenses from BreatheHR. Use when you need to retrieve expense records, optionally filtered by employee or claim status." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_HOLIDAY_YEARS", "name": "List Employee Holiday Years", "description": "Tool to get holiday years for an employee. Use when you need to retrieve holiday allowance information for a specific employee, optionally filtered by date." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_JOBS", "name": "List Employee Jobs", "description": "Tool to list employee jobs with optional employee filtering. Use when you need to retrieve job information for employees. Returns paginated job records including title, employment type, dates, and timestamps." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_LEAVE_REQUESTS", "name": "List Employee Leave Requests", "description": "Tool to list leave requests for a specific employee. Use when you need to retrieve leave request history including vacation, sick leave, and other absence requests." }, { "slug": "BREATHEHR_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to list all employees in the BreatheHR account with pagination support. Use when you need to retrieve employee information from BreatheHR. Supports filtering by role type (HR, line manager) and RotaCloud integration status. Pagination is handled via page and per_page query parameters, with metadata returned in HTTP headers (Link and Total headers)." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_SALARIES", "name": "List Employee Salaries", "description": "Tool to list salaries for a specific employee. Use when you need to retrieve salary history or current salary information for an employee." }, { "slug": "BREATHEHR_LIST_EMPLOYEE_TRAINING_COURSES", "name": "List Employee Training Courses", "description": "Tool to list employee training courses with optional filtering by employee and pagination support. Use when you need to retrieve training course records for employees." }, { "slug": "BREATHEHR_LIST_HOLIDAY_ALLOWANCES", "name": "List Holiday Allowances", "description": "Tool to list holiday allowances configured for the company. Returns tiered holiday allowances based on years of service (1-10 years). Use when you need to view or retrieve holiday entitlement configurations." }, { "slug": "BREATHEHR_LIST_LEAVE_REQUESTS", "name": "List Leave Requests", "description": "Tool to list all leave requests with optional date and employee/department filtering. Use when you need to retrieve absence or time-off requests across the organization, optionally filtered by date range, employee, or department." }, { "slug": "BREATHEHR_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to list all company locations from BreatheHR. Use when you need to retrieve location information including IDs and names. Returns a paginated list of locations." }, { "slug": "BREATHEHR_LIST_OTHER_LEAVE_REASONS", "name": "List Other Leave Reasons", "description": "Tool to list other leave reasons configured for the company in BreatheHR. Use when you need to retrieve available custom leave types beyond standard leave." }, { "slug": "BREATHEHR_LIST_SALARIES", "name": "List Salaries", "description": "Tool to list employee salaries with pagination support. Use when you need to retrieve salary information across the organization. Returns paginated salary records including amounts, dates, and basis information." }, { "slug": "BREATHEHR_LIST_SICKNESSES", "name": "List Sicknesses", "description": "Tool to list all sickness records from BreatheHR with optional date filtering. Use when you need to retrieve sickness absence records with support for filtering by employee, department, date range, and RotaCloud integration status." }, { "slug": "BREATHEHR_LIST_WORKING_PATTERNS", "name": "List Working Patterns", "description": "Tool to list all working patterns defined in the BreatheHR account with pagination support. Use when you need to retrieve working pattern information including weekly schedules, hours per day, and default patterns. Returns complete details for each pattern including day-by-day breakdowns." }, { "slug": "BREATHEHR_REJECT_LEAVE_REQUEST", "name": "Reject Leave Request", "description": "Tool to reject a leave request in BreatheHR. Use when an authorized user needs to decline an employee's time-off request with a provided reason." }, { "slug": "BREATHEHR_UPDATE_EMPLOYEE_EXPENSE_CLAIM", "name": "Update Employee Expense Claim", "description": "Tool to approve or reject an employee expense claim. Use when you need to update the approval status of an expense claim by providing the claim ID and approver/rejector ID." }, { "slug": "BREATHEHR_UPDATE_EMPLOYEE_TRAINING_COURSE", "name": "Update employee training course", "description": "Tool to update an existing employee training course record in BreatheHR. Use when you need to modify training details such as status, dates, notes, outcome, or other training attributes." }, { "slug": "BREATHEHR_UPDATE_SICKNESS", "name": "Update Sickness", "description": "Tool to update an existing sickness record in BreatheHR. Use when you need to modify sickness details such as status, dates, review notes, or other sickness attributes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "breathehr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your BreatheHR API key. Production keys start with \"prod-\" and sandbox keys start with \"sandbox-\". Available at /settings/modules/api_setup in your BreatheHR account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "breeze", "name": "Breeze", "logo": "https://logos.composio.dev/api/breeze", "description": "Breeze is a project management software that helps teams plan, track, and collaborate on projects efficiently.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BREEZE_ADD_PROJECT_PEOPLE", "name": "Add Project People", "description": "Add people to a Breeze project by inviting them via email. This action invites one or more users to a project by their email addresses. The response returns the complete list of all users currently in the project (including the newly added ones). Use this when you need to give users access to a specific project." }, { "slug": "BREEZE_ARCHIVE_PROJECT", "name": "Archive Project", "description": "Tool to archive a specific project. Use when you need to hide a completed or inactive project from active views after confirming its details." }, { "slug": "BREEZE_CREATE_CARD", "name": "Create Card", "description": "Tool to create a new card in a project. Use after confirming the project_id. Creates a task with details like name, due date, and assignees." }, { "slug": "BREEZE_CREATE_LIST", "name": "CREATE_LIST", "description": "Tool to create a new list (stage) in a Breeze project. Use when you've selected a project and need to add a new stage. Example: \"Create a new Todo list for project 42.\"" }, { "slug": "BREEZE_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new project in Breeze project management system. Use this action to initialize a new project with a given name. The newly created project will: - Be automatically assigned to the authenticated user as owner - Have default budget values set to 0 - Not be assigned to any workspace initially (can be configured later) - Not be archived by default Returns comprehensive project details including ID, timestamps, budget information, and user assignments." }, { "slug": "BREEZE_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Tool to create a new workspace. Use after deciding on the workspace name." }, { "slug": "BREEZE_DELETE_CARD", "name": "Delete Card", "description": "Tool to delete a specific card (task) by its ID. Use when you need to remove a task permanently; deletions cannot be undone." }, { "slug": "BREEZE_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a specific project by ID. Use when you need to remove a project after confirming its ID." }, { "slug": "BREEZE_DELETE_PROJECT_PERSON", "name": "Delete Person from Project", "description": "Tool to delete a person from a project by user ID. Use after confirming the project and user details. Example: \"Delete user 456 from project 123\"." }, { "slug": "BREEZE_DELETE_WORKSPACE", "name": "Delete Workspace", "description": "Tool to delete a specific workspace by ID. Use when permanently removing a workspace after confirming the correct workspace ID." }, { "slug": "BREEZE_GET_CARD", "name": "Get Card", "description": "Tool to retrieve detailed info for a specific card (task) in a project. Use when you know the project_id and card_id and need all metadata like tags, users, todos, and time entries." }, { "slug": "BREEZE_GET_CARDS", "name": "GET_CARDS", "description": "Tool to get all cards (tasks) for a specific project. Use after confirming the project exists. Example: \"List all cards in project 42.\"" }, { "slug": "BREEZE_GET_PROJECT", "name": "Get Project", "description": "Tool to get a specific project by ID. Use when you need detailed project information after confirming the project ID. Example: \"Get project 123 details\"." }, { "slug": "BREEZE_GET_PROJECT_PEOPLE", "name": "Get Project People", "description": "Tool to get all users in a project. Use when you have a valid project ID and need to list its users." }, { "slug": "BREEZE_GET_PROJECTS", "name": "Get Projects", "description": "Retrieves a list of all active (non-archived) projects in Breeze. Returns comprehensive project details including budget, time tracking, assigned users, tags, and metadata. Use this action to: - Get an overview of all current projects - Find specific projects by browsing the list - Access project IDs for use with other project-related actions - Check project budgets, hours tracked, and team assignments Note: Only returns active projects. Use GET_ARCHIVED_PROJECTS to retrieve archived projects." }, { "slug": "BREEZE_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to get a specific workspace by ID. Use when you need workspace details including projects after confirming the workspace ID." }, { "slug": "BREEZE_GET_WORKSPACES", "name": "Get Workspaces", "description": "Tool to get all workspaces. Use when you need to list available workspaces for the authenticated user." }, { "slug": "BREEZE_MOVE_CARD", "name": "Move Card", "description": "Tool to move a card to a different stage or position. Use after confirming stage_id and prev_id." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "breeze_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Breeze API token. Found in your Breeze profile settings.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Team ID", "type": "string", "description": "Your team ID (required if you belong to multiple teams).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "brightdata", "name": "Bright Data", "logo": "https://logos.composio.dev/api/brightdata", "description": "Bright Data provides the world's #1 web data platform with Web Unlocker for bypassing anti-bot systems, SERP API for search engine data, and pre-made scrapers for popular websites. Collect any web data at scale.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BRIGHTDATA_CRAWL_API", "name": "Trigger Site Crawl", "description": "Tool to trigger an asynchronous site crawl job to extract content across multiple pages or entire domains. Returns a snapshot_id required by BRIGHTDATA_GET_SNAPSHOT_STATUS (poll until complete) and BRIGHTDATA_GET_SNAPSHOT_RESULTS (call only after completion; querying early yields empty or partial data). Use when you need to start a crawl for a given dataset and list of URLs. Large crawls can produce very large payloads — fetch results incrementally." }, { "slug": "BRIGHTDATA_DATASET_LIST", "name": "Browse Available Scrapers", "description": "Tool to list all available pre-made scrapers (datasets) from Bright Data's marketplace. Use when you need to browse available data sources for structured scraping." }, { "slug": "BRIGHTDATA_FILTER_DATASET", "name": "Filter Dataset", "description": "Tool to apply custom filter criteria to a marketplace dataset (BETA). Use after selecting a dataset to generate a filtered snapshot." }, { "slug": "BRIGHTDATA_GET_LIST_OF_AVAILABLE_CITIES", "name": "Get Available Cities", "description": "Tool to get available static network cities for a given country. Use when you need to configure static proxy endpoints after selecting a country." }, { "slug": "BRIGHTDATA_GET_LIST_OF_AVAILABLE_COUNTRIES", "name": "Get Available Countries", "description": "Tool to list available countries and their ISO 3166-1 alpha-2 codes. Use when you need to configure zones with valid country codes before provisioning proxies." }, { "slug": "BRIGHTDATA_GET_SNAPSHOT_RESULTS", "name": "Download Scraped Data", "description": "Tool to retrieve the scraped data from a completed crawl job by snapshot ID. Only call after confirming the job is complete via BRIGHTDATA_GET_SNAPSHOT_STATUS — querying before completion yields empty or partial data. Use after triggering a crawl or filtering a dataset to download the collected data." }, { "slug": "BRIGHTDATA_GET_SNAPSHOT_STATUS", "name": "Check Crawl Status", "description": "Tool to check the processing status of a crawl job using snapshot ID. Call before attempting to download results to ensure data collection is complete." }, { "slug": "BRIGHTDATA_LIST_WEB_UNLOCKER_ZONES", "name": "List Unlocker Zones", "description": "Tool to list your configured Web Unlocker zones and proxy endpoints. Use to view available zones for web scraping and bot protection bypass." }, { "slug": "BRIGHTDATA_SERP_SEARCH", "name": "SERP Search", "description": "Tool to perform SERP (Search Engine Results Page) searches across different search engines using Bright Data's SERP Scrape API. Use when you need to retrieve search results, trending topics, or competitive analysis data. This action submits an asynchronous request and returns a response ID for tracking." }, { "slug": "BRIGHTDATA_WEB_UNLOCKER", "name": "Web Unlocker", "description": "Tool to bypass bot detection, captcha, and other anti-scraping measures to extract content from websites. Use when you need to scrape websites that block automated access or require JavaScript rendering. Some responses may still contain CAPTCHA challenge pages or incomplete HTML; inspect the response before retrying, and avoid aggressive retry loops." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "brightdata_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bright Data API Key", "type": "string", "description": "The API key generated from your Bright Data account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "brilliant_directories", "name": "Brilliant Directories", "logo": "https://logos.composio.dev/api/brilliant_directories", "description": "Brilliant Directories is an all-in-one platform that enables users to create and manage online membership communities and business directories.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 44, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BRILLIANT_DIRECTORIES_CREATE_ALBUM_PHOTO", "name": "Create Album Photo", "description": "Tool to add a new album photo to a user's portfolio in Brilliant Directories. Use when you need to upload or create a photo entry in a user's album. Required fields are user_id (the owner of the album) and title (photo title). Optional fields include description, status, keywords, file paths, and various metadata for organizing and categorizing photos. Supports e-commerce features like price, availability, and product information. The API endpoint expects application/x-www-form-urlencoded data and returns the created photo data with a generated photo_id." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_DATA_CATEGORY", "name": "Create Data Category", "description": "Creates a new data category (post type) in the Brilliant Directories website database. Post types are content types like Videos, Articles, Jobs, Events, Coupons, Classifieds, etc. Required fields: data_name (display name), data_filename (identifier), system_name (system identifier), data_type (numeric type), and form_name (associated form fields name). Optional fields include display configuration (h1, h2, icon, caption_length), sorting options (category_order_by, profile_order_by), pagination (per_page, profile_per_page), layout settings (category_sidebar, profile_sidebar, search_results_layout), and many other customization options. Returns success status with the created data category information." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_DATA_POST", "name": "Create Data Post", "description": "Tool to create a new Single Image Post (member post) in the Brilliant Directories database. Use when adding blog posts, articles, or other content types with images to the website. Required fields: post_title, post_content, user_id, data_id, data_type, and post_status. Optional fields include author info, categories, tags, dates, geolocation, and image settings. The API uses application/x-www-form-urlencoded content type for the request body." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead in the Brilliant Directories database. Use when adding new inquiries or contact requests from visitors. Supports automatic geocoding, member matching, and email notifications. Can specify categories, location data, pricing, and custom notes." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_PORTFOLIO_GROUP", "name": "Create Portfolio Group", "description": "Creates a new multi-image portfolio post in the Brilliant Directories database. This action allows users to publish content with multiple images, descriptions, and metadata such as categories, tags, and location information. Required fields: user_id (existing user), data_type (use 4 for multi-image posts), data_id (data record identifier), and group_name (post title). Optional fields include: content (group_desc), publication status (group_status), category, location, display order, image URLs with titles and descriptions, tags, geographic data, property details for real estate, and sticky post settings. Use this action when creating portfolio posts, blog articles with galleries, or any content requiring multiple images with rich metadata." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_UNSUBSCRIBE", "name": "Create Unsubscribe", "description": "Tool to add an unsubscriber to the database and unsubscribe a member from email campaigns. Use when you need to remove a member's email address from the email campaign list. Requires email address, code (source of unsubscribe), type ('unsubscribe'), and website_id. Optional parameters include date (timestamp), definitive flag (permanent unsubscribe), and id." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_USER", "name": "Create User", "description": "Creates a new user/member account in the Brilliant Directories website database. Required fields: email, password (minimum 6 characters), and subscription_id (must reference an existing membership plan in the system). Optional fields include: personal information (first_name, last_name, company, position), contact details (phone_number, website), address fields (address1, address2, city, state_code, zip_code, country_code), profile information (about_me), and account status flags (active, verified). Returns complete user data including the generated user_id, authentication token, and assigned membership plan details." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_USERS_CLICK", "name": "Create Users Click", "description": "Tool to add a new user clicked link tracking record to the database. Creates a click tracking entry that records when and where users click on links within the directory. Required fields: click_url, click_name, click_type, user_id, date_clicked (format: YYYYMMDDHHmmss), and click_from (source page where click originated). Optional fields include click tracking details (click_ip, click_token, visitor_token) and post association fields (is_single_post, post_id). Note: The click_url must be a valid HTTP/HTTPS URL. Protocol schemes like tel: or mailto: are not supported by the API. Use this when you need to track user engagement with links in profiles, listings, or other directory pages." }, { "slug": "BRILLIANT_DIRECTORIES_CREATE_WIDGET", "name": "Create Widget", "description": "Tool to create a new widget in the Brilliant Directories website database. Use when you need to add custom HTML/PHP content, CSS styles, or JavaScript to create a reusable widget component." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_ALBUM_PHOTO", "name": "Delete Album Photo", "description": "Tool to delete an album photo and its related data from the database. Use when you need to permanently remove a photo from a user's portfolio album." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_DATA_CATEGORY", "name": "Delete Data Category", "description": "Tool to permanently delete a post type (data category) and all related data from the database. Use when you need to completely remove a post type such as Videos, Articles, Jobs, Events, Coupons, Audios, or Discussions. This is a destructive operation that cannot be undone." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a lead and their related data from the database. Use when you need to permanently remove a lead record." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_PORTFOLIO_GROUP", "name": "Delete Portfolio Group", "description": "Tool to delete a multi-image post (portfolio group) and its related data from the database. Use when you need to permanently remove a portfolio group/multi-image post." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_UNSUBSCRIBE", "name": "Delete Unsubscribe Record", "description": "Tool to delete an unsubscribe record and its related data from the database. Use when you need to remove an email from the unsubscribe list." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_USER", "name": "Delete User", "description": "This tool deletes an existing user record from the Brilliant Directories website database. It allows for the complete removal of a user record and, optionally, the deletion of the member's uploaded images." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_USERS_CLICK", "name": "Delete Users Click", "description": "Tool to delete a user clicked link and their related data from the database. Permanently removes a click record identified by click_id." }, { "slug": "BRILLIANT_DIRECTORIES_DELETE_WIDGET", "name": "Delete Widget", "description": "Tool to delete a widget and its related data from the database. Use when you need to permanently remove a widget. This is a destructive operation that cannot be undone." }, { "slug": "BRILLIANT_DIRECTORIES_GET_ALBUM_PHOTO", "name": "Get Album Photo", "description": "Retrieves the complete metadata and details for a single album image from Brilliant Directories. This action fetches comprehensive information about an album photo including its title, description, file paths, timestamps, status, and other metadata. Use when you need to read the data of a specific album image based on its photo_id. Use cases: - Retrieve metadata for a specific photo - Access photo URLs and file paths - Check photo status and visibility settings - Get photo details for display or editing" }, { "slug": "BRILLIANT_DIRECTORIES_GET_DATA_CATEGORIES", "name": "Get Data Categories Fields", "description": "This tool retrieves all available custom fields for Data Categories (Post Types) in a Brilliant Directories website. Data categories/post types include content types like Videos, Articles, Jobs, Events, Coupons, Audios, and Discussions. The endpoint returns field metadata including field keys, labels, types, whether they're required, and help text. This information is useful for understanding what fields are available when working with post types." }, { "slug": "BRILLIANT_DIRECTORIES_GET_DATA_CATEGORY", "name": "Get Data Category", "description": "Tool to retrieve configuration data for a single post type (data category) in Brilliant Directories. Post types include content types like Videos, Articles, Jobs, Events, Coupons, Audios, and Discussions. This action returns the complete configuration and settings for the specified post type based on its data_id. Use this when you need to inspect or retrieve settings for a specific post type rather than listing all available post types." }, { "slug": "BRILLIANT_DIRECTORIES_GET_DATA_POST", "name": "Get Data Post", "description": "Tool to retrieve a single image/video post from the Brilliant Directories member posts system. Use this action when you need to read the complete data and metadata for a specific post based on its post_id. Returns detailed post information including content, author details, category information, and associated user data." }, { "slug": "BRILLIANT_DIRECTORIES_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve a single lead's complete information from Brilliant Directories. Use when you need to fetch detailed data about a specific lead by its ID." }, { "slug": "BRILLIANT_DIRECTORIES_GET_LEAD_FIELDS", "name": "Get Lead Fields", "description": "This tool retrieves all available fields in the leads table from a Brilliant Directories website. It returns a JSON object containing a list of fields and their associated metadata (field name, field type, field label, whether the field is required, and if it is a system field) that can be used to understand the structure and metadata of lead-related fields." }, { "slug": "BRILLIANT_DIRECTORIES_GET_PORTFOLIO_GROUP", "name": "Get Portfolio Group", "description": "Tool to retrieve multi-image post data by group_id. Use when you need to fetch content and metadata for a specific portfolio group or multi-image post. Returns comprehensive information including images, descriptions, location, tags, and property details if applicable." }, { "slug": "BRILLIANT_DIRECTORIES_GET_REVIEW", "name": "Get Review", "description": "Tool to retrieve complete review data from Brilliant Directories based on review_id. Use when you need to read full review details including content, ratings, reviewer info, and timestamps." }, { "slug": "BRILLIANT_DIRECTORIES_GET_REVIEWS_FIELDS", "name": "Get Reviews Fields", "description": "Get metadata about all available fields in the users_reviews table from a Brilliant Directories website. This tool returns comprehensive field definitions for the reviews system, including: - Core review fields (review_id, review_title, review_description, review_status) - Reviewer information fields (review_name, review_email) - Rating fields (rating_overall, rating_service, rating_response, rating_expertise, rating_results, rating_language) - Timestamp fields (review_added, review_updated, review_approved) - Technical fields (review_token, ip, httpr, formname, revision_timestamp) - Media fields (review_images) - Association fields (user_id, member_id, service_id) This is a read-only tool that requires only authentication and does not make API calls. It provides the standard field schema based on Brilliant Directories API documentation, useful for understanding what fields are available when creating, updating, or searching for reviews." }, { "slug": "BRILLIANT_DIRECTORIES_GET_UNSUBSCRIBE", "name": "Get Unsubscribe Record", "description": "Tool to retrieve a single unsubscriber record by ID. Use when you need to get details about a specific unsubscribe entry, including the email address, unsubscribe date, and source (admin, email link, or API)." }, { "slug": "BRILLIANT_DIRECTORIES_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve comprehensive data for a single user by their user_id. Use when you need to fetch complete user profile information including contact details, subscription data, and membership information. This action queries the Brilliant Directories API using the user_id as a path parameter, returning detailed user information including profile data, contact details, subscription information, social media links, and more." }, { "slug": "BRILLIANT_DIRECTORIES_GET_USER_FIELDS", "name": "Get User Data", "description": "Retrieves comprehensive user data from the Brilliant Directories database by searching for a specific property value. This action queries the users_data table using a property (column name) and value pair, returning detailed user information including profile data, contact details, subscription information, social media links, and more. Commonly used to fetch user records by user_id, email, or any other database column. Use cases: - Look up a user by their ID or email - Retrieve complete user profile information - Access subscription and membership details - Get contact information and social media links" }, { "slug": "BRILLIANT_DIRECTORIES_GET_USERS_CLICK", "name": "Get User Clicked Link", "description": "Tool to retrieve click tracking data for a single user clicked link based on the click_id. Use when you need to fetch detailed information about a specific click event, including the user who clicked, the click type, source and destination URLs, timestamps, and associated tokens." }, { "slug": "BRILLIANT_DIRECTORIES_GET_USER_TRANSACTIONS", "name": "Get User Transactions", "description": "Retrieves payment and transaction history for a member in Brilliant Directories. This action queries transaction records using either user_id or client_id, returning detailed payment history including transaction amounts, dates, payment methods, and status. Optionally returns user schema and credit card information when return_schema is set to 'yes'. Use cases: - Retrieve all transactions for a specific user - Access payment history and invoice details - Get credit card information on file - View transaction status and payment methods" }, { "slug": "BRILLIANT_DIRECTORIES_GET_WIDGET", "name": "Get Widget", "description": "Retrieves the data of a single widget based on the widget_id. Use this to fetch widget configuration and settings from the Brilliant Directories website database." }, { "slug": "BRILLIANT_DIRECTORIES_MATCH_LEADS", "name": "Match Leads", "description": "Tool to match a batch of emails or user IDs to a specific lead record. Use this when you need to associate multiple contacts or users with an existing lead in the Brilliant Directories system. The users_to_match parameter accepts a comma-separated list of either email addresses or user IDs." }, { "slug": "BRILLIANT_DIRECTORIES_SEARCH_REVIEWS", "name": "Search Reviews", "description": "Search reviews and their related data from the database. Filter reviews by various criteria. Supports filtering by location (address), keyword search (q), overall rating, and pagination (page, limit). Results can be ordered by date (ascending/descending) or randomly. Use output_type to specify response format (html or array). Enable caching with post_type_cache_system for faster subsequent searches. Use search_priority_flag to prioritize results by membership plan settings." }, { "slug": "BRILLIANT_DIRECTORIES_SEARCH_USERS", "name": "Search Users", "description": "Search for users/members in the Brilliant Directories database with advanced filtering options. Allows searching and filtering members by keywords, location, categories, and other criteria. Supports pagination, multiple sort orders, and dynamic category filtering for complex queries. Returns comprehensive user data including profile information, contact details, subscription status, and related metadata." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_ALBUM_PHOTO", "name": "Update Album Photo", "description": "Updates an existing album photo record in the Brilliant Directories database. Modifies photo metadata such as title, description, keywords, and status. The photo_id is required to identify which photo to update. All other fields are optional and only the provided fields will be updated. Use when you need to modify photo information, update visibility status, change organization (order, group), or edit photo metadata." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_DATA_CATEGORY", "name": "Update Data Category", "description": "Tool to update an existing post type (data category) record in Brilliant Directories. Use when you need to modify post type settings such as name, display options, layout templates, pagination settings, or other configuration parameters. Requires the data_id parameter to identify which post type to update. All other parameters are optional and only the provided fields will be updated." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_DATA_POST", "name": "Update Data Post", "description": "Updates a single image post record and related data in the Brilliant Directories database. Use this action to modify existing post content including title, content, status, metadata, and other post-related fields. The post_id is required to identify which post to update. All other fields are optional - only the fields you provide will be updated. This allows for partial updates of post records." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_LEAD", "name": "Update Lead", "description": "Updates an existing lead record in the Brilliant Directories website database. The lead_id field is required to identify which lead to update. All other fields are optional - only provide the fields you want to update. This action modifies lead information including contact details (name, email, phone), inquiry details (message, notes, price), location data (coordinates, boundaries, location type), categorization (category IDs and names), and matching settings (auto-match, email notifications, direct member matching)." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_PORTFOLIO_GROUP", "name": "Update Portfolio Group", "description": "Tool to update a multi-image post (portfolio group) record in the Brilliant Directories database. Use when you need to modify existing portfolio content, change post details, update images, or modify property information for real estate listings." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_UNSUBSCRIBE", "name": "Update Unsubscribe", "description": "Updates an existing unsubscribe list record in the Brilliant Directories database. Use this to modify unsubscribe settings for email campaigns." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_USER", "name": "Update User", "description": "Updates an existing user record in the Brilliant Directories website database. Modifies user profile information, contact details, social media links, account status, membership plan, and other user-related data. Only user_id is required; all other fields are optional and will only update the specified fields." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_USERS_CLICK", "name": "Update User Click Record", "description": "Updates a user clicked link record and their related data from the database. Modifies click tracking data for existing click records. This action is used to update click tracking information such as click names, URLs, timestamps, user associations, and other metadata for existing click records. The click_id is required to identify which record to update, and all other fields are optional - only provided fields will be updated. Use when you need to correct or update click tracking data, modify click metadata, or update user associations for click records." }, { "slug": "BRILLIANT_DIRECTORIES_UPDATE_WIDGET", "name": "Update Widget", "description": "Tool to update an existing widget record in the Brilliant Directories database. Modifies widget settings including name, HTML/PHP content, CSS styles, and JavaScript code." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "brilliant_directories_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "hostUrl", "displayName": "Website Domain", "type": "string", "description": "Your Brilliant Directories site's domain without 'https://', e.g. 'mywebsite.com' — the address in your browser's address bar when viewing your live site.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Brilliant Directories API key. Create it in the admin dashboard under Developer Hub → Generate API Key and copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "brosix", "name": "Brosix", "logo": "https://logos.composio.dev/api/brosix", "description": "Brosix is a secure instant messaging platform for businesses, offering private team communication with features like file transfer, screen sharing, and chat rooms.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "brosix_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Brosix API key. Get it from the Brosix Web Control Panel under Settings > Integrations.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browserless", "name": "Browserless", "logo": "https://logos.composio.dev/api/browserless", "description": "Browserless is a service that provides headless browser automation, allowing users to run automations on their own sites with browser infrastructure.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "BROWSERLESS_DOWNLOAD_FILE", "name": "Download file using Puppeteer script", "description": "This tool allows downloading files that Chrome has downloaded during the execution of puppeteer code. It sets up a blank page, creates a fresh download directory, injects the provided code, and executes it. Once the script finishes, any downloaded files from Chromium are returned with the appropriate content-type header." }, { "slug": "BROWSERLESS_EXECUTE_CUSTOM_FUNCTION", "name": "Execute Custom Function", "description": "A tool that allows executing custom Puppeteer scripts via HTTP requests. This endpoint enables users to run browser automation tasks without managing their own infrastructure." }, { "slug": "BROWSERLESS_FETCH_HTML_CONTENT", "name": "Fetch HTML Content", "description": "This tool fetches the complete HTML content of a webpage using Browserless's content API. It's designed to retrieve the full HTML contents of any website, including dynamically generated content." }, { "slug": "BROWSERLESS_GENERATE_PDF", "name": "Generate PDF from webpage", "description": "This tool generates a PDF from a specified webpage using browserless's PDF generation API. It allows specifying the URL of the webpage along with parameters such as format, filename, and waitUntil options to control the PDF generation process." }, { "slug": "BROWSERLESS_SCRAPE_CONTENT", "name": "Scrape webpage content using CSS selectors", "description": "A tool to extract structured content from a webpage by specifying CSS selectors. The tool navigates to the specified URL, waits for the page to load (including parsing and executing JavaScript), and returns the selected elements in a structured JSON format." }, { "slug": "BROWSERLESS_TAKE_SCREENSHOT", "name": "Take Screenshot", "description": "A tool that captures a screenshot of a webpage using browserless's screenshot API. The tool takes a URL and returns either a PNG or JPEG image. It includes options for full page capture, image type, quality, and clipping coordinates." }, { "slug": "BROWSERLESS_UNBLOCK_PROTECTED_CONTENT", "name": "Unblock Protected Content", "description": "This tool provides access to content from websites that implement bot protection mechanisms. It is designed to bypass various types of protection (such as CAPTCHA and bot detections) and return the HTML content of the protected webpage, with optional customization through parameters like waitFor, timeout, and stealth mode." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "browserless_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Browserless API token from the account dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "browserstack", "name": "Browserstack", "logo": "https://logos.composio.dev/api/browserstack", "description": "Cross-browser testing platform for web and mobile applications", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "browserstack_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Your BrowserStack username from https://automate.browserstack.com/dashboard", "required": true, "default": null }, { "name": "password", "displayName": "Access Key", "type": "string", "description": "Your BrowserStack access key from https://automate.browserstack.com/dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "btcpay_server", "name": "BTCPay Server", "logo": "https://logos.composio.dev/api/btcpay_server", "description": "BTCPay Server is a free, open-source, self-hosted Bitcoin payment processor that enables merchants to accept Bitcoin payments without intermediaries.", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BTCPAY_SERVER_CREATE_PAYMENT_REQUEST", "name": "Create Payment Request", "description": "Creates a new payment request in a BTCPay Server store. Payment requests are shareable pages where customers can create invoices to pay the requested amount. Unlike direct invoices, payment requests can be reused and allow customers to initiate payments themselves. Use this after obtaining a valid store ID from the create_store or get_store actions." }, { "slug": "BTCPAY_SERVER_CREATE_STORE", "name": "Create Store", "description": "Tool to create a new store in BTCPay Server. Use when you need to provision a new store before processing transactions." }, { "slug": "BTCPAY_SERVER_CREATE_USER", "name": "Create BTCPay Server User", "description": "Tool to create a new BTCPay Server user. Use when you need to register a new user programmatically as an administrator." }, { "slug": "BTCPAY_SERVER_CREATE_WEBHOOK", "name": "Register a Webhook", "description": "Registers a new webhook for a BTCPay store to receive real-time notifications when store events occur (e.g., invoice created, payment received, invoice settled). The webhook endpoint receives POST requests with event payloads signed using an HMAC secret for verification." }, { "slug": "BTCPAY_SERVER_DELETE_API_KEY", "name": "Delete API Key", "description": "Revoke a specific API key to immediately prevent its use for authentication. Use this tool when you need to disable an API key, such as when rotating credentials or when a key may have been compromised. The revocation takes effect immediately. Note: This action requires authentication with an API key that has user management permissions." }, { "slug": "BTCPAY_SERVER_DELETE_PAYMENT_REQUEST", "name": "Delete Payment Request", "description": "Deletes (archives) a specific payment request from a BTCPay Server store. Use this tool when you need to remove or archive an existing payment request. The payment request will be marked as archived and will no longer be active. This operation requires the 'btcpay.store.canmodifypaymentrequests' API permission. Note: This is a destructive operation - once deleted, the payment request cannot be restored." }, { "slug": "BTCPAY_SERVER_DELETE_PAYOUT", "name": "Cancel Store Payout", "description": "Cancels (deletes) a specific payout from a BTCPay Server store. Use this tool when you need to cancel a pending payout that is no longer needed. Only payouts in 'AwaitingApproval' or 'AwaitingPayment' state can be canceled. Payouts that have already been processed or completed cannot be canceled. Requires the 'btcpay.store.canmanagepayouts' permission on the API key." }, { "slug": "BTCPAY_SERVER_GET_API_KEYS", "name": "Get Current API Key", "description": "Retrieve information about the current API key. Returns details including the API key string, its label, and the permissions it has been granted. Use this to verify authentication is working and to check what permissions the current API key has. Note: BTCPay Server only provides access to the current API key, not all API keys associated with the user account. This tool is read-only; it cannot create, modify, or delete API keys." }, { "slug": "BTCPAY_SERVER_GET_PAYMENT_REQUESTS", "name": "Get Payment Requests", "description": "Tool to list all payment requests for a specific store. Use after confirming you have the store ID." }, { "slug": "BTCPAY_SERVER_GET_SERVER_INFO", "name": "Get BTCPay Server Info", "description": "Tool to retrieve information about the BTCPay Server instance. Use when needing server version, tor address, supported payment methods, and synchronization states." }, { "slug": "BTCPAY_SERVER_GET_STORE", "name": "Get Store", "description": "Retrieves complete configuration and settings for a specific BTCPay Server store by its ID. Use this tool when you need to: - Get current store settings and configuration - Check store properties like payment methods, currency, invoice expiration, etc. - Verify store exists and is accessible - Retrieve branding/display settings (logo, colors, checkout page settings) Returns comprehensive store data including payment settings, checkout configuration, and branding. Results are scoped to the authenticated user's permissions; insufficient permissions may return restricted or empty data rather than an explicit error." }, { "slug": "BTCPAY_SERVER_GET_USER", "name": "Get BTCPay Server User", "description": "Retrieve information about a BTCPay Server user by ID or email. Use 'me' as the id_or_email parameter to get the currently authenticated user's profile. Alternatively, provide a specific user ID (UUID) or email address to retrieve another user's information. Requires API key with 'btcpay.user.canviewprofile' permission scope. Note: Viewing other users' profiles requires server administrator privileges." }, { "slug": "BTCPAY_SERVER_GET_WEBHOOK", "name": "Get Store Webhook", "description": "Retrieves detailed configuration of a specific webhook registered for a BTCPay store, including its callback URL, subscribed events, enabled status, and automatic redelivery settings." }, { "slug": "BTCPAY_SERVER_GET_WEBHOOKS", "name": "List Store Webhooks", "description": "Lists all webhooks registered for a BTCPay Server store. Use this to retrieve webhook configurations for management, auditing, or to find webhook IDs for update/delete operations." }, { "slug": "BTCPAY_SERVER_LIST_APPS", "name": "List Apps", "description": "Retrieve all apps (Point of Sale, Crowdfund, etc.) associated with a specific BTCPay Server store. Returns basic metadata for each app including its ID, name, type, creation timestamp, and archived status. Use this tool when you need to enumerate or discover apps configured within a store." }, { "slug": "BTCPAY_SERVER_UPDATE_USER", "name": "Update BTCPay Server User", "description": "Update the profile of the currently authenticated BTCPay Server user. Use this tool to modify user profile settings like display name, email, profile picture, or password. All fields are optional - only provide fields you want to change. Requires API key with 'btcpay.user.canmodifyprofile' permission scope. Note: Password changes require both currentPassword and newPassword to be provided. Email changes may require re-verification depending on server configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "btcpay_server_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "hostUrl", "displayName": "BTCPay Server URL", "type": "string", "description": "The base URL of your BTCPay Server instance, e.g., 'mainnet.demo.btcpayserver.org'. (Do not include protocol)", "required": true, "default": null } ], "optional": [ { "name": "generic_api_key", "displayName": "Store ID", "type": "string", "description": "The ID of the store you want to access, found under 'Settings' -> 'General' in your BTCPay Server. (Optional for most endpoints, but required for store-specific calls.)", "required": false, "default": null } ] } } } ] }, { "slug": "bugbug", "name": "Bugbug", "logo": "https://logos.composio.dev/api/bugbug", "description": "Bugbug is a low-code test automation tool. The easiest way to cut costs of software testing.\n\nAutomate your web app testing 3x faster without scaling your QA team.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUGBUG_GET_TEST_RUN_DETAILS", "name": "Get test run details", "description": "Get detailed information about test runs from BugBug. This action retrieves a paginated list of test runs with comprehensive details including execution status, timing information, browser settings, and error details. Supports filtering by start time and sorting by various fields. Useful for monitoring test execution history, analyzing test performance, and debugging test failures." }, { "slug": "BUGBUG_LIST_SUITES", "name": "List suites", "description": "List all available test suites in the Bugbug platform. This tool makes a GET request to the /suites/ endpoint and returns a list of available test suites with pagination support." }, { "slug": "BUGBUG_LIST_TESTS", "name": "List tests", "description": "Retrieves a list of all available tests in the BugBug account. This action provides access to all tests in the account with pagination support. It returns basic information about each test including its ID, name, active status, and recording status." }, { "slug": "BUGBUG_RUN_TEST", "name": "Run test", "description": "Execute a test in BugBug and return the test run details. This action triggers a test run with optional configuration for browser, device, viewport, and variable overrides. It returns the test run ID, status, modification timestamp, and a URL to view detailed results in the BugBug web application." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bugherd", "name": "Bugherd", "logo": "https://logos.composio.dev/api/bugherd", "description": "BugHerd is a visual feedback and bug tracking tool for websites, allowing clients and teams to report issues directly on live sites.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUGHERD_ADD_GUEST_TO_PROJECT", "name": "Add Guest to Project", "description": "Tool to add a guest (client) to a project. Use when you want to add an existing client by ID or invite a new client by email." }, { "slug": "BUGHERD_ADD_MEMBER_TO_PROJECT", "name": "Add Member to Project", "description": "Tool to add a member to a project in BugHerd. Use when you need to add an existing user to a specific project." }, { "slug": "BUGHERD_CREATE_ATTACHMENT", "name": "Create Attachment", "description": "Tool to add a new attachment to a task using an existing URL. Use when you have project and task IDs and the external file URL ready." }, { "slug": "BUGHERD_CREATE_COLUMN", "name": "Create Column", "description": "Tool to create a new column in a project. Use when you need to add a custom workflow column after identifying the project ID." }, { "slug": "BUGHERD_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to add a new comment to a task. Use when you need to record discussion or feedback on an existing task." }, { "slug": "BUGHERD_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project. Use when you need to initialize a project after gathering its name and URL. Example: \"Create a new project named 'My Website' with URL 'http://www.example.com'.\"" }, { "slug": "BUGHERD_CREATE_TASK", "name": "Create Task", "description": "Tool to add a new task in a project. Use when you have the project ID and full task details ready." }, { "slug": "BUGHERD_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for real-time event notifications. Use when you need to configure a callback endpoint for task or comment events. Example: \"Create a webhook for 'task_create' events to be sent to 'https://example.com/webhook'.\"" }, { "slug": "BUGHERD_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project. Use when you need to permanently remove a project and its associated data. This action cannot be undone, so confirm the project ID before calling." }, { "slug": "BUGHERD_LIST_ACTIVE_PROJECTS", "name": "List Active Projects", "description": "Tool to list all active projects in your BugHerd account. Use when you need to retrieve the active projects list (e.g., for syncing or reporting)." }, { "slug": "BUGHERD_LIST_ATTACHMENTS", "name": "List Attachments", "description": "Tool to list all attachments for a task. Use when you need to retrieve file attachments after fetching task details." }, { "slug": "BUGHERD_LIST_COLUMNS", "name": "List Columns", "description": "Tool to list all columns for a project. Use when you need the full set of default and custom columns for a project." }, { "slug": "BUGHERD_LIST_PROJECTS", "name": "List Projects", "description": "Retrieves a paginated list of all projects in your BugHerd account. Returns project details including ID, name, creation date, owner, task status, and associated website URLs. Results are paginated with up to 100 projects per page. Use the meta.count field to determine the total number of projects." }, { "slug": "BUGHERD_LIST_PROJECT_TASKS", "name": "List Project Tasks", "description": "Tool to list tasks within a specific BugHerd project with optional server-side filters (status/column, assignee, tag, priority, date filters) and pagination. Use when you need to retrieve tasks scoped to a single project." }, { "slug": "BUGHERD_LIST_USERS", "name": "List Users", "description": "Tool to list all users in your account. Use after authenticating to fetch the current user roster. Supports pagination via the `page` parameter." }, { "slug": "BUGHERD_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all installed webhooks. Use when you need to audit or verify existing webhooks after setup." }, { "slug": "BUGHERD_SHOW_ATTACHMENT", "name": "Show Attachment", "description": "Tool to retrieve details of a specific attachment. Use after you have project_id, task_id, and attachment_id to get filename, URL, and timestamps." }, { "slug": "BUGHERD_SHOW_COLUMN", "name": "Show Column", "description": "Tool to show details of a specific column. Use when you need metadata for a particular column within a project." }, { "slug": "BUGHERD_SHOW_ORGANIZATION", "name": "Show Organization", "description": "Tool to retrieve your BugHerd organization details. Use after authenticating to fetch account metadata." }, { "slug": "BUGHERD_SHOW_PROJECT", "name": "Show Project Details", "description": "Retrieves full details of a specific BugHerd project by ID. Returns comprehensive project information including name, settings, team members, guests, and kanban columns. Use this when you need detailed project data such as member lists, workflow columns, or project configuration settings. Requires a valid project_id obtained from list_projects or another source." }, { "slug": "BUGHERD_SHOW_USER_PROJECTS", "name": "Show User Projects", "description": "Tool to list all projects a specific user has access to. Use after obtaining the user's ID." }, { "slug": "BUGHERD_SHOW_USER_TASKS", "name": "Show User Tasks", "description": "Retrieves all tasks created by or assigned to a specific user, grouped by project. Returns task details including ID, description, priority, status, timestamps, and tags. Requires a valid user_id (obtain from List Users action). Supports pagination via page parameter." }, { "slug": "BUGHERD_UPDATE_COLUMN", "name": "Update Column", "description": "Tool to update a column in a project. Use when you have the project and column IDs and need to rename a column. Use after confirming the correct IDs." }, { "slug": "BUGHERD_UPDATE_PROJECT", "name": "Update Project", "description": "Update settings for an existing BugHerd project. Use this to modify a project's name, URL, visibility settings, or guest permissions. Prerequisites: You need a valid project_id. Use list_projects to find existing project IDs, or create_project to create a new one. Note: Only include fields you want to change - omitted fields will retain their current values." }, { "slug": "BUGHERD_UPDATE_TASK", "name": "Update Task", "description": "Tool to update a task in a project. Use after confirming the project and task IDs." }, { "slug": "BUGHERD_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Tool to upload a new attachment and add it to a specific task. Use when you have binary file content ready and need to attach it to a BugHerd task." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bugherd_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "BugHerd API Token", "type": "string", "description": "The API token used for authenticating API requests to BugHerd.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bugsnag", "name": "Bugsnag", "logo": "https://logos.composio.dev/api/bugsnag", "description": "Bugsnag is an error monitoring and stability management platform that helps developers identify, prioritize, and fix software bugs.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUGSNAG_ADD_ORGANIZATION_COLLABORATOR_TEAM_MEMBERSHIPS", "name": "Add Collaborator to Teams", "description": "Tool to add a collaborator to a group of teams in a Bugsnag organization. Use when you need to assign a collaborator to specific teams or all teams. Requires admin permissions on the organization." }, { "slug": "BUGSNAG_ADD_ORGANIZATION_TEAM_MEMBERSHIPS", "name": "Add Collaborators to Team", "description": "Tool to add collaborators to a team in a Bugsnag organization. Use when you need to add specific collaborators or all organization collaborators to a team. Requires admin permissions on the organization." }, { "slug": "BUGSNAG_BULK_UPDATE_ERRORS", "name": "Bulk Update Errors", "description": "Bulk update multiple errors in a Bugsnag project. Applies the same operation to all specified errors. Note: The actual API implementation returns only the operation name in the response, not per-error results. This differs from the OpenAPI specification which documents detailed per-error results. A successful response indicates the bulk operation was accepted and applied to all specified errors. Use cases: - Mark multiple errors as fixed after a release - Assign errors to a team member for investigation - Snooze or ignore low-priority errors in bulk - Link multiple related errors to a single issue tracker ticket - Change severity levels across related errors Prerequisites: Obtain project_id from BUGSNAG_LIST_PROJECTS and error_ids from BUGSNAG_LIST_ERRORS_ON_PROJECT." }, { "slug": "BUGSNAG_CONFIGURE_INTEGRATION", "name": "Configure Integration", "description": "Tool to configure a new integration for a Bugsnag project. Use after selecting integration key and preparing credentials." }, { "slug": "BUGSNAG_CONFIRM_PROJECT_EVENT_DATA_DELETION", "name": "Confirm Project Event Data Deletion", "description": "Confirms a project event data deletion request in Bugsnag. Use this action after creating a deletion request to confirm and proceed with the actual deletion of event data. The deletion request must be in AWAITING_CONFIRMATION status before it can be confirmed." }, { "slug": "BUGSNAG_CREATE_COLLABORATOR", "name": "Invite Collaborator", "description": "Invites a new collaborator to a Bugsnag organization by email. Use this action to grant a user access to the organization. Optionally specify project_ids to restrict access to specific projects, or set admin=true to grant full admin privileges across all projects. Returns the collaborator details including their invitation status (pending_invitation=true until they accept). Re-inviting an existing email returns the existing collaborator data." }, { "slug": "BUGSNAG_CREATE_CUSTOM_EVENT_FIELD", "name": "Create Custom Event Field", "description": "Creates a custom event field for a Bugsnag project, enabling filtering and pivoting on custom metadata. Use this tool when you need to create a new searchable/filterable field from event metaData. Requires a project_id (get from BUGSNAG_LIST_PROJECTS), a unique display_id for the filter, and the path to the data in event metaData. Example: Create a custom field to filter by user account ID: - display_id: \"custom.user.accountId\" - path: \"metaData.user.accountId\" - filter_options: {\"name\": \"Account ID\", \"match_types\": [\"eq\", \"ne\"]}" }, { "slug": "BUGSNAG_CREATE_ORGANIZATION_PROJECT", "name": "Create Organization Project", "description": "Tool to create a new project in a Bugsnag organization. Use when you need to set up a new project for error tracking under a specific organization. Requires organization_id, project name, and platform type. Optionally configure browser filtering for JavaScript projects." }, { "slug": "BUGSNAG_CREATE_ORGANIZATION_TEAM", "name": "Create Organization Team", "description": "Tool to create a new team in a Bugsnag organization. Use when you need to organize collaborators into teams for better access management. The team name must be unique within the organization." }, { "slug": "BUGSNAG_CREATE_ORG_DATA_DELETION", "name": "Create Organization Data Deletion Request", "description": "Tool to create an event data deletion request for GDPR/CCPA compliance. Use when you need to delete event data matching specific criteria (e.g., user email, error class, device info). Specify filters to target events - most common is filtering by user.email. The deletion processes asynchronously; check the returned status and id to track progress. Requires organization administrator permissions." }, { "slug": "BUGSNAG_CREATE_ORG_DATA_REQUEST", "name": "Create Organization Data Request", "description": "Tool to create an event data request for a Bugsnag organization (GDPR/CCPA compliance). Use when you need to export event data for a specific user or set of conditions to comply with data access requests. The request is processed asynchronously - check the status field and use the returned ID to monitor progress. Once completed, the url field provides a download link for the data export." }, { "slug": "BUGSNAG_CREATE_PROJECT_DATA_DELETION", "name": "Create Project Event Data Deletion Request", "description": "Tool to create an event data deletion request for a specific project. Use when you need to delete event data matching specific criteria (e.g., error class, severity, user email) within a project. Specify filters to target events - most common is filtering by event.class or user.email. The deletion processes asynchronously; check the returned status and id to track progress." }, { "slug": "BUGSNAG_CREATE_PROJECT_EVENT_DATA_REQUEST", "name": "Create Project Event Data Request", "description": "Tool to create an event data request for a Bugsnag project. Use when you need to export event data matching specific filters. The request is processed asynchronously - check the returned status and use the provided ID to poll for completion. Once completed, the 'url' field provides a download link for the event data. Supports GDPR/data subject access requests via the 'gdpr' report_type." }, { "slug": "BUGSNAG_CREATE_SAVED_SEARCH", "name": "Create Saved Search", "description": "Creates a saved search (filterset) for a Bugsnag project that persists filter and sort configurations. Use this to save frequently used error filters for quick access in the dashboard. Requires a valid project_id which can be obtained from the list_projects action. The saved search can be made the project default and/or shared with collaborators." }, { "slug": "BUGSNAG_DELETE_ALL_ERRORS_IN_PROJECT", "name": "Delete All Errors in a Project", "description": "Permanently deletes all errors and event data from a Bugsnag project. WARNING: This action is IRREVERSIBLE. All error and event data will be permanently removed. Requirements: - User must have Project Owner or Organization Administrator permissions - A valid project_id is required (use BUGSNAG_LIST_PROJECTS to retrieve project IDs) Use this tool when you need to clear all error history from a project, such as during cleanup operations or before a major release." }, { "slug": "BUGSNAG_DELETE_COLLABORATOR", "name": "Delete Collaborator", "description": "Removes a collaborator from a Bugsnag organization. This action permanently revokes the user's access to all projects within the organization. Before using, obtain the organization_id from List Organizations and the collaborator_id from List Collaborators. Requires Organization Administrator privileges. Cannot remove the last admin of an organization." }, { "slug": "BUGSNAG_DELETE_CONFIGURED_INTEGRATION", "name": "Delete a configured integration", "description": "Tool to delete a configured integration. Use when you need to remove an existing integration from a project after confirming the integration ID. This action cannot be undone and requires Organization Administrator or Project Owner permissions." }, { "slug": "BUGSNAG_DELETE_EVENT_FIELD", "name": "Delete Custom Event Field", "description": "Deletes a custom event field from a Bugsnag project. Use this tool when you need to remove a custom event field that was previously created via BUGSNAG_CREATE_CUSTOM_EVENT_FIELD. This action only works for custom event fields (where 'custom' is true) - built-in event fields cannot be deleted. Prerequisites: - Get the project_id from BUGSNAG_LIST_PROJECTS - Get the display_id from BUGSNAG_LIST_EVENT_FIELDS_FOR_PROJECT (filter for custom: true) Note: Requires a Bugsnag Preferred or Enterprise plan to use custom event fields." }, { "slug": "BUGSNAG_DELETE_ORGANIZATION", "name": "Delete Organization", "description": "Permanently deletes a Bugsnag organization. This action is irreversible and removes all organization data including projects, collaborators, and settings. Use BUGSNAG_LIST_ORGANIZATIONS to find the organization_id. Requires Organization Administrator permissions. Note: Heroku organizations cannot be deleted via the API." }, { "slug": "BUGSNAG_DELETE_ORGANIZATION_TEAM", "name": "Delete Organization Team", "description": "Tool to delete a team from a Bugsnag organization. Use when you need to permanently remove a team. Requires organization admin permissions." }, { "slug": "BUGSNAG_DELETE_PROJECT", "name": "Delete Project", "description": "Permanently deletes a Bugsnag project. This action is irreversible and removes all project data including errors, events, and settings. Use BUGSNAG_LIST_PROJECTS to find the project_id. Requires admin or project owner permissions." }, { "slug": "BUGSNAG_DELETE_SAVED_SEARCH", "name": "Delete Saved Search", "description": "Permanently deletes a saved search (filterset) from a Bugsnag project. Use this to remove saved searches that are no longer needed. Requires the saved_search_id which can be obtained from list_saved_searches_on_project or from the response when creating a saved search. This action cannot be undone - the saved search will be permanently removed." }, { "slug": "BUGSNAG_GET_CONFIGURED_INTEGRATION", "name": "Get Configured Integration", "description": "Tool to retrieve details of a specific configured integration by its ID. Returns configuration details, status, automation settings, and usage information. Use 'List Configured Integrations for Project' to obtain valid integration IDs." }, { "slug": "BUGSNAG_GET_ORGANIZATION_BY_ID", "name": "Get Organization By ID", "description": "Tool to view an organization by its ID. Use when you need to retrieve detailed information about a specific Bugsnag organization." }, { "slug": "BUGSNAG_GET_ORGANIZATION_COLLABORATOR_PROJECT_ACCESS_COUNTS", "name": "Get Organization Collaborator Project Access Counts", "description": "Tool to view the project count of collaborators in an organization. Use when you need to retrieve project access counts for specific collaborators." }, { "slug": "BUGSNAG_GET_ORGANIZATION_COLLABORATOR_PROJECTS", "name": "Get Organization Collaborator Projects", "description": "Tool to view projects a collaborator has access to in an organization. Use when you need to list all projects that a specific user can access within an organization." }, { "slug": "BUGSNAG_GET_ORGANIZATION_EVENT_DATA_REQUEST", "name": "Get Organization Event Data Request", "description": "Tool to check the status of an organization event data request. Use when you need to monitor the progress of a data export or GDPR request." }, { "slug": "BUGSNAG_GET_ORGANIZATION_TEAM", "name": "Get Organization Team", "description": "Tool to show the details of a team in an organization. Use when you need to retrieve information about a specific team including its name, collaborator count, and project count." }, { "slug": "BUGSNAG_GET_ORG_DATA_DELETION", "name": "Get Organization Data Deletion Status", "description": "Tool to check the status of an organization event data deletion request in Bugsnag. Use this to monitor deletion requests including their current status (PREPARING, AWAITING_CONFIRMATION, ACCEPTED, IN_PROGRESS, COMPLETED, EXPIRED), applied filters, and progress details." }, { "slug": "BUGSNAG_GET_PIVOT_VALUES_ON_A_PROJECT", "name": "Get Pivot Values on a Project", "description": "List pivot values for a project, showing how events are distributed across different values of a field. Use this to analyze event distribution by release stage, app version, user, device type, or other fields at the project level." }, { "slug": "BUGSNAG_GET_PROJECT_DATA_DELETION", "name": "Get Project Data Deletion Status", "description": "Tool to check the status of a project event data deletion request in Bugsnag. Use this to monitor deletion requests including their current status (PREPARING, AWAITING_CONFIRMATION, ACCEPTED, IN_PROGRESS, COMPLETED, EXPIRED), applied filters, and progress details." }, { "slug": "BUGSNAG_GET_PROJECT_EVENT_DATA_REQUEST", "name": "Get Project Event Data Request", "description": "Tool to check the status of a project event data request. Use when you need to monitor the progress of a data export or GDPR request for a specific project." }, { "slug": "BUGSNAG_GET_PROJECT_NETWORK_GROUPING_RULESET", "name": "Get Project Network Grouping Ruleset", "description": "Tool to retrieve a project's network grouping ruleset. Use when you need to view the URL patterns used to group network spans for performance monitoring in a project." }, { "slug": "BUGSNAG_GET_SAVED_SEARCH", "name": "Get Saved Search", "description": "Retrieves the details of a specific saved search by its unique ID. Returns comprehensive information about the saved search including its name, filters, sharing status, inclusion criteria for different error states, and timestamps. Requires a valid saved search ID (obtained from 'List Saved Searches on Project' or 'Create Saved Search')." }, { "slug": "BUGSNAG_GET_SAVED_SEARCH_USAGE_SUMMARY", "name": "Get Saved Search Usage Summary", "description": "Retrieves usage statistics for a saved search, showing how it is being used across the project. Returns counts of project notifications, collaborator email notifications, and performance monitors that reference this saved search. Use this to understand the impact of modifying or deleting a saved search. Requires a valid saved search ID (obtained from 'List Saved Searches on Project' or 'Create Saved Search')." }, { "slug": "BUGSNAG_LIST_COLLABORATOR_ACCESS_DETAILS_FOR_PROJECTS", "name": "List Collaborator Access Details for Projects", "description": "Tool to list summary details of the projects a collaborator has access to. Use when reviewing a collaborator's access across an organization." }, { "slug": "BUGSNAG_LIST_COLLABORATORS", "name": "List Collaborators", "description": "Tool to list collaborators in an organization. Use when you need to retrieve all collaborators for a specified organization. Example: \"List collaborators for organization 515fb9337c1074f6fd000001\"." }, { "slug": "BUGSNAG_LIST_COLLABORATORS_ON_PROJECT", "name": "List Collaborators on Project", "description": "Tool to list collaborators on a project. Use when you need to retrieve all users with access to a given project after confirming its ID. Example: \"List collaborators for project 515fb9337c1074f6fd000001\"." }, { "slug": "BUGSNAG_LIST_CONFIGURED_INTEGRATIONS_FOR_PROJECT", "name": "List Configured Integrations for Project", "description": "Retrieves all configured integrations for a Bugsnag project. Returns details about each integration including its type (e.g., Slack, Jira, Asana), configuration, status, and trigger settings. Use BUGSNAG_LIST_PROJECTS first to obtain a valid project_id." }, { "slug": "BUGSNAG_LIST_ERRORS_ON_PROJECT", "name": "List Errors on Project", "description": "List all errors in a Bugsnag project with optional filtering and sorting. Use this to retrieve error summaries including error class, message, severity, status, occurrence counts, and affected users. Results are paginated; follow pagination indicators to retrieve all pages. No status filter parameter exists — filter by open/fixed/ignored status client-side using the status field in responses. Requires a valid project_id which can be obtained from the List Projects action." }, { "slug": "BUGSNAG_LIST_EVENT_FIELDS_FOR_PROJECT", "name": "List Event Fields for Project", "description": "Lists all event fields available for filtering and pivoting in a Bugsnag project. Use this action to discover which fields can be used to filter events in the project's error inbox. Common fields include app.release_stage, error.class, user.id, device.os_name, etc. Example: \"List event fields for project 515fb9337c1074f6fd000001\"" }, { "slug": "BUGSNAG_LIST_EVENTS_FOR_ERROR", "name": "List Events for Error", "description": "Lists individual error event occurrences for a specific error group. Use this after identifying an error_id via BUGSNAG_LIST_ERRORS_ON_PROJECT to retrieve detailed stack traces, metadata, and context for each occurrence. Returns events sorted by timestamp (newest first by default). Supports pagination via 'base' parameter and filtering by event fields." }, { "slug": "BUGSNAG_LIST_EVENTS_ON_PROJECT", "name": "List Events on Project", "description": "List all error events for a Bugsnag project. Events are individual occurrences of errors. Use this tool when you need to: - Retrieve all error occurrences (events) for a given project - Analyze individual error instances with timestamps and details - Get detailed exception information for debugging Prerequisites: Get the project_id first using BUGSNAG_LIST_PROJECTS. Note: Requires an active Bugsnag subscription (not available on expired trials)." }, { "slug": "BUGSNAG_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list organizations for the authenticated user. Use after validating the API token when you need to retrieve all organizations the current user has access to. Always resolve organization_id values from this tool's results rather than hardcoding them, as downstream tools like BUGSNAG_LIST_PROJECTS require valid organization_id values. Missing organizations in results indicate permission limitations of the authenticated account." }, { "slug": "BUGSNAG_LIST_ORGANIZATION_TEAMS", "name": "List Organization Teams", "description": "Tool to list teams in an organization. Use when you need to retrieve teams for a specified Bugsnag organization, optionally filtered by team name." }, { "slug": "BUGSNAG_LIST_PIVOTS_ON_PROJECT", "name": "List Pivots for Project", "description": "Lists all pivot field definitions for a Bugsnag project. Pivots are customizable fields used for filtering and grouping errors in Bugsnag dashboards. Use this to discover available pivot fields that can be used when querying errors or events. Note: This feature may require a paid Bugsnag subscription." }, { "slug": "BUGSNAG_LIST_PROJECT_FEATURE_FLAGS", "name": "List Project Feature Flags", "description": "List feature flags on a Bugsnag project for a specific release stage. Use this to retrieve feature flags including their names, activity status, first seen timestamps, and optional variant summaries. Results can be filtered by search query, time frame, and activity status, and are paginated. Requires a valid project_id (from List Projects action) and release_stage_name." }, { "slug": "BUGSNAG_LIST_PROJECT_FEATURE_FLAG_SUMMARIES", "name": "List Project Feature Flag Summaries", "description": "List feature flag summaries for a Bugsnag project with optional search filtering. Use this to retrieve feature flags that have been associated with errors in the project. Requires a valid project_id which can be obtained from the List Projects action." }, { "slug": "BUGSNAG_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list projects in an organization. Use when you need to retrieve all projects under a specified Bugsnag organization after confirming the organization ID. Results may be paginated; iterate through all pages when an organization has many projects to ensure complete retrieval. Missing projects may indicate permission restrictions on the authenticated account." }, { "slug": "BUGSNAG_LIST_RELEASE_GROUPS", "name": "List Release Groups", "description": "Tool to list release groups for a project. Use when you need to retrieve all release groups of a specific Bugsnag project after confirming the project ID." }, { "slug": "BUGSNAG_LIST_RELEASES", "name": "List Releases", "description": "List all releases (deployed versions) of a Bugsnag project. Releases track application versions, deployment stages, and associated source control information. Use this after obtaining a project_id from BUGSNAG_LIST_PROJECTS. Results can be filtered by release stage, time range, and paginated. Note: This feature requires a paid Bugsnag subscription." }, { "slug": "BUGSNAG_LIST_SAVED_SEARCHES_ON_PROJECT", "name": "List Saved Searches on Project", "description": "Lists all saved searches for a Bugsnag project. Saved searches are predefined filter configurations that help users quickly access specific error views. Use this to retrieve saved searches before getting or managing them. Requires a valid project_id from BUGSNAG_LIST_PROJECTS." }, { "slug": "BUGSNAG_LIST_SUPPORTED_INTEGRATIONS", "name": "List Supported Integrations", "description": "Tool to list all supported integrations. Use when discovering available integration services before configuring a project." }, { "slug": "BUGSNAG_LIST_TRENDS_FOR_PROJECT_BUCKETS", "name": "List Trends for Project Buckets", "description": "Retrieves time-segmented event counts (trend buckets) for a Bugsnag project. Use this to analyze error/event occurrence patterns over time by splitting the data into configurable time buckets. Requires an active paid Bugsnag subscription. NOTE: First retrieve project_id using BUGSNAG_LIST_PROJECTS." }, { "slug": "BUGSNAG_REGENERATE_PROJECT_API_KEY", "name": "Regenerate Project API Key", "description": "Regenerates a Bugsnag project's notifier API key. This action invalidates the old API key and generates a new one. Use this when you need to rotate API keys for security purposes. WARNING: After regeneration, all notifiers using the old API key will stop reporting errors until updated with the new key." }, { "slug": "BUGSNAG_SHOW_COLLABORATOR_ACCESS_DETAILS_FOR_PROJECT", "name": "Show Collaborator Access Details for Project", "description": "Tool to show a collaborator's access details for a project. Use after confirming organization, collaborator, and project IDs have been obtained and you have access rights." }, { "slug": "BUGSNAG_SHOW_COLLABORATOR_ON_ORGANIZATION", "name": "Show Collaborator on Organization", "description": "Tool to show a collaborator in an organization. Use after confirming organization and collaborator IDs; requires Organization Administrator access." }, { "slug": "BUGSNAG_SHOW_COLLABORATOR_ON_PROJECT", "name": "Show Collaborator on Project", "description": "Tool to show a collaborator in a project. Use when you need detailed information about a specific collaborator after confirming both project and collaborator IDs." }, { "slug": "BUGSNAG_TEST_INTEGRATION", "name": "Test Integration", "description": "Tool to test an integration configuration before deploying it. Use when validating credentials and connection parameters for integrations like Jira, Slack, or Asana before creating a configured integration on a project." }, { "slug": "BUGSNAG_UPDATE_COLLABORATOR_PERMISSIONS", "name": "Update Collaborator Permissions", "description": "Tool to update a collaborator's project access permissions. Use when you need to change which projects a collaborator can access or their roles within each project. Supply only project_ids or project_roles." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bugsnag_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal API Token", "type": "string", "description": "Your personal auth token. Found in Bugsnag Account Settings.", "required": true, "default": null } ], "optional": [ { "name": "hostUrl", "displayName": "API Base URL", "type": "string", "description": "Your Bugsnag API URL. Use 'api.bugsnag.com' for standard, 'api.bugsnag.smartbear.com' for SmartBear, or 'api.yourdomain.com' for on-premise.", "required": false, "default": null } ] } } } ] }, { "slug": "builderio", "name": "Builderio", "logo": "https://logos.composio.dev/api/builderio", "description": "Visual development platform for building and optimizing digital experiences", "category": "developer tools", "authSchemes": [ "API_KEY", "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "builderio_api_key_private", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Private API Key", "type": "string", "description": "Your private API key for Write API, Admin API, and private content access. Must begin with \"bpk-\". Keep this secret and use only server-side. Get it from https://builder.io/account/space", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "builderio_api_key_public", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Public API Key", "type": "string", "description": "Your public API key for read-only Content API access. Safe to expose in client-side code. Get it from https://builder.io/account/space", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "buildkite", "name": "Buildkite", "logo": "https://logos.composio.dev/api/buildkite", "description": "Buildkite is a platform for running fast, secure, and scalable continuous integration pipelines on your own infrastructure.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUILDKITE_GET_CURRENT_ACCESS_TOKEN", "name": "Get Current Access Token", "description": "Tool to retrieve the authenticated API access token details. Use when you need to confirm the validity and scopes of the current API token." }, { "slug": "BUILDKITE_GET_META", "name": "Get Meta", "description": "Tool to retrieve metadata about the Buildkite API. Use when you need to fetch webhook IP addresses for firewall or security configurations." }, { "slug": "BUILDKITE_GET_USER", "name": "Get User", "description": "Tool to retrieve details about the current authenticated user. Use when you need to get information about the user account that owns the API token." }, { "slug": "BUILDKITE_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations the current user is a member of. Use when you need to discover available organizations or get organization slugs for other operations." }, { "slug": "BUILDKITE_LIST_PIPELINE_AGENTS", "name": "List Pipeline Agents", "description": "Tool to list connected agents for an organization. Use after confirming the organization slug. Supports optional filtering and pagination." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "buildkite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "The API access token used for authenticating requests to the Buildkite API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "builtwith", "name": "BuiltWith", "logo": "https://logos.composio.dev/api/builtwith", "description": "BuiltWith is a web technology profiler that provides insights into the technologies used by websites, including analytics, hosting, and content management systems.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUILTWITH_CREATE_DOMAIN_LIST_FILE", "name": "Create Domain List File", "description": "Tool to create a TXT or ZIP file from a list of domains. Use when preparing a domain list for bulk or firehose lookups." }, { "slug": "BUILTWITH_DATASETS_LOOKUP", "name": "Datasets Lookup", "description": "Tool to access mass Internet technology usage information from 2000 to today. Use when you need historical technology usage trends for a domain." }, { "slug": "BUILTWITH_DOMAIN_API_LOOKUP", "name": "Domain API Lookup", "description": "Tool to retrieve current and historical technology information of a website. Use after confirming the domain to lookup." }, { "slug": "BUILTWITH_FINANCIAL_API_LOOKUP", "name": "Financial API Lookup", "description": "Tool to fetch financial data for a domain. Use when you need company financials for US or UK registered websites." }, { "slug": "BUILTWITH_FREE_API_LOOKUP", "name": "Free API Lookup", "description": "Tool to access last updated dates and counts for technology groups and categories for websites. Use when you need a snapshot of technology usage timing for a domain." }, { "slug": "BUILTWITH_LISTS_API_GET_LIST", "name": "Lists API Get List", "description": "Tool to retrieve a list of websites using a specific technology. Use when you want to find sites leveraging a particular tech." }, { "slug": "BUILTWITH_MCP_API_LOOKUP", "name": "MCP API Lookup (Deprecated)", "description": "DEPRECATED: Use BUILTWITH_DOMAIN_API_LOOKUP instead. Tool to query live web technologies for a root domain. Use after confirming a valid domain name." }, { "slug": "BUILTWITH_PRODUCT_API_LOOKUP", "name": "Product API Lookup", "description": "Tool to find websites selling specific eCommerce products. Use when you need to discover online retailers offering a given product name or query a domain's product listings (e.g., 'dom:jbhifi.com.au')." }, { "slug": "BUILTWITH_RECOMMENDATIONS_API_LOOKUP", "name": "Recommendations API Lookup", "description": "Tool to generate a list of websites with similar technology profiles. Use when you need technology recommendations for a given domain lookup." }, { "slug": "BUILTWITH_REDIRECTS_API_LOOKUP", "name": "Redirects API Lookup", "description": "Tool to retrieve live and historical redirects for a website. Use after confirming the exact root domain to gather inbound and outbound redirect timelines." }, { "slug": "BUILTWITH_SOCIAL_API_LOOKUP", "name": "Social API Lookup", "description": "Tool to retrieve domains associated with social media profile URLs. Use when you need to map social profiles to root domains." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "builtwith_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BuiltWith API Key", "type": "string", "description": "Your BuiltWith API key, obtainable by signing up for a free account at https://builtwith.com/signup.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bunnycdn", "name": "BunnyCDN", "logo": "https://logos.composio.dev/api/bunnycdn", "description": "BunnyCDN is a powerful content delivery network (CDN) offering an API to manage and deliver content globally with ease.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 129, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BUNNYCDN_ADD_ALLOWED_REFERER", "name": "Add Allowed Referer", "description": "Adds a hostname to the allowed referer list for a pull zone. Use this action to restrict content access by configuring referer-based security. Only requests with a Referer header matching one of the allowed hostnames will be able to access the pull zone content. This helps prevent hotlinking and unauthorized content usage from other websites." }, { "slug": "BUNNYCDN_ADD_BLOCKED_IP", "name": "Add Blocked IP", "description": "Tool to add an IP address to the blocked list of a pull zone. Use when you need to restrict access from specific IPs to prevent unwanted traffic." }, { "slug": "BUNNYCDN_ADD_BLOCKED_REFERER", "name": "Add Blocked Referer", "description": "Tool to add a blocked referer to a pull zone. Use when you need to prevent specific domains from hotlinking or accessing content from your CDN." }, { "slug": "BUNNYCDN_ADD_STORAGE_ZONE", "name": "Add Storage Zone", "description": "Tool to add a new storage zone. Use when you need dedicated file storage in a specific region. Zone creation is irreversible — confirm Name, Region, and ZoneTier before executing." }, { "slug": "BUNNYCDN_ADD_UPDATE_EDGE_RULE", "name": "Add/Update Edge Rule", "description": "Tool to add or update edge rules in a BunnyCDN pull zone for advanced traffic control. Edge rules allow conditional request processing based on triggers like URL patterns, headers, country codes, or IP addresses. Each rule can perform actions like forcing SSL, redirecting, setting headers, overriding cache TTL, or blocking requests. Common use cases: - Force HTTPS: ActionType=force_ssl with URL trigger '/*' - Redirect old URLs: ActionType=redirect with specific URL pattern - Cache API responses: ActionType=override_cache_time for '/api/*' paths - Block specific countries: ActionType=block_request with country code trigger - Add security headers: ActionType=set_response_header for CORS/CSP headers To update an existing rule, provide the Guid from the creation response or from listing rules." }, { "slug": "BUNNYCDN_CHECK_DNS_ZONE_AVAILABILITY", "name": "Check DNS Zone Availability", "description": "Tool to check if a DNS zone name is available for registration. Use before creating a new DNS zone to verify the domain name is not already in use." }, { "slug": "BUNNYCDN_CHECK_PULL_ZONE_AVAILABILITY", "name": "Check Pull Zone Availability", "description": "Tool to check if a pull zone name is available for registration. Use before creating a new pull zone to verify the name is not already in use." }, { "slug": "BUNNYCDN_CHECK_STORAGE_ZONE_AVAILABILITY", "name": "Check Storage Zone Availability", "description": "Tool to check if a storage zone name is available. Use before creating a new storage zone to verify the name is not already in use." }, { "slug": "BUNNYCDN_CREATE_COINIFY_PAYMENT", "name": "Create Coinify Payment", "description": "Tool to create a Coinify cryptocurrency payment for BunnyCDN billing. Use when you need to add credit to a BunnyCDN account using cryptocurrency. Note: This endpoint is deprecated. Consider using alternative payment methods if available." }, { "slug": "BUNNYCDN_CREATE_DATABASE", "name": "Create Database", "description": "Creates a new Bunny Database (SQLite-compatible edge database). The database can be deployed in multiple global edge regions with primary and replica configurations for high availability. Storage is available in EU (eu-west-1) or North America (us-east-1), and can be deployed across 41 global edge regions. Use when you need a distributed edge database with SQLite compatibility." }, { "slug": "BUNNYCDN_CREATE_DNS_RECORD", "name": "Create DNS Record", "description": "Tool to create a new DNS record in a specific DNS zone. Use after confirming the DNS zone ID is active." }, { "slug": "BUNNYCDN_CREATE_LIVE_LIVE2", "name": "Create Live Live 2", "description": "Tool to retrieve live metrics data for database groups. Use when you need to fetch current performance metrics for specific group IDs." }, { "slug": "BUNNYCDN_CREATE_PULL_ZONE", "name": "Create Pull Zone", "description": "Creates a new CDN pull zone in BunnyCDN for content delivery acceleration. A pull zone acts as a CDN endpoint that caches and delivers content from your origin server through BunnyCDN's global edge network. When created, you get a default hostname (e.g., 'your-name.b-cdn.net') that can serve your content immediately. Use cases: - Accelerate website asset delivery (images, CSS, JS) - Stream video content globally - Cache and deliver API responses - Serve static files from S3 or storage zones Required: name (unique identifier) and origin_url (your source server). The name becomes part of your CDN URL: {name}.b-cdn.net" }, { "slug": "BUNNYCDN_CREATE_SHIELD_RATE_LIMIT", "name": "Create Shield Rate Limit", "description": "Tool to create a new Shield rate limit rule for protecting against excessive requests. Use when you need to configure rate limiting rules to prevent abuse, DDoS attacks, or API overuse on a Shield zone." }, { "slug": "BUNNYCDN_CREATE_SHIELD_ZONE_ACCESS_LIST", "name": "Create Shield Zone Access List", "description": "Tool to create a new custom access list in a Shield Zone. Use when you need to add IP addresses, countries, ASNs, or JA3 fingerprints to control access." }, { "slug": "BUNNYCDN_DELETE_CONTAINER_REGISTRY", "name": "Delete Container Registry", "description": "Tool to delete a container registry from Magic Containers. Use when you need to remove a container registry after confirming its ID." }, { "slug": "BUNNYCDN_DELETE_DATABASE", "name": "Delete Database", "description": "Tool to delete a BunnyCDN database by its ID. Use when you need to permanently remove an existing database after confirming the database ID." }, { "slug": "BUNNYCDN_DELETE_DNS_RECORD", "name": "Delete DNS Record", "description": "Tool to delete a specific DNS record by its ID. Use after confirming the DNS zone ID and record ID." }, { "slug": "BUNNYCDN_DELETE_DNS_ZONE", "name": "Delete DNS Zone", "description": "Tool to delete a specific DNS zone by its ID. Use when you need to permanently remove an existing DNS zone after verifying the zone ID." }, { "slug": "BUNNYCDN_DELETE_EDGE_RULE", "name": "Delete Edge Rule", "description": "Tool to delete an Edge Rule from a Pull Zone by its ID. Use when you need to remove an Edge Rule after confirming the Pull Zone ID and Edge Rule ID." }, { "slug": "BUNNYCDN_DELETE_GROUP", "name": "Delete Database Group", "description": "Tool to delete a specific database group by its ID. Use when you need to remove a group from the database." }, { "slug": "BUNNYCDN_DELETE_PULL_ZONE", "name": "Delete Pull Zone", "description": "Tool to delete a specific pull zone by its ID. Use when you need to remove a pull zone after confirming its ID." }, { "slug": "BUNNYCDN_DELETE_SHIELD_ZONE_ACCESS_LIST", "name": "Delete Shield Zone Access List", "description": "Tool to delete a custom access list from a Shield Zone. Use when you need to remove an access control rule after confirming the Shield Zone ID and access list ID." }, { "slug": "BUNNYCDN_DELETE_STORAGE_ZONE", "name": "Delete Storage Zone", "description": "Tool to delete a storage zone. Deletion is irreversible — permanently removes the zone and all associated data. Use only after confirming the correct zone ID with the user." }, { "slug": "BUNNYCDN_GENERATE2FA_VERIFICATION", "name": "Generate 2FA Verification", "description": "Tool to generate 2FA verification details for account security setup. Use when setting up two-factor authentication for a BunnyCDN account." }, { "slug": "BUNNYCDN_GENERATE_DATABASE_AUTH_TOKEN", "name": "Generate Database Auth Token", "description": "Tool to generate an authentication token for a BunnyCDN database. Use when you need to create access credentials for database operations." }, { "slug": "BUNNYCDN_GET_BILLING_SUMMARY", "name": "Get Billing Summary", "description": "Tool to retrieve billing summary with data report for each Pull Zone. Use when you need to understand bandwidth usage and monthly charges across all pull zones." }, { "slug": "BUNNYCDN_GET_COINIFY_BTC_EXCHANGE_RATE", "name": "Get Coinify BTC Exchange Rate", "description": "Tool to retrieve the current Coinify Bitcoin (BTC) exchange rate. Use when you need the current BTC price for cryptocurrency payment calculations. Note: This endpoint is deprecated according to the API documentation." }, { "slug": "BUNNYCDN_GET_CONTAINER_CONFIG_SUGGESTIONS", "name": "Get Container Config Suggestions", "description": "Tool to get AI-powered configuration suggestions for deploying a container image on BunnyCDN's Magic Containers platform. Use when you need deployment recommendations for a specific container image including endpoint configurations and environment variables." }, { "slug": "BUNNYCDN_GET_CONTAINER_IMAGE_DIGEST", "name": "Get Container Image Digest", "description": "Tool to retrieve the digest of a container image from a registry. Use when you need to verify an image version or pin to a specific digest." }, { "slug": "BUNNYCDN_GET_DATABASE", "name": "Get Database", "description": "Tool to retrieve details of a specific database by its ID. Use when you need database configuration, size information, and region settings." }, { "slug": "BUNNYCDN_GET_DATABASE_STATISTICS", "name": "Get Database Statistics", "description": "Tool to retrieve time-series statistics for a Bunny Database instance. Returns hourly data for row read/write counts, delegated write requests, storage metrics, and latency over a specified date range. Use when you need to analyze database performance, usage patterns, or billing data." }, { "slug": "BUNNYCDN_GET_DNS_ZONE_DETAILS", "name": "Get DNS Zone Details", "description": "Tool to retrieve details of a specific DNS zone by its ID. Use when you need to verify DNS zone configuration after creation or update." }, { "slug": "BUNNYCDN_GET_DNS_ZONE_LIST", "name": "Get DNS Zone List", "description": "Tool to list all DNS zones in your Bunny CDN account. Use when you need an overview of all configured DNS zones." }, { "slug": "BUNNYCDN_GET_GROUP", "name": "Get Database Group", "description": "Tool to retrieve details of a specific database group by its ID. Use when you need to get configuration and region information for a database group." }, { "slug": "BUNNYCDN_GET_LANGUAGES", "name": "Get Languages", "description": "Tool to retrieve the list of languages supported by BunnyCDN's video library. Use when you need to discover available languages for player UI translation or automatic transcription features." }, { "slug": "BUNNYCDN_GET_LIMITS", "name": "Get Database Limits", "description": "Tool to retrieve current database limits for the authenticated BunnyCDN account. Use when you need to check database usage and capacity." }, { "slug": "BUNNYCDN_GET_OEMBED", "name": "Get oEmbed", "description": "Tool to retrieve oEmbed metadata for BunnyCDN video embeds. Use when you need embed code or video metadata in oEmbed format." }, { "slug": "BUNNYCDN_GET_OPTIMAL_BASE_REGION", "name": "Get Optimal Base Region", "description": "Tool to get the optimal base region for Magic Containers. Use when you need to determine the best region for deploying Magic Container instances based on current capacity and network conditions." }, { "slug": "BUNNYCDN_GET_OPTIMIZER_STATISTICS", "name": "Get Optimizer Statistics", "description": "Retrieve optimizer statistics for a Pull Zone to understand optimization performance. Use this action to analyze how Bunny Optimizer is performing for a specific Pull Zone, including compression ratios, processing times, optimized request counts, and traffic savings. Supports custom date ranges and hourly/daily grouping for detailed analysis." }, { "slug": "BUNNYCDN_GET_ORIGIN_SHIELD_QUEUE_STATISTICS", "name": "Get Origin Shield Queue Statistics", "description": "Tool to retrieve Origin Shield Queue Statistics for a specific Pull Zone. Use when you need to analyze Origin Shield performance metrics including concurrent and queued request data over a specified time period." }, { "slug": "BUNNYCDN_GET_PREPARE_PAYMENT_AUTHORIZATION", "name": "Get Prepare Payment Authorization", "description": "Tool to prepare payment authorization for Bunny CDN billing. Use when you need to obtain an authorization key for payment processing. Note: This endpoint is deprecated." }, { "slug": "BUNNYCDN_GET_PULL_ZONE", "name": "Get Pull Zone", "description": "Tool to retrieve details of a specific Pull Zone. Use when you need full configuration and usage stats after confirming the Pull Zone ID." }, { "slug": "BUNNYCDN_GET_PULL_ZONE_LIST", "name": "Get Pull Zone List", "description": "Retrieve a paginated list of all Pull Zones in your BunnyCDN account. Use this to discover existing Pull Zones, their IDs, hostnames, and configuration. Supports filtering by name with the 'search' parameter and pagination with 'page' and 'per_page'. Returns pull zone details including hostnames, bandwidth usage, caching settings, and more." }, { "slug": "BUNNYCDN_GET_SAFE_HOP_STATISTICS", "name": "Get SafeHop Statistics", "description": "Tool to retrieve SafeHop statistics for a specific Pull Zone. Use when you need to analyze how SafeHop has improved reliability by retrying and saving requests. SafeHop is BunnyCDN's feature that automatically retries failed requests and saves bandwidth by serving stale content when the origin is unavailable." }, { "slug": "BUNNYCDN_GET_SHIELD_BOT_DETECTION", "name": "Get Shield Bot Detection Configuration", "description": "Tool to retrieve bot detection configuration for a specific Shield Zone. Use when you need to view the current bot detection settings and sensitivity levels." }, { "slug": "BUNNYCDN_GET_SHIELD_DDOS_ENUMS", "name": "Get Shield DDoS Enums", "description": "Tool to retrieve available enums for Shield DDoS configuration. Use when you need to discover valid values for DDoS protection settings." }, { "slug": "BUNNYCDN_GET_SHIELD_EVENT_LOGS", "name": "Get Shield Event Logs", "description": "Tool to retrieve Shield Event Logs for a specific Shield Zone and date. Use when you need to view security events and Shield activity logs. Supports pagination via continuation tokens for large log sets." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_BOT_DETECTION", "name": "Get Shield Metrics Bot Detection", "description": "Tool to retrieve bot detection metrics for a specific Shield Zone. Use when you need to analyze bot traffic and challenges for a Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_OVERVIEW", "name": "Get Shield Metrics Overview", "description": "Tool to retrieve comprehensive security metrics overview for a Shield Zone. Use when you need statistics on DDoS protection, WAF rules, bot detection, rate limiting, access lists, and upload scanning for a specific Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_OVERVIEW_DETAILED", "name": "Get Shield Metrics Overview Detailed", "description": "Tool to retrieve detailed Shield zone metrics overview including DDoS protection, WAF, bot detection, rate limiting, access lists, and upload scanning statistics. Use when you need comprehensive protection metrics for a specific Shield zone over a time period." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_RATE_LIMIT_ID", "name": "Get Shield Metrics Rate Limit by ID", "description": "Tool to retrieve shield metrics for a specific rate limit by ID. Use when you need to monitor rate limit breach statistics and analyze traffic patterns over the past 28 days." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_RATE_LIMITS", "name": "Get Shield Metrics Rate Limits", "description": "Tool to retrieve rate limit metrics for a Shield Zone. Use when you need to analyze rate limiting patterns and statistics for DDoS protection." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_UPLOAD_SCANNING", "name": "Get Shield Metrics Upload Scanning", "description": "Tool to retrieve upload scanning metrics for a specific Shield Zone. Use when you need to analyze file upload security and scanning statistics for a Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_METRICS_WAF_RULE", "name": "Get Shield Metrics WAF Rule", "description": "Tool to retrieve shield metrics for a specific WAF rule. Use when you need to analyze how many requests were blocked, challenged, or logged by a particular WAF rule within a Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_PROMO_STATE", "name": "Get Shield Promo State", "description": "Tool to retrieve a breakdown of Shield promotional data. Use when you need information about current, eligible, and enrolled Shield promotions." }, { "slug": "BUNNYCDN_GET_SHIELD_RATE_LIMIT_ID", "name": "Get Shield Rate Limit by ID", "description": "Tool to retrieve a specific rate limit configuration by its ID. Use when you need to view the full details and settings of a shield rate limit rule." }, { "slug": "BUNNYCDN_GET_SHIELD_RATE_LIMITS", "name": "Get Shield Rate Limits", "description": "Tool to retrieve Shield Rate Limits for a specific Shield Zone. Use when you need to list or audit rate limiting rules configured for a Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_SHIELD_ZONES", "name": "Get Shield Shield Zones", "description": "Tool to retrieve a list of all Shield Zones with their configurations. Use when you need to view all Shield Zones and their security settings. Supports pagination to handle large numbers of Shield Zones." }, { "slug": "BUNNYCDN_GET_SHIELD_UPLOAD_SCANNING", "name": "Get Shield Upload Scanning Configuration", "description": "Tool to retrieve upload scanning configuration for a Shield Zone. Use when you need to check antivirus and CSAM scanning settings for uploaded files." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_CUSTOM_RULE_ID", "name": "Get Shield WAF Custom Rule by ID", "description": "Tool to retrieve details of a specific Shield WAF custom rule by its ID. Use when you need to view the configuration, conditions, and actions of a custom Web Application Firewall rule." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_CUSTOM_RULES", "name": "Get Shield WAF Custom Rules", "description": "Tool to retrieve custom WAF rules for a specific Shield Zone. Use when you need to list or review custom WAF rule configurations. Supports pagination for large rule sets." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_ENGINE_CONFIG", "name": "Get Shield WAF Engine Config", "description": "Tool to retrieve Shield WAF engine configuration settings. Use when you need to view the current WAF engine configuration parameters and their values." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_ENUMS", "name": "Get Shield WAF Enums", "description": "Tool to retrieve available enums for Shield WAF configuration. Use when you need to discover valid values for WAF protection settings." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_PROFILES", "name": "Get Shield WAF Profiles", "description": "Tool to retrieve available WAF profiles for Shield zones. Use when you need to list all available WAF security profiles including their features, categories, and descriptions." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_RULES_PLAN_SEGMENTATION", "name": "Get Shield WAF Rules Plan Segmentation", "description": "Tool to retrieve WAF rules organized by subscription plan tiers. Use when you need to understand which WAF rules are available for different Shield plan levels." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_RULES_REVIEW_TRIGGERED", "name": "Get Shield WAF Rules Review Triggered", "description": "Tool to retrieve triggered WAF rules for review in a specific Shield Zone. Use when you need to analyze which WAF rules have been triggered and review security events for remediation." }, { "slug": "BUNNYCDN_GET_SHIELD_WAF_RULES_SHIELD_ZONE_ID", "name": "Get Shield WAF Rules by Shield Zone ID", "description": "Tool to retrieve Shield WAF Rules for a specific Shield Zone. Use when you need to view or audit the WAF rule configurations applied to a Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONE", "name": "Get Shield Zone", "description": "Tool to retrieve detailed configuration of a specific Shield Zone. Use when you need to view DDoS protection settings, WAF configuration, or security rules for a shield zone." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONE_ACCESS_LIST", "name": "Get Shield Zone Access List", "description": "Tool to retrieve a specific custom access list from a Shield Zone. Use when you need to view details of an access control rule including its content, type, and metadata." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONE_ACCESS_LIST_ENUMS", "name": "Get Shield Zone Access List Enums", "description": "Tool to retrieve available enums for Shield Zone Access List configuration. Use when you need to discover valid values for access list settings for a specific Shield Zone." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONE_ACCESS_LISTS", "name": "Get Shield Zone Access Lists", "description": "Tool to retrieve all access lists for a Shield Zone, including both managed threat lists and custom lists. Use when you need to view access control configurations and their status." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONE_BY_PULLZONE", "name": "Get Shield Zone by Pull Zone ID", "description": "Tool to retrieve Shield Zone details by Pull Zone ID. Use when you need to view security and protection settings for a specific Pull Zone. Returns DDoS protection, WAF configuration, and other Shield settings." }, { "slug": "BUNNYCDN_GET_SHIELD_ZONES_PULLZONE_MAPPING", "name": "Get Shield Zones Pull Zone Mapping", "description": "Tool to retrieve the mapping between Shield Zones and Pull Zones. Use when you need to see which Shield Zones are protecting which Pull Zones in your BunnyCDN account." }, { "slug": "BUNNYCDN_GET_STATISTICS", "name": "Get Statistics", "description": "Tool to retrieve CDN statistics data for bandwidth, requests, cache performance, and geographic distribution. Use this action to analyze CDN performance across pull zones or specific regions. Supports custom date ranges, hourly/daily grouping, and selective data loading for specific metrics." }, { "slug": "BUNNYCDN_GET_STORAGE_ZONE_DETAILS", "name": "Get Storage Zone Details", "description": "Tool to retrieve the full details of a storage zone, including configuration, usage metrics, and credentials. The response includes sensitive fields Password and ReadOnlyPassword — mask or omit these from logs and user-facing output." }, { "slug": "BUNNYCDN_GET_STORAGE_ZONE_LIST", "name": "Get Storage Zone List", "description": "Tool to list all storage zones in your Bunny CDN account. Use when you need an overview of all configured storage zones." }, { "slug": "BUNNYCDN_GET_USER_AUDIT", "name": "Get User Audit Log", "description": "Tool to retrieve user audit log entries for a specific date with optional filtering. Use when you need to track user actions, security auditing, or compliance reporting." }, { "slug": "BUNNYCDN_GET_USER_DETAILS", "name": "Get User Details", "description": "Tool to retrieve complete details of the currently authorized user account. Use when you need account information, billing status, or user profile data." }, { "slug": "BUNNYCDN_GET_USER_LIMITS", "name": "Get User Limits", "description": "Tool to retrieve user limits and quotas for Magic Containers. Use when you need to check application, instance, region, and volume limits for the authenticated account." }, { "slug": "BUNNYCDN_GET_WHATS_NEW_ITEMS", "name": "Get What's New Items", "description": "Tool to retrieve What's New items for the current user. Use when you need to discover recent features, updates, and bug fixes in the BunnyCDN platform." }, { "slug": "BUNNYCDN_INVALIDATE_DATABASE_AUTH_TOKENS", "name": "Invalidate Database Auth Tokens", "description": "Tool to invalidate all authentication tokens for a BunnyCDN database. Use when you need to revoke all active access credentials for a specific database." }, { "slug": "BUNNYCDN_INVALIDATE_GROUP_AUTH", "name": "Invalidate Group Auth Tokens", "description": "Tool to invalidate authentication tokens for a specific database group. Use when you need to revoke all active tokens for a group." }, { "slug": "BUNNYCDN_LIST_API_KEYS", "name": "List API Keys", "description": "Tool to retrieve a paginated list of all API keys in your BunnyCDN account. Use when you need to view existing API keys and their associated roles." }, { "slug": "BUNNYCDN_LIST_APPLICATIONS", "name": "List Applications", "description": "Tool to list all Magic Container applications in your Bunny CDN account. Use when you need an overview of deployed applications, their status, and endpoints. Supports cursor-based pagination for efficient traversal of large result sets." }, { "slug": "BUNNYCDN_LIST_CONTAINER_IMAGE_TAGS", "name": "List Container Image Tags", "description": "Tool to list all available tags for a container image in a registry. Use when you need to discover available versions or tags for a container image." }, { "slug": "BUNNYCDN_LIST_CONTAINER_REGISTRIES", "name": "List Container Registries", "description": "Tool to list all container registries in your BunnyCDN Magic Containers account. Use when you need to view configured container registries with their connection details." }, { "slug": "BUNNYCDN_LIST_COUNTRY_LIST", "name": "List Country List", "description": "Tool to retrieve the list of countries supported by BunnyCDN with their tax rates and Points of Presence. Use when you need to discover available countries, their tax information, or PoP locations for billing and geographic routing purposes." }, { "slug": "BUNNYCDN_LIST_DATABASE_ACTIVE", "name": "List Database Active Usage", "description": "Tool to retrieve active database usage statistics. Returns the number of active databases, total databases, and total size across all databases. Use when you need an overview of database usage and storage allocation." }, { "slug": "BUNNYCDN_LIST_DATABASE_CONFIG", "name": "List Database Configuration", "description": "Tool to retrieve database configuration including available storage regions, primary regions, and replica regions. Use when you need to discover which regions are available for database deployment and replication." }, { "slug": "BUNNYCDN_LIST_DATABASES_V2", "name": "List Databases V2", "description": "Tool to list databases with pagination support using the v2 API. Use when you need to paginate through large numbers of databases or need pagination metadata." }, { "slug": "BUNNYCDN_LIST_DATABASE_USAGE", "name": "List Database Usage", "description": "Tool to retrieve aggregated usage metrics for a Bunny Database instance. Returns total rows read/written and average latency for a specified date range. Use when you need aggregated usage statistics rather than time-series data." }, { "slug": "BUNNYCDN_LIST_DATABASE_VERSIONS", "name": "List Database Versions", "description": "Tool to list all versions of a specific database. Use when you need to view version history, track database changes, or restore to a previous version." }, { "slug": "BUNNYCDN_LIST_EDGE_SCRIPTS", "name": "List Edge Scripts", "description": "Retrieve a paginated list of all edge scripts in your BunnyCDN account. Use when you need to discover existing edge scripts, their IDs, types, and configuration." }, { "slug": "BUNNYCDN_LIST_GROUP", "name": "List Database Groups", "description": "Tool to retrieve a list of all database groups in your BunnyCDN account. Use when you need to discover existing database groups and their configuration." }, { "slug": "BUNNYCDN_LIST_GROUP_STATISTICS", "name": "List Group Statistics", "description": "Tool to retrieve time-series statistics for a database group. Returns data for row read/write counts and storage usage over a specified date range. Use when you need to analyze group-level performance, usage patterns, or billing data." }, { "slug": "BUNNYCDN_LIST_GROUP_USAGE", "name": "List Database Group Usage", "description": "Tool to retrieve aggregated usage statistics for a database group over a specified time period. Returns total rows read/written and average latency. Use when you need to analyze group-level usage patterns or billing data." }, { "slug": "BUNNYCDN_LIST_NODES", "name": "List Nodes", "description": "Tool to retrieve a list of Magic Container nodes in your BunnyCDN account. Use when you need to view available node IP addresses for Magic Containers. Supports pagination through cursor-based navigation." }, { "slug": "BUNNYCDN_LIST_NOTIFICATIONS", "name": "List Notifications", "description": "Tool to list all notifications for the currently logged in user. Use when you need to retrieve notifications." }, { "slug": "BUNNYCDN_LIST_REGION_LIST", "name": "List Region List", "description": "Tool to retrieve the list of regions supported by BunnyCDN with their geographic coordinates and pricing. Use when you need to discover available regions for deployment or to get pricing information per region." }, { "slug": "BUNNYCDN_LIST_REGIONS", "name": "List Regions", "description": "Tool to list all available regions for Magic Containers. Use when you need to discover available deployment regions, check their capacity status, or understand Anycast support across regions." }, { "slug": "BUNNYCDN_LIST_VIDEO_LIBRARIES", "name": "List Video Libraries", "description": "Retrieve a paginated list of all video libraries in your BunnyCDN account. Use when you need to discover existing video libraries, their IDs, and configuration details." }, { "slug": "BUNNYCDN_LIST_VOLUMES", "name": "List Volumes", "description": "Tool to list all volumes for a Magic Container application in your BunnyCDN account. Use when you need to view storage volumes, their capacity, usage, and attached instances for a specific app." }, { "slug": "BUNNYCDN_POST_SHIELD_WAF_RULES_REVIEW_TRIGGERED", "name": "Post Shield WAF Rules Review Triggered", "description": "Tool to review and apply actions to triggered WAF rules in a specific Shield Zone. Use when you need to whitelist, block, or challenge specific WAF rules based on their triggered status." }, { "slug": "BUNNYCDN_PURGE_PULL_ZONE", "name": "Purge Pull Zone", "description": "Purges the entire CDN cache for a specified pull zone. Use this action after updating content at the origin server to ensure that stale cached assets are cleared and fresh content is served to end users. This operation invalidates all cached files across all edge servers for the specified pull zone. Note that this does not affect Perma-Cache content." }, { "slug": "BUNNYCDN_PURGE_URL", "name": "Purge URL", "description": "Purge a specific URL from the BunnyCDN cache to force it to be refreshed from the origin. Use this tool when you need to: - Invalidate cached content after updating a file on the origin server - Force immediate cache refresh for a specific resource - Clear outdated content from edge servers Note: The URL must belong to a pull zone you have access to. Attempting to purge URLs from pull zones you don't own will result in an authorization error." }, { "slug": "BUNNYCDN_REMOVE_ALLOWED_REFERER", "name": "Remove Allowed Referer", "description": "Removes a hostname from the allowed referer list for a pull zone. Use this action to remove a previously configured referer-based security restriction. After removal, the specified hostname will no longer be allowed to access the pull zone content. This is useful when updating referer security policies or removing domains that should no longer have access." }, { "slug": "BUNNYCDN_REMOVE_BLOCKED_IP", "name": "Remove Blocked IP", "description": "Tool to remove an IP address from the blocked list of a pull zone. Use when you need to restore access for specific IPs that were previously blocked." }, { "slug": "BUNNYCDN_REMOVE_BLOCKED_REFERER", "name": "Remove Blocked Referer", "description": "Tool to remove a blocked referer from a pull zone. Use when you need to allow a previously blocked domain to access content from your CDN again." }, { "slug": "BUNNYCDN_RESET_PULL_ZONE_SECURITY_KEY", "name": "Reset Pull Zone Security Key", "description": "Tool to reset the security token key for a specific pull zone. Use when you need to regenerate the security key for authentication purposes." }, { "slug": "BUNNYCDN_RESET_WHATS_NEW", "name": "Reset What's New", "description": "Tool to reset the What's New notification list for the current user. Use when you need to mark all What's New items as read and reset the unread count." }, { "slug": "BUNNYCDN_RESTORE_DATABASE", "name": "Restore Database", "description": "Tool to restore a BunnyCDN database to a specific generation/version. This is a destructive operation that will revert the database to the specified point in time. Use when you need to recover data from a previous version or undo unwanted changes. WARNING: This operation is destructive and will overwrite current database state." }, { "slug": "BUNNYCDN_SEARCH_GLOBAL_SEARCH", "name": "Search Global Search", "description": "Perform a global search across all BunnyCDN resources (pull zones, storage zones, DNS zones, scripts, streams). Use this to discover resources by name across your entire BunnyCDN account. Supports pagination with 'from' and 'size' parameters. Returns matching resources with their type, ID, and name for easy identification." }, { "slug": "BUNNYCDN_SEARCH_PUBLIC_CONTAINER_IMAGES", "name": "Search Public Container Images", "description": "Tool to search for public container images by prefix in a registry. Use when you need to discover available public container images matching a search term." }, { "slug": "BUNNYCDN_SET_EDGE_RULE_ENABLED", "name": "Set Edge Rule Enabled", "description": "Tool to enable or disable an edge rule in a BunnyCDN pull zone. Use when you need to activate or deactivate an existing edge rule without modifying its configuration. Edge rules that are disabled remain configured but do not execute. This allows you to temporarily turn off rules without deleting them. Common use cases: temporarily disable security rules for testing, enable/disable seasonal redirects, or toggle feature flags implemented as edge rules." }, { "slug": "BUNNYCDN_SET_FORCE_SSL", "name": "Set Force SSL", "description": "Tool to set Force SSL on a pull zone hostname. Use when you need to enable or disable HTTPS enforcement for a specific hostname." }, { "slug": "BUNNYCDN_SET_NOTIFICATIONS_OPENED", "name": "Set Notifications Opened", "description": "Tool to mark all user notifications as opened. Use when you need to clear unread notification indicators. Returns success once notifications are marked as read." }, { "slug": "BUNNYCDN_UPDATE_DATABASE", "name": "Update Database", "description": "Tool to update an existing Bunny Database. Use when you need to change database name or control read/write access." }, { "slug": "BUNNYCDN_UPDATE_GROUP", "name": "Update Database Group", "description": "Tool to update a database group by its ID. Use when you need to modify the name or configuration of a database group." }, { "slug": "BUNNYCDN_UPDATE_PULL_ZONE", "name": "Update Pull Zone", "description": "Tool to update settings for a specific pull zone. Use when you need to modify existing pull zone settings after reviewing current configuration." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_BOT_DETECTION", "name": "Update Shield Bot Detection Configuration", "description": "Tool to update bot detection configuration for a specific Shield Zone. Use when you need to modify bot detection settings, sensitivity levels, or execution mode. Note: Bot detection requires Advanced tier subscription." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_RATE_LIMIT_ID", "name": "Update Shield Rate Limit by ID", "description": "Tool to update a specific rate limit configuration by its ID. Use when you need to modify settings of an existing shield rate limit rule such as request thresholds, timeframes, or action types." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_ZONE", "name": "Update Shield Zone", "description": "Tool to update configuration settings for a Shield Zone. Use when you need to modify DDoS protection settings, WAF rules, or security configurations." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_ZONE_ACCESS_LIST", "name": "Update Shield Zone Access List", "description": "Tool to update a custom access list in a Shield Zone. Use when you need to modify an access control rule's name, content, or checksum." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_ZONE_ACCESS_LIST_CONFIGURATION", "name": "Update Shield Zone Access List Configuration", "description": "Tool to update an access list configuration in a Shield Zone. Use when you need to modify the action or enabled state of an existing access list configuration." }, { "slug": "BUNNYCDN_UPDATE_SHIELD_ZONE_UPLOAD_SCANNING", "name": "Update Shield Zone Upload Scanning", "description": "Tool to update upload scanning settings for a shield zone. Use when you need to configure antivirus and CSAM scanning for uploaded files." }, { "slug": "BUNNYCDN_UPDATE_STORAGE_ZONE", "name": "Update Storage Zone", "description": "Tool to update settings for a specific storage zone. Updates are applied immediately and can destructively alter storage zone configuration. Verify the correct `id` and confirm intended changes before calling." }, { "slug": "BUNNYCDN_UPDATE_USER_DETAILS", "name": "Update User Details", "description": "Tool to update the currently authorized user's account details. Use when modifying user profile information, billing details, or email preferences." }, { "slug": "BUNNYCDN_VALIDATE_ORIGIN_URL_PULL_ZONE", "name": "Validate Origin URL Pull Zone", "description": "Tool to validate an origin URL before creating or configuring a pull zone. Use when you need to verify that an origin URL is accessible and properly configured for use with BunnyCDN." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bunnycdn_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "BunnyCDN API Key", "type": "string", "description": "The API key used for authenticating requests to BunnyCDN. You can obtain this key from your BunnyCDN dashboard under account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "butterbase", "name": "Butterbase", "logo": "https://logos.composio.dev/api/butterbase", "description": "Backend-as-a-Service platform with PostgreSQL database, authentication, and API infrastructure", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "butterbase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Service-level API key starting with bb_sk_... from Butterbase dashboard. Provides full data access and bypasses RLS.", "required": true, "default": null }, { "name": "generic_id", "displayName": "App ID", "type": "string", "description": "Your Butterbase app ID (e.g., app_abc123). Get this from the Butterbase dashboard or /init endpoint.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "buy_me_a_coffee", "name": "Buy Me A Coffee", "logo": "https://logos.composio.dev/api/buy_me_a_coffee", "description": "Buy Me a Coffee is a platform for creators to receive support from their audience through one-time or recurring payments.", "category": "content & files", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "buy_me_a_coffee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Get your access token from the Developer Dashboard at https://developers.buymeacoffee.com/dashboard by clicking \"Generate My Token\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "bytebot", "name": "Bytebot", "logo": "https://logos.composio.dev/api/bytebot", "description": "Self-hosted AI desktop agent for task automation and computer control", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "bytebot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "hostUrl", "displayName": "Host URL", "type": "string", "description": "Full base URL including protocol, host and port (e.g., http://localhost:9991)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "byteforms", "name": "Byteforms", "logo": "https://logos.composio.dev/api/byteforms", "description": "All-in-one solution for form creation, submission management, and data integration.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "BYTEFORMS_CREATE_FORM", "name": "Create form", "description": "Creates a new form in ByteForms. Use this to build data collection forms with customizable fields (text, email, phone), styling options (theme, width), and submission rules (limits, deadlines, password protection). Returns the created form with its public_id for sharing." }, { "slug": "BYTEFORMS_DELETE_FORM", "name": "Delete Form", "description": "Tool to delete a form by its ID. Use when you need to remove an existing form permanently." }, { "slug": "BYTEFORMS_GET_ALL_FORMS2", "name": "Get All Forms", "description": "Tool to fetch all forms created by the authenticated user. Use after authentication to list existing forms." }, { "slug": "BYTEFORMS_GET_FORM_BY_ID", "name": "Get Form By ID", "description": "Retrieves detailed information about a specific form by its numeric ID. Returns the form's name, fields, configuration options, and metadata. Use the numeric 'id' field (not the 'public_id' string) from form data obtained via BYTEFORMS_GET_ALL_FORMS or BYTEFORMS_CREATE_FORM." }, { "slug": "BYTEFORMS_GET_FORM_RESPONSES", "name": "Get Form Responses", "description": "Tool to retrieve responses for a specific form with optional pagination and filtering. Use when the form has collected submissions and you need to navigate large result sets." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "byteforms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ByteForms API Key", "type": "string", "description": "Your ByteForms API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cabinpanda", "name": "Cabinpanda", "logo": "https://logos.composio.dev/api/cabinpanda", "description": "CabinPanda is a data collection platform that enables users to create and manage online forms, facilitating efficient data gathering and analysis.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CABINPANDA_CREATE_FORM", "name": "Create Form", "description": "Create a new form in CabinPanda using a template. The form will be created with default fields based on the selected template. Use template_id '1' for a blank form or other IDs for themed templates." }, { "slug": "CABINPANDA_DELETE_FORM", "name": "Delete Form", "description": "Permanently deletes a form from CabinPanda using its unique key. This action is irreversible - use with caution. Requires the form's alphanumeric key (not the numeric ID) which can be obtained from the List Forms action's 'key' field." }, { "slug": "CABINPANDA_DELETE_INTEGRATION", "name": "Delete Integration", "description": "Deletes a form integration configuration by its ID. Use this to disconnect a specific integration (e.g., Slack, Google Sheets, Stripe) from a form. First use CABINPANDA_LIST_INTEGRATIONS to find the 'form_integration.id' of the configured integration you want to remove. This is a destructive and idempotent operation." }, { "slug": "CABINPANDA_GET_FORM_DETAILS", "name": "Get Form Details", "description": "Tool to retrieve details of a specific form by its key (32-character hex string). Use when you need form metadata (fields, labels, timestamps) before processing or submitting data. Get form keys from the list_forms endpoint." }, { "slug": "CABINPANDA_GET_INTEGRATION_DETAILS", "name": "Get Integration Details", "description": "Retrieve detailed information about a specific integration by its numeric ID. Returns integration configuration, category, OAuth settings, and form/team integration status. Use List Integrations first to discover available IDs." }, { "slug": "CABINPANDA_GET_PROFILE", "name": "Get Profile", "description": "Retrieves the authenticated user's CabinPanda profile including account details, workspace information, available features, usage statistics, and billing plan. Use this action to get the current user's identity, check plan limits, or verify account setup status." }, { "slug": "CABINPANDA_LIST_FORMS", "name": "List Forms", "description": "Tool to retrieve a list of all forms associated with the account. Use when you need to fetch form details for management or analysis." }, { "slug": "CABINPANDA_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to retrieve a list of all integrations for the account. Use when you need to inspect available or active integrations before managing them." }, { "slug": "CABINPANDA_LIST_SUBMISSIONS", "name": "List form submissions", "description": "Retrieve all submissions for a specific form. The form_id parameter requires the 32-character hex key (not the numeric ID). First use List Forms to get available form keys, then pass one to this action." }, { "slug": "CABINPANDA_LIST_USERS", "name": "List Users", "description": "Retrieves a list of all team members (users) associated with your CabinPanda account. Use this tool to: - View all team members in your workspace - Get user IDs for other team management operations - Check user roles, permissions, and current usage statistics - Audit team membership and billing plan information Returns detailed user information including email, workspace details, available features, and usage statistics." }, { "slug": "CABINPANDA_UPDATE_FORM", "name": "Update Form", "description": "Tool to update the details of an existing form including name, template, fields and settings. Use when you need to modify form properties, update field configuration, or change form behavior." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cabinpanda_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "CabinPanda API Token", "type": "string", "description": "The API token used for authenticating requests to the CabinPanda API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "calendarhero", "name": "CalendarHero", "logo": "https://logos.composio.dev/api/calendarhero", "description": "CalendarHero is a versatile scheduling tool designed to streamline and simplify your calendar management. It integrates seamlessly with your existing calendars, allowing you to efficiently schedule, reschedule, and manage meetings with ease.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CALENDARHERO_ADD_CALENDAR_CONNECTION", "name": "Add Calendar Connection", "description": "Add a new calendar directory/connection to the user's CalendarHero account. A directory is a calendar connection configuration that groups meeting types together. Use this to organize different types of meetings (e.g., sales calls, team meetings) under separate calendar connections. Returns the unique ID of the created directory." }, { "slug": "CALENDARHERO_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in CalendarHero with the provided contact information. Returns the unique identifier of the created contact." }, { "slug": "CALENDARHERO_CREATE_MEETING_REQUEST_V2", "name": "Create Meeting Request V2", "description": "Tool to create a new meeting request in CalendarHero. Use when scheduling a meeting with participants, time range, and additional details." }, { "slug": "CALENDARHERO_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates or updates a webhook for a specific event type in CalendarHero. Use this to register a URL endpoint that will receive notifications when events occur (e.g., when a meeting request succeeds or a new contact is added)." }, { "slug": "CALENDARHERO_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact from CalendarHero by its unique identifier. Use when you need to permanently remove a contact from the system." }, { "slug": "CALENDARHERO_DELETE_MEETING_TASK", "name": "Delete Meeting Task", "description": "Tool to delete a meeting task/request from CalendarHero. Use when you need to remove a meeting task by its ID." }, { "slug": "CALENDARHERO_DELETE_MEETING_TYPE", "name": "Delete Meeting Type", "description": "Tool to delete a meeting type from the authenticated user's CalendarHero account. Use when you need to remove a meeting type configuration. Note: Cannot delete meeting types that have active or upcoming meetings scheduled." }, { "slug": "CALENDARHERO_DELETE_USER_DIRECTORY", "name": "Delete User Directory", "description": "Tool to delete a user directory by its UUID. Use when you need to remove a directory from the user's account." }, { "slug": "CALENDARHERO_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription for a specific event type. Use when you need to remove a webhook listener that was previously registered for CalendarHero events." }, { "slug": "CALENDARHERO_FETCH_CONTACT", "name": "Fetch Contact", "description": "Fetch Contact" }, { "slug": "CALENDARHERO_FETCH_MEETING_DETAILS", "name": "Fetch Meeting Details", "description": "Tool to fetch details for meetings within a specified timeframe. Use this after user provides start and end datetimes in ISO8601." }, { "slug": "CALENDARHERO_FETCH_USER_PROFILE", "name": "Fetch User Profile", "description": "Tool to fetch the profile details of the authenticated user. Use after obtaining a valid access token." }, { "slug": "CALENDARHERO_GET_ASSISTANT_MESSAGE", "name": "Get Assistant Message", "description": "Tool to retrieve a reply message from the CalendarHero assistant. Use when you need to get an automated response or greeting from the assistant for the user." }, { "slug": "CALENDARHERO_GET_CONTACT_COUNT", "name": "Get Contact Count", "description": "Tool to get the total count of contacts in CalendarHero. Use when you need to know how many contacts exist." }, { "slug": "CALENDARHERO_GET_MEETING_CATEGORIES", "name": "Get Meeting Categories", "description": "Retrieves the user's meeting categories' stats for a specified time period. Use to analyze meeting distribution across different categories or types within a given month." }, { "slug": "CALENDARHERO_GET_MEETING_TASKS", "name": "Get Meeting Tasks", "description": "Retrieves the user's meeting requests/tasks from CalendarHero. Use when you need to check pending meeting requests, view scheduling tasks, or track meeting coordination progress. Supports filtering by state (active/upcoming/closed), pagination, and meeting type." }, { "slug": "CALENDARHERO_GET_SEARCH_RESULT", "name": "Get Search Result", "description": "Tool to get a search result by ID. Use when you have a search result ID from a previous /search request." }, { "slug": "CALENDARHERO_GET_USER_DIRECTORY", "name": "Get User Directory", "description": "Tool to retrieve a user's directory by its unique identifier. Use when you need to fetch configuration details for a specific directory including meeting types and tracking settings." }, { "slug": "CALENDARHERO_GET_USER_ORGANIZATION", "name": "Get User Organization", "description": "Tool to retrieve the authenticated user's organization details. Use when needing organization-level information." }, { "slug": "CALENDARHERO_GET_USER_SAVINGS", "name": "Get User Savings", "description": "Tool to retrieve the authenticated user's savings information from CalendarHero. Use to view time saved, efficiency metrics, or other savings data tracked by the platform." }, { "slug": "CALENDARHERO_GET_WEBHOOK", "name": "Get Webhook Configuration", "description": "Tool to get webhook configuration for a specific event type. Use when you need to check if a webhook is configured for meeting or contact events." }, { "slug": "CALENDARHERO_GET_WEBHOOK_SAMPLE", "name": "Get Webhook Sample", "description": "Tool to retrieve a sample webhook payload for a specific event type. Use when testing webhook integrations or understanding the structure of webhook data for different CalendarHero events." }, { "slug": "CALENDARHERO_LIST_MEETING_TEMPLATES", "name": "List Meeting Templates", "description": "Retrieves all meeting templates (reusable meeting configurations) for the authenticated user. Meeting templates contain pre-configured settings like duration, availability, video conferencing preferences, and custom options. Use this action to discover available templates before creating meetings or to understand a user's meeting type options. Returns an empty list if no templates have been created yet." }, { "slug": "CALENDARHERO_LIST_MEETING_TYPES", "name": "List Meeting Types", "description": "Retrieves all meeting types configured for the authenticated CalendarHero user. Meeting types are templates that define availability windows, durations, and booking URLs for different kinds of meetings (e.g., 'coffee', 'call', 'meeting'). Each meeting type has: - A unique identifier (e.g., 'coffee', 'call', 'meeting') - Availability windows (days and hours when meetings can be scheduled) - Booking URL for on-demand scheduling - Configuration for duration, timezone, notice period, etc. Use onlyTypes=true to get just the list of meeting type identifiers. Use onlyTypes=false (or omit) to get full configurations including all settings. This is a read-only operation that doesn't modify any data." }, { "slug": "CALENDARHERO_LIST_USER_CALENDARS", "name": "List User Calendars", "description": "Tool to list all calendar integrations connected to a user's CalendarHero account. Use after authenticating when you need to retrieve available calendars for scheduling." }, { "slug": "CALENDARHERO_LIST_USER_DIRECTORIES", "name": "List User Directories", "description": "Tool to retrieve all directories configured for a user. Use when you need to list available directories for scheduling or configuration purposes." }, { "slug": "CALENDARHERO_SEARCH_CONTACT", "name": "Search Contact", "description": "Tool to search for existing contacts. Use after confirming a need to find contacts by email or name." }, { "slug": "CALENDARHERO_SEARCH_INTEGRATIONS", "name": "Search Integrations", "description": "Tool to search across all user integrations for a query term. Use when you need to find events, meetings, or other data matching specific keywords across the user's connected calendar and productivity integrations." }, { "slug": "CALENDARHERO_SEND_ASSISTANT_MESSAGE", "name": "Send Assistant Message", "description": "Tool to send a user's message into the CalendarHero assistant. Use this to interact with the assistant using natural language for scheduling meetings, managing calendar events, or other calendar-related tasks." }, { "slug": "CALENDARHERO_SEND_REMINDER", "name": "Send Reminder", "description": "Sends an email reminder to all contacts/participants about a scheduled meeting request. Use this to notify attendees who need a reminder about an upcoming meeting. Requires the meeting task ID from a previously created meeting request." }, { "slug": "CALENDARHERO_UPDATE_CONTACT", "name": "Update Contact", "description": "Updates an existing contact in CalendarHero with new information. Use this action when you need to modify contact details such as name, email addresses, job title, organization, or phone numbers. Requires the contact's unique ID which can be obtained from CREATE_CONTACT or FETCH_CONTACT actions. Note: The 'email' field replaces ALL existing emails, so include all emails you want to keep. Use 'defaultEmail' to set the primary email for communications. Example usage: Update contact 507f1f77bcf86cd799439011 to change their email to 'newemail@example.com' and update their title to 'Senior Engineer'." }, { "slug": "CALENDARHERO_UPDATE_MEETING_TYPES", "name": "Update Meeting Types", "description": "Tool to update meeting type configurations for the authenticated CalendarHero user. Use when you need to modify existing meeting types' availability, durations, or settings. IMPORTANT: The meeting type name must already exist in the user's profile. To get existing meeting types, first use LIST_MEETING_TYPES action. This action updates properties like availability windows, notice periods, on-demand URLs, and other meeting-specific settings. Example: Update the 'coffee' meeting type to change the notice period from 4 hours to 5 hours, or modify the availability windows to only allow Monday-Wednesday bookings." }, { "slug": "CALENDARHERO_UPDATE_RESTRICTED_APPS", "name": "Update Restricted Apps", "description": "Tool to update the authenticated user's restricted apps settings. Use when you need to control which apps are restricted for the user." }, { "slug": "CALENDARHERO_UPDATE_USER", "name": "Update User", "description": "Tool to update the authenticated user's profile information. Use when you need to modify user details such as name, email, timezone, or preferences." }, { "slug": "CALENDARHERO_UPDATE_USER_ADDRESS", "name": "Update User Address", "description": "Tool to update the authenticated user's address settings by providing latitude and longitude coordinates. Use when the user needs to update their location for meeting scheduling or time zone detection." }, { "slug": "CALENDARHERO_UPDATE_USER_DIRECTORY", "name": "Update User Directory", "description": "Tool to update a user's directory in CalendarHero. Use when modifying directory settings such as title, meeting types, or configuration options. The directory UUID can be obtained from the user profile or directory listing endpoints. Ensure the directoryId in the request body matches the UUID path parameter." }, { "slug": "CALENDARHERO_UPDATE_USER_INFO", "name": "Update User Info", "description": "Updates the authenticated user's info settings in CalendarHero. Use this action when you need to modify user profile details such as name, language, timezone, contact information, or display preferences. Only the fields provided in the request will be updated; all other fields remain unchanged. This allows for partial updates without affecting other user settings." }, { "slug": "CALENDARHERO_UPDATE_WORK_LOCATION", "name": "Update Work Location", "description": "Tool to update the user's work location settings in CalendarHero. Use when the user needs to change their work location (e.g., 'Office', 'Home', 'Remote')." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "calendarhero_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "CalendarHero API Token", "type": "string", "description": "The API authentication token for accessing CalendarHero's API. Obtain your API token from CalendarHero under 'My Account' > 'My Profile Settings' > 'API'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "callerapi", "name": "Callerapi", "logo": "https://logos.composio.dev/api/callerapi", "description": "CallerAPI provides a white-label caller identification API that enhances customer trust, stops spam, fraud, and robocalls by offering branded caller ID solutions.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CALLERAPI_DISPATCH_REPORTS_MANUALLY", "name": "Dispatch Reports Manually", "description": "Tool to manually trigger today's spam reports webhook delivery for enterprise clients. Use when an immediate webhook dispatch of spam complaint reports is needed. This endpoint is restricted to enterprise accounts only." }, { "slug": "CALLERAPI_GET_PHONE_NUMBER_INFORMATION", "name": "Get Phone Number Information", "description": "Tool to retrieve detailed information about a specific phone number, including reputation, business and carrier details, and FTC complaints. Use when the number is in E.164 format and set hlr=true to include HLR data (adds 1-3 seconds to response)." }, { "slug": "CALLERAPI_GET_USER_INFORMATION", "name": "Get User Information", "description": "Tool to retrieve information about the authenticated user, including email and credit usage details. Use after authentication to fetch current credits spent, monthly allocation, and credits left." }, { "slug": "CALLERAPI_LIST_WEBHOOK_SUBSCRIPTIONS", "name": "List Webhook Subscriptions", "description": "Tool to list all webhook subscriptions for daily spam reports. Enterprise clients only. Use to retrieve all configured webhook endpoints that receive spam complaint notifications." }, { "slug": "CALLERAPI_SUBSCRIBE_DAILY_REPORTS", "name": "Subscribe to Daily Spam Reports", "description": "Tool to subscribe to daily spam report webhooks for enterprise clients. Instead of polling, receive webhook deliveries with spam complaint data daily. Use when you want to set up automated daily reports for spam complaints." }, { "slug": "CALLERAPI_TEST_WEBHOOK", "name": "Test Webhook", "description": "Tool to send a sample webhook payload to test your webhook endpoint integration. Use to validate webhook signature verification and endpoint configuration. Enterprise clients only." }, { "slug": "CALLERAPI_UNSUBSCRIBE_DAILY_REPORTS", "name": "Unsubscribe from Daily Reports", "description": "Tool to unsubscribe from daily spam report webhooks. Use when you need to stop receiving daily reports at a specific webhook URL. Enterprise clients only." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "callerapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CallerAPI API Key", "type": "string", "description": "The API key provided in your CallerAPI dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "callfire", "name": "Callfire", "logo": "https://logos.composio.dev/api/callfire", "description": "CallFire is a cloud-based platform for voice and text messaging, providing APIs for automated calls, SMS, and call tracking.", "category": "communication", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "callfire_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Username", "type": "string", "description": "Your CallFire API username (also called client_id). Generate API credentials at https://www.callfire.com/developers/manage/access", "required": true, "default": null }, { "name": "password", "displayName": "API Password", "type": "string", "description": "Your CallFire API password (also called client_secret). Generate API credentials at https://www.callfire.com/developers/manage/access", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "callingly", "name": "Callingly", "logo": "https://logos.composio.dev/api/callingly", "description": "Callingly is a lead response management software that automates immediate call and text follow-ups to new leads, integrating seamlessly with various CRMs and lead sources to enhance sales team responsiveness and conversion rates.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CALLINGLY_ACTIVATE_DEACTIVATE_CLIENT", "name": "Activate/Deactivate Client Account", "description": "Tool to activate or deactivate a client account. Use when you need to toggle client access after onboarding or offboarding. Example: \"Activate client 123\" or \"Deactivate client 456\"." }, { "slug": "CALLINGLY_CREATE_AGENT", "name": "Create Agent", "description": "Tool to create a new agent. Use when you need to register an agent in Callingly after gathering their account ID and contact details." }, { "slug": "CALLINGLY_CREATE_CALL", "name": "Create Outbound Call", "description": "Creates a new outbound call record and initiates a real outbound call, which incurs cost — ensure explicit user authorization and compliance with applicable consent and telemarketing regulations before use. The call will be routed to available agents on the specified team based on account-level routing configuration. Use List Teams first to get valid account_id and team_id values. Returns a call_id that can be used with Get Call to retrieve call status, recordings, and other details." }, { "slug": "CALLINGLY_CREATE_CLIENT", "name": "Create Client", "description": "Creates a new client account in Callingly. Clients are sub-accounts under your agency account that can have their own teams, agents, and billing. Use this when onboarding a new business customer to your Callingly agency." }, { "slug": "CALLINGLY_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team. Use when setting up a team configuration before adding agents." }, { "slug": "CALLINGLY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for call or lead events. Use when you need to receive real-time notifications on specific events. Example: \"Create a webhook for call_completed events to http://example.com/callback\"." }, { "slug": "CALLINGLY_DELETE_AGENT", "name": "Delete Agent", "description": "Permanently delete an agent from a Callingly account. Use when removing an agent who should no longer receive calls. Requires both the agent ID and the account ID the agent belongs to." }, { "slug": "CALLINGLY_DELETE_CLIENT", "name": "Delete Client", "description": "Tool to delete a client. Use when you need to remove an existing client from your account after confirming its ID." }, { "slug": "CALLINGLY_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a lead by ID. Use when you need to permanently remove a lead from your account after confirming its ID. Returns a success confirmation." }, { "slug": "CALLINGLY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook. Use when permanently removing a webhook by its ID." }, { "slug": "CALLINGLY_GET_AGENT_SCHEDULE", "name": "Get Agent Schedule", "description": "Tool to retrieve the availability schedule for a specific agent. Use when you need to know which days and times the agent is available." }, { "slug": "CALLINGLY_GET_CALL", "name": "Get Call", "description": "Retrieves detailed information about a specific call by its unique ID. Returns comprehensive call metadata including status, duration, lead information, agent details, recording URLs, transcripts, and AI-generated insights. Use the LIST_CALLS action first to obtain valid call IDs." }, { "slug": "CALLINGLY_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve details of a specific lead by its ID. Use when you need full lead details before follow-up actions." }, { "slug": "CALLINGLY_GET_TEAM", "name": "Get Team", "description": "Tool to retrieve details of a specific team. Use after obtaining the team ID to fetch its configuration details." }, { "slug": "CALLINGLY_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by its ID. Use when you need to inspect a webhook's configuration before modifying or deleting it." }, { "slug": "CALLINGLY_LIST_CALLS", "name": "List Calls", "description": "Tool to list calls. Use when you need to retrieve multiple call records with optional filters such as date range, team, and pagination after identifying the need for a collection of calls." }, { "slug": "CALLINGLY_LIST_CLIENTS", "name": "List Clients", "description": "Tool to list clients. Use when you need to retrieve all clients associated with your account." }, { "slug": "CALLINGLY_LIST_LEADS", "name": "List Leads", "description": "Tool to list leads based on provided filters like date range or phone number. Use after confirming filter criteria when bulk lead retrieval is needed." }, { "slug": "CALLINGLY_LIST_TEAMS", "name": "List Teams", "description": "Tool to list teams. Use when you need to retrieve all teams associated with your account." }, { "slug": "CALLINGLY_LIST_TEAM_USERS", "name": "List Team Users", "description": "Retrieve all agents assigned to a specific team in Callingly. Returns each agent's ID, name, priority, call cap, and any custom/integration identifiers. Use this to audit team composition or before performing agent management operations like updates or removals." }, { "slug": "CALLINGLY_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a list of agents. Use when you need to see all agents available under the authenticated account, optionally filtering by a specific client account." }, { "slug": "CALLINGLY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list configured webhooks. Use when you need to retrieve all webhooks configured in your account to review or manage them." }, { "slug": "CALLINGLY_REMOVE_TEAM_AGENT", "name": "Remove Team Agent", "description": "Tool to remove a specific agent from a team. Use when you need to disassociate an agent from a team after confirming both team and agent IDs." }, { "slug": "CALLINGLY_UPDATE_AGENT", "name": "Update Agent", "description": "Tool to update an existing agent's details. Use when you need to modify agent information post-creation." }, { "slug": "CALLINGLY_UPDATE_LEAD", "name": "Update Lead", "description": "Tool to update an existing lead's information. Use when you need to modify lead contact details, status, or blocking settings." }, { "slug": "CALLINGLY_UPDATE_SCHEDULE", "name": "Update Agent Schedule", "description": "Tool to update an agent's availability schedule. Use when you need to set or override an agent's daily availability times." }, { "slug": "CALLINGLY_UPDATE_TEAM_AGENT_SETTINGS", "name": "Update Team Agent Settings", "description": "Tool to update settings (priority, capacity) for a specific team agent. Use when adjusting an agent's priority or call capacity after team configuration." }, { "slug": "CALLINGLY_UPDATE_TEAM_USERS", "name": "Update Team Users", "description": "Updates the list of agents assigned to a team. This operation replaces all existing agent assignments - any agents not included in the list will be removed from the team. Use CALLINGLY_LIST_TEAM_USERS to check current assignments before updating." }, { "slug": "CALLINGLY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Updates an existing webhook's configuration by ID. Supports partial updates - only provide fields you want to change. Note: When updating event-specific fields (call_status, call_lead_status, field, filter), you must also include the event field in your request." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "callingly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Callingly API Key", "type": "string", "description": "The API key generated from the Callingly dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "callpage", "name": "Callpage", "logo": "https://logos.composio.dev/api/callpage", "description": "CallPage is a lead capture tool that enables businesses to connect with website visitors through immediate phone callbacks, enhancing lead generation and sales conversion rates.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CALLPAGE_ADD_USERS_TO_WIDGET", "name": "Add Users to Widget", "description": "Tool to add users to a widget as managers. Use when you need to create or update manager assignments for a widget. If a user-widget pair already exists, the existing manager will be updated instead of creating a new one." }, { "slug": "CALLPAGE_CREATE_SMS_MESSAGE", "name": "Create SMS Message", "description": "Tool to create custom SMS messages for specific widget events. Use when you need to set up automated SMS notifications for call events like completed dials, scheduled calls, or missed calls." }, { "slug": "CALLPAGE_CREATE_USER", "name": "Create User", "description": "Tool to create a new user with specified name, phone number, email and role. Use when you need to add a new admin or manager user to your CallPage account." }, { "slug": "CALLPAGE_DELETE_MANAGER", "name": "Delete Manager", "description": "Tool to delete a manager from a widget. Use when you need to remove a manager assignment after verifying both user_id and widget_id." }, { "slug": "CALLPAGE_DELETE_USER", "name": "Delete User by Id", "description": "Tool to delete a user by id. Use when you need to remove an existing user after verifying their ID." }, { "slug": "CALLPAGE_GET_ALL_MANAGERS", "name": "Get All Managers", "description": "Tool to retrieve a list of managers for a specific widget with pagination. Use when you need to page through all managers assigned to a widget after confirming its ID." }, { "slug": "CALLPAGE_GET_ALL_SMS_MESSAGES", "name": "Get All SMS Messages", "description": "Tool to retrieve all SMS messages for a widget. Use when you need to fetch both default and custom SMS templates after confirming the widget exists." }, { "slug": "CALLPAGE_GET_ALL_USERS", "name": "Get All Users", "description": "Tool to retrieve a list of all users with pagination. Use when you need to page through all users in your CallPage account to synchronize or audit user records." }, { "slug": "CALLPAGE_GET_ALL_VOICE_MESSAGES", "name": "Get All Voice Messages", "description": "Tool to retrieve all voice messages for a widget. Returns custom voice messages if configured, otherwise returns default messages. Use when you need to view or audit voice message settings." }, { "slug": "CALLPAGE_GET_ALL_WIDGETS", "name": "Get All Widgets", "description": "Tool to retrieve a list of widgets with pagination. Use when you need to page through all widgets after API authentication." }, { "slug": "CALLPAGE_GET_API_ROOT", "name": "Get API Root", "description": "Tool to get the root API greeting. Use to verify connectivity and retrieve the initial API greeting after setting the API key." }, { "slug": "CALLPAGE_GET_CALLS_HISTORY", "name": "Get Calls History", "description": "Tool to retrieve calls history with filtering and pagination. By default returns all calls for all users' widgets. Use when you need to query historical call data with optional filters for date range, status, widgets, users, tags, or phone numbers." }, { "slug": "CALLPAGE_GET_MANAGER", "name": "Get Manager", "description": "Tool to retrieve a specific manager by user_id and widget_id. Use when you need detailed information about a manager's configuration, availability, and assigned departments." }, { "slug": "CALLPAGE_GET_MANAGER_STATUS_STATISTICS", "name": "Get Manager Status Statistics", "description": "Tool to retrieve statistical data about manager statuses. Use when you need summary counts of enabled and disabled managers for a specific widget." }, { "slug": "CALLPAGE_GET_WIDGET", "name": "Get Widget", "description": "Tool to retrieve details of a specific widget by id. Use when you have a widget id and need its complete configuration." }, { "slug": "CALLPAGE_POST_CREATE_MANAGER", "name": "Create Manager", "description": "Tool to create a new manager for a widget. Use when you need to assign a user as a manager to handle calls for a specific widget." }, { "slug": "CALLPAGE_POST_CREATE_VOICE_MESSAGE", "name": "Create Voice Message", "description": "Tool to create a custom voice message for a widget. Use when you need to customize greeting messages for manager or visitor after setting widget locale." }, { "slug": "CALLPAGE_POST_CREATE_WIDGET", "name": "Create Widget", "description": "Tool to create a new widget. Use when you need to install a widget on your site and retrieve its ID." }, { "slug": "CALLPAGE_POST_DELETE_WIDGET", "name": "Delete Widget by Id", "description": "Tool to delete a widget by id. Use when you need to remove an existing widget after verifying its ID. Example: Delete widget with id 3409." }, { "slug": "CALLPAGE_POST_RESET_SMS", "name": "Reset SMS", "description": "Tool to reset SMS messages to default for a widget. Use when you need to restore default SMS templates after customization tests." }, { "slug": "CALLPAGE_POST_RESET_VOICE_MESSAGE", "name": "Reset Voice Messages", "description": "Tool to reset voice messages to default for a widget. Use when you need to clear custom messages and revert to system defaults. Example: Reset all voice messages for widget with id 123." }, { "slug": "CALLPAGE_POST_UPDATE_MANAGER", "name": "Update Manager", "description": "Tool to update an existing manager. Use when you need to modify a manager's availability or business hours after retrieving their record." }, { "slug": "CALLPAGE_POST_UPDATE_SMS", "name": "Update SMS", "description": "Tool to update a custom SMS message for a widget. Use when you need to modify custom SMS templates. Note: it's impossible to update default SMS - if you haven't created custom SMS yet, use the create endpoint first." }, { "slug": "CALLPAGE_POST_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user by ID. Use when you need to modify a user's details, phone number, role, or enabled status. This operation can override parent user depending on who makes the request." }, { "slug": "CALLPAGE_POST_UPDATE_WIDGET", "name": "Update Widget", "description": "Tool to update an existing widget. Use when you need to change widget URL, description, settings, language, or enabled state." }, { "slug": "CALLPAGE_POST_WIDGET_CALL_OR_SCHEDULE", "name": "Widget Call or Schedule", "description": "Tool to initiate or schedule a call via widget. Use when you need to call immediately or schedule at the first available timeslot through a widget." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "callpage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CallPage API Key", "type": "string", "description": "The API key obtained from the CallPage dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "campaign_cleaner", "name": "Campaign Cleaner", "logo": "https://logos.composio.dev/api/campaign_cleaner", "description": "Campaign Cleaner is a tool designed to optimize email campaigns by ensuring compatibility across email clients, improving deliverability, and enhancing overall performance.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CAMPAIGN_CLEANER_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a saved campaign by ID. Use when you need to remove a campaign after confirming its ID." }, { "slug": "CAMPAIGN_CLEANER_GET_CAMPAIGN_LIST", "name": "Get Campaign List", "description": "Tool to list all campaigns in the account. Use when you need to retrieve campaign listings for reporting or management." }, { "slug": "CAMPAIGN_CLEANER_GET_CAMPAIGN_PDF_ANALYSIS", "name": "Download Campaign PDF Analysis", "description": "Download a PDF analysis report for a processed campaign. The report includes deliverability analysis, spam score assessment, and optimization recommendations. Use this after a campaign has been submitted via send_campaign and processing is complete." }, { "slug": "CAMPAIGN_CLEANER_GET_CAMPAIGN_STATUS", "name": "Get Campaign Status", "description": "Tool to check the processing status of a submitted campaign. Use after submitting a campaign to monitor its progress." }, { "slug": "CAMPAIGN_CLEANER_GET_CREDITS", "name": "Get Credits", "description": "Tool to retrieve the number of available credits in your Campaign Cleaner account. Credits are consumed when calling the send_campaign API." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "campaign_cleaner_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Campaign Cleaner API Key", "type": "string", "description": "Your Campaign Cleaner API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "campaignhq", "name": "Campaignhq", "logo": "https://logos.composio.dev/api/campaignhq", "description": "Email marketing and campaign management platform", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "campaignhq_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate your API key from https://www.campaignhq.co/settings/integrations/api-keys/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "campayn", "name": "Campayn", "logo": "https://logos.composio.dev/api/campayn", "description": "Campayn is an email marketing platform that allows users to create, send, and manage email campaigns.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CAMPAYN_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in a specific list. Use when you need to add a contact after gathering details." }, { "slug": "CAMPAYN_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a specific contact. Use when you need to remove a contact permanently after confirming it should be deleted. Example: \"Delete contact 123\"." }, { "slug": "CAMPAYN_DELETE_LIST", "name": "Delete List", "description": "Tool to delete a specific contact list. Use when cleaning up unused lists after confirming they are no longer needed. Example: \"Delete list 123\"." }, { "slug": "CAMPAYN_DELETE_WEBFORM", "name": "Delete webform", "description": "Delete a specific webform from a contact list. Use this to permanently remove a webform that is no longer needed. Requires both the list_id and webform_id - use Get Webforms action first to find these values. Note: The API returns success even for non-existent webform IDs (idempotent delete behavior)." }, { "slug": "CAMPAYN_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID. Use when you need to fetch full contact details after confirming the contact ID." }, { "slug": "CAMPAYN_GET_CONTACTS", "name": "Get Contacts", "description": "Retrieves all contacts from a specific contact list in Campayn. Returns contact details including email, name, address, and confirmation status. Use 'Get Lists' action first to obtain the list_id. Supports optional filtering by contact name/email/company." }, { "slug": "CAMPAYN_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve all contact lists. Use when you need to fetch available lists before performing list-specific actions. Example prompt: \"List all my contact lists\"." }, { "slug": "CAMPAYN_GET_MESSAGE", "name": "Get Message Statistics", "description": "Tool to retrieve engagement statistics for a specific email message by ID. Returns views, positive responses (clicks), and negative responses (unsubscribes/bounces). Use GET_MESSAGES first to get the list of available message IDs." }, { "slug": "CAMPAYN_GET_MESSAGES", "name": "Get Messages", "description": "Tool to retrieve all email messages. Use when you need to list all messages visible to the authenticated user." }, { "slug": "CAMPAYN_GET_REPORTS", "name": "Get Reports", "description": "Tool to retrieve report URLs and metadata for sent and scheduled emails. Use when you need to fetch email delivery data, optionally filtered by a date range (Unix timestamp in seconds, UTC). Note: scheduled emails will have report_url set to null." }, { "slug": "CAMPAYN_GET_WEBFORM", "name": "Get Webform", "description": "Tool to retrieve details of a specific webform by ID. Use after confirming the webform ID when you need to fetch form details like title, type, HTML, and signup count. Example: \"Get webform 1550\"." }, { "slug": "CAMPAYN_GET_WEBFORMS", "name": "Get Webforms", "description": "Tool to retrieve all webforms for a specific contact list. Use when you need to list forms after confirming the list ID. Example prompt: \"List all webforms in list 123\"." }, { "slug": "CAMPAYN_UNSUBSCRIBE_CONTACT", "name": "Unsubscribe Contact", "description": "Tool to unsubscribe contacts from a list by contact id or email address. Use when you need to remove contacts from a mailing list. If id is provided, only that specific contact will be unsubscribed. If email is provided, all contacts on that list with that email will be unsubscribed." }, { "slug": "CAMPAYN_UPDATE_LIST", "name": "Update List", "description": "Tool to update a contact list. Use after confirming list ID and desired changes. Example: Update list 123 name to 'Newsletter Subscribers'." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "campayn_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Campayn API Key", "type": "string", "description": "Your Campayn API key, obtainable from your Campayn account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "canny", "name": "Canny", "logo": "https://logos.composio.dev/api/canny", "description": "Canny is a customer feedback management platform that helps teams collect, analyze, and prioritize user feedback to build better products.", "category": "product management", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CANNY_ADD_POST_TAG", "name": "Add Post Tag", "description": "Tool to add a tag to a specific post. Use when you need to categorize or group content by applying an existing tag." }, { "slug": "CANNY_CHANGE_POST_STATUS", "name": "Change Post Status", "description": "Tool to change a post's status. Use when you need to update a post's workflow stage and optionally notify voters." }, { "slug": "CANNY_CREATE_CHANGELOG_ENTRY", "name": "Create Changelog Entry", "description": "Tool to create and optionally publish a new changelog entry. Use when you need to add a product update record, control publish timing, and notify users. Example: \"Create changelog entry titled 'Version 1.2' with details '...' and publish immediately.\"." }, { "slug": "CANNY_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment on a post. Use when you have the authorID and postID and want to submit feedback or replies." }, { "slug": "CANNY_CREATE_OR_UPDATE_USER", "name": "Create or Update User", "description": "Creates a new user or updates an existing user in Canny. If a user with the given identifier (email, userID, or id) already exists, their profile is updated; otherwise, a new user is created. IMPORTANT: At least one of 'email', 'userID', or 'id' must be provided along with 'name'. Use cases: - Sync users from your application to Canny - Update user profiles (name, avatar, custom fields) - Associate users with companies for segmentation Example: Create user with email: {\"name\": \"Jane Doe\", \"email\": \"jane@example.com\"} Example: Sync app user: {\"name\": \"John Smith\", \"userID\": \"app_user_123\", \"email\": \"john@example.com\"}" }, { "slug": "CANNY_CREATE_POST", "name": "Create Post", "description": "Tool to create a new post (feature request or feedback) on a Canny board. Use this action when you need to submit new feedback or feature requests to a board. Requires a valid boardID (from list_boards) and authorID (from create_or_update_user or list_users)." }, { "slug": "CANNY_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag. Use when you have the boardID and tag name and need to categorize posts." }, { "slug": "CANNY_CREATE_VOTE", "name": "Create Vote", "description": "Tool to create a vote for a post. Use when you need to record or migrate a user's vote on a post, optionally setting priority or original creation time. Example: Create a vote for postID abc123 with voterID user_456." }, { "slug": "CANNY_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment. Use when moderation is required to remove a specific comment by its id. Example: \"Delete the comment with ID 553c3ef8b8cdcd1501ba1238.\"" }, { "slug": "CANNY_DELETE_POST", "name": "Delete Post", "description": "Tool to delete a post. Use when you need to permanently remove a post by its id. Example: \"Delete the post with ID 553c3ef8b8cdcd1501ba1238.\"" }, { "slug": "CANNY_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user and their comments and votes. Use when you need to fully remove a user’s account and all associated data (e.g., GDPR compliance)." }, { "slug": "CANNY_DELETE_VOTE", "name": "Delete Vote", "description": "Tool to delete a vote. Use when you need to remove a user's vote from a specific post by its id. Example: \"Delete the vote from postID abc123 for voterID user_456.\"" }, { "slug": "CANNY_LIST_BOARDS", "name": "List Boards", "description": "Tool to list all boards. Use when you need to retrieve every board for your company after authentication." }, { "slug": "CANNY_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to list categories. Use when fetching categories for a specific board by its ID." }, { "slug": "CANNY_LIST_COMMENTS", "name": "List Comments", "description": "Retrieves a paginated list of comments from Canny. Comments can be filtered by board, post, author, or company. Use this action to: - Get all comments across your Canny instance - Find comments on a specific post (using postID) - List comments from a specific board (using boardID) - See comments by a specific user (using authorID) - Track feedback from a company's users (using companyID) Returns comments ordered by creation date (newest first). Use 'limit' and 'skip' for pagination." }, { "slug": "CANNY_LIST_COMPANIES", "name": "List Companies", "description": "Tool to list companies associated with your Canny account. Use after authentication to retrieve companies with pagination support." }, { "slug": "CANNY_LIST_OPPORTUNITIES", "name": "List Opportunities", "description": "Tool to list opportunities linked to posts. Use when you need to fetch customer opportunities synced from CRM." }, { "slug": "CANNY_LIST_POSTS", "name": "List Posts", "description": "Tool to list posts with various filters. Use after selecting a board or to search/filter posts." }, { "slug": "CANNY_LIST_TAGS", "name": "List Tags", "description": "Tool to list tags. Use when fetching tags optionally filtered by board ID and handling pagination." }, { "slug": "CANNY_LIST_USERS", "name": "List Users", "description": "List all end-users in your Canny workspace with pagination support. Use this tool to: - Fetch users from your Canny workspace - Paginate through large user lists using cursor-based pagination - Get user details including email, name, admin status, and custom fields Returns a paginated list of users. Use the returned cursor to fetch subsequent pages." }, { "slug": "CANNY_LIST_VOTES", "name": "List Votes", "description": "Retrieve votes from Canny with optional filtering by board, post, or voter. Use this action to: - Get all votes on a specific post (filter by postID) - Get all votes by a specific user (filter by voterID) - Get all votes on posts in a board (filter by boardID) - List all votes across the account (no filters) Results are paginated - use 'limit' and 'skip' parameters to navigate through pages. Check 'hasMore' in the response to determine if more results are available." }, { "slug": "CANNY_RETRIEVE_BOARD", "name": "Retrieve Board", "description": "Tool to retrieve details of a board by its ID. Use when you need metadata for a specific board." }, { "slug": "CANNY_RETRIEVE_TAG", "name": "Retrieve Tag", "description": "Tool to retrieve details of a tag by its ID. Use after obtaining a valid tag ID." }, { "slug": "CANNY_RETRIEVE_USER", "name": "Retrieve User", "description": "Tool to retrieve user details by Canny user ID, app user ID, or email. Use when you have exactly one identifier and need full user information. Example: \"Retrieve user with email user@example.com\"" }, { "slug": "CANNY_UPDATE_POST", "name": "Update Post", "description": "Tool to update post details. Use when you need to change a post's title, details, ETA, images, or custom fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "canny_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret API key, found in your Canny company settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "capsule_crm", "name": "Capsule CRM", "logo": "https://logos.composio.dev/api/capsule_crm", "description": "Capsule CRM is a simple yet powerful CRM platform designed to help businesses manage customer relationships, sales pipelines, and tasks efficiently.", "category": "crm", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 109, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CAPSULE_CRM_ADD_PROJECT_PARTY", "name": "Add Project Party", "description": "Tool to add a party (person or organisation) to a project in Capsule CRM. Use when you need to associate an additional contact with a specific project beyond the primary assigned party." }, { "slug": "CAPSULE_CRM_CREATE_CATEGORY", "name": "Create Capsule CRM Category", "description": "Tool to create a new task category in Capsule CRM. Use when you need to add a new category for organizing tasks with a specific name and color." }, { "slug": "CAPSULE_CRM_CREATE_CUSTOM_FIELD_DEFINITION", "name": "Create Custom Field Definition", "description": "Tool to create a new custom field definition for parties, opportunities, or projects in Capsule CRM. Use when you need to extend standard entity fields with custom attributes." }, { "slug": "CAPSULE_CRM_CREATE_ENTRY", "name": "Create Entry", "description": "Tool to create a new note entry in Capsule CRM. Note: Only note type entries can be created via API. Emails and tasks can be viewed but not created through this endpoint. Use when you need to add a new note record linked to a party, opportunity, or project." }, { "slug": "CAPSULE_CRM_CREATE_LOST_REASON", "name": "Create Lost Reason", "description": "Tool to create a new lost reason in Capsule CRM. Use when you need to add a new reason option for tracking why opportunities were lost. Lost reasons help categorize unsuccessful deals and can be included or excluded from conversion rate calculations." }, { "slug": "CAPSULE_CRM_CREATE_MILESTONE", "name": "Create Capsule CRM Milestone", "description": "Tool to create a new milestone in Capsule CRM. Use when you need to add a new stage to a sales pipeline with defined probability and staleness criteria." }, { "slug": "CAPSULE_CRM_CREATE_OPPORTUNITY", "name": "Create Opportunity", "description": "Tool to create a new opportunity in Capsule CRM. Use when you need to track a potential sale with a party in the sales pipeline." }, { "slug": "CAPSULE_CRM_CREATE_OPPORTUNITY_PARTY", "name": "Add Party to Opportunity", "description": "Tool to add a party (person or organisation) to an opportunity in Capsule CRM. Use when you need to associate an additional party with an existing opportunity." }, { "slug": "CAPSULE_CRM_CREATE_PARTY", "name": "Create Capsule CRM Party", "description": "Tool to create a Party in Capsule CRM. Use when you have collected a person's or organisation's details and need to add a new record." }, { "slug": "CAPSULE_CRM_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project (case) in Capsule CRM. Use when you need to create a project associated with a party (person or organisation) to track work or engagements." }, { "slug": "CAPSULE_CRM_CREATE_STAGE", "name": "Create Stage", "description": "Tool to create a new stage in a board in Capsule CRM. Use when you need to add a new workflow stage to an existing board with a specific display order." }, { "slug": "CAPSULE_CRM_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Capsule CRM. Use when you need to add a task with a description and due date, optionally linking it to parties, opportunities, or projects." }, { "slug": "CAPSULE_CRM_CREATE_TITLE", "name": "Create Capsule CRM Title", "description": "Tool to create a new custom person title in Capsule CRM. Use when you need to add a new title option (e.g., 'Madam', 'Sir', 'Dr') for person records." }, { "slug": "CAPSULE_CRM_CREATE_TRACK", "name": "Create Track", "description": "Tool to create a new track in Capsule CRM by applying a track definition to a project or opportunity. Use when you need to apply a predefined sequence of tasks to a specific entity." }, { "slug": "CAPSULE_CRM_CREATE_TRACK_DEFINITION", "name": "Create Track Definition", "description": "Tool to create a new track definition in Capsule CRM. Use when you need to define a reusable sequence of tasks for business processes that can be applied to opportunities or projects." }, { "slug": "CAPSULE_CRM_DELETE_BOARD", "name": "Delete Board", "description": "Tool to delete (archive) a specific board in Capsule CRM. Use when you need to remove a board that is no longer needed." }, { "slug": "CAPSULE_CRM_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to delete a category from Capsule CRM. Use when you need to remove a category that is no longer needed." }, { "slug": "CAPSULE_CRM_DELETE_CUSTOM_FIELD_DEFINITION", "name": "Delete Custom Field Definition", "description": "Tool to delete a custom field definition from an entity type in Capsule CRM. This removes the field value from any parties, opportunities, or projects it was assigned to. Use when you need to permanently remove a custom field definition." }, { "slug": "CAPSULE_CRM_DELETE_ENTITY_TAG", "name": "Delete Entity Tag", "description": "Tool to delete a tag from an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need to remove a specific tag from all entities of a given type." }, { "slug": "CAPSULE_CRM_DELETE_ENTRY", "name": "Delete Entry", "description": "Tool to delete an entry (note, email, or task) from Capsule CRM. Use when you need to remove an entry by its ID." }, { "slug": "CAPSULE_CRM_DELETE_LOST_REASON", "name": "Delete Lost Reason", "description": "Tool to delete a lost reason from Capsule CRM. The deleted reason remains available for historical reporting but cannot be assigned to new opportunities." }, { "slug": "CAPSULE_CRM_DELETE_MILESTONE", "name": "Delete Milestone", "description": "Tool to delete a specific milestone from Capsule CRM. Use when you need to remove a milestone that is no longer needed. Note: Cannot delete a milestone while it is being used on an opportunity." }, { "slug": "CAPSULE_CRM_DELETE_OPPORTUNITY", "name": "Delete Opportunity", "description": "Tool to delete an opportunity from Capsule CRM. The opportunity can be restored within 30 days via the web interface. Use when you need to remove an opportunity." }, { "slug": "CAPSULE_CRM_DELETE_OPPORTUNITY_PARTY", "name": "Delete Opportunity Party", "description": "Tool to remove a party (person or organisation) from an opportunity in Capsule CRM. Use when you need to disassociate a contact from a specific opportunity." }, { "slug": "CAPSULE_CRM_DELETE_PARTY", "name": "Delete Party", "description": "Tool to fully delete a specific party (person or organisation) from Capsule CRM. Use when you need to completely remove a party after confirming no active references remain." }, { "slug": "CAPSULE_CRM_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project (case) from Capsule CRM. The project can be restored within 30 days via the web interface. Use when you need to remove a project." }, { "slug": "CAPSULE_CRM_DELETE_PROJECT_PARTY", "name": "Delete Project Party", "description": "Tool to remove a party (person or organisation) from a project in Capsule CRM. Use when you need to disassociate a contact from a specific project." }, { "slug": "CAPSULE_CRM_DELETE_STAGE", "name": "Delete Stage", "description": "Tool to delete a specific stage from a board in Capsule CRM. Use when you need to remove a stage that is no longer needed. Note: Cannot delete a stage while it is being used by open projects." }, { "slug": "CAPSULE_CRM_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a specific task from Capsule CRM. Use when you need to remove a task by its ID." }, { "slug": "CAPSULE_CRM_DELETE_TITLE", "name": "Delete Title", "description": "Tool to delete a specific title from Capsule CRM. Use when you need to remove a title that is no longer needed." }, { "slug": "CAPSULE_CRM_DELETE_TRACK", "name": "Delete Track", "description": "Tool to delete a specific track from Capsule CRM. Use when you need to remove a track that is no longer needed." }, { "slug": "CAPSULE_CRM_DELETE_TRACK_DEFINITION", "name": "Delete Track Definition", "description": "Tool to delete a specific track definition from Capsule CRM. Use when you need to remove a track definition that is no longer needed." }, { "slug": "CAPSULE_CRM_GET_ACTIVITY_TYPE", "name": "Get Activity Type", "description": "Tool to get a specific activity type by ID. Use when you need to retrieve details about a particular activity type including its name, icon, and whether it updates the last contacted date." }, { "slug": "CAPSULE_CRM_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to retrieve a specific attachment by ID from Capsule CRM. Returns the file content along with metadata (filename, content type). Use when you need to download an attachment that is associated with an entry (note, email, or completed task)." }, { "slug": "CAPSULE_CRM_GET_BOARD", "name": "Get Board", "description": "Tool to get a specific board by ID from Capsule CRM. Use when you need to retrieve details of a particular board including its name, description, and timestamps." }, { "slug": "CAPSULE_CRM_GET_CATEGORY", "name": "Get Category", "description": "Tool to get a specific category by ID. Use when you need to retrieve details of a particular category including its name and colour." }, { "slug": "CAPSULE_CRM_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the current authenticated user's details including id, username, name, locale, currency, status, timezone, lastLoginAt, and taskReminder settings. Use when you need to identify the current user or access their preferences and settings." }, { "slug": "CAPSULE_CRM_GET_CUSTOM_FIELD_DEFINITION", "name": "Get Custom Field Definition", "description": "Tool to get a specific custom field definition by ID from Capsule CRM. Use when you need to retrieve details about a custom field including its type, options, and configuration." }, { "slug": "CAPSULE_CRM_GET_ENTITY_TAG", "name": "Get Entity Tag", "description": "Tool to retrieve a specific tag by ID for an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need details about a specific tag associated with an entity type." }, { "slug": "CAPSULE_CRM_GET_ENTRY", "name": "Get Entry", "description": "Tool to retrieve a specific entry by ID. Use when you need to fetch details of a note, email, or task entry." }, { "slug": "CAPSULE_CRM_GET_LOST_REASON", "name": "Get Lost Reason", "description": "Tool to retrieve a specific lost reason by ID from Capsule CRM. Use when you need details about a particular lost reason, such as its name or conversion tracking status." }, { "slug": "CAPSULE_CRM_GET_MILESTONE", "name": "Get Milestone", "description": "Tool to get a specific milestone by ID from Capsule CRM. Use when you need to retrieve details of a particular milestone including its name, description, completion status, and probability." }, { "slug": "CAPSULE_CRM_GET_OPPORTUNITY", "name": "Get Opportunity", "description": "Tool to retrieve a specific opportunity by its ID from Capsule CRM. Use when you need detailed information about a single opportunity including value, milestone, and associated parties." }, { "slug": "CAPSULE_CRM_GET_PIPELINE", "name": "Get Pipeline", "description": "Tool to get a specific pipeline by ID from Capsule CRM. Use when you need to retrieve details of a particular pipeline including its name, description, and timestamps." }, { "slug": "CAPSULE_CRM_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific project (case) by its ID from Capsule CRM. Use when you need detailed information about a single project." }, { "slug": "CAPSULE_CRM_GET_STAGE", "name": "Get Stage", "description": "Tool to get a specific stage by ID from Capsule CRM. Use when you need to retrieve details of a particular stage including its name, description, board, and display order." }, { "slug": "CAPSULE_CRM_GET_TASK", "name": "Get Task", "description": "Tool to get a specific task by ID. Use when you need to retrieve full details of a task including description, due date, status, and associations." }, { "slug": "CAPSULE_CRM_GET_TRACK", "name": "Get Track", "description": "Tool to get a specific track by ID. Use when you need to retrieve details of a track including its description, date, direction, and optionally its associated tasks." }, { "slug": "CAPSULE_CRM_GET_TRACK_DEFINITION", "name": "Get Track Definition", "description": "Tool to get a specific track definition by ID from Capsule CRM. Use when you need to retrieve details of a track definition including its description, capture rule, direction, and associated task definitions." }, { "slug": "CAPSULE_CRM_GET_USER", "name": "Get User", "description": "Tool to get a specific user by ID. Use when you need to retrieve full details of a user including username, email preferences, timezone settings, and optionally their associated party information." }, { "slug": "CAPSULE_CRM_LIST_ACTIVITY_TYPE_ICONS", "name": "List Activity Type Icons", "description": "Tool to list available activity type icons in Capsule CRM. Use when you need to retrieve the set of icons available for categorizing activities or when creating/updating activity types. Returns system and custom icons with their identifiers, display names, and order." }, { "slug": "CAPSULE_CRM_LIST_ACTIVITY_TYPES", "name": "List Activity Types", "description": "Tool to list all activity types on the Capsule account. Use when you need to retrieve available activity types for categorizing activities or understanding what activity classifications are available in the CRM." }, { "slug": "CAPSULE_CRM_LIST_BOARDS", "name": "List Boards", "description": "Tool to list all boards on the Capsule CRM account. Use when you need to fetch all boards to view their names, descriptions, and metadata." }, { "slug": "CAPSULE_CRM_LIST_BOARD_STAGES", "name": "List Board Stages", "description": "Tool to list stages associated with a board in Capsule CRM. Use when you need to retrieve all stages for a specific board with optional status filtering." }, { "slug": "CAPSULE_CRM_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to list all task categories on the Capsule account. Use when you need to retrieve available categories for tasks or filter tasks by category." }, { "slug": "CAPSULE_CRM_LIST_COUNTRIES", "name": "List Countries", "description": "Tool to list all countries on the Capsule CRM account. Returns ISO country codes (alpha2, alpha3, numeric) and country names. Use when you need to reference valid country codes for addresses or other location-based data." }, { "slug": "CAPSULE_CRM_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to list all available currencies on the Capsule account. Returns ISO 4217 currency codes with their symbols and names. Use when you need to display currency options or validate currency codes for opportunities." }, { "slug": "CAPSULE_CRM_LIST_CUSTOM_FIELD_DEFINITIONS", "name": "List Custom Field Definitions", "description": "Tool to list all custom field definitions for parties, opportunities, or projects (kases). Use when you need to discover what custom fields are available for a specific entity type." }, { "slug": "CAPSULE_CRM_LIST_DELETED_OPPORTUNITIES", "name": "List Deleted Opportunities", "description": "Tool to list opportunities deleted or restricted since a given date. Use when you need to identify recently deleted or restricted opportunities." }, { "slug": "CAPSULE_CRM_LIST_DELETED_PARTIES", "name": "List deleted parties", "description": "Tool to retrieve parties deleted since a given date. Use when you need to sync deletions." }, { "slug": "CAPSULE_CRM_LIST_DELETED_PROJECTS", "name": "List Deleted Projects", "description": "Tool to list projects deleted or restricted since a given date. Use when you need to identify recently deleted or restricted projects." }, { "slug": "CAPSULE_CRM_LIST_ENTITY_ENTRIES", "name": "List Entity Entries", "description": "Tool to list entries (notes, emails, tasks) for a specific party, opportunity, or project. Use when you need to retrieve all activity entries associated with an entity." }, { "slug": "CAPSULE_CRM_LIST_ENTITY_TAGS", "name": "List Entity Tags", "description": "Tool to list all tag definitions for a specific entity type (parties, opportunities, or kases). Use when you need to retrieve available tags that can be applied to entities." }, { "slug": "CAPSULE_CRM_LIST_ENTITY_TRACKS", "name": "List Entity Tracks", "description": "Tool to list tracks applied to a specific opportunity or project. Use when you need to retrieve all tracks associated with an entity, optionally including their tasks." }, { "slug": "CAPSULE_CRM_LIST_ENTRIES_BY_DATE", "name": "List Entries By Date", "description": "Tool to list notes, emails, and completed party tasks in descending order by entry date. Use when you need the most recent entries first after authenticating." }, { "slug": "CAPSULE_CRM_LIST_GOALS", "name": "List Goals", "description": "Tool to list all goals on the Capsule account. Use when you need to retrieve goals with pagination support." }, { "slug": "CAPSULE_CRM_LIST_LOST_REASONS", "name": "List Lost Reasons", "description": "Tool to list all lost reasons on the Capsule account. Use when you need to retrieve available reasons for marking opportunities as lost." }, { "slug": "CAPSULE_CRM_LIST_MILESTONES", "name": "List Milestones", "description": "Tool to list all milestones on the Capsule account. Use when you need to retrieve available milestones for pipelines or opportunities." }, { "slug": "CAPSULE_CRM_LIST_OPPORTUNITIES", "name": "List Opportunities", "description": "Tool to list all opportunities from Capsule CRM with pagination and filtering. Use when you need to retrieve sales opportunities with optional filters for date changes or embed additional data like tags, custom fields, party details, or milestones." }, { "slug": "CAPSULE_CRM_LIST_OPPORTUNITY_PARTIES", "name": "List Opportunity Parties", "description": "Tool to list additional parties associated with an opportunity in Capsule CRM. Use when you need to retrieve contacts related to a specific opportunity." }, { "slug": "CAPSULE_CRM_LIST_OPPORTUNITY_PROJECTS", "name": "List Opportunity Projects", "description": "Tool to list projects (cases) associated with a specific opportunity in Capsule CRM. Use when you need to retrieve all projects linked to an opportunity." }, { "slug": "CAPSULE_CRM_LIST_ORG_EMPLOYEES", "name": "List Organisation Employees", "description": "Tool to list employees linked to a specific organisation (party). Use when you need to retrieve all employees under a given organisation." }, { "slug": "CAPSULE_CRM_LIST_PARTIES", "name": "List Parties", "description": "Tool to list all parties (contacts) on the account. Use when you need to fetch contacts with optional filters or embed additional related data." }, { "slug": "CAPSULE_CRM_LIST_PARTY_OPPORTUNITIES", "name": "List Party Opportunities", "description": "Tool to list all opportunities associated with a specific party in Capsule CRM. Use when you need to view all sales opportunities for a particular contact or organisation." }, { "slug": "CAPSULE_CRM_LIST_PARTY_PROJECTS", "name": "List Party Projects", "description": "Tool to list projects associated with a specific party in Capsule CRM. Use when you need to retrieve all projects linked to a contact or organisation." }, { "slug": "CAPSULE_CRM_LIST_PIPELINE_MILESTONES", "name": "List Pipeline Milestones", "description": "Tool to list milestones associated with a specific pipeline in Capsule CRM. Use when you need to retrieve all milestones for a pipeline to view their names, completion status, and probability." }, { "slug": "CAPSULE_CRM_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list all sales pipelines on the Capsule account. Pipelines contain milestones that track opportunity progress. Use when you need to retrieve available pipelines for opportunity management or to reference pipeline IDs." }, { "slug": "CAPSULE_CRM_LIST_PROJECT_PARTIES", "name": "List Project Parties", "description": "Tool to list parties associated with a specific project in Capsule CRM. Use when you need to retrieve all contacts linked to a project with optional filters and embedded data." }, { "slug": "CAPSULE_CRM_LIST_PROJECTS", "name": "List Projects", "description": "List projects (cases) from Capsule CRM with pagination and filtering options. Projects (called 'kases' in the API) are used to track work or engagements related to parties. Supports filtering by status, search terms, date modified, and embedding additional data like tags, custom fields, party details, and opportunities." }, { "slug": "CAPSULE_CRM_LIST_REST_HOOKS", "name": "List REST Hooks", "description": "Tool to list all REST hook subscriptions on the Capsule CRM account. REST hooks are webhook subscriptions that notify your application of events like party/opportunity/project created/updated/deleted. Use when you need to view existing webhook configurations or audit active subscriptions." }, { "slug": "CAPSULE_CRM_LIST_SITE", "name": "List Site", "description": "Tool to retrieve site (account) information for the authenticated Capsule CRM account. Returns the site URL, subdomain, and organization name. Use this when you need to identify which Capsule account is being accessed or retrieve basic account details." }, { "slug": "CAPSULE_CRM_LIST_STAGES", "name": "List Stages", "description": "Tool to list all stages on the Capsule CRM account. Use when you need to retrieve stages across all boards with optional status filtering and pagination." }, { "slug": "CAPSULE_CRM_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks on the Capsule account. Use when you need to retrieve tasks with filters or embedded related data." }, { "slug": "CAPSULE_CRM_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams on the Capsule CRM account. Returns team details including id, name, createdAt, and updatedAt timestamps. Optionally embed team membership information using the embed parameter." }, { "slug": "CAPSULE_CRM_LIST_TITLES", "name": "List Titles", "description": "Tool to list all custom person titles on the Capsule account. Returns title IDs and text values. Use when you need to retrieve available title options for person records or reference title IDs for other operations." }, { "slug": "CAPSULE_CRM_LIST_TRACK_DEFINITIONS", "name": "List Track Definitions", "description": "Tool to list all track definitions on the Capsule account. Use when you need to retrieve track templates that define sequences of tasks for opportunities or projects." }, { "slug": "CAPSULE_CRM_LIST_USERS", "name": "List Users", "description": "List all users on the Capsule CRM account. Returns user details including id, username, name, locale, currency, status, timezone, lastLoginAt, and taskReminder settings. Optionally embed full party details (addresses, phone numbers, emails) using the embed parameter. Use this for user management, auditing, or when you need to reference user IDs for other operations." }, { "slug": "CAPSULE_CRM_RESTORE_BOARD", "name": "Restore Board", "description": "Tool to restore a deleted board in Capsule CRM. Use when you need to recover a previously deleted board. Requires Administrator role." }, { "slug": "CAPSULE_CRM_RUN_FILTER_QUERY", "name": "Run Filter Query", "description": "Tool to run structured filter queries on parties, opportunities or kases. Use when you need to retrieve entities matching specific filter conditions." }, { "slug": "CAPSULE_CRM_SEARCH_OPPORTUNITIES", "name": "Search Opportunities", "description": "Tool to search for opportunities in Capsule CRM by query string. Use when you need to find specific opportunities by searching their names or descriptions." }, { "slug": "CAPSULE_CRM_SEARCH_PARTIES", "name": "Search Parties", "description": "Tool to search for parties (contacts/organisations) in Capsule CRM by query string. Use when you need to find specific parties by searching their names, contact info, or tags." }, { "slug": "CAPSULE_CRM_SEARCH_PROJECTS", "name": "Search Projects", "description": "Tool to search for projects (cases) in Capsule CRM by query string. Use when you need to find specific projects by searching their names or descriptions." }, { "slug": "CAPSULE_CRM_UPDATE_BOARD", "name": "Update Capsule CRM Board", "description": "Tool to update an existing board in Capsule CRM. Use when you need to modify the name or description of a board. Requires Administrator role on the Capsule account." }, { "slug": "CAPSULE_CRM_UPDATE_CATEGORY", "name": "Update Capsule CRM Category", "description": "Tool to update an existing category in Capsule CRM. Use when you need to modify the name or color of a category." }, { "slug": "CAPSULE_CRM_UPDATE_CUSTOM_FIELD_DEFINITION", "name": "Update Custom Field Definition", "description": "Tool to update an existing custom field definition in Capsule CRM. Use when you need to modify the name or data tag association of a custom field for parties, opportunities, or projects." }, { "slug": "CAPSULE_CRM_UPDATE_ENTITY_TAG", "name": "Update Entity Tag", "description": "Tool to update an existing tag for an entity type (parties, opportunities, or kases) in Capsule CRM. Use when you need to modify the name of a tag." }, { "slug": "CAPSULE_CRM_UPDATE_ENTRY", "name": "Update Entry", "description": "Tool to update an existing entry (note, email, or task) in Capsule CRM. Use when you need to modify the content of an entry or manage its attachments." }, { "slug": "CAPSULE_CRM_UPDATE_LOST_REASON", "name": "Update Capsule CRM Lost Reason", "description": "Tool to update an existing lost reason in Capsule CRM. Use when you need to modify the name or conversion tracking setting of a lost reason after confirming its ID." }, { "slug": "CAPSULE_CRM_UPDATE_MILESTONE", "name": "Update Capsule CRM Milestone", "description": "Tool to update an existing milestone in Capsule CRM. Use when you need to modify the name, description, or probability of a milestone stage in the sales pipeline." }, { "slug": "CAPSULE_CRM_UPDATE_OPPORTUNITY", "name": "Update Opportunity", "description": "Tool to update an existing opportunity in Capsule CRM. Use when you need to modify details such as name, value, milestone, probability, or custom fields after confirming the opportunity ID." }, { "slug": "CAPSULE_CRM_UPDATE_PARTY", "name": "Update Capsule CRM Party", "description": "Tool to update an existing person or organisation (Party) in Capsule CRM. Use when you need to modify specific fields of a party after confirming its ID. Example: \"Update party 11587 to remove phone number 12136 and add a new work email.\"" }, { "slug": "CAPSULE_CRM_UPDATE_PIPELINE", "name": "Update Capsule CRM Pipeline", "description": "Tool to update an existing pipeline in Capsule CRM. Use when you need to modify the name or description of a pipeline." }, { "slug": "CAPSULE_CRM_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project (case) in Capsule CRM. Use when you need to modify project details such as name, description, status, or custom fields after confirming the project ID." }, { "slug": "CAPSULE_CRM_UPDATE_STAGE", "name": "Update Capsule CRM Stage", "description": "Tool to update an existing stage in Capsule CRM. Use when you need to modify the name, description, or display order of a stage within a board. Requires Administrator role on the Capsule account." }, { "slug": "CAPSULE_CRM_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in Capsule CRM. Use when you need to modify task details, change status to completed, or update due dates." }, { "slug": "CAPSULE_CRM_UPDATE_TRACK", "name": "Update Capsule CRM Track", "description": "Tool to update an existing track in Capsule CRM. Use when you need to modify the description or trackDateOn of a track instance. Only description and trackDateOn can be modified." }, { "slug": "CAPSULE_CRM_UPDATE_TRACK_DEFINITION", "name": "Update Capsule CRM Track Definition", "description": "Tool to update an existing track definition in Capsule CRM. Use when you need to modify the description or manage task definitions within a track." }, { "slug": "CAPSULE_CRM_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user in Capsule CRM. Use when you need to modify user preferences such as task reminders, locale, currency, timezone, or email settings." }, { "slug": "CAPSULE_CRM_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Tool to upload an attachment to Capsule CRM. Returns a token that can be used to associate the attachment with entries when creating or updating them. Maximum file size is 25MB." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "capsule_crm_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "capsule_crm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Capsule CRM API Token", "type": "string", "description": "Your Capsule API token. Click your name (top right) → My Preferences → API Authentication Tokens → Generate new token. Copy it right away — it's only shown in full once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "captain_data", "name": "Captain Data", "logo": "https://logos.composio.dev/api/captain_data", "description": "Captain Data provides access to 500M+ professional profiles and 50M+ companies for data enrichment and lead generation", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "captain_data_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Captain Data API key from Developer Settings at https://app.captaindata.com/developers", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "carbone", "name": "Carbone", "logo": "https://logos.composio.dev/api/carbone", "description": "Carbone is a fast and simple report generator that converts JSON data into various document formats such as PDF, DOCX, XLSX, ODT, and more, using templates.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CARBONE_DELETE_TEMPLATE", "name": "Delete Carbone Template", "description": "Permanently delete a template from the Carbone server by its 64-character hexadecimal template ID. This action is irreversible. Ensure you have the correct template ID before deleting." }, { "slug": "CARBONE_DOWNLOAD_TEMPLATE", "name": "Download Template", "description": "Tool to download a template from Carbone by template ID. Use when you need to retrieve the original template file." }, { "slug": "CARBONE_GENERATE_REPORT", "name": "Generate Carbone Report", "description": "Tool to generate a Carbone report from a template and JSON data. Use when you need to render documents in various formats." }, { "slug": "CARBONE_GET_STATUS", "name": "Get Carbone Server Status", "description": "Tool to retrieve the current status and health of the Carbone server. Use before generating reports to ensure the service is operational." }, { "slug": "CARBONE_LIST_TEMPLATE_CATEGORIES", "name": "List Template Categories", "description": "Tool to retrieve a list of all categories used in templates. Categories function like folders for organizing templates. Use when you need to see available template groupings." }, { "slug": "CARBONE_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of templates from Carbone storage with filtering, search, and cursor-based pagination. Use when you need to find templates, search by name or ID, or iterate through all deployed templates." }, { "slug": "CARBONE_LIST_TEMPLATE_TAGS", "name": "List Template Tags", "description": "Tool to list all tags currently used in templates. Use when you need to discover available tags for categorizing or filtering templates by document type or version." }, { "slug": "CARBONE_RENDER_TEMPLATE_DIRECT", "name": "Render Template Direct", "description": "Tool to generate a document by uploading a base64-encoded template and data in a single API call. Use when you need to render documents without uploading templates separately." }, { "slug": "CARBONE_SET_API_VERSION", "name": "Set Carbone API Version", "description": "Tool to set the Carbone API version to be used for subsequent requests. Use before rendering or managing templates to ensure correct version is applied." }, { "slug": "CARBONE_UPDATE_TEMPLATE", "name": "Update Template Metadata", "description": "Tool to update metadata and attributes of an existing Carbone template. Use when you need to modify template name, comment, tags, category, or control version deployment and lifecycle." }, { "slug": "CARBONE_UPLOAD_TEMPLATE", "name": "Upload a template", "description": "Upload a template file to the Carbone server to obtain a template ID for document generation. Supported template formats: DOCX, XLSX, PPTX, ODT, ODS, ODP, ODG, XHTML, IDML, HTML, or XML. Templates can contain placeholders like {d.fieldname} that will be replaced with data during report generation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "carbone_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Carbone API Key", "type": "string", "description": "Your Carbone API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cardly", "name": "Cardly", "logo": "https://logos.composio.dev/api/cardly", "description": "Cardly helps businesses create great engagement with customers by getting out of inboxes and into mailboxes.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CARDLY_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Tool to add a new contact list. Use after defining name and optional custom fields, before populating the list with contacts." }, { "slug": "CARDLY_CREATE_INVITATION", "name": "Create Invitation", "description": "Tool to send an invitation to use your organisation portal. Use when you need to grant access to a new user by their email address. If the email already has access, the API will return an appropriate error." }, { "slug": "CARDLY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook subscription. Use when you need Cardly to notify your application via HTTP POST for specific events." }, { "slug": "CARDLY_DELETE_INVITATION", "name": "Delete Invitation", "description": "Tool to delete an invitation by unique ID, immediately invalidating it for acceptance. Use when you need to revoke a pending invitation using its ID." }, { "slug": "CARDLY_DELETE_INVITATION_BY_EMAIL", "name": "Delete Invitation by Email", "description": "Deletes a pending invitation by email address, immediately invalidating it and preventing acceptance. This action is idempotent - deleting a non-existent invitation returns success. Use when you need to revoke access before an invitation is accepted, such as when correcting mistakes or revoking access for security reasons. Note: In test mode, the API returns an empty data object instead of the deleted invitation details." }, { "slug": "CARDLY_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user by unique ID, immediately revoking their access to your organisation portal. Use when removing user access is required. Cannot remove users with administrator privileges - attempting to delete an admin will fail." }, { "slug": "CARDLY_DELETE_USER_BY_EMAIL", "name": "Delete User by Email", "description": "Deletes a user by email address, immediately revoking their access to your organisation portal. This action cannot remove users with administrator privileges. Use when you need to revoke user access, such as when employees leave or access needs to be terminated. The API returns a 404 if no matching user is found." }, { "slug": "CARDLY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook. Use after confirming the webhook ID to immediately cease all activity and event subscriptions for that webhook." }, { "slug": "CARDLY_ECHO_REQUEST", "name": "Echo Request", "description": "Tool to echo all request parameters, body, and headers for debugging purposes. Use when validating authentication or testing API connectivity without affecting account data." }, { "slug": "CARDLY_GENERATE_PREVIEW", "name": "Generate Preview", "description": "Tool to generate a low-quality, watermarked preview document for a card. Use after confirming artwork and template details to estimate costs and delivery." }, { "slug": "CARDLY_GET_ARTWORK", "name": "Get Artwork", "description": "Tool to retrieve information on a specific piece of artwork by its unique ID. Use when you need to fetch detailed artwork data including preview images, media specifications, and metadata. The ID can be obtained from the List Artwork action." }, { "slug": "CARDLY_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to get details on an existing webhook. Use this to retrieve information about a webhook's configuration, including its target URL, subscribed events, status, and metadata." }, { "slug": "CARDLY_LIST_ARTWORK", "name": "List Artwork", "description": "Tool to retrieve the currently available artwork for your organisation. Use when you need to list and paginate artwork items, optionally filtering to only your own artwork." }, { "slug": "CARDLY_LIST_CONTACT_LISTS", "name": "List Contact Lists", "description": "Tool to retrieve all active contact lists for your organization. Use when you need to list and paginate contact lists with their custom fields and automation rules." }, { "slug": "CARDLY_LIST_CREDIT_HISTORY", "name": "List Credit History", "description": "Retrieves the account's credit transaction history showing all credits and debits. Returns a paginated list of balance changes with timestamps, amounts, and descriptions. Use to audit spending, review signup bonuses, track refunds, or investigate balance changes. Filter by date range using effectiveTime parameters. Supports standard pagination with limit and offset." }, { "slug": "CARDLY_LIST_DOODLES", "name": "List Doodles", "description": "Retrieve your currently available doodles from Cardly. Returns doodle metadata including name and restriction status. Use this to discover available doodle designs before creating cards." }, { "slug": "CARDLY_LIST_FONTS", "name": "List Fonts", "description": "List available fonts for handwriting and text personalization in Cardly cards. Returns font metadata including name, category, variants, and whether the font supports humanisation. Use this to discover font options before creating cards or generating previews." }, { "slug": "CARDLY_LIST_GIFT_CREDIT_HISTORY", "name": "List Gift Credit History", "description": "Lists gift credit history records for your organization with pagination and optional time-based filtering. Gift credits are promotional credits that can be applied to orders. This action retrieves a history of gift credit additions, deductions, and balance changes. Returns empty results if no gift credit history exists." }, { "slug": "CARDLY_LIST_INVITATIONS", "name": "List Invitations", "description": "Tool to retrieve active invitations for your organisation with optional filters. Use when you need to audit invited users and their statuses before sending new invitations or revoking access." }, { "slug": "CARDLY_LIST_MEDIA", "name": "List Media", "description": "Tool to retrieve the currently available media sizes for product artwork. Use when you need to explore or validate media options before creating artwork." }, { "slug": "CARDLY_LIST_ORDERS", "name": "List Orders", "description": "Retrieves a paginated list of orders placed by your organization. Returns detailed order information including customer details, costs, items, shipping info, and delivery tracking. Use optional limit and offset parameters to control pagination." }, { "slug": "CARDLY_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve your currently available templates from Cardly. Use to list and paginate templates for selection in card sends." }, { "slug": "CARDLY_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all users associated with your account. Use when you need to list and paginate user accounts." }, { "slug": "CARDLY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Retrieves all webhooks configured for your organization, including their status, target URLs, subscribed events, and delivery statistics. Use this to audit existing webhooks, monitor their health, or get webhook IDs for updates/deletions." }, { "slug": "CARDLY_LIST_WRITING_STYLES", "name": "List Writing Styles", "description": "Tool to list available writing styles. Use when you need to retrieve writing styles available for handwriting personalization." }, { "slug": "CARDLY_RETRIEVE_ACCOUNT_BALANCE", "name": "Retrieve Account Balance", "description": "Tool to retrieve the current account and gift credit balances for your organisation. Use after authenticating to verify available credit before placing orders." }, { "slug": "CARDLY_RETRIEVE_ORDER", "name": "Retrieve Order", "description": "Retrieves detailed information about a specific order by its ID. Returns complete order data including customer details, items, costs, delivery information, and tracking details. Use this after obtaining an order ID from the List Orders action or from a known order reference." }, { "slug": "CARDLY_RETRIEVE_USER", "name": "Retrieve User", "description": "Retrieves detailed information about a specific user account by ID. Returns user profile data including name, email, status, and permissions. Use list_users to get available user IDs first." }, { "slug": "CARDLY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook’s settings, including target URL and events. Use after retrieving existing webhook to apply configuration changes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cardly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cardly API Key", "type": "string", "description": "Your unique API key provided by Cardly.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cartes", "name": "Cartes", "logo": "https://logos.composio.dev/api/cartes", "description": "Create and manage collaborative maps with custom markers", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cartes_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your personal access token from Cartes.io account settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "castingwords", "name": "Castingwords", "logo": "https://logos.composio.dev/api/castingwords", "description": "CastingWords offers high-quality, human-powered transcription services with a RESTful API for seamless integration into various workflows.", "category": "transcription", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CASTINGWORDS_CANCEL_AUDIOFILE", "name": "Cancel and Refund Audio File", "description": "Tool to cancel an ordered audio file and issue a refund if applicable. Use when no transcription work has been done on the file (Pre-Processing, Audio Processing, Error states)." }, { "slug": "CASTINGWORDS_GET_PREPAY_BALANCE", "name": "Get Prepay Balance", "description": "Tool to retrieve the current prepay balance for the account. Use when you need to check available funds before placing new transcription orders." }, { "slug": "CASTINGWORDS_GET_TRANSCRIPT", "name": "Get Transcript", "description": "Tool to retrieve the transcript for a given audiofile in the requested format (txt, doc, rtf, or html). Use after a transcription order has been completed." }, { "slug": "CASTINGWORDS_GET_WEBHOOK", "name": "Get registered webhook URL", "description": "Tool to retrieve the currently registered webhook URL for account notifications. Use when you need to verify your webhook setup." }, { "slug": "CASTINGWORDS_ORDER_TRANSCRIPT", "name": "Order Transcript", "description": "Create a transcription order for audio/video files at publicly accessible URLs. Returns order ID and audiofile IDs for tracking. Requires prepaid balance for non-test orders. Use test=true to validate URLs without charges." }, { "slug": "CASTINGWORDS_ORDER_UPGRADES", "name": "Order Upgrades", "description": "Tool to order an upgrade for a specific audio file. Use after transcription is complete to add items like timestamps or extra editing. Example: 'Order timestamps for file 12345'." }, { "slug": "CASTINGWORDS_REGISTER_WEBHOOK", "name": "Register Webhook", "description": "Registers a webhook URL to receive CastingWords event notifications. When events occur (e.g., transcript completion, refund issued, difficult audio), CastingWords will POST to your registered URL with event details. Use CASTINGWORDS_GET_WEBHOOK to verify the current webhook, and CASTINGWORDS_TEST_WEBHOOK to test notifications." }, { "slug": "CASTINGWORDS_SKU_LIST", "name": "List Available SKUs", "description": "Retrieves all available CastingWords transcription service SKUs with pricing. Use this tool to discover available services (transcription, captions, etc.) and their per-minute prices before placing an order. Returns SKU codes needed for order placement." }, { "slug": "CASTINGWORDS_TEST_WEBHOOK", "name": "Test Webhook Call", "description": "Tool to request a test webhook call for a specific event type. Use after registering a webhook URL to ensure webhook notifications are functioning properly." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "castingwords_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key required for authenticating requests to the CastingWords API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "castmagic", "name": "Castmagic", "logo": "https://logos.composio.dev/api/castmagic", "description": "Audio transcription platform with speaker diarization support for 18 languages", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "castmagic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Secret", "type": "string", "description": "API secret generated from the Castmagic developer dashboard at https://app.castmagic.io/developer", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cats", "name": "Cats", "logo": "https://logos.composio.dev/api/cats", "description": "An API providing access to a vast collection of cat images, breeds, and facts.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CATS_CREATE_FAVOURITE", "name": "Create Favourite", "description": "Tool to save an image as a favourite to your account. Use when you want to mark a cat image as a favourite for later retrieval or filtering by user ID." }, { "slug": "CATS_CREATE_VOTE", "name": "Create Vote", "description": "Tool to vote on a cat image. Send image_id and value (1 for upvote, 0 for downvote) to register your vote. Optionally include sub_id for user tracking." }, { "slug": "CATS_DELETE_FAVOURITE", "name": "Delete Favourite", "description": "Tool to delete a favourite from your account by its ID. Use when you need to remove a previously saved favourite image from your Cat API account." }, { "slug": "CATS_DELETE_IMAGE", "name": "Delete Image", "description": "Delete an uploaded image from your account by its ID. Use this when you need to remove an image you previously uploaded to The Cat API." }, { "slug": "CATS_DELETE_VOTE", "name": "Delete Vote", "description": "Tool to delete a vote from your account by its ID. Use when you need to remove a previously submitted vote for a cat image." }, { "slug": "CATS_GET_BREED", "name": "Get Cat Breed by ID", "description": "Tool to get detailed information about a specific cat breed by its ID. Use when you need comprehensive details about a particular breed including temperament, origin, characteristics, and URLs." }, { "slug": "CATS_GET_FAVOURITE", "name": "Get Favourite by ID", "description": "Tool to retrieve a specific favourite by its unique ID. Returns full favourite details including user ID, image ID, creation timestamp, and associated image data. Use when you need to fetch a particular favourite's information or verify favourite existence." }, { "slug": "CATS_GET_IMAGE", "name": "Get Cat Image by ID", "description": "Tool to retrieve a specific cat image by its unique ID. Returns full image details including URL, dimensions, and breed information if available. Use when you need to fetch a particular image's data or verify image existence." }, { "slug": "CATS_GET_IMAGE_ANALYSIS", "name": "Get Image Analysis", "description": "Get machine learning analysis results for an uploaded image. Returns labels with confidence scores, bounding boxes for detected objects, and content moderation results from ML vendors. Note: GIF images are not supported for analysis." }, { "slug": "CATS_GET_IMAGE_BREEDS", "name": "Get Image Breeds", "description": "Tool to retrieve breed information associated with a specific cat image. Use when you need to identify which breed(s) are shown in a particular image from The Cat API." }, { "slug": "CATS_GET_PORTALS", "name": "Get Cat Breeds", "description": "Retrieves a paginated list of cat breeds from The Cat API. Returns comprehensive breed information including name, description, temperament, origin, life span, and weight. Use this to browse available cat breeds or search for specific breed information." }, { "slug": "CATS_GET_VOTE", "name": "Get Vote by ID", "description": "Retrieves a specific vote by its unique ID from The Cat API. Returns detailed vote information including the image ID, vote value, timestamp, and optional metadata like sub_id and country code. Use this when you need to fetch details about a specific vote." }, { "slug": "CATS_LIST_CATEGORIES", "name": "List Image Categories", "description": "Retrieves a list of all active image categories from The Cat API. Categories include hats, sunglasses, boxes, sinks, and more. Use category IDs when searching or filtering images by category." }, { "slug": "CATS_LIST_FAVOURITES", "name": "List Favourites", "description": "Tool to get all favourites belonging to your account. Use when you need to retrieve saved cat images, optionally filtered by sub_id. Supports pagination to browse through large collections of favourites." }, { "slug": "CATS_LIST_UPLOADED_IMAGES", "name": "List Uploaded Images", "description": "Tool to get all images uploaded to your account via /images/upload. Supports pagination and filtering by sub_id or original filename. Use this to retrieve your uploaded images, check if a file already exists, or filter by user identifiers. The API returns images in order of upload date." }, { "slug": "CATS_LIST_VOTES", "name": "List Votes", "description": "Tool to retrieve all votes you have created. Returns a paginated list of votes with image IDs, vote values, and metadata. Use this to view voting history, filter by user segment (sub_id), or analyze vote patterns." }, { "slug": "CATS_SEARCH_BREEDS", "name": "Search Cat Breeds", "description": "Search for cat breeds by name. Use the 'q' parameter with part or all of the breed name to find matching breeds. Returns breed details including temperament, origin, and characteristics." }, { "slug": "CATS_SEARCH_IMAGES", "name": "Search Cat Images", "description": "Search for random cat images with optional filters. Filter by breed availability, size, and file type. Returns an array of image objects with URLs and metadata. Use this to find cat images for display, testing, or content generation. The default behavior returns 1 random cat image." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "thecatapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cat API Key", "type": "string", "description": "Your unique API key for authenticating requests to The Cat API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cdr_platform", "name": "Cdr Platform", "logo": "https://logos.composio.dev/api/cdr_platform", "description": "CDR Platform provides an API for purchasing carbon dioxide removal services.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CDR_PLATFORM_GET_CDR_PRICE", "name": "Get CDR Price", "description": "Calculate the cost for carbon dioxide removal (CDR) services. Specify one or more removal methods (e.g., 'bio-oil', 'kelp-sinking') with their respective amounts in kilograms to get detailed pricing including removal costs and fees. Returns costs in cents (USD). Use this to estimate pricing before making purchases." }, { "slug": "CDR_PLATFORM_GET_HEALTH_CHECK", "name": "Get Health Check", "description": "Tool to perform a health check of the CDR Platform service. Use when you need to verify API and database connectivity and core service status." }, { "slug": "CDR_PLATFORM_POST_CDR_PURCHASE", "name": "Post CDR Purchase", "description": "Tool to initiate the purchase of carbon dioxide removal credits. Use after confirming cost and methods to finalize the order." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cdr_platform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CDR Platform API Key", "type": "string", "description": "The API key used for authenticating requests to the CDR Platform API. You can generate and manage API keys in your organization settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "celigo", "name": "Celigo", "logo": "https://logos.composio.dev/api/celigo", "description": "Integration platform as a service (iPaaS) for connecting applications and automating workflows", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 117, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CELIGO_ASSIGN_EXPORT_ERROR", "name": "Assign Export Error", "description": "Tool to assign an export error to a user in Celigo. Use when you need to assign responsibility for fixing or reviewing integration errors to a specific team member." }, { "slug": "CELIGO_CLONE_EXPORT", "name": "Clone Export", "description": "Tool to clone a specific export to create a copy. Use when you need to duplicate an existing export configuration with new or same connection mappings." }, { "slug": "CELIGO_CLONE_FLOW", "name": "Clone Flow", "description": "Tool to clone a specific flow to create a copy. Use when you need to duplicate an existing flow configuration to a different integration." }, { "slug": "CELIGO_CLONE_IMPORT", "name": "Clone Import", "description": "Tool to clone a specific import to create a copy with remapped connections. Use when you need to duplicate an existing import configuration with different connection IDs." }, { "slug": "CELIGO_CLONE_INTEGRATION", "name": "Clone Integration", "description": "Tool to clone a specific integration to create a copy. Use when you need to duplicate an existing integration and all its flows." }, { "slug": "CELIGO_CREATE_CONNECTION", "name": "Create Connection", "description": "Tool to create a new connection in Celigo to store credentials and application access information. Use when you need to set up a new API connection, configure authentication, or establish integration endpoints. Supports multiple connection types including REST, FTP, Salesforce, and NetSuite." }, { "slug": "CELIGO_CREATE_EXPORT", "name": "Create Export", "description": "Tool to create a new export in Celigo for extracting data from an application. Use when you need to set up a new data export configuration, such as webhook exports, delta exports, or test exports." }, { "slug": "CELIGO_CREATE_FILE_DEFINITION", "name": "Create File Definition", "description": "Tool to create a file definition in Celigo for defining data file structure and format. Use when you need to specify how data files should be structured for import or export operations. Supports both fixed-width and delimited (CSV-style) file formats." }, { "slug": "CELIGO_CREATE_FLOW", "name": "Create Flow", "description": "Tool to create a new flow in Celigo that composes export and import components together. Use when you need to establish a data integration pipeline between systems. A flow connects a source (export) to a destination (import) and can be scheduled or triggered on-demand." }, { "slug": "CELIGO_CREATE_I_CLIENT", "name": "Create iClient", "description": "Tool to create a new iClient for SmartConnector authentication in Celigo. Use when you need to set up authentication credentials for connecting to external APIs. iClients store provider-specific authentication data required for API integrations." }, { "slug": "CELIGO_CREATE_IMPORT", "name": "Create Import", "description": "Tool to create a new import for inserting data into an application. Use when you need to set up a data import configuration with HTTP endpoint details." }, { "slug": "CELIGO_CREATE_INTEGRATION", "name": "Create Integration", "description": "Tool to create a new integration in Celigo to group flows together. Use when you need to organize related flows under a single integration container for better management and structure." }, { "slug": "CELIGO_CREATE_INTEGRATION_REVISION", "name": "Create Integration Revision", "description": "Tool to create a snapshot revision of a specific integration. Use when you need to capture the current state of an integration for version control or backup purposes." }, { "slug": "CELIGO_CREATE_SCRIPT", "name": "Create Script", "description": "Tool to create a new custom JavaScript script in Celigo for data transformation operations. Use when you need to add a script for custom data processing, validation, or transformation logic." }, { "slug": "CELIGO_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in Celigo for organizing and categorizing resources. Use when you need to create a tag that can be applied to integrations, flows, or other Celigo resources." }, { "slug": "CELIGO_DELETE_ALL_RESOURCE_STATE", "name": "Delete All Resource State", "description": "Tool to delete all state keys and values stored under a specific resource. Use when you need to clear all state data for a resource. This is a destructive operation - be careful!" }, { "slug": "CELIGO_DELETE_ALL_STATE", "name": "Delete All State", "description": "Tool to delete all global state keys and values in Celigo. Use when you need to clear all stored state data. WARNING: This operation is destructive and irreversible - it removes ALL global state keys and values from the account." }, { "slug": "CELIGO_DELETE_CONNECTION", "name": "Delete Connection", "description": "Tool to delete a specific connection in Celigo. Use when you need to permanently remove a connection from your integration. Returns success status on completion." }, { "slug": "CELIGO_DELETE_EXPORT", "name": "Delete Export", "description": "Tool to delete a specific export from Celigo. Use when you need to permanently remove an export by its ID. Returns a success confirmation." }, { "slug": "CELIGO_DELETE_FLOW", "name": "Delete Flow", "description": "Tool to delete a specific flow from Celigo. Use when you need to permanently remove a flow. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_ICLIENT", "name": "Delete iClient", "description": "Tool to delete a specific iClient from Celigo. Use when you need to permanently remove an iClient by its ID. Returns a success confirmation." }, { "slug": "CELIGO_DELETE_IMPORT", "name": "Delete Import", "description": "Tool to delete a specific import from Celigo integrator.io. Use when you need to remove an import configuration. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_INTEGRATION", "name": "Delete Integration", "description": "Tool to delete a specific integration from Celigo integrator.io. Use when you need to permanently remove an integration. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_RESOLVED_ERRORS", "name": "Delete Resolved Errors", "description": "Tool to delete resolved errors for a specific export in Celigo. Use when you need to clear resolved errors from an export's error log." }, { "slug": "CELIGO_DELETE_RESOURCE_STATE_VALUE", "name": "Delete Resource State Value", "description": "Tool to delete the resource-specific key and value from state. Use when you need to remove state data for a specific resource like imports, exports, flows, or connections." }, { "slug": "CELIGO_DELETE_SCRIPT", "name": "Delete Script", "description": "Tool to delete a specific script from Celigo. Use when you need to permanently remove a script configuration. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_STATE_VALUE", "name": "Delete State Value", "description": "Tool to delete the specified state key and its value. Use when you need to remove state data from the Celigo Integrator platform. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a specific tag from Celigo integrator.io. Use when you need to permanently remove a tag. This operation is destructive and cannot be undone." }, { "slug": "CELIGO_DELETE_USER", "name": "Delete User", "description": "Tool to delete a specific user from your Celigo account. Use when you need to remove a user (account share) from the account." }, { "slug": "CELIGO_EVALUATE_VIRTUAL_IMPORT_MAP", "name": "Evaluate Virtual Import Map", "description": "Evaluate the mapping step of a virtual import and return post-mapped records. Use when you need to test field mapping transformations without executing the full import process." }, { "slug": "CELIGO_EXECUTE_VIRTUAL_EXPORT", "name": "Execute Virtual Export", "description": "Execute a virtual export using a connection by posting the export model. Use when you need to trigger an export operation for a specific connection with custom configuration (HTTP, NetSuite, or Salesforce)." }, { "slug": "CELIGO_EXECUTE_VIRTUAL_IMPORT", "name": "Execute Virtual Import", "description": "Tool to execute a virtual import by posting import configuration and data to a connection. Use when you need to send data to an external API through a Celigo connection with field mapping transformations." }, { "slug": "CELIGO_EXPORT_VIRTUAL_PAGED", "name": "Virtual Export with Paging", "description": "Tool to execute a virtual export with paging support for Celigo connections. Use when you need to retrieve data from external systems in paginated chunks. For subsequent pages, include the pagedExportState from the previous response." }, { "slug": "CELIGO_GENERATE_STRUCTURED_FILE", "name": "Generate Structured File", "description": "Tool to generate sample EDI data or structured files from input data. Use when you need to convert JSON data into a delimited or fixed-width file format based on defined rules." }, { "slug": "CELIGO_GET_CONNECTION", "name": "Get Connection by ID", "description": "Tool to get a specific connection by its ID. Use when you need to retrieve connection details including configuration, authentication settings, and type information." }, { "slug": "CELIGO_GET_CONNECTION_AUDIT", "name": "Get Connection Audit Logs", "description": "Tool to retrieve audit logs for a specific connection. Use when you need to track changes, view history, or investigate modifications made to a connection." }, { "slug": "CELIGO_GET_CONNECTION_DEBUG_LOGS", "name": "Get Connection Debug Logs", "description": "Tool to retrieve debug logs for a connection by its ID. Use optional resource_id parameter to filter logs by a specific import or export." }, { "slug": "CELIGO_GET_CONNECTION_DEPENDENCIES", "name": "Get Connection Dependencies", "description": "Tool to retrieve all resources using or used by a specific connection. Use when you need to understand the dependencies of a Celigo connection, including imports, flows, and integrations that rely on it." }, { "slug": "CELIGO_GET_EDI_PROFILES", "name": "Get EDI Profiles", "description": "Tool to retrieve all EDI profiles for the account. Use when you need to list Electronic Data Interchange (EDI) and B2B configurations. Returns empty array if no profiles are configured (HTTP 204)." }, { "slug": "CELIGO_GET_EXPORT", "name": "Get Export", "description": "Tool to retrieve a specific export by its ID from Celigo Integrator.io. Use when you need to fetch export configuration details including lifecycle hooks and provider settings." }, { "slug": "CELIGO_GET_EXPORT_AUDIT", "name": "Get Export Audit Log", "description": "Tool to retrieve audit logs for a specific export in Celigo. Use when you need to track changes, modifications, or events related to an export resource. Returns a detailed history of field changes, events, timestamps, and user information." }, { "slug": "CELIGO_GET_EXPORT_ERRORS", "name": "Get Export Errors", "description": "Tool to retrieve all open errors for a specific export within a flow. Use when you need to monitor export health, debug issues, or identify failed operations that require attention." }, { "slug": "CELIGO_GET_FILE_DEFINITION", "name": "Get File Definition", "description": "Tool to retrieve a specific file definition by its ID from Celigo Integrator.io. Use when you need to fetch file definition details including name, type, and configuration." }, { "slug": "CELIGO_GET_FILE_DEFINITIONS", "name": "Get File Definitions", "description": "Tool to retrieve all file definitions from Celigo. Use when you need to list file format definitions used for data transformation in integrations." }, { "slug": "CELIGO_GET_FLOW", "name": "Get Flow by ID", "description": "Tool to retrieve a specific Celigo flow by its ID. Use when you need to fetch flow details, configuration, or metadata. Returns complete flow information including name, status, scheduling, and orchestration settings." }, { "slug": "CELIGO_GET_FLOW_AUDIT", "name": "Get Flow Audit Logs", "description": "Tool to retrieve audit logs for a specific flow. Use when you need to track changes, events, and modifications made to a flow resource over time. Returns detailed history including field changes, timestamps, and user information." }, { "slug": "CELIGO_GET_FLOW_DEPENDENCIES", "name": "Get Flow Dependencies", "description": "Tool to retrieve all resources using or used by a specific flow. Use when you need to understand the dependency graph of a Celigo flow, including imports, exports, connections, and other flows or integrations that reference it." }, { "slug": "CELIGO_GET_FLOW_DESCENDANTS", "name": "Get Flow Descendants", "description": "Tool to retrieve all descendant resources of a specific flow. Use when you need to identify imports and exports that are children of a flow." }, { "slug": "CELIGO_GET_FLOW_LAST_EXPORT_DATETIME", "name": "Get Flow Last Export Datetime", "description": "Tool to retrieve the last export datetime for a specific Celigo flow. Use when you need to check when a flow last exported data. Returns the timestamp or null if no export has occurred yet." }, { "slug": "CELIGO_GET_FLOW_LATEST_JOBS", "name": "Get Flow Latest Jobs", "description": "Tool to retrieve the latest job executions for a specific flow. Use when you need to check recent flow run history, monitor job status, or review execution statistics and errors." }, { "slug": "CELIGO_GET_FLOW_TEMPLATE", "name": "Get Flow Template", "description": "Tool to download a Celigo flow as a template. Use when you need to export a flow configuration as a downloadable template file. Returns a signed S3 URL that can be used to download the flow template as a zip file." }, { "slug": "CELIGO_GET_I_CLIENT", "name": "Get iClient by ID", "description": "Tool to get a specific iClient by its ID. Use when you need to retrieve OAuth or provider-specific credential configurations for integrations." }, { "slug": "CELIGO_GET_IMPORT", "name": "Get Import", "description": "Tool to retrieve a specific import by its ID from the Celigo Integrator API. Use when you need to fetch detailed configuration and settings for a particular import." }, { "slug": "CELIGO_GET_IMPORT_AUDIT", "name": "Get Import Audit Logs", "description": "Tool to retrieve audit logs for a specific import. Use when you need to track changes, events, and modifications made to an import resource over time. Returns detailed history including field changes, timestamps, and user information." }, { "slug": "CELIGO_GET_IMPORT_DEPENDENCIES", "name": "Get Import Dependencies", "description": "Tool to retrieve all resources using or used by a specific import. Use when you need to understand the dependency graph of an import, including flows and integrations that reference it." }, { "slug": "CELIGO_GET_INTEGRATION_AUDIT", "name": "Get Integration Audit Logs", "description": "Tool to retrieve audit logs for a specific integration. Use when you need to track changes, modifications, or actions performed on an integration and its resources." }, { "slug": "CELIGO_GET_INTEGRATION_CONNECTIONS", "name": "Get Integration Connections", "description": "Tool to retrieve all connections associated with a specific integration. Use when you need to list connections that are registered to or used by a particular integration." }, { "slug": "CELIGO_GET_INTEGRATION_DEPENDENCIES", "name": "Get Integration Dependencies", "description": "Tool to retrieve all resources using or used by a specific integration. Use when you need to understand the dependency graph of a Celigo integration, including flows and other integrations that reference it." }, { "slug": "CELIGO_GET_INTEGRATION_ERRORS", "name": "Get Integration Errors", "description": "Tool to retrieve all open errors for a specific integration in Celigo. Use when you need to monitor integration health, debug issues, or identify failed operations that require attention." }, { "slug": "CELIGO_GET_INTEGRATION_EXPORTS", "name": "Get Integration Exports", "description": "Tool to retrieve all exports associated with a specific integration. Use when you need to list all exports configured within an integration, including their configurations and webhook settings." }, { "slug": "CELIGO_GET_INTEGRATION_FLOWS", "name": "Get Integration Flows", "description": "Tool to retrieve all flows associated with a specific integration. Use when you need to list all data workflows configured within an integration, including their configuration, schedules, and status." }, { "slug": "CELIGO_GET_INTEGRATION_IMPORTS", "name": "Get Integration Imports", "description": "Tool to retrieve all imports associated with a specific integration. Use when you need to list import configurations that are registered to or used by a particular integration." }, { "slug": "CELIGO_GET_INTEGRATION_TEMPLATE", "name": "Get Integration Template", "description": "Tool to download a Celigo integration as a template. Use when you need to export an integration configuration as a downloadable template file. Returns a signed S3 URL that can be used to download the integration template as a zip file." }, { "slug": "CELIGO_GET_INTEGRATION_USERS", "name": "Get Integration Users", "description": "Tool to retrieve users associated with a specific integration. Use when you need to list all users who have access to or are shared with a particular integration." }, { "slug": "CELIGO_GET_JOB_ERRORS", "name": "Get Job Errors", "description": "Tool to retrieve errors for a specific job in Celigo. Supports pagination via page_size and page parameters to handle jobs with large numbers of errors." }, { "slug": "CELIGO_GET_RESOLVED_ERRORS", "name": "Get Resolved Errors", "description": "Tool to retrieve resolved errors for a specific export within a flow in Celigo. Use when you need to review previously resolved errors, audit error resolution history, or track error patterns over time." }, { "slug": "CELIGO_GET_RESOURCE_STATE_VALUE", "name": "Get Resource State Value", "description": "Tool to get the resource-specific value associated with a state key. Use when you need to retrieve state data for a specific resource (import, export, flow, or connection) in the Celigo Integrator platform." }, { "slug": "CELIGO_GET_SCRIPT", "name": "Get Script", "description": "Tool to retrieve a specific script by its ID from Celigo. Use when you need to view script details, including code content, configuration, and metadata." }, { "slug": "CELIGO_GET_SCRIPT_LOGS", "name": "Get Script Logs", "description": "Tool to retrieve logs for a specific Celigo script by its ID. Use when you need to view script execution logs, debug script behavior, or monitor script activity." }, { "slug": "CELIGO_GET_STATE_VALUE", "name": "Get State Value", "description": "Tool to get the value associated with a specified state key. Use when you need to retrieve state data stored in the Celigo Integrator platform." }, { "slug": "CELIGO_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve a specific tag by its ID from Celigo Integrator.io. Use when you need to fetch tag details including tag name and tag identifier." }, { "slug": "CELIGO_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve all tags from Celigo. Use when you need to list available tags for categorizing or organizing resources." }, { "slug": "CELIGO_GET_TOKEN_INFO", "name": "Get Token Info", "description": "Tool to retrieve information about the current API token. Use when you need to validate the API token or get the user ID associated with it." }, { "slug": "CELIGO_GET_USER", "name": "Get User Share", "description": "Tool to retrieve a specific user share (ashare) by its ID. Use when you need to fetch user access details including integration-level permissions and sharing information." }, { "slug": "CELIGO_GET_USERS", "name": "Get All Users", "description": "Tool to retrieve all users from your Celigo account. Use when you need to list all users (account shares) across the account." }, { "slug": "CELIGO_INVITE_MULTIPLE_USERS", "name": "Invite Multiple Users", "description": "Tool to invite multiple users to a Celigo account with specified access levels. Use when you need to grant multiple users access to your account or specific integrations." }, { "slug": "CELIGO_INVITE_USER", "name": "Invite User", "description": "Tool to invite a user to a Celigo account with specified access levels. Use when you need to grant access to a new user via email. Either integration-level or account-level access must be specified." }, { "slug": "CELIGO_INVOKE_IMPORT", "name": "Invoke Import", "description": "Tool to trigger/invoke a Celigo import by its ID. Use when you need to manually start an import process that has been configured in Celigo." }, { "slug": "CELIGO_LIST_AUDIT_LOGS", "name": "List Audit Logs", "description": "Tool to retrieve all audit logs for resource changes. Use when you need to track changes, view history, or investigate modifications across all resources in the account." }, { "slug": "CELIGO_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to retrieve all connections in Celigo. Use when you need to list stored credentials and configuration for integrated applications. Connections store authentication details and other information needed to access external systems." }, { "slug": "CELIGO_LIST_EXPORTS", "name": "List Exports", "description": "Tool to retrieve all exports from Celigo integrator.io. Exports are used to extract data from an application. Use when you need to view available exports, monitor export configurations, or identify exports for further operations." }, { "slug": "CELIGO_LIST_FLOWS", "name": "List Flows", "description": "Tool to retrieve all flows from Celigo. Flows compose exports and imports for data workflows between applications." }, { "slug": "CELIGO_LIST_I_CLIENTS", "name": "List iClients", "description": "Tool to retrieve all iClients in Celigo. Use when you need to list authentication credentials used by SmartConnectors to access external APIs. iClients store the authentication data required for API connections." }, { "slug": "CELIGO_LIST_IMPORTS", "name": "List Imports", "description": "Tool to retrieve all imports from Celigo integrator.io. Imports are used to insert data into an application. Use when you need to view all configured imports in the account." }, { "slug": "CELIGO_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to retrieve all integrations from Celigo. Use when you need to list integrations that group flows with shared permissions and lifecycle." }, { "slug": "CELIGO_LIST_JOBS", "name": "List Jobs", "description": "Fetches one page of jobs from Celigo with optional filters. Jobs track flow execution state while running and final statistics when finished. ONE Celigo API call is made per invocation; pagination is caller-driven via the `created_at_lte` parameter (Celigo's keyset-by-`createdAt` cursor) and the `next_cursor` field in the response." }, { "slug": "CELIGO_LIST_LICENSES", "name": "List Licenses", "description": "Tool to retrieve all SmartConnector licenses in Celigo. Use when you need to list platform-level licensing information including connector editions, add-on licenses, expiration dates, and associated users." }, { "slug": "CELIGO_LIST_RESOURCE_STATE", "name": "List Resource State", "description": "Tool to retrieve all state keys for a specific resource in Celigo. Use when you need to list keys that store execution context and tracking information for imports, exports, flows, or integrations." }, { "slug": "CELIGO_LIST_STATE_KEYS", "name": "List State Keys", "description": "Tool to retrieve all global state keys from Celigo. Use when you need to list available keys for storing arbitrary JSON data. State keys are used to store execution context and tracking information for flows." }, { "slug": "CELIGO_PARSE_CSV_TO_JSON", "name": "Parse CSV to JSON", "description": "Tool to convert CSV data to JSON format using Celigo's CSV parser. Use when you need to parse CSV strings into structured JSON objects for further processing or integration workflows." }, { "slug": "CELIGO_PARSE_STRUCTURED_FILE", "name": "Parse Structured File", "description": "Tool to convert EDI or structured file data (delimited or fixed-width) to JSON format. Use when you need to parse structured file content with specific field definitions and delimiters." }, { "slug": "CELIGO_PARSE_XML_TO_JSON", "name": "Parse XML to JSON", "description": "Tool to convert XML data to JSON format using Celigo's XML parser processor. Use when you need to transform XML strings into structured JSON objects for easier data manipulation and integration." }, { "slug": "CELIGO_PATCH_CONNECTION", "name": "Patch Connection", "description": "Tool to update part of a connection using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of an existing connection without replacing the entire resource." }, { "slug": "CELIGO_PATCH_EXPORT", "name": "Patch Export", "description": "Tool to update specific fields of an export using JSON Patch operations. Use when you need to modify export properties without replacing the entire configuration. Note: Only certain fields are whitelisted for patching (e.g., /aiDescription/summary)." }, { "slug": "CELIGO_PATCH_FLOW", "name": "Patch Flow", "description": "Tool to update part of a specific flow using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of a flow without replacing the entire resource, such as enabling/disabling a flow or updating its name." }, { "slug": "CELIGO_PATCH_ICLIENT", "name": "Patch iClient", "description": "Tool to update part of an iClient using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of an existing iClient without replacing the entire resource. Note: the iClient PATCH endpoint has very restrictive field whitelisting." }, { "slug": "CELIGO_PATCH_IMPORT", "name": "Patch Import", "description": "Tool to update specific fields of an import using JSON Patch operations. Use when you need to modify import properties without replacing the entire configuration. Note: Only certain fields are whitelisted for patching - many common fields cannot be modified via PATCH." }, { "slug": "CELIGO_PATCH_INTEGRATION", "name": "Patch Integration", "description": "Tool to update part of an integration using JSON Patch operations (RFC 6902). Use when you need to modify specific fields of an existing integration without replacing the entire resource." }, { "slug": "CELIGO_PING_CONNECTION", "name": "Ping Connection", "description": "Test that a specific Celigo connection is operational by pinging it. Use this to verify that connection credentials and configuration are valid and the external application is reachable." }, { "slug": "CELIGO_REGISTER_CONNECTION", "name": "Register Connection", "description": "Tool to register a connection to an integration in Celigo. Use when you need to link a connection resource to a specific integration." }, { "slug": "CELIGO_REGISTER_CONNECTIONS_BULK", "name": "Register Connections Bulk", "description": "Tool to register multiple connections to an integration in Celigo at once. Use when you need to associate multiple connections with an integration. Note: This operation replaces all previously registered connections with the provided list." }, { "slug": "CELIGO_RESOLVE_ERRORS", "name": "Resolve Errors", "description": "Tool to resolve specified errors for an export in Celigo. Use when you need to mark errors as resolved for a specific export within a flow." }, { "slug": "CELIGO_RETRY_ERRORS", "name": "Retry Errors", "description": "Tool to retry specified errors for an export in Celigo. Use when you need to re-process failed records or operations in a flow export." }, { "slug": "CELIGO_TEST_VIRTUAL_CONNECTION", "name": "Test Virtual Connection", "description": "Test a virtual connection where all details are submitted in the POST body but not saved. Use when you need to validate connection settings before creating a permanent connection." }, { "slug": "CELIGO_UNREGISTER_CONNECTION", "name": "Unregister Connection from Integration", "description": "Tool to unregister a connection from an integration in Celigo. Use when you need to remove a connection from an integration's registered connections list. Returns success status on completion." }, { "slug": "CELIGO_UPDATE_CONNECTION", "name": "Update Connection", "description": "Tool to update a connection's configuration or credentials in Celigo. Use when you need to modify connection settings, update credentials, or change connection properties. Note: PUT requests replace the entire connection object, so the 'type' field is mandatory." }, { "slug": "CELIGO_UPDATE_EXPORT", "name": "Update Export", "description": "Tool to update an existing export configuration in Celigo. Use when you need to modify export settings such as name, connection, type, page size, or adaptor-specific configurations like NetSuite restlets or webhook providers." }, { "slug": "CELIGO_UPDATE_FLOW", "name": "Update Flow", "description": "Tool to update a specific flow's configuration in Celigo. Use when you need to modify flow settings such as name, enabled/disabled state, schedule, routers, or other flow configuration properties. The API performs a full replacement of the flow configuration, so ensure all required fields are provided." }, { "slug": "CELIGO_UPDATE_FLOW_ERROR_TAGS", "name": "Update Flow Error Tags", "description": "Tool to update error tags for a specific flow export in Celigo. Use when you need to assign tags to errors for categorization, or remove existing tags by providing an empty array. Maximum 3 tags can be assigned per operation." }, { "slug": "CELIGO_UPDATE_I_CLIENT", "name": "Update iClient", "description": "Tool to update a specific iClient's configuration in Celigo. Use when you need to modify iClient settings such as name, provider, published state, JWT settings, or form type." }, { "slug": "CELIGO_UPDATE_IMPORT", "name": "Update Import", "description": "Tool to update a specific import's configuration in Celigo. Use when modifying existing import settings, connection details, file configurations, or HTTP settings." }, { "slug": "CELIGO_UPDATE_INTEGRATION", "name": "Update Integration", "description": "Tool to update a specific integration's configuration in Celigo. Use when you need to modify integration settings such as name, version, installation steps, or flow groupings." }, { "slug": "CELIGO_UPDATE_RESOURCE_STATE_VALUE", "name": "Update Resource State Value", "description": "Tool to create or update the resource-specific state value for any Celigo resource type. Use when you need to store or modify state data associated with a specific resource (import, export, flow, connection, etc.)." }, { "slug": "CELIGO_UPDATE_SCRIPT", "name": "Update Script", "description": "Tool to update a specific script's code or configuration in Celigo. Use when you need to modify script content, change script settings, or update sandbox mode." }, { "slug": "CELIGO_UPDATE_STATE_VALUE", "name": "Update State Value", "description": "Tool to create or update the value associated with a specified state key. Use when you need to store or modify state data in the Celigo Integrator platform." }, { "slug": "CELIGO_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update a tag's name in Celigo. Use when you need to rename an existing tag." }, { "slug": "CELIGO_UPDATE_USER", "name": "Update User", "description": "Tool to update a specific user's account in Celigo. Use when you need to modify a user's integration access levels or permissions. The API returns HTTP 204 No Content on successful update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "celigo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Celigo API token. Create one in integrator.io under Resources → API tokens (requires account owner or administrator role)", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Leave empty for North America or enter \"eu\" for European region", "required": false, "default": null } ] } } } ] }, { "slug": "census_bureau", "name": "Census Bureau", "logo": "https://logos.composio.dev/api/census_bureau", "description": "The Census Bureau Data API provides developers with access to a wide range of statistical data collected by the U.S. Census Bureau, facilitating integration into applications and data visualizations.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 81, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "CENSUS_BUREAU_GEOCODE_ADDRESS", "name": "Geocode Address", "description": "Tool to geocode a single address to get latitude/longitude coordinates. Use when you need to convert a street address into geographic coordinates." }, { "slug": "CENSUS_BUREAU_GEOCODE_ADDRESS_GEOGRAPHIES", "name": "Geocode Address for Census Geographies", "description": "Geocode an address and return Census geography identifiers including state, county, tract, block group, and block FIPS codes. This tool converts a physical address into geographic coordinates and returns detailed Census geography information including FIPS codes for various geographic levels (state, county, census tract, block group, block) plus additional geographies like congressional districts, places, and statistical areas. Use this when you need to link an address to Census geographic identifiers for data analysis or geographic queries." }, { "slug": "CENSUS_BUREAU_GEOCODE_ADDRESS_PARTS", "name": "Geocode Address Parts", "description": "Tool to geocode an address using separate components (street, city, state, ZIP) to get latitude/longitude coordinates. Use when you have address data in separate fields rather than a single line." }, { "slug": "CENSUS_BUREAU_GEOCODE_ADDRESS_WITH_GEOGRAPHY", "name": "Geocode Address with Geography", "description": "Tool to geocode an address and return both coordinates and Census geography information. Use when you need geographic coordinates plus Census geographic identifiers like state FIPS, county FIPS, census tract, and block codes." }, { "slug": "CENSUS_BUREAU_GEOCODE_COORDINATES", "name": "Geocode Coordinates", "description": "Reverse geocode latitude/longitude coordinates to Census geographic areas. Takes decimal degree coordinates and returns associated Census geographies including states, counties, tracts, blocks, congressional districts, and other Census-defined geographic boundaries. Use this tool to identify what Census geographic areas a specific location falls within. Note: This uses the Census Geocoding Services API, which has a different base URL than the standard Census data API (uses geocoding.geo.census.gov)." }, { "slug": "CENSUS_BUREAU_GEOCODE_GEOGRAPHIES_ADDRESS_PR", "name": "Geocode Puerto Rico Address with Geography", "description": "Tool to geocode a Puerto Rico address and return coordinates plus Census geography data. Use for Puerto Rico addresses when you need geographic coordinates and Census identifiers like state, county, tract, and block codes. Supports urbanization names specific to Puerto Rico addressing." }, { "slug": "CENSUS_BUREAU_GEOCODE_GEOGRAPHIES_BATCH", "name": "Batch Geocode Addresses with Geographies", "description": "Batch geocode multiple addresses from a CSV file and return Census geography codes. Tool to geocode up to 10,000 addresses at once from a CSV file. Use when you need to convert addresses to geographic coordinates (latitude/longitude) and retrieve associated Census geography identifiers (state, county, tract, block FIPS codes). Input CSV format: Unique ID, Street address, City, State, ZIP Returns: Original data plus match status, coordinates, and geographic codes." }, { "slug": "CENSUS_BUREAU_GEOCODE_LOCATION_ADDRESS_PR", "name": "Geocode Puerto Rico Address", "description": "Tool to geocode a Puerto Rico address with urbanization to latitude/longitude coordinates. Use when geocoding addresses in Puerto Rico that include urbanization or municipio components." }, { "slug": "CENSUS_BUREAU_GET_ACS1_YEAR_ESTIMATES", "name": "Get ACS 1-Year Estimates", "description": "Tool to retrieve 1-year American Community Survey (ACS) estimates for a specified geography. Use when you need the most recent annual ACS data for a given area." }, { "slug": "CENSUS_BUREAU_GET_ACS5_YEAR_ESTIMATES", "name": "Get ACS 5-Year Estimates", "description": "Retrieve 5-year American Community Survey (ACS) estimates from the U.S. Census Bureau. The ACS 5-year estimates provide reliable data for all geographic areas by combining 5 years of survey data. Use this tool to get population demographics, income statistics, housing characteristics, and other socioeconomic data at various geographic levels (nation, state, county, tract, place, metro area, etc.). Returns data as a list of rows where the first row contains column headers (variable names and geography identifiers) and subsequent rows contain the data values." }, { "slug": "CENSUS_BUREAU_GET_COMMUNITY_RESILIENCE_ESTIMATES", "name": "Get Community Resilience Estimates", "description": "Retrieve U.S. Census Bureau Community Resilience Estimates (CRE) data. The CRE measures social vulnerability to disasters by estimating the number of individuals with risk factors (e.g., income, disability, housing) that may limit their capacity to absorb, recover from, and respond to the impacts of disasters. Key variables: - PRED0_E: Estimated persons with 0 risk factors (most resilient) - PRED12_E: Estimated persons with 1-2 risk factors - PRED3_E: Estimated persons with 3+ risk factors (most vulnerable) - POPUNI: Total population universe - Variables ending in _M are margins of error for the corresponding estimates Available for years 2019, 2021, 2022, 2023 at state and county levels." }, { "slug": "CENSUS_BUREAU_GET_COUNTY_BUSINESS_PATTERNS", "name": "Get County Business Patterns", "description": "Tool to retrieve County Business Patterns (CBP) data for a specified year. Use when you need county-level business establishment and employment statistics filtered by industry and geography." }, { "slug": "CENSUS_BUREAU_GET_DATASET_EXAMPLES_HTML", "name": "Get Dataset Examples HTML", "description": "Tool to retrieve example queries for a Census dataset in HTML format. Use when you need to see example API queries for different geographic levels and hierarchies within a specific dataset. The response contains an HTML table with example queries showing how to request data at various geographic levels (nation, state, county, tract, place, metropolitan areas, etc.). Each example includes the geography hierarchy, level, and a working example URL." }, { "slug": "CENSUS_BUREAU_GET_DATASET_EXAMPLES_JSON", "name": "Get Dataset Examples JSON", "description": "Tool to retrieve example API query patterns for a specific Census dataset and vintage. Use when you need to understand available geography levels, example variable names, and how to structure queries for a dataset." }, { "slug": "CENSUS_BUREAU_GET_DATASET_EXAMPLES_XML", "name": "Get Dataset Examples (XML)", "description": "Tool to retrieve example queries for a Census Bureau dataset in XML format. Use when you need to understand how to query a specific dataset or see sample API calls." }, { "slug": "CENSUS_BUREAU_GET_DATASET_GEOGRAPHY_HTML", "name": "Get Dataset Geography HTML", "description": "Tool to retrieve available geographies for a Census dataset in HTML format. Use when you need to see which geographic levels (state, county, tract, etc.) and hierarchies are available for a specific Census dataset and year. The response is an HTML page containing a table with geography level codes, hierarchies, and reference dates." }, { "slug": "CENSUS_BUREAU_GET_DATASET_GEOGRAPHY_JSON", "name": "Get Dataset Geography JSON", "description": "Tool to get the list of supported geography levels for a specific Census dataset with their hierarchy and required predicates. Use when you need to discover which geographic areas are available for querying a dataset and what predicates are required." }, { "slug": "CENSUS_BUREAU_GET_DATASET_GEOGRAPHY_XML", "name": "Get Dataset Geography XML", "description": "Tool to retrieve available geographies for a Census Bureau dataset in XML format. Use when you need to discover which geographic levels (state, county, tract, etc.) are supported for a specific dataset vintage." }, { "slug": "CENSUS_BUREAU_GET_DATASET_GROUPS", "name": "Get Dataset Groups", "description": "Tool to retrieve the list of table groups for a Census dataset and vintage. Use when you need to discover available data tables or before querying all variables in a table using group() syntax." }, { "slug": "CENSUS_BUREAU_GET_DATASET_SORTS", "name": "Get Dataset Sorts", "description": "Tool to list available sort options for a specific Census dataset and vintage. Use when you need to determine which fields can be used to sort query results." }, { "slug": "CENSUS_BUREAU_GET_DATASET_TAGS", "name": "Get Dataset Tags", "description": "Tool to list available tags/keywords for a specific Census dataset and vintage. Use when you need to discover topic categories, demographic dimensions, or searchable keywords available in a dataset." }, { "slug": "CENSUS_BUREAU_GET_DATASET_VARIABLES_JSON", "name": "Get Dataset Variables JSON", "description": "Tool to retrieve the complete list of available variables for a specific Census dataset. Use when you need to discover what variables are available in a dataset, their names, labels, data types, and valid values." }, { "slug": "CENSUS_BUREAU_GET_DECENNIAL_CENSUS_DATA", "name": "Get Decennial Census Data", "description": "Retrieve Decennial Census data (population, demographics, housing) from the U.S. Census Bureau API. Use this tool to get census statistics for states, counties, tracts, and other geographic units. The Decennial Census is conducted every 10 years (2020, 2010, 2000). Different datasets contain different variables - use 'dhc' for 2020 demographic data, 'sf1' for 2010/2000 summary data, 'pl' for redistricting data across all vintages." }, { "slug": "CENSUS_BUREAU_GET_PLANNING_DATABASE_DATA", "name": "Get Planning Database Data", "description": "Get Planning Database (PDB) data containing Census tract and block group level data useful for planning. Use this tool to retrieve demographic and operational data from the Planning Database including population estimates, ACS statistics, and 2020 Census operational variables at tract, block group, or state-county levels." }, { "slug": "CENSUS_BUREAU_GET_POPULATION_ESTIMATES", "name": "Get Population Estimates", "description": "Retrieves Population Estimates Program (PEP) data from the US Census Bureau API. Use this tool when you need: - Total population estimates for states, counties, or the nation - Components of population change (births, deaths, migration) - Population by demographic characteristics (age, sex, race, Hispanic origin) Response is a 2D array where index 0 is the header row (e.g., [['POP','NAME','state'],['39512223','California','06'],...]); always use row 0 as column keys when parsing. Important notes: - Available datasets and variables vary significantly by vintage year - For broadest compatibility, use vintage=2019 with dataset='population' - Variable names may include year suffixes in newer vintages (e.g., POP_2021 instead of POP) - Check Census API documentation for valid variable names per vintage/dataset" }, { "slug": "CENSUS_BUREAU_GET_TIGERWEB_ACS_GENERALIZED", "name": "Get TIGERweb ACS Generalized Boundaries", "description": "Tool to access generalized ACS (American Community Survey) boundary services from TIGERweb for specific survey years (2012-2024). Use when you need to retrieve geographic boundary information and metadata for various Census geographies like states, counties, tracts, places, or other administrative areas." }, { "slug": "CENSUS_BUREAU_GET_TIGERWEB_MAP_SERVICE", "name": "Get TIGERweb Map Service Metadata", "description": "Tool to retrieve TIGERweb MapServer service metadata including available layers, capabilities, and spatial reference information. Use when you need to discover available geographic layers before querying specific data." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_EXAMPLES_HTML", "name": "Get Timeseries Examples HTML", "description": "Tool to retrieve HTML-formatted example queries for a Census Bureau timeseries dataset. Use when you need to discover valid API query patterns and parameters for a specific timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_EXAMPLES_JSON", "name": "Get Timeseries Examples JSON", "description": "Tool to get example queries for a timeseries dataset in JSON format. Use when you need to discover example query patterns and available parameters for a specific Census Bureau timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_EXAMPLES_XML", "name": "Get Timeseries Examples XML", "description": "Tool to retrieve example queries for a Census Bureau timeseries dataset in XML format. Use when you need to understand available variables, predicates, and geography options for a specific timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_GEOGRAPHY_HTML", "name": "Get Timeseries Geography HTML", "description": "Tool to retrieve available FIPS geographies for a timeseries dataset in HTML format. Use when you need to understand which geography levels, hierarchies, and FIPS codes are available for querying a specific timeseries dataset. Returns an HTML document with a table showing reference dates, geography levels, hierarchies, and record limits." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_GEOGRAPHY_JSON", "name": "Get Timeseries Geography JSON", "description": "Tool to get available geographies for a timeseries dataset in JSON format. Returns FIPS geography levels, display codes, and reference dates for the specified dataset. Use this when you need to determine which geography levels can be queried for a given timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_GEOGRAPHY_XML", "name": "Get Timeseries Geography XML", "description": "Tool to retrieve available geographies for a Census Bureau timeseries dataset in XML format. Use when you need to discover which geographic levels are supported for a specific timeseries dataset and understand the hierarchical dependencies between geography types." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_VARIABLES_HTML", "name": "Get Timeseries Variables HTML", "description": "Tool to retrieve a list of available variables for a Census timeseries dataset in HTML format. Use when you need to discover what data fields are available for a specific timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_VARIABLES_JSON", "name": "Get Timeseries Variables JSON", "description": "Tool to get a list of variables available for a timeseries dataset in JSON format. Use when you need to discover which variables are available for querying in a specific Census Bureau timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_TIMESERIES_VARIABLES_XML", "name": "Get Timeseries Variables XML", "description": "Tool to get a list of variables available for a timeseries dataset in XML format. Use when you need the variable definitions, data types, and valid values for a specific timeseries dataset." }, { "slug": "CENSUS_BUREAU_GET_VARIABLE_DETAILS", "name": "Get Variable Details", "description": "Tool to retrieve metadata for a specific variable in a Census dataset for a given year. Use when you need the label, concept, data type, attribute codes, and valid-value constraints." }, { "slug": "CENSUS_BUREAU_LIST_AVAILABLE_DATASETS", "name": "List Available Datasets", "description": "Lists all available Census Bureau datasets with their metadata, vintages, and API endpoints. Use this as the discovery tool to find available datasets before querying specific data." }, { "slug": "CENSUS_BUREAU_LIST_DATASETS_HTML", "name": "List Datasets HTML", "description": "Tool to retrieve a complete HTML listing of all available (non-timeseries) Census Bureau datasets. Use when you need to discover available datasets with links to their Geographies, Variables, Examples, and API base URLs." }, { "slug": "CENSUS_BUREAU_LIST_DATASETS_XML", "name": "List Datasets XML", "description": "Tool to retrieve a list of all available Census Bureau datasets in XML format. Use when you need to discover available datasets, their paths, descriptions, and time periods. The XML contains comprehensive metadata about each dataset including identifiers, titles, and temporal coverage." }, { "slug": "CENSUS_BUREAU_LIST_GEOCODER_BENCHMARKS", "name": "List Geocoder Benchmarks", "description": "List all available benchmark versions for the Census Bureau geocoding service. Use this to discover valid benchmark options before geocoding addresses." }, { "slug": "CENSUS_BUREAU_LIST_GEOCODER_VINTAGES", "name": "List Geocoder Vintages", "description": "Tool to list available geography vintages for a given Census geocoder benchmark. Use when you need to see what geography versions are available for geocoding operations." }, { "slug": "CENSUS_BUREAU_LIST_TIGERWEB_SERVICES", "name": "List TIGERweb Services", "description": "Tool to discover all available TIGERweb map services for Census geographic boundaries. Use when you need to find which TIGERweb services are available (Current, ACS years, Census years) before accessing specific service metadata or querying geographic boundary data." }, { "slug": "CENSUS_BUREAU_LIST_TIMESERIES_DATASETS_HTML", "name": "List Timeseries Datasets (HTML)", "description": "Tool to retrieve a list of all available timeseries datasets from the US Census Bureau API in HTML format. Use when you need to discover available timeseries datasets and their endpoints." }, { "slug": "CENSUS_BUREAU_LIST_TIMESERIES_DATASETS_JSON", "name": "List Timeseries Datasets (JSON)", "description": "Tool to list all available timeseries datasets from the US Census Bureau API. Use when you need to discover what timeseries data is available. This endpoint returns a DCAT Catalog containing metadata for all timeseries datasets, including their titles, descriptions, available variables, geography links, and API endpoints. The response follows the Project Open Data v1.1 schema." }, { "slug": "CENSUS_BUREAU_LIST_TIMESERIES_DATASETS_XML", "name": "List Timeseries Datasets (XML)", "description": "Tool to retrieve a list of all available Census Bureau timeseries datasets in XML format. Use when you need to discover available timeseries datasets, their endpoints, or metadata. This is a discovery endpoint that returns the complete catalog of timeseries datasets." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_ACSSE", "name": "Query ACS Supplemental Estimates", "description": "Query ACS Supplemental Estimates data by variables and geography. Use when you need supplemental ACS estimates for specific geographic areas and variables." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_CPROFILE", "name": "Query ACS Comparison Profiles", "description": "Query ACS Comparison Profiles data by variables and geography. Use when you need to compare demographic, social, economic, or housing characteristics across different time periods within the same dataset. Available for both 1-year and 5-year ACS estimates." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_FLOWS", "name": "Query ACS Migration Flows", "description": "Tool to query American Community Survey (ACS) Migration Flows data by variables and geography. Use when you need migration flow statistics between geographic areas (inbound/outbound migration patterns)." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_PROFILE", "name": "Query ACS Data Profile", "description": "Tool to query ACS Data Profiles by variables and geography. Use when you need demographic, social, economic, or housing profile data from the American Community Survey for specific geographic areas." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_SPP", "name": "Query ACS Selected Population Profiles", "description": "Tool to query ACS Selected Population Profiles (SPP) data by variables and geography for specific population groups. Use when you need demographic data filtered by race, ethnicity, ancestry, or other population subgroups." }, { "slug": "CENSUS_BUREAU_QUERY_ACS_SUBJECT", "name": "Query ACS Subject Tables", "description": "Tool to query ACS Subject Tables data by variables and geography. Use when you need subject table data (S-tables like S0101 for Age and Sex, S1701 for Poverty Status) from the American Community Survey. Available for both 1-year (acs1) and 5-year (acs5) estimates." }, { "slug": "CENSUS_BUREAU_QUERY_ANNUAL_BUSINESS_SURVEY", "name": "Query Annual Business Survey", "description": "Tool to query Annual Business Survey Company Summary (abscs) data with demographic filters. Use when you need business ownership demographics, employment, payroll, or industry statistics filtered by sex, race, ethnicity, veteran status, or firm size for specific geographic areas." }, { "slug": "CENSUS_BUREAU_QUERY_COMMODITY_FLOW_SURVEY", "name": "Query Commodity Flow Survey", "description": "Query Commodity Flow Survey data on freight shipments by origin, destination, mode, and commodity. Use when you need freight transportation statistics including shipment values, tonnage, and ton-miles for analyzing goods movement patterns in the United States." }, { "slug": "CENSUS_BUREAU_QUERY_CPS_SURVEY", "name": "Query CPS Survey Data", "description": "Tool to query Current Population Survey (CPS) microdata including basic monthly employment data and supplemental surveys. Use when you need individual-level labor force, employment, earnings, or demographic data from the CPS." }, { "slug": "CENSUS_BUREAU_QUERY_DEC_DHC", "name": "Query Decennial DHC", "description": "Tool to query Decennial Census Demographic and Housing Characteristics (DHC) data by variables and geography. Use when you need detailed 2020 Census demographic and housing data for states, counties, or other geographic areas." }, { "slug": "CENSUS_BUREAU_QUERY_DEC_DP", "name": "Query Decennial Census Demographic Profile", "description": "Tool to query Decennial Census Demographic Profile data by variables and geography. Use when you need comprehensive demographic and housing profile data from the 2020 Decennial Census for specific geographic areas." }, { "slug": "CENSUS_BUREAU_QUERY_DEC_PL", "name": "Query Decennial Census P.L. Redistricting Data", "description": "Tool to query Decennial Census P.L. 94-171 Redistricting Data. Use when you need official population counts used for congressional and state legislative redistricting for census years 2000, 2010, or 2020." }, { "slug": "CENSUS_BUREAU_QUERY_ECONOMIC_CENSUS", "name": "Query Economic Census Data", "description": "Tool to query Economic Census data including establishments, employment, payroll, and receipts by geography and industry (NAICS). Use when you need comprehensive business statistics from the 5-year Economic Census surveys (2002, 2007, 2012, 2017, 2022)." }, { "slug": "CENSUS_BUREAU_QUERY_INTL_TRADE_TIMESERIES", "name": "Query International Trade Timeseries", "description": "Tool to query International Trade timeseries data from Census Bureau API. Provides monthly and annual import/export statistics by commodity, country, and port. Use when you need US trade statistics organized by various classification systems (end-use, Harmonized System, NAICS, state, or port)." }, { "slug": "CENSUS_BUREAU_QUERY_NONEMPLOYER_STATISTICS", "name": "Query Nonemployer Statistics", "description": "Tool to query Nonemployer Statistics data covering businesses with no paid employees. Use when you need statistics on self-employed individuals, sole proprietorships, and businesses without payroll filtered by industry and geography." }, { "slug": "CENSUS_BUREAU_QUERY_PEP_CHAR_AGE_GROUPS", "name": "Query PEP CharAgeGroups", "description": "Query population estimates by age groups, sex, race, and Hispanic origin from the Census Bureau PEP CharAgeGroups dataset. Use this tool when you need population estimates broken down by demographic characteristics such as age groups, sex, race, and Hispanic origin for states, counties, or other geographic areas. Available for vintages 2015-2019." }, { "slug": "CENSUS_BUREAU_QUERY_PEP_COMPONENTS", "name": "Query PEP Components", "description": "Query components of population change from the Census Bureau Population Estimates Program (PEP). This tool retrieves data on births, deaths, natural increase, and migration components (domestic, international, and net migration) for states, counties, or other geographic areas. Data is available for vintages 2015-2019. Use this tool when you need to analyze: - Birth and death statistics by geographic area - Natural population increase (births minus deaths) - Migration patterns (domestic, international, or net migration) - Population change components over specific time periods" }, { "slug": "CENSUS_BUREAU_QUERY_PEP_HOUSING", "name": "Query PEP Housing Estimates", "description": "Query housing unit estimates from the US Census Bureau Population Estimates Program (PEP). Use this tool to retrieve housing unit estimates for different geographic levels (national, state, county) for years 2013-2019. Returns data including housing unit counts, date descriptions, and geographic identifiers. Available vintages: 2013-2019" }, { "slug": "CENSUS_BUREAU_QUERY_POPULATION_PROJECTIONS", "name": "Query Population Projections", "description": "Query population projections from the Census Bureau API. Use this tool to retrieve projected population data for specific years (vintages 2012-2017) at various demographic breakdowns including age, sex, race, and Hispanic origin. The projections provide future population estimates based on different scenarios." }, { "slug": "CENSUS_BUREAU_QUERY_SURNAME", "name": "Query Surname Data", "description": "Query surname frequency data from the U.S. Census Bureau Decennial Census (2000 or 2010). Use this tool to retrieve surname statistics including frequency counts, national rankings, and race/ethnicity distributions. Data is aggregated at the national level and includes surnames reported 100 or more times in the decennial census." }, { "slug": "CENSUS_BUREAU_QUERY_TIGERWEB_LAYER", "name": "Query TIGERweb Layer", "description": "Tool to query TIGERweb GeoServices for Census geographic boundaries and features. Use when you need to retrieve geographic shapes, FIPS codes, or spatial data for states, counties, tracts, blocks, or other Census geographies." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_BDS", "name": "Query Business Dynamics Statistics", "description": "Query Business Dynamics Statistics (BDS) time series data from the Census Bureau. Use when you need data on business formation, job creation, establishment dynamics, and employment statistics by industry and geography over time." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_DATA", "name": "Query Timeseries Data", "description": "Query Census timeseries datasets containing longitudinal data for multiple time periods. Use this tool to retrieve economic indicators (EITS), international trade data, Quarterly Workforce Indicators (QWI), poverty statistics (SAIPE), and other time-varying datasets from the U.S. Census Bureau. Timeseries datasets store data for multiple points in time within a single dataset, allowing you to track changes over time using the time predicate. Returns data as a structured response with headers and rows, where the first element contains column names and subsequent elements contain the data values for each geography and time period." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_EITS", "name": "Query Economic Indicators Time Series", "description": "Tool to query Economic Indicators Time Series (EITS) data from the US Census Bureau. Use when you need retail sales, manufacturing, housing, trade, or other economic indicator time series data. The API returns tabular data with headers and rows matching your requested variables." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_EITS_RESCONST", "name": "Query Residential Construction Stats", "description": "Tool to query Residential Construction statistics from Census Bureau Economic Indicators Time Series (EITS). Use when you need housing starts, permits, completions, or under-construction data. Returns time series data including housing units (single-family, multi-family, total), construction categories (permits, starts, completions, under construction), and seasonally adjusted/non-adjusted values. Data is provided in a structured format with headers and rows, where each row contains metrics for a specific time period." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_EITS_RESSALES", "name": "Query Residential Sales Data", "description": "Query Residential Sales statistics from Census Bureau's Economic Indicator Time Series (EITS). Use this tool to retrieve residential real estate sales data including prices, volumes, and inventory metrics over time. The API provides time-series data with seasonal adjustment options and supports filtering by time periods and geography." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_HEALTHINS_SAHIE", "name": "Query Health Insurance Estimates", "description": "Query Small Area Health Insurance Estimates (SAHIE) from the Census Bureau timeseries API. Use this tool to retrieve annual health insurance coverage estimates for U.S. counties and states. SAHIE provides model-based estimates of health insurance coverage by age, sex, race/ethnicity, and income categories. Data is available for states and counties, with estimates going back to 2008. Returns data as a structured response with headers and rows, where the first element contains column names and subsequent elements contain the data values for each geography and time period." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_HPS", "name": "Query Household Pulse Survey Timeseries", "description": "Tool to query Household Pulse Survey (HPS) timeseries data measuring household experiences during the COVID-19 pandemic. Use when you need household-level statistics on topics like employment, housing, education, health, food security, and economic impacts." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_IDB", "name": "Query International Database", "description": "Query International Database (IDB) demographic data for 227 countries and areas worldwide. Use this tool to retrieve demographic indicators including population, fertility rates, mortality rates, life expectancy, and other demographic measures from the U.S. Census Bureau's International Database. The IDB provides historical data and projections for countries globally. Choose '1year' product for annual data with single-year age groups, or '5year' for quinquennial data with five-year age groups." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_INTLTRADE_EXPORTS_HS", "name": "Query Timeseries International Trade Exports by HS", "description": "Tool to query international trade exports by Harmonized System code from Census Bureau time series API. Use when you need export statistics filtered by time period, country, commodity, or customs district." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_INTLTRADE_IMPORTS_ENDUSE", "name": "Query Timeseries International Trade Imports by End Use", "description": "Query international trade imports by end-use category from Census Bureau timeseries data. Use when you need monthly US import statistics categorized by product end-use (e.g., foods, industrial supplies, capital goods, automotive, consumer goods)." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_POVERTY", "name": "Query Timeseries Poverty", "description": "Query poverty statistics from the Census Bureau's timeseries poverty datasets. Use this tool to retrieve Small Area Income and Poverty Estimates (SAIPE) and historical poverty data for states, counties, and school districts. SAIPE provides annual estimates of income and poverty for all counties and school districts." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_QWI", "name": "Query QWI Timeseries Data", "description": "Query Quarterly Workforce Indicators (QWI) timeseries data on employment, earnings, and job flows. Use when you need detailed labor market statistics segmented by worker demographics (age, sex, education, race/ethnicity) and firm characteristics (age, size, industry) for specific geographic areas and time periods." }, { "slug": "CENSUS_BUREAU_QUERY_TIMESERIES_QWI_SA", "name": "Query Timeseries QWI State/Area", "description": "Query Quarterly Workforce Indicators (QWI) State/Area characteristics from the Census Bureau's time series API. Use when you need employment, payroll, job creation/destruction, or workforce turnover statistics by state or county for specific quarters." }, { "slug": "CENSUS_BUREAU_QUERY_ZIP_BUSINESS_PATTERNS", "name": "Query ZIP Business Patterns", "description": "Tool to query ZIP Code Business Patterns (ZBP) data including establishments and employment by ZIP code and industry. Use when you need business statistics at the ZIP code level, filtered by NAICS industry codes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "census_bureau_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Census Bureau API Key", "type": "string", "description": "The API key provided by the Census Bureau for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "centralstationcrm", "name": "CentralStationCRM", "logo": "https://logos.composio.dev/api/centralstationcrm", "description": "CentralStationCRM is an easy-to-use CRM software focusing on collaboration and long-term customer relationships.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 186, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CENTRALSTATIONCRM_CHECK_CONNECTION", "name": "Check Connection", "description": "Tool to verify the connection status of the CentralStationCRM API key. Use when validating credentials before making other API calls." }, { "slug": "CENTRALSTATIONCRM_COUNT_ACTIVITIES", "name": "Count Activities", "description": "Tool to retrieve activities count for a record, account, or user. Use when you need to get the total count of activities filtered by person, company, deal, project, or account." }, { "slug": "CENTRALSTATIONCRM_COUNT_ATTACHMENTS", "name": "Count Attachments", "description": "Tool to retrieve the total count and total file size of attachments. Use when you need to know how many attachments exist and their combined size in the CentralStationCRM account." }, { "slug": "CENTRALSTATIONCRM_COUNT_AVATARS", "name": "Count Avatars", "description": "Tool to retrieve the total count and total file size of avatars in the system. Use when you need statistics about avatar storage, such as total number of avatar files and their combined storage size." }, { "slug": "CENTRALSTATIONCRM_COUNT_COMPANIES_EXTERNAL_EMAILS", "name": "Count Companies External Emails", "description": "Tool to retrieve the total amount of external emails for a specific company. Use when you need to count how many external emails are associated with a particular company in CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_COUNT_DEALS_EXTERNAL_EMAILS", "name": "Count Deals External Emails", "description": "Tool to retrieve the total amount of external emails for a specific deal. Use when you need to count how many external emails are associated with a particular deal in CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_COUNT_EXTERNAL_EMAILS", "name": "Count External Emails", "description": "Tool to retrieve the total amount of external emails. Use when you need to count all external emails in CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_COUNT_PEOPLE2", "name": "Count People with Filters", "description": "Tool to retrieve the total count of people with optional filtering capabilities. Use when you need to count people by tags or specific attributes. Supports filtering by tag ID, tag name, or custom filter expressions." }, { "slug": "CENTRALSTATIONCRM_COUNT_PEOPLE_EXTERNAL_EMAILS", "name": "Count People External Emails", "description": "Tool to retrieve the total amount of external emails for a specific person. Use when you need to count how many external emails are associated with a particular person in CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_COUNT_PROJECTS_EXTERNAL_EMAILS", "name": "Count Projects External Emails", "description": "Tool to retrieve the total amount of external emails for a specific project. Use when you need to count how many external emails are associated with a particular project in CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_COUNT_PROTOCOLS", "name": "Count Protocols", "description": "Tool to retrieve the total number of protocols in the account. Use when you need the current total number of protocols in your CentralStationCRM account." }, { "slug": "CENTRALSTATIONCRM_CREATE_ATTACHMENTS", "name": "Create Attachments", "description": "Tool to create a new attachment in CentralStationCRM. Use when you need to upload a Base64-encoded file to attach to records like people, companies, or deals." }, { "slug": "CENTRALSTATIONCRM_CREATE_CAL_EVENT", "name": "Create Calendar Event", "description": "Tool to create a new calendar event in CentralStationCRM. Use when scheduling meetings, appointments, or other time-based events." }, { "slug": "CENTRALSTATIONCRM_CREATE_CAL_EVENT_ATTENDEE", "name": "Create Calendar Event Attendee", "description": "Tool to create a calendar event attendee. Use when you need to add an attendee to an existing calendar event." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment on an entity (task, event, protocol, etc.). Use when you need to add notes or feedback to existing CRM records." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMPANIES", "name": "Create Company with Nested Attributes", "description": "Tool to create a company with nested attributes. Use when you need to add a company with associated contact details, custom fields, or avatar in a single request." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMPANIES_AVATARS", "name": "Create Company Avatar", "description": "Tool to create an avatar for a company. Use when you need to add a profile image or logo to a company record." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMPANIES_PROTOCOLS_ATTACHMENTS", "name": "Create Company Protocol Attachment", "description": "Tool to create an attachment for a company protocol in CentralStationCRM. Use when you need to upload a Base64-encoded file to a specific protocol within a company." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMPANY_ADDRESS", "name": "Create Company Address", "description": "Tool to create a new address for a specific company. Use when you need to add postal details to a company record after confirming company ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_COMPANY_CONTACT_DETAIL", "name": "Create Company Contact Detail", "description": "Tool to create a new contact detail for a specific company. Use when adding a phone number after confirming the company's ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_CUSTOM_FIELDS_TYPE", "name": "Create Custom Field Type", "description": "Tool to create a new custom field type in CentralStationCRM. Use when you need to define a new custom field that can be applied to Person, Company, Deal, or Project entities." }, { "slug": "CENTRALSTATIONCRM_CREATE_DEAL_PROTOCOL_ATTACHMENT", "name": "Create Deal Protocol Attachment", "description": "Tool to create an attachment for a deal protocol. Use when you need to attach a file (document, image, etc.) to a specific protocol within a deal. The file content must be base64-encoded." }, { "slug": "CENTRALSTATIONCRM_CREATE_DEALS", "name": "Create Deal", "description": "Tool to create a new deal in CentralStationCRM. Use when you need to add a sales opportunity with details like name, value, pipeline, and associated contacts. Supports nested attributes like custom_fields_attributes and tags_attributes." }, { "slug": "CENTRALSTATIONCRM_CREATE_GROUP_CALENDARS", "name": "Create Group Calendar", "description": "Tool to create a new group calendar in CentralStationCRM. Use when setting up shared calendars for teams or specific purposes like holidays." }, { "slug": "CENTRALSTATIONCRM_CREATE_HOOK", "name": "Create Hook", "description": "Tool to create a webhook hook in CentralStationCRM. Use when you need to set up automatic notifications for create, update, or destroy events on Person, Company, Deal, or Project records." }, { "slug": "CENTRALSTATIONCRM_CREATE_PEOPLE", "name": "Create People", "description": "Tool to create a person with nested attributes. Use when adding a person with contact details, custom fields, or other nested data in a single request." }, { "slug": "CENTRALSTATIONCRM_CREATE_PEOPLE_CUSTOM_FIELD", "name": "Create People Custom Field", "description": "Tool to create a custom field for a person record. Use when you need to add custom metadata or attributes to a person." }, { "slug": "CENTRALSTATIONCRM_CREATE_PEOPLE_POSITIONS", "name": "Create People Positions", "description": "Tool to create a new position for a specific person. Use when you need to associate a person with a company role or job position." }, { "slug": "CENTRALSTATIONCRM_CREATE_PEOPLE_PROTOCOLS_ATTACHMENTS", "name": "Create Person Protocol Attachment", "description": "Tool to create an attachment for a person protocol in CentralStationCRM. Use when you need to upload a Base64-encoded file to a specific protocol within a person record." }, { "slug": "CENTRALSTATIONCRM_CREATE_PEOPLE_TAGS", "name": "Create People Tags", "description": "Tool to create a new tag for a specific person. Use when you need to categorize or label a person after confirming their ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_PERSON_ADDRESS", "name": "Create Person Address", "description": "Tool to create a new address for a specific person. Use when you need to add or update postal details after confirming person ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_PERSON_ASSI", "name": "Create Person Assistant", "description": "Tool to create a new assistant (assi) entry for a specific person. Use after confirming the person ID when you need to manage assistant contacts." }, { "slug": "CENTRALSTATIONCRM_CREATE_PERSON_AVATAR", "name": "Create Person Avatar", "description": "Tool to create a new avatar for a specific person. Use when you need to attach a Base64-encoded image file after confirming the person's ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_PERSON_CONTACT_DETAIL", "name": "Create Person Contact Detail", "description": "Tool to create a new contact detail for a specific person. Use when adding a phone number after confirming the person's ID." }, { "slug": "CENTRALSTATIONCRM_CREATE_PERSON_HISTORIC_EVENT", "name": "Create Person Historic Event", "description": "Tool to create a new historic event for a specific person. Use after confirming person ID to record dates like birthdays, anniversaries, or other milestones." }, { "slug": "CENTRALSTATIONCRM_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project record. Use when you need to add a project to your CRM with optional nested attributes like custom fields and tags." }, { "slug": "CENTRALSTATIONCRM_CREATE_PROJECTS_PROTOCOLS_ATTACHMENTS", "name": "Create Project Protocol Attachment", "description": "Tool to create an attachment for a project protocol in CentralStationCRM. Use when you need to upload a Base64-encoded file to a specific protocol within a project." }, { "slug": "CENTRALSTATIONCRM_CREATE_PROTOCOL", "name": "Create Protocol", "description": "Tool to create a new protocol entry. Use when you need to log an activity, note, or communication related to people, companies, deals, or projects." }, { "slug": "CENTRALSTATIONCRM_CREATE_PROTOCOLS_ATTACHMENTS", "name": "Create Protocol Attachment", "description": "Tool to create an attachment for a protocol in CentralStationCRM. Use when you need to upload a Base64-encoded file to a specific protocol." }, { "slug": "CENTRALSTATIONCRM_CREATE_TAGS", "name": "Create Tag", "description": "Tool to create a new tag for a person, company, or deal. Use when you need to categorize or label CRM records." }, { "slug": "CENTRALSTATIONCRM_CREATE_TASKS", "name": "Create Task", "description": "Tool to create a new task record. Use when you need to add a task to a user's workflow or attach it to an existing person, company, or deal." }, { "slug": "CENTRALSTATIONCRM_DELETE_ATTACHMENTS", "name": "Delete Attachments", "description": "Tool to delete an attachment by ID. Use when you need to permanently remove an attachment after verifying the correct attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_AVATARS", "name": "Delete Avatar", "description": "Tool to delete an avatar by its ID. Use when you need to remove an avatar from the system after confirming the avatar ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_CAL_EVENT", "name": "Delete Calendar Event", "description": "Tool to delete a calendar event by ID. Use when you need to permanently remove a calendar event after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_CAL_EVENT_ATTENDEE", "name": "Delete Calendar Event Attendee", "description": "Tool to delete a calendar event attendee by ID. Use when you need to remove an attendee from a calendar event." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment by its ID. Use when you need to permanently remove a comment after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMPANIES_AVATARS", "name": "Delete Company Avatar", "description": "Tool to delete a company's avatar by its ID. Use when you need to remove an outdated or incorrect avatar after confirming the company_id and avatar ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMPANIES_CONTACT_DETAIL", "name": "Delete Company Contact Detail", "description": "Tool to delete a contact detail of a company. Use when you need to remove an outdated or incorrect contact detail after confirming the company_id and contact_detail_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMPANIES_PROTOCOLS_ATTACHMENTS", "name": "Delete Company Protocol Attachment", "description": "Tool to delete a specific attachment from a company protocol. Use when you need to permanently remove an attachment from a protocol after verifying the correct company ID, protocol ID, and attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company record by ID. Use when you need to permanently remove an organization after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_COMPANY_ADDRESS", "name": "Delete Company Address", "description": "Tool to delete a company's address by its ID. Use when you need to remove an outdated or incorrect address after confirming the company_id and address_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_CUSTOM_FIELDS_TYPES", "name": "Delete Custom Field Type", "description": "Tool to delete a custom field type by ID. Use when you need to permanently remove a custom field definition after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_DEALS", "name": "Delete Deal", "description": "Tool to delete a deal record by ID. Use when you need to permanently remove a deal after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_DEALS_PROTOCOLS_ATTACHMENTS", "name": "Delete Deal Protocol Attachment", "description": "Tool to delete a specific attachment from a deal protocol. Use when you need to permanently remove an attachment from a protocol after verifying the correct deal ID, protocol ID, and attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_GROUP_CALENDAR", "name": "Delete Group Calendar", "description": "Tool to delete a group calendar by ID. Use when you need to permanently remove a group calendar after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_HOOKS", "name": "Delete Hook", "description": "Tool to delete a webhook by ID. Use when you need to destroy a hook after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PEOPLE_CUSTOM_FIELDS", "name": "Delete People Custom Fields", "description": "Tool to delete a person's custom field by its ID. Use when you need to remove a custom field after confirming the person_id and custom field id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PEOPLE_POSITIONS", "name": "Delete People Positions", "description": "Tool to delete a position of a person by its ID. Use when you need to remove a job position or company affiliation after confirming the person_id and position_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PEOPLE_PROTOCOLS_ATTACHMENTS", "name": "Delete Person Protocol Attachment", "description": "Tool to delete a specific attachment from a person protocol. Use when you need to permanently remove an attachment from a protocol after verifying the correct person ID, protocol ID, and attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON", "name": "Delete person", "description": "Tool to delete a person record by ID. Use when you need to permanently remove a contact after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_ADDRESS", "name": "Delete Person Address", "description": "Tool to delete a person's address by its ID. Use when you need to remove an outdated or incorrect address after confirming the person_id and address_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_ASSI", "name": "Delete Person Assi", "description": "Tool to delete an assi entry of a person. Use when you need to remove an assistant record after confirming person_id and assi_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_AVATAR", "name": "Delete Person Avatar", "description": "Tool to delete a person's avatar by its ID. Use when you need to remove an outdated or incorrect avatar after confirming the person_id and avatar_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_CONTACT_DETAIL", "name": "Delete Person Contact Detail", "description": "Tool to delete a contact detail of a person. Use when you need to remove an outdated or incorrect contact detail after confirming the person_id and contact_detail_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_HISTORIC_EVENT", "name": "Delete Person Historic Event", "description": "Tool to delete a historic event of a person by its ID. Use when you need to remove outdated or incorrect milestone entries after confirming the person_id and historic_event_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PERSON_TAG", "name": "Delete Person Tag", "description": "Tool to destroy a tag from a person by its ID. Use when you need to remove a tag association from a person's record after confirming the person_id and tag_id." }, { "slug": "CENTRALSTATIONCRM_DELETE_PROJECTS", "name": "Delete Project", "description": "Tool to delete a project record by ID. Use when you need to permanently remove a project after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PROJECTS_PROTOCOLS_ATTACHMENTS", "name": "Delete Project Protocol Attachment", "description": "Tool to delete a specific attachment from a project protocol. Use when you need to permanently remove an attachment from a protocol after verifying the correct project ID, protocol ID, and attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PROTOCOL", "name": "Delete Protocol", "description": "Tool to delete a protocol by ID. Use when you need to permanently remove a protocol record after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_PROTOCOLS_ATTACHMENTS", "name": "Delete Protocol Attachment", "description": "Tool to delete an attachment from a protocol. Use when you need to permanently remove an attachment from a protocol after verifying the correct protocol ID and attachment ID." }, { "slug": "CENTRALSTATIONCRM_DELETE_TASKS", "name": "Delete Task", "description": "Tool to delete a task by its ID. Use when you need to permanently remove a task after verifying the correct ID." }, { "slug": "CENTRALSTATIONCRM_GET_ACTIVITY", "name": "Get Activity", "description": "Tool to retrieve details of a specific activity by its ID. Use when you have an activity ID and need its details." }, { "slug": "CENTRALSTATIONCRM_GET_API_USER_MAILDROP", "name": "Get API User Maildrop", "description": "Tool to retrieve the current API user's maildrop for people and companies. Use after authenticating the API user." }, { "slug": "CENTRALSTATIONCRM_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to retrieve details of a specific attachment by its ID. Use when you have an attachment ID and need to fetch the attachment metadata or file data." }, { "slug": "CENTRALSTATIONCRM_GET_AVATARS", "name": "Get Avatar", "description": "Tool to retrieve a specific avatar by its ID from CentralStationCRM. Use when you know the avatar ID and need to fetch its details including Base64-encoded image data." }, { "slug": "CENTRALSTATIONCRM_GET_CAL_EVENT", "name": "Get Calendar Event", "description": "Tool to retrieve details of a specific calendar event by ID. Use when you have a calendar event ID and need its full details." }, { "slug": "CENTRALSTATIONCRM_GET_CAL_EVENT_ATTENDEE", "name": "Get Calendar Event Attendee", "description": "Tool to retrieve details of a specific calendar event attendee by ID. Use when you have both a calendar event ID and attendee ID." }, { "slug": "CENTRALSTATIONCRM_GET_COMMENT", "name": "Get Comment", "description": "Tool to retrieve details of a specific comment by its ID. Use when you need to fetch a comment's content and metadata." }, { "slug": "CENTRALSTATIONCRM_GET_COMPANIES_AVATARS", "name": "Get Company Avatar", "description": "Tool to retrieve a specific avatar of a company by avatar ID. Use when you need to fetch the Base64-encoded image for a known company avatar." }, { "slug": "CENTRALSTATIONCRM_GET_COMPANIES_PROTOCOLS_ATTACHMENT", "name": "Get Company Protocol Attachment", "description": "Tool to retrieve a specific attachment from a company protocol by its ID. Use when you need to fetch attachment metadata or file data for a protocol attachment." }, { "slug": "CENTRALSTATIONCRM_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve details of a specific company by ID from CentralStationCRM. Use after confirming the company ID." }, { "slug": "CENTRALSTATIONCRM_GET_COMPANY_ADDRESS", "name": "Get Company Address", "description": "Tool to retrieve a specific address of a company by address ID. Use after confirming company and address IDs. Example: \"Fetch address #40909645 for company #1809535128.\"" }, { "slug": "CENTRALSTATIONCRM_GET_COMPANY_CONTACT_DETAIL", "name": "Get Company Contact Detail", "description": "Tool to retrieve a specific contact detail by ID for a company. Use after confirming company and contact detail IDs. Example: \"Fetch contact detail #104232123 for company #1809508479.\"" }, { "slug": "CENTRALSTATIONCRM_GET_CUSTOM_FIELDS_TYPE", "name": "Get Custom Fields Type", "description": "Tool to retrieve a custom field type by its ID. Use when you need details about a specific custom field configuration." }, { "slug": "CENTRALSTATIONCRM_GET_DEAL", "name": "Get Deal", "description": "Tool to retrieve details of a specific deal by its ID. Use when you have a confirmed deal ID." }, { "slug": "CENTRALSTATIONCRM_GET_DEALS_MAILDROP", "name": "Get Deal Maildrop", "description": "Tool to retrieve the maildrop email address for a specific deal. Use when you need to get the unique email address for sending emails to a deal." }, { "slug": "CENTRALSTATIONCRM_GET_DEALS_PROTOCOLS_ATTACHMENTS", "name": "Get Deal Protocol Attachment", "description": "Tool to retrieve a specific attachment from a deal protocol. Use when you need to fetch attachment details or file data associated with a protocol within a specific deal." }, { "slug": "CENTRALSTATIONCRM_GET_GROUP_CALENDAR", "name": "Get Group Calendar", "description": "Tool to retrieve details of a specific group calendar by ID. Use when you have a group calendar ID and need its details." }, { "slug": "CENTRALSTATIONCRM_GET_HOOK", "name": "Get Hook", "description": "Tool to retrieve details of a specific webhook/hook by ID. Use when you need to inspect hook configuration or verify hook setup." }, { "slug": "CENTRALSTATIONCRM_GET_PEOPLE_POSITIONS", "name": "Get People Positions", "description": "Tool to retrieve a specific position for a person by ID. Use when you need to get details of a particular job position. Example: \"Get position 32171509 for person 43058116.\"" }, { "slug": "CENTRALSTATIONCRM_GET_PEOPLE_PROTOCOLS_ATTACHMENTS", "name": "Get Person Protocol Attachment", "description": "Tool to retrieve a specific attachment from a person protocol. Use when you need to fetch attachment details or file data associated with a protocol within a specific person." }, { "slug": "CENTRALSTATIONCRM_GET_PEOPLE_TAGS", "name": "Get People Tags", "description": "Tool to retrieve a specific tag for a person by tag ID. Use when you need details about a particular tag associated with a person." }, { "slug": "CENTRALSTATIONCRM_GET_PERSON", "name": "Get Person", "description": "Tool to retrieve details of a specific person by ID. Use when you have a person_id and need their full details." }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_ADDRESS", "name": "Get Person Address", "description": "Tool to retrieve a specific address of a person by address ID. Use after confirming person and address IDs. Example: \"Fetch address for person #42, address #101.\"" }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_ADDRESSES", "name": "Get Person Addresses", "description": "Tool to retrieve all addresses for a specific person. Use when you need to list a person’s addresses after confirming their ID. Example: \"Get addresses for person with ID 42.\"" }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_ASSI", "name": "Get Person Assi", "description": "Tool to retrieve a specific assistant (assi) entry for a person by their IDs. Returns detailed assistant information including contact details (name, email, phone) and whether they are the primary contact. Use this when you need full details about a specific assistant after obtaining both the person_id and assi_id." }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_AVATAR", "name": "Get Person Avatar", "description": "Tool to retrieve a specific avatar of a person by avatar ID. Use after you know both person_id and avatar_id to fetch the Base64-encoded image." }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_CONTACT_DETAIL", "name": "Get Person Contact Detail", "description": "Tool to retrieve a specific contact detail by ID for a person. Use after confirming person and contact detail IDs. Example: \"Fetch contact detail #108 for person #42.\"" }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_CUSTOM_FIELD", "name": "Get Person Custom Field", "description": "Tool to retrieve a specific custom field for a person by custom field ID. Use when you need details about a particular custom field associated with a person." }, { "slug": "CENTRALSTATIONCRM_GET_PERSON_HISTORIC_EVENT", "name": "Get Person Historic Event", "description": "Tool to retrieve a specific historic event of a person by ID. Use after confirming both person and event IDs. Example: \"Fetch historic event 101 for person 42.\"" }, { "slug": "CENTRALSTATIONCRM_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a specific project by ID from CentralStationCRM. Use after confirming the project ID." }, { "slug": "CENTRALSTATIONCRM_GET_PROJECTS_MAILDROP", "name": "Get Project Maildrop", "description": "Tool to retrieve the maildrop email address for a specific project. Use when you need to get the unique email address for sending emails to a project." }, { "slug": "CENTRALSTATIONCRM_GET_PROJECTS_PROTOCOLS_ATTACHMENT", "name": "Get Project Protocol Attachment", "description": "Tool to retrieve a specific attachment from a project protocol by its ID. Use when you have a project ID, protocol ID, and attachment ID and need to fetch the attachment metadata or file data." }, { "slug": "CENTRALSTATIONCRM_GET_PROTOCOLS_ATTACHMENTS", "name": "Get Protocol Attachment", "description": "Tool to retrieve a specific attachment from a protocol by its ID. Use when you need to fetch attachment metadata or file data for a protocol attachment." }, { "slug": "CENTRALSTATIONCRM_GET_STATS_COMPANIES", "name": "Get Stats Companies", "description": "Retrieve statistics about companies in your CRM. Returns the total count of companies matching the specified criteria. Use this when you need a quick count without fetching full company records. Supports filtering by tags and various field criteria (user_id, created_by_user_id, account_id, group_id, etc.) using operators like 'equal', 'larger_than', 'smaller_than', 'between', and 'in'." }, { "slug": "CENTRALSTATIONCRM_GET_STATS_DEALS", "name": "Get Stats Deals", "description": "Retrieve statistics about deals in your CRM. Returns the total count, currency, and sum of deals matching the specified criteria. Use this when you need aggregated deal metrics without fetching full deal records. Supports filtering by tags and various field criteria (user_id, created_by_user_id, account_id, group_id, etc.) using operators like 'equal', 'larger_than', 'smaller_than', 'between', and 'in'." }, { "slug": "CENTRALSTATIONCRM_GET_STATS_PROJECTS", "name": "Get Stats Projects", "description": "Retrieve statistics about projects in your CRM. Returns the total count and size of projects matching the specified criteria. Use this when you need aggregated project metrics without fetching full project records. Supports filtering by tags and various field criteria (user_id, created_by_user_id, account_id, group_id, etc.) using operators like 'equal', 'larger_than', 'smaller_than', 'between', and 'in'." }, { "slug": "CENTRALSTATIONCRM_GET_TASK", "name": "Get Task", "description": "Tool to retrieve details of a specific task by its ID. Use when you have a task ID and need its details." }, { "slug": "CENTRALSTATIONCRM_GET_USER", "name": "Get User", "description": "Tool to retrieve the current API user's details. Use when you need information about the authenticated user." }, { "slug": "CENTRALSTATIONCRM_GET_USER_BY_ID", "name": "Get User By ID", "description": "Tool to retrieve details of a specific user by ID. Use when you need to fetch information about a particular user from CentralStationCRM." }, { "slug": "CENTRALSTATIONCRM_LIST_ACTIVITIES", "name": "List Activities", "description": "Tool to retrieve activities for records in CentralStationCRM. Use when you need to list activities with optional filtering by person, company, deal, project, user, or account. Supports pagination and includes additional data like user and activity receivers." }, { "slug": "CENTRALSTATIONCRM_LIST_ATTACHMENTS", "name": "List Attachments", "description": "Tool to retrieve a paginated list of all attachments from CentralStationCRM. Use when you need to list, browse, or search through attachments in the system." }, { "slug": "CENTRALSTATIONCRM_LIST_AVATARS", "name": "List Avatars", "description": "Tool to retrieve all avatars from CentralStationCRM. Use when you need to list all avatars in the system with pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_CAL_EVENTS", "name": "List Calendar Events", "description": "Tool to retrieve all calendar events from the account. Use when you need to list calendar events with optional filtering by date, state, or custom attributes. Supports pagination and includes for related data." }, { "slug": "CENTRALSTATIONCRM_LIST_CAL_EVENTS_CAL_EVENT_ATTENDEES", "name": "List Calendar Event Attendees", "description": "Tool to retrieve all attendees for a specific calendar event. Use when you need to get the list of people attending a calendar event." }, { "slug": "CENTRALSTATIONCRM_LIST_COMMENTS", "name": "List Comments", "description": "Tool to retrieve all comments from the account. Use when you need to list all comments with optional pagination and ordering support." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES", "name": "List Companies", "description": "Tool to retrieve a paginated list of all companies from CentralStationCRM. Use when you need to browse or search through companies with filtering and pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES_ADDRS", "name": "List Company Addresses", "description": "Tool to retrieve all addresses for a specific company. Use when you need to list a company's addresses after confirming their ID." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES_AVATARS", "name": "List Company Avatars", "description": "Tool to retrieve all avatars for a specific company. Use when you need to list a company's avatars after confirming their ID." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES_CONTACT_DETAILS", "name": "List Company Contact Details", "description": "Tool to retrieve all contact details for a specific company. Use when you need to list contact information after confirming the company ID." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES_EXTERNAL_EMAILS", "name": "List Companies External Emails", "description": "Tool to retrieve all external emails for a specific company from CentralStationCRM. Use when you need to access email communications associated with a company." }, { "slug": "CENTRALSTATIONCRM_LIST_COMPANIES_PROTOCOLS_ATTACHMENTS", "name": "List Company Protocol Attachments", "description": "Tool to retrieve all attachments for a specific protocol within a company. Use when you need to list attachments associated with a company's protocol." }, { "slug": "CENTRALSTATIONCRM_LIST_CUSTOM_FIELDS_TYPES", "name": "List Custom Fields Types", "description": "Tool to retrieve all custom field types of the account. Use when you need to understand what custom fields are available in the CRM system." }, { "slug": "CENTRALSTATIONCRM_LIST_DEALS", "name": "List Deals", "description": "Tool to retrieve all deals with advanced filtering, sorting, and pagination options. Use when you need to list deals with specific filters (tags, date ranges, custom attributes), ordering, or include related data like people, companies, tasks, and custom fields." }, { "slug": "CENTRALSTATIONCRM_LIST_DEALS_EXTERNAL_EMAILS", "name": "List Deals External Emails", "description": "Tool to retrieve all external emails for a specific deal from CentralStationCRM. Use when you need to access email communications associated with a deal." }, { "slug": "CENTRALSTATIONCRM_LIST_DEALS_PROTOCOLS_ATTACHMENTS", "name": "List Deal Protocol Attachments", "description": "Tool to retrieve all attachments for a specific protocol within a deal. Use when you need to list attachments associated with a deal's protocol." }, { "slug": "CENTRALSTATIONCRM_LIST_EXTERNAL_EMAILS", "name": "List External Emails", "description": "Tool to retrieve all external emails from CentralStationCRM. Use when you need to access email communications across the system with pagination and filtering support." }, { "slug": "CENTRALSTATIONCRM_LIST_FILTER_GROUPS", "name": "List Filter Groups", "description": "Tool to retrieve all filter groups from CentralStationCRM. Use when you need to browse or list available filter groups with pagination and filtering support." }, { "slug": "CENTRALSTATIONCRM_LIST_GROUP_CALENDARS", "name": "List Group Calendars", "description": "Tool to retrieve all group calendars from the account. Use when you need to list group calendars with optional pagination and includes for related calendar events." }, { "slug": "CENTRALSTATIONCRM_LIST_HISTORIC_EVENTS", "name": "List Historic Events", "description": "Tool to retrieve all historic events from the CentralStationCRM account. Use when you need to list historic events with optional filtering and pagination." }, { "slug": "CENTRALSTATIONCRM_LIST_HOOKS", "name": "List Hooks", "description": "Tool to retrieve all hooks of the account from CentralStationCRM. Use when you need to list, browse, or inspect webhook configurations in the system." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE", "name": "List People", "description": "Tool to retrieve a paginated list of all people from CentralStationCRM. Use when you need to browse or search through people with filtering and pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_ASSIS", "name": "List People Assis", "description": "Tool to retrieve all assis of a person. Use when you need to list all assistant contacts associated with a specific person by their ID." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_AVATARS", "name": "List People Avatars", "description": "Tool to retrieve all avatars for a specific person. Use when you need to list a person's avatar images with pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_CONTACT_DETAILS", "name": "List People Contact Details", "description": "Tool to retrieve all contact details for a specific person. Use when you need to list contact information after confirming the person ID." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_CUSTOM_FIELDS", "name": "List People Custom Fields", "description": "Tool to retrieve all custom fields for a specific person from the dedicated custom fields endpoint. Use when you need to list a person's custom fields after confirming their ID." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_EXTERNAL_EMAILS", "name": "List People External Emails", "description": "Tool to retrieve all external emails for a specific person from CentralStationCRM. Use when you need to access email communications associated with a person." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_HISTORIC_EVENTS", "name": "List People Historic Events", "description": "Tool to retrieve all historic events of a person. Use when you need to list all milestone dates (birthdays, anniversaries, etc.) recorded for a specific person." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_POSITIONS", "name": "List People Positions", "description": "Tool to retrieve all positions for a specific person. Use when you need to list a person's job positions or company affiliations. Example: \"Get all positions for person with ID 43057993.\"" }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_PROTOCOLS_ATTACHMENTS", "name": "List People Protocol Attachments", "description": "Tool to retrieve all attachments for a specific protocol within a person. Use when you need to list attachments associated with a person's protocol." }, { "slug": "CENTRALSTATIONCRM_LIST_PEOPLE_TAGS", "name": "List People Tags", "description": "Tool to retrieve all tags for a specific person. Use when you need to list a person's tags after confirming their ID." }, { "slug": "CENTRALSTATIONCRM_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve a paginated list of all projects from CentralStationCRM. Use when you need to browse or search through projects with filtering and pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_PROJECTS_EXTERNAL_EMAILS", "name": "List Projects External Emails", "description": "Tool to retrieve all external emails for a specific project from CentralStationCRM. Use when you need to access email communications associated with a project." }, { "slug": "CENTRALSTATIONCRM_LIST_PROJECTS_PROTOCOLS_ATTACHMENTS", "name": "List Project Protocol Attachments", "description": "Tool to retrieve all attachments for a specific protocol within a project. Use when you need to list attachments associated with a project's protocol." }, { "slug": "CENTRALSTATIONCRM_LIST_PROTOCOLS", "name": "List Protocols", "description": "Tool to retrieve all protocols from CentralStationCRM. Use when you need to list protocols with optional filtering by person, company, deal, or project." }, { "slug": "CENTRALSTATIONCRM_LIST_PROTOCOLS_ATTACHMENTS", "name": "List Protocol Attachments", "description": "Tool to retrieve all attachments for a specific protocol. Use when you need to list attachments associated with a protocol." }, { "slug": "CENTRALSTATIONCRM_LIST_TAGS", "name": "List Tags", "description": "Tool to retrieve all tags from CentralStationCRM. Use when you need to browse tags with optional filtering by person, company, deal, or project." }, { "slug": "CENTRALSTATIONCRM_LIST_TAGS2", "name": "List Tags 2", "description": "Tool to retrieve all tag names from CentralStationCRM. Use when you need a simple list of tag names (strings) with pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve a paginated list of all tasks from CentralStationCRM. Use when you need to browse or search through tasks with filtering and pagination support." }, { "slug": "CENTRALSTATIONCRM_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all users of the account from CentralStationCRM. Use when you need to list system users with pagination support." }, { "slug": "CENTRALSTATIONCRM_MERGE_COMPANIES", "name": "Merge Companies", "description": "Tool to merge multiple companies into an existing company by ID. Use after identifying duplicate company records to consolidate them." }, { "slug": "CENTRALSTATIONCRM_MERGE_PERSON", "name": "Merge Person", "description": "Tool to merge another person into an existing person by ID. Use after identifying duplicate records to consolidate them. Example: merge person 42 with [43,44]." }, { "slug": "CENTRALSTATIONCRM_SEARCH_ATTACHMENTS", "name": "Search Attachments", "description": "Search for attachments in CentralStationCRM by filename. Returns a list of attachments with their metadata including file details, timestamps, and optional related data such as user, category, and comments. Use when you need to find specific files or documents attached to CRM records." }, { "slug": "CENTRALSTATIONCRM_SEARCH_COMPANIES", "name": "Search Companies", "description": "Tool to search for companies in CentralStationCRM by name. Use when you need to find companies matching a specific name or retrieve a list of all companies with pagination support." }, { "slug": "CENTRALSTATIONCRM_SEARCH_COMPANIES_PROTOCOLS_ATTACHMENTS", "name": "Search Company Protocol Attachments", "description": "Tool to search for attachments within a specific protocol of a company. Use when you need to find specific attachments by filename within a company's protocol." }, { "slug": "CENTRALSTATIONCRM_SEARCH_CONTACT_DETAILS", "name": "Search Contact Details", "description": "Tool to search for contact details in CentralStationCRM by name, email, phone, or other criteria. Use when you need to find people or companies by their contact information such as email addresses or phone numbers." }, { "slug": "CENTRALSTATIONCRM_SEARCH_DEALS", "name": "Search Deals", "description": "Tool to search for deals by name and retrieve matching results with pagination. Use when you need to find specific deals or filter the deal list by name." }, { "slug": "CENTRALSTATIONCRM_SEARCH_DEALS_PROTOCOLS_ATTACHMENTS", "name": "Search Deal Protocol Attachments", "description": "Tool to search for attachments within a specific deal protocol in CentralStationCRM. Returns a list of attachments matching the search criteria with their metadata including file details, timestamps, and optional related data such as user, category, and comments. Use when you need to find specific files or documents attached to a deal protocol." }, { "slug": "CENTRALSTATIONCRM_SEARCH_PEOPLE", "name": "Search People", "description": "Search for people in CentralStationCRM by name, email, phone, or other text criteria. Returns a paginated list of people with their complete profile information including contact details, timestamps, and associated metadata. All parameters are optional; if no query is provided, returns all people with default pagination." }, { "slug": "CENTRALSTATIONCRM_SEARCH_PEOPLE_PROTOCOLS_ATTACHMENTS", "name": "Search Person Protocol Attachments", "description": "Tool to search for attachments within a specific person protocol in CentralStationCRM. Returns a list of attachments matching the search criteria with their metadata including file details, timestamps, and optional related data such as user, category, and comments. Use when you need to find specific files or documents attached to a person protocol." }, { "slug": "CENTRALSTATIONCRM_SEARCH_PEOPLE_V2", "name": "Search People V2", "description": "Tool to search for people in CentralStationCRM using specific criteria like name, email, or phone. Use when you need to find people by last name, first name, email address, or phone number. Supports pagination and optional includes for additional related data." }, { "slug": "CENTRALSTATIONCRM_SEARCH_PROJECTS", "name": "Search Projects", "description": "Tool to search for projects in CentralStationCRM by name. Use when you need to find projects matching a specific name or retrieve a list of all projects with pagination support." }, { "slug": "CENTRALSTATIONCRM_SEARCH_PROJECTS_PROTOCOLS_ATTACHMENTS", "name": "Search Project Protocol Attachments", "description": "Tool to search for attachments within a specific protocol of a project. Use when you need to find specific attachments by filename within a project's protocol." }, { "slug": "CENTRALSTATIONCRM_SEARCH_RECORDS", "name": "Search Records", "description": "Tool to retrieve search results from CentralStationCRM. Use when you need to search for records using a search term." }, { "slug": "CENTRALSTATIONCRM_SEARCH_USERS", "name": "Search Users", "description": "Tool to search for users in CentralStationCRM by first name or last name. Use when you need to find users matching specific name criteria or retrieve a list of all users with pagination support." }, { "slug": "CENTRALSTATIONCRM_STATS_PEOPLE", "name": "Stats People", "description": "Retrieve statistics about people (contacts) in your CRM. Returns the total count of people matching the specified criteria. Use this when you need a quick count without fetching full person records. Supports filtering by tags and various field criteria (user_id, created_by_user_id, account_id, group_id, etc.) using operators like 'equal', 'larger_than', 'smaller_than', and 'between'." }, { "slug": "CENTRALSTATIONCRM_UPDATE_CAL_EVENT", "name": "Update Calendar Event", "description": "Tool to update an existing calendar event by ID. Use when you need to modify event details such as name, time, status, or attendees." }, { "slug": "CENTRALSTATIONCRM_UPDATE_CAL_EVENT_ATTENDEE", "name": "Update Calendar Event Attendee", "description": "Tool to update a calendar event attendee. Use when you need to modify attendee status, email, or associated person/user for a calendar event." }, { "slug": "CENTRALSTATIONCRM_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment by ID. Use when you need to modify the text or properties of a comment attached to tasks, events, or other entities." }, { "slug": "CENTRALSTATIONCRM_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company by ID. Use after retrieving the company's details when you need to modify one or more fields." }, { "slug": "CENTRALSTATIONCRM_UPDATE_COMPANY_ADDRESS", "name": "Update Company Address", "description": "Tool to update a specific address of a company. Use after retrieving the company's addresses to modify one." }, { "slug": "CENTRALSTATIONCRM_UPDATE_COMPANY_CONTACT_DETAIL", "name": "Update Company Contact Detail", "description": "Tool to update a contact detail for a company by ID. Use after retrieving the company's contact details to modify one." }, { "slug": "CENTRALSTATIONCRM_UPDATE_CUSTOM_FIELDS_TYPE", "name": "Update Custom Field Type", "description": "Tool to update a custom field type by ID. Use when you need to modify the category, data type, name, options, or position of an existing custom field definition." }, { "slug": "CENTRALSTATIONCRM_UPDATE_DEAL", "name": "Update Deal", "description": "Tool to update an existing deal record. Use when you need to modify deal details like background, state, value, or associated entities." }, { "slug": "CENTRALSTATIONCRM_UPDATE_GROUP_CALENDARS", "name": "Update Group Calendar", "description": "Tool to update an existing group calendar by ID. Use when you need to modify calendar properties like name, color, or read-only status." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PEOPLE_CUSTOM_FIELDS", "name": "Update People Custom Fields", "description": "Tool to update a person's custom field by its ID. Use when you need to modify a custom field value after confirming the person_id and custom field id." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PEOPLE_POSITION", "name": "Update People Position", "description": "Tool to update a position for a specific person. Use after retrieving the person's positions when you need to modify position details such as title, department, or status." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON", "name": "Update Person", "description": "Tool to update an existing person by ID. Use after retrieving the person's current details when you need to modify one or more fields." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON_ADDRESS", "name": "Update Person Address", "description": "Tool to update a specific address of a person. Use after retrieving the person's addresses to modify one." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON_ASSI", "name": "Update Person Assi", "description": "Tool to update an assi entry of a person. Use when you need to modify a specific assistant record after retrieving the person’s assis list. Example: \"Update assi 101 for person 42 changing email to foo@example.com\"." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON_CONTACT_DETAIL", "name": "Update Person Contact Detail", "description": "Tool to update a specific contact detail of a person by ID. Use after retrieving the person's contact details to modify one." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON_HISTORIC_EVENT", "name": "Update Person Historic Event", "description": "Tool to update a historic event of a person by ID. Use after retrieving the event when you need to modify its details. Example: \"Update historic event 101 for person 42 changing atype to anniversary.\"" }, { "slug": "CENTRALSTATIONCRM_UPDATE_PERSON_TAG", "name": "Update Person Tag", "description": "Tool to update a tag on a person. Use when you need to modify an existing tag's name or properties for a specific person." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project record. Use when you need to modify project details like name, target date, state, or associated entities." }, { "slug": "CENTRALSTATIONCRM_UPDATE_PROTOCOL", "name": "Update Protocol", "description": "Tool to update an existing protocol by ID. Use when you need to modify the content or metadata of a protocol record." }, { "slug": "CENTRALSTATIONCRM_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task by ID. Use when you need to modify task details such as name, status, badge, or assigned user." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "centralstationcrm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account Subdomain", "type": "string", "description": "The subdomain associated with your CentralStationCRM account, used to construct the base URL.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "CentralStationCRM API Key", "type": "string", "description": "The API key for authenticating requests to CentralStationCRM.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "certifier", "name": "Certifier", "logo": "https://logos.composio.dev/api/certifier", "description": "Certifier is a platform that enables organizations to create, manage, and issue digital certificates and credentials.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CERTIFIER_CREATE_ISSUE_SEND_CREDENTIAL", "name": "Create, issue, and send credential", "description": "Tool to create, issue, and send a credential in a single request. Use when group ID and recipient details are ready." }, { "slug": "CERTIFIER_LIST_ATTRIBUTES", "name": "List Attributes", "description": "Tool to list all attributes available for credentials. Use when you need to retrieve attribute definitions with pagination." }, { "slug": "CERTIFIER_LIST_CREDENTIAL_INTERACTIONS", "name": "List Credential Interactions", "description": "Tool to list credential interactions. Use when you need to retrieve interaction events for a specific credential, with optional filtering and pagination." }, { "slug": "CERTIFIER_LIST_CREDENTIALS", "name": "List Credentials", "description": "Tool to list credentials. Use after authentication to retrieve paginated credentials." }, { "slug": "CERTIFIER_LIST_DESIGNS", "name": "List Designs", "description": "Tool to list all designs. Use after authentication to retrieve certificate and badge designs with pagination." }, { "slug": "CERTIFIER_LIST_EMAIL_TEMPLATES", "name": "List Email Templates", "description": "Tool to list all email templates available for credential delivery. Use when you need to retrieve available email templates for sending credentials." }, { "slug": "CERTIFIER_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all groups. Use when you need to retrieve groups with pagination (limit and cursor)." }, { "slug": "CERTIFIER_SEARCH_CREDENTIALS", "name": "Search Credentials", "description": "Tool to search for credentials using advanced filters and criteria. Use when you need to find specific credentials based on status, recipient, dates, or other properties. Supports complex queries with logical operators (AND, OR, NOT)." }, { "slug": "CERTIFIER_SEND_CREDENTIAL", "name": "Send a Credential", "description": "Tool to send a published credential via email. Use after confirming the credential is published." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "certifier_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "The access token used for authenticating API requests. Generate it in Certifier Dashboard under Settings -> Developers -> Access Tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "chaindesk", "name": "Chaindesk", "logo": "https://logos.composio.dev/api/chaindesk", "description": "AI chatbot platform for customer support and engagement", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chaindesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Chaindesk API key from account settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "changenow", "name": "Changenow", "logo": "https://logos.composio.dev/api/changenow", "description": "Instant cryptocurrency exchange service with support for 300+ cryptocurrencies", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "changenow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ChangeNOW API key from the affiliate dashboard at https://changenow.io/affiliate", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "changephotos", "name": "Changephotos", "logo": "https://logos.composio.dev/api/changephotos", "description": "Image transformation API supporting resize, rotate, flip, compress, blur, sharpen, grayscale, tint, and format conversion operations", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "changephotos_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key obtained by registering at https://www.change.photos/register", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "chaser", "name": "Chaser", "logo": "https://logos.composio.dev/api/chaser", "description": "Chaser is an accounts receivable automation software that helps businesses automate invoice reminders and get paid faster.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CHASER_CREATE_CONTACT_PERSON", "name": "Create Contact Person", "description": "Tool to create a new contact person for a customer in Chaser. Requires customer_id and external_id. Use when adding additional contacts to an existing customer account." }, { "slug": "CHASER_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice record in the organization. Use after ensuring the customer exists in Chaser." }, { "slug": "CHASER_CREATE_OVERPAYMENT", "name": "Create Overpayment", "description": "Creates a new overpayment record in Chaser for tracking customer overpayments. Overpayments represent amounts paid by customers in excess of invoice amounts and can be used to offset future invoices. The customer must exist in Chaser before creating an overpayment (use POST /customers first if needed). Valid statuses: DRAFT, SUBMITTED, AUTHORISED, PAID, VOIDED, DELETED." }, { "slug": "CHASER_DELETE_CONTACT_PERSON", "name": "Delete Contact Person", "description": "Tool to delete a contact person from a customer record in Chaser. Use this when you need to remove a specific contact person associated with a customer. Requires both the customer identifier and the contact person identifier." }, { "slug": "CHASER_GET_CONTACT_PERSON", "name": "Get Contact Person by ID", "description": "Tool to get a specific contact person by ID for a customer. Use when you need to retrieve detailed information about a contact person associated with a customer in Chaser." }, { "slug": "CHASER_GET_CREDIT_NOTE_BY_ID", "name": "Get Credit Note by ID", "description": "Retrieve detailed information for a specific credit note by its ID. Accepts both internal Chaser IDs and external credit note IDs (with 'ext_' prefix). Use when you need to fetch complete details of a single credit note." }, { "slug": "CHASER_GET_CREDIT_NOTES", "name": "Get Credit Notes", "description": "Retrieves a list of credit notes from Chaser. Supports filtering by customer, status, and date range. Returns all credit notes if no filters are specified." }, { "slug": "CHASER_GET_CURRENT_ORGANISATION", "name": "Get Current Organisation", "description": "Tool to retrieve information about the current organisation associated with the API credentials. Use when you need the organisation ID, currency, timezone, or legal details for the authenticated account." }, { "slug": "CHASER_GET_CUSTOMER_BY_ID", "name": "Get Customer by ID", "description": "Retrieve detailed information for a specific customer by their Chaser customer ID. Use this after obtaining the customer_id from listing customers or creating a customer. The customer_id is the internal Chaser identifier (e.g., 'cust_abc123'), not the external_id from your source system." }, { "slug": "CHASER_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to retrieve a list of all customers associated with the organization. Use when you need to display or process complete customer contact and status information." }, { "slug": "CHASER_GET_INVOICE", "name": "Get Invoice by ID", "description": "Tool to retrieve detailed information for a specific invoice by its ID. Use when you need to view invoice details, payment status, or associated customer information." }, { "slug": "CHASER_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve information about the connected organizations. Use when you need organization IDs, currency, timezone, or legal details before other operations." }, { "slug": "CHASER_GET_OVERPAYMENT", "name": "Get Overpayment", "description": "Retrieve detailed information for a specific overpayment by its ID. Use when you need to fetch overpayment details, check remaining credit, or verify overpayment status. Both internal ID (e.g., op_XXX) and external ID with 'ext_' prefix are supported." }, { "slug": "CHASER_GET_STATUS", "name": "Get Status", "description": "Tool to check the status of the Chaser API. Use when you need to verify if the API is operational before making other requests." }, { "slug": "CHASER_LIST_CONTACT_PERSONS", "name": "List Contact Persons", "description": "Tool to retrieve contact persons for a specific customer. Returns a paginated list of contact persons with their details. Use when you need to get contact information for a customer's representatives." }, { "slug": "CHASER_LIST_INVOICES", "name": "List Invoices", "description": "Tool to retrieve invoices with pagination and filtering. Use when you need to fetch invoice records from Chaser with support for various filter criteria including status, amounts, dates, and customer information." }, { "slug": "CHASER_LIST_OVERPAYMENTS", "name": "List Overpayments", "description": "Tool to retrieve overpayments from Chaser with pagination and filtering. Use when you need to list overpayments, check remaining credits, or filter by customer, amount, currency, or date." }, { "slug": "CHASER_POST_CREDIT_NOTE", "name": "Create Credit Note", "description": "Creates a new credit note record in Chaser for tracking customer credits. Credit notes represent amounts owed to customers and are used to reduce outstanding invoices. The customer must exist in Chaser before creating a credit note (use POST /customers first). Note: ACTIVE is not a valid status for creating credit notes via API. Valid statuses: SUBMITTED, AUTHORISED, PAID, VOIDED, DELETED." }, { "slug": "CHASER_POST_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer record in Chaser. Use after obtaining Basic Auth credentials." }, { "slug": "CHASER_PUT_CREDIT_NOTE", "name": "Update Credit Note", "description": "Update an existing credit note in Chaser. All fields are optional. Use this to modify credit note details such as amount, status, or customer association." }, { "slug": "CHASER_PUT_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer's information using their unique Chaser customer ID. Use after confirming the customer's ID (the 'id' field, not 'externalID'). Example: \"Update contactEmailAddress for customer ID cust_abc123.\"" }, { "slug": "CHASER_PUT_INVOICE", "name": "Update Invoice", "description": "Update an existing invoice in Chaser by its internal ID. Use this to modify invoice status, amounts, dates, payments, or customer associations. Requires the internal Chaser invoice ID (e.g., 'inv_abc123') from invoice creation or retrieval responses." }, { "slug": "CHASER_UPDATE_CONTACT_PERSON", "name": "Update Contact Person", "description": "Tool to update a contact person for a customer in Chaser. Use when you need to modify contact person details such as name, email, or phone numbers." }, { "slug": "CHASER_UPDATE_OVERPAYMENT", "name": "Update Overpayment", "description": "Tool to update an overpayment record in Chaser. Use when modifying overpayment details such as remaining credit, status, or other fields. All fields except overpayment_id are optional." }, { "slug": "CHASER_UPLOAD_INVOICE_PDF", "name": "Upload Invoice PDF", "description": "Upload a PDF file to an existing invoice in Chaser. Use this to attach invoice documentation. The file must be a valid PDF document and is sent as multipart/form-data." }, { "slug": "CHASER_UPSERT_BULK_CUSTOMERS", "name": "Bulk Upsert Customers", "description": "Tool to bulk upsert up to 100 customers in a single operation. Customers are matched by external_id (or id) for updates. Use when you need to create or update multiple customers efficiently." }, { "slug": "CHASER_UPSERT_CONTACT_PERSONS", "name": "Bulk Upsert Contact Persons", "description": "Tool to bulk insert or update contact persons for a customer. Use when you need to create or update multiple contact persons in a single request (up to 100). Matching is done by external_id - existing contacts with the same external_id will be updated, new ones will be inserted." }, { "slug": "CHASER_UPSERT_CREDIT_NOTES_BULK", "name": "Bulk Upsert Credit Notes", "description": "Tool to bulk upsert up to 100 credit notes in a single request. Matches by credit_note_id (or id). Use when you need to create or update multiple credit notes efficiently in Chaser." }, { "slug": "CHASER_UPSERT_INVOICES", "name": "Bulk Upsert Invoices", "description": "Tool to bulk upsert up to 100 invoices in a single request. Invoices are matched by invoice_id for updates or created if not found. Use when you need to create or update multiple invoices efficiently." }, { "slug": "CHASER_UPSERT_OVERPAYMENTS_BULK", "name": "Bulk Upsert Overpayments", "description": "Tool to bulk upsert up to 100 overpayments in Chaser, matching by overpayment_id. Use when you need to create or update multiple overpayment records in a single operation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chaser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Chaser API Key", "type": "string", "description": "The API key provided by Chaser for authentication.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Chaser API Secret", "type": "string", "description": "The API secret provided by Chaser for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "chatbotkit", "name": "Chatbotkit", "logo": "https://logos.composio.dev/api/chatbotkit", "description": "ChatBotKit is a platform that enables developers to build and manage AI-powered chatbots, offering comprehensive APIs and SDKs for seamless integration into applications.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 284, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CHATBOTKIT_ATTACH_DATASET_FILE", "name": "Attach Dataset File", "description": "Tool to attach a file to a dataset as a source. Use when you need to link a specific file to a dataset to provide knowledge content." }, { "slug": "CHATBOTKIT_AUTHENTICATE_SECRET", "name": "Authenticate Secret", "description": "Tool to authenticate a secret by its ID. Use when you need to generate an authentication URL for a specific secret." }, { "slug": "CHATBOTKIT_CLONE_BLUEPRINT", "name": "Clone Blueprint", "description": "Tool to clone an existing blueprint. Use when you need to create a duplicate of a blueprint with all its associated resources." }, { "slug": "CHATBOTKIT_CLONE_BOT", "name": "Clone Bot", "description": "Tool to clone an existing bot. Use when you need to create a duplicate copy of a bot with all its settings and configurations." }, { "slug": "CHATBOTKIT_CLONE_PLATFORM_EXAMPLE", "name": "Clone Platform Example", "description": "Tool to clone a platform example. Use when you need to create instances of all resources defined in a platform example template." }, { "slug": "CHATBOTKIT_CLONE_WIDGET_INTEGRATION", "name": "Clone Widget Integration", "description": "Tool to clone an existing widget integration. Use when you need to duplicate a widget integration while preserving its tested configurations." }, { "slug": "CHATBOTKIT_COMPLETE_CONVERSATION", "name": "Complete Conversation", "description": "Send a message to a ChatBotKit conversation and receive the bot's AI-generated reply. This is the primary action for interacting with a chatbot. It sends user text to an existing conversation and returns the bot's response along with token usage statistics. Prerequisites: - A valid conversation_id (obtain from list_conversations or create_conversation action) - The conversation should have a bot assigned for meaningful responses Returns the AI's reply text, message ID, token usage, and completion reason." }, { "slug": "CHATBOTKIT_CREATE_BLUEPRINT", "name": "Create Blueprint", "description": "Tool to create a new blueprint in ChatBotKit. Use when you need to create a reusable template or configuration blueprint." }, { "slug": "CHATBOTKIT_CREATE_BLUEPRINT_GRAPHQL", "name": "Create Blueprint (GraphQL)", "description": "Tool to create a new blueprint template via GraphQL mutation. Use when you need to create a reusable bot configuration template via the GraphQL API." }, { "slug": "CHATBOTKIT_CREATE_BOT", "name": "Create Bot", "description": "Tool to create a new AI bot with configurable settings. Use when you need to create a new chatbot with specific name, personality, model, and connected resources like datasets or skillsets." }, { "slug": "CHATBOTKIT_CREATE_BOT_GRAPHQL", "name": "Create Bot (GraphQL)", "description": "Tool to create a new bot using GraphQL mutation. Use when you need to create a bot with specified name, description, and other configuration via the GraphQL API." }, { "slug": "CHATBOTKIT_CREATE_BOT_SESSION", "name": "Create Bot Session", "description": "Creates a new bot session with an associated conversation and authentication token. Use this when you need to start a new chat session with a bot, optionally with pre-populated messages." }, { "slug": "CHATBOTKIT_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact. Use when you need to track users interacting with bots. Contacts can have associated memories, secrets, and conversations." }, { "slug": "CHATBOTKIT_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation. Use when you need to start a new chat session with a bot. Conversations store message history between users and bots. You can either reference an existing bot by ID or configure a new bot inline." }, { "slug": "CHATBOTKIT_CREATE_CONVERSATION_MESSAGE", "name": "Create conversation message", "description": "Tool to create a new message in an existing conversation. Use this to add user messages, bot messages, or other message types to a conversation." }, { "slug": "CHATBOTKIT_CREATE_CONVERSATION_MESSAGE_BATCH", "name": "Create conversation message batch", "description": "Tool to create multiple messages in a conversation in a single batch operation. Use this when you need to add multiple messages at once, which is more efficient than creating them individually." }, { "slug": "CHATBOTKIT_CREATE_CONVERSATION_SESSION", "name": "Create Conversation Session", "description": "Tool to create a new conversation session with an authentication token. Use when you need to generate a temporary access token for a conversation." }, { "slug": "CHATBOTKIT_CREATE_DATASET_GRAPHQL", "name": "Create Dataset (GraphQL)", "description": "Tool to create a new dataset using GraphQL mutation. Use when you need to create a dataset to store knowledge and information for bots." }, { "slug": "CHATBOTKIT_CREATE_DATASET_RECORD", "name": "Create Dataset Record", "description": "Tool to create a new record in a dataset. Use when you need to add text data to an existing dataset for knowledge retrieval by bots." }, { "slug": "CHATBOTKIT_CREATE_DISCORD_INTEGRATION", "name": "Create Discord Integration", "description": "Tool to create a Discord integration for a ChatBotKit bot. Use when you need to connect a bot to Discord by providing Discord Application ID, Bot Token, and Public Key." }, { "slug": "CHATBOTKIT_CREATE_EMAIL_INTEGRATION", "name": "Create Email Integration", "description": "Tool to create a new email integration for a ChatBotKit bot. Email integrations enable your bot to receive and respond to emails, making it accessible through email communication channels. Use when you need to connect a bot to handle email-based conversations." }, { "slug": "CHATBOTKIT_CREATE_EXTRACT_INTEGRATION", "name": "Create Extract Integration", "description": "Tool to create a new Extract integration for a ChatBotKit bot. Extract integrations enable your chatbot to automatically pull and extract structured data from conversations based on a predefined JSON schema. Use when you need to capture specific information from user interactions and optionally send it to a webhook endpoint." }, { "slug": "CHATBOTKIT_CREATE_FILE", "name": "Create File", "description": "Tool to create a new file resource in ChatBotKit. Use when you need to create a file that can be attached to datasets for processing and indexing. Note: This creates the file record; use the upload action to add actual file content." }, { "slug": "CHATBOTKIT_CREATE_INSTAGRAM_INTEGRATION", "name": "Create Instagram Integration", "description": "Tool to create an Instagram integration for a ChatBotKit bot. Use when you need to connect a bot to Instagram by providing an Instagram access token." }, { "slug": "CHATBOTKIT_CREATE_INTEGRATION", "name": "Create Support Integration", "description": "Creates a new support integration for a ChatBotKit bot. Support integrations enable your chatbot to handle customer support inquiries and optionally forward conversation summaries to a specified email address. Use this when you need to connect a bot to your customer support workflow." }, { "slug": "CHATBOTKIT_CREATE_MCPSERVER_INTEGRATION", "name": "Create MCP Server Integration", "description": "Tool to create a new MCP Server integration for ChatBotKit. Use when you need to set up an MCP (Model Context Protocol) Server integration to extend bot capabilities with custom server-side functionality." }, { "slug": "CHATBOTKIT_CREATE_MEMORY", "name": "Create Memory", "description": "Tool to create a new memory entry. Use when you need to store information for later retrieval, such as user preferences, conversation context, or important facts associated with a bot or contact." }, { "slug": "CHATBOTKIT_CREATE_MESSENGER_INTEGRATION", "name": "Create Messenger Integration", "description": "Tool to create a Facebook Messenger integration for a ChatBotKit bot. Use when you need to connect a bot to Facebook Messenger by providing a Facebook Page Access Token." }, { "slug": "CHATBOTKIT_CREATE_NOTION_INTEGRATION", "name": "Create Notion Integration", "description": "Tool to create a Notion integration for a ChatBotKit dataset. Use when you need to connect a dataset to Notion for syncing content between Notion pages and ChatBotKit." }, { "slug": "CHATBOTKIT_CREATE_RATING", "name": "Create Rating", "description": "Tool to create a rating in ChatBotKit. Use when you need to submit a numeric rating value for tracking purposes." }, { "slug": "CHATBOTKIT_CREATE_SECRET", "name": "Create Secret", "description": "Tool to create a new secret in ChatBotKit. Secrets store credentials that bots use to access external services via skillset abilities. Use when you need to securely store API keys, tokens, or other authentication credentials." }, { "slug": "CHATBOTKIT_CREATE_SECRET_GRAPHQL", "name": "Create Secret (GraphQL)", "description": "Tool to create a new secret via GraphQL mutation. Use when you need to securely store credentials, API keys, or authentication tokens via the GraphQL API." }, { "slug": "CHATBOTKIT_CREATE_SITEMAP_INTEGRATION", "name": "Create Sitemap Integration", "description": "Tool to create a sitemap integration for a ChatBotKit dataset. Sitemap integrations automatically crawl and index website content from a sitemap.xml file, keeping your dataset synchronized with your website content. Use when you need to import or sync website content into a dataset for bot knowledge." }, { "slug": "CHATBOTKIT_CREATE_SKILLSET", "name": "Create Skillset", "description": "Tool to create a new skillset. Use when you need to group multiple skills into a single reusable unit." }, { "slug": "CHATBOTKIT_CREATE_SLACK_INTEGRATION", "name": "Create Slack Integration", "description": "Tool to create a Slack integration for a ChatBotKit bot. Use when you need to connect a bot to Slack by providing signing secret and bot token from Slack Developer Portal." }, { "slug": "CHATBOTKIT_CREATE_SPACE", "name": "Create Space", "description": "Tool to create a new space in ChatBotKit. Use when you need to create a workspace or organizational container for related resources." }, { "slug": "CHATBOTKIT_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new background task that can be triggered to perform automated operations. Use when you need to set up scheduled or on-demand tasks with configurable bot and contact associations." }, { "slug": "CHATBOTKIT_CREATE_TELEGRAM_INTEGRATION", "name": "Create Telegram Integration", "description": "Tool to create a Telegram integration for a ChatBotKit bot. Use when you need to connect a bot to Telegram by providing a Telegram bot token from BotFather." }, { "slug": "CHATBOTKIT_CREATE_TRIGGER_INTEGRATION", "name": "Create Trigger Integration", "description": "Tool to create a Trigger integration for a ChatBotKit bot. Use when you need to set up automated triggers that can process events and execute bot actions on a schedule or based on specific conditions." }, { "slug": "CHATBOTKIT_CREATE_TWILIO_INTEGRATION", "name": "Create Twilio Integration", "description": "Tool to create a Twilio integration for a ChatBotKit bot. Use when you need to connect a bot to Twilio for SMS or messaging capabilities. All parameters are optional." }, { "slug": "CHATBOTKIT_CREATE_WHATS_APP_INTEGRATION", "name": "Create WhatsApp Integration", "description": "Creates a new WhatsApp integration for a ChatBotKit bot. WhatsApp integrations enable your chatbot to communicate with users through WhatsApp messaging. Use this when you need to connect a bot to WhatsApp Business API for customer engagement." }, { "slug": "CHATBOTKIT_CREATE_WIDGET_INTEGRATION", "name": "Create Widget Integration", "description": "Tool to create a Widget integration for a ChatBotKit bot. Use when you need to create a web widget that can be embedded on websites to enable conversations with a bot." }, { "slug": "CHATBOTKIT_CREATE_WIDGET_INTEGRATION_SESSION", "name": "Create Widget Integration Session", "description": "Creates a new widget integration session for interactive chat. Use this when you need to initialize a widget chat session with optional contact information, initial messages, and custom session duration." }, { "slug": "CHATBOTKIT_DELETE_BLUEPRINT", "name": "Delete Blueprint", "description": "Tool to permanently delete a blueprint from ChatBotKit. Use when you need to remove a blueprint and optionally its associated resources." }, { "slug": "CHATBOTKIT_DELETE_BLUEPRINT_GRAPHQL", "name": "Delete Blueprint (GraphQL)", "description": "Tool to permanently delete a blueprint template via GraphQL mutation. Use when you need to remove a blueprint from the platform using the GraphQL API." }, { "slug": "CHATBOTKIT_DELETE_BOT", "name": "Delete Bot", "description": "Tool to delete a bot. Use when you need to permanently remove a bot from the system." }, { "slug": "CHATBOTKIT_DELETE_BOT_GRAPHQL", "name": "Delete Bot (GraphQL)", "description": "Tool to delete a bot via GraphQL mutation. Use when you need to permanently remove a bot from the system using the GraphQL API." }, { "slug": "CHATBOTKIT_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to permanently delete a contact from ChatBotKit. Use when you need to remove a contact from the system." }, { "slug": "CHATBOTKIT_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to permanently delete a conversation from ChatBotKit. Use when you need to remove a conversation and all its associated messages." }, { "slug": "CHATBOTKIT_DELETE_CONVERSATION_MESSAGE", "name": "Delete Conversation Message", "description": "Tool to permanently delete a message from a conversation in ChatBotKit. Use when you need to remove a specific message from a conversation." }, { "slug": "CHATBOTKIT_DELETE_DATASET", "name": "Delete Dataset", "description": "Tool to permanently delete a dataset from ChatBotKit. Use when you need to remove a dataset and all its associated data." }, { "slug": "CHATBOTKIT_DELETE_DATASET_GRAPHQL", "name": "Delete Dataset (GraphQL)", "description": "Tool to delete a dataset via GraphQL mutation. Use when you need to permanently remove a dataset and all its associated records using the GraphQL API." }, { "slug": "CHATBOTKIT_DELETE_DATASET_RECORD", "name": "Delete Dataset Record", "description": "Tool to permanently delete a record from a dataset. Use when you need to remove a specific record from a ChatBotKit dataset." }, { "slug": "CHATBOTKIT_DELETE_DISCORD_INTEGRATION", "name": "Delete Discord Integration", "description": "Tool to delete a Discord integration. Use when you need to permanently remove a Discord integration from the system." }, { "slug": "CHATBOTKIT_DELETE_EMAIL_INTEGRATION", "name": "Delete Email Integration", "description": "Tool to permanently delete an Email integration from ChatBotKit. Use when you need to remove an Email integration from the system." }, { "slug": "CHATBOTKIT_DELETE_EXTRACT_INTEGRATION", "name": "Delete Extract Integration", "description": "Tool to delete an Extract integration. Use when you need to permanently remove an Extract integration from the system." }, { "slug": "CHATBOTKIT_DELETE_FILE", "name": "Delete File", "description": "Tool to permanently delete a file from ChatBotKit. Use when you need to remove a file from the system." }, { "slug": "CHATBOTKIT_DELETE_INSTAGRAM_INTEGRATION", "name": "Delete Instagram Integration", "description": "Tool to permanently delete an Instagram integration from ChatBotKit. Use when you need to remove an Instagram integration from the system." }, { "slug": "CHATBOTKIT_DELETE_INTEGRATION_GRAPHQL", "name": "Delete Integration (GraphQL)", "description": "Tool to delete an integration via GraphQL mutation. Use when you need to permanently remove an integration from the system using the GraphQL API." }, { "slug": "CHATBOTKIT_DELETE_MCP_SERVER_INTEGRATION", "name": "Delete MCP Server Integration", "description": "Tool to delete an MCP Server integration. Use when you need to permanently remove an MCP Server integration from the system." }, { "slug": "CHATBOTKIT_DELETE_MEMORY", "name": "Delete Memory", "description": "Tool to permanently delete a memory from ChatBotKit. Use when you need to remove a memory from the system." }, { "slug": "CHATBOTKIT_DELETE_MESSENGER_INTEGRATION", "name": "Delete Messenger Integration", "description": "Tool to permanently delete a Messenger integration from ChatBotKit. Use when you need to remove a Messenger integration from the system." }, { "slug": "CHATBOTKIT_DELETE_NOTION_INTEGRATION", "name": "Delete Notion Integration", "description": "Tool to permanently delete a Notion integration from ChatBotKit. Use when you need to remove a Notion integration from the system." }, { "slug": "CHATBOTKIT_DELETE_PARTNER_USER", "name": "Delete Partner User", "description": "Tool to permanently delete a partner user account. Use when you need to clean up test or inactive accounts." }, { "slug": "CHATBOTKIT_DELETE_RATING", "name": "Delete Rating", "description": "Tool to permanently delete a rating from ChatBotKit. Use when you need to remove a rating from the system." }, { "slug": "CHATBOTKIT_DELETE_SECRET", "name": "Delete Secret", "description": "Tool to permanently delete a secret from ChatBotKit. Use when you need to remove a secret from the system." }, { "slug": "CHATBOTKIT_DELETE_SITEMAP_INTEGRATION", "name": "Delete Sitemap Integration", "description": "Tool to permanently delete a Sitemap integration from ChatBotKit. Use when you need to remove a Sitemap integration from the system." }, { "slug": "CHATBOTKIT_DELETE_SKILLSET", "name": "Delete Skillset", "description": "Tool to delete a skillset. Use when you need to permanently remove a skillset from the system." }, { "slug": "CHATBOTKIT_DELETE_SKILLSET_ABILITY", "name": "Delete Skillset Ability", "description": "Tool to delete an ability from a skillset. Use when you need to remove a specific ability from a skillset." }, { "slug": "CHATBOTKIT_DELETE_SLACK_INTEGRATION", "name": "Delete Slack Integration", "description": "Tool to delete a Slack integration. Use when you need to permanently remove a Slack integration from the system." }, { "slug": "CHATBOTKIT_DELETE_SPACE", "name": "Delete Space", "description": "Tool to permanently delete a space from ChatBotKit. Use when you need to remove a space from the system." }, { "slug": "CHATBOTKIT_DELETE_SUPPORT_INTEGRATION", "name": "Delete Support Integration", "description": "Tool to delete a Support integration. Use when you need to permanently remove a Support integration from the system." }, { "slug": "CHATBOTKIT_DELETE_TASK", "name": "Delete Task", "description": "Tool to permanently delete a task from ChatBotKit. Use when you need to remove a task from the system." }, { "slug": "CHATBOTKIT_DELETE_TELEGRAM_INTEGRATION", "name": "Delete Telegram Integration", "description": "Tool to permanently delete a Telegram integration from ChatBotKit. Use when you need to remove a Telegram integration from the system." }, { "slug": "CHATBOTKIT_DELETE_TRIGGER_INTEGRATION", "name": "Delete Trigger Integration", "description": "Tool to permanently delete a Trigger integration from ChatBotKit. Use when you need to remove a Trigger integration from the system." }, { "slug": "CHATBOTKIT_DELETE_TWILIO_INTEGRATION", "name": "Delete Twilio Integration", "description": "Tool to delete a Twilio integration. Use when you need to permanently remove a Twilio integration from the system." }, { "slug": "CHATBOTKIT_DELETE_WHATS_APP_INTEGRATION", "name": "Delete WhatsApp Integration", "description": "Tool to permanently delete a WhatsApp integration from ChatBotKit. Use when you need to remove a WhatsApp integration from the system." }, { "slug": "CHATBOTKIT_DELETE_WIDGET_INTEGRATION", "name": "Delete Widget Integration", "description": "Tool to delete a Widget integration. Use when you need to permanently remove a Widget integration from the system." }, { "slug": "CHATBOTKIT_DETACH_DATASET_FILE", "name": "Detach Dataset File", "description": "Tool to detach a file from a dataset. Use when you need to remove a file's association with a dataset, optionally deleting its records." }, { "slug": "CHATBOTKIT_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download a file by its ID. Use when you need to retrieve a file's content from ChatBotKit." }, { "slug": "CHATBOTKIT_DOWNVOTE_BOT", "name": "Downvote Bot", "description": "Tool to downvote a bot in ChatBotKit. Use when you need to register negative feedback on a bot's performance or quality." }, { "slug": "CHATBOTKIT_DOWNVOTE_CONVERSATION", "name": "Downvote Conversation", "description": "Tool to downvote a conversation in ChatBotKit. Use when you need to register negative feedback on a conversation's quality or outcome." }, { "slug": "CHATBOTKIT_DOWNVOTE_CONVERSATION_MESSAGE", "name": "Downvote Conversation Message", "description": "Tool to downvote a conversation message in ChatBotKit. Use when you need to register negative feedback on a message's quality or appropriateness." }, { "slug": "CHATBOTKIT_ENSURE_CONTACT", "name": "Ensure Contact", "description": "Tool to ensure a contact exists or create a new one. Use when you need to create or retrieve a contact by fingerprint, ensuring idempotent contact management." }, { "slug": "CHATBOTKIT_EXECUTE_GRAPHQL_QUERY", "name": "Execute GraphQL Query", "description": "Tool to execute a GraphQL query or mutation against the ChatBotKit API. Use when you need to run custom GraphQL queries to retrieve or modify data in flexible ways not covered by other actions." }, { "slug": "CHATBOTKIT_EXPORT_CONTACTS", "name": "Export Contacts", "description": "Tool to export contacts with pagination support. Use when you need to retrieve or export contact information from ChatBotKit." }, { "slug": "CHATBOTKIT_EXPORT_CONVERSATIONS", "name": "Export Conversations", "description": "Tool to export conversations with pagination support. Use when you need to retrieve and export conversation data in bulk for analysis, backup, or migration purposes." }, { "slug": "CHATBOTKIT_EXPORT_DATASET_RECORDS", "name": "Export Dataset Records", "description": "Tool to export dataset records with pagination support. Use when you need to retrieve or export record data from a specific ChatBotKit dataset." }, { "slug": "CHATBOTKIT_EXPORT_EVENT_LOGS", "name": "Export Event Logs", "description": "Tool to export event logs with pagination support. Use when you need to retrieve and export event log data for monitoring, auditing, or analysis purposes." }, { "slug": "CHATBOTKIT_EXPORT_MEMORIES", "name": "Export Memories", "description": "Tool to export memories with pagination support. Use when you need to retrieve or export memory information from ChatBotKit." }, { "slug": "CHATBOTKIT_EXPORT_SKILLSET_ABILITIES", "name": "Export Skillset Abilities", "description": "Tool to export all abilities from a specific skillset with pagination support. Use when you need to retrieve the complete list of abilities within a skillset." }, { "slug": "CHATBOTKIT_EXPORT_SPACES", "name": "Export Spaces", "description": "Tool to export spaces with pagination support. Use when you need to retrieve or export space data in bulk for analysis, backup, or migration purposes." }, { "slug": "CHATBOTKIT_EXPORT_TASKS", "name": "Export Tasks", "description": "Tool to export tasks with pagination support. Use when you need to retrieve and export task data in bulk for analysis, backup, or migration purposes." }, { "slug": "CHATBOTKIT_FETCH_BLUEPRINT", "name": "Fetch Blueprint", "description": "Tool to fetch a blueprint by ID. Use when you need to retrieve detailed information about a specific blueprint." }, { "slug": "CHATBOTKIT_FETCH_BLUEPRINT_GRAPHQL", "name": "Fetch Blueprint (GraphQL)", "description": "Tool to fetch a single blueprint by ID using GraphQL. Returns detailed blueprint information including template configuration. Use when you need structured GraphQL response format with complete blueprint metadata." }, { "slug": "CHATBOTKIT_FETCH_BOT", "name": "Fetch Bot", "description": "Tool to fetch a specific bot by its ID. Use when you need detailed information about a particular bot including configuration, model, dataset, and skillset associations." }, { "slug": "CHATBOTKIT_FETCH_BOT_GRAPHQL", "name": "Fetch Bot (GraphQL)", "description": "Tool to fetch a single bot by ID using GraphQL query. Use when you need to retrieve bot configuration, backstory, model, and other details via the GraphQL API." }, { "slug": "CHATBOTKIT_FETCH_BOT_USAGE", "name": "Fetch Bot Usage", "description": "Tool to fetch bot usage statistics for a specific bot. Use when you need to retrieve metrics like conversations, messages, and token usage for a given time period." }, { "slug": "CHATBOTKIT_FETCH_CONTACT", "name": "Fetch Contact", "description": "Tool to retrieve detailed information about a specific contact by ID. Use when you need to access contact details including email, phone, fingerprint, and preferences." }, { "slug": "CHATBOTKIT_FETCH_CONVERSATION", "name": "Fetch Conversation", "description": "Tool to retrieve full details of a specific conversation by its ID. Use when you need complete information about a conversation including its configuration, metadata, and associated resources." }, { "slug": "CHATBOTKIT_FETCH_CONVERSATION_MESSAGE", "name": "Fetch Conversation Message", "description": "Tool to retrieve full details of a specific message within a conversation. Use when you need complete information about a particular message including its content, type, and metadata." }, { "slug": "CHATBOTKIT_FETCH_CONVERSATION_USAGE", "name": "Fetch Conversation Usage", "description": "Tool to fetch usage statistics for a specific conversation. Use when you need to retrieve token and message counts for billing, monitoring, or analytics purposes." }, { "slug": "CHATBOTKIT_FETCH_CONVERSATION_WITH_MESSAGES_GRAPHQL", "name": "Fetch Conversation With Messages (GraphQL)", "description": "Tool to fetch a single conversation by ID with messages and metadata using GraphQL. Returns detailed conversation information including all messages, associated bot, contact, space, and task. Use when you need complete conversation history with messages in a structured GraphQL response format." }, { "slug": "CHATBOTKIT_FETCH_DATASET", "name": "Fetch Dataset", "description": "Tool to fetch a specific dataset by its ID. Use when you need detailed information about a particular dataset including configuration, storage, search settings, and content instructions." }, { "slug": "CHATBOTKIT_FETCH_DATASET_GRAPHQL", "name": "Fetch Dataset via GraphQL", "description": "Tool to fetch a single dataset by ID using GraphQL. Use when you need to retrieve dataset details (name, description, timestamps) via the GraphQL endpoint." }, { "slug": "CHATBOTKIT_FETCH_DATASET_RECORD", "name": "Fetch Dataset Record", "description": "Tool to fetch a specific record from a dataset by its ID. Use when you need to retrieve detailed information about a particular dataset record including its text content, source, and metadata." }, { "slug": "CHATBOTKIT_FETCH_DISCORD_INTEGRATION", "name": "Fetch Discord Integration", "description": "Tool to fetch a specific Discord integration by its ID. Use when you need detailed information about a particular Discord integration including configuration, bot association, and metadata." }, { "slug": "CHATBOTKIT_FETCH_EMAIL_INTEGRATION", "name": "Fetch Email Integration", "description": "Tool to fetch a specific Email integration by its ID. Use when you need detailed information about a particular Email integration including configuration, bot association, and settings." }, { "slug": "CHATBOTKIT_FETCH_EXTRACT_INTEGRATION", "name": "Fetch Extract Integration", "description": "Tool to fetch a specific Extract integration by its ID. Use when you need detailed information about a particular Extract integration including configuration, bot association, request template, and extraction schema." }, { "slug": "CHATBOTKIT_FETCH_FILE", "name": "Fetch File", "description": "Tool to retrieve detailed metadata about a specific file by its ID. Use when you need file information including name, type, size, and visibility settings. Note: This returns file metadata, not the actual file content." }, { "slug": "CHATBOTKIT_FETCH_FILE_GRAPHQL", "name": "Fetch File (GraphQL)", "description": "Tool to fetch a single file by ID using GraphQL. Returns detailed file information including name, description, timestamps, and metadata. Use when you need structured GraphQL response format." }, { "slug": "CHATBOTKIT_FETCH_INSTAGRAM_INTEGRATION", "name": "Fetch Instagram Integration", "description": "Tool to fetch a specific Instagram integration by its ID. Use when you need detailed information about a particular Instagram integration including access token, configuration, and metadata." }, { "slug": "CHATBOTKIT_FETCH_MCPSERVER_INTEGRATION", "name": "Fetch MCP Server Integration", "description": "Tool to fetch a specific MCP Server integration by its ID. Use when you need detailed information about a particular MCP Server integration including configuration, skillset, and blueprint associations." }, { "slug": "CHATBOTKIT_FETCH_MEMORY", "name": "Fetch Memory", "description": "Tool to retrieve detailed information about a specific memory by ID. Use when you need to access the content and metadata of a particular memory entry." }, { "slug": "CHATBOTKIT_FETCH_MESSENGER_INTEGRATION", "name": "Fetch Messenger Integration", "description": "Tool to fetch a specific Messenger integration by its ID. Use when you need detailed information about a particular Messenger integration including configuration, bot association, and settings." }, { "slug": "CHATBOTKIT_FETCH_NOTION_INTEGRATION", "name": "Fetch Notion Integration", "description": "Tool to fetch a specific Notion integration by its ID. Use when you need detailed information about a particular Notion integration including dataset association, sync status, and metadata." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_DOC", "name": "Fetch Platform Doc", "description": "Tool to fetch a specific platform documentation by its ID. Use when you need to retrieve documentation content for ChatBotKit platform features." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_EXAMPLE", "name": "Fetch Platform Example", "description": "Tool to fetch a specific platform example with full configuration details by its ID. Use when you need to retrieve complete information about a ChatBotKit example including its type, config, and associated metadata." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_MANUAL", "name": "Fetch Platform Manual", "description": "Tool to fetch a specific platform manual by its ID. Use when you need documentation or help content for a particular platform feature or resource type (e.g., datasets, skillsets, bots)." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_MANUALS_GRAPHQL", "name": "Fetch Platform Manuals (GraphQL)", "description": "Tool to fetch platform manuals using GraphQL query by search query or specific IDs. Use when you need to retrieve documentation manuals for ChatBotKit platform features via GraphQL." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_TUTORIAL", "name": "Fetch Platform Tutorial", "description": "Tool to fetch a specific platform tutorial by its ID. Use when you need to retrieve tutorial content for ChatBotKit platform features." }, { "slug": "CHATBOTKIT_FETCH_PLATFORM_TUTORIALS", "name": "Fetch Platform Tutorials", "description": "Tool to fetch platform tutorials by search query or IDs. Use when you need to search for tutorials or retrieve specific tutorials to help with ChatBotKit platform features." }, { "slug": "CHATBOTKIT_FETCH_RATING", "name": "Fetch Rating", "description": "Tool to retrieve detailed information about a specific rating by ID. Use when you need to access rating details including value, reason, and associated entities." }, { "slug": "CHATBOTKIT_FETCH_SECRET", "name": "Fetch Secret", "description": "Tool to fetch a secret by ID. Use when you need to retrieve detailed information about a specific secret." }, { "slug": "CHATBOTKIT_FETCH_SITEMAP_INTEGRATION", "name": "Fetch Sitemap Integration", "description": "Tool to fetch a specific Sitemap integration by its ID. Use when you need detailed information about a particular Sitemap integration including configuration, dataset association, URL patterns, and synchronization settings." }, { "slug": "CHATBOTKIT_FETCH_SKILLSET", "name": "Fetch Skillset", "description": "Tool to fetch a specific skillset by its ID. Use when you need detailed information about a particular skillset." }, { "slug": "CHATBOTKIT_FETCH_SKILLSET_ABILITY", "name": "Fetch Skillset Ability", "description": "Tool to fetch detailed information about a specific ability from a skillset. Use when you need to retrieve ability configuration, instructions, and associated resources." }, { "slug": "CHATBOTKIT_FETCH_SKILLSET_GRAPHQL", "name": "Fetch Skillset (GraphQL)", "description": "Tool to fetch a single skillset by ID using GraphQL. Use when you need to retrieve skillset details via the GraphQL API." }, { "slug": "CHATBOTKIT_FETCH_SLACK_INTEGRATION", "name": "Fetch Slack Integration", "description": "Tool to fetch a specific Slack integration by its ID. Use when you need detailed information about a particular Slack integration including configuration, bot association, and metadata." }, { "slug": "CHATBOTKIT_FETCH_SPACE", "name": "Fetch Space", "description": "Tool to retrieve detailed information about a specific space by ID. Use when you need to access space details including name, description, blueprint, and associated contact." }, { "slug": "CHATBOTKIT_FETCH_SUPPORT_INTEGRATION", "name": "Fetch Support Integration", "description": "Tool to fetch a specific Support integration by its ID. Use when you need detailed information about a particular Support integration including configuration, bot association, and metadata." }, { "slug": "CHATBOTKIT_FETCH_TASK", "name": "Fetch Task", "description": "Tool to retrieve details of a specific task by its ID. Use when you need to check the status, outcome, or configuration of a particular task." }, { "slug": "CHATBOTKIT_FETCH_TELEGRAM_INTEGRATION", "name": "Fetch Telegram Integration", "description": "Tool to fetch a specific Telegram integration by its ID. Use when you need detailed information about a particular Telegram integration including configuration, bot association, and metadata." }, { "slug": "CHATBOTKIT_FETCH_TRIGGER_INTEGRATION", "name": "Fetch Trigger Integration", "description": "Tool to fetch a specific trigger integration by its ID. Use when you need detailed information about a particular trigger integration including configuration, schedule, authentication, and associated bot." }, { "slug": "CHATBOTKIT_FETCH_TWILIO_INTEGRATION", "name": "Fetch Twilio Integration", "description": "Tool to fetch a specific Twilio integration by its ID. Use when you need detailed information about a particular Twilio integration including configuration, bot association, and metadata." }, { "slug": "CHATBOTKIT_FETCH_USAGE", "name": "Fetch Usage", "description": "Tool to fetch account-wide usage statistics including tokens, conversations, messages, and database resources. Use when you need overall usage metrics for billing, monitoring, or analytics purposes." }, { "slug": "CHATBOTKIT_FETCH_USAGE_SERIES", "name": "Fetch Usage Series", "description": "Tool to fetch usage series data for the last 90 days. Use when you need to analyze token usage, conversation counts, or message counts over time." }, { "slug": "CHATBOTKIT_FETCH_WHATSAPP_INTEGRATION", "name": "Fetch WhatsApp Integration", "description": "Tool to fetch a specific WhatsApp integration by its ID. Use when you need detailed information about a particular WhatsApp integration including configuration, bot association, and settings." }, { "slug": "CHATBOTKIT_FETCH_WIDGET_INTEGRATION", "name": "Fetch Widget Integration", "description": "Tool to fetch a specific Widget integration by its ID. Use when you need detailed information about a particular Widget integration including configuration, bot association, and widget settings." }, { "slug": "CHATBOTKIT_GENERATE_REPORT", "name": "Generate Report", "description": "Tool to generate a specific report with time-series breakdowns. Use when you need usage statistics, event metrics, or analytics data for a specific time period." }, { "slug": "CHATBOTKIT_GENERATE_REPORTS", "name": "Generate Reports", "description": "Tool to generate multiple reports simultaneously. Use when you need to retrieve analytics, metrics, or statistical data from ChatBotKit. Report IDs can be obtained from the platform report list endpoint." }, { "slug": "CHATBOTKIT_GET_AUDIT_LOG_EXPORT", "name": "Get Audit Log Export", "description": "Tool to export audit log entries showing user actions and system events. Use when you need to retrieve audit records for monitoring, compliance, or security analysis." }, { "slug": "CHATBOTKIT_GET_EVENT_METRIC_SERIES", "name": "Get Event Metric Series", "description": "Tool to fetch event metric time series data for a specific metric type. Use when you need to retrieve historical metric data points for analytics, monitoring, or reporting purposes." }, { "slug": "CHATBOTKIT_GET_RATING_EXPORT", "name": "Get Rating Export", "description": "Tool to export ratings with pagination support. Use when you need to retrieve and export rating data in bulk for analysis, backup, or migration purposes." }, { "slug": "CHATBOTKIT_GET_RATING_LIST", "name": "Get Rating List", "description": "Tool to retrieve a paginated list of ratings. Use when you need to browse, filter, or analyze ratings data." }, { "slug": "CHATBOTKIT_INVOKE_TRIGGER_INTEGRATION", "name": "Invoke Trigger Integration", "description": "Tool to invoke a trigger integration in ChatBotKit. Use when you need to manually trigger a specific trigger integration." }, { "slug": "CHATBOTKIT_LIST_AUDIT_LOGS", "name": "List Audit Logs", "description": "Tool to retrieve a paginated list of audit logs. Use when you need to review system activity, security events, or compliance tracking." }, { "slug": "CHATBOTKIT_LIST_BLUEPRINT_RESOURCES", "name": "List Blueprint Resources", "description": "Tool to list the resources of a blueprint. Use when you need to retrieve all resources associated with a specific blueprint." }, { "slug": "CHATBOTKIT_LIST_BLUEPRINTS", "name": "List Blueprints", "description": "Tool to retrieve a list of blueprints. Use when you need to browse or paginate through available blueprint templates." }, { "slug": "CHATBOTKIT_LIST_BLUEPRINTS_GRAPHQL", "name": "List Blueprints via GraphQL", "description": "Tool to list all blueprints using GraphQL with cursor-based pagination. Use when you need to browse blueprint templates via GraphQL endpoint with edges/node connection pattern." }, { "slug": "CHATBOTKIT_LIST_BOTS", "name": "List Bots", "description": "Tool to retrieve a paginated list of all bots. Use when you need to browse or manage multiple bots, and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_BOTS_GRAPHQL", "name": "List Bots (GraphQL)", "description": "Tool to query bots via GraphQL with pagination support. Use when you need to retrieve a list of bots using the GraphQL API." }, { "slug": "CHATBOTKIT_LIST_CONTACT_CONVERSATIONS", "name": "List Contact Conversations", "description": "Tool to retrieve a paginated list of conversations for a specific contact. Use when you need to view all conversations associated with a contact." }, { "slug": "CHATBOTKIT_LIST_CONTACT_MEMORIES", "name": "List Contact Memories", "description": "Tool to retrieve a paginated list of memories for a specific contact. Use when you need to browse or access memory entries associated with a contact." }, { "slug": "CHATBOTKIT_LIST_CONTACT_RATINGS", "name": "List Contact Ratings", "description": "Tool to retrieve ratings submitted by a specific contact. Use when you need to monitor conversation quality, identify areas for improvement, and track user satisfaction with AI-generated responses." }, { "slug": "CHATBOTKIT_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a paginated list of contacts. Contacts represent users interacting with bots. Use when you need to browse, filter, or manage multiple contacts." }, { "slug": "CHATBOTKIT_LIST_CONTACT_SECRETS", "name": "List Contact Secrets", "description": "Tool to retrieve a paginated list of secrets for a specific contact. Use when you need to browse or access secret entries associated with a contact." }, { "slug": "CHATBOTKIT_LIST_CONTACT_SPACES", "name": "List Contact Spaces", "description": "Tool to retrieve a paginated list of spaces for a specific contact. Use when you need to fetch all spaces associated with a particular contact ID." }, { "slug": "CHATBOTKIT_LIST_CONTACTS_WITH_PAGINATION", "name": "List Contacts with Pagination", "description": "Tool to list contacts with full pagination support using GraphQL. Returns contact information including ID, name, email, metadata, and timestamps, along with pagination details. Use when you need to retrieve contacts with cursor-based pagination." }, { "slug": "CHATBOTKIT_LIST_CONTACT_TASKS", "name": "List Contact Tasks", "description": "Tool to retrieve a paginated list of tasks for a specific contact. Use when you need to view all tasks associated with a particular contact." }, { "slug": "CHATBOTKIT_LIST_CONVERSATION_MESSAGES", "name": "List conversation messages", "description": "Tool to list messages in a conversation with pagination. Use after obtaining a conversation ID to fetch messages page by page." }, { "slug": "CHATBOTKIT_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Tool to retrieve a paginated list of conversations. Use when you need to page through conversation history." }, { "slug": "CHATBOTKIT_LIST_CONVERSATIONS_GRAPHQL", "name": "List Conversations (GraphQL)", "description": "Tool to retrieve conversations using GraphQL with cursor-based pagination. Use when you need to list all conversations with Relay-style pagination support." }, { "slug": "CHATBOTKIT_LIST_DATASET_FILES", "name": "List Dataset Files", "description": "Tool to retrieve a list of files in a dataset. Use when you need to browse or paginate through dataset files." }, { "slug": "CHATBOTKIT_LIST_DATASET_RECORDS", "name": "List Dataset Records", "description": "Tool to list records in a dataset with pagination. Use after obtaining a dataset ID to retrieve all records or paginate through them." }, { "slug": "CHATBOTKIT_LIST_DATASETS", "name": "List Datasets", "description": "Tool to list datasets. Use when you need to browse or paginate through available datasets." }, { "slug": "CHATBOTKIT_LIST_DATASETS_GRAPHQL", "name": "List Datasets via GraphQL", "description": "Tool to list all datasets using GraphQL with cursor-based pagination. Use when you need to browse datasets via GraphQL endpoint. Supports forward pagination with 'first' and 'after', or backward pagination with 'last' and 'before'." }, { "slug": "CHATBOTKIT_LIST_DISCORD_INTEGRATIONS", "name": "List Discord Integrations", "description": "Tool to retrieve a list of Discord integrations. Use when you need to browse or manage configured Discord integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_EMAIL_INTEGRATIONS", "name": "List Email Integrations", "description": "Tool to retrieve a list of email integrations. Use when you need to browse or manage configured email integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_EVENT_LOGS", "name": "List Event Logs", "description": "Tool to retrieve a paginated list of event logs. Use when you need to browse system events, audit activity, or analyze event history." }, { "slug": "CHATBOTKIT_LIST_EVENT_METRICS", "name": "List Event Metrics", "description": "Tool to list event metrics for the authenticated account. Use when you need to retrieve analytics and monitoring data about platform events." }, { "slug": "CHATBOTKIT_LIST_EXTRACT_INTEGRATIONS", "name": "List Extract Integrations", "description": "Tool to retrieve a list of Extract integrations. Use when you need to browse or manage configured Extract integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_FILES", "name": "List Files", "description": "Tool to retrieve a list of files. Use when you need to browse or paginate through available files that can be attached to datasets." }, { "slug": "CHATBOTKIT_LIST_FILES_GRAPHQL", "name": "List Files (GraphQL)", "description": "Tool to list files using GraphQL query with connection-based pagination. Use when you need to retrieve files via GraphQL endpoint with edges/nodes structure." }, { "slug": "CHATBOTKIT_LIST_INSTAGRAM_INTEGRATIONS", "name": "List Instagram Integrations", "description": "Tool to retrieve a list of Instagram integrations. Use when you need to browse or manage configured Instagram integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_INTEGRATIONS_GRAPHQL", "name": "List Integrations (GraphQL)", "description": "Tool to list integrations with pagination using GraphQL query. Use when you need to retrieve multiple integration records with cursor-based pagination support." }, { "slug": "CHATBOTKIT_LIST_MAGIC_PROMPTS", "name": "List Magic Prompts", "description": "Tool to retrieve a list of magic prompts. Use when you need to browse or enumerate available magic prompts in the system." }, { "slug": "CHATBOTKIT_LIST_MCP_SERVER_INTEGRATIONS", "name": "List MCP Server Integrations", "description": "Tool to retrieve a list of MCP Server integrations. Use when you need to browse or manage configured MCP Server integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_MEMORIES", "name": "List Memories", "description": "Tool to retrieve a paginated list of memories. Use when you need to browse or access memory entries across the system." }, { "slug": "CHATBOTKIT_LIST_MESSAGES_GRAPHQL", "name": "List messages (GraphQL)", "description": "Tool to list messages for one or more conversations using GraphQL. Returns messages in GraphQL connection pattern with edges/node structure. Use when you need to fetch messages across multiple conversations simultaneously." }, { "slug": "CHATBOTKIT_LIST_MESSENGER_INTEGRATIONS", "name": "List Messenger Integrations", "description": "Tool to retrieve a list of Messenger integrations. Use when you need to browse or manage configured Messenger integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_NOTION_INTEGRATIONS", "name": "List Notion Integrations", "description": "Tool to retrieve a list of Notion integrations. Use when you need to browse or manage configured Notion integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_PARTNERS", "name": "List Partners", "description": "Tool to retrieve a list of all partner accounts associated with the main account. Use when you need to view or manage all sub-accounts under your partner umbrella." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_ABILITIES", "name": "List Platform Abilities", "description": "Tool to retrieve a list of platform abilities. Use when you need to browse available abilities or capabilities provided by the platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_ACTIONS", "name": "List Platform Actions", "description": "Tool to retrieve a paginated list of platform actions. Use when you need to browse available actions or discover what actions are supported by the platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_DOCS", "name": "List Platform Docs", "description": "Tool to retrieve a list of platform documentation items. Use when you need to browse available documentation or discover what documentation is available for the ChatBotKit platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_EXAMPLES", "name": "List Platform Examples", "description": "Tool to retrieve a list of platform examples from ChatBotKit. Use when you need to browse available example templates and resources." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_GUIDES", "name": "List Platform Guides", "description": "Tool to retrieve a list of platform guides. Use when you need to browse available guides or tutorials for the platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_MANUALS", "name": "List Platform Manuals", "description": "Tool to retrieve a list of platform manuals. Use when you need to browse available documentation and help resources for the ChatBotKit platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_MODELS", "name": "List Platform Models", "description": "Tool to retrieve a list of available platform models. Use when you need to browse AI models available on the platform." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_REPORTS", "name": "List Platform Reports", "description": "Tool to retrieve a list of available platform reports. Use when you need to view or analyze system-generated reports." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_SECRETS", "name": "List Platform Secrets", "description": "Tool to retrieve a paginated list of platform secrets. Use when you need to browse or access secret entries at the platform level." }, { "slug": "CHATBOTKIT_LIST_PLATFORM_TUTORIALS", "name": "List Platform Tutorials", "description": "Tool to retrieve a list of platform tutorials. Use when you need to browse or discover available tutorials for learning how to use the ChatBotKit platform." }, { "slug": "CHATBOTKIT_LIST_POLICIES", "name": "List Policies", "description": "Tool to retrieve a list of policies. Use when you need to browse available policies or filter by metadata." }, { "slug": "CHATBOTKIT_LIST_PORTALS", "name": "List Portals", "description": "Tool to retrieve a list of portals. Use when you need to browse or paginate through available portals." }, { "slug": "CHATBOTKIT_LIST_PORTALS_GRAPHQL", "name": "List Portals (GraphQL)", "description": "Tool to retrieve a paginated list of portals using GraphQL. Use when you need to query portals via GraphQL with cursor-based pagination." }, { "slug": "CHATBOTKIT_LIST_SECRETS", "name": "List Secrets", "description": "Tool to retrieve a list of secrets. Use when you need to browse or access credentials for external service integrations." }, { "slug": "CHATBOTKIT_LIST_SECRETS_GRAPHQL", "name": "List Secrets via GraphQL", "description": "Tool to list all secrets using GraphQL with cursor-based pagination. Use when you need to retrieve secrets stored in ChatBotKit. Supports forward pagination with 'first' and 'after', or backward pagination with 'last' and 'before'." }, { "slug": "CHATBOTKIT_LIST_SITEMAP_INTEGRATIONS", "name": "List Sitemap Integrations", "description": "Tool to retrieve a list of Sitemap integrations. Use when you need to browse or manage configured Sitemap integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_SKILLSET_ABILITIES", "name": "List Skillset Abilities", "description": "Tool to retrieve a list of abilities within a specific skillset. Use when you need to enumerate abilities for a given skillset." }, { "slug": "CHATBOTKIT_LIST_SKILLSETS", "name": "List Skillsets", "description": "Tool to retrieve a list of all skillsets available in the system. Use when you need to enumerate existing skillsets." }, { "slug": "CHATBOTKIT_LIST_SKILLSETS_GRAPHQL", "name": "List Skillsets (GraphQL)", "description": "Tool to list skillsets using GraphQL query with connection-based pagination. Use when you need to retrieve skillsets via GraphQL endpoint with edges/nodes structure." }, { "slug": "CHATBOTKIT_LIST_SLACK_INTEGRATIONS", "name": "List Slack Integrations", "description": "Tool to retrieve a list of Slack integrations. Use when you need to browse or manage configured Slack integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_SPACES", "name": "List Spaces", "description": "Tool to retrieve a paginated list of spaces. Spaces are containers for organizing bot resources. Use when you need to browse or manage multiple spaces." }, { "slug": "CHATBOTKIT_LIST_SUPPORT_INTEGRATIONS", "name": "List Support Integrations", "description": "Tool to retrieve a list of support integrations. Use when you need to browse or manage configured support integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve a paginated list of tasks. Use when you need to view all tasks, optionally filtered by bot, contact, status, or metadata." }, { "slug": "CHATBOTKIT_LIST_TEAMS", "name": "List Teams", "description": "Tool to retrieve a paginated list of teams. Use when you need to browse or manage multiple teams." }, { "slug": "CHATBOTKIT_LIST_TELEGRAM_INTEGRATIONS", "name": "List Telegram Integrations", "description": "Tool to retrieve a list of Telegram integrations. Use when you need to browse or manage configured Telegram integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_TOKENS", "name": "List Tokens", "description": "Tool to retrieve a list of all API tokens. Use when you need to audit or manage existing tokens." }, { "slug": "CHATBOTKIT_LIST_TWILIO_INTEGRATIONS", "name": "List Twilio Integrations", "description": "Tool to retrieve a list of Twilio integrations. Use when you need to browse or manage configured Twilio integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_WHATS_APP_INTEGRATIONS", "name": "List WhatsApp Integrations", "description": "Tool to retrieve a list of WhatsApp integrations. Use when you need to browse or manage configured WhatsApp integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_LIST_WIDGET_INTEGRATIONS", "name": "List Widget Integrations", "description": "Tool to retrieve a list of widget integrations. Use when you need to browse or manage configured widget integrations and iterate pages via cursor." }, { "slug": "CHATBOTKIT_PUBLISH_CHANNEL_MESSAGE", "name": "Publish Channel Message", "description": "Publish a message to a ChatBotKit channel. Use this action when you need to send messages to a specific channel identified by its channel ID." }, { "slug": "CHATBOTKIT_SEARCH_BOT_MEMORY", "name": "Search Bot Memory", "description": "Tool to search memories for a specific bot. Use when you need to retrieve stored memories that match a keyword or phrase." }, { "slug": "CHATBOTKIT_SEARCH_CONTACT_MEMORY", "name": "Search Contact Memory", "description": "Tool to search memories for a specific contact by keyword or phrase. Use when you need to find specific information stored in a contact's memory." }, { "slug": "CHATBOTKIT_SEARCH_DATASET", "name": "Search Dataset", "description": "Tool to search a dataset for records matching a given search query. Uses semantic search for finding relevant records. Use when you need to retrieve stored data from a dataset based on a keyword or phrase." }, { "slug": "CHATBOTKIT_SEARCH_MEMORY", "name": "Search Memory", "description": "Tool to search memories for records matching a given search query. Use when you need to find specific memories, optionally filtered by bot or contact." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_ABILITIES", "name": "Search Platform Abilities", "description": "Tool to search platform abilities using semantic similarity. Use when you need to find relevant abilities or tools based on a query." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_DOCS", "name": "Search Platform Docs", "description": "Tool to search platform documentation using semantic similarity. Use when you need to find relevant documentation, guides, or help articles based on a query." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_DOCS_GRAPHQL", "name": "Search Platform Docs (GraphQL)", "description": "Tool to search platform documentation by search query via GraphQL and retrieve docs with id, name, excerpt, and link. Use when you need to find relevant ChatBotKit documentation using the GraphQL API." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_EXAMPLES", "name": "Search Platform Examples", "description": "Tool to search platform examples using semantic similarity. Use when you need to find relevant examples, templates, or code snippets from the platform's example library." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_GUIDES", "name": "Search Platform Guides", "description": "Tool to search platform guides using semantic similarity. Use when you need to find relevant documentation, tutorials, or guides based on a search query." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_MANUALS", "name": "Search Platform Manuals", "description": "Tool to search platform manuals using semantic similarity. Use when you need to find documentation, guides, or help resources related to a specific topic or question." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_SECRETS", "name": "Search Platform Secrets", "description": "Tool to search platform secrets using semantic similarity. Use when you need to find secrets that match a particular topic or keyword using intelligent matching." }, { "slug": "CHATBOTKIT_SEARCH_PLATFORM_TUTORIALS", "name": "Search Platform Tutorials", "description": "Tool to search platform tutorials using semantic similarity. Use when you need to find relevant tutorials, documentation, or guides on specific topics." }, { "slug": "CHATBOTKIT_SET_UP_EMAIL_INTEGRATION", "name": "Setup Email Integration", "description": "Tool to setup an email integration in ChatBotKit. Use when you need to activate or configure an existing email integration for use with a bot." }, { "slug": "CHATBOTKIT_SET_UP_TRIGGER_INTEGRATION", "name": "Setup Trigger Integration", "description": "Tool to setup a trigger integration in ChatBotKit. Use when you need to activate or configure an existing trigger integration for use with a bot." }, { "slug": "CHATBOTKIT_SET_UP_TWILIO_INTEGRATION", "name": "Setup Twilio Integration", "description": "Tool to setup a Twilio integration in ChatBotKit. Use when you need to activate or configure an existing Twilio integration for use with a bot." }, { "slug": "CHATBOTKIT_SET_UP_WHATS_APP_INTEGRATION", "name": "Setup WhatsApp Integration", "description": "Tool to setup a WhatsApp integration in ChatBotKit. Use when you need to activate or configure an existing WhatsApp integration for use with a bot." }, { "slug": "CHATBOTKIT_SET_UP_WIDGET_INTEGRATION", "name": "Setup Widget Integration", "description": "Tool to setup a Widget integration in ChatBotKit. Use when you need to activate or configure an existing Widget integration for use with a bot." }, { "slug": "CHATBOTKIT_SUBSCRIBE_CHANNEL", "name": "Subscribe to Channel", "description": "Tool to subscribe to messages from a ChatBotKit channel. Use this when you need to monitor and receive messages from a specific channel. The subscription works by first replaying historical messages (if historyLength is specified) and then streaming live messages as they are published. This is a streaming endpoint that returns application/jsonl format with multiple message events. Prerequisites: - A valid channel_id (at least 16 characters) - The channel must exist and be active Returns a list of message events, each containing the message type and data." }, { "slug": "CHATBOTKIT_SYNC_DATASET_FILE", "name": "Sync Dataset File", "description": "Tool to sync a dataset file. Use when you need to synchronize a file within a dataset to ensure its content is up-to-date and available for use by the bot." }, { "slug": "CHATBOTKIT_SYNC_FILE", "name": "Sync File", "description": "Tool to sync a file. Use when you need to synchronize a file to ensure its content is up-to-date and available for use." }, { "slug": "CHATBOTKIT_SYNC_NOTION_INTEGRATION", "name": "Sync Notion Integration", "description": "Tool to sync a Notion integration with ChatBotKit. Use when you need to manually trigger synchronization of content between Notion pages and the associated ChatBotKit dataset." }, { "slug": "CHATBOTKIT_SYNC_SITEMAP_INTEGRATION", "name": "Sync Sitemap Integration", "description": "Tool to sync a sitemap integration. Use when you need to trigger an immediate sync of a sitemap integration to refresh the dataset with the latest content from the website." }, { "slug": "CHATBOTKIT_SYNTHESIZE_CONVERSATION_MESSAGE", "name": "Synthesize conversation message", "description": "Tool to convert a conversation message into speech audio. Use when you need to synthesize text from a message into audio format." }, { "slug": "CHATBOTKIT_TRIGGER_EXTRACT_INTEGRATION", "name": "Trigger Extract Integration", "description": "Tool to trigger an extract integration on historic conversations in ChatBotKit. Use when you need to process past conversations with an extract integration, either by specifying a sample size or specific conversation IDs." }, { "slug": "CHATBOTKIT_TRIGGER_SUPPORT_INTEGRATION", "name": "Trigger Support Integration", "description": "Tool to trigger a support integration on historic conversations in ChatBotKit. Use when you need to process past conversations with a support integration, either by specifying a sample size or specific conversation IDs." }, { "slug": "CHATBOTKIT_TRIGGER_TASK", "name": "Trigger Task", "description": "Tool to trigger execution of a background task. Use when you need to manually start or restart a task." }, { "slug": "CHATBOTKIT_UPDATE_BLUEPRINT", "name": "Update Blueprint", "description": "Tool to update an existing blueprint. Use when you need to modify blueprint properties such as name, description, visibility, or metadata." }, { "slug": "CHATBOTKIT_UPDATE_BLUEPRINT_GRAPHQL", "name": "Update Blueprint (GraphQL)", "description": "Tool to update an existing blueprint using GraphQL mutation. Use when you need to modify a blueprint's properties via the GraphQL API." }, { "slug": "CHATBOTKIT_UPDATE_BOT", "name": "Update Bot", "description": "Tool to update an existing bot's configuration and properties. Use when you need to modify a bot's name, description, model, backstory, associated datasets/skillsets, or other settings." }, { "slug": "CHATBOTKIT_UPDATE_BOT_GRAPHQL", "name": "Update Bot (GraphQL)", "description": "Tool to update an existing bot using GraphQL mutation. Use when you need to modify a bot's properties via the GraphQL API." }, { "slug": "CHATBOTKIT_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's information. Use when you need to modify contact details like email, nickname, phone number, or preferences." }, { "slug": "CHATBOTKIT_UPDATE_CONVERSATION", "name": "Update Conversation", "description": "Tool to update an existing conversation's properties. Use when you need to modify conversation metadata, bot configuration, or associated resources like contacts, tasks, or spaces." }, { "slug": "CHATBOTKIT_UPDATE_CONVERSATION_MESSAGE", "name": "Update conversation message", "description": "Tool to update an existing message in a conversation. Use this to modify the text, entities, or type of a previously created message." }, { "slug": "CHATBOTKIT_UPDATE_DATASET", "name": "Update Dataset", "description": "Tool to update an existing dataset's configuration and properties. Use when you need to modify a dataset's name, description, visibility, search settings, or other configuration options." }, { "slug": "CHATBOTKIT_UPDATE_DATASET_GRAPHQL", "name": "Update Dataset (GraphQL)", "description": "Tool to update an existing dataset using GraphQL mutation. Use when you need to modify a dataset's properties such as name, description, search configuration, visibility, or metadata via the GraphQL API endpoint." }, { "slug": "CHATBOTKIT_UPDATE_DATASET_RECORD", "name": "Update Dataset Record", "description": "Tool to update an existing record in a dataset. Use when you need to modify text data or metadata in an existing dataset record." }, { "slug": "CHATBOTKIT_UPDATE_DISCORD_INTEGRATION", "name": "Update Discord Integration", "description": "Tool to update an existing Discord integration's configuration. Use when you need to modify Discord integration settings such as bot token, session duration, contact collection, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_EMAIL_INTEGRATION", "name": "Update Email Integration", "description": "Tool to update an existing Email integration's configuration and properties. Use when you need to modify an Email integration's settings such as allowed sender emails, attachment handling, contact collection, or session duration." }, { "slug": "CHATBOTKIT_UPDATE_EXTRACT_INTEGRATION", "name": "Update Extract Integration", "description": "Tool to update an existing Extract integration's configuration. Use when you need to modify an Extract integration's model, extraction request, schema, associated bot, or other settings." }, { "slug": "CHATBOTKIT_UPDATE_FILE", "name": "Update File", "description": "Tool to update an existing file's metadata and properties. Use when you need to modify a file's name, description, visibility, or other configuration settings." }, { "slug": "CHATBOTKIT_UPDATE_FILE_GRAPHQL", "name": "Update File (GraphQL)", "description": "Tool to update an existing file using GraphQL mutation. Use when you need to modify a file's name, description, visibility, or other properties via the GraphQL API endpoint." }, { "slug": "CHATBOTKIT_UPDATE_INSTAGRAM_INTEGRATION", "name": "Update Instagram Integration", "description": "Tool to update an existing Instagram integration's configuration. Use when you need to modify Instagram integration settings such as access token, session duration, contact collection, attachments, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_INTEGRATION_GRAPHQL", "name": "Update Trigger Integration (GraphQL)", "description": "Tool to update trigger integration configuration and settings using GraphQL mutation. Use when you need to modify a trigger integration's properties such as name, description, metadata, authentication settings, or associated bot/blueprint via the GraphQL API." }, { "slug": "CHATBOTKIT_UPDATE_MCPSERVER_INTEGRATION", "name": "Update MCP Server Integration", "description": "Tool to update an existing MCP Server integration. Use when you need to modify properties of an MCP (Model Context Protocol) Server integration such as name, description, associated skillset or blueprint, or metadata." }, { "slug": "CHATBOTKIT_UPDATE_MEMORY", "name": "Update Memory", "description": "Tool to update an existing memory's text or associations. Use when you need to modify memory content or change its bot/contact associations." }, { "slug": "CHATBOTKIT_UPDATE_MESSENGER_INTEGRATION", "name": "Update Messenger Integration", "description": "Tool to update an existing Messenger integration's configuration. Use when you need to modify Messenger integration settings such as access token, session duration, attachments, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_NOTION_INTEGRATION", "name": "Update Notion Integration", "description": "Tool to update an existing Notion integration's configuration and properties. Use when you need to modify a Notion integration's settings such as sync schedule, token, dataset association, or expiration settings." }, { "slug": "CHATBOTKIT_UPDATE_PARTNER_USER", "name": "Update Partner User", "description": "Tool to update an existing partner user's information. Use when you need to modify partner user details like email, profile image, or resource limits." }, { "slug": "CHATBOTKIT_UPDATE_RATING", "name": "Update Rating", "description": "Tool to update an existing rating by ID. Use when you need to modify a rating's value or associated metadata. Ratings track user feedback (upvotes/downvotes) for contacts, bots, conversations, and messages." }, { "slug": "CHATBOTKIT_UPDATE_SECRET", "name": "Update Secret", "description": "Tool to update an existing secret's configuration and properties. Use when you need to modify a secret's name, description, value, type, or other settings." }, { "slug": "CHATBOTKIT_UPDATE_SECRET_GRAPHQL", "name": "Update Secret (GraphQL)", "description": "Tool to update an existing secret via GraphQL mutation. Use when you need to modify a secret's properties using the GraphQL API." }, { "slug": "CHATBOTKIT_UPDATE_SITEMAP_INTEGRATION", "name": "Update Sitemap Integration", "description": "Tool to update an existing Sitemap integration's configuration. Use when you need to modify sitemap URL, glob patterns, sync schedule, dataset association, or crawling settings like JavaScript rendering and CSS selectors." }, { "slug": "CHATBOTKIT_UPDATE_SKILLSET", "name": "Update Skillset", "description": "Tool to update an existing skillset's configuration and properties. Use when you need to modify a skillset's name, description, visibility, or other settings." }, { "slug": "CHATBOTKIT_UPDATE_SKILLSET_ABILITY", "name": "Update Skillset Ability", "description": "Tool to update an existing ability within a skillset. Use when you need to modify ability properties like name, description, instruction, or associated resources." }, { "slug": "CHATBOTKIT_UPDATE_SKILLSET_GRAPHQL", "name": "Update Skillset (GraphQL)", "description": "Tool to update an existing skillset using GraphQL mutation. Use when you need to modify a skillset's properties such as name, description, or abilities via the GraphQL API." }, { "slug": "CHATBOTKIT_UPDATE_SLACK_INTEGRATION", "name": "Update Slack Integration", "description": "Tool to update an existing Slack integration's configuration. Use when you need to modify Slack integration settings such as bot token, signing secret, session duration, contact collection, ratings, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_SPACE", "name": "Update Space", "description": "Tool to update an existing space's configuration and properties. Use when you need to modify a space's name, description, associated blueprint, contact, or other settings." }, { "slug": "CHATBOTKIT_UPDATE_SUPPORT_INTEGRATION", "name": "Update Support Integration", "description": "Tool to update an existing Support integration's configuration and properties. Use when you need to modify a Support integration's email, name, description, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task's configuration and properties. Use when you need to modify a task's schedule, bot/contact associations, or execution parameters." }, { "slug": "CHATBOTKIT_UPDATE_TELEGRAM_INTEGRATION", "name": "Update Telegram Integration", "description": "Tool to update an existing Telegram integration's configuration and properties. Use when you need to modify a Telegram integration's settings such as bot token, session duration, attachment handling, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_TRIGGER_INTEGRATION", "name": "Update Trigger Integration", "description": "Tool to update an existing Trigger integration's configuration. Use when you need to modify Trigger integration settings such as name, description, metadata, associated bot/blueprint, or authentication settings." }, { "slug": "CHATBOTKIT_UPDATE_TWILIO_INTEGRATION", "name": "Update Twilio Integration", "description": "Tool to update an existing Twilio integration's configuration. Use when you need to modify Twilio integration settings such as name, description, session duration, contact collection, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_WHATS_APP_INTEGRATION", "name": "Update WhatsApp Integration", "description": "Tool to update an existing WhatsApp integration's configuration. Use when you need to modify WhatsApp integration settings such as access token, phone number ID, session duration, contact collection, or associated bot/blueprint." }, { "slug": "CHATBOTKIT_UPDATE_WIDGET_INTEGRATION", "name": "Update Widget Integration", "description": "Tool to update an existing Widget integration's configuration. Use when you need to modify widget settings such as title, theme, placeholder text, auto-scroll behavior, or other display and functionality options." }, { "slug": "CHATBOTKIT_UPLOAD_CONVERSATION_ATTACHMENT", "name": "Upload Conversation Attachment", "description": "Upload a file as a conversation attachment in ChatBotKit. This action creates an attachment record and returns upload details. Use when you need to attach files (documents, images, etc.) to a conversation for the bot to reference." }, { "slug": "CHATBOTKIT_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload content to an existing file resource in ChatBotKit. Use when you need to populate a file resource with actual file data." }, { "slug": "CHATBOTKIT_UPSERT_CONVERSATION_CONTACT", "name": "Upsert Conversation Contact", "description": "Tool to upsert (create or update) contact information for a conversation in ChatBotKit. Use when you need to associate contact details like email, phone, or nickname with a conversation." }, { "slug": "CHATBOTKIT_UPVOTE_BOT", "name": "Upvote Bot", "description": "Tool to upvote a bot in ChatBotKit. Use when you want to endorse or rate a bot positively, providing optional feedback on why the bot deserves recognition." }, { "slug": "CHATBOTKIT_UPVOTE_CONVERSATION", "name": "Upvote Conversation", "description": "Tool to upvote a conversation in ChatBotKit. Use when you want to endorse or rate a conversation positively, providing optional feedback on quality." }, { "slug": "CHATBOTKIT_UPVOTE_CONVERSATION_MESSAGE", "name": "Upvote Conversation Message", "description": "Tool to upvote a conversation message in ChatBotKit. Use when you want to endorse or rate a specific message positively within a conversation." }, { "slug": "CHATBOTKIT_VERIFY_SECRET", "name": "Verify Secret", "description": "Tool to verify a secret in ChatBotKit. Use when you need to check the authentication status of a secret credential." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chatbotkit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ChatBotKit API Key", "type": "string", "description": "Your ChatBotKit API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "chatfai", "name": "Chatfai", "logo": "https://logos.composio.dev/api/chatfai", "description": "ChatFAI is an AI-powered platform that enables users to engage in interactive conversations with AI-generated versions of their favorite fictional characters from various media.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CHATFAI_GET_PUBLIC_CHARACTER_BY_ID", "name": "Get Public Character By ID", "description": "Tool to retrieve a public character by its ID. Use when you need to fetch details of a single public character by providing its unique ID." }, { "slug": "CHATFAI_LIST_CHATFAI_CONVERSATIONS", "name": "List Conversations", "description": "Tool to list conversations for the authenticated user. Use when you need to retrieve the user's chat conversations or verify authentication status." }, { "slug": "CHATFAI_SEARCH_CHARACTERS", "name": "Search Characters", "description": "Tool to search for public characters on ChatFAI by name or keyword. Use when you need to find characters matching a specific search query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chatfai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ChatFAI API Key", "type": "string", "description": "The API key used for authenticating requests to the ChatFAI API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "chatlayer", "name": "Chatlayer", "logo": "https://logos.composio.dev/api/chatlayer", "description": "Power your business with AI | Build voice- and chatbots in 100+ languages, no coding skills needed", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "chatlayer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your API base URL based on region: Europe (https://api.chatlayer.ai), APAC (https://api.prod.asia-south1.gcp.chatlayer.ai), or US (https://api.prod.us-east4.gcp.chatlayer.ai). See https://docs.chatlayer.ai/chatlayer-api/v2-api-authentication for details.", "required": true, "default": "https://api.prod.us-east4.gcp.chatlayer.ai" }, { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "To get your Access token, go to \"Settings\" > \"Credentials\" in your Chatlayer dashboard (https://app.chatlayer.ai/settings/api-access/tokens)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cincopa", "name": "Cincopa", "logo": "https://logos.composio.dev/api/cincopa", "description": "Cincopa is a comprehensive media platform offering tools for uploading, managing, and customizing multimedia content, including videos, images, and audio, with robust APIs for seamless integration.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CINCOPA_ASSET_UPLOAD_FROM_URL", "name": "Upload Asset From URL", "description": "Tool to upload a new asset directly from a provided external URL and receive a status ID for tracking. Use when you need to import media from a remote source and optionally specify a gallery or existing asset." }, { "slug": "CINCOPA_ASSET_UPLOAD_FROM_URL_ABORT", "name": "Abort Asset Upload From URL", "description": "Tool to abort an ongoing asset upload-in-progress by providing its status ID. Use when an upload is no longer needed, was initiated by mistake, or is taking too long." }, { "slug": "CINCOPA_ASSET_UPLOAD_FROM_URL_GET_STATUS", "name": "Get Asset Upload From URL Status", "description": "Tool to check the status of an asset upload initiated via URL by its status ID. Use after calling 'Upload Asset From URL' to poll for completion." }, { "slug": "CINCOPA_GET_UPLOAD_IFRAME", "name": "Get Upload Iframe", "description": "Tool to get an upload iframe URL for embedding an upload widget. Use when you need to generate an HTML iframe for uploading media to a Cincopa gallery." }, { "slug": "CINCOPA_PING", "name": "Validate API Connection", "description": "Tool to validate API connection. Use after obtaining a valid api_token to confirm connectivity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cincopa_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Cincopa API Token", "type": "string", "description": "The API token used for authenticating requests to the Cincopa API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "circleci", "name": "CircleCI", "logo": "https://logos.composio.dev/api/circleci", "description": "CircleCI is a continuous integration and delivery platform that automates build, test, and deployment pipelines for software development.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 65, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CIRCLECI_CREATE_CONTEXT", "name": "Create Context", "description": "Tool to create a new context in CircleCI. Contexts are used to secure and share environment variables across projects. Use this when you need to set up a new environment configuration for your CircleCI workflows." }, { "slug": "CIRCLECI_CREATE_CONTEXT_GRAPHQL", "name": "Create Context (GraphQL)", "description": "Tool to create a new CircleCI context using the GraphQL API. Use when you need to create a context for storing environment variables in CircleCI. The mutation returns error information if creation fails or payload data if successful." }, { "slug": "CIRCLECI_CREATE_CONTEXT_RESTRICTION", "name": "Create Context Restriction", "description": "Tool to create a context restriction in CircleCI. Use when you need to limit context access based on project, expression rules, or group membership." }, { "slug": "CIRCLECI_CREATE_ORGANIZATION_ORB_ALLOWLIST", "name": "Create Organization Orb Allowlist", "description": "Tool to create a new URL Orb allow-list entry for an organization. Use when you need to allow URL-based orb references from specific URL prefixes in CircleCI pipelines for an organization." }, { "slug": "CIRCLECI_CREATE_ORGANIZATION_PROJECT", "name": "Create Organization Project", "description": "Tool to create a new project within a CircleCI organization. Use when you need to programmatically set up a new project for CI/CD automation." }, { "slug": "CIRCLECI_CREATE_ORG_GROUP", "name": "Create Organization Group", "description": "Tool to create a group in an organization. Use when you need to organize users within a CircleCI organization by creating logical groups." }, { "slug": "CIRCLECI_CREATE_PROJECT_ENV_VAR", "name": "Create Project Environment Variable", "description": "Tool to create a new environment variable for a CircleCI project. Use when you need to add a new environment variable that will be available in project builds." }, { "slug": "CIRCLECI_CREATE_USAGE_EXPORT_JOB", "name": "Create Usage Export Job", "description": "Tool to create a usage export job for a CircleCI organization. Use when you need to export usage data for billing, analysis, or reporting purposes. Rate limited to 10 queries per hour. Maximum date window is 32 days, with up to 13 months of historical data available." }, { "slug": "CIRCLECI_DELETE_CONTEXT_GRAPHQL", "name": "Delete Context (GraphQL)", "description": "Tool to delete a CircleCI context by its UUID using GraphQL API. Use when you need to permanently remove a context from your CircleCI organization. This action is irreversible and will delete all environment variables associated with the context." }, { "slug": "CIRCLECI_DELETE_CONTEXT_RESTRICTION", "name": "Delete Context Restriction", "description": "Tool to delete a context restriction by its ID. Use when you need to remove a specific restriction from a CircleCI context." }, { "slug": "CIRCLECI_DELETE_NAMESPACE", "name": "Delete Namespace and Related Orbs", "description": "Tool to delete a CircleCI registry namespace and all its associated orbs. Use when you need to permanently remove a namespace from the registry. This is a destructive operation that cannot be undone." }, { "slug": "CIRCLECI_DELETE_NAMESPACE_ALIAS", "name": "Delete Namespace Alias", "description": "Tool to remove a namespace alias by name in CircleCI. Use when you need to delete an existing namespace alias that is no longer needed. The mutation returns a boolean indicating success and any errors that occurred during deletion." }, { "slug": "CIRCLECI_DELETE_ORGANIZATION_ORB_ALLOWLIST", "name": "Delete Organization Orb Allowlist Entry", "description": "Tool to remove an entry from the organization's URL orb allow-list. Use when you need to revoke access to a previously allowed orb URL." }, { "slug": "CIRCLECI_DELETE_ORG_GROUP", "name": "Delete Organization Group", "description": "Tool to delete a group from a CircleCI organization. Use when you need to remove a group permanently from the organization." }, { "slug": "CIRCLECI_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a CircleCI project and its settings. Use when you need to permanently remove a project from CircleCI. This action cannot be undone." }, { "slug": "CIRCLECI_DELETE_PROJECT_ENV_VAR", "name": "Delete Project Environment Variable", "description": "Tool to delete an environment variable from a CircleCI project. Use when you need to remove an existing environment variable by name." }, { "slug": "CIRCLECI_GET_CONTEXT", "name": "Get Context", "description": "Tool to retrieve a context by its unique ID. Use when you need details about a specific CircleCI context." }, { "slug": "CIRCLECI_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need details about the signed-in user's profile, permissions, and account settings." }, { "slug": "CIRCLECI_GET_FLAKY_TESTS", "name": "Get Flaky Tests", "description": "Tool to get flaky tests for a project. Use when you need to identify tests that passed and failed in the same commit. Branch-agnostic insights help improve test reliability." }, { "slug": "CIRCLECI_GET_JOB_ARTIFACTS", "name": "Get Job Artifacts", "description": "Retrieves artifacts (output files like test results, logs, build binaries, reports) produced by a CircleCI job. Use this when you need to access files generated during a job's execution, such as test reports, coverage data, compiled binaries, or deployment artifacts. Returns download URLs for each artifact. Note: Jobs may produce zero artifacts if none were explicitly stored using 'store_artifacts' in the config." }, { "slug": "CIRCLECI_GET_JOB_DETAILS", "name": "Get Job Details", "description": "Tool to fetch details of a specific job within a project. Use when you need status, timing, and executor information for a CircleCI job by its number." }, { "slug": "CIRCLECI_GET_ORB_DETAILS", "name": "Get Orb Details", "description": "Tool to query detailed information about a CircleCI orb using the GraphQL API. Use when you need to retrieve orb metadata, versions, usage statistics, or namespace details." }, { "slug": "CIRCLECI_GET_ORB_VERSION", "name": "Get Orb Version", "description": "Tool to retrieve detailed information about a specific CircleCI orb version via GraphQL. Use when you need orb source code, version history, usage statistics, or metadata for a specific orb version." }, { "slug": "CIRCLECI_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve organization details from CircleCI using GraphQL query. Use when you need organization information by ID or by name and VCS type." }, { "slug": "CIRCLECI_GET_ORGANIZATION_GROUP", "name": "Get Organization Group", "description": "Tool to retrieve a group in an organization. Use when you need to get details about a specific group within a CircleCI organization." }, { "slug": "CIRCLECI_GET_PIPELINE_CONFIG", "name": "Get Pipeline Config", "description": "Tool to fetch pipeline configuration by ID. Use when you need the source or compiled YAML of a specific pipeline." }, { "slug": "CIRCLECI_GET_PIPELINE_DEFINITION", "name": "Get Pipeline Definition", "description": "Tool to retrieve a pipeline definition by project and definition ID. Use when you need details about a specific pipeline definition's configuration, sources, and metadata." }, { "slug": "CIRCLECI_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a CircleCI project by its slug. Use when you need project details such as organization info, project ID, or VCS configuration." }, { "slug": "CIRCLECI_GET_PROJECT_WORKFLOWS", "name": "Get Project Workflows", "description": "Tool to get summary metrics for all workflows of a project. Use when you need to analyze performance across all workflows, including success rates, duration metrics, throughput, and credits used." }, { "slug": "CIRCLECI_GET_TEST_METADATA", "name": "Get Test Metadata", "description": "Tool to fetch test metadata for a specific job. Use when you need detailed test results, run times, and failure messages after a job completes." }, { "slug": "CIRCLECI_GET_USAGE_EXPORT_JOB", "name": "Get Usage Export Job", "description": "Tool to retrieve a usage export job by organization ID and job ID. Use when you need to check the status or download URLs of a usage export job." }, { "slug": "CIRCLECI_GET_USER_INFORMATION", "name": "Get User Information", "description": "Tool to retrieve information about a CircleCI user by their unique ID. Use when you need user profile details after obtaining the user ID." }, { "slug": "CIRCLECI_GET_WORKFLOW_SUMMARY", "name": "Get Workflow Summary", "description": "Tool to get metrics and trends for a workflow. Use when you need workflow performance insights including success rates, duration metrics, and trends over time." }, { "slug": "CIRCLECI_LIST_CONTEXT_ENV_VARS", "name": "List Context Environment Variables", "description": "Tool to list all environment variables for a specific context. Use when you need to retrieve or paginate through environment variables stored in a CircleCI context." }, { "slug": "CIRCLECI_LIST_INSIGHTS_BRANCHES", "name": "List Insights Branches", "description": "Tool to get all branches for a project from CircleCI Insights. Use when you need to retrieve the list of branches that have workflow runs in the project." }, { "slug": "CIRCLECI_LIST_INSIGHTS_SUMMARY", "name": "List Insights Summary", "description": "Tool to get summary metrics with trends for the entire organization and for each project. Use when you need organization-wide performance analytics across all projects." }, { "slug": "CIRCLECI_LIST_NAMESPACE_ORBS", "name": "List Namespace Orbs", "description": "Tool to list orbs in a CircleCI registry namespace with pagination support. Use when you need to browse available orbs in a namespace, filter by visibility (public/private), or retrieve orb statistics. Returns up to 20 orbs per page with cursor-based pagination." }, { "slug": "CIRCLECI_LIST_ORB_CATEGORIES", "name": "List Orb Categories", "description": "Tool to retrieve all CircleCI orb categories with pagination support. Use when you need to list available categories for orb classification. Returns up to 20 categories per page with cursor-based pagination." }, { "slug": "CIRCLECI_LIST_ORBS", "name": "List Orbs", "description": "Tool to list CircleCI orbs with pagination support via GraphQL API. Use when you need to browse available orbs, filter by certification status, or discover orbs with their usage statistics. Returns up to 20 orbs per page with cursor-based pagination." }, { "slug": "CIRCLECI_LIST_ORGANIZATION_GROUPS", "name": "List Organization Groups", "description": "Tool to list all groups in a CircleCI organization. Use when you need to retrieve groups for an organization to manage permissions or view group memberships." }, { "slug": "CIRCLECI_LIST_PAGES_SUMMARY", "name": "List Pages Summary", "description": "Tool to get summary metrics and trends for a project across its workflows and branches. Use when you need to analyze project performance, track success rates, throughput, credits usage, and duration trends." }, { "slug": "CIRCLECI_LIST_PIPELINE_DEFINITIONS", "name": "List Pipeline Definitions", "description": "Tool to list all pipeline definitions for a specific project. Use when you need to retrieve available pipeline configurations for a project." }, { "slug": "CIRCLECI_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to get a list of pipelines for an organization. Use when you need to retrieve pipelines across multiple projects or for a specific organization." }, { "slug": "CIRCLECI_LIST_PIPELINES_FOR_PROJECT", "name": "List Pipelines for Project", "description": "Tool to list all pipelines for a specific project. Use when you need to retrieve the pipelines for a project (e.g., to display recent runs on a dashboard)." }, { "slug": "CIRCLECI_LIST_PROJECT_ENV_VARS", "name": "List Project Environment Variables", "description": "Tool to list all environment variables for a CircleCI project. Use when you need to retrieve project-level environment variables. Note that values are masked for security." }, { "slug": "CIRCLECI_LIST_PROJECT_SCHEDULES", "name": "List Project Schedules", "description": "Tool to list all schedules for a specific project. Use when you need to retrieve scheduled pipeline triggers for a project." }, { "slug": "CIRCLECI_LIST_SELF_HOSTED_RUNNERS", "name": "List Self-Hosted Runners", "description": "List self-hosted runners in CircleCI. Use this to retrieve information about your organization's self-hosted runners, optionally filtered by namespace or resource class. Useful for monitoring runner availability and status." }, { "slug": "CIRCLECI_LIST_USER_COLLABORATIONS", "name": "List User Collaborations", "description": "Tool to retrieve organizations where the authenticated user has access. Use when you need to list all organizations a user can collaborate on." }, { "slug": "CIRCLECI_LIST_WORKFLOWS_BY_PIPELINE_ID", "name": "List Workflows by Pipeline ID", "description": "Tool to list all workflows associated with a specific pipeline. Use when you need to fetch or paginate through workflows by pipeline ID." }, { "slug": "CIRCLECI_LIST_WORKFLOWS_JOBS_WORKFLOWS", "name": "List Workflows Jobs Workflows", "description": "Tool to get summary metrics for a project workflow's jobs. Use when you need performance analytics like success rates, duration statistics, and credit usage for jobs in a specific workflow." }, { "slug": "CIRCLECI_LIST_WORKFLOWS_TEST_METRICS", "name": "List Workflows Test Metrics", "description": "Tool to get test metrics for a project's workflows. Use when you need to analyze test performance, identify flaky tests, or find the slowest tests in a workflow." }, { "slug": "CIRCLECI_QUERY_CONTEXT", "name": "Query Context", "description": "Tool to retrieve a CircleCI context by its UUID using GraphQL API. Use when you need to fetch context details including ID, name, and creation time. Returns null in the data field if the context ID does not exist." }, { "slug": "CIRCLECI_QUERY_NAMESPACE_EXISTS", "name": "Query Namespace Exists", "description": "Tool to determine if a namespace exists in the CircleCI registry. Use when you need to verify namespace existence before performing operations. Returns a boolean indicating whether the namespace exists." }, { "slug": "CIRCLECI_QUERY_ORB_CATEGORY_ID", "name": "Query Orb Category ID", "description": "Tool to fetch the unique category ID for a CircleCI orb category by its name. Use when you need to categorize orbs or query category-specific information. Returns null in the data field if the category name does not exist." }, { "slug": "CIRCLECI_QUERY_ORB_EXISTS", "name": "Query Orb Exists", "description": "Tool to check if an orb exists in CircleCI registry and retrieve its privacy status. Use when you need to verify orb existence or check if an orb is private/public. Returns null in the data.orb field if the orb does not exist." }, { "slug": "CIRCLECI_QUERY_ORB_ID", "name": "Query Orb ID", "description": "Tool to fetch an orb's ID and optionally its namespace ID by orb name. Use when you need to query orb identifiers for CircleCI orbs. The name parameter should be the full orb reference (namespace/orbname). Optionally provide the namespace parameter to also retrieve the namespace ID in the same call." }, { "slug": "CIRCLECI_QUERY_ORB_LATEST_VERSION", "name": "Query Orb Latest Version", "description": "Tool to fetch the latest published version of a CircleCI orb. Use when you need to check the most recent version number of an orb for dependency management or updates. Returns null in the data field if the orb does not exist." }, { "slug": "CIRCLECI_QUERY_ORB_SOURCE", "name": "Query Orb Source", "description": "Tool to retrieve source code of a specific CircleCI orb version via GraphQL. Use when you need to access the YAML configuration or inspect the implementation of an orb version. Returns null if the orb version reference does not exist." }, { "slug": "CIRCLECI_QUERY_PLAN_METRICS", "name": "Query Plan Metrics", "description": "Tool to query plan metrics including credit usage by project and organization for a date range. Use when you need to analyze credit consumption, compute time usage, or project-level metrics for an organization." }, { "slug": "CIRCLECI_REMOVE_CONTEXT_ENV_VAR_GRAPHQL", "name": "Remove Context Environment Variable (GraphQL)", "description": "Tool to remove an environment variable from a CircleCI context using GraphQL API. Use when you need to delete a context-level environment variable by its name." }, { "slug": "CIRCLECI_RENAME_NAMESPACE", "name": "Rename Namespace", "description": "Tool to rename a CircleCI namespace by its UUID identifier. Use when you need to change the name of an existing namespace. Returns the renamed namespace ID on success, or errors if the operation fails." }, { "slug": "CIRCLECI_STORE_ENVIRONMENT_VARIABLE", "name": "Store Environment Variable", "description": "Tool to store an environment variable in a CircleCI context using GraphQL mutation. Use when you need to add or update an environment variable within a specific context." }, { "slug": "CIRCLECI_TRIGGER_PIPELINE", "name": "Trigger Pipeline", "description": "Triggers a new CI/CD pipeline run for a specified CircleCI project. Use this tool to programmatically start a build on a specific branch or tag, optionally passing custom pipeline parameters for conditional workflow execution. Requires write access to the project." }, { "slug": "CIRCLECI_UPSERT_CONTEXT_ENV_VAR", "name": "Upsert Context Environment Variable", "description": "Tool to add or update an environment variable in a CircleCI context. Use when you need to set or modify context-level environment variables for your CircleCI projects." }, { "slug": "CIRCLECI_VALIDATE_ORB_CONFIG", "name": "Validate Orb Config", "description": "Tool to validate CircleCI orb YAML configuration using the orbConfig GraphQL query. Use when you need to verify that an orb definition is syntactically correct before publishing or using it. Returns validation status, any errors found, and the processed YAML output." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal API Token", "type": "string", "description": "Your CircleCI personal API token. Generate one at User Settings > Personal API Tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cisco_meraki", "name": "Cisco Meraki", "logo": "https://logos.composio.dev/api/cisco_meraki", "description": "Cloud-based platform for wireless, switching, security, SD-WAN, smart cameras, sensors, and network management", "category": "it operations", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "cisco_meraki_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "dashboard:general:config:read,dashboard:general:config:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "cisco_meraki_api_key", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "API base URL by region: Canada (https://api.meraki.ca/api/v1), China (https://api.meraki.cn/api/v1), India (https://api.meraki.in/api/v1), US FedRAMP (https://api.gov-meraki.com/api/v1)", "required": true, "default": "https://api.meraki.com/api/v1" } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Meraki dashboard > My Profile (avatar icon) > API Access to generate your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "claap", "name": "Claap", "logo": "https://logos.composio.dev/api/claap", "description": "Video recording and collaboration platform for async meetings and team communication", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLAAP_CREATE_RECORDING", "name": "Create Recording", "description": "Tool to create a recording in Claap in an empty state. Video/audio can be supplied via upload URL (returned in response) or downloadUrl parameter. Supports transcript upload via metaUrl. Limited to 50 recordings per 30-day window." }, { "slug": "CLAAP_GET_WORKSPACE", "name": "Get Workspace Details", "description": "Tool to get workspace details for the authenticated user's workspace. Use when you need to retrieve workspace information including name, member count, and recording count." }, { "slug": "CLAAP_LIST_RECORDINGS", "name": "List Recordings", "description": "Tool to list Claap recordings with optional filtering by channel, date range, labels, and recorder. Use when you need to retrieve recordings from Claap with pagination support." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "claap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Claap API key (starts with cla_). Create in Settings > API & Webhooks > API tab", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "claid_ai", "name": "Claid.ai", "logo": "https://logos.composio.dev/api/claid_ai", "description": "Claid.ai offers AI-powered image editing APIs for tasks like background removal, upscaling, and color correction.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLAID_AI_BACKGROUND_GENERATE", "name": "Generate AI Backgrounds", "description": "Generate AI-powered backgrounds for product images. Creates professional scenes with customizable backgrounds, lighting, and composition. Use cases: - E-commerce product photography enhancement - Creating lifestyle scenes for product marketing - Generating consistent backgrounds across product catalogs - Adding realistic shadows and reflections Supports three generation modes: 1. Prompt-based: Describe the background in text (e.g., \"minimalist white studio\") 2. Template-based: Use a reference image to guide the style 3. Shadow/effect mode: Add shadows to transparent product images Returns temporary URLs (valid 24 hours) or saves to connected storage." }, { "slug": "CLAID_AI_BACKGROUND_REMOVE", "name": "CLAID Background Remove", "description": "Remove the background from images using Claid.ai's AI-powered background removal. Supports category hints (general, products, cars) for optimized removal, selective removal to keep specific objects, and optional clipping to crop to subject bounds. Returns a temporary URL to download the processed image with transparent or colored background." }, { "slug": "CLAID_AI_CLAID_STORAGE_DETAILS", "name": "Get Storage Details", "description": "Tool to retrieve details of a connected storage resource. Use when you have a storage ID and need to inspect its configuration before performing further operations." }, { "slug": "CLAID_AI_CREATE_STORAGE", "name": "Connect New Storage", "description": "Tool to connect a storage resource. Use after you have bucket/folder details and credentials. E.g., to add a new AWS S3, GCS bucket, or public web folder for your image assets." }, { "slug": "CLAID_AI_GENERATIVE_RESIZE", "name": "Generative Resize (Outpaint)", "description": "Expand image canvas using AI-powered generative outpainting. This tool adjusts image aspect ratios by generating coherent background content to fill new canvas areas. Use it when you need to: - Change image aspect ratio for different platforms (e.g., square to landscape) - Extend an image's borders while maintaining visual consistency - Create zoom-out effects by expanding the scene in all directions The AI generates photorealistic content that matches the original image's style, lighting, and composition. Maximum output size is 16.78 MP." }, { "slug": "CLAID_AI_IMAGE_AI_EDIT", "name": "Image AI Edit Async", "description": "Tool to submit an asynchronous AI-based image editing task. Use when you need text-driven edits on existing images and will poll for completion." }, { "slug": "CLAID_AI_IMAGE_EDIT_BATCH", "name": "CLAID Image Edit Batch", "description": "Tool to process multiple images in batch asynchronously. Use when applying the same edits (resize, enhance, background removal, etc.) to many images at once. Accepts input from: - Cloud storage folders (with optional recursive processing) - Lists of public image URLs - Single public image URL Returns a batch job ID and result_url to poll for completion status and processed images. Requires billing capabilities on the Claid.ai account." }, { "slug": "CLAID_AI_IMAGE_GENERATE", "name": "Generate AI Images from Text Prompt", "description": "Generate AI images from text prompts using Claid.ai. Creates 1024x1024 pixel images. Use when you need to create custom visuals, product mockups, or creative imagery from a description. Supports generating 1-4 images per request. Returns temporary URLs (valid 24h) or saves to connected cloud storage." }, { "slug": "CLAID_AI_LICENSE_PLATE_BLUR", "name": "CLAID License Plate Blur", "description": "Automatically detect and blur license plates in images for privacy compliance. Use this tool when you need to obscure vehicle registration plates in photos (e.g., for car marketplaces, real estate listings, or street photography). The AI automatically identifies and blurs all license plates in the image." }, { "slug": "CLAID_AI_PATCH_STORAGE", "name": "Update Connected Storage", "description": "Tool to update a connected storage's settings. Use when you need to change name, type, or parameters of an existing storage. Use after confirming the storage exists." }, { "slug": "CLAID_AI_POLISH_IMAGE", "name": "Polish Image", "description": "Applies AI-powered polish restoration to an image, sharpening and cleaning up while preserving the original structure. Ideal for enhancing upscaled images or removing AI artifacts. Note: Target image must not exceed 16 MP (megapixels)." }, { "slug": "CLAID_AI_SMART_FRAME", "name": "CLAID Smart Frame", "description": "Place images on a canvas with specified dimensions and padding for consistent product photography framing. Ideal for e-commerce: standardizes product photos with uniform spacing and background colors. Use this when you need to add white space or colored borders around product images for marketplace listings." }, { "slug": "CLAID_AI_STORAGE_LIST", "name": "List Connected Storages", "description": "Tool to list connected storage resources. Use when you need to retrieve all storage connectors for your account." }, { "slug": "CLAID_AI_STORAGE_TYPES", "name": "List Storage Types", "description": "Tool to retrieve available storage types. Use when you need to list supported storage connectors before uploading files." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "claid_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Claid.ai API Key", "type": "string", "description": "The API key used for authenticating requests to the Claid.ai API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "classmarker", "name": "Classmarker", "logo": "https://logos.composio.dev/api/classmarker", "description": "ClassMarker is a professional, flexible, and easy-to-use online quiz maker for business and education, offering customizable exams, instant grading, and detailed reporting.", "category": "education", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLASSMARKER_CREATE_ACCESS_LIST_ITEM", "name": "Create Access List Item", "description": "Tool to add one or more access codes to an access list. Use after obtaining a valid access_list_id to grant exam access." }, { "slug": "CLASSMARKER_CREATE_CATEGORY", "name": "Create a new question category", "description": "Tool to create a new question category. Use after confirming the parent category ID." }, { "slug": "CLASSMARKER_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group. Use when you need to organize users into a specific group after planning your user structure." }, { "slug": "CLASSMARKER_CREATE_QUESTION", "name": "Create Question", "description": "Tool to create a new question with specified text, type, and category in ClassMarker. Supports multiplechoice, multipleresponse, truefalse, and essay question types." }, { "slug": "CLASSMARKER_CREATE_USER", "name": "Create ClassMarker User", "description": "Tool to create a new user in ClassMarker. Use after gathering user details to provision accounts. Provide user info and optional group assignments. Returns the complete API response." }, { "slug": "CLASSMARKER_DELETE_ACCESS_LIST_ITEM", "name": "Delete Access List Item", "description": "Removes one or more access codes from a ClassMarker access list. Access lists are used to control exam access by requiring users to provide unique identifiers (e.g., email addresses, employee IDs, student numbers). Each code can be used a limited number of times per exam, and codes are recorded with exam results. To use this action: 1. First call GET_ALL_GROUPS_LINKS_EXAMS to find available access list IDs 2. Provide the access_list_id and the list of codes to remove 3. Up to 100 codes can be removed per request Note: This action is idempotent - deleting codes that don't exist will not cause an error." }, { "slug": "CLASSMARKER_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete an API key by its ID. Use when you need to revoke an API key immediately." }, { "slug": "CLASSMARKER_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group by its ID. Use when you need to remove a group from ClassMarker." }, { "slug": "CLASSMARKER_DELETE_TEST_LINK", "name": "Delete Test Link", "description": "Deletes a specific link assignment from a test/exam in ClassMarker. Links are unique URLs that provide access to tests. This action is idempotent - deleting a non-existent link returns success. Use this when you need to remove a link from a test to revoke access via that specific URL." }, { "slug": "CLASSMARKER_DELETE_USER", "name": "Delete User", "description": "Tool to delete a specific user by ID. Use when you need to remove a user from ClassMarker after verifying the user's identity." }, { "slug": "CLASSMARKER_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a webhook listener from your ClassMarker account. This action removes a webhook configuration that was previously set up to receive real-time exam results. The ClassMarker API is idempotent - attempting to delete a non-existent webhook will return success without error. Webhook IDs are typically obtained from the ClassMarker web interface (My Account > Webhooks / API Keys) or through other webhook management tools if available. Note: This is a destructive operation and cannot be undone through the API." }, { "slug": "CLASSMARKER_GET_GROUP_DETAILS", "name": "Get Group Details", "description": "Retrieve detailed information about a specific group by ID. Returns group name and assigned tests. Note: This fetches all accessible groups and filters for the specified group_id, as ClassMarker API doesn't provide a direct single-group endpoint." }, { "slug": "CLASSMARKER_GET_INITIAL_FINISHED_AFTER_TIMESTAMP", "name": "Get Initial Finished After Timestamp", "description": "Compute the initial finishedAfterTimestamp for paginating ClassMarker test results. Use this action when you need to retrieve recent test results for the first time and don't have a previous 'next_finished_after_timestamp' value. This returns a Unix timestamp set to 2 weeks ago, which is the ClassMarker API's default starting point for result pagination. **When to use this:** - Starting a new pagination sequence for test results - You don't have a stored 'next_finished_after_timestamp' from a previous request **When NOT to use this:** - You have a 'next_finished_after_timestamp' from a previous response - use that value instead - For subsequent pagination requests - use the timestamp from the last successful response **Important:** ClassMarker API requires the finishedAfterTimestamp to be less than 3 months old. This action ensures compliance by setting it to 2 weeks ago." }, { "slug": "CLASSMARKER_GET_QUESTION", "name": "Get Question", "description": "Tool to retrieve a specific question by its ID. Use when you need detailed information of a question after confirming the question_id." }, { "slug": "CLASSMARKER_GET_RECENT_RESULTS_GROUP_EXAM", "name": "Get Recent Results For Group Exam", "description": "Tool to fetch recent test results for a specific group and exam. Use after determining a UNIX timestamp to retrieve only results finished after that time for the group and exam." }, { "slug": "CLASSMARKER_GET_RECENT_RESULTS_LINK_EXAM", "name": "Get Recent Results Link Exam", "description": "Fetch recent exam results for a specific link and test combination. Use CLASSMARKER_GET_ALL_GROUPS_LINKS_EXAMS first to obtain valid link_id and test_id values. This endpoint returns paginated results based on finishedAfterTimestamp for efficient incremental data retrieval. Supports up to 200 results per request." }, { "slug": "CLASSMARKER_GET_TEST_DETAILS", "name": "Get Test Details", "description": "Retrieves detailed information for a specific test (exam) including its name and all assignment contexts. Returns a list of groups and/or links where the test is assigned, with their IDs, names, and URL identifiers. Use when you need to find where a specific test is deployed or to get the complete deployment context for a test. Returns 'no_results' status if test ID doesn't exist." }, { "slug": "CLASSMARKER_GET_USER_DETAILS", "name": "Get User Details", "description": "Tool to retrieve detailed information about a specific user. Use after you have the user's ID and need the full user profile." }, { "slug": "CLASSMARKER_LIST_CATEGORIES", "name": "List Question Categories", "description": "Retrieves all question categories organized in a hierarchical structure. Returns parent categories with their nested sub-categories. Use this to browse available categories before creating questions or filtering content." }, { "slug": "CLASSMARKER_LIST_CERTIFICATES", "name": "List Certificates", "description": "Tool to list all certificates. Use when you need to retrieve all certificates available in the account." }, { "slug": "CLASSMARKER_LIST_QUESTIONS", "name": "List Questions", "description": "Retrieve a paginated list of questions from your question bank. Returns up to 200 questions per page. Use the optional 'page' parameter to navigate through multiple pages. Each question includes type, content, points, options, correct answers, and metadata." }, { "slug": "CLASSMARKER_LIST_RECENT_RESULTS_FOR_GROUPS", "name": "List Recent Results For Groups", "description": "Retrieve recent exam results for all groups in your ClassMarker account. Returns results from the last 2 weeks by default, or from a specified timestamp (must be within 3 months). Use this to fetch user performance data including scores, pass/fail status, and certificates." }, { "slug": "CLASSMARKER_LIST_RECENT_RESULTS_FOR_LINKS", "name": "List Recent Results for Links", "description": "Retrieves recent test results from ALL links accessible to your API key. Returns results completed after a specified timestamp (defaults to 2 weeks ago). Supports pagination for large result sets (max 200 per request). Use the next_finished_after_timestamp from the response for subsequent requests to fetch newer results without duplicates. Ideal for syncing or monitoring exam completions across all your test links." }, { "slug": "CLASSMARKER_LIST_USERS", "name": "List Users", "description": "Tool to list all users. Use when you need to retrieve every user in your account after confirming authentication." }, { "slug": "CLASSMARKER_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all configured webhooks. Use when you need to programmatically list your webhook configurations." }, { "slug": "CLASSMARKER_PUT_CATEGORY", "name": "Update Sub-Category", "description": "Tool to update an existing sub-category. Use when you need to rename or move a sub-category after confirming its IDs." }, { "slug": "CLASSMARKER_PUT_PARENT_CATEGORY", "name": "Update an existing parent category", "description": "Tool to update an existing parent category. Use after confirming the parent category ID." }, { "slug": "CLASSMARKER_PUT_QUESTION", "name": "Update Question", "description": "Updates an existing question in the ClassMarker question bank. IMPORTANT CONSTRAINTS: - Cannot change the question_type of an existing question (must match original) - random_answers is only valid for multiplechoice and multipleresponse types - grade_style is only valid for multipleresponse type - options and correct_options are required for multiplechoice, multipleresponse, and truefalse - essay questions cannot have options, correct_options, or grade_style Set verify_only=True to validate changes without applying them." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "classmarker_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ClassMarker API Key", "type": "string", "description": "Your ClassMarker API key from Settings > API.", "required": true, "default": null }, { "name": "generic_token", "displayName": "ClassMarker API Secret", "type": "string", "description": "Your ClassMarker API secret from Settings > API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "claude", "name": "Claude", "logo": "https://logos.composio.dev/api/claude", "description": "Claude is Anthropic's AI assistant providing advanced language understanding and generation capabilities", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "claude_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Anthropic API key from https://console.anthropic.com/settings/keys", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "API Version", "type": "string", "description": "Anthropic API version (e.g., 2023-06-01)", "required": false, "default": "2023-06-01" } ] } } } ] }, { "slug": "clay", "name": "Clay", "logo": "https://logos.composio.dev/api/clay", "description": "Data enrichment and workflow automation platform with People and Company lookup endpoints for Enterprise customers", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clay_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Clay API key found in Settings > Your profile > API key. Note: API access is limited to Enterprise plan customers.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clearout", "name": "Clearout", "logo": "https://logos.composio.dev/api/clearout", "description": "Clearout offers AI-powered email validation, email finder, and prospecting services to enhance email deliverability and lead generation.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLEAROUT_AUTOCOMPLETE_COMPANY_TO_DOMAIN", "name": "Autocomplete Company to Domain", "description": "Tool to autocomplete company names to probable domains with confidence scores. Use after obtaining a company name or URL to get suggestions." }, { "slug": "CLEAROUT_BUSINESS_ACCOUNT_VERIFY", "name": "Business Account Verify", "description": "Tool to check if an email belongs to a business/work account. Use when validating corporate emails before onboarding." }, { "slug": "CLEAROUT_CATCH_ALL_VERIFY", "name": "Catch-All Verify", "description": "Tool to check if an email domain is catch-all. Use after confirming email validity." }, { "slug": "CLEAROUT_DISPOSABLE_VERIFY", "name": "Verify Disposable Email", "description": "Tool to check if an email is from a disposable provider. Use after acquiring an email address." }, { "slug": "CLEAROUT_DOMAIN_FIND_MX", "name": "Find Domain MX Records", "description": "Tool to retrieve MX records for a domain in priority order. Use when you need to find a domain's mail servers (e.g., for email routing setup)." }, { "slug": "CLEAROUT_DOMAIN_FIND_WHOIS", "name": "Fetch Domain WHOIS Information", "description": "Tool to fetch WHOIS record for a domain. Use when you need WHOIS data for a domain." }, { "slug": "CLEAROUT_EMAIL_FINDER_BULK", "name": "Bulk Email Finder", "description": "Tool to upload a CSV or XLSX contacts file for bulk email finding. Use when you need to find emails for a list of contacts in bulk." }, { "slug": "CLEAROUT_EMAIL_FINDER_BULK_CANCEL", "name": "Cancel Bulk Email Finder Job", "description": "Tool to cancel a running bulk email finder job. Use when you need to stop an in-progress list scan before completion." }, { "slug": "CLEAROUT_EMAIL_FINDER_BULK_RESULT_DOWNLOAD", "name": "Bulk Email Finder Result Download", "description": "Tool to generate a bulk email finder result download URL. Use after confirming bulk job completion to retrieve the result file link." }, { "slug": "CLEAROUT_EMAIL_VERIFY_BULK", "name": "Bulk Email Verify", "description": "Tool to upload a CSV or XLSX file for bulk email verification. Use when you have a list of emails to verify in bulk." }, { "slug": "CLEAROUT_EMAIL_VERIFY_BULK_CANCEL", "name": "Cancel Bulk Email Verification Job", "description": "Cancel an in-progress bulk email verification job. Use this to stop a running verification before it completes, saving credits for unprocessed emails. The job must be in a cancellable state (not already completed or cancelled). Returns error code 1029 if list doesn't exist, or error code 1116 if the list is not in a cancellable stage." }, { "slug": "CLEAROUT_EMAIL_VERIFY_BULK_PROGRESS_STATUS", "name": "Bulk Email Verify Progress Status", "description": "Tool to retrieve progress for a bulk email verification job. Use after initiating a bulk verification to poll its state and percent complete." }, { "slug": "CLEAROUT_EMAIL_VERIFY_BULK_RESULT_DOWNLOAD", "name": "Bulk Email Verify Result Download", "description": "Tool to obtain a temporary URL for bulk email verification results. Use after completing a bulk verification job to download the results file." }, { "slug": "CLEAROUT_EMAIL_VERIFY_GET_CREDITS", "name": "Email Verify Get Credits", "description": "Tool to fetch available email verification credits. Use when checking remaining credits before performing email verifications." }, { "slug": "CLEAROUT_EMAIL_VERIFY_INSTANT", "name": "Instant Email Verifier", "description": "Tool to instantly verify a single email address. Use when you need real-time validation before processing an email." }, { "slug": "CLEAROUT_FREE_ACCOUNT_VERIFY", "name": "Verify Free Email Account", "description": "Tool to detect if an email is from a free email service provider. Use after confirming the email format." }, { "slug": "CLEAROUT_GIBBERISH_ACCOUNT_VERIFY", "name": "Verify Gibberish Email", "description": "Tool to verify if an email address is gibberish. Use when filtering out nonsensical or invalid-looking emails." }, { "slug": "CLEAROUT_REVERSE_LOOKUP_FIND_COMPANY_VIA_DOMAIN", "name": "Reverse Lookup Company by Domain", "description": "Find company information (name, logo, LinkedIn URL, address) by looking up its domain name. Returns company profile data if found, or an error with code 5025 if no profile exists for the domain." }, { "slug": "CLEAROUT_REVERSE_LOOKUP_FIND_PERSON_VIA_EMAIL", "name": "Reverse Lookup Person by Email", "description": "Tool to retrieve a person’s profile from an email address. Use when you want to enrich a valid email with associated person details." }, { "slug": "CLEAROUT_REVERSE_LOOKUP_FIND_PERSON_VIA_LINKED_IN", "name": "Find Person via LinkedIn URL", "description": "Tool to discover person information via a LinkedIn profile URL. Use when you need to retrieve person’s profile details from a LinkedIn URL." }, { "slug": "CLEAROUT_ROLE_ACCOUNT_VERIFY", "name": "Role Account Verifier", "description": "Tool to determine if an email is a role-based account. Use when identifying group mailboxes (e.g., support@) before sending targeted communications." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clearout_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Clearout API Token", "type": "string", "description": "The API token generated from the Clearout dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clerk", "name": "Clerk", "logo": "https://logos.composio.dev/api/clerk", "description": "Drop-in authentication for React and React Native. Clerk provides complete user management with social logins, multi-factor authentication, and session management.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLERK_GET_PUBLIC_INTERSTITIAL", "name": "Get Public Interstitial", "description": "Tool to retrieve the HTML markup for the Clerk interstitial page. Use when you need to obtain the interstitial page content for your Clerk instance." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clerk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Select an Application from your dashboard, then go to \"Developers\" > \"API Keys\" and copy your Secret Key (starts with sk_test_ or sk_live_)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clevertap", "name": "Clevertap", "logo": "https://logos.composio.dev/api/clevertap", "description": "CleverTap is the all-in-one engagement platform that helps brands unlock limitless customer lifetime value", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clevertap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "The region of your account. For example, if your account dashboard URL is https://us1.dashboard.clevertap.com/ then select United States (us1)", "required": true, "default": "us1.api" }, { "name": "generic_api_key", "displayName": "Project ID", "type": "string", "description": "Sign in and go to Settings, then click Project to copy your Project ID", "required": true, "default": null }, { "name": "generic_token", "displayName": "Pass Code", "type": "string", "description": "Sign in and go to Settings, then click Project to copy your Pass Code", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clickhouse", "name": "ClickHouse", "logo": "https://logos.composio.dev/api/clickhouse", "description": "ClickHouse is a fast open-source column-oriented database management system for real-time analytics and big data processing with SQL support", "category": "databases", "authSchemes": [ "BASIC" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLICKHOUSE_EXECUTE_QUERY", "name": "Execute ClickHouse Query", "description": "Execute a SQL query in ClickHouse and return the results. This is the primary action for querying data from ClickHouse databases." }, { "slug": "CLICKHOUSE_GET_DATABASE_SCHEMA", "name": "Get Database Schema", "description": "Get comprehensive schema overview of an entire database including all tables and optionally their column definitions. Essential for AI agents to understand the complete database structure in a single call." }, { "slug": "CLICKHOUSE_GET_PLAY_INTERFACE", "name": "Get ClickHouse Play Interface", "description": "Get the ClickHouse Play web user interface for interactive query execution. Returns HTML page with Monaco Editor for writing queries and visualizing results." }, { "slug": "CLICKHOUSE_GET_TABLE_SCHEMA", "name": "Get Table Schema", "description": "Get detailed schema information for a specific table including column definitions, types, keys, and optionally sample data. This is essential for AI agents to understand table structure before constructing queries." }, { "slug": "CLICKHOUSE_LIST_DATABASES", "name": "List ClickHouse Databases", "description": "List all databases in the ClickHouse instance. Useful for discovering available databases before querying tables." }, { "slug": "CLICKHOUSE_LIST_TABLES", "name": "List ClickHouse Tables", "description": "List tables in ClickHouse databases. Returns information about tables including their engine, size, and row count." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "clickhouse_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL of your ClickHouse instance (e.g., http://localhost:8123 or https://your-cluster.clickhouse.cloud:8443)", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "ClickHouse username for authentication (default user is 'default')", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "ClickHouse password for authentication", "required": true, "default": null } ], "optional": [ { "name": "database", "displayName": "Default Database Name", "type": "string", "description": "Default database to use for queries. Actions will use this database when not explicitly specified in the request. Leave empty to use ClickHouse's default database.", "required": false, "default": null } ] } } } ] }, { "slug": "clickmeeting", "name": "Clickmeeting", "logo": "https://logos.composio.dev/api/clickmeeting", "description": "ClickMeeting is a cloud-based online meeting and webinar platform that enables businesses and individuals to host virtual meetings, webinars, and training sessions.", "category": "webinars", "authSchemes": [ "API_KEY" ], "toolCount": 39, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLICKMEETING_CREATE_ACCESS_TOKENS", "name": "Create Access Tokens", "description": "Tool to generate access tokens for conference participants. Use when room access_type=3 (token protected) and you need unique tokens for attendees." }, { "slug": "CLICKMEETING_CREATE_CONFERENCE", "name": "Create Conference", "description": "Tool to create a new conference. Use when you need to schedule or start a meeting/webinar after authentication." }, { "slug": "CLICKMEETING_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in your ClickMeeting account. Use when you need to add or pre-register an attendee before scheduling an event." }, { "slug": "CLICKMEETING_DELETE_CONFERENCE", "name": "Delete Conference", "description": "Tool to delete a specific conference. Use after confirming the conference is no longer needed." }, { "slug": "CLICKMEETING_DELETE_FILE", "name": "Delete File", "description": "Permanently delete a file from the ClickMeeting file library. Use this action to remove unwanted or outdated files (presentations, images, videos, etc.) from your library. Before calling this action, use Get File Library to find the file_id. WARNING: Deletion is irreversible - the file cannot be recovered once deleted." }, { "slug": "CLICKMEETING_DELETE_RECORDING", "name": "Delete Recording", "description": "Permanently delete a specific recording from a conference room. Use this action to remove an unwanted or outdated recording. Before calling this action: 1. Use Get Conferences to find the conference_id 2. Use Get Recordings to find the recording_id within that conference WARNING: Deletion is irreversible. The recording file cannot be recovered once deleted." }, { "slug": "CLICKMEETING_DELETE_RECORDINGS", "name": "Delete Recordings", "description": "Tool to delete all recordings for a conference room. Use when you need to clear all saved recordings for a specific conference before archiving or reusing it." }, { "slug": "CLICKMEETING_DOWNLOAD_FILE", "name": "Download File", "description": "Download the content of a specific file from the ClickMeeting file library. Use when you need to retrieve the actual file content for processing or storage." }, { "slug": "CLICKMEETING_GENERATE_AUTOLOGIN_URL", "name": "Generate Autologin Hash", "description": "Generate an autologin hash for a conference participant. This tool creates a hash that allows direct access to a ClickMeeting conference room without requiring separate login. Use it to build auto-login URLs in the format: ?l= The returned hash is time-sensitive and tied to the specific participant details provided." }, { "slug": "CLICKMEETING_GENERATE_SESSION_PDF_REPORT", "name": "Generate Session PDF Report", "description": "Generates a PDF report containing analytics and details for a specific conference session. The report includes session attendance, duration, and other metrics. Use this when you need to export session data as a downloadable PDF document. Note: This action requires a valid session_id. Sessions are only created after a conference has been held (started and ended). Use get_conference_sessions to find available sessions. The PDF generation may be asynchronous - check the 'status' field in the response. If status is 'NEW' or 'IN_PROGRESS', poll again until status becomes 'FINISHED'." }, { "slug": "CLICKMEETING_GET_CHAT_DETAILS", "name": "Get Chat Details", "description": "Tool to retrieve details of a specific chat session. Use when you have the chat_id and need its metadata and messages." }, { "slug": "CLICKMEETING_GET_CHATS", "name": "Get Chats", "description": "Tool to retrieve a list of all chat sessions. Use when you need to list available chats in your account." }, { "slug": "CLICKMEETING_GET_CONFERENCE_DETAILS", "name": "Get Conference Details", "description": "Retrieve detailed information about a specific ClickMeeting conference room. Returns comprehensive data including room URL, access settings, phone dial-in PINs, timezone, status, and configuration options. Use the meeting_id from Get Conferences action or from a previously created conference." }, { "slug": "CLICKMEETING_GET_CONFERENCE_FILES", "name": "Get Conference Files", "description": "Retrieves the list of files uploaded to a specific conference room's file library. Returns file metadata including download URLs, conversion status, and thumbnails. Files must be uploaded via the upload_file action before they appear here. Returns an empty list if no files exist or if the conference ID is invalid." }, { "slug": "CLICKMEETING_GET_CONFERENCES", "name": "Get Conferences", "description": "Retrieve a list of conference rooms from your ClickMeeting account filtered by status. Use 'active' to get current/upcoming meetings, or 'inactive' to get archived/ended meetings. Returns details including room URLs, access settings, schedules, and registration info." }, { "slug": "CLICKMEETING_GET_CONFERENCE_SESSIONS", "name": "Get Conference Sessions", "description": "Retrieves past sessions for a conference room. Sessions are only created when a conference is actually held (participants join). Use this to get historical data like session times and attendance counts after meetings have occurred. Returns an empty list if the conference has never been held." }, { "slug": "CLICKMEETING_GET_CONFERENCE_SKINS", "name": "Get Conference Skins", "description": "Retrieves a list of available conference room skins that can be used to customize the appearance of webinar/meeting rooms. Each skin includes an ID (for use when creating/updating conferences), a display name, and a preview thumbnail URL. Note: This feature may require a paid ClickMeeting plan with custom branding access." }, { "slug": "CLICKMEETING_GET_FILE_DETAILS", "name": "Get File Details", "description": "Retrieve detailed information about a specific file from the ClickMeeting file library. Returns file status, URL, document type, conversion progress, and upload date. Use this to check file availability and status before using in conferences." }, { "slug": "CLICKMEETING_GET_FILE_LIBRARY", "name": "Get File Library", "description": "Retrieve a list of files from the ClickMeeting file library. Returns all uploaded files (presentations, images, videos, audio) available for use in meetings. Use this to browse, search, or inventory files before assigning them to conferences." }, { "slug": "CLICKMEETING_GET_PHONE_GATEWAYS", "name": "Get Phone Gateways", "description": "Retrieve available phone dial-in numbers for ClickMeeting webinars. Returns a list of worldwide phone gateways that participants can call to join a webinar via audio conference. Each gateway includes the country code, city location, dial-in number, and geographic coordinates. No parameters are required. Use this tool when you need to provide dial-in options for webinar participants who prefer to join by phone, or to display available dial-in numbers in meeting invitations." }, { "slug": "CLICKMEETING_GET_PING", "name": "Ping API", "description": "Tool to check API service status. Use when verifying the ClickMeeting API connection before making requests." }, { "slug": "CLICKMEETING_GET_REGISTRATIONS", "name": "Get Registrations", "description": "Tool to retrieve registrations for a conference room by status. Use after obtaining the conference_id to fetch registrations filtered by state." }, { "slug": "CLICKMEETING_GET_SESSION_ATTENDEES", "name": "Get Session Attendees", "description": "Retrieves the list of attendees who participated in a specific session of a conference room. Returns attendee details including device info, role, rating, and poll responses. Sessions are created when a conference is started, so this action only returns data for conferences that have been held. Use Get Conference Sessions to find valid session IDs." }, { "slug": "CLICKMEETING_GET_SESSION_DETAILS", "name": "Get Session Details", "description": "Retrieve detailed statistics for a specific past conference session. Returns attendance data (total and max concurrent visitors), participant list with join/leave times, and PDF report generation URLs. Sessions are only available after a conference has actually been held - scheduled or active conferences without any past meetings will not have sessions. First use Get Conference Sessions to obtain valid session_id values." }, { "slug": "CLICKMEETING_GET_SESSION_POLL_DETAILS", "name": "Get Session Poll Details", "description": "Tool to retrieve details of a specific poll conducted during a session. Use after confirming conference_id, session_id, and poll_id to analyze poll results." }, { "slug": "CLICKMEETING_GET_SESSION_QA_HISTORY", "name": "Get Session Q&A History", "description": "Tool to retrieve the Q&A history for a specific session. Use after confirming session_id to list all questions and answers asked during the session. NOTE: The session must have Q&A data available; sessions without Q&A will return an empty list or 404." }, { "slug": "CLICKMEETING_GET_SESSION_RECORDINGS", "name": "Get Session Recordings", "description": "Retrieve all recordings for a conference room. Each recording includes the duration, file size, start time, and a download URL (expires after 5 minutes). Use after confirming the room_id from the Get Conferences action. Note: Recordings are only available after a conference session has been held and recorded." }, { "slug": "CLICKMEETING_GET_SESSION_REGISTRATIONS", "name": "Get Session Registrations", "description": "Retrieve registrations for a specific session within a conference room. Requires both conference_id (room ID) and session_id. Use CLICKMEETING_GET_CONFERENCES to get conference IDs and CLICKMEETING_GET_CONFERENCE_SESSIONS to get session IDs." }, { "slug": "CLICKMEETING_GET_SESSION_SURVEY_DETAILS", "name": "Get Session Survey Details", "description": "Tool to retrieve details of a specific survey/poll conducted during a session. Use after obtaining conference_id, session_id, and survey_id from their respective actions. Note: ClickMeeting provides poll/survey data through the session attendees endpoint." }, { "slug": "CLICKMEETING_GET_SESSION_SURVEYS", "name": "Get Session Surveys", "description": "Retrieves the list of surveys conducted during a specific conference session. Sessions are created when a conference is started, so this action only returns data for conferences that have been held. Use Get Conference Sessions to find valid session IDs first. Returns an empty list if no surveys exist for the session." }, { "slug": "CLICKMEETING_GET_TIME_ZONE_LIST", "name": "Get Time Zone List", "description": "Retrieves all available time zones supported by ClickMeeting. Returns IANA time zone names (e.g., 'Europe/Warsaw', 'America/New_York'). Use this to get valid time zone values when creating or scheduling conferences." }, { "slug": "CLICKMEETING_GET_TIME_ZONE_LIST_BY_COUNTRY", "name": "Get Time Zone List by Country", "description": "Retrieve available time zones for a specific country by ISO 3166-1 alpha-2 country code. Returns a list of IANA time zone identifiers (e.g., 'America/New_York', 'Europe/Warsaw'). Useful when scheduling conferences and needing to present time zone options relevant to a specific country. Example: 'Get time zones for country_code=US' returns US time zones like America/New_York, America/Los_Angeles, etc." }, { "slug": "CLICKMEETING_GET_TOKEN_BY_EMAIL", "name": "Get Token By Email", "description": "Tool to retrieve access tokens assigned to a specific email address for a token-protected conference room. Use this action when you need to get tokens for participants in rooms with access_type=3 (token-based access)." }, { "slug": "CLICKMEETING_LIST_ACCESS_TOKENS", "name": "List Access Tokens", "description": "Tool to retrieve all generated access tokens for a token-protected conference room. Use when you need to view token values, associated emails, and first use dates for access control. Only works with conferences that have access_type=3 (token-based protection)." }, { "slug": "CLICKMEETING_LIST_REGISTRATIONS_BY_STATUS", "name": "List Registrations By Status", "description": "Tool to retrieve registered participants of a conference room filtered by registration status. Use when you need to get all registrations or only active registrations for a specific conference." }, { "slug": "CLICKMEETING_REGISTER_PARTICIPANT", "name": "Register Participant", "description": "Tool to register a participant for a conference room. Use after obtaining a valid room ID." }, { "slug": "CLICKMEETING_SEND_INVITATION", "name": "Send Invitation", "description": "Tool to send invitation emails to participants for a ClickMeeting conference. Use this after creating a conference to invite attendees by email. Supports multiple recipients, different templates, and role assignment." }, { "slug": "CLICKMEETING_UPDATE_CONFERENCE", "name": "Update Conference", "description": "Tool to update an existing conference room's parameters. Use when you need to modify conference settings such as name, type, access mode, lobby, schedule, or registration." }, { "slug": "CLICKMEETING_UPLOAD_FILE", "name": "Upload File", "description": "Upload a file to the ClickMeeting file library. Files can be uploaded to the user's general library or to a specific conference room. Uploaded files are available for use in meetings as presentations, videos, or other materials." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clickmeeting_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ClickMeeting API Key", "type": "string", "description": "The API key used for authenticating requests to the ClickMeeting API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clicksend", "name": "ClickSend", "logo": "https://logos.composio.dev/api/clicksend", "description": "ClickSend is a cloud-based SMS and email marketing platform that enables businesses to send and receive SMS messages, manage contacts, and track campaign performance.", "category": "phone & sms", "authSchemes": [ "BASIC" ], "toolCount": 166, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLICKSEND_ACCOUNT_USEAGE_BY_SUBACCOUNT_GET", "name": "Get Account Usage by Subaccount", "description": "Retrieve detailed account usage statistics grouped by subaccount for a specific month and year. Returns usage data for all message types (SMS, MMS, voice, fax, email, post, postcards) broken down by individual subaccounts, along with totals and currency information. Use when you need to view usage breakdown across subaccounts for billing, cost allocation, or monitoring purposes." }, { "slug": "CLICKSEND_ACCOUNT_VERIFY_SEND_PUT", "name": "Send Account Activation Token", "description": "Tool to send an account activation token for verification. Use when you need to verify a new user account via SMS or other verification method." }, { "slug": "CLICKSEND_ACCOUNT_VERIFY_VERIFY_BY_ACTIVATION_TOKEN_PUT", "name": "Verify New Account", "description": "Tool to verify a new ClickSend account using an activation token. Use when you need to activate a newly created account with the token received during registration." }, { "slug": "CLICKSEND_CALCULATE_POST_LETTERS_PRICE", "name": "Calculate Post Letter Price", "description": "Calculate the price for sending physical post letters via ClickSend without actually sending them. This tool estimates the cost of postal letters based on the file, recipients, and printing options (priority, color, duplex). It returns detailed pricing information including per-recipient costs, total price, and currency details. Use this when you need to: - Get a cost estimate before sending postal letters - Calculate bulk pricing for multiple recipients - Compare costs with different printing options (color vs B&W, single vs double-sided, standard vs priority) Note: You must have a valid return_address_id for each recipient. Use the \"Get All Post Return Addresses\" or \"Create Post Return Address\" actions to obtain return address IDs." }, { "slug": "CLICKSEND_CALCULATE_SMS_CAMPAIGNS_PRICE", "name": "Calculate SMS Campaign Price", "description": "Tool to calculate the price for an SMS campaign before sending. Use when you need to estimate costs for an SMS campaign to a contact list. Pricing depends on the number of recipients, message length, and destination countries." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_EMAIL_RECEIPTS", "name": "Create Email Delivery Receipt Automation", "description": "Tool to create an email delivery receipt automation rule in ClickSend. Use when you need to set up automated actions to trigger when email delivery receipts are received." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_FAX_INBOUND", "name": "Create Inbound Fax Automation", "description": "Tool to create a new inbound fax automation rule in ClickSend. Use when you need to set up automated actions to trigger when inbound faxes are received." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_FAX_RECEIPTS", "name": "Create Fax Delivery Receipt Automation", "description": "Creates a fax delivery receipt automation rule in ClickSend. When faxes are delivered, this rule automatically triggers the specified action (e.g., sends receipt data to a webhook URL, forwards to an email, or sends an SMS). Use this to integrate fax delivery tracking into your systems or workflow." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_SMS_INBOUND", "name": "Create Inbound SMS Automation", "description": "Tool to create a new inbound SMS automation rule in ClickSend. Use when you need to set up automated actions to trigger when inbound SMS messages are received." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_SMS_RECEIPTS", "name": "Create SMS Delivery Receipt Automation", "description": "Tool to create an SMS delivery receipt automation rule in ClickSend. Use when you need to set up automated actions to trigger when SMS delivery receipts are received." }, { "slug": "CLICKSEND_CREATE_AUTOMATIONS_VOICE_RECEIPTS", "name": "Create Voice Delivery Receipt Automation", "description": "Tool to create a voice delivery receipt automation rule in ClickSend. Use when you need to set up automated actions to forward voice delivery receipts to a specified URL or email when voice messages are delivered." }, { "slug": "CLICKSEND_CREATE_DELIVERY_ISSUES", "name": "Create Delivery Issue", "description": "Tool to create a delivery issue report in ClickSend. Use when you need to report problems with message delivery such as messages not being received or delivery failures." }, { "slug": "CLICKSEND_CREATE_EMAIL_ADDRESSES2", "name": "Create Allowed Email Address", "description": "Tool to create an allowed email address for sending transactional emails. Use when you need to add a new sender email address to your ClickSend account. The address will need to be verified before it can be used for sending." }, { "slug": "CLICKSEND_CREATE_EMAIL_ADDRESSES6", "name": "Get Allowed Email Addresses", "description": "Tool to retrieve list of allowed email addresses for sending transactional emails. Use when you need to view verified sender addresses configured in your ClickSend account." }, { "slug": "CLICKSEND_CREATE_EMAIL_TEMPLATES", "name": "Create Email Template from Master", "description": "Tool to create a new email template from an existing master template. Use when you need to create a custom email template based on a predefined master template." }, { "slug": "CLICKSEND_CREATE_FAX_RECEIPTS", "name": "Add Fax Delivery Receipt Webhook", "description": "Tool to add a test fax delivery receipt webhook URL in ClickSend. Use when you need to configure a webhook URL to receive fax delivery receipts or set it to 'poll' for manual retrieval. When successful, ClickSend sends a test receipt to verify the webhook configuration." }, { "slug": "CLICKSEND_CREATE_LISTS", "name": "Create Contact List", "description": "Tool to create a new contact list in your ClickSend account. Use when you need to organize contacts into separate lists for targeted messaging campaigns. Note: API allows up to 2,000 contact lists per account." }, { "slug": "CLICKSEND_CREATE_LISTS_CONTACTS", "name": "Create Contact in List", "description": "Tool to create a new contact in a specific contact list in your ClickSend account. Use when you need to add a contact to a list. At least one of phone_number, email, or fax_number must be provided." }, { "slug": "CLICKSEND_CREATE_MMS_SEND", "name": "Send MMS Messages", "description": "Tool to send MMS messages with media attachments to recipients. Use when you need to send multimedia messages with images or media files to one or more phone numbers." }, { "slug": "CLICKSEND_CREATE_POST_DIRECT_MAIL_CAMPAIGNS_SEND", "name": "Send Direct Mail Campaign", "description": "Tool to create and send a direct mail campaign to specified locations. Use when you need to send physical mail pieces to targeted geographic areas. The campaign calculates pricing based on size, quantity, and target locations." }, { "slug": "CLICKSEND_CREATE_POST_LETTERS_DETECT_ADDRESS", "name": "Detect Address from PDF or String", "description": "Tool to detect and convert addresses to standard format from PDF or address string. Use when you need to parse a PDF document or address string to extract structured address information. The PDF should have the recipient's name and address at the top." }, { "slug": "CLICKSEND_CREATE_POST_LETTERS_SEND", "name": "Send Post Letter", "description": "Tool to send physical letters through ClickSend's postal service. Use when you need to send a PDF document as a physical letter to one or more recipients. For docx/doc files, convert them first using /uploads?convert=post endpoint." }, { "slug": "CLICKSEND_CREATE_POST_RETURN_ADDRESSES", "name": "Create Post Return Address", "description": "Tool to create a new post return address for ClickSend postal services. Use when you need to add a return address for sending letters or postcards through ClickSend." }, { "slug": "CLICKSEND_CREATE_POST_RETURN_ADDRESSES3", "name": "Get All Post Return Addresses", "description": "Tool to retrieve a list of all post return addresses from ClickSend account with pagination. Use when you need to view all configured return addresses for postal mail services." }, { "slug": "CLICKSEND_CREATE_SMS_CAMPAIGNS_SEND", "name": "Create and Send SMS Campaign", "description": "Tool to create and send an SMS campaign to a contact list. Use when you need to send bulk SMS messages to up to 20,000 recipients per call. Marketing messages must include opt-out mechanism." }, { "slug": "CLICKSEND_CREATE_SMS_EMAIL_SMS2", "name": "Create Email-to-SMS Allowed Address", "description": "Tool to create an allowed email address for email-to-SMS conversion. Use when you need to authorize a specific email address to send SMS messages through ClickSend's email-to-SMS gateway." }, { "slug": "CLICKSEND_CREATE_SMS_EMAIL_SMS3", "name": "Get SMS Email-to-SMS Allowed Address", "description": "Tool to retrieve a specific allowed email address for SMS email-to-SMS by its ID. Use when you need to view detailed information about a specific allowed email address configured for email-to-SMS functionality." }, { "slug": "CLICKSEND_CREATE_SMS_EMAIL_SMS4", "name": "Update Email-to-SMS Allowed Address", "description": "Tool to update a specific allowed email address for email-to-SMS. Use when you need to modify an existing email address configuration including sender number, voice settings, or language preferences." }, { "slug": "CLICKSEND_CREATE_SMS_EMAIL_SMS5", "name": "Delete SMS Email-to-SMS Allowed Address", "description": "Tool to delete a specific allowed email address from SMS email-to-SMS settings. Use when you need to remove an email address from your allowed email addresses list for email-to-SMS functionality." }, { "slug": "CLICKSEND_CREATE_SMS_EMAIL_SMS_STRIPPED_STRINGS", "name": "Create Email to SMS Stripped String Rule", "description": "Tool to create an email to SMS stripped string rule. Use when you need to automatically remove specific text (like email signatures) from email-to-SMS messages." }, { "slug": "CLICKSEND_CREATE_SMS_INBOUND", "name": "Create Test Inbound SMS", "description": "Creates a test inbound SMS message to verify webhook configuration in ClickSend. This generates a simulated inbound SMS that will be sent to your configured webhook URL, allowing you to test that your webhook is correctly receiving and processing inbound SMS messages. Use this to validate your webhook setup before going live with real SMS traffic." }, { "slug": "CLICKSEND_CREATE_SMS_RECEIPTS", "name": "Create Test SMS Delivery Receipt", "description": "Tool to create a test SMS delivery receipt and configure the webhook URL in ClickSend. This sends a test delivery receipt to your webhook URL to verify webhook configuration is working correctly. Use when you need to test webhook integration for SMS delivery receipts or set to 'poll' for manual retrieval." }, { "slug": "CLICKSEND_CREATE_SMS_SEND", "name": "Send SMS Messages", "description": "Tool to send one or more SMS messages via ClickSend. Use when you need to send SMS messages to recipients. Supports up to 1000 messages per API call and provides detailed status for each message." }, { "slug": "CLICKSEND_CREATE_SMS_TEMPLATES", "name": "Create SMS Template", "description": "Tool to create a new SMS template for reuse in campaigns. Use when you need to save an SMS message as a reusable template." }, { "slug": "CLICKSEND_CREATE_SUBACCOUNTS", "name": "Create Subaccount", "description": "Tool to create a new subaccount in ClickSend with access permissions and credentials. Use when you need to set up a new subaccount for segregating services or users." }, { "slug": "CLICKSEND_DELETE_AUTOMATIONS_SMS_INBOUND", "name": "Delete Inbound SMS Automation", "description": "Tool to delete an inbound SMS automation rule. Use when you need to remove an existing inbound SMS automation by its rule ID." }, { "slug": "CLICKSEND_DELETE_LISTS", "name": "Delete Contact List", "description": "Tool to delete a specific contact list from your ClickSend account. Use when you need to remove a contact list permanently." }, { "slug": "CLICKSEND_DELETE_LISTS_CONTACTS", "name": "Delete Contact from List", "description": "Tool to delete a specific contact from a contact list in your ClickSend account. Use when you need to remove a contact from a specific list permanently." }, { "slug": "CLICKSEND_DELETE_LISTS_REMOVE_OPTED_OUT_CONTACTS", "name": "Remove Opted Out Contacts from List", "description": "Tool to remove all opted out contacts from a contact list using an opt out list reference. Use when you need to clean up a list by removing contacts that have opted out." }, { "slug": "CLICKSEND_DELETE_SMS_CANCEL", "name": "Cancel Scheduled SMS", "description": "Tool to cancel a scheduled SMS message by updating its status to cancelled. Use when you need to prevent a scheduled SMS from being sent." }, { "slug": "CLICKSEND_DELETE_SUBACCOUNTS", "name": "Delete Subaccount", "description": "Tool to delete a specific subaccount from the system. Use when you need to remove a subaccount from your account." }, { "slug": "CLICKSEND_EMAIL_CAMPAIGN_GET", "name": "Get Email Campaign", "description": "Tool to retrieve details of a specific email campaign by its ID. Use when you need to view campaign configuration, content, and delivery statistics including sends, opens, clicks, and bounces." }, { "slug": "CLICKSEND_EMAIL_DELIVERY_RECEIPT_AUTOMATION_DELETE", "name": "Delete Email Delivery Receipt Automation", "description": "Tool to delete an email delivery receipt automation rule. Use when you need to remove an existing email receipt automation by its rule ID." }, { "slug": "CLICKSEND_EMAIL_DELIVERY_RECEIPT_AUTOMATION_GET", "name": "Get Email Delivery Receipt Automation", "description": "Retrieves the configuration details of a specific email delivery receipt automation rule by its ID. Use this action when you need to: - View the current configuration of a specific automation rule - Check whether a rule is enabled or disabled - Verify the webhook URL or action settings for a rule - Get details before updating or deleting a rule To get the receipt_rule_id, you can first list all rules using the 'Get All Email Delivery Receipt Automations' action, or use the ID returned when creating a new rule." }, { "slug": "CLICKSEND_EMAIL_TEMPLATE_DELETE", "name": "Delete Email Template", "description": "Tool to delete an email template by its template ID. Use when you need to remove an existing email template from your account." }, { "slug": "CLICKSEND_EMAIL_TEMPLATE_GET", "name": "Get Email Template", "description": "Tool to retrieve a specific user email template by its template ID. Use when you need to view details of a specific email template including its HTML content and metadata." }, { "slug": "CLICKSEND_EMAIL_TEMPLATE_PUT", "name": "Update Email Template", "description": "Tool to update an existing email template in ClickSend. Use when you need to modify the name or HTML body content of an email template." }, { "slug": "CLICKSEND_EXPORT_POST_LETTERS_HISTORY_EXPORT", "name": "Export Post Letters History", "description": "Tool to export post letter history to a downloadable CSV file. Use when you need to download historical data of post letters for analysis or record-keeping." }, { "slug": "CLICKSEND_FAX_DELIVERY_RECEIPT_AUTOMATION_DELETE", "name": "Delete Fax Delivery Receipt Automation", "description": "Tool to delete a fax delivery receipt automation rule. Use when you need to remove an existing fax delivery receipt automation by its rule ID." }, { "slug": "CLICKSEND_FAX_DELIVERY_RECEIPT_AUTOMATION_GET", "name": "Get Fax Delivery Receipt Automation", "description": "Tool to retrieve a specific fax delivery receipt automation rule by its ID. Use when you need to view the configuration details of a fax receipt automation rule." }, { "slug": "CLICKSEND_FAX_RECEIPTS_BY_MESSAGE_ID_GET", "name": "Get Fax Receipt by Message ID", "description": "Tool to retrieve a single fax delivery receipt using the message identifier. Use when you need to check the status, delivery details, or cost of a specific fax transmission." }, { "slug": "CLICKSEND_FAX_RECEIPTS_READ_PUT", "name": "Mark Fax Receipts as Read", "description": "Tool to mark fax delivery receipts as read in ClickSend. Use when you need to mark all receipts or receipts before a specific date as read. Optionally provide a Unix timestamp to mark only receipts created before that time." }, { "slug": "CLICKSEND_GET_ACCOUNT", "name": "Get Account Information", "description": "Tool to retrieve authenticated user's account information. Use when you need to view account details such as balance, user information, settings, and billing details." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_EMAIL_RECEIPTS", "name": "Get All Email Delivery Receipt Automations", "description": "Tool to retrieve all email delivery receipt automation rules configured in your ClickSend account. Use when you need to view or list all email receipt automation configurations. Supports pagination and filtering." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_FAX_INBOUND", "name": "Get All Inbound Fax Automations", "description": "Tool to retrieve all inbound fax automation rules configured in your ClickSend account. Use when you need to view or list all inbound fax automation configurations. Supports pagination." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_FAX_RECEIPTS", "name": "Get All Fax Delivery Receipt Automations", "description": "Tool to retrieve all fax delivery receipt automation rules configured in your ClickSend account. Use when you need to view or list all fax receipt automation configurations. Supports pagination and filtering." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_SMS_INBOUND", "name": "Get All Inbound SMS Automations", "description": "Tool to retrieve all inbound SMS automation rules configured in your ClickSend account. Use when you need to view or list all inbound SMS automation configurations. Supports pagination and filtering." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_SMS_RECEIPTS", "name": "Get All SMS Delivery Receipt Automations", "description": "Tool to retrieve all SMS delivery receipt automation rules configured in your ClickSend account. Use when you need to view or list all SMS receipt automation configurations. Supports pagination and filtering." }, { "slug": "CLICKSEND_GET_AUTOMATIONS_VOICE_RECEIPTS", "name": "Get All Voice Delivery Receipt Automations", "description": "Tool to retrieve all voice delivery receipt automation rules configured in your ClickSend account. Use when you need to view or list all voice receipt automation configurations. Supports pagination and filtering." }, { "slug": "CLICKSEND_GET_CONTACT_SUGGESTIONS", "name": "Get Contact Suggestions", "description": "Retrieves contact suggestions from your ClickSend account based on recent messaging activity. Returns contacts from your lists that you may want to message, with full contact details including phone, email, address, and custom fields. Useful for finding frequently contacted recipients or planning messaging campaigns. Supports pagination via page and limit parameters." }, { "slug": "CLICKSEND_GET_COUNTRIES", "name": "Get All Countries", "description": "Tool to retrieve all available country codes that ClickSend supports. Use when you need to get a list of countries for international messaging services." }, { "slug": "CLICKSEND_GET_DELIVERY_ISSUES", "name": "Get All Delivery Issues", "description": "Tool to retrieve all delivery issues from your ClickSend account. Use when you need to view or investigate problems with message delivery. Supports pagination for handling large result sets." }, { "slug": "CLICKSEND_GET_EMAIL_MASTER_TEMPLATES", "name": "Get All Master Email Templates", "description": "Tool to retrieve all master email templates. Use when you need to view pre-designed email templates that can be used for email communications. Supports pagination." }, { "slug": "CLICKSEND_GET_EMAIL_MASTER_TEMPLATES_CATEGORIES", "name": "Get All Master Email Template Categories", "description": "Tool to retrieve all master email template categories. Use when you need to view available categories of pre-designed email templates. Supports pagination." }, { "slug": "CLICKSEND_GET_EMAIL_TEMPLATES", "name": "Get All User Email Templates", "description": "Tool to retrieve all user email templates. Use when you need to view custom email templates created by the user. Supports pagination." }, { "slug": "CLICKSEND_GET_FAX_RECEIPTS", "name": "Get Fax Delivery Receipts", "description": "Tool to retrieve fax delivery receipts from your ClickSend account. Use when you need to view fax transmission details including delivery status, pricing, and recipient information. Supports pagination." }, { "slug": "CLICKSEND_GET_LISTS", "name": "Get All Contact Lists", "description": "Tool to retrieve all contact lists from ClickSend account with pagination support. Use when you need to view available contact lists for managing contacts and messaging campaigns." }, { "slug": "CLICKSEND_GET_LISTS2", "name": "Get Specific Contact List", "description": "Tool to retrieve a specific contact list by its list ID. Use when you need to view details of a specific contact list including its name, email ID, and contact count." }, { "slug": "CLICKSEND_GET_LISTS_CONTACTS", "name": "Get All Contacts in List", "description": "Tool to retrieve all contacts from a specific contact list in your ClickSend account with pagination and filtering support. Use when you need to view or process contacts within a specific list." }, { "slug": "CLICKSEND_GET_LISTS_CONTACTS2", "name": "Get Specific Contact", "description": "Tool to retrieve a specific contact from a contact list in your ClickSend account. Use when you need to view detailed information about a particular contact within a specific list." }, { "slug": "CLICKSEND_GET_LISTS_EXPORT", "name": "Export Contacts List", "description": "Tool to export contacts from a specific list to a CSV file. Use when you need to download all contacts from a list for backup, analysis, or migration purposes." }, { "slug": "CLICKSEND_GET_LISTS_IMPORT", "name": "Import Contacts to List", "description": "Tool to import contacts to a contact list from a publicly accessible file URL. Use when you need to bulk import contacts from a CSV or Excel file into a specific list. Note that the import process may be asynchronous." }, { "slug": "CLICKSEND_GET_LISTS_IMPORT_CSV_PREVIEW", "name": "Preview CSV Import for Contact List", "description": "Tool to preview the first row of a CSV import file for a contact list in ClickSend. Use when you need to verify CSV structure and field mapping before importing contacts to a list." }, { "slug": "CLICKSEND_GET_LISTS_IMPORT_FIELDS", "name": "Get List Import Fields", "description": "Tool to retrieve acceptable import fields for a contact list in ClickSend. Use when you need to view which fields are available for importing contacts into a specific list." }, { "slug": "CLICKSEND_GET_MMS_HISTORY", "name": "Export MMS History", "description": "Tool to export MMS message history with filtering, ordering, and pagination. Use when you need to retrieve historical MMS messages with custom sorting options." }, { "slug": "CLICKSEND_GET_MMS_RECEIPTS", "name": "Get MMS Delivery Receipts", "description": "Tool to retrieve all MMS delivery receipts from your ClickSend account. Use when you need to view MMS delivery status, pricing, and recipient information. Supports pagination." }, { "slug": "CLICKSEND_GET_NUMBERS", "name": "Get Dedicated Numbers", "description": "Tool to retrieve all available dedicated numbers associated with your ClickSend account. Use when you need to view dedicated numbers that can be used as sender IDs for messaging services." }, { "slug": "CLICKSEND_GET_NUMBERS_SEARCH", "name": "Search Dedicated Numbers by Country", "description": "Tool to search for available dedicated numbers by country code. Use when you need to find purchasable phone numbers for messaging services in a specific country." }, { "slug": "CLICKSEND_GET_POST_DIRECT_MAIL_LOCATIONS_SEARCH", "name": "Search Direct Mail Locations", "description": "Tool to search for direct mail locations in a specific country. Use when you need to find available locations or addresses for direct mail services." }, { "slug": "CLICKSEND_GET_POST_LETTERS_HISTORY", "name": "Get Post Letters History", "description": "Retrieves the history of all post letters sent through ClickSend with pagination support. Use this tool to view past post letters, check their status (e.g., WaitApproval, Scheduled, delivered), review recipient details, pricing information, and delivery timestamps. Returns comprehensive details including message IDs, addresses, file URLs, and return address information for each letter." }, { "slug": "CLICKSEND_GET_PRICING", "name": "Get Country Pricing", "description": "Tool to retrieve pricing information for a specific country. Use when you need to check rates for SMS, MMS, and voice services in a particular country and currency." }, { "slug": "CLICKSEND_GET_REFERRAL_ACCOUNTS", "name": "Get Referral Accounts", "description": "Tool to retrieve a list of referral accounts with pagination support. Use when you need to view referral accounts including user information, balance, and commission details." }, { "slug": "CLICKSEND_GET_RESELLER", "name": "Get Reseller Settings", "description": "Tool to retrieve reseller settings and account information. Use when you need to view the authenticated reseller's account details, settings, and configuration. Note: The reseller dashboard and API are only available to customers approved as resellers before January 1st, 2024." }, { "slug": "CLICKSEND_GET_RESELLER_ACCOUNTS", "name": "Get Reseller Accounts", "description": "Tool to retrieve a list of reseller accounts with pagination support. Use when you need to view reseller accounts including user information, balance, settings, and permissions. Note: The reseller dashboard and API are only available to customers approved as resellers before January 1st, 2024." }, { "slug": "CLICKSEND_GET_SMS_CAMPAIGNS", "name": "Get SMS Campaign", "description": "Tool to retrieve details of a specific SMS campaign by its ID. Use when you need to view campaign configuration, message content, scheduling details, and current status." }, { "slug": "CLICKSEND_GET_SMS_CAMPAIGNS3", "name": "Get SMS Campaigns List", "description": "Tool to retrieve all SMS campaigns with pagination and statistics breakdown. Use when you need to view campaign statistics and performance data for management or reporting purposes." }, { "slug": "CLICKSEND_GET_SMS_EMAIL_SMS_STRIPPED_STRINGS", "name": "Get Email to SMS Stripped String Rules List", "description": "Tool to retrieve the list of email to sms stripped string rules with pagination support. Use when you need to view all stripped string rules that automatically remove specific text from email-to-SMS messages." }, { "slug": "CLICKSEND_GET_SMS_HISTORY", "name": "Get SMS History", "description": "Tool to retrieve sent SMS message history with filtering and pagination. Use when you need to view previously sent SMS messages or check delivery status." }, { "slug": "CLICKSEND_GET_SMS_INBOUND", "name": "Get Inbound SMS Messages", "description": "Retrieves inbound SMS messages received by your ClickSend account. Use this tool when you need to: - View messages sent TO your ClickSend numbers FROM customers/recipients - Search for specific messages by sender, recipient, or content - Monitor incoming SMS replies and interactions Important: To receive inbound messages via API polling, you must first configure an inbound rule in the ClickSend Dashboard with the Action set to 'POLL'. By default, only unread messages are returned." }, { "slug": "CLICKSEND_GET_SMS_RECEIPTS", "name": "Get SMS Delivery Receipts", "description": "Tool to retrieve SMS delivery receipts from your ClickSend account. Use when you need to poll and view SMS delivery status including timestamps, status codes, and error details. Requires a delivery report rule with Action set to POLL in the Dashboard." }, { "slug": "CLICKSEND_GET_SMS_TEMPLATES", "name": "Get All SMS Templates", "description": "Tool to retrieve all SMS templates from ClickSend account with pagination and filtering support. Use when you need to view available SMS templates for messaging campaigns." }, { "slug": "CLICKSEND_GET_STATISTICS_SMS", "name": "Get SMS Statistics", "description": "Tool to retrieve SMS messaging statistics for your ClickSend account. Use when you need to view usage metrics, pricing data, and date-based breakdowns of SMS message activity including outbound, inbound, and bounced messages." }, { "slug": "CLICKSEND_GET_STATISTICS_VOICE", "name": "Get Voice Statistics", "description": "Tool to retrieve voice messaging statistics for your ClickSend account. Use when you need to view usage metrics, pricing data, and date-based breakdowns of voice message activity." }, { "slug": "CLICKSEND_GET_SUBACCOUNTS", "name": "Get All Subaccounts", "description": "Tool to retrieve all subaccounts from ClickSend account with pagination support. Use when you need to view available subaccounts and their permissions." }, { "slug": "CLICKSEND_GET_SUBACCOUNTS2", "name": "Get Specific Subaccount", "description": "Tool to retrieve detailed information about a specific subaccount by its ID. Use when you need to view credentials, permissions, and contact details for a particular subaccount." }, { "slug": "CLICKSEND_GET_TIMEZONES", "name": "Get Supported Timezones", "description": "Tool to retrieve supported list of timezones. Use when you need to get available timezones for scheduling or configuration purposes." }, { "slug": "CLICKSEND_GET_VOICE_LANG", "name": "Get Voice Languages", "description": "Tool to retrieve all available voice languages for text-to-speech. Use when you need to get supported languages and voice options for voice messaging." }, { "slug": "CLICKSEND_LIST_COUNTRIES_GET", "name": "List Countries", "description": "Tool to retrieve the list of countries with IDs for global sending. Use when you need to select countries for international messaging operations." }, { "slug": "CLICKSEND_LISTS_COPY_CONTACT_PUT", "name": "Copy Contact to Another List", "description": "Tool to copy a contact from one list to another list. Use when you need to duplicate a contact from a source list to a destination list while keeping the original contact in the source list." }, { "slug": "CLICKSEND_LISTS_TRANSFER_CONTACT_PUT", "name": "Transfer Contact Between Lists", "description": "Tool to transfer a contact from one list to another in your ClickSend account. Use when you need to move a contact between lists without deleting and recreating it." }, { "slug": "CLICKSEND_MASTER_EMAIL_TEMPLATE_CATEGORY_GET", "name": "Get Master Email Template Category", "description": "Tool to retrieve a specific master email template category by its ID. Use when you need to view details about a category of pre-designed email templates." }, { "slug": "CLICKSEND_MASTER_EMAIL_TEMPLATE_GET", "name": "Get Master Email Template", "description": "Retrieve a specific master email template by its ID. Returns template metadata including name, creation date, and thumbnail URLs. Use this to view details of pre-designed master email templates available in ClickSend. Template IDs can be obtained from the 'Get All Master Email Templates' action." }, { "slug": "CLICKSEND_MASTER_EMAIL_TEMPLATES_IN_CATEGORY_GET", "name": "Get Master Email Templates in Category", "description": "Tool to retrieve all master email templates within a specific category. Use when you need to browse pre-designed email templates from ClickSend's template library for a particular category." }, { "slug": "CLICKSEND_MMS_CAMPAIGNS_BY_MMS_CAMPAIGN_ID_PUT", "name": "Update MMS Campaign", "description": "Tool to update an existing MMS campaign with new parameters. Use when you need to modify campaign details such as name, sender, message body, media file, subject, or reschedule send time." }, { "slug": "CLICKSEND_MMS_CAMPAIGNS_CANCEL_BY_MMS_CAMPAIGN_ID_PUT", "name": "Cancel MMS Campaign", "description": "Tool to cancel a scheduled MMS campaign in ClickSend. Use when you need to stop an MMS campaign from being sent. Only scheduled campaigns can be cancelled." }, { "slug": "CLICKSEND_MMS_CAMPAIGNS_GET", "name": "Get MMS Campaigns", "description": "Tool to retrieve all MMS campaigns with pagination and filtering support. Use when you need to view existing MMS campaigns for management or reporting purposes." }, { "slug": "CLICKSEND_MMS_CAMPAIGNS_PRICE_POST", "name": "Calculate MMS Campaign Price", "description": "Tool to calculate the price for an MMS campaign before sending. Use when you need to estimate costs for an MMS campaign to a contact list." }, { "slug": "CLICKSEND_MMS_CAMPAIGNS_SEND_POST", "name": "Send MMS Campaign", "description": "Tool to create and send an MMS campaign to a contact list with multimedia content. Use when you need to send MMS messages to multiple recipients with images or videos. The campaign sends immediately unless scheduled for future delivery." }, { "slug": "CLICKSEND_MMS_HISTORY_EXPORT_GET", "name": "Export MMS History", "description": "Tool to export MMS message history to a CSV file. Supports filtering by query string, date range, ordering, and limiting results. Use when you need to download historical MMS messages for analysis or archival purposes." }, { "slug": "CLICKSEND_MMS_PRICE_POST", "name": "Calculate MMS Price", "description": "Tool to calculate the price for sending MMS messages without actually sending them. Use when you need to estimate the cost of MMS messages before sending." }, { "slug": "CLICKSEND_MMS_RECEIPTS_READ_PUT", "name": "Mark MMS Receipts as Read", "description": "Tool to mark MMS delivery receipts as read in ClickSend. Use when you need to mark all receipts or receipts before a specific date as read. Optionally provide a Unix timestamp to mark only receipts created before that time." }, { "slug": "CLICKSEND_POST_NUMBERS_BUY", "name": "Buy Dedicated Number", "description": "Tool to purchase a dedicated phone number from ClickSend. Use when you need to buy a specific number for SMS messaging and other communication services." }, { "slug": "CLICKSEND_POST_RETURN_ADDRESSES_BY_RETURN_ADDRESS_ID_DELETE", "name": "Delete Post Return Address", "description": "Tool to delete a specific post return address from the system. Use when you need to remove a return address from your postal mailings." }, { "slug": "CLICKSEND_POST_RETURN_ADDRESSES_BY_RETURN_ADDRESS_ID_GET", "name": "Get Post Return Address", "description": "Tool to retrieve a specific post return address by its unique identifier. Use when you need to view details of a return address for postal services." }, { "slug": "CLICKSEND_POST_RETURN_ADDRESSES_BY_RETURN_ADDRESS_ID_PUT", "name": "Update Post Return Address", "description": "Tool to update an existing post return address in ClickSend. Use when you need to modify the details of a return address for postal mail services." }, { "slug": "CLICKSEND_POST_UPLOADS", "name": "Upload File", "description": "Tool to upload and optionally convert files for use with ClickSend messaging services. Use when you need to upload files for fax, MMS, postcards, or post services. All uploaded files expire 10 minutes after upload." }, { "slug": "CLICKSEND_PUT_FORGOT_PASSWORD", "name": "Forgot Password", "description": "Initiates password recovery for a ClickSend account by sending a password reset link via email. Use this tool when a user has forgotten their password and needs to reset it. The API will send an email to the account's registered email address with a link/token to reset the password. Note: Accounts configured for OAuth/Google authentication cannot use this endpoint and will return a 400 status with an explanatory message." }, { "slug": "CLICKSEND_PUT_FORGOT_USERNAME", "name": "Forgot Username", "description": "Tool to retrieve forgotten username by providing registered email or phone number. Use when a user needs to recover their account username via notification." }, { "slug": "CLICKSEND_RECHARGE_PACKAGES_GET", "name": "Get Recharge Packages", "description": "Tool to retrieve all available recharge packages from ClickSend. Use when you need to view pricing and quantity information for SMS, voice, fax, email, and postal mail services." }, { "slug": "CLICKSEND_RECHARGE_PURCHASE_BY_PACKAGE_ID_PUT", "name": "Purchase Recharge Package", "description": "Purchase a recharge package by package ID to add credits to a ClickSend account. Before using this action, call 'Get Recharge Packages' to retrieve available package IDs and their pricing. This action requires a valid payment method configured on the account. In test/sandbox environments, this may return a payment gateway error if no payment method is configured. Common error responses: - 404 \"Customer token not found\": No payment method configured - 404 \"Package not found\": Invalid package ID - 401 \"Authorization failed\": Authentication issue" }, { "slug": "CLICKSEND_RECHARGE_TRANSACTIONS_GET", "name": "Get All Recharge Transactions", "description": "Tool to retrieve all recharge transactions from ClickSend account with pagination support. Use when you need to view transaction history including amounts, currencies, and dates." }, { "slug": "CLICKSEND_RECHARGE_TXNS_BY_TXN_ID_GET", "name": "Get Recharge Transaction by ID", "description": "Tool to retrieve details of a specific recharge transaction by transaction ID. Use when you need to view transaction information such as amount, currency, invoice number, and date." }, { "slug": "CLICKSEND_SEARCH_CONTACTS_LISTS_GET", "name": "Search Contact Lists and Contacts", "description": "Search for contact lists and individual contacts in your ClickSend account by name with pagination support. Returns both contact lists (type='list') and individual contacts (type='contact') that match the search query. Search is case-insensitive and matches partial names. Use when you need to find specific contact lists or contacts by name." }, { "slug": "CLICKSEND_SEND_VERIFICATION_TOKEN_GET", "name": "Send Email Verification Token", "description": "Tool to send a verification email containing an activation token to a registered email address. Use when you need to verify an email address before it can be used to send email campaigns through ClickSend." }, { "slug": "CLICKSEND_SMS_CAMPAIGNS_CANCEL_BY_SMS_CAMPAIGN_ID_PUT", "name": "Cancel SMS Campaign", "description": "Tool to cancel a scheduled SMS campaign in ClickSend. Use when you need to stop an SMS campaign from being sent. Only scheduled campaigns can be cancelled." }, { "slug": "CLICKSEND_SMS_CANCEL_ALL_PUT", "name": "Cancel All Scheduled SMS", "description": "Tool to cancel all scheduled SMS messages in ClickSend. Use this when you need to cancel pending scheduled SMS messages in bulk. Only affects messages that are scheduled for future delivery and have not yet been sent. Key behaviors: - Without custom_string: Cancels ALL scheduled SMS messages in the account - With custom_string: Cancels only scheduled messages matching that specific custom_string identifier - Returns the count of messages that were successfully cancelled - Does not affect messages that have already been sent or are currently being sent - This operation is idempotent - calling it multiple times has the same effect" }, { "slug": "CLICKSEND_SMS_DELIVERY_RECEIPT_AUTOMATION_DELETE", "name": "Delete SMS Delivery Receipt Automation", "description": "Tool to delete an SMS delivery receipt automation rule. Use when you need to remove an existing delivery receipt automation by its rule ID." }, { "slug": "CLICKSEND_SMS_DELIVERY_RECEIPT_AUTOMATION_GET", "name": "Get SMS Delivery Receipt Automation", "description": "Tool to retrieve a specific SMS delivery receipt automation rule by its ID. Use when you need to view the configuration details of an SMS receipt automation rule." }, { "slug": "CLICKSEND_SMS_EMAIL_SMS_STRIPPED_STRING_DELETE", "name": "Delete Email to SMS Stripped String Rule", "description": "Tool to delete an email to SMS stripped string rule from the account. Use when you need to remove an existing stripped string rule by its rule ID." }, { "slug": "CLICKSEND_SMS_EMAIL_SMS_STRIPPED_STRING_GET", "name": "Get Email to SMS Stripped String Rule", "description": "Tool to retrieve an email to SMS stripped string rule by its ID. Use when you need to view the details of a specific stripped string rule." }, { "slug": "CLICKSEND_SMS_EMAIL_SMS_STRIPPED_STRING_PUT", "name": "Update Email to SMS Stripped String Rule", "description": "Tool to update an email to SMS stripped string rule. Use when you need to modify the text pattern that is stripped from emails before converting to SMS." }, { "slug": "CLICKSEND_SMS_HISTORY_EXPORT_GET", "name": "Export SMS History", "description": "Tool to export all SMS message history to a CSV file. Downloads a complete export of your SMS history. Use when you need to download all historical SMS messages for analysis, reporting, backup, or archival purposes. Note: This exports all SMS history without filtering - use 'Get SMS History' action first if you need to filter by date, status, or other criteria before deciding to export." }, { "slug": "CLICKSEND_SMS_INBOUND_AUTOMATION_GET", "name": "Get Inbound SMS Automation", "description": "Tool to retrieve a specific inbound SMS automation rule by its ID. Use when you need to view the configuration details of an inbound SMS automation rule." }, { "slug": "CLICKSEND_SMS_INBOUND_AUTOMATION_PUT", "name": "Update Inbound SMS Automation", "description": "Tool to update an existing inbound SMS automation rule in ClickSend. Use when you need to modify automated actions for inbound SMS messages." }, { "slug": "CLICKSEND_SMS_INBOUND_READ_BY_MESSAGE_ID_PUT", "name": "Mark Inbound SMS as Read by Message ID", "description": "Tool to mark a specific inbound SMS message as read in ClickSend. Use when you need to mark an individual inbound SMS as processed. Once marked as read, the message won't appear in the View Inbound SMS endpoint but can still be viewed using the View Specific Inbound SMS endpoint." }, { "slug": "CLICKSEND_SMS_INBOUND_READ_PUT", "name": "Mark Inbound SMS as Read", "description": "Mark inbound SMS messages as read in ClickSend. Use this action to mark all inbound SMS messages as read, or only those received before a specific timestamp. This is commonly used after polling for new messages with GET /sms/inbound to prevent re-reading the same messages. Once marked as read, messages will no longer appear in the default View Inbound SMS (GET /sms/inbound) response, but remain accessible via the View Specific Inbound SMS by Message ID endpoint. The operation is idempotent - marking already-read messages has no negative effect." }, { "slug": "CLICKSEND_SMS_PRICE_POST", "name": "Calculate SMS Price", "description": "Tool to calculate the price for sending SMS messages without actually sending them. Use when you need to estimate the cost of SMS messages before sending." }, { "slug": "CLICKSEND_SMS_RECEIPTS_BY_MESSAGE_ID_GET", "name": "Get SMS Receipt by Message ID", "description": "Tool to retrieve a single SMS delivery receipt using the message identifier. Use when you need to check the status, delivery details, or cost of a specific SMS transmission." }, { "slug": "CLICKSEND_SMS_RECEIPTS_READ_PUT", "name": "Mark SMS Delivery Receipts as Read", "description": "Tool to mark SMS delivery receipts as read in ClickSend. Use when you need to mark receipts as processed so they no longer appear in the View SMS Receipts endpoint. Optionally specify a date threshold to mark only receipts received before a certain time." }, { "slug": "CLICKSEND_SMS_TEMPLATES_BY_TEMPLATE_ID_DELETE", "name": "Delete SMS Template", "description": "Tool to delete an SMS template by its template ID. Use when you need to remove an existing SMS template from your account." }, { "slug": "CLICKSEND_SMS_TEMPLATES_BY_TEMPLATE_ID_PUT", "name": "Update SMS Template", "description": "Tool to update an existing SMS template in ClickSend. Use when you need to modify the name or body content of an SMS template." }, { "slug": "CLICKSEND_SPECIFIC_ALLOWED_EMAIL_ADDRESS_DELETE", "name": "Delete Specific Allowed Email Address", "description": "Tool to delete a specific allowed email address from the account. Use when you need to remove an email address from your allowed email addresses list." }, { "slug": "CLICKSEND_SPECIFIC_ALLOWED_EMAIL_ADDRESS_GET", "name": "Get Specific Allowed Email Address", "description": "Tool to retrieve a specific allowed email address by its ID. Use when you need to view detailed information about a specific email address in your account." }, { "slug": "CLICKSEND_SUBACCOUNTS_REGEN_API_KEY_BY_SUBACCOUNT_ID_PUT", "name": "Regenerate Subaccount API Key", "description": "Tool to regenerate API key for a specific subaccount. Use when you need to create a new API key for security purposes or when the current key has been compromised." }, { "slug": "CLICKSEND_UPDATE_ACCOUNT", "name": "Update Account Information", "description": "Tool to update authenticated user's account information. Use when you need to modify account details such as first name, last name, phone number, or country." }, { "slug": "CLICKSEND_UPDATE_AUTOMATIONS_EMAIL_RECEIPTS", "name": "Update Email Delivery Receipt Automation", "description": "Tool to update an email delivery receipt automation rule in ClickSend. Use when you need to modify an existing email receipt automation rule by its rule ID." }, { "slug": "CLICKSEND_UPDATE_AUTOMATIONS_FAX_INBOUND", "name": "Update Inbound Fax Automation", "description": "Tool to update an inbound fax automation rule in ClickSend. Use when you need to modify an existing fax inbound automation rule by its rule ID." }, { "slug": "CLICKSEND_UPDATE_AUTOMATIONS_FAX_RECEIPTS", "name": "Update Fax Delivery Receipt Automation", "description": "Tool to update a fax delivery receipt automation rule in ClickSend. Use when you need to modify an existing fax receipt automation rule by its rule ID." }, { "slug": "CLICKSEND_UPDATE_AUTOMATIONS_SMS_RECEIPTS", "name": "Update SMS Delivery Receipt Automation", "description": "Tool to update an SMS delivery receipt automation rule in ClickSend. Use when you need to modify an existing SMS receipt automation rule by its rule ID." }, { "slug": "CLICKSEND_UPDATE_LISTS", "name": "Update Contact List", "description": "Tool to update the name of a specific contact list in your ClickSend account. Use when you need to rename an existing contact list." }, { "slug": "CLICKSEND_UPDATE_LISTS_CONTACTS", "name": "Update Contact in List", "description": "Tool to update a specific contact in a contact list in your ClickSend account. Use when you need to modify contact details such as phone number, email, name, address, or custom fields." }, { "slug": "CLICKSEND_UPDATE_RECHARGE_CREDIT_CARD", "name": "Get Recharge Credit Card Info", "description": "Retrieve stored credit card payment information in tokenized/masked form. This tool retrieves the credit card details currently saved for account recharge operations. Returns masked card number (format: XXXX-XXXX-XXXX-0000), expiry date, and cardholder name. ClickSend does not store actual card numbers - only secure tokens. Use this when you need to: - Check what credit card is currently stored for auto-recharge - Verify cardholder details - Confirm card expiration date before recharge operations Returns 404 if no credit card is stored on the account. Note: This is a read-only GET action. To update credit card details, use ClicksendUpdateRechargeCreditCard2 instead." }, { "slug": "CLICKSEND_UPDATE_RESELLER", "name": "Update Reseller Settings", "description": "Tool to update reseller account settings and configuration. Use when you need to modify reseller details such as contact information, billing settings, timezone, or feature settings. Note: The reseller dashboard and API are only available to customers approved as resellers before January 1st, 2024." }, { "slug": "CLICKSEND_UPDATE_SMS_CAMPAIGNS", "name": "Update SMS Campaign", "description": "Update an existing SMS campaign. Modify campaign details including name, message content, contact list, sender ID, or schedule time. IMPORTANT: Only scheduled campaigns (with future send time) can be updated. Once a campaign is sent or queued for immediate sending, it cannot be modified. When updating, always include the 'schedule' parameter with a future timestamp to keep the campaign editable." }, { "slug": "CLICKSEND_UPDATE_SUBACCOUNTS", "name": "Update Subaccount", "description": "Tool to update a specific subaccount's details and permissions in ClickSend. Use when you need to modify subaccount credentials, contact information, or access permissions." }, { "slug": "CLICKSEND_USER_COUNTRIES_AGREE_POST", "name": "Agree to User Countries Rules", "description": "Agrees to the rules and regulations for all previously selected countries in Global Sending. This action confirms acceptance of the regulatory requirements and content restrictions for countries that have been selected via POST /user-countries. After agreeing, the action returns a detailed list of all selected countries including their specific regulatory requirements, registration status, and any additional compliance information needed for sending SMS/MMS to those regions. Use this after selecting countries for international messaging to formally acknowledge compliance with their sending rules. The response includes critical information such as content restrictions (e.g., no gambling, adult content), registration requirements, and links to detailed country-specific guidelines. This is typically part of a workflow: 1) Get available countries (GET /country-list) → 2) Select countries (POST /user-countries) → 3) Agree to rules (this action) → 4) Begin sending messages." }, { "slug": "CLICKSEND_USER_COUNTRIES_GET", "name": "Get User Countries", "description": "Tool to retrieve the list of selected countries for Global Sending. Use when you need to view which countries are currently enabled for international messaging." }, { "slug": "CLICKSEND_USER_COUNTRIES_POST", "name": "Select User Countries", "description": "Tool to select countries for Global SMS/MMS sending. Use when you need to configure which countries are enabled for international messaging. To remove/unselect a country, exclude its ID from the array." }, { "slug": "CLICKSEND_VERIFY_ALLOWED_EMAIL_ADDRESS_GET", "name": "Verify Allowed Email Address", "description": "Verify an email address using its activation token to enable it as a sender address for email campaigns. This action completes the email address verification process after: 1. Creating an allowed email address (via Create Allowed Email Address action) 2. Requesting a verification email (via Send Email Verification Token action) 3. Retrieving the activation token from the email inbox A verified email address is required before it can be used as a sender address for transactional emails and email campaigns through ClickSend." }, { "slug": "CLICKSEND_VERIFY_FORGOT_PASSWORD_VERIFY", "name": "Verify Forgot Password", "description": "Tool to verify forgot password request and reset user password. Use in the second step of password reset flow after receiving the activation token via email." }, { "slug": "CLICKSEND_VOICE_CANCEL_ALL_PUT", "name": "Cancel All Scheduled Voice Messages", "description": "Tool to cancel all scheduled voice messages in ClickSend. Use when you need to cancel all pending scheduled voice messages at once. Only affects scheduled messages that have not yet been sent." }, { "slug": "CLICKSEND_VOICE_DELIVERY_RECEIPT_AUTOMATION_DELETE", "name": "Delete Voice Receipt Automation", "description": "Tool to delete a voice delivery receipt automation rule. Use when you need to remove a specific voice receipt automation rule." }, { "slug": "CLICKSEND_VOICE_DELIVERY_RECEIPT_AUTOMATION_GET", "name": "Get Voice Delivery Receipt Automation", "description": "Tool to retrieve a specific voice delivery receipt automation rule by its ID. Use when you need to view the configuration details of a voice receipt automation rule." }, { "slug": "CLICKSEND_VOICE_DELIVERY_RECEIPT_AUTOMATION_PUT", "name": "Update Voice Delivery Receipt Automation", "description": "Tool to update a voice delivery receipt automation rule in ClickSend. Use when you need to modify the configuration of an existing voice receipt automation rule. Important: This endpoint requires ALL fields (rule_name, match_type, action, action_address, enabled) to be provided in the update request. To update a rule, first retrieve its current values using the GET endpoint, then send the complete updated configuration." }, { "slug": "CLICKSEND_VOICE_HISTORY_EXPORT_GET", "name": "Export Voice History", "description": "Tool to export all voice history to a CSV file. Use when you need to download a complete history of voice messages sent from your ClickSend account. Returns a downloadable file containing voice message records including timestamps, recipients, status, and other details. Note: This action requires existing voice message history; it will fail with a clear message if no voice messages have been sent." }, { "slug": "CLICKSEND_VOICE_RECEIPTS_READ_PUT", "name": "Mark Voice Delivery Receipts as Read", "description": "Tool to mark voice delivery receipts as read in ClickSend. Use when you need to mark all voice receipts or receipts before a specific date as read to prevent them from appearing in subsequent GET requests. Optionally provide a Unix timestamp to mark only receipts received before that time." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "clicksend_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Your ClickSend username. See the ClickSend docs for more information: https://developers.clicksend.com/docs/rest/v3/#authentication", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your ClickSend API key. See the ClickSend docs for more information: https://developers.clicksend.com/docs/rest/v3/#authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clientary", "name": "Clientary", "logo": "https://logos.composio.dev/api/clientary", "description": "A full-suite platform to manage Clients, Invoices, Projects, Proposals, Estimates, Hours, Payments, Contractors and Staff. The perfect solution to win clients and save time.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLIENTARY_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client record in Clientary. Use when you need to add a new client to the system with company details and contact information." }, { "slug": "CLIENTARY_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact within a specified client. Use when you need to add a contact to a client account with name and email as required fields." }, { "slug": "CLIENTARY_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new expense record in Clientary to track expenditures within your account. Use when you need to record expenses, optionally assigning them to specific clients or projects. Requires an amount field." }, { "slug": "CLIENTARY_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create a new invoice in Clientary. Requires date, due_date, and currency_code. Optionally associate with a client using client_id." }, { "slug": "CLIENTARY_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead record in Clientary. Use when you need to add a new lead to the system with company details and contact information." }, { "slug": "CLIENTARY_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Clientary with name and rate. Use when you need to set up a new project for tracking time, expenses, or managing client work." }, { "slug": "CLIENTARY_CREATE_PROJECT_HOURS", "name": "Create Project Hours", "description": "Tool to create a new time entry for a specific project in Clientary. Use when you need to log hours worked on a project with a title and hours count." }, { "slug": "CLIENTARY_CREATE_RECURRING_SCHEDULE", "name": "Create Recurring Schedule", "description": "Tool to create a new recurring schedule for automatic invoice generation in Clientary. Use when you need to set up recurring invoices for a client at regular intervals (weekly, monthly, quarterly, etc.). Requires client_id, next_date, time_interval, currency_code, and due_period." }, { "slug": "CLIENTARY_CREATE_TASK2", "name": "Create Task (v2)", "description": "Tool to create a new task in Clientary using API v2. Use when you need to create a task with a title, optionally associating it with a project, client, or assignee." }, { "slug": "CLIENTARY_DELETE_CLIENT", "name": "Delete Client", "description": "Tool to remove a client and all associated projects, invoices, estimates, and contacts. Use when you need to permanently delete a client from Clientary. WARNING: Deletions are permanent and not reversible." }, { "slug": "CLIENTARY_DELETE_CLIENTARY_CONTACT", "name": "Delete Contact", "description": "Tool to permanently delete a contact and all associated comments. Use when you need to remove a contact that is no longer needed. Warning: This action is irreversible." }, { "slug": "CLIENTARY_DELETE_CLIENTARY_EXPENSE", "name": "Delete Expense", "description": "Tool to permanently remove an expense record from Clientary. Use when you need to delete an expense entry. WARNING: Deletions are permanent and not reversible." }, { "slug": "CLIENTARY_DELETE_CLIENTARY_PROJECT", "name": "Delete Project", "description": "Tool to permanently delete a project and all associated resources including tasks, hours, expenses, invoices, and estimates. Use when you need to remove a project from Clientary. WARNING: Deletions are permanent and not reversible." }, { "slug": "CLIENTARY_DELETE_HOUR", "name": "Delete Hour Entry", "description": "Tool to permanently delete a time entry (hour) from Clientary. Use when you need to remove a logged hour entry by its unique identifier. Warning: Deletions are permanent and cannot be undone." }, { "slug": "CLIENTARY_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to permanently delete a lead and all associated Estimates and Contacts. Use when you need to remove a lead that is no longer needed. Warning: This action is irreversible." }, { "slug": "CLIENTARY_DELETE_PAYMENT", "name": "Delete Payment", "description": "Tool to remove an existing payment from an invoice. Use when you need to permanently delete a payment record. WARNING: Deletions are permanent and not reversible." }, { "slug": "CLIENTARY_DELETE_PAYMENT_PROFILE", "name": "Delete Payment Profile", "description": "Tool to remove a specific payment profile from a client's account. Use when you need to delete a payment profile. Note: Client must have an active payment integration with Stripe to manage payment profiles." }, { "slug": "CLIENTARY_DELETE_RECURRING_SCHEDULE", "name": "Delete Recurring Schedule", "description": "Tool to remove a recurring schedule by its identifier. Use when you need to permanently delete a recurring schedule from Clientary. Once deleted, the recurring schedule will no longer generate periodic invoices." }, { "slug": "CLIENTARY_GET_CLIENT", "name": "Get Client", "description": "Tool to fetch details for a specific client using its ID. Use when you need to retrieve complete information about a client from Clientary." }, { "slug": "CLIENTARY_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a single contact by its ID. Use when you need to fetch detailed information about a specific contact from Clientary." }, { "slug": "CLIENTARY_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to retrieve details for a single estimate by ID. Use when you need to obtain comprehensive estimate information including line items, tax details, and financial data." }, { "slug": "CLIENTARY_GET_EXPENSE", "name": "Get Expense", "description": "Tool to retrieve details for a single expense record in Clientary. Use when you need to get specific information about an expense by its unique identifier." }, { "slug": "CLIENTARY_GET_HOUR", "name": "Get Hour Entry", "description": "Tool to obtain details about a specific time entry in Clientary. Use when you need to retrieve information about a logged hour entry by its unique identifier." }, { "slug": "CLIENTARY_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve detailed information for a specific invoice by ID. Use when you need to fetch invoice details including line items, payments, tax information, and current status." }, { "slug": "CLIENTARY_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve a single lead by its ID. Use when you need to fetch detailed information about a specific lead from Clientary." }, { "slug": "CLIENTARY_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a single project by its identifier. Use when you need to fetch detailed information about a specific project in Clientary." }, { "slug": "CLIENTARY_GET_STAFF", "name": "Get Staff", "description": "Tool to retrieve a single staff member by their ID. Use when you need to fetch detailed information about a specific staff member from Clientary." }, { "slug": "CLIENTARY_GET_TASK", "name": "Get Task", "description": "Tool to retrieve a specific task by its ID. Use when you need to fetch detailed information about a task from Clientary." }, { "slug": "CLIENTARY_LIST_CLIENT_CONTACTS", "name": "List Client Contacts", "description": "Tool to retrieve all contacts for a specific client with pagination support. Use when you need to fetch the list of contacts associated with a particular client in Clientary." }, { "slug": "CLIENTARY_LIST_CLIENT_ESTIMATES", "name": "List Client Estimates", "description": "Tool to retrieve all estimates for a specific client with pagination support (30 results per page). Use when you need to fetch estimates associated with a particular client from Clientary." }, { "slug": "CLIENTARY_LIST_CLIENT_EXPENSES", "name": "List Client Expenses", "description": "Tool to retrieve all expenses for a specific client within an optional date range. Use when you need to fetch expense records associated with a particular client from Clientary." }, { "slug": "CLIENTARY_LIST_CLIENT_INVOICES", "name": "List Client Invoices", "description": "Tool to retrieve all invoices for a specific client with pagination support (30 results per page). Use when you need to fetch invoices associated with a particular client from Clientary." }, { "slug": "CLIENTARY_LIST_CLIENT_PAYMENT_PROFILES", "name": "List Client Payment Profiles", "description": "Tool to retrieve payment profiles for a specific client. Payment profiles store credit card information securely via Stripe integration. Use when you need to fetch payment methods associated with a client account." }, { "slug": "CLIENTARY_LIST_CLIENT_PROJECTS", "name": "List Client Projects", "description": "Tool to retrieve all projects associated with a specific client with pagination support (10 results per page). Use when you need to fetch projects for a particular client from Clientary." }, { "slug": "CLIENTARY_LIST_CLIENTS", "name": "List Clients", "description": "Tool to retrieve all clients with pagination support (10 results per page). Use when you need to fetch a list of clients from Clientary with optional filtering by modification date or custom sorting." }, { "slug": "CLIENTARY_LIST_ESTIMATES", "name": "List Estimates", "description": "Tool to retrieve all estimates with pagination support (30 results per page). Use when you need to fetch a list of estimates from Clientary, which serve as proposals or quotes to be sent to clients." }, { "slug": "CLIENTARY_LIST_EXPENSES", "name": "List Expenses", "description": "Tool to retrieve expenses by date range (defaults to current fiscal year). Use when you need to fetch a list of expenses from Clientary with optional filtering by start and end dates." }, { "slug": "CLIENTARY_LIST_LEADS", "name": "List Leads", "description": "Tool to retrieve all leads with pagination support. Use when you need to fetch a list of leads from Clientary with optional sorting by name or date." }, { "slug": "CLIENTARY_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to retrieve all payments with pagination support (30 results per page). Use when you need to fetch a list of payments from Clientary with optional pagination and custom sorting." }, { "slug": "CLIENTARY_LIST_PROJECT_ESTIMATES", "name": "List Project Estimates", "description": "Tool to retrieve estimates scoped to a particular project with pagination support (30 results per page). Use when you need to fetch all estimates associated with a specific project." }, { "slug": "CLIENTARY_LIST_PROJECT_EXPENSES", "name": "List Project Expenses", "description": "Tool to retrieve all expenses for a specific project within an optional date range. Use when you need to fetch expense records associated with a particular project from Clientary." }, { "slug": "CLIENTARY_LIST_PROJECT_HOURS", "name": "List Project Hours", "description": "Tool to retrieve all time tracking entries logged against a specific project. Use when you need to fetch hour entries for a particular project, optionally filtering by billed or unbilled status." }, { "slug": "CLIENTARY_LIST_PROJECT_INVOICES", "name": "List Project Invoices", "description": "Tool to retrieve all invoices linked to a specific project with pagination support (30 results per page). Use when you need to fetch invoices associated with a particular project from Clientary." }, { "slug": "CLIENTARY_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve all projects with pagination support (10 results per page). Use when you need to fetch a list of projects from Clientary with optional filtering for closed projects." }, { "slug": "CLIENTARY_LIST_PROJECT_TASKS", "name": "List Project Tasks", "description": "Tool to retrieve all tasks for a specific project. Use when you need to fetch a list of tasks associated with a particular project in Clientary." }, { "slug": "CLIENTARY_LIST_RECURRING_SCHEDULE_INVOICES", "name": "List Recurring Schedule Invoices", "description": "Tool to retrieve all invoices generated by a specific recurring schedule with pagination support (30 results per page). Use when you need to fetch invoices associated with a particular recurring schedule from Clientary." }, { "slug": "CLIENTARY_LIST_STAFF", "name": "List Staff", "description": "Tool to retrieve all staff members for an account. Use when you need to fetch a complete list of staff members from Clientary." }, { "slug": "CLIENTARY_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve all tasks with pagination support (50 results per page). Use when you need to fetch a list of tasks from Clientary." }, { "slug": "CLIENTARY_SEND_INVOICE_MESSAGE", "name": "Send Invoice Message", "description": "Tool to send an invoice message to recipients via email. Use when you need to email an invoice to clients with customizable subject, message content, and options to send a copy to yourself or attach a PDF." }, { "slug": "CLIENTARY_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client record in Clientary with partial or complete field modifications. Use when you need to modify client details such as name, address, description, or custom fields. All fields except ID are optional." }, { "slug": "CLIENTARY_UPDATE_CLIENTARY_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Clientary with partial or complete field modifications. Use when you need to modify contact details such as name, email, title, or phone numbers. Supports partial updates via the client_user wrapper object." }, { "slug": "CLIENTARY_UPDATE_CLIENTARY_LEAD", "name": "Update Lead", "description": "Tool to update an existing lead record in Clientary with partial or complete field modifications. Use when you need to modify lead details such as name, address, website, description, or custom fields. All fields except ID are optional." }, { "slug": "CLIENTARY_UPDATE_EXPENSE", "name": "Update Expense", "description": "Tool to update an existing expense record in Clientary with partial or complete field modifications. Use when you need to modify expense details such as amount, description, client assignment, project assignment, or incurred date. All fields except ID are optional." }, { "slug": "CLIENTARY_UPDATE_HOUR", "name": "Update Hour Entry", "description": "Tool to modify an existing time entry in Clientary with partial or complete field updates. Use when you need to update hours, title, date, description, rate, or billing status of a logged hour entry." }, { "slug": "CLIENTARY_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update an existing invoice in Clientary with partial or complete field modifications. Use when you need to modify invoice details such as number, dates, currency, or line items. For invoice_items_attributes: include item ID to edit existing items, omit ID to create new items, or set destroy=true with ID to delete items." }, { "slug": "CLIENTARY_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project in Clientary with partial or complete field modifications. Use when you need to modify project details such as name, rate, description, budget, status, or other project attributes. All fields except ID are optional - only provided fields will be updated." }, { "slug": "CLIENTARY_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in Clientary with partial or complete field modifications. Use when you need to modify task details such as title, description, completion status, assignee, or due date. All fields except ID are optional." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "clientary_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your Clientary subdomain. If your URL is https://mygreatcompany.clientary.com, enter \"mygreatcompany\"", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Go to your user profile page in Clientary (upper right corner after logging in) and click \"Generate API Token\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cliento", "name": "Cliento", "logo": "https://logos.composio.dev/api/cliento", "description": "Cliento is a modern and complete booking system, with our app you can take your booking system with you wherever you go.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cliento_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your Cliento Account ID. To get your Account ID, sign in to Cliento and go to \"Admin\" > \"Onlinebokning\" > \"Bokningssida / Widget\".", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Cliento API key. Contact support@cliento.com to request API access and credentials.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "clockify", "name": "Clockify", "logo": "https://clockify.me/assets/images/clockify-logo.svg", "description": "Clockify is a free time tracking software that allows individuals and teams to track work hours across projects.", "category": "time tracking software", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 75, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOCKIFY_ADD_USER_TO_GROUP", "name": "Add User to Group", "description": "Tool to add a user to a user group in a Clockify workspace. Use when you need to add a specific user to an existing group." }, { "slug": "CLOCKIFY_CREATE_CLIENT", "name": "Create Client", "description": "Tool to add a new client to a workspace. Use when you need to create a client in a specific workspace." }, { "slug": "CLOCKIFY_CREATE_NEW_PROJECT", "name": "Create New Project", "description": "Tool to create a new project in a Clockify workspace. Use when you need to create a project with name, color, billable status, visibility, and optional client association." }, { "slug": "CLOCKIFY_CREATE_SHARED_REPORT", "name": "Create Shared Report", "description": "Tool to create a shared report in Clockify. Use when generating shareable summary, detailed, or weekly reports with custom date ranges and grouping options." }, { "slug": "CLOCKIFY_CREATE_TASK", "name": "Create Task", "description": "Tool to add a new task to a project in Clockify. Use when you need to create a task with optional time estimates, assignees, and billable status." }, { "slug": "CLOCKIFY_CREATE_TEMPLATES_ON_WORKSPACE", "name": "Create Templates On Workspace", "description": "Tool to create templates on a Clockify workspace. Use when you need to create one or more templates with associated projects and tasks for reusable project structures." }, { "slug": "CLOCKIFY_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry in a Clockify workspace. Use when logging time with start/end timestamps, project/task/tag associations, and billable status." }, { "slug": "CLOCKIFY_CREATE_USER_GROUP", "name": "Create User Group", "description": "Tool to create a new user group in a workspace. Use when you need to add a group to organize users within a specific workspace." }, { "slug": "CLOCKIFY_CREATE_USER_TIME_ENTRY", "name": "Create User Time Entry", "description": "Tool to create a time entry for another user in a Clockify workspace. Use when adding time logs on behalf of team members with admin/manager permissions." }, { "slug": "CLOCKIFY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook in a workspace. Use when you want to subscribe to workspace events by registering a callback URL." }, { "slug": "CLOCKIFY_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Tool to create a new workspace in Clockify. Use when you need to set up a new workspace for time tracking and project management." }, { "slug": "CLOCKIFY_DELETE_CLIENT", "name": "Delete Client", "description": "Permanently deletes a client from a Clockify workspace. Returns the deleted client's data. Warning: This action is irreversible. Ensure the client has no associated projects or time entries." }, { "slug": "CLOCKIFY_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from a workspace. Use when you need to permanently remove a project. Warning: This action is irreversible and may affect associated time entries and tasks." }, { "slug": "CLOCKIFY_DELETE_SHARED_REPORT", "name": "Delete Shared Report", "description": "Tool to delete a shared report from a workspace by ID. Use when you need to remove a shared report that is no longer needed." }, { "slug": "CLOCKIFY_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag from a Clockify workspace. Use when you need to remove an existing tag by its ID." }, { "slug": "CLOCKIFY_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task from a project in Clockify. Use when removing tasks that are no longer needed or were created by mistake." }, { "slug": "CLOCKIFY_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template from a Clockify workspace. Returns the deleted template's data including entries, projects, and tasks." }, { "slug": "CLOCKIFY_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to delete a time entry from a workspace by ID. Use for cleanup workflows such as removing bad imports, duplicates, or cancelled entries." }, { "slug": "CLOCKIFY_DELETE_USER_GROUP", "name": "Delete User Group", "description": "Tool to delete a user group from a workspace. Use when you need to remove an existing user group by its ID." }, { "slug": "CLOCKIFY_DELETE_USER_TIME_ENTRIES", "name": "Delete User Time Entries", "description": "Tool to delete multiple time entries for a user in a workspace. Use for bulk cleanup such as removing test data, correcting erroneous imports, or batch deleting cancelled work periods." }, { "slug": "CLOCKIFY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook from a workspace. Use when you need to remove an existing webhook by its ID." }, { "slug": "CLOCKIFY_DUPLICATE_TIME_ENTRY", "name": "Duplicate Time Entry", "description": "Tool to duplicate an existing time entry in a Clockify workspace. Use when creating a copy of a time entry with the same attributes (project, task, tags, description, billable status)." }, { "slug": "CLOCKIFY_FILTER_WORKSPACE_USERS", "name": "Filter Workspace Users", "description": "Tool to filter users in a workspace by advanced criteria. Use when you need a paginated, sortable list of workspace users matching multiple filters." }, { "slug": "CLOCKIFY_FIND_USER_TEAM_MANAGER", "name": "Find User's Team Managers", "description": "Retrieves the list of team managers assigned to a specific user in a Clockify workspace. Team managers are users who have supervisory responsibilities over other users. Use this after obtaining valid workspace and user IDs from other actions." }, { "slug": "CLOCKIFY_GENERATE_DETAILED_REPORT", "name": "Generate Detailed Report", "description": "Tool to generate a detailed time entry report with filtering and pagination. Use when you need comprehensive time tracking data with project, client, user, and tag breakdowns for reporting or analysis." }, { "slug": "CLOCKIFY_GENERATE_EXPENSE_REPORT", "name": "Generate Expense Report", "description": "Tool to generate a detailed expense report for a Clockify workspace. Use when you need to retrieve and analyze expense data within a specific date range for reporting, invoicing, or financial analysis." }, { "slug": "CLOCKIFY_GENERATE_NEW_WEBHOOK_TOKEN", "name": "Generate New Webhook Token", "description": "Tool to generate a new webhook token. Use after confirming workspace and webhook IDs." }, { "slug": "CLOCKIFY_GENERATE_SUMMARY_REPORT", "name": "Generate Summary Report", "description": "Tool to generate a summary report for time entries in a Clockify workspace. Use when you need aggregated time tracking data grouped by projects, users, clients, or other criteria for high-level analysis and reporting." }, { "slug": "CLOCKIFY_GENERATE_WEEKLY_REPORT", "name": "Generate Weekly Report", "description": "Tool to generate a weekly time entry report for a workspace with grouped data. Use when you need detailed weekly breakdowns of time entries organized by user, project, task, or other dimensions." }, { "slug": "CLOCKIFY_GET_ALL_ADDON_WEBHOOKS", "name": "Get All Addon Webhooks", "description": "Tool to list all webhooks for an addon in a workspace. Use after confirming workspace and addon IDs." }, { "slug": "CLOCKIFY_GET_ALL_MY_WORKSPACES", "name": "Get All My Workspaces", "description": "Tool to list all workspaces the user belongs to. Use when you need an overview of accessible workspaces after authentication. Verify the correct workspace ID from the returned list before using it in subsequent operations — wrong workspace IDs misroute all entries. Each workspace object may include settings such as forceTasks; when enabled, time entry creation requires a valid taskId or returns HTTP 400 (code 501)." }, { "slug": "CLOCKIFY_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to list all webhooks in a workspace. Use when you need to retrieve defined webhooks after confirming the workspace ID." }, { "slug": "CLOCKIFY_GET_CLIENT_BY_ID", "name": "Get Client By ID", "description": "Retrieves detailed information about a specific client in a Clockify workspace. Returns client details including name, contact information (email, address), billing currency, and archived status. Use 'Get All My Workspaces' to obtain workspace_id and 'Get Clients' to obtain client_id before calling this action." }, { "slug": "CLOCKIFY_GET_CLIENTS", "name": "Get Clients", "description": "Tool to list clients in a workspace. Use after obtaining a workspace ID." }, { "slug": "CLOCKIFY_GET_CREATED_ENTITIES", "name": "Get Created Entities", "description": "Tool to retrieve created entities within a workspace (Experimental). Use when you need to track incremental changes or newly created time entries, projects, clients, or other entity types." }, { "slug": "CLOCKIFY_GET_CURRENTLY_LOGGED_IN_USER_INFO", "name": "Get Currently Logged In User Info", "description": "Tool to retrieve info about the authenticated user. Use when verifying credentials and needing current user context after authentication." }, { "slug": "CLOCKIFY_GET_DELETED_ENTITIES", "name": "Get Deleted Entities", "description": "Tool to retrieve information about entities deleted within a date range (Experimental API). Use when you need to track incremental changes or identify deleted records for synchronization purposes." }, { "slug": "CLOCKIFY_GET_HOLIDAYS", "name": "Get Holidays", "description": "Tool to retrieve all holidays for a workspace. Use when you need to list or filter workspace holidays after confirming the workspace ID." }, { "slug": "CLOCKIFY_GET_HOLIDAYS_IN_PERIOD", "name": "Get Holidays In Period", "description": "Tool to retrieve holidays in a specific period. Use when you need holidays assigned to a user between two dates after confirming the workspace ID." }, { "slug": "CLOCKIFY_GET_IN_PROGRESS_TIME_ENTRIES", "name": "Get In Progress Time Entries", "description": "Tool to retrieve all currently running time entries in a workspace. Use when you need to check which timers are active or see who is currently tracking time." }, { "slug": "CLOCKIFY_GET_MEMBER_PROFILE", "name": "Get member's profile", "description": "Tool to get a member's profile in a workspace. Use when you need detailed profile info after identifying the workspace and user." }, { "slug": "CLOCKIFY_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve detailed information about a specific project by ID. Use when you need to get project details such as name, billable status, budget estimates, rates, and memberships." }, { "slug": "CLOCKIFY_GET_PROJECTS", "name": "Get Projects", "description": "Tool to list projects in a workspace with filtering and pagination. Use after obtaining a workspace ID." }, { "slug": "CLOCKIFY_GET_SHARED_REPORT", "name": "Get Shared Report", "description": "Tool to retrieve a shared report by ID from Clockify. Returns report data including totals, charts, groupings, and filter configuration. Use when you need to access and analyze shared report data. Note: This endpoint uses the Reports API domain (reports.api.clockify.me)." }, { "slug": "CLOCKIFY_GET_SHARED_REPORTS", "name": "Get Shared Reports", "description": "Tool to retrieve all shared reports in a workspace. Use when you need to view reports that have been shared within the workspace." }, { "slug": "CLOCKIFY_GET_TAG", "name": "Get Tag By ID", "description": "Tool to retrieve detailed information about a specific tag by ID in a Clockify workspace. Use when you need to get tag details including name, workspace ID, and archived status." }, { "slug": "CLOCKIFY_GET_TAGS", "name": "Get Tags", "description": "Tool to find and list tags in a workspace. Use when you need to view all tags or filter tags by name or archived status." }, { "slug": "CLOCKIFY_GET_TASK", "name": "Get Task", "description": "Retrieves detailed information about a specific task in a Clockify project. Returns task details including name, assignees, estimates, billable status, and rates. Use this to inspect or verify task information within a project." }, { "slug": "CLOCKIFY_GET_TASKS", "name": "Get Tasks", "description": "Tool to find all tasks on a specific project in a workspace. Use when you need to list, search, or filter tasks for project management." }, { "slug": "CLOCKIFY_GET_TEMPLATE_BY_ID_ON_WORKSPACE", "name": "Get Template By ID On Workspace", "description": "Tool to retrieve a specific template by ID from a Clockify workspace. Use when you need to fetch template details including projects and tasks, optionally hydrated or cleansed. Note: This endpoint is deprecated in the API but remains functional." }, { "slug": "CLOCKIFY_GET_TEMPLATES_ON_WORKSPACE", "name": "Get Templates On Workspace", "description": "Tool to list all templates in a workspace. Use when you need to retrieve available templates for creating projects or time entries." }, { "slug": "CLOCKIFY_GET_TIME_ENTRIES", "name": "Get Time Entries", "description": "Tool to retrieve historical time entries for a user in a workspace with filters. Use when you need to audit, summarize, or analyze time logs for reporting or invoicing." }, { "slug": "CLOCKIFY_GET_TIME_ENTRY", "name": "Get Time Entry", "description": "Tool to retrieve a specific time entry by ID from a workspace. Use when you need to inspect details of a particular time entry for auditing, reporting, or further processing." }, { "slug": "CLOCKIFY_GET_UPDATED_ENTITIES", "name": "Get Updated Entities", "description": "Tool to retrieve entities that have been updated in a workspace (Experimental). Use when tracking incremental changes to time entries, expenses, custom fields, or other entity types for synchronization or audit purposes." }, { "slug": "CLOCKIFY_GET_USER_GROUPS", "name": "Get User Groups", "description": "Tool to find all user groups in a workspace. Use when you need to retrieve all groups that organize users within a specific workspace." }, { "slug": "CLOCKIFY_GET_WEBHOOK_BY_ID", "name": "Get Webhook By ID", "description": "Retrieves detailed information about a specific webhook in a Clockify workspace. Returns the webhook's name, URL, event type, trigger source configuration, auth token, and enabled status. Use this to inspect or verify webhook settings." }, { "slug": "CLOCKIFY_GET_WEBHOOK_LOGS", "name": "Get Webhook Logs", "description": "Tool to retrieve webhook logs for a specific webhook. Use when you need to inspect webhook delivery history, debug failed webhook calls, or monitor webhook activity." }, { "slug": "CLOCKIFY_GET_WORKSPACE_INFO", "name": "Get Workspace Info", "description": "Retrieves detailed information about a specific Clockify workspace. Use this tool to get workspace configuration, settings, memberships, and features. Requires a workspace ID which can be obtained from 'Get All My Workspaces' action. Returns workspace details including: - Name and ID - Cost rates and hourly rates - Subscription type and enabled features - Membership information - Workspace settings (time tracking mode, permissions, etc.)" }, { "slug": "CLOCKIFY_LIST_ASSIGNMENTS", "name": "List Assignments", "description": "Tool to retrieve all scheduling assignments in a workspace. Use when you need to view team member assignments to projects within a specific date range." }, { "slug": "CLOCKIFY_REMOVE_USER_FROM_GROUP", "name": "Remove User From Group", "description": "Tool to remove a user from a group in Clockify. Returns the updated user group details after removal." }, { "slug": "CLOCKIFY_STOP_USER_TIMER", "name": "Stop User Timer", "description": "Tool to stop a currently running timer for a user in a workspace. Use when ending an active time tracking session by providing the end timestamp." }, { "slug": "CLOCKIFY_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client in a Clockify workspace. Use when you need to modify client details such as name, email, address, or archived status." }, { "slug": "CLOCKIFY_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project in a Clockify workspace. Use when modifying project details like name, color, billable status, or client associations." }, { "slug": "CLOCKIFY_UPDATE_PROJECT_MEMBERSHIPS", "name": "Update Project Memberships", "description": "Tool to update project memberships in Clockify. Use when you need to add users to a project or modify their rates." }, { "slug": "CLOCKIFY_UPDATE_PROJECT_USER_HOURLY_RATE", "name": "Update Project User Hourly Rate", "description": "Tool to update a project user's billable rate. Use when you need to set or change the hourly rate for a specific user on a project." }, { "slug": "CLOCKIFY_UPDATE_SHARED_REPORT", "name": "Update Shared Report", "description": "Tool to update an existing shared report in Clockify. Use when modifying report name, visibility, date settings, or filter configuration." }, { "slug": "CLOCKIFY_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update a tag in a Clockify workspace. Use when you need to rename a tag or archive/unarchive it." }, { "slug": "CLOCKIFY_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task on a project in Clockify. Use when modifying task details like name, assignees, status, estimates, or billing settings." }, { "slug": "CLOCKIFY_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update a template in a Clockify workspace. Use when you need to modify a template's name. Note: This endpoint is deprecated in API v1." }, { "slug": "CLOCKIFY_UPDATE_TIME_ENTRIES", "name": "Update Time Entries", "description": "Tool to bulk update multiple time entries in a Clockify workspace. Use when modifying multiple time logs simultaneously with start/end times, descriptions, billable status, or project/task associations." }, { "slug": "CLOCKIFY_UPDATE_TIME_ENTRY", "name": "Update Time Entry", "description": "Tool to update an existing time entry in a Clockify workspace. Use when modifying time logs including start/end times, description, billable status, or project/task associations." }, { "slug": "CLOCKIFY_UPDATE_USER_GROUP", "name": "Update User Group", "description": "Tool to update an existing user group in a workspace. Use when you need to modify the name of a user group." }, { "slug": "CLOCKIFY_UPDATE_USER_HOURLY_RATE", "name": "Update User Hourly Rate", "description": "Tool to update a user's hourly rate in a Clockify workspace. Use when you need to set or change the billable hourly rate for a specific user." }, { "slug": "CLOCKIFY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook in a workspace. Use when you need to modify an existing webhook's configuration such as its name, URL, event type, or trigger sources." }, { "slug": "CLOCKIFY_UPDATE_WORKSPACE_HOURLY_RATE", "name": "Update Workspace Hourly Rate", "description": "Tool to update the workspace billable hourly rate. Use when you need to set or modify the default hourly billing rate for a workspace." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "clockify_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "The unique subdomain associated with the user's organization or workspace instance on Clockify (e.g., 'companyX' in https://companyX.clockify.me).", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "clockify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Clockify API Key", "type": "string", "description": "The API key generated from your Clockify account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudcart", "name": "Cloudcart", "logo": "https://logos.composio.dev/api/cloudcart", "description": "CloudCart is an e-commerce platform that enables businesses to create and manage online stores efficiently.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 150, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDCART_ADD_CATEGORY_PROPERTIES", "name": "Add Category Properties", "description": "Tool to add properties to a category relationship. Use when you need to associate one or more properties with a category for filtering or organization purposes." }, { "slug": "CLOUDCART_ADD_TO_CART", "name": "Add to Cart", "description": "Tool to add an item to the cart. Use after confirming a product selection with desired quantity." }, { "slug": "CLOUDCART_CLEAR_CART", "name": "Clear Cart", "description": "Tool to remove all items from the specified cart. Use when you need to empty the cart before adding new items or starting over." }, { "slug": "CLOUDCART_CREATE_BLOG_CATEGORY", "name": "Create Blog Category", "description": "Tool to create a new blog category in CloudCart. Use when you need to organize blog posts into categories. Requires a category name and optionally accepts an image URL for visual representation." }, { "slug": "CLOUDCART_CREATE_BLOG_POST", "name": "Create Blog Post", "description": "Tool to create a new blog post in CloudCart. Use when you need to publish blog content to your store. Requires post title, content, blog ID, and author ID." }, { "slug": "CLOUDCART_CREATE_BLOG_TAGS", "name": "Create Blog Tag", "description": "Tool to create a new blog tag in CloudCart. Use when you need to add tags for organizing blog content. Tags help categorize and filter blog posts for better content discovery." }, { "slug": "CLOUDCART_CREATE_CATEGORY", "name": "Create Category", "description": "Tool to create a new category. Use when you need to add organizational structure to your product catalog." }, { "slug": "CLOUDCART_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer in CloudCart. Use when you need to register a new customer profile. Provide validated customer details (first name, last name, email, and password). Returns the created customer with their unique ID and timestamps." }, { "slug": "CLOUDCART_CREATE_CUSTOMER_BILLING_ADDRESS", "name": "Create Customer Billing Address", "description": "Tool to create a new customer billing address. Use when you need to add a billing address for an existing customer. Requires customer ID and address details (name, country, city, street)." }, { "slug": "CLOUDCART_CREATE_CUSTOMER_GROUPS", "name": "Create Customer Groups", "description": "Tool to create a new customer group in CloudCart. Use when you need to organize customers into categories or segments for targeted marketing, pricing, or permissions. The group name must be unique." }, { "slug": "CLOUDCART_CREATE_CUSTOMER_SHIPPING_ADDRESS", "name": "Create Customer Shipping Address", "description": "Tool to create a customer shipping address in CloudCart. Use when you need to add a new delivery address for an existing customer. Requires customer ID and complete address details (name, phone, country, city, street, postal code)." }, { "slug": "CLOUDCART_CREATE_CUSTOMER_TAGS", "name": "Create Customer Tag", "description": "Tool to create a new customer tag in CloudCart. Use when you need to add tags for organizing and categorizing customers. Tags can be used for filtering, grouping, or marketing purposes." }, { "slug": "CLOUDCART_CREATE_DISCOUNT", "name": "Create Discount", "description": "Tool to create a new discount in CloudCart. Use when you need to add promotional discounts, sales, or special offers. Supports various discount types (fixed, percent, flat, shipping) and flexible targeting (all products, specific products, categories, or customers)." }, { "slug": "CLOUDCART_CREATE_DISCOUNT_CODE", "name": "Create Discount Code", "description": "Create a new discount code in CloudCart. Use when you need to add promotional discount codes to the store. The value represents the discount percentage multiplied by 100 (e.g., 1500 = 15% off)." }, { "slug": "CLOUDCART_CREATE_IMAGES", "name": "Create Image", "description": "Tool to create a new image for a product. Use when you need to add an image to an existing product by providing the image URL and product ID." }, { "slug": "CLOUDCART_CREATE_LINKED_PRODUCTS", "name": "Create Linked Products", "description": "Tool to create linked product relationships in CloudCart. Use when you need to associate related products together, such as complementary items or product bundles. Supports bidirectional linking where linked products reference each other." }, { "slug": "CLOUDCART_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order. Use after assembling customer ID, cart items, and optional addresses/payment info." }, { "slug": "CLOUDCART_CREATE_PRODUCT", "name": "Create Product", "description": "Creates a new product in CloudCart catalog. Requires product name, price, and at least one category ID. Supports optional fields like SKU, description (HTML allowed), quantity, weight, barcode, status, tags, and images. Use this when you need to add a new product to the store inventory." }, { "slug": "CLOUDCART_CREATE_PRODUCTS_PROPERTY_OPTIONS", "name": "Create Products Property Options", "description": "Tool to add property options to a product relationship. Use when you need to associate one or more property options with a product for configuration or customization purposes." }, { "slug": "CLOUDCART_CREATE_PRODUCT_TO_DISCOUNT", "name": "Create Product to Discount", "description": "Tool to create a product to discount relationship in CloudCart. Use when you need to associate a product variant with a discount and optionally set a discounted price." }, { "slug": "CLOUDCART_CREATE_PROPERTIES", "name": "Create Property", "description": "Tool to create a new property in CloudCart. Properties are attributes that can be assigned to products (e.g., color, size, material). Use when you need to define new product characteristics or attributes for your catalog." }, { "slug": "CLOUDCART_CREATE_PROPERTY_OPTION", "name": "Create Property Option", "description": "Tool to create a new property option. Use when you need to add a new option value to a product property (e.g., adding \"Red\" to a \"Color\" property or \"Large\" to a \"Size\" property)." }, { "slug": "CLOUDCART_CREATE_REDIRECTS", "name": "Create Redirect", "description": "Create a new URL redirect in CloudCart. Supports five redirect types: 'manual' for custom paths, 'external' for external URLs, and 'product', 'category', or 'vendor' to link to specific store items. Use when you need to redirect old URLs to new locations or specific store resources." }, { "slug": "CLOUDCART_CREATE_SUBSCRIBERS", "name": "Create Subscriber", "description": "Tool to create a new subscriber in CloudCart. Use when you need to add a subscriber to the mailing list. Provide the subscriber's first name, last name, and two-letter country code." }, { "slug": "CLOUDCART_CREATE_SUBSCRIBERS_CHANNELS", "name": "Create Subscriber Channel", "description": "Tool to create a new subscriber channel in CloudCart. Use when you need to add a communication channel (email or phone) for a subscriber. Provide the subscriber ID, channel type, contact identifier, and consent flags." }, { "slug": "CLOUDCART_CREATE_SUBSCRIBERS_TAGS", "name": "Create Subscriber Tag", "description": "Tool to create a new subscriber-tag association in CloudCart. Use when you need to associate a tag with a subscriber for organizing, categorizing, or filtering subscribers." }, { "slug": "CLOUDCART_CREATE_VARIANT", "name": "Create Variant", "description": "Tool to create a new product variant for a given product. Use when you need to add a variant with specific SKU, price, and options." }, { "slug": "CLOUDCART_CREATE_VARIANT_OPTION", "name": "Create Variant Option", "description": "Tool to create a new variant option for a specific product variant. Use when you need to add an option (e.g., 'Large') with an optional price adjustment to an existing variant." }, { "slug": "CLOUDCART_CREATE_VARIANT_OPTIONS", "name": "Create Variant Options", "description": "Tool to create a new variant option. Use when you need to add a new option (e.g., 'Medium', 'Blue') to an existing variant parameter." }, { "slug": "CLOUDCART_CREATE_VARIANT_PARAMETER", "name": "Create Variant Parameter", "description": "Tool to create a new variant parameter for a product variant. Use when you need to add custom attributes (e.g., color, size) after a variant is created." }, { "slug": "CLOUDCART_CREATE_VARIANT_PARAMETERS", "name": "Create Variant Parameter", "description": "Tool to create a new variant parameter definition. Use when you need to define a new product attribute type (e.g., Size, Color, Material) that can be used across products." }, { "slug": "CLOUDCART_CREATE_VENDOR", "name": "Create Vendor", "description": "Create a new vendor in your CloudCart store. Vendors represent brands, manufacturers, or suppliers. The image_url is optional - if not provided, a default placeholder will be used. If provided, it must be a valid, publicly accessible image URL." }, { "slug": "CLOUDCART_CREATE_WEBHOOKS", "name": "Create Webhook", "description": "Tool to create a new webhook subscription in CloudCart. Use when you need to register a webhook URL for receiving real-time event notifications (e.g., order.created, order.updated). CloudCart will send HTTP POST requests to your webhook URL when the specified event occurs. Retry policy: up to 6 attempts at 60, 120, 180, 240, 300 second intervals." }, { "slug": "CLOUDCART_DELETE_BLOG_CATEGORY", "name": "Delete Blog Category", "description": "Tool to delete a blog category by its ID. Use after confirming the correct ID to permanently remove it." }, { "slug": "CLOUDCART_DELETE_BLOG_POST", "name": "Delete Blog Post", "description": "Tool to delete a blog post by its ID. Use after confirming the correct ID to permanently remove the blog post." }, { "slug": "CLOUDCART_DELETE_BLOG_TAG", "name": "Delete Blog Tag", "description": "Tool to delete a blog tag by its ID. Use after confirming the correct ID to permanently remove the tag. The API returns 204 No Content on successful deletion." }, { "slug": "CLOUDCART_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to delete a category by its ID. Use after confirming the correct ID to permanently remove it." }, { "slug": "CLOUDCART_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a customer. Use when you need to remove a customer by their ID. Example: \"Delete customer with ID 123\"." }, { "slug": "CLOUDCART_DELETE_CUSTOMER_BILLING_ADDRESS", "name": "Delete Customer Billing Address", "description": "Tool to delete a customer billing address by its ID. Use when you need to remove a billing address from a customer's account." }, { "slug": "CLOUDCART_DELETE_CUSTOMER_GROUP", "name": "Delete Customer Group", "description": "Tool to delete a customer group by its ID. Use when you need to permanently remove a customer group from the store." }, { "slug": "CLOUDCART_DELETE_CUSTOMER_SHIPPING_ADDRESS", "name": "Delete Customer Shipping Address", "description": "Tool to delete a customer shipping address. Use when you need to remove a customer's shipping address by its ID." }, { "slug": "CLOUDCART_DELETE_CUSTOMER_TAG", "name": "Delete Customer Tag", "description": "Tool to delete a customer tag by its ID. Use after confirming the tag exists to permanently remove it." }, { "slug": "CLOUDCART_DELETE_DISCOUNT", "name": "Delete Discount", "description": "Tool to delete a discount by its ID. Use after confirming the discount exists to permanently remove it from the store." }, { "slug": "CLOUDCART_DELETE_DISCOUNT_CODE", "name": "Delete Discount Code", "description": "Tool to delete a discount code by its ID. Use after confirming the discount code exists to permanently remove it from the store." }, { "slug": "CLOUDCART_DELETE_IMAGE", "name": "Delete Image", "description": "Tool to delete an image by its ID. Use when you need to remove an image permanently from the CloudCart store." }, { "slug": "CLOUDCART_DELETE_ORDER", "name": "Delete Order", "description": "Tool to delete an order. Use after confirming the order exists." }, { "slug": "CLOUDCART_DELETE_PRODUCT", "name": "Delete Product", "description": "Tool to delete a product by its ID. Use after confirming the product exists to permanently remove it from the catalog." }, { "slug": "CLOUDCART_DELETE_PRODUCTS_LINKED_PRODUCTS", "name": "Delete Linked Products", "description": "Tool to delete linked product relationships in CloudCart. Use when you need to remove associations between related products. This removes the link but does not delete the products themselves." }, { "slug": "CLOUDCART_DELETE_PRODUCT_TO_DISCOUNT", "name": "Delete Product To Discount", "description": "Tool to delete a product-to-discount relationship by its ID. Use to remove the association between a product and a discount." }, { "slug": "CLOUDCART_DELETE_PROPERTY", "name": "Delete Property", "description": "Tool to delete a property by its ID. Use after confirming the correct property ID to permanently remove it from the store." }, { "slug": "CLOUDCART_DELETE_PROPERTY_OPTIONS", "name": "Delete Property Options", "description": "Tool to delete a property option by its ID. Use when you need to remove obsolete property options or clean up test data." }, { "slug": "CLOUDCART_DELETE_REDIRECT", "name": "Delete Redirect", "description": "Tool to delete a redirect by its ID. Use this when you need to remove obsolete redirects or clean up redirect rules in the CloudCart store." }, { "slug": "CLOUDCART_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Tool to delete a subscriber by their ID. Use when you need to remove a subscriber from the mailing list." }, { "slug": "CLOUDCART_DELETE_SUBSCRIBERS_CHANNEL", "name": "Delete Subscribers Channel", "description": "Tool to delete a subscriber channel by ID. Use when you need to remove a subscriber channel from the system. The API returns 204 No Content on successful deletion." }, { "slug": "CLOUDCART_DELETE_SUBSCRIBERS_TAG", "name": "Delete Subscriber Tag", "description": "Tool to delete a subscriber tag by its ID. Use after confirming the tag exists to permanently remove it." }, { "slug": "CLOUDCART_DELETE_VARIANT", "name": "Delete Variant", "description": "Tool to delete a variant by its ID. Use when you need to permanently remove a product variant from the catalog." }, { "slug": "CLOUDCART_DELETE_VARIANT_OPTION", "name": "Delete Variant Option", "description": "Tool to delete a variant option by its ID. Use when you need to permanently remove a variant option from a product variant in the CloudCart store." }, { "slug": "CLOUDCART_DELETE_VARIANT_PARAMETER", "name": "Delete Variant Parameter", "description": "Tool to delete a variant parameter by its ID. Use when you need to permanently remove a variant parameter from the CloudCart store. The API returns 204 No Content on successful deletion." }, { "slug": "CLOUDCART_DELETE_VENDOR", "name": "Delete Vendor", "description": "Delete a vendor by its ID from the CloudCart store. This operation permanently removes the vendor record. The API returns 204 No Content on successful deletion. Use this tool when you need to remove obsolete vendors, clean up test data, or manage vendor records in your store." }, { "slug": "CLOUDCART_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its ID from the CloudCart store. Use when you need to remove webhooks that are no longer needed or to clean up webhook subscriptions." }, { "slug": "CLOUDCART_GENERATE_DISCOUNT_CODES", "name": "Generate Discount Codes", "description": "Tool to generate multiple discount codes with a specified discount percentage. Use when you need to create multiple promotional codes with the same discount value. The discount value is multiplied by 100 (e.g., 1000 = 10%, 2500 = 25%)." }, { "slug": "CLOUDCART_GET_BLOG_AUTHOR", "name": "Get Blog Author", "description": "Tool to retrieve details of a specific blog author by ID. Use when you need information about a blog author." }, { "slug": "CLOUDCART_GET_BLOG_CATEGORY", "name": "Get Blog Category", "description": "Tool to retrieve details of a specific blog category by ID. Use when you need information about a particular blog category." }, { "slug": "CLOUDCART_GET_BLOG_POST", "name": "Get Blog Post", "description": "Tool to retrieve a single blog post by its ID. Use when you need detailed information about a specific blog post including title, content, author, publish date, and images." }, { "slug": "CLOUDCART_GET_BLOG_TAG", "name": "Get Blog Tag", "description": "Tool to retrieve details of a specific blog tag by ID. Use when you need to fetch information about a particular tag." }, { "slug": "CLOUDCART_GET_CART", "name": "Get Cart", "description": "Tool to retrieve the current shopping cart. Use when you need to view or verify the cart contents before checkout." }, { "slug": "CLOUDCART_GET_CATEGORIES", "name": "Get Categories", "description": "Tool to retrieve a list of all categories. Use when you need to list available categories for selection. Returns numeric category IDs; use these IDs directly (not names or slugs) when setting categories in other tools like CLOUDCART_CREATE_PRODUCT." }, { "slug": "CLOUDCART_GET_CATEGORIES_PROPERTIES", "name": "Get Category Properties", "description": "Tool to retrieve properties relationship for a category. Use when you need to get the list of properties assigned to a specific category." }, { "slug": "CLOUDCART_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve details of a specific category by ID. Use when you need information about a single category." }, { "slug": "CLOUDCART_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to retrieve details of a specific customer by ID. Use when you need information about a single customer." }, { "slug": "CLOUDCART_GET_CUSTOMER_BILLING_ADDRESS", "name": "Get Customer Billing Address", "description": "Tool to retrieve a specific customer billing address by its ID. Use when you need to fetch details of a particular billing address including country, state, city, street information, and contact details. Optionally include related customer data using the 'include' parameter." }, { "slug": "CLOUDCART_GET_CUSTOMER_GROUP", "name": "Get Customer Group", "description": "Tool to retrieve details of a specific customer group by ID. Use when you need to fetch information about a particular customer group." }, { "slug": "CLOUDCART_GET_CUSTOMER_GROUPS_CUSTOMERS", "name": "Get Customer Groups Customers", "description": "Tool to retrieve customers from a specific customer group. Use when you need to list all customers belonging to a particular group." }, { "slug": "CLOUDCART_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to retrieve a list of all customers. Use when you need to display or process multiple customer profiles. Note: The response is paginated; use page[number] and page[size] to control pagination." }, { "slug": "CLOUDCART_GET_CUSTOMER_SHIPPING_ADDRESS", "name": "Get Customer Shipping Address", "description": "Tool to retrieve a single customer shipping address by ID. Use when you need details about a specific shipping address. Optionally include related customer data or filter specific fields to return only needed attributes." }, { "slug": "CLOUDCART_GET_CUSTOMER_TAG", "name": "Get Customer Tag", "description": "Tool to retrieve details of a specific customer tag. Use when you have the customer tag ID and need to get its details." }, { "slug": "CLOUDCART_GET_IMAGE", "name": "Get Image", "description": "Tool to retrieve details of a specific image by ID. Use when you need information about a single image including its dimensions, URLs, thumbnails, and related product." }, { "slug": "CLOUDCART_GET_ORDERS", "name": "Get Orders", "description": "Retrieve a paginated list of orders from your CloudCart store. Returns order details including order ID, status, total amount, currency, and creation/update timestamps. Supports pagination through page[number] (starting from 1) and page[size] (items per page) parameters. Use this action to list all orders, check order statuses, retrieve order histories, or process orders programmatically. The response includes pagination metadata (current page, total orders, total pages) and navigation links for easy pagination handling." }, { "slug": "CLOUDCART_GET_PAYMENT_METHODS", "name": "Get Payment Methods", "description": "Tool to retrieve all available payment methods. Use when you need to list supported payment options before checkout." }, { "slug": "CLOUDCART_GET_PRODUCTS", "name": "Get Products", "description": "Tool to retrieve a list of products with optional filters. Use when you need a paginated catalog of products (e.g., by page, category, price range)." }, { "slug": "CLOUDCART_GET_PRODUCTS_LINKED_PRODUCT", "name": "Get Products Linked Product", "description": "Tool to retrieve linked products for a specific product. Use when you need to get related or complementary products that are associated with a main product." }, { "slug": "CLOUDCART_GET_PRODUCTS_LINKED_PRODUCTS", "name": "Get Products Linked Products", "description": "Tool to retrieve linked products for a specific product. Use when you need to find products that are associated or related to a given product, such as complementary items or product recommendations." }, { "slug": "CLOUDCART_GET_PRODUCT_WITH_RELATIONS", "name": "Get Product With Relations", "description": "Retrieves detailed information about a specific product including its relationships (category, vendor, variants). Use this action when you need comprehensive product details after obtaining a product ID from the Get Products action. Returns product attributes (name, description, pricing, status) and related entity references." }, { "slug": "CLOUDCART_GET_PROPERTY", "name": "Get Property", "description": "Tool to retrieve details of a specific property by ID. Use when you need information about a single property." }, { "slug": "CLOUDCART_GET_PROPERTY_OPTION", "name": "Get Property Option", "description": "Tool to retrieve details of a specific property option by ID. Use when you need information about a single property option." }, { "slug": "CLOUDCART_GET_PROPERTY_OPTIONS_RELATIONSHIP", "name": "Get Property Options Relationship", "description": "Tool to retrieve property options relationship for a product. Use when you need to fetch which property options are assigned to a product after confirming it exists." }, { "slug": "CLOUDCART_GET_SHIPPING_METHODS", "name": "Get Shipping Methods", "description": "Tool to retrieve all available shipping methods. Use when you need to list shipping options before checkout." }, { "slug": "CLOUDCART_GET_SUBSCRIBER", "name": "Get Subscriber", "description": "Tool to retrieve details of a specific subscriber by ID. Use when you need information about a single subscriber including their engagement metrics and subscription details." }, { "slug": "CLOUDCART_GET_SUBSCRIBERS_CHANNEL", "name": "Get Subscribers Channel", "description": "Tool to retrieve a single subscriber channel by its ID. Use when you need details about a specific subscriber's communication channel. Returns channel information including type, identifier, verification status, and marketing preferences." }, { "slug": "CLOUDCART_GET_SUBSCRIBERS_TAG", "name": "Get Subscriber Tag", "description": "Tool to retrieve details of a specific subscriber tag by ID. Use when you need to get information about a subscriber tag association." }, { "slug": "CLOUDCART_GET_VARIANT", "name": "Get Variant", "description": "Tool to retrieve details of a specific variant by ID. Use when you need information about a single product variant." }, { "slug": "CLOUDCART_GET_VARIANT_OPTION", "name": "Get Variant Option", "description": "Tool to retrieve a specific variant option by its ID. Use when you need details about a particular variant option such as its name, sort order, color, visibility, or associated parameter." }, { "slug": "CLOUDCART_GET_VARIANT_PARAMETER", "name": "Get Variant Parameter", "description": "Tool to retrieve details of a specific variant parameter by ID. Use when you need information about a single variant parameter." }, { "slug": "CLOUDCART_GET_VENDOR", "name": "Get Vendor", "description": "Tool to retrieve details of a specific vendor. Use when you have the vendor ID." }, { "slug": "CLOUDCART_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by ID. Use when you need information about a webhook configuration." }, { "slug": "CLOUDCART_LIST_BLOG_CATEGORIES", "name": "List Blog Categories", "description": "Tool to retrieve all blog categories with optional pagination, sorting, and filtering. Use when you need to list blog categories or get blog category information for content organization." }, { "slug": "CLOUDCART_LIST_BLOG_POSTS", "name": "List Blog Posts", "description": "Tool to retrieve a list of all blog posts. Use when you need a paginated list of blog posts with optional filtering and sorting. Example: \"List recent blog posts on page 1.\"" }, { "slug": "CLOUDCART_LIST_BLOG_TAGS", "name": "List Blog Tags", "description": "Tool to retrieve all blog tags from CloudCart. Use when you need to list available blog tags for filtering or selection. Supports pagination, sorting, and filtering." }, { "slug": "CLOUDCART_LIST_CUSTOMER_BILLING_ADDRESS", "name": "List Customer Billing Addresses", "description": "Tool to retrieve a list of all customer billing addresses. Use when you need to access billing address information for customers. The response is paginated; use page[number] and page[size] parameters to control pagination." }, { "slug": "CLOUDCART_LIST_CUSTOMER_GROUPS", "name": "List Customer Groups", "description": "Tool to retrieve all customer groups. Use when you need to display or process customer group information. The response is paginated; use page[number] and page[size] to control pagination." }, { "slug": "CLOUDCART_LIST_CUSTOMER_SHIPPING_ADDRESSES", "name": "List Customer Shipping Addresses", "description": "Tool to retrieve a paginated list of customer shipping addresses. Use when you need to list all shipping addresses or filter by customer ID or country. Supports pagination and sorting." }, { "slug": "CLOUDCART_LIST_CUSTOMER_TAGS", "name": "List Customer Tags", "description": "Tool to retrieve all customer tags. Use when you need to list available tags for customer categorization or filtering." }, { "slug": "CLOUDCART_LIST_DISCOUNT_CODES", "name": "List Discount Codes", "description": "Tool to retrieve all discount codes from your CloudCart store. Use when you need to list available discount codes, check their status, or manage promotions." }, { "slug": "CLOUDCART_LIST_IMAGES", "name": "List Images", "description": "Tool to retrieve all images from CloudCart. Use when you need a paginated list of images." }, { "slug": "CLOUDCART_LIST_ORDER_BILLING_ADDRESS", "name": "List Order Billing Addresses", "description": "Tool to retrieve order billing addresses (read-only). Use when you need to access billing address information associated with orders. The response is paginated; use page[number] and page[size] parameters to control pagination." }, { "slug": "CLOUDCART_LIST_ORDER_PAYMENT", "name": "List Order Payments", "description": "Retrieve payment information from orders. Since CloudCart API does not have a dedicated payments endpoint, this action fetches orders and extracts payment-related data. Use when you need to view payment status, methods, and amounts for orders." }, { "slug": "CLOUDCART_LIST_ORDER_PAYMENT2", "name": "List Order Payment V2", "description": "Tool to retrieve order payment data from the CloudCart order-payment endpoint. Use when you need to access payment transaction details including payment IDs, provider references, amounts, and statuses." }, { "slug": "CLOUDCART_LIST_ORDER_PRODUCTS", "name": "List Order Products", "description": "Retrieve all order products from your CloudCart store (read-only). Returns order product details including product ID, attributes, and relationships to orders and product options. Supports pagination through page[number] and page[size] parameters." }, { "slug": "CLOUDCART_LIST_ORDER_PRODUCTS_OPTIONS", "name": "List Order Products Options", "description": "Tool to retrieve order products options (read-only). Use when you need to list custom field options associated with products in orders." }, { "slug": "CLOUDCART_LIST_ORDER_SHIPPING", "name": "List Order Shipping", "description": "Tool to retrieve order shipping data. Use when you need to list shipping information for orders." }, { "slug": "CLOUDCART_LIST_ORDER_SHIPPING_ADDRESS", "name": "List Order Shipping Addresses", "description": "Tool to retrieve a paginated list of order shipping addresses. Use when you need to view shipping addresses associated with orders, filter by order ID, or export address data. Supports pagination and sorting." }, { "slug": "CLOUDCART_LIST_ORDER_STATUS", "name": "List Order Status", "description": "Tool to retrieve all available order statuses from CloudCart. Returns status codes, names, translations, and types (order, payment, or shipping). Use when you need to view available order statuses for filtering orders or displaying status options." }, { "slug": "CLOUDCART_LIST_PAYMENT_PROVIDERS", "name": "List Payment Providers", "description": "Tool to retrieve all payment providers (read-only). Use when you need to view configured payment providers in the store." }, { "slug": "CLOUDCART_LIST_PROPERTIES", "name": "List Properties", "description": "Tool to retrieve all properties with optional pagination. Use when you need to list available properties or get property information for product configuration." }, { "slug": "CLOUDCART_LIST_PROPERTY_OPTIONS", "name": "List Property Options", "description": "Tool to retrieve all property options with optional filtering and pagination. Use when you need to list property options or filter by property ID." }, { "slug": "CLOUDCART_LIST_REDIRECTS", "name": "List Redirects", "description": "Tool to retrieve all redirects from CloudCart. Use when you need to view URL redirects configured in the store." }, { "slug": "CLOUDCART_LIST_SHIPPING_PROVIDERS", "name": "List Shipping Providers", "description": "Tool to retrieve all shipping providers (read-only). Use when you need to view configured shipping providers in the store." }, { "slug": "CLOUDCART_LIST_SUBSCRIBERS", "name": "List Subscribers", "description": "Tool to retrieve all subscribers from the store. Use when you need to display or process subscriber information with engagement metrics like open rates and click rates." }, { "slug": "CLOUDCART_LIST_SUBSCRIBERS_CHANNELS", "name": "List Subscribers Channels", "description": "Tool to retrieve all subscriber channels. Use when you need to list available channels for subscriber management or filtering." }, { "slug": "CLOUDCART_LIST_SUBSCRIBERS_TAGS", "name": "List Subscribers Tags", "description": "Tool to retrieve all subscriber tags. Use when you need to list tag associations for subscribers with flexible organization through customizable labeling. Supports pagination, filtering, and sorting." }, { "slug": "CLOUDCART_LIST_VARIANT_OPTIONS", "name": "List Variant Options", "description": "Tool to retrieve all variant options. Use when you need to list available variant options with optional pagination." }, { "slug": "CLOUDCART_LIST_VARIANT_PARAMETERS", "name": "List Variant Parameters", "description": "Tool to retrieve all variant parameters with pagination support. Use when you need to list product variant configuration options like size, color, or other custom attributes." }, { "slug": "CLOUDCART_LIST_VARIANTS", "name": "List Variants", "description": "Tool to retrieve all product variants with optional pagination and filtering. Use when you need to list variants across products or filter by specific item ID or SKU." }, { "slug": "CLOUDCART_LIST_VENDORS", "name": "List Vendors", "description": "Tool to retrieve a list of all vendors. Use when you need a paginated list of vendors or filter by name/status. Example: \"List active vendors on page 2.\"" }, { "slug": "CLOUDCART_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all webhooks. Use when you need to view configured webhooks, check webhook events, or manage webhook subscriptions." }, { "slug": "CLOUDCART_REMOVE_FROM_CART", "name": "Remove from Cart", "description": "Tool to remove an item from the cart. Use after confirming the product exists in the cart to delete it." }, { "slug": "CLOUDCART_UPDATE_BLOG_CATEGORY", "name": "Update Blog Category", "description": "Tool to update an existing blog category. Use when you need to modify blog category details such as name, SEO settings, or image." }, { "slug": "CLOUDCART_UPDATE_BLOG_POST", "name": "Update Blog Post", "description": "Tool to update an existing blog post. Use when you need to modify the title or content of a blog post. Requires the blog post ID and at least one field to update (name or content)." }, { "slug": "CLOUDCART_UPDATE_BLOG_TAG", "name": "Update Blog Tag", "description": "Tool to update an existing blog tag. Use when you need to modify a blog tag's name or label." }, { "slug": "CLOUDCART_UPDATE_CART_ITEM", "name": "Update Cart Item", "description": "Tool to update the quantity of an item in the cart. Use when you need to adjust item quantities in the cart before checkout." }, { "slug": "CLOUDCART_UPDATE_CATEGORY", "name": "Update Category", "description": "Tool to update an existing category. Use when you need to modify category details after reviewing its current values." }, { "slug": "CLOUDCART_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Updates an existing customer's information in CloudCart. You can modify customer details such as first name, last name, email, password, and alternative phone number. All update fields are optional - only provide the fields you want to update." }, { "slug": "CLOUDCART_UPDATE_CUSTOMER_BILLING_ADDRESS", "name": "Update Customer Billing Address", "description": "Tool to update an existing customer billing address in CloudCart. Use when you need to modify billing address details such as phone, location, or contact information. All update fields are optional - only provide the fields you want to update." }, { "slug": "CLOUDCART_UPDATE_CUSTOMER_GROUP", "name": "Update Customer Group", "description": "Tool to update an existing customer group's name. Use when you need to modify a customer group's details after reviewing its current values." }, { "slug": "CLOUDCART_UPDATE_CUSTOMER_SHIPPING_ADDRESS", "name": "Update Customer Shipping Address", "description": "Tool to update an existing customer shipping address in CloudCart. Use when you need to modify address details such as phone, name, or location fields. All update fields are optional - only provide the fields you want to change." }, { "slug": "CLOUDCART_UPDATE_CUSTOMER_TAG", "name": "Update Customer Tag", "description": "Tool to update an existing customer tag in CloudCart. Use when you need to rename or modify a customer tag's label." }, { "slug": "CLOUDCART_UPDATE_DISCOUNT_CODE", "name": "Update Discount Code", "description": "Tool to update an existing discount code in CloudCart. Use when you need to modify discount code properties such as the code value, discount amount, or activation status. At least one optional field must be provided to perform an update." }, { "slug": "CLOUDCART_UPDATE_LINKED_PRODUCT", "name": "Update Linked Product", "description": "Updates linked product relationships for a specific product in CloudCart. This replaces all existing linked products with the provided list. Use when you need to establish product recommendations or cross-sell relationships. The two_way parameter controls bidirectional linking." }, { "slug": "CLOUDCART_UPDATE_ORDER", "name": "Update Order", "description": "Tool to update an existing order. Use when you need to modify order details after creation (e.g., change status or addresses). Provide only the fields you wish to change." }, { "slug": "CLOUDCART_UPDATE_PRODUCT", "name": "Update Product", "description": "Updates an existing product in CloudCart. Provide the product_id and at least one field to update. Returns updated product details. For variant-based products, price and stock are managed at the variant level and will return 0 in the response. Use GET_PRODUCTS or GET_PRODUCT_WITH_RELATIONS to retrieve current product details first." }, { "slug": "CLOUDCART_UPDATE_PROPERTY", "name": "Update Property", "description": "Tool to update an existing property. Use when you need to modify property details such as display type, name, or visibility settings." }, { "slug": "CLOUDCART_UPDATE_PROPERTY_OPTION", "name": "Update Property Option", "description": "Tool to update an existing property option. Use when you need to modify an option value of a product property (e.g., changing \"Red\" to \"Crimson Red\" in a \"Color\" property)." }, { "slug": "CLOUDCART_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update an existing subscriber in CloudCart. Use when you need to modify subscriber details like first name, last name, or country code. Provide the subscriber ID and the updated attributes." }, { "slug": "CLOUDCART_UPDATE_SUBSCRIBERS_CHANNEL", "name": "Update Subscribers Channel", "description": "Tool to update an existing subscriber channel in CloudCart. Use when you need to modify a subscriber's communication channel details such as contact information, marketing preferences, or verification status. All update fields are optional - only provide the fields you want to update." }, { "slug": "CLOUDCART_UPDATE_SUBSCRIBER_TAG", "name": "Update Subscriber Tag", "description": "Tool to update an existing subscriber tag association in CloudCart. Use when you need to modify which subscriber or tag is associated in a subscribers-tags relationship." }, { "slug": "CLOUDCART_UPDATE_VARIANT", "name": "Update Variant", "description": "Tool to update an existing product variant. Use when you need to modify variant details such as quantity, price, SKU, or other attributes." }, { "slug": "CLOUDCART_UPDATE_VARIANT_OPTION", "name": "Update Variant Option", "description": "Tool to update an existing variant option. Use when you need to modify a variant option's name, sort order, color, or visibility." }, { "slug": "CLOUDCART_UPDATE_VARIANT_PARAMETER", "name": "Update Variant Parameter", "description": "Tool to update an existing variant parameter for a product variant. Use when you need to modify attributes like display_type, name, sort order, or visibility." }, { "slug": "CLOUDCART_UPDATE_VENDOR", "name": "Update Vendor", "description": "Updates an existing vendor's information in CloudCart. Use this to modify a vendor's name or image URL. You can update one or both fields. Requires a valid vendor ID - obtain this from Create Vendor or List Vendors actions first. This is a partial update (PATCH) operation, so you only need to provide the fields you want to change." }, { "slug": "CLOUDCART_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in CloudCart. Use when you need to modify the webhook URL or custom request headers for webhook notifications. At least one optional field (url or request_headers) must be provided." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudcart_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "CloudCart Store Domain", "type": "string", "description": "The unique domain of your CloudCart store, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "CloudCart API Key", "type": "string", "description": "The API key used for authenticating requests to the CloudCart API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudconvert", "name": "CloudConvert", "logo": "https://logos.composio.dev/api/cloudconvert", "description": "CloudConvert is a file conversion service supporting over 200 formats, including audio, video, document, ebook, archive, image, spreadsheet, and presentation formats.", "category": "file management & storage", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDCONVERT_CREATE_EXPORT_GOOGLE_CLOUD_STORAGE_TASK", "name": "Create Export Google Cloud Storage Task", "description": "Tool to create a task to export files to a Google Cloud Storage bucket. Use after conversion when you need to store results directly into GCS. Ensure service account credentials have the proper permissions." }, { "slug": "CLOUDCONVERT_CREATE_EXPORT_S3_TASK", "name": "Create Export S3 Task", "description": "Tool to create a task to export files to an Amazon S3 bucket. Use after conversion when you need to store results directly into S3. Ensure AWS credentials have s3:PutObject (and PutObjectAcl if using non-default ACL) permissions." }, { "slug": "CLOUDCONVERT_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates a new webhook to receive CloudConvert event notifications. Use this when you need to be notified about job status changes (created, finished, or failed) via HTTP POST requests to your server." }, { "slug": "CLOUDCONVERT_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently delete a webhook by its ID. Use this when you no longer need to receive event notifications for a specific webhook. The webhook ID can be obtained from the create_webhook or list_webhooks actions." }, { "slug": "CLOUDCONVERT_LIST_OPERATIONS", "name": "List Operations", "description": "Tool to list all possible CloudConvert operations with their available options and engine details. Use when you need to discover what operations are available, check operation requirements, or filter by input/output formats before creating tasks." }, { "slug": "CLOUDCONVERT_LIST_SUPPORTED_FORMATS", "name": "List Supported Formats", "description": "Tool to list all supported conversion formats, engines, and options. Use when you need to discover available conversions before creating tasks." }, { "slug": "CLOUDCONVERT_LIST_TASKS", "name": "List Tasks", "description": "List all CloudConvert tasks with their status, payload and results. Use this tool to: - Monitor conversion task progress and status - Find tasks by status (waiting, processing, finished, error) - Filter tasks by job ID to see all tasks in a specific job - Retrieve task results and output file URLs - Debug failed conversions by checking error codes and messages Tasks are automatically deleted 24 hours after completion." }, { "slug": "CLOUDCONVERT_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks. Use when you need to retrieve existing webhooks before managing or inspecting them." }, { "slug": "CLOUDCONVERT_SHOW_USER", "name": "Show User", "description": "Retrieves the current authenticated user's CloudConvert account information. Returns the user's ID, username, email, remaining conversion credits, and account creation date. Requires the 'user.read' scope. Useful for verifying authentication and checking available credits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudconvert_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CloudConvert API Key", "type": "string", "description": "The API key used for authenticating requests to the CloudConvert API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudfill", "name": "Cloudfill", "logo": "https://logos.composio.dev/api/cloudfill", "description": "Easily create customized PDFs for your customers and leads! Use simple integrations and easy to use API to create PDF from your templates.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudfill_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CloudFill API key. To retrieve it, navigate to your CloudFill account, sign in, and go to \"Dashboard\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudflare_api_key", "name": "Cloudflare Api Key", "logo": "https://www.cloudflare.com/img/logo-cloudflare.svg", "description": "Cloudflare provides a suite of services to enhance the security, performance, and reliability of websites and applications.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDFLARE_API_KEY_CREATE_DNS_RECORD", "name": "Create DNS Record", "description": "Tool to create a new DNS record in a Cloudflare zone. Use when you need to add a record (A, CNAME, TXT, MX, etc.) to a specified zone." }, { "slug": "CLOUDFLARE_API_KEY_CREATE_LOCKDOWN_RULE", "name": "Create Zone Lockdown Rule", "description": "Tool to create a Zone Lockdown rule. Use when you need to restrict access to specific URL patterns to defined IPs/CIDR ranges. Use after confirming zone_id." }, { "slug": "CLOUDFLARE_API_KEY_CREATE_RULE_IN_RULESET", "name": "Create Rule in Ruleset", "description": "Tool to add a rule to an existing ruleset. Use when you need to append or insert a new rule in a Cloudflare ruleset." }, { "slug": "CLOUDFLARE_API_KEY_CREATE_RULESET", "name": "Create Ruleset", "description": "Creates a new Cloudflare ruleset at account or zone scope. Rulesets contain rules that control traffic behavior (firewall, rate limiting, redirects, etc.). First use List Zones to get a zone_id, then specify the phase (e.g., 'http_request_firewall_custom' for WAF rules)." }, { "slug": "CLOUDFLARE_API_KEY_DELETE_DNS_RECORD", "name": "Delete DNS Record", "description": "Tool to delete a DNS record. Use when you need to remove a specific DNS record from a zone after confirming both zone and record IDs." }, { "slug": "CLOUDFLARE_API_KEY_DELETE_DNSSEC", "name": "Delete DNSSEC", "description": "Tool to delete DNSSEC records for a zone. Use after disabling DNSSEC at the registrar to remove DNSSEC configuration." }, { "slug": "CLOUDFLARE_API_KEY_DELETE_RULE_FROM_RULESET", "name": "Delete Rule from Ruleset", "description": "Tool to delete a specific rule from a ruleset. Use when you need to remove an outdated or incorrect rule from an account or zone ruleset after confirming IDs." }, { "slug": "CLOUDFLARE_API_KEY_DELETE_RULESET", "name": "Delete Ruleset", "description": "Tool to delete all versions of a ruleset. Use when you need to remove a ruleset from an account or zone after confirming no references exist." }, { "slug": "CLOUDFLARE_API_KEY_DELETE_ZONE", "name": "Delete a zone", "description": "Tool to delete an existing zone. Use after confirming the zone_id to permanently remove the zone." }, { "slug": "CLOUDFLARE_API_KEY_GET_CLOUDFLARE_IP_ADDRESSES", "name": "Get Cloudflare IP Addresses", "description": "Tool to retrieve IP addresses used on the Cloudflare or JD Cloud network. Use when you need to obtain the list of IPv4 and IPv6 CIDR blocks used by Cloudflare's infrastructure or JD Cloud data centers." }, { "slug": "CLOUDFLARE_API_KEY_GET_ENTRYPOINT_RULESET_VERSION", "name": "Get Entrypoint Ruleset Version", "description": "Retrieves a specific historical version of an entry point ruleset from Cloudflare. Entry point rulesets are phase-specific and define the rules that execute during a particular phase of request/response processing. This tool fetches a specific version, allowing you to view rules as they existed at a particular point in time. Use cases: - Audit historical rule configurations - Compare rule changes between versions - Rollback analysis (view what rules looked like before a change) - Debug issues by examining past ruleset states Prerequisites: - Requires a valid account_id or zone_id (use List Zones to get zone IDs) - Requires knowing the ruleset phase (e.g., 'http_request_firewall_custom') - Requires knowing the version number to fetch" }, { "slug": "CLOUDFLARE_API_KEY_GET_LOCKDOWN_RULE", "name": "Get Lockdown Rule", "description": "Tool to get a Zone Lockdown rule. Use when you need to fetch details of a specific lockdown rule by its ID within a Cloudflare zone." }, { "slug": "CLOUDFLARE_API_KEY_GET_REGIONAL_TIERED_CACHE", "name": "Get Regional Tiered Cache", "description": "Tool to get the regional tiered cache setting for a zone. Use when you need to verify if regional tiered cache is enabled for performance optimization after zone activation." }, { "slug": "CLOUDFLARE_API_KEY_GET_RULESET", "name": "Get Ruleset", "description": "Tool to fetch the latest version of a ruleset by ID. Use after you have the ruleset scope and ID." }, { "slug": "CLOUDFLARE_API_KEY_GET_ZONE_DETAILS", "name": "Get Zone Details", "description": "Tool to get details for a specific zone. Use when you need detailed zone metadata by ID." }, { "slug": "CLOUDFLARE_API_KEY_LIST_DNS_RECORDS", "name": "List DNS Records", "description": "List, search, sort, and filter DNS records for a Cloudflare zone. Use this tool to retrieve DNS records (A, AAAA, CNAME, TXT, MX, etc.) for a zone. Supports filtering by record type, name, content, and proxy status. Results are paginated; use page and per_page parameters for large record sets. Requires a valid zone_id which can be obtained from the List Zones action." }, { "slug": "CLOUDFLARE_API_KEY_LIST_ZONES", "name": "List Cloudflare Zones", "description": "Tool to list, search, sort, and filter Cloudflare zones. Use when you need to retrieve a paginated list of zones available to the authenticated user." }, { "slug": "CLOUDFLARE_API_KEY_OVERWRITE_DNS_RECORD", "name": "Overwrite DNS Record", "description": "Tool to completely overwrite a DNS record. Use when you need to replace all record details after confirming record type and name." }, { "slug": "CLOUDFLARE_API_KEY_RERUN_ZONE_ACTIVATION_CHECK", "name": "Rerun Zone Activation Check", "description": "Triggers a new activation check for a zone with 'pending' status. Use this after creating a zone or updating nameservers to verify that DNS propagation is complete and the zone can be activated. Rate limits apply: once every 5 minutes for paid plans (paygo/Enterprise) or once per hour for Free plans." }, { "slug": "CLOUDFLARE_API_KEY_UPDATE_DNSSEC_STATUS", "name": "Update DNSSEC Status", "description": "Tool to update DNSSEC configuration for a zone. Use when you need to enable or disable DNSSEC or adjust DNSSEC options after confirming the zone ID." }, { "slug": "CLOUDFLARE_API_KEY_UPDATE_LOCKDOWN_RULE", "name": "Update Lockdown Rule", "description": "Tool to update a zone lockdown rule. Use when you need to modify the IP or URL settings of an existing Zone Lockdown rule after confirming the rule exists." }, { "slug": "CLOUDFLARE_API_KEY_UPDATE_RULE_IN_RULESET", "name": "Update Rule in Ruleset", "description": "Tool to update a specific rule in a ruleset. Use when you need to modify a rule's configuration or reorder it after reviewing its current settings." }, { "slug": "CLOUDFLARE_API_KEY_UPDATE_RULESET", "name": "Update Ruleset", "description": "Update a Cloudflare ruleset, creating a new version. Use this to modify ruleset description, name, or rules. IMPORTANT: When updating rules, you must include ALL rules you want to keep - any rules not included will be removed. Cannot modify managed rulesets directly - use overrides instead." }, { "slug": "CLOUDFLARE_API_KEY_UPDATE_ZONE", "name": "Update Cloudflare Zone", "description": "Tool to edit a Cloudflare zone. Use when you need to update a single zone property at a time. Ensure only one of paused, type, or vanity_name_servers is provided per call." }, { "slug": "CLOUDFLARE_API_KEY_UPLOAD_FILE_TO_S3", "name": "Upload File to S3", "description": "Tool to upload arbitrary file content to temporary storage. Use when you need to stage files for actions requiring FileUploadable." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudflare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cloudflare API Token", "type": "string", "description": "Your Cloudflare API token for authentication (recommended)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudflare_browser_rendering", "name": "Cloudflare Browser Rendering", "logo": "https://logos.composio.dev/api/cloudflare_browser_rendering", "description": "Cloudflare Browser Rendering enables developers to programmatically control and interact with headless browser instances running on Cloudflare’s global network, facilitating tasks such as automating browser interactions, capturing screenshots, generating PDFs, and extracting data from web pages.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "CLOUDFLARE_BROWSER_RENDERING_CAPTURE_SCREENSHOT", "name": "Capture Screenshot", "description": "Tool to capture a webpage screenshot. Use when you need a visual snapshot of a URL or HTML with optional viewport and clipping. Always validate screenshot content — the tool returns a successful result even when the captured page is a 404 or error page, with no error signal raised." }, { "slug": "CLOUDFLARE_BROWSER_RENDERING_LIST_ACCOUNTS", "name": "List Accounts", "description": "List all Cloudflare accounts accessible to the authenticated API token. Returns account IDs, names, types, and settings. Use this to retrieve a valid account_id required by other browser-rendering actions like capture_screenshot, scrape_html_elements, and take_webpage_snapshot." }, { "slug": "CLOUDFLARE_BROWSER_RENDERING_SCRAPE_HTML_ELEMENTS", "name": "Scrape HTML Elements", "description": "Tool to scrape HTML elements for text, HTML, attributes, and box metrics. Use when you need detailed data of matched selectors after rendering a page." }, { "slug": "CLOUDFLARE_BROWSER_RENDERING_TAKE_WEBPAGE_SNAPSHOT", "name": "Take Webpage Snapshot", "description": "Capture both rendered HTML content and a screenshot of a webpage in a single request. Returns the full DOM content as a string and a Base64-encoded screenshot image. Useful when you need both visual representation and page content for analysis." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudflare_browser_rendering_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Cloudflare Account ID", "type": "string", "description": "The unique identifier for your Cloudflare account.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Cloudflare API Token", "type": "string", "description": "The API token with 'Browser Rendering - Edit' permissions.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudinary", "name": "Cloudinary", "logo": "https://logos.composio.dev/api/cloudinary", "description": "Cloudinary is a cloud-based media management platform for uploading, storing, transforming, and delivering images and videos via CDN.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 109, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDINARY_ACTIVATE_LIVE_STREAM", "name": "Activate Live Stream", "description": "Tool to manually activate a Cloudinary live stream. Use when you need to start a live stream that is in an inactive state." }, { "slug": "CLOUDINARY_CREATE_ASSET_RELATIONS_BY_ASSET_ID", "name": "Create Asset Relations by Asset ID", "description": "Tool to add related assets by asset ID. Use when you need to create relationships between assets in Cloudinary. Can relate up to 10 assets at once to a source asset." }, { "slug": "CLOUDINARY_CREATE_ASSET_RELATIONS_BY_PUBLIC_ID", "name": "Create Asset Relations by Public ID", "description": "Tool to create relations between assets by public ID. Use when you need to link related assets together (e.g., linking subtitles to videos, or associating images with each other). Each request can relate up to 10 assets to the primary asset." }, { "slug": "CLOUDINARY_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new asset folder. Use when you need to organize assets into nested directories. Use after confirming the folder path does not already exist." }, { "slug": "CLOUDINARY_CREATE_IMAGE_FROM_TEXT", "name": "Create Image from Text", "description": "Tool to create an image from text using Cloudinary's text generation API. Use when you need to generate custom text images with specific styling options. The generated image can be customized with font, color, alignment, and other visual properties." }, { "slug": "CLOUDINARY_CREATE_LIVE_STREAM", "name": "Create Live Stream", "description": "Tool to create a new live stream in Cloudinary. Use when you need to set up a new live streaming session. The created stream will provide connection details (URI and stream key) for pushing live content." }, { "slug": "CLOUDINARY_CREATE_LIVE_STREAM_OUTPUT", "name": "Create Live Stream Output", "description": "Tool to create a new live stream output configuration. Use when you need to add an output destination to an existing live stream, such as simulcasting to YouTube, Facebook, or creating an archive." }, { "slug": "CLOUDINARY_CREATE_METADATA_FIELD", "name": "Create Metadata Field", "description": "Tool to create a new metadata field definition. Use when extending your metadata schema with new fields." }, { "slug": "CLOUDINARY_CREATE_METADATA_RULE", "name": "Create Metadata Rule", "description": "Tool to create a new conditional metadata rule. Use when you need to automatically populate metadata fields based on conditions. The rule applies a value to a target metadata field when a condition on another metadata field is met." }, { "slug": "CLOUDINARY_CREATE_MULTI_RESOURCE", "name": "Create Multi-Resource Animation", "description": "Tool to create an animated image, video, or PDF from a set of images. Use when you need to combine multiple images into an animated format. Provide either a tag (to combine all images with that tag) or a list of URLs." }, { "slug": "CLOUDINARY_CREATE_SLIDESHOW", "name": "Create Slideshow", "description": "Tool to create an auto-generated video slideshow from existing Cloudinary assets. Use when you need to compile multiple images or videos into a single video with transitions. The slideshow is created asynchronously; check status field or use notification_url for completion updates." }, { "slug": "CLOUDINARY_CREATE_STREAMING_PROFILE", "name": "Create Streaming Profile", "description": "Tool to create a new adaptive streaming profile in your Cloudinary account. Use when you need to define custom video quality settings for adaptive bitrate streaming. The profile will contain multiple representations at different resolutions and bitrates." }, { "slug": "CLOUDINARY_CREATE_TRANSFORMATION", "name": "Create Transformation", "description": "Tool to create a new named transformation by assigning a custom name to a set of transformation parameters. Use when you need to save and reuse a transformation configuration with a memorable name." }, { "slug": "CLOUDINARY_CREATE_TRIGGER", "name": "Create Trigger", "description": "Tool to create a new webhook trigger for a specified event type. Use after configuring your webhook endpoint and choosing the event type. Example: \"Create a trigger for uploads to https://example.com/hooks/cloudinary\"" }, { "slug": "CLOUDINARY_CREATE_UPLOAD_MAPPING", "name": "Create Upload Mapping", "description": "Tool to create a new upload mapping folder and URL template. Use when you need to dynamically map external URL prefixes to a Cloudinary asset folder before uploading files." }, { "slug": "CLOUDINARY_CREATE_UPLOAD_PRESET", "name": "Create Upload Preset", "description": "Tool to create a new upload preset. Use when defining centralized upload options (tags, formats, transformations, etc.) before asset uploads." }, { "slug": "CLOUDINARY_DELETE_ASSET_RELATIONS_BY_ASSET_ID", "name": "Delete Asset Relations by Asset ID", "description": "Tool to delete asset relations by asset ID. Use when you need to unrelate a specific asset from other assets." }, { "slug": "CLOUDINARY_DELETE_ASSET_RELATIONS_BY_PUBLIC_ID", "name": "Delete Asset Relations by Public ID", "description": "Tool to delete asset relations by public ID. Use when you need to unrelate assets from a specific asset." }, { "slug": "CLOUDINARY_DELETE_DERIVED_RESOURCES", "name": "Delete Derived Resources", "description": "Tool to delete derived assets. Use when you need to remove specific derived assets by their IDs. Example: \"Delete derived assets with IDs [id1, id2]\"." }, { "slug": "CLOUDINARY_DELETE_ENTRIES_IN_METADATA_FIELD_DATASOURCE", "name": "Delete Metadata Field Datasource Entries", "description": "Tool to delete datasource entries for a specified metadata field. Use when you need to soft-delete (inactivate) specific entries in a field's datasource. Example prompt: \"Delete entries ['color1','color2'] from metadata field 'color_id'\"" }, { "slug": "CLOUDINARY_DELETE_FOLDER", "name": "Delete Folder", "description": "Tool to delete an empty asset folder. Use when the folder is confirmed empty and you need to remove it." }, { "slug": "CLOUDINARY_DELETE_LIVE_STREAM", "name": "Delete Live Stream", "description": "Tool to delete a live stream from Cloudinary. Use when you need to permanently remove a live stream that is no longer needed." }, { "slug": "CLOUDINARY_DELETE_LIVE_STREAM_OUTPUT", "name": "Delete Live Stream Output", "description": "Tool to delete a live stream output from Cloudinary. Use when you need to remove a specific output configuration from a live stream." }, { "slug": "CLOUDINARY_DELETE_METADATA_FIELD", "name": "Delete Metadata Field", "description": "Tool to delete a metadata field by external ID. Use when you need to remove a metadata field that is no longer required." }, { "slug": "CLOUDINARY_DELETE_METADATA_RULE", "name": "Delete Metadata Rule", "description": "Tool to delete a conditional metadata rule by its ID. Use when you need to remove a metadata rule that is no longer required." }, { "slug": "CLOUDINARY_DELETE_RESOURCES_BY_ASSET_ID", "name": "Delete Resources by Asset ID", "description": "Tool to delete resources by asset IDs. Use when you need to permanently remove specific resources by their immutable asset IDs; irreversible." }, { "slug": "CLOUDINARY_DELETE_RESOURCES_BY_PUBLIC_ID", "name": "Delete Resources by Public ID", "description": "Tool to delete Cloudinary resources by public ID, prefix, or all resources. Use when you need to permanently remove specific assets by their public IDs, or bulk delete by prefix pattern. Deletion is irreversible." }, { "slug": "CLOUDINARY_DELETE_RESOURCES_BY_TAGS", "name": "Delete Resources by Tags", "description": "Tool to delete Cloudinary assets by tag. Use when you need to remove all assets associated with a given tag." }, { "slug": "CLOUDINARY_DELETE_STREAMING_PROFILE", "name": "Delete Streaming Profile", "description": "Tool to delete a custom streaming profile or revert a built-in profile to original settings. Use when you need to remove a custom profile that is no longer needed." }, { "slug": "CLOUDINARY_DELETE_TRANSFORMATION2", "name": "Delete Transformation (v2)", "description": "Tool to delete a named transformation from your Cloudinary account. Use when you need to remove a transformation that is no longer required." }, { "slug": "CLOUDINARY_DELETE_TRIGGER", "name": "Delete Trigger", "description": "Tool to delete a trigger (webhook notification). Use when you need to remove a trigger by its ID after confirming the correct ID." }, { "slug": "CLOUDINARY_DELETE_UPLOAD_MAPPING", "name": "Delete Upload Mapping", "description": "Tool to delete a folder upload mapping. Use when you need to remove an existing upload mapping configuration." }, { "slug": "CLOUDINARY_DELETE_UPLOAD_PRESET", "name": "Delete Upload Preset", "description": "Tool to delete an upload preset from the account. Use when you need to remove an upload preset that is no longer needed." }, { "slug": "CLOUDINARY_DESTROY_ASSET", "name": "Destroy Asset", "description": "Tool to permanently destroy a Cloudinary asset/resource by public ID. Use when you need to permanently delete a specific asset. This operation is irreversible and removes the asset from Cloudinary storage." }, { "slug": "CLOUDINARY_DESTROY_ASSET_BY_ID", "name": "Destroy Asset by ID", "description": "Tool to delete an asset by its immutable asset ID. Use when you need to permanently remove a specific asset using its asset ID; operation is irreversible." }, { "slug": "CLOUDINARY_EXPLICIT_RESOURCE", "name": "Explicit Resource Update", "description": "Tool to update an existing asset and/or eagerly generate derived transformations using Cloudinary's Explicit API. Use when you need to pre-generate transformations, update metadata, move assets to new folders, or modify tags on already-uploaded resources." }, { "slug": "CLOUDINARY_EXPLODE_RESOURCE", "name": "Explode Multi-Page Resource", "description": "Tool to create derived images from multi-page files (PDF, PSD, TIFF, animated GIF) by exploding them into separate images. Use when you need to extract individual pages or frames from a multi-page resource. The operation is asynchronous and returns a batch_id for tracking." }, { "slug": "CLOUDINARY_GENERATE_ARCHIVE", "name": "Generate Archive", "description": "Tool to create an archive (ZIP or TGZ file) containing a set of assets from your Cloudinary environment. Use when you need to download multiple assets as a single archive file. Supports filtering by tags, public IDs, or prefixes. The archive is created asynchronously if async=true; use notification_url to receive completion notifications." }, { "slug": "CLOUDINARY_GENERATE_SPRITE", "name": "Generate Sprite", "description": "Tool to generate sprites by merging multiple images into a single large image. Use when you need to combine multiple images for efficient web delivery. Note: This API was deprecated in 2025 and may not be available in all Cloudinary accounts." }, { "slug": "CLOUDINARY_GET_ADAPTIVE_STREAMING_PROFILES", "name": "Get Adaptive Streaming Profiles", "description": "Tool to list adaptive streaming profiles. Use when retrieving built-in and custom adaptive streaming profiles for delivering video via HLS or DASH." }, { "slug": "CLOUDINARY_GET_ANALYSIS_TASK_STATUS", "name": "Get Analysis Task Status", "description": "Tool to get the status of an analysis task. Use when you need to check the progress or completion status of a previously submitted analysis task." }, { "slug": "CLOUDINARY_GET_CONFIG", "name": "Get product environment config details", "description": "Tool to get product environment config details. Use when you need to fetch or verify environment configuration such as folder_mode. Config values like folder_mode constrain uploads, folder creation, and preset creation — check this config before those operations to avoid mode conflicts." }, { "slug": "CLOUDINARY_GET_LIVE_STREAM", "name": "Get Live Stream", "description": "Tool to get details of a single live stream by ID. Use when you need to retrieve configuration, status, and metadata of an existing live stream." }, { "slug": "CLOUDINARY_GET_LIVE_STREAM_OUTPUT", "name": "Get Live Stream Output", "description": "Tool to get details of a single live stream output. Use when you need information about a specific output configuration for a live stream." }, { "slug": "CLOUDINARY_GET_LIVE_STREAM_OUTPUTS", "name": "Get Live Stream Outputs", "description": "Tool to get a list of live stream outputs. Use when you need to retrieve all outputs configured for a specific live stream in Cloudinary." }, { "slug": "CLOUDINARY_GET_LIVE_STREAMS", "name": "Get Live Streams", "description": "Tool to get a list of live streams from Cloudinary. Use when you need to retrieve all configured live streams for your account." }, { "slug": "CLOUDINARY_GET_METADATA_FIELD_BY_ID", "name": "Get Metadata Field By ID", "description": "Tool to get a single metadata field definition by external ID. Use after creating or updating a metadata field to fetch its full definition. Example: \"Get metadata field definition for external ID 'color_id'.\"" }, { "slug": "CLOUDINARY_GET_RESOURCE_BY_ASSET_ID", "name": "Get Resource by Asset ID", "description": "Get Resource by Asset ID" }, { "slug": "CLOUDINARY_GET_RESOURCE_BY_PUBLIC_ID", "name": "Get Resource by Public ID", "description": "Tool to get details of a single resource by public ID. All three of resource_type, type, and public_id must exactly match the stored asset's values; a mismatch in any one causes lookup failure even if the asset exists under a different combination. Returns full asset, derived, and related info." }, { "slug": "CLOUDINARY_GET_RESOURCES_BY_ASSET_FOLDER", "name": "Get Resources by Asset Folder", "description": "Tool to list assets stored directly in a specified folder. Use when you need to view assets in a specific folder without including subfolder contents." }, { "slug": "CLOUDINARY_GET_RESOURCES_BY_CONTEXT", "name": "Get Resources by Context", "description": "Tool to retrieve assets with a specified contextual metadata key/value. Use when filtering resources by context metadata. Empty `resources` array indicates no matches, not an error. Enable `context`, `metadata`, `tags`, or `moderations` only when needed; use `fields` to limit payload size." }, { "slug": "CLOUDINARY_GET_RESOURCES_IN_MODERATION", "name": "Get Resources in Moderation", "description": "Tool to retrieve assets in a moderation queue by status. Use after moderation to process pending or reviewed assets." }, { "slug": "CLOUDINARY_GET_ROOT_FOLDERS", "name": "Get Root Folders", "description": "Tool to list all root folders in the product environment. Use when you need to retrieve top-level asset folders." }, { "slug": "CLOUDINARY_GET_STREAMING_PROFILE_DETAILS", "name": "Get Streaming Profile Details", "description": "Tool to get details of a single streaming profile by name. Use when you need to inspect an existing profile's configuration before making changes. Example: \"Get details of streaming profile 'hd'.\"" }, { "slug": "CLOUDINARY_GET_TAGS", "name": "Get Resource Tags", "description": "Tool to list all tags used for a specified resource type. Use when you need to retrieve or page through the tags assigned to your assets." }, { "slug": "CLOUDINARY_GET_TRANSFORMATION", "name": "Get Transformation", "description": "Tool to retrieve details of a specific transformation. Use when you need to get information about a named transformation or transformation string, including its parameters, derived resources, and usage status." }, { "slug": "CLOUDINARY_GET_TRANSFORMATIONS", "name": "Get Transformations", "description": "Tool to list all transformations (named and unnamed). Use when you need to retrieve transformation definitions or paginate through transformation records." }, { "slug": "CLOUDINARY_GET_TRIGGERS", "name": "List Webhook Triggers", "description": "Tool to list all webhook triggers for event types in your environment. Use when you need to retrieve or filter existing triggers by type." }, { "slug": "CLOUDINARY_GET_UPLOAD_MAPPING_DETAILS", "name": "Get Upload Mapping Details", "description": "Tool to retrieve details of a single upload mapping by folder. Use when you need the URL prefix template associated with a specific mapping folder." }, { "slug": "CLOUDINARY_GET_UPLOAD_MAPPINGS", "name": "Get Upload Mappings", "description": "Tool to list all upload mappings. Use when you need to retrieve and paginate through upload mapping configurations. For details of a specific mapping, use CLOUDINARY_GET_UPLOAD_MAPPING_DETAILS." }, { "slug": "CLOUDINARY_GET_UPLOAD_PRESET", "name": "Get Upload Preset", "description": "Tool to retrieve details of a single upload preset by name. Use when you need to inspect an existing preset's configuration." }, { "slug": "CLOUDINARY_GET_USAGE", "name": "Get Usage", "description": "Tool to get product environment usage details. Use when you need to monitor your Cloudinary account storage, bandwidth, requests, and other usage limits. Exceeding these limits can silently block uploads and other operations; check usage when operations fail unexpectedly to rule out cap exhaustion." }, { "slug": "CLOUDINARY_GET_VIDEO_VIEWS", "name": "Get Video Views", "description": "Tool to get video analytics views from Cloudinary. Use when you need to retrieve video viewing statistics including watch time, viewer location, and device information." }, { "slug": "CLOUDINARY_IDLE_LIVE_STREAM", "name": "Idle Live Stream", "description": "Tool to manually idle a Cloudinary live stream. Use when you need to put an active live stream into idle state without stopping it completely." }, { "slug": "CLOUDINARY_LIST_IMAGES", "name": "List Images", "description": "Tool to list image assets from Cloudinary. Use when you need to retrieve a list of image resources, with optional filtering by prefix, tags, or public IDs. Supports pagination for large result sets." }, { "slug": "CLOUDINARY_LIST_METADATA_FIELDS", "name": "List Metadata Fields", "description": "Tool to list all structured metadata fields defined in your Cloudinary product environment. Use to retrieve metadata schema definitions, optionally filtered by external IDs." }, { "slug": "CLOUDINARY_LIST_METADATA_RULES", "name": "List Metadata Rules", "description": "Tool to retrieve all conditional metadata rules defined in your Cloudinary account. Use when you need to list or audit metadata rules that automatically apply values to assets based on conditions." }, { "slug": "CLOUDINARY_LIST_RAW_FILES", "name": "List Raw Files", "description": "Tool to list raw assets from Cloudinary. Use when you need to retrieve raw files with optional filtering by prefix, tags, or public IDs." }, { "slug": "CLOUDINARY_LIST_RESOURCES_BY_ASSET_IDS", "name": "List Resources by Asset IDs", "description": "Tool to retrieve multiple resources by their asset IDs. Use when you need to fetch details for multiple specific assets (up to 100) by their immutable asset IDs." }, { "slug": "CLOUDINARY_LIST_RESOURCES_BY_EXTERNAL_IDS", "name": "List Resources by External IDs", "description": "Tool to retrieve resources by their external IDs. Use when you need to fetch multiple resources using external identifiers assigned during upload." }, { "slug": "CLOUDINARY_LIST_RESOURCES_BY_TAG", "name": "List Resources by Tag", "description": "Tool to list resources (assets) with a specified tag. Use when you need to retrieve assets filtered by tag value." }, { "slug": "CLOUDINARY_LIST_RESOURCES_BY_TYPE", "name": "List Resources by Type", "description": "Tool to retrieve resources (assets) by resource type and storage type. Use when you need to list all assets of a specific type (image, video, raw) and storage method (upload, private, etc.)." }, { "slug": "CLOUDINARY_LIST_RESOURCE_TYPES", "name": "List Resource Types", "description": "Tool to list all available resource types in your Cloudinary product environment. Use when you need to discover which resource types are available." }, { "slug": "CLOUDINARY_LIST_UPLOAD_PRESETS", "name": "List Upload Presets", "description": "Tool to list all upload presets configured in the account. Use when you need to retrieve and paginate through upload preset configurations. For creating a new upload preset, use CLOUDINARY_CREATE_UPLOAD_PRESET." }, { "slug": "CLOUDINARY_LIST_VIDEOS", "name": "List Video Assets", "description": "Tool to list video assets from Cloudinary. Use when you need to retrieve video assets with optional filtering by prefix, public IDs, tags, or timestamps." }, { "slug": "CLOUDINARY_MANAGE_CONTEXT", "name": "Manage Context Metadata", "description": "Tool to add or remove contextual metadata on Cloudinary assets. Use when you need to manage custom context key-value pairs on existing assets." }, { "slug": "CLOUDINARY_ORDER_METADATA_FIELD_DATASOURCE", "name": "Order Metadata Field Datasource", "description": "Tool to update ordering of a metadata field datasource. Use when you need to reorder enum or set values for a metadata field datasource before updating assets." }, { "slug": "CLOUDINARY_PING_CLOUDINARY_SERVERS", "name": "Ping Cloudinary Servers", "description": "Tool to ping Cloudinary servers. Use when testing API reachability and authentication." }, { "slug": "CLOUDINARY_PUBLISH_RESOURCES", "name": "Publish Resources", "description": "Tool to publish Cloudinary assets by public IDs, prefix, or tag. Use when you need to make authenticated or private assets publicly accessible." }, { "slug": "CLOUDINARY_RENAME_RESOURCE", "name": "Rename or Move Resource Public ID", "description": "Tool to rename an asset's public ID using Cloudinary's rename endpoint. Use when reorganizing resources by changing public_id without re-uploading. Note: renaming changes URLs; optionally invalidate CDN caches." }, { "slug": "CLOUDINARY_REORDER_METADATA_FIELD", "name": "Reorder Metadata Field", "description": "Tool to change the position of a specific metadata field. Use when you need to reorder a single metadata field to a specific position in the list." }, { "slug": "CLOUDINARY_REORDER_METADATA_FIELDS", "name": "Reorder Metadata Fields", "description": "Tool to reorder all metadata fields in the product environment. Use when you need to change the display order of metadata fields based on label, creation date, or external ID." }, { "slug": "CLOUDINARY_RESTORE_ENTRIES_IN_METADATA_FIELD_DATASOURCE", "name": "Restore Metadata Field Datasource Entries", "description": "Tool to restore previously deleted datasource entries for a metadata field. Use after deleting entries to reactivate soft-deleted datasource entries." }, { "slug": "CLOUDINARY_RESTORE_RESOURCES", "name": "Restore Deleted Resources", "description": "Tool to restore deleted Cloudinary resources by public IDs. Use when you need to recover previously deleted assets that have backups available. Only works if backups were enabled when the resources were deleted." }, { "slug": "CLOUDINARY_RESTORE_RESOURCES_BY_ASSET_IDS", "name": "Restore Resources by Asset IDs", "description": "Tool to restore backed up assets by asset IDs. Use when you need to restore previously backed up resources from their immutable asset IDs. The API processes each asset ID independently; some may succeed while others fail." }, { "slug": "CLOUDINARY_SEARCH_ASSETS", "name": "Search Assets", "description": "Tool to search and filter assets using powerful query expressions. Use when you need to find specific assets by resource type, tags, metadata, or other attributes with sorting and pagination support." }, { "slug": "CLOUDINARY_SEARCH_DATASOURCE_IN_METADATA_FIELD", "name": "Search Datasource in Metadata Field", "description": "Tool to search datasource values in a metadata field. Use when looking for specific values in enum or set metadata fields." }, { "slug": "CLOUDINARY_SEARCH_FOLDERS", "name": "Search Folders", "description": "Tool to search asset folders with filtering, sorting, and pagination. Use when you need to locate specific folders by name, path, or creation date." }, { "slug": "CLOUDINARY_SEARCH_METADATA_FIELD_DATASOURCE", "name": "Search All Metadata Field Datasources", "description": "Tool to search across all metadata field datasources. Use when you need to find values across multiple metadata fields without knowing the specific field ID." }, { "slug": "CLOUDINARY_SEARCH_VISUAL_ASSETS", "name": "Visual Search Assets", "description": "Tool to find images in your asset library based on visual similarity or content. Use when searching for visually similar images using an image URL, an existing asset, or a text description." }, { "slug": "CLOUDINARY_SHOW_FOLDER", "name": "Show Folder", "description": "Tool to list sub-folders within a specified folder. Use when you need to explore folder hierarchy or list nested folders." }, { "slug": "CLOUDINARY_UPDATE_ASSET_METADATA", "name": "Update Asset Metadata", "description": "Tool to populate or update metadata field values on one or more Cloudinary assets. Use when you need to set structured metadata on existing assets using their public IDs." }, { "slug": "CLOUDINARY_UPDATE_FOLDER", "name": "Update Folder", "description": "Tool to rename or move an existing asset folder. Use when you need to change the folder's name or location." }, { "slug": "CLOUDINARY_UPDATE_LIVE_STREAM", "name": "Update Live Stream", "description": "Tool to update a live stream's configuration in Cloudinary. Use when you need to modify the name, idle timeout, or maximum runtime of an existing live stream." }, { "slug": "CLOUDINARY_UPDATE_LIVE_STREAM_OUTPUT", "name": "Update Live Stream Output", "description": "Tool to modify an existing live stream output configuration. Use when you need to update the name, URI, stream key, or other settings of a live stream output. Note: Default HLS and archive outputs cannot be updated; only custom simulcast outputs can be modified." }, { "slug": "CLOUDINARY_UPDATE_METADATA_FIELD", "name": "Update Metadata Field", "description": "Tool to update a metadata field definition by external ID. Use when modifying an existing schema field (e.g., changing label or validation) without redefining all properties." }, { "slug": "CLOUDINARY_UPDATE_METADATA_FIELD_DATASOURCE", "name": "Update Metadata Field Datasource", "description": "Tool to update the datasource (allowed values) for a metadata field. Use when replacing or modifying the predefined list of values for enum or set type metadata fields." }, { "slug": "CLOUDINARY_UPDATE_METADATA_RULE", "name": "Update Metadata Rule", "description": "Tool to update an existing conditional metadata rule. Use when you need to modify the name, condition, result, state, or position of a metadata rule." }, { "slug": "CLOUDINARY_UPDATE_RESOURCE_BY_ASSET_ID", "name": "Update Resource by Asset ID", "description": "Tool to update asset properties by asset ID in Cloudinary. Use when you need to modify tags, metadata, display name, or other asset properties using the immutable asset ID." }, { "slug": "CLOUDINARY_UPDATE_RESOURCE_BY_PUBLIC_ID", "name": "Update Resource by Public ID", "description": "Tool to update asset properties by public ID in Cloudinary. Use when you need to modify tags, metadata, display name, or other asset properties without re-uploading." }, { "slug": "CLOUDINARY_UPDATE_RESOURCE_TAGS", "name": "Update Resource Tags", "description": "Tool to add, remove, replace, or remove all tags for one or more Cloudinary assets. Use when you need to manage tags on existing assets without re-uploading them. Constraint: Maximum 1000 total operations (public_ids * tags <= 1000)." }, { "slug": "CLOUDINARY_UPDATE_STREAMING_PROFILE", "name": "Update Streaming Profile", "description": "Tool to modify an existing adaptive streaming profile's configuration. Use when you need to update video quality settings for an existing profile. The updated profile will contain the new representations and display name specified in the request." }, { "slug": "CLOUDINARY_UPDATE_TRANSFORMATION2", "name": "Update Transformation (v2)", "description": "Tool to update the definition of an existing named transformation. Use when you need to modify transformation parameters or strict mode settings for a transformation." }, { "slug": "CLOUDINARY_UPDATE_TRIGGER", "name": "Update Trigger", "description": "Tool to update the callback URL of an existing webhook trigger. Use when you need to change the notification endpoint for a trigger by its ID." }, { "slug": "CLOUDINARY_UPDATE_UPLOAD_MAPPING", "name": "Update Upload Mapping", "description": "Tool to update an existing upload mapping by changing its remote URL template. Use when you need to modify the URL prefix for an existing folder mapping." }, { "slug": "CLOUDINARY_UPDATE_UPLOAD_PRESET", "name": "Update Upload Preset", "description": "Tool to update an existing upload preset's configuration settings. Use when modifying preset options like tags, transformations, or analysis features." }, { "slug": "CLOUDINARY_UPLOAD_ASSET", "name": "Upload Asset", "description": "Tool to upload media assets (images, videos, raw files) to Cloudinary. Use when you need to upload files from local storage or remote URLs. Supports both synchronous and asynchronous uploads with various transformation and analysis options." }, { "slug": "CLOUDINARY_UPLOAD_CHUNK", "name": "Upload File Chunk", "description": "Tool to upload a single chunk of a large file to Cloudinary. Use when implementing chunked upload for large files. All chunks of the same file must use the same x_unique_upload_id. The final chunk triggers processing and returns the complete upload response." }, { "slug": "CLOUDINARY_UPLOAD_FILE_AUTO_DETECT", "name": "Upload File (Auto Detect)", "description": "Tool to upload files with automatic resource type detection. Use when uploading images, videos, or raw files without specifying the type. Cloudinary automatically detects whether the file is an image, video, or raw file based on its content." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Cloud Name", "type": "string", "description": "Your Cloudinary cloud name. Found on the Programmable Media page of your Cloudinary console.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Secret", "type": "string", "description": "Your Cloudinary API secret. Found on the Programmable Media page of your Cloudinary console.", "required": true, "default": null }, { "name": "generic_id", "displayName": "API Key", "type": "string", "description": "Your Cloudinary API key. Found on the Programmable Media page of your Cloudinary console.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudlayer", "name": "Cloudlayer", "logo": "https://cloudlayer.io/logo.png", "description": "cloudlayer.io is a document and asset generation service that enables users to dynamically create PDFs and images through a REST-based API, SDKs, or no-code integrations.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDLAYER_ADD_STORAGE", "name": "Add Storage", "description": "Add a user-owned S3-compatible storage configuration for storing generated assets. This action allows Enterprise plan users to configure their own S3-compatible storage (AWS S3, DigitalOcean Spaces, Wasabi, MinIO, etc.) instead of using the built-in cloud storage included with Cloudlayer accounts. Note: User storage is only available on Enterprise plans. Standard plans will receive an 'allowed: false' response indicating the feature requires a plan upgrade." }, { "slug": "CLOUDLAYER_CONVERT_HTML_TO_IMAGE", "name": "Convert HTML to Image (V2)", "description": "Convert HTML content to an image (PNG, JPG, or WebP) using the v2 API endpoint. Renders the provided HTML string using a headless browser and returns job details with the generated image asset. Supports various rendering options including viewport configuration, transparency, auto-scroll, and custom wait conditions." }, { "slug": "CLOUDLAYER_CONVERT_HTML_TO_PDF_V2", "name": "Convert HTML to PDF (v2)", "description": "Tool to convert HTML content to PDF using CloudLayer v2 API. Use when you need to generate a PDF from raw HTML with advanced options like custom paper size, margins, headers/footers, and viewport settings. The HTML is automatically Base64 encoded before sending to the API." }, { "slug": "CLOUDLAYER_CONVERT_URL_TO_PDF_GET", "name": "Convert URL to PDF (Simple)", "description": "Tool to convert a URL to PDF using GET request. Use when you need quick PDF conversion with minimal parameters and immediate result." }, { "slug": "CLOUDLAYER_DELETE_STORAGE", "name": "Delete Storage Configuration", "description": "Tool to delete a specific user storage configuration. Use when you need to remove an external bucket configuration by its ID after confirming the ID is correct." }, { "slug": "CLOUDLAYER_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve Cloudlayer account usage, credits, and document counts. Use when monitoring account limits and subscription status." }, { "slug": "CLOUDLAYER_GET_ASSET", "name": "Get Asset", "description": "Tool to retrieve a specific asset by its ID. Use when you need to fetch metadata or download URL of an existing asset after its generation." }, { "slug": "CLOUDLAYER_GET_JOB_BY_ID", "name": "Get Job By ID", "description": "Retrieve details of a specific Cloudlayer job by its ID. Use this to check the status of an async job, get the asset download URL after completion, or view job parameters. Returns 401 if the job ID doesn't exist or doesn't belong to your account." }, { "slug": "CLOUDLAYER_GET_STATUS", "name": "Get API Status", "description": "Tool to test API reachability. Use when checking if the Cloudlayer API is available." }, { "slug": "CLOUDLAYER_GET_STORAGE_BY_ID", "name": "Get Storage Configuration by ID", "description": "Tool to retrieve a specific storage configuration by its ID. Use when you need to inspect or validate details of a user storage configuration." }, { "slug": "CLOUDLAYER_LIST_ASSETS", "name": "List Assets", "description": "List assets in your CloudLayer account with cursor-based pagination. Returns PDFs and images generated via HTML/URL conversion jobs. Use this to find asset IDs for further operations like downloading or deleting assets." }, { "slug": "CLOUDLAYER_LIST_JOBS", "name": "List Jobs", "description": "List jobs in your CloudLayer account with cursor-based pagination. Use when you need to view your recent jobs and their statuses." }, { "slug": "CLOUDLAYER_LIST_STORAGE", "name": "List Storage Configurations", "description": "Retrieves all user storage configurations (S3-compatible buckets) for the authenticated Cloudlayer account. Use this to view configured external storage destinations where generated documents can be saved. Note: User Storage is an Enterprise plan feature. Non-Enterprise accounts will receive an empty list." }, { "slug": "CLOUDLAYER_TEMPLATE_TO_PDF", "name": "Template to PDF", "description": "Generate a PDF document from an HTML/Nunjucks template with dynamic data. Provide either: - A `templateId` for predefined templates from CloudLayer's template library, OR - A base64-encoded `template` string containing custom HTML/Nunjucks markup. The `data` parameter populates template variables (e.g., {{name}}, {{items}}) with your JSON data. By default, jobs run asynchronously and return a job ID to poll for completion via get_job_by_id." }, { "slug": "CLOUDLAYER_URL_TO_IMAGE_POST", "name": "Convert URL to Image", "description": "Converts a webpage URL to an image (PNG, JPG, or WebP). Supports custom viewport settings, wait conditions, transparency, auto-scroll, and thumbnail preview generation. The API is asynchronous - use the returned job ID to poll for results." }, { "slug": "CLOUDLAYER_URL_TO_PDF_POST", "name": "Convert URL to PDF", "description": "Tool to convert a URL to PDF with full parameter support. Use when you need advanced control over paper size, margins, headers/footers, or webhook callbacks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudlayer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "cloudlayer.io API Key", "type": "string", "description": "Your cloudlayer.io API Key, which can be obtained from the API Keys section in your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudpress", "name": "Cloudpress", "logo": "https://logos.composio.dev/api/cloudpress", "description": "Cloudpress enables exporting content from Google Docs and Notion to various Content Management Systems.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CLOUDPRESS_GET_ACCOUNT_INFORMATION", "name": "Get Account Information", "description": "Tool to retrieve authenticated account information. Use after authentication to get current account details." }, { "slug": "CLOUDPRESS_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all collections in the user's Cloudpress account. Use when you need to browse or manage collection metadata. Supports pagination via pageNo and pageSize." }, { "slug": "CLOUDPRESS_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to list all connections with pagination. Use when you need to retrieve Cloudpress connections page by page with optional filters like kind, type, or sourceReference." }, { "slug": "CLOUDPRESS_LIST_DOCUMENT_EXPORTS", "name": "List Document Exports", "description": "Tool to retrieve a paginated list of document exports. Use after initiating export jobs to fetch export history." }, { "slug": "CLOUDPRESS_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a paginated list of webhooks. Use when you need an overview of all configured webhooks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudpress_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cloudpress API Token", "type": "string", "description": "Your personal access token for authenticating with the Cloudpress API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cloudtables", "name": "Cloudtables", "logo": "https://logos.composio.dev/api/cloudtables", "description": "Database driven applications in a snap. CloudTables provides no-code/low-code solutions for seamless integration, full customization, auditing, and live updating.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cloudtables_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "Your CloudTables subdomain (e.g., \"123abc\" from https://123abc.cloudtables.io)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CloudTables API key from the Security page", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cm360", "name": "Cm360", "logo": "https://logos.composio.dev/api/cm_360", "description": "Campaign Manager 360 (formerly DoubleClick Campaign Manager) is a Google ad management platform for trafficking, reporting, and analyzing digital advertising campaigns.", "category": "marketing", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "cm_360_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/dfatrafficking,https://www.googleapis.com/auth/dfareporting,https://www.googleapis.com/auth/ddmconversions" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "coassemble", "name": "Coassemble", "logo": "https://logos.composio.dev/api/coassemble", "description": "Coassemble is a platform that allows users to create, manage, and deliver online training courses.", "category": "online courses", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COASSEMBLE_GET_CLIENTS", "name": "Get Clients", "description": "Retrieve a paginated list of clients (organisations). Supports pagination via 'length' and 'page' parameters. Use when you need to list all client organisations or page through them systematically." }, { "slug": "COASSEMBLE_GET_COURSES", "name": "Get Courses", "description": "Retrieve all courses from your Coassemble account with optional filtering and pagination. Use this tool to list, search, or browse courses. You can filter by user identifier, client identifier, or title, and control pagination with length and page parameters. All parameters are optional - call without parameters to get all courses." }, { "slug": "COASSEMBLE_GET_TRACKINGS", "name": "Get Trackings", "description": "Retrieves learner progress tracking records for a specific course. Returns tracking objects containing progress percentages, completion status, and timestamps. Supports filtering by learner identifier, client identifier, date range, and completion status, with pagination support." }, { "slug": "COASSEMBLE_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a paginated list of users. Use when you need to browse or process user records optionally filtered by clientIdentifier." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "coassemble_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Coassemble API Key", "type": "string", "description": "Your Coassemble API key. You can get from here: https://coassemble.com/courses?flow=api", "required": true, "default": null }, { "name": "generic_id", "displayName": "User ID", "type": "string", "description": "Your Coassemble user ID. You can get from here: https://coassemble.com/courses?flow=api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "codacy", "name": "Codacy", "logo": "https://logos.composio.dev/api/codacy", "description": "Codacy is an automated code review tool that helps developers monitor code quality, track technical debt, and enforce coding standards across multiple programming languages.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CODACY_CREATE_API_TOKEN", "name": "Create API Token", "description": "Creates a new account API token for the authenticated user. The token inherits all permissions from the account owner and provides access to the same organizations and repositories. Note: The token is created with default settings. To configure expiration dates or other settings, use the Codacy web interface. The newly created token can be used to authenticate API requests by including it in the 'api-token' header." }, { "slug": "CODACY_DELETE_API_TOKEN", "name": "Delete API Token", "description": "Tool to delete a specific API token from the authenticated user's account. Use after confirming the token ID." }, { "slug": "CODACY_GET_ACCOUNT_DETAILS", "name": "Get Account Details", "description": "Tool to retrieve details of the authenticated user's account. Use when confirming authentication before user-level operations." }, { "slug": "CODACY_GET_CONFIGURATION_STATUS", "name": "Get Configuration Status", "description": "Tool to retrieve the current configuration status of the Codacy system. Use when checking system setup completion or first-time configuration status." }, { "slug": "CODACY_GET_HEALTH", "name": "Get Health", "description": "Tool to check the health status of the Codacy API. Use when verifying API connectivity and service availability." }, { "slug": "CODACY_GET_ORGANIZATIONS_REPOSITORIES_SETTINGS_LANGUAGES", "name": "Get Organizations Repositories Settings Languages", "description": "Tool to get the list of all languages with their extensions and enabled status for a repository. Use when you need to understand which programming languages are detected and enabled for analysis in a specific Codacy repository." }, { "slug": "CODACY_GET_TOOL_PATTERN", "name": "Get Tool Pattern", "description": "Tool to retrieve the definition of a specific pattern for a given tool. Use when you need to get detailed information about a specific code pattern including its description, examples, parameters, and configuration." }, { "slug": "CODACY_GET_USER_ORGANIZATIONS", "name": "Get User Organizations", "description": "Retrieves all organizations the authenticated user belongs to for a specific Git provider. Returns organization details including name, provider, avatar, access permissions (DAST, SCA), and join status. Use this to discover which organizations a user can access on Codacy for a given Git provider (GitHub, GitLab, or Bitbucket). Requires the user to have connected the specified provider to their Codacy account." }, { "slug": "CODACY_GET_VERSION", "name": "Get Version", "description": "Tool to retrieve the version of the Codacy installation. Use when checking the Codacy API version for compatibility or debugging purposes." }, { "slug": "CODACY_LIST_ANALYSIS_ORGANIZATIONS_REPOSITORIES", "name": "List Analysis Organizations Repositories", "description": "Tool to list organization repositories with analysis information for the authenticated user. Use when you need to retrieve repositories from a specific organization with their analysis status. For Bitbucket, ensure you URL encode the cursor before using it in subsequent API calls." }, { "slug": "CODACY_LIST_DUPLICATION_TOOLS", "name": "List Duplication Tools", "description": "Tool to retrieve the list of duplication detection tools available in Codacy. Use when you need to identify which tools can analyze code duplication for different programming languages." }, { "slug": "CODACY_LIST_LANGUAGES_TOOLS", "name": "List Languages and Tools", "description": "Tool to retrieve the list of languages supported by available tools. Use when you need to determine which programming languages are supported by Codacy's analysis tools." }, { "slug": "CODACY_LIST_LOGIN_INTEGRATIONS", "name": "List Login Integrations", "description": "Tool to list configured login providers on Codacy's platform. Use when you need to discover available authentication methods for Codacy login." }, { "slug": "CODACY_LIST_METRICS_TOOLS", "name": "List Metrics Tools", "description": "Tool to retrieve the list of metrics tools available in Codacy. Use when you need to discover which tools calculate metrics on projects and which languages they support." }, { "slug": "CODACY_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects accessible to the authenticated user. Use when you need a list of repositories after confirming API token validity." }, { "slug": "CODACY_LIST_PROVIDER_INTEGRATIONS", "name": "List Provider Integrations", "description": "Tool to list provider integrations existing on Codacy's platform. Use when you need to discover available Git providers that can be integrated with Codacy for authentication and repository management." }, { "slug": "CODACY_LIST_TOOLS", "name": "List Tools", "description": "Tool to retrieve the list of analysis tools available in Codacy. Use when you need to identify which code analysis tools are available and which programming languages they support." }, { "slug": "CODACY_LIST_TOOLS_PATTERNS", "name": "List Tools Patterns", "description": "Tool to retrieve the list of patterns for a specific tool. Returns code patterns that the tool can use to find issues, with pagination support." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "codacy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Codacy API Token", "type": "string", "description": "The API token used for authenticating requests to the Codacy API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "codemagic", "name": "Codemagic", "logo": "https://logos.composio.dev/api/codemagic", "description": "Codemagic is a CI/CD platform focused on mobile app development.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CODEMAGIC_ADD_APPLICATION_FROM_PRIVATE_REPO", "name": "Add Application from Private Repository", "description": "Tool to create an application from a private repository using SSH key authentication. Use when you need to add a new private repository to Codemagic with SSH credentials." }, { "slug": "CODEMAGIC_ADD_NEW_APPLICATION", "name": "Add New Application", "description": "Tool to add a Git repository to the applications list in Codemagic. Use when you need to add a new application to Codemagic from a repository URL." }, { "slug": "CODEMAGIC_API_V3_META_GET_META", "name": "Get Meta Information", "description": "Tool to get metadata about Codemagic including public IP addresses in use (in CIDR notation). Use when you need to retrieve IP blocks for whitelisting build machines or simulator network requests." }, { "slug": "CODEMAGIC_API_V3_VARIABLE_GROUPS_VARIABLE_GROUP_ID_GET_GROUP", "name": "Get Variable Group Information", "description": "Tool to retrieve information about a specific variable group including its name and configuration settings. Use when you need to get details for a variable group by its ID." }, { "slug": "CODEMAGIC_API_V3_VARIABLE_GROUPS_VARIABLE_GROUP_ID_UPDATE", "name": "Update Variable Group", "description": "Tool to change a variable group's name and security settings. Use when you need to update an existing variable group by its ID. Returns success confirmation on 204 No Content response." }, { "slug": "CODEMAGIC_DELETE_ALL_APPLICATION_CACHES", "name": "Delete All Application Caches", "description": "Tool to delete all caches for a specific application. Use when clearing all cached data for an app. The deletion process is asynchronous and will complete after the API response is returned." }, { "slug": "CODEMAGIC_DELETE_SPECIFIC_CACHE", "name": "Delete Specific Cache", "description": "Tool to delete a specific cache from an application. Use when a cached build artifact needs to be removed. The deletion is performed asynchronously and returns immediately with a 202 Accepted status." }, { "slug": "CODEMAGIC_GET_ALL_BUILDS", "name": "Get All Builds", "description": "Tool to list all builds with optional filters for appId, workflowId, and branch. Use when you need to retrieve build history or search for specific builds. Supports pagination via the skip parameter." }, { "slug": "CODEMAGIC_GET_API_KEY", "name": "Get User API Key", "description": "Tool to retrieve the API key for the authenticated user from the server. Use when you need to fetch the API key via the Codemagic API." }, { "slug": "CODEMAGIC_GET_SHOREBIRD_META", "name": "Get Shorebird Meta", "description": "Tool to retrieve information about Shorebird integration. Use when you need to check supported Flutter versions or the current Shorebird version." }, { "slug": "CODEMAGIC_GET_USER", "name": "Get Authenticated User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to get user ID, avatar URL, or check user permissions." }, { "slug": "CODEMAGIC_GET_VARIABLE_GROUPS", "name": "List Variable Groups for App", "description": "Tool to retrieve paginated list of variable groups for an application. Use when you need to list or browse variable groups associated with a specific app." }, { "slug": "CODEMAGIC_GET_VARIABLES", "name": "List Variables for Group", "description": "Tool to retrieve paginated list of variables for a specific variable group. Use when you need to list or browse environment variables within a variable group." }, { "slug": "CODEMAGIC_INVITE_TEAM_MEMBER", "name": "Invite Team Member", "description": "Tool to invite a new team member to a Codemagic team. Use when you need to grant team access to a user. Requires team admin privileges. The 'developer' role corresponds to Member role and 'owner' role corresponds to Admin role in Codemagic UI." }, { "slug": "CODEMAGIC_RECEIVE_WEBHOOK", "name": "Receive Webhook", "description": "Tool to receive webhook payloads from Git providers to trigger builds automatically. Use when repository events (commits, pull requests, tags) need to trigger Codemagic builds programmatically." }, { "slug": "CODEMAGIC_REMOVE_TEAM_MEMBER", "name": "Remove Team Member", "description": "Tool to remove a collaborator or revoke a pending invitation from a Codemagic team. Use when you need to revoke team access for a specific user or cancel a pending invitation. Supports both active members (MongoDB-style IDs) and pending invitations (UUID-style invitation codes)." }, { "slug": "CODEMAGIC_RETRIEVE_ALL_APPLICATIONS", "name": "Retrieve All Applications", "description": "Tool to retrieve all applications added to Codemagic. Use when you need to list or browse all applications in the Codemagic account." }, { "slug": "CODEMAGIC_RETRIEVE_AN_APPLICATION", "name": "Retrieve an Application", "description": "Tool to retrieve a single application by its unique identifier. Use when you need to get application details including name, branches, and workflow configuration." }, { "slug": "CODEMAGIC_RETRIEVE_CACHES_FOR_APPLICATION", "name": "Retrieve Caches for Application", "description": "Tool to retrieve a list of caches for a specific application. Use when you need to view cached data, check cache sizes, or manage application storage." }, { "slug": "CODEMAGIC_START_NEW_BUILD", "name": "Start New Build", "description": "Tool to start a new build for an application with specified workflow and branch or tag. Use when you need to trigger a build programmatically. Either branch or tag parameter must be provided." }, { "slug": "CODEMAGIC_STOP_PREVIEW", "name": "Stop Preview", "description": "Tool to stop an app preview. Use when you need to stop a running app preview by its identifier." }, { "slug": "CODEMAGIC_UPDATE_VARIABLE", "name": "Update Variable in Group", "description": "Tool to update an existing variable within a specified variable group in Codemagic. Use when you need to modify a variable's name, value, or secure status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "codemagic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "The access token is available in the Codemagic UI under Teams > Personal Account > Integrations > Codemagic API > Show.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "codereadr", "name": "Codereadr", "logo": "https://logos.composio.dev/api/codereadr", "description": "CodeREADr is a mobile data collection and barcode scanning platform that enables businesses to create and manage services for data capture, validation, and reporting.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CODEREADR_COLLECT_DATA_WITH_QUESTIONS", "name": "Collect Data With Questions", "description": "Create and attach custom questions to a CodeREADr service for data collection after scans. Use this to configure forms that collect additional information from users after each barcode scan. Requires a valid service ID from CODEREADR_RETRIEVE_SERVICES or CODEREADR_CREATE_SERVICE." }, { "slug": "CODEREADR_CONFIGURE_CONNECTOR", "name": "Configure CodeREADr Connector", "description": "Helper to guide configuring the CodeREADr Connector for Google Sheets. There is no public API to programmatically create connector configurations. This tool validates your API connectivity (optional) and returns clear steps to proceed via the Google Sheets Add-on UI: https://www.codereadr.com/knowledgebase/codereadr-connector-add-on/" }, { "slug": "CODEREADR_CREATE_SERVICE", "name": "Create CodeREADr Service", "description": "Creates a new CodeREADr service (barcode scanning workflow configuration). A service defines how barcode scans are processed - whether they're simply recorded, validated against a database, forwarded to an external URL, or display web content. Each validation_method type has different required parameters: 'database'/'ondevicedatabase' require database_id, 'postback' requires postback_url, 'webview' requires description (URL/HTML)." }, { "slug": "CODEREADR_DELETE_DATABASE", "name": "Delete CodeREADr Database", "description": "Delete a CodeREADr validation database by its ID. This permanently removes the database and all its barcode values. Use with caution. Note: A database cannot be deleted if it is currently linked to one or more services. You must unlink those services from the database first. Example: \"Delete database with ID 1340798\"" }, { "slug": "CODEREADR_DELETE_DEVICE", "name": "Delete Device", "description": "Tool to delete a device from CodeREADr. Uses the CodeREADr legacy API with section=devices and action=delete parameters. Note: Device deletion may have limited support in the CodeREADr API - only 'retrieve' and 'update' actions are officially documented for devices." }, { "slug": "CODEREADR_DELETE_QUESTION", "name": "Delete Custom Question", "description": "Permanently deletes one or more custom questions from your CodeREADr account. Questions are used to collect additional data after scans. Once deleted, the question and all associated answer options are removed. This action cannot be undone." }, { "slug": "CODEREADR_DELETE_SERVICE", "name": "Delete CodeREADr Service", "description": "Delete a CodeREADr service by its numeric ID. Use this to permanently remove a service/workflow configuration from your account. Note: This is a destructive action and cannot be undone. You can delete a single service, multiple services (comma-separated IDs), or all services. Example: \"Delete service with ID 12345\"" }, { "slug": "CODEREADR_DELETE_USER", "name": "Delete CodeREADr User", "description": "Deletes an existing user account from CodeREADr. Uses the CodeREADr legacy API endpoint (POST /api/ with section=users, action=delete). The user_id parameter can be a single ID, comma-separated list of IDs, or 'all'. Note: You cannot delete the account owner's app-user. The API will return an error if an invalid user_id is provided." }, { "slug": "CODEREADR_GENERATE_SCAN_LINK", "name": "Generate Scan Link", "description": "Generates a CodeREADr scan link URI that opens the CodeREADr mobile app with a pre-filled scan value. Use this tool when you need to create clickable links that launch the CodeREADr scanner with a specific barcode, QR code, or identifier already entered." }, { "slug": "CODEREADR_LIST_SUPPORTED_BARCODE_TYPES", "name": "List Supported Barcode Types", "description": "Lists barcode symbologies supported by CodeREADr for scanning. Returns 1D barcodes (Code 39, Code 128, EAN, UPC, Codabar, etc.), 2D barcodes (QR Code, Data Matrix, PDF-417, Aztec, etc.), and specialized formats. Use this to verify if a specific barcode type is supported before scanning." }, { "slug": "CODEREADR_RETRIEVE_DATABASES", "name": "Retrieve CodeREADr Databases", "description": "Retrieves all validation databases configured in your CodeREADr account. Use this to list databases for barcode validation, see their IDs, names, item counts, and which services they're linked to." }, { "slug": "CODEREADR_RETRIEVE_DEVICES", "name": "Retrieve Devices", "description": "Retrieve a list of devices registered to your CodeREADr account. This tool fetches information about devices linked to your account, including device IDs, UDIDs, names, and creation timestamps. Use this to monitor which devices have access to your CodeREADr services." }, { "slug": "CODEREADR_RETRIEVE_SCANS", "name": "Retrieve Scan Records", "description": "Retrieve scan records from your CodeREADr account. Scans are the core data collected by CodeREADr when users scan barcodes using the mobile app. Each scan record includes the barcode value, timestamp, device info, validation status, and any collected responses. Use filters to narrow down results by service, user, device, date range, or status. Returns scan records in batches. Use limit and offset parameters for pagination." }, { "slug": "CODEREADR_RETRIEVE_SERVICES", "name": "Retrieve CodeREADr Services", "description": "Retrieve configured services from your CodeREADr account. Services are the core organizational units in CodeREADr that define how barcode scans are validated and processed. Use this action to list all services or retrieve specific services by ID." }, { "slug": "CODEREADR_UPDATE_QUESTION", "name": "Update CodeREADr Question", "description": "Add answer options to an existing CodeREADr question. Use this to add selectable answers for checkbox, dropdown, or option-type questions. The CodeREADr API does not support updating question text - to change text, delete and recreate the question." }, { "slug": "CODEREADR_UPDATE_SERVICE", "name": "Update CodeREADr Service", "description": "Update an existing CodeREADr service configuration. Use this action to modify settings of a service by its ID. Only specified fields will be updated - omitted fields retain their current values. Common use cases: - Renaming a service - Changing postback/webhook URL - Enabling/disabling GPS tracking - Modifying duplicate scan handling - Setting time restrictions for service availability" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "codereadr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CodeREADr API Key", "type": "string", "description": "The API key provided by CodeREADr for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cody", "name": "Cody", "logo": "https://logos.composio.dev/api/cody", "description": "Cody is an AI-powered assistant that uses the magic of ChatGPT meets the expertise of a custom-made AI assistant trained on your specific business.", "category": "ai assistants", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CODY_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation with a specified bot. Use when starting a new conversation thread with optional focus mode to limit bot's knowledge base to specific documents." }, { "slug": "CODY_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to create a new document with text or HTML content in Cody AI. Use when you need to add documents to Cody's knowledge base with up to 768 KB of content." }, { "slug": "CODY_CREATE_DOCUMENT_FROM_FILE", "name": "Create Document From File", "description": "Tool to create a document by uploading a file (up to 100 MB). Supports txt, md, rtf, pdf, ppt, pptx, pptm, doc, docx, docm formats. Use when you need to add file-based documents to Cody's knowledge base. The file is processed asynchronously." }, { "slug": "CODY_CREATE_DOCUMENT_FROM_WEBPAGE", "name": "Create Document from Webpage", "description": "Tool to create a document from a publicly accessible webpage URL. Use when you need to import content from a webpage into Cody AI. The webpage must be accessible without login. If request fails, ensure the URL is publicly accessible and not blocked by a firewall." }, { "slug": "CODY_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new folder in Cody AI for organizing content. Use when you need to create a folder to organize documents or conversations." }, { "slug": "CODY_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to delete a conversation by its ID. Use when you need to permanently remove a conversation from the system." }, { "slug": "CODY_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document by id. Use when removing a document that is no longer needed." }, { "slug": "CODY_GET_CONVERSATION", "name": "Get Conversation", "description": "Tool to fetch a conversation by its ID from Cody AI. Use when you need to retrieve details about a specific conversation. Supports optional includes parameter to filter response to list document IDs." }, { "slug": "CODY_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve a specific document by its identifier from Cody AI. Use when you need to get details about a particular document including its status, content URL, and metadata." }, { "slug": "CODY_GET_FOLDER", "name": "Get Folder", "description": "Tool to retrieve a specific folder by its identifier. Use when you need to get details about a folder." }, { "slug": "CODY_GET_MESSAGE", "name": "Get Message", "description": "Tool to fetch a specific message by its ID from Cody AI. Use when you need to retrieve details about a particular message, with optional includes for sources or usage metrics." }, { "slug": "CODY_GET_UPLOADS_SIGNED_URL", "name": "Get Upload Signed URL", "description": "Tool to get an AWS S3 signed upload URL for file uploads. Use when you need to obtain a signed URL to upload a file to Cody's storage." }, { "slug": "CODY_LIST_BOTS", "name": "List Bots", "description": "Tool to get all bots with optional keyword filtering. Use when you need to retrieve the list of available bots in a Cody account." }, { "slug": "CODY_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Tool to get all conversations with optional filtering by bot, keyword, or includes. Use when you need to retrieve conversation history, filter by bot, search by name, or get document associations." }, { "slug": "CODY_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to retrieve all documents from Cody AI account with optional filtering. Use when you need to list documents by folder, conversation, or search by keyword. Returns document details including learning status and content URL." }, { "slug": "CODY_LIST_FOLDERS", "name": "List Folders", "description": "Tool to retrieve all folders with optional keyword filtering. Use when you need to list or search for folders in the account." }, { "slug": "CODY_LIST_MESSAGES", "name": "List Messages", "description": "Tool to retrieve a paginated list of messages from Cody, optionally filtered by conversation. Use when you need to list messages, with optional filtering by conversation_id and extra attributes (sources or usage)." }, { "slug": "CODY_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a message to Cody AI and receive an AI-generated response. Use when you need to send a user message to a conversation and get the AI's reply." }, { "slug": "CODY_SEND_MESSAGE_FOR_STREAM", "name": "Send Message for Stream", "description": "Tool to send a message to Cody AI and receive a Server-Sent Events (SSE) stream URL for the AI response. Use when you need streaming responses instead of waiting for the complete message. The response contains a stream_url that can be used to connect to the SSE stream and receive the AI's response in real-time chunks." }, { "slug": "CODY_UPDATE_CONVERSATION", "name": "Update Conversation", "description": "Tool to update a conversation by its ID including name, bot_id, and document_ids. Use when you need to modify an existing conversation's properties." }, { "slug": "CODY_UPDATE_FOLDER", "name": "Update Folder", "description": "Tool to update a folder by its ID. Use when you need to modify an existing folder's name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cody_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Visit the API Keys page at https://getcody.ai/settings/api to retrieve your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "coinmarketcap", "name": "CoinMarketCap", "logo": "https://s2.coinmarketcap.com/static/cloud/img/coinmarketcap_1.svg", "description": "CoinMarketCap provides a comprehensive cryptocurrency market data API, offering real-time and historical data on cryptocurrencies and exchanges.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COINMARKETCAP_CRYPTOCURRENCY_LISTINGS_LATEST", "name": "Cryptocurrency Listings Latest", "description": "Fetch the latest cryptocurrency market listings from CoinMarketCap. Returns a ranked list of active cryptocurrencies with real-time price, market cap, 24h volume, and percent changes. By default returns top 100 by market cap. Common use cases: - Get top cryptocurrencies: No params needed (defaults to top 100 by market cap) - Find DeFi tokens: tag=\"defi\" - Get high volume assets: volume_24h_min=1000000000 - Find cheap small caps: price_max=1, market_cap_max=10000000 - Get biggest gainers: sort=\"percent_change_24h\", sort_dir=\"desc\" - Pagination: Use start and limit (e.g., start=101, limit=100 for page 2)" }, { "slug": "COINMARKETCAP_CRYPTOCURRENCY_MAP", "name": "Cryptocurrency Map", "description": "Tool to retrieve a mapping of all cryptocurrencies, including their unique IDs, symbols, and names. Use when you need reference IDs for crypto assets. Response results are nested under a `data` key." }, { "slug": "COINMARKETCAP_CRYPTOCURRENCY_QUOTES_LATEST", "name": "Get Latest Cryptocurrency Quotes", "description": "Tool to get the latest aggregated global market quotes for one or more cryptocurrencies. Exactly one of id, symbol, or slug must be provided; combining multiple identifier types or omitting all causes an error. Response is nested under data → SYMBOL (or ID) → quote → TARGET_CURRENCY for fields like price and last_updated." }, { "slug": "COINMARKETCAP_GET_CRYPTOCURRENCY_INFO", "name": "Get cryptocurrency info", "description": "Tool to fetch metadata (description, logo, URLs) for one or more cryptocurrencies. Use when you need static asset details like descriptions, logos, and related links. Exactly one of `id`, `slug`, or `symbol` must be provided; combining multiple lookup parameters causes errors. Response is nested under a `data` object keyed by asset ID or symbol." }, { "slug": "COINMARKETCAP_GET_EXCHANGE_INFO", "name": "Get exchange info", "description": "Tool to get detailed metadata for one or more exchanges. Use when you need exchange logos, supported fiats, launch dates, and official links." }, { "slug": "COINMARKETCAP_GET_KEY_INFO", "name": "Get API Key Info", "description": "Tool to retrieve your CoinMarketCap API key details, rate limits, and usage statistics. Use after setting your API key to inspect limits and usage." }, { "slug": "COINMARKETCAP_GLOBAL_METRICS_QUOTES_LATEST", "name": "Global Metrics Quotes Latest", "description": "Tool to obtain the latest global cryptocurrency market metrics (market cap, volume, dominance). Use when you need aggregated market-level data for analysis." }, { "slug": "COINMARKETCAP_PARTNER_MAP", "name": "Partner Map", "description": "Tool to retrieve a mapping of all CoinMarketCap partners with their unique IDs, names, and slugs. Use when you need to map partner names or slugs to numeric IDs." }, { "slug": "COINMARKETCAP_TOOLS_PRICE_CONVERSION", "name": "Price Conversion", "description": "Tool to convert an amount from one cryptocurrency or fiat currency into another. Either `id` or `symbol` must be provided as the source currency identifier. Use when conversion rates are needed. Unsupported currency symbols or IDs will cause validation errors." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "coinmarketcap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CoinMarketCap API Key", "type": "string", "description": "The API key provided by CoinMarketCap for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "coinranking", "name": "Coinranking", "logo": "https://coinranking.com/favicon.ico", "description": "Coinranking provides a comprehensive API for accessing cryptocurrency market data, including coin prices, market caps, and historical data.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COINRANKING_GET_COIN_DETAILS", "name": "Get Coin Details", "description": "Retrieve comprehensive details for a specific cryptocurrency including current price, market cap, supply metrics, description, social links, sparkline data, and historical performance. Use when you need in-depth information about a specific coin beyond basic list data." }, { "slug": "COINRANKING_GET_COIN_FIAT_PRICES", "name": "Get Coin Fiat Prices", "description": "Tool to retrieve the current price of a cryptocurrency in all available fiat currencies including USD, EUR, GBP, and more. Use when you need to see how much a coin is worth across multiple fiat currencies simultaneously. Note: This endpoint requires a Professional plan or higher." }, { "slug": "COINRANKING_GET_COIN_HISTORY", "name": "Get Coin History", "description": "Tool to retrieve historical price data for a specific coin over a time period. Use when you need to analyze past performance of a coin; call after confirming its UUID." }, { "slug": "COINRANKING_GET_COIN_PRICE", "name": "Get Coin Price", "description": "Tool to retrieve the current price or historical price at a specific timestamp for a cryptocurrency coin. Use when you need to get the current valuation of a coin or look up its price at a historical point in time." }, { "slug": "COINRANKING_GET_COIN_PRICE_HISTORY", "name": "Get Coin Price History", "description": "Tool to retrieve historical price data points for a specific coin over selectable time periods. Use when you need price history for charting, backtesting, or trend analysis. Call after confirming the coin's UUID." }, { "slug": "COINRANKING_GET_COINS", "name": "Get Coins", "description": "Retrieve a comprehensive list of cryptocurrency coins with detailed market data including prices, market caps, rankings, and price history. Supports filtering by search terms, quality tiers, and sorting by various metrics like market cap, price, or volume. Ideal for: - Getting top cryptocurrencies by market cap - Searching for specific coins by name or symbol - Filtering high-quality coins (tier 1) - Analyzing price changes over different time periods - Paginating through large result sets Returns detailed coin information including current price, market cap, 24h volume, price change percentages, sparkline data, and all-time high values. Note: numeric fields in responses (price, marketCap, 24hVolume) are returned as strings — cast to numeric types before arithmetic or comparisons." }, { "slug": "COINRANKING_GET_COIN_TRADING_VOLUME_HISTORY", "name": "Get Coin Trading Volume History", "description": "Tool to retrieve historical trading volume data for a specific coin to build volume charts and analyze liquidity trends. Use when you need to analyze trading volume patterns over time; requires a professional plan." }, { "slug": "COINRANKING_GET_REFERENCE_CURRENCIES", "name": "Get Reference Currencies", "description": "Retrieve a comprehensive list of reference currencies including cryptocurrencies, fiat currencies (USD, EUR, etc.), denominators (Satoshi, Wei), and assets (Gold, Silver). Use this to get available currencies for price conversions, with support for filtering by type, searching by name/symbol, and pagination." }, { "slug": "COINRANKING_GET_STATS", "name": "Get Global Crypto Market Stats", "description": "Tool to retrieve global cryptocurrency market statistics. Use when you need an overview of the entire crypto market." }, { "slug": "COINRANKING_GET_STATS_COINS", "name": "Get Stats for Selected Coins", "description": "Tool to retrieve aggregate statistics for a selection of coins. Use when you need to calculate combined metrics for custom baskets, watchlists, or index products including market cap, trading volume, price changes, and dominance." }, { "slug": "COINRANKING_GET_TAG_DETAILS", "name": "Get Tag Details", "description": "Get detailed information about a specific cryptocurrency tag including market metrics, volume, associated coin count, and dominance data. Use when you need comprehensive information about a tag category (e.g., DeFi, NFT, Stablecoins) including its market performance and statistics." }, { "slug": "COINRANKING_GET_TAGS", "name": "Get Tags", "description": "Get all available cryptocurrency tags/categories from Coinranking. Tags are used to categorize cryptocurrencies (e.g., DeFi, NFT, Stablecoins, Meme coins, etc.). This endpoint returns comprehensive information about each tag including market metrics, number of coins, and descriptive information. Tags can be used to filter coins in other endpoints. No parameters required - returns all available tags with their current statistics." }, { "slug": "COINRANKING_GET_TRENDING_COINS", "name": "Get Trending Coins", "description": "Retrieve a list of trending cryptocurrency coins ranked by user engagement and popularity on Coinranking. Supports optional filtering by reference currency, time period, coin tiers, and pagination. Returns detailed coin information including prices, market cap, 24h volume, sparklines, and contract addresses. Ideal for displaying trending coins in dashboards, market analysis, or tracking popular cryptocurrencies." }, { "slug": "COINRANKING_SEARCH_SUGGESTIONS", "name": "Search Suggestions", "description": "Tool to search and get suggestions for coins, markets, exchanges, fiat currencies, and categories by name, symbol, or contract address. Use when you need fast search suggestions across multiple entity types in the cryptocurrency space." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "coinranking_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Coinranking API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Coinranking API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "college_football_data", "name": "College Football Data", "logo": "https://logos.composio.dev/api/college_football_data", "description": "CollegeFootballData.com provides comprehensive college football data, including game scores, statistics, and recruiting information, accessible via a RESTful API.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COLLEGE_FOOTBALL_DATA_ADVANCED_BOX_SCORE", "name": "Advanced Box Score", "description": "Retrieves advanced analytics for a single college football game including: - Team metrics: PPA (Predicted Points Added), success rates, rushing efficiency, havoc rates, scoring opportunities - Player metrics: Usage rates by quarter and play type, individual PPA breakdowns - Game info: Teams, scores, win probabilities, excitement index Requires a valid gameId from Get Games and Results action. Returns detailed breakdown by quarter." }, { "slug": "COLLEGE_FOOTBALL_DATA_ADVANCED_GAME_STATS", "name": "Advanced Game Stats", "description": "Tool to retrieve advanced team metrics at the game level. Use when detailed offensive and defensive metrics (success rates, explosiveness, havoc) are needed." }, { "slug": "COLLEGE_FOOTBALL_DATA_ADVANCED_SEASON_STATS_TEAM", "name": "Advanced Season Stats by Team", "description": "Retrieve advanced season-level team statistics including PPA (Predicted Points Added), success rates, explosiveness, havoc metrics, and rushing/passing efficiency breakdowns. Use this for in-depth team performance analysis beyond basic stats. At least one of 'year' or 'team' must be provided." }, { "slug": "COLLEGE_FOOTBALL_DATA_BETTING_LINES", "name": "Betting Lines", "description": "Tool to fetch betting lines and totals by game and provider. Use when you need current or historical betting line data filtered by specific criteria." }, { "slug": "COLLEGE_FOOTBALL_DATA_COMPOSITE_TEAM_TALENT", "name": "Composite Team Talent", "description": "Fetches 247Sports composite team talent rankings for a given season. Returns a list of all FBS teams ranked by their composite talent score, which is based on aggregate recruit ratings. Higher scores indicate rosters with more highly-rated recruits." }, { "slug": "COLLEGE_FOOTBALL_DATA_CONFERENCE_MEMBERSHIPS_HISTORY", "name": "Conference Memberships", "description": "Tool to retrieve current conference memberships for college football teams. Returns which teams belong to which conference, optionally filtered by conference. Use to find all teams in a specific conference or to see the current conference landscape." }, { "slug": "COLLEGE_FOOTBALL_DATA_DIVISIONS_BY_CONFERENCE", "name": "Divisions by Conference", "description": "Tool to list FBS/FCS conference divisions with active years and metadata. Use after specifying an optional season year to filter active divisions." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_CONFERENCE_SP", "name": "Get Conference SP+ Ratings", "description": "Retrieve aggregated historical conference SP+ (Success Rate + Points Per Play) ratings for college football conferences. Use this to get conference-level offensive, defensive, and special teams metrics aggregated from all teams in each conference. Filter by year to get specific season data, or by conference name to get historical ratings for a specific conference." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_DRIVE_DATA", "name": "Get Drive Data", "description": "Retrieves college football drive-level data including offensive/defensive teams, yards gained, drive results (TD, PUNT, INT, etc.), time elapsed, and scoring information. Use to analyze drive efficiency, red zone performance, or game flow. Requires year; optionally filter by week, team, conference, or season type (regular/postseason)." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_FIELD_GOAL_EXPECTED_POINTS", "name": "Get Field Goal Expected Points", "description": "Retrieves field goal expected points values for various field positions and distances. Returns static model data showing expected points for field goal attempts based on distance. Useful for analyzing field goal decision-making and expected value calculations." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_FPI", "name": "FPI Ratings", "description": "Retrieves historical Football Power Index (FPI) ratings for college football teams. FPI is ESPN's measure that predicts team strength and game outcomes. Use this to get team ratings, efficiency metrics, and resume rankings. Specify a year to get all teams' ratings for that season, or a team name to get historical ratings, or both for a specific team-season combination." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_GAME_HAVOC_STATS", "name": "Get Game Havoc Stats", "description": "Tool to retrieve havoc statistics aggregated by game. Use when you need game-level havoc metrics including DB havoc rate, front seven havoc rate, and total havoc events for offense and defense." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_GAME_MEDIA", "name": "Get Game Media", "description": "Retrieve broadcast information for college football games including TV channels, streaming platforms, and radio outlets. Use this to find where games are being broadcast. Returns information about the broadcaster/outlet, start time, and teams involved. Common use cases: - Find TV channel for a specific game: set year, week, and team - Get all broadcasts for a conference: set year and conference - Find streaming options: set mediaType='web' - Get bowl game broadcasts: set seasonType='postseason'" }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_GAMES_AND_RESULTS", "name": "Get Games and Results", "description": "Tool to retrieve college American football games and results for a given season/week/team. Use when you need game schedules or outcomes filtered by specific criteria. Covers NCAA only; NFL and other sports return no data. Overly narrow filter combinations (e.g., mismatched `team` and `conference`) may yield zero results — relax filters if the response is empty." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_PLAYER_GAME_STATS", "name": "Get Player Game Stats", "description": "Fetches detailed player statistics for college football games. Returns individual player stats (passing, rushing, receiving, defensive, kicking, etc.) organized by game and team. Use cases: - Get QB passing stats for a specific team's games - View rushing leaders for a conference in a given week - Analyze defensive stats for postseason games NOTE: Requires 'year' plus at least one of: 'week', 'team', or 'conference'. Use 'category' filter to limit results to specific stat types (recommended for faster responses)." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_PLAYER_USAGE", "name": "Get Player Usage", "description": "Retrieves player usage data for a given season. Returns usage percentages across different play situations (overall, passing, rushing, by down, etc.). Use this to analyze how frequently players are involved in plays, filtered by team, conference, position, or specific player." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_PLAY_TYPES", "name": "Get Play Types", "description": "Tool to fetch all available play types. Use when you need a catalog of play types for filtering or referencing play data." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_PREDICTED_POINTS_ADDED_BY_TEAM", "name": "Get Predicted Points Added By Team", "description": "Tool to retrieve historical team Predicted Points Added (PPA) metrics by season. Use when you need season-level PPA performance data for teams to analyze offensive and defensive efficiency across play types and down situations." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_PREGAME_WIN_PROBABILITIES", "name": "Get Pregame Win Probabilities", "description": "Tool to retrieve pregame win probabilities for college football games. Use when you need predictive data about game outcomes before they are played, filtered by season, week, or team." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_RECRUITS", "name": "Get Recruits", "description": "Retrieves player recruiting rankings from the College Football Data API. Returns detailed information about high school, prep school, and junior college recruits including star ratings, composite ratings, rankings, physical measurements, and commitment status. Use this action to analyze recruiting classes by year or team, compare recruits by position or location, or track where top prospects commit. At least one of year or team parameters must be provided." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_STATS_CATEGORIES", "name": "Get Stats Categories", "description": "Tool to fetch all available team statistical categories. Use when you need to discover valid category names for statistical analysis or filtering team stats." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_TEAM_GAME_STATS", "name": "Get Team Game Stats", "description": "Fetch team-level box score statistics for college football games. Returns detailed game stats including offense (rushing/passing yards, TDs, turnovers), defense (tackles, sacks, interceptions), and special teams (kick/punt returns) for each team. Use cases: - Get box scores for a specific team's games in a season - Compare team performance across conference games in a given week - Analyze offensive/defensive stats for a specific matchup Note: At least one of week, team, or conference must be provided to filter results." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_TEAM_RECRUITING_RANKINGS", "name": "Get Team Recruiting Rankings", "description": "Retrieve team recruiting rankings from the College Football Data API. Returns composite recruiting rankings based on recruit star ratings and commitments. Use to compare recruiting success across teams or track a team's recruiting performance over time." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_TEAMS_ATS", "name": "Get Teams ATS Records", "description": "Tool to retrieve against-the-spread (ATS) summary by team. Use when you need historical betting performance data showing how teams performed relative to point spreads." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_USER_INFO", "name": "Get User Info", "description": "Retrieves information about the authenticated user from the College Football Data API. Returns the user's Patreon subscription level and remaining API calls for rate limit monitoring. Use this to check your current API quota and subscription status." }, { "slug": "COLLEGE_FOOTBALL_DATA_GET_WIN_PROBABILITY", "name": "Get Win Probability", "description": "Tool to query play-by-play win probabilities for a specific game. Use when you need detailed probability metrics showing how win likelihood changed throughout the game." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_COACHES_AND_HISTORY", "name": "List Coaches and History", "description": "Tool to get coaching records and history. Use when you need coaches’ season-by-season data with optional filters." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_CONFERENCES", "name": "List Conferences", "description": "Retrieves all college football conferences from the College Football Data API. Returns conferences across all NCAA divisions (FBS, FCS, Division II, Division III). Use this to get conference IDs for filtering other API calls or to display conference information. No parameters required - returns the complete list of conferences." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_FBS_TEAMS", "name": "List FBS Teams", "description": "Tool to list FBS teams for a given season. Use after selecting the season year to retrieve all FBS teams." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_FCS_TEAMS", "name": "List FCS Teams", "description": "Tool to list FCS teams for a given season and conference. Use when you need a list of FCS programs filtered by season year and conference." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_TEAMS", "name": "List Teams", "description": "Retrieve a list of college football teams from the CFBD (College Football Data) API. Use this action to: - Get all college football teams (call with no parameters) - Get teams from a specific season (use year parameter) - Get teams from a specific conference (use conference parameter) - Combine filters to get conference teams for a specific season Returns team details including: name, mascot, abbreviation, conference, classification (FBS/FCS/D2/D3), team colors, logos, Twitter handle, and stadium/venue information." }, { "slug": "COLLEGE_FOOTBALL_DATA_LIST_VENUES_STADIUMS", "name": "List Venues and Stadiums", "description": "Tool to list college football venues with metadata (name, capacity, location, etc.). Use when you need detailed venue information for a specific season." }, { "slug": "COLLEGE_FOOTBALL_DATA_NFL_DRAFT_PICKS", "name": "NFL Draft Picks", "description": "Tool to list NFL Draft picks. Use when you need draft pick data by year, round, team, player, etc." }, { "slug": "COLLEGE_FOOTBALL_DATA_NFL_DRAFT_POSITIONS", "name": "NFL Draft Positions", "description": "Retrieves the standardized list of NFL draft positions. Returns all position names and abbreviations used to classify players in NFL drafts. Useful for filtering draft picks by position or understanding position categories in draft analysis. No parameters required." }, { "slug": "COLLEGE_FOOTBALL_DATA_NFL_DRAFT_TEAMS", "name": "NFL Draft Teams", "description": "Tool to list NFL teams used in draft endpoints. Use when preparing to retrieve NFL draft data by team." }, { "slug": "COLLEGE_FOOTBALL_DATA_PLAY_BY_PLAY_DATA", "name": "Play-by-Play Data", "description": "Tool to fetch play-by-play data for college football games. Use when you need detailed play logs filtered by season, week, team, or game." }, { "slug": "COLLEGE_FOOTBALL_DATA_PLAY_STATS_PLAYER", "name": "Play Stats Player", "description": "Fetch player-level statistics tied to individual plays. Returns detailed stats for each player's contribution to a play (rushes, receptions, completions, etc.). Use this when you need: - Play-by-play player statistics - Granular data on individual player performance per play - Analysis of a specific athlete's game contributions Note: Recommend filtering by year/week/team or gameId to limit result size." }, { "slug": "COLLEGE_FOOTBALL_DATA_PLAY_STAT_TYPES", "name": "Play Stat Types", "description": "Tool to fetch all play-level stat type definitions. Use when you need a catalog of available play stat types for filtering or referencing." }, { "slug": "COLLEGE_FOOTBALL_DATA_PPA_PLAYER_BY_GAME_ACTION", "name": "Player PPA by Game", "description": "Retrieve player-level PPA (Predicted Points Added) / EPA (Expected Points Added) stats for individual games. PPA measures how many points a player adds/subtracts compared to average performance on similar plays. Use this tool to analyze individual player contributions per game, filtered by season, week, team, or position. IMPORTANT: Either 'week' OR 'team' must be specified in the request." }, { "slug": "COLLEGE_FOOTBALL_DATA_PPA_PLAYER_BY_SEASON", "name": "PPA Player By Season", "description": "Tool to fetch player-level PPA/EPA aggregated by season. Use when you need seasonal PPA metrics for specific players or groups after applying filters." }, { "slug": "COLLEGE_FOOTBALL_DATA_PPA_PREDICTED_POINTS_EP", "name": "Predict Expected Points (EP)", "description": "Get expected points (EP) for all field positions given a specific down and distance scenario. Returns expected points values for yard lines 1-99, useful for analyzing game situations and fourth-down decisions. Common scenarios: 1st and 10, 3rd and short, 4th and goal." }, { "slug": "COLLEGE_FOOTBALL_DATA_PPA_TEAM_BY_GAME", "name": "PPA Team By Game", "description": "Tool to retrieve team Predicted Points Added (PPA) by game. Use when you need team-level PPA metrics for games after filtering by season, week, team, or date." }, { "slug": "COLLEGE_FOOTBALL_DATA_RANKINGS_POLLS", "name": "Rankings Polls", "description": "Retrieve college football poll rankings (AP Top 25, Coaches Poll, Playoff Committee, FCS, Division II/III). Returns weekly rankings including team rank, school name, conference, first-place votes, and points. Use this tool to look up historical or current poll standings for any season from 1900 to present. Required: year (e.g., 2023). Optional: season_type (regular/postseason), week number." }, { "slug": "COLLEGE_FOOTBALL_DATA_RATINGS_ELO", "name": "Elo Ratings", "description": "Tool to retrieve Elo ratings for college football teams. Use when you need historical Elo ratings by season or for a specific team." }, { "slug": "COLLEGE_FOOTBALL_DATA_RATINGS_SP_PLUS", "name": "SP+ Ratings", "description": "Retrieve SP+ (Success Rate + Points Per Play) team ratings for college football. SP+ is an advanced tempo- and opponent-adjusted measure of college football efficiency. Use this to get overall team ratings, offensive/defensive rankings, and special teams metrics. Specify a year to get all teams' ratings for that season, or a team name to get historical ratings across seasons, or both for a specific team-season combination." }, { "slug": "COLLEGE_FOOTBALL_DATA_RATINGS_SRS", "name": "SRS Ratings", "description": "Retrieves Simple Rating System (SRS) team ratings. SRS measures team strength based on point differential adjusted for strength of schedule. Either year or team parameter must be provided. Use year to get all teams' ratings for a season, or team to get historical ratings for a specific team." }, { "slug": "COLLEGE_FOOTBALL_DATA_RECRUITING_GROUP_DICTIONARY", "name": "Recruiting Group Dictionary", "description": "Retrieves aggregated college football recruiting data grouped by position. Use this tool to analyze recruiting performance by position group for specific teams or conferences. Returns composite ratings, star averages, and commit counts by position group (e.g., Quarterback, Receiver, Defensive Back). Useful for comparing recruiting strength across different positions or evaluating team/conference recruiting patterns." }, { "slug": "COLLEGE_FOOTBALL_DATA_RECRUITING_TRANSFER_PORTAL", "name": "Recruiting Transfer Portal", "description": "Retrieves NCAA college football transfer portal entries for a given season. Returns player transfer information including origin school, destination school (if committed), position, star rating, transfer rating, transfer date, and eligibility status. Useful for tracking player movement between schools, analyzing transfer trends, and identifying key transfers. Data is available from 2021 onwards when the transfer portal became widely used." }, { "slug": "COLLEGE_FOOTBALL_DATA_RETURNING_PRODUCTION_TEAM", "name": "Returning Production by Team", "description": "Tool to fetch Bill Connelly–style returning production splits by team and season. Use when evaluating returning offense, defense, and overall production for teams in a given season." }, { "slug": "COLLEGE_FOOTBALL_DATA_SEARCH_PLAYERS", "name": "Search Players", "description": "Search for college football players by name. Returns top 100 results matching the search term. Use this action to find players by name and optionally filter by year, team, or position." }, { "slug": "COLLEGE_FOOTBALL_DATA_SEASON_STATS_PLAYER", "name": "Season Stats Player", "description": "Fetch aggregated season statistics for college football players. Returns individual player stats by category (passing, rushing, receiving, defensive, kicking, etc.) for a specified year. Useful for comparing player performance across a season or filtering by team/conference." }, { "slug": "COLLEGE_FOOTBALL_DATA_SEASON_STATS_TEAM", "name": "Season Team Stats", "description": "Tool to get basic season stats aggregated by team and season. Use when you need a summary of team-level statistics for a particular season." }, { "slug": "COLLEGE_FOOTBALL_DATA_SEASON_TYPES_DICTIONARY", "name": "Season Types Dictionary", "description": "Retrieve the list of available season types for a specific college football year. Returns types like 'regular', 'postseason', and for certain years 'spring_regular', 'spring_postseason'. Use this to discover valid seasonType values to pass to other endpoints." }, { "slug": "COLLEGE_FOOTBALL_DATA_TEAM_MATCHUP_HISTORY", "name": "Team Matchup History", "description": "Tool to retrieve head-to-head team matchup records over a date range. Use after selecting two FBS teams to compare their matchup history." }, { "slug": "COLLEGE_FOOTBALL_DATA_TEAM_RECORDS", "name": "Get team season records", "description": "Retrieve college football team win-loss records for a specific season. Returns detailed breakdowns including total, conference, home, away, neutral site, regular season, and postseason records. Requires a year parameter. Optionally filter by team name, conference, division, or season type." }, { "slug": "COLLEGE_FOOTBALL_DATA_TEAM_ROSTER", "name": "Get Team Roster", "description": "Fetches the roster for a college football team for a specific season. Returns player details including name, position, height, weight, jersey number, academic year, and hometown info. Use this to get player information for any FBS or FCS team from 2009 onwards." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "college_football_data_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CollegeFootballData.com API Key", "type": "string", "description": "Your personal API key for authenticating requests to the CollegeFootballData.com API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "columns_ai", "name": "Columns AI", "logo": "https://logos.composio.dev/api/columns_ai", "description": "The simple platform to build data stories. Create interactive graphs and visualizations programmatically.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COLUMNS_AI_GET_VISUAL_TEMPLATE", "name": "Get Visual Template", "description": "Tool to retrieve a visual graph template by its ID. Use when you need to fetch compressed graph data for creating new visualizations." }, { "slug": "COLUMNS_AI_SEND_EVENT", "name": "Send Event", "description": "Tool to submit real-time event data to Columns platform for live analytics and visualization. Use when you need to stream event messages to a specified topic for real-time processing and querying. Messages will be available for visualization via Columns AI UI or API queries." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "columns_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from your Profile at https://columns.ai/profile", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "commcare", "name": "CommCare", "logo": "https://logos.composio.dev/api/commcare", "description": "CommCare is a mobile data collection and case management platform for health and social programs", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COMMCARE_CREATE_LOOKUP_TABLE", "name": "Create Lookup Table", "description": "Tool to create a new lookup table in a CommCare domain. Use when you need to set up reference data structures like product catalogs, price lists, or configuration tables. Requires 'Edit Apps' permission." }, { "slug": "COMMCARE_CREATE_WEB_USER_INVITATION", "name": "Create Web User Invitation", "description": "Tool to create an invitation for a new web user in CommCare. Use when you need to invite a user with specific role and permissions. Requires 'Edit Web Users & Edit Access API' permissions." }, { "slug": "COMMCARE_LIST_REPORTS", "name": "List Reports", "description": "Tool to retrieve available reports configured in a CommCare project. Use when you need to discover what reports exist before downloading report data via the Download Report Data API." }, { "slug": "COMMCARE_SINGLE_SIGN_ON", "name": "Single Sign On", "description": "Tool to validate login credentials and retrieve user profile for a mobile worker or web user. Use when you need to authenticate a user and obtain their profile information including roles, permissions, locations, and configuration details." }, { "slug": "COMMCARE_SUBMIT_FORM_ODK_COMPATIBLE", "name": "Submit Form ODK Compatible", "description": "Tool to submit form data using ODK-compatible endpoint for Android client compatibility. Use when submitting XForm data to CommCare. Requires properly formatted XML with metadata including unique instanceID." }, { "slug": "COMMCARE_SUBMIT_FORM_TO_APP", "name": "Submit Form to Application", "description": "Tool to submit an XForm to a specific CommCare application. Use when you need to submit form data and tag it with a specific application ID. The form is submitted as XML following the OpenRosa standard with required metadata fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "commcare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CommCare API Key. Navigate to your CommCare account > \"My Account Settings\" > \"API Keys\" to retrieve your API key.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Email", "type": "string", "description": "Your CommCare account email address. Navigate to your CommCare account > \"My Account Settings\" > \"API Keys\" to retrieve your credentials.", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "Domain", "type": "string", "description": "Your CommCare project domain/project name. This appears in your CommCare URLs (e.g., commcarehq.org/a/{domain}/...).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "commpeak", "name": "Commpeak", "logo": "https://logos.composio.dev/api/commpeak", "description": "Cloud Contact Center Solutions with HLR/LRN/DNC phone number lookup services", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COMMPEAK_LOOKUP_ASYNC_REQUEST", "name": "Submit Async Lookup Request", "description": "Tool to submit asynchronous lookup requests for batch phone number validation and HLR queries. Use when you need to process multiple phone numbers (up to 200) and retrieve results later using the returned task_id." }, { "slug": "COMMPEAK_LOOKUP_GET_RESULT", "name": "Get Lookup Result", "description": "Tool to retrieve results from previously completed lookup jobs. Use when you need to fetch the results of an async lookup operation using its job_id or task_id." }, { "slug": "COMMPEAK_LOOKUP_SEARCH_RESULTS", "name": "Search Lookup Results", "description": "Tool to filter and search through previous lookup operation results. Use when you need to find specific lookup results by job IDs or country codes." }, { "slug": "COMMPEAK_LOOKUP_SYNC_REQUEST", "name": "Sync Phone Number Lookup", "description": "Tool to perform real-time phone number verification and retrieve details. Use when you need immediate, synchronous results for single phone number lookups including validation, network information, roaming status, and carrier details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "commpeak_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Sign in and retrieve your API Token from \"Lookup\" > \"API Service\" at https://my.commpeak.com/hlr/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "companyenrich", "name": "Companyenrich", "logo": "https://logos.composio.dev/api/companyenrich", "description": "CompanyEnrich provides instant company data enrichment, search, and similar company discovery through API endpoints.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COMPANYENRICH_AUTOCOMPLETE_COMPANIES", "name": "Autocomplete Companies", "description": "Returns a list of companies matching the given partial domain name. This is useful for autocompleting domain names in your application. Up to 10 companies are returned per request. Cost: FREE - No credits deducted. Use when you need to autocomplete company domains in your application." }, { "slug": "COMPANYENRICH_AUTOCOMPLETE_KEYWORDS", "name": "Autocomplete Keywords", "description": "Lookup keywords for use in company search filters. This endpoint returns a list of keywords that match the provided query string. Use this action to discover valid keyword values before using them in company search filters. The results are sorted by relevance. Example: query=\"tech\" might return [\"Technology\", \"Tech\", \"Information Technology\", ...]" }, { "slug": "COMPANYENRICH_AUTOCOMPLETE_POSITIONS", "name": "Autocomplete Positions", "description": "Lookup positions/job titles for use in people search filters. This endpoint returns a list of job titles that match the provided query string. Use this action to discover valid position values before using them in people search filters. The results are sorted by relevance. Example: query=\"engineer\" might return [\"Software Engineer\", \"Data Engineer\", \"Sales Engineer\", ...]" }, { "slug": "COMPANYENRICH_AUTOCOMPLETE_TECHNOLOGIES", "name": "Autocomplete Technologies", "description": "Lookup technologies for use in company search filters. This endpoint returns a list of technology names that match the provided query string. Use this action to discover valid technology values before using them in company search filters. The results are sorted by relevance. Example: query=\"react\" might return [\"React\", \"React Native\", \"ReactJS\", ...]" }, { "slug": "COMPANYENRICH_COUNT_COMPANIES", "name": "Count companies matching search criteria", "description": "Returns the total count of companies matching the given search criteria without retrieving the actual results. Use this action to check how many companies match your filters before performing a full search. Cost: FREE - No credits deducted." }, { "slug": "COMPANYENRICH_COUNT_SIMILAR_COMPANIES", "name": "Count Similar Companies", "description": "Tool to count the total number of similar companies matching the given search criteria without retrieving the actual results. Use when you need to know how many similar companies exist before making a request to fetch them, or when you only need the count without the full company details. Cost: FREE - No credits deducted." }, { "slug": "COMPANYENRICH_CREATE_PEOPLE_SEARCH_EXPORT_JOB", "name": "Create people search export job", "description": "Creates an asynchronous search export job for up to 50,000 people. Use when you need to export large sets of people data that will be processed in the background. The job returns immediately with a job ID, and the webhook URL will be called with a notification when processing completes. Cost: 2 credits per person returned (charged on completion)." }, { "slug": "COMPANYENRICH_CREATE_SEARCH_EXPORT_JOB", "name": "Create search export job", "description": "Creates an asynchronous search export job for company data. Supports both standard company search and similar-company search. Returns a job ID immediately while processing happens in the background. The webhook URL (if provided) will be called with a notification when processing completes. Cost: 1 credit per company returned (charged on completion). Use this action when you need to export large datasets (up to 50,000 companies) that would take too long for a synchronous request. The job runs asynchronously and notifies you via webhook when complete." }, { "slug": "COMPANYENRICH_ENRICH_BY_DOMAIN", "name": "Enrich company by domain", "description": "Enriches a company using its domain name as lookup parameter. This is the preferred way to enrich a company as domain lookups are fast and reliable. Each domain maps to a unique company. Cost: 1 credit per call (5 credits if workforce expansion is requested)." }, { "slug": "COMPANYENRICH_ENRICH_BY_PROPERTIES", "name": "Enrich company by properties", "description": "Enriches a company using its properties. You must provide at least one of the following properties: name, linkedinUrl, linkedinId, twitterUrl, facebookUrl, instagramUrl. Best match is used to determine the company in case of ambiguity. Cost: 1 credit per call (5 credits if workforce expansion is requested)." }, { "slug": "COMPANYENRICH_ENRICH_COMPANIES", "name": "Batch Enrich Companies", "description": "Enriches a list of companies using their domain names. Use when you need to enrich multiple companies in a single request. Up to 50 domains can be provided. Each domain maps to a unique company. Cost: 1 credit per domain enriched (5 credits for workforce expansion)." }, { "slug": "COMPANYENRICH_FIND_SIMILAR_COMPANIES", "name": "Find Similar Companies", "description": "Tool to find similar companies to the given company by domain. Use when you need to find companies similar to a target company based on industry, size, or other characteristics. Returns up to 100 companies per request. Cost: 5 credits per company returned, 5 credits if no results found." }, { "slug": "COMPANYENRICH_GET_BULK_ENRICHMENT_JOB_STATUS", "name": "Get Bulk Enrichment Job Status", "description": "Returns the current status of a bulk enrichment job. Once the job is completed, the response includes a results_url to download the enrichment results. Cost: FREE - No credits deducted. Use when you need to check the progress of a bulk enrichment job or get the results URL after the job completes." }, { "slug": "COMPANYENRICH_GET_COMPANY_WORKFORCE", "name": "Get Company Workforce", "description": "Returns workforce insights for a single company. You must provide exactly one lookup parameter: id or domain. The response includes observed employee count, an employee range bucket, and headcounts grouped by root departments. Costs 5 credits per successful call. Use when you need to find workforce details (employee count, department breakdown) for a specific company given its domain or company ID." }, { "slug": "COMPANYENRICH_GET_COUNTRY_BY_CODE", "name": "Get Country by Code", "description": "Tool to search for a country by its ISO 3166-1 alpha-2 code. Returns country information including name, coordinates, and country code. Use when you need to retrieve details about a specific country. Example: Get country details for US, GB, DE, etc." }, { "slug": "COMPANYENRICH_GET_CURRENT_USER", "name": "Get Current User", "description": "Returns information about the authenticated user, including their API key, credit balance, and account capabilities. This endpoint requires authentication via an API key in the Authorization header. Cost: FREE - No credits deducted." }, { "slug": "COMPANYENRICH_GET_JOB_DETAILS", "name": "Get Job Details", "description": "Returns details for a specific job by ID. Use when you need to check the status, progress, or result of an async enrichment job. Cost: FREE - No credits deducted." }, { "slug": "COMPANYENRICH_GET_PEOPLE_SEARCH_EXPORT_JOB_STATUS", "name": "Get People Search Export Job Status", "description": "Returns the current status of a person search export job. Once completed, includes the results_url to download the export results. Use when: - Checking if an async person search export job has completed - Getting the download URL for completed exports - Monitoring job progress or checking for errors Cost: FREE - No credits deducted for status checks." }, { "slug": "COMPANYENRICH_GET_REGIONS", "name": "Get Regions", "description": "Tool to get all available regions. Returns a list of all geographic regions supported by the API. Use when you need to retrieve region information for filtering or validation purposes." }, { "slug": "COMPANYENRICH_GET_SEARCH_EXPORT_JOB_STATUS", "name": "Get search export job status", "description": "Returns the current status of a search export job. Once the job is completed, the response will include a results_url that can be used to download the exported company data. This action is free - no credits are deducted. Use this action to: - Check if an export job has completed - Get the download URL for completed exports - Monitor job progress and troubleshoot failures" }, { "slug": "COMPANYENRICH_LIST_ALL_JOBS", "name": "List all jobs", "description": "Returns a paginated list of all jobs (bulk enrichment, etc.) for the authenticated user. Supports optional filtering by job status and type. Cost: FREE - No credits deducted. Use this action to: - View all your jobs - Check the status of jobs - Monitor job progress and completion - Filter jobs by status (pending, processing, completed, failed, etc.) - Filter jobs by type (bulk_enrichment, etc.)" }, { "slug": "COMPANYENRICH_LIST_BULK_ENRICHMENT_JOBS", "name": "List bulk enrichment jobs", "description": "Returns a paginated list of all bulk enrichment jobs for the authenticated user. Supports optional filtering by job status. This action is free - no credits are deducted. Use this action to: - View all your bulk enrichment jobs - Check the status of enrichment jobs - Monitor enrichment job progress and completion - Filter jobs by status (pending, processing, completing, completed, failed)" }, { "slug": "COMPANYENRICH_LIST_INDUSTRIES", "name": "List Industries", "description": "Obtain a list of all company industries. Returns all industry names along with their associated NAICS code prefixes. Use when you need to retrieve the complete list of industries for filtering or categorization." }, { "slug": "COMPANYENRICH_LIST_PEOPLE_SEARCH_EXPORT_JOBS", "name": "List Person Search Export Jobs", "description": "Returns a paginated list of all person search export jobs for the authenticated user. Supports optional filtering by job status. Use this to check the status of previously submitted export jobs, view progress, or retrieve export results. Cost: FREE - No credits deducted." }, { "slug": "COMPANYENRICH_LIST_SEARCH_EXPORT_JOBS", "name": "List search export jobs", "description": "Returns a paginated list of all search export jobs for the authenticated user. Supports optional filtering by job status. This action is free - no credits are deducted. Use this action to: - View all your search export jobs - Check the status of export jobs - Monitor export job progress and completion - Filter jobs by status (pending, processing, completed, failed, etc.)" }, { "slug": "COMPANYENRICH_LOOKUP_PERSON", "name": "Lookup Person by Email", "description": "Look up a person by email address. We resolve the company from the email domain first, then match the person by email local-part patterns. Returns the best deterministic match when found. Costs 5 credits per successful call. Use when you need to find person details (name, position, company, etc.) given an email address." }, { "slug": "COMPANYENRICH_SCROLL_PEOPLE_SEARCH", "name": "Search people with cursor pagination", "description": "Searches people based on given criteria using cursor-based pagination. Use when you need to find people at specific companies or with particular roles. You can request the next page of results by using the cursor parameter. Cost: 2 credits per person returned, 2 credits minimum if no results are found." }, { "slug": "COMPANYENRICH_SEARCH_CITIES", "name": "Search cities by name or country", "description": "Search for cities by name or country codes. Returns up to 100 cities per page. Use when you need to find cities matching a query string, optionally filtered by country codes." }, { "slug": "COMPANYENRICH_SEARCH_COMPANIES", "name": "Search companies by criteria", "description": "Searches companies based on given criteria. You can search by name, domain, industry, employees, revenue, founded year, and more. Up to 10,000 results can be returned from this endpoint (page * pageSize cannot exceed 10,000). For more results, use the scroll endpoint. Cost: 1 credit per company returned, 1 credit minimum if no results are found." }, { "slug": "COMPANYENRICH_SEARCH_COUNTRIES", "name": "Search Countries", "description": "Tool to search countries by name. Returns up to 100 countries per page. Use when you need to find country information including codes, names, and coordinates. Supports pagination and filtering by name query." }, { "slug": "COMPANYENRICH_SEARCH_PEOPLE", "name": "Search People", "description": "Searches people based on given criteria using page-based pagination. Up to 10,000 results can be returned from this endpoint (page * pageSize cannot exceed 10,000). For more results, use the scroll endpoint. Cost: 2 credits per person returned, 2 credits minimum if no results are found." }, { "slug": "COMPANYENRICH_SEARCH_STATES", "name": "Search States", "description": "Tool to search states by name or country codes. Returns up to 100 states per page. Use when you need to find states within a country or search states by name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "companyenrich_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CompanyEnrich API key from https://app.companyenrich.com/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "connecteam", "name": "Connecteam", "logo": "https://logos.composio.dev/api/connecteam", "description": "Connecteam is a comprehensive workforce management platform designed to streamline operations, enhance communication, and improve HR processes for deskless teams.", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONNECTEAM_ARCHIVE_USERS", "name": "Archive Users", "description": "Tool to archive one or more users by their unique IDs. Use when you need to deactivate users without deleting their records." }, { "slug": "CONNECTEAM_CREATE_USERS", "name": "Create Users", "description": "Tool to create multiple users in Connecteam. Use when you need to add several staff or admin accounts at once." }, { "slug": "CONNECTEAM_GENERATE_UPLOAD_URL", "name": "Generate Upload URL", "description": "Tool to generate a pre-signed URL for uploading a file. Use when you need a secure, time-limited URL prior to file upload." }, { "slug": "CONNECTEAM_GET_CHAT", "name": "Get Chat", "description": "Tool to retrieve chat conversations. Use when you need to list all team chats/channels after confirming your Communications hub is on Expert plan." }, { "slug": "CONNECTEAM_GET_CUSTOM_FIELD_CATEGORIES", "name": "Get Custom Field Categories", "description": "Tool to retrieve all custom field categories. Use when you need to list or filter custom field categories in your Connecteam account." }, { "slug": "CONNECTEAM_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Tool to retrieve all custom fields associated with the account. Use when you need to filter, sort, or page through custom fields after authentication." }, { "slug": "CONNECTEAM_GET_FORMS", "name": "Get Forms", "description": "Tool to retrieve all form definitions from Connecteam. Use when you need to list all existing forms after enabling the Forms API." }, { "slug": "CONNECTEAM_GET_JOBS", "name": "Get Jobs", "description": "Tool to retrieve a list of job objects relevant to a specific instance ID. Use after confirming scheduler or time clock instance ID when you need to filter and page through jobs." }, { "slug": "CONNECTEAM_GET_PERFORMANCE_INDICATORS", "name": "Get Performance Indicators", "description": "Tool to retrieve the list of performance metric indicators. Use when you need to list available performance indicators for data analysis. Examples: \"List performance metrics\"." }, { "slug": "CONNECTEAM_GET_POLICY_TYPES", "name": "Get Policy Types", "description": "Tool to retrieve available time-off policy types. Use before filtering or creating time-off requests by policyTypeId." }, { "slug": "CONNECTEAM_GET_PUBLISHERS", "name": "Get Publishers", "description": "Tool to retrieve a list of all custom publishers. Use when you need to list custom publishers after confirming API access." }, { "slug": "CONNECTEAM_GET_SCHEDULERS", "name": "Get Schedulers", "description": "Tool to retrieve a list of job schedulers associated with the account. Use after authentication when you need to enumerate all schedulers." }, { "slug": "CONNECTEAM_GET_SMART_GROUPS", "name": "Get Smart Groups", "description": "Tool to retrieve all smart groups associated with the account. Use when you need to list all smart groups after authenticating with a valid API key." }, { "slug": "CONNECTEAM_GET_TASK_BOARDS", "name": "Get Task Boards", "description": "Tool to retrieve all task boards. Use after authenticating with a valid API key to list available task boards." }, { "slug": "CONNECTEAM_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of all users associated with your account. Use when you need to fetch and filter user data." }, { "slug": "CONNECTEAM_LIST_ME", "name": "List Me", "description": "Tool to retrieve account information including company name and company ID. Use when you need to get details about the authenticated account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "connecteam_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Connecteam API Key", "type": "string", "description": "The secret API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "constant_contact", "name": "Constant Contact", "logo": "https://logos.composio.dev/api/constant_contact", "description": "Email marketing and automation platform for small businesses", "category": "marketing", "authSchemes": [ "OAUTH2" ], "toolCount": 93, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONSTANT_CONTACT_ADD_ACCOUNT_EMAIL_ADDRESS", "name": "Add Account Email Address", "description": "Add a new email address to a Constant Contact account. Use this action when you need to associate an additional email address with a Constant Contact account. After adding an email address, Constant Contact sends a confirmation email to the new address. You can only use email addresses with CONFIRMED status to create email campaigns. Requires the 'account_update' OAuth scope." }, { "slug": "CONSTANT_CONTACT_ADD_CONTACT_TAGGINGS", "name": "Add Contact Taggings", "description": "Add Tags to Contacts. Use this action when you need to asynchronously add one or more tags to contacts that meet your specified contact filtering criteria. The action creates an asynchronous activity that processes the tag addition. The activity returns an activity_id that can be used to track the status of the operation." }, { "slug": "CONSTANT_CONTACT_ADD_LIST_MEMBERSHIPS", "name": "Add list memberships", "description": "Add Contacts to Lists creates an activity to add contacts to one or more contact lists. Use this action when you need to bulk-add contacts to Constant Contact lists. The action supports adding contacts by individual contact IDs, all active contacts, contacts from existing lists, segments, engagement levels, or tags. Up to 50 lists and 500 contacts can be specified per request. This is an asynchronous operation that returns an activity ID for tracking progress." }, { "slug": "CONSTANT_CONTACT_COPY_EVENT", "name": "Copy Event", "description": "POST (copy) an existing event in Constant Contact. Use this action when you need to duplicate an existing event to create a new event with similar configuration. The copied event will have a new event_id but will retain all settings, campaigns, and configurations from the source event. You must provide a unique name for the new event. Optionally, you can specify which campaign activities to copy (if not specified, all activities are copied). This action is useful for recurring events or when creating event series with similar configurations. Note: The new event name must be unique within the account." }, { "slug": "CONSTANT_CONTACT_COUNT_CONTACT_CONSENTS", "name": "Count Contact Consents", "description": "GET contact consent counts for a Constant Contact account. Use this action when you need to retrieve aggregate counts of contacts by consent status, including explicitly confirmed, implicitly confirmed, pending, unsubscribed, and total contacts. Optionally include counts of newly subscribed contacts from the last 30 days by specifying the include parameter with 'new_subscriber'. This is a read-only operation that returns summary statistics about contact consent states." }, { "slug": "CONSTANT_CONTACT_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact in Constant Contact. Use this action when you need to add a new contact to your Constant Contact account. The contact's email address must be unique within the account. You can optionally include the contact's name, phone numbers, addresses, and assign them to lists or tags. This action requires the 'contact_update' OAuth scope." }, { "slug": "CONSTANT_CONTACT_CREATE_CONTACT_FROM_SIGN_UP_FORM", "name": "Create contact from sign-up form", "description": "Create or Update a Contact via sign-up form. Use this action when you need to add a new contact to Constant Contact through a sign-up form submission. The action identifies contacts by email address - if the email already exists, the contact will be updated; if new, a contact will be created. At least one list_id must be provided in list_memberships to assign the contact to a list. If using SMS channel, the sms_channel object with country_code, dial_code, sms_address, and sms_channel_consents is required instead of email_address and list_memberships." }, { "slug": "CONSTANT_CONTACT_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Create a new contact list in Constant Contact. Use this action when you need to create a new contact list to organize and manage your contacts. The list name must be unique within your account. You can optionally provide a description and mark the list as a favorite. Once created, contacts can be added to the list using the appropriate action." }, { "slug": "CONSTANT_CONTACT_CREATE_CONTACT_TAG", "name": "Create contact tag", "description": "POST (Create) a Tag. Use this action when you need to create a new contact tag in Constant Contact. Tag names must be unique within the account. Attempting to create a tag with a duplicate name will result in an error." }, { "slug": "CONSTANT_CONTACT_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Create a new custom field for contacts in Constant Contact. Use when you need to add a custom data field to store additional information about contacts, such as preferences, custom attributes, or extended contact details. The custom field can store different types of data including strings, numbers, dates, currency values, and select options. Required fields are 'label' (the display name) and 'type' (the data type to store)." }, { "slug": "CONSTANT_CONTACT_CREATE_EMAIL_CAMPAIGN", "name": "Create Email Campaign", "description": "Create a new email campaign in Constant Contact. Use this action when you need to create a new email marketing campaign. The campaign will be created in DRAFT status by default. You must include a unique name for the campaign and at least one email campaign activity containing the email content (from_email, from_name, reply_to_email, subject, and html_content). After creation, the campaign can be scheduled or sent using appropriate actions. This action is suitable for creating marketing campaigns, newsletters, or promotional emails. Note: You must validate your sending email address in Constant Contact before you can use it in a campaign. Include [[trackingImage]] in your HTML content for open tracking." }, { "slug": "CONSTANT_CONTACT_CREATE_EVENT", "name": "Create Event", "description": "Create a new event with default settings in Constant Contact. Use this action when you need to create a new event in Constant Contact. The event is created with default settings including a registration form and landing page. The event will be created in DRAFT status and can be updated later before publishing. This action requires the 'event_update' OAuth scope." }, { "slug": "CONSTANT_CONTACT_CREATE_RESEND_TO_NON_OPENERS", "name": "Create Resend to Non-openers", "description": "Create a resend to non-openers campaign activity for an email campaign. Use this action when you need to resend an email campaign to contacts who did not open the original email. You can schedule the resend using delay_days or delay_minutes, and optionally provide a different subject line for the resend. This action is useful for re-engaging contacts who missed your initial campaign. Requires the 'campaign_data' OAuth scope." }, { "slug": "CONSTANT_CONTACT_CREATE_SOCIAL_POST", "name": "Create Social Post", "description": "Create a new social media post campaign. Use this action when you need to create a new social media post campaign in Constant Contact. This action allows you to create posts with content for multiple social profiles. Set the status to 'DRAFT' to save without publishing, or 'SCHEDULED' to schedule for publication at a specific time. This action requires the 'campaign_data' OAuth scope." }, { "slug": "CONSTANT_CONTACT_DELETE_CONTACT", "name": "Delete contact", "description": "DELETE a specific contact from your Constant Contact account. Use this action when you need to permanently remove a contact from your account. This action is irreversible — once deleted, the contact cannot be recovered." }, { "slug": "CONSTANT_CONTACT_DELETE_CONTACT_LIST", "name": "Delete Contact List", "description": "Permanently deletes a contact list from Constant Contact by its ID. This action is irreversible — once a contact list is deleted, it cannot be recovered. Use this action when you need to remove outdated or unwanted contact lists. Note that deleting a list does not delete the contacts that were members of the list. The API returns 204 No Content on successful deletion with an empty response body." }, { "slug": "CONSTANT_CONTACT_DELETE_CONTACTS_ACTIVITY", "name": "Create contact delete activity", "description": "Delete multiple contacts in bulk by submitting a contact_delete activity. Use this action when you need to delete multiple contacts at once by specifying contact IDs (up to 500) or list IDs (up to 50). The contacts are processed asynchronously and the response returns an activity_id to track the deletion progress. This action is irreversible — deleted contacts cannot be recovered once removed." }, { "slug": "CONSTANT_CONTACT_DELETE_CONTACT_TAG", "name": "Delete contact tag", "description": "Delete a specific contact tag from your Constant Contact account. Use this action when you need to remove an existing tag from your account. This action is irreversible — once deleted, the tag cannot be recovered." }, { "slug": "CONSTANT_CONTACT_DELETE_CONTACT_TAGS", "name": "Delete contact tags", "description": "Delete one or more tags from contacts in Constant Contact. Use this action when you need to remove tags from contacts in bulk. The operation creates an asynchronous activity that processes the tag deletions. The activity_id returned can be used to track the status of the deletion operation. Note: This is an irreversible operation — once tags are deleted from contacts, they cannot be easily recovered." }, { "slug": "CONSTANT_CONTACT_DELETE_CUSTOM_FIELD", "name": "Delete custom field", "description": "DELETE a specific contact custom field from your Constant Contact account. Use this action when you need to permanently remove a custom field that is no longer needed. This action is irreversible — the custom field cannot be recovered once deleted." }, { "slug": "CONSTANT_CONTACT_DELETE_CUSTOM_FIELDS", "name": "Delete custom fields", "description": "Delete one or more custom fields from a Constant Contact account. Use when you need to remove outdated or unnecessary custom fields from your contact data. The deletion is processed asynchronously as an activity, so check the activity status to verify completion. This action is irreversible once the activity is processed." }, { "slug": "CONSTANT_CONTACT_DELETE_EMAIL_CAMPAIGN", "name": "Delete Email Campaign", "description": "DELETE an Email Campaign from your Constant Contact account. Use this action when you need to permanently remove an email campaign that is no longer needed or was created in error. This action is irreversible — the email campaign cannot be recovered once deleted. The API returns 204 No Content on successful deletion with an empty response body." }, { "slug": "CONSTANT_CONTACT_DELETE_LIST_ACTIVITY", "name": "Delete contact list activity", "description": "Delete one or more contact lists from your Constant Contact account by submitting a list delete activity. Use this action when you need to permanently remove contact lists that are no longer needed. This action is irreversible — once deleted, contact lists cannot be recovered. The deletion is processed as an async activity, and you can track the status using the activity_id returned." }, { "slug": "CONSTANT_CONTACT_DELETE_SEGMENT", "name": "Delete Segment", "description": "Permanently deletes a segment from Constant Contact by its ID. Use this action when you need to remove outdated or unwanted segments from your Constant Contact account. This action is irreversible — once a segment is deleted, it cannot be recovered. Note that deleting a segment does not delete the contacts that were members of the segment. The API returns 204 No Content on successful deletion with an empty response body." }, { "slug": "CONSTANT_CONTACT_EXPORT_CONTACTS", "name": "Export Contacts", "description": "Create a bulk activity that exports contacts to a CSV file. Use this action when you need to export contacts from your Constant Contact account to a CSV file for backup, migration, or analysis purposes. You can export all contacts or filter by specific contact lists, segments, or status. The exported file will be available for download once the activity status changes to COMPLETE." }, { "slug": "CONSTANT_CONTACT_GET_ACCOUNT_PHYSICAL_ADDRESS", "name": "Get account physical address", "description": "GET the Physical Address for the Account. Use this action when you need to retrieve the physical mailing address associated with the Constant Contact account, such as for compliance verification or contact information display." }, { "slug": "CONSTANT_CONTACT_GET_ACCOUNT_SUMMARY", "name": "Get account summary", "description": "GET a summary of account details for a Constant Contact account. Use when you need to retrieve account information including company name, contact email, phone number, website, and optionally physical address or company logo." }, { "slug": "CONSTANT_CONTACT_GET_ACTIVITY_STATUS", "name": "Get activity status", "description": "GET the status of a specific bulk activity. Use this action when you need to check the processing status of a bulk activity such as contact imports, file exports, or list membership changes in Constant Contact." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT", "name": "Get contact", "description": "GET a contact by their unique ID. Use this action when you need to retrieve detailed information about a specific contact in your Constant Contact account, such as their email, name, company, phone numbers, addresses, custom fields, tags, or list memberships. Optionally include additional properties in the response using the include parameter." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT_ACTIVITY_SUMMARY_REPORT", "name": "Get contact activity summary report", "description": "GET contact tracking activity summary for a specific contact. Use this action when you need to retrieve email engagement metrics (sends, opens, clicks, bounces, forwards, unsubscribes) for a specific contact across a date range. This is useful for analyzing individual contact engagement patterns and campaign performance at the contact level. This is a read-only operation. Requires the contact_data OAuth scope." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT_LIST", "name": "Get Contact List", "description": "GET details for a specific contact list by its ID. Use this action when you need to retrieve information about a specific contact list in your Constant Contact account, such as its name, description, status, and membership counts." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT_OPEN_AND_CLICK_RATES_REPORT", "name": "Get Contact Open and Click Rates Report", "description": "GET average open and click rates for a contact. Use this action when you need to retrieve the average open rate, click rate, and activity count for a specific contact over a given time period. This is useful for analyzing individual contact engagement with your email campaigns. The response includes the average click rate, average open rate, contact ID, and the number of email activities included in the calculation." }, { "slug": "CONSTANT_CONTACT_GET_CONTACTS_EXPORT_FILE", "name": "Get Contacts Export File", "description": "Retrieve the exported contacts file from a completed export contacts activity. Use when you need to download the CSV file containing the contacts that were exported using the export contacts feature. The file_export_id is obtained from the results section of the export contacts activity response." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT_SMS_ENGAGEMENT_HISTORY", "name": "Get Contact SMS Engagement History", "description": "GET SMS Engagement History for a Contact. Use this action when you need to retrieve the SMS engagement history for a specific contact in Constant Contact. This returns details about SMS consent actions (opt-in, opt-out) and the methods used to add or update SMS contact details. The response contains an array of SMS channel history records with details about consent actions, timestamps, and source information depending on the type of SMS consent granted." }, { "slug": "CONSTANT_CONTACT_GET_CONTACT_TAG", "name": "Get contact tag details", "description": "GET Tag Details - Retrieves detailed information about a specific contact tag. Use this action when you need to fetch the name, source, creation/update timestamps, and optionally the count of contacts associated with a specific tag in Constant Contact." }, { "slug": "CONSTANT_CONTACT_GET_CUSTOM_FIELD", "name": "Get custom field", "description": "GET a custom field by its unique ID. Use this action when you need to retrieve details of a specific custom field from your Constant Contact account, such as its label, type, choices, or metadata configuration." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN", "name": "Get email campaign details", "description": "GET details for a single email campaign using its campaign ID. Use this action when you need to retrieve detailed information about a specific email campaign, including its name, subject line, status, content, sender information, and scheduling details. This action is read-only and does not modify any campaign data." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN_ACTIVITY", "name": "Get Email Campaign Activity", "description": "GET details for a specific email campaign activity by its ID. Use this action when you need to retrieve information about a specific email campaign activity in your Constant Contact account, such as its current status, content, or configuration details." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN_ACTIVITY_PREVIEW", "name": "Get email campaign activity preview", "description": "GET the HTML Preview of an Email Campaign Activity. Use this action when you need to retrieve the HTML and plain text preview of an email campaign activity, including subject line, from address, preheader text, and content. This is useful for reviewing how an email will appear before sending it." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN_ACTIVITY_SCHEDULE", "name": "Get Email Campaign Activity Schedule", "description": "GET an email campaign activity schedule. Use this action when you need to retrieve the scheduled date(s) for a specific email campaign activity in Constant Contact. This returns all scheduled send times for the campaign, which can be used to verify when emails will be sent to contacts. This action is read-only and does not modify any campaign data." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN_ACTIVITY_SEND_HISTORY", "name": "Get email campaign activity send history", "description": "GET the send history of an email campaign activity. Use this action when you need to retrieve the send history records for an email campaign activity in Constant Contact. This returns details about each time the email was sent, including the send date, contact count, recipient lists/segments, and send status. This is a read-only operation suitable for auditing email sends, tracking delivery status, or analyzing campaign performance over multiple sends." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGN_ID_XREFS", "name": "Get email campaign ID cross-references", "description": "GET a collection of V2 and V3 API Email Campaign ID cross-references. Use this action when you need to map V2 API campaignId values to V3 API campaign_id and campaign_activity_id values for email campaigns. The endpoint accepts up to 50 V2 campaignId values in each request." }, { "slug": "CONSTANT_CONTACT_GET_EMAIL_CAMPAIGNS_STATS_REPORT", "name": "Get Email Campaign Statistics Report", "description": "GET statistics for one or more email campaigns. Use this action when you need to retrieve performance statistics for email campaigns, including open rates, click rates, bounce rates, unsubscribe rates, and delivery counts. You can request statistics for multiple campaigns by providing comma-separated campaign IDs. This is a read-only operation that returns aggregated email campaign performance metrics. The response includes both percentage-based and count-based statistics for each campaign." }, { "slug": "CONSTANT_CONTACT_GET_EVENT", "name": "Get Event", "description": "GET details for a single event by its unique ID. Use this action when you need to retrieve detailed information about a specific event in your Constant Contact account, such as its name, description, timing, location, organizer, ticket types, registration settings, or other configuration. This is a read-only operation that does not modify any data." }, { "slug": "CONSTANT_CONTACT_GET_LIST_ID_XREFS", "name": "Get list ID cross-references", "description": "GET a collection of V2 and V3 API List IDs cross-references. Use this action when you need to map V2 API sequence_ids to V3 API list_ids for contact lists. The endpoint accepts up to 500 sequence_ids at a time and returns the corresponding V3 list_id values for each V2 sequence_id." }, { "slug": "CONSTANT_CONTACT_GET_PARTNER_WEBHOOK_SUBSCRIPTION", "name": "Get Partner Webhook Subscription", "description": "GET details for a specific Partner Webhook Topic Subscription by its ID. Use this action when you need to retrieve information about a specific webhook topic subscription in your Constant Contact account, such as the webhook callback URI, topic name, description, and topic type." }, { "slug": "CONSTANT_CONTACT_GET_RESEND_TO_NON_OPENERS", "name": "Get resend to non-openers", "description": "GET Details for a Resend to Non-openers Campaign Activity. Use this action when you need to retrieve details about a resend to non-openers campaign activity. This includes information about the resend schedule, timing, status, and subject line used for the campaign. This action requires the campaign_activity_id which can be obtained from the campaign activities endpoint or campaign details endpoint." }, { "slug": "CONSTANT_CONTACT_GET_SEGMENT", "name": "Get Segment", "description": "GET details for a specific segment by its unique ID. Use this action when you need to retrieve detailed information about a specific segment in your Constant Contact account, such as its name, segment criteria, and creation/update timestamps. This is a read-only operation that does not modify any data." }, { "slug": "CONSTANT_CONTACT_IMPORT_CONTACTS_FROM_FILE", "name": "Import contacts from CSV file", "description": "Import contacts into Constant Contact from a CSV file. Use this action when you need to bulk import contacts from a CSV file into Constant Contact contact lists. The CSV file must include either an 'email' or 'sms_number' column. Supports custom fields with 'cf:' prefix. The activity is processed asynchronously - poll the activity status endpoint to check completion. Note: The base_url should not include /v3 as it's appended in the endpoint path_template." }, { "slug": "CONSTANT_CONTACT_IMPORT_CONTACTS_FROM_JSON", "name": "Import contacts from JSON", "description": "Bulk import contacts into Constant Contact using JSON format. Use this action when you need to add multiple contacts at once by providing contact data in JSON format. Each contact must have either an email_address or phone_number. Optionally, you can specify list_ids to add contacts to specific contact lists during import. The contacts are processed asynchronously and the response returns an activity_id to track the import progress." }, { "slug": "CONSTANT_CONTACT_LIST_ACCOUNT_EMAIL_ADDRESSES", "name": "List account email addresses", "description": "GET a Collection of Account Email Addresses. Use this action when you need to retrieve all email addresses associated with a Constant Contact account. Supports filtering by confirmation status (CONFIRMED/UNCONFIRMED), role code (CONTACT/BILLING/REPLY_TO/JOURNALING/OTHER), or a specific email address. This is a read-only operation that requires the 'account_read' OAuth scope." }, { "slug": "CONSTANT_CONTACT_LIST_ACCOUNT_USER_PRIVILEGES", "name": "List account user privileges", "description": "Get the user privileges associated with your access token. Use this action when you need to determine what permissions the authenticated user has within the Constant Contact API. This is a read-only operation that retrieves privileges without requiring any parameters." }, { "slug": "CONSTANT_CONTACT_LIST_ACTIVITY_STATUSES", "name": "List activity statuses", "description": "GET a collection of bulk activities. Use this action when you need to retrieve all bulk activities or filter by status (processing, completed, cancelled, failed, or timed_out). This is useful for monitoring batch operations like contact imports, file exports, or list membership changes." }, { "slug": "CONSTANT_CONTACT_LIST_CONTACT_LISTS", "name": "List Contact Lists", "description": "GET all contact lists for the Constant Contact account. Use this action when you need to retrieve all contact lists from a Constant Contact account. You can filter by name or status, and optionally include membership counts for each list. Results are paginated and can be limited using the limit parameter. This is a read-only operation that returns metadata about contact lists such as names, statuses, and membership information." }, { "slug": "CONSTANT_CONTACT_LIST_CONTACTS", "name": "List contacts", "description": "GET Contacts Collection to retrieve a list of contacts from Constant Contact. Use this action when you need to fetch contacts from your Constant Contact account, with optional filtering by status, email, lists, segments, tags, or update date. Returns up to 500 contacts at a time with pagination support. This is a read-only operation suitable for retrieving contact collections for analysis, synchronization, or display purposes." }, { "slug": "CONSTANT_CONTACT_LIST_CONTACT_TAGS", "name": "List contact tags", "description": "GET Details for All Tags - Retrieves all contact tags for the account. Use this action when you need to fetch a list of all tags available in your Constant Contact account. You can optionally include the count of contacts associated with each tag by setting include_count to true. This is a read-only operation that returns tag metadata such as names, sources, and timestamps." }, { "slug": "CONSTANT_CONTACT_LIST_CUSTOM_FIELDS", "name": "List contact custom fields", "description": "GET custom_fields Collection to retrieve all contact custom field definitions. Use this action when you need to fetch the available custom field definitions that can be used for contacts in Constant Contact. This is a read-only operation that returns metadata about custom fields such as labels, types, and available choices." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_CAMPAIGNS", "name": "List Email Campaigns", "description": "GET a collection of email campaigns from Constant Contact. Use this action when you need to retrieve email campaigns from your Constant Contact account. You can filter results by creation date using before_date and after_date parameters, and control the number of results using the limit parameter. Results are paginated with optional cursor-based pagination via the next link. This is a read-only operation that returns campaign metadata including names, statuses, creation dates, and activity information. Note: The limit parameter defaults to 25 and must be between 1 and 500." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_CAMPAIGN_SUMMARIES_REPORT", "name": "List Email Campaign Summaries Report", "description": "GET an Email Campaigns Summary Report from Constant Contact. Use this action when you need to retrieve an aggregated summary report of all bulk email campaigns, including unique counts for bounces, clicks, opens, sent, unsubscribes, and forwards, as well as aggregated percentage rates for the campaigns on the current page. This is a read-only operation useful for analyzing overall email campaign performance and generating executive-level reports. Note: The limit parameter defaults to 25 and must be between 1 and 500. Pagination is supported via the next link in the response." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_DID_NOT_OPENS_REPORT", "name": "List Email Did Not Opens Report", "description": "GET an Email Did Not Opens Report to retrieve a list of contacts who did not open a specific email campaign. Use this action when you need to analyze email engagement by identifying contacts that received but did not open a specific email campaign activity. This is useful for re-engagement campaigns, follow-up emails, or engagement analysis. This is a read-only operation that retrieves tracking data without modifying any data." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_FORWARDS_REPORT", "name": "List email forwards report", "description": "GET an Email Forwards Report for a specific email campaign activity. Use this action when you need to retrieve tracking data about email forwards for a specific email campaign activity in Constant Contact. This returns a list of contacts who forwarded the email, including their contact details and the timestamp of the forward. This is a read-only operation suitable for analyzing email campaign engagement through forwards." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_OPTOUTS_REPORT", "name": "List email opt-outs report", "description": "GET an Email Opt-outs Report for a specific email campaign activity. Use this action when you need to retrieve a list of contacts who have opted out of a specific email campaign. This provides detailed tracking information including contact identifiers, email addresses, opt-out timestamps, and reason for opting out. This is a read-only operation suitable for generating reports, analyzing campaign performance, or syncing opt-out data with external systems. Note: The campaign_activity_id should be the UUID of an email campaign activity, not the campaign itself." }, { "slug": "CONSTANT_CONTACT_LIST_EMAIL_UNIQUE_OPENS_REPORT", "name": "List Email Unique Opens Report", "description": "GET an email unique opens report for a campaign activity. Use this action when you need to retrieve a list of contacts who uniquely opened a specific email campaign activity. This is useful for analyzing email engagement, understanding which contacts opened your emails, and tracking campaign performance. The report includes contact details such as email address, name, device type, and the timestamp of each unique open event. Note: This is a read-only operation that retrieves tracking data." }, { "slug": "CONSTANT_CONTACT_LIST_EVENTS", "name": "List Events", "description": "GET a collection of events from Constant Contact. Use this action when you need to retrieve events from your Constant Contact account, with optional filtering by status. Results are paginated using cursor-based pagination. This is a read-only operation suitable for retrieving event collections for management, synchronization, or display purposes." }, { "slug": "CONSTANT_CONTACT_LIST_EVENT_TRACK_REGISTRATIONS", "name": "List event track registrations", "description": "GET registrations for an event track to retrieve a list of registrations. Use this action when you need to fetch registrations for a specific event track in your Constant Contact account, with optional filtering by registration status, payment status, or search text. Supports pagination using cursors and allows sorting by various fields. This is a read-only operation suitable for retrieving registration collections for reporting, analytics, or event management purposes." }, { "slug": "CONSTANT_CONTACT_LIST_LANDING_PAGE_CONTACT_OPENS_REPORT", "name": "List Landing Page Contact Opens Report", "description": "GET a Contacts Opens Landing Page Report. Use this action when you need to retrieve a list of contacts who opened a specific landing page campaign. This is useful for analyzing engagement with your landing pages and understanding which contacts have shown interest by opening your content. The response includes tracking activities with contact details, device type, timestamps, and optional SMS channel information. Results can be filtered by contact attributes and paginated using the limit parameter." }, { "slug": "CONSTANT_CONTACT_LIST_LANDING_PAGE_UNIQUE_CONTACT_ADDS_REPORT", "name": "List Landing Page Unique Contact Adds Report", "description": "GET a Unique Contacts Adds Landing Page Report for a specific landing page campaign activity. Use this action when you need to retrieve a list of contacts that were added through a landing page campaign. This report shows which contacts signed up via the landing page and includes their contact details along with timing information. This is useful for analyzing landing page conversion performance and contact acquisition. The results are paginated with a default limit of 50 items per page (maximum 500). Use the contacts_filter parameter to search for specific contacts by name or email." }, { "slug": "CONSTANT_CONTACT_LIST_LANDING_PAGE_UNIQUE_CONTACT_CLICKS_REPORT", "name": "List Landing Page Unique Contact Clicks Report", "description": "GET unique contact clicks data for a landing page campaign. Use this action when you need to retrieve detailed click tracking data for contacts who clicked on links in a landing page campaign. This includes contact information (name, email), click timestamps, device type, and the specific URLs clicked. The results are paginated and can be filtered by contact name or email." }, { "slug": "CONSTANT_CONTACT_LIST_LANDING_PAGE_UNIQUE_CONTACT_OPENS_REPORT", "name": "List Landing Page Unique Contact Opens Report", "description": "GET a Unique Contacts Opens Landing Page Report to retrieve a list of contacts who uniquely opened a specific landing page campaign. Use this action when you need to analyze landing page engagement by identifying contacts that opened a specific landing page campaign activity. This is useful for engagement analysis, follow-up actions, or campaign performance evaluation. This is a read-only operation that retrieves tracking data without modifying any data." }, { "slug": "CONSTANT_CONTACT_LIST_LANDING_PAGE_UNIQUE_CONTACT_UPDATES_REPORT", "name": "List landing page unique contact updates report", "description": "GET a Unique Contacts Updates Landing Page Report for a specific landing page campaign activity. Use this action when you need to retrieve tracking data about contacts who made profile updates after visiting a landing page. This returns a list of contacts who updated their information, including their contact details and the timestamp of the update. This is a read-only operation suitable for analyzing landing page engagement and contact data quality. Note: The campaign_activity_id should be the UUID of a landing page campaign activity." }, { "slug": "CONSTANT_CONTACT_LIST_SEGMENTS", "name": "List Segments", "description": "GET all segments for the Constant Contact account. Use this action when you need to retrieve all segments from a Constant Contact account. Segments are used to target a subset of contacts based on criteria such as demographics, behavior, or custom conditions. Results are paginated and can be sorted by date, name, or segment ID. This is a read-only operation that returns metadata about segments such as names, statuses, and timestamps for creation and updates." }, { "slug": "CONSTANT_CONTACT_LIST_SMS_CAMPAIGN_SUMMARIES_REPORT", "name": "List SMS Campaign Summaries Report", "description": "GET an SMS Campaigns Summary Report. Use this action when you need to retrieve summary statistics and performance metrics for SMS campaigns. This is useful for analyzing overall SMS campaign performance, including delivery rates, click rates, bounce rates, and unsubscribe rates across multiple campaigns within a specified date range. Note: This is a read-only operation that retrieves aggregated campaign data." }, { "slug": "CONSTANT_CONTACT_LIST_SOCIAL_CONNECTIONS", "name": "List Social Connections", "description": "GET social network connections for a Constant Contact account. Use this action when you need to retrieve all social network accounts (such as Facebook, Instagram, LinkedIn, or TikTok) that are connected to the Constant Contact account. This is a read-only operation that returns information about each connection including account details and connection status. The response includes a list of connections, each containing account information (display name, username, profile URL) and connection status (active, disconnected, error, rate_limited)." }, { "slug": "CONSTANT_CONTACT_LIST_SOCIAL_HASHTAG_GROUPS", "name": "List Social Hashtag Groups", "description": "GET hashtag groups - Retrieves a paginated list of social hashtag groups. Use this action when you need to fetch all hashtag groups available in your Constant Contact account. Hashtag groups are named collections of hashtags that can be reused when creating social posts. Results are paginated with a maximum page size of 5 groups per request. This is a read-only operation that returns hashtag group metadata such as names, IDs, and the list of hashtags contained in each group." }, { "slug": "CONSTANT_CONTACT_LIST_SOCIAL_PROFILES", "name": "List Social Profiles", "description": "GET social media profiles from Constant Contact. Use this action when you need to retrieve all social media profiles (such as Facebook Business Pages, Instagram profiles, Twitter accounts, LinkedIn pages, or TikTok accounts) connected to a Constant Contact account. This is a read-only operation that returns profile information including connection status, handles, URLs, and optional accessibility status. Note: Due to performance and/or rate-limit issues, some properties may be cached. Where possible, caching will be limited to 15 minutes." }, { "slug": "CONSTANT_CONTACT_REMOVE_CONTACT_TAGGING", "name": "Remove Contact Tagging", "description": "Remove tagging from contacts in Constant Contact. Use this action when you need to asynchronously remove tagging from contacts identified by specific contact IDs, list IDs, tag IDs, all active contacts, or new subscribers. The removal is processed as an asynchronous activity - check the activity status to monitor progress." }, { "slug": "CONSTANT_CONTACT_REMOVE_CONTACT_TAGGINGS", "name": "Remove Tags from Contacts", "description": "Remove tags from contacts in Constant Contact. Use this action when you need to asynchronously remove one or more tags from contacts identified by specific contact IDs, list IDs, all active contacts, or new subscribers. The removal is processed as an asynchronous activity - check the activity status to monitor progress." }, { "slug": "CONSTANT_CONTACT_REMOVE_LIST_MEMBERSHIPS", "name": "Remove contacts from lists", "description": "Create a Remove Contacts from Lists activity to remove contacts from one or more lists. Use this action when you need to bulk-remove contacts from Constant Contact lists. The activity is queued for asynchronous processing and returns an activity_id that can be used to track the status of the operation." }, { "slug": "CONSTANT_CONTACT_RENAME_EMAIL_CAMPAIGN", "name": "Rename Email Campaign", "description": "PATCH (Update) the name of an existing email campaign in Constant Contact. Use this action when you need to rename an existing email campaign. You must provide the campaign ID of the email campaign you want to rename and the new name for the campaign. The campaign name must be unique within your account. Note: This action only updates the campaign name. Other campaign properties remain unchanged. Attempting to use a duplicate name will result in a 409 Conflict error." }, { "slug": "CONSTANT_CONTACT_RENAME_SEGMENT", "name": "Rename Segment", "description": "PATCH (rename) an existing segment in Constant Contact. Use this action when you need to rename an existing segment. You must provide the segment ID of the segment you want to rename and the new name for the segment. The segment name must be unique within your account. Note: This action only updates the segment name. Other segment properties (such as segment_criteria) remain unchanged. Attempting to use a duplicate name will result in a 409 Conflict error." }, { "slug": "CONSTANT_CONTACT_RESUBSCRIBE_CONTACT", "name": "Resubscribe Contact", "description": "Resubscribe an unsubscribed contact to one or more contact lists. Use this action when you need to reactivate a contact that was previously unsubscribed and add them back to specific contact lists. The contact's status will be changed from 'unsubscribed' to 'active', and they will be added to the specified lists. This action is useful for managing contact re-engagement campaigns or when a contact requests to be resubscribed after previously opting out." }, { "slug": "CONSTANT_CONTACT_UNDO_CHECK_IN_EVENT_TICKETS", "name": "Undo Event Ticket Check-In", "description": "Undo check-in for event tickets. Use this action when you need to mark previously checked-in event tickets as not checked in. This reverses the check-in operation for the specified order ticket keys. Note: The API returns 204 No Content on success with an empty response body." }, { "slug": "CONSTANT_CONTACT_UPDATE_ACCOUNT_DETAILS", "name": "Update Account Details", "description": "PUT (update) Account Details for the authenticated user. Use this action when you need to update the account details such as the account owner's contact information, organization name, or address. This action allows modification of all editable account properties. Changes to read-only fields are ignored by the API." }, { "slug": "CONSTANT_CONTACT_UPDATE_ACCOUNT_PHYSICAL_ADDRESS", "name": "Update Account Physical Address", "description": "PUT (update) the Physical Address for an Account. Use this action when you need to update or set the physical address information for a Constant Contact account. This action sends a PUT request to update the account's physical address with the provided address details. Required fields: address_line1, city, and country_code. For US or CA addresses, include state_code and postal_code. For other countries, use state_name instead of state_code." }, { "slug": "CONSTANT_CONTACT_UPDATE_CONTACT", "name": "Update Contact", "description": "PUT (update) an existing contact in Constant Contact. Use this action when you need to update an existing contact's information such as name, email address, phone numbers, addresses, or list/tag assignments. The contact ID is required to identify which contact to update. All provided fields will be updated; omitted fields will remain unchanged. This action requires the 'contact_update' OAuth scope." }, { "slug": "CONSTANT_CONTACT_UPDATE_CONTACT_LIST", "name": "Update Contact List", "description": "PUT (update) an existing contact list in Constant Contact. Use this action when you need to update the name, description, or favorite status of an existing contact list. The list ID is required to identify which list to update. Note: The contact list name must be unique within your account. Attempting to use a duplicate name will result in a 409 Conflict error." }, { "slug": "CONSTANT_CONTACT_UPDATE_CONTACT_TAG", "name": "Update Contact Tag", "description": "PUT (Update) a Tag. Use this action when you need to rename an existing contact tag in Constant Contact. The tag name must be unique within your account." }, { "slug": "CONSTANT_CONTACT_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Update an existing contact custom field in Constant Contact. Use this action when you need to modify the label, type, or choices of an existing custom field. Properties omitted in the PUT request are overwritten with null values. This action is idempotent - updating a field with the same data produces the same result." }, { "slug": "CONSTANT_CONTACT_UPDATE_EMAIL_CAMPAIGN_ACTIVITY", "name": "Update Email Campaign Activity", "description": "PUT (Update) an Email Campaign Activity in Constant Contact. Use this action when you need to modify an existing email campaign activity such as updating the email content, subject line, sender information, recipient lists, or schedule. The campaign activity ID is required to identify which activity to update. Note: Only format_type 1 and 5 support custom html_content. Format types 2-4 use the editor-based content and ignore html_content. The physical_address_in_footer is required for CAN-SPAM compliance." }, { "slug": "CONSTANT_CONTACT_UPDATE_EVENT", "name": "Update Event", "description": "PATCH (update) an existing event in Constant Contact. Use this action when you need to modify event details such as name, title, description, dates, location, or status. Only include fields that you want to update - other fields remain unchanged. This action returns 204 No Content on success with an empty response body. This action requires the 'campaign_data' OAuth scope." }, { "slug": "CONSTANT_CONTACT_UPDATE_EVENT_TRACK_REGISTRATION_PAYMENT_STATUS", "name": "Update Event Track Registration Payment Status", "description": "Update the payment status for event track registrations in Constant Contact. Use this action when you need to update the payment status for one or more registrations of an event track. This is commonly used to mark registrations as paid, pending, refunded, or failed after processing payments. The action requires the event ID, track ID, the new payment status, and a list of registration IDs to update. Note: Some registrations may fail to update while others succeed (207 Multi-Status). Check the response results for details on each registration update outcome." }, { "slug": "CONSTANT_CONTACT_UPDATE_EVENT_TRACK_REGISTRATIONS", "name": "Update Event Track Registrations", "description": "PUT (update) registration status for event track registrations. Use this action when you need to update the registration status (APPROVED, CANCELED, or DECLINED) for one or more registrations within an event track in Constant Contact. This action supports batch updates - you can update multiple registrations at once by providing a list of registration IDs. The action also supports optional inventory management via the return_items_to_inventory parameter. This action requires the 'campaign_data' OAuth scope." }, { "slug": "CONSTANT_CONTACT_UPDATE_SEGMENT", "name": "Update Segment", "description": "PUT (update) an existing segment in Constant Contact. Use this action when you need to update an existing segment's name or contact selection criteria. The segment ID is required to identify which segment to update. Both name and segment_criteria are required in the request body. Note: The segment_criteria must be formatted as single-string escaped JSON, and the top-level group type must be 'and'. Attempting to use duplicate names will result in a 409 Conflict error." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "constant_contact_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "account_read,account_update,contact_data,campaign_data,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "contentful_graphql", "name": "Contentful Graphql", "logo": "https://logos.composio.dev/api/contentful_graphql", "description": "The Contentful GraphQL Content API allows developers to query and deliver content using GraphQL, providing a flexible and efficient way to access content stored in Contentful.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONTENTFUL_GRAPHQL_GET_CMA_TOKEN", "name": "Get CMA Token", "description": "Tool to retrieve a Contentful Management API (CMA) access token. Use when making CMA calls to ensure valid authorization." }, { "slug": "CONTENTFUL_GRAPHQL_GRAPH_QL_CONTENT_API_PERSISTED_QUERY", "name": "GraphQL Content API Persisted Query", "description": "Execute a GraphQL query using Automatic Persisted Queries (APQ). APQ reduces bandwidth by sending only a SHA256 hash instead of the full query text after initial registration. Workflow: 1. First request: Include both sha256_hash and query text to register the query 2. Subsequent requests: Send only sha256_hash and variables - the server uses the cached query Common errors: - PersistedQueryNotFound: Query not cached; include the full query text - PersistedQueryMismatch: Hash doesn't match query text; recompute the hash - UNKNOWN_SPACE: Invalid space_id or access_token for the space" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "contentful_graphql_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Contentful Space ID", "type": "string", "description": "The unique identifier for your Contentful space.", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Contentful API Access Token", "type": "string", "description": "The API key used to authenticate requests to the Contentful GraphQL Content API.", "required": true, "default": null } ], "optional": [ { "name": "version", "displayName": "Environment ID", "type": "string", "description": "The identifier for the environment within the space.", "required": false, "default": "master" } ] } } } ] }, { "slug": "control_d", "name": "Control D", "logo": "https://logos.composio.dev/api/control_d", "description": "Control D is a customizable DNS filtering and traffic redirection platform that allows users to manage internet access, enforce policies, and monitor usage across devices and networks.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONTROL_D_DELETE_DEVICES_DEVICE_ID", "name": "Delete Device by ID", "description": "Permanently delete a Control-D device/endpoint by its ID. WARNING: This is a destructive operation. Deleting a device will break DNS resolution on any physical gadget configured to use this device's unique DNS resolvers. Use GET /devices to retrieve valid device IDs before calling this action." }, { "slug": "CONTROL_D_DELETE_PROFILES_PROFILE_ID", "name": "Delete Profile", "description": "Permanently deletes a Control D profile by its unique identifier (PK). IMPORTANT: The profile must be orphaned (not enforced by any device) before it can be deleted. If the profile is currently assigned to one or more devices, the deletion will fail. Use this tool when you need to remove an unused profile from the account. To check if a profile is safe to delete, first verify it has no associated devices using the Get Devices or Get Profile endpoints." }, { "slug": "CONTROL_D_DELETE_PROFILES_PROFILE_ID_RULES_RULE_ID", "name": "Delete Profile Rule by Rule ID", "description": "Delete a custom DNS rule from a Control D profile by its rule identifier (hostname/domain). This tool removes a DNS filtering rule from the specified profile. Rules in Control D are identified by the hostname/domain they target (e.g., 'example.com', 'ads.domain.com'). Prerequisites: - Obtain profile_id from GET /profiles endpoint - Obtain rule_id (the hostname/domain) from GET /profiles/{profile_id}/rules endpoint Note: Requires write access to the API (read-only tokens will receive a 403 error)." }, { "slug": "CONTROL_D_DELETE_PROFILES_PROFILE_ID_RULES_RULE_ID_FOLDER_ID", "name": "Delete Rule from Folder", "description": "Delete a custom DNS rule from a specific folder in a Control D profile. This action permanently removes a custom rule (e.g., block, bypass, spoof, or redirect) from the specified folder within a profile. Requires valid profile_id, rule_id, and folder_id which can be obtained from: - profile_id: Get Profiles action - folder_id: Get Profile Folders action - rule_id: List Custom Rules in Folder action" }, { "slug": "CONTROL_D_DELETE_PROFILES_PROFILE_ID_SCHEDULES_SCHEDULE_ID", "name": "Delete Profile Schedule", "description": "Tool to delete a specific schedule within a profile. Use after confirming profile_id and schedule_id." }, { "slug": "CONTROL_D_GET_ACCESS", "name": "List Known Access IPs", "description": "List up to the latest 50 IP addresses that were used to query against a specific Device (resolver). Use this to retrieve known access IPs associated with a device in your Control D account." }, { "slug": "CONTROL_D_GET_ANALYTICS_ENDPOINTS", "name": "Get Analytics Endpoints", "description": "Tool to list analytics storage regions and their endpoints. Use after authenticating to retrieve available analytics regions." }, { "slug": "CONTROL_D_GET_ANALYTICS_LEVELS", "name": "Get Analytics Levels", "description": "Tool to retrieve available analytics log levels for Control D devices. Use when you need to know what analytics options can be configured on devices (No Analytics, Some Analytics, Full Analytics)." }, { "slug": "CONTROL_D_GET_BILLING_PAYMENTS", "name": "Get Billing Payments", "description": "Tool to retrieve billing history of all payments made. Use when you need to access payment records, transaction history, or billing information for the account." }, { "slug": "CONTROL_D_GET_BILLING_PRODUCTS", "name": "Get Billing Products", "description": "Retrieve all products currently activated on the Control D account. Use this to view active billing products, subscriptions, and their details." }, { "slug": "CONTROL_D_GET_DEVICES", "name": "Get Devices", "description": "Lists all Control D devices (endpoints) associated with the account. Each device represents a unique DNS resolver that enforces a Profile (set of filtering rules). Use this to retrieve device inventory, check device status, or get resolver configuration details. Optionally filter by device_type to get only 'users' (desktops/mobiles/browsers) or 'routers'." }, { "slug": "CONTROL_D_GET_DEVICES_TYPES", "name": "Get Device Types", "description": "List all allowed device types in Control D. Returns categorized device types (OS, Browser, TV, Router) with their available icon identifiers and human-readable labels. Use when you need to display device type options or validate device icon identifiers when creating or updating devices." }, { "slug": "CONTROL_D_GET_IP", "name": "Get IP", "description": "Tool to retrieve the current IP address and datacenter information for the API request. Use when you need to check which IP address is being used or which Control D datacenter is handling requests." }, { "slug": "CONTROL_D_GET_NETWORK", "name": "Get Network Stats", "description": "Tool to retrieve network stats on available services in different POPs (Points of Presence). Use when you need information about service availability across Control D's network infrastructure." }, { "slug": "CONTROL_D_GET_ORGANIZATIONS_MEMBERS", "name": "Get Organization Members", "description": "Tool to view organization membership. Use to retrieve a list of all members in the organization including their email, status, permission levels, and last activity." }, { "slug": "CONTROL_D_GET_ORGANIZATIONS_ORGANIZATION", "name": "Get Organization Details", "description": "Tool to view the authenticated organization's details. Use after confirming a valid API token." }, { "slug": "CONTROL_D_GET_ORGANIZATIONS_SUB_ORGANIZATIONS", "name": "Get Sub-Organizations", "description": "Tool to view sub-organizations and their details. Use when you need to list all sub-organizations under the authenticated organization account." }, { "slug": "CONTROL_D_GET_PROFILES", "name": "Get Profiles", "description": "Tool to list all profiles associated with the authenticated account. Use when you need an overview of accessible profiles." }, { "slug": "CONTROL_D_GET_PROFILES_OPTIONS", "name": "Get Profile Options", "description": "Retrieves all available configuration options for DNS profiles in Control D. Returns a list of profile options including security filters (Safe Search, AI Malware Filter), TTL settings, block responses, and advanced DNS options (DNSSEC, DNS64, CNAME Flattening). Each option includes its type (toggle/dropdown/field), default value, and documentation URL. Use this to discover what settings can be configured when creating or updating profiles." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID", "name": "Get Profile by ID", "description": "Tool to retrieve details of a specific profile by its ID. Use when you need full profile details after confirming the profile_id." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS", "name": "Get Profile Analytics", "description": "Retrieve analytics data for a Control D profile. Returns DNS query statistics and traffic data for the specified profile. Use profile_id='0' to get analytics for all profiles, or specify a profile ID from the List Profiles endpoint." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS_LOGS", "name": "Get Profile Analytics Logs", "description": "Retrieves DNS query activity logs for a specific Control D profile. This tool fetches analytics logs that record DNS queries made through the profile, including details about blocked, allowed, and redirected queries. Use this to monitor DNS activity, audit security policies, or troubleshoot DNS resolution issues. Prerequisites: - A valid profile_id obtained from GET /profiles endpoint - Analytics must be enabled for the profile to have log data Common use cases: - View recent DNS queries for a profile - Filter logs by date range to analyze specific time periods - Audit which domains were blocked or allowed" }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS_LOGS_LOG_ID", "name": "Get Analytics Log Entry", "description": "Tool to retrieve a specific analytics log entry by its ID. Use when you need details of an analytics log for a given profile." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS_SUMMARY", "name": "Get Profile Analytics Summary", "description": "Tool to fetch a summary of analytics data for a given profile. Use after confirming profile ID and desired date range." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS_TOP_DOMAINS", "name": "Get Profile Analytics Top Domains", "description": "Tool to fetch top domains accessed within a specific profile. Use after confirming profile ID." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_ANALYTICS_TOP_SERVICES", "name": "Get Profile Top Services", "description": "Tool to fetch top services accessed within a profile. Use after confirming the profile ID and desired date range." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_FILTERS", "name": "Get Profile Filters", "description": "List all native (Control D curated) filters for a profile and their current states. Native filters are hand-curated blocklists maintained by Control D (e.g., 'Ads & Trackers', 'Malware', 'Adult Content'). Use this to see which filters are enabled/disabled for a profile. For 3rd party community filters, use the GET /profiles/{profile_id}/filters/external endpoint instead." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_FILTERS_EXTERNAL", "name": "List External Filters for Profile", "description": "Tool to list third-party filters for a specific profile. Use when you need to retrieve all external filters and their states after confirming the profile ID." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_FOLDERS", "name": "Get Profile Folders", "description": "List all rule folders (groups) within a Control D profile. Rule folders are used to organize and group custom DNS rules. Each folder has an action type (BLOCK, BYPASS, SPOOF, or REDIRECT) and contains multiple rules. Use this after obtaining a valid profile_id from the list profiles endpoint." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_RULES", "name": "List Custom DNS Rules for Profile", "description": "Retrieve custom DNS rules for a Control D profile. Returns rules that control domain resolution (BLOCK, BYPASS, SPOOF, or REDIRECT actions). Omit folder_id to list root folder rules, or provide a folder_id to list rules in a specific folder." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_RULES_RULE_ID_FOLDER_ID", "name": "Get Specific Rule in Folder", "description": "Tool to retrieve a specific rule within a folder by its ID. Use when you need full details of a custom rule in a profile's folder." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_SCHEDULES", "name": "Get Profile Schedules", "description": "Tool to list schedules associated with a specific profile. Use after confirming the profile ID." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_SCHEDULES_SCHEDULE_ID", "name": "Get Profile Schedule", "description": "Tool to retrieve a specific schedule by its ID within a profile. Use when you need details of a profile schedule after confirming the profile_id and schedule_id." }, { "slug": "CONTROL_D_GET_PROFILES_PROFILE_ID_SERVICES", "name": "Get Profile Services", "description": "Tool to list services associated with a specific profile. Use when you need to retrieve all services that have any associated rules after confirming the profile ID." }, { "slug": "CONTROL_D_GET_PROXIES", "name": "Get Proxies", "description": "Tool to retrieve the list of usable proxy locations that traffic can be redirected through. Use when you need to see available proxy exit locations for routing traffic via transparent proxies." }, { "slug": "CONTROL_D_GET_SERVICES_CATEGORIES", "name": "Get Service Categories", "description": "List all available service categories in Control D. Returns categories like audio, video, social, gaming, etc. Each category contains multiple services that can be blocked or allowed. Use the returned 'PK' field as the category identifier when calling other service-related endpoints (e.g., get services by category). No parameters required - returns all available categories." }, { "slug": "CONTROL_D_GET_SERVICES_CATEGORIES_CATEGORY", "name": "List Services by Category", "description": "Retrieves all services within a specific ControlD service category. Use this to discover available services (like Spotify, Netflix, Steam, etc.) that can be configured for DNS filtering or redirection. Each service includes its unique PK identifier needed for service-level configuration. First call GET /services/categories to get valid category identifiers." }, { "slug": "CONTROL_D_GET_USERS", "name": "Get Users", "description": "Retrieve the authenticated user's account information from Control D. This tool returns comprehensive user account data including: - Basic user info (email, status, 2FA settings) - Organization membership and permissions (if applicable) - Account limits and features Use this tool to: - Verify the authenticated account details - Check organization membership and permissions - Get account status and capabilities - Retrieve the user's PK (primary key) for other API calls No parameters required - uses the authenticated API token." }, { "slug": "CONTROL_D_POST_DEVICES", "name": "Create Device", "description": "Create a new device (DNS endpoint) in Control D. Each device gets unique DNS resolvers that enforce configured profiles. Requires a valid profile_id from GET_PROFILES. Returns DNS resolver URLs (DoH, DoT) and IPs for configuring client devices." }, { "slug": "CONTROL_D_POST_PROFILES", "name": "Create Profile", "description": "Create a new blank profile or clone an existing one. Profiles define DNS filtering rules, services, and settings that can be applied to devices. Use this to provision a new profile before assigning rules, filters, or devices to it." }, { "slug": "CONTROL_D_POST_PROFILES_PROFILE_ID_RULES", "name": "Create Custom DNS Rule", "description": "Create custom DNS rules for a profile to control domain resolution. Use this to block ads/trackers, bypass filtering for specific domains, spoof DNS responses with custom IPs, or redirect traffic through proxies." }, { "slug": "CONTROL_D_POST_PROFILES_PROFILE_ID_RULES_FOLDER_ID", "name": "Create Custom Rules in Profile Folder", "description": "Tool to create custom rules within a specific folder for a profile. Use after confirming the profile and folder IDs and preparing rule definitions." }, { "slug": "CONTROL_D_POST_PROFILES_PROFILE_ID_SCHEDULES", "name": "Create Profile Schedule", "description": "Create a new time-based schedule within a Control D profile. Schedules allow automatic enforcement of profile rules during specified time windows. Use this to set up recurring time periods (e.g., work hours, bedtime) when specific DNS filtering rules should apply. Requires a valid profile_id from GET /profiles." }, { "slug": "CONTROL_D_PUT_DEVICES_DEVICE_ID", "name": "Modify Device", "description": "Modify an existing Control D device's settings. Use this tool to update device properties such as name, associated profiles, analytics level, IP learning, restrictions, DDNS settings, and status. At least one field to update must be provided alongside the device_id." }, { "slug": "CONTROL_D_PUT_ORGANIZATIONS", "name": "Modify Organization", "description": "Modify organization settings such as name, contact details, website, and device limits. Use this to update organization metadata or change billing-related limits (max_users, max_routers). Note: Changing max_users or max_routers is a billable event. Requires a write-enabled API token with organization admin permissions." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID", "name": "Modify Profile", "description": "Modify an existing profile by its ID. Use this to update profile properties such as the display name, deactivation timestamp, or lock status. Requires at least one modifiable field (name, disable_ttl, lock_status, lock_message)." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_FILTERS", "name": "Bulk Update Profile Filters", "description": "Tool to bulk update filters on a specific profile. Use when you need to enable or disable multiple filters at once. Provide a list of filter IDs with desired states." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_FILTERS_EXTERNAL", "name": "Update External Filters for Profile", "description": "Tool to update external filters for a specific profile. Use when toggling third-party filters after listing them." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_FILTERS_FILTER_FILTER", "name": "Modify Profile Filter", "description": "Modify the enabled state of a specific native filter on a profile. Use this tool to enable or disable individual content filters like 'ads', 'malware', 'social', etc. on a specific profile. The filter status is set using integer values (1 = enabled, 0 = disabled)." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_RULES", "name": "Modify Custom Rule for Profile", "description": "Modify an existing custom DNS rule for a profile in Control D. Use this to update rule properties such as action type (block/bypass/spoof/redirect), status (enabled/disabled), target hostnames, and redirect destinations. Rule types: - BLOCK (do=0): Block DNS resolution for the hostnames - BYPASS (do=1): Bypass all filters for the hostnames - SPOOF (do=2): Return custom IP addresses (set via/via_v6) - REDIRECT (do=3): Route traffic through a proxy (set via to proxy ID)" }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_RULES_RULE_ID", "name": "Update Custom Rule by Rule ID", "description": "Tool to update an existing custom rule by its ID. Use when modifying details like name, description, severity, or enabled status for a specific rule." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_RULES_RULE_ID_FOLDER_ID", "name": "Move Profile Rule to Folder", "description": "Tool to move a specific custom rule into a different folder. Use after confirming profile_id, rule_id, and folder_id." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_SCHEDULES_SCHEDULE_ID", "name": "Update Profile Schedule", "description": "Tool to update a specific schedule within a profile. Use when you need to modify schedule details after confirming profile_id and schedule_id." }, { "slug": "CONTROL_D_PUT_PROFILES_PROFILE_ID_SERVICES_SERVICE", "name": "Modify Service for Profile", "description": "Tool to modify a specific service rule for a profile. Use when you need to update blocking, bypassing, spoofing, or proxy-redirect settings after reviewing existing rules." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "control_d_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Control D API Token", "type": "string", "description": "The API token generated from the Control D dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "conversion_tools", "name": "Conversion Tools", "logo": "https://logos.composio.dev/api/conversion_tools", "description": "Conversion Tools is an online service that offers a fast and easy way to convert documents between different formats, like XML, Excel, PDF, Word, Text, CSV, and others.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONVERSION_TOOLS_CONVERT_EXCEL_TO_HTML", "name": "Convert Excel to HTML", "description": "Convert an Excel (.xlsx) file to HTML table format. Use when you need to transform spreadsheet data into an HTML representation. Provide either a file upload or a public URL to the Excel file. Returns a task_id that can be used to check the conversion status and download the result once complete." }, { "slug": "CONVERSION_TOOLS_CONVERT_WORD_TO_TEXT", "name": "Convert Word to Text", "description": "Convert Word documents (.doc/.docx) to plain text (.txt). The action uploads the document, waits for conversion to complete (up to ~60 seconds), and returns the task status with a URL to download the converted text file. Use when you need to extract text content from Word documents for further processing." }, { "slug": "CONVERSION_TOOLS_CREATE_TASK", "name": "Create Conversion Task", "description": "Tool to create a new conversion task. This is the main endpoint for performing conversions across 100+ conversion types including XML, JSON, Excel, PDF, CSV, images, audio/video, and more. Use when you need to convert any supported file format or website. Counts against quota unless sandbox mode is enabled." }, { "slug": "CONVERSION_TOOLS_DOWNLOAD_FILE", "name": "Download Converted File", "description": "Download a converted file from the Conversion Tools API using its file ID. Use this action after a conversion task completes successfully. The file_id is obtained from the task status response when status is 'SUCCESS'. Converted files are automatically deleted after 24 hours. Workflow: 1. Run a conversion task (e.g., convert_website_to_pdf) 2. Check task status until status is 'SUCCESS' 3. Use the file_id from the task response to download the result" }, { "slug": "CONVERSION_TOOLS_GET_AUTH_INFO", "name": "Get Auth Info", "description": "Tool to get information about the authenticated user including email address. Use when you need to verify API credentials or retrieve the user's email." }, { "slug": "CONVERSION_TOOLS_GET_CONFIG", "name": "Get Conversion Config", "description": "Tool to get available conversion types and their configuration. Returns the list of all supported conversions with their options. Use this to discover what conversions are available and what parameters they accept." }, { "slug": "CONVERSION_TOOLS_GET_FILE_INFO", "name": "Get File Info", "description": "Tool to get metadata about a file including size, name, and preview (for text files). Use when you need to retrieve information about a previously uploaded file. This does NOT count against your quota." }, { "slug": "CONVERSION_TOOLS_GET_TASK_STATUS", "name": "Get Task Status", "description": "Tool to get the status of a conversion task. Poll this endpoint until status is SUCCESS or ERROR. On SUCCESS, the response includes file_id which can be used to download the result file." }, { "slug": "CONVERSION_TOOLS_LIST_TASKS", "name": "List Conversion Tasks", "description": "Get all tasks for the authenticated user (up to 50 most recent tasks). Use this action to retrieve conversion task history, check task statuses, or find completed tasks for downloading results. This does NOT count against your API quota. Filter by status to retrieve only tasks in a specific state (PENDING, RUNNING, SUCCESS, or ERROR)." }, { "slug": "CONVERSION_TOOLS_UPDATE_TASK_RETENTION", "name": "Update Task Retention", "description": "Tool to update the retention mode for a task. Use when you need to change how long task files are kept before automatic deletion. Standard mode (standard_24h) retains files for 24 hours. TTL mode (ttl_15m) is for paid users only and deletes files after 15 minutes." }, { "slug": "CONVERSION_TOOLS_UPLOAD_FILE", "name": "Upload File", "description": "Upload a file to the ConversionTools API for subsequent conversion operations. This action uploads a file and returns a file_id that can be used with other conversion actions such as convert_word_to_text, convert_excel_to_csv, convert_oxps_to_pdf, etc. Supported formats include: documents (DOC, DOCX, PDF, TXT, RTF), spreadsheets (XLS, XLSX, CSV), images (PNG, JPG, GIF, BMP), and various other file types." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "conversion_tools_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Conversion Tools API Token", "type": "string", "description": "The API Token used for authenticating requests to the Conversion Tools API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "convertapi", "name": "Convertapi", "logo": "https://logos.composio.dev/api/convertapi", "description": "ConvertAPI is a file conversion service that allows developers to convert various file formats, such as documents, images, and spreadsheets, into different formats programmatically.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "CONVERTAPI_ASYNC_CONVERT", "name": "Async Convert", "description": "Tool to perform an asynchronous file conversion. Use when converting large or long-running files to avoid client timeouts." }, { "slug": "CONVERTAPI_ASYNC_DELETE_JOB", "name": "Delete Async Job", "description": "Tool to delete a previously created asynchronous conversion job. Use when the job is no longer required to free server resources." }, { "slug": "CONVERTAPI_CHECK_CONVERSION_SUPPORT", "name": "Check Conversion Support", "description": "Tool to check whether a specific file format conversion is supported by ConvertAPI. Use this before attempting conversions to verify compatibility and avoid errors." }, { "slug": "CONVERTAPI_CONVERT_DELETE_UPLOADED_FILE", "name": "Delete Uploaded File", "description": "Tool to delete a previously uploaded file. Use when the file is no longer needed and should be removed from temporary storage." }, { "slug": "CONVERTAPI_CONVERT_GET_SUPPORTED_INPUT_FORMATS_FOR_OUTPUT", "name": "Get Supported Input Formats For Output", "description": "Retrieves a complete list of input file formats that ConvertAPI can convert to a specified output format. Use this to check which source formats are compatible with your desired target format before initiating conversions." }, { "slug": "CONVERTAPI_CONVERT_PDF_TO_DOCX", "name": "Convert PDF to DOCX", "description": "Tool to convert PDF files to DOCX format. Use when you need editable Word documents from PDFs. Provide PDF content or URL and receive DOCX file metadata and download links." }, { "slug": "CONVERTAPI_CONVERT_PDF_TO_JPG_AND_STORE", "name": "Convert PDF to JPG and Store", "description": "Tool to convert a PDF to JPG and store the result on the server. Use when individual JPG pages are needed for further workflow steps." }, { "slug": "CONVERTAPI_CONVERT_UPLOAD_FILE_FROM_URL", "name": "Upload File From URL", "description": "Tool to upload a file directly from a remote URL. Use when you need to import files hosted on a remote server without downloading locally." }, { "slug": "CONVERTAPI_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download a converted or uploaded file from ConvertAPI server using its FileId. Use when you need to retrieve a previously converted or uploaded file. Set download='inline' to display in browser." }, { "slug": "CONVERTAPI_DOWNLOAD_UPLOADED_FILE", "name": "Download Uploaded File", "description": "Tool to download a previously uploaded file by its FileId. Use when you need to retrieve the original file data stored temporarily on the server (expires after 3 hours). Example prompt: \"Download uploaded file with ID 25811safe8e61dd3f51ef00ee5f58b92\"" }, { "slug": "CONVERTAPI_GET_CONVERTER_SPEC", "name": "Get Converter Spec", "description": "Tool to retrieve the OpenAPI specification for a specific file conversion endpoint. Use when you need detailed parameter schemas and documentation for converting from one format to another." }, { "slug": "CONVERTAPI_GET_FILE_INFO", "name": "Get File Info", "description": "Tool to get metadata information about a stored file without downloading it. Use when you need to check file properties like name, size, or type before downloading." }, { "slug": "CONVERTAPI_GET_OPENAPI_SCHEMA", "name": "Get OpenAPI Schema", "description": "Tool to retrieve the complete OpenAPI 3.0 specification for all ConvertAPI endpoints. Use when you need comprehensive API documentation for code generation, automated testing, or understanding available conversion operations and their parameters." }, { "slug": "CONVERTAPI_GET_SUPPORTED_OUTPUT_FORMATS_FOR_INPUT", "name": "Get Supported Output Formats For Input", "description": "Tool to list all output formats a given input format can be converted into. Use when you need to dynamically retrieve conversion options for a specific input format." }, { "slug": "CONVERTAPI_GET_USER", "name": "Get User Information", "description": "Tool to get authenticated user account information including balance, conversions consumed, and remaining seconds. Use when you need to check account status or conversion limits." }, { "slug": "CONVERTAPI_GET_USER_STATISTICS", "name": "Get User Statistics", "description": "Tool to retrieve usage statistics for the authenticated user account. Use when you need to analyze conversions performed during a specific date range." }, { "slug": "CONVERTAPI_LIST_CONVERTERS", "name": "List All Converters", "description": "Tool to retrieve a comprehensive list of all available file converters in ConvertAPI. Use when you need to discover all supported conversion types, check which formats can be converted, or view available parameters for each converter." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "convertapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ConvertAPI Secret Key", "type": "string", "description": "Your unique API secret key for authenticating requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "convex", "name": "Convex", "logo": "https://logos.composio.dev/api/convex", "description": "Backend-as-a-Service platform with real-time database, serverless functions, and built-in authentication", "category": "developer tools", "authSchemes": [ "API_KEY", "BEARER_TOKEN" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONVEX_CREATE_DEPLOY_KEY", "name": "Create deploy key", "description": "Tool to create a deploy key for use with the Convex CLI. Use when you need to generate credentials for CLI-based development or deployment workflows. The generated key provides administrative access to the specified deployment." }, { "slug": "CONVEX_CREATE_DEPLOYMENT", "name": "Create Deployment", "description": "Tool to create a new deployment for a Convex project. Use when you need to create a development, production, or custom deployment. Specify the deployment type and optional configuration like class, reference, and region." }, { "slug": "CONVEX_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project on a Convex team, optionally provisioning a dev or prod deployment. Use when you need to initialize a new Convex project in a team." }, { "slug": "CONVEX_DELETE_CUSTOM_DOMAIN", "name": "Delete Custom Domain", "description": "Tool to remove a custom domain from a Convex deployment. Use when you need to delete a previously configured custom domain." }, { "slug": "CONVEX_DELETE_DEPLOYMENT", "name": "Delete Deployment", "description": "Tool to delete a Convex deployment. Use when you need to permanently remove a deployment and all its data. WARNING: This action will delete all data and files in the deployment and cannot be undone." }, { "slug": "CONVEX_DELETE_PROJECT", "name": "Delete project", "description": "Deletes a Convex project and all its deployments permanently. Use when you need to permanently remove a project and all associated data. This operation cannot be undone." }, { "slug": "CONVEX_EXECUTE_QUERY_BATCH", "name": "Execute Query Batch", "description": "Tool to execute multiple Convex query functions in a single batch request. Use when you need to fetch data from multiple queries efficiently in one API call." }, { "slug": "CONVEX_GET_DEPLOYMENT", "name": "Get Deployment Details", "description": "Tool to retrieve details about a Convex cloud deployment. Use when you need to get information about a specific deployment including its configuration, region, creation time, and status." }, { "slug": "CONVEX_GET_PROJECT_BY_ID", "name": "Get Project by ID", "description": "Tool to retrieve detailed information about a specific Convex project by its ID. Use when you need to fetch project metadata including name, slug, team association, and creation time." }, { "slug": "CONVEX_GET_PROJECT_BY_SLUG", "name": "Get Project by Slug", "description": "Tool to retrieve a Convex project by its slug within a team. Use when you need to fetch project details using human-readable identifiers instead of numeric IDs." }, { "slug": "CONVEX_GET_QUERY_TIMESTAMP", "name": "Get Query Timestamp", "description": "Tool to get the latest timestamp for queries from Convex deployment. Use when you need to retrieve the current query timestamp from the Convex API." }, { "slug": "CONVEX_GET_TOKEN_DETAILS", "name": "Get token details", "description": "Tool to retrieve token details for the authenticated token. Returns the team ID for team tokens or project ID for project tokens. Especially useful after receiving a token from an OAuth flow to identify which team or project it belongs to." }, { "slug": "CONVEX_LIST_DEPLOY_KEYS", "name": "List Deploy Keys", "description": "Tool to list all deploy keys for a specified Convex deployment. Use when you need to view all authentication tokens that can be used to deploy to this deployment." }, { "slug": "CONVEX_LIST_DEPLOYMENT_CLASSES", "name": "List deployment classes", "description": "Tool to list available deployment classes for a Convex team. Use when you need to check which deployment classes are available for a specific team." }, { "slug": "CONVEX_LIST_DEPLOYMENT_REGIONS", "name": "List deployment regions", "description": "Tool to list available deployment regions for a Convex team. Use when you need to check which regions are available for deploying a team's backend." }, { "slug": "CONVEX_LIST_DEPLOYMENTS", "name": "List Deployments", "description": "Tool to list all deployments for a Convex project. Use when you need to see all deployments (production, preview, or local) for a specific project." }, { "slug": "CONVEX_LIST_LOG_STREAMS", "name": "List Log Streams", "description": "Tool to list all existing log stream configurations in a deployment. Use when you need to view configured log streaming destinations like Datadog, Webhook, Axiom, or Sentry." }, { "slug": "CONVEX_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects for a specific Convex team. Use when you need to retrieve all projects associated with a team by team ID." }, { "slug": "CONVEX_UPDATE_DEPLOYMENT", "name": "Update Deployment", "description": "Tool to update properties of an existing Convex deployment. Use when you need to modify deployment settings such as dashboard edit confirmation or deployment reference. Only the fields provided in the request are modified." } ], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "convex_bearer_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "subdomain", "displayName": "Deployment Name", "type": "string", "description": "Your Convex deployment name (e.g., acoustic-panther-728). Find this in your Convex dashboard Settings page.", "required": true, "default": null } ], "optional": [ { "name": "bearer_token", "displayName": "Bearer Token", "type": "string", "description": "JWT token from your authentication provider (Clerk, Auth0, WorkOS, etc.) for user authentication", "required": false, "default": null } ] } } }, { "mode": "API_KEY", "name": "convex_deploy_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Deployment Name", "type": "string", "description": "Your Convex deployment name (e.g., acoustic-panther-728). Find this in your Convex dashboard Settings page.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Deploy Key", "type": "string", "description": "Admin deploy key from your Convex dashboard Deploy Key section. Can be production (prod:), preview (preview:), or development (dev:) key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "conveyor", "name": "Conveyor", "logo": "https://logos.composio.dev/api/conveyor", "description": "Conveyor is a platform that automates security reviews by providing a Trust Center, AI-driven questionnaire automation, and integrations with various tools to streamline compliance processes.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONVEYOR_DELETE_DOCUMENT", "name": "Delete a Conveyor document", "description": "Tool to delete a specific document. Use when you need to remove a document by its ID." }, { "slug": "CONVEYOR_DELETE_FOLDER", "name": "Delete folder", "description": "Permanently deletes a folder from the Conveyor Exchange by its UUID. Use GET_FOLDERS first to retrieve the folder_id. This action is irreversible." }, { "slug": "CONVEYOR_GET_ACCESS_GROUPS", "name": "Get all access groups", "description": "Tool to retrieve all access groups for a program. Use when you need to fetch the complete list of access groups configured in the Conveyor Exchange." }, { "slug": "CONVEYOR_GET_AUTHORIZATION_REQUEST", "name": "Get Authorization Request", "description": "Retrieves details of a specific authorization request from Conveyor Exchange by its ID. Use this to get information about a pending or processed access request, including the requestor's email, message, status, and associated dataroom." }, { "slug": "CONVEYOR_GET_AUTHORIZATION_REQUESTS", "name": "Get Authorization Requests", "description": "Retrieves authorization requests from Conveyor's Trust Center. Use this tool to: - List all authorization requests (no filters) - Get pending requests awaiting approval (status='requested') - Filter by specific status ('initial', 'requested', 'approved', 'ignored') - Filter by requester email address Returns a list of authorization requests with details including requester email, status, timestamps, and optional CRM links." }, { "slug": "CONVEYOR_GET_AUTHORIZATIONS", "name": "Get authorizations", "description": "Retrieve authorizations from your Conveyor Trust Center. Authorizations control who has access to view documents. Use this to list all authorizations or filter by status ('gated', 'authorized', 'revoked') or email address. Requires a valid API token for authentication." }, { "slug": "CONVEYOR_GET_CONNECTIONS", "name": "Get all Conveyor connections", "description": "Tool to retrieve all connections. Use when you need to fetch the complete list of your Conveyor connections. Use after authenticating with a valid API key." }, { "slug": "CONVEYOR_GET_DOCUMENTS", "name": "Get all Conveyor documents", "description": "Retrieves all documents from the Conveyor trust center. Returns a list of documents with their metadata including name, description, access level, versions, and timestamps. No parameters required - simply call to get all documents." }, { "slug": "CONVEYOR_GET_FOLDERS", "name": "List all Exchange folders", "description": "Retrieves all folders from the Conveyor Exchange workspace. Returns a list of folders with their IDs, names, timestamps, and associated document IDs. Use this to discover available folders before uploading documents or managing folder contents." }, { "slug": "CONVEYOR_GET_INTERACTIONS", "name": "Get all interactions", "description": "Tool to get all interactions (document interactions, q&a interactions) with optional filters. Use when you need to retrieve and filter interactions across all documents and Q&A sessions." }, { "slug": "CONVEYOR_GET_INTERACTIONS_BY_CONNECTION_ID", "name": "Get interactions by connection ID", "description": "Tool to fetch interactions associated with a specific connection. Use when you need to list all interactions for a given connection after validating its existence." }, { "slug": "CONVEYOR_GET_INTERACTIONS_BY_DOCUMENT_ID", "name": "Get interactions by document ID", "description": "Tool to fetch interactions associated with a specific document. Use when you need to list all interactions for a given document after validating its existence." }, { "slug": "CONVEYOR_GET_KNOWLEDGE_BASE_QUESTIONS", "name": "Get Knowledge Base Questions", "description": "Retrieves knowledge base questions from Conveyor. Use to list, search, or paginate through Q&A entries stored in the knowledge base for compliance and security questionnaires." }, { "slug": "CONVEYOR_GET_PRODUCT_LINES", "name": "Get product lines", "description": "Retrieves all product lines configured in Conveyor. Use this action to list available product lines for organizing trust documentation, authorizations, and security reviews by business segment. This is a read-only operation that requires a valid API token. Returns a list of product lines with their IDs, names, and descriptions. The list may be empty if no product lines have been configured." }, { "slug": "CONVEYOR_GET_QUESTIONNAIRES", "name": "Get questionnaires", "description": "Retrieves all questionnaires from Conveyor with optional filters. Use this to list questionnaires by status, product line, or date ranges. Returns questionnaire metadata including assignee, connection, product lines, and completion status." }, { "slug": "CONVEYOR_PATCH_AUTHORIZATION", "name": "Patch authorization", "description": "Update an existing authorization by revoking access or modifying Access Group assignments. Use this tool to: - Revoke a user's access to the Trust Center (set revoke=true) - Update which Access Groups a user belongs to (provide access_group_ids list) At least one of 'revoke' or 'access_group_ids' must be provided." }, { "slug": "CONVEYOR_PATCH_DOCUMENT", "name": "Update Conveyor document", "description": "Update a Conveyor document's metadata. Use this to change a document's name, description, access level, folder location, or other properties. Requires the document UUID." }, { "slug": "CONVEYOR_PATCH_QUESTIONNAIRE_REQUEST", "name": "Update questionnaire request", "description": "Tool to update a questionnaire request in Conveyor. Use this to modify an existing questionnaire request's external ID, case IDs, raw data, or source system information." }, { "slug": "CONVEYOR_POST_AUTHORIZATION", "name": "Create new authorization", "description": "Tool to create a new authorization in Conveyor Exchange. Use this to grant access to a user by email address or by approving an existing authorization request. Provide either 'email' (to create a new authorization for that email) or 'request_id' (to approve an existing authorization request), but not both." }, { "slug": "CONVEYOR_POST_DOCUMENT", "name": "Upload new document", "description": "Tool to upload a new document to Conveyor's Knowledge Library. Use when you need to add a file (<=100MB) for security compliance documentation." }, { "slug": "CONVEYOR_POST_FOLDER", "name": "Create new folder", "description": "Tool to create a new folder in Conveyor Exchange. Use when you need to organize items into folders programmatically after obtaining an API key." }, { "slug": "CONVEYOR_POST_QUESTIONNAIRE", "name": "Submit new questionnaire", "description": "Tool to submit a new questionnaire to Conveyor. Use when you need to create a security questionnaire or RFP submission with file uploads, portal links, or Salesforce integration." }, { "slug": "CONVEYOR_POST_QUESTIONNAIRE_REQUEST", "name": "Create questionnaire request", "description": "Tool to create a new questionnaire request in Conveyor. Use when you need to submit a security questionnaire or compliance request for processing. Requires submitter_email and either external_id with raw_data OR case_ids from Salesforce." }, { "slug": "CONVEYOR_POST_REVIEW", "name": "Create new review", "description": "Tool to create a review in Conveyor with optional references to external VM unique IDs. Use when you need to create a vendor review programmatically." }, { "slug": "CONVEYOR_POST_SINGLE_QUESTION", "name": "Submit single question", "description": "Submit a single question to Conveyor's AI knowledge base and receive an immediate answer. Use this when responding to security questionnaires, compliance inquiries, or knowledge base queries. Returns the AI-generated answer along with confidence scoring when available." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "conveyor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Conveyor API Key", "type": "string", "description": "The API key used for authenticating requests to the Conveyor API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "convolo_ai", "name": "Convolo AI", "logo": "https://logos.composio.dev/api/convolo_ai", "description": "Convolo.ai is an AI-powered communications platform designed to enhance sales calls and improve conversion rates through rapid lead response and integration capabilities.", "category": "ai sales tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CONVOLO_AI_CREATE_CHARACTER", "name": "Create Character", "description": "Tool to create a new character. Use when you have name, voice type, backstory, and optional actions ready." }, { "slug": "CONVOLO_AI_EVALUATE_CHARACTER", "name": "Evaluate Character Performance", "description": "Evaluates a conversation session across 9 quality dimensions (clarity, courtesy, product knowledge, etc.) using AI analysis. Returns structured ratings and feedback. Prerequisites: - A valid session_id from Get Character Response - A character_id from Create Character - Prompt must include [[conversation_history]] placeholder Note: This API requires Professional Plan or higher access." }, { "slug": "CONVOLO_AI_GENERATE_STARTER_CONVERSATION", "name": "Generate Starter Conversation", "description": "Generates AI-powered conversation starter suggestions for a character. This tool creates contextually relevant opening lines or follow-up dialogue suggestions that can be used to initiate or continue conversations with AI characters. Perfect for chatbots, virtual assistants, game NPCs, or interactive storytelling applications. Use this when you need: - Opening conversation starters for a new interaction (sessionId=\"-1\") - Follow-up suggestions based on an ongoing conversation (provide existing sessionId) - Multiple conversation options to choose from" }, { "slug": "CONVOLO_AI_GET_CHARACTER_RESPONSE", "name": "Get Character Response", "description": "Tool to generate a response from a ConvAI character based on text or audio input. Use when needing a text or voice reply in an ongoing session." }, { "slug": "CONVOLO_AI_LIST_VOICES", "name": "List Voices", "description": "Tool to retrieve the list of available voice types. Use when selecting voices before generating speech." }, { "slug": "CONVOLO_AI_SET_CORE_AI_SETTINGS", "name": "Set Core AI Settings", "description": "Updates the core AI settings (model and/or temperature) for an existing Convai character. Use this action to: - Switch the AI model powering a character (e.g., from GPT-4o to Claude) - Adjust response creativity via temperature parameter (0.0=deterministic, 1.0=creative) - Fine-tune character behavior without recreating the character Prerequisites: Requires a valid charID from a previously created character. At least one of model_group_name or temperature must be specified." }, { "slug": "CONVOLO_AI_UPLOAD_KNOWLEDGE_BANK", "name": "Upload Knowledge Bank File", "description": "Tool to upload a knowledge bank file. Use when you have a file ready to add to Convolo AI's knowledge bank (Enterprise plan only)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "convolo_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Convolo.ai API Key", "type": "string", "description": "The API key provided by Convolo.ai for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "copperx", "name": "Copperx", "logo": "https://logos.composio.dev/api/copperx", "description": "Payment APIs for Web3 businesses. Start accepting crypto and fiat payments with a single API via Recurring billing, Checkout and Invoicing.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COPPERX_GET_CHECKOUT_SESSION_STATUS", "name": "Get Checkout Session Status", "description": "Tool to get the status of a checkout session. Use when you need to check if a checkout session has been completed and retrieve its current status and transaction details." }, { "slug": "COPPERX_GET_CONSTANTS_PRICES", "name": "Get Constant Prices", "description": "Tool to retrieve constant cryptocurrency prices in a specified fiat currency. Use when you need to get current prices for cryptocurrencies denominated in a specific fiat currency like USD or EUR." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "copperx_api_key", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "API base URL by environment: Production (https://api.copperx.io) or Testnet (https://api.copperx.dev)", "required": true, "default": "https://api.copperx.io" } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from \"Developers\" > \"API keys\" (Production: https://dashboard.copperx.io/developer/apikeys | Testnet: https://dashboard.copperx.dev/developer/apikeys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "corrently", "name": "Corrently", "logo": "https://logos.composio.dev/api/corrently", "description": "Corrently provides a suite of APIs offering real-time and forecasted data on renewable energy availability, CO₂ emissions, and electricity pricing, enabling users to optimize energy consumption and reduce carbon footprints.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CORRENTLY_CO2_METER_UPDATE_READING", "name": "CO₂ Meter Update", "description": "Tool to create or update a CO₂ meter reading for emissions tracking. Use when sending new or updated electricity consumption readings to Corrently." }, { "slug": "CORRENTLY_COMMIT_QUITTUNG", "name": "Commit Strom-Quittung", "description": "Tool to finalize a Strom-Quittung (electricity receipt) after collecting transaction data. Use after gathering seller, buyer, and transaction details to create the final receipt." }, { "slug": "CORRENTLY_GEOCODE_LOCATION", "name": "Geocode Location", "description": "Tool to geocode a free-text location into coordinates. Use when you need latitude and longitude from a place name." }, { "slug": "CORRENTLY_GET_ENERGY_SCHEDULE", "name": "Energy Schedule Computation", "description": "Create an optimized operation schedule for energy-consuming devices based on the GrünstromIndex (Green Power Index). This tool determines the best time slots to run energy-intensive devices (heat pumps, EV chargers, etc.) by analyzing regional renewable energy availability, electricity prices, and CO2 emissions forecasts. Use this after collecting: - German postal code (required for regional data) - Desired optimization goal (price, co2, or comfort) - Number of hours the device needs to run" }, { "slug": "CORRENTLY_GET_METERING_READING", "name": "Get Metering Reading", "description": "Tool to retrieve metered electricity reading with green/grey energy split and CO2 emissions data. Use when you need to check current meter readings or analyze energy consumption patterns for a Stromkonto." }, { "slug": "CORRENTLY_GET_STROMKONTO_BALANCES", "name": "Get Stromkonto Balances", "description": "Retrieve Stromkonto account balances from the energy blockchain ledger. Stromkonto is a ledger for green energy related transactions backed by Energychain blockchain to provide consensus of balances and transactions. Returns balance details across multiple sub-account types (green power bonus, generation, self-consumption, carbon offset, trees planted)." }, { "slug": "CORRENTLY_GET_STROMKONTO_CHOICES", "name": "Get Stromkonto Choices", "description": "Tool to get selectable contract choices for a Stromkonto customer. Use when you need to retrieve available balance and transaction options for an account." }, { "slug": "CORRENTLY_GET_WIM_PROCESS_STATUS", "name": "Get WiM Process Status", "description": "Retrieve status information for WiM (Wechselprozesse im Messwesen) metering change processes. WiM processes handle meter changes and allocation workflows in the German electricity system. Use this tool to check the current status of ongoing or completed metering change processes, track process progress, or verify when a WiM process was initiated." }, { "slug": "CORRENTLY_GRUNSTROM_INDEX_FORECAST", "name": "GrünstromIndex Forecast", "description": "Tool to retrieve hourly green power forecast and CO2 data. Use after obtaining the user API key." }, { "slug": "CORRENTLY_GSI_BEST_HOUR", "name": "GSI Best Hour", "description": "Determines if now is the best time to turn on a device based on regional green energy (GrünstromIndex) forecasts in Germany. Returns true if the current hour has high renewable energy availability within the specified timeframe, false if waiting would be more sustainable." }, { "slug": "CORRENTLY_LOGIN_STROMKONTO", "name": "Login to Stromkonto", "description": "Tool to initiate login to Stromkonto via email. Use when authenticating a user with their email address." }, { "slug": "CORRENTLY_MARKET_DATA", "name": "Electricity Market Data", "description": "Retrieve real-time and forecast electricity pricing data for Germany by postal code (Postleitzahl). Returns wholesale market prices (EUR/MWh) and localized prices for specific grid areas. Data is provided in time intervals with timestamps in milliseconds since Unix epoch. Use this tool when you need current or forecasted electricity prices for energy optimization, cost analysis, or smart grid applications in Germany." }, { "slug": "CORRENTLY_PHEV_NAVIGATOR", "name": "PHEV Navigator", "description": "Tool to get PHEV charge-or-fuel recommendation for German locations. Compares real-time fuel prices at nearby stations with electricity costs to recommend whether charging or fueling is more economical and eco-friendly. Requires a German postal code (PLZ)." }, { "slug": "CORRENTLY_POST_METERING_READING", "name": "Post Metering Reading", "description": "Tool to post a meter reading and get it decorated with green/grey energy split. Use when you need to split consumption readings into green power (1.8.1) and grey power (1.8.2) according to the local GreenPowerIndex value." }, { "slug": "CORRENTLY_PREPARE_RECEIPT_DATA", "name": "Prepare Receipt Data", "description": "Tool to collect data for a receipt before finalizing. During the first call, an account parameter will be returned. Use this when you need to incrementally build receipt data through multiple requests. Call without an account parameter first to create a new session, then use the returned account identifier in subsequent calls to add more data." }, { "slug": "CORRENTLY_PV_GENERATION_GET_FORECAST", "name": "PV Generation Forecast", "description": "Get hourly solar PV generation forecasts for a German location. Returns predicted energy output in watt-hours (Wh) for each hour over the specified forecast period. Use this tool when you need to optimize energy scheduling, estimate solar production, or plan energy storage based on expected PV generation." }, { "slug": "CORRENTLY_REGISTER_STROMKONTO", "name": "Register Stromkonto Account", "description": "Tool to register a new Stromkonto energy account in the Corrently system. Use when creating a new account with email, name, and location details. All balances are initialized to zero upon registration." }, { "slug": "CORRENTLY_RENEWABLE_ENERGY_DISPATCH", "name": "Renewable Energy Dispatch", "description": "Tool to get renewable energy flow and mix for a German ZIP code. Use when you need import/export and dispatch sources/destinations breakdown." }, { "slug": "CORRENTLY_STROMMIX", "name": "Electricity Generation Mix", "description": "Tool to retrieve real-time electricity generation mix in Germany. Use when you need the current breakdown of generation by source." }, { "slug": "CORRENTLY_TARIFF_COMPONENTS", "name": "Tariff Components", "description": "Retrieve detailed German electricity tariff cost breakdown by postal code. Returns comprehensive cost components including: - Grundgebühr (base monthly fee) - Arbeitspreis (energy price per kWh) - Network fees (Netznutzungsentgelt) - Taxes (Stromsteuer, Mehrwertsteuer) - Levies (EEG, KWKG, Offshore-Netzumlage) - Renewable energy credits Use this tool to understand electricity pricing transparency in Germany." }, { "slug": "CORRENTLY_TARIFF_SLPH0", "name": "Standard Load Profile Tariff SLPH0", "description": "Tool to retrieve standard load profile H0 tariff information. Use after providing a German postal code to get local SLPH0 tariffs." }, { "slug": "CORRENTLY_WEATHER_FORECAST", "name": "Weather Forecast", "description": "Tool to retrieve hourly weather forecasts (wind speed and UV index) by geographic coordinates. Use when you need wind and UV data for a specific location. Returns up to 5 days of hourly forecasts." }, { "slug": "CORRENTLY_WIM_STATUS", "name": "TyDID Consent Status", "description": "Check TyDID consent/grant status for an SSI (Self-Sovereign Identity). This tool queries the Corrently TyDID API to verify whether a given Ethereum-based identity has granted consent or if the consent has been revoked. Use cases: - Verify user consent before processing data - Check if a user has revoked access to their data - Monitor consent status changes in blockchain-based identity systems" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "corrently_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Corrently API Key", "type": "string", "description": "Your Corrently API key, obtainable from the Corrently Developer Console.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "countdown_api", "name": "Countdown API", "logo": "https://logos.composio.dev/api/countdown_api", "description": "Countdown API provides real-time eBay product data, including product details, customer reviews, seller feedback, and search results, enabling businesses and developers to access comprehensive eBay marketplace information.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "COUNTDOWN_API_CLEAR_ALL_REQUESTS", "name": "Clear Collection Requests", "description": "Clears (removes) all pending requests from a collection. Use this to reset a collection before adding new requests, or to cancel all queued requests. The collection must be in 'idle' status. Returns the updated collection details after clearing." }, { "slug": "COUNTDOWN_API_COLLECTIONS_CREATE_COLLECTION", "name": "Create a new collection", "description": "Tool to create a new collection. Use when you need to batch and orchestrate multiple requests on a schedule." }, { "slug": "COUNTDOWN_API_COLLECTIONS_GET_COLLECTION", "name": "Get Collection", "description": "Tool to retrieve details for a single collection by ID. Use when you need collection metadata and counts for a given collection ID." }, { "slug": "COUNTDOWN_API_COLLECTIONS_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all collections for the authenticated account. Use when you need to retrieve paginated collections with filtering, sorting, and timing constraints." }, { "slug": "COUNTDOWN_API_COLLECTIONS_START_COLLECTION", "name": "Start Collection", "description": "Start processing a collection's queued requests on the Countdown API. Use this tool to manually trigger a collection to begin executing its requests. The collection must have at least one request added to it before it can be started. You need sufficient API credits to run all requests in the collection. Prerequisites: - Collection must exist (use List Collections or Create Collection first) - Collection must have at least one request added - Sufficient API credits available for the number of requests - Collection must not already be running" }, { "slug": "COUNTDOWN_API_COLLECTIONS_UPDATE_COLLECTION", "name": "Update an existing collection", "description": "Update an existing collection's settings. Use this to modify collection properties like name, schedule, priority, notification settings, or enabled status. The collection_id must be obtained from list_collections or create_collection. Only specified fields are updated; omitted fields retain their current values." }, { "slug": "COUNTDOWN_API_CORE_API_SEND_REQUEST", "name": "eBay Autocomplete", "description": "Tool to fetch eBay autocomplete suggestions. Use when needing search-term-based suggestions from Countdown API." }, { "slug": "COUNTDOWN_API_CREATE_COLLECTION_REQUEST", "name": "Create Collection Request", "description": "Tool to create new requests within a collection for bulk eBay data retrieval. Use when you need to add search, product, reviews, or other eBay data queries to a collection that will be executed on schedule. Collections must be in 'idle' status to accept new requests." }, { "slug": "COUNTDOWN_API_CREATE_DESTINATION", "name": "Create Destination", "description": "Creates a cloud storage destination where batch result sets will be automatically uploaded. Supports Amazon S3, S3-compatible services (MinIO, DigitalOcean Spaces), Google Cloud Storage, Microsoft Azure Blob Storage, and Alibaba Cloud OSS. When enabled=true, the API validates credentials by uploading and deleting a test file. Set enabled=false to create the destination without credential validation." }, { "slug": "COUNTDOWN_API_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to delete a collection and its configuration by ID. Use when you need to remove an existing, non-running collection." }, { "slug": "COUNTDOWN_API_DELETE_DESTINATION", "name": "Delete Destination", "description": "Tool to delete a destination by ID. Use when you need to remove an existing destination." }, { "slug": "COUNTDOWN_API_DELETE_SINGLE_REQUEST", "name": "Delete Single Request", "description": "Delete a specific request from a Countdown API collection by its ID. Use this to remove individual requests that are no longer needed. The collection must not be running when deleting requests." }, { "slug": "COUNTDOWN_API_DESTINATIONS_LIST_DESTINATIONS", "name": "List Destinations", "description": "Tool to list all destinations configured for the account. Use when you need to inspect or paginate through configured destinations." }, { "slug": "COUNTDOWN_API_FIND_COLLECTION_REQUESTS", "name": "Find Collection Requests", "description": "Tool to find requests in a collection by custom_id or search query. Use when you need to search for specific requests within a collection using either an exact custom_id match or a text search query." }, { "slug": "COUNTDOWN_API_GET_ACCOUNT", "name": "Get Account Information", "description": "Tool to retrieve account usage and current platform status. Use when needing to check plan, usage, and quota details for the authenticated user." }, { "slug": "COUNTDOWN_API_LIST_ERROR_LOGS", "name": "List Error Logs", "description": "Tool to list error logs from collection executions. Returns recent errors encountered during request processing with details about failed requests and their causes." }, { "slug": "COUNTDOWN_API_REQUESTS_EXPORT_CSV", "name": "Export Requests CSV", "description": "Export all requests from a collection as downloadable CSV files. Returns URLs to CSV files containing the request data. Use this tool when you need to bulk export or download collection request data in CSV format. The response includes paginated download links if the collection has many requests. Collections with no requests will return an empty pages array." }, { "slug": "COUNTDOWN_API_REQUESTS_EXPORT_JSON", "name": "Export Requests as JSON", "description": "Tool to download all requests in a collection as JSON. Use when you need to export the entire request history for a collection." }, { "slug": "COUNTDOWN_API_REQUESTS_UPDATE_SINGLE_REQUEST", "name": "Update Single Request", "description": "Tool to modify parameters of an existing request in a collection. Use when the collection is not running and you need to update eBay Product Data API parameters." }, { "slug": "COUNTDOWN_API_RESULTS_GET_RESULT_SET", "name": "Get Result Set", "description": "Tool to retrieve a collection run's result set payload. Use after a collection run completes to fetch metadata and download links." }, { "slug": "COUNTDOWN_API_RESULTS_LIST_RESULT_SETS", "name": "List Result Sets", "description": "Tool to list result sets produced by a collection. Use when you need to retrieve all summary status of result sets generated by a collection within the 14-day retention window." }, { "slug": "COUNTDOWN_API_RESULTS_RESEND_RESULT_SET_WEBHOOK", "name": "Resend Result Set Webhook", "description": "Resend the webhook notification for a collection's result set. Use this tool to retry webhook delivery when the original webhook POST failed or timed out. The collection must have a notification_webhook URL configured (either on the collection itself or on the account profile). Result sets are only available for 14 days after creation. Prerequisites: - Collection must exist with a valid notification_webhook URL configured - Result set must exist and not be expired (14-day retention) - Use List Result Sets to find valid result_set_id values" }, { "slug": "COUNTDOWN_API_STOP_ALL_COLLECTIONS", "name": "Stop All Collections", "description": "Tool to stop all collections. Use when you need to halt any running or queued collections after reviewing operations." }, { "slug": "COUNTDOWN_API_STOP_COLLECTION", "name": "Stop Collection", "description": "Tool to stop (pause) a single collection’s processing by ID. Use when you need to halt a running or queued collection after confirming the target collection ID." }, { "slug": "COUNTDOWN_API_UPDATE_DESTINATION", "name": "Update Destination", "description": "Tool to update a destination's configuration by ID. Use after creating or retrieving a destination to modify its settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "countdown_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Countdown API Key", "type": "string", "description": "The API key used for authenticating requests to the Countdown API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "coupa", "name": "Coupa", "logo": "https://logos.composio.dev/api/coupa", "description": "Coupa provides a comprehensive business spend management platform with procurement, invoicing, and expense capabilities.", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 384, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "COUPA_ABANDON_AN_INVOICE", "name": "Abandon Invoice", "description": "Tool to abandon an invoice. Use when an invoice is invalid and needs to be abandoned. Invoice once abandoned cannot be reversed." }, { "slug": "COUPA_ACCOUNTS_CREATE", "name": "Create Account", "description": "Tool to create a Coupa account. Use when you need to provision a new general ledger account with a specific chart-of-accounts type and code segments." }, { "slug": "COUPA_ACCOUNTS_INDEX", "name": "List Accounts", "description": "Tool to list accounts from Coupa. Use when you need to retrieve account IDs and codes with optional filters and pagination." }, { "slug": "COUPA_ACCOUNTS_RECENT", "name": "Get Recent Accounts", "description": "Tool to retrieve recently accessed accounts from Coupa. Use when you need to view accounts that the user has recently interacted with." }, { "slug": "COUPA_ACCOUNTS_SHOW", "name": "Get Account", "description": "Tool to retrieve a specific account by ID. Use when you need detailed account information including segments, type, and status." }, { "slug": "COUPA_ACCOUNTS_UPDATE", "name": "Update Account", "description": "Tool to update an existing Coupa account. Use when you need to modify account information including account type, activation status, code segments, and display name." }, { "slug": "COUPA_ACCOUNT_TYPES_INDEX", "name": "List Account Types", "description": "Tool to list account types in Coupa. Use when you need account type IDs and names for account creation." }, { "slug": "COUPA_ACCOUNT_TYPES_SHOW", "name": "Get Account Type", "description": "Tool to retrieve a specific account type by ID. Use when you need detailed information about a chart of accounts." }, { "slug": "COUPA_ACCOUNT_VALIDATION_RULES_CREATE", "name": "Create Account Validation Rule", "description": "Tool to create account validation rules in Coupa. Use when setting up rules to manage chart of accounts validation with segment conditions." }, { "slug": "COUPA_ACCOUNT_VALIDATION_RULES_SHOW", "name": "Get Account Validation Rule", "description": "Tool to retrieve a specific account validation rule by ID. Use when you need detailed information about account validation rules including segment conditions and error messages." }, { "slug": "COUPA_ACCOUNT_VALIDATION_RULES_UPDATE", "name": "Update Account Validation Rule", "description": "Tool to update an existing account validation rule in Coupa. Use when you need to modify validation rule attributes after confirming the rule ID." }, { "slug": "COUPA_ADD_A_COMMENT_TO_EXPENSE_REPORT", "name": "Add Comment to Expense Report", "description": "Tool to add a comment to an expense report. Use when you need to add notes or feedback to an existing expense report." }, { "slug": "COUPA_ADD_APPROVAL_GROUP_TO_REQUISITION_APPROVAL_CHAIN", "name": "Add Approver to Requisition", "description": "Tool to manually add an approver (User or UserGroup) to a requisition approval chain. Use when you need to add a user or user group to the approval chain of a requisition at a specific position relative to the current approver." }, { "slug": "COUPA_ADD_APPROVER_TO_AN_INVOICE_MANUALLY", "name": "Add Approver To Invoice", "description": "Tool to manually add an approver to an invoice. Use when you need to add a user or user group to the approval chain of an invoice at a specific position." }, { "slug": "COUPA_ADD_APPROVER_TO_PO_CHANGE_AFTER_CURRENT_APPROVER", "name": "Add Approver to PO Change", "description": "Tool to add an approver to a purchase order change after the current approver. Use when you need to manually add an approver to a pending PO change request in the approval chain." }, { "slug": "COUPA_ADD_ATTACHMENT_FILE_TO_PROJECT", "name": "Add File Attachment to Project", "description": "Tool to add a file attachment to an existing project. Use when you need to upload and attach files (documents, images, PDFs, etc.) to projects in Coupa." }, { "slug": "COUPA_ADD_ATTACHMENT_FILE_TO_PURCHASE_ORDER", "name": "Add File Attachment to Purchase Order", "description": "Tool to add a file attachment to an existing purchase order. Use when you need to upload and attach files (documents, images, PDFs, etc.) to purchase orders in Coupa." }, { "slug": "COUPA_ADD_ATTACHMENT_FILE_TO_PURCHASE_ORDER_LINE", "name": "Add File Attachment to Purchase Order Line", "description": "Tool to add a file attachment to a purchase order line. Use when you need to upload and attach files (documents, images, PDFs, etc.) to specific purchase order lines in Coupa." }, { "slug": "COUPA_ADD_ATTACHMENT_FILE_TO_REQUISITION_LINE", "name": "Add File Attachment to Requisition Line", "description": "Tool to add a file attachment to a requisition line. Use when you need to upload and attach files (documents, images, PDFs, etc.) to requisition lines in Coupa." }, { "slug": "COUPA_ADD_ATTACHMENT_TO_COMMENT", "name": "Add Attachment to Comment", "description": "Tool to add a file attachment to an existing comment. Use when you need to upload and attach files to comments in Coupa." }, { "slug": "COUPA_ADD_COAS_ASSIGNED_TO_A_SPECIFIC_SUPPLIER_SITE", "name": "Add COAs to Supplier Site", "description": "Tool to add Chart of Accounts (COAs) to a specific supplier site. Use when you need to assign account types to a supplier site for transaction categorization and financial tracking." }, { "slug": "COUPA_ADD_COMMENTS_TO_PO", "name": "Add Comment to Purchase Order", "description": "Tool to add a comment to a purchase order. Use when you need to add notes, feedback, or mention users on an existing purchase order." }, { "slug": "COUPA_ADD_CONTENT_GROUP_TO_CONTRACT", "name": "Add Content Group to Contract", "description": "Tool to add a content group (business group) to a contract. Use when you need to assign a content group to a contract for access control or visibility management." }, { "slug": "COUPA_ADD_CONTENT_GROUP_TO_SUPPLIER", "name": "Add Content Group to Supplier", "description": "Tool to add a content group (business group) to a supplier. Use when you need to assign a content group to a supplier for access control or visibility management." }, { "slug": "COUPA_ADD_CONTRACT_APPROVER", "name": "Add Contract Approver", "description": "Tool to manually add an approver to a contract. Use when you need to add a user or user group to the approval chain of a contract at a specific position." }, { "slug": "COUPA_ADD_CONTRACT_TERM", "name": "Add Contract Term", "description": "Tool to add a contract term to an existing contract. Use when creating pricing tiers or discount structures for contracts." }, { "slug": "COUPA_ADD_LINE_W_ALLOCATIONS_TO_EXTERNAL_PO", "name": "Add Line w/ Allocations to External PO", "description": "Tool to add a line with account allocations to an external purchase order. Use when you need to add line items with split billing across multiple accounts." }, { "slug": "COUPA_ADDRESSES_CREATE", "name": "Create Address", "description": "Tool to create a new address in Coupa. Use when you need to create personal or supplier remit-to addresses with location details." }, { "slug": "COUPA_ADDRESSES_INDEX", "name": "List Addresses", "description": "Tool to list addresses from Coupa. Use when you need paginated address records for processing." }, { "slug": "COUPA_ADD_SPECIFIC_CONTENT_GROUP_TO_SIM_RECORD", "name": "Add Content Group to SIM Record", "description": "Tool to add a content group (business group) to a Supplier Information Management (SIM) record. Use when you need to assign a content group to a SIM record for access control or visibility management." }, { "slug": "COUPA_ADD_SPECIFIC_CONTENT_GROUP_TO_SIM_SITE", "name": "Add Content Group to SIM Site", "description": "Tool to add a content group (business group) to a Supplier Information Management (SIM) site. Use when you need to assign a content group to a SIM site for access control or visibility management." }, { "slug": "COUPA_ADD_SPECIFIC_CONTENT_GROUP_TO_SUPPLIER_SITE", "name": "Add Content Group to Supplier Site", "description": "Tool to add a content group (business group) to a supplier site. Use when you need to assign a content group to a supplier site for access control or visibility management." }, { "slug": "COUPA_ADD_USER_TO_A_GROUP", "name": "Add User To A Group", "description": "Tool to add a user to a group by updating user group membership. Use when you need to assign a user to a specific group with defined owner and participant permissions." }, { "slug": "COUPA_ANNOUNCEMENTS_INDEX", "name": "List Announcements", "description": "Tool to list all announcements from Coupa. Use when you need to retrieve multiple announcements with optional pagination and filters." }, { "slug": "COUPA_ANNOUNCEMENTS_SHOW", "name": "Get Announcement", "description": "Tool to retrieve a specific announcement by ID from Coupa Mobile. Use when you need detailed information about an announcement." }, { "slug": "COUPA_APPROVALS_APPROVE", "name": "Approve Approval", "description": "Tool to approve a pending approval record. Use when you need to programmatically approve a pending approval by ID." }, { "slug": "COUPA_APPROVALS_HOLD", "name": "Hold Approval", "description": "Tool to place an approval on hold. Use when you need to pause approval workflow temporarily." }, { "slug": "COUPA_APPROVALS_INDEX", "name": "List Approvals", "description": "Tool to list approvals with optional pagination and filters. Use when you need to retrieve multiple approval records." }, { "slug": "COUPA_APPROVALS_REJECT", "name": "Reject Approval", "description": "Tool to reject an approval. Use when you need to programmatically reject a pending approval by ID." }, { "slug": "COUPA_BUDGET_LINES_INDEX", "name": "Get Budget Lines", "description": "Tool to retrieve budget lines from Coupa. Use when you need to query budget line information associated with accounts and periods." }, { "slug": "COUPA_BUSINESS_GROUPS_INDEX", "name": "List Business Groups", "description": "Tool to list business groups (content groups) in Coupa. Use when you need IDs, names, and metadata of content groups for assignments." }, { "slug": "COUPA_BUSINESS_GROUPS_SHOW", "name": "Get Business Group", "description": "Tool to retrieve a specific business group (content group) by ID. Use when you need detailed information about a content group." }, { "slug": "COUPA_BUYER_ACCEPTING_HEADER_LEVEL_CONFIRMATION", "name": "Accept Header Level Confirmation", "description": "Tool to accept order header confirmations from suppliers. Use when a supplier has submitted a header level confirmation that is in pending_buyer_review status and you need to accept it." }, { "slug": "COUPA_BUYER_REJECTING_HEADER_LEVEL_CONFIRMATION", "name": "Reject Header Level Confirmation", "description": "Tool to reject order header confirmations from suppliers. Use when a supplier has submitted a header level confirmation that is in pending_buyer_review status and you need to reject it." }, { "slug": "COUPA_BYPASS_ALL_APPROVALS_OF_AN_INVOICE", "name": "Bypass All Invoice Approvals", "description": "Tool to bypass all approvals for an invoice to enable rapid payment processing. Use when you need to skip the entire approval chain and get an invoice approved immediately. Note that the invoice must be in an approvable status (e.g., 'pending_approval'), not 'draft' status." }, { "slug": "COUPA_BYPASS_CURRENT_APPROVALS_OF_AN_INVOICE", "name": "Bypass Current Invoice Approval", "description": "Tool to skip the current approver and activate the next approver in the approval chain. Use when you need to bypass the current pending approver and move to the next approver. Note that the invoice must be in an approvable status (e.g., 'pending_approval'), not 'draft' status." }, { "slug": "COUPA_CANCEL_EXTERNAL_PO", "name": "Cancel External PO", "description": "Tool to cancel an external purchase order. Use when you need to cancel an externally-created PO that has not yet been fully processed or has related documents that need to be cleared first." }, { "slug": "COUPA_CLOSE_SOFT_CLOSE_EXTERNAL_PO", "name": "Close/Soft Close External PO", "description": "Tool to close or soft-close an external purchase order. Use when finalizing an external PO after confirming receipt or when business rules require closure." }, { "slug": "COUPA_COMPLETE_CONTRACT", "name": "Complete Contract", "description": "Tool to complete a contract and transition it to legally binding status. Use when you need to mark a contract as completed and executed." }, { "slug": "COUPA_CONTENT_GROUPS_CREATE", "name": "Create Content Group", "description": "Tool to create a new content group (business group) in Coupa. Use when you need to provision a new content group to restrict user access to objects in Coupa." }, { "slug": "COUPA_CONTENT_GROUPS_UPDATE", "name": "Update Content Group", "description": "Tool to update an existing content group (business group) in Coupa. Use when you need to modify the name or description of a content group after confirming the group ID exists." }, { "slug": "COUPA_CONTRACTS_ATTACHMENTS_CREATE", "name": "Add Attachment to Contract", "description": "Tool to create an attachment on a contract. Use when attaching files, text, or URLs to contracts." }, { "slug": "COUPA_CONTRACTS_INDEX", "name": "List Contracts", "description": "Tool to list contracts. Use when you need contract IDs and metadata for subsequent actions, e.g., adding an approver." }, { "slug": "COUPA_CONTRACTS_UPDATE", "name": "Update Contract", "description": "Tool to update an existing contract in Coupa via PUT /api/contracts/:id. Use when you need to modify contract attributes such as status, dates, supplier, or financial terms. Only include fields that need to be changed." }, { "slug": "COUPA_CONTRACT_TEMPLATE_DESTROY", "name": "Delete Contract Template", "description": "Tool to delete a contract template. Use when you need to permanently remove a contract template by ID." }, { "slug": "COUPA_COPY_ACCOUNT_TYPE", "name": "Copy Account Type", "description": "Tool to copy/clone an existing chart of accounts (account type). Creates a duplicate of the specified account type with all its associated properties." }, { "slug": "COUPA_CREATE_A_TAX_REGISTRATION", "name": "Create Tax Registration", "description": "Tool to create a supplier tax registration in Coupa. Use when adding tax identification records for suppliers with required country and tax number. Requires supplier information with a primary address to exist before creating tax registration." }, { "slug": "COUPA_CREATE_BUDGET_LINE", "name": "Create Budget Line", "description": "Tool to create a new budget line in Coupa. Use when you need to create a budget line with description, period, amount, owner, and optional account segment values." }, { "slug": "COUPA_CREATE_BUDGET_LINE_ADJUSTMENT", "name": "Create Budget Line Adjustment", "description": "Tool to create a budget line adjustment in Coupa. Use when you need to adjust the budget amount for an existing budget line by creating an adjustment record with the specified amount, currency, and related references." }, { "slug": "COUPA_CREATE_BUSINESS_ENTITIES", "name": "Create Business Entity", "description": "Tool to create a business entity in Coupa. Use when creating a legal or organizational business entity with name, type, formation type, and optional address and contact information." }, { "slug": "COUPA_CREATE_COMMENT_ON_TRANSACTIONAL_OBJECT", "name": "Create Comment on Transactional Object", "description": "Tool to create a comment on any transactional object. Use when you need to add notes, feedback, or mention users on an existing transactional object like requisitions, purchase orders, invoices, or expense reports." }, { "slug": "COUPA_CREATE_COMMODITY", "name": "Create Commodity", "description": "Tool to create a commodity in Coupa. Use when you need to provision a new commodity with a specified name, category, and deductibility level." }, { "slug": "COUPA_CREATE_EXTERNAL_PURCHASE_ORDER", "name": "Create External Purchase Order", "description": "Tool to create an external purchase order. Use when integrating external POs via Coupa API." }, { "slug": "COUPA_CREATE_FXRATES", "name": "Create FX Rate", "description": "Tool to create a new exchange rate (FX rate) between two currencies in Coupa. Use when you need to create one-way currency conversion rates. Note that this creates only a one-way rate; to enable bidirectional conversion, create a separate rate for the reverse direction." }, { "slug": "COUPA_CREATE_INTEGRATION_ERRORS_AGAINST_AN_INTEGRATION", "name": "Create Integration Error", "description": "Tool to create integration errors against an integration run in Coupa. Use when you need to log and track errors that occurred during integration processes or data imports." }, { "slug": "COUPA_CREATE_INTEGRATION_RUN", "name": "Create Integration Run", "description": "Tool to create an integration run. Use when you need to initialize a new run for an integration before processing records." }, { "slug": "COUPA_CREATE_INVOICE_AGAINST_APO_AMOUNT_BASED", "name": "Create Invoice Against PO", "description": "Tool to create an invoice against a purchase order. Use when you need to invoice for goods or services received against an existing PO by linking invoice lines to PO lines." }, { "slug": "COUPA_CREATE_ITEMS_SUPPLIER_ITEMS", "name": "Create Items Supplier Items", "description": "Tool to create a supplier item associated with an existing item in Coupa. Use when adding a new supplier source for an item with pricing and availability details." }, { "slug": "COUPA_CREATE_LOOKUP_VALUE", "name": "Create Lookup Value", "description": "Tool to create a new lookup value in Coupa. Use when you need to add a new value to an existing lookup for categorization and standardization purposes." }, { "slug": "COUPA_CREATE_NEW_CUSTOM_OBJECT_INSTANCE", "name": "Create New Custom Object Instance", "description": "Tool to create a new custom object instance in Coupa. Use when you need to add a new data record for a Custom Object with specific custom field values." }, { "slug": "COUPA_CREATE_PAYMENT_RECONCILIATION_LINES_FOR_A_PAY_ORDER", "name": "Create Payment Reconciliation Lines", "description": "Tool to create payment reconciliation lines for a pay order in Coupa. Use when you need to record payment transactions against payable orders or invoices." }, { "slug": "COUPA_CREATE_PAYMENT_TERM", "name": "Create Payment Term", "description": "Tool to create a payment term in Coupa. Use when you need to define new payment conditions including discount and net payment calculations for invoices and purchase orders." }, { "slug": "COUPA_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a Coupa project. Use when you need to create a new project with specified name, start date, and end date." }, { "slug": "COUPA_CREATE_PROJECT_MEMBERSHIP", "name": "Create Project Membership", "description": "Tool to create a project membership in Coupa. Use when you need to add a user to a project and define their role as owner or participant." }, { "slug": "COUPA_CREATE_QUOTE_REQUESTS_TASKS", "name": "Create Quote Request Task", "description": "Tool to create a task for a quote request. Use when you need to add tasks to track work or milestones for a specific quote request." }, { "slug": "COUPA_CREATE_REQ_ASSIGNMENT_TO_USER", "name": "Create Req Assignment to User", "description": "Tool to create a requisition assignment to a user. Use when you need to assign a user to a requisition for approval or buyer role." }, { "slug": "COUPA_CREATE_REQUISITION_LINES_ESTIMATED_TAX_LINES", "name": "Create Requisition Line Estimated Tax Line", "description": "Tool to create an estimated tax line on a requisition line. Use when adding tax calculations to requisition line items. Requires the Chart of Account to have estimated taxes enabled." }, { "slug": "COUPA_CREATE_REQUISITION_LINES_MULTIPLE_ESTIMATED_TAX_LINES", "name": "Create Requisition Lines - Multiple Estimated Tax Lines", "description": "Tool to update a requisition line with multiple estimated tax lines. Use when you need to add or update estimated taxes on a requisition line. Note that the Chart of Account must have estimated taxes enabled for this operation to succeed." }, { "slug": "COUPA_CREATE_RISKAWAREFEED_FOR_A_SUPPLIER", "name": "Create Risk Aware Feed for Supplier", "description": "Tool to create a Risk Aware feed for a supplier to load GRC (governance, risk, and compliance) data. Use when loading risk metrics for a specific supplier. Note: Each supplier can only have one Risk Aware feed, and the API cannot be used when the supplier status is 'evaluating'." }, { "slug": "COUPA_CREATE_SIM_RECORD_AGAINST_EXISTING_SUPPLIER", "name": "Create Shell SIM Record", "description": "Tool to create a shell SIM (Supplier Information Management) record against an existing supplier before importing legacy suppliers. Use when you need to create a pre-approved SIM record with exported flag set to true." }, { "slug": "COUPA_CREATE_SIM_SITE_USING_SIM_ID_IN_POST_URL", "name": "Create SIM Site Using SIM ID in POST URL", "description": "Tool to create a supplier information site under a specific supplier information record. Use when you need to create a new supplier site with detailed configuration including code, name, PO methods, and cXML settings." }, { "slug": "COUPA_CREATE_SIM_SITE_USING_SIMID_IN_THE_PAYLOAD", "name": "Create SIM Site using SIM ID in Payload", "description": "Tool to create a supplier information site using SIM ID in the payload. Use when you need to add a new site location for an existing supplier information record in Coupa's SIM module." }, { "slug": "COUPA_CREATE_SUPPLIER_ITEM", "name": "Create Supplier Item", "description": "Tool to create a new supplier item against an existing catalog item. Use when linking a supplier's part number to a catalog item with pricing and contract information." }, { "slug": "COUPA_CREATE_SUPPLIER_REMIT_TO_ADDRESS", "name": "Create Supplier Remit-To Address", "description": "Tool to create a remit-to address for a supplier. Use when you need to add a new remit-to address to an existing supplier in Coupa." }, { "slug": "COUPA_CREATE_SUPPLIER_SITE", "name": "Create Supplier Site", "description": "Tool to create a supplier site for an existing supplier. Use when you need to establish a new location or site associated with a supplier in Coupa." }, { "slug": "COUPA_CREATE_SUPPLIER_WITH_CONTACTS_ADDRESSES", "name": "Create Supplier with Contacts and Addresses", "description": "Tool to create a new supplier with primary contact and address in one API call. Use when creating a supplier with contact and address information simultaneously." }, { "slug": "COUPA_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Coupa. Use when you need to create a task with title and assignment. Note: Either owner-id OR (linkable-id + linkable-type) must be provided along with title." }, { "slug": "COUPA_CREATE_TASK_AGAINST_PROJECT", "name": "Create Task Against Project", "description": "Tool to create a task against an existing project in Coupa. Use when you need to add a new task to a specific project by project ID." }, { "slug": "COUPA_CREATE_USER_ADDRESS", "name": "Create User Address", "description": "Tool to create a personal address for a specified Coupa user. Use when you need to add a new address to a user's profile in Coupa." }, { "slug": "COUPA_CREATE_USER_GROUP", "name": "Create User Group", "description": "Tool to create a new user group in Coupa. Use when you need to provision a new user group for organizing users and managing approvals." }, { "slug": "COUPA_CREATE_USER_GROUP_MEMBERSHIPS", "name": "Create User Group Memberships", "description": "Tool to create user group memberships in Coupa. Use when you need to add a user to a specific group or project with defined owner and participant permissions." }, { "slug": "COUPA_CREATE_USER_GROUPS_TASKS", "name": "Create User Group Task", "description": "Tool to create a task within a user group. Use when you need to assign a new task to a specific user group with a title and optional details like due date, description, and owner." }, { "slug": "COUPA_CURRENCIES_INDEX", "name": "List Currencies", "description": "Tool to list currencies from Coupa. Use when you need to retrieve or filter configured currencies before processing." }, { "slug": "COUPA_CURRENCIES_SHOW", "name": "Get Currency by ID", "description": "Tool to retrieve a specific currency by ID. Use when you need detailed information about a currency." }, { "slug": "COUPA_DATA_FILE_SOURCES_INDEX", "name": "List Data File Sources", "description": "Tool to list data file sources from Coupa. Use when you need to retrieve file processing records that track data imports and exports, including upload status and error details." }, { "slug": "COUPA_DEFAULT_RECEIVING_LOCATIONS_INDEX", "name": "List Default Receiving Locations", "description": "Tool to list default receiving locations from Coupa. Use when you need to retrieve receiving location details linked to items and warehouses." }, { "slug": "COUPA_DELETE_A_TAX_REGISTRATION", "name": "Delete Tax Registration", "description": "Tool to delete a tax registration. Use when you need to permanently remove a supplier information tax registration by ID." }, { "slug": "COUPA_DELETE_PROJECT_MEMBERSHIPS", "name": "Delete Project Membership", "description": "Tool to delete a project membership. Use when you need to remove a user's membership from a project by the membership ID." }, { "slug": "COUPA_DELETE_PROJECTS_TASKS", "name": "Delete Project Task", "description": "Tool to delete a task from a specific project. Use when you need to permanently remove a task by ID from a project." }, { "slug": "COUPA_DELETE_QUOTE_REQUEST_TASK", "name": "Delete Quote Request Task", "description": "Tool to delete a task from a quote request. Use when you need to permanently remove a task from a specific quote request by their IDs." }, { "slug": "COUPA_DELETE_REQUISITION_LINE", "name": "Delete Requisition Line", "description": "Tool to delete a requisition line. Use when you need to permanently remove a requisition line by ID." }, { "slug": "COUPA_DELETE_REQUISITION_LINES_ESTIMATED_TAX_LINES", "name": "Delete Requisition Line Estimated Tax Line", "description": "Tool to delete an estimated tax line from a requisition line. Use when you need to remove a specific estimated tax line by ID." }, { "slug": "COUPA_DELETE_SPECIFIC_CONTRACT_ATTACHMENT", "name": "Delete Specific Contract Attachment", "description": "Tool to delete a specific attachment from a contract. Use when you need to permanently remove an attachment by its ID from a contract." }, { "slug": "COUPA_DELETE_SPECIFIC_PO_ATTACHMENT", "name": "Delete Purchase Order Attachment", "description": "Tool to delete a specific attachment from a purchase order. Use when you need to remove an attachment by providing both the purchase order ID and attachment ID." }, { "slug": "COUPA_DELETE_SPECIFIC_REQUISITION_ATTACHMENT", "name": "Delete Requisition Attachment", "description": "Tool to delete a specific attachment from a requisition. Use when removing an attachment from a requisition by attachment ID." }, { "slug": "COUPA_DELETE_SUPPLIER_INFORMATION_SUPPLIER_INFORMATION_SITE", "name": "Delete Supplier Information Site", "description": "Tool to delete a supplier information site from a specific supplier information record. Use when you need to remove a supplier information site by its ID and parent supplier information ID. Requires SIM API permissions." }, { "slug": "COUPA_DEPARTMENTS_CREATE", "name": "Create Department", "description": "Tool to create a department in Coupa. Use when you need to provision a new department with a specified name and active status." }, { "slug": "COUPA_DEPARTMENTS_SHOW", "name": "Get Department by ID", "description": "Tool to retrieve a single department by ID. Use when you need detailed department information." }, { "slug": "COUPA_DEPARTMENTS_UPDATE", "name": "Update Department", "description": "Tool to update an existing department in Coupa. Use when you need to modify department attributes such as name or active status after confirming the department ID." }, { "slug": "COUPA_DISPUTE_AN_INVOICE", "name": "Dispute Invoice", "description": "Tool to dispute an invoice that is in pending approval or pending receipt status. Use when you need to notify the supplier that a problem exists with the invoice." }, { "slug": "COUPA_EASY_FORM_RESPONSES_DESTROY", "name": "Delete Easy Form Response", "description": "Tool to delete an easy form response. Use when you need to permanently remove an easy form response by ID." }, { "slug": "COUPA_EXCHANGE_RATES_INDEX", "name": "List Exchange Rates", "description": "Tool to retrieve exchange rates from Coupa for currencies used to pay for goods. Use when you need to query currency conversion rates with optional filters for date ranges, specific currencies, or rate values." }, { "slug": "COUPA_EXPENSE_REPORTS_INDEX", "name": "List Expense Reports", "description": "Tool to list expense reports. Use when you need a paginated list of reports with optional filters." }, { "slug": "COUPA_EXPORT_PAYABLES_INVOICE", "name": "Export Payables Invoice", "description": "Tool to mark a payables invoice as exported. Use when you need to track that an invoice has been exported to an external system by updating its last-exported-at timestamp." }, { "slug": "COUPA_EXPORT_PAYABLES_INVOICES", "name": "Export Payables Invoices", "description": "Tool to mark a payable invoice as exported. Use after successfully retrieving and processing an invoice in an external system to update the last-exported-at timestamp." }, { "slug": "COUPA_FINANCIAL_COUNTERPARTIES_INDEX", "name": "List Financial Counterparties", "description": "Tool to list financial counterparties from Coupa. Use when you need to retrieve banks and financial institutions used for payment and treasury operations." }, { "slug": "COUPA_GET_ACCOUNT_STATEMENTS_BY_CREATION_DATE", "name": "Get Account Statements by Creation Date", "description": "Tool to retrieve Coupa Pay account statements filtered by creation date. Use when you need to get statements created within a specific date range for reconciliation or reporting purposes." }, { "slug": "COUPA_GET_ALL_ACTIVE_PICK_LISTS", "name": "Get All Active Pick Lists", "description": "Tool to retrieve active pick lists (fulfillment reservations) from Coupa. Use when you need to query fulfillment reservation data with optional filters and pagination." }, { "slug": "COUPA_GET_ALL_ATTACHMENTS_FOR_A_CONTRACT", "name": "Get All Attachments for a Contract", "description": "Tool to retrieve all attachments for a specific contract. Use when you need to list attachments linked to a contract." }, { "slug": "COUPA_GET_ALL_ATTACHMENTS_FOR_A_INVOICE", "name": "Get All Attachments for a Invoice", "description": "Tool to retrieve all attachments for a specific invoice. Use when you need to list or access files, URLs, or text attachments associated with an invoice." }, { "slug": "COUPA_GET_ALL_ATTACHMENTS_FOR_A_PURCHASEORDER", "name": "Get All Attachments for a Purchase Order", "description": "Tool to retrieve all attachments for a specific purchase order. Use when you need to list attachments linked to a purchase order." }, { "slug": "COUPA_GET_ALL_ATTACHMENTS_FOR_A_REQUISITION", "name": "Get All Attachments for a Requisition", "description": "Tool to retrieve all attachments for a specific requisition. Use when you need to list or access files, URLs, or text attachments associated with a requisition." }, { "slug": "COUPA_GET_ALL_ATTACHMENTS_ON_A_COUPAPAY_CHARGE", "name": "Get All Attachments on a CoupaPay Charge", "description": "Tool to retrieve all attachments for a CoupaPay charge. Use when you need to list or access files, URLs, or text attachments associated with a charge." }, { "slug": "COUPA_GET_ALL_CHARGES_LINKED_TO_SPECIFIC_STATEMENT", "name": "Get All Charges Linked to Statement", "description": "Tool to retrieve charges from Coupa, with optional filtering by statement ID. Use when you need to get all charges linked to a specific statement or query charges with various filters." }, { "slug": "COUPA_GET_ALL_FUNDS_TRANSFERS_SPECIFIC_PAYMENT_BATCH", "name": "Get All Funds Transfers by Batch ID", "description": "Tool to retrieve all funds transfers (payments) in a specific payment batch by payment batch ID. Use when you need to fetch payment details for a specific batch from Coupa Pay." }, { "slug": "COUPA_GET_ALL_SIM_SITES_AGAINST_A_SIM_RECORD", "name": "Get All SIM Sites Against a SIM Record", "description": "Tool to retrieve all supplier information sites associated with a specific supplier information record. Use when you need to list all sites linked to a particular SIM record, including nested address and contact information." }, { "slug": "COUPA_GET_ALL_SUPPLIER_SITES_AGAINST_A_SUPPLIER_RECORD", "name": "Get All Supplier Sites for Supplier", "description": "Tool to retrieve all supplier sites associated with a specific supplier record. Use when you need to get site data including codes, names, PO methods, contact information, and addresses for a particular supplier." }, { "slug": "COUPA_GET_ALL_TASKS_LINKED_TO_ALL_PROJECTS", "name": "Get All Tasks Linked to All Projects", "description": "Tool to retrieve all tasks linked to all projects from Coupa. Use when you need to fetch task records with optional filtering and pagination." }, { "slug": "COUPA_GET_ALL_TASKS_LINKED_TO_A_SPECIFIC_PROJECT", "name": "Get All Tasks Linked to a Specific Project", "description": "Tool to retrieve all tasks linked to a specific project in Coupa. Use when you need to fetch task records for a particular project with optional filtering and pagination." }, { "slug": "COUPA_GET_API_DOCS", "name": "Get API Documentation Modules", "description": "Tool to retrieve the list of API documentation modules available in Coupa. Use when you need to discover available API documentation categories including Core Platform, Purchasing, Expense Reporting, Sourcing, Inventory, and other Coupa services." }, { "slug": "COUPA_GET_APPROVAL_BY_ID", "name": "Get Approval by ID", "description": "Tool to retrieve details for a specific approval record by ID. Use when you need complete approval information including status, approver details, and associated approvable object." }, { "slug": "COUPA_GET_AS_NS", "name": "Get ASN Headers", "description": "Tool to retrieve ASN (Advanced Ship Notice) headers from Coupa. Use when you need to fetch shipment notification records with optional filters for status, dates, supplier, or ASN number." }, { "slug": "COUPA_GET_BUDGET_LINE", "name": "Get Budget Line", "description": "Tool to retrieve a specific budget line by ID. Use when you need detailed information about a budget line including amount, remaining budget, and account segments." }, { "slug": "COUPA_GET_BUDGET_LINE_ADJUSTMENTS_FOR_BUDGET_LINE", "name": "Get Budget Line Adjustments", "description": "Tool to retrieve budget line adjustments for a specific budget line. Use when you need to get all adjustments associated with a budget line ID." }, { "slug": "COUPA_GET_BUDGET_LINES_BUDGET_LINE_ADJUSTMENTS", "name": "Get Budget Line Adjustment", "description": "Tool to retrieve a specific budget line adjustment by ID. Use when you need detailed information about a budget line adjustment including amount, currency, description, and related references." }, { "slug": "COUPA_GET_BUSINESS_ENTITIES", "name": "Get Business Entities", "description": "Tool to retrieve business entities from Coupa. Use when you need to query legal or organizational business entities with their addresses, contacts, relationships, and metadata." }, { "slug": "COUPA_GET_BUSINESS_ENTITIES_BY_ID", "name": "Get Business Entity by ID", "description": "Tool to retrieve a specific business entity by ID. Use when you need detailed information about a legal or organizational business entity." }, { "slug": "COUPA_GET_COAS_ASSIGNED_TO_A_SPECIFIC_SUPPLIER_SITE", "name": "Get COAs for Supplier Site", "description": "Tool to retrieve Chart of Accounts (COAs) assigned to a specific supplier site. Use when you need to view which content groups (COAs) are associated with a supplier site for visibility and access control purposes." }, { "slug": "COUPA_GET_COMMENTS_FOR_A_SPECIFIC_EXPENSEREPORT", "name": "Get Comments for Expense Report", "description": "Tool to retrieve comments for a specific expense report. Use when you need to view all comments associated with an expense report." }, { "slug": "COUPA_GET_COMMODITY", "name": "Get Commodity", "description": "Tool to retrieve a specific commodity by ID. Use when you need detailed commodity information." }, { "slug": "COUPA_GET_CONTENT_GROUP_OF_A_SUPPLIER_SITE", "name": "Get Content Groups of Supplier Site", "description": "Tool to retrieve business groups (content groups) of a supplier site. Use when you need to check which content groups are assigned to a specific supplier site for visibility management." }, { "slug": "COUPA_GET_CONTRACT_BY_ID", "name": "Get Contract By ID", "description": "Tool to retrieve a single contract by ID. Use when you need detailed contract information including supplier, terms, dates, and status." }, { "slug": "COUPA_GET_CONTRACTS_LEGAL_DOCUMENTS", "name": "Get Contracts Legal Documents", "description": "Tool to retrieve all legal documents for a contract. Use when you need to list legal documents associated with a specific contract." }, { "slug": "COUPA_GET_COUPAPAY_EXPENSE_PAYMENT_BY_ID", "name": "Get CoupaPay Payment by ID", "description": "Tool to retrieve a specific CoupaPay payment record by ID. Use when you need detailed payment information including payment amounts, payee details, payment batch, and associated invoice information for integration and reconciliation purposes." }, { "slug": "COUPA_GET_CUSTOM_OBJECT_INSTANCES", "name": "Get Custom Object Instances", "description": "Tool to retrieve all data records for a specified Custom Object in Coupa. Use when you need to fetch custom object instance data with optional filtering and pagination." }, { "slug": "COUPA_GET_CUSTOM_OBJECT_RELATED_FORM_RESPONSES", "name": "Get Custom Object Related Form Responses", "description": "Tool to retrieve easy form responses for custom objects and SIM (Supplier Information Management). Use when you need to get form responses with optional filtering and pagination." }, { "slug": "COUPA_GET_CYCLE_COUNTS", "name": "Get Cycle Counts", "description": "Tool to retrieve cycle counts from Coupa. Use when you need to query cycle count records for inventory management." }, { "slug": "COUPA_GET_DELEGATIONS", "name": "Get Delegations", "description": "Tool to retrieve delegations from Coupa. Use when you need to view user delegation configurations including approval, receiving, and review delegations." }, { "slug": "COUPA_GET_DEPARTMENT_BY_NAME", "name": "Get Department by Name", "description": "Tool to retrieve department records by filtering with name or other parameters. Use when you need to find departments by name, ID, or active status." }, { "slug": "COUPA_GET_EXCHANGE_RATE_BY_ID", "name": "Get Exchange Rate By ID", "description": "Tool to retrieve a specific exchange rate record by ID. Use when you need detailed exchange rate information including currency conversion rates, effective dates, and audit metadata." }, { "slug": "COUPA_GET_EXTERNAL_PAYABLE_BY_SOURCE", "name": "Get External Payables by Source", "description": "Tool to retrieve external payable records from Coupa by source system. Use when you need to query external payables that originate from source systems outside of Coupa (e.g., SAP, Oracle, NetSuite). Returns payable details including amounts, dates, status, and source system information." }, { "slug": "COUPA_GET_FAVORITE_ACCOUNTS", "name": "Get Favorite Accounts", "description": "Tool to retrieve favorite accounts from Coupa. Use when you need to get the list of accounts marked as favorites by the user." }, { "slug": "COUPA_GET_INTEGRATION_HISTORY_RECORDS", "name": "Get Integration History Records", "description": "Tool to retrieve integration history records from Coupa. Use when you need to monitor integration transactions, check status of API calls, or troubleshoot integration issues." }, { "slug": "COUPA_GET_INTEGRATION_RUN", "name": "Get Integration Run", "description": "Tool to retrieve a specific integration run by ID. Use when you need detailed information about an integration run including status, timestamps, record counts, and errors." }, { "slug": "COUPA_GET_INVENTORY_ADJUSTMENTS", "name": "Get Inventory Adjustments", "description": "Tool to retrieve inventory adjustments from Coupa. Use when you need to query inventory adjustment records with optional filtering, pagination, and field selection." }, { "slug": "COUPA_GET_INVOICES_COMMENTS", "name": "Get Invoice Comment by ID", "description": "Tool to retrieve a specific comment on an invoice by comment ID. Use when you need to get detailed information about a particular invoice comment." }, { "slug": "COUPA_GET_ITEM", "name": "Get Item", "description": "Tool to retrieve a single catalog item by ID. Use when you need detailed item information after knowing the item ID." }, { "slug": "COUPA_GET_ITEM_IMAGE", "name": "Get Item Image", "description": "Tool to download the image for a catalog item. Use when you need to retrieve the image associated with a specific item ID." }, { "slug": "COUPA_GET_ITEMS_SUPPLIER_ITEMS", "name": "Get Items Supplier Items", "description": "Tool to retrieve supplier items for a specific catalog item. Use when you need supplier-specific pricing, contract details, and purchasing information for an item." }, { "slug": "COUPA_GET_ITEMS_SUPPLIER_ITEMS2", "name": "Get Items Supplier Items by ID", "description": "Tool to retrieve a specific supplier item associated with a catalog item. Use when you need detailed information about a particular supplier item for an item, including pricing, availability, and supplier details." }, { "slug": "COUPA_GET_LOOKUP_VALUE_BY_ID", "name": "Get Lookup Value by ID", "description": "Tool to retrieve a specific lookup value by ID. Use when you need detailed information about a lookup value used for categorization and standardization in Coupa." }, { "slug": "COUPA_GET_MATCHING_ALLOCATION_FOR_AN_INVOICE_LINE", "name": "Get Matching Allocation for Invoice Line", "description": "Tool to retrieve matching allocation records that link invoice lines to purchase orders, ASNs, and inventory transactions. Use when you need to reconcile invoices with purchase orders or track allocation history for specific invoice lines." }, { "slug": "COUPA_GET_ORDER_PADS_ORDER_PAD_LINES", "name": "Get Order Pad Lines", "description": "Tool to retrieve order pad lines for a specific order pad. Use when you need to fetch the list of items (lines) associated with an order pad." }, { "slug": "COUPA_GET_PAYABLE_INVOICE_BY_ID", "name": "Get Payable Invoice By ID", "description": "Tool to retrieve a single payable invoice by ID. Use when you need detailed payable invoice information including amounts, currency, status, dates, allocations, and reconciliation lines." }, { "slug": "COUPA_GET_PAYABLE_INVOICES", "name": "Get Payable Invoices", "description": "Tool to retrieve payable invoices from Coupa. Use when you need to query invoice payables with optional filters for status, dates, document information, and pagination support." }, { "slug": "COUPA_GET_PAY_INVOICES_FIELDS_QUERY_PARAM", "name": "Get Pay Invoices - Fields Query Param", "description": "Tool to retrieve Coupa Pay invoices with optional field filtering. Use when you need to fetch invoice data from Coupa Pay with control over which fields are returned." }, { "slug": "COUPA_GET_PAY_ORDERS_IN_STATUS_PENDING_DOCUMENT_APPROVAL", "name": "Get Pay Orders Pending Document Approval", "description": "Tool to get pay orders with status pending_document_approval. Use when you need to retrieve orders awaiting document approval in the payables system." }, { "slug": "COUPA_GET_PO_CONFIRMATION_BY_ID", "name": "Get PO Confirmation by ID", "description": "Tool to retrieve a specific order header confirmation by ID. Use when you need details about a purchase order confirmation record." }, { "slug": "COUPA_GET_PO_CONFIRMATION_CANCELLED_STATUS_NOT_EXPORTED", "name": "Get PO Confirmations Cancelled and Not Exported", "description": "Tool to retrieve PO confirmations with cancelled status that have not been exported. Use when you need to identify cancelled order confirmations requiring processing or export to external systems." }, { "slug": "COUPA_GET_PO_LINE_USING_ORDER_HEADER_ID_AND_LINE_NUMBER", "name": "Get PO Line by Order Header ID and Line Number", "description": "Tool to retrieve purchase order line(s) by order header ID and line number. Use when you need to get specific PO line details using the order header ID and line number combination." }, { "slug": "COUPA_GET_PROJECT_MEMBERSHIP", "name": "Get Project Memberships", "description": "Tool to query project memberships from Coupa. Use when you need to get project membership information based on user and/or project filters. This allows you to find which users are members of specific projects and their roles (owner, participant)." }, { "slug": "COUPA_GET_PROJECT_MEMBERSHIP_BY_ID", "name": "Get Project Membership by ID", "description": "Tool to retrieve a single project membership by ID. Use when you need detailed information about a specific project membership after knowing its ID." }, { "slug": "COUPA_GET_PROJECT_TASK", "name": "Get Project Task", "description": "Tool to retrieve a specific task from a specific project by their IDs. Use when you need detailed information about a particular task within a project." }, { "slug": "COUPA_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Tool to retrieve a specific purchase order. Use when you need PO details by its ID." }, { "slug": "COUPA_GET_PURCHASE_ORDER_ATTACHMENT_FILE", "name": "Get Purchase Order Attachment File", "description": "Tool to retrieve a specific attachment file from a purchase order. Use when you need to download the actual file content of an attachment associated with a specific purchase order." }, { "slug": "COUPA_GET_PURCHASE_ORDER_CHANGES", "name": "Get Purchase Order Changes", "description": "Tool to retrieve a specific purchase order change. Use when you need details about a PO modification request by its ID." }, { "slug": "COUPA_GET_PURCHASE_ORDER_CHANGES_PENDING_CERTAIN_APPROVER", "name": "Get PO Changes Pending Certain Approver", "description": "Tool to get purchase order changes pending approval by a certain approver. Use when you need to retrieve PO modifications awaiting approval from a specific user." }, { "slug": "COUPA_GET_PURCHASE_ORDER_COMMENT", "name": "Get Purchase Order Comment", "description": "Tool to retrieve a specific comment on a purchase order by ID. Use when you need to view details of a particular comment on a purchase order." }, { "slug": "COUPA_GET_PURCHASE_ORDER_LINES", "name": "Get Purchase Order Line", "description": "Tool to retrieve a specific purchase order line by ID. Use when you need detailed information about a single purchase order line." }, { "slug": "COUPA_GET_QUOTE_REQUESTS_TASKS", "name": "Get Quote Request Tasks", "description": "Tool to retrieve all tasks for a specific quote request in Coupa. Use when you need to fetch task records for a particular quote request with optional filtering and pagination." }, { "slug": "COUPA_GET_RECONCILIATION_LINES_FOR_PAYABLE_ORDER", "name": "Get Reconciliation Lines for Payable Order", "description": "Tool to retrieve reconciliation lines for payable orders. Use when you need to fetch payment reconciliation records linked to pay orders or invoices." }, { "slug": "COUPA_GET_REMIT_TO_ADDRESS_OF_A_SUPPLIER", "name": "Get Remit-To Addresses of Supplier", "description": "Tool to retrieve remit-to addresses for a specific supplier. The remit-to address (RTA) specifies where payment should be delivered and is owned by the supplier." }, { "slug": "COUPA_GET_REQUISITION_ASSIGNMENT", "name": "Get Requisition Assignment", "description": "Tool to retrieve assignment information for a specific requisition. Use when you need to see who is assigned to a requisition and in what role." }, { "slug": "COUPA_GET_REQUISITION_LINES_ESTIMATED_TAX_LINES", "name": "Get Requisition Line Estimated Tax Lines", "description": "Tool to retrieve estimated tax lines for a requisition line. Use when you need tax calculation details for a specific requisition line." }, { "slug": "COUPA_GET_REQUISITIONS_COMMENTS", "name": "Get Requisition Comment by ID", "description": "Tool to retrieve a specific comment on a requisition by comment ID. Use when you need to get detailed information about a particular requisition comment." }, { "slug": "COUPA_GET_RETURN_TO_SUPPLIER_TRANSACTIONS", "name": "Get Return To Supplier Transactions", "description": "Tool to retrieve return to supplier transactions for reverse logistics operations. Use when you need to query transactions related to inventory returns to vendors." }, { "slug": "COUPA_GET_RISKAWAREFEED", "name": "Get Supplier Risk Aware Feed", "description": "Tool to retrieve supplier governance, risk, and compliance (GRC) data from Risk Aware feed. Use when you need to query supplier risk data by supplier ID, name, or number. Each supplier can only have one Risk Aware feed." }, { "slug": "COUPA_GET_SHIPPING_TERMS", "name": "Get Shipping Terms", "description": "Tool to retrieve shipping terms from Coupa. Use when you need to query shipping term records with optional filtering by ID, active status, code, or content groups." }, { "slug": "COUPA_GET_SIM_EASY_FORM_RESPONSES", "name": "Get SIM Easy Form Responses", "description": "Tool to retrieve easy form responses for a specific supplier information record. Use when you need to query form responses associated with SIM records or custom objects." }, { "slug": "COUPA_GET_SIM_SITE_BY_ID", "name": "Get SIM Site by ID", "description": "Tool to retrieve a specific supplier information site by ID. Use when you need detailed information about a single supplier information site including code, name, PO methods, cXML configuration, addresses, and contacts." }, { "slug": "COUPA_GET_SOFT_APPLIED_PO_UPDATES_USING_CONFIRMATION_ID", "name": "Get Soft Applied PO Updates", "description": "Tool to retrieve soft applied purchase order updates using a confirmation ID. Use when you need to review PO changes that have been soft-applied by a supplier." }, { "slug": "COUPA_GET_SPECIFIC_ATTACHMENT_ON_PURCHASE_ORDER_LINE", "name": "Get Specific Attachment on Purchase Order Line", "description": "Tool to retrieve a specific attachment file from a purchase order line. Use when you need to download an attachment associated with a specific purchase order line." }, { "slug": "COUPA_GET_SPECIFIC_ATTACHMENT_ON_REQUISITION_LINE", "name": "Get Specific Attachment on Requisition Line", "description": "Tool to retrieve a specific attachment file from a requisition line. Use when you need to download an attachment associated with a specific requisition line." }, { "slug": "COUPA_GET_SPECIFIC_ATTACHMENT_USING_ATTACHMENT_ID", "name": "Get Specific Attachment Using Attachment ID", "description": "Tool to retrieve a specific attachment associated with a charge. Use when you need to get attachment details by charge ID and attachment ID." }, { "slug": "COUPA_GET_SPECIFIC_CONTRACT_ATTACHMENT_FILE", "name": "Get Contract Attachment", "description": "Tool to retrieve metadata for a specific contract attachment. Use when you need attachment details like file-url, type, intent, or file size for a known contract and attachment ID." }, { "slug": "COUPA_GET_SPECIFIC_CUSTOM_OBJECT_INSTANCE_BY_ID", "name": "Get Custom Object Instance", "description": "Tool to retrieve a specific custom object instance by ID. Use when you need detailed information about a particular custom object data record." }, { "slug": "COUPA_GET_SPECIFIC_EASYFORMRESPONSE_ATTACHMENT_FILE", "name": "Get EasyFormResponse Attachment File", "description": "Tool to retrieve a specific attachment file from an EasyFormResponse. Use when you need to download attachment files for a known easy form response and attachment ID." }, { "slug": "COUPA_GET_SPECIFIC_INVOICE_ATTACHMENT_FILE", "name": "Get Specific Invoice Attachment File", "description": "Tool to retrieve a specific attachment from an invoice. Use when you need to get attachment metadata and file information for a specific invoice attachment." }, { "slug": "COUPA_GET_SPECIFIC_REQUSITION_ATTACHMENT_FILE", "name": "Get Specific Requisition Attachment", "description": "Tool to retrieve detailed information about a specific attachment on a requisition. Use when you need attachment metadata, file URL, type, intent, or content details for a requisition attachment." }, { "slug": "COUPA_GET_SPECIFIC_SCHEMA", "name": "Get Specific API Schema", "description": "Tool to retrieve the Swagger 2.0 API schema documentation for a specific Coupa resource. Use when you need to understand the API structure, available endpoints, parameters, and response schemas for resources like users, invoices, purchase orders, or suppliers." }, { "slug": "COUPA_GET_STATEMENTS_BY_ID", "name": "Get Statement By ID", "description": "Tool to retrieve a single Coupa Pay statement by its unique identifier. Use when you need detailed information about a specific corporate card payment partner statement." }, { "slug": "COUPA_GET_STATUS_OF_AN_IMPORT_FILE", "name": "Get Status of an Import File", "description": "Tool to retrieve status and details of a specific data import file source. Use when you need to monitor the status of CSV import files uploaded to Coupa, tracking whether they have been processed successfully, are in progress, or have failed." }, { "slug": "COUPA_GET_SUPPLIER_INFORMATION_SUPPLIER_INFORMATION_SITE", "name": "Get Supplier Information Site", "description": "Tool to retrieve a specific supplier information site by supplier information ID and site ID. Use when you need detailed information about a single supplier information site including code, name, PO methods, addresses, and contacts." }, { "slug": "COUPA_GET_SUPPLIER_ITEM_BY_ID", "name": "Get Supplier Item by ID", "description": "Tool to retrieve a specific supplier item by ID. Use when you need detailed supplier item information including pricing, availability, and item specifications." }, { "slug": "COUPA_GET_SUPPLIER_ITEMS_BY_ITEM_NAME", "name": "Get Supplier Items by Item Name", "description": "Tool to retrieve supplier items filtered by item name. Use when you need to find supplier items for a specific item." }, { "slug": "COUPA_GET_SUPPLIER_SITE_BY_CODE", "name": "Get Supplier Site by Code", "description": "Tool to retrieve supplier sites with optional filters. Use when you need to query supplier sites by code, name, or other attributes." }, { "slug": "COUPA_GET_TAX_REGISTRATIONS_USING_ID", "name": "Get Tax Registration by ID", "description": "Tool to retrieve a specific supplier information tax registration record by ID. Use when you need detailed tax registration information for supplier information management." }, { "slug": "COUPA_GET_USER_ADDRESS_BY_ID", "name": "Get User Address by ID", "description": "Tool to retrieve a specific address by ID for a Coupa user. Use when you need detailed information about a particular user address." }, { "slug": "COUPA_GET_USER_ADDRESS_BY_ID2", "name": "Get User Address by ID (v2)", "description": "Tool to retrieve a specific address by ID for a Coupa user using the nested user endpoint. Use when you need detailed information about a particular user address." }, { "slug": "COUPA_GET_USER_GROUP", "name": "Get User Group", "description": "Tool to retrieve a specific user group by ID. Use when you need detailed information about a user group including its members, approval permissions, and metadata." }, { "slug": "COUPA_GET_USER_GROUP_MEMBERSHIP", "name": "Get User Group Membership", "description": "Tool to retrieve a single user group membership by ID. Use when you need detailed information about a specific user's membership in a group or project." }, { "slug": "COUPA_GET_USER_GROUPS_TASKS", "name": "Get User Group Tasks", "description": "Tool to retrieve tasks associated with a specific user group. Use when you need to query tasks assigned to or managed by a user group." }, { "slug": "COUPA_GET_USER_MEMBERSHIPS", "name": "Get User Memberships", "description": "Tool to list user group memberships. Use when you need to retrieve user memberships in groups or projects with optional filtering and pagination." }, { "slug": "COUPA_IGNORE_WINDOW_AND_ISSUE", "name": "Ignore Window And Issue", "description": "Ignore Window And Issue" }, { "slug": "COUPA_IMPORT_BUDGET_LINES", "name": "Import Budget Lines", "description": "Tool to import budget lines via CSV file upload. Use when uploading batch budget line data to Coupa for processing." }, { "slug": "COUPA_INSPECTION_CODES_INDEX", "name": "List Inspection Codes", "description": "Tool to list inspection codes. Use when you need to retrieve id and code of inspection codes for inventory transactions." }, { "slug": "COUPA_INTEGRATION_ERRORS_INDEX", "name": "List Integration Errors", "description": "Tool to list and query integration errors in Coupa. Use when you need to retrieve error IDs and details for troubleshooting or resolving failed transactions." }, { "slug": "COUPA_INTEGRATION_RUNS_INDEX", "name": "List Integration Runs", "description": "Tool to list integration runs. Use after identifying an integration to retrieve run IDs and statuses." }, { "slug": "COUPA_INTEGRATIONS_CREATE", "name": "Create Integration", "description": "Tool to create a new integration in Coupa. Use when you need to define a connection between Coupa and an external system, specifying the business object, data flow direction, and integration method." }, { "slug": "COUPA_INTEGRATIONS_INDEX", "name": "List Integrations", "description": "Tool to list integrations from Coupa. Use when you need to retrieve integration definitions and IDs for filtering integration runs." }, { "slug": "COUPA_INTEGRATIONS_SHOW", "name": "Get Integration", "description": "Tool to retrieve a specific integration by ID. Use when you need detailed information about a single integration." }, { "slug": "COUPA_INVENTORY_CONSUMPTIONS_DESTROY", "name": "Delete Inventory Consumption", "description": "Tool to delete an inventory consumption record. Use when you need to permanently remove an inventory consumption by ID." }, { "slug": "COUPA_INVENTORY_TRANSFERS_DESTROY", "name": "Delete Inventory Transfer", "description": "Tool to delete an inventory transfer. Use when you need to permanently remove an inventory transfer by ID." }, { "slug": "COUPA_INVITE_SUPPLIERS_TO_THE_CSP_PORTAL", "name": "Invite Suppliers to CSP Portal", "description": "Tool to invite suppliers to the Coupa Supplier Portal (CSP). Use when you need to send portal invitation emails to one or more suppliers. The invitation is processed asynchronously as a background job." }, { "slug": "COUPA_INVOICES_ATTACHMENTS_CREATE", "name": "Create Invoice Attachment", "description": "Tool to create an attachment on an invoice. Use when attaching files, text, or URLs to invoices." }, { "slug": "COUPA_INVOICES_DESTROY", "name": "Delete Invoice", "description": "Tool to delete an invoice. Use when you need to permanently remove an invoice by ID. Note: Invoices with pending approvals or certain statuses cannot be deleted." }, { "slug": "COUPA_INVOICES_LIST", "name": "List Invoices", "description": "Tool to list invoices with optional pagination and filters. Use when you need to obtain invoice IDs or details for testing void invoice extensively." }, { "slug": "COUPA_INVOICES_REMOVE_APPROVAL", "name": "Remove Approver From Invoice", "description": "Tool to remove a manually added approver from an invoice. Use when you need to remove a manually added approver from an invoice's approval chain by providing the approval ID." }, { "slug": "COUPA_INVOICES_RETRIEVE_LEGAL_INVOICE_PDF", "name": "Retrieve Legal Invoice PDF", "description": "Tool to download the legal invoice PDF. Use when you need the official Coupa legal invoice document after invoice approval." }, { "slug": "COUPA_INVOICES_REVALIDATE_TOLERANCES", "name": "Revalidate Invoice Tolerances", "description": "Tool to revalidate tolerances on an invoice. Use when tolerance checks need rerunning after invoice submission issues." }, { "slug": "COUPA_INVOICES_SHOW", "name": "Get Invoice", "description": "Tool to retrieve a single invoice by ID. Use when you need detailed invoice information including line items, charges, attachments, and approval details." }, { "slug": "COUPA_INVOICES_SUBMIT", "name": "Submit Invoice", "description": "Tool to submit a draft invoice for approval. Use when you need to kick off the approval workflow on a draft invoice." }, { "slug": "COUPA_INVOICES_UPDATE", "name": "Update Invoice", "description": "Tool to update an invoice via PUT /api/invoices/:id." }, { "slug": "COUPA_ISSUE_PURCHASE_ORDER_WITHOUT_SEND", "name": "Issue Purchase Order Without Send", "description": "Tool to issue a purchase order without transmitting it to the supplier. Use when purchase orders are communicated through alternative means outside of Coupa's transmission channels." }, { "slug": "COUPA_ITEMS_CREATE", "name": "Create Item", "description": "Tool to create a catalog item. Use when provisioning items with minimal details in Coupa." }, { "slug": "COUPA_ITEMS_INDEX", "name": "List Items", "description": "Tool to list catalog items. Use when you need item IDs and item numbers for inventory adjustment." }, { "slug": "COUPA_ITEMS_UPDATE", "name": "Update Existing Item", "description": "Tool to update an existing item in Coupa catalog. Use when modifying item details like name, description, commodity, UOM, or other attributes. Only specified fields are updated; omit fields to leave unchanged." }, { "slug": "COUPA_LEGAL_DOCUMENTS_SHOW", "name": "Get Legal Document", "description": "Tool to retrieve a specific legal document by ID. Use when you need detailed information about a legal document associated with a contract." }, { "slug": "COUPA_LEGAL_ENTITIES_SHOW", "name": "Get Legal Entity", "description": "Tool to retrieve a single legal entity by ID. Use when you need detailed information about a specific legal entity." }, { "slug": "COUPA_LIST_ACCOUNT_VALIDATION_RULES", "name": "List Account Validation Rules", "description": "Tool to retrieve account validation rules from Coupa. Use when you need to list validation rules with optional filters like active status or creator." }, { "slug": "COUPA_LIST_COMMENTS", "name": "List Comments", "description": "Tool to query and list comments in Coupa. Use when you need to retrieve comments across the system or apply filters to find specific comments." }, { "slug": "COUPA_LIST_COMMODITIES", "name": "List Commodities", "description": "Tool to list commodities from Coupa. Use when you need to query or retrieve multiple commodities." }, { "slug": "COUPA_LIST_CONTRACT_TERMS", "name": "List Contract Terms", "description": "Tool to query contract terms for a specific contract. Use when you need to retrieve pricing tiers or discount structures for a contract." }, { "slug": "COUPA_LIST_OBJ_COMMENTS", "name": "List Object Comments", "description": "Tool to query comments for a specific transactional object. Use when you need to retrieve comments, notes, or discussion history on requisitions, invoices, purchase orders, expense reports, or users." }, { "slug": "COUPA_LIST_QUERY_SUPPLIERS", "name": "List Suppliers", "description": "Tool to list suppliers with filters. Use when you need suppliers matching certain criteria." }, { "slug": "COUPA_LIST_RECEIVING_TRANSACTIONS", "name": "List Receiving Transactions", "description": "Tool to query receiving transactions in Coupa. Use when you need to fetch receipt records with optional filters for status, dates, type, or export status." }, { "slug": "COUPA_LIST_WORK_CONFIRMATION_HEADERS", "name": "List Work Confirmation Headers", "description": "Tool to retrieve work confirmation headers from Coupa. Use when you need to query work confirmation header records." }, { "slug": "COUPA_LOGOUT_IFRAME_SESSION", "name": "Logout Iframe Session", "description": "Tool to log out CSP (Coupa Supplier Portal) iframe session. Use when you need to terminate an active supplier portal iframe session." }, { "slug": "COUPA_MARK_A_CHARGE_AS_EXPORTED", "name": "Mark a Charge as Exported", "description": "Tool to mark a charge as exported in the accounting system. Use when you need to flag a charge as having been exported to an external system (such as an ERP)." }, { "slug": "COUPA_MARK_A_PAYABLEINVOICE_AS_TRACKING_EXTERNALLY", "name": "Mark Payable Invoice as Tracking Externally", "description": "Tool to mark a payable invoice as tracking externally. Use when an invoice payment will be managed outside of Coupa and you need to stop Coupa from tracking it internally." }, { "slug": "COUPA_MARK_A_STATEMENT_AS_EXPORTED", "name": "Mark Statement as Exported", "description": "Tool to mark a Coupa Pay statement as exported. Use when you need to flag that a statement has been exported to an external system." }, { "slug": "COUPA_MARK_COUPA_PAY_PAYMENT_AS_EXPORTED", "name": "Mark CoupaPay Payment as Exported", "description": "Tool to mark a CoupaPay payment as exported. Use after successfully retrieving and processing a payment in an external system to prevent duplicate retrieval in subsequent queries." }, { "slug": "COUPA_MARK_PAYABLE_INVOICE_AS_TRACKING_IN_COUPA", "name": "Mark Payable Invoice as Tracking in Coupa", "description": "Tool to mark a payable invoice as tracking in Coupa. Use when you want to start tracking an invoice payment within Coupa's internal payment system." }, { "slug": "COUPA_MARK_PAYABLEINVOICE_PAID_EXTERNALLY", "name": "Mark Payable Invoice as Paid Externally", "description": "Tool to mark a payable invoice as paid externally. Use when a payment has been made outside of Coupa and you need to stop tracking it in the system. The invoice status will change to 'externally_paid'." }, { "slug": "COUPA_MARK_PAY_INVOICE_AS_EXPORTED", "name": "Mark Pay Invoice as Exported", "description": "Tool to mark a Coupa Pay invoice as exported. Use after successfully retrieving and processing an invoice in an external system to prevent duplicate retrieval in subsequent queries." }, { "slug": "COUPA_MARK_PO_CONFIRMATION_AS_INTEGRATION_COMPLETE", "name": "Mark PO Confirmation as Integration Complete", "description": "Tool to mark an order header confirmation as integration_complete. Use when an integration process has completed successfully and you need to update the confirmation status to reflect completion." }, { "slug": "COUPA_MARK_PO_CONFIRMATION_AS_INTEGRATION_FAILED", "name": "Mark PO Confirmation as Integration Failed", "description": "Tool to mark an order header confirmation as integration_failed. Use when an integration process has failed and you need to update the confirmation status to reflect the integration failure." }, { "slug": "COUPA_MATCHING_ALLOCATIONS_SHOW", "name": "Get Matching Allocation", "description": "Tool to retrieve a specific matching allocation record by ID. Use when you need details about allocations between inventory transactions, PO lines, invoice lines, and ASN lines." }, { "slug": "COUPA_NOTIFY_CONTRACT_SIGNATURE_CREATED", "name": "Notify Contract Signature Created", "description": "Tool to notify that a signature has been added in CCC (Coupa Contract Collaboration). Use when you need to notify the system about signature creation for a contract." }, { "slug": "COUPA_OBJECT_TRANSLATION_CREATE", "name": "Create Object Translation", "description": "Tool to create a translation for a UOM object in Coupa. Use when you need to add locale-specific translations for unit of measure attributes in different languages." }, { "slug": "COUPA_OBJECT_TRANSLATION_DESTROY", "name": "Delete Object Translation", "description": "Tool to delete a UOM translation. Use when you need to permanently remove a specific translation for a Unit of Measure by ID." }, { "slug": "COUPA_OBJECT_TRANSLATION_INDEX", "name": "List Object Translations", "description": "Tool to list all translations for a specific Unit of Measure (UOM). Use when you need to retrieve multi-language translations for UOM objects in Coupa." }, { "slug": "COUPA_OBJECT_TRANSLATION_SHOW", "name": "Get UOM Translation", "description": "Tool to retrieve a specific translation record for a Unit of Measure (UOM). Use when you need details about a particular UOM translation by ID for multi-language support." }, { "slug": "COUPA_ORDER_CONFIRMATIONS_DESTROY", "name": "Delete Order Confirmation", "description": "Tool to delete an order confirmation. Use when you need to permanently remove an order confirmation by ID." }, { "slug": "COUPA_ORDER_LIST_CREATE", "name": "Create Order List", "description": "Tool to create an order pad (order list) in Coupa. Use when you need to create a list, set, or kit of frequently requested items from a supplier catalog for easy ordering." }, { "slug": "COUPA_ORDER_LIST_DESTROY", "name": "Delete Order List", "description": "Tool to delete an order list (order pad). Use when you need to permanently remove an order list by ID." }, { "slug": "COUPA_ORDER_LIST_SHOW", "name": "Get Order List", "description": "Tool to retrieve a specific order list (order pad) by ID. Use when you need detailed information about an order list including suppliers, items, and business groups." }, { "slug": "COUPA_ORDER_LIST_UPDATE", "name": "Update Order List", "description": "Tool to update an existing order list (order pad) in Coupa. Use when you need to modify order list attributes such as name, locked status, or supplier settings." }, { "slug": "COUPA_ORDER_PADS_INDEX", "name": "List Order Pads", "description": "Tool to list order pads (order lists) from Coupa. Order pads are lists, sets, or kits of frequently requested items within a supplier catalog for streamlined ordering. Use when you need to retrieve order pad IDs, names, and associated suppliers with optional pagination." }, { "slug": "COUPA_PATCH_BUSINESS_ENTITY", "name": "Update Business Entity", "description": "Tool to update a business entity using PATCH method. Use when you need to modify specific fields of an existing business entity without sending all fields." }, { "slug": "COUPA_PATCH_PURCHASE_ORDER", "name": "Update Purchase Order", "description": "Tool to update a purchase order. Use when you need to modify specific fields of an existing PO. Only fields provided will be updated. Note: exported field cannot be updated simultaneously with other fields by default." }, { "slug": "COUPA_PAYMENT_TERMS_INDEX", "name": "List Payment Terms", "description": "Tool to list payment terms with filters." }, { "slug": "COUPA_PAYMENT_TERMS_SHOW", "name": "Get Payment Term", "description": "Tool to retrieve a single payment term by ID. Use when you need detailed payment term information." }, { "slug": "COUPA_PROJECTS_INDEX", "name": "List Projects", "description": "Tool to list/query all projects from Coupa. Use when you need to retrieve project information with optional filtering and pagination." }, { "slug": "COUPA_PROJECTS_SHOW", "name": "Get Project", "description": "Tool to retrieve a single project by ID. Use when you need detailed project information after knowing the project ID." }, { "slug": "COUPA_PROJECTS_UPDATE", "name": "Update Project", "description": "Tool to update an existing Coupa project. Use when you need to modify project attributes after confirming project ID." }, { "slug": "COUPA_PURCHASE_ORDERS_INDEX", "name": "List Purchase Orders", "description": "Tool to list purchase order headers. Use when you need to fetch filtered and paginated purchase order records from Coupa." }, { "slug": "COUPA_PURCHASE_ORDERS_ISSUE", "name": "Issue Purchase Order", "description": "Tool to issue and send a purchase order to the supplier. Use after preparing a PO to dispatch it." }, { "slug": "COUPA_PUT_USERS", "name": "Update User Account", "description": "Tool to update a Coupa user account. Use when you need to modify user information such as name, email, permissions, licenses, or other attributes." }, { "slug": "COUPA_QUERY_LOOKUPS", "name": "Query Lookups", "description": "Tool to query and list lookups with filters. Use when you need to fetch lookup objects that define categories, hierarchies, and standardization lists in Coupa." }, { "slug": "COUPA_REASON_INSIGHTS_INDEX", "name": "List Reason Insights", "description": "Tool to list Reason Insights. Use when you need to retrieve reason insights with optional filters and pagination." }, { "slug": "COUPA_RECEIPT_REQUESTS_CREATE", "name": "Create Receipt Request", "description": "Tool to create a new receipt request. Use when you need to create a receipt request for purchase order lines." }, { "slug": "COUPA_RECEIPT_REQUESTS_INDEX", "name": "List Receipt Requests", "description": "Tool to list receipt requests from Coupa. Use when you need to retrieve receipt request records with optional filtering and pagination." }, { "slug": "COUPA_RECEIPT_REQUESTS_UPDATE", "name": "Update Receipt Request", "description": "Tool to update an existing receipt request via PUT /api/receipt_requests/:id. Use when you need to modify receipt request attributes after confirming the receipt request exists." }, { "slug": "COUPA_RELEASE_PURCHASE_ORDER_FROM_BUYER_HOLD", "name": "Release Purchase Order from Buyer Hold", "description": "Tool to release a purchase order from buyer hold status. Use when you need to transition a PO from buyer_hold to an active state, allowing further processing." }, { "slug": "COUPA_REMIT_TO_ADDRESSES_DESTROY", "name": "Delete Remit-To Address", "description": "Tool to delete a remit-to address from a supplier. Use when you need to permanently remove a remit-to address by supplier ID and address ID." }, { "slug": "COUPA_REMOVE_A_CONTENT_GROUP_ON_CONTRACT", "name": "Remove Content Group from Contract", "description": "Tool to remove a specific content group (business group) from a contract. Use when you need to revoke access control for a particular group from a contract." }, { "slug": "COUPA_REMOVE_ALL_CONTENT_GROUP_ON_CONTRACT", "name": "Remove All Content Groups from Contract", "description": "Tool to remove all content groups (business groups) from a contract. Use when you need to clear all access control groups from a contract, making it inaccessible to users without unrestricted access." }, { "slug": "COUPA_REMOVE_ALL_CONTENT_GROUP_ON_SIM_RECORD", "name": "Remove All Content Groups from SIM Record", "description": "Tool to remove all content groups (business groups) from a Supplier Information Management (SIM) record. Use when you need to clear all access control groups from a SIM record, making it inaccessible to users without unrestricted access." }, { "slug": "COUPA_REMOVE_ALL_CONTENT_GROUP_ON_SIM_SITE_RECORD", "name": "Remove All Content Groups from SIM Site", "description": "Tool to remove all content groups (business groups) from a Supplier Information Management (SIM) site record. Use when you need to clear all access control groups from a SIM site, making it inaccessible to users without unrestricted access." }, { "slug": "COUPA_REMOVE_ALL_CONTENT_GROUPS_ON_SUPPLIER", "name": "Remove All Content Groups on Supplier", "description": "Tool to remove all content groups (business groups) from a supplier. Use when you need to clear all content group associations from a supplier for access control or visibility management." }, { "slug": "COUPA_REMOVE_CONTRACT_APPROVAL", "name": "Remove Contract Approval", "description": "Tool to remove a manually added approver from a contract. Use when you need to remove an approver or watcher that was manually added to a contract's approval chain." }, { "slug": "COUPA_REMOVE_SPECIFIC_CONTENT_GROUP_FROM_SIM_SITE", "name": "Remove Content Group from SIM Site", "description": "Tool to remove a content group (business group) from a Supplier Information Management (SIM) site. Use when you need to revoke a content group assignment from a SIM site for access control or visibility management." }, { "slug": "COUPA_REMOVE_SPECIFIC_CONTENT_GROUP_FROM_SUPPLIER_SITE", "name": "Remove Content Group from Supplier Site", "description": "Tool to remove a content group (business group) from a supplier site. Use when you need to revoke a content group assignment from a supplier site for access control or visibility management." }, { "slug": "COUPA_REMOVE_SPECIFIC_CONTENT_GROUP_ON_SIM_RECORD", "name": "Remove Content Group from SIM Record", "description": "Tool to remove a content group (business group) from a Supplier Information Management (SIM) record. Use when you need to revoke a content group assignment from a SIM record for access control or visibility management." }, { "slug": "COUPA_REMOVE_SPECIFIC_CONTENT_GROUP_ON_SUPPLIER", "name": "Remove Content Group from Supplier", "description": "Tool to remove a content group (business group) from a supplier. Use when you need to revoke a content group assignment from a supplier for access control or visibility management." }, { "slug": "COUPA_REOPEN_FOR_RECEIVING_LINE_FROM_EXTERNAL_PO", "name": "Reopen PO Line for Receiving", "description": "Tool to reopen a purchase order line for receiving. Use when a PO line needs to be reopened to allow additional receiving transactions." }, { "slug": "COUPA_RE_OPEN_SOFTCLOSED_PO", "name": "Re-Open Soft-Closed PO", "description": "Tool to reopen a soft-closed purchase order. Use when an invoice or credit memo submission is needed, or if a PO was closed prematurely or by mistake." }, { "slug": "COUPA_REQUISITION_LINES_INDEX", "name": "List Requisition Lines", "description": "Tool to retrieve requisition line items from Coupa procurement system. Use when you need to query requisition line data with filtering, pagination, and field selection capabilities." }, { "slug": "COUPA_REQUISITIONS_ADD_TO_CART", "name": "Add To Cart", "description": "Tool to add items from a requisition to the shopping cart. Use after constructing the add_to_cart payload." }, { "slug": "COUPA_REQUISITIONS_ATTACHMENTS_CREATE", "name": "Create Requisition Attachment", "description": "Tool to create an attachment on a requisition. Use when attaching files, text, or URLs to requisitions." }, { "slug": "COUPA_REQUISITIONS_CREATE", "name": "Create Requisition", "description": "Tool to create a new requisition. Endpoint: POST /api/requisitions" }, { "slug": "COUPA_REQUISITIONS_CURRENT_CART", "name": "Get Current Cart", "description": "Tool to get the current user's requisition cart. Use when you need to fetch or initialize the current cart for the authenticated user." }, { "slug": "COUPA_REQUISITIONS_DESTROY", "name": "Delete Requisition", "description": "Tool to delete a requisition. Use when you need to permanently remove a requisition by ID." }, { "slug": "COUPA_REQUISITIONS_INDEX", "name": "List Requisitions", "description": "Tool to list requisitions with filters." }, { "slug": "COUPA_REQUISITIONS_MINE", "name": "List My Requisitions", "description": "Tool to list the authenticated user's requisitions. Use when you need to retrieve paginated user requisitions with optional filters." }, { "slug": "COUPA_REQUISITIONS_REMOVE_APPROVAL", "name": "Remove Approver from Requisition", "description": "Tool to remove an approver from a requisition. Use when you need to remove a manually added approver from a requisition. Endpoint: PUT /api/requisitions/:id/remove_approval" }, { "slug": "COUPA_REQUISITIONS_SAVE_FOR_LATER", "name": "Save Requisition for Later", "description": "Tool to save a requisition for later. Use when you need to stash a draft requisition without submitting it." }, { "slug": "COUPA_REQUISITIONS_SHOW", "name": "Get Requisition", "description": "Tool to retrieve a single requisition by its ID. Use when you need detailed requisition data." }, { "slug": "COUPA_REQUISITIONS_SUBMIT_FOR_APPROVAL", "name": "Submit Requisition for Approval", "description": "Tool to submit a requisition for approval. Use when you need to create a requisition and immediately submit it for approval." }, { "slug": "COUPA_REQUISITIONS_UPDATE_AND_SUBMIT_FOR_APPROVAL", "name": "Update and Submit for Approval", "description": "Tool to update a requisition and submit it for approval. Endpoint: PUT /api/requisitions/:id/update_and_submit_for_approval" }, { "slug": "COUPA_RESTART_INVOICE_APPROVAL", "name": "Restart Invoice Approval", "description": "Tool to clear the current approval chain and regenerate a new approval chain for an invoice that has been modified. Use when an invoice has undergone changes requiring the approval workflow to be regenerated. All manually added approvers will be removed." }, { "slug": "COUPA_RETRIEVE_ALL_SIM_RECORDS", "name": "Retrieve All SIM Records", "description": "Tool to retrieve all Supplier Information Management (SIM) records from Coupa. Use when you need to list supplier information records with optional filters for date ranges, export status, supplier ID, name, or status. The SIM API is used to retrieve supplier information collected via Coupa's Supplier Information Management system. Supports pagination with limit and offset parameters." }, { "slug": "COUPA_RETRIEVE_CONTRACT_LEGAL_AGREEMENT", "name": "Download Contract Legal Agreement", "description": "Tool to download the legal agreement file for a contract. Use after confirming the contract ID." }, { "slug": "COUPA_RETRIEVE_INVOICE_CLEARANCE_DOCUMENT", "name": "Retrieve Invoice Clearance Document", "description": "Tool to download the ZATCA compliance clearance document for an invoice. Use when you need the clearance document attached to a specific invoice." }, { "slug": "COUPA_RETRIEVE_INVOICES_IMAGE_SCAN", "name": "Retrieve Invoice Image Scan", "description": "Tool to download the invoice image scan attachment. Use when you need to retrieve the scanned PDF or image file of the original invoice document." }, { "slug": "COUPA_RETRIEVE_SIM_RECORD_BY_ID", "name": "Retrieve SIM Record by ID", "description": "Tool to retrieve a specific Supplier Information Management (SIM) record by ID. Use when you need detailed supplier information collected via SIM. Requires SIM API permissions." }, { "slug": "COUPA_RETURN_TO_SUPPLIER_TRANSACTIONS_DESTROY", "name": "Delete Return to Supplier Transaction", "description": "Tool to delete a return to supplier transaction. Use when you need to permanently remove a return to supplier transaction by ID." }, { "slug": "COUPA_S3_FILE_UPLOAD_OR_GET", "name": "Coupa S3 File Upload or Get", "description": "Coupa S3 File Upload or Get" }, { "slug": "COUPA_SCHEDULE_REQUISITION_ISSUANCE", "name": "Schedule Requisition Issuance", "description": "Tool to set scheduled issuance dates for requisition lines. Use when you need to schedule specific requisition lines for issuance on a particular date, optionally with automatic retry logic if the requisition is not yet approved." }, { "slug": "COUPA_SHIPPING_TERMS_CREATE", "name": "Create Shipping Term", "description": "Tool to create a new shipping term in Coupa. Use when you need to provision a new shipping term with a unique code and activation status." }, { "slug": "COUPA_SHIPPING_TERMS_SHOW", "name": "Get Shipping Term", "description": "Tool to retrieve a specific shipping term by ID. Use when you need detailed information about shipping terms and conditions." }, { "slug": "COUPA_SHIPPING_TERMS_UPDATE", "name": "Update Shipping Term", "description": "Tool to update an existing shipping term. Use when you need to modify shipping term attributes after verifying it exists." }, { "slug": "COUPA_SOFT_CLOSE_FOR_INVOICING_LINE_FROM_EXTERNAL_PO", "name": "Soft Close PO Line for Invoicing", "description": "Tool to soft close a purchase order line for invoicing. Use when a PO line should be marked as complete for invoicing purposes but may need to remain open for other operations." }, { "slug": "COUPA_SOFT_CLOSE_FOR_RECEIVING_LINE_FROM_EXTERNAL_PO", "name": "Soft Close PO Line for Receiving", "description": "Tool to soft close a purchase order line for receiving. Use when a PO line should be marked as complete for receiving purposes but may need to remain open for other operations." }, { "slug": "COUPA_SUBMIT_CONTRACT_FOR_APPROVAL", "name": "Submit Contract for Approval", "description": "Tool to submit a contract for approval. Use when you need to start the approval process for a contract." }, { "slug": "COUPA_SUPPLIER_INFORMATION_SITES_DESTROY", "name": "Delete Supplier Information Site", "description": "Tool to delete a supplier information site. Use when you need to permanently remove a supplier information site by ID. Requires SIM API permissions." }, { "slug": "COUPA_SUPPLIER_INFORMATION_SITES_INDEX", "name": "List Supplier Information Sites", "description": "Tool to list supplier information sites from Coupa SIM (Supplier Information Management). Use when you need to retrieve supplier site data including codes, names, PO methods, contact information, addresses, and status for transmission to ERP or financial systems." }, { "slug": "COUPA_SUPPLIER_ITEMS_DESTROY", "name": "Delete Supplier Item", "description": "Tool to delete a supplier item. Use when you need to permanently remove a supplier item by its unique ID." }, { "slug": "COUPA_SUPPLIER_RISK_AWARE_FEED_DESTROY", "name": "Delete Supplier Risk Aware Feed", "description": "Tool to delete a Supplier Risk Aware Feed. Use when you need to permanently remove a Supplier Risk Aware Feed record by ID." }, { "slug": "COUPA_SUPPLIER_RISK_AWARE_FEED_SHOW", "name": "Get Supplier Risk Aware Feed", "description": "Tool to retrieve a specific Supplier Risk Feed record by ID. Use when you need to get governance, risk, and compliance (GRC) data for a supplier from Risk Aware." }, { "slug": "COUPA_SUPPLIER_SITES_CREATE", "name": "Create Supplier Site", "description": "Tool to create a new supplier site in Coupa. Use when you need to add a new site location for an existing supplier with specific PO transmission methods and contact details." }, { "slug": "COUPA_SUPPLIER_SITES_DESTROY", "name": "Delete Supplier Site", "description": "Tool to delete a supplier site. Use when you need to remove a supplier site by ID. Note: This performs a soft delete by setting the 'active' field to false rather than physically removing the record." }, { "slug": "COUPA_SUPPLIERS_SHOW", "name": "Get Supplier", "description": "Tool to retrieve a single supplier. Use when you need detailed supplier information by ID." }, { "slug": "COUPA_SUPPLIERS_UPDATE", "name": "Update Supplier", "description": "Tool to update a supplier. Use when revising supplier details after verifying the supplier exists; only changed fields need to be included." }, { "slug": "COUPA_SYNC_SUPPLIER_USER_LOCALE", "name": "Sync Supplier User Locale", "description": "Tool to sync supplier user locale settings. Use when you need to synchronize locale preferences for a specific supplier user." }, { "slug": "COUPA_TASKS_DESTROY", "name": "Delete Task", "description": "Tool to delete a task. Use when you need to permanently remove a task by ID." }, { "slug": "COUPA_TASKS_SHOW", "name": "Get Task by ID", "description": "Tool to retrieve a single task by ID. Use when you need detailed task information after knowing the task ID." }, { "slug": "COUPA_TASKS_UPDATE", "name": "Update Task", "description": "Tool to update an existing Task in Coupa via PUT /api/tasks/:id. Use when you need to modify task attributes such as title, description, status, percentage, owner, or linked objects." }, { "slug": "COUPA_TAX_REGISTRATIONS_INDEX", "name": "Query Tax Registrations", "description": "Tool to query tax registrations from Coupa. Use when you need to retrieve tax identification numbers and fiscal representative details for entities." }, { "slug": "COUPA_TAX_REGISTRATIONS_SHOW", "name": "Get Tax Registration", "description": "Tool to retrieve a single tax registration record by ID. Use when you need detailed tax registration information including country, registration number, and fiscal representative." }, { "slug": "COUPA_UNSCHEDULE_REQUISITION_ISSUANCE", "name": "Unschedule Requisition Issuance", "description": "Tool to remove scheduled issuance dates from requisition lines. Use when you need to unschedule requisition lines that were previously configured for automatic purchase order issuance." }, { "slug": "COUPA_UO_MS_INDEX", "name": "List Units of Measure", "description": "Tool to list units of measure. Use when retrieving or filtering UOM catalog for inventory or purchasing flows." }, { "slug": "COUPA_UPDATE_BUDGET_LINE", "name": "Update Budget Line", "description": "Tool to update an existing budget line in Coupa. Use when modifying budget line attributes such as amount, description, remaining balance, or account segments after confirming the budget line ID exists." }, { "slug": "COUPA_UPDATE_BUDGET_LINES_ADJUST", "name": "Update Budget Lines Adjust", "description": "Tool to adjust a budget line in Coupa. Use when you need to perform an adjustment operation on an existing budget line. This endpoint does not require a request body and returns an empty response on success." }, { "slug": "COUPA_UPDATE_BUSINESS_ENTITY", "name": "Update Business Entity", "description": "Tool to update a business entity in Coupa. Use when you need to modify business entity attributes after verifying the entity exists." }, { "slug": "COUPA_UPDATE_COMMODITIES", "name": "Update Commodities", "description": "Tool to update an existing Coupa commodity. Use when modifying commodity attributes after confirming the commodity ID exists." }, { "slug": "COUPA_UPDATE_CONTRACT_LEGAL_AGREEMENT", "name": "Update Contract Legal Agreement", "description": "Tool to update a contract's legal agreement file. Use when adding or replacing the legal agreement PDF on a contract." }, { "slug": "COUPA_UPDATE_EXCHANGE_RATE", "name": "Update Exchange Rate", "description": "Tool to update an exchange rate between two currencies in Coupa. Use when you need to modify exchange rate values or effective dates. Exchange rates are one-way only (e.g., USD→EUR and EUR→USD require separate records). The currencies must already exist in the system before updating the exchange rate." }, { "slug": "COUPA_UPDATE_EXISTING_ADDRESS", "name": "Update Existing Address", "description": "Tool to update an existing address in Coupa. Use when revising address details after verifying the address exists and is active." }, { "slug": "COUPA_UPDATE_EXISTING_COMMODITY", "name": "Update Existing Commodity", "description": "Tool to update an existing commodity in Coupa. Use when you need to modify commodity attributes like name, category, or active status." }, { "slug": "COUPA_UPDATE_EXISTING_LOOKUP_VALUE", "name": "Update Existing Lookup Value", "description": "Tool to update an existing lookup value in Coupa. Use when you need to modify lookup value attributes like name, description, or active status." }, { "slug": "COUPA_UPDATE_EXISTING_PAYMENT_TERM", "name": "Update Existing Payment Term", "description": "Tool to update an existing payment term in Coupa. Use when you need to modify payment term attributes after confirming the payment term ID." }, { "slug": "COUPA_UPDATE_EXISTING_SUPPLIER_ITEM", "name": "Update Existing Supplier Item", "description": "Tool to update an existing supplier item in Coupa. Use when modifying supplier item details such as price, availability, or other attributes after verifying the supplier item exists." }, { "slug": "COUPA_UPDATE_EXISTING_TASK", "name": "Update Existing Task", "description": "Tool to update an existing task within a specific project in Coupa via PUT /api/projects/:project_id/tasks/:task_id. Use when you need to modify task attributes for a project-linked task." }, { "slug": "COUPA_UPDATE_EXISTING_USER_ADDRESS", "name": "Update User Address", "description": "Tool to update an existing user address in Coupa. Use when you need to modify address details for a specific user's address." }, { "slug": "COUPA_UPDATE_EXTERNAL_PO_WITH_LINE_LEVEL", "name": "Update External PO with Line Level", "description": "Tool to update an external purchase order with line level confirmation and tax lines. Use when updating PO line details, adding tax information, or associating order confirmation IDs." }, { "slug": "COUPA_UPDATE_IMAGE_SCAN_ON_AN_INVOICE", "name": "Update Image Scan on Invoice", "description": "Tool to update image scan on an invoice via PUT /api/invoices/:id/image_scan. Use when updating an invoice's scanned document by providing either a file or URL reference." }, { "slug": "COUPA_UPDATE_INVOICES", "name": "Update Invoice", "description": "Tool to update an existing invoice in Coupa. Use when you need to modify invoice fields such as notes, payment information, or status." }, { "slug": "COUPA_UPDATE_ITEMS_SUPPLIER_ITEMS", "name": "Update Items Supplier Items", "description": "Tool to update a supplier item for a specific item in Coupa. Use when you need to modify supplier item details like price, lead time, or preferred status." }, { "slug": "COUPA_UPDATE_PAYABLES_INVOICES_TRACK_IN_COUPA", "name": "Update Payables Invoices Track In Coupa", "description": "Tool to start tracking an invoice payable in Coupa. Use when you need to change an externally tracked invoice to be tracked within Coupa's payment system. The invoice status will typically change to 'ready_to_pay'." }, { "slug": "COUPA_UPDATE_PAY_ORDER_STATUS_TO_READY_TO_PAY", "name": "Update Pay Order Status to Ready to Pay", "description": "Tool to update a payable order status to ready to pay. Use when you need to transition a payable order to a 'ready to pay' status for payment processing." }, { "slug": "COUPA_UPDATE_PROJECT_MEMBER_AS_OWNER", "name": "Update Project Member as Owner", "description": "Tool to update a project member as owner in Coupa. Use when you need to change owner/administrator or participant status for a project membership." }, { "slug": "COUPA_UPDATE_PROJECTS_TASKS", "name": "Update Projects Tasks", "description": "Tool to update an existing task within a specific project in Coupa via PATCH /api/projects/:project_id/tasks/:id. Use when you need to partially modify task attributes for a project-linked task." }, { "slug": "COUPA_UPDATE_PURCHASE_ORDER_CHANGE_REMOTE_APPROVER", "name": "Update PO Change (Remote Approver)", "description": "Tool to update a purchase order change with remote approver information. Use when you need to modify a pending PO change request by providing the current approver's login." }, { "slug": "COUPA_UPDATE_QUOTE_REQUESTS_TASKS", "name": "Update Quote Request Task", "description": "Tool to update a task on a quote request. Use when you need to modify task attributes like title, status, percentage, or due dates for a specific quote request task." }, { "slug": "COUPA_UPDATE_REQUISITION", "name": "Update Requisition", "description": "Tool to update an existing requisition in Coupa. Use when you need to modify requisition attributes such as justification, title, need-by date, or status." }, { "slug": "COUPA_UPDATE_STATUS_OF_A_PROJECT", "name": "Update Status of a Project", "description": "Tool to update the status of a project by transitioning it to a specific state. Use when you need to change a project's status to draft, planned, in_progress, complete, or canceled. Returns HTTP 204 for successful transitions and HTTP 304 for invalid transitions." }, { "slug": "COUPA_UPDATE_SUPPLIER_INFORMATION_SITE", "name": "Update Supplier Information Site", "description": "Tool to update an existing supplier information site in Coupa. Use when modifying site attributes such as name, PO methods, cXML configuration, or associated addresses and contacts." }, { "slug": "COUPA_UPDATE_SUPPLIER_INFORMATION_SUPPLIER_INFORMATION_SITE", "name": "Update Supplier Information Site", "description": "Tool to update supplier information sites within a supplier information record in Coupa. Use when you need to modify details of a specific supplier site such as name, code, contact info, or operational status." }, { "slug": "COUPA_UPDATE_SUPPLIER_REMIT_TO_ADDRESS", "name": "Update Supplier Remit-To Address", "description": "Tool to update an existing remit-to address for a supplier. Use when you need to modify address details or deactivate a remit-to address for payment routing in Coupa." }, { "slug": "COUPA_UPDATE_SUPPLIERS_SUPPLIER_SITES", "name": "Update Supplier Site", "description": "Tool to update a supplier site's details such as name, active status, PO methods, and contact information. Use when you need to modify an existing supplier site's configuration." }, { "slug": "COUPA_UPDATE_USER_GROUP", "name": "Update User Group", "description": "Tool to update a Coupa user group. Use when you need to modify group attributes like name, description, approval permissions, or membership settings." }, { "slug": "COUPA_UPDATE_USER_GROUP_MEMBERSHIPS", "name": "Update User Group Memberships", "description": "Tool to update user group memberships in Coupa. Use when modifying membership attributes like owner or participant status after confirming the membership ID exists." }, { "slug": "COUPA_UPDATE_USER_GROUPS2", "name": "Update User Group (PUT)", "description": "Tool to update an existing user group in Coupa using PUT method. Use when you need to fully update a user group's attributes including name, description, owner, members, and approval permissions." }, { "slug": "COUPA_UPDATE_USER_GROUPS_TASKS", "name": "Update User Group Task", "description": "Tool to update an existing task within a user group. Use when you need to modify task attributes like title, status, percentage, or due date for a task assigned to a specific user group." }, { "slug": "COUPA_UPLOAD_CONTRACT_LEGAL_AGREEMENT", "name": "Upload Contract Legal Agreement", "description": "Tool to upload a legal agreement file for a contract. Use when adding or updating the contract's legal agreement document." }, { "slug": "COUPA_USER_GROUPS_INDEX", "name": "List User Groups", "description": "Tool to list user groups (user memberships). Use when you need to retrieve user group information including members, approval permissions, and group metadata." }, { "slug": "COUPA_USERS_CREATE", "name": "Create User", "description": "Tool to create a Coupa user. Use when you need to programmatically add a new user to your Coupa instance." }, { "slug": "COUPA_USERS_INDEX", "name": "List Users", "description": "Tool to list users. Use when you need to retrieve multiple user records with optional pagination and filtering." }, { "slug": "COUPA_USERS_SHOW", "name": "Get User", "description": "Tool to retrieve a single user by ID. Use when you need detailed user information after knowing the user ID." }, { "slug": "COUPA_VOID_INVOICE", "name": "Void Invoice", "description": "Tool to void an invoice. Use when an approved or pending invoice needs to be voided. Example: Void invoice with ID 12345." }, { "slug": "COUPA_WITHDRAW_CONTRACT_SIGNATURES", "name": "Withdraw Contract Signatures", "description": "Tool to withdraw signatures from a contract in Coupa Contract Center (CCC). Use when you need to move a contract to the corresponding status after CCC signature withdrawal. The contract must be in 'pending_signatures' status for this operation to succeed." }, { "slug": "COUPA_WITHDRAW_INVOICE_DISPUTE", "name": "Withdraw Invoice Dispute", "description": "Tool to withdraw a dispute on an invoice. Use when a disputed invoice needs to be returned to the approval process due to supplier inaction or a mistake on the buyer side." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "coupa_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email,login,offline_access,core.common.read,core.object_translations.read,core.user.read,core.user_group.read,core.integration.read,core.integration.write,core.approval.read,core.approval.write,core.requisition.read,core.requisition.write,core.purchase_order.read,core.purchase_order.write,core.order_header_confirmations.read,core.order_header_confirmations.write,core.item.read,core.catalog.read,core.uom.read,core.supplier.read,core.supplier_sites.read,core.invoice.read,core.invoice.write,core.invoice.create,core.payables.invoice.read,core.payables.invoice.write,core.pay.payments.read,core.expense.read,core.expense.write,core.business_entity.read,core.legal_entity.read,core.project.read,core.notifications_summary.read" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Coupa instance base URL. e.g. https://your-instance.coupacloud.com", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "craftmypdf", "name": "Craftmypdf", "logo": "https://logos.composio.dev/api/craftmypdf", "description": "CraftMyPDF is a web-based platform that enables users to design and generate customizable PDF documents using pre-designed templates and dynamic data.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CRAFTMYPDF_ADD_TEXT_TO_PDF", "name": "Add Text to PDF", "description": "Tool to add text annotations to a PDF including page numbers, watermarks, and custom text at specified positions. Supports dynamic variables like {{pageNumber}} and {{totalPages}} for automatic page numbering. Use when you need to add watermarks, headers, footers, or any text overlay to existing PDF documents." }, { "slug": "CRAFTMYPDF_ADD_WATERMARK", "name": "Add Watermark to PDF", "description": "Tool to add a text watermark to a PDF with customizable font, size, color, opacity, and rotation. Use when you need to overlay watermark text (e.g., CONFIDENTIAL, DRAFT) on PDF documents. For more advanced text placement and formatting options, consider using the add-text-to-pdf endpoint instead." }, { "slug": "CRAFTMYPDF_CREATE_EDITOR_SESSION", "name": "Create Editor Session", "description": "Tool to create an embeddable editor session URL for a template. Use when you need to embed the PDF editor for a specific template." }, { "slug": "CRAFTMYPDF_CREATE_PDF_ASYNC2", "name": "Create PDF Asynchronously (Extended)", "description": "Tool to create a PDF file asynchronously with JSON data and template. Returns immediately with a transaction reference and makes an HTTP/HTTPS GET callback to webhook_url when the PDF is generated. Use when you need non-blocking PDF creation with advanced options like image optimization, resizing, and custom storage configuration." }, { "slug": "CRAFTMYPDF_CREATE_PDF_PARALLEL", "name": "Create PDFs in Parallel", "description": "Tool to create multiple PDF files in parallel from templates with JSON data. Processes multiple PDF generation requests concurrently for improved performance. Optionally merges all generated PDFs into a single file when merge parameter is enabled. Use when you need to generate multiple PDFs at once from different templates or data." }, { "slug": "CRAFTMYPDF_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Tool to retrieve account information including subscription and usage details. Use when you need to check quota limits, template usage, or account creation date." }, { "slug": "CRAFTMYPDF_GET_PDF_INFO", "name": "Get PDF Information", "description": "Tool to retrieve information about a PDF file including metadata, page count, and other properties. Use when you need to analyze PDF file structure or extract metadata without downloading the entire file." }, { "slug": "CRAFTMYPDF_LIST_TEMPLATES", "name": "List PDF Templates", "description": "Tool to retrieve a paginated list of PDF templates. Use when you need to browse available templates before generating a PDF." }, { "slug": "CRAFTMYPDF_LIST_TRANSACTIONS", "name": "List API Transactions", "description": "Tool to retrieve a paginated list of API transactions. Use when you need to view transaction history with pagination support." }, { "slug": "CRAFTMYPDF_MERGE_PDFS", "name": "Merge PDF Files", "description": "Tool to merge multiple PDF files from URLs into a single PDF document. Use when you need to combine multiple PDF files into one consolidated document. The API fetches PDFs from the provided URLs and merges them in the order specified." }, { "slug": "CRAFTMYPDF_QUERY_TEMPLATE_USAGE", "name": "Query Template Usage Statistics", "description": "Tool to retrieve usage statistics for specified templates within a date range. Use when you need to track PDF generation counts and credit consumption for specific templates." }, { "slug": "CRAFTMYPDF_UPDATE_PDF_FIELDS", "name": "Update PDF Fields", "description": "Tool to update fillable fields in a PDF document such as text fields, checkboxes, and dropdowns. Use when you need to programmatically fill out PDF forms by updating field values. The PDF must contain fillable form fields with identifiable names that match the field IDs you provide." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "craftmypdf_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CraftMyPDF API Key", "type": "string", "description": "The API key for authenticating requests to the CraftMyPDF API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "crowdin", "name": "Crowdin", "logo": "https://logos.composio.dev/api/crowdin", "description": "Crowdin is a localization management platform that streamlines the translation process, offering tools for collaboration, content centralization, and workflow automation.", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 231, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CROWDIN_ADD_BRANCH", "name": "Add Branch", "description": "Tool to create a new branch in a Crowdin project. Use when you need to isolate translations for a new feature or release." }, { "slug": "CROWDIN_ADD_DIRECTORY", "name": "Add Directory", "description": "Tool to create a new directory in a Crowdin project. Use when you need to organize files into directories before uploading." }, { "slug": "CROWDIN_ADD_FILE", "name": "Add File", "description": "Tool to add a new file to a Crowdin project. Use after uploading the file to storage to place it under the specified project, branch, or directory." }, { "slug": "CROWDIN_ADD_GLOSSARY_TERM", "name": "Add Glossary Term", "description": "Tool to add a new term to a Crowdin glossary. Use when you need to create terminology entries for consistent translations across projects." }, { "slug": "CROWDIN_ADD_LABEL", "name": "Add Label", "description": "Tool to create a new label in a Crowdin project. Use when you need to tag resources with a custom identifier, such as 'Sprint-5'." }, { "slug": "CROWDIN_ADD_PROJECT", "name": "Create Crowdin Project", "description": "Tool to create a new project in Crowdin. Use before uploading source files to initialize translation workflows." }, { "slug": "CROWDIN_ADD_PROJECT_FILE_FORMAT_SETTINGS", "name": "Add Project File Format Settings", "description": "Tool to add file format settings to a Crowdin project. Use when configuring how specific file formats should be processed during import/export. Allows customization of segmentation, export paths, and format-specific options." }, { "slug": "CROWDIN_ADD_WEBHOOK", "name": "Add Webhook", "description": "Tool to create a new webhook in a Crowdin project. Use after confirming the project ID and desired event triggers." }, { "slug": "CROWDIN_ASSIGN_LABEL_TO_STRINGS", "name": "Assign Label to Strings", "description": "Assign a label to one or more source strings in a Crowdin project. Labels help organize and categorize strings for easier filtering and management. The label and strings must exist in the same project. Returns the updated string details with their assigned label IDs." }, { "slug": "CROWDIN_BUILD_PROJECT_DIRECTORY_TRANSLATION", "name": "Build Project Directory Translation", "description": "Tool to build translations for a specific directory in a Crowdin project. Use when you need to export translations for a directory. Returns build details after successfully initiating the build process." }, { "slug": "CROWDIN_BUILD_PROJECT_FILE_TRANSLATION", "name": "Build Project File Translation", "description": "Tool to build a project file translation in Crowdin. Use when you need to generate a translated version of a specific file for a target language. Returns a download URL for the translated file. May return 304 (Not Modified) if the file hasn't changed and If-None-Match header is provided." }, { "slug": "CROWDIN_BUILD_PROJECT_TRANSLATION", "name": "Build Project Translation", "description": "Tool to build project translation in Crowdin, generating downloadable translation files. Use to create translation builds before downloading. This is an asynchronous operation - use CROWDIN_CHECK_PROJECT_BUILD_STATUS to monitor progress." }, { "slug": "CROWDIN_CANCEL_PROJECT_TRANSLATION_BUILD", "name": "Cancel Project Translation Build", "description": "Tool to cancel a project translation build in Crowdin. Use when you need to stop an ongoing or queued translation build." }, { "slug": "CROWDIN_CHECK_BUNDLE_EXPORT_STATUS", "name": "Check Bundle Export Status", "description": "Tool to check the status of a bundle export operation in Crowdin. Use when you need to monitor the progress of a bundle export initiated earlier. Returns the current export status, completion percentage, and download URL when the export finishes successfully." }, { "slug": "CROWDIN_CHECK_GLOSSARY_EXPORT_STATUS", "name": "Check Glossary Export Status", "description": "Tool to check the status of a glossary export operation. Use after initiating a glossary export to monitor progress and retrieve download URL." }, { "slug": "CROWDIN_CHECK_GLOSSARY_IMPORT_STATUS", "name": "Check Glossary Import Status", "description": "Tool to check the status of a glossary import operation. Use after initiating a glossary import to monitor progress and verify completion." }, { "slug": "CROWDIN_CHECK_GRAPHQL_RATE_LIMIT", "name": "Check GraphQL Rate Limit", "description": "Tool to check GraphQL API rate limit status for Crowdin. Use to monitor remaining API quota and avoid rate limit errors. Returns maximum allowed points per hour, current call cost, remaining points in the window, and reset timestamp. The Crowdin GraphQL API enforces a 5000 points per hour rate limit using a normalized point scale." }, { "slug": "CROWDIN_CHECK_PROJECT_REPORT", "name": "Check Project Report Status", "description": "Tool to check report generation status in a Crowdin project. Use when monitoring asynchronous report generation operations. Poll this endpoint until status is 'finished' or 'failed'." }, { "slug": "CROWDIN_CHECK_PROJECTS_TRANSLATIONS_BUILDS", "name": "Check Project Build Status", "description": "Tool to check the status of a project translation build in Crowdin. Use when you need to monitor the progress of a translation build operation. Returns build details including status (created, inProgress, finished, failed, canceled), progress percentage, and timestamps." }, { "slug": "CROWDIN_CHECK_TM_EXPORT_STATUS", "name": "Check TM Export Status", "description": "Tool to check Translation Memory export status in Crowdin. Use when you need to monitor the progress of an asynchronous TM export operation." }, { "slug": "CROWDIN_CHECK_TM_IMPORT_STATUS", "name": "Check TM Import Status", "description": "Tool to check Translation Memory import status in Crowdin. Use when you need to monitor the progress of an asynchronous TM import operation." }, { "slug": "CROWDIN_CHECK_USERS_AI_REPORTS", "name": "Check AI Report Status", "description": "Tool to check the generation status of an AI report for a Crowdin user. Use this to poll for completion status after generating an AI report. Returns current status, progress percentage, and timestamps." }, { "slug": "CROWDIN_CLONE_USERS_AI_PROMPTS_CLONES", "name": "Clone AI Prompt", "description": "Tool to clone an existing AI prompt in Crowdin. Use when you need to duplicate an AI prompt with a new name or configuration." }, { "slug": "CROWDIN_CREATE_GLOSSARY", "name": "Create Glossary", "description": "Tool to create a new glossary in Crowdin. Use when you need to establish terminology standards for translation projects." }, { "slug": "CROWDIN_CREATE_GLOSSARY_IMPORT", "name": "Import Glossary", "description": "Tool to import glossary terms from a file into a Crowdin glossary. Use when you need to bulk import glossary terms from TBX, CSV, or XLS/XLSX files. This is an asynchronous operation - use Check Glossary Import Status action to monitor completion." }, { "slug": "CROWDIN_CREATE_LANGUAGE", "name": "Create Custom Language", "description": "Tool to create a custom language in Crowdin. Use when standard languages don't meet needs and you require a custom language with specific codes and plural rules." }, { "slug": "CROWDIN_CREATE_MTS_TRANSLATIONS", "name": "Create MT Translations", "description": "Tool to translate strings using Crowdin's Machine Translation engine. Use when you need to quickly translate text strings programmatically." }, { "slug": "CROWDIN_CREATE_PROJECT_COMMENT", "name": "Create Project Comment", "description": "Tool to add a comment or issue to a string or file (asset) in a Crowdin project. Use when you need to provide feedback, ask questions, or report issues on specific translation strings or asset files. Either stringId or fileId must be provided." }, { "slug": "CROWDIN_CREATE_PROJECT_MEMBER", "name": "Add Project Member", "description": "Tool to add members to a Crowdin project. Use when you need to grant project access to users by their IDs, usernames, or email addresses. Supports assigning roles and permissions." }, { "slug": "CROWDIN_CREATE_PROJECTS_BUNDLES", "name": "Add Bundle", "description": "Tool to add a new bundle to a Crowdin project. Bundles allow exporting sets of strings or files in specified formats regardless of original file format." }, { "slug": "CROWDIN_CREATE_PROJECTS_DISTRIBUTIONS", "name": "Add Distribution", "description": "Tool to create a new distribution in a Crowdin project. Use to package translated files or bundles for distribution." }, { "slug": "CROWDIN_CREATE_PROJECTS_REPORTS_SETTINGS_TEMPLATES", "name": "Create Report Settings Template", "description": "Tool to create a report settings template in Crowdin. Use when setting up cost estimation and translation pricing templates for projects." }, { "slug": "CROWDIN_CREATE_PROJECTS_STRINGS_EXPORTER_SETTINGS", "name": "Create Project Strings Exporter Settings", "description": "Tool to add project strings exporter settings in Crowdin. Use when configuring how strings should be exported from a project in specific formats (Android XML, macOS Strings, or XLIFF)." }, { "slug": "CROWDIN_CREATE_PROJECT_TASK", "name": "Create Project Task", "description": "Tool to create a new task in a Crowdin project. Use when you need to assign translation or proofreading work to team members." }, { "slug": "CROWDIN_CREATE_STRING", "name": "Create String", "description": "Tool to add a new source string to a Crowdin project. Use when you need to create translatable content programmatically or add strings that are not part of uploaded files." }, { "slug": "CROWDIN_CREATE_TM_IMPORT", "name": "Create TM Import", "description": "Tool to import a Translation Memory file into Crowdin. Use when you need to import TM data from TMX, CSV, or XLS/XLSX files. This is an asynchronous operation - use Check TM Import Status action to monitor progress." }, { "slug": "CROWDIN_CREATE_TMS", "name": "Add Translation Memory", "description": "Tool to create a new Translation Memory (TM) in Crowdin. Use when you need to establish a centralized repository of translations for reuse across projects." }, { "slug": "CROWDIN_CREATE_TMS_SEGMENTS", "name": "Create TM Segments", "description": "Tool to create translation memory segments in Crowdin. Use when you need to add new translation pairs to a translation memory for future reuse." }, { "slug": "CROWDIN_CREATE_TMS_SEGMENTS_RECORDS", "name": "Create TM Segment Records", "description": "Tool to create translation memory segment records in Crowdin. Use when you need to add additional language translations to an existing TM segment." }, { "slug": "CROWDIN_CREATE_TRANSLATION_ALIGNMENT", "name": "Create Translation Alignment", "description": "Tool to create translation alignment for a project. Use when aligning translations between source and target languages." }, { "slug": "CROWDIN_CREATE_USERS_AI_PROMPTS", "name": "Create AI Prompt", "description": "Tool to create a new AI prompt in Crowdin. Use when you need to configure AI-assisted translation, translation assistance, or quality assurance checks with specific context and settings." }, { "slug": "CROWDIN_CREATE_USERS_AI_SETTINGS_SNIPPETS", "name": "Add AI Snippet", "description": "Tool to create an AI snippet in Crowdin. Use when you need to add a custom placeholder for AI prompts that will be used across translations." }, { "slug": "CROWDIN_CREATE_USERS_REPORTS_SETTINGS_TEMPLATES", "name": "Create User Report Settings Template", "description": "Tool to create a user report settings template in Crowdin. Use when setting up cost estimation and translation pricing templates for specific users." }, { "slug": "CROWDIN_DELETE_BRANCH", "name": "Delete Branch", "description": "Tool to delete a specific branch from a Crowdin project. Use when you need to remove an obsolete branch after it's fully merged." }, { "slug": "CROWDIN_DELETE_DIRECTORY", "name": "Delete Directory", "description": "Tool to delete a specific directory from a Crowdin project. Use when you need to remove an obsolete directory and its contents." }, { "slug": "CROWDIN_DELETE_FILE", "name": "Delete File", "description": "Tool to delete a specific file from a Crowdin project. Use when you need to remove an obsolete or incorrect file from the project." }, { "slug": "CROWDIN_DELETE_GLOSSARY", "name": "Delete Glossary", "description": "Tool to delete a glossary from Crowdin. Use when you need to permanently remove a glossary that is no longer needed." }, { "slug": "CROWDIN_DELETE_GLOSSARY_CONCEPT", "name": "Delete Glossary Concept", "description": "Tool to delete a concept from a Crowdin glossary. Use when you need to remove obsolete or incorrect concepts from your glossary." }, { "slug": "CROWDIN_DELETE_GLOSSARY_TERM", "name": "Delete Glossary Term", "description": "Tool to delete a term from a Crowdin glossary. Use when you need to remove obsolete or incorrect terminology entries. This operation is permanent and cannot be undone." }, { "slug": "CROWDIN_DELETE_GLOSSARY_TERMS", "name": "Delete Glossary Terms", "description": "Tool to clear terms from a Crowdin glossary. Use when you need to remove all terms or specific terms based on language, concept, or term ID. Without optional filters, this action deletes all terms in the glossary." }, { "slug": "CROWDIN_DELETE_LABEL", "name": "Delete Label", "description": "Tool to delete the label identified by the specified label ID in a project. Use when you need to remove outdated or incorrect labels. Ensure no resources reference the label before deletion." }, { "slug": "CROWDIN_DELETE_LANGUAGE", "name": "Delete Custom Language", "description": "Tool to delete a custom language from Crowdin. Use when you need to remove a custom language that is no longer needed. Note: Only custom languages can be deleted, not standard built-in languages." }, { "slug": "CROWDIN_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a Crowdin project by its ID. Use when you need to permanently remove a project after confirming no further usage. Ensure all resources are no longer needed before deletion." }, { "slug": "CROWDIN_DELETE_PROJECT_COMMENT_ATTACHMENT", "name": "Delete Project Comment Attachment", "description": "Tool to delete an attachment from a string or asset comment in a Crowdin project. Use when you need to remove a file attachment from a comment. This operation is permanent." }, { "slug": "CROWDIN_DELETE_PROJECT_MEMBER", "name": "Delete Project Member", "description": "Tool to delete a member from a Crowdin project. Use when you need to remove a user's access to a specific project." }, { "slug": "CROWDIN_DELETE_PROJECTS_BUNDLES", "name": "Delete Bundle", "description": "Tool to delete a bundle from a Crowdin project. Use when you need to remove a bundle that is no longer needed." }, { "slug": "CROWDIN_DELETE_PROJECTS_DISTRIBUTIONS", "name": "Delete Distribution", "description": "Tool to delete a distribution from a Crowdin project. Use when you need to permanently remove a distribution." }, { "slug": "CROWDIN_DELETE_PROJECTS_FILE_FORMAT_SETTINGS", "name": "Delete Project File Format Settings", "description": "Tool to delete file format settings from a Crowdin project. Use when removing obsolete or incorrect file format configurations. This action cannot be undone." }, { "slug": "CROWDIN_DELETE_PROJECTS_REPORTS_SETTINGS_TEMPLATES", "name": "Delete Report Settings Template", "description": "Tool to delete a report settings template from a Crowdin project. Use when you need to permanently remove a report settings template that is no longer needed." }, { "slug": "CROWDIN_DELETE_PROJECTS_SCREENSHOTS", "name": "Delete Screenshot", "description": "Tool to delete a screenshot from a Crowdin project. Use when you need to remove obsolete or incorrect screenshots." }, { "slug": "CROWDIN_DELETE_PROJECTS_STRINGS_EXPORTER_SETTINGS", "name": "Delete Project Strings Exporter Settings", "description": "Tool to delete project strings exporter settings in Crowdin. Use when you need to remove strings exporter settings that are no longer needed." }, { "slug": "CROWDIN_DELETE_PROJECTS_TASKS_SETTINGS_TEMPLATES", "name": "Delete Task Settings Template", "description": "Tool to delete a task settings template from a Crowdin project. Use when you need to permanently remove a task settings template that is no longer needed." }, { "slug": "CROWDIN_DELETE_PROJECT_TASK", "name": "Delete Project Task", "description": "Tool to delete a specific task from a Crowdin project. Use when you need to remove an obsolete or completed task after it's no longer needed." }, { "slug": "CROWDIN_DELETE_PROJECT_TASK_COMMENT", "name": "Delete Project Task Comment", "description": "Tool to delete a specific comment from a project task. Use when you need to remove outdated or incorrect comments from tasks." }, { "slug": "CROWDIN_DELETE_STORAGE", "name": "Delete Storage", "description": "Tool to delete a storage from Crowdin. Use when you need to remove a storage that is no longer needed or was uploaded incorrectly." }, { "slug": "CROWDIN_DELETE_STRING", "name": "Delete String", "description": "Tool to delete a specific source string from a Crowdin project. Use when you need to remove obsolete or incorrect strings that are no longer needed." }, { "slug": "CROWDIN_DELETE_TMS", "name": "Delete Translation Memory", "description": "Tool to delete a Translation Memory (TM) from Crowdin. Use when you need to permanently remove a TM that is no longer needed." }, { "slug": "CROWDIN_DELETE_TM_SEGMENT", "name": "Delete TM Segment", "description": "Tool to delete a specific translation memory segment from Crowdin. Use when you need to remove an obsolete or incorrect translation segment from a TM." }, { "slug": "CROWDIN_DELETE_TMS_SEGMENTS", "name": "Clear TM Segments", "description": "Tool to clear all segments from a Translation Memory in Crowdin. Use when you need to remove all translation segments from a TM while keeping the TM itself." }, { "slug": "CROWDIN_DELETE_TMS_SEGMENTS_RECORDS", "name": "Delete TM Segment Record", "description": "Tool to delete a translation memory segment record in Crowdin. Use when you need to remove an obsolete or incorrect translation from a TM segment." }, { "slug": "CROWDIN_DELETE_USERS_AI_PROMPT", "name": "Delete User AI Prompt", "description": "Tool to delete an AI prompt for a specific user. Use when you need to remove an obsolete or unwanted AI prompt. This action cannot be undone." }, { "slug": "CROWDIN_DELETE_USERS_AI_PROVIDERS", "name": "Delete User AI Provider", "description": "Tool to delete an AI provider for a specific user. Use when you need to remove an AI provider association from a user account. Returns 204 status code on successful deletion." }, { "slug": "CROWDIN_DELETE_USERS_AI_SETTINGS_SNIPPETS", "name": "Delete AI Snippet", "description": "Tool to delete an AI snippet from Crowdin. Use when you need to remove obsolete or no longer needed AI snippets from a user's settings." }, { "slug": "CROWDIN_DELETE_USERS_REPORTS_SETTINGS_TEMPLATES", "name": "Delete User Report Settings Template", "description": "Tool to delete a user report settings template from Crowdin. Use when you need to permanently remove a report settings template that is no longer needed for a specific user." }, { "slug": "CROWDIN_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently deletes a webhook from a Crowdin project. This action cannot be undone. Use when you need to remove obsolete, misconfigured, or no longer needed webhooks. Requires both the project ID and webhook ID which can be obtained from list webhooks." }, { "slug": "CROWDIN_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download a file from a Crowdin project. Use when you need to retrieve the download URL for a specific file. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_DOWNLOAD_GLOSSARIES_EXPORTS_DOWNLOAD", "name": "Download Glossary Export", "description": "Tool to download an exported glossary from Crowdin. Use when you have a completed glossary export and need to obtain the download URL. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_DOWNLOAD_PROJECTS_BUNDLES_EXPORTS_DOWNLOAD", "name": "Download Bundle Export", "description": "Tool to download an exported bundle from Crowdin. Use when you have a completed bundle export and need to obtain the download URL. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_DOWNLOAD_PROJECTS_REPORTS_DOWNLOAD", "name": "Download Project Report", "description": "Tool to download a generated project report from Crowdin. Use after checking report status and confirming it is 'finished'. Returns a temporary download URL for the report file." }, { "slug": "CROWDIN_DOWNLOAD_PROJECTS_TRANSLATIONS_BUILDS_DOWNLOAD", "name": "Download Project Translation Build", "description": "Tool to download a built project translation from Crowdin. Use when you have a completed translation build and need to obtain the download URL. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_DOWNLOAD_TMS_EXPORTS_DOWNLOAD", "name": "Download TM Export", "description": "Tool to download an exported Translation Memory from Crowdin. Use when you have a completed TM export and need to obtain the download URL. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_DOWNLOAD_USERS_AI_REPORTS_DOWNLOAD", "name": "Download AI Report", "description": "Tool to download an AI report from Crowdin. Use when you have a completed AI report and need to obtain the download URL. Returns a temporary URL that expires after the specified time." }, { "slug": "CROWDIN_EDIT_FILE", "name": "Edit File", "description": "Tool to update file details in a project. Use after confirming valid project and file IDs." }, { "slug": "CROWDIN_EDIT_LABEL", "name": "Edit Label", "description": "Tool to edit a label's title in a Crowdin project. Use when you need to rename an existing label. Labels are used to organize and categorize strings in your project. Example: Rename label 42 to 'Release-1.1'." }, { "slug": "CROWDIN_EDIT_PROJECT", "name": "Edit Project", "description": "Tool to update project details using JSON-Patch. Use after confirming project settings to modify metadata like name, description, visibility, or languages." }, { "slug": "CROWDIN_EDIT_STRING", "name": "Edit String", "description": "Edit a source string in a Crowdin project using JSON Patch operations. Use to modify string text, context, visibility, max length, labels, or identifier. Note: Only works with file formats that support online editing (CSV, RESX, JSON, Android XML, iOS strings, PROPERTIES, XLIFF)." }, { "slug": "CROWDIN_EXECUTE_GRAPHQL_QUERY", "name": "Execute GraphQL Query", "description": "Tool to execute GraphQL queries against the Crowdin GraphQL API. Use when you need to query complex nested data structures or perform advanced filtering. The GraphQL endpoint supports queries for projects, files, strings, translations, and more. All connection queries must include pagination parameters (first or last) with values between 1-10,000. The API enforces a 5,000-point-per-hour rate limit based on query complexity." }, { "slug": "CROWDIN_EXPORT_GLOSSARY", "name": "Export Glossary", "description": "Tool to initiate a glossary export operation in Crowdin. Use when you need to export glossary terms to TBX, CSV, or XLSX format. After initiating, use Check Glossary Export Status to monitor progress and get download URL." }, { "slug": "CROWDIN_EXPORT_PROJECTS_BUNDLES", "name": "Export Bundle", "description": "Tool to initiate an asynchronous export operation for a bundle in Crowdin. Use when you need to export a bundle of translated files. Returns an export identifier that can be used with Check Bundle Export Status action to monitor progress and download the bundle once completed." }, { "slug": "CROWDIN_EXPORT_PROJECTS_TRANSLATIONS_EXPORTS", "name": "Export Project Translations", "description": "Tool to export project translations from Crowdin. Returns a download URL for the exported translation file. Use when you need to download translations for a specific target language." }, { "slug": "CROWDIN_EXPORT_PROJECT_TASK_STRINGS", "name": "Export Project Task Strings", "description": "Tool to export strings from a project task in XLIFF format. Use when you need to download task strings for translation or review. Returns a temporary download URL that expires after a specified time." }, { "slug": "CROWDIN_EXPORT_TMS_EXPORTS", "name": "Export Translation Memory", "description": "Tool to export Translation Memory (TM) from Crowdin. Use when you need to export TM data in TMX, CSV, or XLSX format. This is an asynchronous operation - use Check TM Export Status action to monitor progress and retrieve the download URL." }, { "slug": "CROWDIN_GENERATE_REPORT", "name": "Generate Project Report", "description": "Tool to generate organization reports in Crowdin projects. Creates asynchronous report generation jobs for cost estimation, top members, translation costs, and other analytics. Use Check Project Report to monitor generation status." }, { "slug": "CROWDIN_GENERATE_USERS_AI_PROMPTS_FINE_TUNING_DATASETS", "name": "Generate AI Prompt Fine-Tuning Dataset", "description": "Tool to generate an AI prompt fine-tuning dataset from project or TM data. Use when you need to create training or validation datasets for fine-tuning AI models. This is an asynchronous operation - check status using the returned identifier." }, { "slug": "CROWDIN_GET_BRANCH", "name": "Get Branch", "description": "Tool to retrieve details of a specific branch in a Crowdin project by its ID. Use when you need to inspect branch settings or verify branch existence." }, { "slug": "CROWDIN_GET_FILE", "name": "Get File", "description": "Tool to retrieve detailed information about a specific file in a Crowdin project. Use when you need to inspect file properties, metadata, or settings before processing." }, { "slug": "CROWDIN_GET_GLOSSARY", "name": "Get Glossary", "description": "Tool to retrieve information about a specific glossary by its ID. Use when you need to fetch glossary details including terms count, languages, and associated projects." }, { "slug": "CROWDIN_GET_GLOSSARY_CONCEPT", "name": "Get Glossary Concept", "description": "Tool to retrieve a specific concept from a Crowdin glossary. Use when you need to view concept details including definition, subject, notes, and metadata." }, { "slug": "CROWDIN_GET_GLOSSARY_TERM", "name": "Get Glossary Term", "description": "Tool to retrieve a specific term from a Crowdin glossary. Use when you need to inspect term details including translations, definitions, and metadata." }, { "slug": "CROWDIN_GET_LABEL", "name": "Get Label", "description": "Tool to retrieve information about the label identified by the specified label ID in a project. Use after confirming the project context to fetch label details." }, { "slug": "CROWDIN_GET_LANGUAGE", "name": "Get Language", "description": "Tool to retrieve details of a specific language. Use when you have a language identifier and need locale codes and plural rules before configuring translations." }, { "slug": "CROWDIN_GET_MEMBER_INFO", "name": "Get Member Info", "description": "Tool to retrieve information about a project member. Use when you need to inspect details for a specific user within a project after obtaining their member ID." }, { "slug": "CROWDIN_GET_MT", "name": "Get MT", "description": "Tool to retrieve details of a specific Machine Translation engine. Use when you need to inspect MT engine configuration and settings." }, { "slug": "CROWDIN_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a specific Crowdin project. Use when you need to inspect project settings before making updates." }, { "slug": "CROWDIN_GET_PROJECTS_AI_SETTINGS", "name": "Get Project AI Settings", "description": "Tool to retrieve AI settings for a specific Crowdin project. Use when you need to inspect project-level AI configuration." }, { "slug": "CROWDIN_GET_PROJECTS_BRANCHES_LANGUAGES_PROGRESS", "name": "Get Branch Progress", "description": "Tool to retrieve branch translation progress for all languages in a Crowdin project. Use when you need to monitor translation status for a specific branch." }, { "slug": "CROWDIN_GET_PROJECTS_BUNDLES", "name": "Get Bundle", "description": "Tool to retrieve details of a specific bundle from a Crowdin project. Use when you need to inspect bundle configuration." }, { "slug": "CROWDIN_GET_PROJECTS_COMMENTS", "name": "Get String/Asset Comment", "description": "Tool to retrieve a specific string or asset comment by its ID in a Crowdin project. Use when you need to inspect comment details, check issue status, or view comment metadata." }, { "slug": "CROWDIN_GET_PROJECTS_DIRECTORIES", "name": "Get Directory", "description": "Tool to retrieve information about a specific directory in a Crowdin project. Use when you need to inspect directory details or verify directory existence." }, { "slug": "CROWDIN_GET_PROJECTS_DIRECTORIES_LANGUAGES_PROGRESS", "name": "Get Directory Progress", "description": "Tool to get translation progress for all languages in a specific directory of a Crowdin project. Use when you need to check translation and approval progress by language for a directory. Returns detailed progress information including word counts, phrase counts, and progress percentages for each target language." }, { "slug": "CROWDIN_GET_PROJECTS_DISTRIBUTIONS", "name": "Get Distribution", "description": "Tool to retrieve details of a specific distribution in a Crowdin project. Use when you need to inspect distribution settings or metadata." }, { "slug": "CROWDIN_GET_PROJECTS_FILE_FORMAT_SETTINGS", "name": "Get Project File Format Settings", "description": "Tool to retrieve file format settings for a specific project. Use when you need to inspect configuration options for how files are processed in Crowdin translations." }, { "slug": "CROWDIN_GET_PROJECTS_FILES_LANGUAGES_PROGRESS", "name": "Get File Progress", "description": "Tool to retrieve file translation progress for all languages in a Crowdin project. Use when you need to monitor translation status before exporting." }, { "slug": "CROWDIN_GET_PROJECTS_FILES_REVISIONS", "name": "Get File Revision", "description": "Tool to retrieve details of a specific file revision in a Crowdin project. Use when you need to inspect revision changes before restoring." }, { "slug": "CROWDIN_GET_PROJECTS_LANGUAGES_PROGRESS", "name": "Get Project Progress", "description": "Tool to retrieve project translation progress for all languages in a Crowdin project. Use when you need to monitor overall project translation status." }, { "slug": "CROWDIN_GET_PROJECTS_LANGUAGES_PROGRESS2", "name": "Get Language Progress", "description": "Tool to retrieve translation progress for a specific language across all files in a Crowdin project. Use when you need to monitor translation status for a particular language." }, { "slug": "CROWDIN_GET_PROJECTS_QA_CHECKS_REVALIDATE", "name": "Get QA Checks Revalidation Status", "description": "Tool to retrieve the status of a QA checks revalidation job. Use when you need to check the progress of a previously started revalidation." }, { "slug": "CROWDIN_GET_PROJECTS_REPORTS_SETTINGS_TEMPLATES", "name": "Get Report Settings Template", "description": "Tool to retrieve a specific report settings template from Crowdin. Use when you need to inspect existing template configuration for cost estimation and translation pricing." }, { "slug": "CROWDIN_GET_PROJECTS_STRINGS_EXPORTER_SETTINGS", "name": "Get Project Strings Exporter Settings", "description": "Tool to retrieve project strings exporter settings by ID. Use when you need to inspect exporter configuration before making updates." }, { "slug": "CROWDIN_GET_PROJECTS_TASKS_SETTINGS_TEMPLATES", "name": "Get Task Settings Template", "description": "Tool to retrieve a specific task settings template from a Crowdin project. Use when you need to inspect template configuration before creating tasks." }, { "slug": "CROWDIN_GET_PROJECT_TASK", "name": "Get Project Task", "description": "Tool to retrieve details of a specific task in a Crowdin project. Use when you need to inspect task status, progress, or configuration." }, { "slug": "CROWDIN_GET_PROJECT_TASK_COMMENT", "name": "Get Project Task Comment", "description": "Tool to retrieve a specific task comment by its ID in a Crowdin project. Use when you need to inspect task comment details, check issue status, or view comment metadata." }, { "slug": "CROWDIN_GET_STORAGE", "name": "Get Storage", "description": "Tool to retrieve details of a specific file uploaded to Crowdin storage. Use when you need to verify storage file information before using it in other operations." }, { "slug": "CROWDIN_GET_STRING", "name": "Get String", "description": "Retrieves detailed information about a specific source string in a Crowdin project. Returns the string's text content, metadata (type, context, maxLength), translation status flags (isHidden, isDuplicate, hasPlurals, isIcu), associated labels, timestamps, and editor URL. Use this to inspect individual strings before editing or to verify string properties." }, { "slug": "CROWDIN_GET_TMS", "name": "Get Translation Memory", "description": "Tool to retrieve information about a specific Translation Memory by its ID. Use when you need to fetch TM details including segment count, languages, and associated projects." }, { "slug": "CROWDIN_GET_USER", "name": "Get Authenticated User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to get the profile details of the user making the API request." }, { "slug": "CROWDIN_GET_USERS_AI_PROMPT", "name": "Get AI Prompt", "description": "Tool to retrieve a specific AI prompt from Crowdin. Use when you need to inspect existing AI prompt configuration, settings, or enabled project associations." }, { "slug": "CROWDIN_GET_USERS_AI_PROMPTS_FINE_TUNING_DATASETS", "name": "Get AI Prompt Fine-Tuning Dataset Status", "description": "Tool to retrieve the generation status of an AI prompt fine-tuning dataset. Use this to check the progress and completion status of a dataset generation job initiated by Generate AI Prompt Fine-Tuning Dataset." }, { "slug": "CROWDIN_GET_USERS_AI_PROVIDERS", "name": "Get User AI Provider", "description": "Tool to retrieve an AI provider for a specific user. Use when you need to fetch configuration details of a specific AI provider instance." }, { "slug": "CROWDIN_GET_USERS_AI_SETTINGS", "name": "Get User AI Settings", "description": "Tool to retrieve AI settings for a Crowdin user. Use when you need to inspect current AI configuration and preferences for a specific user." }, { "slug": "CROWDIN_GET_USERS_AI_SETTINGS_SNIPPETS", "name": "Get AI Snippet", "description": "Tool to retrieve an AI snippet from Crowdin. Use when you need to fetch details of a specific custom placeholder for AI prompts." }, { "slug": "CROWDIN_GET_USERS_REPORTS_ARCHIVES", "name": "Get User Report Archive", "description": "Tool to get a specific report archive for a Crowdin user. Use when retrieving details of a previously generated report archive by its ID." }, { "slug": "CROWDIN_GET_USERS_REPORTS_SETTINGS_TEMPLATES", "name": "Get User Report Settings Template", "description": "Tool to retrieve a user report settings template in Crowdin. Use when you need to view cost estimation and translation pricing template details for a specific user." }, { "slug": "CROWDIN_GET_USERS_SECURITY_LOG", "name": "Get User Security Log", "description": "Tool to retrieve details of a specific security log entry for a user. Returns information about security events such as logins, password changes, email changes, including event type, location, IP address, device, and timestamp. Use when you need to audit or investigate specific user security activities." }, { "slug": "CROWDIN_GET_VIEWER", "name": "Get Viewer", "description": "Tool to retrieve information about the authenticated user via GraphQL. Use when you need to get the current user's ID and username." }, { "slug": "CROWDIN_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves detailed information about a specific webhook in a Crowdin project. Returns webhook configuration including name, URL, events that trigger it, HTTP method, headers, payload template, and status. Use this to verify webhook setup or check if a webhook is active before relying on it. Requires both project_id and webhook_id. Returns 404 if either doesn't exist." }, { "slug": "CROWDIN_LIST_APPLICATIONS_INSTALLATIONS", "name": "List Application Installations", "description": "List all application installations in Crowdin with pagination and filtering support. Use this action to retrieve installed applications, filter by installer user, or paginate through large lists using limit and offset." }, { "slug": "CROWDIN_LIST_BRANCHES", "name": "List Branches", "description": "List all branches in a Crowdin project. Returns branch details including name, title, priority, and export patterns. Use to view project branch structure, pagination support via limit/offset. Filter by name if needed." }, { "slug": "CROWDIN_LIST_FILES", "name": "List Files", "description": "Tool to list files in a Crowdin project. Use when you need to retrieve a list of project files with optional filters by directory, group, or branch before processing." }, { "slug": "CROWDIN_LIST_GLOSSARIES", "name": "List Glossaries", "description": "Tool to list all glossaries available to the authenticated user. Use when you need to view available glossaries or retrieve glossary IDs for other glossary operations." }, { "slug": "CROWDIN_LIST_GLOSSARIES_CONCEPTS", "name": "List Glossaries Concepts", "description": "Tool to list concepts in a Crowdin glossary with pagination and sorting support. Concepts group related terms across multiple languages. Use when you need to view all concepts in a glossary or get concept IDs for other operations." }, { "slug": "CROWDIN_LIST_GLOSSARIES_TERMS", "name": "List Glossary Terms", "description": "Tool to list all terms in a Crowdin glossary. Use when you need to view terminology entries, their translations, definitions, and metadata. Supports filtering by language, user, concept, and advanced CroQL queries. Includes pagination support via limit/offset parameters." }, { "slug": "CROWDIN_LIST_GRAPHQL_PROJECT_FILE_STRINGS", "name": "List Project File Strings (GraphQL)", "description": "Tool to list source strings within files in Crowdin projects using GraphQL API. Returns strings with support for PlainSourceString, ICUSourceString, PluralSourceString, and AssetSourceString types. Use when you need to retrieve strings from multiple projects and files with cursor-based pagination." }, { "slug": "CROWDIN_LIST_LABELS", "name": "List Labels", "description": "Lists all labels in a Crowdin project with pagination support. Labels are used to categorize and organize source strings for easier management. Use this tool to view available labels before assigning them to strings or to retrieve label IDs for other label operations." }, { "slug": "CROWDIN_LIST_LANGUAGES", "name": "List Languages", "description": "Tool to retrieve a list of supported languages. Use when you need to fetch all languages Crowdin supports before starting localization." }, { "slug": "CROWDIN_LIST_MTS", "name": "List MTs", "description": "Tool to retrieve a paginated list of Machine Translation engines. Use when you need to view all configured MT engines and their settings." }, { "slug": "CROWDIN_LIST_PROJECT_MEMBERS", "name": "List Project Members", "description": "Tool to list members in a Crowdin project. Use when you need to retrieve project member list for management tasks after confirming the project ID." }, { "slug": "CROWDIN_LIST_PROJECTS2", "name": "List Projects (v2)", "description": "List all Crowdin projects accessible to the authenticated user with advanced filtering and sorting options. Use to retrieve projects with customizable sort order, filter by user/type/manager access, and paginate results." }, { "slug": "CROWDIN_LIST_PROJECTS_APPROVALS", "name": "List Projects Approvals", "description": "Tool to list translation approvals in a Crowdin project with filtering and pagination. Use when you need to retrieve approved translations, optionally filtered by file, string, language, labels, or translation ID." }, { "slug": "CROWDIN_LIST_PROJECTS_BUNDLES", "name": "List Bundles", "description": "Retrieves a paginated list of bundles in a Crowdin project. Use this to view all bundles with their configurations including formats, source patterns, and export settings." }, { "slug": "CROWDIN_LIST_PROJECTS_BUNDLES_FILES", "name": "List Bundle Files", "description": "Tool to list files in a specific Crowdin project bundle. Use when you need to retrieve the list of files included in a bundle before exporting or processing." }, { "slug": "CROWDIN_LIST_PROJECTS_COMMENTS", "name": "List Project Comments", "description": "Tool to retrieve a paginated list of comments on strings or assets in a Crowdin project. Use when you need to view all comments, filter by string/file, or search for specific comment types or issues." }, { "slug": "CROWDIN_LIST_PROJECTS_DICTIONARIES", "name": "List Project Dictionaries", "description": "Tool to list all dictionaries in a Crowdin project. Use when you need to view available dictionaries for translation quality and consistency checks." }, { "slug": "CROWDIN_LIST_PROJECTS_DIRECTORIES", "name": "List Directories", "description": "List all directories in a Crowdin project. Returns directory details including name, path, priority, and export patterns. Use to view project directory structure with pagination support via limit/offset. Filter by branchId or parentDirectoryId if needed." }, { "slug": "CROWDIN_LIST_PROJECTS_DISTRIBUTIONS", "name": "List Distributions", "description": "Tool to retrieve a list of distributions for a Crowdin project. Use when you need to view existing distribution configurations before releasing or managing them." }, { "slug": "CROWDIN_LIST_PROJECTS_FILE_FORMAT_SETTINGS", "name": "List Project File Format Settings", "description": "Tool to list all file format settings for a Crowdin project. Use to retrieve configuration options for how different file types are processed in translations. Supports pagination via limit/offset parameters." }, { "slug": "CROWDIN_LIST_PROJECTS_FILES_REFERENCES", "name": "List Asset References", "description": "Tool to list asset references for a specific file in a Crowdin project. Use when you need to view file references with pagination support." }, { "slug": "CROWDIN_LIST_PROJECTS_FILES_REVISIONS", "name": "List File Revisions", "description": "Tool to list all revisions for a specific file in a Crowdin project. Use when you need to view file change history or select a revision to restore." }, { "slug": "CROWDIN_LIST_PROJECTS_ISSUES", "name": "List Projects Issues", "description": "Tool to list reported issues in a Crowdin project. Use when you need to retrieve issues that have been reported by project members or translators. Supports filtering by issue type and resolution status." }, { "slug": "CROWDIN_LIST_PROJECTS_LANGUAGES_TRANSLATIONS", "name": "List Language Translations", "description": "Tool to list language translations for a specific project and language. Use when you need to retrieve translations for a target language with optional filtering by strings, labels, files, branches, or directories." }, { "slug": "CROWDIN_LIST_PROJECTS_QA_CHECKS", "name": "List Projects QA Checks", "description": "Tool to list QA check issues in a Crowdin project with pagination and filtering support. Use this to identify translation quality issues that need attention before finalizing translations. Supports filtering by category type, validation level, and target languages." }, { "slug": "CROWDIN_LIST_PROJECTS_REPORTS_SETTINGS_TEMPLATES", "name": "List Report Settings Templates", "description": "Tool to list report settings templates for a Crowdin project. Use when you need to retrieve available cost estimation and translation pricing templates for a project." }, { "slug": "CROWDIN_LIST_PROJECTS_SCREENSHOTS", "name": "List Screenshots", "description": "Tool to list screenshots in a Crowdin project. Use when you need to retrieve all screenshots or filter them by strings or labels. Returns screenshot details including id, name, URL, dimensions, and associated tags/labels with pagination support." }, { "slug": "CROWDIN_LIST_PROJECTS_STRINGS", "name": "List Project Strings", "description": "Lists all source strings in a Crowdin project with filtering and pagination. Use when you need to retrieve project strings, optionally filtered by file, branch, directory, labels, or text content. Supports both simple filters and advanced CroQL queries." }, { "slug": "CROWDIN_LIST_PROJECTS_STRINGS_EXPORTER_SETTINGS", "name": "List Project Strings Exporter Settings", "description": "Tool to list project strings exporter settings in Crowdin. Use when you need to retrieve all configured export format settings for a project." }, { "slug": "CROWDIN_LIST_PROJECTS_TASKS_SETTINGS_TEMPLATES", "name": "List Task Settings Templates", "description": "Tool to retrieve a paginated list of task settings templates for a Crowdin project. Use when you need to view available templates before creating tasks or to get template IDs for task operations." }, { "slug": "CROWDIN_LIST_PROJECTS_TRANSLATIONS_BUILDS", "name": "List Project Builds", "description": "Tool to list translation builds for a Crowdin project. Use when you need to retrieve all builds or check recent build history. Returns build details including status, progress, timestamps, and configuration for each build." }, { "slug": "CROWDIN_LIST_PROJECTS_VOTES", "name": "List Translation Votes", "description": "Tool to list translation votes in a Crowdin project. Use when you need to retrieve voting information for translations, optionally filtered by string, language, translation, file, or labels." }, { "slug": "CROWDIN_LIST_PROJECTS_WEBHOOKS", "name": "List Project Webhooks", "description": "Tool to retrieve a paginated list of webhooks configured in a Crowdin project. Use when you need to view all webhooks, check webhook configurations, or find specific webhook IDs." }, { "slug": "CROWDIN_LIST_PROJECT_TASK_COMMENTS", "name": "List Project Task Comments", "description": "Tool to retrieve all comments on a specific project task. Use when you need to view feedback, issues, or discussions related to a task." }, { "slug": "CROWDIN_LIST_STORAGES", "name": "List Storages", "description": "Tool to list files uploaded to Crowdin storage with pagination. Use when you need to retrieve a list of previously uploaded storage files." }, { "slug": "CROWDIN_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks in a Crowdin project. Use when you need to retrieve translation or proofreading tasks with optional filters by status or assignee." }, { "slug": "CROWDIN_LIST_TMS", "name": "List Translation Memories", "description": "Tool to list all Translation Memories available to the authenticated user. Use when you need to view available TMs, retrieve TM IDs for other operations, or filter TMs by user or ordering criteria." }, { "slug": "CROWDIN_LIST_TMS_SEGMENTS", "name": "List TM Segments", "description": "Tool to list Translation Memory segments in Crowdin. Use when you need to view all translation segments stored in a specific TM, with support for filtering via CroQL and pagination." }, { "slug": "CROWDIN_LIST_USERS_AI_PROMPTS", "name": "List User AI Prompts", "description": "Tool to list AI prompts for a specific user in Crowdin. Use when you need to retrieve all available AI prompts, optionally filtered by project or action type." }, { "slug": "CROWDIN_LIST_USERS_AI_PROMPTS_FINE_TUNING_JOBS", "name": "List AI Prompt Fine-Tuning Jobs", "description": "Tool to list AI prompt fine-tuning jobs for a specific user. Use when you need to view all fine-tuning jobs, check their status, or filter by job status." }, { "slug": "CROWDIN_LIST_USERS_AI_PROVIDERS", "name": "List User AI Providers", "description": "Tool to list all AI providers configured for a specific user. Use when you need to retrieve all AI provider configurations for a user. Returns paginated list of AI providers with details including type, credentials, and enabled status." }, { "slug": "CROWDIN_LIST_USERS_AI_PROVIDERS_MODELS", "name": "List User AI Provider Models", "description": "Tool to list AI provider models configured for a specific user. Use when you need to retrieve all AI models across all providers configured for a user." }, { "slug": "CROWDIN_LIST_USERS_AI_PROVIDERS_SUPPORTED_MODELS", "name": "List Supported AI Provider Models", "description": "Tool to list supported AI provider models for a user. Use when you need to retrieve available AI models and their configurations." }, { "slug": "CROWDIN_LIST_USERS_AI_SETTINGS_SNIPPETS", "name": "List AI Snippets", "description": "Tool to list AI snippets for a specific user in Crowdin. Use when you need to retrieve all custom placeholders configured for AI prompts in translations." }, { "slug": "CROWDIN_LIST_USERS_REPORTS_ARCHIVES", "name": "List User Report Archives", "description": "Tool to list report archives for a Crowdin user. Use when retrieving historical report data for a specific user, with optional filtering by scope, task, report name, or date range." }, { "slug": "CROWDIN_LIST_USERS_REPORTS_SETTINGS_TEMPLATES", "name": "List User Report Settings Templates", "description": "Tool to list user report settings templates in Crowdin. Use when retrieving cost estimation and translation pricing templates for a specific user." }, { "slug": "CROWDIN_LIST_USERS_SECURITY_LOGS", "name": "List User Security Logs", "description": "Tool to list security log entries for a specific user. Returns user activity events such as logins, password changes, email changes, MFA changes, session management, and SSO connections. Use when you need to audit user security activities, investigate suspicious behavior, or track authentication events. Supports filtering by event type, date range, and IP address." }, { "slug": "CROWDIN_LIST_USERS_TASKS", "name": "List User Tasks", "description": "Tool to retrieve a paginated list of tasks assigned to a specific user. Use when you need to see all tasks for a particular user including translation and proofreading assignments." }, { "slug": "CROWDIN_LIST_USER_TASKS", "name": "List User Tasks", "description": "Tool to retrieve tasks assigned to the authenticated user across all projects. Use when you need to view tasks assigned to the current user." }, { "slug": "CROWDIN_LIST_VIEWER_PROJECTS_FILES", "name": "List Viewer Projects Files", "description": "Tool to list files within projects using GraphQL viewer query. Returns file names, types, and total count for files in projects accessible to the authenticated user. Supports pagination with cursors for both projects and files." }, { "slug": "CROWDIN_LIST_VIEWER_PROJECTS_FILES_STRINGS_TRANSLATIONS", "name": "List Translations By Language", "description": "Tool to retrieve translation information for strings in specific target languages. Returns translations for PlainStringTranslation, ICUStringTranslation, PluralStringTranslation, and AssetStringTranslation types. Supports pagination across projects, files, strings, and translations." }, { "slug": "CROWDIN_LIST_VIEWER_PROJECTS_GRAPH_QL", "name": "List Viewer Projects (GraphQL)", "description": "Tool to retrieve projects via Crowdin GraphQL API using viewer.projects query. Use when you need cursor-based pagination or advanced filtering/sorting capabilities." }, { "slug": "CROWDIN_LIST_VIEWER_PROJECTS_TRANSLATIONS", "name": "List Viewer Projects Translations", "description": "Tool to list translations for projects in a specific language using GraphQL viewer query. Returns translations with support for different types: PlainStringTranslation, ICUStringTranslation, PluralStringTranslation, and AssetStringTranslation. Supports pagination with cursors for both projects and translations." }, { "slug": "CROWDIN_NOTIFY_PROJECT_MEMBERS", "name": "Notify Project Members", "description": "Tool to send notifications to Crowdin project members. Use when you need to alert specific users or all members with a role about project updates or events." }, { "slug": "CROWDIN_QUERY_GRAPHQL_NODE", "name": "Query GraphQL Node", "description": "Tool to query Crowdin GraphQL Project nodes by their global ID. Use when you need to retrieve Project details using a base64-encoded node identifier (format: base64(\"Project:numericId\")). Note: Currently only Project nodes are supported by Crowdin's GraphQL API. File, Branch, Directory, and String nodes cause internal server errors." }, { "slug": "CROWDIN_RELEASE_DISTRIBUTION", "name": "Release Distribution", "description": "Tool to release a distribution in a Crowdin project. Use when you need to publish the latest version of a distribution to make translated files available for download." }, { "slug": "CROWDIN_RESET_PROJECTS_FILE_FORMAT_CUSTOM_SEGMENTATIONS", "name": "Reset Project File Format Settings Custom Segmentations", "description": "Tool to reset custom segmentations for file format settings in a Crowdin project. Use when reverting custom segmentation rules to defaults." }, { "slug": "CROWDIN_REVALIDATE_QA_CHECKS", "name": "Revalidate QA Checks", "description": "Tool to revalidate QA checks for a Crowdin project. Use when you need to manually trigger QA check validation for specific languages or categories. Returns a job identifier for tracking the async revalidation process." }, { "slug": "CROWDIN_SEARCH_GLOSSARIES_CONCORDANCE", "name": "Search Glossaries Concordance", "description": "Tool to search for glossary terms using concordance search in Crowdin. Use when you need to find matching glossary entries for a specific expression across source and target languages." }, { "slug": "CROWDIN_SEARCH_TMS_CONCORDANCE", "name": "Search TM Concordance", "description": "Tool to search for translations in Translation Memory (TM) using concordance search. Use when you need to find existing translations for specific expressions or phrases across all translation memories in a project." }, { "slug": "CROWDIN_SEND_NOTIFICATION", "name": "Send Notification", "description": "Tool to send a notification message to the authenticated Crowdin user. Use when you need to alert the user about important events or updates." }, { "slug": "CROWDIN_UPDATE_GLOSSARIES", "name": "Update Glossaries", "description": "Tool to update glossary details using JSON-Patch operations. Use when you need to modify glossary metadata like name or primary language." }, { "slug": "CROWDIN_UPDATE_GLOSSARY_CONCEPT", "name": "Update Glossary Concept", "description": "Tool to update a concept in a Crowdin glossary. Use when you need to modify concept details including subject, definition, notes, translatable status, or language-specific information." }, { "slug": "CROWDIN_UPDATE_GLOSSARY_TERM", "name": "Update Glossary Term", "description": "Tool to update an existing glossary term in Crowdin using JSON Patch operations. Use when you need to modify term properties like text, description, status, or grammatical attributes for consistent terminology management." }, { "slug": "CROWDIN_UPDATE_LANGUAGE", "name": "Update Custom Language", "description": "Tool to update a custom language in Crowdin using JSON-Patch operations. Use when you need to modify properties of an existing custom language like name, text direction, or plural categories." }, { "slug": "CROWDIN_UPDATE_PROJECT_COMMENT", "name": "Edit String/Asset Comment", "description": "Tool to edit a string or asset comment in a Crowdin project using JSON Patch operations. Use to modify comment text or update issue status for issue-type comments." }, { "slug": "CROWDIN_UPDATE_PROJECTS_BRANCHES", "name": "Update Branch", "description": "Tool to update branch details using JSON-Patch operations. Use when you need to modify branch metadata like name, title, export pattern, or priority." }, { "slug": "CROWDIN_UPDATE_PROJECTS_BUNDLES", "name": "Update Bundle", "description": "Tool to update bundle properties in a Crowdin project using JSON-Patch operations. Use when you need to modify bundle settings like name, format, source patterns, or export configuration." }, { "slug": "CROWDIN_UPDATE_PROJECTS_COMMENTS", "name": "Update Projects Comments", "description": "Tool to perform batch operations on project comments using JSON-Patch. Use when you need to update multiple comments, change issue statuses, or modify comment text in a single request. Supports add, replace, and remove operations." }, { "slug": "CROWDIN_UPDATE_PROJECTS_DICTIONARIES", "name": "Update Project Dictionaries", "description": "Tool to edit a dictionary in a Crowdin project using JSON-Patch operations. Use when you need to add or remove words from project dictionaries for translation quality and consistency checks." }, { "slug": "CROWDIN_UPDATE_PROJECTS_DIRECTORIES", "name": "Update Directory", "description": "Tool to update directory details in a Crowdin project using JSON-Patch operations. Use when you need to modify directory name, title, export pattern, or priority." }, { "slug": "CROWDIN_UPDATE_PROJECTS_DISTRIBUTIONS", "name": "Edit Distribution", "description": "Tool to update distribution settings using JSON-Patch operations. Use to modify name, export mode, or file/bundle IDs." }, { "slug": "CROWDIN_UPDATE_PROJECTS_FILE_FORMAT_SETTINGS", "name": "Update Project File Format Settings", "description": "Tool to edit file format settings in a Crowdin project using JSON Patch operations. Use when modifying existing format configurations like export patterns or segmentation rules." }, { "slug": "CROWDIN_UPDATE_PROJECTS_FILES", "name": "Update or Restore File", "description": "Tool to update or restore a file in a Crowdin project. Use when you need to replace file content with a new version from storage (provide storageId) or restore a file to a previous revision (provide revisionId)." }, { "slug": "CROWDIN_UPDATE_PROJECTS_REPORTS_SETTINGS_TEMPLATES", "name": "Update Report Settings Template", "description": "Tool to update a report settings template using JSON-Patch operations. Use when you need to modify template name, currency, unit, mode, or configuration settings for cost estimation and translation pricing." }, { "slug": "CROWDIN_UPDATE_PROJECTS_SCREENSHOTS", "name": "Edit Screenshot", "description": "Tool to edit a screenshot in a Crowdin project using JSON Patch operations. Use to modify screenshot name or label assignments. Operations are applied atomically - all succeed or all fail." }, { "slug": "CROWDIN_UPDATE_PROJECTS_SCREENSHOTS_TAGS", "name": "Edit Screenshot Tag", "description": "Tool to edit a screenshot tag in a Crowdin project using JSON Patch operations. Use when you need to update tag position or change the associated string ID. Tags link strings to specific areas on screenshots to provide visual context for translators." }, { "slug": "CROWDIN_UPDATE_PROJECTS_STRINGS", "name": "Update Projects Strings", "description": "Tool to perform batch operations on strings in a Crowdin project using JSON Patch. Use to update multiple string fields, create new strings, or delete strings in a single request. Supports replace (update field values), add (create new strings), and remove (delete strings) operations." }, { "slug": "CROWDIN_UPDATE_PROJECTS_STRINGS_EXPORTER_SETTINGS", "name": "Update Project Strings Exporter Settings", "description": "Tool to edit project strings exporter settings in Crowdin using JSON Patch operations. Use when modifying existing exporter configurations (e.g., changing format, updating export patterns, toggling placeholder conversion). Apply targeted updates to specific settings without replacing the entire configuration." }, { "slug": "CROWDIN_UPDATE_PROJECTS_TASKS_SETTINGS_TEMPLATES", "name": "Update Task Settings Template", "description": "Tool to update a task settings template in a Crowdin project using JSON Patch operations. Use when you need to modify template name or configuration settings." }, { "slug": "CROWDIN_UPDATE_PROJECTS_WEBHOOKS", "name": "Update Project Webhook", "description": "Tool to update webhook configuration in a Crowdin project using JSON Patch operations. Use when you need to modify webhook properties like name, URL, event triggers, or active status." }, { "slug": "CROWDIN_UPDATE_PROJECT_TASK", "name": "Update Project Task", "description": "Tool to update a project task in Crowdin using JSON Patch operations. Use when you need to modify task details like title, description, status, deadline, or assignees." }, { "slug": "CROWDIN_UPDATE_PROJECT_TASK_COMMENT", "name": "Edit Project Task Comment", "description": "Tool to edit a task comment in a Crowdin project using JSON Patch operations. Use to modify comment text or update issue status for issue-type comments." }, { "slug": "CROWDIN_UPDATE_TMS", "name": "Update Translation Memory", "description": "Tool to update a Translation Memory (TM) in Crowdin using JSON Patch operations. Use when you need to modify TM name or language settings. Supports RFC 6902 JSON Patch operations (replace, test) on paths /name and /languageId." }, { "slug": "CROWDIN_UPDATE_TMS_SEGMENTS", "name": "Update TM Segments", "description": "Tool to edit a translation memory segment in Crowdin using JSON Patch operations. Use when you need to update translation text or metadata for existing TM segment records." }, { "slug": "CROWDIN_UPDATE_TMS_SEGMENTS_RECORDS", "name": "Update TM Segment Record", "description": "Tool to edit a translation memory segment record in Crowdin using JSON Patch operations. Use when you need to update the text of an existing translation in a TM segment. Note: This action is deprecated - prefer using newer TM management actions if available." }, { "slug": "CROWDIN_UPDATE_USER", "name": "Update Authenticated User", "description": "Tool to update the authenticated user's profile using JSON Patch operations. Use to modify username, full name, timezone, or avatar. Applies one or more field updates in a single request." }, { "slug": "CROWDIN_UPDATE_USERS_AI_PROMPTS", "name": "Update AI Prompt", "description": "Tool to update an AI prompt in Crowdin using JSON-Patch operations. Use when you need to modify AI prompt configuration, name, enabled status, or project associations after the prompt has been created." }, { "slug": "CROWDIN_UPDATE_USERS_AI_PROVIDERS", "name": "Update User AI Provider", "description": "Tool to edit an AI Provider for a specific user using JSON Patch operations. Use to update provider name, enable/disable status, or modify configuration settings. Operations follow RFC 6902 JSON Patch standard." }, { "slug": "CROWDIN_UPDATE_USERS_AI_SETTINGS", "name": "Edit User AI Settings", "description": "Tool to update AI settings for a Crowdin user using JSON Patch operations. Use to modify AI prompt IDs or shortcuts configuration. Supports updating pre-translation prompts, assist action prompts, editor suggestions, and custom AI shortcuts." }, { "slug": "CROWDIN_UPDATE_USERS_AI_SETTINGS_SNIPPETS", "name": "Update AI Snippet", "description": "Tool to update an existing AI snippet in Crowdin using JSON Patch operations. Use when you need to modify snippet properties like description, placeholder, or value for AI prompts." }, { "slug": "CROWDIN_UPDATE_USERS_REPORTS_SETTINGS_TEMPLATES", "name": "Update User Report Settings Template", "description": "Tool to update a user report settings template in Crowdin using JSON Patch operations. Use when modifying template name, currency, unit, or configuration for cost estimation and translation pricing." }, { "slug": "CROWDIN_UPDATE_WEBHOOKS", "name": "Update Organization Webhook", "description": "Tool to update organization webhook configuration in Crowdin using JSON Patch operations. Use when you need to modify organization-level webhook properties like name, URL, or event triggers." }, { "slug": "CROWDIN_UPLOAD_STORAGE", "name": "Upload Storage", "description": "Upload a file to Crowdin storage to get a storage ID for subsequent operations. Storage is a temporary container for files at Crowdin. Use this action before: - Adding new source files to a project (Add File action) - Updating existing source files (Update File action) - Uploading Translation Memory (TM) or Glossary files Returns a storage ID that can be used in follow-up API calls." }, { "slug": "CROWDIN_VALIDATE_QA_CHECKS", "name": "Validate QA Checks", "description": "Tool to validate translation text by QA checks in a Crowdin project. Use to check if translations meet quality requirements before submitting." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "crowdin_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "project" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "crowdin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Crowdin Personal Access Token", "type": "string", "description": "The personal access token generated in Crowdin for API authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "crowdpower", "name": "Crowdpower", "logo": "https://logos.composio.dev/api/crowdpower", "description": "Lifecycle automations to keep and convert your customers. CrowdPower provides customer engagement tools with tracking, behavioral automation, and personalized campaigns.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "crowdpower_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "API Name", "type": "string", "description": "Select \"beacon\" for Beacon API (tracking, events, customer data) or \"api\" for Core API (full console functionality). Default is \"api\".", "required": true, "default": "api" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your CrowdPower account > Settings > API Keys to retrieve your Application Key. This key provides full server-side access to both Beacon and Core APIs.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "crowterminal", "name": "CrowTerminal", "logo": "https://logos.composio.dev/api/crowterminal", "description": "AI-powered command line assistant with memory and automation capabilities for developers", "category": "developer tools", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CROWTERMINAL_ANALYZE_ENGAGEMENT", "name": "Analyze Agent Engagement", "description": "Tool to analyze engagement correlation for every field in your agent's markdown. Use when you need to understand which agent configuration fields drive engagement and get specific recommendations for improvement. Returns similarity to best/worst performing versions and field-by-field analysis." }, { "slug": "CROWTERMINAL_COMPARE_MD", "name": "Compare Agent Markdown", "description": "Tool to compare your agent's markdown directly with all stored versions. Returns field differences showing which values differ across versions, lists missing fields not present in your current data, and provides version counts. Use when you need to understand how your current agent configuration compares to historical versions." }, { "slug": "CROWTERMINAL_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to register a new webhook for receiving real-time event notifications from CrowTerminal. Use when you need to set up asynchronous notifications for events like skill updates, data ingestion, or validation blocks." }, { "slug": "CROWTERMINAL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook registration. Use when you need to remove a webhook that is no longer needed or should be replaced." }, { "slug": "CROWTERMINAL_GET_BYOK_PLATFORM_INTEL", "name": "Get BYOK Platform Intelligence", "description": "Tool to get algorithm insights for TikTok, Instagram, and YouTube without client-specific context. Use when you need platform intelligence data for BYOK (Bring Your Own Key) analysis workflows. This endpoint provides raw contextual algorithm data without triggering LLM inference charges." }, { "slug": "CROWTERMINAL_GET_CLIENT_MEMORY_CHANGELOG", "name": "Get Client Memory Changelog", "description": "Retrieve human-readable change history for a client's memory. Provides a narrative view of how the client's skill data has evolved over time." }, { "slug": "CROWTERMINAL_GET_CLIENT_MEMORY_PATTERN", "name": "Get Client Memory Pattern", "description": "Tool to track a specific field over time for trend analysis. Use when you need to understand how a particular metric evolved across versions or time periods." }, { "slug": "CROWTERMINAL_GET_COMPONENTS_STATUS", "name": "Get Components Status", "description": "Tool to get detailed status of each CrowTerminal service component. Returns current health status, latency, and summary statistics for all monitored components (database, cache, APIs, webhooks). Use when checking system health or diagnosing service issues." }, { "slug": "CROWTERMINAL_GET_DATA_TYPES", "name": "Get Data Types", "description": "Tool to retrieve valid data types for ingestion across platforms. Returns available data types for TikTok, Instagram, and YouTube that can be used for data ingestion operations." }, { "slug": "CROWTERMINAL_GET_INCIDENTS", "name": "Get Recent Incidents", "description": "Tool to retrieve list of recent incidents from CrowTerminal with duration and affected components. Use when you need to check system status, monitor service health, or investigate recent outages or degradations." }, { "slug": "CROWTERMINAL_GET_PLATFORM_INTEL", "name": "Get Platform Intelligence", "description": "Tool to retrieve algorithm insights for TikTok, Instagram, and YouTube. Returns platform-wide intelligence about content algorithm behavior and optimization strategies. Use when you need current platform algorithm trends and recommendations." }, { "slug": "CROWTERMINAL_GET_SANDBOX_CLIENT", "name": "Get Sandbox Client", "description": "Tool to get mock client data for testing in the sandbox environment. Use when you need to test client-related functionality without affecting real data. No authentication required for sandbox endpoints." }, { "slug": "CROWTERMINAL_GET_SANDBOX_MEMORY", "name": "Get Sandbox Memory", "description": "Tool to retrieve mock memory/skill data for testing purposes. Use when you need to test memory retrieval without affecting real data or requiring authentication. Part of the sandbox testing environment." }, { "slug": "CROWTERMINAL_GET_STATUS", "name": "Get Service Status", "description": "Retrieve CrowTerminal service status including overall health, component metrics, and uptime data. Use when you need to check the operational status of CrowTerminal services or monitor system health. No authentication required." }, { "slug": "CROWTERMINAL_GET_STATUS_HISTORY", "name": "Get Status History", "description": "Tool to get 7-day uptime data points ready for visualization and charting. Use when you need historical uptime metrics for monitoring dashboards or status displays." }, { "slug": "CROWTERMINAL_GET_UPTIME", "name": "Get Uptime Data", "description": "Tool to retrieve historical uptime data for CrowTerminal agents. Use when you need to check system reliability, view uptime percentages for 24h/7d periods, or review recent service incidents." }, { "slug": "CROWTERMINAL_INGEST_BULK_DATA", "name": "Bulk Ingest Analytics Data", "description": "Tool to bulk ingest up to 50 analytics data points at once to CrowTerminal. Use when you need to efficiently push large amounts of platform analytics data for content creators across social media platforms. Ideal for batch uploads of retention, engagement, views, and other metrics." }, { "slug": "CROWTERMINAL_INGEST_DATA", "name": "Ingest Analytics Data", "description": "Tool to ingest platform analytics data from TikTok Studio, Instagram Insights, or YouTube Analytics. Use when you need to push retention curves, demographics, traffic sources, or other engagement metrics for analysis. Supports both video-specific and channel-level data ingestion." }, { "slug": "CROWTERMINAL_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all registered webhooks for the authenticated agent. Use when you need to view all webhook subscriptions and their configurations." }, { "slug": "CROWTERMINAL_PING_CROWTERMINAL", "name": "Ping CrowTerminal Service", "description": "Tool to check CrowTerminal service availability via a simple ping endpoint. Use when you need to verify the service is online and responding. Returns a pong confirmation with a timestamp." }, { "slug": "CROWTERMINAL_READ_BULK_MEMORY", "name": "Bulk Read Memory", "description": "Tool to read memory for multiple clients at once (up to 50). Use when you need to efficiently retrieve memory data for multiple creators in a single API call." }, { "slug": "CROWTERMINAL_REGISTER_AGENT", "name": "Register Agent", "description": "Tool to self-register a new agent and obtain an API key. Use when you need to create a new agent identity in CrowTerminal. No authentication required for this endpoint. Rate limited to 5 requests per hour per IP address." }, { "slug": "CROWTERMINAL_RUN_SANDBOX_ENGAGEMENT_ANALYSIS", "name": "Sandbox Engagement Analysis", "description": "Tool to run mock engagement analysis in the CrowTerminal sandbox environment. Use when you need to test the engagement analysis workflow without affecting real data or when developing and validating agent configurations." }, { "slug": "CROWTERMINAL_TEST_WEBHOOK", "name": "Test Webhook", "description": "Tool to test a webhook URL by sending a test payload. Use when you need to verify that a webhook endpoint is properly configured and can receive requests." }, { "slug": "CROWTERMINAL_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in CrowTerminal. Use when you need to modify webhook URL, change event subscriptions, or enable/disable a webhook." }, { "slug": "CROWTERMINAL_VALIDATE_PROPOSED_CHANGES", "name": "Validate Proposed Changes", "description": "Tool to validate proposed changes against historical data before updating memory. Use when you need to check if proposed changes contradict historical patterns and receive warnings or recommendations." }, { "slug": "CROWTERMINAL_VALIDATE_SANDBOX", "name": "Validate Sandbox", "description": "Tool to mock validation endpoint for testing in sandbox. Use when you need to test validation logic. Send 'tutorial' in proposedChanges to get a blocked response." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "crowterminal_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email", "type": "string", "description": "Your CrowTerminal account email", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your CrowTerminal account password", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "crowterminal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your CrowTerminal Agent API key (starts with ct_). Register at https://api.crowterminal.com/api/agent/register", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cufinder", "name": "Cufinder", "logo": "https://logos.composio.dev/api/cufinder", "description": "CUFinder is a B2B Lead Generation platform to drive growth and increase sales. Access to 1B+ person profiles and 85M+ company records with daily refreshed data.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cufinder_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to your CUFinder dashboard, go to Profile (https://dashboard.cufinder.io/profile/) under the \"API\" tab to get your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cults", "name": "Cults", "logo": "https://logos.composio.dev/api/cults", "description": "Cults is a digital marketplace for 3D printing models, offering a platform for designers to share and sell their creations.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CULTS_GET_APPROVED_ORIGINS", "name": "Get Approved Origins", "description": "Inspects the Cults creation page to detect any sharing origin information. Note: Cults requires origins to be manually approved via support contact before use with the Share on Create feature. This action attempts to parse the creation page for origin-related data but may return empty results. For guaranteed origin information, contact Cults support directly at https://cults3d.com/en/api." }, { "slug": "CULTS_GRAPH_QL_POST", "name": "Cults GraphQL POST", "description": "Execute GraphQL queries and mutations against the Cults3D API. Cults3D is a marketplace for 3D printable models. This tool provides access to: - Browse and search 3D model designs (creations) - View user profiles and their uploaded models - Access your own account data, sales, and printlists (via 'myself' query) - Manage your creations and discounts (via mutations) The API uses standard GraphQL syntax. Query the schema for available fields. Note: 3D model files themselves are not accessible via the API, only metadata." }, { "slug": "CULTS_SHARE_ON_CREATE_FR", "name": "Share on Create (FR)", "description": "Generate a one-click share URL for publishing a 3D file to Cults (French locale). This tool constructs a shareable link that, when clicked by users, takes them to the Cults creation page with the 3D file URL pre-filled. This enables seamless sharing of 3D models from your platform to Cults. Prerequisites: - Your site/origin must be pre-approved by Cults for share integration - The file_url must point to a publicly accessible 3D file Note: This action generates the URL without making an API call, so it always succeeds as long as the parameters are valid. Users will need to be logged into Cults to complete the sharing process." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cults_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Cults API key from https://cults3d.com/en/api", "required": true, "default": null }, { "name": "generic_id", "displayName": "Username", "type": "string", "description": "Your Cults username", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "curated", "name": "Curated", "logo": "https://logos.composio.dev/api/curated", "description": "Curated is a platform that enables users to collect, curate, and publish newsletters, integrating with various services through its API.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CURATED_CREATE_DRAFT_ISSUE", "name": "Create Draft Issue", "description": "Tool to create a draft issue for a publication. Use after confirming the publication ID. Applies default settings if optional fields are omitted." }, { "slug": "CURATED_CREATE_LINK", "name": "Create Collected Link", "description": "Tool to create a collected link for a publication. Use when you want to add a new link (with URL, title, etc.) to a publication's collection." }, { "slug": "CURATED_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to list all categories for a publication. Use after you have the publication ID and need to fetch its categories." }, { "slug": "CURATED_LIST_EMAIL_SUBSCRIBERS", "name": "List Email Subscribers", "description": "Tool to list all email subscribers for a publication. Use after confirming the publication ID." }, { "slug": "CURATED_LIST_ISSUES", "name": "List Issues", "description": "Lists all issues (newsletters) for a Curated publication with pagination support. Use this tool to retrieve issues from a publication. You must first obtain the publication_id by calling the List Publications action. Supports filtering by state (published/draft) and optionally includes email performance stats (open/click rates)." }, { "slug": "CURATED_LIST_PUBLICATIONS", "name": "List Publications", "description": "Tool to list all publications accessible by the API key. Use when you need to retrieve your publication IDs for further API calls. Example prompt: \"List my publications\"." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "curated_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Curated API Key", "type": "string", "description": "The API key for authenticating requests to the Curated API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "currencyscoop", "name": "CurrencyScoop", "logo": "https://logos.composio.dev/api/currencyscoop", "description": "CurrencyBeacon is a developer friendly, easy-to-use REST API with real-time and historical exchange rates for fiat currencies and cryptocurrencies.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CURRENCYSCOOP_CONVERT_CURRENCY2", "name": "Convert Currency with Historical Support", "description": "Tool to convert any amount from one currency to another using real-time or historical exchange rates. Use when you need to convert a specific amount between two currencies, optionally specifying a date for historical rates." }, { "slug": "CURRENCYSCOOP_GET_CURRENCIES", "name": "Get Currencies", "description": "Tool to retrieve all supported currencies including their names and countries. Use when you need information about available currencies, either fiat or crypto." }, { "slug": "CURRENCYSCOOP_GET_HISTORICAL_RATES", "name": "Get Historical Exchange Rates", "description": "Tool to retrieve historical exchange rate data for past dates going back to 1996. Use when you need to access exchange rates for a specific historical date with a base currency." }, { "slug": "CURRENCYSCOOP_GET_LATEST_RATES", "name": "Get Latest Exchange Rates", "description": "Tool to retrieve real-time exchange rate data for all available currencies. Use when you need current exchange rates updated based on subscription plan frequency (e.g., every 60 seconds). Returns only current rates, not historical values; use CURRENCYSCOOP_GET_HISTORICAL_RATES for rates on a specific past date." }, { "slug": "CURRENCYSCOOP_GET_TIMESERIES_RATES", "name": "Get Timeseries Exchange Rates", "description": "Tool to retrieve historical exchange rates for a given time period between start and end dates. Use when you need exchange rates for multiple dates in a date range for trend analysis or historical comparisons." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "currencyscoop_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://currencybeacon.com/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "currents_api", "name": "Currents API", "logo": "https://logos.composio.dev/api/currents_api", "description": "Currents News API provides access to the latest news articles from various sources worldwide, supporting multiple languages and categories.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CURRENTS_API_ACTIVITIES_LIST", "name": "List Latest News", "description": "Tool to retrieve the latest news articles from Currents News API. Use when you need a real-time feed of recent articles." }, { "slug": "CURRENTS_API_ACTIVITIES_WATCH", "name": "Activities Watch", "description": "Start a push notification channel to watch user activities for Google Workspace applications. This action sets up a webhook to receive real-time notifications when activities occur in Google Workspace apps (admin, calendar, drive, docs, gmail, meet, etc.). Prerequisites: - Valid webhook URL that can receive POST notifications - OAuth credentials with appropriate scopes for the target application - For production use, requires Google Admin Reports API access Use this when you need to monitor user activities in real-time rather than polling." }, { "slug": "CURRENTS_API_ENTITY_USAGE_REPORTS_GET", "name": "Get Entity Usage Reports", "description": "Tool to retrieve usage statistics for a specific Google Workspace entity. Use when you need to analyze entity usage on a particular date." }, { "slug": "CURRENTS_API_USERS_LIST", "name": "List Users", "description": "Tool to list users in a Google Workspace domain. Note: - When the provided base_url points to Currents News API (api.currentsapi.services), this action will gracefully fall back to listing latest news articles to ensure a valid response, since the Currents News API does not expose a users endpoint. - When the base_url points to Google Admin Directory API, it will list users from the domain/customer specified." }, { "slug": "CURRENTS_API_USER_USAGE_REPORT_GET", "name": "Search News Articles", "description": "Retrieve news articles from Currents News API with flexible search and filtering. Use this tool to: - Search for news articles by keywords or phrases - Filter articles by language, category, country, or date range - Retrieve paginated results for large result sets - Access comprehensive news data including titles, descriptions, authors, and publication dates This tool provides access to real-time global news content for information gathering, research, monitoring, or content curation purposes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "currents_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Currents News API Key", "type": "string", "description": "Your Currents News API key for authentication as a query parameter", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cursor", "name": "Cursor", "logo": "https://logos.composio.dev/api/cursor", "description": "Cursor is an AI-powered code editor built on VSCode. The API provides access to Cloud Agents, Admin, Analytics, and AI Code Tracking features.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CURSOR_GET_AGENT_CONVERSATION", "name": "Get Agent Conversation", "description": "Tool to retrieve the conversation history for a specific cloud agent. Use when you need to view the messages exchanged between the user and the agent. Returns error with status 404 if the agent is not found or access is denied." }, { "slug": "CURSOR_GET_ME", "name": "Get API Key Info", "description": "Tool to retrieve API key information including the key name, creation date, and owner email. Use when you need to verify API key details or validate authentication." }, { "slug": "CURSOR_LIST_AGENTS", "name": "List Agents", "description": "Tool to retrieve a paginated list of all Cursor Cloud agents. Use when you need to view existing agents, their status, or iterate through agents with pagination." }, { "slug": "CURSOR_LIST_MODELS", "name": "List Available Models", "description": "Tool to retrieve the list of available AI models in Cursor. Use when you need to discover which models are available for API requests." }, { "slug": "CURSOR_LIST_REPOSITORIES", "name": "List GitHub Repositories", "description": "Tool to list GitHub repositories accessible to the authenticated user. Use when you need to retrieve all repositories the user has access to through their Cursor account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cursor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Cursor API key. Generate from Dashboard → Integrations (Cloud Agents), Settings → Advanced (Admin API), or Team settings (Analytics API).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "customerio", "name": "Customer.io", "logo": "https://logos.composio.dev/api/customerio", "description": "Customer.io is a customer engagement platform that enables businesses to send targeted messages to their customers through various channels, including email, SMS, and push notifications.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CUSTOMERIO_ADD_PERSON_TO_GROUP", "name": "Add Person to Group", "description": "Tool to add people to a group in Customer.io. Groups represent objects like companies, accounts, or projects that people belong to. Use when you need to establish relationships between people and organizational entities." }, { "slug": "CUSTOMERIO_CREATE_ALIAS", "name": "Create Profile Alias", "description": "Tool to create an alias to merge multiple profiles in Customer.io. Use when you need to support multiple identifiers for a single person. The alias operation moves all data from the previous_id profile to the user_id profile, consolidating them into a single canonical profile." }, { "slug": "CUSTOMERIO_CUSTOMER_IO_SUPPRESS_PERSON", "name": "Suppress Customer Profile", "description": "Suppress a customer profile to permanently delete it and prevent re-adding with the same identifier. IMPORTANT: This action requires Track API credentials (Basic Auth with siteId:apiKey), not App API credentials. Suppression also deletes the customer profile - you don't need to call a separate delete endpoint. Use this for GDPR/CCPA compliance requests. The operation is irreversible and prevents any future attempts to re-add a person with the same identifier (email or ID)." }, { "slug": "CUSTOMERIO_GET_INTEGRATIONS", "name": "Get Integrations", "description": "Tool to retrieve a list of integrations in your workspace. Use when you need to discover configured integrations." }, { "slug": "CUSTOMERIO_GET_MESSAGES", "name": "Get Messages", "description": "Tool to retrieve a list of messages sent from your workspace. Use when you need paginated delivery metrics for messages, e.g., list email messages delivered between two timestamps." }, { "slug": "CUSTOMERIO_GET_SEGMENT_DETAILS", "name": "Get Segment Details", "description": "Tool to retrieve details of a specific segment. Use after identifying the segment ID from list segments." }, { "slug": "CUSTOMERIO_GET_SEGMENT_MEMBERSHIP", "name": "Get Segment Membership", "description": "Tool to retrieve people in a specific segment. Use when you need to page through segment membership after identifying segment ID." }, { "slug": "CUSTOMERIO_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a list of segments in your workspace. Use when you need to fetch all segments after configuring segment rules." }, { "slug": "CUSTOMERIO_GET_TRIGGER", "name": "Get Trigger", "description": "Retrieves details about a specific API-triggered broadcast, including trigger ID, campaign ID, creation timestamp, recipient filter criteria, and personalization data. Use this after triggering a broadcast to verify its configuration and check the data used for message personalization." }, { "slug": "CUSTOMERIO_GET_TRIGGERS", "name": "Get Broadcast Triggers", "description": "Retrieve all API trigger instances for a specific broadcast/campaign. Returns trigger metadata including IDs, creation timestamps, and processing status. Use after triggering a broadcast to list all its trigger executions." }, { "slug": "CUSTOMERIO_GET_WEBHOOKS", "name": "Get Customer.io Workspace Webhooks", "description": "Retrieves all reporting webhook configurations from the Customer.io workspace. Reporting webhooks send event notifications (message sent, opened, clicked, etc.) to your specified endpoints. Use this to list all configured webhooks and their settings including subscribed events, endpoints, and status. Returns an empty list if no webhooks are configured." }, { "slug": "CUSTOMERIO_IDENTIFY_PERSON", "name": "Identify Person", "description": "Tool to identify a person and assign traits to them in Customer.io. Creates a new person profile if it doesn't exist, or updates an existing one. Use when adding new users, updating user profiles, or tracking anonymous visitors. Either user_id or anonymous_id must be provided." }, { "slug": "CUSTOMERIO_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all Collections metadata. Use when you need to retrieve current details of each Collection in your workspace." }, { "slug": "CUSTOMERIO_LIST_IP_ADDRESSES", "name": "List IP Addresses", "description": "Tool to retrieve the list of IP addresses used by Customer.io for sending messages. Use when you need to allowlist or configure firewall rules for Customer.io's sending infrastructure." }, { "slug": "CUSTOMERIO_LIST_NEWSLETTERS", "name": "List Newsletters", "description": "Tool to list all newsletters. Use when paginating through newsletter metadata." }, { "slug": "CUSTOMERIO_LIST_SNIPPETS", "name": "List Snippets", "description": "Tool to list all snippets in your workspace. Use when you need to retrieve all reusable content snippets for templating or dynamic content insertion." }, { "slug": "CUSTOMERIO_LIST_TRANSACTIONAL_MESSAGES", "name": "List Transactional Messages", "description": "Lists all transactional message templates in your Customer.io workspace. Returns the ID and name (trigger name) for each template. Use this when you need to discover available transactional message templates or retrieve their IDs for sending messages via the API." }, { "slug": "CUSTOMERIO_REPORT_PUSH_EVENTS", "name": "Report Push Notification Events", "description": "Tool to report push notification events to Customer.io. Use when you need to track device-side push events (opened, converted, delivered). IMPORTANT: This endpoint is deprecated. Use the metrics endpoint instead for reporting push events. This action requires Track API credentials (Basic Auth with siteId:apiKey), not App API credentials." }, { "slug": "CUSTOMERIO_SEND_BATCH", "name": "Send Batch CDP Calls", "description": "Send multiple CDP calls (identify, track, page, screen, group, alias) in a single batch request. Use this to efficiently send multiple events or profile updates in one API call. The batch endpoint supports up to 500KB total with 32KB per individual call. Each call in the batch can be a different type (identify, track, page, screen, group, or alias). Requirements by call type: - identify/track/page/screen: Require userId or anonymousId - group: Requires groupId (and userId or anonymousId) - track: Requires event name - alias: Requires userId and previousId Note: This action uses the CDP API base URL (https://cdp.customer.io/v1) which differs from the Track API base URL used by some other Customer.io actions." }, { "slug": "CUSTOMERIO_TRACK_EVENT", "name": "Track Event", "description": "Tool to send an event associated with a person in Customer.io. Records actions users take, along with properties that describe the action. Use when you need to track user behavior, conversions, or custom events for segmentation and campaigns." }, { "slug": "CUSTOMERIO_TRACK_PAGE", "name": "Track Page View", "description": "Tool to track page view events for website visitors in Customer.io. Use when recording user navigation or page impressions on your website. IMPORTANT: This action requires CDP API credentials (Bearer token), not Track API or App API credentials. Either user_id or anonymous_id must be provided to identify the viewer. Include properties like url, title, and path to enrich analytics and segmentation capabilities." }, { "slug": "CUSTOMERIO_TRACK_SCREEN", "name": "Track Screen View", "description": "Track mobile screen views in Customer.io for analytics and user journey tracking. Records when a user views a screen in your mobile app. Use this when you need to: - Track user navigation patterns in mobile apps - Record screen views for engagement analytics - Trigger workflows based on specific screen visits - Build user journey maps based on screen flow Requirements: - Provide either userId (for known users) or anonymousId (for anonymous users) - Screen name is required to identify which screen was viewed - Optionally include properties for additional context (platform, category, etc.) Note: This endpoint uses the CDP API (cdp.customer.io), not the standard App API." }, { "slug": "CUSTOMERIO_TRIGGER_BROADCAST", "name": "Trigger Broadcast", "description": "Manually trigger a Customer.io broadcast/campaign to send messages to a defined audience. Use this when you need to: - Send a pre-configured broadcast to specific recipients (by ID or email) - Override the broadcast's default UI-defined audience with custom filtering - Provide personalization data for Liquid template variables - Send individualized content using per_user_data Requirements: - broadcast_id: Must be a valid broadcast ID from Customer.io (find in broadcast's Triggering Details) - Audience: Provide exactly ONE of: recipients, ids, emails, per_user_data, or data_file_url Rate Limits: This endpoint allows one request every 10 seconds per broadcast." }, { "slug": "CUSTOMERIO_UNSUBSCRIBE_DELIVERY", "name": "Unsubscribe from Delivery", "description": "Tool to handle custom unsubscribe requests for email deliveries in Customer.io. Use when you need to unsubscribe a person from emails and attribute the action to a specific delivery. IMPORTANT: This action requires Track API credentials (Basic Auth with siteId:apiKey), not App API credentials. The unsubscribe action sets the person's unsubscribed attribute to true." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "customerio_app_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "App API Key", "type": "string", "description": "The App API Key used for authenticating requests to the Customer.io App API.", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "The region of the Customer.io account. Leave empty for Global, use '-eu' for EU region.", "required": false, "default": "" } ] } } } ] }, { "slug": "customgpt", "name": "Customgpt", "logo": "https://logos.composio.dev/api/customgpt", "description": "CustomGPT.ai is a platform that enables users to create and integrate AI-powered chatbots tailored to their specific data and requirements.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CUSTOMGPT_ACTIVATE_PERSONA_VERSION", "name": "Activate Persona Version", "description": "Restore a previous persona version for a CustomGPT agent. Activates a previous persona version, making it the current active persona. This creates a new version entry in the history (it doesn't overwrite), preserving the full audit trail. Use this to roll back to a known-good configuration. Requires Custom plan." }, { "slug": "CUSTOMGPT_ADD_SOURCE", "name": "Add Source to Project", "description": "Add a data source to a CustomGPT agent's knowledge base. Connects content via sitemap URL, file upload, or integration. The system begins indexing immediately after creation. Use when adding documentation, FAQs, or knowledge content to an agent." }, { "slug": "CUSTOMGPT_CLONE_PROJECT", "name": "Clone CustomGPT Project", "description": "Tool to clone a CustomGPT agent (project). Creates a complete copy of an existing agent, including its knowledge base, persona, and settings. Use this to create variations of an agent for testing, or to use an existing agent as a template for a new one." }, { "slug": "CUSTOMGPT_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation session for a CustomGPT agent. Use this when starting a new chat interaction - it returns a session ID that you'll use to send messages. Optionally provide a name to help identify the conversation later." }, { "slug": "CUSTOMGPT_CREATE_PROJECT", "name": "Create CustomGPT Project", "description": "Tool to create a new CustomGPT agent from a sitemap URL or file upload. The agent immediately begins processing the content to build its knowledge base. Use when you need to create a new AI agent with custom knowledge from web content or documents. Either sitemap_path or file must be provided." }, { "slug": "CUSTOMGPT_DELETE_PAGE", "name": "Delete Page from Agent", "description": "Tool to delete a document from a CustomGPT agent's knowledge base. Permanently removes a document and the agent will no longer reference this content when answering questions. Use this to remove outdated or incorrect information. Warning: This action cannot be undone." }, { "slug": "CUSTOMGPT_DELETE_PROJECT", "name": "Delete CustomGPT Project", "description": "Tool to delete a CustomGPT project by ID. Use when you need to permanently remove an existing agent after confirming the ID." }, { "slug": "CUSTOMGPT_DELETE_PROJECT_LICENSE", "name": "Delete CustomGPT Project License", "description": "Deletes a license from a CustomGPT project/agent. Requires numeric project ID and license ID. This action is idempotent - it succeeds even if the license doesn't exist (404). The project must have licenses enabled in its plan for this endpoint to work properly." }, { "slug": "CUSTOMGPT_DELETE_SOURCE", "name": "Delete CustomGPT Source", "description": "Tool to delete a data source from a CustomGPT agent. Removes the source and all its documents from the agent's knowledge base. Use this to disconnect content that's no longer relevant or to clean up after testing." }, { "slug": "CUSTOMGPT_EXPORT_LEADS", "name": "Export Leads", "description": "Export leads from a CustomGPT project. Returns lead information captured from conversations including email addresses, names, phone numbers, and custom fields. Supports pagination and date range filtering. Use this to sync leads with CRM or marketing tools." }, { "slug": "CUSTOMGPT_GET_MESSAGE", "name": "Get Message", "description": "Tool to get message details from a CustomGPT conversation. Returns the complete details for a single message, including the user's prompt, the agent's response, timestamps, citations, and any attached metadata." }, { "slug": "CUSTOMGPT_GET_MESSAGE_TRUST_SCORE", "name": "Get Message Trust Score", "description": "Tool to retrieve verification trust score for a message in a CustomGPT conversation. Returns a score calculated by checking how well the agent's claims are supported by source documents. Higher scores indicate better-grounded responses with stronger evidence." }, { "slug": "CUSTOMGPT_GET_PAGE_METADATA", "name": "Get Page Metadata", "description": "Tool to get document metadata including title, source URL, word count, and custom metadata fields. Use this to display document information or manage your knowledge base." }, { "slug": "CUSTOMGPT_GET_PLUGINS", "name": "Get Agent Plugins", "description": "Tool to retrieve plugin details for a specific CustomGPT agent (project). Use when you need to inspect plugin configuration, status, and metadata for an agent." }, { "slug": "CUSTOMGPT_GET_PROJECT", "name": "Get CustomGPT Project", "description": "Tool to get agent details. Returns the full configuration and current status for a specific agent. Use this to check processing status, view settings, or retrieve metadata about the agent." }, { "slug": "CUSTOMGPT_GET_PROJECT_LICENSE", "name": "Get Project License", "description": "Tool to retrieve a license for a specific project. Use when you need to fetch license details by license ID." }, { "slug": "CUSTOMGPT_GET_PROJECT_SETTINGS", "name": "Get Project Settings", "description": "Retrieve configuration settings for a specific CustomGPT agent/project. Returns settings including: chatbot avatar, background, default prompt, example questions, response source, language, and branding preferences. Use this to inspect agent configuration, audit settings, or retrieve values before making updates. Note: Some newly created projects may not have settings initialized yet and will return a 404." }, { "slug": "CUSTOMGPT_GET_REPORT_ANALYSIS", "name": "Get Analytics Chart Data", "description": "Tool to retrieve analytics chart data for a CustomGPT project. Returns time-series data formatted for charts, with daily or weekly breakdowns of key metrics including conversation counts, query counts, and queries-per-conversation ratios. Use this to generate usage reports, track project engagement over time, or visualize chatbot performance trends." }, { "slug": "CUSTOMGPT_GET_REPORT_CONVERSATIONS", "name": "Get Conversation Analytics", "description": "Tool to get conversation analytics for a CustomGPT project. Returns conversation metrics including total conversations, average queries per conversation, and other engagement statistics. Use this to understand how users engage with your agent and analyze conversation patterns over time." }, { "slug": "CUSTOMGPT_GET_REPORT_INTELLIGENCE", "name": "Get Customer Intelligence Report", "description": "Tool to get customer intelligence for a CustomGPT project. Returns AI-analyzed insights about users including common intents, emotional sentiment, frequently discussed topics, and emerging trends. Use this to understand what users are asking about and identify patterns in user behavior." }, { "slug": "CUSTOMGPT_GET_REPORT_TRAFFIC", "name": "Get Traffic Analytics Report", "description": "Tool to retrieve traffic analytics for a CustomGPT agent/project. Returns user traffic metrics including unique visitors, session counts, geographic distribution, and device types. Use this to understand who's using your agent and how they're accessing it." }, { "slug": "CUSTOMGPT_GET_STATS", "name": "Get Agent Statistics", "description": "Tool to get agent statistics. Returns usage metrics and performance statistics for an agent, including total conversations, query counts, document statistics, and processing information. Use when you need to monitor agent performance or generate usage reports." }, { "slug": "CUSTOMGPT_GET_USAGE_LIMITS", "name": "Get Usage Limits", "description": "Get account usage limits showing current usage vs. maximum allowed for projects, storage credits, and API queries. This returns how many projects, storage credits (characters indexed), and queries you've used compared to your account's maximum limits. Use this to monitor quota consumption." }, { "slug": "CUSTOMGPT_GET_USER_PROFILE", "name": "Get Current User Profile", "description": "Tool to retrieve the current user's profile information. Use when you need to display or verify authenticated user details after login." }, { "slug": "CUSTOMGPT_LIST_CONVERSATION_MESSAGES", "name": "List Conversation Messages", "description": "Retrieves all messages from a CustomGPT conversation, including both user queries and AI responses. Use this to view the complete chat history for a specific conversation session. Returns an empty list if the conversation doesn't exist or has no messages." }, { "slug": "CUSTOMGPT_LIST_PAGES", "name": "List Agent Documents", "description": "Lists all documents in a CustomGPT agent's knowledge base. Returns indexed content including webpages, PDFs, and uploaded files that the agent can reference. Supports filtering by crawl/index status and pagination. Use this to audit knowledge sources or verify successful document ingestion." }, { "slug": "CUSTOMGPT_LIST_PERSONAS", "name": "List Persona Versions", "description": "Tool to list persona versions for a CustomGPT agent. Use when you need to view the version history of an agent's persona. Every time the persona is updated, a snapshot is automatically saved, allowing you to view changes over time or restore a previous version. Results are paginated. Requires Custom plan." }, { "slug": "CUSTOMGPT_LIST_PROJECT_LICENSES", "name": "List CustomGPT Project Licenses", "description": "List all licenses for a CustomGPT project/agent. Returns an array of license objects with details like ID, type, status, and timestamps. Returns an empty array if the project has no licenses or if licenses are not enabled for the project. Use this when you need to check what licenses exist for a specific project/agent." }, { "slug": "CUSTOMGPT_LIST_PROJECTS", "name": "List CustomGPT Projects", "description": "Lists all CustomGPT projects (agents) for the authenticated user. Returns projects with full details including ID, name, type, chat status, and timestamps. Supports pagination via the 'page' parameter. Use this to discover available projects or iterate through all projects." }, { "slug": "CUSTOMGPT_LIST_SOURCES", "name": "List Agent Sources", "description": "Tool to list all data sources connected to an agent. Returns sources from various origins like sitemaps, Google Drive folders, SharePoint sites, or uploaded files. Use this to manage what content feeds into an agent's knowledge base." }, { "slug": "CUSTOMGPT_REINDEX_PAGE", "name": "Reindex Page", "description": "Tool to reindex a document in CustomGPT knowledge base. Re-crawls and re-indexes a URL-based document to update its content. Use this when the source content has changed and you want the agent to use the updated version. Only works for URL-based documents." }, { "slug": "CUSTOMGPT_SEARCH_TEAM_MEMBERS", "name": "Search Team Members", "description": "Tool to search for team members by email address or user ID. Use this to find users when assigning permissions or managing team access. Requires Owner or Admin role to execute." }, { "slug": "CUSTOMGPT_SUBMIT_MESSAGE_FEEDBACK", "name": "Submit Message Feedback", "description": "Tool to submit feedback (thumbs up/down) for a message in a CustomGPT conversation. Use this to record user satisfaction signals that help identify which AI responses are helpful and which need improvement. Feedback can be changed by submitting a new reaction value." }, { "slug": "CUSTOMGPT_UPDATE_PAGE_METADATA", "name": "Update Page Metadata", "description": "Update document metadata for a specific page in a CustomGPT project. Updates custom metadata fields such as title, description, URL, and image that help organize and manage your knowledge base. Use when you need to add tags, categories, or other organizational information to documents." }, { "slug": "CUSTOMGPT_UPDATE_PROJECT", "name": "Update Project", "description": "Updates an existing CustomGPT agent's name or configuration settings. Use this to rename an agent or modify its basic properties without affecting its knowledge base. Returns the complete updated project details including all metadata." }, { "slug": "CUSTOMGPT_UPDATE_PROJECT_LICENSE", "name": "Update Project License", "description": "Updates the name of an existing license for a CustomGPT project/agent. Prerequisites: - The project must have licenses enabled in its plan - Both project ID and license ID must be valid and exist - Use List Projects to get valid project IDs - Use List Project Licenses to get valid license IDs for a project This action only updates the license name. Other license properties cannot be modified through this endpoint." }, { "slug": "CUSTOMGPT_UPDATE_PROJECT_SETTINGS", "name": "Update Project Settings", "description": "Update CustomGPT agent configuration settings. Updates persona instructions, response format, citation style, branding, and deployment settings. Only include fields you want to change - omitted fields retain their current values. Use this to configure agent behavior, customize appearance, or adjust user experience settings." }, { "slug": "CUSTOMGPT_UPDATE_SOURCE", "name": "Update Source Settings", "description": "Update source settings for a CustomGPT agent data source. Configure how the source is indexed and kept up to date by adjusting auto-sync frequency, crawl depth, file filters, and refresh behavior. Use this to fine-tune sitemap crawling (JavaScript execution, image extraction), control which pages are added or removed during syncs, and set up custom refresh schedules." }, { "slug": "CUSTOMGPT_UPDATE_USER_PROFILE", "name": "Update User Profile", "description": "Updates the authenticated user's profile information in CustomGPT. Use this action to modify profile details such as the user's display name, email address, or profile photo URL. All fields are optional - only the fields you provide will be updated. The action returns the complete updated user profile." }, { "slug": "CUSTOMGPT_VERIFY_MESSAGE", "name": "Verify Message Accuracy", "description": "Tool to verify message accuracy by triggering a fact-checking verification process. Use when you need to verify claims in a conversation message against source documents. The system compares each claim and reports which claims are supported, partially supported, or unsupported." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "customgpt_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CustomGPT.ai API Key", "type": "string", "description": "The API key used for authenticating requests to the CustomGPT.ai API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "customjs", "name": "Customjs", "logo": "https://logos.composio.dev/api/customjs", "description": "CustomJS is a code-first automation platform that enables seamless integration of custom JavaScript logic into various systems and technologies, allowing users to extend applications by writing functions for tasks like sending emails, generating PDFs, or updating CRM data fields.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "CUSTOMJS_AUTHENTICATE_API_KEY", "name": "Authenticate CustomJS API Key", "description": "Authenticate and validate a CustomJS API key. Returns workspace details, request limits, and decoded JWT token information including user email. Use this to verify an API key is valid before making other CustomJS API calls." }, { "slug": "CUSTOMJS_CONVERT_HTML_TO_PDF", "name": "Convert HTML to PDF", "description": "Convert HTML content to a PDF document. Use this tool to generate PDF files from raw HTML markup. Supports: - Complete HTML documents or fragments - Inline CSS styling (colors, fonts, tables, borders, backgrounds) - Unicode characters and special symbols - Multi-page documents Returns raw PDF bytes suitable for file storage or download." }, { "slug": "CUSTOMJS_CONVERT_HTML_TO_PNG", "name": "Convert HTML to PNG", "description": "Tool to convert HTML string to PNG image. Use when you need a PNG from HTML after preparing your markup." }, { "slug": "CUSTOMJS_MERGE_PDFS", "name": "Merge multiple PDFs into one", "description": "Merge multiple PDF files from URLs into a single PDF document. Use this tool when you need to combine two or more PDF documents into one. The PDFs are merged in the order provided. All input URLs must be publicly accessible. Returns a downloadable merged PDF file." }, { "slug": "CUSTOMJS_RUN_PUPPETEER_SCRIPT", "name": "Run Puppeteer Script", "description": "Execute a Puppeteer script in a headless browser and capture a screenshot. Use this tool for browser automation tasks such as navigating to URLs, interacting with page elements, extracting data, or capturing visual snapshots of web pages. The script runs in a sandboxed Puppeteer environment with access to a 'page' object." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "customjs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "CustomJS API Key", "type": "string", "description": "The API key used for authenticating requests to the CustomJS API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "cutt_ly", "name": "Cutt.ly", "logo": "https://logos.composio.dev/api/cutt_ly", "description": "Cutt.ly is a URL shortening service that allows users to shorten, manage, and analyze URLs.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "CUTT_LY_SHORTEN_URL", "name": "Shorten URL", "description": "Tool to shorten a URL using Cutt.ly Regular API. Creates a shortened link that redirects to the original URL. Use when you need to create a short link for sharing. Supports custom aliases and additional options." }, { "slug": "CUTT_LY_VIEW_LAST_SHORTENED_URLS", "name": "View Last Shortened URLs", "description": "This action retrieves a list of recently shortened URLs from your Cutt.ly account. It allows users to view their latest shortened links and their details. Note: Due to API limitations, this action may not return all historical URLs. For complete history, please use the Cutt.ly dashboard." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "cuttly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Cutt.ly API Key", "type": "string", "description": "Your API key for authenticating requests to the Cutt.ly API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dacast", "name": "Dacast", "logo": "https://logos.composio.dev/api/dacast", "description": "Dacast's Video Streaming Software is the leading Online Video and Hosting Platform. Stream live and on demand video leveraging a video API and 24/7 support.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dacast_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "You can get your API Key for Dacast by signing in to your account and navigating to Settings, then Integrations (https://app.dacast.com/settings/integrations). API access is limited to Scale or Custom plan customers.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dadata_ru", "name": "DaData.ru", "logo": "https://logos.composio.dev/api/dadata_ru", "description": "DaData provides APIs for data validation, standardization, and enrichment, including address parsing, company information retrieval, and more.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 63, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DADATA_RU_CLEAN_ADDRESS", "name": "Clean Address", "description": "Clean and standardize a Russian postal address. Converts a free-form address string into a structured object with parsed components (region, city, street, house, etc.), geographic coordinates, postal code, and quality indicators. Useful for address validation, geocoding, and data normalization." }, { "slug": "DADATA_RU_CLEAN_BIRTHDATE", "name": "Clean Birthdate", "description": "Standardize and validate birthdate strings. Accepts various formats (DD.MM.YYYY, M/D/YY, Russian text dates) and normalizes to DD.MM.YYYY. Returns quality code indicating parse success." }, { "slug": "DADATA_RU_CLEAN_EMAIL", "name": "Clean Email", "description": "Standardize and validate an email address. Fixes typos in domains (e.g., 'gnail.con' → 'gmail.com'), validates format, and classifies as PERSONAL, CORPORATE, ROLE, or DISPOSABLE. Use to clean user-provided emails before storing or sending mail." }, { "slug": "DADATA_RU_CLEAN_NAME", "name": "Clean Name (FIO)", "description": "Tool to standardize and parse full names (FIO), detect gender, and return grammatical cases. Use when you need structured name parsing and declensions from raw FIO inputs." }, { "slug": "DADATA_RU_CLEAN_PASSPORT", "name": "Clean Passport", "description": "Tool to validate a Russian passport number against the official registry. Use after collecting passport details." }, { "slug": "DADATA_RU_CLEAN_PHONE", "name": "Clean Phone", "description": "Tool to standardize and validate phone numbers. Use when you need to convert arbitrary phone inputs into a uniform, validated 11-digit format for further processing." }, { "slug": "DADATA_RU_CLEAN_RECORD", "name": "Clean Composite Record", "description": "Tool to standardize composite records with multiple contact data fields in a single request. Use when you need to clean records containing combinations of name, address, phone, email, passport, birthdate, or vehicle data. More efficient than calling individual clean actions separately for multi-field records." }, { "slug": "DADATA_RU_CLEAN_VEHICLE", "name": "Clean Vehicle", "description": "Standardize and recognize vehicle make/model from free-form text input. Returns normalized brand and model names with a quality confidence code. Use this to clean user-entered vehicle descriptions like 'ford focus' or 'land r0ver'." }, { "slug": "DADATA_RU_FIND_ADDRESS", "name": "Find Address", "description": "Retrieve full Russian address details by FIAS ID, KLADR code, or cadastral number. Returns structured data including postal code, region, city, street, coordinates, and administrative codes (OKATO, OKTMO, tax office). Use this when you have an address identifier and need the complete address breakdown." }, { "slug": "DADATA_RU_FIND_BANK", "name": "Find Bank", "description": "Tool to find bank by BIC, SWIFT, INN, or registration number. Use when you need full bank details for a specific identifier. Provide optional KPP for branch-level queries." }, { "slug": "DADATA_RU_FIND_CAR_BRAND", "name": "Find Car Brand", "description": "Find car brand details by identifier. Returns brand information including English and Russian names. Use this when you have a car brand ID (like 'FORD', 'BMW', 'TOYOTA') and need its details. For autocomplete/search by partial name, use suggest_car_brand instead." }, { "slug": "DADATA_RU_FIND_COMPANY_BY_EMAIL", "name": "Find Company By Email", "description": "Find companies by corporate email address domain. Extracts company registration details including INN, OGRN, name, location, and business activity from the email domain." }, { "slug": "DADATA_RU_FIND_COUNTRY", "name": "Find Country", "description": "Tool to find country details by ISO or numeric code. Use when you have a valid country code and need full metadata." }, { "slug": "DADATA_RU_FIND_COURT_BY_ID", "name": "Find Court by ID", "description": "Find court by ID or code. Returns court details including name, address, and jurisdiction. Use when you have a specific court code and need complete court information." }, { "slug": "DADATA_RU_FIND_CURRENCY", "name": "Find Currency", "description": "Tool to find currency details by ISO 4217 code. Use when you have a currency code and need its full metadata." }, { "slug": "DADATA_RU_FIND_DELIVERY", "name": "Find Delivery City IDs", "description": "Retrieves delivery service city identifiers (CDEK, Boxberry, DPD) for a given Russian city by KLADR code or FIAS ID. Use this tool when integrating with Russian delivery services and you need to map a city to the corresponding IDs used by CDEK, Boxberry, or DPD. Returns an empty suggestions list if the city is not found." }, { "slug": "DADATA_RU_FIND_FIAS_BY_ID", "name": "Find Address by FIAS ID", "description": "Find address by FIAS ID from the Federal Information Address System (FIAS/GAR). Returns structured address details including postal code, region, city, street, coordinates, and administrative codes. Use when you have a FIAS GUID and need the complete address breakdown." }, { "slug": "DADATA_RU_FIND_FMS_UNIT", "name": "Find FMS Unit", "description": "Look up Russian passport issuing authority (FMS unit) by subdivision code. Returns all departments associated with the given code (e.g., main office, passport desks). Use SUGGEST_FMS_UNIT action for text-based search by name." }, { "slug": "DADATA_RU_FIND_FNS_UNIT", "name": "Find FNS Unit by Code", "description": "Find Russian tax inspection (FNS unit) by exact code or INN. Returns inspection details including address, contact info, payment details, and parent unit information. Use SUGGEST_FNS_UNIT action for text-based search by name." }, { "slug": "DADATA_RU_FIND_FTS_UNIT", "name": "Find FTS Unit", "description": "Find a Russian Federal Customs Service (FTS) unit by its 8-digit code. Returns detailed information including the unit's name, address, contact details (phone, fax, email), and registration numbers (INN, OGRN, OKPO). Use this when you need to look up customs office details by a known code." }, { "slug": "DADATA_RU_FIND_MEDICAL_POSITION_BY_ID", "name": "Find Medical Position By ID", "description": "Tool to find medical position by ID code. Use when you have a medical position ID and need its full name and details." }, { "slug": "DADATA_RU_FIND_MKTU", "name": "Find MKTU", "description": "Look up MKTU (International Classification of Goods and Services/Nice Classification) items by their numeric code. Returns detailed information including class number, item number, and names in Russian, English, and French. Use this when you have a specific MKTU code and need its full details. For searching by keywords/descriptions, use the suggest_mktu action instead." }, { "slug": "DADATA_RU_FIND_OKPD2_BY_ID", "name": "Find OKPD2 by ID", "description": "Look up OKPD2 (Russian Classification of Products by Economic Activity) entries by their exact code. Use this to get the official name, section, and classification details for a known OKPD2 code. Returns the section, index, code, and description of the product classification. For searching by product name/description, use the suggest_okpd2 action instead." }, { "slug": "DADATA_RU_FIND_OKPDTR_POSITION", "name": "Find OKPDTR Position", "description": "Find job position by OKPDTR code. Returns position name and tariff grade. Use this to retrieve official position title and classification details for a known OKPDTR code." }, { "slug": "DADATA_RU_FIND_OKPDTR_PROFESSION", "name": "Find OKPDTR Profession", "description": "Tool to find profession details by OKPDTR code. Returns profession name and tariff grade from the All-Russian Classifier of Worker Professions. Use when you have an OKPDTR code and need full profession metadata." }, { "slug": "DADATA_RU_FIND_OKTMO_BY_ID", "name": "Find Territory by OKTMO", "description": "Find Russian municipal territory by OKTMO code. Returns municipality name and administrative hierarchy (district and settlement levels). Use when you have a specific OKTMO code and need to look up the corresponding territory details." }, { "slug": "DADATA_RU_FIND_OKVED2", "name": "Find OKVED2", "description": "Look up OKVED2 (Russian Classification of Economic Activities) entries by their exact code. Use this to get the official name and classification details for a known OKVED2 code. Returns the section, index, and description of the economic activity. For searching by activity name/description, use the suggest_okved2 action instead." }, { "slug": "DADATA_RU_FIND_PARTY", "name": "Find Company or Entrepreneur", "description": "Find company or individual entrepreneur details by INN or OGRN from the Russian Federal Tax Service registry. Returns full registration data including legal name, address, status, management, and organizational form. Use KPP parameter to filter by specific branch." }, { "slug": "DADATA_RU_FIND_PARTY_BY", "name": "Find Belarus Party by UNP", "description": "Tool to find a Belarusian company or entrepreneur by UNP. Use when you have the UNP and need the full registry record. Example: \"Find party by UNP = 190657494\"." }, { "slug": "DADATA_RU_FIND_PARTY_KZ", "name": "Find Kazakhstan Company by BIN", "description": "Look up Kazakhstan company or entrepreneur details by BIN (Business Identification Number). Returns registration data including name, address, director, activity codes, and classification codes. Use when you have a 12-digit BIN and need official registry information for a KZ entity." }, { "slug": "DADATA_RU_FIND_POSTAL_OFFICE", "name": "Find Postal Office", "description": "Find Russian postal office details by postal code (index). Returns office name, address, type, and activation date. Use when you need to look up postal office information for a specific postal code." }, { "slug": "DADATA_RU_FIND_POSTAL_UNIT_BY_ID", "name": "Find Postal Unit By ID", "description": "Find postal unit by postal code. Returns postal office details including address and schedule. Use when you have a specific postal code and need complete information about that postal office location." }, { "slug": "DADATA_RU_GEOLOCATE_ADDRESS", "name": "Geolocate Address", "description": "Tool to find nearest addresses by geographic coordinates. Use when you need address suggestions around a specific location." }, { "slug": "DADATA_RU_GEOLOCATE_POSTAL_UNIT", "name": "Geolocate Postal Unit", "description": "Tool to find nearest postal units by geographic coordinates. Use when you need to locate post offices near a specific location." }, { "slug": "DADATA_RU_GET_PROFILE_BALANCE", "name": "Get Profile Balance", "description": "Tool to retrieve current DaData account balance. Use before making API calls that consume funds." }, { "slug": "DADATA_RU_GET_PROFILE_STATISTICS", "name": "Get Profile Statistics", "description": "Tool to get daily aggregated usage statistics per DaData API service. Use when you need a breakdown of calls and remaining balances for a specific date." }, { "slug": "DADATA_RU_GET_REFERENCE_VERSIONS", "name": "Get Reference Versions", "description": "Tool to retrieve the last update dates for DaData reference datasets (FIAS, EGRUL, banks, etc.). Use before performing operations that depend on the currency of reference data." }, { "slug": "DADATA_RU_IP_LOCATE_ADDRESS", "name": "IP Locate Address", "description": "Geolocate a Russian IP address to determine its city/region. Returns detailed location data including postal code, city, region, federal district, timezone, and coordinates. Only works for IP addresses registered in Russia; non-Russian IPs will return null. Accuracy is 60-80%." }, { "slug": "DADATA_RU_SUGGEST_ADDRESS", "name": "Suggest Address", "description": "Tool to autocomplete and suggest addresses. Use when user types partial address fragments to retrieve possible address completions." }, { "slug": "DADATA_RU_SUGGEST_BANK", "name": "Suggest Bank", "description": "Tool to autocomplete and suggest banks by partial details. Use when you need to find Russian banks by name, BIC, INN, SWIFT, or registry number." }, { "slug": "DADATA_RU_SUGGEST_CAR_BRAND", "name": "Suggest Car Brand", "description": "Tool to suggest car brands. Use when you need to autocomplete or correct partial car brand names in Russian or English." }, { "slug": "DADATA_RU_SUGGEST_COUNTRY", "name": "Suggest Country", "description": "Tool to suggest countries based on user input. Use when you need country autocompletion or search." }, { "slug": "DADATA_RU_SUGGEST_COURT", "name": "Suggest Court", "description": "Tool to suggest Russian courts by name or location. Use when user types partial court name or provides filters to retrieve possible court suggestions." }, { "slug": "DADATA_RU_SUGGEST_CURRENCY", "name": "Suggest Currency", "description": "Tool to suggest currencies by ISO 4217 code or name. Use when you need currency autocompletion." }, { "slug": "DADATA_RU_SUGGEST_EMAIL", "name": "Suggest Email", "description": "Tool to autocomplete and suggest email addresses. Use when user provides an email prefix and you need possible completions." }, { "slug": "DADATA_RU_SUGGEST_FIAS", "name": "Suggest FIAS Address", "description": "Tool to suggest addresses from FIAS/GAR database. Use when you need official Russian addresses that strictly match the federal address system (FIAS/GAR)." }, { "slug": "DADATA_RU_SUGGEST_FMS_UNIT", "name": "Suggest FMS Unit", "description": "Tool to autocomplete and suggest passport issuing authorities. Use when you need to lookup Russian FMS units by partial code or name." }, { "slug": "DADATA_RU_SUGGEST_FNS_UNIT", "name": "Suggest FNS Unit", "description": "Tool to suggest Russian tax inspection units by partial name or code. Use when you need to identify a tax inspection authority from incomplete user input. For example, use query='7700' to retrieve units with code 7700." }, { "slug": "DADATA_RU_SUGGEST_FTS_UNIT", "name": "Suggest FTS Unit", "description": "Tool to autocomplete and suggest Russian customs (FTS) units. Use when user provides partial name or code to retrieve matching offices." }, { "slug": "DADATA_RU_SUGGEST_MEDICAL_POSITION", "name": "Suggest Medical Position", "description": "Tool to autocomplete and suggest medical positions and specialties. Use when you need to find medical worker positions by partial name or code." }, { "slug": "DADATA_RU_SUGGEST_METRO", "name": "Suggest Metro", "description": "Tool to suggest metro stations. Use when you need to autocomplete metro station names in Russian cities." }, { "slug": "DADATA_RU_SUGGEST_MKTU", "name": "Suggest MKTU", "description": "Autocomplete and search for MKTU (Nice Classification) codes used for trademark registration. MKTU is the International Classification of Goods and Services for trademark purposes. Use this to find class codes and item numbers by searching names in Russian, English, or by class number. Returns multilingual names (Russian, English, French) and classification codes." }, { "slug": "DADATA_RU_SUGGEST_NAME", "name": "Suggest Name", "description": "Tool to autocomplete and suggest full names (FIO). Use when user types partial name fragments to retrieve possible full name completions." }, { "slug": "DADATA_RU_SUGGEST_OKPD2", "name": "Suggest OKPD2", "description": "Tool to autocomplete and suggest Russian product classification codes (OKPD2). Use when you need to find or validate OKPD2 codes by partial queries." }, { "slug": "DADATA_RU_SUGGEST_OKPDTR_POSITION", "name": "Suggest OKPDTR Position", "description": "Tool to autocomplete and suggest Russian job positions from OKPDTR classifier. Use when you need to find or validate OKPDTR position codes by partial queries." }, { "slug": "DADATA_RU_SUGGEST_OKPDTR_PROFESSION", "name": "Suggest OKPDTR Profession", "description": "Tool to autocomplete and suggest professions from OKPDTR classifier. Use when you need to find profession codes and names by partial queries." }, { "slug": "DADATA_RU_SUGGEST_OKTMO", "name": "Suggest OKTMO", "description": "Suggest Russian municipal territory codes (OKTMO) by code prefix or partial name. OKTMO (Общероссийский классификатор территорий муниципальных образований) is a classifier for Russian municipal territories. Use this tool to: - Autocomplete OKTMO codes when user starts typing a code prefix (e.g., '45' for Moscow) - Look up a specific OKTMO code to get territory details - Search for municipalities by partial code match Returns district (area) and settlement (subarea) information for each match." }, { "slug": "DADATA_RU_SUGGEST_OKVED2", "name": "Suggest OKVED2", "description": "Tool to suggest OKVED2 codes by text query. Use when you have a fragment of a Russian economic activity code or name and need structured suggestions." }, { "slug": "DADATA_RU_SUGGEST_PARTY", "name": "Suggest Party", "description": "Tool to autocomplete and suggest Russian companies or entrepreneurs. Use when you have a partial name, INN, OGRN, or address and need structured suggestions." }, { "slug": "DADATA_RU_SUGGEST_PARTY_BY", "name": "Suggest Belarus Party", "description": "Tool to autocomplete and suggest Belarusian companies or entrepreneurs. Use when you have a partial name, UNP, or address and need structured suggestions from Belarus EGRUL registry." }, { "slug": "DADATA_RU_SUGGEST_PARTY_KZ", "name": "Suggest Kazakhstan Company", "description": "Tool to autocomplete and suggest Kazakhstan companies or entrepreneurs. Use when you have a partial company name, BIN, or address and need structured suggestions from Kazakhstan business registry." }, { "slug": "DADATA_RU_SUGGEST_POSTAL_OFFICE", "name": "Suggest Postal Office", "description": "Suggests Russian Post offices by postal code or address. Returns postal code, address, and schedule. Use for autocompleting postal codes or finding post office details like working hours and location." }, { "slug": "DADATA_RU_SUGGEST_POSTAL_UNIT", "name": "Suggest Postal Unit", "description": "Suggests Russian Post offices (Почта России) by postal code or address. Use for autocompleting postal codes, finding post offices by address fragments, or getting details like working hours and location coordinates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dadata_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DaData API Key", "type": "string", "description": "The API key required for authenticating requests to the DaData API.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "DaData Secret Key", "type": "string", "description": "The secret key required for authenticating requests to the DaData API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "daffy", "name": "Daffy", "logo": "https://logos.composio.dev/api/daffy", "description": "Daffy is a modern platform for charitable giving, offering a donor-advised fund that allows users to set money aside, watch it grow tax-free, and donate to over 1.7 million charities in the U.S.", "category": "fundraising", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DAFFY_CREATE_GIFT", "name": "Create Gift", "description": "Tool to create a new charitable gift. Use when you have recipient details and amount ready." }, { "slug": "DAFFY_GET_BALANCE", "name": "Get Balance", "description": "Retrieve the authenticated user's Daffy fund balance information. Returns four key financial metrics: - Total fund amount - Pending deposits (not yet processed) - Portfolio balance (invested funds) - Available balance (ready for donations) No parameters required. Returns balance information for the authenticated user only." }, { "slug": "DAFFY_GET_CONTRIBUTIONS", "name": "Get Contributions", "description": "Retrieves paginated list of contributions made to the authenticated user's Daffy donor-advised fund (DAF). Contributions are private - this endpoint only returns contributions associated with the authenticated API key. Use this to view your contribution history, including deposits from bank accounts, credit cards, crypto, stocks, checks, wires, DAF transfers, and third-party payments. The response includes pagination metadata (count, current page, last page) to help navigate through multiple pages of results." }, { "slug": "DAFFY_GET_DONATIONS", "name": "Get Donations", "description": "Retrieves the authenticated user's donation history from their Daffy account. Returns detailed information about each donation including amount, status, recipient nonprofit, fund details, and donation visibility. Supports pagination and filtering by creation date. Note: Only public donations will be shown for users other than the authenticated account owner." }, { "slug": "DAFFY_GET_GIFT_BY_CODE", "name": "Get Gift by Code", "description": "Tool to retrieve details of a specific gift by its unique code. Use after obtaining the gift code." }, { "slug": "DAFFY_GET_GIFTS", "name": "Get Gifts", "description": "Retrieve a paginated list of gifts associated with the user's Daffy account. Returns gifts with details including recipient name, amount, status, and shareable URLs. Supports pagination using limit and offset parameters." }, { "slug": "DAFFY_GET_NON_PROFIT_BY_EIN2", "name": "Get Non-Profit by EIN (v2)", "description": "Tool to retrieve detailed information about a non-profit organization by its EIN. Use when you need comprehensive non-profit details including location coordinates and causes." }, { "slug": "DAFFY_GET_USER_BY_USERNAME", "name": "Get User by Username", "description": "Tool to retrieve a user's public profile information by username. Use when you need details about a specific user's account." }, { "slug": "DAFFY_GET_USER_CAUSES", "name": "Get User Causes", "description": "Retrieves the list of charitable causes associated with a user's Daffy fund. Use this action to discover which causes a user supports. The user_id can be obtained from the Get User Profile action. Returns an empty list if the user hasn't selected any causes." }, { "slug": "DAFFY_GET_USER_DONATIONS", "name": "Get User Donations", "description": "Tool to retrieve public donations for a specific user by user ID. Use when you need to see a user's donation history. Limited to publicly visible donations only." }, { "slug": "DAFFY_GET_USER_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve the authenticated user's profile. Use when you need details about the current user's account." }, { "slug": "DAFFY_SEARCH_NON_PROFITS", "name": "Search Non-Profits", "description": "Tool to search non-profit organizations by cause ID and query text. Use when you need to find nonprofits matching a search term or a specific cause." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "daffy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Daffy API Key", "type": "string", "description": "The API key used for authenticating requests to the Daffy API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "daily", "name": "Daily", "logo": "https://logos.composio.dev/api/daily", "description": "WebRTC video and audio APIs for developers. Add live video and audio experiences to any product.", "category": "video conferencing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "daily_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Daily account and sign in. Go to \"Developers\" > \"API key\" to retrieve your API key. Each API key is tied to a specific Daily domain.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dart", "name": "Dart", "logo": "https://logos.composio.dev/api/dart", "description": "The ultimate AI project management tool.", "category": "project management", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DART_ADD_TASK_ATTACHMENT_FROM_URL", "name": "Add Task Attachment From URL", "description": "Tool to attach a file from a provided URL to a task. The file will be downloaded and attached asynchronously. Use when you need to add a file attachment to a task from a URL source." }, { "slug": "DART_ADD_TASK_COMMENT", "name": "Add Task Comment", "description": "Tool to create a new comment on a DART task. Use when you need to add feedback, notes, or discussion to a specific task. Supports markdown formatting and threaded replies via parentId." }, { "slug": "DART_ADD_TASK_TIME_TRACKING", "name": "Add Task Time Tracking", "description": "Tool to add a time tracking entry to a DART task. Use when you need to record time spent on a specific task. The finishedAt timestamp must be after startedAt." }, { "slug": "DART_CREATE_DOC", "name": "Create Doc", "description": "Tool to create a new doc in Dart. Use when you need to record a new document that the user intends to write down. By default, the created doc will be in the Docs folder unless a specific folder is specified." }, { "slug": "DART_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in DART with title and optional metadata. Use when you need to add a task to a workspace." }, { "slug": "DART_DELETE_DOC", "name": "Delete Doc", "description": "Tool to move an existing doc to the trash where it can be recovered if needed. Use when you need to delete a doc without permanently removing it." }, { "slug": "DART_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete an existing task in Dart by moving it to trash. Use when a task needs to be removed but can be recovered later." }, { "slug": "DART_GET_CONFIG", "name": "Get User Space Configuration", "description": "Tool to retrieve workspace configuration including dartboards, folders, types, statuses, and more. Use when you need to understand available options in the workspace." }, { "slug": "DART_GET_DOC", "name": "Get Doc", "description": "Tool to retrieve an existing doc with metadata and content. Use when you need to access a specific document's details including title, folder, and text content." }, { "slug": "DART_GET_TASK", "name": "Get Task", "description": "Tool to retrieve an existing task with full details including title, dartboard, status, and description. Use when you need to fetch complete information about a specific task." }, { "slug": "DART_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list comments for a task with filtering options. Use when you need to retrieve comments on a specific task. Supports filtering by author, text content, date range, and pagination. Can be ordered by date or hierarchical thread structure." }, { "slug": "DART_LIST_DOCS", "name": "List Docs", "description": "Tool to list docs with filtering and search capabilities. Use when you need to retrieve documents from DART with filters like folder, title, text content, or full-text search. Supports pagination and custom ordering by creation date, update date, or title." }, { "slug": "DART_LIST_HELP_CENTER_ARTICLES", "name": "List Help Center Articles", "description": "Tool to search help center articles by semantic similarity to query. Use when you need to find relevant help articles based on a short search query (1-5 words). Returns up to two most relevant articles." }, { "slug": "DART_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks with powerful filtering options. Use when you need to retrieve tasks from DART with filters like dartboard, status, assignee, tags, priority, dates, or completion state. Supports pagination and custom ordering." }, { "slug": "DART_MOVE_TASK", "name": "Move Task", "description": "Tool to move a task to a specific position within its dartboard. Use when you need to reorder tasks in a list. Specify either afterTaskId or beforeTaskId to position the task." }, { "slug": "DART_RETRIEVE_SKILL_BY_TITLE", "name": "Retrieve Skill By Title", "description": "Tool to retrieve a skill by its exact title from the workspace. Use when you need to find details about a specific skill including its ID and instructions." }, { "slug": "DART_UPDATE_DOC", "name": "Update Doc", "description": "Tool to update an existing doc in Dart. Use when you need to modify a document's title, folder location, or content. Any properties not specified will remain unchanged." }, { "slug": "DART_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in DART with new properties. Use when you need to modify a task's title, status, assignees, or other attributes. Only properties specified in the request will be updated." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "dart_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "dart_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and go to \"Settings\" on the top left with the gear icon. In the modal window click \"Personal\" > \"Account\" from the left menu. Scroll down to \"Authentication token\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "data247", "name": "Data247", "logo": "https://logos.composio.dev/api/data247", "description": "Data247 is a simple, and secure on-demand data platform that provides businesses with a wide-range of data lookup services.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATA247_APPEND_EMAIL2", "name": "Append Email by Name and Address (v2)", "description": "Tool to find email addresses associated with name and postal address using Append247 service. Use when you need to discover the email address for a contact given their name and address details (all fields are optional)." }, { "slug": "DATA247_APPEND_GENDER", "name": "Append Gender by First Name", "description": "Tool to determine a person's probable gender based on their first (given) name. Use when you need to infer gender from a first name with confidence percentage." }, { "slug": "DATA247_APPEND_NAME", "name": "Append Name (CNAM Lookup)", "description": "Tool to get CNAM (Caller Name Delivery) data for a phone number. Use when you need to find the registered owner name associated with a phone number from carrier-grade telco data." }, { "slug": "DATA247_APPEND_PHONE", "name": "Append Phone to Contact", "description": "Tool to append phone numbers to contact records using name and address. Use when you need to find phone numbers (business or residential) associated with a person's name and address. Returns primary phone with type classification and additional phone numbers if available." }, { "slug": "DATA247_APPEND_PROFILE", "name": "Append Profile Data", "description": "Tool to retrieve comprehensive consumer profile data including identity, contact information, demographics, property, and vehicle details. Use when you need detailed profile enrichment for a person based on their name and address." }, { "slug": "DATA247_APPEND_PROPERTY_DATA", "name": "Append Property Data", "description": "Tool to retrieve comprehensive property data including home stats, ownership information, financials and foreclosure data. Use when you need detailed property information for any US address." }, { "slug": "DATA247_APPEND_REVERSE_EMAIL", "name": "Append Reverse Email Lookup", "description": "Tool to perform reverse email lookup and retrieve contact information. Use when you need to find the name, phone, and address associated with an email address. Returns personal identifiers, contact details, and address components." }, { "slug": "DATA247_APPEND_REVERSE_PHONE", "name": "Append Reverse Phone Lookup", "description": "Tool to perform reverse phone lookup and retrieve name and address information. Use when you need to find the contact details associated with a phone number. Returns personal identifiers, address components, and demographic data." }, { "slug": "DATA247_APPEND_REVERSE_ZIPCODE", "name": "Append Reverse Zipcode Lookup", "description": "Tool to get formatted address components from a zipcode. Use when you need to retrieve city, state, county, congressional district, timezone, and other location data for a given 5 or 9 digit zipcode." }, { "slug": "DATA247_APPEND_ZIPCODE2", "name": "Append Zipcode by City/State", "description": "Tool to lookup zipcode for an address based on city and state. Use when you need to obtain zipcodes for a location specified by city and state, with optional street address for more precise results." }, { "slug": "DATA247_BALANCE_INQUIRY", "name": "Check Account Balance", "description": "Tool to check Data247 account balance and remaining credits. Use when you need to verify available credits before making API requests." }, { "slug": "DATA247_CARRIER_TYPE", "name": "Get Carrier Type for Phone Number", "description": "Tool to determine carrier type for USA and Canadian phone numbers. Use when you need to identify if a phone number is a Mobile, Landline, or VOIP line. Returns the carrier type classification for the queried phone number." }, { "slug": "DATA247_DNC_ADD", "name": "Add Phone to Do-Not-Call List", "description": "Tool to add phone numbers to your internal do-not-call (DNC) list. Use when you need to mark phone numbers that should not be contacted. Returns confirmation with action status 'ADDED' for successfully added numbers." }, { "slug": "DATA247_DNC_CHECK", "name": "Check Phone Number Against DNC Lists", "description": "Tool to check if a phone number exists in Federal or internal Do-Not-Call list. Use when you need to verify if a phone number is safe to dial or if it's on a DNC list. Returns status indicating whether phone is OK-TO-DIAL, FEDERAL DNC, INTERNAL DNC, or UNAUTHORIZED." }, { "slug": "DATA247_DNC_REMOVE", "name": "Remove Phone from Do-Not-Call List", "description": "Tool to remove phone numbers from your internal do-not-call (DNC) list. Use when you need to unmark phone numbers that were previously marked as do-not-call. Returns confirmation with action status 'REMOVED' for successfully removed numbers." }, { "slug": "DATA247_LOCATE_IP_ADDRESS", "name": "Locate IP Address - Get Geolocation Data", "description": "Tool to get geolocation data for IPv4 addresses including city, state, country, and coordinates. Use when you need to determine the geographic location of an IP address worldwide." }, { "slug": "DATA247_LOOKUP_CARRIER_USA", "name": "Look Up Carrier Information for USA/Canada", "description": "Tool to look up carrier information for USA and Canadian phone numbers including carrier name, SMS/MMS gateway addresses, and wireless status. Use when you need to determine if a phone is wireless, get carrier details, or retrieve email-to-SMS/MMS gateway addresses with number portability awareness." }, { "slug": "DATA247_LOOKUP_INTERNATIONAL_CARRIER", "name": "Lookup International Carrier Information", "description": "Tool to get carrier information for international phone numbers worldwide. Use when you need to obtain carrier name, wireless status, country, and ISO country code for international numbers. Note: SMS/MMS gateway addresses are not available for international carriers." }, { "slug": "DATA247_TEXT_AT", "name": "Get Carrier and Gateway Info (Text@ Service)", "description": "Tool to get carrier information, wireless status, and email-to-SMS/MMS gateway addresses for USA and Canadian phone numbers using the Text@ service. Use when you need to obtain carrier name, determine if a number is wireless, or retrieve email gateway addresses for sending SMS/MMS messages to a phone number." }, { "slug": "DATA247_TRUST_PHONE", "name": "Trust Phone Number (Check SPAM Risk)", "description": "Tool to check if a phone number is on SPAM callers list. Use when you need to verify if a phone number has been reported as spam or fraud. Returns spam risk level (Low, Medium, or High) and reason for the classification." }, { "slug": "DATA247_TRUST_USER_IDENTITY", "name": "Verify User Identity Trust Score", "description": "Tool to verify user signup legitimacy and detect account creation fraud. Use when you need to check if a new user signup is from a legitimate user or a fraud attempt. Returns a trust score (1-100) and match statistics from cross-referencing user data with Data247's resources. Higher scores indicate legitimate signups; lower scores suggest potential fraud. Providing more user data parameters enables better fraud detection accuracy." }, { "slug": "DATA247_VERIFY_EMAIL", "name": "Verify Email Address", "description": "Tool to verify email address format and mailbox existence. Use when you need to validate that an email address is properly formatted and has a working mailbox. Also identifies free accounts and disposable email addresses." }, { "slug": "DATA247_VERIFY_PHONE", "name": "Verify Phone Number Active Status", "description": "Tool to verify if a phone number is in-service and accepts inbound calls. Use when you need to validate phone number active status with confidence level. Returns whether the phone is active (YES/NO) and verification confidence (HIGH/LOW). Available in 100+ countries excluding USA/Canada." }, { "slug": "DATA247_VERIFY_POSTAL_ADDRESS", "name": "Verify USA Postal Address", "description": "Tool to verify and correct USA postal addresses to USPS standards. Use when you need to validate an address and get corrected components including street, city, state, ZIP, and detailed location data. Returns whether the address is valid and provides USPS-standardized address components." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "data247_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API Key, navigate to your Data247 account and sign in, then go to \"Account\" > \"API Key/Password\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "databox", "name": "Databox", "logo": "https://logos.composio.dev/api/databox", "description": "Connect your data from any tool and track it from any device. Build and share reports, monitor trends, and discover insights.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATABOX_CREATE_DATASET", "name": "Create Dataset", "description": "Tool to create a new dataset in Databox data source. Use when you need to initialize a dataset with a title, data source ID, and primary keys for unique record identification." }, { "slug": "DATABOX_CREATE_DATA_SOURCE", "name": "Create Data Source", "description": "Tool to create a new data source in Databox. Use when you need to create a logical container for datasets within a Databox account. Requires accountId, title, and timezone parameters." }, { "slug": "DATABOX_DELETE_DATASET", "name": "Delete Dataset", "description": "Tool to delete a dataset by ID in Databox. Use when you need to permanently remove a dataset. This operation is irreversible." }, { "slug": "DATABOX_DELETE_DATA_SOURCE", "name": "Delete Data Source", "description": "Tool to delete a data source by ID in Databox. Use when you need to permanently remove a data source. This operation is irreversible and will delete all associated datasets." }, { "slug": "DATABOX_GET_DATASET_INGESTION_STATUS", "name": "Get Dataset Ingestion Status", "description": "Tool to check the status of a specific data ingestion for a dataset. Use when you need to verify whether a data ingestion was successful by providing the dataset ID and ingestion ID returned from the initial POST request." }, { "slug": "DATABOX_LIST_ACCOUNTS", "name": "List Accounts", "description": "Tool to retrieve all Databox accounts accessible to the authenticated user. Use to identify account IDs required for subsequent API operations like data source creation." }, { "slug": "DATABOX_PUSH_DATA_V1", "name": "Push Data to Dataset (V1)", "description": "Tool to push data points to a Databox dataset using the v1 API. Use when you need to ingest data records into a specific dataset by providing the dataset ID and an array of records matching the dataset schema." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "databox_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Databox v1 REST API key. Create an API key in your Databox account settings for managing accounts, data sources, and datasets.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "databricks", "name": "Databricks", "logo": "https://logos.composio.dev/api/databricks", "description": "Databricks is the lakehouse company, helping data teams solve the world's toughest problems with unified analytics platform for big data and AI.", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 427, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATABRICKS_ADD_MEMBER_TO_SECURITY_GROUP", "name": "Add Member to Security Group", "description": "Tool to add a user or group as a member to a Databricks security group. Use when you need to grant group membership for access control." }, { "slug": "DATABRICKS_AGENTBRICKS_AGENT_BRICKS_DELETE_CUSTOM_LLM", "name": "Delete Custom LLM Agent", "description": "Tool to delete a Custom LLM agent created through Agent Bricks. Use when you need to remove a custom LLM and all associated data. This operation is irreversible and deletes all data including temporary transformations, model checkpoints, and internal metadata." }, { "slug": "DATABRICKS_APPS_APPS_CREATE", "name": "Create Databricks App", "description": "Tool to create a new Databricks app with specified configuration. Use when you need to create apps hosted on Databricks serverless platform to deploy secure data and AI applications. The app name must be unique within the workspace, contain only lowercase alphanumeric characters and hyphens, and cannot be changed after creation." }, { "slug": "DATABRICKS_APPS_APPS_DELETE", "name": "Delete Databricks App", "description": "Tool to delete a Databricks app from the workspace. Use when you need to remove an app and its associated service principal. When an app is deleted, Databricks automatically deletes the provisioned service principal." }, { "slug": "DATABRICKS_APPS_APPS_DEPLOY", "name": "Deploy Databricks App", "description": "Tool to create a deployment for a Databricks app. Use when you need to deploy an app with source code from a workspace path. The deployment process provisions compute resources and uploads the source code. Deployments can be in states: IN_PROGRESS, SUCCEEDED, FAILED, or CANCELLED." }, { "slug": "DATABRICKS_APPS_APPS_GET", "name": "Get Databricks App Details", "description": "Tool to retrieve details about a specific Databricks app by name. Use when you need to get comprehensive information about an app including configuration, deployment status, compute resources, and metadata." }, { "slug": "DATABRICKS_APPS_APPS_GET_PERMISSION_LEVELS", "name": "Get Databricks App Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks app. Use when you need to understand what permission levels can be assigned to users or groups for a specific app. Returns permission levels like CAN_USE and CAN_MANAGE with their descriptions." }, { "slug": "DATABRICKS_APPS_APPS_GET_PERMISSIONS", "name": "Get Databricks App Permissions", "description": "Tool to retrieve permissions for a Databricks app. Use when you need to check who has access to an app and their permission levels. Returns the access control list including inherited permissions from parent or root objects." }, { "slug": "DATABRICKS_APPS_APPS_GET_UPDATE", "name": "Get App Update Status", "description": "Retrieves the current update status of a Databricks app. This endpoint returns whether the app's most recent configuration update succeeded, failed, is in progress, or has never been updated. Use this to monitor the status of app configuration changes (such as description, compute size, or resource modifications) rather than deployment status." }, { "slug": "DATABRICKS_APPS_APPS_SET_PERMISSIONS", "name": "Set Databricks App Permissions", "description": "Tool to set permissions for a Databricks app, replacing all existing permissions. Use when you need to configure access control for an app. This operation replaces ALL existing permissions; for incremental updates, use the update permissions endpoint instead. Admin permissions cannot be removed." }, { "slug": "DATABRICKS_APPS_APPS_START", "name": "Start Databricks App", "description": "Tool to start the last active deployment of a Databricks app. Use when you need to start a stopped app, which transitions it to the ACTIVE state. The start operation is asynchronous and the app will transition to the ACTIVE state after the operation completes." }, { "slug": "DATABRICKS_APPS_APPS_STOP", "name": "Stop Databricks App", "description": "Tool to stop the active deployment of a Databricks app. Use when you need to stop a running app, which transitions it to the STOPPED state. The stop operation is asynchronous and the app will transition to the STOPPED state after the operation completes." }, { "slug": "DATABRICKS_APPS_APPS_UPDATE", "name": "Update Databricks App", "description": "Tool to update an existing Databricks app configuration. Use when you need to modify app settings such as description, resources, compute size, budget policy, or API scopes. This is a partial update operation - only fields provided in the request will be updated, other fields retain their current values." }, { "slug": "DATABRICKS_APPS_APPS_UPDATE_PERMISSIONS", "name": "Update Databricks App Permissions", "description": "Tool to incrementally update permissions for a Databricks app. Use when you need to modify specific permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request. For replacing all permissions, use SetPermissions instead." }, { "slug": "DATABRICKS_CATALOG_ARTIFACT_ALLOWLISTS_GET", "name": "Get Catalog Artifact Allowlist", "description": "Tool to retrieve artifact allowlist configuration for a specified artifact type in Unity Catalog. Use when you need to check which artifacts are permitted for use in your Databricks environment. Requires metastore admin privileges or MANAGE ALLOWLIST privilege on the metastore." }, { "slug": "DATABRICKS_CATALOG_CATALOGS_DELETE", "name": "Delete Catalog", "description": "Tool to delete a catalog from Unity Catalog metastore. Use when you need to permanently remove a catalog and optionally its contents. By default, the catalog must be empty (except for information_schema). Use force=true to delete non-empty catalogs. Do not delete the main catalog as it can break existing data operations." }, { "slug": "DATABRICKS_CATALOG_CATALOGS_GET", "name": "Get Catalog Details", "description": "Tool to retrieve details of a specific catalog in Unity Catalog. Use when you need to get information about a catalog including its metadata, owner, properties, and configuration. Requires metastore admin privileges, catalog ownership, or USE_CATALOG privilege." }, { "slug": "DATABRICKS_CATALOG_CONNECTIONS_CREATE", "name": "Create Catalog Connection", "description": "Tool to create a new Unity Catalog connection to external data sources. Use when you need to establish connections to databases and services such as MySQL, PostgreSQL, Snowflake, etc. Requires metastore admin privileges or CREATE CONNECTION privilege on the metastore." }, { "slug": "DATABRICKS_CATALOG_CONNECTIONS_DELETE", "name": "Delete Catalog Connection", "description": "Tool to delete a Unity Catalog connection to external data sources. Use when you need to remove connections to databases and services. Deleting a connection removes the abstraction used to connect from Databricks Compute to external data sources." }, { "slug": "DATABRICKS_CATALOG_CONNECTIONS_GET", "name": "Get Catalog Connection", "description": "Tool to retrieve detailed information about a specific Unity Catalog connection. Use when you need to get connection metadata, configuration, and properties for external data source connections." }, { "slug": "DATABRICKS_CATALOG_CONNECTIONS_UPDATE", "name": "Update Catalog Connection", "description": "Tool to update an existing Unity Catalog connection configuration. Use when you need to modify connection properties, credentials, ownership, or metadata for external data sources." }, { "slug": "DATABRICKS_CATALOG_CREDENTIALS_CREATE_CREDENTIAL", "name": "Create Catalog Credential", "description": "Tool to create a new credential for Unity Catalog access to cloud services. Use when you need to establish authentication for STORAGE (cloud storage) or SERVICE (external services like AWS Glue) purposes. Requires metastore admin or CREATE_STORAGE_CREDENTIAL/CREATE_SERVICE_CREDENTIAL privileges. Exactly one cloud credential type must be provided." }, { "slug": "DATABRICKS_CATALOG_CREDENTIALS_DELETE_CREDENTIAL", "name": "Delete Catalog Credential", "description": "Tool to delete a Unity Catalog credential for cloud storage or service access. Use when you need to remove credentials that authenticate access to cloud resources. By default, deletion will fail if the credential has dependent resources. Use force=true to delete credentials with dependencies." }, { "slug": "DATABRICKS_CATALOG_CREDENTIALS_GET_CREDENTIAL", "name": "Get Catalog Credential", "description": "Tool to retrieve detailed information about a specific Unity Catalog credential. Use when you need to get credential metadata, configuration, and cloud provider details for storage or service credentials." }, { "slug": "DATABRICKS_CATALOG_CREDENTIALS_UPDATE_CREDENTIAL", "name": "Update Catalog Credential", "description": "Tool to update an existing Unity Catalog credential with new properties. Use when you need to modify credential configuration, ownership, or cloud provider settings. The caller must be the owner of the credential, a metastore admin, or have MANAGE permission on the credential. If the caller is a metastore admin, only the owner field can be changed." }, { "slug": "DATABRICKS_CATALOG_CREDS_GENERATE_TEMP_SERVICE_CRED", "name": "Generate Temporary Service Credential", "description": "Tool to generate temporary credentials from a service credential with admin access. Use when you need short-lived, scoped credentials for accessing cloud resources. The caller must be a metastore admin or have the ACCESS privilege on the service credential." }, { "slug": "DATABRICKS_CATALOG_CREDS_VALIDATE_CRED", "name": "Validate Catalog Credential", "description": "Tool to validate a Unity Catalog credential for external access. Use when you need to verify that a credential can successfully perform its intended operations. For SERVICE credentials, validates cloud service access. For STORAGE credentials, tests READ, WRITE, DELETE, LIST operations on the specified location." }, { "slug": "DATABRICKS_CATALOG_ENTITY_TAG_ASSIGNMENTS_GET", "name": "Get Entity Tag Assignment", "description": "Tool to retrieve a specific tag assignment for a Unity Catalog entity by tag key. Use when you need to get details about a tag assigned to catalogs, schemas, tables, columns, or volumes. Requires USE CATALOG and USE SCHEMA permissions on parent resources, and ASSIGN or MANAGE permissions on the tag policy for governed tags." }, { "slug": "DATABRICKS_CATALOG_EXTERNAL_LOCATIONS_CREATE", "name": "Create External Location", "description": "Tool to create a new Unity Catalog external location combining a cloud storage path with a storage credential. Use when you need to establish access to cloud storage in Azure Data Lake Storage, AWS S3, or Cloudflare R2. Requires metastore admin or CREATE_EXTERNAL_LOCATION privilege on both the metastore and the associated storage credential." }, { "slug": "DATABRICKS_CATALOG_EXTERNAL_LOCATIONS_DELETE", "name": "Delete External Location", "description": "Tool to delete an external location from Unity Catalog metastore. Use when you need to remove an external location that combines a cloud storage path with a storage credential. The caller must be the owner of the external location. Use force=true to delete even if there are dependent external tables or mounts." }, { "slug": "DATABRICKS_CATALOG_EXTERNAL_LOCATIONS_GET", "name": "Get External Location Details", "description": "Tool to retrieve details of a specific Unity Catalog external location. Use when you need to get information about an external location including its URL, storage credential, and configuration. Requires metastore admin privileges, external location ownership, or appropriate privileges on the external location." }, { "slug": "DATABRICKS_CATALOG_EXTERNAL_LOCATIONS_UPDATE", "name": "Update External Location", "description": "Tool to update an existing Unity Catalog external location properties. Use when you need to modify the cloud storage path, credentials, ownership, or configuration of an external location. The caller must be the owner of the external location or a metastore admin. Use force parameter to update even if URL changes invalidate dependencies." }, { "slug": "DATABRICKS_CATALOG_EXTERNAL_METADATA_UPDATE_EXTERNAL", "name": "Update External Metadata", "description": "Tool to update an external metadata object in Unity Catalog. Use when you need to modify metadata about external systems registered within Unity Catalog. The user must have metastore admin status, own the object, or possess the MODIFY privilege. Note that changing ownership requires the MANAGE privilege, and callers cannot update both the owner and other metadata in a single request." }, { "slug": "DATABRICKS_CATALOG_FUNCTIONS_UPDATE", "name": "Update Catalog Function", "description": "Tool to update function owner in Unity Catalog. Use when you need to change the ownership of a catalog function. Only the owner of the function can be updated via this endpoint. The caller must be a metastore admin, the owner of the function's parent catalog, the owner of the parent schema with USE_CATALOG privilege, or the owner of the function with both USE_CATALOG and USE_SCHEMA privileges." }, { "slug": "DATABRICKS_CATALOG_GRANTS_GET", "name": "Get Catalog Grants", "description": "Tool to get permissions (grants) for a securable in Unity Catalog without inherited permissions. Use when you need to see direct privilege assignments on a catalog or other securable object. Returns only privileges directly assigned to principals, excluding inherited permissions from parent securables. For inherited permissions, use the get-effective endpoint instead." }, { "slug": "DATABRICKS_CATALOG_GRANTS_GET_EFFECTIVE", "name": "Get Effective Catalog Permissions", "description": "Tool to get effective permissions for a securable in Unity Catalog, including inherited permissions from parent securables. Use when you need to understand what privileges are granted to principals through direct assignments or inheritance. Returns privileges conveyed to each principal through the Unity Catalog hierarchy (metastore → catalog → schema → table/view/volume)." }, { "slug": "DATABRICKS_CATALOG_GRANTS_UPDATE", "name": "Update Catalog Grants", "description": "Tool to update permissions for Unity Catalog securables by adding or removing privileges for principals. Use when you need to grant or revoke permissions on catalogs, schemas, tables, or other Unity Catalog objects. Only metastore admins, object owners, users with MANAGE privilege, or parent catalog/schema owners can update permissions." }, { "slug": "DATABRICKS_CATALOG_METASTORES_ASSIGN", "name": "Assign Metastore to Workspace", "description": "Tool to assign a Unity Catalog metastore to a workspace. Use when you need to link a workspace to a Unity Catalog metastore, enabling shared data access with consistent governance policies. Requires account admin privileges. If an assignment for the same workspace_id exists, it will be overwritten by the new metastore_id and default_catalog_name." }, { "slug": "DATABRICKS_CATALOG_METASTORES_CREATE", "name": "Create Metastore", "description": "Tool to create a new Unity Catalog metastore. Use when you need to establish a top-level container for data in Unity Catalog, registering metadata about securable objects (tables, volumes, external locations, shares) and access permissions. Requires account admin privileges. By default, the owner is the user calling the API; setting owner to empty string assigns ownership to System User." }, { "slug": "DATABRICKS_CATALOG_METASTORES_CURRENT", "name": "Get Current Metastore Assignment", "description": "Tool to retrieve the current metastore assignment for the workspace being accessed. Use when you need to determine which metastore is assigned to the current workspace context." }, { "slug": "DATABRICKS_CATALOG_METASTORES_DELETE", "name": "Delete Metastore", "description": "Tool to delete a Unity Catalog metastore. Use when you need to permanently remove a metastore and its managed data. Before deletion, you must delete or unlink any workspaces using the metastore. All objects managed by the metastore will become inaccessible. Requires metastore admin privileges." }, { "slug": "DATABRICKS_CATALOG_METASTORES_GET", "name": "Get Metastore Details", "description": "Retrieves comprehensive details about a Unity Catalog metastore by its unique ID. Returns metastore configuration including name, cloud provider, region, owner, storage settings, Delta Sharing configuration, privilege model version, and audit metadata (creation/update timestamps and users). Use this to inspect metastore properties, verify configurations, or gather information for metastore management operations. Note: Requires appropriate metastore access permissions." }, { "slug": "DATABRICKS_CATALOG_METASTORES_SUMMARY", "name": "Get Metastore Summary", "description": "Tool to retrieve summary information about the metastore associated with the current workspace. Use when you need metastore configuration overview including cloud vendor, region, storage, and Delta Sharing details." }, { "slug": "DATABRICKS_CATALOG_METASTORES_UNASSIGN", "name": "Unassign Metastore from Workspace", "description": "Tool to unassign a Unity Catalog metastore from a workspace. Use when you need to remove the association between a workspace and its assigned metastore, leaving the workspace with no metastore. The metastore itself is not deleted, only the workspace assignment is removed. Requires account admin privileges." }, { "slug": "DATABRICKS_CATALOG_METASTORES_UPDATE", "name": "Update Metastore", "description": "Tool to update configuration settings for an existing Unity Catalog metastore. Use when you need to modify metastore properties like name, owner, Delta Sharing settings, or storage credentials. Requires metastore admin permissions." }, { "slug": "DATABRICKS_CATALOG_METASTORES_UPDATE_ASSIGNMENT", "name": "Update Metastore Assignment", "description": "Tool to update a metastore assignment for a workspace. Use when you need to update the metastore_id or default_catalog_name for a workspace that already has a metastore assigned. Account admin privileges are required to update metastore_id, while workspace admin can update default_catalog_name." }, { "slug": "DATABRICKS_CATALOG_MODEL_VERSIONS_GET", "name": "Get Model Version", "description": "Tool to retrieve detailed information about a specific version of a registered model in Unity Catalog. Use when you need to get metadata, status, source location, and configuration of a model version. Requires metastore admin privileges, model ownership, or EXECUTE privilege on the registered model with appropriate catalog and schema privileges." }, { "slug": "DATABRICKS_CATALOG_MODEL_VERSIONS_UPDATE", "name": "Update Model Version", "description": "Tool to update a Unity Catalog model version. Use when you need to modify the comment of a specific model version. Currently only the comment field can be updated. The caller must be a metastore admin or owner of the parent registered model with appropriate catalog and schema privileges." }, { "slug": "DATABRICKS_CATALOG_ONLINE_TABLES_DELETE", "name": "Delete Online Table", "description": "Tool to delete an online table by name. Use when you need to permanently remove an online table and stop data synchronization. This operation deletes all data in the online table permanently and releases all resources. Note: online tables are deprecated and will not be accessible after January 15, 2026." }, { "slug": "DATABRICKS_CATALOG_QUALITY_MONITORS_GET", "name": "Get Quality Monitor", "description": "Tool to retrieve quality monitor configuration for a Unity Catalog table. Use when you need to get monitor status, metrics tables, custom metrics, notifications, scheduling, and monitoring configuration details. Requires catalog and schema privileges plus SELECT on the table." }, { "slug": "DATABRICKS_CATALOG_QUALITY_MONITORS_LIST_REFRESHES", "name": "List Quality Monitor Refreshes", "description": "Tool to retrieve the refresh history for a quality monitor on a Unity Catalog table. Use when you need to check the status and history of monitor refresh operations. Returns up to 25 most recent refreshes including their state, timing, and status messages." }, { "slug": "DATABRICKS_CATALOG_REGISTERED_MODELS_GET", "name": "Get Registered Model", "description": "Tool to retrieve detailed information about a registered model in Unity Catalog. Use when you need to get metadata, owner, storage location, and configuration of a registered model. Requires metastore admin privileges, model ownership, or EXECUTE privilege on the registered model with appropriate catalog and schema privileges." }, { "slug": "DATABRICKS_CATALOG_RESOURCE_QUOTAS_GET_QUOTA", "name": "Get Resource Quota Information", "description": "Tool to retrieve usage information for a Unity Catalog resource quota defined by a child-parent pair. Use when you need to check quota usage for a specific resource type (tables per metastore, schemas per catalog, etc.). The API also triggers an asynchronous refresh if the count is out of date. Requires account admin authentication with OAuth." }, { "slug": "DATABRICKS_CATALOG_RFA_BATCH_CREATE_ACCESS_REQUESTS", "name": "Batch Create Access Requests", "description": "Tool to batch create access requests for Unity Catalog permissions. Use when you need to request access to catalogs, schemas, tables, or other Unity Catalog securables. Maximum 30 requests per API call, and maximum 30 securables per principal per call." }, { "slug": "DATABRICKS_CATALOG_RFA_GET_ACCESS_REQUEST_DESTS", "name": "Get Access Request Destinations", "description": "Tool to retrieve access request destinations for a Unity Catalog securable. Use when you need to find where notifications are sent when users request access to catalogs, schemas, tables, or other securables. Any caller can see URL destinations or destinations on the metastore. For other securables, only those with BROWSE permissions can see destinations." }, { "slug": "DATABRICKS_CATALOG_RFA_UPDATE_ACCESS_REQUEST_DESTS", "name": "Update Access Request Destinations", "description": "Tool to update access request notification destinations for Unity Catalog securables. Use when you need to configure where access request notifications are sent for catalogs, schemas, external locations, connections, or credentials. Requires metastore admin, owner privileges, or MANAGE permission on the securable. Maximum 5 emails and 5 external destinations allowed per securable. Note: Destinations cannot be updated for securables underneath schemas (tables, volumes, functions, models) as they inherit from parent securables." }, { "slug": "DATABRICKS_CATALOG_SCHEMAS_GET", "name": "Get Catalog Schema", "description": "Tool to retrieve details of a specific schema from Unity Catalog metastore. Use when you need to get schema metadata, ownership, storage configuration, and properties. Requires metastore admin privileges, schema ownership, or USE_SCHEMA privilege." }, { "slug": "DATABRICKS_CATALOG_STORAGE_CREDENTIALS_CREATE", "name": "Create Storage Credential", "description": "Tool to create a new storage credential in Unity Catalog for cloud data access. Use when you need to establish authentication for accessing cloud storage paths. Requires metastore admin or CREATE_STORAGE_CREDENTIAL privilege on the metastore. Exactly one cloud credential type must be provided." }, { "slug": "DATABRICKS_CATALOG_STORAGE_CREDENTIALS_DELETE", "name": "Delete Storage Credential", "description": "Tool to delete a storage credential from the Unity Catalog metastore. Use when you need to remove storage credentials that provide authentication to cloud storage. The caller must be the owner of the storage credential. Use force=true to delete even if there are dependent external locations, tables, or services." }, { "slug": "DATABRICKS_CATALOG_STORAGE_CREDENTIALS_GET", "name": "Get Storage Credential", "description": "Tool to retrieve storage credential details from Unity Catalog metastore by name. Use when you need to get information about a storage credential's configuration and properties. Requires metastore admin privileges, credential ownership, or appropriate permissions on the storage credential." }, { "slug": "DATABRICKS_CATALOG_STORAGE_CREDENTIALS_UPDATE", "name": "Update Storage Credential", "description": "Tool to update an existing storage credential in Unity Catalog. Use when you need to modify credential properties, cloud provider configuration, or ownership. The caller must be the owner of the storage credential or a metastore admin. Metastore admins can only modify the owner field." }, { "slug": "DATABRICKS_CATALOG_STORAGE_CREDENTIALS_VALIDATE", "name": "Validate Storage Credential", "description": "Tool to validate a storage credential configuration for Unity Catalog. Use when you need to verify that a storage credential can successfully access a cloud storage location. Requires metastore admin, storage credential owner, or CREATE_EXTERNAL_LOCATION privilege." }, { "slug": "DATABRICKS_CATALOG_SYSTEM_SCHEMAS_DISABLE", "name": "Disable System Schema", "description": "Tool to disable a system schema in Unity Catalog metastore. Use when you need to remove a system schema from the system catalog. System schemas store information about customer usage patterns such as audit logs, billing information, and lineage data. Requires account admin or metastore admin privileges." }, { "slug": "DATABRICKS_CATALOG_SYSTEM_SCHEMAS_ENABLE", "name": "Enable System Schema", "description": "Tool to enable a system schema in Unity Catalog metastore. Use when you need to activate a system schema to track customer usage patterns. System schemas store information about audit logs, billing, compute usage, storage, lineage, and marketplace data. Requires account admin or metastore admin privileges." }, { "slug": "DATABRICKS_CATALOG_TABLES_DELETE", "name": "Delete Catalog Table", "description": "Tool to delete a table from Unity Catalog. Use when you need to permanently remove a table from its parent catalog and schema. The operation requires appropriate permissions on the parent catalog, schema, and table." }, { "slug": "DATABRICKS_CATALOG_TABLES_EXISTS", "name": "Check Table Exists", "description": "Tool to check if a table exists in Unity Catalog metastore. Use when you need to verify table existence before performing operations. Requires metastore admin privileges, table ownership with SELECT privilege, or USE_CATALOG and USE_SCHEMA privileges on parent objects." }, { "slug": "DATABRICKS_CATALOG_TABLES_GET", "name": "Get Catalog Table Details", "description": "Tool to retrieve comprehensive metadata about a table from Unity Catalog metastore. Use when you need detailed table information including columns, type, storage, constraints, and governance metadata. Requires metastore admin privileges, table ownership, or SELECT privilege on the table, plus USE_CATALOG and USE_SCHEMA privileges on parent objects." }, { "slug": "DATABRICKS_CATALOG_TABLES_UPDATE", "name": "Update Catalog Table", "description": "Tool to update Unity Catalog table properties. Use when you need to change the owner or comment of a table. The caller must be the owner of the parent catalog, have the USE_CATALOG privilege on the parent catalog and be the owner of the parent schema, or be the owner of the table and have the USE_CATALOG privilege on the parent catalog and the USE_SCHEMA privilege on the parent schema." }, { "slug": "DATABRICKS_CATALOG_TEMP_PATH_CREDS_GENERATE_TEMP_PATH_CREDS", "name": "Generate Temporary Path Credentials", "description": "Tool to generate short-lived, scoped temporary credentials for accessing external storage locations registered in Unity Catalog. Use when you need temporary access to cloud storage paths with specific read/write permissions. The credentials inherit the privileges of the requesting principal and are valid for a limited time. The requesting principal must have EXTERNAL USE LOCATION privilege on the external location." }, { "slug": "DATABRICKS_CATALOG_VOLUMES_READ", "name": "Get Catalog Volume Details", "description": "Tool to retrieve detailed information about a specific Unity Catalog volume. Use when you need to get volume metadata including type, storage location, owner, and timestamps. Requires metastore admin privileges or volume ownership with appropriate USE_CATALOG and USE_SCHEMA privileges on parent objects." }, { "slug": "DATABRICKS_CATALOG_WORKSPACE_BINDINGS_UPDATE_BINDINGS", "name": "Update Catalog Workspace Bindings", "description": "Tool to update workspace bindings for a Unity Catalog securable (catalog). Use when you need to control which workspaces can access a catalog. Allows adding or removing workspace bindings with read-write or read-only access. Caller must be a metastore admin or owner of the catalog." }, { "slug": "DATABRICKS_CLEANROOMS_CLEAN_ROOM_ASSETS_GET", "name": "Get Clean Room Asset", "description": "Tool to retrieve detailed information about a specific asset within a Databricks Clean Room. Use when you need to get metadata and configuration for clean room assets such as tables, views, notebooks, volumes, or foreign tables." }, { "slug": "DATABRICKS_CLEANROOMS_CLEAN_ROOM_AUTO_APPROVAL_RULES_CREATE", "name": "Create Clean Room Auto-Approval Rule", "description": "Tool to create a new auto-approval rule for a Databricks Clean Room. Use when you need to automatically approve notebooks shared by other collaborators that meet specific criteria. In 2-person clean rooms, auto-approve notebooks from the other collaborator using author_collaborator_alias. In multi-collaborator clean rooms, use author_scope=ANY_AUTHOR to auto-approve from any author." }, { "slug": "DATABRICKS_CLEANROOMS_CLEAN_ROOMS_CREATE", "name": "Create Clean Room", "description": "Tool to create a new Databricks Clean Room for secure data collaboration with specified collaborators. Use when you need to establish a collaborative environment for multi-party data analysis. This is an asynchronous operation; the clean room starts in PROVISIONING state and becomes ACTIVE when ready. Requires metastore admin privileges or CREATE_CLEAN_ROOM privilege on the metastore." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_CREATE", "name": "Create Compute Cluster Policy", "description": "Tool to create a new cluster policy with prescribed settings for controlling cluster creation. Use when you need to establish policies that govern cluster configurations. Only admin users can create cluster policies." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_DELETE", "name": "Delete Compute Cluster Policy", "description": "Tool to delete a cluster policy. Use when you need to remove a cluster policy from the workspace. Clusters governed by this policy can still run, but cannot be edited. Only workspace admin users can delete policies. This operation is permanent and cannot be undone." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_EDIT", "name": "Edit Compute Cluster Policy", "description": "Tool to update an existing Databricks cluster policy. Use when you need to modify policy settings like name, definition, or restrictions. Note that this operation may make some clusters governed by the previous policy invalid." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_GET", "name": "Get Compute Cluster Policy", "description": "Tool to retrieve detailed information about a specific cluster policy by its ID. Use when you need to view the configuration and settings of an existing cluster policy." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_GET_PERM_LEVELS", "name": "Get Compute Cluster Policy Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks cluster policy. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific cluster policy. Returns permission levels like CAN_USE with their descriptions." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_GET_PERMS", "name": "Get Compute Cluster Policy Permissions", "description": "Tool to retrieve permissions for a Databricks cluster policy. Use when you need to check who has access to a specific cluster policy and their permission levels. Returns the access control list with user, group, and service principal permissions, including inherited permissions from parent objects." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_SET_PERMS", "name": "Set Compute Cluster Policy Permissions", "description": "Tool to set permissions for a Databricks cluster policy, replacing all existing permissions. Use when you need to configure access control for a cluster policy. This operation replaces ALL existing permissions; non-admin users must be granted permissions to access the policy. Workspace admins always have permissions on all policies." }, { "slug": "DATABRICKS_COMPUTE_CLUSTER_POLICIES_UPDATE_PERMS", "name": "Update Cluster Policy Permissions", "description": "Tool to incrementally update permissions on a Databricks cluster policy. Use when you need to modify permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_GET_PERMISSION_LEVELS", "name": "Get Compute Cluster Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks compute cluster. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific cluster. Returns permission levels like CAN_ATTACH_TO, CAN_RESTART, and CAN_MANAGE with their descriptions." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_LIST_NODE_TYPES", "name": "List Compute Cluster Node Types", "description": "Tool to list all supported Spark node types available for cluster launch in the workspace region. Use when you need to determine which instance types are available for creating or configuring clusters. Returns detailed specifications including compute resources, storage capabilities, and cloud-specific attributes for each node type." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_LIST_ZONES", "name": "List Compute Cluster Availability Zones", "description": "Tool to list availability zones where Databricks clusters can be created. Use when you need to determine available zones for cluster deployment or planning redundancy. Returns the default zone and a list of all zones available in the workspace's cloud region. This endpoint is available for AWS workspaces." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_PERMANENT_DELETE", "name": "Permanently Delete Compute Cluster", "description": "Tool to permanently delete a Databricks compute cluster. Use when you need to irreversibly remove a cluster and its resources. After permanent deletion, the cluster will no longer appear in the cluster list and cannot be recovered." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_PIN", "name": "Pin Compute Cluster", "description": "Tool to pin a Databricks compute cluster configuration. Use when you need to preserve a cluster's configuration beyond the standard 30-day retention period. This operation is idempotent - pinning an already-pinned cluster has no effect. Requires workspace administrator privileges." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_SPARK_VERSIONS", "name": "List Compute Cluster Spark Versions", "description": "Tool to list all available Databricks Runtime Spark versions for cluster creation. Use when you need to determine which Spark versions are available for creating or configuring clusters. The 'key' field from the response should be used as the 'spark_version' parameter when creating clusters." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_START", "name": "Start Compute Cluster", "description": "Tool to start a terminated Databricks compute cluster asynchronously. Use when you need to restart a stopped cluster. The cluster transitions through PENDING state before reaching RUNNING. Poll cluster status to verify when fully started." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_UNPIN", "name": "Unpin Compute Cluster", "description": "Tool to unpin a Databricks compute cluster configuration. Use when you need to allow a cluster's configuration to be removed after termination. This operation is idempotent - unpinning an already-unpinned cluster has no effect. Requires workspace administrator privileges." }, { "slug": "DATABRICKS_COMPUTE_CLUSTERS_UPDATE", "name": "Update Compute Cluster", "description": "Tool to partially update a Databricks compute cluster configuration using field masks. Use when you need to update specific cluster attributes without providing a full configuration. The update_mask specifies which fields to modify. Running clusters restart to apply changes; terminated clusters apply changes on next startup." }, { "slug": "DATABRICKS_COMPUTE_GLOBAL_INIT_SCRIPTS_CREATE", "name": "Create Global Init Script", "description": "Tool to create a new global initialization script in Databricks workspace. Use when you need to run scripts on every node in every cluster. Global init scripts run on all cluster nodes and only workspace admins can create them. Scripts execute in position order and clusters must restart to apply changes. The script cannot exceed 64KB when decoded." }, { "slug": "DATABRICKS_COMPUTE_GLOBAL_INIT_SCRIPTS_DELETE", "name": "Delete Global Init Script", "description": "Tool to delete a global initialization script from Databricks workspace. Use when you need to remove a script that runs on every cluster node. Requires workspace administrator privileges. Clusters must restart to reflect the removal of the script." }, { "slug": "DATABRICKS_COMPUTE_GLOBAL_INIT_SCRIPTS_GET", "name": "Get Global Init Script", "description": "Tool to retrieve complete details of a global initialization script in Databricks workspace. Use when you need to view script configuration, Base64-encoded content, or metadata. Returns all script details including creation/update timestamps and whether the script is enabled." }, { "slug": "DATABRICKS_COMPUTE_GLOBAL_INIT_SCRIPTS_UPDATE", "name": "Update Global Init Script", "description": "Tool to update a global initialization script in Databricks workspace. Use when you need to modify script content, name, enabled status, or execution order. All fields are optional; unspecified fields retain their current value. Existing clusters must be restarted to pick up changes." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_CREATE", "name": "Create Compute Instance Pool", "description": "Tool to create a new Databricks instance pool with specified configuration. Use when you need to set up a pool that reduces cluster start and auto-scaling times by maintaining idle, ready-to-use cloud instances. When attached to a pool, a cluster allocates driver and worker nodes from the pool." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_DELETE", "name": "Delete Compute Instance Pool", "description": "Tool to delete a Databricks compute instance pool. Use when you need to permanently remove an instance pool. The idle instances in the pool are terminated asynchronously after deletion." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_EDIT", "name": "Edit Compute Instance Pool", "description": "Tool to modify the configuration of an existing Databricks instance pool. Use when you need to update pool settings like capacity, termination minutes, or preloaded images. Note that the pool's node type cannot be changed after creation, though it must still be provided with the same value." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_GET", "name": "Get Instance Pool Details", "description": "Tool to retrieve detailed information about a Databricks instance pool by its ID. Use when you need to get instance pool configuration, capacity settings, preloaded images, and usage statistics. Instance pools reduce cluster start and auto-scaling times by maintaining idle, ready-to-use cloud instances." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_GET_PERMISSIONS", "name": "Get Instance Pool Permissions", "description": "Tool to retrieve permissions for a Databricks instance pool. Use when you need to check who has access to a specific instance pool and their permission levels. Returns the access control list with user, group, and service principal permissions, including inherited permissions from parent objects." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_GET_PERM_LEVELS", "name": "Get Instance Pool Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks instance pool. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific instance pool. Returns permission levels like CAN_ATTACH_TO and CAN_MANAGE with their descriptions." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_SET_PERMISSIONS", "name": "Set Compute Instance Pool Permissions", "description": "Tool to set permissions for a Databricks instance pool, replacing all existing permissions. Use when you need to configure access control for an instance pool. This operation replaces ALL existing permissions. You must have CAN_MANAGE permission on a pool to configure its permissions." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_POOLS_UPDATE_PERMS", "name": "Update Instance Pool Permissions", "description": "Tool to incrementally update permissions on a Databricks instance pool. Use when you need to modify permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_PROFILES_ADD", "name": "Add Compute Instance Profile", "description": "Tool to register an instance profile in Databricks for cluster launches. Use when administrators need to grant users permission to launch clusters using that profile. Requires admin access. Successfully registered profiles enable clusters to use the associated IAM role." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_PROFILES_EDIT", "name": "Edit Compute Instance Profile", "description": "Tool to modify an existing AWS EC2 instance profile registered with Databricks. Use when you need to update the IAM role ARN associated with an instance profile. This operation is only available to admin users. The IAM role ARN is required if both of the following are true: your role name and instance profile name do not match, and you want to use the instance profile with Databricks SQL Serverless." }, { "slug": "DATABRICKS_COMPUTE_INSTANCE_PROFILES_REMOVE", "name": "Remove Compute Instance Profile", "description": "Tool to remove an instance profile from Databricks. Use when you need to unregister an AWS instance profile ARN from Databricks. This operation is only accessible to admin users. Existing clusters with this instance profile will continue to function normally after removal." }, { "slug": "DATABRICKS_COMPUTE_POLICY_COMPL_FOR_CLUSTERS_ENFORCE_COMPL", "name": "Enforce Cluster Policy Compliance", "description": "Tool to update a cluster to be compliant with the current version of its policy. Use when you need to enforce policy compliance on a cluster. The cluster can be updated if it is in a RUNNING or TERMINATED state. Note: Clusters created by Databricks Jobs, DLT, or Models cannot be enforced by this API." }, { "slug": "DATABRICKS_COMPUTE_POLICY_COMPL_FOR_CLUSTERS_GET_COMPL", "name": "Get Cluster Policy Compliance", "description": "Tool to retrieve policy compliance status for a specific cluster. Use when you need to check whether a cluster meets the requirements of its assigned policy and identify any policy violations. Clusters could be out of compliance if their policy was updated after the cluster was last edited." }, { "slug": "DATABRICKS_COMPUTE_POLICY_FAMILIES_GET", "name": "Get Compute Policy Families", "description": "Tool to retrieve information for a policy family by identifier and optional version. Use when you need to view Databricks-provided templates for configuring clusters for a particular use case. Policy families cannot be created, edited, or deleted by users." }, { "slug": "DATABRICKS_CREATE_CLUSTER", "name": "Create Databricks Cluster", "description": "Tool to create a new Databricks Spark cluster with specified configuration. Use when you need to provision compute resources for data processing. This is an asynchronous operation that returns a cluster_id immediately with the cluster in PENDING state. The cluster transitions through states until reaching RUNNING." }, { "slug": "DATABRICKS_CREATE_JOB", "name": "Create Databricks Job", "description": "Creates a new Databricks job with specified tasks, schedules, and notifications. Use this action when you need to define a new workflow or data pipeline in Databricks. Each job must have at least one task, and each task requires a task_key, a task type (notebook_task, spark_jar_task, etc.), and a cluster specification (existing_cluster_id, new_cluster, or job_cluster_key). Use the format='MULTI_TASK' parameter for jobs with multiple tasks that have dependencies. The created job will not run automatically unless a schedule is specified." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_CREATE_MESSAGE", "name": "Create Genie Message", "description": "Tool to create a message in a Genie conversation and get AI-generated responses. Use when you need to ask questions or send messages to Genie for data analysis. The response initially has status 'IN_PROGRESS' and should be polled every 1-5 seconds until reaching COMPLETED, FAILED, or CANCELLED status. Subject to 5 queries-per-minute rate limit during Public Preview." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_CREATE_SPACE", "name": "Create Genie Space", "description": "Tool to create a new Genie space from a serialized payload for programmatic space management. Use when you need to create a Genie workspace for AI-powered data analysis. The space requires a SQL warehouse ID and a serialized configuration with at minimum a version field (1 or 2). Optionally specify data source tables to enable querying specific datasets." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_DELETE_CONVERSATION", "name": "Delete Genie Conversation", "description": "Tool to delete a conversation from a Genie space programmatically. Use when you need to remove conversations to manage the Genie space limits (10,000 conversations per space). Useful for deleting older or test conversations that are no longer needed." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_DELETE_CONV_MESSAGE", "name": "Delete Genie Conversation Message", "description": "Tool to delete a specific message from a Genie conversation. Use when you need to remove individual messages from conversations. This operation permanently deletes the message and cannot be undone." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_EXECUTE_MESSAGE_ATTACH_QUERY", "name": "Execute Message Attachment Query", "description": "Tool to execute SQL query for an expired message attachment in a Genie space. Use when a query attachment has expired and needs to be re-executed to retrieve fresh results. Returns SQL statement execution results with schema, metadata, and data." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_EXECUTE_MESSAGE_QUERY", "name": "Execute Genie Message Query", "description": "Execute the SQL query associated with a Genie message and retrieve result data. DEPRECATED: This endpoint is deprecated in favor of Execute Message Attachment Query (execute_message_attachment_query). The new method requires an attachment_id parameter in addition to space_id, conversation_id, and message_id. Use this action to run the query generated by Genie AI for a specific message. Returns query execution results including data rows, execution status, and schema information. This is useful for re-executing queries when needed." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_GET_MESSAGE", "name": "Get Genie Message", "description": "Tool to retrieve details of a specific message from a Genie conversation. Use when you need to get message content, status, attachments, or check processing status of a previously created message." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_GET_MESSAGE_ATTACH_QUERY_RESULT", "name": "Get Genie Message Attachment Query Result", "description": "Tool to retrieve SQL query results from a Genie message attachment. Use when the message status is EXECUTING_QUERY or COMPLETED and you need to fetch the actual query execution results. Returns statement execution details including query data, schema, and metadata with a maximum of 5000 rows." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_GET_MESSAGE_QUERY_RESULT", "name": "Get Genie Message Query Result", "description": "Tool to retrieve SQL query execution results for a Genie message (up to 5000 rows). Use when message status is EXECUTING_QUERY or COMPLETED and the message has a query attachment. Returns query results with schema, metadata, and data in inline or external link format." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_GET_MESSAGE_QUERY_RESULT_ATTACH", "name": "Get Genie Message Query Result", "description": "Tool to retrieve SQL query execution results for a message attachment in a Genie space conversation. Use when you need to fetch query results from a Genie conversation message. Note: This endpoint is deprecated; consider using GetMessageAttachmentQueryResult instead. Returns results only when message status is EXECUTING_QUERY or COMPLETED. Maximum 5,000 rows per result." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_GET_SPACE", "name": "Get Genie Space Details", "description": "Tool to retrieve detailed information about a specific Databricks Genie space by ID. Use when you need to get configuration details, metadata, and optionally the serialized space content for backup or promotion across workspaces. Requires at least CAN EDIT permission to retrieve the serialized space content." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_LIST_CONVERSATIONS", "name": "List Genie Conversations", "description": "Tool to retrieve all existing conversation threads within a Genie space. Use when you need to view conversations in a Genie space, either for the current user or all users if you have CAN MANAGE permission. Supports pagination for spaces with many conversations." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_LIST_CONV_MESSAGES", "name": "List Genie Conversation Messages", "description": "Tool to retrieve all messages from a specific conversation thread in a Genie space. Use when you need to view the complete message history of a conversation including user queries and AI responses. Supports pagination for conversations with many messages." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_LIST_SPACES", "name": "List Genie Spaces", "description": "Tool to retrieve all Genie spaces in the workspace that the authenticated user has access to. Use when you need to list available Genie spaces, their metadata, and warehouse associations. Supports pagination for workspaces with many spaces." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_SEND_MESSAGE_FEEDBACK", "name": "Send Genie Message Feedback", "description": "Tool to send feedback for a Genie message. Use when you need to provide positive, negative, or no feedback rating for AI-generated messages in Genie conversations. Positive feedback on responses that join tables or use SQL expressions can prompt Genie to suggest new SQL snippets to space managers for review and approval." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_START_CONVERSATION", "name": "Start Genie Conversation", "description": "Tool to start a new Genie conversation in a Databricks space for natural language data queries. Use when you need to ask questions about data using natural language. The message processes asynchronously, so initial status will be IN_PROGRESS. Poll the message status to get the completed response with query results." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_TRASH_SPACE", "name": "Trash Genie Space", "description": "Tool to move a Genie space to trash instead of permanently deleting it. Use when you need to remove a Genie space while retaining recovery options. Trashed spaces follow standard Databricks trash behavior with 30-day retention before permanent deletion. Requires CAN MANAGE permission on the space." }, { "slug": "DATABRICKS_DASHBOARDS_GENIE_UPDATE_SPACE", "name": "Update Genie Space", "description": "Tool to update an existing Genie space configuration. Use when you need to modify a Genie space's title, description, warehouse assignment, or complete serialized configuration. Supports partial updates (only provide fields you want to change) or full replacement via serialized_space. Useful for CI/CD pipelines, version control, and automated space management." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_CREATE", "name": "Create Lakeview Dashboard", "description": "Tool to create a new Lakeview dashboard in Databricks. Use when you need to create AI/BI dashboards for data visualization and analytics. Both display_name and serialized_dashboard are required. To create a blank dashboard, provide a minimal serialized_dashboard with an empty pages array like '{\"pages\":[{\"name\":\"page_001\",\"displayName\":\"Page 1\"}]}'." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_DELETE_SCHEDULE", "name": "Delete Lakeview Dashboard Schedule", "description": "Tool to delete a dashboard schedule from a Lakeview dashboard. Use when you need to remove scheduled refreshes or updates for a dashboard. Provide the etag parameter to ensure the schedule hasn't been modified since last retrieval (optimistic concurrency control)." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_EMBEDDED_GET_PUBLISHED_DASH", "name": "Get Published Dashboard Token Info", "description": "Retrieves authorization information needed to generate a downscoped OAuth token for embedding a published Lakeview dashboard for external viewers. This endpoint returns the custom claims, scopes, and authorization details required to create a secure, limited-access OAuth token that allows external users to view a specific published dashboard. The returned information ensures the token has minimal necessary permissions and supports row-level security through custom claims. Use this when implementing embedded dashboard experiences for external users who should not have direct access to your Databricks workspace. The dashboard must first be published with embed_credentials enabled." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_GET", "name": "Get Lakeview Dashboard Details", "description": "Tool to retrieve details about a draft AI/BI Lakeview dashboard from the workspace. Use when you need to get comprehensive information about a dashboard including metadata, configuration, state, and serialized dashboard content." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_GET_PUBLISHED", "name": "Get Published Lakeview Dashboard", "description": "Tool to retrieve the current published version of a Lakeview dashboard. Use when you need to get information about the published dashboard including its display name, embedded credentials status, warehouse configuration, and last revision timestamp." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_GET_SCHEDULE", "name": "Get Lakeview Dashboard Schedule", "description": "Tool to retrieve a specific schedule for a Databricks AI/BI Lakeview dashboard. Use when you need to get schedule details including cron expressions, pause status, warehouse configuration, and subscription information. Each dashboard can have up to 10 schedules, with each schedule supporting up to 100 subscriptions." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_PUBLISH", "name": "Publish Lakeview Dashboard", "description": "Tool to publish an AI/BI Lakeview dashboard making it accessible via public link. Use when you need to publish a draft dashboard with embedded credentials and assign a warehouse for query execution. After successful publication, the dashboard becomes accessible at https:///dashboardsv3//published." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_TRASH", "name": "Trash Lakeview Dashboard", "description": "Tool to move a Lakeview dashboard to trash instead of permanently deleting it. Use when you need to remove a dashboard while retaining recovery options. Trashed dashboards can be recovered within 30 days before permanent deletion." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_UNPUBLISH", "name": "Unpublish Lakeview Dashboard", "description": "Tool to unpublish an AI/BI Lakeview dashboard while preserving its draft version. Use when you need to remove the published version of a dashboard. The draft version remains available and can be republished later if needed." }, { "slug": "DATABRICKS_DASHBOARDS_LAKEVIEW_UPDATE", "name": "Update Lakeview Dashboard", "description": "Tool to update a draft Lakeview dashboard configuration and metadata. Use when you need to modify dashboard properties such as display name, warehouse, location, or content. This is a partial update operation - only provided fields will be updated. The etag field can be used for optimistic concurrency control to prevent conflicts from concurrent modifications." }, { "slug": "DATABRICKS_DATABASE_DATABASE_CREATE_DATABASE_CATALOG", "name": "Register Lakebase Database as Catalog", "description": "Tool to register a Lakebase Postgres database as a Unity Catalog catalog in Databricks. Use when you need to register a Lakebase database instance as a catalog in Unity Catalog for data governance and analytics. Requires CREATE CATALOG privilege on the metastore and access to the database instance." }, { "slug": "DATABRICKS_DATABASE_DATABASE_CREATE_DATABASE_INSTANCE", "name": "Create Database Instance", "description": "Creates a new Lakebase Provisioned database instance in Databricks. Lakebase is Databricks' serverless PostgreSQL-compatible database service for OLTP workloads. Use this action to provision a new database instance with specified compute capacity and configuration. The creator automatically receives database owner privileges with the databricks_superuser role, granting full administrative capabilities on the instance including schema management, user provisioning, and data operations. The instance will initially be in STARTING state during provisioning, then transition to AVAILABLE when ready for connections. Use the returned read_write_dns endpoint to connect PostgreSQL clients and applications. Note: Requires available credits/billing setup in your Databricks workspace. Instance creation may take several minutes to complete." }, { "slug": "DATABRICKS_DATABASE_DATABASE_DELETE_DATABASE_INSTANCE", "name": "Delete Database Instance", "description": "Delete a Databricks Lakebase Postgres database instance. Permanently removes the database instance and all associated data. Prerequisites: The instance should be stopped before deletion, and you must have CAN_MANAGE permissions on the instance. Warning: This operation cannot be undone. All data will be permanently deleted. Consider deleting associated Unity Catalog catalogs and synced tables first to avoid orphaned references." }, { "slug": "DATABRICKS_DATABASE_DATABASE_DELETE_SYNCED_DATABASE_TABLE", "name": "Delete Synced Database Table", "description": "Tool to delete a synced table from Unity Catalog and stop data refreshes. Use when you need to deregister a synced table connection between Unity Catalog and a database instance. Note: The underlying Postgres table remains and must be manually dropped to free space." }, { "slug": "DATABRICKS_DATABASE_DATABASE_FIND_DATABASE_INSTANCE_BY_UID", "name": "Find Database Instance By UID", "description": "Tool to find a database instance by its unique identifier (UID). Use when you need to retrieve instance details using the immutable UUID instead of the instance name." }, { "slug": "DATABRICKS_DATABASE_DATABASE_GENERATE_DATABASE_CRED", "name": "Generate Database Credential", "description": "Tool to generate OAuth token for database instance authentication. Use when you need to authenticate to Databricks database instances. The generated token is workspace-scoped and expires after one hour, though open connections remain active past expiration." }, { "slug": "DATABRICKS_DATABASE_DATABASE_GET_DATABASE_INSTANCE", "name": "Get Database Instance", "description": "Retrieves detailed information about a Databricks Lakebase (managed PostgreSQL) database instance by name. Returns comprehensive instance details including: - Current state (AVAILABLE, STARTING, STOPPED, UPDATING, DELETING, FAILING_OVER) - Capacity/SKU configuration (CU_1, CU_2, CU_4, CU_8) - Connection endpoints (read-write DNS, read-only DNS) - PostgreSQL version and node configuration - Retention window and backup settings - High availability settings (readable secondaries) - Custom tags and usage policies - Parent/child instance relationships Use this when you need to check instance status, retrieve connection information, or verify configuration settings." }, { "slug": "DATABRICKS_DATAQUALITY_DATA_QUALITY_CREATE_MONITOR", "name": "Create Data Quality Monitor", "description": "Tool to create a data quality monitor for a Unity Catalog Delta table. Use when you need to set up monitoring for table quality, track data drift, or monitor ML model inference logs. Supports snapshot, time series, and inference log monitoring types. Only one monitor can be created per table." }, { "slug": "DATABRICKS_DBFS_LIST", "name": "List DBFS Directory Contents", "description": "Tool to list the contents of a directory or get details of a file in DBFS. Use when you need to browse DBFS directories or check file details. Note: Recommended for directories with less than 10,000 files due to ~60 second timeout limitation. Throws RESOURCE_DOES_NOT_EXIST error if path doesn't exist." }, { "slug": "DATABRICKS_DELETE_CLUSTER", "name": "Delete Databricks Cluster", "description": "Tool to terminate a Databricks Spark cluster asynchronously. Use when you need to stop and remove a cluster. The cluster is terminated asynchronously and removed after completion. Cluster configuration is retained for 30 days after termination." }, { "slug": "DATABRICKS_EDIT_CLUSTER", "name": "Edit Databricks Cluster", "description": "Tool to edit an existing Databricks cluster configuration. Use when you need to modify cluster settings such as size, Spark version, node types, or cloud-specific attributes. The cluster must be in RUNNING or TERMINATED state. If updated while RUNNING, it will restart to apply changes." }, { "slug": "DATABRICKS_FILES_DBFS_ADD_BLOCK", "name": "Add Block to DBFS Stream", "description": "Tool to append a block of data to an open DBFS stream. Use when uploading large files in chunks as part of the DBFS streaming upload workflow: 1) create a stream handle, 2) add blocks, 3) close the stream. Each block is limited to 1 MB of base64-encoded data." }, { "slug": "DATABRICKS_FILES_DBFS_CREATE", "name": "Create DBFS File Stream", "description": "Tool to open a stream to write to a DBFS file and returns a handle. Use when uploading files to DBFS using the streaming workflow: 1) create a stream handle, 2) add blocks of data, 3) close the stream. The returned handle has a 10-minute idle timeout and must be used within that period." }, { "slug": "DATABRICKS_FILES_DBFS_DELETE", "name": "Delete DBFS File or Directory", "description": "Tool to delete a file or directory from DBFS. Use when you need to remove files or directories from the Databricks File System. For large deletions (>10K files), use dbutils.fs in a cluster context instead of the REST API. Operation may return 503 PARTIAL_DELETE for large deletions and should be re-invoked until completion." }, { "slug": "DATABRICKS_FILES_DBFS_GET_STATUS", "name": "Get DBFS File Status", "description": "Tool to get the information of a file or directory in DBFS. Use when you need to check if a file or directory exists, retrieve its size, type, or last modification time. Throws RESOURCE_DOES_NOT_EXIST exception if the file or directory does not exist." }, { "slug": "DATABRICKS_FILES_DBFS_MOVE", "name": "Move DBFS File or Directory", "description": "Tool to move a file or directory from one location to another within DBFS. Use when you need to relocate files or directories in Databricks File System. Recursively moves all files if source is a directory. Not recommended for large-scale operations (>10k files) as it may timeout after ~60 seconds." }, { "slug": "DATABRICKS_FILES_DBFS_READ", "name": "Read DBFS File Contents", "description": "Tool to read the contents of a file from DBFS. Returns base64-encoded file data with maximum read size of 1 MB per request. Use when you need to retrieve file contents from Databricks File System. Throws RESOURCE_DOES_NOT_EXIST if file does not exist, INVALID_PARAMETER_VALUE if path is a directory, MAX_READ_SIZE_EXCEEDED if read length exceeds 1 MB." }, { "slug": "DATABRICKS_GET_ALL_LIBRARY_STATUSES", "name": "Get All Library Statuses", "description": "Tool to retrieve status of all libraries across all Databricks clusters. Use when you need to check library installation status on all clusters, including libraries set to be installed on all clusters via the API or libraries UI. Returns detailed status information for each library on each cluster." }, { "slug": "DATABRICKS_GET_CLUSTER", "name": "Get Cluster Information", "description": "Tool to retrieve comprehensive metadata and configuration details for a Databricks cluster by its unique identifier. Use when you need to check cluster state, configuration, resources, or operational details. Returns cluster information including state, compute configuration, cloud-specific settings, and resource allocations." }, { "slug": "DATABRICKS_GET_USER_BY_ID", "name": "Get User by ID", "description": "Tool to retrieve information for a specific user in Databricks workspace by their ID. Use when you need to get complete user details including identity, contact information, group memberships, roles, and entitlements. Implements the SCIM 2.0 protocol standard for retrieving User resources." }, { "slug": "DATABRICKS_IAM_ACCOUNT_ACCESS_CONTROL_UPDATE_RULE_SET", "name": "Update IAM Account Access Control Rule Set", "description": "Tool to update account-level access control rule set for service principals, groups, or budget policies. Use when you need to replace the entire set of access control rules for a resource. This is a PUT operation that replaces all existing roles - to preserve existing roles, they must be included in the grant_rules array." }, { "slug": "DATABRICKS_IAM_ACCOUNT_GROUPS_V2_GET", "name": "Get IAM Account Group V2", "description": "Tool to retrieve a specific group resource by its unique identifier from a Databricks account using SCIM v2 protocol. Use when you need to get complete group details including members, roles, and entitlements." }, { "slug": "DATABRICKS_IAM_CURRENT_USER_ME", "name": "Get Current User Information", "description": "Tool to retrieve details about the currently authenticated user or service principal making the API request. Use when you need to get information about the current user's identity, groups, roles, and entitlements within the Databricks workspace." }, { "slug": "DATABRICKS_IAM_GROUPS_V2_CREATE", "name": "Create IAM Group V2", "description": "Tool to create a new group in Databricks workspace using SCIM v2 protocol. Use when you need to create a new security group with a unique display name, optionally with initial members, entitlements, and roles." }, { "slug": "DATABRICKS_IAM_GROUPS_V2_DELETE", "name": "Delete IAM Group V2", "description": "Tool to delete a group from Databricks workspace using SCIM v2 protocol. Use when you need to permanently remove a security group. Requires appropriate permissions to delete the group." }, { "slug": "DATABRICKS_IAM_GROUPS_V2_GET", "name": "Get Workspace IAM Group V2", "description": "Tool to retrieve details of a specific group by ID from Databricks workspace using SCIM v2 protocol. Use when you need to get complete group information including members, roles, entitlements, and metadata." }, { "slug": "DATABRICKS_IAM_GROUPS_V2_PATCH", "name": "Patch IAM Group V2", "description": "Tool to partially update a Databricks workspace group using SCIM 2.0 PATCH operations. Use when you need to modify group attributes like displayName, add/remove members, or update entitlements/roles. All operations in a single request are atomic." }, { "slug": "DATABRICKS_IAM_GROUPS_V2_UPDATE", "name": "Update IAM Group V2", "description": "Tool to update an existing group in Databricks workspace using SCIM v2 protocol. This performs a complete replacement of the group resource. Use when you need to update group properties, members, entitlements, or roles. For partial updates, consider using PATCH instead." }, { "slug": "DATABRICKS_IAM_PERMISSIONS_GET", "name": "Get IAM Permissions", "description": "Tool to retrieve IAM permissions for a Databricks workspace object. Use when you need to check who has access to a specific resource and their permission levels. Returns the access control list (ACL) including user, group, and service principal permissions with inheritance information." }, { "slug": "DATABRICKS_IAM_PERMISSIONS_GET_PERMISSION_LEVELS", "name": "Get IAM Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks workspace object. Use when you need to understand what permission levels can be assigned to users or groups for a specific object type. Returns permission levels like CAN_READ, CAN_RUN, CAN_EDIT, CAN_MANAGE with their descriptions. Available levels vary by object type." }, { "slug": "DATABRICKS_IAM_PERMISSIONS_SET", "name": "Set IAM Permissions", "description": "Tool to set IAM permissions for a Databricks workspace object, replacing all existing permissions. Use when you need to configure complete access control for a resource. This operation replaces the entire access control list - existing permissions are overwritten. Admin permissions on the admins group cannot be removed." }, { "slug": "DATABRICKS_IAM_PERMISSIONS_UPDATE", "name": "Update IAM Permissions", "description": "Tool to incrementally update permissions on Databricks workspace objects including dashboards, jobs, clusters, warehouses, notebooks, and more. Use when you need to modify specific permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request." }, { "slug": "DATABRICKS_IAM_PERM_MIGRATION_MIGRATE_PERMS", "name": "Migrate Permissions", "description": "Tool to migrate ACL permissions from workspace groups to account groups. Use when adopting Unity Catalog and migrating permissions from workspace-level groups to account-level groups. Primarily used by the Unity Catalog Migration (UCX) tool. Supports batch processing with configurable size limits." }, { "slug": "DATABRICKS_IAM_SERVICE_PRINCIPALS_V2_CREATE", "name": "Create IAM Service Principal V2", "description": "Tool to create a new service principal in Databricks workspace using SCIM v2 protocol. Use when you need to create a service principal that already exists in the Databricks account. Required for identity-federated workspaces where you must specify a valid UUID applicationId." }, { "slug": "DATABRICKS_IAM_SERVICE_PRINCIPALS_V2_DELETE", "name": "Delete IAM Service Principal V2", "description": "Tool to delete a service principal from Databricks workspace using SCIM v2 protocol. Use when you need to permanently remove a service principal and revoke its access to the workspace. The operation is idempotent - subsequent DELETE requests to the same ID will return 404 Not Found." }, { "slug": "DATABRICKS_IAM_SERVICE_PRINCIPALS_V2_GET", "name": "Get IAM Service Principal V2", "description": "Tool to retrieve details of a specific service principal by ID from Databricks workspace using SCIM v2 protocol. Use when you need to get complete service principal information including groups, roles, entitlements, and metadata." }, { "slug": "DATABRICKS_IAM_SERVICE_PRINCIPALS_V2_PATCH", "name": "Patch IAM Service Principal V2", "description": "Tool to partially update a service principal using SCIM 2.0 PATCH operations. Use when you need to modify service principal attributes like active status, displayName, groups, entitlements, or roles without replacing the entire resource. All operations in a single request are atomic." }, { "slug": "DATABRICKS_IAM_SERVICE_PRINCIPALS_V2_UPDATE", "name": "Update IAM Service Principal V2", "description": "Tool to update an existing service principal in Databricks workspace using SCIM v2 protocol. This performs a complete replacement of the service principal resource (PUT operation). Use when you need to update service principal properties, group memberships, entitlements, or roles. Note: applicationId and id are immutable fields." }, { "slug": "DATABRICKS_IAM_USERS_V2_CREATE", "name": "Create IAM User V2", "description": "Tool to create a new user in Databricks workspace using SCIM v2 protocol. Use when you need to provision a new user account with a unique userName (email), optionally with display name, activation status, group memberships, entitlements, and roles." }, { "slug": "DATABRICKS_IAM_USERS_V2_DELETE", "name": "Delete IAM User V2", "description": "Tool to delete a user from Databricks workspace using SCIM v2 protocol. Use when you need to inactivate a user and revoke their access to the workspace. Note that users are automatically purged 30 days after deletion if they do not own or belong to any workspace. Applications or scripts using tokens generated by the deleted user will no longer be able to access Databricks APIs." }, { "slug": "DATABRICKS_IAM_USERS_V2_PATCH", "name": "Patch IAM User V2", "description": "Tool to partially update a user using SCIM 2.0 PATCH operations. Use when you need to modify user attributes like active status, displayName, userName, name fields, emails, groups, entitlements, or roles without replacing the entire resource. All operations in a single request are atomic." }, { "slug": "DATABRICKS_IAM_USERS_V2_UPDATE", "name": "Update IAM User V2", "description": "Tool to update a user in Databricks workspace using SCIM v2 protocol. This performs a complete replacement (PUT) of the user resource. Use when you need to update user properties including userName, displayName, active status, emails, entitlements, or roles. IMPORTANT LIMITATIONS: - Groups cannot be updated via workspace-level API. Groups for account-level users are managed at the account level only. - For partial updates (updating specific fields without replacing the entire resource), use the PATCH operation instead. - The 'groups' parameter is included for response compatibility but will be ignored in requests to avoid API errors." }, { "slug": "DATABRICKS_IAMV2_WORKSPACE_IAM_V2_GET_WORKSPACE_ACCESS", "name": "Get Workspace Access Detail", "description": "Retrieves workspace access details for a specific principal (user, service principal, or group) in Databricks. Returns information about the principal's workspace access including their principal ID, workspace ID, account ID, principal type (USER/SERVICE_PRINCIPAL/GROUP), access type (DIRECT/INHERITED), and access status (ACTIVE/INACTIVE). Use this to verify workspace access assignments and understand how identities are granted access to the workspace." }, { "slug": "DATABRICKS_JOB_COMPLIANCE_LISTCOMPLIANCE", "name": "List Job Compliance for Policy", "description": "Tool to retrieve policy compliance status of all jobs using a given cluster policy. Use when you need to identify jobs that are out of compliance because the policy was updated after the job was last edited. Jobs are non-compliant when their job clusters no longer meet the requirements of the updated policy." }, { "slug": "DATABRICKS_JOB_RUN_BY_ID", "name": "Get Job Run By ID", "description": "Tool to retrieve metadata of a single Databricks job run by ID. Use when you need to get detailed information about a specific job run including state, timing, and cluster configuration. Runs are automatically removed after 60 days." }, { "slug": "DATABRICKS_JOBS_JOBS_CANCEL_ALL_RUNS", "name": "Cancel All Databricks Job Runs", "description": "Cancel all active runs of a Databricks job asynchronously. Requires either job_id or all_queued_runs=true. With job_id: cancels all active runs of the specified job. With all_queued_runs=true (no job_id): cancels all queued runs in the workspace. Cancellation is asynchronous and does not prevent new runs from starting. Use with caution when cancelling workspace-wide runs." }, { "slug": "DATABRICKS_JOBS_JOBS_CANCEL_RUN", "name": "Cancel Databricks Job Run", "description": "Tool to cancel a Databricks job run asynchronously. Use when you need to terminate a running job. The run will be terminated shortly after the request completes. If the run is already in a terminal state, this is a no-op." }, { "slug": "DATABRICKS_JOBS_JOBS_DELETE_RUN", "name": "Delete Databricks Job Run", "description": "Tool to delete a non-active Databricks job run. Use when you need to remove a job run from the workspace. The run must be in a non-active state; attempting to delete an active run will return an error. Runs are automatically removed after 60 days." }, { "slug": "DATABRICKS_JOBS_JOBS_GET", "name": "Get Databricks Job Details", "description": "Tool to retrieve detailed information about a single Databricks job. Use when you need to get comprehensive job configuration including tasks, schedules, notifications, and cluster settings. For jobs with more than 100 tasks or job clusters, use the page_token parameter to paginate through results." }, { "slug": "DATABRICKS_JOBS_JOBS_GET_PERMISSION_LEVELS", "name": "Get Job Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks job. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific job. Returns permission levels like CAN_VIEW, CAN_MANAGE_RUN, CAN_MANAGE, and IS_OWNER with their descriptions." }, { "slug": "DATABRICKS_JOBS_JOBS_SET_PERMISSIONS", "name": "Set Databricks Job Permissions", "description": "Tool to set permissions for a Databricks job, completely replacing all existing permissions. Use when you need to configure access control for a job. This operation replaces ALL existing permissions with the provided list. To remove all permissions except the owner, provide an empty array. The job must have exactly one owner (cannot be a group)." }, { "slug": "DATABRICKS_JOBS_POLICY_COMPL_FOR_JOBS_GET_COMPL", "name": "Get Job Policy Compliance", "description": "Tool to retrieve policy compliance status for a specific job. Use when you need to check whether a job meets the requirements of its assigned policies and identify any policy violations. Jobs could be out of compliance if a policy they use was updated after the job was last edited and some of its job clusters no longer comply with their updated policies." }, { "slug": "DATABRICKS_LIST_CATALOGS", "name": "List Unity Catalogs", "description": "Tool to retrieve a list of all catalogs in the Unity Catalog metastore. Use when you need to discover available catalogs based on user permissions. If the caller is the metastore admin, all catalogs will be retrieved. Otherwise, only catalogs owned by the caller or for which the caller has the USE_CATALOG privilege will be retrieved." }, { "slug": "DATABRICKS_LIST_CLUSTERS", "name": "List Clusters", "description": "Tool to list all pinned, active, and recently terminated Databricks clusters. Use when you need to retrieve cluster information, monitor cluster status, or get an overview of available compute resources. Returns clusters terminated within the last 30 days along with currently active clusters. Supports filtering by state, source, and policy, with pagination for large result sets." }, { "slug": "DATABRICKS_LIST_GROUPS", "name": "List Workspace Groups", "description": "Tool to list all groups in the Databricks workspace using SCIM v2 protocol. Use when you need to retrieve all groups or search for specific groups using filters and pagination." }, { "slug": "DATABRICKS_LIST_INSTANCE_POOLS", "name": "List Instance Pools", "description": "Tool to retrieve a list of all active instance pools in the Databricks workspace with their statistics and configuration. Use when you need to get an overview of all available instance pools." }, { "slug": "DATABRICKS_LIST_JOBS", "name": "List All Databricks Jobs (API 2.0)", "description": "Tool to list all jobs in the Databricks workspace using API 2.0. Use when you need to retrieve all jobs without pagination. Note: API 2.0 does not support pagination or filtering. For pagination support, use the API 2.2 endpoint instead." }, { "slug": "DATABRICKS_LIST_MEMBERS_OF_A_SECURITY_GROUP", "name": "List Members of a Security Group", "description": "Tool to retrieve all members (users and nested groups) of a Databricks security group. Use when you need to see who belongs to a specific group for access control auditing or management. This method is non-recursive and does not expand nested group memberships." }, { "slug": "DATABRICKS_LIST_MODEL_SERVING_ENDPOINTS", "name": "List Model Serving Endpoints", "description": "Lists all model serving endpoints in the Databricks workspace. This includes both foundation model endpoints (e.g., GPT, Claude, Llama) and custom model endpoints. Returns comprehensive information for each endpoint: - Endpoint name, ID, type, and task (chat, completions, embeddings) - Current state and readiness status - Served entities/models configuration with pricing details - Endpoint capabilities (function calling, image input, long context) - Traffic routing configuration - Permission level and metadata Use this to discover available AI models, check endpoint status, or gather configuration details for making API calls." }, { "slug": "DATABRICKS_LIST_PIPELINES", "name": "List Delta Live Tables Pipelines", "description": "Tool to list Delta Live Tables pipelines in the workspace. Use when you need to retrieve a paginated list of pipelines with summary information. The pipeline specification field is not returned by this endpoint - only summary information is provided. For complete pipeline details, use the get pipeline endpoint." }, { "slug": "DATABRICKS_LIST_REPOS", "name": "List Repos", "description": "Tool to list Git repos that the calling user has Manage permissions on. Use when you need to retrieve all available repos in the workspace. Supports pagination and filtering by path prefix." }, { "slug": "DATABRICKS_LIST_RUNS", "name": "List Databricks Job Runs", "description": "Tool to list Databricks job runs in descending order by start time. Use when you need to retrieve job runs with optional filtering by job ID, run status, and type. Supports pagination via offset and limit parameters. Runs are automatically removed after 60 days." }, { "slug": "DATABRICKS_LIST_SCHEMAS", "name": "List Catalog Schemas", "description": "Tool to retrieve all schemas in a specified catalog from Unity Catalog. Use when you need to discover available schemas within a catalog based on user permissions. If the caller is the metastore admin or owner of the parent catalog, all schemas will be retrieved. Otherwise, only schemas owned by the caller or for which the caller has the USE_SCHEMA privilege will be retrieved." }, { "slug": "DATABRICKS_LIST_SECRETS", "name": "List Secrets", "description": "Tool to list all secret keys stored in a Databricks secret scope. Use when you need to retrieve metadata about secrets in a scope (does not return secret values). Requires READ permission on the scope." }, { "slug": "DATABRICKS_LIST_SECRET_SCOPES", "name": "List Secret Scopes", "description": "Tool to list all secret scopes available in the Databricks workspace. Use when you need to retrieve all secret scopes including their names, backend types (DATABRICKS or AZURE_KEYVAULT), and Key Vault metadata for Azure-backed scopes." }, { "slug": "DATABRICKS_LIST_SQL_WAREHOUSES", "name": "List SQL Warehouses", "description": "Tool to list all SQL warehouses in the Databricks workspace. Use when you need to retrieve information about available SQL compute resources for running SQL commands. Returns the full list of SQL warehouses the user has access to, including their configuration, state, and connection details." }, { "slug": "DATABRICKS_LIST_TABLES", "name": "List Catalog Tables", "description": "Tool to list all tables in a Unity Catalog schema with pagination support. Use when you need to retrieve tables from a specific catalog and schema combination. The API is paginated by default - continue reading pages using next_page_token until it's absent to ensure all results are retrieved." }, { "slug": "DATABRICKS_LIST_TOKENS", "name": "List Tokens", "description": "Tool to list all valid personal access tokens (PATs) for a user-workspace pair. Use when you need to retrieve all tokens associated with the authenticated user in the current workspace. Note that each PAT is valid for only one workspace, and Databricks automatically revokes PATs that haven't been used for 90 days." }, { "slug": "DATABRICKS_LIST_USERS", "name": "List Users", "description": "Tool to list all users in a Databricks workspace using SCIM 2.0 protocol. Use when you need to retrieve user identities and their attributes. Supports filtering, pagination, and sorting." }, { "slug": "DATABRICKS_LIST_VECTOR_SEARCH_ENDPOINTS", "name": "List Vector Search Endpoints", "description": "Tool to list all vector search endpoints in the Databricks workspace. Use when you need to retrieve information about vector search endpoints which represent compute resources hosting vector search indexes. Supports pagination for handling large result sets." }, { "slug": "DATABRICKS_MARKETPLACE_CONSUMER_LISTINGS_GET", "name": "Get Marketplace Consumer Listing", "description": "Tool to retrieve a published listing from Databricks Marketplace that consumer has access to. Use when you need to get detailed information about a specific marketplace listing by its ID. Requires Unity Catalog permissions to access marketplace assets." }, { "slug": "DATABRICKS_MARKETPLACE_CONSUMER_PROVIDERS_GET", "name": "Get Marketplace Consumer Provider", "description": "Tool to retrieve information about a specific provider in the Databricks Marketplace with visible listings. Use when you need to get provider details including contact information, description, and metadata." }, { "slug": "DATABRICKS_MARKETPLACE_PROVIDER_LISTINGS_CREATE", "name": "Create Marketplace Provider Listing", "description": "Tool to create a new listing in Databricks Marketplace for data providers. Use when you need to publish data products, datasets, models, or notebooks to the marketplace. Requires a listing object with summary information (name and listing_type). For free and instantly available data products, a share must be included during creation." }, { "slug": "DATABRICKS_MARKETPLACE_PROVIDER_LISTINGS_GET", "name": "Get Marketplace Provider Listing", "description": "Tool to retrieve a specific marketplace provider listing by its identifier. Use when you need to get detailed information about a published or draft listing including metadata, configuration, and assets." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_INSTALLATIONS_CREATE", "name": "Create Marketplace Consumer Installation", "description": "Tool to create a marketplace consumer installation for Databricks Marketplace listings. Use when you need to install data products, datasets, notebooks, models, or other marketplace offerings into a workspace. Requires acceptance of consumer terms and the listing ID to proceed with installation." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_INSTALLATIONS_DELETE", "name": "Delete Marketplace Consumer Installation", "description": "Tool to uninstall a Databricks Marketplace installation. Use when you need to remove an installed data product from your workspace. When an installation is deleted, the shared catalog is removed from the workspace. Requires CREATE CATALOG and USE PROVIDER permissions on the Unity Catalog metastore, or metastore admin role." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_INSTALLATIONS_UPDATE", "name": "Update Marketplace Consumer Installation", "description": "Tool to update marketplace consumer installation fields and rotate tokens for marketplace listings. Use when you need to modify installation attributes or refresh access credentials. The token will be rotated if the rotate_token flag is true." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_LISTINGS_BATCH_GET", "name": "Batch Get Marketplace Consumer Listings", "description": "Retrieve multiple published marketplace listings by their IDs in a single API call. Use this action when you need to fetch details for multiple listings efficiently instead of making individual GET requests. The action accepts up to 50 listing IDs per request and returns complete listing information including summaries, detailed descriptions, asset types, pricing, and metadata. Only listings that exist and are accessible to the caller are returned; invalid or inaccessible IDs are silently filtered out. Returns an empty array if no listings match or if the IDs parameter is omitted. Ideal for bulk operations like displaying multiple listings, syncing catalog data, or checking listing availability." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_PERSONALIZATION_REQUESTS_GET", "name": "Get Marketplace Consumer Personalization Requests", "description": "Tool to retrieve personalization requests for a specific marketplace listing. Use when you need to check the status of customization or commercial transaction requests for a listing. Each consumer can make at most one personalization request per listing." }, { "slug": "DATABRICKS_MKTPLACE_CONSUMER_PROVIDERS_BATCH_GET", "name": "Batch Get Marketplace Consumer Providers", "description": "Retrieve multiple marketplace provider details in a single batch API call. Returns information about Databricks Marketplace providers that have at least one publicly visible listing. Use this tool when you need to get details for multiple providers efficiently (up to 50 providers per request). Provider information includes contact details, descriptions, branding assets, and policy links." }, { "slug": "DATABRICKS_MKTPLACE_PROVIDER_ANALYTICS_DASHBOARDS_CREATE", "name": "Create Provider Analytics Dashboard", "description": "Tool to create a provider analytics dashboard for monitoring Databricks Marketplace listing metrics. Use when you need to establish analytics tracking for listing views, requests, installs, conversion rates, and consumer information. Requires Marketplace admin role and system tables to be enabled in the metastore." }, { "slug": "DATABRICKS_MKTPLACE_PROVIDER_ANALYTICS_DASHBOARDS_GET", "name": "Get Provider Analytics Dashboard", "description": "Tool to retrieve provider analytics dashboard information for monitoring consumer usage metrics. Use when you need to access the dashboard ID to view marketplace listing performance including views, requests, installs, and conversion rates." }, { "slug": "DATABRICKS_MKTPLACE_PROVIDER_ANALYTICS_DASH_GET_LATEST", "name": "Get Latest Provider Analytics Dashboard Version", "description": "Tool to retrieve the latest logical version of the provider analytics dashboard template. Use when you need to get the current dashboard template version for monitoring consumer usage metrics including listing views, requests, and installs." }, { "slug": "DATABRICKS_MKTPLACE_PROVIDER_EXCHANGES_DELETE_LISTING", "name": "Delete Listing From Exchange", "description": "Tool to remove the association between a marketplace exchange and a listing. Use when you need to disassociate an exchange from a provider listing. This removes the listing from the private exchange, and it will no longer be shared with the curated set of customers in that exchange." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_CREATE_EXPERIMENT", "name": "Create ML Experiment", "description": "Tool to create a new MLflow experiment for tracking machine learning runs and models. Use when you need to organize and track ML experiments within Databricks. Returns RESOURCE_ALREADY_EXISTS error if an experiment with the same name already exists." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_CREATE_LOGGED_MODEL", "name": "Create Logged Model", "description": "Tool to create a new logged model in MLflow that ties together model metadata, parameters, metrics, and artifacts. Use when you need to create a LoggedModel object as part of the unified 'log + register' workflow introduced in MLflow 2.8. LoggedModel objects persist throughout a model's lifecycle and provide a centralized way to track model information." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_CREATE_RUN", "name": "Create MLflow Experiment Run", "description": "Tool to create a new MLflow run within an experiment for tracking machine learning execution. Use when starting a new ML training run, experiment execution, or data pipeline that needs parameter and metric tracking. Returns the created run with a unique run_id for subsequent metric and parameter logging." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_EXPERIMENT", "name": "Delete ML Experiment", "description": "Tool to delete an MLflow experiment and associated metadata, runs, metrics, params, and tags. Use when you need to remove an experiment from Databricks. If the experiment uses FileStore, artifacts associated with the experiment are also deleted." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_LOGGED_MODEL", "name": "Delete Logged Model", "description": "Tool to delete a logged model from MLflow tracking. Use when you need to permanently remove a LoggedModel from the tracking server. The deletion is permanent and cannot be undone. LoggedModels track a model's lifecycle across different training and evaluation runs." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_LOGGED_MODEL_TAG", "name": "Delete Logged Model Tag", "description": "Tool to delete a tag from a logged model in MLflow. Use when you need to remove metadata from a LoggedModel object. This operation is irreversible and permanently removes the tag from the logged model. Part of MLflow 3's logged model management capabilities." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_RUN", "name": "Delete ML Experiment Run", "description": "Tool to mark an MLflow run for deletion in ML experiments. Use when you need to remove a specific run from Databricks. This is a soft delete operation - the run is marked for deletion rather than immediately removed and can be restored unless permanently deleted." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_RUNS", "name": "Delete ML Experiment Runs", "description": "Tool to bulk delete runs in an ML experiment created before a specified timestamp. Use when you need to clean up old experiment runs. Only runs created prior to or at the specified timestamp are deleted. The maximum number of runs that can be deleted in one operation is 10000." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_DELETE_TAG", "name": "Delete ML Experiment Run Tag", "description": "Tool to delete a tag from an MLflow experiment run. Use when you need to remove run metadata. This operation is irreversible and permanently removes the tag from the run." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_FINALIZE_LOGGED_MODEL", "name": "Finalize Logged Model", "description": "Tool to finalize a logged model in MLflow by updating its status to READY or FAILED. Use when custom model preparation logic is complete and you need to mark the model as ready for use or indicate that upload failed. This is part of the experimental logged models feature introduced in MLflow 2.8+." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_BY_NAME", "name": "Get ML Experiment By Name", "description": "Tool to retrieve MLflow experiment metadata by name. Use when you need to get experiment details using the experiment name. Returns deleted experiments but prefers active ones if both exist with the same name. Throws RESOURCE_DOES_NOT_EXIST if no matching experiment exists." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_EXPERIMENT", "name": "Get ML Experiment", "description": "Tool to retrieve metadata for an MLflow experiment by ID. Use when you need to get experiment details including name, artifact location, lifecycle stage, and tags. Works on both active and deleted experiments." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_LOGGED_MODEL", "name": "Get Logged Model", "description": "Tool to fetch logged model metadata by unique ID. Use when you need to retrieve a LoggedModel object representing a model logged to an MLflow Experiment. Returns comprehensive model information including metrics, parameters, tags, and artifact details." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_PERMISSION_LEVELS", "name": "Get ML Experiment Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks ML experiment. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific experiment. Returns permission levels (CAN_READ, CAN_EDIT, CAN_MANAGE) with their descriptions." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_PERMISSIONS", "name": "Get ML Experiment Permissions", "description": "Tool to retrieve permissions for an MLflow experiment. Use when you need to check who has access to an experiment and their permission levels. Note that notebook experiments inherit permissions from their corresponding notebook, while workspace experiments have independent permissions." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_GET_RUN", "name": "Get MLflow Run", "description": "Tool to retrieve complete information about a specific MLflow run including metadata, metrics, parameters, tags, inputs, and outputs. Use when you need to get details of a run by its run_id. Returns the most recent metric values when multiple metrics with the same key exist." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_BATCH", "name": "Log Batch MLflow Data", "description": "Tool to log a batch of metrics, parameters, and tags for an MLflow run in a single request. Use when you need to efficiently log multiple metrics, params, or tags simultaneously. Items within each type are processed sequentially in the order specified. The combined total of all items across metrics, params, and tags cannot exceed 1000." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_INPUTS", "name": "Log MLflow Dataset Inputs", "description": "Tool to log dataset inputs to an MLflow run for tracking data sources used during model development. Use when you need to track metadata about datasets used in ML experiment runs, including information about the dataset source, schema, and tags. Enables logging of dataset inputs to a run, allowing you to track data sources throughout the ML lifecycle." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_LOGGED_MODEL_PARAMS", "name": "Log Logged Model Parameters", "description": "Tool to log parameters for a logged model in MLflow. Use when you need to attach hyperparameters or metadata to a LoggedModel object. A param can be logged only once for a logged model, and attempting to overwrite an existing param will result in an error. Available in MLflow 2.8+." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_METRIC", "name": "Log MLflow Metric", "description": "Tool to log a metric for an MLflow run with timestamp. Use when you need to record ML model performance metrics like accuracy, loss, or custom evaluation metrics. Metrics can be logged multiple times with different timestamps and values are never overwritten - each log appends to the metric history for that key." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_MODEL", "name": "Log MLflow Model", "description": "Tool to log a model artifact for an MLflow run (Experimental API). Use when you need to record model metadata including artifact paths, flavors, and versioning information for a training run. The model_json parameter should contain a complete MLmodel specification in JSON string format." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_OUTPUTS", "name": "Log MLflow Dataset Outputs", "description": "Tool to log dataset outputs from an MLflow run for tracking data generated during model development. Use when you need to track metadata about datasets produced by ML experiment runs, including information about predictions, model outputs, or generated data. Enables logging of dataset outputs to a run, allowing you to track generated data throughout the ML lifecycle." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_LOG_PARAM", "name": "Log MLflow Parameter", "description": "Tool to log a parameter for an MLflow run as a key-value pair. Use when you need to record hyperparameters or constant values for ML model training or ETL pipelines. Parameters can only be logged once per run and cannot be changed after logging. Logging identical parameters is idempotent." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_RESTORE_EXPERIMENT", "name": "Restore ML Experiment", "description": "Tool to restore a deleted MLflow experiment and its associated metadata, runs, metrics, params, and tags. Use when you need to recover a previously deleted experiment from Databricks. If the experiment uses FileStore, underlying artifacts are also restored." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_RESTORE_RUN", "name": "Restore ML Experiment Run", "description": "Tool to restore a deleted MLflow run and its associated metadata, runs, metrics, params, and tags. Use when you need to recover a previously deleted run from Databricks ML experiments. The operation cannot restore runs that were permanently deleted." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_RESTORE_RUNS", "name": "Restore ML Experiment Runs", "description": "Tool to bulk restore runs in an ML experiment that were deleted at or after a specified timestamp. Use when you need to recover multiple deleted experiment runs. Only runs deleted at or after the specified timestamp are restored. The maximum number of runs that can be restored in one operation is 10000." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_SEARCH_LOGGED_MODELS", "name": "Search Logged Models", "description": "Tool to search for logged models in MLflow experiments based on various criteria. Use when you need to find models that match specific metrics, parameters, tags, or attributes using SQL-like filter expressions. Supports pagination, ordering results, and filtering by datasets." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_SET_EXPERIMENT_TAG", "name": "Set ML Experiment Tag", "description": "Tool to set a tag on an MLflow experiment. Use when you need to add or update experiment metadata. Experiment tags are metadata that can be updated at any time." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_SET_LOGGED_MODEL_TAGS", "name": "Set Logged Model Tags", "description": "Tool to set tags on a logged model in MLflow. Use when you need to add or update metadata tags on a LoggedModel object for organization and tracking. Tags are key-value pairs that can be used to search and filter logged models. Part of MLflow 3's logged model management capabilities." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_SET_PERMISSIONS", "name": "Set ML Experiment Permissions", "description": "Tool to set permissions for an MLflow experiment, replacing all existing permissions. Use when you need to configure access control for an experiment. This operation replaces ALL existing permissions; for incremental updates, use the update permissions endpoint instead." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_SET_TAG", "name": "Set MLflow Run Tag", "description": "Tool to set a tag on an MLflow run. Use when you need to add custom metadata to runs for filtering, searching, and organizing experiments. Tags with the same key can be overwritten by successive writes. Logging the same tag (key, value) is idempotent." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_UPDATE_EXPERIMENT", "name": "Update ML Experiment", "description": "Tool to update MLflow experiment metadata, primarily for renaming experiments. Use when you need to rename an existing experiment. The new experiment name must be unique across all experiments in the workspace." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_UPDATE_PERMISSIONS", "name": "Update ML Experiment Permissions", "description": "Tool to incrementally update permissions for an MLflow experiment. Use when you need to modify specific permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request." }, { "slug": "DATABRICKS_ML_EXPERIMENTS_UPDATE_RUN", "name": "Update ML Experiment Run", "description": "Tool to update MLflow run metadata including status, end time, and run name. Use when a run's status changes outside normal execution flow or when you need to rename a run. This endpoint allows you to modify a run's metadata after it has been created." }, { "slug": "DATABRICKS_ML_FEATURE_ENG_DELETE_KAFKA_CONFIG", "name": "Delete ML Feature Engineering Kafka Config", "description": "Tool to delete a Kafka configuration from ML Feature Engineering. Use when you need to remove Kafka streaming source configurations. The deletion is permanent and cannot be undone. Kafka configurations define how features are streamed from Kafka sources." }, { "slug": "DATABRICKS_ML_FEATURE_STORE_CREATE_ONLINE_STORE", "name": "Create ML Feature Store Online Store", "description": "Tool to create a Databricks Online Feature Store for real-time feature serving. Use when you need to establish serverless infrastructure for low-latency access to feature data at scale. Requires Databricks Runtime 16.4 LTS ML or above, or serverless compute." }, { "slug": "DATABRICKS_ML_FEATURE_STORE_DELETE_ONLINE_STORE", "name": "Delete ML Feature Store Online Store", "description": "Tool to delete an online store from ML Feature Store. Use when you need to remove online stores that provide low-latency feature serving infrastructure. The deletion is permanent and cannot be undone. Online stores are used for real-time feature retrieval in production ML serving." }, { "slug": "DATABRICKS_ML_FORECASTING_CREATE_EXPERIMENT", "name": "Create ML Forecasting Experiment", "description": "Tool to create a new AutoML forecasting experiment for time series prediction. Use when you need to automatically train and optimize forecasting models on time series data. The experiment will train multiple models and select the best one based on the primary metric." }, { "slug": "DATABRICKS_ML_MAT_FEATURES_DELETE_FEATURE_TAG", "name": "Delete ML Feature Tag", "description": "Delete a metadata tag from a specific feature column in a Databricks ML Feature Store table. This operation removes the tag association from the feature but does not affect the actual feature data. The operation is idempotent - it succeeds even if the tag doesn't exist, making it safe to call multiple times. Use this when you need to remove metadata tags from feature columns, such as removing deprecated labels or cleaning up temporary tags." }, { "slug": "DATABRICKS_ML_MAT_FEATURES_GET_FEATURE_TAG", "name": "Get ML Feature Tag", "description": "Tool to retrieve a specific tag from a feature in a feature table in ML Feature Store. Use when you need to get metadata tag details from specific features. This operation returns the tag name and value associated with the feature." }, { "slug": "DATABRICKS_ML_MAT_FEATURES_UPDATE_FEATURE_TAG", "name": "Set or Update ML Feature Tag", "description": "Tool to set or update a tag on a feature in a feature table in ML Feature Store. Use when you need to add or modify metadata tags on specific features. If the tag already exists, it will be updated with the new value. If the tag doesn't exist, it will be created automatically. This operation is idempotent and can be used to ensure a tag has a specific value." }, { "slug": "DATABRICKS_ML_MODEL_REGISTRY_GET_PERM_LEVELS", "name": "Get ML Model Registry Permission Levels", "description": "Retrieves the list of available permission levels that can be assigned to users or groups for a Databricks ML registered model. This endpoint returns metadata about what permission levels are available (e.g., CAN_READ, CAN_EDIT, CAN_MANAGE, CAN_MANAGE_PRODUCTION_VERSIONS, CAN_MANAGE_STAGING_VERSIONS) with descriptions of what each level grants. Use this to understand permission options before setting or updating model permissions. The returned permission levels are standard across all registered models. Note: This returns the available permission level definitions, not the actual permissions currently assigned to the model. To view actual permissions, use the get permissions endpoint." }, { "slug": "DATABRICKS_OAUTH2_SERVICE_PRINCIPAL_SECRETS_DELETE", "name": "Delete OAuth2 Service Principal Secret", "description": "Tool to delete an OAuth secret from a service principal at the account level. Use when you need to revoke OAuth credentials for service principal authentication. Once deleted, applications or scripts using tokens generated from that secret will no longer be able to access Databricks APIs." }, { "slug": "DATABRICKS_OAUTH2_SERVICE_PRINCIPAL_SECRETS_PROXY_CREATE", "name": "Create OAuth Service Principal Secret", "description": "Tool to create an OAuth secret for service principal authentication. Use when you need to obtain OAuth access tokens for accessing Databricks Accounts and Workspace APIs. A service principal can have up to five OAuth secrets, each valid for up to two years (730 days). The secret value is only shown once upon creation." }, { "slug": "DATABRICKS_PIPELINES_PIPELINES_DELETE", "name": "Delete Databricks Pipeline", "description": "Tool to delete a Databricks Delta Live Tables pipeline permanently and stop any active updates. Use when you need to remove a pipeline completely. If the pipeline publishes to Unity Catalog, deletion will cascade to all pipeline tables. This action cannot be easily undone without Databricks support assistance." }, { "slug": "DATABRICKS_PIPELINES_PIPELINES_GET_PERMISSIONS", "name": "Get Pipeline Permissions", "description": "Tool to retrieve permissions for a Databricks Delta Live Tables pipeline. Use when you need to check who has access to a pipeline and their permission levels. Returns the complete permissions information including access control lists with user, group, and service principal permissions." }, { "slug": "DATABRICKS_PIPELINES_PIPELINES_GET_PERM_LEVELS", "name": "Get Pipeline Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks Delta Live Tables pipeline. Use when you need to understand what permission levels can be assigned to users or groups for a specific pipeline. Returns permission levels like CAN_VIEW, CAN_RUN, CAN_MANAGE, and IS_OWNER with their descriptions." }, { "slug": "DATABRICKS_PIPELINES_PIPELINES_LIST_UPDATES", "name": "List Pipeline Updates", "description": "Tool to retrieve a paginated list of updates for a Databricks Delta Live Tables pipeline. Use when you need to view the update history for a specific pipeline. Returns information about each update including state, creation time, and configuration details such as full refresh and table selection." }, { "slug": "DATABRICKS_PIPELINES_PIPELINES_UPDATE_PERMISSIONS", "name": "Update Pipeline Permissions", "description": "Tool to incrementally update permissions on a Databricks pipeline. Use when you need to modify specific permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request. Pipelines can inherit permissions from root object." }, { "slug": "DATABRICKS_QUALITYMONITORV2_QUALITY_MONITOR_V2_CREATE", "name": "Create Quality Monitor V2", "description": "Tool to create a quality monitor for Unity Catalog table. Use when you need to set up monitoring for data quality metrics, track drift over time, or monitor ML inference logs. Monitor creation is asynchronous; dashboard and metric tables take 8-20 minutes to complete. Exactly one monitor type (snapshot, time_series, or inference_log) must be specified." }, { "slug": "DATABRICKS_SEARCH_MLFLOW_EXPERIMENTS", "name": "Search MLflow Experiments", "description": "Tool to search for MLflow experiments with filtering, ordering, and pagination support. Use when you need to find experiments based on name patterns, tags, or other criteria. Supports SQL-like filtering expressions and ordering by experiment attributes." }, { "slug": "DATABRICKS_SEARCH_MLFLOW_RUNS", "name": "Search MLflow Runs", "description": "Tool to search for MLflow runs with filtering, ordering, and pagination support. Use when you need to find runs based on metrics, parameters, tags, or other criteria. Supports complex filter expressions with operators like =, !=, >, >=, <, <= for metrics, params, and tags." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_CREATE_PROV_THPUT", "name": "Create Provisioned Throughput Endpoint", "description": "Tool to create a provisioned throughput serving endpoint for AI models in Databricks. Use when you need to provision model units for production GenAI applications with guaranteed throughput. The endpoint name must be unique across the workspace and can consist of alphanumeric characters, dashes, and underscores. Returns a long-running operation that completes when the endpoint is ready." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_DELETE", "name": "Delete Serving Endpoint", "description": "Tool to delete a model serving endpoint and all associated data. Use when you need to permanently remove an endpoint. Deletion is permanent and cannot be undone. This operation disables usage and deletes all data associated with the endpoint." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_GET", "name": "Get Serving Endpoint Details", "description": "Retrieves comprehensive details about a specific Databricks serving endpoint by name. Use this action to: - Get endpoint status and readiness state (READY, NOT_READY, UPDATE_FAILED) - View served model/entity configurations including foundation model details - Check endpoint capabilities (function calling, image input, long context, reasoning) - Retrieve pricing information (input/output token costs in DBUs) - Inspect AI Gateway settings (usage tracking, safety/PII guardrails) - Review traffic routing and workload configurations - Verify permission levels and access controls Returns detailed information including endpoint type (FOUNDATION_MODEL_API or CUSTOM_MODEL_API), task type (llm/v1/chat, llm/v1/completions, llm/v1/embeddings), model documentation links, and configuration versions." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_GET_OPEN_API", "name": "Get Serving Endpoint OpenAPI Spec", "description": "Tool to retrieve the OpenAPI 3.1.0 specification for a serving endpoint. Use when you need to understand the endpoint's schema, generate client code, or visualize the API structure. The endpoint must be in a READY state and the served model must have a model signature logged." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_GET_PERM_LEVELS", "name": "Get Serving Endpoint Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks serving endpoint. Use when you need to understand what permission levels can be assigned to users or groups for access control. Returns permission levels like CAN_MANAGE, CAN_QUERY, and CAN_VIEW with their descriptions." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_PUT", "name": "Update Serving Endpoint Rate Limits", "description": "Tool to update rate limits for a Databricks serving endpoint. Use when you need to control the number of API calls allowed within a time period. Note: This endpoint is deprecated; consider using AI Gateway for rate limit management instead." }, { "slug": "DATABRICKS_SERVING_SERVING_ENDPOINTS_PUT_AI_GATEWAY", "name": "Update Serving Endpoint AI Gateway", "description": "Tool to update AI Gateway configuration of a Databricks serving endpoint. Use when you need to configure traffic fallback, AI guardrails, payload logging, rate limits, or usage tracking. Supports external model, provisioned throughput, and pay-per-token endpoints; agent endpoints currently only support inference tables." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_ACCESS_POLICY_DELETE", "name": "Delete AI/BI Dashboard Embedding Access Policy", "description": "Tool to delete AI/BI dashboard embedding access policy, reverting to default. Use when you need to remove the workspace-level policy for AI/BI published dashboard embedding. Upon deletion, the workspace reverts to the default setting (ALLOW_APPROVED_DOMAINS), conditionally permitting AI/BI dashboards to be embedded on approved domains." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_ACCESS_POLICY_GET", "name": "Get AI/BI Dashboard Embedding Access Policy", "description": "Tool to retrieve workspace AI/BI dashboard embedding access policy setting. Use when you need to check whether AI/BI published dashboard embedding is enabled, conditionally enabled, or disabled. The default setting is ALLOW_APPROVED_DOMAINS which permits AI/BI dashboards to be embedded on approved domains." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_ACCESS_POLICY_UPDATE", "name": "Update AI/BI Dashboard Embedding Access Policy", "description": "Tool to update AI/BI dashboard embedding workspace access policy at the workspace level. Use when you need to control whether AI/BI published dashboard embedding is enabled, conditionally enabled, or disabled. Follows read-modify-write workflow with etag-based optimistic concurrency control to prevent race conditions." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_APPROVED_DOMAINS_GET", "name": "Get AI/BI Dashboard Embedding Approved Domains", "description": "Tool to retrieve the list of domains approved to host embedded AI/BI dashboards. Use when you need to check which external domains are permitted to embed AI/BI dashboards. The approved domains list cannot be modified unless the workspace access policy is set to ALLOW_APPROVED_DOMAINS." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_DOMAINS_DELETE", "name": "Delete AI/BI Dashboard Embedding Approved Domains", "description": "Tool to delete the list of approved domains for AI/BI dashboard embedding, reverting to default. Use when you need to remove the workspace-level approved domains list for hosting embedded AI/BI dashboards. Upon deletion, the workspace reverts to an empty approved domains list. The approved domains list cannot be modified when the current access policy is not configured to ALLOW_APPROVED_DOMAINS." }, { "slug": "DATABRICKS_SETTINGS_AIBI_DASH_EMBEDDING_DOMAINS_UPDATE", "name": "Update AI/BI Dashboard Embedding Approved Domains", "description": "Tool to update the list of domains approved to host embedded AI/BI dashboards at the workspace level. Use when you need to modify the approved domains list. The approved domains list can only be modified when the current access policy is set to ALLOW_APPROVED_DOMAINS." }, { "slug": "DATABRICKS_SETTINGS_AUTOMATIC_CLUSTER_UPDATE_GET", "name": "Get Automatic Cluster Update Setting", "description": "Tool to retrieve automatic cluster update setting for the workspace. Use when you need to check whether automatic cluster updates are enabled, view maintenance window configuration, or get restart behavior settings. This setting controls whether clusters automatically update during maintenance windows. Currently in Public Preview." }, { "slug": "DATABRICKS_SETTINGS_AUTOMATIC_CLUSTER_UPDATE_UPDATE", "name": "Update Automatic Cluster Update Setting", "description": "Tool to update workspace automatic cluster update configuration with etag-based concurrency control. Use when you need to enable/disable automatic cluster updates, configure maintenance windows, or adjust restart behavior. Requires Enhanced Security Compliance SKU entitlement and admin access. If the setting is updated concurrently, the PATCH request fails with HTTP 409 requiring retry with fresh etag. Note: The enabled field can only be modified if the workspace has the necessary entitlement; other fields like maintenance_window and restart_even_if_no_updates_available can be configured regardless." }, { "slug": "DATABRICKS_SETTINGS_COMPL_SECURITY_PROFILE_GET", "name": "Get Compliance Security Profile Setting", "description": "Tool to retrieve workspace compliance security profile setting. Use when you need to check whether CSP is enabled or view configured compliance standards. The CSP enables additional monitoring, enforced instance types for inter-node encryption, hardened compute images, and other security controls. Once enabled, this setting represents a permanent workspace change that cannot be disabled." }, { "slug": "DATABRICKS_SETTINGS_DASH_EMAIL_SUBS_DELETE", "name": "Delete Dashboard Email Subscriptions Setting", "description": "Tool to delete the dashboard email subscriptions setting, reverting to default value. Use when you need to revert the workspace setting that controls whether schedules or workload tasks for refreshing AI/BI Dashboards can send subscription emails. Upon deletion, the setting reverts to its default value (enabled/true). This is a workspace-level setting." }, { "slug": "DATABRICKS_SETTINGS_DASH_EMAIL_SUBS_GET", "name": "Get Dashboard Email Subscriptions Setting", "description": "Tool to retrieve dashboard email subscriptions setting for the workspace. Use when you need to check whether schedules or workload tasks for refreshing AI/BI Dashboards can send subscription emails. By default, this setting is enabled." }, { "slug": "DATABRICKS_SETTINGS_DASH_EMAIL_SUBS_UPDATE", "name": "Update Dashboard Email Subscriptions Setting", "description": "Tool to update the Dashboard Email Subscriptions setting for the workspace with etag-based concurrency control. Use when you need to enable or disable whether dashboard schedules can send subscription emails. If the setting is updated concurrently, the PATCH request fails with HTTP 409 requiring retry with fresh etag." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_NAMESPACE_DELETE", "name": "Delete Default Namespace Setting", "description": "Tool to delete the default namespace setting for the workspace, removing the default catalog configuration. Use when you need to remove the default catalog used for queries without fully qualified names. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_NAMESPACE_GET", "name": "Get Default Namespace Setting", "description": "Tool to retrieve the default catalog namespace setting for the workspace. Use when you need to check which catalog is used for unqualified table references in Unity Catalog-enabled compute. Changes to this setting require restart of clusters and SQL warehouses to take effect." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_NAMESPACE_UPDATE", "name": "Update Default Namespace Setting", "description": "Tool to update the default catalog namespace configuration for workspace queries with etag-based concurrency control. Use when you need to configure the default catalog used for queries without fully qualified three-level names. Requires a restart of clusters and SQL warehouses to take effect. Only applies to Unity Catalog-enabled compute. If concurrent updates occur, the request fails with 409 status requiring retry with fresh etag." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_WAREHOUSE_ID_DELETE", "name": "Delete Default Warehouse ID Setting", "description": "Tool to delete the default warehouse ID setting for the workspace, reverting to default state. Use when you need to remove the default SQL warehouse configuration. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_WAREHOUSE_ID_GET", "name": "Get Default Warehouse ID Setting", "description": "Tool to retrieve the default SQL warehouse ID setting for the workspace. Use when you need to check which warehouse is configured as the default for SQL authoring surfaces, AI/BI dashboards, Genie, Alerts, and Catalog Explorer." }, { "slug": "DATABRICKS_SETTINGS_DEFAULT_WAREHOUSE_ID_UPDATE", "name": "Update Default Warehouse ID Setting", "description": "Tool to update the default SQL warehouse configuration for the workspace with etag-based concurrency control. Use when you need to configure which warehouse is used as the default for SQL operations and queries in the workspace. If concurrent updates occur, the request fails with 409 status requiring retry with fresh etag." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_ACCESS_DELETE", "name": "Delete Disable Legacy Access Setting", "description": "Tool to delete the disable legacy access workspace setting, re-enabling legacy features. Use when you need to revert to allowing legacy Databricks features. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409). Changes take up to 5 minutes and require cluster/warehouse restart." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_ACCESS_GET", "name": "Get Disable Legacy Access Setting", "description": "Tool to retrieve the disable legacy access workspace setting. Use when you need to check whether legacy feature access is disabled, including direct Hive Metastore access, Fallback Mode on external locations, and Databricks Runtime versions prior to 13.3 LTS." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_ACCESS_UPDATE", "name": "Update Disable Legacy Access Setting", "description": "Tool to enable the workspace disable legacy access setting with optional etag-based concurrency control. Use when you need to enable (not disable) restrictions on legacy features including direct Hive Metastore access, external location fallback mode, and Databricks Runtime versions prior to 13.3LTS. Note: This setting can only be set to true (enabled), not false. The etag parameter is optional but recommended for preventing concurrent modification conflicts." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_DBFS_DELETE", "name": "Delete Disable Legacy DBFS Setting", "description": "Tool to delete the disable legacy DBFS workspace setting, reverting to default DBFS access behavior. Use when you need to re-enable access to legacy DBFS root and mounts. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_DBFS_GET", "name": "Get Disable Legacy DBFS Setting", "description": "Tool to retrieve the disable legacy DBFS workspace setting. Use when you need to check whether legacy DBFS root and mount access is disabled across all interfaces (UI, APIs, CLI, FUSE). When enabled, this setting also disables Databricks Runtime versions prior to 13.3 LTS and requires manual restart of compute clusters and SQL warehouses to take effect." }, { "slug": "DATABRICKS_SETTINGS_DISABLE_LEGACY_DBFS_UPDATE", "name": "Update Disable Legacy DBFS Setting", "description": "Tool to update workspace disable legacy DBFS setting with etag-based concurrency control. Use when you need to enable or disable legacy DBFS features including DBFS root access, mounts, and legacy Databricks Runtime versions prior to 13.3 LTS. Changes take up to 20 minutes to take effect and require manual restart of compute clusters and SQL warehouses." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_EXPORT_NOTEBOOK_GET_ENABLE", "name": "Get Enable Export Notebook Setting", "description": "Tool to retrieve workspace setting controlling notebook export functionality. Use when you need to check whether users can export notebooks and files from the Workspace UI. Administrators use this setting to manage data exfiltration controls." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_EXPORT_NOTEBOOK_PATCH_ENABLE", "name": "Update Enable Export Notebook", "description": "Tool to update workspace notebook and file export setting. Use when you need to enable or disable users' ability to export notebooks and files from the Workspace UI. Requires admin access." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_NOTEBOOK_TABLE_CLIPBOARD_GET", "name": "Get Enable Notebook Table Clipboard Setting", "description": "Tool to retrieve notebook table clipboard setting for the workspace. Use when you need to check whether notebook table clipboard functionality is enabled. This setting controls whether users can copy data from tables in notebooks to their clipboard." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_NOTEBOOK_TABLE_CLIPBOARD_PATCH", "name": "Update Enable Notebook Table Clipboard", "description": "Tool to update workspace setting for notebook table clipboard. Use when you need to enable or disable users' ability to copy tabular data from notebook result tables to clipboard. Requires workspace admin privileges." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_RESULTS_DOWNLOADING_GET_ENABLE", "name": "Get Enable Results Downloading Setting", "description": "Tool to retrieve workspace setting controlling notebook results download functionality. Use when you need to check whether users can download notebook query results. Requires workspace administrator privileges to access." }, { "slug": "DATABRICKS_SETTINGS_ENABLE_RESULTS_DOWNLOADING_PATCH", "name": "Update Enable Results Downloading", "description": "Tool to update workspace notebook results download setting. Use when you need to enable or disable users' ability to download notebook results. Requires admin access." }, { "slug": "DATABRICKS_SETTINGS_ENHANCED_SECURITY_MONITORING_GET", "name": "Get Enhanced Security Monitoring Setting", "description": "Tool to retrieve enhanced security monitoring workspace setting. Use when you need to check whether Enhanced Security Monitoring is enabled for the workspace. Enhanced Security Monitoring provides a hardened disk image and additional security monitoring agents. It is automatically enabled when compliance security profile is active, and can be manually toggled when compliance security profile is disabled." }, { "slug": "DATABRICKS_SETTINGS_ENHANCED_SECURITY_MONITORING_UPDATE", "name": "Update Enhanced Security Monitoring", "description": "Tool to update enhanced security monitoring workspace settings. Use when you need to enable or disable Enhanced Security Monitoring (ESM) for the workspace. Requires the etag from a previous GET request for optimistic concurrency control." }, { "slug": "DATABRICKS_SETTINGS_IP_ACCESS_LISTS_CREATE", "name": "Create IP Access List", "description": "Tool to create a new IP access list for workspace access control. Use when you need to allow or block specific IP addresses and CIDR ranges from accessing the Databricks workspace. The API will reject creation if the resulting list would block the caller's current IP address. Changes may take a few minutes to take effect." }, { "slug": "DATABRICKS_SETTINGS_IP_ACCESS_LISTS_GET", "name": "Get IP Access List", "description": "Tool to retrieve details of a specific IP access list by its ID. Use when you need to view the configuration of allowed or blocked IP addresses and subnets for accessing the workspace or workspace-level APIs. Requires workspace admin privileges." }, { "slug": "DATABRICKS_SETTINGS_LLM_PROXY_PARTNER_POWERED_WORKSPACE_GET", "name": "Get LLM Proxy Partner Powered Setting", "description": "Tool to retrieve workspace-level setting that controls whether partner-powered AI features are enabled. Use when you need to check if features like Databricks Assistant, Genie, and Data Science Agent can use models hosted by partner providers (Azure OpenAI or Anthropic). By default, this setting is enabled for non-CSP workspaces." }, { "slug": "DATABRICKS_SETTINGS_LLM_PROXY_PARTNER_WORKSPACE_DELETE", "name": "Delete LLM Proxy Partner Powered Setting", "description": "Tool to delete (revert to default) the partner-powered AI features workspace setting. Use when you need to revert the workspace to default configuration for AI features powered by partner providers. By default, this setting is enabled for workspaces without a compliance security profile. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_LLM_PROXY_PARTNER_WORKSPACE_UPDATE", "name": "Update LLM Proxy Partner Powered Setting", "description": "Updates workspace-level setting that controls whether AI features are powered by partner-hosted models. Use to enable/disable partner-powered AI features (Azure OpenAI or Anthropic on Databricks). When disabled, Databricks-hosted models are used instead. IMPORTANT: You must first call DATABRICKS_SETTINGS_LLM_PROXY_PARTNER_POWERED_WORKSPACE_GET to obtain the current etag before updating. If concurrent updates occur, request fails with 409 status - retry with the fresh etag from the 409 response." }, { "slug": "DATABRICKS_SETTINGS_NOTIF_DESTS_CREATE", "name": "Create Notification Destination", "description": "Tool to create a notification destination for alerts and jobs. Use when you need to set up destinations for sending notifications outside of Databricks (email, Slack, PagerDuty, Microsoft Teams, or webhooks). Only workspace admins can create notification destinations. Requires HTTPS for webhooks with SSL certificates signed by a trusted certificate authority." }, { "slug": "DATABRICKS_SETTINGS_NOTIF_DESTS_DELETE", "name": "Delete Notification Destination", "description": "Tool to delete a notification destination from the Databricks workspace. Use when you need to permanently remove a notification destination. Only workspace administrators have permission to perform this delete operation." }, { "slug": "DATABRICKS_SETTINGS_NOTIF_DESTS_UPDATE", "name": "Update Notification Destination", "description": "Tool to update an existing notification destination configuration. Use when you need to modify display name or configuration settings for email, Slack, PagerDuty, Microsoft Teams, or webhook destinations. Requires workspace admin permissions. At least one field (display_name or config) must be provided." }, { "slug": "DATABRICKS_SETTINGS_NOTIFICATION_DESTINATIONS_GET", "name": "Get Notification Destination", "description": "Tool to retrieve details of a notification destination by its UUID identifier. Use when you need to get configuration details, display name, and type information for a specific notification destination. Only users with workspace admin permissions will see the full configuration details." }, { "slug": "DATABRICKS_SETTINGS_RESTRICT_WORKSPACE_ADMINS_DELETE", "name": "Delete Restrict Workspace Admins Setting", "description": "Tool to delete/revert the restrict workspace admins setting to its default state. Use when you need to restore default workspace administrator capabilities for service principal token creation and job ownership settings. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_RESTRICT_WORKSPACE_ADMINS_GET", "name": "Get Restrict Workspace Admins Setting", "description": "Tool to retrieve the restrict workspace admins setting for the workspace. Use when you need to check whether workspace administrators are restricted in their ability to create service principal tokens, change job owners, or modify job run_as settings. This setting controls security boundaries for admin privileges." }, { "slug": "DATABRICKS_SETTINGS_RESTRICT_WORKSPACE_ADMINS_UPDATE", "name": "Update Restrict Workspace Admins Setting", "description": "Tool to update the restrict workspace admins setting with etag-based concurrency control. Use when you need to modify workspace administrator capabilities for service principal token creation and job ownership/run-as settings. Requires account admin permissions and workspace membership. If concurrent updates occur, the request fails with HTTP 409 requiring retry with fresh etag." }, { "slug": "DATABRICKS_SETTINGS_SQL_RESULTS_DOWNLOAD_DELETE", "name": "Delete SQL Results Download Setting", "description": "Tool to delete SQL results download workspace setting, reverting to default state where users are permitted to download results. Use when you need to restore the factory default configuration. Strongly recommended to use etag in a read-delete pattern to prevent concurrent modification conflicts (HTTP 409)." }, { "slug": "DATABRICKS_SETTINGS_SQL_RESULTS_DOWNLOAD_GET", "name": "Get SQL Results Download Setting", "description": "Tool to retrieve SQL results download workspace setting. Use when you need to check whether users within the workspace are allowed to download results from the SQL Editor and AI/BI Dashboards UIs. By default, this setting is enabled (set to true). Returns etag for use in subsequent update/delete operations." }, { "slug": "DATABRICKS_SETTINGS_SQL_RESULTS_DOWNLOAD_UPDATE", "name": "Update SQL Results Download Setting", "description": "Tool to update workspace SQL results download setting controlling whether users can download results from SQL Editor and AI/BI Dashboards. Use when you need to enable or disable SQL query results download capability. Requires workspace admin access and uses etag-based optimistic concurrency control to prevent conflicting updates." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MANAGEMENT_DELETE", "name": "Delete Token via Token Management", "description": "Tool to delete a token specified by ID via token management. Use when you need to revoke or remove access tokens. Admins can delete tokens for any user." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MANAGEMENT_GET", "name": "Get Token Information", "description": "Tool to retrieve detailed information about a specific token by its ID from the token management system. Use when you need to get token metadata including creation time, expiry, owner, and usage information. Requires appropriate permissions to access token information." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MGMT_GET_PERM_LEVELS", "name": "Get Token Management Permission Levels", "description": "Tool to retrieve available permission levels for personal access token management. Use when you need to understand what permission levels can be assigned for managing tokens in the workspace. Returns permission levels like CAN_USE and CAN_MANAGE with their descriptions." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MGMT_GET_PERMS", "name": "Get Token Management Permissions", "description": "Tool to retrieve permissions for workspace token management. Use when you need to check which users, groups, and service principals have permissions to create and manage personal access tokens. Requires workspace admin privileges and is available only in Databricks Premium plan." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MGMT_SET_PERMS", "name": "Set Token Management Permissions", "description": "Tool to set permissions for personal access token management, replacing all existing permissions. Use when configuring which users, groups, and service principals can create and use tokens. This operation replaces ALL existing permissions; if you need to add or modify permissions without replacing existing ones, use the update_permissions method instead. Workspace admins always retain CAN_MANAGE permissions." }, { "slug": "DATABRICKS_SETTINGS_TOKEN_MGMT_UPDATE_PERMS", "name": "Update Token Management Permissions", "description": "Tool to incrementally update permissions for personal access token management. Use when you need to modify who can create and use personal access tokens. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request." }, { "slug": "DATABRICKS_SETTINGS_TOKENS_CREATE", "name": "Create Personal Access Token", "description": "Tool to create a personal access token (PAT) for Databricks API authentication. Use when you need to generate a new token for REST API requests. Each PAT is valid for only one workspace. Users can create up to 600 PATs per workspace. Databricks automatically revokes PATs that haven't been used for 90 days." }, { "slug": "DATABRICKS_SETTINGSV2_WORKSPACE_SETTINGS_V2_GET_PUBLIC", "name": "Get Public Workspace Setting", "description": "Retrieves the current configuration of a workspace-level setting. Use this to get workspace settings such as admin restrictions, automatic cluster updates, default SQL namespaces, security profiles, and monitoring configurations. The response includes an etag for version control, enabling safe concurrent updates. Common use cases include checking current security settings, verifying cluster update policies, or retrieving namespace defaults before making changes." }, { "slug": "DATABRICKS_SETTINGS_WORKSPACE_CONF_SET_STATUS", "name": "Set Workspace Configuration Status", "description": "Set workspace-level configuration settings for a Databricks workspace. Commonly used to configure the maximum token lifetime for personal access tokens (maxTokenLifetimeDays). Updates are applied immediately and affect workspace behavior. Requires workspace admin permissions. Invalid or unsupported configuration keys will return a 400 Bad Request error." }, { "slug": "DATABRICKS_SHARING_PROVIDERS_CREATE", "name": "Create Sharing Provider", "description": "Tool to create a new authentication provider in Unity Catalog for Delta Sharing. Use when establishing a provider object for receiving data from external sources that aren't Unity Catalog-enabled. Requires metastore admin privileges or CREATE_PROVIDER permission on the metastore. Most recipients should not need to create provider objects manually as they are typically auto-created during Delta Sharing." }, { "slug": "DATABRICKS_SHARING_PROVIDERS_GET", "name": "Get Sharing Provider", "description": "Tool to retrieve information about a specific Delta Sharing provider in Unity Catalog. Use when you need to get provider details including authentication type, ownership, and connection information. Requires metastore admin privileges or provider ownership." }, { "slug": "DATABRICKS_SHARING_PROVIDERS_UPDATE", "name": "Update Sharing Provider", "description": "Tool to update an existing Delta Sharing authentication provider in Unity Catalog. Use when you need to modify provider properties like comment, owner, or name. The caller must be either a metastore admin or the owner of the provider. To rename the provider, the caller must be BOTH a metastore admin AND the owner." }, { "slug": "DATABRICKS_SHARING_RECIPIENTS_CREATE", "name": "Create Sharing Recipient", "description": "Tool to create a Delta Sharing recipient in Unity Catalog metastore. Use when you need to create a recipient object representing an identity who will consume shared data. Recipients can be configured for Databricks-to-Databricks sharing or open sharing with token authentication. Requires metastore admin or CREATE_RECIPIENT privilege." }, { "slug": "DATABRICKS_SHARING_RECIPIENTS_DELETE", "name": "Delete Sharing Recipient", "description": "Tool to delete a Delta Sharing recipient from Unity Catalog metastore. Use when you need to permanently remove a recipient object. Deletion invalidates all access tokens and immediately revokes access to shared data for users represented by the recipient. Requires recipient owner privileges." }, { "slug": "DATABRICKS_SHARING_RECIPIENTS_GET", "name": "Get Sharing Recipient", "description": "Tool to retrieve a Delta Sharing recipient from Unity Catalog metastore by name. Use when you need to get information about a recipient object representing an entity that receives shared data. Requires recipient ownership or metastore admin privileges." }, { "slug": "DATABRICKS_SHARING_SHARES_CREATE", "name": "Create Share", "description": "Tool to create a new share for data objects in Unity Catalog. Use when you need to establish a share for distributing data assets via Delta Sharing protocol. Data objects can be added after creation with update. Requires metastore admin or CREATE_SHARE privilege on the metastore." }, { "slug": "DATABRICKS_SHARING_SHARES_DELETE", "name": "Delete Share", "description": "Tool to delete a Unity Catalog share from the metastore. Use when you need to permanently remove a share object. Deletion immediately revokes recipient access to the shared data. This operation is permanent and requires share owner privileges." }, { "slug": "DATABRICKS_SHARING_SHARES_GET", "name": "Get Share Details", "description": "Tool to retrieve details of a specific share from Unity Catalog. Use when you need to get information about a share including its metadata, owner, and optionally the list of shared data objects. Requires metastore admin privileges or share ownership." }, { "slug": "DATABRICKS_SHARING_SHARES_SHARE_PERMISSIONS", "name": "Get Share Permissions", "description": "Tool to retrieve permissions for a Delta Sharing share from Unity Catalog. Use when you need to check which principals have been granted privileges on a share. Requires metastore admin privileges or share ownership." }, { "slug": "DATABRICKS_SHARING_SHARES_UPDATE", "name": "Update Share", "description": "Tool to update an existing share in Unity Catalog with changes to metadata or data objects. Use when you need to modify share properties (comment, owner, name) or manage shared data objects (add, remove, or update tables/views/volumes). The caller must be a metastore admin or the owner of the share. For table additions, the owner must have SELECT privilege on the table." }, { "slug": "DATABRICKS_SQL_ALERTS_CREATE", "name": "Create SQL Alert", "description": "Tool to create a new Databricks SQL alert for query monitoring. Use when you need to set up alerts that monitor query results and trigger notifications when specified conditions are met. The alert will evaluate the query results and send notifications when the condition threshold is crossed." }, { "slug": "DATABRICKS_SQL_ALERTS_DELETE", "name": "Delete SQL Alert", "description": "Tool to delete a Databricks SQL alert (soft delete to trash). Use when you need to remove an alert from active monitoring. The alert is moved to trash and can be restored through the UI. Trashed alerts are automatically cleaned up after 30 days. Note: Deleting an already-deleted alert will return an error (not idempotent)." }, { "slug": "DATABRICKS_SQL_ALERTS_GET", "name": "Get SQL Alert Details", "description": "Tool to retrieve details of a specific Databricks SQL alert by its UUID. Use when you need to get information about an alert including its configuration, trigger conditions, state, and notification settings." }, { "slug": "DATABRICKS_SQL_ALERTS_LEGACY_CREATE", "name": "Create Legacy SQL Alert", "description": "Tool to create a legacy SQL alert that periodically runs a query and notifies when conditions are met. Use when you need to create alerts using the legacy API endpoint. Note: This is a legacy endpoint that has been replaced by /api/2.0/sql/alerts and is deprecated." }, { "slug": "DATABRICKS_SQL_ALERTS_LEGACY_DELETE", "name": "Delete Legacy SQL Alert", "description": "Tool to permanently delete a legacy SQL alert (permanent deletion). Use when you need to permanently remove an alert using the legacy API endpoint. Note: This is a legacy endpoint that permanently deletes alerts. Unlike the newer /api/2.0/sql/alerts endpoint, deleted alerts cannot be restored from trash." }, { "slug": "DATABRICKS_SQL_ALERTS_LEGACY_GET", "name": "Get Legacy SQL Alert", "description": "Tool to retrieve details of a specific legacy SQL alert by its ID. Use when you need to get information about a legacy alert including its configuration, state, query details, and notification settings. Note: This is a legacy endpoint (/api/2.0/preview/sql/alerts) that is deprecated and being replaced by /api/2.0/sql/alerts." }, { "slug": "DATABRICKS_SQL_ALERTS_LEGACY_LIST", "name": "List Legacy SQL Alerts", "description": "Tool to list all legacy SQL alerts accessible to the authenticated user. Use when you need to retrieve a list of all legacy alerts in the workspace. Note: This is a legacy endpoint (/api/2.0/preview/sql/alerts) that is deprecated and being replaced by /api/2.0/sql/alerts." }, { "slug": "DATABRICKS_SQL_ALERTS_LEGACY_UPDATE", "name": "Update Legacy SQL Alert", "description": "Tool to update a legacy SQL alert configuration including name, query reference, trigger conditions, and notification settings. Use when you need to modify existing alerts using the legacy API endpoint. Note: This is a legacy endpoint that has been replaced by /api/2.0/sql/alerts and is deprecated." }, { "slug": "DATABRICKS_SQL_ALERTS_UPDATE", "name": "Update SQL Alert", "description": "Tool to update an existing Databricks SQL alert using partial update with field mask. Use when you need to modify alert properties including display name, query reference, trigger conditions, notification settings, or ownership." }, { "slug": "DATABRICKS_SQL_DASHBOARDS_DELETE", "name": "Delete SQL Dashboard", "description": "Tool to delete a legacy Databricks SQL dashboard by moving it to trash (soft delete). Use when you need to remove a dashboard from active use. The dashboard is moved to trash and can be restored later through the UI. Trashed dashboards do not appear in searches and cannot be shared." }, { "slug": "DATABRICKS_SQL_DASHBOARDS_GET", "name": "Get SQL Dashboard", "description": "Tool to retrieve complete legacy dashboard definition with metadata, widgets, and queries. Use when you need to get detailed information about a SQL dashboard. Note: Legacy dashboards API deprecated as of January 12, 2026. Databricks recommends using AI/BI dashboards (Lakeview API) for new implementations." }, { "slug": "DATABRICKS_SQL_DASHBOARDS_UPDATE", "name": "Update SQL Dashboard", "description": "Tool to update legacy Databricks SQL dashboard attributes (name, run_as_role, tags). Use when you need to modify dashboard metadata. Note: This operation only affects dashboard object attributes and does NOT add, modify, or remove widgets." }, { "slug": "DATABRICKS_SQL_DBSQL_PERMISSIONS_GET", "name": "Get SQL Object Permissions", "description": "Tool to retrieve the access control list for legacy DBSQL (Redash-based) objects including alerts, dashboards, and queries. Use when you need to check who has access to these legacy SQL objects and their permission levels. IMPORTANT: This API is deprecated as of January 2026. For permissions on modern Lakeview dashboards or other workspace objects, use the IAM Permissions API (DATABRICKS_IAM_PERMISSIONS_GET) instead. Legacy DBSQL objects are no longer directly accessible and should be migrated to AI/BI dashboards." }, { "slug": "DATABRICKS_SQL_DBSQL_PERMISSIONS_SET", "name": "Set SQL Object Permissions", "description": "Tool to set access control list for legacy SQL objects (alerts, dashboards, queries, or data_sources). Use when you need to configure permissions for legacy SQL objects created via the /preview/sql endpoints. IMPORTANT: - This operation REPLACES ALL existing permissions. To retain existing permissions, include them in the access_control_list. - This is a DEPRECATED API; Databricks recommends using the Workspace API (/api/2.0/permissions) instead. - Only works with LEGACY SQL objects: Legacy SQL queries (/preview/sql/queries), legacy Redash-based SQL dashboards (NOT Lakeview dashboards), legacy SQL alerts, and SQL warehouses (data_sources). - Does NOT work with modern Lakeview dashboards (/lakeview/dashboards) or modern SQL queries (/sql/queries)." }, { "slug": "DATABRICKS_SQL_QUERIES_CREATE", "name": "Create SQL Query", "description": "Tool to create a saved SQL query object in Databricks. Use when you need to create a new saved query definition that includes the target SQL warehouse, query text, name, description, tags, and parameters. Note: This creates a saved query object, not an immediate execution. Use Statement Execution API for immediate query execution." }, { "slug": "DATABRICKS_SQL_QUERIES_DELETE", "name": "Delete SQL Query", "description": "Tool to delete a Databricks SQL query (soft delete to trash). Use when you need to remove a query from searches and list views. The query is moved to trash and can be restored through the UI within 30 days, after which it is permanently deleted." }, { "slug": "DATABRICKS_SQL_QUERIES_GET", "name": "Get SQL Query Details", "description": "Tool to retrieve detailed information about a specific SQL query by its UUID. Use when you need to get query configuration including SQL text, warehouse ID, parameters, ownership, and metadata." }, { "slug": "DATABRICKS_SQL_QUERIES_LEGACY_CREATE", "name": "Create Legacy SQL Query", "description": "Tool to create a new SQL query definition using the legacy API. Use when you need to create queries with the legacy /preview/sql/queries endpoint that uses data_source_id. Note: This is a legacy endpoint. The API has been replaced by /api/2.0/sql/queries which uses warehouse_id instead of data_source_id." }, { "slug": "DATABRICKS_SQL_QUERIES_LEGACY_DELETE", "name": "Delete Legacy SQL Query", "description": "Tool to delete a legacy SQL query (soft delete to trash). Use when you need to remove a legacy query from searches and list views. The query is moved to trash and permanently deleted after 30 days. Note: This is a deprecated legacy API that will be phased out; use the non-legacy endpoint instead." }, { "slug": "DATABRICKS_SQL_QUERIES_LEGACY_GET", "name": "Get Legacy SQL Query", "description": "Tool to retrieve details of a specific legacy SQL query by its UUID. Use when you need to get information about a legacy query including its SQL text, parameters, configuration, and metadata. Note: This is a legacy endpoint (/api/2.0/preview/sql/queries) that has been replaced by /api/2.0/sql/queries and will be supported for six months to allow migration time." }, { "slug": "DATABRICKS_SQL_QUERIES_LEGACY_RESTORE", "name": "Restore SQL Query (Legacy)", "description": "Tool to restore a trashed SQL query to active state. Use when you need to recover a deleted query within 30 days of deletion. Once restored, the query reappears in list views and searches and can be used for alerts again. This is a legacy/deprecated API endpoint." }, { "slug": "DATABRICKS_SQL_QUERIES_LEGACY_UPDATE", "name": "Update Legacy SQL Query", "description": "Tool to update an existing SQL query definition using the legacy API. Use when you need to modify queries with the legacy /preview/sql/queries endpoint. Note: This is a legacy/deprecated endpoint. The newer API uses PATCH /api/2.0/sql/queries/{id} instead." }, { "slug": "DATABRICKS_SQL_QUERIES_UPDATE", "name": "Update SQL Query", "description": "Tool to update a saved SQL query object in Databricks using partial field updates. Use when you need to modify specific fields of an existing query without replacing the entire object. Requires update_mask parameter to specify which fields to update. Supports updating query text, configuration, parameters, and metadata." }, { "slug": "DATABRICKS_SQL_QUERY_HISTORY_LIST", "name": "List SQL Query History", "description": "Tool to retrieve the history of SQL queries executed against SQL warehouses and serverless compute. Use when you need to list queries by time range, status, user, or warehouse. Returns most recently started queries first (up to max_results). Supports filtering and pagination." }, { "slug": "DATABRICKS_SQL_QUERY_VISUALIZATIONS_CREATE", "name": "Create SQL Query Visualization", "description": "Tool to create a new visualization for a Databricks SQL query. Use when you need to add a visual representation (table, chart, counter, funnel, or pivot table) to an existing saved query. The visualization will be attached to the specified query and can be added to dashboards." }, { "slug": "DATABRICKS_SQL_QUERY_VISUALIZATIONS_LEGACY_CREATE", "name": "Create Legacy SQL Query Visualization", "description": "Tool to create a visualization in a SQL query using the legacy API. Use when you need to add a visual representation (table, chart, counter, pivot, etc.) to an existing saved query. Note: This is a deprecated endpoint; users should migrate to the current /api/2.0/sql/visualizations API. Databricks does not recommend modifying visualization settings in JSON." }, { "slug": "DATABRICKS_SQL_QUERY_VISUALIZATIONS_LEGACY_DELETE", "name": "Delete Legacy SQL Query Visualization", "description": "Tool to permanently delete a legacy SQL query visualization. Use when you need to remove a visualization from a SQL query using the legacy API endpoint. Note: This is a deprecated legacy endpoint. Databricks recommends migrating to /api/2.0/sql/visualizations/{id} instead." }, { "slug": "DATABRICKS_SQL_QUERY_VISUALIZATIONS_LEGACY_UPDATE", "name": "Update Legacy SQL Query Visualization", "description": "Tool to update a visualization in a SQL query using the legacy API. Use when you need to modify visualization properties such as name, description, type, and options. Note: This is a deprecated endpoint; users should migrate to the current queryvisualizations/update method. Databricks does not recommend modifying visualization settings in JSON." }, { "slug": "DATABRICKS_SQL_QUERY_VISUALIZATIONS_UPDATE", "name": "Update SQL Query Visualization", "description": "Tool to update an existing Databricks SQL query visualization using partial update with field mask. Use when you need to modify visualization properties. Only two fields are updatable: display_name (the name shown in UI) and type (TABLE, CHART, COUNTER, FUNNEL, or PIVOT). The visualization type can be changed to reorganize how query results are displayed." }, { "slug": "DATABRICKS_SQL_REDASH_CONFIG_GET_CONFIG", "name": "Get Redash V2 Config", "description": "Tool to retrieve workspace configuration for Redash V2 in Databricks SQL. Use when you need to get Redash configuration settings for the current workspace." }, { "slug": "DATABRICKS_SQL_STATEMENT_EXEC_CANCEL_EXEC", "name": "Cancel SQL Statement Execution", "description": "Tool to cancel an executing SQL statement on a Databricks warehouse. Use when you need to terminate a running SQL query. The response indicates successful receipt of the cancel request, but does not guarantee cancellation. Callers must poll the statement status to confirm the terminal state (CANCELED, SUCCEEDED, FAILED, or CLOSED)." }, { "slug": "DATABRICKS_SQL_STATEMENT_EXEC_EXECUTE_STATEMENT", "name": "Execute SQL Statement", "description": "Execute a SQL statement on a Databricks SQL warehouse. Returns results inline if the query completes within the wait timeout, otherwise returns a statement_id to poll for results. Use this to run SQL queries against your Databricks warehouse. For large result sets, use disposition=EXTERNAL_LINKS and fetch chunks separately." }, { "slug": "DATABRICKS_SQL_STATEMENT_EXEC_GET_RESULT_CHUNK", "name": "Get SQL Statement Result Chunk", "description": "Get a specific chunk of results from a SQL statement execution. Use this to paginate through large result sets. The chunk_index is zero-based. Use the manifest from the execute_statement or get_statement response to determine the total number of chunks available." }, { "slug": "DATABRICKS_SQL_STATEMENT_EXEC_GET_STATEMENT", "name": "Get SQL Statement Status", "description": "Get the status, manifest, and first chunk of results for a SQL statement execution. Use this to poll for completion after executing a statement asynchronously. The statement result is available for one hour after completion. Returns HTTP 404 if the statement has been in a terminal state for more than 12 hours." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_DELETE", "name": "Delete SQL Warehouse", "description": "Deletes a SQL warehouse from the Databricks workspace. Use this tool to permanently remove a SQL warehouse (compute resource) that is no longer needed. The warehouse must exist and you must have appropriate permissions to delete it. Important notes: - Deleted warehouses may be restored within 14 days by contacting Databricks support - The operation is idempotent - deleting an already deleted warehouse will succeed - This is a destructive operation and cannot be undone through the API" }, { "slug": "DATABRICKS_SQL_WAREHOUSES_EDIT", "name": "Edit SQL Warehouse", "description": "Tool to update the configuration of an existing SQL warehouse. Use when you need to modify warehouse settings like cluster size, scaling parameters, auto-stop behavior, or enable features like Photon acceleration and serverless compute. The warehouse is identified by its ID, and you can update various properties including resource allocation and performance optimizations." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_GET", "name": "Get SQL Warehouse Details", "description": "Tool to retrieve detailed information about a specific SQL warehouse by its ID. Use when you need to get configuration, state, connection details, and resource allocation for a SQL warehouse. Returns comprehensive warehouse information including cluster settings, JDBC/ODBC connection strings, and health status." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_GET_PERMISSION_LEVELS", "name": "Get SQL Warehouse Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks SQL warehouse. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific SQL warehouse. Returns permission levels like CAN_USE, CAN_MANAGE, IS_OWNER, CAN_VIEW, and CAN_MONITOR with their descriptions." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_GET_PERMISSIONS", "name": "Get SQL Warehouse Permissions", "description": "Tool to retrieve permissions for a Databricks SQL warehouse. Use when you need to check who has access to a specific SQL warehouse and their permission levels. Returns the access control list with user, group, and service principal permissions, including inherited permissions from parent objects." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_GET_WORKSPACE_WAREHOUSE_CONFIG", "name": "Get Workspace Warehouse Config", "description": "Tool to retrieve workspace-level SQL warehouse configuration settings. Use when you need to check security policies, serverless compute settings, channel versions, or warehouse type restrictions that apply to all SQL warehouses in the workspace." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_SET_PERMISSIONS", "name": "Set SQL Warehouse Permissions", "description": "Tool to set permissions for a Databricks SQL warehouse, replacing all existing permissions. Use when you need to configure access control for a SQL warehouse. This operation is authoritative and overwrites all existing permissions. Exactly one IS_OWNER must be specified. Groups cannot have IS_OWNER permission." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_SET_WORKSPACE_WAREHOUSE_CONFIG", "name": "Set Workspace Warehouse Config", "description": "Tool to configure workspace-level SQL warehouse settings shared by all SQL warehouses. Use when you need to set security policies, enable serverless compute, configure channel versions, or manage warehouse type restrictions across the workspace." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_START", "name": "Start SQL Warehouse", "description": "Tool to start a stopped Databricks SQL warehouse asynchronously. Use when you need to restart a stopped warehouse. The warehouse transitions through STARTING state before reaching RUNNING. Requires CAN MONITOR permissions or higher." }, { "slug": "DATABRICKS_SQL_WAREHOUSES_UPDATE_PERMISSIONS", "name": "Update SQL Warehouse Permissions", "description": "Tool to incrementally update permissions for a Databricks SQL warehouse. Use when you need to modify specific permissions without replacing the entire permission set. This PATCH operation updates only the specified permissions, preserving existing permissions not included in the request. For replacing all permissions, use SetPermissions instead." }, { "slug": "DATABRICKS_SUBMIT_RUN", "name": "Submit One-Time Run", "description": "Tool to submit a one-time run without creating a job. Use when you need to execute a task directly without saving it as a job definition. After submission, use the jobs/runs/get API with the returned run_id to check the run state and monitor progress." }, { "slug": "DATABRICKS_TAGS_TAG_POLICIES_CREATE_TAG_POLICY", "name": "Create Tag Policy", "description": "Tool to create a new tag policy (governed tag) in Databricks with built-in rules for consistency and control. Use when you need to establish governed tags with restricted values and define who can assign them. Maximum of 1,000 governed tags per account. Each governed tag can have up to 50 allowed values. Requires appropriate account-level permissions." }, { "slug": "DATABRICKS_TAGS_TAG_POLICIES_DELETE_TAG_POLICY", "name": "Delete Tag Policy", "description": "Tool to delete a tag policy by its key, making the tag ungoverned. Use when you need to remove governance from a tag without deleting the tag itself. Requires MANAGE permission on the governed tag. System governed tags cannot be deleted." }, { "slug": "DATABRICKS_TAGS_TAG_POLICIES_GET_TAG_POLICY", "name": "Get Tag Policy", "description": "Tool to retrieve a specific tag policy by its associated governed tag's key. Use when you need to get details about tag governance policies including allowed values and metadata." }, { "slug": "DATABRICKS_TAGS_TAG_POLICIES_UPDATE_TAG_POLICY", "name": "Update Tag Policy", "description": "Tool to update an existing tag policy (governed tag) with specified fields. Use when you need to modify tag policy properties like description, tag key, or allowed values. Users must have MANAGE permission on the governed tag to edit it." }, { "slug": "DATABRICKS_UPDATE_JOB_BY_ID", "name": "Update Databricks Job By ID", "description": "Tool to completely reset all settings for a Databricks job. Use when you need to overwrite all job configuration at once. Changes to timeout_seconds apply immediately to active runs; other changes apply to future runs only. Consider using the update endpoint for partial updates instead of reset to minimize disruption." }, { "slug": "DATABRICKS_VECTORSEARCH_VECTOR_SEARCH_ENDPOINTS_CREATE", "name": "Create Vector Search Endpoint", "description": "Tool to create a new vector search endpoint to host indexes in Databricks Mosaic AI Vector Search. Use when you need to provision compute resources for hosting vector search indexes. The endpoint will be in PROVISIONING state initially and transition to ONLINE when ready." }, { "slug": "DATABRICKS_VECTORSEARCH_VECTOR_SEARCH_INDEXES_DELETE_INDEX", "name": "Delete Vector Search Index", "description": "Tool to delete a vector search index from Databricks workspace. Use when you need to remove unused or obsolete vector search indexes. When an index is deleted, any associated writeback tables are automatically removed. This operation is irreversible." }, { "slug": "DATABRICKS_VECTORSEARCH_VECTOR_SEARCH_INDEXES_QUERY_INDEX", "name": "Query Vector Search Index", "description": "Tool to query vector search index to find similar vectors and return associated documents. Use when performing similarity search, hybrid keyword-similarity search, or full-text search on Databricks Vector Search indexes. Supports filtering, reranking, and returns configurable columns from matched documents with similarity scores. Must provide either query_vector or query_text." }, { "slug": "DATABRICKS_VECTORSEARCH_VECTOR_SEARCH_INDEXES_UPSERT_DATA", "name": "Upsert Data Vector Index", "description": "Tool to upsert (insert or update) data into a Direct Vector Access Index. Use when you need to manually add or update vectors in a Databricks vector search index. The index must be a Direct Vector Access Index type where updates are managed via REST API or SDK calls. Data structure must match the schema defined when the index was created, including the primary key field." }, { "slug": "DATABRICKS_WORKSPACE_GIT_CREDENTIALS_CREATE", "name": "Create Workspace Git Credentials", "description": "Tool to create Git credentials for authenticating with remote Git repositories in Databricks. Use when you need to set up Git integration for version control operations. Multiple credentials can be created, typically one per Git provider. Use the is_default_for_provider flag to set a credential as the default for its provider." }, { "slug": "DATABRICKS_WORKSPACE_GIT_CREDENTIALS_DELETE", "name": "Delete Workspace Git Credentials", "description": "Tool to delete Git credentials for remote repository authentication in Databricks. Use when you need to remove a Git credential entry from the workspace. Only one Git credential per user is supported in Databricks, making this useful for credential lifecycle management when credentials need to be revoked or replaced." }, { "slug": "DATABRICKS_WORKSPACE_GIT_CREDENTIALS_GET", "name": "Get Workspace Git Credentials", "description": "Tool to retrieve Git credentials for authenticating with remote Git repositories in Databricks. Use when you need to get details of existing Git integration credentials by credential ID." }, { "slug": "DATABRICKS_WORKSPACE_GIT_CREDENTIALS_UPDATE", "name": "Update Workspace Git Credentials", "description": "Tool to update existing Git credentials for authenticating with remote Git repositories in Databricks. Use when you need to modify Git provider credentials, email, username, or access tokens. Note that the git_provider field cannot be changed after initial creation. For azureDevOpsServicesAad provider, do not specify personal_access_token or git_username." }, { "slug": "DATABRICKS_WORKSPACE_LIST", "name": "List Workspace Directory", "description": "Tool to list the contents of a directory in Databricks workspace. Use when you need to view notebooks, files, directories, libraries, or repos at a specific path. Returns object information including paths, types, and metadata. Use object_id for setting permissions via the Permissions API." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_CREATE", "name": "Create Workspace Repo", "description": "Tool to create and optionally checkout a Databricks Repo linking a Git repository to the workspace. Use when you need to connect a Git repository to Databricks for collaborative development. Can optionally specify branch or tag to checkout after creation and configure sparse checkout for performance." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_DELETE", "name": "Delete Workspace Repo", "description": "Tool to delete a Git repository from Databricks workspace. Use when you need to permanently remove a repository. The repository cannot be recovered after deletion completes successfully." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_GET_PERMISSION_LEVELS", "name": "Get Workspace Repo Permission Levels", "description": "Tool to retrieve available permission levels for a Databricks workspace repository. Use when you need to understand what permission levels can be assigned to users, groups, or service principals for a specific Git repository. Returns permission levels like CAN_READ, CAN_RUN, CAN_EDIT, and CAN_MANAGE with their descriptions." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_SET_PERMISSIONS", "name": "Set Workspace Repo Permissions", "description": "Tool to set permissions for a workspace repository, replacing all existing permissions. Use when you need to configure access control for a workspace repo. This operation replaces ALL existing permissions; admin users cannot have their permissions lowered. Repos can inherit permissions from their root object." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_UPDATE", "name": "Update Workspace Repo", "description": "Tool to update a workspace repo to a different branch or tag. Use when you need to switch branches, pull latest changes, or update sparse checkout settings. When updating to a tag, the repo enters a detached HEAD state and must be switched back to a branch before committing." }, { "slug": "DATABRICKS_WORKSPACE_REPOS_UPDATE_PERMISSIONS", "name": "Update Workspace Repo Permissions", "description": "Tool to incrementally update permissions on a Databricks workspace repository. Use when you need to modify specific permissions for users, groups, or service principals without replacing the entire permission set. This PATCH operation only modifies the permissions specified while leaving other existing permissions intact. Repos can inherit permissions from their root object." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_CREATE_SCOPE", "name": "Create Secret Scope", "description": "Tool to create a new secret scope in Databricks workspace. Use when you need to establish a secure location to store credentials and sensitive information. Scope names must be unique, case-insensitive, and cannot exceed 128 characters. By default, the scope is Databricks-backed with MANAGE permission for the creator." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_DELETE_ACL", "name": "Delete Secrets ACL", "description": "Tool to delete an access control list from a Databricks secret scope. Use when you need to revoke permissions for a principal on a secret scope. Requires MANAGE permission on the scope. Fails if the ACL does not exist." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_DELETE_SCOPE", "name": "Delete Secret Scope", "description": "Tool to delete a secret scope and all associated secrets and ACLs. Use when you need to permanently remove a secret scope. This operation cannot be undone. The API throws errors if the scope does not exist or the user lacks authorization." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_DELETE_SECRET", "name": "Delete Workspace Secret", "description": "Tool to delete a secret from a Databricks secret scope. Use when you need to remove a secret stored in a scope. Requires WRITE or MANAGE permission on the scope. Not supported for Azure KeyVault-backed scopes." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_GET_ACL", "name": "Get Secrets ACL", "description": "Tool to retrieve ACL details for a principal on a Databricks secret scope. Use when you need to check the permission level granted to a specific user, service principal, or group. Requires MANAGE permission on the scope. Each permission level is hierarchical - WRITE includes READ, and MANAGE includes both WRITE and READ." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_GET_SECRET", "name": "Get Secret Value", "description": "Tool to get a secret value from a Databricks secret scope. Use when you need to retrieve the actual value of a secret stored in a scope. Important: This API can only be called from the DBUtils interface (from within a cluster/notebook). There is no API to read the actual secret value outside of a cluster. Requires READ permission on the scope." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_PUT_ACL", "name": "Put Secrets ACL", "description": "Tool to create or overwrite access control list for a principal on a Databricks secret scope. Use when you need to grant or modify permissions for a user, group, or service principal on a secret scope. Requires MANAGE permission on the scope. Overwrites existing permission level for the principal if one already exists." }, { "slug": "DATABRICKS_WORKSPACE_SECRETS_PUT_SECRET", "name": "Put Secret in Scope", "description": "Tool to insert or update a secret in a Databricks secret scope. Use when you need to store sensitive information like passwords, API keys, or credentials. Overwrites existing secrets with the same key. Requires WRITE or MANAGE permission on the scope. Maximum 1,000 secrets per scope with 128 KB limit per secret." }, { "slug": "DATABRICKS_WORKSPACE_WORKSPACE_DELETE", "name": "Delete Workspace Object", "description": "Tool to permanently delete a workspace object or directory. Use when you need to remove notebooks, files, or directories from the workspace. This is a hard delete operation that cannot be undone. Recursive deletion of non-empty directories is not atomic and may partially complete if it fails." }, { "slug": "DATABRICKS_WORKSPACE_WORKSPACE_EXPORT", "name": "Export Workspace Object", "description": "Tool to export a workspace object (notebook, dashboard, or file) as file content or base64-encoded string. Use when you need to retrieve the content of workspace objects for backup, migration, or analysis. By default, returns base64-encoded content with file type information. Set direct_download=true to get raw file content directly." }, { "slug": "DATABRICKS_WORKSPACE_WORKSPACE_GET_STATUS", "name": "Get Workspace Object Status", "description": "Tool to retrieve status and metadata for any workspace object including notebooks, directories, dashboards, and files. Use when you need to get object type, path, identifier, and additional metadata fields. Returns error with code RESOURCE_DOES_NOT_EXIST if the specified path does not exist." }, { "slug": "DATABRICKS_WORKSPACE_WORKSPACE_IMPORT", "name": "Import Workspace Object", "description": "Import a notebook or file into the Databricks workspace from base64-encoded content. Supports multiple formats: SOURCE (requires language parameter), JUPYTER, R_MARKDOWN, HTML, DBC, or AUTO for automatic detection. For SOURCE format with single files, you must specify the language (PYTHON, R, SCALA, or SQL). Maximum content size: 10 MB. Use overwrite=true to replace existing objects at the same path." }, { "slug": "DATABRICKS_WORKSPACE_WORKSPACE_MKDIRS", "name": "Create Workspace Directory", "description": "Tool to create a directory and necessary parent directories in the workspace. Use when you need to create new directories. The operation is idempotent - if the directory already exists, the command succeeds without action. Returns error RESOURCE_ALREADY_EXISTS if a file (not directory) exists at any prefix of the path." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "databricks_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "all-apis,openid,email,profile,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Workspace URL", "type": "string", "description": "Your Databricks workspace web address, e.g. https://dbc-abc123.cloud.databricks.com — copy it from your browser address bar when signed in. No trailing slash.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "databricks_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Workspace URL", "type": "string", "description": "Your Databricks workspace web address, e.g. https://dbc-abc123.cloud.databricks.com — copy from your browser address bar. Must match the workspace your token is from; no trailing slash.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your Databricks personal access token (starts with 'dapi'). In your workspace, click your username → Settings → Developer → Access tokens → Generate new token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dataforseo", "name": "Dataforseo", "logo": "https://logos.composio.dev/api/dataforseo", "description": "SEO data and analytics platform providing SERP data, backlinks, keywords, and competitive intelligence", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 312, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATAFORSEO_CREATE_APP_DATA_APPLE_APP_REVIEWS_TASK", "name": "Create App Data Apple App Reviews Task", "description": "Tool to create Apple App Store reviews retrieval tasks. Use when you need to fetch user reviews for a specific iOS app from the App Store. Returns task IDs for retrieving results later. Reviews can be sorted by most recent or most helpful." }, { "slug": "DATAFORSEO_CREATE_APP_DATA_APPLE_APP_SEARCHES_TASK", "name": "Create Apple App Searches Task", "description": "Tool to create Apple App Store search tasks via DataForSEO API. Use when you need to search for apps on the Apple App Store by keyword with specific location and language parameters. Returns task IDs for retrieving results later using the get task advanced endpoint. Supports up to 100 tasks per request." }, { "slug": "DATAFORSEO_CREATE_APP_DATA_GOOGLE_APP_LIST_TASK", "name": "Create App Data Google App List Task", "description": "Tool to create Google Play Store app list retrieval tasks. Use when you need to fetch lists of mobile apps from Google Play top charts (featured, topselling, topgrossing, etc.). Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_APP_DATA_GOOGLE_APP_REVIEWS_TASK", "name": "Create App Data Google App Reviews Task", "description": "Tool to create Google Play app reviews retrieval tasks. Use when you need to fetch user reviews for a specific Android app from Google Play Store. Returns task IDs for retrieving results later. Reviews can be filtered by rating and sorted by newest or most relevant." }, { "slug": "DATAFORSEO_CREATE_BUSINESS_DATA_TRUSTPILOT_SEARCH_TASK", "name": "Create Business Data Trustpilot Search Task", "description": "Tool to create Trustpilot search tasks for retrieving business profiles. Use when you need to search for businesses on Trustpilot by keyword. Returns task IDs for retrieving results later using the get task endpoint. The results provide business profiles with ratings, reviews count, and URLs." }, { "slug": "DATAFORSEO_CREATE_KEYWORDS_DATA_GOOGLE_TRENDS_EXPLORE_TASK", "name": "Create Keywords Data Google Trends Explore Task", "description": "Tool to create Google Trends Explore tasks for analyzing keyword popularity over time. Use when you need to get trend data from Google Search, YouTube, Google News, Google Images, or Google Shopping. Returns task IDs for retrieving results later using the task_get endpoint." }, { "slug": "DATAFORSEO_CREATE_KW_BING_AUDIENCE_EST_TASK", "name": "Create Keywords Data Bing Audience Estimation Task", "description": "Tool to create a Bing Audience Estimation task for ad campaign planning. Use when you need to estimate audience size, clicks, impressions, and budget recommendations based on targeting criteria like age, gender, location, industry, and job function." }, { "slug": "DATAFORSEO_CREATE_KW_GOOGLE_KW_FOR_KW_TASK", "name": "Create Keywords Data Google Keywords For Keywords Task", "description": "Tool to create Google Keywords For Keywords tasks for keyword research and analysis. Use when you need to get keyword suggestions, search volumes, CPC data, and competition metrics based on seed keywords. Returns task IDs for retrieving results later using the task_get endpoint." }, { "slug": "DATAFORSEO_CREATE_MERCHANT_AMAZON_SELLERS_TASK", "name": "Create Merchant Amazon Sellers Task", "description": "Tool to create Merchant Amazon Sellers tasks. Use when you need to get a list of sellers for a specific product on Amazon, including seller details, pricing, condition, shipment information, and ratings. Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_ON_PAGE_LIGHTHOUSE_TASK_POST", "name": "Create On Page Lighthouse Task", "description": "Tool to create an On Page Lighthouse audit task for measuring web page quality based on Google's Lighthouse. Use when you need to audit a web page for SEO, performance, accessibility, best practices, or PWA compliance. Results are retrieved asynchronously using the returned task ID." }, { "slug": "DATAFORSEO_CREATE_ON_PAGE_TASK_POST", "name": "Create On Page Task", "description": "Tool to create an On Page crawl task for analyzing websites. Use when you need to audit a website for SEO, check on-page parameters, find optimization opportunities, or analyze site structure. The crawl checks 60+ parameters including meta tags, duplicate content, images, response codes, and more." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_AUTOCOMPLETE_TASK", "name": "Create SERP Google Autocomplete Task", "description": "Tool to create Google Autocomplete SERP tasks. Use when you need to retrieve autocomplete suggestions that Google Search provides as users type their queries. Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_EVENTS_TASK", "name": "Create SERP Google Events Task", "description": "Tool to create Google Events SERP tasks via DataForSEO API. Use when you need to retrieve event listings from Google Search for specific keywords and locations. Note: Google Events SERP API works for English language only. Returns task IDs for retrieving results later using the get task advanced endpoint." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_FINANCE_EXPLORE_TASK", "name": "Create SERP Google Finance Explore Task", "description": "Tool to create Google Finance Explore SERP tasks. Use when you need to retrieve real-time data from the 'Explore' tab of Google Finance, including market indexes, news, earnings calendars, trending instruments, and market trends. Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_LOCAL_FINDER_TASK", "name": "Create SERP Google Local Finder Task", "description": "Tool to create Google Local Finder SERP tasks for retrieving local business search results. Use when you need to get location-based search results for businesses and services from Google's Local Finder." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_MAPS_TASK", "name": "Create SERP Google Maps Task", "description": "Tool to create Google Maps SERP tasks. Use when you need to retrieve Google Maps search results for local businesses, places, or locations. Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_SERP_GOOGLE_ORGANIC_TASK_POST", "name": "Create SERP Google Organic Task", "description": "Tool to create Google Organic SERP tasks for retrieving top search engine results. Use when you need to get organic search results for specific keywords, analyze SERP features, track rankings, or research competitors. Results include organic listings, featured snippets, People Also Ask, and other SERP elements. Tasks are processed asynchronously - use the returned task ID to retrieve results later." }, { "slug": "DATAFORSEO_CREATE_SERP_SEZNAM_ORGANIC_TASK", "name": "Create SERP Seznam Organic Task", "description": "Tool to create a SERP Seznam Organic search task. Use when you need to retrieve Seznam search engine results for a specific keyword and location in the Czech Republic. Results are retrieved asynchronously using the returned task ID." }, { "slug": "DATAFORSEO_CREATE_SERP_YOUTUBE_VIDEO_COMMENTS_TASK", "name": "Create YouTube Video Comments Task", "description": "Tool to create YouTube Video Comments SERP tasks. Use when you need to retrieve comments data from a specific YouTube video, including author info, timestamps, likes, and reply counts. Returns task IDs for retrieving results later." }, { "slug": "DATAFORSEO_CREATE_SERP_YOUTUBE_VIDEO_SUBTITLES_TASK", "name": "Create SERP YouTube Video Subtitles Task", "description": "Tool to create YouTube video subtitles extraction tasks. Use when you need to retrieve subtitle data from YouTube videos including text, timing, and translations. Tasks are processed asynchronously - use the returned task ID to retrieve subtitle results later." }, { "slug": "DATAFORSEO_FORCE_ON_PAGE_CRAWL", "name": "Force Stop On Page Crawl", "description": "Tool to force stop On Page crawl tasks. Use when you need to immediately terminate ongoing website crawl operations. Data collected before stopping remains available for retrieval." }, { "slug": "DATAFORSEO_GET_AI_KEYWORD_DATA_AVAILABLE_FILTERS", "name": "Get AI Keyword Data Available Filters", "description": "Tool to retrieve available filters for DataForSEO AI Keyword Data API endpoints. Use when you need to discover which fields can be filtered in AI keyword data queries and their data types (string or numeric)." }, { "slug": "DATAFORSEO_GET_AI_KEYWORD_DATA_LOCATIONS_AND_LANGUAGES", "name": "Get AI Keyword Data Locations And Languages", "description": "Tool to retrieve the full list of locations and languages supported in AI Keyword Data API. Use when you need to get available geographic locations and their supported languages for AI keyword optimization. This endpoint is free and incurs no cost." }, { "slug": "DATAFORSEO_GET_AI_OPT_CHAT_GPT_LLM_SCRAPER_HTML_BY_ID", "name": "Get AI Optimization Chat GPT LLM Scraper HTML by ID", "description": "Tool to retrieve AI Optimization Chat GPT LLM Scraper task results in HTML format. Use when you need to fetch the HTML content from a previously submitted LLM scraper task using its unique task ID. The task ID remains valid for 7 days after task creation." }, { "slug": "DATAFORSEO_GET_AI_OPT_CHAT_GPT_LLM_SCRAPER_TASK_ADV_BY_ID", "name": "Get AI Optimization ChatGPT LLM Scraper Task (Advanced)", "description": "Tool to retrieve advanced ChatGPT LLM scraper task results by task ID. Use when you need to fetch detailed scraper results including markdown content, search results, sources, brand entities, and various content types (text, tables, images, local businesses, products) for a previously submitted task." }, { "slug": "DATAFORSEO_GET_AI_OPT_GEMINI_LLM_SCRAPER_TASK_ADV", "name": "Get AI Optimization Gemini LLM Scraper Task Advanced", "description": "Tool to retrieve advanced AI Optimization Gemini LLM scraper task results by task ID. Use when you need to fetch completed task data including LLM-generated content, sources, tables, and images. Results remain accessible for 30 days after task creation." }, { "slug": "DATAFORSEO_GET_AI_OPTIMIZATION_CHAT_GPT_LLM_RESPONSES_LIVE", "name": "Get Live ChatGPT LLM Responses", "description": "Tool to retrieve live structured responses from ChatGPT AI models via DataForSEO. Returns AI-generated content with optional web search augmentation, token usage statistics, and cost information. Use when you need immediate ChatGPT responses with control over model parameters, conversation context, and web search capabilities." }, { "slug": "DATAFORSEO_GET_AI_OPTIMIZATION_GEMINI_LLM_SCRAPER_HTML_BY_ID", "name": "Get Gemini LLM Scraper HTML Results", "description": "Retrieve HTML results for a completed Gemini LLM Scraper task by its unique ID. Use this action to fetch the scraped HTML content from a previously posted task. Results are available for 7 days after task posting." }, { "slug": "DATAFORSEO_GET_AI_OPTIMIZATION_LLM_MENTIONS_TOP_DOMAINS_LIVE", "name": "Get AI Optimization LLM Mentions Top Domains Live", "description": "Tool to get live aggregated LLM mentions grouped by most frequently mentioned domains. Use when you need to identify which domains are most often cited or mentioned by LLMs (Google AI Overview or ChatGPT) for specific keywords, with metrics like total mentions and AI search volume per domain." }, { "slug": "DATAFORSEO_GET_APP_DATA_APPLE_APP_LIST_TASK_ADVANCED", "name": "Get Apple App List Task Results", "description": "Tool to retrieve Apple App Store app list results for a previously created task. Returns detailed app data including titles, ratings, prices, reviews, and icons for apps in the specified collection (e.g., top charts). Use this after creating an app list task to get the results using the task ID." }, { "slug": "DATAFORSEO_GET_APP_DATA_APPLE_APP_SEARCHES_TASK_ADVANCED", "name": "Get Apple App Searches Task Advanced", "description": "Tool to retrieve Apple App Searches task results from DataForSEO. Use when you need to get app search results for a previously created task. This is the second step in a two-step process: first create a task using task_post, then retrieve results using this action with the task ID." }, { "slug": "DATAFORSEO_GET_APP_DATA_GOOGLE_APP_INFO_TASK_HTML_BY_ID", "name": "Get App Data Google App Info Task HTML By ID", "description": "Tool to retrieve HTML content for a Google Play app by task ID. Use when you need to get the raw HTML page data from Google Play Store for a previously submitted app info task. Results are available for 7 days after task posting." }, { "slug": "DATAFORSEO_GET_APP_DATA_GOOGLE_APP_LIST_TASK_ADVANCED_BY_ID", "name": "Get App Data Google App List Task Advanced By ID", "description": "Tool to retrieve Google Play app list results for a previously created task. Returns detailed app data including titles, ratings, prices, reviews, and icons for apps in the specified collection (e.g., top charts)." }, { "slug": "DATAFORSEO_GET_APP_DATA_GOOGLE_APP_REVIEWS_TASK_HTML", "name": "Get App Data Google App Reviews Task HTML", "description": "Tool to retrieve HTML content for Google Play app reviews by task ID. Use when you need to get the raw HTML page data of app reviews from Google Play Store for a previously submitted task. Results are available for 7 days after task posting." }, { "slug": "DATAFORSEO_GET_APP_DATA_GOOGLE_APP_SEARCHES_TASK_HTML_BY_ID", "name": "Get App Data Google App Searches HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Play app searches task by ID. Use when you need to get the unprocessed HTML content of Google Play Store app search results after creating an app searches task." }, { "slug": "DATAFORSEO_GET_APPENDIX_ERRORS", "name": "Get Appendix Errors", "description": "Tool to retrieve the complete list of DataForSEO API error codes and HTTP status codes. Use when you need to understand possible API errors, their codes, and messages for error handling or debugging." }, { "slug": "DATAFORSEO_GET_APPENDIX_STATUS", "name": "Get Appendix Status", "description": "Tool to get current operational status of all DataForSEO APIs and endpoints. Use when you need to check if specific APIs or endpoints are experiencing outages or performance issues." }, { "slug": "DATAFORSEO_GET_APPENDIX_USER_DATA", "name": "Get Appendix User Data", "description": "Tool to retrieve current user account data including balance, rate limits, spending statistics, and pricing information. Use when you need to check account status, available balance, API usage limits, or subscription details." }, { "slug": "DATAFORSEO_GET_APP_GOOGLE_APP_REVIEWS_TASK_GET_ADV_BY_ID", "name": "Get App Data Google App Reviews Task Advanced By ID", "description": "Tool to retrieve Google Play app review results for a previously created task. Returns feedback data including review ratings, content, reviewer profiles, publication dates, and developer responses for the specified app." }, { "slug": "DATAFORSEO_GET_APP_GOOGLE_APP_SEARCHES_TASK_ADV_BY_ID", "name": "Get App Data Google App Searches Task Advanced By ID", "description": "Tool to retrieve Google Play app search results for a previously created task. Returns detailed app data including titles, ratings, prices, reviews, and icons for apps ranking on Google Play for the specified keyword. This is the second step in a two-step process: first create a task, then retrieve results using this action with the task ID." }, { "slug": "DATAFORSEO_GET_APPLE_APP_INFO_TASK_ADVANCED", "name": "Get Apple App Info Task Advanced", "description": "Tool to retrieve advanced results for a previously created Apple App Info task. Use when you need complete app information from the App Store including ratings, reviews, pricing, categories, similar apps, and developer details. Requires a task ID from task_post or tasks_ready endpoint." }, { "slug": "DATAFORSEO_GET_BACKLINKS_BULK_PAGES_SUMMARY_LIVE", "name": "Get Backlinks Bulk Pages Summary Live", "description": "Tool to get comprehensive backlinks summary data for multiple pages, domains, or subdomains in a single request. Use when you need to retrieve detailed backlink metrics for up to 1000 targets simultaneously, including rank, backlink counts, referring domains/pages/IPs, spam scores, and breakdowns by TLD, link type, platform, semantic location, and country." }, { "slug": "DATAFORSEO_GET_BACKLINKS_BULK_SPAM_SCORE_LIVE", "name": "Get Backlinks Bulk Spam Score Live", "description": "Tool to get spam scores for multiple domains, subdomains, or pages in a single request. Use when you need to evaluate how 'spammy' target websites are using DataForSEO's proprietary metric (0-100 scale)." }, { "slug": "DATAFORSEO_GET_BACKLINKS_SUMMARY_LIVE", "name": "Get Backlinks Summary Live", "description": "Tool to get a comprehensive overview of backlinks data for a domain, subdomain, or webpage. Use when you need backlinks statistics including referring domains, link types, spam scores, and geographical distribution. Returns metrics like total backlinks count, referring domains/pages, link attributes breakdown, and platform type analysis." }, { "slug": "DATAFORSEO_GET_BING_KW_PERFORMANCE_LOCATIONS_AND_LANGUAGES", "name": "Get Bing Keyword Performance Locations And Languages", "description": "Tool to retrieve the full list of locations and languages supported in Bing Keyword Performance API endpoints. Use when you need to get available geographic locations and their supported languages for Bing keyword performance data. This endpoint is free and incurs no cost." }, { "slug": "DATAFORSEO_GET_BIZ_BUSINESS_LISTINGS_AVAILABLE_FILTERS", "name": "Get Business Data Business Listings Available Filters", "description": "Tool to retrieve available filters for Business Data Business Listings API endpoints. Use when you need to discover which fields can be filtered in business listings queries and their data types (string, numeric, boolean, array, or time)." }, { "slug": "DATAFORSEO_GET_BIZ_GOOGLE_HOTEL_INFO_TASK_GET_ADV_BY_ID", "name": "Get Business Data Google Hotel Info Task Advanced By ID", "description": "Tool to retrieve Google Hotel Info task results by task ID. Use when you need to get detailed hotel information including ratings, prices, amenities, location details, and reviews." }, { "slug": "DATAFORSEO_GET_BIZ_GOOGLE_HOTEL_SEARCHES_TASK_BY_ID", "name": "Get Business Data Google Hotel Searches Task By ID", "description": "Tool to retrieve Google Hotel Searches task results by task ID. Use when you need to fetch hotel search results from a previously created task within 30 days." }, { "slug": "DATAFORSEO_GET_BIZ_GOOGLE_MY_BUSINESS_UPDATES_TASK_BY_ID", "name": "Get Business Data Google My Business Updates Task By ID", "description": "Tool to retrieve Google My Business updates and posts by task ID. Use when you need to fetch business updates, posts, and announcements from a Google My Business profile for a previously created task. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_BIZ_GOOGLE_QUESTIONS_AND_ANSWERS_TASK", "name": "Get Business Data Google Questions And Answers Task", "description": "Tool to retrieve Google Business questions and answers data by task ID. Use when you need to fetch Q&A information for a business including questions asked by users, answers provided, user profiles, and timestamps. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_GOOGLE_EXTENDED_REVIEWS_TASK", "name": "Get Business Data Google Extended Reviews Task", "description": "Tool to retrieve Google Business extended reviews data by task ID. Use when you need to fetch detailed review information for a business including review text, ratings, reviewer profiles, images, owner responses, and review highlights. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_GOOGLE_MY_BUSINESS_INFO_TASK", "name": "Get Business Data Google My Business Info Task", "description": "Tool to retrieve Google My Business information by task ID. Use when you need to fetch comprehensive business data including name, location, contact details, ratings, operating hours, photos, and popular times. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_GOOGLE_REVIEWS_TASK", "name": "Get Business Data Google Reviews Task", "description": "Tool to retrieve Google Reviews task results by task ID. Use when you need to fetch review data for a specific business establishment including review text, ratings, reviewer information, business owner responses, and review metadata." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_TRIPADVISOR_REVIEWS_TASK_BY_ID", "name": "Get Business Data TripAdvisor Reviews Task By ID", "description": "Tool to retrieve TripAdvisor Reviews task results by task ID. Use when you need to fetch review data for a specific business establishment including review text, ratings, reviewer information, business owner responses, and review metadata from TripAdvisor. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_TRIPADVISOR_SEARCH_TASK_BY_ID", "name": "Get Business Data TripAdvisor Search Task By ID", "description": "Tool to retrieve TripAdvisor Search task results by task ID. Use when you need to fetch business listings and ratings from TripAdvisor for a previously created search task within 30 days." }, { "slug": "DATAFORSEO_GET_BUSINESS_DATA_TRUSTPILOT_SEARCH_TASK_BY_ID", "name": "Get Business Data Trustpilot Search Task By ID", "description": "Tool to retrieve Trustpilot search task results by task ID. Use when you need to fetch business profiles from Trustpilot for a previously created search task. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_CHAT_GPT_LLM_SCRAPER_LOCATIONS_BY_COUNTRY", "name": "Get ChatGPT LLM Scraper Locations By Country", "description": "Tool to retrieve available ChatGPT LLM Scraper locations filtered by country ISO code. Use when you need to get the list of valid locations for setting up ChatGPT LLM scraper tasks in a specific country." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_LABS_AVAILABLE_FILTERS", "name": "Get DataForSEO Labs Available Filters", "description": "Tool to retrieve available filters for DataForSEO Labs API endpoints. Use when you need to discover which fields can be filtered in DataForSEO Labs queries and their data types." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_LABS_BING_RELATED_KEYWORDS_LIVE", "name": "Get Bing Related Keywords Live", "description": "Tool to retrieve Bing related keywords appearing in 'searches related to' SERP element. Provides up to 4680 keyword ideas with search volume, cost-per-click, competition, and 12-month trend data. Use when you need to discover related keywords and expand keyword research for SEO or paid search campaigns on Bing." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_LABS_GOOGLE_AVAILABLE_HISTORY", "name": "Get DataForSEO Labs Google Available History", "description": "Tool to retrieve available historical dates for DataForSEO Labs domain metrics. Use when you need to discover which dates are available for setting in the first_date and second_date fields of the Domain Metrics by Categories endpoint." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_LABS_GOOGLE_TOP_SEARCHES_LIVE", "name": "Get DataForSEO Labs Google Top Searches Live", "description": "Tool to retrieve top Google search keywords with comprehensive metrics including search volume, competition, CPC, trends, and intent data. Use when you need to discover popular keywords, analyze search trends, or gather keyword research data for SEO and advertising campaigns." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_LABS_STATUS", "name": "Get DataForSEO Labs Status", "description": "Tool to retrieve last update dates for DataForSEO Labs data sources (Google, Bing, and Amazon). Use when you need to check when Labs data was last refreshed for freshness validation." }, { "slug": "DATAFORSEO_GET_DATAFORSEO_TRENDS_LOCATIONS_BY_COUNTRY", "name": "Get DataForSEO Trends Locations By Country", "description": "Tool to retrieve DataForSEO Trends locations filtered by country ISO code. Use when you need to get the list of valid locations for setting up DataForSEO Trends tasks. Note that the minimum geographic scope supported is country level." }, { "slug": "DATAFORSEO_GET_DOMAIN_ANALYTICS_TECH_TECHNOLOGY_STATS_LIVE", "name": "Get Domain Analytics Technologies Technology Stats Live", "description": "Tool to retrieve historical technology adoption statistics across domains. Use when you need data on how many domains use a specific technology over time, with breakdowns by country, language, and domain rank. Returns daily statistics showing technology penetration and geographic distribution." }, { "slug": "DATAFORSEO_GET_GEMINI_LLM_RESPONSES_TASK_BY_ID", "name": "Get Gemini LLM Responses Task Results", "description": "Tool to retrieve structured Gemini LLM responses from a specific task by ID. Use when you need to fetch the results of a previously created Gemini LLM optimization task. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_GOOGLE_HIST_BULK_TRAFFIC_EST_LIVE", "name": "Get Google Historical Bulk Traffic Estimation Live", "description": "Tool to get historical monthly traffic volumes for up to 1000 domains, subdomains, or webpages on Google over a specified time range. Use when you need to analyze traffic trends from organic search, paid search, featured snippets, and local pack results. Historical data is available through October 2020, and if no date range is specified, data will be returned for the previous 12 months." }, { "slug": "DATAFORSEO_GET_KEYWORDS_DATA_BING_KEYWORDS_FOR_SITE_TASK", "name": "Get Keywords Data Bing Keywords For Site Task", "description": "Tool to retrieve Bing Keywords For Site task results by task ID. Use when you need to fetch keyword data for a specified website including search volume, CPC, competition metrics, and monthly search trends for keywords associated with the site." }, { "slug": "DATAFORSEO_GET_KEYWORDS_DATA_BING_SEARCH_VOLUME_TASK_BY_ID", "name": "Get Bing Search Volume Task By ID", "description": "Tool to retrieve Bing search volume task results by task ID. Use when you need to fetch keyword search volume data with historical monthly trends from a previously created task. Results include average search volume, CPC, competition level, and 12 months of historical data. Task results are available for 30 days after creation." }, { "slug": "DATAFORSEO_GET_KEYWORDS_DATA_GOOGLE_ADS_STATUS", "name": "Get Keywords Data Google Ads Status", "description": "Tool to get current status of Google Ads keyword data updates. Use when you need to check if Google has updated keyword data for the previous month or find the latest available search volume data." }, { "slug": "DATAFORSEO_GET_KEYWORDS_DATA_GOOGLE_SEARCH_VOLUME_TASK_BY_ID", "name": "Get Keywords Data Google Search Volume Task", "description": "Tool to retrieve Google Search Volume task results by task ID. Use when you need to fetch search volume metrics for specified keywords, including monthly average search volume, CPC, competition levels, and 12-month historical search trends." }, { "slug": "DATAFORSEO_GET_KW_BING_AUDIENCE_EST_INDUSTRIES", "name": "Get Keywords Data Bing Audience Estimation Industries", "description": "Tool to retrieve the list of industries supported by Bing Ads Audience Estimation endpoint. Use when you need industry IDs for targeting Bing audience estimation campaigns. Returns 147 industries with their unique identifiers." }, { "slug": "DATAFORSEO_GET_KW_BING_KW_FOR_KW_TASK_BY_ID", "name": "Get Keywords Data Bing Keywords For Keywords Task By ID", "description": "Tool to retrieve Bing Keywords For Keywords task results by task ID. Use when you need to fetch keyword suggestions for specified terms, including search volume, CPC, competition metrics, and monthly search trends. Returns up to 3000 keyword suggestions." }, { "slug": "DATAFORSEO_GET_KW_BING_KW_SUGGESTIONS_FOR_URL_LIVE", "name": "Get Keywords Data Bing Keyword Suggestions For URL Live", "description": "Tool to get Bing keyword suggestions based on a target URL with search volume, competition, and CPC metrics. Use when you need to discover relevant keywords associated with a specific webpage for SEO optimization or content strategy." }, { "slug": "DATAFORSEO_GET_KW_BING_KW_SUGGESTIONS_FOR_URL_TASK", "name": "Get Bing Keyword Suggestions for URL Task", "description": "Tool to retrieve Bing keyword suggestions for a URL from a previously created task. Use when you need to fetch keyword recommendations based on URL content analysis. Results are sorted by confidence score from highest to lowest and are available for 30 days after task creation." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_ADS_AD_TRAFFIC_BY_KW_TASK_BY_ID", "name": "Get Keywords Data Google Ads Ad Traffic By Keywords Task", "description": "Tool to retrieve Google Ads Ad Traffic By Keywords task results by task ID. Use when you need to fetch ad traffic forecasts for keywords, including projected impressions, CTR, average CPC, cost, and clicks based on specified bids and match types." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_ADS_KW_FOR_KW_LIVE", "name": "Get Keywords Data Google Ads Keywords For Keywords Live", "description": "Tool to retrieve Google Ads keyword suggestions for specified keywords with comprehensive metrics. Use when you need keyword ideas, search volumes, CPC data, competition levels, and bid estimates for advertising campaigns or keyword research." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_ADS_KW_FOR_KW_TASK_BY_ID", "name": "Get Keywords Data Google Ads Keywords For Keywords Task", "description": "Tool to retrieve Google Ads Keywords For Keywords task results by task ID. Use when you need to fetch keyword metrics for specified search terms from Google Ads API, including search volume, CPC, competition levels, bid estimates, and historical monthly search trends." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_ADS_KW_FOR_SITE_TASK", "name": "Get Google Ads Keywords For Site Task", "description": "Tool to retrieve Google Ads Keywords For Site task results by task ID. Use when you need to fetch keyword data including search volume, competition levels (LOW/MEDIUM/HIGH), bidding metrics, and semantic annotations for a domain from a previously created task." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_ADS_SEARCH_VOL_TASK_BY_ID", "name": "Get Keywords Data Google Ads Search Volume Task", "description": "Tool to retrieve Google Ads Search Volume task results by task ID. Use when you need to fetch Google Ads metrics for keywords including search volume, competition levels, CPC, top-of-page bid estimates, and 12-month historical trends. Based on Google Ads API (replacement for legacy AdWords API)." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_KW_FOR_CATEGORY_LIVE", "name": "Get Keywords Data Google Keywords For Category Live", "description": "Tool to retrieve live Google keywords for a specific product/service category. Returns up to 700 keyword suggestions with search volume, CPC, competition level, and historical monthly trends. Use when analyzing keyword opportunities within a specific category from Google's taxonomy." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_KW_FOR_KW_TASK_BY_ID", "name": "Get Keywords Data Google Keywords For Keywords Task", "description": "Tool to retrieve Google Keywords For Keywords task results by task ID. Use when you need to fetch keyword metrics for specified search terms, including search volume, CPC, competition levels, and historical monthly search trends." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_TRENDS_EXPLORE_TASK_BY_ID", "name": "Get Keywords Data Google Trends Explore Task", "description": "Tool to retrieve Google Trends Explore task results by task ID. Use when you need to fetch trend analysis data including time-series popularity graphs, geographic distribution maps, and related topics/queries for previously submitted keywords." }, { "slug": "DATAFORSEO_GET_KW_GOOGLE_TRENDS_LOCATIONS_BY_COUNTRY", "name": "Get Google Trends Locations By Country", "description": "Tool to retrieve available Google Trends locations filtered by country ISO code. Use when you need to get the list of valid locations for setting up Google Trends keyword data tasks in a specific country." }, { "slug": "DATAFORSEO_GET_LLM_MENTIONS_AVAILABLE_FILTERS", "name": "Get LLM Mentions Available Filters", "description": "Tool to fetch available filters for AI Optimization LLM Mentions API endpoints. Use when you need to discover which filter parameters are available for querying LLM mentions data." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_ASIN_TASK_ADVANCED_BY_ID", "name": "Get Merchant Amazon ASIN Task Advanced By ID", "description": "Tool to retrieve Amazon product information by ASIN task ID. Use when you need to get detailed information about a product and all its modification ASINs listed on Amazon." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_ASIN_TASK_HTML", "name": "Get Merchant Amazon ASIN Task HTML", "description": "Tool to retrieve raw HTML results for an Amazon ASIN merchant task by ID. Use when you need to get the unprocessed HTML content of an Amazon product page after creating an ASIN task. Task results are available within 7 days of creation." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_PRODUCTS_TASK_ADVANCED_BY_ID", "name": "Get Merchant Amazon Products Task (Advanced)", "description": "Tool to retrieve advanced Amazon Products task results by task ID. Use when you need to fetch detailed product search results including pricing, ratings, delivery info, and product metadata for a previously submitted Amazon merchant task." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_PRODUCTS_TASK_HTML_BY_ID", "name": "Get Merchant Amazon Products Task HTML By ID", "description": "Tool to retrieve raw HTML results for a Merchant Amazon Products task by ID. Use when you need to get the unprocessed HTML content of Amazon product pages after creating a products task." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_SELLERS_TASK_ADVANCED", "name": "Get Merchant Amazon Sellers Task Advanced", "description": "Tool to retrieve Amazon sellers task results from DataForSEO. Use when you need to get seller information for a previously created task." }, { "slug": "DATAFORSEO_GET_MERCHANT_AMAZON_SELLERS_TASK_HTML_BY_ID", "name": "Get Merchant Amazon Sellers Task HTML By ID", "description": "Tool to retrieve raw HTML results for a Merchant Amazon Sellers task by ID. Use when you need to get the unprocessed HTML content of an Amazon sellers page after creating a sellers task." }, { "slug": "DATAFORSEO_GET_MERCHANT_GOOGLE_PRODUCTS_TASK_ADVANCED_BY_ID", "name": "Get Merchant Google Products Task (Advanced)", "description": "Tool to retrieve advanced Google Shopping Products task results by task ID. Use when you need to fetch detailed product search results including pricing, ratings, delivery info, seller details, and product metadata for a previously submitted Google merchant task." }, { "slug": "DATAFORSEO_GET_MERCHANT_GOOGLE_PRODUCTS_TASK_HTML", "name": "Get Merchant Google Products Task HTML", "description": "Tool to retrieve raw HTML results for a Merchant Google Products task by ID. Use when you need to get the unprocessed HTML content of Google Shopping product pages after creating a products task. Task results are available within 7 days of creation." }, { "slug": "DATAFORSEO_GET_MERCHANT_GOOGLE_SELLERS_TASK_ADVANCED_BY_ID", "name": "Get Merchant Google Sellers Task (Advanced)", "description": "Tool to retrieve advanced Google Sellers task results by task ID. Use when you need to fetch detailed seller listings for a product on Google Shopping, including pricing, ratings, availability, and seller information for a previously submitted merchant task." }, { "slug": "DATAFORSEO_GET_MERCHANT_G_PRODUCT_INFO_TASK_ADV_BY_ID", "name": "Get Merchant Google Product Info Task (Advanced)", "description": "Tool to retrieve advanced Google Product Info task results by task ID. Use when you need detailed product information from Google Shopping including title, description, images, ratings, specifications, seller details with pricing and delivery info, and product variations for a previously submitted merchant task." }, { "slug": "DATAFORSEO_GET_ON_PAGE_DUPLICATE_CONTENT", "name": "Get On Page Duplicate Content", "description": "Tool to retrieve duplicate content analysis for a specific page using the SimHash algorithm. Use when you need to identify pages with content similar to a target page, with similarity scores from 0-10 where higher scores indicate greater similarity." }, { "slug": "DATAFORSEO_GET_ON_PAGE_DUPLICATE_TAGS", "name": "Get On Page Duplicate Tags", "description": "Tool to retrieve pages with duplicate title or description tags from On Page crawl tasks. Use when you need to identify SEO issues related to duplicate metadata across pages. Returns lists of pages sharing the same title or description tags along with page performance metrics." }, { "slug": "DATAFORSEO_GET_ON_PAGE_KEYWORD_DENSITY", "name": "Get On Page Keyword Density", "description": "Tool to get keyword density and keyword frequency data from an On Page task. Use when you need to analyze keyword usage patterns on a specific website or web page, filter keywords by frequency or density, or understand which keywords appear most often on a page." }, { "slug": "DATAFORSEO_GET_ON_PAGE_LIGHTHOUSE_AUDITS", "name": "Get On Page Lighthouse Audits", "description": "Tool to retrieve the complete list of available Lighthouse audits for the OnPage API. Use when you need to understand which Lighthouse audit titles are available for quality analysis of web pages." }, { "slug": "DATAFORSEO_GET_ON_PAGE_LIGHTHOUSE_TASK_GET_JSON", "name": "Get On Page Lighthouse Task Get Json", "description": "Tool to retrieve On Page Lighthouse task results in JSON format. Use when you need to fetch Google Lighthouse audit data for a previously submitted task, including performance metrics, accessibility scores, SEO analysis, and detailed audit findings." }, { "slug": "DATAFORSEO_GET_ON_PAGE_LINKS", "name": "Get On Page Links", "description": "Tool to retrieve internal and external links detected on a target website by task ID. Use when you need to analyze link structure, check for broken links, filter links by type (anchor, image, canonical, meta, alternate, redirect), or examine link attributes like dofollow/nofollow status." }, { "slug": "DATAFORSEO_GET_ON_PAGE_NON_INDEXABLE", "name": "Get On Page Non Indexable", "description": "Tool to retrieve non-indexable pages from an On-Page crawl task by task ID. Use when you need to identify pages blocked from search engine indexing via robots.txt, meta tags, or HTTP headers. Supports filtering and pagination." }, { "slug": "DATAFORSEO_GET_ON_PAGE_PAGES", "name": "Get On Page Pages", "description": "Tool to retrieve crawled pages with on-page metrics and optimization data. Use when you need detailed page-level information including SEO scores, performance metrics, content analysis, and technical checks for pages in a crawl task." }, { "slug": "DATAFORSEO_GET_ON_PAGE_PAGES_BY_RESOURCE", "name": "Get On Page Pages By Resource", "description": "Tool to retrieve pages that use a specific resource from a completed OnPage crawl task. Use when you need to find all pages utilizing a particular JavaScript file, CSS file, image, or other resource. Returns on-page metrics, SEO audit data, and Core Web Vitals for each page." }, { "slug": "DATAFORSEO_GET_ON_PAGE_SUMMARY_BY_ID", "name": "Get On Page Summary", "description": "Tool to retrieve On Page Summary information for a scanned website by task ID. Use when you need to get overall website statistics and drill down into on-page SEO issues such as broken links, duplicate content, crawl errors, and page status codes. Task ID must be from an On-Page task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_SERP_BAIDU_LOCATIONS_BY_COUNTRY", "name": "Get SERP Baidu Locations By Country", "description": "Tool to retrieve supported Baidu SERP locations by country. Use when you need to get the list of valid Baidu SERP locations for setting up SERP tasks in a specific country." }, { "slug": "DATAFORSEO_GET_SERP_BAIDU_ORGANIC_TASK_ADVANCED_BY_ID", "name": "Get SERP Baidu Organic Task (Advanced)", "description": "Tool to retrieve advanced Baidu Organic SERP task results by task ID. Use when you need to fetch detailed search engine results page data from Baidu including organic results, rankings, and metadata for a previously submitted task." }, { "slug": "DATAFORSEO_GET_SERP_BING_ORGANIC_TASK_REGULAR_BY_ID", "name": "Get SERP Bing Organic Task Regular By ID", "description": "Tool to retrieve Bing Organic SERP task results by task ID. Use when you need to fetch search engine results page data from a previously created Bing organic search task, including organic rankings, paid results, and related searches." }, { "slug": "DATAFORSEO_GET_SERP_G_DATASET_SEARCH_TASK_ADV_BY_ID", "name": "Get SERP Google Dataset Search Task (Advanced)", "description": "Tool to retrieve Google Dataset Search task results by task ID. Use when you need to fetch dataset search results including dataset names, descriptions, providers, formats, authors, licenses, and citation information." }, { "slug": "DATAFORSEO_GET_SERP_G_FINANCE_EXPLORE_TASK_ADV_BY_ID", "name": "Get SERP Google Finance Explore Task (Advanced)", "description": "Tool to retrieve Google Finance Explore task results by task ID. Use when you need to fetch real-time Google Finance data including market indexes, news, earnings calendars, trending instruments, and market trends for a previously created task." }, { "slug": "DATAFORSEO_GET_SERP_G_FINANCE_TICKER_SEARCH_TASK_ADV_BY_ID", "name": "Get SERP Google Finance Ticker Search Task (Advanced)", "description": "Tool to retrieve Google Finance Ticker Search task results by task ID. Use when you need to fetch financial data for stocks, indices, or asset pairs from a previously submitted Google Finance ticker search task." }, { "slug": "DATAFORSEO_GET_SERP_G_LOCAL_FINDER_TASK_GET_ADV_BY_ID", "name": "Get SERP Google Local Finder Task (Advanced)", "description": "Tool to retrieve Google Local Finder SERP task results by task ID. Use when you need to fetch local business search results from a previously submitted Google Local Finder task." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ADS_ADVERTISERS_LIVE_ADVANCED", "name": "Get SERP Google Ads Advertisers Live Advanced", "description": "Tool to get live Google Ads Advertisers results via DataForSEO API. Use when you need to retrieve real-time advertiser information from Google Ads Transparency Center, including advertiser names, locations, verification status, and approximate ad counts for specific keywords." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ADS_ADVERTISERS_TASK_ADVANCED", "name": "Get SERP Google Ads Advertisers Task Advanced", "description": "Tool to retrieve Google Ads advertiser transparency data for a previously created task. Returns advertiser accounts, domains, and ad counts from Google's ads transparency database for the specified search query." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ADS_SEARCH_LIVE_ADVANCED", "name": "Get SERP Google Ads Search Live Advanced", "description": "Tool to get live Google Ads Search advanced results. Use when you need to retrieve advertisement data from Google Ads Transparency Center for a specific advertiser domain or advertiser IDs, including ad creatives, formats, verification status, and time ranges." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_AI_MODE_TASK_ADVANCED_BY_ID", "name": "Get SERP Google AI Mode Task Advanced Results", "description": "Tool to retrieve Google AI Mode SERP task results by task ID. Use when you need to fetch AI-generated overview results from Google search, including markdown content, references, nested elements like text, links, images, videos, tables, and shopping results." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_AUTOCOMPLETE_TASK_ADVANCED_BY_ID", "name": "Get SERP Google Autocomplete Task (Advanced)", "description": "Tool to retrieve Google Autocomplete task results by task ID. Use when you need to fetch autocomplete suggestions from a previously submitted Google Autocomplete task." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_DATASET_INFO_TASK_ADVANCED", "name": "Get SERP Google Dataset Info Task (Advanced)", "description": "Tool to retrieve Google Dataset Info task results by task ID. Use when you need to fetch dataset search results including dataset titles, providers, formats, authors, licenses, citations, and descriptions for a previously submitted dataset search task." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_FINANCE_MARKETS_TASK_HTML_BY_ID", "name": "Get SERP Google Finance Markets Task HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Finance Markets SERP task by ID. Use when you need to get the unprocessed HTML content of a Google Finance Markets page after creating a finance markets task. Task results are available within 7 days of creation." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_FINANCE_QUOTE_TASK_ADVANCED_BY_ID", "name": "Get SERP Google Finance Quote Task (Advanced)", "description": "Tool to retrieve Google Finance Quote task results by task ID. Use when you need real-time financial data from Google Finance Quote tab for a specific ticker symbol, including current price, market data, news, and financial metrics." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_FINANCE_QUOTE_TASK_HTML_BY_ID", "name": "Get SERP Google Finance Quote HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Finance Quote task by ID. Use when you need to fetch the unprocessed HTML content from a previously created finance quote task. Results remain valid for 7 days after task creation." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_IMAGES_TASK_GET_ADVANCED_BY_ID", "name": "Get SERP Google Images Task (Advanced)", "description": "Tool to retrieve Google Images SERP task results by task ID. Use when you need to fetch image search results from a previously submitted Google Images task." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_IMAGES_TASK_HTML_BY_ID", "name": "Get SERP Google Images Task HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Images SERP task by ID. Use when you need to get the unprocessed HTML content of a Google Images search results page after creating an images task. Task results are available within 7 days of creation." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_JOBS_TASK_ADVANCED", "name": "Get SERP Google Jobs Task (Advanced)", "description": "Tool to retrieve Google Jobs SERP task results by task ID. Use when you need to fetch job listing data from a previously submitted Google Jobs search task, including employer information, location, salary, contract type, and posting details. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_MAPS_TASK_GET_ADVANCED_BY_ID", "name": "Get SERP Google Maps Task (Advanced)", "description": "Tool to retrieve Google Maps SERP task results by task ID. Use when you need to fetch location-based business search results from a previously submitted Google Maps task, including business details, ratings, addresses, operating hours, and contact information." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_NEWS_TASK_GET_ADVANCED", "name": "Get SERP Google News Task (Advanced)", "description": "Tool to retrieve Google News SERP task results by task ID. Use when you need to fetch news article data from a previously submitted Google News search task, including headlines, sources, publication dates, and top stories. The task ID must be from a task created within the last 30 days." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ORGANIC_TASK_ADVANCED_BY_ID", "name": "Get SERP Google Organic Task (Advanced)", "description": "Tool to retrieve advanced Google Organic SERP task results by task ID. Use when you need to fetch detailed search engine results page data from Google including organic results, rankings, and metadata for a previously submitted task." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ORGANIC_TASK_HTML_BY_ID", "name": "Get SERP Google Organic Task HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Organic SERP task by ID. Use when you need to get the unprocessed HTML content of a Google search results page after creating an organic SERP task. Results are available for 7 days after task completion." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_ORGANIC_TASK_REGULAR_BY_ID", "name": "Get SERP Google Organic Task Regular By ID", "description": "Tool to retrieve Google Organic SERP task results by task ID. Use when you need to fetch search engine results page data from a previously created Google organic search task, including organic rankings, paid results, and featured snippets." }, { "slug": "DATAFORSEO_GET_SERP_GOOGLE_SEARCH_BY_IMAGE_HTML_BY_ID", "name": "Get SERP Google Search By Image HTML By ID", "description": "Tool to retrieve raw HTML results for a Google Search By Image task by ID. Use when you need to get the unprocessed HTML content of Google Search By Image results after creating a search by image task." }, { "slug": "DATAFORSEO_GET_SERP_NAVER_ORGANIC_TASK_GET_ADVANCED", "name": "Get SERP Naver Organic Task (Advanced)", "description": "Tool to retrieve advanced Naver Organic SERP task results by task ID. Use when you need to fetch detailed search engine results page data from Naver including organic results, rankings, and metadata for a previously submitted task. Results are available for 30 days after task creation at no additional cost." }, { "slug": "DATAFORSEO_GET_SERP_NAVER_ORGANIC_TASK_REGULAR_BY_ID", "name": "Get SERP Naver Organic Task Regular By ID", "description": "Tool to retrieve Naver Organic SERP task results by task ID. Use when you need to fetch search engine results page data from a previously created Naver organic search task, including organic rankings, paid results, and related searches." }, { "slug": "DATAFORSEO_GET_SERP_SEZNAM_ORGANIC_TASK_GET_ADVANCED_BY_ID", "name": "Get SERP Seznam Organic Task (Advanced)", "description": "Tool to retrieve Seznam Organic SERP task results by task ID. Use when you need to fetch organic search results from a previously submitted Seznam search task, including rankings, titles, URLs, descriptions, and other SERP features like related searches, videos, and images." }, { "slug": "DATAFORSEO_GET_SERP_SEZNAM_ORGANIC_TASK_GET_REGULAR_BY_ID", "name": "Get Serp Seznam Organic Task Get Regular By Id", "description": "Tool to retrieve Seznam Organic SERP task results by task ID. Use when you need to fetch completed Seznam search results including organic listings, rankings, and metadata. Results remain accessible for 30 days after task creation." }, { "slug": "DATAFORSEO_GET_SERP_YAHOO_ORGANIC_TASK_GET_ADVANCED_BY_ID", "name": "Get SERP Yahoo Organic Task (Advanced)", "description": "Tool to retrieve Yahoo Organic SERP task results by task ID. Use when you need to fetch organic search results from a previously submitted Yahoo search task, including rankings, titles, URLs, descriptions, ratings, and other SERP features like related searches, videos, and images." }, { "slug": "DATAFORSEO_GET_SERP_YAHOO_ORGANIC_TASK_REGULAR_BY_ID", "name": "Get SERP Yahoo Organic Task Regular By ID", "description": "Tool to retrieve Yahoo Organic SERP task results by task ID. Use when you need to fetch search engine results page data from a previously created Yahoo organic search task, including organic rankings, paid results, and related searches." }, { "slug": "DATAFORSEO_GET_SERP_YT_VIDEO_COMMENTS_TASK_ADV_BY_ID", "name": "Get YouTube Video Comments Task (Advanced)", "description": "Tool to retrieve advanced YouTube Video Comments SERP task results by task ID. Use when you need to fetch detailed comment data including author info, timestamps, likes, and reply counts for a previously submitted YouTube video comments task." }, { "slug": "DATAFORSEO_GET_SERP_YT_VIDEO_SUBTITLES_TASK_ADV_BY_ID", "name": "Get SERP YouTube Video Subtitles Task Advanced By ID", "description": "Tool to retrieve YouTube video subtitles from a specific task by ID. Use when you need to fetch subtitle data for a YouTube video including text, timing information, and translations from a previously submitted task." }, { "slug": "DATAFORSEO_LIST_AI_OPT_CHAT_GPT_LLM_RESPONSES_MODELS", "name": "List Chat GPT AI Models", "description": "Retrieve the list of available Chat GPT AI models from DataForSEO. Returns comprehensive information about each model including reasoning capabilities, web search support, and POST-GET retrieval compatibility. Use this action to discover which AI models are available for use with the DataForSEO AI Optimization API." }, { "slug": "DATAFORSEO_LIST_AI_OPT_CHAT_GPT_LLM_RESPONSES_TASKS_READY", "name": "List Ready AI Optimization LLM Response Tasks", "description": "Tool to list completed AI optimization LLM response tasks that are ready for result collection. Use when you need to retrieve task IDs of completed tasks that haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_AI_OPT_CHAT_GPT_LLM_SCRAPER_LANGUAGES", "name": "List AI Optimization ChatGPT LLM Scraper Languages", "description": "Tool to list available languages for DataForSEO ChatGPT LLM Scraper. Use when you need to see which languages are supported for AI optimization scraping tasks." }, { "slug": "DATAFORSEO_LIST_AI_OPT_CHAT_GPT_LLM_SCRAPER_LOCATIONS", "name": "List ChatGPT LLM Scraper Locations", "description": "Tool to retrieve the list of available locations for DataForSEO ChatGPT LLM Scraper. Use when you need to filter locations by country when setting up a task." }, { "slug": "DATAFORSEO_LIST_AI_OPT_CLAUDE_LLM_RESPONSES_TASKS_READY", "name": "List AI Optimization Claude LLM Tasks Ready", "description": "Tool to list completed AI Optimization Claude LLM response tasks that are ready for collection. Use when working with DataForSEO AI optimization endpoints to retrieve task IDs of completed jobs that haven't been collected yet." }, { "slug": "DATAFORSEO_LIST_AI_OPT_GEMINI_LLM_SCRAPER_TASKS_READY", "name": "List AI Optimization Gemini LLM Scraper Tasks Ready", "description": "Tool to retrieve completed Gemini LLM Scraper tasks that haven't been collected yet. Use when checking for ready tasks to process results (up to 1,000 tasks from last 3 days). Rate limit: 20 calls per minute." }, { "slug": "DATAFORSEO_LIST_AI_OPTIMIZATION_GEMINI_LLM_SCRAPER_LANGUAGES", "name": "List Gemini LLM Scraper Languages", "description": "Tool to retrieve the list of available languages for DataForSEO AI Optimization Gemini LLM Scraper API. Use when you need to check which languages are supported for Gemini-powered LLM scraping operations." }, { "slug": "DATAFORSEO_LIST_AI_OPTIMIZATION_GEMINI_LLM_SCRAPER_LOCATIONS", "name": "List Gemini LLM Scraper Locations", "description": "Tool to list available locations for AI Optimization Gemini LLM Scraper. Use when you need to see which geographic locations are supported for Gemini LLM scraping operations." }, { "slug": "DATAFORSEO_LIST_AI_OPT_LLM_MENTIONS_LOCATIONS_AND_LANGUAGES", "name": "List AI Optimization LLM Mentions Locations and Languages", "description": "Tool to retrieve the full list of locations and languages supported in DataForSEO AI Optimization LLM Mentions API. Use this to discover which geographic locations and languages are available for LLM mention tracking across platforms like Google and ChatGPT. Note: ChatGPT data is only available for the United States and English language." }, { "slug": "DATAFORSEO_LIST_AI_OPT_PERPLEXITY_LLM_RESPONSES_MODELS", "name": "List AI Optimization Perplexity LLM Response Models", "description": "Tool to list available Perplexity AI models for LLM responses with their capabilities. Use when you need to see which Perplexity models are available and their supported features (reasoning, web search, POST-GET data retrieval)." }, { "slug": "DATAFORSEO_LIST_APP_DATA_APPLE_APP_LIST_TASKS_READY", "name": "List Apple App List Ready Tasks", "description": "Tool to retrieve completed Apple App List tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_APP_DATA_APPLE_CATEGORIES", "name": "List App Data Apple Categories", "description": "Tool to retrieve the complete list of app categories available on Apple App Store. Use when you need to see which app categories are supported for App Data API requests." }, { "slug": "DATAFORSEO_LIST_APP_DATA_APPLE_LANGUAGES", "name": "List App Data Apple Languages", "description": "Tool to list available languages for DataForSEO Apple App Data API. Use when you need to see which languages are supported for Apple app data queries." }, { "slug": "DATAFORSEO_LIST_APP_DATA_APPLE_LOCATIONS", "name": "List Apple App Data Locations", "description": "Tool to retrieve the list of Apple App Store locations supported in DataForSEO App Data API. Use when you need to get available location codes and names for Apple App Store data queries." }, { "slug": "DATAFORSEO_LIST_APP_DATA_ERRORS", "name": "List App Data Errors", "description": "Tool to retrieve information about App Data API tasks that returned errors within the past 7 days. Use when you need to debug failed tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_APP_INFO_TASKS_READY", "name": "List Google App Info Ready Tasks", "description": "Tool to retrieve completed Google App Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_APP_LISTINGS_CATEGORIES", "name": "List App Data Google App Listings Categories", "description": "Tool to list all available Google Play app categories with their listing counts. Use when you need to see the complete list of app categories available on Google Play Store." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_APP_LIST_TASKS_READY", "name": "List Google App List Ready Tasks", "description": "Tool to retrieve completed Google App List tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_APP_REVIEWS_TASKS_READY", "name": "List Google App Reviews Ready Tasks", "description": "Tool to retrieve completed Google App Reviews tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_APP_SEARCHES_TASKS_READY", "name": "List Google App Searches Ready Tasks", "description": "Tool to retrieve completed Google App Searches tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_CATEGORIES", "name": "List App Data Google Categories", "description": "Tool to list available Google Play app categories. Use when you need to retrieve the complete list of app category identifiers available on Google Play for filtering or classification purposes." }, { "slug": "DATAFORSEO_LIST_APP_DATA_GOOGLE_LANGUAGES", "name": "List App Data Google Languages", "description": "Tool to list available languages for DataForSEO Google App Data API. Use when you need to see which languages are supported for Google app data queries." }, { "slug": "DATAFORSEO_LIST_APP_DATA_ID_LIST", "name": "List App Data Task IDs", "description": "Tool to retrieve a list of App Data task IDs within a specified time period. Use when you need to get task IDs and metadata for all App Data tasks (both successful and uncompleted) created between two dates. Limited to 1000 task IDs per call with 10 API calls per minute." }, { "slug": "DATAFORSEO_LIST_APP_DATA_TASKS_READY", "name": "List App Data Ready Tasks", "description": "Tool to retrieve completed App Data tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_APPLE_APP_SEARCHES_TASKS_READY", "name": "List Apple App Searches Tasks Ready", "description": "Tool to retrieve list of completed Apple App Searches tasks that are ready for collection. Use when you need to get task IDs of completed searches from the previous three days that haven't been collected yet." }, { "slug": "DATAFORSEO_LIST_BACKLINKS_AVAILABLE_FILTERS", "name": "List Backlinks Available Filters", "description": "Tool to retrieve available filters for DataForSEO Backlinks API endpoints. Use when you need to discover which fields can be filtered in backlinks queries and their data types (string, boolean, numeric, time, or array types)." }, { "slug": "DATAFORSEO_LIST_BACKLINKS_ERRORS", "name": "List Backlinks Errors", "description": "Tool to retrieve information about Backlinks API tasks that returned errors within the past 7 days. Use when you need to debug failed backlinks tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_BING_SEARCH_VOLUME_HISTORY_LOCATIONS", "name": "List Bing Search Volume History Locations", "description": "Tool to retrieve the list of locations and languages supported by Bing Search Volume History endpoint. Use when you need to determine which geographic locations and languages are available for Bing search volume history queries." }, { "slug": "DATAFORSEO_LIST_BIZ_GOOGLE_EXTENDED_REVIEWS_TASKS_READY", "name": "List Google Extended Reviews Ready Tasks", "description": "Tool to retrieve completed Google Extended Reviews tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BIZ_GOOGLE_HOTEL_SEARCHES_TASKS_READY", "name": "List Business Data Google Hotel Searches Tasks Ready", "description": "Tool to retrieve completed Business Data Google Hotel Searches tasks ready for collection. Use when you need to get task IDs for completed hotel search tasks that haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BIZ_GOOGLE_MY_BUSINESS_INFO_TASKS_READY", "name": "List Google My Business Info Ready Tasks", "description": "Tool to retrieve completed Google My Business Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_BIZ_GOOGLE_MY_BUSINESS_UPDATES_TASKS_READY", "name": "List Google My Business Updates Ready Tasks", "description": "Tool to retrieve completed Google My Business Updates tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BIZ_GOOGLE_QUESTIONS_ANSWERS_TASKS_READY", "name": "List Google Questions And Answers Ready Tasks", "description": "Tool to retrieve completed Google Questions And Answers tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BIZ_TRIPADVISOR_REVIEWS_TASKS_READY", "name": "List TripAdvisor Reviews Ready Tasks", "description": "Tool to retrieve completed TripAdvisor Reviews tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_BUSINESS_LISTINGS_CATEGORIES", "name": "List Business Data Business Listings Categories", "description": "Tool to list Business Data Business Listings categories by business count. Use when you need to retrieve the available business categories for business listings data." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_BUSINESS_LISTINGS_LOCATIONS", "name": "List Business Data Business Listings Locations", "description": "Tool to list available locations for Business Listings data. Use when you need to retrieve location codes and geographic information for business listing queries. Returns all supported countries with business count statistics." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_ERRORS", "name": "List Business Data Errors", "description": "Tool to retrieve information about Business Data API tasks that returned errors within the past 7 days. Use when you need to debug failed tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_GOOGLE_HOTEL_INFO_TASKS_READY", "name": "List Google Hotel Info Ready Tasks", "description": "Tool to retrieve completed Google Hotel Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_GOOGLE_LANGUAGES", "name": "List Business Data Google Languages", "description": "Tool to list available languages for DataForSEO Google Business Data API. Use when you need to see which languages are supported for Google business data queries." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_GOOGLE_REVIEWS_TASKS_READY", "name": "List Google Reviews Ready Tasks", "description": "Tool to retrieve completed Google Reviews tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_TASKS_READY", "name": "List Business Data Ready Tasks", "description": "Tool to retrieve completed Business Data tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_TRIPADVISOR_LANGUAGES", "name": "List Business Data TripAdvisor Languages", "description": "Tool to list available TripAdvisor languages supported in Business Data API. Use when you need to retrieve language codes for TripAdvisor Business Data queries." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_TRIPADVISOR_SEARCH_TASKS_READY", "name": "List TripAdvisor Search Ready Tasks", "description": "Tool to retrieve completed TripAdvisor Search tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_TRUSTPILOT_REVIEWS_TASKS_READY", "name": "List Trustpilot Reviews Ready Tasks", "description": "Tool to retrieve completed Trustpilot Reviews tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_BUSINESS_DATA_TRUSTPILOT_SEARCH_TASKS_READY", "name": "List Trustpilot Search Ready Tasks", "description": "Tool to retrieve completed Trustpilot Search tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_CLAUDE_LLM_RESPONSE_MODELS", "name": "List Claude LLM Response Models", "description": "Tool to list available Claude AI models for AI optimization and LLM responses. Use when you need to see which Claude models are available and their capabilities (reasoning, web search, task post support)." }, { "slug": "DATAFORSEO_LIST_CONTENT_ANALYSIS_AVAILABLE_FILTERS", "name": "List Content Analysis Available Filters", "description": "Tool to retrieve available filters for DataForSEO Content Analysis API. Use when you need to discover which fields can be filtered in content analysis queries and their data types (string, numeric, boolean, array, or timestamp)." }, { "slug": "DATAFORSEO_LIST_CONTENT_ANALYSIS_CATEGORIES", "name": "List Content Analysis Categories", "description": "Tool to list all available Content Analysis categories based on Google product and service categories. Use when you need to retrieve the complete hierarchical list of approximately 3,180 category codes and names for content classification purposes." }, { "slug": "DATAFORSEO_LIST_CONTENT_ANALYSIS_LANGUAGES", "name": "List Content Analysis Languages", "description": "Tool to list available languages supported in Content Analysis API. Use when you need to retrieve language codes for content analysis queries." }, { "slug": "DATAFORSEO_LIST_CONTENT_ANALYSIS_LOCATIONS", "name": "List Content Analysis Locations", "description": "Tool to list available locations supported in Content Analysis API. Use when you need to retrieve location codes and geographic information for content analysis queries. This is a free endpoint that returns all supported locations." }, { "slug": "DATAFORSEO_LIST_DATAFORSEO_LABS_CATEGORIES", "name": "List DataForSEO Labs Categories", "description": "Tool to retrieve the complete hierarchical list of Google categories used by DataForSEO Labs. Use when you need to obtain category codes and names for filtering search results or understanding domain categorization." }, { "slug": "DATAFORSEO_LIST_DATAFORSEO_LABS_ERRORS", "name": "List DataForSEO Labs Errors", "description": "Tool to retrieve information about DataForSEO Labs API tasks that returned errors within the past 7 days. Use when you need to debug failed Labs tasks, monitor error rates, or investigate specific function failures." }, { "slug": "DATAFORSEO_LIST_DATAFORSEO_LABS_LOCATIONS_AND_LANGUAGES", "name": "List DataForSEO Labs Locations and Languages", "description": "Tool to list available locations and languages supported in DataForSEO Labs API. Use when you need to retrieve location codes and language codes for DataForSEO Labs queries across Google, Bing, and Amazon data sources." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_ERRORS", "name": "List Domain Analytics Errors", "description": "Tool to retrieve information about Domain Analytics API tasks that returned errors within the past 7 days. Use when you need to debug failed tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_ID_LIST", "name": "List Domain Analytics Task IDs", "description": "Tool to retrieve a list of Domain Analytics task IDs within a specified time period. Use when you need to get task IDs and metadata for all Domain Analytics tasks (both successful and uncompleted) created between two dates. Limited to 1000 task IDs per call with 10 API calls per minute." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_TECHNOLOGIES", "name": "List Domain Analytics Technologies", "description": "Tool to retrieve the complete list of available technologies in DataForSEO Domain Analytics API, organized by groups and categories. Use when you need to discover which technologies can be tracked or analyzed (e.g., ecommerce platforms, analytics tools, marketing services)." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_TECHNOLOGIES_FILTERS", "name": "List Domain Analytics Technologies Filters", "description": "Tool to retrieve available filters for DataForSEO Domain Analytics Technologies API endpoints. Use when you need to discover which fields can be filtered in domain analytics technology queries and their data types (string, numeric, or timestamp)." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_TECHNOLOGIES_LANGUAGES", "name": "List Domain Analytics Technologies Languages", "description": "Tool to list available languages for Domain Analytics Technologies API. Use when you need to retrieve language codes for domain analytics technology queries." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_TECHNOLOGIES_LOCATIONS", "name": "List Domain Analytics Technologies Locations", "description": "Tool to list available locations supported in Domain Analytics Technologies API. Use when you need to retrieve location codes for technology stack analysis queries." }, { "slug": "DATAFORSEO_LIST_DOMAIN_ANALYTICS_WHOIS_FILTERS", "name": "List Domain Analytics Whois Filters", "description": "Tool to retrieve available filters for DataForSEO Domain Analytics Whois API endpoint. Use when you need to discover which fields can be filtered in whois queries and their data types (string, numeric, boolean, array, or timestamp)." }, { "slug": "DATAFORSEO_LIST_GEMINI_LLM_MODELS", "name": "List Gemini LLM Models", "description": "Tool to list available Gemini LLM response models with their capabilities. Use when you need to see which Gemini AI models are available for optimization tasks, including their reasoning and web search support." }, { "slug": "DATAFORSEO_LIST_GEMINI_LLM_RESPONSES_TASKS_READY", "name": "List Gemini LLM Responses Tasks Ready", "description": "Tool to retrieve a list of completed Gemini LLM response tasks that haven't been collected yet. Use when working with DataForSEO's Standard method without postback_url to get task IDs for result collection via Task GET endpoint. Returns up to 1000 completed tasks from the previous three days. Rate limit: 20 calls per minute." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_BING_LANGUAGES", "name": "List Keywords Data Bing Languages", "description": "Tool to list available languages for DataForSEO Bing Keywords Data API. Use when you need to see which languages are supported for Bing keyword data queries." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_BING_SEARCH_VOLUME_TASKS_READY", "name": "List Bing Search Volume Ready Tasks", "description": "Tool to retrieve completed Keywords Data Bing Search Volume tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_DATAFORSEO_TRENDS_LOCATIONS", "name": "List Keywords Data Dataforseo Trends Locations", "description": "Tool to list available locations supported in DataForSEO Trends API. Use when you need to retrieve location codes and geographic information for DataForSEO Trends queries. Minimum geographic scope is country level." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_ENDPOINTS", "name": "List Keywords Data Endpoints", "description": "Tool to retrieve all available Keywords Data API endpoints. Use when you need to discover available Keywords Data endpoints for Bing, Google, Google Ads, Google Trends, Clickstream Data, and DataForSEO Trends." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_ERRORS", "name": "List Keywords Data Errors", "description": "Tool to retrieve Keywords Data API tasks that returned errors within the past 7 days. Use when you need to monitor or debug failed Keywords Data API requests, investigate error patterns, or troubleshoot API integration issues." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_ADS_LANGUAGES", "name": "List Keywords Data Google Ads Languages", "description": "Tool to list available languages for DataForSEO Keywords Data Google Ads API. Use when you need to see which languages are supported for Google Ads keyword data queries." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_CATEGORIES", "name": "List Keywords Data Google Categories", "description": "Tool to list available Google AdWords product/service categories. Use when you need to retrieve the hierarchical list of ~94,933 Google advertising categories for keyword research or ad targeting purposes." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_LANGUAGES", "name": "List Keywords Data Google Languages", "description": "Tool to list available languages for DataForSEO Google Keywords Data API. Use when you need to see which languages are supported for Google keywords data queries." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_TRENDS_CATEGORIES", "name": "List Keywords Data Google Trends Categories", "description": "Tool to list available Google Trends categories for Keywords Data API. Use when you need category codes for filtering Google Trends data by topic or industry vertical." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_TRENDS_LANGUAGES", "name": "List Keywords Data Google Trends Languages", "description": "Tool to list available languages for DataForSEO Google Trends API. Use when you need to see which languages are supported for Google Trends keyword data queries." }, { "slug": "DATAFORSEO_LIST_KEYWORDS_DATA_GOOGLE_TRENDS_LOCATIONS", "name": "List Keywords Data Google Trends Locations", "description": "Tool to list available Google Trends locations for Keywords Data API. Use when you need location codes for geographic targeting in Google Trends queries. Returns 2,383+ supported locations with Google Trends identifiers." }, { "slug": "DATAFORSEO_LIST_KW_BING_AUDIENCE_EST_JOB_FUNCTIONS", "name": "List Keywords Data Bing Audience Estimation Job Functions", "description": "Tool to retrieve the list of job functions with job_function_id supported by Bing Ads Audience Estimation endpoint. Use when you need to see which job functions are available for audience estimation in Bing Ads." }, { "slug": "DATAFORSEO_LIST_KW_BING_AUDIENCE_EST_TASKS_READY", "name": "List Bing Audience Estimation Ready Tasks", "description": "Tool to retrieve completed Keywords Data Bing Audience Estimation tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_BING_KW_FOR_KW_TASKS_READY", "name": "List Bing Keywords For Keywords Ready Tasks", "description": "Tool to retrieve completed Bing Keywords For Keywords tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_BING_KW_FOR_SITE_TASKS_READY", "name": "List Bing Keywords For Site Ready Tasks", "description": "Tool to retrieve completed Bing Keywords For Site tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_BING_KW_PERFORMANCE_TASKS_READY", "name": "List Bing Keyword Performance Ready Tasks", "description": "Tool to retrieve completed Bing Keyword Performance tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_BING_KW_SUGGESTIONS_FOR_URL_LANGUAGES", "name": "List Keywords Data Bing Keyword Suggestions For URL Languages", "description": "Tool to list available languages for DataForSEO Bing Keyword Suggestions API. Use when you need to see which languages are supported for Bing keyword suggestions queries." }, { "slug": "DATAFORSEO_LIST_KW_BING_KW_SUGGESTIONS_FOR_URL_TASKS_READY", "name": "List Keywords Data Bing Keyword Suggestions For URL Tasks Ready", "description": "Tool to retrieve completed Bing Keyword Suggestions For URL tasks that haven't been collected yet. Use when working with DataForSEO's Standard method without postback_url to get task IDs for result collection. Results are maintained for 3 days after task completion." }, { "slug": "DATAFORSEO_LIST_KW_BING_SEARCH_VOL_HISTORY_TASKS_READY", "name": "List Bing Search Volume History Ready Tasks", "description": "Tool to retrieve completed Bing Search Volume History tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_CLICKSTREAM_LOCATIONS_AND_LANGUAGES", "name": "List Keywords Data Clickstream Data Locations And Languages", "description": "Tool to retrieve the full list of locations and languages supported in DataForSEO Clickstream Data API. Use when you need to get available geographic locations and their supported languages for clickstream keyword data. This endpoint is free and incurs no cost." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_ADS_AD_TRAFFIC_BY_KW_TASKS_READY", "name": "List Google Ads Ad Traffic by Keywords Ready Tasks", "description": "Tool to retrieve completed Google Ads Ad Traffic by Keywords tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_ADS_KW_FOR_KW_TASKS_READY", "name": "List Google Ads Keywords For Keywords Ready Tasks", "description": "Tool to retrieve completed Google Ads Keywords For Keywords tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_ADS_KW_FOR_SITE_TASKS_READY", "name": "List Keywords Data Google Ads Keywords For Site Tasks Ready", "description": "Tool to retrieve completed Google Ads Keywords For Site tasks that haven't been collected yet. Use when working with DataForSEO's Standard method without postback_url to get task IDs for result collection." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_ADS_SEARCH_VOL_TASKS_READY", "name": "List Google Ads Search Volume Ready Tasks", "description": "Tool to retrieve completed Google Ads Search Volume tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_KW_FOR_KW_TASKS_READY", "name": "List Keywords For Keywords Ready Tasks", "description": "Tool to retrieve completed Google Keywords For Keywords tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_KW_FOR_SITE_TASKS_READY", "name": "List Keywords Data Google Keywords For Site Tasks Ready", "description": "Tool to retrieve completed Google Keywords For Site tasks that haven't been collected yet. Use when working with DataForSEO's Standard method without postback_url to get task IDs for result collection. Tasks are kept for 3 days after completion." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_SEARCH_VOL_TASKS_READY", "name": "List Google Search Volume Ready Tasks", "description": "Tool to retrieve completed Google Search Volume tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_KW_GOOGLE_TRENDS_EXPLORE_TASKS_READY", "name": "List Google Trends Explore Ready Tasks", "description": "Tool to retrieve completed Google Trends Explore tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_LABS_GOOGLE_CATEGORIES_FOR_KW_LANGUAGES", "name": "List DataForSEO Labs Google Categories for Keywords Languages", "description": "Tool to list available languages for DataForSEO Labs Google Categories for Keywords API. Use when you need to see which languages are supported for Google Categories for Keywords queries." }, { "slug": "DATAFORSEO_LIST_MERCHANT_AMAZON_ASIN_TASKS_READY", "name": "List Merchant Amazon Asin Ready Tasks", "description": "Tool to retrieve completed Merchant Amazon Asin tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_MERCHANT_AMAZON_LANGUAGES", "name": "List Merchant Amazon Languages", "description": "Tool to list available languages for DataForSEO Amazon Merchant Data API. Use when you need to see which languages are supported for Amazon merchant data queries." }, { "slug": "DATAFORSEO_LIST_MERCHANT_AMAZON_PRODUCTS_TASKS_READY", "name": "List Merchant Amazon Products Ready Tasks", "description": "Tool to retrieve completed Merchant Amazon Products tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_MERCHANT_AMAZON_SELLERS_TASKS_READY", "name": "List Merchant Amazon Sellers Ready Tasks", "description": "Tool to retrieve completed Merchant Amazon Sellers tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_MERCHANT_ERRORS", "name": "List Merchant Errors", "description": "Tool to retrieve information about Merchant API tasks that returned errors within the past 7 days. Use when you need to debug failed merchant tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_MERCHANT_GOOGLE_LANGUAGES", "name": "List Merchant Google Languages", "description": "Tool to list available languages for DataForSEO Merchant Google API. Use when you need to see which languages are supported for Google Shopping data queries." }, { "slug": "DATAFORSEO_LIST_MERCHANT_GOOGLE_PRODUCT_INFO_TASKS_READY", "name": "List Merchant Google Product Info Ready Tasks", "description": "Tool to retrieve completed Merchant Google Product Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_MERCHANT_GOOGLE_PRODUCTS_TASKS_READY", "name": "List Merchant Google Products Ready Tasks", "description": "Tool to retrieve completed Merchant Google Products tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_MERCHANT_GOOGLE_REVIEWS_TASKS_READY", "name": "List Merchant Google Reviews Ready Tasks", "description": "Tool to retrieve completed Merchant Google Reviews tasks that are ready for collection. Use when you need to get task IDs for completed tasks that haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_MERCHANT_GOOGLE_SELLERS_TASKS_READY", "name": "List Merchant Google Sellers Ready Tasks", "description": "Tool to retrieve completed Merchant Google Sellers tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_MERCHANT_TASKS_READY", "name": "List Merchant Ready Tasks", "description": "Tool to retrieve completed Merchant tasks that are ready for collection. Use when you need to get a list of task IDs for Google Shopping Products tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_AVAILABLE_FILTERS", "name": "List OnPage Available Filters", "description": "Tool to retrieve available filters for DataForSEO OnPage API endpoints. Use when you need to discover which fields can be filtered in OnPage queries (resources, pages, non_indexable, links, pages_by_resource, redirect_chains, keyword_density) and their data types." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_ERRORS", "name": "List OnPage Errors", "description": "Tool to retrieve information about OnPage API tasks that returned errors within the past 7 days. Use when you need to debug failed OnPage tasks, monitor error rates, or investigate specific function failures. Supports filtering by function name and datetime range." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_LIGHTHOUSE_LANGUAGES", "name": "List On Page Lighthouse Languages", "description": "Tool to list available languages for DataForSEO On Page Lighthouse API. Use when you need to see which languages are supported for Lighthouse page quality audits." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_LIGHTHOUSE_TASKS_READY", "name": "List On Page Lighthouse Tasks Ready", "description": "Tool to retrieve the list of completed On Page Lighthouse tasks that haven't been collected yet. Use when you need to get task IDs for completed Lighthouse audits before fetching their results. Tasks remain available for three days after completion." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_LIGHTHOUSE_VERSIONS", "name": "List OnPage Lighthouse Versions", "description": "Tool to list available Lighthouse versions for OnPage API audits. Use when you need to check which Lighthouse versions are supported or identify the default version used for page quality analysis." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_RESOURCES", "name": "List On Page Resources", "description": "Tool to retrieve resources from a completed OnPage crawl task. Use when you need a detailed list of images, scripts, stylesheets, and broken elements found during the crawl. Returns resource metadata, sizes, loading times, and validation checks." }, { "slug": "DATAFORSEO_LIST_ON_PAGE_TASKS_READY", "name": "List On Page Ready Tasks", "description": "Tool to retrieve completed On Page tasks that haven't been collected yet. Use when checking for ready tasks to process results (up to 1,000 tasks from last 3 days). Rate limit: 20 calls per minute." }, { "slug": "DATAFORSEO_LIST_SERP_BAIDU_LANGUAGES", "name": "List Serp Baidu Languages", "description": "Tool to list available languages for DataForSEO Baidu SERP API. Use when you need to see which languages are supported for Baidu search engine results page queries." }, { "slug": "DATAFORSEO_LIST_SERP_BAIDU_ORGANIC_TASKS_FIXED", "name": "List Baidu Organic Fixed Tasks", "description": "Tool to retrieve re-parsed Baidu organic SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_BAIDU_ORGANIC_TASKS_READY", "name": "List SERP Baidu Organic Ready Tasks", "description": "Tool to retrieve completed SERP Baidu Organic tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_BING_LANGUAGES", "name": "List SERP Bing Languages", "description": "Tool to list available languages for DataForSEO Bing SERP API. Use when you need to see which languages are supported for Bing search engine results page queries." }, { "slug": "DATAFORSEO_LIST_SERP_BING_ORGANIC_TASKS_FIXED", "name": "List SERP Bing Organic Tasks Fixed", "description": "Tool to retrieve list of re-parsed Bing Organic SERP tasks that haven't been collected yet. Use when you need to get task IDs for re-parsed results using the Standard method without postback_url, then collect the fixed results using Task GET endpoints." }, { "slug": "DATAFORSEO_LIST_SERP_BING_ORGANIC_TASKS_READY", "name": "List SERP Bing Organic Ready Tasks", "description": "Tool to retrieve completed SERP Bing Organic tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_ENDPOINTS", "name": "List SERP Endpoints", "description": "Tool to retrieve the complete list of available SERP API endpoints for task setup. Use when you need to discover which SERP endpoints are available for specific search engines or operations." }, { "slug": "DATAFORSEO_LIST_SERP_ERRORS", "name": "List SERP Errors", "description": "Tool to retrieve SERP API tasks that returned errors within the past 7 days. Use when you need to investigate or debug SERP API failures, monitor error patterns, or troubleshoot specific task issues." }, { "slug": "DATAFORSEO_LIST_SERP_G_FINANCE_TICKER_SEARCH_TASKS_READY", "name": "List SERP Google Finance Ticker Search Ready Tasks", "description": "Tool to retrieve completed SERP Google Finance Ticker Search tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ADS_ADVERTISERS_LOCATIONS", "name": "List SERP Google Ads Advertisers Locations", "description": "Tool to list available Google Ads advertiser locations for SERP API queries. Use when you need to retrieve location codes and geographic information for Google Ads advertiser targeting. Note: locations in Russia and Belarus are no longer supported." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ADS_ADVERTISERS_TASKS_READY", "name": "List SERP Google Ads Advertisers Ready Tasks", "description": "Tool to retrieve completed SERP Google Ads Advertisers tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ADS_SEARCH_LOCATIONS", "name": "List SERP Google Ads Search Locations", "description": "Tool to list available Google Ads Search locations for SERP API. Use when you need location codes for geographic targeting in Google Ads Search queries. Returns all supported locations with their codes and geographic hierarchy. Note: locations in Russia and Belarus are not supported." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ADS_SEARCH_TASKS_READY", "name": "List SERP Google Ads Search Ready Tasks", "description": "Tool to retrieve completed SERP Google Ads Search tasks that are ready for collection. Use when you need to get a list of task IDs for Google Ads Search tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_AI_MODE_LANGUAGES", "name": "List SERP Google AI Mode Languages", "description": "Tool to list available languages for DataForSEO Google AI Mode SERP API. Use when you need to see which languages are supported for Google AI Mode search engine results page queries." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_AI_MODE_TASKS_FIXED", "name": "List SERP Google AI Mode Tasks Fixed", "description": "Tool to retrieve re-parsed SERP Google AI Mode tasks that haven't been collected yet. Use when you need to get a list of task IDs for tasks that have been automatically re-parsed but haven't been collected yet using the Standard method without postback_url. Returns up to 1,000 re-parsed tasks from the last 24 hours. Rate limit: 20 calls per minute." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_AI_MODE_TASKS_READY", "name": "List SERP Google AI Mode Ready Tasks", "description": "Tool to retrieve completed SERP Google AI Mode tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_AUTOCOMPLETE_TASKS_FIXED", "name": "List Google Autocomplete Fixed Tasks", "description": "Tool to retrieve re-parsed Google autocomplete SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_AUTOCOMPLETE_TASKS_READY", "name": "List SERP Google Autocomplete Ready Tasks", "description": "Tool to retrieve completed SERP Google Autocomplete tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_DATASET_INFO_TASKS_FIXED", "name": "List SERP Google Dataset Info Fixed Tasks", "description": "Tool to retrieve re-parsed Google Dataset Info tasks that haven't been collected yet. Use when you need to get a list of task IDs for re-parsed tasks completed using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_DATASET_INFO_TASKS_READY", "name": "List SERP Google Dataset Info Ready Tasks", "description": "Tool to retrieve completed SERP Google Dataset Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_DATASET_SEARCH_TASKS_FIXED", "name": "List Google Dataset Search Fixed Tasks", "description": "Tool to retrieve re-parsed Google Dataset Search SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_DATASET_SEARCH_TASKS_READY", "name": "List SERP Google Dataset Search Ready Tasks", "description": "Tool to retrieve completed SERP Google Dataset Search tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_EVENTS_TASKS_FIXED", "name": "List Google Events Fixed Tasks", "description": "Tool to retrieve re-parsed Google Events SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_EVENTS_TASKS_READY", "name": "List SERP Google Events Ready Tasks", "description": "Tool to retrieve completed SERP Google Events tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_FINANCE_EXPLORE_TASKS_READY", "name": "List SERP Google Finance Explore Ready Tasks", "description": "Tool to retrieve completed SERP Google Finance Explore tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_FINANCE_MARKETS_TASKS_READY", "name": "List SERP Google Finance Markets Ready Tasks", "description": "Tool to retrieve completed SERP Google Finance Markets tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_FINANCE_QUOTE_TASKS_READY", "name": "List SERP Google Finance Quote Ready Tasks", "description": "Tool to retrieve completed SERP Google Finance Quote tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_IMAGES_TASKS_FIXED", "name": "List Google Images Fixed Tasks", "description": "Tool to retrieve re-parsed Google Images SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_IMAGES_TASKS_READY", "name": "List SERP Google Images Ready Tasks", "description": "Tool to retrieve completed SERP Google Images tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_JOBS_TASKS_FIXED", "name": "List Google Jobs Fixed Tasks", "description": "Tool to retrieve re-parsed Google Jobs SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_JOBS_TASKS_READY", "name": "List SERP Google Jobs Ready Tasks", "description": "Tool to retrieve completed SERP Google Jobs tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_LANGUAGES", "name": "List SERP Google Languages", "description": "Tool to list available languages for DataForSEO Google SERP API. Use when you need to see which languages are supported for Google SERP queries." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_LOCAL_FINDER_TASKS_FIXED", "name": "List Google Local Finder Fixed Tasks", "description": "Tool to retrieve re-parsed Google Local Finder SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_LOCAL_FINDER_TASKS_READY", "name": "List Google Local Finder Ready Tasks", "description": "Tool to retrieve completed SERP Google Local Finder tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_MAPS_TASKS_FIXED", "name": "List Google Maps Fixed Tasks", "description": "Tool to retrieve re-parsed Google Maps SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_MAPS_TASKS_READY", "name": "List SERP Google Maps Ready Tasks", "description": "Tool to retrieve completed SERP Google Maps tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_NEWS_TASKS_FIXED", "name": "List Google News Fixed Tasks", "description": "Tool to retrieve re-parsed Google News SERP tasks that haven't been collected yet. Use when you need to get a list of task IDs for re-parsed tasks completed using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_NEWS_TASKS_READY", "name": "List SERP Google News Ready Tasks", "description": "Tool to retrieve completed SERP Google News tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ORGANIC_TASKS_FIXED", "name": "List Google Organic Fixed Tasks", "description": "Tool to retrieve re-parsed Google Organic SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_ORGANIC_TASKS_READY", "name": "List SERP Google Organic Ready Tasks", "description": "Tool to retrieve completed SERP Google Organic tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_SEARCH_BY_IMAGE_TASKS_FIXED", "name": "List Google Search By Image Fixed Tasks", "description": "Tool to retrieve re-parsed Google Search by Image SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_GOOGLE_SEARCH_BY_IMAGE_TASKS_READY", "name": "List SERP Google Search By Image Ready Tasks", "description": "Tool to retrieve completed SERP Google Search By Image tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_ID_LIST", "name": "List SERP Task IDs", "description": "Tool to retrieve a list of SERP task IDs within a specified time period. Use when you need to get task IDs and metadata for all SERP tasks (both successful and uncompleted) created between two dates. Limited to 1000 task IDs per call." }, { "slug": "DATAFORSEO_LIST_SERP_NAVER_ORGANIC_TASKS_FIXED", "name": "List Naver Organic Fixed Tasks", "description": "Tool to retrieve re-parsed Naver organic SERP tasks that haven't been collected yet. Use when you need to get a list of task IDs for re-parsed tasks completed using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_NAVER_ORGANIC_TASKS_READY", "name": "List SERP Naver Organic Ready Tasks", "description": "Tool to retrieve completed SERP Naver Organic tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_SEZNAM_LANGUAGES", "name": "List Serp Seznam Languages", "description": "Tool to list available languages for DataForSEO Seznam SERP API. Use when you need to see which languages are supported for Seznam search engine results page queries." }, { "slug": "DATAFORSEO_LIST_SERP_SEZNAM_ORGANIC_TASKS_FIXED", "name": "List Seznam Organic Fixed Tasks", "description": "Tool to retrieve re-parsed Seznam organic SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_SEZNAM_ORGANIC_TASKS_READY", "name": "List Seznam Organic SERP Ready Tasks", "description": "Tool to retrieve completed Seznam Organic SERP tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_TASKS_READY", "name": "List SERP Ready Tasks", "description": "Tool to retrieve completed SERP tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_SERP_YAHOO_LANGUAGES", "name": "List SERP Yahoo Languages", "description": "Tool to list available languages for DataForSEO Yahoo SERP API. Use when you need to see which languages are supported for Yahoo SERP queries." }, { "slug": "DATAFORSEO_LIST_SERP_YAHOO_ORGANIC_TASKS_FIXED", "name": "List Yahoo Organic Fixed Tasks", "description": "Tool to retrieve re-parsed Yahoo organic SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_YAHOO_ORGANIC_TASKS_READY", "name": "List Yahoo Organic SERP Ready Tasks", "description": "Tool to retrieve completed Yahoo Organic SERP tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_LANGUAGES", "name": "List SERP YouTube Languages", "description": "Tool to list available languages for DataForSEO YouTube SERP API. Use when you need to see which languages are supported for YouTube SERP queries." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_ORGANIC_TASKS_READY", "name": "List YouTube Organic Ready Tasks", "description": "Tool to retrieve completed YouTube Organic SERP tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_COMMENTS_TASKS_FIXED", "name": "List YouTube Video Comments Fixed Tasks", "description": "Tool to retrieve re-parsed YouTube Video Comments SERP tasks that haven't been collected yet. Use when you need to get a list of task IDs for re-parsed tasks completed using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_COMMENTS_TASKS_READY", "name": "List YouTube Video Comments Ready Tasks", "description": "Tool to retrieve completed YouTube video comments SERP tasks that are ready for collection. Use when you need to get task IDs for YouTube video comments tasks that have completed but haven't been collected yet using the Standard method without postback_url. Returns up to 1000 completed tasks from the previous three days." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_INFO_TASKS_FIXED", "name": "List YouTube Video Info Fixed Tasks", "description": "Tool to retrieve re-parsed YouTube Video Info SERP tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_INFO_TASKS_READY", "name": "List SERP YouTube Video Info Ready Tasks", "description": "Tool to retrieve completed SERP YouTube Video Info tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_SUBTITLES_TASKS_FIXED", "name": "List SERP YouTube Video Subtitles Fixed Tasks", "description": "Tool to retrieve re-parsed SERP YouTube Video Subtitles tasks that haven't been collected yet. Use when you need to get task IDs for completed re-parsed tasks using the Standard method without postback_url, then collect the fixed results using the Task GET endpoint." }, { "slug": "DATAFORSEO_LIST_SERP_YOUTUBE_VIDEO_SUBTITLES_TASKS_READY", "name": "List SERP YouTube Video Subtitles Ready Tasks", "description": "Tool to retrieve completed SERP YouTube Video Subtitles tasks that are ready for collection. Use when you need to get a list of task IDs for tasks that have completed but haven't been collected yet using the Standard method without postback_url." }, { "slug": "DATAFORSEO_POST_DATAFORSEO_LABS_BULK_KEYWORD_DIFFICULTY_LIVE", "name": "Get Bulk Keyword Difficulty Live", "description": "Tool to retrieve bulk keyword difficulty scores from DataForSEO Labs. Returns difficulty scores (0-100) for up to 1000 keywords based on top-10 SERP link profile analysis. Use when you need to assess keyword competitiveness at scale for SEO planning." }, { "slug": "DATAFORSEO_POST_KEYWORDS_DATA_BING_SEARCH_VOLUME_TASK", "name": "Create Bing Search Volume Task", "description": "Tool to create a Bing Search Volume task for keyword analysis. Provides search volume data for the last month, search volume trends for up to 24 past months, current cost-per-click, and competition values. Use when you need to analyze keyword search volume and metrics for Bing search." }, { "slug": "DATAFORSEO_POST_KEYWORDS_DATA_GOOGLE_SEARCH_VOLUME_TASK", "name": "Post Keywords Data Google Search Volume Task", "description": "Tool to submit a Google search volume task for specified keywords. Use when you need to get search volume data for keywords. Returns a task ID that can be used to retrieve results asynchronously." }, { "slug": "DATAFORSEO_POST_KW_GOOGLE_KW_FOR_CATEGORY_TASK", "name": "Create Google Keywords For Category Task", "description": "Tool to create a Google Keywords For Category task to retrieve keyword suggestions for a specific product/service category. Returns a task ID which can be used to fetch up to 700 keywords with search volume, CPC, competition metrics, and historical trends. Use when you need category-based keyword research for SEO or PPC planning." }, { "slug": "DATAFORSEO_POST_ON_PAGE_SUMMARY", "name": "Post On Page Summary", "description": "Tool to retrieve On Page Summary information for multiple scanned websites via POST request. Use when you need to get overall website statistics and drill down into on-page SEO issues for one or more task IDs in a single request." }, { "slug": "DATAFORSEO_RESEND_APPENDIX_WEBHOOKS", "name": "Resend Appendix Webhooks", "description": "Tool to resend webhooks (pingbacks and postbacks) for completed tasks. Use when you need to re-trigger webhook notifications for up to 100 tasks. Your account will not be double-charged for resending webhooks." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "dataforseo_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Login", "type": "string", "description": "Your DataForSEO API login — the email you registered with (e.g. you@company.com). Find it in your dashboard under API Access (app.dataforseo.com/api-access).", "required": true, "default": null }, { "name": "password", "displayName": "API Password", "type": "string", "description": "Your auto-generated DataForSEO API password — not the password you log in with. Copy it from your dashboard under API Access (app.dataforseo.com/api-access).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "datascope", "name": "Datascope", "logo": "https://logos.composio.dev/api/datascope", "description": "DataScope is the ideal tool to get rid of paperwork, save time and collect data efficiently from the field. The platform allows your team to answer personalized mobile forms (even offline), from their phones or tablets.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DATASCOPE_CHANGE_FORM_ANSWER", "name": "Change Form Answer", "description": "Tool to change a specific answer in a submitted form. Use when you need to modify question values after a form has been submitted." }, { "slug": "DATASCOPE_CREATE_LIST", "name": "Create List", "description": "Tool to create a new empty list (metadata type) in DataScope with specified list_type. Use when you need to create a container for list elements like products, locations, or other categorized items." }, { "slug": "DATASCOPE_CREATE_LIST_ELEMENT", "name": "Create List Element", "description": "Tool to create a new list element in a specific metadata list identified by metadata_type. Use when you need to add a new element to a list. For location objects, use the locations API instead." }, { "slug": "DATASCOPE_CREATE_LOCATION", "name": "Create Location", "description": "Tool to create a new location in DataScope with geographic coordinates. Use when you need to register a physical location with name and code identifiers." }, { "slug": "DATASCOPE_CREATE_TASK_ASSIGN", "name": "Create Task Assignment", "description": "Tool to create a task assignment for a specific form, user, and location with a deadline. Use when you need to assign a form to be completed by a specific user at a specific location and time." }, { "slug": "DATASCOPE_GET_ALL_LIST_ELEMENTS", "name": "Get all list elements", "description": "Tool to retrieve all items from a specific metadata list in Datascope. Use when you need to fetch all elements belonging to a particular list type (products, locations, customers, etc.)." }, { "slug": "DATASCOPE_GET_ALL_LOCATIONS", "name": "Get All Locations", "description": "Tool to retrieve all locations configured in the DataScope system. Use when you need to access location data including addresses, coordinates, and company associations." }, { "slug": "DATASCOPE_GET_ANSWERS_V4", "name": "Get Answers V4", "description": "Tool to retrieve form answers using the v4 API endpoint. Use when you need to fetch form submissions from DataScope with the latest API version. Supports filtering by user, date range, location, and pagination for retrieving large result sets." }, { "slug": "DATASCOPE_GET_ANSWERS_WITH_FULL_METADATA", "name": "Get Answers With Full Metadata", "description": "Tool to retrieve last form answers with full metadata from DataScope (limit 600 results). Returns detailed response structure including answers array with question types, metadata references, and assignment information. Use when you need comprehensive answer data with question-level details and metadata associations." }, { "slug": "DATASCOPE_GET_FORM_SCHEMA", "name": "Get Form Schema", "description": "Tool to retrieve the schema definition for a specific form by its form ID. Use when you need to understand the structure of a form including all questions, field types, and configurations." }, { "slug": "DATASCOPE_GET_FORMS_LIST", "name": "Get Forms List", "description": "Tool to retrieve all available forms/tasks from the DataScope system. Use when you need to get a list of forms that can be assigned or filled out." }, { "slug": "DATASCOPE_GET_LAST_TICKETS", "name": "Get Last Tickets", "description": "Tool to retrieve the last 5 tickets (findings) from the DataScope system. Use when you need to view recent tickets or findings." }, { "slug": "DATASCOPE_GET_LIST_ELEMENT", "name": "Get List Element", "description": "Tool to retrieve a specific element from a metadata list by type and ID. Use when you need to fetch detailed information about a specific list element such as locations, products, or other metadata objects." }, { "slug": "DATASCOPE_GET_TICKET_TYPES", "name": "Get Ticket Types", "description": "Tool to retrieve available ticket types (findings types) from the DataScope system. Use when you need to access the list of ticket type configurations." }, { "slug": "DATASCOPE_LIST_LAST_GENERATED_FILES", "name": "List Last Generated Files", "description": "Tool to retrieve all generated files (PDFs, Excel) from a specific date range. Use when you need to access recently generated files within the last 90 days. Date format is MM/DD/YYYY." }, { "slug": "DATASCOPE_LIST_NOTIFICATIONS", "name": "List Notifications", "description": "Tool to retrieve all notifications (PDF and Excel files) from a date range. Use when you need to access notification details including type, URL, form information, and timestamps." }, { "slug": "DATASCOPE_UPDATE_BULK_LIST_ELEMENTS", "name": "Bulk update list elements", "description": "Tool to bulk update metadata list objects with soft deletion of objects not in the incoming list. Use when you need to replace all objects in a metadata list. WARNING: This operation deletes all existing objects for the specified metadata_type and replaces them with new objects. Experimental endpoint." }, { "slug": "DATASCOPE_UPDATE_LIST_ELEMENT", "name": "Update List Element", "description": "Tool to update an existing list element by ID with new name, description, code, or attributes. Use when you need to modify properties of a specific metadata object in DataScope." }, { "slug": "DATASCOPE_UPDATE_LOCATION", "name": "Update Location", "description": "Tool to update an existing location in DataScope by ID. Use when you need to modify location details such as name, address, coordinates, or company information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "datascope_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "In order to connect DataScope using the API, go to the Integrations screen in the developer portal, then choose the API Key tab to generate or retrieve your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "daytona", "name": "Daytona", "logo": "https://logos.composio.dev/api/daytona", "description": "Daytona is a development environment management platform that provides cloud-based development workspaces with API access for automation", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 114, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DAYTONA_ARCHIVE_SANDBOX", "name": "Archive Sandbox", "description": "Archives a sandbox in the Daytona platform. Use this action when you need to archive a sandbox that is no longer needed but should be preserved for future reference. The sandbox will be marked as archived and its state will change to reflect the archival status. Note: Archiving a sandbox does not delete it immediately. The sandbox can potentially be restored or recovered from an archived state depending on the platform configuration." }, { "slug": "DAYTONA_CANCEL_ORGANIZATION_INVITATION", "name": "Cancel Organization Invitation", "description": "Cancels a pending organization invitation. Use when you need to revoke an invitation that has been sent but not yet accepted by the recipient. This action is irreversible — once an invitation is cancelled, it cannot be reactivated and the recipient will no longer be able to accept it. The cancelled invitation would need to be re-sent as a new invitation if access is still desired." }, { "slug": "DAYTONA_CHECKOUT_GIT", "name": "Checkout Git Branch", "description": "[DEPRECATED] Checkout a branch or commit in a git repository within a sandbox. Use this action when you need to switch branches or checkout a specific commit in a git repository that exists within a sandbox toolbox. This operation modifies the working tree of the repository. Note: This endpoint is deprecated. Consider using alternative approaches for git operations if available. The sandbox must be in a running state for this operation to succeed." }, { "slug": "DAYTONA_CLONE_REPOSITORY", "name": "Clone Repository", "description": "Clones a Git repository into a sandbox toolbox. Use this action when you need to clone a public or private Git repository into a specific directory within a sandbox. Supports optional branch selection and commit checkout. This is commonly used to set up a development environment or fetch source code for further operations. Note: Credentials (username/password) should only be provided when the target repository requires authentication. The sandbox must be running to perform this operation." }, { "slug": "DAYTONA_CREATE_API_KEY", "name": "Create API Key", "description": "Creates a new API key for the organization. Use when you need to generate a new API key that can be used to authenticate API requests. The created API key value is only returned once in the response and cannot be retrieved again, so it must be stored securely. This action requires appropriate organization permissions." }, { "slug": "DAYTONA_CREATE_BACKUP", "name": "Create Sandbox Backup", "description": "Initiates a backup operation for an existing sandbox environment. Use this action when you need to create a point-in-time snapshot of a sandbox that can be used for restoration or cloning purposes. The backup operation is asynchronous and the status can be tracked via the backupState field in the response (Pending -> InProgress -> Completed or Error). Note: This action creates a backup resource. Ensure the sandbox is in a suitable state for backing up. Large sandboxes may take longer to complete the backup." }, { "slug": "DAYTONA_CREATE_FOLDER_FILES", "name": "Create Folder in Sandbox", "description": "Creates a new folder inside a sandbox's filesystem. Use this action when you need to create a directory within a running sandbox's filesystem. This is useful for organizing files, preparing directory structures, or setting up paths for subsequent file operations. Note: This endpoint is deprecated. Consider using alternative methods for folder creation if available." }, { "slug": "DAYTONA_CREATE_ORGANIZATION", "name": "Create Organization", "description": "Creates a new organization in Daytona. Use this action when you need to set up a new organization with a specific name and default region configuration. This action creates a top-level organization entity that can manage sandboxes, users, and resources within the specified region." }, { "slug": "DAYTONA_CREATE_ORGANIZATION_INVITATION", "name": "Create Organization Invitation", "description": "Creates an invitation to join an organization with specified roles and permissions. The invitation will be sent to the provided email address. Use this action when you need to invite a new member to an organization with specific role assignments. The invitation email will include a link to accept the invitation." }, { "slug": "DAYTONA_CREATE_ORGANIZATION_ROLE", "name": "Create Organization Role", "description": "Creates a new organization role with specified permissions. Use this action when you need to define custom roles for organization members, allowing fine-grained control over what resources they can access and what operations they can perform. Common use cases include creating roles like \"Developer\" (with sandbox write access), \"Viewer\" (read-only access), or \"Admin\" (full access to all resources)." }, { "slug": "DAYTONA_CREATE_PROCESS_SESSION", "name": "Create Process Session", "description": "Creates a new session in the sandbox for process management. Use this action when you need to establish a new process session within a running sandbox environment. This enables managing process execution and state within the Daytona platform. The session can be used to track and manage process-related operations. Note: This endpoint is deprecated. Consider using alternative methods for process session management if available. The sandbox must be in a running state for this operation to succeed." }, { "slug": "DAYTONA_CREATE_PTY_SESSION", "name": "Create PTY Session", "description": "Creates a new PTY (pseudo-terminal) session in a sandbox. Use this action when you need to establish an interactive terminal session within a running sandbox environment. This enables real-time command execution and terminal interaction through the Daytona platform. The session can be configured with specific terminal dimensions (cols/rows), working directory, and environment variables. Note: This endpoint is deprecated. The sandbox must be in a running state for this operation to succeed. Consider alternative methods for terminal sessions if available." }, { "slug": "DAYTONA_CREATE_REGISTRY", "name": "Create Docker Registry", "description": "Creates a new Docker registry for the organization. Use when you need to register a new container registry (such as Docker Hub, GCR, ECR, or other Docker registries) so that Daytona can pull images from it. The registry credentials are stored securely and used for pulling images when creating sandboxes. Ensure the provided credentials have appropriate permissions (typically read access to the registry)." }, { "slug": "DAYTONA_CREATE_SANDBOX", "name": "Create Sandbox", "description": "Creates a new sandbox environment for development or testing purposes. Use this action when you need to provision a new isolated environment with configurable compute resources (CPU, memory, GPU), networking options, and storage volumes. The sandbox can be customized with environment variables, labels, and automatic lifecycle management settings. Note: This action creates a new resource. Ensure you have the appropriate permissions in your organization before creating sandboxes." }, { "slug": "DAYTONA_CREATE_SNAPSHOT", "name": "Create Snapshot", "description": "Creates a new snapshot resource that can be used as a base image for sandboxes. Use this action when you need to create a new snapshot with specific compute resources (CPU, memory, GPU, disk) and a container image. Snapshots define the base configuration that sandboxes will inherit when created from them. The snapshot can be built from a Dockerfile using the buildInfo parameter, or use an existing image via the imageName parameter. Note: Snapshots with tags like \":latest\" are not allowed. Ensure the name parameter is unique within your organization." }, { "slug": "DAYTONA_CREATE_SSH_ACCESS", "name": "Create SSH Access", "description": "Creates SSH access credentials for a sandbox environment. Use this action when you need to establish an SSH connection to a sandbox for administrative tasks, file transfers, or development operations. The returned credentials include a token and SSH command that can be used to connect to the sandbox securely. Note: SSH access tokens have a limited validity period. By default, they expire after 60 minutes. Use the expiresInMinutes parameter to customize the expiration time if needed." }, { "slug": "DAYTONA_CREATE_VOLUME", "name": "Create Volume", "description": "Creates a new volume for storing data that can be attached to sandboxes. Use this action when you need to provision persistent storage for your sandbox environments. Volumes persist data across sandbox restarts and can be mounted to sandboxes to provide additional storage capacity. Note: This action creates a new storage resource. Ensure you have the appropriate permissions in your organization before creating volumes." }, { "slug": "DAYTONA_DEACTIVATE_SNAPSHOT", "name": "Deactivate Snapshot", "description": "Deactivates a snapshot in the Daytona platform. Use this action when you need to deactivate a snapshot that is currently active. This will stop the snapshot from being used for new sandbox creations. Note: Deactivating a snapshot does not delete it. The snapshot data remains accessible but the snapshot is marked as inactive." }, { "slug": "DAYTONA_DELETE_API_KEY", "name": "Delete API Key", "description": "Deletes an API key by its name. Use when you need to revoke access for an API key that is no longer needed or has been compromised. This action is irreversible — once an API key is deleted, it cannot be recovered and any systems using that key will immediately lose access." }, { "slug": "DAYTONA_DELETE_API_KEY_USER", "name": "Delete API Key for User", "description": "Deletes an API key for a specific user. Use when you need to remove an existing API key associated with a user account, such as when cleaning up unused credentials or revoking access. This action is irreversible — once the API key is deleted, it cannot be recovered and any systems relying on that key will lose access." }, { "slug": "DAYTONA_DELETE_FILES", "name": "Delete Sandbox File", "description": "Deletes a file inside a sandbox by its path. Use when you need to permanently remove a file from a sandbox that is no longer needed. This action is irreversible — once a file is deleted, it cannot be recovered. Ensure the file is not needed before proceeding with deletion. Note: This action uses a deprecated API endpoint. Consider migrating to an alternative method for file management when available." }, { "slug": "DAYTONA_DELETE_GIT_BRANCH", "name": "Delete Git Branch", "description": "Deletes a branch from a git repository inside a sandbox by its name. Use when you need to permanently remove a git branch that is no longer needed. This action is irreversible — once a branch is deleted, it cannot be recovered unless it has been pushed to a remote. Ensure the branch has been properly merged or is no longer needed before proceeding. Note: This action uses a deprecated API endpoint. The API documentation marks this endpoint as [DEPRECATED]. Consider using alternative methods for git branch management when available." }, { "slug": "DAYTONA_DELETE_ORGANIZATION", "name": "Delete Organization", "description": "Deletes an organization. Use when you need to permanently remove an organization from the system, including all associated data, members, and resources. This action is irreversible — once an organization is deleted, it cannot be recovered. All organization data, including workspaces, sandboxes, and member information, will be permanently lost. Ensure you have appropriate backups or have migrated necessary data before proceeding." }, { "slug": "DAYTONA_DELETE_ORGANIZATION_OTEL_CONFIG", "name": "Delete Organization OTEL Config", "description": "Deletes the OpenTelemetry (OTEL) configuration for an organization. Use this action when you need to remove the OpenTelemetry settings that were previously configured for an organization's observability and tracing capabilities. This action is irreversible — once the OpenTelemetry configuration is deleted, the organization will no longer have OTEL tracing enabled and any previously collected telemetry data will no longer be accessible through the configured OTEL endpoint. A new configuration would need to be created to re-enable OpenTelemetry observability." }, { "slug": "DAYTONA_DELETE_ORGANIZATION_ROLE", "name": "Delete Organization Role", "description": "Deletes an organization role. Use when you need to permanently remove a role from an organization, such as cleaning up unused custom roles or removing roles that are no longer needed. This action is irreversible — once a role is deleted, it cannot be recovered. Users who were assigned this role will lose the associated permissions and access. Ensure no active users or resources depend on this role before proceeding." }, { "slug": "DAYTONA_DELETE_PTY_SESSION", "name": "Delete PTY Session", "description": "Deletes a PTY session and terminates the associated process. Use this action when you need to clean up an active PTY session that is no longer needed. This will terminate any process running in that session and release the associated resources. Note: This endpoint is deprecated. Consider using alternative methods for managing PTY sessions in new implementations. This action is irreversible — once the PTY session is deleted and the process is terminated, they cannot be recovered." }, { "slug": "DAYTONA_DELETE_RECORDING", "name": "Delete Recording", "description": "Deletes a recording from the Daytona platform by its ID. Use when you need to permanently remove a recording that is no longer needed. This action is irreversible — once a recording is deleted, it cannot be recovered. Any data associated with the recording will be permanently lost." }, { "slug": "DAYTONA_DELETE_REGISTRY", "name": "Delete Docker Registry", "description": "Deletes a Docker registry from the Daytona platform. Use when you need to remove an existing Docker registry configuration. This is an irreversible operation — once a registry is deleted, it cannot be recovered and any references to it in workspaces may fail until reconfigured." }, { "slug": "DAYTONA_DELETE_SANDBOX", "name": "Delete Sandbox", "description": "Deletes a sandbox from the Daytona platform by its ID or name. Use when you need to permanently remove a sandbox that is no longer needed. This action is irreversible — once a sandbox is deleted, it cannot be recovered. Any data, processes, or configurations within the sandbox will be permanently lost. Ensure all important work has been saved or backed up before proceeding." }, { "slug": "DAYTONA_DELETE_SESSION", "name": "Delete Session", "description": "Deletes a session from the Daytona platform by its ID. Use when you need to permanently remove a session that is no longer needed. This action is irreversible — once a session is deleted, it cannot be recovered. Any ongoing processes or data associated with the session will be permanently lost." }, { "slug": "DAYTONA_DELETE_SNAPSHOT", "name": "Delete Snapshot", "description": "Deletes a snapshot from the Daytona platform by its ID. Use when you need to permanently remove a snapshot that is no longer needed. This action is irreversible — once a snapshot is deleted, it cannot be recovered. Any data stored in the snapshot will be permanently lost." }, { "slug": "DAYTONA_DELETE_VOLUME", "name": "Delete Volume", "description": "Deletes a volume from the Daytona platform by its ID. Use when you need to permanently remove a volume that is no longer needed. This action is irreversible — once a volume is deleted, it cannot be recovered. Ensure all important data has been backed up before proceeding. Note: A volume cannot be deleted if it is in use by one or more sandboxes." }, { "slug": "DAYTONA_DOWNLOAD_FILE_DEPRECATED", "name": "Download File (Deprecated)", "description": "[DEPRECATED] Downloads a file from a sandbox's toolbox filesystem. Use this action when you need to retrieve a file from the sandbox's toolbox. Note: This endpoint is deprecated. Consider using an alternative if available. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_DOWNLOAD_FILES", "name": "Download Multiple Files", "description": "Downloads multiple files from a sandbox as a multipart/form-data bundle. Use this action when you need to retrieve multiple files from a sandbox in a single operation. The files are returned as a streamed multipart response where each file is a separate part. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_ENROLL_IN_SMS_MFA", "name": "Enroll in SMS MFA", "description": "Enrolls the authenticated user in SMS-based multi-factor authentication. Use when you need to enable SMS-based MFA for the authenticated user account. This action initiates the enrollment process and returns a URL where the user can complete the MFA setup by providing their phone number. Note: After enrollment, the user must complete the verification process by visiting the returned URL and entering the verification code sent to their phone." }, { "slug": "DAYTONA_EXECUTE_COMMAND", "name": "Execute Command", "description": "Executes a shell command within a running sandbox via the toolbox proxy. Use this action when you need to run shell commands, scripts, or any executable commands inside a sandbox environment. This is useful for automation tasks, running build commands, executing scripts, or performing system operations within the sandbox. The sandbox must be in a running state for this action to succeed. Command execution is synchronous and will wait for completion up to the specified timeout (default 10 seconds)." }, { "slug": "DAYTONA_EXPIRE_SIGNED_PORT_PREVIEW_URL", "name": "Expire Signed Port Preview URL", "description": "Expires a signed preview URL for a sandbox port. Use this action when you need to immediately invalidate a signed preview URL for a specific port on a sandbox, revoking access for anyone holding the token. This action is useful for security purposes when you need to quickly revoke access to a previously shared preview URL. This action is irreversible — once the signed preview URL is expired, the token will no longer provide access to the sandbox port, and a new signed preview URL must be generated if access is needed again." }, { "slug": "DAYTONA_FIND_IN_FILES_DEPRECATED", "name": "Find In Files (Deprecated)", "description": "[DEPRECATED] Searches for text or patterns in files within a sandbox. Use this action when you need to find occurrences of a specific text or pattern across files in a sandbox. This is useful for code search, debugging, or locating specific content within the sandbox file system. This is a read-only operation. NOTE: This action is deprecated and may be removed in future versions. Consider using alternative search mechanisms if available." }, { "slug": "DAYTONA_FOCUS_ACCESSIBILITY_NODE", "name": "Focus Accessibility Node", "description": "Focuses an accessibility node in a sandbox's computer use system. Use this action when you need to programmatically set focus to a specific accessibility node within a sandbox's desktop environment. This is particularly useful for UI automation workflows where you need to ensure a specific element has focus before performing keyboard or mouse actions on it. Note: The sandbox must have computer use enabled for this action to work. This action is idempotent — focusing the same node multiple times will have the same effect." }, { "slug": "DAYTONA_GET_API_KEY", "name": "Get API Key", "description": "Retrieves an API key by its name. Use when you need to retrieve details about a specific API key, including its creation date, expiration, permissions, and usage statistics. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_AVAILABLE_ACCOUNT_PROVIDERS", "name": "Get Available Account Providers", "description": "Retrieves all available account providers that can be used to authenticate and link accounts. Use when you need to discover which account providers (such as GitHub, GitLab, Google) are available for linking to the user's account. This is a read-only operation that does not modify any resources. Note: The list includes both the provider name (machine-readable) and displayName (human-readable) for each provider." }, { "slug": "DAYTONA_GET_BUILD_LOGS_URL", "name": "Get Build Logs URL", "description": "Retrieves the build logs URL for a specific sandbox by its ID or name. Use this action when you need to access build logs for a sandbox, such as during troubleshooting build failures, monitoring build progress, or retrieving historical build information. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_COMMIT_HISTORY", "name": "Get Commit History", "description": "Gets commit history from a repository in a sandbox toolbox. Use this action when you need to retrieve the commit history including: - Commit hash - Author name and email - Commit message - Timestamp This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_COMPUTER_USE_STATUS", "name": "Get Computer Use Status", "description": "Retrieves the status of all VNC desktop processes in a sandbox. Use this action when you need to check the current state of all VNC desktop processes running within a sandbox. The status can indicate whether services are fully operational (active), partially running (partial), not running (inactive), or experiencing errors (error). This is useful for monitoring the health of computer use services and troubleshooting connectivity issues. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for checking computer use status in new implementations." }, { "slug": "DAYTONA_GET_CONFIG", "name": "Get Daytona Config", "description": "Retrieves the Daytona platform configuration including URLs, OIDC settings, analytics, rate limits, and other platform-level settings. Use this action when you need to fetch the current Daytona configuration settings, such as the dashboard URL, proxy settings, SSH gateway configuration, analytics endpoints, or to check if maintenance mode is enabled. This is a read-only operation that returns the platform configuration." }, { "slug": "DAYTONA_GET_DISPLAY_INFO", "name": "Get Display Info", "description": "Retrieves information about displays connected to a sandbox. Use this action when you need to get information about all displays connected to a sandbox, including their dimensions, positions, and active status. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for retrieving display information in new implementations." }, { "slug": "DAYTONA_GET_ENTRYPOINT_LOGS", "name": "Get Entrypoint Logs", "description": "Retrieves entrypoint logs for a sandbox session. Use this action when you need to fetch the stdout, stderr, and combined output logs from an entrypoint process running within a sandbox. This is useful for debugging process initialization, monitoring entrypoint execution, or retrieving historical entrypoint log information. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_FILE_INFO", "name": "Get File Info (Deprecated)", "description": "[DEPRECATED] Gets file info inside a sandbox toolbox. Use this action when you need to retrieve detailed information about a specific file or directory within a sandbox toolbox, including its size, permissions, ownership, and modification timestamps. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for file operations in newer integrations." }, { "slug": "DAYTONA_GET_GIT_HISTORY_DEPRECATED", "name": "Get Git History (Deprecated)", "description": "[DEPRECATED] Get commit history from a git repository in a sandbox toolbox. Use this action when you need to retrieve the commit history of a git repository within a sandbox toolbox. This is a read-only operation that retrieves the commit log without modifying any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for git operations in newer integrations." }, { "slug": "DAYTONA_GET_HAS_SANDBOX_ACCESS", "name": "Check Sandbox Access", "description": "Checks if the authenticated user has access to a specific sandbox. Use this action when you need to verify whether the current user has permission to access a particular sandbox before performing further operations on it. This is a read-only operation that does not modify any sandbox data." }, { "slug": "DAYTONA_GET_HEALTH", "name": "Get Daytona Health Status", "description": "Retrieves the current health status of the Daytona service. Use when you need to verify that the Daytona API is running and accessible. This action is read-only and does not modify any data. This action is useful for monitoring, debugging connection issues, or confirming API availability before performing other operations." }, { "slug": "DAYTONA_GET_ORGANIZATION", "name": "Get Organization", "description": "Retrieves detailed information about an organization by its unique identifier. Use when you need to fetch organization settings, rate limits, sandbox configurations, suspension status, OpenTelemetry settings, and other organization-level details. This is a read-only operation that returns the current organization state." }, { "slug": "DAYTONA_GET_ORGANIZATION_AUDIT_LOGS", "name": "Get Organization Audit Logs", "description": "Retrieves audit logs for an organization. Use when you need to track user activities, monitor security events, investigate incidents, or meet compliance requirements. This action supports both page-based and cursor-based pagination. For fetching subsequent pages, use the nextToken from the previous response. Date range filtering can narrow results to specific time periods." }, { "slug": "DAYTONA_GET_ORGANIZATION_INVITATIONS_COUNT_USER", "name": "Get Organization Invitations Count", "description": "Retrieves the count of organization invitations for the authenticated user. Use this action when you need to check how many organization invitations are pending for the currently authenticated user. This is a read-only operation that does not modify any data. The count includes all pending invitations across all organizations the user has been invited to." }, { "slug": "DAYTONA_GET_ORGANIZATION_USAGE_OVERVIEW", "name": "Get Organization Usage Overview", "description": "Retrieves the current usage overview for an organization, including CPU, memory, disk, snapshot, and volume usage metrics across all regions. Use this action when you need to check an organization's current resource usage, such as monitoring quota consumption, planning capacity, or auditing resource utilization. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_PROCESS_STATUS", "name": "Get Process Status", "description": "Retrieves the status of a specific VNC process in a sandbox. Use this action when you need to check if a particular VNC process (such as xfce4) is currently running within a sandbox. This is useful for monitoring process availability, verifying desktop environment readiness, or determining if a process needs to be started. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for checking process status in new implementations." }, { "slug": "DAYTONA_GET_PROJECT_DIR_DEPRECATED", "name": "Get Project Dir (Deprecated)", "description": "[DEPRECATED] Gets the project directory path within a sandbox toolbox. Use this action when you need to retrieve the project directory path for a specific sandbox toolbox. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for determining the project directory in newer integrations." }, { "slug": "DAYTONA_GET_PTY_SESSION", "name": "Get PTY Session", "description": "Retrieves information about a PTY (pseudo-terminal) session in a sandbox. Use this action when you need to fetch details about a specific PTY session within a sandbox, including its configuration (terminal dimensions, working directory, environment variables), creation timestamp, and active status. This is useful for monitoring PTY session state, checking if a session is still active, or retrieving session configuration details. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for managing PTY sessions in new implementations." }, { "slug": "DAYTONA_GET_PUSH_ACCESS", "name": "Get Push Access", "description": "Retrieves temporary storage access credentials for pushing objects to object storage. Use this action when you need to upload or push objects to the Daytona object storage service. The returned credentials (access key, secret, session token, storage URL, and bucket name) are temporary and should be used immediately for the push operation. This is a read-only operation that does not modify any stored objects. Note: The returned credentials have a limited validity period. Use them promptly after retrieval for any object storage operations." }, { "slug": "DAYTONA_GET_REGISTRY", "name": "Get Docker Registry", "description": "Retrieves details of a specific Docker registry by its unique identifier. Use this action when you need to fetch information about a particular Docker registry, including its URL, credentials, project association, and type. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_SANDBOX", "name": "Get Sandbox", "description": "Retrieves details of a specific sandbox by its ID or name. Use this action when you need to fetch detailed information about a particular sandbox, including its configuration, state, resource quotas, labels, environment variables, volumes, and other metadata. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_SESSION_COMMAND_LOGS", "name": "Get Session Command Logs", "description": "Retrieves logs for a specific command executed within a session. Use this action when you need to fetch the log output of a command that was executed in a sandbox session. The endpoint returns the combined stdout/stderr as plain text. This is useful for debugging command execution failures, reviewing command output, monitoring command performance, or retrieving historical command execution results. This is a read-only operation that does not modify any resources. Note: The follow parameter enables WebSocket-based real-time log streaming." }, { "slug": "DAYTONA_GET_SESSION_DEPRECATED", "name": "Get Session (Deprecated)", "description": "[DEPRECATED] Retrieves details of a specific session in a sandbox toolbox. Use this action when you need to fetch information about a particular session, including its ID and the commands that have been executed within it. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for session management in newer integrations." }, { "slug": "DAYTONA_GET_SNAPSHOT", "name": "Get Snapshot", "description": "Retrieves details of a specific snapshot by its ID or name. Use this action when you need to fetch detailed information about a particular snapshot, including its configuration, state, resource quotas, build information, and other metadata. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_SNAPSHOT_BUILD_LOGS", "name": "Get Snapshot Build Logs", "description": "Retrieves build logs for a specific snapshot. Use this action when you need to access build logs for a snapshot, such as during troubleshooting build failures, monitoring build progress, or retrieving historical build information. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_TOOLBOX_PROXY_URL", "name": "Get Toolbox Proxy URL", "description": "Retrieves the toolbox proxy URL for a sandbox by its ID or name. Use this action when you need to access the toolbox interface of a sandbox, enabling command execution and file management operations. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_TRANSIENT_PUSH_ACCESS", "name": "Get Transient Push Access", "description": "Retrieves temporary registry access credentials for pushing snapshots. Use this action when you need to obtain short-lived authentication credentials to push Docker images or snapshots to the Daytona registry. The credentials expire after a short time, so use them immediately after obtaining them. This action is idempotent - calling it generates a fresh set of temporary credentials." }, { "slug": "DAYTONA_GET_USER", "name": "Get Authenticated User", "description": "Retrieves the profile of the authenticated user. Use when you need to fetch details about the currently logged-in user, including their ID, email, name, creation date, and associated public keys. This action requires authentication and uses the bearer token provided in the request headers to identify the user. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_USER_HOME_DIR_DEPRECATED", "name": "Get User Home Dir (Deprecated)", "description": "[DEPRECATED] Gets the user home directory path for a sandbox. Use this action when you need to retrieve the home directory path for a user within a sandbox toolbox. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for sandbox operations in newer integrations." }, { "slug": "DAYTONA_GET_VOLUME", "name": "Get Volume", "description": "Retrieves details of a specific volume by its ID. Use this action when you need to fetch information about a particular volume, including its name, state, organization, creation timestamp, and last usage. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_WINDOWS", "name": "Get Windows", "description": "Retrieves information about all windows in a sandbox. Use this action when you need to get a list of all windows currently open in a sandbox desktop environment. The response includes each window's position, dimensions, title, and active status. This is useful for monitoring the desktop state, automating window interactions, or determining which application is currently in focus. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_GET_WORK_DIR", "name": "Get Working Directory", "description": "Gets the current working directory inside a sandbox toolbox. Use this action when you need to retrieve the current working directory path within a sandbox toolbox. This is a read-only operation that does not modify any resources. This is useful for determining the context for subsequent file operations or command execution within the sandbox." }, { "slug": "DAYTONA_GET_WORK_DIR_DEPRECATED", "name": "Get Work Dir (Deprecated)", "description": "[DEPRECATED] Retrieves the working directory path of a sandbox toolbox. Use this action when you need to determine the current working directory path within a sandbox toolbox environment. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for determining sandbox working directories in newer integrations." }, { "slug": "DAYTONA_LIST_API_KEYS", "name": "List API Keys", "description": "Lists all API keys for the organization. Use when you need to retrieve information about all available API keys, including their names, creation dates, expiration dates, and associated permissions. This is a read-only operation that does not modify any resources. Note: API key values are returned masked (e.g., \"bb_********************def\")." }, { "slug": "DAYTONA_LIST_AVAILABLE_REGIONS", "name": "List Available Regions", "description": "Lists all available regions for the organization. Use this action when you need to retrieve information about all available regions, including their IDs, names, types, and associated URLs (proxy, SSH gateway, snapshot manager). This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_FILES_DEPRECATED", "name": "List Files (Deprecated)", "description": "[DEPRECATED] Lists files and directories in a sandbox toolbox. Use this action when you need to retrieve the list of files and directories in a specific path within a sandbox toolbox. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for file listing in newer integrations." }, { "slug": "DAYTONA_LIST_GIT_BRANCHES", "name": "List Git Branches (Deprecated)", "description": "[DEPRECATED] Lists all git branches from a repository in a sandbox toolbox. Use this action when you need to retrieve the list of git branches from a repository within a sandbox toolbox. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for git operations in newer integrations." }, { "slug": "DAYTONA_LIST_ORGANIZATION_INVITATIONS", "name": "List Organization Invitations", "description": "Lists all pending organization invitations. Use this action when you need to retrieve all invitations for an organization, including pending, accepted, declined, or cancelled invitations. This is useful for managing organization membership and reviewing pending invitations. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_ORGANIZATION_INVITATIONS_USER", "name": "List Organization Invitations for User", "description": "Lists all organization invitations for the authenticated user. Use when you need to retrieve pending and past organization invitations that have been sent to or received by the current user, including their status, assigned roles, and expiration details. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_ORGANIZATION_MEMBERS", "name": "List organization members", "description": "Lists all members of a specific organization. Use when you need to retrieve information about all organization members, including their names, emails, roles, and assigned permissions. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_ORGANIZATION_ROLES", "name": "List organization roles", "description": "Lists all roles available in an organization. Use when you need to retrieve information about all organization roles, including their names, descriptions, permissions, and whether they are global roles. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Lists all organizations that the authenticated user has access to. Use this action when you need to retrieve a list of all organizations available to the authenticated user, including their settings, rate limits, and configuration. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_PROCESS_SESSION", "name": "List Process Sessions", "description": "Lists all active process sessions in a sandbox. Use this action when you need to retrieve information about all active process sessions running within a sandbox. This includes session IDs and command history for each session. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for retrieving process session information in new implementations." }, { "slug": "DAYTONA_LIST_PTY_SESSIONS", "name": "List PTY Sessions", "description": "Lists all active PTY sessions in a sandbox. Use this action when you need to retrieve information about all active pseudo-terminal (PTY) sessions running within a sandbox. This includes session identifiers, working directories, terminal dimensions, and environment variables. This is useful for monitoring active sessions, auditing terminal activity, or managing multiple concurrent terminal sessions. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. Consider using alternative methods for listing PTY sessions in new implementations." }, { "slug": "DAYTONA_LIST_REGISTRIES", "name": "List registries", "description": "Lists all docker registries available in the organization. Use when you need to retrieve information about all configured docker registries, including their IDs, names, URLs, authentication details, and types. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_SANDBOXES", "name": "List Sandboxes", "description": "Lists all sandboxes for the organization. Use this action when you need to retrieve information about all available sandboxes, including their configuration, state, labels, and resource quotas. This is a read-only operation that does not modify any resources. Optional filters can be applied to include verbose output, filter by specific labels, or include errored and deleted sandboxes in the results." }, { "slug": "DAYTONA_LIST_SANDBOXES_PAGINATED", "name": "List Sandboxes Paginated", "description": "Lists all sandboxes with pagination support. Use when you need to retrieve a paginated list of sandboxes for an organization, with optional filtering by name, labels, state, region, CPU/memory/disk specifications, and other attributes. Supports sorting by various fields and ordering results in ascending or descending order. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_SHARED_REGIONS", "name": "List shared regions", "description": "Tool to list all shared regions. Use when you need to retrieve information about all available shared regions, including their IDs, names, types, and associated URLs (proxy, SSH gateway, snapshot manager). This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_SNAPSHOTS", "name": "List Snapshots", "description": "Lists all snapshots for the organization. Use this action when you need to retrieve information about all available snapshots, including their configuration, state, resource allocations, and usage information. Supports filtering by partial name match and pagination for large result sets. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_LIST_VOLUMES", "name": "List Volumes", "description": "Lists all volumes in the organization. Use when you need to retrieve information about all available volumes, including their IDs, names, states, and associated organizations. This is a read-only operation that does not modify any resources. Optionally include deleted volumes by setting the includeDeleted parameter to true." }, { "slug": "DAYTONA_REPLACE_IN_FILES", "name": "Replace In Files", "description": "Replaces text or patterns in multiple files within a sandbox. Use this action when you need to perform find-and-replace operations across multiple files in a sandbox. For each file specified, the action searches for the given pattern and replaces it with the new value. This action modifies files within the sandbox, so use with caution as changes may be difficult to revert. Consider backing up files before performing bulk replacements." }, { "slug": "DAYTONA_REPLACE_SANDBOX_LABELS", "name": "Replace Sandbox Labels", "description": "Replaces all labels on a sandbox with a new set of key-value pairs. Use this action when you need to update or redefine the labels associated with an existing sandbox. This operation completely replaces any existing labels — the previous labels will be removed. Note: This action modifies the sandbox's labels in bulk. If you need to add or remove individual labels while preserving others, consider fetching the current labels first and constructing the complete new set." }, { "slug": "DAYTONA_RESIZE_PTY_SESSION", "name": "Resize PTY Session", "description": "Resizes an active PTY session with new terminal dimensions. Use this action when you need to change the column and row dimensions of an existing pseudo-terminal (PTY) session within a running sandbox. This is commonly used to adjust the terminal display size to match the current viewport or user preference. The session must be active for this operation to succeed. This action is idempotent - resizing to the same dimensions is safe and will not cause errors. Note: Ensure the PTY session is active before attempting to resize it. Resizing an inactive session may result in errors." }, { "slug": "DAYTONA_REVOKE_SSH_ACCESS", "name": "Revoke SSH Access", "description": "Revokes SSH access credentials for a sandbox environment. Use this action when you need to invalidate SSH access to a sandbox, either for a specific token or all SSH access. This is useful for security purposes when you need to immediately terminate SSH sessions or prevent further SSH connections to the sandbox. This action is irreversible — once SSH access is revoked, the tokens cannot be recovered. New SSH access must be created using the Create SSH Access action if needed." }, { "slug": "DAYTONA_SEARCH_FILES", "name": "Search Files", "description": "[DEPRECATED] Search for files inside a sandbox toolbox. Use this action when you need to find files matching a specific pattern within a sandbox toolbox. This is a read-only operation that does not modify any resources. Note: This endpoint is deprecated. It is recommended to use alternative approaches for file search in newer integrations." }, { "slug": "DAYTONA_SET_AUTO_ARCHIVE_INTERVAL", "name": "Set Sandbox Auto Archive Interval", "description": "Sets the auto-archive interval for a sandbox. Use this action when you need to configure how long a stopped sandbox should be retained before it is automatically archived. The interval specifies the time in minutes after the sandbox stops that the archiving process will begin. Setting interval to 0 uses the maximum interval value. This action modifies the sandbox lifecycle settings and may result in the sandbox being archived if it remains stopped beyond the configured interval." }, { "slug": "DAYTONA_SET_AUTO_DELETE_INTERVAL", "name": "Set Auto Delete Interval", "description": "Sets the auto-delete interval for a sandbox. Use this action when you need to configure automatic deletion of a sandbox after it is stopped. The interval specifies how many minutes after stopping the sandbox before it gets deleted. Use a negative value to disable auto-delete, or 0 to delete immediately upon stopping. This action modifies the sandbox lifecycle configuration and affects when the sandbox will be permanently removed after being stopped." }, { "slug": "DAYTONA_SET_AUTOSTOP_INTERVAL", "name": "Set Autostop Interval", "description": "Sets the auto-stop interval for a sandbox in the Daytona platform. Use this action when you need to configure how long a sandbox should run idle before automatically stopping. This helps manage resources and reduce costs by automatically stopping unused sandboxes. The interval is specified in minutes. Setting the interval to 0 disables auto-stop, allowing the sandbox to run indefinitely until manually stopped. The API returns the updated sandbox object with the new auto_stop_interval value." }, { "slug": "DAYTONA_START_COMPUTER_USE", "name": "Start Computer Use", "description": "Starts all VNC desktop processes (Xvfb, xfce4, x11vnc, novnc) for a sandbox. Use this action when you need to start all VNC desktop processes for a sandbox to enable remote desktop access. This action starts the X virtual framebuffer (Xvfb), Xfce desktop environment, x11vnc server, and noVNC web interface. Each process will have a status indicating whether it started successfully. Note: This endpoint is deprecated. Consider using alternative methods for starting computer use processes in new implementations." }, { "slug": "DAYTONA_START_LSP_SERVER", "name": "Start LSP Server", "description": "Starts an LSP server process inside a sandbox project. Use this action when you need to initialize an LSP (Language Server Protocol) server within a running sandbox. This enables intelligent code editing features such as auto-completion, error highlighting, and code navigation for the specified programming language and project path. Note: This endpoint is deprecated. Consider alternative approaches for LSP functionality in new implementations. This action requires the sandbox to be in a running state." }, { "slug": "DAYTONA_START_PROCESS", "name": "Start VNC Process", "description": "Restarts a specific VNC process within a sandbox in the Daytona platform. Use this action when you need to restart a VNC process (such as xfce4) within a running sandbox. This is helpful when a desktop session becomes frozen or unresponsive. The process will be terminated and started again, which can help recover a stuck interface. Note: This endpoint is deprecated. Consider alternative approaches if available. This action is generally safe as it restarts rather than removes the process, but the sandbox should be in a running state for this operation to succeed." }, { "slug": "DAYTONA_START_SANDBOX", "name": "Start Sandbox", "description": "Starts a sandbox in the Daytona platform. Use this action when you need to start a sandbox that is stopped or archived, making it ready for use. The sandbox will transition to a running state and be accessible for operations. This action can also be used to restore a sandbox from an archived state." }, { "slug": "DAYTONA_STOP_LSP_SERVER", "name": "Stop LSP Server", "description": "Stops an LSP server process inside a sandbox project. Use this action when you need to stop an LSP (Language Server Protocol) server that is running inside a Daytona sandbox. This is useful for freeing up resources, restarting a stuck language server, or cleaning up when LSP features are no longer needed. Note: This endpoint is deprecated. Consider alternative approaches for LSP functionality in new implementations. This action requires the sandbox to be in a running state." }, { "slug": "DAYTONA_STOP_SANDBOX", "name": "Stop Sandbox", "description": "Stops a running sandbox in the Daytona platform. Use this action when you need to gracefully stop a running sandbox that is no longer needed or should be temporarily shut down. The sandbox can be restarted later if needed. Note: If the sandbox does not respond to normal termination signals (SIGTERM), you can use the `force` parameter to forcibly terminate it (SIGKILL). This action is reversible — the sandbox can be restarted after being stopped." }, { "slug": "DAYTONA_TAKE_COMPRESSED_SCREENSHOT", "name": "Take Compressed Screenshot", "description": "Takes a compressed screenshot of the entire screen in a sandbox. Use this action when you need to capture the current visual state of a sandbox's display with compression. The response includes base64-encoded image data that can be decoded to view the screenshot. Compression options include format selection (PNG or JPEG), quality settings for JPEG, and scale factor to reduce image dimensions. This is useful for monitoring sandbox activity, debugging visual issues, or capturing screen states with minimal data transfer. This is a read-only operation that does not modify any resources." }, { "slug": "DAYTONA_UNLINK_ACCOUNT", "name": "Unlink Account", "description": "Unlinks a connected provider account (such as GitHub, GitLab, or Bitbucket) from the authenticated user's Daytona profile. Use when a user wants to remove a connected account or revoke its integration with Daytona. This action is irreversible — once an account is unlinked, it cannot be automatically reconnected without going through the OAuth flow again." }, { "slug": "DAYTONA_UPDATE_EXPERIMENTAL_CONFIG", "name": "Update Experimental Config", "description": "Updates experimental configuration for an organization on the Daytona platform. Use this action when you need to configure experimental features such as OpenTelemetry settings for observability. The organization ID is automatically injected from the authentication context, so only the configuration object needs to be provided." }, { "slug": "DAYTONA_UPDATE_LAST_ACTIVITY", "name": "Update Last Activity", "description": "Updates the last activity timestamp for a sandbox in the Daytona platform. Use this action when you need to keep a sandbox active by recording activity. This is useful for preventing auto-stop mechanisms from stopping sandboxes that are still in use. The action makes a POST request to update the sandbox's last activity timestamp." }, { "slug": "DAYTONA_UPDATE_ORGANIZATION_INVITATION", "name": "Update Organization Invitation", "description": "Updates an organization invitation with new role and permissions. Use when you need to modify an existing organization invitation's role (owner or member) or assigned role permissions. This action allows administrators to update invitation settings after the invitation has been created. This is useful for changing a user's role within an organization or updating the permissions assigned to an invitation." }, { "slug": "DAYTONA_UPDATE_ORGANIZATION_OTEL_CONFIG", "name": "Update Organization OpenTelemetry Config", "description": "Updates the OpenTelemetry configuration for an organization. Use this action when you need to configure or update the OTLP endpoint and custom headers for an organization's OpenTelemetry setup. This allows you to specify where telemetry data should be sent and any authentication headers required for the collector. Note: This action returns HTTP 204 on success with no response body." }, { "slug": "DAYTONA_UPDATE_ORGANIZATION_ROLE", "name": "Update Organization Role", "description": "Updates an organization role with a new name, description, and permissions. Use this action when you need to modify an existing role within an organization, such as changing what the role is called, updating its description, or changing which permissions the role grants. This action is idempotent — calling it multiple times with the same parameters will produce the same result without side effects." }, { "slug": "DAYTONA_UPDATE_PUBLIC_STATUS", "name": "Update Public Status", "description": "Updates the public visibility status of a sandbox in the Daytona platform. Use this action when you need to change whether a sandbox can be accessed publicly via its HTTP preview. Setting a sandbox to public makes it accessible to anyone with the link, while setting it to private restricts access to authenticated users within the organization only. The API returns the updated sandbox object with the new public status." }, { "slug": "DAYTONA_UPDATE_REGISTRY", "name": "Update Docker Registry", "description": "Updates a Docker registry configuration. Use this action when you need to modify the settings of an existing Docker registry, such as updating the registry name, URL, or credentials. This is a modification operation that updates the registry's configuration on the Daytona platform." }, { "slug": "DAYTONA_UPDATE_SANDBOX_DEFAULT_LIMITED_NETWORK_EGRESS", "name": "Update Sandbox Default Limited Network Egress", "description": "Updates the sandbox default limited network egress setting for an organization. Use this action when you need to configure whether new sandboxes should have limited network egress enabled by default within a specific organization. This action modifies organization-level settings and may affect how new sandboxes are provisioned. Existing sandboxes are not affected by this change." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "daytona_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "Organization ID", "type": "string", "description": "Your Daytona Organization ID. Required for OAuth/JWT auth. Copy it from the settings page at https://app.daytona.io/dashboard/settings", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "daytona_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Daytona API key. Create one at https://app.daytona.io/dashboard/keys", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Organization ID", "type": "string", "description": "Organization ID for multi-org API keys. Required when your API key has access to multiple organizations", "required": false, "default": null } ] } } } ] }, { "slug": "deadline_funnel", "name": "Deadline Funnel", "logo": "https://logos.composio.dev/api/deadline_funnel", "description": "Deadline Funnel provides tools to create authentic, personalized deadlines for marketing campaigns, enhancing urgency and conversions.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEADLINE_FUNNEL_EMAIL_LINK_REDIRECT", "name": "Email Link Redirect", "description": "Tool to redirect an email link to the correct before- or after-deadline URL for a subscriber. Use when processing clicks on Deadline Funnel email links. Returns the final destination URL after redirects." }, { "slug": "DEADLINE_FUNNEL_GENERATE_SALES_TRACKING_WEBHOOK_URL", "name": "Generate Sales Tracking Webhook URL", "description": "Tool to generate the sales-tracking webhook URL details. Use when you need the campaign-specific sales-tracking webhook parameters before tracking a sale. Use after creating or retrieving your campaign in Deadline Funnel to obtain the token value." }, { "slug": "DEADLINE_FUNNEL_GET_ACCOUNT_ID", "name": "Get Account ID", "description": "Tool to retrieve the Deadline Funnel account ID. Use when you need the account identifier for subsequent API calls. Attempts known endpoints then falls back to parsing response or request headers." }, { "slug": "DEADLINE_FUNNEL_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve existing Deadline Funnel campaigns. Use when you need to obtain campaign IDs and names for downstream actions." }, { "slug": "DEADLINE_FUNNEL_START_DEADLINE_CUSTOM_WEBHOOK", "name": "Start Deadline via Custom Webhook", "description": "Tool to start an individual subscriber’s deadline tracking via a custom webhook URL. Use after generating a campaign-specific webhook token. Example: StartDeadlineCustomWebhook(account_id='123456', token='abcdef', email='joe@example.com')" }, { "slug": "DEADLINE_FUNNEL_TRACK_SALE_WEBHOOK", "name": "Track Sale Webhook", "description": "Tool to record a sale for a subscriber in a specific campaign via the campaign-generated sales-tracking webhook. Use after generating the campaign sales-tracking webhook URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "deadline_funnel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Deadline Funnel API Key", "type": "string", "description": "The API key provided by Deadline Funnel for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "deepgram", "name": "Deepgram", "logo": "https://logos.composio.dev/api/deepgram", "description": "Deepgram provides AI-powered speech recognition and understanding services, offering APIs for real-time and pre-recorded audio transcription, text-to-speech, and audio intelligence.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "DEEPGRAM_GET_MODEL", "name": "Get Model by ID", "description": "Retrieve metadata for a specific Deepgram model by its UUID. Returns detailed model information including name, architecture, supported languages, version, and capabilities. Works for both STT (speech-to-text) and TTS (text-to-speech) models." }, { "slug": "DEEPGRAM_GET_MODELS", "name": "Get Public Models", "description": "Retrieve metadata on all public Deepgram models (speech-to-text and text-to-speech). Returns comprehensive model information including supported languages, architectures, versions, and capabilities. Set include_outdated to True to include deprecated versions." }, { "slug": "DEEPGRAM_GET_PROJECTS", "name": "List Deepgram Projects", "description": "Tool to list all Deepgram projects. Use after authenticating with your API key." }, { "slug": "DEEPGRAM_GET_PROJECT_USAGE_SUMMARY", "name": "Get Project Usage Summary", "description": "Retrieves aggregated usage statistics for a Deepgram project including total audio duration, billable duration, number of requests, channels processed, and confidence/relevance scores. Returns both overall totals and breakdowns by model/accessor/tag. Use this to analyze API consumption, track costs, or monitor transcription quality metrics over time." }, { "slug": "DEEPGRAM_LIST_PROJECT_SCOPES", "name": "List Project Scopes", "description": "Tool to list all scopes for a specified Deepgram project. Use when you need to retrieve all permission scopes for a project." }, { "slug": "DEEPGRAM_LIST_THINK_MODELS", "name": "List Think Models", "description": "Tool to list available think models for AI agent processing and voice agent configuration. Use when you need to see which think models are available for voice agents." }, { "slug": "DEEPGRAM_SPEECH_TO_TEXT_PRE_RECORDED", "name": "Transcribe Pre-recorded Audio", "description": "Tool to transcribe pre-recorded audio files into text. Use when converting a publicly accessible audio file URL to text. Primary transcript is at `results.channels[0].alternatives[0].transcript` in the response. Silent audio returns a valid empty transcript, not an error. Verify supported models and language codes via `DEEPGRAM_GET_MODELS` when uncertain." }, { "slug": "DEEPGRAM_TEXT_TO_SPEECH_REST", "name": "Text-to-Speech (REST)", "description": "Tool to convert text into natural-sounding speech. Use when you need TTS audio from text inputs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "deepgram_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Deepgram API Key", "type": "string", "description": "Your Deepgram API Key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "deepimage", "name": "DeepImage", "logo": "https://logos.composio.dev/api/deepimage", "description": "AI Image Enhancer to Generate & Upscale", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEEPIMAGE_DELETE_JOB", "name": "Delete Job", "description": "Tool to delete completed job result and remove images from the server. Use when cleaning up processed jobs that are no longer needed." }, { "slug": "DEEPIMAGE_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Tool to retrieve authenticated user's profile information including credits, username, email, API key, language preference, webhook settings, and billing address. Use when you need to check account details or credit balance." }, { "slug": "DEEPIMAGE_GET_JOB_RESULT", "name": "Get Job Result", "description": "Tool to retrieve processing job result by hash. Use to check job status and get result URL when processing is complete." }, { "slug": "DEEPIMAGE_PROCESS_IMAGE_ASYNC", "name": "Process Image Async", "description": "Tool to schedule an image enhancement job and wait for the result. Performs selected enhancement options on an image and returns the result URL if processing completes within 25 seconds; otherwise returns a job hash for later retrieval. Use when you need to enhance images with options like denoising, deblurring, lighting improvements, or background removal." }, { "slug": "DEEPIMAGE_PROCESS_IMAGE_SYNC", "name": "Process Image Synchronously", "description": "Tool to process an image synchronously with Deep Image AI. Returns result URL immediately if processing completes in less than 25 seconds, otherwise returns job hash for async polling. Use for image enhancement, resizing, background removal, and other image processing tasks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "deepimage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard under API settings at https://deep-image.ai/app/my-profile/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "deepseek", "name": "DeepSeek", "logo": "https://logos.composio.dev/api/deepseek", "description": "DeepSeek provides a range of AI products and services, including a chatbot, a search engine, and a language model.", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEEPSEEK_CREATE_ANTHROPIC_MESSAGE", "name": "Create Anthropic Message", "description": "Tool to create a model response using DeepSeek's Anthropic-compatible API format with support for system prompts, tool calling, streaming, and thinking mode. Use when you need to generate chat completions using the Anthropic Messages API format. Requires base_url='https://api.deepseek.com/anthropic' or metadata base_url ending with '/anthropic'. Supports extended thinking, function calling with tools, and streaming responses. Note: Images and documents are not supported in content blocks." }, { "slug": "DEEPSEEK_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Tool to create a chat completion using DeepSeek models (deepseek-chat or deepseek-reasoner). Use when you need to generate AI responses to chat conversations. Supports streaming, tool/function calling, and various parameters to control generation behavior (temperature, max_tokens, etc.)." }, { "slug": "DEEPSEEK_GET_USER_BALANCE", "name": "Get User Balance", "description": "Tool to get user's current account balance including granted and topped-up balances with detailed breakdown by currency (CNY or USD). Use when you need to check if the user has sufficient balance for API calls or to view detailed balance information." }, { "slug": "DEEPSEEK_LIST_MODELS", "name": "List Models", "description": "Tool to list currently available DeepSeek models and provides basic information about each one such as the owner and availability. Use when you need to discover which models are available for API calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "deepseek_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the API keys menu option at https://platform.deepseek.com/api_keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "delighted", "name": "Delighted", "logo": "https://logos.composio.dev/api/delighted", "description": "Delighted uses the Net Promoter System® to gather real feedback from your customers – in minutes, not weeks. No technical knowledge required.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DELIGHTED_ADD_PERSON_TO_AUTOPILOT_EMAIL", "name": "Add Person to Autopilot Email", "description": "Add a person to Autopilot email or update their properties. Autopilot automatically schedules and sends recurring email surveys at the frequency configured in your Delighted account settings. Use this to enroll new people in automated email surveys or update custom properties for existing members. Note: Autopilot must be configured in your Delighted account before using this API." }, { "slug": "DELIGHTED_ADD_PERSON_TO_AUTOPILOT_SMS", "name": "Add Person to Autopilot SMS", "description": "Tool to add a person to Autopilot or update their properties for SMS-based surveys. Use when you need to schedule automated survey delivery via SMS. Prerequisites: SMS Autopilot must be configured in your Delighted account before using this API endpoint. If not configured, the API returns a 422 error." }, { "slug": "DELIGHTED_CREATE_PERSON", "name": "Create or Update Person", "description": "Tool to create or update a person and schedule a survey email. Use when you need to add a new person to Delighted, update existing person details, or schedule a survey with custom properties for segmentation." }, { "slug": "DELIGHTED_DELETE_PENDING_SURVEY_REQUESTS", "name": "Delete Pending Survey Requests", "description": "Tool to remove all pending (scheduled but not yet sent) survey requests for a person. Use when you need to cancel all future surveys for a specific email address." }, { "slug": "DELIGHTED_DELETE_PERSON", "name": "Delete Person", "description": "Tool to remove a person and all associated data from Delighted. Use when you need to permanently delete a person's information. Deletion includes surveys, responses, properties, Autopilot membership, survey history, and unsubscribe/bounce status." }, { "slug": "DELIGHTED_GET_AUTOPILOT_EMAIL_CONFIGURATION", "name": "Get Autopilot Email Configuration", "description": "Tool to retrieve the current Autopilot configuration for email distribution. Returns configuration details including whether Autopilot is active, survey frequency, and timestamps." }, { "slug": "DELIGHTED_GET_AUTOPILOT_SMS_CONFIGURATION", "name": "Get Autopilot SMS Configuration", "description": "Tool to retrieve the current Autopilot configuration for SMS distribution. Use when you need to check whether Autopilot is enabled, review survey frequency settings, or examine configuration timestamps for SMS surveys." }, { "slug": "DELIGHTED_LIST_AUTOPILOT_SMS_MEMBERSHIPS", "name": "List Autopilot SMS Memberships", "description": "Tool to retrieve all Autopilot memberships for SMS distribution platform. Use when you need to list people enrolled in Autopilot SMS or filter by specific person details." }, { "slug": "DELIGHTED_LIST_BOUNCED_PEOPLE", "name": "List Bounced People", "description": "Tool to retrieve all bounced people for your account, ordered by bounce time (oldest first). Use when you need to identify email addresses that have bounced. Supports pagination via per_page and page parameters, and optional Unix timestamp filters (since, until) to restrict results to specific time ranges." }, { "slug": "DELIGHTED_LIST_PEOPLE", "name": "List People", "description": "Tool to retrieve all people for your account in creation order. Use when you need to list contacts, filter by email or phone number, or paginate through your people database. Supports cursor-based pagination via Link header and optional time-based filtering. Note: email and phone_number filters are mutually exclusive." }, { "slug": "DELIGHTED_LIST_SURVEY_RESPONSES", "name": "List Survey Responses", "description": "Tool to retrieve all survey responses for your account with pagination support and optional filtering. Use when you need to access survey feedback data, filter by date range, trend, person, or sort by creation/update time. Supports expanding person details and notes." }, { "slug": "DELIGHTED_LIST_UNSUBSCRIBED_PEOPLE", "name": "List Unsubscribed People", "description": "Tool to retrieve all unsubscribed people for your account, ordered by unsubscribe time (oldest first). Use when you need to identify people who have unsubscribed. Supports pagination via per_page and page parameters, and optional Unix timestamp filters (since, until) to restrict results to specific time ranges." }, { "slug": "DELIGHTED_UNSUBSCRIBE_PERSON", "name": "Unsubscribe Person", "description": "Tool to add a person to your unsubscribe list, preventing them from receiving any future surveys via email. Use when you need to permanently unsubscribe someone from all email surveys. This is functionally equivalent to the person clicking Unsubscribe within a survey." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "delighted_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Delighted API key. Find it at https://app.delighted.com/docs/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "deployhq", "name": "DeployHQ", "logo": "https://logos.composio.dev/api/deployhq", "description": "Deployment made simple. We make it super easy to automate deploying projects from Git, SVN and Mercurial repositories.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEPLOYHQ_DELETE_COMMAND", "name": "Delete Command", "description": "Tool to delete a command from a specified project. Use when you need to remove an SSH command from a project's configuration." }, { "slug": "DEPLOYHQ_DELETE_PROJECTS_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from DeployHQ. Use when you need to permanently remove a project by its permalink or identifier." }, { "slug": "DEPLOYHQ_DELETE_PROJECTS_PROJECT_BUILD_CACHE_FILES", "name": "Delete Build Cache File", "description": "Tool to delete an existing build cache file from a project. Use when you need to remove a cached build artifact from the project's build cache storage." }, { "slug": "DEPLOYHQ_DELETE_PROJECTS_PROJECT_EXCLUDED_FILES_IDENTIFIER", "name": "Delete Excluded File Rule", "description": "Tool to delete an existing excluded file rule from a project. Use when you need to remove an excluded file pattern from deployment configuration." }, { "slug": "DEPLOYHQ_DELETE_PROJECTS_PROJECT_SERVER_GROUPS_IDENTIFIER", "name": "Delete Server Group", "description": "Tool to delete a server group from a project using the DeployHQ API. Use when you need to remove a server group from deployment configuration." }, { "slug": "DEPLOYHQ_DELETE_TEMPLATES_PERMALINK", "name": "Delete Template", "description": "Tool to delete a template by its unique permalink. Use when you need to permanently remove a template from DeployHQ." }, { "slug": "DEPLOYHQ_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve all projects from DeployHQ account. Use when you need to list all available projects and their configurations." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT", "name": "Get Project", "description": "Tool to view an existing project in DeployHQ. Use when you need to retrieve details about a specific project by its permalink or identifier." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_BUILD_KNOWN_HOSTS", "name": "Get Project Build Known Hosts", "description": "Tool to list all known hosts within a project using DeployHQ API. Use when you need to view SSH known hosts configured for a specific project." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_COMMANDS", "name": "Get Project Commands", "description": "Tool to retrieve all SSH commands configured for a project. Use when you need to list all commands and their execution details for a specific project." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_CONFIG_FILES", "name": "Get Project Config Files", "description": "Tool to retrieve a list of all config files in a DeployHQ project. Use when you need to view all configuration files that are configured for a specific project." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_DEPLOYMENTS", "name": "Get Project Deployments", "description": "Tool to retrieve a paginated list of all deployments in a project. Use when you need to view deployment history for a specific project. Results are paginated with 10 deployments per page." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_EXCLUDED_FILES", "name": "Get Project Excluded Files", "description": "Tool to list all excluded files within a project template. Use when you need to view which files or patterns are excluded from deployment for a specific project." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_ID_CONFIG_FILES_ID", "name": "Get Config File", "description": "Tool to view a specific config file in a DeployHQ project. Use when you need to retrieve details about a particular configuration file by its identifier." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_ID_EXCLUDED_FILES_ID", "name": "Get Excluded File", "description": "Tool to view a specific excluded file in a DeployHQ project. Use when you need to retrieve details about a particular excluded file by its identifier." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_ID_SERVER_GROUPS_ID", "name": "Get Server Group", "description": "Tool to view a specific server group in a DeployHQ project. Use when you need to retrieve details about a particular server group by its identifier." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_REPOSITORY", "name": "Get Project Repository", "description": "Tool to view repository details for a specific project in DeployHQ. Use when you need to retrieve repository configuration including URL, branch, and hosting service details." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_REPOSITORY_BRANCHES", "name": "Get Repository Branches", "description": "Tool to view all available branches in the connected repository for a project. Use when you need to list repository branches and their commit hashes." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_REPOSITORY_COMMIT_INFO", "name": "Get Repository Commit Info", "description": "Tool to view detailed information about a specific revision in a project's connected repository. Use when you need to retrieve commit details including author, timestamp, message, and tags." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_REPOSITORY_LATEST_REVISION", "name": "Get Latest Repository Revision", "description": "Tool to view the latest remote revision of your repository. Use when you need to get the most recent commit hash for a project's default branch or a specific branch." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_REPOSITORY_RECENT_COMMITS", "name": "Get Recent Commits and Tags", "description": "Tool to view up to 15 most recent revisions and up to 15 most recent tags in a specific branch. Use when you need to retrieve recent commit history and tag information from a project's repository branch." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_SCHEDULED_DEPLOYMENTS", "name": "Get Project Scheduled Deployments", "description": "Tool to retrieve all upcoming scheduled deployments for a project. Use when you need to view scheduled deployment configurations including server details, revision information, frequency settings, and execution times." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_SERVER_GROUPS", "name": "Get Project Server Groups", "description": "Tool to retrieve all server groups configured for a project. Use when you need to list servers and their deployment configurations within a project." }, { "slug": "DEPLOYHQ_GET_PROJECTS_PROJECT_SERVERS", "name": "Get Project Servers", "description": "Tool to retrieve all servers configured for a project. Use when you need to view server configurations and deployment targets for a specific project." }, { "slug": "DEPLOYHQ_GET_TEMPLATES", "name": "Get Templates", "description": "Retrieves all deployment templates from the DeployHQ account. Templates in DeployHQ are reusable configurations that can be used to quickly set up new projects with predefined settings. This action returns the name, permalink (unique identifier), and description for each template. Use this when you need to: - List all available templates in the account - Find a template's permalink for use in other operations - Discover what templates exist before creating or modifying projects No parameters are required - this returns all templates in the account." }, { "slug": "DEPLOYHQ_GET_TEMPLATES_ID_PUBLIC_ID", "name": "Get Public Framework Template Details", "description": "Retrieves detailed configuration for a specific public framework template from DeployHQ's curated template library. Returns complete deployment settings including build commands, SSH commands, excluded files, and framework-specific features. Use this to inspect pre-configured templates for popular frameworks like Laravel, React, WordPress, Django, etc. First call GET_TEMPLATES_PUBLIC_TEMPLATES to get available template IDs and permalinks." }, { "slug": "DEPLOYHQ_GET_TEMPLATES_PUBLIC_TEMPLATES", "name": "Get Public Templates", "description": "Tool to retrieve publicly available deployment templates from DeployHQ. Use when you need to list framework templates for popular web platforms." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_ID", "name": "Update Project", "description": "Tool to update project settings in DeployHQ. Use when you need to modify a project's name or region/zone configuration." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_BUILD_CACHE_FILES_ID", "name": "Update Build Cache File", "description": "Tool to update an existing build cache file in a project. Use when you need to modify the path of a cached build artifact in the project's build cache storage." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_BUILD_COMMANDS_ID", "name": "Update Build Command", "description": "Tool to update an existing build command in a project. Use when you need to modify the description, command, or error handling behavior of a build command. Supports partial updates - only include the fields you want to change." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_BUILD_LANGUAGES_ID", "name": "Update Build Language Version", "description": "Updates the version of a programming language in a project's build environment configuration. This action modifies which version of PHP, Node.js, Python, Ruby, Java, Go, .NET, or Composer will be used during the project's build process. Note: Some languages may not be available for all projects depending on the project configuration and DeployHQ account settings." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_COMMANDS_ID", "name": "Update Project Command", "description": "Tool to update an existing SSH command in a project. Use when you need to modify command properties like description, command text, execution timing, timeout, or server assignments." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_CONFIG_FILES_ID", "name": "Update Config File", "description": "Tool to update an existing config file in a DeployHQ project. Use when you need to modify the path or contents of a configuration file." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_EXCLUDED_FILES_ID", "name": "Update Excluded File", "description": "Tool to update an existing excluded file rule in a project. Use when you need to modify the file path pattern or server associations for an excluded file in the deployment configuration." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_REPOSITORY", "name": "Update Project Repository", "description": "Tool to update repository configuration for a project in DeployHQ. Use when you need to modify repository settings like branch, URL, SCM type, or authentication credentials." }, { "slug": "DEPLOYHQ_PATCH_PROJECTS_PROJECT_ID_SERVER_GROUPS_ID", "name": "Update Server Group", "description": "Tool to update an existing server group in a DeployHQ project. Use when you need to modify settings such as name, branch, auto-deploy, notification preferences, or deployment mode. Supports partial updates - only include the fields you want to change." }, { "slug": "DEPLOYHQ_PATCH_TEMPLATES_ID", "name": "Update Template", "description": "Tool to update an existing template in DeployHQ. Use when you need to modify the name or description of a template." }, { "slug": "DEPLOYHQ_POST_PROJECTS", "name": "Create Project", "description": "Tool to create a new project in DeployHQ. Use when you need to initialize a new project with a name and optional zone configuration." }, { "slug": "DEPLOYHQ_POST_PROJECTS_ID_AI_DEPLOYMENT_OVERVIEW", "name": "Generate AI Deployment Overview", "description": "Tool to generate an AI-powered deployment overview for a revision range. Use when you need to analyze commit messages between two references and get a concise summary of changes." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_BUILD_CACHE_FILES", "name": "Create Build Cache File", "description": "Tool to create a new build cached file within a project. Use when you need to add a new cached build artifact to the project's build cache storage." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_BUILD_COMMANDS", "name": "Create Build Command", "description": "Tool to create a new build command for a project in DeployHQ. Use when you need to add a new build command to a project." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_BUILD_KNOWN_HOSTS", "name": "Create Project Build Known Host", "description": "Tool to create a new known host in a project using DeployHQ API. Use when you need to add SSH known hosts for build processes in a specific project." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_COMMANDS", "name": "Create SSH Command", "description": "Tool to create a new SSH command for a project in DeployHQ. Use when you need to add SSH commands that run before or after deployments." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_CONFIG_FILES", "name": "Create Config File", "description": "Tool to create a new config file in a DeployHQ project. Use when you need to add a configuration file that will be deployed to specified servers." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_DEPLOYMENTS", "name": "Create Config File Deployment", "description": "Tool to create a new config file deployment for a project. Use when you need to deploy only configuration files to a server or server group without deploying code changes." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_EXCLUDED_FILES", "name": "Create Excluded File", "description": "Tool to add a new excluded file to a project. Use when you need to exclude specific files or patterns from deployment to prevent them from being deployed to servers." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_ID_DEPLOYMENTS_ID_ABORT", "name": "Abort Deployment", "description": "Tool to abort a currently running deployment. Use when you need to terminate a deployment that is in progress." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_REPOSITORY", "name": "Add Project Repository", "description": "Tool to add repository details to a project in DeployHQ. Use when you need to configure a repository for a project with URL, SCM type, branch, and authentication credentials." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_SERVER_GROUPS", "name": "Create Server Group", "description": "Tool to create a new server group for automated deployments in a DeployHQ project. Use when you need to set up a group of servers for deploying from a specific branch with auto-deploy and notification settings." }, { "slug": "DEPLOYHQ_POST_PROJECTS_PROJECT_SERVERS", "name": "Create Server", "description": "Tool to create a new server configuration in a DeployHQ project. Use when you need to add a deployment destination with protocol-specific settings (SSH, FTP, S3, etc.)." }, { "slug": "DEPLOYHQ_POST_TEMPLATES", "name": "Create Template", "description": "Tool to create a new template in DeployHQ. Use when you need to create a template, optionally copying configuration from an existing project." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT", "name": "Update Project Settings", "description": "Tool to update settings of an existing DeployHQ project. Use when you need to modify project properties like name, permalink, notification settings, or zone. Warning: Changing the permalink requires updating the repository webhook URL to maintain automatic deployments." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_BUILD_CACHE_FILES_IDENTIFIER", "name": "Edit Build Cache File", "description": "Tool to edit an existing build cache file within a project. Use when you need to modify the path of a cached build artifact in the project's build cache storage." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_BUILD_COMMANDS_IDENTIFIER", "name": "Edit Build Command", "description": "Tool to edit an existing build command within a template in DeployHQ. Use when you need to modify the description, command, or error handling behavior of a build command." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_COMMANDS_IDENTIFIER", "name": "Edit SSH Command", "description": "Tool to edit an existing SSH command in a DeployHQ project. Use when you need to update command properties like description, command text, execution timing, timeout, or server assignments." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_CONFIG_FILES_IDENTIFIER", "name": "Edit Config File", "description": "Tool to edit an existing config file within a project. Use when you need to modify the path, contents, or server deployment settings of a configuration file." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_ID_EXCLUDED_FILES_ID", "name": "Update Excluded File", "description": "Tool to update an existing excluded file rule in a project. Use when you need to modify the path pattern or server assignments of an existing exclusion rule." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_ID_REPOSITORY", "name": "Update Project Repository", "description": "Tool to update repository details for an existing project in DeployHQ. Use when you need to replace the complete repository configuration including SCM type, URL, and branch." }, { "slug": "DEPLOYHQ_PUT_PROJECTS_PROJECT_SERVER_GROUPS_IDENTIFIER", "name": "Update Server Group", "description": "Tool to update a server group in a DeployHQ project using the API. Use when you need to modify server group configuration such as name, branch, auto-deploy settings, notification preferences, or deployment mode." }, { "slug": "DEPLOYHQ_PUT_TEMPLATES_PERMALINK", "name": "Edit Template", "description": "Tool to edit an existing template in DeployHQ. Use when you need to update the name of a template identified by its permalink." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "deployhq_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account Name", "type": "string", "description": "Your DeployHQ account name (e.g., \"1234\" if your URL is https://1234.deployhq.com)", "required": true, "default": null }, { "name": "username", "displayName": "Email", "type": "string", "description": "Your DeployHQ account email address", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your DeployHQ API key. To retrieve your API key, navigate to your DeployHQ account and go to Settings > Security", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "desktime", "name": "DeskTime", "logo": "https://logos.composio.dev/api/desktime", "description": "DeskTime is an automatic time tracking software that helps teams and freelancers monitor productivity, manage projects, and analyze work habits.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DESKTIME_CREATE_PROJECT_WITH_TASK", "name": "Create Project with Optional Task", "description": "Tool to create a new project with an optional initial task. Use when you need to set up a new DeskTime project programmatically." }, { "slug": "DESKTIME_GET_ACCOUNT_DETAILS", "name": "Get Account Details", "description": "Retrieves company account configuration including work schedule and timezone settings. This action fetches company-level information such as company name, work hours (start/end times), work duration, working days configuration, time tracking hours, and timezone. No parameters are required. This is useful for understanding the company's work schedule configuration and timezone settings." }, { "slug": "DESKTIME_GET_ALL_COMPANY_EMPLOYEES", "name": "Get All Company Employees", "description": "Tool to list all employees in the company, including their roles and statuses. Use after confirming valid credentials to fetch the organization’s roster." }, { "slug": "DESKTIME_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to retrieve information about a single employee including user info, work settings, and tracking data for a specific date. Use when you need detailed information for one employee. Returns data for the currently logged-in user if no employee ID is specified." }, { "slug": "DESKTIME_GET_EMPLOYEE_APPS", "name": "Get Employee Apps", "description": "Retrieves employee tracking data including tracked apps for a specific date. Returns data for the currently logged-in user if no employee ID is specified. Use this action to view detailed application usage and productivity data for an employee." }, { "slug": "DESKTIME_GET_EMPLOYEE_PROJECTS", "name": "Get Employee Projects", "description": "Retrieves comprehensive employee project tracking data including project assignments, time tracking metrics, work hours, and productivity statistics for a specific employee and date. Returns detailed information about: - Employee profile (ID, name, email, group) - Time tracking metrics (online time, productive time, efficiency) - Work schedule (work start/end times, timezone) - Active project details (current project and task being worked on) - Projects list (all projects tracked on the specified date with durations) - Employee status indicators (online, arrived, left, late) Use this action when you need to: - View an employee's project assignments and tracking data - Check time spent on specific projects by an employee - Monitor employee productivity and work hours - Retrieve historical project tracking data for a specific date Both parameters are optional - defaults to current API-key user and today's date." }, { "slug": "DESKTIME_GET_EMPLOYEE_PROJECTS_AND_APPS", "name": "Get Employee Basic Data", "description": "Retrieve an employee's basic information and daily tracking statistics from DeskTime. Returns employee profile data, work hours, productivity metrics, attendance status, and currently active project. Use this when you need employee time tracking data for a specific date (defaults to today). Note: For detailed project/app usage breakdowns, use the dedicated Get Employee Projects action." }, { "slug": "DESKTIME_GET_PROJECTS_LIST", "name": "Get Projects List", "description": "Tool to retrieve all active projects for the company, including related tasks. Use when you need projects overview after authentication." }, { "slug": "DESKTIME_PING_REQUEST", "name": "Ping DeskTime API", "description": "Tool to check the API's availability and confirm the service is operational. Use when you need to verify that the DeskTime API is reachable and responsive." }, { "slug": "DESKTIME_START_PROJECT_TASK", "name": "Start Project Task", "description": "Starts time tracking for a specified project and optional task in DeskTime. This action begins recording time against the specified project. If a task name is provided, time is also tracked at the task level within that project. Both projects and tasks are created automatically if they don't already exist in the DeskTime account. Use this action when a user wants to: - Begin working on a project and track time - Start a specific task within a project - Switch time tracking to a different project or task Note: Only one project/task can be tracked at a time per user. Starting a new project automatically stops tracking on any previously active project." }, { "slug": "DESKTIME_STOP_PROJECT_TASK", "name": "Stop Project Task", "description": "Tool to stop tracking time for a specified project and optional task. Use when you have finished work and need to record end time." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "desktime_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DeskTime API Key", "type": "string", "description": "The unique API key associated with your DeskTime account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "detrack", "name": "Detrack", "logo": "https://logos.composio.dev/api/detrack", "description": "Detrack is a delivery management software that offers real-time vehicle tracking, electronic proof of delivery, and automated customer notifications.", "category": "internet of things", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DETRACK_ADD_COLLECTION", "name": "Add Collection", "description": "Add a new collection job in Detrack. A collection is a pickup job where items are collected from a location. The Delivery Order (do) number must be unique per date. Include the country name in the address for better geocoding." }, { "slug": "DETRACK_CREATE_BULK_DEPOTS", "name": "Bulk Create Depots", "description": "Tool to create multiple depot locations in one request. Use when you need to create several depots at once. Each depot requires at least a name and an address that can be geocoded. Include country name in addresses for accurate geocoding." }, { "slug": "DETRACK_CREATE_DEPOT", "name": "Create Depot", "description": "Create a new depot in Detrack. A depot serves as a starting/ending point for delivery routes. Requires at least a name and an address that can be geocoded. The address should be complete and include the country name for accurate geocoding." }, { "slug": "DETRACK_DELETE_ALL_COLLECTIONS", "name": "Delete All Collections", "description": "Tool to delete all collections in the account. Use when you need to purge every collection for a specific date after confirmation." }, { "slug": "DETRACK_DELETE_ALL_DELIVERIES", "name": "Delete All Deliveries", "description": "Tool to delete all deliveries for a specific date. Use when you need to purge deliveries in bulk before scheduling new ones." }, { "slug": "DETRACK_DELETE_DELIVERY", "name": "Delete Delivery", "description": "Tool to delete one or more deliveries by date and D.O. number. Use after confirming delivery entries to avoid accidental data loss (max 100 items per call)." }, { "slug": "DETRACK_DELETE_DEPOTS_BULK", "name": "Bulk Delete Depots", "description": "Tool to delete multiple depots in a single request. Use when you need to remove depots that are no longer needed." }, { "slug": "DETRACK_DELETE_JOB_BY_QUERY", "name": "Delete Job by Query", "description": "Tool to delete a job by DO number using query parameters. Use when you need to delete a specific job by its DO number. Returns success status indicating whether the job was found and deleted." }, { "slug": "DETRACK_EDIT_DELIVERY", "name": "Edit Delivery", "description": "Edit one or more existing deliveries by date and D.O. number. Use this tool to update delivery details such as address, recipient, phone, instructions, or vehicle assignment. The delivery must already exist in Detrack (identified by date + D.O. number combination). Limitations: - Maximum 100 deliveries per request - Date and D.O. must match an existing delivery" }, { "slug": "DETRACK_GET_JOB_BY_DO_AND_DATE", "name": "Get Job by DO and Date", "description": "Tool to retrieve a specific job by its DO (Delivery Order) number and date. Use when you need to fetch detailed information about a specific delivery or collection job. Returns comprehensive job details including status, tracking, items, and proof of delivery information." }, { "slug": "DETRACK_GET_JOB_BY_QUERY", "name": "Get Job By Query", "description": "Tool to retrieve a single job by DO number using query parameters. Use when you need to fetch detailed information about a specific delivery or collection job." }, { "slug": "DETRACK_LIST_DEPOTS", "name": "List Depots", "description": "Tool to list all depot locations with pagination. Use when you need to retrieve depot information including addresses and coordinates. Supports pagination to handle large numbers of depots." }, { "slug": "DETRACK_LIST_JOBS_V2", "name": "List Jobs V2", "description": "Tool to list jobs with pagination and filtering using Detrack API v2. Use when you need to retrieve jobs with filters by date, type, assign_to, status, DO number, or search query. Supports sorting and pagination for efficient data retrieval." }, { "slug": "DETRACK_SEARCH", "name": "Search", "description": "Tool to search for deliveries, collections, or vehicles. Use after defining search criteria to retrieve matching jobs." }, { "slug": "DETRACK_SEARCH_JOBS", "name": "Search Jobs", "description": "Search jobs with advanced filters including date range, DO number, statuses, groups, vehicles, zones, and more. Use this to find specific jobs across multiple criteria using the v2 search API." }, { "slug": "DETRACK_UPDATE_DEPOTS_BULK", "name": "Update Depots Bulk", "description": "Update multiple depot locations in a single request. Use this to modify depot details such as address, contact information, or coordinates. Each depot is identified by its name or ID. This is more efficient than updating depots individually when you need to update multiple depots at once." }, { "slug": "DETRACK_VIEW_ALL_COLLECTIONS", "name": "View All Collections", "description": "View all collection jobs scheduled for a specific date in Detrack. Returns collection details including delivery order number, pickup address, status, tracking link, and items. Use this to retrieve all collections for a particular day by providing a date in YYYY-MM-DD format." }, { "slug": "DETRACK_VIEW_ALL_DELIVERIES", "name": "View All Deliveries", "description": "Tool to view all deliveries for a specific date. Use when you need to retrieve all delivery jobs on a given date." }, { "slug": "DETRACK_VIEW_ALL_VEHICLES", "name": "View All Vehicles", "description": "Retrieve all vehicles registered in your Detrack account. Returns complete fleet information including real-time location, speed, connection status, and vehicle details. Use this to get an overview of your entire fleet or check which vehicles are currently active." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "detrack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Detrack API Key", "type": "string", "description": "The API key used for authenticating requests to the Detrack API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "devto", "name": "DEV Community", "logo": "https://logos.composio.dev/api/devto", "description": "DEV Community (dev.to) is a community of software developers where you can publish articles, engage with others, and build your online presence.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DEVTO_CREATE_ARTICLE", "name": "Create Article", "description": "Create a new article on DEV Community. Use this action to create a new article on behalf of the authenticated user. The article can be published immediately by setting published=true, or saved as a draft by setting published=false (which is the default). Required fields are title and body_markdown. Optional fields include description, main_image, tags, series, canonical_url, and organization_id." }, { "slug": "DEVTO_GET_ARTICLE", "name": "Get Article By ID", "description": "Returns a single published article by its ID, including full body content. Use this action when you know the unique ID of the article you want to retrieve. The response includes complete article details such as title, full HTML and markdown body content, author information, reaction counts, comments count, and reading time." }, { "slug": "DEVTO_GET_ARTICLE_BY_PATH", "name": "Get Article By Path", "description": "Returns a single published article by username and slug path. Use this action when you know the username of the author and the article's slug. The response includes full article details including title, content, author info, reactions count, comments count, and reading time." }, { "slug": "DEVTO_GET_COMMENT", "name": "Get Comment by ID", "description": "Returns a single comment and its descendants (replies) by comment ID. Use this action when you need to retrieve a specific comment along with all its replies from DEV Community. The response includes the comment content, author information, and nested child comments. Note: The comment ID is the id_code field (e.g., \"1\", \"32k5a\"), not the numeric user_id." }, { "slug": "DEVTO_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get the currently authenticated user's profile information. Use when you need to retrieve the profile of the user associated with the provided API key. Returns user details including username, name, bio, location, and profile image." }, { "slug": "DEVTO_GET_LISTING", "name": "Get Listing", "description": "Returns a single classified listing by its ID. Use this action to retrieve detailed information about a specific listing on DEV Community, including the title, description, category, tags, and information about the user who posted it." }, { "slug": "DEVTO_GET_ORGANIZATION", "name": "Get Organization", "description": "Returns a single organization by its username. Use this action when you need to retrieve organization profile information from DEV Community. Returns organization details including name, summary, social links, and profile image." }, { "slug": "DEVTO_GET_PROFILE_IMAGE", "name": "Get Profile Image", "description": "Returns the profile image URL for a user or organization by username. Use this action to retrieve the profile picture(s) for a specific user or organization on DEV Community. The API returns both the full-size image URL and a 90px thumbnail." }, { "slug": "DEVTO_GET_USER", "name": "Get user", "description": "Tool to get a single user by their ID or username. Use when you need to retrieve user profile information from DEV Community. Returns user details including username, name, bio, location, and profile image." }, { "slug": "DEVTO_LIST_ARTICLES", "name": "List Articles", "description": "Returns a list of published articles, optionally filtered by tags, username, state, or top articles. Supports pagination. Use when you need to browse or search for articles on DEV Community. Examples: - Get latest articles: omit all filters - Get articles by tag: set tag=\"javascript\" - Get top articles: set state=\"all\" and top=7 - Get rising articles: set state=\"rising\" - Get articles from user: set username=\"ben\"" }, { "slug": "DEVTO_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list comments for a specified article or podcast episode on DEV Community. Use when you need to retrieve all comments for a particular article or podcast episode. Requires either a_id (article ID) or p_id (podcast episode ID) parameter." }, { "slug": "DEVTO_LIST_FOLLOWED_TAGS", "name": "List Followed Tags", "description": "Returns a list of tags followed by the authenticated user. Use this action to retrieve the tags that the currently authenticated user has followed on DEV.to. The response includes the tag ID, name, and points." }, { "slug": "DEVTO_LIST_FOLLOWERS", "name": "List Followers", "description": "Tool to retrieve a list of users who follow the authenticated user. Supports pagination with 80 followers per page by default. Use when you need to see who is following the authenticated user's profile." }, { "slug": "DEVTO_LIST_LATEST_ARTICLES", "name": "List latest DEV Community articles", "description": "Tool to retrieve a list of published articles sorted by descending publish date. Use when you need to fetch the latest articles from DEV Community with pagination support. Returns articles with full details including author info, tags, and engagement metrics." }, { "slug": "DEVTO_LIST_LISTINGS", "name": "List Listings", "description": "Returns a list of classified listings for jobs, mentors, products, etc. Use this action to browse available listings on DEV Community. Supports pagination and filtering by category to find specific types of listings (jobs, mentors, events, etc.)." }, { "slug": "DEVTO_LIST_LISTINGS_BY_CATEGORY", "name": "List Listings By Category", "description": "Returns a list of classified listings filtered by category. Use this action to browse listings on DEV Community for a specific category (jobs, mentors, products, events, etc.). The category is a required path parameter. Supports pagination via page and per_page parameters." }, { "slug": "DEVTO_LIST_ORGANIZATION_ARTICLES", "name": "List Organization Articles", "description": "Tool to list articles published by a specific organization on DEV.to. Use when you need to retrieve all articles published by an organization. The results are paginated and can be filtered by page number and items per page." }, { "slug": "DEVTO_LIST_ORGANIZATION_USERS", "name": "List organization users on DEV.to", "description": "Tool to list users belonging to a specified organization on DEV.to. Use when you need to retrieve all members/users of a particular organization. Returns a list of user objects with their profile information including username, name, profile image, and social links." }, { "slug": "DEVTO_LIST_PODCAST_EPISODES", "name": "List podcast episodes on DEV.to", "description": "Tool to retrieve a list of podcast episodes from DEV.to. Use when you need to browse or search for podcast episodes on DEV.to. Returns a list of podcast episodes, optionally filtered by podcast username. Supports pagination to navigate through large result sets." }, { "slug": "DEVTO_LIST_READING_LIST", "name": "List DEVTO Reading List", "description": "Returns the articles in the authenticated user's reading list. Requires authentication via API key. The reading list contains articles that the authenticated user has saved for later reading." }, { "slug": "DEVTO_LIST_TAGS", "name": "List Tags", "description": "Returns a list of tags with their names, background colors, and text colors. Use this action to retrieve available tags from DEV Community for filtering articles or discovering topics. Supports pagination to handle large numbers of tags." }, { "slug": "DEVTO_LIST_USER_ALL_ARTICLES", "name": "List User All Articles", "description": "Tool to list all articles (both published and unpublished) for the authenticated user. Use when you need to retrieve all articles belonging to the authenticated user's account, including draft and unpublished articles." }, { "slug": "DEVTO_LIST_USER_ARTICLES", "name": "List User Articles", "description": "Tool to list published articles for the authenticated user. Use when you need to retrieve only the published articles belonging to the authenticated user's account. For unpublished/draft articles, use the List User All Articles action instead." }, { "slug": "DEVTO_LIST_USER_PUBLISHED_ARTICLES", "name": "List user's published articles", "description": "Returns a list of the authenticated user's published articles only. Use when you need to retrieve articles that the current user has published on DEV Community. Supports pagination via page and per_page parameters." }, { "slug": "DEVTO_LIST_USER_UNPUBLISHED_ARTICLES", "name": "List user's unpublished articles", "description": "Returns a list of the authenticated user's unpublished (draft) articles. Use when you need to retrieve draft articles that have not yet been published. Supports pagination via page and per_page parameters." }, { "slug": "DEVTO_LIST_VIDEOS", "name": "List Videos", "description": "Tool to retrieve a list of articles that contain videos. Use when you need to browse video content on DEV Community. Supports pagination via page and per_page parameters." }, { "slug": "DEVTO_UPDATE_ARTICLE", "name": "Update Article", "description": "Update an existing article on DEV Community. Only the article owner can update it. Use this action to modify article properties like title, body content, description, cover image, tags, and publication status. Only provide the fields you want to update." }, { "slug": "DEVTO_UPDATE_LISTING", "name": "Update Listing", "description": "Updates an existing classified listing on DEV Community. Use this action to modify a listing's title, body, category, tags, or status. The 'bump' action refreshes the listing's timestamp, 'publish' sets it to published, and 'unpublish' sets it to unpublished. Requires API key authentication." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "devto_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your dev.to API key. You can generate one from https://dev.to/settings/extensions", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dialmycalls", "name": "Dialmycalls", "logo": "https://logos.composio.dev/api/dialmycalls", "description": "DialMyCalls provides a mass notification system enabling users to send voice and text messages to contacts.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DIALMYCALLS_ADD_ACCESS_ACCOUNT", "name": "Add Access Account", "description": "Tool to add a new access (sub) account. Use when you need to delegate dialing capabilities to another user after setting up your master account." }, { "slug": "DIALMYCALLS_ADD_CONTACT", "name": "Add Contact", "description": "Tool to add a contact to your contact list. Use when you need to store a new contact's phone (and optional name, email, or group) before sending messages." }, { "slug": "DIALMYCALLS_ADD_GROUP", "name": "Add Group", "description": "Tool to add a new contact group. Use after deciding the group name to organize recipients into groups." }, { "slug": "DIALMYCALLS_DELETE_ACCESS_ACCOUNT", "name": "Delete Access Account", "description": "Tool to delete an access (sub) account by ID. Use when removing a sub account after deprovisioning." }, { "slug": "DIALMYCALLS_DELETE_CALLER_ID", "name": "Delete Caller ID", "description": "Tool to delete a caller ID. Use when you need to permanently remove an existing caller ID no longer in use." }, { "slug": "DIALMYCALLS_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by ID. Use when you need to permanently remove a contact from your list." }, { "slug": "DIALMYCALLS_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a contact group by ID. Use when you need to remove an existing contact group after confirming its ID." }, { "slug": "DIALMYCALLS_DELETE_RECORDING", "name": "Delete Recording", "description": "Tool to delete a recording by ID. Use when you need to permanently remove a custom recording after confirming its recording ID." }, { "slug": "DIALMYCALLS_GET_ACCESS_ACCOUNT", "name": "Get Access Account", "description": "Tool to retrieve an access (sub) account by ID. Use when you need to inspect the details of a specific sub-account." }, { "slug": "DIALMYCALLS_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve your main account details. Use when you need to confirm account ID, remaining credits, and status." }, { "slug": "DIALMYCALLS_GET_CALLER_ID", "name": "Get Caller ID", "description": "Tool to retrieve a caller ID by ID. Use when you need its details such as phone number and verification status." }, { "slug": "DIALMYCALLS_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a contact by its unique ID. Use when you need to fetch details of a specific contact from your account." }, { "slug": "DIALMYCALLS_GET_GROUP", "name": "Get Group", "description": "Tool to retrieve a contact group by ID. Use when you need to fetch group details after creating or updating a group." }, { "slug": "DIALMYCALLS_GET_RECORDING", "name": "Get Recording", "description": "Tool to retrieve a recording by ID. Use when you need details and file URL of an existing recording." }, { "slug": "DIALMYCALLS_LIST_ACCESS_ACCOUNTS", "name": "List Access Accounts", "description": "Tool to list all access (sub) accounts. Use when you need to retrieve paginated sub-account information for administration or reporting." }, { "slug": "DIALMYCALLS_LIST_CALLER_I_DS", "name": "List Caller IDs", "description": "Tool to list all caller IDs on the account. Use when you need to enumerate existing caller IDs before performing other operations." }, { "slug": "DIALMYCALLS_LIST_CALLS", "name": "List Calls", "description": "Tool to list all call broadcasts on the account. Use when you need to retrieve or manage call records with optional filters like name, type, status, dates, pagination, and sorting." }, { "slug": "DIALMYCALLS_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list all contacts in your contact list. Use when fetching paginated or filtered contact data for review (e.g., after adding or updating contacts)." }, { "slug": "DIALMYCALLS_LIST_DO_NOT_CONTACTS", "name": "List Do Not Contacts", "description": "Tool to list all Do Not Contact entries. Use when you need to review or manage blocked phone numbers or emails in your account. Supports pagination and filtering by type and search." }, { "slug": "DIALMYCALLS_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all contact groups. Use when you need an overview of existing groups before sending messages." }, { "slug": "DIALMYCALLS_LIST_RECORDINGS", "name": "List Recordings", "description": "Tool to list all recordings. Use when you need to retrieve your account's recordings for auditing or bulk management." }, { "slug": "DIALMYCALLS_LIST_TEXTS", "name": "List Text Broadcasts", "description": "Tool to list all outgoing text broadcasts. Use when you need to review past text broadcasts with filters for date, status, and pagination." }, { "slug": "DIALMYCALLS_LIST_VANITY_NUMBERS", "name": "List Vanity Numbers", "description": "Tool to list all vanity numbers. Use when you need to retrieve available vanity phone numbers with pagination support." }, { "slug": "DIALMYCALLS_UPDATE_ACCESS_ACCOUNT", "name": "Update Access Account", "description": "Tool to update an existing access (sub) account by ID. Use when you need to change details like email, phone, name, password, or activation status after account creation." }, { "slug": "DIALMYCALLS_UPDATE_CALLER_ID", "name": "Update Caller ID", "description": "Tool to update an existing caller ID by ID. Use when you need to change its phone number or display name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dialmycalls_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DialMyCalls API Key", "type": "string", "description": "Your DialMyCalls API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dictionary_api", "name": "Dictionary Api", "logo": "https://logos.composio.dev/api/dictionary_api", "description": "The Merriam-Webster Dictionary API provides developers with access to comprehensive dictionary and thesaurus content, including definitions, etymologies, audio pronunciations, synonyms, and antonyms.", "category": "education", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DICTIONARY_API_GET_WORD_DEFINITION_V2", "name": "Get Word Definition", "description": "Retrieve comprehensive dictionary data for a word including definitions, phonetics, etymology, synonyms, and antonyms. Uses the Free Dictionary API (dictionaryapi.dev) - a free, open-source dictionary powered by Wiktionary data. Returns detailed word information including multiple definitions grouped by part of speech, pronunciation audio, example sentences, and related words. Ideal for language learning, writing assistance, and vocabulary exploration. Note: Primarily supports English ('en'). Other languages may have limited coverage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dictionary_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Merriam-Webster API Key", "type": "string", "description": "The API key provided by Merriam-Webster upon registration.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "diffbot", "name": "Diffbot", "logo": "https://logos.composio.dev/api/diffbot", "description": "Diffbot provides AI-powered tools to extract and structure data from web pages, transforming unstructured web content into structured, linked data.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 35, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DIFFBOT_COMBINE_ENTITY_PROFILES", "name": "Combine Entity Profiles", "description": "Combine multiple entity profiles into a unified view using the Diffbot Knowledge Graph. Returns enhanced person or organization data by matching on identifying attributes like name, email, employer, or URL. Use this to enrich partial entity data, merge duplicate profiles, or verify entity identity." }, { "slug": "DIFFBOT_CREATE_BULK", "name": "Create Bulk Extract Job", "description": "Tool to submit a bulk extract job to process multiple URLs with Extract APIs. Use when you need to process many URLs asynchronously using any Extract API. The job will process URLs in the background and provide downloadable results." }, { "slug": "DIFFBOT_CREATE_CUSTOM_API", "name": "Create or Update Custom API", "description": "Tool to create or update the parameters and ruleset of a Custom API. Use this when you need to define custom extraction rules for specific websites that require tailored parsing logic beyond standard Diffbot APIs. Allows defining URL patterns, CSS selectors, extraction rules, and preprocessing filters to extract structured data from websites with unique layouts." }, { "slug": "DIFFBOT_CREATE_KG_BULK_ENHANCE", "name": "Create Bulk Enhance Job", "description": "Tool to submit a bulk enhance job to enrich multiple entities asynchronously. Use when you need to process many Person or Organization records in batch. The API accepts entity descriptions and returns enriched data from the Diffbot Knowledge Graph." }, { "slug": "DIFFBOT_DELETE_CUSTOM_API", "name": "Delete Custom API", "description": "Tool to delete custom API definitions for a given URL pattern. Removes custom extraction rules from your account. Use when you need to remove previously configured custom APIs." }, { "slug": "DIFFBOT_DELETE_KG_ENHANCE_BULKJOB", "name": "Delete KG Enhance Bulkjob", "description": "Tool to delete an Enhance Bulkjob. Removes the bulk job and its results from the system. Use when cleaning up completed or failed jobs." }, { "slug": "DIFFBOT_DOWNLOAD_BULK_RESULTS", "name": "Download Bulk Job Results", "description": "Tool to download results of a bulk enhance job with filtering options via POST request. Use this to retrieve processed results from a completed or running bulk job. Supports multiple export formats (json, jsonl, csv, xls, xlsx) and various filtering options to customize the output. HTTP 200 indicates results are ready, HTTP 201 means the job is still executing." }, { "slug": "DIFFBOT_ENHANCE_ENTITY", "name": "Enhance Entity with Knowledge Graph", "description": "Enrich a person or organization with comprehensive data from the Diffbot Knowledge Graph. Provide identifiers like name, email, employer, or URL and receive detailed entity information including employment history, education, location, skills, and more. Use when you need to gather all publicly available knowledge about a specific person or organization from billions of web pages." }, { "slug": "DIFFBOT_EXTRACT_JOB", "name": "Diffbot Extract Job", "description": "Tool to extract structured job posting data from job listing pages. Returns job title, company, location, salary, requirements, skills, and other job-related information. Use when you need to parse and structure data from job postings." }, { "slug": "DIFFBOT_EXTRACT_LIST", "name": "Diffbot Extract List", "description": "Tool to extract structured data from list-style pages like news indexes, product listings, and directory pages. Returns an array of items with their titles, links, and descriptions. Use when you need to extract multiple items from a page organized as a list or index." }, { "slug": "DIFFBOT_GET_ACCOUNT", "name": "Get Diffbot Account Details", "description": "Retrieves comprehensive Diffbot account information including subscription plan details, credit balance, usage history, and account status. Returns account holder name, email, current plan, available credits, and daily usage statistics for the past 31 days. Use this to check your account's credit balance, monitor API usage patterns, verify account status, or retrieve account metadata." }, { "slug": "DIFFBOT_GET_ANALYZE", "name": "Diffbot Analyze", "description": "Automatically analyzes a web page to determine its type and extract structured data. The Analyze API intelligently classifies pages into types (article, product, discussion, image, video, organization, etc.) and extracts relevant structured data. Use this when you need to process URLs of unknown type or want automatic extraction without specifying the page type in advance." }, { "slug": "DIFFBOT_GET_ARTICLE", "name": "Get Article Data", "description": "Tool to extract information from articles, including authors, publication dates, and images. Use when you need structured metadata from a web article URL." }, { "slug": "DIFFBOT_GET_BULK_DATA", "name": "Get Bulk Job Data", "description": "Tool to download extracted results from a completed bulk job. Use after a bulk job has finished processing to retrieve the data. Supports JSON and CSV formats." }, { "slug": "DIFFBOT_GET_BULK_JOB_STATUS", "name": "Get Bulk Job Status", "description": "Tool to poll the status of a specific Diffbot Knowledge Graph Enhance bulk job. Use when you need to check the progress, completion status, or details of a bulk enhancement job." }, { "slug": "DIFFBOT_GET_BULK_RESULTS", "name": "Get Bulk Job Results", "description": "Tool to download the results of a completed Enhance Bulkjob. Returns enriched records from the bulk job. Use after a bulk enhance job has completed processing." }, { "slug": "DIFFBOT_GET_BULK_SINGLE_RESULT", "name": "Get Bulk Single Result", "description": "Tool to download the result of a single job within a Diffbot bulk enhance job. Returns enriched entity data for a specific input record by its index. Use after a bulk enhance job has completed to retrieve individual results without downloading the entire dataset." }, { "slug": "DIFFBOT_GET_CRAWL_DATA", "name": "Get Crawl Data", "description": "Download extracted results from a completed crawl job. Returns all structured data extracted during crawl processing (articles, products, etc.). Use after a crawl job has completed to retrieve the collected data." }, { "slug": "DIFFBOT_GET_DISCUSSION", "name": "Get Discussion Thread", "description": "Extract structured discussion threads from web pages including forums, comment sections, product reviews, Reddit discussions, and blog comments. Returns posts with author info, timestamps, content, and hierarchical relationships. Useful for analyzing conversations, gathering feedback, or monitoring discussions. Supported platforms: Native comment systems, Disqus, Facebook Comments, Reddit, forum software, and more. Use this when you need to: - Extract all comments/posts from a discussion thread - Analyze user feedback or reviews - Monitor forum discussions or social media threads - Gather structured conversation data with metadata" }, { "slug": "DIFFBOT_GET_EVENT", "name": "Diffbot Get Event", "description": "Tool to extract event details from web pages. Use when you need structured event data such as venue, date, and description." }, { "slug": "DIFFBOT_GET_IMAGE", "name": "Diffbot Get Image", "description": "Tool to extract detailed information about images, including dimensions and recognition data. Use after confirming the image URL is publicly accessible." }, { "slug": "DIFFBOT_GET_KG_COVERAGE_REPORT_BY_ID", "name": "Get KG Coverage Report by ID", "description": "Download Knowledge Graph coverage report by report ID. Returns detailed CSV coverage statistics showing field presence across query results. Use this after generating a coverage report from a DQL query to retrieve the statistical breakdown of field coverage." }, { "slug": "DIFFBOT_GET_PRODUCT", "name": "Diffbot Get Product", "description": "Tool to extract product information such as specifications, prices, availability, and reviews. Use when you need structured product data including specs, pricing, and reviews." }, { "slug": "DIFFBOT_GET_VIDEO", "name": "Get Video Data", "description": "Tool to extract information from videos, including titles, descriptions, and embedded HTML. Use when you need structured video metadata from any web page." }, { "slug": "DIFFBOT_LIST_BULK_JOBS", "name": "List Bulk Jobs", "description": "Tool to list all Bulk jobs associated with a specific token. Use after authenticating to retrieve statuses of all jobs for the account." }, { "slug": "DIFFBOT_LIST_BULK_JOBS_STATUS_FOR_TOKEN", "name": "List Bulk Jobs Status For Token", "description": "Tool to get the status of all bulk enhance jobs for a token. Returns list of all bulk jobs associated with your API token. Use when you need to monitor or retrieve the status of multiple bulk jobs at once." }, { "slug": "DIFFBOT_LIST_CUSTOM_APIS", "name": "List Custom APIs", "description": "Tool to retrieve all Custom APIs and their extraction rules currently defined on your Diffbot token. Use when you need to list, review, or audit custom API configurations for your account." }, { "slug": "DIFFBOT_MANAGE_CRAWL", "name": "Manage Crawl Job", "description": "Manages Diffbot crawl jobs: pause, restart, delete, or view status. Returns list of all active crawl jobs when called without parameters. Use 'name' parameter with action flags (pause=1, restart=1, delete=1) to control specific jobs." }, { "slug": "DIFFBOT_RESOLVE_LOST_ID", "name": "Resolve Lost ID", "description": "Tool to resolve lost IDs in the Knowledge Graph. Use when you need to map a lost identifier to its canonical counterpart for data consistency." }, { "slug": "DIFFBOT_SEARCH", "name": "Diffbot Knowledge Graph Search", "description": "Search the Diffbot Knowledge Graph using DQL (Diffbot Query Language). Query billions of entities including organizations, people, articles, products, and more. Use structured queries to filter by type, fields, and relationships." }, { "slug": "DIFFBOT_SEARCH_CRAWL_DATA", "name": "Search Crawl Job Data", "description": "Tool to query crawl job collections using DQL (Diffbot Query Language). Use when you need to search extracted data from completed crawl or bulk jobs by collection name." }, { "slug": "DIFFBOT_START_BULK", "name": "Start Bulk Job", "description": "Tool to start a Bulk Extract job. Use when processing large numbers of URLs asynchronously. The Diffbot Bulk API uses GET requests with query parameters to create jobs." }, { "slug": "DIFFBOT_START_CRAWL", "name": "Start Crawl Job", "description": "Initiates a Diffbot crawl job that spiders a website starting from seed URLs and processes discovered pages with a specified Extract API. The crawler follows links within the domain, collects structured data (articles, products, etc.), and stores results for download. Use this to systematically extract data from entire websites or sections. Requires Diffbot Plus plan or higher." }, { "slug": "DIFFBOT_STOP_BULK_JOB", "name": "Stop Bulk Job", "description": "Tool to pause (stop) a running Bulk job. Pausing halts further processing of URLs while preserving existing progress. To resume, use the appropriate resume action. Specify the exact job name (case-sensitive) as provided when the job was created." }, { "slug": "DIFFBOT_STOP_KG_BULK_JOB_BY_ID", "name": "Stop KG Bulk Job By ID", "description": "Tool to stop an active Knowledge Graph Enhance bulk job by its ID. Halts processing of a running KG bulk job immediately. Use when you need to stop a specific KG bulk job using its bulkjobId." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "diffbot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Diffbot API Token", "type": "string", "description": "Your Diffbot API token used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "digital_ocean", "name": "DigitalOcean", "logo": "https://logos.composio.dev/api/digital_ocean", "description": "DigitalOcean is a cloud infrastructure provider offering scalable compute platforms with a user-friendly interface.", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DIGITAL_OCEAN_CREATE_CUSTOM_IMAGE", "name": "Create Custom Image", "description": "Creates a custom image in DigitalOcean by importing a Linux VM disk image from a publicly accessible URL. Use this action to upload custom OS images (Ubuntu, Debian, CentOS, Fedora, etc.) that can later be used to create Droplets. The image will be processed asynchronously and its status can be monitored via the returned image ID." }, { "slug": "DIGITAL_OCEAN_CREATE_DATABASE_CLUSTER", "name": "Create Database Cluster", "description": "Creates a new managed database cluster on DigitalOcean. Provisions a database with specified engine (PostgreSQL, MySQL, Valkey, MongoDB, Kafka, or OpenSearch), version, region, size, and node count. Returns connection credentials and cluster details. The cluster will be in 'creating' status initially and take several minutes to become fully operational." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_BLOCK_STORAGE_VOLUME", "name": "Create New Block Storage Volume", "description": "Tool to create a new block storage volume. Use when you need to provision persistent block storage after confirming the target region supports volumes. Example: \"Create a 100 GiB ext4 backup volume named 'db-backup' in nyc1.\"" }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_DOMAIN", "name": "Create New Domain", "description": "Creates a new domain in DigitalOcean's DNS management system. This adds the domain to your DigitalOcean account and allows you to manage its DNS records. Use this action when you need to: - Add a domain to DigitalOcean DNS for DNS hosting and management - Set up a new domain with an optional initial A record pointing to an IP address - Transfer DNS management of an existing domain to DigitalOcean Note: The domain name must be unique within your DigitalOcean account and use a recognized top-level domain (TLD). After creation, you can add additional DNS records using the create domain record action." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_DOMAIN_RECORD", "name": "Create Domain Record", "description": "Tool to create a new DNS record for a domain. Use after confirming domain exists and record specifics." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_DROPLET", "name": "Create New Droplet", "description": "Tool to create a new Droplet. Use when you need to provision a VM with name, region, size, and image. The `image`, `region`, and `size` must be mutually compatible — the chosen `region` must be listed in the image's available regions." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_FIREWALL", "name": "Create New Firewall", "description": "Creates a new cloud firewall with custom inbound and outbound rules. Use this action to set up network security rules that control traffic to and from your Droplets. You can specify rules using IP addresses (CIDR notation), Droplet IDs, tags, Load Balancer UUIDs, or Kubernetes cluster IDs. The firewall can be applied to specific Droplets, all Droplets with certain tags, or scoped to a VPC. Requires at least one inbound rule and one outbound rule. Supports tcp, udp, and icmp protocols." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_KUBERNETES_CLUSTER", "name": "Create New Kubernetes Cluster", "description": "Creates a new DigitalOcean Kubernetes (DOKS) cluster with managed control plane. Required: cluster name, region slug, Kubernetes version slug, and at least one node pool configuration. Optional: tags, auto-upgrade settings, maintenance policy, node labels/taints, and auto-scaling. The cluster will be created in 'provisioning' state and may take several minutes to become 'running'. Query /v2/kubernetes/options endpoint to get available regions, versions, and node sizes." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_LOAD_BALANCER", "name": "Create New Load Balancer", "description": "Tool to create a new load balancer. Use after specifying region, forwarding rules, and targets." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_SSH_KEY", "name": "Create New SSH Key", "description": "Registers a new SSH public key with your DigitalOcean account. The registered key can then be automatically added to new Droplets during creation, enabling secure SSH access. The key must be provided in OpenSSH format (ssh-rsa, ssh-ed25519, etc.) and must not already exist on the account." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_TAG", "name": "Create New Tag", "description": "Creates a new tag in DigitalOcean for organizing and grouping resources. Tags can be applied to droplets, images, volumes, volume snapshots, and databases. If a tag with the same name already exists, the API returns the existing tag (idempotent operation). Tag names must be 1-255 characters containing only letters, numbers, hyphens, or underscores." }, { "slug": "DIGITAL_OCEAN_CREATE_NEW_VPC", "name": "Create New VPC", "description": "Creates a new Virtual Private Cloud (VPC) in a specified DigitalOcean region. VPCs are private networks for isolating your resources. Traffic within a VPC is free and doesn't count toward bandwidth limits. VPCs support Droplets, managed databases, load balancers, and Kubernetes clusters. The first VPC created in a region automatically becomes the default VPC for that region." }, { "slug": "DIGITAL_OCEAN_DELETE_BLOCK_STORAGE_VOLUME", "name": "Delete Block Storage Volume", "description": "Permanently deletes a block storage volume by its unique ID. Use this tool when you need to remove an existing volume. The volume must not be attached to any Droplet before deletion. This operation cannot be undone. Returns HTTP 204 No Content on success. Note: To delete by volume name instead of ID, you would need a different endpoint that accepts both name and region parameters." }, { "slug": "DIGITAL_OCEAN_DELETE_DATABASE_CLUSTER", "name": "Delete Database Cluster", "description": "Tool to delete a database cluster by UUID. Use when you have confirmed the cluster is no longer needed. Returns HTTP 204 No Content on success." }, { "slug": "DIGITAL_OCEAN_DELETE_DOMAIN", "name": "Delete Domain", "description": "Deletes a domain from DigitalOcean DNS. This action is permanent and cannot be undone. Note: If the domain is associated with a Let's Encrypt certificate, delete the certificate first and reconfigure any resources using it (e.g., load balancer SSL termination, Spaces CDN endpoints). Returns 204 No Content on successful deletion." }, { "slug": "DIGITAL_OCEAN_DELETE_DOMAIN_RECORD", "name": "Delete Domain Record", "description": "Tool to delete a DNS record by its record ID for a domain. Use when you need to remove an existing DNS record and have the domain name and record ID. Returns HTTP 204 No Content on success." }, { "slug": "DIGITAL_OCEAN_DELETE_EXISTING_DROPLET", "name": "Delete Existing Droplet", "description": "Tool to delete a Droplet by ID. Deletion is irreversible — all data is permanently lost. Confirm droplet_id with the user and verify a backup or snapshot exists before proceeding." }, { "slug": "DIGITAL_OCEAN_DELETE_FIREWALL", "name": "Delete Firewall", "description": "Tool to delete a firewall by ID. Use when you have confirmed the firewall is no longer needed." }, { "slug": "DIGITAL_OCEAN_DELETE_IMAGE", "name": "Delete Image", "description": "Deletes a user-created custom image or snapshot from your DigitalOcean account by its numeric ID. This action permanently removes the image and cannot be undone. Only custom images and snapshots you own can be deleted - attempting to delete distribution images or marketplace applications will fail with a 403 Forbidden error. Use this when cleaning up unused images that are no longer needed and have no dependent resources." }, { "slug": "DIGITAL_OCEAN_DELETE_LOAD_BALANCER", "name": "Delete Load Balancer", "description": "Tool to delete a load balancer instance by ID. Use when you need to permanently remove an existing load balancer after confirming its ID. Returns 204 No Content on success." }, { "slug": "DIGITAL_OCEAN_DELETE_SSH_KEY", "name": "Delete SSH Key", "description": "Tool to delete a public SSH key. Use when you need to remove an SSH key from your account by its ID or fingerprint after confirming its ownership. Returns 204 No Content on success." }, { "slug": "DIGITAL_OCEAN_DELETE_TAG", "name": "Delete Tag", "description": "Deletes a tag from your DigitalOcean account. When a tag is deleted, it is automatically removed from all resources that were tagged with it. This operation is idempotent - deleting a non-existent tag will also return success (204 No Content)." }, { "slug": "DIGITAL_OCEAN_DELETE_VPC", "name": "Delete VPC", "description": "Delete a VPC (Virtual Private Cloud) by its unique identifier. Use this tool when you need to permanently remove a VPC from your DigitalOcean account. Deletion is irreversible — always confirm the vpc_id with the user before proceeding. **Important Restrictions:** - Cannot delete a VPC that is the default VPC for its region - Cannot delete a VPC that has member resources (droplets, databases, load balancers, etc.) — all resources must be detached or migrated first - VPC must be empty before deletion Returns an empty response (HTTP 204) on successful deletion." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_DATABASES", "name": "List All Databases", "description": "Tool to list all managed database clusters on your account. Supports pagination and filtering by tag. A single request returns only one page; iterate using `page` and `per_page` to retrieve all clusters." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_DOMAINS", "name": "List All Domains", "description": "Lists all DNS domains configured in your DigitalOcean account. Returns domain names, TTL values, and complete zone files. Supports pagination for large domain lists. Use this action to discover available domains, check domain configurations, or as a prerequisite for domain-specific operations like managing DNS records. No parameters are required - calling without parameters returns the first 20 domains (default page size)." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_DROPLETS", "name": "List All Droplets", "description": "Lists all Droplets (virtual machines) in your DigitalOcean account with pagination support. Returns detailed information including: ID, name, specs (memory, vCPUs, disk), status, networking (IP addresses), region, image, size, tags, and VPC. Supports filtering by tag and pagination for large result sets. Use this to get an overview of your infrastructure, find specific droplets, or monitor droplet status. Default page size is 20; accounts with more droplets require explicit pagination (increment `page`, up to `per_page=200`) to avoid silently incomplete results." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_FIREWALLS", "name": "List All Firewalls", "description": "List all cloud firewalls configured in your DigitalOcean account. Returns comprehensive firewall details including inbound/outbound rules, associated droplets, tags, and status. Supports pagination for accounts with many firewalls. Use this to audit network security, discover existing firewall configurations, or retrieve firewall IDs for subsequent operations." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_IMAGES", "name": "List All Images", "description": "Tool to list all images available on your account. Use after obtaining a valid API token to retrieve images optionally filtered by type, private visibility, or tag_name." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_KUBERNETES_CLUSTERS", "name": "List All Kubernetes Clusters", "description": "Tool to list all Kubernetes clusters on your account. Use when you need to enumerate every cluster and handle pagination." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_LOAD_BALANCERS", "name": "List All Load Balancers", "description": "List all load balancers in your DigitalOcean account with pagination support. Returns load balancer details including IDs, names, IP addresses, forwarding rules, health checks, sticky sessions, assigned Droplets, and region information. Use this to get an overview of all load balancers or to find specific load balancers by iterating through results." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_SNAPSHOTS", "name": "List All Snapshots", "description": "Tool to list all snapshots available on your DigitalOcean account. Use when you need to fetch and optionally filter snapshots by resource type (droplet or volume) and handle pagination for inventory or backup workflows." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_SSH_KEYS", "name": "List All SSH Keys", "description": "Lists all SSH keys associated with your DigitalOcean account. Returns SSH key details including ID, name, public key content, and fingerprint. Supports pagination for accounts with many SSH keys. Use this when you need to view available SSH keys or retrieve an SSH key ID for use with other operations like creating droplets." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_TAGS", "name": "List All Tags", "description": "Tool to list all tags in your account. Use when you need to retrieve available tags and pagination info. A single request returns only one page of results; iterate using `page` and `per_page` to retrieve all tags." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_VOLUMES", "name": "List All Volumes", "description": "Tool to list all block storage volumes available on your account. Use when you need to retrieve volumes and optionally filter by name and region." }, { "slug": "DIGITAL_OCEAN_LIST_ALL_VPCS", "name": "List All VPCs", "description": "Tool to list all VPCs on your account. Use when you need an inventory of your VPC resources. A single request returns only one page; iterate through all pages using `page` and `per_page` (max 200) to retrieve the complete set." }, { "slug": "DIGITAL_OCEAN_LIST_APPS", "name": "List Apps", "description": "Tool to list all App Platform apps in your DigitalOcean account. Use when you need to discover app IDs by name, retrieve app metadata, or enumerate all apps with pagination support." }, { "slug": "DIGITAL_OCEAN_LIST_DATABASE_OPTIONS", "name": "List Database Options", "description": "Lists all available configuration options for DigitalOcean managed database clusters, including supported engines (PostgreSQL, MySQL, MongoDB, Valkey, Kafka, OpenSearch), versions, regions, and cluster sizes/layouts. Use this to discover valid parameter values when creating a new database cluster." }, { "slug": "DIGITAL_OCEAN_LIST_DOMAIN_RECORDS", "name": "List Domain Records", "description": "Tool to list all DNS records for a domain. Use when you need to inspect or filter a domain's DNS configuration." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_DOMAIN", "name": "Retrieve Domain", "description": "Retrieves complete details about a specific domain including its TTL and DNS zone file configuration. Use this when you need to check domain settings, verify DNS configuration, or get the full zone file contents for a domain in your DigitalOcean account." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_DOMAIN_RECORD", "name": "Retrieve Domain Record", "description": "Tool to retrieve a specific DNS record for a domain by its record ID. Use when you have the domain name and record ID to fetch record details." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_EXISTING_DROPLET", "name": "Retrieve Existing Droplet", "description": "Retrieve detailed information about a specific DigitalOcean Droplet by its unique numeric ID. Returns comprehensive droplet details including: current status, specifications (memory, CPU, disk), networking configuration (IPv4/IPv6 addresses), image information, region, VPC, backup settings, attached volumes, and tags. Use this when you need to check a droplet's current state, configuration, or IP addresses." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_EXISTING_IMAGE", "name": "Retrieve Existing Image", "description": "Tool to retrieve information about an image by ID or slug. Use when you need detailed metadata for a known image." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_TAG", "name": "Retrieve Tag", "description": "Tool to retrieve an individual tag by name. Use when you need to inspect the resources grouped under a specific tag." }, { "slug": "DIGITAL_OCEAN_RETRIEVE_VPC", "name": "Retrieve VPC", "description": "Tool to retrieve details about a specific VPC by its ID. Use when you need to inspect VPC properties for configuration or auditing." }, { "slug": "DIGITAL_OCEAN_TAG_RESOURCE", "name": "Tag Resource", "description": "Tool to tag resources by name. Use when you need to assign an existing tag to one or more resources. Returns 204 No Content on success." }, { "slug": "DIGITAL_OCEAN_UNTAG_RESOURCE", "name": "Untag Resource", "description": "Tool to untag resources by tag name. Use when you need to remove an existing tag from multiple resources in a single operation." }, { "slug": "DIGITAL_OCEAN_UPDATE_DOMAIN_RECORD", "name": "Update Domain Record", "description": "Tool to update an existing DNS record for a domain. Use when you need to modify any valid attribute of a record after confirming its record ID." }, { "slug": "DIGITAL_OCEAN_UPDATE_VPC", "name": "Update VPC", "description": "Tool to update information about a VPC. Use when you need to modify the name, description, or default status of an existing VPC." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "digitalocean_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "digitalocean_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "DigitalOcean Personal Access Token", "type": "string", "description": "The personal access token generated from the DigitalOcean control panel, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dixa", "name": "Dixa", "logo": "https://logos.composio.dev/api/dixa", "description": "Dixa is a customer service platform that enables businesses to deliver personalized customer support through multiple channels.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dixa_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "API token generated from Dixa Settings → Integrations → API Tokens (administrators only)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dnsfilter", "name": "Dnsfilter", "logo": "https://logos.composio.dev/api/dnsfilter", "description": "DNSFilter provides cloud-based DNS security and content filtering solutions to protect networks from online threats and manage internet usage.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 170, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DNSFILTER_ADD_ALLOWED_APPLICATION", "name": "Add Allowed Application", "description": "Adds a single application to the allow list of a policy in DNSFilter. Use this action when you need to permit a specific application through the filtering policy. The application will be added to the policy's allow_applications list and will be allowed regardless of other blocking rules. This is useful for whitelisting specific applications that need to function while maintaining strict filtering policies for other traffic." }, { "slug": "DNSFILTER_ADD_ALLOWLIST_DOMAINS_TO_POLICIES", "name": "Add Allowlist Domains to Policies", "description": "Tool to bulk add one or more domains to one or more policies' allow lists. Use when you need to permit specific domains across multiple policies efficiently, bypassing filtering rules for trusted sites." }, { "slug": "DNSFILTER_ADD_BLACKLIST_CATEGORY_TO_POLICY", "name": "Add Blacklist Category To Policy", "description": "Tool to add a single category to a policy's blocklist. Use when you need to block a specific content category for a DNS filtering policy. The category will be added to the existing blacklist categories without affecting other policy settings." }, { "slug": "DNSFILTER_ADD_BLACKLIST_DOMAIN_TO_POLICY", "name": "Add Blacklist Domain To Policy", "description": "Tool to add a single domain to a policy's blocklist. Use when you need to block a specific domain under a DNS filtering policy. The domain will be added to the policy's blacklist and blocked from access for users under that policy." }, { "slug": "DNSFILTER_ADD_BLOCKED_APPLICATION", "name": "Add Blocked Application", "description": "Adds a single application to the block list of a policy in DNSFilter. Use this action when you need to block a specific application through the filtering policy. The application will be added to the policy's block_applications list and will be blocked regardless of other allow rules. This is useful for blocking specific applications that should not be accessible while maintaining other filtering policies." }, { "slug": "DNSFILTER_ADD_BLOCKLIST_DOMAINS_TO_POLICIES", "name": "Add Blocklist Domains To Policies", "description": "Tool to add one or more domains to the blocklist of multiple policies at once. Use when you need to block specific domains across multiple filtering policies efficiently. The operation applies all specified domains to all specified policies in a single API call." }, { "slug": "DNSFILTER_ADD_WHITELIST_DOMAIN", "name": "Add Whitelist Domain", "description": "Tool to add a single domain to a policy's allowlist. Use when you need to permit a specific domain for a policy, bypassing filtering rules for that trusted site." }, { "slug": "DNSFILTER_CANCEL_ORGANIZATION", "name": "Cancel Organization", "description": "Sets an organization as 'Canceled' in DNSFilter by its unique ID. Use this action when you need to cancel an organization's service. The organization will be marked as canceled but may not be immediately deleted depending on billing cycles." }, { "slug": "DNSFILTER_CHECK_USER_AGENT_BULK_UPDATES_HAS_MIXED", "name": "Check User Agent Bulk Updates Has Mixed", "description": "Check if user agent attributes are mixed in a bulk selection. Use this to determine whether block pages, policies, sites, or tags differ across the selected user agents before performing bulk updates. This helps identify configuration inconsistencies and plan bulk update operations." }, { "slug": "DNSFILTER_CREATE_API_KEYS", "name": "Create API Keys", "description": "Creates a new API key in DNSFilter for authentication and API access. This action generates a new API key that can be used to authenticate API requests to DNSFilter. The API key is returned only once upon creation and should be stored securely. You can optionally set an expiration date to enforce key rotation policies. Use cases include: - Creating keys for automated integrations - Generating keys for third-party service access - Setting up keys with specific expiration policies IMPORTANT: The API key value is only returned in the creation response. Store it securely as it cannot be retrieved later." }, { "slug": "DNSFILTER_CREATE_CYBER_SIGHT_CSV_EXPORT", "name": "Create CyberSight CSV Export", "description": "Creates a CyberSight CSV export record to track export of CyberSight report information. This action initiates an export of CyberSight activity logs to CSV format. The export is processed asynchronously - the response includes a UUID to track the export status. Once processing is complete, the response will contain a presigned S3 URL to download the CSV file. Common use cases: - Exporting activity logs for compliance reporting - Downloading filtered CyberSight data for analysis - Creating scheduled reports of network activity The export can be filtered by organization, time range, activity type, and various other criteria. Required fields are report_type, start_at, and end_at. The export URL will be available once processing is complete (usually within a few minutes depending on data volume)." }, { "slug": "DNSFILTER_CREATE_IP_ADDRESS", "name": "Create IP Address", "description": "Creates a new IP address entry in DNSFilter for network filtering and policy enforcement. This action registers an IPv4 or IPv6 address with a specific network in DNSFilter, allowing that IP to be subject to the network's filtering policies. Common use cases include: - Adding gateway or router IP addresses - Registering office or branch location IPs - Including failover or WAN link IPs Prerequisites: - Must have a valid network_id (use LIST_NETWORKS to retrieve available networks) - The IP address must be a valid IPv4 or IPv6 format - User must have authorization to create IP addresses in the target network Returns the created IP address details including its unique ID and UUID for future reference." }, { "slug": "DNSFILTER_CREATE_MAC_ADDRESS", "name": "Create MAC Address", "description": "Creates a new MAC address entry in DNSFilter with the specified data. This action registers a MAC address with a specific organization in DNSFilter, allowing that MAC address to be subject to custom filtering policies and block pages. Common use cases include: - Adding device MAC addresses for network access control - Assigning custom policies to specific devices - Managing device-level filtering in BYOD environments Prerequisites: - Must have a valid organization_id (use LIST_ORGANIZATIONS to retrieve available organizations) - The MAC address should be in valid format with colons (e.g., '00:11:22:33:44:55') - User must have authorization to create MAC addresses in the target organization Returns the created MAC address details including its unique ID for future reference." }, { "slug": "DNSFILTER_CREATE_NETWORKS", "name": "Create Networks", "description": "Creates a new network with the specified configuration in DNSFilter. Networks represent locations or groups of devices that will be protected by DNSFilter's DNS filtering policies. Use this action to set up filtering for office locations, remote workers, or any group of devices that need DNS security. Required fields are network name and organization_id. Optional settings include custom block pages, IP addresses, local domain handling, and policy assignments. The action returns the complete network details including its unique ID and UUID for future operations." }, { "slug": "DNSFILTER_CREATE_NETWORKS_BULK", "name": "Bulk Create Networks", "description": "Bulk create multiple networks in DNSFilter with a single API call. Use when you need to create multiple networks at once for efficiency. Each network requires at minimum a name; optional fields like physical address, coordinates, description, and policy assignment can be included for better organization." }, { "slug": "DNSFILTER_CREATE_ORGANIZATION_USER", "name": "Create Organization User", "description": "Adds a new or existing user with the specified email to an organization in DNSFilter. This action creates a user association with a specific organization, assigning them a role (administrator or read_only). If the user email already exists in DNSFilter, it adds that existing user to the organization. If the email is new, it creates a new user account. Common use cases: - Adding administrators to manage organization settings - Granting read-only access to stakeholders or auditors - Managing multi-organization access with permission lists Prerequisites: - Must have a valid organization_id (use LIST_ORGANIZATIONS to retrieve) - User must have administrator permissions in the organization - Email must be valid and unique within the organization Returns the created user details including their ID, role, and contact information." }, { "slug": "DNSFILTER_CREATE_POLICIES", "name": "Create Policies", "description": "Creates a new DNS filtering policy with the specified configuration in DNSFilter. Policies define filtering rules including blocked/allowed categories, domain lists, safe search enforcement, and application controls. Use this action to create filtering policies that can be applied to networks, IP addresses, or MAC addresses for content filtering and security enforcement. Required fields are policy name and organization_id. Optional settings include category blocking, domain allow/block lists, safe search enforcement for multiple search engines, application controls, and YouTube restrictions." }, { "slug": "DNSFILTER_CREATE_SCHEDULED_POLICY", "name": "Create Scheduled Policy", "description": "Creates a new scheduled (time-based) policy in DNSFilter. Scheduled policies allow different filtering policies to be applied during different times of the week based on a weekly schedule divided into 15-minute intervals. Use this action to implement time-based filtering rules such as stricter policies during school/work hours and relaxed policies during evenings or weekends. The policy_ids array must contain exactly 672 integers representing each 15-minute block of the week starting from Monday 12:01am. Each policy ID can be reused for multiple time blocks to create consistent filtering periods." }, { "slug": "DNSFILTER_CREATE_SCHEDULED_REPORT_PREVIEWS", "name": "Create Scheduled Report Previews", "description": "Creates a scheduled report preview for an organization, triggering background generation of the report. This action initiates the generation of a preview for scheduled reports in DNSFilter. The preview includes filtered content statistics and threat summaries based on the organization's DNS filtering activity. Use this when you need to generate a sample report to review filtering effectiveness or prepare regular scheduled reports. The report generation happens asynchronously in the background after creation." }, { "slug": "DNSFILTER_CREATE_SCHEDULED_REPORTS", "name": "Create Scheduled Report", "description": "Creates a scheduled report in DNSFilter to automate regular delivery of network activity and security summaries. Use this to set up periodic reports that track web traffic, threats, and content filtering patterns for your organization. Required fields are organization_id and frequency. Optional settings include threat summaries, content category breakdowns, delivery schedules, and recipient lists. The scheduled report will be generated and sent automatically according to the specified frequency. Use this when you need regular visibility into network filtering activity without manual report generation." }, { "slug": "DNSFILTER_CREATE_USER_AGENT_BULK_DELETES", "name": "Create User Agent Bulk Deletes", "description": "Create a user agent bulk delete operation in DNSFilter. Use when you need to delete multiple user agents at once based on explicit IDs or filter criteria. This action allows you to either: 1. Delete specific agents by providing their IDs in the 'ids' parameter 2. Delete agents matching filter criteria (agent_state, network_ids, tags, etc.) 3. Combine filters with exclude_ids to protect specific agents from bulk deletion The 'queue_uninstall' parameter determines deletion behavior: - True: Hard delete with agent uninstallation - False: Soft delete (agent deactivation) Common use cases: - Remove all unprotected agents from a specific network - Delete agents that haven't received traffic recently - Clean up agents with a specific version or status - Bulk remove agents by tags or organization" }, { "slug": "DNSFILTER_CREATE_USER_AGENT_CLEANUP", "name": "Create User Agent Cleanup", "description": "Creates a user agent cleanup to track bulk deletion of inactive user agents in DNSFilter. This action initiates a cleanup process that identifies and deletes user agents that have been inactive for a specified number of days across one or more organizations. The cleanup helps maintain an accurate inventory by removing stale agent entries that are no longer in use. Use cases: - Removing outdated agents from decommissioned devices - Cleaning up test agents after evaluation periods - Maintaining accurate license counts by removing inactive agents Returns details about the cleanup operation including which agents will be deleted and the status of the cleanup process." }, { "slug": "DNSFILTER_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to remove an API key by its ID. Use when you need to revoke or delete an existing API key from the DNSFilter system. Returns success on 204 No Content." }, { "slug": "DNSFILTER_DELETE_IP_ADDRESS", "name": "Delete IP Address", "description": "Removes an IP address from DNSFilter by its unique ID. Use this action when you need to unregister an IP address from a network, such as when decommissioning equipment or removing access." }, { "slug": "DNSFILTER_DELETE_MAC_ADDRESS", "name": "Delete MAC Address", "description": "Deletes a MAC address entry from DNSFilter by its ID. Use this action when you need to remove a MAC address from your network filtering configuration. You must provide the numeric ID of the MAC address to delete. The action returns the deleted resource information in JSON:API format, including the ID, type, and UUID of the removed MAC address." }, { "slug": "DNSFILTER_DELETE_NETWORKS_BULK", "name": "Delete Networks (Bulk)", "description": "Bulk destroy multiple networks in DNSFilter. Use when you need to delete multiple networks at once or all networks in an organization." }, { "slug": "DNSFILTER_DELETE_POLICIES", "name": "Delete Policies", "description": "Deletes a DNS filtering policy from DNSFilter by its unique ID. Use this action when you need to remove a policy that is no longer needed. Note that the API performs a soft deletion, setting a deleted_at timestamp on the policy record." }, { "slug": "DNSFILTER_DELETE_SCHEDULED_POLICIES", "name": "Delete Scheduled Policies", "description": "Removes a scheduled policy from the DNSFilter database by its unique ID. Use this action when you need to delete a scheduled policy that is no longer needed or was created in error." }, { "slug": "DNSFILTER_DELETE_SCHEDULED_REPORT", "name": "Delete Scheduled Report", "description": "Tool to delete a scheduled report by its ID. Use when you need to remove a scheduled report from the DNSFilter system. Returns the deleted report data." }, { "slug": "DNSFILTER_GET_API_KEYS", "name": "Get API Key", "description": "Tool to retrieve detailed information about a specific API key by its ID. Use when you need to display or verify the details of an existing API key." }, { "slug": "DNSFILTER_GET_APPLICATION_CATEGORY", "name": "Get Application Category", "description": "Retrieves detailed information about a specific DNSFilter application category by its ID. Application categories group applications for filtering policies (e.g., Business, VPN And Proxy, GenAI & ML). Use LIST_APPLICATION_CATEGORIES to discover available category IDs first." }, { "slug": "DNSFILTER_GET_BILLING_ADDRESS", "name": "Get Billing Address", "description": "Retrieves the billing address for a specific DNSFilter organization. Use when you need to access or verify billing contact information, shipping addresses, or organization location details for invoicing purposes." }, { "slug": "DNSFILTER_GET_BILLING_INFORMATION", "name": "Get Billing Information", "description": "Retrieves billing records for a specific DNSFilter organization. Returns a list of billing records including amounts, payment status, and billing periods. Returns an empty list if no billing records exist for the organization. Use this when you need to access billing history, verify payment status, or generate billing reports." }, { "slug": "DNSFILTER_GET_CATEGORY", "name": "Get Category", "description": "Tool to get basic information of a specific category. Use when you need to retrieve details for a category by its ID." }, { "slug": "DNSFILTER_GET_IP_ADDRESS", "name": "Get IP Address", "description": "Retrieves detailed information for a specific IP address record by its ID. Use this action when you need to fetch complete metadata, network relationships, and attributes for a particular IP address that you've already identified (e.g., from the List IP Addresses action). The response includes the IP address in both short and full notation, along with associated network and organization IDs." }, { "slug": "DNSFILTER_GET_MAC_ADDRESS", "name": "Get MAC Address", "description": "Retrieves detailed information for a specific MAC address record by its ID. Use this action when you need to fetch complete metadata and attributes for a particular MAC address that you've already identified (e.g., from the List MAC Addresses action). The response includes the MAC address value, name/label, organization and location associations, and timestamps in JSON:API format." }, { "slug": "DNSFILTER_GET_METRICS_ORGANIZATION_USAGE", "name": "Get Organization Usage Metrics", "description": "Retrieves usage metrics for a DNSFilter organization over a specified date range. Returns DNS query counts, user statistics, and billing information. The maximum allowed date range is 365 days. Use this when you need to analyze organization activity, generate usage reports, or monitor DNS request volumes." }, { "slug": "DNSFILTER_GET_METRICS_ORGANIZATION_USAGE_DETAILED", "name": "Get Organization Usage Detailed Metrics", "description": "Retrieves detailed usage metrics for a specific DNSFilter organization. Use this when you need comprehensive usage statistics including user counts, WiFi networks, roaming clients, and DNS request volumes for a given time period. This endpoint fetches user_count and wifi_count directly from the database and includes roaming client counts." }, { "slug": "DNSFILTER_GET_MY_IP_ADDRESS", "name": "Get My IP Address", "description": "Tool to retrieve the requester's IP address as reported by DNSFilter API. Use when you need to determine the public IP address from which API requests are being made." }, { "slug": "DNSFILTER_GET_NETWORKS_BULK_CREATE", "name": "Get Networks Bulk Create Status", "description": "Tool to check the status of a bulk network creation job. Use when you need to monitor the progress or completion of a bulk network creation operation, or to retrieve the results (successful, failed, and skipped counts) of a completed bulk job." }, { "slug": "DNSFILTER_GET_NETWORKS_BULK_DESTROY", "name": "Get Networks Bulk Destroy Status", "description": "Check the status of a bulk network destroy operation. Use this action after initiating a bulk destroy to monitor progress and see which networks were successfully destroyed, failed, or skipped." }, { "slug": "DNSFILTER_GET_NETWORKS_BULK_UPDATE_STATUS", "name": "Get Networks Bulk Update Status", "description": "Check the status of a bulk network update job. Use this action to monitor the progress and results of a bulk update operation after initiating it. The response indicates completion status, success/failure counts, and IDs of affected networks." }, { "slug": "DNSFILTER_GET_NETWORKS_CSV_EXPORT", "name": "Get Networks CSV Export", "description": "Retrieves a networks CSV export by its ID. Use this action when you need to check the status of a CSV export or get the download URL for the exported data." }, { "slug": "DNSFILTER_GET_NOTES", "name": "Get Notes", "description": "Tool to retrieve notes associated with a specific resource (policy, MSP, or organization) and domain. Use when you need to fetch allow/block notes for a particular domain within a given resource context." }, { "slug": "DNSFILTER_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to get basic information of a specific organization by ID. Use when you need to retrieve detailed organization configuration, billing details, feature flags, and network relationships for a particular organization." }, { "slug": "DNSFILTER_GET_ORGANIZATIONS_USERS", "name": "Get Organization User", "description": "Tool to retrieve user details and permissions for a specific organization. Use when you need to fetch information about a particular user within an organization, including their role, contact details, and permission settings." }, { "slug": "DNSFILTER_GET_POLICIES", "name": "Get Policy", "description": "Tool to get basic information of the specified policy. Use when you need to retrieve details for a specific policy by its ID." }, { "slug": "DNSFILTER_GET_POLICIES_PERMISSIVE_MODE", "name": "Get Policy Permissive Mode", "description": "Tool to retrieve the permissive mode setting for a specific policy. Use when you need to check if a policy has permissive mode enabled or disabled." }, { "slug": "DNSFILTER_GET_POLICY_IP", "name": "Get Policy IP", "description": "Retrieves basic information for a specific Policy IP by its ID. Use this action when you need to fetch DNS server IP addresses (primary and secondary) associated with a particular policy. The response includes the Policy IP's UUID and the DNS server addresses that can be used for DNS filtering." }, { "slug": "DNSFILTER_GET_SCHEDULED_REPORT_PREVIEWS", "name": "Get Scheduled Report Preview", "description": "Tool to retrieve a specific scheduled report preview by its ID. Use when you need to view the preview data for a scheduled report before it's sent." }, { "slug": "DNSFILTER_GET_USER", "name": "Get User", "description": "Tool to get basic information of a specified user by ID. Use when you need to retrieve user details such as email, name, role, and verification status." }, { "slug": "DNSFILTER_GET_USER_AGENT_CLEANUP", "name": "Get User Agent Cleanup", "description": "Tool to get the specific user agent cleanup by ID. Use when you need to retrieve the status and details of a user agent cleanup process, including which agents are marked for deletion and whether the cleanup has completed." }, { "slug": "DNSFILTER_GET_USER_AGENT_CSV_EXPORTS", "name": "Get User Agent CSV Export", "description": "Tool to retrieve a specific user agent CSV export by its ID. Use when you need to check the status of a CSV export and obtain the download URL once ready." }, { "slug": "DNSFILTER_GET_USER_AGENTS_UNINSTALL_PIN", "name": "Get User Agents Uninstall PIN", "description": "Tool to get the uninstall PIN for an organization's user agents. Use when you need to retrieve the PIN required to uninstall user agents protected by PIN authentication." }, { "slug": "DNSFILTER_LIST_ALL_AGENT_LOCAL_USERS", "name": "List All Agent Local Users", "description": "Get all agent local users associated with a user organization. Returns basic information about agent local users including their IDs, types, and relationships. Use filters to narrow results by collection membership, name, or organization." }, { "slug": "DNSFILTER_LIST_ALL_BLOCK_PAGES", "name": "List All Block Pages", "description": "Retrieves all block pages associated with the current user. Block pages are custom HTML pages displayed when users attempt to access blocked websites. Use this when you need a complete list of all configured block pages without pagination." }, { "slug": "DNSFILTER_LIST_ALL_IP_ADDRESSES", "name": "List All IP Addresses", "description": "Retrieves one page of IP addresses across all networks in your organization. Pagination is caller-driven: pass `page` and `per_page` to fetch a specific page; inspect `has_next_page` / `next_page` in the response to advance. Exactly ONE DNSFilter API call is made per invocation." }, { "slug": "DNSFILTER_LIST_API_KEYS", "name": "List API Keys", "description": "Retrieves the list of API keys associated with the authenticated user. Use this to view all API keys, check their expiration status, or filter by specific criteria such as name or organization. Supports filtering by expiration, ID, name, organization, and last four characters of the token." }, { "slug": "DNSFILTER_LIST_APPLICATION_CATEGORIES", "name": "List Application Categories", "description": "Retrieves all available application categories from DNSFilter. Application categories group SaaS applications and services (e.g., Business, Messaging, File Sharing, VPN And Proxy) and are used to apply filtering policies. Returns a list of categories with their IDs, names, UUIDs, and descriptions. Use this to discover available categories before configuring policies or filtering rules." }, { "slug": "DNSFILTER_LIST_APPLICATIONS_ALL", "name": "List All Applications", "description": "Tool to list all applications basic information including deleted ones. Use when you need a comprehensive list of all application entries without filtering out deleted applications." }, { "slug": "DNSFILTER_LIST_BILLING", "name": "List Billing", "description": "Retrieve payment method information from Stripe for a DNSFilter organization. Returns details about the registered payment method including card information, billing address, and expiration dates. Returns empty response if no payment method is configured. Use this when you need to verify payment method setup or check billing details." }, { "slug": "DNSFILTER_LIST_CATEGORIES_ALL", "name": "List All Categories (Including Internal)", "description": "Tool to list all categories including internal categories from DNSFilter. Returns comprehensive category information with pagination support. Use when you need the complete set of categories including system/internal categories." }, { "slug": "DNSFILTER_LIST_CURRENT_USER", "name": "List Current User", "description": "Tool to fetch information about the currently authenticated user. Use when you need to retrieve the profile details of the user associated with the current API credentials, including their name, email, and contact information." }, { "slug": "DNSFILTER_LIST_DICTIONARY_CYBER_SIGHT_ACTIVITY_TYPES", "name": "List CyberSight Activity Types", "description": "Tool to retrieve all available CyberSight activity types. Use when you need the complete dictionary of activity types for CyberSight reports." }, { "slug": "DNSFILTER_LIST_DOMAINS_BULK_LOOKUP", "name": "List Domains Bulk Lookup", "description": "Retrieves domain information and category classifications for multiple FQDNs in a single request. Use this action to perform bulk lookups of domain categories and classifications. This is useful when you need to check the category status of multiple domains at once, rather than making individual requests for each domain. The response includes category information and other domain attributes for each requested FQDN." }, { "slug": "DNSFILTER_LIST_DOMAINS_USER_LOOKUP", "name": "List Domains User Lookup", "description": "Tool to look up all domains associated with a particular FQDN. Returns domain information including category classification, identifiers, and related metadata. Use when you need to retrieve domain details or check the categorization status of a specific fully qualified domain name." }, { "slug": "DNSFILTER_LIST_ENTERPRISE_CONNECTIONS", "name": "List Enterprise Connections", "description": "List all enterprise connections for a DNSFilter organization. Use this to retrieve information about external identity provider integrations and enterprise authentication connections configured for the specified organization." }, { "slug": "DNSFILTER_LIST_INVOICES", "name": "List Invoices", "description": "Retrieves billing invoices for a DNSFilter organization with pagination and sorting support. Returns invoice details including amounts, statuses, creation dates, and due dates. Use this when you need to view billing history, check payment status, or retrieve invoice information for accounting purposes." }, { "slug": "DNSFILTER_LIST_IP_ADDRESSES_ALL", "name": "List All IP Addresses (All Endpoint)", "description": "Tool to retrieve all user-associated IP addresses with basic information. Use when you need to get the complete list of IP addresses using the dedicated /all endpoint with optional pagination." }, { "slug": "DNSFILTER_LIST_MAC_ADDRESSES", "name": "List MAC Addresses", "description": "Tool to list MAC addresses associated with an organization. Use when you need to retrieve basic MAC address information, optionally filtered by organization or paginated." }, { "slug": "DNSFILTER_LIST_NETWORKS_ALL", "name": "List All Networks", "description": "Tool to retrieve ALL networks associated with the user with basic information. Use when you need a comprehensive list of all networks with optional filtering by protection status or search terms. Supports pagination and various options to control the level of detail returned." }, { "slug": "DNSFILTER_LIST_NETWORKS_GEO", "name": "List Networks Geo", "description": "Tool to retrieve networks with geographical information only. Use when you need location data (latitude, longitude, physical address) for networks in your DNSFilter organization. This action returns a simplified view focused on network location data without full configuration details." }, { "slug": "DNSFILTER_LIST_NETWORKS_MSP_ALL", "name": "List All MSP Networks", "description": "Tool to retrieve ALL networks associated with the MSP user with basic information. Use when you need a comprehensive list of all MSP-managed networks for a specific organization ID. Supports pagination and various options to control IP address details." }, { "slug": "DNSFILTER_LIST_NETWORK_SUBNETS", "name": "List Network Subnets", "description": "Tool to retrieve subnets associated with a specific network. Use when you need to get subnet information for a particular network ID." }, { "slug": "DNSFILTER_LIST_ORGANIZATIONS_ALL", "name": "List All Organizations", "description": "Tool to get all organizations with optional filtering by type, MSP relationships, or name. Use when you need to retrieve organizations with specific criteria or pagination. Supports filtering by organization type (normal, msp, sub_organization), MSP ownership, and name patterns." }, { "slug": "DNSFILTER_LIST_ORGANIZATIONS_SETTINGS", "name": "List Organizations Settings", "description": "Tool to get basic information and settings of the specified organization. Use when you need to retrieve organization configuration, settings, or details." }, { "slug": "DNSFILTER_LIST_ORGANIZATIONS_USERS", "name": "List Organization Users", "description": "Tool to get the users for a specified organization. Use when you need to retrieve a list of all users associated with an organization, including their roles, permissions, and authentication details." }, { "slug": "DNSFILTER_LIST_POLICIES", "name": "List Policies", "description": "Tool to retrieve basic information about user-associated policies. Use when you need to list all available policies for filtering configuration or policy management tasks." }, { "slug": "DNSFILTER_LIST_POLICIES_ALL", "name": "List All Policies", "description": "Tool to retrieve ALL user-associated policies with basic information. Use when you need a comprehensive list of all policies associated with the user account, with optional filtering by organization or inclusion of global policies. Supports pagination for large datasets." }, { "slug": "DNSFILTER_LIST_POLICIES_APPLICATION", "name": "List Policies for Application", "description": "Tool to retrieve policies information for a specific application. Use when you need to see which policies allow or block a particular application, along with application and organization details." }, { "slug": "DNSFILTER_LIST_POLICY_IPS", "name": "List Policy IPs", "description": "List policy IPs in your DNSFilter organization. Retrieves basic information about user-associated policy IPs including their DNS server addresses (primary and secondary). Use when you need to view all available policy IP configurations for DNS filtering." }, { "slug": "DNSFILTER_LIST_QP_METHODS", "name": "List QP Methods", "description": "Tool to list all QP (Query Protection) methods available in DNSFilter. Use when you need to retrieve the dictionary of query protection methods." }, { "slug": "DNSFILTER_LIST_SCHEDULED_POLICIES_ALL", "name": "List All Scheduled Policies", "description": "Tool to retrieve ALL scheduled policies associated with the current user. Use when you need a comprehensive list of all time-based policies with pagination support." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QPS", "name": "List Traffic Reports QPS", "description": "Get queries per second (QPS) metrics for DNS traffic over a specified time period. Returns time-series data showing DNS query volume aggregated by configurable time buckets (1 minute, 15 minutes, or 1 day). Use this to analyze traffic patterns, identify peak usage times, and monitor DNS query volumes. Supports extensive filtering by networks, organizations, agents, applications, IP addresses, and traffic type (allowed/blocked/threats)." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QPS_ACTIVE_AGENTS", "name": "List Traffic Reports QPS Active Agents", "description": "Get queries per second (QPS) statistics for roaming clients over a time period. Returns the total number of DNS queries per second for active agents (roaming clients) with optional filtering by agent, organization, application, network, and other criteria. The maximum time range is 20 minutes. Use this action to monitor real-time DNS query loads and analyze traffic patterns for roaming clients." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QPS_ACTIVE_COLLECTIONS", "name": "List Traffic Reports QPS Active Collections", "description": "Tool to retrieve queries per second (QPS) metrics for active collections over a specified time period. Returns the total number of DNS queries per second grouped by collections. The maximum time range is 20 minutes. Use this to monitor query volume and traffic patterns across different collections in your DNSFilter organization." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QPS_ACTIVE_ORGANIZATIONS", "name": "List Traffic Reports QPS Active Organizations", "description": "Retrieves the total number of queries per second (QPS) over a time period for active organizations. Use this action to analyze DNS query traffic patterns and volume for organizations. The maximum time range is 20 minutes between the from and to parameters." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QPS_ACTIVE_USERS", "name": "List Traffic Reports QPS Active Users", "description": "Get the total number of queries per second (QPS) in a time period (maximum 20 minutes) for active users. Use this to monitor traffic patterns and identify high-activity users. Supports filtering by user agents, networks, organizations, IP addresses, and traffic types (allowed/blocked/threats)." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_QUERY_LOGS", "name": "List Traffic Reports Query Logs", "description": "Get query raw logs from DNSFilter traffic reports in a specified period of time. Use this to retrieve detailed DNS query logs with extensive filtering options including time range, domains, networks, user agents, IP addresses, and query results (allowed/blocked). Supports pagination for large result sets." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_AGENTS", "name": "List Traffic Reports Top Agents", "description": "Get the top user agents by DNS traffic volume in a specified time period. Returns ranked list of agents with associated traffic metrics. Use this to identify most active agents, analyze agent-level usage patterns, and monitor individual device or user traffic. Supports filtering by agent attributes, networks, organizations, IP addresses, and traffic type. Results are paginated for large datasets." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_APPLICATION_CATEGORIES", "name": "List Traffic Reports Top Application Categories", "description": "Get the top application categories domains in a period of time. Returns a paginated list of application categories ranked by DNS query volume, with support for filtering by networks, organizations, agents, time range, and traffic type. Use this to analyze which application categories (e.g., social media, streaming, productivity) are most frequently accessed in your network." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_CATEGORIES", "name": "List Traffic Reports Top Categories", "description": "Get the top domain categories accessed during a specified time period. Returns category-level statistics showing which website categories (e.g., Social Networking, News, Streaming) are most frequently accessed. Use this to understand browsing patterns, identify potential policy needs, and analyze category-level traffic trends across your organization." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_COLLECTIONS", "name": "List Traffic Reports Top Collections", "description": "Tool to retrieve the top collections by traffic volume over a specified time period. Returns collection-level metrics showing which collections have the most DNS query activity. Use this to identify the most active collections in your DNSFilter organization and analyze traffic distribution across collections." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_DOMAINS", "name": "List Traffic Reports Top Domains", "description": "Get the top requested domains over a specified time period. Returns a list of the most frequently queried domains with request counts, helping identify popular sites, potential issues, or security concerns. Use this to analyze domain access patterns, monitor bandwidth usage, and detect anomalous traffic. Supports extensive filtering by networks, organizations, agents, applications, IP addresses, and traffic type (allowed/blocked/threats). Results are paginated and can be filtered by domain prefix or FQDN substring." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_NETWORKS", "name": "List Traffic Reports Top Networks", "description": "Get the top networks ranked by DNS traffic volume over a specified time period. Returns network traffic metrics showing which networks generated the most DNS queries. Use this to identify high-traffic networks, monitor network activity levels, and analyze traffic distribution across your organization." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_ORGANIZATIONS", "name": "List Traffic Reports Top Organizations", "description": "Gets the top organizations by DNS traffic volume over a specified time period. Use this action to identify which organizations are generating the most DNS queries. Supports pagination and extensive filtering by time range, networks, agents, applications, IP addresses, and traffic type." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_ORGANIZATIONS_REQUESTS", "name": "List Top Organizations by Requests", "description": "Get the top organizations ranked by total number of DNS requests over a specified time period. Returns organizations with the highest request volumes, useful for identifying most active organizations and analyzing usage patterns. Results are paginated with configurable page size (max 100 per page)." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOP_USERS", "name": "List Traffic Reports Top Users", "description": "Get the top users by DNS query volume over a specified time period. Returns user activity metrics showing which users generated the most DNS traffic, with support for pagination and extensive filtering. Use this to identify high-volume users, analyze user behavior patterns, and monitor individual user activity across networks and organizations." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPLICATIONS_STATS", "name": "List Traffic Reports Total Applications Stats", "description": "Get statistics of number of requests by application in a time period. Returns aggregated data showing how many requests were made to each application, useful for understanding traffic patterns and application usage across your DNSFilter deployment. Use when you need to analyze application-level traffic patterns or generate usage reports." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPS_AGENTS_STATS", "name": "List Traffic Reports Total Applications Agents Stats", "description": "Get statistics of number of requests for roaming clients by application in a period of time. Returns aggregated request counts grouped by application for active agents (roaming clients) with optional filtering by agent, organization, application, network, and other criteria. Use this action to analyze which applications are generating the most DNS traffic from roaming clients." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPS_COLLECTIONS_STATS", "name": "List Traffic Reports Total Applications Collections Stats", "description": "Get statistics of number of requests for collections by application over a specified time period. Returns aggregated data showing how many DNS requests were made for each application within different collections. Use this to analyze application usage patterns across collections and understand which applications are generating the most traffic." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPS_NETWORKS_STATS", "name": "List Traffic Reports Total Applications Networks Stats", "description": "Get statistics showing the number of requests for sites by application across networks over a specified time period. Use this to analyze application usage patterns and DNS query volumes per application across your network infrastructure. Supports extensive filtering by networks, organizations, agents, applications, application categories, IP addresses, and traffic type (allowed/blocked/threats)." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPS_ORGANIZATIONS", "name": "List Traffic Reports Total Applications Organizations", "description": "Tool to get statistics of number of requests for organizations by application in a period of time. Use when you need to analyze application usage patterns across different organizations within a specified time range." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_APPS_USERS_STATS", "name": "List Traffic Reports Total Applications Users Stats", "description": "Get statistics of the number of requests for users by application within a specified time period. Returns detailed application usage data broken down by user, showing which users are accessing which applications and how frequently. Use this to understand application usage patterns across users, identify heavy application users, and analyze user-level application access trends." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORIES", "name": "List Traffic Reports Total Categories", "description": "Get the total number of requests by category for sites in a period of time. Returns aggregated statistics showing how many DNS requests were made to each website category during the specified time range. Use this to understand category-level traffic patterns and analyze DNS request volumes across different website categories." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORIES_AGENTS", "name": "List Traffic Reports Total Categories for Agents", "description": "Get the total number of requests by category for roaming clients (user agents) during a specified time period. Use this to analyze category-level traffic patterns for roaming/mobile users, understand which website categories roaming users access most, and track security threats by category across your roaming user base." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORIES_COLLECTIONS", "name": "List Traffic Reports Total Categories Collections", "description": "Get the total number of DNS requests by category for collections over a specified time period. Returns aggregated statistics showing request counts grouped by website categories across collections. Use this to analyze category-level traffic patterns for collection-based deployments and identify browsing trends." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORIES_ORGS", "name": "List Total Categories by Organizations", "description": "Get the total number of DNS requests by category for organizations over a specified time period. Returns aggregated statistics showing how many requests were made to each category (e.g., Social Networking, News, Streaming) across one or more organizations. Use this to analyze category-level traffic distribution, understand which content types are most accessed, and track trends across organizational boundaries." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORIES_USERS", "name": "List Traffic Reports by Category for Users", "description": "Gets the total number of DNS requests by category for users in a specified time period. Returns aggregated traffic data showing which content categories were accessed and by which users. Use this to analyze user browsing patterns, identify high-traffic categories, or generate security reports for a given time range." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CATEGORY_STATS", "name": "List Traffic Reports Total Category Stats", "description": "Tool to get the total number of stats for a category in a period of time. Use when you need to analyze category-level request statistics including allowed, blocked, and threat requests within a specified time range." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_CLIENT_STATS", "name": "List Traffic Reports Total Client Stats", "description": "Gets the organization network, users and client stats from traffic reports. Returns total and active counts for sites, users, roaming clients, and relays. Use this when you need to understand the deployment scale and active usage of DNSFilter protection across an organization. Note: The time period between 'from' and 'to' parameters must not exceed 20 minutes." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_COLLECTIONS", "name": "List Traffic Reports Total Collections", "description": "Get the total number of DNS requests by collection for sites over a specified time period. Returns aggregated data showing how many requests were made for each collection, optionally grouped by network. Use this to analyze DNS query volume across collections and understand which collections are receiving the most traffic." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_COLLECTIONS_AGENTS", "name": "List Traffic Reports Total Collections Agents", "description": "Get the total number of requests by collection for roaming clients over a specified time period. Returns aggregated request counts grouped by collection with support for extensive filtering by agents, organizations, networks, applications, IP addresses, and traffic type. Use this action to analyze DNS traffic patterns for roaming clients across different collections." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_COLLECTIONS_ORGS", "name": "List Traffic Reports Total Collections Organizations", "description": "Get the total number of DNS requests by collection for organizations over a specified time period. Returns aggregated data showing how many DNS requests were made for each collection within different organizations. Use this to analyze collection usage patterns across organizations and understand which collections are generating the most traffic." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_COLLECTIONS_USERS", "name": "List Traffic Reports Total Collections Users", "description": "Get the total number of DNS requests by collection for users over a specified time period. Returns aggregated request counts grouped by collections and users, with support for time bucketing and extensive filtering. Use this to analyze collection-level traffic patterns per user, identify high-volume collections for specific users, and generate detailed usage reports across organizations." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DEPLOYMENTS", "name": "List Traffic Reports Total Deployments", "description": "Gets the organization deployments information including collections, relays, sync tools, user agents, and users. Use this to retrieve deployment metrics and statistics for an organization or filtered by MSP/networks." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAIN_REQUESTS", "name": "List Traffic Reports Total Domain Requests", "description": "Get the total number of requests for a domain over a specified time period. Returns aggregate request counts for domains, helping analyze domain access patterns and traffic volumes. Supports filtering by domain prefix, networks, organizations, and MSP accounts." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAINS", "name": "List Traffic Reports Total Domains", "description": "Get the total number of requests by domain for sites in a period of time. Returns aggregated statistics showing how many DNS requests were made to each domain during the specified time range. Use this to understand domain-level traffic patterns and analyze DNS request volumes across different domains." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAINS_COLLECTIONS", "name": "List Traffic Reports Total Domains Collections", "description": "Tool to retrieve the total number of DNS requests by domain for collections within a specified time period. Use when you need to analyze which domains are being accessed most frequently, track collection-level traffic patterns, or generate domain usage reports. Supports extensive filtering by agents, networks, organizations, collections, time ranges, and traffic types (allowed/blocked). Results can be grouped by individual collections or aggregated across all collections." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAINS_ORGANIZATIONS", "name": "List Total Domains by Organizations", "description": "Get the total number of DNS requests by domain for organizations over a specified time period. Returns aggregated statistics showing how many requests were made to each domain across one or more organizations. Use this to analyze domain-level traffic distribution, understand which domains are most accessed, and track trends across organizational boundaries." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAIN_STATS", "name": "List Traffic Reports Total Domain Stats", "description": "Tool to get the total number of stats for a domain in a period of time. Use when you need to analyze domain-level request statistics including allowed, blocked, and threat requests within a specified time range." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_DOMAINS_USERS", "name": "List Traffic Reports Total Domains Users", "description": "Gets the total number of DNS requests by domain for users in a period of time. Use this when you need to analyze domain traffic patterns across users or generate traffic reports. At least one query parameter must be provided for the endpoint to work successfully." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_ORGANIZATIONS_REQUESTS", "name": "List Total Organizations Requests", "description": "Get the total number of DNS requests for organizations in a specified time period. Returns time-series data showing request volumes aggregated by configurable time buckets. Use this to analyze overall traffic patterns and monitor DNS query volumes across organizations. Supports extensive filtering by agents, applications, categories, networks, domains, and traffic type." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_ORGANIZATIONS_STATS", "name": "List Traffic Reports Total Organizations Stats", "description": "Retrieves aggregated DNS traffic statistics across organizations for a specified time period. Returns total request counts (allowed, blocked, threats) and the organizations included in the report. Use this to monitor overall traffic patterns, identify security threats, and analyze DNS filtering effectiveness across your DNSFilter deployment." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS", "name": "List Traffic Reports Total Requests", "description": "Get the total number of DNS requests over a specified time period. Returns time-series data showing DNS request volumes aggregated by configurable time buckets (15 minutes or 1 day). Use this to analyze traffic patterns, identify peak usage times, and monitor DNS request volumes broken down by allowed, blocked, and total counts." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS_AGENTS", "name": "List Traffic Reports Total Requests for Agents", "description": "Get the total number of requests for roaming clients (user agents) during a specified time period. Use this to analyze overall traffic volume from roaming/mobile users, track request patterns over time, and monitor total DNS query activity across your roaming user base." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS_COLLECTIONS", "name": "List Traffic Reports Total Requests Collections", "description": "Get the total number of requests for collections over a specified time period. Returns time-series data showing collection request volumes aggregated by configurable time buckets. Use this to analyze collection-specific traffic patterns and identify which collections are being used most frequently." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS_GEO", "name": "List Traffic Reports Total Requests Geo", "description": "Gets the total number of DNS requests by geographic location for organizations in a specified time period. Used for generating heatmap visualizations on the overview dashboard. Returns network IDs, organization IDs, and request counts grouped by geographic location." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS_ORGANIZATIONS", "name": "List Total Requests Organizations", "description": "Get the total number of DNS requests for organizations in a specified time period. Returns time-series data showing request volumes aggregated by configurable time buckets (15 minutes or 1 day). Use this to analyze traffic patterns by organization, identify peak usage times, and monitor DNS request volumes broken down by allowed, blocked, and total counts." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_REQUESTS_USERS", "name": "List Traffic Reports Total Requests Users", "description": "Gets the total number of requests for users in a period of time. Use this to analyze DNS traffic patterns, monitor user activity, and generate reports on request volume. Supports extensive filtering by time range, user agents, networks, applications, and more. Results can be aggregated by different time buckets (15min or 1day) and optionally grouped by individual users." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_ROAMING_CLIENTS", "name": "List Traffic Reports Total Roaming Clients", "description": "Gets the roaming clients information for the specified organization. Use this to retrieve roaming client statistics and deployment information across organizations." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_THREATS", "name": "List Traffic Reports Total Threats", "description": "Get the total number of threats detected over a specified time period. Returns time-series data showing threat volumes aggregated by configurable time buckets (15 minutes or 1 day). Use this to monitor security threats, analyze threat patterns over time, and identify when threat activity is highest across networks and organizations." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_THREATS_AGENTS", "name": "List Traffic Reports Total Threats Agents", "description": "Get the total number of threats for roaming clients in a period of time. Returns time-series data showing threat counts aggregated by configurable time buckets for agents (roaming clients). Use this to analyze security threat patterns and monitor blocked malicious domains or categories detected for roaming clients." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_THREATS_COLLECTIONS", "name": "List Total Threats by Collections", "description": "Tool to retrieve the total number of threats for collections over a specified time period. Use when you need to analyze threat patterns, generate security reports, or monitor DNS-based threats blocked by DNSFilter across different collections." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_THREATS_ORGANIZATIONS", "name": "List Total Threats by Organizations", "description": "Get the total number of threats detected for organizations over a specified time period. Returns aggregated threat statistics showing how many malicious or dangerous DNS requests were identified across one or more organizations. Use this to monitor security posture, identify at-risk organizations, and track threat trends over time." }, { "slug": "DNSFILTER_LIST_TRAFFIC_REPORTS_TOTAL_THREATS_USERS", "name": "List Traffic Reports Total Threats Users", "description": "Get the total number of threats for users in a period of time. Returns aggregated statistics showing security threats detected across users during the specified time range. Use this to monitor user-level threat activity and identify users encountering security issues." }, { "slug": "DNSFILTER_LIST_USER_AGENT_BULK_DELETES_COUNTS", "name": "List User Agent Bulk Deletes Counts", "description": "Tool to get user agent bulk delete counts by filtering criteria. Use when you need to determine how many user agents can be deleted or uninstalled and deleted based on various filters like agent state, network, tags, or online/offline status." }, { "slug": "DNSFILTER_LIST_USER_AGENT_BULK_UPDATES_COUNTS", "name": "List User Agent Bulk Updates Counts", "description": "Tool to get user agent bulk delete counts by filters. Use when you need to determine how many user agents match certain criteria and whether they support remote uninstall. Returns counts of agents that can be deleted vs agents that can be both uninstalled and deleted." }, { "slug": "DNSFILTER_LIST_USER_AGENT_RELEASES", "name": "List User Agent Releases", "description": "Gets a list of latest user agent releases for each unique combination of agent_type, architecture, release_channels, and white label. Use this to discover available agent versions for deployment across different platforms and release channels." }, { "slug": "DNSFILTER_LIST_USER_AGENT_RELEASES_RELAY", "name": "List User Agent Releases Relay", "description": "Tool to get a list of latest relay releases for each unique combination of architecture, release channels, and white label. Use when you need to retrieve available relay agent versions for deployment or updates." }, { "slug": "DNSFILTER_LIST_USER_AGENTS_ALL", "name": "List All User Agents", "description": "Tool to retrieve ALL user agents with basic information. Use when you need a comprehensive list of all user agents, optionally filtered by network, organization, state, status, or tags. Supports pagination and sorting." }, { "slug": "DNSFILTER_LIST_USER_AGENTS_COUNTS", "name": "List User Agents Counts", "description": "Tool to get counts of user agents for each status. Use when you need to retrieve statistics about user agents grouped by their protection status (protected, unprotected, bypassed, etc.). Supports filtering by organization, network, tags, and various other criteria." }, { "slug": "DNSFILTER_LIST_USER_AGENTS_CSV", "name": "List User Agents CSV", "description": "Tool to export user agents as CSV data for a specific organization. Use when you need to retrieve a CSV-formatted list of user agents, optionally including suborg data." }, { "slug": "DNSFILTER_LIST_USER_AGENTS_TAGS", "name": "List User Agent Tags", "description": "Retrieves all tags used by user agents on a network or organization. Tags help categorize and organize user agents for easier management and policy application. Use when you need to view available tags for filtering or grouping user agents." }, { "slug": "DNSFILTER_LIST_USERS_ALL", "name": "List All Users", "description": "Tool to get all users basic information with optional pagination. Use when you need to retrieve a list of users in the organization with their profile details including name, email, and contact information." }, { "slug": "DNSFILTER_LOOKUP_NETWORK_BY_IP", "name": "Lookup Network By IP", "description": "Tool to get basic network information based on an IP address lookup. Use when you need to identify which network an IP belongs to and retrieve its block page configuration settings." }, { "slug": "DNSFILTER_REMOVE_ALLOWED_APPLICATION", "name": "Remove Allowed Application", "description": "Removes a single application from the allow list of a policy in DNSFilter. Use this action when you need to revoke access for a specific application that was previously allowed. The application will be removed from the policy's allow_applications list and will no longer bypass filtering rules. This is useful for tightening security policies or removing applications that are no longer needed while maintaining the rest of the filtering configuration." }, { "slug": "DNSFILTER_REMOVE_ALLOWLIST_DOMAINS_FROM_POLICIES", "name": "Remove Allowlist Domains from Policies", "description": "Tool to remove one or more domains from one or more policies' allow lists. Use when you need to bulk remove previously allowed domains from multiple policies at once, useful for security updates or policy cleanup." }, { "slug": "DNSFILTER_REMOVE_BLACKLIST_CATEGORY", "name": "Remove Blacklist Category", "description": "Tool to remove a single category from a policy's blocklist. Use when you need to unblock a specific content category that was previously restricted in a DNS filtering policy. The category will be removed from the policy's blacklist_categories array, allowing domains in that category to be accessed." }, { "slug": "DNSFILTER_REMOVE_BLACKLIST_DOMAIN_FROM_POLICY", "name": "Remove Blacklist Domain From Policy", "description": "Tool to remove a single domain from a policy's blocklist. Use when you need to unblock a specific domain that was previously blocked by a policy, such as when correcting false positives or updating filtering rules. The domain will be removed from the specified policy's blacklist_domains list." }, { "slug": "DNSFILTER_REMOVE_BLOCKED_APPLICATION", "name": "Remove Blocked Application", "description": "Removes a single application from the block list of a policy in DNSFilter. Use this action when you need to unblock a specific application that was previously blocked by the filtering policy. The application will be removed from the policy's block_applications list and will no longer be blocked by this policy. This is useful for allowing previously blocked applications while maintaining other filtering rules." }, { "slug": "DNSFILTER_REMOVE_BLOCKLIST_DOMAINS", "name": "Remove Blocklist Domains", "description": "Tool to remove one or more domains from one or more policy block lists in bulk. Use when you need to unblock domains across multiple policies simultaneously, such as when removing false positives or updating block list policies." }, { "slug": "DNSFILTER_REMOVE_WHITELIST_DOMAIN_FROM_POLICY", "name": "Remove Whitelist Domain from Policy", "description": "Tool to remove a single domain from a policy's whitelist/allowlist. Use when you need to revoke access for a previously allowed domain, useful for security updates or policy cleanup." }, { "slug": "DNSFILTER_RESEND_USER_INVITE", "name": "Resend User Invite", "description": "Tool to resend an invitation email to a user in a DNSFilter organization. Use when a user hasn't received their original invitation or needs a new invitation link. The invitation will be sent to the user's registered email address." }, { "slug": "DNSFILTER_SUGGEST_DOMAIN_THREAT", "name": "Suggest Domain Threat", "description": "Submit a domain threat report to DNSFilter for review and potential threat categorization. Use this action when you have identified a suspicious or malicious domain that should be reported to DNSFilter. The submission will be reviewed by DNSFilter's security team and may result in the domain being categorized as a threat, which will improve protection for all DNSFilter users. This is typically used for reporting newly discovered phishing sites, malware distribution domains, spam sources, or other malicious domains that are not yet properly categorized." }, { "slug": "DNSFILTER_UPDATE_BILLING_ADDRESS", "name": "Update Billing Address", "description": "Updates the billing address for a DNSFilter organization. Use this when you need to modify billing contact information, shipping addresses, or invoice recipient details for an organization." }, { "slug": "DNSFILTER_UPDATE_CURRENT_USER", "name": "Update Current User", "description": "Updates profile attributes for the currently authenticated DNSFilter user. Use this action to modify the user's first name, last name, or phone number. At least one field must be provided in the update request. Common use cases include updating contact information or correcting profile details." }, { "slug": "DNSFILTER_UPDATE_ENTERPRISE_CONNECTION", "name": "Update Enterprise Connection", "description": "Updates an existing enterprise connection for SSO authentication in DNSFilter. Use this action to modify enterprise connection settings such as display name, identity provider configuration, authorized domains, role mappings, and OAuth credentials. Commonly used for updating OIDC, Okta, Azure AD, or Google Workspace SSO integrations. Note: To set a custom login URL, update the organization's 'unique_id' attribute using the PATCH /v1/organizations endpoint." }, { "slug": "DNSFILTER_UPDATE_IP_ADDRESS", "name": "Update IP Address", "description": "Updates an existing IP address record in DNSFilter with new data. This action modifies an IP address entry by its ID, allowing you to change the IP address itself, reassign it to a different network or organization, or update its dynamic hostname. Common use cases include: - Updating an IP address when your gateway IP changes - Moving an IP address to a different network - Setting or updating the dynamic hostname for better identification Prerequisites: - Must have a valid IP address ID (use GET_IP_ADDRESS or LIST_IP_ADDRESSES to retrieve IDs) - Must provide all required fields (address, organization_id, network_id) even if only changing one - User must have authorization to update IP addresses in the target network" }, { "slug": "DNSFILTER_UPDATE_MAC_ADDRESSES", "name": "Update MAC Address", "description": "Updates an existing MAC address entry in DNSFilter with new configuration. This action allows you to modify MAC address settings including the physical address itself, organization assignment, filtering policies, block pages, and custom filter values. Common use cases include: - Correcting a MAC address that was entered incorrectly - Reassigning a MAC address to a different organization - Applying custom filtering policies to specific devices - Setting custom block pages for certain MAC addresses Prerequisites: - Must have a valid MAC address ID (use LIST_MAC_ADDRESSES or LIST_ALL_MAC_ADDRESSES to retrieve) - Must provide organization_id in the update payload - User must have authorization to update MAC addresses Notes: - If both policy_id and scheduled_policy_id are provided, scheduled_policy_id takes precedence - The filter_value defaults to the MAC address without colons if not specified - Returns HTTP 422 if the update cannot be processed with the specified data" }, { "slug": "DNSFILTER_UPDATE_NETWORKS_BULK", "name": "Bulk Update Networks", "description": "Tool to bulk update multiple networks with specified configuration changes. Use when you need to apply the same settings (policy, block page, VPN status) to multiple networks simultaneously instead of updating them one by one. This action creates an asynchronous bulk update job that processes multiple networks. Common use cases include: - Applying a new policy to multiple branch office networks - Enabling/disabling legacy VPN across multiple locations - Standardizing block page settings for multiple networks - Updating scheduled policies for multiple sites The operation returns a job ID immediately and processes updates in the background. For updating all networks in an organization, use ids='all' and provide organization_id." }, { "slug": "DNSFILTER_UPDATE_ORGANIZATIONS", "name": "Update Organizations", "description": "Updates an existing organization with the specified data in DNSFilter. Use this action to modify organization information such as name, billing contacts, address, licensing, MSP management settings, or custom login configurations. Common use cases include updating billing information, changing the organization name, adjusting license quantities, or configuring enterprise SSO settings." }, { "slug": "DNSFILTER_UPDATE_ORGANIZATIONS_USERS", "name": "Update Organization User", "description": "Updates a user or permissions within an organization in DNSFilter. Use this action to modify user details such as email, name, phone, role, or organization permissions. Common use cases include updating contact information, changing user roles between administrator and read-only, or modifying organization access permissions." }, { "slug": "DNSFILTER_UPDATE_POLICIES", "name": "Update Policies", "description": "Updates an existing DNS filtering policy with the specified configuration in DNSFilter. Use this action to modify filtering rules including blocked/allowed categories, domain lists, safe search enforcement, and application controls for an existing policy. Only include fields you want to update - all fields are optional except the policy ID. Common use cases include enabling/disabling safe search, updating domain allow/block lists, modifying category blocking rules, and changing application controls. Use the append_domains parameter to add to existing domain lists rather than replacing them." }, { "slug": "DNSFILTER_UPDATE_POLICIES_APPLICATION", "name": "Update Policies Application", "description": "Updates a policy with the specified application data, configuring which policies allow or block access to an application. This action assigns allow and block policy rules to a specific application, controlling which users (based on their assigned policies) can access the application. Common use cases include: - Setting up application-level filtering rules for specific user groups - Blocking access to certain applications for specific policies - Allowing access to applications only for designated policies Prerequisites: - Must have a valid organization_id - Must have a valid application_id (use LIST_APPLICATIONS to retrieve available applications) - Must provide both allow_policies and block_policies lists (can be empty arrays) - User must have authorization to update policies in the target organization" }, { "slug": "DNSFILTER_UPDATE_POLICIES_PERMISSIVE_MODE", "name": "Update Policy Permissive Mode", "description": "Tool to update the permissive mode setting for a specific policy. Use when you need to enable or disable permissive mode for a DNS filtering policy." }, { "slug": "DNSFILTER_UPDATE_SCHEDULED_POLICIES", "name": "Update Scheduled Policies", "description": "Updates an existing scheduled policy in DNSFilter with the specified data. Use this action to modify time-based policy configurations that control filtering rules based on schedules throughout the week. Only include fields you want to update - all fields except the ID are optional. Scheduled policies allow you to apply different filtering policies at different times. Common use cases include stricter filtering during work hours, relaxed filtering during breaks, or different policies for weekdays vs weekends." }, { "slug": "DNSFILTER_UPDATE_SCHEDULED_REPORTS", "name": "Update Scheduled Reports", "description": "Updates an existing scheduled report configuration in DNSFilter. Use this action to modify report frequency, delivery schedule, content options, or recipient settings. Common use cases include changing the day of the week for report delivery, adjusting which content categories are included, or enabling/disabling threat summaries." }, { "slug": "DNSFILTER_UPDATE_USER_AGENT_CLEANUPS", "name": "Update User Agent Cleanups", "description": "Updates a user agent cleanup operation in DNSFilter. Use this to modify the inactivity threshold or start/restart a cleanup job. This action allows you to: 1. Change the 'inactive_for' threshold to adjust which agents are included in the cleanup (automatically restarts the job) 2. Start the cleanup process by setting 'start' to true (only works if 'inactive_for' is not provided) Common use cases: - Adjust the inactivity threshold from 30 to 45 days to be more conservative about deletions - Start a previously configured cleanup job that hasn't been started yet - Restart a cleanup job with a new threshold to recalculate which agents should be deleted Note: When 'inactive_for' is provided, it takes precedence and restarts the job, making 'start' parameter ineffective." }, { "slug": "DNSFILTER_VALIDATE_AUTH0_JWT", "name": "Validate Auth0 JWT", "description": "Tool to validate a JWT with Auth0. Use when you need to confirm token validity before making DNSFilter API calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dnsfilter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DNSFilter API Key", "type": "string", "description": "The API key generated from the DNSFilter dashboard, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dock_certs", "name": "Dock Certs", "logo": "https://logos.composio.dev/api/dock_certs", "description": "Dock Certs is a platform that enables organizations and developers to issue, manage, and verify verifiable credentials and decentralized identities, making data fraud-proof and instantly verifiable.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCK_CERTS_CREATE_API_KEY", "name": "Create API Key", "description": "Tool to create an API key. Use when you need to generate a new API key with optional alias and IP allowlist." }, { "slug": "DOCK_CERTS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook endpoint. Use when you need Dock.io to push event notifications to your service." }, { "slug": "DOCK_CERTS_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete a specific API key. Use after confirming the API key's ID via list_api_keys." }, { "slug": "DOCK_CERTS_DELETE_CREDENTIAL", "name": "Delete Credential", "description": "Tool to delete a verifiable credential. Use after confirming the credential is no longer needed." }, { "slug": "DOCK_CERTS_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a specific tag. Use when you have a tag ID and want to permanently remove it." }, { "slug": "DOCK_CERTS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use after confirming the webhook's ID via list_webhooks." }, { "slug": "DOCK_CERTS_RETRIEVE_API_KEY", "name": "Retrieve API Key", "description": "Tool to retrieve details of an API key. Tries single-key endpoint first, then falls back to listing and filtering." }, { "slug": "DOCK_CERTS_RETRIEVE_API_KEYS", "name": "Retrieve API Keys", "description": "Tool to list all API keys. Use when you need to retrieve all API keys for the authenticated account." }, { "slug": "DOCK_CERTS_RETRIEVE_CREDENTIAL", "name": "Retrieve Credential", "description": "Tool to retrieve a verifiable credential by its unique ID. If a password was used to persist it, include the same password to decrypt and return the full credential. Otherwise, only metadata is returned." }, { "slug": "DOCK_CERTS_RETRIEVE_CREDENTIALS", "name": "Retrieve Credentials", "description": "Tool to retrieve a list of credential metadata. Use when you need to collect credential details with optional pagination or filtering after authentication." }, { "slug": "DOCK_CERTS_RETRIEVE_DID", "name": "Retrieve DID Document", "description": "Tool to retrieve a DID Document by its DID. Use after you have a valid DID to resolve and inspect its DID Document." }, { "slug": "DOCK_CERTS_RETRIEVE_REGISTRIES", "name": "Retrieve Revocation Registries", "description": "Tool to retrieve a list of revocation registries. Use when you need to list all registries created by the authenticated account with optional pagination and filtering." }, { "slug": "DOCK_CERTS_RETRIEVE_WEBHOOK", "name": "Retrieve Webhook", "description": "Tool to retrieve a specific webhook's details. Use after confirming you have a valid webhook ID." }, { "slug": "DOCK_CERTS_RETRIEVE_WEBHOOKS", "name": "Retrieve Webhooks", "description": "Tool to list configured webhooks. Use when you need to retrieve all webhook endpoints configured for your account." }, { "slug": "DOCK_CERTS_VERIFY", "name": "Verify Credential or Presentation", "description": "Tool to verify a verifiable credential or presentation. Use after receiving a credential or presentation from an issuer." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dock_certs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Dock Certs API Key", "type": "string", "description": "The API key provided by Dock Certs for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docker_hub", "name": "Docker Hub", "logo": "https://logos.composio.dev/api/docker_hub", "description": "Docker Hub is a service provided by Docker for finding and sharing container images with your team.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCKER_HUB_ADD_ORG_MEMBER", "name": "Add Organization Member", "description": "Invite a user to join a Docker Hub organization. Sends an invitation email to the specified user (by Docker ID or email). The user must accept the invitation to become a member. Requires owner or admin privileges on the target organization." }, { "slug": "DOCKER_HUB_CREATE_ORGANIZATION", "name": "Create Docker Hub Organization", "description": "Create a new Docker Hub organization. Note: This endpoint requires JWT authentication obtained via /v2/users/login and may have restricted access." }, { "slug": "DOCKER_HUB_CREATE_REPOSITORY", "name": "Create Docker Hub Repository", "description": "Creates a new Docker Hub repository under the specified namespace. Use this to programmatically create public or private repositories for storing Docker images. Requires proper authentication with write permissions to the namespace." }, { "slug": "DOCKER_HUB_CREATE_WEBHOOK", "name": "Create Docker Hub Webhook", "description": "Create a webhook on a Docker Hub repository to receive notifications on image push events. This is a two-step process: 1. Create the webhook with a name 2. Add a hook URL to the webhook Requires admin permissions on the repository." }, { "slug": "DOCKER_HUB_DELETE_IMAGE", "name": "Delete Repository Images", "description": "Delete one or more images from your Docker Hub namespace using the bulk delete API. IMPORTANT REQUIREMENTS: - You must own the namespace (your username or an organization you admin) - You cannot delete images from 'library' (official Docker images) - Images are identified by SHA256 digest (get from LIST_IMAGES action) USAGE: 1. First use LIST_IMAGES to get image digests for your repository 2. Then call this action with the namespace, repository, and digest(s) Example: DELETE_IMAGE( namespace=\"myusername\", manifests=[{\"repository\": \"myapp\", \"digest\": \"sha256:abc123...\"}] ). WARNING: Deletion is permanent and irreversible — obtain explicit user confirmation before calling this action." }, { "slug": "DOCKER_HUB_DELETE_ORGANIZATION", "name": "Delete Docker Hub Organization", "description": "Permanently deletes a Docker Hub organization. Requires owner permissions on the organization. This action is idempotent - deleting a non-existent organization returns success (404 treated as success). WARNING: Deletion is irreversible and removes all associated repositories, teams, and members." }, { "slug": "DOCKER_HUB_DELETE_REPOSITORY", "name": "Delete Docker Hub Repository", "description": "Permanently deletes a Docker Hub repository and all its images/tags. WARNING: This action is irreversible. All images, tags, and metadata will be permanently removed. This operation is idempotent - deleting a non-existent repository returns success. You must have admin/owner permissions on the repository to delete it." }, { "slug": "DOCKER_HUB_DELETE_TAG", "name": "Delete Repository Tag", "description": "Permanently delete a specific tag from a Docker Hub repository. Requirements: - Must have write/admin access to the repository - The namespace must be your username or an organization you belong to - This action is irreversible - the tag will be permanently removed Note: Cannot delete tags from official Docker Hub images (library namespace)." }, { "slug": "DOCKER_HUB_DELETE_TEAM", "name": "Delete Docker Hub Team", "description": "Permanently deletes a team from a Docker Hub organization. This operation is idempotent - deleting a non-existent team will succeed silently. Requires organization admin permissions. Use DOCKER_HUB_LIST_TEAMS to find available teams before deletion." }, { "slug": "DOCKER_HUB_DELETE_WEBHOOK", "name": "Delete Docker Hub repository webhook", "description": "Deletes a specific webhook from a Docker Hub repository. Use this tool to remove webhook configurations from repositories you own or have admin access to. This is useful for cleaning up outdated, misconfigured, or no longer needed webhooks. Prerequisites: - You must have admin access to the repository - The repository and webhook must exist - Use the list webhooks action first to get the webhook ID Returns a success message if the webhook was deleted, or an error if the webhook doesn't exist or you lack permission to delete it." }, { "slug": "DOCKER_HUB_GET_IMAGE", "name": "Get Docker Hub Image", "description": "Retrieve details about a specific platform-specific image variant by its digest. This tool searches through repository tags to find and return metadata for an image matching the specified SHA256 digest. Returns architecture, OS, size, status, and timestamps. Use LIST_IMAGES first to discover available digests, then use this tool to get details about a specific image variant. Example: GET_IMAGE(namespace=\"library\", repository=\"ubuntu\", digest=\"sha256:a4453623f2f8319cfff65c43da9be80fe83b1a7ce689579b475867d69495b782\")" }, { "slug": "DOCKER_HUB_GET_REPOSITORY", "name": "Get Docker Hub Repository", "description": "Retrieves detailed information about a specific Docker Hub repository. Use this to get repository metadata including description, star/pull counts, permissions, and configuration. Works with both public and private repositories (authentication required for private repos)." }, { "slug": "DOCKER_HUB_GET_TAG", "name": "Get Docker Hub Tag", "description": "Tool to retrieve details of a specific Docker Hub repository tag. Use after confirming the namespace, repository, and tag name." }, { "slug": "DOCKER_HUB_GET_TEAM", "name": "Get Docker Hub Team", "description": "Retrieve details of a specific team (group) within a Docker Hub organization. Returns the team's ID, name, and description. Requires organization membership with appropriate permissions to view team details." }, { "slug": "DOCKER_HUB_GET_WEBHOOK", "name": "Get Docker Hub Webhook", "description": "Retrieves details of a specific Docker Hub webhook by its ID. Use this tool when you need to inspect an existing webhook's configuration, including its target URL, configured events, and active status. You must have admin or write access to the repository to retrieve webhook details. Prerequisites: - You must have admin or write access to the repository - The webhook ID must exist (can be obtained from the list webhooks action) Returns the webhook's ID, name, target URL, events, active status, and timestamps." }, { "slug": "DOCKER_HUB_LIST_ORG_ACCESS_TOKENS", "name": "List Organization Access Tokens", "description": "Tool to list all organization access tokens for a Docker Hub organization. Use when you need to view or audit access tokens associated with an organization. Requires appropriate organization permissions to view tokens." }, { "slug": "DOCKER_HUB_LIST_ORGANIZATIONS", "name": "List Docker Hub Organizations", "description": "List Docker Hub organizations that the authenticated user belongs to. Returns a paginated list of organizations with details like name, company, and badge status; some metadata fields may be absent — use org name for follow-up detail calls when complete metadata is required. An empty result is valid and indicates the user belongs to no organizations. Use this to discover which organizations a user has access to before performing org-specific operations." }, { "slug": "DOCKER_HUB_LIST_ORG_MEMBERS", "name": "List Docker Hub Organization Members", "description": "Lists members of a Docker Hub organization with their roles and details. Use this tool to: - Audit organization membership - View member roles (owner, member) - Check team assignments for members - Export organization member lists Requirements: - You must have access to the organization (owner or member role) - Authentication via Personal Access Token (PAT) which is exchanged for JWT Note: This endpoint requires organization-level access and proper authentication." }, { "slug": "DOCKER_HUB_LIST_REPOSITORIES", "name": "List Docker Hub Repositories", "description": "Tool to list repositories under a namespace. Use when you need to enumerate repositories within a specific Docker Hub namespace, with optional filtering and pagination." }, { "slug": "DOCKER_HUB_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "List members of a Docker Hub team (group) within an organization. Returns a paginated list of team members with their user details. Requires organization membership with appropriate permissions to view team members." }, { "slug": "DOCKER_HUB_LIST_TEAMS", "name": "List Organization Teams", "description": "List all teams (groups) within a Docker Hub organization. Requires organization membership with appropriate permissions. Teams in Docker Hub are called 'groups' in the API." }, { "slug": "DOCKER_HUB_LIST_WEBHOOKS", "name": "List Docker Hub repository webhooks", "description": "Lists all webhooks configured for a Docker Hub repository. Use this tool to retrieve webhook configurations for repositories you own or have admin access to. Webhooks are triggered when specific events occur in the repository (e.g., image push). Prerequisites: - You must have admin or write access to the repository - The repository must exist under the specified namespace Returns a paginated list of webhooks with their IDs, names, target URLs, configured events, and status." }, { "slug": "DOCKER_HUB_REMOVE_ORG_MEMBER", "name": "Remove Organization Member", "description": "Remove a member from a Docker Hub organization. This action revokes the user's access to the organization and all its repositories. Requires organization admin privileges. The operation is idempotent - removing a non-member will not cause an error." }, { "slug": "DOCKER_HUB_REMOVE_TEAM_MEMBER", "name": "Remove Team Member", "description": "Remove a user from a Docker Hub organization team (group). Use this action to revoke a user's membership from a specific team. The operation is idempotent - removing a user who is not a member will succeed silently." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docker_hub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Docker Hub Personal Access Token", "type": "string", "description": "Your Docker Hub Personal Access Token (PAT) for authentication. Generate one at https://hub.docker.com/settings/security.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docnify", "name": "Docnify", "logo": "https://logos.composio.dev/api/docnify", "description": "Docnify is a digital signing platform that simplifies the document signing process, offering integrations with tools like Figma, Jira, Trello, and Google Docs to create a unified workspace.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCNIFY_ADD_DOCUMENT_RECIPIENT", "name": "Add Document Recipient", "description": "Tool to add a recipient to a document. Use after confirming the document's ID. Optionally specify signing order and authentication options." }, { "slug": "DOCNIFY_CREATE_DOCUMENT_FIELDS", "name": "Create Document Fields", "description": "Tool to create one or more fields on a document. Use after fetching a document to add fields before sending." }, { "slug": "DOCNIFY_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a specific document by its ID. Use when you have confirmed the document should be permanently removed." }, { "slug": "DOCNIFY_DELETE_DOCUMENT_FIELDS", "name": "Delete Document Field", "description": "Tool to delete a field from a document. Use when you need to remove a specific field from an existing document." }, { "slug": "DOCNIFY_DELETE_DOCUMENT_RECIPIENT", "name": "Delete document recipient", "description": "Tool to remove a recipient from a document. Use after verifying document and recipient IDs to revoke access." }, { "slug": "DOCNIFY_GET_DOCUMENT", "name": "Get Document", "description": "Tool to fetch a specific document by its ID. Use when you need to view a document's current state and metadata." }, { "slug": "DOCNIFY_GET_TEMPLATE", "name": "Get Template", "description": "Tool to fetch a specific template by its ID. Use to view a template's details and metadata." }, { "slug": "DOCNIFY_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to list documents in the Docnify account." }, { "slug": "DOCNIFY_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates in the Docnify account." }, { "slug": "DOCNIFY_RESEND_DOCUMENT", "name": "Resend Document", "description": "Tool to resend a document for signing. Use after verifying the document ID to re-trigger signing notifications." }, { "slug": "DOCNIFY_SEND_DOCUMENT", "name": "Send Document", "description": "Tool to send a document for signing. Use after confirming the document's ID, adding recipients, and uploading content." }, { "slug": "DOCNIFY_UPDATE_DOCUMENT_FIELDS", "name": "Update Document Fields", "description": "Tool to update metadata of document fields. Use when you need to change labels or requirements of existing fields before sending." }, { "slug": "DOCNIFY_UPDATE_DOCUMENT_RECIPIENT", "name": "Update Document Recipient", "description": "Tool to update a recipient's details (name, email, role) on a document. Use after confirming document and recipient IDs. Provide at least one field to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docnify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Docnify API Key", "type": "string", "description": "The API key used for authenticating requests to the Docnify API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docparser", "name": "Docparser", "logo": "https://logos.composio.dev/api/docparser", "description": "Docparser is the most advanced cloud based document parsing and automation tool in the market today.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCPARSER_GET_MULTIPLE_DOCUMENT_RESULTS", "name": "Get Multiple Document Results", "description": "Tool to retrieve parsed data from multiple documents processed by a specific parser. Use when you need to fetch results for multiple documents at once. Returns up to 100 results by default, with a maximum of 10000." }, { "slug": "DOCPARSER_GET_PARSER_MODELS", "name": "Get Parser Models", "description": "Tool to retrieve all model layouts for a specific parser. Use when you need to list different layout configurations within a parser that help handle document variations." }, { "slug": "DOCPARSER_LIST_PARSERS", "name": "List Parsers", "description": "Tool to retrieve all Document Parsers linked to your account. Use when you need to view available parsers or obtain parser IDs for subsequent operations." }, { "slug": "DOCPARSER_PING", "name": "Ping API", "description": "Tool to test API authentication and connection health check for Docparser API. Use when you need to verify that API credentials are valid and the connection is working." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docparser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "You can obtain and reset your secret API key in the API Settings of your Docparser Account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docraptor", "name": "DocRaptor", "logo": "https://logos.composio.dev/api/docraptor", "description": "The best and easiest HTML-to-PDF API", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "DOCRAPTOR_CREATE_ASYNC_DOC", "name": "Create Async Document", "description": "Tool to create documents asynchronously from HTML content. Use when generating PDF, XLS, or XLSX documents and you need to poll for completion status or use a callback URL for notification. Returns a response containing an `id` field — store this value and pass it to DOCRAPTOR_GET_ASYNC_DOC_STATUS to poll for completion, then to DOCRAPTOR_GET_ASYNC_DOC to download the finished document." }, { "slug": "DOCRAPTOR_CREATE_DOC", "name": "Create Document", "description": "Tool to create a PDF or Excel document synchronously from HTML content or URL. Use when you need to generate a document file from HTML data. The document is returned immediately as a downloadable file. Either document_content or document_url must be provided, but not both." }, { "slug": "DOCRAPTOR_CREATE_DOCUMENT_FROM_REFERRER", "name": "Create Document from Referrer", "description": "Tool to convert webpages into documents using referrer-based authentication without an API key. Use when you need to generate PDFs or Excel files from registered domains without explicit API credentials." }, { "slug": "DOCRAPTOR_CREATE_HOSTED_ASYNC_DOC", "name": "Create Hosted Async Document", "description": "Tool to create a hosted document asynchronously. Use when you need to generate a PDF, XLS, or XLSX document and track its completion status via callback_url or the status API." }, { "slug": "DOCRAPTOR_GET_ASYNC_DOC", "name": "Download Async Document", "description": "Tool to download a completed asynchronous document using the download URL from status response. Use when you have a download_id and need to retrieve the generated document file." }, { "slug": "DOCRAPTOR_GET_ASYNC_DOC_STATUS", "name": "Get Async Document Status", "description": "Tool to check the status of an asynchronously created document. Use when monitoring progress of async documents by polling for completion status." }, { "slug": "DOCRAPTOR_LIST_DOCUMENTS_JSON", "name": "List Documents (JSON)", "description": "Tool to retrieve a paginated list of previously created documents with metadata in JSON format. Use when you need to see document creation history or query past documents." }, { "slug": "DOCRAPTOR_LIST_DOCUMENTS_XML", "name": "List Documents (XML)", "description": "Tool to retrieve a paginated list of previously created documents with metadata in XML format. Use when you need to see document creation history or query past documents in XML format." }, { "slug": "DOCRAPTOR_LIST_IPS_JSON", "name": "List IPs (JSON)", "description": "Tool to get list of IP addresses that DocRaptor uses to download assets. Use when you need to know which IPs DocRaptor uses for asset downloading. Note: Using IPs for securing assets is not recommended as they can change without notice." }, { "slug": "DOCRAPTOR_LIST_IPS_TEXT", "name": "List IPs (Text)", "description": "Tool to retrieve a list of IP addresses that DocRaptor uses to download assets in plain text format. Use when you need to identify DocRaptor's IP addresses for network configuration or security purposes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docraptor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your DocRaptor dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docsautomator", "name": "Docsautomator", "logo": "https://logos.composio.dev/api/docsautomator", "description": "Automate your documents using Google Docs in minutes. Create, manage, and generate documents from templates with the DocsAutomator API.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCSAUTOMATOR_CREATE_AUTOMATION", "name": "Create Automation", "description": "Tool to create a new DocsAutomator automation with specified data source and optional Google Doc template. Use when you need to set up a new document automation workflow. PDF templates must be uploaded through the DocsAutomator app interface." }, { "slug": "DOCSAUTOMATOR_DELETE_AUTOMATION", "name": "Delete Automation", "description": "Tool to permanently delete an automation and all associated data. Use when you need to remove an automation that is no longer needed. This action cannot be undone." }, { "slug": "DOCSAUTOMATOR_DUPLICATE_AUTOMATION", "name": "Duplicate Automation", "description": "Tool to create a copy of an existing automation with ' COPY' appended to the title. Use when you need to duplicate an existing automation without recreating it from scratch." }, { "slug": "DOCSAUTOMATOR_GET_AUTOMATION", "name": "Get Automation Details", "description": "Tool to retrieve details of a specific automation by its ID. Use when you need to fetch configuration, data source settings, and template information for an automation." }, { "slug": "DOCSAUTOMATOR_GET_QUEUE_STATS", "name": "Get Queue Statistics", "description": "Tool to retrieve current document generation queue statistics for your workspace. Use when monitoring queue health or checking processing capacity." }, { "slug": "DOCSAUTOMATOR_LIST_AUTOMATIONS", "name": "List Automations", "description": "Tool to retrieve all automations in your workspace with their basic details. Use when you need to view, list, or enumerate existing automations." }, { "slug": "DOCSAUTOMATOR_LIST_SIGNING_SESSIONS", "name": "List Signing Sessions", "description": "Tool to retrieve signing sessions with optional filtering by status or signer email. Returns paginated results. Use when you need to list or search for signing sessions in DocsAutomator." }, { "slug": "DOCSAUTOMATOR_SEND_TEST_EMAIL", "name": "Send Test Email", "description": "Tool to send a test email with a sample PDF attachment to verify email configuration. Use when you need to test email delivery for a specific automation. Rate limited to 25 emails per hour per automation." }, { "slug": "DOCSAUTOMATOR_UPDATE_AUTOMATION", "name": "Update Automation", "description": "Tool to update an existing automation's settings in DocsAutomator. Only the fields included in the request are updated. Use when you need to modify automation properties like title, template link, locale settings, or activation status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docsautomator_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from Settings (https://app.docsautomator.co/settings), scrolling down to \"API Keys\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docsbot_ai", "name": "DocsBot AI", "logo": "https://logos.composio.dev/api/docsbot_ai", "description": "DocsBot AI enables the creation of custom chatbots trained on your documentation, facilitating automated customer support and content generation.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCSBOT_AI_CAPTURE_CONVERSATION_LEAD", "name": "Capture Conversation Lead", "description": "Tool to capture lead information by updating conversation metadata and saving the lead. Works whether or not the conversation has been created yet." }, { "slug": "DOCSBOT_AI_CREATE_BOT", "name": "Create Bot", "description": "Tool to create a new bot within a team. Use when you have a valid team ID and want to provision a new bot." }, { "slug": "DOCSBOT_AI_CREATE_SOURCE", "name": "Create Bot Source", "description": "Tool to create a new source for a bot. Sources can be URLs, files, sitemaps, and other types. Use when you have content to add to a bot's knowledge base. For file-based sources, first upload the file using the Upload File to Cloud Storage action." }, { "slug": "DOCSBOT_AI_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook subscription for a bot. Use when you want to receive real-time notifications for specific events (lead.created, deep_research.done, conversation.escalated, conversation.rated). The target URL must be publicly accessible and support HTTPS." }, { "slug": "DOCSBOT_AI_DELETE_BOT", "name": "Delete Bot", "description": "Tool to delete a specific bot by its ID. Use after confirming the bot ID is correct to permanently remove a bot from the system." }, { "slug": "DOCSBOT_AI_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to delete a specific conversation by its ID. Use after confirming the conversation ID is correct to permanently remove a conversation. Requires edit permission." }, { "slug": "DOCSBOT_AI_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a specific lead by ID. Use after confirming the lead ID to permanently remove a lead record from the system." }, { "slug": "DOCSBOT_AI_DELETE_QUESTION", "name": "Delete Question", "description": "Tool to delete a specific question from history. Use after confirming the question ID to permanently remove a question log entry from the system." }, { "slug": "DOCSBOT_AI_DELETE_SOURCE", "name": "Delete Source", "description": "Tool to delete a specific source from a bot by its ID. Use after confirming the source ID is correct to permanently remove a source from the bot's knowledge base." }, { "slug": "DOCSBOT_AI_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook (unsubscribe) by its ID. Use after confirming the webhook ID is correct to permanently remove a webhook subscription." }, { "slug": "DOCSBOT_AI_DOCSBOT_CONVERSATION_TICKET_CREATION", "name": "Generate Conversation Ticket", "description": "Generates a structured support ticket from a Chat Agent conversation. Use this tool to convert an existing bot conversation into a formatted helpdesk ticket containing a subject line and message body written from the user's perspective. Prerequisites: - Requires a conversation created via the Chat Agent API (not the legacy Chat API) - Requires Standard plan or higher - The conversation must exist and be accessible with the provided credentials" }, { "slug": "DOCSBOT_AI_GET_BOT", "name": "Get Bot Details", "description": "Tool to fetch details of a specific bot by ID within a team. Use after confirming valid team and bot IDs." }, { "slug": "DOCSBOT_AI_GET_BOT_REPORTS", "name": "Get Bot Monthly Reports", "description": "Tool to retrieve monthly statistical reports for a bot. Returns question resolution metrics for a selected month. Use this to analyze bot performance and track question resolution trends over time." }, { "slug": "DOCSBOT_AI_GET_BOT_STATS", "name": "Get Bot Statistics", "description": "Tool to retrieve comprehensive statistics and analytics for a bot over a time period or date range. Returns key metrics (resolution rate, deflection rate, time saved), time series data for questions and ratings, distribution data for feedback and escalations, and agent mode conversation analytics. Use after confirming valid team and bot IDs from List Teams and List Bots actions." }, { "slug": "DOCSBOT_AI_GET_SOURCE", "name": "Get Source Details", "description": "Tool to retrieve detailed information about a specific source by its ID. Use when you need complete metadata about a source including indexed URLs, FAQs, and processing status." }, { "slug": "DOCSBOT_AI_GET_TEAM", "name": "Get Team Details", "description": "Tool to fetch details of a specific team by its ID. Use when you need full team info including members and settings after confirming the team ID." }, { "slug": "DOCSBOT_AI_GET_UPLOAD_URL", "name": "Get Upload URL", "description": "Get a presigned upload URL for uploading files as sources. Use this before uploading large files to DocsBot. The workflow is: 1) Get upload URL, 2) Upload file to the URL, 3) Create source with the file path." }, { "slug": "DOCSBOT_AI_GET_WEBHOOK", "name": "Get Webhook Details", "description": "Tool to retrieve details of a specific webhook by ID. Use when you need webhook configuration, delivery status, or subscription details." }, { "slug": "DOCSBOT_AI_LIST_BOTS", "name": "List Team Bots", "description": "List all bots for a given team. Returns detailed information about each bot including configuration, statistics, and status. Use this action to discover available bots before performing operations like getting bot details or listing sources." }, { "slug": "DOCSBOT_AI_LIST_CONVERSATIONS", "name": "List Bot Conversations", "description": "Tool to list conversation history for a bot with pagination. Returns a limited subset of conversation properties including titles, timestamps, sentiment, and status. Use this to discover conversations before retrieving full details." }, { "slug": "DOCSBOT_AI_LIST_LEADS", "name": "List Bot Leads", "description": "Tool to list captured leads for a bot with pagination and date filtering. Use after confirming valid team and bot IDs. Example: \"List leads for bot abc123 starting from 2024-01-01.\"" }, { "slug": "DOCSBOT_AI_LIST_QUESTIONS", "name": "List Questions", "description": "Tool to list all questions asked of a specific bot. Use after confirming the bot's identifier. Example: \"List questions for bot abc123 with status 'unanswered'.\"" }, { "slug": "DOCSBOT_AI_LIST_RESEARCH_JOBS", "name": "List Research Jobs", "description": "Tool to list all deep research jobs for a bot with pagination support. Use after confirming valid team and bot IDs. Returns details about each research job including status, question, and timestamps." }, { "slug": "DOCSBOT_AI_LIST_SOURCES", "name": "List Bot Sources", "description": "Retrieves a paginated list of all sources for a specific bot within a team. Sources are the content (URLs, files, sitemaps, etc.) that have been indexed for the bot's knowledge base. Use this to see what data sources a bot has been trained on." }, { "slug": "DOCSBOT_AI_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "Tool to list all members of a team including their roles. Use when you need to see who has access to a team and their permission levels." }, { "slug": "DOCSBOT_AI_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams. Use when you need to retrieve every team associated with the authenticated user." }, { "slug": "DOCSBOT_AI_LIST_WEBHOOKS", "name": "List Bot Webhooks", "description": "List all registered webhooks for a bot. Returns webhook configurations including target URLs, subscribed events, and status. Use this action to discover configured webhooks before creating, updating, or deleting them." }, { "slug": "DOCSBOT_AI_RATE_ANSWER", "name": "Rate Answer", "description": "Tool to rate an answer from chat APIs as positive (1), neutral (0), or negative (-1). Use when recording user feedback on bot responses for statistics shown in chat logs." }, { "slug": "DOCSBOT_AI_REFRESH_SOURCE", "name": "Refresh Source", "description": "Tool to refresh a source to re-index its content. Use when a source needs to be updated with the latest content from its origin. Only works with failed sources for retry purposes." }, { "slug": "DOCSBOT_AI_SEARCH_SEMANTIC", "name": "Semantic Search Bot Content", "description": "Tool to perform semantic search on a bot's indexed content. Returns the most relevant source chunks for a query. Use when you need to search the bot's knowledge base without triggering a full conversation." }, { "slug": "DOCSBOT_AI_TEST_ESCALATED_WEBHOOK", "name": "Test Escalated Webhook", "description": "Tool to trigger a test delivery of the conversation.escalated webhook. Use to verify webhook configuration is working correctly." }, { "slug": "DOCSBOT_AI_TEST_LEAD_WEBHOOK", "name": "Test Lead Webhook", "description": "Tool to trigger a test lead webhook delivery. Use when you need to test webhook integration for lead capture events. Requires owner or admin permissions." }, { "slug": "DOCSBOT_AI_TEST_RESEARCH_WEBHOOK", "name": "Test Research Webhook", "description": "Tool to trigger a deep research webhook delivery test. Use to verify webhook configurations are working correctly." }, { "slug": "DOCSBOT_AI_TRIGGER_RATED_WEBHOOK_TEST", "name": "Trigger Rated Webhook Test", "description": "Tool to trigger a conversation.rated webhook delivery test for a specific bot. Use when you need to test webhook integration for conversation rating events." }, { "slug": "DOCSBOT_AI_UPDATE_BOT", "name": "Update Bot", "description": "Update a bot's configuration settings such as name, description, model, temperature, and appearance. Only fields provided in the request will be modified; omitted fields remain unchanged. Requires valid team_id and bot_id. Use LIST_BOTS to find available bot IDs first." }, { "slug": "DOCSBOT_AI_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update specific fields for a team. Use after confirming the team ID when you need to change the team's name or OpenAI API key. Returns the updated team record." }, { "slug": "DOCSBOT_AI_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook's status, target URL, label, or expiration date. Use when you need to modify webhook configuration. Requires valid team_id, bot_id, and webhook_id. Only provided fields will be updated." }, { "slug": "DOCSBOT_AI_UPLOAD_FILE_TO_CLOUD_STORAGE", "name": "Upload File to Cloud Storage", "description": "Upload a file to cloud storage via a presigned URL. Use this tool after obtaining a presigned upload URL from the DocsBot API (GET /teams/:teamId/bots/:botId/upload-url?fileName=FILENAME). The workflow is: 1. Get presigned URL from DocsBot upload-url endpoint 2. Use this tool to upload the file to the presigned URL 3. Create a source using the 'file' path returned from step 1" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docsbot_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DocsBot AI API Key", "type": "string", "description": "Your DocsBot AI API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docsumo", "name": "Docsumo", "logo": "https://logos.composio.dev/api/docsumo", "description": "Docsumo is an AI-powered document processing platform that automates data extraction and analysis from various document types.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCSUMO_ADD_TABLE_ROW", "name": "Add Table Row", "description": "Tool to add a new empty row at the end of a specified database table in Docsumo. Use when you need to append a blank row for data entry. The new row will automatically receive the next sequential ID and all fields will be initialized as empty strings." }, { "slug": "DOCSUMO_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new folder in Docsumo for organizing documents by category or type. Use when you need to organize documents into specific categories (e.g., invoices, contracts)." }, { "slug": "DOCSUMO_DELETE_TABLE", "name": "Delete Table", "description": "Tool to delete one or more database tables from Docsumo. Use when you need to permanently remove tables from the database. This is a destructive operation." }, { "slug": "DOCSUMO_GET_ENABLED_DOCUMENT_TYPES", "name": "Get Enabled Document Types", "description": "Retrieves a summary of document types available in Docsumo, including both enabled and disabled document types for the authenticated user. This endpoint provides information about which document types are configured and ready for use." }, { "slug": "DOCSUMO_GET_EXTERNAL_AGENTS", "name": "Get External Agents", "description": "Tool to list all external agents configured in your Docsumo account. Use when you need to retrieve information about agents available for document or case processing." }, { "slug": "DOCSUMO_GET_TABLE_DATA", "name": "Get Table Data", "description": "Tool to retrieve all data from a specific database table in Docsumo. Use when you need to fetch records from a custom database table using its unique identifier." }, { "slug": "DOCSUMO_GET_USER_DOCUMENT_TYPES", "name": "Get User Document Types", "description": "Tool to list available user document types and user info. Use when you need to discover all supported document classifications and user limits." }, { "slug": "DOCSUMO_LIST_ALL_DOCUMENTS", "name": "List All Documents", "description": "Tool to fetch a comprehensive list of all documents in your Docsumo account. Use when you need to retrieve, filter, or search documents by type, status, creation date, folder, or keyword." }, { "slug": "DOCSUMO_LIST_ENABLED_DOCUMENT_TYPES", "name": "List Enabled Document Types", "description": "Tool to retrieve a list of document types currently enabled for your account. Use when you need to discover which document types are available for processing." }, { "slug": "DOCSUMO_LIST_EXTERNAL_AGENT_CASES", "name": "List External Agent Cases", "description": "Tool to list all cases for a specific external agent casetype. Use when you need to retrieve cases with optional filtering by stage, assignee, workflow state, or date ranges. Supports pagination and sorting by creation or modification date." }, { "slug": "DOCSUMO_POST_MCA_ANALYSIS", "name": "MCA Analysis", "description": "Performs Merchant Cash Advance (MCA) analysis on uploaded bank statement documents. This action analyzes bank statements to generate comprehensive financial summaries including: - Account holder information - Overall financial summary (total credits, debits, and balance) - Month-by-month breakdown with categorized transactions Prerequisites: Bank statement documents must be uploaded to Docsumo and fully processed before analysis. Input: List of document IDs (doc_ids) representing the bank statements to analyze. Output: Detailed MCA analysis with account info, financial metrics, and monthly data, or status message if documents are still processing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docsumo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Docsumo API Key", "type": "string", "description": "Your unique API key for authenticating requests to Docsumo's API. Find it under your Docsumo account's Integrations section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docugenerate", "name": "Docugenerate", "logo": "https://logos.composio.dev/api/docugenerate", "description": "DocuGenerate simplifies document generation by converting Word templates and JSON data into professional PDF files with ease. It supports automation of contracts, invoices, letters, certificates, and more, catering to both developers and non-developers. With an intuitive REST API and no-code integrations, it ensures seamless functionality for any scale.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUGENERATE_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document by ID. Permanently removes the document from storage. Use when you need to clean up generated documents or remove outdated files from DocuGenerate." }, { "slug": "DOCUGENERATE_DELETE_TEMPLATE", "name": "Delete template", "description": "Tool to permanently delete a template by ID. Removes the template and all associated versions from storage. Use when a template is no longer needed." }, { "slug": "DOCUGENERATE_DOCUMENT_GENERATE", "name": "Generate documents from template", "description": "Tool to generate document(s) from a template by merging JSON data or uploading a data file. Use when you need to programmatically produce one or more documents and receive metadata including a download URL." }, { "slug": "DOCUGENERATE_DOCUMENT_UPDATE", "name": "Update Document", "description": "Update a document's name/title in DocuGenerate. Use this to rename an existing document after it has been generated. Requires a valid document ID (obtained from document generation or listing) and the new name. Returns the updated document metadata including the document_uri for downloading." }, { "slug": "DOCUGENERATE_GET_DOCUMENT", "name": "Get document by ID", "description": "Tool to retrieve a specific document by ID. Returns document metadata including name, format, template_id, and download URL. Use when you need to fetch details about an existing generated document." }, { "slug": "DOCUGENERATE_GET_TEMPLATE", "name": "Get template by ID", "description": "Tool to retrieve a specific template by ID. Returns template metadata including name, format, region, and configuration settings." }, { "slug": "DOCUGENERATE_LIST_DOCUMENTS", "name": "List documents by template", "description": "Tool to list all documents generated from a template. Results are ordered by created time in descending order. Use when you need to retrieve a list of previously generated documents for a specific template." }, { "slug": "DOCUGENERATE_TEMPLATE_GET_OR_LIST", "name": "Get or list templates", "description": "Tool to retrieve or list existing templates. Use when needing template IDs and metadata before making updates or generating documents." }, { "slug": "DOCUGENERATE_TEMPLATE_UPDATE", "name": "Update Template", "description": "Tool to update a template’s file and settings. Use after confirming the template ID and desired inputs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docugenerate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DocuGenerate API Key", "type": "string", "description": "Your unique API key for authenticating requests to the DocuGenerate API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "documenso", "name": "Documenso", "logo": "https://logos.composio.dev/api/documenso", "description": "Documenso is an open-source electronic signature platform that allows users to create, send, and sign documents digitally.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 77, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUMENSO_CREATE_DOCUMENT_BETA", "name": "Create Document Beta", "description": "Tool to create a new document using the beta endpoint that returns a presigned URL for file upload. After calling this action, upload the PDF file to the returned uploadUrl using a PUT request. Use when you need to create a document and upload the file separately." }, { "slug": "DOCUMENSO_CREATE_DOCUMENT_FIELD", "name": "Create Document Field", "description": "Tool to create a single field for a document. Use when you need to add a signature, initials, text, or other field type to a specific location on a document page. The document must be in DRAFT status to add fields." }, { "slug": "DOCUMENSO_CREATE_DOCUMENT_FIELDS_BULK", "name": "Create Document Fields (Bulk)", "description": "Tool to create multiple fields on a document in a single operation. Use when you need to add signature fields, text fields, or other input fields to a DRAFT document. This bulk operation is more efficient than creating fields one at a time. All fields must reference valid recipient IDs from the document." }, { "slug": "DOCUMENSO_CREATE_DOCUMENT_RECIPIENT", "name": "Create Document Recipient", "description": "Tool to create a single recipient for a document. Use when you need to add a new recipient (signer, viewer, approver, etc.) to an existing document." }, { "slug": "DOCUMENSO_CREATE_DOCUMENT_RECIPIENTS_BULK", "name": "Create Document Recipients Bulk", "description": "Tool to create multiple recipients for a document at once. Use when you need to add multiple recipients (signers, approvers, viewers, etc.) to a document in a single operation. The document must be in DRAFT status before adding recipients." }, { "slug": "DOCUMENSO_CREATE_EMBEDDING_PRESIGN_TOKEN_V2_BETA", "name": "Create Embedding Presign Token V2 Beta", "description": "Create a presign token for Documenso embedded authoring sessions. Use this tool to generate a token that authorizes embedding document/template creation and editing interfaces in your application. The token is passed to Documenso embed components (EmbedCreateDocument, EmbedUpdateDocument, etc.). Note: This feature requires a Documenso Teams Plan or above. Returns 401 UNAUTHORIZED if the account lacks embedding permissions." }, { "slug": "DOCUMENSO_CREATE_ENVELOPE", "name": "Create Envelope", "description": "Tool to create a new envelope in Documenso. Use when you need to create a document or template envelope with optional file uploads, recipients, and configuration settings. The envelope can be configured with signing order, authentication requirements, and notification settings." }, { "slug": "DOCUMENSO_CREATE_ENVELOPE_ATTACHMENT", "name": "Create Envelope Attachment", "description": "Create a new attachment for an envelope in Documenso. Use this action to add supporting documents or files to an existing envelope. The file must be provided as a base64-encoded data URI in the format: data:;base64,." }, { "slug": "DOCUMENSO_CREATE_ENVELOPE_ITEMS_BULK", "name": "Create Envelope Items Bulk", "description": "Tool to create multiple items for an envelope with optional file attachments. Use when you need to add items (documents) to an existing envelope in Documenso." }, { "slug": "DOCUMENSO_CREATE_ENVELOPE_RECIPIENTS_BULK", "name": "Create Envelope Recipients Bulk", "description": "Tool to create multiple recipients for an envelope in bulk. Use when you need to add several recipients to an existing envelope at once. Each recipient must have an email, name, and role (SIGNER, APPROVER, VIEWER, ASSISTANT, or CC)." }, { "slug": "DOCUMENSO_CREATE_FOLDER", "name": "Create Folder", "description": "Create a new folder in Documenso to organize documents or templates. Use this action when you need to create a folder for organizing files, either as a top-level folder or nested within an existing folder." }, { "slug": "DOCUMENSO_CREATE_TEMPLATE_BETA", "name": "Create Template Beta", "description": "Tool to create a new template using the beta endpoint that returns a presigned URL for file upload. After calling this action, upload the PDF file to the returned uploadUrl using a PUT request. Use when you need to create a template and upload the file separately." }, { "slug": "DOCUMENSO_CREATE_TEMPLATE_FIELD", "name": "Create Template Field", "description": "Tool to create a single field for a template. Use when you need to add a signature, initials, text, or other field type to a specific location on a template page." }, { "slug": "DOCUMENSO_CREATE_TEMPLATE_FIELDS_BULK", "name": "Create Template Fields (Bulk)", "description": "Tool to create multiple fields on a template in a single operation. Use when you need to add signature fields, text fields, or other input fields to a template. This bulk operation is more efficient than creating fields one at a time. All fields must reference valid recipient IDs from the template." }, { "slug": "DOCUMENSO_CREATE_TEMPLATE_RECIPIENT", "name": "Create Template Recipient", "description": "Tool to create a single recipient for a template. Use when you need to add a new recipient (signer, viewer, approver, etc.) to an existing template." }, { "slug": "DOCUMENSO_CREATE_TEMPLATE_RECIPIENTS_BULK", "name": "Create Template Recipients Bulk", "description": "Tool to create multiple recipients for a template at once. Use when you need to add multiple recipients (signers, approvers, viewers, etc.) to a template in a single operation." }, { "slug": "DOCUMENSO_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document. Use when you need to permanently remove a document from Documenso. The deletion is irreversible." }, { "slug": "DOCUMENSO_DELETE_DOCUMENT_ATTACHMENT", "name": "Delete Document Attachment", "description": "Tool to delete an attachment from a document. Use when you need to remove a previously uploaded attachment from a document. The deletion is permanent." }, { "slug": "DOCUMENSO_DELETE_DOCUMENT_FIELD", "name": "Delete Document Field", "description": "Tool to delete a single document field by ID. Use when you need to remove a specific field from a document." }, { "slug": "DOCUMENSO_DELETE_DOCUMENT_FIELDS", "name": "Delete Document Fields", "description": "Tool to delete one or more fields from a document. Use when you have confirmed the field IDs to remove. Supports single-field and batch deletion." }, { "slug": "DOCUMENSO_DELETE_DOCUMENT_RECIPIENT", "name": "Delete Document Recipient", "description": "Tool to delete a recipient from a document. Use when you need to remove a recipient from a document's signing workflow." }, { "slug": "DOCUMENSO_DELETE_ENVELOPE", "name": "Delete Envelope", "description": "Tool to permanently delete an envelope. Use when you need to remove an envelope from Documenso. The deletion is irreversible and will remove all associated data." }, { "slug": "DOCUMENSO_DELETE_ENVELOPE_ATTACHMENT", "name": "Delete Envelope Attachment", "description": "Tool to delete an attachment from an envelope. Use when you need to remove a file attachment from a Documenso envelope." }, { "slug": "DOCUMENSO_DELETE_ENVELOPE_FIELD", "name": "Delete Envelope Field", "description": "Tool to delete a field from an envelope. Use when you need to remove an existing field from a document envelope." }, { "slug": "DOCUMENSO_DELETE_ENVELOPE_ITEM", "name": "Delete Envelope Item", "description": "Tool to delete an item from an envelope. Use when you need to remove an existing item from a document envelope." }, { "slug": "DOCUMENSO_DELETE_ENVELOPE_RECIPIENT", "name": "Delete Envelope Recipient", "description": "Tool to delete a recipient from an envelope. Use when you need to remove a recipient from an envelope's signing workflow." }, { "slug": "DOCUMENSO_DELETE_FOLDER", "name": "Delete Folder", "description": "Tool to permanently delete a folder. Use when you need to remove a folder from Documenso. The deletion is irreversible and will remove all associated data." }, { "slug": "DOCUMENSO_DELETE_TEMPLATE", "name": "Delete Template", "description": "Permanently delete a template by its ID. Use this action when you need to remove an existing document template from your Documenso account. The deletion is irreversible. Returns success=true with HTTP 200 if deleted, or success=false with HTTP 404 and message='Template not found' if the template does not exist." }, { "slug": "DOCUMENSO_DELETE_TEMPLATE_DIRECT_LINK", "name": "Delete Template Direct Link", "description": "Delete a direct link for a template. Use this action when you need to remove public direct access to a template." }, { "slug": "DOCUMENSO_DELETE_TEMPLATE_RECIPIENT", "name": "Delete Template Recipient", "description": "Tool to delete a recipient from a template. Use when you need to remove a recipient from a template's configuration." }, { "slug": "DOCUMENSO_DELETE_TEMPLATE_V2", "name": "Delete Template V2", "description": "Tool to permanently delete a template using the v2 API. Use when you need to remove a template from Documenso. The deletion is irreversible." }, { "slug": "DOCUMENSO_DISTRIBUTE_DOCUMENT_V2", "name": "Distribute Document V2", "description": "Tool to distribute a document for signing. Use when you need to send a DRAFT document to recipients for the first time. The document must have recipients with signature fields configured before distribution. For re-sending to recipients who already received the document, use Redistribute Document instead." }, { "slug": "DOCUMENSO_DISTRIBUTE_ENVELOPE", "name": "Distribute Envelope", "description": "Tool to distribute an envelope to recipients for signing. Use when you need to send an envelope to recipients for the first time. The envelope must have recipients with required signature fields configured before distribution. Returns success status of the distribution operation." }, { "slug": "DOCUMENSO_DOWNLOAD_ENVELOPE_ITEM", "name": "Download Envelope Item", "description": "Download an envelope item as PDF. Use this to retrieve the original or signed version of a document within an envelope. The \"signed\" version includes all signatures and is available after recipients have signed, while \"original\" returns the document as initially uploaded. First use DOCUMENSO_GET_ENVELOPE_BY_ID to obtain valid envelope item IDs." }, { "slug": "DOCUMENSO_DOWNLOAD_SIGNED_DOCUMENT", "name": "Download Signed Document", "description": "Download a completed/signed document as PDF. Use this to retrieve the finalized PDF after all recipients have signed. Important: Only documents with status 'COMPLETED' can be downloaded successfully; attempting to download documents in DRAFT or PENDING status will return an error response. First use DOCUMENSO_FIND_DOCUMENTS_V2 with status='COMPLETED' to find downloadable documents." }, { "slug": "DOCUMENSO_DUPLICATE_DOCUMENT_V2", "name": "Duplicate Document V2", "description": "Tool to duplicate a document. Use when you need to create an exact copy of an existing document. Ensure the source document ID is valid before calling." }, { "slug": "DOCUMENSO_DUPLICATE_ENVELOPE_V2", "name": "Duplicate Envelope V2", "description": "Tool to duplicate an envelope with all its settings. Use when you need to create an exact copy of an existing envelope including recipients, fields, and configuration." }, { "slug": "DOCUMENSO_DUPLICATE_TEMPLATE", "name": "Duplicate Template", "description": "Tool to duplicate a template with all its settings. Use when you need to create an exact copy of an existing template including fields, recipients, and configuration." }, { "slug": "DOCUMENSO_FIND_DOCUMENTS", "name": "Find Documents", "description": "Find documents based on search criteria with filtering and pagination. Use when searching for documents by title, status, template, folder, or source. Supports pagination for retrieving large result sets efficiently." }, { "slug": "DOCUMENSO_FIND_DOCUMENTS_V2", "name": "Find Documents V2", "description": "Retrieve a paginated list of documents with optional filtering and sorting. Use this action to list documents, search by title, or filter by status (DRAFT, PENDING, COMPLETED). Commonly used to obtain document IDs for subsequent operations like downloading, updating, or deleting documents." }, { "slug": "DOCUMENSO_FIND_ENVELOPES", "name": "Find Envelopes", "description": "Tool to find envelopes based on search criteria, filters, and pagination. Use this action to search and filter envelopes by query, type, status, source, template ID, or folder ID. Commonly used to retrieve envelope lists for management, reporting, or subsequent operations." }, { "slug": "DOCUMENSO_FIND_FOLDERS", "name": "Find Folders", "description": "Tool to find folders based on search criteria and filters. Use this action to search folders by name, filter by type (DOCUMENT or TEMPLATE), or retrieve subfolders by parent ID. Commonly used to organize documents/templates or retrieve folder IDs for subsequent operations." }, { "slug": "DOCUMENSO_FIND_TEMPLATES", "name": "Find Templates", "description": "Retrieve a paginated list of templates with optional filtering and search. Use this action to find templates, search by title/content, or filter by type (PUBLIC, PRIVATE) or folder. Commonly used to obtain template IDs for subsequent operations like using, updating, or deleting templates." }, { "slug": "DOCUMENSO_GET_DOCUMENT_BY_ID", "name": "Get Document By ID", "description": "Retrieve complete information about a document by its ID. Returns full document details including metadata, recipients, fields, and signing status. Use find_documents_v2 first to get valid document IDs." }, { "slug": "DOCUMENSO_GET_DOCUMENT_FIELD", "name": "Get Document Field", "description": "Tool to retrieve a document field by its ID. Use when you need to fetch details about a specific field including its type, position, recipient assignment, and metadata. Useful for inspecting field properties before updating or for validating field configurations." }, { "slug": "DOCUMENSO_GET_DOCUMENT_RECIPIENT", "name": "Get Document Recipient", "description": "Tool to retrieve detailed information about a document recipient by their ID. Use when you need to check the status, fields, or other details of a specific recipient." }, { "slug": "DOCUMENSO_GET_DOCUMENTS_BY_IDS", "name": "Get Documents By IDs", "description": "Retrieve multiple documents by their IDs in a single request. Use when you need to fetch detailed information for specific documents. This is more efficient than calling individual get document endpoints when retrieving multiple documents." }, { "slug": "DOCUMENSO_GET_ENVELOPE_ATTACHMENT", "name": "Get Envelope Attachment", "description": "Tool to find all attachments for a specific envelope. Use this when you need to retrieve attachment information including IDs, types, labels, and data for all attachments associated with an envelope." }, { "slug": "DOCUMENSO_GET_ENVELOPE_AUDIT_LOG", "name": "Get Envelope Audit Log", "description": "Tool to retrieve audit logs for an envelope. Use this to track all actions performed on an envelope, including who accessed it, when, and from where. Useful for compliance, tracking document history, and debugging workflow issues." }, { "slug": "DOCUMENSO_GET_ENVELOPE_BY_ID", "name": "Get Envelope By ID", "description": "Retrieve complete information about an envelope by its ID. Returns full envelope details including metadata, recipients, fields, and signing status. Use find_envelopes first to get valid envelope IDs." }, { "slug": "DOCUMENSO_GET_ENVELOPE_FIELD", "name": "Get Envelope Field", "description": "Tool to fetch an envelope field by ID. Use this to retrieve detailed information about a specific field in an envelope, including its type, position, dimensions, and metadata configuration." }, { "slug": "DOCUMENSO_GET_ENVELOPE_RECIPIENT", "name": "Get Envelope Recipient", "description": "Tool to retrieve detailed information about an envelope recipient by their ID. Use when you need to check the status, fields, or other details of a specific recipient." }, { "slug": "DOCUMENSO_GET_ENVELOPES_BY_IDS", "name": "Get Envelopes By IDs", "description": "Tool to retrieve multiple envelopes by their IDs. Use this action when you need to fetch multiple envelopes in a single request using envelope IDs, document IDs, or template IDs. Specify the ID type and provide an array of IDs to retrieve." }, { "slug": "DOCUMENSO_GET_TEMPLATE_BY_ID", "name": "Get Template By ID", "description": "Retrieve complete information about a template by its ID. Returns full template details including metadata, recipients, fields, and configuration settings. Use find_templates or list_templates first to get valid template IDs." }, { "slug": "DOCUMENSO_GET_TEMPLATE_FIELD", "name": "Get Template Field", "description": "Tool to fetch a template field by ID. Use this to retrieve detailed information about a specific field in a template, including its type, position, dimensions, and metadata configuration." }, { "slug": "DOCUMENSO_GET_TEMPLATE_RECIPIENT", "name": "Get Template Recipient", "description": "Tool to retrieve detailed information about a template recipient by their ID. Use when you need to check the status, fields, or other details of a specific template recipient." }, { "slug": "DOCUMENSO_GET_TEMPLATES_BY_IDS", "name": "Get Templates By IDs", "description": "Retrieve multiple templates by their IDs in a single request. Use when you need to fetch detailed information for specific templates. This is more efficient than calling individual get template endpoints when retrieving multiple templates." }, { "slug": "DOCUMENSO_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates. Use when fetching available templates with optional pagination." }, { "slug": "DOCUMENSO_MOVE_DOCUMENT_V2", "name": "Move Document V2", "description": "Tool to move a document to a team. Use when transferring documents between personal and team accounts." }, { "slug": "DOCUMENSO_REDISTRIBUTE_DOCUMENT_V2", "name": "Redistribute Document V2", "description": "Re-send signing request emails to specified recipients of a document. Use this when recipients haven't received or lost their signing emails, or when you need to remind them to sign. The document must be in PENDING status and the recipients must belong to the document." }, { "slug": "DOCUMENSO_REDISTRIBUTE_ENVELOPE", "name": "Redistribute Envelope", "description": "Tool to redistribute an envelope to recipients who have not actioned it. Use when recipients haven't received or lost their signing emails, or when you need to remind them to sign. The envelope must be in PENDING status and the recipients must belong to the envelope and not have already completed their action." }, { "slug": "DOCUMENSO_REMOVE_TEAM_MEMBER_V1", "name": "Remove Team Member V1", "description": "Remove a member from a Documenso team. This action removes an existing member from the specified team. The caller must have appropriate permissions (typically team owner or manager) to remove members. Note: The team_id can be obtained from documents that belong to a team (teamId field in document responses). The member_id should be obtained by listing team members first." }, { "slug": "DOCUMENSO_UPDATE_DOCUMENT_ATTACHMENT", "name": "Update Document Attachment", "description": "Tool to update an existing document attachment. Use when you need to change the label or file URL of an attachment. Requires the attachment ID and updated data (label and URL)." }, { "slug": "DOCUMENSO_UPDATE_DOCUMENT_FIELD", "name": "Update Document Field", "description": "Tool to update a single document field's properties in Documenso v2 API. Use when you need to modify position, size, or type of an existing field. The field type must always be provided even when updating other properties." }, { "slug": "DOCUMENSO_UPDATE_DOCUMENT_FIELDS_BULK", "name": "Update Document Fields Bulk", "description": "Tool to update multiple document fields in a single operation. Use when you need to modify properties (position, size, type) of multiple fields at once. This is more efficient than updating fields individually. The document must be in DRAFT status - fields on documents that have been sent for signing cannot be updated." }, { "slug": "DOCUMENSO_UPDATE_DOCUMENT_RECIPIENT_V2", "name": "Update Document Recipient V2", "description": "Tool to update a document recipient using the v2 API. Use to change recipient name, email, role, signing order, or authentication options for a specific document recipient." }, { "slug": "DOCUMENSO_UPDATE_DOCUMENT_V2", "name": "Update Document V2", "description": "Update document properties like title, visibility, and signing settings. Use find_documents_v2 first to get a valid document ID. Only DRAFT documents can have all properties updated; PENDING documents have limited updates." }, { "slug": "DOCUMENSO_UPDATE_ENVELOPE", "name": "Update Envelope", "description": "Update envelope properties like title, visibility, and signing settings. Use find_envelopes first to get a valid envelope ID. Only DRAFT envelopes can have all properties updated; PENDING envelopes have limited updates." }, { "slug": "DOCUMENSO_UPDATE_ENVELOPE_ATTACHMENT", "name": "Update Envelope Attachment", "description": "Tool to update an existing envelope attachment. Use when you need to modify the label or content of an attachment that was previously added to an envelope. The attachment data must be provided in base64-encoded data URI format." }, { "slug": "DOCUMENSO_UPDATE_ENVELOPE_FIELDS_BULK", "name": "Update Envelope Fields Bulk", "description": "Tool to update multiple envelope fields in a single request. Use when you need to modify properties of multiple existing fields (position, size, type) efficiently. All position and dimension values must be between 0 and 100. The type field is required for all updates, even when only changing position or dimensions." }, { "slug": "DOCUMENSO_UPDATE_ENVELOPE_ITEMS_BULK", "name": "Update Envelope Items Bulk", "description": "Tool to update multiple envelope items in a single request. Use when you need to modify the title or order of multiple envelope items belonging to the same envelope. This is more efficient than updating items individually when making bulk changes." }, { "slug": "DOCUMENSO_UPDATE_FOLDER", "name": "Update Folder", "description": "Update properties of an existing folder including name, pinned status, parent folder, and visibility. Use this action to reorganize folder structure or modify folder settings." }, { "slug": "DOCUMENSO_UPDATE_TEMPLATE", "name": "Update Template", "description": "Update template properties like title, visibility, and signing settings. Use list_templates or find_templates first to get a valid template ID." }, { "slug": "DOCUMENSO_UPDATE_TEMPLATE_FIELDS_BULK", "name": "Update Template Fields Bulk", "description": "Tool to update multiple template fields in a single operation. Use when you need to modify properties (position, size, type) of multiple fields at once on a template. This is more efficient than updating fields individually." }, { "slug": "DOCUMENSO_UPDATE_TEMPLATE_RECIPIENT", "name": "Update Template Recipient", "description": "Tool to update a template recipient. Use to change recipient name, email, role, signing order, or authentication options for a specific template recipient." }, { "slug": "DOCUMENSO_UPDATE_TEMPLATE_RECIPIENTS_BULK", "name": "Update Template Recipients Bulk", "description": "Tool to update multiple template recipients in a single API call. Use when you need to change properties (name, email, role, signing order, authentication) for multiple recipients on the same template efficiently." }, { "slug": "DOCUMENSO_USE_TEMPLATE_V2_BETA", "name": "Use Template (v2-beta)", "description": "Tool to create a document from a template. Use when you need to instantiate a template with recipients and optional prefills." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "documenso_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Documenso API Key", "type": "string", "description": "The API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "document360", "name": "Document360", "logo": "https://logos.composio.dev/api/document360", "description": "The Knowledge Base Software that Scales with your Product. Document360 helps create, manage, and publish knowledge base articles and documentation.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "document360_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "To retrieve your API token, navigate to your Document360 account, sign in, and select a project. Go to \"Settings\" > \"Knowledge Base Portal\" > \"API tokens\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "documint", "name": "Documint", "logo": "https://logos.composio.dev/api/documint", "description": "Documint is a document generation platform that allows you to create dynamic documents from templates.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUMINT_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to merge data into a template to create a document (PDF generation). Send JSON data with template variables in the request body to generate a PDF document. Returns a URL to the generated PDF (valid for 24 hours)." }, { "slug": "DOCUMINT_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to permanently delete a single template by its ID. Use when you need to remove an outdated or unused template; ensure the template ID is correct before calling." }, { "slug": "DOCUMINT_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve a single template by its ID. Use when you need to fetch details of a specific template before generating documents." }, { "slug": "DOCUMINT_LIST_DOCUMENTS", "name": "List Documents", "description": "Retrieves documents from the authenticated user's Documint account with optional pagination. Returns a list of documents with their IDs, names, associated templates, and timestamps. Use this to view previously generated documents or to find document IDs for further operations. Supports page and limit parameters for paginated results." }, { "slug": "DOCUMINT_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all templates in the authenticated user's account. Use after obtaining a valid API key." }, { "slug": "DOCUMINT_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update a single template by its ID. Use when you need to modify an existing template's settings or layout after fetching its current details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docupilot", "name": "Docupilot", "logo": "https://logos.composio.dev/api/docupilot", "description": "Docupilot is a document automation tool that enables users to generate PDFs, DOCX files, contracts, invoices, and more by integrating with various online services.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUPILOT_CREATE_FOLDER", "name": "Create Docupilot Folder", "description": "Tool to create a new folder. Use when organizing documents into custom workspace folders after confirming workspace context." }, { "slug": "DOCUPILOT_FOLDERS_CREATE", "name": "Create Docupilot Folder", "description": "Tool to create a new folder. Use when organizing documents into custom workspace folders after confirming workspace context." }, { "slug": "DOCUPILOT_FOLDERS_LIST", "name": "List all folders", "description": "Tool to list all folders. Use after authentication to fetch available workspace folders." }, { "slug": "DOCUPILOT_GET_AUTHENTICATED_USER", "name": "Get Authenticated User", "description": "Tool to retrieve information about the authenticated user. Use after authentication to confirm identity and fetch user account details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docupilot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Docupilot API key. Find it in your Docupilot account settings.", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret", "type": "string", "description": "Your Docupilot API secret. Find it in your Docupilot account settings.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Workspace ID", "type": "string", "description": "The ID of your Docupilot workspace, required for API requests interacting with specific workspaces.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docupost", "name": "Docupost", "logo": "https://logos.composio.dev/api/docupost", "description": "DocuPost is a print and mail service that enables users to send digital files as physical letters and postcards via the U.S. Postal Service.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUPOST_GET_BALANCE", "name": "Get Balance", "description": "Tool to check the current account balance in DocuPost. Use this before sending letters or postcards to verify sufficient funds are available." }, { "slug": "DOCUPOST_SEND_LETTER", "name": "Send Letter", "description": "Send a physical letter via U.S. mail using DocuPost. Requires recipient address (to_name, to_address1, to_city, to_state, to_zip), sender address (from_name, from_address1, from_city, from_state, from_zip), and a PDF document URL. Example: send_letter( to_name='John Doe', to_address1='123 Main St', to_city='Los Angeles', to_state='CA', to_zip='90210', from_name='Sender Corp', from_address1='456 Sender Rd', from_city='Los Angeles', from_state='CA', from_zip='90210', pdf='https://example.com/document.pdf' )" }, { "slug": "DOCUPOST_SEND_POSTCARD", "name": "Send Postcard", "description": "Tool to send a postcard via U.S. mail with specified recipient, sender, and front/back images. Use after confirming recipient addresses and design URLs. Example: send_postcard(to_name='John Doe', ..., front_image='https://...', back_image='https://...')" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docupost_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "DocuPost API Token", "type": "string", "description": "Your DocuPost account API token used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "docuseal", "name": "DocuSeal", "logo": "https://logos.composio.dev/api/docuseal", "description": "DocuSeal is a platform that provides a powerful and easy-to-use API to implement eSignature workflows, allowing users to automate document and template management processes without relying on the web interface.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOCUSEAL_ARCHIVE_SUBMISSION", "name": "Archive Submission", "description": "Tool to archive a submission by its unique identifier. Archived submissions are not permanently deleted and can be restored." }, { "slug": "DOCUSEAL_ARCHIVE_TEMPLATE", "name": "Archive Template", "description": "Tool to archive a specific template by its unique identifier. Use after verifying the template ID." }, { "slug": "DOCUSEAL_CLONE_TEMPLATE2", "name": "Clone Template (v2)", "description": "Tool to clone an existing template into a new template with optional custom name, folder, and external_id. Use when you need to duplicate a template with specific customization options." }, { "slug": "DOCUSEAL_CREATE_SUBMISSION", "name": "Create Submission", "description": "Tool to create signature requests (submissions) from an existing document template and send them to submitters. Use this when you have a pre-configured template and want to send it for signing to one or more parties. Supports email and SMS notifications, custom messages, field pre-filling, and sequential or simultaneous signing workflows." }, { "slug": "DOCUSEAL_CREATE_SUBMISSION_FROM_DOCX", "name": "Create Submission From DOCX", "description": "Tool to create a one-off submission (signature request) from a DOCX document with dynamic content variables. Use [[variable_name]] text tags in the DOCX to define dynamic content variables and {{Field Name;role=Signer1;type=date}} text tags to define fillable fields. This allows you to generate personalized documents with pre-filled content and signature fields extracted from the DOCX file." }, { "slug": "DOCUSEAL_CREATE_SUBMISSION_FROM_HTML", "name": "Create Submission From HTML", "description": "Tool to create a one-off submission request from HTML content with embedded field tags rendered as a fillable and signable form. Use this when you want to create a signature request directly from HTML without first creating a reusable template. Field tags in HTML (like {{field_name}} or ) will be automatically converted to fillable form fields." }, { "slug": "DOCUSEAL_CREATE_SUBMISSION_FROM_PDF", "name": "Create Submission From PDF", "description": "Tool to create a one-off submission (signature request) from a PDF file. Use this to upload a PDF document and send it for electronic signature without creating a reusable template first. You can define signature fields and other form fields either by using text tags in the PDF (e.g., {{Signature;role=First Party;type=signature}}) or by specifying field coordinates in the request." }, { "slug": "DOCUSEAL_CREATE_SUBMISSIONS_FROM_EMAILS", "name": "Create Submissions From Emails", "description": "Tool to create submissions for a document template and send them to specified email addresses. Use this for simplified submission creation with Zapier or other automation tools. Each email address will receive a unique submission link." }, { "slug": "DOCUSEAL_CREATE_TEMPLATE_FROM_DOCX", "name": "Create Template from DOCX", "description": "Tool to create a fillable document template from a Microsoft Word DOCX file. Use when you need to convert a DOCX document with field tags into a template." }, { "slug": "DOCUSEAL_CREATE_TEMPLATE_FROM_HTML2", "name": "Create Template from HTML", "description": "Tool to create a fillable document template from HTML content with pre-defined fields. Use when you need to create a template directly from HTML with custom field tags for text, signatures, dates, and other fillable elements." }, { "slug": "DOCUSEAL_CREATE_TEMPLATE_FROM_PDF", "name": "Create Template From PDF", "description": "Tool to create a fillable document template from a PDF file. Use when you need to create a reusable template from a PDF. Fields can be defined using {{Field Name;role=Signer1;type=date}} text tags in the PDF or by specifying pixel coordinates." }, { "slug": "DOCUSEAL_GET_SUBMISSION", "name": "Get Submission", "description": "Tool to retrieve detailed information about a specific submission. Use when you need to fetch complete submission details including submitters, documents, status, template, events, and metadata." }, { "slug": "DOCUSEAL_GET_SUBMISSION_DOCUMENTS", "name": "Get Submission Documents", "description": "Tool to retrieve documents for a submission. Returns partially filled documents if the submission is in progress, or final signed documents if completed. Use when you need to download submission documents." }, { "slug": "DOCUSEAL_GET_SUBMITTER", "name": "Get Submitter", "description": "Tool to retrieve detailed information about a submitter by ID. Use when you need to fetch submitter details including documents, field values filled by the signer, submission events, and status." }, { "slug": "DOCUSEAL_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve details of a specific template by its unique identifier. Use when you need to fetch template metadata by ID." }, { "slug": "DOCUSEAL_LIST_SUBMISSIONS", "name": "List Submissions", "description": "List document submissions with filtering and cursor-based pagination. Use to retrieve, search, and browse existing submissions by template, status, or submitter details. Supports searching by submitter name, email, or phone." }, { "slug": "DOCUSEAL_LIST_SUBMITTERS", "name": "List Submitters", "description": "Retrieve a paginated list of submitters with optional filtering. Use this tool to: - List all submitters across all submissions - Filter submitters by submission, status dates, or search query - Paginate through large result sets using 'after' and 'before' cursors Examples: - List all submitters: {} - Filter by submission: {\"submission_id\": 12345} - Search by email: {\"q\": \"john@example.com\"} - Get completed submitters in a date range: {\"completed_after\": \"2024-01-01T00:00:00Z\", \"completed_before\": \"2024-12-31T23:59:59Z\"} - Paginate results: {\"limit\": 50, \"after\": 3567000}" }, { "slug": "DOCUSEAL_LIST_TEMPLATES2", "name": "List Templates (Enhanced)", "description": "Tool to retrieve a list of available document templates with pagination and filtering. Use when you need to search templates by name, slug, external_id, folder, or archived status." }, { "slug": "DOCUSEAL_MERGE_TEMPLATES", "name": "Merge Templates", "description": "Merge multiple DocuSeal templates into a single combined template. This action consolidates documents and fields from multiple source templates into one new template. Use this when you need to create a combined document package from existing templates. The merged template will contain all documents and fields from the source templates. Requires at least one template ID, but typically used with two or more." }, { "slug": "DOCUSEAL_UPDATE_SUBMITTER", "name": "Update Submitter", "description": "Tool to update submitter details, pre-fill or update field values, re-send signature request emails, or mark as auto-signed for automatic signing via API. Use when you need to modify submitter information, resend requests, or programmatically complete submissions." }, { "slug": "DOCUSEAL_UPDATE_TEMPLATE2", "name": "Update Template", "description": "Tool to update a document template by moving it to a different folder, changing its name, updating submitter roles, or unarchiving it. Use when you need to modify template properties." }, { "slug": "DOCUSEAL_UPDATE_TEMPLATE_DOCUMENTS", "name": "Update Template Documents", "description": "Tool to add, remove, or replace documents in a template with provided PDF/DOCX file or HTML content. Use when you need to modify the document structure of an existing template." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "docuseal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Base URL", "type": "string", "description": "The base URL for the DocuSeal API. Use https://api.docuseal.com for US, https://api.docuseal.eu for EU, or your self-hosted URL.", "required": true, "default": "https://api.docuseal.com" }, { "name": "generic_api_key", "displayName": "DocuSeal API Key", "type": "string", "description": "The API key used for authenticating requests to the DocuSeal API. Obtain it from the DocuSeal Console under API settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "donedone", "name": "Donedone", "logo": "https://logos.composio.dev/api/donedone", "description": "The simple task tracker and shared inbox for managing projects and issues.", "category": "productivity", "authSchemes": [ "BASIC" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DONEDONE_GET_PUBLIC_API_ACCOUNTS", "name": "Get Public API Accounts", "description": "Tool to retrieve all DoneDone accounts the authenticated user has access to. Use when you need to list available accounts or get account IDs for subsequent operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "donedone_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email", "type": "string", "description": "Your DoneDone account email address. Navigate to your DoneDone account > Your Profile > API Key to retrieve your credentials.", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your DoneDone API Key. Navigate to your DoneDone account > Your Profile > API Key to retrieve your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "doppler", "name": "Doppler", "logo": "https://logos.composio.dev/api/doppler", "description": "Doppler is a secrets management platform that helps developers organize and sync environment variables across teams and infrastructure.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 62, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOPPLER_ACTIVITY_LOGS_LIST", "name": "List Activity Logs", "description": "List workplace activity logs with pagination support. Retrieves a paginated list of activity logs showing actions performed by users and bots in your Doppler workplace, such as creating projects, modifying secrets, generating tokens, and other workspace events. Each log entry includes details about the actor, timestamp, and affected resources. Use this tool when you need to audit workplace activity, track changes, or investigate who performed specific actions." }, { "slug": "DOPPLER_ACTIVITY_LOGS_RETRIEVE", "name": "Get Activity Log", "description": "Retrieve detailed information about a specific activity log entry. Activity logs track all actions performed in the Doppler workplace including project creation, secret modifications, user actions, etc. Use the List Activity Logs action to discover available log IDs." }, { "slug": "DOPPLER_ADD_WEBHOOK", "name": "Add Webhook", "description": "Tool to create a new webhook for a Doppler project. Use when you need to configure webhook notifications for secret changes or other events in a project. The webhook URL must use HTTPS. Optionally configure authentication, specific configs to monitor, custom payload templates, or request signing secrets." }, { "slug": "DOPPLER_AUTH_ME", "name": "Get Authenticated User Info", "description": "Tool to retrieve information about the authenticated user or token. Use when you need to verify authentication status or get details about the current token's workplace and permissions." }, { "slug": "DOPPLER_CONFIG_LOGS_GET", "name": "Get Config Log", "description": "Tool to retrieve a specific config log from Doppler. Use when you need to view details about a particular configuration change or event." }, { "slug": "DOPPLER_CONFIG_LOGS_LIST", "name": "List Config Logs", "description": "Tool to retrieve configuration change logs for a specific config in a project. Use when you need to view the history of configuration changes, track who made changes, or identify rollback actions." }, { "slug": "DOPPLER_CONFIG_LOGS_ROLLBACK", "name": "Rollback Config Log", "description": "Tool to rollback a config to a selected log version. Use when needing to undo a specific change by its log ID, after confirming project, config, and log ID." }, { "slug": "DOPPLER_CONFIGS_CLONE", "name": "Clone Config", "description": "Tool to clone a branch config including all its secrets. Use after confirming the source config details." }, { "slug": "DOPPLER_CONFIGS_CREATE", "name": "Create Config", "description": "Tool to create a branch config. Use when you need to programmatically establish a new branch-based configuration for a specified project and environment. The config name MUST start with the environment identifier followed by an underscore (e.g., 'dev_feature' for dev environment). Use after selecting the target project and environment." }, { "slug": "DOPPLER_CONFIGS_DELETE", "name": "Delete Config", "description": "Tool to delete a config permanently. Use when you need to remove a config that is no longer needed." }, { "slug": "DOPPLER_CONFIGS_GET", "name": "Get Config", "description": "Tool to retrieve a specific Doppler config by project and config name. Use when you need to get configuration details for a specific project environment." }, { "slug": "DOPPLER_CONFIGS_LIST", "name": "List Doppler Configs", "description": "Tool to list configurations from a Doppler project. Use when you need to retrieve all configs or filter by environment. Supports pagination for large result sets." }, { "slug": "DOPPLER_CONFIGS_LOCK", "name": "Lock Config", "description": "Lock a Doppler config to prevent it from being renamed or deleted. Locking provides protection against accidental modifications to critical configurations. Use this after confirming the correct project and config identifiers." }, { "slug": "DOPPLER_CONFIGS_UNLOCK", "name": "Unlock Config", "description": "Tool to unlock a config. Use when you need to allow renaming or deletion of a previously locked config." }, { "slug": "DOPPLER_CONFIGS_UPDATE", "name": "Update Config", "description": "Rename an existing Doppler config within a project. This action modifies the config's name while preserving all secrets and settings. Before using this action: 1. Use DOPPLER_PROJECTS_LIST to get the project identifier 2. Use DOPPLER_CONFIGS_LIST to verify the config exists and get its current name 3. Ensure the new name is unique within the project Note: Root configs and locked configs cannot be renamed." }, { "slug": "DOPPLER_CREATE_ENCRYPTED", "name": "Create Encrypted Share Link", "description": "Create a Doppler Share link for an end-to-end encrypted secret. This tool generates a secure, shareable link where the secret is encrypted client-side and decrypted in the recipient's browser, ensuring Doppler never has access to the plaintext. Use this when you need to securely share sensitive information (API keys, passwords, credentials) with controlled expiration. The secret must be pre-encrypted using AES-256-GCM with PBKDF2-SHA256 key derivation before calling this tool. Security features: - End-to-end encryption: Secret is never exposed to Doppler's servers - Configurable expiration: Set limits on views (1-50 or unlimited) and days (1-90) - Password-protected: Recipients must enter the correct password to decrypt" }, { "slug": "DOPPLER_CREATE_PLAIN", "name": "Create Plain Text Share Link", "description": "Tool to generate a Doppler Share link by sending a plain text secret. Use when you need to securely share secrets with expiration controls. The secret is not stored in plain text by Doppler; the receive flow is end-to-end encrypted where the encrypted secret is decrypted in the browser." }, { "slug": "DOPPLER_CREATE_SERVICE_TOKEN", "name": "Create Service Token", "description": "Tool to create a new service token for a Doppler config. Use when you need to generate API credentials for services to access secrets programmatically. The token grants either read-only or read/write access to the specified config. Store the returned token key securely as it cannot be retrieved later." }, { "slug": "DOPPLER_DELETE_SERVICE_TOKEN", "name": "Delete Service Token", "description": "Tool to delete an existing service token from a Doppler config. Use when you need to revoke or remove a service token that is no longer needed." }, { "slug": "DOPPLER_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook. Use when you need to permanently remove a webhook from a project." }, { "slug": "DOPPLER_DISABLE_WEBHOOK", "name": "Disable Webhook", "description": "Tool to disable an existing Doppler webhook. Use when you need to temporarily stop a webhook from receiving notifications without deleting it." }, { "slug": "DOPPLER_DYNAMIC_SECRETS_REVOKE_LEASE", "name": "Revoke Dynamic Secret Lease", "description": "Revoke a dynamic secret lease immediately before its TTL expires. Use this tool when you need to terminate access to a dynamic secret (e.g., AWS IAM user, database credentials) by invalidating its active lease. This is useful for security purposes when access should be revoked before the natural expiration time. Prerequisites: The lease must have been previously issued via the secrets list or download endpoints with include_dynamic_secrets=true." }, { "slug": "DOPPLER_ENABLE_WEBHOOK", "name": "Enable Webhook", "description": "Tool to enable a previously disabled webhook. Use when you need to reactivate a webhook that was temporarily disabled." }, { "slug": "DOPPLER_ENVIRONMENTS_CREATE", "name": "Create Environment", "description": "Create a new environment in a Doppler project. Environments (like dev, staging, prod) organize different configurations within a project. Use this when you need to set up a new deployment environment for secrets management. Each environment requires a unique slug within the project." }, { "slug": "DOPPLER_ENVIRONMENTS_DELETE", "name": "Delete Environment", "description": "Tool to delete an environment. Use when you need to remove an environment from a project after confirming it's no longer in use." }, { "slug": "DOPPLER_ENVIRONMENTS_GET", "name": "Get Environment", "description": "Retrieves detailed metadata for a specific Doppler environment within a project. Use this to get information about an environment including its name, creation date, first fetch timestamp, and personal configs setting. You must provide both the project slug and environment slug." }, { "slug": "DOPPLER_ENVIRONMENTS_LIST", "name": "List Environments", "description": "Tool to list all environments in a Doppler project. Use when you need to retrieve the environments available in a specific project." }, { "slug": "DOPPLER_ENVIRONMENTS_RENAME", "name": "Rename Environment", "description": "Rename an environment's display name within a Doppler project. This updates only the human-readable name; the environment slug remains unchanged. Use this when you need to update how an environment appears in the UI without affecting its identifier." }, { "slug": "DOPPLER_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve an existing webhook by its slug. Use when you need to get webhook details including URL, authentication settings, enabled status, and payload configuration." }, { "slug": "DOPPLER_GET_WORKPLACE_USER", "name": "Get Workplace User", "description": "Tool to retrieve a specific workplace user by their workplace_user id. Use when you need to get detailed information about a workplace user including their access level, creation date, and nested user details." }, { "slug": "DOPPLER_GROUPS_DELETE_MEMBER", "name": "Remove Group Member", "description": "Remove a member from a Doppler group. This permanently removes the specified member (workplace_user, group, invite, or service_account) from the group. Requires valid group and member slugs. Returns 204 status code on success." }, { "slug": "DOPPLER_INTEGRATIONS_LIST", "name": "List Integrations", "description": "Tool to retrieve all existing integrations in Doppler. Use when you need to list all configured integrations." }, { "slug": "DOPPLER_INVITES_LIST", "name": "List Invites", "description": "Tool to list open workplace invites. Use when you need to retrieve all pending invitations for the current Doppler workplace after authenticating." }, { "slug": "DOPPLER_LIST_CHANGE_REQUESTS", "name": "List Change Requests", "description": "List existing change requests in the Doppler workplace. Use this tool to retrieve all change requests and view their current status. Change requests are a workflow-driven mechanism for proposing additions, modifications, or deletions of values stored in Doppler, which require review and approval from authorized team members. Note: This feature requires a Team or Enterprise plan. Attempting to use this endpoint with a Free or Starter plan will result in a 403 Forbidden error." }, { "slug": "DOPPLER_LIST_PROJECT_MEMBERS", "name": "List Project Members", "description": "Tool to list all members of a Doppler project including users, groups, service accounts, and invites. Use when you need to retrieve all members with their roles and environment access permissions for a specific project." }, { "slug": "DOPPLER_LIST_SERVICE_TOKENS", "name": "List Service Tokens", "description": "Tool to list all service tokens for a specific Doppler config. Use when you need to view existing API credentials and their access levels." }, { "slug": "DOPPLER_LIST_USERS", "name": "List Workplace Users", "description": "Tool to list all users in the Doppler workplace. Use when you need to retrieve user information, check user access levels, or filter users by email address." }, { "slug": "DOPPLER_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured for a Doppler project. Use when you need to retrieve all webhooks or check webhook configurations for a specific project." }, { "slug": "DOPPLER_PROJECT_MEMBERS_DELETE", "name": "Remove Project Member", "description": "Tool to remove a member from a project. Use after confirming project slug, member type, and slug." }, { "slug": "DOPPLER_PROJECT_MEMBERS_GET", "name": "Get Project Member", "description": "Retrieve a specific project member's details including their role and environment access permissions. Use this when you need to check a specific user's, group's, service account's, or invite's membership settings in a project. Requires the project slug, member type (workplace_user/group/invite/service_account), and member slug (UUID)." }, { "slug": "DOPPLER_PROJECT_PERMISSIONS_LIST", "name": "List Project Permissions", "description": "List all available project-level permissions in Doppler. Returns permission identifiers (slugs) that can be assigned to project roles when creating or updating custom roles. Use this to discover what permissions are available before configuring project role access." }, { "slug": "DOPPLER_PROJECT_ROLES_GET", "name": "Get Project Role", "description": "Retrieve detailed information about a specific project role in Doppler, including its permissions, display name, identifier, creation timestamp, and whether it's a custom or built-in role. Use this to understand what permissions a role grants before assigning it to users or groups." }, { "slug": "DOPPLER_PROJECT_ROLES_LIST", "name": "List Project Roles", "description": "Tool to list all available project roles in Doppler. Use when you need to retrieve all roles for permission management or to see what roles are available." }, { "slug": "DOPPLER_PROJECTS_CREATE", "name": "Create Project", "description": "Tool to create a project. Use when you need to programmatically initialize a new Doppler project after authentication." }, { "slug": "DOPPLER_PROJECTS_DELETE", "name": "Delete Project", "description": "Tool to delete a project permanently. Use after confirming irreversible removal." }, { "slug": "DOPPLER_PROJECTS_GET", "name": "Get Project Details", "description": "Tool to retrieve details of a specific Doppler project by its identifier. Use when you need to get project metadata including ID, slug, name, description, and creation timestamp." }, { "slug": "DOPPLER_PROJECTS_LIST", "name": "List Doppler Projects", "description": "Tool to list all Doppler projects in your workspace. Use when you need to retrieve available projects for configuration management or to get project details." }, { "slug": "DOPPLER_SECRETS_DELETE", "name": "Delete Secret", "description": "Tool to delete a secret from a Doppler config. Use when you need to permanently remove a secret from a specific project and config." }, { "slug": "DOPPLER_SECRETS_DOWNLOAD", "name": "Download Secrets", "description": "Tool to download secrets from a Doppler config in various formats. Use when you need to retrieve all secrets or a subset of secrets from a specific project and config. Supports multiple output formats and name transformations." }, { "slug": "DOPPLER_SECRETS_GET", "name": "Get Secret", "description": "Tool to retrieve a specific secret from a Doppler project config. Use when you need to get the value of a specific secret including its raw and computed values." }, { "slug": "DOPPLER_SECRETS_LIST", "name": "List Doppler Secrets", "description": "Tool to list all secrets for a specific Doppler config within a project. Use when you need to retrieve secret values and metadata. Returns both raw and computed values for each secret, along with visibility settings and optional notes." }, { "slug": "DOPPLER_SECRETS_NAMES", "name": "List Secret Names", "description": "Tool to retrieve the list of secret names from a specific Doppler config. Use when you need to list available secret names without their values." }, { "slug": "DOPPLER_SECRETS_UPDATE", "name": "Update Doppler Secrets", "description": "Tool to update secrets in a Doppler config. Use when you need to create or update secret values in a specific project and config." }, { "slug": "DOPPLER_SECRETS_UPDATE_NOTE", "name": "Update Secret Note", "description": "Tool to update a note for a secret in Doppler. Use when you need to add or modify documentation for a specific secret. Notes are stored at the project level and apply across all environments, though a config parameter is required for the API call. Notes help document secret usage, provide context, or store reference links." }, { "slug": "DOPPLER_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing Doppler project's name or description. Use when you need to rename a project or modify its description after it has been created." }, { "slug": "DOPPLER_UPDATE_SECRET_NOTE", "name": "Update Secret Note", "description": "DEPRECATED: Use DopplerSecretsUpdateNote instead. Tool to set or update a note for a secret in Doppler. Use when you need to add or modify documentation for a specific secret. Notes are stored at the project level and apply across all environments." }, { "slug": "DOPPLER_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in Doppler. Use when you need to modify webhook URL, authentication, enabled configs, or other webhook settings." }, { "slug": "DOPPLER_UPDATE_WORKPLACE", "name": "Update Workplace Settings", "description": "Tool to update workplace settings in Doppler. Use when you need to modify workplace name, billing email, or security email. At least one field must be provided to update." }, { "slug": "DOPPLER_WORKPLACE_GET", "name": "Get Workplace Information", "description": "Tool to retrieve workplace information from Doppler. Use when you need to get workplace details including ID, name, billing email, and security email." }, { "slug": "DOPPLER_WORKPLACE_ROLES_GET", "name": "Get Workplace Role", "description": "Tool to retrieve workplace role information from Doppler. Use when you need to get details about a specific role including its permissions and metadata." }, { "slug": "DOPPLER_WORKPLACE_ROLES_LIST", "name": "List Workplace Roles", "description": "Tool to list all workplace roles in your Doppler workspace. Use when you need to retrieve available workplace roles for user management or permission configuration." }, { "slug": "DOPPLER_WORKPLACE_ROLES_LIST_PERMISSIONS", "name": "List Workplace Permissions", "description": "Retrieves all available workplace permissions in Doppler. This action returns a comprehensive list of permission identifiers that can be assigned to workplace roles. Workplace permissions control access to organization-level features such as billing, team management, service accounts, integrations, audit logs, and other workplace settings. Use this action when you need to: - View all available permissions for workplace role configuration - Understand what permissions can be assigned to custom workplace roles - Audit the permission system capabilities in your Doppler workplace No parameters are required. This is a read-only, idempotent operation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "doppler_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Doppler API token. Supports CLI tokens (dp.ct.*), Personal tokens (dp.pt.*), Service tokens (dp.st.*), Service Account tokens (dp.sa.*), SCIM tokens (dp.scim.*), or Audit tokens (dp.audit.*). Get your token from https://dashboard.doppler.com/workplace/tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "doppler_marketing_automation", "name": "Doppler Marketing Automation", "logo": "https://logos.composio.dev/api/doppler_marketing_automation", "description": "Doppler is a marketing automation platform that enables users to create, send, and analyze email campaigns, manage subscriber lists, and integrate with various tools to enhance marketing efforts.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOPPLER_MARKETING_AUTOMATION_ADD_SUBSCRIBER", "name": "Add Subscriber", "description": "Tool to add a new subscriber to a specific list for a specified account." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_CHECK_ACCOUNTS_SUBSCRIBERS", "name": "Check Subscriber Exists", "description": "Tool to check if a subscriber exists in a Doppler account by their email. Use when you need to verify subscriber existence without retrieving full details." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_CREATE_ACCOUNTS_SUBSCRIBERS", "name": "Create Account Subscriber", "description": "Tool to create or associate a subscriber to a Doppler account with optional list memberships. Use when you need to add a new subscriber at the account level, optionally associating them with specific lists." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_CREATE_ACCOUNTS_UNSUBSCRIBED", "name": "Unsubscribe Subscriber", "description": "Tool to mark a subscriber as unsubscribed (removed) in an account. Use when a subscriber needs to be unsubscribed. If the email does not exist, it will be added to ensure it remains unsubscribed and does not receive campaigns." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_CREATE_LIST", "name": "Create List", "description": "Tool to create a new subscriber list for a specified account. Use when you need to segment contacts into a new list." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_DELETE_LIST", "name": "Delete List", "description": "Tool to delete a specific subscriber list by its ID. Use when permanently removing a list after confirming it\u0019s no longer needed." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve account details and available action links for a specific Doppler account. Use when you need to discover available operations for an account." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_API_INDEX", "name": "Get API Index", "description": "Tool to retrieve the API index with available actions and links. Use when you need to discover available API endpoints and their relations." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve details of a specific campaign by campaign ID. Use when you need to fetch metadata and configuration of an existing campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_CAMPAIGN_CONTENT", "name": "Get Campaign Content", "description": "Tool to retrieve the HTML content of a campaign email. Use when you need to fetch the email content for a specific campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve all campaigns associated with the specified account. Use after confirming the accountName to fetch campaigns." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_CAMPAIGN_SOCIAL_MEDIA", "name": "Get Campaign Social Media Preferences", "description": "Tool to retrieve social media configuration for a specific campaign. Use when you need to check which social media platforms are enabled for sharing a campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_LIST", "name": "Get List", "description": "Tool to retrieve details of a specific subscriber list by its ID. Use when you need to fetch metadata of an existing list." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve all lists associated with a specified Doppler account. Use when you need an overview of all mailing lists. Example: \"Retrieve lists for account test@gmail.com\"" }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_REMOVED_SUBSCRIBERS", "name": "Get Removed Subscribers", "description": "Tool to retrieve subscribers removed from all lists. Use when you need to audit unsubscribes within a date range." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_SUBSCRIBER", "name": "Get Subscriber", "description": "Tool to retrieve details of a specific subscriber by their email. Use when you need to fetch subscriber information for a given account." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_SUBSCRIBER_PERM_HISTORY", "name": "Get Subscriber Permissions History", "description": "Tool to retrieve the update history of a permission field for a specific subscriber. Use when you need to track changes to subscriber consent or permission fields." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_SUBSCRIBERS", "name": "Get Subscribers", "description": "Tool to retrieve all subscribers of a specific list. Use when you need to fetch subscribers by list ID." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_GET_TASK", "name": "Get Task", "description": "Tool to retrieve details of a specific task by its ID. Use when you need to check the status or details of an asynchronous task." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_IMPORT_SUBSCRIBERS", "name": "Import Subscribers", "description": "Tool to import multiple subscribers into a specific list in bulk. Use when you need to add or update a batch of subscriber records after preparing the data." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_IMPORT_SUBSCRIBERS_CSV", "name": "Import Subscribers from CSV", "description": "Tool to import subscribers from CSV data into a specific list. Creates an asynchronous import task. Use when you need to bulk import subscribers from CSV format with a maximum file size of 50MB." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_IMPORT_SUBSCRIBERS_TO_ACCOUNT", "name": "Import Subscribers To Account", "description": "Tool to import multiple subscribers into an account. Use when you need to bulk import subscribers at the account level (not to a specific list)." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_IMPORT_UNSUBSCRIBED", "name": "Import Unsubscribed Subscribers", "description": "Tool to import a batch of unsubscribed (removed) subscribers for a Doppler account. Use when you need to mark multiple subscribers as removed. If an email does not correspond to an existing Doppler subscriber, it will be created and marked as removed. Maximum of 100 email addresses can be processed per request." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_ACCOUNTS_FIELDS", "name": "List Account Fields", "description": "Tool to retrieve all custom fields for a Doppler account. Use when you need to view the available custom fields that can be used for subscribers." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_ACCOUNTS_SUBSCRIBERS", "name": "List Account Subscribers", "description": "Tool to retrieve paginated subscribers of a Doppler account. Use when you need to fetch all subscribers for an account with pagination support." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_ACCOUNTS_TASKS", "name": "List Accounts Tasks", "description": "Tool to retrieve a paginated collection of tasks linked to a specific account. Returns both active and inactive tasks that can be filtered by status." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_ACCOUNTS_TASKS_ERRORS", "name": "List Import Errors", "description": "Tool to retrieve errors from a specific import task. Use when you need to check what errors occurred during a subscriber import operation." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_ACCOUNTS_UNSUBSCRIBED", "name": "List Accounts Unsubscribed", "description": "Tool to retrieve a paginated collection of subscribers who have unsubscribed from your lists. Use when you need to audit unsubscribes within a specific date range." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_AUTOMATIONS", "name": "List Automations", "description": "Tool to retrieve all automations for a specified Doppler account. Use when you need to fetch automation workflows and campaigns. Returns paginated results." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_CAMPAIGN_RECIPIENTS", "name": "List Campaign Recipients", "description": "Tool to retrieve recipients (lists and segments) of a specific campaign. Use when you need to see which lists or segments are targeted by a campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_LIST_SUBSCRIBER_DELIVERIES", "name": "List Subscriber Deliveries", "description": "Tool to retrieve delivery details of all campaigns sent to a specific subscriber. Use when you need to fetch campaign delivery history for a subscriber." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_REMOVE_SUBSCRIBER", "name": "Remove Subscriber", "description": "Tool to remove a specific subscriber from a list. Use when you need to delete a subscriber after confirming they should no longer be subscribed." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_ACCOUNTS_INTEGRATIONS", "name": "Update Account Integration", "description": "Tool to create or update a third-party app integration for a Doppler account. Use when you need to configure OAuth tokens or refresh integration credentials for services like MercadoShops, VTEX, or PrestaShop." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_CAMPAIGN_RECIPIENTS", "name": "Update Campaign Recipients", "description": "Tool to update the recipients (lists and/or segments) of a campaign. Use when you need to modify which subscriber lists or segments are targeted by a specific campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_CAMPAIGN_SOCIAL_MEDIA", "name": "Update Campaign Social Media", "description": "Tool to update social media preferences for a campaign. Use when you need to configure which social networks are enabled for sharing, posting, or likes for a specific campaign." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_CAMPAIGN_TEXT_ALT", "name": "Update Campaign Text Alternative", "description": "Tool to update the alternative text content of a campaign. Use when you need to edit the plain text version for email clients that don't support HTML." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_DBL_OPTIN_TMPL_CONTENT", "name": "Update Double Opt-in Template Content", "description": "Tool to update the HTML content of a double opt-in validation template. Use when you need to modify the email template sent to subscribers for subscription confirmation." }, { "slug": "DOPPLER_MARKETING_AUTOMATION_UPDATE_LIST", "name": "Update List", "description": "Tool to update details of an existing subscriber list. Use when you need to modify list metadata after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "doppler_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Doppler API Key", "type": "string", "description": "The API Key associated with your Doppler account, used for authenticating API requests.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account Name", "type": "string", "description": "Your Doppler account email address.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "doppler_secretops", "name": "Doppler SecretOps", "logo": "https://logos.composio.dev/api/doppler_secretops", "description": "Doppler is a secrets management platform that helps teams securely manage and sync environment variables across projects and environments.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOPPLER_SECRETOPS_ACTIVITY_LOGS_LIST", "name": "Activity Logs List", "description": "Tool to list workplace activity logs. Use when you need to fetch recent activity logs." }, { "slug": "DOPPLER_SECRETOPS_ACTIVITY_LOGS_RETRIEVE", "name": "Retrieve Activity Log", "description": "Tool to retrieve a single activity log entry by id. Use when you have a valid Activity Log id." }, { "slug": "DOPPLER_SECRETOPS_CONFIG_LOGS_GET", "name": "Retrieve Config Log Entry", "description": "Tool to retrieve a specific config log entry. Use when needing details of a single config log; call after specifying project, config, and log identifiers." }, { "slug": "DOPPLER_SECRETOPS_CONFIG_LOGS_LIST", "name": "Config Logs List", "description": "Tool to list config change logs for a specific config. Use when you need the audit trail for a config after confirming its identity." }, { "slug": "DOPPLER_SECRETOPS_CONFIG_LOGS_ROLLBACK", "name": "Config Logs Rollback", "description": "Tool to rollback a config to a selected log version. Use when needing to undo a specific change by its log ID, after confirming project, config, and log ID." }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_CLONE", "name": "Clone Config", "description": "Tool to clone a branch config including all its secrets. Use after confirming the source config details." }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_CREATE", "name": "Create Branch Config", "description": "Tool to create a branch config. Use when you need to programmatically establish a new branch-based configuration for a specified project and environment. Use after selecting the target project and environment." }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_DELETE", "name": "Configs Delete", "description": "Tool to delete a config permanently. Use when you need to remove a config that is no longer needed." }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_GET", "name": "Get Config Details", "description": "Tool to fetch a config's details. Use when you need metadata for a specific config after specifying the project and config names. Example: \"Get details for config 'staging-config' in project 'proj-123'.\"" }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_LOCK", "name": "Lock Config", "description": "Tool to lock a config. Use when you need to prevent a config from being renamed or deleted after confirming the project and config names. Example: \"Lock config 'staging-config' in project 'proj-123' after finalizing environment setup.\"" }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_UNLOCK", "name": "Unlock Config", "description": "Tool to unlock a config. Use when you need to allow renaming or deletion of a previously locked config. Example: \"Unlock config 'staging-config' in project 'proj-123'.\"" }, { "slug": "DOPPLER_SECRETOPS_CONFIGS_UPDATE", "name": "Update Config", "description": "Tool to modify an existing config. Use when you need to rename a config after confirming project and config names." }, { "slug": "DOPPLER_SECRETOPS_DYNAMIC_SECRETS_REVOKE_LEASE", "name": "Revoke Dynamic Secret Lease", "description": "Tool to revoke a dynamic secret lease. Use when you need to invalidate an active lease by its ID after confirming the config and dynamic secret identifiers." }, { "slug": "DOPPLER_SECRETOPS_ENVIRONMENTS_CREATE", "name": "Create Environment", "description": "Tool to create a new environment. Use when you need to programmatically create an environment for a specified project." }, { "slug": "DOPPLER_SECRETOPS_ENVIRONMENTS_DELETE", "name": "Environments Delete", "description": "Tool to delete an environment. Use when you need to remove an environment from a project after confirming it's no longer in use." }, { "slug": "DOPPLER_SECRETOPS_ENVIRONMENTS_GET", "name": "Get Environment Details", "description": "Tool to retrieve an environment. Use when you need metadata for a specific environment after specifying the project and environment slug." }, { "slug": "DOPPLER_SECRETOPS_ENVIRONMENTS_LIST", "name": "List Environments", "description": "Tool to list environments in a Doppler project. Use when you need environment metadata for a specific project after providing the project slug." }, { "slug": "DOPPLER_SECRETOPS_ENVIRONMENTS_RENAME", "name": "Rename Environment", "description": "Tool to rename an environment. Use when you need to update an environment's display name after confirming project and environment identifiers." }, { "slug": "DOPPLER_SECRETOPS_GROUPS_DELETE_MEMBER", "name": "Remove Group Member", "description": "Tool to remove a member from a group. Use after confirming the group slug and member identifiers." }, { "slug": "DOPPLER_SECRETOPS_INTEGRATIONS_LIST", "name": "Integrations List", "description": "Tool to list all external integrations. Use when you need to retrieve all configured external integrations after authentication." }, { "slug": "DOPPLER_SECRETOPS_INVITES_LIST", "name": "Invites List", "description": "Tool to list open workplace invites. Use when you need to retrieve all pending invitations for the current Doppler workplace after authenticating." }, { "slug": "DOPPLER_SECRETOPS_PROJECT_MEMBERS_DELETE", "name": "Remove Project Member", "description": "Tool to remove a member from a project. Use after confirming project slug, member type, and slug. Example: \"Delete member 'jdoe' of type 'users' from project 'my-project-slug'.\"" }, { "slug": "DOPPLER_SECRETOPS_PROJECT_MEMBERS_GET", "name": "Get Project Member", "description": "Tool to retrieve a project member by type and slug. Use after confirming project slug, member type, and slug." }, { "slug": "DOPPLER_SECRETOPS_PROJECT_PERMISSIONS_LIST", "name": "Project Permissions List", "description": "Tool to list project-level permissions. Use when you need to fetch all available permissions for projects after authentication." }, { "slug": "DOPPLER_SECRETOPS_PROJECT_ROLES_GET", "name": "Get Project Role", "description": "Tool to retrieve a project role. Use when you need details of a specific project role after authenticating." }, { "slug": "DOPPLER_SECRETOPS_PROJECTS_CREATE", "name": "Create Project", "description": "Tool to create a project. Use when you need to programmatically initialize a new Doppler project after authentication." }, { "slug": "DOPPLER_SECRETOPS_PROJECTS_DELETE", "name": "Projects Delete", "description": "Tool to delete a project permanently. Use after confirming irreversible removal." }, { "slug": "DOPPLER_SECRETOPS_PROJECTS_LIST", "name": "List Projects", "description": "Tool to list Doppler projects. Use when you need to retrieve all projects with optional pagination." }, { "slug": "DOPPLER_SECRETOPS_SECRETS_UPDATE", "name": "Update Secrets", "description": "Tool to update secrets in a config. Use when you need to change secret values for deployments." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "doppler_secretops_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Doppler API Token", "type": "string", "description": "The API token used to authenticate requests to the Doppler API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dotsimple", "name": "Dotsimple", "logo": "https://logos.composio.dev/api/dotsimple", "description": "DotSimple is a comprehensive social media management tool that enables users to plan, create, and publish content across multiple platforms, leveraging AI for content generation and providing analytics for performance optimization.", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOTSIMPLE_CREATE_TAG", "name": "Create Tag", "description": "Create a new tag in DotSimple workspace for categorizing and organizing social media content. Tags are used to label and filter posts, drafts, and media files in DotSimple. Each tag has a unique name and color for easy visual identification in the dashboard. Use this tool when you need to: - Create a new category for content organization - Set up tags before scheduling posts - Organize content by topics, campaigns, or priorities Example: Create a tag named \"news\" with sky blue color \"#38bdf8\" for news-related posts. Note: Requires workspace_id in authentication configuration. Get your workspace_id from the DotSimple dashboard URL: https://app.dotsimple.io/app/YOUR-WORKSPACE-ID/" }, { "slug": "DOTSIMPLE_DELETE_MEDIA_FILES", "name": "Delete Media Files", "description": "Deletes one or more media files (images/videos) from your DotSimple workspace. Use this tool when you need to remove media files that are no longer needed. You must provide the media file IDs as strings. Use the list_media_files tool first to get the IDs of files you want to delete. Returns a success indicator when deletion completes." }, { "slug": "DOTSIMPLE_DELETE_TAG", "name": "Delete Tag", "description": "Delete a tag by its UUID from your DotSimple workspace. Use this tool when you need to remove a specific tag. Ensure the UUID is correct before invoking. The tag will be permanently deleted from your workspace. Note: Requires workspace_id in authentication configuration. Get your workspace_id from the DotSimple dashboard URL: https://app.dotsimple.io/app/YOUR-WORKSPACE-ID/" }, { "slug": "DOTSIMPLE_GET_MEDIA_FILE", "name": "Get Media File", "description": "Tool to retrieve details of a specific media file. Use when you have the mediaFileId and need its metadata." }, { "slug": "DOTSIMPLE_GET_TAG", "name": "Get Tag by UUID", "description": "Tool to retrieve details for a specific tag by UUID. Use when you need full tag information after obtaining its identifier." }, { "slug": "DOTSIMPLE_LIST_ACCOUNTS", "name": "List Accounts", "description": "List all connected social media accounts in the DotSimple workspace. Returns details about each connected account including ID, name, type (e.g., Google, Microsoft), connection status, and credentials. Use this to discover available accounts before posting or scheduling content to social platforms. Note: Requires workspace_id to be configured in auth settings or provided as a parameter." }, { "slug": "DOTSIMPLE_LIST_AUTORESPONDERS", "name": "List Autoresponders", "description": "List all autoresponders in the DotSimple workspace with optional pagination. Returns details about each autoresponder including ID, name, and status. Use this to browse through your autoresponder setup and check their current state. Note: Requires workspace_id to be configured in auth settings or provided as a parameter." }, { "slug": "DOTSIMPLE_LIST_MEDIA_FILES", "name": "List Media Files", "description": "List all media files in a DotSimple workspace with optional pagination. This tool retrieves media files from a specific workspace. The workspace_id is required and can be found in the DotSimple dashboard URL. Use when you need to: - Browse all uploaded media files - Retrieve media file metadata (name, type, URL, thumbnail) - Paginate through media library" }, { "slug": "DOTSIMPLE_LIST_POSTS", "name": "List Posts", "description": "List all posts in a DotSimple workspace with optional pagination. This tool retrieves posts from a specific workspace. The workspace_id is required and can be found in your DotSimple dashboard URL (e.g., https://app.dotsimple.io/app/YOUR-WORKSPACE-UUID/...). Use this when you need to: - View all posts in a workspace - Paginate through large sets of posts - Check post status (published/draft) - Access post metadata (author, timestamps, content) Pagination is supported via optional page and page_size parameters." }, { "slug": "DOTSIMPLE_LIST_REPORTS", "name": "List Reports", "description": "List all account-level email marketing reports from the DotSimple workspace. Returns paginated report entries with aggregated metrics for each date, including emails sent, delivered, opens, clicks, unsubscribes, bounces, and complaints. Use this to fetch account-level performance metrics chronologically after authentication. Note: Requires workspace_id to be configured in auth settings or provided as a parameter." }, { "slug": "DOTSIMPLE_LIST_TAGS", "name": "List Tags", "description": "List all tags available in a DotSimple workspace for content organization and categorization. Tags in DotSimple are used to label and categorize social media posts, drafts, and media files. Each tag has a unique name and hex color for visual identification. Use this tool when you need to: - View all available tags in the workspace - Get tag IDs for assigning to posts - Retrieve tag colors and metadata - Check existing tags before creating new ones **Required:** workspace_id (UUID format) - obtain from DotSimple dashboard URL or connection config" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dotsimple_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Access Token", "type": "string", "description": "The access token generated for API authentication.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Workspace UUID", "type": "string", "description": "Your DotSimple workspace UUID. For example, UUID from https://app.dotsimple.io/app/{UUID}/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dovetail", "name": "Dovetail", "logo": "https://logos.composio.dev/api/dovetail", "description": "Dovetail is an Australian software company that provides tools for transcription analysis, coding interpretation of interviews, survey responses, and feedback, enabling users to create summarized insights from their research analysis.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 51, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DOVETAIL_CREATE_CHANNEL", "name": "Create Channel", "description": "Creates a new channel in Dovetail to organize and collect feedback data. Channels are containers for specific types of customer feedback such as app reviews, NPS responses, churn reasons, product reviews, or support tickets. Use this to set up a new data collection source before importing feedback data." }, { "slug": "DOVETAIL_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Dovetail. Use when you need to register a contact before logging interactions." }, { "slug": "DOVETAIL_CREATE_DATA", "name": "Create Data", "description": "Tool to create a data item in a Dovetail project with text content, title, and/or structured fields. Use when you need to capture and store research data, interview notes, or other content in a project." }, { "slug": "DOVETAIL_CREATE_DATA_POINT", "name": "Create Data Point", "description": "Tool to create a data point within a channel. Use after capturing new content to record and classify it in Dovetail." }, { "slug": "DOVETAIL_CREATE_DOC", "name": "Create Doc", "description": "Tool to create a doc in a Dovetail project with text content, title and/or custom fields. Use when you need to document research findings, store notes, or create structured content within a project. The doc content is stored but not returned in the response." }, { "slug": "DOVETAIL_CREATE_INSIGHT", "name": "Create Insight", "description": "Creates a new insight in Dovetail to store synthesized research findings, observations, or conclusions. Use this tool when you need to document and save key findings from user research, interviews, or data analysis. Insights can optionally be linked to a project for better organization. Returns the created insight's ID, title, creation timestamp, and other metadata. Note: The body content is stored but not included in the response." }, { "slug": "DOVETAIL_CREATE_NOTE", "name": "Create Note", "description": "Tool to create a note in a Dovetail project with text content, title and/or custom fields. Use when you need to document research notes, store interview findings, or create structured content within a project. The note content is stored but not returned in the response." }, { "slug": "DOVETAIL_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in your Dovetail workspace. Use when you need to create a project to organize research data." }, { "slug": "DOVETAIL_CREATE_TOPIC", "name": "Create Topic", "description": "Tool to create a new topic in a Dovetail channel. Requires channel_id, title, and description. Use to organize feedback within channels by creating themed discussion topics." }, { "slug": "DOVETAIL_DELETE_CHANNEL", "name": "Delete Channel", "description": "Tool to delete an existing channel. Use when you need to remove a channel and move it to the project's trash (restorable for 30 days). Confirm the channel ID before calling." }, { "slug": "DOVETAIL_DELETE_DATA", "name": "Delete Data", "description": "Tool to delete an existing data item. Use when you have confirmed the data ID and want to move it to trash (restorable for 30 days). Example: \"Delete data with ID 1tFfvvAmYPCLUqb9zO8dgN.\"" }, { "slug": "DOVETAIL_DELETE_DOC", "name": "Delete Doc", "description": "Tool to delete an existing doc. Use when you need to remove a doc and move it to the project's trash (restorable for 30 days)." }, { "slug": "DOVETAIL_DELETE_INSIGHT", "name": "Delete Insight", "description": "Tool to delete an existing insight. Use when you have confirmed the insight ID and want to move it to trash (restorable for 30 days)." }, { "slug": "DOVETAIL_DELETE_NOTE", "name": "Delete Note", "description": "Tool to delete an existing note. Use when you have confirmed the note ID and want to move it to trash (restorable for 30 days)." }, { "slug": "DOVETAIL_DELETE_TOPIC", "name": "Delete Topic", "description": "Tool to delete an existing topic. Use when you have confirmed the topic ID and want to move it to trash (restorable for 30 days). Example: \"Delete topic with ID 123e4567-e89b-12d3-a456-426614174000.\"" }, { "slug": "DOVETAIL_EXPORT_DATA", "name": "Export Data", "description": "Tool to export data in HTML or Markdown format. Use when you need to retrieve a formatted version of data items from Dovetail." }, { "slug": "DOVETAIL_EXPORT_DOC", "name": "Export Doc", "description": "Tool to export a doc in HTML or Markdown format. Use when you need to retrieve the full content of a doc from Dovetail in a specific format." }, { "slug": "DOVETAIL_EXPORT_INSIGHT", "name": "Export Insight", "description": "Tool to export an insight in HTML or Markdown format. Use when you need to retrieve the full content of an insight for documentation, reporting, or sharing purposes. The exported content includes the insight's title and body in the specified format." }, { "slug": "DOVETAIL_EXPORT_NOTE", "name": "Export Note", "description": "Tool to export a note from Dovetail in HTML or Markdown format. Use when you need to retrieve the full content of a note in a specific export format." }, { "slug": "DOVETAIL_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact. Use when you have confirmed the contact ID and need full contact metadata from Dovetail." }, { "slug": "DOVETAIL_GET_DATA", "name": "Get Data", "description": "Tool to retrieve details of a specific data item by ID. Use when you have confirmed the data ID and need full metadata including custom fields, files, and project information from Dovetail." }, { "slug": "DOVETAIL_GET_DOC", "name": "Get Doc", "description": "Tool to retrieve details of a specific doc by ID. Use when you have confirmed the doc ID and need full doc metadata from Dovetail." }, { "slug": "DOVETAIL_GET_FILE", "name": "Get File", "description": "Tool to retrieve details of a specific file by its ID. Use when you need file metadata, download URL, or processing status from Dovetail." }, { "slug": "DOVETAIL_GET_FOLDER", "name": "Get Folder", "description": "Tool to retrieve details of a specific folder. Use when you have confirmed the folder ID and need full folder metadata from Dovetail." }, { "slug": "DOVETAIL_GET_INSIGHT", "name": "Get Insight", "description": "Tool to retrieve details of a specific insight by ID. Use when you need full insight metadata from Dovetail." }, { "slug": "DOVETAIL_GET_NOTE", "name": "Get Note", "description": "Tool to retrieve details of a specific note. Use when you have confirmed the note ID and need full note metadata from Dovetail." }, { "slug": "DOVETAIL_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a specific project. Use when you have confirmed the project ID and need full project metadata from Dovetail." }, { "slug": "DOVETAIL_GET_TOKEN_INFO", "name": "Get Token Info", "description": "Retrieves information about the current API token, including its unique identifier and the associated workspace subdomain. Use this to verify which workspace the token belongs to." }, { "slug": "DOVETAIL_IMPORT_DATA_FILE", "name": "Import Data File", "description": "Tool to import a public URL of a file as new data in Dovetail. Use when you need to add external files to a project." }, { "slug": "DOVETAIL_IMPORT_DOC_FILE", "name": "Import Doc File", "description": "Tool to import a public file URL as a new doc in Dovetail. Use when you need to create a doc from an external file source. The file must be publicly accessible at the provided URL." }, { "slug": "DOVETAIL_IMPORT_INSIGHT_FILE", "name": "Import Insight from File", "description": "Tool to import a file from a public URL as a new insight in Dovetail. Use when you need to create an insight from an external file source such as PDFs, images, or documents. The file must be publicly accessible for Dovetail to fetch and import it. After import, the insight can be analyzed, tagged, and connected to projects." }, { "slug": "DOVETAIL_IMPORT_NOTE_FILE", "name": "Import Note File", "description": "Tool to import a file from a public URL as a new note in Dovetail. Use when you need to create a note by importing content from an accessible file URL (PDF, video, audio, etc.)." }, { "slug": "DOVETAIL_LIST_CONTACTS", "name": "List Contacts", "description": "Retrieves a paginated list of contacts from a Dovetail workspace. Returns contact IDs, names, creation timestamps, and custom fields. Use cursor-based pagination (limit + start_cursor) to navigate large contact lists efficiently." }, { "slug": "DOVETAIL_LIST_DATA", "name": "List Data", "description": "Tool to list data items in Dovetail. Use when you need to retrieve, filter, sort, or paginate through your workspace data. Supports filtering by created_at (date range), project_id, and title. Results can be sorted by created_at or title. Uses cursor-based pagination with configurable page size." }, { "slug": "DOVETAIL_LIST_DOCS", "name": "List Docs", "description": "Tool to list docs in a Dovetail workspace with optional filtering, sorting, and pagination. Use when you need to retrieve docs, optionally filtered by project, title, content, or creation date." }, { "slug": "DOVETAIL_LIST_FOLDERS", "name": "List Folders", "description": "Tool to get a list of folders associated with a workspace. Use when you need to retrieve folder hierarchy, search for folders by title, or navigate the folder structure with pagination support." }, { "slug": "DOVETAIL_LIST_HIGHLIGHTS", "name": "List Highlights", "description": "List highlights from your Dovetail workspace with optional filtering and pagination. Use this action to retrieve highlights that have been created across your notes and projects. Supports filtering by project or note, and cursor-based pagination for large result sets." }, { "slug": "DOVETAIL_LIST_INSIGHTS", "name": "List Insights", "description": "Tool to get a list of insights associated with a workspace. Use when you need to retrieve insights with optional filtering by project, publication status, or title, and support for cursor-based pagination." }, { "slug": "DOVETAIL_LIST_NOTES", "name": "List Notes", "description": "List notes in Dovetail workspace with optional pagination and sorting. Use this tool to retrieve notes from your Dovetail workspace. Supports pagination for large result sets and sorting options. Returns note metadata including IDs, titles, timestamps, and associated project information." }, { "slug": "DOVETAIL_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects in Dovetail. Use after authenticating with a valid workspace token when you need to retrieve the full project list." }, { "slug": "DOVETAIL_LIST_TAGS", "name": "List Tags", "description": "List all tags in the authenticated Dovetail workspace. Returns tag details including title, color, highlight count, and timestamps. Supports pagination for workspaces with many tags." }, { "slug": "DOVETAIL_LIST_USER_DOCS", "name": "List User Docs", "description": "Tool to get a list of docs associated with a user in Dovetail. Use when you need to retrieve documents for a specific user or the authenticated user (use 'me' as user_id)." }, { "slug": "DOVETAIL_LIST_USER_INSIGHTS", "name": "List User Insights", "description": "List personal insights for a user in Dovetail. Returns a paginated list of insights including their IDs, titles, creation dates, and published status. Use DOVETAIL_GET_TOKEN_INFO to obtain a valid user_id." }, { "slug": "DOVETAIL_MAGIC_SEARCH", "name": "Magic Search", "description": "Tool to perform a magic search across workspace data. Use when you need to retrieve relevant highlights, notes, insights, channels, themes, or tags by query." }, { "slug": "DOVETAIL_UPDATE_CHANNEL", "name": "Update Channel", "description": "Tool to update an existing channel's title or context. Use after confirming the channel ID and fields to change." }, { "slug": "DOVETAIL_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Dovetail. Use when you need to modify a contact's name, email, or custom fields." }, { "slug": "DOVETAIL_UPDATE_DATA", "name": "Update Data", "description": "Tool to update a data item in Dovetail. Use when you need to modify the title or fields of an existing data item." }, { "slug": "DOVETAIL_UPDATE_DOC", "name": "Update Doc", "description": "Tool to update a doc in Dovetail. Use when you need to modify a doc's title or custom fields." }, { "slug": "DOVETAIL_UPDATE_INSIGHT", "name": "Update Insight", "description": "Updates an existing insight in Dovetail, allowing you to modify the title and custom fields. Use when you need to revise insight information, correct titles, or update custom field values." }, { "slug": "DOVETAIL_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note in Dovetail. Use when you need to modify a note's title, content, or custom fields. Example: \"Update note 8IFq5LEC6hV1Vgsu0jPNJ with new title 'Q1 Review'\"." }, { "slug": "DOVETAIL_UPDATE_TOPIC", "name": "Update Topic", "description": "Tool to update an existing topic. Use after confirming the topic ID and fields to change. Example: \"Update topic with id 123... to have title 'New'\"." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dovetail_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "The API token used for authenticating requests to the Dovetail API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dpd2", "name": "Dpd2", "logo": "https://logos.composio.dev/api/dpd2", "description": "DPD is a digital product delivery platform for selling ebooks, software, music, and other digital goods.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DPD2_GET_STOREFRONT", "name": "Get Storefront", "description": "Retrieves detailed information about a specific DPD storefront by its ID. Returns storefront configuration including name, URL, contact details, currency, type, and subdomain. Use this after obtaining a storefront ID from DPD2_LIST_STOREFRONTS or when you need to fetch current metadata for a known storefront." }, { "slug": "DPD2_LIST_CUSTOMERS2", "name": "List DPD Customers (Filtered)", "description": "Tool to list customers in your DPD account with advanced filtering. Use when you need to find customers by email, name, product purchases, newsletter subscription status, or creation date range." }, { "slug": "DPD2_LIST_PURCHASES", "name": "List DPD Purchases", "description": "Tool to list all purchases made through your DPD account. Use when you need to retrieve purchase records with optional date filters and pagination for reporting or analysis." }, { "slug": "DPD2_LIST_STOREFRONTS", "name": "List Storefronts", "description": "Tool to list all storefronts in your DPD account. Use after authenticating to fetch storefront details before managing products or purchases." }, { "slug": "DPD2_LIST_SUBSCRIBERS", "name": "List Subscribers", "description": "Tool to list subscribers for a given storefront. Use when you need a paginated and filtered list of subscribers after storefront setup." }, { "slug": "DPD2_PING", "name": "DPD: Ping API", "description": "Tool to ping the API to check its status. Use when verifying API connectivity before further operations." }, { "slug": "DPD2_VERIFY_NOTIFICATION2", "name": "Verify DPD IPN Notification", "description": "Tool to verify a POST from the URL integration (IPN/webhook). POST all parameters that were POSTed to your site to confirm authenticity. Use after receiving an IPN notification to validate it came from DPD." }, { "slug": "DPD2_VERIFY_SUBSCRIBER", "name": "Verify Subscriber", "description": "Tool to verify a subscriber's subscription status. Use when you need to check if a subscriber is active and receiving service. Either username (email) or subscriber ID must be provided." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Password", "type": "string", "description": "Your API password available on your profile", "required": true, "default": null }, { "name": "generic_id", "displayName": "Username", "type": "string", "description": "Your DPD account username", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "draftable", "name": "Draftable", "logo": "https://logos.composio.dev/api/draftable", "description": "Draftable provides an enterprise-grade document comparison API that allows developers to compare popular document types such as PDFs, Word, and PowerPoint files.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DRAFTABLE_LIST_COMPARISONS", "name": "List Comparisons", "description": "Tool to retrieve a paginated list of document comparisons. Use when you need to browse comparisons across pages." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "draftable_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Draftable Auth Token", "type": "string", "description": "Your Draftable API authentication token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dreamstudio", "name": "Dreamstudio", "logo": "https://logos.composio.dev/api/dreamstudio", "description": "DreamStudio is Stability AI's user interface for generative AI, allowing users to create and edit generated images.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DREAMSTUDIO_GENERATE_IMAGE_FROM_IMAGE", "name": "Generate Image from Image", "description": "Tool to generate a new image from an initial image and text prompts. Use after you have a reference image and want to transform it via text guidance." }, { "slug": "DREAMSTUDIO_GENERATE_IMAGE_FROM_TEXT", "name": "Generate Image from Text", "description": "Generate images from text prompts using Stability AI's text-to-image models. Use when you need to create images from textual descriptions without a reference image. Supports multiple prompts with weights, configurable dimensions, and various generation parameters." }, { "slug": "DREAMSTUDIO_LIST_ENGINES", "name": "List Engines", "description": "List all available DreamStudio/Stability AI engines accessible with your API key. This action retrieves all AI models (engines) you can use for image generation and other tasks. Common engines include Stable Diffusion XL and various Stable Diffusion versions. Use this action to: - Discover which engines are available to your account - Get engine IDs needed for image generation requests - Check engine types and capabilities No parameters required - simply call to get the complete list of accessible engines. Using an unsupported engine_id in generation requests will cause failures; engines also vary in supported image sizes (typically capped near 1024x1024) and quality for specific tasks." }, { "slug": "DREAMSTUDIO_USER_ACCOUNT", "name": "User Account", "description": "Retrieves authenticated user's account information from Stability AI. Returns user ID, email, organization memberships, and profile picture. No parameters required - uses authenticated session." }, { "slug": "DREAMSTUDIO_USER_BALANCE", "name": "DreamStudio User Balance", "description": "Retrieves the user's current credit balance from their DreamStudio account. Use this tool to check how many credits are available before generating images or to monitor remaining credits after API operations. Credits are consumed when generating images through the Stability AI API. For large or high-resolution batch generation, verify sufficient balance first — insufficient credits will cause failures mid-run." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dreamstudio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Stability API Key", "type": "string", "description": "Your Stability API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "drimify", "name": "Drimify", "logo": "https://logos.composio.dev/api/drimify", "description": "Drimify empowers you to easily create games and gamification experiences that help you reach your goals. Supercharged games, super-easy creation.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "drimify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API key, go to My Account > API menu option at https://my.drimify.com/en/user/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "drip_jobs", "name": "Drip Jobs", "logo": "https://logos.composio.dev/api/drip_jobs", "description": "DripJobs is a Customer Resource Management system designed to help funnel leads through a strategic process to gain more jobs and increase revenue.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dripjobs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "DripJobs API Key", "type": "string", "description": "The API key used for authenticating requests to DripJobs. Obtain from Company Settings > Integrations in your DripJobs dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dripcel", "name": "Dripcel", "logo": "https://logos.composio.dev/api/dripcel", "description": "Dripcel is a platform for automated SMS and Email marketing, campaign compliance, and data-driven lead generation.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DRIPCEL_CREATE_CONTACTS", "name": "Create Contacts in Bulk", "description": "Tool to upload a list of new contacts to Dripcel in bulk. Only creates new contacts (does not update existing ones). Use when you need to add multiple contacts to your Dripcel account at once. Maximum 100,000 contacts per request." }, { "slug": "DRIPCEL_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by their cell number. Use when you need to remove a contact from Dripcel after confirming the MSISDN." }, { "slug": "DRIPCEL_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag by its ID. Use when you need to remove a tag from Dripcel. Warning: This will also remove the tag from all contacts and campaigns that have it." }, { "slug": "DRIPCEL_GET_BALANCE", "name": "Get current credit balance", "description": "Retrieves the current credit balance for your Dripcel organization account. This action requires no input parameters and returns the available credit balance as a numeric value. Use this to check your account balance before performing credit-consuming operations like sending SMS messages. The balance is returned in your account's default currency (not explicitly specified in the response)." }, { "slug": "DRIPCEL_GET_CAMPAIGNS", "name": "Get Dripcel Campaigns", "description": "Retrieves a list of campaigns from Dripcel. Supports optional pagination (page, pageSize) and filtering by campaign status. Returns campaign details including ID, name, status, and timestamps." }, { "slug": "DRIPCEL_GET_CONTACT", "name": "Get contact by cell number", "description": "Tool to retrieve a single contact by their cell number (MSISDN). Use when you need to view details of a specific contact including their name, email, tags, and other metadata." }, { "slug": "DRIPCEL_GET_DELIVERIES", "name": "Get Deliveries", "description": "Tool to retrieve SMS/email delivery records from Dripcel. Returns a list of message deliveries filtered by recipient phone number (cell) or send operation ID (customerId). Useful for tracking message delivery status, checking delivery history for a specific contact, or auditing a particular send operation." }, { "slug": "DRIPCEL_GET_EMAIL_TEMPLATES", "name": "Get email templates", "description": "Retrieves all email templates from your Dripcel account. Returns a list of templates with their IDs, names, subjects, and content. Use this action when you need to: - View all available email templates in your account - Get template IDs for use in email sending operations - Check template content before selecting one for a campaign - List templates to verify template creation or updates Note: According to API documentation, this endpoint returns all templates without documented support for pagination or filtering." }, { "slug": "DRIPCEL_GET_SALES", "name": "Get sales", "description": "Tool to retrieve a list of all sales. Use when you need comprehensive sales data for reporting or analytics." }, { "slug": "DRIPCEL_LIST_TAGS", "name": "List all tags", "description": "Tool to retrieve all tags in your Dripcel organization. Use when you need to view available tags, get tag IDs for adding to contacts, or verify tag existence before operations." }, { "slug": "DRIPCEL_OPT_OUT_CONTACT", "name": "Opt out contact from campaigns", "description": "Tool to opt out a contact from multiple campaigns at once. Use when you need to remove a contact from campaign messaging. More robust than single campaign opt-out, allowing batch operations or opting out from all campaigns at once." }, { "slug": "DRIPCEL_POST_COMPLIANCE_SEND", "name": "Check SMS Compliance", "description": "Check if phone numbers are allowed to receive SMS messages based on opt-out status and campaign targeting rules. Returns whether each number can be sent to, helping ensure compliance before sending messages. Costs 0.14 credits per phone number checked." }, { "slug": "DRIPCEL_POST_REPLIES_SEARCH", "name": "Search replies based on filters", "description": "Search for SMS/message replies with flexible filtering by ID, campaign, phone number, reply type, message content, or date range. Returns matching replies with metadata. All filters are optional and can be combined for precise queries." }, { "slug": "DRIPCEL_PUT_CONTACT_TAG_ADD", "name": "Add tags to a contact", "description": "Add one or more tags to a contact identified by phone number. Use this tool to organize contacts by assigning tags for segmentation and targeting. Tags must exist in the system before being added - use GET /tags to retrieve valid tag IDs. Provide either tag_ids (recommended) or tag names. Set create_missing_contact=true to automatically create the contact if they don't exist in your Dripcel account. Response includes matchedCount (contacts found) and modifiedCount (contacts updated)." }, { "slug": "DRIPCEL_SEARCH_SEND_LOGS", "name": "Search send logs", "description": "Search for SMS send logs with flexible filtering by ID, phone number, campaign, delivery, message content (regex), or date range. Supports MongoDB-style queries with projection and pagination. All filters are optional and can be combined." }, { "slug": "DRIPCEL_SEND_BULK_EMAIL", "name": "Send Bulk Email", "description": "Tool to send bulk emails to multiple recipients using a template. Use when you need to send the same email content to many contacts at once." }, { "slug": "DRIPCEL_SEND_SMS", "name": "Send SMS", "description": "Tool to send a single SMS to a contact. Use when you need to deliver a targeted message immediately or schedule it for later." }, { "slug": "DRIPCEL_UPSERT_CONTACTS", "name": "Upsert Contacts", "description": "Tool to upload contacts in bulk, creating new contacts or updating existing ones. Limit: 20,000 contacts per request. Use when you need to import or sync a list of contacts to Dripcel. Invalid contacts will be reported but won't block the operation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dripcel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Dripcel API Key", "type": "string", "description": "The API key for your Dripcel organization.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dromo", "name": "Dromo", "logo": "https://logos.composio.dev/api/dromo", "description": "Dromo is an intuitive spreadsheet importer that integrates seamlessly with your product, enabling users to match columns, correct errors, perform complex validations, transform values, and upload perfectly formatted data.", "category": "spreadsheets", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DROMO_CREATE_HEADLESS_IMPORT", "name": "Create Headless Import", "description": "Tool to create a headless import in Dromo. Returns a signed upload URL for file uploads. Use this before uploading files to obtain the temporary upload URL." }, { "slug": "DROMO_CREATE_IMPORT_SCHEMA", "name": "Create Import Schema", "description": "Tool to create a new import schema in Dromo. Define fields, validation rules, and settings for data imports. Use this when setting up a new data import workflow or template." }, { "slug": "DROMO_DELETE_IMPORT_SCHEMA", "name": "Delete Import Schema", "description": "Tool to delete an import schema in Dromo. Use when you need to remove a schema definition that is no longer needed. This action is irreversible." }, { "slug": "DROMO_GET_IMPORT_SCHEMA", "name": "Get Import Schema", "description": "Tool to retrieve an import schema by ID from Dromo. Returns the complete schema definition including fields, validation rules, settings, and webhook configurations. Use this to inspect schema structure, validate field requirements, or retrieve configuration details before creating imports." }, { "slug": "DROMO_LIST_IMPORT_SCHEMAS", "name": "List Import Schemas", "description": "Tool to retrieve all import schemas configured for your Dromo organization. Use this to discover available schemas, their field definitions, validation rules, and settings before creating imports." }, { "slug": "DROMO_LIST_UPLOADS", "name": "List Uploads", "description": "Retrieves a paginated list of all file uploads stored by Dromo for your organization. Returns upload metadata including status, row counts, errors, user information, and file details. Use this to monitor import progress, track upload history, or retrieve upload IDs for further processing." }, { "slug": "DROMO_UPDATE_IMPORT_SCHEMA", "name": "Update Import Schema", "description": "Tool to update an existing import schema in Dromo. Modifies the schema definition including fields, validation rules, and settings. Use when you need to change field configurations, add/remove validators, or update import settings for an existing schema." }, { "slug": "DROMO_UPLOAD_FILE_TO_HEADLESS_IMPORT", "name": "Upload File To Headless Import", "description": "Upload a file to Dromo's headless import system using a presigned S3 URL. This action performs the actual file upload step in Dromo's headless import workflow: 1. First, create a headless import via POST to /headless/imports/ to get an upload URL 2. Then, use this action to upload the file to that URL 3. Dromo automatically processes the file once the upload completes The upload URL is valid for 30 minutes. This action performs an HTTP PUT request with the file content to the provided presigned S3 URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dromo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Dromo License Key", "type": "string", "description": "Your Dromo backend API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dropcontact", "name": "Dropcontact", "logo": "https://logos.composio.dev/api/dropcontact", "description": "Dropcontact is a B2B email finder and data enrichment service that provides verified professional email addresses and enriches contact information.", "category": "contact management", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DROPCONTACT_CREATE_WEBHOOK_SUBSCRIPTION", "name": "Create Webhook Subscription", "description": "Tool to create a new webhook subscription for receiving automatic notifications when enrichment results are ready. Use this instead of polling GET /v1/enrich/all to receive push notifications when contact enrichment processing completes. Currently only supports 'enrich_api_result' event type." }, { "slug": "DROPCONTACT_DELETE_WEBHOOK_SUBSCRIPTION", "name": "Delete Webhook Subscription", "description": "Tool to delete a webhook subscription. Use when you need to remove a configured webhook and stop receiving notifications. Alternatively, you can pause a subscription by setting it to inactive using the update endpoint." }, { "slug": "DROPCONTACT_ENRICH_CONTACTS", "name": "Initiate Contact Enrichment", "description": "Initiates asynchronous batch enrichment for up to 250 contacts with email finding, validation, and company information. Returns a request_id that must be used with the 'Retrieve Enrichment Results' action to fetch the enriched data. Each contact needs at least one of: email, OR (first_name + last_name + company), OR (full_name + company), OR LinkedIn URL. The enrichment typically completes within 30-60 seconds depending on batch size." }, { "slug": "DROPCONTACT_LIST_WEBHOOK_SUBSCRIPTIONS", "name": "List Webhook Subscriptions", "description": "Tool to list webhook subscriptions. Use when you need to inspect your configured webhooks." }, { "slug": "DROPCONTACT_LIST_WEBHOOK_SUBSCRIPTIONS_V2", "name": "List Webhook Subscriptions V2", "description": "Tool to list all webhook subscriptions configured for the account. Returns webhook URLs, event types, and subscription details. Use when you need to inspect your configured webhooks." }, { "slug": "DROPCONTACT_RETRIEVE_ENRICHMENT_RESULTS", "name": "Retrieve Enrichment Results", "description": "Retrieves enriched contact data by request ID after submitting contacts for enrichment. Use this tool to fetch the results of a contact enrichment request created with the 'Batch Enrich Contacts' action. The enrichment process may take 30-60 seconds. If the request is still processing, the response will indicate 'success=false' with a reason message. Once complete, you'll receive enriched data including emails with qualification status, LinkedIn profiles, company information, phone numbers, and location details. Note: You can retrieve partial results even if all contacts haven't been processed yet." }, { "slug": "DROPCONTACT_UPDATE_WEBHOOK_SUBSCRIPTION", "name": "Update Webhook Subscription", "description": "Tool to update an existing webhook subscription. Use when you need to modify the callback URL, rate limiting settings, or active status. The event_type field cannot be changed after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dropcontact_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Dropcontact API Key", "type": "string", "description": "Your personal access token for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dropinblog", "name": "Dropinblog", "logo": "https://logos.composio.dev/api/dropinblog", "description": "Embed a blog into your website in minutes. DropInBlog provides a simple API for managing blog posts, authors, and categories.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dropinblog_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Public API Key", "type": "string", "description": "Your Public API Key for read operations. Get it from https://app.dropinblog.com/me/apikeys", "required": true, "default": null }, { "name": "generic_token", "displayName": "Private API Key", "type": "string", "description": "Your Private API Key for write operations (creating/updating posts). Get it from https://app.dropinblog.com/me/apikeys", "required": true, "default": null }, { "name": "generic_id", "displayName": "Blog ID", "type": "string", "description": "Your Blog ID found in Code & Layout section. If your embed script is https://io.dropinblog.com/embedjs/1234.js, your Blog ID is 1234", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dub", "name": "Dub", "logo": "https://logos.composio.dev/api/dub", "description": "Short link management platform with analytics and API for creating, managing, and tracking branded short links", "category": "url shortener", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DUB_BULK_DELETE_LINKS", "name": "Bulk Delete Links", "description": "Tool to delete multiple short links in bulk from Dub. Use when you need to remove multiple links at once. Maximum of 100 link IDs per request. Non-existing IDs are silently ignored." }, { "slug": "DUB_BULK_UPDATE_LINKS", "name": "Bulk Update Links", "description": "Tool to update multiple short links in bulk. Use when you need to apply the same updates to multiple links at once by specifying link IDs or external IDs." }, { "slug": "DUB_CREATE_DOMAIN", "name": "Create Domain", "description": "Tool to add a domain to a Dub workspace. Use when you need to create a new domain for shortening links. The domain must be verified before it can be used for link shortening." }, { "slug": "DUB_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in Dub. Use when you need to organize links by creating custom tags. Tags help categorize and filter links for better organization." }, { "slug": "DUB_DELETE_DOMAIN", "name": "Delete Domain", "description": "Tool to delete a domain from your Dub workspace. Use when you need to permanently remove a domain. The domain must exist and be owned by your workspace." }, { "slug": "DUB_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag from Dub. Use when you need to remove a tag that is no longer needed." }, { "slug": "DUB_GET_LINK_INFO", "name": "Get Link Info", "description": "Tool to retrieve details of a specific short link from Dub. Use when you need to get comprehensive information about a link including its configuration, targeting settings, and performance metrics." }, { "slug": "DUB_GET_LINKS", "name": "Get Links", "description": "Tool to retrieve a paginated list of links for the authenticated workspace. Use when you need to list links with optional filtering by domain, tags, folder, search terms, or user. Supports pagination and sorting for efficient retrieval of large link collections." }, { "slug": "DUB_GET_LINKS_COUNT", "name": "Get Links Count", "description": "Tool to retrieve the count of links in workspace with optional filters. Use when you need to get the total number of links matching specific criteria such as domain, tags, folder, or search terms." }, { "slug": "DUB_GET_TAGS", "name": "Retrieve List of Tags", "description": "Tool to retrieve a list of tags from Dub. Use when you need to fetch all tags or search for specific tags by name or IDs. Supports pagination and sorting by name or creation date." }, { "slug": "DUB_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve detailed information for a specific workspace. Use when you need to get workspace details including plan, usage limits, domains, users, and configuration settings." }, { "slug": "DUB_LIST_DOMAINS", "name": "List Domains", "description": "Tool to retrieve a list of domains for the authenticated workspace. Use when you need to view all domains, search for specific domains, or filter domains by archived status. Supports pagination for large result sets." }, { "slug": "DUB_TRACK_OPEN", "name": "Track Deep Link Open Event", "description": "Tool to track a deep link open event in Dub. Use when you need to record when a user opens your app via a deep link. Supports both direct tracking via deepLink parameter or probabilistic tracking via dubDomain parameter." }, { "slug": "DUB_UPDATE_DOMAIN", "name": "Update Domain", "description": "Tool to update a domain configuration in Dub. Use when you need to modify domain settings like redirect URLs, placeholder text, archive status, or deep linking configurations." }, { "slug": "DUB_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag by ID. Use when you need to change the name or color of a tag." }, { "slug": "DUB_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Tool to update workspace settings in Dub. Use when you need to modify workspace name, slug, logo, or conversion tracking settings." }, { "slug": "DUB_UPSERT_LINK", "name": "Upsert a Link", "description": "Tool to create or update a short link in Dub. Use when you need to create a new short link or update an existing one. If the link already exists (matching domain and key), it will be updated; otherwise, a new link will be created." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "dub_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user.read,links.read,links.write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "dub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Dub API key (workspace key starting with \"dub_\" or legacy personal key starting with \"user_\"). Get it from https://app.dub.co/settings/tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dungeon_fighter_online", "name": "Dungeon Fighter Online", "logo": "https://logos.composio.dev/api/dungeon_fighter_online", "description": "Dungeon Fighter Online (DFO) is an arcade-style, side-scrolling action game with RPG elements, offering players a dynamic combat experience.", "category": "gaming", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_BASE_INFO", "name": "Character Base Information", "description": "Retrieves comprehensive base information for a Dungeon & Fighter Online character, including level, job details, fame, adventure/account info, and guild membership. Prerequisites: - Use GET_SERVER_LIST to obtain valid server IDs (e.g., \"cain\", \"siroco\") - Use CHARACTER_SEARCH to find character IDs by searching character names Returns character details including level, job/class information, fame points, adventure (account) name, and guild affiliation if applicable." }, { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_SEARCH", "name": "Character Search", "description": "Search for Dungeon Fighter Online characters by name on a specific server. Returns a list of characters matching the search criteria, including their ID, level, job information, and fame points. Use the Get Server List action first to obtain valid server IDs. Supports both exact matching and partial substring searches." }, { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_SKILL_BUFF_AVATAR", "name": "Get Character Skill Buff Avatar", "description": "Retrieves detailed information about a character's buff skill and equipped avatars that enhance it. Returns comprehensive data including: - Buff skill details (name, ID, level, description, stat values) - Avatar equipment in buff slots (jacket, pants, etc.) - Avatar properties (rarity, clone info, option abilities) - Emblems attached to each avatar piece Use this to analyze a character's buff skill configuration, avatar setup for skill enhancement, and emblem attachments. Requires valid serverId (from GET_SERVER_LIST) and characterId (from CHARACTER_SEARCH)." }, { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_SKILL_BUFF_STATUS", "name": "Get Character Skill Buff Status", "description": "Tool to fetch character's skill buff status information. Use when you need to know active buff statuses for a specific character." }, { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_STATUS_INFO", "name": "Character Status Info", "description": "Tool to retrieve status information of a specific character. Use after obtaining serverId and characterId to fetch current stats." }, { "slug": "DUNGEON_FIGHTER_ONLINE_CHARACTER_TIMELINE", "name": "Character Timeline", "description": "Retrieves the activity timeline for a specific character in Dungeon Fighter Online. Returns a chronological list of timeline events (e.g., equipment changes, level ups, achievements) for the character. Use this tool after obtaining a valid serverId from server list and characterId from character search. Returns an empty timeline if no events are available for the character." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_AVATAR", "name": "Get Character Avatar Equipment", "description": "Retrieves comprehensive information about a character's equipped avatar items in Dungeon Fighter Online. Returns character details and avatar equipment across all slots (hair, face, hat, neck, jacket, pants, belt, shoes, skin, weapon) including item details, rarities, clone avatars, option abilities, and attached emblems." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_BUFF_CREATURE", "name": "Get Character Buff Skill Creature", "description": "Retrieves detailed information about a character's buff skill creature equipment. Returns comprehensive data including: - Character information (name, level, job, guild) - Buff skill details (skill name, ID, level, description, stat values) - Creature equipped for the buff skill (item name, ID, rarity) Use this to analyze a character's buff skill creature configuration. Requires valid serverId (from GET_SERVER_LIST) and characterId (from CHARACTER_SEARCH). Note: Buff skill value information is provided based on the latest in-game login and can differ or be unavailable depending on character login circumstances." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_CREATURE", "name": "Get Character Creature", "description": "Tool to retrieve equipped creature information for a Dungeon & Fighter Online character. Use after obtaining serverId and characterId to fetch creature details." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_EQUIPMENT", "name": "Get Character Equipment", "description": "Retrieves comprehensive equipment information for a Dungeon & Fighter Online character. Returns detailed data including: - Character base information (level, job, fame, adventure, guild) - All equipped items across 13 equipment slots - Item details (name, type, rarity, level requirements) - Enhancement information (reinforcement, amplification, refinement, enchantments) - Set item bonuses and fusion stone options - Upgrade, tuning, and exalted equipment details Prerequisites: - Use GET_SERVER_LIST to obtain valid server IDs - Use CHARACTER_SEARCH to find character IDs by name" }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_INSIGNIA", "name": "Get Character Equipped Insignia", "description": "Retrieves character equipped insignia (flag) information from Dungeon Fighter Online. Returns character details and equipped insignia/flag items including reinforcement skills." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_SKILL_BUFF", "name": "Get Character Skill Buff Equipment", "description": "Retrieves detailed information about a character's skill buff equipment, including the buff skill details and equipment items that enhance the buff. This action returns: - Character information (name, level, job, guild) - Buff skill information (skill name, level, description) - Equipment items that provide buff bonuses (weapon, armor, accessories, title) Prerequisites: - Valid server ID (use Get Server List action) - Valid character ID (use Character Search action) Note: Buff data is based on the character's latest in-game login." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_CHARACTER_SKILL_STYLE", "name": "Get Character Skill Style", "description": "Tool to retrieve character skill style information. Use when you need to know a character's active skills, passive skills, skill evolutions, and skill enhancements. Note: Skill enhancements through items and equipment are excluded from this response." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_ITEM_HASHTAGS", "name": "Get Item Hashtags", "description": "Tool to retrieve the list of all available item hashtags for searching items. Use when needing to know which hashtag categories are available for item searches." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_ITEM_INFO", "name": "Get Item Information", "description": "Retrieves detailed information for a specific item in Dungeon & Fighter Online. Equipment stats are shown based on Superior 100% grade values. Titles are shown based on average Ordinary grade values." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_ITEM_SHOP_INFO", "name": "Get Item Shop Info", "description": "Tool to retrieve item shop sell information for specific equipment. Use when needing to find which NPCs sell a particular item and at what price. Only supports Lv.95 Epic and Lv.100+ Unique/Legendary/Epic equipment." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_JOBS", "name": "Get Jobs List", "description": "Tool to retrieve the list of all available character classes (jobs) in Dungeon Fighter Online. Use when needing to know which job classes are available in the game." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_JOB_SKILLS", "name": "Get Job Skills", "description": "Tool to retrieve the complete list of skills available for a specific character class and advancement. Use when you need to know what skills are available for a particular job and job growth combination." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_MULTIPLE_ITEMS", "name": "Get Multiple Items", "description": "Tool to retrieve detailed information for multiple items at once. Use when needing to fetch item details for up to 15 items in a single request. Duplicate item IDs will be processed only once." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_MULTIPLE_SKILLS", "name": "Get Multiple Skills Information", "description": "Retrieves information for multiple skills of a character class at once. Up to 10 skills can be queried per request, with duplicate skill IDs automatically removed. Use this action when you need to fetch details for several skills simultaneously rather than making individual requests. The response includes skill names, levels, descriptions, and option values for each requested skill. Note: If invalid skill IDs are provided, they may be omitted from the response rather than causing an error." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_SERVER_LIST", "name": "Get Server List", "description": "Tool to retrieve the list of available game servers. Use when needing to know which servers are available." }, { "slug": "DUNGEON_FIGHTER_ONLINE_GET_SKILL_INFO", "name": "Get Skill Information", "description": "Tool to retrieve detailed information for a specific skill of a character class. Use when you need to know skill stats, level requirements, MP costs, cooldowns, or level-by-level progression details." }, { "slug": "DUNGEON_FIGHTER_ONLINE_SEARCH_CHARACTERS_BY_FAME", "name": "Search Characters By Fame", "description": "Tool to search characters by fame ranking. Only returns characters level 110 or above that have logged in within 90 days. Use when you need to find high-ranking characters based on fame points." }, { "slug": "DUNGEON_FIGHTER_ONLINE_SEARCH_ITEMS", "name": "Search Items", "description": "Search for Dungeon Fighter Online items by name or hashtag. Only returns items currently obtainable in-game. Supports filtering by level range and rarity. Item images available at https://img-api.dfoneople.com/df/items/{itemId}." }, { "slug": "DUNGEON_FIGHTER_ONLINE_SEARCH_SET_ITEMS", "name": "Search Set Items", "description": "Search for Dungeon Fighter Online set items by name. Returns a list of set items matching the search criteria, including their unique identifiers. Supports exact match, prefix match, and full text search modes. Use URL encoding for non-ASCII characters (automatically handled)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dungeon_fighter_online_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key issued upon application registration.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "dynapictures", "name": "Dynapictures", "logo": "https://logos.composio.dev/api/dynapictures", "description": "Generate Hundreds of Personalized Images in Minutes. DynaPictures is a cloud-based solution for dynamic image generation. Connect your preferred data source like Google Sheets to create personalized images and display your client names, coupons, or virtually anything else.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "DYNAPICTURES_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Tool to create a new workspace for organizing templates, images, and media library assets. Use when you need to establish a new workspace within a Dynapictures account." }, { "slug": "DYNAPICTURES_DELETE_WORKSPACE", "name": "Delete Workspace", "description": "Tool to delete a workspace and all associated content (templates, media, generated images). Use when permanently removing a workspace. Warning: Deletion is permanent and cannot be undone." }, { "slug": "DYNAPICTURES_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to get all image templates that are ready and have the 'Sync to Zapier' checkbox enabled. Use when you need to retrieve available templates for image generation." }, { "slug": "DYNAPICTURES_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to get all workspaces associated with the API key. Use when you need to retrieve workspaces the authenticated user is a member of." }, { "slug": "DYNAPICTURES_UNSUBSCRIBE_WEBHOOK", "name": "Unsubscribe Webhook", "description": "Tool to unsubscribe from webhook notifications by providing the same parameters used during subscription. Use when you need to stop receiving notifications for a specific webhook." }, { "slug": "DYNAPICTURES_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Tool to update an existing workspace's details by workspace ID. Use when you need to modify a workspace's name or properties." }, { "slug": "DYNAPICTURES_UPLOAD_MEDIA_ASSET", "name": "Upload Media Asset", "description": "Tool to upload an image and create a media asset object. Use when you need to upload an image to Dynapictures workspace for later use in image generation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "dynapictures_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your DynaPictures account and sign in. Click on your profile in the top-right, then \"Account\" to retrieve your API token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "e2b", "name": "E2b", "logo": "https://logos.composio.dev/api/e2b", "description": "Open-source Code Interpreting for AI Apps. Run sandboxed code execution environments with support for multiple programming languages.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "E2B_CONNECT_SANDBOX", "name": "Connect to Sandbox", "description": "Tool to connect to an existing E2B sandbox and retrieve its details. Use when you need to reconnect to a sandbox from different environments or resume a paused sandbox. The TTL is extended upon connection." }, { "slug": "E2B_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new E2B template with specified configuration. Use when you need to define a new sandbox template that can be used to spawn sandbox environments." }, { "slug": "E2B_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to register a new webhook to receive sandbox lifecycle events for the team. Use when you need to set up notifications for sandbox lifecycle events such as creation, updates, or termination." }, { "slug": "E2B_DELETE_SANDBOXES", "name": "Delete Sandbox", "description": "Tool to terminate and permanently delete a running E2B sandbox instance. Use when you need to kill a sandbox that is no longer needed. Once terminated, the sandbox cannot be resumed." }, { "slug": "E2B_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to unregister a webhook and stop receiving lifecycle events. Use when you need to remove a webhook that is no longer needed or to clean up webhook registrations." }, { "slug": "E2B_GET_HEALTH", "name": "Check API Health", "description": "Tool to check the health status of the E2B API. Use when you need to verify that the API service is operational and accessible." }, { "slug": "E2B_GET_SANDBOX", "name": "Get Sandbox", "description": "Tool to retrieve detailed information about a specific sandbox by its ID. Use when you need to check sandbox status, metadata, or configuration details." }, { "slug": "E2B_GET_SANDBOXES_LOGS", "name": "Get Sandbox Logs", "description": "Tool to retrieve logs from a specific E2B sandbox instance. Use when you need to debug or monitor sandbox execution by viewing its console output and system logs." }, { "slug": "E2B_GET_SANDBOX_LIFECYCLE_EVENTS", "name": "Get Sandbox Lifecycle Events", "description": "Tool to retrieve the latest lifecycle events for a particular sandbox instance. Use when you need to track state changes including creation, pausing, resuming, updates, and termination of a sandbox." }, { "slug": "E2B_GET_SANDBOX_METRICS", "name": "Get Sandbox Metrics", "description": "Tool to retrieve timestamped CPU, memory, and disk usage metrics for a sandbox. Use when you need to monitor resource usage of a running sandbox. Metrics are collected every 5 seconds; returns empty array if no metrics available yet." }, { "slug": "E2B_GET_TEAMS_METRICS", "name": "Get Team Metrics", "description": "Tool to retrieve timestamped CPU, memory, and disk usage metrics for a team. Use when you need to monitor aggregated resource usage across all sandboxes belonging to a team." }, { "slug": "E2B_GET_TEAMS_METRICS_MAX", "name": "Get Team Maximum Metrics", "description": "Tool to retrieve the maximum value for a specific team metric in a given interval. Use when you need to check team limits or peak usage, such as maximum concurrent sandboxes allowed or highest resource usage." }, { "slug": "E2B_GET_TEMPLATES_BUILD_STATUS", "name": "Get Template Build Status", "description": "Tool to get the status of a template build. Use when you need to check the build status of a template that was started asynchronously. Useful in polling loops to monitor template builds in progress." }, { "slug": "E2B_GET_TEMPLATES_FILES", "name": "Get Template Files", "description": "Tool to get an upload link for a tar file containing build layer files. Use when you need to retrieve or download template build layer files by their hash." }, { "slug": "E2B_GET_WEBHOOK", "name": "Get Webhook Configuration", "description": "Tool to retrieve the current webhook configuration for a specific webhook. Use when you need to inspect webhook settings, verify configuration, or check webhook status." }, { "slug": "E2B_LIST_SANDBOXES", "name": "List All Sandboxes", "description": "Tool to list all running and paused sandboxes associated with your team. Use when you need to view active sandboxes, monitor sandbox state, or retrieve sandbox identifiers for further operations. Supports pagination and filtering by state or metadata." }, { "slug": "E2B_LIST_SANDBOXES_METRICS", "name": "List Sandboxes Metrics", "description": "Tool to retrieve timestamped CPU, memory, and disk usage metrics for multiple sandboxes. Use when you need to monitor resource usage across multiple sandboxes simultaneously. Metrics are collected every 5 seconds; returns empty array if no metrics available yet." }, { "slug": "E2B_LIST_TEAM_SANDBOX_LIFECYCLE_EVENTS", "name": "List Team Sandbox Lifecycle Events", "description": "Tool to retrieve the latest lifecycle events across all sandboxes associated with the team. Use when you need to monitor sandbox activity, track lifecycle changes, or audit sandbox operations." }, { "slug": "E2B_LIST_TEMPLATES", "name": "List All Templates", "description": "Tool to list all available E2B templates for your team. Use when you need to view available templates, retrieve template identifiers, or audit template configurations." }, { "slug": "E2B_LIST_WEBHOOKS", "name": "List All Webhooks", "description": "Tool to retrieve all registered webhooks for your team. Use when you need to view all webhook configurations, audit webhook settings, or manage multiple webhooks." }, { "slug": "E2B_PAUSE_SANDBOX", "name": "Pause Sandbox", "description": "Tool to pause a running E2B sandbox preserving its filesystem and memory state. Use when you need to temporarily suspend a sandbox while maintaining its state for later resumption. Takes approximately 4 seconds per 1 GiB of RAM to pause. Paused sandboxes can be stored for up to 30 days." }, { "slug": "E2B_POST_SANDBOXES", "name": "Create Sandbox", "description": "Tool to create a new E2B sandbox from a template. Use when you need to launch a fresh sandbox environment for code execution, testing, or development purposes." }, { "slug": "E2B_POST_SANDBOXES_TIMEOUT", "name": "Set Sandbox Timeout", "description": "Tool to set the timeout for an E2B sandbox. Use when you need to extend or reduce the sandbox lifetime. The timeout is measured from the current time, and calling this multiple times overwrites the previous TTL." }, { "slug": "E2B_REFRESH_SANDBOX", "name": "Refresh Sandbox", "description": "Tool to refresh an E2B sandbox and extend its time to live. Use when you need to keep a sandbox alive longer and prevent it from timing out." }, { "slug": "E2B_START_TEMPLATE_BUILD", "name": "Start Template Build", "description": "Tool to start a build for an E2B template. Use when you need to initiate the build process for a template with specific configuration. The build runs asynchronously and returns immediately with a 202 Accepted status." }, { "slug": "E2B_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an E2B template configuration. Use when you need to modify template settings such as changing visibility (public/private status)." }, { "slug": "E2B_UPDATE_WEBHOOK", "name": "Update Webhook Configuration", "description": "Tool to update an existing webhook configuration including URL, enabled status, and subscribed events. Use when you need to modify webhook settings, change the destination URL, enable/disable a webhook, or update event subscriptions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "e2b_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from \"Keys\" on the left navigation menu at https://e2b.dev/docs/api-key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eagle_doc", "name": "Eagle doc", "logo": "https://logos.composio.dev/api/eagle_doc", "description": "AI-Powered, Fast, Reliable and Accurate Invoice OCR and Receipt OCR API for Seamless Integration", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EAGLE_DOC_ANY_DOC_OCR", "name": "Process Any Document with OCR", "description": "Tool to process any document type with OCR and automatic classification. Supports bank statements, resumes, passports, delivery sheets, and more. Use when you need to extract structured data from various document types." }, { "slug": "EAGLE_DOC_BATCH_ANY_DOC_OCR", "name": "Submit Batch Any Document OCR Task", "description": "Tool to submit batch OCR processing tasks for various document types including bank statements, resumes, passports, delivery sheets, and more. Use when you need to asynchronously process documents with custom configurations. The task is processed asynchronously; use the Results Check API with the returned task ID to monitor status and retrieve results." }, { "slug": "EAGLE_DOC_BATCH_TASK_DELETE", "name": "Delete Batch Processing Task", "description": "Tool to delete a submitted batch processing task from the queue. Use when you need to cancel or remove a previously submitted batch OCR task before processing completes." }, { "slug": "EAGLE_DOC_INVOICE_OCR_BASE64", "name": "Eagle Doc Invoice OCR from Base64", "description": "Tool to extract invoice data from base64 encoded images using Eagle Doc OCR API. Use when you need to process invoice images that are already base64 encoded. Supports optional parameters for privacy control, coordinate extraction, and full text extraction." }, { "slug": "EAGLE_DOC_MANAGEMENT_QUOTA", "name": "Get Management Quota", "description": "Tool to get contractual quota allowance and current usage counters for all workloads. Use when you need to check remaining capacity for dashboards or billing workflows." }, { "slug": "EAGLE_DOC_RECEIPT_OCR_V3", "name": "Receipt OCR V3", "description": "Tool to process receipt images into structured JSON with 40+ fields including merchant info, line items, taxes, and payments. Use when extracting detailed data from receipt images or PDFs." }, { "slug": "EAGLE_DOC_RECEIPT_QUOTA_V2", "name": "Get Receipt Quota V2 (Deprecated)", "description": "Tool to get quota information for receipt processing API v2 (deprecated). Use when you need to check available quota and usage for receipt OCR processing. Note: Multi-page receipts count each page as one request." }, { "slug": "EAGLE_DOC_USAGE_CURRENT_MONTH", "name": "Get Current Month Usage", "description": "Tool to get current month's usage statistics including quota, pages processed, over-usage, and costs. Use when you need to check API usage and billing information for the current billing period." }, { "slug": "EAGLE_DOC_USAGE_MONTHLY_HISTORY", "name": "Get Monthly Usage History", "description": "Tool to retrieve historical monthly usage data with pricing context for reconciliation and forecasting. Use when you need to analyze page processing trends or calculate costs." }, { "slug": "EAGLE_DOC_USAGE_REQUEST_LOGS", "name": "Get Usage Request Logs", "description": "Tool to retrieve chronological list of recent API calls with page counts and timestamps. Use for troubleshooting and auditing consumption patterns." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "eagle_doc_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Server URL", "type": "string", "description": "Eagle Doc server URL. Frankfurt server: https://de.eagle-doc.com. For custom server locations, contact Eagle Doc.", "required": true, "default": "https://de.eagle-doc.com" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API Key is sent to your email when you sign up to Eagle Doc", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "easyhire", "name": "Easyhire", "logo": "https://logos.composio.dev/api/easyhire", "description": "Your AI hiring assistant", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "easyhire_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To obtain an API key, visit https://easyhire.ai/integrations/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "easy_peasy_ai", "name": "EasyPeasy.AI", "logo": "https://logos.composio.dev/api/easy_peasy_ai", "description": "Best AI Writer, Content Generator & Copywriting Assistant with support for text generation, image creation, and audio transcription.", "category": "ai content generation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "easy_peasy_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from Settings > API & Zapier at https://easy-peasy.ai/settings/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ecologi", "name": "Ecologi", "logo": "https://logos.composio.dev/api/ecologi", "description": "Ecologi is the platform for collective climate action. Purchase trees and carbon offsets programmatically through their Impact API.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ECOLOGI_GET_USER_CARBON_OFFSET", "name": "Get User Carbon Offset", "description": "Tool to get the total tonnes of CO2e emissions a user has avoided (carbon offset). Data refreshes every 10 minutes. No authentication required." }, { "slug": "ECOLOGI_GET_USER_CARBON_REMOVAL", "name": "Get User Carbon Removal", "description": "Tool to retrieve the total tonnes of CO₂e a user has permanently removed from the atmosphere. Data refreshes every 10 minutes. Use when checking carbon offset impact for a specific Ecologi user or business." }, { "slug": "ECOLOGI_GET_USER_HABITAT_RESTORATION", "name": "Get User Habitat Restoration", "description": "Tool to get the total area of habitat and ecosystem a user has restored. Data refreshes every 10 minutes. No authentication required." }, { "slug": "ECOLOGI_GET_USER_IMPACT", "name": "Get User Impact", "description": "Tool to get a combination of all impact types a user has funded: trees, carbon avoidance, carbon removal, and habitat restoration, in a single request. Data refreshes every 10 minutes and no authentication is required." }, { "slug": "ECOLOGI_GET_USER_TREES", "name": "Get User Trees", "description": "Tool to get the total number of trees a user has funded on Ecologi. Use when you need to retrieve tree statistics for a specific user. Data refreshes every 10 minutes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ecologi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Ecologi account → \"Account\" → \"Impact API\" to generate an API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "egnyte", "name": "Egnyte", "logo": "https://logos.composio.dev/api/egnyte", "description": "Egnyte is a cloud-based content collaboration platform that enables secure file sharing, storage, and governance for businesses.", "category": "file management & storage", "authSchemes": [ "OAUTH2" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EGNYTE_CREATE_AUDIT_PERMISSIONS", "name": "Create Permissions Audit Report", "description": "Tool to generate a permissions audit report for specified date range and filters. Use when you need to create an audit report for permissions changes and retrieve a report ID for async retrieval." }, { "slug": "EGNYTE_CREATE_AUDIT_USERS", "name": "Create user audit report", "description": "Tool to create a user audit report in Egnyte. Use when you need to generate an audit report of user-related actions within a specific date range. The report is generated asynchronously - use the returned job ID to poll for completion." }, { "slug": "EGNYTE_CREATE_BOOKMARK", "name": "Create Bookmark", "description": "Tool to create a bookmark on a folder using either path or folder_id. Use when you need to add a folder to user bookmarks for quick access." }, { "slug": "EGNYTE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment/note on a file in Egnyte. Use when you need to add comments, notes, or feedback to a specific file." }, { "slug": "EGNYTE_CREATE_FILE_AUDIT_REPORT", "name": "Create File Audit Report", "description": "Tool to generate a file activity audit report for specified date range and filters. Use when you need to track file operations like downloads, uploads, moves, deletes within a date range. Returns a job ID for async retrieval - poll the job status to check when report is ready." }, { "slug": "EGNYTE_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group with display name and members. Use when you need to add a new group to the Egnyte domain. SCIM-compliant." }, { "slug": "EGNYTE_CREATE_LINK", "name": "Create Shared Link", "description": "Tool to create a shared link for a file or folder with accessibility and expiration settings. Use when you need to share content with specific users, set password protection, configure expiration dates, or enable upload capabilities for recipients." }, { "slug": "EGNYTE_CREATE_LOGIN_AUDIT_REPORT", "name": "Create Login Audit Report", "description": "Tool to generate a login audit report for specified date range and filters. Use when you need to create an audit report for login activity and retrieve a report ID for async retrieval." }, { "slug": "EGNYTE_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in the Egnyte domain. Use when you need to add a new user account with specified authentication type and user type. SCIM-compliant endpoint." }, { "slug": "EGNYTE_DELETE_AUDIT_REPORT", "name": "Delete Audit Report", "description": "Tool to delete an audit report from Egnyte. Use when you need to remove a specific audit report by its type and ID." }, { "slug": "EGNYTE_DELETE_BOOKMARK", "name": "Delete Bookmark", "description": "Tool to delete a bookmark from the user's bookmarks. Use when you need to remove a specific bookmark by its ID." }, { "slug": "EGNYTE_DELETE_FILE_BY_ID", "name": "Delete File By ID", "description": "Delete a file using persistent file ID. Can specify entry_id to delete specific version. Use when you need to delete a file by its persistent identifier (Group ID) rather than path." }, { "slug": "EGNYTE_DELETE_FILE_OR_FOLDER", "name": "Delete file or folder", "description": "Tool to delete a file or folder at the specified path. Items are moved to trash, not permanently deleted. Use when you need to remove a file or folder from the Egnyte file system." }, { "slug": "EGNYTE_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group from the Egnyte domain. Use when you need to permanently remove a group. SCIM-compliant." }, { "slug": "EGNYTE_DELETE_LINK", "name": "Delete Shared Link", "description": "Tool to delete a shared link by its ID. Use when you need to permanently remove a link. Once deleted, the link cannot be reactivated." }, { "slug": "EGNYTE_DELETE_METADATA_KEY", "name": "Delete Metadata Key", "description": "Tool to delete a metadata key from a namespace. Use force_delete=true to remove keys that are currently in use." }, { "slug": "EGNYTE_DELETE_METADATA_NAMESPACE", "name": "Delete Metadata Namespace", "description": "Tool to delete a metadata namespace. Use force_delete=true to remove namespaces that are currently in use. Returns 403 error if the namespace is in use and force_delete is false." }, { "slug": "EGNYTE_DELETE_NOTE", "name": "Delete Note", "description": "Tool to delete a note/comment in Egnyte by its UUID. Use when you need to remove a comment from a file or folder." }, { "slug": "EGNYTE_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user from the Egnyte domain using the SCIM-compliant endpoint. Use when you need to permanently remove a user from the system. This action is destructive and cannot be undone." }, { "slug": "EGNYTE_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download file content from a specified path in Egnyte. Use when you need to retrieve the contents of a file stored in the Egnyte file system. Supports downloading specific versions via entry_id and partial content via Range header." }, { "slug": "EGNYTE_DOWNLOAD_FILE_BY_ID", "name": "Download File By ID", "description": "Tool to download file content using persistent file ID from Egnyte. Use when you need to retrieve file content by its unique group_id. Optionally specify entry_id to download a specific version of the file." }, { "slug": "EGNYTE_GET_AUDIT", "name": "Get Audit Report", "description": "Tool to retrieve an audit report by type and ID. Audit reports are generated asynchronously - first create a report using POST /pubapi/v1/audit/{type}, then use this action to retrieve the completed report data. Returns audit events in JSON format." }, { "slug": "EGNYTE_GET_AUDIT_JOB", "name": "Get audit job status", "description": "Tool to check the status of an audit report generation job. Use when you need to poll the status of a previously created audit report to determine if it's ready for download." }, { "slug": "EGNYTE_GET_AUDIT_STREAM", "name": "Get Audit Stream", "description": "Tool to stream audit events starting from a specific date. Returns up to 5,000 events for at most 30-minute spans. Use when you need to retrieve audit logs for the last 7 days. For pagination, use the nextCursor value from the response in subsequent requests." }, { "slug": "EGNYTE_GET_BOOKMARK", "name": "Get Bookmark", "description": "Tool to retrieve details for a specific bookmark by its ID. Use when you need to get the path, folder_id, or creation date of a bookmarked folder." }, { "slug": "EGNYTE_GET_EVENTS_CURSOR", "name": "Get Events Cursor", "description": "Tool to get the latest event cursor position for starting event polling. Use this to obtain the current cursor before beginning to poll for events." }, { "slug": "EGNYTE_GET_EVENTS_V2", "name": "Get Events V2", "description": "Tool to poll for events (v2) including permission_change event type in addition to file_system and note types. Use when you need to retrieve events after a specific cursor ID. Returns a 204 status if no events exist after the provided cursor." }, { "slug": "EGNYTE_GET_FILE_BY_ID", "name": "Get File Metadata by ID", "description": "Tool to retrieve file metadata using persistent file ID (group_id) instead of path. Use when you need to access file details regardless of the file's current location or name changes." }, { "slug": "EGNYTE_GET_FILE_METADATA", "name": "Get file or folder metadata", "description": "Tool to get file or folder metadata from Egnyte. Use when you need to retrieve properties like name, path, size, last modified date, type, and other metadata. For folders, optionally list contents with pagination and sorting." }, { "slug": "EGNYTE_GET_FILE_METADATA_VALUES", "name": "Get File Metadata Values", "description": "Tool to retrieve custom metadata values for a file or file version within a specific namespace. Use when you need to fetch custom properties associated with a file." }, { "slug": "EGNYTE_GET_FOLDER_BY_ID", "name": "Get Folder By ID", "description": "Tool to get folder metadata using a persistent folder ID instead of a path. Use when you have a folder_id and need to retrieve current folder details including name, path, contents, and permissions." }, { "slug": "EGNYTE_GET_FS_STATS", "name": "Get Folder Statistics", "description": "Tool to get statistics for a folder by ID including file counts, folder counts, and size information. Use when you need to retrieve storage and content metrics for a specific folder." }, { "slug": "EGNYTE_GET_GROUP", "name": "Get Group Details", "description": "Tool to retrieve details for a specific group including members and attributes. Use when you need to fetch group information by group ID. SCIM-compliant." }, { "slug": "EGNYTE_GET_LINK", "name": "Get Link Details", "description": "Tool to get detailed information about a shared link by its ID. Use when you need to retrieve details like path, type, accessibility settings, expiration date, and recipients for a specific shared link." }, { "slug": "EGNYTE_GET_LINK_SETTINGS", "name": "Get Link Settings", "description": "Tool to retrieve domain link settings including default expiration and allowed link types. Use when you need to check the organization's policies for link creation and expiration." }, { "slug": "EGNYTE_GET_PERMISSIONS", "name": "Get Folder Permissions", "description": "Tool to get effective permissions for a folder including users and groups with their permission levels. Use when you need to check who has access to a specific folder and their permission levels (Owner, Full, Editor, Viewer, None)." }, { "slug": "EGNYTE_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve details for a single user by ID. Use when you need to fetch specific user information using their user ID. SCIM-compliant endpoint." }, { "slug": "EGNYTE_GET_USERINFO", "name": "Get User Info", "description": "Tool to get information about the currently authenticated user. Use when you need to retrieve details about the user associated with the OAuth token." }, { "slug": "EGNYTE_LIST_BOOKMARKS", "name": "List Bookmarks", "description": "Tool to list all bookmarked folders for the authenticated user with pagination support. Use when you need to retrieve user bookmarks or check which folders are bookmarked." }, { "slug": "EGNYTE_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list all comments/notes on a file in Egnyte. Use when you need to retrieve comments or discussion threads associated with a specific file." }, { "slug": "EGNYTE_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all custom groups in the Egnyte domain. Use when retrieving groups for user management or access control. Does not return default Egnyte groups, only custom-created groups." }, { "slug": "EGNYTE_LIST_INSIGHTS_FILES", "name": "List Insights Files", "description": "Tool to list recently accessed files for the authenticated user. Returns up to 10 files with metadata including size, last_modified, and last_accessed timestamps." }, { "slug": "EGNYTE_LIST_LINKS_V2", "name": "List Links V2", "description": "Tool to list all shared links using the v2 API with extended response fields. Use when you need detailed link information including accessibility, protection, recipients, creation date, expiry settings, and last accessed timestamp. Note: Non-admin users will only see links they created." }, { "slug": "EGNYTE_LIST_METADATA_NAMESPACES", "name": "List Metadata Namespaces", "description": "Tool to list all custom metadata keys in a namespace. Use when you need to inspect metadata key definitions for a specific namespace in Egnyte." }, { "slug": "EGNYTE_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all users or a filtered subset from the Egnyte domain. Use when you need to list users with optional pagination and filtering via SCIM-compliant parameters." }, { "slug": "EGNYTE_LIST_WORKFLOWS", "name": "List workflows", "description": "Tool to list all workflows in Egnyte. Use when you need to retrieve the list of workflows configured in the Egnyte account." }, { "slug": "EGNYTE_LIST_WORKFLOWS_TASKS", "name": "List Workflow Tasks", "description": "Tool to list all workflow tasks. Returns an array of tasks with total count. Use when you need to retrieve all workflow tasks in the Egnyte system." }, { "slug": "EGNYTE_LOCK_FILE", "name": "Lock File", "description": "Tool to lock a file to prevent edits by other users. Use when you need to acquire an exclusive lock on a file to prevent concurrent modifications." }, { "slug": "EGNYTE_REPLACE_GROUP", "name": "Replace Group (PUT)", "description": "Tool to fully replace a group's attributes including display name and members. Use when you need to completely overwrite all group properties. This uses PUT method and replaces all attributes." }, { "slug": "EGNYTE_SEARCH_V2", "name": "Advanced Search with Metadata Filters", "description": "Tool to perform advanced search with custom metadata filtering in Egnyte using v2 API. Use when you need to search files and folders with metadata filters or namespace constraints. Results scoped to user permissions." }, { "slug": "EGNYTE_SET_FILE_METADATA_VALUES", "name": "Set File Metadata Values", "description": "Tool to set custom metadata values for a file or file version within a specific namespace. Use when you need to add or update custom properties on a file. Keys must already exist in the namespace." }, { "slug": "EGNYTE_SET_FOLDER_METADATA_VALUES", "name": "Set Folder Metadata Values", "description": "Tool to set custom metadata values for a folder within a namespace. Use when you need to assign or update custom properties on a folder in Egnyte." }, { "slug": "EGNYTE_SET_PERMISSIONS", "name": "Set Folder Permissions", "description": "Tool to set folder permissions for users or groups. Permission levels: Owner, Full, Editor, Viewer, None. Use when you need to grant or revoke access to a folder for specific users or groups." }, { "slug": "EGNYTE_STREAM_AUDIT_EVENTS", "name": "Stream Audit Events", "description": "Tool to stream audit events with filtering by audit types (FILE_AUDIT, LOGIN_AUDIT, PERMISSION_AUDIT). Use when you need to retrieve audit events for a specific date range or continue streaming from a previous cursor. Returns up to 5,000 events per request." }, { "slug": "EGNYTE_UPDATE_FOLDER_OPTIONS", "name": "Update Folder Options", "description": "Tool to update folder options including description and other settings. Use when you need to modify folder metadata such as adding or updating the folder description." }, { "slug": "EGNYTE_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update specific attributes of a group including display name and members. Use when you need to modify group properties or membership. SCIM-compliant endpoint for incremental updates." }, { "slug": "EGNYTE_UPDATE_METADATA_KEY", "name": "Update Metadata Key", "description": "Tool to update key definitions including display name, help text, data values for enums, and priority. Use when you need to modify metadata key properties within a namespace." }, { "slug": "EGNYTE_UPDATE_METADATA_NAMESPACE", "name": "Update Metadata Namespace", "description": "Tool to update key definitions of a metadata namespace. Use when you need to change the display name or adjust field priorities. At least one of displayName or priorities must be provided." }, { "slug": "EGNYTE_UPDATE_USER", "name": "Update User", "description": "Tool to update specific attributes of a user in the Egnyte domain using the SCIM-compliant endpoint. Use when you need to modify user information such as name, email, active status, or other user properties. Only the attributes provided in the request will be updated." }, { "slug": "EGNYTE_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload or update a file at the specified path in Egnyte. Use when you need to create a new file or replace an existing file. For files larger than 100MB, consider using chunked upload instead." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "egnyte_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Egnyte.filesystem,Egnyte.link,Egnyte.user,Egnyte.permission,Egnyte.group,Egnyte.projectfolders,Egnyte.webhooks,Egnyte.launchwebsession,Egnyte.salesforce,Egnyte.audit,Egnyte.search,Egnyte.notification" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Egnyte Domain", "type": "string", "description": "Your Egnyte domain/subdomain (e.g., \"mycompany\" for mycompany.egnyte.com)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "elasticsearch", "name": "Elasticsearch", "logo": "https://logos.composio.dev/api/elasticsearch", "description": "Elasticsearch is a distributed, RESTful search and analytics engine capable of addressing a growing number of use cases. It provides real-time search and analytics for all types of data.", "category": "databases", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ELASTICSEARCH_GET_INDEX_SCHEMA", "name": "Get Index Schema", "description": "Tool to get the complete schema/mapping of a specific Elasticsearch index. Use when you need to understand the structure, field types, and mappings of an index." }, { "slug": "ELASTICSEARCH_LIST_INDICES", "name": "List Indices", "description": "Tool to list all available Elasticsearch indices. Use when you need to get a list of indices in your Elasticsearch cluster, optionally filtering by pattern, health status, or other criteria." }, { "slug": "ELASTICSEARCH_PING_CLUSTER", "name": "Ping Cluster", "description": "Tool to ping the Elasticsearch cluster and check if it is running. Use when you need to verify cluster connectivity and health status before performing operations." }, { "slug": "ELASTICSEARCH_QUERY_INDEX", "name": "Query Index", "description": "Tool to query an Elasticsearch index with various filters, time ranges, and pagination support. Use when you need to search for documents in an index with complex filtering criteria." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "elasticsearch_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "full", "displayName": "Elasticsearch Base URL", "type": "string", "description": "Your cluster's web address including https:// and port, e.g. https://localhost:9200. In Elastic Cloud: Manage deployment → Copy endpoint next to Elasticsearch.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "elasticsearch_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Elasticsearch Base URL", "type": "string", "description": "Your cluster's web address including https:// and port, e.g. https://localhost:9200. In Elastic Cloud: Manage deployment → Copy endpoint next to Elasticsearch.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Paste the single Base64 'encoded' value shown once when you create a key in Kibana: Stack Management → Security → API keys — not the id/secret pair.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "elevenreader", "name": "Elevenreader", "logo": "https://logos.composio.dev/api/elevenreader", "description": "ElevenReader is an AI-powered text-to-speech application by ElevenLabs that converts written content into natural-sounding audio", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 124, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ELEVENREADER_ADD_DOCUMENTATION_TO_KNOWLEDGE_BASE", "name": "Add Documentation To Knowledge Base", "description": "Tool to add documentation to a conversational AI agent's knowledge base. Accepts either a file upload or a URL to documentation. Use when configuring an agent to have access to specific documentation for user interactions." }, { "slug": "ELEVENREADER_ADD_PRONUNCIATION_DICTIONARY_FROM_FILE", "name": "Add Pronunciation Dictionary From File", "description": "Tool to add a pronunciation dictionary from a .pls file to ElevenLabs. Use when you need to create custom pronunciation rules for text-to-speech." }, { "slug": "ELEVENREADER_ADD_PRONUNCIATION_DICTIONARY_FROM_RULES", "name": "Add Pronunciation Dictionary From Rules", "description": "Tool to add a pronunciation dictionary from rules in ElevenLabs. Use when you need to define custom pronunciations for text-to-speech using alias rules (text replacements) or phoneme rules (phonetic pronunciations)." }, { "slug": "ELEVENREADER_ADD_PRONUNCIATION_DICTIONARY_RULES", "name": "Add Pronunciation Dictionary Rules", "description": "Tool to add pronunciation rules to an ElevenLabs pronunciation dictionary. Use when you need to customize how specific words or phrases are pronounced in text-to-speech, either by providing an alias (alternative text) or phoneme representation." }, { "slug": "ELEVENREADER_ADD_SHARED_VOICE", "name": "Add Shared Voice", "description": "Tool to add a shared voice from another user's public library to your own voice library. Use when you want to clone or use a voice that has been shared publicly by another ElevenLabs user." }, { "slug": "ELEVENREADER_ADD_TOOL", "name": "Add Tool", "description": "Tool to add a conversational AI tool to ElevenLabs ConvAI. Use when you need to create a new tool for agents to use during conversations. Supports webhook, client-side, system, and MCP tools." }, { "slug": "ELEVENREADER_CALCULATE_PUBLIC_LLM_EXPECTED_COST", "name": "Calculate Public LLM Expected Cost", "description": "Tool to calculate expected LLM usage costs based on prompt length, knowledge base size, and RAG configuration. Use when estimating operational costs for conversational AI without requiring a specific agent." }, { "slug": "ELEVENREADER_CANCEL_BATCH_CALL", "name": "Cancel batch call", "description": "Tool to cancel an active batch call operation. Use when you need to stop a scheduled or in-progress batch calling campaign." }, { "slug": "ELEVENREADER_COMPUTE_RAG_INDEX", "name": "Compute RAG Index", "description": "Tool to compute RAG index for a knowledge base document. Use when you need to generate embeddings for a specific document to enable semantic search and retrieval." }, { "slug": "ELEVENREADER_CREATE_AGENT", "name": "Create Agent", "description": "Tool to create a conversational AI agent with ElevenLabs. Use when you need to set up a new agent with specific voice, language, and conversation settings." }, { "slug": "ELEVENREADER_CREATE_AGENT_RESPONSE_TEST", "name": "Create Agent Response Test", "description": "Tool to create an agent response test for testing conversational AI agents. Use when you need to create response tests, tool call tests, or simulation tests for agent validation." }, { "slug": "ELEVENREADER_CREATE_AUDIO_NATIVE_PROJECT", "name": "Create Audio Native Project", "description": "Tool to create an Audio Native enabled project on ElevenLabs. Use when you need to convert text or HTML content into an embeddable audio player with customizable appearance and voice settings." }, { "slug": "ELEVENREADER_CREATE_BATCH_CALL", "name": "Create Batch Call", "description": "Tool to submit a batch call request to ElevenLabs ConvAI. Use when you need to initiate automated calls to multiple recipients with a conversational AI agent." }, { "slug": "ELEVENREADER_CREATE_FILE_DOCUMENT", "name": "Create File Document", "description": "Tool to create a file document in the ElevenLabs knowledge base. Use when you need to upload documentation that the agent will access for user interactions." }, { "slug": "ELEVENREADER_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a folder in the ElevenLabs knowledge base. Use when you need to organize documents into folders for better structure and management." }, { "slug": "ELEVENREADER_CREATE_SECRET", "name": "Create Convai Workspace Secret", "description": "Tool to create a Convai workspace secret in ElevenLabs. Use when you need to securely store API keys, tokens, or other sensitive values for agent workflows." }, { "slug": "ELEVENREADER_CREATE_TEXT_DOCUMENT", "name": "Create Text Document", "description": "Tool to create a text document in the ElevenLabs knowledge base. Use when you need to add text content that the agent will access for user interactions." }, { "slug": "ELEVENREADER_CREATE_URL_DOCUMENT", "name": "Create URL Document", "description": "Tool to create a URL document in the ElevenLabs knowledge base. Use when you need to add web-based documentation that the agent will access for user interactions." }, { "slug": "ELEVENREADER_DELETE_AGENT", "name": "Delete Agent", "description": "Tool to permanently delete an agent from ElevenLabs. Use when you need to remove an agent that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_BATCH_CALL", "name": "Delete Batch Call", "description": "Tool to delete a specific batch call. Use when you need to permanently remove a batch call by its ID. The batch call ID must be valid and the batch call must exist, otherwise a 404 error will be raised. Example: \"Delete batch call with ID btcal_8801kfh8w831e4ft55k8k6jvzck4\"" }, { "slug": "ELEVENREADER_DELETE_CHAT_RESPONSE_TEST", "name": "Delete Agent Response Test", "description": "Tool to delete an agent response test. Use when you need to remove a test that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to delete a conversation by its unique ID. Use when you need to permanently remove a conversation from the system." }, { "slug": "ELEVENREADER_DELETE_DUBBING", "name": "Delete Dubbing", "description": "Tool to permanently delete a dubbing project by its ID. Use when you need to remove a dubbing project that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_KNOWLEDGE_BASE_DOCUMENT", "name": "Delete Knowledge Base Document", "description": "Tool to permanently delete a document from the knowledge base. Use when you need to remove documentation that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_PHONE_NUMBER", "name": "Delete Phone Number", "description": "Tool to permanently delete a phone number from ElevenLabs ConvAI. Use when you need to remove a phone number that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_RAG_INDEX", "name": "Delete RAG Index", "description": "Tool to permanently delete a RAG index from a knowledge base document. Use when you need to remove an embedding index that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_SECRET_ROUTE", "name": "Delete Convai Workspace Secret", "description": "Tool to delete a specific Convai workspace secret. Use when you need to permanently remove a secret by its ID." }, { "slug": "ELEVENREADER_DELETE_SPEECH_HISTORY_ITEM", "name": "Delete Speech History Item", "description": "Tool to permanently delete a speech history item by its ID. Use when you need to remove a specific history item from ElevenLabs." }, { "slug": "ELEVENREADER_DELETE_TOOL_ROUTE", "name": "Delete Tool", "description": "Tool to permanently delete a conversational AI tool from ElevenLabs. Use when you need to remove a tool that is no longer needed." }, { "slug": "ELEVENREADER_DELETE_TRANSCRIPT_BY_ID", "name": "Delete Transcript By Id", "description": "Tool to permanently delete a speech-to-text transcript by its ID. Use when you need to remove a transcript that is no longer needed." }, { "slug": "ELEVENREADER_DOWNLOAD_SPEECH_HISTORY_ITEMS", "name": "Download Speech History Items", "description": "Tool to download speech history items from ElevenLabs. Use when you need to retrieve previously generated audio files. Returns a single audio file or a zip containing multiple files." }, { "slug": "ELEVENREADER_DUPLICATE_AGENT", "name": "Duplicate Agent", "description": "Tool to duplicate an existing agent. Use when you need to create a copy of an agent with all its configuration." }, { "slug": "ELEVENREADER_EDIT_VOICE", "name": "Edit Voice", "description": "Tool to edit an existing voice in ElevenLabs. Use when you need to update a voice's name, description, labels, or add audio files to it." }, { "slug": "ELEVENREADER_EDIT_VOICE_SETTINGS", "name": "Edit Voice Settings", "description": "Tool to edit voice settings for a specific voice in ElevenLabs. Use when you need to adjust voice parameters like stability, similarity boost, speed, style, or speaker boost." }, { "slug": "ELEVENREADER_GENERATE_COMPOSITION_PLAN", "name": "Generate Composition Plan", "description": "Tool to generate a music composition plan using ElevenLabs Music API. Use when you need to create a structured musical composition from a text prompt, including style directions and song sections." }, { "slug": "ELEVENREADER_GET_AGENT", "name": "Get agent", "description": "Tool to retrieve complete details for a specific conversational AI agent by ID. Use when you need agent configuration, workflow, platform settings, or metadata." }, { "slug": "ELEVENREADER_GET_AGENT_KNOWLEDGE_BASE_SIZE", "name": "Get Agent Knowledge Base Size", "description": "Tool to retrieve the size of a conversational AI agent's knowledge base. Use when you need to check how many pages are stored in an agent's knowledge base." }, { "slug": "ELEVENREADER_GET_AGENT_LINK", "name": "Get Agent Shareable Link", "description": "Tool to get a shareable link for a conversational AI agent. Use when you need to generate or retrieve a link to share an agent with others." }, { "slug": "ELEVENREADER_GET_AGENT_LLM_EXPECTED_COST_CALCULATION", "name": "Calculate Agent LLM Expected Cost", "description": "Tool to calculate expected LLM usage costs for a conversational AI agent. Use when estimating operational costs based on knowledge base size, prompt length, and RAG configuration." }, { "slug": "ELEVENREADER_GET_AGENT_RESPONSE_TEST", "name": "Get Agent Response Test", "description": "Tool to retrieve agent response test details by test ID. Use when you need to fetch test configuration and parameters." }, { "slug": "ELEVENREADER_GET_AGENT_RESPONSE_TESTS_SUMMARIES", "name": "Get Agent Response Tests Summaries", "description": "Tool to retrieve agent response test summaries by test IDs. Use when you need to fetch summary information for specific agent tests." }, { "slug": "ELEVENREADER_GET_AGENT_SUMMARIES", "name": "Get Agent Summaries", "description": "Tool to retrieve summaries for multiple agents by their IDs. Use when you need to fetch agent information for one or more agents. The response includes a dictionary keyed by agent ID, where each value indicates success or failure for that specific agent." }, { "slug": "ELEVENREADER_GET_AGENT_WIDGET_ROUTE", "name": "Get Agent Widget Config", "description": "Tool to retrieve the widget configuration for a conversational AI agent. Use when you need to get the embed/widget settings including appearance, behavior, and interaction options." }, { "slug": "ELEVENREADER_GET_AUDIO_FULL_FROM_SPEECH_HISTORY_ITEM", "name": "Get Audio From History Item", "description": "Tool to retrieve the audio file from a speech history item. Use when you need to download the generated audio for a specific history item." }, { "slug": "ELEVENREADER_GET_AUDIO_NATIVE_PROJECT_SETTINGS", "name": "Get Audio Native Project Settings", "description": "Tool to retrieve audio native project settings from ElevenLabs. Use when you need to get configuration details for a specific Studio project, including enabled status, project settings (title, author, colors, etc.), and snapshot information." }, { "slug": "ELEVENREADER_GET_BATCH_CALL", "name": "Get Batch Call By Id", "description": "Tool to retrieve a batch call by its ID. Use when you need to check the status and details of a specific batch call." }, { "slug": "ELEVENREADER_GET_CONVERSATION_HISTORY", "name": "Get conversation history", "description": "Tool to retrieve complete conversation details including transcript, metadata, and analysis. Use when you need to examine the full conversation history, timing data, or assess call performance." }, { "slug": "ELEVENREADER_GET_CONVERSATIONS", "name": "Get Conversations", "description": "Tool to retrieve conversations from ElevenLabs Conversational AI. Use when you need to list, filter, or search conversations by various criteria such as agent, date range, rating, or language." }, { "slug": "ELEVENREADER_GET_CONVERSATION_SIGNED_LINK", "name": "Get Conversation Signed Link", "description": "Tool to get a signed URL for a conversation with an agent. Use when you need to generate a secure URL for accessing a conversation." }, { "slug": "ELEVENREADER_GET_DASHBOARD_SETTINGS_ROUTE", "name": "Get ConvAI dashboard settings", "description": "Tool to retrieve ConvAI dashboard settings including configured charts. Use when you need to view dashboard configuration or check which charts are enabled." }, { "slug": "ELEVENREADER_GET_DOCUMENTATION_FROM_KNOWLEDGE_BASE", "name": "Get Documentation From Knowledge Base", "description": "Tool to retrieve a specific document from a conversational AI agent's knowledge base by document ID. Use when you need to fetch details about a specific knowledge base entry including its content, type, and metadata." }, { "slug": "ELEVENREADER_GET_DUBBED_FILE", "name": "Get Dubbed File", "description": "Tool to download a dubbed audio or video file from a dubbing project. Use when you need to retrieve the dubbed output for a specific language from a completed dubbing project." }, { "slug": "ELEVENREADER_GET_DUBBED_METADATA", "name": "Get Dubbing Metadata", "description": "Tool to retrieve metadata for a dubbing project by ID. Use when you need to check the status, languages, or configuration of a specific dubbing project." }, { "slug": "ELEVENREADER_GET_DUBBED_TRANSCRIPT_FILE", "name": "Get Dubbed Transcript", "description": "Tool to retrieve the transcript of a dubbed audio or video file. Use when you need to get subtitles or full transcript for a specific language from a dubbing project." }, { "slug": "ELEVENREADER_GET_DUBBING_TRANSCRIPTS", "name": "Get Dubbing Transcripts", "description": "Tool to retrieve transcripts from a dubbing project in various formats. Use when you need to get subtitles (SRT/WebVTT) or full transcript data (JSON) for a specific language from a dubbing project." }, { "slug": "ELEVENREADER_GET_GENERATE_VOICE_PARAMETERS", "name": "Get Generate Voice Parameters", "description": "Tool to retrieve voice generation parameters from ElevenLabs. Use when you need to get available options (genders, accents, ages) and constraints (character limits, accent strength ranges) for generating voices." }, { "slug": "ELEVENREADER_GET_KNOWLEDGE_BASE_CONTENT", "name": "Get Knowledge Base Content", "description": "Tool to retrieve the text content of a knowledge base document by ID. Use when you need to access the actual content/text of a knowledge base entry rather than just its metadata." }, { "slug": "ELEVENREADER_GET_KNOWLEDGE_BASE_DEPENDENT_AGENTS", "name": "Get Knowledge Base Dependent Agents", "description": "Tool to retrieve the list of conversational AI agents that depend on a specific knowledge base document. Use when you need to identify which agents are using a particular knowledge base entry before modifying or deleting it." }, { "slug": "ELEVENREADER_GET_KNOWLEDGE_BASE_SOURCE_FILE_URL", "name": "Get Knowledge Base Source File URL", "description": "Tool to retrieve a signed URL for downloading the source file of a document from the knowledge base. Use when you need to access or download the original file associated with a knowledge base document." }, { "slug": "ELEVENREADER_GET_KNOWLEDGE_BASE_SUMMARIES", "name": "Get Knowledge Base Summaries", "description": "Tool to retrieve summaries for multiple knowledge base documents by their IDs. Use when you need to fetch document information for one or more knowledge base documents." }, { "slug": "ELEVENREADER_GET_LIBRARY_VOICES", "name": "Get Library Voices", "description": "Tool to retrieve shared voices from the ElevenLabs voice library. Use when you need to browse, search, or filter available voices for text-to-speech." }, { "slug": "ELEVENREADER_GET_LIVE_COUNT", "name": "Get Live Count", "description": "Tool to retrieve the count of active ongoing conversations. Use when you need to monitor live conversation activity for analytics purposes." }, { "slug": "ELEVENREADER_GET_MODELS", "name": "Get Models", "description": "Tool to retrieve available ElevenLabs speech synthesis models. Use when you need to list models for text-to-speech, voice conversion, or to check model capabilities and pricing." }, { "slug": "ELEVENREADER_GET_OR_CREATE_RAG_INDEXES", "name": "Get Or Create RAG Indexes", "description": "Tool to compute or retrieve RAG indexes for knowledge base documents in batch. Use when you need to generate embeddings for documents to enable semantic search and retrieval." }, { "slug": "ELEVENREADER_GET_PHONE_NUMBER", "name": "Get phone number", "description": "Tool to retrieve details for a specific phone number by ID. Use when you need phone number configuration, provider settings, or assigned agent information." }, { "slug": "ELEVENREADER_GET_PRONUNCIATION_DICTIONARIES_METADATA", "name": "Get Pronunciation Dictionaries", "description": "Tool to get a list of pronunciation dictionaries and their metadata. Use when you need to retrieve available pronunciation dictionaries for browsing, filtering, or selecting a dictionary for further operations." }, { "slug": "ELEVENREADER_GET_PRONUNCIATION_DICTIONARY_METADATA", "name": "Get Pronunciation Dictionary Metadata", "description": "Tool to retrieve metadata for a specific pronunciation dictionary by ID. Use when you need details about a particular pronunciation dictionary including version info, rules count, and timestamps." }, { "slug": "ELEVENREADER_GET_PRONUNCIATION_DICTIONARY_VERSION_PLS", "name": "Get Pronunciation Dictionary Version PLS", "description": "Tool to download a PLS file with pronunciation dictionary version rules. Use when you need to retrieve the pronunciation rules for a specific dictionary version in PLS XML format." }, { "slug": "ELEVENREADER_GET_RAG_INDEXES", "name": "Get RAG Indexes", "description": "Tool to retrieve RAG indexes for a specific knowledge base document. Use when you need to check the status and details of embeddings generated for a document." }, { "slug": "ELEVENREADER_GET_RAG_INDEX_OVERVIEW", "name": "Get RAG Index Overview", "description": "Tool to retrieve an overview of the RAG (Retrieval-Augmented Generation) index. Use when you need to check storage usage and available capacity for the knowledge base embedding models." }, { "slug": "ELEVENREADER_GET_RESOURCE_METADATA", "name": "Get Resource Metadata", "description": "Tool to retrieve metadata and sharing permissions for a workspace resource. Use when you need to check who has access to a resource, manage sharing permissions, or view resource details." }, { "slug": "ELEVENREADER_GET_SECRETS_ROUTE", "name": "Get ConvAI workspace secrets", "description": "Tool to retrieve ConvAI workspace secrets with pagination support. Use when you need to list stored secrets for the workspace, such as API keys or credentials used by agents." }, { "slug": "ELEVENREADER_GET_SETTINGS_ROUTE", "name": "Get ConvAI workspace settings", "description": "Tool to retrieve ConvAI workspace settings including MCP server access, LiveKit stack configuration, RAG retention, and webhook settings. Use when you need to view the current workspace configuration." }, { "slug": "ELEVENREADER_GET_SIMILAR_LIBRARY_VOICES", "name": "Get Similar Library Voices", "description": "Tool to find similar voices from the ElevenLabs library by uploading an audio sample. Use when you need to discover library voices that match a specific voice characteristic or sample." }, { "slug": "ELEVENREADER_GET_SINGLE_USE_TOKEN", "name": "Get Single Use Token", "description": "Tool to create a single-use token for ElevenLabs API. Use when you need a time-limited token for websocket connections (TTS or real-time transcription). Token expires after 15 minutes and is consumed on first use." }, { "slug": "ELEVENREADER_GET_SPEECH_HISTORY", "name": "Get Speech History", "description": "Tool to list generated speech history items from ElevenLabs. Use when you need to retrieve past speech generations for browsing, searching by voice or model, or reviewing generation history." }, { "slug": "ELEVENREADER_GET_SPEECH_HISTORY_ITEM_BY_ID", "name": "Get speech history item by ID", "description": "Tool to retrieve complete details for a specific speech history item by ID. Use when you need information about a previously generated audio item including text, voice settings, and metadata." }, { "slug": "ELEVENREADER_GET_TEST_INVOCATION", "name": "Get Test Invocation", "description": "Tool to retrieve test invocation details by invocation ID. Use when you need to get test run results and status for a specific test invocation." }, { "slug": "ELEVENREADER_GET_TOOL", "name": "Get tool", "description": "Tool to retrieve complete details for a specific conversational AI tool by ID. Use when you need tool configuration, usage statistics, or access information." }, { "slug": "ELEVENREADER_GET_TOOL_DEPENDENT_AGENTS", "name": "Get Tool Dependent Agents", "description": "Tool to retrieve the list of conversational AI agents that depend on a specific tool. Use when you need to identify which agents are using a particular tool before modifying or deleting it." }, { "slug": "ELEVENREADER_GET_TOOLS_ROUTE", "name": "Get ConvAI Tools", "description": "Tool to retrieve ConvAI tools with pagination support. Use when you need to list available tools in the workspace for browsing, searching, or selecting a tool for further operations." }, { "slug": "ELEVENREADER_GET_TRANSCRIPT_BY_ID", "name": "Get Transcript By ID", "description": "Tool to retrieve a speech-to-text transcript by its unique ID. Use when you need to fetch the transcribed text, word timings, and language detection results for a previously processed audio file." }, { "slug": "ELEVENREADER_GET_USAGE_CHARACTERS", "name": "Get Characters Usage Metrics", "description": "Tool to retrieve character usage metrics from ElevenLabs. Use when you need to analyze usage patterns, track consumption over time periods, or generate usage reports with custom breakdowns and aggregation intervals." }, { "slug": "ELEVENREADER_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve information about the authenticated user, including subscription details, character limits, and voice quotas. Use when you need to check user account status, remaining credits, or subscription tier." }, { "slug": "ELEVENREADER_GET_USER_SUBSCRIPTION_INFO", "name": "Get User Subscription Info", "description": "Tool to retrieve detailed subscription information for the authenticated user. Use when you need to check subscription tier, character usage, voice limits, billing status, or open invoices." }, { "slug": "ELEVENREADER_GET_USER_VOICES_V2", "name": "Get User Voices V2", "description": "Tool to retrieve voices using the V2 API from ElevenLabs. Use when you need to list available voices with advanced filtering, sorting, and pagination capabilities including search, voice type, category, and fine-tuning state filters." }, { "slug": "ELEVENREADER_GET_VOICE_BY_ID", "name": "Get Voice by ID", "description": "Tool to retrieve complete details for a specific voice by ID. Use when you need information about a voice including its settings, category, verification status, and metadata." }, { "slug": "ELEVENREADER_GET_VOICE_SETTINGS", "name": "Get Voice Settings", "description": "Tool to retrieve the current settings for a specific voice. Use when you need to check voice configuration parameters like stability, similarity boost, speed, style, and speaker boost settings." }, { "slug": "ELEVENREADER_GET_VOICE_SETTINGS_DEFAULT", "name": "Get Default Voice Settings", "description": "Tool to retrieve default voice settings for speech synthesis. Use when you need to check the default configuration values for voice stability, similarity, speed, style, and speaker boost settings." }, { "slug": "ELEVENREADER_GET_WORKSPACE_BATCH_CALLS", "name": "Get Workspace Batch Calls", "description": "Tool to get all batch calls for a workspace. Use when you need to retrieve a list of batch calls with pagination support." }, { "slug": "ELEVENREADER_GET_WORKSPACE_SERVICE_ACCOUNTS", "name": "Get Workspace Service Accounts", "description": "Tool to retrieve all service accounts in the workspace. Use when you need to list service accounts for workspace management or API key administration." }, { "slug": "ELEVENREADER_HANDLE_SIP_TRUNK_OUTBOUND_CALL", "name": "Handle SIP Trunk Outbound Call", "description": "Tool to initiate an outbound call via SIP trunk using ElevenLabs ConvAI. Use when you need to programmatically place an outbound call with a conversational agent to a specific phone number." }, { "slug": "ELEVENREADER_IMPORT_PHONE_NUMBER", "name": "Import Phone Number", "description": "Tool to import a phone number (Twilio or SIP trunk) into ElevenLabs ConvAI. Use when you need to add an external phone number for making or receiving calls with conversational agents." }, { "slug": "ELEVENREADER_ISOLATE_AUDIO_STREAM", "name": "Isolate Audio Stream", "description": "Tool to isolate vocals/speech from audio files using ElevenLabs Audio Isolation API. Use when you need to extract or separate speech from background noise or music. The audio file must be at least 4.6 seconds long." }, { "slug": "ELEVENREADER_LIST_AGENT_BRANCHES", "name": "List Agent Branches", "description": "Tool to list all branches for a specific agent. Use when you need to retrieve branch information for an agent." }, { "slug": "ELEVENREADER_LIST_AGENT_RESPONSE_TESTS", "name": "List Agent Response Tests", "description": "Tool to list agent response tests from ElevenLabs conversational AI. Use when you need to retrieve available tests for agent conversations or testing." }, { "slug": "ELEVENREADER_LIST_AGENTS", "name": "List Agents", "description": "Tool to list conversational AI agents from ElevenLabs. Use when you need to retrieve agents for browsing, searching, or selecting an agent for further operations." }, { "slug": "ELEVENREADER_LIST_DUBS", "name": "List Dubs", "description": "Tool to list dubbing projects from ElevenLabs. Use when you need to retrieve dubbing projects for browsing, filtering by status, or selecting a dubbing project for further operations." }, { "slug": "ELEVENREADER_LIST_KNOWLEDGE_BASES", "name": "List Knowledge Bases", "description": "Tool to list knowledge base documents from ElevenLabs. Use when you need to retrieve knowledge base documents for browsing, searching, or selecting documents for further operations." }, { "slug": "ELEVENREADER_LIST_MCP_SERVERS", "name": "List MCP Servers", "description": "Tool to list all MCP (Model Context Protocol) server configurations in the workspace. Use when you need to view available MCP servers, their configurations, and which agents depend on them." }, { "slug": "ELEVENREADER_LIST_PHONE_NUMBERS", "name": "List Phone Numbers", "description": "Tool to list all phone numbers available in your ElevenLabs ConvAI workspace. Use when you need to retrieve configured phone numbers for agents." }, { "slug": "ELEVENREADER_LIST_TEST_INVOCATIONS", "name": "List Test Invocations", "description": "Tool to list test invocations for a specific conversational AI agent. Use when you need to retrieve test execution history, including pass/fail counts and test run details." }, { "slug": "ELEVENREADER_LIST_WHATSAPP_ACCOUNTS", "name": "List WhatsApp Accounts", "description": "Tool to list all WhatsApp accounts available in your ElevenLabs ConvAI workspace. Use when you need to retrieve configured WhatsApp accounts for agents." }, { "slug": "ELEVENREADER_LIST_WORKSPACE_WEBHOOKS", "name": "List Workspace Webhooks", "description": "Tool to list all webhooks configured in your ElevenLabs workspace. Use when you need to retrieve webhook configurations, check webhook status, or manage webhook integrations." }, { "slug": "ELEVENREADER_MOVE_KNOWLEDGE_BASE_ENTITIES", "name": "Bulk Move Knowledge Base Entities", "description": "Tool to bulk move documents or folders to a target folder in the knowledge base. Use when you need to organize multiple knowledge base entities by moving them to a specific folder or to the root." }, { "slug": "ELEVENREADER_MOVE_KNOWLEDGE_BASE_ENTITY", "name": "Move Knowledge Base Entity", "description": "Tool to move a document or folder to a target folder in the knowledge base. Use when you need to organize a knowledge base entity by moving it to a specific folder or to the root." }, { "slug": "ELEVENREADER_PATCH_AGENT_SETTINGS", "name": "Patch Agent Settings", "description": "Tool to patch (partially update) an agent's settings. Use when you need to update specific fields of an agent without replacing all settings." }, { "slug": "ELEVENREADER_PATCH_PRONUNCIATION_DICTIONARY", "name": "Update Pronunciation Dictionary", "description": "Tool to update a pronunciation dictionary. Use when you need to modify the name or archive status of an existing pronunciation dictionary." }, { "slug": "ELEVENREADER_POST_AGENT_AVATAR", "name": "Post Agent Avatar", "description": "Tool to upload an avatar image for a conversational AI agent. Use when you need to set or update the visual representation of an agent." }, { "slug": "ELEVENREADER_REGISTER_TWILIO_CALL", "name": "Register Twilio Call", "description": "Tool to register a Twilio call with ElevenLabs ConvAI and return TwiML. Use when you need to connect an incoming or outgoing Twilio call to a conversational AI agent." }, { "slug": "ELEVENREADER_REMOVE_PRONUNCIATION_DICTIONARY_RULES", "name": "Remove Pronunciation Dictionary Rules", "description": "Tool to remove rules from a pronunciation dictionary. Use when you need to delete specific pronunciation rules from a dictionary by their rule strings." }, { "slug": "ELEVENREADER_RESUBMIT_TESTS", "name": "Resubmit Tests", "description": "Tool to resubmit failed or specific tests from a previous test invocation. Use when you need to re-run specific tests without creating a new test suite, typically to verify fixes or retry failed tests. Supports 1-200 test runs per request with optional branch and configuration overrides." }, { "slug": "ELEVENREADER_RETRY_BATCH_CALL", "name": "Retry batch call", "description": "Tool to retry a failed or cancelled batch call. Use when you need to re-attempt a batch call that did not complete successfully. This action will re-queue the batch call for processing with an incremented retry count." }, { "slug": "ELEVENREADER_RUN_AGENT_TEST_SUITE", "name": "Run Agent Test Suite", "description": "Tool to run tests on a conversational AI agent. Use when you need to execute one or more predefined tests to validate agent behavior, responses, or tool calls. Supports running 1-200 tests in a single request with optional branch and configuration overrides." }, { "slug": "ELEVENREADER_RUN_CONVERSATION_SIMULATION", "name": "Run Conversation Simulation", "description": "Tool to simulate a conversation between an agent and an AI user. Use when testing agent behavior in conversation scenarios." }, { "slug": "ELEVENREADER_SIMULATE_CONVERSATION_STREAM", "name": "Simulate Conversation (Stream)", "description": "Tool to simulate a conversation with an AI agent using a streaming endpoint. Use when you need to test or demonstrate agent conversation capabilities with streaming responses. This endpoint allows you to configure the simulated user's behavior, language, and conversation history." }, { "slug": "ELEVENREADER_UPDATE_AGENT_RESPONSE_TEST", "name": "Update Agent Response Test", "description": "Tool to update an existing agent response test in ElevenLabs ConvAI. Use when you need to modify test parameters, chat history, or test conditions for agent evaluation." }, { "slug": "ELEVENREADER_UPDATE_AUDIO_NATIVE_PROJECT_CONTENT", "name": "Update Audio Native Project Content", "description": "Tool to update audio-native project content by uploading a new txt or HTML file. Use when you need to replace or update the content of an existing audio-native project." }, { "slug": "ELEVENREADER_UPDATE_CONVAI_SETTINGS", "name": "Update ConvAI Settings", "description": "Tool to update ConvAI workspace settings in ElevenLabs. Use when you need to configure MCP server access, LiveKit stack preferences, RAG retention, or webhook settings." }, { "slug": "ELEVENREADER_UPDATE_DASHBOARD_SETTINGS_ROUTE", "name": "Update ConvAI dashboard settings", "description": "Tool to update ConvAI dashboard settings including chart configurations. Use when you need to customize which charts appear on the dashboard. Supports up to 4 charts of types: call success, criteria-based, or data collection." }, { "slug": "ELEVENREADER_UPDATE_DOCUMENT", "name": "Update Document", "description": "Tool to update a document in the ElevenLabs knowledge base. Use when you need to modify the name of an existing document." }, { "slug": "ELEVENREADER_UPDATE_PHONE_NUMBER", "name": "Update Phone Number", "description": "Tool to update a phone number's configuration in ElevenLabs ConvAI. Use when you need to modify the label, assign/unassign an agent, or update SIP trunk settings." }, { "slug": "ELEVENREADER_UPDATE_SECRET_ROUTE", "name": "Update Convai Workspace Secret", "description": "Tool to update a Convai workspace secret by ID. Use when you need to modify the name or value of an existing secret." }, { "slug": "ELEVENREADER_UPDATE_TOOL", "name": "Update Tool", "description": "Tool to update a conversational AI tool configuration. Use when you need to modify tool settings like name, description, or API schema." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "elevenreader_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your ElevenLabs API key. Get it from https://elevenlabs.io/app/settings/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "elorus", "name": "Elorus", "logo": "https://logos.composio.dev/api/elorus", "description": "Elorus is an online invoicing and time-tracking software designed for freelancers and small businesses to manage their finances and projects efficiently.", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ELORUS_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new invoice or receipt in Elorus. Invoices are automatically saved as drafts by default and use the 'initial' calculation mode (amounts specified before taxes). Required: issue_date, currency_id (currency code like 'INR', 'EUR', 'USD'), client_id (from contacts), kind ('invoice' or 'receipt'), series_id (document type ID), and at least one line item. Use ELORUS_GET_CONTACTS to obtain valid client_id values, and check existing invoices for valid currency codes and series_id (documenttype) values in your organization." }, { "slug": "ELORUS_CREATE_PRODUCT", "name": "CREATE_PRODUCT", "description": "Create a new product or service in Elorus. Use this to add items to your product catalog with pricing, tax settings, and inventory management options." }, { "slug": "ELORUS_EMAIL_INVOICE", "name": "Email Invoice", "description": "Tool to email an existing invoice to specified contacts. Use after generating an invoice and obtaining contact IDs." }, { "slug": "ELORUS_GET_BILLS", "name": "Get Bills", "description": "Retrieve a paginated list of bills (expenses/purchases) from Elorus. Supports filtering by supplier, date range, status, and text search. Use this to view and manage bills created in your organization." }, { "slug": "ELORUS_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts. Use after authentication to fetch contacts in batches. Example: 'List page 2 of active company contacts sorted by name.'" }, { "slug": "ELORUS_GET_CREDIT_NOTES", "name": "Get Credit Notes", "description": "Tool to retrieve a list of credit notes. Use when you need to fetch credit notes filtered by page, contact, date range, or currency." }, { "slug": "ELORUS_GET_EMAIL_TEMPLATES", "name": "Get Email Templates", "description": "Tool to retrieve a list of email templates. Use when you need to fetch and page through existing templates in the organization." }, { "slug": "ELORUS_GET_ESTIMATES", "name": "Get Estimates", "description": "Tool to retrieve a list of estimates. Use when you need to list estimates with pagination after creation." }, { "slug": "ELORUS_GET_INVOICES", "name": "Get Invoices", "description": "Retrieves a paginated list of invoices from Elorus with flexible filtering options. Use this tool to: - List all invoices or filter by client, status, date ranges, currency, or tags - Paginate through large invoice lists - Sort invoices by various fields - Search for specific invoice numbers The response includes invoice summaries with key details like client name, amounts, dates, and status, making it suitable for dashboard views, reports, and bulk operations." }, { "slug": "ELORUS_GET_PRODUCTS", "name": "Get Products", "description": "Tool to retrieve a list of products/services with optional filtering, sorting, and pagination. Use when you need to fetch products for reports, UI lists, or inventory management." }, { "slug": "ELORUS_GET_TAXES", "name": "Get Taxes", "description": "Tool to retrieve a list of taxes. Use after authentication to list taxes with optional filters." }, { "slug": "ELORUS_GET_TEMPLATES", "name": "Get Templates", "description": "Retrieves document templates used for formatting invoices, estimates, credit notes, and other business documents in Elorus. Templates define the visual layout, language, company branding, and default terms/notes for generated documents. Use this to list available templates, identify the default template, or get template IDs for document creation." }, { "slug": "ELORUS_UPDATE_CONTACT", "name": "Update Contact", "description": "Update an existing contact in Elorus by ID. Allows modifying contact details such as name, company, addresses, and communication preferences. Use this tool when you need to: - Update contact information (name, company, VAT number) - Modify contact addresses, emails, or phone numbers - Change contact type (client/supplier status) - Update language or currency preferences Note: At least one of first_name, last_name, or company must be provided in the update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "elorus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Elorus API Key", "type": "string", "description": "Your Elorus API Key, found in your User Profile under the top-right corner of the Elorus web application.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Elorus Organization ID", "type": "string", "description": "The Organization ID for your Elorus account, found under Settings > Organization > Organization ID in the Elorus web application.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "emailable", "name": "Emailable", "logo": "https://logos.composio.dev/api/emailable", "description": "Emailable provides an email verification API that allows developers to integrate real-time email validation into their applications, ensuring the accuracy and deliverability of email addresses.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EMAILABLE_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve account information including owner email and available credits. Use when you need to confirm account status before sending email verifications." }, { "slug": "EMAILABLE_GET_BATCH_STATUS", "name": "Get Batch Status", "description": "Tool to get the status and results of a batch verification job. Use after submitting a batch to check its progress." }, { "slug": "EMAILABLE_O_AUTH_AUTHORIZE", "name": "Build OAuth Authorization URL", "description": "Build an OAuth 2.0 authorization URL for the Emailable authorization code flow. Returns a URL to redirect users to for authorization. Upon successful authorization, users are redirected to your redirect_uri with an authorization code (valid for 10 minutes) that can be exchanged for access tokens." }, { "slug": "EMAILABLE_VERIFY_BATCH_EMAILS", "name": "Verify Batch Emails", "description": "Submit a batch of email addresses for asynchronous verification. Returns a batch ID immediately. Use this for bulk email validation (2 to 50,000 emails). For single emails, use EMAILABLE_VERIFY_EMAIL instead. The batch is processed asynchronously - use EMAILABLE_GET_BATCH_STATUS with the returned batch ID to check progress and retrieve verification results." }, { "slug": "EMAILABLE_VERIFY_EMAIL", "name": "Verify Email", "description": "Tool to verify a single email address and return detailed results. Use when you need to check email deliverability and risk." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "emailable_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Emailable API Key", "type": "string", "description": "Your Emailable API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "emaillistverify", "name": "Emaillistverify", "logo": "https://logos.composio.dev/api/emaillistverify", "description": "EmailListVerify is a service that provides email verification and validation to ensure email lists are clean and deliverable.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EMAILLISTVERIFY_CHECK_BLACKLISTS", "name": "Check Blacklists", "description": "Tool to check an IP address (IPv4/IPv6) or domain against multiple DNS-based blacklists (DNSBLs) for spam or malicious activity. Use when you need to verify the reputation of an IP or domain. Rate limit: 10 requests/second." }, { "slug": "EMAILLISTVERIFY_CHECK_DISPOSABLE", "name": "Check Disposable Domain", "description": "Tool to verify if an email domain is associated with temporary/disposable email addresses. Includes DNS record verification. Use when you need to validate if a domain is disposable before accepting email registrations." }, { "slug": "EMAILLISTVERIFY_DELETE_MAILLIST", "name": "Delete Maillist", "description": "Tool to delete a finished email list. Use when you need to remove a completed verification list. Only lists that have completed verification can be deleted." }, { "slug": "EMAILLISTVERIFY_DOWNLOAD_MAILLIST", "name": "Download Email List", "description": "Tool to download a finished email list with verification results. Supports customizable columns (firstName, lastName, gender, result, etc.) and file format (csv/xlsx). Rate limit: 5 requests/second." }, { "slug": "EMAILLISTVERIFY_FIND_CONTACT", "name": "Find Contact Email", "description": "Tool to search for a contact's business email address by name and company domain. Returns possible emails with confidence levels (high/medium/low/unknown). Rate limit: 5 requests/second. Credits: 5 (with name) or 10 (domain only)." }, { "slug": "EMAILLISTVERIFY_GET_API_FILE_INFO", "name": "Get API File Info", "description": "Tool to retrieve progress of an uploaded email list verification. Returns status (errored/waiting/progress/finished) with download URLs when complete." }, { "slug": "EMAILLISTVERIFY_GET_CREDITS", "name": "Get Credits", "description": "Tool to retrieve details about available on-demand and subscription credits. Use when you need to check credit balance before performing verifications. On-demand credits never expire, subscription credits are refreshed daily. Rate limit: 10 requests/second." }, { "slug": "EMAILLISTVERIFY_GET_EMAIL_JOB", "name": "Get Email Job Status", "description": "Tool to get the status of an asynchronous email verification job. Use when you need to check if a verification job has completed and retrieve its results. Rate limit: 100 requests per second." }, { "slug": "EMAILLISTVERIFY_GET_MAILLIST_PROGRESS", "name": "Get Maillist Progress", "description": "Tool to retrieve real-time progress updates for an uploaded email list verification. Shows status, completion percentage, and credit usage. Rate limit: 100 requests/second." }, { "slug": "EMAILLISTVERIFY_UPLOAD_EMAIL_LIST", "name": "Upload Email List", "description": "Tool to upload an email list file for bulk verification. Accepts .csv, .txt, or .xlsx files (max 100MB, 1M rows). Returns an ID to query verification progress. Rate limit: 5 requests/second." }, { "slug": "EMAILLISTVERIFY_VERIFY_SINGLE_EMAIL", "name": "Verify Single Email", "description": "Tool to verify email deliverability status of a single email address. Returns a plain text status representing deliverability. Rate limit: 10 requests/second. Credits required: 1." }, { "slug": "EMAILLISTVERIFY_VERIFY_SINGLE_EMAIL_DETAILED", "name": "Verify Single Email Detailed", "description": "Tool to verify email deliverability with detailed metadata including MX server info, ESP, first/last name estimation, gender, and role detection. Use when you need comprehensive email validation beyond basic deliverability. Rate limit: 10 requests/second, requires 1 credit per verification." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "emaillistverify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "EmailListVerify API Key", "type": "string", "description": "Your EmailListVerify API key, obtainable from your dashboard's API section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "emailoctopus", "name": "EmailOctopus", "logo": "https://logos.composio.dev/api/emailoctopus", "description": "EmailOctopus is an email marketing platform founded in 2015, offering affordable and intuitive solutions for individuals and businesses to connect with their subscribers.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EMAILOCTOPUS_CREATE_CONTACT", "name": "Create Contact", "description": "This tool creates a new contact in EmailOctopus. The tool will add a contact to a specified list with the provided information." }, { "slug": "EMAILOCTOPUS_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a new custom field on an EmailOctopus mailing list. Use when you need to add additional data fields beyond the default Email, First Name, and Last Name fields." }, { "slug": "EMAILOCTOPUS_CREATE_LIST", "name": "Create List", "description": "Creates a new mailing list in EmailOctopus for organizing and managing email contacts. The list is created with default fields (Email address, First name, Last name) and can be used to add contacts, send campaigns, and track subscriber engagement." }, { "slug": "EMAILOCTOPUS_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag on an EmailOctopus mailing list. Use when you need to add a new tag for contact segmentation and filtering purposes." }, { "slug": "EMAILOCTOPUS_DELETE_CONTACT", "name": "Delete Contact", "description": "Permanently deletes a contact from a specified EmailOctopus list. This action is irreversible - once deleted, the contact and all associated data will be removed from the list. Use this for list management, honoring deletion requests, and data privacy compliance (e.g., GDPR right to erasure)." }, { "slug": "EMAILOCTOPUS_DELETE_FIELD", "name": "Delete Field", "description": "Permanently deletes a custom field from a specified EmailOctopus list. This action is irreversible - once deleted, the field and all associated data will be removed from the list. Use this for list customization and field management." }, { "slug": "EMAILOCTOPUS_DELETE_LIST", "name": "Delete List", "description": "This tool allows you to delete an existing mailing list from your EmailOctopus account. Once a list is deleted, it cannot be recovered, and all contacts within the list will be permanently removed. Note: Lists can only be deleted if no contacts within the list have received an email in the last 7 days." }, { "slug": "EMAILOCTOPUS_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag from a mailing list in EmailOctopus. Use when you need to remove an existing tag that is no longer needed for contact organization or segmentation." }, { "slug": "EMAILOCTOPUS_GET_ALL_LISTS", "name": "Get All Lists", "description": "This tool retrieves all the mailing lists associated with the EmailOctopus account." }, { "slug": "EMAILOCTOPUS_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact from an EmailOctopus list. Use when you need to fetch contact information including email, fields, tags, and subscription status." }, { "slug": "EMAILOCTOPUS_GET_LIST", "name": "Get List", "description": "Retrieves details of a specific mailing list by ID. Use when you need to fetch list information, including its name, fields, tags, contact counts, and opt-in settings." }, { "slug": "EMAILOCTOPUS_GET_RECENT_CAMPAIGNS", "name": "Get Recent Campaigns", "description": "This tool retrieves a list of recent campaigns from the EmailOctopus account." }, { "slug": "EMAILOCTOPUS_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve contacts from an EmailOctopus list. Returns a paginated list of contacts with optional filtering by tag, status, and date ranges." }, { "slug": "EMAILOCTOPUS_LIST_TAGS", "name": "List Tags", "description": "Tool to retrieve all tags from a mailing list. Use when you need to see what tags are available on a specific list for contact segmentation." }, { "slug": "EMAILOCTOPUS_UNSUBSCRIBE_CONTACT", "name": "Unsubscribe Contact", "description": "Unsubscribes a contact from an EmailOctopus mailing list. This tool updates the contact's subscription status to 'unsubscribed', which stops them from receiving future emails from the specified list. The contact record is preserved but marked as unsubscribed." }, { "slug": "EMAILOCTOPUS_UPDATE_CONTACTS_BATCH", "name": "Batch Update Contacts", "description": "Tool to update multiple contacts in an EmailOctopus list in a single batch operation. Use when you need to efficiently update multiple contacts at once with changes to their email, fields, status, or tags." }, { "slug": "EMAILOCTOPUS_UPDATE_FIELD", "name": "Update Field", "description": "Updates an existing custom field on an EmailOctopus list including its label, tag, type, and fallback value. Use this action to modify field properties or rename field tags. Note that changing the tag will affect how the field is referenced in email templates." }, { "slug": "EMAILOCTOPUS_UPDATE_LIST", "name": "Update List", "description": "Tool to update an existing mailing list's name in EmailOctopus. Use when you need to rename a list." }, { "slug": "EMAILOCTOPUS_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag on a mailing list. Use when you need to rename a tag." }, { "slug": "EMAILOCTOPUS_UPSERT_CONTACT", "name": "Create or Update Contact", "description": "Tool to create or update a contact in EmailOctopus. If the contact does not exist, it will be created. If the contact already exists, it will be updated. Use when you need to ensure a contact exists with specific information regardless of whether they're already in the list." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "emailoctopus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your EmailOctopus API key. Generate one in your account settings. Legacy API keys (created before API v2) need to be regenerated.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "emelia", "name": "Emelia", "logo": "https://logos.composio.dev/api/emelia", "description": "Emelia is an all-in-one B2B prospecting tool offering features like cold-emailing, LinkedIn outreach, email warm-up, email finder, and LinkedIn Sales Navigator scraping.", "category": "drip emails", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EMELIA_ADD_CONTACT_TO_BLACKLIST", "name": "Add Contact to Blacklist", "description": "Tool to add a contact to the email blacklist. Use after confirming that no further emails should be sent to a specific address. Example: 'Add blocked_user@example.com to blacklist.'" }, { "slug": "EMELIA_ADD_CONTACT_TO_CAMPAIGN", "name": "Add Contact To Campaign", "description": "Tool to add a contact to an email campaign. Use when you have collected subscriber details and want to enroll them in a campaign." }, { "slug": "EMELIA_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new email campaign. Use after you have finalized the campaign name." }, { "slug": "EMELIA_CREATE_LINKEDIN_CAMPAIGN", "name": "Create LinkedIn Campaign", "description": "Tool to create a new LinkedIn campaign. Use when you need to launch a LinkedIn outreach sequence." }, { "slug": "EMELIA_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for campaign events. Use when you need to subscribe to activity updates after determining the campaign ID and desired events." }, { "slug": "EMELIA_DELETE_CONTACT_FROM_CAMPAIGN", "name": "Delete Contact From Campaign", "description": "Tool to remove a contact from an email campaign. Use when you need to revoke a contact's subscription from a specific campaign. Note: this operation is irreversible." }, { "slug": "EMELIA_DELETE_CONTACT_FROM_LINKEDIN_CAMPAIGN", "name": "Delete Contact From LinkedIn Campaign", "description": "Tool to delete a contact from a LinkedIn campaign. Use when you need to remove a contact by campaign ID and contact URL. Call after confirming the contact exists in the campaign." }, { "slug": "EMELIA_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use when you need to remove an existing webhook by URL after identifying the campaign." }, { "slug": "EMELIA_FIND_EMAIL_SINGLE_CONTACT", "name": "Find Email of Single Contact", "description": "Tool to initiate a job to find the email address of a specific contact. Use when you have the contact's full name and company details and want to retrieve their email address." }, { "slug": "EMELIA_GET_CAMPAIGN_ACTIVITIES", "name": "Get Campaign Activities", "description": "Tool to retrieve activities for a specific email campaign. Use after obtaining the campaign ID." }, { "slug": "EMELIA_GET_FIND_EMAIL_RESULT", "name": "Get Find Email Result", "description": "Tool to retrieve the result of a previously initiated email find job. Use after initiating a find-email job to check its status and outcome." }, { "slug": "EMELIA_GET_FIND_PHONE_RESULT", "name": "Get Find Phone Result", "description": "Tool to retrieve the outcome of a previously initiated phone-find job. Use after starting a job to fetch its status and details by job ID." }, { "slug": "EMELIA_GET_LINKEDIN_CAMPAIGN_ACTIVITIES", "name": "Get Campaign Activities", "description": "Tool to retrieve activities for a campaign. Use when you need to inspect engagement events for a specific campaign." }, { "slug": "EMELIA_GET_VERIFY_EMAIL_RESULT", "name": "Get Verify Email Result", "description": "Tool to get the result of an email verification job. Use after initiating an email verification job to check its status and outcome." }, { "slug": "EMELIA_INITIATE_EMAIL_VERIFICATION_JOB", "name": "Initiate Email Verification Job", "description": "Tool to initiate an asynchronous email verification job.\"" }, { "slug": "EMELIA_INITIATE_PHONE_FIND_JOB", "name": "Initiate Phone Find Job", "description": "Tool to initiate a phone-find job for a single contact. Use when you want to retrieve a contact's phone number based on their email address." }, { "slug": "EMELIA_LIST_CAMPAIGN_CONTACTS", "name": "List Campaign Contacts", "description": "Tool to list contacts in a specific email campaign. Use when you need to retrieve campaign subscribers with optional pagination." }, { "slug": "EMELIA_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve all email campaigns. Use when you need to fetch the list of campaigns, with optional pagination or search filters." }, { "slug": "EMELIA_LIST_EMAIL_PROVIDERS", "name": "List Email Providers", "description": "Tool to retrieve all configured email providers. Use after setting up your email providers to view them." }, { "slug": "EMELIA_LIST_LINKEDIN_CAMPAIGNS", "name": "List LinkedIn Campaigns", "description": "Tool to list all LinkedIn campaigns. Use when you need an overview of your LinkedIn campaigns and want to paginate results." }, { "slug": "EMELIA_LIST_WEBHOOKS", "name": "List webhooks", "description": "Tool to retrieve all webhooks. Use when you need to fetch every configured webhook in Emelia." }, { "slug": "EMELIA_REMOVE_CONTACT_FROM_BLACKLIST", "name": "Remove Contact from Blacklist", "description": "Tool to remove a contact or domain from the email blacklist. Use after verifying that the address or domain should no longer be blocked." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "emelia_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Emelia API Key", "type": "string", "description": "The API key used for authenticating requests to the Emelia API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "encodian", "name": "Encodian", "logo": "https://logos.composio.dev/api/encodian", "description": "Encodian provides a suite of document management and automation tools, including Flowr, Filer, and Indxr, designed to enhance productivity and streamline workflows within Microsoft 365 environments.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 69, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENCODIAN_ADD_ATTACHMENTS_TO_PDF", "name": "Add Attachments to PDF", "description": "Tool to add file attachments to a PDF document. Use when you need to embed files within a PDF as attachments that can be extracted later." }, { "slug": "ENCODIAN_ADD_IMAGE_WATERMARK", "name": "Add Image Watermark to PDF", "description": "Tool to add an image watermark to a PDF document. Use when you need to overlay an image on PDF pages with configurable opacity and orientation." }, { "slug": "ENCODIAN_ADD_IMAGE_WATERMARK_ADVANCED", "name": "Add Image Watermark to PDF (Advanced)", "description": "Tool to add an advanced image watermark to a PDF with precise control over positioning, opacity, scale, quality, and rotation. Use when you need to overlay a watermark image onto PDF pages with page-level targeting and advanced customization options." }, { "slug": "ENCODIAN_ADD_ITEMS_TO_ARRAY", "name": "Array Add Items", "description": "Tool to add items to a JSON array at a specified position (first, last, or specific index). Use when you need to append or insert elements into an existing JSON array structure." }, { "slug": "ENCODIAN_ADD_TO_ZIP", "name": "Create ZIP Archive", "description": "Tool to create a ZIP archive from multiple documents. Use when you need to compress and package multiple files into a single ZIP file, with optional password protection and folder structure." }, { "slug": "ENCODIAN_APPLY_AI_OCR_PDF_DOCUMENT", "name": "Apply AI OCR to PDF", "description": "Tool to apply AI-powered OCR to a PDF document with optional preprocessing filters. Use when you need to extract text from scanned PDFs or images by recognizing and converting visual text into machine-readable format. Supports advanced preprocessing like deskew, despeckle, binarization, and automatic rotation." }, { "slug": "ENCODIAN_APPLY_OCR_PDF_DOCUMENT", "name": "Apply OCR to PDF (Standard)", "description": "Tool to apply standard OCR to a PDF document with optional preprocessing filters. Use when you need to extract text from scanned PDFs or images by recognizing and converting visual text into machine-readable format. Supports language selection, quality vs speed trade-off, and preprocessing options." }, { "slug": "ENCODIAN_BASE64_DECODE", "name": "Decode Base64 String", "description": "Tool to decode a Base64 string to a file. Use when you need to extract binary content (e.g., PDF, image) from Base64 data." }, { "slug": "ENCODIAN_BASE64_ENCODE", "name": "Base64 Encode", "description": "Tool to encode a string to Base64. Use when you need to convert text into Base64 representation for use in other operations." }, { "slug": "ENCODIAN_CALCULATE_DATE", "name": "Calculate Date", "description": "Tool to calculate a date by adding or subtracting a time interval from a given date. Use when you need to compute a future or past date based on a starting date and time offset." }, { "slug": "ENCODIAN_CHECK_ARRAY_CONTAINS_VALUE", "name": "Check Array Contains Value", "description": "Tool to check if a value exists within a JSON array. Use when you need to verify if a specific value is present in an array, with optional case-insensitive matching and JSONPath support for nested data structures." }, { "slug": "ENCODIAN_CHECK_TEXT_CONTAINS_VALUE", "name": "Check Text Contains Value", "description": "Tool to check if a text string contains a specific value with configurable comparison rules. Use when you need to validate whether text contains a substring with options for case sensitivity and culture-specific comparison." }, { "slug": "ENCODIAN_CLEAN_STRING", "name": "Clean String", "description": "Tool to clean text by removing control characters, invalid filename characters, and custom character sets. Use when you need to sanitize or clean text strings for safe usage in filenames or other contexts." }, { "slug": "ENCODIAN_CLEAN_UP_IMAGE_PHOTO", "name": "Clean Up Photo Image", "description": "Tool to clean up photo images by removing artifacts, correcting orientation, and enhancing quality. Use when you need to improve image quality through operations like auto-rotation, deskewing, despeckling, and color balancing." }, { "slug": "ENCODIAN_COMBINE_ARRAYS", "name": "Combine Arrays", "description": "Tool to combine two JSON arrays by matching a key attribute. Use when you need to merge data from two arrays based on a common identifier." }, { "slug": "ENCODIAN_COMPARE_TEXT", "name": "Compare Text", "description": "Tool to compare two text strings and determine if they match. Use when you have two strings and need to verify if they are equal." }, { "slug": "ENCODIAN_COMPARE_WORD_DOCUMENTS", "name": "Compare Word Documents", "description": "Tool to compare two Microsoft Word or PDF documents and generate a document with tracked changes. Use when you need to identify differences between two document versions. The output document highlights insertions, deletions, and modifications with the specified author name." }, { "slug": "ENCODIAN_COMPRESS_IMAGE", "name": "Compress Image", "description": "Tool to compress an image in JPG or PNG format. Use when you need to reduce the file size of an image while maintaining format compatibility." }, { "slug": "ENCODIAN_COMPRESS_PDF", "name": "Compress PDF", "description": "Tool to compress a PDF document by optimizing images, removing unused objects, and applying various compression techniques. Use when you need to reduce PDF file size while maintaining readability and functionality." }, { "slug": "ENCODIAN_CONCATENATE_TEXT", "name": "Concatenate Text", "description": "Tool to concatenate an array of text values with an optional delimiter. Use when you need to combine multiple strings into a single text value with optional separator." }, { "slug": "ENCODIAN_CONVERT_ARRAY_TO_JSON", "name": "Array to JSON", "description": "Tool to convert an array to a named JSON object. Use when you need to wrap an array in a JSON object with a specific key name, optionally selecting a specific array from nested JSON using JSONPath." }, { "slug": "ENCODIAN_CONVERT_ARRAY_TO_XML", "name": "Array to XML", "description": "Tool to convert a JSON array to XML format. Use when you need to transform JSON data into XML structure with custom root and item node names." }, { "slug": "ENCODIAN_CONVERT_FILE_TO_PDF", "name": "Convert File to PDF", "description": "Tool to convert a file to PDF format. Use when you need to transform documents (Word, Excel, PowerPoint, text files, etc.) into PDF format with optional bookmarks, markup removal, and PDF/A compliance." }, { "slug": "ENCODIAN_CONVERT_HTML_TO_IMAGE", "name": "Convert HTML to Image", "description": "Tool to convert HTML content to an image. Use when you need to render HTML as an image file, supporting URL, raw HTML string, or HTML file content with optional JavaScript execution and CSS styling control." }, { "slug": "ENCODIAN_CONVERT_HTML_TO_PDF_V2", "name": "Convert HTML to PDF (V2)", "description": "Tool to convert HTML content or a URL to PDF format (V2). Use when you need to transform HTML strings, HTML files, or live web pages into PDF documents with advanced options like custom page sizes, margins, JavaScript support, and bookmarks." }, { "slug": "ENCODIAN_CONVERT_HTML_TO_WORD", "name": "Convert HTML to Word", "description": "Tool to convert HTML content to Word (DOCX) format. Use when you need to transform HTML documents, web pages, or HTML strings into Word documents with customizable page settings, margins, and compliance levels." }, { "slug": "ENCODIAN_CONVERT_IMAGE_TO_GRAYSCALE", "name": "Convert Image to Grayscale", "description": "Tool to convert an image to grayscale. Use when you need to remove color from an image and convert it to shades of gray." }, { "slug": "ENCODIAN_CONVERT_IMAGE_TO_PDF", "name": "Convert Image to PDF", "description": "Tool to convert an image file to PDF format with optional OCR. Use when you need to transform image files (PNG, JPG, etc.) into PDF documents, optionally extracting text via OCR." }, { "slug": "ENCODIAN_CONVERT_JSON_TO_EXCEL", "name": "Convert JSON to Excel", "description": "Tool to convert JSON data to Excel format. Use when you need to transform JSON arrays into Excel spreadsheets with customizable formatting options." }, { "slug": "ENCODIAN_CONVERT_JSON_TO_XML", "name": "Convert JSON to XML", "description": "Tool to convert JSON data to XML format. Use when you need to transform JSON strings into XML documents with customizable root element names and array attributes." }, { "slug": "ENCODIAN_CONVERT_TIME_ZONE_ENC", "name": "Convert Time Zone", "description": "Tool to convert a date and time value from one time zone to another using Encodian's time zone conversion API. Use when you need to transform timestamps between different time zones (e.g., UTC to Eastern Standard Time)." }, { "slug": "ENCODIAN_CONVERT_XML_TO_JSON", "name": "Convert XML to JSON", "description": "Tool to convert XML strings to JSON format. Use when you need to transform XML data into a JSON representation for easier parsing or processing." }, { "slug": "ENCODIAN_COUNT_ARRAY_ITEMS", "name": "Count Array Items", "description": "Tool to count the number of items in a JSON array or object. Use when you need to determine the size of an array or evaluate specific nodes using JSONPath expressions." }, { "slug": "ENCODIAN_CREATE_QR_CODE", "name": "Create QR Code", "description": "Tool to generate a QR code barcode image with customizable size, colors, border, and encoding options. Use when you need to create QR codes for URLs, contact information, or any text data." }, { "slug": "ENCODIAN_FORMAT_TEXT_CASE", "name": "Format Text Case", "description": "Tool to format text with various case transformations (uppercase, lowercase, title case, etc.). Use when you need to standardize or change the capitalization of text strings." }, { "slug": "ENCODIAN_GENERAL_HASH", "name": "Hash Data", "description": "Tool to compute a cryptographic hash (MD5, SHA256, etc.) of text or file data. Use when you need to verify integrity or generate digests." }, { "slug": "ENCODIAN_GENERAL_UNZIP_FILE", "name": "Unzip File", "description": "Extracts all files from a ZIP archive and returns their base64-encoded contents. Supports password-protected archives and optionally extracts files from nested folders. Use this when you need to access the contents of compressed archive files." }, { "slug": "ENCODIAN_GET_CONVERT_EXCEL_SCHEMA", "name": "Get Convert Excel Schema", "description": "Tool to retrieve the dynamic schema for Excel conversion operations. Returns the schema definition including required fields and available properties based on the specified output format. Use when you need to understand what parameters are available for converting Excel files to different formats." }, { "slug": "ENCODIAN_GET_CONVERT_WORD_SCHEMA", "name": "Get Convert Word Schema", "description": "Tool to retrieve the dynamic JSON schema for Word document conversion operations. Use when you need to discover available parameters and their constraints for converting Word documents to various formats." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CONVERT_CAD", "name": "Get Convert CAD Schema", "description": "Tool to retrieve the dynamic schema for CAD file conversion operations. Returns the schema definition that specifies available parameters for converting CAD files to various output formats. Use when you need to understand the conversion parameters available for a specific output format." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CONVERT_IMAGE_TO_PDF", "name": "Get Convert Image to PDF Schema", "description": "Tool to retrieve the dynamic schema for Convert - Image to PDF operations. Use when you need to understand the available configuration options for image-to-PDF conversion based on OCR type." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CONVERT_POWER_POINT", "name": "Get Convert PowerPoint Schema", "description": "Tool to retrieve the dynamic schema for PowerPoint conversion operations. Use when you need to understand the available parameters and requirements for converting PowerPoint files to different formats." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CONVERT_VISIO", "name": "Get Convert Visio Schema", "description": "Tool to retrieve the dynamic schema for Visio file conversion. Returns format-specific field definitions based on the selected output format (PDF, PNG, SVG, etc.). Use when you need to understand what parameters are available for converting Visio files to a specific format." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CREATE_BARCODE", "name": "Get Create Barcode Schema", "description": "Tool to retrieve the dynamic schema for creating a barcode. Use this to understand the required parameters and configuration options for a specific barcode type before creating it." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_CROP_IMAGE", "name": "Get Crop Image Schema", "description": "Tool to retrieve the dynamic schema for the Crop Image action. Returns an OpenAPI-style schema definition that varies based on the specified crop type (Border or Rectangle)." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_SEND_HTTP_REQUEST", "name": "Get Dynamic Schema for HTTP Request", "description": "Tool to retrieve the dynamic schema for the HTTP Request utility based on authentication type. Use when you need to understand what parameters are required for sending HTTP requests with specific authentication methods." }, { "slug": "ENCODIAN_GET_DYNAMIC_SCHEMA_WORD_INSERT_TEXT", "name": "Get Word Insert Text Schema", "description": "Tool to retrieve the dynamic schema for Word Insert Text operations. Use when you need to understand the available parameters and their types for inserting text into Word documents." }, { "slug": "ENCODIAN_GET_FILE_PROPERTIES", "name": "Get File Properties", "description": "Tool to retrieve properties of a file. Attempts multiple Encodian Filer endpoints and fallbacks." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_AI_RUN_PROMPT_TEXT", "name": "Get Operation Status for AIRunPromptText", "description": "Tool to get the operation status of an AIRunPromptText operation. Use when you need to check the completion status of a previously initiated AI prompt operation." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_ENCODIAN_SEND_TO_FILER", "name": "Get Operation Status for Encodian Send to Filer", "description": "Tool to get the operation status for an Encodian Send to Filer operation. Use when you need to check the completion status and retrieve results from a previously submitted Send to Filer operation." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_EXTRACT_IMAGE", "name": "Get Operation Status Extract Image", "description": "Tool to retrieve the operation status of a PDF ExtractImage operation. Use when you need to check if an image extraction operation has completed, is queued, or has failed." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_EXTRACT_TEXT_REGION", "name": "Get Operation Status for ExtractTextRegion", "description": "Tool to retrieve the operation status of an ExtractTextRegion operation. Use when you need to check if a text region extraction operation has completed and retrieve the extracted text results." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_FILE_ONLY", "name": "Get Operation Status File Only", "description": "Tool to retrieve operation status for file-only operations. Use when you need to check if an asynchronous file operation has completed." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_IMAGE_EXTRACT_TEXT", "name": "Get Operation Status for Image Extract Text", "description": "Tool to get the operation status of an ImageExtractText operation. Use when you need to check if an image text extraction operation has completed and retrieve the extracted text." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_MULTIPLE_FILES", "name": "Get Operation Status for Multiple Files", "description": "Tool to retrieve the operation status of a Word MultipleFiles operation. Use when you need to check the status and retrieve results of a previously submitted batch operation on multiple Word documents." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_PDF_SPLIT_BARCODE", "name": "Get Operation Status - PDF Split Barcode", "description": "Tool to retrieve operation status for a PDF split barcode operation. Use when you need to check the status and results of an asynchronous PDF split operation initiated previously." }, { "slug": "ENCODIAN_GET_OPERATION_STATUS_SPLIT_DOCUMENT", "name": "Get Operation Status for Split Document", "description": "Tool to retrieve the operation status of a PDF SplitDocument operation. Use when you need to check the progress or completion status of a previously initiated split document operation by providing its operation ID." }, { "slug": "ENCODIAN_GET_SIGN_PDF_SCHEMA", "name": "Get Sign PDF Schema", "description": "Tool to retrieve the dynamic schema for PDF signing operations. Returns the schema definition including required fields and available properties based on the specified certificate type. Use when you need to understand what parameters are available for signing PDF documents." }, { "slug": "ENCODIAN_GET_SUBSCRIPTION_STATUS", "name": "Get Subscription Status", "description": "Tool to retrieve Encodian subscription status for Flowr and Vertr. Use when you need to check remaining credits, billing interval, subscription level, or expiry date." }, { "slug": "ENCODIAN_IMAGE_RESIZE", "name": "Resize Image", "description": "Tool to resize an image by percentage or dimensions. Use when you need to scale or reshape an image with optional aspect-ratio enforcement." }, { "slug": "ENCODIAN_MOVE_FILE", "name": "Move File", "description": "Tool to move a file between containers. Use when you need to relocate a blob within your storage without manually copying then deleting." }, { "slug": "ENCODIAN_PDF_ADD_HEADER_FOOTER", "name": "Add PDF Header Footer", "description": "Tool to add HTML header and footer to a PDF. Use when you need to embed consistent headers or footers across pages with margin and range options." }, { "slug": "ENCODIAN_PDF_GET_METADATA", "name": "Get PDF Metadata", "description": "Extract comprehensive metadata and properties from PDF documents. Returns page count, dimensions, author/creator/producer information, creation/modification dates, PDF format version, compliance flags (PDF/A, PDF/UA), encryption status, text layer presence, and custom properties. Useful for document analysis, validation, and cataloging workflows." }, { "slug": "ENCODIAN_PDF_WATERMARK", "name": "Watermark PDF", "description": "Tool to apply a text watermark to a PDF. Use when you need to annotate PDF pages with custom labels or marks; supports page selection, positioning, opacity, and rotation." }, { "slug": "ENCODIAN_READ_QR_CODE_FROM_DOCUMENT", "name": "Read QR Code from Document", "description": "Tool to read QR codes from PDF or DOCX documents. Returns an array of detected QR code values. Supports configuration of detection confidence, page range, and control character handling." }, { "slug": "ENCODIAN_REPLACE_TEXT_WITH_IMAGE", "name": "Word - Replace Text With Image", "description": "Tool to replace text with an image in a Word document. Use when you need to substitute text placeholders with images; supports case-sensitive matching, whole-word matching, and replacing all occurrences." }, { "slug": "ENCODIAN_VALIDATE_EMAIL_ADDRESS", "name": "Validate Email Address", "description": "Validates an email address string against a custom regex pattern using Encodian's validation API. Use this when you need to check if an email address matches a specific format or pattern. The regex parameter allows you to define custom validation rules beyond standard email format. Returns a boolean result indicating whether the email matches the pattern." }, { "slug": "ENCODIAN_VALIDATE_URL_AVAILABILITY", "name": "Validate URL Availability", "description": "Tool to validate the availability of a specified URL. Use when needing to confirm if a web address is reachable before processing." }, { "slug": "ENCODIAN_WRITE_RANGE", "name": "Write Range to Excel", "description": "Tool to write values to a cell range in an Excel worksheet. Use when you need to programmatically update worksheet data by specifying a range and a 2D array of values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "encodian_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Encodian API Key", "type": "string", "description": "The API key provided by Encodian for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "endorsal", "name": "Endorsal", "logo": "https://logos.composio.dev/api/endorsal", "description": "Endorsal automates the collection and display of customer testimonials and reviews, enhancing social proof for businesses.", "category": "reviews", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENDORSAL_ARCHIVE_CONTACT", "name": "Archive Contact", "description": "Tool to archive a contact using its unique identifier. Use when you need to remove a contact from active use without permanently deleting it." }, { "slug": "ENDORSAL_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in your Endorsal account. Use when you need to add a new contact with their email, name, and company details. Optionally add the contact to an AutoRequest campaign by providing the campaign ID." }, { "slug": "ENDORSAL_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in Endorsal. Tags can be used to categorize testimonials or represent products. Use when you need to add a new organizational category or product tag." }, { "slug": "ENDORSAL_CREATE_TESTIMONIAL", "name": "Create Testimonial", "description": "Tool to submit a new testimonial. Use when adding customer feedback to your Endorsal account after gathering input." }, { "slug": "ENDORSAL_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag using its unique identifier. Use when you need to remove a tag from the system permanently." }, { "slug": "ENDORSAL_DELETE_TESTIMONIAL", "name": "Delete Testimonial", "description": "Tool to permanently delete a testimonial by its ID. Use when you need to remove a testimonial from your Endorsal account. This action cannot be undone." }, { "slug": "ENDORSAL_GET_AUTO_REQUEST_CAMPAIGN", "name": "Get AutoRequest Campaign", "description": "Tool to retrieve a specific AutoRequest campaign by its unique identifier. Use when you need to fetch details of an existing AutoRequest campaign." }, { "slug": "ENDORSAL_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact by its unique identifier. Use when you have the contact ID and need to fetch complete contact details." }, { "slug": "ENDORSAL_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve details of a specific tag by its unique identifier. Use when you have a tag ID and need full tag metadata." }, { "slug": "ENDORSAL_GET_TESTIMONIAL", "name": "Get Testimonial", "description": "Retrieves complete details of a specific testimonial by its ID. Returns the testimonial content, author information (name, email, company, job, location), rating, approval status, and timestamps. Use this after obtaining a testimonial ID from listing endpoints or creation operations." }, { "slug": "ENDORSAL_GET_WALL_OF_LOVE", "name": "Get Wall of Love", "description": "Retrieves the Wall of Love for a property, returning testimonials that match its configuration options. Optionally returns a fully rendered HTML widget. Use render=false (default) to get testimonial data as JSON for custom display, or render=true to get a complete HTML/CSS/JS bundle ready to embed on your website." }, { "slug": "ENDORSAL_GET_WIDGET", "name": "Get Widget", "description": "Tool to retrieve details of a specific widget by its unique identifier. Use when you need full widget details before editing or analysis." }, { "slug": "ENDORSAL_LIST_ALL_TAGS", "name": "List All Tags", "description": "Tool to retrieve a list of all Tag Objects across all properties in your Endorsal account. Use when you need to view all available tags regardless of property association." }, { "slug": "ENDORSAL_LIST_AUTOREQUEST_CAMPAIGNS", "name": "List AutoRequest Campaigns", "description": "Tool to retrieve a list of all AutoRequest campaigns. Use when you need to view both active and inactive campaigns." }, { "slug": "ENDORSAL_LIST_CONTACTS", "name": "List Contacts", "description": "Retrieves a paginated list of all contacts for a specific property in your Endorsal account. Contacts are created when testimonials are submitted or when you manually add contacts to your property. Use this action to browse your contact list, view contact details, and manage your customer database. Requires a valid property_id which can be obtained from the List Properties action." }, { "slug": "ENDORSAL_LIST_CONTACT_TESTIMONIALS", "name": "List Contact Testimonials", "description": "Retrieves all testimonials associated with a specific contact in Endorsal. A contact in Endorsal is a person or entity that has been added to your contact list, typically through manual import, API creation, or auto-request campaigns. This action returns testimonials that have been explicitly linked to the specified contact. Note: This is different from testimonials created with an email address - those are standalone testimonials. Use List Contacts to find valid contact IDs first. Use this action when you need to view all testimonials for a particular contact, such as when displaying a contact's feedback history or generating reports." }, { "slug": "ENDORSAL_LIST_PROPERTIES", "name": "List Properties", "description": "Tool to retrieve all properties for the authenticated account. Use after obtaining a valid API key and login." }, { "slug": "ENDORSAL_LIST_TAGS", "name": "List Tags", "description": "Retrieves all tags associated with a specific property in Endorsal. Tags are used to categorize and organize testimonials. Use this action when you need to view available tags for a property before assigning them to testimonials, or to get a complete list of tags for filtering purposes." }, { "slug": "ENDORSAL_LIST_TAG_TESTIMONIALS", "name": "List Tag Testimonials", "description": "Tool to retrieve all testimonials for a given tag. Use when you need to list testimonials filtered by tag ID for pagination and display." }, { "slug": "ENDORSAL_LIST_TESTIMONIALS", "name": "List Testimonials", "description": "Retrieves a paginated list of all testimonials in your Endorsal account. Use when you need to browse testimonials, generate reports, or manage customer feedback." }, { "slug": "ENDORSAL_LIST_WIDGETS", "name": "List Widgets", "description": "Retrieves all testimonial display widgets associated with your Endorsal account. Widgets are used to display collected testimonials on your website. This action returns basic information about each widget including its ID, name, status, and timestamps. No parameters required - retrieves all widgets for the authenticated account. Use this when you need to: - Enumerate available widgets for management or selection - Get widget IDs for use with other widget operations - Check widget statuses across your account" }, { "slug": "ENDORSAL_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Tool to search contacts using query Match Objects. Returns matching Contact Objects based on field, operator, and value criteria. Use when you need to find specific contacts by email, name, company, or other fields with flexible matching operators." }, { "slug": "ENDORSAL_SEARCH_TESTIMONIALS", "name": "Search Testimonials", "description": "Tool to search testimonials using query Match Objects. Returns matching Testimonial Objects. Use when you need to filter testimonials by specific criteria like rating, approval status, property ID, or any other testimonial field." }, { "slug": "ENDORSAL_TAG_TESTIMONIAL", "name": "Tag Testimonial", "description": "Tool to add tag(s) to a testimonial. Use when you need to categorize or associate tags with a testimonial. Supports both existing tags (by _id) and creating new tags inline." }, { "slug": "ENDORSAL_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update a contact's information. Pass in fields you'd like to update using a 'fields' object. Use when you need to modify existing contact details." }, { "slug": "ENDORSAL_UPDATE_TESTIMONIAL", "name": "Update Testimonial", "description": "Tool to update an existing testimonial. Pass in only the fields you want to update using the 'fields' object. Use this when modifying testimonial content, author information, rating, or approval status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "endorsal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Endorsal API Key", "type": "string", "description": "The API key provided by Endorsal for authentication. You can find it under your Endorsal account's 'Account Details' > 'API' section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "engage", "name": "Engage", "logo": "https://logos.composio.dev/api/engage", "description": "Engage turns your customers into fans with personalised messaging; using emails, push and in-app notifications, and SMS.", "category": "marketing automation", "authSchemes": [ "BASIC" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENGAGE_ADD_CUSTOMER_TO_ACCOUNTS", "name": "Add Customer to Accounts", "description": "Tool to add a customer to one or more account entities. Use when you need to associate a user with accounts and optionally assign roles." }, { "slug": "ENGAGE_ADD_USER_TO_LISTS", "name": "Add User to Lists", "description": "Tool to add a Customer or Account to one or more Lists in Engage.so. Use when you need to subscribe a user to specific lists for targeted messaging." }, { "slug": "ENGAGE_ARCHIVE_LIST", "name": "Archive List", "description": "Tool to archive a List in Engage. Use when you want to prevent new subscribers from being added to a list. Existing subscribers will not be affected." }, { "slug": "ENGAGE_ARCHIVE_USER", "name": "Archive User", "description": "Tool to archive a user in Engage. Use when you need to deactivate a user account while preserving all historical data. The user will stop being active and all engagement and events for the user will be stopped, but all messages, logs, and related data will be preserved." }, { "slug": "ENGAGE_CONVERT_USER_TYPE", "name": "Convert User Type", "description": "Tool to convert a user between Customer and Account entity types. Use when you need to change a customer to an account or vice versa." }, { "slug": "ENGAGE_CREATE_LIST", "name": "Create List", "description": "Tool to create a new List in Engage for organizing subscribers. Use when you need to set up a new list for managing contacts or subscribers." }, { "slug": "ENGAGE_CREATE_USER", "name": "Create User", "description": "Tool to create a new user (Customer or Account) in Engage. Use when you need to add a user with optional metadata, device tokens, or list subscriptions." }, { "slug": "ENGAGE_DELETE_SUBSCRIBER_FROM_LIST", "name": "Delete Subscriber From List", "description": "Tool to remove a subscriber from a List entirely (different from unsubscribing). Use when you need to completely delete a subscriber's association with a specific list." }, { "slug": "ENGAGE_DELETE_USER", "name": "Delete User", "description": "Tool to completely delete all user data for a Customer or Account. This is a permanent, destructive action that removes all associated user data from Engage." }, { "slug": "ENGAGE_GET_ACCOUNT_MEMBERS", "name": "Get Account Members", "description": "Tool to retrieve all members (Customers) of an Account in Engage. Use when you need to list users who are part of a specific account." }, { "slug": "ENGAGE_GET_LIST", "name": "Get List", "description": "Tool to retrieve a single List by its ID. Use when you need to fetch details about a specific List." }, { "slug": "ENGAGE_GET_USER", "name": "Get User By ID", "description": "Tool to retrieve a single user by their user ID. Use when you need to fetch complete user information including metadata, attributes, devices, lists, segments, and message statistics." }, { "slug": "ENGAGE_LIST_LISTS", "name": "List Lists", "description": "Tool to retrieve a paginated list of all Lists in Engage. Use when you need to view available Lists or iterate through all Lists in the account." }, { "slug": "ENGAGE_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a paginated list of all users in Engage. Use when you need to list users with optional filtering by email and cursor-based pagination support." }, { "slug": "ENGAGE_MERGE_USERS", "name": "Merge Users", "description": "Tool to merge two user profiles in Engage. The source user is merged into the destination user, and the source user profile is removed. Use when you need to consolidate duplicate user accounts or combine user data from multiple profiles into a single account." }, { "slug": "ENGAGE_REMOVE_CUSTOMER_FROM_ACCOUNT", "name": "Remove Customer from Account", "description": "Tool to remove a Customer from an Account in Engage. Use when you need to disassociate a customer from a specific account." }, { "slug": "ENGAGE_SEND_BATCH_REQUEST", "name": "Batch Request", "description": "Tool to batch multiple create user, update user, and add user events operations into a single API call. Use when you need to perform multiple operations efficiently at the cost of one API request. The batch is queued for processing without immediate validation, so ensure all parameters are correct. Request size must remain under 100KB." }, { "slug": "ENGAGE_SUBSCRIBE_USER_TO_LIST", "name": "Subscribe User to List", "description": "Tool to create a user and subscribe them to an Engage.so List. Use when you need to add users to a specific list for email marketing or user segmentation. If the user already exists, they will be added to the List without creating a duplicate." }, { "slug": "ENGAGE_TRACK_USER_EVENT", "name": "Track User Event", "description": "Tool to add user events to Engage. Use this to track user actions and events in your application. You can later segment users based on these actions or events." }, { "slug": "ENGAGE_UPDATE_ACCOUNT_ROLE", "name": "Update Account Role", "description": "Tool to update the role of a Customer in an Account or set a new one if none exists. Use when you need to assign or change a customer's role within a specific account." }, { "slug": "ENGAGE_UPDATE_SUBSCRIBER_STATUS", "name": "Update Subscriber Status", "description": "Tool to update a subscriber's status on a List. Use when you need to subscribe, re-subscribe, or unsubscribe a user from a specific List." }, { "slug": "ENGAGE_UPDATE_USER", "name": "Update User", "description": "Tool to update user data and attributes on Engage. Use this to update user data changes like changes in plan, name, location, etc. If the user doesn't exist, this method creates the user." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "engage_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your Engage API Key (also called Public Key). Navigate to your Engage account, go to Settings > Account to retrieve it.", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your Engage API Secret (also called Secret Key). Navigate to your Engage account, go to Settings > Account to retrieve it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "enginemailer", "name": "Enginemailer", "logo": "https://logos.composio.dev/api/enginemailer", "description": "Enginemailer is an email marketing platform that enables businesses to manage contacts, design campaigns, and send personalized emails.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENGINEMAILER_ACTIVATE_SUBSCRIBER", "name": "Activate Subscriber", "description": "Tool to activate an inactive subscriber in EngineMailer. Use when you need to reactivate a subscriber that was previously deactivated either through the API or manually." }, { "slug": "ENGINEMAILER_ADD_UPDATE_SUBSCRIBER", "name": "Add or Update Subscriber", "description": "Tool to add or update a subscriber with custom fields via N8N integration. Use when you need to create a new subscriber or update an existing one in the EngineMailer system." }, { "slug": "ENGINEMAILER_BATCH_UPDATE_STATUS", "name": "Check Batch Update Status", "description": "Tool to check the status of a batch subscriber update operation. Use when you need to verify if a batch update job has completed or is still processing." }, { "slug": "ENGINEMAILER_BATCH_UPDATE_SUBSCRIBERS", "name": "Batch Update Subscribers", "description": "Tool to add or update multiple subscribers with custom fields in a single batch operation. Use when you need to create or update multiple subscribers efficiently. Subscribers that fail validation are removed from processing automatically." }, { "slug": "ENGINEMAILER_CHECK_EXPORT_STATUS_V2", "name": "Check Export Status V2", "description": "Tool to check status of a previously requested CSV report export. Use after initiating an export to poll for completion. Large exports may take significant time; poll repeatedly until status indicates readiness before consuming the export data." }, { "slug": "ENGINEMAILER_CONNECT", "name": "Test API Connection", "description": "Tool to test API connection and verify authentication. Use when you need to validate API credentials or check connectivity." }, { "slug": "ENGINEMAILER_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new email campaign. Use when you need to configure and schedule a campaign before sending. Set trackOpens and trackClicks at creation; these flags cannot retroactively affect already-delivered messages." }, { "slug": "ENGINEMAILER_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete an undelivered email campaign. Use when you need to remove a campaign that has not been sent yet." }, { "slug": "ENGINEMAILER_DELETE_RECIPIENT_LIST", "name": "Delete Recipient List", "description": "Tool to delete an existing recipient list from a targeted campaign. Use when you need to remove a specific recipient list from a campaign." }, { "slug": "ENGINEMAILER_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Tool to remove a subscriber from the system by email address. Use when you need to permanently delete a subscriber's record." }, { "slug": "ENGINEMAILER_EXPORT_CSV_REPORT_V2", "name": "Export CSV Report V2", "description": "Tool to export a transactional email report as CSV. Initiates an async export within a specific date range (max past 60 days); check readiness via ENGINEMAILER_CHECK_EXPORT_STATUS_V2 before using the export." }, { "slug": "ENGINEMAILER_FIND_SUBSCRIBER", "name": "Find Subscriber", "description": "Tool to find a subscriber by email address via N8N integration. Use when you need to search for and retrieve subscriber information from the EngineMailer system." }, { "slug": "ENGINEMAILER_GET_GETCUSTOMFIELD", "name": "Get Custom Field List", "description": "Tool to retrieve the list of custom fields configured for subscribers. Use when you need to discover available custom fields for subscriber management." }, { "slug": "ENGINEMAILER_GET_LISTCAMPAIGN", "name": "Get List Campaign", "description": "Tool to get a list of undelivered campaigns. Use when you need to fetch campaigns awaiting delivery." }, { "slug": "ENGINEMAILER_GET_NEW_SUBSCRIBERS", "name": "Get New Subscribers", "description": "Tool to retrieve new subscribers with optional filtering by source, form, page, or popup. Use when you need to fetch recently added subscribers for synchronization or reporting workflows." }, { "slug": "ENGINEMAILER_GET_SUBCATEGORY", "name": "Get Subcategories", "description": "Tool to retrieve subcategories for a given category. Use when you need to list or choose subcategories after selecting a category." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBER", "name": "Get Subscriber", "description": "Tool to retrieve subscriber information by email address. Use when you need to fetch details about a specific subscriber including their custom fields." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBER_AUTORESPONDER_COMPLETED", "name": "Get Subscriber Autoresponder Completed", "description": "Tool to retrieve subscribers who completed autoresponders with optional filtering by autoresponder ID. Use when you need to fetch completion events for autoresponders, optionally filtered by specific autoresponder or polling for new events since a timestamp." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBER_AUTORESPONDER_TRIGGERED", "name": "Get Subscriber Autoresponder Triggered", "description": "Tool to retrieve subscribers who triggered autoresponders with optional filtering by autoresponder ID. Use when you need to fetch trigger events for autoresponders, optionally filtered by specific autoresponder or polling for new events since a timestamp." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBERS_DELETED", "name": "Get Deleted Subscribers", "description": "Tool to retrieve deleted subscribers since last polling date. Use when you need to track or sync subscribers who have been removed from the system." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBERS_MODIFIED", "name": "Get Subscribers Modified", "description": "Tool to retrieve modified subscribers since last polling date with optional limit. Use when you need to fetch recently modified subscribers for synchronization or polling workflows." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBERS_TAGGED", "name": "Get Subscribers Tagged", "description": "Tool to retrieve subscribers who were tagged with optional filtering by subcategory. Use when you need to fetch tagged subscribers for synchronization or reporting workflows." }, { "slug": "ENGINEMAILER_GET_SUBSCRIBERS_UNTAGGED", "name": "Get Untagged Subscribers", "description": "Tool to retrieve subscribers who were untagged from subcategories. Use when you need to track or sync subscribers who have had tags removed, with optional filtering by subcategory and polling date." }, { "slug": "ENGINEMAILER_GET_UNSUBSCRIBE", "name": "Get Unsubscribe Events", "description": "Tool to retrieve unsubscribe events with optional filtering by campaign or autoresponder. Use when you need to fetch unsubscribe data for reporting, synchronization, or compliance workflows." }, { "slug": "ENGINEMAILER_INSERT_SUBSCRIBER", "name": "Insert Subscriber", "description": "Tool to add a new subscriber with optional custom fields. Use when registering a user to a specific mailing list after verifying their email." }, { "slug": "ENGINEMAILER_LIST_AUTORESPONDERS", "name": "List Autoresponders", "description": "Tool to retrieve a list of all autoresponders. Use when you need to fetch available autoresponders configured in the system." }, { "slug": "ENGINEMAILER_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve a list of all campaigns. Use when you need to fetch all campaigns from the system." }, { "slug": "ENGINEMAILER_LIST_FORMS", "name": "List Forms", "description": "Tool to retrieve a list of available forms in Enginemailer. Use when you need to discover forms for n8n integration or workflow configuration." }, { "slug": "ENGINEMAILER_LIST_PAGES", "name": "List Pages", "description": "Tool to retrieve a list of all pages. Use when you need to fetch available pages." }, { "slug": "ENGINEMAILER_LIST_POPUPS", "name": "List Popups", "description": "Tool to retrieve a list of popups from Enginemailer. Use when you need to fetch available popups for n8n workflows." }, { "slug": "ENGINEMAILER_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of all email templates. Use when you need to fetch available email templates for campaigns." }, { "slug": "ENGINEMAILER_PAUSE_CAMPAIGN", "name": "Pause Campaign", "description": "Tool to pause a scheduled email campaign. Use when you need to halt a campaign before sending to apply updates or adjust schedule." }, { "slug": "ENGINEMAILER_POST_UPDATECATEGORY", "name": "Create/Update Category", "description": "Tool to create or update a category for subscriber segmentation. Use when organizing subscribers by common interests for targeted email marketing." }, { "slug": "ENGINEMAILER_POST_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update data for an existing subscriber in EngineMailer. Use when you need to modify subscriber information such as custom fields or subcategory assignments." }, { "slug": "ENGINEMAILER_SEND_CAMPAIGN", "name": "Send Campaign", "description": "Tool to send an email campaign immediately. Use when the campaign exists, has at least one recipient, and is not scheduled or already delivered. E.g., 'Send campaign 123 now'." }, { "slug": "ENGINEMAILER_TAG_TO_SUBCATEGORY", "name": "Tag Subscriber to Subcategory", "description": "Tool to tag a subscriber to a specific subcategory via N8N API endpoint. Use when you need to categorize or organize subscribers by assigning them to a subcategory." }, { "slug": "ENGINEMAILER_UNSUBSCRIBE", "name": "Unsubscribe (N8N)", "description": "Tool to unsubscribe a subscriber via N8N API endpoint. Use when you need to remove a subscriber from the mailing list using the N8N integration endpoint." }, { "slug": "ENGINEMAILER_UNSUBSCRIBE_SUBSCRIBER", "name": "Unsubscribe Subscriber", "description": "Tool to unsubscribe a subscriber from the email list. Use when a user requests to be removed from the mailing list or to comply with unsubscribe requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "enginemailer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Enginemailer API Key", "type": "string", "description": "The API key used for authenticating requests to the Enginemailer API. Obtain this from your user profile at https://portal.enginemailer.com/Account/UserProfile.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "enigma", "name": "Enigma", "logo": "https://logos.composio.dev/api/enigma", "description": "Enigma provides comprehensive data on U.S. businesses, offering insights into their identity and financial health to support sales, marketing, risk assessment, and compliance processes.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENIGMA_CREATE_LIST", "name": "Create List", "description": "Tool to create a new list to organize and group entities in Enigma. Use when you need to create a list for data generation or enrichment purposes. The list can be populated using search criteria (entityType and prompt) to find matching entities." }, { "slug": "ENIGMA_CREATE_SUGGESTION", "name": "Create Suggestion", "description": "Tool to create a suggestion for data correction, enhancement, or analysis feedback in Enigma. Use when you need to submit feedback or suggest improvements to data in the Enigma platform." }, { "slug": "ENIGMA_DELETE_LIST", "name": "Delete List", "description": "Tool to delete an existing list permanently from the system. Use when you need to remove a list by its ID. Returns confirmation with the ID of the deleted list." }, { "slug": "ENIGMA_GET_ACCOUNT", "name": "Get Account Information", "description": "Tool to retrieve information about the current API account via GraphQL. Use when you need to check customer ID, billing details, pricing plan, credit availability, or auto-recharge settings." }, { "slug": "ENIGMA_GET_AGGREGATE_COUNTS", "name": "Get Aggregate Counts", "description": "Tool to get aggregate counts of operating locations and their associated brands or legal entities. Use when you need summary counts rather than detailed entity information. Supports filtering by open operating locations." }, { "slug": "ENIGMA_GET_ATTRIBUTE_GROUPS", "name": "Get Attribute Groups", "description": "Tool to retrieve attribute groups for Enigma entity types. Returns JSON metadata describing available attributes organized into logical groups (ID, Name, Address, etc.) with their corresponding GraphQL field paths. Use when you need to discover queryable fields for Brand, OperatingLocation, or LegalEntity entities." }, { "slug": "ENIGMA_GET_BACKGROUND_TASK", "name": "Get Background Task Status", "description": "Tool to get the status and results of a background task by ID. Use when checking async operation progress or retrieving results from previously initiated long-running operations." }, { "slug": "ENIGMA_GET_BUSINESS", "name": "Get Business by Enigma ID", "description": "Tool to retrieve detailed business information using an Enigma ID. Returns comprehensive business profile including addresses, names, websites, associated people, industries, and more. Use when you need complete business details for a specific Enigma ID obtained from a prior search or match operation." }, { "slug": "ENIGMA_GET_DECISION", "name": "Get Screening Decision", "description": "Tool to retrieve a screening decision by its request ID. Use when you need to check the status, alert status, assignee, or timestamps of a previously created decision. Requires case management to be enabled for the account." }, { "slug": "ENIGMA_GET_GRAPH_QL_SCHEMA_EXTENDED", "name": "Get Extended GraphQL Schema", "description": "Tool to retrieve extended schema information for Enigma's GraphQL API. Returns metadata about available types, fields, projections, and data asset metadata. Use when you need to explore the GraphQL schema structure or understand what data types and fields are available." }, { "slug": "ENIGMA_GET_LIST_MATERIALIZATION", "name": "Get List Materialization", "description": "Tool to retrieve a specific list materialization by its unique ID. Returns detailed information about the materialized list including status, progress, and results location. Use when you need to check the status or retrieve results of a list materialization operation." }, { "slug": "ENIGMA_GET_SANCTIONED_ENTITY", "name": "Get Sanctioned Entity Details", "description": "Tool to retrieve detailed information about a specific sanctioned entity by its ID. Returns full entity profile including names, aliases, DOB, nationality, addresses, documents, and program designations. Use this when you need complete information about a known sanctioned entity from screening results." }, { "slug": "ENIGMA_KYB_VERIFICATION", "name": "KYB Business Verification", "description": "This tool performs a Know Your Business (KYB) check on a U.S. business by querying Enigma's dataset of legal entities based on official state records. It verifies business information and returns comprehensive details about the business, including best match, legal entities, brands, and watchlists. Supports U.S. businesses only." }, { "slug": "ENIGMA_LIST_DECISIONS", "name": "List Screening Decisions", "description": "Tool to retrieve multiple screening decisions with pagination and filtering options. Use when you need to list, search, or review historical screening decisions by alert status, assignee, date range, tag, or decision status." }, { "slug": "ENIGMA_MATCH_BUSINESS", "name": "Match Business Profile", "description": "Tool to match business records against Enigma's SMB data asset using fuzzy matching on business name and location. Use when you need to identify a business profile and obtain an Enigma ID for further data retrieval." }, { "slug": "ENIGMA_SCREENING_VERIFICATION", "name": "Screen Against Sanctions and Watchlists", "description": "A tool to screen customers and transactions against sanctions and other watchlists. This endpoint allows for independent verification without requiring any external resource IDs." }, { "slug": "ENIGMA_SEARCH_GRAPH_QL", "name": "Search Enigma Entities via GraphQL", "description": "Tool to search and retrieve entities from Enigma's comprehensive U.S. business database. Returns brands (customer-facing identities), operating locations (physical/virtual spaces), or legal entities (government registrations) based on search criteria. Search precision is approximately 94% for all entity types. Use when you need to find business information by name, address, phone, website, or TIN." }, { "slug": "ENIGMA_SEARCH_LISTS", "name": "Search User-Created Lists", "description": "Tool to search and retrieve user-created lists via GraphQL. Returns paginated list connections with cursor-based pagination. Use when you need to query, filter, or browse entity lists." }, { "slug": "ENIGMA_VERIFY_BUSINESS_V2", "name": "Verify Business Identity (KYB v2)", "description": "Tool to verify business identity using Enigma's KYB v2 endpoint. Performs comprehensive business verification including TIN verification, SSN verification, watchlist screening, and business bankruptcy checks. This is the current recommended version of the KYB API. Use when you need to verify a business's identity, check compliance, or assess business risk." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "enigma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Enigma API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "enrichley", "name": "Enrichley", "logo": "https://logos.composio.dev/api/enrichley", "description": "Email validation and profile enrichment service", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ENRICHLEY_GET_API_KEY_DETAILS", "name": "Get API Key Details", "description": "Tool to retrieve information about the API key, including its name, monthly credits granted, and remaining credits. Use when you need to check API key details or monitor credit usage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "enrichley_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard under API Keys (https://app.enrichley.io/dashboard/api)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eodhd_apis", "name": "EODHD APIs", "logo": "https://logos.composio.dev/api/eodhd_apis", "description": "EODHD APIs provide comprehensive financial data, including historical stock market data, live stock prices, fundamental data, and more, accessible via REST and WebSocket APIs.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EODHD_APIS_GET_EOD_YAHOO_STYLE", "name": "Get EOD Yahoo Style Data", "description": "Retrieves end-of-day historical stock price data using Yahoo Finance style parameters via EODHD API. Returns OHLCV (Open, High, Low, Close, Volume) data plus adjusted close prices for stocks, ETFs, mutual funds, bonds, and other securities across 70+ global exchanges. Use this alternative API when you need Yahoo Finance compatible date parameters (a/b/c for start date, d/e/f for end date with 0-indexed months)." }, { "slug": "EODHD_APIS_GET_ID_MAPPING", "name": "Get ID Mapping", "description": "Tool to convert between different security identifiers (CUSIP, ISIN, FIGI, LEI, CIK, ticker symbol). Use when you need to map one type of identifier to another, normalize portfolio data, or cross-reference securities across different systems. At least one filter parameter must be provided." }, { "slug": "EODHD_APIS_GET_MACRO_INDICATORS", "name": "Get Macro Indicators", "description": "Retrieve macroeconomic indicator data for a specific country from EODHD. Returns historical time series data for economic indicators like GDP, inflation, unemployment, population, and many more. Data typically spans from 1960 to the present year. Use this when you need economic statistics for analysis, comparison, or research." }, { "slug": "EODHD_APIS_GET_MUTUAL_FUNDS_DATA", "name": "Get Mutual Funds Data", "description": "Retrieves comprehensive fundamental data for mutual funds via EODHD API. Returns fund details including general information (name, family, inception date, summary), asset allocation (cash, stocks, bonds percentages), value/growth measures (P/E, price-to-book), sector weightings, and world regions exposure. Supports over 20,000 US mutual funds including equity, balanced, and bond-based funds. Use ticker format 'SYMBOL.US' (e.g., 'VFIAX.US', 'SWPPX.US') or ISIN/CUSIP identifiers." }, { "slug": "EODHD_APIS_GET_REAL_TIME_QUOTE", "name": "Get Real-Time Quote", "description": "Retrieves real-time (delayed 15-20 minutes for stocks, ~1 minute for forex) OHLCV data for stocks, forex, and cryptocurrencies. Returns latest 1-minute bar with open, high, low, close, volume, previous close, and price changes. Use this when you need current market prices and intraday data." }, { "slug": "EODHD_APIS_GET_REAL_TIME_WEBSOCKET_FOREX", "name": "Get Real-Time FOREX WebSocket Stream", "description": "Provides WebSocket connection details for real-time FOREX currency pair data from EODHD. Returns the WebSocket endpoint URL and subscription message needed to receive live bid/ask prices with ~50ms latency for forex pairs like EURUSD, GBPUSD, USDJPY. Response data format from the WebSocket includes: - s: symbol (e.g., 'EURUSD') - a: ask price - b: bid price - dc: daily change percentage - dd: daily difference - t: timestamp in epoch milliseconds Note: Maximum 50 symbols can be subscribed at once." }, { "slug": "EODHD_APIS_GET_REAL_TIME_WEBSOCKET_US_TRADE", "name": "Get Real-time WebSocket US Trades", "description": "Tool to retrieve real-time trade data for the US market via WebSocket. Use when live updates for specific US symbols are required. Example: subscribe to ['AAPL', 'GOOG']." }, { "slug": "EODHD_APIS_GET_USER_INFO", "name": "Get User Info", "description": "Retrieve current user account information and API usage statistics from EODHD. Returns details including subscription type, daily rate limits, number of API requests made, email, name, and payment method. Use this to monitor API usage, check remaining quota, or verify account details." }, { "slug": "EODHD_APIS_GET_UST_YIELD_RATES", "name": "Get US Treasury Yield Rates", "description": "Retrieve US Treasury yield curve rates from EODHD API. Returns historical par yield data across all maturities (1 month, 6 months, 1 year, 2 years, 5 years, 10 years, 30 years, etc.). Use this when you need Treasury yield curve data for financial analysis, economic research, or investment decisions." }, { "slug": "EODHD_APIS_LIST_EXCHANGES", "name": "List Supported Exchanges", "description": "Retrieve a list of all supported stock exchanges from EODHD API. Returns exchange codes, names, countries, and currencies for 70+ global exchanges. Use this when you need to discover available exchanges or verify exchange codes for ticker symbols." }, { "slug": "EODHD_APIS_SEARCH_INSTRUMENTS", "name": "Search Instruments", "description": "Search for stocks, ETFs, mutual funds, bonds, and indices by ticker symbol, company name, or ISIN. Use when you need to find instruments by name or identifier, discover available tickers, or look up securities across exchanges. The API searches among active tickers only." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "eodhd_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "EODHD API Token", "type": "string", "description": "The API token provided upon registration, used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "erpnext", "name": "Erpnext", "logo": "https://logos.composio.dev/api/erpnext", "description": "Free and open-source integrated Enterprise Resource Planning software built on Frappe Framework", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 50, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ERPNEXT_ADD_COMMENT", "name": "Add Comment", "description": "Tool to add a comment to a document in ERPNext/Frappe. Use when you need to add comments or notes to any document type like ToDo, Issue, Task, or custom DocTypes." }, { "slug": "ERPNEXT_ADD_TAG", "name": "Add Tag", "description": "Tool to add a tag to a document in ERPNext. Use when you need to categorize or label documents for organization and filtering purposes." }, { "slug": "ERPNEXT_APPLY_WORKFLOW", "name": "Apply Workflow", "description": "Tool to apply a workflow action to a document in ERPNext/Frappe. Use when you need to transition a document through workflow states (e.g., approve, reject, submit). The document must have a workflow configured for its doctype." }, { "slug": "ERPNEXT_CANCEL_DOCUMENT", "name": "Cancel Document", "description": "Cancel a submitted document in ERPNext/Frappe to change its status from Submitted to Cancelled. Use for submittable DocTypes when you need to reverse or cancel a submitted transaction. Document must be in Submitted state (docstatus=1) before cancellation." }, { "slug": "ERPNEXT_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to create a new document of a specific DocType in ERPNext. Use when you need to create records like ToDo, Customer, Lead, Sales Invoice, etc. The document data should include all required fields for the specific DocType. Standard fields like creation, modified, and owner are automatically set by ERPNext." }, { "slug": "ERPNEXT_CREATE_TIMESHEET", "name": "Create Timesheet", "description": "Tool to create a new Timesheet record in ERPNext. Use when you need to log time entries for employees or projects." }, { "slug": "ERPNEXT_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a specific document by DocType and name. Use when you need to remove a document from ERPNext. Requires delete permissions for the specified DocType." }, { "slug": "ERPNEXT_DOWNLOAD_FILE", "name": "Download file from ERPNext", "description": "Tool to download a file from ERPNext by its URL. Use when you need to retrieve file content from the ERPNext instance using the file's URL path." }, { "slug": "ERPNEXT_DOWNLOAD_PDF", "name": "Download PDF Document", "description": "Tool to download a document as PDF from ERPNext with optional print format. Use when you need to retrieve a document in PDF format, optionally specifying a custom print format or excluding letterhead." }, { "slug": "ERPNEXT_GET_ALL_LANGUAGES", "name": "Get All Languages", "description": "Tool to get a list of all available languages in the ERPNext/Frappe system. Use when you need to retrieve supported languages for translation or localization purposes." }, { "slug": "ERPNEXT_GET_ALL_ROLES", "name": "Get All Roles", "description": "Tool to get a list of all roles available in the ERPNext system. Use when you need to retrieve all available roles for assignment or reference." }, { "slug": "ERPNEXT_GET_CLIENT", "name": "Get Document", "description": "Tool to get a single document by DocType and name or filters from Frappe/ERPNext. Use when you need to retrieve a specific document's complete details." }, { "slug": "ERPNEXT_GET_COUNT", "name": "Get Document Count", "description": "Tool to get the count of documents matching specified filters in ERPNext/Frappe. Use when you need to know how many records exist for a specific DocType, optionally filtered by conditions." }, { "slug": "ERPNEXT_GET_DOCTYPE_META", "name": "Get DocType Metadata", "description": "Tool to retrieve complete DocType metadata/schema including field definitions, field types, permissions, and configurations. Use when you need to understand the structure of a DocType, its fields, validation rules, or permissions before creating or querying documents." }, { "slug": "ERPNEXT_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve a specific document by its DocType and name (ID). Returns the complete document with all fields. Use when you need to fetch details of a specific ERPNext document like Customer, Employee, Account, Sales Invoice, etc." }, { "slug": "ERPNEXT_GET_DOC_WITH_META", "name": "Get Document with Metadata", "description": "Tool to retrieve a document with full metadata including attachments, comments, activity logs, and related information. Use when you need complete document details beyond the basic fields returned by standard GET requests." }, { "slug": "ERPNEXT_GET_EXCHANGE_RATE", "name": "Get Exchange Rate", "description": "Tool to get the currency exchange rate between two currencies in ERPNext. Use when you need to convert amounts between different currencies or check current exchange rates." }, { "slug": "ERPNEXT_GET_FISCAL_YEAR", "name": "Get Fiscal Year", "description": "Tool to get fiscal year information for a given date in ERPNext. Use when you need to determine which fiscal year a specific date falls into or retrieve fiscal year boundaries." }, { "slug": "ERPNEXT_GET_FRAMEWORK_VERSION", "name": "Get Framework Version", "description": "Tool to get the Frappe framework version and all installed app versions. Use when you need to check the ERPNext/Frappe system version for compatibility or debugging purposes." }, { "slug": "ERPNEXT_GET_ITEM_DETAILS", "name": "Get Item Details", "description": "Tool to get detailed item information including pricing, taxes, and stock details from ERPNext. Use when you need comprehensive item data for transactions like Sales Orders, Purchase Orders, or Invoices. This action retrieves item-specific information based on the provided context including customer, price list, warehouse, and currency." }, { "slug": "ERPNEXT_GET_LIST", "name": "Get List of Documents", "description": "Tool to retrieve a list of documents from ERPNext/Frappe with filtering, field selection, and pagination. Use when you need to query documents of a specific DocType with optional filters, sorting, and field selection. The response contains an array of document objects with the requested fields." }, { "slug": "ERPNEXT_GET_LOGGED_USER", "name": "Get Logged User", "description": "Tool to get the email/ID of the currently authenticated user. Use to verify authentication is working." }, { "slug": "ERPNEXT_GET_PARTY_DETAILS", "name": "Get Party Details", "description": "Tool to get comprehensive customer or supplier details including addresses, contacts, and default financial settings. Use when creating transactions or updating party information in ERPNext." }, { "slug": "ERPNEXT_GET_PAYMENT_ENTRY", "name": "Get Payment Entry", "description": "Tool to get payment entry details for an invoice or order from ERPNext. Use when you need to retrieve payment information for a Sales Invoice, Purchase Invoice, Sales Order, or Purchase Order. This returns a Payment Entry document with party details, payment amounts, accounts, exchange rates, and reference information." }, { "slug": "ERPNEXT_GET_STOCK_BALANCE", "name": "Get Stock Balance", "description": "Tool to retrieve the current stock balance for a specific item in a warehouse. Use when you need to check inventory levels or available quantity." }, { "slug": "ERPNEXT_GET_TIMEZONES", "name": "Get Timezones", "description": "Tool to get a list of all available timezones in the ERPNext system. Use when you need to retrieve timezone options for user configuration or scheduling." }, { "slug": "ERPNEXT_GET_USER_ROLES", "name": "Get User Roles", "description": "Tool to get roles assigned to a user. Use when you need to check user permissions or access levels in ERPNext/Frappe." }, { "slug": "ERPNEXT_GET_VALUE", "name": "Get Field Value", "description": "Tool to get specific field value(s) from a document in ERPNext. Use when you need to retrieve one or more field values without loading the entire document." }, { "slug": "ERPNEXT_GET_WORKFLOW_TRANSITIONS", "name": "Get Workflow Transitions", "description": "Tool to get available workflow transitions for a document. Use when you need to check what workflow actions are available for a specific document based on its current state and user permissions." }, { "slug": "ERPNEXT_INSERT_DOCUMENT", "name": "Insert Document", "description": "Tool to insert a new document in ERPNext/Frappe using the client API. Use when you need to create any type of document (ToDo, Customer, Item, etc.) by providing the doctype and required fields." }, { "slug": "ERPNEXT_INSERT_MANY", "name": "Insert Multiple Documents", "description": "Tool to insert multiple documents at once into ERPNext/Frappe. Use when you need to create multiple records (Notes, Customers, Items, etc.) in a single API call for better efficiency." }, { "slug": "ERPNEXT_LIST_DOCTYPES", "name": "List DocTypes", "description": "Tool to get a list of all DocTypes available in the ERPNext system. Use when you need to retrieve available DocTypes with optional filtering and pagination." }, { "slug": "ERPNEXT_LIST_DOCUMENTS", "name": "List ERPNext Documents", "description": "Tool to list documents of a specific DocType from ERPNext. Returns paginated results (default 20 items). Use when you need to retrieve multiple documents, with support for filtering, field selection, and pagination." }, { "slug": "ERPNEXT_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to retrieve a list of Employee records from ERPNext. Use when you need to fetch employee information with optional filtering and pagination." }, { "slug": "ERPNEXT_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve a list of Project records from ERPNext. Use when you need to get projects, optionally filtered and paginated." }, { "slug": "ERPNEXT_LIST_TIMESHEETS", "name": "List Timesheets", "description": "Tool to get a list of Timesheet records from ERPNext. Use when you need to retrieve, search, or filter timesheets. Supports pagination and flexible field selection." }, { "slug": "ERPNEXT_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list webhook configurations in ERPNext. Use when you need to retrieve all configured webhooks or search for specific webhooks using filters." }, { "slug": "ERPNEXT_MAKE_DELIVERY_NOTE", "name": "Make Delivery Note", "description": "Create a draft Delivery Note from an existing Sales Order in ERPNext. Use when you need to initiate shipment/delivery of items from a confirmed sales order. The created Delivery Note will be in draft state and can be modified before submission." }, { "slug": "ERPNEXT_MAKE_PURCHASE_ORDER", "name": "Make Purchase Order", "description": "Create a draft Purchase Order from an existing Material Request in ERPNext. Use when you need to initiate procurement of items from an approved material request. The created Purchase Order will be in draft state and can be modified before submission." }, { "slug": "ERPNEXT_MAKE_SALES_INVOICE", "name": "Make Sales Invoice", "description": "Tool to create a Sales Invoice from an existing Sales Order in ERPNext. Use when you need to generate an invoice for a confirmed sales order. The created invoice will be in draft state and can be submitted separately if needed." }, { "slug": "ERPNEXT_MAKE_STOCK_ENTRY", "name": "Make Stock Entry", "description": "Tool to create a Stock Entry for material transfer, receipt, or issue in ERPNext. Use when you need to record inventory movements between warehouses or add/remove stock. For Material Receipt, include target warehouse and basic_rate. For Material Issue, include source warehouse. For Material Transfer, include both source and target warehouses." }, { "slug": "ERPNEXT_PING", "name": "Ping API", "description": "Tool to check if the ERPNext/Frappe API is reachable. Use when you need to verify API connectivity or test authentication." }, { "slug": "ERPNEXT_RENAME_DOC", "name": "Rename Document", "description": "Tool to rename an ERPNext document by changing its unique ID/name. Use when you need to change a document's primary identifier, optionally merging with an existing document." }, { "slug": "ERPNEXT_SAVE_DOCS", "name": "Save Document with Action", "description": "Tool to save, submit, cancel, or update a document in ERPNext. Use when you need to create or modify documents in ERPNext. The doc parameter must be a JSON-serializable dictionary containing the document fields." }, { "slug": "ERPNEXT_SAVE_DOCUMENT", "name": "Save Document", "description": "Tool to save an existing ERPNext/Frappe document with changes. Use when you need to update an existing document in the system. Requires the complete document object including all system fields and the fields being updated." }, { "slug": "ERPNEXT_SEARCH_GLOBAL", "name": "Global Search", "description": "Tool to perform global text search across ERPNext documents. Use when you need to find documents, pages, or records by searching for keywords across the system. Results are ranked by relevance and include document type, name, content preview, and navigation route." }, { "slug": "ERPNEXT_SEARCH_LINK", "name": "Search Link Field Documents", "description": "Tool to search for documents to link in ERPNext/Frappe Link fields. Use when you need autocomplete suggestions for Link fields or to find documents by name/text." }, { "slug": "ERPNEXT_SET_VALUE", "name": "Set Value", "description": "Tool to set a specific field value on a document in ERPNext. Use when you need to update a single field without retrieving or modifying the entire document." }, { "slug": "ERPNEXT_SUBMIT_DOCUMENT", "name": "Submit Document", "description": "Submit a draft document in ERPNext/Frappe to change its status from Draft to Submitted. Use for submittable DocTypes like Sales Invoice, Purchase Order, Journal Entry, etc. Document must exist in draft state (docstatus=0) before submission." }, { "slug": "ERPNEXT_UPDATE_DOCUMENT", "name": "Update ERPNext document", "description": "Tool to update a specific ERPNext document. Acts like a PATCH request - only send the fields you want to change, not the whole document. Use when you need to modify specific fields of an existing document." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "erpnext_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Frappe instance URL (e.g., https://demo.erpnext.com or https://mycompany.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to User list → Select user → Settings tab → API Access section → Click \"Generate Keys\" to get your API Key", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret", "type": "string", "description": "The API Secret is shown once when you generate the keys. Make sure to save it securely.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "escrow", "name": "Escrow", "logo": "https://logos.composio.dev/api/escrow", "description": "Escrow.com provides secure online escrow services for transactions, ensuring funds are held safely until predetermined conditions are met", "category": "payment processing", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "escrow_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email", "type": "string", "description": "Your Escrow.com account email address", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your Escrow.com API key. Create an API key at https://www.escrow.com/integrations/portal/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "esignatures_io", "name": "eSignatures.io", "logo": "https://logos.composio.dev/api/esignatures_io", "description": "eSignatures.io provides a platform for sending and signing mobile-friendly contracts over the web.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ESIGNATURES_IO_ADD_TEMPLATE_COLLABORATOR", "name": "Add Template Collaborator", "description": "Tool to grant editing access to a template with optional email invitation. Use when you need to add a collaborator who can edit the template." }, { "slug": "ESIGNATURES_IO_COPY_TEMPLATE", "name": "Copy Template", "description": "Tool to duplicate an existing template with optional customization. Use when you need to create a new template based on an existing one." }, { "slug": "ESIGNATURES_IO_CREATE_CONTRACT", "name": "Create Contract", "description": "Tool to create a new contract using a specified template and signer details. Use after selecting a template when you need to send a contract for signature." }, { "slug": "ESIGNATURES_IO_CREATE_SIGNER", "name": "Create Signer", "description": "Add a signer to an existing contract/signature request. This action queues the addition of a new signer to a contract that has already been created. The signer will be added asynchronously and will receive their signing invitation via email. Use this when you need to add additional signers to a contract after it has been created, or when you want to add signers incrementally rather than all at once during contract creation. Note: The API returns a queued status, indicating the operation has been accepted for processing. Adding a new signer does not automatically send an email notification unless the contract settings are configured to do so." }, { "slug": "ESIGNATURES_IO_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template. Use when you want to register a reusable contract template after defining document elements." }, { "slug": "ESIGNATURES_IO_DELETE_SIGNER", "name": "Delete Signer", "description": "Tool to remove a signer from a contract. Use when you need to revoke a signer's access to sign a contract." }, { "slug": "ESIGNATURES_IO_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a specific template by its ID. Use when you need to remove an unused or outdated template after confirming its ID." }, { "slug": "ESIGNATURES_IO_GENERATE_CONTRACT_PDF_PREVIEW", "name": "Generate Contract PDF Preview", "description": "Tool to generate a PDF preview of a contract and receive a webhook notification with a download URL. Use when you need to preview the contract document before or after signing." }, { "slug": "ESIGNATURES_IO_GET_CONTRACT", "name": "Get Contract", "description": "Tool to retrieve details of a specific contract by its ID. Returns contract status, signer information, and values entered by signers. Use when you need to check contract status or download signed PDF." }, { "slug": "ESIGNATURES_IO_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve details of a specific template by its ID. Use when you need to fetch a template’s metadata after selecting its ID." }, { "slug": "ESIGNATURES_IO_LIST_TEMPLATE_COLLABORATORS", "name": "List Template Collaborators", "description": "Tool to retrieve all collaborators with editing access to a template. Returns collaborator IDs, names, emails, and editor URLs." }, { "slug": "ESIGNATURES_IO_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of all templates. Use when you need to browse available templates before selecting one." }, { "slug": "ESIGNATURES_IO_REMOVE_TEMPLATE_COLLABORATOR", "name": "Remove Template Collaborator", "description": "Tool to revoke a collaborator's template editing permissions. Use when you need to remove access for a specific collaborator from a template." }, { "slug": "ESIGNATURES_IO_SEND_CONTRACT_TO_SIGNER", "name": "Send Contract to Signer", "description": "Tool to send or resend a contract signature request to a specific signer via their configured communication channel. Use when you need to deliver a contract to a signer for their signature." }, { "slug": "ESIGNATURES_IO_UPDATE_SIGNER", "name": "Update Signer", "description": "Tool to update contact details of an existing signer on a contract. Use when you need to change a signer's name, email, or mobile number. Note: The contract is not automatically emailed when the signer's information is updated." }, { "slug": "ESIGNATURES_IO_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing template's content, title, or labels. Use when you need to modify a template's configuration without creating a new one." }, { "slug": "ESIGNATURES_IO_WITHDRAW_CONTRACT", "name": "Withdraw Contract", "description": "Tool to withdraw a contract by its ID. Use when you need to prevent further signing of a contract that hasn't been fully signed." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "esignatures_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "API Secret Token", "type": "string", "description": "Your API secret token for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "espocrm", "name": "Espocrm", "logo": "https://logos.composio.dev/api/espocrm", "description": "EspoCRM is an open-source web application that allows businesses to manage their customer relationships effectively.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ESPOCRM_GET_APP_USER", "name": "Get App User", "description": "Tool to retrieve current user data including token, ACL, and preferences. Use after successful authentication to fetch session-specific profile." }, { "slug": "ESPOCRM_GET_METADATA", "name": "Get Metadata", "description": "Test connectivity to the Docparser API by calling the ping endpoint. Use this tool to verify that your API credentials are valid and the service is reachable. Returns a simple 'pong' message on success." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "espocrm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "EspoCRM Instance URL", "type": "string", "description": "The base URL of your EspoCRM instance, e.g., 'your-espocrm-site' from 'https://your-espocrm-site.com'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "EspoCRM API Key", "type": "string", "description": "The API Key generated for the API User in EspoCRM.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "esputnik", "name": "Esputnik", "logo": "https://logos.composio.dev/api/esputnik", "description": "eSputnik is a marketing automation platform that enables businesses to manage and automate their communication channels, including email, SMS, web push, and mobile push notifications.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 89, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ESPUTNIK_ADD_CONTACT", "name": "Add Contact", "description": "Tool to create or update a single contact in eSputnik in real-time. Use when you need to add a new contact or update an existing one by matching on channels. If a contact with the same channel (email, sms, etc.) already exists, it will be updated. Otherwise, a new contact is created. New contacts are treated as confirmed (double opt-in assumed). For bulk operations with 2+ contacts, use the Bulk Add or Update Contacts action instead." }, { "slug": "ESPUTNIK_ADD_DOMAIN", "name": "Add Domain", "description": "Register a domain with eSputnik for web tracking, widgets, or web push notifications. This tool is used to add a new domain to your eSputnik account, enabling: - Website behavior tracking for personalization - Widget integration (pop-ups, subscription forms) - Web push notification configuration Prerequisites: - Valid eSputnik API credentials with appropriate permissions - Domain ownership or administrative access to configure tracking Returns the registered domain and associated site identifier." }, { "slug": "ESPUTNIK_ADD_ORDERS", "name": "Add Orders Bulk", "description": "Tool to transfer orders in bulk to eSputnik. Use when you need to import up to 1000 orders at once." }, { "slug": "ESPUTNIK_ADD_UNSUBSCRIBED_EMAILS", "name": "Add Unsubscribed Emails", "description": "Tool to add email addresses to the list of unsubscribed contacts. Use when you need to unsubscribe contacts from receiving emails." }, { "slug": "ESPUTNIK_ADD_WEBPUSH_DOMAIN", "name": "Add Web Push Domain", "description": "Tool to add a domain for web push notifications in eSputnik. Use when you need to register a new domain to enable web push notification functionality. The domain must be reachable and not already registered in your account. This operation configures the service worker settings required for web push notifications to function. Prerequisites: - Valid eSputnik API credentials with appropriate permissions - Domain ownership or administrative access - Service worker JavaScript file prepared for deployment" }, { "slug": "ESPUTNIK_ATTACH_CONTACTS_TO_SEGMENT", "name": "Attach Contacts to Segment", "description": "Tool to attach contacts to a static segment (group) by contact IDs or external customer IDs. Use this action to add contacts to a static segment for organizing and targeting your contact lists. You can specify contacts using either eSputnik internal contact IDs or your own external customer IDs. Maximum 500 contacts per request." }, { "slug": "ESPUTNIK_BULK_ADD_OR_UPDATE_CONTACTS", "name": "Bulk Add or Update Contacts", "description": "Bulk add or update up to 3000 contacts in eSputnik asynchronously. Use this action to import multiple contacts at once or synchronize your CRM contact list. Contacts are matched by the channel specified in dedupeOn (email, sms, or mobilepush). If a contact exists, it is updated; otherwise, a new contact is created. Returns an asyncSessionId that can be used with the Get Contact Import Status action to monitor import progress. Note: New contacts created via this method are treated as confirmed (double opt-in assumed)." }, { "slug": "ESPUTNIK_CHANGE_TOKEN_ACTIVITY", "name": "Change Mobile Push Token Activity", "description": "Activate or deactivate a mobile push notification token in eSputnik. Use this action to control whether a specific device token can receive push notifications. When a token is deactivated, the device will not receive push notifications until reactivated. Common use cases: - Temporarily disable notifications for a user's device - Reactivate a previously disabled token - Manage notification preferences at the device level Note: The app_uuid and token_id must correspond to a token that has been previously registered in eSputnik via the mobile SDK or API." }, { "slug": "ESPUTNIK_CREATE_API_TOKEN", "name": "Create API Token", "description": "Generate a new API token for authentication. Use this action to create an API token using your eSputnik account credentials. The token can be used for authenticating subsequent API requests. This action requires basic authentication (username and password) which is automatically provided from your configured credentials. Returns a string token that should be used in the Authorization header for future API calls. This is particularly useful when you need to generate fresh tokens or when integrating eSputnik API with other systems." }, { "slug": "ESPUTNIK_CREATE_APP_INBOX_MESSAGE", "name": "Create App Inbox Message", "description": "Tool to create a basic App Inbox message in eSputnik. Use when you need to create a new in-app notification message. App Inbox messages are displayed within mobile apps or websites as notifications to users. Requires at minimum a name, title, and text. Optionally supports images, links, custom data, translations for multiple languages, tags, and subscription categories." }, { "slug": "ESPUTNIK_CREATE_CONTACTS_FILE", "name": "Create Contacts from File", "description": "Import or update contacts from an external file in eSputnik. Creates new contacts and updates existing ones based on dedupeOn field. Use this action to bulk import contacts from a CSV file hosted at a publicly accessible URL. The file must use comma delimiters and follow eSputnik's column naming requirements (firstName, lastName, email, sms, etc.). The import is asynchronous - use the returned asyncSessionId with Get Contact Import Status to monitor progress." }, { "slug": "ESPUTNIK_CREATE_EMAIL_MESSAGE", "name": "Create Email Message", "description": "Tool to create or update an email message in eSputnik. Use when you need to add a new email template or update an existing one, including support for multilingual message versions. When 'id' is provided in the request, the action updates the existing message with that ID. When 'id' is omitted, a new email message is created. The 'languageCode' parameter allows adding or updating specific language versions for multilingual campaigns." }, { "slug": "ESPUTNIK_CREATE_MOBILE_PUSH_MESSAGE", "name": "Create Mobile Push Message", "description": "Tool to create a new mobile push notification message in eSputnik. Use when you need to set up a push notification campaign for mobile app users. The created message can include title, body text, images, action buttons, and custom data. Supports multilingual messages through the translations field. After creation, use the returned message ID to send the notification to specific contacts or segments." }, { "slug": "ESPUTNIK_CREATE_SMS_MESSAGE", "name": "Create SMS Message", "description": "Tool to create a basic SMS message template in eSputnik. Use when you need to create a new SMS message template for sending campaigns. The created template can be used later for sending SMS messages to contacts. Before creating an SMS message, ensure you have configured SMS interfaces (sender names) in your eSputnik account." }, { "slug": "ESPUTNIK_CREATE_TELEGRAM_MESSAGE", "name": "Create Telegram Message", "description": "Create a basic Telegram bot message in eSputnik. Use when you need to create a new message template that can be sent to contacts via Telegram. The message is saved as a template in eSputnik and can later be sent to contacts using the Send Message API. The message ID returned in the response is required for sending operations. Prerequisites: - Valid eSputnik API credentials with write permissions - Telegram bot configured in your eSputnik account Example usage: \"Create a Telegram message with name 'Welcome Message' and text 'Hello!'\"" }, { "slug": "ESPUTNIK_DELETE_APP_INBOX_MESSAGE", "name": "Delete App Inbox Message", "description": "Tool to delete an App Inbox message by its ID from eSputnik. Use when you need to permanently remove an App Inbox message that is no longer needed." }, { "slug": "ESPUTNIK_DELETE_APPINBOX_TRANSLATION", "name": "Delete App Inbox Translation", "description": "Delete a language translation of an App Inbox message from eSputnik. Use this action to remove a specific language version of an App Inbox message while keeping the base message and other translations intact. This is useful when you no longer need to support a particular language or need to clean up outdated translations. Prerequisites: - The App Inbox message must exist - The specified language translation must exist for the message - Valid eSputnik API credentials with write permissions" }, { "slug": "ESPUTNIK_DELETE_BROADCAST", "name": "Delete Broadcast", "description": "Tool to cancel a scheduled broadcast campaign. Use when you need to stop a broadcast from being sent." }, { "slug": "ESPUTNIK_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by its Yespo ID. Use when you need to remove a contact with no pending interactions." }, { "slug": "ESPUTNIK_DELETE_CONTACT_BY_EXTERNAL_ID", "name": "Delete Contact by External ID", "description": "Delete a contact from eSputnik using their external customer ID. Use this tool when you need to remove a contact identified by the externalCustomerId (the unique ID from your external system, e.g., CRM or database). This is useful when you don't have the eSputnik internal contact ID but do have the external reference. For GDPR compliance, set erase=true to permanently remove all contact data including activity history and tracking data." }, { "slug": "ESPUTNIK_DELETE_EMAIL_MESSAGE", "name": "Delete Email Message", "description": "Delete a basic email message by its ID from eSputnik. Use this action to permanently remove an email message that is no longer needed. This is a destructive operation - the message will be permanently deleted and cannot be recovered. Prerequisites: - The email message must exist - Valid eSputnik API credentials with write permissions Example usage: \"Delete email message 2345678\", \"Remove email with ID 12345\"" }, { "slug": "ESPUTNIK_DELETE_EMAIL_TRANSLATION", "name": "Delete Email Translation", "description": "Delete a translation of a base email message from eSputnik. Use this action to remove a specific language translation of an email message template. This does not delete the base email message, only the specified translation. The operation is permanent and the translation cannot be recovered once deleted. Prerequisites: - The email message must exist - The specified language translation must exist - Valid eSputnik API credentials with write permissions Example usage: \"Delete Spanish translation of email 4404258\", \"Remove French translation for email message 12345\"" }, { "slug": "ESPUTNIK_DELETE_MOBILEPUSH_MESSAGE", "name": "Delete Mobile Push Message", "description": "Delete a base Mobile Push message by its ID from eSputnik. Use this action to permanently remove a Mobile Push message that is no longer needed. This is a destructive operation - the message will be permanently deleted and cannot be recovered. Prerequisites: - The Mobile Push message must exist - Valid eSputnik API credentials with write permissions Example usage: \"Delete Mobile Push message 4404238\", \"Remove push notification with ID 2345678\"" }, { "slug": "ESPUTNIK_DELETE_MOBILEPUSH_TRANSLATION", "name": "Delete Mobile Push Translation", "description": "Delete a language version of a base Mobile Push message from eSputnik. Use this tool to remove a specific language translation from a mobile push message while keeping the base message and other translations intact. This is useful when managing multilingual campaigns and needing to remove or update specific language versions." }, { "slug": "ESPUTNIK_DELETE_ORDERS", "name": "Delete Orders", "description": "Tool to schedule asynchronous deletion of orders in eSputnik. Use when you need to delete orders by external ID or by date range. Deletion can be performed by: - Specific order: Provide externalOrderId to delete a single order - Date range: Provide both 'from' and 'to' parameters to delete all orders within the specified period The deletion is asynchronous - the API accepts the request and processes it in the background." }, { "slug": "ESPUTNIK_DELETE_SMS_MESSAGE", "name": "Delete SMS Message", "description": "Delete a base SMS message template by its ID from eSputnik. Use this action to permanently remove an SMS message template that is no longer needed. This is a destructive operation - the template will be permanently deleted and cannot be recovered. Prerequisites: - The SMS message template must exist - Valid eSputnik API credentials with write permissions Example usage: \"Delete SMS template 12345\", \"Remove SMS message with ID 67890\"" }, { "slug": "ESPUTNIK_DELETE_SMS_TRANSLATION", "name": "Delete SMS Translation", "description": "Delete a language version of a base SMS message from eSputnik. Use this action to remove a specific language translation of an SMS message while keeping the base message and other translations intact. This is useful for removing outdated or incorrect translations. Prerequisites: - The base SMS message must exist - The specified language translation must exist for that message - Valid eSputnik API credentials with write permissions Example usage: \"Delete Spanish translation of SMS message 4404242\", \"Remove French version of SMS 12345\"" }, { "slug": "ESPUTNIK_DELETE_TELEGRAM_MESSAGE", "name": "Delete Telegram Message", "description": "Delete a base Telegram bot message by its ID from eSputnik. Use this action to permanently remove a Telegram bot message that is no longer needed. This is a destructive operation - the message will be permanently deleted and cannot be recovered. Prerequisites: - The Telegram bot message must exist - Valid eSputnik API credentials with write permissions Example usage: \"Delete Telegram message 4404236\", \"Remove Telegram bot message with ID 12345\"" }, { "slug": "ESPUTNIK_DELETE_TELEGRAM_TRANSLATION", "name": "Delete Telegram Translation", "description": "Delete a language version of a Telegram bot message from eSputnik. Use this action to remove a specific language translation of a Telegram bot message while keeping the base message and other translations intact. This is useful for managing multilingual bot messages when a translation is no longer needed or needs to be recreated." }, { "slug": "ESPUTNIK_DETACH_CONTACTS_FROM_SEGMENT", "name": "Detach Contacts from Segment", "description": "Tool to delete contacts from a static segment by contact IDs or external customer IDs. Use when you need to remove specific contacts from a segment or clear an entire segment. IMPORTANT: If neither contactIds nor externalCustomerIds are specified, ALL contacts will be deleted from the segment. Maximum 500 IDs per request." }, { "slug": "ESPUTNIK_GENERATE_EVENT_V2", "name": "Generate Event V2", "description": "Tool to send backend events from websites and mobile apps to eSputnik. Use when tracking user actions, page views, or custom events for marketing automation and analytics. Secure for sensitive data with maximum 20 KB event data limit." }, { "slug": "ESPUTNIK_GENERATE_EVENT_V3", "name": "Generate Event V3", "description": "Tool to generate events in eSputnik v3 API. Use when you need to track custom events for contacts (e.g., purchase, cart abandoned, page viewed). Events can be used to trigger automated campaigns and for creating dynamic content in messages. Each event must have an eventTypeKey identifier. Contact identification must be provided in the params object using standard contact identifiers (email, phone, or externalCustomerId). Additional event parameters can also be included in params. Note: This is the v3 API endpoint. For legacy integrations, v1 is available but deprecated." }, { "slug": "ESPUTNIK_GENERATE_PAST_EVENTS_V2", "name": "Generate Past Events V2", "description": "Tool to transfer past event data from your CRM or data store to eSputnik using v2 API. Use when you need to import historical events that should not trigger workflows. This method allows sending up to 500 events per request with a maximum content size of 20KB. Version 2 API methods do not require escaping in nested JSON, making it easier to work with complex event parameters. Workflows are not launched for these historical events." }, { "slug": "ESPUTNIK_GENERATE_PAST_EVENTS_V3", "name": "Generate Past Events V3", "description": "Tool to generate past events in eSputnik v3 API. Use when you need to create historical events for contacts with specific timestamps. This action allows you to import past events with their original occurrence timestamps. Events can be used to trigger automated campaigns and for creating dynamic content in messages. Each event must have an eventTypeKey identifier and a keyValue for contact identification." }, { "slug": "ESPUTNIK_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Retrieve basic eSputnik account information. Use this tool to verify API authentication and get account details including the username/email and organization name. This is useful for confirming that API credentials are valid and retrieving account identifiers. Returns: - User email or username associated with the API key - Organization name for the authenticated account No parameters required - uses the authenticated account credentials automatically. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_GET_APP_INBOX_MESSAGE", "name": "Get App Inbox Message", "description": "Retrieves an App Inbox message by its unique identifier from eSputnik. Use this tool to fetch message content, metadata, and localized translations before sending, editing, or reviewing an App Inbox notification. Returns complete message details including title, text, images, links, and custom data for all configured language versions. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_GET_BROADCASTS", "name": "Get Broadcasts", "description": "Retrieve a paginated list of broadcast campaigns from eSputnik. Use this tool to: - List all scheduled or sent broadcast campaigns - Check broadcast details including target segments and scheduling - Navigate through broadcasts using pagination (startindex + maxrows) Returns broadcast details including IDs, titles, message templates, target segments, and scheduling information. Results are paginated - use startindex and maxrows to navigate through large lists. No filtering parameters supported - returns all broadcasts sorted by the API's default order." }, { "slug": "ESPUTNIK_GET_CONTACT", "name": "Get Contact", "description": "Retrieve complete information about a contact by their ID. This action returns all available information about a specific contact identified by their internal eSputnik contact ID. The response includes communication channels (email, SMS, mobilepush), profile information (name, address), and any custom fields. Use this action when you need to: - Fetch current contact details for verification or display - Check contact profile information before updating - Retrieve custom field values for a specific contact - Verify contact existence in the system Returns a 404 error if the contact ID does not exist." }, { "slug": "ESPUTNIK_GET_CONTACT_EMAILS", "name": "Get Contact Emails", "description": "Tool to retrieve email addresses of contacts by their contact IDs. Use when you need to fetch email addresses for specific contacts using their internal eSputnik identifiers. The API returns email addresses for all valid contact IDs provided. If a contact ID doesn't exist, it will be omitted from the results (no error raised)." }, { "slug": "ESPUTNIK_GET_CONTACT_IMPORT_STATUS", "name": "Get Contact Import Status", "description": "Retrieve the status of a contact import session in eSputnik. Use this action to check the progress of an asynchronous bulk contact import operation. After calling Bulk Add or Update Contacts, use the returned asyncSessionId with this action to monitor the import status. The status field indicates the current state: - STARTED: Import has been initiated - IMPORTING: Import is in progress - FINISHED: Import completed successfully - ERROR: Import failed When finished, the mapping field contains the dedupeValue-to-contactId mappings for all successfully imported contacts." }, { "slug": "ESPUTNIK_GET_CONTACT_MESSAGE_HISTORY", "name": "Get Contact Message History", "description": "Retrieve a contact's message history across multiple channels from eSputnik. This action returns message history for a specific contact, supporting multiple media types: Email, SMS, Viber, Mobile Push, Web Push, App Inbox, and Telegram. Use this when you need to: - Review all messages sent to a contact within a date range - Track message delivery status and engagement metrics - Audit communication history for compliance or support purposes - Filter messages by specific channel types At least one contact identifier (contactId, externalCustomerId, email, or phone) must be provided. Results are paginated using offset and maxrows parameters." }, { "slug": "ESPUTNIK_GET_CONTACTS", "name": "Get Contacts", "description": "Search for contacts in eSputnik using various filter criteria. Use this action to find contacts by email, phone number, name, external ID, or retrieve all contacts with pagination. Returns up to 500 contacts per request. The response includes contact details such as contactId, channels, custom fields, and segment membership. Use this when you need to: - Find a contact by email or phone number - Retrieve contacts by your external system ID - List all contacts with pagination (use startindex and maxrows) - Get contact details including their segments and custom fields For searches without filter conditions, use sortBy='contactId' for faster results. Check the total_count field to determine if there are more results beyond the 500 limit." }, { "slug": "ESPUTNIK_GET_CONTACT_SUBSCRIPTIONS", "name": "Get Contact Subscriptions", "description": "Retrieve all subscription categories a contact is enrolled in. This action returns the list of subscription categories (communication types) that a specific contact has opted into within your eSputnik account. Subscription categories typically represent different types of communications like newsletters, promotions, transactional emails, etc. Use this action when you need to: - Check which communication types a contact has subscribed to - Verify a contact's subscription preferences before sending campaigns - Audit contact subscription status for compliance purposes - Build conditional logic based on subscription preferences Returns an empty array if the contact exists but has no active subscriptions. Returns a 404 error if the contact ID does not exist in the system." }, { "slug": "ESPUTNIK_GET_EMAIL_INTERFACES", "name": "Get Email Interfaces", "description": "Tool to retrieve all configured email interfaces (sender names) from eSputnik. Use when you need to list available email sender addresses/names before sending campaigns or messages. Returns a list of all email sender interfaces configured for the organization, including sender names, email addresses, and their active status. This information is useful when setting up email campaigns to ensure valid sender interfaces are used." }, { "slug": "ESPUTNIK_GET_EMAIL_MESSAGE", "name": "Get Email Message", "description": "Retrieves an email message by its unique identifier from eSputnik. Use this tool to fetch message content, title, and sender details before sending, editing, or reviewing an email. Returns complete message details including HTML content, CSS styles, subject line, and sender information with html and css separated for easy manipulation. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_GET_EMAIL_VIEW_LINK", "name": "Get Email View Link", "description": "Get a link to view an email message in browser from eSputnik. Use this action to retrieve a public URL that displays the email message content in a web browser. This is useful for sharing email previews, testing message rendering, or providing a web version of the email to recipients. Rate limit: 500 requests per hour (default)." }, { "slug": "ESPUTNIK_GET_MESSAGE_STATUS", "name": "Get Message Status", "description": "Retrieve delivery status for sent messages across all channels (email, SMS, Viber, push). Use this tool to track message delivery after sending messages via eSputnik API. Provide comma-separated message IDs returned from send operations to check their current delivery status, including whether messages were delivered, failed, or are still pending. This is useful for: - Verifying message delivery success or failure - Tracking message lifecycle through the delivery pipeline - Debugging failed message deliveries with error codes - Monitoring campaign message status in real-time Returns detailed status for each requested message ID, including delivery state, timestamps, and error information if applicable." }, { "slug": "ESPUTNIK_GET_MOBILE_PUSH_MESSAGE", "name": "Get Mobile Push Message", "description": "Retrieves a mobile push message by its unique identifier from eSputnik. Use this tool to fetch message content, metadata, and language versions before sending, editing, or reviewing a mobile push notification. Returns complete message details including title, text, time-to-live settings, and sound preferences. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_GET_ORGANIZATION_BALANCE", "name": "Get Organization Balance", "description": "Retrieve the current eSputnik organization balance. Use this tool to check the account's available funds, credit limit, and bonus resources (emails and SMS) before planning or sending campaigns. This helps ensure sufficient balance is available for marketing activities. Returns: - Current balance amount and currency (ISO 4217 format like USD, EUR, UAH) - Credit limit available - Number of bonus emails available - Number of bonus SMS messages available No parameters required - uses the authenticated account credentials automatically. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_GET_ORGANIZATION_BILLING_HISTORY", "name": "Get Organization Billing History", "description": "Retrieve the organization's billing history from eSputnik, broken down by day and media channel. Use this tool to: - View costs per messaging channel (email, SMS, Viber, push notifications, etc.) - Track message volumes and spending over time - Analyze bonus credits usage and fund withdrawals - Generate billing reports for specific date ranges Returns daily breakdowns including messages sent, funds spent, and bonuses used per channel." }, { "slug": "ESPUTNIK_GET_PREPROCESSOR_FILE_STATUS", "name": "Get Preprocessor File Status", "description": "Retrieve the status of a preprocessor file upload session. Use this tool to poll for the asynchronous processing status of a previously submitted preprocessor file. The ID parameter is the asyncSessionId returned by the 'Upload file for preprocessor' endpoint. Common status values: PENDING, PROCESSING, COMPLETED, ERROR." }, { "slug": "ESPUTNIK_GET_PRODUCT_FEEDS", "name": "Get Product Feeds Configuration", "description": "Tool to retrieve product feeds configuration from eSputnik. Use when you need to check current product feed settings including feed type, update frequency, and other configuration parameters. This is a read-only operation that returns the complete product feeds configuration." }, { "slug": "ESPUTNIK_GET_PROMOCODES_COUNT", "name": "Get Promocodes Count", "description": "Get the number of available promotional codes in eSputnik. Use this action to check how many promo codes are available, optionally filtering by type, active due days, or discount amount." }, { "slug": "ESPUTNIK_GET_SITE_DOMAIN", "name": "Get Site Domain", "description": "Retrieve the organization's domain configuration from eSputnik. Use this tool to check the configured domain for your organization, which is used for web tracking, widgets, and web push notifications. The response will be empty if no domain has been configured for your account. Returns domain details including the domain name, internal identifier, and status. No parameters required - uses the authenticated account credentials automatically. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_GET_SITE_SCRIPT", "name": "Get Site Tracking Script", "description": "Retrieve the site tracking script for your eSputnik account. Use this tool to obtain the tracking script code that can be embedded on websites to enable eSputnik tracking and functionality. The domain must be configured in your organization before requesting the script. This is particularly useful for plugins that automatically install scripts and need programmatic access to the tracking code. Returns the complete tracking script as plain text ready for website integration. No parameters required - uses the authenticated account credentials automatically. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_GET_SMS_INTERFACES", "name": "Get SMS Interfaces", "description": "Retrieve all SMS interfaces (alpha names) configured for the organization. Use this tool to get the list of available SMS sender identifiers (alpha names) that can be used when sending SMS messages through eSputnik. Alpha names are pre-configured sender IDs that recipients see as the message sender. This is useful when: - You need to select a specific sender ID for SMS campaigns - You want to list all available SMS sending options - You need to verify which alpha names are configured and active No parameters required - returns all SMS interfaces for the authenticated account." }, { "slug": "ESPUTNIK_GET_SUBSCRIPTION_CATEGORIES", "name": "Get Subscription Categories", "description": "Retrieve all subscription categories for the organization. This action returns the complete list of subscription categories (communication types) configured in your eSputnik account. Subscription categories typically represent different types of communications like newsletters, promotions, transactional emails, etc. Use this action when you need to: - List all available subscription types in your eSputnik account - Get category IDs and keys for use in other API calls - Understand the structure of subscription options available to contacts - Build subscription management interfaces Returns an empty array if no subscription categories are configured. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_GET_TELEGRAM_MESSAGE", "name": "Get Telegram Message", "description": "Retrieve a Telegram bot message by its unique identifier from eSputnik. Use this tool to fetch Telegram bot message content, configuration, and metadata before sending, editing, or reviewing a notification. Returns complete message details including text, formatting, keyboard markup, and notification settings. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_LIST_PROMOCODES", "name": "List Promotional Codes", "description": "Retrieve a list of promotional codes from eSputnik. Use this tool to view all available promo codes, filter by type, usage status, expiration, or discount value. Useful for campaign planning and promo code management." }, { "slug": "ESPUTNIK_LIST_WEBPUSH_DOMAINS", "name": "List Web Push Domains", "description": "Retrieve the list of domains registered for web push notifications. Use this tool to get all domains configured in your eSputnik account for web push notification functionality. This is useful for verifying domain registration status and managing web push notification configurations. Returns a list of domain names that have been registered. No parameters required - uses the authenticated account credentials automatically. This is a read-only, idempotent operation that can be called multiple times safely." }, { "slug": "ESPUTNIK_REMOVE_FROM_UNSUBSCRIBED", "name": "Remove From Unsubscribed", "description": "Tool to remove email addresses from the unsubscribed contacts list in eSputnik. Use when you need to re-enable email addresses that were previously unsubscribed." }, { "slug": "ESPUTNIK_SEARCH_APP_INBOX_MESSAGES", "name": "Search App Inbox Messages", "description": "Search for mobile App Inbox messages using a part of the name or a tag. Returns a maximum of 500 messages per request with pagination support. Use this tool to find App Inbox messages by name or tag, list all available messages, or navigate through large message lists using pagination. The TotalCount header indicates the number of messages returned by the search query." }, { "slug": "ESPUTNIK_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Search for all contacts in a segment (group). Use this action to: - Retrieve contacts from a specific segment by segment ID - Paginate through large contact lists using startindex and maxrows - Sort contacts by addition time to the segment or by default order - Export contact lists from segments for analysis or sync purposes The API returns a list of contact objects with their channels, names, addresses, and custom fields. Results can be paginated using startindex and maxrows parameters. Maximum 500 contacts per request." }, { "slug": "ESPUTNIK_SEARCH_EMAIL_MESSAGES", "name": "Search Email Messages", "description": "Search for email messages using a part of their name or a tag. Use this tool to: - Find email messages by name or tag - List all available email message templates - Navigate through messages using pagination (startindex + maxrows) The method returns a maximum of 500 messages per request. The TotalCount header contains the total number of messages returned to the query. By default, a rate limit of 500 requests per hour applies." }, { "slug": "ESPUTNIK_SEARCH_MOBILEPUSH_MESSAGES", "name": "Search Mobile Push Messages", "description": "Search for mobile push messages using part of the name or a tag. Use this tool to: - Find mobile push messages by searching for keywords in message names - Filter messages by tags assigned to them - Retrieve all mobile push messages when no search criteria provided - Navigate through large result sets using pagination (startindex + maxrows) Returns up to 500 messages per request. The TotalCount header indicates the total number of messages matching your query. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_SEARCH_SEGMENTS", "name": "Search Segments", "description": "Search for and retrieve available segments (groups) in eSputnik. Use this action to: - List all segments/groups in your eSputnik account - Search for segments by name (supports partial matching) - Paginate through large segment lists using startindex and maxrows - Get segment IDs for use in other API calls (e.g., adding contacts to segments) Segments are groups of contacts that can be static (manually managed), dynamic (rule-based), or combined (mix of both). The API returns segment details including ID, name, and type. Maximum 500 segments per request." }, { "slug": "ESPUTNIK_SEARCH_SMS_MESSAGES", "name": "Search SMS Messages", "description": "Search for SMS messages using part of their names or tags in eSputnik. Use this tool to find SMS message templates by searching through message names or associated tags. Returns up to 500 messages per request with pagination support. The API returns the total count of matching messages in the TotalCount response header. Rate limit: 500 requests per hour by default." }, { "slug": "ESPUTNIK_SEARCH_TELEGRAM_MESSAGES", "name": "Search Telegram Messages", "description": "Search for Telegram bot messages using a part of name or a tag. Use this tool to: - Find Telegram bot messages by name or tag - List all Telegram bot messages in the account - Navigate through messages using pagination (startindex + maxrows) Returns message details including IDs, names, tags, and status information. Results are paginated - use startindex and maxrows to navigate through large lists. A maximum of 500 messages can be returned per request. The TotalCount header contains the total number of messages matching the query. Rate limit: 500 requests per hour by default." }, { "slug": "ESPUTNIK_SEARCH_VIBER_MESSAGES", "name": "Search Viber Messages", "description": "Search for Viber messages using part of the name or a tag. Use this tool to: - Find Viber messages by searching for keywords in message names - Filter messages by tags assigned to them - Retrieve all Viber messages when no search criteria provided - Navigate through large result sets using pagination (startindex + maxrows) Returns up to 500 messages per request. The TotalCount header indicates the total number of messages matching your query. Rate limit: 500 requests per hour." }, { "slug": "ESPUTNIK_SEARCH_WORKFLOWS", "name": "Search Workflows", "description": "Search for and retrieve available workflows from eSputnik. Use this tool to list all workflows in your eSputnik account, with optional filtering by workflow name. Returns workflow details including IDs, names, statuses, and timestamps. Results are paginated - use startindex and maxrows to navigate through large lists." }, { "slug": "ESPUTNIK_SEND_EMAIL", "name": "Send Email", "description": "Send an email message to one or more contacts via eSputnik API. Use this action to send transactional or marketing emails. If no contact exists with the recipient email address, a new contact will be automatically created. Supports HTML content, plain text fallback, AMP emails, and URL tracking. Prerequisites: - Valid eSputnik API credentials - Verified sender email address in your eSputnik account - At least one recipient email address Example: \"Send welcome email to new@user.com with subject 'Welcome' and HTML content\"" }, { "slug": "ESPUTNIK_SEND_PREPARED_MESSAGE", "name": "Send Prepared Message", "description": "Tool to send a prepared message to one or many contacts. Use when you need to send broadcasts for Email, SMS, Mobile Push, Web Push, Viber, or Telegram bot channels using pre-created message templates. The method allows sending to up to 1,000 recipients in a single request. You can parametrize the message for each contact individually using jsonParam field for personalization. Recipients can be identified by contactId (eSputnik internal ID) or locator (email/phone)." }, { "slug": "ESPUTNIK_SUBSCRIBE_CONTACT", "name": "Subscribe Contact", "description": "Tool to subscribe a contact for double opt-in implementation. Use when integrating subscription forms on your website or app. This method is designed for double opt-in implementation: - If a contact does not exist, it is created with a non-confirmed email status - If a contact exists, the contact fields are updated (except existing media channels) - New contacts are created with a not confirmed status and cannot receive bulk emails until they confirm their subscription - However, unconfirmed contacts are available for receiving important trigger messages - An event is automatically generated after this method is called, which can be used to send confirmation emails via campaigns - When clicking the confirmation link, a contact becomes confirmed and available for bulk emails Note: This differs from bulk contact import - contacts created here are unconfirmed by default." }, { "slug": "ESPUTNIK_UPDATE_APP_INBOX_MESSAGE", "name": "Update App Inbox Message", "description": "Tool to update the base App Inbox message in eSputnik. Use when you need to modify message content, title, link, or settings. This method updates an existing App Inbox message by its ID. All required fields (name, title, text) must be provided even if unchanged. Optional fields like link, image, and TTL can be updated as needed." }, { "slug": "ESPUTNIK_UPDATE_APPINBOX_TRANSLATION", "name": "Update App Inbox Translation", "description": "Tool to update or add a language version for an App Inbox message in eSputnik. Use when you need to add multilingual support or update existing translations for App Inbox notifications. This action allows updating the title, text, link, image, and other properties for a specific language version of an App Inbox message. If the language version doesn't exist, it will be created; if it exists, it will be updated with the new content." }, { "slug": "ESPUTNIK_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update contact information by contact ID. Use when you need to modify an existing contact's details. This action updates an existing contact identified by their eSputnik contact ID. You can update any combination of contact fields including name, channels, address, and custom fields. Only the fields you provide will be updated; other fields remain unchanged." }, { "slug": "ESPUTNIK_UPDATE_CONTACT_SUBSCRIPTIONS", "name": "Update Contact Subscriptions", "description": "Tool to update the subscription categories a contact is enrolled in. Use when you need to modify which communication types a contact receives. This action replaces the contact's current subscription list with the provided categories. Pass an empty array to unsubscribe from all categories. Returns success if the contact exists." }, { "slug": "ESPUTNIK_UPDATE_EMAIL_MESSAGE", "name": "Update Email Message", "description": "Tool to update an existing email message in eSputnik. Use when you need to modify the content, subject, sender, or other properties of an existing email template. This action updates the basic email message properties including HTML content, subject line, sender information, and optional fields like AMP HTML, CSS styles, and subscription categories. The 'languageCode' parameter allows updating specific language versions for multilingual campaigns." }, { "slug": "ESPUTNIK_UPDATE_EMAIL_TRANSLATION", "name": "Update Email Translation", "description": "Tool to update or add a language version for a base email message in eSputnik. Use when you need to add multilingual support to an existing email template or update an existing translation. This action updates the translation for a specific language of an existing email message. If the translation for the specified language doesn't exist, it will be created. The base message must already exist in eSputnik." }, { "slug": "ESPUTNIK_UPDATE_INTERACTION_STATUS", "name": "Update Interaction Status", "description": "Tool to update the status of a message interaction using interaction_id. Use when you need to report message delivery, open, click, or undelivery events. The interaction_id is sent along with message data (e.g., in Mobile Push as 'es_interaction_id'). This action allows you to report back to eSputnik when a message is delivered, opened, clicked, or fails to deliver, enabling accurate tracking and analytics." }, { "slug": "ESPUTNIK_UPDATE_MOBILEPUSH_MESSAGE", "name": "Update Mobile Push Message", "description": "Tool to update an existing mobile push notification message in eSputnik. Use when you need to modify a previously created push notification campaign. Updates message content including title, body text, images, action buttons, and custom data. Supports multilingual messages through the translations field. Requires the message ID and all required fields (name, title, text) must be provided even if not changing." }, { "slug": "ESPUTNIK_UPDATE_MOBILEPUSH_TRANSLATION", "name": "Update Mobile Push Translation", "description": "Tool to update or add a language version for a mobile push message in eSputnik. Use when you need to create or modify translations for multilingual push notification campaigns. This action allows you to manage language-specific versions of a base mobile push message, enabling targeted communication with users in their preferred language. The translation can include localized title, text, images, buttons, and other notification settings." }, { "slug": "ESPUTNIK_UPDATE_PREPROCESSOR_FILE_BY_ID", "name": "Update Preprocessor File By ID", "description": "Tool to update a preprocessor file's data by providing a new external link. Use when you need to refresh or change the data source for an already uploaded preprocessor file. The file ID must be obtained from a previous Upload file for preprocessor operation. This method updates the file metadata including the external data link and time-to-live." }, { "slug": "ESPUTNIK_UPDATE_SMS_MESSAGE", "name": "Update SMS Message", "description": "Tool to update an existing base SMS message template in eSputnik. Use when you need to modify the sender name, message text, or other properties of an existing SMS template. The SMS message must already exist with the provided ID. All three required fields (from, name, text) must be provided even if only updating some properties. The action supports multilingual messages through the languageCode parameter." }, { "slug": "ESPUTNIK_UPDATE_SMS_TRANSLATION", "name": "Update SMS Translation", "description": "Tool to update a language version of an SMS message in eSputnik. Use when you need to modify the content, sender name, or other properties of a specific language translation of an SMS message. This action updates an existing translation while keeping other language versions intact. The SMS message must already exist, and you're updating the specified language version." }, { "slug": "ESPUTNIK_UPDATE_TELEGRAM_MESSAGE", "name": "Update Telegram Message", "description": "Update a base Telegram bot message in eSputnik. Use when you need to modify an existing message template's content, buttons, or metadata. The message template is updated in eSputnik and can later be sent to contacts using the Send Message API. Only the fields provided in the request will be updated. Prerequisites: - Valid eSputnik API credentials with write permissions - Telegram bot configured in your eSputnik account - Valid message ID for an existing Telegram message Example usage: \"Update Telegram message 4404257 with new text 'Updated content'\"" }, { "slug": "ESPUTNIK_UPDATE_TELEGRAM_TRANSLATION", "name": "Update Telegram Translation", "description": "Update a translated telegram bot message in eSputnik. Use when you need to modify an existing translation of a Telegram bot message. This action allows you to update the content, buttons, image, and metadata of a specific language version of a Telegram bot message. The message must already exist in eSputnik, and you must specify both the message ID and the language code to update." }, { "slug": "ESPUTNIK_UPLOAD_PREPROCESSOR_FILE", "name": "Upload Preprocessor File", "description": "Tool to upload a file for the preprocessor from an external repository. Use when you need to import preprocessor data from an external URL. The file is uploaded asynchronously - this endpoint returns immediately with a session ID that can be used to poll for completion status using the GetPreprocessorFileStatus action. The file will remain in the system for the specified TTL period (default: 1 month)." }, { "slug": "ESPUTNIK_UPLOAD_PROMOCODES", "name": "Upload Promotional Codes", "description": "Tool to upload promotional codes to eSputnik in bulk. Use this action to create new promo codes or update existing ones. Existing promotional codes with the same string value will be updated with the new discount, expiration date, type, and usage status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "esputnik_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "eSputnik API Key", "type": "string", "description": "Your eSputnik API key. Find it in your eSputnik account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "etermin", "name": "Etermin", "logo": "https://logos.composio.dev/api/etermin", "description": "eTermin is an online appointment scheduling platform that allows businesses to manage bookings and integrate with various applications through its REST API.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 78, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ETERMIN_ASSIGN_CALENDAR_SERVICE", "name": "Assign Calendar Service", "description": "Tool to assign a service to a calendar in eTermin. Use when you need to link a specific service to a calendar/employee resource, making the service available for that calendar." }, { "slug": "ETERMIN_CREATE_ABSENCE", "name": "Create Absence", "description": "Tool to create an absence (non-working time) for a specific calendar. Use when you need to block time on a calendar for unavailability such as vacations, sick leave, or other non-working periods." }, { "slug": "ETERMIN_CREATE_ANCHORTIME", "name": "Create Anchortime", "description": "Tool to create anchortimes (recurring time slots) in a calendar. Use when you need to define regular appointment availability." }, { "slug": "ETERMIN_CREATE_ANCHORTIME_BY_DATE", "name": "Create Anchortime by Date", "description": "Tool to create anchortimes by date. Use when you need to block specific time slots on a calendar. Anchortimes define blocked periods for calendar scheduling where appointments cannot be booked." }, { "slug": "ETERMIN_CREATE_APPOINTMENT", "name": "Create Appointment", "description": "Tool to create a new appointment in eTermin. Use when you need to schedule an appointment with specific start/end times and calendar. Requires at minimum the start time, end time, and calendar ID. Optionally accepts customer details, service information, pricing, and notification settings." }, { "slug": "ETERMIN_CREATE_APPOINTMENT_SYNC", "name": "Create Appointment via Sync", "description": "Tool to create an appointment via sync in eTermin. Use when you need to synchronize an appointment from an external calendar system. Requires date/time in both local and UTC formats along with calendar ID, summary, and description." }, { "slug": "ETERMIN_CREATE_CALENDAR_RETURN_TIME", "name": "Create Calendar Return Time", "description": "Tool to create a return time for a calendar. Use when scheduling recurring return times or availability windows for a specific weekday. Return times define when a calendar resource becomes available after being occupied." }, { "slug": "ETERMIN_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in eTermin. Use when you need to add a contact before scheduling appointments." }, { "slug": "ETERMIN_CREATE_SERVICE", "name": "Create Service", "description": "Tool to create a new service in eTermin. Use when you need to add a service to a service group with specified duration and settings." }, { "slug": "ETERMIN_CREATE_SERVICE_GROUP", "name": "Create Service Group", "description": "Tool to create a new service group in eTermin. Use when you need to organize services into groups for better booking page structure. Service groups help categorize services and control how they are displayed to customers during booking." }, { "slug": "ETERMIN_CREATE_USER", "name": "Create User", "description": "Tool to create a new user. Use when you need to add users to eTermin after collecting their details." }, { "slug": "ETERMIN_CREATE_USERMAPPING", "name": "Create Usermapping", "description": "Tool to create a new usermapping in eTermin. Use when you need to map phone numbers or other values to specific calendars and service groups." }, { "slug": "ETERMIN_CREATE_VOUCHER", "name": "Create Voucher", "description": "Creates a new discount voucher in eTermin. Use this to set up promotional codes that customers can apply during booking. Supports both percentage and fixed amount discounts." }, { "slug": "ETERMIN_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates a webhook (web push notification) in eTermin to receive real-time updates about appointments. IMPORTANT: eTermin webhook configuration is typically managed through the web UI at API > API & Web Push. This action attempts API-based creation but will return a helpful message with UI instructions if the API endpoint is not available for your tenant. Webhooks can notify your application when appointments are created, modified, or deleted. Configure the webhook URL, optional authentication headers, and secret key for signature verification." }, { "slug": "ETERMIN_CREATE_WORKING_TIME", "name": "Create Working Time", "description": "Tool to create a new working time slot in eTermin. Use when defining available time slots for appointments on a calendar." }, { "slug": "ETERMIN_CREATE_WORKING_TIMES_DATE", "name": "Create Working Times Date", "description": "Tool to create a working times date slot for a calendar. Use when you need to define available time slots for appointments." }, { "slug": "ETERMIN_DELETE_ABSENCE", "name": "Delete Absence", "description": "Tool to delete an absence (non-working time) from a calendar. Use when you need to remove a blocked time period from a calendar's availability." }, { "slug": "ETERMIN_DELETE_ANCHORTIME", "name": "Delete Anchortime", "description": "Delete an anchortime from eTermin by its ID. Use this when you need to permanently remove an anchortime entry from the system. Note: This action is irreversible." }, { "slug": "ETERMIN_DELETE_ANCHORTIME_BY_DATE", "name": "Delete Anchortime By Date", "description": "Delete an anchortime by date using its ID. Use when you need to remove a specific anchortime entry by date. Returns a success indicator along with any error messages if the deletion fails." }, { "slug": "ETERMIN_DELETE_APPOINTMENT", "name": "Delete Appointment", "description": "Delete an existing appointment by its ID. Use the GET appointments action first to retrieve valid appointment IDs. Returns a success indicator along with any error messages if the deletion fails." }, { "slug": "ETERMIN_DELETE_APPOINTMENT_SYNC", "name": "Delete Appointment via Sync", "description": "Tool to delete appointments via the sync endpoint. Use when you need to delete one or more appointments by ID or date range. Provide either an appointmentid for single deletion, or start/end dates for bulk deletion within a time range." }, { "slug": "ETERMIN_DELETE_CALENDAR", "name": "Delete Calendar", "description": "Delete a calendar from your eTermin account. Use this tool to permanently remove a calendar by its ID. The calendar and all associated data will be deleted. This operation is idempotent - deleting a non-existent calendar will still return success. To find calendar IDs, first use ETERMIN_GET_CALENDARS to list all calendars." }, { "slug": "ETERMIN_DELETE_CALENDAR_RETURN_TIME", "name": "Delete Calendar Return Time", "description": "Delete a return time from a calendar. Use when you need to remove a specific return time entry." }, { "slug": "ETERMIN_DELETE_CALENDAR_SERVICE", "name": "Delete Calendar Service", "description": "Delete an assigned service from a calendar in eTermin. Use this action to remove a service assignment from a specific calendar by providing both the service assignment ID and the calendar ID. The deletion is permanent." }, { "slug": "ETERMIN_DELETE_CONTACT", "name": "Delete Contact", "description": "Delete a contact from your eTermin account by its contact ID. Use this action when you need to permanently remove a contact from the system. The contact ID can be obtained using the Get Contacts action. Note: This action is irreversible. The contact will be permanently deleted." }, { "slug": "ETERMIN_DELETE_RESOURCE", "name": "Delete Resource", "description": "Delete an eTermin resource by type and ID. Supports deleting contacts, services, users, calendars, vouchers, and working times. The resource ID can be obtained from listing or creating resources." }, { "slug": "ETERMIN_DELETE_SERVICE", "name": "Delete Service", "description": "Permanently deletes a service from your eTermin account by its ID. Use this action to remove services that are no longer needed. The deletion is permanent and cannot be undone. Services with associated appointments may not be deletable. Before deleting, use the Get Services action to retrieve service IDs and verify which service you want to delete." }, { "slug": "ETERMIN_DELETE_SERVICEGROUP", "name": "Delete Service Group", "description": "Delete a service group from your eTermin account by its ID. Use this action when you need to permanently remove a service group from the system. The deletion is permanent and cannot be undone." }, { "slug": "ETERMIN_DELETE_USER", "name": "Delete User", "description": "Deletes an existing user from the eTermin account. Use the get_users action first to retrieve the user ID. The deletion is idempotent - deleting a non-existent user will not cause an error." }, { "slug": "ETERMIN_DELETE_USERMAPPING", "name": "Delete Usermapping", "description": "Delete a usermapping by its ID. Use this action when you need to remove a usermapping from the eTermin system." }, { "slug": "ETERMIN_DELETE_VOUCHER", "name": "Delete Voucher", "description": "Permanently deletes a voucher from eTermin by its voucher code. The operation is idempotent - deleting a non-existent voucher will still return success. Use the List Vouchers action first to get valid voucher codes if needed." }, { "slug": "ETERMIN_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Delete an existing webhook by its unique identifier. Note: eTermin's webhook deletion endpoint is undocumented. This action attempts multiple candidate endpoints and returns a graceful message if webhook deletion is not supported via API for the tenant. In that case, users should manage webhooks through the eTermin web UI." }, { "slug": "ETERMIN_DELETE_WORKING_TIMES", "name": "Delete Working Times", "description": "Tool to delete working times from a calendar. Use when removing time slots or clearing all working times from a calendar. If no specific working time ID is provided, all working slots for the calendar will be deleted." }, { "slug": "ETERMIN_DELETE_WORKING_TIMES_DATE", "name": "Delete Working Times Date", "description": "Tool to delete working times date entries from eTermin. Use when removing working time slots by calendar or specific ID. Provide either calendarid to delete all working slots for a calendar, or id to delete a specific working time entry." }, { "slug": "ETERMIN_GET_ABSENCES", "name": "Get Absences", "description": "Tool to retrieve absences (non-working times) for a specific calendar. Use when you need to check when a calendar is unavailable for appointments." }, { "slug": "ETERMIN_GET_ANCHORTIME_DATE", "name": "Get Anchortime by Date", "description": "Tool to retrieve anchortimes by date. Use when you need to get existing anchortimes for calendars. Anchortimes define specific time slots or blocked periods for calendar scheduling." }, { "slug": "ETERMIN_GET_ANCHORTIMES", "name": "Get Anchortimes", "description": "Tool to retrieve anchortime details. Use when you need to get anchortimes for calendars in your eTermin account." }, { "slug": "ETERMIN_GET_APPOINTMENT_SYNC", "name": "Get Appointment Sync", "description": "Tool to synchronize appointments incrementally from eTermin. Use when you need to sync appointments using a sync token. For first sync, use synctoken=1. The API returns a new sync token in the response header for subsequent syncs." }, { "slug": "ETERMIN_GET_BOOKINGPAGE_LOGS", "name": "Get Bookingpage Logs", "description": "Tool to retrieve bookingpage request logs from eTermin. Use when you need to analyze bookingpage access patterns and requests." }, { "slug": "ETERMIN_GET_CALENDAR_RETURN_TIME", "name": "Get Calendar Return Time", "description": "Tool to retrieve return times for a specific calendar. Use when you need to get the configured return time periods for a calendar." }, { "slug": "ETERMIN_GET_CALENDARS", "name": "Get Calendars", "description": "Tool to retrieve calendars. Use when listing all calendars in your eTermin account." }, { "slug": "ETERMIN_GET_CALENDARSERVICE", "name": "Get Calendar Service Assignments", "description": "Tool to retrieve calendar service assignments. Use when you need to get services assigned to calendars in your eTermin account." }, { "slug": "ETERMIN_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve company account details. Use when you need to get all company information from your eTermin account." }, { "slug": "ETERMIN_GET_CONTACT_BY_ID", "name": "Get Contact By ID", "description": "Tool to retrieve a specific contact by ID, external ID, or email. Use when you need to get details of a single contact from eTermin. Provide at least one of: cid (internal ID), id (external UUID), or email." }, { "slug": "ETERMIN_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts. Use when you need to list all contacts in your eTermin account." }, { "slug": "ETERMIN_GET_DELETED_APPOINTMENTS", "name": "Get Deleted Appointments", "description": "Tool to retrieve a list of deleted appointments from eTermin. Use when you need to track or audit deleted appointments, optionally filtered by deletion date range. Returns details including who deleted the appointment, when it was deleted, and the original appointment information." }, { "slug": "ETERMIN_GET_MESSAGE_LOGS", "name": "Get Message Logs", "description": "Tool to retrieve message logs from eTermin. Use when you need to view emails and SMS that have been sent through the system. Returns details about sent messages including receiver, subject, date sent, and message type." }, { "slug": "ETERMIN_GET_RATING", "name": "Get Customer Ratings", "description": "Tool to retrieve a list of customer ratings from eTermin. Use when you need to get feedback and ratings from customers for appointments. Returns rating details including customer feedback, rating score, and reply status." }, { "slug": "ETERMIN_GET_SERVICE_BY_ID", "name": "Get Service By ID", "description": "Tool to retrieve a specific service from eTermin. Use when you need to get service details by service ID." }, { "slug": "ETERMIN_GET_SERVICE_CALENDAR", "name": "Get Service Calendar", "description": "Tool to retrieve calendars for a specific service ID. Use when you need to find which calendars are associated with a particular service." }, { "slug": "ETERMIN_GET_SERVICEGROUP", "name": "Get Service Group", "description": "Tool to retrieve service group details from eTermin. Use when you need to list service groups or get specific service group information by ID or language." }, { "slug": "ETERMIN_GET_SERVICES", "name": "Get Services", "description": "Tool to retrieve a list of services. Use when you need to list available services in your eTermin account." }, { "slug": "ETERMIN_GET_SURVEY_RESULTS", "name": "Get Survey Results", "description": "Tool to retrieve survey results from eTermin. Use when you need to get customer feedback and survey responses. Returns survey questions, answers, timestamps, and associated calendar/employee information." }, { "slug": "ETERMIN_GET_TIMESLOTS", "name": "Get Timeslots", "description": "Tool to retrieve available timeslots for a specific calendar on a given date. Use when you need to check booking availability for a particular calendar." }, { "slug": "ETERMIN_GET_USERMAPPING", "name": "Get Usermapping", "description": "Tool to retrieve usermapping information. Use when you need to get usermapping details or validate number search values." }, { "slug": "ETERMIN_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of users. Use when you need to list all users in your eTermin account." }, { "slug": "ETERMIN_GET_WORKING_TIMES", "name": "Get Working Times", "description": "Tool to retrieve working times for a specific calendar. Use when confirming available time slots before booking appointments." }, { "slug": "ETERMIN_GET_WORKING_TIMES_DATE", "name": "Get Working Times Date", "description": "Tool to retrieve working times for a specific calendar on a specific date. Use when checking available time slots for a particular date before booking appointments." }, { "slug": "ETERMIN_LIST_APPOINTMENTS", "name": "List Appointments", "description": "Tool to retrieve a filtered list of appointments from eTermin in a specified date range. Use when you need to search for appointments by date range, calendar, customer, or other criteria. Returns appointment details including date/time, customer info, and service information." }, { "slug": "ETERMIN_LIST_VOUCHERS", "name": "List Vouchers", "description": "Retrieve all vouchers (discount codes) from your eTermin account. Use this tool when you need to: - View all active and expired vouchers - Check voucher usage statistics (ContingentCounter vs ContingentMax) - Find voucher codes to share with customers - Monitor voucher validity periods Returns a list of vouchers with their discount values, validity dates, and usage restrictions." }, { "slug": "ETERMIN_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve webhooks. Use when listing all webhooks in your eTermin account." }, { "slug": "ETERMIN_PUT_SERVICE", "name": "Update Service via PUT", "description": "Tool to update a service in eTermin. Use when you need to modify service settings or configuration." }, { "slug": "ETERMIN_UPDATE_ABSENCE", "name": "Update Absence", "description": "Tool to update an absence (non-working time) for a calendar in eTermin. Use when you need to modify an existing absence's dates, reason, or settings." }, { "slug": "ETERMIN_UPDATE_ANCHORTIME", "name": "Update Anchortime", "description": "Update an existing anchortime in eTermin. Use this to modify anchortime settings such as start time, weekday, calendar assignment, or booking ignore behavior. The anchortime ID must be provided to identify which anchortime to update." }, { "slug": "ETERMIN_UPDATE_ANCHORTIME_BY_DATE", "name": "Update Anchortime By Date", "description": "Tool to update anchortimes by date in eTermin. Use when you need to modify an existing anchortime's schedule. Anchortimes define recurring time slots for appointments on specific dates." }, { "slug": "ETERMIN_UPDATE_APPOINTMENT", "name": "Update Appointment", "description": "Tool to update an existing appointment in eTermin. Use when you need to modify appointment details such as date/time, customer information, or service details. Only the appointment ID is required; provide only the fields you want to update." }, { "slug": "ETERMIN_UPDATE_CALENDAR", "name": "Update Calendar", "description": "Update an existing calendar in eTermin. Use this tool to modify calendar settings such as name, description, capacity settings, and other configuration options. You must provide the calendar_id obtained from the get_calendars action. The eTermin API uses PUT /api/calendar with form-urlencoded data, where the calendar to update is specified by the 'id' parameter." }, { "slug": "ETERMIN_UPDATE_CALENDAR_RETURN_TIME", "name": "Update Calendar Return Time", "description": "Tool to update a return time for a calendar in eTermin. Use when modifying existing return time settings such as start time, end time, weekday, or overnight settings." }, { "slug": "ETERMIN_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in eTermin. Use when you need to modify contact details by ID after confirming it exists." }, { "slug": "ETERMIN_UPDATE_RESOURCE", "name": "Update Resource", "description": "Update an existing eTermin resource (contact, service, calendar, user, or voucher). The eTermin API requires PUT requests to the collection endpoint with form-urlencoded data including the resource ID in the body. ID field names by resource type: - contact: 'cid' - service: 'id' - calendar: 'id' - user: 'id' - voucher: 'id'" }, { "slug": "ETERMIN_UPDATE_SERVICE", "name": "Update Service", "description": "Tool to update an existing service. Use when you need to modify service details after confirming the service ID." }, { "slug": "ETERMIN_UPDATE_SERVICE_GROUP", "name": "Update Service Group", "description": "Tool to update an existing service group in eTermin. Use when you need to modify service group properties such as name, display settings, or selection behavior." }, { "slug": "ETERMIN_UPDATE_SYNC_APPOINTMENT", "name": "Update Synchronised Appointment", "description": "Tool to update a synchronised appointment in eTermin. Use when you need to modify an existing synced appointment with updated date/time, location, or other details. Requires the appointment ID (ExternalID) and updated date/time in both local and UTC formats." }, { "slug": "ETERMIN_UPDATE_USERMAPPING", "name": "Update Usermapping", "description": "Update an existing usermapping in eTermin. Use this when you need to modify usermapping search criteria, calendar assignments, or service group mappings." }, { "slug": "ETERMIN_UPDATE_VOUCHER", "name": "Update Voucher", "description": "Updates an existing voucher in eTermin. Use this to modify voucher properties such as description, discount amount, validity dates, or usage limits. The voucher must already exist - use ETERMIN_CREATE_VOUCHER to create new vouchers." }, { "slug": "ETERMIN_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update an existing webhook configuration in eTermin. Use this action to modify webhook settings such as the notification email, enable/disable web push notifications, or update the webhook endpoint URL. Note: eTermin webhook management is often only available through the web UI (Configuration -> Integration - API -> API tab). If the API does not support updates for your tenant, this action will return success=False with an informative message. Prerequisites: Use 'List Webhooks' to obtain a valid webhook_id." }, { "slug": "ETERMIN_UPDATE_WORKING_TIMES", "name": "Update Working Times", "description": "Tool to update working times for a calendar in eTermin. Use when you need to modify existing working time slots, including their start/end times, weekdays, capacity limits, and other scheduling configurations." }, { "slug": "ETERMIN_UPDATE_WORKING_TIMES_DATE", "name": "Update Working Times Date", "description": "Tool to update working times date for a calendar. Use when modifying existing working time slots for appointments." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "etermin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Signature", "type": "string", "description": "The base64-encoded HMAC-SHA256 hash of the salt, using the private key as the key. Calculated per request.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Public API Key", "type": "string", "description": "The public API key for your eTermin account. You can find this in the eTermin API settings.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Private API Key (Secret Key)", "type": "string", "description": "The private API key (secret key) for your eTermin account. This key is used to sign each API request.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Salt", "type": "string", "description": "A randomly generated string used to create the signature for each request. Must be regenerated for every API request.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "etsy", "name": "Etsy", "logo": "https://logos.composio.dev/api/etsy", "description": "Etsy is a global online marketplace for unique and creative goods", "category": "ecommerce", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "etsy_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "email_r,listings_r,listings_w,shops_r,shops_w,transactions_r,transactions_w,address_r,profile_r" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Keystring", "type": "string", "description": "Your Etsy API keystring from the app settings", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Shared Secret", "type": "string", "description": "Your Etsy shared secret from the app settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "evenium", "name": "Evenium", "logo": "https://logos.composio.dev/api/evenium", "description": "Evenium is an all-in-one event management platform that simplifies the planning, execution, and analysis of professional events.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVENIUM_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in the Evenium address book. Use when you need to add a new contact with basic information (name, email, company) and optional custom fields." }, { "slug": "EVENIUM_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to permanently remove a contact from the Evenium address book. Use when you need to delete a contact by their ID. WARNING: This operation is irreversible and deletes all associated guests in cascade." }, { "slug": "EVENIUM_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a single contact by ID from Evenium. Use when you need to fetch details for a specific contact using either Evenium internal ID or custom external ID." }, { "slug": "EVENIUM_GET_CONTACT_BY_CUSTOM_ID", "name": "Get Contact by Custom ID", "description": "Tool to retrieve a specific contact from Evenium by their custom ID (external database ID). Use when you need to look up a contact using an identifier from your own CRM or database system." }, { "slug": "EVENIUM_GET_CONTACT_EVENTS", "name": "Get Contact Events", "description": "Tool to retrieve all events that a contact has been invited to or registered for. Use when you need to see a contact's event history with registration details." }, { "slug": "EVENIUM_GET_CONTACT_EVENTS_BY_CUSTOM_ID", "name": "Get Contact Events by Custom ID", "description": "Retrieves all events a contact has been invited to using their custom ID. Use this when you need to find all events associated with a specific contact identified by a custom ID from your database." }, { "slug": "EVENIUM_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts from Evenium. Use when you need to fetch and optionally filter organizer contacts." }, { "slug": "EVENIUM_GET_EVENTS", "name": "Get Events", "description": "Retrieves a paginated list of events from Evenium with optional filtering and sorting. Use this to list all events or search for specific events by title, code, or location. Supports pagination via start/limit parameters and sorting via sort/direction parameters. By default, returns active events only; use filter flags to include archived, deleted, or draft events." }, { "slug": "EVENIUM_IMPORT_CONTACTS", "name": "Import Contacts", "description": "Tool to import multiple contacts at once (batch import). Creates new contacts or updates existing ones based on customId or email matching. Use when you need to bulk create or update contacts in Evenium." }, { "slug": "EVENIUM_LOGOUT", "name": "Logout", "description": "Tool to log out the current user and invalidate the session token. Use when you need to explicitly end the current session." }, { "slug": "EVENIUM_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Evenium by contact ID. Use when you need to modify contact details such as email, name, company, or custom fields." }, { "slug": "EVENIUM_UPDATE_CONTACT_BY_CUSTOM_ID", "name": "Update Contact by Custom ID", "description": "Tool to update a contact in Evenium by custom ID (external ID from your CRM/database). Use when you need to update contact details using your own identifier rather than Evenium's internal ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "evenium_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Evenium API Key", "type": "string", "description": "The API key provided by Evenium for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eventee", "name": "Eventee", "logo": "https://logos.composio.dev/api/eventee", "description": "Eventee is an intuitive mobile and web app that enhances attendee experience and engagement at in-person, virtual, or hybrid events.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVENTEE_ADD_SPEAKER", "name": "Add speaker", "description": "Tool to add a new speaker to a specific Eventee event. Use after creating an event and obtaining its ID." }, { "slug": "EVENTEE_CREATE_HALL", "name": "Create Hall", "description": "Tool to create a new hall/stage for an event where sessions can be scheduled. Use when setting up venues or stages for your event to organize presentations and activities." }, { "slug": "EVENTEE_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new label/track for categorizing event sessions by topic or theme. Use this when organizing sessions into different tracks like technology, design, or marketing themes." }, { "slug": "EVENTEE_CREATE_PARTNER", "name": "Create Partner", "description": "Tool to add a new partner/sponsor to the event. Use when you need to register sponsors or exhibitors for your event." }, { "slug": "EVENTEE_CREATE_PAUSE", "name": "Create Pause", "description": "Tool to create a new break/pause in the event schedule (e.g., coffee break, lunch). Use when scheduling breaks between sessions. Start and end times must be within the event date range." }, { "slug": "EVENTEE_DELETE_ATTENDEE", "name": "Delete Attendee", "description": "Tool to remove an attendee from the event by their email address. Use when you need to delete an attendee registration." }, { "slug": "EVENTEE_DELETE_HALL", "name": "Delete Hall", "description": "Tool to delete a hall/stage from an event by its ID. Use when you need to remove a hall/stage after confirming its ID." }, { "slug": "EVENTEE_DELETE_PARTNER", "name": "Delete Partner", "description": "Tool to delete a partner/sponsor by their ID. Use when you need to remove a partner after confirming their ID." }, { "slug": "EVENTEE_DELETE_REGISTRATION", "name": "Delete Registration", "description": "Tool to remove a registration from the event by email address. Use when you need to delete or cancel a specific registration." }, { "slug": "EVENTEE_DELETE_SPEAKER", "name": "Delete Speaker", "description": "Tool to delete a speaker by their ID. Use when you need to remove a speaker after confirming their ID." }, { "slug": "EVENTEE_DELETE_TEST_CONTENT", "name": "Delete Test Content", "description": "Tool to clear all test content from the event. Use this during development or testing to remove test data. This operation is destructive and cannot be undone." }, { "slug": "EVENTEE_GET_GROUPS", "name": "Get Groups", "description": "Tool to retrieve all event groups from Eventee (e.g., VIP attendees, speaker groups). Use this to get the list of attendee groups configured for your event." }, { "slug": "EVENTEE_GET_PARTICIPANTS", "name": "Get Participants", "description": "Tool to retrieve all participants/attendees for an Eventee event. The event is determined by your API token. Use this to get a list of all attendees who have registered or been invited to your event." }, { "slug": "EVENTEE_GET_PARTNERS", "name": "Get Partners", "description": "Tool to retrieve all partners/sponsors for an Eventee event. Use this to get information about exhibitors and sponsors associated with your event." }, { "slug": "EVENTEE_GET_REGISTRATIONS", "name": "Get Registrations", "description": "Tool to retrieve all registrations for an Eventee event. The event is determined by your API token. Use this to get a list of all registered attendees for your event." }, { "slug": "EVENTEE_GET_REVIEWS", "name": "Get Reviews", "description": "Tool to retrieve all reviews for your Eventee event. Reviews can include ratings and feedback from attendees about speakers, lectures, or the event itself. Use this to analyze attendee satisfaction and gather feedback." }, { "slug": "EVENTEE_INVITE_ATTENDEE", "name": "Invite Attendee", "description": "Tool to invite attendees to your Eventee event by sending invitation emails to specified users. Use when you need to send event invitations to new attendees." }, { "slug": "EVENTEE_INVITE_REGISTRATION", "name": "Invite Registration", "description": "Tool to invite registrants to your Eventee event by email. Use when you need to send event invitations to one or more participants." }, { "slug": "EVENTEE_LIST_EVENTS", "name": "List Events", "description": "Retrieves the content structure of your Eventee event including halls, speakers, lectures, workshops, and other event components. The event is determined by your API token. Use this to get an overview of all content within your event." }, { "slug": "EVENTEE_UPDATE_HALL", "name": "Update Hall", "description": "Tool to update an existing hall/stage details in an Eventee event. Use when you need to modify hall properties like name, order, or streaming URL." }, { "slug": "EVENTEE_UPDATE_LECTURE", "name": "Update Lecture", "description": "Tool to update an existing lecture/session details in Eventee. Use when modifying lecture information such as name, time, or description. Note that all required fields (name, start, end) must be provided even for partial updates." }, { "slug": "EVENTEE_UPDATE_PARTNER", "name": "Update Partner", "description": "Tool to update an existing partner/sponsor details. Use when you need to modify partner information such as company name, contact details, or status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "eventee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Eventee API Token", "type": "string", "description": "Your Eventee API token used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eventzilla", "name": "Eventzilla", "logo": "https://logos.composio.dev/api/eventzilla", "description": "Eventzilla is an event management platform that provides tools for creating, promoting, and managing events, including ticketing, registration, and attendee management.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVENTZILLA_CANCEL_ORDER", "name": "Cancel Order", "description": "Tool to cancel an event order by checkout ID and event ID. Use when you need to cancel a customer's order and require a reason for the cancellation." }, { "slug": "EVENTZILLA_CHECK_IN_ATTENDEE", "name": "Check In Attendee", "description": "Tool to check in or revert check-in for an attendee using their unique barcode. Use when you need to mark an attendee as present at an event or undo a check-in." }, { "slug": "EVENTZILLA_CONFIRM_ORDER", "name": "Confirm Order", "description": "Tool to confirm an event order by checkout ID and event ID. Use when you need to confirm a pending order and optionally send a confirmation email to the buyer." }, { "slug": "EVENTZILLA_GET_USER_DETAILS", "name": "Get User Details", "description": "Tool to retrieve detailed information of a specific user. Use after listing users to fetch full profile." }, { "slug": "EVENTZILLA_LIST_CATEGORIES", "name": "List Event Categories", "description": "Tool to retrieve event categories available in Eventzilla. Use when you need to present or choose from available categories before creating or filtering events." }, { "slug": "EVENTZILLA_LIST_EVENTS", "name": "List Events", "description": "Tool to retrieve a list of events associated with your account (supports filtering). Use when you need to list or filter events for your organization." }, { "slug": "EVENTZILLA_LIST_EVENT_TICKETS", "name": "List Event Tickets", "description": "Tool to retrieve all ticket categories for a specified event. Returns ticket types with pricing, availability, sales dates, limits, and additional options like partial payment." }, { "slug": "EVENTZILLA_LIST_EVENT_TRANSACTIONS", "name": "List Event Transactions", "description": "Tool to retrieve all transactions for a specified event. Use when you need to get transaction details including buyer information, amounts, status, and payment methods for an event." }, { "slug": "EVENTZILLA_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a list of users associated with your account. Use when you need to fetch and paginate through users." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "eventzilla_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Eventzilla API Key", "type": "string", "description": "The API key generated from your Eventzilla account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "everhour", "name": "Everhour", "logo": "https://logos.composio.dev/api/everhour", "description": "Everhour is a time tracking and expense management software equipped with budgeting, forward resource planning, expense tracking, dashboards, and reports.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVERHOUR_CLIENT_CREATE", "name": "Create Client", "description": "Creates a new client in Everhour for tracking billable work, invoicing, and project organization. Use this action when: - Setting up a new customer/client account for time tracking - Organizing projects under a specific client for billing purposes - Creating a client before generating invoices Note: Each project can only be assigned to one client. Attempting to assign a project that is already linked to another client will result in a 400 error." }, { "slug": "EVERHOUR_CLIENT_DELETE", "name": "Delete a client", "description": "Tool to delete a client. Use when you need to permanently remove a client from Everhour after confirming the client ID." }, { "slug": "EVERHOUR_CLIENT_LIST", "name": "List Clients", "description": "Retrieves all clients in the Everhour workspace. Use this action to: - Get an overview of all clients and their IDs - Find client IDs for use with other client-related actions (e.g., get client, update client, delete client) - View client statuses (active/archived), associated projects, and invoice settings Returns a list of all clients with their full details including name, creation date, status, associated projects, and invoice configuration settings." }, { "slug": "EVERHOUR_CLOCK_IN", "name": "Clock In User", "description": "Tool to clock in a user for time tracking. Use when you need to start a user's workday or shift in Everhour." }, { "slug": "EVERHOUR_CLOCK_OUT", "name": "Clock Out User", "description": "Tool to clock out a user for time tracking. Use when you need to end a user's workday or shift in Everhour." }, { "slug": "EVERHOUR_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for event notifications in Everhour. Use when you need to set up real-time notifications for specific events like task creation, timer starts, or client updates. The target URL must be accessible and respond to Everhour's validation request during setup." }, { "slug": "EVERHOUR_DELETE_HOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook. Use when you need to permanently remove a webhook from Everhour after confirming the webhook ID." }, { "slug": "EVERHOUR_DELETE_TIMECARD", "name": "Delete a timecard", "description": "Tool to delete a timecard for a user on a specific date. Use when you need to permanently remove time entries for a user on a particular date." }, { "slug": "EVERHOUR_DISCARD_TIMESHEET_APPROVAL", "name": "Discard Timesheet Approval", "description": "Tool to discard a pending timesheet approval request. Use when you need to cancel or withdraw a previously submitted approval request for a timesheet." }, { "slug": "EVERHOUR_EXPENSES_LIST", "name": "List Expenses", "description": "Lists expense records from your Everhour workspace. Supports filtering by date range, user, project, category, and billable status. Use this to review expenses, generate reports, or find specific expense entries. Returns expense details including amount, category, date, and billable status." }, { "slug": "EVERHOUR_GET_CLIENT", "name": "Get Client by ID", "description": "Tool to retrieve a specific client by ID. Use when you need detailed client information after obtaining the client's ID." }, { "slug": "EVERHOUR_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific project. Use after you have the project ID if you need its details." }, { "slug": "EVERHOUR_GET_SECTION", "name": "Get Section", "description": "Retrieve details of a specific section by its ID. Sections are used to organize tasks within Everhour projects. Use List Sections action first to get available section IDs for a project." }, { "slug": "EVERHOUR_GET_TIMECARD", "name": "Get Timecard", "description": "Tool to retrieve a specific timecard for a user on a date. Use when you need to get clock-in, clock-out, break time, and work time details for a team member on a particular day." }, { "slug": "EVERHOUR_GET_USER_PROFILE", "name": "Get Authenticated User Profile", "description": "Tool to retrieve profile information of the authenticated user. Use after providing API key to fetch current user's profile details." }, { "slug": "EVERHOUR_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieve details of a specific webhook by its ID. Returns the webhook's configuration including target URL, subscribed events, active status, and timestamps. Use this to inspect a webhook's settings or verify its configuration." }, { "slug": "EVERHOUR_LIST_EXPENSE_CATEGORIES", "name": "List Expense Categories", "description": "Lists all expense categories available in your Everhour account. Returns category IDs needed to create or filter expenses." }, { "slug": "EVERHOUR_LIST_HOOKS", "name": "List Webhooks", "description": "Lists all webhooks configured for the Everhour account. Returns details about each webhook including its target URL, subscribed events, active status, and timestamps. Use this to review existing webhook configurations or verify webhook setup. No parameters are required." }, { "slug": "EVERHOUR_LIST_INVOICES", "name": "List Invoices", "description": "Retrieves all invoices from your Everhour workspace. Returns a list of invoice objects with details such as invoice number, client, project, amount, currency, status, and dates. Use this action to get an overview of all invoices for reporting, accounting, or tracking purposes." }, { "slug": "EVERHOUR_LIST_PROJECTS", "name": "List projects", "description": "List all Everhour projects accessible by the authenticated user. Use this tool to: - Retrieve all projects in the workspace - Search for projects by name using the 'query' parameter - Filter projects by status ('open' or 'archived') - Filter projects by integration platform (e.g., 'ev', 'as', 'jira', 'trello') - Limit the number of results returned Returns a list of projects with details including name, ID, status, budget, billing, and more." }, { "slug": "EVERHOUR_LIST_SECTIONS", "name": "List Sections", "description": "Lists all sections within a specific Everhour project. Sections help organize tasks within a project. Returns section details including id, name, position, and status. Use this tool when you need to view, manage, or reference sections before creating tasks or organizing project work." }, { "slug": "EVERHOUR_LIST_TAGS", "name": "List Tags", "description": "List all tags in the Everhour workspace. Returns an array of all tags available in the workspace. Each tag contains: - id: Unique numeric identifier for the tag - name: Display name of the tag (e.g., 'high', 'medium', 'low') - color: Hex color code for visual display (e.g., '#ee7070') Use this action when you need to: - View all available tags for categorizing time entries - Get tag IDs for use in other API calls - Display tag options to users No parameters required." }, { "slug": "EVERHOUR_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "Retrieves all team members in the authenticated Everhour workspace. Returns detailed information for each member including their ID, name, email, role (admin/member/owner), status, avatar URLs, cost/billing rates, capacity, time tracking policies, and resource planner access permissions. Use this action to: - Get a list of user IDs for assigning tasks or tracking time - View team member roles and permissions - Check team member status (active/inactive) - Access billing information like cost and rate for team members" }, { "slug": "EVERHOUR_LIST_TEAMS", "name": "List Teams", "description": "Retrieves information about the authenticated team/workspace in Everhour. Returns comprehensive team details including: - Team ID and name - Owner information - Working days and hours configuration - Billing and subscription status - Available plan features - Enabled applications - Time tracking policies Use this action to: - Get the current team/workspace ID and name - Check team billing status and plan features - View team configuration and settings - Retrieve owner information Note: This returns info about the single workspace associated with the API key. Everhour operates in a single workspace context per API key." }, { "slug": "EVERHOUR_LIST_TIMECARDS", "name": "List Timecards", "description": "Tool to retrieve all team timecards with optional date filtering. Use when you need to get clock-in/out data and work hours for team members." }, { "slug": "EVERHOUR_LIST_USER_TIMECARDS", "name": "List User Timecards", "description": "Tool to retrieve timecards for a specific user with optional date filtering. Use when you need to get clock-in/out data and work hours for a particular team member." }, { "slug": "EVERHOUR_LIST_USER_TIMESHEETS", "name": "List User Timesheets", "description": "Tool to retrieve timesheets for a specific user. Use to get weekly time tracking data including daily time entries, task time, approvals, timecards, and time-off records. First use EVERHOUR_LIST_TEAM_MEMBERS to get the user ID." }, { "slug": "EVERHOUR_PROJECT_CREATE", "name": "Create Project", "description": "Tool to create a new project in Everhour. Use after gathering project details to persist a new project." }, { "slug": "EVERHOUR_PROJECT_DELETE", "name": "Delete a project", "description": "Tool to delete a project. Use when you need to permanently remove a project from Everhour after confirming the project ID." }, { "slug": "EVERHOUR_REQUEST_TIMESHEET_APPROVAL", "name": "Request Timesheet Approval", "description": "Tool to request approval for a timesheet or approve a week (for admins). Use when you need to submit a timesheet for review or when an admin needs to approve submitted timesheets. Regular users can request approval for their own timesheets, while admins can directly approve timesheets." }, { "slug": "EVERHOUR_SECTION_CREATE", "name": "Create Section", "description": "Tool to create a new section in a project. Use when you need to organize tasks under an existing project after confirming the project ID." }, { "slug": "EVERHOUR_SECTION_DELETE", "name": "Delete a section", "description": "Tool to delete a section. Use when you need to permanently remove a section from Everhour after confirming the section ID." }, { "slug": "EVERHOUR_TASK_CREATE", "name": "Create Task", "description": "Creates a new task in an Everhour project. Use this to add tasks for time tracking. Requires a valid project ID (get from EVERHOUR_LIST_PROJECTS) and a task name. Example: Create a task named 'Write unit tests' in project ev:192144450634449." }, { "slug": "EVERHOUR_TIMER_START", "name": "Start Timer", "description": "Tool to start a new timer for a task. Use when you need to begin tracking time on a specific task." }, { "slug": "EVERHOUR_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client in Everhour. Use this to modify client details such as name, business details, or status (active/archived). First use 'List Clients' to obtain the client ID." }, { "slug": "EVERHOUR_UPDATE_PROJECT", "name": "Update an existing project", "description": "Updates an existing Everhour project's settings. Use this to modify project name, budget, billing configuration, or notes. Requires a valid project_id (format: 'ev:XXXXXXXXX') - obtain from list_projects or project_create actions first. Only the fields you specify will be updated; omitted fields remain unchanged." }, { "slug": "EVERHOUR_UPDATE_TIMECARD", "name": "Update Timecard", "description": "Tool to update a timecard for a user on a specific date. Use when you need to set or modify clock-in, clock-out times, or break duration for a user's timecard." }, { "slug": "EVERHOUR_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in Everhour. Use this to modify the target URL, subscribed events, or project filter of an existing webhook. First use 'List Webhooks' to obtain the webhook ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "everhour_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Everhour API Key", "type": "string", "description": "The API key for authenticating requests to the Everhour API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "eversign", "name": "Eversign", "logo": "https://logos.composio.dev/api/eversign", "description": "Xodo Sign is a cloud-based digital signature solution that allows users to sign, send, and manage documents online.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EVERSIGN_AUDIT_LOG", "name": "Get Document Audit Log", "description": "Retrieves the complete audit trail for a document, showing all events from creation through completion. Use this after obtaining a document_hash from list_documents or create_document to track document lifecycle events, signer actions, and status changes." }, { "slug": "EVERSIGN_CREATE_DOCUMENT", "name": "Create Document", "description": "Creates a new Eversign document for electronic signature collection from one or more signers. You can create documents either: 1. From a template (use EVERSIGN_LIST_TEMPLATES to find available templates, then specify template_id) 2. From uploaded files (provide file URLs, base64 content, or file IDs in the files array) Documents can be sent immediately to signers or saved as drafts. Use sandbox mode for testing. Returns the document_hash which can be used to track and manage the document." }, { "slug": "EVERSIGN_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template. Use when you need to programmatically set up reusable document templates after confirming your business settings." }, { "slug": "EVERSIGN_DELETE_DOCUMENT_OR_TEMPLATE", "name": "Delete Document or Template", "description": "Tool to delete, cancel, or trash a document or template by its hash. Usage: - To cancel a pending/in-process document: Set cancel=True - To trash a document (safer, reversible): Set trash=True - To permanently delete a draft or cancelled document: Use without cancel or trash flags Note: Draft and completed documents must be trashed before permanent deletion. Pending documents must be cancelled before deletion." }, { "slug": "EVERSIGN_GET_BULK_JOBS_LIST", "name": "Get Bulk Jobs List", "description": "Tool to retrieve a list of bulk jobs for a business. Use when you need to view or paginate existing bulk jobs." }, { "slug": "EVERSIGN_GET_BULK_JOB_STATUS", "name": "Get Bulk Job Status", "description": "Tool to retrieve the status of a bulk job. Use when you need to check the progress of a bulk sending job, including counts of completed, cancelled, and in-progress documents." }, { "slug": "EVERSIGN_LIST_BUSINESSES", "name": "List Businesses", "description": "Retrieves all businesses associated with your Eversign account, or filters to a specific business if business_id is provided. This is a read-only operation that returns business details including ID, name, status, and whether it's the primary business. Use this action when you need to discover available businesses before performing operations that require a business context, or to verify business access permissions." }, { "slug": "EVERSIGN_LIST_DOCUMENTS", "name": "List Documents", "description": "Retrieves a paginated list of documents from your Eversign business account. This tool returns comprehensive document details including signers, status, timestamps, and metadata. Use filters to narrow results by status type, date range, search terms, or signer email. Perfect for monitoring document workflows, tracking signing progress, and building document dashboards." }, { "slug": "EVERSIGN_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates for a business with optional pagination. Use when you need to retrieve a paginated list of templates." }, { "slug": "EVERSIGN_REASSIGN_SIGNER", "name": "Reassign Signer", "description": "Tool to reassign a signer to a new person. Use when you need to replace an existing signer on a document before signing is complete. Example: \"Reassign the signer alice@example.com on document abc123 to bob@example.com\"." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "eversign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Access Key", "type": "string", "description": "Your unique API access key for authenticating with the Xodo Sign API.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Business ID", "type": "string", "description": "The ID of the business associated with your Xodo Sign account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "excel", "name": "Excel", "logo": "https://logos.composio.dev/api/excel", "description": "Microsoft Excel is a powerful spreadsheet application for data analysis, calculations, and visualization, enabling users to organize and process data with formulas, charts, and pivot tables", "category": "spreadsheets", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "EXCEL_ADD_CHART", "name": "Add Chart", "description": "Add a chart to a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_ADD_SHAREPOINT_WORKSHEET", "name": "Add SharePoint Worksheet", "description": "Add a new worksheet to a SharePoint Excel workbook using Microsoft Graph Sites API." }, { "slug": "EXCEL_ADD_TABLE", "name": "Add Table", "description": "Create a new table in a worksheet using the Microsoft Graph API." }, { "slug": "EXCEL_ADD_TABLE_COLUMN", "name": "Add Table Column", "description": "Add a column to a table using Microsoft Graph API." }, { "slug": "EXCEL_ADD_TABLE_ROW", "name": "Add Table Row", "description": "Add a row to a table using Microsoft Graph API." }, { "slug": "EXCEL_ADD_WORKBOOK_PERMISSION", "name": "Add Workbook Permission", "description": "Tool to grant access to a workbook via invite. Use when you need to share a specific workbook file with designated recipients and roles." }, { "slug": "EXCEL_ADD_WORKSHEET", "name": "Add Worksheet", "description": "Add a new worksheet to an Excel workbook using Microsoft Graph API." }, { "slug": "EXCEL_APPLY_TABLE_FILTER", "name": "Apply Table Filter", "description": "Apply a filter to a table column using Microsoft Graph API." }, { "slug": "EXCEL_APPLY_TABLE_SORT", "name": "Apply Table Sort", "description": "Apply a sort to a table using Microsoft Graph API." }, { "slug": "EXCEL_CLEAR_RANGE", "name": "Clear Range", "description": "Tool to clear values, formats, or contents in a specified worksheet range. Use when you need to reset cells before adding new data." }, { "slug": "EXCEL_CLEAR_TABLE_FILTER", "name": "Clear Table Filter", "description": "Clear a filter from a table column using Microsoft Graph API." }, { "slug": "EXCEL_CLOSE_SESSION", "name": "Close Excel Session", "description": "Tool to close an existing Excel workbook session. Use when you need to explicitly end a persistent session to release workbook locks. Note: The Microsoft Graph closeSession API is idempotent - it returns 204 for both active and already-closed sessions. This action validates the session first and returns an error for invalid or already-closed sessions to provide clearer user feedback. The validation uses refreshSession which is the only API endpoint that can detect closed sessions." }, { "slug": "EXCEL_CONVERT_TABLE_TO_RANGE", "name": "Convert Table To Range", "description": "Convert a table to a range using Microsoft Graph API." }, { "slug": "EXCEL_CREATE_WORKBOOK", "name": "Create Workbook", "description": "Tool to create a new Excel workbook file at a specified drive path. Generates a new .xlsx file with specified worksheets and data, then uploads it to OneDrive." }, { "slug": "EXCEL_DELETE_TABLE_COLUMN", "name": "Delete Table Column", "description": "Delete a column from a table using Microsoft Graph API." }, { "slug": "EXCEL_DELETE_TABLE_ROW", "name": "Delete Table Row", "description": "Delete a row from a table using Microsoft Graph API." }, { "slug": "EXCEL_DELETE_WORKSHEET", "name": "Delete Worksheet", "description": "Tool to delete a worksheet from the workbook. Use when cleaning up unused or temporary sheets after verifying no dependencies exist. Example: \"Delete 'Sheet2' after review.\"" }, { "slug": "EXCEL_EXPORT_WORKBOOK_TO_PDF", "name": "Export Workbook to PDF", "description": "Tool to export an Excel workbook to PDF via Microsoft Graph's format conversion. Use when you need a PDF version of an Excel file for sending, storing, or attaching." }, { "slug": "EXCEL_GET_CHART_AXIS", "name": "Get Chart Axis", "description": "Tool to retrieve a specific axis from a chart. Use when you need properties like min, max, interval, and formatting of the chart axis." }, { "slug": "EXCEL_GET_CHART_DATA_LABELS", "name": "Get Chart Data Labels", "description": "Tool to retrieve the data labels object of a chart. Use when you need to inspect label settings like position, separator, and visibility flags after creating or updating a chart." }, { "slug": "EXCEL_GET_CHART_LEGEND", "name": "Get Chart Legend", "description": "Tool to retrieve the legend object of a chart. Use after creating or updating a chart when you need to inspect legend visibility and formatting." }, { "slug": "EXCEL_GET_RANGE", "name": "Get Range", "description": "Get a range from a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_GET_SESSION", "name": "Create Excel Session", "description": "Create a session for an Excel workbook using Microsoft Graph API." }, { "slug": "EXCEL_GET_SHAREPOINT_RANGE", "name": "Get SharePoint Range", "description": "Get a range from a worksheet in SharePoint using Microsoft Graph Sites API." }, { "slug": "EXCEL_GET_SHAREPOINT_WORKSHEET", "name": "Get SharePoint Worksheet", "description": "Get a worksheet by name or ID from a SharePoint Excel workbook using Microsoft Graph Sites API." }, { "slug": "EXCEL_GET_TABLE_COLUMN", "name": "Get table column", "description": "Tool to retrieve a specific column from a workbook table. Use when you need to fetch column properties and data by its ID or name." }, { "slug": "EXCEL_GET_WORKBOOK", "name": "Get workbook", "description": "Tool to retrieve the properties and relationships of a workbook. Use when you need to inspect comments, names, tables, or worksheets." }, { "slug": "EXCEL_GET_WORKSHEET", "name": "Get Worksheet", "description": "Get a worksheet by name or ID from an Excel workbook using Microsoft Graph API." }, { "slug": "EXCEL_GET_WORKSHEET_USED_RANGE", "name": "Get Worksheet Used Range", "description": "Tool to retrieve a worksheet's used range (active data region) without specifying a fixed range address. Use when you need to read all data from a sheet but don't know the exact range. The valuesOnly option helps filter out formatting-only cells." }, { "slug": "EXCEL_INSERT_RANGE", "name": "Insert Range", "description": "Tool to insert a new cell range into a worksheet, shifting existing cells down or right. Use when you need to create space for new content without overwriting." }, { "slug": "EXCEL_LIST_CHARTS", "name": "List Charts", "description": "List charts in a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_LIST_CHART_SERIES", "name": "List Chart Series", "description": "Tool to list all data series in a chart. Use when you need to enumerate chart series for further analysis." }, { "slug": "EXCEL_LIST_COMMENTS", "name": "List Comments", "description": "Tool to list comments in an Excel workbook. Use when you need to retrieve all workbook comments via Microsoft Graph API." }, { "slug": "EXCEL_LIST_DRIVE_ITEM_CHILDREN", "name": "List Drive Item Children", "description": "Tool to list immediate children (files/folders) of a folder DriveItem using driveId and itemId. Returns an array of child DriveItems with stable identifiers and pagination support." }, { "slug": "EXCEL_LIST_FILES", "name": "List Drive Files", "description": "List files and folders in a drive root or specified path." }, { "slug": "EXCEL_LIST_NAMED_ITEMS", "name": "List Named Items", "description": "List named items in a workbook using Microsoft Graph API." }, { "slug": "EXCEL_LIST_SHAREPOINT_TABLES", "name": "List SharePoint Tables", "description": "List tables in a SharePoint worksheet using Microsoft Graph Sites API." }, { "slug": "EXCEL_LIST_SHAREPOINT_WORKSHEETS", "name": "List SharePoint Worksheets", "description": "List worksheets in an Excel workbook stored in SharePoint using Microsoft Graph Sites API." }, { "slug": "EXCEL_LIST_TABLE_COLUMNS", "name": "List Table Columns", "description": "List columns in a table using Microsoft Graph API." }, { "slug": "EXCEL_LIST_TABLE_ROWS", "name": "List Table Rows", "description": "List rows in a table using Microsoft Graph API." }, { "slug": "EXCEL_LIST_TABLES", "name": "List Tables", "description": "List tables in a worksheet using Microsoft Graph API. This action retrieves information about all tables present in a specified worksheet of an Excel file. It requires the file ID and worksheet name or ID, and can optionally use a session ID for workbook operations." }, { "slug": "EXCEL_LIST_WORKBOOK_PERMISSIONS", "name": "List Workbook Permissions", "description": "Tool to list permissions set on the workbook file. Use when you need to see which users or links have access to a specific Excel file by supplying its drive and item IDs. Example: \"List permissions for workbook with drive_id 'b!abc123' and item_id '0123456789abcdef'.\"" }, { "slug": "EXCEL_LIST_WORKSHEETS", "name": "List Worksheets", "description": "List worksheets in an Excel workbook using Microsoft Graph API." }, { "slug": "EXCEL_MERGE_CELLS", "name": "Merge Cells", "description": "Merge cells in a worksheet range using Microsoft Graph API." }, { "slug": "EXCEL_PROTECT_WORKSHEET", "name": "Protect Worksheet", "description": "Tool to protect a worksheet using optional protection options. Use when you need to prevent editing certain parts of a sheet before sharing. Example: \"Protect 'Sheet1' to lock formatting and sorting.\"" }, { "slug": "EXCEL_SEARCH_FILES", "name": "Search Drive Files", "description": "Tool to search OneDrive drive items by query to discover Excel workbook IDs. Use when you need to find Excel files by name before performing workbook operations." }, { "slug": "EXCEL_SORT_RANGE", "name": "Sort Range", "description": "Sort a range in a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_UPDATE_CHART", "name": "Update Chart", "description": "Update a chart in a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_UPDATE_CHART_LEGEND", "name": "Update Chart Legend", "description": "Tool to update formatting or position of a chart legend. Use when adjusting legend settings after confirming chart and worksheet exist." }, { "slug": "EXCEL_UPDATE_RANGE", "name": "Update Range", "description": "Update a range in a worksheet using Microsoft Graph API." }, { "slug": "EXCEL_UPDATE_SHAREPOINT_RANGE", "name": "Update SharePoint Range", "description": "Update a range in a SharePoint worksheet using Microsoft Graph Sites API." }, { "slug": "EXCEL_UPDATE_TABLE", "name": "Update Table", "description": "Update a table in a workbook using Microsoft Graph API." }, { "slug": "EXCEL_UPDATE_WORKSHEET", "name": "Update Worksheet", "description": "Update worksheet properties (name, position) in an Excel workbook using Microsoft Graph API." }, { "slug": "EXCEL_UPLOAD_WORKBOOK", "name": "Upload Workbook from URL", "description": "Tool to upload an external Excel file from a URL into OneDrive/SharePoint. Downloads the file server-side and uploads it to the specified drive location, returning the driveItem metadata for subsequent Excel operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "excel_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Files.ReadWrite,Sites.ReadWrite.All,offline_access,User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "issuer", "displayName": "Microsoft Tenant ID", "type": "string", "description": "Optional Microsoft Entra tenant alias, tenant ID, or tenant domain used to target a specific tenant instead of /common.", "required": false, "default": "common" } ] } } }, { "mode": "S2S_OAUTH2", "name": "excel_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & Secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Your Microsoft Entra (Azure AD) tenant ID in GUID format (e.g. \"a6a55c5f-0747-4804-a166-2b5dfc9ace2a\"). Found in Azure Portal > Microsoft Entra ID > Overview > Tenant ID.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "expensify", "name": "Expensify", "logo": "https://logos.composio.dev/api/expensify", "description": "Expensify is an expense management platform that simplifies receipt scanning, expense tracking, reimbursements, and corporate card management.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "expensify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Partner User Secret", "type": "string", "description": "Your Expensify Partner User Secret. This is shown only once during generation at https://www.expensify.com/tools/integrations/", "required": true, "default": null }, { "name": "generic_id", "displayName": "Partner User ID", "type": "string", "description": "Your Expensify Partner User ID. Generate credentials at https://www.expensify.com/tools/integrations/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "expofp", "name": "Expofp", "logo": "https://logos.composio.dev/api/expofp", "description": "ExpoFP provides free interactive floor plan software for expos and conferences.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EXPOFP_ADD_CATEGORY", "name": "Add Category", "description": "Tool to add a new category to an expo. Use when you have both the expo event ID and a valid API token. Example: \"Add category 'Keynotes' to event 2655.\"" }, { "slug": "EXPOFP_DELETE_EXHIBITOR", "name": "Delete Exhibitor", "description": "Tool to delete an exhibitor from an expo by their ID. Use when you have the exhibitor ID and a valid API token." }, { "slug": "EXPOFP_DELETE_SESSION_SPEAKERS", "name": "Delete Session Speakers", "description": "Tool to delete session speakers by their IDs. Use when you need to remove one or more session speakers from an expo." }, { "slug": "EXPOFP_DELETE_SESSION_TRACKS", "name": "Delete Session Tracks", "description": "Tool to delete session tracks by IDs from an expo. Use when you need to remove multiple session tracks. Provide the expo ID, API token, and list of session track IDs to delete." }, { "slug": "EXPOFP_GET_BULK_READ_EXHIBITORS_TEMPLATE", "name": "Get Bulk Read Exhibitors Template", "description": "Tool to get the template structure for bulk reading exhibitors from an expo. Use when you need to understand the required format for bulk importing exhibitor data." }, { "slug": "EXPOFP_GET_OFFLINE_ARCHIVE", "name": "Get Offline Archive", "description": "Lightweight retrieval of offline archive state that never starts a build. Returns the current known ExpoOfflineState for the specified version if available, or null if not. Use when you need to check the status of an existing archive without triggering a new build." }, { "slug": "EXPOFP_GET_OR_CREATE_OFFLINE_ARCHIVE", "name": "Get or Create Offline Archive", "description": "Retrieve the offline archive state for a specific expo version. If the archive does not exist and the requested version is 'latest', the server automatically starts the creation process and returns the build state. Use this action when you need to download an expo for offline use or check the status of an ongoing archive build. The optional waitseconds parameter enables server-side polling for synchronous workflows." }, { "slug": "EXPOFP_GET_SESSION_TRACKS", "name": "Get Session Tracks", "description": "Retrieve all session tracks for a specific expo event. Session tracks are categories or themes used to organize sessions within an expo, such as \"Technology\", \"Marketing\", \"Product\", etc. This action returns the complete list of tracks with their IDs, names, external IDs, and color codes. Use this action when you need to categorize or filter sessions by track. Example: \"Get all session tracks for expo 32971\"" }, { "slug": "EXPOFP_LIST_ALL_EXPO_EXTRAS", "name": "List All Expo Extras", "description": "Retrieves all extras (additional services/items) available for a specific expo event, including general extras and booth-specific extras with exhibitor details. Use this action to get a comprehensive list of purchasable extras for an event. Example: \"List all extras for event 2655.\"" }, { "slug": "EXPOFP_LIST_ALL_EXPOS", "name": "List All Expos", "description": "Retrieve all expos (events/exhibitions) accessible with the authenticated ExpoFP account. This action fetches a complete list of expos with their details including event IDs, names, descriptions, dates, time zones, locations, and status. The expo IDs returned can be used with other ExpofP actions that require an event ID parameter. No input parameters are required - the action uses the authentication token to determine which expos the user has access to. Example usage: - \"List all my expos\" - \"Show me all available events\" - \"Get all expo IDs\"" }, { "slug": "EXPOFP_LIST_CATEGORIES", "name": "List Categories", "description": "Retrieve all categories for a specific expo event. This action fetches a complete list of categories with their IDs and names for a given expo. The category IDs returned can be used with other ExpofP actions that require a category ID parameter (e.g., updating or removing categories). Use this action when you need to see all categories configured for an expo. Example: \"List all categories for event 32971\" or \"Show me categories for expo 2655\"." }, { "slug": "EXPOFP_LIST_EXHIBITORS", "name": "Bulk Read Exhibitors", "description": "Tool to bulk read exhibitors from an expo with customizable response template. This action retrieves all exhibitors from a specified expo. You can optionally provide a response template to control which fields are returned, or pass null/omit the template to receive all available exhibitor data. Use when you need to fetch exhibitor information from an expo event. The expo ID can be obtained from the List All Expos action." }, { "slug": "EXPOFP_REMOVE_CATEGORY", "name": "Remove Category", "description": "Tool to remove a category from an expo. Use when you have the category ID and a valid API token. Example: \"Remove category #123.\"" }, { "slug": "EXPOFP_SET_EXHIBITOR_LOGO", "name": "Set Exhibitor Logo", "description": "Tool to set or remove an exhibitor logo using multipart/form-data. Use when you need to upload a logo image file or provide an image URL for an exhibitor, or remove an existing logo by passing null for the image file." }, { "slug": "EXPOFP_UPDATE_CATEGORY", "name": "Update Category", "description": "Tool to update an existing category. Use when you have the category ID and a valid API token. Example: \"Update category #1 name to 'Category Blue'.\"" }, { "slug": "EXPOFP_UPDATE_EXHIBITOR", "name": "Update Exhibitor", "description": "Tool to update an existing exhibitor. Use when you have the exhibitor ID and want to modify exhibitor details. Only fields provided in the request are updated; undefined fields remain unchanged." }, { "slug": "EXPOFP_UPSERT_SESSIONS", "name": "Upsert Sessions", "description": "Tool to create or update sessions in bulk for an expo event. Sessions are upserted based on externalId if provided - existing sessions with matching externalId are updated, otherwise new sessions are created. Use this action when you need to add new sessions to an event or update existing sessions. Example: \"Add a keynote session to expo 32971\" or \"Update session details for external ID 'session-001'.\"" }, { "slug": "EXPOFP_UPSERT_SESSION_TRACKS", "name": "Upsert Session Tracks", "description": "Tool to create or update session tracks in bulk for an expo. Use when you need to add new tracks or modify existing ones. Provide an id in the track object to update; omit it to create new. Example: \"Create a new session track called 'Workshops' with color #FF5733.\"" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "expofp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Event Name", "type": "string", "description": "The subdomain or event name used in the ExpoFP URL.", "required": true, "default": null }, { "name": "suffix.one", "displayName": "Event ID", "type": "string", "description": "The unique identifier for the event in ExpoFP.", "required": true, "default": null }, { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "The API Token for authenticating requests to the ExpoFP API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "extracta_ai", "name": "Extracta.ai", "logo": "https://logos.composio.dev/api/extracta_ai", "description": "Extracta.ai is an AI-powered platform that automates data extraction from various document types, including PDFs, images, and text files, without requiring prior training.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "EXTRACTA_AI_CREATE_CLASSIFICATION", "name": "Create Classification", "description": "Creates a new document classification configuration. Define a list of possible document types with their characteristics (name, description, unique words). Returns a classification ID that can be used to upload documents for automatic type prediction. This is the first step before uploading documents for classification." }, { "slug": "EXTRACTA_AI_CREATE_EXTRACTION", "name": "Create Extraction", "description": "Creates a new extraction configuration for processing documents. Define what fields to extract (e.g., names, dates, amounts) and processing options. Returns an extraction ID that can be used to upload and process files. This is the first step before uploading documents for extraction." }, { "slug": "EXTRACTA_AI_DELETE_CLASSIFICATION", "name": "Delete Classification", "description": "Permanently deletes an entire document classification process including all associated batches, results, and uploaded files. Use this when you want to remove a classification that is no longer needed. WARNING: This action cannot be undone." }, { "slug": "EXTRACTA_AI_DELETE_EXTRACTION", "name": "Delete Extraction", "description": "Permanently deletes an extraction job and its configuration from the system. Use this when you want to remove an extraction job that is no longer needed. This action is idempotent - calling it multiple times with the same ID will not cause errors. Requires the extraction ID obtained from creating or viewing an extraction." }, { "slug": "EXTRACTA_AI_GET_BATCH_RESULTS", "name": "Get Batch Results", "description": "Retrieves extraction results for a specific batch of documents. Returns the extracted data for each file in the batch, along with processing status and file information. If the batch is still processing, results may be empty or incomplete. Maintain 2-second intervals between consecutive requests to avoid rate-limiting." }, { "slug": "EXTRACTA_AI_GET_CREDITS", "name": "Get Credits", "description": "Retrieves the current credit balance available on the account. The system operates on a per-page consumption model where 1 credit = 1 page of document processing. Use this action to check remaining credits before processing documents." }, { "slug": "EXTRACTA_AI_UPDATE_CLASSIFICATION", "name": "Update Classification", "description": "Updates an existing document classification by modifying its parameters. Use this to change the classification name, description, or document types (including their keywords and linked extractions). Requires the classification ID from a previously created classification." }, { "slug": "EXTRACTA_AI_UPDATE_EXTRACTION", "name": "Update Extraction", "description": "Updates an existing document extraction process by modifying specified parameters. Only fields provided in the request are modified; omitted fields remain unchanged. Use this to change the extraction's name, description, language, fields to extract, or processing options without recreating the entire extraction job." }, { "slug": "EXTRACTA_AI_VIEW_CLASSIFICATION", "name": "View Classification", "description": "Retrieves details of an existing classification configuration including name, description, document types, associated keywords, and linked extraction templates. Use this action to verify classification setup or retrieve configuration details for debugging and auditing purposes." }, { "slug": "EXTRACTA_AI_VIEW_EXTRACTION", "name": "View Extraction", "description": "Retrieves detailed configuration and status information for an existing extraction job. Returns the extraction's name, description, language, configured fields, processing options, and any associated batches. Use this action to: - Check the configuration of an extraction job - Verify the fields that will be extracted - View processing options (table extraction, handwriting recognition, etc.) - Monitor batch status if files have been uploaded for processing Requires: extraction_id from a previously created extraction (via Create Extraction action)" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "extracta_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Extracta.ai API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Extracta.ai API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "faceup", "name": "Faceup", "logo": "https://logos.composio.dev/api/faceup", "description": "FaceUp is an anonymous reporting tool designed for companies and schools, enabling employees and students to safely report issues and misconduct.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FACEUP_GRAPHQL_STATISTICS_QUERY", "name": "FaceUp GraphQL Statistics Query", "description": "Execute GraphQL queries against the FaceUp statistics endpoint. Retrieves whistleblowing statistics with filtering by report criteria. Requires filter (ReportFilterInput), isPartnerAdministration, onlyAccessibleReports, and motherIds parameters. Returns both data and errors from the GraphQL API for flexible error handling." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "faceup_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "The region where your data is stored, which can be found in the Settings -> Organization settings in the FaceUp administration panel.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key used to authenticate requests to the FaceUp API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "faire", "name": "Faire", "logo": "https://logos.composio.dev/api/faire", "description": "Wholesale marketplace platform connecting brands with independent retailers", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "faire_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "READ_PRODUCTS,WRITE_PRODUCTS,READ_ORDERS,WRITE_ORDERS,READ_BRAND,READ_RETAILER,READ_INVENTORIES,WRITE_INVENTORIES,READ_SHIPMENTS,READ_REVIEWS" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Application Secret", "type": "string", "description": "Your Faire OAuth2 application secret", "required": true, "default": null }, { "name": "generic_id", "displayName": "Application ID", "type": "string", "description": "Your Faire OAuth2 application ID", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "faire_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your Faire API access token. Generate this in Faire Brand Portal under Settings > Integrations", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fal_ai", "name": "Fal.ai", "logo": "https://logos.composio.dev/api/fal_ai", "description": "The generative media platform for developers with 600+ AI models for image, video, voice, and audio generation", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FAL_AI_CANCEL_QUEUE_REQUEST", "name": "Cancel Queue Request", "description": "Tool to cancel a queued or in-progress request in fal.ai's queue system. Use when you need to stop a request before it completes. Note that cancellation only succeeds if the request hasn't started processing; if already completed, returns an error status. Even with successful cancellation, the request may still execute if it was near the front of the queue." }, { "slug": "FAL_AI_ESTIMATE_PRICING", "name": "Estimate Pricing", "description": "Tool to estimate pricing for fal.ai model endpoints. Use when you need to calculate expected costs for API calls or unit-based usage across one or more endpoints." }, { "slug": "FAL_AI_GET_JWKS", "name": "Get JWKS for Webhook Verification", "description": "Tool to retrieve public keys for webhook signature verification. Returns a JSON Web Key Set containing ED25519 public keys. Use when you need to verify webhook signatures from fal.ai. The keys are cacheable but should be refreshed at least every 24 hours." }, { "slug": "FAL_AI_GET_MODELS", "name": "Get Models", "description": "Tool to discover and search fal.ai model endpoints. Use when you need to list all models, find specific models by ID, or search by category/query. Supports pagination and optional expansion of OpenAPI schemas." }, { "slug": "FAL_AI_GET_PRICING", "name": "Get Model Pricing", "description": "Tool to retrieve unit pricing for model endpoints. Returns pricing information including unit price, billing unit, and currency. Use when you need to check costs for specific fal.ai models." }, { "slug": "FAL_AI_GET_QUEUE_REQUEST_RESULT", "name": "Get Queue Request Result", "description": "Tool to retrieve the final result of a completed queue request. Use when you need to get the output of a model request that was submitted to the queue and has finished processing. Only works after request status transitions to COMPLETED." }, { "slug": "FAL_AI_QUEUE_GET_STATUS", "name": "Check Queue Request Status", "description": "Tool to check the status of a queued request in fal.ai. Use when you need to monitor the progress of an async request. Returns different information based on status: queue position when IN_QUEUE, logs when IN_PROGRESS or COMPLETED." }, { "slug": "FAL_AI_QUEUE_GET_STATUS_STREAM", "name": "Stream Request Status Updates", "description": "Tool to stream request status updates via SSE. Use when you need real-time updates on a queued request's processing state." }, { "slug": "FAL_AI_RUN_MODEL_SYNC", "name": "Run Model (Sync)", "description": "Tool to invoke a fal.ai model synchronously via fal.run, generating new content (images, audio, video, or other model outputs) hosted at fal.ai CDN URLs in the response. Each call executes paid inference on fal.ai — it consumes the connected account's credit balance and is billed per request, so it is NOT a read-only operation. Use when you need a single-shot result and the model is fast enough to return inline — the request blocks until the model finishes and returns the generated output directly. For long-running jobs, parallel invocations, or anything production-grade, prefer SUBMIT_ASYNC_JOB (queue.fal.run) which adds persistence, retries, and webhooks; both produce the same kind of newly-generated, persistently-hosted output and are billed identically." }, { "slug": "FAL_AI_SUBMIT_ASYNC_JOB", "name": "Submit Async Inference Job", "description": "Tool to submit an asynchronous inference job to fal.ai's queue (queue.fal.run). Use when you want to run a model without blocking — fal.ai persists the request, auto-scales runners, and you fetch the result later via the returned request_id (use QUEUE_GET_STATUS to poll, GET_QUEUE_REQUEST_RESULT to retrieve, CANCEL_QUEUE_REQUEST to abort, QUEUE_GET_STATUS_STREAM to receive SSE updates). Supports an optional webhook_url that fal.ai will POST results to on completion." }, { "slug": "FAL_AI_SUBSCRIBE_ASYNC_JOB", "name": "Subscribe to Async Inference Job", "description": "Tool to submit a fal.ai inference job to the async queue and block until it completes (or a deadline is reached), returning the model's final result. Mirrors fal-js's `subscribe()` ergonomics: SUBMIT_ASYNC_JOB + QUEUE_GET_STATUS polling + GET_QUEUE_REQUEST_RESULT in one call. Use when you want async-style reliability (queue persistence, retries) but a synchronous-style return value, and the model is fast enough to finish within max_wait_seconds. For very long jobs, prefer SUBMIT_ASYNC_JOB and check status/result manually or via webhook." }, { "slug": "FAL_AI_UPLOAD_FILE", "name": "Upload Input File", "description": "Tool to upload an input media file (image, audio, or video) to fal.ai's CDN and return a public access_url that can be passed as a model input. Many fal.ai models accept a URL for inputs like 'image_url', 'audio_url', or 'video_url' — use this action first to host the file, then pass the access_url to RUN_MODEL_SYNC or SUBMIT_ASYNC_JOB. Internally this performs fal.ai's two-step upload: (1) POST to rest.fal.ai/storage/upload/initiate to get a presigned upload URL, (2) PUT the bytes to that URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fal_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your fal.ai API key, used to authorize requests. Create one under fal.ai → Dashboard → Keys (the 'API' scope is enough) and copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "faraday", "name": "Faraday", "logo": "https://logos.composio.dev/api/faraday", "description": "Faraday lets you embed AI in workflows throughout your stack-to make your favorite tools perform even better", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 117, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FARADAY_ARCHIVE_COHORT", "name": "Archive Cohort", "description": "Tool to archive a cohort in Faraday. Use when you need to stop updates to a cohort while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_CONNECTION", "name": "Archive Connection", "description": "Tool to archive a connection in Faraday. Use when you need to stop updates to a connection while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_DATASET", "name": "Archive Dataset", "description": "Tool to archive a dataset in Faraday. Use when you need to archive a dataset and optionally its downstream resources. Archiving stops updates to the resource but keeps it visible." }, { "slug": "FARADAY_ARCHIVE_OUTCOME", "name": "Archive Outcome", "description": "Tool to archive an outcome in Faraday. Use when you need to stop updates to an outcome while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_PERSONA_SET", "name": "Archive Persona Set", "description": "Tool to archive a persona set in Faraday. Use when you need to stop updates to a persona set while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_PLACE", "name": "Archive Place", "description": "Tool to archive a place in Faraday. Use when you need to stop updates to a geospatial area or address set while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_SCOPE", "name": "Archive Scope", "description": "Tool to archive a scope in Faraday. Use when you need to stop updates to a scope while keeping it visible." }, { "slug": "FARADAY_ARCHIVE_STREAM", "name": "Archive Stream", "description": "Tool to archive a stream in Faraday. Use when you need to archive a stream and optionally its downstream resources. Archiving stops updates to the resource but keeps it visible." }, { "slug": "FARADAY_ARCHIVE_TARGET", "name": "Archive Target", "description": "Tool to archive a target in Faraday. Use when you need to archive a target and optionally its downstream resources. Archiving stops updates to the resource but keeps it visible." }, { "slug": "FARADAY_ARCHIVE_TRAIT", "name": "Archive Trait", "description": "Tool to archive a trait in Faraday. Use when you need to stop updates to a trait while keeping it visible." }, { "slug": "FARADAY_CREATE_ACCOUNTS", "name": "Create Account", "description": "Tool to create a new Faraday account with specified name and branding. Use when you need to provision a new account in Faraday." }, { "slug": "FARADAY_CREATE_COHORTS", "name": "Create Cohorts", "description": "Tool to create a new cohort in Faraday. Cohorts are groups of people that share certain traits or behaviors. Use when you need to define a new cohort from your datasets or from Faraday's US Consumer Graph. At least one of stream_name, traits, or place_conditions must be provided." }, { "slug": "FARADAY_CREATE_DATASET", "name": "Create Dataset", "description": "Tool to create a new dataset in Faraday. Use when you need to define a new data source for analysis and predictions." }, { "slug": "FARADAY_CREATE_OUTCOME", "name": "Create Outcome", "description": "Tool to create a new outcome. Outcomes are predictions about customer behavior such as likelihood to convert, churn, or purchase specific products. Use when you need to create a new predictive model." }, { "slug": "FARADAY_CREATE_PERSONA_SET", "name": "Create Persona Set", "description": "Tool to create a new persona set. Persona sets segment cohorts into distinct customer personas based on shared characteristics and behaviors. Use when you need to generate customer personas for a cohort." }, { "slug": "FARADAY_CREATE_PLACE", "name": "Create Place", "description": "Tool to create a new place in Faraday. Places are geospatial areas or sets of addresses that can be used as spatial filters when defining other resources. Use when you need to define a new geographic area for analysis or targeting." }, { "slug": "FARADAY_CREATE_SCOPES", "name": "Create Scope", "description": "Tool to create a new scope in Faraday. Scopes define the population and payload for predictions, specifying which cohorts to target and what outcomes to include. Use when you need to define output data instructions for a new scope." }, { "slug": "FARADAY_CREATE_STREAMS", "name": "Create Stream", "description": "Tool to create a new stream or find an existing stream by name. Use when you need to initialize a stream for event data collection." }, { "slug": "FARADAY_CREATE_TARGET_PREVIEW", "name": "Create Target Preview", "description": "Tool to start a preview delivery for a target. Use when you need to initiate a preview of target data before full deployment." }, { "slug": "FARADAY_CREATE_TARGETS", "name": "Create Target", "description": "Tool to create a target in Faraday. Use when you need to set up a deployment that exports predictions and cohort data to external destinations like CRMs, ad platforms, or data warehouses." }, { "slug": "FARADAY_CREATE_TRAIT", "name": "Create Trait", "description": "Tool to create a new trait in Faraday. Use when you need to define a new fact about a person or geographic entity that can be used in modeling, analysis, and reporting." }, { "slug": "FARADAY_CREATE_WEBHOOK_ENDPOINTS", "name": "Create Webhook Endpoint", "description": "Tool to create a new webhook endpoint. Use when you need to register a webhook URL to receive notifications when resources are ready or encounter errors." }, { "slug": "FARADAY_DELETE_ACCOUNT", "name": "Delete Account", "description": "Tool to delete an account by its UUID. Use when you need to permanently remove an account from Faraday. The deletion is scheduled asynchronously and returns a 202 status on success." }, { "slug": "FARADAY_DELETE_ALL_ORPHANED_TRAITS", "name": "Delete All Orphaned Traits", "description": "Tool to delete all orphaned traits from Faraday. Use when you need to clean up traits that are not associated with any source dataset." }, { "slug": "FARADAY_DELETE_COHORT", "name": "Delete Cohort", "description": "Tool to permanently delete a cohort from Faraday. Use when you need to remove a cohort that is no longer needed." }, { "slug": "FARADAY_DELETE_CONNECTION", "name": "Delete Connection", "description": "Tool to delete a Faraday connection by its UUID. Use when you need to permanently remove a connection." }, { "slug": "FARADAY_DELETE_DATASET", "name": "Delete Dataset", "description": "Tool to delete a dataset from Faraday. Use when you need to remove a dataset permanently. The operation returns success when the dataset is successfully deleted." }, { "slug": "FARADAY_DELETE_OUTCOME", "name": "Delete Outcome", "description": "Tool to delete an outcome by its UUID. Use when you need to remove an outcome from Faraday." }, { "slug": "FARADAY_DELETE_PERSONA_SET", "name": "Delete Persona Set", "description": "Tool to delete a persona set. Use when you need to permanently remove a persona set from Faraday. Returns success status and HTTP code 204 on successful deletion." }, { "slug": "FARADAY_DELETE_PLACE", "name": "Delete Place", "description": "Tool to delete a place by its UUID. Use when you need to remove a place from the system." }, { "slug": "FARADAY_DELETE_SCOPE", "name": "Delete Scope", "description": "Tool to delete a scope by its UUID. Use when you need to permanently remove a scope from the system. Returns 204 status code on successful deletion." }, { "slug": "FARADAY_DELETE_STREAM", "name": "Delete Stream", "description": "Tool to delete a stream by its UUID or name. Use when you need to remove a stream that is no longer needed." }, { "slug": "FARADAY_DELETE_TARGET", "name": "Delete Target", "description": "Tool to delete a target by its UUID. Use when you need to remove a target from Faraday." }, { "slug": "FARADAY_DELETE_UPLOAD", "name": "Delete Upload", "description": "Permanently deletes a file from a Faraday dataset directory. Use this when you need to remove an uploaded file from a specific directory. This is a destructive operation that cannot be undone - the file will be permanently removed from the specified directory." }, { "slug": "FARADAY_DELETE_WEBHOOK_ENDPOINT", "name": "Delete Webhook Endpoint", "description": "Tool to delete a webhook endpoint by its UUID. Use when you need to remove a webhook endpoint from Faraday. The operation returns 204 No Content on success." }, { "slug": "FARADAY_FORCE_UPDATE_COHORT", "name": "Force Update Cohort", "description": "Tool to trigger a rerun for a cohort. Use when you need to force rebuild a cohort's data." }, { "slug": "FARADAY_FORCE_UPDATE_CONNECTION", "name": "Force Update Connection", "description": "Tool to trigger a rerun for a Faraday connection. Use when you need to force refresh connection data." }, { "slug": "FARADAY_FORCE_UPDATE_DATASET", "name": "Force Update Dataset", "description": "Tool to trigger a rerun for a dataset. Use when you need to force a dataset to update immediately rather than waiting for its normal schedule." }, { "slug": "FARADAY_FORCE_UPDATE_OUTCOME", "name": "Force Update Outcome", "description": "Tool to trigger a rerun for an outcome resource. Use when you need to force rebuild an outcome, causing it to reprocess and update its predictions." }, { "slug": "FARADAY_FORCE_UPDATE_PERSONA_SET", "name": "Force Update Persona Set", "description": "Tool to trigger a rerun for a persona set resource. Use when you need to force rebuild a persona set, causing it to reprocess and update its personas." }, { "slug": "FARADAY_FORCE_UPDATE_PLACE", "name": "Force Update Place", "description": "Tool to trigger a rerun for a place. Use when you need to force rebuild a place's data." }, { "slug": "FARADAY_FORCE_UPDATE_SCOPE", "name": "Force Update Scope", "description": "Tool to trigger a rerun for a scope resource. Use when you need to force rebuild a scope, causing it to reprocess and update its data." }, { "slug": "FARADAY_FORCE_UPDATE_STREAM", "name": "Force Update Stream", "description": "Tool to trigger a rerun for a stream. Use when you need to force rebuild a stream's data." }, { "slug": "FARADAY_FORCE_UPDATE_TARGET", "name": "Force Update Target", "description": "Tool to trigger a rerun for a target. Use when you need to force rebuild a target's data." }, { "slug": "FARADAY_FORCE_UPDATE_TRAIT", "name": "Force Update Trait", "description": "Tool to trigger a rerun for a trait. Use when you need to force rebuild a trait's data." }, { "slug": "FARADAY_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve detailed information about a Faraday account by its UUID. Use when you need to fetch account details, status, branding, or billing information." }, { "slug": "FARADAY_GET_ACCOUNTS", "name": "List Accounts", "description": "Tool to list all Faraday accounts accessible by the current user. Use when you need to retrieve account information, check account status, or get account IDs for other operations." }, { "slug": "FARADAY_GET_ACCOUNTS_BILLING", "name": "Get Accounts Billing", "description": "Tool to get billing information about your account. Use when you need to retrieve invoices, payments, or usage information for a specific account." }, { "slug": "FARADAY_GET_COHORT", "name": "Get Cohort", "description": "Tool to retrieve a specific cohort by ID. Use when you need to fetch details about a specific cohort." }, { "slug": "FARADAY_GET_COHORT_ANALYSIS_MEMBERSHIP", "name": "Get Cohort Membership Analysis", "description": "Tool to get cohort membership counts over time for a specific cohort. Use when you need to analyze how cohort membership has changed over days, weeks, and months." }, { "slug": "FARADAY_GET_COHORTS", "name": "List Cohorts", "description": "Tool to list all cohorts in your Faraday account. Use when you need to retrieve the list of customer groups or segments." }, { "slug": "FARADAY_GET_CONNECTION_DATASETS", "name": "Get Connection Datasets", "description": "Tool to retrieve all datasets that use a specific connection. Use when you need to list datasets associated with a connection ID." }, { "slug": "FARADAY_GET_CONNECTIONS_TARGETS", "name": "Get Connection Targets", "description": "Tool to retrieve all targets that use a specific connection. Use when you need to get a list of all targets associated with a connection ID." }, { "slug": "FARADAY_GET_CURRENT_ACCOUNT", "name": "Get Current Account", "description": "Tool to retrieve the current account information. Use when you need to get details about the authenticated account, including account ID, name, status, and billing information." }, { "slug": "FARADAY_GET_CURRENT_ACCOUNT_BILLING", "name": "Get Current Account Billing", "description": "Tool to retrieve billing information about the current account. Use when you need to check invoices, payments, or usage limits for the authenticated Faraday account." }, { "slug": "FARADAY_GET_DATASET", "name": "Get Dataset", "description": "Tool to retrieve a dataset by its UUID. Use when you need to get details about a specific dataset including its configuration, columns, status, and metadata." }, { "slug": "FARADAY_GET_DATASETS_LOGS_INGRESS", "name": "Get Dataset Ingress Logs", "description": "Tool to retrieve dataset ingress metrics over time. Use when you need to monitor or analyze data ingestion history, track row counts, or review ingress operation status for a specific dataset." }, { "slug": "FARADAY_GET_FEATURE_STORES", "name": "List Feature Stores", "description": "Tool to list all feature stores. Use when you need to retrieve feature stores from your Faraday account." }, { "slug": "FARADAY_GET_GRAPH", "name": "Get Dependency Graph", "description": "Tool to retrieve the complete dependency graph for all resources on an account. Shows relationships between datasets, cohorts, outcomes, targets, connections, and other resources." }, { "slug": "FARADAY_GET_MARKET_OPPORTUNITY_ANALYSES", "name": "Get Market Opportunity Analyses", "description": "Tool to retrieve all market opportunity analyses from Faraday. Use when you need to view penetration and opportunity metrics in your market." }, { "slug": "FARADAY_GET_OUTCOME", "name": "Get Outcome", "description": "Tool to retrieve an outcome by its ID. Use when you need to get details about a specific outcome including its configuration, cohorts, status, and performance metrics." }, { "slug": "FARADAY_GET_OUTCOMES", "name": "List Outcomes", "description": "Tool to list all outcomes for the account. Use when you need to retrieve configured business objectives and their modeling status. Returns complete list without pagination." }, { "slug": "FARADAY_GET_PERSONA_SET", "name": "Get Persona Set", "description": "Tool to retrieve a persona set by its UUID. Use when you need to access details about a specific customer persona set including its status, configuration, and constituent personas." }, { "slug": "FARADAY_GET_PERSONA_SET_ANALYSIS_FLOW", "name": "Get Persona Set Analysis Flow", "description": "Tool to retrieve the flow of persona sets over time, showing how individuals move between different personas. Use when you need to analyze trends in persona membership or understand how your audience segments are evolving over time." }, { "slug": "FARADAY_GET_PERSONA_SETS", "name": "List Persona Sets", "description": "Tool to list all persona sets. Use when you need to retrieve customer persona sets for analysis or selection." }, { "slug": "FARADAY_GET_PERSONA_SETS_ANALYSIS_DIMENSIONS", "name": "Get Persona Set Analysis Dimensions", "description": "Tool to get various trait breakdown information about a persona set. Use when you need to analyze the characteristics and distributions of personas within a set." }, { "slug": "FARADAY_GET_PLACE", "name": "Get Place", "description": "Tool to retrieve a specific place by its UUID. Use when you need to get details about a geospatial area or address set that can be used as a spatial filter." }, { "slug": "FARADAY_GET_PLACES", "name": "List Places", "description": "Tool to list all places in Faraday. Use when you need to retrieve geospatial areas or address sets that can be used as spatial filters. Returns all place resources with their status and configuration." }, { "slug": "FARADAY_GET_RECOMMENDERS", "name": "List Recommenders", "description": "Tool to list all recommenders. Use when you need to retrieve recommender resources that predict future associations based on event streams." }, { "slug": "FARADAY_GET_SCOPE", "name": "Get Scope", "description": "Tool to retrieve detailed information about a Faraday scope by its UUID. Use when you need to fetch scope configuration, population settings, payload details, or status information." }, { "slug": "FARADAY_GET_SCOPE_ANALYSIS", "name": "Get Scope Analysis", "description": "Tool to get analysis for a scope including outcomes and recommenders with probability distributions. Use when you need to analyze scope performance and understand prediction distributions." }, { "slug": "FARADAY_GET_SCOPE_DATASETS", "name": "Get Scope Datasets", "description": "Tool to retrieve all datasets associated with a Faraday scope. Use when you need to list or view all datasets that are connected to a specific scope." }, { "slug": "FARADAY_GET_SCOPE_EFFICACY", "name": "Get Scope Efficacy", "description": "Tool to retrieve efficacy metrics for a scope. Returns model performance metrics and accuracy measurements showing how well predictions performed over time." }, { "slug": "FARADAY_GET_SCOPE_PAYLOAD_COHORTS", "name": "Get Scope Payload Cohorts", "description": "Tool to get payload cohorts for a specific scope. Use when you need to retrieve the list of cohorts included in a scope's payload configuration." }, { "slug": "FARADAY_GET_SCOPE_PAYLOAD_OUTCOMES", "name": "Get Scope Payload Outcomes", "description": "Tool to retrieve payload outcomes for a specific scope. Use when you need to fetch the outcome predictions included in a scope's data payload." }, { "slug": "FARADAY_GET_SCOPE_PAYLOAD_PERSONA_SETS", "name": "Get Scope Payload Persona Sets", "description": "Tool to get payload persona sets for a specific scope. Use when you need to retrieve the list of persona sets included in a scope's payload configuration." }, { "slug": "FARADAY_GET_SCOPE_PAYLOAD_RECOMMENDERS", "name": "Get Scope Payload Recommenders", "description": "Tool to retrieve payload recommenders for a specific scope. Use when you need to fetch recommender resources associated with a scope's payload configuration." }, { "slug": "FARADAY_GET_SCOPE_POPULATION_EXCLUSION_COHORTS", "name": "Get Scope Population Exclusion Cohorts", "description": "Tool to get population exclusion cohorts for a scope. Use when you need to retrieve the cohorts that are excluded from a specific scope's population." }, { "slug": "FARADAY_GET_SCOPES_POPULATION_COHORTS", "name": "Get Scope Population Cohorts", "description": "Tool to get population cohorts for a specific scope. Use when you need to retrieve the list of cohorts associated with a scope's population." }, { "slug": "FARADAY_GET_SCOPE_TARGETS", "name": "Get Scope Targets", "description": "Tool to get all targets for a specific scope. Use when you need to retrieve export configurations and target details for a scope." }, { "slug": "FARADAY_GET_STREAM", "name": "Get Stream", "description": "Tool to retrieve a stream by its UUID or name. Use when you need to fetch stream details including properties, event counts, and metadata." }, { "slug": "FARADAY_GET_STREAMS", "name": "List Streams", "description": "Tool to list all streams in your Faraday account. Use when you need to retrieve event streams associated with the account." }, { "slug": "FARADAY_GET_STREAMS_ANALYSIS", "name": "Get Streams Analysis", "description": "Tool to get the count of stream events emitted over a time period. Use when you need to analyze stream activity patterns and event volume trends." }, { "slug": "FARADAY_GET_TARGET", "name": "Get Target", "description": "Tool to retrieve a specific target by its UUID from Faraday. Use when you need to fetch details about a target including its configuration, status, and export settings." }, { "slug": "FARADAY_GET_TARGETS_ANALYSIS", "name": "Get Target Analysis", "description": "Tool to retrieve a target's analysis including geographic distributions and trait breakdowns. Use when you need to understand the composition and characteristics of individuals within a specific target." }, { "slug": "FARADAY_GET_TRAIT", "name": "Get Trait", "description": "Tool to retrieve a specific trait by ID. Use when you need to get detailed information about a trait including its type, category, statistical properties, and configuration." }, { "slug": "FARADAY_GET_TRAITS_ANALYSIS_DIMENSIONS", "name": "Get Trait Analysis Dimensions", "description": "Tool to retrieve the percentage of the US population that falls into each category of a trait. Use when you need to analyze the distribution of a specific trait across the population." }, { "slug": "FARADAY_GET_TRAITS_CSV", "name": "Get Traits CSV", "description": "Tool to retrieve all user-defined and Faraday-provided traits in CSV format. Use when you need to export or analyze trait data in a spreadsheet-compatible format." }, { "slug": "FARADAY_GET_UPLOAD", "name": "Get Upload", "description": "Tool to download a previously uploaded file from a Faraday dataset directory. Use when you need to retrieve the contents of a specific file." }, { "slug": "FARADAY_GET_UPLOADS", "name": "List Uploaded Files", "description": "Tool to retrieve the list of previously uploaded files in Faraday. Use when you need to see uploaded datasets or verify file uploads." }, { "slug": "FARADAY_GET_USAGES", "name": "Get Usages", "description": "Tool to retrieve usage statistics for your Faraday account. Use when you need to check current usage and limits for various account features." }, { "slug": "FARADAY_GET_WEBHOOK_ENDPOINT", "name": "Get Webhook Endpoint", "description": "Tool to retrieve a webhook endpoint by its UUID. Use when you need to access details about a specific webhook endpoint including its URL, status, enabled events, and signing secret." }, { "slug": "FARADAY_GET_WEBHOOK_ENDPOINTS", "name": "List Webhook Endpoints", "description": "Tool to list all webhook endpoints configured for the account. Use when you need to retrieve webhook endpoint information including URLs, status, and enabled events." }, { "slug": "FARADAY_LIST_ATTRIBUTES", "name": "List Attributes", "description": "Tool to list all attributes in the feature store. Use when you need to retrieve the catalog of available attributes for data analysis or feature engineering." }, { "slug": "FARADAY_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to list all connections configured in Faraday. Use when you need to view available data connections between Faraday and external locations." }, { "slug": "FARADAY_LIST_SCOPES", "name": "List Scopes", "description": "Tool to list all scopes. Use when you need to retrieve scope configurations for viewing output data instructions." }, { "slug": "FARADAY_LIST_TARGETS", "name": "List Targets", "description": "Tool to list all targets in your Faraday account. Use when you need to view export configurations for predictions." }, { "slug": "FARADAY_UNARCHIVE_COHORT", "name": "Unarchive Cohort", "description": "Tool to unarchive a previously archived cohort. Use when you need to restore an archived cohort and optionally its upstream resources." }, { "slug": "FARADAY_UNARCHIVE_DATASETS", "name": "Unarchive Dataset", "description": "Tool to unarchive a dataset in Faraday. Use when you need to restore an archived dataset for active use. Optionally cascades to upstream resources." }, { "slug": "FARADAY_UNARCHIVE_OUTCOME", "name": "Unarchive Outcome", "description": "Tool to unarchive an outcome in Faraday. Use when you need to restore updates to a previously archived outcome." }, { "slug": "FARADAY_UNARCHIVE_PERSONA_SETS", "name": "Unarchive Persona Set", "description": "Tool to unarchive a previously archived persona set. Use when you need to restore an archived persona set and optionally its upstream resources." }, { "slug": "FARADAY_UNARCHIVE_PLACES", "name": "Unarchive Place", "description": "Tool to unarchive a previously archived place. Use when you need to restore an archived place and optionally its upstream resources." }, { "slug": "FARADAY_UNARCHIVE_SCOPE", "name": "Unarchive Scope", "description": "Tool to unarchive a previously archived scope. Use when you need to restore an archived scope and optionally its upstream resources." }, { "slug": "FARADAY_UNARCHIVE_STREAM", "name": "Unarchive Stream", "description": "Tool to unarchive a stream in Faraday. Use when you need to restore an archived stream for active use. Optionally cascades to upstream resources." }, { "slug": "FARADAY_UNARCHIVE_TRAIT", "name": "Unarchive Trait", "description": "Tool to unarchive a trait. Use when you need to restore an archived trait and optionally its upstream resources." }, { "slug": "FARADAY_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update an account's name or branding settings. Use when you need to modify account properties using JSON Merge Patch semantics." }, { "slug": "FARADAY_UPDATE_COHORT", "name": "Update Cohort", "description": "Tool to update a cohort's configuration using JSON Merge Patch semantics. Use when you need to modify cohort properties like name, filters, or conditions." }, { "slug": "FARADAY_UPDATE_CONNECTION", "name": "Update Connection", "description": "Tool to update a Faraday connection's name or options. Use when you need to modify connection properties using JSON Merge Patch semantics." }, { "slug": "FARADAY_UPDATE_DATASET", "name": "Update Dataset", "description": "Tool to update a dataset configuration using JSON Merge Patch semantics. Use when you need to modify dataset properties like name, identity sets, output configurations, or privacy settings." }, { "slug": "FARADAY_UPDATE_OUTCOME", "name": "Update Outcome", "description": "Tool to update an outcome's configuration using JSON Merge Patch semantics. Use when you need to modify outcome properties such as name, cohorts, bias mitigation, feature blocklist, prediction mode, predictors, or preview status." }, { "slug": "FARADAY_UPDATE_PERSONA_SET", "name": "Update Persona Set", "description": "Tool to edit a persona set's configuration using JSON Merge Patch. Use when you need to update persona set properties like name, explore visibility, number of clusters, or preview mode." }, { "slug": "FARADAY_UPDATE_PLACE", "name": "Update Place", "description": "Tool to update a place's name, addresses, or geojson geometry. Use when you need to modify place properties using JSON Merge Patch semantics." }, { "slug": "FARADAY_UPDATE_SCOPE", "name": "Update Scope", "description": "Tool to update a Faraday scope's configuration using JSON Merge Patch semantics. Use when you need to modify scope properties such as name, payload settings, population cohorts, or preview status." }, { "slug": "FARADAY_UPDATE_STREAM", "name": "Update Stream", "description": "Tool to update a stream's properties using JSON Merge Patch semantics. Use when you need to modify stream metadata like description, category, or deprecation status." }, { "slug": "FARADAY_UPDATE_TARGET", "name": "Update Target", "description": "Tool to update a target's configuration in Faraday. Use when you need to modify target properties using JSON Merge Patch semantics." }, { "slug": "FARADAY_UPDATE_TRAIT", "name": "Update Trait", "description": "Tool to update a trait's properties using JSON Merge Patch semantics. Use when you need to modify trait metadata like description, literate name, lookup table, statistical type, or unit." }, { "slug": "FARADAY_UPDATE_WEBHOOK_ENDPOINTS", "name": "Update Webhook Endpoint", "description": "Tool to update a webhook endpoint's configuration. Use when you need to modify the status, URL, or enabled events for an existing webhook endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "faraday_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from \"Settings\" > \"Account\" at https://app.faraday.ai/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fathom", "name": "Fathom", "logo": "https://logos.composio.dev/api/fathom", "description": "AI meeting assistant that records, transcribes, and summarizes meetings", "category": "ai meeting assistants", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FATHOM_CREATE_WEBHOOK", "name": "Create webhook for meeting content", "description": "Tool to create a webhook to receive new meeting content from Fathom. Use when you need to set up notifications for meeting recordings. At least one of transcript, CRM matches, summary, or action items must be included in the webhook payload." }, { "slug": "FATHOM_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook by its ID. Use when you need to remove a webhook that is no longer needed." }, { "slug": "FATHOM_GET_RECORDING_SUMMARY", "name": "Get Recording Summary", "description": "Tool to retrieve the AI-generated summary for a specific recording. Use when you need to access the summary of a meeting recording. Supports both synchronous mode (returns summary directly) and asynchronous mode (delivers summary to webhook URL specified in destination_url parameter)." }, { "slug": "FATHOM_GET_RECORDING_TRANSCRIPT", "name": "Get Recording Transcript", "description": "Tool to retrieve the full transcript for a specific recording. Use when you need to access the complete meeting transcript with speaker information and timestamps. Can operate synchronously (returns transcript directly) or asynchronously (posts transcript to a destination URL). In the response, speaker is an object — access speaker.display_name rather than treating speaker as a string. Prefer this tool over fetching transcripts via list-meetings calls with include_transcript=true, which produces extremely large responses when many meetings are returned." }, { "slug": "FATHOM_LIST_MEETINGS", "name": "List Meetings", "description": "Tool to retrieve a paginated list of meeting recordings for the authenticated user or organization. Use when you need to fetch meetings with optional filtering by dates, domains, meeting type, or recorder. Supports data enrichment via include_* parameters." }, { "slug": "FATHOM_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "Tool to retrieve a paginated list of all team members in the organization. Use when you need to view team members, optionally filtered by team name or paginated using a cursor." }, { "slug": "FATHOM_LIST_TEAMS", "name": "List Teams", "description": "Tool to retrieve a paginated list of all teams in the organization. Use when you need to get information about teams accessible through the API." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "fathom_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "public_api" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "fathom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Secret token that lets Composio read your Fathom meetings and transcripts. Create one in Fathom under Settings → API Access (fathom.video/customize).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "feathery", "name": "Feathery", "logo": "https://logos.composio.dev/api/feathery", "description": "Feathery is an AI-powered data intake workflow platform that enables users to build customizable forms with advanced logic and integrations.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FEATHERY_ACCOUNT_EDIT", "name": "Edit Feathery Account", "description": "Tool to edit an existing account’s role and permissions. Use when modifying account settings after confirming identity." }, { "slug": "FEATHERY_ACCOUNT_GET_INFO", "name": "Get Account Info", "description": "Tool to get your Feathery team name and list of accounts. Use when you need to fetch your team's account info." }, { "slug": "FEATHERY_DOCUMENT_FILL_TEMPLATE", "name": "Fill or sign document template", "description": "Tool to fill or sign a Feathery document template. Use when you need to generate a completed or signed document file after mapping template fields." }, { "slug": "FEATHERY_DOCUMENT_LIST_ENVELOPES", "name": "List Document Envelopes", "description": "Tool to list generated document envelopes by document or user ID. Use when you need to retrieve envelope records for auditing or tracking." }, { "slug": "FEATHERY_FORM_CREATE_HIDDEN_FIELD", "name": "Create hidden field", "description": "Creates a new hidden field in the Feathery account. Hidden fields store non-visible data that can be populated via integrations, the API, embed SDK, or URL parameters. Use this to track metadata like UTM parameters, user IDs, or integration data. The field_id must be unique - use FEATHERY_FORM_LIST_HIDDEN_FIELDS first to check existing fields if unsure." }, { "slug": "FEATHERY_FORM_DELETE", "name": "Delete Form", "description": "Permanently delete a form from your Feathery account. This action is irreversible. Use the 'List Forms' action first to get valid form IDs. The form_id corresponds to the 'id' field in the form list response." }, { "slug": "FEATHERY_FORM_GET_SCHEMA", "name": "Get form schema", "description": "Retrieve the complete schema of a Feathery form including all steps, fields, rules, and translations. Use the List Forms action first to find the form_id. Returns detailed structure for understanding or manipulating form content." }, { "slug": "FEATHERY_FORM_LIST", "name": "List Forms", "description": "Tool to list all forms in your Feathery account. Use when you need to view or filter available forms." }, { "slug": "FEATHERY_FORM_LIST_HIDDEN_FIELDS", "name": "List Hidden Fields", "description": "Tool to list all hidden form fields in the account. Use when you need to retrieve hidden field configuration before processing form submissions." }, { "slug": "FEATHERY_LOG_LIST_API_CONNECTOR_ERRORS", "name": "List API Connector Errors", "description": "Tool to list recent API connector error logs for a form. Use after confirming the form ID to troubleshoot integration issues." }, { "slug": "FEATHERY_LOG_LIST_EMAIL_ISSUES", "name": "List Email Issues", "description": "Tool to list email bounce and complaint events. Use when you need to diagnose delivery issues for sent emails." }, { "slug": "FEATHERY_LOG_LIST_EMAILS", "name": "List Email Logs", "description": "Tool to list recently sent emails for a form. Use when you need to review email logs after sending form-based emails." }, { "slug": "FEATHERY_LOG_LIST_QUICK_REQUESTS", "name": "List Quik Request Logs", "description": "Tool to list recent Quik integration request logs for a form. Use when you need to review API requests sent to Quik for a specific form." }, { "slug": "FEATHERY_USER_CREATE_OR_FETCH", "name": "Create or Fetch User", "description": "Tool to create a new user or fetch an existing one. Use when you need to ensure a user exists and get their SDK key." }, { "slug": "FEATHERY_USER_DELETE", "name": "Delete User", "description": "Tool to delete a specific user by ID. Use when you need to remove a user after confirming the user exists." }, { "slug": "FEATHERY_USER_GET_ALL_DATA", "name": "Get All User Data", "description": "Retrieve all stored data fields for a user or all field definitions in your Feathery account. Use this to fetch form field values submitted by users, or to list all available field definitions. Returns field metadata including type, value, timestamps, and whether it's a hidden field." }, { "slug": "FEATHERY_USER_GET_SESSION", "name": "Get User Session", "description": "Tool to get a user's form session and progress. Use after authenticating and when you need to retrieve session data." }, { "slug": "FEATHERY_USER_LIST", "name": "List Users", "description": "Tool to list all users in your Feathery account. Use when you need to retrieve users with optional creation time or field-based filters." }, { "slug": "FEATHERY_WORKSPACE_GENERATE_LOGIN_TOKEN", "name": "Generate Workspace Login Token", "description": "Generate a login JWT for a Feathery workspace. This is used for white-label integrations where users authenticate through your system and are automatically logged into Feathery. Prerequisites: - Obtain workspace_id from the list workspaces API or workspace creation - Obtain account_id from the 'Get Account Info' action The token is valid for 24 hours and can be refreshed by calling this endpoint again. Note: Returns empty token if workspaces feature is not enabled for the account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "feathery_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Feathery Admin API Key", "type": "string", "description": "Your Feathery admin API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "feedbin", "name": "Feedbin", "logo": "https://logos.composio.dev/api/feedbin", "description": "Modern RSS feed reader for managing and reading your favorite feeds", "category": "news & lifestyle", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "feedbin_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email", "type": "string", "description": "Your Feedbin account email address", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Feedbin account password", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "felt", "name": "Felt", "logo": "https://logos.composio.dev/api/felt", "description": "Felt is a modern GIS platform that allows users to create, modify, and share interactive maps, integrating powerful mapping capabilities into various workflows and applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FELT_CREATE_OR_UPDATE_ELEMENTS", "name": "Create or Update Elements", "description": "Create or update map elements using GeoJSON FeatureCollection format. Creates new elements by default; to update existing elements, include 'felt:id' in the feature's properties. Supports Point, LineString, Polygon, and Multi-type geometries. Returns the created/updated elements with assigned IDs and Felt-specific properties." }, { "slug": "FELT_CREATE_PROJECT", "name": "Create Project", "description": "Create a new Felt project with the specified name and visibility settings. Projects are organizational containers for grouping related maps within a workspace." }, { "slug": "FELT_DELETE_ELEMENT", "name": "Delete Element", "description": "Tool to delete a specific element from a map. Use when you have both map and element IDs and need to remove the element permanently." }, { "slug": "FELT_DELETE_LAYER", "name": "Delete Layer", "description": "Tool to delete a specific layer from a map. Use when you have the map's and layer's IDs and need to remove it permanently." }, { "slug": "FELT_DELETE_MAP", "name": "Delete Map", "description": "Permanently deletes a map and all its associated data from Felt. WARNING: This action cannot be undone. The map and all its layers, elements, and comments will be permanently removed. Use when you have the map's ID and need to permanently remove it. Returns no content (HTTP 204) on success." }, { "slug": "FELT_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project and all its contents. Use when you need to permanently remove a project after confirmation." }, { "slug": "FELT_DUPLICATE_MAP", "name": "Duplicate Map", "description": "Creates a complete copy of a Felt map including all layers, elements, and configuration. Use when you need to clone an existing map to a new location or create a template-based map. The duplicated map can optionally be placed in a specific project or folder." }, { "slug": "FELT_GET_MAP_DETAILS", "name": "Get Map Details", "description": "Retrieves comprehensive details of a specific Felt map including title, URL, layers, elements, basemap settings, access permissions, and timestamps. Requires a valid map ID. Use this when you need to: - Get complete map configuration and metadata - Access map layers and elements - Check map permissions and access settings - Retrieve map URLs for sharing" }, { "slug": "FELT_GET_USER_DETAILS", "name": "Get User Details", "description": "Tool to retrieve information about the authenticated user. Use after obtaining a valid token to fetch user profile details." }, { "slug": "FELT_LIST_ELEMENT_GROUPS", "name": "List Element Groups", "description": "Retrieves all element groups from a Felt map. Element groups are collections of geographic features (points, lines, polygons) organized together. Each group returns a GeoJSON FeatureCollection with the group's elements, along with styling properties like color and symbol. Use this when you need to discover what element groups exist on a map or access grouped geographic data." }, { "slug": "FELT_LIST_ELEMENTS", "name": "List Elements", "description": "Lists all elements on a specific map as a GeoJSON FeatureCollection. Returns elements that are not in element groups. Use when you need to retrieve the map's direct elements after obtaining a valid map_id." }, { "slug": "FELT_LIST_LAYERS", "name": "List Layers", "description": "Tool to list all layers on a specific map. Returns all layers present on the map with their complete metadata including status, geometry type, styling, and attributes. Use this when you need to inspect or enumerate the data layers on a map." }, { "slug": "FELT_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve a list of projects accessible to the user. Use when you need to browse or select from existing projects before proceeding." }, { "slug": "FELT_LIST_SOURCES", "name": "List Sources", "description": "List all data sources (external data connections) accessible to the authenticated user. Sources represent connections to external data providers like BigQuery, PostgreSQL, S3, Snowflake, etc. Use this to discover available sources before importing data from them into Felt maps. Each source includes sync status, connection type, and access permissions." }, { "slug": "FELT_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project's name or visibility. Use after confirming the project_id." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "felt_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Felt API Token", "type": "string", "description": "The API token for authenticating requests to the Felt API. Create and manage your tokens in the Developers tab of your Felt Workspace Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fibery", "name": "Fibery", "logo": "https://logos.composio.dev/api/fibery", "description": "Fibery is a work management platform designed to help teams collaborate, organize information, and manage their workflows.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIBERY_DELETE_CUSTOM_APP_ENDPOINT", "name": "Delete Custom App Endpoint", "description": "Tool to delete a specific custom app endpoint. Use after confirming the app and endpoint IDs to remove." }, { "slug": "FIBERY_DELETE_ENTITY", "name": "Delete Entity", "description": "Permanently delete a Fibery entity by its UUID and type. Use this action when you need to remove an entity from the workspace. Requires both the entity's UUID and its full qualified type name. WARNING: Deletion is irreversible. Example: Delete a task with entity_id='550e8400-e29b-41d4-a716-446655440000' and type='Tasks/Task'." }, { "slug": "FIBERY_DELETE_FILE", "name": "Delete File", "description": "Delete a file from Fibery storage using its secret identifier. Use this action to permanently remove an uploaded file. You must provide the file's secret (fibery/secret), not its ID (fibery/id). The secret is returned when you upload a file or can be queried via the commands API." }, { "slug": "FIBERY_EXECUTE_GRAPH_QL_QUERY", "name": "Execute GraphQL Query", "description": "Execute GraphQL queries or mutations against a Fibery workspace. Fibery organizes data into Spaces, each with its own GraphQL schema containing entity types and operations. This action automatically tries common space names if no space is specified, making it easy to use without prior knowledge. Best practices: - Start with introspection queries to discover schema: { __schema { types { name } } } - Use { __type(name: \"Query\") { fields { name } } } to see available queries - Space names typically match your workspace app/database names - The action returns both data and errors (GraphQL can return partial results)" }, { "slug": "FIBERY_GET_APP_INFO", "name": "Get App Information", "description": "Tool to retrieve application information. Use when you need the version, name, description, authentication methods, and available data sources before further operations." }, { "slug": "FIBERY_GET_CUSTOM_APP_ENDPOINTS", "name": "Get Custom App Endpoints", "description": "Tool to list custom app endpoints. Use when you need the available custom endpoints for a given app before invoking them." }, { "slug": "FIBERY_GET_CUSTOM_APPS", "name": "Get Custom Apps", "description": "Tool to list all custom apps in the Fibery workspace. Use when you need the identifiers of all custom apps." }, { "slug": "FIBERY_GET_ENTITIES", "name": "Get Entities (Deprecated)", "description": "DEPRECATED: Use PostFetchData instead. Query Fibery entities from a specified database type with flexible filtering and pagination. Use this to retrieve entities (records) from Fibery databases. Common types include: - 'fibery/user' - workspace users - 'YourSpace/YourType' - custom databases in your workspace IMPORTANT - Field Selection: - PRIMITIVE fields (text, numbers, dates, bools) are selected as strings: [\"fibery/id\", \"user/name\"] - RELATION fields (entity references) require nested object syntax: * Single relations: [{\"assigned-to\": [\"fibery/id\", \"user/name\"]}] * Collections: [{\"tasks\": {\"q/select\": [\"fibery/id\", \"task/name\"], \"q/limit\": 10}}] - Selecting a relation field as a string will cause \"field is not primitive\" error The query uses Fibery's Commands API with fibery.entity/query command." }, { "slug": "FIBERY_GET_ENTITY", "name": "Get Fibery Entity (Deprecated)", "description": "DEPRECATED: Use PostFetchData instead. Retrieve a single Fibery entity by its unique identifier. Use this tool when you need to fetch details of a specific entity whose ID you already know. This is useful for: - Getting full details of an entity after listing entities with FIBERY_GET_ENTITIES - Refreshing entity data after an update - Fetching specific fields of an entity using the 'expand' parameter The entity_id must combine the type name and UUID (e.g., 'fibery/user/'). Use FIBERY_GET_ENTITIES first if you need to discover entity IDs." }, { "slug": "FIBERY_GET_FILE", "name": "Get File", "description": "Download a file from Fibery by its secret or ID. Use this tool to retrieve file content from Fibery storage. The file secret is a UUID that uniquely identifies a file and is the preferred identifier. You can obtain the file secret: - From the 'fibery/secret' field when querying entities that have file fields - From the 'url' field in upload file response (extract the UUID from the URL) - From rich text content where files are embedded as /api/files/{secret}" }, { "slug": "FIBERY_GET_GRAPH_QL_SCHEMA", "name": "Get GraphQL Schema", "description": "Retrieves the GraphQL schema for the Fibery workspace using standard GraphQL introspection. Returns the schema as a JSON string that includes all types, queries, mutations, and their fields. Use this to discover available GraphQL operations before executing queries." }, { "slug": "FIBERY_GET_USER_PREFERENCES", "name": "Get User Preferences", "description": "Tool to retrieve the current user's UI preferences. Use after authentication to tailor UI to user settings." }, { "slug": "FIBERY_POST_AUTH_REFRESH_TOKEN", "name": "Refresh access token", "description": "Tool to validate and refresh an access token. For Fibery's standard API, this validates the current token is still working (Fibery tokens don't expire). For OAuth2 integrations with third-party services, this could be used to refresh tokens through the validate endpoint." }, { "slug": "FIBERY_POST_AUTH_TOKEN", "name": "Validate Fibery authentication and get access token", "description": "Validates Fibery API authentication and returns the active access token. This action validates that your API token is working correctly by attempting to query the Fibery API. For standard Fibery workspaces, it validates the pre-configured API token from the Authorization header. Behavior: 1. First attempts OAuth2 password grant at /auth/token (rare, only custom installations) 2. If /auth/token returns 404 (standard case), validates existing token via /commands endpoint 3. Returns the validated token that can be used for subsequent API calls The returned access_token should be used in the header: `Authorization: Token ` Note: Most Fibery workspaces use pre-generated API tokens (created in workspace settings), not username/password authentication. The username/password parameters are only used if a custom OAuth2 endpoint exists." }, { "slug": "FIBERY_POST_CREATE_ENTITY", "name": "Create Entity", "description": "Tool to create a new Fibery entity. Use when you have prepared all necessary field values and need to persist a new record. Example: Create a 'Project/Task' with title and assignee." }, { "slug": "FIBERY_POST_FETCH_DATA", "name": "Fetch Entities (Deprecated)", "description": "DEPRECATED: Use FIBERY_GET_ENTITIES instead. Fetch entities from a Fibery workspace using flexible queries. This action retrieves entities of a specified type with support for: - Field selection (choose which fields to return) - Filtering with where clauses - Pagination with limit and offset - Parameterized queries for dynamic filtering Use FIBERY_POST_FETCH_SCHEMA to discover available entity types and their fields." }, { "slug": "FIBERY_POST_FETCH_DATA_COUNT", "name": "Count Entities by Type", "description": "Count the total number of entities for a given Fibery type (database). This tool queries the Fibery workspace to return how many entities exist for the specified type. Use it to get totals like \"how many users\", \"how many features\", etc. Authentication: Requires a valid Fibery API token with read access." }, { "slug": "FIBERY_POST_FETCH_DATA_LIST", "name": "Fetch Datalist Options", "description": "Fetches one page of distinct values for a specific field from a Fibery entity type. Returns a list of unique options that can be used for filtering, dropdowns, or autocomplete. ONE Fibery API call is made per invocation; pagination is caller-driven via the `offset` and `limit` request fields and the `next_offset` response field. The action first attempts the `/datalist` endpoint and, if that endpoint is unavailable on the workspace (404/405/501), falls back to a single `fibery.entity/query` command via `/commands`." }, { "slug": "FIBERY_POST_FETCH_SCHEMA", "name": "Fetch Schema", "description": "Fetch the complete schema metadata for a Fibery workspace. Returns all types (entities) and their fields, including system types (fibery/user, fibery/app) and user-defined types (MySpace/Task, etc.). Use this to discover available types before querying data or to understand the structure of your workspace." }, { "slug": "FIBERY_POST_OAUTH2_ACCESS_TOKEN", "name": "Exchange OAuth2 authorization code", "description": "Exchange an OAuth2 authorization code for access and refresh tokens. This action is used during the final step of the OAuth2 authorization code flow when building Fibery custom integration apps. After a user authorizes your app on a third-party service and is redirected back with an authorization code, use this endpoint to exchange that code for access tokens. Important: This endpoint is typically implemented by YOUR custom integration app (connector), not by Fibery itself. The action probes multiple common endpoint paths across your app's base URL and Fibery's OAuth service to maximize compatibility. Typical flow: 1. User initiates OAuth authorization via /oauth2/v1/authorize 2. User approves on the third-party service 3. Third-party redirects to callback_uri with an authorization code 4. Call THIS endpoint with the code to get access/refresh tokens" }, { "slug": "FIBERY_POST_REVOKE_TOKEN", "name": "Delete/Revoke Access Token", "description": "Delete/revoke an existing Fibery API access token by its ID. Uses the DELETE /api/tokens/:token_id endpoint to permanently remove an API token. Important: This endpoint typically requires cookie-based authentication (browser session). When using API token authentication, you may receive a 401 Unauthorized error. Use this when you need to invalidate a specific API token, such as during security rotation or when revoking access for a specific integration." }, { "slug": "FIBERY_POST_VALIDATE_ACCOUNT", "name": "Validate Fibery Workspace Credentials", "description": "Validates Fibery workspace credentials by performing a test API query to retrieve the authenticated user's name. This action verifies that the provided credentials (or existing metadata credentials) are valid and have access to the workspace. Use this to confirm authentication before executing other Fibery operations. Supports multiple authentication types: workspace tokens, API keys, basic auth, and OAuth2." }, { "slug": "FIBERY_POST_VALIDATE_FILTER", "name": "Validate Filter", "description": "Validates filter definitions before executing data queries. Use this tool to verify that a filter's structure and syntax are correct without actually fetching data. For Fibery workspaces: Validates by executing a safe test query with limit=1. For custom apps: Calls the app's POST /validate/filter endpoint if available. Returns validation result indicating whether the filter can be safely used." }, { "slug": "FIBERY_UPDATE_ENTITY", "name": "Update Entity", "description": "Update an existing Fibery entity's fields. Use this to modify text fields, numbers, single-select states, workflow states, or relation fields on an entity. Prerequisites: - You need the entity's UUID (fibery/id) - obtain via Get Entities or Create Entity. - You need the fully-qualified type name (e.g., 'Engineering/Task'). - For workflow/state fields, you need the state's UUID. Limitations: - Rich text fields cannot be updated via this command. - Entity collection fields should be updated after entity creation." }, { "slug": "FIBERY_UPDATE_USER_PREFERENCES", "name": "Update User Preferences", "description": "Tool to update the current user's preferences by using the Commands API. It fetches the current user id and preferences, merges the provided payload, and writes back the merged object into 'fibery/ui-preferences' of the current fibery/user." }, { "slug": "FIBERY_UPLOAD_FILE", "name": "Upload File", "description": "Upload a file to Fibery's file storage. Use this action to upload files that can later be attached to entities or used in documents. Returns file metadata including the file ID and secret needed for subsequent operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fibery_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Workspace Subdomain", "type": "string", "description": "The subdomain of your Fibery workspace, used to construct the API base URL.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Fibery API Key", "type": "string", "description": "The API key used for authenticating requests to the Fibery API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fidel_api", "name": "Fidel API", "logo": "https://logos.composio.dev/api/fidel_api", "description": "Fidel API provides a developer-friendly, secure, and reliable API for businesses to link payment cards with mobile and web applications, enabling real-time transaction monitoring and event-based experiences.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 39, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIDEL_API_CREATE_BRAND", "name": "Create Brand", "description": "Create a new brand in Fidel API. Use this action to register a brand with a unique name. Brands are independent of Programs and can be reused between different programs. Once created, the brand can be associated with locations and offers. Returns the created brand object with its unique ID and timestamps." }, { "slug": "FIDEL_API_CREATE_BRAND_WEBHOOK", "name": "Create Brand Webhook", "description": "Tool to create a webhook at the brand level for receiving real-time event notifications. Use when you need to be notified of brand-related events, such as when brand consent is approved. In test mode, the webhook triggers immediately after creating a brand; in live mode, it triggers when the brand user approves the consent request." }, { "slug": "FIDEL_API_CREATE_LOCATION", "name": "Create Location", "description": "Create a new location for a program in Fidel API. Use when you need to add a physical store or merchant location to track card transactions at that specific address." }, { "slug": "FIDEL_API_CREATE_MID_REQUEST", "name": "Create MID Request", "description": "Tool to create a new MID (Merchant ID) request for a specific program and location. Use when you need to onboard a new MID or reassign an existing MID to a location." }, { "slug": "FIDEL_API_CREATE_OFFER", "name": "Create Offer", "description": "Create a new offer in Fidel API. Use this to set up promotional offers with reward configurations (fixed amount or percentage discount) for specific brands and countries. The offer will be associated with your publisher account and can be activated by customers." }, { "slug": "FIDEL_API_CREATE_PROGRAM", "name": "Create Program", "description": "Creates a new card-linked loyalty program in Fidel. A Program is the parent object for tracking card transactions - all Cards, Locations, Webhooks, and Transactions are linked to a Program. Use this before adding cards or locations." }, { "slug": "FIDEL_API_CREATE_PROGRAM_WEBHOOK", "name": "Create Program Webhook", "description": "Tool to register a new webhook for program-related events. Use when you need to receive real-time notifications for specific program events in your application." }, { "slug": "FIDEL_API_DELETE_LOCATION", "name": "Delete Location", "description": "Tool to delete a location by its ID. Use after confirming the correct location ID. The operation is idempotent - deleting an already-deleted location returns success." }, { "slug": "FIDEL_API_DELETE_OFFER", "name": "Delete Offer", "description": "Tool to delete a specified offer by its ID. Use after confirming the correct offer ID." }, { "slug": "FIDEL_API_DELETE_PROGRAM_WEBHOOK", "name": "Delete Program Webhook", "description": "Permanently deletes a webhook by its ID. This is a destructive operation that cannot be undone. The webhook will immediately stop receiving event notifications. Use List Program Webhooks first to get the webhook ID if needed." }, { "slug": "FIDEL_API_GET_BRAND", "name": "Get Brand", "description": "Tool to retrieve information about a specific brand. Use when you have a brand ID and need its details." }, { "slug": "FIDEL_API_GET_LOCATION", "name": "Get Location", "description": "Tool to retrieve details of a specific location by its ID. Use when you have a location ID and need its full details." }, { "slug": "FIDEL_API_GET_MID", "name": "Get MID", "description": "Tool to retrieve details of a specific MID (Merchant ID). Use when you have a program ID and MID ID to get full MID details." }, { "slug": "FIDEL_API_GET_MID_REQUEST", "name": "Get MID Request", "description": "Tool to retrieve details of a specific MID request. Use when you have a program ID and MID request ID and need to check the status or details of a Merchant ID request." }, { "slug": "FIDEL_API_GET_OFFER", "name": "Get Offer", "description": "Retrieves detailed information about a specific offer by its unique ID. Use this tool when you need to: - Get full details about a known offer (reward type, value, dates, etc.) - Verify offer status (active, expired, requests) - Check offer configuration (schemes, days of week, transaction limits) - View brand and location information for an offer Returns comprehensive offer details including reward configuration, eligibility criteria, and metadata." }, { "slug": "FIDEL_API_GET_PROGRAM", "name": "Get Program", "description": "Tool to retrieve details of a specific program. Use when you have a program ID and need its full details." }, { "slug": "FIDEL_API_GET_TRANSACTION", "name": "Get Transaction", "description": "Tool to retrieve details of a specific transaction by its ID. Use when you need to get complete information about a card-linked transaction including amount, currency, timestamp, and associated metadata." }, { "slug": "FIDEL_API_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieve details of a specific webhook by its unique identifier. Use this tool when you need to inspect webhook configuration, verify its URL, check the subscribed event type, or obtain the secret key for signature verification." }, { "slug": "FIDEL_API_LINK_ALL_PROGRAM_LOCATIONS_TO_OFFER", "name": "Link All Program Locations to Offer", "description": "Tool to link all brand locations in a program to an offer. Use when you need to associate all locations from a specific program with an offer, making the offer available at all those brand locations." }, { "slug": "FIDEL_API_LINK_LOCATION_TO_OFFER", "name": "Link Location to Offer", "description": "Link a location to an offer in Fidel API. Use this action to associate a specific location with an offer, making the offer available at that location. Once linked, transactions at the location will be eligible for the offer's rewards." }, { "slug": "FIDEL_API_LIST_BRANDS", "name": "List Brands", "description": "Retrieves a paginated list of all brands associated with your Fidel API account. Use this tool to: - Get an overview of all brands in your account - Retrieve brand IDs for use in other operations (e.g., getting locations, creating offers) - Paginate through large sets of brands using the cursor-based pagination Returns brand details including name, ID, consent status, and live/test mode indicator." }, { "slug": "FIDEL_API_LIST_CARDS", "name": "List Cards", "description": "List all payment cards linked to a Fidel program. Returns card details including scheme (visa/mastercard/amex), last 4 digits, expiry date, and country. Use this to view which cards are enrolled in a loyalty/rewards program. Requires a valid programId - use list_programs first if you don't have one." }, { "slug": "FIDEL_API_LIST_CARDS_BY_METADATA", "name": "List Cards By Metadata", "description": "Tool to list payment cards filtered by metadata ID. Use when you need to retrieve all cards that share a specific metadata identifier. Returns card details including scheme, last 4 digits, expiry date, and country. Useful for segmenting cards by custom tags or user groups." }, { "slug": "FIDEL_API_LIST_CARDS_WITH_ACTIVE_OFFER", "name": "List Cards with Active Offer", "description": "List all payment cards that have activated a specific offer. Returns card details for cards enrolled in the offer, including activation status and timestamps. Use this to track which cards are participating in a specific loyalty offer. Requires a valid offerId - use list_offers first if you don't have one." }, { "slug": "FIDEL_API_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to list all locations for a program. Use when you need to retrieve paginated store locations within a specific program." }, { "slug": "FIDEL_API_LIST_LOCATIONS_BY_BRAND", "name": "List Locations by Brand", "description": "Tool to list all locations for a specific brand within a program. Use when you need to retrieve locations filtered by both brand and program IDs with optional pagination, status, and postcode filters." }, { "slug": "FIDEL_API_LIST_LOCATIONS_BY_OFFER", "name": "List Locations by Offer", "description": "Tool to list all locations linked to a specific offer. Use when you need to retrieve locations where an offer is valid or active." }, { "slug": "FIDEL_API_LIST_MID_REQUESTS", "name": "List MID Requests", "description": "List all MID (Merchant ID) requests for a specific program. Use when you need to retrieve MID requests associated with a program for card-linking operations. Supports pagination via the 'start' parameter using cursors from previous responses." }, { "slug": "FIDEL_API_LIST_MIDS", "name": "List MIDs", "description": "Tool to list all MIDs (Merchant IDs) for a program. Use when you need to retrieve merchant IDs associated with a specific program for transaction tracking or location management." }, { "slug": "FIDEL_API_LIST_MISSING_TRANSACTION_REQUESTS", "name": "List Missing Transaction Requests", "description": "Tool to list all missing transaction requests for a specific program. Use when you need to retrieve reports of transactions that were expected but not recorded in the system." }, { "slug": "FIDEL_API_LIST_OFFERS", "name": "List Offers", "description": "List all offers in the Fidel API. Retrieves offers associated with the account, optionally filtered by brand. Returns offer details including type (amount/discount), validity period, card schemes, and activation settings." }, { "slug": "FIDEL_API_LIST_PROGRAMS", "name": "List Programs", "description": "List all Fidel programs in your account. Use this to retrieve programs for card-linking, loyalty, or reward systems. Supports pagination via the 'start' parameter using cursors from previous responses. Returns program details including name, type, status, and sync state." }, { "slug": "FIDEL_API_LIST_PROGRAM_WEBHOOKS", "name": "List Program Webhooks", "description": "Tool to list all registered webhooks for a specific program. Use when you need to retrieve existing webhooks after confirming the programId." }, { "slug": "FIDEL_API_LIST_TRANSACTIONS", "name": "List Transactions", "description": "List transactions for a Fidel program with optional filtering and pagination. Use this tool to retrieve card-linked transaction data for loyalty, rewards, or analytics purposes. Requires a valid programId." }, { "slug": "FIDEL_API_UNLINK_LOCATION_FROM_OFFER", "name": "Unlink Location From Offer", "description": "Tool to unlink a location from an offer by removing the location association. Use after confirming the correct offer ID and location ID." }, { "slug": "FIDEL_API_UPDATE_BRAND", "name": "Update Brand", "description": "Update an existing brand's details in Fidel API. Use this to modify websiteURL, logoURL, or metadata for a brand. The brand name cannot be changed after creation. Requires a valid brand ID from get_brand or list_brands." }, { "slug": "FIDEL_API_UPDATE_OFFER", "name": "Update Offer", "description": "Updates specific properties of an existing offer. Use this when you need to modify offer details such as name, dates, transaction amounts, terms, or metadata. At least one field must be provided to update. Returns the complete updated offer object with all current properties." }, { "slug": "FIDEL_API_UPDATE_PROGRAM", "name": "Update Program", "description": "Updates a Fidel API program's properties. Can modify name (4-50 chars), icon (emoji in :name: format), iconBackground (HEX color), metadata (key/value pairs, max 2KB), or status ('syncing' for live programs only). Requires a valid program ID obtained from list_programs or create_program." }, { "slug": "FIDEL_API_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook's configuration. Use when you need to change the webhook URL or event type. The event field is required even when updating." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fidel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Fidel API Secret Key", "type": "string", "description": "Your Fidel API secret key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "files_com", "name": "Files.com", "logo": "https://logos.composio.dev/api/files_com", "description": "Files.com is a secure cloud storage and file transfer platform that enables businesses to store, share, and manage files across various cloud services and on-premises systems.", "category": "file management & storage", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FILES_COM_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete an API key. Use when you need to revoke an API key after confirming its identifier." }, { "slug": "FILES_COM_DELETE_PERMISSION", "name": "Delete Permission", "description": "Removes a permission grant that allows a user or group to access a specific file or folder path on Files.com. A permission ID can be obtained from the LIST_PERMISSIONS action. Use this tool when you need to revoke access that was previously granted to a user or group for a specific resource. Note: Requires administrative permissions on the Files.com site." }, { "slug": "FILES_COM_DELETE_SHARE", "name": "Delete Share", "description": "Delete a specified share link (bundle) on Files.com. This operation is idempotent - it succeeds even if the share link has already been deleted or doesn't exist. Use this to revoke public access to shared files/folders when you have the share ID." }, { "slug": "FILES_COM_GET_S3_KEY_FOR_UPLOAD", "name": "Get S3 Key for Upload", "description": "Tool to generate a temporary key for file uploads by uploading the file to Files.com. Useful when you need to host a local file temporarily before importing or sharing." }, { "slug": "FILES_COM_LIST_FOLDERS", "name": "List Folders", "description": "Lists folders in Files.com with optional filtering, sorting, and pagination. Returns a paginated list of folders with metadata. Useful for browsing folder structure, finding specific folders by name, or retrieving folders under a specific parent." }, { "slug": "FILES_COM_LIST_GROUPS", "name": "List Groups", "description": "Retrieves a paginated list of all groups from Files.com. Groups are used to organize users and manage permissions collectively. Use this action to discover available groups, check group membership, or before performing group-based permission operations. Returns group details including IDs, names, member lists, and access permissions (FTP, SFTP, WebDAV, REST API)." }, { "slug": "FILES_COM_LIST_PERMISSIONS", "name": "List Permissions", "description": "Retrieve permissions for a specified path on Files.com. Use when you need to inspect who has access and what level for a given file or folder path." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "files_com_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Site Subdomain", "type": "string", "description": "The subdomain of your Files.com site, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Files.com API Key", "type": "string", "description": "The API key used for authenticating requests to the Files.com API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fillout_forms", "name": "Fillout Forms", "logo": "https://logos.composio.dev/api/fillout_forms", "description": "Fillout is a platform that allows users to create and manage forms, offering a REST API for programmatic access to form data.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FILLOUT_FORMS_AUTHORIZE_O_AUTH", "name": "Authorize OAuth", "description": "Tool to initiate the OAuth authorization process for third-party applications. Use when you need to generate the URL to redirect your users to the Fillout consent page." }, { "slug": "FILLOUT_FORMS_CREATE_DATABASE", "name": "Create Database", "description": "Tool to create a new Zite database instance with tables and fields. Use when you need to create a structured database in Fillout with custom tables and field definitions. Each database must have at least one table, and each table must have at least one field." }, { "slug": "FILLOUT_FORMS_CREATE_DATABASE_WEBHOOK", "name": "Create Database Webhook", "description": "Tool to create a webhook subscription for a Fillout database. The webhook will receive HTTP POST notifications when subscribed events occur (e.g., record.created, record.updated, record.deleted). Use when you need to set up real-time notifications for database changes. Maximum 100 webhooks per database." }, { "slug": "FILLOUT_FORMS_CREATE_FIELD", "name": "Create field", "description": "Tool to add a new field to an existing table with specified type, name, and configuration. Use when you need to extend a database table with additional columns." }, { "slug": "FILLOUT_FORMS_CREATE_RECORD", "name": "Create record", "description": "Tool to create a new record in a Fillout table with the provided field data. Use when you need to add a new entry to a specific table in your Fillout database. The record parameter should be a dictionary where keys are field names (or field IDs) from your table schema, and values are the data to store in those fields." }, { "slug": "FILLOUT_FORMS_CREATE_TABLE", "name": "Create table", "description": "Tool to add a new table with custom schema to an existing database. Use when you need to create a structured table in a Fillout database with specific field definitions. Each table must have at least one field." }, { "slug": "FILLOUT_FORMS_DELETE_DATABASE", "name": "Delete database", "description": "Tool to permanently delete a database and all its data including tables, fields, views, and records. Use when you need to completely remove a database. Warning: This action cannot be undone." }, { "slug": "FILLOUT_FORMS_DELETE_DATABASE_WEBHOOK", "name": "Delete database webhook", "description": "Tool to remove a webhook subscription from a Fillout database. Use when you need to delete an existing webhook from a specific database." }, { "slug": "FILLOUT_FORMS_DELETE_FIELD", "name": "Delete field", "description": "Tool to permanently delete a field from a table. Use when you need to remove a field from a Fillout database table. Note: Cannot delete the primary field." }, { "slug": "FILLOUT_FORMS_DELETE_RECORD", "name": "Delete record", "description": "Tool to permanently delete a record from a table in Fillout Database. Use when you need to remove a specific record. This action cannot be undone." }, { "slug": "FILLOUT_FORMS_DELETE_TABLE", "name": "Delete table", "description": "Tool to permanently delete a table and all its data including fields, views, and records from a Fillout database. Use when you need to remove a table. This action cannot be undone." }, { "slug": "FILLOUT_FORMS_GET_DATABASE_BY_ID", "name": "Get database by ID", "description": "Tool to retrieve detailed information about a specific database including all tables, fields, and views. Use when you need to get comprehensive database structure and metadata by database ID." }, { "slug": "FILLOUT_FORMS_GET_DATABASES", "name": "Get databases", "description": "Tool to retrieve a list of all databases for your organization. Use when you need to list available databases after authenticating with Fillout." }, { "slug": "FILLOUT_FORMS_GET_FORMS", "name": "Get forms", "description": "Tool to retrieve a list of all forms in your account. Use when you need to list your forms after authenticating with Fillout." }, { "slug": "FILLOUT_FORMS_GET_RECORD_BY_ID", "name": "Get record by ID", "description": "Tool to retrieve a single record by its UUID with all field data. Use when you need to fetch detailed information for a specific record from a Fillout table." }, { "slug": "FILLOUT_FORMS_INVALIDATE_ACCESS_TOKEN", "name": "Invalidate Access Token", "description": "Revokes an OAuth access token obtained from Fillout's OAuth authorization flow. Use this action when a user logs out, disconnects their account, or when you need to programmatically revoke a third-party app's access to Fillout data. Important notes: - This action is for OAuth tokens only, NOT for API keys - OAuth tokens are obtained via the OAuth flow (authorize -> token exchange) - The operation is idempotent: invalidating an already-invalidated token succeeds - After invalidation, the token can no longer be used for API requests Example: A user disconnects your app from Fillout - call this to revoke their access token." }, { "slug": "FILLOUT_FORMS_LIST_DATABASE_WEBHOOKS", "name": "List database webhooks", "description": "Tool to retrieve all webhook subscriptions configured for a specific database. Use when you need to list, audit, or manage existing webhooks for a database." }, { "slug": "FILLOUT_FORMS_LIST_RECORDS", "name": "List Records", "description": "Tool to retrieve records from a Fillout table with filtering, sorting, and pagination. Supports complex filter conditions using AND/OR logic and 14 operators (equals, contains, greater_than, in, is_empty, etc.). Use when you need to query table data with specific conditions or retrieve paginated results." }, { "slug": "FILLOUT_FORMS_REMOVE_FORM_WEBHOOK", "name": "Remove form webhook", "description": "Tool to remove a webhook by its ID. Use when you need to delete an existing webhook from your Fillout account." }, { "slug": "FILLOUT_FORMS_UPDATE_FIELD", "name": "Update field", "description": "Tool to modify field properties and configuration for an existing field in a Fillout database table. Use when you need to update field names or change field configuration settings." }, { "slug": "FILLOUT_FORMS_UPDATE_RECORD", "name": "Update record", "description": "Tool to update specific fields of an existing record in a Fillout table. Use when you need to modify particular fields without affecting other fields in the record. Only the fields specified in the request will be updated." }, { "slug": "FILLOUT_FORMS_UPDATE_TABLE", "name": "Update table", "description": "Tool to update table properties like name. Use when you need to modify table metadata such as renaming a table in a Fillout database." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fillout_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Fillout API Key", "type": "string", "description": "The API key obtained from your Fillout account's Developer settings tab.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "financial_datasets_ai", "name": "Financial Datasets Ai", "logo": "https://logos.composio.dev/api/financial_datasets_ai", "description": "Access comprehensive financial data and company fundamentals for 30,000+ stocks. Provides financial statements, ratios, market data, and analytics.", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "financial_datasets_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Financial Datasets API key. Get it from https://financialdatasets.ai/account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "findymail", "name": "Findymail", "logo": "https://logos.composio.dev/api/findymail", "description": "Findymail is a B2B email and phone data provider offering verified contact information, email verification, automated exports, and CRM enrichment to enhance sales prospecting and outreach efforts.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FINDYMAIL_ADD_EXCLUDED_DOMAIN", "name": "Add Excluded Domain", "description": "Tool to add domains to an exclusion list in Findymail. Use when you need to prevent email searches or verification for specific domains." }, { "slug": "FINDYMAIL_CREATE_EXCLUSION_LIST", "name": "Create Exclusion List", "description": "Tool to create a new exclusion list for Intellimatch searches. Use when you need to filter out specific companies or contacts from search results." }, { "slug": "FINDYMAIL_CREATE_LIST", "name": "Create Contact List", "description": "Tool to create a new contact list. Use when you need to organize contacts into a named list before adding them." }, { "slug": "FINDYMAIL_DELETE_EXCLUSION_LIST", "name": "Delete Exclusion List", "description": "Tool to permanently delete an exclusion list by its ID. Use when you need to remove an exclusion list from Intellimatch. This action is irreversible." }, { "slug": "FINDYMAIL_DELETE_LIST", "name": "Delete Contact List", "description": "Permanently deletes a contact list by its ID. This action is irreversible and will also remove all contacts in the list. Returns 404 if the list does not exist." }, { "slug": "FINDYMAIL_FIND_EMAIL_BY_NAME", "name": "Find Email by Name", "description": "Tool to find someone's email using their full name and company domain. Use when you have a person's name and domain and need their email address. Supports asynchronous search via webhook_url." }, { "slug": "FINDYMAIL_GET_CONTACT_LISTS", "name": "Get Contact Lists", "description": "Tool to retrieve all contact lists. Use when you need an overview of your existing Findymail lists." }, { "slug": "FINDYMAIL_GET_CREDITS", "name": "Get Credits", "description": "Tool to check available API credits for your Findymail account. Use when you need to verify remaining credits before performing operations." }, { "slug": "FINDYMAIL_GET_CREDITS_SUMMARY", "name": "Get Credits Summary", "description": "Tool to retrieve credits usage summary report for the authenticated account. Use when you need to check credits consumption over time." }, { "slug": "FINDYMAIL_GET_CREDITS_TEAM_SUMMARY", "name": "Get Credits Team Summary", "description": "Tool to retrieve team credits usage summary report. Use when you need an overview of credit consumption across team members." }, { "slug": "FINDYMAIL_GET_EXCLUSION_LIST", "name": "Get Exclusion List", "description": "Tool to retrieve a specific exclusion list by ID. Use when you need details about a particular exclusion list." }, { "slug": "FINDYMAIL_GET_INTELLIMATCH_DATA", "name": "Get Intellimatch Data", "description": "Tool to retrieve data from an Intellimatch search. Use after initiating a search with POST /api/intellimatch/search and confirming completion with GET /api/intellimatch/status." }, { "slug": "FINDYMAIL_GET_INTELLIMATCH_STATUS", "name": "Get Intellimatch Status", "description": "Tool to check the status of an Intellimatch search job. Use when you need to verify if an Intellimatch search has completed after initiating it." }, { "slug": "FINDYMAIL_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve contacts from a specified list (paginated). Use after selecting a list to fetch its contacts." }, { "slug": "FINDYMAIL_LIST_EXCLUDED_DOMAINS", "name": "List Excluded Domains", "description": "Tool to retrieve domains excluded from Intellimatch searches. Use when you need to view the current domain exclusion list." }, { "slug": "FINDYMAIL_LIST_EXCLUSION_LISTS", "name": "List Exclusion Lists", "description": "Tool to retrieve all exclusion lists for managing excluded websites from Intellimatch searches. Use when you need to view configured website exclusions." }, { "slug": "FINDYMAIL_REMOVE_EXCLUDED_DOMAIN", "name": "Remove Excluded Domain", "description": "Tool to remove domains from the exclusion list. Use when you need to stop excluding specific domains from email search results." }, { "slug": "FINDYMAIL_SEARCH_INTELLIMATCH", "name": "Search Intellimatch", "description": "Tool to find companies and contacts using natural language queries. Use when you need to build targeted lead lists automatically by describing your ideal customer profile in plain language." }, { "slug": "FINDYMAIL_UPDATE_EXCLUSION_LIST", "name": "Update Exclusion List", "description": "Tool to update an existing exclusion list. Use when you need to rename or modify an exclusion list's properties." }, { "slug": "FINDYMAIL_UPDATE_LIST", "name": "Update Contact List", "description": "Tool to update an existing contact list. Use when you need to rename a list or change its sharing settings." }, { "slug": "FINDYMAIL_VERIFY_EMAIL", "name": "Verify Email", "description": "Tool to verify the deliverability of an email address. Use when you need to confirm an email can receive messages before outreach." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "findymail_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Findymail API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "finerworks", "name": "Finerworks", "logo": "https://logos.composio.dev/api/finerworks", "description": "FinerWorks is an online platform specializing in fine art and photo printing services, offering artists and photographers the ability to order prints and manage their inventory.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 33, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FINERWORKS_ADD_IMAGES", "name": "Add Images", "description": "Tool to add images to a finerworks library. Use after preparing up to 5 images with metadata and URIs." }, { "slug": "FINERWORKS_ADD_UPDATE_GALLERY_COLLECTION", "name": "Add or Update Gallery Collection", "description": "Tool to add or update personal gallery collections in GeoGalleries.com. Use when creating new collections or modifying existing ones. Omit id or set to 0 for new collections; provide existing id to update." }, { "slug": "FINERWORKS_DELETE_IMAGES", "name": "Delete Images", "description": "Tool to delete a list of image files from FinerWorks based on their unique GUIDs. Note: If an image is assigned to the inventory library, this will also remove any virtual inventory products assigned to those images. Use when you need to permanently remove images from a library." }, { "slug": "FINERWORKS_DELETE_PENDING_ORDERS", "name": "Delete Pending Orders", "description": "Tool to remove orders from temporary storage that were saved as pending. Use when you need to delete pending orders by their identifiers." }, { "slug": "FINERWORKS_DELETE_VIRTUAL_INVENTORY", "name": "Delete Virtual Inventory", "description": "Tool to delete virtual inventory products by SKU. Use when removing products from virtual inventory. Note that deleted items will lose any sync connection with 3rd party platforms." }, { "slug": "FINERWORKS_DISCONNECT_VIRTUAL_INVENTORY", "name": "Disconnect Virtual Inventory", "description": "Tool to disconnect ALL virtual inventory items from a 3rd party platform. Use when you need to remove platform data (e.g., Shopify, WooCommerce, Etsy) from all virtual inventory items." }, { "slug": "FINERWORKS_FETCH_ORDER_STATUS", "name": "Fetch Order Status", "description": "Tool to retrieve order production status and tracking details from FinerWorks. Use when you need to check the current status of orders including shipment tracking information." }, { "slug": "FINERWORKS_GET_COMPANY_INFO", "name": "Get Company Info", "description": "Tool to get essential information about FinerWorks including site identifier, company address, and operating hours. Use when you need to retrieve FinerWorks' contact information or business location details." }, { "slug": "FINERWORKS_GET_FRAME_DETAILS", "name": "Get Frame Details", "description": "Tool to retrieve detailed specifications for a specific frame by ID. Returns dimensions, pricing, material info, size constraints, and URLs for visual references. Use when you need complete frame specifications for order processing or product catalog display." }, { "slug": "FINERWORKS_GET_PRICES", "name": "Get Prices", "description": "Tool to retrieve pricing information for FinerWorks products. Use when you need to get price quotes for specific product SKUs and quantities." }, { "slug": "FINERWORKS_GET_SHIPPING_OPTIONS_IDS", "name": "Get Shipping Options IDs", "description": "Tool to list all available shipping option IDs from FinerWorks. Use this to retrieve IDs for various shipping methods that can be used for cross-reference purposes when configuring orders. Sites should periodically check and update this data in case new shipping methods are added or deleted." }, { "slug": "FINERWORKS_GET_USER", "name": "Get User", "description": "Retrieves the authenticated user's FinerWorks account profile including billing/business addresses, account credits, shipping preferences, connected platforms, and gallery settings. Use this to get user details like account_key, email, credits balance, or to verify authentication." }, { "slug": "FINERWORKS_LIST_FILE_SELECTION", "name": "List File Selection", "description": "Tool to retrieve the list of currently selected files by their master guid. Use when you need to see which file GUIDs are grouped under a specific selection key." }, { "slug": "FINERWORKS_LIST_FRAME_COLLECTIONS", "name": "List Frame Collections", "description": "Retrieve available frame collections and categories from FinerWorks. Use this to discover frame options for print orders. Pass a collection ID to get detailed frame specifications within that collection, or filter by product code to see only compatible frames. Returns all collections if no filters specified." }, { "slug": "FINERWORKS_LIST_GALLERIES", "name": "List Galleries", "description": "Tool to list galleries setup in GeoGalleries.com for the user's account. Use when you need to retrieve available galleries, filter by personal galleries, or get specific galleries by their IDs." }, { "slug": "FINERWORKS_LIST_GALLERY_THEMES", "name": "List Gallery Themes", "description": "Tool to retrieve available themes for GeoGalleries. Use when you need to discover valid theme options for gallery customization or when filtering galleries by theme." }, { "slug": "FINERWORKS_LIST_GLAZING", "name": "List Glazing", "description": "Retrieve available glazing and glass options from FinerWorks. Use this to discover glazing choices (UV protection glass, acrylic, etc.) for framed prints. Call without parameters to list all glazing options, or pass a specific ID to filter results." }, { "slug": "FINERWORKS_LIST_IMAGES", "name": "List Images", "description": "Tool to retrieve a paginated list of image files uploaded to your FinerWorks account. Use this to browse your image inventory, search by filters, or get specific images by GUID. Supports pagination, sorting, date filtering, and gallery filtering." }, { "slug": "FINERWORKS_LIST_MATS", "name": "List Mats", "description": "Retrieve available matting options from FinerWorks for framing products. Mats include specifications like dimensions, colors, thickness, and pricing. Use this to discover valid mat IDs and specifications before configuring framed prints." }, { "slug": "FINERWORKS_LIST_MEDIA_TYPES", "name": "List Media Types", "description": "Retrieve available print media types from FinerWorks. Media types represent printing substrates (e.g., canvas, paper, vinyl) and include associated product type and style information. Call without parameters to list all media types, or pass specific IDs to filter results." }, { "slug": "FINERWORKS_LIST_ORDER_STATUS_DEFINITIONS", "name": "List Order Status Definitions", "description": "Tool to list all available production status definitions an order can have once it has completed. Use the order_status_id for reference purposes since the descriptive label can be redundant or change wording in some cases." }, { "slug": "FINERWORKS_LIST_PRODUCT_TYPES", "name": "List Product Types", "description": "Retrieve FinerWorks product types (print categories like Canvas Prints, Metal Prints, Posters, etc.). Use this to discover available printing options and their media IDs before placing orders. Returns all product types if no IDs specified, or filtered results for specific IDs." }, { "slug": "FINERWORKS_LIST_SHIPPING_OPTIONS_MULTIPLE", "name": "List Shipping Options Multiple", "description": "Retrieve shipping options and rates for multiple orders in a batch request. Use this tool to get available shipping methods, rates, and estimated delivery times before submitting orders. Returns all available shipping options for each order with pricing breakdown including shipping rate, taxes, and total cost. The returned shipping_code values (e.g., 'FL', 'GD', '2A') should be used when submitting the actual order via submit_orders. Supports both US domestic and international shipping destinations." }, { "slug": "FINERWORKS_LIST_STYLE_TYPES", "name": "List Style Types", "description": "Retrieves available print style types from FinerWorks. Style types define how prints are formatted (e.g., border sizes, canvas wraps, panel depths). Use this to discover valid style_type_id values needed when creating print orders or configuring products. Each style type includes sizing constraints, framing options, and border/bleed specifications." }, { "slug": "FINERWORKS_LIST_VIRTUAL_INVENTORY", "name": "List Virtual Inventory", "description": "Tool to retrieve a user's virtual inventory products from their FinerWorks account. Use when you need to list products with valid product codes, search by SKU or product code, or filter by creation date. Returns paginated results with product details including pricing, images, and stock information." }, { "slug": "FINERWORKS_SAVE_PENDING_ORDERS", "name": "Save Pending Orders", "description": "Tool to save orders to temporary pending storage. Use when orders need review or modification before final submission." }, { "slug": "FINERWORKS_SUBMIT_ORDERS", "name": "Submit Orders", "description": "Tool to submit up to five new orders. Use after all customer and line-item details are finalized." }, { "slug": "FINERWORKS_UPDATE_APP_DETAILS", "name": "Update App Details", "description": "Tool to update the details assigned to the app_key being used. Use when you need to modify app name, description, miscellaneous data, or live mode status." }, { "slug": "FINERWORKS_UPDATE_FILE_SELECTION", "name": "Update File Selection", "description": "Tool to update a user's currently selected image files using the selection key. Use when you need to replace the current set of files associated with a selection GUID after authentication." }, { "slug": "FINERWORKS_UPDATE_IMAGES", "name": "Update Images", "description": "Tool to update image metadata in FinerWorks based on unique GUIDs. Use when you need to modify image properties like title, description, visibility, or gallery assignments. Note: if the image is assigned to the inventory library, this will also remove any virtual inventory products assigned to those images." }, { "slug": "FINERWORKS_UPDATE_USER", "name": "Update User", "description": "Tool to update various features of a user's account profile. Use when you need to modify billing/business info, logos, or payment profile after retrieving current account." }, { "slug": "FINERWORKS_UPDATE_VIRTUAL_INVENTORY", "name": "Update Virtual Inventory", "description": "Tool to update virtual inventory items within a user's account. Use when you need to modify product details like pricing, stock quantities, descriptions, or third-party integrations for existing inventory items." }, { "slug": "FINERWORKS_VALIDATE_RECIPIENT_ADDRESS", "name": "Validate Recipient Address", "description": "Tool to validate and test a recipient address before submitting an order to ensure delivery accuracy. Use this to verify address correctness and get standardized formatting from the shipping carrier's validation service." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "finerworks_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "FinerWorks Web API Key", "type": "string", "description": "The web API key provided by FinerWorks for authenticating API requests.", "required": true, "default": null }, { "name": "generic_token", "displayName": "FinerWorks App Key", "type": "string", "description": "The application key provided by FinerWorks for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fingertip", "name": "Fingertip", "logo": "https://logos.composio.dev/api/fingertip", "description": "Fingertip is an all-in-one platform that enables businesses to manage their operations from a single link, offering tools for selling products, booking clients, and connecting with customers across various social media platforms.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FINGERTIP_CREATE_INVOICE", "name": "Create Store Invoice", "description": "Tool to create a store invoice in Fingertip. Use when you need to bill a customer for products or services with line items, pricing, and tax details. Returns the created invoice ID which can be used to retrieve or manage the invoice." }, { "slug": "FINGERTIP_CREATE_INVOICE_ITEM", "name": "Create Invoice Item", "description": "Creates a new invoice item for a Fingertip site. Requires siteId, title, and priceInCents. Returns the created invoice item with its unique ID and timestamps." }, { "slug": "FINGERTIP_CREATE_PAGE", "name": "Create Page", "description": "Tool to create a new page within a Fingertip site. Use when you need to add a new page to an existing site. Requires siteId, slug, and name. Returns the created page with its unique ID and timestamps." }, { "slug": "FINGERTIP_CREATE_PAGE_BLOCK", "name": "Create Page Block", "description": "Creates a new block within the specified page. Returns the created block with its unique ID and timestamps. Use when you need to add content blocks like headings, paragraphs, or images to a page." }, { "slug": "FINGERTIP_CREATE_SITE", "name": "Create Fingertip Site", "description": "Creates a new Fingertip site with the specified configuration. Requires name, slug (URL identifier), and businessType. Returns the created site with its unique ID and auto-generated home page. Use ENABLED status for live sites or UNPUBLISHED for drafts." }, { "slug": "FINGERTIP_CREATE_SITE_CONTACT", "name": "Create Site Contact", "description": "Tool to create a new contact associated with a site including marketing preferences. Use when you need to add contacts to a Fingertip site with their email, personal details, and marketing consent status." }, { "slug": "FINGERTIP_CREATE_SITE_INVITATION", "name": "Create Site Invitation", "description": "Tool to create a new invitation for a user to join a site. Use when you need to invite someone to access and collaborate on a specific site with a designated role." }, { "slug": "FINGERTIP_CREATE_WEBHOOK", "name": "Create Webhook Subscription", "description": "Tool to create a webhook subscription for receiving real-time event notifications from Fingertip. Use when you need to receive notifications for events like new contacts, form responses, bookings, or orders. Returns the webhook subscription ID." }, { "slug": "FINGERTIP_DELETE_BLOCK", "name": "Delete Block", "description": "Tool to permanently delete a block by its ID. Use when you need to remove a block after confirming it is no longer needed." }, { "slug": "FINGERTIP_DELETE_DRAFT_INVOICE", "name": "Delete Draft Invoice", "description": "Tool to delete a draft store invoice. Use when you need to remove a draft invoice that is no longer needed." }, { "slug": "FINGERTIP_DELETE_INVOICE_ITEM", "name": "Delete Invoice Item", "description": "Tool to delete a Fingertip invoice item. Use when you need to remove an invoice item by its UUID after confirming it is no longer needed." }, { "slug": "FINGERTIP_DELETE_PAGE", "name": "Delete Fingertip Page", "description": "Tool to permanently delete a page and all associated data. Use when you need to remove a page by its UUID after confirming it is no longer needed." }, { "slug": "FINGERTIP_DELETE_SITE", "name": "Delete Fingertip Site", "description": "Tool to delete a Fingertip site. Use when you need to permanently remove a site by its UUID after confirming it is no longer needed." }, { "slug": "FINGERTIP_DELETE_SITE_INVITATION", "name": "Delete Site Invitation", "description": "Tool to delete a site invitation by its ID. Use when you need to cancel or remove a pending site invitation." }, { "slug": "FINGERTIP_DELETE_SITE_MEMBERSHIP", "name": "Delete Site Membership", "description": "Tool to delete a specific site membership. Use when you need to remove a user from a site after confirming the membership ID." }, { "slug": "FINGERTIP_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to remove an existing webhook subscription. Use when you need to permanently delete a webhook by its UUID." }, { "slug": "FINGERTIP_DELETE_WORKSPACE_INVITATION", "name": "Delete Workspace Invitation", "description": "Tool to delete a workspace invitation by its ID. Use after obtaining the invitation ID to cancel a pending workspace invitation." }, { "slug": "FINGERTIP_GET_BLOCK", "name": "Get Block", "description": "Tool to retrieve a specific block by its ID. Returns block details including content, metadata, and timestamps. Returns 404 if the block is not found." }, { "slug": "FINGERTIP_GET_COMPREHENSIVE_SITE_ANALYTICS", "name": "Get Comprehensive Site Analytics", "description": "Tool to retrieve comprehensive analytics for a specific site. Use when you have a site ID and need period-based breakdowns including optional store metrics." }, { "slug": "FINGERTIP_GET_INVOICE_ITEM", "name": "Get Invoice Item", "description": "Tool to retrieve details of a specific invoice item by its ID. Use when you need to fetch information about a specific invoice item including its title, description, price, and currency." }, { "slug": "FINGERTIP_GET_PAGE", "name": "Get Page", "description": "Tool to retrieve a specific Fingertip page by its ID. Returns complete page details including name, slug, description, timestamps, media configurations, and theme settings. Use when you need detailed information about a specific page." }, { "slug": "FINGERTIP_GET_PAGE_THEME", "name": "Get Page Theme", "description": "Retrieve the theme configuration for a specific page. Use when you need to get the theme details including ID, content, and timestamps for a page." }, { "slug": "FINGERTIP_GET_SITE", "name": "Get Fingertip Site", "description": "Tool to retrieve a specific Fingertip site by its UUID. Use when you need to fetch detailed information about a single site." }, { "slug": "FINGERTIP_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by ID with its related triggers. Use when you need to fetch details of a single webhook including its configuration and event subscriptions." }, { "slug": "FINGERTIP_HEALTH_CHECK", "name": "Health Check", "description": "Tool to verify API connectivity. Use when checking API health before other operations." }, { "slug": "FINGERTIP_LIST_BLOG_POSTS", "name": "List Fingertip Blog Posts", "description": "Tool to list published blog posts for a specific site. Use when you have a site ID and need to paginate, sort, and retrieve post summaries." }, { "slug": "FINGERTIP_LIST_BOOKINGS", "name": "List Bookings", "description": "Tool to retrieve a paginated list of bookings for a site with optional status filtering. Use when you need to fetch bookings for a specific site, optionally filtered by booking status." }, { "slug": "FINGERTIP_LIST_EVENT_TYPES", "name": "List Event Types", "description": "Tool to list event types for a specific site. Use after confirming the siteId to retrieve a paginated list of published event types." }, { "slug": "FINGERTIP_LIST_FORM_RESPONSES", "name": "List Form Responses", "description": "Tool to retrieve form responses for a specific form template and site. Use when you need to fetch form submissions after obtaining the form template ID and site ID." }, { "slug": "FINGERTIP_LIST_FORM_TEMPLATES", "name": "List Form Templates", "description": "Tool to retrieve a paginated list of form templates. Use when you need to fetch multiple templates for a site after obtaining its ID." }, { "slug": "FINGERTIP_LIST_INVOICE_ITEMS", "name": "List Invoice Items", "description": "Tool to list invoice items for a specific Fingertip site. Use when you need to retrieve billable items with pagination and optional search filtering." }, { "slug": "FINGERTIP_LIST_INVOICES", "name": "List Fingertip Invoices", "description": "Tool to retrieve a paginated list of invoices for sites the user has access to. Use when you need to fetch invoices with optional filtering by status and sorting." }, { "slug": "FINGERTIP_LIST_MESSAGES", "name": "List Fingertip Messages", "description": "Tool to retrieve a paginated list of messages for a site. Use when you need to fetch messages for a specific site or contact." }, { "slug": "FINGERTIP_LIST_ORDERS", "name": "List Orders", "description": "Tool to retrieve orders with basic information for a specific site. Use when you need to fetch paginated order data by site slug." }, { "slug": "FINGERTIP_LIST_PAGE_BLOCKS", "name": "List Page Blocks", "description": "Tool to retrieve all blocks associated with a specific page. Use when you have a page ID and need to access the page's block structure and content." }, { "slug": "FINGERTIP_LIST_PAGES", "name": "List Pages", "description": "List all pages for a specific Fingertip site. Returns paginated results with page details including ID, slug, name, timestamps, and media configurations. Use cursor-based pagination to iterate through large result sets." }, { "slug": "FINGERTIP_LIST_PAGE_THEMES", "name": "List Page Themes", "description": "Tool to retrieve a paginated list of page themes. Use when you need to fetch available page themes, optionally scoped to a specific site, with pagination support." }, { "slug": "FINGERTIP_LIST_QUOTES", "name": "List Quotes", "description": "List all quotes for a specific Fingertip site. Returns paginated results with quote and contact details. Use cursor-based pagination to iterate through large result sets. Supports filtering by status and contact ID." }, { "slug": "FINGERTIP_LIST_SAMPLE_BOOKINGS", "name": "List Sample Bookings", "description": "Tool to retrieve sample bookings for testing and development purposes. Use when you need to access sample booking data without requiring a specific site ID." }, { "slug": "FINGERTIP_LIST_SAMPLE_FORM_RESPONSES", "name": "List Sample Form Responses", "description": "Tool to retrieve sample form responses for a specific form template. Use when you need to fetch example responses for a form by its slug." }, { "slug": "FINGERTIP_LIST_SAMPLE_ORDERS", "name": "List Sample Orders", "description": "Tool to retrieve sample orders for testing purposes. Use when you need to access sample order data for development or testing." }, { "slug": "FINGERTIP_LIST_SAMPLE_SITE_CONTACTS", "name": "List Sample Site Contacts", "description": "Tool to retrieve sample site contacts with basic information. Use when you need example contacts for testing or demonstration purposes." }, { "slug": "FINGERTIP_LIST_SITE_CONTACTS", "name": "List Site Contacts", "description": "Tool to retrieve site contacts with basic contact information and engagement metrics. Use when you need to list contacts for a specific site with optional filtering by marketing status, search terms, or contact attributes." }, { "slug": "FINGERTIP_LIST_SITE_INVITATIONS", "name": "List Site Invitations", "description": "Tool to retrieve a paginated list of invitations for a specific site. Use when you need to check pending or accepted invitations for a site." }, { "slug": "FINGERTIP_LIST_SITE_MEMBERSHIPS", "name": "List Site Memberships", "description": "Tool to retrieve a paginated list of site memberships. Use after confirming the site ID." }, { "slug": "FINGERTIP_LIST_SITES", "name": "List Sites", "description": "Tool to retrieve a paginated list of sites accessible by the API key. Use when you need to fetch sites page by page." }, { "slug": "FINGERTIP_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a paginated list of webhooks with optional filtering and sorting. Use when you need to fetch webhooks page by page with customizable sort order." }, { "slug": "FINGERTIP_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to retrieve a paginated list of workspaces accessible to the API key. Use when you need to navigate through multiple workspaces." }, { "slug": "FINGERTIP_MARK_INVOICE_PAID", "name": "Mark Invoice as Paid", "description": "Tool to mark a store invoice as paid in Fingertip. Use when recording payment completion for an invoice. Requires the invoice UUID and the timestamp when payment was completed." }, { "slug": "FINGERTIP_PATCH_PAGE_THEME", "name": "Patch Page Theme", "description": "Apply JSON Patch operations to page theme content following RFC 6902. Use to modify theme properties like colors, fonts, and spacing without replacing the entire theme. Operations are applied sequentially and support add, remove, replace, move, copy, and test operations." }, { "slug": "FINGERTIP_SEARCH_HELP_ARTICLES", "name": "Search Help Articles", "description": "Tool to search help documentation articles by query string. Use when you need to find relevant help articles matching specific keywords or topics." }, { "slug": "FINGERTIP_SEND_INVOICE", "name": "Send Store Invoice", "description": "Tool to send a store invoice to a customer. Use when you need to deliver an invoice notification after creating or updating it." }, { "slug": "FINGERTIP_SEND_QUOTE", "name": "Send Fingertip Quote", "description": "Tool to send a store quote by its UUID. Use when you need to deliver a quote to the customer after it has been prepared." }, { "slug": "FINGERTIP_UPDATE_BLOCK", "name": "Update Block", "description": "Updates an existing block with the provided data. Allows partial updates - only fields provided in the request will be updated. Returns 404 if the block is not found." }, { "slug": "FINGERTIP_UPDATE_INVOICE_ITEM", "name": "Update Invoice Item", "description": "Tool to update an invoice item in Fingertip. Use when you need to modify the title, price, or description of an existing invoice item." }, { "slug": "FINGERTIP_UPDATE_PAGE", "name": "Update Page", "description": "Tool to update an existing Fingertip page with new data. Use when you need to modify page properties like name, description, slug, position, or media configurations. Only fields included in the request will be updated." }, { "slug": "FINGERTIP_UPDATE_PAGE_THEME", "name": "Update Page Theme", "description": "Tool to update the theme configuration for a specific page. Use when you need to modify theme settings such as making it a reusable component, linking it to a parent component theme, or updating theme content." }, { "slug": "FINGERTIP_UPDATE_QUOTE", "name": "Update Fingertip Quote", "description": "Tool to update an existing Fingertip store quote. Use when you need to modify quote items, pricing, discounts, or metadata like memo and footer. Requires the quote ID and at least one quote item." }, { "slug": "FINGERTIP_UPDATE_SITE", "name": "Update Fingertip Site", "description": "Updates an existing Fingertip site with provided partial data. Use when modifying site properties like name, description, status, or configuration. Only include fields you want to change - all fields are optional except siteId." }, { "slug": "FINGERTIP_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing Fingertip webhook subscription. Use when you need to modify the endpoint URL or change the event triggers for a webhook. Only fields included in the request will be updated." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fingertip_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Fingertip API Key", "type": "string", "description": "Your Fingertip API key, obtainable from https://fingertip.com/api-keys. Keep it secure and do not share it publicly.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "finmei", "name": "Finmei", "logo": "https://logos.composio.dev/api/finmei", "description": "Finmei is an invoicing tool designed to simplify billing processes, allowing users to create and manage invoices and track expenses efficiently.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FINMEI_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new expense with file upload (receipt or invoice). Use when you need to record an expense with supporting documentation. Requires multipart/form-data submission with file, date, total, currency, and seller information." }, { "slug": "FINMEI_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new invoice in Finmei with buyer information and line items. Use this when you need to generate an invoice for a customer. You can specify: - Buyer details (person or company) - Products/services with quantities and prices - Invoice type (regular, VAT, preliminary, credit) - Currency, dates, and custom notes Example: \"Create an invoice for Tech Solutions Inc with 3 months of support services at $99.99/month\"" }, { "slug": "FINMEI_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a specific customer by their ID. Use after confirming the correct customer_id to remove the record." }, { "slug": "FINMEI_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an invoice. Use when you need to remove an existing invoice by its ID." }, { "slug": "FINMEI_DELETE_PAYMENT", "name": "Delete Payment", "description": "Delete a payment record by its unique identifier. This action permanently removes the payment from the system. Returns success even if the payment doesn't exist (idempotent operation). Use this when you need to remove incorrect, duplicate, or obsolete payment records." }, { "slug": "FINMEI_DELETE_PRODUCT", "name": "Delete Product", "description": "Deletes a product from the Finmei catalog by its unique identifier. This operation is idempotent - calling it multiple times with the same product_id will return success. The tool attempts multiple endpoint patterns to maximize compatibility across different Finmei API deployments. Use this when you need to: - Permanently remove a product from the catalog - Clean up discontinued or obsolete products - Remove test or duplicate product entries Note: If all API endpoints return 404, the action will succeed with a message explaining that the product doesn't exist or the API doesn't support deletion. This follows idempotent DELETE semantics." }, { "slug": "FINMEI_DOWNLOAD_EXPENSE_FILE", "name": "Download Expense File", "description": "Tool to download the file associated with an expense. Returns the expense document file (PDF or image). Use when you need to retrieve the actual file content for an expense." }, { "slug": "FINMEI_DOWNLOAD_INVOICE_PDF", "name": "Download Invoice PDF", "description": "Tool to download an invoice as a PDF file. Use when you need to retrieve the PDF version of an invoice." }, { "slug": "FINMEI_GET_EXPENSE", "name": "Get Expense by ID", "description": "Tool to retrieve a single expense by its ID. Use when you need to get details about a specific expense including date, total, currency, and seller information." }, { "slug": "FINMEI_GET_INVOICE", "name": "Get Invoice by ID", "description": "Tool to retrieve a single invoice by its ID. Use when you need full invoice details including buyer, seller, items, amounts, and payment options." }, { "slug": "FINMEI_GET_PAYMENT", "name": "Get Payment", "description": "Tool to retrieve details of a specific payment by its ID. Use after creating a payment or when you need to confirm payment details." }, { "slug": "FINMEI_GET_PRODUCT", "name": "Get Product by ID", "description": "Tool to retrieve a product by its ID. Use when you need detailed information about a single product." }, { "slug": "FINMEI_GET_PROFILE", "name": "Get Profile", "description": "Tool to retrieve main information about the business to which the API token is assigned. Use when needing business ID, title, type, address, VAT code, company name, or company code." }, { "slug": "FINMEI_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to list all currencies supported by Finmei. Use when you need to retrieve available currency codes before creating transactions." }, { "slug": "FINMEI_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list all customers with optional filters and pagination. Use when needing to browse or search customer records." }, { "slug": "FINMEI_LIST_EXPENSES", "name": "List Expenses", "description": "Tool to list all expenses for the business. Use when you need a paginated list of expenses with metadata." }, { "slug": "FINMEI_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices. Use when you need a paginated list of invoices with basic details." }, { "slug": "FINMEI_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to retrieve a list of payments. Use when you need to view past payment records with optional filters and pagination." }, { "slug": "FINMEI_LIST_PRODUCTS", "name": "List Products", "description": "Tool to retrieve a list of products with optional filters and pagination. Use when you need to browse or filter the product catalog." }, { "slug": "FINMEI_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer's details. Use after confirming the customer ID to modify their information." }, { "slug": "FINMEI_UPDATE_EXPENSE", "name": "Update Expense", "description": "Tool to update an existing expense's fields including date, total, currency, and seller. Use when you need to modify expense details. To update the invoice/bill file, use the Update Expense File endpoint instead." }, { "slug": "FINMEI_UPDATE_EXPENSE_FILE", "name": "Update Expense File", "description": "Updates the file attachment of an existing expense in Finmei. Use this action when you need to attach or replace a receipt/invoice file for an expense. This endpoint is specifically for updating the file only - use the Update Expense action for updating other expense fields like amount, date, or description. The file is uploaded using multipart/form-data content type and typically should be a PDF or image file of the bill/receipt." }, { "slug": "FINMEI_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update an existing invoice in Finmei. Use when you need to modify invoice details such as buyer information, products, dates, or currency." }, { "slug": "FINMEI_UPDATE_PRODUCT", "name": "Update Product", "description": "Updates an existing product in the Finmei product catalog. Use this action when you need to modify product details such as name, description, price, or currency. You must provide the product ID and at least one field to update. The action returns the complete updated product details. Prerequisites: - The product must already exist in the system (obtain product_id from List Products action) - At least one update field (name, description, price, or currency) must be provided Note: This action will fail if the product doesn't exist or if the Finmei API instance doesn't support product management endpoints." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "finmei_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Finmei API Token", "type": "string", "description": "The API token used for authenticating requests to the Finmei API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fireberry", "name": "Fireberry", "logo": "https://logos.composio.dev/api/fireberry", "description": "Fireberry is a CRM platform that offers integrations with various tools and applications to streamline business processes.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 124, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIREBERRY_CREATE_A_COMPETITOR", "name": "Create a Competitor", "description": "Tool to create a new competitor in Fireberry. Use when you need to track competitive companies, including their products, SWOT analysis, revenue, and contact information." }, { "slug": "FIREBERRY_CREATE_A_CONTACT", "name": "Create a Fireberry contact", "description": "Tool to create a new contact in Fireberry CRM. Use when you need to add a new person to the system with contact information, billing address, and related account details." }, { "slug": "FIREBERRY_CREATE_ACTIVITY_LOG", "name": "Create an Activity Log", "description": "Create a new Activity Log record in Fireberry. Use when you need to log activities such as phone calls, meetings, or other interactions with contacts and accounts." }, { "slug": "FIREBERRY_CREATE_A_DATE_FIELD", "name": "Create a date field", "description": "Tool to create a new date field in a Fireberry object/table. Use when you need to add custom date fields to CRM objects like accounts, contacts, or other entities for tracking dates such as contract dates, anniversaries, or custom date attributes." }, { "slug": "FIREBERRY_CREATE_A_LOOKUP_FIELD", "name": "Create a Fireberry lookup field", "description": "Tool to create a lookup field in Fireberry CRM. Use when you need to add a lookup field that relates records from one object type to another." }, { "slug": "FIREBERRY_CREATE_AN_ACCOUNT", "name": "Create a new Fireberry account", "description": "Tool to create a new account in Fireberry CRM. Use when you need to add a new company or organization to the system with detailed information including contact details, billing address, and business metadata." }, { "slug": "FIREBERRY_CREATE_AN_ARTICLE", "name": "Create an Article", "description": "Tool to create a new article in Fireberry. Use when you need to add knowledge base articles, documentation, or help content to the system. The article requires a name (title) and subject (category). You can optionally provide the article body, description, owner, state, status, and view count." }, { "slug": "FIREBERRY_CREATE_AN_ASSET", "name": "Create a Fireberry asset", "description": "Creates a new asset (account product) in Fireberry. Use this to associate products or services with customer accounts, tracking details like quantity, price, installation dates, and status." }, { "slug": "FIREBERRY_CREATE_AN_OPPORTUNITY", "name": "Create an Opportunity", "description": "Tool to create a new opportunity in Fireberry CRM. Use when you need to add a new sales opportunity to track potential deals with estimated values, close dates, and associated accounts." }, { "slug": "FIREBERRY_CREATE_AN_ORDER_ITEM", "name": "Create an Order Item", "description": "Tool to create a new order item in Fireberry CRM. Use when you need to add line items or products to an existing order with details like quantity, price, and description." }, { "slug": "FIREBERRY_CREATE_A_NOTE", "name": "Create a note", "description": "Create a new note record in Fireberry. Use when you need to add notes to records such as accounts, contacts, or other objects. Supports HTML formatting and reply threads." }, { "slug": "FIREBERRY_CREATE_A_PHONE_CALL", "name": "Create a phone call", "description": "Creates a new phone call record in Fireberry's call log. Use this to log incoming, outgoing, or internal phone calls with details like duration, status, and participants." }, { "slug": "FIREBERRY_CREATE_A_PRODUCT", "name": "Create a Fireberry product", "description": "Tool to create a new product in Fireberry. Use when you need to add a new product to the system with details like catalog number, name, vendor information, and status." }, { "slug": "FIREBERRY_CREATE_A_PROJECT", "name": "Create a Project", "description": "Tool to create a new project in Fireberry CRM. Use when you need to add a new project to track work, budgets, timelines, and deliverables." }, { "slug": "FIREBERRY_CREATE_A_TASK", "name": "Create a Task", "description": "Tool to create a new task in Fireberry CRM. Use when you need to create to-do items, action items, or work assignments with tracking information." }, { "slug": "FIREBERRY_CREATE_A_TICKET", "name": "Create a Ticket", "description": "Tool to create a new ticket (case) in Fireberry CRM. Use when you need to log customer issues, support requests, or service cases with detailed tracking information." }, { "slug": "FIREBERRY_CREATE_A_URL_FIELD", "name": "Create a URL field", "description": "Tool to create a new URL field in a Fireberry object/table. Use when you need to add custom URL fields to CRM objects like accounts, contacts, or other entities for storing website links, company URLs, or other web addresses." }, { "slug": "FIREBERRY_CREATE_CAMPAIGN", "name": "Create a Campaign", "description": "Tool to create a new campaign in Fireberry. Use when you need to add a new marketing or sales campaign to track campaign activities, budgets, and outcomes." }, { "slug": "FIREBERRY_CREATE_CRM_ORDER", "name": "Create a CRM Order", "description": "Tool to create a new CRM Order in Fireberry. Use when you need to create an order with line items linked to an account." }, { "slug": "FIREBERRY_CREATE_FILE", "name": "Upload file to Fireberry record", "description": "Tool to upload a file to a specific record in Fireberry. Use when you need to attach documents, images, or other files to existing records such as accounts, contacts, or custom objects." }, { "slug": "FIREBERRY_CREATE_MEETING", "name": "Create a Fireberry meeting", "description": "Tool to create a new meeting (activity) in Fireberry. Use when you need to schedule a meeting in the CRM system. The created meeting will be returned with its system-generated ID and all default values populated." }, { "slug": "FIREBERRY_CREATE_RECORD", "name": "Create a new Fireberry record", "description": "Creates a new record in a specified Fireberry table/module. Use this tool when you need to add new records to Fireberry (e.g., create a new account, contact, or deal). The created record will be returned with its system-generated ID and all default values populated. Common use cases: - Create new accounts/companies in the CRM - Add new contacts to the system - Insert leads, opportunities, or custom records Note: Field names are case-sensitive and must match Fireberry's system field names." }, { "slug": "FIREBERRY_DELETE_ACCOUNT", "name": "Delete an Account", "description": "Tool to delete an account from Fireberry using its GUID. Use when you need to permanently remove an account record from the system." }, { "slug": "FIREBERRY_DELETE_A_COMPETITOR", "name": "Delete a Competitor", "description": "Tool to delete a competitor in Fireberry by its GUID. Use when you need to permanently remove a competitor record from the system." }, { "slug": "FIREBERRY_DELETE_A_CONTRACT", "name": "Delete a contract", "description": "Tool to delete a contract in Fireberry by its GUID. Use when you need to permanently remove a contract record from the system." }, { "slug": "FIREBERRY_DELETE_ACTIVITY_LOG", "name": "Delete an Activity Log", "description": "Delete an activity log by its GUID. Use when you need to remove a specific activity log record from Fireberry. The activity log ID must be a valid GUID obtained from querying activity logs." }, { "slug": "FIREBERRY_DELETE_A_CUSTOM_FIELD", "name": "Delete a custom field", "description": "Tool to delete a custom field from a Fireberry object/table. Use when you need to permanently remove a custom field from CRM objects like accounts, contacts, or other entities." }, { "slug": "FIREBERRY_DELETE_AN_ARTICLE", "name": "Delete an Article", "description": "Tool to delete an article from Fireberry by its GUID. Use when you need to permanently remove an article record from the system." }, { "slug": "FIREBERRY_DELETE_AN_ASSET", "name": "Delete a Fireberry asset", "description": "Delete an asset from Fireberry by its unique identifier. Use this tool when you need to remove an asset record from the Fireberry system. The asset is permanently deleted and cannot be recovered once this operation completes successfully." }, { "slug": "FIREBERRY_DELETE_AN_OPPORTUNITY", "name": "Delete an Opportunity", "description": "Tool to delete an opportunity in Fireberry by its GUID. Use when you need to permanently remove an opportunity record from the system." }, { "slug": "FIREBERRY_DELETE_AN_ORDER_ITEM", "name": "Delete an Order Item", "description": "Tool to delete an order item in Fireberry by its GUID. Use when you need to permanently remove an order item (line item/product) from an order." }, { "slug": "FIREBERRY_DELETE_A_NOTE", "name": "Delete a Note", "description": "Tool to delete a note from Fireberry using its GUID. Use when you need to remove a specific note record from the system." }, { "slug": "FIREBERRY_DELETE_A_PHONE_CALL", "name": "Delete a Phone Call", "description": "Tool to delete a phone call record from Fireberry using its GUID. Use when you need to remove a specific phone call entry from the system." }, { "slug": "FIREBERRY_DELETE_A_PROJECT", "name": "Delete a project", "description": "Tool to delete a project from Fireberry using its GUID. Use when you need to permanently remove a project record from the system." }, { "slug": "FIREBERRY_DELETE_A_TASK", "name": "Delete a task", "description": "Tool to delete a task in Fireberry by its GUID. Use when you need to permanently remove a task record from the system." }, { "slug": "FIREBERRY_DELETE_A_TICKET", "name": "Delete a ticket", "description": "Tool to delete a ticket (case) from Fireberry using its GUID. Use when you need to permanently remove a ticket record from the system." }, { "slug": "FIREBERRY_DELETE_BUSINESS_UNIT", "name": "Delete a Business Unit", "description": "Tool to delete a Business Unit in Fireberry using its GUID. Use when you need to remove a Business Unit from the system permanently. Note: This is a destructive operation that cannot be undone." }, { "slug": "FIREBERRY_DELETE_CAMPAIGN", "name": "Delete a Fireberry campaign", "description": "Tool to delete a campaign from Fireberry. Use when you need to permanently remove a campaign record from the system. The deletion is permanent and cannot be undone." }, { "slug": "FIREBERRY_DELETE_CONTACT", "name": "Delete a Contact", "description": "Tool to delete a contact from Fireberry using its GUID. Use when you need to permanently remove a contact record from the system." }, { "slug": "FIREBERRY_DELETE_CRM_USER", "name": "Delete a CRM User", "description": "Tool to delete a CRM user from Fireberry using its GUID. Use when you need to permanently remove a CRM user record from the system." }, { "slug": "FIREBERRY_DELETE_MEETING", "name": "Delete a Meeting", "description": "Tool to delete a meeting activity from Fireberry by its GUID. Use when you need to remove an existing meeting record from the system." }, { "slug": "FIREBERRY_DELETE_PRODUCT", "name": "Delete a product", "description": "Tool to delete a product in Fireberry by its GUID. Use when you need to permanently remove a product record from the system." }, { "slug": "FIREBERRY_GET_ACCOUNT", "name": "Get an Account", "description": "Tool to retrieve a specific account record by its GUID. Use when you need to fetch detailed information about an existing account in Fireberry." }, { "slug": "FIREBERRY_GET_A_CRMORDER", "name": "Get a CRM Order", "description": "Tool to retrieve a specific CRM Order from Fireberry by its GUID. Use when you need to get detailed information about a particular order." }, { "slug": "FIREBERRY_GET_ALL_ACCOUNTS3", "name": "Get All Accounts", "description": "Tool to retrieve all accounts from Fireberry CRM with pagination support. Use when you need to list or search through account records in the system. Returns detailed account information including names, contact details, revenue, and custom fields." }, { "slug": "FIREBERRY_GET_ALL_ACTIVITY_LOGS2", "name": "Get All Activity Logs (v2)", "description": "Tool to retrieve all activity logs from Fireberry using v2 API endpoint with pagination support. Use when you need to list or search through activity logs such as calls, meetings, tasks, or other tracked activities." }, { "slug": "FIREBERRY_GET_ALL_ARTICLES", "name": "Get all articles from Fireberry", "description": "Tool to retrieve all articles from Fireberry with pagination support. Use when you need to list or search through knowledge base articles. Returns articles with metadata including articlename, articlesubject, articlebody, and other fields." }, { "slug": "FIREBERRY_GET_ALL_ASSETS2", "name": "Get All Assets", "description": "Tool to retrieve all assets (account products) from Fireberry with pagination support. Use when you need to list assets associated with accounts." }, { "slug": "FIREBERRY_GET_ALL_BUSINESS_UNITS2", "name": "Get All Business Units (v2)", "description": "Tool to retrieve all business units from Fireberry using v2 API endpoint with pagination support. Use when you need to list or browse business units in the organization." }, { "slug": "FIREBERRY_GET_ALL_CAMPAIGNS", "name": "Get All Campaigns", "description": "Tool to retrieve all campaigns from Fireberry with pagination support. Use when you need to list campaigns, view campaign details, or iterate through campaign records in the CRM." }, { "slug": "FIREBERRY_GET_ALL_COMPETITORS2", "name": "Get All Competitors (v2)", "description": "Tool to retrieve all competitors from Fireberry with pagination support. Use when you need to list or browse competitors in the CRM with detailed field information." }, { "slug": "FIREBERRY_GET_ALL_CONTACTS", "name": "Get All Contacts", "description": "Tool to retrieve all contacts from Fireberry with pagination support. Use when you need to list or browse contacts in the CRM." }, { "slug": "FIREBERRY_GET_ALL_CONTRACTS2", "name": "Get All Contracts", "description": "Tool to retrieve all contracts from Fireberry with pagination support. Use when you need to list or browse contracts in the CRM." }, { "slug": "FIREBERRY_GET_ALL_CUSTOM_OBJECT_RECORDS", "name": "Get All Custom Object Records", "description": "Tool to retrieve all records from a specified custom object in Fireberry with pagination support. Use when you need to list or browse records from custom objects or standard objects (Accounts, Cases, Tasks) in the CRM." }, { "slug": "FIREBERRY_GET_ALL_MEETINGS3", "name": "Get All Meetings", "description": "Tool to retrieve all meetings (activities) from Fireberry CRM with pagination support. Use when you need to list or search through meeting records in the system. Meetings are stored as activities with activityid as the primary key." }, { "slug": "FIREBERRY_GET_ALL_NOTES2", "name": "Get All Notes (Detailed)", "description": "Tool to retrieve all notes from Fireberry with detailed field schema and pagination support. Use when you need to list notes attached to records in the CRM with full field details." }, { "slug": "FIREBERRY_GET_ALL_OBJECTS", "name": "Get All Objects", "description": "Tool to retrieve all object type metadata from Fireberry. Use when you need to discover available object types in the system." }, { "slug": "FIREBERRY_GET_ALL_OPPORTUNITIES", "name": "Get All Opportunities (Deprecated)", "description": "DEPRECATED: Use FIREBERRY_LIST_ALL_OPPORTUNITIES2 instead. Tool to retrieve all opportunities from Fireberry with pagination support. Use when you need to list or browse opportunities in the CRM." }, { "slug": "FIREBERRY_GET_ALL_ORDER_ITEMS", "name": "Get All Order Items", "description": "Tool to retrieve all order items from Fireberry with pagination support. Use when you need to list or browse order items in the CRM." }, { "slug": "FIREBERRY_GET_ALL_ORDERS", "name": "Get All Orders", "description": "Tool to retrieve all orders from Fireberry with pagination support. Use when you need to list or browse orders in the CRM." }, { "slug": "FIREBERRY_GET_ALL_PHONE_CALLS", "name": "Get All Phone Calls", "description": "Tool to retrieve all phone call records from Fireberry with pagination support. Use when you need to fetch call logs, analyze call history, or retrieve phone call details from the CRM." }, { "slug": "FIREBERRY_GET_ALL_PROJECTS2", "name": "Get All Projects (v2)", "description": "Tool to retrieve all projects from Fireberry with pagination support. Use when you need to list or browse projects in the CRM with detailed field information." }, { "slug": "FIREBERRY_GET_ALL_TASKS", "name": "Get All Tasks", "description": "Tool to retrieve all tasks from Fireberry with pagination support. Use when you need to list or browse tasks in the CRM." }, { "slug": "FIREBERRY_GET_ALL_TICKETS2", "name": "Get All Tickets", "description": "Tool to retrieve all ticket records (cases) from Fireberry with pagination support. Use when you need to list tickets, browse support cases, or retrieve ticket details from the CRM." }, { "slug": "FIREBERRY_GET_ALL_USERS", "name": "Get All Users", "description": "Tool to retrieve all CRM users from Fireberry with pagination support. Use when you need to list or browse users in the CRM system." }, { "slug": "FIREBERRY_GET_A_MEETING", "name": "Get a Meeting", "description": "Tool to retrieve a specific meeting/activity record by its unique identifier (GUID). Use when you need to fetch details about a particular meeting, call, or activity including its subject, description, related contacts, and status." }, { "slug": "FIREBERRY_GET_AN_ACTIVITY_LOG", "name": "Get an Activity Log", "description": "Tool to retrieve a specific activity log record from Fireberry by its GUID. Use when you need to fetch detailed information about a particular activity log entry." }, { "slug": "FIREBERRY_GET_AN_ARTICLE", "name": "Get an Article", "description": "Tool to retrieve a specific article from Fireberry by its GUID. Use when you need to fetch detailed information about a particular article including its name, subject, body content, description, owner, state, status, and view count." }, { "slug": "FIREBERRY_GET_AN_ASSET", "name": "Get an Asset", "description": "Tool to retrieve a specific asset record by its GUID. Use when you need to get detailed information about an asset." }, { "slug": "FIREBERRY_GET_AN_OBJECT", "name": "Get an Object", "description": "Tool to retrieve metadata for a specific object by its ID. Use when you need to get information about an object's name, type, and system name." }, { "slug": "FIREBERRY_GET_AN_OBJECTS_FIELDS", "name": "Get an Object's Fields", "description": "Tool to retrieve metadata about fields for a specific object type in Fireberry. Use when you need to discover available fields, field types, and field labels for an object." }, { "slug": "FIREBERRY_GET_AN_OPPORTUNITY", "name": "Get an Opportunity", "description": "Tool to retrieve a specific opportunity record by its GUID. Use when you need to fetch detailed information about an existing sales opportunity in Fireberry." }, { "slug": "FIREBERRY_GET_AN_ORDER_ITEM", "name": "Get an Order Item", "description": "Tool to retrieve a specific order item record by its GUID. Use when you need to get detailed information about an order item." }, { "slug": "FIREBERRY_GET_A_NOTE", "name": "Get a Note", "description": "Tool to retrieve a specific note record by its GUID. Use when you need to fetch detailed information about a note including its content, related object, parent note, and timestamps." }, { "slug": "FIREBERRY_GET_A_PHONE_CALL", "name": "Get a phone call record", "description": "Tool to retrieve a specific phone call record from Fireberry by its GUID. Use when you need to fetch detailed information about a particular call from the call log." }, { "slug": "FIREBERRY_GET_A_PRODUCT", "name": "Get a Product", "description": "Tool to retrieve a specific product record by its GUID. Use when you need to get detailed information about a product." }, { "slug": "FIREBERRY_GET_A_PROJECT", "name": "Get a Project", "description": "Tool to retrieve a specific project from Fireberry by its GUID. Use when you need to get detailed information about a particular project." }, { "slug": "FIREBERRY_GET_A_TASK", "name": "Get a Task", "description": "Tool to retrieve a specific task record by its GUID. Use when you need to get detailed information about an existing task in Fireberry." }, { "slug": "FIREBERRY_GET_A_TICKET", "name": "Get a Ticket", "description": "Tool to retrieve a specific ticket (case) record by its GUID. Use when you need to get detailed information about an existing support ticket or case in Fireberry." }, { "slug": "FIREBERRY_GET_CAMPAIGN", "name": "Get Campaign by ID", "description": "Tool to retrieve a single campaign by its GUID. Use when you need to fetch detailed information about a specific campaign." }, { "slug": "FIREBERRY_GET_COMPETITOR", "name": "Get a Competitor", "description": "Tool to retrieve a specific competitor record by its GUID. Use when you need to fetch detailed information about an existing competitor in Fireberry." }, { "slug": "FIREBERRY_GET_CONTACT", "name": "Get a Contact", "description": "Tool to retrieve a specific contact record by its GUID. Use when you need to fetch detailed information about an existing contact in Fireberry." }, { "slug": "FIREBERRY_GET_CUSTOM_OBJECT_RECORD", "name": "Get Custom Object Record", "description": "Tool to retrieve a specific custom object record by its GUID and object code. Use when you need to fetch detailed information about an existing custom object record in Fireberry." }, { "slug": "FIREBERRY_GET_FIELD_DETAILS", "name": "Get Field Details", "description": "Tool to retrieve detailed metadata for a specific field in a Fireberry object/table. Use when you need to understand field properties, types, or labels for a given field in an object." }, { "slug": "FIREBERRY_GET_OBJECT_FIELD_VALUES", "name": "Get Object Field Values", "description": "Tool to retrieve picklist field values from the metadata endpoint. Use when you need to get all available options for a picklist field including their IDs, labels, and active status." }, { "slug": "FIREBERRY_GET_ORDERS_ITEMS", "name": "Get Items for an Order", "description": "Tool to retrieve all items for a specific order from Fireberry. Use when you need to get the line items, products, quantities, and pricing details associated with a particular order." }, { "slug": "FIREBERRY_GET_PICKLIST_FIELD_VALUES", "name": "Get Picklist Field Values", "description": "Tool to retrieve picklist field values from Fireberry metadata API. Use when you need to get all available options for a specific picklist field on an object type." }, { "slug": "FIREBERRY_GET_PICKLIST_VALUES", "name": "Get Picklist Values", "description": "Tool to retrieve all possible picklist (dropdown) values for a specific field by querying records and extracting unique values. Use when you need to discover available options for a picklist field in a record type." }, { "slug": "FIREBERRY_GET_RELATED_RECORDS", "name": "Get Related Records", "description": "Tool to retrieve related records for a specific object in Fireberry. Use when you need to fetch records that are related to a primary record (e.g., contacts for an account, opportunities for a contact)." }, { "slug": "FIREBERRY_GET_TASK", "name": "Get Fireberry Task by ID", "description": "Tool to retrieve a single task record by its unique ID (GUID). Use when you need to fetch complete details of a specific task from Fireberry." }, { "slug": "FIREBERRY_GET_USER", "name": "Get a Fireberry user by ID", "description": "Tool to retrieve a single user by their unique ID from Fireberry. Use when you need to fetch details about a specific user including their name, email, role, and status." }, { "slug": "FIREBERRY_LIST_ALL_OPPORTUNITIES2", "name": "List All Opportunities", "description": "Tool to retrieve all opportunities from Fireberry CRM with pagination support. Use when you need to list or search through opportunity records in the system." }, { "slug": "FIREBERRY_LIST_ALL_PRODUCTS2", "name": "List All Products", "description": "Tool to retrieve all products from Fireberry CRM with pagination support. Use when you need to list, browse, or search through product records in the system." }, { "slug": "FIREBERRY_QUERY_RECORDS", "name": "Fireberry: Query Records", "description": "Query and retrieve records from a Fireberry module with optional filtering, sorting, and pagination. Use this tool to: - List all records from a module (Accounts, Contacts, etc.) - Search for specific records using filter conditions - Sort results by one or more fields - Paginate through large result sets The tool returns record data with Fireberry system field names (e.g., 'accountname', 'emailaddress1', 'createdon')." }, { "slug": "FIREBERRY_QUERY_RECORDS2", "name": "Query Fireberry records with filters", "description": "Query records in any Fireberry object with advanced filtering, sorting, and pagination. Use the query field to specify filter conditions that records must meet to be returned. This action provides direct access to Fireberry's query API endpoint with support for complex filter expressions, field selection, and result ordering. Ideal for searching specific records, building reports, or retrieving filtered datasets." }, { "slug": "FIREBERRY_UPDATE_A_BUSINESS_UNIT", "name": "Update a Business Unit", "description": "Tool to update an existing business unit in Fireberry. Use when you need to modify business unit details such as name, manager, address, or organizational hierarchy. Only the fields you provide will be updated; other fields remain unchanged." }, { "slug": "FIREBERRY_UPDATE_ACCOUNT", "name": "Update Fireberry Account", "description": "Updates an existing account record in Fireberry with new field values. Use this tool when you need to modify account information such as name, contact details, revenue, or other attributes. The account is identified by its GUID, and only the fields provided in the request will be updated." }, { "slug": "FIREBERRY_UPDATE_A_COMPETITOR", "name": "Update a Fireberry Competitor", "description": "Updates an existing competitor record in Fireberry by GUID. Use this tool when you need to modify competitor information such as name, description, website, SWOT analysis, or contact details. The competitor is identified by its unique GUID, and you can update any combination of available fields. Common use cases: - Update competitor contact information (address, website) - Modify SWOT analysis (strengths, weaknesses, opportunities, threats) - Update competitor metrics (revenue, number of employees) - Change competitor product information" }, { "slug": "FIREBERRY_UPDATE_A_CONTACT", "name": "Update a Fireberry contact", "description": "Tool to update an existing contact in Fireberry CRM. Use when you need to modify contact information, billing address, shipping address, or related account details for an existing contact." }, { "slug": "FIREBERRY_UPDATE_A_CONTRACT", "name": "Update a Contract", "description": "Tool to update an existing contract in Fireberry. Use when you need to modify contract details such as name, dates, pricing, or service levels." }, { "slug": "FIREBERRY_UPDATE_ACTIVITY_LOG", "name": "Update an Activity Log", "description": "Update an existing Activity Log record in Fireberry. Use this tool when you need to modify fields of an existing activity log entry such as updating the description, changing the call destination, or updating related contact/object references. At least one field besides 'id' should be provided to update. Important: If you set the objectid field, you MUST also set the objecttypecode field." }, { "slug": "FIREBERRY_UPDATE_A_DATE_FIELD", "name": "Update a Date Field", "description": "Tool to update a date field configuration in Fireberry. Use when you need to modify date field properties such as label, default value, tracking settings, or additional properties (required/readonly)." }, { "slug": "FIREBERRY_UPDATE_A_DATE_TIME_FIELD", "name": "Update a Date & Time Field", "description": "Tool to update a Date & Time field's properties in Fireberry. Use when you need to modify field settings such as label, default value, required/readonly status, or enable change tracking." }, { "slug": "FIREBERRY_UPDATE_A_FORMULA_FIELD", "name": "Update a Formula Field", "description": "Tool to update a formula field in Fireberry CRM. Use when you need to modify the formula calculation, field type, display label, or precision of an existing formula field." }, { "slug": "FIREBERRY_UPDATE_A_HTML_FIELD", "name": "Update an HTML Field", "description": "Tool to update an HTML field configuration in Fireberry. Use when you need to modify HTML field properties such as label, tracking settings, or additional properties like required/readonly status." }, { "slug": "FIREBERRY_UPDATE_A_MEETING", "name": "Update a Fireberry Meeting", "description": "Tool to update an existing meeting (activity) in Fireberry. Use when you need to modify meeting details such as subject, description, time, location, or related records." }, { "slug": "FIREBERRY_UPDATE_AN_ARTICLE", "name": "Update a Fireberry article", "description": "Updates an existing article in Fireberry. Use this to modify article name, subject, body, description, or other article metadata. The article is identified by its GUID, and both articlename and articlesubject are required fields." }, { "slug": "FIREBERRY_UPDATE_AN_ASSET", "name": "Update an Asset", "description": "Update an existing asset (accountproduct) in Fireberry. Use when you need to modify asset details such as quantity, price, description, or other attributes." }, { "slug": "FIREBERRY_UPDATE_AN_EMAIL_ADDRESS_FIELD", "name": "Update an Email Address Field", "description": "Tool to update the configuration of an email address field in Fireberry. Use when you need to modify field properties such as label, required status, autocomplete behavior, or validation rules." }, { "slug": "FIREBERRY_UPDATE_AN_OPPORTUNITY", "name": "Update an Opportunity", "description": "Tool to update an existing opportunity in Fireberry CRM. Use when you need to modify opportunity details such as name, estimated value, close date, status, or associated account." }, { "slug": "FIREBERRY_UPDATE_AN_ORDER_ITEM", "name": "Update an Order Item", "description": "Tool to update an existing order item in Fireberry. Use when you need to modify order item details such as product name, pricing, quantity, description, or related order." }, { "slug": "FIREBERRY_UPDATE_A_NUMBER_FIELD", "name": "Update a Number Field", "description": "Tool to update a number field configuration in Fireberry. Use when you need to modify number field properties such as label, precision, default value, tracking settings, or additional properties (required/readonly)." }, { "slug": "FIREBERRY_UPDATE_A_PHONE_NUMBER_FIELD", "name": "Update a Phone Number Field", "description": "Tool to update a phone number field configuration in Fireberry. Use when you need to modify phone number field properties such as label, display name, description, or required status." }, { "slug": "FIREBERRY_UPDATE_A_PRODUCT", "name": "Update a Product", "description": "Tool to update an existing product in Fireberry. Use when you need to modify product details such as name, catalog number, vendor information, or status." }, { "slug": "FIREBERRY_UPDATE_A_PROJECT", "name": "Update a Project", "description": "Tool to update an existing project in Fireberry CRM. Use when you need to modify project details such as name, budget, due date, priority, or status." }, { "slug": "FIREBERRY_UPDATE_A_TEXT_AREA_FIELD", "name": "Update a Text Area Field", "description": "Tool to update a Text Area field's properties in Fireberry. Use when you need to modify field settings such as label, default value, required/readonly status, or enable change tracking." }, { "slug": "FIREBERRY_UPDATE_A_TEXT_FIELD", "name": "Update a Text Field", "description": "Tool to update a text field configuration in Fireberry. Use when you need to modify text field properties such as label, default value, max length, autocomplete settings, tracking settings, or additional properties (required/readonly)." }, { "slug": "FIREBERRY_UPDATE_A_TICKET", "name": "Update a Ticket", "description": "Tool to update an existing ticket (case) in Fireberry. Use when you need to modify ticket details such as title, status, priority, assignment, or description." }, { "slug": "FIREBERRY_UPDATE_A_URL_FIELD", "name": "Update a URL Field", "description": "Tool to update a URL field configuration in Fireberry. Use when you need to modify URL field properties such as label, max length, default value, autocomplete settings, tracking, or additional properties (required/readonly)." }, { "slug": "FIREBERRY_UPDATE_A_USER", "name": "Update a User", "description": "Tool to update an existing user in Fireberry CRM. Use when you need to modify user details such as name, role, language preferences, or contact information." }, { "slug": "FIREBERRY_UPDATE_CAMPAIGN", "name": "Update a Fireberry Campaign", "description": "Tool to update an existing campaign in Fireberry by its GUID. Use when you need to modify campaign details such as name, description, budget, dates, or status." }, { "slug": "FIREBERRY_UPDATE_CRM_ORDER", "name": "Update a CRM Order", "description": "Tool to update an existing CRM order in Fireberry. Use when you need to modify order details such as account information, items, pricing, discounts, or contact information." }, { "slug": "FIREBERRY_UPDATE_PHONE_CALL", "name": "Update a phone call record", "description": "Tool to update an existing phone call record in Fireberry. Use when you need to modify call details such as status, type, duration, or associated contacts/accounts." }, { "slug": "FIREBERRY_UPDATE_TASK2", "name": "Update a Task (V2)", "description": "Tool to update an existing task using Fireberry v2 API. Use when you need to modify task details such as subject, status, priority, description, owner, or due date." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fireberry_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Fireberry API Access Token", "type": "string", "description": "Your personal Fireberry API token. In Fireberry, click your profile picture → Profile → Account Security → API Access Token, then copy it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "firecrawl2", "name": "Firecrawl2", "logo": "https://logos.composio.dev/api/firecrawl2", "description": "Web scraping and crawling API that converts any URL into clean, LLM-ready markdown or structured data", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "firecrawl2_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Firecrawl API key (format: fc-xxxxx)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "firmao", "name": "Firmao", "logo": "https://logos.composio.dev/api/firmao", "description": "Firmao is a business information platform offering data and insights on companies, industries, and markets, providing tools for company research, industry analysis, and market intelligence.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIRMAO_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new sales or purchase invoice in Firmao CRM. This action generates an invoice transaction with line items, customer information, pricing details, and payment terms. It can auto-create customers if needed and supports automatic invoice numbering." }, { "slug": "FIRMAO_DELETE_COMPANY_SETTING", "name": "Delete Company Setting", "description": "Deletes a company setting by its unique identifier. Returns success status and details about the deletion attempt. Use this when you need to permanently remove a specific company setting configuration." }, { "slug": "FIRMAO_DELETE_CONTACT", "name": "Delete Contact", "description": "Soft-deletes a contact in Firmao CRM by marking it as deleted (sets deleted=true). This action sends a PUT request to mark the contact as deleted without permanently removing it from the system. The contact can potentially be restored later through the Firmao interface. Returns a changelog documenting the deletion operation. If the API returns errors (e.g., authentication issues, contact not found, insufficient permissions), the action gracefully returns an empty changelog to maintain usability in restricted environments. Use this when you need to remove a contact from active use in Firmao CRM." }, { "slug": "FIRMAO_DELETE_INVOICE", "name": "Delete Invoice", "description": "Soft-deletes a Firmao invoice by marking it as deleted. This action sends a PUT request to mark the invoice's 'deleted' field as true. The invoice record remains in the system but is marked as deleted. Returns a changelog documenting the deletion operation. If the API returns unexpected response formats, the action normalizes them to the expected schema." }, { "slug": "FIRMAO_DELETE_OFFER", "name": "Delete Offer", "description": "Soft-delete an offer in Firmao by marking it as deleted. The offer record is not permanently removed but is marked with deleted=true, making it inactive in the system. Use this action when you need to remove an offer without permanently destroying the record. The action returns a changelog documenting the deletion operation." }, { "slug": "FIRMAO_GET_INVOICE", "name": "Get Invoice", "description": "Retrieve detailed information about a specific invoice by its ID. Returns comprehensive invoice data including customer details, line items, payment status, pricing information, and metadata. Use this when you need complete invoice details for a known invoice ID." }, { "slug": "FIRMAO_GET_OFFER", "name": "Get Offer", "description": "Retrieve detailed information about a specific offer from Firmao CRM by its unique ID. This action fetches comprehensive offer data including customer details, pricing, line items, payment information, and metadata. Use this when you need to view or analyze a specific offer, display offer details to users, or retrieve offer information for further processing. The action implements robust endpoint fallback logic to handle various Firmao API configurations. Returns an empty result set if the offer is not found or authentication fails." }, { "slug": "FIRMAO_GET_TASK", "name": "Get Task", "description": "Retrieves detailed information about a specific task by its unique ID. Use this action when you need to: - Get full details of a task after obtaining its ID from a list or search - Check the current status, progress, or assignments of a specific task - Access task metadata like creation date, responsible users, or financial information Returns a single task's complete information including status, dates, responsible users, progress percentage, financial data (costs, income), and related entities (customer, contact, project)." }, { "slug": "FIRMAO_LIST_COMPANY_SETTINGS", "name": "List Company Settings", "description": "Lists all company settings from Firmao. Company settings are key-value configuration pairs that store custom configurations for companies. Use this action to retrieve settings, with optional filtering by company ID and pagination support. Returns an empty list if no settings exist or the endpoint is not available in the current Firmao deployment." }, { "slug": "FIRMAO_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices. Use when retrieving a list of invoices with optional pagination and filtering." }, { "slug": "FIRMAO_LIST_TASKS", "name": "List Tasks", "description": "Retrieves a paginated list of tasks from Firmao. Returns task details including status, priority, dates, responsible users, tags, and financial data. Supports sorting, filtering by various fields, and configurable detail levels (MINIMAL, MEDIUM, FULL)." }, { "slug": "FIRMAO_UPDATE_CONTACT", "name": "Update Contact in Firmao", "description": "Updates an existing contact in Firmao CRM by its ID. Use this tool to modify contact information such as name, email, phone, position, or customer association. Only include the fields you want to change - omitted fields will remain unchanged. Returns a changelog of the modifications made. Prerequisites: - The contact ID must exist in your Firmao organization - If updating the customer field, the customer ID must already exist" }, { "slug": "FIRMAO_UPDATE_OFFER", "name": "Update Offer", "description": "Updates an existing offer/quote in Firmao by ID. Modifies specified fields while preserving unspecified ones. Returns a changelog detailing what changed. Supports partial updates - only provide fields you want to change." }, { "slug": "FIRMAO_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task. Use when you need to modify one or more fields of a task after confirming its current details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "firmao_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization ID", "type": "string", "description": "The unique identifier for your Firmao organization, used to construct the API endpoint URL.", "required": true, "default": null }, { "name": "basic_encoded", "displayName": "API Login and Password", "type": "string", "description": "Base64-encoded value of your Firmao API login and password (username:password), used for Basic Authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fixer", "name": "Fixer", "logo": "https://logos.composio.dev/api/fixer", "description": "Fixer is a currency data API providing real-time and historical exchange rates for 170 world currencies.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIXER_GET_HISTORICAL_RATES", "name": "Get Historical Rates", "description": "Tool to get historical exchange rate data for a specific date. Use when you need past currency rates for all or selected currencies." }, { "slug": "FIXER_GET_LATEST_RATES", "name": "Get Latest Exchange Rates", "description": "Tool to get real-time exchange rate data for all available or specified currencies. Use when you need current forex rates before performing currency conversions." }, { "slug": "FIXER_GET_SUPPORTED_SYMBOLS", "name": "Get Supported Symbols", "description": "Tool to retrieve all supported currency symbols and their full names. Use when you need to display or validate available currencies before performing conversions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fixer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Fixer API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fixer_io", "name": "Fixer.io", "logo": "https://logos.composio.dev/api/fixer_io", "description": "Fixer.io is a simple and lightweight API for current and historical foreign exchange rates and currency conversion.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FIXER_IO_CONVERT_CURRENCY", "name": "Convert Currency", "description": "Tool to convert an amount from one currency to another. Use when you need current or historical exchange rates. Specify `date` for historical rates." }, { "slug": "FIXER_IO_GET_FLUCTUATION", "name": "Get Currency Fluctuations", "description": "Tool to fetch exchange rate fluctuations between two dates. Use when you need day-to-day currency rate changes." }, { "slug": "FIXER_IO_GET_HISTORICAL_RATES", "name": "Get Historical Rates", "description": "Fetch historical exchange rates for a specific date. Returns end-of-day (EOD) exchange rates for any date back to January 1, 1999. Use this when you need past currency conversion rates or historical financial data." }, { "slug": "FIXER_IO_GET_SUPPORTED_SYMBOLS", "name": "Get Supported Symbols", "description": "Tool to retrieve the list of all available currency symbols and their corresponding names. Use when you need to fetch and display supported currency codes." }, { "slug": "FIXER_IO_GET_TIME_SERIES", "name": "Get Time Series", "description": "Retrieves daily foreign exchange rates for a date range. Returns a time series of exchange rates for each day between start_date and end_date (inclusive, max 365 days). The rates show how much of each currency equals one unit of the base currency." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fixer_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Fixer.io API Key", "type": "string", "description": "The API key provided by Fixer.io to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "flexisign", "name": "Flexisign", "logo": "https://logos.composio.dev/api/flexisign", "description": "FlexiSign is a privacy and security-focused e-signature tool that simplifies how you sign, send, and manage documents.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FLEXISIGN_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all available document templates. Use when you need to retrieve and display templates from your FlexiSign account after connecting." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "flexisign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "FlexiSign API Key", "type": "string", "description": "Your FlexiSign API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "flowiseai", "name": "Flowiseai", "logo": "https://logos.composio.dev/api/flowiseai", "description": "FlowiseAI is an open-source generative AI development platform for building AI Agents and LLM workflows.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FLOWISEAI_CLONE_CHATFLOW", "name": "Clone Chatflow", "description": "Tool to clone an existing chatflow. Use when you need to duplicate a chatflow by its ID." }, { "slug": "FLOWISEAI_CREATE_CHATFLOW", "name": "Create Chatflow", "description": "Creates a new chatflow in FlowiseAI. Chatflows are visual workflows that define AI agent behavior using nodes and edges. Use this to programmatically create single-agent (CHATFLOW) or multi-agent (MULTIAGENT) flows. Only 'name' is required; type defaults to 'CHATFLOW' and flowData defaults to an empty flow structure." }, { "slug": "FLOWISEAI_CREATE_DOCUMENT_STORE", "name": "Create Document Store", "description": "Creates a new document store in FlowiseAI. Document stores are used to manage embeddings and vector data for AI applications. Use this to programmatically create storage for documents that will be embedded and searched." }, { "slug": "FLOWISEAI_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead in a chatflow. Use when you need to capture lead information from a chat session for follow-up or CRM integration." }, { "slug": "FLOWISEAI_CREATE_TOOL", "name": "Create Tool", "description": "Tool to create a new FlowiseAI tool. Use when you need to create a custom tool with specific name, description, and color. Optionally provide icon URL, JSON schema, or JavaScript function code." }, { "slug": "FLOWISEAI_CREATE_VARIABLE", "name": "Create Variable", "description": "Creates a new variable in FlowiseAI. Variables are used to store configuration values, API keys, and other data that can be referenced across chatflows. Use this to programmatically create string or number variables with optional values." }, { "slug": "FLOWISEAI_DELETE_CHATFLOW", "name": "Delete Chatflow", "description": "Tool to delete a chatflow by its ID. Use after confirming the chatflow ID is correct." }, { "slug": "FLOWISEAI_DELETE_CHAT_MESSAGES", "name": "Delete Chat Messages", "description": "Tool to delete chat messages for a specific chatflow. Use when you need to remove messages based on optional filters. Use after confirming the chatflow ID." }, { "slug": "FLOWISEAI_DELETE_DOCUMENT_STORE", "name": "Delete Document Store", "description": "Tool to delete a specific document store by its ID. Use when you need to permanently remove a document store. This action is destructive and cannot be undone." }, { "slug": "FLOWISEAI_DELETE_TOOL_BY_ID", "name": "Delete Tool By ID", "description": "Permanently deletes a FlowiseAI tool by its unique ID. This action is destructive and cannot be undone. Use FLOWISEAI_LIST_ALL_TOOLS first to verify the correct tool ID before deletion." }, { "slug": "FLOWISEAI_DELETE_VARIABLE", "name": "Delete Variable", "description": "Tool to delete a variable by its unique ID. Use when you need to permanently remove a variable from FlowiseAI." }, { "slug": "FLOWISEAI_EDIT_DOCUMENT_STORE_FILE_CHUNK", "name": "Edit Document Store File Chunk", "description": "Tool to update a specific chunk in a FlowiseAI document store. Use when you need to modify the content or metadata of an existing chunk. At least one of pageContent or metadata must be provided." }, { "slug": "FLOWISEAI_GET_ALL_CHATFLOWS", "name": "Get All Chatflows", "description": "Retrieves all chatflows from the authenticated FlowiseAI account. Use this to list available chatflows, get their IDs for subsequent operations (like update, delete, export), or check chatflow deployment status. Returns an empty list if no chatflows exist." }, { "slug": "FLOWISEAI_GET_ALL_CHAT_MESSAGE_FEEDBACK", "name": "Get All Chat Message Feedback", "description": "Tool to list all chat message feedbacks for a chatflow. Use when you need to view feedback given on messages in a specific chatflow." }, { "slug": "FLOWISEAI_GET_ALL_LEADS_FOR_CHATFLOW", "name": "Get All Leads for Chatflow", "description": "Tool to retrieve all leads for a specific chatflow. Use when you need to see lead information collected from a chatflow's interactions." }, { "slug": "FLOWISEAI_GET_ALL_UPSERT_HISTORY", "name": "Get All Upsert History", "description": "Tool to retrieve all upsert history records for a specific chatflow. Use when you need to view the history of upsert operations." }, { "slug": "FLOWISEAI_GET_ALL_VARIABLES", "name": "Get All Variables", "description": "Tool to retrieve a list of all variables. Use when you need to list all variables available in the FlowiseAI workspace. Returns an empty list if no variables exist." }, { "slug": "FLOWISEAI_GET_DOCUMENT_STORE_BY_ID", "name": "Get Document Store By ID", "description": "Tool to retrieve a document store by its ID. Use when you have a document store ID and need its full details including configuration and status." }, { "slug": "FLOWISEAI_GET_DOCUMENT_STORE_FILE_CHUNKS", "name": "Get Document Store File Chunks", "description": "Tool to get chunks from a specific document loader. Use when you need to retrieve chunked content from a document in a FlowiseAI document store." }, { "slug": "FLOWISEAI_GET_SINGLE_CHATFLOW", "name": "Get Single Chatflow", "description": "Tool to retrieve a chatflow by its ID. Use when you have a chatflow ID and need its full details." }, { "slug": "FLOWISEAI_GET_TOOL_BY_ID", "name": "Get Tool By ID", "description": "Tool to retrieve a specific FlowiseAI tool by its ID. Use when you need detailed metadata of a tool before interacting with it." }, { "slug": "FLOWISEAI_LIST_ALL_TOOLS", "name": "List All Tools", "description": "Tool to retrieve a list of all tools. Use when you need to list every tool available after authentication." }, { "slug": "FLOWISEAI_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to retrieve a list of all assistants. Use when you need to list every assistant available in the authenticated FlowiseAI account." }, { "slug": "FLOWISEAI_LIST_CHAT_MESSAGES", "name": "List Chat Messages", "description": "Tool to list chat messages of a chatflow. Use after selecting a chatflow when you need to view its messages." }, { "slug": "FLOWISEAI_PING_SERVER", "name": "Ping Server", "description": "Tool to ping the FlowiseAI server to verify it is running and accessible. Use this to perform a health check before executing other operations or to diagnose connectivity issues." }, { "slug": "FLOWISEAI_UPDATE_CHATFLOW_DETAILS", "name": "Update Chatflow Details", "description": "Tool to update details of an existing chatflow. Use when you have confirmed the chatflow ID and want to modify its fields." }, { "slug": "FLOWISEAI_UPDATE_DOCUMENT_STORE", "name": "Update Document Store", "description": "Tool to update a specific document store. Use when you need to modify properties of an existing document store." }, { "slug": "FLOWISEAI_UPDATE_TOOL_BY_ID", "name": "Update Tool By ID", "description": "Updates a FlowiseAI tool's properties by its ID. Use this to modify tool name, description, color, icon, JSON schema, or JavaScript function code. Requires the tool's UUID from LIST_ALL_TOOLS or GET_TOOL_BY_ID. At least one field must be provided for update." }, { "slug": "FLOWISEAI_UPDATE_VARIABLE", "name": "Update Variable", "description": "Tool to update a variable by its ID. Use when you need to modify a variable's name, value, or type." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "flowiseai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Hosted FlowiseAI Base URL", "type": "string", "description": "The base URL of your hosted FlowiseAI instance, e.g., 'https://flowise-test.com'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "FlowiseAI API Key", "type": "string", "description": "The API key used for authenticating requests to the FlowiseAI API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fluxguard", "name": "Fluxguard", "logo": "https://logos.composio.dev/api/fluxguard", "description": "Fluxguard is an AI-powered website change detection and monitoring tool that helps businesses track, analyze, and respond to critical changes in web-based data.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FLUXGUARD_ADD_PAGE", "name": "Add FluxGuard Page", "description": "Tool to add a new page for monitoring in FluxGuard. This action can: 1. Create a new site with a page (when siteId/sessionId are not provided) 2. Add a page to an existing site (when siteId/sessionId are provided) When creating a new site, you can optionally assign it to categories and provide a nickname. Use this when you need to start monitoring a URL for changes." }, { "slug": "FLUXGUARD_CREATE_SITE_CATEGORY", "name": "Create FluxGuard Site Category", "description": "Creates a new site category in FluxGuard for organizing monitored websites. Site categories help you group and manage your monitored sites logically (e.g., by environment like 'Production' or 'Staging', by purpose like 'Marketing' or 'E-commerce', or by client/team). Use this action to create categories before adding sites, making it easier to filter and organize your monitoring dashboard. The returned category ID can be used when adding sites to assign them to this category." }, { "slug": "FLUXGUARD_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates a webhook endpoint registration in FluxGuard to receive real-time notifications when changes are detected on monitored pages. When changes occur, FluxGuard will POST JSON data to your specified URL containing change details, diff information, and file references. Use this when you need to integrate FluxGuard change detection into your own systems, automation workflows, or alerting infrastructure. Note: Only one webhook can be active per account. Creating a new webhook will replace any existing webhook configuration." }, { "slug": "FLUXGUARD_DELETE_PAGE", "name": "Delete Fluxguard Page", "description": "Permanently deletes a monitored page from FluxGuard along with all its captured snapshots and version history. This is a destructive operation that cannot be undone. Use this when you need to remove a page that is no longer needed for monitoring. The operation is idempotent - deleting an already-deleted page will succeed without error. To obtain the required IDs (site_id, session_id, page_id), first use FLUXGUARD_ADD_PAGE to create a page or FLUXGUARD_GET_SITES to list existing sites and their pages." }, { "slug": "FLUXGUARD_DELETE_SITE", "name": "Delete Fluxguard Site", "description": "Permanently deletes a monitored site and all associated data including sessions, pages, and captured versions. This operation is idempotent - deleting a non-existent site returns success. Use when you need to remove a site from FluxGuard monitoring." }, { "slug": "FLUXGUARD_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently removes a webhook from your FluxGuard account by its ID. After deletion, the webhook will no longer receive notifications about monitored page changes. This operation is idempotent - deleting a non-existent webhook will succeed without error. Use this tool when you need to remove a webhook configuration that is no longer needed." }, { "slug": "FLUXGUARD_GET_ALL_CATEGORIES", "name": "Get All FluxGuard Categories", "description": "Retrieves all categories defined in your FluxGuard account. Use this tool when you need to: - List all available categories for organizing sites or pages - Get category IDs for use in other operations - Check what categories exist before creating new ones This is a read-only operation that returns both site and page categories. No parameters are required - simply call this action to get all categories." }, { "slug": "FLUXGUARD_GET_PAGE_DATA", "name": "Get FluxGuard Page Data", "description": "Tool to retrieve comprehensive data for a monitored page in FluxGuard. This action fetches detailed information about a specific page including its URL, monitoring status, capture history, and metadata. Use this when you need to verify a page exists, check its monitoring status, or retrieve page configuration details. The page must be identified by its site_id, session_id, and page_id, which are typically obtained from FLUXGUARD_ADD_PAGE when creating a page or from FLUXGUARD_GET_SITES when listing existing sites and their pages." }, { "slug": "FLUXGUARD_GET_SAMPLE_WEBHOOK", "name": "Get Sample Webhook Payload", "description": "Tool to retrieve a sample webhook payload. Use when you need to inspect the structure of webhook notifications." }, { "slug": "FLUXGUARD_GET_USER", "name": "Get Current FluxGuard Account", "description": "Retrieves the authenticated FluxGuard account's information as a user profile. Returns details about the current organization's account including ID, status, creation date, and last update timestamp. This provides account information in a user-friendly format for the authenticated API key's organization." }, { "slug": "FLUXGUARD_GET_WEBHOOKS", "name": "Get FluxGuard Webhooks", "description": "Retrieves all configured webhooks for the FluxGuard account. Use this action to list all webhook endpoints that are configured to receive FluxGuard change notifications. Each webhook includes its URL, secret for signature verification, API version, and associated site categories. No parameters required - returns all webhooks for the authenticated account." }, { "slug": "FLUXGUARD_INITIATE_CRAWL", "name": "Initiate FluxGuard Crawl", "description": "Tool to initiate a crawl for a session identified by siteId and sessionId. Use when you need to start monitoring a site for changes after adding pages with FLUXGUARD_ADD_PAGE." }, { "slug": "FLUXGUARD_WEBHOOK_NOTIFICATION", "name": "Fluxguard Webhook Notification", "description": "Simulate Fluxguard webhook notification by sending change detection data to your webhook endpoint. Use this tool to test your webhook receiver implementation by sending it a properly formatted Fluxguard webhook payload with optional HMAC signature authentication. This helps verify your endpoint can receive and process Fluxguard change notifications correctly. Note: This does NOT retrieve data from Fluxguard or trigger actual monitoring - it only sends test notifications to your webhook URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fluxguard_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Fluxguard API Key", "type": "string", "description": "Your Fluxguard API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fly", "name": "Fly", "logo": "https://logos.composio.dev/api/fly", "description": "Fly.io transforms containers into micro-VMs that run on hardware in 30+ regions on six continents.", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 45, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FLY_ADD_WIRE_GUARD_PEER", "name": "Add WireGuard Peer", "description": "Tool to add a WireGuard peer connection to a Fly.io organization for private network access. Use when setting up VPN access or private networking between your infrastructure and Fly.io." }, { "slug": "FLY_CHECK_APP_NAME_AVAILABILITY", "name": "Check App Name Availability", "description": "Tool to validate an app name for Fly.io app creation. Use when you need to check if a proposed app name is available before attempting to create a new app. Returns availability status via GraphQL query." }, { "slug": "FLY_CHECK_JOBS", "name": "Check Jobs", "description": "Execute GraphQL queries against the Fly.io checkJobs endpoint. Retrieves check jobs with their schedules, URLs, and configuration. Supports pagination via first/last/after/before parameters. Returns both data and errors for flexible error handling." }, { "slug": "FLY_CHECK_USER_ONLY_TOKEN", "name": "Check User Only Token", "description": "Check whether the authentication token only allows user access. Returns false if the token allows organization access, true if it only allows user access." }, { "slug": "FLY_CREATE_CHECK_JOB", "name": "Create Health Check Job", "description": "Tool to create a health check job for monitoring application endpoints in Fly.io. Use when you need to set up automated health monitoring for a URL from multiple geographic locations." }, { "slug": "FLY_CREATE_CHECK_JOB_RUN", "name": "Create Check Job Run", "description": "Triggers a run of an existing health check job on Fly.io. Use when you need to manually trigger a health check for monitoring or testing purposes." }, { "slug": "FLY_CREATE_DELEGATED_WIRE_GUARD_TOKEN", "name": "Create Delegated WireGuard Token", "description": "Tool to create a delegated WireGuard token for peer management in a Fly.io organization. Use when you need to generate a token for managing WireGuard peers with delegated access." }, { "slug": "FLY_CREATE_THIRD_PARTY_CONFIGURATION", "name": "Create Third-Party Configuration", "description": "Tool to create a third-party service configuration for discharging macaroon caveats. Use when you need to configure external authorization services for Fly.io token validation." }, { "slug": "FLY_DELETE_DELEGATED_WIRE_GUARD_TOKEN", "name": "Delete Delegated WireGuard Token", "description": "Tool to delete a delegated WireGuard token from a Fly.io organization. Use when you need to revoke or remove an existing WireGuard token that was previously created. Either token or name must be provided to identify which token to delete." }, { "slug": "FLY_DELETE_ORGANIZATION", "name": "Delete Organization", "description": "Tool to delete a Fly.io organization and all its associated resources using the GraphQL API. Use when you need to permanently remove an organization. This operation is irreversible." }, { "slug": "FLY_DELETE_REMOTE_BUILDER", "name": "Delete Remote Builder", "description": "Tool to delete a remote builder configuration for a Fly.io organization. Use when you need to remove the remote builder setup from an organization." }, { "slug": "FLY_DELETE_THIRD_PARTY_CONFIGURATION", "name": "Delete Third Party Configuration", "description": "Tool to delete a third-party service configuration from Fly.io. Use when you need to remove an existing third-party service integration or configuration that was previously created." }, { "slug": "FLY_DETACH_POSTGRES_CLUSTER", "name": "Detach Postgres Cluster", "description": "Tool to detach a Postgres cluster from a Fly.io application, revoking access credentials. Use when you need to remove database connectivity from an application." }, { "slug": "FLY_ESTABLISH_SSH_KEY", "name": "Establish SSH Key", "description": "Tool to establish an SSH key for a Fly.io organization. Use when setting up SSH access for secure connections to Fly.io infrastructure." }, { "slug": "FLY_FETCH_NODES_BY_IDS", "name": "Fetch Nodes by IDs", "description": "Fetches a list of node objects from Fly.io given a list of IDs using the GraphQL nodes query. Use when you need to retrieve multiple objects by their IDs in a single request. Supports all Node interface types including Organization, App, Machine, Volume, and more." }, { "slug": "FLY_GET_ADD_ON", "name": "Get Add-On", "description": "Tool to find a Fly.io add-on by ID, name, or provider. Use when you need to retrieve details about a specific add-on. Returns add-on information including status, organization, region, and access URLs." }, { "slug": "FLY_GET_ADD_ON_PROVIDER", "name": "Get Add-On Provider", "description": "Tool to query information about a specific Fly.io add-on provider (extension) by name. Returns provider details including provisioning settings, terms of service, and configuration options." }, { "slug": "FLY_GET_APP_DETAILS", "name": "Get app details", "description": "Tool to retrieve detailed information about a specific Fly.io application. Use when you need to get app details including certificates and configuration." }, { "slug": "FLY_GET_CERTIFICATE", "name": "Get Certificate", "description": "Tool to retrieve a certificate by its ID from Fly.io. Use when you need to get details about a specific certificate including hostname, creation date, and configuration status." }, { "slug": "FLY_GET_CURRENT_TOKEN_INFO", "name": "Get Current Token Info", "description": "Tool to get information about the current authentication token. Use when you need to retrieve details about the token being used for API authentication, including organizations, apps, and whether the token is from a user or machine." }, { "slug": "FLY_GET_LATEST_IMAGE_DETAILS", "name": "Get Latest Image Details", "description": "Tool to retrieve the latest available tag details for a given image repository from Fly.io's registry. Use when you need to get digest, registry, repository, tag, and version information for a container image." }, { "slug": "FLY_GET_LATEST_IMAGE_TAG", "name": "Get Latest Image Tag", "description": "Tool to retrieve the latest available image tag for a Fly.io Docker repository. Use when you need to find the most recent version of a Fly.io image." }, { "slug": "FLY_GET_MACHINE", "name": "Get Machine", "description": "Tool to get a single machine by ID from Fly.io. Use when you need to retrieve details about a specific machine instance." }, { "slug": "FLY_GET_NEAREST_REGION", "name": "Get Nearest Region", "description": "Tool to retrieve the nearest Fly.io region to the requesting client based on network location. Use when you need to determine which Fly.io region has the lowest latency from the current location." }, { "slug": "FLY_GET_NODE", "name": "Get Node by ID", "description": "Tool to fetch an object by its globally unique ID using Fly.io's GraphQL node query. Returns a Node interface object with id and __typename fields. Use when you need to retrieve any Fly.io object by its ID." }, { "slug": "FLY_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to find a Fly.io organization by slug using the GraphQL API. Use when you need to retrieve organization details including ID, name and slug." }, { "slug": "FLY_GET_PERSONAL_ORGANIZATION", "name": "Get Personal Organization", "description": "Tool to retrieve the user's personal organization details from Fly.io. Use when you need to check credit balance, saved payment methods, certificates, or WireGuard peer information." }, { "slug": "FLY_GET_PLACEMENTS", "name": "Get Placements", "description": "Tool to get placement recommendations for Machines in Fly.io regions. Use when you need to determine optimal regions for deploying machines based on resource requirements, volume constraints, and organizational limits." }, { "slug": "FLY_GET_PLATFORM_INFO", "name": "Get Platform Information", "description": "Tool to retrieve Fly.io platform information including available regions, VM sizes, and flyctl version. Use when you need infrastructure-level details about the Fly.io platform." }, { "slug": "FLY_GET_PRODUCTS", "name": "Get Products and Pricing", "description": "Tool to retrieve Fly.io product and price information via GraphQL. Use when you need to fetch product catalog, pricing tiers, or billing information." }, { "slug": "FLY_GET_REGIONS", "name": "Get Regions", "description": "Tool to get the list of available Fly.io regions with optional filtering. Use when you need to discover which regions are available for deploying machines, or to filter regions by specific resource requirements like CPU, memory, or GPU." }, { "slug": "FLY_GET_VIEWER_INFO", "name": "Get Viewer Info", "description": "Tool to retrieve the authenticated user's account information from Fly.io. Use when you need to get the current user's profile details, including avatar, email, creation date, and feature flags." }, { "slug": "FLY_ISSUE_CERTIFICATE", "name": "Issue Certificate", "description": "Tool to issue an SSH certificate for accessing Fly.io infrastructure. Returns an SSH certificate in OpenSSH format. Use when you need to authenticate SSH access to Fly.io machines or apps." }, { "slug": "FLY_LIST_ADD_ON_PLANS", "name": "List Add-On Plans", "description": "Tool to list available add-on service plans from Fly.io. Use when you need to discover pricing, features, and resource limits for Fly.io add-on services. Supports cursor-based pagination." }, { "slug": "FLY_LIST_ADD_ONS", "name": "List Add-Ons", "description": "Tool to list add-ons associated with an organization in Fly.io. Use when you need to retrieve add-ons for apps in an organization. Supports querying personal organization or specific organizations by slug. Returns comprehensive add-on details including status, creation date, and configuration." }, { "slug": "FLY_LIST_APPS", "name": "List Apps", "description": "Tool to list all Fly Apps in an organization. Use when you need to retrieve apps for a specific organization using its slug." }, { "slug": "FLY_LIST_APPS_GRAPHQL", "name": "List Apps via GraphQL", "description": "List all Fly.io applications with details including volumes, services, and VMs using GraphQL. Use when you need to retrieve a comprehensive overview of all apps in your Fly.io organization." }, { "slug": "FLY_LIST_CHECK_LOCATIONS", "name": "Check Locations", "description": "Retrieve all available Fly.io health check locations. Returns a comprehensive list of global locations where health checks can be performed, including geographic details and coordinates. Use when you need to determine available monitoring points for setting up health checks." }, { "slug": "FLY_LIST_MACHINES", "name": "List Machines", "description": "Tool to list Fly.io machines using GraphQL API with pagination support. Use when you need to retrieve information about deployed machines including their state, region, and creation time." }, { "slug": "FLY_LIST_ORG_MACHINES", "name": "List Organization Machines", "description": "Tool to list all Machines across all apps in a Fly organization. Use when you need to retrieve machines for monitoring, management, or inventory purposes. Supports filtering by region, state, and time ranges with pagination for large result sets." }, { "slug": "FLY_REMOVE_WIRE_GUARD_PEER", "name": "Remove WireGuard Peer", "description": "Tool to remove a WireGuard peer connection from a Fly.io organization. Use when you need to delete or revoke an existing WireGuard peer from your organization's network." }, { "slug": "FLY_SET_APPS_V2_DEFAULT_ON", "name": "Set Apps V2 Default", "description": "Tool to configure whether new apps in an organization use Apps V2 by default on Fly.io. Use when you need to enable or disable Apps V2 as the default for new applications in a specific organization." }, { "slug": "FLY_UPDATE_THIRD_PARTY_CONFIGURATION", "name": "Update Third-Party Configuration", "description": "Tool to update an existing third-party service configuration for discharging macaroon caveats. Use when you need to modify settings of external authorization services for Fly.io token validation." }, { "slug": "FLY_VALIDATE_CONFIG", "name": "Validate Config", "description": "Tool to validate a Fly.io app configuration. Use when you need to check if a fly.toml configuration is valid before deploying or updating an app." }, { "slug": "FLY_VALIDATE_WIRE_GUARD_PEERS", "name": "Validate WireGuard Peers", "description": "Tool to validate WireGuard peer IP addresses in a Fly.io organization. Use when you need to verify which peer IPs are valid or invalid before establishing VPN connections." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "fly_io_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "fly_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Sign in and get your Access token from \"Account\" > \"Access Tokens\". Alternatively the Access Token can be created using the CLI command `fly auth token`, see https://fly.io/docs/machines/api/working-with-machines-api/#environment-setup for details.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Org Slug", "type": "string", "description": "Sign in and get your Organization Slug from \"Account\" > \"Organizations\". Click on one of your organizations. On the page that opens, if your Organization URL is `https://fly.io/dashboard/ABCD/billing`, then your Org Slug is `ABCD`.", "required": false, "default": null } ] } } } ] }, { "slug": "folk", "name": "Folk", "logo": "https://logos.composio.dev/api/folk", "description": "folk is a next-generation CRM designed for teams to manage and nurture their relationships efficiently.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FOLK_CREATE_COMPANY", "name": "Create Company", "description": "Creates a new company in the Folk workspace with the specified details. Required: company name (unique identifier). Optional: description, industry, funding details, employee range, contact info (emails, phones, urls, addresses), group assignments, and custom field values. Returns the created company with a unique ID, all provided fields, timestamps, and creator information." }, { "slug": "FOLK_CREATE_NOTE", "name": "Create Note", "description": "Tool to create a new note in the Folk workspace. Use when you need to add a note to a person, company, or deal entity." }, { "slug": "FOLK_CREATE_PERSON", "name": "Create Person", "description": "Creates a new person in the Folk workspace with the specified details. Optional fields include: first name, last name, emails, phones, group assignments, and custom field values. The first email/phone in the list is treated as the primary contact. Returns the created person with a unique ID, all provided fields, timestamps, and creator information." }, { "slug": "FOLK_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company from the workspace (irreversible). Use after confirming this company should be removed." }, { "slug": "FOLK_DELETE_NOTE", "name": "Delete Note", "description": "Tool to delete an existing note in the workspace (irreversible). Use after confirming this note should be permanently removed." }, { "slug": "FOLK_DELETE_PERSON", "name": "Delete Person", "description": "Tool to delete an existing person in the workspace (irreversible). Use after confirming this person should be permanently removed." }, { "slug": "FOLK_DELETE_REMINDER", "name": "Delete Reminder", "description": "Tool to delete an existing reminder in the workspace (irreversible). Use after confirming this reminder should be permanently removed." }, { "slug": "FOLK_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve an existing company by its ID. Use after authentication has been verified." }, { "slug": "FOLK_GET_CURRENT_WORKSPACE_USER", "name": "Get Current Workspace User", "description": "Tool to get details of the current authenticated workspace user. Use after authentication to retrieve the user's profile information." }, { "slug": "FOLK_GET_NOTE", "name": "Get Note", "description": "Tool to retrieve an existing note by its ID. Use when you need the full content and metadata of a specific note." }, { "slug": "FOLK_GET_PERSON", "name": "Get Person", "description": "Tool to retrieve an existing person by their ID. Use when you need full profile details of a person by their unique identifier." }, { "slug": "FOLK_GET_USER", "name": "Get User", "description": "Tool to retrieve a user by their unique identifier. Use when you need to get details of a specific workspace user." }, { "slug": "FOLK_LIST_COMPANIES", "name": "List Companies", "description": "Tool to list companies in the workspace. Use when you need a paginated overview of companies, optionally filtered." }, { "slug": "FOLK_LIST_GROUP_CUSTOM_FIELDS", "name": "List Group Custom Fields", "description": "Tool to list custom fields for a specific group and entity type. Use after selecting a group and entity type to inspect available custom fields." }, { "slug": "FOLK_LIST_GROUPS", "name": "List Groups", "description": "Tool to list workspace groups. Use when you need to retrieve a paginated list of all workspace groups after authentication." }, { "slug": "FOLK_LIST_NOTES", "name": "List Notes", "description": "Tool to list notes in the workspace. Use when you need to retrieve notes with pagination support." }, { "slug": "FOLK_LIST_PEOPLE", "name": "List People", "description": "Tool to list people in the workspace. Use when you need to paginate through contacts after authentication." }, { "slug": "FOLK_LIST_REMINDERS", "name": "List Reminders", "description": "Tool to list reminders in the workspace. Use when you need a paginated overview of reminders, optionally filtered by entity." }, { "slug": "FOLK_LIST_USERS", "name": "List Users", "description": "Tool to list workspace users. Use when you need to paginate through users list." }, { "slug": "FOLK_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list webhooks in the workspace. Use when you need to retrieve configured webhooks with pagination support." }, { "slug": "FOLK_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company in the workspace. Use after confirming the company ID; only provided fields are updated and list fields replace existing values." }, { "slug": "FOLK_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note in the workspace. Use after confirming the note ID; only provided fields are updated." }, { "slug": "FOLK_UPDATE_PERSON", "name": "Update Person", "description": "Tool to update an existing person in the workspace. Use after confirming the person ID; only provided fields are updated and list fields replace existing values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "folk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "folk API Key", "type": "string", "description": "Your secret folk API key, used to access contacts in your workspace. In folk, go to Settings → API, click 'New API key', and paste it here.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "follow_up_boss", "name": "Follow Up Boss", "logo": "https://logos.composio.dev/api/follow_up_boss", "description": "Follow Up Boss is the leading CRM for high-growth real estate businesses. Get all your leads in one place & take control of your follow up so you can work smarter.", "category": "crm", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 99, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FOLLOW_UP_BOSS_CREATE_ACTION_PLANS_PEOPLE", "name": "Apply Action Plan to Person", "description": "Tool to apply an Action Plan to a person in Follow Up Boss. Use when you need to assign or apply a specific action plan workflow to a contact." }, { "slug": "FOLLOW_UP_BOSS_CREATE_APPOINTMENT", "name": "Create Appointment", "description": "Tool to create a new appointment in Follow Up Boss. Use when you need to schedule meetings, property showings, or events. Requires title, start time, and end time. Optionally send invitation emails to invitees." }, { "slug": "FOLLOW_UP_BOSS_CREATE_APPOINTMENT_OUTCOME", "name": "Create appointment outcome", "description": "Tool to create an appointment outcome in Follow Up Boss. Use when you need to add a new outcome type for appointment tracking." }, { "slug": "FOLLOW_UP_BOSS_CREATE_APPOINTMENT_TYPES", "name": "Create Appointment Type", "description": "Tool to create a new appointment type in Follow Up Boss. Use when you need to define a new category for appointments that can be scheduled in the system." }, { "slug": "FOLLOW_UP_BOSS_CREATE_CALL", "name": "Create Call", "description": "Tool to add a call record to Follow Up Boss. Use when you need to log a phone call interaction with a person." }, { "slug": "FOLLOW_UP_BOSS_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a custom field in Follow Up Boss. Use when you need to add a new custom data field to person records, such as tracking anniversaries, customer types, or any other custom information." }, { "slug": "FOLLOW_UP_BOSS_CREATE_DEAL_CUSTOM_FIELD", "name": "Create Deal Custom Field", "description": "Tool to create a custom field for deals in Follow Up Boss. Use when you need to add custom metadata fields to track deal-specific information like stages, priorities, or custom dates." }, { "slug": "FOLLOW_UP_BOSS_CREATE_DEALS", "name": "Create Deal", "description": "Tool to create a new deal in Follow Up Boss. Use when you need to add a deal to track sales opportunities in your pipeline. Requires deal name and stage ID." }, { "slug": "FOLLOW_UP_BOSS_CREATE_EM_CAMPAIGN", "name": "Create Email Marketing Campaign", "description": "Tool to create an email marketing campaign in Follow Up Boss. Use when you need to create a new email campaign with HTML content." }, { "slug": "FOLLOW_UP_BOSS_CREATE_EM_EVENTS", "name": "Create Email Marketing Events", "description": "Tool to notify Follow Up Boss about marketing emails sent, opens, clicks, bounces, unsubscribes and spam reports. Use when you need to track email marketing events." }, { "slug": "FOLLOW_UP_BOSS_CREATE_EVENTS", "name": "Create Events", "description": "Tool to send in a lead or an event related to a lead in Follow Up Boss. Use when you need to track lead activities, inquiries, property views, or any other event type supported by the system." }, { "slug": "FOLLOW_UP_BOSS_CREATE_GROUPS", "name": "Create Group", "description": "Tool to create a new Follow Up Boss group with specified members and distribution settings. Use when you need to organize team members into groups for lead distribution." }, { "slug": "FOLLOW_UP_BOSS_CREATE_PIPELINES", "name": "Create Pipeline", "description": "Tool to create a new pipeline in Follow Up Boss. Use when you need to set up a new pipeline for tracking deals with customizable stages. Only the owner has access to create and modify pipelines." }, { "slug": "FOLLOW_UP_BOSS_CREATE_PONDS", "name": "Create Ponds", "description": "Tool to create a new pond in Follow Up Boss. Use when you need to organize leads into a specific group with a lead agent and member users." }, { "slug": "FOLLOW_UP_BOSS_CREATE_REACTIONS", "name": "Create Reactions", "description": "Tool to add a reaction (emoji) to a Note, Call, or ThreadedReply. Use when you need to add an emoji reaction to existing content." }, { "slug": "FOLLOW_UP_BOSS_CREATE_STAGE", "name": "Create Stage", "description": "Tool to create a new stage in Follow Up Boss. Use when you need to add a new pipeline stage for organizing contacts." }, { "slug": "FOLLOW_UP_BOSS_CREATE_TEAMS", "name": "Create Team", "description": "Tool to create a new team in Follow Up Boss. Use when you need to organize users into teams with optional team leaders." }, { "slug": "FOLLOW_UP_BOSS_CREATE_TEMPLATE", "name": "Create email template", "description": "Tool to create a new email template in Follow Up Boss. Use when you need to create a reusable email template with a name, subject, and HTML body." }, { "slug": "FOLLOW_UP_BOSS_CREATE_TEXT_MESSAGE_TEMPLATE", "name": "Create Text Message Template", "description": "Tool to create a text message template in Follow Up Boss. Use when you need to create a reusable SMS template that can include dynamic variables like contact names and greetings." }, { "slug": "FOLLOW_UP_BOSS_DELETE_APPOINTMENT", "name": "Delete Appointment", "description": "Tool to delete an appointment by ID. Use when you need to remove an existing appointment from Follow Up Boss." }, { "slug": "FOLLOW_UP_BOSS_DELETE_APPOINTMENT_OUTCOMES", "name": "Delete Appointment Outcome", "description": "Tool to delete an appointment outcome by ID. Use when you need to remove an appointment outcome and reassign existing appointments to a different outcome." }, { "slug": "FOLLOW_UP_BOSS_DELETE_APPOINTMENT_TYPE", "name": "Delete Appointment Type", "description": "Tool to delete an appointment type by its ID. Use when you need to remove an appointment type and reassign existing appointments to another type." }, { "slug": "FOLLOW_UP_BOSS_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field by its ID. Use when you need to remove a custom field from Follow Up Boss. Restricted to account owners only." }, { "slug": "FOLLOW_UP_BOSS_DELETE_DEAL", "name": "Delete Deal", "description": "Tool to delete a deal by its ID. Use when you need to permanently remove a deal from Follow Up Boss." }, { "slug": "FOLLOW_UP_BOSS_DELETE_DEAL_CUSTOM_FIELD", "name": "Delete Deal Custom Field", "description": "Tool to delete a deal custom field by ID. Use when you need to permanently remove a custom field configuration from deals. Only the account owner can delete deal custom fields." }, { "slug": "FOLLOW_UP_BOSS_DELETE_GROUPS", "name": "Delete Group", "description": "Tool to delete a group by its ID. Use when you need to permanently remove a group from Follow Up Boss." }, { "slug": "FOLLOW_UP_BOSS_DELETE_PEOPLE_RELATIONSHIP", "name": "Delete People Relationship", "description": "Tool to delete a people relationship by ID in Follow Up Boss. Use when you need to remove a relationship between contacts." }, { "slug": "FOLLOW_UP_BOSS_DELETE_PIPELINE", "name": "Delete Pipeline", "description": "Tool to delete a pipeline by its ID from Follow Up Boss. Use when you need to permanently remove a pipeline from the system. The deletion is irreversible and will remove the pipeline and all associated data." }, { "slug": "FOLLOW_UP_BOSS_DELETE_POND", "name": "Delete Pond", "description": "Tool to delete a pond by its ID. Use when removing a pond and reassigning its contacts to another agent." }, { "slug": "FOLLOW_UP_BOSS_DELETE_STAGE", "name": "Delete Stage", "description": "Tool to delete a Follow Up Boss stage by ID. Use when you need to remove a stage and reassign action plans to another stage." }, { "slug": "FOLLOW_UP_BOSS_DELETE_TEAMS", "name": "Delete Team", "description": "Tool to delete a team by its ID. Use when you need to remove a team from Follow Up Boss. Optionally merge team members to another team before deletion." }, { "slug": "FOLLOW_UP_BOSS_DELETE_TEXT_MESSAGE_TEMPLATE", "name": "Delete text message template", "description": "Tool to delete a text message template by ID. Use when you need to remove a text message template. Note: If the template is in use by an Action Plan, you will get a 403 Forbidden response. Use GET /textMessageTemplates/:id to check which Action Plans are using it before deletion." }, { "slug": "FOLLOW_UP_BOSS_GET_APPOINTMENT", "name": "Get Appointment", "description": "Tool to retrieve an appointment by its ID. Use when you need to fetch details of a specific appointment." }, { "slug": "FOLLOW_UP_BOSS_GET_APPOINTMENT_OUTCOME", "name": "Get Appointment Outcome", "description": "Tool to retrieve an appointment outcome by ID. Use when you need to fetch details about a specific appointment outcome from Follow Up Boss." }, { "slug": "FOLLOW_UP_BOSS_GET_APPOINTMENT_TYPES", "name": "Get Appointment Type", "description": "Tool to retrieve an appointment type by ID. Use when you need to fetch details about a specific appointment type from Follow Up Boss." }, { "slug": "FOLLOW_UP_BOSS_GET_CALL", "name": "Get Call", "description": "Tool to retrieve a call by its ID from Follow Up Boss. Use when you need to fetch details about a specific call record." }, { "slug": "FOLLOW_UP_BOSS_GET_DEAL", "name": "Get Deal", "description": "Tool to retrieve a deal by its ID from Follow Up Boss. Use when you need to fetch details about a specific deal." }, { "slug": "FOLLOW_UP_BOSS_GET_DEAL_CUSTOM_FIELD", "name": "Get Deal Custom Field", "description": "Tool to retrieve a deal custom field by its ID from Follow Up Boss. Use when you need to fetch details about a specific deal custom field configuration." }, { "slug": "FOLLOW_UP_BOSS_GET_EVENT", "name": "Get Event", "description": "Tool to retrieve a single event by its ID from Follow Up Boss. Use when you need to fetch details about a specific event record." }, { "slug": "FOLLOW_UP_BOSS_GET_GROUPS", "name": "Get Group", "description": "Tool to retrieve a group by its ID from Follow Up Boss. Use when you need to fetch details about a specific group." }, { "slug": "FOLLOW_UP_BOSS_GET_IDENTITY", "name": "Get Identity", "description": "Tool to retrieve identity and authentication information from Follow Up Boss. Use when you need to verify the authenticated user's account and user details." }, { "slug": "FOLLOW_UP_BOSS_GET_ME", "name": "Get Me", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to fetch details about the authenticated user's account, settings, or permissions." }, { "slug": "FOLLOW_UP_BOSS_GET_PEOPLE_RELATIONSHIP", "name": "Get People Relationship", "description": "Tool to retrieve a people relationship by its ID from Follow Up Boss. Use when you need to fetch details about a specific relationship between contacts." }, { "slug": "FOLLOW_UP_BOSS_GET_PIPELINES", "name": "Get Pipeline", "description": "Tool to retrieve a pipeline by its ID from Follow Up Boss. Use when you need to fetch details about a specific pipeline." }, { "slug": "FOLLOW_UP_BOSS_GET_PONDS", "name": "Get Ponds", "description": "Tool to retrieve a pond by its ID from Follow Up Boss. Use when you need to fetch details about a specific pond group." }, { "slug": "FOLLOW_UP_BOSS_GET_SMART_LIST", "name": "Get Smart List", "description": "Tool to retrieve a Smart List by its ID from Follow Up Boss. Use when you need to fetch details about a specific Smart List." }, { "slug": "FOLLOW_UP_BOSS_GET_STAGE", "name": "Get Stage", "description": "Tool to retrieve a stage by its ID from Follow Up Boss. Use when you need to fetch details about a specific stage." }, { "slug": "FOLLOW_UP_BOSS_GET_TEAMS", "name": "Get Team", "description": "Tool to retrieve a team by its ID from Follow Up Boss. Use when you need to fetch details about a specific team." }, { "slug": "FOLLOW_UP_BOSS_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve an email template by its ID from Follow Up Boss. Use when you need to fetch details about a specific template, optionally with merge fields populated for a person." }, { "slug": "FOLLOW_UP_BOSS_GET_TEXT_MESSAGE", "name": "Get Text Message", "description": "Tool to retrieve a text message by its ID from Follow Up Boss. Use when you need to fetch details about a specific text message record." }, { "slug": "FOLLOW_UP_BOSS_GET_TEXT_MESSAGE_TEMPLATE", "name": "Get Text Message Template", "description": "Tool to retrieve a text message template by its ID from Follow Up Boss. Use when you need to fetch details about a specific text message template, including its content, usage statistics, and associated action plans." }, { "slug": "FOLLOW_UP_BOSS_GET_USER", "name": "Get User", "description": "Tool to retrieve a user by its ID from Follow Up Boss. Use when you need to fetch details about a specific user." }, { "slug": "FOLLOW_UP_BOSS_LIST_ACTION_PLANS", "name": "List Action Plans", "description": "Tool to get a list of Action Plans from Follow Up Boss. Use when you need to retrieve available action plans with optional filtering by status, names, or IDs, and support for pagination and sorting." }, { "slug": "FOLLOW_UP_BOSS_LIST_ACTION_PLANS_PEOPLE", "name": "List Action Plans People", "description": "Tool to list Action Plans applied to a particular person or list people on a particular Action Plan. Use when you need to retrieve action plan assignments, optionally filtered by person or action plan." }, { "slug": "FOLLOW_UP_BOSS_LIST_APPOINTMENT_OUTCOMES", "name": "List Appointment Outcomes", "description": "Tool to list all appointment outcomes from Follow Up Boss. Use when you need to retrieve a list of appointment outcomes with optional sorting and pagination." }, { "slug": "FOLLOW_UP_BOSS_LIST_APPOINTMENTS", "name": "List Appointments", "description": "Tool to search for appointments in Follow Up Boss. Use when you need to retrieve a list of appointments, optionally filtered by person, user, or date range. Supports pagination for large result sets." }, { "slug": "FOLLOW_UP_BOSS_LIST_APPOINTMENT_TYPES", "name": "List Appointment Types", "description": "Tool to list all appointment types from Follow Up Boss. Use when you need to retrieve a list of available appointment types with optional sorting and pagination." }, { "slug": "FOLLOW_UP_BOSS_LIST_CALLS", "name": "List Calls", "description": "Tool to search for calls in Follow Up Boss. Use when you need to retrieve a list of calls with optional filtering by person ID or phone numbers." }, { "slug": "FOLLOW_UP_BOSS_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to list all custom fields in Follow Up Boss. Use when you need to retrieve custom field definitions, optionally filtered by label or sorted by specific fields." }, { "slug": "FOLLOW_UP_BOSS_LIST_DEAL_CUSTOM_FIELDS", "name": "List Deal Custom Fields", "description": "Tool to list all deal custom fields in Follow Up Boss. Use when you need to retrieve deal custom field definitions, optionally filtered by label or sorted by specific fields." }, { "slug": "FOLLOW_UP_BOSS_LIST_DEALS", "name": "List Deals", "description": "Tool to search for and list deals from Follow Up Boss. Use when you need to retrieve multiple deals with optional filters by pipeline, user, person, or status." }, { "slug": "FOLLOW_UP_BOSS_LIST_EM_CAMPAIGNS", "name": "List Email Marketing Campaigns", "description": "Tool to list email marketing campaigns from Follow Up Boss. Use when you need to retrieve all campaigns or filter by origin/originId." }, { "slug": "FOLLOW_UP_BOSS_LIST_EM_EVENTS", "name": "List Email Marketing Events", "description": "Tool to retrieve email marketing events from Follow Up Boss. Use when you need to fetch information about marketing emails sent, opens, clicks, bounces, unsubscribes, and spam reports. Supports filtering by event type, person, and time range with pagination." }, { "slug": "FOLLOW_UP_BOSS_LIST_EVENTS", "name": "List Events", "description": "Tool to search for and list events from Follow Up Boss. Use when you need to retrieve events with optional filtering by person, event type, property association, or property address, with pagination support." }, { "slug": "FOLLOW_UP_BOSS_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all groups from Follow Up Boss. Use when you need to retrieve a list of groups, optionally filtered by type (Agent/Lender) or sorted by id/name." }, { "slug": "FOLLOW_UP_BOSS_LIST_GROUPS_ROUND_ROBIN", "name": "List Groups Round Robin", "description": "Tool to list groups with round-robin data from Follow Up Boss. Use when you need to retrieve groups configured for round-robin distribution." }, { "slug": "FOLLOW_UP_BOSS_LIST_INBOX_APPS", "name": "List Inbox Apps", "description": "Tool to list all inbox app installations from Follow Up Boss. Use when you need to retrieve a list of installed inbox apps with optional pagination." }, { "slug": "FOLLOW_UP_BOSS_LIST_PEOPLE_RELATIONSHIPS", "name": "List People Relationships", "description": "Tool to list all people relationships from Follow Up Boss. Use when you need to retrieve relationships between contacts with optional filtering by person ID, name, or first/last name, and sorting capabilities." }, { "slug": "FOLLOW_UP_BOSS_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to search for pipelines in Follow Up Boss. Use when you need to retrieve a list of pipelines, optionally filtering by exact name match." }, { "slug": "FOLLOW_UP_BOSS_LIST_PONDS", "name": "List Ponds", "description": "Tool to list all ponds from Follow Up Boss. Use when you need to retrieve a list of pond groups with pagination support." }, { "slug": "FOLLOW_UP_BOSS_LIST_SMART_LISTS", "name": "List Smart Lists", "description": "Tool to list Smart Lists from Follow Up Boss. Use when you need to retrieve a list of Smart Lists with support for pagination and filtering by FUB version." }, { "slug": "FOLLOW_UP_BOSS_LIST_STAGES", "name": "List Stages", "description": "Tool to retrieve a list of stages from Follow Up Boss. Use when you need to fetch all stages with optional pagination and sorting." }, { "slug": "FOLLOW_UP_BOSS_LIST_TEAM_INBOXES", "name": "List Team Inboxes", "description": "Tool to list all shared team inboxes from Follow Up Boss. Use when you need to retrieve available team inboxes with their names, IDs, and users who have access." }, { "slug": "FOLLOW_UP_BOSS_LIST_TEAMS", "name": "List Teams", "description": "Tool to get a list of teams from Follow Up Boss. Use when you need to retrieve all teams with pagination support. Note: Not all plans have access to the teams feature. If you do not have access, this endpoint will return a 200 OK response with an empty teams list." }, { "slug": "FOLLOW_UP_BOSS_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all email templates from Follow Up Boss. Use when you need to retrieve multiple email templates with pagination support." }, { "slug": "FOLLOW_UP_BOSS_LIST_TEXT_MESSAGES", "name": "List Text Messages", "description": "Tool to list text messages for a person or phone number from Follow Up Boss. Use when you need to retrieve text messages with filtering options. Note: At least one filter parameter must be provided when calling this action." }, { "slug": "FOLLOW_UP_BOSS_LIST_TEXT_MESSAGE_TEMPLATES", "name": "List Text Message Templates", "description": "Tool to list all text message templates from Follow Up Boss. Use when you need to retrieve multiple text message templates with pagination support." }, { "slug": "FOLLOW_UP_BOSS_LIST_TIMEFRAMES", "name": "List Timeframes", "description": "Tool to get a list of timeframes from Follow Up Boss. Use when you need to retrieve available timeframes." }, { "slug": "FOLLOW_UP_BOSS_LIST_USERS", "name": "List Users", "description": "Tool to search for and list users from Follow Up Boss. Use when you need to retrieve multiple users with optional filters by role, name, email, or other criteria." }, { "slug": "FOLLOW_UP_BOSS_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a list of webhooks from Follow Up Boss. Use when you need to view registered webhooks with optional filtering by event type or status." }, { "slug": "FOLLOW_UP_BOSS_MERGE_TEMPLATE", "name": "Merge Template", "description": "Tool to merge an email template with person data using Follow Up Boss API. Use when you need to generate personalized email content by replacing merge fields like %contact_name% with actual person data." }, { "slug": "FOLLOW_UP_BOSS_MERGE_TEXT_MESSAGE_TEMPLATE", "name": "Merge Text Message Template", "description": "Tool to merge a text message template with person data. Use when you need to generate personalized text messages by merging a template with contact information. The template supports merge fields like %contact_name% and %contact_rels_first_name% which are replaced with actual recipient data." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_ACTION_PLANS_PEOPLE", "name": "Update Action Plan People Status", "description": "Tool to update the status of an Action Plan to Person relationship in Follow Up Boss. Use when you need to pause or resume an action plan applied to a contact." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_APPOINTMENT", "name": "Update Appointment", "description": "Tool to update an existing appointment in Follow Up Boss. Use when you need to modify appointment details like title, time, location, or invitees. Requires appointment ID, title, start time, and end time. Optionally send invitation emails to invitees." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_APPOINTMENT_OUTCOMES", "name": "Update appointment outcome", "description": "Tool to update an existing appointment outcome in Follow Up Boss. Use when you need to modify the name or sort order of an appointment outcome." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_APPOINTMENT_TYPES", "name": "Update Appointment Type", "description": "Tool to update an existing appointment type in Follow Up Boss. Use when you need to modify the name or sort order of an appointment type." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_CALLS", "name": "Update Call", "description": "Tool to update an existing call record in Follow Up Boss. Use when you need to modify call details such as notes, duration, outcome, or other call attributes. Only calls created by the account/system making the API request can be updated." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_CUSTOM_FIELDS", "name": "Update Custom Fields", "description": "Tool to update an existing custom field in Follow Up Boss by its ID. Use when you need to modify the label, choices, ordering, or display settings of a custom field." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_DEAL_CUSTOM_FIELDS", "name": "Update Deal Custom Fields", "description": "Tool to update an existing deal custom field in Follow Up Boss. Use when you need to modify custom field properties like label, type, display settings, or dropdown choices." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_DEALS", "name": "Update Deal", "description": "Tool to update an existing deal in Follow Up Boss. Use when you need to modify deal details such as name, price, description, stage, or associated people and users." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_EM_CAMPAIGNS", "name": "Update Email Marketing Campaign", "description": "Tool to update an existing email marketing campaign in Follow Up Boss. Use when you need to modify campaign name, subject line, or HTML body content." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_GROUPS", "name": "Update Group", "description": "Tool to update an existing Follow Up Boss group with modified members and distribution settings. Use when you need to change group configuration or membership." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_PEOPLE_RELATIONSHIPS", "name": "Update People Relationships", "description": "Tool to update details of a specific people relationship in Follow Up Boss. Use when you need to modify relationship information such as name, type, contact details (emails, phones), or addresses." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_PIPELINES", "name": "Update Pipeline", "description": "Tool to update an existing pipeline in Follow Up Boss. Use when you need to modify pipeline properties such as name, description, order, or stages. Only the owner has access to create and modify pipelines." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_PONDS", "name": "Update Ponds", "description": "Tool to update an existing pond in Follow Up Boss. Use when you need to change the name, lead agent, or member list of a pond." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_STAGES", "name": "Update Stage", "description": "Tool to update an existing stage in Follow Up Boss. Use when you need to modify stage properties like name or sort order." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_TEAMS", "name": "Update Team", "description": "Tool to update an existing team in Follow Up Boss. Use when you need to modify team name, leaders, or members." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_TEMPLATES", "name": "Update email template", "description": "Tool to update an existing email template in Follow Up Boss. Use when you need to modify the name, subject, or body of an existing template." }, { "slug": "FOLLOW_UP_BOSS_UPDATE_TEXT_MESSAGE_TEMPLATE", "name": "Update Text Message Template", "description": "Tool to update an existing text message template in Follow Up Boss. Use when you need to modify the name, message content, or sharing settings of an existing SMS template." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "follow_up_boss_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" }, { "name": "generic_id", "displayName": "Integration name (X-System)", "type": "string", "description": "The name of the integration to use for the requests. This is sent to your email by FUB when you register the oauth client.", "required": false, "default": null }, { "name": "generic_id_2", "displayName": "Integration key (X-System-Key)", "type": "string", "description": "The key of the integration to use for the requests. This is sent to your email by FUB when you register the oauth client.", "required": false, "default": null } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "follow_up_boss_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Follow Up Boss API key (starts with 'fka_'). Create one under Admin → API and copy it right away — it's shown only once, so make a new key if you lost yours.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "forcemanager", "name": "Forcemanager", "logo": "https://logos.composio.dev/api/forcemanager", "description": "ForceManager is a mobile-first CRM designed to enhance sales team productivity by providing real-time insights and streamlined management of customer interactions.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FORCEMANAGER_DELETE_ACTIVITY", "name": "Delete Activity", "description": "Delete an existing activity by ID. Tries multiple base hosts and path variants to maximize compatibility across environments and gateways." }, { "slug": "FORCEMANAGER_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company by its ForceManager ID. Use when you need to remove an existing company from the system." }, { "slug": "FORCEMANAGER_DELETE_CONTACT", "name": "Delete Contact", "description": "Permanently deletes a contact from ForceManager by its unique ID. This action removes the specified contact and all associated data. The operation is irreversible. The action automatically tries multiple API endpoint combinations to ensure compatibility across different ForceManager deployments and configurations. Returns the HTTP status code and any response message from the API. A successful deletion typically returns a 200 status code." }, { "slug": "FORCEMANAGER_DELETE_SALES_ORDER", "name": "Delete Sales Order", "description": "Delete a sales order by ID using ForceManager REST API. Tries multiple base hosts and path variants to maximize compatibility across environments. Accepts successful HTTP status codes (< 300) even when the response is non-JSON, capturing response text." }, { "slug": "FORCEMANAGER_DELETE_SALES_ORDER_LINE", "name": "Delete Sales Order Line", "description": "Delete a sales order line by ID. Attempts deletion across multiple ForceManager API hosts and path variations to ensure compatibility. Returns detailed information about the deletion result, including any messages or status codes from the API. Use this when you need to remove a specific sales order line item from the system." }, { "slug": "FORCEMANAGER_DELETE_VALUE", "name": "Delete Master Data Value", "description": "Delete a master-data value (Z_ table) by ID using ForceManager REST API. Tries multiple base hosts and path variants to maximize compatibility across environments. Accepts successful HTTP status codes (< 300) even when the response is HTML instead of JSON, capturing the response text as a message. Also retries sending authentication headers as query parameters on HTTP 401 as some gateways expect them in query string." }, { "slug": "FORCEMANAGER_DELETE_VIEW", "name": "Delete View", "description": "Delete a saved view (custom filter) by its ID. Views in ForceManager are saved filter configurations that users create to quickly access filtered lists of entities (accounts, activities, opportunities, etc.). This action permanently removes a view that the authenticated user has permission to delete. **Use Cases:** - Remove outdated or unused custom filters - Clean up views after organizational changes - Programmatically manage view lifecycle **Requirements:** - Valid view ID that exists in the system - Appropriate permissions to delete the view - The view must be owned by or shared with the authenticated user **Note:** This action tries multiple ForceManager API endpoints to maximize compatibility across different deployment environments and API versions." }, { "slug": "FORCEMANAGER_GET_ACTIVITY", "name": "Get Activity", "description": "Retrieves a single activity by its ID from ForceManager CRM. Use this tool when you need to: - Fetch details of a specific activity by its ID - Check if an activity exists - Retrieve activity data including comments, dates, linked contacts/accounts, and location info The action attempts multiple ForceManager API endpoints to ensure compatibility across different API versions and deployment configurations. Returns found=False if the activity does not exist or cannot be retrieved. Authentication is handled automatically via headers from the connected account." }, { "slug": "FORCEMANAGER_GET_COMPANY", "name": "Get Company", "description": "Retrieve a single company by its ID from ForceManager. Returns company details when found, or an empty entity with found=False when the company doesn't exist or the API returns non-JSON content. The action automatically tries multiple ForceManager API endpoints for maximum compatibility. Use this to fetch company information including name, address, contact details, and custom fields. Check the 'found' field to determine if the company exists." }, { "slug": "FORCEMANAGER_GET_INTERNAL_ID", "name": "Get Internal ID", "description": "Tool to retrieve ForceManager internal IDs mapping for a given externalId and entity type. This action calls the documented endpoint /api/internalid with required authentication headers and optional pagination/version headers. It tries multiple base hosts to avoid HTML app shell responses and gracefully handles non-JSON responses and error codes by returning empty results instead of failing the execution." }, { "slug": "FORCEMANAGER_GET_PRODUCT", "name": "Get Product", "description": "Retrieve a single product by its ID from ForceManager/Sage Sales Management. This action tries multiple known ForceManager API endpoints in sequence until one succeeds. If a product is not found or the API returns non-JSON content, it returns found=False with an empty entity dict. This graceful handling allows agents to check for product existence without encountering errors. Use this when you need to fetch product details such as name, price, cost, category, or custom fields by product ID." }, { "slug": "FORCEMANAGER_GET_SALES_ORDER_LINE", "name": "Get Sales Order Line", "description": "Retrieves a single sales order line by ID from ForceManager. A sales order line represents a product item within a sales order, including quantity, pricing, and discount information. Use this when you need to fetch details about a specific line item in a sales order, such as product information, quantities, prices, or applied discounts." }, { "slug": "FORCEMANAGER_GET_USER", "name": "Get User", "description": "Retrieves a single ForceManager user by their ID, returning comprehensive user information including name, email, phone, active status, permission level, manager, branches, and more. Returns the complete user object if found, or an empty entity with found=False if the user doesn't exist, was deleted, or the API returns an error. Automatically tries multiple ForceManager API endpoints and versions to ensure compatibility. Use this when you need to: fetch user profile details, verify user existence, check user permissions/status, or retrieve user contact information." }, { "slug": "FORCEMANAGER_GET_VIEW", "name": "Get View", "description": "Tool to get a single view by ID. Returns a list with zero or one view object." }, { "slug": "FORCEMANAGER_LIST_VIEWS", "name": "List Views", "description": "Tool to list saved view filters. Use when you need to retrieve saved views for a specific entity (e.g., list views for entity 'account')." }, { "slug": "FORCEMANAGER_UPDATE_ACTIVITY", "name": "Update Activity", "description": "Tool to update an existing activity by ID. Use when you need to change fields such as comment, date/time, linked entities, or geocode." }, { "slug": "FORCEMANAGER_UPDATE_COMPANY", "name": "Update Company", "description": "Update Company" }, { "slug": "FORCEMANAGER_UPDATE_PRODUCT", "name": "Update Product", "description": "Updates an existing product by ID in ForceManager. Use this tool to modify product details such as name, price, cost, description, availability status, category, family, discount limits, and custom fields. The product must already exist - this action does not create new products. At least one field besides 'id' must be provided to update." }, { "slug": "FORCEMANAGER_UPDATE_SALES_ORDER", "name": "Update Sales Order", "description": "Update Sales Order" }, { "slug": "FORCEMANAGER_UPDATE_SALES_ORDER_LINE", "name": "Update Sales Order Line", "description": "Tool to update sales order line by ID. Use when modifying details of an existing sales order line. Retries with query auth on 401 for proxy-pro host." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "forcemanager_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Signature (Generated SHA1 Signature)", "type": "string", "description": "The SHA1 hash signature generated by concatenating the Unix timestamp, public key, and private key. Used for X-FM-Signature header.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "ForceManager Public API Key", "type": "string", "description": "The public key provided by ForceManager for API authentication. Typically set as the X-FM-PublicKey header.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "ForceManager Private API Key", "type": "string", "description": "The private key provided by ForceManager for API authentication. Used to generate the signature. This key should never be transmitted in plain text.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Unix Timestamp", "type": "string", "description": "The current Unix timestamp in UTC. Used for X-FM-UnixTimestamp header in ForceManager authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "formbricks", "name": "Formbricks", "logo": "https://logos.composio.dev/api/formbricks", "description": "Formbricks is an open-source platform for building and managing surveys, enabling organizations to collect and analyze user feedback effectively.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 45, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FORMBRICKS_CHECK_HEALTH", "name": "Check Health", "description": "Tool to check the health status of the Formbricks API. Use when you need to verify that the API is operational and responding to requests." }, { "slug": "FORMBRICKS_CREATE_ACTION_CLASS", "name": "Create Action Class", "description": "Tool to create a new action class. Use when defining custom action logic in your environment." }, { "slug": "FORMBRICKS_CREATE_ATTRIBUTE_CLASS", "name": "Create Attribute Class", "description": "Creates a new attribute class (custom contact attribute) in Formbricks. Attribute classes define the schema for contact attributes used for segmentation and personalization. Each attribute must have a unique key within the environment. Common examples include 'plan', 'tier', 'company', or custom business-specific attributes. Use this when you need to define new contact attribute types before tracking user data." }, { "slug": "FORMBRICKS_CREATE_CLIENT_USER", "name": "Create Client User", "description": "Tool to create or identify a user within a specified environment. If the user already exists, this will identify them and potentially update user attributes. If they don't exist, it will create a new user. Use when you need to register or update users in the client API for survey targeting." }, { "slug": "FORMBRICKS_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in a Formbricks environment. A contact represents a person or entity tracked in Formbricks for survey responses and interactions. The email serves as the unique identifier within an environment - if a contact with the same email already exists, this will update the existing contact. Use this action when you need to: - Register a new contact for survey distribution - Add contact information before sending surveys - Create or update contact records with custom attributes Prerequisites: - An environment ID (use GET_ME to retrieve available environments) - All attribute keys must exist in the environment (email is always available) - Write permissions on the API key" }, { "slug": "FORMBRICKS_CREATE_DISPLAY", "name": "Create Display", "description": "Create a display record to track when a survey is shown to users. Displays are used to measure survey view counts and can optionally be linked to a specific user. Use this after obtaining valid survey and environment IDs to register that a survey was displayed." }, { "slug": "FORMBRICKS_CREATE_RESPONSE", "name": "Create Survey Response", "description": "Tool to create a response for a survey. Use after collecting all survey answers." }, { "slug": "FORMBRICKS_CREATE_SURVEY", "name": "Create Survey", "description": "Tool to create a new survey. Use after defining survey details and questions." }, { "slug": "FORMBRICKS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook. Use when you need to register an external endpoint to receive form response events." }, { "slug": "FORMBRICKS_DELETE_ATTRIBUTE_CLASS", "name": "Delete Attribute Class", "description": "Tool to delete an attribute class. Use when you need to remove an attribute class by its ID after confirming it's no longer needed." }, { "slug": "FORMBRICKS_DELETE_PERSON", "name": "Delete Person", "description": "Tool to delete a person. Use when you need to remove a person's record from Formbricks after confirming the ID." }, { "slug": "FORMBRICKS_DELETE_RESPONSE", "name": "Delete Survey Response", "description": "Tool to delete a survey response by its ID. Use when you need to remove an existing response after confirming its ID." }, { "slug": "FORMBRICKS_DELETE_SURVEY", "name": "Delete Survey", "description": "Deletes a survey from Formbricks by its unique identifier. Use this action when you need to permanently remove a survey. The deletion cannot be undone. Before deletion, ensure you have the correct survey ID - you can list surveys first to verify. Returns the deleted survey's data including its ID, name, type, status, and timestamps." }, { "slug": "FORMBRICKS_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete an organization team by its ID. Use when you need to permanently remove a team from an organization. Requires write permissions on the organization. Returns the deleted team's details including ID, name, timestamps, and organization ID." }, { "slug": "FORMBRICKS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by ID. Use when you need to remove an existing webhook from Formbricks. Use after confirming the webhook ID." }, { "slug": "FORMBRICKS_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Retrieves environment information for the authenticated API key. Returns details about the environment (development or production) including the associated project and setup completion status. This is useful for understanding which environment and project you're working with." }, { "slug": "FORMBRICKS_GET_ALL_CONTACTS", "name": "Get All Contacts", "description": "Tool to retrieve all contacts within the organization. Use when you need a complete list of contacts." }, { "slug": "FORMBRICKS_GET_ATTRIBUTE_CLASS", "name": "Get Attribute Class", "description": "Tool to get a specific attribute class by ID. Use when you need to retrieve details of a specific attribute class for inspection or validation." }, { "slug": "FORMBRICKS_GET_CLIENT_CONTACTS_STATE", "name": "Get Client Contacts State", "description": "Tool to get the current state of a contact including surveys and segment information. Use when you need to retrieve tracking data for a specific user, including their segment memberships, survey displays, and response history. This endpoint uses the v2 client API." }, { "slug": "FORMBRICKS_GET_CONTACT_ATTRIBUTE_KEY", "name": "Get Contact Attribute Key", "description": "Tool to retrieve detailed information about a specific contact attribute key by ID (v2 API). Use when you need to inspect the properties of a contact attribute key such as its type, uniqueness requirement, or associated environment." }, { "slug": "FORMBRICKS_GET_CONTACT_BY_ID", "name": "Get Contact by ID", "description": "Tool to retrieve a specific contact by its ID. Use when you need to fetch detailed information about a single contact." }, { "slug": "FORMBRICKS_GET_ME", "name": "Get Me", "description": "Tool to retrieve current authenticated organization's and environment details. Use when you need to fetch organization and environment information for the current API key." }, { "slug": "FORMBRICKS_GET_PERSON_BY_ID", "name": "Get Person by ID", "description": "Tool to retrieve a person by their internal ID in Formbricks. Use when you need detailed information about a specific person, including all their custom attributes. The person ID can be obtained from the Get All Persons endpoint." }, { "slug": "FORMBRICKS_GET_RESPONSES", "name": "Get Responses", "description": "Retrieve survey responses with flexible filtering, sorting, and pagination. Use this tool to: - List all responses across surveys or filter by specific surveyId - Filter responses by contactId to see submissions from a specific contact - Apply date range filters (startDate/endDate) with filterDateField - Sort by creation or update time (sortBy: createdAt/updatedAt) - Paginate through large result sets (limit: 1-250, skip for offset) Returns detailed response data including answers, completion status, timestamps, contact attributes, time-to-complete metrics, and pagination metadata." }, { "slug": "FORMBRICKS_GET_ROLES", "name": "Get Roles", "description": "Tool to retrieve all available roles in the system. Use when you need system roles for access control." }, { "slug": "FORMBRICKS_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook. Use when you need to inspect a webhook's configuration by ID." }, { "slug": "FORMBRICKS_LIST_ACTION_CLASSES", "name": "List Action Classes", "description": "List all action classes in your Formbricks environment. Action classes define trackable user interactions (like clicks, page views, form submissions) that can trigger surveys or be used in targeting logic. Use this to discover what actions are available for survey triggers and audience segmentation." }, { "slug": "FORMBRICKS_LIST_ATTRIBUTE_CLASSES", "name": "List Attribute Classes", "description": "Tool to list all attribute classes. Use when you need to retrieve existing attribute classes for segmentation or management." }, { "slug": "FORMBRICKS_LIST_CLIENT_ENVIRONMENT", "name": "List Client Environment", "description": "Tool to retrieve environment state for Formbricks SDKs. Use when you need to fetch the complete environment configuration including surveys, action classes, and project settings. Note: This endpoint uses server-side caching with a 5-minute TTL, so changes may take up to 5 minutes to reflect." }, { "slug": "FORMBRICKS_LIST_CONTACT_ATTRIBUTE_KEYS", "name": "List Contact Attribute Keys", "description": "Tool to retrieve contact attribute keys from Formbricks. Use when you need to list all available contact attributes for segmentation, filtering, or contact management. Supports pagination, sorting, and date filtering." }, { "slug": "FORMBRICKS_LIST_HEALTH", "name": "List Health", "description": "Tool to check the health status of critical application dependencies including database and cache. Use when you need to verify that Formbricks services are operational." }, { "slug": "FORMBRICKS_LIST_MANAGEMENT_CONTACT_ATTRIBUTES", "name": "List Management Contact Attributes", "description": "Tool to retrieve all contact attributes in the environment. Use when you need to view custom data stored for contacts across the organization." }, { "slug": "FORMBRICKS_LIST_MANAGEMENT_ME", "name": "List Management Me", "description": "Tool to retrieve authenticated user's environment and project information. Use when you need to get details about the environment associated with the current API key, including project details and setup status." }, { "slug": "FORMBRICKS_LIST_MANAGEMENT_PEOPLE", "name": "List Management People", "description": "Tool to retrieve all people (legacy term for contacts) in the environment. Use when you need a complete list of people with their attributes." }, { "slug": "FORMBRICKS_LIST_ORGANIZATIONS_PROJECT_TEAMS", "name": "List Organizations Project Teams", "description": "Tool to list all project-team assignments for an organization (v2 API only). Use when you need to retrieve which teams are assigned to which projects, along with their permission levels. Supports filtering by team, project, date range, and pagination." }, { "slug": "FORMBRICKS_LIST_ORGANIZATION_TEAMS", "name": "List Organization Teams", "description": "Tool to retrieve all teams in an organization (v2 API). Use when you need to list teams within a specific organization, with support for pagination, sorting, and date-based filtering. Returns team details including ID, name, timestamps, and organization ID." }, { "slug": "FORMBRICKS_LIST_SURVEYS", "name": "List Surveys", "description": "List all surveys in the environment. Use this tool to: - Retrieve all surveys with complete configuration details - Access survey questions, endings, triggers, and styling - View survey status and metadata (created/updated timestamps, creator) - Get display settings, targeting, and language configurations Returns complete survey objects including questions, endings, welcome cards, triggers, display options, styling, and all other configuration settings." }, { "slug": "FORMBRICKS_LIST_WEBHOOKS", "name": "List Webhooks", "description": "List all webhooks configured for the current environment. Returns webhooks with pagination support and optional filtering by survey IDs, date ranges, and sorting. Use this action to retrieve webhook configurations, check which surveys have webhooks enabled, or audit webhook settings." }, { "slug": "FORMBRICKS_UPDATE_CONTACT_ATTRIBUTES", "name": "Update Contact Attributes", "description": "Tool to update a contact's attributes in Formbricks. Use when you need to keep contact information in sync with your app or set custom attributes." }, { "slug": "FORMBRICKS_UPDATE_RESPONSE", "name": "Update Survey Response", "description": "Tool to update an existing survey response. Use after identifying the response to modify." }, { "slug": "FORMBRICKS_UPDATE_SURVEY", "name": "Update Survey", "description": "Updates an existing Formbricks survey with new properties. Only include fields you want to modify - all fields except 'id' are optional. Common use cases: - Change survey status (e.g., from 'draft' to 'inProgress' to make it live) - Update survey name or closed message - Modify display settings (delay, frequency, percentage) - Add/update questions, welcome cards, or ending screens - Configure triggers and targeting Requires: Valid survey ID (get from List Surveys or Create Survey actions)" }, { "slug": "FORMBRICKS_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook. Use when you need to apply modifications to a webhook's configuration." }, { "slug": "FORMBRICKS_UPLOAD_BULK_CONTACTS", "name": "Upload Bulk Contacts", "description": "Upload multiple contacts to a Formbricks environment in bulk (up to 250 per request). Each contact must include an 'email' attribute with a valid email address. Additional attributes like firstName, lastName, or custom fields can be included. The API returns status 200 for full success or 207 for partial success with details about skipped contacts. Use this tool when you need to efficiently import multiple contacts at once instead of creating them individually." }, { "slug": "FORMBRICKS_UPLOAD_PRIVATE_FILE", "name": "Upload Private File", "description": "Tool to obtain S3 presigned upload data for a private survey file. Use after confirming environmentId and surveyId." }, { "slug": "FORMBRICKS_UPLOAD_PUBLIC_FILE", "name": "Upload Public File", "description": "Retrieves S3 presigned upload URLs and form fields for uploading a public file to Formbricks storage. Returns signed URL and presigned fields needed to upload files directly to S3. Maximum file size: 5MB. Uploaded files are publicly accessible. Requires write permissions on the specified environment." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "formbricks_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Formbricks API Key", "type": "string", "description": "Your Formbricks API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "formdesk", "name": "Formdesk", "logo": "https://logos.composio.dev/api/formdesk", "description": "Formdesk is an online form builder that allows users to create and manage professional online forms with flexible features and integrations.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FORMDESK_AUTOMATIC_LOGIN", "name": "Validate Formdesk Authentication", "description": "Validates the Formdesk API bearer token and returns authentication details. This action confirms that your connected Formdesk account credentials are valid by making a test API call to the /forms endpoint. It returns the bearer token information that can be used for subsequent authenticated requests. **Important**: This does NOT perform username/password login. Formdesk uses API keys (bearer tokens) for authentication, which are obtained from your Formdesk account's User Management section. The username/password parameters are placeholders for API compatibility and are not used. **Use this action to**: - Verify that your Formdesk API credentials are valid - Retrieve the bearer token from your connected account - Confirm API connectivity before performing other operations **How it works**: 1. Uses the bearer token from your connected account metadata 2. Validates the token by calling the Formdesk /forms endpoint 3. Returns token details if validation succeeds" }, { "slug": "FORMDESK_CREATE_ENTRY", "name": "Create Formdesk Entry", "description": "Submit a new entry (result) to a Formdesk form. This action creates a new form submission with the provided field values. Before using this action: 1. Use FORMDESK_GET_FORM_LIST to find the form ID 2. Use FORMDESK_GET_FORM_FIELDS to understand which fields the form expects 3. Prepare field values that match the form's schema The action returns the ID of the newly created entry, which can be used with FORMDESK_GET_ENTRY_DETAILS to retrieve the full entry data." }, { "slug": "FORMDESK_CREATE_FIELD", "name": "Create Field", "description": "Creates a new field in a Formdesk form. Use this action to add fields like text inputs, email fields, textareas, checkboxes, date pickers, etc. to an existing form. You must have the form ID from FORMDESK_GET_FORM_LIST or FORMDESK_GET_FORM_DETAILS before creating fields. The field definition should specify at minimum the field name, type, and label. Additional properties like 'required', 'placeholder', 'description', and 'default' can be included." }, { "slug": "FORMDESK_CREATE_VISITOR", "name": "Create Visitor", "description": "Tool to add a new visitor to a specific Formdesk form. Use when you need to register a visitor's metadata before submitting entries." }, { "slug": "FORMDESK_DELETE_ENTRY", "name": "Delete Formdesk Entry", "description": "Deletes a specific entry (form submission/result) from a Formdesk form. This action is idempotent - it will succeed even if the entry doesn't exist (404), making it safe to call multiple times. Use this when you need to remove a form submission permanently. The entry can be obtained from GET_FORM_ENTRIES or GET_ENTRY_DETAILS actions." }, { "slug": "FORMDESK_DELETE_FIELD", "name": "Delete Field in Formdesk", "description": "Tool to delete a specific field in a Formdesk form. Use after confirming formId and fieldId." }, { "slug": "FORMDESK_DELETE_FORM", "name": "Delete Form in Formdesk", "description": "Delete a specific form from Formdesk. This action permanently removes a form from the Formdesk account. Use with caution as this operation is destructive and cannot be undone. If the form ID does not exist, the action returns success=False with an appropriate message rather than raising an error. Returns success=True if the form was deleted, or success=False if the form was not found." }, { "slug": "FORMDESK_DELETE_VISITOR", "name": "Delete Visitor in Formdesk", "description": "Deletes a specific visitor from a Formdesk form. This action is idempotent - it will succeed even if the visitor doesn't exist (404), making it safe to call multiple times. Use this to remove a visitor from a form's visitor list. Obtain valid form_id from GET_FORM_LIST and visitor_id from GET_FORM_VISITORS actions." }, { "slug": "FORMDESK_GET_FIELD_DETAILS", "name": "Get Field Details", "description": "Retrieves comprehensive details about a specific field in a Formdesk form. Returns structured information including field ID, name, type (e.g., text, email, number), label, validation rules, and whether the field is required. Use this after obtaining formId from Get Form List and fieldId from Get Form Fields to inspect specific field properties, validation rules, or configuration." }, { "slug": "FORMDESK_GET_FORM_DETAILS", "name": "Get Form Details", "description": "Retrieves comprehensive details about a specific Formdesk form by its ID. Returns form metadata including name, description, active status, timestamps, public URL, and configuration settings. Use this when you need to inspect form properties or verify form existence before performing other operations." }, { "slug": "FORMDESK_GET_FORM_FIELDS", "name": "Get Form Fields", "description": "Tool to retrieve all fields of a specific form. Use after obtaining the formId to inspect its field definitions." }, { "slug": "FORMDESK_GET_FORM_LIST", "name": "Get Form List", "description": "Retrieve a list of all forms in the Formdesk account. This action returns basic information about each form including its ID and name. Use the form ID with other actions (like Get Form Details, Get Form Fields, Get Form Entries) to access more detailed information about a specific form. No parameters are required - this action lists all forms accessible with the current authentication credentials." }, { "slug": "FORMDESK_GET_FORM_VISITORS", "name": "Get Form Visitors", "description": "Retrieves all visitors registered to access a specific Formdesk form. Visitors are users who have been granted access to view or complete a form. This action returns visitor details including their credentials, permissions, and registration information. Use this when you need to list all visitors for a form or check visitor access rights. Note: First use 'Get Form List' to obtain valid form IDs if you don't have one." }, { "slug": "FORMDESK_GET_VISITOR_DETAILS", "name": "Get Visitor Details", "description": "Retrieve complete details of a specific visitor in a Formdesk form. A visitor represents a unique person or entity who can submit entries to a form. Visitors have attributes (name, email, custom fields) and can be associated with multiple form entries. Use this action to get full visitor information including all custom attributes defined in your form. Prerequisites: You must have both the form_id and visitor_id. Obtain these from: - form_id: Use 'Get Form List' action - visitor_id: Use 'Get Form Visitors' or 'Create Visitor' actions" }, { "slug": "FORMDESK_KVK_HANDELSREGISTER_LOOKUP", "name": "KVK Handelsregister Lookup", "description": "Tool to lookup company details from the Dutch KVK Handelsregister. Use when auto-filling company address fields." }, { "slug": "FORMDESK_MANAGE_VISITOR_ENTRIES", "name": "Manage Visitor Entries", "description": "Retrieve form entries (submissions) from a Formdesk form. This action fetches submission data from a form's results database. You can: - List all entries in a form - Filter entries by visitor ID - Retrieve a specific entry by its ID Use cases: - View all form submissions - Track entries submitted by specific visitors - Retrieve detailed information about a specific submission Note: The form must exist and be accessible with your API credentials." }, { "slug": "FORMDESK_MULTIPLE_PAGES_FORM", "name": "Create Multi-Page Form", "description": "Tool to create a multi-page Formdesk form. Use when you need forms split into multiple pages for better user experience." }, { "slug": "FORMDESK_UPDATE_FIELD", "name": "Update Field", "description": "Updates properties of an existing field in a Formdesk form. This action modifies field configuration such as labels, types, validation rules, required status, placeholder text, help text, and default values. Only the properties specified in the request are updated; other properties remain unchanged (partial update). Use this when you need to: - Change a field's display label or help text - Modify field validation requirements - Update placeholder or default values - Change field type or options for select/radio fields - Toggle required/optional status Note: Requires valid form_id and field_id from existing Formdesk resources." }, { "slug": "FORMDESK_UPDATE_FORM", "name": "Update Form", "description": "Updates properties of an existing form in Formdesk. Use this action to: - Rename a form - Activate or deactivate a form (control whether it accepts responses) - Update other form metadata At least one of 'name' or 'isActive' must be provided. Only specified fields will be updated; other properties will remain unchanged. Use GET_FORM_LIST to retrieve valid form IDs first." }, { "slug": "FORMDESK_UPDATE_VISITOR", "name": "Update Visitor", "description": "Update an existing visitor's attributes in a Formdesk form. A visitor represents a unique person or entity who can submit entries to a form. This action modifies visitor attributes such as name, email, or custom fields. Only the attributes you specify will be updated; other attributes remain unchanged. Prerequisites: You must have both the form_id and visitor_id. Obtain these from: - form_id: Use 'Get Form List' action - visitor_id: Use 'Get Form Visitors', 'Create Visitor', or 'Get Visitor Details' actions Use Cases: - Update visitor contact information (email, phone, address) - Correct visitor name or other profile details - Modify custom visitor attributes defined in your form - Keep visitor records synchronized with external systems" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "formdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Formdesk Domain", "type": "string", "description": "Your unique Formdesk account name (also called 'folder of forms'). Found in your account settings or as the first part of the URL path when accessing forms.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Formdesk API Key", "type": "string", "description": "The API key for your Formdesk account. Can be found or created within User Management in your Formdesk account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "frappe", "name": "Frappe", "logo": "https://logos.composio.dev/api/frappe", "description": "Open-source web framework for building business applications with built-in ERP capabilities", "category": "developer tools", "authSchemes": [ "API_KEY", "BASIC", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "frappe_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,all" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Frappe instance URL (e.g., https://your-instance.frappe.cloud)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "frappe_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Frappe instance URL (e.g., https://your-instance.frappe.cloud)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Frappe API Key - used as username for Basic auth", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your Frappe API Secret - used as password for Basic auth", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "frappe_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Frappe instance URL (e.g., https://your-instance.frappe.cloud or https://demo.erpnext.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Frappe API Key - generate in User Settings > API Access", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret", "type": "string", "description": "Your Frappe API Secret - shown only once during generation", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fraudlabs_pro", "name": "FraudLabs Pro", "logo": "https://www.fraudlabspro.com/images/logo.png", "description": "FraudLabs Pro is an online payment fraud detection service that helps merchants minimize chargebacks and maximize revenue by detecting fraud across various payment methods.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FRAUDLABS_PRO_CREATE_ACCOUNT", "name": "Create FraudLabs Pro Reseller Sub-Account", "description": "Creates a new FraudLabs Pro user account under a reseller account. Requires a Reseller API key (not a regular API key). Use this action to provision new sub-accounts for customers when operating as a FraudLabs Pro reseller. Returns account credentials (username and password) upon successful creation. Prerequisites: - Must have a FraudLabs Pro Reseller account (apply at https://www.fraudlabspro.com/reseller/program) - Requires valid Reseller API key (different from standard FraudLabs Pro API key) - All required fields must contain valid data matching FraudLabs Pro validation rules Important: - Phone numbers should contain only digits (no +, -, spaces, or parentheses) - Country must be valid ISO 3166-1 alpha-2 code (e.g., US, GB, CA) - Industry must be a valid ID from 1-14" }, { "slug": "FRAUDLABS_PRO_FLP_FEEDBACK_ORDER", "name": "FLP Feedback Order", "description": "Submit fraud screening feedback to improve FraudLabs Pro's machine learning model. Use this after reviewing a screened order to mark it as approved, rejected, or blacklisted. This feedback trains the algorithm to better detect fraud patterns in future transactions." }, { "slug": "FRAUDLABS_PRO_FLP_SCREEN_ORDER", "name": "FraudLabs Pro Screen Order", "description": "Tool to screen orders for fraud. Use when you need to assess transaction risk before fulfillment." }, { "slug": "FRAUDLABS_PRO_GET_ORDER_RESULT2", "name": "Get FraudLabs Pro Order Result (v2)", "description": "Tool to retrieve an existing transaction from FraudLabs Pro fraud detection system using the v2 API. This API is only available for paid plans." }, { "slug": "FRAUDLABS_PRO_GET_SMS_VERIFICATION_RESULT", "name": "Get SMS Verification Result", "description": "Verify an OTP (one-time password) received via SMS. Returns 'Y' if the OTP is valid, 'N' if invalid or expired. Must be called after using Send SMS Verification to obtain a transaction ID." }, { "slug": "FRAUDLABS_PRO_SEND_SMS_VERIFICATION", "name": "Send SMS OTP Verification", "description": "Sends an SMS message containing a one-time password (OTP) to verify a user's phone number. The API generates a random 6-digit OTP, replaces the placeholder in your message template, and sends the SMS to the recipient. Returns a transaction ID that you must use with the Get SMS Verification Result action to verify the OTP the user enters. Testing: Use phone number '+11' for sandbox testing (no credits deducted). For verification testing with sandbox number, use OTP '123456'." }, { "slug": "FRAUDLABS_PRO_SUBSCRIBE_PLAN", "name": "Subscribe Reseller Plan", "description": "Tool to subscribe a reseller account to a specific plan. Use after obtaining a reseller API key and selecting a plan. Example: Subscribe user \"john_doe\" to the MICRO plan." }, { "slug": "FRAUDLABS_PRO_WEBHOOK_ORDER_STATUS_CHANGED", "name": "Test Order Status Changed Webhook Delivery", "description": "Tool to send a test webhook payload to the provided callback URL for FraudLabs Pro order status change notifications. This helps validate your endpoint behavior. Important: FraudLabs Pro webhook registration must be configured manually via dashboard." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fraudlabs_pro_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "FraudLabs Pro API Key", "type": "string", "description": "Your FraudLabs Pro API license key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freeagent", "name": "Freeagent", "logo": "https://logos.composio.dev/api/freeagent", "description": "Cloud-based accounting software for freelancers and small businesses", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 76, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FREEAGENT_CASHFLOW_SUMMARY_FOR_A_GIVEN_DATE_RANGE", "name": "Cashflow summary for a date range", "description": "Tool to retrieve cashflow summary for a given date range from FreeAgent. Use when you need to analyze cash inflow and outflow over a specific period. Provides net cashflow balance, incoming and outgoing totals, and monthly breakdowns." }, { "slug": "FREEAGENT_COMPANY_DETAILS", "name": "Get Company Details", "description": "Tool to retrieve company details from FreeAgent. Use when you need information about the company's registration, accounting periods, or settings." }, { "slug": "FREEAGENT_CREATE_A_JOURNAL_SET", "name": "Create a Journal Set", "description": "Tool to create a journal set in FreeAgent. Use when you need to create manual journal entries for accounting corrections or adjustments. All journal entries must balance to zero (total debits equal total credits)." }, { "slug": "FREEAGENT_CREATE_A_SALES_TAX_PERIOD", "name": "Create Sales Tax Period", "description": "Tool to create a sales tax period in FreeAgent. Use when you need to establish a new sales tax period with specific rates and settings for tax reporting." }, { "slug": "FREEAGENT_CREATE_A_TASK_UNDER_A_CERTAIN_PROJECT", "name": "Create Task Under Project", "description": "Tool to create a task under a specific project in FreeAgent. Use when you need to add a new task to an existing project for tracking billable or non-billable work." }, { "slug": "FREEAGENT_CREATE_A_TIMESLIP", "name": "Create A Timeslip", "description": "Tool to create a new timeslip in FreeAgent. Use when you need to log time worked on a project task by a specific user on a given date." }, { "slug": "FREEAGENT_CREATE_A_USER", "name": "Create a User", "description": "Tool to create a new user in FreeAgent. Use when you need to add a new team member with specific role and permissions. Requires 'Tax, Accounting & Users' permission level." }, { "slug": "FREEAGENT_CREATE_BANK_ACCOUNT", "name": "Create Bank Account", "description": "Tool to create a bank account in FreeAgent. Use when you need to add a new bank account, PayPal account, or credit card account to track financial transactions." }, { "slug": "FREEAGENT_CREATE_BILL_WITH_ATTACHMENT", "name": "Create Bill with Attachment", "description": "Tool to create a bill with optional attachment in FreeAgent. Use when you need to record a supplier bill with line items and optionally attach supporting documentation." }, { "slug": "FREEAGENT_CREATE_CATEGORY", "name": "Create Category", "description": "Tool to create a custom category in FreeAgent. Use when you need to add a new category for classifying income or costs. Note that tax_reporting_name is required for cost_of_sales, admin_expenses, current_assets, and liabilities. The allowable_for_tax field is required for cost_of_sales and admin_expenses." }, { "slug": "FREEAGENT_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in FreeAgent. Use when you need to add a new client, supplier, or business contact with their details." }, { "slug": "FREEAGENT_CREATE_CREDIT_NOTE", "name": "Create Credit Note", "description": "Tool to create a credit note in FreeAgent. Use when you need to issue a credit note to a contact for refunds or adjustments. The credit note is created with 'Draft' status." }, { "slug": "FREEAGENT_CREATE_CREDIT_NOTE_RECONCILIATION", "name": "Create Credit Note Reconciliation", "description": "Tool to create a credit note reconciliation in FreeAgent. Use when you need to reconcile a credit note against an invoice, offsetting the invoice amount with the credit note." }, { "slug": "FREEAGENT_CREATE_ESTIMATE", "name": "Create Estimate", "description": "Tool to create a new estimate in FreeAgent. Use when you need to create an estimate, quote, or proposal for a client. Requires contact, reference, date, type, status, and at least one estimate item with position, item_type, quantity, price, and description." }, { "slug": "FREEAGENT_CREATE_ESTIMATE_ITEM", "name": "Create Estimate Item", "description": "Tool to create an estimate item in FreeAgent. Use when you need to add a line item to an existing estimate with details like position, type, quantity, price, and optional description." }, { "slug": "FREEAGENT_CREATE_ESTIMATES_DUPLICATE", "name": "Duplicate Estimate", "description": "Tool to duplicate an existing estimate in FreeAgent. Use when you need to create a copy of an estimate. The duplicated estimate will always have status=Draft, the next reference in the sequence, and dated_on set to today." }, { "slug": "FREEAGENT_CREATE_ESTIMATES_SEND_EMAIL", "name": "Send Estimate Email", "description": "Tool to email an estimate in FreeAgent. Use when you need to send an estimate to a contact via email with customizable subject, body, and attachments. You can use an existing email template (use_template=true) or provide manual email fields." }, { "slug": "FREEAGENT_CREATE_INVOICE", "name": "Create Invoice", "description": "Tool to create an invoice in FreeAgent. Use when you need to generate a new invoice for a contact. The invoice will be created in 'Draft' status and can be modified or sent later." }, { "slug": "FREEAGENT_CREATE_INVOICE_ITEM", "name": "Create Invoice Item", "description": "Tool to create an invoice item in FreeAgent. Use when you need to add a line item to an existing invoice with details like type, quantity, price, and description." }, { "slug": "FREEAGENT_CREATE_INVOICES_DUPLICATE", "name": "Duplicate Invoice", "description": "Tool to duplicate an existing invoice in FreeAgent. Use when you need to create a new invoice based on an existing one. The duplicated invoice is always created with status 'Draft', today's date, and the next reference number in sequence." }, { "slug": "FREEAGENT_CREATE_NOTES", "name": "Create Note", "description": "Tool to create a note for a contact or project in FreeAgent. Use when you need to add documentation, reminders, or context to contacts or projects." }, { "slug": "FREEAGENT_CREATE_PRICE_LIST_ITEMS", "name": "Create Price List Item", "description": "Tool to create a price list item in FreeAgent. Use when you need to add a new item to the price list with code, description, pricing, and tax information." }, { "slug": "FREEAGENT_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a project in FreeAgent. Use when you need to set up a new project for tracking time, expenses, and billing against a specific client or internal initiative." }, { "slug": "FREEAGENT_DELETE_BANK_TRANSACTION", "name": "Delete Bank Transaction Explanation", "description": "Tool to delete a bank transaction explanation in FreeAgent. Use when you need to remove an explanation from a bank transaction." }, { "slug": "FREEAGENT_DELETE_ESTIMATES_DEFAULT_ADDITIONAL_TEXT", "name": "Delete Estimates Default Additional Text", "description": "Tool to delete default additional text for estimates in FreeAgent. Use when you need to remove the default additional text that appears on estimates." }, { "slug": "FREEAGENT_DELETE_NOTES1", "name": "Delete Note", "description": "Tool to delete a note by its ID. Use when you need to permanently remove a note from FreeAgent." }, { "slug": "FREEAGENT_GET_INVOICE_TIMELINE", "name": "Get Invoice Timeline", "description": "Tool to retrieve invoice timeline showing chronological record of invoice-related events. Use when you need to track invoice payment history and related activities." }, { "slug": "FREEAGENT_GET_MILEAGE_SETTINGS", "name": "Get Mileage Settings", "description": "Tool to retrieve mileage settings including engine type/size options and reimbursement rates. Use when you need to determine valid engine configurations or current mileage rates for expense claims." }, { "slug": "FREEAGENT_GET_OPENING_BALANCES", "name": "Get Opening Balances", "description": "Tool to retrieve the Opening Balances journal set for a company. Use when you need to access initial account balances including journal entries, bank accounts, and stock items." }, { "slug": "FREEAGENT_GET_PERSONAL_PROFILE", "name": "Get Personal Profile", "description": "Tool to retrieve the authenticated user's personal profile from FreeAgent. Use when you need information about the current user's details, role, or permissions." }, { "slug": "FREEAGENT_GET_THE_OPENING_BALANCES", "name": "Get the Opening Balances", "description": "Tool to retrieve the opening balances from the trial balance summary. Use when you need to get the initial balance amounts for all account categories at the start of the accounting period." }, { "slug": "FREEAGENT_GET_THE_PL_SUMMARY", "name": "Get the P&L summary", "description": "Tool to retrieve the Profit and Loss summary for a specified period from FreeAgent. Use when you need financial performance overview including income, expenses, and retained profit." }, { "slug": "FREEAGENT_GET_THE_TRIAL_BALANCE_SUMMARY", "name": "Get Trial Balance Summary", "description": "Tool to get the trial balance summary from FreeAgent. Use when you need to retrieve the trial balance report data for accounting purposes." }, { "slug": "FREEAGENT_LIST_ACCOUNTING_BALANCE_SHEET", "name": "Get Balance Sheet", "description": "Tool to retrieve the balance sheet for a FreeAgent account. Use when you need to get financial position data including assets, liabilities, and equity. Returns balance sheet data for the specified date or current date if not specified." }, { "slug": "FREEAGENT_LIST_ACCOUNTING_BALANCE_SHEET2", "name": "Get Opening Balances", "description": "Tool to retrieve opening balances for the balance sheet from FreeAgent. Use when you need to get the initial financial position values including capital assets, current assets, liabilities, and equity." }, { "slug": "FREEAGENT_LIST_ACCOUNTING_TRANSACTIONS", "name": "List Accounting Transactions", "description": "Tool to list all accounting transactions from FreeAgent. Use when you need to retrieve transaction history for accounting purposes. Filter by date range or nominal code to narrow results." }, { "slug": "FREEAGENT_LIST_ALL_CIS_BANDS_FOR_A_COMPANY", "name": "List All CIS Bands", "description": "Tool to list all CIS (Construction Industry Scheme) bands for a company. Use when you need to retrieve the available CIS bands configured for a UK company enrolled in CIS for Subcontractors. The bands include gross, standard, and higher rate bands with their respective deduction rates and nominal codes." }, { "slug": "FREEAGENT_LIST_ALL_EXPENSES", "name": "List All Expenses", "description": "Tool to list all expenses from FreeAgent. Use when you need to retrieve expense records, optionally filtered by view type (recent/recurring), date range, project, or last update timestamp." }, { "slug": "FREEAGENT_LIST_ALL_PRICE_LIST_ITEMS", "name": "List All Price List Items", "description": "Tool to list all price list items from FreeAgent. Use when you need to retrieve all price list items with optional sorting by creation date, code, or update date." }, { "slug": "FREEAGENT_LIST_ALL_PROPERTIES", "name": "List All Properties", "description": "Tool to list all properties in FreeAgent. Use when you need to retrieve property records for UK unincorporated landlord companies. Supports pagination for large result sets." }, { "slug": "FREEAGENT_LIST_ALL_RECURRING_INVOICES", "name": "List All Recurring Invoices", "description": "Tool to retrieve a list of recurring invoices from FreeAgent. Use when you need to query recurring invoices by status or contact. Supports filtering by draft, active, or inactive status and can include nested invoice line items." }, { "slug": "FREEAGENT_LIST_ALL_SALES_TAX_PERIODS_FOR_A_COMPANY", "name": "List All Sales Tax Periods", "description": "Tool to list all sales tax periods for a company in FreeAgent. Use when you need to retrieve sales tax configuration history including rates, registration status, and effective dates. Available for US and Universal companies only." }, { "slug": "FREEAGENT_LIST_ALL_STOCK_ITEMS", "name": "List All Stock Items", "description": "Tool to list all stock items from FreeAgent. Use when you need to retrieve stock items with optional sorting by creation date, description, or update date." }, { "slug": "FREEAGENT_LIST_ALL_TASKS", "name": "List All Tasks", "description": "Tool to list all tasks in FreeAgent. Use when you need to retrieve tasks with optional filtering by status, project, or update date, and sorting options." }, { "slug": "FREEAGENT_LIST_ALL_TIMESLIPS", "name": "List All Timeslips", "description": "Tool to list all timeslips from FreeAgent. Use when you need to retrieve time tracking records with optional filtering by date range, user, project, task, billing status, or last update timestamp." }, { "slug": "FREEAGENT_LIST_ALL_USERS", "name": "List All Users", "description": "Tool to list users in FreeAgent. Use when you need to retrieve users with optional filtering by type (all, staff, advisors). Requires 'Tax, Accounting & Users' permission scope." }, { "slug": "FREEAGENT_LIST_BANK_ACCOUNTS", "name": "List Bank Accounts", "description": "Tool to list bank accounts in FreeAgent. Use when you need to retrieve all bank accounts or filter by account type (standard, credit card, or PayPal)." }, { "slug": "FREEAGENT_LIST_BANK_FEEDS", "name": "List Bank Feeds", "description": "Tool to list all bank feeds for a company. Use when you need to retrieve the list of bank feeds and their current status." }, { "slug": "FREEAGENT_LIST_BANK_TRANSACTIONS", "name": "List Bank Transactions", "description": "Tool to list all bank transactions under a certain bank account in FreeAgent. Use when you need to retrieve transaction history, reconcile accounts, or find specific transactions for a bank account." }, { "slug": "FREEAGENT_LIST_BILLS", "name": "List Bills", "description": "Tool to retrieve a list of bills from FreeAgent. Use when you need to view bills with optional filters by status, date range, contact, or project." }, { "slug": "FREEAGENT_LIST_BUSINESS_CATEGORIES", "name": "List Business Categories", "description": "Tool to retrieve all available business categories from FreeAgent. Use when you need to get the complete list of industry classifications for company categorization." }, { "slug": "FREEAGENT_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to retrieve all categories for the current FreeAgent company. Categories are used to classify income or costs for estimate items, invoice items, expenses, bills, and bank transaction explanations. Returns four category sets: admin expenses, cost of sales, income, and general. Use sub_accounts parameter to include sub-accounts instead of top-level accounts." }, { "slug": "FREEAGENT_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts in FreeAgent. Use when you need to retrieve contacts with optional filtering by type, sort order, or update date." }, { "slug": "FREEAGENT_LIST_CREDIT_NOTE_RECONCILIATIONS", "name": "List Credit Note Reconciliations", "description": "Tool to retrieve all credit note reconciliations from FreeAgent. Use when you need to list credit notes that have been reconciled against invoices. Optionally filter by update timestamp or date range." }, { "slug": "FREEAGENT_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Tool to list credit notes from FreeAgent. Use when you need to retrieve credit notes with optional filtering by contact, project, status, or date range. Requires 'Estimates and Invoices' permission." }, { "slug": "FREEAGENT_LIST_EC_MOSS_SALES_TAX_RATES", "name": "List EC MOSS Sales Tax Rates", "description": "Tool to retrieve EC VAT MOSS sales tax rates for a specific EU country and date. Use when you need to determine the applicable VAT rates for cross-border digital services within the EU." }, { "slug": "FREEAGENT_LIST_ESTIMATES", "name": "List Estimates", "description": "Tool to list estimates in FreeAgent. Use when you need to retrieve estimates with optional filtering by status, date range, contact, project, or invoice. Set nested_estimate_items to true to include estimate items in the response." }, { "slug": "FREEAGENT_LIST_ESTIMATES_DEFAULT_ADDITIONAL_TEXT", "name": "Get Default Estimates Additional Text", "description": "Tool to retrieve the default additional text for estimates. Use when you need to get the default text that appears on all estimate documents." }, { "slug": "FREEAGENT_LIST_FINAL_ACCOUNTS_REPORTS", "name": "List Final Accounts Reports", "description": "Tool to list final accounts reports for a company in FreeAgent. Use when you need to retrieve all final accounts reports with their filing status and period dates." }, { "slug": "FREEAGENT_LIST_HIRE_PURCHASES", "name": "List Hire Purchases", "description": "Tool to retrieve all hire purchases for the authorized FreeAgent account. Use when you need to view existing hire purchase agreements. Requires 'Bills' access level and is only available for UK companies." }, { "slug": "FREEAGENT_LIST_INVOICES_DEFAULT_ADDITIONAL_TEXT", "name": "Get Default Additional Text", "description": "Tool to get the default additional text shown on all invoices. Use when you need to retrieve the default invoice text." }, { "slug": "FREEAGENT_LIST_NOTES", "name": "List Notes", "description": "Tool to retrieve a list of notes for a contact or project. Use when you need to view all notes associated with a specific contact or project." }, { "slug": "FREEAGENT_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list projects in FreeAgent. Use when you need to retrieve projects with optional filtering by status and sorting. Requires 'Contacts and Projects' permission scope." }, { "slug": "FREEAGENT_LIST_VAT_RETURNS", "name": "List VAT Returns", "description": "Tool to list VAT returns for a company in FreeAgent. Use when you need to retrieve VAT return records, their filing status, and payment information." }, { "slug": "FREEAGENT_SHOW_TAX_TIMELINE", "name": "Show Tax Timeline", "description": "Tool to retrieve the company's tax timeline showing upcoming tax events and deadlines. Use when you need to view VAT returns, corporation tax payments, Companies House filings, and other tax-related events with their due dates and amounts." }, { "slug": "FREEAGENT_UPDATE_BANK_TRANSACTION_EXPLANATIONS", "name": "Update Bank Transaction Explanation", "description": "Tool to update a bank transaction explanation in FreeAgent. Use when you need to modify an existing explanation's details such as description, category, amounts, or tax information." }, { "slug": "FREEAGENT_UPDATE_ESTIMATES_DEFAULT_ADDITIONAL_TEXT", "name": "Update Estimates Default Additional Text", "description": "Tool to update the default additional text for estimates in FreeAgent. Use when you need to set or change the standard text that appears on all estimates." }, { "slug": "FREEAGENT_UPDATE_ESTIMATES_TRANSITIONS_CONVERT", "name": "Convert Estimate to Invoice", "description": "Tool to convert an estimate to an invoice in FreeAgent. Use when an estimate has been approved and needs to be converted into a billable invoice. The estimate's status will transition to 'Invoiced' and a new invoice will be created automatically." }, { "slug": "FREEAGENT_UPDATE_EXPENSES", "name": "Update Expense", "description": "Tool to update an existing expense in FreeAgent. Use when you need to modify expense details such as description, amount, date, category, or tax information. Only the fields you provide will be updated; omitted fields remain unchanged." }, { "slug": "FREEAGENT_UPDATE_INVOICES_DEFAULT_ADDITIONAL_TEXT", "name": "Update Invoices Default Additional Text", "description": "Tool to update the default additional text shown on all invoices. Use when you need to set or change the default invoice text that appears at the bottom of all invoices." }, { "slug": "FREEAGENT_UPDATE_INVOICES_TRANSITIONS_CONVERT", "name": "Convert Invoice to Credit Note", "description": "Tool to convert a draft negative invoice to a credit note in FreeAgent. Use when you need to transform a draft invoice with a negative value into a credit note. The invoice must be in draft status and have a negative value before conversion." }, { "slug": "FREEAGENT_UPDATE_JOURNAL_SETS", "name": "Update a Journal Set", "description": "Tool to update a journal set in FreeAgent. Use when you need to modify journal entries, change description, date, or tag. Can add new entries, modify existing ones, or remove entries using _destroy flag." }, { "slug": "FREEAGENT_UPDATE_NOTES1", "name": "Update Note", "description": "Tool to update an existing note in FreeAgent. Use when you need to modify the text content of a note attached to a contact or project." }, { "slug": "FREEAGENT_UPDATE_PRICE_LIST_ITEMS", "name": "Update Price List Item", "description": "Tool to update a price list item in FreeAgent. Use when you need to modify existing price list item fields like description, price, code, quantity, or tax settings." }, { "slug": "FREEAGENT_UPDATE_USERS_ME", "name": "Update Personal Profile", "description": "Tool to update the authenticated user's personal profile in FreeAgent. Use when you need to modify user details such as name, email, role, or tax information." }, { "slug": "FREEAGENT_UPLOAD_A_BANK_STATEMENT", "name": "Upload a Bank Statement", "description": "Tool to upload a bank statement to FreeAgent. Use when you need to import multiple bank transactions at once for a specific bank account." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "freeagent_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "user_agent", "displayName": "User Agent", "type": "string", "description": "Your application name for the User-Agent header (required by FreeAgent API)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freshping", "name": "Freshping", "logo": "https://logos.composio.dev/api/freshping", "description": "Freshping is a free website monitoring software by Freshworks that enables uptime monitoring, performance tracking, and instant alerts for websites and web services", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "freshping_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your Freshping API Key, obtained from Settings > Account Settings in your Freshping account", "required": true, "default": null }, { "name": "password", "displayName": "Subdomain", "type": "string", "description": "Your Freshping subdomain (e.g., \"acme\" for acme.freshping.io)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freshsales", "name": "Freshsales", "logo": "https://logos.composio.dev/api/freshsales", "description": "Personalize engagement, shorten your sales cycle, and grow your business with Freshsales", "category": "crm", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "freshsales_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "freshsales.contacts.view,freshsales.deals.view" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your Freshsales subdomain (e.g., \"example\" from example.myfreshworks.com).", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "freshsales_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your Freshsales subdomain. For legacy accounts using freshsales.io, enter your domain (e.g., \"example\" from example.freshsales.io). For new accounts using myfreshworks.com, enter your bundle alias (e.g., \"example\" from example.myfreshworks.com).", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Freshsales API key. Find it in Profile Settings > API Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "freshservice", "name": "Freshservice", "logo": "https://logos.composio.dev/api/freshservice", "description": "Freshservice is a cloud-based IT service management (ITSM) solution with incident management, asset management, and IT service automation capabilities", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FRESHSERVICE_BULK_UPDATE_TICKETS", "name": "Bulk Update Tickets", "description": "Tool to bulk update multiple Freshservice tickets by sequential update calls. Use when you need to update fields across many tickets in absence of a native bulk API." }, { "slug": "FRESHSERVICE_CREATE_SERVICE_REQUEST", "name": "Create Service Request", "description": "Create a service request for a catalog item in Freshservice using the v2 API. The catalog item display_id can be found in Admin > Service Catalog by clicking on an item and checking the URL (e.g., /service_catalog/items/1 means display_id=1)." }, { "slug": "FRESHSERVICE_CREATE_TICKET", "name": "Create Ticket", "description": "Tool to create a new ticket. Use when you need to log an incident or service request." }, { "slug": "FRESHSERVICE_DELETE_RELEASE", "name": "Delete Release", "description": "Tool to delete a release from Freshservice. Use when you need to permanently remove a release from the system. This action is irreversible — the release cannot be recovered once deleted." }, { "slug": "FRESHSERVICE_DELETE_SOLUTION_ARTICLE", "name": "Delete Solution Article", "description": "Tool to delete a solution article from the knowledge base by its ID. This action is irreversible — the article cannot be recovered once deleted. Use this action when you need to permanently remove a solution article from Freshservice." }, { "slug": "FRESHSERVICE_DELETE_SOLUTION_CATEGORY", "name": "Delete Solution Category", "description": "Tool to delete a solution category in Freshservice. Use this action when you need to remove a solution category that is no longer needed. This action is irreversible — the category cannot be recovered once deleted." }, { "slug": "FRESHSERVICE_GET_PROBLEM_FORM_FIELDS_BY_WORKSPACE", "name": "Get Problem Form Fields by Workspace", "description": "Tool to list problem form fields. Use when you need to retrieve the form fields available for problems in a specific workspace." }, { "slug": "FRESHSERVICE_GET_RELEASE_FORM_FIELDS", "name": "List Release Form Fields", "description": "Tool to list release form fields metadata. Use when you need to fetch release field definitions before building or validating release forms." }, { "slug": "FRESHSERVICE_GET_TICKET", "name": "Get Freshservice Ticket", "description": "Tool to retrieve detailed information about a specific ticket by ID. Use when you need to get full details of a ticket including its status, priority, requester, and other attributes." }, { "slug": "FRESHSERVICE_LIST_LOCATIONS", "name": "List Freshservice Locations", "description": "Tool to list all locations in Freshservice. Use when you need to retrieve paginated location data." }, { "slug": "FRESHSERVICE_LIST_SERVICE_CATALOG_ITEMS", "name": "List Service Catalog Items", "description": "Tool to list all service catalog items in Freshservice. Use when you need to discover available catalog items and their display_ids before creating service requests." }, { "slug": "FRESHSERVICE_LIST_TICKETS", "name": "List Freshservice Tickets", "description": "Tool to list all tickets in Freshservice with optional filtering and pagination. Use when you need to retrieve ticket IDs or search for tickets. By default only tickets created within the past 30 days are returned; use updated_since for older tickets." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "freshservice_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Freshservice Account Subdomain", "type": "string", "description": "Your Freshservice account subdomain, derived from your Freshservice account URL. For example, if your Freshservice account URL is 'https://your-company.freshservice.com', then the subdomain is 'your-company'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Freshservice API Key. You can find this in your Profile Settings page, below the change password section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "fullenrich", "name": "Fullenrich", "logo": "https://gravatar.com/avatar/0d4b0c4b0c4b0c4b0c4b0c4b0c4b0c4b0", "description": "FullEnrich is a B2B email and phone waterfall enrichment platform that aggregates contact information from over 15 premium vendors to find the emails and phone numbers of leads.", "category": "contact management", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FULLENRICH_CREATE_CONTACT_DATA_LIST", "name": "Create Contact Data List", "description": "Tool to create a list of contact data entries. Use when preparing the 'datas' payload for bulk enrichment; validates each contact's composition and returns a JSON-ready list." }, { "slug": "FULLENRICH_GET_CURRENT_CREDIT_BALANCE", "name": "Get current credit balance", "description": "Tool to retrieve current workspace credit balance. Use after authenticating your API key." }, { "slug": "FULLENRICH_GET_ENRICHMENT_RESULT", "name": "Get Bulk Enrichment Result", "description": "Tool to retrieve results of a bulk enrichment by enrichment ID. Use after submitting a bulk enrichment job to check its status and get enriched data." }, { "slug": "FULLENRICH_GET_REVERSE_EMAIL_RESULT", "name": "Get Reverse Email Result", "description": "Tool to retrieve results from a reverse email lookup operation using reverse email ID. Use after submitting a reverse email lookup to check its status and get contact data." }, { "slug": "FULLENRICH_REVERSE_EMAIL_LOOKUP", "name": "Reverse Email Lookup", "description": "Tool to perform bulk reverse email lookup to retrieve full person and company profile from work or personal email addresses. Use when you have email addresses and need to enrich them with complete contact information. Results are processed asynchronously; use the returned enrichment_id to retrieve actual data." }, { "slug": "FULLENRICH_SEARCH_COMPANY", "name": "Search Company", "description": "Tool to search for companies based on filters including name, domain, industry, type, headquarters location, headcount, and founded year. Multiple filters within the same field are combined with OR logic. Use when you need to find companies matching specific criteria." }, { "slug": "FULLENRICH_SEARCH_PEOPLE", "name": "Search People", "description": "Tool to search for people based on filters including company, location, skills, position titles, and seniority levels. Multiple filters within the same field are combined with OR logic. Use when you need to find people matching specific professional criteria." }, { "slug": "FULLENRICH_START_BULK_ENRICHMENT", "name": "Start Bulk Enrichment", "description": "Tool to start a bulk enrichment job. Use when you have up to 100 contacts prepared and need batch enrichment. Use after confirming contact data." }, { "slug": "FULLENRICH_VERIFY_API_KEY", "name": "Verify API Key", "description": "Tool to check if your API key is valid and return the associated workspace ID. Use when you need to verify API key validity before performing other operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "fullenrich_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "FullEnrich API Key", "type": "string", "description": "Your FullEnrich API key, obtainable from your API Dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "function", "name": "Function", "logo": "https://logos.composio.dev/api/function", "description": "Run Python compute workloads anywhere, with only a predict function. Now rebranded as Muna.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "FUNCTION_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the current authenticated user's profile information. Use when you need to get details about the currently logged-in user including username, email, name, avatar, bio, website, and GitHub handle." }, { "slug": "FUNCTION_GET_PREDICTOR", "name": "Get Predictor Details", "description": "Tool to retrieve details about a Function predictor. Use when you need to get information about a predictor's signature, parameters, owner, status, or access level." }, { "slug": "FUNCTION_START_MULTIPART_UPLOAD", "name": "Start Multipart Upload", "description": "Tool to initiate a multipart upload for large resources. Use when uploading files larger than 100 MB that need to be split into 50 MB chunks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "function_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to muna.ai and copy your access key from Account > Developer > Access Keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gagelist", "name": "Gagelist", "logo": "https://logos.composio.dev/api/gagelist", "description": "GageList is a user-friendly calibration management platform that simplifies the integration process with intuitive interfaces and straightforward APIs, enabling seamless connection with existing tools and workflows.", "category": "developer tools", "authSchemes": [ "S2S_OAUTH2" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GAGELIST_ADD_CALIBRATION_RECORD", "name": "Add Calibration Record", "description": "Creates a new calibration record in GageList to document equipment calibration results. Use this tool to record calibration activities including test results, dates, technician info, and equipment condition. Can optionally link to an existing gage record via EquipmentRefId, or create a standalone calibration record. Supports detailed test data, attachments, and custom fields." }, { "slug": "GAGELIST_ADD_GAGE_RECORD", "name": "Add Gage Record", "description": "Tool to add a new gage record. Use after gathering all required gage attributes to create a record." }, { "slug": "GAGELIST_ADD_MANUFACTURER", "name": "Add Manufacturer", "description": "Creates a new manufacturer record in the GageList calibration management system. A manufacturer represents the company that produces gages and measurement instruments. Use this action when you need to add a new manufacturer to the system for tracking and managing calibration records for their equipment. Returns the unique identifier of the newly created manufacturer record." }, { "slug": "GAGELIST_AUTHENTICATE_WITH_GAGELIST", "name": "Authenticate with Gagelist", "description": "Tool to obtain a Gagelist API access token. Use when you need to authenticate with Gagelist using client credentials. Returns OAuth2 tokens for subsequent requests." }, { "slug": "GAGELIST_DELETE_CALIBRATION_RECORD", "name": "Delete Calibration Record", "description": "Deletes a calibration record by its ID. This is a destructive operation that permanently removes the record. Verify the record exists before deletion." }, { "slug": "GAGELIST_DELETE_GAGE_RECORD", "name": "Delete Gage Record", "description": "Deletes a gage record by its ID. The record must exist in the system to be deleted successfully. This operation is destructive and cannot be undone." }, { "slug": "GAGELIST_DELETE_MANUFACTURER", "name": "Delete Manufacturer", "description": "Tool to delete a manufacturer by its ID. Use after confirming the manufacturer exists." }, { "slug": "GAGELIST_GENERATE_CALIBRATION_CERTIFICATE", "name": "Generate Calibration Certificate", "description": "Tool to generate a PDF certificate from a calibration record. Use after ensuring record ID and authentication." }, { "slug": "GAGELIST_GET_ACCOUNT_SETTINGS", "name": "Get Account Settings", "description": "Tool to get account settings. Use after successful authentication to retrieve user-specific settings." }, { "slug": "GAGELIST_GET_ACCOUNT_STATUS", "name": "Get account status", "description": "Tool to retrieve account status. Use after authenticating with Gagelist." }, { "slug": "GAGELIST_GET_ALL_CALIBRATION_RECORDS", "name": "Get all calibration records", "description": "Tool to retrieve a paginated list of calibration records. Use after obtaining a valid access token." }, { "slug": "GAGELIST_GET_ALL_GAGE_RECORDS", "name": "Get All Gage Records", "description": "Tool to retrieve a paginated list of gage records. Use after confirming the access token." }, { "slug": "GAGELIST_GET_ALL_MANUFACTURERS", "name": "Get All Manufacturers", "description": "Tool to retrieve a list of all manufacturers. Use after obtaining a valid access token. Returns manufacturer details including ID, name, contact information, and timestamps." }, { "slug": "GAGELIST_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to retrieve an attachment by its ID. Use when you need to download file attachments from the system." }, { "slug": "GAGELIST_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Tool to retrieve custom field definitions. Use when you need to list all custom fields configured for both gage and calibration items after authentication." }, { "slug": "GAGELIST_GET_SINGLE_CALIBRATION_RECORD", "name": "Get Single Calibration Record", "description": "Tool to retrieve details of a single calibration record. Use when you need a specific record's detailed data. Ensure a valid Bearer token is set." }, { "slug": "GAGELIST_GET_SINGLE_GAGE_RECORD", "name": "Get Single Gage Record", "description": "Retrieves comprehensive details of a single gage/gauge record from GageList by its unique ID. Returns complete gage information including: serial number, control number, manufacturer details, calibration dates and intervals, measurement specifications (range, tolerance, unit of measure), location, responsible user, test templates, and attached files. Use this after obtaining a valid gage ID from GAGELIST_GET_ALL_GAGE_RECORDS or GAGELIST_ADD_GAGE_RECORD. Example: GetSingleGageRecord(id=123)" }, { "slug": "GAGELIST_UPDATE_ACCOUNT_SETTINGS", "name": "Update Account Settings", "description": "Tool to update account settings. Use after retrieving current settings to apply user preference changes." }, { "slug": "GAGELIST_UPDATE_CUSTOM_FIELD_VALUES", "name": "Update Custom Field Values", "description": "Tool to update custom field values. Use when you need to set or modify custom field values for a gage or calibration record after authentication." }, { "slug": "GAGELIST_UPDATE_MANUFACTURER", "name": "Update Manufacturer", "description": "Tool to update a manufacturer by its ID. Use after confirming the manufacturer exists." }, { "slug": "GAGELIST_UPLOAD_ATTACHMENT_TO_GAGE_RECORD", "name": "Upload Attachment To Gage Record", "description": "Tool to upload an attachment to a gage record. Use when adding files to an existing gage record." } ], "triggers": [], "authConfigDetails": [ { "mode": "S2S_OAUTH2", "name": "gagelist_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "The client ID provided by GageList for API authentication.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "The client secret provided by GageList for API authentication.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "gainsight_px", "name": "Gainsight Px", "logo": "https://logos.composio.dev/api/gainsight_px", "description": "Product experience platform for understanding user behavior and driving product adoption", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gainsight_px_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate this from Administration > REST API > New API Key in your Gainsight PX dashboard", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your data center region: US (leave empty), EU (-eu), or US2 (-us2)", "required": false, "default": "" } ] } } } ] }, { "slug": "gamma", "name": "Gamma", "logo": "https://logos.composio.dev/api/gamma", "description": "Gamma helps create beautiful, interactive content and presentations using AI. This integration enables programmatic generation via Gamma’s API.", "category": "ai content generation", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GAMMA_CREATE_FROM_TEMPLATE", "name": "Create from Template", "description": "Tool to create new Gamma content based on an existing template. Use when you need to generate content with a predefined structure/layout by providing custom instructions and prompt. The API creates content asynchronously. This action polls the generation status and returns the gammaUrl when complete, or a generationId if the 2-minute timeout is reached." }, { "slug": "GAMMA_GENERATE_GAMMA", "name": "Generate a Gamma", "description": "Generate a Gamma presentation, document, webpage, or social media content using AI. Documentation: https://developers.gamma.app/docs/generate-api-parameters-explained The API creates content asynchronously. Poll the returned generationId to check status." }, { "slug": "GAMMA_GET_GAMMA_FILE_URLS", "name": "Get Gamma File URLs", "description": "Retrieve generation status and file URLs. Poll this endpoint every ~5 seconds until status is 'completed'. Docs: https://developers.gamma.app/reference/get-generation-status" }, { "slug": "GAMMA_LIST_FOLDERS", "name": "List Folders", "description": "Tool to retrieve a paginated list of folders in your Gamma workspace. Use when you need folder IDs to organize generated content or to search for specific folders by name." }, { "slug": "GAMMA_LIST_THEMES", "name": "List Themes", "description": "Fetch the list of themes available in your workspace. Returns both standard (global) and custom (workspace-specific) themes in a paginated format. Use this to discover available theme IDs and names for use with the Generate API. Filter by name using the query parameter." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gamma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Gamma API Key", "type": "string", "description": "Your Gamma API key used for authenticating requests. Find it in your Gamma account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gan_ai", "name": "Gan.AI", "logo": "https://logos.composio.dev/api/gan_ai", "description": "Gan.AI provides advanced APIs for text-to-speech, voice cloning, and video personalization, enabling developers to integrate natural and expressive speech synthesis into their applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "GAN_AI_GET_AVATAR_VIDEO_INFERENCE_DETAILS", "name": "Get Avatar Video Inference Details", "description": "Tool to retrieve detailed status and metadata for a specific avatar video inference. Use when you have an inference_id and need to check its processing status and access video URLs." }, { "slug": "GAN_AI_GET_PHOTO_AVATAR_DETAILS", "name": "Get Photo Avatar Details", "description": "Tool to retrieve detailed information for a specific photo avatar by ID. Use when you need to check photo avatar processing status and access its metadata and image URL." }, { "slug": "GAN_AI_GET_PHOTO_AVATAR_INFERENCE_DETAILS", "name": "Get photo avatar inference details", "description": "Tool to fetch photo avatar inference details. Use after obtaining a valid inference ID to retrieve detailed information." }, { "slug": "GAN_AI_LIST_AVATAR_VIDEOS", "name": "List avatar video inferences", "description": "Tool to list avatar video inferences. Use when you need to retrieve generated avatar videos with optional filtering by avatar ID, title, status, or date range." }, { "slug": "GAN_AI_LIST_PHOTO_AVATAR_INFERENCES", "name": "List photo avatar inferences", "description": "Tool to list photo avatar inferences. Use when you need to retrieve inference videos with optional filtering by avatar, title, status, or date range." }, { "slug": "GAN_AI_LIST_PHOTO_AVATARS", "name": "List Photo Avatars", "description": "Tool to list avatars. Use when you need a paginated collection of avatars with filters. Example: \"List the first 10 published avatars created after 2023-01-01\"." }, { "slug": "GAN_AI_LOGIN", "name": "Login", "description": "Tool to authenticate a user and retrieve access and refresh tokens. Use when you need to login before calling other GAN.AI API actions." }, { "slug": "GAN_AI_TTS", "name": "GAN AI Text-to-Speech", "description": "Convert text to speech using GAN.AI's Text-to-Speech API. This tool synthesizes speech from text using a specified voice. The voice_id must be obtained from the GAN.AI Get Voices endpoint or from your GAN.AI dashboard. Returns audio in WAV format." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gan_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Gan.AI API Key", "type": "string", "description": "The API key generated from Gan.AI's platform, used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gatherup", "name": "Gatherup", "logo": "https://logos.composio.dev/api/gatherup", "description": "GatherUp is a customer feedback and online review management platform that helps businesses collect, manage, and leverage customer feedback to improve their online reputation.", "category": "reviews", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GATHERUP_DELETE_BUSINESS", "name": "Delete GatherUp Business", "description": "Permanently deletes a business location from GatherUp. This is a destructive operation that cannot be undone. **When to use**: Remove business locations that are no longer needed or were created in error. **Important**: Verify the businessId before deletion. Check errorCode in response: 0=success, non-zero=error." }, { "slug": "GATHERUP_FIND_AGENCY_CLIENT_ID", "name": "Find GatherUp Agency Client ID", "description": "Find the client ID for a specific business in GatherUp agency accounts. This tool retrieves the numeric client identifier associated with a business location. Use this when you need to look up the client ID for agency-level operations or business management." }, { "slug": "GATHERUP_GET_BUSINESS", "name": "Get GatherUp Business", "description": "Retrieve detailed information about a specific GatherUp business location. Returns comprehensive business data including: name, contact details (phone, address), timezone, business type, subscription package, communication settings, engagement metrics (NPS score, feedback counts), and marketing assets (logos, banners, feedback URLs). Prerequisites: - Use GATHERUP_SEARCH_BUSINESS if you need to find a businessId by customField/extraField" }, { "slug": "GATHERUP_GET_BUSINESS_TYPES", "name": "Get GatherUp Business Types", "description": "Retrieves the list of available business categories from GatherUp (e.g., Restaurant, Hotel, Dental Office). Use this to: - Get valid business type IDs for creating new businesses - Discover available business categories in GatherUp - Filter business types by search term (optional)" }, { "slug": "GATHERUP_GET_CUSTOMER", "name": "Get GatherUp Customer", "description": "Retrieves detailed information about a specific customer from GatherUp by their customer ID. Use this action to get customer details including name, email, phone, rating, feedback status, and other customer-related information. Common use cases: - Retrieve customer contact information before sending feedback requests - Check customer's current rating and feedback status - Verify customer subscription status (unsubscribed flag) - Get customer creation date and associated business details Error codes: 0=success, 2=invalid clientId, 3=server error, 44=customer not found Endpoint: POST https://app.gatherup.com/api/customer/get" }, { "slug": "GATHERUP_GET_WIDGET_HTML", "name": "Get Widget HTML", "description": "Retrieve pre-formatted widget or badge HTML code with schema.org structure and SEO-friendly content. Returns ready-to-embed HTML code that displays customer reviews or badges on your website. The HTML includes structured data markup for better search engine visibility. Prerequisites: - Use GATHERUP_SEARCH_BUSINESS if you need to find a businessId" }, { "slug": "GATHERUP_SEARCH_BUSINESS", "name": "Search GatherUp Business by Custom Identifier", "description": "Search for a GatherUp business location by custom identifier and retrieve its business ID. This tool locates business locations using user-defined identifiers (customField or extraField) that you've assigned in GatherUp. Returns the businessId on success (errorCode=0), or an error code with message on failure. Common error codes: 2=Invalid clientId, 25=Business not found, 26=Invalid search type Endpoint: POST /api/business/search" }, { "slug": "GATHERUP_SEND_CUSTOMER_FEEDBACK", "name": "Send GatherUp Customer Feedback", "description": "Send a feedback request to a customer to collect their rating and review. Use this when you want to automatically request feedback after a customer interaction or transaction. Ensure the customer exists in your GatherUp account and hasn't unsubscribed from feedback requests." }, { "slug": "GATHERUP_SET_USER_PASSWORD", "name": "Set GatherUp User Password", "description": "Sets a new password for an existing user in GatherUp. Use this action to update user credentials securely. **Prerequisites**: - Valid userId (user must exist in your GatherUp account) - Password must meet security requirements: minimum 12 characters, at least one uppercase letter and one number **When to use**: Update user passwords for security purposes or user account management. Check errorCode in response: 0=success, non-zero=error. See errorMessage for details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gatherup_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "GatherUp Bearer Token", "type": "string", "description": "Bearer token for authenticating API requests to GatherUp.", "required": true, "default": null }, { "name": "generic_id", "displayName": "GatherUp Client ID", "type": "string", "description": "Client ID for GatherUp API requests, found under Account Owner > Client Details.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gemini", "name": "Gemini", "logo": "https://logos.composio.dev/api/gemini", "description": "Comprehensive Gemini integration supporting Veo 3 video generation, Gemini Flash text generation (Nano Banana), chat completions, and multimodal AI capabilities via the Google Gemini API.", "category": "artificial intelligence", "authSchemes": [ "NO_AUTH" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GEMINI_COUNT_TOKENS", "name": "Count Tokens (Gemini)", "description": "Counts the number of tokens in text using Gemini tokenization. Useful for estimating costs, checking input limits, and optimizing prompts before making API calls." }, { "slug": "GEMINI_EMBED_CONTENT", "name": "Embed Content (Gemini)", "description": "Generates text embeddings using Gemini embedding models. Converts text into numerical vectors for semantic search, similarity comparison, clustering, and classification tasks." }, { "slug": "GEMINI_GENERATE_CONTENT", "name": "Generate Content (Gemini)", "description": "Generates text content or speech audio from prompts using Gemini models. Supports text generation models (Gemini Flash, Pro) and text-to-speech models with configurable parameters. Generated text is nested at results[i].response.data.text. Output may be wrapped in markdown fences (e.g., ```html...```) or preceded by explanatory prose; strip these before file writing or rendering." }, { "slug": "GEMINI_GENERATE_IMAGE", "name": "Generate Image (Nano Banana)", "description": "Generates images from text prompts using Gemini models (Nano Banana). Supports models: 'gemini-2.5-flash-image' (GA stable, fast), 'gemini-3-pro-image-preview' (Nano Banana Pro - advanced with 4K resolution, thinking mode, up to 14 reference images), and 'gemini-2.0-flash-exp-image-generation' (2.0 Flash experimental). Returns one downloadable image per call, or a text-type entry in data.content when no image is produced. Always validate that an image was returned before treating the call as successful. Output formats are raster only (JPG/PNG/WebP); request PNG for transparency. Concurrent usage may trigger HTTP 429/RESOURCE_EXHAUSTED — keep concurrency ≤3 and use exponential backoff (1s→2s→4s, ~5 retries). NOTE NEVER EVER TRUE SYNC_TO_WORKBENCH IN RUBE_MULTI_EXECUTE_TOOL" }, { "slug": "GEMINI_GENERATE_VIDEOS", "name": "Generate Videos (Veo)", "description": "Generates videos from text prompts using Google's Veo models. Returns an operation_name for tracking; pass it verbatim (no edits) to GEMINI_WAIT_FOR_VIDEO or GEMINI_GET_VIDEOS_OPERATION. Jobs take 30–180+ seconds; wait 10s before first poll, then poll every 10–30s (allow up to 12 min). Successful results include data.video_file.s3url — missing s3url means failure. If done=true but no video_file, check raiMediaFilteredReasons (safety block); revise prompt and regenerate. Text-only; cannot accept image inputs. Max ~3–5 concurrent jobs; 429 RESOURCE_EXHAUSTED requires exponential backoff. For retries, always start a fresh call — never reuse a failed operation_name." }, { "slug": "GEMINI_GET_VIDEOS_OPERATION", "name": "Get Videos Operation (Veo) (Deprecated)", "description": "DEPRECATED: Use WaitForVideo instead. Checks status of a Veo video generation operation. Use operation_name from GenerateVideos to track progress. Wait several seconds after starting GenerateVideos before first call to avoid OPERATION_NOT_FOUND. Poll at 10–30s intervals; use exponential backoff on HTTP 429 RESOURCE_EXHAUSTED; cap total polling at ~15 minutes. Complete when done=true AND a valid video URI is present; done=true without video_file indicates safety filtering blocked output — inspect raiMediaFilteredReasons and rephrase prompt. Video URL is at generatedSamples[].video.uri — persist promptly as URLs are time-limited. Keep concurrent polling to 3–5 parallel calls to avoid rate limits. If WaitForVideo times out, continue polling here using the same operation_name rather than starting a new GenerateVideos job." }, { "slug": "GEMINI_LIST_MODELS", "name": "List Models (Gemini API)", "description": "Lists available Gemini and Veo models with their capabilities and limits. Useful for discovering supported models and their features before making generation requests." }, { "slug": "GEMINI_WAIT_FOR_VIDEO", "name": "Wait and Download Video (Veo)", "description": "Polls a Veo video generation operation until completion, then downloads and returns the video file. Generation takes 30–120+ seconds (up to ~10–12 min); long waits are normal, not failures. A done=true response without a video file indicates safety filter rejection (check raiMediaFilteredReasons) or quota exhaustion — adjust the prompt and regenerate. On timeout, use GEMINI_GET_VIDEOS_OPERATION with incremental backoff before starting a new job. Keep parallel jobs to 3–5 to avoid 429 RESOURCE_EXHAUSTED errors." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Gemini", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "gender_api", "name": "Gender API", "logo": "https://logos.composio.dev/api/gender_api", "description": "Gender API determines the gender of a first name, email address, or username.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GENDER_API_GET_COUNTRY_OF_ORIGIN", "name": "Get Country of Origin", "description": "Tool to retrieve a name's likely countries of origin. Use after confirming the name identifier." }, { "slug": "GENDER_API_GET_COUNTRY_OF_ORIGIN_V1", "name": "Get Country of Origin (v1)", "description": "Tool to get the country of origin for a given first name using v1 API. Returns the most likely country where the name is most common." }, { "slug": "GENDER_API_GET_STATISTIC", "name": "Get Gender API Statistics", "description": "Tool to retrieve account statistics from Gender-API, including remaining credits and usage details. Use when you need to check your credit balance before performing further gender lookups." }, { "slug": "GENDER_API_QUERY_BY_EMAIL_ADDRESS", "name": "Query Gender by Email Address", "description": "Determine likely gender from an email address by extracting and analyzing the name portion. Returns male/female/unknown with a confidence score. Optionally filter by country for improved accuracy. Check result_found to know if a determination was made; probability indicates confidence level." }, { "slug": "GENDER_API_QUERY_BY_EMAIL_ADDRESS_MULTIPLE", "name": "Query Gender by Multiple Email Addresses", "description": "Determine likely gender for multiple email addresses in a single batch request. Returns male/female/unknown with confidence scores for each email. Use for efficient bulk processing. Each result includes result_found flag and optional probability score." }, { "slug": "GENDER_API_QUERY_BY_FIRST_NAME", "name": "Gender From First Name", "description": "Tool to determine the gender of a first name. Use when you need to identify gender based on a given name." }, { "slug": "GENDER_API_QUERY_BY_FULL_NAME", "name": "Query Gender by Full Name", "description": "Tool to determine gender by splitting a full name. Use when you have an exact full name string and want to infer gender. Slightly less reliable for rare or ambiguous names." }, { "slug": "GENDER_API_QUERY_GENDER_BY_FIRST_NAME_MULTIPLE", "name": "Query Gender by Multiple First Names", "description": "Tool to determine gender for multiple first names in a single batch request. Use when you need to query gender for several names efficiently to save API credits and reduce latency." }, { "slug": "GENDER_API_QUERY_GENDER_BY_FULL_NAME_MULTIPLE", "name": "Query Gender by Full Name (Multiple)", "description": "Tool to batch query gender for multiple full names in a single request. Use when you need to determine gender for multiple names efficiently. Each name can optionally include country, locale, or IP for more accurate regional inference." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gender_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Gender API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Gender API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "genderapi_io", "name": "GenderAPI.io", "logo": "https://genderapi.io/logo.png", "description": "GenderAPI.io provides an API to determine the gender associated with a given name, email address, or username.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GENDERAPI_IO_GENDERAPI_GET_STATS", "name": "Gender API Get Statistics", "description": "Tool to retrieve account usage statistics from GenderAPI.io. Use when you need to check remaining API credits and expiry." }, { "slug": "GENDERAPI_IO_GENDER_API_QUERY_BY_FIRST_NAME", "name": "Query Gender by First Name", "description": "Tool to determine gender by querying first name. Use when you need to infer likely gender for a given name with optional localization hints." }, { "slug": "GENDERAPI_IO_GET_GENDER_FROM_USERNAME", "name": "Get Gender from Username", "description": "Tool to determine gender from a username or nickname. Use when you have an alias or handle and want to infer gender from that identifier." }, { "slug": "GENDERAPI_IO_LIST_ERROR_CODES", "name": "List Gender API Error Codes", "description": "Tool to list all possible error codes returned by Gender API. Use when debugging or validating API responses." }, { "slug": "GENDERAPI_IO_QUERY_BY_EMAIL_ADDRESS", "name": "Query gender by email address", "description": "Tool to determine gender from an email address. Use when you need to infer gender for personalization after obtaining proper consent." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "genderapi_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "GenderAPI.io API Key", "type": "string", "description": "Your API key for authentication with GenderAPI.io", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "genderize", "name": "Genderize", "logo": "https://logos.composio.dev/api/genderize", "description": "Genderize is an API that predicts the gender of a person based on their first name, providing statistical probabilities for male or female classifications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GENDERIZE_PREDICT_GENDER", "name": "Predict Gender", "description": "Tool to predict gender from a given first name. Use when you need a quick gender estimation possibly localized by country code." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "genderize_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Genderize API Key", "type": "string", "description": "The API key obtained from Genderize.io for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "geoapify", "name": "Geoapify", "logo": "https://www.geoapify.com/wp-content/uploads/2020/06/geoapify_logo.svg", "description": "Geoapify offers a suite of APIs for integrating maps, geocoding, routing, and other location-based services into applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "GEOAPIFY_ADDRESS_AUTOCOMPLETE", "name": "Address Autocomplete", "description": "Tool to fetch address suggestions based on partial input. Use when you need to get predictive suggestions from incomplete address text." }, { "slug": "GEOAPIFY_BATCH_REQUESTS", "name": "Batch Requests", "description": "Create or retrieve asynchronous batch processing jobs for geocoding, reverse geocoding, routing, or isoline APIs. Use cases: - Batch geocode up to 1000 addresses at once (forward geocoding) - Batch reverse geocode multiple coordinates - Process multiple routing or isoline requests in one batch Workflow: 1. Create a job by providing 'api' and 'inputs' (returns job ID and status 'pending') 2. Poll the job by providing 'id' until status changes from 'pending' to complete (results available)" }, { "slug": "GEOAPIFY_BOUNDARIES", "name": "Get Boundaries Containing Location", "description": "Retrieve all administrative boundaries that contain a given location. Returns hierarchical boundaries (suburb, city, county, state, country) as GeoJSON features. Use this to find what administrative areas a coordinate belongs to, get boundary polygons for mapping, or identify postal codes and political districts for a location." }, { "slug": "GEOAPIFY_CREATE_BATCH_FORWARD_GEOCODE_JOB", "name": "Create Batch Forward Geocode Job", "description": "Tool to create a batch forward geocoding job for up to 1000 addresses. Use when you need to geocode multiple addresses asynchronously. Returns a job ID for retrieving results once processing is complete." }, { "slug": "GEOAPIFY_CREATE_BATCH_REVERSE_GEOCODE_JOB", "name": "Create Batch Reverse Geocode Job", "description": "Tool to create a batch reverse geocoding job that converts multiple lat/lon coordinates into addresses asynchronously. Use when you need to reverse geocode multiple coordinates (up to 1000) in one request. Returns a job ID for retrieving results." }, { "slug": "GEOAPIFY_FORWARD_GEOCODING", "name": "Forward Geocoding", "description": "Tool to convert an address into geographic coordinates. Use when you need latitude and longitude from an address." }, { "slug": "GEOAPIFY_GEOMETRY", "name": "Geometry Operation", "description": "Tool to perform geometric operations on stored polygon geometries. Use when combining or intersecting multiple stored geometries." }, { "slug": "GEOAPIFY_GET_BATCH_FORWARD_GEOCODE_RESULTS", "name": "Get Batch Forward Geocode Results", "description": "Tool to retrieve batch forward geocoding job results using the job ID. Use when you need to fetch geocoded addresses from a previously submitted batch job. Results available in JSON or CSV format. Job must be complete (status 200) to get results." }, { "slug": "GEOAPIFY_GET_BATCH_REVERSE_GEOCODE_RESULTS", "name": "Get Batch Reverse Geocode Results", "description": "Tool to retrieve batch reverse geocoding job results. Use when you have a batch job ID from creating a batch reverse geocoding job and want to fetch the completed results." }, { "slug": "GEOAPIFY_GET_BOUNDARIES_CONSISTS_OF", "name": "Get Child Boundaries (Consists Of)", "description": "Get boundaries that a specified location consists of. Returns child administrative divisions (states for country, districts for city). Useful for drilling down into sub-regions." }, { "slug": "GEOAPIFY_GET_MAP_STYLE", "name": "Get Map Style JSON", "description": "Tool to retrieve vector map style JSON for MapLibre GL and Mapbox GL. Returns a Mapbox-compatible style specification for rendering vector tiles." }, { "slug": "GEOAPIFY_GET_STATIC_MAP", "name": "Generate Static Map Image", "description": "Tool to generate static map images with customizable style, size, center, zoom, markers, and geometries. Use when you need a map image for display or printing." }, { "slug": "GEOAPIFY_IP_GEOLOCATION", "name": "IP Geolocation", "description": "Lookup geographic location information for an IP address. Returns city-level location data including country, region, city, coordinates, and additional metadata like currency and language. If no IP is provided, returns location for the caller's IP address." }, { "slug": "GEOAPIFY_ISOLINE", "name": "Generate isoline (isochrone/isodistance)", "description": "Tool to generate isochrone or isodistance isolines. Use when visualizing reachable areas from a point; use `id` to poll ongoing calculations." }, { "slug": "GEOAPIFY_LIST_POSTCODES", "name": "List Postcodes", "description": "Tool to list postcodes within a specified area or boundary. Use when you need to retrieve multiple postcodes in a geographic region using filters like circle, rectangle, or place ID." }, { "slug": "GEOAPIFY_MAP_MATCHING", "name": "Map Matching", "description": "Snap GPS traces to the road network for accurate route reconstruction. Use this tool to: - Correct GPS drift and inaccuracies in recorded tracks - Align vehicle/cycling/walking traces to actual roads - Get road names and properties along the matched route - Calculate accurate distance and travel time from GPS data" }, { "slug": "GEOAPIFY_MAP_TILES", "name": "Fetch Geoapify Map Tiles", "description": "Tool to fetch raster map tiles or style JSON from Geoapify. Use when rendering custom maps with specific styles." }, { "slug": "GEOAPIFY_MARKER_ICON", "name": "Create Marker Icon", "description": "Generate custom map marker icons as PNG images. Creates customizable marker icons for use in mapping applications (Leaflet, MapLibre GL, Google Maps, etc.). Supports multiple styles (material, circle, plain), custom colors, icons from Material Design and Font Awesome libraries, or custom text/numbers. Example use cases: - Create a red location pin with a star icon - Generate numbered markers (1, 2, 3...) for route waypoints - Create custom-colored markers matching your brand" }, { "slug": "GEOAPIFY_PLACE_DETAILS", "name": "Place Details", "description": "Tool to retrieve detailed information about a specific place. Use when you have a place ID or coordinates and need comprehensive metadata." }, { "slug": "GEOAPIFY_PLACES", "name": "Places Search", "description": "Search for points of interest (POIs) like restaurants, hotels, attractions, hospitals, etc. within a geographic area. Use this tool when you need to find places by category near a location. You must provide either a 'filter' (to search within a bounded area) or 'bias' (to rank results by proximity to a point). Common use cases: - Find restaurants near a location: categories=['catering.restaurant'], bias='proximity:lon,lat' - Search for hotels in a city area: categories=['accommodation.hotel'], filter='circle:lon,lat,5000' - Find wheelchair-accessible attractions: categories=['tourism.attraction'], conditions=['wheelchair']" }, { "slug": "GEOAPIFY_POSTCODE", "name": "Postcode Search", "description": "Tool to retrieve postcode information for a location. Use when you need to fetch postcode details based on a given postcode or geographic coordinates." }, { "slug": "GEOAPIFY_REVERSE_GEOCODING", "name": "Reverse Geocoding", "description": "Tool to reverse geocode coordinates into a structured address. Use when converting lat/lon to human-readable addresses." }, { "slug": "GEOAPIFY_ROUTE_MATRIX", "name": "Route Matrix", "description": "Tool to compute travel time and distance matrices. Use when you need durations and distances between multiple origin and destination pairs." }, { "slug": "GEOAPIFY_ROUTE_PLANNER", "name": "Route Planner", "description": "Optimize multi-agent routes for deliveries, pickups, and service jobs. Solves Vehicle Routing Problems (VRP) including: Travelling Salesman (TSP), Capacitated VRP, VRP with Time Windows, and Pickup-Delivery problems. Required: Either 'jobs' (one-way tasks) or 'shipments' (pickup-delivery pairs). Coordinates: Use [longitude, latitude] format (not lat/lon)." }, { "slug": "GEOAPIFY_ROUTING", "name": "Routing", "description": "Tool to calculate routes between multiple waypoints. Use when you need both distance, time, and turn-by-turn directions for two or more coordinates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "geoapify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Geoapify API Key", "type": "string", "description": "The API key provided by Geoapify for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "geocodio", "name": "Geocodio", "logo": "https://logos.composio.dev/api/geocodio", "description": "Geocodio provides straightforward and easy-to-use geocoding, reverse geocoding, and data matching services for US and Canadian addresses.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GEOCODIO_BATCH_REVERSE_GEOCODE", "name": "Batch Reverse Geocode", "description": "Tool to batch reverse geocode up to 10,000 coordinates in one request. Use when you need addresses for many lat/lon pairs." }, { "slug": "GEOCODIO_DELETE_LIST", "name": "Delete Geocodio List", "description": "Permanently deletes a Geocodio spreadsheet list by its ID. Use this to cancel a processing list job or remove a completed list. This action is destructive and cannot be undone. The list_id must be obtained from the lists API or from when the list was created." }, { "slug": "GEOCODIO_GEOCODE_BATCH", "name": "Batch Forward Geocode", "description": "Tool to batch geocode up to 10,000 addresses to coordinates in one request. Use when you need to convert multiple addresses to lat/lon coordinates. Optionally calculates distances to specified destinations for each geocoded result." }, { "slug": "GEOCODIO_GEOCODE_GOOGLE_MAPS_COMPATIBLE", "name": "Google Maps Compatible Geocode", "description": "Tool to geocode addresses using Google Maps-compatible API format. Use when you need a drop-in replacement for Google Maps Geocoding API for US and Canada addresses." }, { "slug": "GEOCODIO_GET_COORDINATES_FOR_BATCH_REVERSE_GEOCODE", "name": "Get Sample Coordinates for Batch Reverse Geocode", "description": "Utility tool that returns a predefined list of sample US coordinates (latitude,longitude strings). Use this to obtain ready-to-use coordinate inputs for the batch reverse geocode action. The coordinates cover well-known US landmarks across different cities and states." }, { "slug": "GEOCODIO_SINGLE_GEOCODE", "name": "Single Forward Geocode", "description": "Tool to forward geocode a single address. Use when you need coordinates and metadata for one address." }, { "slug": "GEOCODIO_SINGLE_REVERSE_GEOCODE", "name": "Single Reverse Geocode", "description": "Tool to reverse geocode a single coordinate. Use when you need to convert one lat,lng to an address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "geocodio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Geocodio API Key", "type": "string", "description": "Your Geocodio API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "geokeo", "name": "Geokeo", "logo": "https://logos.composio.dev/api/geokeo", "description": "Geokeo provides geocoding services, converting addresses to coordinates and vice versa, with a free tier offering 2,500 daily API requests.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GEOKEO_FORWARD_GEOCODING", "name": "Forward Geocoding", "description": "Convert an address or place name into geographic coordinates (latitude/longitude). Use this tool when you need to: - Find coordinates for a landmark (e.g., \"Eiffel Tower\", \"Empire State Building\") - Geocode a street address (e.g., \"1600 Pennsylvania Avenue NW Washington DC\") - Get location data for a city or region - Look up structured address information for a place Returns multiple results ranked by relevance, with coordinates, addresses, and OpenStreetMap links." }, { "slug": "GEOKEO_REVERSE_GEOCODING", "name": "Reverse Geocoding Lookup", "description": "Convert geographic coordinates (latitude/longitude) to a human-readable address. Use this tool when you have GPS coordinates and need to find the corresponding street address, city, country, or nearby points of interest. Returns multiple results sorted by distance from the input coordinates, including structured address components and OpenStreetMap links. Note: Returns status='ZERO_RESULTS' for coordinates in oceans or remote areas without mapped addresses." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "geokeo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Geokeo API Key", "type": "string", "description": "The API key provided by Geokeo, required for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "getform", "name": "Getform", "logo": "https://getform.io/favicon.ico", "description": "Getform is a modern form backend platform that enables developers to handle web forms and submissions without setting up a server or writing backend code.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GETFORM_GET_FORM_GET_SUBMISSION", "name": "Get Form Submission", "description": "Retrieve a specific form submission by its ID from Getform. Use this tool when you have both a form_id and submission_id and need to fetch the details of that single submission. The response includes all form field values submitted by the user, plus metadata like submission date and any uploaded files. Note: The Getform API does not have a dedicated single-submission endpoint, so this action fetches all submissions and filters by ID. For forms with many submissions, consider using get_submissions with pagination if you need to process multiple records. Prerequisites: - A valid Getform API token that corresponds to the specified form_id - The submission_id must exist for the given form" }, { "slug": "GETFORM_GET_FORM_SUBMIT_FORM", "name": "Submit Form", "description": "Tool to submit form data and files to a Getform endpoint. Use when you need to post fields, files, optional reCAPTCHA or honeypot to a specific form ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "getform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Getform API Token", "type": "string", "description": "The API token specific to your form, found under the 'Form Settings' page on your form dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "getprospect", "name": "Getprospect", "logo": "https://logos.composio.dev/api/getprospect", "description": "Find anyone's business email address. GetProspect provides email discovery and verification from LinkedIn.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GETPROSPECT_APPLY_COUPON_CODE", "name": "Apply Coupon Code", "description": "Tool to apply a coupon code to the user's account. Use after you need to activate a coupon before using it." }, { "slug": "GETPROSPECT_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company. Use when you need to add a company record via GetProspect API." }, { "slug": "GETPROSPECT_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact. Use when you need a fresh contact record before associating it to lists." }, { "slug": "GETPROSPECT_CREATE_EXPORT", "name": "Create Export", "description": "Tool to create a new export job. Use when you need to export contacts or companies based on filters or specific record IDs. Returns HTTP 201 on success." }, { "slug": "GETPROSPECT_CREATE_LIST", "name": "Create Contact List", "description": "Tool to create a new contact list. Use when you need to organize contacts into a named list." }, { "slug": "GETPROSPECT_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company record by its ID. Use when you have confirmed this company should be permanently removed." }, { "slug": "GETPROSPECT_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact record by its ID. Use when you need to remove a contact; ensure the contact ID exists before calling." }, { "slug": "GETPROSPECT_DELETE_DELETE_LISTS", "name": "Delete Multiple Contact Lists", "description": "Tool to delete multiple contact lists. Use when you have a set of list IDs and want to remove them in bulk. Use after confirming the lists to delete." }, { "slug": "GETPROSPECT_GET_ACCOUNT_WORKSPACE_LIMITS", "name": "Get account workspace limits", "description": "Tool to retrieve workspace limits for the user's account. Use when you need to check current quotas before bulk operations." }, { "slug": "GETPROSPECT_GET_ALL_COMPANIES", "name": "Get All Companies", "description": "Tool to retrieve all companies. Use after obtaining a valid API key. Returns a paginated list of companies for the authenticated user." }, { "slug": "GETPROSPECT_GET_ALL_LISTS", "name": "Get All Contact Lists", "description": "Tool to retrieve all prospect contact lists. Use when you need to list all existing contact lists for an account. Returns a paginated list of contact lists." }, { "slug": "GETPROSPECT_GET_SINGLE_COMPANY", "name": "Get Single Company", "description": "Tool to retrieve details of a single company by its ID. Use when you have a valid company ID and need its full details." }, { "slug": "GETPROSPECT_GET_SINGLE_CONTACT", "name": "Get Single Contact", "description": "Tool to retrieve details of a single contact. Use when you have the contact ID and need its full record." }, { "slug": "GETPROSPECT_POST_ADD_CONTACTS_TO_LIST", "name": "Add Contacts to List", "description": "Tool to add contacts to a specified list. Use when you need to group existing contacts into a list." }, { "slug": "GETPROSPECT_SEARCH_COMPANIES", "name": "Search Companies", "description": "Tool to search for companies by name. Use when you have a company name and need to find matching records." }, { "slug": "GETPROSPECT_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Tool to search for contacts by filters. Use when you need to find contacts matching specific criteria." }, { "slug": "GETPROSPECT_SEARCH_CONTACTS_RELATED_TO_LIST", "name": "Search Contacts in List", "description": "Tool to search contacts in a specific list. Use when you need to filter contacts associated with a given list." }, { "slug": "GETPROSPECT_SEARCH_THROUGH_LISTS_BY_NAME", "name": "Search Lists by Name", "description": "Tool to search contact lists by name. Use when you need to find lists that match a specific name. Returns a paginated list of matching contact lists." }, { "slug": "GETPROSPECT_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update details of an existing company. Use when you need to modify company properties after confirming the company exists." }, { "slug": "GETPROSPECT_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update details of an existing contact. Use when you have the contact ID and need to modify its properties or list assignments." }, { "slug": "GETPROSPECT_UPDATE_LIST", "name": "Update Contact List", "description": "Tool to update a contact list's name. Use when you need to rename an existing list." }, { "slug": "GETPROSPECT_VERIFY_EMAIL_ADDRESS", "name": "Verify Email Address", "description": "Tool to verify an email's deliverability. Use after capturing an email to ensure it's valid." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "getprospect_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your GetProspect account > Settings (gear icon) > Integrations > GetProspect to retrieve your API token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "getresponse", "name": "GetResponse", "logo": "https://logos.composio.dev/api/getresponse", "description": "Email marketing and online campaign management platform", "category": "marketing automation", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "getresponse_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "getresponse_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your GetResponse API key from https://app.getresponse.com/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ghost_org_admin_api", "name": "Ghost Admin API", "logo": "https://logos.composio.dev/api/ghost_org_admin_api", "description": "Open source publishing platform with powerful Admin API for managing posts, pages, members, and site settings", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ghost_org_admin_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "If your URL is https://yourdomain.com, please enter yourdomain.com here (without https://)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Admin API Key", "type": "string", "description": "Admin API keys are created by Custom Integration under the Integrations screen in Ghost Admin. Format: {id}:{secret}", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ghost_org_content_api", "name": "Ghost Content API", "logo": "https://logos.composio.dev/api/ghost_org_content_api", "description": "Ghost is an open source publishing platform designed for modern content creators. The Content API provides read-only access to published content.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ghost_org_content_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Admin Domain", "type": "string", "description": "Your Ghost site domain (e.g., yourdomain.com or yourdomain.ghost.io)", "required": true, "default": null }, { "name": "generic_key", "displayName": "Content API Key", "type": "string", "description": "Your Content API Key from Ghost Admin > Settings > Integrations. See https://ghost.org/docs/content-api/javascript/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gift_up", "name": "Gift Up!", "logo": "https://giftup.app/favicon.ico", "description": "Gift Up! is a digital platform that allows businesses to sell, manage, and redeem gift cards online, integrating seamlessly with websites and apps to streamline gift card transactions and promotions.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 44, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GIFT_UP_ADD_ORDER_NOTE", "name": "Add Note to Order", "description": "Tool to add a note to an existing order. Use when you need to track additional information about an order. Notes are limited to 500 characters and can be used for internal tracking purposes." }, { "slug": "GIFT_UP_CREATE_ITEM", "name": "Create Item", "description": "Tool to create a new item for sale in the Gift Up checkout. An item represents a product that can be purchased (gift cards, vouchers, passes, etc.). Use when you need to add new products to the Gift Up store, set up gift card offerings with specific prices and values, or configure items with custom pricing, expiry rules, and availability windows." }, { "slug": "GIFT_UP_CREATE_ITEM_GROUP", "name": "Create Item Group", "description": "Tool to create a new item group for organizing items in the Gift Up checkout. Use when you need to create a container for grouping items together." }, { "slug": "GIFT_UP_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order which generates one or more gift cards. Use when you need to programmatically create gift card orders through the Gift Up API. Orders encapsulate transaction data and contain gift card details including codes, balances, and fulfillment information." }, { "slug": "GIFT_UP_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete an item from the Gift Up checkout. Removes the item from sale. Use when you need to permanently remove an item by its ID." }, { "slug": "GIFT_UP_DELETE_ITEM_GROUP", "name": "Delete Item Group", "description": "Tool to delete an item group by its ID. Use when you need to remove an item group that has no items in it." }, { "slug": "GIFT_UP_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription by its ID. Use when you need to remove an existing webhook subscription." }, { "slug": "GIFT_UP_GET_CHECKOUT_SETTINGS", "name": "Get Checkout Settings", "description": "Tool to retrieve the current checkout settings. Use when you need to display or audit your checkout configuration." }, { "slug": "GIFT_UP_GET_COMPANY", "name": "Get Company Details", "description": "Tool to retrieve company details. Use when you need to fetch the current company associated with the API key." }, { "slug": "GIFT_UP_GET_EMAIL_SETTINGS", "name": "Get Email Settings", "description": "Tool to retrieve email settings for the Gift Up account. Use when you need to view the current email configuration including sender details, receipt settings, and notification preferences." }, { "slug": "GIFT_UP_GET_GIFT_CARD", "name": "Get Gift Card by Code", "description": "Tool to retrieve a gift card by its code. Use when you need detailed information about a specific gift card including balance, status, and transaction history." }, { "slug": "GIFT_UP_GET_GIFT_CARD_SETTINGS", "name": "Get Gift Card Settings", "description": "Tool to retrieve gift card settings including code format, expiration rules, and display options. Use when you need to understand how gift cards are configured for the account." }, { "slug": "GIFT_UP_GET_ITEM", "name": "Get Item by ID", "description": "Tool to retrieve detailed information about a specific item by its ID. Use when you need to fetch complete details about an item including price, availability, stock levels, and configuration settings." }, { "slug": "GIFT_UP_GET_ORDER", "name": "Get Order by ID", "description": "Tool to retrieve a specific order by ID. Use when you need detailed information about an order including gift cards, payment details, and customer information." }, { "slug": "GIFT_UP_GET_PING", "name": "API Health Check", "description": "Tool to perform a health check on the Gift Up! API. Use when you need to verify API connectivity and authentication without fetching account-specific data." }, { "slug": "GIFT_UP_GET_REPORT_TRANSACTION", "name": "Get Report Transaction", "description": "Tool to retrieve a specific transaction report by its ID. Use when you need detailed transaction information for accounting purposes." }, { "slug": "GIFT_UP_GET_SHIPPING_SETTINGS", "name": "Get Shipping Settings", "description": "Tool to retrieve shipping settings for physical gift cards. Use when you need to display or audit postal delivery configuration." }, { "slug": "GIFT_UP_GET_STRIPE_CONNECTION", "name": "Get Stripe Connection", "description": "Tool to retrieve current Stripe integration connection settings. Use when you need to view or audit Stripe payment configuration for the Gift Up account." }, { "slug": "GIFT_UP_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by its ID. Use when you need to get detailed configuration information for a webhook subscription." }, { "slug": "GIFT_UP_LIST_GIFT_CARD_ARTWORK", "name": "List Gift Card Artwork", "description": "Tool to list all gift card artwork available for use on gift cards. Returns artwork information including URLs and sort order. Use when you need to retrieve available gift card designs." }, { "slug": "GIFT_UP_LIST_GIFT_CARDS", "name": "List Gift Cards", "description": "Tool to list gift cards. Use when you need to retrieve gift cards with optional filters." }, { "slug": "GIFT_UP_LIST_ITEM_GROUPS", "name": "List Item Groups", "description": "Tool to list item groups. Use when you need to retrieve all item groups for filtering items by group." }, { "slug": "GIFT_UP_LIST_ITEMS", "name": "List Items", "description": "Lists all items (gift cards, passes, etc.) available for sale in the Gift Up account. Items can be optionally filtered by groupId to retrieve only items within a specific group. Use this to discover available items, check item details, pricing, stock levels, and group associations." }, { "slug": "GIFT_UP_LIST_LOCATIONS", "name": "List Locations", "description": "Retrieves all physical locations where gift cards are sold and/or redeemed. Locations are used exclusively for reporting purposes in Gift Up! to track where gift cards are being distributed and used. This endpoint returns all configured locations for your account, or an empty array if none have been set up. Use this action when you need to: - Get a list of all store/venue locations in your Gift Up! account - Retrieve location IDs for reporting or analytics purposes - Check which physical locations are configured for gift card operations" }, { "slug": "GIFT_UP_LIST_PROMOTIONS", "name": "List Promotions", "description": "Tool to list all promotions that allow discounts to be applied on the Gift Up checkout. Use when you need to retrieve all available promotion codes and their details." }, { "slug": "GIFT_UP_LIST_REPORT_TRANSACTIONS", "name": "List Report Transactions", "description": "Tool to list report transactions with optional filters. Use after setting desired filters to retrieve transactions report." }, { "slug": "GIFT_UP_LIST_USERS", "name": "List GiftUp Users", "description": "Tool to list all users. Use when you need to retrieve all users who have access to your Gift Up! account." }, { "slug": "GIFT_UP_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured for the account. Use when you need to view all webhook subscriptions and their configuration details." }, { "slug": "GIFT_UP_POST_PING", "name": "Health Check (POST)", "description": "Tool to perform a health check using POST /ping endpoint. Use when you need to test API connectivity and authentication by sending a test payload that will be echoed back." }, { "slug": "GIFT_UP_REACTIVATE_GIFT_CARD", "name": "Reactivate Gift Card", "description": "Tool to reactivate a voided gift card. Use when you need to restore a gift card that has been voided. This operation is only valid for gift cards that have been voided - active or fully redeemed cards cannot be reactivated." }, { "slug": "GIFT_UP_REDEEM_GIFT_CARD", "name": "Redeem Gift Card", "description": "Tool to redeem a specified amount or units from a gift card. Use when processing a purchase or transaction against a gift card balance. The gift card cannot be redeemed if it has been voided or lacks sufficient balance." }, { "slug": "GIFT_UP_REDEEM_GIFT_CARD_IN_FULL", "name": "Redeem Gift Card In Full", "description": "Tool to redeem a gift card in full. Use when you need to deduct the entire remaining balance from a gift card in a single operation." }, { "slug": "GIFT_UP_SUBSCRIBE_WEBHOOK", "name": "Subscribe to Webhook", "description": "Subscribe to Gift Up! webhook events to receive real-time notifications about orders and gift cards. This tool registers a callback URL that Gift Up! will POST to when specified events occur. Before creating the subscription, Gift Up! validates the target URL by sending a test POST request with body {\"test\": true} and expects a 200 OK response. Use cases: - Receive notifications when orders are created - Track gift card lifecycle events (creation, updates, redemption) - Integrate Gift Up! events with external systems - Build custom automation workflows Note: The target URL must be publicly accessible and capable of responding with 200 OK to the validation request, or the subscription will fail with a 400 error." }, { "slug": "GIFT_UP_TOP_UP_GIFT_CARD", "name": "Top Up Gift Card", "description": "Tool to add value to an existing gift card. Use when you need to increase the balance or units on a gift card. Cannot top up a voided gift card - attempting to do so will result in a 422 error." }, { "slug": "GIFT_UP_UNDO_REDEMPTION", "name": "Undo Gift Card Redemption", "description": "Tool to undo a previous redemption on a gift card, restoring the redeemed amount to the gift card balance. Use when you need to reverse a redemption transaction and restore the gift card balance." }, { "slug": "GIFT_UP_UPDATE_EMAIL_SETTINGS", "name": "Update Email Settings", "description": "Tool to update email settings using JSON Patch operations. Use when you need to modify receipt email content, footer text, sender details, logo settings, or gift card email preferences. This tool allows granular updates to specific email settings properties without replacing the entire configuration. Common use cases include updating footer text, changing sender information, modifying button colors, and adjusting email content." }, { "slug": "GIFT_UP_UPDATE_GIFT_CARD", "name": "Update Gift Card", "description": "Tool to update gift card properties using JSON Patch operations. Use when you need to modify gift card details like recipient information, expiry dates, or terms." }, { "slug": "GIFT_UP_UPDATE_GIFT_CARD_SETTINGS", "name": "Update Gift Card Settings", "description": "Tool to update gift card settings using JSON Patch operations. Use when you need to modify code format, expiration rules, or display options for gift cards." }, { "slug": "GIFT_UP_UPDATE_ITEM", "name": "Update Item", "description": "Update an item's properties using JSON Patch operations. Use this to modify item name, price, description, stock levels, availability, and other properties. Supports replace, add, and remove operations for granular field updates." }, { "slug": "GIFT_UP_UPDATE_ITEM_GROUP", "name": "Update Item Group", "description": "Tool to update an item group's properties using JSON Patch operations. Use when you need to modify name, description, autoExpand, or sortOrder fields of an existing item group." }, { "slug": "GIFT_UP_UPDATE_ORDER", "name": "Update Order", "description": "Tool to update an order's properties using JSON Patch operations. Use when you need to modify purchaser email, purchaser name, or other order details." }, { "slug": "GIFT_UP_UPDATE_STRIPE_CONNECTION", "name": "Update Stripe Connection", "description": "Tool to update Stripe integration connection settings for the Gift Up account. Use when configuring or changing Stripe API keys, Connect settings, or payment method availability." }, { "slug": "GIFT_UP_UPLOAD_ARTWORK", "name": "Upload Gift Card Artwork", "description": "Tool to upload new gift card artwork. Use when you need to add or update artwork images for gift cards." }, { "slug": "GIFT_UP_VOID_GIFT_CARD", "name": "Void Gift Card", "description": "Tool to void a gift card making it invalid for future redemptions. Use when you need to permanently invalidate a gift card. A voided gift card cannot be voided again." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gift_up_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Gift Up! API Key", "type": "string", "description": "Your personal API key obtained from the Gift Up! dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gigasheet", "name": "Gigasheet", "logo": "https://logos.composio.dev/api/gigasheet", "description": "Gigasheet is a big data automation platform that offers a spreadsheet-like interface for analyzing and managing large datasets, enabling users to automate tasks, integrate with various data sources, and streamline data workflows.", "category": "spreadsheets", "authSchemes": [ "API_KEY" ], "toolCount": 150, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GIGASHEET_APPEND_DATASET", "name": "Append Rows to Dataset", "description": "Appends rows to an existing Gigasheet dataset using column letters as keys. Use when you need to add new data rows to a sheet by specifying values for each column position (A, B, C, etc.)." }, { "slug": "GIGASHEET_APPEND_DATASET_FROM_SHEET", "name": "Append Sheet from Another Sheet", "description": "Tool to append data from a source sheet to a target sheet by matching column names. Use when you need to combine data from two existing sheets based on column name matching rather than column IDs. This action matches columns from the source sheet to the target sheet based on column names, with options for case-insensitive matching and trimming whitespace. Unmatched columns can optionally be added as new columns to the target sheet." }, { "slug": "GIGASHEET_APPLY_USER_DEFINED_HTTP_ENRICHMENT", "name": "Apply HTTP Enrichment", "description": "Tool to apply generic HTTP enrichment to a Gigasheet dataset. Use when you need to enrich dataset rows by calling external APIs and adding the response data as new columns. This action creates an enrichment job that calls a specified HTTP endpoint for each row (or batch of rows) in your dataset, extracts data from the API responses using JSON paths, and creates new columns with the enriched data. The operation is asynchronous and returns a job handle for monitoring progress. Common use cases: - Enrich customer records by calling a CRM API - Validate email addresses using a validation service - Lookup product details from an external catalog - Geocode addresses using a mapping API - Fetch social media profiles for contact enrichment" }, { "slug": "GIGASHEET_CALCULATE_ENRICH_EXPECTED_CREDITS", "name": "Calculate Enrich Expected Credits", "description": "Calculate expected credits for a user-defined HTTP enrichment operation. Use this before initiating an enrichment to estimate costs based on the number of rows and columns that will be processed. This tool helps you: - Estimate credit costs before running an enrichment - Understand resource requirements for filtered enrichments - Plan budget for large-scale enrichment operations" }, { "slug": "GIGASHEET_CANCEL_ENRICH_USER_DEFINED_HTTP_TASK", "name": "Cancel HTTP Enrichment Task", "description": "Tool to cancel a running enrichment task. Use when you need to stop an in-progress HTTP enrichment job that was previously initiated. This action attempts to cancel an enrichment task identified by its task handle. Cancellation is only possible for tasks that are still in progress (not yet completed or already failed). The task handle is returned when you start an enrichment job using the apply enrichment endpoint." }, { "slug": "GIGASHEET_CHECK_CONNECTORS_SOURCES_CONNECTORNAME", "name": "Check Connector Source Availability", "description": "Tool to check if a source of the given type is available. Use this to verify whether a specific connector integration (e.g., Snowflake, Salesforce) is configured and available for the authenticated user. This updates corresponding connection statuses." }, { "slug": "GIGASHEET_COMBINE_FILES", "name": "Combine Files", "description": "Tool to combine multiple files into a new file. Use when you need to merge several files where column names and types match. Optionally add source filename tracking or append rows to the first file in-place." }, { "slug": "GIGASHEET_COPY_FILE", "name": "Copy File", "description": "Tool to copy a file in Gigasheet. Use when you need to duplicate an existing file/sheet into your library with an optional new name and destination folder." }, { "slug": "GIGASHEET_COUNT_DATASET_DEDUPLICATE_ROWS", "name": "Count Dataset Deduplication Results", "description": "Tool to count how many duplicates will be removed and how many rows remain when deduplicating. Use when you need to preview the impact of a deduplication operation before executing it, or to understand the number of duplicate rows in a dataset based on specific column combinations." }, { "slug": "GIGASHEET_COUNT_DATASET_GROUPS", "name": "Count Dataset Groups", "description": "Tool to count the number of groups matching certain criteria in a Gigasheet dataset. Use when you need to determine how many distinct groups exist based on specified row grouping columns and optional filters. This action is useful for understanding data distribution and cardinality before performing more expensive operations like full group aggregations. It supports advanced features like pivot mode, filtering, and sorting configurations." }, { "slug": "GIGASHEET_COUNT_DATASET_ROWS", "name": "Count Dataset Rows", "description": "Counts rows in a Gigasheet dataset matching specified filter criteria. Returns the number of rows matching the provided filters, groupings, and other parameters. For basic row counting, only the handle and optionally filterModel need to be specified. Advanced features like pivot mode, grouping, and aggregations are available for complex counting scenarios. Common use cases: - Count all rows in a dataset - Count rows matching specific filter conditions - Count grouped rows in pivot tables - Validate filter results before exporting data For detailed information on constructing filter models, refer to the Gigasheet Filter Model Detail Guide at https://gigasheet.readme.io/reference/post_dataset-handle-count-rows" }, { "slug": "GIGASHEET_COUNT_DATASETS_ACTIVITY_COUNT", "name": "Count Dataset Activities", "description": "Tool to get total activity count on a given Gigasheet dataset. Use when you need to determine how many activities (creates, updates, deletes) have been performed on a dataset. This action counts activities matching the specified criteria such as time range, users, action types, and categories. Non-blank criteria are AND-ed together, while multi-value fields (Actions, Categories, Users) are OR-ed. Returns the total count of matching activities." }, { "slug": "GIGASHEET_CREATE_AI_CHAT", "name": "Create AI Chat Query", "description": "AI analysis assistant for Gigasheet datasets. Use this to ask natural language questions about sheet data and get AI-powered insights. Only available for sheets where you have write permissions. Common use cases: - Get summaries of data patterns and trends - Ask questions about specific columns or values - Request analysis of data relationships - Extract key insights from large datasets Note: Requires write access to the target sheet." }, { "slug": "GIGASHEET_CREATE_DATASET_COLUMN_COMMENT", "name": "Create Dataset Column Comment", "description": "Tool to add a comment to a column in a Gigasheet dataset. Use this when you need to annotate or document a specific column with explanatory text. Optionally notify other users by tagging their email addresses." }, { "slug": "GIGASHEET_CREATE_DATASET_COMMENT", "name": "Add Comment to Cell", "description": "Tool to add a comment to a specific cell in a Gigasheet dataset. Use when you need to annotate or add notes to a particular cell location in the sheet." }, { "slug": "GIGASHEET_CREATE_DATASET_CONDITIONAL_LABEL_COLUMN", "name": "Create Conditional Label Column", "description": "Tool to add a label column to a Gigasheet dataset with values based on conditional filters. Use when you need to categorize or label rows based on column values. This action creates a new column where each row's label is determined by evaluating filter conditions. Cases are evaluated in order, and the first matching case determines the label. Rows not matching any case receive the defaultLabel (if specified). Before using this tool: 1. Obtain a valid dataset handle using actions like GIGASHEET_POST_UPLOAD_URL or GIGASHEET_GET_DATASET_HANDLE 2. Identify column IDs/names using GIGASHEET_GET_DATASET_HANDLE_COLUMNS 3. Construct appropriate filter models - note that filter values must be strings even for numeric comparisons Example use case: Create a \"Priority\" column that labels rows as \"High\" if Amount > 1000, \"Medium\" if Amount > 100, otherwise \"Low\"." }, { "slug": "GIGASHEET_CREATE_DATASET_FORMULA", "name": "Create Formula Column", "description": "Tool to create a new column based on a formula input in a Gigasheet dataset. Use when you need to calculate values based on existing columns. This action creates a new column with values computed from a formula. You must reference columns by letter (e.g., 'A', 'B', 'C') using the 'formula' parameter. The 'literalFormula' parameter can be provided alongside 'formula' for documentation purposes to show the human-readable column names, but cannot be used alone. Formula syntax supports: - Column references: A, B, C (required, use column letters) - Arithmetic operations: +, -, *, / - Functions: UPPER(), LOWER(), CONCATENATE(), etc. - Example: \"A * 2\", \"UPPER(B)\", \"CONCATENATE(B, C)\" Before using this tool: 1. Obtain a valid dataset handle using GIGASHEET_POST_UPLOAD_URL or GIGASHEET_GET_DATASET_HANDLE 2. Use GIGASHEET_GET_DATASET_HANDLE_COLUMNS to identify column letters for formula construction 3. Construct the appropriate formula expression based on your calculation needs" }, { "slug": "GIGASHEET_CREATE_DATASET_FORMULA_EDIT", "name": "Edit Formula Column", "description": "Tool to edit a formula column in a Gigasheet dataset. Use when you need to update an existing formula column with a new formula, rename it, or reposition it. The column must already exist and be a formula column created previously." }, { "slug": "GIGASHEET_CREATE_DATASET_FORMULA_PREVIEW", "name": "Create Formula Preview", "description": "Tool to calculate a formula preview on a Gigasheet dataset and return sample results with involved column values. Use this action when you need to: - Test a formula expression before applying it to an entire column - Preview formula calculations on sample data - Validate formula syntax and see example outputs - View which columns are involved in the formula computation The action returns sample rows showing the formula result along with the values from columns referenced in the formula. This is useful for validating formulas before creating computed columns or performing bulk calculations." }, { "slug": "GIGASHEET_CREATE_DATASET_ITERATOR_COLUMN", "name": "Create Iterator Column", "description": "Tool to add an iterator column to a Gigasheet dataset based on current filters and order. Use when you need sequential row numbers in your data. This action creates a new column with sequential numbers (1, 2, 3, ...) for each row. The numbering respects any applied filters and sort order, making it useful for ranking, indexing, or tracking row positions after data transformations. Before using this tool: 1. Obtain a valid dataset handle using GIGASHEET_POST_UPLOAD_URL or GIGASHEET_GET_DATASET_HANDLE 2. Optionally define filters using filterModel to number only specific rows 3. Optionally specify sort order using sortModel to control the numbering sequence" }, { "slug": "GIGASHEET_CREATE_DATASET_LIVESHARE", "name": "Create Dataset Liveshare", "description": "Tool to create a new liveshare for a Gigasheet dataset. Returns a share ID and URL for accessing the current CSV data in the sheet. Use when you need to generate a shareable link that provides live access to dataset content." }, { "slug": "GIGASHEET_CREATE_DATASET_VIEW", "name": "Create Dataset View", "description": "Tool to create a new view for a Gigasheet dataset with a specified name and client state version. Use when you need to save a specific dataset state as a named view for later reference." }, { "slug": "GIGASHEET_CREATE_EXPLODE_JSON", "name": "Explode JSON Column", "description": "Tool to explode JSON data in a column into separate columns. Extracts all keys from JSON objects and creates a new column for each key. Use when you need to flatten nested JSON data in a Gigasheet dataset." }, { "slug": "GIGASHEET_CREATE_FILE_AGGREGATION", "name": "Create File Aggregation", "description": "Tool to retrieve ungrouped aggregated values for a Gigasheet file. Returns aggregated data as specified in the request payload, including support for pivot mode, filtering, sorting, and various aggregation functions. Use when you need to compute summary statistics across columns without grouping by specific keys." }, { "slug": "GIGASHEET_CREATE_FILES_BLANK", "name": "Create Blank File", "description": "Tool to create an empty file in your Gigasheet Library. Use when you need a blank spreadsheet with a specified number of rows and columns." }, { "slug": "GIGASHEET_CREATE_FILES_DIRECTORY", "name": "Create Files Directory", "description": "Tool to create a new folder in your Gigasheet Library. Use when you need to organize datasets by creating a new directory for file storage." }, { "slug": "GIGASHEET_CREATE_LOOKUP", "name": "Create Cross-File Lookup", "description": "Creates a cross-file lookup to enrich data by matching values between two sheets. Use when you need to pull related data from a reference sheet into your source sheet based on matching column values. This is similar to VLOOKUP in Excel. Before using this tool: 1. Obtain valid handles for both the source and reference datasets 2. Identify the column IDs (A, B, C, etc.) in both sheets using GIGASHEET_GET_DATASET_HANDLE_COLUMNS 3. Ensure the columns you're matching have compatible data types The lookup will create a new column in the source sheet with values from the reference sheet where matches are found." }, { "slug": "GIGASHEET_CREATE_MCP", "name": "Send MCP Request to Sheet Assistant", "description": "Tool to interact with Gigasheet Sheet Assistant via the Model Context Protocol (MCP) over HTTP. Use when you need to query or manipulate sheet data through MCP-compatible LLM tools. This endpoint implements JSON-RPC 2.0 protocol and supports MCP methods like 'tools/list' (to discover available tools) and 'tools/call' (to execute specific tools). The Sheet Assistant can perform operations like querying data, analyzing sheets, and other data manipulation tasks." }, { "slug": "GIGASHEET_CREATE_SPLIT_COLUMN", "name": "Split Column", "description": "Tool to split a column into multiple columns based on a separator. Use when you need to divide column values into separate columns in a Gigasheet dataset." }, { "slug": "GIGASHEET_DELETE_AI_HANDLE_LOGS", "name": "Delete Sheet Assistant Logs", "description": "Tool to delete Sheet Assistant chat history for a specific sheet. Use when you need to clear all AI assistant conversation logs associated with a sheet handle." }, { "slug": "GIGASHEET_DELETE_COLUMNS_BY_NAME", "name": "Delete columns by name", "description": "Tool to delete multiple columns from a Gigasheet dataset by their column names. Use when you need to remove specific columns from a sheet." }, { "slug": "GIGASHEET_DELETE_CONNECTORS_SOURCES_CONNECTORNAME", "name": "Delete Connector Source", "description": "Tool to delete a connector source for the authenticated user. Use when you need to remove an integration connection such as Salesforce, S3, or Google Sheets from Gigasheet." }, { "slug": "GIGASHEET_DELETE_DATASET_COMMENT", "name": "Delete Dataset Comment", "description": "Tool to delete a comment from a cell in a Gigasheet dataset. Use this when you need to remove a specific comment that was previously added to a cell. The comment ID can be obtained using the list comments action." }, { "slug": "GIGASHEET_DELETE_DATASET_DELETE_ROWS_NOT_MATCHING_FILTER", "name": "Delete Rows Not Matching Filter", "description": "Deletes rows in a Gigasheet dataset that do NOT match the specified filter criteria. Use this when you want to keep only the rows that match a filter and remove everything else. The filter uses Conjunctive Normal Form (CNF) where conditions can be combined with AND/OR logic." }, { "slug": "GIGASHEET_DELETE_DATASET_HANDLE_DEDUPLICATE_ROWS", "name": "Delete Duplicated Rows from Dataset", "description": "Tool to delete duplicated rows from a Gigasheet dataset based on specified columns and sort model. Use when you need to remove duplicate entries identified by matching values in one or more columns. When multiple rows have identical values in the specified columns, the sort model determines which row to keep (if not specified, default sheet row order is used). Optionally apply a filter to deduplicate only a subset of rows." }, { "slug": "GIGASHEET_DELETE_DATASET_HANDLE_DELETE_ROWS", "name": "Delete Rows from Dataset", "description": "Tool to delete selected rows from a Gigasheet dataset. Use when you need to remove specific rows identified by their row IDs (iterator numbers). Row IDs are subject to change, so it's best practice to obtain them immediately before deletion using a query or list action." }, { "slug": "GIGASHEET_DELETE_DATASET_HANDLE_DELETE_ROWS_MATCHING_FILTER", "name": "Delete Rows Matching Filter", "description": "Tool to delete rows in a Gigasheet dataset that match a specified filter. Use when you need to remove specific rows based on filter criteria. The filterModel uses Conjunctive Normal Form (CNF) structure with column identifiers, filter values, and match conditions." }, { "slug": "GIGASHEET_DELETE_DATASET_HANDLE_VIEWS_VIEW", "name": "Delete dataset view", "description": "Tool to delete a specific view from a Gigasheet dataset. Use when you need to remove a saved view from a dataset. Requires both the dataset handle and the view handle to identify the view to delete." }, { "slug": "GIGASHEET_DELETE_DATASET_LIVESHARE_SHAREID", "name": "Delete dataset live share", "description": "Tool to delete a live share of a Gigasheet dataset. Use when you need to revoke or remove an existing live share link. The shareid is the unique identifier of the live share to be deleted." }, { "slug": "GIGASHEET_DELETE_DELETE_HANDLE", "name": "Delete sheet or folder by handle", "description": "Deletes a Gigasheet sheet or folder by its unique handle identifier. For sheets, this permanently removes the dataset. For folders, use recursive=True to delete the folder along with all its contents (sheets and subfolders), or omit/set to false to delete only empty folders. The handle can be obtained from sheet URLs or from create/upload operations." }, { "slug": "GIGASHEET_DELETE_FILES_COLUMNS_COLUMN", "name": "Delete column from sheet", "description": "Tool to delete a single column from a Gigasheet sheet by its column identifier. Use when you need to permanently remove a specific column from a sheet." }, { "slug": "GIGASHEET_DELETE_FILTER_TEMPLATES_FILTER_HANDLE", "name": "Delete Filter Template", "description": "Tool to delete a saved filter template by its unique handle. Use when you need to remove a persisted filter configuration that is no longer needed." }, { "slug": "GIGASHEET_DELETE_MULTIPLE_COLUMNS", "name": "Delete multiple columns from file", "description": "Tool to delete multiple columns from a Gigasheet file. Use when you need to remove specific columns from a sheet by their identifiers." }, { "slug": "GIGASHEET_FILTER_FILE_ROWS", "name": "Filter File Rows", "description": "Tool to retrieve rows from a Gigasheet file matching specified filter criteria. Use when you need to query or extract data from a sheet with optional filtering, sorting, and pagination. For basic filtering, only the filterModel field needs to be specified." }, { "slug": "GIGASHEET_GENERATE_DATASET_DESCRIPTION", "name": "Generate Dataset Description", "description": "Generates an AI-powered description for a Gigasheet dataset. Use this when you need to automatically create a summary or description of a dataset's content and structure based on its data." }, { "slug": "GIGASHEET_GET_AI_HANDLE_LOGS", "name": "Get Sheet AI Chat History", "description": "Tool to retrieve AI chat history for a sheet. Returns up to 20 most recent messages exchanged with the sheet assistant. Use when you need to review previous AI interactions or understand the conversation context for a specific sheet." }, { "slug": "GIGASHEET_GET_CELL_COMMENTS", "name": "Get Cell Comments", "description": "Tool to get comments for a specific cell in a Gigasheet dataset. Use when you need to retrieve comments that have been added to a particular cell at the intersection of a column and row." }, { "slug": "GIGASHEET_GET_CLIENT_STATE_CURRENT_VERSION", "name": "Get Client State Current Version", "description": "Retrieves the current client-state version and timestamp for a specified sheet. The version identifier is used when creating or updating views and saved states. Call this action after obtaining a sheet handle to get the latest version before performing state-related operations." }, { "slug": "GIGASHEET_GET_CONNECTOR_CONNECTION_PARAMS", "name": "Get Connector Connection Parameters", "description": "Tool to get connection parameters for a specific connector. Use when you need to discover what parameters are required to set up a connector integration." }, { "slug": "GIGASHEET_GET_CONNECTORS_CONNECTION_PARAMS_CONNECTORNAME", "name": "Get Connector Connection Parameters", "description": "Tool to retrieve connection parameters for a specific connector type. Use when you need to discover what parameters are required to configure a data source connection." }, { "slug": "GIGASHEET_GET_CONNECTORS_CONNECTIONS", "name": "Get Connector Connections", "description": "Tool to list connector connections. Use after setting a valid Gigasheet API token." }, { "slug": "GIGASHEET_GET_CONNECTORS_SOURCES", "name": "Get Connector Sources", "description": "Tool to retrieve information about connected data sources for the user. Returns a list of data sources with their type, status, and folder location. Use after setting a valid Gigasheet API token." }, { "slug": "GIGASHEET_GET_CONNECTORS_SOURCES_PARAMS_CONNECTORNAME", "name": "Get Connector Source Parameters", "description": "Tool to get parameters required for a specific connector source type. Use when configuring a data source connection to understand what information needs to be collected from the user." }, { "slug": "GIGASHEET_GET_DATASET_COLUMN_COMMENTS", "name": "Get Dataset Column Comments", "description": "Tool to get comments for a specific column in a dataset sheet. Use when you need to retrieve comments that have been added to a particular column." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE", "name": "Get Dataset by Handle", "description": "Retrieves comprehensive metadata for a specific dataset in Gigasheet. This tool fetches detailed information about a dataset including its processing status, file properties, column structure, owner information, and more. Use this after uploading a file or when you have a valid dataset handle to get its current state and schema. Common use cases: - Check if a dataset has finished processing (Status field) - Get column names and data types for the dataset - Retrieve file size, row count, and creation timestamps - Verify dataset ownership and access" }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_COLUMNS", "name": "Get Dataset Columns", "description": "Tool to list all column metadata (IDs, names, types) for a dataset. Use after obtaining a dataset handle." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_DOWNLOAD_EXPORT", "name": "Get Dataset Export Download URL", "description": "Tool to retrieve the download URL for an exported dataset. Use after initiating an export and obtaining its handle." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_LIVESHARE_SHAREID", "name": "Get Dataset Liveshare CSV", "description": "Tool to retrieve CSV data from a Gigasheet liveshare. Returns the current data in text CSV format. Use when you need to export or access shared dataset data via a liveshare link." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_NOTE", "name": "Get Dataset Note", "description": "Tool to retrieve a dataset's note by handle. Use this to get AI-generated or user-provided descriptions of a dataset." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_ORGANIZATION_PERMISSIONS", "name": "Get Dataset Organization Permissions", "description": "Tool to retrieve organization file permissions for a dataset. Use when you need to check what permissions the requester's organization has on a specific file. This action returns permissions only for the same organization that the requester is a member of. The permissions are returned as a list of integers representing different permission levels." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_VERSION", "name": "Get Dataset Version Metadata", "description": "Retrieves metadata about a dataset at a specific version. Returns information including file name, column names and types, row count, modification timestamp, and processing status. Use this when you need to access historical versions of a dataset or verify dataset state at a particular point in time." }, { "slug": "GIGASHEET_GET_DATASET_HANDLE_VIEWS", "name": "Get Dataset Views", "description": "Tool to list all views associated with a specific dataset. Use after confirming the dataset handle and its status." }, { "slug": "GIGASHEET_GET_DATASET_OPERATION_STATUS", "name": "Get Dataset Operation Status", "description": "Tool to get information about the last operation on a dataset. Use when you need to check if a long-running operation (like import, export, or data transformation) has completed." }, { "slug": "GIGASHEET_GET_DATASETS_HANDLE_ACTIVITY", "name": "Get Dataset Activity", "description": "Tool to get the list of write actions on a given dataset sheet. Use this to retrieve the activity history and audit trail of modifications made to a dataset." }, { "slug": "GIGASHEET_GET_DATASET_VIEWS", "name": "Get Dataset View Metadata", "description": "Tool to retrieve view metadata for a specific view within a dataset. Use when you have both a dataset handle and a view handle to get detailed view information." }, { "slug": "GIGASHEET_GET_DOCS_FORMULAS_FUNCTIONS", "name": "Get Docs Formulas Functions", "description": "Tool to retrieve all supported formula functions. Use after authenticating with a valid API token." }, { "slug": "GIGASHEET_GET_ENRICH_USER_DEFINED_HTTP_TASK_HANDLE", "name": "Get Enrich Task Status", "description": "Tool to get status for a user-defined HTTP enrichment task. Use when you need to check if an enrichment operation has completed or to monitor its progress." }, { "slug": "GIGASHEET_GET_FILTER_TEMPLATE_ON_SHEET", "name": "Apply Filter Template On Sheet", "description": "Tool to fetch a saved filter template's model for a given sheet. Use when you need the exact filter structure for a specific sheet and template." }, { "slug": "GIGASHEET_GET_FILTER_TEMPLATES", "name": "Get Filter Templates", "description": "Retrieves all saved filter templates from GigaSheet. Filter templates store reusable filter configurations that can be applied to datasets. Returns a list of templates with their IDs, names, owners, filter criteria, and timestamps. Supports optional pagination via the page parameter." }, { "slug": "GIGASHEET_GET_FILTER_TEMPLATES_FILTER_HANDLE", "name": "Get Filter Template by Handle", "description": "Retrieves details of a specific saved filter template by its unique handle. Use when you need to inspect a particular filter template's configuration, metadata, or filter criteria." }, { "slug": "GIGASHEET_GET_GENERATE_HANDLE", "name": "Generate New Handle", "description": "Tool to generate a new unique dataset handle. Use when you need a fresh FileUuid before creating or referencing datasets." }, { "slug": "GIGASHEET_GET_LIBRARY", "name": "Get Library Files", "description": "Tool to retrieve all datasets and files in the user's Gigasheet library. Returns all datasets owned by the user at any folder depth, files directly shared with the user, and IDs of files the user has shared. Use this to get a complete overview of all accessible files and their metadata including status, sharing permissions, and file properties." }, { "slug": "GIGASHEET_GET_LIBRARY_HANDLE", "name": "Get Library Files in Directory", "description": "Retrieves all library files with file permissions in a given directory. Returns library files owned by the user making the request, limited to the requested directory level only (does not include nested files from deeper subdirectories)." }, { "slug": "GIGASHEET_GET_LIBRARY_HOME", "name": "Get Library Home Page Files", "description": "Tool to retrieve suggested recent files for the home page. Returns a list of recently accessed datasets with metadata, permissions, and sharing information. Use when you need to display or work with the user's recent files." }, { "slug": "GIGASHEET_GET_LIBRARY_PATH", "name": "Get Library Path", "description": "Tool to retrieve the chain of parent directories for a file or folder in Gigasheet. Returns the complete path hierarchy from root to the specified item, sorted by folder level. Use when you need to understand the location of a file or folder within the library structure." }, { "slug": "GIGASHEET_GET_TICINTEL_NPI_NPI_PUBLIC", "name": "Get TICIntel NPI Public Profile", "description": "Tool to retrieve public NPI (National Provider Identifier) profile from TICIntel database. Use when you need comprehensive information about a healthcare provider including their specialty, location, procedures, payment rates, and TICIntel scoring data. The NPI must be a valid 10-digit number registered in the TICIntel database." }, { "slug": "GIGASHEET_GET_TICINTEL_STATES", "name": "Get TIC Intel States", "description": "Tool to list available TIC Intel states from Gigasheet. Returns a list of state names or codes that can be used for TIC Intel data queries. Use when you need to know which states are available for TIC Intel analysis." }, { "slug": "GIGASHEET_GET_TICINTEL_STATES_STATE_CITIES", "name": "List Cities by State", "description": "Tool to retrieve a list of cities for a given US state code from the TICIntel dataset. Use when you need to get all available cities within a specific state." }, { "slug": "GIGASHEET_GET_TICINTEL_STATES_STATE_CITIES_CITY_PROVIDERS", "name": "List Providers by City", "description": "Tool to retrieve a list of healthcare providers in a specific city and state from the TicIntel dataset. Use when you need to find providers by geographic location." }, { "slug": "GIGASHEET_GET_USER_DETAILS", "name": "Get User Details", "description": "Retrieves detailed information about the authenticated user in Gigasheet. Use when you need to check user account details, storage quota usage, or verify assigned roles and permissions." }, { "slug": "GIGASHEET_GET_USER_ENRICHMENT_CREDITS", "name": "Get User Enrichment Credits", "description": "Tool to get the current user's enrichment credit information. Use when you need to check available enrichment credits or usage." }, { "slug": "GIGASHEET_GET_USER_METADATA", "name": "Get User Metadata", "description": "Tool to retrieve metadata for the authenticated user. Returns user metadata including billing info, feature flags, and onboarding status. Use when you need to fetch user configuration or settings." }, { "slug": "GIGASHEET_GET_USERS_AUTOFILL", "name": "Get User Autofill Suggestions", "description": "Retrieves autofill suggestions for the authenticated user, including team members and previously used share recipients. Useful for autocomplete functionality when sharing files or collaborating with team members." }, { "slug": "GIGASHEET_GET_USER_SPACE_USED", "name": "Get User Space Used", "description": "Tool to get the amount of space used by the current user in bytes. Use when you need to check storage usage." }, { "slug": "GIGASHEET_GET_USER_WHOAMI", "name": "Get Authenticated User Info", "description": "Tool to fetch the authenticated user's details. Use after setting a valid Gigasheet API token." }, { "slug": "GIGASHEET_LIST_BILLING_PLANS", "name": "List Billing Plans", "description": "Tool to list available Gigasheet billing plans. Returns all billing plans with their item details and pricing information. Use when you need to view subscription options." }, { "slug": "GIGASHEET_LIST_DATASET_COMMENTS", "name": "List Dataset Comments", "description": "Tool to get all comments in a dataset sheet. Use this when you need to retrieve comments that have been added to cells in the dataset." }, { "slug": "GIGASHEET_LIST_DATASET_LIVESHARES", "name": "List Dataset Liveshares", "description": "Tool to list all liveshares for a specific Gigasheet dataset. Use when you need to view existing shared links for a dataset." }, { "slug": "GIGASHEET_LIST_DATASETS", "name": "List All Datasets", "description": "Tool to retrieve all datasets owned by the user at any folder depth. Returns a list of datasets with their metadata. The API may trim certain fields to keep response size manageable. Use the 'types' parameter to filter by dataset type (sheet or export)." }, { "slug": "GIGASHEET_LIST_DATASETS_BY_HANDLE", "name": "List Datasets by Handle", "description": "Tool to list files and datasets in a given Gigasheet location. Use when you need to browse the contents of a parent dataset or folder, optionally filtering by type (sheet or export). Supports pagination for large result sets. Returns metadata about each file including handle, name, size, status, and timestamps." }, { "slug": "GIGASHEET_LIST_LIBRARY_EXPORTS", "name": "List Library Exports", "description": "Tool to list exports owned by the current user, regardless of location. Use when you need to retrieve all exports associated with the authenticated user's account." }, { "slug": "GIGASHEET_LIST_SHARED_FILES_BY_HANDLE", "name": "List Shared Files by Handle", "description": "Tool to retrieve all files with permissions shared with the user in a specific directory location. Use when you need to see what files have been shared with you in a particular folder. Returns files limited to the requested directory level and will not return nested files at any deeper directory level." }, { "slug": "GIGASHEET_MOVE_FILE_DIRECTORY", "name": "Move file or folder to directory", "description": "Tool to move a file or folder into a folder or to the root of your Library. Use when organizing your Gigasheet workspace. The destination folder must already exist, and creating directory loops is forbidden." }, { "slug": "GIGASHEET_PATCH_USER_METADATA", "name": "Update User Metadata", "description": "Tool to update user metadata in Gigasheet. Use this to modify user-level settings such as billing integration (Chargebee ID), feature flags (pre-analysis), and onboarding state. At least one field must be provided to perform the update." }, { "slug": "GIGASHEET_POST_AI_HANDLE_FORMULATE", "name": "Generate AI Formula", "description": "Tool to generate Excel-style formulas using AI based on natural language queries. Use when you need to create formulas for data transformation, calculation, or extraction on a Gigasheet dataset. This action is available for sheets where you have read permissions. Provide a natural language description of the operation you want to perform, and the AI will generate the appropriate formula syntax that can be applied to your sheet data." }, { "slug": "GIGASHEET_POST_CAST_COLUMN_HANDLE_COLUMN", "name": "Cast Column Data Type", "description": "Tool to change a column's data type in a Gigasheet dataset. Use when you need to convert column data from one type to another (e.g., string to number, text to IP address). The operation is asynchronous and returns a success acknowledgment." }, { "slug": "GIGASHEET_POST_CHANGE_CASE_HANDLE_COL", "name": "Change Column Case", "description": "Tool to change the case of a column to Uppercase, Lowercase, Capitalized, or Proper. Use when you need to standardize text formatting in a column for consistency or data processing requirements." }, { "slug": "GIGASHEET_POST_CLEAN_COMPANY_NAME_HANDLE_COL", "name": "Clean Company Name", "description": "Tool to clean company names by stripping common business suffixes (Inc., LLC, Corp., etc.). Use when standardizing company names to avoid duplicates. Currently works only on English-alphabet versions of names." }, { "slug": "GIGASHEET_POST_COMBINE_COLUMNS_HANDLE", "name": "Combine Columns", "description": "Tool to combine multiple columns into a single new column with a separator. Use when you need to merge column values from a Gigasheet dataset." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_APPEND_BY_NAME", "name": "Append Rows to Sheet by Name", "description": "Appends one or more rows to a Gigasheet dataset using column names as keys. This tool adds new rows to an existing dataset by matching the keys in each record to the column names in the sheet. Column names must match exactly (case-sensitive). You can provide partial records (only some columns), and missing columns will be left empty. Before using this tool: 1. Obtain a valid dataset handle (e.g., using GIGASHEET_POST_UPLOAD_URL or GIGASHEET_GET_DATASET_HANDLE) 2. Retrieve column names using GIGASHEET_GET_DATASET_HANDLE_COLUMNS to ensure you use correct names The API will return an error if the handle is invalid or column names don't match." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_ASSISTANT_TIPS", "name": "Generate Dataset Assistant Tips", "description": "Tool to generate AI-powered tips for analyzing a dataset. Use when you need suggestions for data analysis or exploration. This action generates intelligent recommendations based on the dataset structure and content to help users discover insights and perform meaningful analyses." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_EXPORT", "name": "Initiate Dataset Export", "description": "Initiates an asynchronous export job for a Gigasheet dataset. Returns an export job handle that can be used with the download export endpoint to retrieve the exported file once processing completes. Use this action when you need to: - Export a complete dataset to CSV format - Export a filtered subset of data by applying column filters - Create downloadable data snapshots for sharing or backup The export process is asynchronous - this action queues the job and returns immediately with a handle. Use the GET /dataset/{handle}/download-export endpoint to poll the export status and download the file when ready. Example usage: 1. Export entire dataset: {\"handle\": \"9f60b220_8716_49eb_ad53_a206f8aaa0bf\"} 2. Export with filter: {\"handle\": \"9f60b220_8716_49eb_ad53_a206f8aaa0bf\", \"gridState\": {\"filterModel\": {\"Year\": {\"type\": \"equals\", \"filter\": \"2023\"}}}}" }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_FIND_AND_REPLACE", "name": "Find and Replace in Dataset", "description": "Tool to find and replace values in specified columns of a Gigasheet dataset. Use when you need to update or clean data by replacing specific values across one or more columns. This action creates a new column with the replaced values (keeping the original column name) and renames the original column to 'Original Values - [column name]' for reference." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_INSERT_BLANK_ROW", "name": "Insert Blank Row in Dataset", "description": "Tool to insert a blank row with null values into a dataset. Use after determining the insertion index." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_RENAME_COLUMNS_TO_UNIQUE", "name": "Rename Columns to Unique", "description": "Tool to rename all columns in a dataset to unique names. Use when duplicate column names could cause conflicts in downstream processing." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_SAVE_CURRENT_VIEW", "name": "Save Current View", "description": "Saves the current view state of a Gigasheet dataset and returns a view handle. This operation captures the current layout, filters, sorts, column visibility, and other view settings of the dataset at the time of the call. The returned view handle can be used to reference this saved view state later. Use this after applying filters, sorts, or other transformations that you want to preserve." }, { "slug": "GIGASHEET_POST_DATASET_HANDLE_SELECT_COLUMNS_BY_NAME", "name": "Select columns by name", "description": "Tool to select specific columns from a Gigasheet dataset by name, keeping only those columns in the specified order. Use when you need to reduce a dataset to only certain columns or reorder columns. All columns not specified will be deleted, but the row number column is always retained automatically." }, { "slug": "GIGASHEET_POST_EXTRACT_DOMAIN_HANDLE_COL", "name": "Extract Domain from URL Column", "description": "Tool to extract domain from a URL column in a Gigasheet dataset. Use when you need to parse URLs and extract just the domain portion (e.g., extracting 'example.com' from 'https://www.example.com/path')." }, { "slug": "GIGASHEET_POST_FILE_HANDLE_FILTER_BY_NAME", "name": "Filter File Rows by Column Name", "description": "Filter rows in a Gigasheet file by column names and return matching results. This endpoint uses column names directly (not column IDs) and supports text, number, and date filters. Use this when you need to query data with specific filter conditions and know the exact column names." }, { "slug": "GIGASHEET_POST_FILE_HANDLE_FILTER_SHEET_ROW_NR", "name": "Get Filtered Row Index", "description": "Maps an unfiltered row number to its position in the filtered result set. Returns the 1-based index of where a specific row appears after filters are applied, or 0 if the row is filtered out. Useful for locating specific rows when filters are active on a sheet." }, { "slug": "GIGASHEET_POST_FILE_HANDLE_FILTER_STREAM_PROGRESS", "name": "Filter File with Stream Progress", "description": "Filter data from a Gigasheet file with real-time streaming progress updates. Returns filtered rows along with processing statistics (bytes and rows processed). Use when you need to apply filters to a dataset and retrieve the filtered results with pagination support." }, { "slug": "GIGASHEET_POST_FILE_HANDLE_SAVE_EXPORTED", "name": "Save Exported File", "description": "Saves a file state with applied filters and grouping to create an exported version. Returns a JSON response acknowledging if the save request was successful. Use this action when you need to persist filtered or grouped views of a dataset as a separate exported file. The operation is asynchronous and returns an export handle to track the job status." }, { "slug": "GIGASHEET_POST_FILES_COMBINE_BY_NAME", "name": "Combine Files by Name", "description": "Tool to combine multiple files by a shared column name. Use when you need to merge several Gigasheet files based on a common header." }, { "slug": "GIGASHEET_POST_MAVEN_EXPORT", "name": "Export Gigasheet to S3", "description": "Tool to export Gigasheet data to AWS S3. Use after generating an export handle and ensuring the S3 bucket has correct permissions." }, { "slug": "GIGASHEET_POST_MAVEN_IMPORT", "name": "Import from S3", "description": "Tool to import data from AWS S3 into your Gigasheet Library. Use when you need to pull objects or prefixes from an S3 bucket into Gigasheet." }, { "slug": "GIGASHEET_POST_REQUEST_ACCESS_HANDLE", "name": "Request Access to File", "description": "Tool to request access to a Gigasheet file. Use when you need permission to view or edit a file owned by another user." }, { "slug": "GIGASHEET_POST_REQUEST_API_ACCESS", "name": "Request API Access", "description": "Request API access by sending a notification to Gigasheet support team. This tool sends a notification email to Gigasheet support requesting API key access for the authenticated user. The Gigasheet team will review the request and provide an API key separately. This does NOT immediately return an API key. Use this when you need to initiate the process of obtaining API access credentials." }, { "slug": "GIGASHEET_POST_TRIM_WHITESPACE_HANDLE_COL", "name": "Trim Column Whitespace", "description": "Tool to trim leading and trailing whitespace from all values in a column. Use when you need to clean up text data and remove extra spaces for consistency and data quality." }, { "slug": "GIGASHEET_POST_UNROLL_DELIMITED_COLUMN_HANDLE_COLUMN", "name": "Unroll Delimited Column", "description": "Tool to explode a column containing delimited data into multiple rows. Use after confirming dataset handle and target column." }, { "slug": "GIGASHEET_POST_UPLOAD_DIRECT", "name": "Upload Raw Data Direct", "description": "Tool to upload raw data directly to Gigasheet using byte array contents. Use when you have file data as bytes and want to create a new sheet or append to an existing one." }, { "slug": "GIGASHEET_POST_UPLOAD_URL", "name": "Upload from URL", "description": "Tool to upload data to Gigasheet from a specified URL. Use when you have a public or pre-signed link and want to ingest it directly." }, { "slug": "GIGASHEET_PREVIEW_ENRICH_USER_DEFINED_HTTP", "name": "Preview HTTP Enrichment", "description": "Tool to preview a generic HTTP enrichment on a Gigasheet dataset before executing it on all rows. This action tests the HTTP enrichment configuration by executing a small sample of requests and returning both successful results and any failures. Use this to validate your enrichment configuration (URL template, headers, output mappings) before running it on the entire dataset. The preview shows: - Sample successful API responses with extracted values - Sample failed requests with error details - Execution time for performance estimation - Response type validation This is essential for debugging enrichment configurations and avoiding costly mistakes on large datasets." }, { "slug": "GIGASHEET_PUT_DATASET_HANDLE_CLIENTSTATE_VERSION", "name": "Set Dataset Client State Version", "description": "Applies or restores a specific client state version to a dataset. Client state includes view settings like filters, sorts, visible columns, and aggregations. Use this to restore a previously saved state or apply a specific version after making changes to the dataset." }, { "slug": "GIGASHEET_PUT_DATASET_HANDLE_COL_ROW_BY_NAME", "name": "Update cell by column name and row", "description": "Tool to update a cell in a dataset by specifying column name and row number. Use after dataset is loaded and column name uniqueness is ensured." }, { "slug": "GIGASHEET_PUT_FILE_HANDLE_SHARE_FILE", "name": "Share file", "description": "Tool to share a Gigasheet file with specified recipients. Use after creating or updating a sheet to grant email-based access." }, { "slug": "GIGASHEET_PUT_FILE_HANDLE_SHARE_OPT_OUT", "name": "Opt out of shared file", "description": "Tool to remove your access from a file that has been shared with you. Use when you want to opt out of a shared file." }, { "slug": "GIGASHEET_PUT_FILTER_TEMPLATES_FILTER_HANDLE", "name": "Create/Update Filter Template", "description": "Tool to create or update a saved filter template. Use when you need to persist or modify filter criteria by providing a filter handle and the filter model." }, { "slug": "GIGASHEET_RENAME_COLUMNS_BY_NAME", "name": "Rename Columns by Name", "description": "Tool to rename columns in a Gigasheet dataset using their current names. Use when you need to update column names to more descriptive or standardized values." }, { "slug": "GIGASHEET_RENAME_FILE", "name": "Rename File", "description": "Tool to rename a file in Gigasheet. Use when you need to change the display name of a sheet." }, { "slug": "GIGASHEET_RESET_CLIENT_STATE", "name": "Reset Client State to Default", "description": "Resets the client state of a sheet to the default state. This clears all view customizations including filters, sorts, visible columns, and aggregations, returning the sheet to its original default view. Use this when you need to remove all applied customizations and restore the initial state." }, { "slug": "GIGASHEET_RESET_USER_PASSWORD", "name": "Reset User Password", "description": "Tool to trigger password reset for the authenticated user. Use when a user needs to reset their password and has a valid API token." }, { "slug": "GIGASHEET_SEARCH_DATASETS_ACTIVITY", "name": "Search Dataset Activity", "description": "Tool to search the history of write actions performed on a Gigasheet dataset. Use when you need to audit changes, track user activity, or review the modification history of a dataset. Returns a paginated list of activity entries including user information, timestamps, and action details. Supports filtering by action type, category, user, time range, and freeform search queries. All filter criteria are AND-ed together, while multiple values within a filter field are OR-ed." }, { "slug": "GIGASHEET_SEARCH_LIBRARY", "name": "Search Library", "description": "Tool to search through the Gigasheet file library by file metadata. Use when you need to find files by owner name, file name, column headers, or notes. By default searches across owner, file_name, headers, and note fields. You can optionally specify which metadata fields to search through. This does not search within file contents - only metadata." }, { "slug": "GIGASHEET_SEND_INVITE", "name": "Send Invite Emails", "description": "Tool to send email invitations to join Gigasheet. Use when you need to invite users to collaborate on the platform." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_AGGREGATE_FILTER_MODEL", "name": "Set Aggregate Filter Model", "description": "Tool to set the aggregate filter model in the client state of a sheet. Use this to apply aggregate filtering to your data view by providing the sheet handle and the filter model object." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_AGGREGATIONS", "name": "Set Client State Aggregations", "description": "Sets aggregations in the client state of a sheet. Aggregations allow you to compute summary statistics (sum, count, average, min, max, etc.) across columns in your dataset. Use this action to define which columns should display aggregated values and what type of calculation to apply. The aggregations are stored in the sheet's client state and will be visible when viewing the sheet." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_COLUMN_STATE", "name": "Set Client State Column State", "description": "Tool to set column state in the client state of a sheet. Use to configure column widths, sort order, visibility, pinning, and aggregations. This updates the visual layout and behavior of columns in the grid view." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_FILTER_MODEL", "name": "Set Client State Filter Model", "description": "Tool to set the filter model in the client state of a sheet. Use when you need to apply or update filter conditions to a dataset's view state. Pass an empty object to clear all filters." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_GROUP_COLUMNS", "name": "Set Client State Group Columns", "description": "Tool to set group columns in the client state of a sheet. Use this to configure which columns are used for grouping data in the sheet view. Column IDs must be letter-based (A, B, C) not numeric." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_SORT_MODEL", "name": "Set Client State Sort Model", "description": "Sets the sort model for a sheet's client state. Use this to programmatically sort data by one or more columns in ascending or descending order. The sort model persists as part of the sheet's view state and can be retrieved later." }, { "slug": "GIGASHEET_SET_CLIENT_STATE_VISIBLE_COLUMNS", "name": "Set Client State Visible Columns", "description": "Tool to set visible columns in the client state of a sheet. Use when you want to control which columns are displayed in the sheet view. If columnIds is empty, all columns will be shown." }, { "slug": "GIGASHEET_SET_DATASET_CLIENTSTATE", "name": "Set Dataset Client State", "description": "Sets the client state of a dataset using a state object. Client state includes view settings like filters, sorts, visible columns, and aggregations. Use this to apply custom view configurations to a dataset programmatically." }, { "slug": "GIGASHEET_SET_DATASET_COLUMN_CURRENCY", "name": "Set Dataset Column Currency", "description": "Tool to set currency format for a dataset column. Use when you need to format numeric data as currency with specific currency codes." }, { "slug": "GIGASHEET_SET_DATASET_NOTE", "name": "Set Dataset Note", "description": "Tool to set or update a note on a dataset in Gigasheet. Use this to add descriptive text, context, or metadata to a dataset for documentation purposes. The note can be up to 20,000 characters long and will be visible when retrieving the dataset metadata." }, { "slug": "GIGASHEET_UPDATE_DATASET_CELL", "name": "Update Dataset Cell", "description": "Tool to update a single cell value in a Gigasheet dataset by column letter and row number. Use after dataset is loaded and when you know the specific column letter (A, B, C, etc.) and row number to update." }, { "slug": "GIGASHEET_UPDATE_DATASET_VIEWS", "name": "Update Dataset View", "description": "Tool to update the client state of a specified view. Use when you need to rename a view or update its client state ID." }, { "slug": "GIGASHEET_UPSERT_ROWS", "name": "Upsert Rows in Dataset", "description": "Tool to upsert rows in an existing Gigasheet dataset. Use when you need to insert or update multiple rows of data starting from a specific column and row position. Overlapping cells will be overwritten with the new values." }, { "slug": "GIGASHEET_VALIDATE_DATASET_FORMULA", "name": "Validate Dataset Formula", "description": "Tool to validate a formula expression against a dataset. Use when you need to check if a formula is syntactically correct and can be applied to the dataset before executing it." }, { "slug": "GIGASHEET_VALIDATE_FILES_COMBINE", "name": "Validate Files Combine", "description": "Tool to validate a combine files request and return all errors that might appear. Use when you need to check if files can be combined before executing the actual combine operation." }, { "slug": "GIGASHEET_VALIDATE_FILES_COMBINE_BY_NAME", "name": "Validate Files Combine by Name", "description": "Tool to validate a combine by name request before executing it. Use when you need to check if multiple files can be combined by matching column names, and identify any potential errors or issues." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gigasheet_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Gigasheet API Key", "type": "string", "description": "The API key used to authenticate requests to the Gigasheet API. Find or create your API key in your Gigasheet account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "giphy", "name": "Giphy", "logo": "https://giphy.com/static/img/giphy_logo_square_social.png", "description": "GIPHY is the first and largest GIF search engine, offering an extensive library of GIFs and Stickers for integration into applications.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GIPHY_ACTION_REGISTER", "name": "Giphy Analytics Register", "description": "Tool to register user interactions (view, click, send) with a GIF for analytics. Use when you have the analytics payload, timestamp, and user ID to record the event." }, { "slug": "GIPHY_CATEGORIES", "name": "GIPHY Categories", "description": "Tool to fetch a list of GIF categories on GIPHY. Use when you need to browse available categories before selecting one." }, { "slug": "GIPHY_CATEGORY_BY_ID", "name": "GIPHY: Get Category by ID", "description": "Tool to fetch metadata for a GIF category by its unique ID. Use when you need details for a specific category identifier." }, { "slug": "GIPHY_CATEGORY_GIFS", "name": "GIPHY: Category GIFs", "description": "Tool to fetch GIFs associated with a specific GIF category. Use after retrieving category_id from the categories endpoint to get curated GIFs." }, { "slug": "GIPHY_EMOJI", "name": "GIPHY Emoji", "description": "Tool to fetch GIPHY emoji GIF objects. Use when you need a paginated list of GIPHY emojis." }, { "slug": "GIPHY_EMOJI_VARIATIONS", "name": "Emoji Variations", "description": "Tool to fetch variations for a specific emoji. Use when you have an emoji's GIF ID and want its variations." }, { "slug": "GIPHY_GET_CONTENT_BY_ID", "name": "Get Content by ID", "description": "Tool to fetch content metadata by its unique ID. Generalizes the Get GIF by ID endpoint for all content types (GIFs, Stickers, and Clips)." }, { "slug": "GIPHY_GET_CONTENT_BY_IDS", "name": "Get Content by IDs", "description": "Tool to fetch metadata for multiple pieces of content (GIFs, Stickers, or Clips) by their IDs. Use when you need information on up to 100 known content IDs across any GIPHY content type." }, { "slug": "GIPHY_GET_RANDOM_ID", "name": "Giphy Get Random ID", "description": "Tool to generate a unique random ID from Giphy. Use when you need to create a unique identifier for a new user that can be used with other Giphy endpoints to personalize API responses." }, { "slug": "GIPHY_RANDOM_GIF", "name": "Giphy Random GIF", "description": "Tool to fetch a random GIF from Giphy. Use when you need a single random GIF, optionally filtered by tag or rating. Example: 'Get a random cat GIF rated G.'" }, { "slug": "GIPHY_RANDOM_STICKER", "name": "Giphy Random Sticker", "description": "Tool to fetch a single random sticker. Use when you need a random sticker, optionally filtered by tag or rating." }, { "slug": "GIPHY_SEARCH_CHANNELS", "name": "GIPHY: Search Channels", "description": "Tool to search for GIPHY channels by query term. Use when you need to find channels matching a specific topic or keyword." }, { "slug": "GIPHY_SEARCH_GIFS", "name": "GIPHY: Search GIFs", "description": "Tool to search GIPHY's GIF library. Use when you need to find GIFs by keyword or phrase." }, { "slug": "GIPHY_SEARCH_STICKERS", "name": "GIPHY: Search Stickers", "description": "Tool to search GIPHY's sticker library. Use when you need to find stickers by keyword or phrase." }, { "slug": "GIPHY_TAG_RANDOM", "name": "GIPHY: Random Tag", "description": "Tool to fetch a single random tag from Giphy. Use when you need a random search term tag, optionally filtered by a query term." }, { "slug": "GIPHY_TAG_RELATED", "name": "Get Related Tags", "description": "Tool to fetch tags related to a specified tag. Use when you want to find semantically related tags for improved search suggestion." }, { "slug": "GIPHY_TAG_SEARCH", "name": "GIPHY: Tag Search", "description": "Tool to search GIPHY's tag library for autocomplete suggestions. Use when you need to generate tag suggestions for a user query." }, { "slug": "GIPHY_TAG_TRENDING", "name": "GIPHY Trending Tags", "description": "Tool to fetch the most popular search terms (tags) on GIPHY. Use when you need trending tags for content discovery." }, { "slug": "GIPHY_TRANSLATE_GIF", "name": "GIPHY Translate GIF", "description": "Tool to translate a term or phrase into a single GIF using GIPHY's special algorithm. Use when you need to convert words into the perfect GIF representation." }, { "slug": "GIPHY_TRANSLATE_STICKER", "name": "GIPHY Translate Sticker", "description": "Tool to translate a term or phrase into a single sticker using GIPHY’s translation algorithm. Use after confirming the exact phrase to visualize as a sticker." }, { "slug": "GIPHY_TRENDING_GIFS", "name": "GIPHY Trending GIFs", "description": "Tool to fetch trending GIFs from GIPHY. Use when you need the most relevant and engaging GIFs currently trending." }, { "slug": "GIPHY_TRENDING_STICKERS", "name": "Get Trending Stickers", "description": "Tool to fetch trending stickers. Use when you need the most relevant and engaging sticker GIFs currently trending." }, { "slug": "GIPHY_UPLOAD_GIF", "name": "Giphy Upload GIF", "description": "Tool to upload a GIF or video file to GIPHY. Use when you need to create a new GIPHY entry from a local file or public URL. Requires developer API key and supports optional metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "giphy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "GIPHY API Key", "type": "string", "description": "The API key provided by GIPHY for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gist", "name": "Gist", "logo": "https://github.githubassets.com/images/modules/logos_page/GitHub-Mark.png", "description": "GitHub Gist is a service provided by GitHub that allows users to share code snippets, notes, and other text-based content. It supports both public and private gists, enabling easy sharing and collaboration.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GIST_CHECK_GIST_STAR", "name": "Check Gist Star", "description": "Check if the authenticated user has starred a specific gist. Returns True if the gist is starred, False if not starred or if the gist doesn't exist. This is a read-only, idempotent operation that requires authentication but no special permissions." }, { "slug": "GIST_CREATE_GIST", "name": "Create Gist", "description": "Tool to create a new gist with one or more files. Use when you need to create a code snippet or text file to share. Note: Do not name your files 'gistfile' with a numerical suffix." }, { "slug": "GIST_CREATE_GIST_COMMENT", "name": "Create Gist Comment", "description": "Tool to create a comment on a gist. Use when you need to add a comment to an existing gist." }, { "slug": "GIST_DELETE_GIST", "name": "Delete Gist", "description": "Tool to delete a gist. Use when you have a gist_id and want to permanently remove that gist. Example prompt: \"Delete gist 'aa5a315d61ae9438b18d'\"." }, { "slug": "GIST_DELETE_GIST_COMMENT", "name": "Delete Gist Comment", "description": "Tool to delete a comment on a gist. Use when you have both the gist_id and comment_id and want to remove that comment. Example prompt: \"Delete comment 42 from gist 'aa5a315d61ae9438b18d'\"." }, { "slug": "GIST_FORK_GIST", "name": "Fork Gist", "description": "Tool to fork a gist. Use when you need to create a copy of an existing gist under your own account." }, { "slug": "GIST_GET_GIST", "name": "Get Gist", "description": "Tool to retrieve a specific gist by its ID. Use when you have a gist_id and need complete gist details." }, { "slug": "GIST_GET_GIST_COMMENT", "name": "Get Gist Comment", "description": "Tool to get a specific comment on a gist. Use when you need to retrieve details of a particular comment given gist_id and comment_id." }, { "slug": "GIST_GET_GIST_REVISION", "name": "Get Gist Revision", "description": "Tool to retrieve a specific gist revision. Use when you need details of a past state for an existing gist by commit SHA." }, { "slug": "GIST_LIST_GIST_COMMENTS", "name": "List Gist Comments", "description": "Tool to list comments on a gist. Use after confirming the gist_id to retrieve comments for a specific gist. Example: 'List comments for gist abc123'." }, { "slug": "GIST_LIST_GIST_COMMITS", "name": "List Gist Commits", "description": "Tool to list the commit history of a gist. Use after you have the gist ID to review its revisions." }, { "slug": "GIST_LIST_GIST_FORKS", "name": "List Gist Forks", "description": "Tool to list forks of a gist. Use after obtaining a gist_id to retrieve all forks for the gist." }, { "slug": "GIST_LIST_GISTS", "name": "List Gists", "description": "Tool to list the authenticated user's gists or all public gists if called anonymously. Use after setting a valid GitHub token in headers." }, { "slug": "GIST_LIST_PUBLIC_GISTS", "name": "List Public Gists", "description": "Tool to list public gists sorted by most recently updated. Use when you need to discover recent public gists. Note: with pagination, you can fetch up to 3000 gists." }, { "slug": "GIST_LIST_STARRED_GISTS", "name": "List Starred Gists", "description": "Tool to list the authenticated user's starred gists. Use when you need to retrieve all gists the user has starred." }, { "slug": "GIST_LIST_USER_GISTS", "name": "List User Gists", "description": "Tool to list public gists for a specified GitHub user. Use when you have a username and need their gists." }, { "slug": "GIST_STAR_GIST", "name": "Star a Gist", "description": "Star a GitHub gist. This operation is idempotent and will succeed even if the gist is already starred." }, { "slug": "GIST_UNSTAR_GIST", "name": "Unstar a Gist", "description": "Unstar a GitHub gist. This operation is idempotent and will succeed even if the gist is not currently starred." }, { "slug": "GIST_UPDATE_GIST", "name": "Update Gist", "description": "Tool to update a gist's description and files. Use when you need to modify gist content, rename files, or delete files from a gist." }, { "slug": "GIST_UPDATE_GIST_COMMENT", "name": "Update Gist Comment", "description": "Tool to update a Gist comment. Updates an existing comment on a gist. You must be the author of the comment to update it." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "A personal access token generated from GitHub with the 'gist' scope enabled.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gitea", "name": "Gitea", "logo": "https://logos.composio.dev/api/gitea", "description": "Community managed lightweight code hosting solution written in Go", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GITEA_ACTIVITYPUB_PERSON", "name": "Get ActivityPub Person Actor", "description": "Tool to retrieve the ActivityPub Person actor for a Gitea user. Use when you need to fetch a user's ActivityPub representation for federation purposes or to get ActivityStreams-formatted user data." }, { "slug": "GITEA_GET_GENERAL_API_SETTINGS", "name": "Get General API Settings", "description": "Tool to retrieve the Gitea instance's global API settings including pagination limits and response size constraints. Use when you need to understand API rate limits or configuration parameters." }, { "slug": "GITEA_GET_GENERAL_ATTACHMENT_SETTINGS", "name": "Get General Attachment Settings", "description": "Tool to retrieve the Gitea instance's global settings for file attachments including enabled status, allowed file types, size limits, and file count limits. Use when you need to understand the attachment configuration of the instance." }, { "slug": "GITEA_GET_GENERAL_REPOSITORY_SETTINGS", "name": "Get General Repository Settings", "description": "Tool to retrieve the Gitea instance's global settings for repositories including feature flags for mirroring, HTTP Git, migrations, stars, time tracking, and LFS. Use when you need to understand which repository features are enabled or disabled at the instance level." }, { "slug": "GITEA_GET_GENERAL_UI_SETTINGS", "name": "Get General UI Settings", "description": "Tool to retrieve the Gitea instance's global settings for UI including default theme, allowed reactions, and custom emojis. Use when you need to understand the UI configuration of the instance." }, { "slug": "GITEA_GET_GITIGNORE_TEMPLATE_INFO", "name": "Get Gitignore Template Info", "description": "Tool to retrieve information about a specific gitignore template. Use when you need the content of a gitignore template for repository creation or configuration." }, { "slug": "GITEA_GET_LABEL_TEMPLATE_INFO", "name": "Get Label Template Info", "description": "Tool to retrieve all labels from a specific label template. Use when you need to view the predefined label set for repository configuration." }, { "slug": "GITEA_GET_LICENSE_TEMPLATE_INFO", "name": "Get License Template Info", "description": "Tool to retrieve information about a specific license template. Use when you need the content and details of a license template for repository creation or configuration." }, { "slug": "GITEA_GET_NODE_INFO", "name": "Get Node Info", "description": "Tool to retrieve the nodeinfo of the Gitea application. Use when you need standardized metadata about the Gitea server following the NodeInfo specification." }, { "slug": "GITEA_GET_SIGNING_KEY", "name": "Get Signing Key", "description": "Tool to retrieve the default GPG signing key used by Gitea to sign commits. Use when you need to verify commits signed by the Gitea instance or import the public key to trust Gitea-generated commits." }, { "slug": "GITEA_GET_VERSION", "name": "Get Version", "description": "Tool to retrieve the version of the Gitea application. Use when you need to check the Gitea server version." }, { "slug": "GITEA_LIST_GITIGNORE_TEMPLATES", "name": "List Gitignore Templates", "description": "Tool to retrieve all available gitignore templates. Use when creating a repository to select an appropriate .gitignore template." }, { "slug": "GITEA_LIST_LABEL_TEMPLATES", "name": "List Label Templates", "description": "Tool to retrieve all available label templates. Use when you need to discover which predefined label sets are available for repositories." }, { "slug": "GITEA_LIST_LICENSE_TEMPLATES", "name": "List License Templates", "description": "Tool to retrieve all available license templates. Use when creating a repository to select an appropriate license template." }, { "slug": "GITEA_ORG_GET_ALL", "name": "Get All Organizations", "description": "Tool to retrieve a paginated list of all organizations in the Gitea instance. Use when you need to list all organizations or browse organizations with pagination support." }, { "slug": "GITEA_ORG_LIST_ACTIONS_SECRETS", "name": "List Organization Actions Secrets", "description": "Tool to list all action secrets for an organization. Use when you need to retrieve the list of secrets configured at the organization level. Note that secret values are never returned through the API for security purposes." }, { "slug": "GITEA_RENDER_MARKDOWN", "name": "Render Markdown", "description": "Tool to render a markdown document as HTML with configurable rendering modes and context. Use when you need to convert markdown to HTML with specific rendering contexts like comments, wiki pages, or files." }, { "slug": "GITEA_RENDER_MARKDOWN_RAW", "name": "Render Markdown Raw", "description": "Tool to render raw markdown text as HTML. Use when you need to convert markdown content to HTML format for display or processing." }, { "slug": "GITEA_RENDER_MARKUP", "name": "Render Markup", "description": "Tool to render a markup document as HTML with support for multiple markup formats. Use when you need to convert markup content (Markdown, AsciiDoc, etc.) to HTML with specific rendering contexts like comments, wiki pages, or files." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gitea_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL of your Gitea instance.", "required": true, "default": "https://gitea.com/api/v1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "An API key token is created via the Gitea installation web interface: Settings | Applications | Generate New Token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gitlab", "name": "GitLab", "logo": "https://logos.composio.dev/api/gitlab", "description": "A web-based DevOps lifecycle tool that provides a Git repository manager providing wiki, issue-tracking, and CI/CD pipeline features.", "category": "developer tools", "authSchemes": [ "OAUTH2" ], "toolCount": 116, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "GITLAB_ADD_SPENT_TIME", "name": "Add Spent Time", "description": "Adds spent time to a GitLab issue for time tracking purposes. This action logs time against an issue, accumulating with any previously logged time. Use this action when you need to record time spent working on an issue, track billable hours, or maintain project time logs." }, { "slug": "GITLAB_APPROVE_MERGE_REQUEST", "name": "Approve Merge Request", "description": "Approves a merge request in a GitLab project. Use this action when you need to record an approval from the authenticated user on a specific merge request. The authenticated user must be an eligible approver with appropriate permissions. Note that this action is idempotent — calling it multiple times on the same merge request will not create duplicate approvals." }, { "slug": "GITLAB_ARCHIVE_PROJECT", "name": "Archive Project", "description": "Tool to archive a project. Use when you need to mark a project read-only after finishing active development. Call after confirming no further changes are required." }, { "slug": "GITLAB_CANCEL_JOB", "name": "Cancel Job", "description": "Cancel a GitLab CI/CD job within a specified project. This action stops a running or pending job and is irreversible. Use this action when you need to cancel a job that is running, pending, or stuck in a canceling state. The optional force parameter allows cancellation of jobs that are in a canceling state. Once canceled, the job cannot be restarted." }, { "slug": "GITLAB_CANCEL_PIPELINE", "name": "Cancel Pipeline", "description": "Tool to cancel a running pipeline in a GitLab project. Use this action when you need to stop a CI/CD pipeline that is currently executing or queued. Note that the API returns success (200) regardless of the pipeline's state, so this action can be safely called even if the pipeline has already finished or been canceled." }, { "slug": "GITLAB_CREATE_COMMIT", "name": "Create Commit", "description": "Creates a new commit with multiple file operations in a GitLab project. This action supports batch operations including creating, updating, deleting, moving files, and changing file permissions in a single atomic commit. Use this action when you need to perform multiple file changes at once or when you need to commit changes to a GitLab repository programmatically. Note: Commits over 20 MB are rate-limited to 3 requests per 30 seconds, and commits over 300 MB are rejected." }, { "slug": "GITLAB_CREATE_COMMIT_COMMENT", "name": "Create Commit Comment", "description": "Posts a comment to a specific commit in a GitLab project repository. Use this action when you need to provide feedback, review notes, or discussion on a particular commit. Line-specific comments require both path and line parameters; if invalid, the comment is placed at the commit level." }, { "slug": "GITLAB_CREATE_FILE", "name": "Create Repository File", "description": "Creates a new file in a GitLab repository at the specified path with the given content. Use this action when you need to add a new file to a repository branch with a commit message." }, { "slug": "GITLAB_CREATE_GROUP", "name": "Create GitLab Group", "description": "Tool to create a new group in GitLab. Use when you need to establish a new group for projects or collaboration." }, { "slug": "GITLAB_CREATE_ISSUE_NOTE", "name": "Create Issue Note", "description": "Creates a new note (comment) on a project issue in GitLab. Use this action when you need to add a comment, provide feedback, or document information on an existing issue." }, { "slug": "GITLAB_CREATE_LABEL", "name": "Create Label", "description": "Creates a new label for a GitLab project with specified name, color, and optional attributes. Use this action when you need to create a new label for organizing issues and merge requests within a project. Labels help categorize and filter project items, making project management more efficient." }, { "slug": "GITLAB_CREATE_MERGE_REQUEST", "name": "Create Merge Request", "description": "Creates a new merge request in a GitLab project to propose changes from a source branch into a target branch. Use this action when you need to create a merge request for code review, feature integration, or bug fixes. This action requires both the source and target branches to exist in the project." }, { "slug": "GITLAB_CREATE_MILESTONE", "name": "Create Milestone", "description": "Creates a new milestone in a GitLab project. Milestones track progress towards a goal with a start date, due date, and associated issues. Use this action when you need to establish a new project milestone for organizing work, tracking release schedules, or planning sprints." }, { "slug": "GITLAB_CREATE_PIPELINE", "name": "Create Pipeline", "description": "Tool to create a new pipeline for a specific branch or tag in a GitLab project. Use when you need to manually trigger a CI/CD pipeline run, optionally passing variables or inputs. For merge request pipelines, use the dedicated merge requests endpoint instead." }, { "slug": "GITLAB_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in GitLab. Implements POST /projects endpoint." }, { "slug": "GITLAB_CREATE_PROJECT_ISSUE", "name": "Create Project Issue", "description": "Tool to create a new issue in a GitLab project. Use when you need to report a bug, request a feature, or track a task within a specific project." }, { "slug": "GITLAB_CREATE_REPOSITORY_BRANCH", "name": "Create Repository Branch", "description": "Tool to create a new branch in a project. Use when you need to create a new branch from an existing branch or a specific commit in a GitLab project." }, { "slug": "GITLAB_CREATE_WEBHOOK", "name": "Create Project Webhook", "description": "Creates a new webhook (project hook) for a GitLab project to receive real-time event notifications. Use this action when you need to set up automated integrations that respond to GitLab events like pushes, merge requests, issues, or CI/CD pipeline activities. Configure which events trigger the webhook by enabling the appropriate event flags. The webhook will send POST requests to your specified URL whenever the configured events occur." }, { "slug": "GITLAB_DELETE_GROUP", "name": "Delete Group", "description": "Deletes a GitLab group by its ID or URL-encoded path. Use this action when you need to remove a group entirely. This action is irreversible — the group cannot be recovered once permanently removed. On GitLab.com, groups are retained for 30 days before permanent deletion unless permanently_remove=true is specified. You must have Owner permissions on the group to delete it." }, { "slug": "GITLAB_DELETE_ISSUE_NOTE", "name": "Delete Issue Note", "description": "Deletes a note (comment) from an issue in a GitLab project. Use this action when you need to remove a specific comment from an issue. This action is irreversible — the note cannot be recovered once deleted." }, { "slug": "GITLAB_DELETE_LABEL", "name": "Delete Label", "description": "Deletes a label from a GitLab project by its ID or title. Use this action when you need to remove a label from a project permanently. This action is irreversible — the label cannot be recovered once deleted." }, { "slug": "GITLAB_DELETE_MERGE_REQUEST", "name": "Delete Merge Request", "description": "Tool to permanently delete a merge request from a GitLab project. Use when you need to remove a merge request entirely, though closing is typically preferred to preserve the discussion history and audit trail. This action is irreversible — the merge request and its associated data cannot be recovered once deleted." }, { "slug": "GITLAB_DELETE_MILESTONE", "name": "Delete Milestone", "description": "Deletes a project milestone by its ID. Use when you need to permanently remove a milestone from a project. This action is irreversible — the milestone cannot be recovered once deleted. Requires at minimum the Planner role for the project." }, { "slug": "GITLAB_DELETE_PIPELINE", "name": "Delete Pipeline", "description": "Tool to delete a CI/CD pipeline by its ID within a specified project. This action expires all pipeline caches and deletes all immediately related objects such as builds, logs, artifacts, and triggers. This action is irreversible — the pipeline cannot be recovered once deleted. Use when you need to permanently remove a pipeline and all its associated data." }, { "slug": "GITLAB_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a GitLab project by its ID. Use when you need to remove a project, either by marking it for later deletion or deleting it immediately." }, { "slug": "GITLAB_DELETE_REPOSITORY_BRANCH", "name": "Delete Repository Branch", "description": "Tool to delete a branch from a GitLab project repository. Use when you need to remove a branch that is no longer needed. This action is irreversible — the branch cannot be recovered once deleted. Cannot delete default or protected branches." }, { "slug": "GITLAB_DELETE_REPOSITORY_FILE", "name": "Delete Repository File", "description": "Deletes a file from a GitLab repository by creating a new commit. Use this action when you need to remove a file from a project's repository on a specific branch. This action is irreversible — the file will be removed from the specified branch, though it remains in the git history and can be recovered from previous commits." }, { "slug": "GITLAB_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a project webhook/hook permanently from a GitLab project, removing the integration and stopping all event notifications. Use this action when you need to remove a webhook that is no longer needed or to clean up unused integrations. This action is irreversible — the webhook cannot be recovered once deleted." }, { "slug": "GITLAB_DOWNLOAD_PROJECT_AVATAR", "name": "Download Project Avatar", "description": "Tool to download a project's avatar image. Use when you need the raw avatar bytes after confirming the project exists." }, { "slug": "GITLAB_ERASE_JOB", "name": "Erase Job", "description": "Tool to erase the content of a specified job within a project. Use when you need to remove job artifacts and logs." }, { "slug": "GITLAB_FORK_PROJECT", "name": "Fork Project", "description": "Forks a GitLab project to a specified namespace or the current user's namespace. Creates an independent copy of the project that maintains a relationship with the source. Use this action when you need to create a personal or team copy of a project for development, experimentation, or contribution workflows." }, { "slug": "GITLAB_GET_COMMIT_REFS", "name": "Get Commit References", "description": "Tool to get all references (branches or tags) a commit is pushed to. Use when you need to find out which branches or tags a specific commit belongs to in a GitLab project." }, { "slug": "GITLAB_GET_COMMIT_SEQUENCE", "name": "Get Commit Sequence", "description": "Tool to get the sequence number of a commit in a project by following parent links from the given commit. Use when you need to determine the order of a commit in the project's history." }, { "slug": "GITLAB_GET_CURRENT_USER", "name": "Get Current User", "description": "Retrieves information about the currently authenticated user. Use this action when you need to get details about the user who owns the authentication token, such as their profile information, permissions, and settings." }, { "slug": "GITLAB_GET_FILE", "name": "Get Repository File", "description": "Retrieves a single file from a GitLab repository at a specific ref (branch, tag, or commit). Returns the file content as base64-encoded data along with metadata like size, encoding, and commit information. Use this action when you need to fetch the contents or details of a specific file from a GitLab project repository." }, { "slug": "GITLAB_GET_GROUP", "name": "Get Group Details", "description": "Tool to retrieve information about a specific group by its ID. Use when you need to get details of a GitLab group." }, { "slug": "GITLAB_GET_GROUP_MEMBER", "name": "Get Group Member", "description": "Tool to retrieve details for a specific group member. Use when you need to fetch membership information for a user in a group after you know both group ID and user ID." }, { "slug": "GITLAB_GET_GROUPS", "name": "Get Groups", "description": "Get Groups" }, { "slug": "GITLAB_GET_ISSUE", "name": "Get Issue", "description": "Retrieves a single issue from a GitLab project by its internal ID (iid). Returns comprehensive issue details including description, state, labels, assignees, time tracking, and task status. Use this action when you need to inspect a specific issue's current state, check its metadata, or retrieve detailed information before performing updates or analysis. Requires knowing both the project ID/path and the issue's internal ID." }, { "slug": "GITLAB_GET_ISSUE_NOTE", "name": "Get Issue Note", "description": "Retrieves a single comment (note) from a GitLab issue by its ID. Use this action when you need to fetch the details of a specific note on an issue, including its content, author information, and metadata." }, { "slug": "GITLAB_GET_JOB_DETAILS", "name": "Get Job Details", "description": "Tool to retrieve details of a single job by its ID within a specified project. Use this when you need to fetch specific information about a particular CI/CD job." }, { "slug": "GITLAB_GET_JOB_TRACE", "name": "Get Job Trace", "description": "Retrieves the trace (log output) for a specific CI/CD job within a project. Use this action when you need to view the execution logs of a job to debug failures, check output, or monitor job progress. The trace contains the complete console output from the job execution." }, { "slug": "GITLAB_GET_LABEL", "name": "Get Project Label", "description": "Retrieves a single project label by its ID or title. Use this action when you need to fetch details about a specific label within a GitLab project, such as its color, description, or associated issue/MR counts." }, { "slug": "GITLAB_GET_MERGE_REQUEST_NOTES", "name": "Get Merge Request Notes", "description": "Tool to fetch comments on a merge request. Use when you need to retrieve all notes for a specific merge request." }, { "slug": "GITLAB_GET_MILESTONE", "name": "Get Milestone", "description": "Retrieves a single milestone by its ID for a specific project. Returns detailed information including title, description, dates, and state. Use when you need to fetch complete details about a specific milestone." }, { "slug": "GITLAB_GET_PROJECT", "name": "Get Project", "description": "Tool to get a single project by ID or URL-encoded path." }, { "slug": "GITLAB_GET_PROJECT_LANGUAGES", "name": "Get Project Languages", "description": "Tool to list programming languages used in a project with percentages. Use when you need the project language breakdown." }, { "slug": "GITLAB_GET_PROJECT_MEMBER", "name": "Get Project Member", "description": "Tool to retrieve details for a specific project member. Use after confirming project and user IDs to fetch membership information for a project member." }, { "slug": "GITLAB_GET_PROJECT_MEMBER_ALL", "name": "Get Project Member All", "description": "Tool to retrieve details for a specific project member (including inherited and invited members). Use when you need the effective membership info (including invitations and inheritance)." }, { "slug": "GITLAB_GET_PROJECT_MERGE_REQUEST", "name": "Get Project Merge Request", "description": "Tool to fetch full details for a single merge request when the MR IID is known. Use when you need to retrieve canonical metadata, description, state, branches, authors, and approval-related fields for a specific merge request." }, { "slug": "GITLAB_GET_PROJECT_MERGE_REQUEST_COMMITS", "name": "Get Merge Request Commits", "description": "Tool to get commits of a merge request. Use when you need to retrieve all commits associated with a specific merge request." }, { "slug": "GITLAB_GET_PROJECT_MERGE_REQUESTS", "name": "Get Project Merge Requests", "description": "Tool to retrieve a list of merge requests for a specific project. Use when you need to get all merge requests associated with a project, with options to filter by state, labels, milestones, and other attributes." }, { "slug": "GITLAB_GET_PROJECTS", "name": "Get Projects", "description": "Tool to list all projects accessible to the authenticated user. Supports filtering. Private or group projects may be silently omitted if the token lacks sufficient scopes or group membership." }, { "slug": "GITLAB_GET_PROJECTS_ID_MERGE_REQUESTS_IID_DIFFS", "name": "List Merge Request Diff Versions", "description": "Tool to list all diff versions of a merge request. Use when you need to inspect changes across different diff versions after creating or updating a merge request." }, { "slug": "GITLAB_GET_RAW_FILE", "name": "Get Raw File", "description": "Retrieves the raw contents of a file from a GitLab repository without Base64 encoding. Use this action when you need to read the actual file content directly from a repository. Unlike the standard file retrieval endpoint, this returns unencoded file content." }, { "slug": "GITLAB_GET_REPOSITORY_BRANCH", "name": "Get Repository Branch", "description": "Tool to retrieve information about a specific branch in a project. Use when you need to get details for a single branch." }, { "slug": "GITLAB_GET_REPOSITORY_BRANCHES", "name": "Get Repository Branches", "description": "Retrieves a list of repository branches for a project. Use this when you need to get all branches or search for specific branches within a GitLab project." }, { "slug": "GITLAB_GET_SINGLE_COMMIT", "name": "Get Single Commit", "description": "Tool to get a specific commit identified by the commit hash or name of a branch or tag. Use this when you need to retrieve detailed information about a single commit in a GitLab project repository." }, { "slug": "GITLAB_GET_SINGLE_PIPELINE", "name": "Get Single Pipeline", "description": "Tool to retrieve details of a single pipeline by its ID within a specified project. Use when you need to get information about a specific CI/CD pipeline." }, { "slug": "GITLAB_GET_TIME_STATS", "name": "Get Issue Time Stats", "description": "Retrieves time tracking statistics for a specific issue in a project. Returns both machine-readable values (in seconds) and human-readable formatted durations. Use this action when you need to check time estimates, logged time, or track progress on an issue's time budget." }, { "slug": "GITLAB_GET_USER", "name": "Get User", "description": "Tool to retrieve information about a specific user by their ID. Use when you need to fetch details for a single GitLab user." }, { "slug": "GITLAB_GET_USER_PREFERENCES", "name": "Get User Preferences", "description": "Tool to get the current user's preferences. Use when you need to retrieve the user's diff display and CI identity JWT settings after authentication." }, { "slug": "GITLAB_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of users from GitLab. Use this when you need to find user information, search for specific users, or filter users based on various criteria like activity status or creation date." }, { "slug": "GITLAB_GET_USERS_ID_STATUS", "name": "Get Any User's Status by ID", "description": "Tool to get a user's status by ID. Use when you need to retrieve a GitLab user's current status message, emoji, and availability after identifying their user ID." }, { "slug": "GITLAB_GET_USER_STATUS", "name": "Get User Status", "description": "Tool to get the current user's status. Use when displaying or verifying the authenticated user's GitLab status after login." }, { "slug": "GITLAB_GET_USER_SUPPORT_PIN", "name": "Get User Support PIN", "description": "Tool to get details of the current user's Support PIN. Use when you need to retrieve the active support PIN and its expiration for the authenticated user." }, { "slug": "GITLAB_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves detailed information about a specific project webhook by its ID. Use this action when you need to inspect a webhook's configuration, including its URL, enabled event triggers, SSL verification settings, and authentication details. This is useful for verifying webhook configurations or before updating webhook settings." }, { "slug": "GITLAB_IMPORT_PROJECT_MEMBERS", "name": "Import project members", "description": "Tool to import members from one project to another. Use when migrating members between projects." }, { "slug": "GITLAB_LIST_ALL_GROUP_MEMBERS", "name": "List All Group Members", "description": "Tool to list all members of a group including direct, inherited, and invited members. Use when you need a comprehensive membership list beyond direct members." }, { "slug": "GITLAB_LIST_ALL_PROJECT_MEMBERS", "name": "List All Project Members", "description": "Tool to list all members of a project (direct, inherited, invited). Use when you need the effective membership list including inherited and invited members." }, { "slug": "GITLAB_LIST_BILLABLE_GROUP_MEMBERS", "name": "List Billable Group Members", "description": "Tool to list billable members of a top-level group (including its subgroups and projects). Use when generating billing reports; requires Owner role on the group." }, { "slug": "GITLAB_LIST_COMMIT_COMMENTS", "name": "List Commit Comments", "description": "Retrieves all comments associated with a specific commit in a GitLab project. Use this action when you need to view discussions or feedback left on a particular commit, including both general comments and inline code review comments." }, { "slug": "GITLAB_LIST_GROUP_MEMBERS", "name": "List Group Members", "description": "Tool to list direct members of a group. Use when you need to retrieve or filter a group's direct membership." }, { "slug": "GITLAB_LIST_GROUP_PROJECTS", "name": "List Group Projects", "description": "Tool to list projects within a GitLab group by group ID or full path. Use when discovering projects under a namespace or subgroup." }, { "slug": "GITLAB_LIST_ISSUE_NOTES", "name": "List Issue Notes", "description": "Retrieves all notes (comments and activity) for a specific project issue in GitLab. Use this action when you need to view the discussion history, comments, or activity log on an issue to understand the context or follow up on conversations. Results are paginated and can be filtered by activity type or sorted by creation/update time." }, { "slug": "GITLAB_LIST_LABELS", "name": "List Labels", "description": "Lists all labels for a project with optional filtering by name, archived status, and ancestor inclusion. Use this action when you need to retrieve available labels for a project to categorize issues or merge requests, or to check which labels exist before assigning them." }, { "slug": "GITLAB_LIST_MERGE_REQUESTS", "name": "List Merge Requests", "description": "Retrieves a list of merge requests from across all accessible projects based on scope and filters. Use this action when you need to query merge requests at the instance or user level (not scoped to a specific project), such as finding all merge requests created by a user, assigned to a user, or awaiting review. By default returns merge requests created by the authenticated user; use scope=all to retrieve all accessible merge requests." }, { "slug": "GITLAB_LIST_MILESTONES", "name": "List Project Milestones", "description": "Lists all milestones for a specific project with optional filtering by state, title, or search terms. Use this action when you need to view project milestones, check milestone progress, or find a specific milestone by title or IID before creating or updating issues." }, { "slug": "GITLAB_LIST_PENDING_GROUP_MEMBERS", "name": "List Pending Group Members", "description": "Tool to list pending members of a group and its subgroups and projects. Use when you need to review users awaiting approval or invited without an account. Call after confirming the top-level group ID." }, { "slug": "GITLAB_LIST_PIPELINE_JOBS", "name": "List Pipeline Jobs", "description": "Tool to retrieve a list of jobs for a specified pipeline within a project. Use this when you need to inspect the status or details of jobs associated with a particular CI/CD pipeline." }, { "slug": "GITLAB_LIST_PROJECT_GROUPS", "name": "List Project Groups", "description": "Tool to list ancestor groups of a project. Use when you need to retrieve all groups a project belongs to or is shared with." }, { "slug": "GITLAB_LIST_PROJECT_INVITED_GROUPS", "name": "List Project Invited Groups", "description": "Tool to list groups invited to a project. Use when auditing which groups have access to a project." }, { "slug": "GITLAB_LIST_PROJECT_ISSUES", "name": "List Project Issues", "description": "Tool to list issues for a project with filtering options (state, labels, search, assignee, author, etc.). Use when you need to browse, filter, or triage project issues to confirm IIDs or decide what to update/close." }, { "slug": "GITLAB_LIST_PROJECT_PIPELINES", "name": "List Project Pipelines", "description": "Tool to retrieve a list of pipelines for a specified project. Use when you need to get information about CI/CD pipelines, such as their status, source, or creation/update times." }, { "slug": "GITLAB_LIST_PROJECT_SHAREABLE_GROUPS", "name": "List Project Shareable Groups", "description": "Tool to list groups that can be shared with a project. Use before sharing a project to fetch eligible groups." }, { "slug": "GITLAB_LIST_PROJECT_TAGS", "name": "List Project Repository Tags", "description": "Tool to retrieve a list of repository tags for a specified project. Use when you need to get all tags associated with a project in GitLab." }, { "slug": "GITLAB_LIST_PROJECT_TRANSFER_LOCATIONS", "name": "List Project Transfer Locations", "description": "Tool to list namespaces available for project transfer. Use when you need to determine which groups a project can be transferred into." }, { "slug": "GITLAB_LIST_PROJECT_USERS", "name": "List project users", "description": "Tool to list users of a project. Use after you have a project ID and want to retrieve its users." }, { "slug": "GITLAB_LIST_REPOSITORY_COMMITS", "name": "List Repository Commits", "description": "Tool to get a list of repository commits in a project. Use when you need to retrieve commit history for a specific project, branch, or time range." }, { "slug": "GITLAB_LIST_USER_PROJECTS", "name": "List User Projects", "description": "Tool to list projects owned by a specific user. Use after obtaining target user identity to fetch owned projects." }, { "slug": "GITLAB_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured for a GitLab project. Returns webhook configurations including URLs, event triggers, and SSL settings. Use when you need to view existing webhooks for a project, audit webhook configurations, or check which events are being monitored. Webhook secret tokens are redacted from the response." }, { "slug": "GITLAB_MOVE_ISSUE", "name": "Move Issue", "description": "Moves an issue from one project to another in GitLab. The issue receives a new IID and project_id in the destination project. Use this action when you need to relocate an issue to a different project, such as when reorganizing work or transferring issues between team projects. If equivalent labels or milestones exist in the destination project, they are automatically assigned to the moved issue." }, { "slug": "GITLAB_PLAY_JOB", "name": "Play Job", "description": "Triggers execution of a manual job in a GitLab project. Use this action when you need to start or run a job that requires manual intervention or has a manual status." }, { "slug": "GITLAB_POST_USER_SUPPORT_PIN", "name": "Create Support PIN", "description": "Tool to create a support PIN for your authenticated user. Use when GitLab Support requests a PIN to verify your identity." }, { "slug": "GITLAB_PROTECT_BRANCH", "name": "Protect Branch", "description": "Protects a repository branch in a GitLab project by setting access controls for push, merge, and unprotect operations. Use this action when you need to enforce branch protection rules to prevent unauthorized modifications or deletions of important branches like main, master, or release branches. Protected branches can restrict who can push, merge, force push, and remove protection." }, { "slug": "GITLAB_PUT_USER_PREFERENCES", "name": "Update User Preferences", "description": "Tool to update the current user's preferences. Use when adjusting default diff viewing and CI identity settings." }, { "slug": "GITLAB_RESET_SPENT_TIME", "name": "Reset Spent Time", "description": "Resets the total spent time for a specified GitLab issue to 0 seconds. This action is irreversible — all previously recorded time entries will be cleared and cannot be recovered. Use this action when you need to clear all time tracking entries for an issue and start time tracking from scratch." }, { "slug": "GITLAB_RESET_TIME_ESTIMATE", "name": "Reset Time Estimate", "description": "Resets the estimated time for a specified issue to 0 seconds. Use this action when you need to clear a previously set time estimate on an issue while preserving the total time spent." }, { "slug": "GITLAB_RETRY_PIPELINE", "name": "Retry Pipeline", "description": "Retries failed or canceled jobs in a pipeline. Use this action when you need to re-run a pipeline that has failed or was canceled. Note that if there are no failed or canceled jobs in the pipeline, calling this action has no effect." }, { "slug": "GITLAB_SET_TIME_ESTIMATE", "name": "Set Time Estimate", "description": "Sets the estimated time to complete an issue in a GitLab project. Use this action when you need to set or update the time estimate for tracking project work. The estimate is specified in human-readable format like '3h30m' for 3 hours and 30 minutes." }, { "slug": "GITLAB_SET_USER_STATUS", "name": "Set User Status", "description": "Tool to set the current user's status. Use when you need to update availability or convey current mood on GitLab." }, { "slug": "GITLAB_SHARE_PROJECT_WITH_GROUP", "name": "Share Project With Group", "description": "Tool to share a project with a group. Use when you need to grant a group specific access level to a project." }, { "slug": "GITLAB_STAR_PROJECT", "name": "Star Project", "description": "Stars a project in GitLab, marking it as a favorite for the authenticated user. This adds the project to your starred projects list and increments its star count. Use this action when you want to bookmark or show support for a project. The operation is idempotent - starring an already-starred project succeeds without error." }, { "slug": "GITLAB_START_PROJECT_HOUSEKEEPING", "name": "Start Housekeeping Task", "description": "Tool to start the housekeeping task for a project. Use when you need to trigger manual maintenance or pruning on a repository." }, { "slug": "GITLAB_UNAPPROVE_MERGE_REQUEST", "name": "Unapprove Merge Request", "description": "Removes the approval from the currently authenticated user for a specified merge request. Use this action when you need to revoke your previously given approval on a merge request. The action requires the merge request to have been previously approved by the authenticated user." }, { "slug": "GITLAB_UNPROTECT_BRANCH", "name": "Unprotect Branch", "description": "Tool to remove protection from a branch in a GitLab project. Use this action when you need to unprotect a branch, allowing unrestricted push and merge access. This action is irreversible in the sense that protection rules must be manually reapplied if needed later." }, { "slug": "GITLAB_UNSTAR_PROJECT", "name": "Unstar Project", "description": "Unstar a previously starred GitLab project to remove it from your favorites list. Use this action when you need to remove a project from your starred projects. This action removes the star that was previously added by the authenticated user." }, { "slug": "GITLAB_UPDATE_GROUP", "name": "Update GitLab Group", "description": "Updates an existing GitLab group's settings and properties. Use this action when you need to modify group configuration such as name, path, visibility, permissions, or feature settings. Administrators can update additional settings like shared runners limits and IP restrictions." }, { "slug": "GITLAB_UPDATE_ISSUE_NOTE", "name": "Update Issue Note", "description": "Updates an existing note (comment) on a GitLab issue. Use this action when you need to edit the content of a previously created comment on an issue. This is useful for correcting typos, adding additional information, or updating outdated information in issue discussions." }, { "slug": "GITLAB_UPDATE_LABEL", "name": "Update Label", "description": "Updates an existing label in a GitLab project by modifying its name, color, description, priority, or archived status. At least one of new_name or color must be provided to perform the update. Use this action when you need to rename a label, change its appearance, update its description, adjust its priority, or archive/unarchive it." }, { "slug": "GITLAB_UPDATE_MERGE_REQUEST", "name": "Update Merge Request", "description": "Updates an existing merge request in a GitLab project (title, description, assignees, reviewers, labels, state, etc.). Use this action when you need to modify merge request details, manage assignees/reviewers, update labels, close/reopen merge requests, or configure merge settings like squash or auto-removal of source branch. This action is idempotent and can be called multiple times with the same parameters." }, { "slug": "GITLAB_UPDATE_MILESTONE", "name": "Update Milestone", "description": "Updates an existing milestone in a GitLab project, allowing you to modify the title, description, dates, or state. Use this action when you need to change milestone details, adjust deadlines, or close/reopen a milestone." }, { "slug": "GITLAB_UPDATE_PROJECT_ISSUE", "name": "Update Project Issue", "description": "Tool to update an existing issue in a GitLab project (title, description, labels, assignees, state, etc.). Use when you need to modify issue details, close/reopen issues, or manage labels and assignments." }, { "slug": "GITLAB_UPDATE_REPOSITORY_FILE", "name": "Update Repository File", "description": "Updates an existing file in a GitLab repository. Commits the changes to the specified branch with the provided commit message. Use this action when you need to modify file contents, change file permissions, or update files in a specific branch. Note that if concurrent modifications occur (detected via last_commit_id), the update will fail." }, { "slug": "GITLAB_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Updates an existing project webhook configuration including URL, event triggers, SSL verification, and authentication token. Use this action when you need to modify a webhook's endpoint, change which events trigger notifications, update security settings, or rotate the authentication token. This operation is idempotent and overwrites the specified settings." }, { "slug": "GITLAB_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validates the authentication credentials by retrieving the currently authenticated user's information. Use this action when you need to verify that the API token or credentials are valid and active. Returns the authenticated user's profile details if credentials are valid." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Gitlab server base URL with /api/v4 appended.", "required": true, "default": "https://gitlab.com/api/v4" }, { "name": "authorizationUrl", "displayName": "Authorization URL", "type": "string", "description": "Your Gitlab server base URL.", "required": true, "default": "https://gitlab.com" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "api,read_api,read_user,read_repository,write_repository,profile,email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "givebutter", "name": "Givebutter", "logo": "https://givebutter.com/favicon.ico", "description": "Givebutter is a fundraising platform that offers a free, open, and public API for developers to manage campaigns, track donations, and engage with supporters.", "category": "fundraising", "authSchemes": [ "API_KEY" ], "toolCount": 58, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GIVEBUTTER_ADD_CONTACT_TAGS", "name": "Add Contact Tags", "description": "Tool to add tags to a contact by contact ID. Use when you need to categorize or label contacts with specific tags." }, { "slug": "GIVEBUTTER_ADD_HOUSEHOLD_CONTACT", "name": "Add Household Contact", "description": "Tool to add a contact to a household. Use when you have both a household ID and contact ID to associate them together." }, { "slug": "GIVEBUTTER_ARCHIVE_CONTACT", "name": "Archive Contact", "description": "Tool to archive a contact by their ID. Use after ensuring the contact has no associated data (e.g., no transactions or communications). Example: \"Archive contact abc123\"." }, { "slug": "GIVEBUTTER_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign. Use when you have title, description, goal, and type ready, after confirming your Givebutter account is authenticated." }, { "slug": "GIVEBUTTER_CREATE_CAMPAIGN_TICKET", "name": "Create Campaign Ticket", "description": "Tool to create a campaign ticket for events or fundraisers. Use when you need to add ticket options to a campaign with pricing and inventory details." }, { "slug": "GIVEBUTTER_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Givebutter. Use when you need to add a new contact with first name, last name, and optionally email, phone, and other details." }, { "slug": "GIVEBUTTER_CREATE_CONTACT_ACTIVITY", "name": "Create Contact Activity", "description": "Tool to create a contact activity (e.g., note). Use when you need to log an activity for a contact. Requires contact ID and activity details." }, { "slug": "GIVEBUTTER_CREATE_DISCOUNT_CODE", "name": "Create Discount Code", "description": "Tool to create a discount code for a campaign. Use when you need to provide promotional pricing or discounts for campaign items." }, { "slug": "GIVEBUTTER_CREATE_FUND", "name": "Create Fund", "description": "Tool to create a new fund. Use when you need to create a fund with a name and optional code." }, { "slug": "GIVEBUTTER_CREATE_HOUSEHOLD", "name": "Create Household", "description": "Tool to create a new household in Givebutter. Use when you need to group related contacts under a single household entity." }, { "slug": "GIVEBUTTER_CREATE_TRANSACTION", "name": "Create Transaction", "description": "Tool to create a new transaction for a campaign. Use when you need to record a donation or payment, typically for offline transactions like cash or check payments." }, { "slug": "GIVEBUTTER_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook subscription. Use when you need to receive real-time notifications programmatically after confirming your endpoint can validate Givebutter's signing secret." }, { "slug": "GIVEBUTTER_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a campaign by its ID. Use after confirming the campaign has no funds raised. Example: \"Delete campaign abc123\"." }, { "slug": "GIVEBUTTER_DELETE_CONTACT_ACTIVITY", "name": "Delete Contact Activity", "description": "Tool to delete a contact activity by contact ID and activity ID. Use when you need to remove a specific activity from a contact's record." }, { "slug": "GIVEBUTTER_DELETE_DISCOUNT_CODE", "name": "Delete Discount Code", "description": "Tool to delete a discount code from a campaign. Use when you need to remove a discount code after confirming it exists." }, { "slug": "GIVEBUTTER_DELETE_FUND", "name": "Delete Fund", "description": "Tool to delete a fund by its ID. Use when you need to remove a fund after confirming it exists. Example: \"Delete fund fund_abc123\"." }, { "slug": "GIVEBUTTER_DELETE_HOUSEHOLD", "name": "Delete Household", "description": "Tool to delete a household by its ID. Use after confirming the household exists and has no associated data. Example: \"Delete household 1007067\"." }, { "slug": "GIVEBUTTER_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its ID. Use when you need to remove an obsolete webhook after confirming no further events are needed. Example: \"Delete webhook abc123\"." }, { "slug": "GIVEBUTTER_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve details for a specific campaign by its ID or code. Use when you need to fetch campaign information, check status, or get fundraising progress." }, { "slug": "GIVEBUTTER_GET_CAMPAIGN_TICKET", "name": "Get Campaign Ticket", "description": "Tool to retrieve a specific campaign ticket by campaign ID and ticket ID. Use when you need details about a specific ticket item within a campaign." }, { "slug": "GIVEBUTTER_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact by ID. Use after confirming the contact ID is valid." }, { "slug": "GIVEBUTTER_GET_CONTACT_ACTIVITY", "name": "Get Contact Activity", "description": "Tool to retrieve a specific contact activity by contact ID and activity ID. Use when you need detailed information about a particular activity for a contact." }, { "slug": "GIVEBUTTER_GET_DISCOUNT_CODE", "name": "Get Discount Code", "description": "Tool to retrieve details of a specific discount code for a campaign. Use when you need to view discount code information." }, { "slug": "GIVEBUTTER_GET_FUND", "name": "Get Fund", "description": "Tool to retrieve details of a specific fund by its ID. Use after confirming the fund ID is valid." }, { "slug": "GIVEBUTTER_GET_HOUSEHOLD", "name": "Get Household", "description": "Tool to retrieve details of a specific household by its ID. Use when you need information about a household including its contacts." }, { "slug": "GIVEBUTTER_GET_MEMBERS", "name": "Get Members", "description": "Tool to retrieve a paginated list of members for a given campaign. Use when you need to list or process campaign members." }, { "slug": "GIVEBUTTER_GET_PAYOUTS", "name": "Get Payouts", "description": "Tool to retrieve a list of payouts associated with your account. Use when you need to list withdrawal transactions after authentication." }, { "slug": "GIVEBUTTER_GET_PLANS", "name": "Get Plans", "description": "Tool to retrieve a list of plans associated with your account. Use after authentication to fetch recurring donation plans. Returns only plans scoped to the authenticated account; cross-account retrieval is not supported. An empty array is a valid response indicating no recurring plans exist. If paginated, iterate all pages to retrieve the full plan set." }, { "slug": "GIVEBUTTER_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve a list of teams for a specific campaign. Use after creating or updating a campaign when you need to list fundraising teams. Example: \"Get teams for campaign camp123\"." }, { "slug": "GIVEBUTTER_GET_TICKETS", "name": "Get Tickets", "description": "Tool to retrieve a list of tickets. Use when you need to list all tickets for your account after authentication." }, { "slug": "GIVEBUTTER_GET_TRANSACTIONS", "name": "Get Transactions", "description": "Tool to retrieve a list of transactions associated with your account. Use when you need to list all donations and payments, optionally filtered by scope." }, { "slug": "GIVEBUTTER_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by its ID. Use when you need details about a single webhook subscription." }, { "slug": "GIVEBUTTER_GET_WEBHOOK_ACTIVITY", "name": "Get Webhook Activity", "description": "Tool to retrieve a specific webhook activity by its ID. Use when you need detailed information about a single webhook delivery event." }, { "slug": "GIVEBUTTER_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve all webhooks configured for your account. Use after obtaining valid authentication." }, { "slug": "GIVEBUTTER_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve a paginated list of campaigns for the authenticated account. Use when you need to list all campaigns." }, { "slug": "GIVEBUTTER_LIST_CAMPAIGN_TICKETS", "name": "List Campaign Tickets", "description": "Tool to retrieve a list of all campaign tickets for a specific campaign. Use when you need to list tickets available for a campaign." }, { "slug": "GIVEBUTTER_LIST_CONTACT_ACTIVITIES", "name": "List Contact Activities", "description": "Tool to retrieve all activities for a specific contact. Use when you need to view the activity history of a contact, optionally filtered by activity type." }, { "slug": "GIVEBUTTER_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a paginated list of contacts from your Givebutter account. Use when you need to list all contacts with optional filtering by type, date ranges, contribution amounts, tags, or sorting preferences." }, { "slug": "GIVEBUTTER_LIST_DISCOUNT_CODES", "name": "List Discount Codes", "description": "Tool to list all discount codes for a campaign. Use when you need to retrieve all active and inactive discount codes associated with a specific campaign." }, { "slug": "GIVEBUTTER_LIST_FUNDS", "name": "List Funds", "description": "Tool to list all funds in your Givebutter account. Returns paginated results with up to 20 funds per page. Use when you need to retrieve multiple funds or browse all available funds." }, { "slug": "GIVEBUTTER_LIST_HOUSEHOLD_CONTACTS", "name": "List Household Contacts", "description": "Tool to retrieve all contacts associated with a household. Use when you need to list contacts for a specific household ID." }, { "slug": "GIVEBUTTER_LIST_HOUSEHOLDS", "name": "List Households", "description": "Tool to retrieve a list of all households in your account. Use when you need to view or manage household groups and their associated contacts." }, { "slug": "GIVEBUTTER_LIST_MESSAGES", "name": "List Messages", "description": "Tool to retrieve a paginated list of messages. Use when you need to list messages sent through your Givebutter account. Returns paginated results; use the page parameter to navigate through pages." }, { "slug": "GIVEBUTTER_LIST_PLEDGES", "name": "List Pledges", "description": "Tool to retrieve a paginated list of all pledges. Use when you need to list pledges with optional pagination support." }, { "slug": "GIVEBUTTER_LIST_WEBHOOK_ACTIVITIES", "name": "List Webhook Activities", "description": "Tool to list all webhook activities for a specific webhook. Use when you need to retrieve activity logs for a webhook subscription." }, { "slug": "GIVEBUTTER_REMOVE_CONTACT_TAGS", "name": "Remove Contact Tags", "description": "Tool to remove tags from a contact in Givebutter. Use when you need to disassociate specific tags from a contact record. Requires the contact ID and a list of tag names to remove." }, { "slug": "GIVEBUTTER_RESTORE_CONTACT", "name": "Restore Contact", "description": "Tool to restore a deleted contact by contact ID. Use when you need to recover a contact that was previously deleted." }, { "slug": "GIVEBUTTER_SYNC_CONTACT_TAGS", "name": "Sync Contact Tags", "description": "Tool to sync tags for a contact. Replaces all existing tags with the specified tags. Use when you need to update the complete tag list for a contact." }, { "slug": "GIVEBUTTER_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update an existing campaign's details by its ID. Use when you need to modify campaign attributes after creation." }, { "slug": "GIVEBUTTER_UPDATE_CAMPAIGN_PUT", "name": "Update Campaign (PUT)", "description": "Tool to update a campaign using PUT method. Use when you need to update campaign details like title, description, goal, or other attributes." }, { "slug": "GIVEBUTTER_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's details by contact ID. Use when modifying contact information after confirming the contact_id. Only provided fields will be updated." }, { "slug": "GIVEBUTTER_UPDATE_CONTACT_ACTIVITY", "name": "Update Contact Activity", "description": "Tool to update a contact activity by contact ID and activity ID. Use when modifying an existing contact activity record." }, { "slug": "GIVEBUTTER_UPDATE_CONTACT_PUT", "name": "Update Contact (PUT)", "description": "Tool to update a contact using PUT method. Use when you need to update contact information by contact ID." }, { "slug": "GIVEBUTTER_UPDATE_DISCOUNT_CODE", "name": "Update Discount Code", "description": "Tool to update an existing discount code for a campaign. Use when you need to modify discount code details such as amount, expiration, or usage limits." }, { "slug": "GIVEBUTTER_UPDATE_FUND", "name": "Update Fund", "description": "Tool to update a fund's details by its ID. Use when you need to modify fund attributes such as name or code." }, { "slug": "GIVEBUTTER_UPDATE_HOUSEHOLD", "name": "Update Household", "description": "Tool to update an existing household's details by its ID. Use when you need to modify household information after confirming the household_id." }, { "slug": "GIVEBUTTER_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook subscription's details. Use when you need to modify a webhook's name, URL, trigger events, or enabled state after confirming its ID. Example: \"Update webhook wh_1234567890 to point to https://example.com/hook, enable transaction.succeeded only.\"" }, { "slug": "GIVEBUTTER_UPDATE_WEBHOOK_PUT", "name": "Update Webhook (PUT)", "description": "Tool to update a webhook using PUT method (full replacement). Use when you need to completely replace a webhook's configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "givebutter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Givebutter API Key", "type": "string", "description": "Your Givebutter API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gladia", "name": "Gladia", "logo": "https://www.gladia.io/favicon.ico", "description": "Gladia provides state-of-the-art audio transcription and intelligence services through a simple API, enabling real-time and asynchronous transcription, translation, and audio analysis.", "category": "transcription", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GLADIA_DELETE_LIVE_SESSION", "name": "Delete Live Session", "description": "Tool to delete a live transcription session and all its associated data (audio file, transcription). Use when permanently removing a live session from Gladia." }, { "slug": "GLADIA_DELETE_PRE_RECORDED_JOB", "name": "Delete Pre-recorded Job", "description": "Tool to delete a pre-recorded transcription job and all its associated data (audio file, transcription). Use when permanently removing a transcription job from Gladia." }, { "slug": "GLADIA_GET_LIVE_TRANSCRIPTION_RESULT", "name": "Get live transcription result", "description": "Tool to retrieve metadata and results of a live transcription job. Use when you need detailed status or results for a specific live transcription session." }, { "slug": "GLADIA_GET_PRE_RECORDED_JOB", "name": "Get Pre-recorded Job", "description": "Tool to retrieve a pre-recorded transcription job's metadata, status, and results by ID. Use when checking the status or retrieving results of a specific pre-recorded job." }, { "slug": "GLADIA_GET_TRANSCRIPTION_AUDIO_FILE_DEPRECATED", "name": "Get Transcription Audio File (Deprecated)", "description": "DEPRECATED - use GET /v2/pre-recorded/{id}/file instead. Download the audio file used for a transcription job. Use when you need to retrieve the original audio file associated with a specific transcription job ID." }, { "slug": "GLADIA_INITIATE_LIVE_SESSION", "name": "Initiate Live Transcription Session", "description": "Initiates a live (real-time) transcription session with Gladia's API. Returns a WebSocket URL that you can connect to for streaming audio data in real-time. The WebSocket URL includes an embedded authentication token and should be used promptly. After initiating, connect to the returned WebSocket URL and send audio chunks. Use GET /v2/live/{id} to retrieve the full transcription results after the session ends." }, { "slug": "GLADIA_INITIATE_PRE_RECORDED_TRANSCRIPTION", "name": "Initiate Pre-Recorded Transcription", "description": "Tool to initiate a pre-recorded transcription job. Use when you have an audio URL and need asynchronous transcription results." }, { "slug": "GLADIA_LIST_LIVE_TRANSCRIPTIONS", "name": "List live transcription jobs", "description": "Tool to list live transcription jobs. Use when you need an overview of live transcription sessions with optional filtering and pagination. Use after setting up live transcription." }, { "slug": "GLADIA_LIST_PRE_RECORDED_JOBS", "name": "List Pre-Recorded Jobs", "description": "Tool to list all pre-recorded transcription jobs matching the query parameters. Use when you need to retrieve a paginated list of transcription jobs with optional filtering by date, status, or custom metadata." }, { "slug": "GLADIA_UPLOAD_AUDIO_VIDEO_FILE", "name": "Upload Audio/Video File", "description": "Upload an audio or video file to Gladia for speech-to-text transcription. Returns a URL that can be used with the pre-recorded transcription endpoint. Supports common audio formats (WAV, MP3, FLAC, OGG) and video formats (MP4, MKV, etc.)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gladia_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Gladia API Key", "type": "string", "description": "Your personal Gladia API key, available in your Gladia dashboard. This key must be included in the x-gladia-key header of each API request.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gleap", "name": "Gleap", "logo": "https://logos.composio.dev/api/gleap", "description": "Gleap is an all-in-one customer feedback tool for apps and websites, enabling direct communication with users to build better software by discovering their everyday pain points.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 179, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GLEAP_ARCHIVE_ALL_TICKETS", "name": "Archive All Tickets", "description": "Tool to archive all tickets matching specific type and status criteria. Use when you need to bulk archive multiple tickets at once based on their type and status." }, { "slug": "GLEAP_ARCHIVE_A_TICKET", "name": "Archive a Ticket", "description": "Tool to archive a ticket. Use after confirming the ticket ID and that the ticket is resolved. Call when moving tickets to history." }, { "slug": "GLEAP_CLONE_ENGAGEMENT", "name": "Clone Engagement", "description": "Tool to clone an existing engagement. Use when you need to duplicate an engagement with all its configuration." }, { "slug": "GLEAP_CREATE_A_COLLECTION", "name": "Create a Collection", "description": "Tool to create a help center collection. Use when adding a new organizational grouping in your Help Center." }, { "slug": "GLEAP_CREATE_AI_CONTENT", "name": "Create AI Content", "description": "Tool to create or update AI content in Gleap's knowledge base. Use when adding new documentation, help articles, or product information that AI assistants can reference. Supports text, file, and product content types with optional batch operations." }, { "slug": "GLEAP_CREATE_A_NEW_CHAT_MESSAGE", "name": "Create a new chat message", "description": "Creates a new chat message in a Gleap chat session. Use this action to: - Send a message as a user or admin in an existing chat session - Reply to customer inquiries in the Gleap support system - Add messages to ongoing conversations The action requires a valid sessionId (obtained from get_all_sessions or get_all_chat_messages actions), a role (\"user\" or \"admin\"), and message content. Returns the created message with its ID, timestamps, and configuration details." }, { "slug": "GLEAP_CREATE_A_NEW_SESSION", "name": "Create a new session", "description": "Create a new user session in Gleap and associate it with a project. Use this to track user activity, engagement metrics, and session data. Sessions can be created with minimal information and enriched later through identify_user or other API calls." }, { "slug": "GLEAP_CREATE_A_NEW_TEAM", "name": "Create a new team", "description": "Tool to create a new team. Use when you have team details ready and want to assign tickets among members." }, { "slug": "GLEAP_CREATE_A_NEW_TICKET", "name": "Create a new ticket", "description": "Create a new support ticket in Gleap with detailed information including title, description, type, priority, status, tags, and attachments. Supports custom metadata and sentiment tracking for comprehensive ticket management and customer feedback analysis." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_BANNER", "name": "Create Engagement Banner", "description": "Tool to create a new engagement banner in Gleap. Use when you want to add a banner for user engagement, announcements, or surveys. All fields are optional; the API will create a banner with default values if no fields are specified (default name: 'New survey', status: 'draft', format: 'widget', frequency: 'once')." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_CHECKLIST", "name": "Create Engagement Checklist", "description": "Tool to create a new engagement checklist. Use when you need to set up a step-by-step guide or task list for users." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_COBROWSE", "name": "Create Engagement Cobrowse", "description": "Tool to create a new cobrowse product tour. Use when you need to set up an interactive guided tour for users to follow." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_EMAIL", "name": "Create Engagement Email", "description": "Tool to create a new engagement email in Gleap. Use when you want to send emails for user engagement, announcements, or marketing campaigns. Requires name, subject, and body; other fields are optional with defaults (type: 'EMAIL', status: 'draft', format: 'widget', frequency: 'once', targetAudience: 'all')." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_MODAL", "name": "Create Engagement Modal", "description": "Tool to create a new engagement modal in Gleap. Use when you want to display a modal dialog for user engagement, onboarding, announcements, or feature introductions." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_PRODUCT_TOUR", "name": "Create Engagement Product Tour", "description": "Tool to create a new product tour in Gleap. Use when you want to create guided tours for onboarding, feature introductions, or step-by-step walkthroughs for users." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_PUSH_NOTIFICATION", "name": "Create Engagement Push Notification", "description": "Tool to create a new push notification in Gleap. Use when you want to send push notifications for user engagement, announcements, or alerts. All fields are optional; the API will create a notification with default values (name: 'New survey', type: 'PUSH', status: 'draft', sound: true, hidden: false, sent: false, format: 'widget', frequencyType: 'dynamic', frequency: 'once', frequencyDays: 0)." }, { "slug": "GLEAP_CREATE_ENGAGEMENT_TOOLTIP", "name": "Create Engagement Tooltip", "description": "Tool to create a new engagement tooltip in Gleap. Use when you want to add tooltips for user guidance, onboarding, or feature explanations." }, { "slug": "GLEAP_CREATE_FEEDBACK_ITEM", "name": "Create feedback item", "description": "Tool to manually create a feedback item (bug) in a Gleap project. Use when you need to: - Create a new bug report programmatically - Add customer feedback to a specific project - Submit feature requests or issues via API Requires project ID, title, and description. Supports optional fields like type, priority, status, tags, and custom metadata for comprehensive feedback tracking." }, { "slug": "GLEAP_CREATE_HELPCENTER_REDIRECT", "name": "Create Help Center Redirect", "description": "Tool to create a new redirect for help center URLs. Use when you need to redirect old or deprecated help articles to new URLs. Supports both exact URL matching and pattern-based matching for flexible redirect rules." }, { "slug": "GLEAP_CREATE_MESSAGE_TEMPLATE", "name": "Create Message Template", "description": "Tool to create a new message template in Gleap. Use when creating pre-defined message templates for support conversations, automated responses, or quick replies. The template can include actions (buttons, links) and attachments, and can be shared publicly or restricted to specific users." }, { "slug": "GLEAP_CREATE_NEW_CONVERSATION", "name": "Create new conversation with session", "description": "Create a new conversation with a session in Gleap. Use this action to initiate a conversation linked to a specific session ID within a project." }, { "slug": "GLEAP_CREATE_QA_SNIPPET", "name": "Create QA Snippet", "description": "Tool to create a QA snippet (question-answer pair) in Gleap. Use when you need to add knowledge base content or FAQ entries to help AI assistants answer user questions." }, { "slug": "GLEAP_CREATE_TRACKER_TICKET", "name": "Create Tracker Ticket", "description": "Tool to create a tracker ticket in Gleap. Use when you need to create a new tracker-based ticket for tracking features, bugs, or tasks." }, { "slug": "GLEAP_DELETE_AI_CONTENT", "name": "Delete AI Content", "description": "Tool to delete AI content by content ID. Use when you need to remove specific AI content from the system." }, { "slug": "GLEAP_DELETE_AICONTENT_BATCH", "name": "Delete AI Content Batch", "description": "Tool to delete all AI content by batchId. Use when you need to remove all AI-generated content associated with a specific batch identifier." }, { "slug": "GLEAP_DELETE_A_USER_FROM_A_PROJECT", "name": "Delete a User from a Project", "description": "Removes a user (team member) from a Gleap project, revoking their access. Use this when you need to remove a team member's access to the project by their user ID. The user ID can be obtained from the 'Get All Users for a Project' action. Note: This removes organization members from the project, not end-user sessions/contacts." }, { "slug": "GLEAP_DELETE_BUGS", "name": "Delete Bugs", "description": "Tool to delete a bug/ticket by ID. Use when you need to permanently remove a bug from the system." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_BANNER", "name": "Delete Engagement Banner", "description": "Tool to delete an engagement banner. Use when you need to remove a banner from the project by its banner ID." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_CHAT_MESSAGE", "name": "Delete Engagement Chat Message", "description": "Deletes an engagement chat message from Gleap by its ID. Use this action to permanently remove a chat message from a conversation. The message ID must be obtained from a prior list or get operation. Once deleted, the message cannot be recovered." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_CHECKLIST", "name": "Delete Engagement Checklist", "description": "Tool to delete an engagement checklist by its ID. Use when removing a checklist from the project." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_COBROWSE", "name": "Delete Engagement Cobrowse", "description": "Tool to delete a cobrowse product tour by its ID. Use when you need to remove a cobrowse product tour from the project." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_EMAIL", "name": "Delete Engagement Email", "description": "Tool to delete an engagement email by its ID. Use when you need to remove an email from the project's engagement emails list." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_MODAL", "name": "Delete Engagement Modal", "description": "Tool to delete an engagement modal from a Gleap project. Use when you need to remove a modal by its ID." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_NEWS", "name": "Delete Engagement News", "description": "Tool to delete an engagement news article. Use when you need to remove a news article from the project by its news ID." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_PRODUCT_TOUR", "name": "Delete Engagement Product Tour", "description": "Tool to delete an engagement product tour by its ID. Use when you need to remove a product tour from the project's engagement product tours list." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_PUSH_NOTIFICATION", "name": "Delete Engagement Push Notification", "description": "Tool to delete an engagement push notification by its ID. Use when you need to remove a push notification from the project's engagement push notifications list." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_SURVEYS", "name": "Delete Engagement Surveys", "description": "Tool to delete an engagement survey. Use when you need to remove a survey from the project by its survey ID." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_TOOLTIPS", "name": "Delete Engagement Tooltips", "description": "Tool to delete an engagement tooltip. Use when you need to remove a tooltip from the project by its tooltip ID." }, { "slug": "GLEAP_DELETE_ENGAGEMENT_WHATSAPP_MESSAGE", "name": "Delete Engagement WhatsApp Message", "description": "Tool to delete an engagement WhatsApp message by its ID. Use when you need to remove a WhatsApp message from the project's engagement WhatsApp messages list." }, { "slug": "GLEAP_DELETE_HELPCENTER_COLLECTION", "name": "Delete Help Center Collection", "description": "Tool to delete a help center collection by ID. Use when you need to permanently remove a collection from the help center." }, { "slug": "GLEAP_DELETE_HELPCENTER_REDIRECT", "name": "Delete Help Center Redirect", "description": "Tool to delete a help center redirect. Use when you need to remove a redirect from the help center by its redirect ID." }, { "slug": "GLEAP_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a message (comment) from a bug or ticket. Use when you need to permanently remove a comment from a bug/ticket conversation." }, { "slug": "GLEAP_DELETE_MESSAGE_TEMPLATE", "name": "Delete Message Template", "description": "Tool to delete a message template. Use when you need to remove a message template from the project by its template ID." }, { "slug": "GLEAP_DELETE_OLD_AI_CONTENT_BATCHES", "name": "Delete Old AI Content Batches", "description": "Delete all AI content batches except the current batch. Use when cleaning up old AI content and keeping only the latest batch by providing its ID." }, { "slug": "GLEAP_DELETE_PROJECTS_QAANSWERS", "name": "Delete QA Answer", "description": "Tool to delete a QA answer (snippet) from a Gleap project. Use when removing help center content or AI assistant snippets." }, { "slug": "GLEAP_DELETE_PROJECTS_SESSIONS", "name": "Delete project session", "description": "Tool to delete a session from a Gleap project. Use when you need to remove session data by providing both project ID and session ID." }, { "slug": "GLEAP_DELETE_SESSIONS", "name": "Delete session", "description": "Tool to delete a session by ID. Use when you need to remove a specific session from the system." }, { "slug": "GLEAP_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete a team by ID. Use when you need to permanently remove a team from the project." }, { "slug": "GLEAP_DELETE_TICKET", "name": "Delete Ticket", "description": "Tool to delete a ticket by ID. Use when you need to permanently remove a ticket from the system." }, { "slug": "GLEAP_EXPORT_SESSIONS", "name": "Export sessions", "description": "Tool to export sessions for the authenticated project in CSV format. Use when you need to export session data for analysis, reporting, or backup purposes. Returns comprehensive session information in CSV format including user details, activity data, and metadata. Use limit and skip parameters to control pagination for large datasets." }, { "slug": "GLEAP_EXPORT_STATISTICS_LISTS", "name": "Export Statistics Lists", "description": "Tool to export statistics list data as CSV from Gleap. Use when you need to export performance metrics, analytics, or reports. Supports various report types including team performance, article statistics, ticket ratings, SLA reports, and more. Results can be filtered by date range, grouped by time intervals, and paginated for large datasets." }, { "slug": "GLEAP_GENERATE_TICKET_DRAFT_REPLY", "name": "Generate ticket draft reply", "description": "Tool to generate an AI-powered draft reply for a ticket. Use when you need to automatically create a contextual response based on the ticket content, similar tickets, and knowledge base articles. The AI analyzes the ticket and suggests an appropriate reply that can be reviewed and sent." }, { "slug": "GLEAP_GENERATE_TRACKER_TICKET_DATA", "name": "Generate tracker ticket data", "description": "Tool to generate AI-powered tracker ticket data from an existing ticket. Use when you need to automatically create a title and description for a tracker ticket based on a source ticket's content. The AI analyzes the source ticket and generates appropriate metadata." }, { "slug": "GLEAP_GET_A_CHECKLIST_ACTION", "name": "Get a Checklist", "description": "Tool to retrieve a specific engagement checklist by its ID. Use after obtaining a valid checklistId." }, { "slug": "GLEAP_GET_A_COLLECTION", "name": "Get a Collection", "description": "Tool to retrieve a help center collection by ID. Use when you need to fetch specific collection details by its ID." }, { "slug": "GLEAP_GET_AI_CONTENT", "name": "Get AI content", "description": "Tool to retrieve AI content by its content ID. Use when you need to fetch specific AI-generated or AI-managed content from Gleap's AI content system." }, { "slug": "GLEAP_GET_ALL_ARTICLES", "name": "Get all articles", "description": "Tool to retrieve articles in a help center collection. Use when you have a helpcenterCollectionId and want to list its articles. Supports pagination via limit and skip parameters." }, { "slug": "GLEAP_GET_ALL_CHAT_MESSAGES", "name": "Get all chat messages", "description": "Retrieves all engagement chat messages from the current Gleap project. Use this action to: - List all chat conversations across all sessions - Review customer support interactions and message history - Analyze chat engagement data and message patterns - Export or audit chat communications Returns messages sorted by creation date (newest first) with complete metadata including sender information, session details, content, and timestamps. Supports pagination via limit and skip parameters." }, { "slug": "GLEAP_GET_ALL_COLLECTIONS", "name": "Get All Collections", "description": "Retrieves all help center collections for the authenticated project. Collections are organizational containers in the help center that group related articles. Each collection can contain articles and nested sub-collections. Use this action to: - Get an overview of all collections in the help center - Check collection counts (articles and sub-collections) - Access collection metadata (titles, descriptions, audience filters) Returns an empty list if no collections exist in the project." }, { "slug": "GLEAP_GET_ALL_INVITATIONS_FOR_A_PROJECT", "name": "Get All Invitations for a Project", "description": "Retrieves all pending invitations for a project. Use this to list users who have been invited to join the project but haven't accepted yet. The project context is automatically determined from the authentication headers." }, { "slug": "GLEAP_GET_ALL_SESSIONS", "name": "Get all sessions", "description": "Retrieves all user sessions for the authenticated project. This endpoint returns comprehensive session data including user information, activity timestamps, engagement metrics, and metadata for all sessions associated with the project. Useful for analytics, user tracking, and session management. Use limit and skip parameters to control pagination for large datasets." }, { "slug": "GLEAP_GET_ALL_TEAMS", "name": "Get All Teams", "description": "Tool to retrieve all teams. Use when you need a list of all teams for the authenticated project." }, { "slug": "GLEAP_GET_ALL_TICKETS", "name": "Get All Tickets", "description": "Retrieve tickets from a Gleap project with optional filtering, sorting, and pagination. This action fetches tickets from the authenticated Gleap project. Without parameters, it returns all tickets. Use filters to narrow results by type, status, priority, or spam classification. Results can be sorted and paginated for efficient data retrieval. Use cases: - List all open bugs: Set status='OPEN' and type='BUG' - Get recent tickets: Set sort='-createdAt' and limit=20 - Paginate through tickets: Use skip and limit parameters - Find high-priority issues: Set priority='HIGH'" }, { "slug": "GLEAP_GET_ALL_USERS_FOR_A_PROJECT", "name": "Get All Users for a Project", "description": "Tool to retrieve all users for a project. Use when you need to list every user associated with the current project." }, { "slug": "GLEAP_GET_A_TICKET", "name": "Get a ticket", "description": "Retrieves complete details for a specific ticket by its ID. Use this action when you need to: - View full ticket information including title, description, status, and priority - Check ticket metadata like creation time, tags, and custom data - Access associated session and user information - Review AI-generated summaries and support recommendations Returns comprehensive ticket data including type (BUG/FEATURE_REQUEST), priority level, sentiment analysis, upvotes, linked tickets, and custom fields." }, { "slug": "GLEAP_GET_CURRENT_USER", "name": "Get current user", "description": "Retrieves the authenticated user's profile including email, name, user type, availability status, notification preferences, and 2FA settings. No parameters required - uses authentication from headers. Returns detailed user information including notification preferences for different event types (tickets, assignments, mentions) and account settings." }, { "slug": "GLEAP_GET_ENGAGEMENT_ACTIVITIES_COUNT", "name": "Get engagement activities count", "description": "Tool to retrieve the count of activities for a specific engagement. Use when you need to know how many activities are associated with an engagement without fetching all activity details." }, { "slug": "GLEAP_GET_ENGAGEMENT_BANNER", "name": "Get engagement banner", "description": "Tool to retrieve an engagement banner by its ID. Use when you need to fetch specific banner details including title, message, button configuration, targeting settings, and display schedule." }, { "slug": "GLEAP_GET_ENGAGEMENT_BANNERS", "name": "Get Engagement Banners", "description": "Tool to retrieve all engagement banners from a Gleap project. Use when you need to list all banners for viewing, auditing, or selecting a specific banner for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENT_CHAT_MESSAGE", "name": "Get engagement chat message", "description": "Retrieves a specific engagement chat message by its ID. Use this action to fetch complete details of a single chat message including content, sender role, timestamps, and configuration settings." }, { "slug": "GLEAP_GET_ENGAGEMENT_CHECKLISTS", "name": "Get Engagement Checklists", "description": "Tool to retrieve all engagement checklists for a project. Use when you need to get an overview of all available checklists." }, { "slug": "GLEAP_GET_ENGAGEMENT_COBROWSE", "name": "Get Engagement Cobrowse", "description": "Retrieves all cobrowse product tours for the authenticated project. Cobrowse product tours are interactive guided experiences that help users navigate through features or workflows. Use this action to get an overview of all configured cobrowse tours in your project, including their status, steps, and settings." }, { "slug": "GLEAP_GET_ENGAGEMENT_COBROWSE_BY_ID", "name": "Get engagement cobrowse by ID", "description": "Tool to retrieve a specific cobrowse product tour by its ID. Use when you need to fetch complete details of a single cobrowse tour including steps, settings, status, and configuration." }, { "slug": "GLEAP_GET_ENGAGEMENT_EMAIL", "name": "Get engagement email", "description": "Retrieves a specific engagement email by its ID. Use this action to fetch complete details of a single engagement email including name, subject, body content, status, and configuration settings like frequency, target audience, and scheduling." }, { "slug": "GLEAP_GET_ENGAGEMENT_EMAILS", "name": "Get Engagement Emails", "description": "Tool to retrieve all engagement emails from a Gleap project. Use when you need to list all emails for viewing, auditing, or selecting a specific email for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENT_MODAL", "name": "Get engagement modal", "description": "Tool to retrieve an engagement modal by its ID. Use when you need to fetch specific modal details including title, message, button configuration, targeting settings, and display schedule." }, { "slug": "GLEAP_GET_ENGAGEMENT_MODALS", "name": "Get Engagement Modals", "description": "Tool to retrieve all engagement modals from a Gleap project. Use when you need to list all modals for viewing, auditing, or selecting a specific modal for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENT_NEWS", "name": "Get Engagement News", "description": "Tool to retrieve all engagement news articles from a Gleap project. Use when you need to list all news articles for viewing, auditing, or selecting a specific article for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENT_NEWS_ARTICLE", "name": "Get engagement news article", "description": "Retrieves a specific engagement news article by its ID. Use this action to fetch complete details of a single news article including content, configuration, targeting settings, and delivery schedule." }, { "slug": "GLEAP_GET_ENGAGEMENT_PRODUCT_TOUR", "name": "Get a Product Tour", "description": "Tool to retrieve a specific engagement product tour by its ID. Use after obtaining a valid productTourId to fetch detailed tour configuration including steps, targeting, and timing settings." }, { "slug": "GLEAP_GET_ENGAGEMENT_PRODUCT_TOURS", "name": "Get Engagement Product Tours", "description": "Tool to retrieve all engagement product tours for a project. Use when you need to get an overview of all available product tours." }, { "slug": "GLEAP_GET_ENGAGEMENT_PUSH_NOTIFICATION", "name": "Get engagement push notification", "description": "Retrieves a specific engagement push notification by its ID. Use this action to fetch complete details of a single push notification including name, title, message content, status, and configuration settings like frequency, target audience, and scheduling." }, { "slug": "GLEAP_GET_ENGAGEMENT_PUSH_NOTIFICATIONS", "name": "Get Engagement Push Notifications", "description": "Tool to retrieve all engagement push notifications from a Gleap project. Use when you need to list all push notifications for viewing, auditing, or selecting a specific push notification for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENTS_ACTIVITIES", "name": "Get Engagements Activities", "description": "Tool to retrieve all activities for a specific engagement. Use when you need to track user interactions, view engagement performance, or analyze activity patterns for a particular engagement campaign." }, { "slug": "GLEAP_GET_ENGAGEMENTS_RECIPIENTS", "name": "Get engagement recipients", "description": "Tool to find and retrieve recipients for a specific engagement. Use when you need to: - View all recipients who received an engagement (email, push notification, etc.) - Check delivery status and engagement metrics for recipients - Track when recipients opened or clicked on engagement content" }, { "slug": "GLEAP_GET_ENGAGEMENTS_STATISTICS", "name": "Get engagement statistics", "description": "Tool to retrieve statistics for a specific engagement. Use when you need to analyze engagement performance metrics such as views, interactions, conversions, and user behavior data." }, { "slug": "GLEAP_GET_ENGAGEMENT_SURVEY", "name": "Get Engagement Survey", "description": "Tool to retrieve a survey by its ID. Use when you need to view survey details including name, description, status, format, questions, and other configuration settings." }, { "slug": "GLEAP_GET_ENGAGEMENT_SURVEYS", "name": "Get Engagement Surveys", "description": "Tool to retrieve all engagement surveys from a Gleap project. Use when you need to list all surveys for viewing, auditing, or selecting a specific survey for further operations." }, { "slug": "GLEAP_GET_ENGAGEMENT_SURVEYS_RESPONSES", "name": "Get Survey Responses", "description": "Tool to retrieve all survey responses for a specific survey. Use when you need to get all responses submitted for a survey." }, { "slug": "GLEAP_GET_ENGAGEMENT_SURVEYS_RESPONSES_SAMPLES", "name": "Get Engagement Survey Response Samples", "description": "Tool to retrieve survey response samples for a specific engagement survey. Use when you need to view example responses, analyze survey feedback patterns, or audit survey submissions for a particular survey." }, { "slug": "GLEAP_GET_ENGAGEMENT_SURVEYS_RESPONSES_SUMMARIZE", "name": "Summarize Survey Responses", "description": "Tool to retrieve an AI-generated summary of survey responses. Use when you need to analyze survey feedback, understand response patterns, or get insights from customer feedback without reviewing individual responses." }, { "slug": "GLEAP_GET_ENGAGEMENT_TOOLTIP_BY_ID", "name": "Get Engagement Tooltip by ID", "description": "Tool to retrieve a specific engagement tooltip by its ID. Use when you need to get detailed information about a specific tooltip." }, { "slug": "GLEAP_GET_ENGAGEMENT_TOOLTIPS", "name": "Get Engagement Tooltips", "description": "Tool to retrieve all engagement tooltips for the authenticated project. Use when you need to get a list of all configured tooltips." }, { "slug": "GLEAP_GET_ENGAGEMENT_WHATSAPP_MESSAGE", "name": "Get engagement WhatsApp message", "description": "Retrieves a specific engagement WhatsApp message by its ID. Use this action to fetch complete details of a single WhatsApp message including content, status, and configuration settings like frequency, target audience, and scheduling." }, { "slug": "GLEAP_GET_HELP_CENTER_SOURCES", "name": "Get Help Center Sources", "description": "Retrieves all configured help center sources (knowledge base content sources) for the project. Returns a list of sources with their IDs, titles, URLs, and metadata. Use this to discover available help center content sources before querying articles or answering questions." }, { "slug": "GLEAP_GET_INVITATIONS", "name": "Get Invitations", "description": "Retrieves all invitations for the authenticated user. Use this to list all pending invitations (both organisation and project invitations) associated with the current user. The user context is automatically determined from the authentication headers." }, { "slug": "GLEAP_GET_MESSAGE_TEMPLATE", "name": "Get message template", "description": "Retrieves a specific message template by its ID from a Gleap project. Use this when you need to fetch the details of a particular message template including its title, content, visibility settings, and associated metadata." }, { "slug": "GLEAP_GET_MESSAGE_TEMPLATES", "name": "Get Message Templates", "description": "Retrieve all message templates for the authenticated project. Use when you need to list available message templates for customer communication. Message templates are pre-defined message formats that can be used for consistent communication with users. This action supports optional filtering via search term and pagination with a limit parameter." }, { "slug": "GLEAP_GET_NOTIFICATION_TICKET", "name": "Get notification ticket", "description": "Retrieves detailed information about a Gleap ticket using its notification share token. Use this action to access public ticket details via a share token, which is typically obtained from ticket notifications or webhooks. This allows viewing ticket information without requiring full authentication. Returns comprehensive ticket data including title, description, status, priority, tags, and session information." }, { "slug": "GLEAP_GET_PROJECT", "name": "Get project", "description": "Retrieves complete details for a specific project by its ID. Use when you need to view project configuration, settings, notification preferences, or metadata for a single project." }, { "slug": "GLEAP_GET_PROJECTS", "name": "Get Projects", "description": "Retrieves all projects accessible to the authenticated user. Use when you need to list all projects the user has access to. Rate limit: 1000 requests per minute." }, { "slug": "GLEAP_GET_PROJECTS_BUGS_ARCHIVE", "name": "Get archived bugs", "description": "Tool to retrieve archived bugs for a specific project. Use when you need to view bugs that have been archived or moved to history for a given project." }, { "slug": "GLEAP_GET_PROJECTS_HELPCENTER_COLLECTIONS", "name": "Get Projects Help Center Collections", "description": "Tool to get all help center collections for a project. Use when you need to retrieve the complete list of help center collections including their metadata, titles, descriptions, and audience targeting settings." }, { "slug": "GLEAP_GET_PROJECTS_SESSIONS", "name": "Get project sessions", "description": "Tool to retrieve all sessions for a specific project. Use when you need to get session data for a particular project by its ID. Returns comprehensive session information including user details, activity timestamps, and metadata." }, { "slug": "GLEAP_GET_PROJECTS_TICKETS", "name": "Get Projects Tickets", "description": "Tool to retrieve all tickets from a specific Gleap project. Use when you need to get tickets for a particular project by its ID." }, { "slug": "GLEAP_GET_PROJECTS_USERS", "name": "Get project users", "description": "Tool to get project users by project ID. Use when you need to list all users associated with a specific project." }, { "slug": "GLEAP_GET_SESSION", "name": "Get a session", "description": "Retrieves detailed information for a specific session by its ID. Use this when you need to fetch comprehensive session data including user information, activity timestamps, engagement metrics, and custom metadata for a particular session." }, { "slug": "GLEAP_GET_SESSION_ACTIVITIES", "name": "Get session activities", "description": "Retrieves all activities for a specific session by session ID. Use this action when you need to fetch detailed activity data for a particular session, including user interactions and session events." }, { "slug": "GLEAP_GET_SESSION_CHARGEBEE_INFO", "name": "Get session Chargebee info", "description": "Tool to retrieve Chargebee billing information for a specific session. Use when you need to fetch subscription, payment, or billing details associated with a user session from Chargebee." }, { "slug": "GLEAP_GET_SESSION_CHECKLISTS", "name": "Get Session Checklists", "description": "Retrieve all engagement checklists associated with a user session in Gleap. Engagement checklists help track user progress through onboarding flows, feature adoption, or guided workflows. Use this after obtaining a valid session ID (e.g., from Get All Sessions). Returns an empty list if the session has no associated checklists." }, { "slug": "GLEAP_GET_SESSION_EVENTS", "name": "Get session events by ID", "description": "Tool to retrieve all streamed events for a specific session by its ID. Use when you need to get detailed event stream data for debugging user behavior or analyzing session activity." }, { "slug": "GLEAP_GET_SESSION_LEMON_SQUEEZY_INFO", "name": "Get session LemonSqueezy info", "description": "Tool to retrieve LemonSqueezy subscription and payment information for a specific session. Use when you need to fetch LemonSqueezy data associated with a user session." }, { "slug": "GLEAP_GET_SESSION_SHOPIFY_INFO", "name": "Get Session Shopify Info", "description": "Retrieve Shopify information associated with a user session in Gleap. Use this when you need to access e-commerce data from Shopify linked to a specific session." }, { "slug": "GLEAP_GET_SHARED_HELPCENTER_ANSWER", "name": "Get Shared Help Center Answer", "description": "Retrieves an answer to a question from the shared help center knowledge base. Use this when you need to find information from help center articles based on a user's question. The endpoint searches through configured help center sources and returns the most relevant answer. Returns null if no matching answer is found." }, { "slug": "GLEAP_GET_STATISTICS_EMAIL_CLIENT_BOUNCES", "name": "Get email client bounce statistics", "description": "Tool to retrieve email client bounce statistics from Gleap. Use when you need to analyze email delivery failures and bounce rates over time. The statistics can be filtered by date range, grouped by time intervals (day, month, year), and filtered by specific email server configurations." }, { "slug": "GLEAP_GET_STATISTICS_EMAIL_CLIENT_USAGE", "name": "Get Email Client Usage Statistics", "description": "Tool to retrieve email client usage statistics from Gleap. Returns metrics such as sent emails, bounces, spam reports, and open rates. Use when you need to analyze email delivery performance, track email engagement, or monitor email client behavior over time. Note: The API typically requires startDate and endDate parameters to function properly." }, { "slug": "GLEAP_GET_STATISTICS_EMAIL_OVERVIEW", "name": "Get email overview statistics", "description": "Tool to retrieve email overview statistics from Gleap. Use when you need to analyze email campaign performance metrics such as sent, delivered, opened, clicked, bounced emails, and engagement rates over a specified time period." }, { "slug": "GLEAP_GET_STATISTICS_FACTS", "name": "Get statistics facts", "description": "Tool to retrieve fact data for various statistics from Gleap. Use when you need statistical insights about tickets, AI interactions, help center engagement, or SLA performance for a specific time period." }, { "slug": "GLEAP_GET_STATISTICS_HEATMAP", "name": "Get Statistics Heatmap", "description": "Retrieve heatmap data for activity patterns in Gleap. Use when you need to visualize busiest hours per weekday or comment activity patterns. Returns aggregated data showing activity distribution across time dimensions, helpful for identifying peak usage times and activity trends." }, { "slug": "GLEAP_GET_STATISTICS_LISTS", "name": "Get Statistics Lists", "description": "Tool to retrieve statistics list data from Gleap. Use when you need to access performance metrics, analytics, or reports. Supports various report types including team performance, article statistics, ticket ratings, SLA reports, and more. Results can be filtered by date range, grouped by time intervals, and paginated for large datasets." }, { "slug": "GLEAP_GET_STATISTICS_RAW_DATA", "name": "Get Statistics Raw Data", "description": "Tool to retrieve raw statistics data from Gleap. Use when you need unprocessed, granular statistical data for custom analysis or reporting." }, { "slug": "GLEAP_GET_TICKETS_BY_SESSION_QUERY", "name": "Get Tickets By Session Query", "description": "Find tickets by session query parameters such as email, userId, phone, or custom data. Use this when you need to retrieve tickets associated with a specific user session or contact information." }, { "slug": "GLEAP_GET_TICKETS_EXPORT", "name": "Get Tickets Export", "description": "Export tickets from Gleap project with optional filtering and sorting. This action retrieves tickets in an export format suitable for data analysis, reporting, or backup purposes. Use filters to narrow the export to specific ticket types, statuses, or priorities. The project is automatically identified from authentication headers." }, { "slug": "GLEAP_GET_TICKETS_EXPORT_FIELDS", "name": "Get Tickets Export Fields", "description": "Retrieve available fields for ticket export from Gleap. This action fetches metadata about which fields can be exported for tickets, useful for understanding what data is available before performing a ticket export." }, { "slug": "GLEAP_GET_TICKETS_SEARCH", "name": "Search Tickets by Term", "description": "Search for tickets using a text search term in Gleap. Use when you need to find tickets based on keywords or phrases in titles and descriptions." }, { "slug": "GLEAP_GET_TICKETS_TICKETSCOUNT", "name": "Get Tickets Count", "description": "Tool to get the total count of tickets in a Gleap project. Use when you need to know how many tickets exist without retrieving full ticket details." }, { "slug": "GLEAP_GET_USERS_ME_PERMISSIONS", "name": "Get current user's permissions", "description": "Tool to retrieve the current user's role permissions. Use when you need to check what permissions the authenticated user has." }, { "slug": "GLEAP_GET_USERS_UNIFIED_INBOX", "name": "Get users unified inbox", "description": "Retrieves tickets from the unified inbox for the authenticated user. Use this action to view all tickets assigned to or accessible by the current user across projects. Supports filtering by ticket type, project ID, and pagination for large result sets." }, { "slug": "GLEAP_GET_USERS_UNIFIED_INBOX_TICKET", "name": "Get users unified inbox ticket", "description": "Retrieves complete details for a specific ticket from the unified inbox by its ID. Use this action when you need to: - View full unified inbox ticket information including title, description, status, and priority - Check ticket metadata like creation time, tags, and custom data - Access associated session and user information - Review notification status and agent replies - Get AI-generated summaries and support recommendations The unified inbox provides a consolidated view of tickets across different channels. Returns comprehensive ticket data including type, priority level, sentiment analysis, upvotes, linked tickets, and custom fields." }, { "slug": "GLEAP_IDENTIFY_USER", "name": "Identify or update user", "description": "Identify or update a user's information in Gleap. Creates a new user if the userId doesn't exist, or updates the existing user's profile data. Use this to sync user information from your application to Gleap for customer support and feedback tracking." }, { "slug": "GLEAP_IMPORT_SESSION", "name": "Import session", "description": "Import user sessions into Gleap for tracking and analytics. Use this action to: - Bulk import user session data from external systems - Migrate user data from other platforms into Gleap - Synchronize user information with Gleap's session tracking - Create or update user profiles with associated metadata Each session must include a userId, and can optionally include email, name, phone, avatar, language, company information, custom data, plan, value, and tags." }, { "slug": "GLEAP_IMPORT_SESSIONS_FROM_INTERCOM", "name": "Import sessions from Intercom", "description": "Import user sessions from Intercom into Gleap. Use this to synchronize contact data and session information from your Intercom workspace to Gleap for unified customer support tracking." }, { "slug": "GLEAP_INDICATE_USER_TYPING", "name": "Indicate user typing", "description": "Tool to indicate that a user is typing in a ticket conversation. Use this to show real-time typing indicators to other users viewing the same ticket. Set typing to true when starting to type and false when finished." }, { "slug": "GLEAP_INDICATE_USER_VIEWING", "name": "Indicate user viewing", "description": "Tool to indicate that a user is viewing a ticket. Use this to show real-time viewing indicators to other users accessing the same ticket. Set viewing to true when starting to view and false when finished." }, { "slug": "GLEAP_LINK_A_TICKET", "name": "Link a Ticket", "description": "Tool to link a ticket. Use when you need to connect two existing tickets after confirming both IDs exist. Example: Link a duplicate issue ticket to its original." }, { "slug": "GLEAP_MARK_SURVEY_RESPONSES_READ", "name": "Mark Survey Responses as Read", "description": "Tool to mark all survey responses as read for a given survey. Use when you need to bulk-mark survey responses as read to clear unread indicators." }, { "slug": "GLEAP_MERGE_TICKETS", "name": "Merge tickets", "description": "Tool to merge multiple tickets into a single target ticket in Gleap. Use when you need to consolidate duplicate tickets or combine related tickets into one. You can either merge into an existing ticket by providing targetTicketId, or create a new ticket by setting shouldCreateNewTicket to true. Optionally merge contacts and tasks from all tickets." }, { "slug": "GLEAP_POST_BUGS_COMMENTS", "name": "Post a comment on a bug", "description": "Tool to post a comment/message on a bug or ticket in Gleap. Use when you need to add a comment to an existing bug/ticket conversation, such as providing updates, asking questions, or documenting resolution steps." }, { "slug": "GLEAP_POST_ENGAGEMENT_NEWS", "name": "Create Engagement News Article", "description": "Tool to create a new engagement news article in Gleap. Use when you need to publish announcements, product updates, or news content to users. Configure scheduling, targeting, and display frequency." }, { "slug": "GLEAP_POST_ENGAGEMENT_SURVEYS", "name": "Create Engagement Survey", "description": "Tool to create a new survey in Gleap. Use when you want to create a customer feedback survey, product satisfaction survey, or any user engagement survey. Only the name field is required; all other fields are auto-populated with defaults (status='draft', type='SURVEY', format='widget', frequency='once')." }, { "slug": "GLEAP_POST_ENGAGEMENT_WHATSAPP_MESSAGES", "name": "Create WhatsApp Engagement Message", "description": "Tool to create a new WhatsApp message in Gleap for user engagement. Use when you want to send WhatsApp messages for customer support, announcements, or marketing campaigns. All fields are optional; the API will create a message with default values (name: 'New whatsapp message', type: 'WHATSAPP', status: 'draft', sound: true, hidden: false, sent: false, format: 'widget', frequencyType: 'dynamic', frequency: 'once', frequencyDays: 0)." }, { "slug": "GLEAP_REASSIGN_ALL_TICKETS_TO_USER", "name": "Reassign all tickets to user", "description": "Tool to reassign all tickets to the authenticated user. Use when you need to bulk reassign tickets to yourself for handling or review." }, { "slug": "GLEAP_RESUBSCRIBE_A_SESSION", "name": "Resubscribe a Session", "description": "Tool to resubscribe a session. Use when you need to re-enable notifications or tracking for a previously unsubscribed session." }, { "slug": "GLEAP_SEARCH_FOR_SESSIONS", "name": "Search for sessions", "description": "Search for sessions in Gleap using various filter criteria. Use when you need to find sessions by user ID, email, name, or other session attributes. Supports filtering by multiple criteria including user information (userId, email, name), session identifiers (gleapId, gleapHash), language, and user status (blocked, unsubscribed)." }, { "slug": "GLEAP_SEARCH_MESSAGES", "name": "Search messages", "description": "Search messages in Gleap by search term. Use when you need to find specific messages based on content, keywords, or metadata across all conversations and tickets." }, { "slug": "GLEAP_SEARCH_SESSIONS_BY_INDEX", "name": "Search sessions by index", "description": "Search for sessions in a project using the session search index. Use when you need to retrieve sessions for a specific project using the indexed search endpoint. This endpoint provides indexed session data including user information, activity timestamps, engagement metrics, and metadata for sessions within a specific project. The search is optimized through Gleap's session index for faster lookups." }, { "slug": "GLEAP_SEND_ENGAGEMENT_EMAIL_PREVIEW", "name": "Send Engagement Email Preview", "description": "Tool to send a preview of an engagement email to specified email addresses. Use when you need to test or review how an engagement email will appear before sending it to the actual recipients." }, { "slug": "GLEAP_SEND_TICKET_TRANSCRIPT", "name": "Send ticket transcript", "description": "Tool to send ticket conversation transcript to multiple email addresses. Use when you need to share the complete conversation history of a ticket with external users or team members via email." }, { "slug": "GLEAP_SNOOZE_A_TICKET", "name": "Snooze a Ticket", "description": "Tool to snooze a ticket for a specified duration. Use when you need to temporarily hide a ticket from active view. The ticket will be automatically unsnoozed after the duration expires." }, { "slug": "GLEAP_SUGGEST_FAQ_FROM_MESSAGE", "name": "Suggest FAQ from message", "description": "Tool to suggest a FAQ from a message. Use when you want to accept or reject a FAQ suggestion for a specific message." }, { "slug": "GLEAP_TOGGLE_HELPCENTER_COLLECTION_PUBLISH", "name": "Toggle Collection Publish Status", "description": "Tool to toggle the publish status of a help center collection. Use when you need to publish or unpublish a collection to control its visibility in the help center." }, { "slug": "GLEAP_TRACK_EVENTS", "name": "Track events", "description": "Track custom user events in Gleap for analytics and user behavior monitoring. Use this action to: - Record user actions like button clicks, page views, feature usage - Log business events like purchases, subscriptions, or conversions - Send batch events for efficiency (supports multiple events per request) - Track events with custom metadata for detailed analytics Note: Users must be identified first using the Identify User action before tracking events for them. Rate limit: 1000 requests per 60 seconds per project." }, { "slug": "GLEAP_UNARCHIVE_A_TICKET", "name": "Unarchive a Ticket", "description": "Tool to unarchive a ticket. Use when you need to restore a previously archived ticket after validation." }, { "slug": "GLEAP_UNLINK_A_TICKET", "name": "Unlink a Ticket", "description": "Tool to unlink a ticket. Use after confirming both tickets are linked to remove their association." }, { "slug": "GLEAP_UNSUBSCRIBE_SESSIONS", "name": "Unsubscribe sessions", "description": "Tool to unsubscribe one or more user sessions from communications. Use when users request to stop receiving messages or notifications." }, { "slug": "GLEAP_UPDATE_AI_CONTENT_BY_CONTENT_ID", "name": "Update AI Content by Content ID", "description": "Tool to update AI content by content ID. Use when modifying existing AI-powered content entries in Gleap." }, { "slug": "GLEAP_UPDATE_A_TEAM", "name": "Update a team", "description": "Tool to update an existing team. Use when you need to modify team properties like name, assignment method, or members. All fields except the team ID are required in the request body." }, { "slug": "GLEAP_UPDATE_A_TICKET", "name": "Update a ticket", "description": "Tool to update an existing ticket/bug in Gleap. Use when you need to modify ticket properties like status, priority, description, type, assigned user, tags, or other attributes. All fields except the ticket ID are optional - only provide the fields you want to update." }, { "slug": "GLEAP_UPDATE_A_USER_FOR_A_PROJECT", "name": "Update a User for a Project", "description": "Tool to update a user’s role in a project. Use when you need to change a user's permissions." }, { "slug": "GLEAP_UPDATE_CHAT_MESSAGE", "name": "Update Chat Message", "description": "Updates an existing chat message in Gleap by its ID. This action modifies one or more fields of a chat message such as content, status, visibility, and other properties. Use this after creating a chat message to edit its text, change its status from draft to active, or update other metadata. The message ID must be obtained from a prior create or list operation. Common use cases: - Edit message content after sending - Change message status (draft → active) - Toggle message visibility (hidden/shown) - Update message metadata (name, sound settings)" }, { "slug": "GLEAP_UPDATE_CHECKLIST", "name": "Update a Checklist", "description": "Tool to update an engagement checklist by its ID. Use to modify checklist properties such as name, description, status, items, and other configuration options." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_BANNER", "name": "Update Engagement Banner", "description": "Tool to update an engagement banner. Use when modifying banner properties like name, status, targeting, or scheduling." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_COBROWSE", "name": "Update Engagement Cobrowse", "description": "Tool to update an existing cobrowse product tour. Use when you need to modify properties like name, description, status, or configuration of an interactive guided tour." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_EMAIL", "name": "Update Engagement Email", "description": "Tool to update an existing engagement email. Use when you need to modify properties like name, subject, content, status, or targeting settings of an email campaign." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_MODAL", "name": "Update Engagement Modal", "description": "Tool to update an existing engagement modal. Use when you need to modify properties like name, status, format, or targeting configuration of a modal dialog." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_NEWS", "name": "Update Engagement News", "description": "Tool to update an engagement news article. Use when modifying news article properties like name, status, scheduling, targeting, or other attributes." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_PRODUCT_TOUR", "name": "Update Engagement Product Tour", "description": "Tool to update an existing product tour. Use when you need to modify properties like name, status, configuration, or targeting of a product tour." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_PUSH_NOTIFICATION", "name": "Update Engagement Push Notification", "description": "Tool to update an existing push notification. Use when you need to modify properties like title, message, status, targeting, or scheduling of a push notification." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_SURVEYS", "name": "Update Engagement Survey", "description": "Tool to update an existing engagement survey in Gleap. Use when you need to modify survey properties like name, status, type, format, frequency settings, or targeting. Only the surveyId is required; all other fields are optional - provide only the fields you want to update." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_TOOLTIPS", "name": "Update Engagement Tooltips", "description": "Tool to update an engagement tooltip. Use when modifying tooltip properties like name, active status, targeting, or frequency settings." }, { "slug": "GLEAP_UPDATE_ENGAGEMENT_WHATSAPP_MESSAGE", "name": "Update Engagement WhatsApp Message", "description": "Tool to update an existing engagement WhatsApp message. Use when you need to modify properties like name, status, or targeting settings of a WhatsApp message campaign." }, { "slug": "GLEAP_UPDATE_HELPCENTER_COLLECTION", "name": "Update Helpcenter Collection", "description": "Tool to update a help center collection. Use when you need to modify an existing collection's properties such as title, description, icon, audience filters, or organizational structure. All fields except the collection ID are optional - only provide the fields you want to update." }, { "slug": "GLEAP_UPDATE_HELPCENTER_REDIRECT", "name": "Update help center redirect", "description": "Tool to update an existing help center redirect. Use when you need to modify the URL paths or match type of an existing redirect rule. This allows you to change where old URLs redirect to or update the matching strategy." }, { "slug": "GLEAP_UPDATE_MESSAGE_TEMPLATE", "name": "Update message template", "description": "Tool to update an existing message template in Gleap. Use when you need to modify template properties like title, content, ordering, visibility, or associated actions. All fields except the template ID, title, content, and lexorank are optional." }, { "slug": "GLEAP_UPDATE_PROJECT", "name": "Update project", "description": "Tool to update a Gleap project's configuration including name, description, notification settings, and feedback tags. Use when you need to modify project settings such as enabling/disabling notifications, updating contact information, or managing feedback categories. Rate limit: 1000 requests per minute." }, { "slug": "GLEAP_UPDATE_QA_ANSWER", "name": "Update QA Answer", "description": "Updates an existing QA answer/snippet in Gleap. Use when you need to modify the question, answer, tags, or other properties of a snippet. Only the fields you provide will be updated; omitted fields remain unchanged." }, { "slug": "GLEAP_UPDATE_SESSION", "name": "Update a session", "description": "Tool to update an existing session in Gleap. Use when you need to modify session properties like user information (name, email, phone), custom data, tags, or other session attributes. All fields except the session ID are optional - only provide the fields you want to update." }, { "slug": "GLEAP_UPDATE_USER", "name": "Update user", "description": "Tool to update a user's profile information including name, availability, profile image, onboarding status, and notification settings. Use when you need to modify user profile data or preferences. Use 'me' as the user_id to update the authenticated user." }, { "slug": "GLEAP_VOTE_FOR_TICKET", "name": "Vote for ticket", "description": "Tool to vote for a ticket in Gleap. Use when users want to upvote or show support for a specific ticket or feature request. Each email can only vote once per ticket to prevent duplicate votes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gleap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Gleap API Token", "type": "string", "description": "The secret API token for authenticating API requests. This can be found in your project settings under 'API token'.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Gleap Project ID", "type": "string", "description": "The Project ID associated with your Gleap project. You can find this in your project settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "globalping", "name": "Globalping", "logo": "https://globalping.io/logo.png", "description": "Globalping is a global network of probes that allows users to run network tests like ping, traceroute, and DNS resolve from various locations worldwide.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GLOBALPING_CREATE_MEASUREMENT", "name": "Create Measurement", "description": "Tool to create and trigger a network measurement. Use when you need connectivity checks from specific geographic or network locations." }, { "slug": "GLOBALPING_GET_LIMITS", "name": "Get Rate Limits", "description": "Tool to retrieve current rate limits and credits. Use this to check remaining API quota before making measurements. Returns rate limits based on IP address for unauthenticated requests or user account for authenticated requests." }, { "slug": "GLOBALPING_GET_MEASUREMENT", "name": "Get Measurement Results", "description": "Retrieve measurement results by ID. Use this after creating a measurement to get the status and detailed results from all participating probes. Poll this endpoint until status is 'finished'." }, { "slug": "GLOBALPING_HEALTH_CHECK", "name": "GlobalPing Health Check", "description": "Tool to check API health status. Use when verifying API availability." }, { "slug": "GLOBALPING_LIST_PROBES", "name": "List Probes", "description": "Retrieve all currently online Globalping probes worldwide. Returns probe metadata including location (continent, country, city), network information (ASN, ISP name), and tags (datacenter-network, eyeball-network, cloud provider tags). Use max_results parameter to limit response size since the API typically returns ~3500 active probes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "globalping_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Globalping API Key", "type": "string", "description": "Your Globalping API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "go_high_level", "name": "Go High Level", "logo": "https://logos.composio.dev/api/go_high_level", "description": "All-in-one platform for marketing agencies combining CRM, marketing automation, and client management tools", "category": "marketing", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "go_high_level_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "contacts.readonly,contacts.write,calendars.readonly,calendars.write,conversations.readonly,conversations.write,opportunities.readonly,opportunities.write,users.readonly,locations.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "go_high_level_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Private Integration Token", "type": "string", "description": "Your GoHighLevel Private Integration Token (can be obtained from the integrations section in your GoHighLevel account)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "godial", "name": "Godial", "logo": "https://godial.cc/wp-content/uploads/2020/06/GoDial-Logo-1.png", "description": "GoDial is an automatic call app, mobile CRM, and outbound dialer software that transforms your phone into a call center, enabling efficient management of calls and contacts.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GODIAL_ADD_CONTACT", "name": "Add GoDial Contact", "description": "Add a new contact to a GoDial CRM list. Requires a valid list ID (obtain from List External Lists action) and phone number. Returns the created contact with assigned ID, timestamps, and lead score." }, { "slug": "GODIAL_ADD_LIST", "name": "Add GoDial Contact List", "description": "Tool to create a new contact list in GoDial. Use when you need to add a list for organizing contacts within a team. Requires a valid team ID (obtain from List Accounts action)." }, { "slug": "GODIAL_ADD_TASK", "name": "Add Task to GoDial", "description": "Add a new task to GoDial. Use when you need to create a task and assign it to a specific account. Requires account ID which can be obtained from List Accounts action." }, { "slug": "GODIAL_ADD_TEAM", "name": "Add GoDial Team", "description": "Tool to add a new team to your GoDial company. Use when you need to create a team for organizing accounts or users within your organization." }, { "slug": "GODIAL_DELETE_CONTACT_BY_PHONE", "name": "Delete GoDial Contact by Phone", "description": "Tool to delete a contact from a GoDial list by phone number. Use when you need to remove a specific contact identified by their phone number from a particular list." }, { "slug": "GODIAL_DISPOSE_CONTACT", "name": "Dispose GoDial Contact", "description": "Tool to insert disposition details for a contact (e.g., call outcome). Use after completing a call to record the result. Requires valid disposition status configured in the system." }, { "slug": "GODIAL_LIST_ACCOUNTS", "name": "Retrieve GoDial Accounts", "description": "Tool to retrieve all accounts in the authenticated GoDial account. Use after obtaining access token to fetch available accounts. Supports optional pagination." }, { "slug": "GODIAL_LIST_CONTACTS", "name": "List GoDial Contacts", "description": "Tool to retrieve all contacts from a specific GoDial list. Use when you need to view or enumerate contacts within a list by providing the list ID." }, { "slug": "GODIAL_LIST_EXTERNAL_LISTS", "name": "Retrieve GoDial External Lists", "description": "Tool to retrieve all lists in the authenticated GoDial account. Use when you need to enumerate lists for selecting a target list ID after configuring your External API access token." }, { "slug": "GODIAL_LIST_TASKS", "name": "Retrieve GoDial Tasks", "description": "Tool to retrieve all tasks in the authenticated GoDial account. Use when you need to enumerate tasks for viewing, filtering, or managing task workflows." }, { "slug": "GODIAL_LIST_TEAMS", "name": "Retrieve GoDial Teams", "description": "Tool to retrieve all teams in the authenticated GoDial company. Use when you need to enumerate teams for your company after configuring your External API access token." }, { "slug": "GODIAL_REMOVE_ACCOUNT", "name": "Remove GoDial Account", "description": "Tool to remove a GoDial account. Use when an account needs to be permanently deleted." }, { "slug": "GODIAL_REMOVE_ACCOUNT2", "name": "Remove Account from Company", "description": "Tool to remove an account from your GoDial company. Use when you need to delete a specific account by its ID. Returns the count of accounts removed." }, { "slug": "GODIAL_REMOVE_CONTACT", "name": "Remove GoDial Contact", "description": "Tool to remove a contact from GoDial by ID. Use when a contact needs to be deleted from a list. Returns the count of contacts removed." }, { "slug": "GODIAL_REMOVE_LIST", "name": "Remove GoDial Contact List", "description": "Tool to remove a contact list from GoDial. Use when you need to delete a specific list by its ID." }, { "slug": "GODIAL_REMOVE_TASK", "name": "Remove GoDial Task", "description": "Tool to remove a particular task from GoDial. Use when a task needs to be deleted. Returns the count of tasks removed." }, { "slug": "GODIAL_REMOVE_TEAM", "name": "Remove GoDial Team", "description": "Tool to remove a team from your GoDial company. Use when you need to permanently delete a team from your organization." }, { "slug": "GODIAL_UPDATE_CONTACT", "name": "Update GoDial Contact", "description": "Update an existing contact in GoDial CRM. Requires contact ID and at least one field to update. Returns the updated contact with all current field values." }, { "slug": "GODIAL_UPDATE_LIST", "name": "Update GoDial List", "description": "Tool to update an existing contact list in GoDial. Use when you need to modify list properties such as name, team assignment, call script, or Indiamart integration settings." }, { "slug": "GODIAL_UPDATE_TEAM", "name": "Update GoDial Team", "description": "Update an existing team in GoDial. Requires a valid team ID and the new team name. Returns the updated team details with timestamps." }, { "slug": "GODIAL_VIEW_CONTACT", "name": "View GoDial Contact", "description": "Tool to view details of a specific contact by ID. Use when you need to retrieve complete information about a contact including phone, email, company details, and lead tracking data." }, { "slug": "GODIAL_VIEW_LIST", "name": "View GoDial Contact List Details", "description": "Tool to view details of a specific contact list by ID. Use when you need to retrieve detailed information about a list including its name, associated company/team, and configuration." }, { "slug": "GODIAL_VIEW_TASK", "name": "View GoDial Task", "description": "Tool to view details of a specific task by ID. Use when you need to retrieve information about a task in GoDial. Returns task details including name, status, assigned account, and timestamps." }, { "slug": "GODIAL_VIEW_TEAM", "name": "View GoDial Team", "description": "Tool to view details of a specific team by ID. Use when you need to retrieve information about a particular team in the GoDial account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "godial_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "GoDial Access Token", "type": "string", "description": "The API access token required for authenticating requests to GoDial's API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "goldrush", "name": "Goldrush", "logo": "https://logos.composio.dev/api/goldrush", "description": "Blockchain data API providing access to 100+ blockchain networks with standardized endpoints for balances, transactions, NFTs, and DeFi data", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "goldrush_bearer", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your GoldRush API key (format: cqt_...)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "goodbits", "name": "Goodbits", "logo": "https://goodbits.io/logo.png", "description": "Goodbits is a service that helps you and your business create stellar newsletters from the best links your team and customers are reading.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOODBITS_CREATE_LINK", "name": "Create Link", "description": "Tool to create a content link in Goodbits Content Library. Use when you have an article URL and optional metadata ready." }, { "slug": "GOODBITS_CREATE_SUBSCRIBER", "name": "Create Subscriber", "description": "Tool to add a new subscriber to the newsletter. Use after confirming user opt-in." }, { "slug": "GOODBITS_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Tool to mark a subscriber as deleted. Use when you need to prevent future emails being sent to a subscriber." }, { "slug": "GOODBITS_GET_NEWSLETTER", "name": "Get Newsletter Info", "description": "Tool to fetch newsletter identifier and name. Use after authenticating with your API token." }, { "slug": "GOODBITS_UPDATE_SUBSCRIBER_STATUS", "name": "Update Subscriber Status", "description": "Tool to update subscriber status. Use when you need to change an existing subscriber’s subscription status by email. Example: \"Update the status of john@example.com to unsubscribed\"" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "goodbits_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Goodbits API Token", "type": "string", "description": "The API token used for authenticating requests to the Goodbits API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "goody", "name": "Goody", "logo": "https://www.ongoody.com/favicon.ico", "description": "Goody is a platform that enables users to send gifts and physical products without handling logistics, offering APIs for commerce and automation.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOODY_CALCULATE_PRICE_FOR_ORDER_BATCH", "name": "Calculate Price for Order Batch", "description": "Calculate price estimate for an order batch before creation. Returns per-recipient cart pricing (product, shipping, processing, tax) and total batch cost. All prices are in USD cents (e.g., 100 = $1.00). Use this to preview costs before creating an order batch." }, { "slug": "GOODY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook endpoint to receive notifications about order events. Use when you need to set up automated notifications for order lifecycle events like creation, shipment, or delivery." }, { "slug": "GOODY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Delete a webhook endpoint to stop receiving notifications from Goody API. Use this when you need to remove a webhook endpoint that is no longer needed or needs to be reconfigured. The operation returns a 204 status code on successful deletion." }, { "slug": "GOODY_LIST_ALL_ACTIVE_CARDS", "name": "List All Active Cards", "description": "Tool to list all active digital greeting cards. Use when you need to fetch available card options before sending." }, { "slug": "GOODY_LIST_ALL_ACTIVE_PRODUCTS", "name": "List All Active Products", "description": "Tool to list all active products. Use when you need to fetch available active products with pagination and filters." }, { "slug": "GOODY_LIST_ALL_ORDER_BATCHES", "name": "List All Order Batches", "description": "Tool to list all order batches. Use when you need to paginate through your account's order batches." }, { "slug": "GOODY_LIST_ALL_ORDERS", "name": "List All Orders", "description": "Retrieves a paginated list of all orders across all order batches in your Goody account. Returns order details including recipient information, cart items, amounts, status, and gift links. Supports pagination with customizable page size (1-100 orders per page)." }, { "slug": "GOODY_LIST_ALL_PAYMENT_METHODS", "name": "List All Payment Methods", "description": "Retrieves all saved payment methods for the authenticated account. Payment methods include credit cards and other payment types that can be used when creating orders. No parameters required - simply call this action to get the complete list of payment methods with their IDs, names, and details." }, { "slug": "GOODY_LIST_ALL_WORKSPACES", "name": "List All Workspaces", "description": "Tool to list all workspaces. Use when you need to retrieve all workspaces associated with the account." }, { "slug": "GOODY_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all collections across accessible workspaces. Use when you need to retrieve product collections available in Goody. This endpoint is limited to Automation API usage and returns paginated results." }, { "slug": "GOODY_LIST_ORDER_ACTIVITIES", "name": "List Order Activities", "description": "Tool to list all order activities (events) in your workspace. Returns a paginated list of order status transitions and related events. Use when you need to track order lifecycle events, monitor status changes, or audit order history." }, { "slug": "GOODY_RETRIEVE_CURRENT_USER", "name": "Retrieve Current User", "description": "Retrieve the current authenticated user's profile information from Goody API. This endpoint returns the email and public app ID associated with the authenticated account. Use this to verify authentication status or fetch the current user's account details. No parameters are required - authentication is handled via the Bearer token in headers." }, { "slug": "GOODY_RETRIEVE_PRODUCT", "name": "Retrieve Product", "description": "Tool to retrieve details of a specific product by its ID. Use after obtaining the product ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "goody_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Goody API Key", "type": "string", "description": "Your Goody Commerce API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_address_validation", "name": "Google Address Validation", "logo": "https://logos.composio.dev/api/google_address_validation", "description": "The Address Validation API allows developers to verify the accuracy of addresses by validating and standardizing them, and determining their geocode.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_ADDRESS_VALIDATION_PROVIDE_VALIDATION_FEEDBACK", "name": "Provide Validation Feedback", "description": "Tool to provide feedback on an address validation attempt. Use after completing an address validation sequence." }, { "slug": "GOOGLE_ADDRESS_VALIDATION_VALIDATE_ADDRESS", "name": "Validate Address", "description": "Tool to validate and standardize addresses. Use when you need detailed parsing, geocode, and deliverability verdict of an address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "google_address_validation_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Google API Key", "type": "string", "description": "The API key provided by Google to authenticate requests to the Address Validation API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_admin", "name": "Google Admin", "logo": "https://logos.composio.dev/api/google_admin", "description": "Google Admin Console for managing Google Workspace users, groups, and organizational units.", "category": "security & identity tools", "authSchemes": [ "OAUTH2" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_ADMIN_ADD_USER_ALIAS", "name": "Add Alias to Google Workspace User", "description": "Adds an email alias to a Google Workspace user." }, { "slug": "GOOGLE_ADMIN_ADD_USER_TO_GROUP", "name": "Add User to Google Workspace Group", "description": "Adds a user to a Google Workspace group with the specified role." }, { "slug": "GOOGLE_ADMIN_CREATE_GROUP", "name": "Create Google Workspace Group", "description": "Creates a new Google Workspace group with the specified details." }, { "slug": "GOOGLE_ADMIN_CREATE_USER", "name": "Create Google Workspace User", "description": "Creates a new Google Workspace user with the specified details. Fails if `primary_email` already exists; cannot update existing accounts." }, { "slug": "GOOGLE_ADMIN_DELETE_USER", "name": "Delete Google Workspace User", "description": "Deletes a Google Workspace user permanently. This action cannot be undone." }, { "slug": "GOOGLE_ADMIN_GET_GROUP", "name": "Get Google Workspace Group Details", "description": "Retrieves detailed information about a Google Workspace group." }, { "slug": "GOOGLE_ADMIN_GET_USER", "name": "Get Google Workspace User Details", "description": "Retrieves detailed information about a Google Workspace user." }, { "slug": "GOOGLE_ADMIN_LIST_GROUP_MEMBERS", "name": "List Google Workspace Group Members", "description": "Lists all members of a Google Workspace group with optional filtering and pagination." }, { "slug": "GOOGLE_ADMIN_LIST_GROUPS", "name": "List Google Workspace Groups", "description": "Lists Google Workspace groups with optional filtering and pagination." }, { "slug": "GOOGLE_ADMIN_LIST_USERS", "name": "List Google Workspace Users", "description": "Lists Google Workspace users with optional filtering and pagination." }, { "slug": "GOOGLE_ADMIN_REMOVE_USER_ALIAS", "name": "Remove Alias from Google Workspace User", "description": "Removes an email alias from a Google Workspace user." }, { "slug": "GOOGLE_ADMIN_REMOVE_USER_FROM_GROUP", "name": "Remove User from Google Workspace Group", "description": "Removes a user from a Google Workspace group, revoking their group access." }, { "slug": "GOOGLE_ADMIN_SUSPEND_USER", "name": "Suspend/Unsuspend Google Workspace User", "description": "Suspends or unsuspends a Google Workspace user account." }, { "slug": "GOOGLE_ADMIN_UPDATE_GROUP_SETTINGS", "name": "Update Google Workspace Group Settings", "description": "Updates settings for a Google Workspace group." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_admin_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/admin.directory.user,https://www.googleapis.com/auth/admin.directory.user.readonly,https://www.googleapis.com/auth/admin.directory.user.alias,https://www.googleapis.com/auth/admin.directory.user.alias.readonly,https://www.googleapis.com/auth/admin.directory.group,https://www.googleapis.com/auth/admin.directory.group.readonly,https://www.googleapis.com/auth/admin.directory.group.member,https://www.googleapis.com/auth/admin.directory.group.member.readonly,https://www.googleapis.com/auth/admin.directory.orgunit,https://www.googleapis.com/auth/admin.directory.orgunit.readonly,https://www.googleapis.com/auth/admin.directory.domain,https://www.googleapis.com/auth/admin.directory.domain.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "google_appsheet", "name": "Google AppSheet", "logo": "https://logos.composio.dev/api/google_appsheet", "description": "Build powerful no-code applications and automate workflows with Google AppSheet. Create custom apps that connect to your data sources without writing code.", "category": "app builder", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "google_appsheet_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Application Access Key", "type": "string", "description": "To get your Application Access Key: Open your app in the editor > Settings > Integrations > Enable API toggle > Create Application Access Key. Copy the key (format: V2-xxxxx-xxxxx-xxxxx)", "required": true, "default": null }, { "name": "generic_id", "displayName": "App ID", "type": "string", "description": "Your AppSheet App ID. Find it in Settings > Integrations.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_chat", "name": "Google Chat", "logo": "https://logos.composio.dev/api/google_chat", "description": "Google Chat API integration for messaging and collaboration in Google Workspace", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 45, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_CHAT_COMPLETE_IMPORT", "name": "Complete Space Import", "description": "Completes the import process for an import-mode Google Chat space and makes it visible to users. Use this action at the end of a data migration into Google Workspace, after all messages and memberships have been imported into a space that was created with `importMode: true`. Requires user authentication with domain-wide delegation (service-account flow) and the `chat.import` OAuth scope. Cannot be called with regular user OAuth." }, { "slug": "GOOGLE_CHAT_CREATE_CUSTOM_EMOJI", "name": "Create Custom Emoji", "description": "Creates a custom emoji in Google Chat for use within an organization. Use this action when you need to add a custom emoji that can be used by members of your Google Workspace organization. The emoji will be available in Google Chat after creation. Note: Custom emojis are only available for Google Workspace accounts and require the administrator to enable custom emojis for the organization. This is a Developer Preview feature." }, { "slug": "GOOGLE_CHAT_CREATE_MEMBER", "name": "Create Space Member", "description": "Creates a membership for a user, Chat app, or Google Group in a space. When creating a membership, if the member has auto-accept turned off, they're invited and must accept the invitation before joining. Use this action when you need to add a new member to a Google Chat space. This can be used to invite individual users, add Chat apps, or add Google Groups to a space. If the member requires acceptance, they will receive an invitation. Note: App authentication cannot add users external to the Workspace organization, add Google Groups, or add Chat apps to a space." }, { "slug": "GOOGLE_CHAT_CREATE_MESSAGE", "name": "Create Message", "description": "Creates a message in a Google Chat space. With user authentication, only text messages are supported. Maximum message size is 32,000 bytes. Use this action when you need to send a message to a Google Chat space or channel. You can reply to existing threads by providing a thread_key, or start a new conversation. Messages can mention users using '@username' syntax. Note: With user auth, only plain text messages are supported. Card-based messages require bot authentication." }, { "slug": "GOOGLE_CHAT_CREATE_REACTION", "name": "Create Reaction", "description": "Creates an emoji reaction on a Google Chat message. Use this action when you need to add an emoji reaction (like 👍, ❤️, or 🎉) to an existing message in a Google Chat space. Either emoji_unicode or emoji_custom_id is required, but not both. This action is useful for acknowledging messages, voting on ideas, expressing emotions in response to messages, or building interactive message features in Google Chat bots." }, { "slug": "GOOGLE_CHAT_CREATE_SECTION", "name": "Create section", "description": "Creates a custom section in Google Chat for organizing conversations in the navigation panel. Use when you need to create a new custom section to organize spaces and direct messages in the user's Chat sidebar." }, { "slug": "GOOGLE_CHAT_CREATE_SPACE", "name": "Create Space", "description": "Creates a named space or group chat in Google Chat. The calling user is automatically added as a member and space manager. Use this action when you need to create a new Google Chat space for team collaboration, project discussions, or group conversations. This action creates a named space that users can discover and join. Note: If you receive the error ALREADY_EXISTS when creating a space, try a different displayName. The displayName must be unique within the organization." }, { "slug": "GOOGLE_CHAT_DELETE_CUSTOM_EMOJI", "name": "Delete Custom Emoji", "description": "Deletes a custom emoji from Google Chat. By default, users can only delete custom emojis they created. Emoji managers assigned by the administrator can delete any custom emoji in the organization. Use this action when you need to permanently remove a custom emoji that is no longer needed. This action is irreversible — once deleted, the custom emoji cannot be recovered." }, { "slug": "GOOGLE_CHAT_DELETE_MEMBER", "name": "Delete Member from Space", "description": "Removes a user, Google Group, or app from a space. This action is irreversible — once removed, the member cannot be recovered and will need to be re-added to the space. Use when you need to remove a specific member from a Google Chat space. Note: Deleted members will lose access to the space immediately and will need to be re-invited if they need access again." }, { "slug": "GOOGLE_CHAT_DELETE_MESSAGE", "name": "Delete Message", "description": "Deletes a message from a Google Chat space. Use this action when you need to remove a message that is no longer needed, was posted in error, or is outdated. App authentication can only delete messages created by the calling Chat app. User authentication with proper permissions can delete any message in a space they manage. This action is irreversible — once deleted, the message cannot be recovered." }, { "slug": "GOOGLE_CHAT_DELETE_REACTION", "name": "Delete Reaction", "description": "Deletes a reaction to a message. Use when you need to remove a reaction that was previously added to a message. Users can only delete their own reactions. This action is irreversible — once the reaction is deleted, it cannot be recovered." }, { "slug": "GOOGLE_CHAT_DELETE_SECTION", "name": "Delete section", "description": "Deletes a custom section from Google Chat by its ID. This action is irreversible — once a section is deleted, it cannot be recovered. If the section contains items (such as spaces), they are moved to Google Chat's default sections and are not deleted. Use when you need to remove a custom section that is no longer needed." }, { "slug": "GOOGLE_CHAT_DELETE_SPACE", "name": "Delete space", "description": "Deletes a named space from Google Chat. Always performs a cascading delete, which means that the space's child resources like messages and memberships are also deleted. Use this action when you need to permanently remove a Google Chat space and all associated data. This action is irreversible — the space and all its messages and memberships cannot be recovered once deleted." }, { "slug": "GOOGLE_CHAT_DOWNLOAD_MEDIA", "name": "Download Media", "description": "Downloads the bytes of a Google Chat message attachment via the media API. Use this after `get_attachment` to fetch the actual file content for an attachment. The `resource_name` parameter is the `attachmentDataRef.resourceName` returned by `get_attachment`. Returns the downloaded file. The download endpoint adds `?alt=media` automatically, which is required by Google to return raw bytes rather than the JSON Media resource." }, { "slug": "GOOGLE_CHAT_FIND_DIRECT_MESSAGE", "name": "Find Direct Message", "description": "Returns the existing direct message space with the specified user. Use this action when you need to find an existing DM space with a particular user, such as when checking if a DM already exists before creating one or when you need the space resource name for subsequent operations. If no direct message space exists with the specified user, this action returns a NOT_FOUND (404) error. Note: This only finds existing DM spaces - it does not create a new one. To create a new DM, use the create DM action instead." }, { "slug": "GOOGLE_CHAT_FIND_GROUP_CHATS", "name": "Find Group Chats", "description": "Finds all group chat spaces that contain exactly the calling user and the specified users. This action uses the Google Chat Developer Preview API to search for GROUP_CHAT spaces whose human memberships contain exactly the calling user and the specified users. Use this action when you need to find existing group chats that include specific participants." }, { "slug": "GOOGLE_CHAT_GET_ATTACHMENT", "name": "Get Attachment", "description": "Gets the metadata of a Google Chat message attachment. Returns the attachment's content type, filename, source, and references that can be used to download the file via the media API. To fetch the binary bytes of the attachment, pass the returned `attachmentDataRef.resourceName` to the `download_media` action. Requires Chat app authentication (the `chat.bot` scope) — this endpoint is not callable with regular user OAuth." }, { "slug": "GOOGLE_CHAT_GET_CUSTOM_EMOJI", "name": "Get Custom Emoji", "description": "Returns details about a custom emoji in Google Chat. Custom emojis are only available for Google Workspace accounts, and the administrator must turn custom emojis on for the organization. Use this action when you need to retrieve information about a specific custom emoji, such as its name, unique identifier, or temporary image URL. This is useful for displaying emoji details or verifying emoji existence before performing other operations. Note: The `payload` field is only populated when creating or updating custom emojis and is not returned when getting emoji details." }, { "slug": "GOOGLE_CHAT_GET_MEMBER", "name": "Get Chat Space Member", "description": "Returns details about a membership in a space. Use this action when you need to retrieve information about a specific member's relationship with a Google Chat space, including their role, state, and user details." }, { "slug": "GOOGLE_CHAT_GET_MESSAGE", "name": "Get Message", "description": "Returns details about a specific message in a Google Chat space. Use this action when you need to retrieve the full content, sender information, thread details, and other metadata for a particular message. Requires user authentication with an appropriate Google Chat OAuth scope." }, { "slug": "GOOGLE_CHAT_GET_SPACE", "name": "Get Space", "description": "Returns details about a specific Google Chat space including configuration, membership count, and access settings. Use this action when you need to retrieve information about a specific space in Google Chat, such as getting the space's display name, description, membership count, threading state, or access settings. Note: Some response fields are only populated based on the OAuth scopes used. The accessSettings, predefinedPermissionSettings, and permissionSettings fields are only populated when using the chat.app.spaces scope. Requires user authentication with one of the following OAuth scopes: - https://www.googleapis.com/auth/chat.admin.spaces - https://www.googleapis.com/auth/chat.admin.spaces.readonly - https://www.googleapis.com/auth/chat.app.spaces - https://www.googleapis.com/auth/chat.bot - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.spaces.readonly" }, { "slug": "GOOGLE_CHAT_GET_SPACE_EVENT", "name": "Get Space Event", "description": "Returns an event from a Google Chat space. The event payload contains the most recent version of the resource that changed. Use this action when you need to retrieve details about a specific space event, such as a new message, membership change, reaction, or space update. If the resource was modified after the event occurred, the server returns the updated resource in the event payload. Note: The `permissionSettings` field is not returned in the Space object of the Space event." }, { "slug": "GOOGLE_CHAT_GET_SPACE_NOTIFICATION_SETTING", "name": "Get Space Notification Setting", "description": "Gets the notification settings for a user in a specific space. Use when you need to retrieve the caller's space notification setting, including whether notifications are muted and what type of notifications are enabled. Requires user authentication with the `https://www.googleapis.com/auth/chat.users.spacesettings` OAuth scope." }, { "slug": "GOOGLE_CHAT_GET_SPACE_READ_STATE", "name": "Get space read state", "description": "Returns details about a user's read state within a space. Use this action when you need to identify which messages in a space have been read or unread by the user." }, { "slug": "GOOGLE_CHAT_GET_THREAD_READ_STATE", "name": "Get thread read state", "description": "Returns details about a user's read state within a thread. Use this action when you need to identify which messages in a specific thread have been read or unread by the user." }, { "slug": "GOOGLE_CHAT_LIST_CUSTOM_EMOJIS", "name": "List custom emojis", "description": "Lists custom emojis visible to the authenticated user in Google Chat. Use this action when you need to retrieve all custom emojis available in Google Chat for the authenticated user. This is useful for displaying available emojis, filtering by creator, or enumerating organization-specific custom emojis. Supports pagination via pageSize and pageToken parameters. By default, returns up to 25 emojis." }, { "slug": "GOOGLE_CHAT_LIST_MEMBERS", "name": "List Space Members", "description": "Lists memberships in a space. Returns a list of all members including users, bots, and Google Groups. Use when you need to retrieve all members of a Google Chat space, such as to get a list of participants, check who has access, or find specific members by role or type. Supports pagination when there are many members in a space. Use the nextPageToken from a response to fetch subsequent pages." }, { "slug": "GOOGLE_CHAT_LIST_MESSAGES", "name": "List Messages", "description": "Lists messages in a space that the authenticated user is a member of. Use this action when you need to retrieve messages from a Google Chat space, such as displaying message history, searching for specific messages, or monitoring space activity. Supports filtering and ordering of messages. Pagination is available via pageToken for retrieving large message sets. Requires user authentication with one of the following OAuth scopes: - https://www.googleapis.com/auth/chat.messages - https://www.googleapis.com/auth/chat.messages.readonly - https://www.googleapis.com/auth/chat.import" }, { "slug": "GOOGLE_CHAT_LIST_REACTIONS", "name": "List reactions on a message", "description": "Lists all reactions on a specific message in a Google Chat space. Use when you need to retrieve all emoji reactions (likes, thumbs up, hearts, etc.) that users have added to a message. This action is read-only and does not modify any data. The results can be filtered by emoji type or user using the filter parameter." }, { "slug": "GOOGLE_CHAT_LIST_SECTION_ITEMS", "name": "List Section Items", "description": "Lists all items (such as spaces) within a specified section of a user's Google Chat. Use when you need to retrieve all items grouped under a section in Google Chat, or when implementing pagination to fetch all items across multiple pages. Sections can be system sections like 'default-spaces' or custom sections created by the user. Requires user authentication with the `https://www.googleapis.com/auth/chat.users.sections.readonly` (read-only) or `https://www.googleapis.com/auth/chat.users.sections` (full access) OAuth scope." }, { "slug": "GOOGLE_CHAT_LIST_SECTIONS", "name": "List Sections", "description": "Lists all sections available to the authenticated user in Google Chat. Use this action when you need to retrieve all sections for organizing conversations in the navigation panel. Sections include custom sections created by the user and system sections like default direct messages, default spaces, and default apps. Requires user authentication with one of the following OAuth scopes: - https://www.googleapis.com/auth/chat.users.sections - https://www.googleapis.com/auth/chat.users.sections.readonly" }, { "slug": "GOOGLE_CHAT_LIST_SPACE_EVENTS", "name": "List Space Events", "description": "Lists events from a Google Chat space. Use when you need to retrieve historical events such as new messages, membership changes, or reactions from a specific Google Chat space. The filter parameter is required and must specify event type filters. Note: This action requires specifying event type filters in the filter parameter. Supported event types include message events (created, updated, deleted), membership events (created, updated, deleted), and reaction events." }, { "slug": "GOOGLE_CHAT_LIST_SPACES", "name": "List Spaces", "description": "Lists spaces the authenticated user is a member of in Google Chat. Use this action when you need to retrieve all spaces that the user belongs to, such as displaying available spaces or finding a specific space. Note: Group chats and direct messages (DMs) are not listed until the first message is sent. Requires user authentication with one of the following OAuth scopes: - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.spaces.readonly - https://www.googleapis.com/auth/chat.bot" }, { "slug": "GOOGLE_CHAT_MOVE_SECTION_ITEM", "name": "Move Section Item", "description": "Moves a space from one section to another in Google Chat. Use when organizing spaces into different sections, such as moving a space from the default-spaces section to a custom user-created section. The action updates the section membership of the specified space item." }, { "slug": "GOOGLE_CHAT_POSITION_SECTION", "name": "Position Section in Sidebar", "description": "Changes the sort order of a section in the Google Chat sidebar. Use when you need to reorder sections in the sidebar. Either sortOrder (absolute position) or relativePosition (START/END) must be provided to specify the new position." }, { "slug": "GOOGLE_CHAT_REPLACE_MESSAGE", "name": "Replace Message (Full)", "description": "Replaces an existing message in a Google Chat space using full replacement. Use this action when you need to completely replace a message's content, including text, cards, and other properties. Unlike patch which modifies specific fields, this action replaces the entire message. Note: Google recommends using the patch method for partial updates. This PUT method does a full replacement of the specified fields. App authentication can only replace messages created by the calling Chat app. User authentication with appropriate permissions can replace any message in spaces they manage." }, { "slug": "GOOGLE_CHAT_SEARCH_SPACES", "name": "Search Spaces", "description": "Searches for spaces across a Google Workspace organization using administrator privileges. Use this action to find spaces in your Workspace org by filtering on create time, customer, display name, external user allowed, last active time, history state, or space type. Requires the caller to be a Google Workspace administrator and to pass `use_admin_access=true`. Requires one of the chat.admin.spaces / chat.admin.spaces.readonly scopes (or the equivalent user-mode chat.spaces / chat.spaces.readonly scopes)." }, { "slug": "GOOGLE_CHAT_SET_UP_SPACE", "name": "Setup Space", "description": "Creates a space and adds specified users and groups to it. Use this action when you need to create a space in Google Chat and automatically add initial members in a single operation. The calling user is automatically added to the created space. Supports creating named spaces (SPACE), group chats (GROUP_CHAT), and direct messages (DIRECT_MESSAGE). For named spaces, displayName is required. For group chats and DMs, at least one membership is typically required. Note: Google groups can only be added to named spaces. If a DM already exists between users, the existing DM is returned instead of creating a new one. Requires user authentication with one of the following OAuth scopes: - https://www.googleapis.com/auth/chat.spaces - https://www.googleapis.com/auth/chat.spaces.create" }, { "slug": "GOOGLE_CHAT_UPDATE_MEMBER", "name": "Update Member", "description": "Updates a membership in a Google Chat space, such as changing a member's role between member and manager. Use this action when you need to modify a user's role or permissions within a Google Chat space." }, { "slug": "GOOGLE_CHAT_UPDATE_MESSAGE", "name": "Update Message", "description": "Updates a message in a Google Chat space, modifying its text, cards, or other properties. Use this action when you need to edit an existing message's content or properties. Supports partial updates via the updateMask parameter. App authentication can only update messages created by the calling Chat app. User authentication with appropriate permissions can update any message in spaces they manage." }, { "slug": "GOOGLE_CHAT_UPDATE_SECTION", "name": "Update section", "description": "Updates a section's display name in Google Chat. This action uses patch semantics for partial updates. Use when you need to rename an existing custom section in Google Chat. Only sections of type 'CUSTOM_SECTION' can be updated. System sections (like 'default-direct-messages', 'default-spaces', 'default-apps') cannot have their display names modified. Requires user authentication with the 'https://www.googleapis.com/auth/chat.users.sections' scope." }, { "slug": "GOOGLE_CHAT_UPDATE_SPACE", "name": "Update Space", "description": "Updates a Google Chat space's configuration including display name, description, guidelines, history settings, access settings, and permission settings. Use this action when you need to modify the settings of an existing Google Chat space that you have admin or manager permissions for." }, { "slug": "GOOGLE_CHAT_UPDATE_SPACE_NOTIFICATION_SETTING", "name": "Update Space Notification Setting", "description": "Updates the notification settings for a user in a space. Use when you need to modify how a user receives notifications in a specific space, such as muting a noisy channel or changing the notification level to only important messages. Requires user authentication with the chat.users.spacesettings scope." }, { "slug": "GOOGLE_CHAT_UPDATE_SPACE_READ_STATE", "name": "Update Space Read State", "description": "Updates a user's read state within a space, used to mark messages as read or unread. Use this action when you need to programmatically mark a Google Chat space as read or update the user's read position in a space. Note: To mark a space as unread, set lastReadTime to a value earlier than the latest message timestamp. To mark as read, set it to any value later than the latest message." }, { "slug": "GOOGLE_CHAT_UPLOAD_MEDIA", "name": "Upload Media Attachment", "description": "Uploads a file as an attachment to a Google Chat space using the multipart media upload endpoint. Use this when sending a file to a Chat space. The returned `attachmentUploadToken` can then be passed into `create_message` (under `attachments[].attachmentDataRef.attachmentUploadToken`) to include the file in a message. The upload uses Google's `multipart` upload protocol: a metadata part (JSON with `filename`) plus the binary file part, sent to `/upload/v1/{parent}/attachments:upload?uploadType=multipart`. Maximum file size is 200 MB. Requires user authentication. One of: `chat.import`, `chat.messages`, `chat.messages.create`." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_chat_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/chat.spaces.readonly,https://www.googleapis.com/auth/chat.spaces,https://www.googleapis.com/auth/chat.messages.readonly,https://www.googleapis.com/auth/chat.messages,https://www.googleapis.com/auth/chat.messages.create,https://www.googleapis.com/auth/chat.memberships.readonly,https://www.googleapis.com/auth/chat.memberships" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "google_classroom", "name": "Google Classroom", "logo": "https://logos.composio.dev/api/google_classroom", "description": "Google Classroom is a free web service developed by Google for schools that aims to simplify creating, distributing, and grading assignments", "category": "education", "authSchemes": [ "OAUTH2" ], "toolCount": 62, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_CLASSROOM_COURSES_ALIASES_CREATE", "name": "Create Course Alias", "description": "Tool to create an alias for a course. Use when you need to add an alternative identifier to a course after confirming the course ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ALIASES_DELETE", "name": "Delete Course Alias", "description": "Tool to delete an alias of a course. Use when you need to remove an alias from a course after confirming the course ID and alias name." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ALIASES_LIST", "name": "List Course Aliases", "description": "Tool to list aliases for a course. Use when you need to retrieve all aliases associated with a specific course." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_CREATE", "name": "Create Announcement", "description": "Tool to create an announcement in a course. Use after confirming the course ID is valid." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_DELETE", "name": "Delete Announcement", "description": "Tool to delete an announcement. Use after confirming the announcement ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_GET", "name": "Get Announcement", "description": "Tool to get an announcement. Use when you need to fetch an announcement by course and announcement ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_GET_ADD_ON_CONTEXT", "name": "Get Add-on Context for Announcement", "description": "Tool to get metadata for Classroom add-ons in the context of a specific announcement post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_LIST", "name": "List Announcements", "description": "Tool to list announcements in a course. Use after you have the course ID to page through announcements." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_MODIFY_ASSIGNEES", "name": "Modify Announcement Assignees", "description": "Tool to modify assignee mode and options of an announcement. Use when you need to change who can view an announcement, either making it visible to all students or to specific students only." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCEMENTS_PATCH", "name": "Patch Announcement", "description": "Tool to update fields of an announcement. Use when you need to modify specific details of an existing announcement after confirming which fields to update." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCES_ADD_ON_ATTACHS_DELETE", "name": "Delete Add-on Attachment", "description": "Tool to delete an add-on attachment from a course announcement. Requires the add-on to have been the original creator of the attachment." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCES_ADD_ON_ATTACHS_GET", "name": "Get Add-on Attachment", "description": "Tool to get an add-on attachment from an announcement. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator." }, { "slug": "GOOGLE_CLASSROOM_COURSES_ANNOUNCES_ADD_ON_ATTACHS_LIST", "name": "List Add-on Attachments", "description": "Tool to list all add-on attachments created under an announcement. Use when you need to retrieve attachments added by an add-on. Requires the add-on to have active attachments on the post or permission to create new attachments." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_ADD_ON_ATTACHS_DELETE", "name": "Delete Add-on Attachment", "description": "Tool to delete an add-on attachment from course work. Use when the add-on needs to remove an attachment it originally created. Requires the add-on to have been the original creator of the attachment." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_GET_ADD_ON_CONTEXT", "name": "Get Add-on Context for Course Work", "description": "Tool to get metadata for Classroom add-ons in the context of a specific course work. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_MATERIALS_ADD_ATTACHS", "name": "List Add-on Attachments on Course Work Material", "description": "Tool to list all add-on attachments under a course work material post. Use when you need to retrieve attachments created by an add-on. Requires the add-on to have active attachments or permission to create new attachments on the post." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_MATERIALS_DELETE", "name": "Delete Course Work Material", "description": "Tool to delete a course work material. Use after confirming the course work material ID and course ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_MODIFY_ASSIGNEES", "name": "Modify CourseWork Assignees", "description": "Tool to modify assignee mode and options of coursework. Use when you need to change who can view coursework, either making it visible to all students or to specific students only." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSE_WORK_PATCH", "name": "Patch Course Work", "description": "Tool to update one or more fields of a course work. Use when you need to modify specific details of an existing course work after confirming which fields to update." }, { "slug": "GOOGLE_CLASSROOM_COURSES_COURSEWORK_RUBRICS_LIST", "name": "List Course Work Rubrics", "description": "Tool to list rubrics for a specific coursework. Use when you need to retrieve grading rubrics that the requester has permission to view." }, { "slug": "GOOGLE_CLASSROOM_COURSES_CREATE", "name": "Create Course", "description": "Tool to create a new course. Use when a teacher needs to establish a Classroom course before enrollment." }, { "slug": "GOOGLE_CLASSROOM_COURSES_DELETE", "name": "Delete Course", "description": "Tool to delete a course. Use when you need to remove a course after confirming the course ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_GET", "name": "Get Course", "description": "Tool to get details for a specific course. Use when you need full course information by ID." }, { "slug": "GOOGLE_CLASSROOM_COURSES_GET_GRADING_PERIOD_SETTINGS", "name": "Get Grading Period Settings", "description": "Tool to retrieve grading period settings for a course. Use when you need to access the grading periods configured in a course." }, { "slug": "GOOGLE_CLASSROOM_COURSES_LIST", "name": "List Courses", "description": "Tool to list all courses accessible to the authenticated user. Use when you need a paginated list of courses." }, { "slug": "GOOGLE_CLASSROOM_COURSES_PATCH", "name": "Patch Course", "description": "Tool to update one or more fields of a Classroom course. Use after retrieving course details and confirming fields to update." }, { "slug": "GOOGLE_CLASSROOM_COURSES_POSTS_ADD_ON_ATTACHMENTS_LIST", "name": "List Post Add-on Attachments", "description": "Tool to list all add-on attachments created under a post. Use when you need to retrieve attachments added by an add-on. Requires the add-on to have active attachments on the post or permission to create new attachments." }, { "slug": "GOOGLE_CLASSROOM_COURSES_POSTS_GET_ADD_ON_CONTEXT", "name": "Get Add-on Context for Post", "description": "Tool to get metadata for Classroom add-ons in the context of a specific post. Use when validating query parameters and user permissions for add-ons loading in an iframe. Returns the current user's role (student or teacher) with exactly one context field populated." }, { "slug": "GOOGLE_CLASSROOM_COURSES_STUDENTS_CREATE", "name": "Add Student to Course", "description": "Tool to add a student to a course. Use when enrolling a user as a student in a course. Domain administrators can directly enroll users; students can self-enroll with an enrollment code." }, { "slug": "GOOGLE_CLASSROOM_COURSES_STUDENTS_DELETE", "name": "Delete Course Student", "description": "Tool to delete a student from a course. Use when you need to remove a student's enrollment from a specific course. This revokes their access to course materials and participation." }, { "slug": "GOOGLE_CLASSROOM_COURSES_STUDENTS_GET", "name": "Get Course Student", "description": "Tool to retrieve a specific student of a course. Use when you need to get detailed information about a student enrolled in a course by courseId and userId." }, { "slug": "GOOGLE_CLASSROOM_COURSES_STUDENTS_GUARDIANS_LIST", "name": "List Student Guardians", "description": "Tool to list guardians of a student in a course. Use when you need to retrieve and paginate guardians for a given student in a course." }, { "slug": "GOOGLE_CLASSROOM_COURSES_STUDENTS_LIST", "name": "List Course Students", "description": "Tool to list students in a course. Use after you have the course ID to page through enrolled students." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TEACHERS_DELETE", "name": "Delete Course Teacher", "description": "Tool to delete a teacher from a course. Use when you need to remove a teacher's enrollment from a specific course. This revokes their teaching access to the course." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TEACHERS_GET", "name": "Get Teacher", "description": "Tool to get teacher enrollment. Use when you need to retrieve a specific teacher in a course by courseId and userId." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TEACHERS_LIST", "name": "List Course Teachers", "description": "Tool to list teachers in a course. Use after you have the course ID to page through enrolled teachers." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TOPICS_CREATE", "name": "Create Course Topic", "description": "Tool to create a course topic. Use when you need to organize course content into named sections." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TOPICS_DELETE", "name": "Delete Course Topic", "description": "Tool to delete a course topic. Use when you need to remove a topic from a course after confirming the course and topic IDs." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TOPICS_GET", "name": "Get Course Topic", "description": "Tool to get a course topic. Use when you need to retrieve details of a specific course topic by ID after confirming the course and topic IDs." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TOPICS_LIST", "name": "List Course Topics", "description": "Tool to list topics in a course. Use when you have confirmed the courseId and need to retrieve its topics." }, { "slug": "GOOGLE_CLASSROOM_COURSES_TOPICS_PATCH", "name": "Patch Course Topic", "description": "Tool to update fields of a course topic. Use when you need to rename a topic after confirming its current details." }, { "slug": "GOOGLE_CLASSROOM_COURSES_UPDATE", "name": "Update Course", "description": "Tool to update a course. Use when you need to modify course details like name, description, or state. This performs a full update (PUT) of the course." }, { "slug": "GOOGLE_CLASSROOM_COURSES_WORK_MATERIALS_PATCH", "name": "Patch Course Work Material", "description": "Tool to update fields of a course work material. Use when you need to modify specific details of an existing course work material after confirming which fields to update." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_CREATE", "name": "Create CourseWork", "description": "Tool to create a CourseWork item in a course. Use when you need to assign an assignment or question to students immediately or on a schedule." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_DELETE", "name": "Delete CourseWork", "description": "Tool to delete a specific CourseWork. Use when you need to remove a coursework item from a course after confirming the IDs." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_GET", "name": "Get CourseWork", "description": "Tool to get details of a specific coursework. Use when detailed information about a particular assignment is needed." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_LIST", "name": "List CourseWork", "description": "Tool to list coursework in a course. Use after verifying courseId." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_MATERIALS_CREATE", "name": "Create Course Work Material", "description": "Tool to create course work material. Use when adding resources or notes to a course." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_MATERIALS_GET", "name": "Get Coursework Material", "description": "Tool to get a coursework material. Use when you need to retrieve details of a specific coursework material by course and material ID." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_MATERIALS_LIST", "name": "List CourseWorkMaterials", "description": "Tool to list course work materials in a course. Use when you need to retrieve and paginate materials for a given courseId." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_STUDENT_SUBMISSIONS_LIST", "name": "List Student Submissions", "description": "Tool to list student submissions for a specific coursework. Use when you need to fetch or paginate student submissions by course and coursework, optionally filtering by user, state, or timeliness." }, { "slug": "GOOGLE_CLASSROOM_COURSE_WORK_STUDENT_SUBMISSIONS_RECLAIM", "name": "Reclaim Student Submission", "description": "Tool to reclaim a student submission for editing. Use after a student requests to edit their turned-in submission, resetting its state to CREATED." }, { "slug": "GOOGLE_CLASSROOM_GET_COURSEWORK_ADDON_ATTACHMENT", "name": "Get CourseWork Add-on Attachment", "description": "Tool to get an add-on attachment from course work. Use when you need to retrieve a specific add-on attachment. Requires the add-on requesting the attachment to be the original creator." }, { "slug": "GOOGLE_CLASSROOM_GET_COURSEWORK_MATERIAL_ADDON_CONTEXT", "name": "Get Add-on Context for Course Work Material", "description": "Tool to get metadata for Classroom add-ons in the context of a specific course work material. Use when validating query parameters for add-ons loading in an iframe. Returns course/item identifiers and role-specific context." }, { "slug": "GOOGLE_CLASSROOM_INVITATIONS_CREATE", "name": "Create Invitation", "description": "Tool to create an invitation for a user to a course. Use after confirming the course ID is valid." }, { "slug": "GOOGLE_CLASSROOM_INVITATIONS_DELETE", "name": "Delete Invitation", "description": "Tool to delete an invitation. Use when you need to remove an invitation after confirming the invitation ID." }, { "slug": "GOOGLE_CLASSROOM_INVITATIONS_GET", "name": "Get Invitation", "description": "Tool to retrieve an invitation by its identifier. Use when you need to view invitation details." }, { "slug": "GOOGLE_CLASSROOM_INVITATIONS_LIST", "name": "List Invitations", "description": "Tool to list invitations that the requesting user is permitted to view. At least one of userId or courseId must be supplied." }, { "slug": "GOOGLE_CLASSROOM_LIST_COURSES_STUDENT_GROUPS", "name": "List Course Student Groups", "description": "Tool to list student groups in a course. Use when you need to retrieve groups within a specific course." }, { "slug": "GOOGLE_CLASSROOM_LIST_COURSEWORK_ADDON_ATTACHMENTS", "name": "List CourseWork Add-on Attachments", "description": "Tool to list all add-on attachments created by an add-on under a course work. Use when you need to retrieve attachments added by an add-on to course work." }, { "slug": "GOOGLE_CLASSROOM_REGISTRATIONS_CREATE", "name": "Create Registration", "description": "Tool to create a registration for push notifications from Google Classroom. Use when you need to set up notifications from a specific feed to a Cloud Pub/Sub topic. Requires the OAuth scope https://www.googleapis.com/auth/classroom.push-notifications." }, { "slug": "GOOGLE_CLASSROOM_USER_PROFILES_GET", "name": "Get User Profile", "description": "Tool to retrieve a user profile by user ID. Use when you need to get information about a specific user including their name, email, photo, and permissions." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googleclassroom_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/classroom.courses.readonly,https://www.googleapis.com/auth/classroom.coursework.students,https://www.googleapis.com/auth/classroom.courseworkmaterials,https://www.googleapis.com/auth/classroom.topics,https://www.googleapis.com/auth/classroom.rosters.readonly,https://www.googleapis.com/auth/classroom.announcements,https://www.googleapis.com/auth/classroom.course-work.readonly,https://www.googleapis.com/auth/classroom.student-submissions.students.readonly,https://www.googleapis.com/auth/classroom.student-submissions.me.readonly,https://www.googleapis.com/auth/classroom.coursework.me,https://www.googleapis.com/auth/classroom.announcements.readonly,https://www.googleapis.com/auth/classroom.courseworkmaterials.readonly,https://www.googleapis.com/auth/classroom.topics.readonly,https://www.googleapis.com/auth/classroom.guardianlinks.students.readonly,https://www.googleapis.com/auth/classroom.guardianlinks.me.readonly,https://www.googleapis.com/auth/classroom.push-notifications,https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "google_cloud_console", "name": "Google Cloud Console", "logo": "https://logos.composio.dev/api/google_cloud_console", "description": "Google Cloud Platform provides cloud computing services including compute, storage, networking, big data, machine learning and IoT, as well as cloud management, security and developer tools.", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_cloud_console_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-platform.read-only,https://www.googleapis.com/auth/compute,https://www.googleapis.com/auth/compute.readonly,https://www.googleapis.com/auth/devstorage.read_only,https://www.googleapis.com/auth/devstorage.read_write,https://www.googleapis.com/auth/devstorage.full_control,openid,profile,email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "google_cloud_console_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Google Cloud API Key from the Credentials page in GCP Console", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_cloud_translate", "name": "Google Cloud Translation", "logo": "https://logos.composio.dev/api/google_cloud_translate", "description": "Dynamically translate between thousands of language pairs using Google Cloud machine learning. Support for both basic translation (v2) and advanced features.", "category": "artificial intelligence", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_cloud_translate_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-translation" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "google_cloud_translate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Your Google Cloud API Key. Create one in the Google Cloud Console under APIs & Services → Credentials. Requires Cloud Translation API to be enabled.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_cloud_vision", "name": "Google Cloud Vision", "logo": "https://logos.composio.dev/api/google_cloud_vision", "description": "Google Cloud Vision API enables developers to integrate vision detection features into applications, including image labeling, face and landmark detection, optical character recognition (OCR), and explicit content tagging.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_CLOUD_VISION_ANNOTATE_FILES", "name": "Annotate Files with Vision API", "description": "Tool to perform image detection and annotation for batch files in Google Cloud Vision. Supports PDF, TIFF, and GIF files. Extracts up to 5 frames (GIF) or pages (PDF/TIFF) from each file and performs detection for each image. Use when you need to analyze documents or multi-page images with features like text detection, label detection, face detection, or other Vision API capabilities." }, { "slug": "GOOGLE_CLOUD_VISION_ANNOTATE_FILES_ASYNC_BATCH", "name": "Async Batch Annotate Files", "description": "Tool to run asynchronous image detection and annotation for a list of generic files (PDF, TIFF, GIF). Use when processing multi-page documents that may contain multiple images per page. Results are written to Google Cloud Storage and progress can be tracked via the returned operation name using VisionGetOperation." }, { "slug": "GOOGLE_CLOUD_VISION_ANNOTATE_IMAGES", "name": "Annotate Images", "description": "Run image detection and annotation for a batch of images using Google Cloud Vision API. Performs various types of image analysis including face detection, landmark detection, logo detection, label detection, text detection (OCR), safe search detection, image properties, crop hints, web detection, product search, and object localization. Supports up to 16 images in a single batch request. Each image can have multiple feature types analyzed simultaneously." }, { "slug": "GOOGLE_CLOUD_VISION_ANNOTATE_IMAGES_ASYNC_BATCH", "name": "Annotate Images Async Batch", "description": "Tool to run asynchronous image detection and annotation for a batch of images. Use when processing multiple images or large images that require longer processing time. Results are written to Google Cloud Storage as JSON files." }, { "slug": "GOOGLE_CLOUD_VISION_ANNOTATE_LOCATION_IMAGES", "name": "Annotate Location Images", "description": "Tool to run image detection and annotation for a batch of images scoped to a specific project and location. Performs various types of image analysis including label detection, face detection, landmark detection, logo detection, OCR text detection, safe search detection, image properties, crop hints, web detection, product search, and object localization. Supports processing up to 16 images per request with regional endpoint routing (us, asia, eu). Use this when you need to analyze images with location-specific processing for content extraction, text recognition, object detection, face identification, or landmark/logo recognition." }, { "slug": "GOOGLE_CLOUD_VISION_CREATE_PRODUCT", "name": "Create Vision Product", "description": "Creates a new Product resource in Google Cloud Vision Product Search. A Product represents a physical item that can be visually searched using reference images. After creating a product, you can add reference images to it and include it in product sets for visual search capabilities. Prerequisites: - Vision API must be enabled in your Google Cloud project - Product Search must be enabled - Valid project ID and location (us-west1, us-east1, europe-west1, or asia-east1) Use this action to: - Register a new product for visual search - Set up product metadata (display name, description, category, labels) - Obtain a product resource name for adding reference images" }, { "slug": "GOOGLE_CLOUD_VISION_CREATE_PRODUCT_SET", "name": "Create Product Set", "description": "Creates a new ProductSet resource in Google Cloud Vision Product Search. A ProductSet is a container for grouping related products together for visual search. After creating a product set, you can add products to it using the AddProductToProductSet action. Prerequisites: - Vision API must be enabled in your Google Cloud project - Product Search must be enabled - Valid project ID and location (us-west1, us-east1, europe-west1, or asia-east1) Use this action to: - Create a new product set container - Organize products into logical groups - Obtain a product set resource name for adding products" }, { "slug": "GOOGLE_CLOUD_VISION_CREATE_REFERENCE_IMAGE", "name": "Create ReferenceImage", "description": "Tool to create a ReferenceImage under a product. Use when adding a new image to a product for detection." }, { "slug": "GOOGLE_CLOUD_VISION_DELETE_PRODUCT", "name": "Delete Product", "description": "Permanently deletes a Product and its associated reference images from Google Cloud Vision API. This is a destructive operation that cannot be undone. The product metadata and all images are deleted immediately, though search queries against ProductSets may temporarily return cached results until caches refresh. Use this tool when you need to remove a product that is no longer needed. Ensure you have the correct product resource name before deletion." }, { "slug": "GOOGLE_CLOUD_VISION_GET_PRODUCT", "name": "Get Product", "description": "Tool to get information associated with a Product. Use when you have the product resource name and need its details." }, { "slug": "GOOGLE_CLOUD_VISION_GET_PRODUCT_SET", "name": "Get Product Set", "description": "Tool to get a ProductSet. Use when you need metadata details of an existing ProductSet by its full resource name. Use after obtaining the resource name." }, { "slug": "GOOGLE_CLOUD_VISION_IMPORT_PRODUCT_SETS", "name": "Import Product Sets", "description": "Asynchronously imports product sets and reference images from a CSV file stored in Google Cloud Storage. This bulk import operation creates ProductSets, Products, and ReferenceImages from a properly formatted CSV file. Returns a long-running Operation that can be polled for completion status. The import automatically creates new ProductSets and Products if they don't exist based on the IDs in the CSV. Use this when you need to: - Bulk import multiple products and images at once - Create product catalogs from existing CSV data - Set up initial product search datasets Note: Requires OAuth authentication with cloud-platform or cloud-vision scope, and read access to the GCS bucket." }, { "slug": "GOOGLE_CLOUD_VISION_LIST_INDEX_ENDPOINTS", "name": "List Vision AI IndexEndpoints", "description": "Lists IndexEndpoints in Vertex AI Vision for a given project and location. IndexEndpoints are deployed instances of image indexes used for visual search and retrieval in Vision AI's media warehouse. Use this tool to discover existing endpoints before querying them or to manage deployed indexes. IMPORTANT: Requires OAuth2 authentication (API keys are NOT supported). Needs 'visionai.indexEndpoints.list' IAM permission." }, { "slug": "GOOGLE_CLOUD_VISION_LIST_LOCATIONS", "name": "List Locations", "description": "Tool to list available Vision AI service locations for a project. Use when you need to discover supported regions before making region-specific API calls." }, { "slug": "GOOGLE_CLOUD_VISION_LIST_OPERATIONS", "name": "List Vision API Operations", "description": "Tool to list operations that match the specified filter. Use when you need to retrieve all operations under a specific project and location." }, { "slug": "GOOGLE_CLOUD_VISION_PURGE_PRODUCTS", "name": "Purge Products", "description": "Tool to asynchronously delete products in a ProductSet or orphan products. Use when you need to clean up products at scale; ensure `force` is true to execute." }, { "slug": "GOOGLE_CLOUD_VISION_UPDATE_PRODUCT", "name": "Update Product", "description": "Tool to update a Product's mutable fields: displayName, description, and productLabels. Use after confirming the product resource name." }, { "slug": "GOOGLE_CLOUD_VISION_UPDATE_PRODUCT_SET", "name": "Update Product Set", "description": "Tool to update a ProductSet resource. Use when you need to modify the displayName of an existing ProductSet." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_ADD_PRODUCT_TO_PRODUCT_SET", "name": "Add Product to ProductSet", "description": "Add a Product to a ProductSet in Google Cloud Vision Product Search. This action associates a Product with a ProductSet, enabling the product to be included in product search queries against that set. Both resources must exist in the same Google Cloud project and location before calling this action. Key characteristics: - Idempotent: If the Product is already in the ProductSet, no change is made and no error occurs - Constraint: One Product can be added to at most 100 ProductSets - The Product and ProductSet must be in the same project and location - Valid locations: us-west1, us-east1, europe-west1, asia-east1 Use this after creating both a Product and a ProductSet to establish their association. Returns an empty response on success." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_CANCEL_OPERATION", "name": "Cancel Vision Operation", "description": "Starts asynchronous cancellation of a long-running Vision API operation. Returns an empty response on successful cancellation request. Note that the server makes a best effort to cancel the operation, but success is not guaranteed. Use the Get Operation action to check if cancellation succeeded or if the operation completed despite the cancellation attempt. The server may return UNIMPLEMENTED if the operation does not support cancellation." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_DELETE_OPERATION", "name": "Delete Vision API Operation", "description": "Tool to delete a long-running Vision API operation. Use after confirming the operation name." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_DELETE_PRODUCT_SET", "name": "Delete Product Set", "description": "Tool to permanently delete a ProductSet. Use after confirming the ProductSet's resource name." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_DELETE_REFERENCE_IMAGE", "name": "Delete Reference Image", "description": "Permanently removes a reference image from a product in Google Cloud Vision Product Search. This action deletes the reference image association from the specified product. The image will be marked for deletion and removed during the next indexing operation. Note that the actual image file in Google Cloud Storage is not deleted. Use this when you need to: - Remove outdated or incorrect product reference images - Clean up test images from products - Update product imagery by removing old references Prerequisites: - The product must exist - The reference image must have been previously created under the product - You need the full resource path of the reference image (use List Reference Images if unknown)" }, { "slug": "GOOGLE_CLOUD_VISION_VISION_GET_OPERATION", "name": "Get Vision API Operation", "description": "Retrieves the latest state of a long-running Vision API operation. Use this to poll the status of asynchronous operations like importProductSets or purgeProducts. The operation name is returned when you start an async operation." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_GET_REFERENCE_IMAGE", "name": "Get Reference Image", "description": "Tool to get information associated with a ReferenceImage. Use when you have the full resource name and need its metadata." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_LIST_PRODUCTS_IN_PRODUCT_SET", "name": "List Products in ProductSet", "description": "Tool to list Products in a specified ProductSet. Use when you need to retrieve Products associated with a ProductSet after confirming it exists, with optional pagination." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_LIST_PROJECTS", "name": "List Projects", "description": "List Google Cloud projects accessible to the authenticated user via Cloud Resource Manager API. This action queries the Cloud Resource Manager API (not Vision API directly) to enumerate projects. It requires OAuth 2.0 authentication - API key auth is insufficient. Use this when you need to discover available project IDs before making Vision API calls that require project identifiers. Note: Returns projects you have 'resourcemanager.projects.get' permission on." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_LIST_REFERENCE_IMAGES", "name": "List Reference Images", "description": "Tool to list reference images for a product. Use when you need to retrieve stored reference images under a specified product resource name, with optional pagination." }, { "slug": "GOOGLE_CLOUD_VISION_VISION_REMOVE_PRODUCT_FROM_PRODUCT_SET", "name": "Remove Product from ProductSet", "description": "Removes a Product from a specified ProductSet in Google Cloud Vision API. This operation unlinks a product from a product set but does not delete either resource. Both the product and product set must exist in the same Google Cloud project and location. The product must have been previously added to the product set for this operation to succeed. Use this when you need to reorganize products across product sets or remove a product from a set without deleting the product itself." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "google_cloud_vision_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Google Cloud Vision API Key", "type": "string", "description": "The API key used to authenticate requests to the Google Cloud Vision API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_notebooklm", "name": "Google Notebooklm", "logo": "https://logos.composio.dev/api/google_notebooklm", "description": "Google NotebookLM Enterprise API for managing AI-powered notebooks and research sources", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_notebooklm_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/drive.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Google Cloud region (us, eu, or global)", "required": false, "default": "us" } ] } } } ] }, { "slug": "google_search_console", "name": "Google Search Console", "logo": "https://logos.composio.dev/api/google_search_console", "description": "Google Search Console provides tools to monitor, maintain, and troubleshoot your site's presence in Google Search results.", "category": "analytics", "authSchemes": [ "OAUTH2" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLE_SEARCH_CONSOLE_ADD_SITE", "name": "Add Site", "description": "Adds a site to the set of the user's sites in Google Search Console. This action registers a new property (site) in Google Search Console for the authenticated user. After adding the site, you will need to verify ownership through one of the available verification methods. The site URL must be properly formatted as either a URL-prefix property (with protocol) or a domain property (with sc-domain prefix)." }, { "slug": "GOOGLE_SEARCH_CONSOLE_DELETE_SITE", "name": "Delete Site", "description": "Removes a site from the user's Google Search Console sites. This action permanently removes a site property from the authenticated user's Search Console account. The site URL must be URL-encoded. Use this when you need to unregister a site from tracking in Search Console." }, { "slug": "GOOGLE_SEARCH_CONSOLE_GET_SITE", "name": "Get Site", "description": "Retrieves information about a specific Search Console site. Use when you need to get site details including permission level for a specific property." }, { "slug": "GOOGLE_SEARCH_CONSOLE_GET_SITEMAP", "name": "Get Sitemap", "description": "Retrieves sitemap metadata (submitted/indexed counts, errors, warnings, last-submission timestamps) for a specific sitemap in Search Console. Returns metadata only, not raw XML content. Note: numeric fields like `errors`, `warnings`, `submitted`, and `indexed` may be returned as strings; cast to int before comparisons. Values such as `contents.indexed` can lag several days after submission." }, { "slug": "GOOGLE_SEARCH_CONSOLE_INSPECT_URL", "name": "Inspect URL", "description": "Inspects a URL for indexing issues and status in Google Search Console. Results may reflect cached data lagging real changes by several days. High-volume use can trigger 429 quota errors; limit to priority URLs." }, { "slug": "GOOGLE_SEARCH_CONSOLE_LIST_SITEMAPS", "name": "List Sitemaps", "description": "Lists all sitemaps for a site in Google Search Console. Response fields `errors`, `warnings`, `contents.submitted`, and `contents.indexed` may be returned as strings; cast to integers before numeric operations. Evaluate these fields alongside `isPending` for sitemap health." }, { "slug": "GOOGLE_SEARCH_CONSOLE_LIST_SITES", "name": "List Sites", "description": "Lists all verified sites (properties) owned by the authenticated user in Google Search Console. Response contains a siteEntry array — always iterate it, never assume a single object. Each entry includes permissionLevel, which varies per site; do not assume owner-level access for all returned properties. When calling downstream tools, use the site_url value exactly as returned, including protocol, subdomain, sc-domain: prefix, and trailing slash — any deviation causes empty results or permission errors. Empty siteEntry may indicate missing OAuth scopes or no verified properties. Newly added properties may not appear immediately due to propagation delay." }, { "slug": "GOOGLE_SEARCH_CONSOLE_SEARCH_ANALYTICS_QUERY", "name": "Search Analytics Query", "description": "Queries Google Search Console for search analytics data including clicks, impressions, CTR, and position metrics. Only returns URLs with at least one impression; missing rows do not confirm non-indexing. Position is an impression-weighted average rank." }, { "slug": "GOOGLE_SEARCH_CONSOLE_SUBMIT_SITEMAP", "name": "Submit Sitemap", "description": "Submits a sitemap to Google Search Console for indexing. This action registers or resubmits a sitemap for a verified property in Google Search Console. The sitemap file must be accessible at the specified URL and properly formatted as XML. Supported sitemap types include standard sitemaps, sitemap index files, RSS feeds, and Atom feeds. The authenticated user must have site owner or full user permissions for the property. After submission, Google will crawl and process the sitemap according to its standard indexing schedule." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_search_console_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/webmasters,https://www.googleapis.com/auth/webmasters.readonly,https://www.googleapis.com/auth/userinfo.profile,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googleslides", "name": "Google Slides", "logo": "https://logos.composio.dev/api/googleslides", "description": "Google Slides is a cloud-based presentation editor with real-time collaboration, template gallery, and integration with other Google Workspace apps", "category": "documents", "authSchemes": [ "OAUTH2" ], "toolCount": 8, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "GOOGLESLIDES_CREATE_PRESENTATION", "name": "Create Google Slides Presentation", "description": "Tool to create a blank Google Slides presentation. Use when you need to initialize a new presentation with a specific title, locale, or page size." }, { "slug": "GOOGLESLIDES_CREATE_SLIDES_MARKDOWN", "name": "Create Slides from Markdown", "description": "Creates a new Google Slides presentation from Markdown text. Automatically splits content into slides using '---' separators and applies appropriate templates based on content structure." }, { "slug": "GOOGLESLIDES_GET_PAGE_THUMBNAIL2", "name": "Get Page Thumbnail v2", "description": "Tool to generate a thumbnail of the latest version of a specified page. Use when you need a preview image URL for a slide page. This request counts as an expensive read request for quota purposes." }, { "slug": "GOOGLESLIDES_PRESENTATIONS_BATCH_UPDATE", "name": "Update Presentation (Batch/Markdown)", "description": "Update Google Slides presentations using markdown content or raw API text. Supports professional themes, auto-formatting, and multiple slide types (title, bullet, table, quote, image, two-column)." }, { "slug": "GOOGLESLIDES_PRESENTATIONS_COPY_FROM_TEMPLATE", "name": "Copy Google Slides from Template", "description": "Tool to create a new Google Slides presentation by duplicating an existing template deck via Drive file copy. Use when you need to preserve themes, masters, and layouts exactly as they appear in the template. After copying, use GOOGLESLIDES_PRESENTATIONS_BATCH_UPDATE to replace placeholder text or images." }, { "slug": "GOOGLESLIDES_PRESENTATIONS_GET", "name": "Get Presentation", "description": "Tool to retrieve the latest version of a presentation. Use after obtaining the presentation ID." }, { "slug": "GOOGLESLIDES_PRESENTATIONS_PAGES_GET", "name": "Get Presentation Page", "description": "Tool to get the latest version of a specific page in a presentation. Use when you need to inspect slide, layout, master, or notes page details." }, { "slug": "GOOGLESLIDES_PRESENTATIONS_PAGES_GET_THUMBNAIL", "name": "Get Page Thumbnail (Deprecated)", "description": "DEPRECATED: Use GOOGLESLIDES_GET_PAGE_THUMBNAIL2 instead. Tool to generate and return a thumbnail image URL for a specific page. Use when you need a quick preview of a slide page after loading it." } ], "triggers": [ { "slug": "GOOGLESLIDES_SLIDE_ADDED_TRIGGER", "name": "New Slide Added", "description": "Fires when a new slide is added to a Google Slides presentation." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_slides_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/presentations,https://www.googleapis.com/auth/userinfo.email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "google_translate", "name": "Google Translate", "logo": "https://logos.composio.dev/api/google_translate", "description": "Google Cloud Translation API - Translate text between languages programmatically", "category": "developer tools", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "google_translate_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/cloud-translation" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "google_translate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Your Google Cloud API Key for Translation API v2", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "google_trends", "name": "Google Trends", "logo": "https://logos.composio.dev/api/google_trends", "description": "Access Google Trends data via SerpApi to analyze search trends, related topics, and geographic interest over time.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "google_trends_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your SerpApi API key. Get it from https://serpapi.com/manage-api-key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "googlecontacts", "name": "Googlecontacts", "logo": "https://logos.composio.dev/api/googlecontacts", "description": "Access and manage Google Contacts data via the Google People API", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLECONTACTS_BATCH_CREATE_CONTACTS", "name": "Batch create contacts", "description": "Create a batch of new contacts in Google Contacts. This action creates up to 200 contacts in a single API call and returns the PersonResponses for the newly created contacts. Use this action when you need to create multiple contacts at once to reduce API calls and improve performance. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures. Note: The contacts array accepts Person objects with any valid People API fields (names, emailAddresses, phoneNumbers, addresses, organizations, etc.). Each contact must be wrapped in a 'contactPerson' object." }, { "slug": "GOOGLECONTACTS_BATCH_GET_CONTACT_GROUPS", "name": "Batch get contact groups", "description": "Get a list of contact groups owned by the authenticated user by specifying a list of contact group resource names. Use when you need to retrieve details for specific contact groups, such as getting group metadata, member counts, or group names for multiple groups in a single API call." }, { "slug": "GOOGLECONTACTS_BATCH_UPDATE_CONTACTS", "name": "Batch Update Google Contacts", "description": "Update a batch of contacts in Google Contacts and return the updated contact data. Use this action when you need to modify multiple contacts at once, such as: - Updating names, phone numbers, or email addresses for several contacts - Making bulk changes to contact information - Syncing contact data from another source This action allows updating up to 200 contacts per request. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_COPY_OTHER_CONTACT_TO_MY_CONTACTS", "name": "Copy Other Contact to My Contacts", "description": "Copies an Other contact to a new contact in the user's myContacts group. Use this action when you need to save an existing \"Other contact\" (from Google's contact suggestions) to your permanent contacts in the myContacts group. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact in Google Contacts and return the person resource for that contact. Use when you need to add a new person to the authenticated user's Google Contacts. The request returns a 400 error if more than one field is specified on a field that is a singleton for contact sources: biographies, birthdays, genders, or names. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures. This action creates a single contact; for bulk creation of multiple contacts, use GOOGLECONTACTS_BATCH_CREATE_CONTACTS instead. Note: Only the primary entry for singleton fields (biographies, birthdays, genders, names) will be saved for contact sources." }, { "slug": "GOOGLECONTACTS_CREATE_CONTACT_GROUP", "name": "Create Contact Group", "description": "Create a new contact group owned by the authenticated user. The group name must be unique among the user's contact groups. Use this action when you need to create a new contact group to organize the user's Google Contacts. Attempting to create a group with a duplicate name will return an HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_DELETE_CONTACT", "name": "Delete Google Contact", "description": "Delete a contact person from Google Contacts. Any non-contact data will not be deleted. Use this action when you need to permanently remove a contact from the user's Google Contacts list. This action is irreversible — the contact cannot be recovered once deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_DELETE_CONTACT_GROUP", "name": "Delete contact group", "description": "Deletes an existing contact group owned by the authenticated user by specifying the contact group resource name. This action is irreversible — once deleted, the contact group cannot be recovered. Use this action when you need to remove a contact group that is no longer needed. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_DELETE_CONTACT_PHOTO", "name": "Delete Contact Photo", "description": "Delete a contact's photo from Google Contacts. Use when you need to remove a profile picture from a specific contact. This action is irreversible — once the photo is deleted, it cannot be recovered. Mutate requests for the same user should be sent sequentially to avoid lock contention and failures." }, { "slug": "GOOGLECONTACTS_DELETE_CONTACTS_BATCH", "name": "Batch Delete Google Contacts", "description": "Delete a batch of contacts from Google Contacts. Any non-contact data will not be deleted. Use this action when you need to permanently remove multiple contacts from the user's Google Contacts list at once. This action is irreversible — the contacts cannot be recovered once deleted. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_GET_BATCH_PEOPLE", "name": "Batch get people", "description": "Batch retrieves information about multiple people from Google Contacts. Use this action when you need to fetch contact information for several people in a single API call rather than making individual requests per person. This improves efficiency when you need data from multiple contacts at once. Note: The personFields parameter is required and determines which contact information fields are returned in the response. If a person cannot be found, the corresponding response will contain a status but no person data." }, { "slug": "GOOGLECONTACTS_GET_CONTACT_GROUP", "name": "Get Contact Group", "description": "Retrieves a specific contact group owned by the authenticated user by specifying the contact group resource name. Use when you need to get details about a specific contact group, including its name, member count, and metadata. This is a read-only operation that fetches an existing contact group when you already know its resource name." }, { "slug": "GOOGLECONTACTS_GET_PERSON", "name": "Get Person", "description": "Provides information about a person by specifying a resource name. Use when you need to retrieve detailed information about a specific person, including their names, email addresses, phone numbers, organizations, and other profile data. Use 'people/me' as the resource name to get the authenticated user's profile. The request will return a 400 error if 'personFields' is not specified." }, { "slug": "GOOGLECONTACTS_LIST_CONNECTIONS", "name": "List Connections", "description": "Lists the connections (contacts) for the authenticated user. Use when you need to retrieve a paginated list of all contacts with optional sorting, filtering, and incremental sync support. Sync tokens expire 7 days after a full sync — requests with expired tokens return a 410 error. When using page_token or sync_token, all other parameters must match the original request. Deleted contacts appear as Person objects with PersonMetadata.deleted set to true. Incremental syncs are not intended for read-after-write use cases." }, { "slug": "GOOGLECONTACTS_LIST_CONTACT_GROUPS", "name": "List Contact Groups", "description": "List all contact groups owned by the authenticated user. Use when you need to retrieve all contact groups (e.g., \"My Contacts\", \"Starred\", custom groups) for organizing or managing contacts. Members of the contact groups are not populated in this response." }, { "slug": "GOOGLECONTACTS_LIST_DIRECTORY_PEOPLE", "name": "List Directory People", "description": "Lists domain profiles and domain contacts in the authenticated user's domain directory. Use when you need to retrieve directory information for all users in a Google Workspace domain, including their contact details like names, emails, and phone numbers. Supports pagination via pageToken and incremental sync via syncToken. When syncToken is used, deleted resources are returned with PersonMetadata.deleted set to true. Note: Write propagation delays of several minutes may apply for sync requests — this is not suitable for read-after-write use cases. All request parameters must remain consistent when using pagination or sync tokens." }, { "slug": "GOOGLECONTACTS_LIST_OTHER_CONTACTS", "name": "List Other Contacts", "description": "Lists \"Other contacts\" from Google People API. Other contacts are contacts that are not in a contact group, typically auto-created from interactions like emails sent or received. Use this action when you need to retrieve contacts that exist outside of organized contact groups, such as auto-generated contacts from email communications. Sync tokens expire 7 days after a full sync. If you receive an EXPIRED_SYNC_TOKEN error, make a new request without a sync_token. The first page of a full sync has a fixed quota that cannot be increased. When using pageToken or syncToken, all other request parameters must match the original call." }, { "slug": "GOOGLECONTACTS_MODIFY_CONTACT_GROUP_MEMBERS", "name": "Modify Contact Group Members", "description": "Modifies the members of a contact group by adding or removing contact resource names. Only system contact groups 'contactGroups/myContacts' and 'contactGroups/starred' can have members added. Other system contact groups are deprecated and can only have contacts removed. Use when you need to add contacts to or remove contacts from a contact group. Note: Combined total of contacts to add and remove cannot exceed 1000 per request." }, { "slug": "GOOGLECONTACTS_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Searches the authenticated user's contacts for matches against the provided query. The query matches against names, nicknames, email addresses, phone numbers, and organizations. Use this action when you need to find specific contacts in the user's Google Contacts by name, email, phone, or organization. Clients should send a warmup request with an empty query before searching to update the cache. Results are limited to contacts from the CONTACT source." }, { "slug": "GOOGLECONTACTS_SEARCH_DIRECTORY_PEOPLE", "name": "Search Domain Directory People", "description": "Search domain directory people in Google Contacts. Provides a list of domain profiles and domain contacts in the authenticated user's domain directory that match the search query. Use this action when you need to find people within your organization's Google Workspace domain by searching their names or email addresses. This action requires the https://www.googleapis.com/auth/directory.readonly OAuth scope." }, { "slug": "GOOGLECONTACTS_SEARCH_OTHER_CONTACTS", "name": "Search Other Contacts", "description": "Searches other contacts from Google People API that match a query string. Other contacts are contacts not in any contact group, typically auto-created from interactions like emails sent or received. This action searches across names, email addresses, and phone numbers using prefix matching. Use this action when you need to find a specific contact among the authenticated user's other contacts by searching for a name, email, or phone number. Note: The Google People API recommends sending a warmup request with an empty query before the first search to update the cache, ensuring fresh results." }, { "slug": "GOOGLECONTACTS_UPDATE_CONTACT", "name": "Update Google Contact", "description": "Update contact data for an existing contact person. Any non-contact data will not be modified. Use this action when you need to update information (such as name, email, phone) for an existing contact in Google Contacts. Important notes: - All fields specified in `update_person_fields` will be replaced. Fields not specified in the update mask will remain unchanged. - The `etag` field in the request body is required for optimistic concurrency control. - The server returns a 400 error if the contact has been modified since it was read (etag mismatch). - The server returns a 400 error if more than one value is specified for singleton fields (names, birthdays, genders, biographies). - Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_UPDATE_CONTACT_GROUP", "name": "Update Contact Group", "description": "Update the name of an existing contact group owned by the authenticated user. Use this action when you need to rename a contact group or update its metadata. Attempting to create a group with a duplicate name will return an HTTP 409 error. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures." }, { "slug": "GOOGLECONTACTS_UPDATE_CONTACT_PHOTO", "name": "Update Contact Photo", "description": "Update a contact's photo. Use when you need to change or set the profile picture for an existing Google Contact. Mutate requests for the same user should be sent sequentially to avoid increased latency and failures. The photo should be provided as base64-encoded bytes (JPEG, PNG, or WebP format)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googlecontacts_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/contacts,https://www.googleapis.com/auth/contacts.other.readonly,https://www.googleapis.com/auth/directory.readonly,https://www.googleapis.com/auth/user.emails.read,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/userinfo.profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "googleforms", "name": "Googleforms", "logo": "https://logos.composio.dev/api/googleforms", "description": "Google Forms is a survey administration software that allows users to create and share online forms and surveys.", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOOGLEFORMS_BATCH_UPDATE_FORM", "name": "Batch Update Form", "description": "Applies a batch of update operations to a Google Form in a single atomic transaction. Use when you need to modify form content after creation, including: - Adding, updating, or deleting questions and other items - Modifying form metadata (title, description) - Updating form settings (quiz mode, email collection) - Reorganizing item order within the form All updates in the batch are applied together atomically. If any update fails, the entire batch is rolled back. Use writeControl for optimistic concurrency to ensure updates are applied to the expected form version. Note: The form must have the appropriate sharing settings for the authenticated user to modify it." }, { "slug": "GOOGLEFORMS_CREATE_FORM", "name": "Create a Google Form", "description": "Creates a new Google Form with the specified title. This action initializes an empty form that can be later populated with items (questions, sections, images, videos) using the batchUpdate endpoint. When a form is created, it is assigned a unique formId that is required for all subsequent operations on that form. As of June 30, 2026, forms created via API will default to an unpublished state, giving creators control over responder access before making the form publicly available. Use this action when you need to create a new form for collecting information, surveys, quizzes, or feedback. After creation, use the batchUpdate action to add questions and other items to the form." }, { "slug": "GOOGLEFORMS_CREATE_WATCH", "name": "Create Form Watch", "description": "Creates a watch on a Google Form to receive push notifications via Cloud Pub/Sub when specified events occur. Watches notify via Cloud Pub/Sub when the form or its responses are changed. Each watch has a one-week duration after which it automatically expires and must be renewed. The calling project can have a maximum of 2 watches per form (one for SCHEMA and one for RESPONSES). Use this action when you need to set up real-time notifications for form changes or new submissions. The Pub/Sub topic must be in the same project where the form is located, and the topic must have permissions configured to allow the Forms API to publish messages." }, { "slug": "GOOGLEFORMS_DELETE_WATCH", "name": "Delete Form Watch", "description": "Deletes a watch from a Google Form, stopping push notifications for that watch. Use when you no longer want to receive notifications for a specific watch on a form. This action is irreversible — once deleted, the watch cannot be recovered and notifications will stop immediately. If you need to resume notifications, you must create a new watch using the CreateWatch action." }, { "slug": "GOOGLEFORMS_GET_FORM", "name": "Get Google Form", "description": "Retrieves the complete structure and metadata of a Google Form. Returns the full form definition including its title, description, all items (questions, sections, page breaks, images, videos, and display text), form settings (quiz mode, email collection), publishing state, and output-only fields such as the responder submission URL and revision ID. This action is read-only and does not modify the form. Use this action when you need to read the current configuration of a form, display its structure to users, inspect its settings, or check its publishing state before making updates." }, { "slug": "GOOGLEFORMS_GET_RESPONSE", "name": "Get form response", "description": "Retrieves a single form response by its unique response ID. Returns complete response data including all answers provided by the respondent, their email (if collected), timestamps, and quiz scores (if applicable). Use this action when you need to fetch detailed information about a specific submission, such as viewing individual submissions, verifying response data, or building response detail views." }, { "slug": "GOOGLEFORMS_LIST_RESPONSES", "name": "List Google Form Responses", "description": "Lists all responses submitted to a Google Form with optional filtering and pagination. Use this action to retrieve multiple form submissions at once, export response data, or monitor new submissions. Supports filtering by timestamp to fetch only responses submitted after a specific time, which is useful for incremental data synchronization." }, { "slug": "GOOGLEFORMS_LIST_WATCHES", "name": "List Form Watches", "description": "Lists all watches owned by the calling project for a specific Google Form. Use this action to discover existing watches, check their status and expiration times, or audit which notifications are configured for a form. Each project can have a maximum of 2 watches per form (one for each event type: SCHEMA and RESPONSES). The SCHEMA event type monitors changes to form content or settings, while RESPONSES monitors new form submissions." }, { "slug": "GOOGLEFORMS_RENEW_WATCH", "name": "Renew Form Watch", "description": "Renews a watch on a Google Form, extending its expiration by one week from the time of renewal. Google Forms watches automatically expire after one week. Use this action to extend a watch before it expires, maintaining continuous push notifications. If a watch has already expired, you must create a new one instead. The renewed watch keeps the same ID, event type, and Pub/Sub topic configuration. Only the expiration time is updated." }, { "slug": "GOOGLEFORMS_SET_PUBLISH_SETTINGS", "name": "Set Form Publish Settings", "description": "Updates the publishing settings of a Google Form, controlling whether the form is published (visible to others) and whether it accepts responses. Use this action to publish a draft form, unpublish a form to prevent access, or toggle response collection on/off without changing the form's visibility. Note that legacy forms created before the publish settings feature was introduced cannot use this endpoint and will return an error." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "googleforms_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/forms.body,https://www.googleapis.com/auth/forms.body.readonly,https://www.googleapis.com/auth/forms.responses.readonly,https://www.googleapis.com/auth/drive,https://www.googleapis.com/auth/drive.file,https://www.googleapis.com/auth/drive.readonly" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "gosquared", "name": "Gosquared", "logo": "https://www.gosquared.com/images/logo.png", "description": "GoSquared provides real-time web analytics and customer engagement tools to help businesses understand and interact with their website visitors.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 90, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GOSQUARED_ACCOUNT_ADD_SHARED_USER", "name": "Add Shared User", "description": "Tool to add a new shared user to a project. Use when inviting team members via their email address." }, { "slug": "GOSQUARED_ACCOUNT_REMOVE_SHARED_USER", "name": "Remove shared user", "description": "Removes a shared user from a GoSquared project by their email address, revoking their access to the site. Requires owner-level API key permissions. Use GOSQUARED_ACCOUNT_SHARED_USERS first to list current shared users." }, { "slug": "GOSQUARED_ACCOUNT_SHARED_USERS", "name": "Account Shared Users", "description": "Retrieves all team members who have access to the current GoSquared project. Returns each user's ID, email, access state (owner/active/pending), and role (owner/admin/member). Requires an API key with owner-level permissions for the project. Use this to audit project access or verify team member invitations." }, { "slug": "GOSQUARED_ACCOUNT_SITES", "name": "List Account Sites", "description": "List all projects/sites accessible to the authenticated account. Requires 'read_account' API key scope. Use 'grouped' format to see owned vs shared sites, or 'flat' for a simple list." }, { "slug": "GOSQUARED_AUTH_TOKEN_INFO", "name": "Check API Token Validity and Scopes", "description": "Tool to check whether an API key is valid and retrieve its enabled scopes. Use when verifying API credentials before making further API calls." }, { "slug": "GOSQUARED_BLOCK_VISITOR", "name": "Block Visitor", "description": "Tool to block a specific visitor from being tracked. Use when you need to prevent tracking for a particular visitor ID." }, { "slug": "GOSQUARED_CHAT_CHAT", "name": "Retrieve Chat Conversation", "description": "Retrieve detailed information about a chat conversation by its ID. Use this tool when you need to: - Get the current state of a chat conversation (agent assignment, read status) - View the latest message in a conversation - Check visitor presence and contact details - Determine if a chat is archived or active Prerequisites: Obtain a valid chatID from GOSQUARED_CHAT_CHATS or use a person_id from GOSQUARED_LIST_PEOPLE. Note: To retrieve the full conversation history with all messages, use GOSQUARED_CHAT_FEED instead. This endpoint returns summary information and only the latest message." }, { "slug": "GOSQUARED_CHAT_CHAT_MESSAGES", "name": "Retrieve Chat Messages", "description": "Retrieve messages from a GoSquared chat conversation by chat ID. Use this tool to: - Fetch message history from a specific chat conversation - Page through chat messages with offset and limit - Filter messages by date range - Get the total count of messages via the cardinality field Prerequisites: - Obtain a valid chatID from GOSQUARED_CHAT_CHATS or GOSQUARED_CHAT_CHAT actions - The chatID corresponds to the person_id of the visitor Returns: - A list of messages with timestamp, sender, and text content - Cardinality field showing the total message count" }, { "slug": "GOSQUARED_CHAT_CHATS", "name": "Retrieve Chat Conversations", "description": "Tool to retrieve chat data for reporting purposes. Use when you need to list active chat conversations within a specific time window." }, { "slug": "GOSQUARED_CHAT_FEED", "name": "Retrieve Chat Feed", "description": "Retrieve the complete feed of messages and events from a chat conversation. Use this action to: - Fetch chat history and conversation timeline for a specific person - Review messages exchanged between agents, bots, and visitors - Access internal/private agent notes and public messages - Track chat events like archiving, status changes, etc. - Retrieve messages with rich content including emojis and Unicode text The chat_id corresponds to a person_id from the GoSquared People API. You can obtain valid person_id values by first calling the List People action. Supports pagination and date filtering to retrieve specific portions of the chat history. Feed items are typically returned in reverse chronological order." }, { "slug": "GOSQUARED_CREATE_ACCOUNT_WEBHOOK", "name": "Create Account Webhook", "description": "Tool to create a webhook to receive notifications about events in a GoSquared project. Use when you need to register a new webhook endpoint for real-time event notifications." }, { "slug": "GOSQUARED_CREATE_WEBHOOK_TRIGGER", "name": "Create Webhook Trigger", "description": "Tool to add a trigger to an existing GoSquared webhook. Use when configuring webhook alerts for traffic spikes, traffic dips, chat messages, or smart group events." }, { "slug": "GOSQUARED_DELETE_ACCOUNT_WEBHOOK", "name": "Delete Account Webhook", "description": "Tool to delete a webhook from a GoSquared account. Use when you need to remove an existing webhook by its ID." }, { "slug": "GOSQUARED_DELETE_PERSON", "name": "Delete person", "description": "Tool to delete a person profile and all associated data. Use when you need to permanently remove a person's record and optionally blacklist them." }, { "slug": "GOSQUARED_END_VISITOR_SESSIONS", "name": "Timeout Visitor Sessions", "description": "Tool to end all tracking sessions for a specified visitor in GoSquared. Use when you need to manually terminate a visitor's session, such as when a user logs out or closes their browser. Optionally specify a page index to timeout only a specific session." }, { "slug": "GOSQUARED_GET_ACCOUNT_BLOCKED", "name": "Get Account Blocked Items", "description": "Tool to retrieve a list of blocked IP addresses, bots, and visitors for a project. Use when you need to see all blocked items across all categories." }, { "slug": "GOSQUARED_GET_ACCOUNT_BLOCKED_BOTS", "name": "Get Account Blocked Bots", "description": "Tool to retrieve the bot blocking status for a GoSquared project. Use when you need to check whether automatic bot blocking is enabled." }, { "slug": "GOSQUARED_GET_ACCOUNT_BLOCKED_IPS", "name": "Get Blocked IP Addresses", "description": "Tool to retrieve the list of blocked IP addresses for the account. Use when you need to view which IP addresses are currently blocked from tracking or accessing the site." }, { "slug": "GOSQUARED_GET_ACCOUNT_BLOCKED_VISITORS", "name": "Get Account Blocked Visitors", "description": "Tool to retrieve visitor IDs that have been blocked for a project. Use when you need to list visitors who were blocked (typically via the 'Ignore' button in the visitor widget)." }, { "slug": "GOSQUARED_GET_ACCOUNT_SITE", "name": "Get Account Site Details", "description": "Tool to retrieve detailed information about a specific site/project by its site_token. Use when you need to fetch configuration details, ownership info, or metadata for a particular GoSquared project." }, { "slug": "GOSQUARED_GET_ACCOUNT_SITES_USAGE", "name": "Get Account Sites Usage", "description": "Tool to retrieve all sites and their pageview counts for the authenticated account. Use when you need to get usage statistics across all sites. Optionally filter by date range using 'from' and 'to' parameters." }, { "slug": "GOSQUARED_GET_ACCOUNT_TAGGED_VISITORS", "name": "Get Account Tagged Visitors", "description": "Tool to retrieve the list of tagged visitors from the account. Use when you need to see which visitors have been tagged and their associated tags." }, { "slug": "GOSQUARED_GET_ACCOUNT_TRIGGER_TYPE", "name": "Get Account Trigger Type", "description": "Tool to retrieve details of a specific trigger type from GoSquared. Use when you need to understand the payload structure and fields for a particular trigger type before setting up automation workflows or webhooks." }, { "slug": "GOSQUARED_GET_ACCOUNT_TRIGGER_TYPES", "name": "Get Account Trigger Types", "description": "Tool to retrieve available types of triggers in GoSquared. Use when you need to discover what trigger types are supported for automation workflows or webhook configurations." }, { "slug": "GOSQUARED_GET_ACCOUNT_WEBHOOK", "name": "Get Account Webhook", "description": "Tool to retrieve a specific webhook by ID from a GoSquared account. Use when you need to fetch details about an existing webhook configuration." }, { "slug": "GOSQUARED_GET_ACCOUNT_WEBHOOKS", "name": "Get Account Webhooks", "description": "Retrieves a list of webhooks configured for the GoSquared project. Returns webhook details including ID, URL, event type, and active status. Use this to audit configured webhooks or verify webhook integrations." }, { "slug": "GOSQUARED_GET_ACCOUNT_WEBHOOK_TRIGGERS", "name": "Get Account Webhook Triggers", "description": "Retrieves all triggers for a webhook. Use when you need to view which events are configured to fire a specific webhook." }, { "slug": "GOSQUARED_GET_CHAT_CHAT_MESSAGE", "name": "Get Specific Chat Message", "description": "Retrieve a specific chat message by its message ID from a chat conversation. Use this tool when you need to fetch details of a particular message, such as its content, sender, and timestamp. Requires both the chat ID (same as person_id) and the specific message ID (UUID format)." }, { "slug": "GOSQUARED_GET_NOW_BROWSERS", "name": "Get Real-Time Visitor Browsers", "description": "Tool to retrieve browsers used by currently online visitors, sorted by visitor count. Use when you need real-time breakdown of which browsers active visitors are using." }, { "slug": "GOSQUARED_GET_NOW_CAMPAIGNS", "name": "Get Real-Time Campaigns", "description": "Tool to retrieve currently running campaigns with real-time visitor counts. Use when you need to see which campaigns are actively driving visitors to the site right now." }, { "slug": "GOSQUARED_GET_NOW_COUNTRIES", "name": "Get Real-Time Visitor Countries", "description": "Tool to retrieve countries where currently online visitors are located, sorted by visitor count. Use when you need real-time geographic distribution of active site visitors." }, { "slug": "GOSQUARED_GET_NOW_ENGAGEMENT", "name": "Get Real-Time Engagement", "description": "Tool to retrieve engagement information of currently online users. Use when you need real-time metrics about visitor behavior including time on site and visit depth." }, { "slug": "GOSQUARED_GET_NOW_GEO", "name": "Get Real-Time Visitor Geo Locations", "description": "Tool to retrieve real-time geographic coordinates for currently online visitors. Returns latitude/longitude coordinates with visitor counts for each location. Use when you need to visualize or analyze the geographic distribution of active site visitors." }, { "slug": "GOSQUARED_GET_NOW_LANGUAGES", "name": "Get Real-Time Visitor Languages", "description": "Tool to retrieve languages for currently online visitors sorted by visitor count. Use when you need a real-time breakdown of active visitor languages." }, { "slug": "GOSQUARED_GET_NOW_NOTIFICATIONS", "name": "Get Now Notifications", "description": "Tool to retrieve notifications stored in GoSquared. Use when you need to access Traffic Alerts, RSS feed items, or Milestones." }, { "slug": "GOSQUARED_GET_NOW_ORGANISATIONS", "name": "Get Real-Time Organisations", "description": "Tool to retrieve internet organisations currently being used by online visitors, sorted by visitor count. Use when you need real-time data about which ISPs or network providers your visitors are using." }, { "slug": "GOSQUARED_GET_NOW_SOURCES_BY_SECTION", "name": "Get Now Sources By Section", "description": "Tool to retrieve a specific group of real-time traffic sources such as 'site', 'organic', or 'social'. Use when you need up-to-the-minute data about a particular source category driving visitors to your site." }, { "slug": "GOSQUARED_GET_NOW_TIME", "name": "Get Current Time", "description": "Tool to retrieve the current time according to GoSquared infrastructure. Use when you need a synchronized timestamp from GoSquared's servers." }, { "slug": "GOSQUARED_GET_NOW_VISITOR", "name": "Get Specific Visitor", "description": "Retrieves real-time session information for a specific online visitor. Use this tool after obtaining a visitorID from GOSQUARED_NOW_VISITORS to get detailed information about a visitor including their location, browser, engagement score, and event history. Returns a 409 status if the visitor is no longer online." }, { "slug": "GOSQUARED_GET_PEOPLE_EVENT_TYPES", "name": "Get People Event Types", "description": "Retrieve all event types tracked in GoSquared People CRM, ordered by frequency. Use this to discover available events for filtering or building Smart Groups." }, { "slug": "GOSQUARED_GET_PEOPLE_PROPERTY_TYPES", "name": "Get People Property Types", "description": "Retrieve property types (schema definitions) from GoSquared People CRM. Use this tool to: - Discover all available profile properties and their data types - Get custom property definitions - Look up a specific property's schema by its identifier Properties use dot notation for nested fields (e.g., 'last.location.country')." }, { "slug": "GOSQUARED_GET_PERSON", "name": "Get Person Profile", "description": "Retrieve a specific person's profile from GoSquared People CRM by their unique ID. Use this tool when you need to: - Fetch detailed profile information for a known person - Look up custom properties set via tracking for a specific user - Verify a person exists before performing other operations Prerequisites: - Requires a valid person_id (obtain from List People or tracking events) - API key must have 'read_people' scope Returns the complete person profile including standard fields and custom properties." }, { "slug": "GOSQUARED_GET_PERSON_FEED", "name": "GoSquared - Get Person Feed", "description": "Retrieve a person's complete event feed from GoSquared People CRM. Returns a chronologically ordered list of all events (custom events and session events) for a specific person. Use this tool to: - View a person's activity history and engagement timeline - Track specific events by name using the query parameter - Filter by event type (custom events vs session events) - Paginate through large event histories Prerequisites: - Requires a valid personID (obtain from List People or tracking events) - API key must have 'read_people' scope" }, { "slug": "GOSQUARED_GET_TRENDS_BROWSER", "name": "Get Browser Metrics", "description": "Tool to retrieve summarised browser metrics over a specified time period. Use when analyzing which browsers were used to access the site during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_CAMPAIGN_CONTENT", "name": "Get Campaign Content Metrics", "description": "Retrieve UTM content metrics (utm_content) aggregated over a specified date range. Use this to analyze which content variations (e.g., banner ads, sidebar links, footer CTAs) are driving traffic to your site." }, { "slug": "GOSQUARED_GET_TRENDS_CAMPAIGN_NAME", "name": "Get Campaign Name Metrics", "description": "Retrieve UTM campaign name metrics (utm_campaign) aggregated over a specified date range. Use this to analyze which marketing campaigns (e.g., 'spring_sale', 'newsletter_2024') are driving traffic to your site." }, { "slug": "GOSQUARED_GET_TRENDS_CAMPAIGN_SOURCE", "name": "Get Campaign Source Metrics", "description": "Retrieve UTM source metrics (utm_source) aggregated over a specified date range. Use this to analyze which traffic sources (e.g., google, facebook, newsletter) are driving visitors to your site." }, { "slug": "GOSQUARED_GET_TRENDS_CAMPAIGN_TERM", "name": "Get Campaign Term Metrics", "description": "Retrieve UTM term metrics (utm_term) aggregated over a specified date range. Use this to analyze which specific keywords or terms are driving traffic to your site." }, { "slug": "GOSQUARED_GET_TRENDS_CATEGORY", "name": "Get Category Metrics", "description": "Tool to retrieve summarised category metrics over a specified time period. Use when analyzing which content categories were accessed during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_COUNTRY", "name": "Get Country Metrics", "description": "Retrieve country-level visit metrics aggregated over a specified date range. Use this to analyze which countries are driving traffic to your site during a specific period." }, { "slug": "GOSQUARED_GET_TRENDS_LANGUAGE", "name": "Get Language Metrics", "description": "Retrieve summarised language metrics over a given time period. Use this to analyze which languages your visitors are using based on browser settings. Returns a ranked list of languages by visitor count within the specified date range." }, { "slug": "GOSQUARED_GET_TRENDS_ORGANISATION", "name": "Get Organisation Metrics", "description": "Tool to retrieve summarised organisation metrics over a given time period. Use when analyzing which internet organisations (ISPs, network providers, companies) are driving traffic to your site during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_OS", "name": "Get Operating System Metrics", "description": "Tool to retrieve summarised operating system metrics over a specified time period. Use when analyzing which operating systems were used to access the site during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_PRODUCT", "name": "Get Product Metrics", "description": "Tool to retrieve summarised product metrics over a specified time period. Use when analyzing ecommerce product performance, revenue, and transaction data during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_SCREEN_DIMENSIONS", "name": "Get Screen Dimensions Metrics", "description": "Tool to retrieve summarised screen dimensions metrics over a specified time period. Use when analyzing which screen dimensions (resolutions) were used to access the site during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_SOURCES", "name": "Get Traffic Sources Metrics", "description": "Tool to retrieve a historical list of traffic sources that referred visitors to the site over a specified period. Sources are grouped by category: direct, organic (search engines), site (referrals), social, and internal. Use when analyzing which sources drove traffic during a specific date range." }, { "slug": "GOSQUARED_GET_TRENDS_SOURCES_BY_TYPE", "name": "Get Trends Sources By Type", "description": "Tool to retrieve a historical list of sources for the given section type. Use when analyzing which sources (referring websites, social media, search engines, or internal) drove traffic during a specific time period." }, { "slug": "GOSQUARED_GET_TRENDS_TRANSACTION", "name": "Get Transaction Metrics", "description": "Tool to retrieve summarised transaction metrics over a specified time period. Use when analyzing transaction data including revenue and quantity during a specific date range." }, { "slug": "GOSQUARED_LIST_PEOPLE", "name": "List People", "description": "Search and filter tracked people in GoSquared People CRM. Use this tool to: - List all tracked people or search by text query - Filter people by properties (email, name, etc.) or tracked events - Sort results by any property (default: most recently seen first) - Paginate through large result sets - Export results as JSON or CSV format - Get total count of matching people via 'cardinality' field Returns a structured response with 'list' (array of people), 'cardinality' (total count), and optional pagination links. Each person includes their ID, tracked properties, events, and links to related resources." }, { "slug": "GOSQUARED_NOW_CONCURRENTS", "name": "Get current concurrent visitors", "description": "Tool to retrieve the number of concurrent visitors currently on your site. Use when you need live, real-time visitor metrics." }, { "slug": "GOSQUARED_NOW_PAGES", "name": "Get Real-Time Popular Pages", "description": "Retrieve the most popular pages currently being viewed on your site in real-time. Returns pages ordered by visitor count. Use this tool when you need to know which pages are currently active and how many visitors are on each page right now." }, { "slug": "GOSQUARED_NOW_PLATFORMS", "name": "Get Real-Time Visitor Platforms", "description": "Tool to retrieve platforms used by online visitors sorted by visitor count. Use when you need a real-time breakdown of active visitor platforms." }, { "slug": "GOSQUARED_NOW_V3_OVERVIEW", "name": "Get Real-Time Overview", "description": "Tool to retrieve a summary of real-time data for the site. Use when a snapshot of current online visitor metrics and summary statistics is needed." }, { "slug": "GOSQUARED_NOW_V3_SOURCES", "name": "Now Sources", "description": "Tool to retrieve the most influential traffic sources currently driving visitors to your site. Use when you need an up-to-the-minute breakdown of referrer sources." }, { "slug": "GOSQUARED_NOW_V3_TIME_SERIES", "name": "Get Visitor Time Series", "description": "Retrieves time series data showing the number of concurrent visitors to your site over time. Use this tool when you need to analyze visitor traffic patterns, identify peak hours, or track historical visitor trends. Returns data points at regular intervals (configurable, default 5 minutes) within the specified time range." }, { "slug": "GOSQUARED_NOW_VISITORS", "name": "Get Real-Time Online Visitors", "description": "Tool to retrieve a list of current online visitors. Use when you need detailed real-time visitor information." }, { "slug": "GOSQUARED_PEOPLE_DEVICES", "name": "GoSquared - List All Devices", "description": "Retrieve a paginated list of all devices tracked in GoSquared People CRM. This tool returns information about every device that has ever been tracked, including platform (OS), browser, screen size, ISP, geographic location, and visit counts. Use this when you need an overview of all devices accessing your site/app or for device analytics. Note: Requires API key with 'read_people' scope." }, { "slug": "GOSQUARED_PEOPLE_SMARTGROUP_FEED", "name": "Export Smart Group Feed", "description": "Export all pageview activity for users in a Smart Group to a downloadable CSV file. Returns a time-limited URL (valid for 15 minutes) to download the CSV. Supports filtering by date range (max 60 days). Use this when you need bulk export of user pageview data for analytics or reporting purposes." }, { "slug": "GOSQUARED_PEOPLE_SMARTGROUP_PEOPLE", "name": "Smart Group People", "description": "Retrieve people (user profiles) from a specific Smart Group in GoSquared People CRM. Smart Groups are saved user segments defined by property or event filters. Use this action to list users matching a Smart Group's criteria, with optional search filtering and pagination. Prerequisites: - Requires a valid group_id. Get available Smart Group IDs using the 'List People Smart Groups' action first. - Requires 'read_people' API key scope. Returns user profiles with properties like id, email, name, and any custom properties tracked in People CRM." }, { "slug": "GOSQUARED_PEOPLE_SMART_GROUPS", "name": "List People Smart Groups", "description": "Retrieve all Smart Groups for a GoSquared People CRM project. Smart Groups are saved user segments based on property or event filters. Use this action to list all configured Smart Groups and their filter criteria. The returned group IDs can be used with other People API endpoints to query users within specific segments. Requires the 'read_people' API key scope." }, { "slug": "GOSQUARED_POST_ACCOUNT_SITES", "name": "Add Account Site", "description": "Creates a new site/project in the GoSquared account for analytics tracking. Returns the site_token needed to configure tracking on the new site. Requires: API key with 'write_account' scope (not supported by demo key)." }, { "slug": "GOSQUARED_POST_CHAT_CHAT_ARCHIVE", "name": "Archive Chat Conversation", "description": "Archives a chat conversation in GoSquared Inbox. Use this action to close out completed chat sessions, move resolved conversations out of the active inbox, or organize chat history. Archived chats can be retrieved later using the archived chats endpoint or unarchived using the 'Unarchive Chat Conversation' action." }, { "slug": "GOSQUARED_POST_CHAT_CHAT_MESSAGE", "name": "Send Chat Message", "description": "Send a message to a visitor in a GoSquared chat conversation. Use this tool to: - Send messages as an agent to website visitors - Send automated bot responses - Send messages on behalf of a client (requires auth signature) Prerequisites: Obtain a valid chatID from GOSQUARED_CHAT_CHATS or GOSQUARED_CHAT_CHAT first. For client messages, generate a Person Signature using SHA-256 HMAC with the Secure Mode Secret." }, { "slug": "GOSQUARED_POST_CHAT_CHAT_NOTE", "name": "Leave Chat Note", "description": "Adds an internal note to a GoSquared chat conversation. Notes are visible only to agents in the Inbox and are useful for leaving context, follow-up reminders, or team coordination messages. The chatID corresponds to the person_id of the visitor/client." }, { "slug": "GOSQUARED_POST_CHAT_CHAT_UNARCHIVE", "name": "Unarchive Chat Conversation", "description": "Unarchives a chat conversation in GoSquared Inbox. Use this action to restore an archived chat back to active state, making it visible in the active inbox again. This is useful when you need to resume conversations that were previously archived using the 'Archive Chat Conversation' action or archived manually in the GoSquared interface." }, { "slug": "GOSQUARED_POST_PEOPLE_SMARTGROUPS", "name": "Create People SmartGroup", "description": "Create a new Smart Group in GoSquared People CRM to segment users by custom criteria. Smart Groups are dynamic user segments based on property filters (like email, name, status) or event-based filters. Filters can use various operators including 'contains', 'eq' (equals), 'gt'/'lt' (greater/less than), '~' (is/equals), and '><' (date range). Use this when you need to: - Create user segments based on properties (e.g., email domain, subscription status) - Filter users by date ranges (e.g., created in last 7 days) - Combine multiple filter criteria (filters work as AND logic) - Organize users for targeted campaigns or analysis" }, { "slug": "GOSQUARED_SEND_TRACKING_PING", "name": "Send Tracking Ping", "description": "Sends a ping to keep the visitor session active in GoSquared. Must be received at least once every 30 seconds to maintain the session, otherwise the session will time out. Use this when implementing custom tracking libraries or advanced tracking processes." }, { "slug": "GOSQUARED_TAG_VISITOR", "name": "Tag Visitor", "description": "Tool to add a tag to an identified visitor in GoSquared. Use when you need to categorize, segment, or label visitors for organizational purposes or marketing campaigns." }, { "slug": "GOSQUARED_TRACKING_EVENT", "name": "Track GoSquared Event", "description": "Track custom events in GoSquared analytics. Use to record user actions like signups, purchases, button clicks, or any custom event. Events are associated with visitors/people and appear in their activity feeds and analytics dashboards." }, { "slug": "GOSQUARED_TRACKING_IDENTIFY", "name": "Identify User", "description": "Identify a user in GoSquared and set their profile properties. Links anonymous visitor activity to a known user identity and creates/updates their profile in the People dashboard. Requires 'write_tracking' API scope." }, { "slug": "GOSQUARED_TRACKING_PAGEVIEW", "name": "Track Pageview", "description": "Tracks a pageview event in GoSquared Analytics. Use this to record when a visitor views a page on your site. Requires visitor_id (unique identifier for the visitor) and page URL. Optionally include additional visitor data like screen size, browser info, campaign attribution, and more." }, { "slug": "GOSQUARED_TRACKING_TRANSACTION", "name": "Track GoSquared Transaction", "description": "Track e-commerce transactions in GoSquared analytics. Use this when a customer completes a purchase to record the transaction details including items purchased, revenue, and customer identification. The transaction ID must be unique - GoSquared uses this to prevent duplicate transactions. If the same transaction ID is sent again, the duplicate will be ignored. Transaction data appears in the GoSquared Ecommerce dashboard and can be associated with People profiles for customer analytics." }, { "slug": "GOSQUARED_TRACK_PROPERTIES", "name": "Track User Properties", "description": "Track user properties for a visitor in GoSquared. Use to set or update profile information for identified users or anonymous visitors. Properties include email, name, company details, and custom fields. Requires either person_id or visitor_id." }, { "slug": "GOSQUARED_TRENDS_AGGREGATE", "name": "Retrieve Aggregate Metrics", "description": "Retrieve aggregate web analytics metrics for a specified time period. Returns key metrics like pageviews, unique visitors, visits, bounce rate, engaged time, and e-commerce data, grouped by hour, day, or month. Use this tool to analyze overall website traffic trends and performance over time." }, { "slug": "GOSQUARED_TRENDS_CAMPAIGN_MEDIUM", "name": "Get Campaign Medium Metrics", "description": "Retrieve UTM medium metrics (utm_medium) aggregated over a specified date range. Use this to analyze which marketing mediums (e.g., email, social, cpc, organic) are driving traffic to your site." }, { "slug": "GOSQUARED_TRENDS_EVENT", "name": "Retrieve Event Counts", "description": "Retrieve counts of tracked event triggers over a specified time period. Use this tool to analyze how frequently custom events have been triggered on your site. Events must first be tracked using the GoSquared tracking API before they appear in results. Note: The 'data' property passed when tracking events is not included in this endpoint; use the Feed API to access event metadata." }, { "slug": "GOSQUARED_TRENDS_PAGE", "name": "Get Page Metrics", "description": "Retrieve page-level visit metrics over a specified time period. Returns a ranked list of pages by visit count within the date range. Use this to analyze which pages received the most traffic during a specific period." }, { "slug": "GOSQUARED_TRENDS_PATH1", "name": "Get Base Path Metrics", "description": "Retrieves base path metrics (first URL path segments) over a time period. Use this to analyze which top-level URL paths (e.g., '/blog', '/products', '/wiki') receive the most traffic. Useful for understanding site structure usage and identifying popular content sections. Requires 'read_trends' scope in your API key." }, { "slug": "GOSQUARED_UPDATE_ACCOUNT_BLOCKED_BOTS", "name": "Update Account Blocked Bots", "description": "Tool to update the automatic bot blocking feature for a project. Use when you need to enable or disable bot filtering for analytics tracking." }, { "slug": "GOSQUARED_UPDATE_ACCOUNT_BLOCKED_IPS", "name": "Update Account Blocked IPs", "description": "Tool to update the list of IP addresses to be blocked for a GoSquared project. Use when you need to block specific IP addresses from being tracked in analytics." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gosquared_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "GoSquared API Key", "type": "string", "description": "An API Key associated with your GoSquared account. Manage your API keys under the API Access section of your account settings.", "required": true, "default": null }, { "name": "generic_token", "displayName": "GoSquared Site Token", "type": "string", "description": "The token for the project you are retrieving data for. Find this under Settings > Current Project > General.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gozen_growth", "name": "GoZen Growth", "logo": "https://logos.composio.dev/api/gozen_growth", "description": "Email Marketing & Automation Solution", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gozen_growth_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Webhook URL", "type": "string", "description": "The complete webhook URL from your GoZen Growth automation workflow (e.g., https://apiv1.automation.app.gozen.io/webhooks/trigger-flow/your-workflow-id)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Authentication Token", "type": "string", "description": "Navigate to your GoZen Growth automation workflow, click \"Choose platform\" and select \"Webhook\", then click \"Setup workflow trigger\" and select \"Webhook Trigger\" to copy the authentication token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "graceblocks", "name": "Graceblocks", "logo": "https://logos.composio.dev/api/graceblocks", "description": "GraceBlocks is the platform that makes it easy to build and deploy systems that work for your users", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRACEBLOCKS_LIST_RECORDS", "name": "List Records from Block Tab", "description": "Tool to list records from a specific tab within a Block. Use when you need to retrieve multiple records from a Block tab. Supports pagination using limit and starting_after parameters. User must have appropriate security access level permissions for the Block." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "graceblocks_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Graceblocks account, click on one of your blocks, go to the API tab > Authentication menu option to retrieve your API key", "required": true, "default": null }, { "name": "generic_id", "displayName": "Block ID", "type": "string", "description": "Your Block ID from the API tab. In the Authentication request section, your Block ID is 1234 if the curl URL displayed is https://api.graceblocks.com/v1/1234/Tasks", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "grafana", "name": "Grafana", "logo": "https://logos.composio.dev/api/grafana", "description": "Open and composable observability platform for metrics, logs, and traces", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRAFANA_CREATE_OTLP_V1_LOGS", "name": "Create OTLP v1 Logs", "description": "Tool to create OTLP v1 logs in Grafana Loki. Use when you need to send OpenTelemetry Protocol logs to Grafana for ingestion and storage." }, { "slug": "GRAFANA_GET_DISTRIBUTOR_HA_TRACKER", "name": "Get Distributor HA Tracker", "description": "Tool to retrieve distributor HA tracker status. Use when you need to check which replica has been elected as leader for each Prometheus HA cluster." }, { "slug": "GRAFANA_GET_HEALTH", "name": "Get Grafana Health Status", "description": "Check Grafana server health and database connectivity. Returns 'ok' if Grafana's web server is running and can access the database. Use when you need to verify Grafana instance availability before performing operations." }, { "slug": "GRAFANA_GET_INDEX_GATEWAY_RING", "name": "Get Index Gateway Ring Status", "description": "Tool to retrieve the index gateway hash ring status from Grafana Loki. Returns information about the state, health, and last heartbeat time of each index gateway in the ring." }, { "slug": "GRAFANA_GET_OVERRIDES_EXPORTER_RING", "name": "Get overrides exporter ring", "description": "Tool to retrieve the overrides-exporter hash ring status as an HTML page. Use when you need to check the state, health, and heartbeat information of overrides-exporter instances. Only accessible when -overrides-exporter.ring.enabled flag is true." }, { "slug": "GRAFANA_GET_RULER_RING", "name": "Get Ruler Ring Status", "description": "Tool to retrieve the ruler ring status from Grafana Mimir. Use when you need to check the distributed hash ring topology and operational status of ruler instances." }, { "slug": "GRAFANA_GET_STATUS", "name": "Get License Status", "description": "Tool to check if a valid Grafana Enterprise license is available. Use when you need to verify license status or availability." }, { "slug": "GRAFANA_GET_STORE_GATEWAY_TENANTS", "name": "Get Store Gateway Tenants", "description": "Retrieves store gateway tenants. Returns a list of tenants that have blocks stored in the store-gateway's configured storage. Use when you need to view which tenants have data stored on a store-gateway node." }, { "slug": "GRAFANA_POST_ACS", "name": "Post ACS", "description": "Tool to perform SAML Assertion Consumer Service (ACS) operation. Use when processing SAML authentication responses from an identity provider. This endpoint typically handles the SAML assertion and returns a redirect response (HTTP 302)." }, { "slug": "GRAFANA_QUERY_PUBLIC_DASHBOARD", "name": "Query Public Dashboard Panel", "description": "Query a panel on a public Grafana dashboard to retrieve time-series data and metrics. Use when you need to fetch visualization data from a publicly shared dashboard without authentication. Returns data frames with query results for the specified time range." }, { "slug": "GRAFANA_RETRIEVE_JWKS", "name": "Retrieve JWKS", "description": "Tool to retrieve JSON Web Key Set (JWKS) with all public keys for token verification. Use when you need to get the keys that can verify JWT tokens." } ], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "grafana_bearer_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "full", "displayName": "Domain", "type": "string", "description": "If you have a Grafana instance hosted at https://example.com, then enter `https://example.com` here.", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Service Account Token", "type": "string", "description": "To get your Service Account Token, sign in and open the settings menu on the top left. Scroll down to \"Administration\" > \"Users and access\" > \"Service accounts\". Click on one of your Service accounts, and hit \"Add service account token\" in the Tokens section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "grafbase", "name": "Grafbase", "logo": "https://grafbase.com/favicon.ico", "description": "Grafbase is a platform that accelerates the development of GraphQL APIs, offering features like edge caching, unified data access, and seamless integration with popular authentication strategies.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRAFBASE_ADD_ZITADEL_REDIRECT", "name": "Add Zitadel Redirect URI", "description": "Add a redirect URI to Zitadel OAuth configuration in Grafbase. Use when you need to register a new redirect URI for OAuth flows with Zitadel identity provider." }, { "slug": "GRAFBASE_ASSIGN_TEAM_ROLE", "name": "Assign Team Role", "description": "Tool to assign a role to a team member in Grafbase. Use this when you need to change a team member's role between MEMBER and ADMIN. ADMIN role grants team management privileges including adding/removing members and changing roles." }, { "slug": "GRAFBASE_DELETE_API_KEY", "name": "Delete Grafbase API Key", "description": "Delete an existing Grafbase API key (access token) by ID. Use after confirming the key ID via the List API Keys action. This action permanently revokes the API key's access." }, { "slug": "GRAFBASE_DELETE_AUDIT_LOG", "name": "Delete Grafbase Audit Log", "description": "Tool to delete a specific Grafbase audit log entry. IMPORTANT: Grafbase does not expose a public API to delete audit logs. Audit logs are read-only compliance records retained for 90 days and can only be exported as CSV from the Grafbase Dashboard. This action validates connectivity to the Grafbase API and returns an informative response about this limitation." }, { "slug": "GRAFBASE_DELETE_EXTENSION", "name": "Delete Extension", "description": "Tool to delete a Grafbase extension configuration by its unique ID. Note: Grafbase extensions are primarily configured via grafbase.toml configuration file and WebAssembly modules, not through a REST API. This action attempts to delete via the API endpoint if it exists; otherwise, it returns guidance on how to remove extensions via configuration. Use this action when you need to programmatically attempt to remove an extension configuration, understanding that the operation may require manual configuration changes if the API endpoint is not available." }, { "slug": "GRAFBASE_DELETE_MCP_SERVER", "name": "Delete MCP Server", "description": "Tool to delete a Grafbase MCP server configuration by its unique ID. Note: Grafbase MCP is primarily configured via grafbase.toml configuration file, not through a REST API. This action attempts to delete via the API endpoint if it exists; otherwise, it returns guidance on how to disable MCP via configuration. Use this action when you need to programmatically attempt to remove an MCP server configuration, understanding that the operation may require manual configuration changes if the API endpoint is not available." }, { "slug": "GRAFBASE_DELETE_SCHEMA", "name": "Delete Grafbase Subgraph", "description": "Tool to delete a subgraph from a Grafbase federated graph. Use this when you need to remove a subgraph from the schema registry. The operation can be run as a dry run first to check if deletion would cause composition errors in the federated graph. Required: account_slug, subgraph_name Optional: branch (defaults to 'main'), graph_slug, message, dry_run" }, { "slug": "GRAFBASE_DELETE_SCHEMA_CHECK", "name": "Delete Schema Check", "description": "Attempt to delete a schema check from the Grafbase platform. IMPORTANT LIMITATION: The Grafbase Platform API does not support deleting schema checks. Schema checks are immutable audit records that provide a historical trail of schema validations. They cannot be deleted through the API. This action will verify the schema check exists and return an informative response indicating that deletion is not supported by the Grafbase API. If you need to manage schema checks, consider: - Using the 'List Schema Checks' action to view existing checks - Using the 'Get Schema Check' action to retrieve details of a specific check - Schema checks are automatically created via 'grafbase check' CLI command or API" }, { "slug": "GRAFBASE_DELETE_TEAM", "name": "Delete Grafbase Team", "description": "Tool to delete a team from the Grafbase organization. Use when removing a team that is no longer needed. This action permanently removes the team and its associated permissions." }, { "slug": "GRAFBASE_DISABLE_MCP", "name": "Disable MCP Server", "description": "Disable the Model Context Protocol (MCP) server for a Grafbase project. MCP enables AI agents to query your GraphQL APIs using natural language. Use this action when you need to turn off MCP access to your API. Note: In most Grafbase deployments, MCP is configured via grafbase.toml (setting [mcp].enabled = false). This action attempts to disable MCP via API if the endpoint supports it, otherwise returns guidance for configuration-based disabling." }, { "slug": "GRAFBASE_ENABLE_MCP", "name": "Enable Grafbase MCP Server", "description": "Enable the Model Context Protocol (MCP) server on a Grafbase gateway. MCP allows AI tools (like Cursor, Windsurf, VS Code) to explore and query your GraphQL API using natural language. This tool attempts to enable MCP via the gateway API. Note: MCP is typically enabled via gateway configuration (grafbase.toml with [mcp].enabled = true). If the API endpoint is not supported or the gateway is unreachable, this tool returns guidance for manual configuration. Use this when you need to activate MCP support on a Grafbase gateway." }, { "slug": "GRAFBASE_GET_AUDIT_LOG", "name": "Get Grafbase Audit Log", "description": "Tool to retrieve a specific Grafbase audit log entry by searching organization activity. Note: Grafbase does not expose a direct API to fetch individual audit log entries by ID. This action queries organization member activity via the GraphQL API and attempts to find a matching entry based on the provided log_id (which can be a timestamp, user ID, or action type). For full audit log access, use the CSV export feature in the Grafbase dashboard (Settings > Audit Logs) which is available to organization owners and admins." }, { "slug": "GRAFBASE_GET_EXTENSION_BY_NAME", "name": "Get Extension by Name", "description": "Tool to retrieve a Grafbase extension by its name. Returns detailed information including the extension's ID, name, versions, and ownership details. Use this when you need to look up an extension by name rather than ID." }, { "slug": "GRAFBASE_GET_EXTENSION_VERSION_BY_NAME_AND_VERSION", "name": "Get Extension Version By Name And Version", "description": "Tool to retrieve details of a specific Grafbase extension version by name and version. Use when you need to query information about a particular version of an extension, including its creation date and license." }, { "slug": "GRAFBASE_GET_FEDERATED_SCHEMA", "name": "Get Federated Schema", "description": "Retrieves the composed federated graph schema from Grafbase in SDL format. Use this to inspect the unified schema after all subgraph schemas have been composed. Returns the full GraphQL SDL including all types, queries, mutations, and subscriptions. Requires at least one federated graph with published subgraphs to return a schema." }, { "slug": "GRAFBASE_GET_INVITATION", "name": "Get Grafbase Invitation", "description": "Tool to retrieve details about a specific Grafbase invitation by ID. Use when you need to check the status, email, or creation date of an invitation." }, { "slug": "GRAFBASE_GET_NOTIFICATIONS_INBOX_MESSAGES", "name": "Get Notifications Inbox Messages", "description": "Tool to retrieve notifications inbox messages for the authenticated Grafbase user. Returns all notification messages with counts of total and unread notifications. Use when you need to check for new notifications or see notification history." }, { "slug": "GRAFBASE_GET_SCHEMA_CHECK", "name": "Get Grafbase Schema Check", "description": "Retrieve details of a specific schema check by its ID. This tool fetches comprehensive information about a schema validation check, including error details, git commit information, and approval status. Requires account_slug and graph_slug to identify the graph. Use the check_id from list_schema_checks to retrieve specific check details." }, { "slug": "GRAFBASE_GET_SUBGRAPH_SCHEMA", "name": "Get Subgraph Schema", "description": "Retrieves the GraphQL SDL schema for a specific subgraph by name. Use GRAFBASE_LIST_SUBGRAPHS first to discover available subgraph names. Returns the full schema definition including types, queries, mutations, and subscriptions." }, { "slug": "GRAFBASE_LIST_API_KEYS", "name": "List API Keys", "description": "List all API keys (access tokens) for the authenticated Grafbase user. Uses the Grafbase Management API to retrieve access tokens with pagination support." }, { "slug": "GRAFBASE_LIST_AUDIT_LOGS", "name": "List Grafbase Audit Logs", "description": "Tool to list audit logs for Grafbase organizations. Audit logs track organization member activity including graph management, team operations, access control changes, and configuration updates. Note: Grafbase audit logs are retained for 90 days. Currently, the primary method to access audit logs is via CSV export from the Grafbase dashboard. This action attempts to query organization activity via the GraphQL API and returns available data or an informative response about API limitations." }, { "slug": "GRAFBASE_LIST_EXTENSIONS", "name": "List Extensions", "description": "Tool to list all extensions configured for a Grafbase project. Returns extensions from the project's configuration. Use to discover what extensions are installed in your Grafbase gateway." }, { "slug": "GRAFBASE_LIST_MCP_SERVERS", "name": "List MCP Servers", "description": "Check MCP server configuration status for a Grafbase gateway. Grafbase MCP servers are configured via grafbase.toml files, not through a dynamic API. This tool checks if the MCP endpoint is accessible and provides configuration guidance. Use this tool when you need to: - Check if MCP is enabled on a Grafbase gateway - Get the MCP endpoint URL for a gateway - Understand how to configure MCP for Grafbase" }, { "slug": "GRAFBASE_LIST_SCHEMA_CHECKS", "name": "List Grafbase Schema Checks", "description": "List schema checks for a Grafbase graph. This tool retrieves the history of schema validation checks that have been run against a specific graph. Schema checks help detect breaking changes before deploying schema updates. Requires account_slug and graph_slug to identify the target graph. Supports cursor-based pagination using first/after or last/before parameters." }, { "slug": "GRAFBASE_LIST_SCHEMAS", "name": "List Grafbase Schemas", "description": "Tool to list all schemas in the Grafbase schema registry. In Grafbase, the schema registry tracks published subgraphs in federated graphs. Each schema entry represents a subgraph with its name, endpoint URL, and associated graph/branch." }, { "slug": "GRAFBASE_LIST_SUBGRAPHS", "name": "List Grafbase Subgraphs", "description": "Tool to list published subgraphs in your Grafbase federated graphs. Use this to discover all subgraphs, their names, and endpoint URLs across your organizations. Optionally filter by branch name (e.g., 'main', 'dev')." }, { "slug": "GRAFBASE_MARK_NOTIFICATIONS_AS_READ", "name": "Mark Notifications as Read", "description": "Tool to mark Grafbase notifications as read. Use when you need to update the read status of one or more notifications in your notification inbox." }, { "slug": "GRAFBASE_REMOVE_GRAPH_OWNER", "name": "Remove Graph Owner", "description": "Tool to remove an owner from a Grafbase graph. Use when you need to revoke ownership or access rights for a user or team on a specific graph." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "grafbase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Project Subdomain", "type": "string", "description": "The subdomain of your Grafbase project, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Grafbase API Key", "type": "string", "description": "The API key provided by Grafbase for authenticating requests. It is specific to your Grafbase project environment.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "grain", "name": "Grain", "logo": "https://logos.composio.dev/api/grain", "description": "AI-powered meeting recording and note-taking platform for teams", "category": "productivity", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "grain_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "grain_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Personal or Workspace Access Token from https://grain.com/app/settings/integrations?tab=api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "granola_mcp", "name": "Granola MCP", "logo": "https://logos.composio.dev/api/granola_mcp", "description": "Granola is an AI notepad that transcribes and summarizes meetings. The Granola MCP server exposes your notes, transcripts and summaries to agents.", "category": "productivity", "authSchemes": [ "DCR_OAUTH" ], "toolCount": 6, "triggerCount": 0, "version": "20260701_00", "tools": [ { "slug": "GRANOLA_MCP_GET_ACCOUNT_INFO", "name": "Get account info", "description": "Get the email and active workspace for the Granola account currently connected to this MCP session.\n\nWhen to use:\n- User asks 'who am I signed in as?', 'which Granola account is this?', or 'what's my email?'\n- User suspects they connected the wrong Granola account\n- Before performing actions, to confirm identity if the user references a specific account" }, { "slug": "GRANOLA_MCP_GET_MEETINGS", "name": "Get meetings", "description": "Get detailed meeting information for one or more Granola meetings by ID. Returns private notes, AI-generated summary, attendees, and metadata.\nUse this when you already have specific meeting IDs (e.g. from list_meetings results). For open-ended questions about meeting content, use query_granola_meetings instead." }, { "slug": "GRANOLA_MCP_GET_MEETING_TRANSCRIPT", "name": "Get meeting transcript", "description": "Get the full transcript for a specific Granola meeting by ID. Returns only the verbatim transcript content, not summaries or notes.\nUse this when the user needs exact quotes, specific wording, or wants to review what was literally said in a meeting. For summarized content or action items, use query_granola_meetings or list_meetings/get_meetings instead." }, { "slug": "GRANOLA_MCP_LIST_MEETING_FOLDERS", "name": "List meeting folders", "description": "List the user's Granola meeting folders. Returns folder ID, title, description, and note count including nested folders.\n\nWhen to use:\n- User asks about their folders or wants to browse meetings by folder\n- User wants to narrow down meeting searches to a specific folder\n\nUse the returned folder IDs with list_meetings (folder_id parameter) to list meetings within a specific folder." }, { "slug": "GRANOLA_MCP_LIST_MEETINGS", "name": "List meetings", "description": "List the user's Granola meeting notes within a time range. Returns meeting titles and metadata.\n\nIMPORTANT: For short-term questions about recent meeting details, prefer using query_granola_meetings instead.\n\nWhen to use:\n- User asks to list their meetings\n- User asks about action items, decisions, or summaries from meetings over a longer or specific date range\n- User asks about content from their meeting transcripts\n- User references 'Granola notes' or 'meeting notes' or 'transcripts'\n\nWhen NOT to use:\n- User is asking about upcoming calendar events or scheduling\n- User wants to create/modify calendar invites\n\nUse get_meetings to retrieve detailed meeting content after identifying relevant meetings.\nUse list_meeting_folders to discover folder IDs, then pass a folder_id to list meetings within a specific folder." }, { "slug": "GRANOLA_MCP_QUERY_GRANOLA_MEETINGS", "name": "Query granola meetings", "description": "Query Granola about the user's meetings using natural language. Returns a tailored response with inline citation links in mark (e.g. [[0]](url)) that reference source meeting notes.\n\nIMPORTANT: The response includes numbered citation links to specific Granola meeting notes. These citations MUST be preserved in your response to the user — they provide transparency and allow the user to verify information by clicking through to the original notes.\n\nWhen to use:\n- User asks about what was discussed, decided, or action-items from meetings\n- User asks about follow-ups, todos, or commitments from recent meetings\n- User references 'Granola notes' or 'meeting notes'\n\nWhen NOT to use:\n- User is asking about calendar scheduling or upcoming events\n- User explicitly asks for a specific meeting by ID (use get_meetings instead)\n\nPrioritize using query_granola_meetings over list_meetings/get_meetings for open-ended or natural language queries about meeting content." } ], "triggers": [], "authConfigDetails": [ { "mode": "DCR_OAUTH", "name": "granola_mcp_DCR_OAuth", "fields": { "auth_config_creation": { "required": [], "optional": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": false, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": false, "default": null }, { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "email,offline_access,openid,profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "graphhopper", "name": "Graphhopper", "logo": "https://www.graphhopper.com/images/graphhopper_logo.svg", "description": "GraphHopper Directions API provides enterprise-grade routing services, including route planning, optimization, geocoding, and more, for various vehicle types.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRAPHHOPPER_CLUSTER_POST", "name": "Capacity Clustering", "description": "Solve capacity-constrained clustering problems by assigning customers to clusters while minimizing total travel distance. Useful for delivery zone planning, sales territory optimization, and workload balancing. Supports car, bike, and foot routing profiles. Note: Free tier limited to 5 customers per request." }, { "slug": "GRAPHHOPPER_GEOCODE_GET", "name": "GraphHopper Geocoding", "description": "Tool to perform forward or reverse geocoding. Use when converting between textual addresses and latitude/longitude coordinates." }, { "slug": "GRAPHHOPPER_GET_CLUSTER_SOLUTION", "name": "Get Cluster Solution", "description": "Tool to retrieve the solution of an asynchronous clustering job. Use when you have a job ID from a previous cluster calculation request and need to fetch the results." }, { "slug": "GRAPHHOPPER_GET_MATRIX", "name": "Get Matrix", "description": "Tool to compute a distance and/or time matrix using GET request with query parameters. Use for simpler matrix requests with query parameters instead of POST body." }, { "slug": "GRAPHHOPPER_GET_MATRIX_SOLUTION", "name": "Get Matrix Solution", "description": "Tool to retrieve the result of an asynchronous matrix computation job. Use when you have a job ID from a previous matrix calculation request and need to check if it's finished and get the results." }, { "slug": "GRAPHHOPPER_GET_ROUTE", "name": "GET Route", "description": "Tool to calculate the best path connecting two or more points using simple GET request. Use when you need basic routing with query parameters." }, { "slug": "GRAPHHOPPER_ISOCHRONE_GET", "name": "Get Isochrone", "description": "Tool to compute isochrone polygons for a given point. Use when you need to determine areas reachable within time or distance constraints." }, { "slug": "GRAPHHOPPER_MATRIX_POST", "name": "Calculate Matrix", "description": "Tool to calculate distance, time, or weight matrices via POST. Use when you have multiple origins/destinations or a symmetric point set and need a single batch request." }, { "slug": "GRAPHHOPPER_PROFILES_GET", "name": "Get Custom Profiles", "description": "Retrieve all custom routing profiles for your GraphHopper account. Custom profiles allow you to customize routing behavior (e.g., avoid certain roads, limit speeds, prefer certain road types). Use this tool to list available custom profiles that can be used with the Routing, Matrix, and Route Optimization APIs. Note: Custom profiles feature requires a premium GraphHopper package. If not enabled on your account, this returns an empty list." }, { "slug": "GRAPHHOPPER_ROUTE_POST", "name": "POST Route", "description": "Tool to calculate complex routes via POST /route. Use when you need advanced route planning with custom parameters." }, { "slug": "GRAPHHOPPER_SUBMIT_MATRIX_JOB", "name": "Submit Matrix Job", "description": "Tool to submit a matrix computation job for asynchronous processing. Use for large matrices that exceed synchronous limits. Returns a job ID to retrieve results later." }, { "slug": "GRAPHHOPPER_UPLOAD_GPX_FILE", "name": "Map Match GPX Track", "description": "Map-match a GPX track using GraphHopper's Map Matching API. This tool takes GPS track points in GPX format and snaps them to the digital road network. It's useful for: - Cleaning noisy GPS data by aligning points to actual roads - Getting accurate route distances and travel times from recorded GPS tracks - Attaching road information (street names, surfaces) to GPS traces - Generating turn-by-turn instructions for recorded trips The API uses the Viterbi algorithm to find the most likely sequence of road segments that match the input GPS points, accounting for GPS measurement noise." }, { "slug": "GRAPHHOPPER_VRP_POST", "name": "GraphHopper VRP POST", "description": "Tool to initiate VRP optimization. Use when you need to solve vehicle routing problems synchronously." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "graphhopper_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "GraphHopper API Key", "type": "string", "description": "Your unique API key for authenticating requests to the GraphHopper Directions API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "greenhouse", "name": "Greenhouse", "logo": "https://logos.composio.dev/api/greenhouse", "description": "Applicant tracking and recruiting software to optimize your entire recruiting process", "category": "hr talent & recruitment", "authSchemes": [ "S2S_OAUTH2", "OAUTH2" ], "toolCount": 133, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GREENHOUSE_ACTIVATE_USER", "name": "Reactivate Greenhouse user", "description": "Reactivate a previously deactivated Greenhouse user via the Harvest v3 API so they can sign in again. Use when you need to restore sign-in access for a user account that was previously deactivated, for example when an employee returns. Reactivation restores access only; job permissions that were removed during deactivation are not restored. The call is safe to repeat on an already-active user." }, { "slug": "GREENHOUSE_ANONYMIZE_CANDIDATE", "name": "Anonymize Greenhouse candidate", "description": "Tool to anonymize selected categories of personally identifiable data on a Greenhouse candidate via the Harvest v3 API, for GDPR or right-to-be-forgotten requests. Use when you must permanently redact specific classes of a candidate's PII (such as full name, contact details, tags, attachments, or notes) while retaining the candidate record. WARNING: anonymization is irreversible — the selected fields are permanently cleared or redacted and cannot be recovered, so verify the candidate id and the field selection carefully before calling." }, { "slug": "GREENHOUSE_APPLY_CANDIDATE_TAG", "name": "Apply Greenhouse candidate tag", "description": "Tool to apply an existing candidate tag to a candidate via the Greenhouse Harvest v3 API. Use when you want to label a candidate with a tag that already exists in the organization's candidate-tag dictionary. Both the candidate and the tag must already exist; the tag is not created by this action." }, { "slug": "GREENHOUSE_BULK_CREATE_BLOCKED_SPAM_SOURCES", "name": "Bulk create Greenhouse blocked spam sources", "description": "Tool to add multiple blocked spam sources to Greenhouse in a single request via the Harvest v3 API. Use when you need to block several IP addresses, email addresses, CIDR ranges, and/or email domains at once so future applications from them are automatically rejected. The request is processed asynchronously: Greenhouse returns a bulk request uuid and a status URL to poll for completion." }, { "slug": "GREENHOUSE_BULK_CREATE_CUSTOM_FIELD_OPTIONS", "name": "Bulk create Greenhouse custom field options", "description": "Tool to add many custom field options at once to select-type custom fields via the Greenhouse Harvest v3 API. Use when you need to create multiple options across one or more single_select/multi_select custom fields in a single call. The request is processed asynchronously: Greenhouse returns a bulk request uuid and a status URL to poll for completion and the created option ids." }, { "slug": "GREENHOUSE_BULK_CREATE_OPENINGS", "name": "Bulk create Greenhouse openings", "description": "Tool to asynchronously create many Greenhouse openings across one or more jobs in a single Harvest v3 call. Use when you need to add headcount slots in bulk and want a single submission that Greenhouse processes in the background. Returns a bulk_action_uuid and status_url to poll for per-row results; openings are created independently, so some rows may succeed while others fail." }, { "slug": "GREENHOUSE_BULK_DEACTIVATE_USERS", "name": "Bulk deactivate Greenhouse users", "description": "Tool to asynchronously deactivate many Greenhouse users in a single Harvest v3 call, up to the bulk-endpoint cap per request. Use when you need to revoke sign-in access for several users at once (for example when offboarding a group of employees) and want one submission that Greenhouse processes in the background. Deactivation only blocks sign-in: each user's record and history are preserved and any user can be reactivated later, so the operation is reversible. Returns a bulk_action_uuid and status_url to poll for per-row results; users are processed independently, so some rows may succeed while others fail." }, { "slug": "GREENHOUSE_BULK_DELETE_CUSTOM_FIELD_OPTIONS", "name": "Bulk delete Greenhouse custom field options", "description": "Tool to archive many custom field options at once by id via the Greenhouse Harvest v3 API. Use when you need to remove multiple options from one or more select-type custom fields in a single call. This is destructive: archived custom field options are removed from the field and can no longer be selected, so restoring them requires re-creating the options. The request is processed asynchronously: Greenhouse returns a bulk request uuid and a status URL to poll for completion." }, { "slug": "GREENHOUSE_BULK_UPDATE_BLOCKED_SPAM_SOURCES", "name": "Bulk update Greenhouse blocked spam sources", "description": "Tool to asynchronously update the note on many Greenhouse blocked spam sources in a single Harvest v3 call. Use when you need to revise notes on multiple blocklist entries at once and want a single submission that Greenhouse processes in the background. Returns a bulk_action_uuid and status_url to poll for per-row results; only the note can be changed (source_type and value are immutable here), and rows are processed independently so some may succeed while others fail." }, { "slug": "GREENHOUSE_BULK_UPDATE_CUSTOM_FIELD_OPTIONS", "name": "Bulk update Greenhouse custom field options", "description": "Tool to asynchronously edit many Greenhouse custom field options in a single Harvest v3 call. Use when you need to rename, reorder, or set external ids on several options at once and want a single submission that Greenhouse processes in the background. Returns a bulk_action_uuid and status_url to poll for per-row results; each option is updated independently, so some rows may succeed while others fail." }, { "slug": "GREENHOUSE_BULK_UPDATE_DEPARTMENTS", "name": "Bulk update Greenhouse departments", "description": "Tool to asynchronously update many Greenhouse departments in a single call via the Harvest v3 API. Use when you need to rename or re-key several departments at once, each identified by its Greenhouse id, up to Greenhouse's bulk-endpoint cap per request. The request is processed asynchronously: Greenhouse validates and updates each department independently and returns a bulk request uuid plus a status URL to poll for the final per-row outcome." }, { "slug": "GREENHOUSE_BULK_UPDATE_OFFICES", "name": "Bulk update Greenhouse offices", "description": "Tool to asynchronously update many Greenhouse offices in a single Harvest v3 call. Use when you need to rename offices, set or clear their location or external_id, or reposition them in the office tree in bulk, and want a single submission that Greenhouse processes in the background. Returns a bulk_action_uuid and status_url to poll for per-row results; offices are updated independently, so some rows may succeed while others fail." }, { "slug": "GREENHOUSE_BULK_UPDATE_OPENINGS", "name": "Bulk update Greenhouse openings", "description": "Tool to asynchronously update many Greenhouse openings in a single call via the Harvest v3 API. Use when you need to re-key, open, close, or update custom fields on several openings at once, each identified by its immutable Greenhouse id, up to Greenhouse's bulk-endpoint cap per request. The request is processed asynchronously: Greenhouse validates and updates each opening independently and returns a bulk request uuid plus a status URL to poll for the final per-row outcome. Closing an opening (status 'closed') cannot be undone except by explicitly reopening it, and closing the last opening also closes the hiring plan." }, { "slug": "GREENHOUSE_BULK_UPDATE_USERS", "name": "Bulk update Greenhouse users", "description": "Tool to asynchronously update many Greenhouse users in a single call via the Harvest v3 API. Use when you need to change fields on several users at once (for example an HRIS sync updating job titles, offices, departments, or custom fields), each identified by its Greenhouse id, up to Greenhouse's bulk-endpoint cap per request. The request is processed asynchronously: Greenhouse validates and updates each user independently and returns a bulk request uuid plus a status URL to poll for the final per-row outcome." }, { "slug": "GREENHOUSE_CREATE_APPLICATION", "name": "Create Greenhouse application", "description": "Tool to create a new application for an existing Greenhouse candidate via the Harvest v3 API. Use when you need to attach a candidate to a job (supply candidate_id and job_id) or register a sourced candidate as a prospect (supply candidate_id and prospect: true). The two request shapes are mutually exclusive: a job application uses job_id while a prospect uses prospect: true with optional prospect-specific fields." }, { "slug": "GREENHOUSE_CREATE_APPROVAL_FLOW", "name": "Create Greenhouse approval flow", "description": "Tool to create a multi-step approval flow on a Greenhouse job via the Harvest v3 API. Use when you need to gate a job opening or offer behind one or more tiers of approvers, supplying the job_id, approval_type, whether the tiers resolve sequentially, and the seeded approver_groups. The flow is created with approval_status=pending; offer_candidate flows additionally require the offer_id." }, { "slug": "GREENHOUSE_CREATE_ATTACHMENT", "name": "Create Greenhouse attachment", "description": "Tool to attach a file to an existing Greenhouse application via the Harvest v3 API. Use when you need to upload a document (resume, cover letter, offer letter, etc.) to a candidate's application, supplying the application_id, filename, type, and exactly one of content (base64-encoded bytes) or url (a publicly fetchable link). The returned download URL is time-limited and expires after seven days." }, { "slug": "GREENHOUSE_CREATE_BLOCKED_SPAM_SOURCE", "name": "Create Greenhouse blocked spam source", "description": "Tool to add a new IP address, CIDR range, email address, or email domain to the organization's spam blocklist via the Greenhouse Harvest v3 API. Use when you need to block a sender or network source so that future applications and emails from it are automatically rejected. The source_type field controls how value is interpreted (single IP, IP range, single email address, or whole email domain)." }, { "slug": "GREENHOUSE_CREATE_CANDIDATE", "name": "Create Greenhouse candidate", "description": "Tool to create a new candidate profile in Greenhouse via the Harvest v3 API. Use when you need to add a candidate to your organization, optionally creating their first application (an applicant on a specific job, or a prospect) in the same call. Only first_name and last_name are required; all other profile and application fields are optional." }, { "slug": "GREENHOUSE_CREATE_CANDIDATE_EDUCATION", "name": "Create Greenhouse candidate education", "description": "Tool to add a new education entry to a Greenhouse candidate's profile via the Harvest v3 API. Use when you need to record a candidate's schooling, including the school, degree, and discipline (referenced by custom-field option ids) along with start and end dates. Only candidate_id is required; school, degree, and discipline are optional but must reference existing custom-field option ids." }, { "slug": "GREENHOUSE_CREATE_CANDIDATE_EMPLOYMENT", "name": "Create Greenhouse candidate employment", "description": "Tool to add a new work-history (employment) entry to a Greenhouse candidate's profile via the Harvest v3 API. Use when you need to record a candidate's past or current role. The candidate id, company name, job title, and start date are required by Greenhouse; omit end_date to represent a current, ongoing position." }, { "slug": "GREENHOUSE_CREATE_CANDIDATE_TAG", "name": "Create Greenhouse candidate tag", "description": "Tool to add a new tag to the organization's candidate-tag dictionary via the Greenhouse Harvest v3 API. Use when you need to register a reusable candidate tag (by name) so it can later be applied to candidates. Tag names are case-insensitive; if a matching tag already exists Greenhouse returns the existing tag rather than creating a duplicate." }, { "slug": "GREENHOUSE_CREATE_CUSTOM_FIELD", "name": "Create Greenhouse custom field", "description": "Tool to add a new custom field to your organization's dictionary via the Greenhouse Harvest v3 API. Use when you need to define a new custom data point (text, number, currency, select, date, etc.) on jobs, candidates, applications, offers, openings, or other Greenhouse resources. field_type, value_type, and name are required; select-type fields (single_select/multi_select) require custom_field_options." }, { "slug": "GREENHOUSE_CREATE_CUSTOM_FIELD_DEPARTMENT", "name": "Create Greenhouse custom field department", "description": "Tool to restrict a custom field's visibility to one additional department via the Greenhouse Harvest v3 API. Use when you want a custom field to appear only on jobs, offers, or candidates that belong to specific departments and need to add another department to that allow-list. Each call adds a single department association; repeat the call to grant visibility to more departments." }, { "slug": "GREENHOUSE_CREATE_CUSTOM_FIELD_OFFICE", "name": "Create Greenhouse custom field office", "description": "Tool to restrict a custom field's visibility to one additional office via the Greenhouse Harvest v3 API. Use when you need to make an existing job, opening, or offer custom field visible for one more office without replacing its existing office restrictions. Supply the target custom_field_id and the office_id; only one office can be added per call." }, { "slug": "GREENHOUSE_CREATE_CUSTOM_FIELD_OPTION", "name": "Create Greenhouse custom field option", "description": "Tool to add a new selectable value to a single_select or multi_select custom field via the Greenhouse Harvest v3 API. Use when you need to extend a custom field with an additional option (for example syncing option values from an external HRIS). Supply the target custom_field_id and the option name, plus an optional sort_order and external_id; the field must be of a select type for the option to apply." }, { "slug": "GREENHOUSE_CREATE_DEPARTMENT", "name": "Create Greenhouse department", "description": "Tool to create a new department for the organization via the Greenhouse Harvest v3 API. Use when you need to add a department with an optional external_id and an optional parent department (by id or external_id) to nest it in the department tree. The name is required and must be unique among active departments; parent_id and external_parent_id are mutually exclusive." }, { "slug": "GREENHOUSE_CREATE_INTERVIEW", "name": "Create Greenhouse interview", "description": "Tool to create a scheduled interview against a candidate application in Greenhouse Harvest. Use when you need to place a candidate's interview onto the schedule with a start/end time, panel of interviewers, and the corresponding calendar event. The interview is created for a specific interview-plan slot (job_interview_id) and tied to an external calendar event id." }, { "slug": "GREENHOUSE_CREATE_JOB", "name": "Create Greenhouse job", "description": "Tool to create a new Greenhouse job from an existing template via the Harvest v3 API. Use when you need to spin up a new requisition that inherits its interview plan, scorecards, hiring team, and approval workflow from a template job. template_job_id and number_of_openings are required; department/office can be set by Greenhouse id or by partner external_id (the two forms are mutually exclusive), and the legacy confidential flag cannot be set here." }, { "slug": "GREENHOUSE_CREATE_JOB_HIRING_MANAGER", "name": "Create Greenhouse job hiring manager", "description": "Tool to assign a user as a hiring manager on a Greenhouse job via the Harvest v3 API. Use when you need to add an existing organization user to a job's hiring team in the hiring manager role. Both job_id and user_id are required and must reference resources that already exist in your organization; the call returns the assignment's row id, which is needed to later revoke it." }, { "slug": "GREENHOUSE_CREATE_JOB_NOTE", "name": "Create Greenhouse job note", "description": "Tool to create a free-form note attached to a Greenhouse job via the Harvest v3 API. Use when you need to record context, hiring decisions, or status updates on a specific job (identified by job_id) rather than on a candidate or application. The note's author is set by user_id and its access level by visibility (privately_visible or admin_only_visible)." }, { "slug": "GREENHOUSE_CREATE_JOB_OWNER", "name": "Add Greenhouse job owner", "description": "Add a Greenhouse user to a job's hiring team as a recruiter, sourcer, or coordinator via the Harvest v3 API. Use when you need to assign someone an owner role on a specific job so they participate in its recruiting workflow. Requires job_id, user_id, and the role type." }, { "slug": "GREENHOUSE_CREATE_NOTE", "name": "Create Greenhouse candidate note", "description": "Tool to create a candidate note, log an email, or record an activity-feed entry on a Greenhouse candidate via the Harvest v3 API. Use when you need to attach a note (note_type NOTE), a logged email (note_type EMAIL, which also requires subject, email_from, email_to and email_cc), or an activity-feed entry (note_type ACTIVITY) to a candidate, supplying candidate_id, body and visibility. The entry is appended to the candidate's activity feed and attributed to the authenticated user unless user_id is provided." }, { "slug": "GREENHOUSE_CREATE_OFFER", "name": "Create Greenhouse offer", "description": "Tool to create a new offer on an existing Greenhouse application via the Harvest v3 API. Use when you need to extend an offer to a candidate, supplying the application_id plus optional starts_on and custom_fields (compensation components and any configured offer custom fields). The new offer is created with status=Created at version=1; if the application already has an offer, the submission is applied to the same offer chain rather than creating a competing record." }, { "slug": "GREENHOUSE_CREATE_OFFICE", "name": "Create Greenhouse office", "description": "Tool to create a new office for the organization via the Greenhouse Harvest v3 API. Use when you need to add a recruiting location (e.g. for scoping jobs, candidates, or custom fields) to a Greenhouse organization. Only name is required; supply parent_id or external_parent_id to nest the office under a parent (Advanced/Expert package), and external_id for HRIS-driven reconciliation (Expert package)." }, { "slug": "GREENHOUSE_CREATE_OPENING", "name": "Create Greenhouse opening", "description": "Tool to add a new opening (headcount slot) to an existing Greenhouse job via the Harvest v3 API. Use when a job needs additional headcount and you want to create one more opening that can be filled by a single hire. job_id is required; an optional partner-supplied opening_id and custom field values may also be set. A job cannot hold more than 100 open openings." }, { "slug": "GREENHOUSE_CREATE_USER", "name": "Create Greenhouse user", "description": "Create a new user in your Greenhouse Recruiting organization via the Harvest v3 API. Use when you need to onboard a recruiter, hiring manager, interviewer, coordinator, or other team member, optionally assigning offices/departments, an external employee_id, and custom field values. first_name, last_name, and primary_email are required and the email must be unique across the organization." }, { "slug": "GREENHOUSE_CREATE_USER_EMAIL", "name": "Create Greenhouse user email", "description": "Attach an additional email address to an existing Greenhouse user via the Harvest v3 API. Use when a recruiter, hiring manager, or other team member needs a secondary email address associated with their Greenhouse account, optionally triggering a verification email. The email must be unique across the organization and cannot already belong to another user." }, { "slug": "GREENHOUSE_CREATE_USER_JOB_PERMISSION", "name": "Grant Greenhouse user job permission", "description": "Grant a Greenhouse user a Job Admin role on a single job via the Harvest v3 API. Use when you need to give a recruiter, hiring manager, coordinator, or interviewer scoped access to manage one specific job at a defined permission level. Requires user_id, job_id, and role_id; retrieve valid role ids from the Greenhouse user roles endpoint." }, { "slug": "GREENHOUSE_DEACTIVATE_USER", "name": "Deactivate Greenhouse user", "description": "Tool to deactivate a Greenhouse user via the Harvest v3 API, preventing that user from signing in while preserving their historical data. Use when you need to offboard or temporarily disable a recruiter, hiring manager, interviewer, coordinator, or admin account. This is a reversible state change: the user can be restored later via the separate activate-user endpoint, but while deactivated they lose all access. The endpoint returns HTTP 204 No Content on success." }, { "slug": "GREENHOUSE_DELETE_APPLICATION", "name": "Delete Greenhouse application", "description": "Tool to permanently delete a single Greenhouse application via the Harvest v3 API, along with its interview stages, scorecards, rejection details, and prospect details. Use when you need to remove an application entirely; the parent candidate is left intact. WARNING: this operation is irreversible and the deleted application and all of its associated data cannot be recovered." }, { "slug": "GREENHOUSE_DELETE_APPLIED_CANDIDATE_TAG", "name": "Delete Greenhouse applied candidate tag", "description": "Tool to detach a single tag from a candidate in Greenhouse via the Harvest v3 API, identified by its applied candidate tag id. Use when you need to remove a tag association from a candidate. This action is irreversible: once deleted the tag association cannot be recovered (re-applying the tag creates a new association), so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_ATTACHMENT", "name": "Delete Greenhouse attachment", "description": "Tool to permanently remove an attachment from its Greenhouse application via the Harvest v3 API, identified by its attachment id. Use when you need to delete a document (resume, cover letter, offer letter, etc.) that was previously uploaded to a candidate's application. This action is irreversible: once deleted the attachment and its underlying file cannot be recovered, so confirm the attachment id before calling." }, { "slug": "GREENHOUSE_DELETE_BLOCKED_SPAM_SOURCE", "name": "Delete Greenhouse blocked spam source", "description": "Tool to permanently remove a single blocked spam source from Greenhouse via the Harvest v3 API. Use when an IP address, email address, CIDR range, or email domain was blocked by mistake or should no longer be blocked, so future applications from it are accepted again. This action is irreversible: once removed the blocked spam source entry cannot be recovered, so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_CANDIDATE", "name": "Delete Greenhouse candidate", "description": "Tool to permanently delete a candidate from Greenhouse via the Harvest v3 API. Use when you need to fully remove a candidate and all of their associated applications, attachments, scorecards, notes, and other records identified by the candidate id. This action is irreversible: once deleted the candidate and every associated record cannot be recovered, so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_CANDIDATE_EDUCATION", "name": "Delete Greenhouse candidate education", "description": "Tool to remove a single education entry from a Greenhouse candidate's profile via the Harvest v3 API. Use when you need to delete one specific education record from a candidate, identified by the education entry id. WARNING: this operation is destructive and irreversible - the education entry is permanently erased and cannot be recovered." }, { "slug": "GREENHOUSE_DELETE_CANDIDATE_EMPLOYMENT", "name": "Delete Greenhouse candidate employment", "description": "Tool to permanently delete a single employment entry from a candidate's profile in Greenhouse via the Harvest v3 API. Use when you need to remove an incorrect or outdated employment record identified by its candidate employment id. This action is irreversible: once deleted the employment entry cannot be recovered, so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_CANDIDATE_TAG", "name": "Delete Greenhouse candidate tag", "description": "Tool to delete a tag from your organization's candidate-tag dictionary in Greenhouse via the Harvest v3 API, identified by its candidate tag id. Use when you need to permanently remove a tag from the dictionary. This action is irreversible: deletion enqueues an asynchronous job that first strips the tag from every candidate it is applied to (which can take up to 24 hours) and then removes the tag itself, and the data cannot be recovered, so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_CUSTOM_FIELD_OFFICE", "name": "Delete Greenhouse custom field office", "description": "Tool to remove an office from a custom field's visibility scope via the Greenhouse Harvest v3 API. Use when an existing job, opening, or offer custom field should no longer be restricted to a particular office and that office's association needs to be deleted. This is a permanent, irreversible deletion: the office is dropped from the field's allowed offices and can only be restored by creating the association again, so confirm the association id before calling." }, { "slug": "GREENHOUSE_DELETE_CUSTOM_FIELD_OPTION", "name": "Delete Greenhouse custom field option", "description": "Tool to archive a single custom field option via the Greenhouse Harvest v3 API so it can no longer be selected on new records. Use when an option of a select-type custom field should be retired while preserving it on existing records. This is a soft delete (the option is set inactive) rather than a hard delete, but it still removes the option from future selection, so confirm the id before calling." }, { "slug": "GREENHOUSE_DELETE_INTERVIEW", "name": "Delete Greenhouse interview", "description": "Tool to cancel and permanently delete a scheduled interview in Greenhouse via the Harvest v3 API, identified by its interview id. Use when an interview needs to be called off and removed entirely rather than rescheduled. This action is irreversible: once deleted the scheduled interview and its associated calendar event cannot be recovered, so confirm the interview id before calling." }, { "slug": "GREENHOUSE_DELETE_JOB_HIRING_MANAGER", "name": "Delete Greenhouse job hiring manager", "description": "Unassign a hiring manager from a Greenhouse job by deleting the job hiring manager join row, identified by its id, via the Harvest v3 API. Use when you need to remove a specific user from a job's hiring team in the hiring manager role. This is destructive and IRREVERSIBLE: the job hiring manager record is permanently removed and must be re-created to restore the assignment." }, { "slug": "GREENHOUSE_DELETE_JOB_NOTE", "name": "Delete Greenhouse job note", "description": "Permanently delete a Greenhouse job note, identified by its id, via the Harvest v3 API. Use when you need to remove a note that was attached to a job (for example because it was added in error or is no longer relevant). This is destructive and IRREVERSIBLE: the job note is permanently removed and must be re-created to restore it." }, { "slug": "GREENHOUSE_DELETE_JOB_OWNER", "name": "Delete Greenhouse job owner", "description": "Remove a Greenhouse user from a job's hiring team in a single role by deleting the job owner join row, identified by its id, via the Harvest v3 API. Use when you need to take a specific user off a job's hiring team for one role (recruiter, sourcer, or coordinator). This is destructive and IRREVERSIBLE: the job owner record is permanently removed and must be re-created to restore the membership." }, { "slug": "GREENHOUSE_DELETE_USER_JOB_PERMISSION", "name": "Delete Greenhouse user job permission", "description": "Tool to revoke a single Greenhouse user job permission by its id via the Harvest v3 API, removing that user's Job Admin role on the associated job. Use when you need to take away a specific user's Job Admin access to a particular job. This is destructive and IRREVERSIBLE: the permission grant is permanently removed and must be re-created to restore the user's access." }, { "slug": "GREENHOUSE_HIRE_APPLICATION", "name": "Hire Greenhouse application", "description": "Tool to mark a Greenhouse application as hired and close out the matching opening on the job via the Harvest v3 API. Use when a candidate has accepted an offer and you need to finalize the hire, optionally specifying the start date, the opening to fill, and the close reason for that opening. If no opening_id is supplied, Greenhouse auto-selects an open opening on the job. This is a terminal action: the application leaves the interview pipeline and its status becomes \"hired\", so it should only be run once the hire is confirmed." }, { "slug": "GREENHOUSE_LIST_APPLICATIONS", "name": "List Greenhouse applications", "description": "List the applications in your Greenhouse organization, which associate candidates with jobs (candidate applications attach to exactly one job; prospect applications attach to zero or more). Use when you need to look up application ids, statuses, current pipeline stages, or the candidate/job/source/referrer ids tied to each application, or to filter applications by time range, status, stage, or kind. Supports rich filtering, field selection, and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_APPLICATION_STAGES", "name": "List Greenhouse application stages", "description": "List the application stage history rows in your Greenhouse organization — one row per interview stage an application has occupied, with entered_at and exited_at timestamps. Use when you need the canonical source for stage-history reporting, such as time-in-stage analysis or reconstructing a candidate's pipeline movement for one or more applications. Supports filtering by application ids, interview stage ids, current/past, time ranges, and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_APPROVAL_FLOWS", "name": "List Greenhouse approval flows", "description": "Tool to list the approval flows in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search the multi-step approval definitions attached to jobs or candidate offers, optionally filtering by approval flow ids, job_ids, offer_ids, approval_type, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_APPROVER_GROUPS", "name": "List Greenhouse approver groups", "description": "Tool to list the approver groups in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the ordered tiers of approvers that make up the approval flows on jobs or offers, optionally filtering by approver group ids, approval_flow_ids, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_APPROVERS", "name": "List Greenhouse approvers", "description": "Tool to list approver records in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search the individual users assigned to approve a job, offer, or other approvable resource, optionally filtering by approver record ids, approver group ids, assigned user ids, status, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_ATTACHMENTS", "name": "List Greenhouse attachments", "description": "List the attachments in your Greenhouse organization, which are files associated with applications such as resumes, cover letters, take-home tests, offer documents, and e-signed agreements. Use when you need to discover attachment ids, filenames, types, or time-limited download URLs, or to scope attachments to specific applications, candidates, types, or time ranges. Each returned url is a temporary download link that expires after seven days. Supports field selection and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_BULK_REQUESTS", "name": "List Greenhouse bulk requests", "description": "List the asynchronous bulk requests submitted to Greenhouse Harvest v3, each tracking a batch operation with its record, success, and failure counts and current status. Use when you need to monitor or audit previously submitted bulk jobs, find a bulk_action_uuid, or check overall progress across many bulk operations. Returns paginated bulk requests; use cursor for subsequent pages. Fetch a single request's per-row result files with the Get bulk request action." }, { "slug": "GREENHOUSE_LIST_CANDIDATE_EDUCATIONS", "name": "List Greenhouse candidate educations", "description": "Tool to list candidate educations in a Greenhouse organization via the Harvest v3 API. Candidate educations are the school/degree/discipline entries (with start/end dates) recorded on candidates' profiles. Use when you need to enumerate or look up education entries, optionally filtering by entry ids, candidate ids, or creation/update timestamps. Results are paginated; pass the next_cursor from the previous response as the cursor parameter to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CANDIDATE_EMPLOYMENTS", "name": "List Greenhouse candidate employments", "description": "Tool to list candidate employments in a Greenhouse organization via the Harvest v3 API. Candidate employments are the work-history entries (company, title, and start/end dates) recorded on candidates' profiles. Use when you need to enumerate or look up employment entries, optionally filtering by entry ids, candidate ids, or creation/update timestamps. Results are paginated; pass the next_cursor from the previous response as the cursor parameter to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CANDIDATES", "name": "List Greenhouse candidates", "description": "List the candidates (active applicants and prospects) in your Greenhouse organization, returning each candidate's profile: names, contact methods, tags, custom fields, and timestamps. Use when you need to look up candidate ids, search by email or tag, or sync candidate records, optionally filtering by id, creation/update/activity windows. Supports field selection and cursor-based pagination; nested application/attachment data lives on its own resource endpoints." }, { "slug": "GREENHOUSE_LIST_CANDIDATE_TAGS", "name": "List Greenhouse candidate tags", "description": "Tool to list the candidate tags configured in a Greenhouse organization via the Harvest v3 API. Candidate tags are the org-wide library of tag names available to apply to candidates. Use when you need to enumerate or look up available candidate tags, for example before applying a tag to a candidate. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CLOSE_REASONS", "name": "List Greenhouse close reasons", "description": "Tool to list the close reasons configured in a Greenhouse organization via the Harvest v3 API. Close reasons are the organization-defined dictionary of outcomes recorded when an opening is closed. Use when you need to enumerate or look up close reasons for filtering, reporting, or when closing an opening, optionally filtering by ids or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CUSTOM_FIELD_DEPARTMENTS", "name": "List Greenhouse custom field departments", "description": "Tool to list the custom field department associations configured in a Greenhouse organization via the Harvest v3 API. Use when you need to see which departments a custom field's visibility is restricted to, optionally filtering by association ids, custom_field_ids, department_ids, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CUSTOM_FIELD_OFFICES", "name": "List Greenhouse custom field offices", "description": "Tool to list the custom_field_office associations in a Greenhouse organization via the Harvest v3 API. A custom_field_office restricts a custom field's visibility to a single office. Use when you need to enumerate which custom fields are scoped to which offices, optionally filtering by association ids, custom_field_ids, office_ids, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CUSTOM_FIELD_OPTIONS", "name": "List Greenhouse custom field options", "description": "Tool to list the custom field options configured in a Greenhouse organization via the Harvest v3 API. Custom field options are the selectable values on single_select or multi_select custom fields. Use when you need to enumerate or look up the allowed values for a custom field, optionally filtering by ids, custom_field_ids, custom_field_key, active state, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_CUSTOM_FIELDS", "name": "List Greenhouse custom fields", "description": "Tool to list the custom field definitions configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the org-defined structured data layered onto jobs, offers, openings, candidates, applications, and users, optionally filtering by ids, field_type, active state, name, name_key, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEFAULT_INTERVIEWERS", "name": "List Greenhouse default interviewers", "description": "List the default interviewers configured in a Greenhouse organization via the Harvest v3 API. Default interviewers are the users pre-selected as the interview panel for a specific stage on a job (the default, not the final panel); each row pairs one user with one interview kit. Use when you need to look up or enumerate who is set as the default panel, optionally filtering by interview_kit_ids (to find the panel for a stage), user_ids, ids, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEMOGRAPHIC_ANSWER_OPTIONS", "name": "List Greenhouse demographic answer options", "description": "Tool to list all of a Greenhouse organization's demographic answer options via the Harvest v3 API. Demographic answer options are the selectable choices presented on a demographic question (for example the individual options of a self-identification question). Use when you need to enumerate the available answer choices across demographic questions, including which options are active, free-form, or decline-to-answer. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEMOGRAPHIC_ANSWERS", "name": "List Greenhouse demographic answers", "description": "Tool to list all of a Greenhouse organization's demographic answers via the Harvest v3 API. Demographic answers are individual applicant submissions to the organization's voluntary demographic questions on a job post. Use when you need to enumerate or audit applicants' self-identification responses, optionally filtering by creation or update time. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEMOGRAPHIC_QUESTIONS", "name": "List Greenhouse demographic questions", "description": "Tool to list the demographic questions configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the voluntary self-identification prompts that applicants see on job posts and candidate surveys, for example to audit EEOC/diversity question configuration or to map answer options. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEMOGRAPHIC_QUESTION_SETS", "name": "List Greenhouse demographic question sets", "description": "Tool to list all of a Greenhouse organization's demographic question sets via the Harvest v3 API. Demographic question sets are named groupings of demographic questions that an organization attaches to a job post. Use when you need to enumerate or look up the available question sets, including their titles, descriptions, and whether they are active. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_DEPARTMENTS", "name": "List Greenhouse departments", "description": "Tool to list the departments configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate organizational units that jobs are assigned to for filtering, lookup, or HRIS reconciliation, optionally filtering by ids, parent department, external_id, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_EEOC", "name": "List Greenhouse EEOC responses", "description": "Tool to list EEOC self-identification responses in a Greenhouse organization via the Harvest v3 API. EEOC responses capture a candidate's voluntary self-identification of race, gender, veteran status, and disability status. Use when you need to enumerate or report on candidates' voluntary EEO disclosures, optionally filtering by submission timestamp. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_EMAIL_TEMPLATES", "name": "List Greenhouse email templates", "description": "Tool to list the email templates configured in a Greenhouse organization via the Harvest v3 API. Email templates are reusable subject/body pairs used to communicate with candidates and the hiring team. Use when you need to enumerate available templates for review, lookup, or before sending templated emails, optionally filtering by creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_FOCUS_CANDIDATE_ATTRIBUTES", "name": "List Greenhouse focus candidate attributes", "description": "List the focus candidate attributes in your Greenhouse organization — the subset of a job's job_candidate_attributes that an interview kit elevates as focus areas at the top of the interviewer's scorecard. Use when you need to know which attributes a given interview kit prioritizes, or which kits focus on a particular job candidate attribute. Filter by interview_kit_ids for a single kit's focus areas or by job_candidate_attribute_ids to find every kit that focuses on an attribute. Note: this endpoint is currently site-admin-only." }, { "slug": "GREENHOUSE_LIST_INTERVIEWER_TAGS", "name": "List Greenhouse interviewer tags", "description": "List the interviewer tags in your Greenhouse organization: the organization-defined labels that can be assigned to interviewer users (for example \"Phone Screener\" or \"Culture Add Interviewer\"). Use when you need to discover the available interviewer-tag definitions, audit how interviewers are categorized, or fetch tag ids and names referenced by the users endpoint. Supports filtering by tag id and creation/update windows, with cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_INTERVIEW_KITS", "name": "List Greenhouse interview kits", "description": "Tool to list the interview kits (per-job, per-slot evaluation packets interviewers see when conducting an interview) in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or look up interview kits with their live Interview Prep exercises and anonymization settings, optionally filtering by interview kit ids, job ids, job_interview (slot) ids, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_INTERVIEWS", "name": "List Greenhouse interviews", "description": "Tool to list scheduled interview events in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search interviews across candidate applications for reporting, scheduling, or lookup, optionally filtering by interview ids, application/job ids, lifecycle status, or creation/update date ranges. Each result includes start/end time, location, video conferencing link, and status. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_BOARD_CUSTOM_LOCATIONS", "name": "List Greenhouse job board custom locations", "description": "Tool to list a Greenhouse organization's job board custom locations via the Harvest v3 API. Use when you need the curated list of location strings a site admin maintains for posting jobs to a given job board, e.g. to resolve a job post's custom_location_id to displayable text or to scope locations to a specific board. Optionally filter by ids, greenhouse_job_board_ids, active status, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_BOARDS", "name": "List Greenhouse job boards", "description": "Tool to list the job boards configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the destinations (the internal board and external careers boards) where job posts are published, optionally filtering by ids, audience (internal), publication state (live), or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_CANDIDATE_ATTRIBUTES", "name": "List Greenhouse job candidate attributes", "description": "Tool to list the job candidate attributes (the per-job instances of a job's candidate_attribute_types) in a Greenhouse organization via the Harvest v3 API. Use when you need the canonical list of evaluable traits configured on a job for AI candidate-fit matching, scorecard review, or lookup, optionally filtering by ids, job_ids, candidate_attribute_type_ids, active state, or creation/update timestamps. This endpoint is site-admin-only. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_HIRING_MANAGERS", "name": "List Greenhouse job hiring managers", "description": "List the job hiring managers configured in a Greenhouse organization via the Harvest v3 API. Job hiring managers are users designated as hiring managers on a job; each row pairs one user with one job (hiring plan). Use when you need to look up or enumerate who is assigned as a hiring manager, optionally filtering by job_ids (to find the hiring managers on a specific job), user_ids, ids, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_INTERVIEWS", "name": "List Greenhouse job interviews", "description": "Tool to list the interview slot template definitions configured on jobs' interview plans in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search the interview stages/slots that make up a job's interview plan, optionally filtering by slot ids, job ids, job interview stage ids, active state, scheduling type, or creation/update date ranges. Each result includes the slot name, duration, instructions, scheduling type, and the stage and job it belongs to. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_JOB_INTERVIEW_STAGES", "name": "List Greenhouse job interview stages", "description": "List the job interview stages in your Greenhouse organization — the steps that make up each job's interview plan (e.g. Application Review, Phone Screen, Onsite, Offer), ordered within a job by sort_order. Use when you need a job's pipeline structure, such as building stage pickers, mapping application stages back to their interview plan, or reporting on how jobs are configured. Supports filtering by stage ids, job ids, active state, time ranges, and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_JOB_NOTES", "name": "List Greenhouse job notes", "description": "List the free-form, organization-internal notes attached to jobs across your Greenhouse organization. Use when you need to read the internal notes recorded on jobs, optionally filtered by job, author, or created/updated time range. Supports cursor-based pagination for large result sets." }, { "slug": "GREENHOUSE_LIST_JOB_OWNERS", "name": "List Greenhouse job owners", "description": "List the job owners across your Greenhouse organization. Use when you need to look up which recruiters, sourcers, and coordinators are assigned to jobs' hiring teams, or to filter those assignments by job, user, role type, or time range. Supports cursor-based pagination for large result sets." }, { "slug": "GREENHOUSE_LIST_JOB_POSTS", "name": "List Greenhouse job posts", "description": "List the candidate-facing job posts in your Greenhouse organization. Use when you need to look up job post ids, titles, public URLs, application questions, or which board (external or internal) each post is published to, or to find posts for a given job via job_ids. A single job can have multiple posts; supports filtering, field selection, and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_JOB_POST_SEARCHABLE_LOCATIONS", "name": "List Greenhouse job post searchable locations", "description": "List the searchable geographic locations attached to job posts in your Greenhouse organization. Use when you need the individual locations (formatted display string plus city, region, postal code, county, country, and latitude/longitude) for one or more job posts, or to map a downstream board identifier like Indeed's {job_post_id}_{id} back to a post and location. Filter with job_post_ids to scope to specific posts; supports field selection and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_JOBS", "name": "List Greenhouse jobs", "description": "List the jobs (hiring plans) in your Greenhouse organization. Use when you need to look up job ids, names, statuses, department, office associations, or requisition ids, or to filter jobs by lifecycle status, time range, or requisition id. Supports cursor-based pagination for large result sets." }, { "slug": "GREENHOUSE_LIST_NOTES", "name": "List Greenhouse notes", "description": "Tool to list the notes (free-form activity-feed entries) across a Greenhouse organization via the Harvest v3 API. Notes include manually added candidate notes, logged emails, system-generated activity, and interview feedback. Use when you need to enumerate or review notes for reporting or auditing, optionally filtering by creation/update date ranges and limiting returned fields. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_OFFERS", "name": "List Greenhouse offers", "description": "Tool to list the offers in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search candidate offers for reporting, status tracking, or lookup, optionally filtering by ids, application/job/candidate/opening ids, status, custom field option, or creation/update/resolved/sent/start date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_OFFICES", "name": "List Greenhouse offices", "description": "Tool to list the offices configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate recruiting locations for filtering, lookup, or scoping jobs and candidates, optionally filtering by ids, parent office, external_id, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_OPENINGS", "name": "List Greenhouse openings", "description": "List the openings (individual headcount slots beneath jobs) in your Greenhouse organization. Use when you need to look up opening ids, their parent job_id, fill status, hired application_id, close reasons, or target start dates, or to filter openings by job, application, close reason, availability, or opened_at/closed_at windows. Supports cursor-based pagination for large result sets." }, { "slug": "GREENHOUSE_LIST_PAY_INPUT_RANGES", "name": "List Greenhouse pay input ranges", "description": "Tool to list the pay input ranges configured in a Greenhouse organization via the Harvest v3 API. Pay input ranges are the per-job-post minimum and maximum values for a pay component (e.g. base salary, bonus) referenced by a pay transparency rule. Use when you need to enumerate or look up the published pay ranges for job posts, optionally filtering by ids, pay_input_ids, job_post_ids, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_PAY_INPUTS", "name": "List Greenhouse pay inputs", "description": "Tool to list the pay inputs in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the individual compensation components (e.g. Base Salary, Sign-on Bonus, Equity) that make up pay transparency rules, optionally filtering by ids, linked custom field ids, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_PROSPECT_POOLS", "name": "List Greenhouse prospect pools", "description": "Tool to list the prospect pools configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the organization-defined collections of prospects that are not yet attached to a specific job, optionally filtering by ids, department, office, job, active status, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_PROSPECT_POOL_STAGES", "name": "List Greenhouse prospect pool stages", "description": "Tool to list the prospect pool stages configured in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate the buckets recruiters use to track where each passive prospect sits within a nurture pool, optionally filtering by stage ids, prospect_pool_ids, fields, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_REFERRERS", "name": "List Greenhouse referrers", "description": "List the referrers in your Greenhouse organization. Use when you need to look up the people credited with bringing candidates into the hiring pipeline, resolve a referrer id, or map referrers to their associated Greenhouse user ids. Supports filtering by ids, user_ids, and created/updated date ranges, field selection, and cursor-based pagination." }, { "slug": "GREENHOUSE_LIST_REJECTION_DETAILS", "name": "List Greenhouse rejection details", "description": "Tool to list the per-application rejection records in a Greenhouse organization via the Harvest v3 API. Use when you need to audit or report on which applications were rejected, including who rejected them, when, the rejection reason, the linked rejection note, and any rejection-question custom field answers. Filter by application or rejection reason and page through results using the cursor from the previous response." }, { "slug": "GREENHOUSE_LIST_REJECTION_REASONS", "name": "List Greenhouse rejection reasons", "description": "Tool to list the rejection reasons configured in a Greenhouse organization via the Harvest v3 API. Use when you need the organization-defined dictionary of outcomes recorded when an application is rejected, for lookup or reporting, optionally including Greenhouse's built-in default reasons. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_SCORECARD_QUESTION_OPTIONS", "name": "List Greenhouse scorecard question options", "description": "Tool to list scorecard question options - the multiple-choice values shown to interviewers for single_select and multi_select scorecard questions - in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or look up the answer choices configured on scorecard questions, optionally filtering by option ids, parent scorecard question ids, active status, or creation/update date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_SCORECARDS", "name": "List Greenhouse scorecards", "description": "Tool to list the scorecards (per-interview evaluations) in a Greenhouse organization via the Harvest v3 API. Use when you need to enumerate or search interview scorecards for reporting, candidate evaluation review, or lookup, optionally filtering by ids, interview kit / submitter / application / interviewer ids, status, or creation/update/interviewed/submitted date ranges. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_SOURCES", "name": "List Greenhouse sources", "description": "Tool to list the sources configured in a Greenhouse organization via the Harvest v3 API. Sources are the organization-defined dictionary of channels through which candidates enter the pipeline. Use when you need to enumerate or look up candidate sources for filtering, reporting, or attributing applications, optionally filtering by ids or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_TRACKING_LINKS", "name": "List Greenhouse tracking links", "description": "Tool to list the tracking links configured in a Greenhouse organization via the Harvest v3 API. Tracking links are unique short URLs that attribute applying candidates to a source, referrer, job, job post, or job board. Use when you need to enumerate tracking links for reporting or attribution, optionally filtering by ids, job/source/referrer/board, related post, or creation/update timestamps. Results are paginated; pass the cursor from the previous response to fetch the next page." }, { "slug": "GREENHOUSE_LIST_USER_JOB_PERMISSIONS", "name": "List Greenhouse user job permissions", "description": "List the per-user, per-job access grants in your Greenhouse organization, each pairing a user with a Job Admin role on a specific job. Use when you need to audit which users have Job Admin access to which jobs, or to resolve the user_id, job_id, and role_id behind a job-level permission. Returns a flat list of grants with cursor-based pagination; this endpoint does not support user or job filters, so paginate to retrieve all records." }, { "slug": "GREENHOUSE_LIST_USERS", "name": "List Greenhouse users", "description": "List the user accounts (recruiters, hiring managers, interviewers, coordinators, and site admins) in your Greenhouse organization. Use when you need to look up user ids, emails, activation state, or office/department assignments, or to resolve a user by primary_email, employee_id, or external office/department id. Supports filtering, field selection, and cursor-based pagination; service accounts are excluded unless show_service_accounts is true." }, { "slug": "GREENHOUSE_MERGE_CANDIDATES", "name": "Merge Greenhouse candidates", "description": "Tool to merge two candidate profiles in Greenhouse via the Harvest v3 API, collapsing a secondary (duplicate) candidate into a primary one. Use when you have identified duplicate candidate records and want to consolidate them into a single profile. WARNING: this operation is irreversible — the secondary candidate ceases to exist after the merge and its id will no longer be returned by the API, so verify both ids carefully before calling." }, { "slug": "GREENHOUSE_MOVE_APPLICATION", "name": "Move Greenhouse application", "description": "Tool to move a Greenhouse application to a different interview stage via the Harvest v3 API. Supports three move modes: (1) advance to next stage — omit both to_stage_id and to_job_id; (2) same-job move — supply to_stage_id for an explicit destination stage on the same job; (3) cross-job transfer — supply to_job_id to transfer the candidate to another job. The current stage must always be supplied as from_stage_id (Greenhouse rejects the move if it does not match the application's present stage). Only active applications can be moved." }, { "slug": "GREENHOUSE_REJECT_APPLICATION", "name": "Reject Greenhouse application", "description": "Tool to reject an existing Greenhouse application via the Harvest v3 API, recording the rejection reason and optionally notifying the candidate. Use when you need to mark an active application as rejected and capture why. This is a destructive state transition: the application leaves the active pipeline and moving it back requires the separate unreject endpoint, so reject only when you are sure. Only applications in the active state can be rejected." }, { "slug": "GREENHOUSE_REPLACE_APPROVER", "name": "Replace Greenhouse approver", "description": "Tool to swap one approver in a Greenhouse approver group for another user via the Harvest v3 API, without rebuilding the rest of the approval flow. Use when an existing approver should be replaced by a different user while leaving the other approvers and the flow ordering intact. Only approvers in unresolved groups may be replaced; if the group is already due, the new approver is notified that action is required." }, { "slug": "GREENHOUSE_REQUEST_APPROVALS", "name": "Request Greenhouse approvals", "description": "Tool to start an existing pending Greenhouse approval flow by emailing its initial approver(s) via the Harvest v3 API. Use when an approval flow has been created and is awaiting kickoff, and you need to begin the approval process so the first approver group moves from \"waiting\" to \"due\". The flow must be in a startable (pending) state; Greenhouse rejects the request if the on-behalf-of user cannot see the hiring plan or the flow cannot be started." }, { "slug": "GREENHOUSE_REVOKE_USER_PERMISSIONS", "name": "Revoke Greenhouse user permissions", "description": "Revoke a Greenhouse user's site admin permissions via the Harvest v3 API, reverting them to a Basic user. Use when you need to strip a user of elevated administrative privileges, for example after a role change or to enforce least-privilege access. This downgrades the user's permission level; their account, history, and ability to sign in are retained. Warning: this is a destructive privilege change that takes effect immediately - to restore site admin access the permissions must be granted again through Greenhouse." }, { "slug": "GREENHOUSE_SEARCH_APPLICATIONS", "name": "Search Greenhouse applications", "description": "Search applications through Greenhouse's full-text candidate search index with richer pipeline filters than the plain list endpoint. Use when you need to find applications by a free-text candidate query or by job/department/office/user-role filters (recruiter, coordinator, hiring manager) and pipeline stage status, returning application ids, statuses, stages, and the candidate/job ids tied to each. Supports field selection and cursor-based pagination." }, { "slug": "GREENHOUSE_UPDATE_APPLICATION", "name": "Update Greenhouse application", "description": "Tool to update attribution and metadata on an existing Greenhouse application via the Harvest v3 API. Use when you need to change an application's source, referrer, recruiter, coordinator, prospect pool/stage, rejection or creation date, or custom field values without moving its interview stage. Only the fields you supply are modified; omitted fields are left untouched. Stage transitions (move, reject, unreject, hire, convert) require their own dedicated endpoints." }, { "slug": "GREENHOUSE_UPDATE_APPROVAL_FLOW", "name": "Update Greenhouse approval flow", "description": "Tool to toggle whether a Greenhouse approval flow resolves sequentially or in parallel, via the Harvest v3 API. Use when you need to switch an existing approval flow between in-order tiers (sequential=true) and all-at-once tiers (sequential=false). The flow must still be pending; the API rejects the change once the flow has been approved or rejected." }, { "slug": "GREENHOUSE_UPDATE_BLOCKED_SPAM_SOURCE", "name": "Update Greenhouse blocked spam source", "description": "Tool to update the note on an existing entry in the organization's spam blocklist via the Greenhouse Harvest v3 API. Use when you need to change or clear the explanatory note attached to a blocked IP address, CIDR range, email address, or email domain. Only the note is changed; the blocked value and its source_type remain untouched." }, { "slug": "GREENHOUSE_UPDATE_CANDIDATE", "name": "Update Greenhouse candidate", "description": "Tool to update an existing candidate's profile in Greenhouse via the Harvest v3 API. Use when you need to change a candidate's name, company, title, contact details, tags, privacy, or custom fields. Only the fields you supply are modified; array fields (phone numbers, addresses, emails, websites, social media, tags, linked user ids, custom fields) replace their existing collection wholesale, so send the full desired list rather than a delta." }, { "slug": "GREENHOUSE_UPDATE_CUSTOM_FIELD", "name": "Update Greenhouse custom field", "description": "Tool to edit the definition of an existing Greenhouse custom field via the Harvest v3 API. Use when you need to rename a custom field, change its description, toggle flags such as private/required/api_only, adjust its office/department scope, replace its select options, or set its template token. Only the fields you supply are changed; the field_type and value_type are immutable and cannot be modified." }, { "slug": "GREENHOUSE_UPDATE_CUSTOM_FIELD_OPTION", "name": "Update Greenhouse custom field option", "description": "Tool to edit the display label, sort order, or external id of an existing custom field option via the Greenhouse Harvest v3 API. Use when you need to rename a selectable option, reorder it relative to the field's other options, or set/change its external id without recreating it. Supply the option id plus only the attributes you want to change; omitted attributes are left untouched." }, { "slug": "GREENHOUSE_UPDATE_DEPARTMENT", "name": "Update Greenhouse department", "description": "Tool to update an existing Greenhouse department via the Harvest v3 API. Use when you need to rename a department, set or clear its external_id, or reposition it within the department tree by changing its parent. Only the fields you supply are changed; omitted fields are left untouched." }, { "slug": "GREENHOUSE_UPDATE_INTERVIEW", "name": "Update Greenhouse interview", "description": "Tool to update a scheduled Greenhouse interview via the Harvest v3 API. Use when you need to change a scheduled interview's start/end time, location, video conferencing URL, external calendar event id, or reassign the interviewer panel. Only the fields you supply are modified; however, when interviewers is provided it REPLACES the existing panel wholesale rather than merging. This endpoint updates only the Greenhouse record; organizations using Google Calendar or Outlook should edit calendar events directly and let integrations synchronize." }, { "slug": "GREENHOUSE_UPDATE_JOB", "name": "Update Greenhouse job", "description": "Tool to update an existing Greenhouse job's editable fields via the Harvest v3 API. Use when you need to modify a job's title, notes, requisition id, office/department assignments, or custom field values. Only the keys you supply are changed; omitted fields are left untouched, and collection fields (office_ids, external_office_ids, custom_fields) replace the existing collection wholesale rather than merging." }, { "slug": "GREENHOUSE_UPDATE_JOB_NOTE", "name": "Update Greenhouse job note", "description": "Update an existing Greenhouse job note, identified by its id, via the Harvest v3 API. Use when you need to revise the body text or change the access level (visibility) of a note that is already attached to a job. Only the fields you supply are changed; omitted fields keep their current values." }, { "slug": "GREENHOUSE_UPDATE_OFFICE", "name": "Update Greenhouse office", "description": "Tool to update an existing office for the organization via the Greenhouse Harvest v3 API. Use when you need to rename an office, change its location, re-parent it, set its primary internal contact, or set its external identifier. The name field is required; location, parent_id, external_parent_id, external_id, primary_in_house_contact_user_id, and on_behalf_of are optional and only applied when supplied." }, { "slug": "GREENHOUSE_UPDATE_OPENING", "name": "Update Greenhouse opening", "description": "Tool to edit an existing opening (headcount slot) on a Greenhouse job via the Harvest v3 API, or close/reopen it. Use when you need to change an opening's external opening_id, update its custom field values, or set its status to closed (optionally with a close_reason_id) or back to open. Only the fields you supply are changed; closing the last open opening on a job closes its hiring plan." }, { "slug": "GREENHOUSE_UPDATE_REJECTION_DETAIL", "name": "Update Greenhouse rejection detail", "description": "Tool to patch the rejection reason and/or rejection-question custom field answers on a rejected application's rejection detail record via the Greenhouse Harvest v3 API. Use when you need to correct or change why an application was rejected after the rejection has already been recorded. Only the fields you supply are modified; the application must already be in a rejected state for this to succeed." }, { "slug": "GREENHOUSE_UPDATE_USER", "name": "Update Greenhouse user", "description": "Tool to update an existing user's profile in Greenhouse via the Harvest v3 API. Use when you need to change a user's name, employee id, office or department assignments, or custom fields. Only the fields you supply are modified; array fields (office_ids, department_ids, and their external variants, plus custom_fields) replace their existing collection wholesale, and the primary email address cannot be changed through this endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "greenhouse_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Greenhouse Harvest v3 base URL. OAuth-issued JWT bearer tokens only work against v3 endpoints.", "required": true, "default": "https://harvest.greenhouse.io/v3" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "harvest:application_stages:list,harvest:applications:create,harvest:applications:list,harvest:applications:update,harvest:attachments:create,harvest:attachments:list,harvest:candidates:create,harvest:candidates:list,harvest:candidates:update,harvest:demographic_answers:list,harvest:departments:list,harvest:eeoc:list,harvest:interview_kits:list,harvest:interviews:create,harvest:interviews:list,harvest:interviews:update,harvest:job_posts:create,harvest:job_posts:list,harvest:job_posts:update,harvest:jobs:create,harvest:jobs:list,harvest:jobs:update,harvest:offers:create,harvest:offers:list,harvest:offers:update,harvest:offices:list,harvest:prospect_pools:list,harvest:scorecards:list,harvest:sources:list,harvest:users:list" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "greenhouse_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Greenhouse Harvest v3 base URL. OAuth-issued JWT bearer tokens only work against v3 endpoints.", "required": true, "default": "https://harvest.greenhouse.io/v3" }, { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth Client ID from your Greenhouse Dev Center (Configure > Dev Center > API Credential Management > Harvest V3).", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "OAuth Client Secret issued alongside the Client ID in Greenhouse Dev Center.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "griptape", "name": "Griptape", "logo": "https://www.griptape.ai/logo.png", "description": "Griptape is a comprehensive platform offering tools and frameworks for building, deploying, and scaling generative AI applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 143, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRIPTAPE_ASSISTANT_CREATION", "name": "Assistant Creation", "description": "Tool to create a new assistant. Use when you need to register a uniquely named assistant in Griptape Cloud before initiating runs." }, { "slug": "GRIPTAPE_ASSISTANT_LISTING", "name": "List Assistants", "description": "Tool to list all assistants. Use after authenticating with Griptape Cloud to retrieve available assistants. Supports optional pagination." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_CANCELLATION", "name": "Cancel Assistant Run", "description": "Tool to cancel an ongoing assistant run. Use when you need to stop a run prematurely after confirming the run ID is valid." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_CREATION", "name": "Assistant Run Creation", "description": "Creates a new assistant run to execute a conversation turn with a Griptape Cloud assistant. Use this action to send input messages to an assistant and initiate processing. The run is queued and processed asynchronously. Use the assistant run retrieval or result retrieval actions to get the output once complete." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_ERROR_DETAILS", "name": "Get Assistant Run Error Details", "description": "Tool to fetch detailed error information for a specific assistant run. Use after an assistant run has failed to inspect error details." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_LISTING", "name": "List Assistant Runs", "description": "Tool to list all runs for a given assistant. Use when you need historical run executions for analysis after using the assistant." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_LOGS_RETRIEVAL", "name": "Assistant Run Logs Retrieval", "description": "Retrieve the complete execution logs for an assistant run in Griptape Cloud. Returns a chronological timeline of events that occurred during the run, including: - Structure lifecycle events (start/finish) - Task execution events (start/finish with input/output) - Prompt events (model calls with token counts) - Streaming text chunks (for real-time output) Use this tool to debug runs, analyze performance (token usage), or inspect intermediate outputs. The assistant run must exist; use List Assistant Runs first to get valid run IDs." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_RETRIEVAL", "name": "Retrieve Assistant Run", "description": "Tool to retrieve an assistant run's status and details. Use when you need current status and metadata for a specific assistant run." }, { "slug": "GRIPTAPE_ASSISTANT_RUN_RETRY", "name": "Retry Assistant Run", "description": "Tool to attempt retrying a failed assistant run. If retry is not available (e.g., run hasn't failed or endpoint not supported), returns the current run status instead. Use when checking if a run can be retried or to get its current state." }, { "slug": "GRIPTAPE_CANCEL_DATA_JOB", "name": "Cancel Data Job", "description": "Tool to cancel a running or queued data job. Use when you need to stop a data job that is in progress or queued." }, { "slug": "GRIPTAPE_CREATE_BUCKET", "name": "Create Bucket", "description": "Tool to create a new bucket in Griptape Cloud. Use when you need to create storage buckets for organizing assets and data." }, { "slug": "GRIPTAPE_CREATE_BUCKET_ASSET", "name": "Create Bucket Asset", "description": "Tool to create a new asset in a Griptape Cloud bucket. Use when you need to add a new asset to a bucket by specifying its name." }, { "slug": "GRIPTAPE_CREATE_DATA_CONNECTOR", "name": "Create Data Connector", "description": "Tool to create a new data connector in Griptape Cloud. Data connectors enable ingestion from various sources like web pages, Confluence, Google Drive, S3, or data lakes. After creation, the connector can automatically sync data to knowledge bases based on the configured schedule." }, { "slug": "GRIPTAPE_CREATE_DATA_CONNECTOR_JOB", "name": "Create Data Connector Job", "description": "Tool to create a data job for a data connector in Griptape Cloud. Use when you need to trigger data ingestion or processing for a specific data connector. The job will be queued and executed asynchronously." }, { "slug": "GRIPTAPE_CREATE_EXPORT_JOB", "name": "Create Export Job", "description": "Tool to create a new export job in Griptape Cloud. Use when you need to initiate an export operation with custom data." }, { "slug": "GRIPTAPE_CREATE_FUNCTION", "name": "Create Function", "description": "Tool to create a new function in Griptape Cloud. Use when you need to register a new serverless function with optional code configuration and environment variables." }, { "slug": "GRIPTAPE_CREATE_FUNCTION_DEPLOYMENT", "name": "Create Function Deployment", "description": "Tool to create a new deployment for a function from a code source. Use when you need to deploy a function from a GitHub repository to Griptape Cloud." }, { "slug": "GRIPTAPE_CREATE_IMPORT_JOB", "name": "Create Import Job", "description": "Tool to create a new import job in Griptape Cloud. Use when you need to initiate a data import operation from a data lake asset (e.g., S3 bucket) into Griptape Cloud." }, { "slug": "GRIPTAPE_CREATE_INTEGRATION", "name": "Create Integration", "description": "Tool to create a new integration in Griptape Cloud. Use when you need to register a new integration (slack, github_app, or webhook) to connect external services with assistants or structures." }, { "slug": "GRIPTAPE_CREATE_KNOWLEDGE_BASE", "name": "Create Knowledge Base", "description": "Tool to create a new knowledge base in Griptape Cloud. Use when you need to set up a vector store for document indexing and semantic search." }, { "slug": "GRIPTAPE_CREATE_KNOWLEDGE_BASE_JOB", "name": "Create Knowledge Base Job", "description": "Tool to create a knowledge base job for ingesting data into a knowledge base. Use when you need to trigger data ingestion or processing for a specific knowledge base." }, { "slug": "GRIPTAPE_CREATE_LIBRARY", "name": "Create Library", "description": "Tool to create a new library in Griptape Cloud. Use when you need to organize data connectors and knowledge bases for an assistant to use." }, { "slug": "GRIPTAPE_CREATE_MODEL", "name": "Create Model Configuration", "description": "Tool to create a new model configuration in Griptape Cloud. Use when you need to register a new model with specific authentication and configuration settings before using it in assistants or other Griptape resources." }, { "slug": "GRIPTAPE_CREATE_MODEL_AUTH_CONFIG", "name": "Create Model Auth Config", "description": "Tool to create a model authentication configuration in Griptape Cloud. Use when you need to set up new authentication for a model API endpoint." }, { "slug": "GRIPTAPE_CREATE_ORGANIZATION_API_KEY", "name": "Create Organization API Key", "description": "Tool to create a new API key for a specific organization. Use when you need to generate a new API key for authentication purposes. The API key value is only returned once during creation." }, { "slug": "GRIPTAPE_CREATE_RETRIEVER", "name": "Create Retriever", "description": "Tool to create a new retriever in Griptape Cloud. Use when you need to create a retriever with associated components for document retrieval capabilities." }, { "slug": "GRIPTAPE_CREATE_RULE", "name": "Create Rule", "description": "Tool to create a new rule in Griptape Cloud. Use when you need to define behavioral guidelines or constraints for AI assistants." }, { "slug": "GRIPTAPE_CREATE_SECRET", "name": "Create Secret", "description": "Tool to create a new secret in Griptape Cloud. Use when you need to store sensitive information like API keys, passwords, or tokens." }, { "slug": "GRIPTAPE_CREATE_STRUCTURE", "name": "Create Structure", "description": "Tool to create a new structure in Griptape Cloud. Use when you need to register a workflow or data processing pipeline that can be deployed and executed." }, { "slug": "GRIPTAPE_CREATE_STRUCTURE_DEPLOYMENT", "name": "Create Structure Deployment", "description": "Tool to create a new deployment for a structure. Use when you need to deploy a structure from a GitHub repository to Griptape Cloud." }, { "slug": "GRIPTAPE_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread in Griptape Cloud. Use when you need to start a new conversation thread for organizing messages and interactions." }, { "slug": "GRIPTAPE_CREATE_THREAD_MESSAGE", "name": "Create Thread Message", "description": "Tool to create a new message in a specific thread. Use when you need to add a message with input and output content to a conversation thread in Griptape Cloud." }, { "slug": "GRIPTAPE_CREATE_TOOL_DEPLOYMENT", "name": "Create Tool Deployment", "description": "Create a new deployment for a tool from a GitHub repository. Use when you need to deploy or update tool code from a GitHub source. The deployment process is asynchronous - use the Get Tool Deployment Status action to poll for completion." }, { "slug": "GRIPTAPE_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete an API key by ID. Use when you need to permanently remove an API key from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_ASSISTANT", "name": "Delete Assistant", "description": "Tool to delete an assistant by ID. Use when you need to permanently remove an assistant from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_BUCKET", "name": "Delete Bucket", "description": "Tool to delete a bucket by ID. Use when you need to remove a specific bucket from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_BUCKET_ASSET", "name": "Delete Bucket Asset", "description": "Tool to delete a specific asset from a Griptape Cloud bucket. Use when you need to remove an asset from a bucket by name." }, { "slug": "GRIPTAPE_DELETE_DATA_CONNECTOR", "name": "Delete Data Connector", "description": "Tool to delete a data connector. Use when you need to permanently remove a data connector from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_FUNCTION", "name": "Delete Function", "description": "Tool to delete a function from Griptape Cloud. Use when you need to permanently remove a function by its ID." }, { "slug": "GRIPTAPE_DELETE_INTEGRATION", "name": "Delete Integration", "description": "Tool to delete an integration by ID. Use when you need to permanently remove an integration from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_KNOWLEDGE_BASE", "name": "Delete Knowledge Base", "description": "Tool to delete a Knowledge Base from Griptape Cloud. Use when you need to permanently remove a knowledge base and all its associated data. This operation cannot be undone." }, { "slug": "GRIPTAPE_DELETE_LIBRARY", "name": "Delete Library", "description": "Tool to delete a library from Griptape Cloud. Use when you need to permanently remove a library resource." }, { "slug": "GRIPTAPE_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a message by its ID. Use when you need to remove a specific message from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_MODEL", "name": "Delete Model Configuration", "description": "Tool to delete a model configuration from Griptape Cloud. Use when you need to permanently remove a model configuration." }, { "slug": "GRIPTAPE_DELETE_MODEL_AUTH_CONFIG", "name": "Delete Model Auth Config", "description": "Tool to delete a model auth config by ID. Use when you need to permanently remove a model authentication configuration from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_RULE", "name": "Delete Rule", "description": "Tool to delete a rule by its ID. Use when you need to permanently remove a rule from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_RULESET", "name": "Delete Ruleset", "description": "Tool to permanently delete a ruleset from Griptape Cloud by its ID. Use when you need to remove a ruleset and all its associated rules. This operation cannot be undone." }, { "slug": "GRIPTAPE_DELETE_SECRET", "name": "Delete Secret", "description": "Tool to delete a secret from Griptape Cloud. Use when you need to permanently remove a secret by its ID." }, { "slug": "GRIPTAPE_DELETE_STRUCTURE", "name": "Delete Structure", "description": "Tool to delete a structure from Griptape Cloud. Use when you need to permanently remove a structure by its ID. This operation is irreversible." }, { "slug": "GRIPTAPE_DELETE_THREAD", "name": "Delete Thread", "description": "Tool to delete a thread by its ID. Use when you need to permanently remove a conversation thread and all its associated messages from Griptape Cloud." }, { "slug": "GRIPTAPE_DELETE_TOOL", "name": "Delete Tool", "description": "Tool to delete a tool from Griptape Cloud. Use when you need to permanently remove a tool resource by its ID." }, { "slug": "GRIPTAPE_GET_API_KEY", "name": "Get API Key", "description": "Tool to retrieve an API key's details. Use when you need to get information about a specific API key by its ID." }, { "slug": "GRIPTAPE_GET_ASSISTANT", "name": "Get Assistant", "description": "Tool to retrieve a specific assistant's details by ID. Use when you need detailed information about a particular assistant including its configuration, knowledge bases, and tools." }, { "slug": "GRIPTAPE_GET_BILLING_MANAGEMENT_URL", "name": "Get Billing Management URL", "description": "Tool to retrieve the billing management portal URL. Use when you need to access or redirect users to the billing portal for subscription or payment management." }, { "slug": "GRIPTAPE_GET_BUCKET", "name": "Get Bucket", "description": "Tool to retrieve a bucket's details by its ID. Use when you need to fetch information about a specific bucket in Griptape Cloud." }, { "slug": "GRIPTAPE_GET_BUCKET_ASSET", "name": "Get Bucket Asset", "description": "Tool to retrieve a specific asset from a Griptape Cloud bucket. Use when you need to fetch asset metadata or contents from a bucket by name." }, { "slug": "GRIPTAPE_GET_BUCKET_ASSET_URL", "name": "Get Bucket Asset URL", "description": "Tool to generate a signed URL for accessing or uploading bucket assets. Use when you need a temporary URL to GET (download) or PUT (upload) an asset in a Griptape Cloud bucket." }, { "slug": "GRIPTAPE_GET_CONFIG", "name": "Get Configuration", "description": "Tool to retrieve Griptape Cloud configuration. Use when you need to access data lake settings or Google Drive connector configuration." }, { "slug": "GRIPTAPE_GET_CREDITS_BALANCE", "name": "Get Credits Balance", "description": "Tool to retrieve the current credits balance. Use when you need to check available credits for billing or usage tracking." }, { "slug": "GRIPTAPE_GET_DATA_CONNECTOR", "name": "Get Data Connector", "description": "Tool to retrieve a data connector's configuration and details from Griptape Cloud. Use when you need information about a specific data connector including its type, configuration, and metadata." }, { "slug": "GRIPTAPE_GET_DATA_JOB", "name": "Get Data Job", "description": "Tool to retrieve a data job's status and details by its ID. Use when you need to check the current status, ingestion progress, or errors for a specific data job." }, { "slug": "GRIPTAPE_GET_EXPORT_JOB", "name": "Get Export Job", "description": "Tool to retrieve an export job by ID. Use when you need to check the status or details of an export operation." }, { "slug": "GRIPTAPE_GET_FUNCTION", "name": "Get Function", "description": "Tool to retrieve a function's details. Use when you need to get configuration, environment variables, or metadata for a specific function in Griptape Cloud." }, { "slug": "GRIPTAPE_GET_IMPORT_JOB", "name": "Get Import Job", "description": "Tool to retrieve an import job's status and details. Use when you need to check the current status and metadata for a specific import job." }, { "slug": "GRIPTAPE_GET_INTEGRATION", "name": "Get Integration", "description": "Tool to retrieve a specific integration's details by ID. Use when you need detailed information about a particular integration including its configuration, associated assistants, and structures." }, { "slug": "GRIPTAPE_GET_KNOWLEDGE_BASE", "name": "Get Knowledge Base", "description": "Tool to retrieve a knowledge base's configuration and details from Griptape Cloud. Use when you need information about a specific knowledge base including its type, configuration, embedding model, and metadata." }, { "slug": "GRIPTAPE_GET_KNOWLEDGE_BASE_JOB", "name": "Get Knowledge Base Job", "description": "Tool to retrieve a knowledge base job's status and details by its ID. Use when you need to check the current status, ingestion progress, or errors for a specific knowledge base job." }, { "slug": "GRIPTAPE_GET_KNOWLEDGE_BASE_SEARCH", "name": "Get Knowledge Base Search", "description": "Tool to retrieve details of a specific knowledge base search by its ID. Use when you need to fetch results of a previously executed knowledge base search." }, { "slug": "GRIPTAPE_GET_LIBRARY", "name": "Get Library", "description": "Tool to retrieve a specific library's details by ID. Use when you need detailed information about a library including its associated assistant, retrievers, knowledge bases, and data connectors." }, { "slug": "GRIPTAPE_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve a specific message's details by ID. Use when you need detailed information about a particular message from a thread." }, { "slug": "GRIPTAPE_GET_MODEL", "name": "Get Model Configuration", "description": "Tool to retrieve a model configuration's details by its ID. Use when you need to get information about a specific model configuration in Griptape Cloud, including its name, type, authentication settings, and metadata." }, { "slug": "GRIPTAPE_GET_MODEL_AUTH_CONFIG", "name": "Get Model Auth Config", "description": "Tool to retrieve a model auth config by ID. Use when you need to get configuration details for model authentication in Griptape Cloud." }, { "slug": "GRIPTAPE_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve an organization's details by its ID. Use when you need information about a specific organization including its configuration, entitlement, and metadata." }, { "slug": "GRIPTAPE_GET_RETRIEVER", "name": "Get Retriever", "description": "Tool to retrieve a retriever's details by its ID. Use when you need to fetch information about a specific retriever in Griptape Cloud, including its components and configuration." }, { "slug": "GRIPTAPE_GET_RETRIEVER_COMPONENT", "name": "Get Retriever Component", "description": "Tool to retrieve a retriever component's details by its ID. Use when you need to fetch information about a specific retriever component in Griptape Cloud." }, { "slug": "GRIPTAPE_GET_RULE", "name": "Get Rule", "description": "Tool to retrieve a specific rule's details by ID. Use when you need detailed information about a particular rule including its content, metadata, and timestamps." }, { "slug": "GRIPTAPE_GET_RULESET", "name": "Get Ruleset", "description": "Tool to retrieve a specific ruleset's details by ID. Use when you need detailed information about a particular ruleset including its name, rules, metadata, and timestamps." }, { "slug": "GRIPTAPE_GET_RULESET_BY_ALIAS", "name": "Get Ruleset by Alias", "description": "Retrieve a ruleset from Griptape Cloud by its unique alias identifier. The alias is typically an auto-generated 32-character hash (e.g., 'e9990de9925a40d1b8fce8455c63651f') created when the ruleset was first created, unless a custom alias was provided during creation. Returns the full ruleset details including name, metadata, rule IDs, and timestamps. Returns an empty list if no ruleset matches the given alias." }, { "slug": "GRIPTAPE_GET_SECRET", "name": "Get Secret", "description": "Tool to retrieve a secret's details from Griptape Cloud. Use when you need information about a specific secret including its name, organization, and usage timestamps." }, { "slug": "GRIPTAPE_GET_STRUCTURE", "name": "Get Structure", "description": "Tool to retrieve a structure's configuration and details from Griptape Cloud. Use when you need detailed information about a specific structure including its deployment, environment variables, and code configuration." }, { "slug": "GRIPTAPE_GET_STRUCTURES_DASHBOARD", "name": "Get Structures Dashboard", "description": "Tool to retrieve dashboard metrics for structures. Use when you need analytics on deployments, runs, errors, durations, and token usage." }, { "slug": "GRIPTAPE_GET_THREAD", "name": "Get Thread", "description": "Tool to retrieve a specific thread's details by ID. Use when you need detailed information about a particular conversation thread including its metadata and message statistics." }, { "slug": "GRIPTAPE_GET_TOOL", "name": "Get Tool", "description": "Tool to retrieve a specific tool's details by ID. Use when you need detailed information about a particular tool including its configuration, environment variables, and deployment status." }, { "slug": "GRIPTAPE_GET_USAGE", "name": "Get Usage", "description": "Tool to retrieve current usage statistics. Use when you need to check bytes ingested, RAG queries, runtime seconds, and their respective limits for the billing period." }, { "slug": "GRIPTAPE_GET_USER", "name": "Get User", "description": "Tool to retrieve a user's details by their ID. Use when you need information about a specific user including their email, name, and organization memberships." }, { "slug": "GRIPTAPE_LIST_ASSISTANT_RUN_EVENTS", "name": "List Assistant Run Events", "description": "Tool to list events for an assistant run with pagination support. Use when you need to retrieve execution events in a paginated manner, as opposed to streaming them." }, { "slug": "GRIPTAPE_LIST_BUCKET_ASSETS", "name": "List Bucket Assets", "description": "Tool to list assets in a bucket. Use when you need to retrieve files stored in a Griptape Cloud bucket. Supports pagination and filtering by name prefix/postfix." }, { "slug": "GRIPTAPE_LIST_BUCKETS", "name": "List Buckets", "description": "Tool to list all buckets in Griptape Cloud. Use after authenticating to retrieve available buckets with pagination support." }, { "slug": "GRIPTAPE_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to list all connections. Use after authenticating with Griptape Cloud to retrieve available connections. Supports optional pagination and type filtering." }, { "slug": "GRIPTAPE_LIST_DATA_CONNECTORS", "name": "List Data Connectors", "description": "Tool to list all data connectors. Use when you need to discover available data connectors and their configurations in Griptape Cloud. Supports pagination." }, { "slug": "GRIPTAPE_LIST_EMBEDDING_DRIVERS", "name": "List Embedding Drivers", "description": "Tool to list available embedding drivers. Use when you need to retrieve supported drivers and their models before embedding text." }, { "slug": "GRIPTAPE_LIST_EXPORT_JOBS", "name": "List Export Jobs", "description": "Tool to list export jobs from Griptape Cloud. Use when you need to view all export jobs with optional filtering by status and pagination." }, { "slug": "GRIPTAPE_LIST_FUNCTION_DEPLOYMENTS", "name": "List Function Deployments", "description": "Tool to list all deployments for a specific function. Use when you need to retrieve deployment history and status for a function in Griptape Cloud." }, { "slug": "GRIPTAPE_LIST_FUNCTIONS", "name": "List Functions", "description": "Tool to list all functions with optional pagination. Use when you need to discover available functions and their IDs in Griptape Cloud." }, { "slug": "GRIPTAPE_LIST_IMPORT_JOBS", "name": "List Import Jobs", "description": "Tool to list import jobs in Griptape Cloud. Use when you need to retrieve import jobs with optional filtering by status and pagination support." }, { "slug": "GRIPTAPE_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to list all integrations. Use when you need to discover available integrations in Griptape Cloud. Supports optional pagination." }, { "slug": "GRIPTAPE_LIST_KNOWLEDGE_BASE_JOBS", "name": "List Knowledge Base Jobs", "description": "Tool to list knowledge base jobs for a specific knowledge base. Use when you need to retrieve jobs with optional filtering by status and pagination support." }, { "slug": "GRIPTAPE_LIST_KNOWLEDGE_BASE_QUERIES", "name": "List Knowledge Base Queries", "description": "Tool to list all queries made to a specific Griptape Cloud knowledge base. Use when you need to retrieve historical query records including query text, results, and metadata. Supports pagination for large result sets." }, { "slug": "GRIPTAPE_LIST_KNOWLEDGE_BASES", "name": "List Knowledge Bases", "description": "Tool to list all knowledge bases. Use to retrieve available knowledge bases in Griptape Cloud with optional pagination." }, { "slug": "GRIPTAPE_LIST_KNOWLEDGE_BASE_SEARCHES", "name": "List Knowledge Base Searches", "description": "Tool to list all searches performed on a specific knowledge base. Use when you need to view the search history for a knowledge base." }, { "slug": "GRIPTAPE_LIST_LIBRARIES", "name": "List Libraries", "description": "Tool to list all libraries in Griptape Cloud. Use after authenticating to retrieve available libraries with pagination support." }, { "slug": "GRIPTAPE_LIST_MODEL_AUTH_CONFIGS", "name": "List Model Auth Configs", "description": "Tool to list all model authentication configurations with optional pagination. Use when you need to discover available model auth configs and their IDs in Griptape Cloud." }, { "slug": "GRIPTAPE_LIST_MODELS", "name": "List Models", "description": "Tool to list all models in Griptape Cloud. Use when you need to discover available models and their configurations. Supports pagination and filtering by model type or default status." }, { "slug": "GRIPTAPE_LIST_ORGANIZATION_API_KEYS", "name": "List Organization API Keys", "description": "Tool to list all API keys in a specific organization. Use when you need to retrieve all API keys for an organization with optional pagination support." }, { "slug": "GRIPTAPE_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations in Griptape Cloud. Use after authenticating to retrieve available organizations." }, { "slug": "GRIPTAPE_LIST_RETRIEVER_COMPONENTS", "name": "List Retriever Components", "description": "Tool to list all retriever components in Griptape Cloud. Use when you need to discover available retriever components and their configurations. Supports pagination." }, { "slug": "GRIPTAPE_LIST_RETRIEVERS", "name": "List Retrievers", "description": "Tool to list all retrievers in Griptape Cloud. Use to retrieve available retrievers with optional pagination support." }, { "slug": "GRIPTAPE_LIST_RULES", "name": "List Rules", "description": "Tool to list all rules in Griptape Cloud with optional pagination and filtering. Use when you need to retrieve available rules and their details." }, { "slug": "GRIPTAPE_LIST_SECRETS", "name": "List Secrets", "description": "Tool to list all secrets in Griptape Cloud. Use to retrieve available secrets with optional pagination." }, { "slug": "GRIPTAPE_LIST_STRUCTURE_DEPLOYMENTS", "name": "List Structure Deployments", "description": "Tool to list all deployments for a specific structure. Use when you need to retrieve deployment history and status for a structure in Griptape Cloud." }, { "slug": "GRIPTAPE_LIST_STRUCTURE_RUNS", "name": "List Structure Runs", "description": "Tool to list all runs for a specific structure with optional pagination and status filtering. Use when you need to retrieve historical execution runs for a structure." }, { "slug": "GRIPTAPE_LIST_STRUCTURES", "name": "List Structures", "description": "Tool to list all structures in Griptape Cloud. Use to retrieve available structures with optional pagination support." }, { "slug": "GRIPTAPE_LIST_THREAD_MESSAGES", "name": "List Thread Messages", "description": "Tool to list all messages in a specific thread. Use when you need to retrieve the conversation history or all messages from a thread in Griptape Cloud. Supports pagination for threads with many messages." }, { "slug": "GRIPTAPE_LIST_THREADS", "name": "List Threads", "description": "Tool to list all threads. Use to retrieve available conversation threads in Griptape Cloud with optional filters and pagination." }, { "slug": "GRIPTAPE_LIST_TOOL_DEPLOYMENTS", "name": "List Tool Deployments", "description": "Tool to list all deployments for a specific tool. Use when you need to retrieve deployment history and status for a tool in Griptape Cloud." }, { "slug": "GRIPTAPE_LIST_TOOL_RUNS", "name": "List Tool Runs", "description": "Tool to list all runs for a specific tool with optional pagination and status filtering. Use when you need to retrieve historical execution runs for a tool." }, { "slug": "GRIPTAPE_LIST_USERS", "name": "List Users", "description": "Tool to list all users in Griptape Cloud. Use after authenticating to retrieve available users." }, { "slug": "GRIPTAPE_QUERY_KNOWLEDGE_BASE", "name": "Query knowledge base", "description": "Performs semantic search against a Griptape Cloud knowledge base using natural language. Returns matching entries with similarity scores and metadata. Use this when you need to retrieve raw vector search results from a knowledge base. For a higher-level natural language answer, use the Search Knowledge Base action instead." }, { "slug": "GRIPTAPE_QUERY_RETRIEVER", "name": "Query Retriever", "description": "Tool to query a retriever in Griptape Cloud with a natural-language query. Use when you need to retrieve information using a configured retriever, which may include reranking and multi-knowledge-base search capabilities." }, { "slug": "GRIPTAPE_RULESET_CREATION", "name": "Ruleset Creation", "description": "Creates a new ruleset in Griptape Cloud. Rulesets are containers for rules that define behavioral guidelines for AI assistants. After creation, you can add rules to the ruleset and attach it to assistants to control their behavior." }, { "slug": "GRIPTAPE_SEARCH_KNOWLEDGE_BASE", "name": "Search Knowledge Base", "description": "Searches a Griptape Cloud Knowledge Base with a natural-language query and returns a synthesized answer. Use this tool when you need to: - Retrieve information from a specific knowledge base using natural language - Get AI-synthesized answers based on documents stored in a knowledge base - Query company documentation, FAQs, or other indexed content Prerequisites: You need a valid Knowledge Base ID, which can be found in the Griptape Cloud console. Example queries: - \"What is the refund policy?\" - \"How do I reset my password?\" - \"What are the supported file formats?\"" }, { "slug": "GRIPTAPE_TOOL_CREATION", "name": "Create Tool", "description": "Create a new tool resource in Griptape Cloud. Use this to register a new tool that can be configured and deployed later. The tool code can be added via the Griptape Cloud console after creation." }, { "slug": "GRIPTAPE_TOOL_DEPLOYMENT_STATUS_RETRIEVAL", "name": "Get Tool Deployment Status", "description": "Tool to retrieve status of a specific tool deployment. Use after creating a deployment to poll its progress." }, { "slug": "GRIPTAPE_TOOL_LISTING", "name": "List Tools", "description": "Tool to list all tools. Use when you need to discover available tools and their IDs in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_ASSISTANT", "name": "Update Assistant", "description": "Tool to update an existing assistant's configuration. Use when you need to modify an assistant's name, description, model, or attached resources like knowledge bases, rulesets, structures, or tools." }, { "slug": "GRIPTAPE_UPDATE_BUCKET", "name": "Update Bucket", "description": "Tool to update a bucket's properties by its ID. Use when you need to modify bucket details such as the name in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_DATA_CONNECTOR", "name": "Update Data Connector", "description": "Tool to update a data connector's configuration in Griptape Cloud. Use when you need to modify an existing data connector's name, description, schedule, or configuration settings." }, { "slug": "GRIPTAPE_UPDATE_FUNCTION", "name": "Update Function", "description": "Tool to update an existing function's configuration. Use when you need to modify a function's name, description, code configuration, environment variables, or configuration file path." }, { "slug": "GRIPTAPE_UPDATE_INTEGRATION", "name": "Update Integration", "description": "Tool to update an existing integration's configuration. Use when you need to modify an integration's name, description, type, configuration, or associated resources like assistants and structures." }, { "slug": "GRIPTAPE_UPDATE_KNOWLEDGE_BASE", "name": "Update Knowledge Base", "description": "Tool to update a knowledge base's configuration in Griptape Cloud. Use when you need to modify a knowledge base's type, config, description, name, embedding model, or other properties." }, { "slug": "GRIPTAPE_UPDATE_LIBRARY", "name": "Update Library", "description": "Tool to update an existing library's configuration in Griptape Cloud. Use when you need to modify a library's name, description, data connectors, or knowledge base configurations." }, { "slug": "GRIPTAPE_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to update a message's input, output, and metadata by its ID. Use when you need to modify message content or associated metadata in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_MODEL", "name": "Update Model Configuration", "description": "Tool to update a model configuration's properties by its ID. Use when you need to modify model details such as name, description, type, authentication settings, or activation status in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_MODEL_AUTH_CONFIG", "name": "Update Model Auth Config", "description": "Tool to update an existing model auth config's properties. Use when you need to modify a model authentication configuration's name, API key secret, base URL, or additional kwargs in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update an organization's properties by its ID. Use when you need to modify organization details such as the name or model configuration settings in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_RETRIEVER", "name": "Update Retriever", "description": "Tool to update an existing retriever's configuration in Griptape Cloud. Use when you need to modify a retriever's name, description, or associated retriever components." }, { "slug": "GRIPTAPE_UPDATE_RETRIEVER_COMPONENT", "name": "Update Retriever Component", "description": "Tool to update a retriever component's configuration by its ID. Use when you need to modify properties such as name, description, type, or configuration of a retriever component in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_RULE", "name": "Update Rule", "description": "Tool to update an existing rule's configuration. Use when you need to modify a rule's name, content, or metadata." }, { "slug": "GRIPTAPE_UPDATE_RULESET", "name": "Update Ruleset", "description": "Tool to update an existing ruleset's configuration. Use when you need to modify a ruleset's name, description, alias, rules, or metadata." }, { "slug": "GRIPTAPE_UPDATE_SECRET", "name": "Update Secret", "description": "Tool to update a secret's properties by its ID. Use when you need to modify secret details such as the name or value in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_STRUCTURE", "name": "Update Structure", "description": "Tool to update an existing structure's configuration. Use when you need to modify a structure's name, description, code configuration, environment variables, or webhook settings." }, { "slug": "GRIPTAPE_UPDATE_THREAD", "name": "Update Thread", "description": "Tool to update an existing thread's configuration. Use when you need to modify a thread's name, alias, metadata, or messages in Griptape Cloud." }, { "slug": "GRIPTAPE_UPDATE_TOOL", "name": "Update Tool", "description": "Tool to update an existing tool's configuration. Use when you need to modify a tool's name, description, code configuration, environment variables, or configuration file path." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "griptape_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Griptape Cloud API Key", "type": "string", "description": "Your Griptape Cloud API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "grist", "name": "Grist", "logo": "https://www.getgrist.com/static/images/logo.svg", "description": "Grist is a relational spreadsheet platform that combines the flexibility of a spreadsheet with the robustness of a database, allowing users to create custom applications tailored to their data needs.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GRIST_ADD_RECORDS", "name": "Add Records", "description": "Add one or more records to a Grist table. First use GRIST_LIST_WORKSPACES to get docId, GRIST_LIST_TABLES to get tableId, and GRIST_LIST_COLUMNS to get column IDs for the fields mapping." }, { "slug": "GRIST_CREATE_DOCUMENT", "name": "Create Document", "description": "Creates a new Grist document in a specified workspace. Use this tool when you need to add a new spreadsheet document to a workspace. Requires a valid workspace ID (obtainable via GRIST_LIST_WORKSPACES) and a document name." }, { "slug": "GRIST_CREATE_SCIM_USER", "name": "Create SCIM User", "description": "Tool to create a new SCIM user. Use when provisioning new user accounts via SCIM. Run after gathering all required user details." }, { "slug": "GRIST_CREATE_TABLE", "name": "Create Table", "description": "Tool to create tables in a document. Use after confirming the document ID. Creates one or more tables with specified columns in the given document." }, { "slug": "GRIST_CREATE_WEBHOOK", "name": "Create Document Webhook", "description": "Tool to create a new webhook for a specified document. Use when you need to register webhook endpoints for document events in Grist. Run after confirming document ID." }, { "slug": "GRIST_DELETE_ATTACHMENT", "name": "Remove Unused Attachments", "description": "Remove unused attachments from a Grist document to free up storage space. IMPORTANT: This action removes ALL attachments that are not currently referenced by any cell in the document. It does NOT delete a specific attachment by ID. To remove a specific attachment: 1. First remove its reference from the Attachments column cell that contains it 2. Then call this action to clean up the now-unreferenced file Attachments become \"unused\" when they are no longer referenced by any Attachments-type cell. Grist normally retains unreferenced attachments for a period to allow undo operations. This action removes them immediately (or only expired ones if expired_only=true)." }, { "slug": "GRIST_DELETE_COLUMN", "name": "Delete Column", "description": "Tool to delete a column from a Grist document table. Use after confirming document, table, and column IDs." }, { "slug": "GRIST_DELETE_RECORDS", "name": "Delete Grist Table Records", "description": "Tool to delete records from a specified Grist table. Use when you need to remove specific rows by their IDs. Use after confirming the row IDs exist." }, { "slug": "GRIST_DELETE_SCIM_USER", "name": "Delete SCIM User", "description": "Delete a user from the Grist organization by their numeric user ID. Use GRIST_GET_USERS first to find the user's ID. Falls back to org access API if SCIM is not enabled. Note: Cannot delete your own account." }, { "slug": "GRIST_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently removes a webhook from a Grist document. Use this tool when you need to stop receiving notifications for document changes. First use GRIST_LIST_WEBHOOKS to find the webhook_id you want to delete. This action is destructive and cannot be undone." }, { "slug": "GRIST_DOWNLOAD_ALL_ATTACHMENTS_ARCHIVE", "name": "Download All Attachments Archive", "description": "Download all attachments from a Grist document as a single archive file (.zip or .tar). Use this to bulk-download attachments. Ensure the document has attachments before calling (check with GRIST_LIST_ATTACHMENTS). Returns an empty archive if no attachments exist." }, { "slug": "GRIST_DOWNLOAD_ATTACHMENT", "name": "Download Attachment", "description": "Download a file attachment from a Grist document. Returns the file content as a downloadable file. Use GRIST_LIST_ATTACHMENTS first to get valid attachment IDs." }, { "slug": "GRIST_FETCH_DOCUMENT_METADATA", "name": "Fetch Document Metadata", "description": "Tool to fetch metadata for a specified Grist document. Use after obtaining the document ID." }, { "slug": "GRIST_FETCH_TABLE_METADATA", "name": "Fetch Table Metadata", "description": "Tool to retrieve metadata for a specified table in a Grist document. Use when you need to inspect table schema details before data operations." }, { "slug": "GRIST_GET_ORG_ACCESS", "name": "Get Org Access", "description": "Retrieves the list of users who have access to a Grist organization along with their access roles (owners, editors, viewers). Use this to find user IDs, emails, or check access permissions within an organization. Useful for user management tasks." }, { "slug": "GRIST_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of users via SCIM v2. Use when you need to page through and filter enterprise users in Grist." }, { "slug": "GRIST_LIST_ATTACHMENTS", "name": "List Attachments", "description": "Tool to list all attachments in a Grist document. Use after confirming the document ID to retrieve attachment metadata." }, { "slug": "GRIST_LIST_COLUMNS", "name": "List Columns", "description": "Tool to list all columns in a specified Grist table. Use after selecting the document and table to inspect column metadata." }, { "slug": "GRIST_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations accessible to the authenticated user. Use when you need to select a Grist organization for subsequent operations." }, { "slug": "GRIST_LIST_RECORDS", "name": "List Records", "description": "Tool to retrieve records from a specified table within a Grist document. Use when you need to fetch rows by applying optional filters, sorting, limits, or hidden columns. Example: list records where pet is 'cat' sorted by '-age'." }, { "slug": "GRIST_LIST_TABLES", "name": "List Tables", "description": "Tool to list all tables within a specified document. Use after obtaining the document ID to retrieve its tables." }, { "slug": "GRIST_LIST_WEBHOOKS", "name": "List Webhooks", "description": "List all webhooks configured for a Grist document. Returns webhook configuration details (URL, event types, table binding) and delivery status information. Use this to inspect, audit, or manage webhooks for a document. Requires a valid document ID obtained from GRIST_LIST_WORKSPACES or GRIST_CREATE_DOCUMENT." }, { "slug": "GRIST_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to list all workspaces and documents accessible to the authenticated user on the current site. Use when you need to select a workspace or document for subsequent operations." }, { "slug": "GRIST_RUN_SQL_QUERY", "name": "Run SQL Query", "description": "Tool to execute a read-only SQL SELECT query on a Grist document. Use after confirming the document ID and preparing a valid SQL SELECT statement." }, { "slug": "GRIST_UPDATE_COLUMN_METADATA", "name": "Update Column Metadata", "description": "Updates metadata (label, type, description, formula, etc.) for one or more columns in a Grist table. Use List Columns first to get valid column IDs. Warning: changing 'label' may rename the column ID unless 'untieColIdFromLabel' is set to true." }, { "slug": "GRIST_UPDATE_DOCUMENT_METADATA", "name": "Update Document Metadata", "description": "Tool to update metadata for a specified Grist document. Use when you need to rename or pin/unpin a document after obtaining its ID." }, { "slug": "GRIST_UPDATE_RECORDS", "name": "Update Records", "description": "Update existing records in a Grist table by their row IDs. Use this tool to modify field values for one or more records in a specified document and table. First use GRIST_LIST_RECORDS to obtain the record IDs you want to update. Supports batch updates - you can update multiple records in a single call. The API uses PATCH semantics, meaning only specified fields are updated; unspecified fields remain unchanged. IMPORTANT: When updating multiple records in a batch, all records must specify the exact same set of field names (e.g., if updating Name and Age for record 1, you must also update Name and Age for record 2)." }, { "slug": "GRIST_UPDATE_TABLE_METADATA", "name": "Update Table Metadata", "description": "Update metadata properties for a table in a Grist document. Currently the main updatable property is 'onDemand' which controls lazy loading of table data. Use List Tables to find valid table IDs first." }, { "slug": "GRIST_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update an existing webhook configuration for a Grist document. Use to modify webhook settings such as URL, event types, enabled status, or target table. Requires valid document ID (from GRIST_LIST_WORKSPACES) and webhook ID (from GRIST_LIST_WEBHOOKS). Only provided fields will be updated; omitted fields remain unchanged." }, { "slug": "GRIST_UPLOAD_ATTACHMENT", "name": "Upload Attachment", "description": "Upload one or more file attachments to a Grist document. Returns attachment IDs that can be used to link files to records in Attachments-type columns. First use GRIST_LIST_WORKSPACES to get a valid document ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "grist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Grist Team Subdomain", "type": "string", "description": "The subdomain of the Grist team site, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Grist API Key", "type": "string", "description": "The API key for authenticating requests to the Grist API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "groqcloud", "name": "GroqCloud", "logo": "https://logos.composio.dev/api/groqcloud", "description": "GroqCloud provides high-performance AI inference services, enabling developers to deploy and manage AI models efficiently.", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GROQCLOUD_CREATE_AUDIO_TRANSCRIPTION", "name": "Create Audio Transcription", "description": "Tool to transcribe audio into text in the same language as the audio. Use when you need to convert speech to text while preserving the original language. Supports multiple formats including mp3, mp4, wav, and webm." }, { "slug": "GROQCLOUD_CREATE_RESPONSE", "name": "Create Response", "description": "Tool to create a model response for the given input. Beta endpoint with simplified interface compared to chat completions. Use when you need a streamlined API for generating model responses." }, { "slug": "GROQCLOUD_GROQ_CREATE_AUDIO_TRANSLATION", "name": "Create Audio Translation", "description": "Tool to translate an audio file into English text. Use when you have a non-English recording and need an accurate English transcript. Use after confirming the file path." }, { "slug": "GROQCLOUD_GROQ_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Tool to generate a chat-based completion for a conversation. Use when you have a list of prior messages and need the model's next reply. Response completion text is at choices[0].message.content in the returned envelope." }, { "slug": "GROQCLOUD_GROQ_RETRIEVE_MODEL", "name": "Retrieve Model", "description": "Tool to retrieve detailed information about a specific model. Use after listing models when you need metadata for a chosen model. Returned metadata may change as models update; do not cache." }, { "slug": "GROQCLOUD_LIST_MODELS", "name": "List Models", "description": "Tool to list all available models and their metadata. Always call this to retrieve current model IDs rather than using hard-coded or cached identifiers, as deprecated names cause failures in GROQCLOUD_GROQ_RETRIEVE_MODEL and GROQCLOUD_GROQ_CREATE_CHAT_COMPLETION. Returns availability and metadata only — excludes usage stats, latency metrics, and pricing. Response may include many models; filter client-side by provider, family, modality, or context length. Frequent polling combined with high-volume requests risks HTTP 429 rate_limit_exceeded; use backoff and minimize call frequency." }, { "slug": "GROQCLOUD_LIST_VOICES", "name": "List TTS Voices", "description": "Tool to retrieve available TTS voices for Groq PlayAI models. Use when you need to discover voice options before calling text-to-speech. Note: static list maintained manually; no live endpoint exists." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "groqcloud_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "GroqCloud API Key", "type": "string", "description": "The API key used to authenticate requests to the Groq API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "growsurf", "name": "Growsurf", "logo": "https://logos.composio.dev/api/growsurf", "description": "Referral software for B2C, FinTech, and SaaS. Create and manage referral campaigns, track participants, and reward achievements.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "growsurf_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your GrowSurf API key. Get it from Account > API Keys in your GrowSurf dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gtmetrix", "name": "GTmetrix", "logo": "https://logos.composio.dev/api/gtmetrix", "description": "GTmetrix is a performance testing and monitoring tool that analyzes website speed, provides detailed performance reports, and helps optimize web applications for better user experience.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GTMETRIX_DELETE_PAGE", "name": "Delete Page", "description": "Tool to delete a specific page in GTmetrix. Use when you need to permanently remove a page resource." }, { "slug": "GTMETRIX_DELETE_REPORT", "name": "Delete Report", "description": "Tool to delete a GTmetrix report. Use when you need to remove an existing performance report from GTmetrix." }, { "slug": "GTMETRIX_GET_BROWSER", "name": "Get Browser Details", "description": "Tool to retrieve browser details from GTmetrix. Use when you need to get information about a specific browser including name, platform, supported features, and testing capabilities." }, { "slug": "GTMETRIX_GET_BROWSERS", "name": "Get Browsers", "description": "Tool to retrieve the list of available browsers for GTmetrix performance tests. Use when you need to see which browsers are available and their testing capabilities." }, { "slug": "GTMETRIX_GET_LOCATION", "name": "Get Location Details", "description": "Tool to retrieve location details from GTmetrix. Use when you need to get information about a specific GTmetrix test location including name, region, browser support, IP addresses, and access permissions." }, { "slug": "GTMETRIX_GET_LOCATIONS", "name": "Get Locations", "description": "Tool to retrieve the list of available GTmetrix test locations. Use when you need to see which locations are available for testing and their details including supported browsers and access status." }, { "slug": "GTMETRIX_GET_PAGE", "name": "Get Page Details", "description": "Tool to retrieve page details from the user's GTmetrix account. Use when you need to get comprehensive page information including URL, testing configuration, and monitoring frequency." }, { "slug": "GTMETRIX_GET_PAGE_LATEST_REPORT", "name": "Get Page Latest Report", "description": "Tool to retrieve the most recent test report for a monitored page in GTmetrix. Use when you need to get the latest performance metrics and timing data for a specific page." }, { "slug": "GTMETRIX_GET_PAGE_REPORTS", "name": "Get Page Reports", "description": "Tool to retrieve the report list associated with a monitored page in GTmetrix. Use when you need to access historical performance data for a specific page. Supports pagination, sorting, and filtering." }, { "slug": "GTMETRIX_GET_PAGES", "name": "Get Pages", "description": "Tool to retrieve the page list from your GTmetrix account. Returns a paginated collection of monitored pages with their configurations and latest report information. Use when you need to view all monitored pages, check page configurations, or access latest report data." }, { "slug": "GTMETRIX_GET_REPORT", "name": "Get Report", "description": "Tool to retrieve a GTmetrix test report by its identifier. Use when you need to get comprehensive performance metrics, timing data, and links to resources for a specific report." }, { "slug": "GTMETRIX_GET_REPORT_RESOURCE", "name": "Get Report Resource", "description": "Tool to get a report resource such as screenshot, HAR file, video, PDF, or Lighthouse JSON. Use when you need to download specific report artifacts that require API authentication." }, { "slug": "GTMETRIX_GET_SIMULATED_DEVICE", "name": "Get Simulated Device", "description": "Tool to retrieve simulated device details. Use when you need information about a specific simulated device including its name, category, manufacturer, user agent, screen dimensions, and pixel ratio." }, { "slug": "GTMETRIX_GET_SIMULATED_DEVICES", "name": "Get Simulated Devices", "description": "Tool to retrieve the list of simulated devices available in GTmetrix. Use when you need to see available device profiles for testing." }, { "slug": "GTMETRIX_GET_STATUS", "name": "Get API Account Status", "description": "Tool to retrieve the current API account state and remaining credits. Use to check available API credits, refill schedule, and account features." }, { "slug": "GTMETRIX_GET_TEST", "name": "Get Test Details", "description": "Tool to retrieve test details for a specific GTMetrix test. Use when you need to check the status, configuration, or results of a previously initiated test." }, { "slug": "GTMETRIX_GET_TESTS", "name": "Get Tests", "description": "Tool to retrieve the test list from your GTmetrix account with pagination and filtering support. Use when you need to view tests with their state, timestamps, and configuration details." }, { "slug": "GTMETRIX_RETEST_PAGE", "name": "Retest Page", "description": "Tool to initiate a retest of a GTmetrix page with same parameters. Use when you need to create a new test using the same parameters as the most recent report for this page." }, { "slug": "GTMETRIX_RETEST_REPORT", "name": "Retest Report", "description": "Tool to initiate a retest of a completed GTmetrix report with same parameters. Use when you need to rerun a test using the exact same analysis parameters as the original test." }, { "slug": "GTMETRIX_START_TEST", "name": "Start Test", "description": "Tool to start a new GTmetrix test for a specified URL. Use when you need to analyze website performance with configurable options like location, browser, and throttling." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "gtmetrix_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your GTmetrix account > Account > API Usage to retrieve your API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "gusto", "name": "Gusto", "logo": "https://logos.composio.dev/api/gusto", "description": "Modern payroll, benefits, and HR management platform for small and medium businesses", "category": "human resources", "authSchemes": [ "OAUTH2" ], "toolCount": 192, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "GUSTO_ADD_EMPLOYEES_TO_HOLIDAY_PAY_POLICY", "name": "Add Employees to Holiday Pay Policy", "description": "Tool to add employees to a company's holiday pay policy in Gusto. Use when you need to add one or more employees to the holiday pay policy scope." }, { "slug": "GUSTO_ADD_EMPLOYEES_TO_TIME_OFF_POLICY", "name": "Add Employees to Time Off Policy", "description": "Tool to add employees to a time off policy in Gusto. Use when you need to assign employees to an existing vacation or sick leave policy. Employees must have at least one job to be added. Accepts starting balances for non-unlimited policies." }, { "slug": "GUSTO_ADD_PEOPLE_TO_DEPARTMENT", "name": "Add People to Department", "description": "Tool to add employees and contractors to a department in Gusto. Use when you need to assign people to a specific department for organizational structure." }, { "slug": "GUSTO_ASSIGN_PAY_SCHEDULES", "name": "Assign Pay Schedules", "description": "Tool to assign employees to pay schedules in Gusto. Use when you need to set up or update which pay schedule employees follow. For single assignments, provide default_pay_schedule_uuid. For by_employee or by_department assignments, use partial_assignment=true for partial updates or false for full assignments." }, { "slug": "GUSTO_CALCULATE_ACCRUING_TIME_OFF_HOURS", "name": "Calculate Accruing Time Off Hours", "description": "Tool to calculate accruing time off hours for an employee based on hours worked and used in a pay period. Returns a list of accrued hours for each time off policy associated with the employee, factoring in the policy's accrual method (per hour worked, per hour paid, with/without overtime)." }, { "slug": "GUSTO_CREATE_ADMIN", "name": "Create Admin", "description": "Tool to create a new admin for a Gusto company. Use when you need to add administrative access to a company account. If the email matches an existing user, creates an admin account for the current user, otherwise creates a new user." }, { "slug": "GUSTO_CREATE_COMPANIES_TIME_TRACKING_TIME_SHEETS", "name": "Create Time Sheet", "description": "Tool to create a time sheet for an employee or contractor in Gusto. Use when you need to record work hours for payroll or time tracking purposes. Requires entity details, job information, and shift times." }, { "slug": "GUSTO_CREATE_COMPANY_BANK_ACCOUNT", "name": "Create Company Bank Account", "description": "Tool to create a company bank account in Gusto. Use when you need to add a new bank account for payroll processing." }, { "slug": "GUSTO_CREATE_COMPANY_BENEFIT", "name": "Create Company Benefit", "description": "Tool to create a company benefit in Gusto. Use when you need to add a new benefit offering (e.g., medical insurance, retirement plan) for a company." }, { "slug": "GUSTO_CREATE_COMPANY_LOCATION", "name": "Create company location", "description": "Tool to create a company location in Gusto. Use when you need to add a new address for a company (mailing, filing, or work location)." }, { "slug": "GUSTO_CREATE_COMPANY_SIGNATORY", "name": "Create Company Signatory", "description": "Tool to create a new signatory for a Gusto company. Use when you need to add an authorized signatory who can sign company forms and documents." }, { "slug": "GUSTO_CREATE_CONTRACTOR", "name": "Create Contractor", "description": "Tool to create an individual or business contractor in Gusto. Use when you need to add a new contractor to a company's payroll system. For individual contractors, first_name and last_name are required; for business contractors, business_name is required. Hourly contractors require hourly_rate." }, { "slug": "GUSTO_CREATE_CONTRACTOR_BANK_ACCOUNT", "name": "Create Contractor Bank Account", "description": "Tool to create a contractor bank account in Gusto. Use when you need to add a bank account for contractor payments. Note: Only one bank account per contractor is supported; using this endpoint on a contractor who already has a bank account will replace it." }, { "slug": "GUSTO_CREATE_DEPARTMENT", "name": "Create Department", "description": "Tool to create a new department in a Gusto company. Use when you need to add a new department for organizational structure." }, { "slug": "GUSTO_CREATE_EARNING_TYPES", "name": "Create Earning Type", "description": "Tool to create a custom earning type for a company in Gusto. If an inactive earning type exists with the same name, this will reactivate it instead of creating a new one." }, { "slug": "GUSTO_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Tool to create a new employee in Gusto. Use when you need to add a new employee to a company's payroll system." }, { "slug": "GUSTO_CREATE_EMPLOYEE_BANK_ACCOUNT", "name": "Create Employee Bank Account", "description": "Tool to create an employee bank account in Gusto. Use when you need to add a new bank account for an employee. Note that creating an employee bank account will also update the employee's payment method." }, { "slug": "GUSTO_CREATE_EMPLOYEE_BENEFIT", "name": "Create Employee Benefit", "description": "Tool to enroll an employee in a company benefit in Gusto. Use when you need to add a benefit enrollment for an employee, specifying deductions, contributions, and coverage details." }, { "slug": "GUSTO_CREATE_EMPLOYEE_REHIRE", "name": "Create Employee Rehire", "description": "Tool to create an employee rehire in Gusto. Use when an employee is scheduled to return to the company after being terminated or dismissed. Requires the employee UUID, effective return date, work location, and whether to file a new hire report." }, { "slug": "GUSTO_CREATE_EMPLOYEE_WORK_ADDRESS", "name": "Create Employee Work Address", "description": "Tool to create an employee's work address in Gusto. Use when you need to assign an employee to a specific company location with an effective date." }, { "slug": "GUSTO_CREATE_EMPLOYEE_YTD_BENEFIT_AMOUNTS_FROM_OTHER_COMPANY", "name": "Create Employee YTD Benefit Amounts", "description": "Tool to create year-to-date benefit amounts from a different company for an employee. Use when you need to record prior YTD benefit contributions and deductions from a previous employer." }, { "slug": "GUSTO_CREATE_FLOWS", "name": "Create flows", "description": "Tool to generate a link to access a pre-built workflow in Gusto white-label UI. Use when you need to create onboarding flows, employee setup flows, or other company workflows. For security, all generated flows expire within 1 hour of inactivity or 24 hours from creation time." }, { "slug": "GUSTO_CREATE_GARNISHMENTS", "name": "Create Garnishment", "description": "Tool to create a garnishment (employee deduction) in Gusto. Use when you need to add fixed amounts or percentages deducted from an employee's pay, such as court-ordered payments, loan repayments, or other deductions." }, { "slug": "GUSTO_CREATE_HISTORICAL_EMPLOYEE", "name": "Create Historical Employee", "description": "Tool to create a historical employee in Gusto. Use when you need to add an employee who was previously dismissed from the company in the current year. Requires personal information (name, DOB, SSN), addresses (home and work location UUID), job hire date, and termination effective date." }, { "slug": "GUSTO_CREATE_HOLIDAY_PAY_POLICY", "name": "Create Holiday Pay Policy", "description": "Tool to create a holiday pay policy for a company in Gusto. Use when you need to define which federal holidays will be paid holidays for a company's employees." }, { "slug": "GUSTO_CREATE_JOB", "name": "Create Job", "description": "Tool to create a job for an employee in Gusto. Use when you need to add a new job or position for an existing employee in the payroll system." }, { "slug": "GUSTO_CREATE_JOB_COMPENSATION", "name": "Create job compensation", "description": "Tool to create a compensation for a job in Gusto. Use when you need to set up payment details (rate, payment unit, FLSA status) for an employee's job." }, { "slug": "GUSTO_CREATE_PAYROLL_GENERAL_LEDGER_REPORT", "name": "Create Payroll General Ledger Report", "description": "Tool to create a general ledger report for a payroll with optional aggregation by job, department, or integration type. Use when you need accounting entries for a payroll run. The report is generated asynchronously; use the returned request_uuid to poll for completion and retrieve the JSON report." }, { "slug": "GUSTO_CREATE_PAY_SCHEDULES_ASSIGNMENT_PREVIEW", "name": "Create Pay Schedule Assignment Preview", "description": "Tool to preview employee pay schedule assignment changes for a company. Use when you need to see how changing pay schedules will affect employees' pay periods and transition periods before applying the changes." }, { "slug": "GUSTO_CREATE_REPORTS", "name": "Create Custom Report", "description": "Tool to create a custom report for a company with custom columns, groupings, and filters. Use when you need to generate payroll, employee, or tax reports with specific data fields. The request_uuid in the response can be used to poll for the status and report URL upon completion. Report URLs are valid for 10 minutes." }, { "slug": "GUSTO_CREATE_REPORTS_EMPLOYEES_ANNUAL_FICA_WAGE", "name": "Create Employees Annual FICA Wage Report", "description": "Tool to generate an annual FICA wage report for all employees in a company over a specified year range. Use when you need detailed wage information subject to Social Security and Medicare taxes for benefits integrations or compliance verification. The report is generated asynchronously; use the returned request_uuid to poll for completion." }, { "slug": "GUSTO_CREATE_SECTION603_HIGH_EARNER_STATUS", "name": "Create Section 603 High Earner Status", "description": "Tool to create a Section 603 high earner status for an employee in Gusto. Use when you need to designate whether an employee qualifies as a high earner under Section 603 of the SECURE 2.0 Act for a specific year." }, { "slug": "GUSTO_CREATE_TIME_OFF_POLICY", "name": "Create Time Off Policy", "description": "Tool to create a time off policy in Gusto for a company. Use when you need to set up vacation or sick leave policies with specific accrual methods and limits. The policy can be configured with accrual rates, maximum hours, carryover limits, and termination payout rules." }, { "slug": "GUSTO_DEACTIVATE_EARNING_TYPE", "name": "Deactivate Earning Type", "description": "Tool to deactivate an earning type for a company. Use when you need to remove or disable an earning type from a company's payroll configuration." }, { "slug": "GUSTO_DEACTIVATE_TIME_OFF_POLICY", "name": "Deactivate Time Off Policy", "description": "Tool to deactivate a time off policy in Gusto. Use when you need to disable or remove a vacation or sick leave policy from active use. Note: The policy cannot be deactivated if there are pending time off requests." }, { "slug": "GUSTO_DELETE_COMPANIE_BANK_ACCOUNTS", "name": "Delete Company Bank Account", "description": "Tool to disable a company bank account in Gusto. Use when you need to deactivate a bank account for a company. A bank account cannot be disabled if it is used for any unprocessed payments." }, { "slug": "GUSTO_DELETE_COMPANY_HOLIDAY_PAY_POLICY", "name": "Delete Company Holiday Pay Policy", "description": "Tool to delete a company's holiday pay policy in Gusto. Use when you need to remove the holiday pay policy for a company." }, { "slug": "GUSTO_DELETE_COMPENSATION", "name": "Delete Compensation", "description": "Tool to delete a compensation by its UUID. Use when you need to remove a compensation record from Gusto." }, { "slug": "GUSTO_DELETE_CONTRACTOR", "name": "Delete Contractor", "description": "Tool to delete a contractor from Gusto. Use when you need to permanently remove a contractor from the system." }, { "slug": "GUSTO_DELETE_DEPARTMENT", "name": "Delete Department", "description": "Tool to delete a department in Gusto. Use when you need to permanently remove a department. All employees and contractors must be removed from the department before deletion." }, { "slug": "GUSTO_DELETE_EMPLOYEE", "name": "Delete Employee", "description": "Tool to delete an onboarding employee from Gusto. Use when you need to remove an employee who has not yet been onboarded." }, { "slug": "GUSTO_DELETE_EMPLOYEE_BANK_ACCOUNT", "name": "Delete Employee Bank Account", "description": "Tool to delete an employee bank account in Gusto. Use when you need to remove a bank account from an employee's profile." }, { "slug": "GUSTO_DELETE_EMPLOYEE_BENEFIT", "name": "Delete Employee Benefit", "description": "Tool to delete an employee benefit by its UUID. Use when you need to remove an employee's enrollment in a specific benefit from Gusto." }, { "slug": "GUSTO_DELETE_EMPLOYEE_HOME_ADDRESS", "name": "Delete Employee Home Address", "description": "Tool to delete an employee's home address in Gusto. Use when you need to remove a home address from an employee's profile." }, { "slug": "GUSTO_DELETE_EMPLOYEE_TERMINATION", "name": "Delete Employee Termination", "description": "Tool to delete an employee termination in Gusto. Use when you need to remove a pending termination for an employee." }, { "slug": "GUSTO_DELETE_I9_AUTHORIZATION_DOCUMENT", "name": "Delete I-9 Authorization Document", "description": "Tool to delete an employee's I-9 verification document from Gusto. Use when removing documents provided to verify identity and work authorization in the United States." }, { "slug": "GUSTO_DELETE_JOB", "name": "Delete Job", "description": "Tool to delete an individual job from Gusto. Use when you need to remove a job by its UUID." }, { "slug": "GUSTO_DELETE_TIME_TRACKING_TIME_SHEET", "name": "Delete Time Tracking Time Sheet", "description": "Tool to delete a time sheet from Gusto time tracking. Use when you need to permanently remove a time sheet from the system." }, { "slug": "GUSTO_DELETE_WORK_ADDRESS", "name": "Delete Work Address", "description": "Tool to delete an employee's work address from Gusto. Use when you need to remove a work address by its UUID." }, { "slug": "GUSTO_DOWNLOAD_EMPLOYEE_FORMS_PDF", "name": "Download Employee Forms PDF", "description": "Tool to get the link to an employee form PDF. Use when you need to retrieve or download a specific employee form document by providing the employee UUID and form UUID." }, { "slug": "GUSTO_DOWNLOAD_FORMS_PDF", "name": "Download Company Forms PDF", "description": "Tool to get the link to a company form PDF. Use when you need to retrieve or download a specific company form document by providing the form UUID." }, { "slug": "GUSTO_FINISH_COMPANY_ONBOARDING", "name": "Finish company onboarding", "description": "Tool to finish company onboarding in Gusto. Use when you need to mark a company's onboarding process as complete." }, { "slug": "GUSTO_GET_BENEFIT", "name": "Get Benefit", "description": "Tool to retrieve a benefit supported by Gusto. Returns high-level information about a particular benefit type and its tax considerations." }, { "slug": "GUSTO_GET_COMPANIES_DEPARTMENTS", "name": "Get Company Departments", "description": "Tool to retrieve all departments of a company from Gusto. Use when you need to get a list of all departments, including their employees and contractors." }, { "slug": "GUSTO_GET_COMPANY", "name": "Get company", "description": "Tool to retrieve company details from Gusto by company UUID. Use when you need to get information about a specific company including status, locations, admins, and payroll settings." }, { "slug": "GUSTO_GET_COMPANY_ATTACHMENT_DOWNLOAD_URL", "name": "Get Company Attachment Download URL", "description": "Tool to retrieve a temporary URL to download a company attachment file. Use when you need to access uploaded company documents or files." }, { "slug": "GUSTO_GET_COMPANY_BENEFIT", "name": "Get Company Benefit", "description": "Tool to retrieve a specific company benefit by its UUID. Use when you need to get detailed information about a company benefit, including employee participation if requested." }, { "slug": "GUSTO_GET_COMPANY_EARNING_TYPES", "name": "Get Company Earning Types", "description": "Tool to retrieve all earning types (default and custom) for a company. Use when you need to list available earning types that can be assigned to employees for payroll purposes." }, { "slug": "GUSTO_GET_COMPANY_HOLIDAY_PAY_POLICY", "name": "Get company holiday pay policy", "description": "Tool to retrieve a company's holiday pay policy including which federal holidays are selected and which employees are covered. Use when you need to access holiday pay configuration for a company." }, { "slug": "GUSTO_GET_COMPANY_LOCATIONS", "name": "Get Company Locations", "description": "Tool to get all company locations. Use when you need to retrieve address information for all locations associated with a specific company." }, { "slug": "GUSTO_GET_COMPANY_ONBOARDING_STATUS", "name": "Get company onboarding status", "description": "Tool to retrieve a company's onboarding status from Gusto. Use when you need to check if a company has completed onboarding and view the status of individual onboarding steps." }, { "slug": "GUSTO_GET_COMPANY_REPORT_TEMPLATE", "name": "Get company report template", "description": "Tool to get a report template for a company. Use when you need to retrieve the recommended columns and groupings for a specific report type." }, { "slug": "GUSTO_GET_COMPANY_SUSPENSIONS", "name": "Get Company Suspensions", "description": "Tool to retrieve all suspension records for a company. Use when you need to check if a company's Gusto account has been suspended and view suspension details including dates, reasons, and tax reconciliation settings." }, { "slug": "GUSTO_GET_COMPENSATIONS", "name": "Get compensation", "description": "Tool to retrieve compensation details by compensation UUID. Use when you need information on how much is paid out for a job, including rate, payment unit, and FLSA status." }, { "slug": "GUSTO_GET_CONTRACTOR", "name": "Get Contractor", "description": "Tool to retrieve a specific contractor by UUID from Gusto. Use when you need to get detailed information about a contractor including their personal details, employment status, onboarding status, and payment information." }, { "slug": "GUSTO_GET_CONTRACTOR_ADDRESS", "name": "Get Contractor Address", "description": "Tool to retrieve a contractor's address from Gusto. Use when you need to get the current address information for a contractor. The address is used to determine certain tax information and is geocoded to ensure validity." }, { "slug": "GUSTO_GET_CONTRACTOR_BANK_ACCOUNTS", "name": "Get Contractor Bank Accounts", "description": "Tool to get all bank accounts for a specific contractor. Use when you need to retrieve bank account information including account type, routing numbers, and masked account numbers for a contractor." }, { "slug": "GUSTO_GET_CONTRACTOR_DOCUMENT", "name": "Get Contractor Document", "description": "Tool to retrieve a contractor document by UUID. Use when you need to get details about a specific contractor document including its title, description, signing status, and associated fields." }, { "slug": "GUSTO_GET_CONTRACTOR_DOCUMENT_PDF", "name": "Get Contractor Document PDF", "description": "Tool to retrieve the PDF download URL for a contractor document. Use when you need to access or download a specific contractor document by its UUID." }, { "slug": "GUSTO_GET_CONTRACTOR_PAYMENT_GROUPS", "name": "Get Contractor Payment Groups", "description": "Tool to get contractor payment groups for a company. Use when you need to retrieve payment groups for contractors within a specific time period. Returns groups with submission and credit blockers but without individual contractor payments." }, { "slug": "GUSTO_GET_CONTRACTOR_PAYMENTS", "name": "Get Contractor Payments", "description": "Tool to retrieve contractor payments for a company within a specified date range. Use when you need to fetch payment information for contractors, optionally filtered by specific contractor or date grouping." }, { "slug": "GUSTO_GET_DEPARTMENT", "name": "Get Department", "description": "Tool to retrieve details of a specific department from Gusto by department UUID. Use when you need to get information about a specific department including its employees and contractors." }, { "slug": "GUSTO_GET_EMPLOYEE", "name": "Get employee", "description": "Tool to retrieve detailed information about an employee by their UUID. Use when you need employee information including personal details, job information, compensation, benefits, and employment status." }, { "slug": "GUSTO_GET_EMPLOYEE_ALL_BENEFITS", "name": "Get Employee All Benefits", "description": "Tool to get all benefits for a specific employee by their UUID. Use when you need to retrieve all benefit enrollments for an employee, including contribution amounts, deduction details, and coverage information." }, { "slug": "GUSTO_GET_EMPLOYEE_BANK_ACCOUNTS", "name": "Get Employee Bank Accounts", "description": "Tool to retrieve all bank accounts for a specific employee. Use when you need to view an employee's banking details for payroll processing or direct deposit setup." }, { "slug": "GUSTO_GET_EMPLOYEE_BENEFIT", "name": "Get Employee Benefit", "description": "Tool to retrieve a specific employee benefit enrollment by UUID. Use when you need to get detailed information about an employee's enrollment in a company benefit, including contribution amounts, deduction details, and coverage information. Benefits containing PHI require the employee_benefits:read:phi scope." }, { "slug": "GUSTO_GET_EMPLOYEE_FEDERAL_TAXES", "name": "Get employee federal taxes", "description": "Tool to retrieve an employee's federal tax withholding information including W4 details. Use when you need to access federal tax configuration for a specific employee. The response format varies based on whether the employee is using pre-2020 or 2020+ W4 form." }, { "slug": "GUSTO_GET_EMPLOYEE_FORMS", "name": "Get Employee Form", "description": "Tool to get a specific employee form by employee ID and form ID. Use when you need to retrieve details about a specific form for an employee, including tax forms and other employee documents." }, { "slug": "GUSTO_GET_EMPLOYEE_JOBS", "name": "Get employee jobs", "description": "Tool to retrieve all jobs for a specific employee in Gusto. Use when you need to get job information including titles, locations, compensation details, and employment history for an employee." }, { "slug": "GUSTO_GET_EMPLOYEE_PAYMENT_METHOD", "name": "Get Employee Payment Method", "description": "Tool to retrieve an employee's payment method configuration. Use when you need to view how employee payments are split across bank accounts or if they are paid by check." }, { "slug": "GUSTO_GET_EMPLOYEE_PAY_STUB", "name": "Get employee pay stub", "description": "Tool to retrieve an employee's pay stub for a specified payroll as a PDF file. Use when you need to download a pay stub document for a specific employee and payroll." }, { "slug": "GUSTO_GET_EMPLOYEE_RECURRING_REIMBURSEMENTS", "name": "Get Employee Recurring Reimbursements", "description": "Tool to get all recurring reimbursements for an employee. Use when you need to retrieve recurring reimbursement information for a specific employee." }, { "slug": "GUSTO_GET_EMPLOYEE_STATE_TAXES", "name": "Get employee state taxes", "description": "Tool to retrieve an employee's state tax information including withholding details and state-specific questions. Use when you need to access state tax configuration for a specific employee." }, { "slug": "GUSTO_GET_FEDERAL_TAX_DETAILS", "name": "Get federal tax details", "description": "Tool to retrieve federal tax details for a company including EIN verification status, tax payer type, filing form, and deposit schedule. Use when you need to access a company's federal tax configuration and IRS-related information." }, { "slug": "GUSTO_GET_FORM", "name": "Get Company Form", "description": "Tool to get a company form by its UUID. Use when you need to retrieve details about a specific form including its type, title, year, quarter, and signing status." }, { "slug": "GUSTO_GET_GARNISHMENT", "name": "Get Garnishment", "description": "Tool to retrieve a garnishment (employee deduction) from Gusto by garnishment UUID. Use when you need to get details about fixed amounts or percentages deducted from an employee's pay, such as court-ordered payments for child support or back taxes." }, { "slug": "GUSTO_GET_HOME_ADDRESS", "name": "Get Home Address", "description": "Tool to get an employee's home address by its UUID. Use when you need to retrieve specific address details for tax purposes or employee records." }, { "slug": "GUSTO_GET_JOB", "name": "Get job", "description": "Tool to retrieve a specific job by UUID in Gusto. Use when you need to get detailed job information including title, location, compensation details, and employment data for a specific job." }, { "slug": "GUSTO_GET_LOCATION", "name": "Get location", "description": "Tool to retrieve a specific location by UUID. Use when you need to get detailed address information for a single location." }, { "slug": "GUSTO_GET_NOTIFICATION", "name": "Get Notification", "description": "Tool to retrieve a notification's details by UUID from Gusto. Use when you need to get detailed information about a specific notification including its status, due date, and related resources." }, { "slug": "GUSTO_GET_PAYROLL", "name": "Get payroll", "description": "Tool to retrieve a single payroll by its UUID. Returns payroll details including employee compensations and totals if calculated or processed. Use when you need detailed information about a specific payroll run." }, { "slug": "GUSTO_GET_PAYROLL_RECEIPT", "name": "Get payroll receipt", "description": "Tool to retrieve a payroll receipt by payroll UUID. Returns payment details including employee compensations, taxes, and totals. Dollar amounts are returned as string representations of numeric decimals to the cent." }, { "slug": "GUSTO_GET_PAY_SCHEDULE", "name": "Get pay schedule", "description": "Tool to retrieve a specific pay schedule by its UUID. Use when you need detailed information about a particular pay schedule for a company." }, { "slug": "GUSTO_GET_PEOPLE_BATCHES", "name": "Get People Batches", "description": "Tool to retrieve the status and results of a people batch from Gusto. Use when you need to poll the batch processing status and retrieve results after submitting a people batch." }, { "slug": "GUSTO_GET_RECURRING_REIMBURSEMENT", "name": "Get Recurring Reimbursement", "description": "Tool to get a recurring reimbursement by its UUID. Use when you need to retrieve details of a specific recurring reimbursement." }, { "slug": "GUSTO_GET_REPORTS", "name": "Get report", "description": "Tool to get a company's report given the request_uuid. Returns the report request's status and, if complete, the report URL. Use when you need to check the status of a report generation request or retrieve the completed report URL." }, { "slug": "GUSTO_GET_SALARY_ESTIMATE", "name": "Get salary estimate", "description": "Tool to retrieve a salary estimate for an S-Corp owner from Gusto. Use when you need to get details about a salary estimate calculation based on occupation, experience level, location, and business revenue." }, { "slug": "GUSTO_GET_STATE_TAX_REQUIREMENTS", "name": "Get state tax requirements", "description": "Tool to retrieve state-specific tax requirements for a company in Gusto. Use when you need to access required tax configuration fields for a specific US state including withholding details, account numbers, and filing information." }, { "slug": "GUSTO_GET_SUMMARY_COMPANY_BENEFITS_SUMMARY", "name": "Get Company Benefit Summary", "description": "Tool to retrieve summary benefit data for a specific company benefit. Returns aggregate contribution and deduction amounts for a given time period. Use when you need to analyze benefit costs, employee participation, or financial reporting for a specific company benefit." }, { "slug": "GUSTO_GET_TAX_LIABILITIES", "name": "Get Tax Liabilities", "description": "Tool to retrieve tax liabilities for a company's external payrolls. Use when you need to view tax liability selections, filing frequencies, and payment methods for external payroll processing." }, { "slug": "GUSTO_GET_TIME_OFF_POLICY", "name": "Get Time Off Policy", "description": "Tool to retrieve a specific time off policy by UUID from Gusto. Use when you need to get detailed information about a time off policy including accrual rates, employee assignments, and policy configuration." }, { "slug": "GUSTO_GET_TIME_TRACKING_TIME_SHEET", "name": "Get time tracking time sheet", "description": "Tool to fetch a time sheet by UUID. Time sheets represent the time worked by an employee or contractor for a given time range with hours classified by pay classification (regular, overtime, or double overtime). Use when you need detailed information about a specific time sheet." }, { "slug": "GUSTO_GET_TOKEN_INFO", "name": "Get token info", "description": "Tool to retrieve scope and resource information associated with the current access token. Use when you need to verify token permissions or identify the authenticated user or company." }, { "slug": "GUSTO_GET_WORK_ADDRESS", "name": "Get Work Address", "description": "Tool to retrieve an employee work address by UUID. Use when you need to get the work location details for an employee, including the address, effective date, and active status." }, { "slug": "GUSTO_INVITE_SIGNATORY", "name": "Invite Signatory", "description": "Tool to invite a signatory with minimal information. Use when you need to create a signatory who can be invited to provide more information and complete identity verification to sign documents." }, { "slug": "GUSTO_LIST_ACH_TRANSACTIONS", "name": "List ACH Transactions", "description": "Tool to retrieve all ACH transactions for a company. Use when you need to view payment transactions, track payment statuses, or analyze financial movements for payroll and contractor payments." }, { "slug": "GUSTO_LIST_ATTACHMENTS", "name": "List Company Attachments", "description": "Tool to retrieve a list of all attachments uploaded by a company. Use when you need to view or audit company documents and files. Requires the scope company_attachments:read." }, { "slug": "GUSTO_LIST_BENEFITS", "name": "List Benefits", "description": "Tool to retrieve all benefits supported by Gusto. Use when you need to discover available benefit types, their tax considerations, or determine which benefits can be created for companies." }, { "slug": "GUSTO_LIST_BENEFITS_REQUIREMENTS", "name": "List Benefits Requirements", "description": "Tool to retrieve field requirements for a specific benefit type. Use when you need to understand what fields are required, editable, or have specific constraints for enrolling employees in benefits." }, { "slug": "GUSTO_LIST_COMPANIE_CUSTOM_FIELDS", "name": "List Company Custom Fields", "description": "Tool to retrieve the custom fields configured for a company. Use when you need to know the schema of custom fields at the company level." }, { "slug": "GUSTO_LIST_COMPANIES_TIME_OFF_REQUESTS", "name": "List Companies Time Off Requests", "description": "Tool to retrieve all time off requests for a company in Gusto. Use when you need to view pending, approved, denied, or cancelled time off requests submitted by employees." }, { "slug": "GUSTO_LIST_COMPANY_BANK_ACCOUNTS", "name": "List Company Bank Accounts", "description": "Tool to retrieve all bank accounts for a specific company. Currently, Gusto only supports a single default bank account per company. Use when you need to view company banking details for payroll processing." }, { "slug": "GUSTO_LIST_COMPANY_BENEFITS", "name": "List Company Benefits", "description": "Tool to retrieve all benefits offered by a company. Use when you need to list available company benefits, check benefit statuses, or see employee enrollment information. Company benefits represent the benefits that a company offers to employees and can be filtered by active status or benefit type." }, { "slug": "GUSTO_LIST_COMPANY_BENEFITS_CONTRIBUTION_EXCLUSIONS", "name": "List Company Benefits Contribution Exclusions", "description": "Tool to retrieve all contributions for a given company benefit and whether they are excluded or not. Use when you need to check which contribution types are excluded from a specific benefit. Currently only works for 401-k and Roth 401-k benefit types." }, { "slug": "GUSTO_LIST_COMPANY_BENEFITS_EMPLOYEE_BENEFITS", "name": "List Company Benefits Employee Benefits", "description": "Tool to retrieve all employee benefits for a specific company benefit. Use when you need to see which employees are enrolled in a particular company benefit and their enrollment details. Returns employee-specific benefit information including contribution amounts, deduction percentages, and coverage details." }, { "slug": "GUSTO_LIST_COMPANY_FORMS", "name": "List Company Forms", "description": "Tool to get a list of all company's forms. Use when you need to retrieve all forms associated with a specific company, including tax forms and other company documents." }, { "slug": "GUSTO_LIST_CONTRACTOR_DOCUMENTS", "name": "List Contractor Documents", "description": "Tool to get all documents for a specific contractor in Gusto. Use when you need to retrieve contractor documents including tax forms, agreements, and other signed or unsigned documents with their details and status." }, { "slug": "GUSTO_LIST_CONTRACTOR_FORMS", "name": "List Contractor Forms", "description": "Tool to get a list of all contractor's forms. Use when you need to retrieve all forms associated with a specific contractor, including tax forms and other contractor documents." }, { "slug": "GUSTO_LIST_CONTRACTOR_ONBOARDING_STATUS", "name": "List contractor onboarding status", "description": "Tool to retrieve a contractor's onboarding status from Gusto. Use when you need to check contractor onboarding progress and view completion status of required onboarding steps." }, { "slug": "GUSTO_LIST_CONTRACTOR_PAYMENT_DETAILS", "name": "List Contractor Payment Details", "description": "Tool to get payment details for contractors in a company, including their payment methods and bank account details for direct deposit. Use when you need to retrieve contractor payment information such as bank routing numbers, account details, or payment split configurations." }, { "slug": "GUSTO_LIST_CONTRACTOR_PAYMENT_METHOD", "name": "List Contractor Payment Method", "description": "Tool to fetch a contractor's payment method configuration. Use when you need to retrieve how contractor payments are split across bank accounts or if they are paid by check." }, { "slug": "GUSTO_LIST_CONTRACTORS", "name": "List Contractors", "description": "Tool to get all contractors for a company including individuals and businesses. Use when you need to retrieve contractor information, filter by onboarding or termination status, or search for specific contractors by name." }, { "slug": "GUSTO_LIST_EMPLOYEE_CUSTOM_FIELDS", "name": "List Employee Custom Fields", "description": "Tool to retrieve the custom fields configured for an employee. Use when you need to get the custom field values for a specific employee." }, { "slug": "GUSTO_LIST_EMPLOYEE_FORMS", "name": "List Employee Forms", "description": "Tool to get a list of all employee's forms. Use when you need to retrieve all forms associated with a specific employee, including tax forms and other employee documents." }, { "slug": "GUSTO_LIST_EMPLOYEE_HOME_ADDRESSES", "name": "List Employee Home Addresses", "description": "Tool to get an employee's home addresses. The home address is used to determine certain tax information and supports effective dating and courtesy withholding. Use when you need to retrieve address information for tax purposes or employee records." }, { "slug": "GUSTO_LIST_EMPLOYEE_ONBOARDING_STATUS", "name": "List employee onboarding status", "description": "Tool to retrieve an employee's onboarding status from Gusto. Use when you need to check the onboarding progress and completion status of required steps for a specific employee." }, { "slug": "GUSTO_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to get all employees for a given company including onboarding, active, and terminated employees. Use when you need to retrieve employee information for a specific company." }, { "slug": "GUSTO_LIST_EMPLOYEE_WORK_ADDRESSES", "name": "List Employee Work Addresses", "description": "Tool to get all work addresses for a specific employee. Use when you need to retrieve address information for all work locations associated with an employee, including historical and active addresses." }, { "slug": "GUSTO_LIST_EMPLOYMENT_HISTORY", "name": "List Employment History", "description": "Tool to retrieve employment history for a given employee, including terminations and rehires. Use when you need to view the complete work history for a specific employee." }, { "slug": "GUSTO_LIST_GARNISHMENTS_CHILD_SUPPORT", "name": "List Child Support Agencies", "description": "Tool to retrieve child support agency data including FIPS codes, payment requirements, and required attributes for each state. Use when you need to lookup agency-specific requirements before creating a child support garnishment." }, { "slug": "GUSTO_LIST_INFORMATION_REQUESTS", "name": "List Information Requests", "description": "Tool to fetch all information requests for a company in Gusto. Use when you need to retrieve pending, under review, or approved information requests that may be blocking payroll." }, { "slug": "GUSTO_LIST_JOBS_COMPENSATIONS", "name": "List job compensations", "description": "Tool to retrieve all compensations for a specific job in Gusto. Use when you need information on how much is paid out for a job. Jobs may have many compensations, but only one that is active. By default returns only the current compensation." }, { "slug": "GUSTO_LIST_MIGRATION_READINESS", "name": "List migration readiness", "description": "Tool to check if a Gusto company is ready to be migrated to embedded payroll. Returns blockers and warnings for migration. Use this before attempting to migrate a company." }, { "slug": "GUSTO_LIST_MINIMUM_WAGES", "name": "List Minimum Wages", "description": "Tool to get minimum wages for a specific location. Use when you need to retrieve minimum wage information for a location, optionally filtered by effective date." }, { "slug": "GUSTO_LIST_NOTIFICATIONS", "name": "List Notifications", "description": "Tool to retrieve all notifications relevant for a company. Returns notifications that can be filtered by status (open, expired, resolved). Use when you need to check pending actions, critical alerts, or payroll blockers for a company." }, { "slug": "GUSTO_LIST_PAID_HOLIDAYS", "name": "List Paid Holidays", "description": "Tool to retrieve a company's paid holidays from Gusto. Use when you need to preview the paid holidays for a company based on their holiday pay policy." }, { "slug": "GUSTO_LIST_PAYMENT_DETAILS", "name": "List Employee Payment Details", "description": "Tool to fetch payment details for employees in a company including payment methods and bank account details. Use when you need to retrieve employee payment information such as bank routing numbers, account details, or payment split configurations." }, { "slug": "GUSTO_LIST_PAY_PERIODS", "name": "List Pay Periods", "description": "Tool to retrieve pay periods for a company. Pay periods are the foundation of payroll and are used for compensation, time & attendance, taxes, and expense reports. Use when you need to get pay period information for submitting payroll data." }, { "slug": "GUSTO_LIST_PAYROLL_BLOCKERS", "name": "List Payroll Blockers", "description": "Tool to retrieve all payroll blockers for a company. Returns reasons that prevent the company from running payrolls, or an empty list if no blockers exist. Use when you need to check if a company can run payroll or identify issues that need to be resolved before payroll processing." }, { "slug": "GUSTO_LIST_PAYROLL_REVERSALS", "name": "List Payroll Reversals", "description": "Tool to retrieve all approved payroll reversals for a company. Use when you need to view reversals that have been applied to previous payroll runs." }, { "slug": "GUSTO_LIST_PAY_SCHEDULES", "name": "List pay schedules", "description": "Tool to retrieve all pay schedules for a company. Use when you need to get information about when employees work and when they should be paid for a specific company." }, { "slug": "GUSTO_LIST_PAY_SCHEDULES_ASSIGNMENTS", "name": "List pay schedules assignments", "description": "Tool to retrieve the current pay schedule assignment for a company, including pay schedules and employee/department mappings. Use when you need to understand how pay schedules are assigned to employees and departments in a company." }, { "slug": "GUSTO_LIST_PAY_SCHEDULES_PREVIEW", "name": "List pay schedules preview", "description": "Tool to preview pay schedule dates with specified parameters for the next 18 months. Use when you need to see upcoming pay dates, pay periods, and bank holidays for a proposed pay schedule configuration before creating it." }, { "slug": "GUSTO_LIST_PAY_STUBS", "name": "List Pay Stubs", "description": "Tool to get an employee's pay stubs including payment details and amounts. Use when you need to retrieve pay stub information for a specific employee." }, { "slug": "GUSTO_LIST_RECOVERY_CASES", "name": "List Recovery Cases", "description": "Tool to fetch all recovery cases for a company. Use when you need to retrieve recovery case information including status, outstanding amounts, and associated payroll or contractor payment details. Recovery cases track failed ACH transactions that require recovery." }, { "slug": "GUSTO_LIST_SIGNATORIES", "name": "List Signatories", "description": "Tool to retrieve all company signatories. Use when you need to get signatory information for signing company forms and documents. Currently only a single signatory per company is supported." }, { "slug": "GUSTO_LIST_TAX_REQUIREMENTS", "name": "List Tax Requirements", "description": "Tool to retrieve all tax requirement states for a company. Use when you need to check which states have tax requirements and whether the company has completed setup for each state during onboarding." }, { "slug": "GUSTO_LIST_TIME_OFF_ACTIVITIES", "name": "List Time Off Activities", "description": "Tool to get employee time off activities for a specific time off type. Use when you need to view an employee's time off balance changes, accruals, and usage history." }, { "slug": "GUSTO_LIST_TIME_OFF_POLICIES", "name": "List Time Off Policies", "description": "Tool to retrieve all time off policies for a company. Use when you need to list available time off policies, check policy configurations, or see which employees are assigned to each policy." }, { "slug": "GUSTO_LIST_TIME_TRACKING_TIME_SHEETS", "name": "List Time Tracking Time Sheets", "description": "Tool to fetch all company's time sheets representing time worked by employees or contractors. Use when you need to retrieve time tracking data including regular, overtime, and double overtime hours for a given time range." }, { "slug": "GUSTO_LIST_UNPROCESSED_TERMINATION_PAY_PERIODS", "name": "List unprocessed termination pay periods", "description": "Tool to retrieve unprocessed termination pay periods for a company. Use when you need to view dismissal payrolls for past and future terminated employees." }, { "slug": "GUSTO_LIST_WIRE_IN_REQUESTS", "name": "List Wire In Requests", "description": "Tool to retrieve all Wire In Requests for a company. Use when you need to view wire transfer requests, track payment statuses, or manage incoming wire transfers for payroll and contractor payments." }, { "slug": "GUSTO_LIST_YTD_BENEFIT_AMOUNTS_FROM_DIFFERENT_COMPANY", "name": "List YTD Benefit Amounts From Different Company", "description": "Tool to retrieve year-to-date benefit amounts contributed at a different company for an employee. Returns benefit amounts for the requested tax year (defaults to current year if not specified). This endpoint only supports retrieving outside contributions for 401(k) benefits." }, { "slug": "GUSTO_REMOVE_HOLIDAY_PAY_POLICY_EMPLOYEES", "name": "Remove Employees from Holiday Pay Policy", "description": "Tool to remove employees from a company's holiday pay policy in Gusto. Use when you need to exclude specific employees from the holiday pay policy scope." }, { "slug": "GUSTO_REMOVE_PEOPLE_FROM_DEPARTMENT", "name": "Remove People From Department", "description": "Tool to remove employees and contractors from a department in Gusto. Use when you need to unassign people from a department." }, { "slug": "GUSTO_REMOVE_TIME_OFF_POLICY_EMPLOYEES", "name": "Remove Employees from Time Off Policy", "description": "Tool to remove employees from a time off policy in Gusto. Use when you need to exclude specific employees from a vacation or sick leave policy scope." }, { "slug": "GUSTO_RETRIEVE_TERMS_OF_SERVICE_STATUS", "name": "Retrieve Terms of Service Status", "description": "Tool to retrieve the user acceptance status of Gusto Embedded Payroll's Terms of Service. Use when you need to check if a specific user has accepted the latest terms of service for a company." }, { "slug": "GUSTO_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update a company in Gusto. Use when you need to change company settings, particularly the contractor_only flag to enable W-2 employee support." }, { "slug": "GUSTO_UPDATE_COMPANY_BENEFIT_CONTRIBUTION_EXCLUSIONS", "name": "Update Company Benefit Contribution Exclusions", "description": "Tool to update contribution exclusions for a company benefit in Gusto. Use when you need to specify which contribution types should be excluded from a specific benefit. Currently only works for 401-k and Roth 401-k benefit types." }, { "slug": "GUSTO_UPDATE_COMPANY_BENEFITS", "name": "Update Company Benefit", "description": "Tool to update an existing company benefit in Gusto. Use when you need to modify benefit details such as description, active status, or other attributes. Note that company benefits can be deactivated only when no employees are enrolled." }, { "slug": "GUSTO_UPDATE_CONTRACTOR_ADDRESS", "name": "Update Contractor Address", "description": "Tool to create or update a contractor's address in Gusto. Use when you need to set or modify the home address information for an existing contractor. Requires the contractor's UUID and the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_CONTRACTOR_PAYMENT_METHOD", "name": "Update Contractor Payment Method", "description": "Tool to update a contractor's payment method in Gusto. Use when you need to change how a contractor receives payments (Check or Direct Deposit). For Direct Deposit, you'll need to configure bank account splits separately." }, { "slug": "GUSTO_UPDATE_DEPARTMENT", "name": "Update Department", "description": "Tool to update a department in Gusto. Use when you need to modify department details like the title. Requires the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_EARNING_TYPE", "name": "Update Earning Type", "description": "Tool to update an earning type in Gusto. Use when you need to modify the name of a custom earning type for a company." }, { "slug": "GUSTO_UPDATE_EMPLOYEE", "name": "Update Employee", "description": "Tool to update an employee in Gusto. Use when you need to modify employee information such as name, email, SSN, or shareholder status. Requires the current version field for idempotency." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_BANK_ACCOUNT", "name": "Update Employee Bank Account", "description": "Tool to update an employee bank account in Gusto. Use when you need to modify existing employee bank account details." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_BENEFIT", "name": "Update Employee Benefit", "description": "Tool to update an individual employee benefit by its UUID in Gusto. Use when you need to modify benefit details like deduction amounts, company contributions, coverage, or dates for a specific employee's benefit enrollment. Requires the benefit UUID and version for optimistic locking." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_BENEFITS", "name": "Update Employee Benefits", "description": "Tool to bulk update or create employee benefits for a company benefit in Gusto. Use when you need to enroll employees in a benefit plan or modify existing enrollments." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_ONBOARDING_STATUS", "name": "Update Employee Onboarding Status", "description": "Tool to update the onboarding status of an employee in Gusto. Use when you need to change an employee's progress through the onboarding process. Note that invalid status transitions will return a 422 error." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_PAYMENT_METHOD", "name": "Update Employee Payment Method", "description": "Tool to update an employee's payment method in Gusto. Use when you need to change how an employee receives payments (Check or Direct Deposit). For Direct Deposit, you must also specify split_by and splits to configure bank account distribution." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_REHIRE", "name": "Update Employee Rehire", "description": "Tool to update an employee rehire in Gusto. Use when you need to modify the details of a pending rehire for a terminated employee." }, { "slug": "GUSTO_UPDATE_EMPLOYEE_TERMINATION", "name": "Update Employee Termination", "description": "Tool to update an existing employee termination in Gusto. Use when you need to modify the effective date or payroll settings for a scheduled termination. Requires the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_FEDERAL_TAX_DETAILS", "name": "Update Federal Tax Details", "description": "Tool to update federal tax details for a company in Gusto. Use when you need to update attributes relevant for federal taxes such as EIN, filing form, legal name, tax payer type, or S-Corporation election." }, { "slug": "GUSTO_UPDATE_FEDERAL_TAXES", "name": "Update Employee Federal Taxes", "description": "Tool to update federal tax information for an employee in Gusto. Use when you need to update W-4 form data including filing status, withholdings, and allowances. The response structure varies based on whether pre-2020 or 2020+ W-4 data is being updated." }, { "slug": "GUSTO_UPDATE_GARNISHMENT", "name": "Update Garnishment", "description": "Tool to update an existing garnishment in Gusto. Use when you need to modify garnishment details such as amount, description, or child support information. Requires the garnishment UUID and the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_HISTORICAL_EMPLOYEE", "name": "Update Historical Employee", "description": "Tool to update a historical employee in Gusto. Historical employees are employees that were previously dismissed from the company in the current year. Use when you need to update information for a terminated employee." }, { "slug": "GUSTO_UPDATE_HOLIDAY_PAY_POLICY", "name": "Update Holiday Pay Policy", "description": "Tool to update a company's holiday pay policy in Gusto. Use when you need to configure which federal holidays are included in the company's holiday pay policy." }, { "slug": "GUSTO_UPDATE_HOME_ADDRESS", "name": "Update Home Address", "description": "Tool to update an employee's home address in Gusto. Use when you need to change an employee's residential address details." }, { "slug": "GUSTO_UPDATE_INDUSTRY_SELECTION", "name": "Update Company Industry Selection", "description": "Tool to update the industry classification for a company by providing a NAICS code. Use when you need to set or change a company's industry classification in Gusto's payroll system." }, { "slug": "GUSTO_UPDATE_JOBS", "name": "Update Jobs", "description": "Tool to update a job in Gusto. Use when you need to modify job details such as title, hire date, workers' compensation settings, or shareholder status. Requires the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_LOCATION", "name": "Update location", "description": "Tool to update an existing location in Gusto. Use when you need to modify address details, phone number, or filing/mailing address status for a location. Requires the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_ONBOARDING_DOCUMENTS_CONFIG", "name": "Update Onboarding Documents Config", "description": "Tool to update an employee's onboarding documents configuration in Gusto. Use when you need to indicate whether to include Form I-9 during employee onboarding." }, { "slug": "GUSTO_UPDATE_PAY_SCHEDULE", "name": "Update pay schedule", "description": "Tool to update a pay schedule in Gusto. Use when you need to modify pay schedule settings such as custom name, anchor dates, frequency, or auto-payroll configuration." }, { "slug": "GUSTO_UPDATE_RECURRING_REIMBURSEMENT", "name": "Update recurring reimbursement", "description": "Tool to update an existing recurring reimbursement in Gusto. Use when you need to modify the amount or description of a recurring reimbursement. Requires the current version for optimistic locking." }, { "slug": "GUSTO_UPDATE_SALARY_ESTIMATE", "name": "Update Salary Estimate", "description": "Tool to update a salary estimate for an S-Corp owner in Gusto. Use when you need to modify occupation details, location, or business revenue for salary calculations. Cannot update if the estimate has already been finalized." }, { "slug": "GUSTO_UPDATE_SECTION603_HIGH_EARNER_STATUS", "name": "Update Section 603 High Earner Status", "description": "Tool to update an employee's Section 603 high earner status for a specific year. Use when you need to set or modify whether an employee is classified as a high earner under Section 603 of the SECURE 2.0 Act, which affects their retirement contribution tax treatment." }, { "slug": "GUSTO_UPDATE_STATE_TAXES", "name": "Update State Taxes", "description": "Tool to update state tax attributes for an employee in Gusto. Use when you need to update state-specific tax information such as withholding exemptions or additional withholding amounts. Answers must be supplied in effective-dated format with valid_from='2010-01-01' and valid_up_to=null." }, { "slug": "GUSTO_UPDATE_STATE_TAX_REQUIREMENTS", "name": "Update State Tax Requirements", "description": "Tool to update state tax requirements for a company in Gusto. Use when you need to update state-specific tax settings such as tax rates, unemployment insurance rates, or other state tax compliance requirements." }, { "slug": "GUSTO_UPDATE_TIME_OFF_POLICIES_BALANCE", "name": "Update time off policy balance", "description": "Tool to update time off hours balances for employees under a time off policy. Use when you need to set or adjust employee vacation or sick leave balances for a specific policy. Requires the time_off_policies:write scope." }, { "slug": "GUSTO_UPDATE_TIME_OFF_POLICY", "name": "Update Time Off Policy", "description": "Tool to update a time off policy in Gusto. Use when you need to modify vacation or sick leave policy settings such as accrual rates, limits, carryover rules, or termination payout configuration. Requires the policy version for optimistic locking." }, { "slug": "GUSTO_UPDATE_TIME_TRACKING_TIME_SHEET", "name": "Update Time Tracking Time Sheet", "description": "Tool to update a time tracking time sheet in Gusto. Use when you need to modify shift times, time zone, or hours worked with their pay classifications for an employee's time sheet." }, { "slug": "GUSTO_UPDATE_WORK_ADDRESS", "name": "Update Work Address", "description": "Tool to update an employee work address in Gusto. Use when you need to change an employee's work location or effective date. Requires the version field for optimistic locking." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "gusto_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "Gusto API base URL", "required": true, "default": "https://api.gusto.com" }, { "name": "generic_id", "displayName": "API Version", "type": "string", "description": "Gusto API version (e.g., 2024-04-01)", "required": true, "default": "2024-04-01" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "companies:read,employees:read,payrolls:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "habitica", "name": "Habitica", "logo": "https://logos.composio.dev/api/habitica", "description": "Habitica is an open-source task management application that gamifies productivity by turning tasks into role-playing game elements.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 70, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HABITICA_ADD_CHALLENGE_TASK", "name": "Add Task to Challenge", "description": "Tool to add a new task to a specified challenge. Use when you need to programmatically create a challenge task after the challenge is set up and you have its ID." }, { "slug": "HABITICA_ADD_PUSH_DEVICE", "name": "Add Push Device", "description": "Tool to register a push notification device for the authenticated user. Use when you need to enable push notifications for mobile devices or UnifiedPush clients." }, { "slug": "HABITICA_ADD_TAG_TO_TASK", "name": "Add Tag to Task", "description": "Tool to add a tag to a task. Use when you need to categorize or label a task with an existing tag." }, { "slug": "HABITICA_CLONE_CHALLENGE", "name": "Clone Challenge", "description": "Tool to clone an existing challenge. Use when you need to duplicate a challenge to a different group with a new name." }, { "slug": "HABITICA_CREATE_CHALLENGE", "name": "Create Challenge", "description": "Tool to create a new challenge. Use when you need to start a challenge in a specific group with title, summary, and optional tasks." }, { "slug": "HABITICA_CREATE_GROUP", "name": "Create Habitica Party", "description": "Create a new Habitica party for collaborative gameplay. Use this tool to create a party where users can: - Participate in quests together - Chat with party members - Share achievements and progress **Important Notes:** - A user can only be in one party at a time. If already in a party, they must leave first. - Guilds are no longer supported by Habitica (removed August 2023). Only 'party' type works. - The authenticated user automatically becomes the party leader." }, { "slug": "HABITICA_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag. Use after determining the desired tag name." }, { "slug": "HABITICA_CREATE_TASK", "name": "Create Task", "description": "Create a new task in Habitica. Supports four task types: - 'habit': Recurring positive/negative actions (use up/down to enable +/- buttons) - 'daily': Scheduled tasks that repeat on a schedule (configure with frequency, repeat, startDate) - 'todo': One-time tasks with optional due date (use date field) - 'reward': Custom rewards that cost gold (set value for the gold cost) Required fields: text (task title), type (habit/daily/todo/reward). Optional: notes, priority (0.1=Trivial, 1=Easy, 1.5=Medium, 2=Hard), tags, checklist." }, { "slug": "HABITICA_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for taskActivity events. Use when you need real-time notifications of task creation, updates, deletion, or scoring." }, { "slug": "HABITICA_DELETE_CHALLENGE", "name": "Delete Habitica Challenge", "description": "Permanently delete a Habitica challenge. Only the challenge leader (creator) or an admin can delete a challenge. This action is irreversible - once deleted, the challenge and all associated tasks are permanently removed. Use HABITICA_GET_USER_CHALLENGES to find challenge IDs you own." }, { "slug": "HABITICA_DELETE_GROUP", "name": "Leave or Delete Habitica Group", "description": "Leave or delete a Habitica group (party or guild). This tool allows you to: 1. Leave a party: Pass 'party' as groupId or the party's UUID to leave your current party. 2. Leave a guild: Pass the guild's UUID to leave the guild. 3. Delete a guild: If you are the leader and there are no other members, passing the guild's UUID will delete it (DELETE endpoint is tried if leave fails). Note: The Habitica API endpoint used is POST /groups/:groupId/leave. Only if that fails (e.g., you're the leader trying to delete an empty guild), the DELETE /groups/:groupId endpoint is attempted." }, { "slug": "HABITICA_DELETE_GROUP_CHAT_MESSAGE", "name": "Delete Group Chat Message", "description": "Tool to delete a chat message from a Habitica group (party, guild, or Tavern). Use when you need to remove a specific chat message. Note that only the message author or group moderators can delete messages." }, { "slug": "HABITICA_DELETE_TAG", "name": "Delete Habitica Tag", "description": "Tool to delete a tag for the authenticated user. Use when you need to remove an obsolete tag after confirming it’s no longer applied to any tasks." }, { "slug": "HABITICA_DELETE_TASK", "name": "Delete Task", "description": "Permanently deletes a user's task (habit, daily, todo, or reward) by its ID. The task cannot be recovered after deletion. Use get_tasks to list tasks and their IDs first." }, { "slug": "HABITICA_DELETE_TASK_CHECKLIST_ITEM", "name": "Delete Task Checklist Item", "description": "Tool to delete a checklist item from a task. Use when you need to remove a specific checklist item from a todo or daily task." }, { "slug": "HABITICA_DELETE_USER_MESSAGE_BY_ID", "name": "Delete User Message", "description": "Tool to delete a message from the authenticated user's inbox by its ID. Use when you need to remove a specific message from the user's Habitica inbox." }, { "slug": "HABITICA_DELETE_USER_PUSH_DEVICE", "name": "Delete User Push Device", "description": "Tool to remove a push device registration from the authenticated user's account. Use when you need to unregister a device that should no longer receive push notifications." }, { "slug": "HABITICA_EQUIP_ITEM", "name": "Equip Item", "description": "Tool to equip or unequip gear, pets, mounts, or costume items in Habitica. Use when you need to change the user's equipped items. Equipping an already-equipped item will unequip it." }, { "slug": "HABITICA_EXPORT_CHALLENGE_CSV", "name": "Export Challenge to CSV", "description": "Tool to export a Habitica challenge to CSV format. Use when you need to download challenge data as a CSV file. The CSV contains all challenge tasks and participant information." }, { "slug": "HABITICA_GET_CHALLENGE", "name": "Get Challenge", "description": "Tool to retrieve details of a specific challenge. Use when you have the challenge ID and need its full data." }, { "slug": "HABITICA_GET_CHALLENGES", "name": "Get Group Challenges", "description": "Tool to retrieve challenges available in a specific group (guild, party, or tavern)." }, { "slug": "HABITICA_GET_CHALLENGE_TASK", "name": "Get Task by ID", "description": "Retrieve a task by its unique ID. Works for any Habitica task type (habit, daily, todo, reward) whether it belongs to a challenge or is a personal user task. Returns full task details including type-specific properties like completion status, streaks, and scheduling information." }, { "slug": "HABITICA_GET_CHALLENGE_TASKS", "name": "Get Challenge Tasks", "description": "Tool to get all tasks for a specified challenge. Use when you have a challenge ID and need to list its defined tasks, including challenge metadata per task." }, { "slug": "HABITICA_GET_CONTENT", "name": "Get Content", "description": "Retrieves all Habitica game content definitions in a single request. Returns ~9MB of static game data including achievements, quests, gear, pets, mounts, eggs, hatching potions, food, backgrounds, spells, and more. Use cases: - Loading full game content to cache for local lookups - Getting all available items, quests, or equipment for reference - Building item pickers or content browsers Note: For specific content types, prefer get_content_by_type to reduce payload size. This endpoint requires no authentication but returns localized English text by default." }, { "slug": "HABITICA_GET_CONTENT_BY_TYPE", "name": "Get Content By Type", "description": "Retrieves Habitica game content data filtered by a specific category type. Use this tool to fetch game definitions like quest details, equipment stats, pet/mount info, backgrounds, spells, or other static game content. Useful when you need specific category data without fetching all content at once." }, { "slug": "HABITICA_GET_EXPORT_HISTORY_CSV", "name": "Get Export History CSV", "description": "Tool to export user tasks history in CSV format. Returns CSV data with task completions and updates over time." }, { "slug": "HABITICA_GET_EXPORT_INBOX_HTML", "name": "Get Export Inbox HTML", "description": "Tool to export inbox data in HTML format from Habitica. Use when you need to retrieve the user's private messages and inbox content as an HTML document." }, { "slug": "HABITICA_GET_EXPORT_USERDATA_JSON", "name": "Export User Data JSON", "description": "Exports the authenticated user's complete data in JSON format. Use when you need a full backup or comprehensive snapshot of all user data. Returns the raw internal data structure with all fields and nested objects." }, { "slug": "HABITICA_GET_GROUP", "name": "Get Group", "description": "Retrieves detailed information about a Habitica group (guild or party). Use 'party' as groupId to get the user's current party, or provide a specific group UUID obtained from HABITICA_GET_GROUPS." }, { "slug": "HABITICA_GET_GROUP_MEMBERS", "name": "Get Group Members", "description": "Retrieve members of a Habitica group (guild or party). Supports pagination via lastId parameter and optional search filtering. Use 'party' as groupId to get members of the current user's party." }, { "slug": "HABITICA_GET_GROUPS", "name": "Get Habitica Groups", "description": "Retrieves Habitica groups based on type. Use 'guilds' to get all guilds the authenticated user belongs to, 'party' to get the user's current party, or 'tavern' to get the global Tavern (the main public chat)." }, { "slug": "HABITICA_GET_GROUPS_HABITRPG", "name": "Get Habitica Tavern Group", "description": "Tool to retrieve the Habitica Tavern (habitrpg) group details. The Tavern is the main public group where all Habitica users can chat and participate in community discussions." }, { "slug": "HABITICA_GET_GROUPS_PARTY_CHAT", "name": "Get Party Chat Messages", "description": "Tool to retrieve party chat messages from Habitica. Use when you need to fetch recent chat messages from the authenticated user's party." }, { "slug": "HABITICA_GET_MODELS_MODEL_PATHS", "name": "Get Model Paths", "description": "Retrieves all available field paths and their data types for a specified Habitica model. Use this to discover the structure and available fields for user, group, challenge, tag, or task models. Helpful for understanding what fields can be queried or updated." }, { "slug": "HABITICA_GET_NEWS", "name": "Get News", "description": "Tool to retrieve the latest Bailey announcement from Habitica. Use when you need to check current news, events, or updates posted by Bailey." }, { "slug": "HABITICA_GET_PARTY", "name": "Get Party", "description": "Retrieves the authenticated user's party details from Habitica. Returns information about the user's current party including: - Party name, description, and member count - Party leader information - Current quest status and progress - Recent chat messages - Leader-only permissions Note: Returns an error if the user is not currently in a party. No parameters required - automatically fetches the party for the authenticated user." }, { "slug": "HABITICA_GET_SHOPS_MARKET_GEAR", "name": "Get Shops Market Gear", "description": "Tool to retrieve the available gear for purchase in the market shop. Use when you need to check what equipment is available for each character class. Returns gear organized by class: healer, wizard, rogue, and warrior." }, { "slug": "HABITICA_GET_SHOPS_TIME_TRAVELERS", "name": "Get Time Travelers Shop", "description": "Tool to retrieve available items in the Time Travelers shop. Use when you need to see what quests, backgrounds, pets, or mounts can be purchased with hourglasses." }, { "slug": "HABITICA_GET_STATUS", "name": "Get Habitica API Status", "description": "Tool to check Habitica API server status. Use when you need to verify if the Habitica service is operational before making other API calls." }, { "slug": "HABITICA_GET_TAGS", "name": "Get Tags", "description": "Retrieve all tags for the authenticated Habitica user. Tags are labels that can be attached to tasks for organization. Returns both user-created tags and challenge-related tags. Use this to get tag IDs for filtering tasks or assigning tags to new tasks." }, { "slug": "HABITICA_GET_TASKS", "name": "Get Tasks", "description": "Tool to retrieve all tasks for the authenticated user. Use when you need the user's current tasks list after authenticating." }, { "slug": "HABITICA_GET_USER_CHALLENGES", "name": "Get User Challenges", "description": "Tool to retrieve challenges the authenticated user participates in. Use when you need a paginated list of user challenges." }, { "slug": "HABITICA_GET_USER_PROFILE", "name": "Get User Profile", "description": "Retrieves the authenticated user's complete Habitica profile. Returns comprehensive user data including: - Stats: HP, MP, level, experience, gold, and character class - Inventory: gear, pets, mounts, eggs, potions, and quest items - Achievements: unlocked achievements and completed quests - Party: current party membership and quest progress - Preferences: language, timezone, notification settings - Tasks: order of habits, dailies, todos, and rewards - Tags: user-created tags for task organization This is a read-only endpoint that requires no parameters. The user is identified automatically via the API credentials." }, { "slug": "HABITICA_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Retrieves all webhooks configured for the authenticated Habitica user. Returns a list of webhooks including their URLs, types, enabled status, and task activity options. Use this to check existing webhook configurations, monitor webhook health via failure counts, or get webhook IDs for updates/deletions." }, { "slug": "HABITICA_GET_WORLD_STATE", "name": "Get World State", "description": "Retrieves the current state of the Habitica game world including active events, world boss status, and seasonal NPC visual themes. Use when checking for active world events, monitoring world boss progress, or determining current seasonal themes." }, { "slug": "HABITICA_INVITE_TO_GROUP", "name": "Invite To Group", "description": "Tool to invite users to a specific group. Use when you need to send invitations by user UUID, email, or username." }, { "slug": "HABITICA_INVITE_TO_QUEST", "name": "Invite To Quest", "description": "Tool to invite party members to a quest. Use when you want to start a quest with a specific quest key in a group. The user must own the quest scroll to invite others." }, { "slug": "HABITICA_JOIN_CHALLENGE", "name": "Join Challenge", "description": "Tool to join a challenge. Use after confirming the challenge ID to participate in a specific challenge." }, { "slug": "HABITICA_LEAVE_CHALLENGE", "name": "Leave Challenge", "description": "Tool to leave a Habitica challenge. Use when you need to remove yourself from a specific challenge and decide whether to keep or remove its tasks." }, { "slug": "HABITICA_LOCAL_LOGIN", "name": "Local Login", "description": "Tool to authenticate a user via local credentials. Use when needing an API token for subsequent Habitica requests." }, { "slug": "HABITICA_LOCAL_REGISTER", "name": "Local User Registration", "description": "Tool to register a new Habitica user via email and password. Use when creating a fresh account before authentication." }, { "slug": "HABITICA_MARK_GROUP_CHAT_SEEN", "name": "Mark Group Chat Seen", "description": "Tool to mark all chat messages as read/seen for a specific group. Use when you need to clear unread message notifications in a group chat. Requires a valid group ID ('party' for user's party, 'habitrpg' for Tavern)." }, { "slug": "HABITICA_MARK_NOTIFICATION_SEEN", "name": "Mark Notification Seen", "description": "Tool to mark a single notification as seen in Habitica. Use this when you need to mark one specific notification as read after the user has viewed it." }, { "slug": "HABITICA_MARK_NOTIFICATIONS_SEEN", "name": "Mark Notifications Seen", "description": "Marks specific notifications as read/seen in Habitica. Use this after getting notifications to clear unread notification badges. Requires valid notification IDs from the Get Notifications action. Returns updated notification state." }, { "slug": "HABITICA_MOVE_PINNED_ITEM", "name": "Move Pinned Item", "description": "Tool to move a pinned item in the rewards column to a new position. Use when you need to reorder pinned items after sorting them." }, { "slug": "HABITICA_MOVE_TASK_TO_POSITION", "name": "Move Task To Position", "description": "Move a Habitica task to a new position in the task list. Use this when you need to reorder tasks by moving a specific task to the top (position=0), bottom (position=-1), or any specific position. The response returns the updated task order for the task type (habit, daily, todo, or reward) that the moved task belongs to." }, { "slug": "HABITICA_POST_NEWS_TELL_ME_LATER", "name": "Dismiss Bailey Announcement", "description": "Tool to dismiss the latest Bailey announcement in Habitica, allowing it to be read later. Use this when the user wants to clear the current news notification without reading it. The announcement will reappear later." }, { "slug": "HABITICA_POST_USER_RESET", "name": "Reset User Account", "description": "Resets the authenticated user's account to starting state. This permanently deletes all tasks, resets character to level 1, and clears progress while retaining some items and achievements. Use with caution as this action is irreversible." }, { "slug": "HABITICA_READ_CARD", "name": "Read Card", "description": "Tool to mark a card as read in Habitica. Use when a user receives a special card (birthday, greeting, nye, thankyou, or valentine) and wants to acknowledge it. Updates user.flags.cardReceived and returns updated user.items.special." }, { "slug": "HABITICA_REMOVE_FROM_PARTY", "name": "Remove Party Member", "description": "Removes a member from the authenticated user's party. Requirements: - You must be the party leader to remove members - You cannot remove yourself (use Leave Party instead) - The member must be currently in your party Use Get Party Members first to obtain member IDs. This action is typically used to remove inactive members or those who no longer wish to participate." }, { "slug": "HABITICA_SCORE_TASK", "name": "Score Task", "description": "Score a Habitica task to mark it as completed or incomplete. Use this tool to: - Mark a todo as complete ('up') or incomplete ('down') - Check off a daily task ('up') or uncheck it ('down') - Record a positive habit action ('up') or negative habit action ('down') - Redeem a reward (use 'up' direction for rewards) Returns updated user stats including health, mana, experience, gold, and level. Scoring tasks can trigger drops (food, eggs, potions) and quest progress." }, { "slug": "HABITICA_SOCIAL_AUTH", "name": "Social Auth", "description": "Tool to authenticate a user via a social provider. Use after obtaining an OAuth token or code from Facebook, Google, GitHub, or Apple." }, { "slug": "HABITICA_SUBSCRIBE_WEBHOOK", "name": "Subscribe Webhook", "description": "Tool to enable (subscribe) an existing webhook by ID for the authenticated user. This aligns with Habitica's documented API by updating the webhook resource to ensure it is enabled. Usage: obtain the webhook ID (e.g., via Get Webhooks or after creating a webhook) and call this action to set enabled=true." }, { "slug": "HABITICA_UNLINK_ALL_CHALLENGE_TASKS", "name": "Unlink All Challenge Tasks", "description": "Tool to unlink all tasks from a Habitica challenge. Use when you need to disconnect all tasks associated with a challenge and decide whether to keep or remove them." }, { "slug": "HABITICA_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update a Habitica group (party or guild) by modifying its properties. Use when you need to change the name, description, or summary of an existing group. Only the group leader can update group properties." }, { "slug": "HABITICA_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag's name. Use when you need to rename a tag after identifying its ID." }, { "slug": "HABITICA_UPDATE_TASK", "name": "Update Task", "description": "Update an existing task in Habitica. Use this to modify task properties like title, notes, priority, or other attributes. Only include fields you want to update - all body parameters are optional." }, { "slug": "HABITICA_UPDATE_TASK_CHECKLIST_ITEM", "name": "Update Task Checklist Item", "description": "Tool to update a checklist item in a task. Use when you need to modify the text of a specific checklist item in a todo or daily task." }, { "slug": "HABITICA_UPDATE_USER", "name": "Update User", "description": "Update the authenticated user's profile, preferences, flags, and other settings in Habitica. Use dot notation for nested fields (e.g., profile.name, preferences.language). Note: Some paths are protected and cannot be modified (e.g., stats.class will be rejected)." }, { "slug": "HABITICA_VALIDATE_COUPON_CODE", "name": "Validate Coupon Code", "description": "Validate a Habitica coupon code to check if it is valid and active. Use this tool to verify coupon codes before attempting to apply them to a user account. Returns information about the coupon's validity and type (e.g., subscription, gems)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "habitica_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Habitica API Token", "type": "string", "description": "The API token associated with the user, used for API authentication.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Habitica User ID", "type": "string", "description": "The unique identifier for the user, used for API authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "handwrytten", "name": "Handwrytten", "logo": "https://logos.composio.dev/api/handwrytten", "description": "Automate your handwritten correspondence. Send real notes with your message written in pen by robots.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HANDWRYTTEN_ADD_RECIPIENT", "name": "Add Recipient", "description": "Tool to add a recipient address to the user's addressbook in Handwrytten. Use when you need to store a new recipient for sending handwritten cards." }, { "slug": "HANDWRYTTEN_CALCULATE_ORDER_TAXES", "name": "Calculate Order Taxes", "description": "Tool to calculate taxes for Handwrytten basket orders. Use without any parameters for basket orders, or optionally provide order details to calculate taxes for a specific order (experimental)." }, { "slug": "HANDWRYTTEN_CHECK_AUTH", "name": "Check Authentication", "description": "Tool to verify API key authentication validity for Handwrytten. Use when you need to test if the API credentials are valid and properly configured." }, { "slug": "HANDWRYTTEN_CLEAR_BASKET", "name": "Clear Basket", "description": "Tool to clear all items from the shopping basket. Use when you need to empty the basket and remove all pending items before starting a new order or canceling the current selection." }, { "slug": "HANDWRYTTEN_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template for the current user. Use when you need to save a new message template for sending handwritten cards." }, { "slug": "HANDWRYTTEN_CREATE_USER_ADDRESS", "name": "Create User Address", "description": "Tool to create a new user address in Handwrytten. Use when adding a new return address to a user's profile for sending handwritten cards." }, { "slug": "HANDWRYTTEN_DELETE_CUSTOM_IMAGE", "name": "Delete Custom Image", "description": "Tool to delete a custom image/logo from Handwrytten. Use when you need to remove a previously uploaded custom image or logo from your account." }, { "slug": "HANDWRYTTEN_DELETE_RECIPIENT", "name": "Delete Recipient Address", "description": "Tool to delete one or more recipient addresses from user's profile. Use when you need to remove saved recipient addresses. Provide either address_id for single deletion or address_ids for bulk deletion." }, { "slug": "HANDWRYTTEN_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a user's template by its ID. Use when you need to remove a saved template from the user's account." }, { "slug": "HANDWRYTTEN_GET_BASKET_ALL_NEW", "name": "Get Basket (New Method)", "description": "Tool to retrieve the user's basket using the new method. Use when you need to fetch the current state of the shopping basket with all items, billing information, and totals." }, { "slug": "HANDWRYTTEN_GET_BASKET_COUNT", "name": "Get Basket Count", "description": "Tool to retrieve the count of items currently in the basket. Use when you need to check how many items are in the shopping basket before proceeding with checkout or additional operations." }, { "slug": "HANDWRYTTEN_GET_BASKET_ITEM", "name": "Get Basket Item", "description": "Tool to retrieve a basket item by its ID from Handwrytten. Use when you need to get details of a specific basket item." }, { "slug": "HANDWRYTTEN_GET_CARD_DETAILS", "name": "Get Card Details", "description": "Tool to get detailed information about a specific card in the Handwrytten catalog. Use when you need comprehensive details about a card including pricing, dimensions, images, and customization options." }, { "slug": "HANDWRYTTEN_GET_LIST_ADDRESSES", "name": "Get List of Addresses", "description": "Tool to retrieve a list of all addresses associated with the user's account. Use when you need to view or select from saved addresses for sending handwritten cards." }, { "slug": "HANDWRYTTEN_GET_RANDOM_CARDS", "name": "Get Random Cards", "description": "Tool to retrieve random cards from Handwrytten. Use when you need to get a random selection of greeting cards from the Handwrytten catalog." }, { "slug": "HANDWRYTTEN_GET_TEMPLATE_DETAILS", "name": "Get Template Details", "description": "Tool to get detailed information about a card text template in the Handwrytten catalog. Use when you need to view the template message content and details." }, { "slug": "HANDWRYTTEN_GET_USER", "name": "Get Current User Info", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to fetch user profile details, account information, or verify authentication status." }, { "slug": "HANDWRYTTEN_GET_USER_ADDRESS", "name": "Get User Address", "description": "Tool to retrieve the authenticated user's address and billing information. Use when you need to access user profile address details." }, { "slug": "HANDWRYTTEN_LIST_BASKET_ORDERS_GROUPED", "name": "List Basket Orders Grouped", "description": "Tool to list all basket orders grouped by basket. Use when you need to retrieve all items currently in the user's basket or review pending orders." }, { "slug": "HANDWRYTTEN_LIST_BASKETS", "name": "List Past Baskets", "description": "Tool to retrieve a list of user's past baskets. Use when you need to view historical basket information including orders, recipients, and totals." }, { "slug": "HANDWRYTTEN_LIST_CARDS", "name": "List Cards", "description": "Tool to retrieve a list of available Handwrytten cards with optional filtering and pagination. Use when browsing card catalog or searching for specific card types." }, { "slug": "HANDWRYTTEN_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to retrieve the list of available card categories from Handwrytten. Use when you need to display category options or filter cards by category." }, { "slug": "HANDWRYTTEN_LIST_COUNTRIES", "name": "List Countries", "description": "Tool to retrieve the list of countries available in Handwrytten. Use when you need to get available countries for sending handwritten cards." }, { "slug": "HANDWRYTTEN_LIST_CREDIT_CARDS", "name": "List Credit Cards", "description": "Tool to list all credit cards associated with the Handwrytten account. Use when you need to retrieve stored payment methods and billing information." }, { "slug": "HANDWRYTTEN_LIST_FONTS", "name": "List Fonts", "description": "Tool to retrieve the list of available handwriting fonts. Use when you need to display font options or select a font for a handwritten message." }, { "slug": "HANDWRYTTEN_LIST_FONTS_FOR_CUSTOMIZER", "name": "List Fonts for Customizer", "description": "Tool to list fonts available for use with the card customizer. Use when you need to retrieve available font options for customizing handwritten cards." }, { "slug": "HANDWRYTTEN_LIST_GCARDS", "name": "List Gift Cards", "description": "Tool to retrieve the list of available gift cards with their denominations and pricing. Use when you need to see what gift card options are available for purchase through the Handwrytten API." }, { "slug": "HANDWRYTTEN_LIST_IMAGES", "name": "List Custom User Images", "description": "Tool to retrieve a list of custom user images uploaded to Handwrytten. Use when you need to browse or manage custom cover images or logos." }, { "slug": "HANDWRYTTEN_LIST_INSERTS", "name": "List Inserts", "description": "Tool to retrieve a list of available inserts from Handwrytten. Use when you need to view all inserts that can be included with handwritten cards." }, { "slug": "HANDWRYTTEN_LIST_ORDERS", "name": "List Orders", "description": "Tool to retrieve a list of user's past orders from Handwrytten. Use when you need to view order history or check the status of previously placed orders." }, { "slug": "HANDWRYTTEN_LIST_ORDERS_GROUPED", "name": "List Orders Grouped", "description": "Tool to retrieve the user's order history grouped by basket. Use when you need to view or analyze past orders." }, { "slug": "HANDWRYTTEN_LIST_PAST_ORDERS", "name": "List Past Orders", "description": "Tool to retrieve a list of user's past orders from Handwrytten API. Use when you need to view order history or check the status of previously placed orders." }, { "slug": "HANDWRYTTEN_LIST_RECIPIENTS", "name": "List Recipients", "description": "Tool to retrieve a list of recipient addresses that the user has previously saved. Use when you need to view or select from saved recipient addresses for sending handwritten cards." }, { "slug": "HANDWRYTTEN_LIST_SIGNATURES", "name": "List Signatures", "description": "Tool to retrieve the list of available signatures for use in card orders. Use when you need to display signature options or select a signature for a handwritten message." }, { "slug": "HANDWRYTTEN_LIST_STATES", "name": "List States", "description": "Tool to retrieve the list of states/provinces available in Handwrytten. Use when you need to get available states for addressing handwritten cards." }, { "slug": "HANDWRYTTEN_LIST_TEMPLATE_CATEGORIES", "name": "List Template Categories", "description": "Tool to retrieve the list of available template categories from Handwrytten. Use when you need to display template category options or filter templates by category." }, { "slug": "HANDWRYTTEN_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of card text templates from Handwrytten. Use when you need to display available templates or filter templates by category." }, { "slug": "HANDWRYTTEN_LOGOUT", "name": "Logout User", "description": "Tool to logout user from Handwrytten application. Use when you need to terminate the current user session and invalidate the authentication token." }, { "slug": "HANDWRYTTEN_PLACE_BASKET", "name": "Place Order in Basket", "description": "Tool to add an order to the basket in Handwrytten. Use when you need to create a new handwritten card order with specified recipients, card design, message, and delivery details. The order can be placed immediately or scheduled for future delivery." }, { "slug": "HANDWRYTTEN_REGISTER_USER", "name": "Register User", "description": "Tool to register a new Handwrytten user account. Use when creating a new user with email and password. Sends activation email to user; user status is not_active until email is confirmed." }, { "slug": "HANDWRYTTEN_REQUEST_RESET_PASSWORD", "name": "Request Password Reset", "description": "Tool to request a password reset email for a Handwrytten account. Use when a user needs to reset their password and requires an email with reset instructions. The API will send an email with a password reset link if the provided email exists in the system, but will return success regardless to prevent email enumeration attacks." }, { "slug": "HANDWRYTTEN_SET_DEFAULT_ADDRESS", "name": "Set Default Address", "description": "Tool to set a default return address for the user in Handwrytten. Use when you need to designate a specific address as the default return address for sending handwritten cards." }, { "slug": "HANDWRYTTEN_SET_TEST_MODE", "name": "Set Test Mode", "description": "Tool to set test mode for the current Handwrytten user. Use when you need to enable or disable test mode for testing purposes. When enabled, cards will not be sent and money will be returned to the credit card." }, { "slug": "HANDWRYTTEN_UPDATE_BASKET", "name": "Update Basket Item", "description": "Tool to update an existing basket item in Handwrytten. Use when you need to modify card details, recipient addresses, messages, or other basket item properties." }, { "slug": "HANDWRYTTEN_UPDATE_BILLING_INFO", "name": "Update Billing Information", "description": "Tool to update user billing information (country, zip, address) for tax calculations in Handwrytten. Use when updating billing address details for accurate tax computation." }, { "slug": "HANDWRYTTEN_UPDATE_RECIPIENT", "name": "Update Recipient", "description": "Tool to update a recipient address in the user's addressbook in Handwrytten. Use when you need to modify an existing recipient's address details." }, { "slug": "HANDWRYTTEN_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing user template in Handwrytten. Use when you need to modify a template's name or message content." }, { "slug": "HANDWRYTTEN_UPLOAD_CUSTOM_LOGO", "name": "Upload Custom Logo", "description": "Tool to upload a custom image (logo or cover) to Handwrytten for use with custom cards. Use when you need to add a custom logo or cover image that can be referenced in future card creation requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "handwrytten_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Handwrytten account → Account Settings → Integrations → API Keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "happy_scribe", "name": "Happy Scribe", "logo": "https://www.happyscribe.com/favicon.ico", "description": "Happy Scribe offers automatic and professional transcription services, converting audio and video files into text with high accuracy.", "category": "transcription", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HAPPY_SCRIBE_CREATE_SUBTITLE", "name": "Create Subtitle", "description": "Create subtitles for a video file using Happy Scribe's automatic transcription service. Submits a video URL to be processed for subtitle generation. The video must be publicly accessible during ingestion. Returns a subtitle job with an editor URL for reviewing and editing the generated subtitles. Processing states progress from 'initial' -> 'ingesting' -> 'automatic_done' (or 'failed'). Use the GET transcription endpoint to check processing status." }, { "slug": "HAPPY_SCRIBE_CREATE_TRANSLATION_TASK", "name": "Create Translation Task", "description": "Creates an AI-powered translation task to translate an existing transcription into another language. Use this after a transcription is complete (state='automatic_done') to translate it. The task runs asynchronously - use Retrieve Translation Task to check progress and get results. Note: Not all language pairs are supported (e.g., German to English may fail)." }, { "slug": "HAPPY_SCRIBE_DELETE_TRANSCRIPTION", "name": "Delete Transcription", "description": "Tool to delete a transcription job. Use when you have a transcription ID and want to remove it, optionally permanently. Use after confirming the transcription ID." }, { "slug": "HAPPY_SCRIBE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a webhook by its ID. This action is idempotent: if the webhook does not exist or was already deleted, it returns success. Use Get Webhooks to retrieve available webhook IDs." }, { "slug": "HAPPY_SCRIBE_GET_ACCOUNT_DETAILS", "name": "Get Account Details", "description": "Tool to retrieve details about your account, including subscription status and usage statistics. Use after authenticating your API key to monitor plan and usage." }, { "slug": "HAPPY_SCRIBE_GET_LANGUAGE_LIST", "name": "Get Supported Languages", "description": "Retrieve the list of supported language codes for Happy Scribe transcription services. Returns BCP-47 language codes and indicates which languages have human transcription service available. This is a static reference based on Happy Scribe's official documentation, as there is no dedicated languages API endpoint." }, { "slug": "HAPPY_SCRIBE_GET_RATE_LIMIT", "name": "Get API Rate Limit", "description": "Get Happy Scribe API rate limit information. Returns the documented rate limit for the Happy Scribe API: - Default limit: 200 requests per hour - Applies only to the transcription creation endpoint - When rate limited, API returns HTTP 429 with 'retry_in_seconds' in the body Note: Happy Scribe does not expose rate limit headers, so this tool provides documented defaults. If you encounter a 429 response during transcription creation, wait for the 'retry_in_seconds' value before retrying. For higher limits, contact sales@happyscribe.co with subject \"Happy Scribe for Business\"." }, { "slug": "HAPPY_SCRIBE_GET_SIGNED_UPLOAD_URL", "name": "Get Signed Upload URL", "description": "Tool to get a signed URL for uploading a file to Happy Scribe's S3 storage. Use before creating a transcription or order to obtain a secure upload URL for your media file." }, { "slug": "HAPPY_SCRIBE_HS_CONFIRM_ORDER", "name": "Confirm Order", "description": "Tool to confirm a pending order. Use after creating an order with confirm=false when you're ready to submit it for processing." }, { "slug": "HAPPY_SCRIBE_HS_CREATE_TRANSLATION_ORDER", "name": "Create Translation Order", "description": "Tool to create a translation order from an existing transcription. Use when you have a completed transcription and want translations into one or more languages. By default, the order remains incomplete unless confirm=true." }, { "slug": "HAPPY_SCRIBE_HS_EXPORT_TRANSCRIPTION", "name": "Export Transcription", "description": "Creates an export job to download transcription content in various formats. Use this action after a transcription job completes (state='automatic_done'). First obtain transcription IDs using the List Transcriptions action. The export job runs asynchronously - poll the Retrieve Export action with the returned export ID to check when the download URL becomes available (state='ready'). Supported formats: - Documents: txt, docx, pdf (support timestamps, speakers, comments, highlights) - Subtitles: srt, vtt, stl (standard caption formats) - Video editing: avid, premiere, fcp (professional editing software) - Other: html, json, maxqda" }, { "slug": "HAPPY_SCRIBE_HS_GET_API_VERSION", "name": "Get API Version", "description": "Tool to retrieve current API version and check for updates. If Happy Scribe does not expose a dedicated /version endpoint, this tool attempts to infer the version from HTTP response headers or from the base_url path (e.g., /api/v1)." }, { "slug": "HAPPY_SCRIBE_HS_GET_ERROR_CODES", "name": "Get Error Codes", "description": "Returns a list of HTTP error codes used by the Happy Scribe API along with their descriptions. Use this tool to understand what different error responses mean when calling other Happy Scribe API endpoints. This returns static reference data matching the official Happy Scribe API documentation." }, { "slug": "HAPPY_SCRIBE_HS_GET_SUPPORTED_FORMATS", "name": "Get Supported Formats", "description": "Tool to retrieve supported file formats. Use when you need to know available input and output formats before creating a transcription or subtitle. If a dedicated '/formats' endpoint is unavailable, this action probes known endpoints to verify connectivity and returns a curated list based on official documentation." }, { "slug": "HAPPY_SCRIBE_HS_GET_TRANSCRIPTION", "name": "Get Transcription Details", "description": "Tool to retrieve details and status of a specific transcription job. Use after creating or listing transcription jobs to inspect a particular job's metadata." }, { "slug": "HAPPY_SCRIBE_HS_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve webhooks configured for your account. Note: Happy Scribe's public API does not have a dedicated webhooks listing endpoint. Webhooks are specified via webhook_url when creating orders. This action attempts common endpoints and returns an empty list if unavailable." }, { "slug": "HAPPY_SCRIBE_HS_RETRIEVE_EXPORT", "name": "Retrieve Export", "description": "Tool to retrieve information about a specific export. Use when you need to check export status and get download link." }, { "slug": "HAPPY_SCRIBE_HS_RETRIEVE_TRANSLATION_TASK", "name": "Retrieve Translation Task", "description": "Retrieves the status and details of a translation task by its ID. Use this after creating a translation task with HAPPY_SCRIBE_CREATE_TRANSLATION_TASK to check progress (state: initial, working, failed, done) and obtain the translated transcription ID when complete. Note: This endpoint is deprecated; consider using HAPPY_SCRIBE_RETRIEVE_ORDER for new integrations." }, { "slug": "HAPPY_SCRIBE_LIST_TRANSCRIPTIONS", "name": "List Transcriptions", "description": "Retrieves a paginated list of transcription jobs for a Happy Scribe organization. Returns transcription metadata including ID, name, processing state, language, and duration. Supports filtering by folder and tags, with pagination for large result sets. Note: This returns metadata only; use the Export Transcription action to get actual transcript content." }, { "slug": "HAPPY_SCRIBE_RETRIEVE_ORDER", "name": "Retrieve Order", "description": "Retrieve details of a Happy Scribe order by its ID. Returns order state, pricing, operations, and inputs. Use this to check order status, verify pricing details, or get information about translation/transcription operations. The order ID is obtained from create order responses (e.g., Create Translation Order)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "happy_scribe_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Happy Scribe API Key", "type": "string", "description": "Your personal API key for authenticating requests to the Happy Scribe API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hashnode", "name": "Hashnode", "logo": "https://logos.composio.dev/api/hashnode", "description": "Hashnode is a blogging platform tailored for developers, offering tools to create, manage, and publish content seamlessly.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 67, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HASHNODE_ACCEPT_INVITE_TO_PUBLICATION", "name": "Hashnode Accept Publication Invite", "description": "Tool to accept a publication invitation. Use when you have a valid invite token and want to join the publication." }, { "slug": "HASHNODE_ADD_COMMENT", "name": "Hashnode Add Comment", "description": "Add a comment to a Hashnode post. Requires a valid post ID (obtainable via HASHNODE_FETCH_STORIES_FEED or HASHNODE_FETCH_POSTS) and markdown content. For replying to existing comments, use the HASHNODE_ADD_REPLY action instead." }, { "slug": "HASHNODE_ADD_CONTENT_BLOCK", "name": "Hashnode Add Content Block", "description": "Tool to add a content block to a Hashnode documentation project. Use when you need to add embeddable content (such as code snippets, widgets, or other custom content) to a documentation project." }, { "slug": "HASHNODE_ADD_CUSTOM_MDX_COMPONENT", "name": "Hashnode Add Custom MDX Component", "description": "Tool to add a custom MDX component to a Hashnode documentation project. Use when you need to register a new reusable React component that can be used in MDX content. Requires a project ID, component identifier, and the JavaScript/React code defining the component." }, { "slug": "HASHNODE_ADD_DOCUMENTATION_PROJECT_CUSTOM_DOMAIN", "name": "Hashnode: Add Documentation Project Custom Domain", "description": "Tool to add a custom domain to a Hashnode documentation project. Use when setting up custom domain mapping for documentation sites. Requires projectId, domain name, and wwwDomain boolean flag." }, { "slug": "HASHNODE_ADD_REPLY", "name": "Hashnode Add Reply", "description": "Tool to add a reply to an existing comment. Use after confirming comment ID and reply content." }, { "slug": "HASHNODE_CHECK_CUSTOM_DOMAIN_AVAILABILITY", "name": "Hashnode: Check Custom Domain Availability", "description": "Tool to check if a custom domain is available for your Hashnode publication. Use when verifying domain mapping before setup." }, { "slug": "HASHNODE_CHECK_SUBDOMAIN_AVAILABILITY", "name": "Hashnode: Check Subdomain Availability", "description": "Tool to check if a subdomain is available for a Hashnode publication. Use when verifying subdomain availability before creating a publication." }, { "slug": "HASHNODE_CREATE_DOCUMENTATION_API_REFERENCE", "name": "Create Documentation API Reference", "description": "Tool to create a documentation API reference from an OpenAPI specification URL in a Hashnode project. Use when you need to import and generate API documentation from a Swagger/OpenAPI spec. Requires projectId and the URL of the API specification." }, { "slug": "HASHNODE_CREATE_DOCUMENTATION_LINK", "name": "Create Documentation Link", "description": "Tool to create a link within a Hashnode documentation guide. Use when you need to add external or internal links to documentation pages, such as API references, GitHub repositories, or related resources." }, { "slug": "HASHNODE_CREATE_DOCUMENTATION_PROJECT", "name": "Hashnode: Create Documentation Project", "description": "Tool to create a new documentation project on Hashnode. Use when you need to set up a documentation site for API references, product guides, or developer documentation. Requires a unique name and subdomain." }, { "slug": "HASHNODE_CREATE_DOCUMENTATION_SECTION", "name": "Hashnode Create Documentation Section", "description": "Tool to create a new documentation section in a Hashnode documentation guide. Use when you need to add a new section to an existing documentation guide within a project." }, { "slug": "HASHNODE_CREATE_HASHNODE_DOCUMENTATION_GUIDE", "name": "Create Hashnode Documentation Guide", "description": "Tool to create a new documentation guide in a Hashnode documentation project. Use when you need to create a new guide within an existing project. Requires a valid projectId and a name for the guide." }, { "slug": "HASHNODE_DELETE_CONTENT_BLOCK", "name": "Hashnode Delete Content Block", "description": "Tool to delete a content block from a Hashnode documentation project. Use when you need to remove a custom content block from a project. This action is destructive and cannot be undone." }, { "slug": "HASHNODE_DELETE_CUSTOM_MDX_COMPONENT", "name": "Hashnode Delete Custom MDX Component", "description": "Tool to delete a custom MDX component from a Hashnode documentation project. Use when removing an existing custom component that is no longer needed. This action is destructive and cannot be undone." }, { "slug": "HASHNODE_DISABLE_DOCUMENTATION_PROJECT_AI_SEARCH", "name": "Disable Documentation Project AI Search", "description": "Tool to disable AI search for a documentation project on Hashnode. Use when you need to turn off AI-powered search capabilities for a specific documentation project." }, { "slug": "HASHNODE_FETCH_INVITATIONS", "name": "Hashnode: Fetch Invitations", "description": "Fetch pending publication invitations for a Hashnode publication. Returns a list of pending invites that have been sent but not yet accepted. Requires the authenticated user to be a member (owner/admin/editor) of the target publication. Use this to review outstanding team invitations before sending reminders or revoking invites." }, { "slug": "HASHNODE_FETCH_POPULAR_TAGS", "name": "Hashnode: Fetch Popular Tags", "description": "Tool to fetch a paginated list of popular tags. Use when you need to browse popular tags page by page." }, { "slug": "HASHNODE_FETCH_POSTS", "name": "Fetch Publication Posts", "description": "Tool to fetch a paginated list of posts from a publication. Use when you need to list posts page by page for a given publication host." }, { "slug": "HASHNODE_FETCH_SERIES_POSTS", "name": "Fetch Series Posts", "description": "Tool to fetch posts from a series within a publication. Use when retrieving and paginating through series posts in a specific publication." }, { "slug": "HASHNODE_FETCH_SINGLE_ARTICLE", "name": "Fetch Single Article", "description": "Tool to fetch a single article by slug from a publication. Use when you need the detailed content of a specific post." }, { "slug": "HASHNODE_FETCH_STORIES_FEED", "name": "Fetch Stories Feed", "description": "Fetch a paginated feed of stories from Hashnode. Returns posts with title, brief, author info, tags, and reading time. Supports filtering by feed type (RECENT, FEATURED, FOLLOWING, etc.), reading time range, and tags. Use cursor-based pagination via the 'after' parameter with the endCursor from previous responses." }, { "slug": "HASHNODE_FETCH_USER_DETAILS", "name": "Hashnode: Fetch User Details", "description": "Tool to fetch detailed user profile information by username. Use when you need public or authorized profile data." }, { "slug": "HASHNODE_FOLLOW_TAGS", "name": "Hashnode: Follow Tags", "description": "Follow specified tags to customize your content feed on Hashnode. Use when you want to subscribe to content from specific tags to personalize your feed." }, { "slug": "HASHNODE_GEN_DOC_PROJECT_PREVIEW_AUTH_TOKEN", "name": "Generate Documentation Project Preview Authorization Token", "description": "Tool to generate a JWT authorization token for previewing a documentation project. Use when you need to obtain a JWT to access a documentation project preview. Requires a preview token that must be generated first using the generateDocumentationProjectPreviewToken mutation." }, { "slug": "HASHNODE_GET_DOCUMENTATION_PROJECT", "name": "Get Documentation Project", "description": "Tool to fetch details of a Docs by Hashnode project by ID or hostname. Use when you need metadata for a documentation project. Provide either project ID or host domain." }, { "slug": "HASHNODE_GET_POST", "name": "Get Post by ID", "description": "Tool to retrieve a published post by ID from Hashnode. Use when you need to fetch detailed information about a specific post for rendering or displaying." }, { "slug": "HASHNODE_GET_PUBLICATION_BY_ID_OR_HOST", "name": "Get Publication by ID or Host", "description": "Tool to fetch publication details by ID or hostname. User can provide either publication ID or host. Use when you need metadata for a given publication. Returns comprehensive publication information including author, title, description, and configuration." }, { "slug": "HASHNODE_GET_TAG", "name": "Hashnode: Get Tag Details", "description": "Tool to fetch detailed information about a tag by its slug. Use when you need tag metadata, follower/post counts, or logo information." }, { "slug": "HASHNODE_LIKE_COMMENT", "name": "Hashnode Like Comment", "description": "Tool to like a comment on Hashnode. Use when you have a comment ID and want to add a like to that comment." }, { "slug": "HASHNODE_LIKE_POST", "name": "Hashnode Like Post", "description": "Tool to like a post on Hashnode. Use when you want to add a like/reaction to a specific post. Requires a valid post ID." }, { "slug": "HASHNODE_LIKE_REPLY", "name": "Hashnode: Like Reply", "description": "Tool to like a reply on Hashnode. Use when you have a reply ID and want to add a like to that reply." }, { "slug": "HASHNODE_LIST_PUBLICATIONS", "name": "Hashnode: List Publications", "description": "Tool to list all publications of the authenticated user. Use when you need your publication hostnames for downstream actions." }, { "slug": "HASHNODE_LIST_TOP_COMMENTERS", "name": "Hashnode: List Top Commenters", "description": "Tool to fetch users who have most actively participated in discussions by commenting in the last 7 days. Use when you need to identify top contributors or most engaged users." }, { "slug": "HASHNODE_MAP_DOC_PROJECT_CUSTOM_DOMAIN_WWW_REDIRECT", "name": "Hashnode: Map Documentation Project WWW Redirect", "description": "Tool to configure WWW redirect for a documentation project's custom domain. Use when you need to enable automatic www subdomain redirection (e.g., www.docs.example.com -> docs.example.com). The project must already have a custom domain added before calling this action." }, { "slug": "HASHNODE_ME", "name": "Hashnode: Get Current User", "description": "Retrieves profile details of the currently authenticated Hashnode user. Returns the user's identity (id, username, name), profile info (bio, tagline, profile picture, location), social links (website, github, twitter, linkedin), engagement metrics (followers/followings count), and badges. Use this action to get user context for personalization, verify authentication, or retrieve user data for display purposes." }, { "slug": "HASHNODE_MOVE_DOCUMENTATION_SIDEBAR_ITEM", "name": "Move Documentation Sidebar Item", "description": "Tool to reorder documentation sidebar items within a Hashnode guide. Use when you need to change the position of a sidebar item or move it under a different parent section. Requires the projectId, guideSlug, and itemId." }, { "slug": "HASHNODE_PUBLISH_DOCUMENTATION_API_REFERENCE", "name": "Publish Documentation API Reference", "description": "Tool to publish a documentation API reference in a Hashnode documentation project. Use when you need to make an API reference guide publicly available. Requires a projectId and guideSlug." }, { "slug": "HASHNODE_PUBLISH_POST", "name": "Hashnode Publish Post", "description": "Tool to publish a new blog post to a Hashnode publication. Use when you need to create and immediately publish an article. Requires a publicationId (obtainable via HASHNODE_LIST_PUBLICATIONS), title, and markdown content." }, { "slug": "HASHNODE_REMOVE_COMMENT", "name": "Hashnode Remove Comment", "description": "Tool to remove a comment from a Hashnode post. Use after confirming the comment ID. Returns the ID of the removed comment upon success." }, { "slug": "HASHNODE_REMOVE_DOCUMENTATION_GUIDE", "name": "Hashnode Remove Documentation Guide", "description": "Tool to remove a documentation guide from a Hashnode project. Use after confirming the project ID and guide slug. This action is destructive and cannot be undone." }, { "slug": "HASHNODE_REMOVE_DOCUMENTATION_PROJECT", "name": "Remove Documentation Project", "description": "Tool to remove a documentation project from Hashnode. This action frees the custom domain and subdomain and removes all guides and pages. Use after confirming the project ID to be deleted." }, { "slug": "HASHNODE_REMOVE_DOCUMENTATION_PROJECT_CUSTOM_DOMAIN", "name": "Hashnode Remove Documentation Project Custom Domain", "description": "Tool to remove a custom domain from a Hashnode documentation project. Use when you need to detach a custom domain from a documentation project, reverting it to use only the Hashnode subdomain." }, { "slug": "HASHNODE_REMOVE_DOCUMENTATION_SIDEBAR_ITEM", "name": "Remove Documentation Sidebar Item", "description": "Tool to remove a sidebar item from a documentation guide on Hashnode. Use when you need to delete a section or page from a guide's sidebar navigation. This action is destructive and cannot be undone." }, { "slug": "HASHNODE_REMOVE_POST", "name": "Hashnode Remove Post", "description": "Tool to remove (delete) a post from Hashnode. Use after confirming the post ID to be deleted. This action is destructive and cannot be undone." }, { "slug": "HASHNODE_REMOVE_REPLY", "name": "Hashnode Remove Reply", "description": "Tool to remove a reply from a comment. Use after confirming comment and reply IDs. Returns the removed reply details." }, { "slug": "HASHNODE_RENAME_DOCUMENTATION_GUIDE", "name": "Hashnode Rename Documentation Guide", "description": "Tool to rename a documentation guide in a Hashnode project. Use when you need to update the name of an existing guide. Requires the projectId, guideSlug, and new name." }, { "slug": "HASHNODE_RENAME_DOCUMENTATION_SIDEBAR_ITEM", "name": "Rename Documentation Sidebar Item", "description": "Tool to rename a documentation sidebar item within a Hashnode guide. Use when you need to update the display label of a sidebar item (link, page, or section). Requires the projectId, guideSlug, itemId, and new label." }, { "slug": "HASHNODE_RESTORE_POST", "name": "Hashnode Restore Post", "description": "Tool to restore a previously deleted Hashnode post. Use when you need to undo a post deletion and make the post accessible again. Requires the post ID of the deleted post." }, { "slug": "HASHNODE_SAVE_DOCUMENTATION_PAGE_DRAFT_CONTENT", "name": "Save Documentation Page Draft Content", "description": "Tool to save draft content for a documentation page in Hashnode. Use when you need to update the content, title, or description of an existing documentation page draft. Requires pageId and projectId, along with at least one of content, title, or description." }, { "slug": "HASHNODE_SEARCH_POSTS_OF_PUBLICATION", "name": "Search Posts of Publication", "description": "Tool to search and retrieve posts from a specific publication based on a search query. Use when you need to find posts matching specific keywords within a particular Hashnode publication. Supports pagination and sorting by publication date." }, { "slug": "HASHNODE_SUBSCRIBE_TO_NEWSLETTER", "name": "Subscribe to Newsletter", "description": "Tool to subscribe an email address to a Hashnode publication's newsletter. Use when you need to add a subscriber to a publication's mailing list. Requires a publicationId (obtainable via HASHNODE_LIST_PUBLICATIONS or GET_PUBLICATION) and a valid email address." }, { "slug": "HASHNODE_TOGGLE_FOLLOW_USER", "name": "Hashnode: Toggle Follow User", "description": "Tool to toggle follow status for a Hashnode user. If you don't follow the user, this will follow them. If you already follow them, this will unfollow them. Use when you need to manage following relationships for the authenticated user." }, { "slug": "HASHNODE_UNFOLLOW_TAGS", "name": "Hashnode: Unfollow Tags", "description": "Unfollow specified tags to customize your content feed on Hashnode. Use when you want to unsubscribe from content from specific tags to personalize your feed." }, { "slug": "HASHNODE_UNSUBSCRIBE_FROM_NEWSLETTER", "name": "Unsubscribe from Newsletter", "description": "Tool to unsubscribe an email address from a Hashnode publication's newsletter. Use when you need to remove a subscriber from a publication's mailing list. Requires a publicationId (obtainable via HASHNODE_LIST_PUBLICATIONS or GET_PUBLICATION) and a valid email address." }, { "slug": "HASHNODE_UPDATE_COMMENT", "name": "Hashnode Update Comment", "description": "Tool to update an existing comment on a Hashnode post. Use after preparing updated content details." }, { "slug": "HASHNODE_UPDATE_CONTENT_BLOCK", "name": "Hashnode Update Content Block", "description": "Tool to update a content block in a Hashnode documentation project. Use when you need to modify the label or content of an existing embeddable content block (such as code snippets, widgets, or other custom content)." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_APPEARANCE", "name": "Update Documentation Appearance", "description": "Tool to update the appearance settings of a Hashnode documentation project. Use when you need to customize the look and feel of a documentation site, including logos, colors, themes, and custom scripts." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_GENERAL_SETTINGS", "name": "Update Documentation General Settings", "description": "Tool to update general settings of a Hashnode documentation project. Use when you need to modify the name, description, custom CSS, or external links of an existing documentation site. Requires the project ID and at least one field to update." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_GUIDE", "name": "Update Hashnode Documentation Guide", "description": "Tool to update an existing documentation guide in a Hashnode project. Use when you need to modify the name, slug, or SEO meta tags of a guide. Requires the projectId and guideId of the guide to update." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_INTEGRATIONS", "name": "Hashnode: Update Documentation Integrations", "description": "Tool to update third-party integrations for a Docs by Hashnode project. Use when you need to configure analytics (Google Analytics, Clarity), tag management (GTM), customer support (Intercom), marketing pixels (Facebook Pixel, Hotjar), or visitor tracking (Koala) on a documentation site." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_LINK", "name": "Update Documentation Link", "description": "Tool to update an existing link within a Hashnode documentation guide. Use when you need to modify the label or URL of a documentation link. Requires the project ID, guide slug, link ID, and updated label (URL is optional)." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_PROJECT_SUBDOMAIN", "name": "Hashnode: Update Documentation Project Subdomain", "description": "Tool to update the subdomain of a Hashnode documentation project. Use when you need to change the subdomain (e.g., from 'old-docs.hashnode.dev' to 'new-docs.hashnode.dev') for a documentation project." }, { "slug": "HASHNODE_UPDATE_DOCUMENTATION_SECTION", "name": "Hashnode Update Documentation Section", "description": "Tool to update a section in a Hashnode documentation guide. Use when you need to modify the label, slug, or visibility of an existing documentation section." }, { "slug": "HASHNODE_UPDATE_POST", "name": "Hashnode Update Post", "description": "Tool to update an existing Hashnode post via the updatePost mutation. Use when you need to modify the title, content, tags, or other attributes of an already published or drafted post." }, { "slug": "HASHNODE_UPDATE_REPLY", "name": "Hashnode Update Reply", "description": "Tool to update a reply. Use when editing an existing reply to a comment after confirming the comment and reply IDs." }, { "slug": "HASHNODE_VERIFY_DOCUMENTATION_PROJECT_CUSTOM_DOMAIN", "name": "Hashnode Verify Documentation Project Custom Domain", "description": "Tool to verify a custom domain for a Hashnode documentation project. Use when you need to confirm DNS configuration and activate a custom domain that was previously added to the project." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hashnode_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Hashnode Personal Access Token", "type": "string", "description": "Your Hashnode Personal Access Token (PAT) used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "headout", "name": "Headout", "logo": "https://logos.composio.dev/api/headout", "description": "Headout is a travel experiences and activities booking platform offering tours, attractions, and entertainment bookings worldwide.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEADOUT_GET_PRODUCT_BY_ID", "name": "Get Product By ID", "description": "Tool to retrieve detailed product information by product ID. Use when you need comprehensive product details including pricing, images, location, variants, and availability." }, { "slug": "HEADOUT_LIST_CATEGORIES_V2", "name": "List Categories V2", "description": "Tool to fetch all available activity categories for a specific city using V2 API. Use when you need to list categories of activities available in a particular city location." }, { "slug": "HEADOUT_LIST_CITIES", "name": "List Cities", "description": "Tool to list all active cities with pagination support. Use when you need to retrieve available cities from the Headout platform. Supports pagination through offset and limit parameters." }, { "slug": "HEADOUT_LIST_COLLECTIONS_V2", "name": "List Collections V2", "description": "Tool to fetch all collections for a specific city using V2 API with pagination support. Use when you need to browse collections available in a particular city, with optional language-specific content and pagination controls." }, { "slug": "HEADOUT_LIST_INVENTORY_BY_VARIANT", "name": "List Inventory by Variant", "description": "Tool to retrieve available inventory and pricing for a specific product variant. Use when you need to check availability and pricing details for booking." }, { "slug": "HEADOUT_LIST_PRODUCTS_BY_CATEGORY", "name": "List Products By Category", "description": "Tool to list product listings filtered by category ID with pagination support. Use when you need to retrieve products for a specific category." }, { "slug": "HEADOUT_LIST_PRODUCTS_V2", "name": "List Products V2", "description": "Tool to fetch products using Headout V2 API with filtering by city, collection, category, or subcategory. Use when you need to retrieve product listings for specific locations or categories with pagination support." }, { "slug": "HEADOUT_LIST_SUBCATEGORIES_V2", "name": "List Subcategories V2", "description": "Tool to fetch all subcategories for a specific city using V2 API. Use when you need to list subcategories of activities available in a particular city location." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "headout_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Headout API key. Use testing keys (tk_) for sandbox environment or production keys (pk_) for live operations.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "heartbeat", "name": "Heartbeat", "logo": "https://logos.composio.dev/api/heartbeat", "description": "Plug-and-play online communities. Heartbeat provides tools for creating and managing online communities with features for users, channels, events, messages, and more.", "category": "team collaboration", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEARTBEAT_GET_EVENTS", "name": "Get Events", "description": "Tool to retrieve event information from the community. Use when you need to list events with optional pagination support." }, { "slug": "HEARTBEAT_LIST_CHANNELS", "name": "List channels", "description": "Tool to retrieve a paginated list of channels in the community. Use when you need to list, browse, or search for channels in the Heartbeat community. Supports filtering by archived status, channel type, and pagination." }, { "slug": "HEARTBEAT_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve a paginated list of access groups in the community. Use when you need to browse groups with optional filters for parent groups or user membership. Supports cursor-based pagination." }, { "slug": "HEARTBEAT_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a paginated list of users in the Heartbeat community. Use when you need to get user information with optional filtering by creation date, group membership, or role." }, { "slug": "HEARTBEAT_REACTIVATE_USER", "name": "Reactivate User", "description": "Tool to reactivate a previously deleted user by email to allow them to access the community again. Use when you need to restore access for a user who was previously removed." }, { "slug": "HEARTBEAT_RETRIEVE_GROUP", "name": "Retrieve Group", "description": "Tool to retrieve a single group by its ID. Use when you need to get detailed information about a specific group in the Heartbeat community." }, { "slug": "HEARTBEAT_RETRIEVE_USER", "name": "Retrieve User", "description": "Tool to retrieve a single user by their ID. Use when you need to get detailed information about a specific user in the Heartbeat community." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "heartbeat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Settings > API Keys in your Heartbeat account to create an API key. API access is available on the Growth plan and higher tiers.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "helloleads", "name": "Helloleads", "logo": "https://logos.composio.dev/api/helloleads", "description": "HelloLeads is a smart and simple lead management solution designed for small businesses to streamline lead capture, tracking, and engagement.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HELLOLEADS_CREATE_LEAD", "name": "Create Lead", "description": "Tool to add a new lead into HelloLeads. Use when you need to push a fresh lead record with mandatory first name and list key." }, { "slug": "HELLOLEADS_LIST_LEADS", "name": "List Leads", "description": "Tool to list all leads from HelloLeads. Use after authentication to fetch the entire lead list. Returns empty list if none found." }, { "slug": "HELLOLEADS_LIST_LISTS", "name": "List Lead Lists", "description": "Tool to retrieve all lead list keys from HelloLeads. Use when you need to enumerate available lists for lead insertion." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "helloleads_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HelloLeads API Key", "type": "string", "description": "Your HelloLeads API key. Found in Settings > API Integration in your HelloLeads account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "HelloLeads Account Email", "type": "string", "description": "The email address associated with your HelloLeads account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "help_scout", "name": "Help Scout", "logo": "https://logos.composio.dev/api/help_scout", "description": "Help Scout provides customer support software with shared inbox, knowledge base, and customer management tools", "category": "customer support", "authSchemes": [ "OAUTH2" ], "toolCount": 129, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HELP_SCOUT_CREATE_CHAT_HANDLE", "name": "Create Chat Handle", "description": "Tool to create a chat handle for a Help Scout customer. Use when you need to add a chat platform username (like Skype, AIM, Yahoo) to a customer's profile." }, { "slug": "HELP_SCOUT_CREATE_CHAT_THREAD", "name": "Create Chat Thread", "description": "Tool to create a new chat thread on a Help Scout conversation. Use when adding a chat message to an existing conversation. Note: Conversations can have a maximum of 100 threads. Non-imported threads automatically reopen closed conversations." }, { "slug": "HELP_SCOUT_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation in Help Scout. Use when creating email, phone, or chat conversations with customer threads." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer in Help Scout with contact details and profile information. Use when you need to add a new customer with emails, phones, addresses, or other contact data." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_ADDRESS", "name": "Create Customer Address", "description": "Tool to create an address for a Help Scout customer. Use when you need to add a physical address to a customer's profile." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_EMAIL", "name": "Create customer email", "description": "Tool to create an email for a customer in Help Scout. Use when you need to add a new email address to a customer's profile." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_PHONE", "name": "Create Customer Phone", "description": "Tool to create a phone number for a Help Scout customer. Use when adding contact phone numbers to customer profiles." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_PROPERTY", "name": "Create Customer Property", "description": "Tool to create a customer property definition in Help Scout. Use when you need to add custom fields to track additional customer information like subscription plan, tier level, or custom attributes. Maximum 50 customer property definitions per company." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_THREAD", "name": "Create Customer Thread", "description": "Tool to create a new customer thread on a Help Scout conversation. Use when a customer needs to add a message to an existing conversation. The conversation will reopen unless imported mode is enabled. Conversations are limited to 100 threads maximum." }, { "slug": "HELP_SCOUT_CREATE_CUSTOMER_WEBSITE", "name": "Create Customer Website", "description": "Tool to create a website entry for a customer in Help Scout. Use when adding a website URL to an existing customer profile." }, { "slug": "HELP_SCOUT_CREATE_NOTE", "name": "Create Note on Conversation", "description": "Tool to create a new note thread on a Help Scout conversation. Use when you need to add internal notes to conversations. Notes are visible only to team members, not customers. Maximum 100 threads per conversation." }, { "slug": "HELP_SCOUT_CREATE_ORGANIZATION", "name": "Create Organization", "description": "Tool to create a new organization in Help Scout. Use when you need to create a company profile with associated domains, contact information, and metadata." }, { "slug": "HELP_SCOUT_CREATE_ORGANIZATION_PROPERTY", "name": "Create Organization Property", "description": "Tool to create a new custom property definition for organizations in Help Scout. Use when you need to add custom fields to track organization-specific data like industry, account tier, renewal dates, or other metadata. Maximum 50 property definitions allowed per account." }, { "slug": "HELP_SCOUT_CREATE_PHONE_THREAD", "name": "Create Phone Thread", "description": "Tool to create a new phone thread on a Help Scout conversation. Use when you need to log a phone call interaction with a customer on an existing conversation." }, { "slug": "HELP_SCOUT_CREATE_REPLY_THREAD", "name": "Create Reply Thread", "description": "Tool to create a new reply thread on a Help Scout conversation. Use when sending a reply to a customer in an existing conversation. The reply can be published immediately or saved as a draft." }, { "slug": "HELP_SCOUT_CREATE_SAVED_REPLY", "name": "Create saved reply", "description": "Tool to create a saved reply for a mailbox in Help Scout. Use when you need to create reusable message templates for email or chat responses." }, { "slug": "HELP_SCOUT_CREATE_SOCIAL_PROFILE", "name": "Create Social Profile", "description": "Tool to create a social profile for a customer in Help Scout. Use when you need to add social media profile information (LinkedIn, Twitter, Facebook, etc.) to a customer record." }, { "slug": "HELP_SCOUT_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook subscription in Help Scout to receive real-time event notifications. Use when setting up webhook integrations to track conversations, customers, tags, or other events." }, { "slug": "HELP_SCOUT_DELETE_CHAT_HANDLE", "name": "Delete Chat Handle", "description": "Tool to delete a chat handle for a customer. Use when you need to remove a chat handle associated with a customer account." }, { "slug": "HELP_SCOUT_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to move a conversation to the deleted folder. Use when you need to delete a conversation. The conversation can only be restored by a Help Scout administrator." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER", "name": "Delete customer", "description": "Tool to permanently delete a customer by ID from Help Scout. This hard-deletes the customer including microsurvey responses and conversations (irreversible, GDPR compliant). Returns 403 if user lacks access to all conversations or customer has >100 conversations." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER_ADDRESS", "name": "Delete Customer Address", "description": "Tool to delete a customer's address from Help Scout. Use when you need to remove address information associated with a specific customer account." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER_EMAIL", "name": "Delete Customer Email", "description": "Tool to delete an email for a customer. Use when you need to remove a customer's email address from Help Scout." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER_PHONE", "name": "Delete Customer Phone", "description": "Tool to delete a customer's phone number from Help Scout. Use when you need to remove a phone number associated with a specific customer account." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER_PROPERTY", "name": "Delete Customer Property", "description": "Tool to perform a soft delete on a customer property definition. The property is scheduled for permanent deletion, with its slug temporarily reassigned during the grace period." }, { "slug": "HELP_SCOUT_DELETE_CUSTOMER_WEBSITE", "name": "Delete Customer Website", "description": "Tool to delete a website for a customer. Use when you need to remove a website from a customer record." }, { "slug": "HELP_SCOUT_DELETE_ORGANIZATION", "name": "Delete Organization", "description": "Tool to delete an organization by ID. Use when removing an organization from Help Scout. This operation also removes the reference to this organization from all associated customers." }, { "slug": "HELP_SCOUT_DELETE_ORGANIZATION_PROPERTY_CUSTOMER_TIER", "name": "Delete Organization Property Customer Tier", "description": "Tool to delete a customer tier property definition from organizations. This performs a soft-delete, and the property will be removed permanently after a grace period. Use when you need to remove a custom organization property definition." }, { "slug": "HELP_SCOUT_DELETE_SAVED_REPLY", "name": "Delete Saved Reply", "description": "Tool to delete a saved reply from a mailbox. Use when you need to permanently remove a saved reply. Returns 204 No Content on successful deletion." }, { "slug": "HELP_SCOUT_DELETE_SNOOZE", "name": "Delete Snooze", "description": "Tool to delete a snooze on a conversation. Use when you need to remove a snooze from a conversation, which will place it into its new home folder (Mine, Team or Unassigned, based on assignee)." }, { "slug": "HELP_SCOUT_DELETE_SOCIAL_PROFILE", "name": "Delete Social Profile", "description": "Tool to delete a social profile for a customer in Help Scout. Use when you need to remove a social media profile link from a customer record." }, { "slug": "HELP_SCOUT_DELETE_THREAD_SCHEDULE", "name": "Delete Thread Schedule", "description": "Tool to unschedule a scheduled thread in a conversation. Use when you need to convert a scheduled thread to a draft thread. The scheduled thread will be converted to a standard draft thread." }, { "slug": "HELP_SCOUT_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to permanently delete a webhook subscription from Help Scout. Use when you need to remove webhook integrations that are no longer needed." }, { "slug": "HELP_SCOUT_DOWNLOAD_ATTACHMENT", "name": "Download Attachment", "description": "Tool to download an attachment file from a Help Scout conversation. Use when you need to retrieve the actual file content of an attachment." }, { "slug": "HELP_SCOUT_GET_ATTACHMENT_DATA", "name": "Get Attachment Data", "description": "Tool to retrieve attachment data for a specific attachment. Returns base64-encoded attachment content." }, { "slug": "HELP_SCOUT_GET_BUSY_TIMES_REPORT", "name": "Get Busy Times Report", "description": "Tool to get busiest time of day report showing conversation volume by day and hour. Use when you need to analyze conversation patterns to identify peak support hours or optimize team scheduling. Requires Plus or Pro plan." }, { "slug": "HELP_SCOUT_GET_CHAT_REPORT", "name": "Get Chat Report", "description": "Tool to retrieve comprehensive chat report statistics from Help Scout. Use when you need to analyze chat performance metrics including conversation volume, wait times, response times, message counts, and chat durations. Supports period-over-period comparisons and filtering by mailboxes, tags, or folders. Note: Only available to Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_COMPANY_CUSTOMERS_HELPED_REPORT", "name": "Get Company Customers Helped Report", "description": "Tool to retrieve company customers helped report showing distinct customer count receiving support. Use when you need to analyze how many unique customers were helped during a specific period, compare periods, or track customer engagement trends. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_COMPANY_DRILLDOWN_REPORT", "name": "Get Company Drilldown Report", "description": "Tool to retrieve company drilldown report showing underlying conversation data for company statistics. Use when you need to analyze conversations by various dimensions like reply counts, response times, or resolution metrics. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_COMPANY_REPORT", "name": "Get Company Report", "description": "Tool to retrieve overall company performance report from Help Scout. Returns metrics like customers helped, conversations closed, total replies, and per-user statistics for a specified time period. Use when you need to analyze team performance, track support metrics, or generate reports on customer service activity." }, { "slug": "HELP_SCOUT_GET_CONVERSATION", "name": "Get Conversation", "description": "Tool to retrieve a specific conversation by ID from Help Scout. Use when you need detailed information about a conversation including assignee, customer, tags, custom fields, and optionally embedded threads." }, { "slug": "HELP_SCOUT_GET_CONVERSATIONS_DRILLDOWN", "name": "Get Conversations Drilldown Report", "description": "Tool to get conversations drilldown report from Help Scout. Use when you need detailed conversation data for a specific time period. Available on Plus and Pro plans only." }, { "slug": "HELP_SCOUT_GET_CONVERSATIONS_FIELD_DRILLDOWN", "name": "Get Conversations Field Drilldown Report", "description": "Tool to get conversations drilldown by field report from Help Scout. Use when you need to analyze conversations by specific tags, saved replies, workflows, or customers for a time period." }, { "slug": "HELP_SCOUT_GET_CONVERSATIONS_REPORT", "name": "Get Conversations Report", "description": "Tool to get overall conversations report with statistics on conversation volume, channels, and trends. Use when you need insights on conversation patterns, busiest times, top customers, tags, or custom field analytics. Supports optional previous period comparison for trend analysis." }, { "slug": "HELP_SCOUT_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to get a specific customer by ID from Help Scout. Use when you need to retrieve detailed customer information including contact details, profile data, and conversation history." }, { "slug": "HELP_SCOUT_GET_CUSTOMER_ADDRESS", "name": "Get Customer Address", "description": "Tool to retrieve a customer's address from Help Scout. Use when you need to fetch the physical address associated with a specific customer account." }, { "slug": "HELP_SCOUT_GET_DOCS_REPORT", "name": "Get Docs Report", "description": "Tool to retrieve overall docs performance report from Help Scout. Returns metrics like unique visitors, browse and search actions, popular searches, top articles, and top categories for a specified time period. Use when you need to analyze documentation usage, track knowledge base effectiveness, or identify popular content." }, { "slug": "HELP_SCOUT_GET_EMAIL_REPORT", "name": "Get Email Report", "description": "Tool to retrieve email report with volume, resolution, and response metrics from Help Scout. Returns statistics like email conversations, response times, resolution rates, and time distributions for a specified period. Use when you need detailed email performance analytics or trend comparisons." }, { "slug": "HELP_SCOUT_GET_FIRST_RESPONSE_TIME_REPORT", "name": "Get First Response Time Report", "description": "Tool to retrieve first response time productivity report showing average response duration. Use when you need to analyze team response performance, track response time trends, or compare response times across different periods. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_HAPPINESS_RATINGS_REPORT", "name": "Get Happiness Ratings Report", "description": "Tool to retrieve happiness ratings report with customer satisfaction scores and feedback from Help Scout. Returns paginated list of ratings including conversation details, rating scores (Great/OK/Not Good), customer comments, and associated agent information. Use when you need to analyze customer satisfaction metrics or gather feedback data." }, { "slug": "HELP_SCOUT_GET_HAPPINESS_REPORT", "name": "Get Happiness Report", "description": "Tool to retrieve overall happiness report from Help Scout. Returns customer satisfaction metrics including ratings percentages, counts, and happiness scores for a specified time period. Use when you need to analyze customer satisfaction trends, track happiness scores, or generate reports on customer feedback." }, { "slug": "HELP_SCOUT_GET_INBOX", "name": "Get Inbox", "description": "Tool to retrieve a specific inbox by ID with details including name, email, and timestamps. Use when you need to get information about a particular mailbox or inbox." }, { "slug": "HELP_SCOUT_GET_NEW_CONVERSATIONS_DRILLDOWN", "name": "Get New Conversations Drilldown Report", "description": "Tool to get new conversations drilldown report showing underlying conversation data for new conversations created within a time period. Use when you need to analyze newly created conversations with detailed information. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_NEW_CONVERSATIONS_REPORT", "name": "Get New Conversations Report", "description": "Tool to get new conversations report showing conversation counts over time intervals. Use when you need to analyze new conversation trends, compare time periods, or track conversation volume patterns." }, { "slug": "HELP_SCOUT_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve a specific organization by ID from Help Scout. Use when you need to fetch details about an organization including name, website, domains, and contact information." }, { "slug": "HELP_SCOUT_GET_ORGANIZATION_CONVERSATIONS", "name": "Get Organization Conversations", "description": "Tool to get conversations associated with an organization in Help Scout. Use when you need to retrieve all conversations linked to a specific organization. Returns paginated results with HAL+JSON format." }, { "slug": "HELP_SCOUT_GET_ORGANIZATION_CUSTOMERS", "name": "Get Organization Customers", "description": "Tool to get customers associated with an organization in Help Scout. Use when you need to retrieve a list of all customers belonging to a specific organization. Returns paginated results with 50 customers per page." }, { "slug": "HELP_SCOUT_GET_ORGANIZATION_PROPERTY", "name": "Get Organization Property", "description": "Tool to retrieve a single organization property definition by its slug identifier. Use when you need to get details about a specific custom property configured for organizations, including its type, display name, and available options." }, { "slug": "HELP_SCOUT_GET_PHONE_REPORT", "name": "Get Phone Report", "description": "Tool to retrieve phone report statistics from Help Scout. Returns metrics like phone conversations, phone calls created, and customer counts for a specified period. Use when you need to analyze phone support performance or track phone activity trends. Note: Only available to Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_PRODUCTIVITY_REPORT", "name": "Get Productivity Report", "description": "Tool to retrieve productivity overall report showing comprehensive team performance metrics. Use when you need to analyze productivity statistics including response times, resolution times, handle times, and conversation volumes. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_RECEIVED_MESSAGES_REPORT", "name": "Get Received Messages Report", "description": "Tool to retrieve received messages statistics report from Help Scout. Returns count of customer-originated messages over time, broken down by day, week, or month. Use when you need to analyze incoming message volume trends or compare message counts across different time periods." }, { "slug": "HELP_SCOUT_GET_REPLIES_SENT_REPORT", "name": "Get Replies Sent Report", "description": "Tool to get replies sent productivity report showing reply volume metrics over time. Use when you need to analyze reply activity trends, compare periods, or track team productivity. Requires Plus or Pro plan." }, { "slug": "HELP_SCOUT_GET_RESOLUTION_TIME_REPORT", "name": "Get Resolution Time Report", "description": "Tool to retrieve resolution time productivity report showing average time to resolve conversations. Use when you need to analyze team resolution performance, track resolution time trends, or compare resolution times across different periods. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_RESOLVED_REPORT", "name": "Get Resolved Report", "description": "Tool to retrieve productivity resolved report from Help Scout. Returns the number of resolved conversations over time for a specified period. Use when you need to analyze team productivity, track resolution rates, or generate reports on conversation closures." }, { "slug": "HELP_SCOUT_GET_RESOURCE_OWNER", "name": "Get Resource Owner", "description": "Tool to get the authenticated user's profile information. Use when you need to retrieve details about the current user." }, { "slug": "HELP_SCOUT_GET_ROUTING_CONFIG", "name": "Get Routing Configuration", "description": "Tool to retrieve routing configuration for a mailbox inbox. Use when you need to check assignment settings, rotation status, or user eligibility for receiving conversations." }, { "slug": "HELP_SCOUT_GET_SAVED_REPLY", "name": "Get Saved Reply", "description": "Tool to retrieve a specific saved reply from a mailbox. Use when you need to get details about a saved reply template including its text content for email and chat." }, { "slug": "HELP_SCOUT_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve a specific tag by ID from Help Scout. Use when you need to get details about a tag including its name, slug, and color." }, { "slug": "HELP_SCOUT_GET_USER", "name": "Get User", "description": "Tool to retrieve a specific user by ID from Help Scout. Use when you need detailed information about a user including their role, contact details, and profile data." }, { "slug": "HELP_SCOUT_GET_USER_CHAT_REPORT", "name": "Get User Chat Report", "description": "Tool to retrieve user/team chat report statistics from Help Scout. Returns metrics like new conversations, messages per chat, response time, wait time, and duration for a specified period. Use when you need to analyze chat support performance or track chat activity trends for a specific user or team." }, { "slug": "HELP_SCOUT_GET_USER_CONVERSATION_HISTORY", "name": "Get User Conversation History", "description": "Tool to retrieve detailed conversation history for a specific user over a designated timeframe. Use when you need to analyze a user's conversation performance, track response times, or review conversation details. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_CUSTOMERS_HELPED_REPORT", "name": "Get User Customers Helped Report", "description": "Tool to retrieve user customers helped report showing distinct customer count receiving support from a specific user. Use when you need to analyze how many unique customers were helped by an individual team member during a specific period, compare periods, or track user performance. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_DRILLDOWN", "name": "Get User Drilldown Report", "description": "Tool to get user drilldown report from Help Scout. Use when you need detailed conversation data for a specific user within a time period. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_HAPPINESS_REPORT", "name": "Get User Happiness Report", "description": "Tool to retrieve user happiness report from Help Scout. Returns customer satisfaction metrics for a specific user including ratings percentages, counts, and happiness scores for a specified time period. Use when you need to analyze individual user performance on customer satisfaction." }, { "slug": "HELP_SCOUT_GET_USER_RATINGS_REPORT", "name": "Get User Ratings Report", "description": "Tool to retrieve user happiness ratings drilldown report showing customer satisfaction ratings for a specific user. Use when you need to analyze customer feedback, track happiness scores, or review rating comments for an individual support team member. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_REPLIES_REPORT", "name": "Get User Replies Report", "description": "Tool to retrieve user replies report showing the number of replies sent by a specific user over time. Use when you need to analyze reply volume, track user productivity, or compare reply patterns across different time periods. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_REPORT", "name": "Get User Report", "description": "Tool to retrieve overall user/team performance report from Help Scout. Returns detailed metrics including conversations resolved, response time, happiness score, and customer interactions for a specific user. Use when analyzing individual team member performance or generating user-specific reports. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_RESOLUTIONS_REPORT", "name": "Get User Resolutions Report", "description": "Tool to retrieve user resolutions report showing the number of conversations resolved by a specific user over time. Use when you need to analyze resolution trends, track individual performance, or compare resolution rates across different time periods. Available only for Plus and Pro plans." }, { "slug": "HELP_SCOUT_GET_USER_STATUS", "name": "Get User Status", "description": "Tool to get the status of a user in Help Scout. Use when you need to check a user's email availability (active/away) or chat status across mailboxes." }, { "slug": "HELP_SCOUT_GET_VOLUME_BY_CHANNEL_REPORT", "name": "Get Volume by Channel Report", "description": "Tool to retrieve conversation volume by channel (email, chat, phone) over a specified time period. Use when you need to analyze conversation volume trends across different communication channels. Requires Help Scout Plus or Pro plan." }, { "slug": "HELP_SCOUT_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook by ID from Help Scout. Use when you need to view webhook configuration details including URL, events, state, and other settings." }, { "slug": "HELP_SCOUT_LIST_CHAT_HANDLES", "name": "List Chat Handles", "description": "Tool to list all chat handles for a specific customer in Help Scout. Use when you need to retrieve chat service accounts (Skype, AIM, ICQ, etc.) associated with a customer." }, { "slug": "HELP_SCOUT_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Tool to list and filter conversations from Help Scout. Use when you need to retrieve multiple conversations, search by status/tags/assignee, or access conversations modified since a specific date. Returns paginated results with conversation details including subject, status, customer info, and tags. Use the thread resource link inside each Conversation entity to load conversation threads separately." }, { "slug": "HELP_SCOUT_LIST_CUSTOMER_EMAILS", "name": "List Customer Emails", "description": "Tool to list all emails for a specific customer in Help Scout. Use when you need to retrieve all email addresses associated with a customer profile." }, { "slug": "HELP_SCOUT_LIST_CUSTOMER_PHONES", "name": "List Customer Phones", "description": "Tool to list all phone numbers for a specific Help Scout customer. Use when you need to retrieve the phone contact information for a customer." }, { "slug": "HELP_SCOUT_LIST_CUSTOMER_PROPERTIES", "name": "List Customer Properties", "description": "Tool to list all customer property definitions. Use when you need to view all custom properties configured for customers in the Help Scout account." }, { "slug": "HELP_SCOUT_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list customers in Help Scout with optional filters for name, email, or modification date. Use when you need to retrieve a list of customers, search for specific customers, or get customers modified since a certain date. Returns paginated results." }, { "slug": "HELP_SCOUT_LIST_CUSTOMER_WEBSITES", "name": "List Customer Websites", "description": "Tool to list all websites associated with a specific customer in Help Scout. Use when you need to retrieve all website URLs linked to a customer profile." }, { "slug": "HELP_SCOUT_LIST_INBOX_CUSTOM_FIELDS", "name": "List Inbox Custom Fields", "description": "Tool to list all custom fields configured for a specific inbox. Use when you need to retrieve custom field definitions including field types, options, and display order." }, { "slug": "HELP_SCOUT_LIST_INBOXES", "name": "List Inboxes", "description": "Tool to list all mailboxes (inboxes) the user has access to with pagination support. Use when you need to retrieve a list of all available inboxes or mailboxes." }, { "slug": "HELP_SCOUT_LIST_INBOX_FOLDERS", "name": "List Inbox Folders", "description": "Tool to retrieve all folders within a specific inbox/mailbox. Use when you need to list folders for organizing conversations or access folder details like ticket counts." }, { "slug": "HELP_SCOUT_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations (companies) in Help Scout with optional filtering and sorting. Use when you need to retrieve a list of organizations, search for specific organizations by name, or get paginated organization results." }, { "slug": "HELP_SCOUT_LIST_ORGANIZATIONS_PROPERTIES", "name": "List Organizations Properties", "description": "Tool to list all organization property definitions. Use when you need to view all custom properties configured for organizations in the Help Scout account." }, { "slug": "HELP_SCOUT_LIST_SAVED_REPLIES", "name": "List Saved Replies", "description": "Tool to list saved replies for a mailbox. Use when you need to retrieve all saved reply templates available in a specific mailbox." }, { "slug": "HELP_SCOUT_LIST_SOCIAL_PROFILES", "name": "List Social Profiles", "description": "Tool to list all social profiles for a customer in Help Scout. Use when you need to retrieve a customer's social media profile information (LinkedIn, Twitter, Facebook, etc.)." }, { "slug": "HELP_SCOUT_LIST_TAGS", "name": "List Tags", "description": "Tool to list all tags in Help Scout with pagination support. Use when you need to retrieve all available tags in alphabetical order. Returns tag details including name, color, and ticket count." }, { "slug": "HELP_SCOUT_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams in Help Scout with pagination support. Use when you need to retrieve a list of all available teams." }, { "slug": "HELP_SCOUT_LIST_THREADS", "name": "List Threads", "description": "Tool to list all threads for a specific Help Scout conversation. Use when you need to retrieve the complete message history and interactions within a conversation. Threads are sorted by createdAt from newest to oldest by default." }, { "slug": "HELP_SCOUT_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the Help Scout account with optional filters for mailbox or email. Use when you need to retrieve a list of team members, check user roles, or find users by email or mailbox assignment." }, { "slug": "HELP_SCOUT_LIST_USERS_STATUS", "name": "List Users Status", "description": "Tool to list the status of all users including email and chat availability. Use when you need to check which users are currently active, away, or available for different channels." }, { "slug": "HELP_SCOUT_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all webhooks configured in Help Scout. Use when you need to view all webhook subscriptions and their configurations." }, { "slug": "HELP_SCOUT_LIST_WORKFLOWS", "name": "List Workflows", "description": "Tool to list all workflows (automation rules) in the account with optional filters for mailbox, type, and status. Use when you need to retrieve workflows to view automation rules configured in Help Scout." }, { "slug": "HELP_SCOUT_OVERWRITE_CUSTOMER", "name": "Overwrite Customer", "description": "Tool to overwrite an existing customer in Help Scout, replacing all customer data. Use when you need to completely replace a customer's profile information. Fields not provided in the request will be set to null, effectively removing them." }, { "slug": "HELP_SCOUT_PUBLISH_THREAD_SCHEDULE", "name": "Publish Thread Schedule", "description": "Tool to publish a scheduled thread immediately in a Help Scout conversation. Use when you need to send a scheduled message sooner than originally planned. The draft thread is turned into a reply/forward thread and the message is sent to the customer immediately." }, { "slug": "HELP_SCOUT_REMOVE_ORGANIZATION_PROPERTY_VALUE", "name": "Remove Organization Property Value", "description": "Tool to remove an organization property value. Use when clearing the value of a custom property for a specific organization. The property definition itself is not deleted, only its value for this organization is cleared." }, { "slug": "HELP_SCOUT_RUN_MANUAL_WORKFLOW", "name": "Run Manual Workflow", "description": "Tool to run a manual workflow on one or more conversations in Help Scout. Use when you need to execute workflow actions on specific conversations. Only manual workflows can be executed via this action, and all conversation IDs must be from the same inbox as the workflow." }, { "slug": "HELP_SCOUT_SET_ORGANIZATION_PROPERTY_VALUE", "name": "Set Organization Property Value", "description": "Tool to set or update a property value for a specific organization. Use when you need to assign a value to a custom property field on an organization, such as setting their tier, industry, or other metadata." }, { "slug": "HELP_SCOUT_SET_USER_STATUS", "name": "Set User Status", "description": "Tool to set the status of a user in Help Scout. Use when you need to change a user's availability to 'active' or 'away'. Administrators and Account Owners can edit other users' status." }, { "slug": "HELP_SCOUT_UPDATE_CHAT_HANDLE", "name": "Update Chat Handle", "description": "Tool to update a chat handle for a Help Scout customer. Use when you need to modify an existing chat platform username (like Skype, AIM, Yahoo) associated with a customer's profile." }, { "slug": "HELP_SCOUT_UPDATE_CONVERSATION", "name": "Update Conversation", "description": "Tool to update specific properties of a Help Scout conversation using JSON Patch format. Use when you need to modify conversation subject, status, assignment, mailbox, primary customer, or draft status. Each request updates one field at a time." }, { "slug": "HELP_SCOUT_UPDATE_CONVERSATION_TAGS", "name": "Update Conversation Tags", "description": "Tool to update tags on a conversation in Help Scout. Use when you need to add, remove, or replace tags on a conversation. This operation replaces the entire tag set - any existing tags not included will be removed." }, { "slug": "HELP_SCOUT_UPDATE_CONVERSATION_THREAD_SCHEDULE", "name": "Update Conversation Thread Schedule", "description": "Tool to update an existing schedule for a conversation thread in Help Scout. Use when you need to change when a reply or forward thread should be sent. Subsequent requests override previous schedules for the same thread." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer in Help Scout using JSON Patch operations. Use when you need to modify specific customer fields without replacing the entire record. Supports updating profile fields, address, and collections (emails, phones, etc.)." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_ADDRESS", "name": "Update Customer Address", "description": "Tool to update an existing address for a Help Scout customer. Use when you need to modify a customer's physical address." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_EMAIL", "name": "Update customer email", "description": "Tool to update an existing email for a customer in Help Scout. Use when you need to modify a customer's email address or change its type (home/work/other)." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_PHONE", "name": "Update Customer Phone", "description": "Tool to update an existing phone number for a Help Scout customer. Use when modifying phone number details or type for a customer's profile." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_PROPERTIES", "name": "Update Customer Properties", "description": "Tool to update custom property values for a Help Scout customer using JSON Patch operations. Use when you need to modify existing property values like subscription plan, tier level, or custom attributes. Properties must be created first before updating values." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_SOCIAL_PROFILE", "name": "Update Customer Social Profile", "description": "Tool to update an existing social profile for a customer in Help Scout. Use when you need to modify a customer's social media profile URL or handle, or change its type." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOMER_WEBSITE", "name": "Update Customer Website", "description": "Tool to update an existing website URL for a customer in Help Scout. Use when modifying a website entry on a customer's profile." }, { "slug": "HELP_SCOUT_UPDATE_CUSTOM_FIELDS", "name": "Update Custom Fields", "description": "Tool to update custom fields on a Help Scout conversation. The complete fields list replaces existing data—omitted fields are removed. Use when you need to set or clear custom field values on a conversation." }, { "slug": "HELP_SCOUT_UPDATE_MAILBOXES_ROUTING", "name": "Update Mailbox Routing Configuration", "description": "Tool to update routing configuration for a mailbox inbox in Help Scout. Use when you need to enable/disable routing, change assignment limits, modify assignment strategy, or update the list of users in rotation." }, { "slug": "HELP_SCOUT_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update an organization in Help Scout. Use when you need to modify organization details such as name, website, domains, or contact information. This is a complete update operation - provide all fields to avoid removal of existing data." }, { "slug": "HELP_SCOUT_UPDATE_ORGANIZATION_PROPERTY", "name": "Update Organization Property", "description": "Tool to update an organization property definition in Help Scout. Use when you need to modify the name or options of an existing custom property. Note: Property type and slug cannot be changed after creation." }, { "slug": "HELP_SCOUT_UPDATE_ORGANIZATION_PROPERTY_INDUSTRY", "name": "Update Organization Property Industry", "description": "Tool to update the industry organization property definition in Help Scout. Use when you need to modify the display name or available dropdown options for the industry field. Note: updating options replaces the entire list and removed options cascade delete existing values." }, { "slug": "HELP_SCOUT_UPDATE_SAVED_REPLY", "name": "Update saved reply", "description": "Tool to update an existing saved reply in a Help Scout mailbox. Use when you need to modify the name or content of a saved reply template." }, { "slug": "HELP_SCOUT_UPDATE_SNOOZE", "name": "Update Conversation Snooze", "description": "Tool to update or set a snooze on a Help Scout conversation. Use when you need to snooze a conversation until a specific date/time, optionally unsnoozing when the customer replies." }, { "slug": "HELP_SCOUT_UPDATE_THREAD", "name": "Update Thread", "description": "Tool to update a specific thread in a Help Scout conversation using JSON Patch format. Use when you need to modify thread text content or hide/unhide a thread. Requires admin-level access or thread editing enabled for the account." }, { "slug": "HELP_SCOUT_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook subscription in Help Scout. Use when modifying webhook configuration such as URL, events, secret, or other settings." }, { "slug": "HELP_SCOUT_UPDATE_WORKFLOW_STATUS", "name": "Update Workflow Status", "description": "Tool to update the status of a Help Scout workflow (enable/disable automation rule). Use when you need to activate or deactivate a workflow." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "help_scout_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "helpdesk", "name": "Helpdesk", "logo": "https://logos.composio.dev/api/helpdesk", "description": "HelpDesk is a ticketing system designed to streamline customer support by organizing and managing inquiries efficiently.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HELPDESK_LIST_AGENTS", "name": "List Agents", "description": "Retrieves all support agents (team members) in the HelpDesk account. Use this action to get a complete list of agents with their details including: - Agent profiles (name, email, avatar, job title) - Role assignments (owner, normal, viewer) - Team memberships - Status (active or invited) - Auto-assignment settings - Email signatures This action requires no parameters and returns all agents in the account. Useful for finding agent IDs, checking team composition, or verifying permissions." }, { "slug": "HELPDESK_LIST_CANNED_RESPONSES", "name": "List Canned Responses", "description": "Tool to list canned responses. Use when you need to retrieve all predefined reply templates for tickets." }, { "slug": "HELPDESK_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to list all custom fields defined in the account. Use when you need to view or manage custom fields. Only callable after authentication." }, { "slug": "HELPDESK_LIST_EMAIL_DOMAINS", "name": "List Email Domains", "description": "Lists all email domains configured for the HelpDesk account. Returns a comprehensive list of all email domains set up in the HelpDesk account, including domain names, verification status, DNS records, and configuration flags. Email domains allow you to send and receive tickets via custom email addresses. Use this action to: - Get domain IDs and names for use in other API operations - Check domain verification and setup status - View DNS configuration requirements - Audit which domains are actively being used for inbox No parameters required - returns all email domains accessible to the authenticated account." }, { "slug": "HELPDESK_LIST_LICENSES", "name": "List Licenses", "description": "Retrieves all licenses (account configurations) for the authenticated HelpDesk account. A license represents a customer account and contains subscription information, global settings, default team/template assignments, and detected languages. Most accounts have one license. Use this action to: - Check account configuration and settings - Get account ID and metadata - View default team and template assignments - Inspect company settings and feature flags No parameters required - returns all licenses for the authenticated account." }, { "slug": "HELPDESK_LIST_REPLY_ADDRESSES", "name": "List Reply Addresses", "description": "Lists all reply addresses configured in the HelpDesk account. Reply addresses are email addresses used to receive and respond to support tickets. Each reply address must be associated with a verified email domain and can be used as the \"From\" address when sending ticket responses to customers. Use this action to: - Get all available reply addresses and their verification status - Retrieve reply address IDs for use in other operations (e.g., creating mailboxes) - Check which email domains are being used for reply addresses - Audit reply address configuration across the account No parameters required - returns all reply addresses accessible to the authenticated account." }, { "slug": "HELPDESK_LIST_RULES", "name": "List Rules", "description": "Tool to retrieve a list of rules configured in the account. Use after authentication when you need an overview of all automation rules." }, { "slug": "HELPDESK_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Lists all billing subscriptions for the HelpDesk account, including active, expired, canceled, and future subscriptions. Subscriptions represent the currently selected plan (team or enterprise) and number of paid agent slots. Use this tool to retrieve subscription details including plan codes, pricing, billing cycles, trial periods, and subscription states. Both filter parameters are optional - omit them to retrieve all subscriptions." }, { "slug": "HELPDESK_LIST_TEAMS", "name": "List Teams", "description": "Lists all teams in the HelpDesk account. Returns a comprehensive list of all teams configured in the HelpDesk account, including team IDs, names, settings, reply addresses, and integration configurations. Teams are organizational units that group agents and manage ticket routing. Use this action to: - Get team IDs for use in other API operations - Retrieve team names and configurations - Audit team settings and reply addresses - View team integration configurations No parameters required - returns all teams accessible to the authenticated account." }, { "slug": "HELPDESK_LIST_TICKETS", "name": "List Tickets", "description": "List all tickets from a specified silo with cursor-based pagination support. This tool retrieves tickets from the helpdesk system with flexible sorting and pagination. Use this when you need to retrieve tickets for monitoring, reporting, or processing. Key features: - Retrieves tickets from specified silo (tickets, archive, trash, or spam) - Supports cursor-based pagination for efficient navigation through large datasets - Configurable page size (1-100 tickets per page) - Multiple sort options (createdAt, updatedAt, lastMessageAt) in ascending or descending order Common use cases: - Get all open tickets: Use default parameters with silo='tickets' - Browse archived tickets: Set silo='archive' - Paginate through results: Use next_value and next_id from previous response" }, { "slug": "HELPDESK_LIST_TRUSTED_EMAILS", "name": "List Trusted Emails", "description": "Tool to retrieve a list of trusted email addresses or domains. Use when managing your spam whitelist after authenticating." }, { "slug": "HELPDESK_LIST_VIEWS", "name": "List Views", "description": "Tool to list agent views. Use when you need to retrieve saved ticket views after authentication." }, { "slug": "HELPDESK_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Lists all configured webhooks for the HelpDesk account. Webhooks allow you to receive real-time notifications about ticket events (creation, updates, status changes, assignments, etc.) sent as HTTP POST requests to your specified URLs. Use this action to view all active webhook configurations." }, { "slug": "HELPDESK_VIEW_AGENT", "name": "View Agent", "description": "Retrieves comprehensive details for a specific agent in the HelpDesk system. Returns complete agent information including profile details, role assignments, team memberships, status, settings, and signature configuration. Use this action when you need detailed information about a specific agent after obtaining their ID from the list_agents action." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "helpdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "basic_encoded", "displayName": "Personal Access Token (PAT) - Basic Encoded", "type": "string", "description": "Your Personal Access Token (PAT), base64-encoded with the Account ID (username:token) as required by HelpDesk API Basic Auth. PATs can be generated in the Developers Console under the Tools / Personal Access Tokens section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "helpspace", "name": "Helpspace", "logo": "https://logos.composio.dev/api/helpspace", "description": "Simplify your customer support! Use Helpspace shared inbox to organize all incoming customer messages in one place for efficient teamwork.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "helpspace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Navigate to your HelpSpace account → Settings → Access Tokens to generate your access token. Note: The token is shown only once upon creation.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Client ID", "type": "string", "description": "Your Client ID from Settings → Access Tokens. This identifies your workspace/organization.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "helpwise", "name": "Helpwise", "logo": "https://logos.composio.dev/api/helpwise", "description": "Helpwise is an easy-to-use customer service platform that helps you manage all customer communication from a single place.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HELPWISE_CREATE_ATTACHMENT", "name": "Create attachment", "description": "Tool to upload a new attachment. Use when you need to send a file to Helpwise and receive its attachment metadata." }, { "slug": "HELPWISE_CREATE_NOTE", "name": "Add note to conversation", "description": "Tool to add a note to a conversation. Use after obtaining the conversation_id to provide context." }, { "slug": "HELPWISE_CREATE_TEAM", "name": "Create Helpwise Team", "description": "Creates a new team in Helpwise to group users for collaboration and assignment purposes. Use this tool when you need to: - Create a new team with a unique name - Optionally add a description for the team - Optionally assign initial members by their user IDs IMPORTANT: Team creation via API is not available in the current Helpwise API. All tested endpoints (/api/v1/teams, /dev-apis/teams, /api/v1/team, /dev-apis/team) return 404. Team management appears to be limited to the Helpwise web interface. If you need to create teams, please: 1. Use the Helpwise web interface at https://app.helpwise.io 2. Contact Helpwise support at dev@helpwise.io to request API endpoint availability This action is implemented speculatively for future API support and follows standard patterns used in other Helpwise actions." }, { "slug": "HELPWISE_CREATE_WEBHOOK", "name": "Create Helpwise Webhook", "description": "Creates a new webhook subscription in Helpwise to receive real-time event notifications. Use this action to programmatically subscribe to Helpwise events like conversation creation, message replies, conversation assignments, status changes, and tag applications. Webhooks deliver JSON payloads to your specified callback URL when subscribed events occur. IMPORTANT: Helpwise webhook management is primarily done through the UI at: Settings > Automation > Integrations > Webhooks (https://app.helpwise.io/settings/integrations) This action attempts to use programmatic API endpoints, but if they're unavailable in your Helpwise plan or environment, you'll need to create webhooks manually via the UI." }, { "slug": "HELPWISE_DELETE_CONTACT", "name": "Delete Contact", "description": "Deletes a contact from Helpwise by its unique identifier (ID). Use this action when you need to permanently remove a contact from your Helpwise account. Returns an empty response (HTTP 204 No Content) on successful deletion. Note: This action is idempotent - deleting a non-existent contact will return an appropriate error." }, { "slug": "HELPWISE_DELETE_CONVERSATION", "name": "Delete Helpwise Conversation", "description": "Attempts to delete a conversation by ID from Helpwise. Note: The Helpwise API may not support conversation deletion via the REST API. If deletion is not supported, this action will return an error indicating that the endpoint was not found or the method is not allowed. Use this action when you need to attempt to permanently remove a conversation by its ID." }, { "slug": "HELPWISE_DELETE_MAILBOX", "name": "Delete Mailbox", "description": "Tool to delete a mailbox by its unique identifier. NOTE: As of 2026, the Helpwise API may not support mailbox deletion via API. This action attempts deletion but will fail if the endpoint is not available (405 Method Not Allowed). Consider managing mailboxes through the Helpwise web interface if API deletion is unsupported." }, { "slug": "HELPWISE_DELETE_MESSAGE", "name": "Delete Helpwise Message", "description": "Attempts to delete a message from Helpwise. Note: The Helpwise API may not support message deletion via the REST API. If deletion is not supported, this action will return an error indicating that the DELETE method is not allowed (HTTP 405). Use this action when you need to attempt to permanently remove a message by its ID." }, { "slug": "HELPWISE_DELETE_NOTE", "name": "Delete Helpwise Note", "description": "Tool to delete a note from a conversation. Use when you need to permanently remove a note by its ID from a specific conversation after confirming the IDs." }, { "slug": "HELPWISE_DELETE_SIGNATURE", "name": "Delete Email Signature", "description": "Deletes an email signature from Helpwise. Email signatures are text/HTML templates that automatically append to outgoing emails from specific mailboxes or users. This action permanently removes the signature identified by the signature_id. Returns an empty response on successful deletion (204 No Content)." }, { "slug": "HELPWISE_DELETE_TAG", "name": "Delete Tag", "description": "Permanently deletes a tag from Helpwise. This action removes the tag from all conversations where it was applied and cannot be undone. Use this when you need to permanently remove a tag that is no longer needed. Note: Deleting a tag will automatically remove it from all existing conversations that use this tag." }, { "slug": "HELPWISE_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete a team. Use when you need to remove an existing team by its unique identifier after confirming the ID and dependencies." }, { "slug": "HELPWISE_DELETE_TEMPLATE", "name": "Delete Template", "description": "Deletes a Helpwise email template (saved reply) by its ID. Returns empty response on success (HTTP 204). Use this tool when you need to permanently remove a template that is no longer needed. Ensure the template_id is valid before deletion - this operation cannot be undone. Common responses: - Success (204): Template deleted successfully - Not Found (404): Template ID does not exist or was already deleted - Forbidden (403): No permission to delete this template" }, { "slug": "HELPWISE_DELETE_WEBHOOK", "name": "Delete Helpwise Webhook", "description": "Delete a Helpwise webhook by its ID. Use this tool when you need to permanently remove a webhook configuration. Returns an empty response on successful deletion (HTTP 204 No Content)." }, { "slug": "HELPWISE_GET_ATTACHMENT", "name": "Get Attachment", "description": "Retrieves a specific attachment by its unique identifier. Use this after obtaining an attachment ID from conversations, messages, or attachment listings to get detailed attachment metadata including download URL, file name, content type, and timestamps." }, { "slug": "HELPWISE_GET_ATTACHMENTS", "name": "Get Conversation Attachments", "description": "Retrieves attachments from messages in a specific conversation. **Important**: Helpwise does not provide a dedicated attachments endpoint. This action retrieves attachments by fetching messages from the conversation and extracting attachment information from them. A conversation_id is required to use this action. Use this when you need to: - Get all file attachments from a specific conversation - Access attachment metadata (filename, URL, size, content type) - Download files shared in customer support conversations **Note**: This action retrieves attachments through the messages endpoint, as Helpwise embeds attachment data within message objects rather than providing a standalone attachments resource." }, { "slug": "HELPWISE_GET_CONTACT", "name": "Get Helpwise Contact", "description": "Retrieves detailed information for a specific contact by ID. Use this when you need to fetch complete contact details including name, email, phone, company, and timestamps for a known contact ID." }, { "slug": "HELPWISE_GET_CONVERSATION", "name": "Get Conversation", "description": "Retrieves complete details of a specific conversation by ID from Helpwise. Returns the conversation metadata including subject, status, participants, and timestamps. Use this action when you need to view or analyze a specific conversation's details. Example use cases: - Checking the status of a support ticket conversation - Viewing conversation participants and assignees - Retrieving conversation metadata for reporting" }, { "slug": "HELPWISE_GET_CONVERSATIONS", "name": "Get Conversations", "description": "Tool to retrieve a list of conversations. Use when you need to list and paginate support conversations for display or analysis." }, { "slug": "HELPWISE_GET_CUSTOM_FIELD", "name": "Get Helpwise Custom Field", "description": "Retrieves details of a specific custom field by its ID. Use this when you need to fetch custom field properties such as name, description, value, associated inboxes, and creator information." }, { "slug": "HELPWISE_GET_MAILBOX", "name": "Get Helpwise Mailbox", "description": "Tool to retrieve details of a specific mailbox by its ID. Use when you know the mailbox ID and need full mailbox information." }, { "slug": "HELPWISE_GET_MAILBOXES", "name": "Get Helpwise Mailboxes", "description": "Tool to retrieve mailboxes. Use when you need to list and paginate mailboxes after authenticating." }, { "slug": "HELPWISE_GET_NOTE", "name": "Get Conversation Note", "description": "Tool to retrieve details of a specific note. Use when you know the conversation and note IDs and need full note information." }, { "slug": "HELPWISE_GET_NOTES", "name": "Get Conversation Notes", "description": "Retrieves all notes associated with a specific conversation. Notes are internal comments or annotations that team members add to conversations for collaboration and context." }, { "slug": "HELPWISE_GET_TAG", "name": "Get Helpwise Tag", "description": "Retrieves detailed information about a specific tag in Helpwise. Use this action when you need to: - Get the full properties of a tag including its name, color, and timestamps - Verify that a tag exists before performing operations on it - Retrieve tag details for display or processing Tags in Helpwise are labels that can be applied to conversations for organization and filtering." }, { "slug": "HELPWISE_GET_TEAM", "name": "Get Helpwise Team", "description": "Retrieves details of a specific Helpwise team by its ID. Note: Team endpoints may not be available in all Helpwise API plans. If this action returns a 404 error, teams may need to be managed through the Helpwise web interface. Use this tool when you have a valid team_id and need to fetch team details such as name and timestamps." }, { "slug": "HELPWISE_GET_TEAMS", "name": "Get Helpwise Teams", "description": "Tool to retrieve Helpwise teams. Use when you need to list and paginate all teams for assignment or management." }, { "slug": "HELPWISE_GET_TEMPLATES", "name": "Get Helpwise WhatsApp Templates", "description": "Tool to retrieve Helpwise WhatsApp message templates. Use when you need to list WhatsApp templates for a mailbox or account." }, { "slug": "HELPWISE_GET_USERS", "name": "Get Helpwise Users", "description": "Tool to retrieve Helpwise users list. Use when you need to fetch and paginate agents for assignment." }, { "slug": "HELPWISE_GET_WEBHOOK", "name": "Get Helpwise Webhook", "description": "Retrieve detailed configuration for a specific Helpwise webhook by its ID. Use this action when you: - Need to inspect the configuration of an existing webhook - Want to verify webhook settings (URL, events, active status) - Need to check webhook creation/update timestamps Prerequisites: You must have a valid webhook ID, which can be obtained from the 'Get Webhooks' action or when creating a webhook." }, { "slug": "HELPWISE_GET_WEBHOOKS", "name": "Get Helpwise Webhooks", "description": "Tool to retrieve Helpwise webhooks. Use when you need to list and paginate all webhook configurations." }, { "slug": "HELPWISE_SEARCH_CONTACTS", "name": "Search Helpwise Contacts", "description": "Tool to search contacts by term with pagination. Use when you need to find contacts by name, email, phone, or other contact attributes." }, { "slug": "HELPWISE_UPDATE_CONTACT", "name": "Update Helpwise Contact", "description": "Tool to update an existing Helpwise contact. Use when you need to modify contact details or custom attributes." }, { "slug": "HELPWISE_UPDATE_MAILBOX", "name": "Update Mailbox", "description": "Updates an existing Helpwise mailbox. Use this action to modify mailbox settings such as display name, email address, team assignment, email signature, or default status. At least one field must be provided for update. Obtain the mailbox_id from the Get Mailboxes action." }, { "slug": "HELPWISE_UPDATE_MESSAGE", "name": "Update Helpwise Message", "description": "Tool to update an existing message. Use when you need to modify message content by its ID." }, { "slug": "HELPWISE_UPDATE_TAG", "name": "Update Helpwise Tag", "description": "Updates an existing tag's name and/or color in Helpwise. Use this action when you need to rename a tag or change its visual appearance. You must have the tag's ID before calling this action - obtain it using HELPWISE_GET_TAG or from the Helpwise UI." }, { "slug": "HELPWISE_UPDATE_TEMPLATE", "name": "Update Helpwise Template", "description": "Updates an existing Helpwise email template by modifying its name, subject, and/or HTML content. Use this action when you need to: - Change the display name of a template - Update the subject line (including placeholders) - Modify the HTML content/body of the template Prerequisites: - You must have the template_id (obtain via Get Templates action or Helpwise UI) - At least one field (name, subject, or html) must be provided for update Note: This action performs a partial update - only provided fields will be modified." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "helpwise_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Helpwise API Key", "type": "string", "description": "The API key for authenticating requests to the Helpwise API.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Helpwise API Secret", "type": "string", "description": "The API secret associated with the API key for authenticating requests to the Helpwise API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "here", "name": "Here", "logo": "https://www.here.com/etc.clientlibs/here/clientlibs/website/clientlib-site/resources/images/here-logo.svg", "description": "HERE Technologies provides comprehensive location data and mapping services, offering APIs and SDKs for developers to integrate maps, geocoding, routing, and other location-based features into their applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 99, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HERE_AUTOSUGGEST", "name": "Autosuggest Places", "description": "Tool to fetch possible completions for a partial search term. Use after capturing a partial query and location context to generate typeahead suggestions." }, { "slug": "HERE_BROWSE", "name": "Browse Places", "description": "Tool to search for places around a given location with optional filters. Use when you need nearby points of interest filtered by categories, food types, or name." }, { "slug": "HERE_CALCULATE_ROUTE", "name": "Calculate Fleet Telematics Route", "description": "Calculate optimal routes between multiple waypoints supporting various transport modes (car, truck, bicycle, pedestrian). Returns route summary with travel time and distance. Supports fleet-specific parameters like fuel type and preferred routes. Uses HERE Fleet Telematics API with automatic fallback to Routing v8 API." }, { "slug": "HERE_CANCEL_PROBLEM", "name": "Cancel Tour Planning Problem", "description": "Tool to cancel a running asynchronous tour planning optimization job. Use when you need to stop an in-progress optimization calculation that is no longer needed or was submitted in error." }, { "slug": "HERE_COORDINATES_TO_TILE_INDICES", "name": "Coordinates to Tile Indices", "description": "Tool to convert geographic coordinates to Web Mercator XYZ tile indices. Use when mapping a lat/lng to its containing tile at a given zoom level." }, { "slug": "HERE_DECODE_ROUTE_HANDLE", "name": "Decode Route Handle", "description": "Tool to decode and return a route from a previously calculated route handle via POST request. Use when you need to retrieve a route using a handle obtained from a previous route calculation." }, { "slug": "HERE_DISCOVER", "name": "Discover Places", "description": "Tool to discover places and addresses by free-form text near a location. Use when you need to find points of interest or specific addresses from a natural-language query." }, { "slug": "HERE_FIND_SEQUENCE", "name": "Solve Vehicle Routing Problem", "description": "Tool to solve a Vehicle Routing Problem (VRP) by optimizing routes for a fleet of vehicles serving multiple jobs. Use when you need to optimize delivery routes, pickup sequences, or multi-stop journeys with vehicle capacity constraints. This is a preview feature and subject to change." }, { "slug": "HERE_FIND_WAYPOINT_SEQUENCE", "name": "Find Optimal Waypoint Sequence", "description": "Tool to find the optimal sequence of waypoints using POST request to solve the Travelling Salesman Problem. Supports advanced vehicle parameters including truck restrictions, hazardous goods, toll calculations, and environmental zones. Returns optimized visit order with distance, time, and interconnections between waypoints." }, { "slug": "HERE_GEOCODE", "name": "Geocode Address", "description": "Tool to convert structured address data into geographic coordinates. Use when you need precise lat/lng from a free-text or qualified address input." }, { "slug": "HERE_GET_ALIASES_HEALTH", "name": "Get Aliases Service Health", "description": "Tool to check the health status of the HERE Tracking aliases service. Use to verify service availability before making other aliases API calls." }, { "slug": "HERE_GET_ALIASES_VERSION", "name": "Get Aliases Service Version", "description": "Tool to get the current version of the HERE Tracking Aliases service. Use when you need to verify the service version for compatibility or debugging purposes." }, { "slug": "HERE_GET_ASSOCIATIONS_HEALTH", "name": "Get Associations Service Health", "description": "Tool to check the health status of the HERE Tracking Associations API service. Use when you need to verify that the associations service is operational and responding correctly." }, { "slug": "HERE_GET_ASSOCIATIONS_VERSION", "name": "Get Associations Service Version", "description": "Tool to retrieve the current version of the HERE Associations tracking service. Use when you need to verify the service version or check service availability." }, { "slug": "HERE_GET_AUTOCOMPLETE", "name": "Get Address Autocomplete", "description": "Tool to get address autocomplete suggestions for partial address queries. Use when you need address-specific completions focusing on addresses and administrative areas, unlike autosuggest which includes broader place categories." }, { "slug": "HERE_GET_BASE_MAP_TILE", "name": "Get Base Map Tile", "description": "Retrieves a base map tile image from HERE Raster Tile API v3. Returns map tiles in various styles (normal day/night, satellite, reduced/lite) at specified zoom levels and tile coordinates using the Web Mercator projection. Tiles are provided in 256x256 or 512x512 pixel sizes in PNG or JPEG format. Use this to display map imagery in applications requiring tiled map rendering." }, { "slug": "HERE_GET_BULKJOBS_HEALTH", "name": "Get Bulkjobs Service Health", "description": "Tool to check the health status of the HERE Tracking bulkjobs service. Use to verify service availability before making other bulkjobs API calls." }, { "slug": "HERE_GET_BULKJOBS_VERSION", "name": "Get Bulkjobs Service Version", "description": "Tool to retrieve the current version of the HERE Bulkjobs tracking service. Use when you need to verify the service version number." }, { "slug": "HERE_GET_C2_C_HEALTH", "name": "Get C2C Service Health", "description": "Tool to check HERE C2C service health status. Use when you need to verify if the Car-to-Cloud tracking service is operational." }, { "slug": "HERE_GET_C2_C_VERSION", "name": "Get C2C Service Version", "description": "Tool to get the current version of the HERE C2C tracking service. Use when you need to check the service version for compatibility or monitoring purposes." }, { "slug": "HERE_GET_COPYRIGHT", "name": "Get Copyright", "description": "Tool to retrieve copyright information for HERE map tiles. Returns copyright text, labels, and geographic coverage areas for different map styles and zoom levels. Use when you need to display proper attribution for HERE map tiles in your application." }, { "slug": "HERE_GET_DEPARTURES", "name": "Get Transit Departures", "description": "Tool to get next departures from transit stations. Returns upcoming departures with line information, destination, and real-time delays. Use when you need to find public transit departure times either by station ID or by geographic location." }, { "slug": "HERE_GET_EVENTS_HEALTH", "name": "Get Events Health Status", "description": "Tool to check the health status of the HERE Events API service. Use to verify if the Events API is operational." }, { "slug": "HERE_GET_EVENTS_VERSION", "name": "Get Events Service Version", "description": "Tool to get the current version of the HERE Events service. Use when you need to check the service version for compatibility or monitoring purposes." }, { "slug": "HERE_GET_FEATURES", "name": "Get Features", "description": "Tool to retrieve available map features per style for tile rendering. Use when you need to discover which features (environmental zones, congestion zones, POIs, vehicle restrictions) are supported by different map styles." }, { "slug": "HERE_GET_GEOFENCES_HEALTH", "name": "Get Geofences Health", "description": "Tool to check the health status of the HERE Geofences service. Use when you need to verify if the geofences API is operational before making other requests." }, { "slug": "HERE_GET_GEOFENCES_VERSION", "name": "Get Geofences Service Version", "description": "Tool to get the current version of the HERE Geofences service. Use when you need to check the service version for compatibility or monitoring purposes." }, { "slug": "HERE_GET_HEALTH", "name": "Get Service Health Status", "description": "Tool to check the health status of the HERE Tracking API service. Use when you need to verify if the service is operational and performing as expected." }, { "slug": "HERE_GET_INCIDENTS_BY_ID", "name": "Get Incident By ID", "description": "Tool to get details of a specific traffic incident by its ID. Returns full incident information including description, severity, and affected road segments. Use when you need comprehensive details about a known traffic incident." }, { "slug": "HERE_GET_INFO", "name": "Get Raster Tile API Info", "description": "Tool to get metadata about the HERE Raster Tile API v3. Returns information about accepted values of API parameters including supported image formats, sizes, styles, projections, resources, and zoom level ranges. Use when you need to discover available options before requesting map tiles." }, { "slug": "HERE_GET_ISOLINES", "name": "Get Isolines", "description": "Tool to calculate isolines. Use when you need reachable area polygons based on time, distance, or consumption ranges." }, { "slug": "HERE_GET_LABELS_HEALTH", "name": "Get Labels Service Health", "description": "Tool to check the health status of the HERE Labels service. Use when you need to verify if the labels service is operational." }, { "slug": "HERE_GET_LABELS_VERSION", "name": "Get Labels Service Version", "description": "Tool to retrieve the current version of the HERE Labels service. Use when you need to check the service version for compatibility or debugging purposes." }, { "slug": "HERE_GET_LABEL_TILE", "name": "Get Label Tile", "description": "Retrieves a map tile image with text labels using HERE Raster Tile API v3. Returns map tiles in various styles (day/night, grayscale, terrain) with street names, city names, and POI labels rendered in specified language(s). Use this when you need labeled map imagery at specific tile coordinates and zoom levels for tiled map rendering. Tiles use Web Mercator projection in standard 256x256 or 512x512 pixel sizes." }, { "slug": "HERE_GET_LANGUAGES", "name": "Get Supported Languages", "description": "Tool to retrieve supported languages for map tile labels from HERE Raster Tile API. Use when you need to determine which language options are available for rendering map labels and text on different map layers." }, { "slug": "HERE_GET_LARGEDATA_HEALTH", "name": "Get Largedata Service Health", "description": "Tool to check the health status of the HERE Tracking largedata service. Use to verify service availability before making other largedata API calls." }, { "slug": "HERE_GET_LARGEDATA_VERSION", "name": "Get Largedata Service Version", "description": "Tool to retrieve the current version of the HERE largedata tracking service. Use when you need to verify the service version number." }, { "slug": "HERE_GET_LOCATIONS_HEALTH", "name": "Get Locations Service Health", "description": "Tool to check the health status of HERE's locations tracking service. Use when you need to verify if the locations API is operational and responding correctly." }, { "slug": "HERE_GET_LOCATIONS_VERSION", "name": "Get Locations Service Version", "description": "Tool to retrieve the current version of the HERE Tracking Locations service. Use when you need to check the service version or verify service availability." }, { "slug": "HERE_GET_MAP_IMAGE", "name": "Get Map Image", "description": "Retrieves a static map image from HERE Map Image API v3. Returns a downloadable PNG image with customizable center/zoom, dimensions, style, and overlay markers/shapes. Useful for generating map snapshots for reports, visualizations, or embedding in applications." }, { "slug": "HERE_GET_MAP_TILE_TRANSIT", "name": "Get Map Tile with Transit", "description": "Tool to request a map tile with public transport overlay from HERE Raster Tile API v3. Use when you need street map tiles with transit information displayed (buses, trains, tram lines, etc.). Returns a PNG image with base map and public transport overlays." }, { "slug": "HERE_GET_MATRIX", "name": "Compute Routing Matrix", "description": "Computes routing matrices for batch distance and travel time calculations between multiple origins and destinations. Use this tool when you need to: - Calculate distances/times for all combinations of multiple starting points and destinations - Perform batch routing calculations efficiently (up to 10,000 origins × 10,000 destinations) - Get travel times with traffic considerations (when departureTime is provided) - Optimize delivery routes, logistics planning, or proximity analysis The response returns flat arrays in row-major order where element k represents the route from origin i to destination j, calculated as: k = numDestinations * i + j" }, { "slug": "HERE_GET_MATRIX_MATRIX_ID", "name": "Get Matrix Calculation Result", "description": "Tool to retrieve the result of a successfully completed matrix calculation. Use when you have a matrixId from a previous matrix calculation request and need to fetch the computed distances and travel times." }, { "slug": "HERE_GET_METADATA_HEALTH", "name": "Get Metadata Service Health", "description": "Tool to retrieve the health status of the HERE Tracking metadata service. Use when you need to verify if the service is operational." }, { "slug": "HERE_GET_METADATA_VERSION", "name": "Get Service Version", "description": "Tool to retrieve the current version number of the HERE Tracking service. Use when you need to verify the service version or check API compatibility." }, { "slug": "HERE_GET_META_INFO_TILE", "name": "Get Meta Info Tile (Deprecated)", "description": "DEPRECATED: This action uses HERE Map Tile API v2 which was shut down in Q1 2025. The metainfo/metadata endpoint is not available in the replacement Raster Tile API v3. For tile metadata, consider using HERE Vector Tile API v2 which provides geometric data and metadata in vector format. Original functionality: Retrieve JSON metadata for a specific map tile including information about street labels, POIs, buildings, and other rendered objects without downloading the tile image." }, { "slug": "HERE_GET_NOTIFICATIONS_HEALTH", "name": "Get Notifications Service Health", "description": "Tool to check the health status of the HERE Tracking Notifications service. Use when you need to verify if the notifications service is operational and performing as expected." }, { "slug": "HERE_GET_NOTIFICATIONS_VERSION", "name": "Get Notifications Service Version", "description": "Tool to get the current version of the HERE Notifications service. Use when you need to check the service version for compatibility or monitoring purposes." }, { "slug": "HERE_GET_OPENAPI", "name": "Get OpenAPI Specification", "description": "Tool to retrieve the OpenAPI 3 specification for the HERE Traffic API v7. Use when you need the complete API schema documentation." }, { "slug": "HERE_GET_POLITICAL_VIEWS", "name": "Get Political Views", "description": "Tool to retrieve available geopolitical views for HERE map rendering. Returns a mapping of map resources to supported country-specific boundary representations (ISO 3166-1 alpha-2 codes). Use when you need to determine which political views are available for displaying maps with region-specific boundaries." }, { "slug": "HERE_GET_PROBLEMS_SOLUTION", "name": "Get Tour Planning Solution", "description": "Tool to retrieve the solution for a completed tour planning problem. Returns optimized tours with routes, stops, schedules, and statistics. Use after submitting a problem asynchronously to get the calculated solution." }, { "slug": "HERE_GET_PROFILE", "name": "Get Matrix Routing Profile", "description": "Tool to retrieve a specific matrix routing profile definition by its ID. Use when you need to inspect predefined routing configurations including transport mode, routing optimization, avoid options, and region definitions." }, { "slug": "HERE_GET_PROFILES", "name": "List Matrix Routing Profiles", "description": "Tool to list all supported predefined routing profiles for matrix routing calculations. Use when you need to discover available profiles with their transport modes, routing optimizations, and constraints." }, { "slug": "HERE_GET_REGISTRY_HEALTH", "name": "Get Registry Health", "description": "Tool to check the health status of the HERE Tracking Registry service. Use this to verify if the registry service is operational and responding normally." }, { "slug": "HERE_GET_REGISTRY_VERSION", "name": "Get Registry Service Version", "description": "Tool to get the current version of the HERE Registry service. Use when you need to check the service version for compatibility or monitoring purposes." }, { "slug": "HERE_GET_REPORTS_HEALTH", "name": "Get Service Health Status", "description": "Tool to check the HERE Tracking service health status. Use when you need to verify if the service is operational and performing as expected." }, { "slug": "HERE_GET_RESOURCE_PROJECTION_ZOOM_COLUMN_ROW_FORMAT", "name": "Get Raster Map Tile", "description": "Tool to retrieve a raster map tile image for a specific zoom level, column, and row from HERE Raster Tile API v3. Use when you need to fetch map tiles in various formats (PNG, JPEG) for different resource types (base maps, aerial imagery, traffic overlays, etc.). Supports customization options including language, geopolitical views, styles, and resolution." }, { "slug": "HERE_GET_ROUTES", "name": "Calculate Routes", "description": "Tool to calculate routes between waypoints supporting multiple transport modes (car, truck, pedestrian, bicycle, scooter, taxi, bus). Returns route geometry, turn-by-turn instructions, travel time, and distance. Use when planning navigation or analyzing travel options." }, { "slug": "HERE_GET_RULES_HEALTH", "name": "Get Rules Service Health", "description": "Tool to check the health status of the HERE Tracking Rules service. Use when you need to verify if the Rules API service is operational. Returns a simple health status message." }, { "slug": "HERE_GET_RULES_VERSION", "name": "Get Rules Service Version", "description": "Tool to retrieve the current version of the HERE Tracking Rules service. Use when you need to check the service version for compatibility or debugging purposes." }, { "slug": "HERE_GET_SENSORS_HEALTH", "name": "Get Sensors Health", "description": "Tool to check the health status of the HERE Tracking Sensors service. Use this to verify that the service is operational and performing as expected." }, { "slug": "HERE_GET_SENSORS_VERSION", "name": "Get Sensors Service Version", "description": "Tool to retrieve the current version of the HERE Tracking sensors service. Use when you need to check the service version information." }, { "slug": "HERE_GET_SHADOWS_HEALTH", "name": "Get Shadows Service Health", "description": "Tool to check the health status of the HERE Tracking Shadows service. Use when you need to verify if the shadows service is operational and performing as expected." }, { "slug": "HERE_GET_SHADOWS_VERSION", "name": "Get Shadows Service Version", "description": "Tool to retrieve the current version of the HERE Shadows tracking service. Use when you need to verify the service version number." }, { "slug": "HERE_GET_SHIPMENTS_HEALTH", "name": "Get Shipments Health", "description": "Tool to check the health status of the HERE Shipments service. Use when you need to verify if the tracking service is operational." }, { "slug": "HERE_GET_SHIPMENTS_VERSION", "name": "Get Shipments Service Version", "description": "Tool to get the HERE shipments tracking service version. Use when you need to check the current version of the shipments API service." }, { "slug": "HERE_GET_STATIONS", "name": "Get Transit Stations", "description": "Tool to search for transit stations around a location. Returns station names, locations, and available transit lines. Use when you need to find public transportation stations within a specific area or by station ID." }, { "slug": "HERE_GET_STATUS_STATUS_ID", "name": "Get Tour Planning Job Status", "description": "Check the status of an asynchronous tour planning optimization job. Use when you have submitted a tour planning problem and need to poll for completion. Returns the current status ('pending', 'inProgress', 'success', 'timeout', or 'failure'). When completed successfully, provides resource object with problemId and solution URL." }, { "slug": "HERE_GET_TIMESTAMP", "name": "Get Server Timestamp", "description": "Tool to get the current server timestamp from HERE Tracking API. Use when you need a synchronized Unix epoch timestamp (seconds since 1970-01-01 00:00:00 UTC) from HERE servers." }, { "slug": "HERE_GET_TRACES_HEALTH", "name": "Get Traces Service Health", "description": "Tool to check the health status of the HERE Tracking service. Use when you need to verify if the traces API is operational and performing as expected." }, { "slug": "HERE_GET_TRACES_VERSION", "name": "Get Tracking Service Version", "description": "Tool to retrieve the current version of the HERE Tracking service. Use when you need to check the service version for compatibility or diagnostic purposes." }, { "slug": "HERE_GET_TRAFFIC_FLOW", "name": "Get Traffic Flow", "description": "Tool to retrieve real-time traffic flow data. Use when you need current congestion metrics for a specified area." }, { "slug": "HERE_GET_TRAFFIC_INCIDENTS", "name": "Get Traffic Incidents", "description": "Tool to fetch real-time traffic incidents within a specified area. Use when you need up-to-date incident data for a geographic region." }, { "slug": "HERE_GET_TRAFFIC_TILE", "name": "Get Traffic Tile", "description": "Retrieve a traffic flow overlay tile image showing real-time traffic conditions. Returns a PNG image tile that can be overlaid on maps to visualize traffic speed and congestion. Use this when you need to display traffic flow data for a specific geographic area defined by tile coordinates (zoom, x, y)." }, { "slug": "HERE_GET_USERS_HEALTH", "name": "Get Users Service Health", "description": "Tool to check the HERE Tracking Users API service health status. Use this to verify that the service is operational before making other API calls." }, { "slug": "HERE_GET_USERS_VERSION", "name": "Get Users Service Version", "description": "Tool to get the current version of the HERE tracking service. Use when you need to verify the service version or check service availability." }, { "slug": "HERE_GET_VECTOR_TILE", "name": "Get Vector Tile", "description": "Retrieves protocol buffer encoded binary vector tiles using HERE Vector Tile API v2. Returns map tiles in OMV (Optimized Map for Visualization) format following the Map Vector Tile open specification. Use this when you need vector tile data at specific tile coordinates and zoom levels for client-side map rendering. Supports layer exclusion and conditional requests via ETags." }, { "slug": "HERE_GET_VECTORTILE_DOCS_LAYERS_JSON", "name": "Get Vector Tiles Layers Documentation", "description": "Tool to retrieve OMV-2 layers documentation for HERE Vector Tiles. Returns comprehensive schema documentation including layer definitions, geometry types, field names, and possible values in TileJSON 3.0.0 format. Use when you need to understand the data structure of vector tiles before requesting or processing them." }, { "slug": "HERE_GET_VECTORTILES_COPYRIGHT", "name": "Get Vector Tiles Copyright", "description": "Tool to retrieve copyright information for HERE vector tiles. Returns copyright labels, alt text, zoom level ranges, and bounding boxes for both base and core map layers. Use when you need to display proper copyright attribution for vector tile maps." }, { "slug": "HERE_GET_VECTORTILES_INFO", "name": "Get Vector Tiles Info", "description": "Tool to retrieve the current map version from HERE Vector Tiles Service. Use when you need the encoded map version identifier, which is valid for 24 hours and must be refreshed after that period." }, { "slug": "HERE_GET_VECTORTILES_LANGUAGES", "name": "Get Vector Tiles Languages", "description": "Tool to retrieve supported languages for vector map tiles from HERE Vector Tiles API. Use when you need to determine which language options are available for rendering vector map labels and text on different layers (base, core)." }, { "slug": "HERE_GET_VECTORTILES_OPENAPI", "name": "Get Vector Tiles OpenAPI Specification", "description": "Tool to retrieve the OpenAPI specification for the HERE Vector Tiles API v2. Use when you need the complete API schema documentation for vector tile endpoints." }, { "slug": "HERE_GET_VECTORTILES_PROTO", "name": "Get Vector Tiles Proto Formats", "description": "Tool to retrieve a list of available protocol buffer formats from HERE Vector Tiles Service. Use when you need to discover available proto file formats for subsequent requests." }, { "slug": "HERE_GET_VECTORTILES_PROTO_NAME", "name": "Get Vector Tiles Proto File", "description": "Tool to retrieve protocol buffer (.proto) file format definitions from HERE Vector Tiles API. Returns the specified .proto file that defines the data structure for vector tiles. Use when you need the protocol buffer schema to parse or understand the binary vector tile format." }, { "slug": "HERE_GET_VECTORTILES_PVIEWS", "name": "Get Vector Tiles Political Views", "description": "Tool to retrieve available political views for HERE vector tiles. Returns lists of country codes that have disputed territories in base and core map data. Use when you need to determine which political view codes are valid for the 'pview' parameter in tile requests." }, { "slug": "HERE_GET_VERSION", "name": "Get Version", "description": "Tool to retrieve the version information of the HERE Traffic API. Use when you need to check the current API version or service version." }, { "slug": "HERE_GET_WAYPOINT_SEQUENCE", "name": "Get Waypoint Sequence", "description": "Optimizes the visit order of multiple waypoints between a fixed origin and destination. Returns the most efficient sequence to visit all intermediate points, minimizing either travel time or distance. Useful for delivery routing, tour planning, and multi-stop journey optimization." }, { "slug": "HERE_GET_WEATHER_FORECAST_DAILY", "name": "Daily Weather Forecast", "description": "Get 7-day weather forecasts for any location worldwide. Returns either detailed segment-level forecasts (morning/afternoon/evening/night) or simplified daily summaries. Supports location queries by city name, coordinates, or U.S. ZIP codes. Use 'forecast7days' for comprehensive weather planning, 'forecast7daysSimple' for quick daily overview." }, { "slug": "HERE_GET_WEATHER_OBSERVATION", "name": "Get Weather Observation", "description": "Tool to retrieve current weather observation. Use after determining a specific location to get up-to-date weather conditions." }, { "slug": "HERE_IMPORT_ROUTE", "name": "Import Route from Trace", "description": "Tool to import and calculate a route from GPS trace points. Accepts a polyline of coordinates and returns routing information including traffic delays, turn-by-turn instructions, and actions. Use when you need to convert a sequence of GPS coordinates into a structured route with navigation details." }, { "slug": "HERE_LOCATE_DEVICE", "name": "Locate Device", "description": "Determine device location based on WiFi and cellular network measurements. Supports 2G/3G/4G/5G cellular (GSM, WCDMA, TD-SCDMA, LTE, CDMA) and WLAN positioning. Use when you need to locate a device using network infrastructure data instead of GPS. At least one network measurement type must be provided." }, { "slug": "HERE_LOOKUP", "name": "Lookup Location by HERE ID", "description": "Retrieves comprehensive details for a location using its HERE ID. Returns structured data including address, coordinates, categories, contacts, and references. Use this action when you have a HERE ID from geocoding, search, or discovery actions and need complete information about that specific location. Supports both place IDs and address IDs." }, { "slug": "HERE_POST_ROUTES", "name": "Calculate Routes via POST", "description": "Calculate routes using POST method with extensive customization options via request body. Supports car, truck, pedestrian, bicycle, scooter, taxi, and bus modes. Use when you need to avoid specific areas/segments, specify EV preferences, or set speed restrictions that exceed URL length limits." }, { "slug": "HERE_REVERSE_GEOCODE", "name": "Reverse Geocode Coordinates", "description": "Converts geographic coordinates (latitude, longitude) into human-readable addresses and location details. Use this tool when you need to: - Find the street address for a specific GPS coordinate - Identify what place or building is at a location - Get detailed address components (street, city, postal code, country) - Determine timezone information for coordinates Returns structured address data including full labels, administrative divisions, and distance from query point. Supports worldwide coverage with responses in multiple languages." }, { "slug": "HERE_SUBMIT_TOUR_PLANNING_PROBLEM", "name": "Submit Tour Planning Problem", "description": "Submit a tour planning problem synchronously to solve vehicle routing problems with constraints like time windows, capacity, and vehicle types. Returns optimized tours for the fleet with routes, schedules, and statistics. Use when you need to optimize delivery/pickup routes for multiple vehicles." }, { "slug": "HERE_SUBMIT_TOUR_PLANNING_PROBLEM_ASYNC", "name": "Submit Tour Planning Problem (Async)", "description": "Submit a tour planning problem asynchronously for large-scale vehicle routing optimization. Returns a status ID to poll for results. Use this for complex problems with multiple vehicles, jobs, and constraints. Supports up to 3000 jobs and 150 vehicle types." }, { "slug": "HERE_WEATHER_ALERTS", "name": "Weather Alerts", "description": "Retrieve severe weather alerts for specified locations or routes. This tool queries the HERE Weather API to get active weather alerts including severe weather warnings, watches, and advisories. Supports multiple location inputs: - q: Free-text location query (e.g., 'Berlin, Germany', 'New York') - location: Precise coordinates in 'lat,lng' format (e.g., '52.5200,13.4050') - zipCode: US ZIP code (e.g., '10001') Optional parameters: - units: 'metric' or 'imperial' for measurement units - lang: Language code for alert descriptions (e.g., 'en-US', 'de-DE') - politicalView: ISO country code for disputed territory representation Returns alert information including location, severity, type, and time segments when alerts are active. Empty timeSegments list indicates no active alerts." }, { "slug": "HERE_WEATHER_ASTRONOMY", "name": "Get Astronomy Forecast", "description": "Tool to fetch astronomical data (sunrise, sunset) for a specific location. Use when you need daily sun and moon event times." }, { "slug": "HERE_WEATHER_FORECAST_HOURLY", "name": "Hourly Weather Forecast", "description": "Tool to fetch hourly weather forecasts. Use when you need up to 48 hours of forecast data for a location." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "here_technologies_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "HERE API Endpoint Base URL", "type": "string", "description": "The base URL of the HERE API endpoint you are accessing. Example: https://geocode.search.hereapi.com/v1", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "HERE API Key", "type": "string", "description": "The API key provided by HERE Technologies for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hex", "name": "Hex", "logo": "https://logos.composio.dev/api/hex", "description": "Hex is a collaborative data workspace that combines SQL, Python, and R notebooks for analytics and data science", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEX_CANCEL_RUN", "name": "Cancel Run", "description": "Tool to cancel a project run that is in progress. Use when you need to stop a currently executing Hex project run before it completes." }, { "slug": "HEX_CREATE_CELL", "name": "Create Cell", "description": "Tool to create a new cell in the draft version of a Hex project. Use when adding CODE or SQL cells to a project. Only CODE and SQL cell types are supported. Requires EDIT_PROJECT_CONTENTS permission." }, { "slug": "HEX_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection in the Hex workspace. Use when you need to organize projects and resources into a collection." }, { "slug": "HEX_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in the Hex workspace. Use when you need to organize users into groups for collaboration and access control." }, { "slug": "HEX_DEACTIVATE_USER", "name": "Deactivate User", "description": "Deactivates a user in the Hex workspace. Use this when you need to deactivate a user by their ID." }, { "slug": "HEX_DELETE_CELL", "name": "Delete Cell", "description": "Permanently delete a cell from the draft version of a project. Requires EDIT_PROJECT_CONTENTS permission. Use when you need to remove a cell from a Hex project's draft." }, { "slug": "HEX_DELETE_GROUP", "name": "Delete Group", "description": "Deletes a group from the Hex workspace. Use this when you need to permanently remove a group by its ID." }, { "slug": "HEX_DELETE_GUIDE_DRAFT", "name": "Delete Guide Draft", "description": "Deletes a guide draft by ID from Hex. Use this when you need to permanently remove a draft guide." }, { "slug": "HEX_EDIT_COLLECTION", "name": "Edit Collection", "description": "Tool to edit a collection's name, description, and sharing settings in Hex. Use when you need to update collection metadata or change sharing permissions." }, { "slug": "HEX_EDIT_GROUP", "name": "Edit Group", "description": "Tool to edit a group's name and/or members in Hex. Use when you need to update group details, add users to a group, or remove users from a group." }, { "slug": "HEX_EDIT_PROJECT_SHARING_COLLECTIONS", "name": "Edit Project Sharing Collections", "description": "Tool to add a project to collections or remove it from collections. Use when you need to update project sharing by adding or modifying collection access. Workspace tokens need Collections -> Write access scope in addition to Projects -> Write access scope." }, { "slug": "HEX_EDIT_PROJECT_SHARING_GROUPS", "name": "Edit Project Sharing Groups", "description": "Tool to edit project sharing settings for groups in Hex. Use when you need to add or modify group access to a project. Supports up to 25 groups per request." }, { "slug": "HEX_EDIT_PROJECT_SHARING_ORG_AND_PUBLIC", "name": "Edit Project Sharing Settings", "description": "Tool to edit project sharing settings for workspace members and public web access. Use when you need to control who can access a Hex project and what permissions they have." }, { "slug": "HEX_EDIT_PROJECT_SHARING_USERS", "name": "Edit Project Sharing Users", "description": "Tool to edit project sharing settings for individual users in Hex. Add or modify user access to a project by specifying access levels (NONE, APP_ONLY, CAN_VIEW, CAN_EDIT, FULL_ACCESS). Use when you need to grant or update project permissions for specific users. Maximum 25 users per request." }, { "slug": "HEX_GET_CELL", "name": "Get Cell", "description": "Tool to get a single cell by ID from the draft version of a Hex project. Use when you need to retrieve cell details including source contents for CODE and SQL cells. Returns complete cell information including cell type, contents, and associated metadata." }, { "slug": "HEX_GET_COLLECTION", "name": "Get collection", "description": "Tool to get information about a specific collection in Hex. Returns collection details including name, description, creator, and sharing settings. Use when you need to retrieve metadata about a collection by its ID." }, { "slug": "HEX_GET_GROUP", "name": "Get Group", "description": "Tool to retrieve information about a specific Hex group. Use when you need to get details about a group including its ID, name, and creation date." }, { "slug": "HEX_GET_PROJECT", "name": "Get Project", "description": "Tool to get metadata about a single Hex project. Use when you need to retrieve project details including title, description, creator, owner, status, categories, analytics, schedules, and sharing information." }, { "slug": "HEX_GET_PROJECT_RUNS", "name": "Get Project Runs", "description": "Tool to retrieve the status of API-triggered runs for a specific Hex project. Use when you need to check the execution status, timing, or history of project runs. Returns a paginated list of runs with detailed status information." }, { "slug": "HEX_GET_RUN_CHART_IMAGE", "name": "Get Run Chart Image", "description": "Tool to retrieve a rendered chart image from a Hex project run. Use when you need to get a visual representation of a chart cell from a completed run. Only supports chart-type cells that have executed successfully without errors. Rate limited to 20 requests per minute." }, { "slug": "HEX_GET_RUN_STATUS", "name": "Get Run Status", "description": "Tool to retrieve the status of a specific Hex project run. Use when you need to check the current state, timing, or completion status of a project execution. Returns detailed information including start/end times, elapsed time, status, and notification details." }, { "slug": "HEX_LIST_CELLS", "name": "List Cells", "description": "Tool to list all cells from the draft version of a Hex project. Use when you need to retrieve cells with source code for SQL and CODE cells. Returns paginated results with cell details including type, label, and contents." }, { "slug": "HEX_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to retrieve all collections in the workspace with pagination support. Use when you need to list or discover available collections." }, { "slug": "HEX_LIST_DATA_CONNECTIONS", "name": "List Data Connections", "description": "Tool to list all data connections in the Hex workspace with pagination support. Use when you need to retrieve, browse, or audit data connections configured in Hex. Supports filtering by sort criteria and cursor-based pagination for large result sets." }, { "slug": "HEX_LIST_GROUPS", "name": "List groups", "description": "Tool to list all groups in the Hex workspace with pagination support. Use when you need to retrieve groups with optional sorting and pagination." }, { "slug": "HEX_LIST_PROJECTS", "name": "List Hex Projects", "description": "Tool to list all viewable Hex projects with pagination and filtering support. Use when you need to retrieve projects sorted by creation date or filter by status, categories, creator, owner, or collection." }, { "slug": "HEX_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the Hex workspace with pagination support. Returns user details including names, emails, roles, and last login dates. Use when you need to retrieve users, filter by group, or paginate through large user lists." }, { "slug": "HEX_PUBLISH_GUIDE_DRAFTS", "name": "Publish Guide Drafts", "description": "Tool to publish all currently drafted guides or specific guides by ID. Use when you need to make draft guides publicly available. Specify either publishAllDraftGuides=true or provide specific guide IDs." }, { "slug": "HEX_RUN_PROJECT", "name": "Run Project", "description": "Tool to trigger a run of the latest published version of a Hex project. Use when you need to execute a project programmatically. Rate limited to 20 requests per minute and 60 requests per hour." }, { "slug": "HEX_UPDATE_CELL", "name": "Update Cell", "description": "Tool to update a cell's source code and/or data connection in Hex. Use when you need to modify the contents of a code cell or SQL cell. Requires EDIT_PROJECT_CONTENTS permission." }, { "slug": "HEX_UPDATE_PROJECT", "name": "Update Project Status", "description": "Tool to add or remove a status (including endorsements) from a Hex project. Use when you need to update the project's status or remove an existing status by setting it to null." }, { "slug": "HEX_UPSERT_GUIDE_DRAFT", "name": "Upsert Guide Draft", "description": "Tool to update or create guide drafts by filePath. Creates a new guide if it doesn't exist, creates a draft if the guide exists without a draft, or updates an existing draft. Use when you need to programmatically manage guide content in Hex." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hex_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Personal Access Token (hxtp_) or Workspace Token (hxtw_). Create from Hex User Settings > API keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "heyreach", "name": "Heyreach", "logo": "https://logos.composio.dev/api/heyreach", "description": "HeyReach is a multichannel outreach platform designed to help businesses and professionals engage with their audience effectively.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEYREACH_ADD_LEADS_TO_LIST_V2", "name": "Add Leads To List V2", "description": "Tool to add leads to a lead list in HeyReach for LinkedIn campaigns. Accepts up to 100 leads per request and returns counts of added, updated, and failed leads." }, { "slug": "HEYREACH_CHECK_API_KEY", "name": "Check API Key", "description": "Tool to check if the API key is valid. Use before making other API calls to confirm authentication." }, { "slug": "HEYREACH_CREATE_EMPTY_LIST", "name": "Create Empty List", "description": "Tool to create an empty list. Use after deciding on the list name and type." }, { "slug": "HEYREACH_CREATE_TAGS", "name": "Create Tags", "description": "Tool to create one or multiple tags for your workspace. Use when you need to organize leads with custom labels." }, { "slug": "HEYREACH_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook. Use when you need programmatic callbacks for HeyReach events after confirming a valid API key." }, { "slug": "HEYREACH_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook. Use when you need to remove callbacks for outdated or unwanted webhooks." }, { "slug": "HEYREACH_GET_ALL_CAMPAIGNS", "name": "Get All Campaigns", "description": "Tool to retrieve all campaigns. Use when you need a paginated list of campaigns for management or reporting." }, { "slug": "HEYREACH_GET_ALL_LEADS", "name": "Get All Leads", "description": "Tool to retrieve all leads in a HeyReach list. Use when you need paginated collection of leads after confirming a valid API key." }, { "slug": "HEYREACH_GET_ALL_LINKEDIN_ACCOUNTS", "name": "Get All LinkedIn Accounts", "description": "Tool to retrieve all LinkedIn accounts. Use when you need a paginated list of LinkedIn accounts after confirming a valid API key." }, { "slug": "HEYREACH_GET_ALL_LISTS", "name": "Get All Lists", "description": "Tool to retrieve all lists. Use when you need a paginated list of lists after confirming a valid API key." }, { "slug": "HEYREACH_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to retrieve all webhooks. Use when you need a paginated collection of webhooks after confirming a valid API key." }, { "slug": "HEYREACH_GET_COMPANIES_FROM_LIST", "name": "Get Companies From List", "description": "Tool to get companies from a company list. Use when you need a paginated list of companies after specifying a list ID." }, { "slug": "HEYREACH_GET_CONVERSATIONS_V2", "name": "Get Conversations V2", "description": "Tool to retrieve paginated LinkedIn conversations with advanced filters. Use when you need to fetch inbox conversations filtered by lead or profile details." }, { "slug": "HEYREACH_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve detailed information for a lead by profile URL. Use after obtaining the exact LinkedIn profile URL to fetch full lead details." }, { "slug": "HEYREACH_GET_LISTS_FOR_LEAD", "name": "Get Lists For Lead", "description": "Tool to retrieve all lists that contain a specific lead by profile URL. Use when you need to find which lists a lead belongs to." }, { "slug": "HEYREACH_GET_MY_NETWORK_FOR_SENDER", "name": "Get My Network for Sender", "description": "Tool to get the LinkedIn network for a specified sender account. Use when you need to retrieve paginated connections for a sender." }, { "slug": "HEYREACH_GET_OVERALL_STATS", "name": "Get Overall Stats", "description": "Tool to get overall statistics for LinkedIn accounts and campaigns. Use when you need performance metrics including connection requests, messages, replies, and engagement rates for specified date ranges." }, { "slug": "HEYREACH_GET_WEBHOOK_BY_ID", "name": "Get Webhook By ID", "description": "Tool to retrieve a webhook by its ID. Use when you need detailed configuration of a specific webhook after listing or creating it." }, { "slug": "HEYREACH_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook’s configuration. Use when you need to modify a webhook's name, URL, event type, campaigns, or activation status after confirming the webhookId." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "heyreach_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HeyReach API Key", "type": "string", "description": "The API key used to authenticate requests to the HeyReach API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "heyy", "name": "Heyy", "logo": "https://logos.composio.dev/api/heyy", "description": "Connect with your customers on Whatsapp, SMS, Messenger and Instagram using automation.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEYY_CREATE_ATTRIBUTE", "name": "Create Contact Attribute", "description": "Tool to create a new custom attribute for contacts in Heyy. Use when you need to add custom fields to track additional information about contacts, such as customer segments, preferences, or custom identifiers." }, { "slug": "HEYY_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Heyy with optional details including first name, last name, email, phone number, labels, and custom attributes. Use when you need to add a new contact to your Heyy account." }, { "slug": "HEYY_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new label for categorizing contacts in Heyy. Use when you need to organize contacts into categories or groups." }, { "slug": "HEYY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for receiving event notifications across multiple channels. Use when you need to set up real-time event notifications for messages." }, { "slug": "HEYY_DELETE_ATTRIBUTE", "name": "Delete Attribute", "description": "Tool to delete an attribute by its unique identifier. Use when you need to remove an attribute from the system." }, { "slug": "HEYY_DELETE_LABEL", "name": "Delete Label", "description": "Tool to delete a label by its unique identifier. Use when you need to remove a label from the system." }, { "slug": "HEYY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its unique identifier. Use when you need to remove a webhook from Heyy." }, { "slug": "HEYY_LIST_ATTRIBUTES", "name": "List Attributes", "description": "Tool to retrieve all attributes available in the Heyy system. Use when you need to get a list of all attributes with their properties and visibility settings." }, { "slug": "HEYY_LIST_AUTOMATIONS", "name": "List Automations", "description": "Tool to retrieve automation workflows for a specified channel. Use when you need to get all workflows configured for a channel." }, { "slug": "HEYY_LIST_CHANNELS", "name": "List Channels", "description": "Tool to retrieve all available channels from the Heyy system. Use when you need to get a complete list of channels with their details including name, type, status, and timestamps." }, { "slug": "HEYY_LIST_MESSAGE_TEMPLATES", "name": "List Message Templates", "description": "Tool to retrieve all message templates available in the Heyy system. Use when you need to view all existing templates for messaging." }, { "slug": "HEYY_LIST_WEBHOOKS", "name": "List API Webhooks", "description": "Tool to retrieve all API webhooks configured for the account. Use when you need to inspect or manage webhook configurations." }, { "slug": "HEYY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a webhook's URL and active status. Use when you need to modify an existing webhook's endpoint or enable/disable it." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "heyy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "To get your API Key, sign in to Heyy Hub and go to Settings > Developers > API Keys (https://hub.hey-y.io/settings/api-keys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "heyzine", "name": "Heyzine", "logo": "https://heyzine.com/favicon.ico", "description": "Heyzine is a flipbook maker that converts PDFs into interactive, customizable digital publications with various page flip effects.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HEYZINE_CREATE_FLIPBOOK_LINK", "name": "Create Flipbook Link", "description": "Tool to create a direct flipbook link. Use when you have a document URL and want to convert it to a flipbook." }, { "slug": "HEYZINE_CREATE_FLIPBOOK_REST_ASYNC", "name": "Create Flipbook Asynchronously", "description": "Tool to create a flipbook asynchronously. Use when converting large documents off-thread; poll for updates on conversion state." }, { "slug": "HEYZINE_CREATE_FLIPBOOK_REST_SYNC", "name": "Create Flipbook Sync", "description": "Tool to convert a PDF, DOCX, or PPTX into a flipbook synchronously via REST API. Use when you need immediate flipbook URLs from a direct file link." }, { "slug": "HEYZINE_DELETE_FLIPBOOK", "name": "Delete Flipbook", "description": "Tool to delete a flipbook. Use when you need to permanently remove an unwanted flipbook." }, { "slug": "HEYZINE_GET_API_LIMITS", "name": "Get API Limits", "description": "Tool to retrieve API rate limits. Use when you need to check your current API usage and limits." }, { "slug": "HEYZINE_GET_FLIPBOOK_ID_TOOL", "name": "Get Flipbook ID Tool", "description": "Tool to retrieve HTML for Flipbook ID tool. Use when you need to fetch the ID input tool page HTML for a specific flipbook." }, { "slug": "HEYZINE_GET_FLIPBOOK_LIST", "name": "Get Flipbook List", "description": "Tool to retrieve all flipbooks. Use when you need to list every flipbook for the authenticated account." }, { "slug": "HEYZINE_GET_FLIPBOOK_SOCIAL_METADATA", "name": "Get Flipbook Social Metadata", "description": "Tool to retrieve social metadata for a specific flipbook. Use after configuring social sharing to fetch title, description, and thumbnail." }, { "slug": "HEYZINE_GET_J_QUERY_PLUGIN", "name": "Get jQuery Plugin", "description": "Tool to retrieve the Heyzine jQuery plugin script URL and usage snippet. Use when you need to integrate Heyzine flipbooks via jQuery on your website." }, { "slug": "HEYZINE_SETUP_WEBHOOKS", "name": "Setup Heyzine Webhooks", "description": "Helper tool to validate prerequisites for Heyzine webhooks. Heyzine does not expose an API to programmatically configure webhooks; this action verifies API connectivity and returns clear guidance to complete configuration in the Heyzine UI." }, { "slug": "HEYZINE_UPDATE_FLIPBOOK_ACCESS_LIST", "name": "Update Flipbook Access List", "description": "Tool to update the access list of a flipbook. Use when replacing all user access permissions in bulk." }, { "slug": "HEYZINE_UPDATE_FLIPBOOK_PASSWORD_PROTECTION", "name": "Update Flipbook Password Protection", "description": "Tool to update flipbook password protection settings. Use when you need to change or disable password protection for a flipbook." }, { "slug": "HEYZINE_UPDATE_FLIPBOOK_SOCIAL_METADATA", "name": "Update Flipbook Social Metadata", "description": "Tool to update a flipbook's social metadata. Use when you need to change title, description, or thumbnail for social sharing." }, { "slug": "HEYZINE_WEBHOOKS_LEADS", "name": "Heyzine Webhooks - Leads", "description": "Tool to receive webhook events when new leads are collected on a flipbook form. Use after configuring your Heyzine account Webhooks > Leads URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "heyzine_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Heyzine API Key", "type": "string", "description": "The API key used for authenticating requests to the Heyzine API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "higgsfield", "name": "Higgsfield", "logo": "https://logos.composio.dev/api/higgsfield", "description": "AI-powered video generation platform for creating high-quality videos from text and images", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HIGGSFIELD_CANCEL_REQUEST", "name": "Cancel Request", "description": "Cancel a pending Higgsfield generation request. Use this to stop a request that is still queued or in progress. Returns success if the request was cancelled, or an error if the request has already completed or failed." }, { "slug": "HIGGSFIELD_GENERATE", "name": "Generate Content", "description": "Generate images or videos using Higgsfield AI models. Submit a prompt along with a model ID to create AI-generated content. The request is processed asynchronously - use HIGGSFIELD_GET_REQUEST_STATUS with the returned request_id to check progress and retrieve results." }, { "slug": "HIGGSFIELD_GET_REQUEST_STATUS", "name": "Get Request Status", "description": "Get the status of a Higgsfield generation request. Returns the current status (queued, in_progress, completed, failed, or nsfw) along with result URLs when generation is complete. Use this after calling HIGGSFIELD_GENERATE to check progress and retrieve generated content." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "higgsfield_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Higgsfield API Key (KEY_ID) - get from https://cloud.higgsfield.ai/", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret", "type": "string", "description": "Your Higgsfield API Secret (KEY_SECRET) - get from https://cloud.higgsfield.ai/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "highergov", "name": "Highergov", "logo": "https://www.highergov.com/favicon.ico", "description": "HigherGov is a market intelligence platform providing comprehensive data on U.S. federal, state, and local government contracts and grants.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HIGHERGOV_GET_AGENCIES", "name": "Get Agencies", "description": "Retrieves government agency information from the HigherGov database with pagination support. Use this tool to: - List all federal agencies with details like name, abbreviation, type, and hierarchy - Search for a specific agency by its unique agency_key identifier - Navigate through paginated results of agencies (28,000+ agencies available) The response includes agency hierarchy levels (level_1 through level_7) showing parent-child relationships between agencies, along with pagination metadata for browsing through results." }, { "slug": "HIGHERGOV_GET_CONTRACTS", "name": "Get Contracts", "description": "Retrieve federal government contract data from HigherGov. Returns paginated list of contracts with details including awardees, agencies, amounts, dates, NAICS/PSC codes, and performance information. Supports filtering by date, search criteria, award ID, awardee, agency, industry codes, and more. Data updates daily by 2am for two days prior." }, { "slug": "HIGHERGOV_GET_CONTRACT_VEHICLES", "name": "Get Contract Vehicles", "description": "Retrieve federal multi-award contract vehicles from HigherGov. Contract vehicles are pre-established contracting mechanisms that streamline procurement. Use this to list available vehicles with optional filtering by vehicle key and sorting by award date. Supports pagination with up to 100 records per page. Updated ad hoc as new awards are made." }, { "slug": "HIGHERGOV_GET_DOCUMENTS", "name": "Get Documents", "description": "Retrieve document metadata and download URLs for files associated with government opportunities, contracts, and grants from HigherGov. **When to use:** After calling Get Opportunities, Get Contracts, or Get Grants, use this tool to fetch the actual documents (RFPs, amendments, attachments, etc.) associated with those records. **How to use:** 1. First call Get Opportunities, Get Contracts, or Get Grants 2. Extract the 'document_path' field from the response 3. Parse the 'related_key' parameter from that document_path URL 4. Pass that related_key to this tool to retrieve the documents **Important notes:** - Download URLs expire after 60 minutes; retrieve new URLs by calling this endpoint again - Some opportunities/contracts/grants may have no associated documents (returns empty results) - Results are paginated; use page and page_size parameters for large document sets" }, { "slug": "HIGHERGOV_GET_GRANT_HISTORY", "name": "Get Grant History", "description": "Tool to fetch historical data on grants from the HigherGov API. REQUIRED: At least one filter parameter (award_id or last_modified_date) must be provided. Use cases: - Retrieve history for a specific grant by award_id - Retrieve grants modified since a specific date using last_modified_date - Paginate through results using page and page_size parameters" }, { "slug": "HIGHERGOV_GET_GRANT_OPPORTUNITIES", "name": "Get Grant Opportunities", "description": "Retrieve government grant and contract opportunities from HigherGov. Returns Federal contracts, SLED (State/Local) opportunities, grants, and SBIR opportunities with comprehensive details including agency info, dates, contacts, and award estimates. Use this when you need to: - Find government opportunities by date (posted_date or captured_date recommended) - Search for opportunities with specific keywords - Filter opportunities by agency, status, or other criteria - Get detailed opportunity information including contact details and documents REQUIRED: Must provide at least one filter (posted_date, captured_date, search_id, source_id, agency_key, opp_key, or version_key). For best results, use posted_date or captured_date with optional keyword filtering." }, { "slug": "HIGHERGOV_GET_GRANT_PROGRAMS", "name": "Get Grant Programs", "description": "Tool to retrieve information on grant programs. Use when you need to list available grant programs with pagination." }, { "slug": "HIGHERGOV_GET_NAICS", "name": "Get NAICS Codes", "description": "Retrieve NAICS (North American Industry Classification System) codes with detailed descriptions. Returns a paginated list of NAICS codes that can be filtered by code prefix and sorted. Useful for finding industry classifications, understanding NAICS hierarchies, and identifying relevant codes for business categorization." }, { "slug": "HIGHERGOV_GET_OPPORTUNITY_HISTORY", "name": "Get Opportunity History", "description": "Retrieve historical opportunity data from HigherGov with pagination support. This tool requires at least one identifying filter (captured_date, opp_key, version_key, search_id, posted_date, source_id, or agency_key). Most commonly used with captured_date to get all opportunities from a specific date, optionally filtered by source_type ('sam' or 'sled'). Returns paginated results with comprehensive opportunity details including title, description, agency, dates, contact information, and links to documents." }, { "slug": "HIGHERGOV_GET_PEOPLE", "name": "Get People", "description": "Retrieves contact information for federal and state/local government personnel from HigherGov. Returns detailed contact records including names, titles, emails, phone numbers, and affiliated agencies. Data is updated in real-time. Use this to find government contacts, especially when you have an email address or need to browse through personnel listings. Common use cases: - Find contact details for a specific government employee by email - Browse government personnel with pagination - Get the most recently updated contacts using ordering" }, { "slug": "HIGHERGOV_GET_PSC", "name": "Get Product and Service Codes", "description": "Tool to retrieve information on Product and Service Codes. Use when fetching PSC entries with optional pagination and filtering by code." }, { "slug": "HIGHERGOV_GET_PURSUITS", "name": "Get Pursuits", "description": "Tool to retrieve user-specific pursuits. Use when you need to fetch a user's pursuits with optional filtering by status and pagination." }, { "slug": "HIGHERGOV_GET_SBIR_OPPORTUNITIES", "name": "Get SBIR Opportunities", "description": "Retrieve SBIR (Small Business Innovation Research) opportunities from HigherGov. SBIR is a U.S. government program that provides funding to small businesses for research and development with commercialization potential. This action retrieves SBIR opportunities from federal agencies. By default, retrieves opportunities captured since 2024-01-01. Use filters to narrow results by specific dates, agencies, or opportunity identifiers. Supports pagination for large result sets. Key use cases: - Find recent SBIR opportunities for a specific federal agency - Track SBIR opportunities by capture/posting dates - Retrieve details for specific SBIR opportunities by ID - Monitor new SBIR opportunities added to the system Note: At least one filter parameter (captured_date, posted_date, search_id, source_id, agency_key, opp_key, or version_key) is required by the API. The action provides captured_date with a sensible default." }, { "slug": "HIGHERGOV_GET_SLED_CONTRACT_OPPORTUNITIES", "name": "Get SLED Contract Opportunities", "description": "Tool to retrieve state and local (SLED) contract opportunities. Uses the general Opportunity endpoint with optional filters." }, { "slug": "HIGHERGOV_GET_SUBCONTRACT_AWARDS", "name": "Get Subcontract Awards", "description": "Retrieves federal subcontract award data from HigherGov. Returns paginated subcontract records with details about subcontract recipients, amounts, prime contracts, and awarding agencies. **Important**: At least one filter parameter (last_modified_date or search_id) is required by the API. Use this when you need to: - Find subcontracts modified on a specific date - List subcontracts from a saved HigherGov search - Access detailed subcontract award information including recipient details and prime contract relationships Data is updated weekly. Use the last_modified_date field to track updates." }, { "slug": "HIGHERGOV_GET_SUBGRANT_AWARDS", "name": "Get Subgrant Awards", "description": "Retrieves federal subgrant award data from HigherGov. Returns paginated subgrant records with details about subgrant recipients, funding amounts, associated prime grants, and program information. **Important**: At least one filter parameter (last_modified_date or search_id) is required by the API. Use this when you need to: - Find subgrant awards modified on a specific date - List subgrant awards from a saved HigherGov search - Access detailed subgrant award information including recipient details and prime grant relationships Data is updated regularly. Use the last_modified_date field to track updates." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "highergov_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HigherGov API Key", "type": "string", "description": "The API key provided by HigherGov for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "honeybadger", "name": "Honeybadger", "logo": "https://logos.composio.dev/api/honeybadger", "description": "Honeybadger is an error tracking and application performance monitoring service for developers.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HONEYBADGER_REPORT_CHECK_IN", "name": "Report Check-In", "description": "Reports a check-in (ping) to Honeybadger for uptime monitoring. Check-ins are used to monitor scheduled tasks, cron jobs, and background processes. By pinging this endpoint regularly, you signal that your task is running on schedule. If Honeybadger doesn't receive a ping within the expected timeframe, it will alert you that the task may have failed or stopped running. Use this action at the end of successful task executions to notify Honeybadger the task completed as expected." }, { "slug": "HONEYBADGER_REPORT_CHECK_IN_WITH_PAYLOAD", "name": "Report Check-In With Payload", "description": "Report a check-in with additional payload data to Honeybadger. Use when monitoring scheduled tasks or cron jobs and need to send metrics, status, or metadata (up to 20KB)." }, { "slug": "HONEYBADGER_REPORT_DEPLOYMENT", "name": "Report Deployment", "description": "Report a new deployment to Honeybadger for deployment tracking and error correlation. Use this tool after deploying code to notify Honeybadger, which allows you to: - Track deployment history on your project's Deployments page - Correlate errors with specific deployments - Automatically resolve errors when deploying to an environment All deployment fields are optional, but providing environment and revision is recommended for better tracking." }, { "slug": "HONEYBADGER_REPORT_EVENT", "name": "Report Event", "description": "Send custom events to Honeybadger Insights for tracking, monitoring, and analytics. Use this action to record any structured event data such as: - User activity and behavioral events (logins, page views, feature usage) - Application errors and exceptions with context - Performance metrics and timing data - Custom business events and audit trails - System health and operational metrics Events are sent as newline-delimited JSON (NDJSON) and can include any custom fields. The API returns tracking IDs for each successfully recorded event." }, { "slug": "HONEYBADGER_REPORT_EXCEPTION", "name": "Report Exception", "description": "Tool to report an exception notice to Honeybadger. Use when sending error details (stack trace, context) for diagnostics." }, { "slug": "HONEYBADGER_UPLOAD_FILE_TO_S3", "name": "Upload File to S3", "description": "Tool to upload a local file to a managed S3 bucket. Use when preparing files for source-map uploads." }, { "slug": "HONEYBADGER_UPLOAD_SOURCE_MAP", "name": "Upload Source Map", "description": "Upload JavaScript source maps to Honeybadger for error stack trace de-minification. Use this tool after deploying minified JavaScript assets to enable Honeybadger to display un-minified, readable stack traces when errors occur. Source maps allow Honeybadger to map minified code back to your original source code with proper file names, function names, and line numbers. The tool uploads: (1) the minified JS file, (2) its corresponding .map file, and optionally (3) additional source files referenced by the map, all associated with the production URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "honeybadger_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Auth Token", "type": "string", "description": "Your personal authentication token from https://app.honeybadger.io/users/edit", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "honeycomb_mcp", "name": "Honeycomb MCP", "logo": "https://logos.composio.dev/api/honeycomb_mcp", "description": "Honeycomb is an observability platform for high-cardinality event data. The Honeycomb MCP server lets agents query datasets, run analyses and inspect telemetry.", "category": "developer tools", "authSchemes": [ "DCR_OAUTH" ], "toolCount": 31, "triggerCount": 0, "version": "20260702_00", "tools": [ { "slug": "HONEYCOMB_MCP_CANVAS_AGENT_INVOKE", "name": "Canvas agent invoke", "description": "Kick off a single-turn run of the Honeycomb Canvas agent. Pass investigation_id to extend an existing investigation visible to the caller's team. Omit investigation_id to create a new investigation for this prompt; the new ID is returned in the response so the caller can reuse it on follow-up calls. Returns one of: status='running' with a session_id (call canvas_agent_poll_response next); status='busy' with a message (the user is mid-turn — wait at least 30 seconds, then retry, do NOT loop). Both responses also include investigation_url, a direct browser link to the canvas. On 'running', poll repeatedly until poll returns status='completed' or 'error'. Each poll waits up to 50 seconds. Best for asking the agent to summarize findings, run additional analysis, or kick off a new investigation." }, { "slug": "HONEYCOMB_MCP_CANVAS_AGENT_POLL_RESPONSE", "name": "Canvas agent poll response", "description": "Poll for the result of a previously-issued canvas_agent_invoke call. Pass the investigation_id and session_id returned from canvas_agent_invoke. Each call waits up to wait_seconds (default 30, max 50) for a terminal event, then returns either status='completed' with the agent's chat reply, status='error' with a message, status='busy' if another invocation is contending for the same agent (retry canvas_agent_invoke), or status='running' if the agent is still working — in which case call this tool again with the same parameters. Cap on wait_seconds is intentional: longer single waits get killed by network infrastructure." }, { "slug": "HONEYCOMB_MCP_CREATE_BOARD", "name": "Create board", "description": "Create a board (dashboard) with query, SLO, and text panels.\n\nWhen to use:\n - \"Create a dashboard for service X\" / \"build a board with latency and error queries\" — primary creation path.\n - After running queries and collecting their run IDs, assembling them into a board for sharing.\n - When a user wants an overview with both SLOs and queries side by side.\n - Before creating, call list_boards to check whether a similar board already exists.\n\nPairs with: list_boards (discover existing boards and tag conventions), get_slos (get SLO IDs for panels), find_queries (locate saved query IDs).\n\nPanel type discriminator: each panel's \"type\" field determines which other fields are required.\n - type=\"query\": id (query run PK) is required; name/description/chart_type/display_style are optional.\n - type=\"slo\": id (SLO PK) is required.\n - type=\"text\": content (Markdown string, max 10 000 chars) is required; id must be omitted.\n\nPanels render in the order you specify in the array. Size is optional (width 1-12, height in rows); omit size for auto-layout.\nPreset filters (max 5) add filterable column dropdowns to the board — each needs column + alias." }, { "slug": "HONEYCOMB_MCP_CREATE_RECIPIENT", "name": "Create recipient", "description": "Create a notification recipient (email, Slack, PagerDuty, or webhook) so it can be attached to triggers and SLO burn alerts.\n\nWhen to use:\n - \"Alert the on-call channel when this trigger fires\" — create a Slack recipient first, then pass its ID to create_trigger.\n - \"Page the on-call team via PagerDuty\" — create a pagerduty recipient with the integration key.\n - \"Send a webhook when an SLO burns\" — create a webhook recipient with optional custom headers and payload templates.\n - Before calling create_trigger or update_trigger when no suitable recipient exists in list_recipients.\n\nRequired fields per type:\n - type=\"email\": email_address\n - type=\"slack\": slack_channel (team must have Slack OAuth configured)\n - type=\"pagerduty\": pagerduty_integration_key\n - type=\"webhook\": webhook_url + webhook_name\n\nPairs with: create_trigger, update_trigger (consume the returned recipient ID), list_recipients (check existing recipients before creating).\n\n\n- Slack recipients require your Honeycomb team to have Slack OAuth already configured; the call will fail with an error if it is not.\n- Webhook custom headers cannot override Content-Type, User-Agent, or X-Honeycomb-Webhook-Token (max 5 headers).\n- Webhook payload template variables: names must start with a lowercase letter; subsequent characters can be letters (upper or lower) or digits (max 10 variables, max 64 chars per name).\n" }, { "slug": "HONEYCOMB_MCP_CREATE_SLO", "name": "Create slo", "description": "Create an SLO (Service Level Objective) backed by an auto-created SLI derived column.\n\nWhen to use:\n - \"Create an SLO for API latency\" / \"set a 99.9% availability target\" — primary creation path.\n - When a user asks to track reliability for a service over a rolling time window.\n - After creating an SLO, call create_trigger with a baseline or threshold to alert on SLO burn.\n\nPairs with: get_slos (list existing SLOs before creating), update_slo (adjust target or window after creation), create_trigger (fire a burn alert when error budget is draining fast).\n\nSLI expression syntax: Boolean derived-column expressions referencing span fields with a $ prefix.\n - LT($duration_ms, 1000) — true when latency < 1 000 ms\n - EQUALS($http.status_code, 200) — true when status is 200\n - EQUALS($error, false) — true when no error flag is set\n\ntarget_per_million encoding: multiply the percentage by 10 000.\n - 99.9% → 999000\n - 99.5% → 995000\n - 99.0% → 990000\n\nDerived column auto-create behavior: the tool validates the SLI expression before persisting the derived column. Invalid SLI expressions are rejected without creating the derived column. If a matching SLI derived column already exists, it is reused rather than duplicated.\n\nMulti-dataset SLOs: when dataset_slugs contains more than one slug, the SLI must be an environment-wide (shared) derived column — the tool handles this automatically, but both datasets must exist." }, { "slug": "HONEYCOMB_MCP_CREATE_TRIGGER", "name": "Create trigger", "description": "Create a trigger that fires alerts when a query result crosses a threshold.\n\nWhen to use:\n - \"Alert me when error rate exceeds 5%\" / \"page on-call when request count drops below 100\" — primary alerting path.\n - \"Create a trigger that only fires during business hours\" — use evaluation_schedule with type=window.\n - \"Alert when traffic is 50% above last week's baseline\" — use baseline_details.\n - After creating an SLO, create a paired trigger with baseline_details to detect accelerating budget burn.\n\nPairs with: list_recipients / create_recipient (obtain recipient IDs before creating the trigger), find_queries (locate a saved query to reference by query_id), get_triggers (verify after creation).\n\nQuery source — mutually exclusive, exactly one required:\n - query: inline query spec (calculations required; filters, breakdowns, formulas optional).\n - query_id: ID of a saved query (from find_queries). Cannot provide both.\n\nFrequency encoding: frequency is in seconds (e.g. 900 = 15 min evaluation cycle).\n\n\n- query and query_id are mutually exclusive. Providing both returns an error.\n- Baseline triggers: threshold.op must be '>=' or '<=' (not '>' or '<'). The comparison is at the boundary because the baseline value is a ratio, and strict inequality against a ratio wouldn't resolve reliably.\n- Evaluation window vs frequency: when evaluation_schedule.type='window', the window duration must be at least 2x the trigger frequency.\n- formula passthrough pattern: when your inline query has formulas, add a passthrough formula (not calculation) — e.g. {\"name\":\"volume\",\"expression\":\"$all_requests\"} — that aliases an existing calculation by name so it is directly addressable in ordering or threshold expressions.\n- frequency must be 60-86400 seconds and a multiple of 60.\n" }, { "slug": "HONEYCOMB_MCP_FEEDBACK", "name": "Feedback", "description": "Submit feedback about Honeycomb's MCP server to the agentic-intelligence team.\n\nWhen to use:\n - A tool returned unexpected, wrong, or confusing data.\n - You wanted a capability that no tool in this server provides.\n - A workflow felt unnecessarily clunky or required too many tool calls.\n - A tool description was misleading and caused you to use the wrong tool.\n\nBe specific: name the tool you used, what you tried, what you expected, and what you observed. Vague feedback is hard to act on.\n\nPairs with: any tool — call this after completing (or failing) a task to report quality issues." }, { "slug": "HONEYCOMB_MCP_FIND_COLUMNS", "name": "Find columns", "description": "Search for columns and calculated fields by intent across one or all datasets in an environment.\n\nWhen to use:\n - \"What column has the error rate?\" / \"Find columns related to duration or latency\" — intent-based discovery.\n - Before composing a run_query, to confirm that columns with the right names exist.\n - When you are not sure which dataset contains the column you need (omit dataset_slug to search all).\n - After get_dataset_columns returns too many results to scan, use this to narrow by semantic relevance.\n\nDifference from get_dataset_columns: this tool ranks results by relevance to your search input across all datasets; get_dataset_columns returns the complete schema for one specific dataset.\n\nPairs with: get_dataset_columns (full schema once you know the right dataset); run_query (use validated column names here); get_dataset (confirm dataset exists before scoping search)." }, { "slug": "HONEYCOMB_MCP_FIND_QUERIES", "name": "Find queries", "description": "Search query history and saved queries by intent; returns matching queries with their run PKs.\n\nWhen to use:\n - \"Has anyone queried the error rate for checkout?\" — check existing work before composing a new query.\n - Before calling run_query, verify a semantically similar query does not already exist.\n - \"Show me recent queries for service X\" — surface what the team has been investigating.\n - When the user pastes a query name or description and wants to find the underlying spec.\n\nReturns query specifications and run_pks. Pass a run_pk to get_query_results to retrieve the full results from that specific execution.\n\nPairs with: get_query_results (fetch results from a returned run_pk); run_query (run a new query once you've confirmed no similar one exists); create_board (add a found query_id as a panel)." }, { "slug": "HONEYCOMB_MCP_GET_AICONVERSATION", "name": "Get aiconversation", "description": "Fetch the full event timeline for a single AI conversation, identified by its OpenTelemetry gen_ai.conversation.id attribute value.\nPrefer this over ad-hoc run_query filtered by conversation ID — it returns every LLM call, tool call, and related agent/task event\n(with span name, operation/category, agent name, model, tool name, duration, and error detail per event) plus an aggregate summary\n(LLM call count, tool call count, failure count, total tokens, total duration) in one call.\nUse it to debug or analyze one specific AI conversation end-to-end.\n\nPERFORMANCE: If you already know a timestamp for any event in the conversation (for example from a prior run_query result), pass it as event_timestamp — this skips a backwards probe scan over the last 60 days and is the dominant factor in tool latency.\n" }, { "slug": "HONEYCOMB_MCP_GET_DATASET", "name": "Get dataset", "description": "Get dataset metadata and its full column schema (columns + calculated fields), sorted by most recent write activity.\n\nWhen to use:\n - \"What columns does the api-service dataset have?\" — retrieve the schema for one dataset.\n - Before run_query, to verify column names and types exist in the target dataset.\n - \"When was this dataset last updated?\" — dataset metadata includes oldest queryable event time.\n\nDifference from get_dataset_columns: this tool returns dataset-level metadata (description, granularity, oldest event) alongside the column list. get_dataset_columns additionally supports fetching sample values for specific columns and has metrics-dataset support via metric_name.\n\nPairs with: get_environment (upstream — confirms the dataset slug); get_dataset_columns (fetch sample values for columns or explore metrics datasets); find_columns (search across all datasets when the right dataset is unknown)." }, { "slug": "HONEYCOMB_MCP_GET_DATASET_COLUMNS", "name": "Get dataset columns", "description": "Get the full column schema for one dataset, with optional sample values for specific columns.\n\nWhen to use:\n - Validating column names before composing a run_query (check the column exists and note its type).\n - \"What values does the status column hold?\" — pass the column name in 'columns' to fetch sample values.\n - Exploring a metrics dataset: list metric names first, then pass metric_name to discover filterable attributes.\n - When find_columns returns too many results and you want the authoritative schema for one dataset.\n\nPairs with: find_columns (intent-based search when you do not know the dataset); get_dataset (dataset metadata alongside schema); run_query (use validated column names here)." }, { "slug": "HONEYCOMB_MCP_GET_ENVIRONMENT", "name": "Get environment", "description": "Get details for a specific environment, including its dataset list sorted by most recent activity.\n\nWhen to use:\n - After get_workspace_context returns environment slugs, drill into one to see which datasets it contains.\n - \"What datasets exist in staging?\" — list mode for dataset discovery.\n - Before calling get_dataset or get_dataset_columns, confirm the dataset slug by checking environment contents.\n\nReturns up to 100 datasets per page by default, sorted by most recent write activity.\n\nPairs with: get_workspace_context (upstream — provides environment slugs); get_dataset (drill into a specific dataset's schema); get_dataset_columns (full column schema once you know the dataset slug); find_columns (search across all datasets in this environment by intent)." }, { "slug": "HONEYCOMB_MCP_GET_QUERY_RESULTS", "name": "Get query results", "description": "Retrieve results and metadata from an existing query execution. Accepts a Honeycomb URL, a run_pk, or a query_id (returns most recent run). Provide exactly one of these three inputs.\n\nWhen to use:\n - After find_queries returns a run_pk and you want the actual result rows.\n - The user pastes a Honeycomb query URL from the browser — extract results without re-running.\n - After run_query executes a new query and returns a run_pk, use this to fetch the structured output.\n - You have a query_id and want the latest available result without triggering a new execution.\n\nPairs with: find_queries (source of run_pks); run_query (source of fresh run_pks); list_boards (board detail mode returns query_ids per panel — pass them as query_id here to get the most recent run)." }, { "slug": "HONEYCOMB_MCP_GET_SEMCONV_ATTRIBUTE", "name": "Get semconv attribute", "description": "Get the full definitions of one or more semantic convention attributes by their exact names.\n\nReturns complete metadata for each attribute: type, brief description, detailed note, stability,\ndeprecation status, requirement level, and examples. Accepts a batch of IDs so you can resolve\nall column names observed in a trace (e.g. from get_trace) in a single call.\n\nAttributes not found in the registry are returned in the \"not_found\" list rather than causing an error." }, { "slug": "HONEYCOMB_MCP_GET_SPAN_DETAILS", "name": "Get span details", "description": "Summarize attributes and their common values observed on spans with a specific name.\n\nUSE THIS AFTER list_spans (or whenever you already know a span_name) and BEFORE run_query. It tells you which attributes are populated on that operation, how many distinct values each has, and the top observed values — enough to answer most \"what does X look like / what fields does X have / what status codes does X return / which users hit X\" questions directly, without composing a custom query.\n\nOnly escalate to run_query when you need: exhaustive value distributions beyond the sample cap, custom calculations (P95/P99, HEATMAP, math across columns), per-attribute COUNT/SUM aggregates over the full time range, or comparison/baseline analysis.\n\nResults are paginated with page and items_per_page after applying the sample cap. Paging is a presentation control, not an exhaustive cursor. Values are based on matching span samples, capped at 1000 rows across the selected time range." }, { "slug": "HONEYCOMB_MCP_GET_TRACE", "name": "Get trace", "description": "Retrieve all spans for a specific trace ID and render them as a waterfall.\n\nWhen to use:\n - User pastes a trace ID from logs, a Slack alert, or the Honeycomb UI — fetch it here.\n - Drilling into a specific trace from a run_query result (trace.trace_id column).\n - Comparing parent/child span timing for a known trace to diagnose latency attribution.\n\nPairs with:\n - run_query — filter where trace.trace_id = to find traces matching a pattern, then drill in here.\n - list_spans / get_span_details — use first to discover span names so you can focus this view with focus_span_id.\n - run_bubbleup — if a query surfaces an anomalous cluster, BubbleUp identifies why; get_trace lets you verify with individual examples.\n\n\nSpan counts are actual stored spans, not sample-rate-adjusted. When sampling is active, the output includes a mean sample rate. Do not compare corrected query COUNTs (which are sample-rate-adjusted) directly to trace span counts.\n" }, { "slug": "HONEYCOMB_MCP_GET_TRIGGERS", "name": "Get triggers", "description": "List triggers (alert rules) for the team, or fetch full configuration for a single trigger.\n\nWhen to use:\n - \"What alerts are firing?\" / \"What triggers do we have?\" — list mode (no trigger_id).\n - \"Show me the config for trigger X\" / \"Who gets paged for this alert?\" — detail mode by trigger_id.\n - Auditing trigger configurations before creating or updating triggers.\n - Investigating an active alert to understand its threshold, query, and recipients.\n\nModes:\n - List mode (no trigger_id): paginated table with name, status, threshold, frequency, recipients, and tags.\n - Detail mode (trigger_id provided): full query spec (calculations, filters, group-by, formulas), threshold, schedule, and recipient list.\n\nRecipients are shown as: type (name/target) [id:ID] — e.g. 'pagerduty (Platform Rotation) [id:abc123]'.\n\nDynamic baseline vs static threshold: triggers with a populated 'baseline' column (list view) or 'Baseline' row (detail view) use a dynamic baseline — the threshold value is a delta (e.g. 50% higher than 1 hour prior), not an absolute count. The detail view formats Threshold as plain-English when baseline is in use.\n\nPairs with:\n - create_trigger / update_trigger — list first to avoid duplicates; detail view shows current config to inform updates.\n - list_recipients — to resolve recipient IDs to human-readable names before creating or updating a trigger.\n - find_queries — to inspect the underlying saved query for a saved-query-backed trigger.\n - get_slos — SLO burn alerts appear as triggers; cross-reference here when an SLO's burn alert fires." }, { "slug": "HONEYCOMB_MCP_GET_WORKSPACE_CONTEXT", "name": "Get workspace context", "description": "Call this tool first to orient yourself in a Honeycomb workspace. Takes no parameters. Returns the team name and slug, the current time, and a list of available environments with their slugs and dataset counts. Use the returned environment slugs with 'get_environment' to get dataset details for a specific environment." }, { "slug": "HONEYCOMB_MCP_LIST_AICONVERSATIONS", "name": "List aiconversations", "description": "Discover recent AI agent conversations (gen_ai.conversation.id values) in an environment, ordered by total event count (most active first) with per-agent activity.\n\nUse this tool as the starting point for any investigation of a dataset containing OpenTelemetry GenAI telemetry (attributes like gen_ai.conversation.id, gen_ai.agent.name, gen_ai.operation.name, gen_ai.request.model, or gen_ai.usage.*) — including service-level agent health, latency, failure, or token-usage questions. Prefer it over ad-hoc run_query to first identify the conversations worth drilling into. Output is a table with one row per conversation and columns: Conversation ID, Event Count, Error Count, Total Tokens, Agents (events/errors), Services, Start Time, End Time. The Event Count, Error Count, and Total Tokens columns are conversation-wide totals summed across every agent in that conversation. Total Tokens is SUM(gen_ai.usage.input_tokens) + SUM(gen_ai.usage.output_tokens) across the conversation's events, matching the definition used by get_aiconversation; events that lack token attributes contribute 0, so tool-only conversations will show 0. The Agents (events/errors) column is a semicolon-separated list of \"=/\" entries so you can attribute activity or errors to a specific agent. The Services column is a comma-separated, alphabetically sorted list of the service.name values that emitted events for the conversation. Start Time and End Time are the earliest and latest gen_ai event timestamps seen for the conversation, each formatted in RFC3339 UTC (empty string when unknown). Pass a returned gen_ai.conversation.id into get_aiconversation to load the full timeline for that conversation.\n\nEvents that carried no gen_ai.agent.name are excluded from the Agents column but their counts still roll up into the conversation-level Event Count and Error Count totals; likewise events with no service.name are excluded from the Services column. To answer questions like \"which conversations had the most errors for agent X\", parse the Agents column on each row for the entry whose name matches X and use its errors value.\n\nDefault window is the last 24 hours, matching the Honeycomb UI behavior.\n\nOptional agent_name and service_name filters restrict the returned conversations to those that include at least one event for the given gen_ai.agent.name and/or service.name. Both filters are exact, case-sensitive string matches and are combined with AND when both are supplied. When agent_name is supplied the filter is applied at query time, so the Event Count, Error Count, and Total Tokens columns reflect only that agent's activity within each conversation (not the conversation-wide totals).\n\nIMPORTANT: For time parameters, prefer human-readable formats over Unix epoch integers:\n- Use relative expressions like \"now\", \"-24h\", \"last 7 days\", \"2 hours ago\"\n- Use datetime strings like \"2024-01-15T10:30:00Z\" or \"2024-01-15\"\n- Use duration strings like \"24h\", \"7d\", \"2h30m\" for time_range\n- Avoid calculating Unix epoch timestamps yourself" }, { "slug": "HONEYCOMB_MCP_LIST_BOARDS", "name": "List boards", "description": "List boards (saved dashboards) in an environment, or fetch one board's full contents by ID.\n\nWhen to use:\n - \"What dashboards do we have for service X\" / \"is there an existing board for Y\" — list mode with tag filters.\n - \"Show me the contents of board Z\" — detail mode by board_id, returns every panel (queries, SLOs, text) with descriptions.\n - Before calling create_board, to check whether a similar board already exists.\n\nModes:\n - List mode (default): pass environment_slug, optionally filter by tags (AND semantics across multiple tags). Returns paginated board metadata only.\n - Detail mode: pass board_id (environment_slug still required). Returns the single board with all panels and their underlying queries/SLOs resolved.\n\nPairs with: create_board (this tool's output reveals existing tags and naming conventions to follow); get_query_results (panel query_ids from detail mode can be passed as query_id to fetch the most recent run's results)." }, { "slug": "HONEYCOMB_MCP_LIST_RECIPIENTS", "name": "List recipients", "description": "List all pre-registered notification recipients (email, Slack, PagerDuty, webhook) for the team.\n\nWhen to use:\n - Before create_trigger or update_trigger, to find the recipient IDs to attach.\n - \"What Slack channels are configured for alerts?\" — audit existing notification targets.\n - When a user asks which notification channels are available for a new alert.\n\nReturns each recipient's ID, type, and routing details. Pass recipient IDs directly to create_trigger or update_trigger.\n\nPairs with: create_recipient (register a new notification target); create_trigger (attach recipients by ID); update_trigger (update which recipients a trigger notifies)." }, { "slug": "HONEYCOMB_MCP_LIST_SEMCONV_NAMESPACES", "name": "List semconv namespaces", "description": "List the top-level semantic convention namespaces available in this team's registry.\n\nReturns namespace prefixes like \"http\", \"db\", \"messaging\", \"rpc\", \"k8s\". Use this to orient\nyourself before calling search_semconv — it tells you what telemetry domains have\nstandardised attribute definitions." }, { "slug": "HONEYCOMB_MCP_LIST_SPANS", "name": "List spans", "description": "List span names in trace data, ranked by count, with how often each is a trace root and which dataset the count came from.\n\nUSE THIS FIRST for any question about what's happening in the system: \"what's slow\", \"what's erroring\", \"what does service X do\", \"which endpoints exist\", \"what jobs run here\", \"show me the operations on Y\". It is faster, cheaper, and more diagnostic than composing an equivalent run_query by hand, and it works across all trace-aware datasets in the environment without you having to know which dataset to target.\n\nWorkflow:\n 1. Call list_spans (this tool) to see the span-name landscape and pick a candidate.\n 2. Call get_span_details with that span_name (and its dataset_slug from the row) to learn which attributes and values are present.\n 3. ONLY if you need a custom calculation, exhaustive value distribution, percentile/heatmap, or per-attribute aggregate that get_span_details cannot express — fall through to run_query, scoped to the dataset_slug from the row.\n\nReverse lookup — \"which span carries attribute X\": set populates_attribute to the attribute name to restrict results to only the span names that POPULATE that attribute, still ranked by count. Use this when you have an attribute and need the span that emits it (e.g. find the span that populates mcp.tool.name), instead of trusting whichever span happens to have the highest raw volume.\n\nEach row has:\n - span_name: the operation/endpoint/job name.\n - dataset_slug: which dataset this row's counts came from. The same span_name can appear in multiple datasets (e.g. a service emits to several); each (span_name, dataset_slug) pair is a separate row. Use the dataset_slug in follow-up tool calls so aggregates aren't smeared across datasets.\n - count: total spans with that name in that dataset over the time range.\n - root_count: subset of those spans that have no parent (i.e. are trace roots).\n Names where root_count == count are always trace entry points (HTTP handlers, root jobs). Names where 0 < root_count < count are operations that appear as both roots and children — common for shared names across services. Names where root_count == 0 are always children (DB calls, internal helpers).\n\nResults are paginated with page and items_per_page after applying the query cap. Paging is a presentation control, not an exhaustive cursor; narrow the time range or dataset when you need deeper coverage." }, { "slug": "HONEYCOMB_MCP_REFINERY_DOCS", "name": "Refinery docs", "description": "Read Honeycomb Refinery documentation. Refinery is Honeycomb's trace-aware tail-based sampling proxy.\n\nAvailable topics:\n- overview: Refinery overview and key concepts\n- architecture: Architecture, deployment patterns, and how it works\n- sampling-types: Sampling strategies (deterministic, dynamic, rules-based, throughput)\n- stress-relief: How stress relief works and how to respond when it activates\n- troubleshooting: Common Refinery issues, diagnostic queries, and solutions\n- metrics: Complete reference of all Refinery metrics with descriptions\n- configuration: Configuration reference for all Refinery settings\n- rules: Guide to writing sampling rules for the rules-based sampler\n\nUse this tool when you need detailed technical information about Honeycomb Refinery to answer user questions." }, { "slug": "HONEYCOMB_MCP_RUN_BUBBLEUP", "name": "Run bubbleup", "description": "Run BubbleUp analysis to find what makes a selected data subset different from the baseline.\n\nBubbleUp compares value distributions across all schema columns between a \"foreground\" selection (the interesting region) and the remaining data (the baseline). Columns where the foreground and baseline distributions diverge most are ranked highest.\n\nWhen to use:\n - User asks \"why did latency spike at 14:00?\" — pick a heatmap region and BubbleUp it.\n - Investigating a heatmap selection returned by run_query; you already have a query_pk.\n - \"Compare this known-bad subset to baseline\" — user wants to know what's different.\n - After a run_query heatmap shows an interesting region, surface the root-cause attributes.\n\nPairs with:\n - run_query — must run first to obtain a query_pk; that query's time range becomes the baseline.\n - get_trace — drill into specific traces that fall inside the anomalous selection.\n - find_columns / get_dataset_columns — if you need to know what columns exist before starting analysis.\n\nModes:\n - New analysis: provide query_pk + selection (heatmap or group selection).\n - Paginate existing results: provide bubbleup_result_id (query_pk and selection are ignored)." }, { "slug": "HONEYCOMB_MCP_RUN_QUERY", "name": "Run query", "description": "Run a time-series aggregation query against a Honeycomb dataset and return computed results.\n\nWhen to use this tool:\n - \"Compute a percentile / histogram of X\" — use P50/P99/HEATMAP calculations.\n - \"Show me error rate before and after deploy\" — use two named calcs + a formula, scoped by time.\n - \"Rank services by p99 latency\" — use P99 with a breakdown + order.\n - \"See distinct values of X and their frequency\" — COUNT with a breakdown on X.\n - \"Compare request volume across services\" — COUNT breakdown on service.name.\n - \"Find endpoints where tail latency exceeds 1s\" — P99 + having clause.\n - \"Generate a heatmap of request duration\" — HEATMAP calculation.\n\nWhen NOT to use this tool:\n - Discovering what spans or operations exist → use list_spans instead.\n - Looking at a specific trace → use get_trace instead.\n - Finding existing saved queries → use find_queries instead.\n - Exploring which columns a dataset has → use get_dataset_columns or find_columns first.\n\nPairs with: list_spans, get_span_details, find_columns, get_dataset_columns, get_trace, run_bubbleup.\n\n\nThe response is rendered as Markdown with these sections (each is omitted if empty):\n\n - \"# Results\" — a Markdown table of aggregate rows. Headers are breakdown columns followed by calculation columns. When formulas are present, the table contains ONLY breakdown columns and formula columns — raw calculation columns (including percentiles like P50/P95, and even named COUNTs) are NOT rendered. To surface a raw calculation's value alongside formulas, add a passthrough formula such as {\"name\": \"p95\", \"expression\": \"$p95_latency\"}. If a breakdown's cardinality exceeded the spec's limit, an \"OTHER\" row collapses the remainder; a \"TOTAL\" row may also appear summing across groups. A \"Truncated: shown N / total M\" footer indicates more rows than the table displays.\n - 1D heatmaps render inline within Results when a HEATMAP calculation has no breakdown.\n - \"# Samples\" — present only when include_samples=true. Up to 10 raw matching events; aggregations are stripped from the underlying execution in this mode, so samples replace aggregates rather than accompany them.\n - \"# Time Series\" — ASCII line graphs per group when the spec has a granularity (time-bucketed series). Width 120, height 12.\n - \"# Heatmaps\" — 2D time-series heatmaps when a HEATMAP calculation is paired with breakdowns or granularity.\n - \"# Markers\" — deploy/incident markers overlapping the time range, when present.\n - \"# Query Spec\" — the canonicalized JSON spec the server actually executed. Useful when comparing what you sent to what ran.\n - \"Metadata:\" YAML block at the bottom — contains query_run_pk (passable to get_query_results), query_url (Honeycomb permalink to share with humans), query_result_json / query_result_image (download URLs), elapsed_str, granularity, total (result count), rows_examined.\n\nWhen data is sampled, a sampling banner appears above Results listing the mean sample rate and which calculations are sample-rate-weighted vs. raw. If mean_sample_rate > 10x and usage_mode is off, an extra warning notes that COUNT values are corrected estimates and won't match raw trace span counts.\n\n\nImportant: filter operators use symbols (=, >=, !=). Expression functions inside calculated_fields use words (GTE, EQUALS). Never use GTE/LTE as filter operators." }, { "slug": "HONEYCOMB_MCP_SEARCH_SEMCONV", "name": "Search semconv", "description": "Search the semantic convention registry for attributes matching a query.\n\nReturns structured attribute definitions including name, type, brief description, stability, and\ndeprecation status. Use this to discover canonical attribute names before constructing queries.\n\nThe registry is backed by OTel semantic conventions at the team's configured version (defaulting\nto the latest release). Teams with a custom attribute schema will also see their custom attributes.\n\nTypical workflow:\n1. list_semconv_namespaces → understand what telemetry domains are covered\n2. search_semconv(query=\"http status\") → find relevant attribute names\n3. get_semconv_attribute(id=\"http.response.status_code\") → get full definition before using in a query\n\nWhen building queries across datasets with mixed schema versions, search_semconv returns\nthe canonical name at the team's configured version. Use that name in queries — Honeycomb\nnormalises attribute names at ingest using schema migration transforms." }, { "slug": "HONEYCOMB_MCP_UPDATE_BOARD", "name": "Update board", "description": "Edit an existing board (dashboard) in place. Add, remove, update, or reorder panels; rename; and replace preset filters or tags.\n\nWhen to use:\n - \"Add the new error-rate query to the API board\" — append panels to an existing board.\n - \"Remove the deprecated SLO panel from this dashboard\" — drop a panel by id.\n - \"Rename the panel\" / \"switch this query to a table view\" — modify an existing panel's name, description, chart_type, display_style, or size.\n - \"Reorder the board so SLOs come first\" — reorder panels via panel_order.\n - \"Update the preset filters / tags\" — replace the full set (replace, not merge).\n - Always run list_boards with board_id first so you have the current type+id of each panel.\n\nPairs with: list_boards (board_id and per-panel ids; the IDs you reference here come from there), find_queries (query run PKs for new query panels), get_slos (SLO PKs for new SLO panels), create_board (create instead of update).\n\nOperations apply in this order: remove_panels -> update_panels -> add_panels -> panel_order. Within a single call: removed panels can be referenced in remove_panels but not anywhere else; newly added text panels can not be referenced in panel_order or update_panels because they have no stable id until saved (added text panels are appended after any ordered panels).\n\nReplacement-set semantics: tags and preset_filters replace the full set when provided. To add one tag, read the current tags from list_boards, append, and pass the full updated list. Pass an empty array to clear. Omit entirely to leave unchanged.\n\nSizing: if you omit size on an added panel, MCP auto-sizes it (queries by complexity; SLO/text use defaults). For updated panels, size is preserved unless you explicitly supply a new size or set auto_size_updated_panels=true (which auto-sizes query panels in update_panels when their size is omitted)." }, { "slug": "HONEYCOMB_MCP_UPDATE_SLO", "name": "Update slo", "description": "Update an existing SLO. Only the fields you supply change; omitted fields keep their current values.\n\nWhen to use:\n - \"Tighten the SLO target to 99.95%\" / \"extend the window to 30 days\" — adjust reliability parameters.\n - \"Rename this SLO\" / \"update the SLO description\" — housekeeping changes.\n - \"Replace the SLO's tags\" — tag management (tags replace entirely; pass empty array to clear all).\n - Datasets cannot be changed after creation; create a new SLO if you need different datasets.\n\nPairs with: get_slos (retrieve slo_id and current values), create_slo (create instead of update), update_trigger (update a paired burn-alert trigger simultaneously).\n\nTag replacement semantics: when tags is provided it replaces the entire tag set. To add one tag, first read the current tags via get_slos, append the new tag, and pass the full updated list." }, { "slug": "HONEYCOMB_MCP_UPDATE_TRIGGER", "name": "Update trigger", "description": "Update an existing trigger. Partial update — only the fields you supply change; omitted fields keep their current values.\n\nWhen to use:\n - \"Disable this trigger temporarily\" — set disabled=true without touching other fields.\n - \"Add a Slack channel to the trigger's recipients\" — replace recipients with the full updated list (note: replaces, does not merge).\n - \"Lower the threshold from 5% to 3%\" — update threshold.value.\n - \"Slow down the evaluation frequency\" — change frequency.\n\nPairs with: get_triggers (retrieve trigger_id and current state), list_recipients / create_recipient (get recipient IDs before updating), update_slo (update the paired SLO at the same time).\n\nRecipients replacement semantics: when recipients is provided, it replaces the entire recipients list. To add one recipient, read current recipients from get_triggers, append the new ID, then pass the full list here. Pass an empty array [] to remove all recipients." } ], "triggers": [], "authConfigDetails": [ { "mode": "DCR_OAUTH", "name": "honeycomb_mcp_DCR_OAuth", "fields": { "auth_config_creation": { "required": [], "optional": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": false, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": false, "default": null }, { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "mcp:read,mcp:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "honeyhive", "name": "Honeyhive", "logo": "https://www.honeyhive.ai/logo.png", "description": "HoneyHive is a modern AI observability and evaluation platform that enables developers and domain experts to collaboratively build reliable AI applications faster.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HONEYHIVE_ADD_DATAPOINTS_TO_DATASET", "name": "Add datapoints to dataset", "description": "Tool to add datapoints to a dataset. Use when you need to append multiple entries with specified input, ground truth, and history mappings." }, { "slug": "HONEYHIVE_COMPARE_RUNS", "name": "Compare Experiment Runs", "description": "Tool to retrieve experiment comparison between two evaluation runs. Use when you need to analyze the differences in metrics, datapoints, and events between two runs." }, { "slug": "HONEYHIVE_COMPARE_RUNS_EVENTS", "name": "Compare Runs Events", "description": "Tool to compare events between two experiment runs side-by-side. Use when analyzing differences in model behavior, performance metrics, or outputs between evaluation runs. Returns matched event pairs with their respective data from both runs for comparison." }, { "slug": "HONEYHIVE_CREATE_BATCH_DATAPOINTS", "name": "Batch Create Datapoints", "description": "Tool to create multiple datapoints in a single batch operation. Use when you need to bulk-import events into a dataset or create many datapoints at once. Supports filtering by date range, event IDs, or custom criteria. Efficient for migrating large numbers of events to evaluation datasets." }, { "slug": "HONEYHIVE_CREATE_BATCH_MODEL_EVENTS", "name": "Create Batch Model Events", "description": "Tool to create multiple model events in a single request. Use when you need to log a batch of event interactions to HoneyHive." }, { "slug": "HONEYHIVE_CREATE_BATCH_TOOL_EVENTS", "name": "Create Batch Tool Events", "description": "Tool to log a batch of external API calls as tool events. Use when you need to record multiple tool events in one request—use after gathering all event data." }, { "slug": "HONEYHIVE_CREATE_CONFIGURATION", "name": "Create Configuration", "description": "Creates a new configuration in HoneyHive for managing LLM or pipeline settings. Use this to define reusable configurations with specific models, prompts, and parameters that can be deployed across different environments (dev, staging, prod). Configurations enable version control and environment-specific management of your AI application settings." }, { "slug": "HONEYHIVE_CREATE_DATAPOINT", "name": "Create Datapoint", "description": "Tool to create a new datapoint with input-output pairs. Use when you need to add a single datapoint with inputs, ground truth, conversation history, and metadata." }, { "slug": "HONEYHIVE_CREATE_DATASET", "name": "Create Dataset", "description": "Tool to create a dataset. Use when you need to initialize a new dataset within a project." }, { "slug": "HONEYHIVE_CREATE_EVENT", "name": "Create Event", "description": "Tool to create a new event in HoneyHive to track execution of different parts of your application. Use when you need to log a model call, tool execution, or chain step. Events can be grouped into sessions and nested hierarchically using parent_id and children_ids." }, { "slug": "HONEYHIVE_CREATE_METRIC", "name": "Create Metric", "description": "Tool to create a new metric in HoneyHive. Use when you need to define how to evaluate model outputs, whether through code (PYTHON), AI evaluation (LLM), human review (HUMAN), or combining multiple metrics (COMPOSITE). Important: LLM metrics require both model_provider and model_name to be specified." }, { "slug": "HONEYHIVE_CREATE_MODEL_EVENT", "name": "Create Model Event", "description": "Tool to create a new model event to log LLM call data. Use when you need to track a single model interaction including messages, responses, usage, and metadata." }, { "slug": "HONEYHIVE_CREATE_TOOL", "name": "Create Tool", "description": "Creates a new tool definition in a HoneyHive project. Use this to register functions or plugins that can be invoked and tracked within HoneyHive. Tools are defined with a JSON Schema for their parameters, allowing HoneyHive to validate inputs and track tool usage in your AI workflows. Tool names must be unique within a project." }, { "slug": "HONEYHIVE_DELETE_DATAPOINT", "name": "Delete Datapoint", "description": "Tool to delete a specific datapoint by its ID. Use when you need to remove a datapoint from HoneyHive after confirming its identifier." }, { "slug": "HONEYHIVE_DELETE_DATASET", "name": "Delete Dataset", "description": "Tool to delete a dataset by ID. Use when you need to remove a dataset after confirming its ID." }, { "slug": "HONEYHIVE_END_EVALUATION_RUN", "name": "End Evaluation Run", "description": "Tool to update an evaluation run's status and metadata. Use to mark a run as completed after finishing evaluations, or update run properties like name, metadata, configuration, and associated event/datapoint IDs." }, { "slug": "HONEYHIVE_GET_CONFIGURATIONS", "name": "Get Configurations", "description": "Tool to retrieve a list of configurations. Use when you need to fetch all configurations for a specific project before making changes." }, { "slug": "HONEYHIVE_GET_DATASETS", "name": "Get Datasets", "description": "Retrieve datasets from HoneyHive for a specified project. Use this tool when you need to: - List all datasets within a project - Find datasets by type (evaluation or fine-tuning) - Retrieve a specific dataset by its ID Returns dataset details including name, description, datapoints count, type, and timestamps." }, { "slug": "HONEYHIVE_GET_EVENTS", "name": "Get Events", "description": "Tool to query events with filters and projections from HoneyHive. Use this action when you need to retrieve events with lightweight filtering (limit 1000 results). For bulk exports or more complex queries, use the Retrieve Events action instead. Supports filtering by date range, event properties, and field projections." }, { "slug": "HONEYHIVE_GET_EVENTS_BY_SESSION_ID", "name": "Get Events By Session ID", "description": "Tool to retrieve the complete tree of nested events for a specific session. Use when you need to analyze all events (model calls, tool calls, chains) that occurred within a session, including their hierarchical relationships, inputs, outputs, metrics, and costs. Returns a tree structure with recursive children." }, { "slug": "HONEYHIVE_GET_EVENTS_CHART", "name": "Get Events Chart", "description": "Tool to retrieve charting and analytics data for events over time. Use when you need aggregated metrics (duration, cost, token usage) grouped by time buckets or fields. Supports percentile analysis (p50, p95, p99) for latency monitoring and custom filters for targeted analytics." }, { "slug": "HONEYHIVE_GET_METRICS", "name": "Get Metrics", "description": "Retrieves all metrics associated with a HoneyHive project. Returns a list of metrics including their configuration (name, type, description, thresholds, evaluator details) and metadata (creation/update timestamps, sampling settings). Use this tool when you need to: - List all metrics configured for a project - Get metric IDs for updating metrics via HONEYHIVE_UPDATE_METRIC - Understand what evaluations are set up for a project Prerequisites: Obtain a valid project_name using HONEYHIVE_GET_PROJECTS first." }, { "slug": "HONEYHIVE_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve all projects in the HoneyHive account. Use when you need to list available projects, get project IDs for use in other API calls, or search for a specific project by name." }, { "slug": "HONEYHIVE_GET_RUN", "name": "Get Evaluation Run Details", "description": "Tool to get details of an evaluation run by its UUID. Use when you need to check the status, configuration, results, or metadata of a specific evaluation run." }, { "slug": "HONEYHIVE_GET_RUN_METRICS", "name": "Get Run Metrics", "description": "Tool to get event metrics for an experiment run. Use when you need to retrieve metrics computed on events within a specific experiment run. Returns an array of event objects with their associated metrics, which can be filtered by date range or custom filters." }, { "slug": "HONEYHIVE_GET_RUNS", "name": "Get Evaluation Runs", "description": "Tool to retrieve a list of evaluation runs from HoneyHive. Use when you need to: - List all evaluation runs for analysis - Find runs by status, name, or dataset - Get specific runs by their IDs - Paginate through large sets of evaluation runs Returns evaluation details including status, results, configuration, and timestamps." }, { "slug": "HONEYHIVE_GET_RUNS_SCHEMA", "name": "Get Runs Schema", "description": "Tool to retrieve the schema for experiment runs in HoneyHive. Use when you need to understand available fields, datasets, and mappings for experiment runs." }, { "slug": "HONEYHIVE_GET_SESSION", "name": "Get Session", "description": "Retrieve a complete session tree by session ID from HoneyHive. Use this tool to fetch the full session hierarchy including all nested events (model calls, tool calls, chains) with their inputs, outputs, durations, and metadata. Returns a recursive tree structure with aggregated metrics. Prerequisites: You need a valid session ID from HONEYHIVE_START_SESSION or HONEYHIVE_RETRIEVE_EVENTS." }, { "slug": "HONEYHIVE_LIST_TOOLS", "name": "List Tools", "description": "Tool to list all available Honeyhive tools. Use when you need to discover which functions or plugins are registered for use." }, { "slug": "HONEYHIVE_RETRIEVE_DATAPOINT", "name": "Retrieve Datapoint", "description": "Retrieve a specific datapoint by its ID from HoneyHive. Use this tool when you need the full details of a single datapoint, including its inputs, ground truth, conversation history, linked datasets, and metadata. Prerequisites: You need a valid datapoint ID. Get datapoint IDs from: - HONEYHIVE_RETRIEVE_DATAPOINTS (list datapoints by project/dataset) - HONEYHIVE_ADD_DATAPOINTS_TO_DATASET (returns IDs of newly created datapoints)" }, { "slug": "HONEYHIVE_RETRIEVE_DATAPOINTS", "name": "Retrieve Datapoints", "description": "Retrieve datapoints from a HoneyHive project. Use this tool to fetch evaluation datapoints containing inputs, ground truth, and metadata. Supports filtering by specific datapoint IDs or dataset name. Commonly used to: - Review existing test cases before running evaluations - Export datapoints for analysis - Verify datapoint contents after adding them to a dataset" }, { "slug": "HONEYHIVE_RETRIEVE_EVENTS", "name": "Retrieve Events", "description": "Retrieve and export events from a HoneyHive project. Use this tool to query traced events (model calls, tool calls, sessions, chains) with optional filters by event_type, metadata, feedback scores, or date range. Returns events with their inputs, outputs, duration, and metrics. Supports pagination for large result sets (max 7500 per page)." }, { "slug": "HONEYHIVE_RETRIEVE_EXPERIMENT_RESULT", "name": "Retrieve Experiment Result", "description": "Tool to retrieve the result of a specific experiment run. Use when you need the status, metrics, and datapoint-level details of a completed experiment." }, { "slug": "HONEYHIVE_START_EVALUATION_RUN", "name": "Start Evaluation Run", "description": "Creates a new evaluation run to group and track multiple session events for analysis. Use this action when you want to: - Compare model performance across multiple sessions - Create evaluation batches for quality assurance - Link existing events to datasets for structured evaluation Prerequisites: - Get project ID using Get Projects action - Get event IDs from Start Session or Retrieve Events actions - (Optional) Get dataset ID from Get Datasets action" }, { "slug": "HONEYHIVE_START_SESSION", "name": "Start Session", "description": "Start a new HoneyHive session for tracing and observability. Use this tool to initiate a tracking session that groups together related model, tool, and chain events. Returns a session_id that should be used to link subsequent events to this session. Common use cases: - Start tracing a user conversation - Begin logging an LLM pipeline execution - Initialize observability for a batch processing job" }, { "slug": "HONEYHIVE_UPDATE_CONFIGURATION", "name": "Update Configuration", "description": "Tool to update an existing HoneyHive configuration. Use when you need to modify a configuration's name, provider, model parameters, environments, or other settings. You must provide the configuration ID (obtainable via Get Configurations action) and the name field. All other fields are optional and will only update if provided." }, { "slug": "HONEYHIVE_UPDATE_DATAPOINT", "name": "Update Datapoint", "description": "Update an existing datapoint by ID. Use this to modify any combination of inputs, ground_truth, history, metadata, linked_datasets, or linked_evals for a datapoint. Requires a valid datapoint ID obtained from retrieve_datapoints or add_datapoints_to_dataset." }, { "slug": "HONEYHIVE_UPDATE_DATASET", "name": "Update Dataset", "description": "Tool to update an existing dataset. Use when you need to modify a dataset's details (name, description, datapoints, linked evaluations, or metadata) after confirming its ID." }, { "slug": "HONEYHIVE_UPDATE_EVENT", "name": "Update Event", "description": "Update an existing HoneyHive event by ID. Use to attach feedback, metrics, metadata, outputs, config, user properties, or update duration on events created via start_session or batch event creation. At least one optional field must be provided alongside the event_id." }, { "slug": "HONEYHIVE_UPDATE_METRIC", "name": "Update Metric", "description": "Tool to update an existing metric. Use when you need to modify a metric’s properties after creation. Ensure you retrieve the metric first to verify its current state." }, { "slug": "HONEYHIVE_UPDATE_PROJECT", "name": "Update Project", "description": "Updates an existing HoneyHive project's name or description. Use this action to modify project metadata after creation. You must provide the project_id and at least one field to update (name or description). To find project IDs, use the Get Projects action first." }, { "slug": "HONEYHIVE_UPDATE_TOOL", "name": "Update Tool", "description": "Tool to update an existing tool in HoneyHive. Use when you need to modify a tool's name, description, parameters, or type after confirming its ID. At least one optional field must be provided alongside the required tool ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "honeyhive_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HoneyHive API Key", "type": "string", "description": "The API key used for authenticating requests to the HoneyHive API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hookdeck", "name": "Hookdeck", "logo": "https://logos.composio.dev/api/hookdeck", "description": "Hookdeck is a platform that enables developers to manage, monitor, and secure webhooks and API events.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 105, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HOOKDECK_ADD_CUSTOM_DOMAIN", "name": "Add Custom Domain", "description": "Tool to add a custom domain to the Hookdeck project. Use when you need to configure a custom hostname for receiving webhooks." }, { "slug": "HOOKDECK_BULK_CANCEL_EVENTS", "name": "Bulk Cancel Hookdeck Events", "description": "Tool to create a bulk cancellation job for events. Use when you need to cancel multiple events matching filters." }, { "slug": "HOOKDECK_BULK_RETRY_EVENTS", "name": "Bulk Retry Hookdeck Events", "description": "Initiate a bulk retry for multiple events matching the specified filters. Use this to retry failed webhook deliveries in bulk instead of one at a time. The query must include at least one filter - common usage is to filter by status='FAILED'. The operation runs asynchronously and returns immediately with progress tracking info." }, { "slug": "HOOKDECK_CANCEL_EVENT", "name": "Cancel Hookdeck Event", "description": "Cancel all future delivery attempts for a Hookdeck event. Use this to stop scheduled retries when you need to prevent further delivery attempts (e.g., due to known issues with the destination or invalid payload). Note: Events already in SUCCESSFUL or FAILED status cannot be cancelled but the API will return the event unchanged." }, { "slug": "HOOKDECK_CANCEL_EVENT_BULK_RETRY", "name": "Cancel Event Bulk Retry", "description": "Tool to cancel an ongoing events bulk retry operation. Use when you need to stop a bulk retry that is currently in progress (e.g., if you realize the retry conditions were incorrect or the issue needs to be addressed before retrying)." }, { "slug": "HOOKDECK_CANCEL_REQUEST_BULK_RETRY", "name": "Cancel Request Bulk Retry", "description": "Tool to cancel an in-progress requests bulk retry operation. Use when you need to stop a bulk retry that is currently running." }, { "slug": "HOOKDECK_CANCEL_SCHEDULED_RETRIES", "name": "Cancel Hookdeck Scheduled Retries", "description": "Tool to cancel all future scheduled retries for an event. Use when you need to mute automatic retry attempts after repeated failures." }, { "slug": "HOOKDECK_COUNT_CONNECTIONS", "name": "Count Hookdeck Connections", "description": "Tool to count Hookdeck connections with optional filters. Use when you need to get the total number of connections matching specific criteria." }, { "slug": "HOOKDECK_COUNT_DESTINATIONS", "name": "Count Hookdeck Destinations", "description": "Tool to count Hookdeck destinations with optional filters. Use when you need to get a total count of destinations without retrieving full details." }, { "slug": "HOOKDECK_COUNT_SOURCES", "name": "Count Hookdeck Sources", "description": "Tool to count Hookdeck sources with optional filters. Use when you need to get a total count of sources without retrieving full details." }, { "slug": "HOOKDECK_CREATE_BOOKMARK", "name": "Create Hookdeck Bookmark", "description": "Tool to create a bookmark for a specific event request in Hookdeck. Bookmarks allow you to catalog and replay specific webhook requests. Use this to save important or edge-case requests for testing, debugging, or documentation purposes. Bookmarked request data is exempt from the archiving period and remains available as long as it is bookmarked." }, { "slug": "HOOKDECK_CREATE_CONNECTION", "name": "Create Hookdeck Connection", "description": "Tool to create a connection between a source and a destination. Use after setting up or referencing source/destination." }, { "slug": "HOOKDECK_CREATE_DESTINATION", "name": "Create Hookdeck Destination", "description": "Tool to create a new Hookdeck destination. Use after setting up sources when you need to route events to endpoints." }, { "slug": "HOOKDECK_CREATE_IGNORED_EVENT_BULK_RETRY", "name": "Create Ignored Event Bulk Retry", "description": "Tool to create an ignored events bulk retry operation. Use when you need to retry multiple ignored events matching specific filters. The query must include at least one filter parameter (webhook_id, cause, or transformation_id) - empty queries are not allowed." }, { "slug": "HOOKDECK_CREATE_INTEGRATION", "name": "Create Hookdeck Integration", "description": "Tool to create a new Hookdeck integration. Use when you need to set up authentication or verification for webhook sources using providers like API keys, HMAC, Basic Auth, or third-party services." }, { "slug": "HOOKDECK_CREATE_ISSUE_TRIGGER", "name": "Create Hookdeck Issue Trigger", "description": "Tool to create an issue trigger in Hookdeck. Use when you need to set up automated notifications for delivery failures, transformation errors, or backpressure events." }, { "slug": "HOOKDECK_CREATE_SOURCE", "name": "Create Hookdeck Source", "description": "Tool to create a new Hookdeck source. Use after setting up your project when you need to receive and route incoming webhooks." }, { "slug": "HOOKDECK_CREATE_TRANSFORMATION", "name": "Create Hookdeck Transformation", "description": "Tool to create a new Hookdeck transformation. Use when you need to execute custom JavaScript to modify event payloads before delivery." }, { "slug": "HOOKDECK_DELETE_BOOKMARK", "name": "Delete Hookdeck Bookmark", "description": "Tool to delete a specific bookmark by its ID. Use when you need to permanently remove a bookmark after confirming it's no longer needed." }, { "slug": "HOOKDECK_DELETE_CONNECTION", "name": "Delete Hookdeck Connection", "description": "Tool to delete a specific connection by its ID. Use when you need to permanently remove a connection after confirming it's no longer needed." }, { "slug": "HOOKDECK_DELETE_DESTINATION", "name": "Delete Hookdeck Destination", "description": "Permanently deletes a Hookdeck destination by its ID. This action also deletes all connections that rely on the destination. The associated event data is retained for the remainder of your retention window. This operation is idempotent - deleting a non-existent destination will still return success." }, { "slug": "HOOKDECK_DELETE_INTEGRATION", "name": "Delete Hookdeck Integration", "description": "Tool to delete a specific integration by its ID. Use when you need to permanently remove an integration after confirming it's no longer needed." }, { "slug": "HOOKDECK_DELETE_ISSUE_TRIGGER", "name": "Delete Hookdeck Issue Trigger", "description": "Tool to delete a specific issue trigger by its ID. Use when you need to permanently remove an issue trigger after confirming it's no longer needed." }, { "slug": "HOOKDECK_DELETE_SOURCE", "name": "Delete Hookdeck Source", "description": "Tool to delete a specific source by its ID. Use when you need to permanently remove a source after confirming it's no longer needed." }, { "slug": "HOOKDECK_DELETE_TRANSFORMATION", "name": "Delete Hookdeck Transformation", "description": "Permanently delete a Hookdeck transformation by its ID. The transformation must not be in use by any connections before deletion. Returns the ID of the deleted transformation on success. Use this when you need to clean up unused transformations from your Hookdeck workspace." }, { "slug": "HOOKDECK_DISABLE_CONNECTION", "name": "Disable Hookdeck Connection", "description": "Tool to disable a connection by its ID. Use when you need to temporarily stop event delivery through a connection without deleting it." }, { "slug": "HOOKDECK_DISABLE_DESTINATION", "name": "Disable Hookdeck Destination", "description": "Tool to disable a Hookdeck destination. Use when you need to temporarily stop event delivery to a destination without deleting it. Disabled destinations can be re-enabled later." }, { "slug": "HOOKDECK_DISABLE_ISSUE_TRIGGER", "name": "Disable Hookdeck Issue Trigger", "description": "Tool to disable a Hookdeck issue trigger. Use when you need to temporarily stop notifications for a specific issue trigger without deleting it. The trigger can be re-enabled later if needed." }, { "slug": "HOOKDECK_DISABLE_SOURCE", "name": "Disable Hookdeck Source", "description": "Tool to disable a Hookdeck source. Use when you need to stop a source from accepting new webhook events without deleting it." }, { "slug": "HOOKDECK_ENABLE_CONNECTION", "name": "Enable Hookdeck Connection", "description": "Tool to enable a disabled Hookdeck connection. Use when you need to reactivate a previously disabled connection to resume event routing." }, { "slug": "HOOKDECK_ENABLE_DESTINATION", "name": "Enable Hookdeck Destination", "description": "Enable a previously disabled Hookdeck destination by its ID. This allows events to be delivered to the destination again." }, { "slug": "HOOKDECK_ENABLE_ISSUE_TRIGGER", "name": "Enable Hookdeck Issue Trigger", "description": "Tool to enable a Hookdeck issue trigger. Use when you need to activate an issue trigger that was previously disabled." }, { "slug": "HOOKDECK_ENABLE_SOURCE", "name": "Enable Hookdeck Source", "description": "Tool to enable a disabled Hookdeck source. Use when you need to reactivate a source that was previously disabled." }, { "slug": "HOOKDECK_GENERATE_EVENT_BULK_CANCEL_PLAN", "name": "Generate Event Bulk Cancel Plan", "description": "Tool to generate a preview plan for bulk event cancellation. Use when you need to estimate how many events would be cancelled by a query before executing the actual bulk cancel operation." }, { "slug": "HOOKDECK_GENERATE_EVENT_BULK_RETRY_PLAN", "name": "Generate Event Bulk Retry Plan", "description": "Tool to generate an events bulk retry plan. Use when you need to estimate the scope of a bulk retry operation before executing it. Returns the estimated number of events that would be retried and the number of batches required." }, { "slug": "HOOKDECK_GENERATE_IGNORED_EVENT_BULK_RETRY_PLAN", "name": "Generate Ignored Event Bulk Retry Plan", "description": "Generate an ignored events bulk retry plan to estimate the scope before execution. Use this to preview how many events would be retried and how many batches are needed. This action does not execute the retry - it only provides estimates for planning purposes." }, { "slug": "HOOKDECK_GENERATE_REQUEST_BULK_RETRY_PLAN", "name": "Generate Request Bulk Retry Plan", "description": "Tool to generate a requests bulk retry plan. Use when you need to estimate the number of requests and batches for a bulk retry operation before executing it. Accepts the same query filters as the List Requests endpoint." }, { "slug": "HOOKDECK_GET_ATTEMPT2", "name": "Get Hookdeck Attempt", "description": "Tool to retrieve a specific Hookdeck delivery attempt by ID. Use when you have an attempt ID and need delivery details including status, response codes, timing, and errors." }, { "slug": "HOOKDECK_GET_ATTEMPTS", "name": "Get attempts", "description": "Lists delivery attempts for your Hookdeck account. Attempts represent individual HTTP delivery tries to destination URLs. Use this to monitor delivery status, debug failures, and track retry attempts. Filter by event_id to see all attempts for a specific event. Only attempts with status SUCCESSFUL or FAILED are returned." }, { "slug": "HOOKDECK_GET_ATTEMPTS_METRICS", "name": "Get attempts metrics", "description": "Tool to query aggregated attempt metrics with time-based grouping and filtering. Use when you need to analyze delivery attempt patterns over time, calculate statistics like attempt counts, or group metrics by dimensions such as status or destination." }, { "slug": "HOOKDECK_GET_BOOKMARK", "name": "Get Hookdeck Bookmark", "description": "Tool to retrieve a single bookmark by its ID. Use when you need to fetch details of a specific bookmark." }, { "slug": "HOOKDECK_GET_BOOKMARK_RAW_BODY", "name": "Get Bookmark Raw Body", "description": "Tool to retrieve the raw body data of a bookmarked request. Use when you need to access the original unmodified request body payload that was bookmarked in Hookdeck." }, { "slug": "HOOKDECK_GET_CONNECTION", "name": "Get Hookdeck Connection", "description": "Retrieves details of a specific Hookdeck connection by its ID. Returns the connection configuration including its source, destination, and any configured rules. Use this to inspect connection settings, verify configuration, or get source/destination details." }, { "slug": "HOOKDECK_GET_CONNECTIONS", "name": "Hookdeck: Get Connections", "description": "Tool to list Hookdeck connections. Use when you need to retrieve or filter your configured connections. Each connection in the response embeds full source and destination objects; reuse these nested objects directly instead of making additional fetch calls." }, { "slug": "HOOKDECK_GET_DESTINATION", "name": "Get Hookdeck Destination", "description": "Retrieve details of a specific Hookdeck destination by ID. Use this tool to get the full configuration and status of a destination, including its URL, authentication settings, rate limits, and timestamps." }, { "slug": "HOOKDECK_GET_DESTINATIONS", "name": "Hookdeck: Get Destinations", "description": "Tool to list Hookdeck destinations. Use when you need to retrieve or filter your configured destinations." }, { "slug": "HOOKDECK_GET_EVENT", "name": "Get Event", "description": "Tool to retrieve a specific Hookdeck event by ID. Use when you need detailed information about an event including status, delivery attempts, and payload data." }, { "slug": "HOOKDECK_GET_EVENT_BULK_CANCEL", "name": "Get Event Bulk Cancel Status", "description": "Tool to retrieve the status of a bulk event cancellation operation. Use when you need to check the progress or completion status of a bulk cancel job. The bulk cancel ID is returned when initiating a bulk cancel operation." }, { "slug": "HOOKDECK_GET_EVENT_BULK_CANCELS", "name": "Get Event Bulk Cancels", "description": "Tool to list event bulk cancel operations for your Hookdeck account. Use when you need to retrieve bulk cancel operation logs, filter by status or time, and paginate through results." }, { "slug": "HOOKDECK_GET_EVENT_BULK_RETRIES", "name": "Get Event Bulk Retries", "description": "Tool to retrieve bulk retry operations for Hookdeck events. Use when you need to check the status of bulk retry jobs, monitor their progress, or list historical bulk retry operations." }, { "slug": "HOOKDECK_GET_EVENT_BULK_RETRY", "name": "Get Event Bulk Retry Status", "description": "Tool to retrieve the status of a bulk event retry operation. Use when you need to check the progress or completion status of a bulk retry job. The bulk retry ID is returned when initiating a bulk retry operation." }, { "slug": "HOOKDECK_GET_EVENT_RAW_BODY", "name": "Get Event Raw Body", "description": "Tool to retrieve the raw body data of an event. Use when you need to access the original unmodified request body payload of a Hookdeck event." }, { "slug": "HOOKDECK_GET_EVENTS", "name": "Get events", "description": "Tool to list events for your Hookdeck account. Use when you need to retrieve delivery logs, filter by status or time, and paginate through results." }, { "slug": "HOOKDECK_GET_EVENTS_BY_ISSUE_METRICS", "name": "Get events by issue metrics", "description": "Tool to query event metrics grouped by individual issue IDs. Uses arrayJoin to create one row per issue per event, enabling per-issue analytics. Use when tracking which issues affect the most events over time." }, { "slug": "HOOKDECK_GET_EVENTS_METRICS", "name": "Get Events Metrics", "description": "Tool to query aggregated event metrics with time-based grouping and filtering. Use when you need to analyze event patterns, calculate statistics, or generate reports over specific time periods." }, { "slug": "HOOKDECK_GET_EVENTS_PENDING_TIMESERIES_METRICS", "name": "Get events pending timeseries metrics", "description": "Tool to query aggregated events pending timeseries metrics with time-based grouping and filtering. Use when you need to analyze pending event trends over time, monitor event backlogs, or generate time-series reports with custom granularity. Supports grouping by dimensions like source or destination." }, { "slug": "HOOKDECK_GET_IGNORED_EVENT_BULK_RETRIES", "name": "Get Ignored Event Bulk Retries", "description": "Tool to retrieve ignored events bulk retry operations for Hookdeck. Use when you need to check the status of ignored events bulk retry jobs, monitor their progress, or list historical ignored events bulk retry operations." }, { "slug": "HOOKDECK_GET_IGNORED_EVENT_BULK_RETRY", "name": "Get Ignored Event Bulk Retry Status", "description": "Tool to retrieve the status of an ignored events bulk retry operation. Use when you need to check the progress or completion status of a bulk retry job for ignored events." }, { "slug": "HOOKDECK_GET_INTEGRATION", "name": "Get Hookdeck Integration", "description": "Tool to retrieve details of a specific Hookdeck integration. Use when you need to inspect integration configuration, verify credentials, or check which sources are using the integration." }, { "slug": "HOOKDECK_GET_INTEGRATIONS", "name": "Get Hookdeck Integrations", "description": "Tool to retrieve a list of Hookdeck integrations. Use when you need to list all integrations or filter them by label or provider." }, { "slug": "HOOKDECK_GET_ISSUE_COUNT", "name": "Get Hookdeck Issue Count", "description": "Tool to get the count of Hookdeck issues with optional filters. Use when you need to retrieve the total number of issues matching specific criteria without fetching the full list." }, { "slug": "HOOKDECK_GET_ISSUE_TRIGGER", "name": "Get Hookdeck Issue Trigger", "description": "Tool to retrieve a single Hookdeck issue trigger by its ID. Use when you need to get detailed information about a specific issue trigger configuration." }, { "slug": "HOOKDECK_GET_ISSUE_TRIGGERS", "name": "Get issue triggers", "description": "Tool to list issue triggers for your Hookdeck account. Use when you need to retrieve configured issue triggers and their notification settings." }, { "slug": "HOOKDECK_GET_QUEUE_DEPTH_METRICS", "name": "Get Queue Depth Metrics", "description": "Tool to query queue depth metrics for destinations (pending events count and age). Use when you need to analyze event queue depth over time, monitor pending events, or track the age of the oldest pending event for destinations." }, { "slug": "HOOKDECK_GET_REQUEST", "name": "Get Hookdeck Request", "description": "Retrieve detailed information about a specific Hookdeck request by ID. Use this tool to inspect a webhook request including its body, headers, query parameters, and processing status. The request_id can be obtained from the HOOKDECK_GET_REQUESTS action. Returns complete request data including verification status, rejection cause (if any), and event counts." }, { "slug": "HOOKDECK_GET_REQUEST_BULK_RETRIES", "name": "Get Request Bulk Retries", "description": "Tool to retrieve bulk retry operations for Hookdeck requests. Use when you need to check the status of request bulk retry jobs, monitor their progress, or list historical request bulk retry operations." }, { "slug": "HOOKDECK_GET_REQUEST_BULK_RETRY", "name": "Get Request Bulk Retry Status", "description": "Tool to retrieve the status of a requests bulk retry operation. Use when you need to check the progress or completion status of a bulk retry job for webhook requests." }, { "slug": "HOOKDECK_GET_REQUEST_EVENTS", "name": "Get Request Events", "description": "Tool to retrieve events associated with a specific Hookdeck request. Use when you need to get all events that were created from a particular request." }, { "slug": "HOOKDECK_GET_REQUEST_IGNORED_EVENTS", "name": "Get Request Ignored Events", "description": "Retrieve the list of ignored events for a specific Hookdeck request. Use this tool when you need to inspect why certain events were ignored for a particular request. The request ID can be obtained from the HOOKDECK_GET_REQUESTS action. Returns a paginated list of ignored events with their causes and metadata." }, { "slug": "HOOKDECK_GET_REQUEST_RAW_BODY", "name": "Get Request Raw Body", "description": "Tool to retrieve the raw body data of a request. Use when you need to access the original unmodified request body payload of a Hookdeck request." }, { "slug": "HOOKDECK_GET_REQUESTS", "name": "Hookdeck: Get Requests", "description": "Tool to list Hookdeck requests. Use when you need to retrieve requests with optional filters and pagination." }, { "slug": "HOOKDECK_GET_REQUESTS_METRICS", "name": "Get requests metrics", "description": "Tool to query aggregated request metrics with time-based grouping and filtering. Use when you need to analyze request patterns over time, calculate statistics like request counts, or group metrics by dimensions such as status or source." }, { "slug": "HOOKDECK_GET_SOURCE", "name": "Get Hookdeck Source", "description": "Tool to retrieve details of a specific Hookdeck source. Use after confirming the source ID." }, { "slug": "HOOKDECK_GET_SOURCES", "name": "Get sources", "description": "Tool to retrieve all sources associated with your Hookdeck account. Use when you need to list or filter hook sources." }, { "slug": "HOOKDECK_GET_TRANSFORMATION", "name": "Get Hookdeck Transformation", "description": "Retrieves the complete details of a specific Hookdeck transformation by its ID. Use this tool when you need to inspect a transformation's JavaScript code, environment variables, or metadata. Requires a valid transformation_id which can be obtained from HOOKDECK_GET_TRANSFORMATIONS. Returns the transformation's code, name, environment variables, and timestamps." }, { "slug": "HOOKDECK_GET_TRANSFORMATION_EXECUTION", "name": "Get Transformation Execution", "description": "Retrieve a specific transformation execution by transformation ID and execution ID. Use this tool to inspect execution details including original and transformed event data, logs, and any issues that occurred." }, { "slug": "HOOKDECK_GET_TRANSFORMATION_EXECUTIONS", "name": "Get transformation executions", "description": "Tool to retrieve executions for a specific Hookdeck transformation. Use when you need to inspect transformation execution logs, debug transformation failures, or analyze transformation performance." }, { "slug": "HOOKDECK_GET_TRANSFORMATIONS", "name": "Get transformations", "description": "Tool to list Hookdeck transformations. Use when you need to retrieve or filter your Hookdeck transformations." }, { "slug": "HOOKDECK_GET_TRANSFORMATIONS_COUNT", "name": "Get Transformations Count", "description": "Tool to get the count of Hookdeck transformations with optional filters. Use when you need to get the total number of transformations without retrieving full details." }, { "slug": "HOOKDECK_GET_TRANSFORMATIONS_METRICS", "name": "Get transformations metrics", "description": "Tool to query aggregated transformation execution metrics with time-based grouping and filtering. Use when you need to analyze transformation patterns over time, calculate statistics like execution counts, or group metrics by dimensions such as transformation_id or status." }, { "slug": "HOOKDECK_LIST_BOOKMARKS", "name": "List Hookdeck Bookmarks", "description": "Tool to list bookmarks. Use when you need to retrieve your Hookdeck account's bookmarks with optional filters and pagination. Use after authenticating your session." }, { "slug": "HOOKDECK_LIST_CUSTOM_DOMAINS", "name": "List Custom Domains", "description": "Tool to list all custom domains and their verification statuses for the Hookdeck project. Use when you need to view configured custom domains, check their verification status, or monitor SSL certificate details." }, { "slug": "HOOKDECK_LIST_ISSUES", "name": "Hookdeck: List Issues", "description": "Tool to list all issues detected in your Hookdeck account. Use when you need to retrieve and filter issues by type, status, or time." }, { "slug": "HOOKDECK_PAUSE_CONNECTION", "name": "Hookdeck Pause Connection", "description": "Tool to pause a Hookdeck connection. Use when you need to temporarily stop event delivery for a connection without deleting it." }, { "slug": "HOOKDECK_PUBLISH_EVENT", "name": "Publish Event to Hookdeck", "description": "Tool to publish a webhook event to Hookdeck using the Publish API. Use when testing webhook flows or sending events from your application." }, { "slug": "HOOKDECK_REPLAY_EVENT", "name": "Replay Hookdeck Event", "description": "Replay (retry) a specific Hookdeck event delivery. Use this to manually retry a failed or queued event. The event will be re-queued for delivery to its destination. After replay, Hookdeck will attempt to deliver the event; if successful, any scheduled automatic retries will be canceled. Note: The event's connection must still be active - events with deleted connections cannot be replayed." }, { "slug": "HOOKDECK_RESOLVE_ISSUE", "name": "Resolve Hookdeck Issue", "description": "Tool to resolve a Hookdeck issue. Use after confirming the underlying issue has been addressed." }, { "slug": "HOOKDECK_RETRIEVE_ISSUE", "name": "Retrieve Hookdeck Issue", "description": "Retrieves detailed information about a specific Hookdeck issue by its ID. Use this tool when you need to get complete details about a known issue, including its status, type (delivery/transformation/backpressure), aggregation keys, timestamps, and reference information. To find issue IDs, use the List Issues action first." }, { "slug": "HOOKDECK_SEND_SOURCE_REQUEST", "name": "Send Hookdeck Source Request", "description": "Tool to send HTTP requests to a Hookdeck Source URL. Use when ingesting test payloads to generate events for testing HOOKDECK_GET_EVENT." }, { "slug": "HOOKDECK_TEST_TRANSFORMATION", "name": "Test Hookdeck Transformation", "description": "Tool to test a Hookdeck transformation code before deploying it. Use when you need to verify that transformation JavaScript code works correctly with sample request data." }, { "slug": "HOOKDECK_TOGGLE_WEBHOOK_NOTIFICATIONS", "name": "Toggle Webhook Notifications", "description": "Tool to toggle webhook notifications for the project. Use when you need to enable or disable webhook notifications and configure which topics to receive." }, { "slug": "HOOKDECK_TRIGGER_BOOKMARK", "name": "Trigger Hookdeck Bookmark", "description": "Trigger a Hookdeck bookmark to replay its stored webhook request. When triggered, a new event is created from the bookmarked request data and delivered to the associated destination. This is useful for testing webhook handlers or replaying specific scenarios during development. Note: The bookmark must be associated with an active connection (webhook). Triggering a bookmark with a deleted connection will fail with a 404 error." }, { "slug": "HOOKDECK_UNPAUSE_CONNECTION", "name": "Unpause Hookdeck Connection", "description": "Tool to unpause a paused Hookdeck connection. Use when you need to resume event processing for a previously paused connection." }, { "slug": "HOOKDECK_UPDATE_BOOKMARK", "name": "Update Hookdeck Bookmark", "description": "Tool to update an existing bookmark in Hookdeck. Use when you need to modify a bookmark's label, name, associated event data, or connection. At least one field (label, name, event_data_id, or webhook_id) must be provided for the update." }, { "slug": "HOOKDECK_UPDATE_CONNECTION", "name": "Hookdeck Update Connection", "description": "Upsert (create or update) a Hookdeck connection between a source and destination. The connection is identified by the source and destination combination. If a connection with the given source and destination exists, it will be updated. Otherwise, a new connection is created. Use this tool to: - Create a new connection between a source and destination - Update an existing connection's name, description, or rules - Configure webhook routing with retry, filter, or transform rules" }, { "slug": "HOOKDECK_UPDATE_CONNECTION2", "name": "Update Connection by ID", "description": "Tool to update an existing Hookdeck connection by its ID. Use when you need to modify a connection's description, name, or rules." }, { "slug": "HOOKDECK_UPDATE_DESTINATION", "name": "Update Hookdeck Destination", "description": "Tool to update an existing Hookdeck destination. Use when you need to modify a destination's settings after creation." }, { "slug": "HOOKDECK_UPDATE_INTEGRATION", "name": "Update Hookdeck Integration", "description": "Tool to update an existing Hookdeck integration. Use when you need to modify integration configuration, change labels, update provider settings, or enable/disable features." }, { "slug": "HOOKDECK_UPDATE_ISSUE_TRIGGER", "name": "Update Hookdeck Issue Trigger", "description": "Tool to update an issue trigger in Hookdeck. Use when you need to modify the name, channels, configs, or disabled status of an existing issue trigger." }, { "slug": "HOOKDECK_UPDATE_SOURCE", "name": "Update Hookdeck Source", "description": "Update an existing Hookdeck source's name, type, or description. Use this tool when you need to: - Rename a source - Change a source's type (e.g., from WEBHOOK to STRIPE) - Update or add a description to a source Note: Source configuration (allowed_http_methods, auth settings) cannot be updated via this endpoint. At least one field (name, type, or description) must be provided." }, { "slug": "HOOKDECK_UPDATE_TRANSFORMATION", "name": "Update Hookdeck Transformation", "description": "Tool to update an existing Hookdeck transformation. Use when you need to modify a transformation's code, name, or environment variables after creation." }, { "slug": "HOOKDECK_UPSERT_DESTINATION", "name": "Upsert Hookdeck Destination", "description": "Tool to create or update a Hookdeck destination. If a destination with the given name exists, it updates it; otherwise creates a new one. Use when configuring webhook endpoints for event routing." }, { "slug": "HOOKDECK_UPSERT_ISSUE_TRIGGER", "name": "Upsert Hookdeck Issue Trigger", "description": "Tool to create or update an issue trigger in Hookdeck using upsert semantics. If a trigger with the given name exists, it will be updated; otherwise, a new trigger is created." }, { "slug": "HOOKDECK_UPSERT_SOURCE", "name": "Upsert Hookdeck Source", "description": "Tool to create or update a Hookdeck source by name. If a source with the given name exists, it will be updated; otherwise, a new source is created." }, { "slug": "HOOKDECK_UPSERT_TRANSFORMATION", "name": "Upsert Hookdeck Transformation", "description": "Tool to create or update a Hookdeck transformation by name. Use when you want to ensure a transformation exists with specific code, creating it if it doesn't exist or updating it if it does." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hookdeck_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Hookdeck API Key", "type": "string", "description": "Your Hookdeck API key, found in your workspace settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hostinger", "name": "Hostinger", "logo": "https://logos.composio.dev/api/hostinger", "description": "Web hosting and domain management platform with APIs for billing, domains, DNS, and VPS management", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HOSTINGER_CHECK_DOMAIN_AVAILABILITY", "name": "Check Domain Availability", "description": "Check domain availability. Verify if domain names are available for registration across multiple TLDs. Use this endpoint to check domain availability before purchase. Multiple TLDs can be checked at once. TLDs should be provided without leading dot (e.g., 'com', 'net', 'org'). If you want alternative domain suggestions with the response, provide only one TLD and set with_alternatives to true. Note: This endpoint has a rate limit of 10 requests per minute." }, { "slug": "HOSTINGER_CREATE_PUBLIC_KEY", "name": "Create VPS Public Key", "description": "Create public key. Add a new public key to your account for VPS SSH authentication. Use this endpoint to register SSH keys that can be used for authenticating to VPS instances. The public key will be associated with your account and can be assigned to VPS during creation or via VPS management endpoints." }, { "slug": "HOSTINGER_CREATE_WHOIS_PROFILE", "name": "Create WHOIS Profile", "description": "Create a WHOIS contact profile for domain registration. Use this endpoint to add new contact information that can be used when registering domains. The WHOIS profile is required for domain registration and contains contact details such as name, email, phone, and address. The entity_type determines whether the contact is an individual or an organization. The created profile can be applied to domains matching the specified TLD." }, { "slug": "HOSTINGER_DELETE_PUBLIC_KEY", "name": "Delete Public Key", "description": "Delete public key. Use this endpoint to remove unused SSH public keys from your account. Note: Deleting a public key from your account does not remove it from any virtual machines." }, { "slug": "HOSTINGER_GENERATE_FREE_SUBDOMAIN", "name": "Generate Free Subdomain", "description": "Generate a free subdomain. Create a unique free subdomain that can be used for hosting services without purchasing custom domains. Free subdomains allow you to start using hosting services immediately, and you can always connect a custom domain to your site later." }, { "slug": "HOSTINGER_GET_DNS_RECORDS", "name": "Get DNS Records", "description": "Tool to retrieve DNS records for a domain. Use this endpoint to view current DNS configuration for domain management purposes. Example use cases: - Review current DNS settings before making changes - Check propagation status after DNS updates - Audit DNS configuration for a domain" }, { "slug": "HOSTINGER_GET_DOMAIN_FORWARDING", "name": "Get Domain Forwarding", "description": "Tool to retrieve domain forwarding configuration. Use when you need to view the current redirect settings for a domain, including the target URL and redirect type (301/302)." }, { "slug": "HOSTINGER_GET_TEMPLATE_DETAILS", "name": "Get VPS Template Details", "description": "Get template details. Retrieve detailed information about a specific OS template for virtual machines. Use this endpoint to view specific template specifications before deployment. Example use cases: - Review template details before VPS deployment - Check OS version and documentation links - Verify template availability and specifications" }, { "slug": "HOSTINGER_GET_WHOIS_PROFILE", "name": "Get WHOIS Profile", "description": "Get WHOIS profile. Retrieve a WHOIS contact profile for domain registration contact information. Use this endpoint to view domain registration contact information including registrant, admin, and technical contacts." }, { "slug": "HOSTINGER_GET_WHOIS_PROFILE_USAGE", "name": "Get WHOIS Profile Usage", "description": "Tool to retrieve domain list where provided WHOIS contact profile is used. Use this endpoint to view which domains use specific contact profiles." }, { "slug": "HOSTINGER_LIST_CATALOG_ITEMS", "name": "List Catalog Items", "description": "Get catalog item list. Retrieve catalog items available for order. Use this endpoint to view available services and pricing before placing orders. Prices in catalog items are displayed as cents (without floating point), e.g., float 17.99 is displayed as integer 1799." }, { "slug": "HOSTINGER_LIST_DATA_CENTERS", "name": "List VPS Data Centers", "description": "Get data center list. Retrieve all available data centers. Use this endpoint to view location options before deploying VPS instances. Returns a list of all available data centers with their city, continent, country code, and name information." }, { "slug": "HOSTINGER_LIST_DNS_SNAPSHOTS", "name": "List DNS Snapshots", "description": "Tool to retrieve DNS snapshots for a domain. Use when you need to view available DNS backup points for restoration or audit purposes." }, { "slug": "HOSTINGER_LIST_DOMAINS", "name": "List Domains", "description": "Get domain list. Retrieve all domains associated with your account. Use this endpoint to view user's domain portfolio." }, { "slug": "HOSTINGER_LIST_ORDERS", "name": "List Hosting Orders", "description": "Tool to list hosting orders. Retrieve a paginated list of orders accessible to the authenticated client. This endpoint returns orders of your hosting accounts as well as orders of other client hosting accounts that have shared access with you. Use the available query parameters to filter results by order statuses or specific order IDs for more targeted results." }, { "slug": "HOSTINGER_LIST_PAYMENT_METHODS", "name": "List Payment Methods", "description": "Get payment method list. Retrieve available payment methods that can be used for placing new orders. Use this endpoint to view available payment options before creating orders. This action requires no request parameters. Note: To add a new payment method, use hPanel instead: https://hpanel.hostinger.com/billing/payment-methods" }, { "slug": "HOSTINGER_LIST_PUBLIC_KEYS", "name": "List Public Keys", "description": "Get public keys. Retrieve public keys associated with your account. Use this endpoint to view available SSH keys for VPS authentication." }, { "slug": "HOSTINGER_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Get subscription list. Retrieve a list of all subscriptions associated with your account. Use this endpoint to monitor active services and billing status." }, { "slug": "HOSTINGER_LIST_TEMPLATES", "name": "List VPS Templates", "description": "Get templates. Retrieve available OS templates for virtual machines. Use this endpoint to view operating system options before creating or recreating VPS instances. Returns a list of all available templates with their ID, name, description, and documentation links." }, { "slug": "HOSTINGER_LIST_VIRTUAL_MACHINES", "name": "List Virtual Machines", "description": "Get virtual machines. Retrieve all available virtual machines. Use this endpoint to view available VPS instances. Returns a list of all virtual machines with their configuration details including CPU, memory, disk, IP addresses, and current state." }, { "slug": "HOSTINGER_LIST_WEBSITES", "name": "List Websites", "description": "List websites. Retrieve a paginated list of websites (main and addon types) accessible to the authenticated client. This endpoint returns websites from your hosting accounts as well as websites from other client hosting accounts that have shared access with you. Use the available query parameters to filter results by username, order ID, enabled status, or domain name for more targeted results." }, { "slug": "HOSTINGER_LIST_WHOIS_PROFILES", "name": "List WHOIS Profiles", "description": "Retrieve WHOIS contact profiles for domain registration. Use this endpoint to view available contact profiles that can be used when registering domains. Optionally filter by TLD to get profiles applicable to specific domain extensions." }, { "slug": "HOSTINGER_VALIDATE_DNS_RECORDS", "name": "Validate DNS Records", "description": "Validate DNS records. Validates DNS records prior to update for the selected domain. Use this endpoint to verify DNS record validity before applying changes. If the validation is successful, the response will contain 200 Success code. If there is a validation error, the response will fail with 422 Validation error code." }, { "slug": "HOSTINGER_VERIFY_DOMAIN_OWNERSHIP", "name": "Verify Domain Ownership", "description": "Verify ownership of a single domain and return the verification status. Use this endpoint to check if a domain is accessible for you before using it for new websites. If the domain is accessible, the response will have `is_accessible: true`. If not, add the given TXT record to your domain's DNS records and try verifying again. Keep in mind that it may take up to 10 minutes for new TXT DNS records to propagate. Skip this verification when using Hostinger's free subdomains (*.hostingersite.com)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hostinger_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API token created at https://hpanel.hostinger.com/profile/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hotspotsystem", "name": "Hotspotsystem", "logo": "https://logos.composio.dev/api/hotspotsystem", "description": "HotspotSystem provides public Wi-Fi hotspot management and billing services for businesses.", "category": "internet of things", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HOTSPOTSYSTEM_CUSTOMERS_LIST", "name": "List Customers", "description": "Lists all customers in the HotspotSystem account with optional filtering. Use this tool to: - Retrieve all customers with their details (name, email, contact info, registration date, etc.) - Paginate through large customer lists using limit and offset parameters - Sort customers by any field in ascending or descending order - Filter response to only include specific fields to reduce payload size Returns metadata with total customer count and an array of customer objects." }, { "slug": "HOTSPOTSYSTEM_CUSTOMERS_LIST_BY_LOCATION", "name": "List Customers by Location", "description": "Lists all customers associated with a specific HotspotSystem location. Use this tool to: - Retrieve customer details (name, email, contact info, registration date) for a specific location - Paginate through large customer lists using limit and offset parameters - Sort customers by any field (prepend '-' for descending order, e.g., '-registered_at') - Filter response to include only specific fields to reduce payload size - Query customers at different locations by location ID Returns metadata with total customer count and an array of customer objects. Note: Empty results (total_count: 0) indicate no customers are registered at the specified location." }, { "slug": "HOTSPOTSYSTEM_GENERATE_VOUCHER_V1", "name": "Generate Voucher (v1)", "description": "Generates an access voucher code on-demand for a specific location. This action creates a single-use voucher that can be used for hotspot access. The voucher is generated against available voucher credits in the specified location. Use this when you need to provide immediate access codes to users. Note: Requires an active location with available voucher credits (use the List Locations action first to get valid location_id values)." }, { "slug": "HOTSPOTSYSTEM_GET_LOCATIONS_OPTIONS", "name": "Get Locations Options", "description": "Tool to get simplified list of locations as dropdown options. Returns only id/name pairs for each location. Use when you need location options for selection menus or dropdowns." }, { "slug": "HOTSPOTSYSTEM_GET_ME", "name": "Get Me", "description": "Tool to verify the resource owner's credentials and retrieve authenticated user information. Use when you need to confirm authentication status or get the current user's ID and operator name." }, { "slug": "HOTSPOTSYSTEM_LIST_PAID_TRANSACTIONS", "name": "List Paid Transactions", "description": "Tool to list paid transactions globally across all locations. Use when you need to retrieve all paid transaction records with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_LOCATIONS_LIST", "name": "List Locations", "description": "Tool to list the resource owner's locations. Use when you need to retrieve locations with optional filtering, sorting, or pagination." }, { "slug": "HOTSPOTSYSTEM_MISC_PING", "name": "Misc Ping", "description": "Tool to perform health check against the HotspotSystem API. Use when verifying connectivity and availability." }, { "slug": "HOTSPOTSYSTEM_SUBSCRIBERS_LIST", "name": "List Subscribers", "description": "List newsletter subscribers across all locations with optional filtering, sorting, and pagination. Returns subscriber information including contact details (name, email, phone, address) and social network data (Facebook, Google, etc.). Supports field selection to retrieve only needed properties, sorting by any field (ascending or descending), and pagination with limit/offset for large result sets. Use this tool when you need to: - Retrieve all subscribers for the account - Filter subscribers by specific fields - Sort subscribers by registration date, name, email, etc. - Paginate through large subscriber lists" }, { "slug": "HOTSPOTSYSTEM_SUBSCRIBERS_LIST_BY_LOCATION", "name": "List Subscribers by Location", "description": "Tool to list subscribers by location. Use when you need to retrieve subscribers for a specific location with optional field selection, sorting, and pagination." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_MAC", "name": "List MAC Transactions", "description": "Tool to list MAC-based transactions. Use when you need to retrieve MAC transaction records with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_MAC_BY_LOCATION", "name": "List MAC Transactions by Location", "description": "Lists MAC address authentication transactions for a specific location. MAC (Media Access Control) transactions track network access granted based on device MAC addresses. Use this action when you need to: - View MAC-based authentication history for a specific location - Monitor which devices accessed the network via MAC authentication - Retrieve transaction records with customer data and custom fields - Filter and paginate MAC transaction records for reporting For transactions across all locations, use the global MAC transactions endpoint instead." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_PAID_BY_LOCATION", "name": "List Paid Transactions by Location", "description": "Tool to list paid transactions by location. Use when you need to retrieve paid transaction records for a specific location with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_SOCIAL", "name": "List Social Transactions", "description": "Tool to list social transactions. Use when you need to retrieve social transaction records with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_SOCIAL_BY_LOCATION", "name": "List Social Transactions by Location", "description": "Tool to list social transactions by location. Use when you need to retrieve social transaction records for a specific location with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_VOUCHER", "name": "List Voucher Transactions", "description": "Tool to list voucher transactions globally across all locations." }, { "slug": "HOTSPOTSYSTEM_TRANSACTIONS_LIST_VOUCHER_BY_LOCATION", "name": "List Voucher Transactions by Location", "description": "Tool to list voucher transactions by location. Use when you need to retrieve voucher transaction records for a specific location with optional pagination and sorting." }, { "slug": "HOTSPOTSYSTEM_VOUCHERS_LIST", "name": "List Vouchers", "description": "Tool to list the resource owner's vouchers across all locations. Use when you need to retrieve vouchers with optional filtering, sorting, or pagination." }, { "slug": "HOTSPOTSYSTEM_VOUCHERS_LIST_BY_LOCATION", "name": "Vouchers List by Location", "description": "Retrieves all vouchers associated with a specific location in the HotspotSystem. Use this action to: - List all vouchers available at a particular location - Filter voucher results by specific fields - Sort vouchers by any field (e.g., validity, price) - Implement pagination for large voucher lists Each voucher includes details such as serial number, access code, usage limits (traffic/download/upload), validity period, and pricing information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hotspotsystem_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HotspotSystem API Key", "type": "string", "description": "Your API key from Control Center > Tools & Settings > API Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "html_to_image", "name": "HTML to Image", "logo": "https://html2img.com/logo.png", "description": "HTML to Image is a service that converts HTML and CSS into images or captures screenshots of web pages.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "HTML_TO_IMAGE_CHECK_USAGE", "name": "Check HTML-to-Image Account Usage", "description": "Attempts to retrieve account usage statistics from the HTML-to-Image API by trying multiple common endpoint patterns. NOTE: The html2img.com API does not officially document a dedicated usage statistics endpoint. This action tries several plausible endpoint paths and returns empty usage data if none are found (when return_defaults_on_error=true). For actual usage tracking with html2img.com, monitor the 'credits_remaining' field returned in responses from the convert or screenshot endpoints. Returns hourly, daily, and monthly image creation counts if a usage endpoint exists, or empty statistics as a fallback." }, { "slug": "HTML_TO_IMAGE_CONVERT_TO_IMAGE", "name": "Convert HTML to Image", "description": "Tool to convert HTML content into an image. Returns either a downloadable file or a JSON payload containing id and url, depending on the upstream API behavior." }, { "slug": "HTML_TO_IMAGE_GET_IMAGE", "name": "Get HTML to Image", "description": "Retrieve a previously generated image by its URL. Use this to fetch, resize, or download an existing HTML-to-image asset. The image URL is typically obtained from the 'url' field of the HTML_TO_IMAGE_CONVERT_TO_IMAGE response." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "html_to_image_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HTML to Image API Key", "type": "string", "description": "Your unique API key for authenticating requests to the HTML to Image API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "httpsms", "name": "Httpsms", "logo": "https://logos.composio.dev/api/httpsms", "description": "Convert your Android phone into an SMS gateway to send and receive SMS messages programmatically via API", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "httpsms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your httpSMS API key from https://httpsms.com/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hub_planner", "name": "Hub Planner", "logo": "https://logos.composio.dev/api/hub_planner", "description": "A Modern and Smart Resource Management, Planning & Scheduling tool with Time Sheets and Powerful Reporting. Ideal for Managing Global Teams of Resources.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 122, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HUB_PLANNER_ADD_CLIENTS_TO_PROJECT", "name": "Add Clients to Project", "description": "Tool to add clients to a project by project ID. Use when you need to associate one or more clients with a specific project." }, { "slug": "HUB_PLANNER_ADD_PROJECT_CUSTOM_FIELD_CHOICES", "name": "Add project custom field choices", "description": "Add choices to a project custom field template of SELECT, RADIO, or CHECKBOX type. Use when you need to add new options to an existing dropdown, radio button, or checkbox custom field in Hub Planner projects." }, { "slug": "HUB_PLANNER_ADD_PROJECTS_TO_GROUP", "name": "Add Projects to Group", "description": "Tool to add projects to a project group in Hub Planner. Use when you need to associate one or more projects with a specific project group." }, { "slug": "HUB_PLANNER_ADD_PROJECT_TAGS", "name": "Add Project Tags", "description": "Tool to add tags to a Hub Planner project. Preserves existing tags and appends new ones. Use when you need to add one or more tags to a project without removing existing tags." }, { "slug": "HUB_PLANNER_ADD_RESOURCE_CUSTOM_FIELD_CHOICES", "name": "Add Resource Custom Field Choices", "description": "Tool to add choices to a resource custom field template of SELECT, RADIO, or CHECKBOX type. Use when you need to add new selection options to an existing custom field template." }, { "slug": "HUB_PLANNER_ADD_RESOURCES_TO_PROJECT", "name": "Add Resources to Project", "description": "Tool to add resources to a project by project ID. Use when you need to associate one or more resources with a specific project." }, { "slug": "HUB_PLANNER_ADD_RESOURCES_TO_RESOURCE_GROUP", "name": "Add Resources to Resource Group", "description": "Tool to add resources to a resource group by group ID. Use when you need to associate one or more resources with a specific resource group." }, { "slug": "HUB_PLANNER_ADD_RESOURCE_TAGS", "name": "Add Resource Tags", "description": "Tool to add tags to a resource in Hub Planner. Preserves existing tags and appends new ones. Use when you need to categorize, label, or organize resources using tags." }, { "slug": "HUB_PLANNER_CREATE_BILLING_RATE", "name": "Create Billing Rate", "description": "Tool to create a new billing rate in Hub Planner. Use when you need to define a new billing rate with a specific name, currency, and rate amount." }, { "slug": "HUB_PLANNER_CREATE_BOOKING", "name": "Create Booking", "description": "Tool to create a new booking for a resource on a project in Hub Planner. Supports scheduled bookings, booking requests (WAITING_FOR_APPROVAL), and hourly bookings. Use when you need to allocate resources to projects with specific start/end dates and time commitments." }, { "slug": "HUB_PLANNER_CREATE_BOOKING_CATEGORY", "name": "Create Booking Category", "description": "Tool to create a new booking category in Hub Planner. Use when you need to define a new category type for classifying bookings (e.g., \"At Client\", \"Remote Work\", \"Training\")." }, { "slug": "HUB_PLANNER_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client in Hub Planner. Use when you need to add a new client organization to the system." }, { "slug": "HUB_PLANNER_CREATE_COST_CATEGORY", "name": "Create Cost Category", "description": "Tool to create a new project cost category in Hub Planner. Use when you need to add a new cost category for tracking project expenses." }, { "slug": "HUB_PLANNER_CREATE_EVENT", "name": "Create Event", "description": "Tool to create a new event in Hub Planner. Use when you need to set up a new event with a specified name and optional code, color, and metadata." }, { "slug": "HUB_PLANNER_CREATE_HOLIDAY", "name": "Create Holiday", "description": "Tool to create a new holiday in Hub Planner. Use when you need to add a company holiday, public holiday, or special date that should be marked in the calendar." }, { "slug": "HUB_PLANNER_CREATE_MILESTONE", "name": "Create Milestone", "description": "Tool to create a new milestone for a project in Hub Planner. Use when you need to set up a milestone with a specified name, date, and project association." }, { "slug": "HUB_PLANNER_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Hub Planner. Use when you need to set up a new project with specified name, budget, resources, and other configuration options." }, { "slug": "HUB_PLANNER_CREATE_PROJECT_CUSTOM_FIELD_TEMPLATE", "name": "Create Project Custom Field Template", "description": "Tool to create a new project custom field template in Hub Planner. Use when you need to define reusable custom field structures for projects with specific types like TEXT, SELECT, DATE, etc." }, { "slug": "HUB_PLANNER_CREATE_PROJECT_GROUP", "name": "Create Project Group", "description": "Tool to create a new project group in Hub Planner. Use when you need to organize projects into groups for better management and categorization. Can create top-level groups or subgroups (with parentGroupId, requires Sidebar Pro extension)." }, { "slug": "HUB_PLANNER_CREATE_PROJECT_TAG", "name": "Create Project Tag", "description": "Tool to create a new project tag in Hub Planner. Use when you need to add a new tag that can be associated with projects for categorization and organization purposes." }, { "slug": "HUB_PLANNER_CREATE_RESOURCE", "name": "Create Resource", "description": "Tool to create a new resource in Hub Planner. Pass a resource object with firstName (required) and optional fields. Can optionally send an invitation email by setting sendInviteEmail to true (requires email field)." }, { "slug": "HUB_PLANNER_CREATE_RESOURCE_CUSTOM_FIELD_TEMPLATE", "name": "Create Resource Custom Field Template", "description": "Tool to create a new resource custom field template in Hub Planner. Use when you need to add custom fields to resource profiles (e.g., department, skills, certifications)." }, { "slug": "HUB_PLANNER_CREATE_RESOURCE_TAG", "name": "Create Resource Tag", "description": "Tool to create a new resource tag in Hub Planner. Use when you need to add a new tag for categorizing or labeling resources." }, { "slug": "HUB_PLANNER_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry for a resource on a project in Hub Planner. Use when you need to log time spent by team members on specific projects with date and duration." }, { "slug": "HUB_PLANNER_CREATE_VACATION", "name": "Create Vacation", "description": "Tool to create a new vacation request for a resource in Hub Planner. Supports approval workflow with configurable approvers and statuses. Use when you need to create time-off requests for team members." }, { "slug": "HUB_PLANNER_DELETE_BILLING_RATE", "name": "Delete Billing Rate", "description": "Tool to delete a specific billing rate by ID in Hub Planner. Use when you need to permanently remove a billing rate." }, { "slug": "HUB_PLANNER_DELETE_BOOKING", "name": "Delete Booking", "description": "Tool to delete a specific booking by ID in Hub Planner. Use when you need to permanently remove a booking." }, { "slug": "HUB_PLANNER_DELETE_BOOKINGS", "name": "Delete Bookings", "description": "Tool to delete multiple bookings by IDs, resource ID, or project ID. Use when you need to remove bookings from Hub Planner based on specific criteria." }, { "slug": "HUB_PLANNER_DELETE_CLIENT", "name": "Delete Client", "description": "Tool to delete a specific client by ID in Hub Planner. Use when you need to permanently remove a client organization." }, { "slug": "HUB_PLANNER_DELETE_COST_CATEGORY", "name": "Delete Cost Category", "description": "Tool to delete a specific project cost category by ID in Hub Planner. Use when you need to permanently remove a cost category." }, { "slug": "HUB_PLANNER_DELETE_EVENT", "name": "Delete Event", "description": "Tool to delete a specific event by ID in Hub Planner. Use when you need to permanently remove an event." }, { "slug": "HUB_PLANNER_DELETE_HOLIDAY", "name": "Delete Holiday", "description": "Tool to delete a specific holiday by ID in Hub Planner. Use when you need to permanently remove a holiday." }, { "slug": "HUB_PLANNER_DELETE_MILESTONE", "name": "Delete Milestone", "description": "Tool to delete a specific milestone by ID in Hub Planner. Use when you need to permanently remove a milestone." }, { "slug": "HUB_PLANNER_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a specific project by ID in Hub Planner. Use when you need to permanently remove a project." }, { "slug": "HUB_PLANNER_DELETE_PROJECT_CUSTOM_FIELD_TEMPLATE", "name": "Delete Project Custom Field Template", "description": "Tool to delete a project custom field template by its ID. Use when you need to remove a custom field template from the project configuration." }, { "slug": "HUB_PLANNER_DELETE_PROJECT_GROUP", "name": "Delete Project Group", "description": "Tool to delete a specific project group by ID in Hub Planner. Use when you need to permanently remove a project group." }, { "slug": "HUB_PLANNER_DELETE_PROJECTS", "name": "Delete Projects", "description": "Tool to delete multiple projects by their IDs in a single operation. Use when you need to remove multiple projects from Hub Planner." }, { "slug": "HUB_PLANNER_DELETE_PROJECT_TAG", "name": "Delete Project Tag", "description": "Tool to delete a specific project tag by ID in Hub Planner. Use when you need to permanently remove a project tag from the system." }, { "slug": "HUB_PLANNER_DELETE_RESOURCE", "name": "Delete Resource", "description": "Tool to delete a specific resource by ID. Use when you need to remove a resource from Hub Planner." }, { "slug": "HUB_PLANNER_DELETE_RESOURCE_CUSTOM_FIELD_TEMPLATE", "name": "Delete Resource Custom Field Template", "description": "Tool to delete a specific resource custom field template by ID. Use when permanently removing a custom field template after confirming the correct template ID." }, { "slug": "HUB_PLANNER_DELETE_RESOURCES", "name": "Delete resources", "description": "Tool to delete multiple resources by their IDs in a single operation. Use when you need to remove multiple resources from Hub Planner." }, { "slug": "HUB_PLANNER_DELETE_RESOURCE_TAG", "name": "Delete Resource Tag", "description": "Tool to delete a specific resource tag by ID in Hub Planner. Use when you need to permanently remove a resource tag from the system." }, { "slug": "HUB_PLANNER_DELETE_TIME_ENTRIES", "name": "Delete Time Entries", "description": "Tool to delete multiple time entries by their IDs in a single operation. Use when you need to remove multiple time entries from Hub Planner timesheets." }, { "slug": "HUB_PLANNER_DELETE_TIME_ENTRY", "name": "Delete Time Entry", "description": "Tool to delete a specific time entry by ID in Hub Planner. Use when you need to permanently remove a time entry." }, { "slug": "HUB_PLANNER_DELETE_VACATION", "name": "Delete Vacation", "description": "Tool to delete a specific vacation by ID in Hub Planner. Use when you need to permanently remove a vacation." }, { "slug": "HUB_PLANNER_GET_BILLING_RATE", "name": "Get Billing Rate by ID", "description": "Tool to retrieve a specific billing rate by ID from Hub Planner. Use when you need to fetch detailed information about a billing rate including its label, currency, and rate amount." }, { "slug": "HUB_PLANNER_GET_BOOKING", "name": "Get Booking by ID", "description": "Tool to retrieve a specific booking by ID from Hub Planner. Use when you need to fetch detailed information about a specific booking including resource assignments, project associations, dates, approval state, and billing rates." }, { "slug": "HUB_PLANNER_GET_BOOKING_CATEGORY", "name": "Get Booking Category by ID", "description": "Tool to retrieve a specific booking category by ID from Hub Planner. Use when you need to fetch detailed information about a booking category including its name, color, type, and group associations." }, { "slug": "HUB_PLANNER_GET_CLIENT", "name": "Get Client by ID", "description": "Tool to retrieve a specific client by ID from Hub Planner. Use when you need to fetch detailed information about a client organization." }, { "slug": "HUB_PLANNER_GET_COST_CATEGORY", "name": "Get Cost Category", "description": "Tool to retrieve a specific project cost category by ID from Hub Planner. Returns the cost category object including name and timestamps. Use when you need detailed information about a specific project cost category." }, { "slug": "HUB_PLANNER_GET_EVENT", "name": "Get Event by ID", "description": "Tool to retrieve a specific event by ID from Hub Planner. Use when you need to fetch detailed information about a specific event including its name, code, dates, and color settings." }, { "slug": "HUB_PLANNER_GET_HOLIDAY", "name": "Get Holiday by ID", "description": "Tool to retrieve a specific holiday by ID from Hub Planner. Use when you need to fetch detailed information about a specific holiday including its name, date, color, and repeat settings." }, { "slug": "HUB_PLANNER_GET_MILESTONE", "name": "Get Milestone", "description": "Tool to retrieve a specific milestone by ID from Hub Planner. Returns the milestone details including name, date, project reference, and metadata. Use when you need information about a specific project milestone." }, { "slug": "HUB_PLANNER_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a specific project by ID from Hub Planner. Returns the full project object including name, status, resources, budget, custom fields, and tags. Use when you need detailed information about a specific project." }, { "slug": "HUB_PLANNER_GET_PROJECT_CUSTOM_FIELD_TEMPLATE", "name": "Get Project Custom Field Template", "description": "Tool to retrieve a specific project custom field template by ID. Use when you need to get details about a particular project custom field configuration." }, { "slug": "HUB_PLANNER_GET_PROJECT_CUSTOM_FIELD_TEMPLATES", "name": "Get Project Custom Field Templates", "description": "Tool to retrieve all project custom field templates defined for your Hub Planner account. Use when you need to see available custom field configurations that can be applied to projects." }, { "slug": "HUB_PLANNER_GET_PROJECT_GROUP", "name": "Get Project Group", "description": "Tool to retrieve a specific project group by ID from Hub Planner. Returns the project group object including name, associated project IDs, and metadata. Use when you need detailed information about a specific project group." }, { "slug": "HUB_PLANNER_GET_PROJECT_TAGS", "name": "Get Project Tags", "description": "Tool to retrieve all tags associated with a specific Hub Planner project. Use when you need to view the current tags on a project." }, { "slug": "HUB_PLANNER_GET_RESOURCE", "name": "Get Resource by ID", "description": "Tool to retrieve a specific resource by ID from Hub Planner. Use when you need to fetch detailed information about a team member or resource." }, { "slug": "HUB_PLANNER_GET_RESOURCE_CUSTOM_FIELD_TEMPLATE", "name": "Get Resource Custom Field Template", "description": "Tool to retrieve a specific resource custom field template by ID from Hub Planner. Use when you need to fetch detailed configuration and schema information about a custom field template." }, { "slug": "HUB_PLANNER_GET_RESOURCE_CUSTOM_FIELD_TEMPLATES", "name": "Get Resource Custom Field Templates", "description": "Tool to retrieve custom field templates defined for resources in your Hub Planner account. Use when you need to understand available custom fields, their types, validation rules, and configuration options for resources." }, { "slug": "HUB_PLANNER_GET_RESOURCE_TAGS", "name": "Get Resource Tags", "description": "Tool to retrieve all tags associated with a specific resource from Hub Planner. Returns an array of tag objects containing tag ID, value, and category. Use when you need to view all tags assigned to a resource." }, { "slug": "HUB_PLANNER_GET_TIME_ENTRY", "name": "Get Time Entry by ID", "description": "Tool to retrieve a specific time entry by ID from Hub Planner. Use when you need to fetch detailed information about a logged time entry including project details, duration, status, and approval state." }, { "slug": "HUB_PLANNER_GET_VACATION", "name": "Get Vacation by ID", "description": "Tool to retrieve a specific vacation by ID from Hub Planner. Use when you need to fetch detailed information about a vacation request including approval status, dates, resource assignment, and approval notes." }, { "slug": "HUB_PLANNER_LIST_BILLING_RATES", "name": "List Billing Rates", "description": "Tool to retrieve all billing rates from Hub Planner. Returns an array of billing rate objects with details including label, currency, rate amount, and metadata. Use when you need to list all available billing rates with optional pagination support." }, { "slug": "HUB_PLANNER_LIST_BOOKING_CATEGORIES", "name": "List Booking Categories", "description": "Tool to retrieve all booking categories from Hub Planner. Returns an array of category objects including name, color, type, and group associations. Use when you need to list available booking categories for scheduling or filtering." }, { "slug": "HUB_PLANNER_LIST_BOOKINGS", "name": "List Bookings", "description": "Tool to retrieve all bookings from Hub Planner with pagination support. Returns booking details including resource assignments, project associations, dates, approval states, and billing rates. Use when you need to list, search, or analyze bookings across projects and resources." }, { "slug": "HUB_PLANNER_LIST_CATEGORY_GROUPS", "name": "List Category Groups", "description": "Tool to get all category groups from Hub Planner. Returns an array of category group objects with group name, type, and associated category IDs. Use when you need to retrieve booking category groups. Note that CUSTOM groups require the Booking Category Groups extension." }, { "slug": "HUB_PLANNER_LIST_CLIENTS", "name": "List Clients", "description": "Tool to get all clients from Hub Planner. Returns an array of client objects with details including name and creation date. Use when you need to retrieve the complete list of clients with optional pagination." }, { "slug": "HUB_PLANNER_LIST_COST_CATEGORIES", "name": "List Cost Categories", "description": "Tool to retrieve all project cost categories from Hub Planner. Returns an array of cost category objects with details including name and timestamps. Use when you need to list all available cost categories for projects in your organization." }, { "slug": "HUB_PLANNER_LIST_EVENTS", "name": "List Events", "description": "Tool to retrieve all events from Hub Planner. Events work like projects but are used for non-project activities. Returns an array of event objects with details including name, event code, and custom metadata. Use when you need to list events with optional pagination and sorting." }, { "slug": "HUB_PLANNER_LIST_HOLIDAYS", "name": "List Holidays", "description": "Tool to retrieve all public holidays from Hub Planner. Returns an array of holiday objects with details including name, date, color, and recurrence settings. Use when you need to check public holidays or manage holiday schedules." }, { "slug": "HUB_PLANNER_LIST_PROJECT_GROUPS", "name": "List Project Groups", "description": "Tool to get all project groups from Hub Planner. Returns an array of project group objects with group name, associated project IDs, and metadata. Use when you need to retrieve the complete list of project groups." }, { "slug": "HUB_PLANNER_LIST_PROJECT_MANAGERS", "name": "List Project Managers", "description": "Tool to get all project managers from Hub Planner. Returns an array of project manager objects with details including email, name, status, role, and custom fields. Use when you need to retrieve the complete list of users who have project manager privileges." }, { "slug": "HUB_PLANNER_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve all projects from Hub Planner. Returns an array of project objects with details including name, status, resources, project managers, budget settings, custom fields, and tags. Use when you need to list projects with optional pagination and sorting." }, { "slug": "HUB_PLANNER_LIST_PROJECT_TAGS", "name": "List Project Tags", "description": "Tool to retrieve all project tags from Hub Planner. Returns an array of project tag objects containing tag ID, value, and category. Use when you need to view all available project tags in the system." }, { "slug": "HUB_PLANNER_LIST_RESOURCE_GROUPS", "name": "List Resource Groups", "description": "Tool to get all resource groups from Hub Planner. Returns an array of resource group objects with group name, associated resource IDs, approvers, and metadata. Use when you need to retrieve the complete list of resource groups." }, { "slug": "HUB_PLANNER_LIST_RESOURCES", "name": "List Resources", "description": "Tool to get all resources from Hub Planner. Returns an array of resource objects with details including name, email, status, role, billing, and custom fields. Use when you need to retrieve the complete list of resources with optional pagination and sorting." }, { "slug": "HUB_PLANNER_LIST_RESOURCE_TAGS", "name": "List Resource Tags", "description": "Tool to get all resource tags from Hub Planner. Returns an array of resource tag objects with ID, value, and category. Use when you need to retrieve the complete list of resource tags in the system." }, { "slug": "HUB_PLANNER_LIST_TIME_ENTRIES", "name": "List Time Entries", "description": "Tool to get all time entries from Hub Planner. Returns paginated results with time entry details including resource, project, date, minutes, and status. Use when you need to retrieve time tracking data across projects and resources." }, { "slug": "HUB_PLANNER_LIST_UNASSIGNED_WORK", "name": "List Unassigned Work", "description": "Tool to retrieve all unassigned work from Hub Planner. Use when you need to get a list of work items that have not been assigned to any resource. Requires the unassigned work extension to be enabled." }, { "slug": "HUB_PLANNER_LIST_VACATIONS", "name": "List Vacations", "description": "Tool to retrieve all vacations from Hub Planner. Requires Vacation extension to be enabled. Returns an array of vacation objects with details including resource assignments, dates, approval status, and allocation information." }, { "slug": "HUB_PLANNER_PATCH_BOOKING", "name": "Patch Booking", "description": "Tool to partially update an existing booking in Hub Planner. Unlike PUT, only pass the properties you want to modify. Use when you need to update booking details like dates, notes, state values, or to approve/reject booking requests." }, { "slug": "HUB_PLANNER_PATCH_VACATION", "name": "Patch Vacation", "description": "Tool to partially update an existing vacation by ID in Hub Planner. Preferred method over PUT for partial updates. Use when you need to modify specific vacation fields like percentAllocation, title, or approval status without sending the entire vacation object." }, { "slug": "HUB_PLANNER_REMOVE_CLIENT_FROM_PROJECTS", "name": "Remove Client From Projects", "description": "Tool to remove a client from one or more projects in Hub Planner. Use when you need to unlink a client from specific projects by providing an array of project IDs." }, { "slug": "HUB_PLANNER_REMOVE_PROJECT_FROM_GROUPS", "name": "Remove Project From Groups", "description": "Tool to remove a project from one or more project groups in Hub Planner. Use when you need to unlink a project from specific groups by providing an array of group IDs." }, { "slug": "HUB_PLANNER_REMOVE_PROJECT_TAG", "name": "Remove Project Tag", "description": "Tool to remove a tag from a Hub Planner project. Use when you need to detach a tag from a specific project." }, { "slug": "HUB_PLANNER_REMOVE_RESOURCE_FROM_PROJECTS", "name": "Remove Resource from Projects", "description": "Tool to remove a resource from one or more projects in Hub Planner. Use when you need to unassign a resource from specific projects by providing the resource ID and an array of project IDs." }, { "slug": "HUB_PLANNER_REMOVE_RESOURCE_TAG", "name": "Remove Resource Tag", "description": "Tool to remove a tag from a resource. Use when you need to disassociate a specific tag from a resource." }, { "slug": "HUB_PLANNER_SEARCH_BILLING_RATES", "name": "Search Billing Rates", "description": "Tool to search billing rates in Hub Planner with filters. Supports filtering by currency, label, rate amount, and metadata. Use when you need to find billing rates matching specific criteria." }, { "slug": "HUB_PLANNER_SEARCH_BOOKING_CATEGORIES", "name": "Search Booking Categories", "description": "Tool to search booking categories in Hub Planner with filters. Use when you need to find booking categories by type, name, or category group. Supports filtering by NON_OPTIONAL/CUSTOM types and partial name matching." }, { "slug": "HUB_PLANNER_SEARCH_BOOKINGS", "name": "Search Bookings", "description": "Tool to search bookings in Hub Planner with advanced filters. Supports filtering by resource, project, dates, metadata, and more using MongoDB-style operators ($in, $nin, $lt, $lte, $gte, $gt). Use when you need to find bookings matching specific criteria or date ranges." }, { "slug": "HUB_PLANNER_SEARCH_CLIENTS", "name": "Search Clients", "description": "Tool to search clients with filters in Hub Planner. Use when you need to find clients based on name or metadata. Supports operators like $in, $nin, and $like for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_COST_CATEGORIES", "name": "Search Cost Categories", "description": "Tool to search project cost categories in Hub Planner with filters. Use when you need to find cost categories based on ID or name. Supports MongoDB-style operators like $in and $nin for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_EVENTS", "name": "Search Events", "description": "Tool to search events with filters in Hub Planner. Use when you need to find events based on name, event code, resources, or custom metadata. Supports operators like $in and $nin for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_HOLIDAYS", "name": "Search Holidays", "description": "Tool to search holidays with filters in Hub Planner. Use when you need to find holidays based on name, date range, or metadata. Supports operators like $in, $nin, $lt, $lte, and $gte for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_MILESTONES", "name": "Search Milestones", "description": "Tool to search milestones in Hub Planner with filters. Supports filtering by project, date, name, and metadata using MongoDB-style operators ($in, $nin, $lt, $lte, $gte). Use when you need to find milestones matching specific criteria or date ranges." }, { "slug": "HUB_PLANNER_SEARCH_PROJECT_CUSTOM_FIELDS", "name": "Search Project Custom Fields", "description": "Tool to search project custom field templates by type, label, or required status. Use when you need to find specific custom fields or retrieve all project custom field templates." }, { "slug": "HUB_PLANNER_SEARCH_PROJECTS", "name": "Search Projects", "description": "Tool to search projects with filters in Hub Planner. Use when you need to find projects based on status, name, project code, resources, dates, or custom fields. Supports operators like $in, $nin, $lt, $lte, $gte, and $like for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_RESOURCE_CUSTOM_FIELD_TEMPLATES", "name": "Search Resource Custom Field Templates", "description": "Tool to search resource custom field templates by type, label, or other properties. Use when you need to find specific custom field templates defined for resources in Hub Planner." }, { "slug": "HUB_PLANNER_SEARCH_RESOURCES", "name": "Search resources", "description": "Tool to search for resources with various filters in Hub Planner. Use when you need to find resources by status, name, email, role, or custom fields." }, { "slug": "HUB_PLANNER_SEARCH_TIME_ENTRIES", "name": "Search Time Entries", "description": "Tool to search time entries with filters in Hub Planner. Use when you need to find time entries based on resource, project, date range, or status. Supports operators like $in, $nin, $lt, $lte, $gt, $gte for flexible filtering." }, { "slug": "HUB_PLANNER_SEARCH_VACATIONS", "name": "Search Vacations", "description": "Tool to search vacations in Hub Planner with advanced filters. Supports filtering by resource, dates, type, title, and metadata using MongoDB-style operators ($in, $nin, $lt, $lte, $gte). Use when you need to find vacations matching specific criteria or date ranges." }, { "slug": "HUB_PLANNER_SET_PROJECT_MANAGERS", "name": "Set Project Managers", "description": "Tool to set project managers for a Hub Planner project. Replaces existing project managers with the provided list. Requires Project Managers Extension to be enabled." }, { "slug": "HUB_PLANNER_UPDATE_BILLING_RATE", "name": "Update Billing Rate", "description": "Tool to update an existing billing rate by ID in Hub Planner. Must pass the entire billing rate object with all required fields (_id, rate, label, currency). Use when you need to modify billing rate properties such as rate amount, label, currency, or metadata." }, { "slug": "HUB_PLANNER_UPDATE_BOOKING", "name": "Update Booking", "description": "Tool to update an existing booking in Hub Planner by ID. Must pass the entire booking object with all required fields. Use when you need to modify booking properties like dates, resources, projects, state values, or notes." }, { "slug": "HUB_PLANNER_UPDATE_BOOKING_CATEGORY", "name": "Update Booking Category", "description": "Tool to update an existing booking category by ID in Hub Planner. Use when you need to modify category properties like name, color, or type." }, { "slug": "HUB_PLANNER_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client by ID in Hub Planner. Only the name property can be updated. Use when you need to rename a client organization." }, { "slug": "HUB_PLANNER_UPDATE_COST_CATEGORY", "name": "Update Cost Category", "description": "Tool to update an existing project cost category by ID in Hub Planner. Updates the name of the cost category. Use when you need to rename or modify a project cost category used for tracking expenses." }, { "slug": "HUB_PLANNER_UPDATE_EVENT", "name": "Update Event", "description": "Tool to update an existing event in Hub Planner by ID. Must pass the entire event object with all required fields. Use when you need to modify event properties like name, status, resources, budget details, colors, or notes." }, { "slug": "HUB_PLANNER_UPDATE_HOLIDAY", "name": "Update Holiday", "description": "Tool to update an existing holiday by ID in Hub Planner. Must pass the entire holiday object with all required fields (_id, name, date). Use when you need to modify holiday properties such as name, date, color, or recurrence settings." }, { "slug": "HUB_PLANNER_UPDATE_MILESTONE", "name": "Update Milestone", "description": "Tool to update an existing milestone by ID in Hub Planner. Must pass the entire milestone object with all required fields (_id, name, date, project). Use when you need to modify milestone properties such as name, date, project association, or metadata." }, { "slug": "HUB_PLANNER_UPDATE_PROJECT_CUSTOM_FIELD_TEMPLATE", "name": "Update Project Custom Field Template", "description": "Tool to update an existing project custom field template in Hub Planner. Use when you need to modify field properties like label, type, instructions, or choices." }, { "slug": "HUB_PLANNER_UPDATE_PROJECT_GROUP", "name": "Update Project Group", "description": "Tool to update an existing project group by ID in Hub Planner. Use when you need to modify a project group's name, associated projects, metadata, or parent group. Returns the updated project group object." }, { "slug": "HUB_PLANNER_UPDATE_PROJECTS", "name": "Update Hub Planner projects", "description": "Tool to update one or more projects in Hub Planner. Use when you need to modify project properties such as name, status, budget, or other settings. Supports bulk updates by passing multiple project objects in a single request." }, { "slug": "HUB_PLANNER_UPDATE_PROJECT_TAG", "name": "Update Project Tag", "description": "Tool to update an existing project tag by ID in Hub Planner. Use when you need to change the value/name of a project tag. Note that the new value cannot conflict with an existing tag value." }, { "slug": "HUB_PLANNER_UPDATE_RESOURCE_CUSTOM_FIELD_TEMPLATE", "name": "Update Resource Custom Field Template", "description": "Tool to update an existing resource custom field template in Hub Planner. Use when you need to modify field properties like label, type, instructions, or configuration settings." }, { "slug": "HUB_PLANNER_UPDATE_RESOURCE_GROUP", "name": "Update Resource Group", "description": "Tool to update an existing resource group by ID in Hub Planner. Can update the group name, approvers array, and metadata. Use when you need to modify resource group properties or assign approvers to the group." }, { "slug": "HUB_PLANNER_UPDATE_RESOURCES", "name": "Update Resources", "description": "Tool to update one or more resources in Hub Planner. Pass an array of resource objects with _id and properties to update. Supports bulk updates by providing multiple resource objects. Use when you need to modify resource properties like name, email, status, notes, or custom fields." }, { "slug": "HUB_PLANNER_UPDATE_RESOURCE_TAG", "name": "Update Resource Tag", "description": "Tool to update an existing resource tag by ID in Hub Planner. Use when you need to change the value/name of a resource tag. Note that the new value cannot conflict with an existing tag value." }, { "slug": "HUB_PLANNER_UPDATE_TIME_ENTRY", "name": "Update Time Entry", "description": "Tool to update an existing time entry by ID in Hub Planner. Must pass the entire time entry object with all required fields (resource, project, date, minutes). Use when you need to modify time tracking data such as hours logged, notes, status, or category." }, { "slug": "HUB_PLANNER_UPDATE_VACATION", "name": "Update Vacation", "description": "Tool to update an existing vacation by ID in Hub Planner. Use when you need to modify vacation properties such as dates, title, approval status, or allocation. When setting type to APPROVED or REJECTED, you must provide approvalInfo with approvedOrRejectedDate and approvedOrRejectedById." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hub_planner_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Settings > API in your HUB Planner account to generate an API key. Requires Administrator privileges.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hugging_face", "name": "Hugging Face", "logo": "https://logos.composio.dev/api/hugging_face", "description": "Build, train and deploy state of the art models powered by the reference open source in machine learning.", "category": "artificial intelligence", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 135, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HUGGING_FACE_CHANGE_DISCUSSIONS_STATUS", "name": "Change Discussion Status", "description": "Tool to change the status of a Hugging Face repository discussion. Use when you need to open or close discussions on models, datasets, or spaces." }, { "slug": "HUGGING_FACE_CHECK_DATASET_VALIDITY", "name": "Check Dataset Validity", "description": "Tool to check whether a specific dataset is valid on Hugging Face Hub. Use when you need to determine what features (preview, viewer, search, filter, statistics) are available for a dataset." }, { "slug": "HUGGING_FACE_CHECK_MODELS_UPLOAD_METHOD", "name": "Check Models Upload Method", "description": "Tool to check if files should be uploaded through the Large File mechanism or directly. Use when preparing to upload files to a Hugging Face model repository to determine the appropriate upload method for each file." }, { "slug": "HUGGING_FACE_CHECK_SPACES_UPLOAD_METHOD", "name": "Check Spaces Upload Method", "description": "Tool to check if files should be uploaded through the Large File mechanism or directly to Hugging Face Spaces. Use when preparing to upload files to a Hugging Face Space repository to determine the appropriate upload method for each file." }, { "slug": "HUGGING_FACE_CLAIM_SETTINGS_PAPERS_CLAIM", "name": "Claim Paper Authorship", "description": "Tool to claim authorship of a paper on Hugging Face. Use when you need to associate yourself or another user with an ArXiv paper." }, { "slug": "HUGGING_FACE_CREATE_ASK_ACCESS", "name": "Request Repository Access", "description": "Tool to request access to a gated repository on Hugging Face Hub. Use when you need to submit an access request for models, datasets, or Spaces that require approval. The fields required vary by repository." }, { "slug": "HUGGING_FACE_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection on Hugging Face. Use when you need to organize and curate models, datasets, spaces, papers, or other collections into a named collection." }, { "slug": "HUGGING_FACE_CREATE_DATASETS_BRANCH", "name": "Create Datasets Branch", "description": "Tool to create a new branch in a Hugging Face dataset repository. Use when you need to create a branch for versioning or experimentation with dataset changes." }, { "slug": "HUGGING_FACE_CREATE_DATASETS_COMMIT", "name": "Create Datasets Commit", "description": "Tool to create a commit in a Hugging Face dataset repository. Use when you need to add, update, or delete files in a dataset. Supports both regular files and Large File Storage (LFS) for large binary files. Can optionally create a pull request instead of directly committing." }, { "slug": "HUGGING_FACE_CREATE_DATASETS_PREUPLOAD", "name": "Check Dataset File Upload Method", "description": "Tool to check if files should be uploaded via Large File Storage (LFS) or directly to a Hugging Face dataset repository. Use before uploading files to determine the correct upload method for each file based on size and repository settings." }, { "slug": "HUGGING_FACE_CREATE_DATASETS_TAG", "name": "Create Datasets Tag", "description": "Tool to create a tag on a Hugging Face dataset repository. Use when you need to mark a specific revision with a named tag." }, { "slug": "HUGGING_FACE_CREATE_DISCUSSIONS", "name": "Create Discussion", "description": "Tool to create a new discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to start a conversation, report an issue, or create a pull request discussion." }, { "slug": "HUGGING_FACE_CREATE_DISCUSSIONS_COMMENT", "name": "Create Discussion Comment", "description": "Tool to create a new comment on a Hugging Face repository discussion. Use when you need to add comments or replies to discussions on models, datasets, or spaces." }, { "slug": "HUGGING_FACE_CREATE_DISCUSSIONS_PIN", "name": "Pin discussion", "description": "Tool to pin or unpin a discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to highlight important discussions by pinning them to the top of the list, or unpin them when they're no longer priority." }, { "slug": "HUGGING_FACE_CREATE_MODELS_BRANCH", "name": "Create models branch", "description": "Tool to create a new branch in a Hugging Face model repository. Use when you need to create a branch for experimenting with model changes, versioning, or creating isolated development environments." }, { "slug": "HUGGING_FACE_CREATE_MODELS_COMMIT", "name": "Create Models Commit", "description": "Tool to create a commit to a Hugging Face model repository. Use when you need to add, update, or delete files in a model repository. Supports both standard JSON and JSON-lines (NDJSON) formats. JSON-lines format is recommended for better performance." }, { "slug": "HUGGING_FACE_CREATE_MODELS_TAG", "name": "Create Models Tag", "description": "Tool to create a tag on a Hugging Face model repository. Use when you need to mark a specific revision with a named tag." }, { "slug": "HUGGING_FACE_CREATE_PAPERS_COMMENT", "name": "Create Paper Comment", "description": "Tool to create a new comment on a Hugging Face paper. Use when you need to add comments or feedback to research papers on Hugging Face." }, { "slug": "HUGGING_FACE_CREATE_PAPERS_COMMENT_REPLY", "name": "Create Papers Comment Reply", "description": "Tool to create a reply to a comment on a Hugging Face paper. Use when you need to respond to an existing comment on a paper discussion." }, { "slug": "HUGGING_FACE_CREATE_PAPERS_INDEX", "name": "Create Papers Index", "description": "Tool to index a paper from arXiv by its ID on Hugging Face. Use when you need to make a paper searchable and accessible on the platform. Note: If the paper is already indexed, only its authors can re-index it." }, { "slug": "HUGGING_FACE_CREATE_REPO", "name": "Create Repository", "description": "Tool to create a new repository (model, dataset, or Space) on Hugging Face Hub. Use when you need to initialize a new repository for uploading models, datasets, or deploying Spaces applications." }, { "slug": "HUGGING_FACE_CREATE_SPACES_BRANCH", "name": "Create spaces branch", "description": "Tool to create a new branch in a Hugging Face space repository. Use when you need to create a branch for experimenting with space changes, versioning, or creating isolated development environments." }, { "slug": "HUGGING_FACE_CREATE_SPACES_COMMIT", "name": "Create Spaces Commit", "description": "Tool to create a commit in a Hugging Face Space repository. Use when you need to add, update, or delete files in a Space. Supports both JSON and NDJSON (recommended) payload formats for commits." }, { "slug": "HUGGING_FACE_CREATE_SPACES_SECRETS", "name": "Create or update Space secret", "description": "Tool to create or update a secret in a Hugging Face Space. Use when you need to add or update environment variables or sensitive configuration values for a Space. This action upserts the secret, meaning it will create a new secret if it doesn't exist or update it if it already exists." }, { "slug": "HUGGING_FACE_CREATE_SPACES_TAG", "name": "Create Spaces Tag", "description": "Tool to create a tag on a Hugging Face space repository. Use when you need to mark a specific revision with a named tag." }, { "slug": "HUGGING_FACE_CREATE_SPACES_VARIABLES", "name": "Create or update Space variable", "description": "Tool to create or update a variable in a Hugging Face Space. Use when you need to add or update environment variables or configuration values for a Space. This action upserts the variable, meaning it will create a new variable if it doesn't exist or update it if it already exists." }, { "slug": "HUGGING_FACE_CREATE_SQL_CONSOLE_EMBED", "name": "Create SQL Console Embed", "description": "Tool to create a SQL Console embed for querying datasets on Hugging Face. Use when you need to create a shareable SQL query interface for exploring dataset splits. The embed allows users to execute SQL queries against dataset views (e.g., train, test, validation splits)." }, { "slug": "HUGGING_FACE_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook on Hugging Face that triggers on repository or discussion events. Use when you need to receive notifications for changes to specific models, datasets, or spaces." }, { "slug": "HUGGING_FACE_DELETE_DATASETS_BRANCH", "name": "Delete dataset branch", "description": "Tool to delete a branch from a Hugging Face dataset repository. Use when you need to remove a branch that is no longer needed. This action permanently removes the specified branch from the dataset." }, { "slug": "HUGGING_FACE_DELETE_DATASETS_TAG", "name": "Delete Dataset Tag", "description": "Tool to delete a tag from a Hugging Face dataset. Use when you need to remove a specific tag revision from a dataset repository." }, { "slug": "HUGGING_FACE_DELETE_DISCUSSIONS", "name": "Delete discussion", "description": "Tool to delete a discussion from a Hugging Face repository. Use when you need to remove a discussion that is no longer needed. This action permanently removes the specified discussion from the repository." }, { "slug": "HUGGING_FACE_DELETE_NETWORK_CIDR_LIST", "name": "Delete network CIDR list", "description": "Tool to delete a network CIDR list entry from Hugging Face Inference Endpoints. Use when you need to remove a CIDR configuration that is no longer needed. This action permanently removes the specified CIDR from the namespace's network configuration." }, { "slug": "HUGGING_FACE_DELETE_NOTIFICATIONS", "name": "Delete notifications", "description": "Tool to delete notifications from Hugging Face. Use when you need to remove notifications either by specific discussion IDs or by applying filters to delete multiple notifications at once. Supports targeted deletion (via discussion_ids) or bulk deletion (via applyToAll with filter parameters)." }, { "slug": "HUGGING_FACE_DELETE_SETTINGS_WEBHOOKS", "name": "Delete Settings Webhook", "description": "Tool to delete a webhook from Hugging Face settings. Use when you need to remove a webhook configuration that is no longer needed." }, { "slug": "HUGGING_FACE_DELETE_SPACES_BRANCH", "name": "Delete space branch", "description": "Tool to delete a branch from a Hugging Face space repository. Use when you need to remove a branch that is no longer needed. This action permanently removes the specified branch from the space." }, { "slug": "HUGGING_FACE_DELETE_SPACES_SECRETS", "name": "Delete space secret", "description": "Tool to delete a secret from a Hugging Face space. Use when you need to remove sensitive credentials or configuration values that are no longer needed. This action permanently removes the specified secret from the space's environment variables." }, { "slug": "HUGGING_FACE_DELETE_SPACES_TAG", "name": "Delete Spaces Tag", "description": "Tool to delete a tag from a Hugging Face space. Use when you need to remove a specific tag revision from a space repository." }, { "slug": "HUGGING_FACE_DELETE_SPACES_VARIABLES", "name": "Delete space variable", "description": "Tool to delete a variable from a Hugging Face space. Use when you need to remove configuration values or environment variables that are no longer needed. This action permanently removes the specified variable from the space's environment." }, { "slug": "HUGGING_FACE_FILTER_DATASET_ROWS", "name": "Filter dataset rows", "description": "Tool to filter rows in a Hugging Face dataset split based on SQL-like query conditions. Use when you need to search or filter specific rows from a dataset based on column values, or to retrieve sorted subsets of data." }, { "slug": "HUGGING_FACE_GENERATE_CHAT_COMPLETION", "name": "Generate Chat Completion", "description": "Tool to generate a response given a list of messages in a conversational context. Supports both conversational Language Models (LLMs) and Vision-Language Models (VLMs). Compatible with OpenAI SDK." }, { "slug": "HUGGING_FACE_GENERATE_EMBEDDINGS", "name": "Generate Text Embeddings", "description": "Tool to convert text into vector embeddings for feature extraction, semantic search, and similarity tasks. Use when you need numerical representations of text for ML applications." }, { "slug": "HUGGING_FACE_GET_DAILY_PAPERS", "name": "Get Daily Papers", "description": "Tool to retrieve daily papers from Hugging Face. Use when you need to fetch the latest AI/ML research papers shared on Hugging Face." }, { "slug": "HUGGING_FACE_GET_DATASET_CROISSANT", "name": "Get Dataset Croissant Metadata", "description": "Tool to get Croissant metadata about a Hugging Face dataset. Croissant is a metadata format built on schema.org aimed at describing datasets used for machine learning. Use when you need structured metadata in JSON-LD format." }, { "slug": "HUGGING_FACE_GET_DATASET_FIRST_ROWS", "name": "Get Dataset First Rows", "description": "Tool to get the first 100 rows of a dataset split along with column data types and features. Use when you need to preview or sample dataset content." }, { "slug": "HUGGING_FACE_GET_DATASET_INFO", "name": "Get Dataset Info", "description": "Tool to get general information about a dataset including description, citation, homepage, license, and features (column schemas). Use when you need to understand dataset structure, available splits, and metadata before working with the data." }, { "slug": "HUGGING_FACE_GET_DATASET_REPO_INFO", "name": "Get Dataset Repository Info", "description": "Tool to retrieve detailed information about a Hugging Face dataset repository. Use when you need metadata, card data, tags, downloads, likes, configurations, or other information about a specific dataset." }, { "slug": "HUGGING_FACE_GET_DATASET_ROWS", "name": "Get Dataset Rows", "description": "Tool to retrieve a slice of rows from a Hugging Face dataset split at any given location (offset). Returns up to 100 rows at a time with complete feature type information and no truncation. Use when you need to inspect specific rows from a dataset without downloading the entire dataset." }, { "slug": "HUGGING_FACE_GET_DATASETS_COMPARE", "name": "Get Datasets Compare", "description": "Tool to get a comparison (diff) between two revisions of a Hugging Face dataset. Use when you need to see what changed between dataset versions or commits." }, { "slug": "HUGGING_FACE_GET_DATASET_SIZE", "name": "Get Dataset Size", "description": "Tool to get the size of a Hugging Face dataset including number of rows and size in bytes. Use when you need to determine dataset size, memory requirements, or storage needs for a specific dataset." }, { "slug": "HUGGING_FACE_GET_DATASETS_JWT", "name": "Get Datasets JWT", "description": "Tool to generate a JWT token for accessing a Hugging Face dataset repository. Use when you need authenticated access to datasets, optionally with write access for spaces in dev mode, custom expiration, or encryption." }, { "slug": "HUGGING_FACE_GET_DATASETS_LEADERBOARD", "name": "Get Datasets Leaderboard", "description": "Tool to retrieve evaluation results ranked by score for a dataset's leaderboard. Use when you need to compare model performance on a specific dataset or task. Returns an array of leaderboard entries with model information, scores, and rankings." }, { "slug": "HUGGING_FACE_GET_DATASETS_NOTEBOOK", "name": "Get Dataset Notebook URL", "description": "Tool to get a Jupyter notebook URL from a Hugging Face dataset repository. Use when you need to retrieve the URL for a specific .ipynb file from a dataset at a particular revision." }, { "slug": "HUGGING_FACE_GET_DATASETS_RESOLVE", "name": "Get Datasets Resolve", "description": "Tool to resolve and download a file from a Hugging Face dataset repository. This endpoint requires following redirections to retrieve file content or returns XET file info when Accept header is set appropriately. Use when you need to access files from datasets with proper redirection handling." }, { "slug": "HUGGING_FACE_GET_DATASETS_SCAN", "name": "Get Dataset Security Scan", "description": "Tool to retrieve the security scan status of a Hugging Face dataset repository. Use when you need to check for malware, pickle vulnerabilities, or other security issues in a dataset." }, { "slug": "HUGGING_FACE_GET_DATASETS_TAGS_BY_TYPE", "name": "Get Dataset Tags by Type", "description": "Tool to retrieve all possible tags used for datasets on Hugging Face, grouped by tag type. Use when you need to discover available dataset classification tags, filter options, or metadata categories. Optionally restrict results to a single tag type." }, { "slug": "HUGGING_FACE_GET_DATASET_STATISTICS", "name": "Get Dataset Statistics", "description": "Tool to get comprehensive statistics about a dataset split including column statistics and data distribution information. Use when you need to analyze dataset composition, understand data distributions, or get statistical summaries of dataset features." }, { "slug": "HUGGING_FACE_GET_DATASETS_TREESIZE", "name": "Get dataset repository size", "description": "Tool to get the total size of a Hugging Face dataset repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes." }, { "slug": "HUGGING_FACE_GET_DATASETS_XET_READ_TOKEN", "name": "Get Datasets XET Read Token", "description": "Tool to get a read short-lived access token for XET from Hugging Face datasets. Use when you need temporary read access to dataset content through XET protocol." }, { "slug": "HUGGING_FACE_GET_DISCUSSION", "name": "Get Discussion Details", "description": "Tool to get detailed information about a specific discussion or pull request on Hugging Face Hub. Use when you need to retrieve all comments, status changes, events, and for PRs, the diff information." }, { "slug": "HUGGING_FACE_GET_JOBS_HARDWARE", "name": "Get Available Job Hardware", "description": "Tool to retrieve available hardware configurations for Hugging Face Jobs with their specifications and pricing. Use when you need to discover compute options for running jobs." }, { "slug": "HUGGING_FACE_GET_MODEL_INFO", "name": "Get Model Information", "description": "Tool to retrieve detailed information about a Hugging Face model repository. Use when you need comprehensive metadata including downloads, likes, tags, configuration, files, and more." }, { "slug": "HUGGING_FACE_GET_MODELS_COMPARE", "name": "Get Models Compare", "description": "Tool to compare two revisions of a Hugging Face model repository. Returns a git diff showing file changes between commits. Use when you need to see what changed between model versions." }, { "slug": "HUGGING_FACE_GET_MODELS_JWT", "name": "Get Models JWT", "description": "Tool to generate a JWT token for accessing a Hugging Face model repository. Use when you need authenticated access to models, with optional write access for spaces in dev mode, custom expiration, and encryption support." }, { "slug": "HUGGING_FACE_GET_MODELS_NOTEBOOK", "name": "Get Models Notebook", "description": "Tool to retrieve a Jupyter notebook URL from a Hugging Face model repository. Use when you need to access or display a notebook file stored in a model repository." }, { "slug": "HUGGING_FACE_GET_MODELS_SCAN", "name": "Get Model Security Scan Status", "description": "Tool to retrieve the security scan status of a Hugging Face model repository. Use when you need to check if a model has been scanned for security issues and view any detected problems." }, { "slug": "HUGGING_FACE_GET_MODELS_TREESIZE", "name": "Get model repository size", "description": "Tool to get the total size of a Hugging Face model repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes." }, { "slug": "HUGGING_FACE_GET_MODELS_XET_READ_TOKEN", "name": "Get Model XET Read Token", "description": "Tool to retrieve a short-lived XET read access token for a Hugging Face model repository. Use when you need to access XET (eXtensible Tensor) data for a specific model revision." }, { "slug": "HUGGING_FACE_GET_MODEL_TAGS_BY_TYPE", "name": "Get Model Tags By Type", "description": "Tool to retrieve all possible tags used for Hugging Face models, grouped by tag type. Use when you need to discover available model tags for filtering or categorization. Optionally restrict results to a specific tag type." }, { "slug": "HUGGING_FACE_GET_ORGANIZATIONS_AVATAR", "name": "Get Organization Avatar", "description": "Tool to retrieve the avatar URL for a Hugging Face organization. Use when you need to get the avatar image URL for a specific organization." }, { "slug": "HUGGING_FACE_GET_ORGANIZATIONS_MEMBERS", "name": "Get Organization Members", "description": "Tool to retrieve a list of members for a Hugging Face organization. Use when you need to discover who belongs to an organization, with optional filtering by search terms, email, and pagination support." }, { "slug": "HUGGING_FACE_GET_ORGANIZATIONS_SOCIALS", "name": "Get Organization Social Handles", "description": "Tool to retrieve an organization's social media handles from Hugging Face. Use when you need to find an organization's GitHub, LinkedIn, or Twitter/X profiles. Only returns handles that the organization has publicly shared on their Hugging Face profile." }, { "slug": "HUGGING_FACE_GET_RESOLVE", "name": "Get Resolve", "description": "Tool to resolve a file in a Hugging Face repository. Use when you need to access files from model, dataset, or space repositories. This endpoint follows redirections (302, 307) to retrieve the actual file. When Accept header is set to 'application/vnd.xet-fileinfo+json', returns JSON file metadata instead of redirecting to file content." }, { "slug": "HUGGING_FACE_GET_RESOLVE_CACHE_DATASETS", "name": "Get Resolve Cache Datasets", "description": "Tool to resolve a file from cache in a Hugging Face dataset repository. This endpoint follows redirections (302, 307) to retrieve file content or returns XET file info when Accept header is set appropriately. Use when you need to access cached files from datasets with proper redirection handling." }, { "slug": "HUGGING_FACE_GET_RESOLVE_CACHE_MODELS", "name": "Get Resolve Cache Models", "description": "Tool to resolve and retrieve files from the Hugging Face model cache. Use when you need to access model configuration files, tokenizer files, or other JSON metadata files from a specific model repository. This endpoint returns the actual file content as JSON for JSON files (e.g., config.json, tokenizer.json, tokenizer_config.json)." }, { "slug": "HUGGING_FACE_GET_RESOLVE_CACHE_SPACES", "name": "Get Resolve Cache Spaces", "description": "Tool to resolve and retrieve a file from Hugging Face Spaces cache. Use when you need to download a file from a Space repository or get XET file information. This endpoint follows redirections (HTTP 302/307) to resolve the final file location." }, { "slug": "HUGGING_FACE_GET_SETTINGS_BILLING_USAGE_JOBS", "name": "Get Jobs Usage", "description": "Tool to retrieve Jobs usage and billing information for the current subscription period from Hugging Face. Use when you need to check compute usage, costs, or job execution details for the authenticated user or organization." }, { "slug": "HUGGING_FACE_GET_SETTINGS_BILLING_USAGE_LIVE", "name": "Get Live Billing Usage", "description": "Tool to retrieve live billing usage stream from Hugging Face. Use when you need real-time updates on storage, inference, Zero GPU usage, and rate limits." }, { "slug": "HUGGING_FACE_GET_SETTINGS_BILLING_USAGE_V2", "name": "Get Billing Usage V2", "description": "Tool to retrieve user billing usage for a custom date range from Hugging Face. Use when you need to check usage statistics or resource consumption between specific dates using Unix timestamps." }, { "slug": "HUGGING_FACE_GET_SETTINGS_MCP", "name": "Get MCP Settings", "description": "Tool to retrieve MCP (Model Context Protocol) tools configuration for the authenticated user. Use when you need to discover available built-in tools and space-based tools configured in the user's Hugging Face settings." }, { "slug": "HUGGING_FACE_GET_SETTINGS_WEBHOOKS", "name": "Get Settings Webhook", "description": "Tool to retrieve a specific webhook configuration from Hugging Face settings. Use when you need to inspect webhook details, verify webhook status, or check webhook configuration for a given webhook ID." }, { "slug": "HUGGING_FACE_GET_SPACE_INFO", "name": "Get Space Info", "description": "Tool to retrieve detailed information about a Hugging Face Space repository. Use when you need metadata, SDK type, hardware configuration, runtime status, or other information about a specific Space." }, { "slug": "HUGGING_FACE_GET_SPACES_COMPARE", "name": "Get Spaces Compare", "description": "Tool to compare two revisions of a Hugging Face Space repository. Returns a git diff showing file changes between commits. Use when you need to see what changed between Space versions." }, { "slug": "HUGGING_FACE_GET_SPACES_EVENTS", "name": "Get Spaces Events", "description": "Tool to stream status updates for a Hugging Face Space using SSE protocol. Use when you need to monitor Space build stages, runtime status, or receive real-time updates about Space state changes." }, { "slug": "HUGGING_FACE_GET_SPACES_JWT", "name": "Get Spaces JWT", "description": "Tool to generate a JWT token for accessing a Hugging Face space repository. Use when you need authenticated access to spaces, with optional write access for spaces in dev mode, custom expiration, and encryption support." }, { "slug": "HUGGING_FACE_GET_SPACES_METRICS", "name": "Get Space Metrics", "description": "Tool to get live metrics for a specific Space in a streaming fashion, with SSE protocol, such as current Zero-GPU usage. Use when you need real-time monitoring of Space resource utilization." }, { "slug": "HUGGING_FACE_GET_SPACES_NOTEBOOK", "name": "Get Spaces Notebook", "description": "Tool to retrieve a Jupyter notebook URL from a Hugging Face space repository. Use when you need to access or display a notebook file stored in a space." }, { "slug": "HUGGING_FACE_GET_SPACES_RESOLVE", "name": "Get Spaces Resolve", "description": "Tool to resolve and retrieve a file from a Hugging Face Space repository. Use when you need to download a file from a Space or get XET file information. This endpoint follows redirections (HTTP 302/307) to resolve the final file location." }, { "slug": "HUGGING_FACE_GET_SPACES_SCAN", "name": "Get Space Security Scan Status", "description": "Tool to retrieve the security scan status of a Hugging Face space repository. Use when you need to check for malware, pickle vulnerabilities, or other security issues in a space." }, { "slug": "HUGGING_FACE_GET_SPACES_TREESIZE", "name": "Get space repository size", "description": "Tool to get the total size of a Hugging Face space repository at a specific revision and path. Use when you need to determine storage requirements or track repository size changes." }, { "slug": "HUGGING_FACE_GET_SPACES_XET_READ_TOKEN", "name": "Get Space XET Read Token", "description": "Tool to retrieve a short-lived XET read access token for a Hugging Face Space repository. Use when you need to access XET (eXtensible Tensor) data for a specific Space revision." }, { "slug": "HUGGING_FACE_GET_SPACES_XET_WRITE_TOKEN", "name": "Get Spaces XET Write Token", "description": "Tool to retrieve a short-lived XET write access token for a Hugging Face space repository. Use when you need to upload or write XET data to a specific space revision." }, { "slug": "HUGGING_FACE_GET_TRENDING", "name": "Get Trending Repositories", "description": "Tool to retrieve trending repositories from Hugging Face. Use when you need to discover popular models, datasets, or spaces that are currently trending on the platform." }, { "slug": "HUGGING_FACE_GET_USERS_AVATAR", "name": "Get User Avatar", "description": "Tool to retrieve the avatar URL for a Hugging Face user. Use when you need to get the avatar image URL for a specific user." }, { "slug": "HUGGING_FACE_GET_USERS_OVERVIEW", "name": "Get User Overview", "description": "Tool to retrieve a comprehensive overview of a Hugging Face user's profile. Use when you need to get user statistics, organizations, activity counts, and profile information." }, { "slug": "HUGGING_FACE_GET_USERS_SOCIALS", "name": "Get User Social Handles", "description": "Tool to retrieve a user's social media handles from Hugging Face. Use when you need to find a user's GitHub, LinkedIn, Twitter/X, or Bluesky profiles. Only returns handles that the user has publicly shared on their Hugging Face profile." }, { "slug": "HUGGING_FACE_GET_WHOAMI", "name": "Get Authenticated User Info", "description": "Tool to get information about the authenticated Hugging Face user including username, email, organizations, and token details. Use when you need to identify the current user from an access token or retrieve user profile information." }, { "slug": "HUGGING_FACE_HANDLE_DATASETS_USER_ACCESS_REQUEST", "name": "Handle Dataset User Access Request", "description": "Tool to handle a user's access request to a gated Hugging Face dataset. Use this to accept, reject, or update the status of access requests for repositories with gated access. Either 'user' or 'userId' must be provided to identify the user." }, { "slug": "HUGGING_FACE_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list collections on the Hugging Face Hub. Use when you need to discover collections of models, datasets, spaces, or papers. Collections are curated groups of repositories organized by users." }, { "slug": "HUGGING_FACE_LIST_DATASET_PARQUET_FILES", "name": "List Dataset Parquet Files", "description": "Tool to get the list of Parquet files for a dataset. Use when you need to download or access dataset files in Parquet format. Returns URLs to download Parquet files with metadata about splits, configurations, and file sizes." }, { "slug": "HUGGING_FACE_LIST_DATASET_PATHS_INFO", "name": "List Dataset Paths Info", "description": "Tool to list detailed information about specific paths in a Hugging Face dataset repository. Use when you need to get metadata about files or directories in a dataset, including size, type, commit history, and security scan status." }, { "slug": "HUGGING_FACE_LIST_DATASETS", "name": "List Datasets", "description": "Tool to list datasets on the Hugging Face Hub. Use when you need to discover or search for datasets. Supports filtering by author, search query, tags, and sorting by various properties." }, { "slug": "HUGGING_FACE_LIST_DATASETS_COMMITS", "name": "List Dataset Commits", "description": "Tool to list commits from a Hugging Face dataset repository. Use when you need to retrieve the commit history for a specific dataset branch or revision." }, { "slug": "HUGGING_FACE_LIST_DATASET_SPLITS", "name": "List Dataset Splits", "description": "Tool to get the list of subsets and splits of a dataset. Returns the available configurations and splits for a given dataset on the Hub. Use when you need to understand the structure of a dataset before querying specific splits." }, { "slug": "HUGGING_FACE_LIST_DATASETS_REFS", "name": "List Dataset References", "description": "Tool to list all references (branches, tags, converts, pull requests) in a Hugging Face dataset repository. Use when you need to retrieve available references for a specific dataset." }, { "slug": "HUGGING_FACE_LIST_DATASETS_USER_ACCESS_REQUEST", "name": "List Dataset Access Requests", "description": "Tool to list access requests for a gated Hugging Face dataset repository. Use when you need to view pending, accepted, or rejected access requests for datasets with restricted access." }, { "slug": "HUGGING_FACE_LIST_DISCUSSIONS", "name": "List Discussions", "description": "Tool to list discussions for a Hugging Face repository. Use when you need to retrieve discussions or pull requests for a specific model, dataset, or space." }, { "slug": "HUGGING_FACE_LIST_DOCS", "name": "List Available Documentation", "description": "Tool to retrieve the list of available documentation from Hugging Face. Use when you need to discover available documentation resources." }, { "slug": "HUGGING_FACE_LIST_ENDPOINTS", "name": "List Inference Endpoints", "description": "Tool to list Hugging Face Inference Endpoints for a specific user or organization. Use when you need to retrieve endpoints, optionally filtered by tags or name." }, { "slug": "HUGGING_FACE_LIST_MODELS_COMMITS", "name": "List Model Commits", "description": "Tool to list commits from a Hugging Face model repository. Use when you need to retrieve the commit history for a specific model branch or revision." }, { "slug": "HUGGING_FACE_LIST_MODELS_PATHS_INFO", "name": "List Model Paths Info", "description": "Tool to list detailed information about specific paths in a Hugging Face model repository. Use when you need to get metadata about files or directories in a model, including size, type, commit history, and security scan status." }, { "slug": "HUGGING_FACE_LIST_MODELS_REFS", "name": "List Model References", "description": "Tool to list all references (branches, tags, converts, and optionally pull requests) in a Hugging Face model repository. Use when you need to retrieve version control information for a specific model." }, { "slug": "HUGGING_FACE_LIST_NOTIFICATIONS", "name": "List Notifications", "description": "Tool to list notifications for the authenticated Hugging Face user. Use when you need to retrieve user notifications, optionally filtered by read status, repository type, author, or other criteria." }, { "slug": "HUGGING_FACE_LIST_REPO_FILES", "name": "List repository files", "description": "Tool to get the file tree of a Hugging Face repository with pagination support. Use when you need to browse files and folders in any repository type (model, dataset, or space), explore repository structure, or discover available files." }, { "slug": "HUGGING_FACE_LIST_SETTINGS_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured in Hugging Face settings. Use when you need to retrieve webhook configurations for the authenticated user's account." }, { "slug": "HUGGING_FACE_LIST_SPACES", "name": "List Spaces on Hugging Face Hub", "description": "Tool to list Spaces on the Hugging Face Hub with filtering options. Use when you need to discover or search for ML demo applications hosted on Hugging Face." }, { "slug": "HUGGING_FACE_LIST_SPACES_COMMITS", "name": "List Space Commits", "description": "Tool to list commits from a Hugging Face Space repository. Use when you need to retrieve the commit history for a specific Space branch or revision." }, { "slug": "HUGGING_FACE_LIST_SPACES_HARDWARE", "name": "List Available Space Hardware", "description": "Tool to retrieve available hardware configurations for Hugging Face Spaces with their specifications and pricing. Use when you need to discover compute options for running spaces." }, { "slug": "HUGGING_FACE_LIST_SPACES_LFS_FILES", "name": "List Space LFS Files", "description": "Tool to list LFS (Large File Storage) files from a Hugging Face Space repository. Use when you need to retrieve large files stored in a Space using Git LFS." }, { "slug": "HUGGING_FACE_LIST_SPACES_PATHS_INFO", "name": "List Space Paths Info", "description": "Tool to list detailed information about specific paths in a Hugging Face space repository. Use when you need to get metadata about files or directories in a space, including size, type, commit history, and security scan status." }, { "slug": "HUGGING_FACE_LIST_SPACES_REFS", "name": "List Space References", "description": "Tool to list all references (branches, tags, converts, pull requests) in a Hugging Face space repository. Use when you need to retrieve available references for a specific space." }, { "slug": "HUGGING_FACE_LIST_VENDORS", "name": "List Cloud Provider Vendors", "description": "Tool to list available cloud provider vendors for Hugging Face Inference Endpoints. Use when you need to discover available infrastructure options across AWS, Azure, and GCP. Returns vendors with their regions and compute instance types for deploying models." }, { "slug": "HUGGING_FACE_SEARCH_DATASET", "name": "Search dataset", "description": "Tool to search text in a dataset split on Hugging Face. Searches in columns of type string, even if values are nested in a dictionary. Use when you need to find specific text or patterns within a dataset's content. Returns matching rows with their data." }, { "slug": "HUGGING_FACE_SEARCH_DOCS", "name": "Search Documentation", "description": "Tool to search Hugging Face documentation across all products and libraries. Use when you need to find information about HF tools, models, datasets, or API usage." }, { "slug": "HUGGING_FACE_SEARCH_PAPERS", "name": "Search Papers", "description": "Tool to perform hybrid semantic/full-text search on papers in Hugging Face. Use when you need to find research papers by keywords, topics, or authors." }, { "slug": "HUGGING_FACE_SQUASH_DATASET_COMMITS", "name": "Squash Dataset Commits", "description": "Tool to squash all commits in a dataset ref into a single commit with the given message. Use when consolidating commit history into a single commit. WARNING: This operation is irreversible." }, { "slug": "HUGGING_FACE_SQUASH_SPACES_COMMITS", "name": "Squash Spaces Commits", "description": "Tool to squash all commits in a space ref into a single commit with the given message. Use when consolidating commit history into a single commit. WARNING: This operation is irreversible." }, { "slug": "HUGGING_FACE_UPDATE_DATASETS_SETTINGS", "name": "Update Dataset Settings", "description": "Tool to update settings for a Hugging Face dataset repository. Use when you need to configure visibility, discussions, gating, or access control for a dataset." }, { "slug": "HUGGING_FACE_UPDATE_DISCUSSIONS_TITLE", "name": "Update Discussion Title", "description": "Tool to change the title of an existing discussion on a Hugging Face repository (model, dataset, or Space). Use when you need to update or correct a discussion's title." }, { "slug": "HUGGING_FACE_UPDATE_MODELS_SETTINGS", "name": "Update Model Repository Settings", "description": "Tool to update settings for a Hugging Face model repository. Use when you need to modify repository configuration such as privacy, discussions, or gated access settings." }, { "slug": "HUGGING_FACE_UPDATE_SETTINGS_NOTIFICATIONS", "name": "Update Notification Settings", "description": "Tool to update notification settings for the authenticated Hugging Face user. Use when you need to enable or disable various notification types such as announcements, discussions, paper digests, or product updates." }, { "slug": "HUGGING_FACE_UPDATE_SETTINGS_WATCH", "name": "Update Watch Settings", "description": "Tool to update watch settings for your Hugging Face account. Use when you want to get notified about discussions on organizations, users, or repositories. You can add new items to watch and/or remove items from your watch list in a single request." }, { "slug": "HUGGING_FACE_UPDATE_SETTINGS_WEBHOOKS", "name": "Update Webhook", "description": "Tool to update an existing webhook in Hugging Face settings. Use when you need to modify webhook configuration such as watched entities, event domains, target URL, or job settings." }, { "slug": "HUGGING_FACE_UPDATE_SPACES_SETTINGS", "name": "Update Spaces Repository Settings", "description": "Tool to update settings for a Hugging Face Spaces repository. Use when you need to modify repository configuration such as privacy, discussions, or gated access settings." }, { "slug": "HUGGING_FACE_UPDATE_SQL_CONSOLE_EMBED", "name": "Update SQL Console Embed", "description": "Tool to update an existing SQL console embed for a Hugging Face dataset. Use when you need to modify the SQL query, title, or privacy settings of an existing embed." }, { "slug": "HUGGING_FACE_UPDATE_WEBHOOK_STATUS", "name": "Enable or Disable Webhook", "description": "Tool to enable or disable a webhook on Hugging Face. Use when you need to temporarily deactivate a webhook without deleting it, or reactivate a previously disabled webhook." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "hugging_face_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "hugging_face_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your Hugging Face access token. Get it from Settings > Access Tokens at https://huggingface.co/settings/tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "humanitix", "name": "Humanitix", "logo": "https://humanitix.com/favicon.ico", "description": "Humanitix is a not-for-profit ticketing platform that donates 100% of its profits to charity.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HUMANITIX_GET_EVENT", "name": "Get Event", "description": "Tool to retrieve detailed information about a specific event. Use when you have the eventId and need full metadata." }, { "slug": "HUMANITIX_GET_EVENTS", "name": "Get Events", "description": "Tool to retrieve a paginated list of events from your Humanitix account. Use when you need to page through your events after confirming API key validity." }, { "slug": "HUMANITIX_GET_TAGS", "name": "Get Tags", "description": "Tool to get all tags associated with your Humanitix account. Use when you need to list or paginate through tags after setting up your API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "humanitix_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Humanitix API Key", "type": "string", "description": "Your Humanitix API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hunter", "name": "Hunter", "logo": "https://logo.clearbit.com/hunter.io", "description": "Hunter is an email marketing company specializing in lead generation and data enrichment.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HUNTER_ACCOUNT_INFORMATION", "name": "Account Information", "description": "Tool to retrieve information about your Hunter account. Use when you need to check your plan details and usage limits after confirming credentials. Returns `searches.available` and `verifications.available` fields among others; check these before bulk operations to avoid quota exhaustion." }, { "slug": "HUNTER_COMBINED_ENRICHMENT", "name": "Combined Enrichment", "description": "Tool to find both person and company information from an email address or LinkedIn handle in a single request. Use when you need complete professional profile enrichment including employment and company details." }, { "slug": "HUNTER_COMPANY_ENRICHMENT", "name": "Company Enrichment", "description": "Tool to get enrichment information for a company by its domain. Use when you need full company details (industry, description, location, metrics) from Hunter." }, { "slug": "HUNTER_CREATE_CUSTOM_ATTRIBUTE", "name": "Create custom lead attribute", "description": "Tool to create a new custom lead attribute in your account. Use after deciding on the attribute label." }, { "slug": "HUNTER_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead. Use after gathering all prospect details to save them to your Hunter account." }, { "slug": "HUNTER_CREATE_LEADS_LIST", "name": "Create Leads List", "description": "Tool to create a new leads list. Use when you need to organize leads into a custom list before adding leads." }, { "slug": "HUNTER_DELETE_CUSTOM_ATTRIBUTE", "name": "Delete Custom Attribute", "description": "Tool to delete an existing custom attribute. Use after confirming the attribute ID to be removed." }, { "slug": "HUNTER_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a lead. Use after confirming the lead's ID to remove it from your Hunter.io account." }, { "slug": "HUNTER_DELETE_LEADS_LIST", "name": "Delete Leads List", "description": "Tool to delete a leads list by its ID. Use after confirming the leads list ID to remove it from your Hunter.io account." }, { "slug": "HUNTER_DISCOVER_COMPANIES", "name": "Discover Companies", "description": "Tool to search and retrieve companies matching specified criteria using filters or natural language queries. Use when you need to discover companies from Hunter's B2B dataset based on industry, location, size, or other characteristics." }, { "slug": "HUNTER_DOMAIN_SEARCH", "name": "Domain Search", "description": "Tool to search all email addresses for a given domain or company. Use when you need public emails and metadata for outreach or enrichment. Rate-limited; HTTP 429 returned on excess requests — honor the Retry-After header." }, { "slug": "HUNTER_EMAIL_COUNT", "name": "Email Count", "description": "Tool to get the total number of email addresses Hunter has for a domain or company with breakdowns by type, department, and seniority. Use when you need email volume statistics without consuming API credits (this call is free)." }, { "slug": "HUNTER_EMAIL_FINDER", "name": "Email Finder", "description": "Tool to find the most likely email address for a person at a domain or company. Use when you have a person's name and a domain or company and need to infer their email. Results include a confidence score and status; treat emails with status 'accept_all' or 'risky' as lower reliability. Each call consumes API credits — avoid re-enriching the same contact." }, { "slug": "HUNTER_EMAIL_VERIFIER", "name": "Email Verifier", "description": "Tool to verify the deliverability of an email address. Use when you need to ensure an address is valid and reachable. Response may include statuses `accept_all` or `risky`, indicating uncertain deliverability; do not treat these as fully valid without explicit review. For bulk verification, honor `Retry-After` headers on HTTP 429 responses and use exponential backoff." }, { "slug": "HUNTER_GET_CUSTOM_ATTRIBUTE", "name": "Get Custom Attribute", "description": "Tool to retrieve details of a specific custom attribute. Use when you need the label and slug for an attribute ID." }, { "slug": "HUNTER_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve details of a specific lead by ID. Use after confirming the lead's ID to fetch its full record." }, { "slug": "HUNTER_GET_LEADS_LIST", "name": "Get Leads List", "description": "Tool to retrieve details of a specific leads list by ID. Use when you need to inspect the contents of an existing leads list." }, { "slug": "HUNTER_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to get all email campaigns in your Hunter account. Campaigns are returned in reverse-chronological order by creation date. Use when you need to retrieve and filter campaigns by status (started/archived) with pagination support." }, { "slug": "HUNTER_LIST_CUSTOM_ATTRIBUTES", "name": "List Custom Attributes", "description": "Tool to list all custom lead attributes in your account. Use when you need to retrieve your account's custom lead attributes after authenticating." }, { "slug": "HUNTER_LIST_LEADS", "name": "List Leads", "description": "Tool to list all leads saved in your account with optional filters. Use when you need to retrieve leads with specific criteria after confirming your API key." }, { "slug": "HUNTER_LIST_LEADS_LISTS", "name": "List Leads Lists", "description": "Tool to list all leads lists in your account. Use when you need to retrieve and paginate through your leads lists." }, { "slug": "HUNTER_PEOPLE_ENRICHMENT", "name": "People Enrichment", "description": "Tool to find all information associated with an email address or LinkedIn profile including name, location, job title and social handles. Use when you need to enrich contact data with additional personal and professional details." }, { "slug": "HUNTER_UPDATE_CUSTOM_ATTRIBUTE", "name": "Update Custom Attribute", "description": "Tool to update an existing custom attribute's label. Use when renaming a custom attribute after creation." }, { "slug": "HUNTER_UPDATE_LEAD", "name": "Update Lead", "description": "Tool to update details of an existing lead by ID. Use when you need to modify saved lead attributes after creation." }, { "slug": "HUNTER_UPDATE_LEADS_LIST", "name": "Update Leads List", "description": "Tool to update the name of a specific leads list. Use when renaming an existing leads list." }, { "slug": "HUNTER_UPSERT_LEAD", "name": "Upsert Lead", "description": "Tool to create or update a lead by email in one call. Use when you want to ensure a lead exists with the provided information without checking its existence first." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hunter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Hunter API Key", "type": "string", "description": "Your Hunter API secret key, a long string of letters and numbers. Find or create it at hunter.io/api-keys; available on all plans, including free.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hypeauditor", "name": "Hypeauditor", "logo": "https://hypeauditor.com/favicon.ico", "description": "HypeAuditor provides comprehensive influencer marketing solutions, offering tools for influencer discovery, analytics, and campaign management across multiple social media platforms.", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HYPEAUDITOR_GET_ACCOUNT_MEDIA", "name": "Get Instagram Account Media", "description": "Tool to retrieve media content of an Instagram account. Use when you need detailed post-level data and performance metrics for analysis." }, { "slug": "HYPEAUDITOR_GET_REPORT_INSTAGRAM", "name": "Get Instagram report", "description": "Tool to retrieve a detailed Instagram report. Use after providing username or user_id. Example: GET_REPORT_INSTAGRAM(username=\"nasa\")." }, { "slug": "HYPEAUDITOR_GET_REPORT_TIK_TOK", "name": "Get TikTok Analytics Report", "description": "Retrieves comprehensive analytics report for a TikTok account including audience demographics, engagement metrics, content performance, follower growth, and authenticity scores. Use this to analyze TikTok influencers or get detailed insights about a TikTok channel's performance and audience quality." }, { "slug": "HYPEAUDITOR_SEARCH_INFLUENCERS_SUGGESTER", "name": "Search Influencers by Keyword", "description": "Tool to search for influencer social network accounts by keyword. Use when you need to find influencers matching a search term, with optional filtering by social network type." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hypeauditor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "HypeAuditor Client ID", "type": "string", "description": "The Client ID provided by HypeAuditor for API authentication. This value will be sent as the \"X-Auth-Id\" header.", "required": true, "default": null }, { "name": "generic_token", "displayName": "HypeAuditor API Token", "type": "string", "description": "The API Token provided by HypeAuditor for API authentication. This value will be sent as the \"X-Auth-Token\" header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hyperbrowser", "name": "Hyperbrowser", "logo": "https://logos.composio.dev/api/hyperbrowser", "description": "Hyperbrowser is a next-generation platform empowering AI agents and enabling effortless, scalable browser automation.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 43, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HYPERBROWSER_ADD_EXTENSION", "name": "Add Extension", "description": "Tool to add a new browser extension to Hyperbrowser for use in sessions. Use when you need to upload a Chrome extension zip file that can be loaded into browser sessions. The extension zip must contain a valid manifest.json file at the root level." }, { "slug": "HYPERBROWSER_CREATE_PROFILE", "name": "Create Hyperbrowser Profile", "description": "Creates a new persistent Hyperbrowser profile for storing browser state (cookies, sessions, etc.). Use this to create a reusable profile that can be attached to browser sessions via the profile ID. Profiles allow you to maintain logged-in states across multiple sessions without re-authenticating." }, { "slug": "HYPERBROWSER_CREATE_SCRAPE_JOB", "name": "Create Scrape Job", "description": "Tool to initiate a new scrape job. Use when you need to extract structured content from a target URL with custom session and scrape settings." }, { "slug": "HYPERBROWSER_CREATE_SESSION", "name": "Create Session", "description": "Tool to create a new browser session with custom stealth, proxy, and privacy settings. Use when initializing an automated browsing session with specific configuration." }, { "slug": "HYPERBROWSER_DELETE_PROFILE", "name": "Delete Profile", "description": "Tool to delete a profile. Use when you need to remove a profile by its unique identifier after confirming its existence." }, { "slug": "HYPERBROWSER_FETCH_WEB_PAGE", "name": "Fetch Web Page", "description": "Tool to fetch a web page and return content in various formats (HTML, Markdown, JSON, screenshot, etc.). Use when you need to retrieve and process web content with customizable browser settings, output formats, and content filtering options." }, { "slug": "HYPERBROWSER_GET_BROWSER_USE_TASK_RESULT", "name": "Get Browser Use Task Result", "description": "DEPRECATED: Use HYPERBROWSER_GET_BROWSER_USE_TASK_STATUS instead. Tool to retrieve the status and results of a browser use task. Use after starting a browser use task to check its progress, retrieve execution steps, and obtain the final result." }, { "slug": "HYPERBROWSER_GET_BROWSER_USE_TASK_STATUS", "name": "Get browser-use task status", "description": "Tool to retrieve the current status of a browser-use task. Use when checking if a browser automation task has completed or is still pending." }, { "slug": "HYPERBROWSER_GET_CLAUDE_COMPUTER_USE_TASK_RESULT", "name": "Get Claude Computer Use Task Result", "description": "Tool to retrieve the complete result and status of a Claude Computer Use task. Use when you need full task details including execution steps, final results, and error information." }, { "slug": "HYPERBROWSER_GET_CLAUDE_COMPUTER_USE_TASK_STATUS", "name": "Get Claude Computer Use Task Status", "description": "Poll the execution status of a Claude Computer Use task. Use after calling HYPERBROWSER_START_CLAUDE_COMPUTER_USE_TASK to check if the task has completed, is still running, or has failed. Pass the jobId returned from the start task action." }, { "slug": "HYPERBROWSER_GET_CRAWL_JOB_STATUS", "name": "Get Crawl Job Status", "description": "Tool to retrieve the status and results of a specific crawl job. Use after submitting a crawl job to check its progress or fetch results." }, { "slug": "HYPERBROWSER_GET_CRAWL_STATUS", "name": "Get Crawl Status", "description": "Tool to retrieve the current status of a specific crawl job. Use after initiating a crawl job to poll its status." }, { "slug": "HYPERBROWSER_GET_CUA_TASK_RESULT", "name": "Get CUA Task Result", "description": "Tool to retrieve the status and results of a CUA (Claude User Agent) task. Use after starting a CUA task to check its progress, retrieve execution steps, and obtain the final result." }, { "slug": "HYPERBROWSER_GET_CUA_TASK_STATUS", "name": "Get CUA Task Status", "description": "Poll the execution status of a CUA task. Use to check if a CUA task has completed, is still running, or has failed." }, { "slug": "HYPERBROWSER_GET_EXTRACT_JOB_RESULT", "name": "Get Extract Job Result", "description": "Tool to fetch the status and results of a specific extract job. Use after initiating an extract job to monitor progress and retrieve final data." }, { "slug": "HYPERBROWSER_GET_EXTRACT_JOB_STATUS", "name": "Get Extract Job Status", "description": "Retrieve the status of an extract job. Use after calling Start Extract Job to poll its progress. Poll periodically until status is 'completed' or 'failed', then use Get Extract Job Result to retrieve the extracted data." }, { "slug": "HYPERBROWSER_GET_GEMINI_COMPUTER_USE_TASK_RESULT", "name": "Get Gemini Computer Use task result", "description": "Tool to retrieve the current status and results of a Gemini Computer Use task. Use when checking if a Gemini automation task has completed or is still pending." }, { "slug": "HYPERBROWSER_GET_HYPER_AGENT_TASK_RESULT", "name": "Get HyperAgent Task Result", "description": "Tool to retrieve the status and results of a HyperAgent task. Use when checking if a HyperAgent task has completed or to get the final results and execution steps." }, { "slug": "HYPERBROWSER_GET_PROFILE", "name": "Get Profile By ID", "description": "Retrieves details of a specific Hyperbrowser profile by its UUID. Returns profile metadata including name, team association, and timestamps. Use the List Profiles action first to obtain valid profile IDs." }, { "slug": "HYPERBROWSER_GET_SCRAPE_JOB_RESULT", "name": "Get Scrape Job Result", "description": "Retrieves the status and results of a scrape job. Poll this endpoint after creating a scrape job to check progress and get the scraped content when completed. Returns jobId, status (pending/running/completed/failed), scraped data, and any error message." }, { "slug": "HYPERBROWSER_GET_SCRAPE_JOB_STATUS", "name": "Get Scrape Job Status", "description": "Tool to retrieve the current status of a specific scrape job. Use after initiating a scrape job to poll its status; poll at moderate intervals (e.g., every 2–5 seconds) rather than tight loops to avoid exhausting quota. Responses may be large when the job includes screenshots or full HTML." }, { "slug": "HYPERBROWSER_GET_SESSION_DETAILS", "name": "Get Session Details", "description": "Retrieve detailed information about a Hyperbrowser session by its ID. Use this tool to get connection endpoints (wsEndpoint, liveUrl), session status, and configuration details for an existing session. The session ID can be obtained from create_session or list_sessions actions. Returns active connection details (wsEndpoint, liveUrl, token) for active sessions, or historical information for closed sessions." }, { "slug": "HYPERBROWSER_GET_SESSION_DOWNLOADS_URL", "name": "Get Session Downloads URL", "description": "Tool to retrieve the downloads URL for a session. Returns a signed URL to download files saved during a browser session. Note: The session must be created with 'saveDownloads: true' for downloads to be available. Poll this endpoint checking status until 'completed'." }, { "slug": "HYPERBROWSER_GET_SESSION_RECORDING", "name": "Get Session Recording", "description": "Retrieve the recording URL for a browser session. Returns a pre-signed S3 URL to download the rrweb JSON recording. The recording status indicates availability: - 'pending': Recording is being prepared - 'in_progress': Recording is still being processed - 'completed': Recording is ready, recordingUrl will contain the download link - 'failed': Recording failed, check the error field - 'not_enabled': Session was created without enableWebRecording=true Poll this endpoint until status is 'completed' or 'failed' after stopping a session." }, { "slug": "HYPERBROWSER_GET_SESSION_VIDEO_RECORDING_URL", "name": "Get Session Video Recording URL", "description": "Tool to retrieve the video recording URL for a browser session. Returns a pre-signed URL to download the video recording. The video recording status indicates availability: - 'pending': Video recording is being prepared - 'in_progress': Video recording is still being processed - 'completed': Video recording is ready, recordingUrl will contain the download link - 'failed': Video recording failed, check the error field - 'not_enabled': Session was created without enableVideoWebRecording=true Poll this endpoint until status is 'completed' or 'failed' after stopping a session." }, { "slug": "HYPERBROWSER_GET_WEB_CRAWL_RESULT", "name": "Get Web Crawl Result", "description": "Tool to retrieve the status and results of a web crawl job. Use after submitting a web crawl job to check its progress and fetch paginated results. Supports pagination via page and batchSize parameters for large crawl jobs." }, { "slug": "HYPERBROWSER_GET_WEB_CRAWL_STATUS", "name": "Get Web Crawl Status", "description": "Tool to retrieve just the status of a web crawl job without the full results. Use after initiating a web crawl to poll its current state." }, { "slug": "HYPERBROWSER_LIST_EXTENSIONS", "name": "List Extensions", "description": "Tool to list all browser extensions. Use when you need to fetch all available extensions for the Hyperbrowser account." }, { "slug": "HYPERBROWSER_LIST_PROFILES", "name": "List Profiles", "description": "Tool to list profiles. Use when you need to fetch paginated profiles and optionally filter by name." }, { "slug": "HYPERBROWSER_LIST_SESSIONS", "name": "List Sessions", "description": "Tool to list sessions with optional status filter. Use when you need a paginated overview of browser sessions before acting on them." }, { "slug": "HYPERBROWSER_SEARCH_WEB", "name": "Search Web", "description": "Tool to perform a web search and retrieve results with titles, URLs, and descriptions. Use when you need to search the web for information on a specific topic or query." }, { "slug": "HYPERBROWSER_START_BROWSER_USE_TASK", "name": "Start Browser Use Task", "description": "Tool to start an asynchronous browser-use task. Use when you need to automate web interactions given a task instruction." }, { "slug": "HYPERBROWSER_START_CLAUDE_COMPUTER_USE_TASK", "name": "Start Claude Computer Use Task", "description": "Tool to start a Claude Computer Use task. Use when you need AI-driven automated browser interactions. Call after you have your task prompt and any session preferences configured." }, { "slug": "HYPERBROWSER_START_CRAWL_JOB", "name": "Start Crawl Job", "description": "Tool to start a new crawl job for a specified URL. Use when you need to initiate a web crawl before checking job status." }, { "slug": "HYPERBROWSER_START_CUA_TASK", "name": "Start CUA Task", "description": "Tool to start an OpenAI CUA (Computer-Using Agent) task. Use when you need AI-driven automated browser interactions powered by OpenAI. Call after you have your task prompt and any session preferences configured." }, { "slug": "HYPERBROWSER_START_EXTRACT_JOB", "name": "Start Extract Job", "description": "Start an AI-powered data extraction job from one or more web pages. Use this tool to scrape structured data from websites by providing URLs and either a natural language prompt describing what to extract, or a JSON schema defining the output structure (or both for best results). Returns a jobId to track extraction progress via HYPERBROWSER_GET_EXTRACT_JOB_STATUS and retrieve results via HYPERBROWSER_GET_EXTRACT_JOB_RESULT." }, { "slug": "HYPERBROWSER_START_GEMINI_COMPUTER_USE_TASK", "name": "Start Gemini Computer Use Task", "description": "Tool to start a Gemini Computer Use task for browser automation using Google's Gemini. Use when you need AI-driven automated browser interactions with Gemini models." }, { "slug": "HYPERBROWSER_START_WEB_CRAWL", "name": "Start Web Crawl", "description": "Tool to start an asynchronous web crawl job that follows links from a starting URL and returns content from each page. Use when you need to crawl multiple pages from a website." }, { "slug": "HYPERBROWSER_STOP_BROWSER_USE_TASK", "name": "Stop Browser Use Task", "description": "Tool to stop a running browser-use task. Use when halting an in-progress browser automation task after confirming its task ID." }, { "slug": "HYPERBROWSER_STOP_CLAUDE_COMPUTER_USE_TASK", "name": "Stop Claude Computer Use Task", "description": "Tool to stop a running Claude computer use task. Use when a Claude computer use task is in progress and needs to be terminated." }, { "slug": "HYPERBROWSER_STOP_CUA_TASK", "name": "Stop CUA Task", "description": "Tool to stop a running CUA task. Use when a CUA task is in progress and needs to be terminated." }, { "slug": "HYPERBROWSER_STOP_GEMINI_COMPUTER_USE_TASK", "name": "Stop Gemini Computer Use Task", "description": "Tool to stop a running Gemini computer use task. Use when a Gemini computer use task is in progress and needs to be terminated." }, { "slug": "HYPERBROWSER_STOP_SESSION", "name": "Stop Session", "description": "Tool to stop a running session by ID. Use after confirming the session is active." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hyperbrowser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Hyperbrowser API Key", "type": "string", "description": "Your Hyperbrowser API key used for authentication in the x-api-key header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hyperise", "name": "Hyperise", "logo": "https://hyperise.com/images/logo.png", "description": "Hyperise is a personalization toolkit that enables sales and marketing teams to add dynamic, personalized elements to images, videos, and websites, enhancing engagement across various channels.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HYPERISE_CREATE_CLIENT_ACCOUNT", "name": "Create Client Account", "description": "Creates a new Hyperise business/client account for personalized image campaigns. Use this to provision prospect records that can be linked to Hyperise image templates. The website field is required in the extras parameter. Returns the created account's ID, which can be used with other Hyperise actions like personalized short links." }, { "slug": "HYPERISE_LIST_IMAGE_TEMPLATES", "name": "List Image Templates", "description": "Retrieves all active personalized image templates for the authenticated user. Use this tool when you need to: - Get a list of available Hyperise image templates - Find template IDs for use with other Hyperise actions - Check template dimensions, preview URLs, or metadata Returns an empty list if no templates exist." }, { "slug": "HYPERISE_PERSONALIZED_SHORT_LINKS", "name": "Generate Personalized Short Link", "description": "Generate a personalized short link with Open Graph metadata for rich link previews. This tool creates a shareable URL that: - Redirects to your destination page - Shows personalized image previews when shared on social media - Passes personalization data to your landing page Prerequisites: 1. At least one image template must exist in your Hyperise account 2. A custom link domain must be configured in Settings > Custom Domain Use HYPERISE_LIST_IMAGE_TEMPLATES first to get the image_hash parameter." }, { "slug": "HYPERISE_PROSPECT_BUSINESS_DATA", "name": "Hyperise Prospect Business Data (CRUD)", "description": "Tool to perform CRUD operations on Hyperise business prospect records. Use when managing business data via the Hyperise API." }, { "slug": "HYPERISE_USER_AUTHENTICATION", "name": "User Authentication", "description": "Tool to authenticate an API token and retrieve user details. Use after obtaining a valid API token from Hyperise settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hyperise_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Hyperise API Token", "type": "string", "description": "Your API token for authenticating requests to the Hyperise API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "hystruct", "name": "Hystruct", "logo": "https://logos.composio.dev/api/hystruct", "description": "Hystruct is an AI-driven web scraping tool that simplifies data extraction from websites using predefined schemas, supporting various data fields like job listings and e-commerce.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "HYSTRUCT_LIST_ALL_WEBHOOKS", "name": "List All Webhooks", "description": "Tool to list all webhooks associated with the account. Use when you need to retrieve every configured webhook for your team." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "hystruct_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Hystruct API Key", "type": "string", "description": "Your Hystruct API key, which can be found in your Hystruct dashboard under settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ibm_x_force_exchange", "name": "IBM X-Force Exchange", "logo": "https://logos.composio.dev/api/ibm_x_force_exchange", "description": "IBM X-Force Exchange is a threat intelligence sharing platform for researching security threats, aggregating intelligence, and collaborating on cybersecurity insights", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IBM_X_FORCE_EXCHANGE_GET_CASEFILES_PUBLIC", "name": "Get Latest Public Collections", "description": "Tool to retrieve latest public Collections from IBM X-Force Exchange. Use when you need to access publicly available collections without pagination. For fetching all public collections, consider using the paginated endpoint instead." }, { "slug": "IBM_X_FORCE_EXCHANGE_GET_CASEFILES_PUBLIC_PAGINATED", "name": "Get Public Collections Paginated", "description": "Tool to retrieve all public Collections using pagination from IBM X-Force Exchange. Use when you need to access publicly available collections with pagination support. Returns a list of publicly accessible case files with pagination metadata." }, { "slug": "IBM_X_FORCE_EXCHANGE_GET_IPR_CATEGORIES", "name": "Get IPR Category List", "description": "Tool to retrieve the complete list of IP reputation categories from IBM X-Force Exchange. Use when you need to understand available IPR classification categories used by XFE." }, { "slug": "IBM_X_FORCE_EXCHANGE_GET_URL_CATEGORIES", "name": "Get URL Category List", "description": "Tool to retrieve the complete list of URL categories from IBM X-Force Exchange. Use when you need to understand available URL classification categories used by XFE." }, { "slug": "IBM_X_FORCE_EXCHANGE_GET_USERPROFILE", "name": "Get User Profile Information", "description": "Tool to retrieve authenticated user's profile information from IBM X-Force Exchange. Use when you need to access user account details, membership statistics, or integration configurations." }, { "slug": "IBM_X_FORCE_EXCHANGE_GET_VERSION", "name": "Get Current API Version", "description": "Tool to retrieve current running API version information from IBM X-Force Exchange. Use when you need to check the API version, build number, or creation date." }, { "slug": "IBM_X_FORCE_EXCHANGE_POST_AUTH_API_KEY", "name": "Generate API Key and Password", "description": "Tool to generate a new API key and password pair for IBM X-Force Exchange authentication. Use when you need to create new credentials for API access. The generated credentials do not expire and can be used with Basic Authentication." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ibm_x_force_exchange_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your IBM X-Force Exchange API Key. Navigate to your IBM X-Force Exchange account > Profile > Settings > API Access to retrieve it.", "required": true, "default": null }, { "name": "password", "displayName": "API Password", "type": "string", "description": "Your IBM X-Force Exchange API Password. Navigate to your IBM X-Force Exchange account > Profile > Settings > API Access to retrieve it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "icypeas", "name": "Icypeas", "logo": "https://www.icypeas.com/logo.png", "description": "Icypeas is an email discovery and verification tool that allows users to find and verify professional email addresses using first name, last name, and company domain.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ICYPEAS_BULK_EMAIL_SEARCH", "name": "Bulk Email Search", "description": "Initiate a bulk email search job to find professional email addresses for multiple people at once. Use this tool when you need to find emails for more than one person. Provide names (first and/or last) along with company domains or names. The API queues the job and returns a file identifier that can be used with 'Fetch Bulk Search Info' and 'Retrieve Search Results' to check progress and get results. Rate limit: 1 request per second. Maximum 5000 rows per bulk request." }, { "slug": "ICYPEAS_BULK_FIND_PROFILE_URLS", "name": "Find Profile URLs Bulk", "description": "Tool to perform bulk search for profile URLs based on firstname, lastname, and company/domain or job title. Use when you need to find LinkedIn or other social profile URLs for multiple prospects at once (up to 50 per request). This endpoint returns immediate results with profile URLs. Each result includes the found URL (or empty string if not found), a search ID, and a status indicator." }, { "slug": "ICYPEAS_BULK_REVERSE_EMAIL_LOOKUP", "name": "Bulk Reverse Email Lookup", "description": "Tool to find LinkedIn profile URLs for multiple professional email addresses in a single request. Use when you need to reverse lookup 2-50 email addresses to find their associated LinkedIn profiles. Each lookup costs 10 credits per found profile. Returns results immediately (not async like other bulk operations)." }, { "slug": "ICYPEAS_BULK_SCRAPE", "name": "Scrape Bulk", "description": "Tool to scrape multiple LinkedIn profiles or companies in bulk (up to 50 per request). Use when you need to scrape multiple LinkedIn URLs at once. Returns a job ID that can be used with check_progress to fetch results." }, { "slug": "ICYPEAS_CHECK_PROGRESS", "name": "Check Search Progress", "description": "Check the processing progress of a search by its ID. Use this tool after initiating a single or bulk search to monitor its status. For mode='single': Checks progress of individual search items via /bulk-single-searchs/read endpoint. For mode='bulk': Checks progress of bulk search files via /search-files/read endpoint. Poll this endpoint periodically until 'finished' is True or item status is 'DEBITED'. Note: ICYPEAS recommends using webhooks instead of polling for production use." }, { "slug": "ICYPEAS_COUNT_COMPANIES", "name": "Count Companies", "description": "Tool to count companies in Icypeas database matching specified filters without returning data or being charged. Use when you need to know how many companies match specific criteria like industry, location, or headcount." }, { "slug": "ICYPEAS_COUNT_PEOPLE", "name": "Count People", "description": "Tool to count people matching specified filters without retrieving data or consuming credits. Use when you need to assess the size of a people search result set before running the actual query." }, { "slug": "ICYPEAS_DOMAIN_SCAN", "name": "Domain Scan", "description": "Tool to scan a domain for role-based email addresses. Use when you need to discover all role-based emails for a specific domain." }, { "slug": "ICYPEAS_FETCH_BULK_SEARCH_INFO", "name": "Fetch Bulk Search Info", "description": "Retrieve bulk search files with their status and progress. Lists all bulk searches (email, profile, company searches) with pagination support. Use to monitor bulk operation progress, check completion status, or retrieve file IDs for further operations." }, { "slug": "ICYPEAS_FETCH_SUBSCRIPTION_INFO", "name": "Fetch Subscription Information", "description": "Retrieves subscription details and remaining credits for an Icypeas account. Use this to check credit balances, subscription status, and user ID before performing searches. The email parameter must match the account owner's email associated with the API key." }, { "slug": "ICYPEAS_FIND_COMPANIES", "name": "Find Companies", "description": "Tool to search companies in Icypeas database. Use when you need to find companies matching filters like industry, location, or headcount." }, { "slug": "ICYPEAS_FIND_COMPANY_URL", "name": "Find Company URL", "description": "Tool to find a single company profile URL using a company name or domain. Use when you need to initiate a profile-URL search for a given company identifier." }, { "slug": "ICYPEAS_FIND_LINKEDIN_PROFILE_BY_EMAIL", "name": "Reverse Email Lookup", "description": "Find the LinkedIn profile URL behind a single professional email address. Use when you need to identify the person associated with an email address. Costs 10 credits per found profile." }, { "slug": "ICYPEAS_FIND_PEOPLE", "name": "Find People", "description": "Search for people/leads in the Icypeas database. Supports filtering by name, job title, company, location, skills, languages, school, and keywords. Each filter supports include/exclude lists. Returns matching leads with pagination support for large result sets. Requires credits to execute." }, { "slug": "ICYPEAS_FIND_PROFILE_URL", "name": "Find Profile URL", "description": "Finds a person's LinkedIn profile URL using their name and company or job title. Use this tool when you need to find someone's LinkedIn profile URL. Provide the person's first name, last name, and either their company/domain OR job title. Tips for best results: - For company/domain, use the website domain (e.g., 'icypeas.com') or company name - Keep inputs simple - avoid over-specifying details - Costs 1 credit per successful search Example: Find LinkedIn URL for Pierre Landoin at icypeas.com" }, { "slug": "ICYPEAS_FIND_SINGLE_EMAIL", "name": "Find Single Email", "description": "Initiates an asynchronous email search to find a prospect's email address using their name and company. Returns a search item ID that can be used with ICYPEAS_RETRIEVE_SEARCH_RESULTS to get the actual email. Use for individual lookups; for bulk operations, use ICYPEAS_BULK_EMAIL_SEARCH instead." }, { "slug": "ICYPEAS_PARSE_BULK_SEARCH_STATISTICS", "name": "Statistics Bulk Search", "description": "Tool to parse bulk search statistics webhook. Use when processing the completion notification of a bulk search." }, { "slug": "ICYPEAS_RETRIEVE_SEARCH_RESULTS", "name": "Retrieve Search Results", "description": "Tool to retrieve the results of a search by ID or to paginate through bulk search results. Use after initiating a search to fetch individual or multiple search results." }, { "slug": "ICYPEAS_SCRAPE_COMPANY", "name": "Scrape Company", "description": "Tool to initiate scraping of a LinkedIn company page. Use when you have a LinkedIn company URL and need to retrieve company profile data. Returns a job ID that can be used with check_progress to fetch the full results." }, { "slug": "ICYPEAS_SCRAPE_PROFILE", "name": "Scrape Profile", "description": "Tool to initiate scraping of a LinkedIn profile. Use when you have a public LinkedIn profile URL and need a job ID and status to later fetch full details." }, { "slug": "ICYPEAS_SETUP_NOTIFICATIONS", "name": "Setup Notifications", "description": "Provides instructions for setting up Icypeas push notifications/webhooks. Use this tool when you need to configure real-time notifications for bulk searches or single search updates. Note: Webhooks must be configured via the Icypeas dashboard; there is no API endpoint for programmatic setup." }, { "slug": "ICYPEAS_VERIFY_EMAIL", "name": "Verify Email Address", "description": "Tool to verify if a specific email address exists and is valid. Use when you need to check email deliverability. Returns a verification item ID that can be used with ICYPEAS_RETRIEVE_SEARCH_RESULTS to get the verification result." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "icypeas_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Icypeas API Key", "type": "string", "description": "Your Icypeas API key, used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "identitycheck", "name": "Identitycheck", "logo": "https://logos.composio.dev/api/identitycheck", "description": "IdentityCheck is a verification solution designed to authenticate user identities with precision and speed, utilizing advanced algorithms and comprehensive data sources to ensure accurate validation, mitigate fraud, and enhance security.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "IDENTITYCHECK_CHECK_API_HEALTH", "name": "Check API Health", "description": "Performs an API health check to verify endpoint availability and responsiveness. This tool sends an HTTP request to a specified endpoint and interprets a 200 OK response as indicating the API is UP. It handles both JSON and non-JSON responses (including HTML). Use this before other operations to confirm the API is reachable." }, { "slug": "IDENTITYCHECK_DELETE_CONFIGURATION", "name": "Delete configuration", "description": "Tool to delete an existing configuration. Use when you need to remove a configuration by its unique code." }, { "slug": "IDENTITYCHECK_DELETE_NOTIFICATION_ENDPOINT", "name": "Delete Notification Endpoint", "description": "Tool to delete a notification endpoint by its unique code. This operation is idempotent - it will succeed whether the endpoint exists or has already been deleted. Use when you need to remove a callback endpoint that receives webhook notifications for identity verification events." }, { "slug": "IDENTITYCHECK_FETCH_ALL_CONFIGURATIONS", "name": "Fetch All Configurations", "description": "Tool to fetch all existing configurations. Use when you need to list all customer configurations after authentication." }, { "slug": "IDENTITYCHECK_FETCH_ALL_NOTIFICATION_ENDPOINTS", "name": "Fetch all notification endpoints", "description": "Fetches all configured notification endpoints (webhooks) for the IdentityCheck SDK. Use this to list all callback URLs that receive onboarding event notifications (START_ONBOARDING, END_ONBOARDING)." }, { "slug": "IDENTITYCHECK_FETCH_CONFIGURATION", "name": "Fetch Configuration", "description": "Fetch a specific identity verification configuration by its code. Use this action when you need to: - Retrieve theme customizations (logo, colors, button styles) for a configuration - Get custom wordings/translations defined for different languages - Review configuration options like link validity, email sender name, or ID capture settings - Verify that a configuration exists before using it in an onboarding flow The configuration code is the unique identifier assigned when the configuration was created." }, { "slug": "IDENTITYCHECK_FETCH_NOTIFICATION_ENDPOINT", "name": "Fetch Notification Endpoint", "description": "Tool to fetch a notification endpoint by its code. Use when you need the current configuration of a specific callback endpoint." }, { "slug": "IDENTITYCHECK_FETCH_ONBOARDINGS", "name": "Fetch Onboardings", "description": "Retrieves identity verification onboarding sessions with comprehensive filtering and pagination. An onboarding represents a customer's identity verification journey, tracking their progress from link creation through document capture and verification completion. Each onboarding has a unique link sent via email/phone/none, and transitions through states: CREATED → CLICKED → CAPTURE_ONGOING → SUCCESS/ERROR/EXPIRED. Use this to: - Monitor verification sessions by status, date range, or customer identifiers - Track onboarding completion rates and error patterns - Retrieve specific onboardings by UID or business-specific identifiers - Analyze notification delivery methods and their effectiveness Returns paginated results with statistics (total results, distinct users, captures per document). All filter parameters are optional; omit them to retrieve all onboardings. Example: Find all failed verifications due to network errors in January 2024" }, { "slug": "IDENTITYCHECK_GET_DOCUMENT_CONTENT", "name": "Get Document Content", "description": "Tool to retrieve base64-encoded document content. Use when you have an onboarding UID and document code." }, { "slug": "IDENTITYCHECK_RETRIEVE_ONBOARDING_STATUS", "name": "Retrieve Onboarding Status", "description": "Retrieve the current status and results of an identity verification onboarding session. Use this tool to check the progress of an onboarding (CREATED, CLICKED, CAPTURE_ONGOING) or get final results (SUCCESS, ERROR, EXPIRED). Returns detailed analysis results, error causes, and CIS export data when available." }, { "slug": "IDENTITYCHECK_UPDATE_CONFIGURATION", "name": "Update Configuration", "description": "Tool to update an existing configuration. Use when you need to modify properties of a configuration identified by code." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "identitycheck_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "IdentityCheck API Key", "type": "string", "description": "The API key provided by IdentityCheck for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ignisign", "name": "Ignisign", "logo": "https://ignisign.io/logo.png", "description": "IgniSign is a comprehensive electronic signature platform that enables users to sign, send, and manage documents securely online.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IGNISIGN_API_AUTHENTICATION", "name": "Ignisign API Authentication", "description": "Tool to authenticate an application over Ignisign API and retrieve a JWT. Use when obtaining a bearer token before making other API calls." }, { "slug": "IGNISIGN_CANCEL_SIGNATURE_REQUEST", "name": "Cancel Signature Request", "description": "Cancel (close) a signature request to terminate it. This uses the Ignisign /close endpoint which permanently cancels the signature workflow. Use this when you need to abort a signature request that is in DRAFT or IN_PROGRESS status. This operation is idempotent - calling it on an already cancelled request returns success without error." }, { "slug": "IGNISIGN_CREATE_DOCUMENT", "name": "Initialize Document", "description": "Tool to initialize a document for a signature request. Use when linking a new document to an existing signature request after creating that request." }, { "slug": "IGNISIGN_CREATE_SIGNER", "name": "Create Signer", "description": "Tool to create a new signer. Use when onboarding a signer to an application environment after selecting a signer profile." }, { "slug": "IGNISIGN_CREATE_WEBHOOK_ENDPOINT", "name": "Create Webhook Endpoint", "description": "Tool to create a new webhook endpoint for an application. Use after obtaining application ID and environment to register for event notifications." }, { "slug": "IGNISIGN_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a specific document by its ID. Use when you need to permanently remove a document after processing is complete." }, { "slug": "IGNISIGN_DELETE_SIGNATURE_REQUEST", "name": "Delete Ignisign Signature Request", "description": "Permanently deletes a signature request from Ignisign by its ID. This action is irreversible and removes the signature request along with all associated data. The signature request ID can be obtained from the IGNISIGN_INIT_SIGNATURE_REQUEST action or IGNISIGN_GET_SIGNATURE_REQUESTS action." }, { "slug": "IGNISIGN_DELETE_SIGNER", "name": "Delete Signer", "description": "Tool to revoke/delete a signer from an Ignisign application environment. This action permanently revokes the signer's access and is idempotent (can be called multiple times on the same signer). Use when you need to remove a signer after confirming their signer ID." }, { "slug": "IGNISIGN_DELETE_WEBHOOK_ENDPOINT", "name": "Delete Webhook Endpoint", "description": "Delete a webhook endpoint by its ID. After deletion, returns the list of remaining webhook endpoints configured for the application environment. Use this tool when you need to remove a webhook that is no longer needed or to clean up unused webhooks. The webhook ID can be obtained from the create webhook or list webhooks endpoints." }, { "slug": "IGNISIGN_GET_APPLICATION_CONTEXT", "name": "Get application context", "description": "Tool to retrieve the global context of an application. Use when you need configuration and environment settings for a given app." }, { "slug": "IGNISIGN_GET_DOCUMENT_INFORMATION", "name": "Get Document Information", "description": "Tool to retrieve document metadata by ID. Use when you need detailed information of a specific document after obtaining its ID." }, { "slug": "IGNISIGN_GET_MISSING_SIGNER_INPUTS", "name": "Get Missing Signer Inputs", "description": "Tool to determine missing inputs needed for a signer in a specific signature profile. Use after selecting a signature profile and signer to identify required fields." }, { "slug": "IGNISIGN_GET_SIGNATURE_REQUEST_DETAILS", "name": "Get Signature Request Details", "description": "Tool to retrieve detailed information for a specific signature request. Use after creating or listing a signature request to inspect its details." }, { "slug": "IGNISIGN_GET_SIGNATURE_REQUEST_DOCUMENT", "name": "Get Signature Request Document", "description": "Tool to retrieve the document associated with a specific signature request. The action downloads the original file of a document. Provide `documentId` to select a specific document or omit to use the first available document of the request." }, { "slug": "IGNISIGN_GET_SIGNATURE_REQUESTS", "name": "Get Signature Requests", "description": "Retrieves a paginated list of signature requests for a specific Ignisign application and environment. Use this to list all signature requests (drafts, in-progress, completed, cancelled) in an application. Each signature request can have associated documents and signers. Returns pagination metadata to iterate through large result sets. Note: The app_env parameter must match your API key's environment scope." }, { "slug": "IGNISIGN_GET_SIGNED_DOCUMENT", "name": "Get Signed Document", "description": "Tool to download the signed document (signature proof) for a signature request. The action will: 1) Resolve the first documentId from the signature request details. 2) Try v4: GET /documents/{documentId}/signatures/PDF_WITH_SIGNATURES 3) Fallback v3: GET /v3/documents/{documentId}/signature-proof 4) Final fallback: GET /documents/{documentId}/file (original file)" }, { "slug": "IGNISIGN_GET_SIGNER_INPUT_CONSTRAINTS", "name": "Get Signer Input Constraints", "description": "Tool to get signer input constraints. Use when you need to know which fields are required from signers for a given signer profile." }, { "slug": "IGNISIGN_GET_SIGNER_INPUTS", "name": "Get Signer Inputs", "description": "Retrieves the inputs provided by a specific signer for a signature request. Returns field values the signer has submitted (e.g., firstName, lastName, email). Use this after a signer has been added to a signature request to fetch their profile information. The signer must be associated with the specified signature request." }, { "slug": "IGNISIGN_GET_SIGNER_PROFILE", "name": "Get Signer Profile", "description": "Retrieve detailed information about a specific signer profile by its ID. Use this to get profile settings including integration mode, authentication methods, and associated signers. First use 'Get Signer Profiles' to list available profile IDs." }, { "slug": "IGNISIGN_GET_SIGNER_PROFILES", "name": "Get Signer Profiles", "description": "Retrieve all signer profiles for a specific Ignisign application environment. Use this tool to list all configured signer profiles that define how signers interact with signature requests. Each profile specifies integration mode (BY_SIDE, EMBEDDED, or MACHINE_TO_MACHINE), authentication methods, and other settings. Returns profile IDs which can be used when creating signers or signature requests." }, { "slug": "IGNISIGN_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Retrieves all webhook endpoints configured for a specific Ignisign application environment. Returns the list of webhooks including their URLs, descriptions, and creation timestamps. Use this to audit existing webhook integrations or verify webhook configurations." }, { "slug": "IGNISIGN_INIT_SIGNATURE_REQUEST", "name": "Initialize Ignisign Signature Request", "description": "Initialize a new signature request in Ignisign. This is the first step in creating a signature workflow. After initialization, you can add documents (IGNISIGN_CREATE_DOCUMENT), assign signers (IGNISIGN_CREATE_SIGNER), and publish the request (IGNISIGN_PUBLISH_SIGNATURE_REQUEST) to start the signing process." }, { "slug": "IGNISIGN_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to retrieve documents linked to a signature request. The action works by calling the signature request context endpoint and extracting its documentIds, then fetching each document detail." }, { "slug": "IGNISIGN_PROVIDE_DOCUMENT_CONTENT_DATA_JSON", "name": "Provide Document Content Data JSON", "description": "Provides JSON content to an existing document in Ignisign. Use this action after creating a document with IGNISIGN_CREATE_DOCUMENT to attach structured JSON data that will be associated with a signature request. The JSON content is stored and can be used for document generation or data binding in signature workflows." }, { "slug": "IGNISIGN_PROVIDE_DOCUMENT_CONTENT_FILE", "name": "Provide Document Content File", "description": "Tool to provide file content for a document. Use after creating a document to attach its file content." }, { "slug": "IGNISIGN_PROVIDE_DOCUMENT_CONTENT_PRIVATE_FILE", "name": "Provide Document Content Private File", "description": "Provides private document content by submitting its SHA-256 hash to IgniSign. Use this after creating a document with IGNISIGN_CREATE_DOCUMENT when the document content should remain private (not uploaded). The hash proves document integrity without exposing its contents. The document status will change to 'PROVIDED' upon success." }, { "slug": "IGNISIGN_PUBLISH_SIGNATURE_REQUEST", "name": "Publish Signature Request", "description": "Tool to publish a draft signature request. Use after adding all documents and signer details to the draft." }, { "slug": "IGNISIGN_SEARCH_SIGNERS", "name": "Search Signers", "description": "Tool to search for signers within an application environment with pagination support. Use after obtaining application ID and environment. Requires a non-empty filter string to search by name, email, or external ID. Use '*' to match all signers. Supports page and pageSize parameters to paginate through large result sets." }, { "slug": "IGNISIGN_UPDATE_DOCUMENT_INFORMATION", "name": "Update Document Information", "description": "Tool to update document metadata. Use when you need to change a document's label, description, or external identifier after creation." }, { "slug": "IGNISIGN_UPDATE_SIGNATURE_REQUEST", "name": "Update Signature Request", "description": "Tool to partially update a signature request in DRAFT state. Use when you need to modify draft request metadata before sending." }, { "slug": "IGNISIGN_UPDATE_SIGNER", "name": "Update Signer", "description": "Updates an existing signer's profile assignment. Use this to change which signer profile a signer is associated with. The signer must already exist in the application environment. Requires: app_id (from Get Application Context), signer_id (from Create Signer or Search Signers), and signer_profile_id (from Get Signer Profiles)." }, { "slug": "IGNISIGN_UPDATE_WEBHOOK_ENDPOINT", "name": "Update Webhook Endpoint", "description": "Tool to update an existing webhook endpoint. Use when you have a webhook ID and want to modify its destination URL or description. Example: Update the URL of webhook `68e7adc882353ea4e072bdbe` to `https://example.com/webhook`." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ignisign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "IgniSign API Bearer Token", "type": "string", "description": "JWT Bearer token for authenticating IgniSign API requests. Obtain by sending your App ID, App Secret, and App Env to the /v4/auth/app-api endpoint.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "igpt", "name": "Igpt", "logo": "https://logos.composio.dev/api/igpt", "description": "Email intelligence API for agents and enterprise workflows with AI-powered search and context", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "igpt_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your iGPT API key from https://igpt.ai/hub/playground/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imagekit_io", "name": "ImageKit", "logo": "https://imagekit.io/static/imagekit-logo.svg", "description": "ImageKit.io is a comprehensive media management solution offering real-time image and video optimization, transformation, and delivery through a global content delivery network (CDN).", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IMAGEKIT_IO_BULK_JOB_STATUS", "name": "Bulk Job Status", "description": "Retrieve the status of a bulk folder operation. Use this tool to monitor the progress of asynchronous Copy Folder or Move Folder operations by providing the jobId returned from those operations." }, { "slug": "IMAGEKIT_IO_BULK_MOVE_FILES", "name": "Bulk Move Files", "description": "Tool to move multiple files in bulk. Use when you need to relocate up to 100 ImageKit files to a specified folder in one API call." }, { "slug": "IMAGEKIT_IO_BULK_REMOVE_TAGS", "name": "Bulk Remove Tags", "description": "Tool to remove tags from multiple files in bulk. Use when you need to strip specified tags from up to 50 existing files in one API call." }, { "slug": "IMAGEKIT_IO_COPY_FOLDER", "name": "Copy Folder", "description": "Initiate an asynchronous bulk copy of a folder and all its contents to a new location. Use this tool when you need to: - Duplicate an entire folder structure including all nested files and subfolders - Create a backup of a folder at a different location - Copy a folder with or without file version history This is an asynchronous operation that returns immediately with a job ID. The actual copy happens in the background. Use IMAGEKIT_IO_BULK_JOB_STATUS with the returned jobId to check when the operation completes. Note: If a folder with the same name exists at the destination, permissions from the existing destination folder will be preserved." }, { "slug": "IMAGEKIT_IO_CREATE_CUSTOM_METADATA_FIELD", "name": "Create Custom Metadata Field", "description": "Create a new custom metadata field in ImageKit DAM. Use this tool to define custom metadata fields that can be attached to assets (images, videos, etc.) in your ImageKit media library. Once created, you can assign values to these fields on individual assets for better organization and searchability. Supported field types: - Text/Textarea: For string values with optional length constraints - Number: For numeric values with optional min/max constraints - Date: For ISO8601 date strings with optional date range constraints - Boolean: For true/false values - SingleSelect/MultiSelect: For predefined options (requires selectOptions) Note: Field names must be unique across all fields (including deleted ones). Field types cannot be changed after creation." }, { "slug": "IMAGEKIT_IO_CREATE_FOLDER", "name": "Create Folder", "description": "Creates a new folder in ImageKit.io media library. Use this to organize assets into structured folder hierarchies. The folder will be created at the specified parent path. If the parent folder doesn't exist, the API will return an error." }, { "slug": "IMAGEKIT_IO_DELETE_CUSTOM_METADATA_FIELD", "name": "Delete Custom Metadata Field", "description": "Permanently deletes a custom metadata field from ImageKit. This action is irreversible. Note: Even after deletion, you cannot create a new field with the same name. Use 'List Custom Metadata Fields' first to get the field ID if needed. Rate limit: 5 requests/second for custom metadata field operations." }, { "slug": "IMAGEKIT_IO_DELETE_FILE", "name": "Delete File", "description": "Permanently deletes a file from ImageKit by its unique file ID. WARNING: This action is irreversible. The file and all its versions will be permanently removed. Note: Cached versions of the file may still be served until the cache expires. Use the purge cache endpoint if immediate removal from CDN is required. Use this tool when you need to: - Remove unwanted or obsolete files from the media library - Clean up test uploads - Delete files that should no longer be accessible The file ID can be obtained from the 'List and Search Assets' or 'Upload File' actions." }, { "slug": "IMAGEKIT_IO_DELETE_FILE_VERSION", "name": "Delete File Version", "description": "Permanently deletes a specific non-current file version from ImageKit.io. Use this when you need to remove an older version of a file while keeping the current version intact. Note: This action is irreversible. To delete all versions of a file, use the Delete File action instead." }, { "slug": "IMAGEKIT_IO_DELETE_FOLDER", "name": "Delete Folder", "description": "Permanently delete a folder and all its contents from ImageKit Media Library. WARNING: This is a destructive operation that cannot be undone. All files and subfolders within the specified folder will be permanently removed. Use this when you need to: - Remove an entire folder structure - Clean up unused folders - Delete test/temporary folders The operation is idempotent - deleting a non-existent folder will not raise an error." }, { "slug": "IMAGEKIT_IO_DELETE_MULTIPLE_FILES", "name": "Delete Multiple Files", "description": "Permanently delete multiple files from ImageKit media library in a single batch operation. Use this tool when you need to: - Remove up to 100 files at once by their unique file IDs - Clean up unused assets from your media library - Bulk delete files after migration or reorganization Important notes: - Deletion is permanent and includes all file versions - Cached CDN responses are NOT automatically purged (use Purge Cache action if needed) - File IDs can be obtained from 'List and Search Assets' or upload responses Returns the list of successfully deleted file IDs. On partial success (some files deleted, some failed), also returns an errors array with per-file failure details." }, { "slug": "IMAGEKIT_IO_GET_AUTHENTICATION_PARAMETERS", "name": "Get Upload Authentication Parameters", "description": "Tool to generate authentication parameters for client-side file uploads. Use when preparing client-side uploads." }, { "slug": "IMAGEKIT_IO_GET_FILE_DETAILS", "name": "Get File Details", "description": "Tool to retrieve details of a specific file. Use after uploading or listing assets to get full metadata." }, { "slug": "IMAGEKIT_IO_GET_FILE_METADATA", "name": "Get File Metadata", "description": "Tool to retrieve metadata of an uploaded file. Use after confirming a successful upload to get EXIF, pHash, dimensions, and other image metadata." }, { "slug": "IMAGEKIT_IO_GET_FILE_VERSION_DETAILS", "name": "Get File Version Details", "description": "Tool to retrieve details of a specific file version. Use after listing or uploading assets when you need to inspect version metadata." }, { "slug": "IMAGEKIT_IO_GET_USAGE", "name": "Get Usage", "description": "Retrieve ImageKit account usage metrics for a specified date range. Returns bandwidth consumption and media library storage usage. The response includes data from startDate up to (but not including) endDate. Maximum allowed date range is 90 days." }, { "slug": "IMAGEKIT_IO_LIST_AND_SEARCH_ASSETS", "name": "List and Search Media Assets", "description": "List and search media assets (files, folders, file-versions) in your ImageKit media library. Use this tool to: - Browse all assets with optional pagination (limit/skip) - Filter by type (file, folder, file-version, or all) - Filter by name, tags, or file type (image/non-image) - Search with advanced Lucene-style queries (e.g., 'size > 1000000 AND tags IN [\"banner\"]') - Sort results by name, date, size, or dimensions Returns a list of asset objects with metadata including URLs, dimensions, tags, and timestamps." }, { "slug": "IMAGEKIT_IO_LIST_CUSTOM_METADATA_FIELDS", "name": "List Custom Metadata Fields", "description": "List all custom metadata fields defined in the ImageKit Media Library. Use this tool to: - Retrieve all metadata field definitions (name, label, type, constraints) - Get field IDs required for updating or deleting fields - View field configurations (required, default values, select options) - Include soft-deleted fields when needed for auditing" }, { "slug": "IMAGEKIT_IO_LIST_FILE_VERSIONS", "name": "List File Versions", "description": "Retrieves all versions of a specific file in ImageKit. Returns a list of file version objects including metadata like version ID, creation date, and publication status. Use this to view file history, compare versions, or find a specific version to restore. Requires a valid fileId which can be obtained from the List Assets API or Upload API response." }, { "slug": "IMAGEKIT_IO_MOVE_FOLDER", "name": "Move Folder", "description": "Move a folder from one location to another in your ImageKit media library. This operation is asynchronous - it returns a jobId immediately, and the actual move happens in the background. The folder will be moved to become a subfolder of the destination path. Use IMAGEKIT_IO_BULK_JOB_STATUS with the returned jobId to check if the move has completed. Example: Moving '/photos/summer' to '/archive' will result in '/archive/summer'." }, { "slug": "IMAGEKIT_IO_PURGE_CACHE", "name": "Purge ImageKit Cache", "description": "Purge CDN and ImageKit internal caches for a specific URL or URL pattern. Use this action when you need to: - Invalidate cached content after updating an image - Force CDN to fetch the latest version of a file - Clear cache for a directory using wildcard (*) Note: Cache purging is asynchronous. Use the returned requestId with IMAGEKIT_IO_PURGE_STATUS to check completion. Monthly purge limits apply based on your pricing plan (typically 1000 URLs/month)." }, { "slug": "IMAGEKIT_IO_PURGE_STATUS", "name": "Check purge cache status", "description": "Tool to check the status of a cache purge request. Use after initiating a purge to retrieve its current state. Example: \"What's the status of purge request id abc123?\"" }, { "slug": "IMAGEKIT_IO_RENAME_FILE", "name": "Rename File", "description": "Renames an existing file in the ImageKit media library. Use this action when you need to change a file's name. Important: Old URLs will stop working after rename (unless CDN cache is active). This operation renames all file versions. Set purgeCache=True to clear CDN cached content for the old URL. Returns 404 if file not found, 409 if a file with the new name already exists in the same folder." }, { "slug": "IMAGEKIT_IO_RESTORE_FILE_VERSION", "name": "Restore File Version", "description": "Restores a non-current file version to become the current version in ImageKit. Use this to revert a file to a previous state. First use the List File Versions API to find the versionId of the version you want to restore." }, { "slug": "IMAGEKIT_IO_UPDATE_CUSTOM_METADATA_FIELD", "name": "Update Custom Metadata Field", "description": "Updates an existing custom metadata field's label or schema constraints in ImageKit DAM. Use this to: - Change the display label of a metadata field - Update validation constraints (min/max values, min/max length) - Set or modify the default value - Change whether the field is required Note: The field type and name cannot be changed after creation. At least one of 'label' or 'schema' must be provided in the request." }, { "slug": "IMAGEKIT_IO_UPDATE_FILE_DETAILS", "name": "Update File Details", "description": "Update file details in ImageKit media library. Use this tool to modify tags, custom coordinates, custom metadata, AI tags, apply extensions (like background removal), or change publication status. Note: When updating publication status via 'publish', no other parameters can be included in the request." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imagekit_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ImageKit.io Private API Key", "type": "string", "description": "Your ImageKit.io private API key. Used as the username for HTTP Basic Auth, with password left blank.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imagga", "name": "Imagga", "logo": "https://logos.composio.dev/api/imagga", "description": "Imagga Image Recognition API provides solutions for image tagging & categorization, visual search, content moderation.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imagga_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your Imagga API Key from your dashboard at https://imagga.com/profile/dashboard", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your Imagga API Secret from your dashboard at https://imagga.com/profile/dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imagior", "name": "Imagior", "logo": "https://logos.composio.dev/api/imagior", "description": "Imagior is an AI-powered automated image generation software that enables businesses and creators to create and customize images using templates via no-code or API solutions.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IMAGIOR_GET_ACCOUNT", "name": "Get account details", "description": "Tool to retrieve account details of the authenticated user. Use when you need to check account information such as name, email, and remaining credits." }, { "slug": "IMAGIOR_LIST_TEMPLATES", "name": "List design templates", "description": "Tool to list all design templates. Use when you need to retrieve every template associated with your account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imagior_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Imagior API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Imagior API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imejis_io", "name": "Imejis.io", "logo": "https://logos.composio.dev/api/imejis_io", "description": "Imejis.io is an API-based image generation platform that enables users to create and customize images seamlessly through a user-friendly interface and a rich library of templates.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IMEJIS_IO_LIST_DESIGNS", "name": "List Design Templates", "description": "Tool to list available design templates. Use after authenticating the account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imejis_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Imejis.io API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Imejis.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imgbb", "name": "ImgBB", "logo": "https://imgbb.com/favicon.ico", "description": "ImgBB is a free image hosting and sharing service that allows users to upload and share images easily.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IMGBB_GET_API_KEY", "name": "Get ImgBB API Key", "description": "Tool to retrieve and validate the ImgBB API key. Use before making ImgBB API calls to ensure authentication is configured." }, { "slug": "IMGBB_UPLOAD_IMAGE", "name": "Upload Image to ImgBB", "description": "Tool to upload an image to ImgBB. Use when you need to host an image and get back its URLs immediately." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imgbb_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "ImgBB API Key", "type": "string", "description": "Your ImgBB API key for authentication (find it in your ImgBB dashboard).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "imgix", "name": "Imgix", "logo": "https://assets.imgix.net/press/imgix-logo.png", "description": "imgix is a real-time image processing and delivery service that enables developers to optimize, transform, and deliver images efficiently.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IMGIX_ADD_ASSET_FROM_ORIGIN", "name": "IMGIX_ADD_ASSET_FROM_ORIGIN", "description": "Tool to queue a path from your origin to be added to the Asset Manager. Imports the asset metadata without uploading the asset itself. Use when you need to register an existing origin-hosted file with imgix." }, { "slug": "IMGIX_AUTO", "name": "Imgix Auto Optimization", "description": "Apply automatic image optimizations using imgix's auto parameter. Use this tool to automatically optimize images for web delivery. Common use cases: - Reduce file sizes with 'compress' for faster page loads - Auto-select modern formats (AVIF/WebP) with 'format' based on browser support - Enhance image quality with 'enhance' (adjusts brightness, contrast, saturation) - Remove red-eye from portrait photos with 'redeye' Multiple options can be combined (e.g., ['compress', 'format']) for cumulative optimizations. The 'true' option is a convenient shorthand that applies 'enhance' automatically. Note: This tool works with the imgix Rendering API and requires a valid imgix source domain. For testing, use 'assets.imgix.net' with paths like 'examples/kingfisher.jpg'." }, { "slug": "IMGIX_BLEND", "name": "Blend Overlay", "description": "Tool to overlay an image, text, or color onto a base image using imgix blending parameters. Use after specifying the base image URL and blend parameters to composite layers." }, { "slug": "IMGIX_BLEND_ALIGN", "name": "Imgix Blend Align", "description": "Tool to align the overlay relative to the base image when blending. Use after constructing a base Imgix URL to specify horizontal and vertical alignment (e.g., 'left,top')." }, { "slug": "IMGIX_BLEND_COLOR", "name": "Blend Color Over Image", "description": "Tool to blend a solid color over an image using CSS keyword or hex. Use when you need to apply color overlay transformations to an existing image URL." }, { "slug": "IMGIX_BLEND_X", "name": "Imgix Blend X Position", "description": "Position an overlay image horizontally on a base image using imgix's blend-x parameter. Use this tool when you need to place an overlay (image or color) at a specific horizontal offset from the left edge of the base image. This is useful for creating watermarks, badges, or composite images where precise positioning is required. Note: The blend-x parameter only affects image overlays. Color overlays always cover the entire image regardless of this setting." }, { "slug": "IMGIX_BORDER", "name": "Draw Image Border", "description": "Tool to draw a border around an image. Use when you need to overlay a border without resizing." }, { "slug": "IMGIX_BRI", "name": "Adjust Image Brightness", "description": "Tool to adjust image brightness. Use when you need to modify an image's brightness level (−100 to 100) by supplying your source domain and asset path." }, { "slug": "IMGIX_CANCEL_UPLOAD_SESSION", "name": "IMGIX_CANCEL_UPLOAD_SESSION", "description": "Tool to cancel an Imgix Asset Manager upload session. Use when you need to abort an in-progress or abandoned upload flow and clean up the session." }, { "slug": "IMGIX_CH", "name": "IMGIX_CH", "description": "Tool to opt in to Client Hints. Use when you want Imgix URLs to adapt based on browser headers (Width, DPR, Save-Data)." }, { "slug": "IMGIX_CLOSE_UPLOAD_SESSION", "name": "IMGIX_CLOSE_UPLOAD_SESSION", "description": "Tool to close an Imgix Asset Manager upload session after the client uploads to the presigned URL. Use after uploading a file to expedite asset processing. Closing is strongly recommended by imgix." }, { "slug": "IMGIX_CON", "name": "Adjust Image Contrast", "description": "Tool to adjust image contrast. Use when you need to modify an image's contrast level (−100 to 100)." }, { "slug": "IMGIX_CREATE_IMGIX_SOURCE", "name": "IMGIX_CREATE_IMGIX_SOURCE", "description": "Tool to create and deploy a new imgix Source. Use when you need to add a new image source with deployment configuration for S3, Web Folder, Web Proxy, GCS, Azure, or S3-compatible storage. Requires source name and deployment details with type-specific credentials and settings." }, { "slug": "IMGIX_CREATE_UPLOAD_SESSION", "name": "IMGIX_CREATE_UPLOAD_SESSION", "description": "Tool to create an Imgix Asset Manager upload session and return a presigned URL for client-side upload. Use when you need to upload a new image to a storage-backed imgix Source without requiring external hosting. Client performs HTTP PUT of file bytes to the presigned URL, then calls IMGIX_CLOSE_UPLOAD_SESSION to finalize." }, { "slug": "IMGIX_CS", "name": "IMGIX_CS", "description": "Tool to set or strip output color space/profile on an Imgix image. Use when optimizing compatibility and file size (e.g., cs=strip for smaller metadata)." }, { "slug": "IMGIX_DL", "name": "IMGIX_DL", "description": "Download an asset from an Imgix source with optional custom filename. Use this tool when you need to: - Download images or assets from an Imgix CDN source - Force a specific download filename (via 'dl' parameter) - Download assets with special character filenames (via 'dl64' parameter) The asset is fetched from the Imgix CDN and returned as a downloadable file reference. If neither 'dl' nor 'dl64' is specified, the original filename from the path is used." }, { "slug": "IMGIX_DPI", "name": "Adjust Image DPI", "description": "Tool to embed DPI (dots-per-inch) metadata for print output on an Imgix-rendered image. Use when preparing images for print to set accurate DPI. Supports JPEG and PNG only." }, { "slug": "IMGIX_DPR", "name": "Set Device Pixel Ratio", "description": "Tool to set device pixel ratio for an Imgix image. Use when rendering at specific display densities to ensure correct sharpness. Example: 'dpr=2&w=500&h=300' doubles resolution relative to dimensions." }, { "slug": "IMGIX_EXPIRES", "name": "Imgix URL Expiration", "description": "Tool to append an expiration parameter to an Imgix URL so it returns 404 after a given time. Use when you want the image URL to stop serving beyond a specific UNIX timestamp." }, { "slug": "IMGIX_FIT", "name": "IMGIX_FIT", "description": "Tool to control how an image fits target dimensions after resizing. Use when specifying width, height, and fit behavior." }, { "slug": "IMGIX_FM", "name": "IMGIX_FM", "description": "Tool to choose output file format for the rendered asset. Use after specifying the asset path when you need to convert its format." }, { "slug": "IMGIX_FORCE_ASPECT_RATIO", "name": "Force Aspect Ratio", "description": "Tool to force a target aspect ratio on an Imgix image. Use when a specific W:H frame is needed after choosing fit=crop or fit=fill. Example: 'ar=16:9&fit=crop&w=800' yields a 16:9, 800px-wide URL." }, { "slug": "IMGIX_GET_SOURCE", "name": "IMGIX_GET_SOURCE", "description": "Tool to retrieve details for a single imgix Source by its ID. Returns the source configuration including deployment status, type, and settings." }, { "slug": "IMGIX_GET_UPLOAD_SESSION_STATUS", "name": "IMGIX_GET_UPLOAD_SESSION_STATUS", "description": "Tool to retrieve the status of an Imgix Asset Manager upload session. Use when you need to check the current state (PENDING/CLOSED/COMPLETE/CANCELED) of an upload session for polling or verification after client PUT and/or after closing." }, { "slug": "IMGIX_H", "name": "IMGIX_H", "description": "Tool to set output image height in pixels or as a ratio of the source height. Use after constructing an Imgix URL to adjust only height." }, { "slug": "IMGIX_HIGH", "name": "Adjust Image Highlights", "description": "Tool to adjust highlight tonal mapping (−100 to 0). Use when preserving detail in bright areas of an image." }, { "slug": "IMGIX_LIST_ASSETS", "name": "IMGIX_LIST_ASSETS", "description": "Tool to retrieve a paginated list of assets in an imgix Source. Use when you need to list, filter, or search assets with cursor-based pagination and sorting." }, { "slug": "IMGIX_LIST_REPORTS", "name": "IMGIX_LIST_REPORTS", "description": "Tool to retrieve a list of all available reports for your imgix account. Use when you need to access analytics and usage information. Reports are generated daily and retained for 90 days." }, { "slug": "IMGIX_LIST_SOURCES", "name": "IMGIX_LIST_SOURCES", "description": "Tool to list all Sources for an account. Use when you need to retrieve and paginate through sources with optional sorting and filtering." }, { "slug": "IMGIX_MARK_BASE", "name": "Set Watermark Base URL", "description": "Tool to set the base URL prepended to the watermark image path. Use when you need to host watermark assets on a custom domain or CDN." }, { "slug": "IMGIX_MARK_FIT", "name": "Watermark Fit Mode", "description": "Tool to set how a watermark fits its target dimensions. Use when applying a watermark and you need control over fitting behavior (e.g., selecting 'scale'). For 'crop', ensure 'mark-w' and 'mark-h' are also provided." }, { "slug": "IMGIX_MARK_H", "name": "Imgix Mark Height", "description": "Tool to set watermark height on an Imgix URL in pixels or as a ratio of the watermark source. Use when adjusting overlay height while preserving aspect ratio." }, { "slug": "IMGIX_MARK_PAD", "name": "IMGIX_MARK_PAD", "description": "Tool to set pixel padding between a watermark and the image edge or between tiled watermarks. Use after configuring watermark URL and alignment to adjust spacing precisely." }, { "slug": "IMGIX_MARK_W", "name": "Watermark Width", "description": "Tool to set watermark width. Use when you need to enforce a watermark's width in pixels or as a proportion. Use after specifying watermark source." }, { "slug": "IMGIX_MASK", "name": "IMGIX_MASK", "description": "Tool to apply a mask to an image. Use when needing rounded corners, ellipse shapes, or image-based masks." }, { "slug": "IMGIX_MAX_H", "name": "IMGIX_MAX_H", "description": "Constrain the maximum height of an imgix image. This tool applies fit=crop along with the max-h parameter to ensure images do not exceed the specified height. Ideal for vertically-scrolling feeds or galleries where user-uploaded images may have unpredictable heights. Returns a downloadable image URL." }, { "slug": "IMGIX_MAX_W", "name": "IMGIX_MAX_W", "description": "Tool to set the maximum output width on an Imgix URL. Use when you need to cap width (works only with fit=crop). Call after specifying fit=crop on the URL." }, { "slug": "IMGIX_PALETTE", "name": "IMGIX_PALETTE", "description": "Tool to extract a color palette from an image in CSS or JSON form. Use when you need to analyze an image's dominant colors after any transformations." }, { "slug": "IMGIX_PREFIX", "name": "Set CSS Palette Prefix", "description": "Tool to set class-name prefix for CSS palette output. Use when customizing CSS selectors for color-palette styling." }, { "slug": "IMGIX_PURGE_IMGIX_ASSET", "name": "IMGIX_PURGE_ASSET", "description": "Tool to purge an asset from the imgix cache. Use when you need to invalidate cached versions of an image and force imgix to fetch a fresh version from origin on the next request." }, { "slug": "IMGIX_Q", "name": "Set Output Quality", "description": "Tool to set output quality for lossy formats. Use when adjusting image compression quality for lossy image delivery." }, { "slug": "IMGIX_RECT", "name": "IMGIX_RECT", "description": "Tool to select a source-image rectangle region in Imgix before other resizing. Use when you need to crop a specific region (x,y,w,h) of the source image." }, { "slug": "IMGIX_ROT", "name": "Imgix Rotate", "description": "Tool to rotate an image on Imgix. Use when you need to apply a counter-clockwise rotation (0–359°) with optional mode control." }, { "slug": "IMGIX_ROT_TYPE", "name": "IMGIX_ROT_TYPE", "description": "Tool to control rotation behavior when `rot` is applied. Use after applying a `rot` parameter to choose between pivot (show entire image) or straighten (zoom and crop) behavior." }, { "slug": "IMGIX_TXT", "name": "Text Overlay", "description": "Tool to render a single-line UTF-8 text overlay on an image. Use when you need simple text captions." }, { "slug": "IMGIX_TXT_ALIGN", "name": "IMGIX_TXT_ALIGN", "description": "Tool to align a text overlay on an Imgix image. Use when you need to position text by specifying vertical (top/middle/bottom) and horizontal (left/center/right) alignment." }, { "slug": "IMGIX_TXT_COLOR", "name": "Set Text Color", "description": "Tool to set text overlay color on an Imgix image. Use when customizing text overlays with CSS color keywords or hex codes." }, { "slug": "IMGIX_TXT_FONT", "name": "Set Text Font", "description": "Tool to choose font family/style for overlay text. Use when customizing text appearance after specifying content. Supports CSS font categories and optional bold/italic flags." }, { "slug": "IMGIX_TXT_LINE", "name": "Set Text Outline Width", "description": "Tool to set outline width around overlay text. Use when styling text overlays on images." }, { "slug": "IMGIX_TXT_LINE_COLOR", "name": "Text Outline Color", "description": "Apply an outline color to text overlays on Imgix images. The text outline must first be enabled using the txt-line parameter (outline width > 0). This action fetches and returns the rendered image with the specified outline color applied." }, { "slug": "IMGIX_TXT_SHAD", "name": "IMGIX_TXT_SHAD", "description": "Set text shadow strength for imgix text overlays. The txt-shad parameter controls the drop shadow intensity (0-10) applied to text rendered on images. Note: This parameter only has a visible effect when combined with text overlay parameters (e.g., txt parameter). Use this action to add depth and visibility to text overlays on images." }, { "slug": "IMGIX_TXT_SIZE", "name": "IMGIX_TXT_SIZE", "description": "Tool to set text font size in pixels. Use when overlaying text and needing precise control over font size. Specify after defining the text content; default is 12px." }, { "slug": "IMGIX_UPDATE_SOURCE", "name": "IMGIX_UPDATE_SOURCE", "description": "Tool to update an existing imgix Source. Use when you need to modify source name, deployment configuration, bucket settings, or other source attributes. Deployment changes trigger automatic redeployment." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "imgix_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Imgix API Key", "type": "string", "description": "The API key used for authenticating requests to the Imgix Management API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "incident_io", "name": "incident.io", "logo": "https://logos.composio.dev/api/incident_io", "description": "Incident management and response platform", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 86, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INCIDENT_IO_CREATE_ALERT_ATTRIBUTES_V2", "name": "Create Alert Attribute V2", "description": "Tool to create an alert attribute in incident.io. Use when you need to define structured data fields that can be parsed from alerts coming in via alert sources. Alert attributes allow you to extract and organize information from incoming alerts." }, { "slug": "INCIDENT_IO_CREATE_ALERT_ROUTES_V2", "name": "Create Alert Route V2", "description": "Tool to create an alert route in incident.io. Use when you need to configure how alerts should be processed, routed, and potentially converted into incidents based on conditions, grouping rules, and templates." }, { "slug": "INCIDENT_IO_CREATE_ALERT_SOURCES_V2", "name": "Create Alert Source V2", "description": "Tool to create a new alert source in incident.io. Use when you need to set up a new integration for receiving alerts from external systems via HTTP webhooks or manual entry." }, { "slug": "INCIDENT_IO_CREATE_CATALOG_ENTRIES_V3", "name": "Create Catalog Entry V3", "description": "Tool to create a catalog entry in incident.io using the V3 API. Use when you need to add a new entry to a catalog type with specific attribute values. Catalog entries represent items like teams, services, or custom resources in your incident management workflow." }, { "slug": "INCIDENT_IO_CREATE_CATALOG_TYPES_V3", "name": "Create Catalog Type V3", "description": "Tool to create a new catalog type in incident.io V3 API. Use when you need to define custom resource types for your organization's catalog, such as teams, services, or infrastructure components." }, { "slug": "INCIDENT_IO_CREATE_CUSTOM_FIELD_OPTIONS_V1", "name": "Create Custom Field Option", "description": "Tool to create a new custom field option in incident.io. Use when you need to add a new selectable value to an existing custom field." }, { "slug": "INCIDENT_IO_CREATE_CUSTOM_FIELDS_V2", "name": "Create Custom Field V2", "description": "Tool to create a custom field in incident.io using the V2 API. Use when you need to add a new custom field to track additional information during incidents." }, { "slug": "INCIDENT_IO_CREATE_ESCALATIONS_V2", "name": "Create Escalation V2", "description": "Tool to create an escalation in incident.io. Use when you need to page users to respond to alerts. You must specify either an escalation_path_id or direct targets (users/schedules)." }, { "slug": "INCIDENT_IO_CREATE_INCIDENT_ROLES_V2", "name": "Create Incident Role V2", "description": "Tool to create a new incident role in incident.io using the V2 API. Use when you need to define a new role type that can be assigned during incidents to organize responsibilities and ensure the right people are engaged during incident response." }, { "slug": "INCIDENT_IO_CREATE_INCIDENT_STATUS", "name": "Create Incident Status", "description": "Tool to create a new incident status in incident.io. Use when you need to add a custom status for categorizing incidents as 'live' (active), 'learning' (post-incident), or 'closed'." }, { "slug": "INCIDENT_IO_CREATE_INCIDENTS_V2", "name": "Create Incident V2", "description": "Tool to create a new incident in incident.io using the V2 API. Use when you need to report and track an operational issue or outage. Requires at minimum an idempotency_key and visibility setting. Optionally specify severity, incident type, custom fields, role assignments, and other attributes." }, { "slug": "INCIDENT_IO_CREATE_MANAGED_RESOURCES_V2", "name": "Create Managed Resource V2", "description": "Tool to create a managed resource in incident.io. Use when you need to mark a resource (schedule, escalation path, or workflow) as being managed by an external system like Terraform or a custom automation tool. This helps track which resources are controlled externally and should not be modified through the dashboard." }, { "slug": "INCIDENT_IO_CREATE_SEVERITIES_V1", "name": "Create Severity", "description": "Tool to create a new severity level in incident.io. Use when you need to define a new severity classification for incidents with a specific rank and description." }, { "slug": "INCIDENT_IO_DELETE_ALERT_ATTRIBUTES_V2", "name": "Delete Alert Attribute V2", "description": "Tool to delete an alert attribute from incident.io. Use when you need to remove an alert attribute that is no longer needed or was created in error." }, { "slug": "INCIDENT_IO_DELETE_ALERT_ROUTES_V2", "name": "Delete Alert Route V2", "description": "Tool to delete an alert route from incident.io. Use when you need to remove an alert route configuration that is no longer needed or was created in error." }, { "slug": "INCIDENT_IO_DELETE_ALERT_SOURCES_V2", "name": "Delete Alert Source V2", "description": "Tool to delete an alert source from incident.io. Use when you need to remove an alert source that is no longer needed or was created in error." }, { "slug": "INCIDENT_IO_DELETE_CATALOG_ENTRIES_V3", "name": "Delete Catalog Entry V3", "description": "Tool to archive a catalog entry from incident.io using V3 API. Use when you need to remove a catalog entry that is no longer needed. This operation archives the entry from the catalog." }, { "slug": "INCIDENT_IO_DELETE_CATALOG_TYPES_V3", "name": "Delete Catalog Type V3", "description": "Tool to archive a catalog type and all its entries from incident.io. Use when you need to remove a catalog type that is no longer needed." }, { "slug": "INCIDENT_IO_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field from incident.io. Use when you need to remove a custom field definition. The deletion is permanent and cannot be undone." }, { "slug": "INCIDENT_IO_DELETE_CUSTOM_FIELD_OPTIONS_V1", "name": "Delete Custom Field Option", "description": "Tool to delete a custom field option in incident.io. Use when you need to permanently remove a custom field option by its ID." }, { "slug": "INCIDENT_IO_DELETE_CUSTOM_FIELDS_V2", "name": "Delete Custom Field V2", "description": "Tool to delete a custom field from incident.io using the V2 API. Use when you need to permanently remove a custom field definition by its ID." }, { "slug": "INCIDENT_IO_DELETE_ESCALATION_PATHS_V2", "name": "Delete Escalation Path V2", "description": "Tool to delete an escalation path from incident.io. Use when you need to remove an escalation path that is no longer needed or was created in error." }, { "slug": "INCIDENT_IO_DELETE_INCIDENT_ROLES_V2", "name": "Delete Incident Role V2", "description": "Tool to delete an incident role by ID. Use when you need to permanently remove an incident role from incident.io." }, { "slug": "INCIDENT_IO_DELETE_INCIDENT_STATUS_V1", "name": "Delete Incident Status V1", "description": "Tool to delete an incident status by its ID. Use when you need to remove an incident status from the system." }, { "slug": "INCIDENT_IO_DELETE_SCHEDULES_V2", "name": "Delete Schedule V2", "description": "Tool to delete a schedule from incident.io. Use when you need to remove a schedule that is no longer needed or was created in error." }, { "slug": "INCIDENT_IO_DELETE_SEVERITY", "name": "Delete Severity", "description": "Tool to delete a severity in incident.io. Use when you need to permanently remove a severity level from your incident management configuration." }, { "slug": "INCIDENT_IO_DELETE_WORKFLOWS_V2", "name": "Delete Workflow V2", "description": "Tool to delete a workflow from incident.io using the V2 API. Use when you need to permanently remove a workflow definition by its ID." }, { "slug": "INCIDENT_IO_EDIT_INCIDENTS_V2", "name": "Edit Incident V2", "description": "Tool to edit an existing incident in incident.io. Use when you need to update incident details like name, summary, severity, status, custom fields, or role assignments." }, { "slug": "INCIDENT_IO_GET_ALERT_ATTRIBUTES_V2", "name": "Show Alert Attribute V2", "description": "Tool to retrieve a specific alert attribute by its ID from incident.io. Use when you need to get details about an alert attribute such as its type, whether it's required, or if it accepts arrays." }, { "slug": "INCIDENT_IO_GET_ALERT_ROUTES_V2", "name": "Show Alert Routes V2", "description": "Tool to retrieve a specific alert route configuration by its ID from incident.io. Use when you need to view the details of an alert route, including its conditions, escalation bindings, and incident template." }, { "slug": "INCIDENT_IO_GET_ALERT_SOURCES_V2", "name": "Show Alert Source V2", "description": "Tool to retrieve a specific alert source by its ID from incident.io. Use when you need to get details about an alert source configuration including its template and HTTP options." }, { "slug": "INCIDENT_IO_GET_CATALOG_ENTRY_V3", "name": "Get Catalog Entry V3", "description": "Tool to retrieve a specific catalog entry by ID from incident.io. Use when you need to get details about a catalog entry including its attributes and values." }, { "slug": "INCIDENT_IO_GET_CATALOG_TYPES_V3", "name": "Get Catalog Type V3", "description": "Tool to retrieve a specific catalog type by ID from incident.io V3 API. Use when you need to get details about a catalog type's configuration, schema, or metadata." }, { "slug": "INCIDENT_IO_GET_CUSTOM_FIELD_OPTIONS_V1", "name": "Get Custom Field Option", "description": "Tool to retrieve a specific custom field option by its ID. Use when you need details about a custom field option in incident.io." }, { "slug": "INCIDENT_IO_GET_CUSTOM_FIELD_V1", "name": "Get Custom Field V1", "description": "Tool to retrieve details of a specific custom field by ID in incident.io. Use when you need information about a custom field's configuration, options, or metadata." }, { "slug": "INCIDENT_IO_GET_CUSTOM_FIELD_V2", "name": "Get Custom Field V2", "description": "Tool to retrieve details of a specific custom field by ID using the V2 API in incident.io. Use when you need information about a custom field's configuration or metadata from the V2 endpoint." }, { "slug": "INCIDENT_IO_GET_ESCALATIONS_V2", "name": "Show Escalations V2", "description": "Tool to retrieve a specific escalation by ID from incident.io. Use when you need detailed information about an escalation including its status, priority, creator, events, and related incidents/alerts." }, { "slug": "INCIDENT_IO_GET_INCIDENT_ROLES_V2", "name": "Get Incident Role V2", "description": "Tool to retrieve a specific incident role by ID using V2 API. Use when you need to get details about a specific incident role." }, { "slug": "INCIDENT_IO_GET_INCIDENT_STATUS", "name": "Get Incident Status", "description": "Tool to retrieve details of a specific incident status by ID. Use when you need to get information about a particular incident status configuration." }, { "slug": "INCIDENT_IO_GET_INCIDENT_TIMESTAMPS_V2", "name": "Get Incident Timestamp V2", "description": "Tool to retrieve a specific incident timestamp by ID using V2 API. Use when you need to get details about a specific incident timestamp configuration." }, { "slug": "INCIDENT_IO_GET_INCIDENT_TYPE", "name": "Get Incident Type", "description": "Tool to retrieve detailed information about a specific incident type by ID. Use when you need to view configuration details, settings, or properties of a particular incident type." }, { "slug": "INCIDENT_IO_GET_INCIDENT_V2", "name": "Get Incident by ID (V2)", "description": "Tool to retrieve a specific incident by ID using V2 API. Use when you need detailed information about an incident including duration metrics, timestamps, and workload data." }, { "slug": "INCIDENT_IO_GET_SCHEDULES_V2", "name": "Show Schedules V2", "description": "Tool to retrieve a specific schedule by ID from incident.io using V2 API. Use when you need to view details about an on-call schedule, including rotations, shifts, and configuration." }, { "slug": "INCIDENT_IO_GET_SEVERITIES_V1", "name": "Get Severity V1", "description": "Tool to retrieve a specific severity by ID from incident.io. Use when you need to fetch details about a particular severity level." }, { "slug": "INCIDENT_IO_GET_USERS_V2", "name": "Get User V2", "description": "Tool to retrieve a specific user by ID from incident.io using V2 API. Use when you need to get detailed information about a user including their role assignments." }, { "slug": "INCIDENT_IO_GET_WORKFLOWS_V2", "name": "Get Workflow V2", "description": "Tool to retrieve a specific workflow by ID from incident.io. Use when you need to get details about a workflow's configuration, steps, conditions, and triggers." }, { "slug": "INCIDENT_IO_LIST_ACTIONS_V1", "name": "List Actions V1", "description": "Tool to list actions from incidents. Use when you need to retrieve actions associated with incidents, filter by follow-up status, or get actions for a specific incident. By default returns actions from 'real' incidents only." }, { "slug": "INCIDENT_IO_LIST_ACTIONS_V2", "name": "List Actions V2", "description": "Tool to retrieve a list of actions from incident.io. Use when you need to view existing actions, optionally filtered by incident ID or incident mode." }, { "slug": "INCIDENT_IO_LIST_ALERT_ATTRIBUTES_V2", "name": "List Alert Attributes V2", "description": "Tool to list all available alert attributes. Use when you need to retrieve the schema of attributes that can be used with alerts." }, { "slug": "INCIDENT_IO_LIST_ALERT_ROUTES_V2", "name": "List Alert Routes V2", "description": "Tool to list alert routes from incident.io. Use when you need to retrieve configured alert routes with pagination support." }, { "slug": "INCIDENT_IO_LIST_ALERT_SOURCES_V2", "name": "List Alert Sources V2", "description": "Tool to list all configured alert sources in incident.io. Use when you need to retrieve alert sources that send alerts to incident.io for routing." }, { "slug": "INCIDENT_IO_LIST_ALERTS_V2", "name": "List Alerts V2", "description": "Tool to list alerts from incident.io. Use when you need to retrieve alerts for the organisation with pagination support." }, { "slug": "INCIDENT_IO_LIST_CATALOG_ENTRIES_V3", "name": "List Catalog Entries V3", "description": "Tool to list entries from a catalog type in incident.io. Use when you need to retrieve catalog entries for a specific catalog type with pagination and filtering support." }, { "slug": "INCIDENT_IO_LIST_CATALOG_RESOURCES_V3", "name": "List Catalog Resources V3", "description": "Tool to retrieve all available catalog resource types from the V3 API. Use when you need to list the types of data that can be held within the catalog or see what attribute types are available for updating catalog type schemas." }, { "slug": "INCIDENT_IO_LIST_CATALOG_TYPES_V3", "name": "List Catalog Types V3", "description": "Tool to retrieve all catalog types configured for an organization using V3 API. Use when you need to list available catalog types or understand the catalog schema structure. This includes both synced types backed by external resources and custom catalog types." }, { "slug": "INCIDENT_IO_LIST_ESCALATION_PATHS_V2", "name": "List Escalation Paths V2", "description": "Tool to list escalation paths from incident.io. Use when you need to retrieve configured escalation paths with pagination support." }, { "slug": "INCIDENT_IO_LIST_ESCALATIONS_V2", "name": "List Escalations V2", "description": "Tool to list escalations from incident.io. Use when you need to retrieve escalations for the organisation with pagination support." }, { "slug": "INCIDENT_IO_LIST_FOLLOW_UPS_V2", "name": "List Follow-ups V2", "description": "Tool to retrieve a list of follow-ups from incident.io. Use when you need to view existing follow-ups, optionally filtered by incident ID or incident mode." }, { "slug": "INCIDENT_IO_LIST_IDENTITY_V1", "name": "Get API Key Identity", "description": "Tool to retrieve identity information for the current API key. Use to check which organization and roles are associated with the API key." }, { "slug": "INCIDENT_IO_LIST_INCIDENT_ALERTS_V2", "name": "List Incident Alerts V2", "description": "Tool to list incident alerts from incident.io. Use when you need to retrieve connections between incidents and alerts with optional filtering by incident_id or alert_id." }, { "slug": "INCIDENT_IO_LIST_INCIDENT_ATTACHMENTS_V1", "name": "List Incident Attachments V1", "description": "Tool to list incident attachments from incident.io. Use when you need to retrieve external resources linked to incidents, such as PagerDuty incidents, Jira issues, or GitHub pull requests. Filter by incident ID, external resource ID, or resource type to narrow results." }, { "slug": "INCIDENT_IO_LIST_INCIDENT_RELATIONSHIPS_V1", "name": "List Incident Relationships V1", "description": "Tool to list incident relationships for a given incident. Use when you need to retrieve relationships between incidents such as blocking dependencies, causal links, or general associations." }, { "slug": "INCIDENT_IO_LIST_INCIDENT_ROLES_V2", "name": "List Incident Roles V2", "description": "Tool to list all incident roles for an organization using V2 API. Use when you need to retrieve available incident roles and their configurations." }, { "slug": "INCIDENT_IO_LIST_INCIDENTS_V2", "name": "List Incidents V2", "description": "Tool to list incidents from incident.io using the V2 API. Use when you need to retrieve incidents with advanced filtering by status, severity, type, timestamps, and pagination support." }, { "slug": "INCIDENT_IO_LIST_INCIDENT_UPDATES_V2", "name": "List Incident Updates V2", "description": "Tool to list incident updates from incident.io. Use when you need to retrieve updates for incidents with optional filtering by incident ID and pagination support." }, { "slug": "INCIDENT_IO_LIST_IP_ALLOWLISTS", "name": "List IP allowlists", "description": "Tool to retrieve the current IP allowlist configuration for incident.io. Use when you need to check which IP addresses are allowed to access the incident.io API." }, { "slug": "INCIDENT_IO_LIST_SCHEDULE_ENTRIES_V2", "name": "List Schedule Entries V2", "description": "Tool to list schedule entries for a specific schedule in incident.io. Use when you need to retrieve on-call schedule entries for a given time window." }, { "slug": "INCIDENT_IO_LIST_SCHEDULES_V2", "name": "List Schedules V2", "description": "Tool to list schedules from incident.io. Use when you need to retrieve on-call schedules with pagination support." }, { "slug": "INCIDENT_IO_LIST_STATUS_PAGES_V2", "name": "List Status Pages V2", "description": "Tool to list status pages from incident.io. Use when you need to retrieve public or customer status pages with pagination support." }, { "slug": "INCIDENT_IO_LIST_USERS_V2", "name": "List Users V2", "description": "Tool to list users in incident.io. Use when you need to retrieve users with their role information, filter by email or Slack user ID, with pagination support." }, { "slug": "INCIDENT_IO_LIST_WORKFLOWS_V2", "name": "List Workflows V2", "description": "Tool to list workflows from incident.io. Use when you need to retrieve configured workflows with pagination support." }, { "slug": "INCIDENT_IO_UPDATE_ALERT_ATTRIBUTES_V2", "name": "Update Alert Attribute V2", "description": "Tool to update an alert attribute in incident.io. Use when you need to modify the configuration of an existing alert attribute such as changing its name, type, or whether it's required or an array." }, { "slug": "INCIDENT_IO_UPDATE_ALERT_SOURCES_V2", "name": "Update Alert Source V2", "description": "Tool to update an existing alert source configuration in incident.io. Use when you need to modify alert source properties such as name or template configuration including title, description, expressions, and attributes." }, { "slug": "INCIDENT_IO_UPDATE_CATALOG_ENTRIES_BULK_V3", "name": "Bulk Update Catalog Entries V3", "description": "Tool to bulk update catalog entries in incident.io v3 API. Use when you need to create or update multiple catalog entries at once for a specific catalog type. This is more efficient than updating entries individually. The API returns 204 No Content on success." }, { "slug": "INCIDENT_IO_UPDATE_CATALOG_ENTRIES_V3", "name": "Update Catalog Entry V3", "description": "Tool to update an existing catalog entry in incident.io using the v3 API. Use when you need to modify catalog entry properties such as name, attributes, aliases, or ranking. Note: All attribute values must be provided - any not specified will be cleared." }, { "slug": "INCIDENT_IO_UPDATE_CATALOG_TYPES_V3", "name": "Update Catalog Type V3", "description": "Tool to update a catalog type in incident.io V3 API. Use when you need to modify the configuration of an existing catalog type such as its name, description, annotations, or other properties." }, { "slug": "INCIDENT_IO_UPDATE_CUSTOM_FIELD_OPTION_V1", "name": "Update Custom Field Option V1", "description": "Tool to update a custom field option in incident.io. Use when you need to modify the value, sort order, or parent custom field of an existing option." }, { "slug": "INCIDENT_IO_UPDATE_CUSTOM_FIELDS_V1", "name": "Update Custom Fields V1", "description": "Tool to update an existing custom field configuration in incident.io. Use when you need to modify custom field properties such as name, description, visibility settings, or requirement rules." }, { "slug": "INCIDENT_IO_UPDATE_CUSTOM_FIELDS_V2", "name": "Update Custom Field V2", "description": "Tool to update an existing custom field in incident.io using the V2 API. Use when you need to modify the name or description of a custom field." }, { "slug": "INCIDENT_IO_UPDATE_ESCALATION_PATHS_V2", "name": "Update Escalation Path V2", "description": "Tool to update an escalation path in incident.io. Use when you need to modify the configuration of an existing escalation path, including its name, escalation levels, targets, conditions, or working hours." }, { "slug": "INCIDENT_IO_UPDATE_INCIDENT_ROLES_V2", "name": "Update Incident Role V2", "description": "Tool to update an existing incident role in incident.io using the V2 API. Use when you need to modify the name, description, instructions, or shortform of an incident role." }, { "slug": "INCIDENT_IO_UPDATE_INCIDENT_STATUS", "name": "Update Incident Status", "description": "Tool to update an existing incident status in incident.io. Use when you need to modify the name or description of an incident status. Note that only live and learning statuses can be fully configured." }, { "slug": "INCIDENT_IO_UPDATE_SCHEDULES_V2", "name": "Update Schedule V2", "description": "Tool to update an existing schedule in incident.io. Use when you need to modify schedule properties such as name, timezone, rotations, layers, or holiday configurations." }, { "slug": "INCIDENT_IO_UPDATE_SCHEMA_CATALOG_TYPES_V3", "name": "Update Catalog Type Schema V3", "description": "Tool to update the schema of a catalog type in incident.io V3 API. Use when you need to add, modify, or remove attributes from a catalog type's schema. The version parameter must match the current schema version." }, { "slug": "INCIDENT_IO_UPDATE_SEVERITIES_V1", "name": "Update Severity", "description": "Tool to update a severity in incident.io. Use when you need to modify the name, description, or rank of an existing severity level." }, { "slug": "INCIDENT_IO_UPDATE_WORKFLOWS_V2", "name": "Update Workflow V2", "description": "Tool to update an existing workflow in incident.io using the V2 API. Use when you need to modify workflow configuration including name, conditions, steps, expressions, and execution settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "incident_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate at https://app.incident.io/settings/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "influxdb_cloud", "name": "InfluxDB Cloud", "logo": "https://www.influxdata.com/wp-content/uploads/influxdata-logo.png", "description": "InfluxDB Cloud is a fully managed, scalable, and secure time series database service designed for real-time analytics and monitoring.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INFLUXDB_CLOUD_ADD_DASHBOARD_CELL", "name": "Add Dashboard Cell", "description": "Tool to add a cell to a dashboard. Use when you want to add or copy a cell to an existing dashboard after verifying the dashboard exists." }, { "slug": "INFLUXDB_CLOUD_DELETE_USER", "name": "Delete User", "description": "Delete a user from InfluxDB Cloud by their user ID. This action permanently removes a user from the InfluxDB Cloud organization. Requires an operator token with write:users permission to execute successfully. Use this when you need to remove a user's access to the InfluxDB Cloud organization." }, { "slug": "INFLUXDB_CLOUD_GENERATE_QUERY_AST", "name": "Generate Flux Query AST", "description": "Generates an Abstract Syntax Tree (AST) from a Flux query script. Use this tool to analyze the structure of a Flux query and validate its syntax. The AST shows the parsed structure but does not validate semantic correctness (e.g., whether buckets or fields exist)." }, { "slug": "INFLUXDB_CLOUD_GET_DBRP", "name": "Get DBRP Mapping", "description": "Retrieve a Database and Retention Policy (DBRP) mapping by ID from InfluxDB Cloud. DBRP mappings enable InfluxDB 1.x query compatibility by mapping old database/retention policy names to InfluxDB 2.x buckets. Use this action to: - Verify which bucket a 1.x database/retention policy maps to - Check if a mapping is the default for its database - Inspect mapping configuration before updating or querying data with 1.x APIs Prerequisites: You must have a valid DBRP mapping ID (obtain via listing DBRP mappings or from previous create operations)." }, { "slug": "INFLUXDB_CLOUD_LIST_ROUTES", "name": "List Routes", "description": "Lists all available InfluxDB v2 API endpoints and routes. This action queries the root API endpoint (GET /api/v2) to retrieve a comprehensive map of all available API resources and their corresponding URLs. Use this to discover what endpoints are available in your InfluxDB Cloud instance, including resources for data management (buckets, write, delete, query), user management (users, orgs, authorizations), monitoring (checks, tasks, dashboards), and configuration (labels, variables, Telegraf). The response includes both simple route strings (e.g., \"/api/v2/buckets\") and nested route objects (e.g., query routes with analyze, ast, suggestions endpoints). Authentication: Requires a valid authorization token in the metadata headers." }, { "slug": "INFLUXDB_CLOUD_SIGNIN", "name": "Sign In", "description": "Authenticates a user with username and password to create a session with InfluxDB Cloud. Returns a session cookie that can be used for subsequent API requests instead of token-based authentication. Use this when you need to authenticate with user credentials rather than API tokens, or when establishing a user session for operations that require session-based authentication." }, { "slug": "INFLUXDB_CLOUD_SIGNOUT", "name": "Sign Out", "description": "Tool to expire a user session using a session cookie. Use when ending an authenticated session after signin." }, { "slug": "INFLUXDB_CLOUD_UPDATE_DBRP", "name": "Update DBRP", "description": "Tool to update a DBRP mapping's default and retention policy. Use when modifying an existing DBRP mapping after initial creation." }, { "slug": "INFLUXDB_CLOUD_WRITE_DATA", "name": "Write Line Protocol Data", "description": "Writes time-series data in line protocol format to an InfluxDB Cloud bucket. Use this tool to ingest metrics, sensor data, or any time-series measurements into InfluxDB. The data must be formatted according to InfluxDB line protocol specification." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "influxdb_cloud_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Cluster ID", "type": "string", "description": "The unique identifier for your InfluxDB Cloud cluster (e.g., us-east-1-1).", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "InfluxDB API Token", "type": "string", "description": "The API token used for authenticating requests to the InfluxDB Cloud API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "infobip", "name": "Infobip", "logo": "https://logos.composio.dev/api/infobip", "description": "Infobip is a global cloud communications platform that enables businesses to send messages via SMS, email, voice, WhatsApp, and other channels.", "category": "communication", "authSchemes": [ "API_KEY", "BASIC", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "infobip_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "message:send,inbound-message:read,email:manage,sms:manage,calls:manage,whatsapp:manage" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your unique Infobip base URL (e.g., xxxxx.api.infobip.com). Find it after logging into portal.infobip.com", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "infobip_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your unique Infobip base URL (e.g., xxxxx.api.infobip.com). Find it after logging into portal.infobip.com", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your Infobip account username or email address.", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Infobip account password.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "infobip_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your unique Infobip base URL (e.g., xxxxx.api.infobip.com). Find it after logging into portal.infobip.com", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Infobip API Key. Find it at portal.infobip.com/settings/accounts/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "insightly", "name": "Insightly", "logo": "https://logos.composio.dev/api/insightly", "description": "CRM Software CRM Platform Marketing Automation", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "insightly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Pod", "type": "string", "description": "Your Insightly pod identifier (e.g., na1, eu1, au1). Find this in User Settings > API Key and URL section.", "required": true, "default": "na1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Insightly API key from User Settings > API Key and URL section", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "insighto_ai", "name": "Insighto.ai", "logo": "https://logos.composio.dev/api/insighto_ai", "description": "Insighto.ai is an AI-powered communication platform that enables businesses to create and deploy conversational AI chatbots and voice agents for enhanced customer engagement across multiple channels.", "category": "ai chatbots", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 65, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INSIGHTO_AI_ADD_INTENT_TO_ASSISTANT", "name": "Add Intent To Assistant", "description": "Tool to add an intent to an assistant in Insighto.ai. Use when linking existing intents to an assistant for enhanced conversation handling." }, { "slug": "INSIGHTO_AI_CREATE_AGENCY", "name": "Create Agency", "description": "Tool to create a new agency in Insighto.ai. Use when setting up a new agency with organization-specific configuration and branding." }, { "slug": "INSIGHTO_AI_CREATE_CONTACT_CUSTOM_FIELD", "name": "Create Contact Custom Field", "description": "Tool to create a new contact custom field in Insighto.ai. Use when you need to add custom metadata fields for contacts." }, { "slug": "INSIGHTO_AI_CREATE_FORM", "name": "Create Form", "description": "Tool to create a new form in Insighto.ai. Use when you need to create either a natural (conversational AI-driven) or simple (traditional) form for collecting information from users." }, { "slug": "INSIGHTO_AI_CREATE_INTENT", "name": "Create Intent", "description": "Tool to create a new intent in Insighto.ai. Use when adding custom intents before training or deployment. Call after confirming intent attributes." }, { "slug": "INSIGHTO_AI_CREATE_PROMPT", "name": "Create Prompt", "description": "Tool to create a new prompt in Insighto.ai. Use when adding custom prompts for AI interactions. The prompt template can include variables in {{variable_name}} format." }, { "slug": "INSIGHTO_AI_CREATE_PROVIDER", "name": "Create Provider", "description": "Creates a new AI provider configuration (e.g., OpenAI, ElevenLabs, Azure Speech, Cartesia, PlayHT) for use in voice and text-to-speech workflows. The provider stores credentials and settings in the attributes field." }, { "slug": "INSIGHTO_AI_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in Insighto.ai. Use when categorizing contacts, conversations, or other entities with custom labels." }, { "slug": "INSIGHTO_AI_CREATE_TOOLFUNCTION", "name": "Create Toolfunction", "description": "Tool to create a new toolfunction in Insighto.ai. Use when you need to register a new tool function (SDK, CURL, or query index type) before using it in workflows or assistant operations." }, { "slug": "INSIGHTO_AI_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new outbound webhook in Insighto.ai. Use when you need to configure webhook endpoints for event notifications." }, { "slug": "INSIGHTO_AI_CREATE_WIDGET", "name": "Create Widget", "description": "Tool to create a new widget with specified attributes. Use after confirming assistant_id and widget_type." }, { "slug": "INSIGHTO_AI_DELETE_ASSISTANT_BY_ID", "name": "Delete Assistant By ID", "description": "Tool to delete an assistant by its ID. Use when you need to permanently remove an assistant from the system." }, { "slug": "INSIGHTO_AI_DELETE_BULK_FORMS_BY_IDS", "name": "Delete Bulk Forms By IDs", "description": "Tool to delete multiple forms by their IDs in a single operation. Use when you need to remove multiple forms at once." }, { "slug": "INSIGHTO_AI_DELETE_CONTACTS_IN_BULK", "name": "Delete Contacts In Bulk", "description": "Tool to delete multiple contacts in bulk. Use when you need to remove several contacts at once by providing their UUIDs." }, { "slug": "INSIGHTO_AI_DELETE_FORM_BY_ID", "name": "Delete Form By ID", "description": "Tool to delete a form by its unique identifier. Use when you need to permanently remove a form from the system." }, { "slug": "INSIGHTO_AI_DELETE_LINKED_ASSISTANT_DATASOURCE", "name": "Delete Linked Assistant Datasource", "description": "Tool to delete (unlink) a datasource from a linked assistant in Insighto.ai. Use when you need to remove a specific datasource from an assistant's knowledge base. Requires valid datasource_id and assistant_id." }, { "slug": "INSIGHTO_AI_DELETE_LINK_TAG_ENTITY_BY_ID", "name": "Delete Link Tag Entity By ID", "description": "Tool to delete a link_tag_entity by its ID. Use when you need to remove a specific link_tag_entity from the system." }, { "slug": "INSIGHTO_AI_DELETE_PROMPT_BY_ID", "name": "Delete Prompt By ID", "description": "Tool to delete a prompt by its unique ID. Use when you need to remove a prompt from the system." }, { "slug": "INSIGHTO_AI_DELETE_PROVIDER_BY_ID", "name": "Delete Provider By ID", "description": "Tool to delete an AI provider configuration by its unique identifier. Use when you need to permanently remove a provider from the system." }, { "slug": "INSIGHTO_AI_DELETE_TAG_BY_ID", "name": "Delete Tag By ID", "description": "Tool to delete a tag by its unique identifier. Use when you need to permanently remove a tag from the system." }, { "slug": "INSIGHTO_AI_DELETE_TOOL_BY_ID", "name": "Delete Tool By ID", "description": "Tool to delete a tool by its ID. Use when you need to remove a tool from the system." }, { "slug": "INSIGHTO_AI_DELETE_TOOLFUNCTION_BY_ID", "name": "Delete Toolfunction By ID", "description": "Tool to delete a toolfunction by its ID. Use when you need to remove a toolfunction from the system." }, { "slug": "INSIGHTO_AI_DELETE_TWILIO_AUTH_BY_ID", "name": "Delete Twilio Auth By ID", "description": "Tool to delete a Twilio authentication configuration by its ID. Use when you need to remove a Twilio auth integration from the system." }, { "slug": "INSIGHTO_AI_DELETE_USERWHATSAPP_BY_ID", "name": "Delete UserWhatsApp By ID", "description": "Tool to delete a UserWhatsApp by its ID. Use when you need to remove a specific UserWhatsApp connection." }, { "slug": "INSIGHTO_AI_DELETE_WIDGET_BY_ID", "name": "Delete Widget By ID", "description": "Tool to delete a widget by its unique ID. Use when you need to permanently remove a widget from the system." }, { "slug": "INSIGHTO_AI_GET_AGENCY_BILLING_PLAN", "name": "Get Agency Billing Plan", "description": "Tool to retrieve details of a specific agency billing plan by ID. Use when you need to view billing plan information including limits for bots, queries, words, voice seconds, and support options." }, { "slug": "INSIGHTO_AI_GET_AGENCY_BRANDING_BY_ID", "name": "Get Agency Branding By ID", "description": "Tool to retrieve branding configuration for a specific agency by agency ID. Use when you have a valid agency ID and need its branding settings." }, { "slug": "INSIGHTO_AI_GET_AGENT_LIST", "name": "Get Agent List", "description": "Tool to fetch a paginated list of agents. Use when you need to retrieve user/agent information with pagination support." }, { "slug": "INSIGHTO_AI_GET_ASSISTANT_BY_ID", "name": "Get Assistant By ID", "description": "Tool to retrieve details of a specific assistant by assistant ID. Use when you have a valid assistant ID and need the full assistant profile." }, { "slug": "INSIGHTO_AI_GET_CAPTURED_FORM_BY_FORM_ID", "name": "Get Captured Form By Form ID", "description": "Tool to retrieve captured form submissions by form ID. Use when you have a valid form ID and need to fetch all submissions for that specific form with pagination support." }, { "slug": "INSIGHTO_AI_GET_CONTACT_BY_ID", "name": "Get Contact By ID", "description": "Tool to retrieve details of a specific contact by contact ID. Use when you have a valid contact ID and need the full contact profile." }, { "slug": "INSIGHTO_AI_GET_DATASOURCE_BY_ID", "name": "Get Datasource By ID", "description": "Tool to retrieve details of a specific datasource by datasource ID. Use when you have a valid datasource ID and need the full datasource details." }, { "slug": "INSIGHTO_AI_GET_INTENT_BY_ID", "name": "Get Intent By ID", "description": "Tool to retrieve details of a specific intent by its ID. Use when you have a valid intent ID and need the full intent details." }, { "slug": "INSIGHTO_AI_GET_LIST_OF_CONTACTS", "name": "Get List Of Contacts", "description": "Tool to fetch a paginated list of contacts. Use after confirming a valid API key to iterate through pages of contacts." }, { "slug": "INSIGHTO_AI_GET_LIST_OF_CONVERSATIONS", "name": "Get List Of Conversations", "description": "Tool to fetch a list of conversations. Use after specifying date range and filters to retrieve conversation metadata." }, { "slug": "INSIGHTO_AI_GET_LIST_OF_DATASOURCES", "name": "Get List Of Datasources", "description": "Retrieves a paginated list of data sources from Insighto AI. Data sources contain the knowledge base content (text, files, URLs) used by AI assistants. Use this to discover available data sources, get their IDs for further operations, or check if specific data sources exist. Requires admin or manager role." }, { "slug": "INSIGHTO_AI_GET_LIST_OF_DATA_SOURCES_LINKED_TO_ASSISTANT_ID", "name": "Get List Of Data Sources Linked To Assistant Id", "description": "Tool to retrieve a paginated list of data sources linked to a specific assistant. Use when you need to discover which data sources are associated with an assistant ID. Requires admin or manager role." }, { "slug": "INSIGHTO_AI_GET_LIST_OF_WIDGETS_LINKED_TO_ASSISTANT_ID", "name": "Get List Of Widgets Linked To Assistant Id", "description": "Tool to fetch a paginated list of widgets linked to a specific assistant. Use when you need to discover which widgets are associated with an assistant ID." }, { "slug": "INSIGHTO_AI_GET_PRICING_FOR_USER", "name": "Get Pricing For User", "description": "Tool to retrieve pricing information for Insighto.ai services. Use when you need to calculate costs for LLM, voice, or transcription services." }, { "slug": "INSIGHTO_AI_GET_PROMPT_BY_ID", "name": "Get Prompt By ID", "description": "Tool to retrieve details of a specific prompt by prompt ID. Use when you have a valid prompt ID and need the full prompt details." }, { "slug": "INSIGHTO_AI_GET_PROVIDER_BY_ID", "name": "Get Provider By ID", "description": "Tool to retrieve details of a specific provider by provider ID. Use when you have a valid provider ID and need the full provider configuration." }, { "slug": "INSIGHTO_AI_GET_SPEECHTOTEXT_LIST", "name": "Get Speechtotext List", "description": "Tool to fetch a paginated list of available speech-to-text voice configurations. Use when you need to retrieve available languages and providers for voice-to-text conversion." }, { "slug": "INSIGHTO_AI_GET_WIDGET_BY_ID", "name": "Get Widget By ID", "description": "Tool to retrieve details of a specific widget by widget ID. Use when you have a valid widget ID and need the widget configuration." }, { "slug": "INSIGHTO_AI_LIST_CHANNELS", "name": "List Channels", "description": "Tool to retrieve a paginated list of channels. Use after authenticating to fetch all available channels and their configurations." }, { "slug": "INSIGHTO_AI_READ_CAMPAIGN_CONTACT_LIST", "name": "Read Campaign Contact List", "description": "Tool to retrieve a paginated list of contacts associated with a specific campaign. Use when you need to fetch all contacts enrolled in a campaign." }, { "slug": "INSIGHTO_AI_READ_CONTACT_CUSTOM_FIELD_LIST", "name": "Read Contact Custom Field List", "description": "Tool to retrieve a list of custom fields associated with contacts. Use when you need to inspect or sync contact metadata definitions." }, { "slug": "INSIGHTO_AI_READ_CONTACT_SYNC_LOG_LIST", "name": "Read Contact Sync Log List", "description": "Tool to retrieve a paginated list of contact sync logs. Use when you need to inspect sync history, troubleshoot sync issues, or audit contact synchronization operations." }, { "slug": "INSIGHTO_AI_READ_INTENTS_LIST", "name": "Read Intents List", "description": "Tool to retrieve a list of all intents. Use after authenticating; supports pagination." }, { "slug": "INSIGHTO_AI_READ_TAG_LIST", "name": "Read Tag List", "description": "Tool to retrieve a paginated list of tags. Use after authenticating to fetch and browse through all available tags." }, { "slug": "INSIGHTO_AI_READ_TOOL_FUNCTION_INVOKE_LOG_LIST", "name": "Read Tool Function Invoke Log List", "description": "Tool to retrieve a paginated list of tool function invoke logs. Use when you need to inspect function invocation history, troubleshoot tool execution issues, or audit tool function calls." }, { "slug": "INSIGHTO_AI_READ_TOOL_TOOLFUNCTION_LIST", "name": "Read Tool Toolfunction List", "description": "Tool to retrieve a paginated list of tool functions for a specific tool. Use after authenticating to fetch and browse through all tool functions associated with a given tool ID." }, { "slug": "INSIGHTO_AI_READ_TWILIO_AUTH_LIST", "name": "Read Twilio Auth List", "description": "Tool to retrieve a paginated list of Twilio authentications. Use after authenticating to fetch and browse through all configured Twilio auth integrations." }, { "slug": "INSIGHTO_AI_RETRIEVE_LINKED_TOOL_AND_USER", "name": "Retrieve Linked Tool And User", "description": "Tool to retrieve linked tool and user information for a specific tool. Use when you need to fetch users linked to a tool by tool ID." }, { "slug": "INSIGHTO_AI_RETRIEVE_LIST_OF_USER_CUSTOM_VOICE", "name": "Retrieve List Of User Custom Voice", "description": "Tool to retrieve a paginated list of user custom voices. Use after authenticating to fetch available custom voices." }, { "slug": "INSIGHTO_AI_RETRIEVE_USER_MONTHLY_USAGES_AGGREGATION", "name": "Retrieve User Monthly Usages Aggregation", "description": "Tool to retrieve user monthly usages aggregation data. Use when you need to fetch analytics about user usage patterns aggregated by month." }, { "slug": "INSIGHTO_AI_RETRIEVE_WEBHOOK_LOG", "name": "Retrieve Webhook Log", "description": "Tool to retrieve webhook logs for a specific webhook. Use to monitor webhook delivery status and debug webhook issues." }, { "slug": "INSIGHTO_AI_SEND_MESSAGES_TO_CONTACTS", "name": "Send Messages To Contacts", "description": "Tool to send messages to a list of contacts in bulk. Use when your widget is connected to WhatsApp or SMS and you have the contact IDs ready." }, { "slug": "INSIGHTO_AI_UPDATE_LINK_TOOL_USER", "name": "Update Link Tool User", "description": "Tool to update a link tool user by its ID. Use when you need to modify properties of an existing tool integration." }, { "slug": "INSIGHTO_AI_UPDATE_TOOL_BY_ID", "name": "Update Tool By ID", "description": "Tool to update a tool by its ID. Use when you need to modify properties of an existing tool such as name, description, or enabled status." }, { "slug": "INSIGHTO_AI_UPDATE_TOOLFUNCTION_BY_ID", "name": "Update Toolfunction By ID", "description": "Tool to update an existing toolfunction by its ID. Use when you need to modify properties of a toolfunction such as name, description, type, or enabled status." }, { "slug": "INSIGHTO_AI_UPDATE_TWILIO_AUTH_BY_ID", "name": "Update Twilio Auth By ID", "description": "Tool to update a Twilio authentication configuration by its ID. Use when you need to modify Twilio auth credentials or settings." }, { "slug": "INSIGHTO_AI_UPDATE_USER_PROFILE", "name": "Update User Profile", "description": "Tool to update a user profile in Insighto.ai. Use when modifying user account details, contact information, or billing settings." }, { "slug": "INSIGHTO_AI_UPDATE_USERWHATSAPP_BY_ID", "name": "Update UserWhatsApp By ID", "description": "Tool to update a UserWhatsApp configuration by its ID. Use when you need to modify WhatsApp Business API settings for a user." }, { "slug": "INSIGHTO_AI_UPDATE_WEBHOOK_BY_ID", "name": "Update Webhook By ID", "description": "Tool to update an outbound webhook by its unique ID. Use when you need to modify webhook configuration such as name, endpoint URL, or enabled status." }, { "slug": "INSIGHTO_AI_UPSERT_CONTACT_BY_EMAIL_OR_PHONE_NUMBER", "name": "Upsert Contact By Email Or Phone Number", "description": "Tool to upsert (create or update) a contact in Insighto.ai using email or phone number. Use when you need to create a new contact or update an existing one by email or phone number." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "insighto_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "insighto_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Insighto.ai API Key", "type": "string", "description": "API key for Insighto.ai services. Must start with 'in-'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "instacart", "name": "Instacart", "logo": "https://logos.composio.dev/api/instacart", "description": "Instacart Developer Platform APIs to create shoppable lists/recipes and discover nearby retailers", "category": "ecommerce", "authSchemes": [ "NO_AUTH" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INSTACART_CREATE_INSTACART_RECIPE_LINK", "name": "Create Instacart Recipe Link", "description": "Create an Instacart link to the shopping list of ingredients for a recipe. This action generates a shareable Instacart URL that allows users to purchase all recipe ingredients with one click. Use this when you have a recipe with ingredients and want to enable easy grocery shopping through Instacart." }, { "slug": "INSTACART_CREATE_RECIPE_PAGE", "name": "Create Recipe Page", "description": "Create a shareable recipe page on Instacart and return the URL. This action generates an Instacart recipe page where users can: - View the recipe with ingredients, instructions, and image - Add all recipe ingredients to their cart with one click - Select their preferred nearby store for shopping Use this for meal planning apps, recipe blogs, cooking assistants, or any application that wants to enable easy grocery shopping from recipes. The returned URL can be shared via email, SMS, or social media." }, { "slug": "INSTACART_CREATE_SHOPPING_LIST_PAGE", "name": "Create Shopping List Page", "description": "Create a shareable Shopping List Page on Instacart. This action generates a public Instacart URL where users can view a list of products, select their preferred store, and add items to their cart for delivery or pickup. The generated link can be shared via email, messaging apps, or embedded in websites. Use cases: - Share grocery lists with family members - Create shopping lists for recipes or meal plans - Enable one-click shopping for recommended products" }, { "slug": "INSTACART_GET_NEARBY_RETAILERS", "name": "Get Nearby Retailers", "description": "Retrieves a list of grocery retailers available for delivery or pickup in a given postal code area. Use this action to discover which retailers (e.g., Safeway, Walmart, Publix) are available before creating shopping lists or recipe pages. The returned retailer_key values can be used with other Instacart actions like create_shopping_list_page or create_recipe_page. Supports United States (US) and Canada (CA) postal codes." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Instacart", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "instagram", "name": "Instagram", "logo": "https://logos.composio.dev/api/instagram", "description": "Instagram is a social media platform for sharing photos, videos, and stories. Only supports Instagram Business and Creator accounts, not Instagram Personal accounts.", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INSTAGRAM_CREATE_CAROUSEL_CONTAINER", "name": "Create Carousel Container", "description": "Create a draft carousel post with multiple images/videos before publishing. Instagram requires carousels to have between 2 and 10 media items. Container creation_ids expire in under 24 hours, so publish promptly after creation." }, { "slug": "INSTAGRAM_CREATE_MEDIA_CONTAINER", "name": "Create Media Container (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_POST_IG_USER_MEDIA instead. Creates a draft media container for photos/videos/reels before publishing. Business/Creator accounts only — personal accounts unsupported. Returns a container ID (data.id or data.creation_id) used as creation_id for publishing. Containers expire in ~24 hours — recreate stale containers rather than reusing old IDs. Before publishing via INSTAGRAM_CREATE_POST, call INSTAGRAM_GET_POST_STATUS and wait for FINISHED status — publishing before FINISHED triggers error 9007. Each creation_id is one-time-use; if container creation fails (status_code='ERROR'), fix media params and recreate via this tool rather than retrying publish with the failed ID." }, { "slug": "INSTAGRAM_CREATE_POST", "name": "Create Post (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH instead. Publish a draft media container to Instagram (final publishing step). Posts become immediately and publicly visible upon success — confirm intent before calling. Requires Business or Creator account with publish scopes; missing scopes return Graph error code 10. After creating a media container, Instagram may need time to process media before publishing. If called too early, error code 9007 is returned. This action automatically retries with exponential backoff (up to ~44 seconds total). For large videos, use INSTAGRAM_GET_POST_STATUS to poll until status_code='FINISHED' before calling; for carousels, all child containers must individually reach FINISHED status first. No native scheduling support — use an external scheduler to trigger this call at the desired time." }, { "slug": "INSTAGRAM_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment on Instagram media. Use when you need to remove a comment that was created by your Instagram Business or Creator Account. Note: You can only delete comments that your account created - you cannot delete other users' comments unless they are on your own media." }, { "slug": "INSTAGRAM_DELETE_MESSENGER_PROFILE", "name": "Delete Messenger Profile", "description": "Tool to delete messenger profile settings for an Instagram account. Use when you need to remove ice breakers, persistent menu, greeting messages, or other messaging configuration from the messenger profile." }, { "slug": "INSTAGRAM_GET_CONVERSATION", "name": "Get Conversation", "description": "Get details about a specific Instagram DM conversation (participants, etc). Requires a Business or Creator account with Instagram messaging permissions; personal accounts will return permission errors. Newly sent/received messages may take a few seconds to appear in results." }, { "slug": "INSTAGRAM_GET_IG_COMMENT_REPLIES", "name": "Get IG Comment Replies", "description": "Get replies to a specific Instagram comment. Returns a list of comment replies with details like text, username, timestamp, and like count. Use when you need to retrieve child comments (replies) for a specific parent comment." }, { "slug": "INSTAGRAM_GET_IG_MEDIA", "name": "Get Instagram Media", "description": "Get a published Instagram Media object (photo, video, story, reel, or carousel). Use when you need to retrieve detailed information about a specific Instagram post including engagement metrics, caption, media URLs, and metadata. NOTE: This action is for published media only. For unpublished container IDs (from INSTAGRAM_CREATE_MEDIA_CONTAINER), use INSTAGRAM_GET_POST_STATUS to check status instead." }, { "slug": "INSTAGRAM_GET_IG_MEDIA_CHILDREN", "name": "Get IG Media Children", "description": "Tool to get media objects (images/videos) that are children of an Instagram carousel/album post. Use when you need to retrieve individual media items from a carousel album post. Note: Carousel children media do not support insights queries - for analytics, query metrics at the parent carousel level." }, { "slug": "INSTAGRAM_GET_IG_MEDIA_COMMENTS", "name": "Get IG Media Comments", "description": "Tool to retrieve comments on an Instagram media object. Use when you need to fetch comments from a specific Instagram post, photo, video, or carousel owned by the connected Business/Creator account. Supports cursor-based pagination for navigating through large comment lists. An empty data array in the response indicates the post has no comments and is not an error. Bulk-fetching across many media objects may trigger API rate limits." }, { "slug": "INSTAGRAM_GET_IG_MEDIA_INSIGHTS", "name": "Get IG Media Insights", "description": "Tool to get insights and metrics for Instagram media objects (photos, videos, reels, carousel albums). Use when you need to retrieve performance data such as views, reach, likes, comments, saves, and shares for specific media. Note: Insights data is only available for media published within the last 2 years, and the account must have at least 1,000 followers. Requires a Business or Creator account; personal Instagram profiles are not supported." }, { "slug": "INSTAGRAM_GET_IG_USER_CONTENT_PUBLISHING_LIMIT", "name": "Get IG User Content Publishing Limit", "description": "Get an Instagram Business Account's current content publishing usage. Use this to monitor quota usage before publishing; exceeding the daily cap blocks new posts until the quota resets (no partial failure — new publish calls are rejected until reset). IMPORTANT: This endpoint requires an IG User ID (Instagram Business Account ID), NOT an IGSID (Instagram Scoped ID). IGSID is only used for messaging-related endpoints. Content publishing endpoints require a proper IG User ID. Excessive polling of this endpoint may trigger Graph error 613 (rate limit); space calls several seconds apart." }, { "slug": "INSTAGRAM_GET_IG_USER_LIVE_MEDIA", "name": "Get IG User Live Media", "description": "Get live media objects during an active Instagram broadcast. Returns the live video media ID and metadata when a live broadcast is in progress on an Instagram Business or Creator account. Use this to monitor active live streams and access real-time engagement data." }, { "slug": "INSTAGRAM_GET_IG_USER_MEDIA", "name": "Get IG User Media", "description": "Get Instagram user's media collection (posts, photos, videos, reels, carousels). Use when you need to retrieve all media published by an Instagram Business or Creator account with support for pagination and time-based filtering." }, { "slug": "INSTAGRAM_GET_IG_USER_STORIES", "name": "Get IG User Stories", "description": "Get active story media objects for an Instagram Business or Creator account. Stories are retrieved via the /stories endpoint. Returns stories that are currently active within the 24-hour window. Use this to retrieve story content, metadata, and engagement metrics for monitoring or analytics purposes." }, { "slug": "INSTAGRAM_GET_IG_USER_TAGS", "name": "Get IG User Tags", "description": "Get Instagram media where the user has been tagged by other users. Use when you need to retrieve all media in which an Instagram Business or Creator account has been tagged, including tags in captions, comments, or on the media itself." }, { "slug": "INSTAGRAM_GET_MESSENGER_PROFILE", "name": "Get Messenger Profile", "description": "Get the messenger profile settings for an Instagram account. Returns ice breakers and other messaging configuration. Use when you need to retrieve messaging settings, ice breaker questions, or messenger configuration for an Instagram Business account." }, { "slug": "INSTAGRAM_GET_PAGE_CONVERSATIONS", "name": "Get Page Conversations", "description": "Get Instagram conversations for a Page connected to an Instagram Business account. Use platform=instagram parameter to filter for Instagram conversations only." }, { "slug": "INSTAGRAM_GET_POST_COMMENTS", "name": "Get Post Comments (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_GET_IG_MEDIA_COMMENTS instead. Get comments on an Instagram post. Requires Instagram Business or Creator account. Returns empty `data` array (not an error) when no comments exist. Response data is nested under `data.data`; unwrap before processing. Timestamps are timezone-aware ISO 8601 strings; use UTC-based comparison." }, { "slug": "INSTAGRAM_GET_POST_INSIGHTS", "name": "Get Post Insights (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_GET_IG_MEDIA_INSIGHTS instead. Get Instagram post insights/analytics (impressions, reach, engagement, etc.). Requires a Business or Creator account; personal accounts cannot access insights. Metrics may be unavailable for several minutes after publishing; verify post status is FINISHED before calling." }, { "slug": "INSTAGRAM_GET_POST_STATUS", "name": "Get Post Status (Deprecated)", "description": "DEPRECATED: Use GetIgMedia instead. Check the processing status of a draft post container. Poll until status_code='FINISHED' before calling INSTAGRAM_CREATE_POST; publishing early triggers OAuthException 9007 (HTTP 400). If status_code='ERROR' or remains non-terminal after ~30 attempts, the container is permanently failed — recreate a new container. Poll every 3–5s with exponential backoff to avoid error 613/code 4/HTTP 429. For carousels, all child containers must reach FINISHED before publishing the parent." }, { "slug": "INSTAGRAM_GET_USER_INFO", "name": "Get User Info", "description": "Get Instagram Business Account info including profile details and statistics. IMPORTANT: Only works for Business/Creator accounts you manage through Facebook Business Manager. Cannot query arbitrary public Instagram accounts. Use \"me\" to query your own authenticated account. NOTE: followers_count and follows_count are ONLY available when querying your own profile with ig_user_id=\"me\" - these fields return null for specific user IDs due to Instagram Graph API limitations." }, { "slug": "INSTAGRAM_GET_USER_INSIGHTS", "name": "Get User Insights", "description": "Get Instagram account-level insights and analytics (profile views, reach, follower count, etc.). Requires a Business or Creator account; personal accounts are not supported. Returned timestamps are in UTC. metric_type (time_series or total_value): When set to total_value, the API returns a total_value object instead of values. breakdown: Only applicable when metric_type=total_value and only for supported metrics. timeframe: Required for demographics-related metrics and overrides since/until for those metrics." }, { "slug": "INSTAGRAM_GET_USER_MEDIA", "name": "Get User Media (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_GET_IG_USER_MEDIA instead. Get Instagram user's media (posts, photos, videos). Only works for connected Business or Creator accounts; personal accounts return no data. Response data is nested under `data.data`; unwrap before processing. Items mix images, videos, carousels, and reels — filter by `media_type` and `media_product_type`. Use `media_url` for file download, `permalink` for share links. Fields like `caption`, `like_count` may be null. Timestamps are UTC ISO 8601. HTTP 429 with `Retry-After` header indicates rate limiting." }, { "slug": "INSTAGRAM_LIST_ALL_CONVERSATIONS", "name": "List All Conversations", "description": "List all Instagram DM conversations for the authenticated user. Requires a Business/Creator account with messaging permissions; personal accounts return empty results. Response conversations are nested under `data.data` — accessing top-level `data` as the final list returns zero items. An empty `data` list is a valid non-error outcome meaning no conversations exist in scope." }, { "slug": "INSTAGRAM_LIST_ALL_MESSAGES", "name": "List All Messages", "description": "List all messages from a specific Instagram DM conversation. Requires a Business or Creator account with messaging permissions; personal accounts return empty results. Response data is nested under data.data (double-wrapped); attachment-only messages may have empty text fields." }, { "slug": "INSTAGRAM_MARK_SEEN", "name": "Mark Seen", "description": "Mark Instagram DM messages as read/seen for a specific user. Sends a 'mark_seen' sender action to indicate messages from the specified recipient have been read. Marking as seen is visible to the other party and changes inbox read state — use with explicit user approval in automated or bulk flows. IMPORTANT LIMITATIONS: - The sender_action API feature may have limited support on Instagram - The recipient must have an active 24-hour messaging window open - Requires instagram_manage_messages permission - Only works with Instagram Business or Creator accounts If this action fails with a 500 error, it may indicate that the sender_action feature is not supported for your Instagram account or the specific recipient." }, { "slug": "INSTAGRAM_POST_IG_COMMENT_REPLIES", "name": "Post IG Comment Replies", "description": "Tool to create a reply to an Instagram comment. Use when you need to reply to a specific comment on an Instagram post owned by a Business or Creator account. The reply must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters." }, { "slug": "INSTAGRAM_POST_IG_MEDIA_COMMENTS", "name": "Post IG Media Comments", "description": "Tool to create a comment on an Instagram media object. Use when you need to post a comment on a specific Instagram post, photo, video, or carousel. The comment must be 300 characters or less, contain at most 4 hashtags and 1 URL, and cannot consist entirely of capital letters." }, { "slug": "INSTAGRAM_POST_IG_USER_MEDIA", "name": "Post IG User Media", "description": "Tool to create a media container for Instagram posts. Use this to create a container for images, videos, Reels, or carousels. This is the first step in Instagram's two-step publishing process - after creating the container, use the media_publish endpoint to publish it." }, { "slug": "INSTAGRAM_POST_IG_USER_MEDIA_PUBLISH", "name": "Publish IG User Media", "description": "Tool to publish a media container to an Instagram Business account. This action automatically waits for the container to finish processing before publishing. Rate limited to 25 API-published posts per 24-hour moving window. The publishing process: 1. First, create a media container using INSTAGRAM_CREATE_MEDIA_CONTAINER 2. Call this action with the creation_id - it will automatically poll for FINISHED status 3. Once ready, the media is published and the published media ID is returned For videos/reels, processing may take 30-120 seconds. Images are typically instant." }, { "slug": "INSTAGRAM_POST_IG_USER_MENTIONS", "name": "Reply to IG User Mentions", "description": "Tool to reply to a mention of your Instagram Business or Creator account. Use when you need to respond to comments or media captions where your account has been @mentioned by another Instagram user. This creates a comment on the media or comment containing the mention." }, { "slug": "INSTAGRAM_REPLY_TO_COMMENT", "name": "Reply To Comment (Deprecated)", "description": "DEPRECATED: Use INSTAGRAM_POST_IG_COMMENT_REPLIES instead. Reply to a comment on Instagram media. Only usable on comments belonging to media owned by the authenticated account. Creates a public, irreversible reply; invoke only with explicit user confirmation, not for bulk or speculative use." }, { "slug": "INSTAGRAM_SEND_IMAGE", "name": "Send Image", "description": "Send an image via Instagram DM to a specific user. Each send modifies inbox state; avoid bulk or automated sends without explicit user approval." }, { "slug": "INSTAGRAM_SEND_TEXT_MESSAGE", "name": "Send Text Message", "description": "Send a text message to an Instagram user via DM in an existing conversation. Cannot initiate new DM threads — a prior conversation must exist. Requires an Instagram Business or Creator account with messaging permissions. Fails with error_subcode 2534022 if outside the messaging window; do not retry these failures." }, { "slug": "INSTAGRAM_UPDATE_MESSENGER_PROFILE", "name": "Update Messenger Profile", "description": "Tool to update the messenger profile settings for an Instagram account. Use when you need to configure ice breakers and messaging options. Ice breakers are suggested questions that help users start conversations with your Instagram Business account." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "instagram_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "instagram_business_basic,instagram_business_manage_messages,instagram_business_manage_comments,instagram_business_content_publish,instagram_business_manage_insights" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "instant", "name": "Instant", "logo": "https://logos.composio.dev/api/instant", "description": "Instant is a modern Firebase. We make you productive by giving your frontend a real-time database.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "instant_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Admin SDK Secret", "type": "string", "description": "To get your Admin SDK Secret, sign in to Instant, go to \"Admin\" > \"Admin SDK\" > \"Secret\"", "required": true, "default": null }, { "name": "generic_id", "displayName": "App ID", "type": "string", "description": "Sign in to Instant and copy your App ID directly from your dashboard under \"Public App ID\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "instantly", "name": "Instantly", "logo": "https://app.instantly.ai/favicon.ico", "description": "Instantly is a platform designed to streamline cold email outreach by automating campaigns, managing leads, and enhancing email deliverability.", "category": "drip emails", "authSchemes": [ "API_KEY" ], "toolCount": 117, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INSTANTLY_ACCOUNTS_CTD_STATUS_GET", "name": "Check Custom Tracking Domain Status", "description": "Tool to check Custom Tracking Domain (CTD) status for email accounts. Use to verify SSL configuration and CNAME records for a specified domain/host." }, { "slug": "INSTANTLY_ACTIVATE_CAMPAIGN", "name": "Activate Campaign", "description": "Tool to activate or resume a paused campaign. Use when you need to start sending operations for a specific campaign. Prerequisites: Campaign must have at least one sender account, one lead, email sequences, and schedule configured." }, { "slug": "INSTANTLY_ADD_LEADS_BULK", "name": "Add Leads in Bulk", "description": "Tool to add multiple leads in bulk to a campaign or list. Use when you need to import several leads at once to an Instantly campaign or list. Supports duplicate handling options and lead verification." }, { "slug": "INSTANTLY_API_KEYS_GET", "name": "Get API Keys", "description": "Tool to retrieve paginated list of API keys for organization. Use when you need to list all API keys with their names, scopes, and timestamps." }, { "slug": "INSTANTLY_BULK_ASSIGN_LEADS", "name": "Bulk Assign Leads", "description": "Tool to bulk assign leads to organization users. Use when you need to assign multiple leads to specific organization members." }, { "slug": "INSTANTLY_CAMPAIGNS_ANALYTICS_OVERVIEW_GET", "name": "Get Campaigns Analytics Overview", "description": "Tool to get analytics overview for one or multiple campaigns. Use when you need comprehensive performance metrics including leads, emails, replies, opens, clicks, and CRM events." }, { "slug": "INSTANTLY_CAMPAIGNS_FROM_EXPORT_POST", "name": "Import Campaign from Export", "description": "Tool to import a campaign from exported data. Use when you need to recreate a campaign from previously exported configuration." }, { "slug": "INSTANTLY_CHECK_DFY_EMAIL_ACCOUNT_ORDER_DOMAINS", "name": "Check DFY Email Account Order Domains", "description": "Tool to check domain availability for DFY email account orders. Use when you need to validate domains before creating DFY email account orders." }, { "slug": "INSTANTLY_CHECK_EMAIL_VERIFICATION_STATUS", "name": "Check Email Verification Status", "description": "Tool to check status of an email verification job. Use after submitting a verification request to retrieve the current status of a specific email address." }, { "slug": "INSTANTLY_COUNT_LAUNCHED_CAMPAIGNS", "name": "Count Launched Campaigns", "description": "Tool to retrieve the count of launched campaigns. Use when you need to know the total number of campaigns that have been launched in the workspace." }, { "slug": "INSTANTLY_COUNT_LEADS_FROM_SUPERSEARCH", "name": "Count Leads from SuperSearch", "description": "Tool to count leads matching supersearch filter criteria. Use when you need to preview how many leads match your search criteria before creating an enrichment job." }, { "slug": "INSTANTLY_COUNT_UNREAD_EMAILS", "name": "Count Unread Emails", "description": "Tool to retrieve the count of unread emails. Use when you need to know how many unread messages are in your inbox before sending new emails." }, { "slug": "INSTANTLY_CREATE_AI_ENRICHMENT", "name": "Create AI Enrichment", "description": "Tool to create an AI enrichment job for a campaign or lead list. Use when you need to enrich a resource with AI-driven insights." }, { "slug": "INSTANTLY_CREATE_API_KEY", "name": "Create API Key", "description": "Creates a new API key with specified permissions for the Instantly API. Use this tool to generate credentials for programmatic access. Each API key can be scoped with granular permissions (e.g., 'campaigns:read', 'leads:create') to limit access to specific resources and operations. The generated key value is returned in the response and should be stored securely. Common use cases: - Create integration keys with limited scopes for third-party applications - Generate read-only keys for reporting/analytics tools - Set up automation keys with specific resource access" }, { "slug": "INSTANTLY_CREATE_BLOCK_LIST_ENTRY", "name": "Create Block List Entry", "description": "Tool to create a new block list entry for a specific email or domain. Use when you need to prevent campaigns from sending emails to a specific address or domain." }, { "slug": "INSTANTLY_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign. Use when you have campaign details ready and want to launch." }, { "slug": "INSTANTLY_CREATE_CUSTOM_TAG", "name": "Create Custom Tag", "description": "Tool to create a new custom tag for organizing accounts and campaigns. Use when you need to create a new tag for categorization purposes." }, { "slug": "INSTANTLY_CREATE_INBOX_PLACEMENT_TEST", "name": "Create Inbox Placement Test", "description": "Tool to create an inbox placement test. Use when you need to measure deliverability across providers with your prepared email and recipient list." }, { "slug": "INSTANTLY_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead. Use when you need to add an individual lead to a campaign." }, { "slug": "INSTANTLY_CREATE_LEAD_LIST", "name": "Create Lead List", "description": "Tool to create a new lead list. Use when you need to organize leads into a dedicated list before importing them into campaigns." }, { "slug": "INSTANTLY_CREATE_SUBSEQUENCE", "name": "Create Subsequence", "description": "Creates an automated follow-up subsequence for a campaign. Subsequences are triggered when leads meet specific conditions (CRM status changes, activities, or reply keywords). Use this tool when you need to: - Set up automatic follow-ups for interested leads (CRM status = 1) - Send targeted sequences when leads reply with specific keywords - Create different follow-up paths based on meeting status or lead activities - Implement A/B testing with multiple email variants Key features: - Condition-based triggering (CRM status, lead activity, or reply keywords) - Flexible scheduling with timezone support and active days - Multi-step email sequences with configurable delays - A/B testing support with multiple email variants per step" }, { "slug": "INSTANTLY_CREATE_SUPERSEARCH_ENRICHMENT", "name": "Create SuperSearch Enrichment", "description": "Tool to create a supersearch enrichment job for a list or campaign. Use when you need to enrich leads with data such as email verification, work email, profile information, job listings, technologies, news, or funding details." }, { "slug": "INSTANTLY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook endpoint. Use when you need to receive Instantly event notifications via HTTP callbacks." }, { "slug": "INSTANTLY_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete an API key. Use when you need to remove a specific API key by its ID after confirming its existence." }, { "slug": "INSTANTLY_DELETE_BLOCK_LIST_ENTRY", "name": "Delete Block List Entry", "description": "Tool to delete a blocked email or domain entry by its ID. Use when you need to remove a specific block list entry." }, { "slug": "INSTANTLY_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a campaign. Use when you need to remove a specific campaign by ID." }, { "slug": "INSTANTLY_DELETE_CUSTOM_TAG", "name": "Delete Custom Tag", "description": "Tool to delete a custom tag by its ID. Use when you need to remove a specific custom tag used for organizing and categorizing accounts and campaigns." }, { "slug": "INSTANTLY_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a lead by its ID. Use when you need to remove a specific lead after confirming its existence." }, { "slug": "INSTANTLY_DELETE_LEAD_LABEL", "name": "Delete Lead Label", "description": "Tool to delete a lead label by ID. Use when you need to remove a custom label for categorizing and managing leads." }, { "slug": "INSTANTLY_DELETE_LEAD_LIST", "name": "Delete Lead List", "description": "Tool to delete a lead list by ID. Use when you need to remove a specific lead list after confirming its existence." }, { "slug": "INSTANTLY_DELETE_SUBSEQUENCE", "name": "Delete Subsequence", "description": "Delete a subsequence from a campaign by its UUID. A subsequence is an automated follow-up sequence triggered by specific conditions (e.g., CRM status changes, lead activity, or reply content). Use this action when you need to permanently remove a subsequence that is no longer needed or was created in error. The deletion is permanent and cannot be undone. Returns the complete subsequence data including its configuration, schedule, and email sequences for reference before deletion." }, { "slug": "INSTANTLY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook. Use when you need to remove a specific webhook by its UUID." }, { "slug": "INSTANTLY_DELETE_WHITELABEL_DOMAIN", "name": "Delete Whitelabel Domain", "description": "Tool to delete the whitelabel domain from current workspace. Use when you need to remove the whitelabel domain configuration from a workspace." }, { "slug": "INSTANTLY_DFY_EMAIL_ACCOUNT_ORDERS_DOMAINS_PRE_WARMED_UP", "name": "List Pre-warmed Up DFY Domains", "description": "Tool to retrieve a list of pre-warmed up domains ready for DFY email account orders. Use when you need to check available domains that come pre-configured with SPF, DKIM, DMARC, and warmup already completed." }, { "slug": "INSTANTLY_DISABLE_ACCOUNT_WARMUP", "name": "Disable Account Warmup", "description": "Tool to disable the warm-up process for email accounts. Use when you need to stop warmup for specific or all accounts before sending critical campaigns." }, { "slug": "INSTANTLY_DUPLICATE_CAMPAIGN", "name": "Duplicate Campaign", "description": "Tool to duplicate an existing campaign. Use when you need to create a copy of a campaign with the same configuration." }, { "slug": "INSTANTLY_DUPLICATE_SUBSEQUENCE", "name": "Duplicate Subsequence", "description": "Tool to duplicate an existing subsequence to a specified parent campaign. Use when you need to create a copy of a subsequence with the same trigger conditions." }, { "slug": "INSTANTLY_ENABLE_ACCOUNT_WARMUP", "name": "Enable Account Warmup", "description": "Tool to enable the warm-up process for email accounts. Use when you want to start warming up one or more accounts to improve deliverability." }, { "slug": "INSTANTLY_EXPORT_CAMPAIGN", "name": "Export Campaign", "description": "Tool to export campaign data to JSON format. Use when you need to retrieve complete campaign configuration for backup or migration." }, { "slug": "INSTANTLY_GET_ACCOUNT_CAMPAIGN_MAPPINGS", "name": "Get Account Campaign Mappings", "description": "Tool to retrieve campaigns associated with an email account. Use when you need to find which campaigns are mapped to a specific email address." }, { "slug": "INSTANTLY_GET_ACCOUNTS_ANALYTICS_DAILY", "name": "Get Daily Account Analytics", "description": "Tool to retrieve daily account analytics showing emails sent per day for each account. Use when you need per-day performance metrics for email accounts." }, { "slug": "INSTANTLY_GET_ACCOUNTS_WARMUP_ANALYTICS", "name": "Get Accounts Warmup Analytics", "description": "Tool to retrieve warmup analytics for specified email accounts. Use when you need daily and aggregate warmup statistics including health scores." }, { "slug": "INSTANTLY_GET_AUDIT_LOGS", "name": "Get Audit Logs", "description": "Tool to retrieve audit log records for tracking system activities. Use when you need to review account activity history or monitor changes." }, { "slug": "INSTANTLY_GET_BLOCK_LIST_ENTRY", "name": "Get Block List Entry", "description": "Tool to retrieve a specific blocked email or domain entry by its ID. Use when you have a block list entry UUID and need to check block details." }, { "slug": "INSTANTLY_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve campaign details. Use when you need full campaign configuration for a given campaign ID." }, { "slug": "INSTANTLY_GET_CAMPAIGN_ANALYTICS", "name": "Get Campaign Analytics", "description": "Tool to retrieve analytics for campaigns. Use when you need performance metrics for one or multiple campaigns." }, { "slug": "INSTANTLY_GET_CAMPAIGN_SENDING_STATUS", "name": "Get Campaign Sending Status", "description": "Tool to retrieve campaign sending status diagnostics explaining why a campaign may not be sending emails or is sending slower than expected. Use when troubleshooting campaign delivery issues or understanding campaign health." }, { "slug": "INSTANTLY_GET_CAMPAIGN_STEPS_ANALYTICS", "name": "Get Campaign Steps Analytics", "description": "Tool to retrieve analytics data broken down by campaign steps and variants. Use when you need detailed performance metrics for each step in a campaign sequence." }, { "slug": "INSTANTLY_GET_CURRENT_WORKSPACE", "name": "Get Current Workspace", "description": "Tool to retrieve current workspace details based on API key. Use when you need workspace information like plan details, owner, or organization settings." }, { "slug": "INSTANTLY_GET_CUSTOM_TAG", "name": "Get Custom Tag", "description": "Tool to retrieve a specific custom tag by ID. Use when you need details about a custom tag used for organizing accounts and campaigns." }, { "slug": "INSTANTLY_GET_CUSTOM_TAG_MAPPINGS", "name": "Get Custom Tag Mappings", "description": "Tool to retrieve custom tag mappings that connect tags to resources like campaigns and email accounts. Use when you need to see which tags are assigned to which resources." }, { "slug": "INSTANTLY_GET_DAILY_CAMPAIGN_ANALYTICS", "name": "Get Daily Campaign Analytics", "description": "Tool to retrieve daily analytics for a campaign. Use when you need per-day performance metrics for campaigns." }, { "slug": "INSTANTLY_GET_DFY_EMAIL_ACCOUNT_ORDER_ACCOUNTS", "name": "Get DFY Email Account Order Accounts", "description": "Tool to retrieve DFY (Done-For-You) email account order accounts. Use when you need to fetch accounts from DFY email account orders with optional pagination and password inclusion." }, { "slug": "INSTANTLY_GET_EMAIL_SERVICE_PROVIDER_OPTIONS", "name": "Get Email Service Provider Options", "description": "Tool to retrieve email service provider options for inbox placement tests. Use when you need valid recipients_labels options." }, { "slug": "INSTANTLY_GET_INBOX_PLACEMENT_ANALYTICS_STATS_BY_DATE", "name": "Get Inbox Placement Analytics Stats By Date", "description": "Tool to retrieve time-series statistics for inbox placement test results by date. Use when you need daily analytics showing how emails were distributed across inbox, spam, and category folders." }, { "slug": "INSTANTLY_GET_INBOX_PLACEMENT_TEST", "name": "Get Inbox Placement Test", "description": "Tool to retrieve inbox placement test results. Use when you need details for a specific inbox placement test by ID." }, { "slug": "INSTANTLY_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve details of a specific lead by its ID. Use when you have the lead UUID and need full lead metadata." }, { "slug": "INSTANTLY_GET_LEAD_LABEL", "name": "Get Lead Label", "description": "Tool to retrieve a specific lead label by ID. Use when you need details about a custom label for categorizing and managing leads." }, { "slug": "INSTANTLY_GET_LEAD_LABELS", "name": "Get Lead Label by ID (Deprecated)", "description": "DEPRECATED: Use INSTANTLY_GET_LEAD_LABEL instead. Tool to retrieve a specific lead label by ID. Use when you need details about a custom label for categorizing and managing leads." }, { "slug": "INSTANTLY_GET_LEAD_LIST", "name": "Get Lead List", "description": "Tool to retrieve details of a specific lead list by its ID. Use when you have the lead list UUID and need list metadata." }, { "slug": "INSTANTLY_GET_PHONE_NUMBERS", "name": "Get CRM Phone Numbers", "description": "Tool to retrieve all phone numbers associated with your organization. Use when you need to list phone numbers configured for CRM actions." }, { "slug": "INSTANTLY_GET_SIMILAR_DFY_EMAIL_ACCOUNT_ORDER_DOMAINS", "name": "Get Similar DFY Email Account Order Domains", "description": "Tool to generate similar available domain suggestions for DFY email account orders. Use when you need to find available domain alternatives based on a provided domain. Returns maximum of 66 suggestions per extension (TLD) requested." }, { "slug": "INSTANTLY_GET_SUBSEQUENCE", "name": "Get Subsequence", "description": "Tool to retrieve a specific subsequence by its ID. Use when you need full details of a follow-up sequence entity." }, { "slug": "INSTANTLY_GET_SUPERSEARCH_ENRICHMENT", "name": "Get SuperSearch Enrichment", "description": "Tool to retrieve supersearch enrichment configuration and status for a list or campaign. Use this to check enrichment settings, progress status, and configuration details for a specific list or campaign resource." }, { "slug": "INSTANTLY_GET_VERIFICATION_STATS_FOR_LEAD_LIST", "name": "Get Lead List Verification Stats", "description": "Tool to retrieve verification statistics for a lead list. Use when you need summary counts by verification status for a specific lead list." }, { "slug": "INSTANTLY_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook subscription. Use when you have the webhook ID and need full webhook configuration." }, { "slug": "INSTANTLY_GET_WEBHOOK_EVENT", "name": "Get Webhook Event", "description": "Tool to retrieve details of a specific webhook event. Use when you need to inspect a particular webhook event by its ID." }, { "slug": "INSTANTLY_GET_WEBHOOK_EVENTS_SUMMARY", "name": "Get Webhook Events Summary", "description": "Tool to retrieve webhook events summary with success and failure statistics. Use when you need aggregated webhook delivery metrics for a date range." }, { "slug": "INSTANTLY_GET_WEBHOOK_EVENTS_SUMMARY_BY_DATE", "name": "Get Webhook Events Summary By Date", "description": "Tool to retrieve webhook event summaries grouped by date. Use when you need aggregated webhook event statistics over a date range." }, { "slug": "INSTANTLY_GET_WEBHOOK_EVENT_TYPES", "name": "Get Webhook Event Types", "description": "Tool to retrieve all available webhook event types. Use when you need to see valid event types for webhook subscriptions." }, { "slug": "INSTANTLY_GET_WORKSPACE_BILLING_PLAN_DETAILS", "name": "Get Workspace Billing Plan Details", "description": "Tool to retrieve workspace billing plan details. Use when you need to view billing plan information for various services like lead finder, verification, CRM, website visitor tracking, and inbox placement." }, { "slug": "INSTANTLY_INBOX_PLACEMENT_ANALYTICS_DELIVERABILITY_INSIGHTS", "name": "Get Inbox Placement Deliverability Insights", "description": "Tool to retrieve deliverability insights for inbox placement tests. Use when you need detailed percentage breakdowns of emails landing in spam, inbox, and category folders with optional date range filtering and previous period comparison." }, { "slug": "INSTANTLY_INBOX_PLACEMENT_ANALYTICS_STATS_BY_TEST_ID", "name": "Get Inbox Placement Analytics Stats By Test ID", "description": "Tool to retrieve aggregated inbox placement analytics statistics for specified test IDs. Use when you need consolidated inbox, spam, and category counts across multiple tests with optional filtering by date range, recipient geo, type, ESP, or sender email." }, { "slug": "INSTANTLY_LEAD_LABELS_POST", "name": "Create Lead Label", "description": "Tool to create a custom lead label for categorizing leads. Use when you need to create a new label to organize and manage leads with specific interest status categories." }, { "slug": "INSTANTLY_LIST_ACCOUNTS", "name": "List Email Accounts", "description": "Tool to list all email accounts for the authenticated user. Use after obtaining auth credentials to retrieve available accounts." }, { "slug": "INSTANTLY_LIST_API_KEYS", "name": "List API Keys (Deprecated)", "description": "DEPRECATED: Use INSTANTLY_INSTANTLY_API_KEYS_GET instead. Tool to list all API keys. Use when you need to retrieve your API keys with optional pagination after authentication." }, { "slug": "INSTANTLY_LIST_BLOCK_LIST_ENTRIES", "name": "List Block List Entries", "description": "Tool to list blocked emails or domains from blocklist. Use when you need to retrieve multiple block list entries with optional filtering by domains only or search terms. Supports pagination." }, { "slug": "INSTANTLY_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list all campaigns. Use when you need to fetch your campaigns list with optional filters and pagination." }, { "slug": "INSTANTLY_LIST_CUSTOM_TAGS", "name": "List Custom Tags", "description": "Tool to list custom tags. Use when you need to retrieve custom tags with optional pagination and filtering." }, { "slug": "INSTANTLY_LIST_DFY_EMAIL_ACCOUNT_ORDERS", "name": "List DFY Email Account Orders", "description": "Tool to list DFY email account orders. Use when you need to fetch your DFY email account orders with pagination." }, { "slug": "INSTANTLY_LIST_EMAILS", "name": "List Emails", "description": "Tool to list emails. Use when you need to retrieve emails with optional filters and pagination." }, { "slug": "INSTANTLY_LIST_INBOX_PLACEMENT_BLACKLIST_SPAM_ASSASSIN", "name": "List Inbox Placement Blacklist & SpamAssassin Reports", "description": "Tool to list inbox placement blacklist & SpamAssassin reports. Use when you need to retrieve spam and blacklist analytics after running an inbox placement test." }, { "slug": "INSTANTLY_LIST_INBOX_PLACEMENT_TESTS", "name": "List Inbox Placement Tests", "description": "Tool to list inbox placement tests. Use when you need a paginated overview of tests with optional filtering and sort order." }, { "slug": "INSTANTLY_LIST_LEAD_LISTS", "name": "List Lead Lists", "description": "Tool to list all lead lists. Use when you need to fetch the lead lists with optional filters and pagination." }, { "slug": "INSTANTLY_LIST_LEADS", "name": "List Leads", "description": "Tool to list leads. Use when you need to retrieve leads with optional filters like search, status filters, and pagination." }, { "slug": "INSTANTLY_LIST_WEBHOOK_EVENTS", "name": "List Webhook Events", "description": "Tool to list webhook events. Use when you need to view received webhook events with optional pagination and filters." }, { "slug": "INSTANTLY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list configured webhooks. Use when you need to retrieve your webhook configurations with optional filters and pagination." }, { "slug": "INSTANTLY_MARK_THREAD_AS_READ", "name": "Mark Thread As Read", "description": "Tool to mark all emails in a specific thread as read. Use when you want to update the read status of an email thread after processing." }, { "slug": "INSTANTLY_MERGE_LEADS", "name": "Merge Leads", "description": "Tool to merge multiple leads into a single lead. Use after confirming both source and destination lead IDs exist." }, { "slug": "INSTANTLY_MOVE_LEADS", "name": "Move Leads", "description": "Tool to move leads from one campaign to another. Use when you need to transfer specific leads between campaigns." }, { "slug": "INSTANTLY_PATCH_LEAD_LABEL", "name": "Update Lead Label", "description": "Tool to update an existing lead label by ID. Use when you need to modify a custom label for categorizing and managing leads." }, { "slug": "INSTANTLY_PATCH_SUPERSEARCH_ENRICHMENT_SETTINGS", "name": "Patch SuperSearch Enrichment Settings", "description": "Tool to update auto-update and skip settings for SuperSearch enrichment. Use when you need to configure enrichment behavior for leads in a list or campaign, including automatic enrichment of new leads, skipping leads without emails, evergreen updates, and overwrite settings." }, { "slug": "INSTANTLY_PATCH_WEBHOOK", "name": "Patch Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify webhook properties like name, event type, or target URL." }, { "slug": "INSTANTLY_PAUSE_CAMPAIGN", "name": "Pause Campaign", "description": "Tool to pause an active campaign. Use when you need to suspend sending operations for a specific campaign." }, { "slug": "INSTANTLY_PAUSE_SUBSEQUENCE", "name": "Pause Subsequence", "description": "Tool to pause an active campaign subsequence. Use when you need to temporarily suspend a follow-up sequence." }, { "slug": "INSTANTLY_REMOVE_LEAD_FROM_SUBSEQUENCE", "name": "Remove Lead From Subsequence", "description": "Tool to remove a lead from a campaign subsequence. Use when you need to stop a lead from receiving subsequence emails." }, { "slug": "INSTANTLY_RESUME_SUBSEQUENCE", "name": "Resume Subsequence", "description": "Tool to resume a paused campaign subsequence. Use when you need to restart a previously paused follow-up sequence." }, { "slug": "INSTANTLY_SEARCH_CAMPAIGNS_BY_LEAD_EMAIL", "name": "Search Campaigns by Lead Email", "description": "Tool to search campaigns by a lead's email address. Use when you need to find campaigns containing a specific lead by their email." }, { "slug": "INSTANTLY_SET_WHITELABEL_DOMAIN", "name": "Set Whitelabel Domain", "description": "Tool to set whitelabel agency domain for current workspace. Use when you need to configure custom branding with your own domain name for the workspace." }, { "slug": "INSTANTLY_SHARE_CAMPAIGN", "name": "Share Campaign", "description": "Tool to share a campaign. Use when you need to share a campaign template for 7 days." }, { "slug": "INSTANTLY_SUPERSEARCH_ENRICHMENT_RUN_POST", "name": "Run SuperSearch Enrichment", "description": "Tool to run all enrichments for resource leads or unenriched leads. Use when you need to trigger enrichment processes for a list or campaign." }, { "slug": "INSTANTLY_TEST_ACCOUNTS_VITALS", "name": "Test Accounts Vitals", "description": "Tool to test IMAP/SMTP connectivity and account vitals for email accounts. Use when you need to verify email account health and connectivity status." }, { "slug": "INSTANTLY_TEST_WEBHOOK", "name": "Test Webhook", "description": "Tool to send a test payload to verify a webhook is working. Use when you need to verify a webhook configuration." }, { "slug": "INSTANTLY_TOGGLE_RESOURCE", "name": "Toggle Resource", "description": "Tool to assign or unassign custom tags to resources like accounts and campaigns. Use when you need to manage custom tag associations with resources by either assigning or unassigning tags." }, { "slug": "INSTANTLY_UPDATE_BLOCK_LIST_ENTRY", "name": "Update Block List Entry", "description": "Tool to update a blocked email or domain entry. Use when you need to modify the bl_value of an existing block list entry." }, { "slug": "INSTANTLY_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update details of a campaign. Use when you need to modify campaign settings after verifying its ID." }, { "slug": "INSTANTLY_UPDATE_CUSTOM_TAG", "name": "Update Custom Tag", "description": "Tool to update an existing custom tag's label or description. Use when you need to modify a custom tag used for organizing accounts and campaigns." }, { "slug": "INSTANTLY_UPDATE_INBOX_PLACEMENT_TEST", "name": "Update Inbox Placement Test", "description": "Tool to update an inbox placement test. Use when you need to modify an existing inbox placement test by its ID." }, { "slug": "INSTANTLY_UPDATE_LEAD", "name": "Update Lead", "description": "Tool to update a lead's details. Use when you need to modify fields of an existing lead after identifying its ID." }, { "slug": "INSTANTLY_UPDATE_LEAD_INTEREST_STATUS", "name": "Update Lead Interest Status", "description": "Tool to update a lead's interest status. Use when you need to set or reset a lead’s interest status for follow-up actions." }, { "slug": "INSTANTLY_UPDATE_LEAD_LIST", "name": "Update Lead List", "description": "Tool to update details of a specific lead list by its ID. Use after verifying the list ID exists." }, { "slug": "INSTANTLY_UPDATE_SUBSEQUENCE", "name": "Update Subsequence", "description": "Tool to update a campaign subsequence entity. Use when you need to modify subsequence settings such as name, schedule, or triggered CRM statuses." }, { "slug": "INSTANTLY_UPDATE_WORKSPACE_CURRENT", "name": "Update Current Workspace", "description": "Tool to update the current workspace details. Use when you need to modify workspace settings such as name or logo URL." }, { "slug": "INSTANTLY_VERIFY_EMAIL", "name": "Verify Email", "description": "Tool to initiate email verification. Use when you need to verify an email's deliverability before sending emails." }, { "slug": "INSTANTLY_WORKSPACE_GROUP_MEMBERS_ADMIN_GET", "name": "Get Admin Workspace Group Member", "description": "Tool to retrieve admin workspace details for the current sub workspace. Use when you need to get information about the admin workspace relationship, including workspace IDs and status." }, { "slug": "INSTANTLY_WORKSPACE_MEMBERS_GET", "name": "Get Workspace Member by ID", "description": "Tool to retrieve details of a specific workspace member by ID. Use when you need information about a member of a workspace with associated user details." }, { "slug": "INSTANTLY_WORKSPACE_MEMBERS_POST", "name": "Add Workspace Member", "description": "Tool to add a new member to workspace with email and role. Use when you need to invite a new team member to the workspace with specific role and permissions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "instantly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Instantly API Key", "type": "string", "description": "Your Instantly API key — lets Composio access your campaigns and leads. Create one under Settings → Integrations → API Keys; must be a v2 key (v1 keys no longer work).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "intelliprint", "name": "Intelliprint", "logo": "https://logos.composio.dev/api/intelliprint", "description": "Intelliprint offers a Hybrid Mail API that enables businesses to automate their letter printing and mailing processes, providing features like same-day printing, secure authentication, and real-time tracking.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "INTELLIPRINT_CANCEL_DELETE_PRINT_JOB", "name": "Cancel or Delete Print Job", "description": "Cancel or delete an existing print job by its ID. Unconfirmed jobs are deleted immediately; confirmed jobs (not yet shipped) are cancelled with a refund. Important: Testmode print jobs cannot be cancelled - only live print jobs support cancellation." }, { "slug": "INTELLIPRINT_CREATE_BACKGROUND", "name": "Create background", "description": "Create a new Background by uploading a PDF file. Backgrounds are used as base layers for print jobs (e.g., letterheads, invoice templates). Use this tool when you need to upload a new background PDF that can be applied to print jobs." }, { "slug": "INTELLIPRINT_CREATE_MAILING_LIST", "name": "Create Mailing List", "description": "Create a mailing list to store thousands of recipients and send mail items to all of them at once. Use this tool when you need to create a new mailing list for bulk mailings. Recipients can be added in bulk during creation or added later. Mailing lists support dynamic fields (variables) for personalizing templates per recipient." }, { "slug": "INTELLIPRINT_CREATE_MAILING_LIST_RECIPIENT", "name": "Create Mailing List Recipient", "description": "Tool to create a new recipient within a mailing list. Use when you need to add an individual contact who will receive mail campaigns. Recipients must have at minimum an address line; name, postcode, and country are optional." }, { "slug": "INTELLIPRINT_CREATE_PRINT_JOB", "name": "Create Print Job", "description": "Create a new print job in Intelliprint by uploading a document. Use this tool to submit documents for postal mailing. Jobs can be created as drafts (confirmed=False) for review/editing, or confirmed immediately (confirmed=True) for printing and dispatch. Test mode (testmode=True) allows testing without charges or actual mailing." }, { "slug": "INTELLIPRINT_DELETE_BACKGROUND", "name": "Delete Background", "description": "Tool to delete a background by ID. Use when you need to remove a background that is no longer needed. Fails if any print job has used this background in the last 90 days." }, { "slug": "INTELLIPRINT_DELETE_MAILING_LIST", "name": "Delete Mailing List", "description": "Tool to delete a mailing list along with all the recipients in the mailing list. Use when you need to remove a mailing list permanently." }, { "slug": "INTELLIPRINT_DELETE_MAILING_LIST_RECIPIENT", "name": "Delete Mailing List Recipient", "description": "Delete a recipient by ID from a specified mailing list. Use when you need to remove a recipient from a mailing list." }, { "slug": "INTELLIPRINT_GET_MAILING_LIST", "name": "Get Mailing List", "description": "Tool to retrieve a single mailing list by its ID. Use when you need details about a specific mailing list including recipients count, address validation status, and dynamic variables." }, { "slug": "INTELLIPRINT_GET_MAILING_LIST_RECIPIENT", "name": "Get Mailing List Recipient", "description": "Tool to retrieve a single recipient by ID within a specified mailing list. Use when you need details about a specific mailing list recipient." }, { "slug": "INTELLIPRINT_LIST_BACKGROUNDS", "name": "List Backgrounds", "description": "Tool to list backgrounds with optional filtering and pagination. Use after uploading or managing backgrounds to retrieve current entries. Example: 'List backgrounds for team=team_1234 with limit=50 and skip=10'." }, { "slug": "INTELLIPRINT_LIST_MAILING_LIST_RECIPIENTS", "name": "List Mailing List Recipients", "description": "Tool to list all recipients in a mailing list with pagination and sorting options. Use when you need to retrieve recipients from a specific mailing list." }, { "slug": "INTELLIPRINT_LIST_MAILING_LISTS", "name": "List Mailing Lists", "description": "Tool to list all available mailing lists with pagination and sorting options. Use when you need to retrieve mailing lists for print jobs or to view existing lists." }, { "slug": "INTELLIPRINT_LIST_PRINT_JOBS", "name": "List Print Jobs", "description": "Tool to list print jobs with optional filters and pagination. Use after confirming API key." }, { "slug": "INTELLIPRINT_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all available templates. Use after authenticating API key to browse available templates." }, { "slug": "INTELLIPRINT_MERGE_FILES", "name": "Merge Files", "description": "Merges multiple PDF, RTF, or Word documents into a single PDF file. Use this tool when you need to: - Combine multiple PDF files into one - Merge Word documents (.doc, .docx) into a single PDF - Combine RTF files with PDFs or Word documents - Create a unified document from separate files The merged output is always a PDF file, regardless of input file types. Files are merged in the order they are provided in the request. A download link is returned that is valid for approximately 1 hour." }, { "slug": "INTELLIPRINT_RETRIEVE_BACKGROUND", "name": "Retrieve Background", "description": "Tool to retrieve a specific Background by ID. Use when you need background details before further processing." }, { "slug": "INTELLIPRINT_RETRIEVE_PRINT_JOB", "name": "Retrieve Print Job", "description": "Tool to retrieve details of a Print Job by its ID. Use when you have a valid print_id and need full job specifications." }, { "slug": "INTELLIPRINT_UPDATE_BACKGROUND", "name": "Update Background", "description": "Tool to update an existing Background's name or team. Use when you need to change a background after creation. Example: 'Update background bg_123abc to new name'." }, { "slug": "INTELLIPRINT_UPDATE_MAILING_LIST", "name": "Update Mailing List", "description": "Tool to update a mailing list. Use when you need to update the name, add or replace recipients in bulk, or configure address validation. Can add recipients to existing list or replace all recipients by setting delete_old_recipients to True." }, { "slug": "INTELLIPRINT_UPDATE_MAILING_LIST_RECIPIENT", "name": "Update Mailing List Recipient", "description": "Tool to update an existing recipient in a mailing list by ID. Use when you need to modify recipient address details or custom variables for personalized mailings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "intelliprint_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Intelliprint API Key", "type": "string", "description": "The API key used for authenticating requests to the Intelliprint API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ip2location", "name": "Ip2Location", "logo": "https://www.ip2location.io/images/logo.png", "description": "IP2Location.io provides fast and accurate IP geolocation data, including country, city, ISP, latitude, longitude, and more, supporting both IPv4 and IPv6 lookups.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IP2LOCATION_BULK_IP_GEOLOCATION", "name": "Bulk IP Geolocation", "description": "Retrieve geolocation information for multiple IP addresses in a single request. Supports batch processing of 1-1000 IPv4 or IPv6 addresses with flexible output formats (JSON or CSV) and customizable field selection. Returns comprehensive data including country, region, city, coordinates, timezone, ASN, and proxy detection. Note: Automatically falls back to individual lookups if bulk endpoint is unavailable." }, { "slug": "IP2LOCATION_CHECK_CREDITS", "name": "Check IP2Location API Credits", "description": "Tool to check remaining IP2Location API credits. Use after setting up authentication to monitor usage." }, { "slug": "IP2LOCATION_DISTANCE", "name": "IP2Location Distance Calculator", "description": "Calculate the great-circle distance between two IP addresses based on their geographic locations. This tool looks up the geolocation (latitude/longitude) for each IP address and calculates the shortest distance between them over the Earth's surface using the Haversine formula. Supports both IPv4 and IPv6 addresses. Returns the distance in kilometers along with the coordinates of both IPs. Use when you need to determine geographic separation between two IP addresses, such as for latency estimation, geographic analysis, or network optimization." }, { "slug": "IP2LOCATION_GET_HOSTED_DOMAINS", "name": "IP2WHOIS Hosted Domains Lookup", "description": "Retrieves a list of domain names hosted on a specific IP address (IPv4 or IPv6). Use this tool when you need to: - Discover which domains are hosted on a particular IP - Investigate shared hosting environments - Analyze domain-to-IP relationships The API supports pagination for IPs with many hosted domains." }, { "slug": "IP2LOCATION_GET_IP_GEOLOCATION", "name": "IP2Location Get IP Geolocation", "description": "Tool to retrieve geolocation data for an IP address. Use when detailed IP location info is needed." }, { "slug": "IP2LOCATION_GET_PROXY_DETECTION", "name": "IP2Proxy: Get Proxy Detection", "description": "Tool to detect if an IP is a proxy, VPN, or TOR exit node. Use when verifying anonymizing services." }, { "slug": "IP2LOCATION_IP2_WHOIS_DOMAIN_WHOIS", "name": "IP2WHOIS Domain WHOIS Lookup", "description": "Tool to retrieve WHOIS information for a domain. Use when you need domain registration details." }, { "slug": "IP2LOCATION_LIST_IPS", "name": "IP2Location List IPs", "description": "Tool to list a curated set of test IPv4 and IPv6 addresses. Use when sample IPs are needed for IP2Location or IP2Proxy lookups during development or testing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ip2location_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "IP2Location.io API Key", "type": "string", "description": "The API key provided by IP2Location.io for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ip2location_io", "name": "IP2Location.io", "logo": "https://logos.composio.dev/api/ip2location_io", "description": "IP2Location.io provides a fast and accurate IP Geolocation API tool to determine a user's location and use the geolocation information in different use cases.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IP2LOCATION_IO_BULK_IP_GEOLOCATION", "name": "Bulk IP Geolocation", "description": "Tool to retrieve geolocation information for multiple IP addresses in bulk. Use when processing up to 1000 IPs at once." }, { "slug": "IP2LOCATION_IO_DOMAIN_WHOIS", "name": "Domain WHOIS Lookup", "description": "Tool to retrieve WHOIS information for a given domain. Use when you need domain registration and contact details via IP2WHOIS API." }, { "slug": "IP2LOCATION_IO_GET_API_KEY", "name": "Get API Key", "description": "Tool to retrieve the configured API key. Use when authentication is needed for IP2Location.io requests." }, { "slug": "IP2LOCATION_IO_GET_IP_GEOLOCATION", "name": "Get IP Geolocation", "description": "Tool to retrieve comprehensive geolocation data for an IPv4 or IPv6 address. Returns location details including country, region, city, coordinates, timezone, ISP, ASN, and proxy information." }, { "slug": "IP2LOCATION_IO_IP2_WHOIS_HOSTED_DOMAIN", "name": "IP2WHOIS Hosted Domain", "description": "Tool to retrieve hosted domain names by IP address. Use when you need to list domains hosted on a given IP. Call after confirming the IP." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ip2location_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "IP2Location.io API Key", "type": "string", "description": "Your unique API key for authenticating requests to IP2Location.io.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ip2proxy", "name": "Ip2Proxy", "logo": "https://logos.composio.dev/api/ip2proxy", "description": "IP2Proxy is a proxy detection web service that identifies anonymous proxies, VPNs, TOR exit nodes, search engine robots, and residential proxies by IP address.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IP2PROXY_CHECK_PROXY", "name": "Check Proxy Status of an IP", "description": "Tool to check if an IP address is a proxy. Use after obtaining an IP to detect proxy, VPN, or Tor status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ip2proxy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "IP2Proxy API Key", "type": "string", "description": "The API key obtained from IP2Proxy for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ip2whois", "name": "Ip2Whois", "logo": "https://www.ip2whois.com/images/logo.png", "description": "IP2WHOIS provides a WHOIS lookup API that returns comprehensive domain information, including creation date, updated date, expiration date, domain age, registrant contact information, and nameservers.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IP2WHOIS_DOMAIN_LOOKUP", "name": "IP2WHOIS Domain Lookup", "description": "Retrieves WHOIS registration data for any domain. Returns registrar info, registration/expiration dates, domain age, nameservers, and contact details (registrant, admin, tech, billing). Use to investigate domain ownership, check availability, verify legitimacy, or research competitors. Note: Some data may be redacted due to WHOIS privacy protection." }, { "slug": "IP2WHOIS_HOSTED_DOMAINS_LOOKUP", "name": "Hosted Domains Lookup", "description": "Tool to retrieve hosted domains for a given IP address. Use this after validating the IP." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ip2whois_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "IP2WHOIS API Key", "type": "string", "description": "The API key provided by IP2WHOIS for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ipdata_co", "name": "Ipdata.co", "logo": "https://ipdata.co/static/images/ipdata-logo.png", "description": "ipdata provides a simple HTTP-based API that allows you to look up the location, ownership, and threat profile of any IP address.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IPDATA_CO_ADVANCED_ASN_LOOKUP", "name": "Advanced ASN Lookup", "description": "Tool to perform advanced ASN lookup returning prefixes, peers, and registry details. Use after confirming ASN number when detailed ASN info is required." }, { "slug": "IPDATA_CO_EU_LOOKUP_SPECIFIC_IP", "name": "EU IP Lookup (Specific IP)", "description": "Lookup geolocation, threat intel, and network data for a specific IP address using the EU data residency endpoint. Use this tool when: - You need IP lookup with GDPR compliance (data processed and stored only within EU datacenters) - Looking up any IPv4 or IPv6 address for location, ASN, threat, or company information The EU endpoint (eu-api.ipdata.co) ensures all API requests are routed through EU-based servers in Frankfurt, Paris, and Ireland." }, { "slug": "IPDATA_CO_FIELD_CALLING_CODE", "name": "IPData: Calling Code", "description": "Tool to fetch the international calling_code for an IP's country. Use when you need only the calling code field from ipdata_co." }, { "slug": "IPDATA_CO_FIELD_CARRIER", "name": "IPDATA Field Carrier", "description": "Retrieve mobile carrier information (name, MCC, MNC) for an IP address. Returns carrier data only for mobile network IPs; non-mobile IPs return null fields." }, { "slug": "IPDATA_CO_FIELD_CITY", "name": "Get City from IP", "description": "Tool to return only city for an IP. Use when only the city name is required." }, { "slug": "IPDATA_CO_FIELD_CONTINENT_CODE", "name": "IPData: Continent Code", "description": "Retrieve the continent code for a given IP address. Returns a two-letter code (AF, AN, AS, EU, NA, OC, SA) indicating which continent the IP is geographically located in. Use this when you only need the continent information without full IP geolocation details." }, { "slug": "IPDATA_CO_FIELD_CONTINENT_NAME", "name": "Get Continent Name from IP", "description": "Tool to return only continent name for an IP. Use when only the continent name is required." }, { "slug": "IPDATA_CO_FIELD_COUNT", "name": "IPDATA Field Count", "description": "Tool to return only the request count made by your API key in the last 24 hours. Use when monitoring your API usage and you only need the total count." }, { "slug": "IPDATA_CO_FIELD_COUNTRY_CODE", "name": "IPData: Country Code", "description": "Tool to return only country_code for an IP. Use when only the 2-letter country code is required." }, { "slug": "IPDATA_CO_FIELD_COUNTRY_NAME", "name": "Get Country Name from IP", "description": "Get the country name for an IP address using ipdata.co geolocation API. Returns only the country name (e.g., 'United States', 'Germany', 'Japan'). Use this lightweight action when you only need the country name without full IP details." }, { "slug": "IPDATA_CO_FIELD_CURRENCY", "name": "IPDATA Field Currency", "description": "Tool to return only currency object for an IP. Use when currency details are needed." }, { "slug": "IPDATA_CO_FIELD_EMOJI_FLAG", "name": "Get Emoji Flag from IP", "description": "Tool to return only emoji flag for an IP. Use when only the country flag emoji is required." }, { "slug": "IPDATA_CO_FIELD_EMOJI_UNICODE", "name": "Get Emoji Unicode from IP", "description": "Tool to return only emoji_unicode for an IP. Use when only the Unicode country flag emoji is required." }, { "slug": "IPDATA_CO_FIELD_IP", "name": "IPData: IP", "description": "Retrieve the public IP address of the calling client. This action calls the IPData API to determine the caller's external/public IP address. It returns only the IP string with no additional geolocation data. Use this when you need to identify your own public IP address." }, { "slug": "IPDATA_CO_FIELD_IS_EU", "name": "IPData: Is EU", "description": "Tool to return only is_eu for an IP. Use when you need to determine if an IP's country belongs to the EU." }, { "slug": "IPDATA_CO_FIELD_LANGUAGES", "name": "IPData: Languages", "description": "Tool to return only the languages array for an IP. Use when only language details for an IP are required." }, { "slug": "IPDATA_CO_FIELD_LATITUDE", "name": "IPData: Latitude", "description": "Tool to return only the latitude for an IP. Use when only the latitude coordinate is needed." }, { "slug": "IPDATA_CO_FIELD_LONGITUDE", "name": "Get Longitude from IP", "description": "Tool to return only longitude for an IP. Use when only the longitude value is required." }, { "slug": "IPDATA_CO_FIELD_POSTAL", "name": "IPData: Postal Code", "description": "Tool to return only postal code for an IP. Use when only the postal code (ZIP/postcode) is required." }, { "slug": "IPDATA_CO_FIELD_REGION", "name": "Get Region from IP", "description": "Tool to return only region for an IP. Use when only the region name is required." }, { "slug": "IPDATA_CO_FIELD_REGION_CODE", "name": "IPData: Region Code", "description": "Tool to return only region_code for an IP. Use when only the ISO 3166-2 region code is required." }, { "slug": "IPDATA_CO_FIELD_THREAT", "name": "Get Threat for IP", "description": "Retrieve threat intelligence data for a specific IP address or the calling IP. Returns indicators such as Tor exit node status, proxy detection, datacenter/cloud provider identification, known attacker/abuser flags, and blocklist appearances. Use this tool when you need to assess the security risk or reputation of an IP address." }, { "slug": "IPDATA_CO_FIELD_TIME_ZONE", "name": "IPData: Time Zone", "description": "Tool to return only the time_zone object for an IP. Use when only timezone data is required." }, { "slug": "IPDATA_CO_IP_DATA_BASIC_ASN_FOR_IP", "name": "IPData Basic ASN for IP", "description": "Tool to return basic ASN data for a specific IP. Use when you need ASN number, organization, domain, route, and type details." }, { "slug": "IPDATA_CO_IPDATA_BULK_LOOKUP_V1", "name": "IPData Bulk Lookup V1", "description": "Tool to bulk lookup up to 100 IP addresses via ipdata.co. Use when you have multiple IPs and need geolocation and threat data in one call." }, { "slug": "IPDATA_CO_IP_DATA_COMPANY_FOR_IP", "name": "Get company data for IP", "description": "Tool to retrieve company data for a given IP address. Use when you need the organization name, domain, network prefix, and usage type for an IPv4 or IPv6." }, { "slug": "IPDATA_CO_IPDATA_EU_LOOKUP_CALLING_IP", "name": "EU IP Lookup (Calling IP)", "description": "Lookup geolocation, network, and threat data for the calling client's IP address using the EU-residency endpoint. Use this action when you need IP data processed and stored entirely within the European Union (GDPR compliance). The EU endpoint routes requests only through EU datacenters (Frankfurt, Paris, Ireland). This action automatically detects and returns data for the IP address making the API request. No IP address parameter is needed." }, { "slug": "IPDATA_CO_IP_DATA_LOOKUP_IP_V1", "name": "IPData Lookup IP V1", "description": "Tool to lookup comprehensive IP information (geolocation, network, company, and threat data) in one call. Use when you need all IP insights together." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ipdata_co_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ipdata API Key", "type": "string", "description": "Your unique API key for authenticating requests to the ipdata API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ipinfo_io", "name": "Ipinfo.io", "logo": "https://ipinfo.io/static/images/ipinfo-logo.png", "description": "IPinfo.io provides a comprehensive API for IP address geolocation and related data.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IPINFO_IO_BATCH_LITE_LOOKUP", "name": "Batch Lite Lookup", "description": "Perform bulk Lite IP lookups for up to 1000 IPs in a single request. Returns lightweight IP information including ASN (Autonomous System Number), AS organization details, and geolocation (country and continent). Use cases: - Look up geolocation for multiple IPs at once - Identify the ISP/organization owning IP addresses - Detect bogon/private IPs (192.168.x.x, 10.x.x.x, etc.) - Retrieve specific fields only (e.g., '8.8.8.8/country' returns just the country) Supports both IPv4 and IPv6 addresses." }, { "slug": "IPINFO_IO_BATCH_LOOKUP", "name": "Batch IP Lookup", "description": "Perform batch IP lookups to retrieve geolocation and ASN information for multiple IPs in a single request. Use this tool when you need to look up multiple IP addresses efficiently. Supports up to 1000 IPs per request. IMPORTANT: For free tier API tokens, prefix each IP with 'lite/' (e.g., 'lite/8.8.8.8'). Bare IPs without the 'lite/' prefix require a paid subscription." }, { "slug": "IPINFO_IO_GET_ABUSE_CONTACT", "name": "Get Abuse Contact", "description": "Retrieve abuse contact and organization information for an IP address. Use this tool when you need to identify who owns an IP address or find contact information for reporting malicious activity. Note: Full abuse contact details (email, phone, name) require IPinfo Enterprise tier. For standard tiers, returns organization info (org, country, city, region) which can be used to identify the IP owner." }, { "slug": "IPINFO_IO_GET_CARRIER_INFO", "name": "Get IP Carrier Info", "description": "Retrieves mobile carrier information for a given IP address. Returns the carrier name, Mobile Country Code (MCC), and Mobile Network Code (MNC) for mobile network IPs. For non-mobile IPs (e.g., datacenter, ISP), returns the organization/ASN name with empty MCC/MNC values. Useful for identifying if an IP belongs to a mobile carrier network and which carrier it is." }, { "slug": "IPINFO_IO_GET_CITY_BY_IP", "name": "Get City by IP", "description": "Retrieve the city name for a specific IP address. Returns the city name as plain text for any IPv4 or IPv6 address." }, { "slug": "IPINFO_IO_GET_COMPANY_INFO", "name": "Get Company Info for an IP", "description": "Retrieve company/organization information for an IP address. Returns the company name, domain, and type (business, ISP, hosting, etc.) associated with the IP. Supports both IPv4 and IPv6 addresses." }, { "slug": "IPINFO_IO_GET_CORE_FIELD_BY_ME", "name": "Get Core Field by Me", "description": "Retrieve a specific field from core IP information about the current IP. Use this tool when you need just one specific piece of information (like city, country, hostname, or AS details) about the caller's IP address instead of fetching the complete IP profile." }, { "slug": "IPINFO_IO_GET_COUNTRY_BY_IP", "name": "Get Country by IP", "description": "Retrieve the two-letter ISO 3166 country code for an IP address. Use when you need to quickly identify which country an IP address is located in without requesting full geolocation details." }, { "slug": "IPINFO_IO_GET_CURRENT_IP", "name": "Get Current IP", "description": "Retrieve the current public/external IP address. Use this tool when you need to determine the caller's public IP address." }, { "slug": "IPINFO_IO_GET_CURRENT_IP_INFO", "name": "Get Current IP Information", "description": "Retrieve comprehensive IP information about the caller's current IP address. Returns geolocation (city, region, country, coordinates, postal code, timezone), ASN details, company info, privacy detection flags (VPN/proxy/Tor), carrier info for mobile IPs, and abuse contact information. Use this when you need to identify and analyze the caller's IP address without specifying an IP parameter." }, { "slug": "IPINFO_IO_GET_CURRENT_LOC", "name": "Get Current Location", "description": "Retrieve geographic coordinates for the current IP address. Returns the latitude and longitude of the caller's IP address as a comma-separated string in the format 'latitude,longitude'. Use this when you need quick location coordinates without full geolocation details." }, { "slug": "IPINFO_IO_GET_CURRENT_REGION", "name": "Get Current Region", "description": "Retrieve the region/state for the caller's current IP address. Use this tool when you need to identify the geographic region or state where the current IP address is located. Returns a plain text region name." }, { "slug": "IPINFO_IO_GET_GEO_BY_IP", "name": "Get Geo by IP", "description": "Get geolocation data only for an IP address. Returns city, region, country, continent, coordinates, timezone, and postal code. Use this when you need detailed geographic location information for an IP address." }, { "slug": "IPINFO_IO_GET_HOSTNAME_BY_IP", "name": "Get Hostname by IP", "description": "Retrieve the hostname (reverse DNS) for an IP address. Use this tool to look up the hostname associated with any IPv4 or IPv6 address. Returns the hostname as a string. If no hostname is available, returns an empty string." }, { "slug": "IPINFO_IO_GET_IP_BY_IP", "name": "Get IP by IP", "description": "Retrieve the IP address for a specified IP as plain text. Use this tool to echo back an IP address from the IPInfo API. This endpoint returns the IP address as plain text (not JSON). Useful for verifying IP address formatting or testing connectivity." }, { "slug": "IPINFO_IO_GET_IP_INFO", "name": "Get IP Information", "description": "Retrieve geolocation and ASN information for an IP address. Use this tool to look up country, continent, and Autonomous System (AS) details for any IPv4 or IPv6 address. Pass 'me' or omit the ip parameter to get information about the caller's own IP address. For private/reserved (bogon) IP addresses like 192.168.x.x or 10.x.x.x, only the ip and bogon fields will be populated." }, { "slug": "IPINFO_IO_GET_IP_INFO_BY_IP", "name": "Get Comprehensive IP Information", "description": "Retrieve comprehensive information about a specified IP address. Returns geographic location (city, region, country, coordinates), ASN details, company/organization info, privacy detection flags (VPN, proxy, Tor), carrier information for mobile IPs, and associated domain names. Supports both IPv4 and IPv6 addresses." }, { "slug": "IPINFO_IO_GET_LITE_FIELD_BY_IP", "name": "Get Lite Field By IP", "description": "Retrieve a specific field from lightweight IP information. Use this tool to get a single piece of information about an IP address (e.g., just the country, or just the ASN) without fetching the full IP data. This is more efficient when you only need one specific field. Supported fields: ip, asn, as_name, as_domain, country_code, country, continent_code, continent." }, { "slug": "IPINFO_IO_GET_LOCATION_BY_IP", "name": "Get Location by IP", "description": "Retrieve geographic coordinates (latitude, longitude) for an IP address. Returns location as comma-separated text in the format 'latitude,longitude'. Use when you need precise geolocation coordinates for IPv4 or IPv6 addresses." }, { "slug": "IPINFO_IO_GET_ORG_BY_IP", "name": "Get Organization by IP", "description": "Retrieve ASN and organization name for an IP address as plain text. Use this tool when you need to quickly identify which organization or ASN owns a specific IP address. Returns a plain text string containing the Autonomous System Number (ASN) and organization name (e.g., 'AS15169 Google LLC')." }, { "slug": "IPINFO_IO_GET_PLUS_FIELD_BY_ME", "name": "Get Plus Field for Current IP", "description": "Retrieve a specific field from plus IP information about the current IP. Use this tool to get individual fields from IPInfo's Plus API for your current IP address. This includes detailed geographic data (city, region, coordinates), AS information, mobile carrier details, and privacy flags. Each field returns its specific data type (string, number, boolean, or object). Note: This endpoint requires a Plus API subscription. Returns 403 if the subscription doesn't include Plus features." }, { "slug": "IPINFO_IO_GET_POSTAL_BY_IP", "name": "Get Postal Code by IP", "description": "Retrieve the postal/zip code for an IP address. Use this when you need to identify the geographic postal code associated with an IPv4 or IPv6 address." }, { "slug": "IPINFO_IO_GET_PRIVACY_DETAILS", "name": "Get IP Privacy Details", "description": "Retrieve privacy/anonymous IP detection flags for an IP address. Returns whether the IP is associated with VPN, proxy, Tor, relay, or hosting services. Use this to detect potentially anonymous or masked traffic from an IP address. Note: This endpoint requires a Privacy Detection API subscription. If privacy data is unavailable for your subscription level, the action will return default values (all flags set to False)." }, { "slug": "IPINFO_IO_GET_REGION_BY_IP", "name": "Get Region by IP", "description": "Retrieve the region/state for a specified IP address. Use this tool when you need to identify the geographic region or state where a specific IPv4 or IPv6 address is located. Returns a plain text region name." }, { "slug": "IPINFO_IO_GET_TIMEZONE_BY_IP", "name": "Get Timezone by IP", "description": "Retrieve the IANA timezone for a given IP address. Use this tool when you need to determine the local timezone of an IP address location for scheduling, time conversion, or geographic analysis purposes." }, { "slug": "IPINFO_IO_GET_TOKEN_INFO", "name": "Get Token Information", "description": "Retrieve API service request limit information by access token. Returns usage statistics, request limits, remaining quota, and available API features. Use this to check your token's rate limits, current usage, and feature access before making other API calls." }, { "slug": "IPINFO_IO_MAP_IPS", "name": "Map IP Addresses", "description": "Create an IPinfo map visualization from a list of IP addresses. Use this tool to generate an interactive map showing the geographic locations of multiple IP addresses. The tool accepts up to 500,000 IPs and returns a link to a visual map where all IP locations are plotted. Useful for visualizing the geographic distribution of network traffic, analyzing user locations, or investigating security incidents across multiple IP addresses." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ipinfo_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "IPinfo.io API Token", "type": "string", "description": "Your unique API token for authenticating requests to the IPinfo.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "iqair_airvisual", "name": "Iqair Airvisual", "logo": "https://logos.composio.dev/api/iqair_airvisual", "description": "IQAir AirVisual provides global air quality data through its API, offering real-time and historical information on air pollution levels.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "IQAIR_AIRVISUAL_GET_AIR_QUALITY_FORECAST_DATA", "name": "Get Air Quality Forecast Data", "description": "Tool to retrieve air quality forecast data for a specified city, state, and country. Use after confirming location details." }, { "slug": "IQAIR_AIRVISUAL_GET_CITIES", "name": "Get Cities", "description": "Tool to list supported cities in a specified state and country. Use when you need to retrieve cities for a given state/country." }, { "slug": "IQAIR_AIRVISUAL_GET_CITY_AIR_QUALITY", "name": "Get City Air Quality", "description": "Tool to retrieve air quality data for a specific city. Use when you need current pollution and weather data by specifying city, state, and country." }, { "slug": "IQAIR_AIRVISUAL_GET_COUNTRIES", "name": "Get supported countries", "description": "Tool to list all supported countries. Use when you need to know which countries are supported by the AirVisual API." }, { "slug": "IQAIR_AIRVISUAL_GET_HISTORICAL_AQI_DATA", "name": "Get Historical AQI Data", "description": "Tool to retrieve historical air quality data for a city. Use after confirming city, state, and country when you need AQI readings over time." }, { "slug": "IQAIR_AIRVISUAL_GET_NEAREST_CITY_AIR_QUALITY", "name": "Get Nearest City Air Quality", "description": "Tool to retrieve air quality data for the nearest city based on latitude/longitude or IP. Use when you have precise location data or want to geolocate an IP for air quality." }, { "slug": "IQAIR_AIRVISUAL_GET_NEAREST_STATION_AIR_QUALITY", "name": "Get Nearest Station Air Quality", "description": "Tool to get nearest station air quality. Use when you have GPS coordinates and need closest station’s AQI." }, { "slug": "IQAIR_AIRVISUAL_GET_STATES", "name": "Get States", "description": "Tool to list supported states in a specified country. Use when you need to retrieve states/provinces for a given country." }, { "slug": "IQAIR_AIRVISUAL_GET_STATION_BY_ID", "name": "Get Station by ID", "description": "Fetches current air quality and weather data for a specific location by station/city/state/country names. Falls back to city-level data if the Stations API requires premium access. Returns current AQI (US and China scales), weather conditions, and geographic location. Use Get Countries, Get States, and Get Cities actions to find valid location names." }, { "slug": "IQAIR_AIRVISUAL_GET_WORLD_RANKING", "name": "Get World AQI Rankings", "description": "Retrieves air quality ranking data. With premium API access, returns a global ranking of cities by AQI. With standard (free) API access, automatically falls back to returning the nearest city's air quality as a single-item ranking list. Use lat/lon coordinates or an IP address to specify location for the fallback behavior. Returns city name, location, and current AQI values (US EPA and Chinese MEP standards)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "iqair_airvisual_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "IQAir AirVisual API Key", "type": "string", "description": "Your unique API key for accessing the IQAir AirVisual API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "iterable", "name": "Iterable", "logo": "https://logos.composio.dev/api/iterable", "description": "Cross-channel marketing platform for creating, executing, and optimizing campaigns", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 116, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ITERABLE_ABORT_CAMPAIGN", "name": "Abort Campaign", "description": "Abort a running campaign to stop all in-progress message deliveries. Use this action when you need to immediately halt an active campaign that is currently sending messages to recipients. This action is useful for emergency stops, such as when an issue is discovered in the campaign content or targeting. Note: Only campaigns in 'Running' state can be aborted. Campaigns that have already finished or were not started cannot be aborted." }, { "slug": "ITERABLE_ACTIVATE_TRIGGERED_CAMPAIGN", "name": "Activate a triggered campaign", "description": "Activates a triggered campaign by its unique ID, allowing it to process events and send messages. Use this action when you need to start a triggered campaign that will send messages based on user events (e.g., cart abandonment, welcome series, re-engagement). The campaign must be in a valid state for activation (e.g., not already running or finished). Note: API triggered campaign activation must be enabled for your project." }, { "slug": "ITERABLE_ARCHIVE_CAMPAIGNS", "name": "Archive Campaigns", "description": "Archives one or more campaigns. This endpoint behaves the same as the archive feature in the UI. Scheduled or recurring campaigns will be cancelled, and running campaigns will be aborted. Archived campaigns will be hidden from the Campaigns page, but can still be viewed in the Archived tab. Use this action when you need to remove campaigns from the active campaigns list while preserving them for historical reference. This action is irreversible — once archived, campaigns cannot be restored through this API (must be done manually through the UI). Rate limit: 5 requests/second, per API key." }, { "slug": "ITERABLE_BULK_UPDATE_USERS", "name": "Bulk Update Users", "description": "Bulk update user data in Iterable. Use this action when you need to update multiple user profiles at once. This endpoint adds and overwrites user profile fields as needed. It does not modify top-level fields omitted from the request body. If you'd like to merge (rather than overwrite) a user profile's top-level objects with the values provided, set mergeNestedObjects to true. When updating an existing field, you cannot change its data type (the new value must have the same data type as the old value). At least one of email or userId must be provided for each user in the users array." }, { "slug": "ITERABLE_CANCEL_CAMPAIGN", "name": "Cancel Campaign", "description": "Cancel a scheduled or recurring campaign in Iterable. Use when you need to stop a campaign that is scheduled for future sending or is part of a recurring campaign cycle. Once canceled, the campaign will not be sent to any recipients. Note: This action is irreversible for campaigns that are already in the process of sending. Only campaigns with a 'Scheduled' or 'Recurring' state can be canceled." }, { "slug": "ITERABLE_CANCEL_EMAIL", "name": "Cancel Email", "description": "Cancel a scheduled email to a specific user in Iterable. Use when you need to stop an email that has been queued for a specific user but has not yet been sent. You can cancel by providing the scheduledMessageId alone, or by providing a campaignId along with the user's email or userId. Note: This action is irreversible — once an email is canceled, it cannot be sent again using this endpoint. The canceled message will not be delivered to the recipient." }, { "slug": "ITERABLE_CANCEL_EXPORT", "name": "Cancel Export", "description": "Cancel a queued or running export created with the 'Start export' endpoint. Use when you need to abort an export job that is in progress or queued. Rate limit: 1 request/second, per project." }, { "slug": "ITERABLE_CANCEL_IN_APP", "name": "Cancel In-App Message", "description": "Cancel a scheduled in-app message to a specific user in Iterable. Use when you need to stop a scheduled in-app message that is queued for delivery to a specific user. This action cancels the in-app message for the specified user based on their email or userId. Note: This action is irreversible — once an in-app message is canceled, it will not be delivered to the user." }, { "slug": "ITERABLE_CANCEL_PUSH", "name": "Cancel Push", "description": "Cancel a scheduled push notification to a specific user in Iterable. Use when you need to stop a push notification that has been queued for a specific user but has not yet been sent. You can cancel by providing the scheduledMessageId alone, or by providing a campaignId along with the user's email or userId. Note: This action is irreversible — once a push notification is canceled, it cannot be resent using this endpoint. The canceled message will not be delivered to the recipient." }, { "slug": "ITERABLE_CANCEL_WEB_PUSH", "name": "Cancel Web Push", "description": "Cancel a scheduled web push notification to a specific user in Iterable. Use when you need to stop a web push notification that has been queued for a specific user but has not yet been sent. You can cancel by providing the scheduledMessageId alone, or by providing a campaignId along with the user's email or userId. Note: This action is irreversible — once a web push notification is canceled, it cannot be resent using this endpoint. The canceled message will not be delivered to the recipient." }, { "slug": "ITERABLE_CANCEL_WHATS_APP", "name": "Cancel WhatsApp", "description": "Cancel a scheduled WhatsApp message to a specific user in Iterable. Use when you need to stop a WhatsApp message that has been queued for a specific user but has not yet been sent. You can cancel by providing the scheduledMessageId alone, or by providing a campaignId along with the user's email or userId. Note: This action is irreversible — once a WhatsApp message is canceled, it cannot be resent using this endpoint. The canceled message will not be delivered to the recipient." }, { "slug": "ITERABLE_CREATE_CAMPAIGN", "name": "Create a new campaign", "description": "Creates a new blast or triggered campaign from an existing template. Use this action when you need to create email, push notification, web push notification, SMS, in-app message, and embedded message campaigns from an existing template. Note that global suppression lists are not automatically added to campaigns created from this endpoint; to include a global suppression list, include it in the suppressionListIds request parameter." }, { "slug": "ITERABLE_CREATE_CATALOG", "name": "Create a catalog", "description": "Create a catalog with the specified name in Iterable. Use this action when you need to create a new catalog to store and organize data such as products, users, or other entities. Each catalog in a project must have a unique name. Catalog names can be no longer than 255 characters and must contain only alphanumeric characters and dashes." }, { "slug": "ITERABLE_CREATE_CATALOG_ITEMS", "name": "Create Catalog Items", "description": "Asynchronously creates or updates up to 1000 catalog items with a single request. Use this action when you need to bulk create or update catalog items efficiently. If an item with the same ID already exists, it will be completely overwritten, unless replaceUploadedFieldsOnly is set to true to merge fields instead. This operation is asynchronous — the API returns 202 Accepted when the request is queued for processing. The rate limit is 100 requests per second. Note: Each item ID must contain only alphanumeric characters and dashes (max 255 characters), and field names should not contain periods." }, { "slug": "ITERABLE_CREATE_LIST", "name": "Create a new list", "description": "Create a new static list in Iterable. Use this action when you need to create a new contact list that can be used for email campaigns, segmentation, or organizing contacts. Each list must have a unique name within the project. The newly created list starts empty and can be populated by adding contacts via other Iterable API actions." }, { "slug": "ITERABLE_CREATE_SNIPPET", "name": "Create snippet", "description": "Creates a new code snippet in Iterable. Use this action when you need to create a reusable code snippet that can be referenced in campaigns, templates, or other Iterable features. The snippet name must be unique within the project and cannot be changed after creation." }, { "slug": "ITERABLE_DEACTIVATE_TRIGGERED_CAMPAIGN", "name": "Deactivate Triggered Campaign", "description": "Deactivate a triggered campaign in Iterable. Use when you need to stop a triggered campaign from firing based on user events. This action is irreversible — once a triggered campaign is deactivated, it cannot be reactivated through this API. Use the Iterable dashboard or the activate triggered campaign endpoint to reactivate it. Note: Only triggered campaigns can be deactivated. Regular blast campaigns cannot be deactivated using this endpoint." }, { "slug": "ITERABLE_DELETE_BULK_TEMPLATES", "name": "Bulk delete templates", "description": "Bulk delete one or more base templates from Iterable. Use this action when you need to permanently remove multiple templates that are no longer needed. This action is irreversible — templates cannot be recovered once deleted. Note: Templates associated with a campaign will not be deleted and will be skipped." }, { "slug": "ITERABLE_DELETE_CATALOG", "name": "Delete a catalog", "description": "Delete a catalog by its name. This action also deletes all collections that reference the specified catalog. Use this action when you need to permanently remove a catalog and all its associated collections from Iterable. This action is irreversible — the catalog and all associated collections cannot be recovered once deleted." }, { "slug": "ITERABLE_DELETE_CATALOG_ITEM", "name": "Delete a Catalog Item", "description": "Deletes the specified item from a catalog. This action is asynchronous — the data may not be deleted immediately. Use this action when you need to remove a specific item from a catalog by its unique identifier. This action is irreversible — once the item is deleted, it cannot be recovered unless a backup or re-sync mechanism is in place." }, { "slug": "ITERABLE_DELETE_CATALOG_ITEMS", "name": "Delete Catalog Items", "description": "Asynchronously deletes catalog items from a specified catalog in Iterable. Use when you need to remove specific items from a catalog by their IDs. This action processes the deletion asynchronously — the API may return a 202 Accepted status indicating the request has been queued for processing. Important: This action is irreversible — the catalog items cannot be recovered once deleted. Note: This endpoint supports bulk deletion of multiple items at once. Ensure all item IDs in the request are valid and exist in the catalog to avoid partial deletions." }, { "slug": "ITERABLE_DELETE_LIST", "name": "Delete a list", "description": "Delete a list by its listId. Use this action when you need to permanently remove a contact list from Iterable. This action is irreversible — the list and all associated data cannot be recovered once deleted. Note: Lists that are currently in use (e.g., in active campaigns) may not be deletable and will return a 409 error." }, { "slug": "ITERABLE_DELETE_METADATA_TABLE", "name": "Delete Metadata Table", "description": "Asynchronously deletes a metadata table by its table name. Use when you need to permanently remove a metadata table from Iterable. This action is asynchronous - a 200 response indicates a valid request that will be processed, but the table may not be deleted immediately. Use GET /api/metadata/{table} to verify that the deletion is complete. This action is irreversible — the table and all associated data cannot be recovered once deleted." }, { "slug": "ITERABLE_DELETE_SNIPPET", "name": "Delete snippet", "description": "Deletes a snippet by its ID (numeric) or name (string). Numeric identifiers are treated as snippet IDs, string identifiers as snippet names. Use this action when you need to remove a snippet that is no longer needed. This action is irreversible - the snippet cannot be recovered once deleted." }, { "slug": "ITERABLE_DELETE_USER_BY_ID", "name": "Delete User By ID", "description": "Asynchronously deletes a user by userId from Iterable. Use when you need to remove a user from Iterable's system by their userId. This action does not prevent future data collection about the user. If multiple users share the same userId, they'll all be deleted. This endpoint can be used to delete users from email-based projects, userID-based projects, and hybrid projects. Important: This action is irreversible — the user data cannot be recovered once deleted. Note: userId values containing a '/' character are not supported by this endpoint." }, { "slug": "ITERABLE_EXPORT_DATA_CSV", "name": "Export data to CSV", "description": "Export campaign analytics data in CSV format from Iterable. Use when you need to retrieve event data such as email sends, opens, clicks, push notifications, SMS messages, purchases, or custom events. Note: Either use the 'range' parameter (recommended for simple date filtering) OR use 'startDateTime' and 'endDateTime' together for custom date ranges. Using both will result in an error. Rate limit: 4 requests per minute per project." }, { "slug": "ITERABLE_EXPORT_DATA_JSON", "name": "Export Campaign Data to JSON", "description": "Export campaign analytics data in JSON format with one entry per line. Use when you need to retrieve campaign metrics such as email sends, opens, clicks, purchases, or custom events. Rate limit: 4 requests per minute per project. Either 'range' OR 'startDateTime'/'endDateTime' must be provided." }, { "slug": "ITERABLE_EXPORT_USER_EVENTS", "name": "Export User Events", "description": "Export all events for a user identified by email or userId. Returns events as JSON, one event per line. Use this action when you need to retrieve the complete event history for a specific user in Iterable. Either email or userId must be provided, but not both. Custom events are excluded by default unless includeCustomEvents is set to true." }, { "slug": "ITERABLE_FORGET_USER", "name": "Forget User", "description": "Deletes the specified user's data from the Iterable project and prevents future data collection about them. This action is used for GDPR compliance. Use this action when you need to permanently remove a user's data from Iterable and ensure no future data is collected about them. In email-based projects, you must forget users by email. In userID-based projects, you must forget users by userId. In hybrid projects, you can forget users by either email or userId. Learn about identifying users by userId and email. Note: This action is irreversible - once a user is forgotten, their data cannot be recovered and future data collection about them is prevented." }, { "slug": "ITERABLE_GET_CAMPAIGN", "name": "Get campaign by ID", "description": "Retrieves a campaign by its unique ID. Use this action when you need to fetch detailed information about a specific campaign from Iterable. The response includes campaign metadata such as state, type, timing, and associated lists or templates." }, { "slug": "ITERABLE_GET_CAMPAIGN_METRICS", "name": "Get Campaign Metrics", "description": "Retrieve performance metrics for one or more campaigns. Use when you need to analyze delivery, open, click, and conversion rates for your email, push, or SMS campaigns. This action allows filtering by specific campaign IDs and/or a date range. Note: Rate limited to 10 requests per minute per project." }, { "slug": "ITERABLE_GET_CATALOG_FIELD_MAPPINGS", "name": "Get Catalog Field Mappings", "description": "Tool to retrieve field mappings (field to data type) and undefined fields for a catalog in Iterable. Use when you need to inspect the schema structure and data type definitions of a catalog." }, { "slug": "ITERABLE_GET_CATALOG_ITEM", "name": "Get catalog item by ID", "description": "Retrieves a specific catalog item by its ID from the specified catalog. Use this action when you need to fetch a single item from a catalog using its unique identifier." }, { "slug": "ITERABLE_GET_EMAIL_TEMPLATE", "name": "Get email template by ID", "description": "Get an email template by templateId. Use this action when you need to retrieve a specific email template from Iterable to view its content, settings, sender configuration, or metadata. The response includes the template's HTML and plain text content, sender information (from email, reply-to), subject line, and various rendering options like data feeds, link parameters, and analytics settings. Optionally, you can specify a locale parameter to retrieve localized content if available." }, { "slug": "ITERABLE_GET_EMBEDDED_MESSAGES", "name": "Get Embedded Messages", "description": "Retrieves embedded messages for which the specified user is eligible, grouped by placementId. Use this action when you need to fetch in-app embedded messages for a user based on their email or userId. By default, it returns data for all placements that have messages for the user. To constrain the response to specific placements, provide one or more placementIds query parameters." }, { "slug": "ITERABLE_GET_EMBEDDED_TEMPLATE", "name": "Get Embedded Template", "description": "Retrieves an embedded message template by its unique ID. Use this action when you need to fetch detailed information about a specific embedded message template from Iterable, including its content, visual elements, and metadata. Optionally filter by locale to retrieve localized content." }, { "slug": "ITERABLE_GET_EXPERIMENT_METRICS", "name": "Get Experiment Metrics", "description": "Retrieve metrics for email experiments. Use when you need to analyze performance data for A/B tests or email experiments. This action allows filtering by specific experiment IDs, campaign IDs, and/or a date range. Currently only email experiment metrics are supported." }, { "slug": "ITERABLE_GET_IN_APP_MESSAGES", "name": "Get In-App Messages", "description": "Get a user's in-app messages from Iterable. This endpoint always returns the user's non-selective (not app-specific) in-app messages. To also fetch app-specific in-app messages, include a packageName and platform in the request. Use this action when you need to retrieve in-app messages for a user, including new messages and messages that have already been saved to a mobile inbox. Each message includes a read field to indicate whether it has been seen." }, { "slug": "ITERABLE_GET_IN_APP_TEMPLATE", "name": "Get in-app template by ID", "description": "Retrieves an in-app template by its unique ID. Use this action when you need to fetch detailed information about a specific in-app template from Iterable, including its content, display settings, and metadata. Optionally specify a locale to retrieve localized content." }, { "slug": "ITERABLE_GET_LIST_SIZE", "name": "Get List Size", "description": "Get the number of users within a list. Returns the count of users currently subscribed to the specified list. Use this action when you need to check how many users are in a specific list for reporting, list management, or campaign planning purposes." }, { "slug": "ITERABLE_GET_PUSH_TEMPLATE", "name": "Get push template by ID", "description": "Retrieves a push template by its unique ID. Use this action when you need to fetch a specific push template from Iterable to view its settings, content, or configuration. The response includes all template properties including message content, buttons, deeplinks, and metadata. Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_GET_SMS_TEMPLATE", "name": "Get SMS template", "description": "Retrieves an SMS template by its unique ID. Use this action when you need to fetch the content, metadata, and settings of a specific SMS template from Iterable. The response includes the template message content, locale information, tracking settings, and other configuration details. Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_GET_SNIPPET", "name": "Get snippet by ID or name", "description": "Retrieves a snippet by its ID (numeric) or name (string). Numeric identifiers are treated as snippet IDs, string identifiers as snippet names. Use this action when you need to retrieve a specific snippet by its identifier to view its content, metadata, or associated variables." }, { "slug": "ITERABLE_GET_TEMPLATE_BY_CLIENT_ID", "name": "Get template by client template ID", "description": "Retrieves an email template by its client-defined template ID. Use this action when you need to find templates using a client-specific identifier rather than the internal Iterable template ID. The response contains a list of templates that match the provided clientTemplateId. Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_GET_USER_BY_ID", "name": "Get User By ID", "description": "Get a user by userId from Iterable. Use when you need to retrieve user information using a specific userId. This action fetches user data including email, userId, and any additional dataFields stored in Iterable. Unlike path-parameter endpoints, this query-parameter-based endpoint provides better support for special characters (such as '/') in the userId value. Rate limit: 100 requests/second per project." }, { "slug": "ITERABLE_GET_USER_BY_ID_PATH", "name": "Get User By ID (Path)", "description": "Get a user by userId (path parameter) from Iterable. Use when you need to retrieve user information using a specific userId as a path parameter. This action fetches user data including email, userId, and any additional dataFields stored in Iterable. Note: This endpoint does not work for userId values that contain a '/' character. For userIds with special characters, use the query-parameter-based GET /api/users/byUserId endpoint instead. Rate limit: 100 requests/second per project." }, { "slug": "ITERABLE_GET_USER_EVENTS", "name": "Get User Events", "description": "Get events for a specific user by userId. Use when you need to retrieve the event history for a particular user from Iterable. This action allows you to fetch a user's event data including campaign interactions, channel activity, and associated metadata. The results can be filtered using the limit parameter to control the number of events returned (max 200). Note: This endpoint does not support userId values containing a '/' character." }, { "slug": "ITERABLE_GET_USER_SENT_MESSAGES", "name": "Get User Sent Messages", "description": "Get messages sent to a user by email address or userId. Use when you need to retrieve the message history for a specific user in Iterable. This action returns messages sent to a user, with optional filtering by campaign, date range, and message type. Returns 10 messages by default, up to a maximum of 1000. Rate limit: 3 requests/second per project. Note: Either email or userId must be provided to identify the user, but not both." }, { "slug": "ITERABLE_GET_WEB_IN_APP_MESSAGES", "name": "Get Web In-App Messages", "description": "Get a user's web in-app messages from Iterable. This endpoint always returns the user's non-selective (not app-specific) web in-app messages. To also fetch web app-specific in-app messages, include a packageName in the request. This endpoint returns new messages and messages that have already been saved to a mobile inbox, and each message has a read field to indicate whether or not it has already been seen. Use when you need to retrieve in-app messages for a user, such as displaying an inbox of notifications or checking unread message status." }, { "slug": "ITERABLE_LIST_CAMPAIGNS", "name": "List all campaigns", "description": "Retrieves metadata about all campaigns in a project with optional pagination. Use this action when you need to enumerate all campaigns in a project, retrieve campaign IDs for subsequent operations, or paginate through large result sets. The response includes campaign metadata such as state, type, timing, and associated lists or templates. If no pagination parameters are provided, the unpaginated API returns all campaigns (deprecated behavior, may be removed in the future). Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_LIST_CATALOG_ITEMS", "name": "List Catalog Items", "description": "Get the catalog items for a catalog. Use when you need to retrieve items stored in a specific Iterable catalog, such as product catalogs, user preferences, or custom data sets. Supports pagination and sorting for large catalogs. Rate limit: 100 requests/second per API key." }, { "slug": "ITERABLE_LIST_CATALOGS", "name": "List Catalogs", "description": "Tool to retrieve all catalog names from Iterable. Use when you need to list available catalogs before performing catalog-specific operations like getting or setting catalog records." }, { "slug": "ITERABLE_LIST_CHANNELS", "name": "List Channels", "description": "Get all message channels within the Iterable project. Use this action when you need to retrieve all available communication channels (e.g., email, push notifications) configured in your Iterable project. This is useful for identifying valid channel options when creating campaigns or managing messaging workflows." }, { "slug": "ITERABLE_LIST_EXPORT_FILES", "name": "List export files", "description": "Get the job status and files for an export started with the 'Start export' endpoint. Occasionally, a job status may change from running to enqueued because it had to restart. When this happens, the job maintains progress and begins where it previously stopped. Iterable uses exponential backoff for retries. Files are added to the list as the export job is running. Paginate through the files by using the last file name in the response as the startAfter value for the next request. Use when you need to monitor export progress, retrieve export results, or paginate through large export file lists." }, { "slug": "ITERABLE_LIST_EXPORT_JOBS", "name": "List Export Jobs", "description": "Retrieve a list of recent export jobs for the current project. Use when you need to monitor export job status, check for completed exports, or manage data export operations." }, { "slug": "ITERABLE_LIST_FORGOTTEN_USER_IDS", "name": "List Forgotten User IDs", "description": "Get hashed user IDs of forgotten users for GDPR compliance. Returns a hash for each userId currently forgotten by your project. Each forgotten userId is lowercased, trimmed, and hashed using SHA-256. Use this action when you need to retrieve forgotten user data for GDPR compliance audits or data subject request processing. Note: This endpoint only works for userID-based and hybrid projects. For email-based projects, it returns an error. Rate limit: 3 requests/second, per project." }, { "slug": "ITERABLE_LIST_JOURNEYS", "name": "List Journeys", "description": "Get a list of journeys (workflows) within your Iterable project. Use this action when you need to retrieve and browse through marketing automation journeys, including their status, configuration, and metadata. Supports pagination, sorting, and filtering by journey state (active, archived, etc.)." }, { "slug": "ITERABLE_LIST_LISTS", "name": "List Lists", "description": "Retrieve all lists within a project. Use when you need to enumerate available lists, retrieve list IDs for subsequent operations, or understand the structure of contact lists. Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_LIST_LIST_USERS", "name": "List List Users", "description": "Get all users within a list. Use when you need to retrieve the complete list of users subscribed to a specific list for export, analysis, or batch operations. This action returns all users in the list (unlike preview which returns a sample). Rate limit: 5 requests/minute, per project." }, { "slug": "ITERABLE_LIST_MESSAGE_TYPES", "name": "List Message Types", "description": "Lists all message types within a project. Use when you need to retrieve all available message types (e.g., Email, Push, SMS) and their associated metadata such as channel ID, subscription policy, and rate limits. Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_LIST_METADATA_KEYS", "name": "List Metadata Keys", "description": "List all keys in a metadata table. Use when you need to discover what keys exist within a specific metadata table (e.g., to find keys before retrieving or deleting individual metadata items). Results may be paginated; use the `nextMarker` parameter to retrieve subsequent pages." }, { "slug": "ITERABLE_LIST_METADATA_TABLES", "name": "List Metadata Tables", "description": "List available metadata tables in Iterable. Use when you need to discover what metadata tables are available for querying (e.g., users, events, campaigns). This action is read-only and idempotent." }, { "slug": "ITERABLE_LIST_RECURRING_CHILD_CAMPAIGNS", "name": "List recurring campaign child campaigns", "description": "Retrieve the child campaigns generated by a recurring campaign. Use when you need to list or monitor campaigns that were created from a recurring campaign template. Pagination is supported using page and pageSize parameters. Rate limit: 100 requests/second per project." }, { "slug": "ITERABLE_LIST_SNIPPETS", "name": "List Snippets", "description": "Get all snippets for the current project. Use this action when you need to retrieve all code snippets available in the Iterable project, including their content, metadata, and associated variables." }, { "slug": "ITERABLE_LIST_TEMPLATES", "name": "List all templates", "description": "Retrieves metadata about all templates in a project with optional pagination. Use this action when you need to enumerate all templates in a project, retrieve template IDs for subsequent operations, or paginate through large result sets. If no pagination parameters are provided, the unpaginated API returns all templates (deprecated behavior, may be removed in the future). Rate limit: 100 requests/second, per project." }, { "slug": "ITERABLE_LIST_USER_FIELDS", "name": "List User Fields", "description": "Get all user fields within a project. Use when you need to discover what custom fields exist for users in your Iterable project, such as for understanding user data schema, creating imports, or validating field names before setting user data. Rate limit: 3 requests/second, per project." }, { "slug": "ITERABLE_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Get all webhooks configured within the Iterable project. Use this action when you need to retrieve all webhook configurations, identify webhook IDs for subsequent operations, or understand the webhook setup for your project. This is useful for auditing webhook settings, checking which events are being monitored, or finding webhook endpoints. This action is read-only and idempotent." }, { "slug": "ITERABLE_MERGE_USERS", "name": "Merge Users", "description": "Merge two user profiles in Iterable. Use when you need to consolidate duplicate user profiles. This action merges all profile data and events from the source user into the destination user. The source user profile will be deleted after the merge is complete. IMPORTANT: Provide exactly one source identifier (sourceEmail OR sourceUserId) and exactly one destination identifier (destinationEmail OR destinationUserId). The action will return an error if the source user does not exist. If the destination user is not found, the source user will be updated instead of merged. This action is irreversible — once merged, the source user profile cannot be recovered. Rate limit: 50 requests/second per API key." }, { "slug": "ITERABLE_PREVIEW_EMAIL_TEMPLATE", "name": "Preview email template", "description": "Generate a fully rendered HTML preview of an email template using custom data. Use this action when you need to preview how an email template will look when rendered with specific data fields or data feed data. This is useful for testing template rendering before sending campaigns, or for verifying template logic with different data scenarios. The preview shows exactly how the template will appear when sent to a user. Note: Fields not provided in the request data will be rendered as empty strings in the preview." }, { "slug": "ITERABLE_PREVIEW_IN_APP_TEMPLATE", "name": "Preview in-app template", "description": "Generate a fully rendered HTML preview of an in-app template using custom data. Use this action when you need to simulate how a template would appear when sent to a user, allowing you to test template rendering with specific data fields and/or data feed data. This is useful for previewing templates before sending campaigns or testing template logic with different data scenarios. Note: If a template references a field that is not provided in the request data, that field will be rendered as an empty string, matching production behavior." }, { "slug": "ITERABLE_PREVIEW_LIST_USERS", "name": "Preview List Users", "description": "Get a random sample of up to 5000 users within a list. Use when you need to quickly preview the users in a specific list without fetching the entire list. This action is useful for sampling list membership before running campaigns or verifying list content. Rate limit: 5 requests/minute, per project." }, { "slug": "ITERABLE_REPLACE_CATALOG_ITEM", "name": "Replace Catalog Item", "description": "Asynchronously creates or replaces the specified catalog item in the given catalog. Use this action when you need to completely replace a catalog item with new data. If the item already exists, it will be fully replaced by the value provided in the request body. Previously existing fields not included in the new value will be lost. This operation is asynchronous — the API returns 202 Accepted when the request is queued for processing. Use GET /api/catalogs/{catalogName}/items/{itemId} to verify completion. Note: A catalog item's ID must be unique, contain only alphanumeric characters and dashes, and have a maximum length of 255 characters. Do not use periods in field names. The rate limit is 1000 requests per second." }, { "slug": "ITERABLE_REPLACE_METADATA_ITEM", "name": "Replace Metadata Item", "description": "Asynchronously creates or replaces the metadata item associated with the specified key. Use when you need to create a new metadata item or completely replace an existing one. A 200 response indicates a valid request that will be processed; updates may not be made immediately. Use GET /api/metadata/{table}/{key} to verify the update completion. Note: This is an idempotent operation - calling it multiple times with the same parameters will result in the same state." }, { "slug": "ITERABLE_SCHEDULE_CAMPAIGN", "name": "Schedule Campaign", "description": "Schedule an existing campaign to be sent at a specified time. Use when you have created a campaign and need to schedule it for future sending. The campaign must exist and not already be scheduled or in the process of sending. You can optionally specify time zone settings to send at the same local time across different recipient time zones. Note: The send time must be up to 7 days in the future. Scheduling can be modified or canceled before the send time using the 'Cancel campaign' endpoint." }, { "slug": "ITERABLE_SEND_CAMPAIGN", "name": "Send Campaign", "description": "Send an existing campaign immediately in Iterable. Use when you need to trigger a campaign to send right away, bypassing any scheduled send time. The campaign must be in a 'Ready' state before it can be sent using this endpoint. This action is useful for testing campaigns or sending them outside of their normal schedule. Note: Once a campaign starts sending, it cannot be stopped. Ensure the campaign is in the correct state before using this action." }, { "slug": "ITERABLE_SEND_EMAIL_PROOF", "name": "Send email template proof", "description": "Send a proof of an email template to a specific user. Use this action when you need to preview an email template by sending a proof to a specific recipient before sending it to a larger audience. This allows you to verify that the template renders correctly with sample data and contains the expected content. Provide the template ID and either an email address or user ID to identify the recipient. You can optionally include data fields to merge into the template for more accurate preview rendering. Rate limit: 20 requests/second per API key." }, { "slug": "ITERABLE_SEND_IN_APP", "name": "Send in-app notification to target", "description": "Send an in-app notification to a specific user using Iterable. Use this action when you need to send an in-app notification directly to a recipient. The notification is sent based on a campaign/template ID, and the recipient is identified either by their email address or user ID. Request data fields override user profile data fields. A reference to the user profile is provided via the profile to help resolve field collisions. Learn about identifying users by userId and email." }, { "slug": "ITERABLE_SEND_IN_APP_PROOF", "name": "Send in-app template proof", "description": "Send a proof of an in-app template to a specific user using Iterable. Use this action when you need to preview how an in-app template will look for a specific user before sending the actual campaign. The proof email contains the rendered template with merge fields populated using the provided data fields and user profile information. Provide either recipientEmail or recipientUserId (but not both) to identify the target user. This action is rate-limited to 20 requests per second per API key." }, { "slug": "ITERABLE_SEND_PUSH", "name": "Send push to target", "description": "Send a push notification to a specific user using Iterable. Use this action when you need to send a transactional push notification directly to a recipient. The push is sent based on a campaign/template ID, and the recipient is identified either by their email address or user ID. Request data fields override user profile data fields. A reference to the user profile is provided via the profile to help resolve field collisions. Learn about identifying users by userId and email." }, { "slug": "ITERABLE_SEND_PUSH_PROOF", "name": "Send push template proof", "description": "Send a proof of a push template to a specific user. Use this action when you need to preview a push template by sending a proof to a specific recipient before sending it to a larger audience. This allows you to verify that the template renders correctly with sample data and contains the expected content. Provide the template ID and either an email address or user ID to identify the recipient. You can optionally include data fields to merge into the template for more accurate preview rendering. # ci-skip: action-tags (POST /api/templates/push/proof sends a proof push as a side effect, not a durable resource creation) Rate limit: 20 requests/second per API key." }, { "slug": "ITERABLE_SEND_SMS_PROOF", "name": "Send SMS template proof", "description": "Send a proof of an SMS template to a specific user. Use this action when you need to preview an SMS template by sending a proof to a specific recipient before sending it to a larger audience. This allows you to verify that the template renders correctly with sample data and contains the expected content. Provide the template ID and either an email address or user ID to identify the recipient. You can optionally include data fields to merge into the template for more accurate preview rendering. Rate limit: 20 requests/second per API key." }, { "slug": "ITERABLE_SEND_WHATS_APP", "name": "Send WhatsApp to target", "description": "Send a WhatsApp message to a specific user using Iterable. Use this action when you need to send a transactional WhatsApp message directly to a recipient. The WhatsApp message is sent based on a campaign/template ID, and the recipient is identified either by their email address or user ID. Request data fields override user profile data fields. This API is typically used for transactional messaging. Learn about identifying users by userId and email." }, { "slug": "ITERABLE_START_EXPORT", "name": "Start Export", "description": "Start a data export job. The export processes as a background job asynchronously. Use the 'List export files' action to check export status by jobId and obtain file download links once completed. Use this action when you need to export data such as user profiles, email events, push notifications, SMS messages, purchases, or custom events. The exported data can be in CSV or JSON format. Rate limit: 1 request/second, per organization. Concurrent request limit: Up to 4 exports process at a time, per organization. Additional requests are queued." }, { "slug": "ITERABLE_SUBSCRIBE_TO_LIST", "name": "Subscribe to List", "description": "Subscribe one or more users to a specific list in Iterable. Use this action when you need to add subscribers to a list by their email address, userId, or both. The action can create new user profiles if they don't exist (unless updateExistingUsersOnly is set to true). This is an idempotent operation - re-subscribing a user who is already on the list has no additional effect. Learn about identifying users by userId and email." }, { "slug": "ITERABLE_SUBSCRIBE_USER_BY_ID", "name": "Subscribe User By ID", "description": "Subscribes a user to the specified subscription group by their userId. Use when you need to add a user to a specific email list, message type, or message channel subscription. Contact your customer success manager to enable this API before using this action." }, { "slug": "ITERABLE_TRACK_EMBEDDED_CLICK", "name": "Track Embedded Click", "description": "Tracks a click event on an embedded message. Use this action when you need to record user interactions with buttons or links in embedded messages. This creates an embeddedClick event in Iterable for analytics and campaign tracking purposes. For test messages (proofs), no events are created. Note: You must provide either an email or userId to identify the user profile, but not both." }, { "slug": "ITERABLE_TRACK_EMBEDDED_RECEIVED", "name": "Track Embedded Received", "description": "Track that an embedded message was received on a device. Use this action when you need to record that a device has retrieved an embedded message from Iterable's API. Call this endpoint once per embedded message retrieved. Note that this only indicates the message was retrieved—it does not mean the message has been displayed to the user. Iterable's SDKs automatically call this endpoint, but if you're not using an SDK, call this manually. Provide either email or userId (but not both) to identify the user profile." }, { "slug": "ITERABLE_TRACK_EMBEDDED_SESSION", "name": "Track Embedded Session", "description": "Tracks an embedded message session and related impressions in Iterable. Use this action when you need to report user engagement with embedded messages, including tracking when sessions start and end, and recording impressions for each message that was displayed during the session. This helps Iterable understand user behavior and optimize embedded message campaigns. An embeddedSession event represents a period of time when a user is viewing a page or screen where embedded messages can be displayed. An embeddedImpression event represents how many times a message was visible and for how long." }, { "slug": "ITERABLE_TRACK_EVENT", "name": "Track Event", "description": "Track an event in Iterable. Use when you need to record a user action, system event, or custom analytics event. This action sends event data to Iterable for processing. Events are created asynchronously and processed separately from bulk endpoint. To ensure events are tracked in order, send them all to the same endpoint (bulk or non-bulk). There is a soft limit (default 8,000) on unique fields a custom event can have. Provide either email or userId (but not both) depending on how your project identifies users. For events of the same name, identically named data fields must be of the same type. Rate limit: 100 requests/second per project." }, { "slug": "ITERABLE_TRACK_EVENTS_BULK", "name": "Track Events in Bulk", "description": "Track multiple events in bulk in Iterable. Use this action when you need to track multiple events at once for better performance and to ensure events are processed in the correct order (since bulk events are processed asynchronously together). Each event requires an eventName and should include either an email or userId to identify the user. Note: There is a soft limit of 8,000 unique fields a custom event can have. For events with the same name, identically named data fields must be of the same type." }, { "slug": "ITERABLE_TRACK_PURCHASE", "name": "Track Purchase", "description": "Track a purchase event in Iterable. Use when you need to record a purchase transaction. This action tracks purchase events, clearing the shoppingCartItems field on the user profile. The user profile is updated if it already exists, or created otherwise. Note that there is a soft limit of 1,000 unique fields per user, and field types must remain consistent across all requests in the project. The total amount must match the sum of items (price × quantity), though this is not enforced by the API. If an optional purchase ID is provided and a purchase with that ID already exists, the purchase will be updated instead of creating a new one." }, { "slug": "ITERABLE_TRIGGER_CAMPAIGN", "name": "Trigger Campaign", "description": "Trigger a campaign to send to one or more lists of recipients. Use when you need to initiate a marketing campaign immediately, sending to all users in the specified lists. The campaign must be in a ready state before triggering. This action is useful for time-sensitive announcements or promotional campaigns that need to go out immediately. Note: This action cannot be undone once the campaign begins sending. If you need to stop a campaign after triggering, use the 'Cancel campaign' action." }, { "slug": "ITERABLE_TRIGGER_JOURNEY", "name": "Trigger Journey", "description": "Trigger a journey (workflow) in Iterable for a specific user or list. Use this action when you need to start a journey for an individual user (by email or userId) or for all users in a list. Triggering with a list is asynchronous - if a list trigger is already in progress, it must complete before the same list can be triggered again for the same journey. Journey statistics may take several minutes to update if other journeys are running in parallel. If the journey's start tile has a suppression list configured, users on that list will be excluded from the journey. Provide either email or userId (but not both) when triggering for individual users. Note: This action is idempotent for individual user triggers - triggering the same user for the same journey multiple times will not cause duplicate entries if the journey's entry settings prevent re-entry." }, { "slug": "ITERABLE_UNFORGET_USER", "name": "Unforget User", "description": "Unforgets a previously forgotten user in Iterable, resuming data collection. This action allows you to resume collecting data about a user who was previously forgotten (deleted) from your Iterable project. The previously deleted data cannot be recovered, but new data will be collected going forward. Use this action when you need to re-enable tracking for a user after they have requested to be re-included in data collection (e.g., after a GDPR revocation request). In email-based projects, you must unforget users by email. In userID-based projects, you must unforget users by userId. In hybrid projects and projects migrated from email-based to userID-based, you can unforget users by either email or userId. Important: Deleted/forgotten data cannot be recovered, only new data collection resumes." }, { "slug": "ITERABLE_UNSUBSCRIBE_FROM_LIST", "name": "Unsubscribe from list", "description": "Remove users from a list. Use this action when you need to unsubscribe one or more users from a specific email list in Iterable. This action permanently removes subscribers from the specified list and cannot be easily reversed. Users will need to be manually re-subscribed if they need access to the list again. Note: Users can be identified by email, userId, or both. At least one identifier must be provided for each subscriber." }, { "slug": "ITERABLE_UNSUBSCRIBE_USER_BY_ID", "name": "Unsubscribe User By ID", "description": "Unsubscribes a user from the specified subscription group by their userId. Use when you need to remove a user from a specific email list, message type, or message channel subscription. Contact your customer success manager to enable this API before using this action. Note: This action is irreversible — once a user is unsubscribed, they will not receive messages from that subscription group unless they re-subscribe." }, { "slug": "ITERABLE_UPDATE_CART", "name": "Update Shopping Cart", "description": "Update a user's shopping cart items in Iterable. Use when you need to update the shoppingCartItems field on a user profile with items from the user's shopping cart. The user profile is updated if it already exists or created otherwise via the user field. Types of data fields must match the types sent in previous requests, across all data fields in the project. Learn about identifying users by userId and email. This action is idempotent - calling it multiple times with the same items will simply update the shoppingCartItems field on the user profile." }, { "slug": "ITERABLE_UPDATE_CATALOG_FIELD_MAPPINGS", "name": "Update Catalog Field Mappings", "description": "Set a catalog's field mappings (data types) in Iterable. Use this action when you need to define the data type for fields in a catalog. After being set, a given field's data type may not be changed. Valid types: boolean, date, geo_location, long, double, object, and string. Note: This action is idempotent - applying the same field mappings multiple times will have the same effect. Field types cannot be changed once set." }, { "slug": "ITERABLE_UPDATE_CATALOG_ITEM", "name": "Update Catalog Item", "description": "Asynchronously creates or updates the specified catalog item in the given catalog. Use when you need to create a new catalog item or update an existing one. If the item already exists, its fields will be updated with the values provided. Previously existing fields not included in the request body will remain unchanged. The operation is asynchronous — use GET /api/catalogs/{catalogName}/items/{itemId} to verify completion. Note: A catalog item's ID must be unique, contain only alphanumeric characters and dashes, and have a maximum length of 255 characters. Do not use periods in field names." }, { "slug": "ITERABLE_UPDATE_EMAIL_TEMPLATE", "name": "Update email template", "description": "Update an existing email template in Iterable. Use this action when you need to modify an existing email template's content, settings, sender information, or metadata. Only the fields included in the request will be updated; previously existing fields not included will retain their current values. The templateId is required to identify which template to update. This is an idempotent operation - calling it multiple times with the same parameters will result in the same state." }, { "slug": "ITERABLE_UPDATE_EMBEDDED_TEMPLATE", "name": "Update Embedded Template", "description": "Updates an embedded message template with the specified fields. Use this action when you need to modify an existing embedded message template in Iterable. Only the fields included in the request body will be updated; previously existing fields not specified will remain unchanged. This is an idempotent operation — calling it multiple times with the same parameters will produce the same result." }, { "slug": "ITERABLE_UPDATE_IN_APP_TEMPLATE", "name": "Update in-app template", "description": "Update an existing in-app template in Iterable. Use this action when you need to modify an existing in-app template. Only the fields specified in the request will be updated; fields not included will retain their existing values. The templateId is required to identify the template to update. This action performs a partial update. Note: This action is idempotent and will only update the fields provided. Fields not included in the request will retain their existing values." }, { "slug": "ITERABLE_UPDATE_PUSH_TEMPLATE", "name": "Update push template", "description": "Updates an existing push template in Iterable. Use this action when you need to modify an existing push template's content, settings, or configuration. Only the fields specified in the request body will be updated; previously existing fields not included in the request will remain unchanged. Note: This action is idempotent — calling it multiple times with the same request will have the same effect as calling it once." }, { "slug": "ITERABLE_UPDATE_SMS_TEMPLATE", "name": "Update SMS template", "description": "Update an existing SMS template in Iterable. Use this action when you need to modify the content or settings of an existing SMS template. Only the fields specified in the request will be updated; fields not included will retain their existing values. You must provide the templateId to identify which template to update. Note: This action modifies an existing template. The changes are irreversible and will affect all campaigns using this template." }, { "slug": "ITERABLE_UPDATE_SNIPPET", "name": "Update snippet by ID or name", "description": "Updates an existing snippet by ID (numeric) or creates/updates a snippet by name (string). For numeric identifiers: only existing snippets can be updated (returns 404 if not found). For string identifiers (snippet names): creates the snippet if it doesn't exist, or updates it if it already exists. Use this action when you need to modify snippet content, description, or variables for an existing snippet, or create a new snippet by name." }, { "slug": "ITERABLE_UPDATE_USER", "name": "Update User", "description": "Update user data or add a user if none exists in Iterable. Use when you need to create or update user profile information. This action merges data — missing fields are not deleted. Provide either email or userId (but not both) depending on how your project identifies users. There is a soft limit (default: 1,000) on the number of unique fields users can have. Types of data fields must match the types sent in previous requests, across all data fields in the project. Processing time varies based on the current load for Iterable's back-end services. To avoid race conditions, provide a buffer of at least 60 seconds between this request and subsequent dependent requests. Rate limit: 100 requests/second per project." }, { "slug": "ITERABLE_UPDATE_USER_EMAIL", "name": "Update User Email", "description": "Updates a user's email address in Iterable. Use when you need to change a user's email in email-based projects. Use this action when you need to update a user's email address and migrate all profile data and events to the new email. To update an email in a userID-based or hybrid project, use POST /api/users/update instead. Specify either currentEmail or currentUserId in the request body, but not both — if both are provided, currentEmail takes precedence. This action is irreversible and will migrate all historical data to the new email address." }, { "slug": "ITERABLE_UPDATE_USER_SUBSCRIPTIONS", "name": "Update User Subscriptions", "description": "Updates user subscription preferences in Iterable. Use when you need to modify a user's subscription status for email lists, message types, and channels. IMPORTANT: This endpoint overwrites (does not merge) existing data for any non-null fields specified in the request. For example, if unsubscribedChannelIds is included in the request, it will replace the user's existing channel subscriptions entirely. Provide either email or userId (but not both), depending on how your project identifies users. Learn about identifying users by userId and email. This action is idempotent - calling it multiple times with the same parameters will result in the same subscription state." }, { "slug": "ITERABLE_UPDATE_USER_SUBSCRIPTIONS_BULK", "name": "Bulk Update User Subscriptions", "description": "Bulk update subscription preferences for multiple users in Iterable. Use this action when you need to update email list subscriptions, message type subscriptions, or channel subscriptions for multiple users in a single API call. This is useful for bulk list management, compliance updates, or campaign-related subscription changes. IMPORTANT: This endpoint overwrites (does not merge) existing data for any non-null fields specified in the request. Provide email or userId for each user to identify them. This action modifies user communication preferences immediately. Learn about identifying users by userId and email." }, { "slug": "ITERABLE_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update an existing webhook configuration in Iterable. Use this action when you need to modify webhook settings such as endpoint URL, authentication type, enabled status, or campaign type subscriptions. Only the fields included in the request body will be updated; other fields remain unchanged. The webhook ID (id) is required to identify which webhook to update." }, { "slug": "ITERABLE_UPSERT_EMAIL_TEMPLATE", "name": "Upsert email template", "description": "Create or update an email template in Iterable. Use this action when you need to create a new email template or update an existing one that matches the provided clientTemplateId. This endpoint performs an upsert operation: if no template exists with the given clientTemplateId, a new template is created; if one or more templates exist with the same clientTemplateId, all matching templates are updated with the provided fields. Note that only the fields specified in the request will be updated. Fields not included in the request will retain their existing values (for updates) or use default values (for new templates)." }, { "slug": "ITERABLE_UPSERT_EMBEDDED_TEMPLATE", "name": "Upsert Embedded Template", "description": "Creates an embedded message template if it doesn't exist, or updates all embedded message templates that match the provided clientTemplateId. Use this action when you need to create or update embedded message templates in Iterable. If multiple templates exist with the same clientTemplateId, all will be updated with the provided data. This is useful for managing template versions or ensuring a template exists before sending campaigns." }, { "slug": "ITERABLE_UPSERT_IN_APP_TEMPLATE", "name": "Upsert in-app template", "description": "Create or update an in-app template in Iterable. Use this action when you need to create a new in-app template or update an existing one that matches the provided clientTemplateId. This endpoint performs an upsert operation: if no template exists with the given clientTemplateId, a new template is created; if one or more templates exist with the same clientTemplateId, all matching templates are updated with the provided fields. Note that only the fields specified in the request will be updated. Fields not included in the request will retain their existing values (for updates) or use default values (for new templates)." }, { "slug": "ITERABLE_UPSERT_PUSH_TEMPLATE", "name": "Upsert push template", "description": "Create or update a push template in Iterable. Use this action when you need to create a new push template or update an existing one that matches the provided clientTemplateId. This endpoint performs an upsert operation: if no template exists with the given clientTemplateId, a new template is created; if one or more templates exist with the same clientTemplateId, all matching templates are updated with the provided fields. Note that only the fields specified in the request will be updated. Fields not included in the request will retain their existing values (for updates) or use default values (for new templates). This action is idempotent - calling it multiple times with the same clientTemplateId will always result in the same state." }, { "slug": "ITERABLE_UPSERT_SMS_TEMPLATE", "name": "Upsert SMS template", "description": "Create or update an SMS template in Iterable. Use this action when you need to create a new SMS template or update an existing one that matches the provided clientTemplateId. This endpoint performs an upsert operation: if no template exists with the given clientTemplateId, a new template is created; if one or more templates exist with the same clientTemplateId, all matching templates are updated with the provided fields. Note that only the fields specified in the request will be updated. Fields not included in the request will retain their existing values (for updates) or use default values (for new templates)." }, { "slug": "ITERABLE_VERIFY_SMS_CODE", "name": "Verify SMS Code", "description": "Verifies an SMS verification code sent to a phone number in Iterable. Use this action when you need to check whether a user has entered the correct verification code during phone number verification. The code must match the most recent, non-expired, not-yet-verified code sent to the specified phone number. If the code is correct, the verification is successful. If the code is incorrect or expired, the verification fails. This action is idempotent - verifying the same code multiple times returns the same result." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "iterable_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Iterable API key. Get it from Settings > API Keys in your Iterable dashboard.", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Data center region for your Iterable project. Use \"us\" (default) or \"eu\".", "required": false, "default": "us" } ] } } } ] }, { "slug": "jigsawstack", "name": "Jigsawstack", "logo": "https://logos.composio.dev/api/jigsawstack", "description": "JigsawStack provides a suite of custom small AI models integrated into scalable infrastructure, enabling developers to build AI-powered applications efficiently.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "JIGSAWSTACK_CHECK_NSFW", "name": "Check Image for NSFW Content", "description": "Tool to detect NSFW content in images. Use when you need to quickly detect nudity, violence, hentai, porn and other NSFW content in images." }, { "slug": "JIGSAWSTACK_CHECK_PROFANITY", "name": "Check Profanity", "description": "Tool to check text for profanity and inappropriate language. Use when you need to validate user-generated content, filter inappropriate language, or sanitize text input." }, { "slug": "JIGSAWSTACK_CHECK_SPAM", "name": "Check Spam", "description": "Tool to perform spam check analysis on text. Use when you need to detect spam content and get a spam confidence score." }, { "slug": "JIGSAWSTACK_CHECK_SPELLING", "name": "Check Spelling", "description": "Tool to check and correct spelling errors in text. Use when you need to validate text for spelling mistakes and get correction suggestions." }, { "slug": "JIGSAWSTACK_CLASSIFY_CONTENT", "name": "Classify Content", "description": "Tool to classify text and image datasets using custom labels. Use when you need to categorize content into predefined labels." }, { "slug": "JIGSAWSTACK_CONVERT_HTML_TO_ANY", "name": "Convert HTML to Image or PDF", "description": "Tool to convert HTML to images (PNG/JPEG/WEBP) or PDF, or capture website screenshots. Use when you need to generate visual representations of HTML content or web pages." }, { "slug": "JIGSAWSTACK_CREATE_EMBEDDING_V2", "name": "Create Embedding V2", "description": "Tool to generate enhanced vector embeddings with speaker fingerprint support using the v2 model. Use when you need to create embeddings from text, images, audio, or PDF files." }, { "slug": "JIGSAWSTACK_CREATE_PREDICTION", "name": "Create Prediction", "description": "Tool to forecast time series data using AI-powered prediction. Use when you need to predict future values based on historical data patterns." }, { "slug": "JIGSAWSTACK_CREATE_PROMPT", "name": "Create Prompt", "description": "Tool to create a new prompt in the Prompt Engine for reusable LLM interactions. Use when you need to store and manage prompt templates with variable inputs." }, { "slug": "JIGSAWSTACK_CREATE_VOICE_CLONE", "name": "Create Voice Clone", "description": "Tool to create a cloned voice for text-to-speech synthesis. Use when you need to clone a voice from an audio sample for later use in TTS operations." }, { "slug": "JIGSAWSTACK_DETECT_OBJECTS", "name": "Detect Objects in Image", "description": "Tool to recognize and identify objects within an image using computer vision AI. Use when you need to detect and locate objects in images." }, { "slug": "JIGSAWSTACK_EXTRACT_VOCR", "name": "Extract Data with Vision OCR", "description": "Tool to recognize, describe and retrieve data within images with great accuracy using Vision OCR. Use when you need to extract text, data fields, or descriptions from images or PDFs." }, { "slug": "JIGSAWSTACK_GET_SEARCH_SUGGESTIONS", "name": "Get Search Suggestions", "description": "Tool to get real-time search suggestions for a given query. Use when you need to provide autocomplete suggestions or related search queries." }, { "slug": "JIGSAWSTACK_GET_SENTIMENT", "name": "Get Sentiment", "description": "Tool to retrieve sentiment analysis via GET request. Use when you need to classify text into positive, negative, or neutral sentiment using a GET endpoint." }, { "slug": "JIGSAWSTACK_IMAGE_GENERATION", "name": "Generate Image from Prompt", "description": "Tool to generate images from text prompts. Use when you need visual content created from a prompt." }, { "slug": "JIGSAWSTACK_LIST_PROMPTS", "name": "List Prompts", "description": "Tool to list all prompts stored in the Prompt Engine. Use when you need to retrieve or view stored prompts." }, { "slug": "JIGSAWSTACK_RUN_PROMPT_BY_ID", "name": "Run Prompt By ID", "description": "Tool to execute a stored prompt using its prompt engine ID. Use when you need to run a pre-configured prompt template with dynamic input values." }, { "slug": "JIGSAWSTACK_SCRAPE_WEBSITE", "name": "Scrape Website", "description": "Tool to scrape any website and extract structured data using AI-powered element prompts or CSS selectors. Use when you need to extract specific information from web pages without writing custom scraping code. Supports both URL-based scraping and direct HTML content parsing." }, { "slug": "JIGSAWSTACK_SENTIMENT_ANALYSIS", "name": "Sentiment Analysis", "description": "Tool to analyze text sentiment. Use when you need to classify text into positive, negative, or neutral sentiment." }, { "slug": "JIGSAWSTACK_SUMMARIZE_TEXT", "name": "Summarize Text", "description": "Tool to generate concise, intelligent summaries of text or documents with AI. Use when you need to condense long content into bullet points or paragraphs." }, { "slug": "JIGSAWSTACK_TEXT_TO_SPEECH", "name": "Text to Speech", "description": "Tool to convert text to natural-sounding speech. Use when you need to generate an audio file from text input." }, { "slug": "JIGSAWSTACK_TRANSLATE_TEXT", "name": "Translate Text", "description": "Tool to translate text from one language to another. Use when you need to convert text between different languages with automatic language detection support." }, { "slug": "JIGSAWSTACK_WEB_SEARCH", "name": "Web Search", "description": "Tool to perform AI-powered web search with AI overview and geo-aware results. Use when you need concise search results enriched with AI summary and location context." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "jigsawstack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "JigsawStack API Key", "type": "string", "description": "Your JigsawStack API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "jobnimbus", "name": "JobNimbus", "logo": "https://logos.composio.dev/api/jobnimbus", "description": "JobNimbus is a CRM and project management software designed for contractors, helping streamline scheduling, estimates, invoicing, and job tracking.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "JOBNIMBUS_ACCOUNT_CREATE_LOCATION", "name": "Create Location", "description": "Tool to create a new location in JobNimbus. Use after gathering address and contact details." }, { "slug": "JOBNIMBUS_ACCOUNT_GET_SETTINGS", "name": "Get Account Settings", "description": "Tool to retrieve account-wide settings (workflows, types, sources). Use after authenticating to load or refresh workflow and source mappings." }, { "slug": "JOBNIMBUS_ACTIVITY_GET", "name": "Get Activity by ID", "description": "Retrieves a specific JobNimbus activity by its unique jnid. Activities in JobNimbus represent logged events such as task modifications, contact updates, job creation, and other system actions. Each activity contains details about what changed, who made the change, and when it occurred. Use this action when you need detailed information about a specific activity, such as viewing the full history of changes or understanding who performed an action." }, { "slug": "JOBNIMBUS_CONTACT_GET", "name": "Get Contact by ID", "description": "Tool to retrieve a contact by ID. Use after obtaining the contact’s jnid to fetch full details." }, { "slug": "JOBNIMBUS_CONTACT_LIST", "name": "List Contacts", "description": "Tool to list all contacts. Use when you need to fetch multiple contacts, e.g., for reporting or synchronization." }, { "slug": "JOBNIMBUS_CONTACT_UPDATE", "name": "Update Contact", "description": "Tool to update an existing contact. Use when you have a contact's JNID and need to modify its fields. Call after fetching or creating a contact." }, { "slug": "JOBNIMBUS_CREATE_FILE_TYPE", "name": "Create File Attachment Type", "description": "Creates a new file attachment type in JobNimbus. File types are custom categories used to organize and classify document attachments (e.g., contracts, warranties, photos, permits). You must create a file type before you can upload files with that category." }, { "slug": "JOBNIMBUS_CREATE_MATERIAL_ORDER", "name": "Create Material Order", "description": "Creates a new material order in JobNimbus. A material order tracks materials needed for a job and can be submitted to suppliers. Material orders must be linked to a contact or job record and include at least one line item referencing an existing product from your Products & Services catalog. Prerequisites: - At least one contact or job record must exist (use JOBNIMBUS_CONTACT_LIST to find contacts) - Products must exist in your catalog (use JOBNIMBUS_LIST_PRODUCTS to find product IDs) Note: Custom line items are not supported - all items must reference existing products by their jnid." }, { "slug": "JOBNIMBUS_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task. Use when scheduling or tracking tasks linked to contacts or jobs." }, { "slug": "JOBNIMBUS_CREATE_WORKFLOW_STATUS", "name": "Create Workflow Status", "description": "Tool to create a new status in an existing workflow. Use after confirming the workflow ID to add specialized status entries like 'Lead' or 'Inspection'." }, { "slug": "JOBNIMBUS_FILE_GET", "name": "Get File Attachment Content by ID", "description": "Retrieves the raw content of a specific file attachment from JobNimbus by its unique ID. This action downloads the actual file content (binary data for PDFs, images, etc.) but does NOT return file metadata like filename, content type, or size. If you need metadata, use the files list endpoint instead. Common use case: Download a file attachment after obtaining its jnid from a list files query or from a related record (contact, job, etc.)." }, { "slug": "JOBNIMBUS_LIST_ACTIVITIES", "name": "List Activities", "description": "Tool to retrieve all activities. Use after authentication to fetch a paginated list of activities." }, { "slug": "JOBNIMBUS_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list all invoices (v2). Use when you need to fetch multiple invoice records." }, { "slug": "JOBNIMBUS_LIST_MATERIAL_ORDERS", "name": "List Material Orders", "description": "Tool to list all material orders (v2). Use after authentication to fetch multiple material order records." }, { "slug": "JOBNIMBUS_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to retrieve payments list with optional filters. Use after auth." }, { "slug": "JOBNIMBUS_LIST_PRODUCTS", "name": "List Products", "description": "Tool to list all products. Use after authentication to fetch full product catalog." }, { "slug": "JOBNIMBUS_LIST_WORKORDERS", "name": "List Work Orders", "description": "Tool to retrieve all work orders (v2). Use after authentication when you need a paginated list of work orders." }, { "slug": "JOBNIMBUS_PRODUCT_GET", "name": "Get Product by ID", "description": "Retrieves detailed information about a specific JobNimbus product using its jnid. Use this action when you need to get full details about a product, including pricing, cost, unit of measurement, and tax settings. Obtain the jnid first using the List Products action." }, { "slug": "JOBNIMBUS_TASK_LIST", "name": "List Tasks", "description": "Tool to list all tasks. Use when you need an overview of tasks for planning or review." }, { "slug": "JOBNIMBUS_UPDATE_TASK", "name": "Update Task", "description": "Update an existing JobNimbus task by its jnid. Allows updating task details like title, description, dates, priority, and task type. Use List Tasks action to find task jnids. Note: To update task type, both record_type and record_type_name must be provided together." }, { "slug": "JOBNIMBUS_UTILITY_GET_UOMS", "name": "Get Units of Measure", "description": "Tool to retrieve list of supported units of measure. Use after authenticating when you need to present or validate measurement units." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "jobnimbus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "JobNimbus API Key", "type": "string", "description": "The API key generated in JobNimbus for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "jotform", "name": "Jotform", "logo": "https://logos.composio.dev/api/jotform", "description": "Jotform is an online form builder that allows users to create and manage forms for various purposes, including data collection, surveys, and more.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "JOTFORM_CLONE_FORM", "name": "Clone Form", "description": "Tool to clone a single form in Jotform. Creates a complete copy of the form with all its questions and settings. Use when you need to duplicate an existing form." }, { "slug": "JOTFORM_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new label for organizing forms in Jotform. Use when you need to categorize or group forms with a named label." }, { "slug": "JOTFORM_DELETE_LABEL", "name": "Delete Label", "description": "Tool to delete a label along with all its sublabels. Use when you need to remove a label from the account." }, { "slug": "JOTFORM_GET_LABEL", "name": "Get Label", "description": "Tool to retrieve details of a label by its ID, including name and color. Use when you need to fetch information about a specific label." }, { "slug": "JOTFORM_GET_LABEL_RESOURCES", "name": "Get Label Resources", "description": "Tool to get a list of assets (forms) in a label and their associated information. Use when you need to retrieve forms organized under a specific label." }, { "slug": "JOTFORM_GET_SYSTEM_PLAN", "name": "Get System Plan", "description": "Tool to retrieve details of a specific system plan. Use when you need to check limits and pricing of a plan." }, { "slug": "JOTFORM_GET_USER_DETAILS", "name": "Get User Details", "description": "Tool to retrieve details of the authenticated user, including account and usage info. Use after confirming valid API key." }, { "slug": "JOTFORM_GET_USER_FOLDERS", "name": "Get User Folders", "description": "Tool to retrieve a list of labels (folders replacement) for the authenticated user. Uses the GET /user/labels endpoint per Jotform's migration from folders to labels." }, { "slug": "JOTFORM_GET_USER_FORMS", "name": "Get User Forms", "description": "Tool to retrieve a list of forms created by the authenticated user. Use after setting up API key authentication." }, { "slug": "JOTFORM_GET_USER_HISTORY", "name": "Get User History", "description": "Tool to fetch user activity history records. Use when auditing or filtering user actions by type or date." }, { "slug": "JOTFORM_GET_USER_REPORTS", "name": "Get User Reports", "description": "Tool to retrieve list of report URLs for all forms in the account. Includes Excel, CSV, printable charts, and embeddable HTML tables." }, { "slug": "JOTFORM_GET_USER_SETTINGS", "name": "Get User Settings", "description": "Tool to retrieve the settings of the authenticated user. Use after confirming a valid API key." }, { "slug": "JOTFORM_GET_USER_SETTINGS_BY_KEY", "name": "Get User Setting By Key", "description": "Tool to retrieve a specific user setting by key. Use when you need a single setting value like email, timezone, language, or website." }, { "slug": "JOTFORM_GET_USER_SUBMISSIONS", "name": "Get User Submissions", "description": "Tool to retrieve all submissions for all forms on the account. The answers dictionary contains submission data with question IDs as keys. Use when you need to access submission data across multiple forms." }, { "slug": "JOTFORM_GET_USER_USAGE", "name": "Get User Usage", "description": "Tool to retrieve monthly usage statistics for the authenticated user. Use to check form submissions, payment forms, SSL submissions, and storage used." }, { "slug": "JOTFORM_REMOVE_LABEL_RESOURCES", "name": "Remove Resources from Label", "description": "Tool to remove specified resources (forms) from a label by their IDs and types. Use when you need to unassign forms from a specific label." }, { "slug": "JOTFORM_UPDATE_LABEL", "name": "Update Label", "description": "Tool to update an existing label with new name or color settings. Use when you need to modify label properties." }, { "slug": "JOTFORM_UPDATE_USER_SETTINGS", "name": "Update User Settings", "description": "Tool to update user's settings like time zone, language, email, and website. Use when you need to modify user account settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "jotform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Jotform API Key", "type": "string", "description": "The API key generated from your Jotform account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "API Domain", "type": "string", "description": "The API domain to use, based on your account type. Options are 'api.jotform.com', 'eu-api.jotform.com', or 'hipaa-api.jotform.com'.", "required": true, "default": "api.jotform.com" } ], "optional": [] } } } ] }, { "slug": "jumpcloud", "name": "JumpCloud", "logo": "https://logos.composio.dev/api/jumpcloud", "description": "JumpCloud is a cloud-based directory platform that provides secure identity, access, and device management solutions for organizations.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "JUMPCLOUD_CREATE_SYSTEM", "name": "Create System", "description": "Validates credentials and provides guidance for enrolling systems in JumpCloud. Important: JumpCloud does not support creating systems via REST API. Systems must be enrolled by installing the JumpCloud Agent on each device. This action performs a credential validation check and returns detailed instructions for agent-based system enrollment, including documentation links and Connect key guidance. Use this action when you need to: - Understand how to enroll new systems in JumpCloud - Validate API credentials before system management operations - Get documentation links for the JumpCloud Agent installation process" }, { "slug": "JUMPCLOUD_DELETE_ROLE", "name": "Delete Role", "description": "Deletes a specific custom role from JumpCloud by its ID. This action permanently removes a custom role. Built-in system roles (Administrator, Read Only, Manager, etc.) cannot be deleted. Before deleting a role, ensure it is not currently assigned to any administrators. The operation is idempotent - attempting to delete a non-existent role returns success (404 treated as successful deletion)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "jumpcloud_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "JumpCloud API Key", "type": "string", "description": "The API key associated with your JumpCloud administrator account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kadoa", "name": "Kadoa", "logo": "https://logos.composio.dev/api/kadoa", "description": "Kadoa is an API-first platform that enables users to create, manage, and monitor data extraction workflows from unstructured data sources.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 77, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KADOA_APPROVE_BULK_VALIDATION_RULES", "name": "Bulk Approve Validation Rules", "description": "Tool to bulk approve preview validation rules for a workflow. Use after generating validation rules to activate multiple rules at once." }, { "slug": "KADOA_CREATE_CRAWL_CONFIG", "name": "Create Crawl Config", "description": "Tool to create a new crawling configuration in Kadoa. Use when you need to configure a custom crawl with specific options like navigation settings, extraction rules, or artifact capture preferences." }, { "slug": "KADOA_CREATE_NOTIFICATION_CHANNEL", "name": "Create Notification Channel", "description": "Tool to create a notification channel for alerts delivery." }, { "slug": "KADOA_CREATE_SCHEMA", "name": "Create Schema", "description": "Create a new data schema with specified fields and entity type. Use this tool to define a reusable schema for data extraction workflows. Schemas can have Data Fields (typed data like STRING, NUMBER), Raw Content Fields (HTML/Markdown), or Classification Fields (predefined categories). Note: Field names must be camelCase (start lowercase, letters/numbers only). STRING dataType fields require an example value." }, { "slug": "KADOA_CREATE_SUPPORT_ISSUE", "name": "Create Support Issue", "description": "Tool to create a support ticket in Kadoa. Use when you need to report bugs, request features, or get help with workflows or integrations. User information is automatically inferred from the authentication context." }, { "slug": "KADOA_CREATE_WORKFLOW_TRIGGER", "name": "Create Workflow Trigger", "description": "Tool to create a trigger that fires when a source workflow emits an event. Use when you need to chain workflows together, triggering one workflow based on events from another. Common use case: trigger data processing workflow when scraping workflow finishes." }, { "slug": "KADOA_DELETE_ALL_VALIDATION_RULES", "name": "Delete All Validation Rules", "description": "Tool to soft-delete all validation rules for a specific workflow with optional audit trail. This is a bulk operation that marks rules as deleted without permanently removing them. Use when reconfiguring workflows or cleaning up validation rules." }, { "slug": "KADOA_DELETE_CRAWL_CONFIG", "name": "Delete Crawl Configuration", "description": "Tool to delete a crawling configuration by its config ID. Use when you need to remove an existing crawl configuration." }, { "slug": "KADOA_DELETE_NOTIFICATION_CHANNEL", "name": "Delete Notification Channel", "description": "Tool to delete a notification channel by its ID. Use when you need to remove a channel that is no longer needed." }, { "slug": "KADOA_DELETE_SCHEMA", "name": "Delete Schema", "description": "Tool to delete a schema and all its revisions. Use when you need to permanently remove a schema from your Kadoa account. This operation cannot be undone." }, { "slug": "KADOA_DELETE_VALIDATION_RULE", "name": "Delete Validation Rule", "description": "Tool to delete a validation rule from a Kadoa workflow. Performs a soft delete with optional audit reason." }, { "slug": "KADOA_DELETE_VALIDATION_RULES_BULK", "name": "Delete Validation Rules (Bulk)", "description": "Tool to bulk delete multiple validation rules for a workflow. Use when you need to remove multiple rules at once instead of deleting them individually." }, { "slug": "KADOA_DELETE_WORKFLOW", "name": "Delete Workflow", "description": "Delete a workflow permanently from your Kadoa account. Use this tool when you need to permanently remove a workflow. This action cannot be undone." }, { "slug": "KADOA_DELETE_WORKFLOW_TRIGGER", "name": "Delete Workflow Trigger", "description": "Tool to delete a trigger from a Kadoa workflow. Use when you need to remove a specific trigger configuration. This action cannot be undone." }, { "slug": "KADOA_DISABLE_VALIDATION_RULE", "name": "Disable Validation Rule", "description": "Tool to disable a validation rule with a mandatory reason. Use when you need to temporarily or permanently deactivate a data validation rule." }, { "slug": "KADOA_ENABLE_DATA_VALIDATION", "name": "Enable Data Validation", "description": "Tool to enable data validation on a specified workflow. Use after creating or updating a workflow to enforce its validation rules." }, { "slug": "KADOA_EXECUTE_BULK_WORKFLOW_OPERATIONS", "name": "Execute Bulk Workflow Operations", "description": "Execute actions on multiple workflows at once. Use when you need to perform the same operation on many workflows efficiently. Best-effort processing: each workflow is processed independently, so some may succeed while others fail. Check the response to see individual results and summary statistics. Supported actions: run, pause, resume, delete, approve, assignTags." }, { "slug": "KADOA_EXPORT_ACTIVITY", "name": "Export Activity Events", "description": "Tool to export activity events from audit logs to CSV format for compliance and audit purposes. Use when you need to retrieve historical activity data, generate audit reports, or track user actions across workflows. Supports filtering by time range, user, workflow, event types, and other criteria." }, { "slug": "KADOA_EXPORT_ACTIVITY_WORKFLOWS", "name": "Export Activity Workflows", "description": "Tool to export workflow configurations and metadata as CSV for portfolio reviews and compliance reporting. Use when you need to generate compliance reports or review workflow activity across a specific time period. Returns CSV data containing workflow details, states, and activity metadata." }, { "slug": "KADOA_FETCH_WORKFLOW_CONFIGURATION", "name": "Get Workflow by ID", "description": "Retrieve detailed configuration of a workflow by its ID. Returns workflow metadata, extraction schema, scheduling settings, data validation config, and run status. Use this to inspect a workflow's setup or check its current state." }, { "slug": "KADOA_GET_ALL_LOCATIONS", "name": "Get all locations", "description": "Retrieves all available scraping proxy locations (countries) supported by Kadoa. Returns ISO country codes (e.g., US, GB, DE) that can be used when configuring workflows to scrape from specific geographic regions. Use this to see which locations are available before creating location-specific scraping workflows." }, { "slug": "KADOA_GET_CRAWL_BUCKET_DATA", "name": "Get Crawl Bucket Data", "description": "Tool to retrieve file content from the Kadoa crawling bucket (HTML or screenshot). Use when you need to access raw files stored during a crawl session." }, { "slug": "KADOA_GET_CRAWL_CONFIG", "name": "Get Crawl Configuration", "description": "Tool to retrieve a crawling configuration by its ID. Use when you need to view the detailed settings of an existing crawl configuration." }, { "slug": "KADOA_GET_CRAWLED_PAGE_CONTENT", "name": "Get Crawled Page Content", "description": "Tool to retrieve content of a crawled page. Use when you need the HTML or Markdown of a page from a specific crawling session." }, { "slug": "KADOA_GET_CRAWLED_PAGES", "name": "Get Crawled Pages", "description": "Tool to list pages crawled during a session. Use when you need to paginate through results after starting a crawl session." }, { "slug": "KADOA_GET_CRAWL_STATUS", "name": "Get Crawl Status", "description": "Tool to fetch current status of a crawling session. Use when you need to check progress of a crawl by its session ID." }, { "slug": "KADOA_GET_EVENT_TYPE", "name": "Get Event Type Details", "description": "Tool to retrieve details for a specific notification event type. Use when you need to understand the schema, description, or configuration of a particular event type for setting up notifications." }, { "slug": "KADOA_GET_EVENT_TYPES", "name": "Get Notification Event Types", "description": "Tool to retrieve supported notification event types. Use when you need to enumerate available notification triggers." }, { "slug": "KADOA_GET_LATEST_WORKFLOW_DATA", "name": "Get Latest Workflow Data", "description": "Retrieves the extracted data from a Kadoa workflow's most recent run (or a specific run if runId is provided). Returns paginated records in JSON or CSV format. Use Get Workflows action first to obtain a valid workflowId." }, { "slug": "KADOA_GET_LATEST_WORKFLOW_VALIDATION", "name": "Get Latest Workflow Validation", "description": "Retrieves the latest validation results for the most recent job of a workflow. Returns comprehensive validation data including anomaly counts, detailed anomaly lists by rule, schema issues, and change detection summaries." }, { "slug": "KADOA_GET_NOTIFICATION_CHANNEL", "name": "Get Notification Channel", "description": "Tool to retrieve details of a specific notification channel. Use when you have a channel's ID and need its configuration." }, { "slug": "KADOA_GET_NOTIFICATION_LOGS", "name": "Get Notification Logs", "description": "Tool to retrieve notification event logs with optional filtering by workflow, event type, and date range. Use when you need to audit notification delivery, troubleshoot missing notifications, or review event history." }, { "slug": "KADOA_GET_NOTIFICATION_SETTING", "name": "Get Notification Setting", "description": "Retrieves a specific notification setting by its unique identifier. Use this tool to fetch details about how notifications are configured for specific events and which channels are linked. Returns the event type, enabled status, linked channels, and timestamps." }, { "slug": "KADOA_GET_SCHEMA", "name": "Get Schema by ID", "description": "Retrieve a specific schema by its unique identifier. Returns schema metadata, field definitions, and configuration. Use this to inspect available data structures or validate schema configurations for workflows." }, { "slug": "KADOA_GET_VALIDATION_ANOMALIES", "name": "Get Validation Anomalies", "description": "Tool to retrieve all anomalies for a specific validation. Use this when you need to fetch detailed anomaly data detected during a data validation run, grouped by validation rules with pagination support." }, { "slug": "KADOA_GET_VALIDATION_ANOMALIES_BY_RULE", "name": "Get Validation Anomalies By Rule", "description": "Tool to retrieve anomalies for a specific validation rule. Use this to investigate specific rule violations and understand what data failed validation checks." }, { "slug": "KADOA_GET_VALIDATION_CONFIG", "name": "Get Validation Configuration", "description": "Tool to retrieve the data validation configuration for a specific workflow. Use this to check validation status, alerting thresholds, and rule counts before modifying validation settings." }, { "slug": "KADOA_GET_VALIDATION_RULE", "name": "Get Validation Rule", "description": "Tool to retrieve a specific validation rule by its ID. Use this to inspect rule details including configuration, status, and metadata." }, { "slug": "KADOA_GET_WORKFLOW_AUDIT_LOG", "name": "Get Workflow Audit Log", "description": "Retrieve audit log entries for a workflow. Use when you need to track changes and operations performed on a workflow. Returns paginated log entries showing operation type, user information, and changed values." }, { "slug": "KADOA_GET_WORKFLOW_JOB", "name": "Get Workflow Job", "description": "Tool to retrieve the current status and telemetry information for a specific workflow job. Use when you need to check the execution status, errors, or metadata of a particular job run." }, { "slug": "KADOA_GET_WORKFLOW_RUN_HISTORY", "name": "Get Workflow Run History", "description": "Tool to fetch workflow run history. Use when you need to retrieve past run records for a workflow after execution." }, { "slug": "KADOA_GET_WORKFLOWS", "name": "Get Workflows", "description": "Retrieve a paginated list of workflows with optional filtering. Use this tool to list all workflows in your Kadoa account. You can filter by: - search: Find workflows by name, URL, or ID - state: Filter by workflow state (ACTIVE, PAUSED, ERROR, etc.) - monitoring: Filter by whether monitoring is enabled Returns workflow details including name, state, URLs, schema, and run statistics." }, { "slug": "KADOA_GET_WORKFLOW_TRIGGER", "name": "Get Workflow Trigger", "description": "Tool to retrieve a specific trigger for a workflow. Use this when you need to inspect trigger details including its configuration and status." }, { "slug": "KADOA_GET_WORKFLOW_VALIDATION_RESULTS", "name": "Get Workflow Validation Results", "description": "Retrieves the latest validation results for a specific workflow job. Returns validation details including anomalies detected, rules executed, and schema issues. Returns has_results=false if no validation results exist for the specified job." }, { "slug": "KADOA_GET_WORKSPACE_DETAILS", "name": "Get Workspace Details", "description": "Tool to retrieve detailed information about a workspace (user, team, or organization). Use when you need to get workspace metadata including name, type, email, feature flags, and team information." }, { "slug": "KADOA_LIST_ACTIVITY", "name": "List Activity Events", "description": "Tool to retrieve activity events from audit logs with basic filtering and pagination. Use when you need to track workflow events, user actions, or system activities. Supports time-based filtering (absolute or relative), event type filtering, and resource filtering." }, { "slug": "KADOA_LIST_CHANGES", "name": "List Changes", "description": "Tool to retrieve all data changes detected across workflows in your Kadoa account. Use this when you need to monitor what data has changed in your workflows over time. You can filter changes by workflow IDs, date range, and paginate through results." }, { "slug": "KADOA_LIST_CRAWL_SESSIONS", "name": "List Crawl Sessions", "description": "Tool to retrieve a paginated list of crawling sessions with optional filtering. Use when you need to view all crawl sessions or filter by user ID." }, { "slug": "KADOA_LIST_JOB_VALIDATIONS", "name": "List Job Validations", "description": "Tool to list all validation runs for a specific job with pagination support. Use when you need to retrieve the full validation history for a job, not just the latest result." }, { "slug": "KADOA_LIST_NOTIFICATION_CHANNELS", "name": "List Notification Channels", "description": "Tool to retrieve all notification channels configured for the account. Use when you need to list available channels for alerts delivery." }, { "slug": "KADOA_LIST_NOTIFICATION_SETTINGS", "name": "List Notification Settings", "description": "Tool to retrieve all notification settings, with optional filtering by workflow ID or event type. Use when you need to list configured notifications or check existing settings before creating new ones." }, { "slug": "KADOA_LIST_SCHEMAS", "name": "List Schemas", "description": "Tool to retrieve all schemas accessible by the authenticated user. Use this when you need to see available schema definitions or find a specific schema by name or entity type." }, { "slug": "KADOA_LIST_SUPPORT_STATES", "name": "List Support States", "description": "Tool to retrieve available support issue states. Use when you need to see what states can be assigned to support tickets." }, { "slug": "KADOA_LIST_VALIDATION_RULES", "name": "List Validation Rules", "description": "Tool to list all data validation rules with optional pagination and filtering." }, { "slug": "KADOA_LIST_WORKFLOW_TRIGGERS", "name": "List Workflow Triggers", "description": "Tool to get all triggers where the specified workflow is the source. Use when you need to retrieve the list of triggers associated with a workflow, such as understanding what actions or workflows are triggered by this workflow's execution." }, { "slug": "KADOA_PAUSE_CRAWL_SESSION", "name": "Pause Crawl Session", "description": "Tool to pause an active crawling session. Use when you need to temporarily stop a running crawl without terminating it completely." }, { "slug": "KADOA_PAUSE_WORKFLOW", "name": "Pause Workflow", "description": "Tool to pause a running or scheduled workflow. Use when you need to temporarily stop a workflow from executing. The workflow will remain paused until explicitly resumed or reactivated." }, { "slug": "KADOA_POST_ADVANCED_WORKFLOW", "name": "Create Advanced Workflow", "description": "Tool to create an advanced workflow. Use when you need a valid advanced workflow ID before updating steps." }, { "slug": "KADOA_POST_CRAWL", "name": "Start Crawl Session", "description": "Starts a new web crawling session to crawl and index pages from a website. Use this tool when you need to: - Crawl an entire website or specific sections - Gather page content for extraction or analysis - Index multiple pages from a domain Returns a session_id that can be used with get_crawl_status to monitor progress and get_crawled_pages to retrieve the crawled content." }, { "slug": "KADOA_POST_NOTIFICATION_SETTING", "name": "Create Notification Setting", "description": "Tool to create a notification setting linking channels to events. Use when subscribing workflows or workspace-level notifications to specific events." }, { "slug": "KADOA_POST_NOTIFICATION_TEST", "name": "Send Test Notification", "description": "Sends a test notification event to verify notification channel configurations are working correctly. Use this tool to test that your notification channels (email, Slack, Teams, webhooks, etc.) are properly configured before relying on them for production workflows. The test sends a simulated event of the specified type, which will be delivered to all configured notification channels for that event type." }, { "slug": "KADOA_POST_WEBHOOK_SUBSCRIPTION", "name": "Subscribe to Webhook Events", "description": "Tool to subscribe to specified webhook events. This will create a webhook channel and then create notification settings for the provided events linking that channel." }, { "slug": "KADOA_POST_WORKFLOW", "name": "Create Workflow", "description": "Create a new Kadoa web scraping workflow. This tool creates a workflow that can extract structured data from web pages. Provide URLs to scrape, specify a navigation mode, and define the data schema. For structured extraction: Use 'single-page' mode with entity + fields. For paginated content: Use 'paginated-page' mode. For AI-driven navigation: Use 'agentic-navigation' mode with userPrompt (Enterprise only). Note: Workflow creation may take 60+ seconds as Kadoa analyzes the target URLs." }, { "slug": "KADOA_POST_WORKFLOW_MONITORING", "name": "Configure Workflow Monitoring", "description": "Configure monitoring and scheduling for a Kadoa workflow to detect data changes. This tool allows you to: - Set up recurring workflow runs at specified intervals (daily, hourly, weekly, etc.) - Enable monitoring to detect when specific fields change (e.g., price changes, stock updates) - Configure conditions to filter which changes trigger notifications Use this after creating a workflow or to update an existing workflow's monitoring settings. The workflow must exist before you can configure its monitoring." }, { "slug": "KADOA_POST_WORKFLOW_VALIDATION_RULE", "name": "Generate Workflow Validation Rule", "description": "Generate an AI-powered data validation rule for a Kadoa workflow. This tool uses AI to convert a natural-language description into a SQL-based validation rule that can detect data quality issues in workflow outputs. Prerequisites: - The workflow must have completed at least one successful job run - The workflow must have data validation enabled The generated rule will be created in 'preview' status for testing before activation. Use the List Validation Rules action to view created rules, and the Bulk Approve Validation Rules action to activate them." }, { "slug": "KADOA_PUT_NOTIFICATION_CHANNEL", "name": "Update Notification Channel", "description": "Tool to update an existing notification channel. Use when you need to modify channel details." }, { "slug": "KADOA_RESUME_CRAWL_SESSION", "name": "Resume Crawl Session", "description": "Tool to resume a paused crawling session. Use when you need to restart a crawl that was previously paused or stopped." }, { "slug": "KADOA_RESUME_WORKFLOW", "name": "Resume Workflow", "description": "Resumes a paused, preview, or error workflow. Use when you need to activate a workflow that is not currently running. Cannot resume workflows in certain states; check workflow state first using Get Workflows action." }, { "slug": "KADOA_RUN_ADHOC_EXTRACTION", "name": "Run Ad-hoc Extraction", "description": "Tool to synchronously extract data from a URL using a given template. Use after choosing the schemaId (custom or 'html', 'body', 'markdown')." }, { "slug": "KADOA_RUN_WORKFLOW", "name": "Run Workflow", "description": "Tool to trigger a workflow to run immediately. Use when you need to start a workflow execution on demand. Returns a job ID that can be used to track the execution status." }, { "slug": "KADOA_SCHEDULE_VALIDATION_JOB", "name": "Schedule Validation Job", "description": "Tool to schedule a data validation job for a specific workflow job. Use this to trigger validation rules on job data, detect anomalies, and ensure data quality. Supports custom SQL rules, dry-run mode, and idempotent validation IDs." }, { "slug": "KADOA_UNSUBSCRIBE_FROM_WEBHOOK_EVENTS", "name": "Unsubscribe from Webhook Events", "description": "Unsubscribe from webhook event notifications by deleting a notification setting. Use this tool when you need to: - Remove an existing notification subscription by its settings ID - Stop receiving webhook notifications for specific events - Clean up notification configurations The settings ID can be obtained from the response of the Subscribe to Webhook Events action or from listing notification settings." }, { "slug": "KADOA_UPDATE_NOTIFICATION_SETTINGS", "name": "Update Notification Settings", "description": "Tool to update existing notification settings for events. Use when modifying notification configurations such as enabled status, event type, event configuration, or linked channels." }, { "slug": "KADOA_UPDATE_SCHEMA", "name": "Update Schema", "description": "Tool to update an existing Kadoa schema. Use when you need to modify schema metadata (name, entity) or update the field definitions. At least one of name, entity, or fields must be provided to update the schema." }, { "slug": "KADOA_UPDATE_VALIDATION_CONFIG", "name": "Update Validation Configuration", "description": "Tool to update the complete data validation configuration including alerting settings for a specific workflow. Use this to modify validation status, alert thresholds, and notification preferences." }, { "slug": "KADOA_UPDATE_WORKFLOW_METADATA", "name": "Update Workflow Metadata", "description": "Tool to update workflow metadata such as name, description, tags, and configuration settings. Use when you need to modify an existing workflow's properties without recreating it." }, { "slug": "KADOA_UPDATE_WORKFLOW_TRIGGER", "name": "Update Workflow Trigger", "description": "Tool to update trigger properties including event type and enabled status. Use when you need to modify an existing workflow trigger's configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kadoa_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Kadoa API Key", "type": "string", "description": "Your Kadoa API key for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kaggle", "name": "Kaggle", "logo": "https://logos.composio.dev/api/kaggle", "description": "Kaggle is a platform for data science and machine learning competitions, offering datasets, notebooks, and a collaborative community.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 35, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "KAGGLE_COMPETITION_DOWNLOAD_FILES", "name": "Download competition data files", "description": "Downloads all data files for a Kaggle competition as a single zip archive. Returns a downloadable file object. Note: You must have accepted the competition's rules on Kaggle's website before downloading (403 error if not accepted)." }, { "slug": "KAGGLE_COMPETITION_SUBMIT", "name": "Submit Competition Entry", "description": "Submit an entry to a Kaggle competition using a previously uploaded file. Prerequisites: 1. You must have accepted the competition rules on Kaggle's website 2. You must have uploaded your submission file and obtained a blob_file_tokens (use Kaggle's file upload API endpoint first) This action performs the final submission step after file upload. The blob token identifies your uploaded file and associates it with your competition submission." }, { "slug": "KAGGLE_CONFIG_DIR", "name": "Get Kaggle Config Directory", "description": "Tool to retrieve the directory of the Kaggle API configuration file. Use when you need to locate the directory containing your kaggle.json credentials." }, { "slug": "KAGGLE_CONFIG_INIT", "name": "Initialize Kaggle Configuration", "description": "Initialize Kaggle API client configuration. This action sets up the necessary configuration file for Kaggle API access by first attempting to use the Kaggle CLI's 'kaggle config init' command. If the CLI is unavailable, it falls back to creating a kaggle.json file at ~/.kaggle/kaggle.json (or $KAGGLE_CONFIG_DIR/kaggle.json if that environment variable is set). The action is idempotent - if configuration already exists, it will not overwrite it. No parameters are required; the action uses environment variables and metadata when available. Run this before other Kaggle actions when credentials are missing or when KAGGLE_CONFIG_VIEW returns empty/error output." }, { "slug": "KAGGLE_CONFIG_KEYS", "name": "List Kaggle Configuration Keys", "description": "Tool to list local Kaggle API configuration keys. Use when you need to see which configuration options are set without revealing values." }, { "slug": "KAGGLE_CONFIG_PATH", "name": "Get Kaggle Config Path", "description": "Tool to retrieve local Kaggle API configuration file path. Use when you need to know the location of the Kaggle config before operations." }, { "slug": "KAGGLE_CONFIG_RESET", "name": "Reset Kaggle Configuration", "description": "Tool to reset local Kaggle CLI configuration to defaults. Clears CLI-managed keys ('competition', 'path', 'proxy')." }, { "slug": "KAGGLE_CONFIG_SET", "name": "Set Kaggle Configuration", "description": "Tool to set a Kaggle CLI configuration parameter. Use when updating local CLI settings such as default download path or proxy. Ensure Kaggle CLI is installed." }, { "slug": "KAGGLE_CONFIG_UNSET", "name": "Unset Kaggle Configuration", "description": "Tool to unset a Kaggle CLI configuration parameter. Use when removing local CLI settings such as default download path or proxy. Ensure Kaggle CLI is installed." }, { "slug": "KAGGLE_CONFIG_VIEW", "name": "View Kaggle Configuration", "description": "View local Kaggle API credentials and configuration settings. This action reads Kaggle configuration from local sources (does NOT make API calls to Kaggle). Configuration is retrieved in the following precedence order: 1. kaggle.json file (from KAGGLE_CONFIG_DIR env var, ~/.config/kaggle/, or ~/.kaggle/) 2. 'kaggle config view' CLI output (for proxy/path settings) 3. Environment variables (KAGGLE_USERNAME, KAGGLE_KEY) 4. Authorization header from metadata Use this action to: - Verify Kaggle credentials are configured before making API calls - Check current proxy settings - Debug authentication issues Returns empty strings for username/key if no credentials are found; use KAGGLE_CONFIG_INIT to set up credentials first. Note: username and key are independent — an empty username field does not indicate missing or invalid credentials. WARNING: This action returns sensitive API key data in plain text." }, { "slug": "KAGGLE_DATASET_CREATE", "name": "Dataset Create", "description": "Create a new Kaggle dataset with metadata. IMPORTANT: Dataset creation requires at least one data file. Ensure files are uploaded before calling this action. The 'id' field must use your authenticated Kaggle username as the owner. Returns the creation status and any message from the Kaggle API." }, { "slug": "KAGGLE_DATASET_INIT", "name": "Kaggle Dataset Init", "description": "Tool to initialize a dataset-metadata.json file in a local folder. Use when preparing a dataset folder before uploading to Kaggle." }, { "slug": "KAGGLE_DATASET_LIST_FILES", "name": "List Kaggle Dataset Files", "description": "Tool to list files in a Kaggle dataset. Use when you need to retrieve paginated file listings by owner and dataset slugs, with optional version and paging controls." }, { "slug": "KAGGLE_DATASET_STATUS", "name": "Get Dataset Status", "description": "Check the processing status of a Kaggle dataset after creation or version update. This endpoint is used to monitor datasets that are currently being processed by Kaggle's servers. It returns status information for datasets that are actively uploading, processing, or experiencing errors. For already-published datasets, this endpoint typically returns 404 (Not Found), which is expected behavior. Use this tool immediately after creating a new dataset (KAGGLE_DATASET_CREATE) or updating an existing dataset version (KAGGLE_DATASET_VERSION) to check when the dataset becomes ready. Poll this endpoint periodically until the status indicates completion or error." }, { "slug": "KAGGLE_DATASET_VERSION", "name": "Create Dataset Version", "description": "Create a new version of an existing Kaggle dataset. Prerequisites: - You must own the dataset or have edit permissions - Files must be uploaded first to obtain upload tokens (required for the 'files' parameter) Use this when you have updated files or metadata and need to publish a new version of an existing dataset." }, { "slug": "KAGGLE_DOWNLOAD_COMPETITION_FILE", "name": "Download competition file", "description": "Tool to download a specific data file from a Kaggle competition. Use when you need to retrieve a single file from a competition by specifying the competition slug and filename. Note: You must have accepted the competition's rules on Kaggle's website before downloading." }, { "slug": "KAGGLE_DOWNLOAD_COMPETITION_LEADERBOARD", "name": "Download competition leaderboard", "description": "Tool to download the entire competition leaderboard as a CSV file packaged in a ZIP archive. Use when you need to analyze or review competition standings and scores." }, { "slug": "KAGGLE_DOWNLOAD_DATASET", "name": "Download Kaggle Dataset", "description": "Tool to download all files from a Kaggle dataset as a zip archive. Supports downloading specific versions by providing the dataset_version_number parameter." }, { "slug": "KAGGLE_DOWNLOAD_DATASET_FILE", "name": "Download Kaggle Dataset File", "description": "Tool to download a specific file from a Kaggle dataset. Use when you need to retrieve a single file from a dataset by specifying the owner, dataset, and filename." }, { "slug": "KAGGLE_GENERATE_COMPETITION_SUBMISSION_URL", "name": "Generate Competition Submission URL", "description": "Tool to generate a pre-signed URL for uploading competition submission files. Use this before uploading your submission file to Kaggle. This action generates a temporary upload URL and token for submitting to a competition. You must provide the competition ID, file size, and last modified timestamp. After obtaining the URL, upload your submission file to the createUrl, then use the token to finalize the submission." }, { "slug": "KAGGLE_GET_DATASET_METADATA", "name": "Get Dataset Metadata", "description": "Tool to get comprehensive metadata for a Kaggle dataset including title, description, licenses, and tags. Use when you need detailed information about a dataset's structure, schema, or properties." }, { "slug": "KAGGLE_GET_MODEL", "name": "Get Model Details", "description": "Tool to get a Kaggle model's details including metadata and description. Use when you need information about a specific model on Kaggle." }, { "slug": "KAGGLE_GET_MODEL_INSTANCE", "name": "Get Model Instance Details", "description": "Tool to get details for a specific Kaggle model instance (variation). Returns metadata including overview, usage instructions, download URL, version information, and license details. Use when you need to inspect or retrieve information about a specific model variation before downloading or using it." }, { "slug": "KAGGLE_KERNEL_INIT", "name": "Kaggle Kernel Init", "description": "Initialize a kernel-metadata.json template file in a specified folder. This file is required before pushing/uploading a kernel to Kaggle. The template includes default values for kernel configuration (language, kernel_type, GPU settings, etc.) that can be customized before pushing. Use this when setting up a new Kaggle kernel locally." }, { "slug": "KAGGLE_KERNEL_OUTPUT", "name": "Download kernel output", "description": "Tool to download the output of a Kaggle kernel. Use when needing the latest kernel results locally." }, { "slug": "KAGGLE_KERNELS_STATUS", "name": "Get Kernel Status", "description": "Get the execution status of a Kaggle kernel (notebook). Returns current status (running, complete, error), timestamps, and output URL. Use this to monitor kernel execution after pushing/submitting a kernel. Note: You need permission to access the kernel - typically only your own kernels or public kernels you have access to." }, { "slug": "KAGGLE_LIST_COMPETITION_FILES", "name": "List competition data files", "description": "Tool to list all data files available for a Kaggle competition. Use when you need to retrieve file names, sizes, and metadata for competition datasets before downloading." }, { "slug": "KAGGLE_LIST_COMPETITIONS", "name": "List Kaggle Competitions", "description": "Tool to list available Kaggle competitions with filters and pagination. Use when you need to discover competitions, search by keywords, or filter by category, group, and sorting options." }, { "slug": "KAGGLE_LIST_DATASETS", "name": "List Kaggle Datasets", "description": "Tool to list Kaggle datasets with filters and pagination. Use after authenticating with Kaggle API key." }, { "slug": "KAGGLE_LIST_KERNEL_OUTPUT_FILES", "name": "List Kernel Output Files", "description": "Tool to list output files for a specific kernel run. Use when you need to retrieve paginated file listings by kernel owner and slug." }, { "slug": "KAGGLE_LIST_KERNELS", "name": "List Kaggle Kernels", "description": "Tool to list Kaggle kernels (notebooks and scripts) with filters and pagination. Use to discover kernels by search terms, user, language, type, competition, or dataset." }, { "slug": "KAGGLE_LIST_MODEL_INSTANCE_VERSION_FILES", "name": "List Model Instance Version Files", "description": "Tool to list files for a specific version of a model variation. Use when you need to retrieve files for a particular model framework instance version by owner, model, framework, variation, and version." }, { "slug": "KAGGLE_LIST_MODELS", "name": "List Kaggle Models", "description": "Tool to list Kaggle models with optional filters for owner, sorting, search, and pagination. Use to discover available models on Kaggle's platform." }, { "slug": "KAGGLE_PULL_KERNEL", "name": "Pull Kernel Code", "description": "Tool to pull (download) the source code of a Kaggle kernel to local storage. Use when you need to retrieve a kernel's notebook, script, or metadata files. Optionally include metadata JSON file with kernel configuration details." }, { "slug": "KAGGLE_VIEW_COMPETITION_LEADERBOARD", "name": "View competition leaderboard", "description": "Tool to view competition leaderboard information showing rankings and scores of participants. Use when you need to check competition standings, team scores, or analyze leaderboard positions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kaggle_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Kaggle API Key", "type": "string", "description": "Your Kaggle API Key. Get this from your Account > API section (downloads as kaggle.json).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kaleido", "name": "Kaleido", "logo": "https://logos.composio.dev/api/kaleido", "description": "Kaleido is a full-stack platform for building and managing enterprise blockchain networks and applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KALEIDO_ADD_IDENTITY_PROOF", "name": "Add Organization Identity Proof", "description": "Add an x509 identity proof to a Kaleido organization. Use this to register a certificate chain that links an organization's off-chain PKI identity to their blockchain accounts. The certificate will be in 'pending' state until verified." }, { "slug": "KALEIDO_CREATE_API_KEY", "name": "Create API Key", "description": "Creates a new API key for the specified Kaleido organization. The returned apikey secret should be stored securely as it cannot be retrieved again. Use KALEIDO_GET_ORGANIZATIONS to obtain a valid org_id first. Note: Organizations have a limit on active API keys (e.g., 5 for starter plans)." }, { "slug": "KALEIDO_DELETE_API_KEY", "name": "Delete API Key", "description": "Permanently deletes an API key by its ID. First use 'Get API Keys' to retrieve the list of API keys and their IDs. The deletion is irreversible." }, { "slug": "KALEIDO_DELETE_ORGANIZATION_IDENTITY_PROOF", "name": "Delete Organization Identity Proof", "description": "Remove an x509 identity proof from a Kaleido organization. This permanently deletes the identity proof. The deletion is irreversible." }, { "slug": "KALEIDO_GET_API_KEY", "name": "Get API Key", "description": "Tool to retrieve details of a specific API key by its ID. Use when you need to get information about a particular API key after obtaining its ID from the Get API Keys action." }, { "slug": "KALEIDO_GET_API_KEYS", "name": "Get API Keys", "description": "Tool to retrieve all API keys associated with the organization. Use when you need an overview of existing API keys after authenticating." }, { "slug": "KALEIDO_GET_APPLICATION_CREDENTIALS", "name": "Get Application Credentials", "description": "Tool to retrieve application credentials for a specific environment. Use when you need to list DApp credentials after environment setup." }, { "slug": "KALEIDO_GET_BILLING_SUMMARY", "name": "Get Billing Summary", "description": "Retrieves a summary of billing data for the specified organization for the current month. Use this to view costs breakdown by memberships, nodes, services, storage, and support." }, { "slug": "KALEIDO_GET_CONSORTIA", "name": "Get Consortia", "description": "Tool to retrieve all consortia associated with the organization. Use after authenticating to view existing consortia." }, { "slug": "KALEIDO_GET_EVENT_STREAMS", "name": "Get Event Streams", "description": "List all event streams configured on a Kaleido blockchain node's Ethconnect REST API Gateway. Event streams provide at-least-once delivery of Ethereum events from your blockchain node to webhook endpoints or WebSocket connections. Use this tool to retrieve the current event stream configurations. Note: Requires environment_id, node_id, and zone_domain to construct the Ethconnect URL, or a full_url override. Without these, falls back to the console API which may not return event streams data." }, { "slug": "KALEIDO_GET_IDENTITY_PROOF", "name": "Get Organization Identity Proof", "description": "Tool to retrieve a specific identity proof for a Kaleido organization. Use when you need details about a specific x509 certificate or identity proof that was previously added to an organization." }, { "slug": "KALEIDO_GET_INVITATIONS", "name": "Get Invitations", "description": "Tool to retrieve all invitations for the current user where they are the target. Use after authenticating to view pending invitations." }, { "slug": "KALEIDO_GET_MEMBERSHIPS", "name": "Get Memberships", "description": "Tool to retrieve all memberships for the current user. Use after authenticating to list user memberships." }, { "slug": "KALEIDO_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve details of a specific Kaleido organization by its ID. Use when you need to fetch information about a particular organization." }, { "slug": "KALEIDO_GET_ORGANIZATION_PLAN", "name": "Get Organization Plan", "description": "Retrieve the subscription plan details for a Kaleido organization. Returns plan name, waitlist status, and resource limits including allowed providers, nodes, services, configurations, and features. Use GET_ORGANIZATIONS first to obtain valid org_id values." }, { "slug": "KALEIDO_GET_ORGANIZATIONS", "name": "Get Organizations", "description": "Retrieves all organizations that the authenticated user has access to in Kaleido. Returns organization details including: - Organization ID, name, and type - Subscription plan and billing information - Plan limits (allowed providers, nodes, services, etc.) - Creation and update timestamps Use this action to discover available organizations before performing other organization-specific operations like listing consortia, memberships, or services." }, { "slug": "KALEIDO_GET_ORG_BILLING_PROVIDER", "name": "Get Organization Billing Provider", "description": "Retrieves billing provider information for a specific organization in Kaleido. Returns the type of billing provider (AWS, Stripe, or other) and includes detailed payment information if the organization uses Stripe billing (card details, billing address)." }, { "slug": "KALEIDO_GET_PLANS", "name": "Get Plans", "description": "Retrieve all available Kaleido subscription plans. Returns plan details including enabled status, tier level, and resource limits. Use this to discover available plans before creating or upgrading environments." }, { "slug": "KALEIDO_GET_REGIONS", "name": "Get Regions", "description": "Retrieve all available Kaleido deployment regions and their deployment zones. Returns a dictionary of regions (keyed by region code like 'u0', 'e0', 'a0', 'k0', 'u1', 'e1') with each region containing its API console host URL and available deployment zones. Use this action to discover which geographic regions are available for deploying blockchain environments and whether they are currently accepting new deployments." }, { "slug": "KALEIDO_GET_RELEASES", "name": "Get Releases", "description": "Retrieve all available blockchain node software releases from the Kaleido platform. Use this tool to: - List all runtime releases available for different blockchain providers (quorum, geth, besu, corda, fabric) - Check version information and release statuses (ga, beta, interim, deprecated) - Find container image tags associated with each release - Understand upgrade prerequisites via prereq_eips and optional_eips fields Returns a list of releases sorted by creation date, including current and historical versions. No input parameters are required." }, { "slug": "KALEIDO_GET_ROLE_BY_ID", "name": "Get Role By ID", "description": "Retrieve a specific user role assignment within a Kaleido organization. Returns detailed information about the role including user ID, email, role name (e.g., 'admin'), and associated metadata. Use GET_ORGANIZATIONS to obtain org_id and GET_ROLES to obtain role_id values." }, { "slug": "KALEIDO_GET_ROLES", "name": "Get Roles", "description": "Retrieve all user role assignments for a Kaleido organization. Returns each user's role (e.g., 'admin'), email, and associated metadata. Use GET_ORGANIZATIONS first to obtain valid org_id values." }, { "slug": "KALEIDO_GET_SERVICES", "name": "Get Services", "description": "Tool to retrieve all services the current user owns or can see. Use after authenticating to list available services." }, { "slug": "KALEIDO_GET_TOKEN_FACTORY_TOKENS", "name": "Get Token Factory Tokens", "description": "Retrieves all token contracts from a Kaleido Token Factory service. The Token Factory service enables deployment of ERC20 (fungible) and ERC721 (non-fungible) token contracts. This action lists all token contracts created through the service. Prerequisites: - A Token Factory service must be provisioned in your Kaleido environment - Obtain the service URL from GET /services action (look for 'tokenfactory' service type) Returns token contract details including: - Token name, symbol, and type (ERC20/ERC721) - Contract deployment status and address - Minting and burning capabilities - Creation timestamps" }, { "slug": "KALEIDO_GET_WALLET_ACCOUNT_NONCE", "name": "Get Wallet Account Nonce", "description": "Retrieve the current nonce (transaction count) of a specific HD wallet account. The nonce is essential for signing Ethereum transactions - it ensures transactions are processed in order and prevents replay attacks. Call this before signing a transaction to get the correct nonce value. Prerequisites: - An HD Wallet service must be provisioned in your Kaleido environment - A wallet must exist (created via POST /wallets) - You need the service API base URL from GET /services endpoint" }, { "slug": "KALEIDO_GET_WALLETS", "name": "Get Wallets", "description": "Tool to retrieve HD wallet IDs hosted in the service. Use after creating or importing HD wallets to enumerate available wallets." }, { "slug": "KALEIDO_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update a specific organization in Kaleido. Use when you need to modify organization properties such as name, billing details, or authentication settings. First obtain the org_id using the Get Organizations action." }, { "slug": "KALEIDO_UPDATE_ORG_ROLE", "name": "Update Organization Role", "description": "Update the role assignment for a user in a Kaleido organization. Use this to change a user's permissions level (e.g., promoting to admin). Returns the updated role details including the new revision token and updated timestamp." }, { "slug": "KALEIDO_UPSERT_ORGANIZATION_ROLE", "name": "Upsert Organization Role", "description": "Upsert (create or update) a role assignment for a user in a Kaleido organization. Returns 201 for new roles and 200 for updates. The _revision field increments with each update. Use GET_ORGANIZATIONS to obtain valid org_id values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kaleido_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Kaleido API Key", "type": "string", "description": "The API key used for authenticating requests to the Kaleido administrative API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kanbanflow", "name": "KanbanFlow", "logo": "https://logos.composio.dev/api/kanbanflow", "description": "Lean project management tool with Kanban boards and Pomodoro time tracking for team collaboration.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kanbanflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "To create an API Token, click on Menu in the top right corner of a premium board and select Settings. Then go to API & Webhooks.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kanbanize", "name": "Kanbanize", "logo": "https://logos.composio.dev/api/kanbanize", "description": "Kanbanize is designed to help advanced product teams apply the principles of Lean and Kanban to their work to maximize results.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KANBANIZE_ADD_CARD_COMMENT", "name": "Add a comment to a card", "description": "Tool to add a comment to a Kanbanize card. Use when you need to add notes, updates, or any text-based information to an existing card." }, { "slug": "KANBANIZE_CHECK_BOARD_MILESTONE", "name": "Check Board Milestone", "description": "Tool to check if a milestone is available on the specified board. Use when you need to verify milestone existence on a specific board. Returns True if the milestone is available (HTTP 204), False if not found (HTTP 404)." }, { "slug": "KANBANIZE_CHECK_USER_IS_CARD_WATCHER", "name": "Check User Is Card Watcher", "description": "Tool to check if a user is a watcher of a specific card. Use when you need to verify if a user is watching a card." }, { "slug": "KANBANIZE_DELETE_BOARD", "name": "Delete Board", "description": "Tool to delete a board by its ID. Use when you need to permanently remove a board from Kanbanize. Note: The board must be archived before deletion." }, { "slug": "KANBANIZE_DELETE_CARD", "name": "Delete Card", "description": "Tool to delete a card from the Kanbanize board. Use when you need to permanently remove a card and all its associated data from the board." }, { "slug": "KANBANIZE_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag from Kanbanize. Use when removing a tag and optionally replacing it with another tag for all affected cards." }, { "slug": "KANBANIZE_DELETE_WORKFLOW", "name": "Delete Workflow", "description": "Tool to delete a workflow for the specified board. Use when you need to permanently remove a workflow from a board." }, { "slug": "KANBANIZE_GET_BOARD_BLOCK_REASONS", "name": "Get Board Block Reasons", "description": "Tool to get a list of block reasons available on a board. Use when you need to retrieve available block reasons for a specific board." }, { "slug": "KANBANIZE_GET_BOARD_CARD_TEMPLATES", "name": "Get Board Card Templates", "description": "Tool to retrieve a list of card templates available on a Kanbanize board. Use when you need to see what card templates are configured for a specific board." }, { "slug": "KANBANIZE_GET_CHILD_CARDS", "name": "Get Child Cards", "description": "Tool to retrieve a list of child cards for a specified parent card. Use when you need to view all cards that are children of a given parent card in the Kanbanize hierarchy." }, { "slug": "KANBANIZE_GET_COLUMN", "name": "Get Column", "description": "Tool to get the details of a specific column from a Kanbanize board. Use when you need to retrieve column information such as name, WIP limit, card ordering, or workflow configuration." }, { "slug": "KANBANIZE_GET_COLUMNS", "name": "Get Columns", "description": "Tool to get a list of columns for a specific board in Kanbanize. Use when you need to retrieve all columns configured for a board, including their workflow assignments, positions, limits, and display settings." }, { "slug": "KANBANIZE_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Tool to retrieve a list of custom fields from Kanbanize with optional filtering. Use when you need to fetch custom field definitions, filter by field IDs, name, availability level, enabled status, types, or retrieve additional details like boards, card counts, and business rules." }, { "slug": "KANBANIZE_GET_STICKERS", "name": "Get Stickers", "description": "Tool to retrieve a list of stickers with optional filtering by sticker IDs, label, availability, and enabled status. Use when you need to fetch stickers from Kanbanize to apply to cards or to view available stickers in the system." }, { "slug": "KANBANIZE_GET_USER", "name": "Get User", "description": "Tool to get the details of a specified user in Kanbanize. Use when you need to retrieve information about a user such as their username, email, real name, avatar, enabled status, language preferences, timezone, and other attributes." }, { "slug": "KANBANIZE_GET_WORKFLOW_CYCLE_TIME_COLUMNS", "name": "Get workflow cycle time columns", "description": "Tool to retrieve workflow's cycle time columns from a Kanbanize board. Use when you need to identify which columns are included in cycle time calculations for a specific workflow." }, { "slug": "KANBANIZE_GET_WORKSPACE_DATA_FIELDS", "name": "Get Workspace Data Fields", "description": "Tool to retrieve a list of data fields available on a workspace. Use when you need to fetch all custom data fields configured for a specific Kanbanize workspace." }, { "slug": "KANBANIZE_REMOVE_BOARD_BLOCK_REASON", "name": "Remove Board Block Reason", "description": "Tool to make a block reason unavailable on a board. Use when you need to remove a specific block reason from a board's available options." }, { "slug": "KANBANIZE_REMOVE_CHILD_CARD", "name": "Remove Child Card", "description": "Tool to remove the link between a parent card and a child card. Use when you need to unlink a child card from its parent card in Kanbanize." }, { "slug": "KANBANIZE_SET_CARD_BLOCK_REASON", "name": "Set card block reason", "description": "Tool to block a Kanbanize card by setting a block reason. Use when you need to mark a card as blocked and specify the reason preventing progress." }, { "slug": "KANBANIZE_UPDATE_BOARD_STICKER", "name": "Update Board Sticker", "description": "Tool to update the properties of a sticker for the specified board. Use when you need to modify usage limits for a sticker on a board or card." }, { "slug": "KANBANIZE_UPDATE_DATA_FIELD_WORKSPACES", "name": "Update Data Field Workspaces", "description": "Tool to add, update, or remove a data field on one or more workspaces via batch operations. Use when you need to configure data field availability and settings across multiple workspaces." }, { "slug": "KANBANIZE_UPDATE_LANE_DEFAULT_SETTING", "name": "Update Lane Default Setting", "description": "Tool to update the default value of a specific lane setting in Kanbanize. Use when you need to modify default settings for a lane on a board." }, { "slug": "KANBANIZE_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update the specified tag in Kanbanize. Use when you need to modify tag properties like label, color, availability, or enabled status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kanbanize_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "If your Kanbanize URL is https://12345678.kanbanize.com/, your subdomain is 12345678", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To generate an API key, go to your Kanbanize account, click on the user dropdown menu at the top right corner and select \"API\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "keen_io", "name": "Keen.io", "logo": "https://logos.composio.dev/api/keen_io", "description": "Keen.io is an embedded analytics API that enables developers to collect, analyze, and visualize event data seamlessly.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KEEN_IO_INSPECT_ALL_EVENT_COLLECTIONS", "name": "Inspect All Event Collections", "description": "Retrieve schema information for all event collections in a Keen.io project. Use this tool to: - List all event collection names in a project - Discover the schema (property names and types) for each collection - Explore available data before running queries Returns up to 5000 event collections with their names, URLs, and optional property schemas." }, { "slug": "KEEN_IO_INSPECT_COLLECTION_PROPERTY", "name": "Inspect Collection Property", "description": "Tool to return details for a specific property in an event collection. Use when you need to inspect a property's inferred type and resource URL." }, { "slug": "KEEN_IO_INSPECT_SINGLE_EVENT_COLLECTION", "name": "Inspect Single Event Collection", "description": "Retrieve schema information for a single Keen.io event collection. Returns the inferred property types for all fields in the specified collection, useful for understanding data structure before running queries. Property types include 'num' (numbers), 'string' (text), 'bool' (booleans), and 'datetime' (timestamps). Use this tool when you need to: - Understand the structure of a specific event collection - Verify property names and types before building queries - Debug data type mismatches in analytics queries" }, { "slug": "KEEN_IO_LIST_CACHED_DATASETS", "name": "List Cached Dataset Definitions", "description": "List all cached dataset definitions for a Keen.io project. Returns paginated results of pre-computed dataset definitions including their query configuration, status, and timing information. Use limit and after_name parameters to page through large result sets. Cached datasets allow pre-computing analytics for hundreds or thousands of entities at once, enabling instant retrieval of results for any indexed entity." }, { "slug": "KEEN_IO_SELECT_UNIQUE", "name": "Select Unique", "description": "Tool to return unique values for a target property. Use when distinct property values are required for matching events with optional filters and timeframe constraints." }, { "slug": "KEEN_IO_UNREVOKE_ACCESS_KEY", "name": "Unrevoke Access Key", "description": "Reactivate a previously revoked Keen.io access key. Use this tool when you need to restore access for a key that was previously revoked but not deleted. A revoked key has its 'active' flag set to false; this operation sets it back to true, allowing the key to be used for API authentication again. Note: This operation requires a Master API Key for authentication. The key must have been previously revoked (not deleted) to be unrevoked." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "keen_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Master Key", "type": "string", "description": "The most powerful API key. Required for administrative functions like deleting data or managing project settings.", "required": true, "default": null }, { "name": "generic_token", "displayName": "Write Key", "type": "string", "description": "API key for data-writing operations. Required for sending events to Keen.io.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Read Key", "type": "string", "description": "API key for querying and analyzing data. Required for running queries and extracting data.", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "Keen Project ID", "type": "string", "description": "The unique identifier for your Keen.io project, used to construct the API request URL.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "keyword", "name": "Keyword", "logo": "https://logos.composio.dev/api/keyword", "description": "Keyword.com is a digital marketing platform that provides search engine ranking tracking and SEO analytics", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KEYWORD_ADD_KEYWORDS", "name": "Add Keywords", "description": "Tool to add keywords to a Keyword.com project for search ranking tracking. Use when you need to monitor how specific URLs rank for target keywords across different Google regions and devices." }, { "slug": "KEYWORD_ARCHIVE_PROJECT", "name": "Archive Project", "description": "Tool to archive a project in Keyword.com. Sets the project status to Archived. Use when you need to archive a project without permanently deleting it. The project will remain archived until restored or permanently deleted." }, { "slug": "KEYWORD_CREATE_PROJECT", "name": "Create Project or Group", "description": "Tool to create a new project or group in Keyword.com account. Use when you need to create a new project for organizing keywords or create a group within an existing project. For groups, the category must follow the naming convention with [sub] delimiter (e.g., ProjectName[sub]GroupName)." }, { "slug": "KEYWORD_DELETE_KEYWORD", "name": "Delete Keyword", "description": "Tool to delete a single keyword from a project or group. Use when you need to permanently remove a keyword. Warning: This action cannot be undone and all historic ranking data will be lost." }, { "slug": "KEYWORD_DELETE_KEYWORDS_BULK", "name": "Bulk delete keywords", "description": "Tool to bulk delete multiple keywords from a single project by providing keyword IDs. Use when you need to remove multiple keywords at once from a project." }, { "slug": "KEYWORD_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a single project or group from Keyword.com. Use when you need to permanently remove a project. This action cannot be undone." }, { "slug": "KEYWORD_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the current authenticated user's account information. Returns user profile details including ID, name, email, onboarding status, and optionally subscription information." }, { "slug": "KEYWORD_GET_KEYWORD", "name": "Get Keyword", "description": "Tool to retrieve all keyword settings and ranking metrics for a single keyword. Use when you need to get detailed information about a keyword's performance and configuration. Can optionally retrieve data for a specific date." }, { "slug": "KEYWORD_GET_PROJECT", "name": "Get Project Details", "description": "Tool to retrieve a single project's summary from Keyword.com. Returns groups, tags, keyword counts, and the PROJECT AUTH KEY required for detailed data collection. Use when you need project details or the auth key for further API operations." }, { "slug": "KEYWORD_GET_PROJECT_METRICS", "name": "Get Project Metrics", "description": "Retrieve keyword movement metrics for a project, group, or tag. Returns ranking changes (daily, weekly, or monthly) including number of keywords that improved, declined, or remained unchanged, along with detailed movement data for individual keywords." }, { "slug": "KEYWORD_GET_RANKING_HISTORY", "name": "Get Keyword Ranking History", "description": "Tool to retrieve Google ranking history for specified keywords for up to 180 days. Use when you need to analyze historical ranking trends or track keyword performance over time. Returns daily ranking positions grouped by keyword ID and domain." }, { "slug": "KEYWORD_GET_SOV_HISTORY", "name": "Get Share of Voice History", "description": "Retrieve Share of Voice data over time for a specific project. Use when you need historical SOV metrics. Supports ranges of 7, 30, 90, 180, and 365 days with varying data point intervals." }, { "slug": "KEYWORD_GET_TOP_PAGES", "name": "Get Top Pages", "description": "Tool to retrieve Top Pages data for a project showing ranking URLs with keyword counts, average rank, search volume, and cost per click metrics. Use when you need to analyze which pages are ranking for the most keywords in a project." }, { "slug": "KEYWORD_LIST_ACTIVE_PROJECTS", "name": "List Active Projects", "description": "Tool to retrieve all active projects with their groups, tags, and keyword counts. Returns PROJECT AUTH KEY for each project which is required to collect detailed project and keyword data." }, { "slug": "KEYWORD_LIST_ALERTS", "name": "List Alerts", "description": "Tool to retrieve all alerts for the Keyword.com account with pagination and sorting options. Use when you need to fetch alerts, check alert status, or monitor notifications. Supports filtering by view type and retrieving only recent alerts." }, { "slug": "KEYWORD_LIST_KEYWORDS", "name": "List Keywords", "description": "Tool to retrieve all keywords and their ranking data in a project or group. Use when you need to get keyword rankings, search volumes, and position changes. Supports pagination with per_page (max 250) and page parameters, and can filter by specific date." }, { "slug": "KEYWORD_LIST_PROJECT_REGIONS", "name": "List Project Regions", "description": "Tool to list all Google regions being tracked in a Keyword.com project. Returns each region with the count of keywords being monitored in that region. Use when you need to see which geographic regions are configured for keyword tracking in a specific project." }, { "slug": "KEYWORD_REFRESH_KEYWORDS", "name": "Refresh Keywords", "description": "Tool to trigger an on-demand update for all keywords in one or more projects or groups. Use when you need to refresh keyword rankings data immediately instead of waiting for the scheduled update. Returns the number of refreshes remaining for the day." }, { "slug": "KEYWORD_RESTORE_PROJECT", "name": "Restore Archived Project", "description": "Tool to restore an archived project or group. Use when you need to unarchive a project and resume keyword tracking. Once restored, keywords will automatically update during the next scheduled cycle." }, { "slug": "KEYWORD_UPDATE_KEYWORDS", "name": "Update Keywords", "description": "Tool to update keyword settings in a project. Updates tracking parameters such as device type, tracked URL, Google region, language, and URL tracking method for multiple keywords at once. Use when you need to modify keyword tracking configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "keyword_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Get your API token from Settings > Account tab at https://app.keyword.com/settings/account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kibana", "name": "Kibana", "logo": "https://logos.composio.dev/api/kibana", "description": "Kibana is a visualization and analytics platform for Elasticsearch, offering dashboards, data exploration, and monitoring capabilities for gaining insights from data", "category": "analytics", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 47, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KIBANA_DELETE_ALERTING_RULES", "name": "Delete Alerting Rule", "description": "Tool to delete an alerting rule in Kibana. Use when you need to remove a specific alerting rule by its ID." }, { "slug": "KIBANA_DELETE_CONNECTORS", "name": "Delete Connector", "description": "Tool to delete a connector in Kibana. Use when you need to remove an existing connector." }, { "slug": "KIBANA_DELETE_FLEET_OUTPUT", "name": "Delete Fleet Output", "description": "Tool to delete a specific output configuration in Kibana Fleet. Use when you need to remove an existing output by its ID." }, { "slug": "KIBANA_DELETE_FLEET_PROXY", "name": "Delete Fleet Proxy", "description": "Deletes a Fleet proxy configuration by its unique identifier. Fleet proxies enable agents to communicate through proxy servers. Use this action to remove proxy configurations that are no longer needed. The proxy must not be in use by any agent policies or outputs before deletion. Requires 'fleet-settings-all' privileges in Kibana." }, { "slug": "KIBANA_DELETE_LIST", "name": "Delete List", "description": "Deletes a list. Use when you want to delete a list by its ID." }, { "slug": "KIBANA_DELETE_OSQUERY_SAVED_QUERIES", "name": "Delete Osquery Saved Query", "description": "Delete a saved Osquery query by its saved object ID. Use this to remove a specific Osquery saved query from Kibana. IMPORTANT: This action requires the 'saved_object_id' (UUID format), not the custom 'id' field. You can obtain the saved_object_id by listing queries first or from the response when creating a query." }, { "slug": "KIBANA_DELETE_SAVED_OBJECTS", "name": "Delete Saved Object", "description": "Tool to delete a saved object in Kibana. Use when you need to remove a specific saved object like a visualization or dashboard." }, { "slug": "KIBANA_FIND_ALERTS", "name": "Find Kibana Alerts", "description": "Tool to find and/or aggregate detection alerts in Kibana. Use this to retrieve a list of alerts, optionally filtering them with a query and performing aggregations." }, { "slug": "KIBANA_GET_ACTION_TYPES", "name": "Get Action Types", "description": "Retrieves all available connector types (actions) in Kibana. Connector types (also called action types) are integrations like Slack, Email, Webhook, ServiceNow, etc. that can be used with alerting rules, cases, and workflows. Use this to discover which connector types are available and their requirements (license, features) before creating a new connector instance. Returns detailed information about each connector type including: - ID (e.g., '.slack', '.email', '.webhook') - Display name and enabled status - License requirements (basic, gold, platinum, enterprise) - Supported features (alerting, cases, workflows, etc.) - Configuration and deprecation status" }, { "slug": "KIBANA_GET_ALERTING_RULES", "name": "Get Alerting Rules", "description": "Tool to retrieve a list of alerting rules in Kibana. Use when you need to get a paginated set of rules based on specified conditions." }, { "slug": "KIBANA_GET_ALERT_TYPES", "name": "Get Rule Types", "description": "Retrieves available rule types (alert types) in Kibana. Returns comprehensive metadata about each rule type including: - Available action groups and variables for action templates - License requirements and authorization details - Category (management, observability, securitySolution) - Configuration options like auto-recovery and timeout settings Use this to discover what types of alerting rules can be created in your Kibana instance, such as Elasticsearch query alerts, index threshold alerts, machine learning anomaly detection, and security detection rules." }, { "slug": "KIBANA_GET_CASES", "name": "Get Cases", "description": "Tool to retrieve a list of cases in Kibana. Use when you need to find or list existing security or operational cases, potentially filtering by various attributes like status, assignee, or severity." }, { "slug": "KIBANA_GET_CONNECTORS", "name": "Get All Connectors", "description": "Tool to retrieve a list of all connectors in Kibana. Use this tool when you need to get information about available connectors." }, { "slug": "KIBANA_GET_DATA_VIEWS", "name": "Get Data Views", "description": "Retrieves all data views (formerly known as index patterns) available in Kibana. Data views define which Elasticsearch indices you want to explore and are used throughout Kibana for features like Discover, Visualize, and Dashboard. This action returns a list of all configured data views with their IDs, names, and index patterns. Use this to discover available data sources before querying specific data views for detailed field information." }, { "slug": "KIBANA_GET_DETECTION_ENGINE_RULES_FIND", "name": "Find Detection Engine Rules", "description": "Retrieves a paginated list of Kibana detection engine rules with flexible filtering and sorting options. Use this action to: - List all detection rules in your Kibana security solution - Search for specific rules using KQL filters (by name, tags, severity, enabled status, etc.) - Sort rules by various criteria (name, risk score, creation date, etc.) - Paginate through large rule sets - Select specific fields to return for efficient data retrieval The detection engine rules are used for identifying security threats and generating alerts." }, { "slug": "KIBANA_GET_ENDPOINT_LIST_ITEMS", "name": "Get Endpoint List Items", "description": "Retrieves Elastic Endpoint exception list items with filtering, pagination, and sorting capabilities. Use this action to: - List all endpoint exceptions in the security solution - Filter exceptions by specific field values (e.g., host.name:test-host) - Sort and paginate through exception items - Verify existing exceptions before creating new ones The endpoint exception list contains security exceptions applied to Elastic Endpoint agents." }, { "slug": "KIBANA_GET_ENTITY_STORE_ENGINES", "name": "Get Entity Store Engines", "description": "Retrieves all entity store engines configured in Kibana. Entity store engines aggregate and manage entity data for different entity types (user, host, service). This action returns detailed configuration and status information for all engines, including their current status (installing, started, stopped, error), index patterns, processing parameters, and any error details if applicable. Use this to monitor entity store engines, check their operational status, and review their configuration settings." }, { "slug": "KIBANA_GET_ENTITY_STORE_ENTITIES_LIST", "name": "List Entity Store Entities", "description": "Tool to list entity records in the entity store with support for paging, sorting, and filtering. Use when you need to retrieve a list of entities such as users, hosts, or services." }, { "slug": "KIBANA_GET_ENTITY_STORE_STATUS", "name": "Get Entity Store Status", "description": "Retrieves the current status of the Kibana Entity Store and its configured engines. The Entity Store is a security feature that collects and organizes entity data (users, hosts, etc.) from various sources. This action returns the overall status ('not_installed', 'installing', 'running', 'stopped', or 'error') and details about configured entity engines. Use this to check if the entity store is operational and to view which entity engines are configured." }, { "slug": "KIBANA_GET_FLEET_AGENT_POLICIES", "name": "Get Fleet Agent Policies", "description": "Retrieves a paginated list of Fleet agent policies with filtering, sorting, and optional detailed information. Use this action to: - List all agent policies in your Fleet deployment - Filter policies using KQL queries (e.g., by name, namespace, or other fields) - Get agent enrollment counts per policy (use withAgentCount=true) - Retrieve full policy details including package policies (use full=true) - Find policies with available upgrades (use showUpgradeable=true) Agent policies define the configuration for groups of Elastic Agents, including which integrations (package policies) are enabled and how agents should collect and send data." }, { "slug": "KIBANA_GET_FLEET_AGENTS_AVAILABLE_VERSIONS", "name": "Get Fleet Agents Available Versions", "description": "Tool to retrieve the available versions for Fleet agents. Use when you need to get a list of all available Elastic Agent versions." }, { "slug": "KIBANA_GET_FLEET_AGENTS_SETUP_STATUS", "name": "Get Fleet Agents Setup Status", "description": "Check Fleet setup readiness and identify missing requirements. Returns whether Fleet is ready (isReady), lists any missing prerequisites (missing_requirements), and shows optional feature availability. Use this to verify Fleet is properly configured before managing agents or policies." }, { "slug": "KIBANA_GET_FLEET_CHECK_PERMISSIONS", "name": "Check Fleet Permissions", "description": "Tool to check the permissions for the Fleet API. Use when you need to verify if the current user has the necessary privileges for Fleet operations." }, { "slug": "KIBANA_GET_FLEET_ENROLLMENT_API_KEY", "name": "Get Fleet Enrollment API Key", "description": "Tool to retrieve details of a specific enrollment API key by its ID. Use when you have the ID of an enrollment API key and need its details." }, { "slug": "KIBANA_GET_FLEET_ENROLLMENT_API_KEYS", "name": "Get Fleet Enrollment API Keys", "description": "Tool to fetch a list of enrollment API keys. Use when you need to retrieve existing enrollment tokens for Kibana Fleet." }, { "slug": "KIBANA_GET_FLEET_EPM_CATEGORIES", "name": "Get Fleet EPM Categories", "description": "Get all available package categories in the Elastic Package Manager (EPM) with package counts. Returns categories like Security, Observability, Cloud, etc., along with the number of packages in each category. Use this to discover available integration categories before browsing or filtering packages." }, { "slug": "KIBANA_GET_FLEET_EPM_DATA_STREAMS", "name": "Get Fleet EPM Data Streams", "description": "Tool to retrieve the list of data streams in the Elastic Package Manager. Use when you need to get a list of available data streams, optionally filtering by type, dataset, or categorization." }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGE_DETAILS", "name": "Get Fleet EPM Package Details", "description": "Retrieves comprehensive details for a specific Fleet integration package version from the Elastic Package Manager (EPM). Returns detailed information including: - Package metadata (name, title, description, version, type) - Installation status and requirements - Data streams and their configurations - Assets (dashboards, visualizations, pipelines) - License and compatibility requirements - Icons and documentation paths Use this action when you need detailed information about a specific package version, such as: - Checking package compatibility requirements - Viewing data streams provided by a package - Accessing package assets and configuration - Verifying installation status and details" }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGE_FILE", "name": "Get Fleet EPM Package File", "description": "Retrieves a specific file from an Elastic Package Manager (EPM) package. Use this to access package metadata, documentation, changelogs, or configuration files. Common use cases: inspecting manifest.yml for package details, reading README.md for documentation, or reviewing changelog.yml for version history. Requires a valid package name, version, and file path." }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGES", "name": "Get Fleet EPM Packages", "description": "Tool to fetch the list of available packages in the Elastic Package Manager. Use when you need to find available integrations or their details." }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGES_INSTALLED", "name": "Get Installed EPM Packages", "description": "Tool to retrieve the list of installed packages in the Elastic Package Manager. Use this when you need to check which packages are currently installed in Fleet." }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGES_LIMITED", "name": "Get Fleet EPM Packages (Limited)", "description": "Retrieves a limited list of package names from the Elastic Package Manager (EPM) registry. Returns only package names (strings) without additional metadata, making it faster than the full packages endpoint. Useful for quickly getting a list of available integration packages (maximum 10,000 items). Use this when you only need package names; use the full packages endpoint if you need detailed package information." }, { "slug": "KIBANA_GET_FLEET_EPM_PACKAGE_STATS", "name": "Get EPM Package Statistics", "description": "Retrieves usage statistics for a specific Fleet package in Kibana, including the number of package policies and agent policies using the package. Use this to understand package adoption and usage across your Fleet-managed agents." }, { "slug": "KIBANA_GET_FLEET_PACKAGE_POLICIES", "name": "Get Fleet Package Policies", "description": "Retrieves a list of Fleet package policies (integration policies) in Kibana. Package policies define how integrations are configured and which agent policies they're associated with. Use this to list all package policies, filter them by criteria, or get their IDs and configurations. Supports pagination, sorting, and KQL filtering." }, { "slug": "KIBANA_GET_FLEET_SERVER_HOST", "name": "Get Fleet Server Host", "description": "Tool to fetch details of a specific Fleet server host by its item ID. Use when you need to get information about a particular Fleet Server host." }, { "slug": "KIBANA_GET_FLEET_SERVER_HOSTS", "name": "Get Fleet Server Hosts", "description": "Tool to retrieve the list of Fleet Server hosts. Use when you need to get information about the available Fleet Server hosts." }, { "slug": "KIBANA_GET_INDEX_MANAGEMENT_INDICES", "name": "Get Index Management Indices", "description": "Tool to fetch information about indices managed by Kibana's Index Management feature. It queries the underlying Elasticsearch /_cat/indices API to retrieve index details. Use when you need to list or get details about one or more indices in the cluster." }, { "slug": "KIBANA_GET_METRICS", "name": "Get Node Metrics", "description": "Tool to retrieve statistics for nodes in an Elasticsearch cluster, often visualized in Kibana. Use when you need to monitor node health, performance, or resource usage. This action calls the Elasticsearch Nodes Stats API." }, { "slug": "KIBANA_GET_REPORTING_JOBS", "name": "Get Reporting Jobs", "description": "Tool to retrieve a list of reporting jobs in Kibana. Use when you need to see pending or completed reports. This uses an internal API endpoint, which might be subject to change without notice." }, { "slug": "KIBANA_GET_SAVED_OBJECTS", "name": "Get Saved Objects", "description": "Tool to retrieve a list of saved objects in Kibana based on specified criteria. Use when you need to find dashboards, visualizations, index patterns, or other saved entities." }, { "slug": "KIBANA_GET_STATUS", "name": "Get Kibana Status", "description": "Tool to get the current status of Kibana. Use when you need to check if Kibana is healthy, monitor its state, or get information about the Kibana instance including version, UUID, and metrics." }, { "slug": "KIBANA_POST_ALERTING_RULES", "name": "Create Alerting Rule", "description": "Tool to create a new alerting rule in Kibana. Use when you need to define a new condition that, when met, triggers an alert and potentially executes predefined actions." }, { "slug": "KIBANA_POST_CASES", "name": "Create Case", "description": "Tool to create a new case in Kibana. Use when you need to open and track issues, incidents, or investigations. You can assign users, set severity levels, add tags, and configure external connectors for integration with ITSM systems." }, { "slug": "KIBANA_POST_CONNECTORS", "name": "Create Kibana Connector", "description": "Tool to create a new connector in Kibana. Use when you need to integrate Kibana with an external service." }, { "slug": "KIBANA_POST_DASHBOARDS", "name": "Create Dashboard", "description": "Tool to create a new dashboard in Kibana. Use when you need to create a dashboard to visualize data. Dashboards can contain visualizations, saved searches, and other embeddable objects. Note: When using serverless Kibana, you must provide a dashboard_id. The action will automatically fallback to the import API for serverless environments." }, { "slug": "KIBANA_POST_DATA_VIEWS", "name": "Create Data View", "description": "Tool to create a new data view (index pattern) in Kibana. Use when you need to define which Elasticsearch indices to query and analyze in Kibana. Data views determine which fields are available in Discover, Visualize, and other Kibana apps." }, { "slug": "KIBANA_POST_SAVED_OBJECTS", "name": "Create or Update Saved Object", "description": "Tool to create or update a saved object in Kibana. Use when you need to programmatically manage Kibana dashboards, visualizations, index patterns, etc." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "kibana_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Kibana Base URL", "type": "string", "description": "The base URL for your Kibana instance (e.g., https://your-deployment.us-central1.gcp.cloud.es.io or https://my-kibana.elastic-cloud.com:9243)", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your Kibana username for authentication", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Kibana password for authentication", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "kibana_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Kibana Base URL", "type": "string", "description": "The base URL for your Kibana instance (e.g., https://your-deployment.us-central1.gcp.cloud.es.io or https://my-kibana.elastic-cloud.com:9243)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Kibana API key from Elastic Cloud console", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kickbox", "name": "Kickbox", "logo": "https://logos.composio.dev/api/kickbox", "description": "Kickbox provides an API for real-time email verification, list cleaning, and quality scoring to ensure email deliverability.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KICKBOX_CHECK_DISPOSABLE", "name": "Check Disposable Email", "description": "Tool to check if an email address or domain is from a disposable email service. Use when you need to validate whether an email is temporary or throwaway (e.g., mailinator.com, trashmail.com). This is a free public endpoint that does not require authentication." }, { "slug": "KICKBOX_SINGLE_VERIFICATION_API", "name": "Kickbox Single Verification", "description": "Tool to verify a single email address via Kickbox. Use when you need real-time validation of an individual email before critical workflows." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kickbox_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Kickbox API Key", "type": "string", "description": "The API key provided by Kickbox for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kieai", "name": "Kieai", "logo": "https://logos.composio.dev/api/kieai", "description": "AI API platform providing video generation (Veo3, Kling, Runway, Luma), image generation (Flux, Nano Banana), music creation (Suno), and LLM capabilities with pay-as-you-go pricing", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 35, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KIEAI_ADD_INSTRUMENTAL", "name": "Add Instrumental to Vocal Track", "description": "Add AI-generated instrumental accompaniment to an existing vocal track. Use when you need to generate instrumental music to accompany a vocal recording, allowing customization of style, mood, and creative parameters. The task completion will be notified via the callback URL." }, { "slug": "KIEAI_ADD_VOCALS", "name": "Add vocals to instrumental", "description": "Add AI-generated vocals to an existing instrumental music track. Use this action when you want to add singing or vocal tracks to accompany an existing instrumental audio file. The action submits a vocal generation task and returns a task ID that can be used to track the generation status. This action is asynchronous - use the returned taskId to poll for completion via the callback URL or check task status separately." }, { "slug": "KIEAI_CREATE_MARKET_TASK", "name": "Create Market Task", "description": "Create a task for unified model access through the Market API. Submit tasks to any supported AI model (Kling, Sora2, Hailuo, Wan, Google, Ideogram, ElevenLabs, etc.) through a single unified interface. Specify the model and its input parameters, then receive a task ID to poll for completion. Use this action when you need to generate content (text-to-speech, images, video, etc.) via Kie.ai's unified Market API with access to multiple AI providers through one endpoint." }, { "slug": "KIEAI_CREATE_MUSIC_VIDEO", "name": "Create music video from generated audio", "description": "Create a music video (MP4) combining generated music with visuals. Use this action when you need to generate an MP4 music video from previously generated music tracks. The action requires a task ID from the music generation process and an audio ID for the specific track. The video generation is async - results are delivered to the specified callback URL. Once the video is ready, the callback URL receives a POST request with: - code: 0 for success, 500 for error - data.task_id: The unique task identifier - data.video_url: The video URL (valid for 14 days)" }, { "slug": "KIEAI_EXECUTE_GPT_CODEX", "name": "Execute GPT Codex", "description": "Access GPT Codex capabilities through the KIE.AI Market API. Use when you need to leverage advanced code understanding and generation abilities via the Codex model for tasks such as code completion, refactoring, bug explanation, or general programming assistance. The action supports both single-turn queries (plain string input) and multi-turn conversations (list of message objects with roles). Optional features include configurable reasoning depth, web search for up-to-date information, and function calling for structured tool use. Note: Web search and function tools are mutually exclusive and cannot be used together in the same request. When streaming is enabled (stream=True), the response is delivered incrementally via SSE events." }, { "slug": "KIEAI_EXTEND_MUSIC", "name": "Extend Suno Music", "description": "Extend an existing Suno music track with additional AI-generated content. Use this action when you need to extend or modify existing music by creating a continuation or variation based on the provided audio ID and parameters. The action submits a generation request and returns a task ID that can be used to track the progress via callback. Note: When defaultParamFlag is false, provide custom parameters (prompt, styleWeight, etc.) to control the extension behavior. When defaultParamFlag is true, provide continueAt, style, and title instead." }, { "slug": "KIEAI_EXTEND_VEO_VIDEO", "name": "Extend Veo Video", "description": "Extend an existing Veo3.1 video with additional AI-generated content. Continues a previously generated video by adding new frames that seamlessly follow the original video. Use this action when you need to extend a video generated through the Veo3.1 API with additional content. After submission, poll 'Get Veo Video Details' using the returned taskId to check extension status until completion. Note: Video extension is asynchronous. You will receive a taskId in the response that must be used to poll for completion status. Only videos generated through the Veo3.1 API can be extended, and videos generated after 1080P cannot be extended." }, { "slug": "KIEAI_GENERATE_ALEPH_VIDEO", "name": "Generate Aleph Video", "description": "Generate AI video using Runway Aleph model from text prompts. Creates high-quality video content based on detailed text descriptions, optionally with reference video or image inputs. Use when you need to generate a video from a text description (text-to-video) or transform an existing video with AI (video-to-video). After submission, poll 'Get Aleph Video Details' using the returned taskId to check generation status until completion. Note: Video generation is asynchronous. You will receive a taskId in the response that must be used to poll for completion status. Generated videos are available for 14 days after completion." }, { "slug": "KIEAI_GENERATE_COVER", "name": "Generate Music Cover", "description": "Generate a personalized cover version of a song using AI. Use when you want to create AI-generated variations or custom covers of existing music tracks. Each music task can only generate one Cover. Cover images are typically valid for 14 days. The action returns a task ID that can be used to track the generation progress. The callback URL will receive a POST request when cover generation completes, containing the task ID and generated image URLs." }, { "slug": "KIEAI_GENERATE_FLUX_KONTEXT_IMAGE", "name": "Generate Flux Kontext Image", "description": "Generate or edit images using the Flux Kontext model. Supports both text-to-image generation and image editing modes. Use when you need to create new images from text descriptions or edit existing images with AI-powered transformations. The API returns a task ID that can be used to poll for completion status. Generated images expire after 14 days." }, { "slug": "KIEAI_GENERATE_GPT4O_IMAGE", "name": "Generate GPT-4o Image", "description": "Generate images using the GPT-4o image generation model. Creates AI-generated images from text prompts. Use when you need to create new images from text descriptions. The API returns a task ID that should be polled using the 'Get GPT-4o Image Details' action to check completion status and retrieve the generated image URLs. Generated images are stored for 14 days and download URLs are valid for 20 minutes." }, { "slug": "KIEAI_GENERATE_LYRICS", "name": "Generate AI Lyrics", "description": "Generate creative lyrics using AI. Creates new song lyrics based on the provided prompt, style, and other parameters. Use when you want to create AI-generated song lyrics for a music track or need creative lyrical content. The action returns a task ID that can be used to track the generation progress. When generation completes, the callback URL will receive a POST request with the generated lyrics data including 2-3 lyric variations with titles. Note: Generated lyrics are retained for 14 days." }, { "slug": "KIEAI_GENERATE_MIDI", "name": "Generate MIDI", "description": "Generate MIDI file from audio or music generation. Converts audio tracks to MIDI format for use in digital audio workstations. Use when you need to convert separated audio stems (from vocal/instrument separation) into MIDI files for further music production workflows. This action requires a valid taskId from a prior vocal separation operation and a callback URL to receive completion notifications. Prerequisites: Must first use the Vocal & Instrument Stem Separation API to separate audio before generating MIDI." }, { "slug": "KIEAI_GENERATE_MUSIC_STYLE", "name": "Generate Music Style", "description": "Boost or enhance music style parameters for improved music generation. Use when you need to generate or enhance music style descriptions to influence AI music generation. The content field should contain a concise description of the desired music style. Returns a task ID that can be used to track the generation progress and credits information for the request." }, { "slug": "KIEAI_GENERATE_SOUNDS", "name": "Generate Sounds", "description": "Generate sound effects or audio clips based on a text description. Creates AI-generated audio sounds with configurable parameters like tempo, key, and looping. Use this action when you need to generate sound effects, short audio clips, or ambient sounds for projects. The action submits a generation request and returns a task ID that can be used to track progress via polling or callback. Supports BPM control (1-300), musical key selection (e.g., Cm, D#m, Any), looping option, and optional lyrics capture. The generated sounds are typically valid for 14 days." }, { "slug": "KIEAI_GENERATE_TIMESTAMPED_LYRICS", "name": "Get Timestamped Lyrics", "description": "Retrieve synchronized lyrics with timestamps for a music track. Gets lyrics with time markers for karaoke-style synchronization. Use this action when you need to display synchronized lyrics for a generated music track or implement karaoke-style highlighting." }, { "slug": "KIEAI_GENERATE_VEO_VIDEO", "name": "Generate Veo Video", "description": "Generate AI video using Google Veo3.1 model from text prompts or images. Creates high-quality video content based on detailed text descriptions or by animating provided images. Use when you need to generate a video from a text description (text-to-video) or animate one or more reference images (image-to-video). After submission, poll 'Get Veo Video Details' using the returned taskId to check generation status until completion. Note: Video generation is asynchronous. You will receive a taskId in the response that must be used to poll for completion status." }, { "slug": "KIEAI_GET_ACCOUNT_CREDITS", "name": "Get Account Credits", "description": "Retrieve the current credit balance for your KIE.AI account. Use when you need to check available credits before making API requests or monitor account usage. This action is read-only and does not modify any data." }, { "slug": "KIEAI_GET_ALEPH_VIDEO_DETAILS", "name": "Get Aleph Video Details", "description": "Retrieves details and status of an Aleph video generation task. Returns task information including current status (generating, success, or failed) and video URLs when complete. Use this action when checking the progress of a video generation task or retrieving the final video output after completion. This is a polling endpoint—call periodically until task completion. Note: Generated videos are only available for 14 days. The resultVideoUrl and resultImageUrl are only present when successFlag is 1 (success)." }, { "slug": "KIEAI_GET_COVER_DETAILS", "name": "Get Cover Details", "description": "Get the status and details of a cover song generation task. Use when you need to check the progress of a cover generation task or retrieve the generated cover image URLs after completion. The response includes the task status (pending, generating, success, or failed), creation and completion timestamps, and the generated cover image URLs when the task is complete. Poll this endpoint to track task progress until successFlag indicates completion (1) or failure (3)." }, { "slug": "KIEAI_GET_FLUX_KONTEXT_IMAGE_DETAILS", "name": "Get Flux Kontext Image Details", "description": "Retrieve the status and details of a Flux Kontext image generation task. Use this action when you need to check the progress of an image generation task, get the generated image URL upon completion, or diagnose why a task failed. The task status (successFlag) indicates: - 0 (GENERATING): Task is still processing - 1 (SUCCESS): Task completed with image URL in response field - 2 (CREATE_TASK_FAILED): Task creation failed - 3 (GENERATE_FAILED): Task created but image generation failed" }, { "slug": "KIEAI_GET_GPT4O_IMAGE_DETAILS", "name": "Get GPT-4o Image Details", "description": "Retrieves details and status of a GPT-4o image generation task. Returns task information including current status (generating, success, or failed) and image URLs when complete. Use when checking the progress of an image generation task or retrieving the final image output after completion. This is a polling endpoint—call periodically until task completion. Note: Image generation tasks return URLs that are available only for a limited time. Download images promptly after task completion." }, { "slug": "KIEAI_GET_LYRICS_DETAILS", "name": "Get Lyrics Details", "description": "Retrieves the status and details of a lyrics generation task. Returns the generated lyrics text when the task is complete. Use this action to poll for lyrics generation results after submitting a lyrics generation request. The task status can be: PENDING (waiting), SUCCESS (complete), or various error states. If the status is SUCCESS, check the response.data.response.data field for the generated lyrics." }, { "slug": "KIEAI_GET_MARKET_TASK_DETAILS", "name": "Get Market Task Details", "description": "Retrieves the status and details of a Market API task by its task ID. Use when you need to check the progress or outcome of a previously submitted task, such as after creating a task with a Market API action or when polling for completion. This action queries the unified Market API job status endpoint." }, { "slug": "KIEAI_GET_MIDI_DETAILS", "name": "Get MIDI Details", "description": "Retrieves details and status of a MIDI generation task. Returns MIDI data including detected instruments, notes, timing, and velocity when the task is complete. Use when checking the progress of a MIDI generation task or retrieving the final MIDI output after completion. This is a polling endpoint—call periodically until task completion. Note: MIDI records are retained for 14 days. When using vocal separation with type 'split_stem', the midiData field may be empty. Check errorCode and errorMessage fields when successFlag indicates failure." }, { "slug": "KIEAI_GET_MUSIC_DETAILS", "name": "Get Music Details", "description": "Get the status and details of a Suno music generation task including generated audio URLs and metadata. Use this action when you need to check the completion status of a music generation task, retrieve audio URLs for download or playback, or monitor the progress of a previously submitted generation request. Poll this endpoint until status reaches SUCCESS or an error state. Note that instrumental tracks will not include lyrics data." }, { "slug": "KIEAI_GET_MUSIC_VIDEO_DETAILS", "name": "Get Music Video Details", "description": "Retrieves details and status of a music video generation task. Returns task information including current status (PENDING, SUCCESS, or failed) and video URL when complete. Use when checking the progress of a music video generation task or retrieving the final video output after completion. This is a polling endpoint—call periodically until task completion. Note: Video records are only available within 14 days after generation." }, { "slug": "KIEAI_GET_RUNWAY_VIDEO_DETAILS", "name": "Get Runway Video Details", "description": "Retrieves details and status of a Runway video generation task. Returns comprehensive task information including the current state (wait, queueing, generating, success, or fail) and video URLs when the task is complete. Use this action when checking the progress of a Runway video generation task or retrieving the final video output after completion. This is a polling endpoint—call periodically until the task reaches a terminal state. Note: Video URLs returned in the response are valid for 14 days. For extension tasks, the parentTaskId field indicates the original generation task." }, { "slug": "KIEAI_GET_TIMESTAMPED_LYRICS_STATUS", "name": "Get Timestamped Lyrics Status", "description": "Retrieve the status and results of a timestamped lyrics generation task. Use this action when you need to check the completion status of a previously initiated timestamped lyrics generation request, or to retrieve the lyrics data with word-level timestamps for karaoke-style synchronization. Note: The data field will be populated once the task completes successfully." }, { "slug": "KIEAI_GET_VEO1080P_VIDEO", "name": "Get Veo 1080p Video", "description": "Retrieve the 1080p high-definition version of a completed Veo3.1 video generation. Use when you need to download the HD version of a video after the initial generation is complete. The 1080p conversion typically takes 1-3 minutes after the original generation completes. Note: Poll this endpoint every 20-30 seconds until the video is ready. If the task is still processing, the API will return an appropriate error. The original generation task must be successful before requesting the 1080p version." }, { "slug": "KIEAI_GET_VEO4K_VIDEO", "name": "Get Veo 4K Video", "description": "Retrieve the 4K ultra-high-definition version of a completed Veo3.1 video generation. Use when you need to download the 4K version of a video after the original generation is complete. The 4K conversion typically takes longer than the 1080p conversion (approximately 2-5 minutes) after the original generation completes. Use this action when you have a completed video generation task and want to access the premium 4K quality output. Poll this endpoint every 30-45 seconds until the video is ready. The original generation task must be successful before requesting the 4K version." }, { "slug": "KIEAI_GET_VEO_VIDEO_DETAILS", "name": "Get Veo Video Details", "description": "Retrieves details and status of a Veo3.1 video generation task. Returns task information including current status (generating, success, or failed) and video URLs when complete. Use when checking the progress of a video generation task or retrieving the final video output after completion. This is a polling endpoint—call periodically until task completion. Note: Videos generated with fallback model cannot be upgraded to 1080P. Records are only available within 14 days." }, { "slug": "KIEAI_GET_WAV_DETAILS", "name": "Get WAV Details", "description": "Retrieves the status and download URL for a WAV conversion task. Returns task information including current status (PENDING, SUCCESS, or failed) and the WAV audio URL when complete. Use when checking the progress of a WAV conversion task or retrieving the final audio output after completion. This is a polling endpoint—call periodically until task completion. Note: WAV files are retained for 14 days. The audioWavUrl is only available when successFlag is SUCCESS." }, { "slug": "KIEAI_REPLACE_MUSIC_SECTION", "name": "Replace Music Section", "description": "Replace a specific section of a Suno music track with new AI-generated content. Use this action when you need to modify a portion of an existing music track by replacing it with newly generated content while preserving the rest of the track. The action submits a replacement request and returns a task ID that can be used to track progress via callback. Constraints: - The replacement duration (infillEndS - infillStartS) must be between 6 and 60 seconds. - The replacement cannot exceed 50% of the original music's total duration. - This action is irreversible once submitted." }, { "slug": "KIEAI_SEPARATE_VOCALS", "name": "Separate Vocals from Audio", "description": "Separates vocals and instruments from an audio track using AI-powered audio source separation. Use this action when you need to extract vocals from an instrumental track, create karaoke versions of songs, isolate vocals for remixing, or generate instrumentals for sampling. The action supports two separation modes: 'separate_vocal' (2 stems - vocal and instrumental) and 'split_stem' (up to 12 stems). Results are delivered via callback URL, and audio URLs remain accessible for 14 days. Note: Re-submitting the same track deducts credits again with no caching." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kieai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Kie.ai API key. Get it from https://kie.ai/api-key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kit", "name": "Kit", "logo": "https://logos.composio.dev/api/kit", "description": "Kit is a platform that allows creators to automate tasks and developers to build apps for the Kit App Store.", "category": "marketing automation", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KIT_ADD_SUBSCRIBER_TO_FORM", "name": "Add Subscriber to Form", "description": "Add an existing subscriber to a form by their IDs. This action associates a subscriber with a form in Kit. The subscriber must already exist in your Kit account (use KIT_LIST_SUBSCRIBERS to find them). The form must also exist (use KIT_LIST_FORMS to find valid form IDs). Returns HTTP 201 if the subscriber is newly added to the form, or HTTP 200 if they were already associated with the form. Both cases are considered successful operations. Important: This action requires both form_id and subscriber_id (aliased as 'id' in requests). An optional referrer URL can be provided for tracking purposes and will have its UTM parameters automatically parsed." }, { "slug": "KIT_ADD_SUBSCRIBER_TO_FORM_BY_EMAIL", "name": "Add Subscriber to Form by Email", "description": "Tool to add an existing subscriber to a form using their email address. Use when you know the subscriber's email but not their ID. The subscriber must already exist in your Kit account before adding them to a form. Returns HTTP 201 if the subscriber is newly added to the form, or HTTP 200 if they were already associated with the form." }, { "slug": "KIT_CREATE_BROADCAST", "name": "Create Broadcast", "description": "Tool to create a new broadcast (email campaign) to send to subscribers. Use when you need to draft, schedule, or immediately publish an email broadcast. To save as draft, set send_at to null; to schedule, provide a future send_at timestamp; to publish to web, set public to true." }, { "slug": "KIT_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a new custom field for subscriber data. Use when you need to store extra attributes for subscribers." }, { "slug": "KIT_CREATE_SUBSCRIBER", "name": "Create Subscriber", "description": "Tool to create a new subscriber or update an existing one (upsert). If a subscriber with the provided email address does not exist, creates one. If already exists, updates the first name." }, { "slug": "KIT_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in the account. Use when you need a custom label to segment subscribers. Use after confirming tag uniqueness to avoid duplicates. Example: \"Create a tag called 'VIP' for premium customers.\"" }, { "slug": "KIT_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Creates a webhook subscription for real-time event notifications. Use this to receive HTTP POST notifications when subscriber events (activate, unsubscribe, form subscribe, tag add/remove, link clicks, etc.) or purchase events occur in your Kit account." }, { "slug": "KIT_DELETE_BROADCAST", "name": "Delete Broadcast", "description": "Tool to delete a specific broadcast. Use when you need to permanently remove a broadcast by ID (after confirming the ID). Example prompt: \"Delete broadcast with ID 123\"" }, { "slug": "KIT_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a specific custom field. Use after confirming the custom field ID is correct. Deletes the field permanently." }, { "slug": "KIT_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Unsubscribe a subscriber from all email communications by their ID. This action permanently unsubscribes a subscriber, removing them from all sequences and forms. The subscriber's historical data is retained but they will no longer receive emails. This operation is idempotent - unsubscribing an already-unsubscribed subscriber succeeds without error. Use KIT_LIST_SUBSCRIBERS to find valid subscriber IDs before calling this action. Returns: Empty response on success (HTTP 204 No Content). Raises: ExecutionFailed: If the subscriber ID doesn't exist (404), authentication fails (401), or other API errors occur." }, { "slug": "KIT_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag by ID. Use when you need to remove obsolete or incorrect tags after confirming the tag exists." }, { "slug": "KIT_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by ID. Use when you want to permanently remove a webhook after confirming its ID." }, { "slug": "KIT_FILTER_SUBSCRIBERS", "name": "Filter Subscribers", "description": "Tool to filter subscribers based on engagement criteria such as email opens, clicks, or delivery status. Use when you need to segment subscribers by their engagement behavior with specific date ranges and count thresholds." }, { "slug": "KIT_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve current account information. Use after validating API key to fetch account ID, plan type, primary email, and timezone details." }, { "slug": "KIT_GET_ACCOUNT_COLORS", "name": "Get Account Colors", "description": "Tool to retrieve list of colors associated with the account. Use after confirming authentication to fetch account-specific color palette." }, { "slug": "KIT_GET_BROADCAST", "name": "Get Broadcast", "description": "Tool to retrieve details of a specific broadcast by ID. Use when you have a valid broadcast ID and need its metadata." }, { "slug": "KIT_GET_BROADCAST_CLICKS", "name": "Get Broadcast Clicks", "description": "Tool to retrieve link click data for a specific broadcast by ID. Use when you need to analyze which links were clicked and their engagement metrics." }, { "slug": "KIT_GET_BROADCAST_STATS", "name": "Get Broadcast Stats", "description": "Tool to retrieve statistics for a specific broadcast by ID. Use after a broadcast has been sent to monitor performance." }, { "slug": "KIT_GET_CREATOR_PROFILE", "name": "Get Creator Profile", "description": "Tool to retrieve the creator profile information for the account. Use when you need creator metadata (name, bio, avatar, profile URL) before publishing or customizing content." }, { "slug": "KIT_GET_EMAIL_STATS", "name": "Get Email Stats", "description": "Tool to retrieve email statistics for the account. Use after confirming authentication to fetch metrics on emails (sent, opened, clicked) over the last 90 days." }, { "slug": "KIT_GET_GROWTH_STATS", "name": "Get Growth Stats", "description": "Tool to retrieve growth statistics for the account over a date range. Stats are returned in your sending time zone (not UTC). Defaults to last 90 days if no dates specified." }, { "slug": "KIT_GET_SUBSCRIBER", "name": "Get Subscriber", "description": "Tool to retrieve a specific subscriber by their ID. Use when you need to fetch detailed information about a single subscriber." }, { "slug": "KIT_GET_SUBSCRIBER_STATS", "name": "Get Subscriber Stats", "description": "Tool to retrieve email stats for a specific subscriber. Use when you need subscriber engagement metrics (opens, clicks, bounces, rates). Data only available for events from June 2025 onwards." }, { "slug": "KIT_LIST_BROADCASTS", "name": "List Broadcasts", "description": "Tool to retrieve a paginated list of all broadcasts. Use when you need to enumerate or review broadcast summaries with cursor-based pagination." }, { "slug": "KIT_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to retrieve a paginated list of custom fields. Use after confirming you need to enumerate or inspect all custom fields with cursor-based pagination." }, { "slug": "KIT_LIST_EMAIL_TEMPLATES", "name": "List Email Templates", "description": "Retrieve a paginated list of all email templates in the Kit account. Returns template details including ID, name, default status, and category. Supports cursor-based pagination for navigating large template collections. Use this when you need to view or iterate through email templates." }, { "slug": "KIT_LIST_FORMS", "name": "List Forms", "description": "Lists all forms in your Kit account with optional filtering and cursor-based pagination. Use this to retrieve forms when you need to: - Get all available forms (landing pages and embedded forms) - Filter by status (active, archived, trashed) or type (embed, hosted) - Paginate through large collections of forms - Get form IDs and metadata for other operations" }, { "slug": "KIT_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to retrieve a paginated list of segments. Use when you need to enumerate segments with cursor-based pagination for further processing or display." }, { "slug": "KIT_LIST_SEQUENCES", "name": "List Sequences", "description": "Tool to retrieve a paginated list of all sequences. Use when you need to enumerate sequences with pagination for further processing or display." }, { "slug": "KIT_LIST_SUBSCRIBERS", "name": "List Subscribers", "description": "Tool to retrieve a list of subscribers. Use when you need to fetch subscriber records with optional filtering, sorting, and pagination." }, { "slug": "KIT_LIST_SUBSCRIBERS_FOR_FORM", "name": "List Subscribers For Form", "description": "Retrieves subscribers for a specific form by ID with optional filtering and cursor-based pagination. Use this action to: - Get all subscribers who have joined a specific form - Filter subscribers by when they were added to the form (added_after/added_before) - Filter subscribers by when they were created (created_after/created_before) - Filter by subscriber status (e.g., 'active') - Navigate through results using cursor-based pagination (after/before cursors) - Control page size with per_page parameter - Optionally get total subscriber count with include_total_count='true' First use KIT_LIST_FORMS to get valid form_id values." }, { "slug": "KIT_LIST_TAGS", "name": "List Tags", "description": "Retrieve a paginated list of all tags in the Kit account. Returns tag details including ID, name, and creation date. Supports cursor-based pagination for navigating large tag collections. Use this when you need to view or iterate through tags." }, { "slug": "KIT_LIST_TAG_SUBSCRIBERS", "name": "List Tag Subscribers", "description": "Tool to retrieve subscribers for a specific tag. Use after confirming the tag ID when you need to list subscribers associated with a tag." }, { "slug": "KIT_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Retrieve a paginated list of all webhooks configured in the Kit account. Returns webhook details including ID, event type, and target URL. Supports cursor-based pagination for navigating large webhook collections. Use this when you need to view or iterate through webhooks." }, { "slug": "KIT_REMOVE_TAG_FROM_SUBSCRIBER", "name": "Remove Tag From Subscriber", "description": "Tool to remove a tag from a subscriber using their subscriber ID. Use when you need to untag a subscriber from a specific tag after confirming both tag and subscriber IDs exist." }, { "slug": "KIT_TAG_SUBSCRIBER", "name": "Tag Subscriber", "description": "Tool to associate a subscriber with a specific tag by ID. Use after confirming tag and subscriber IDs when tagging a subscriber." }, { "slug": "KIT_TAG_SUBSCRIBER_BY_EMAIL", "name": "Tag Subscriber by Email", "description": "Assigns a tag to an existing subscriber using their email address. The subscriber must already exist in your Kit account. Returns the subscriber's details including the timestamp when they were tagged. Use when you have a valid tag ID and the subscriber's email address." }, { "slug": "KIT_UNTAG_SUBSCRIBER_BY_EMAIL", "name": "Untag Subscriber by Email", "description": "Tool to remove a tag from a subscriber using their email address. Use when you need to untag an existing subscriber after confirming both the tag ID and subscriber's email address are valid." }, { "slug": "KIT_UPDATE_ACCOUNT_COLORS", "name": "Update Account Colors", "description": "Tool to update the list of colors for the account. Use when customizing your Kit account's color palette for broadcasts and templates. Maximum 5 hex color codes allowed per account." }, { "slug": "KIT_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Tool to update a custom field's label. Use after listing or retrieving custom fields and confirming the field ID to rename." }, { "slug": "KIT_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update an existing subscriber's information. Use when you need to modify a subscriber's first name, email address, or custom fields. Supports updating up to 140 custom fields at a time." }, { "slug": "KIT_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update a tag's name by ID. Use after retrieving tag ID and confirming the new name." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "kit_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "public" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "kit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key used for authenticating requests to the Kit API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kiwihr", "name": "Kiwihr", "logo": "https://logos.composio.dev/api/kiwihr", "description": "Streamline your workforce management with kiwiHR (now Tellent HR - Manage). HR software for employee data, time tracking, absences, and more.", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kiwihr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get an access key, sign in to kiwiHR/Tellent HR and go to Configuration > Integrations > API Keys. Your organization must have at least one Administrator for API authentication to work.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "klazify", "name": "Klazify", "logo": "https://logos.composio.dev/api/klazify", "description": "The most accurate Content Classification API. Categorize websites into 385+ topic categories with confidence scores, extract logos, social media links, company information, and technology stack data.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KLAZIFY_CATEGORIZE_URL", "name": "Categorize URL", "description": "Tool to retrieve IAB and Klazify category classifications for a specified domain or URL with confidence scores. Use when you need to categorize websites into 620+ IAB V3 categories using machine learning, or obtain detailed domain information including company data and social media links." }, { "slug": "KLAZIFY_GET_COMPANY_DATA", "name": "Get Company Data", "description": "Tool to retrieve comprehensive company information for a specified domain including business data, location, employee count, revenue, funding, and industry classifications. Use when you need detailed company profile information from a domain URL." }, { "slug": "KLAZIFY_GET_DOMAIN_EXPIRATION", "name": "Get Domain Expiration", "description": "Tool to retrieve domain registration and expiration information for a specified domain. Use when you need to check domain age, registration date, expiration date, or days until expiration." }, { "slug": "KLAZIFY_GET_DOMAIN_LOGO", "name": "Get Domain Logo", "description": "Tool to obtain the logo URL associated with a given domain. Use when you need to retrieve a company's logo from their website URL." }, { "slug": "KLAZIFY_GET_SIMILAR_COMPANIES", "name": "Get Similar Companies", "description": "Tool to identify companies similar to the specified domain by analyzing category and target market. Use when you need to find competitors or similar businesses to a given domain." }, { "slug": "KLAZIFY_GET_SOCIAL_MEDIA_LINKS", "name": "Get Social Media Links", "description": "Tool to retrieve the list of social media links for a given domain. Use when you need to extract social media profile URLs across multiple platforms (Facebook, Twitter, Instagram, LinkedIn, YouTube, Medium, GitHub, Pinterest)." }, { "slug": "KLAZIFY_GET_TECH_STACK", "name": "Get Tech Stack", "description": "Tool to retrieve the technological stack utilized by a website including frameworks, platforms, and services. Use when you need to identify what technologies a domain uses for competitive analysis, lead generation, or market research." }, { "slug": "KLAZIFY_REAL_TIME_CATEGORIZATION", "name": "Real Time Categorization", "description": "Tool to perform real-time website categorization with immediate AI-powered analysis and classification. Use when you need instant domain categorization into 621+ IAB V3 categories with confidence scores, along with company data, social media profiles, and technology stack information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "klazify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Klazify API key. Sign in to your Klazify dashboard at https://www.klazify.com/ to copy your personal API access key.", "required": true, "default": null } ], "optional": [ { "name": "user_agent", "displayName": "User-Agent", "type": "string", "description": "User-Agent string for API requests (required by Klazify)", "required": false, "default": "Composio/1.0" } ] } } } ] }, { "slug": "kling", "name": "Kling", "logo": "https://logos.composio.dev/api/kling", "description": "Kling AI is an advanced video generation platform that creates high-quality videos from text and images using AI", "category": "ai content generation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kling_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "JWT Token", "type": "string", "description": "JWT token signed with your Secret Key (SK) using HS256 algorithm. Generate this locally using your Access Key (AK) and Secret Key (SK) from https://app.klingai.com/global/dev/api-key. The SK must never be transmitted to Kling servers.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "klipy", "name": "Klipy", "logo": "https://logos.composio.dev/api/klipy", "description": "Largest library of Localized GIFs, Stickers & Clips", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "klipy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "App Key", "type": "string", "description": "Your API Key is sent to your email when you request it from Klipy support. You can also generate API keys at https://partner.klipy.com/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "knack", "name": "Knack", "logo": "https://logos.composio.dev/api/knack", "description": "No-code database and business application platform for building custom web apps without coding.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KNACK_CREATE_OBJECT_RECORD", "name": "Create object record", "description": "Tool to create a new record in a specific Knack object. Use when you need to add new data to a Knack database object. Requires object-based API key authentication." }, { "slug": "KNACK_CREATE_VIEW_RECORD", "name": "Create View Record", "description": "Tool to create a new record through a form view in Knack. Use when you need to add a record to a Knack object using a form view interface. Only fields that exist in the form will be used, and any record rules configured on the form will be triggered." }, { "slug": "KNACK_DELETE_OBJECT_RECORD", "name": "Delete Object Record", "description": "Tool to delete a single record from a specific Knack object by its ID. Use when you need to permanently remove a record from an object. This action is permanent and cannot be undone. Requires API key authentication (X-Knack-Application-Id and X-Knack-REST-API-KEY headers)." }, { "slug": "KNACK_DELETE_VIEW_RECORD", "name": "Delete View Record", "description": "Tool to delete a record through a view that contains a delete link. Works with tables, lists, searches, calendars, and details views. This operation is permanent and cannot be undone. Use only after confirming the correct scene_key, view_key, and record_id." }, { "slug": "KNACK_GET_OBJECT_RECORD", "name": "Get Object Record", "description": "Tool to retrieve a single record by its ID from a specific Knack object. Returns the complete record with all field values in both formatted and raw formats. Use this for object-based access which requires API key authentication." }, { "slug": "KNACK_LIST_OBJECT_RECORDS", "name": "List Object Records", "description": "Tool to retrieve multiple records from a specific Knack object (table). Returns up to 1000 records per page with pagination support. Use this for object-based access which requires API key authentication and provides full access to all fields and records. Supports filtering by field values and sorting by field keys." }, { "slug": "KNACK_LIST_VIEW_RECORDS", "name": "List View Records", "description": "Tool to retrieve multiple records from a specific Knack view (tables, lists, searches, calendars). Use when you need to fetch data from a view with pagination support. Returns only fields included in the view configuration." }, { "slug": "KNACK_UPDATE_OBJECT_RECORD", "name": "Update object record", "description": "Tool to update an existing record in a specific Knack object. Use when you need to modify field values in an existing record. Only fields provided in the request will be updated; all other fields remain unchanged." }, { "slug": "KNACK_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to a Knack application. This is step 1 of a two-step process - after uploading, use the returned file ID when creating or updating a record with a file field." }, { "slug": "KNACK_UPLOAD_IMAGE", "name": "Upload Image", "description": "Tool to upload an image to a Knack application. This is the first step in a two-step process - after uploading, use the returned file ID when creating or updating a record with an image field. Use when you need to attach images to Knack records." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "knack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Knack REST API Key. Find it in Settings > API & Code > API in the Knack Builder. This should only be used for server-side code.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Application ID", "type": "string", "description": "Your Knack Application ID. Find it in Settings > API & Code > API in the Knack Builder.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "knowfirst", "name": "Knowfirst", "logo": "https://logos.composio.dev/api/knowfirst", "description": "Boost your business data with instant API enrichment. KnowFirst's SaaS platform provides key Australian business intelligence in one location", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "knowfirst_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the API Access page at https://app.knowfirst.ai/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ko_fi", "name": "Ko-fi", "logo": "https://logos.composio.dev/api/ko_fi", "description": "Ko-fi is a platform that enables creators to receive support from their audience through donations, memberships, and sales.", "category": "fundraising", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KO_FI_PAYMENT_WEBHOOK_POST", "name": "Receive Ko-fi payment webhook", "description": "Receives and validates Ko-fi payment webhook events. Use this to process real-time notifications for donations, subscriptions, commissions, and shop orders from Ko-fi. The webhook includes payment details, supporter information, and transaction metadata. Returns validated payment data to confirm receipt (Ko-fi expects 200 OK to prevent retries)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ko-fi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Ko-fi API Key", "type": "string", "description": "Your Ko-fi API key, used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kontent_ai", "name": "Kontent.ai", "logo": "https://logos.composio.dev/api/kontent_ai", "description": "Kontent.ai is a headless CMS that delivers content via API, allowing developers to build websites and applications using their preferred frameworks, languages, or libraries.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KONTENT_AI_GET_CONTENT_ITEM", "name": "Get Content Item", "description": "Tool to retrieve a specific content item by its identifier. Use after confirming the environment ID and item identifier." }, { "slug": "KONTENT_AI_GET_LANGUAGE", "name": "Get Language", "description": "Tool to retrieve a specific language by its ID. Supports Management API directly and Delivery API via normalization." }, { "slug": "KONTENT_AI_GET_LANGUAGE_VARIANT", "name": "Get Language Variant", "description": "Tool to retrieve a specific language variant of a content item. Use after confirming the item and language identifiers when needing localized content." }, { "slug": "KONTENT_AI_GET_TYPES_ELEMENT", "name": "Get Content Type Element", "description": "Tool to retrieve a specific element from a content type by codename. Use when you need to get details about an element's configuration within a content type." }, { "slug": "KONTENT_AI_LIST_CONTENT_ITEMS", "name": "List Content Items", "description": "Tool to list content items from the Delivery API. Use when fetching content items for a specified environment, optionally providing a continuation token for pagination." }, { "slug": "KONTENT_AI_LIST_CONTENT_TYPES", "name": "List Content Types", "description": "Tool to list content types within a Kontent.ai environment. Use when you need to retrieve a paginated list of content type definitions. Use after confirming the environment ID." }, { "slug": "KONTENT_AI_LIST_LANGUAGES", "name": "List Languages", "description": "Tool to list languages in a Kontent.ai project. Use when you need to retrieve all languages for a specified environment after confirming the project ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kontent_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Management API Key", "type": "string", "description": "The Management API key for authenticating requests. Generate one in Project settings > API keys > Management API keys.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Environment ID", "type": "string", "description": "The unique identifier for your Kontent.ai environment (project). Found in Environment settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "kraken_io", "name": "Kraken.io", "logo": "https://logos.composio.dev/api/kraken_io", "description": "Kraken.io is an image optimization and compression platform that helps reduce image file sizes without compromising quality.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "KRAKEN_IO_CHECK_USER_STATUS", "name": "Check Kraken.io User Status", "description": "Tool to retrieve current Kraken.io account status and quota usage. Use when you need to verify plan limits and remaining quota before processing images." }, { "slug": "KRAKEN_IO_OPTIMIZE_IMAGE_URL", "name": "Optimize Image by URL", "description": "Tool to optimize an image from a public URL. Use when you need to compress, resize, or convert an externally hosted image. Returns result immediately if 'wait' is true." }, { "slug": "KRAKEN_IO_PRESERVE_METADATA", "name": "Preserve Image Metadata", "description": "Tool to preserve EXIF and other metadata during Kraken.io image optimization. Use when you need to maintain metadata while compressing images." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "kraken_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Kraken.io API Key", "type": "string", "description": "Your Kraken.io API key.", "required": true, "default": null }, { "name": "generic_token", "displayName": "Kraken.io API Secret", "type": "string", "description": "Your Kraken.io API secret.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "l2s", "name": "L2s", "logo": "https://logos.composio.dev/api/l2s", "description": "L2S is a professional URL shortener offering advanced analytics, QR code generation, and team collaboration features.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "L2S_GET_URL_DETAILS", "name": "Get URL Details", "description": "Tool to retrieve details of a shortened URL. Use when you need metadata about a specific shortened link. Use after obtaining a valid URL ID." }, { "slug": "L2S_L2_S_GET_USER_SETTINGS", "name": "Get User Settings", "description": "Tool to retrieve current user's settings. Use after authentication to fetch email, notification, and appearance preferences." }, { "slug": "L2S_L2_S_LIST_URLS", "name": "List Shortened URLs", "description": "Tool to list all shortened URLs. Use after user authentication to retrieve the user's URLs with pagination details." }, { "slug": "L2S_L2_S_SHORTEN_URL", "name": "Shorten URL with L2S", "description": "Tool to shorten a given long URL. Use when you need a concise link representation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "l2s_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "L2S API Key", "type": "string", "description": "The API key provided by L2S for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lagrowthmachine", "name": "La Growth Machine", "logo": "https://logos.composio.dev/api/lagrowthmachine", "description": "Save time and focus on closing deals. Automate manual sales rep routines and streamline outreach with multi-channel campaigns.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LAGROWTHMACHINE_ADD_RB2B_VISITOR_TO_AUDIENCE", "name": "Add RB2B Visitor to Audience", "description": "Tool to add RB2B website visitor to a LaGrowthMachine audience via native webhook. Use when you need to push identified website visitors from RB2B into a specific audience for outreach campaigns." }, { "slug": "LAGROWTHMACHINE_CREATE_AUDIENCE_FROM_LINKEDIN_URL", "name": "Create Audience from LinkedIn URL", "description": "Tool to import leads into La Growth Machine audiences from LinkedIn URLs. Accepts LinkedIn Regular search URLs, Sales Navigator search URLs, or LinkedIn post URLs. Requires specifying the identity to impersonate and the audience name to populate." }, { "slug": "LAGROWTHMACHINE_CREATE_INBOX_WEBHOOK", "name": "Create Inbox Webhook", "description": "Tool to create an inbox webhook for real-time notifications. Use when you need to receive notifications about LinkedIn and Email messages sent or received by leads in La Growth Machine campaigns." }, { "slug": "LAGROWTHMACHINE_CREATE_OR_UPDATE_LEAD", "name": "Create or Update Lead", "description": "Tool to create or update a lead in LaGrowthMachine. Requires audience plus at least one identifier: proEmail, persoEmail, linkedinUrl, twitter, or firstname+lastname with companyUrl/companyName. Use leadId to update an existing lead." }, { "slug": "LAGROWTHMACHINE_DELETE_INBOX_WEBHOOK", "name": "Delete Inbox Webhook", "description": "Tool to delete an existing inbox webhook by its ID. Use when you need to stop receiving inbox events at the webhook URL." }, { "slug": "LAGROWTHMACHINE_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve all campaigns from LaGrowthMachine with pagination support. Use when you need to list campaigns, with optional skip and limit parameters for pagination (max 25 per page)." }, { "slug": "LAGROWTHMACHINE_LIST_AUDIENCES", "name": "List Audiences", "description": "Tool to list all audiences in your LaGrowthMachine account. Use when you need to retrieve audience details including ID, name, description, size, type, and source URL." }, { "slug": "LAGROWTHMACHINE_LIST_IDENTITIES", "name": "List Identities", "description": "Tool to list all connected identities in your LaGrowthMachine account. Use when you need to retrieve identity IDs for sending LinkedIn or Email messages through other APIs." }, { "slug": "LAGROWTHMACHINE_LIST_INBOX_WEBHOOKS", "name": "List Inbox Webhooks", "description": "Tool to list all inbox webhooks currently configured in your workspace. Use when you need to retrieve webhook IDs, names, and target URLs for webhook management or audit purposes." }, { "slug": "LAGROWTHMACHINE_LIST_MEMBERS", "name": "List Members", "description": "Tool to list all members (users) associated with your workspace. Use when you need to retrieve member information, especially memberId which is required for action-based endpoints like sending LinkedIn or Email messages." }, { "slug": "LAGROWTHMACHINE_REGISTER_VECTOR_VISITOR_WEBHOOK", "name": "Register Vector Visitor Webhook", "description": "Tool to register Vector website visitors to a La Growth Machine audience. Use when receiving visitor events from Vector integration to automatically add identified contacts to the specified audience." }, { "slug": "LAGROWTHMACHINE_REMOVE_LEAD_FROM_AUDIENCES", "name": "Remove Lead From Audiences", "description": "Tool to remove a lead from one or more specified audiences in La Growth Machine. Use when you need to unsubscribe or remove a lead from audience lists." }, { "slug": "LAGROWTHMACHINE_SEARCH_LEAD", "name": "Search Lead", "description": "Tool to search for a lead using various criteria. Use when you need to find a lead by email, LinkedIn URL, lead ID, or name combination. At least one of these must be provided: email, linkedinUrl, leadId, or firstname+lastname+(companyName or companyUrl)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lagrowthmachine_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Copy your API Key from your LaGrowthMachine Settings > Integrations & API page (https://app.lagrowthmachine.com/settings/api)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "labs64_netlicensing", "name": "Labs64 NetLicensing", "logo": "https://logos.composio.dev/api/labs64_netlicensing", "description": "Labs64 NetLicensing is a license management software designed to help software vendors and developers efficiently manage their software licenses and distribution.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LABS64_NETLICENSING_LICENSE_LIST", "name": "List Licenses", "description": "Tool to list all licenses. Use when you need to retrieve license records with optional filtering and pagination." }, { "slug": "LABS64_NETLICENSING_PRODUCT_LIST", "name": "List Products", "description": "Tool to retrieve a list of all products. Use after authenticating with NetLicensing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "labs64_netlicensing_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NetLicensing API Key", "type": "string", "description": "The API key used for authenticating requests to the NetLicensing API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lambdatest", "name": "Lambdatest", "logo": "https://logos.composio.dev/api/lambdatest", "description": "LambdaTest is a leading AI-augmented unified test orchestration and execution cloud that enables developers and testers to ship code faster with cross-browser testing, automated testing, and real device testing capabilities.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LAMBDATEST_LIST_PLATFORMS", "name": "List Platforms", "description": "Tool to fetch available platforms with their supported browsers and versions. Use when you need to discover which browsers, versions, and platforms are available for automated testing on LambdaTest." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lambdatest_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Your LambdaTest account username. Navigate to Settings > Account Settings > Password & Security in your LambdaTest dashboard to find your username.", "required": true, "default": null }, { "name": "password", "displayName": "Access Key", "type": "string", "description": "Your LambdaTest access key. Navigate to Settings > Account Settings > Password & Security in your LambdaTest dashboard to retrieve your access key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "landbot", "name": "Landbot", "logo": "https://logos.composio.dev/api/landbot", "description": "Landbot is a no-code chatbot builder that enables businesses to create conversational experiences for customer engagement, lead generation, and support across various messaging channels.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LANDBOT_DELETE_BOT", "name": "Delete Bot", "description": "Tool to delete a specific bot from your account. Use when you need to remove an unused or test bot after confirming the bot ID." }, { "slug": "LANDBOT_GET_BRAND", "name": "Get Brand", "description": "Tool to retrieve your brand data including contact information and settings. Use when you need to access brand profile details, configuration, or contact information." }, { "slug": "LANDBOT_LIST_AGENTS", "name": "List Agents", "description": "Tool to retrieve a list of agents in your Landbot account. Use after authenticating your account to enumerate all agents and their details." }, { "slug": "LANDBOT_LIST_BOTS", "name": "List Bots", "description": "Tool to list all bots in your Landbot account. Use after authenticating to discover your configured bots." }, { "slug": "LANDBOT_LIST_CHANNELS", "name": "List Channels", "description": "Tool to list all channels integrated with your account. Use after authenticating your account to enumerate available messaging channels and metadata." }, { "slug": "LANDBOT_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list customers who have interacted with your bot. Use when you need to retrieve customer records with optional filters (channel_id, opt_in, search) and pagination." }, { "slug": "LANDBOT_LIST_WHATSAPP_TEMPLATES", "name": "List WhatsApp Templates", "description": "Tool to list all WhatsApp message templates available for the account. Use after obtaining your WhatsApp channel ID to fetch template IDs and parameter counts." }, { "slug": "LANDBOT_REPLACE_AGENT", "name": "Replace Agent", "description": "Tool to replace all data for a specific agent (full update). Use when you need to update agent information like name or password." }, { "slug": "LANDBOT_REPLACE_BRAND", "name": "Replace Brand", "description": "Tool to replace or update brand data with a full update (PUT operation). Use when you need to change company branding information in your Landbot account." }, { "slug": "LANDBOT_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a plain text outbound message to a Landbot customer. Use when you need to reply to or continue a support chat with a known customer_id." }, { "slug": "LANDBOT_SET_AGENT_STATUS", "name": "Set Agent Status", "description": "Tool to change your agent status to online, offline, or busy. Use when you need to update your availability status in Landbot." }, { "slug": "LANDBOT_UPDATE_AGENT", "name": "Update Agent", "description": "Tool to update an agent's information in your Landbot account. Use when you need to modify agent details such as name, email, or password. This performs a partial update." }, { "slug": "LANDBOT_UPDATE_BRAND", "name": "Update Brand", "description": "Tool to partially update your brand data in Landbot. Use when you need to modify brand information such as name, phone, address, city, zipcode, or country." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "landbot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Landbot API Token", "type": "string", "description": "The API token used for authenticating requests to the Landbot API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "langbase", "name": "Langbase", "logo": "https://logos.composio.dev/api/langbase", "description": "Langbase is a serverless AI developer platform that enables developers to build, collaborate, and deploy AI agents and applications with composable AI infrastructure.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LANGBASE_APPEND_THREAD_MESSAGES", "name": "Append Thread Messages", "description": "Tool to add new messages to an existing conversation thread. Use when continuing a chat session or adding context to a thread." }, { "slug": "LANGBASE_CHECK_HEALTH", "name": "Check API Health", "description": "Tool to check the health status of the Langbase API service. Use when you need to verify API availability." }, { "slug": "LANGBASE_CHUNKER_SPLIT_CONTENT", "name": "Split Content into Chunks", "description": "Tool to split content into smaller chunks. Use when processing large text segments to fit downstream limits." }, { "slug": "LANGBASE_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new conversation thread. Use when starting a fresh chat session or grouping messages into a distinct thread." }, { "slug": "LANGBASE_DELETE_THREAD", "name": "Delete Thread", "description": "Tool to delete a thread that is no longer needed to manage conversation history. Use when you need to permanently remove a thread by its ID." }, { "slug": "LANGBASE_DELETE_THREAD_MESSAGE", "name": "Delete Thread Message", "description": "Tool to delete a specific message from a conversation thread. Use when you need to remove a message from a thread by its ID." }, { "slug": "LANGBASE_DOCUMENT_LIST", "name": "List Documents in Memory", "description": "Tool to list documents in a specific memory. Use when you need to fetch document metadata (and optionally vectors) from a memory after confirming its name. Supports pagination via limit and startAfter parameters." }, { "slug": "LANGBASE_GET_PIPE", "name": "Get Pipe Details", "description": "Tool to retrieve details of a specific pipe by owner and name. Use when you need to fetch configuration and settings of a particular pipe." }, { "slug": "LANGBASE_GET_THREAD", "name": "Get Thread Details", "description": "Tool to retrieve details of a specific conversation thread. Use when you need the full thread details by its ID after confirming its existence." }, { "slug": "LANGBASE_LIST_MODELS", "name": "List Available Models", "description": "Tool to get available AI models supported by Langbase. Use to discover text and image generation models from various providers." }, { "slug": "LANGBASE_LIST_THREAD_MESSAGES", "name": "List Thread Messages", "description": "Tool to list all messages in a conversation thread. Use after obtaining the thread ID to fetch its messages." }, { "slug": "LANGBASE_LIST_TRACES", "name": "List Execution Traces", "description": "Tool to get execution traces for debugging and monitoring pipe runs. Use when you need to retrieve trace logs for a specific primitive." }, { "slug": "LANGBASE_MEMORY_CREATE", "name": "Create Memory", "description": "Tool to create a new memory. Use when storing a new memory record in Langbase after confirming memory details." }, { "slug": "LANGBASE_MEMORY_DELETE", "name": "Delete Memory", "description": "Tool to delete a specific memory. Use when you need to permanently remove a stored memory by its name." }, { "slug": "LANGBASE_MEMORY_LIST", "name": "List Memories", "description": "Tool to list all memory objects. Use when you need to fetch stored memories for context retrieval." }, { "slug": "LANGBASE_PIPE_CREATE", "name": "Create a new pipe", "description": "Tool to create a new pipe. Use after configuring pipe parameters. Returns an array of pipe objects, each including API key and URL." }, { "slug": "LANGBASE_PIPE_LIST", "name": "List all pipes", "description": "Tool to list all pipes. Use after authentication to retrieve the complete list of pipes. Returns an array of pipe objects; callers must handle list iteration." }, { "slug": "LANGBASE_UPDATE_PIPE", "name": "Update an existing pipe", "description": "Tool to update an existing pipe's configuration on Langbase. Use when modifying model settings, parameters, prompts, tools, or memory. The pipe must already exist." }, { "slug": "LANGBASE_UPDATE_THREAD", "name": "Update Thread Metadata", "description": "Tool to update an existing thread's metadata. Use when you need to modify metadata fields for managing and organizing conversation threads." }, { "slug": "LANGBASE_UPDATE_THREAD_MESSAGE", "name": "Update Thread Message", "description": "Tool to update an existing message in a conversation thread. Use when you need to modify the content or metadata of a specific message." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "langbase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Langbase API Key", "type": "string", "description": "Your Langbase API key for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "langfuse", "name": "Langfuse", "logo": "https://logos.composio.dev/api/langfuse", "description": "Open source LLM engineering platform. Traces, evals, prompt management and metrics to debug and improve your LLM application.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LANGFUSE_GET_ANNOTATION_QUEUE", "name": "Get Annotation Queue", "description": "Tool to retrieve an annotation queue by its ID. Use when you need to fetch details about a specific annotation queue." }, { "slug": "LANGFUSE_LIST_DATASET_RUN_ITEMS", "name": "List Dataset Run Items", "description": "Tool to list dataset run items for a specific dataset and run name. Use when you need to retrieve all run items associated with a particular dataset run for analysis or evaluation." }, { "slug": "LANGFUSE_LIST_OBSERVATIONS_V2", "name": "List Observations V2", "description": "Tool to get a list of observations with cursor-based pagination and flexible field selection. Use when you need to efficiently retrieve large datasets of observations with control over which fields are returned." }, { "slug": "LANGFUSE_UPSERT_LLM_CONNECTION", "name": "Upsert LLM Connection", "description": "Tool to create or update an LLM connection in Langfuse. The connection is upserted based on the provider name. Use when you need to configure LLM API credentials for tracking LLM calls in Langfuse." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "langfuse_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Public Key", "type": "string", "description": "Your Langfuse public key (format: pk-lf-xxxxxxxxxxxxx). Get it from Project Settings → API Keys", "required": true, "default": null }, { "name": "password", "displayName": "Secret Key", "type": "string", "description": "Your Langfuse secret key (format: sk-lf-xxxxxxxxxxxxx). Get it from Project Settings → API Keys", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your Langfuse region: \"eu\" for EU (cloud.langfuse.com) or \"us\" for US (us.cloud.langfuse.com)", "required": false, "default": "eu" } ] } } } ] }, { "slug": "langsmith", "name": "Langsmith", "logo": "https://logos.composio.dev/api/langsmith", "description": "Platform for debugging, testing, evaluating, and monitoring LLM applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "langsmith_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your LangSmith API key. Create at https://smith.langchain.com/settings under API Keys section", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "laposta", "name": "Laposta", "logo": "https://logos.composio.dev/api/laposta", "description": "Dutch newsletter app (email marketing) that makes it exceptionally easy to send professional newsletters.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 25, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LAPOSTA_CAMPAIGN_GET_ALL", "name": "Get All Campaigns", "description": "Retrieve all email campaigns from your Laposta account. Use this tool to list all campaigns with their configuration, delivery status, and analytics settings. Returns campaign details including sender information, subject lines, recipient lists, delivery timestamps, and tracking settings. No parameters required - retrieves all campaigns associated with your account." }, { "slug": "LAPOSTA_FIELD_CREATE", "name": "Create Custom Field", "description": "Tool to create a custom field for a mailing list to define subscriber attributes. Use when you need to add custom fields like text, numeric, date, or select fields to a list. For select fields (select_single or select_multiple), you must provide the options parameter." }, { "slug": "LAPOSTA_FIELD_DELETE", "name": "Delete Field", "description": "Tool to permanently remove a custom field from a mailing list. Use when you need to delete a field that is no longer needed." }, { "slug": "LAPOSTA_FIELD_GET", "name": "Get Field Details", "description": "Tool to retrieve specific field details by field_id. Use when you need to fetch complete information about a custom field including its configuration, data type, and available options." }, { "slug": "LAPOSTA_FIELD_GET_ALL", "name": "Get All Fields", "description": "Tool to retrieve all fields for a specific list in Laposta. Use when you need to see all field definitions, metadata, and settings for a list." }, { "slug": "LAPOSTA_FIELD_UPDATE", "name": "Update Field", "description": "Tool to modify field configuration in a Laposta list. Use when you need to update field properties such as name, datatype, required status, or display settings. WARNING: Modifying datatype removes all data from that field." }, { "slug": "LAPOSTA_GET_SEGMENT", "name": "Get Segment Details", "description": "Tool to retrieve specific segment details by segment_id. Use when you need to fetch complete information about a segment including its name, definition criteria, and timestamps." }, { "slug": "LAPOSTA_LIST_CLEAR_MEMBERS", "name": "Clear All Members From List", "description": "Tool to clear all active members from a list. Use when you need to remove all active member relationships while preserving the list itself. The operation is permanent and cannot be undone." }, { "slug": "LAPOSTA_LIST_CREATE", "name": "Create Mailing List", "description": "Tool to create a new mailing list in Laposta to manage email subscribers. Use when you need to create a new list with zero members." }, { "slug": "LAPOSTA_LIST_DELETE", "name": "Delete List", "description": "Permanently deletes a mailing list from Laposta. This action is irreversible - the list and all its configuration (including notification settings and metadata) will be permanently removed. Members are not deleted, only the list itself. Use this when a mailing list is no longer needed. Returns the deleted list object with state set to 'deleted'." }, { "slug": "LAPOSTA_LIST_GET", "name": "Get List Details", "description": "Tool to retrieve specific list details by list_id. Use when you need to fetch complete information about a mailing list including its metadata, state, notification settings, and member statistics." }, { "slug": "LAPOSTA_LIST_GET_ALL", "name": "Get All Lists", "description": "Tool to retrieve all mailing lists from your Laposta account. Use when you need to view all lists including both active and deleted ones." }, { "slug": "LAPOSTA_LIST_UPDATE", "name": "Update Mailing List", "description": "Tool to modify list properties such as name, remarks, or notification emails. Use when you need to update an existing mailing list's configuration." }, { "slug": "LAPOSTA_MEMBER_CREATE", "name": "Create Member", "description": "Tool to add a new subscriber relationship to a list with custom fields and tracking info. Use when you need to create a new member in a list or update an existing member if upsert is enabled." }, { "slug": "LAPOSTA_MEMBER_DELETE", "name": "Delete Member", "description": "Tool to permanently remove a member from a list. Use when you need to delete a member by their ID or email address." }, { "slug": "LAPOSTA_MEMBER_GET", "name": "Get Member", "description": "Tool to retrieve specific member details by member_id or email. Use when you need to get comprehensive information about a member from a list, including their status, registration details, and custom field values." }, { "slug": "LAPOSTA_MEMBER_GET_ALL", "name": "Get All Members", "description": "Tool to retrieve all members from a specified Laposta mailing list. Use when you need to list or view all contacts in a list. Optionally filter by member state (active, unsubscribed, or cleaned)." }, { "slug": "LAPOSTA_MEMBER_UPDATE", "name": "Update Member", "description": "Tool to modify member data, status, or custom fields in a Laposta list. Use when updating existing member information or managing subscription state. Supports partial updates (only modified fields need to be included)." }, { "slug": "LAPOSTA_REPORT_GET_ALL", "name": "Get All Campaign Reports", "description": "Tool to retrieve performance metrics for all campaigns. Use when you need campaign statistics including opens, clicks, bounces, complaints, and unsubscribes." }, { "slug": "LAPOSTA_SEGMENT_GET_ALL", "name": "Get All Segments", "description": "Tool to retrieve all segments from a mailing list. Use when you need to list or browse segments within a specific list." }, { "slug": "LAPOSTA_WEBHOOK_CREATE", "name": "Create Webhook", "description": "Tool to register a new webhook for list events in Laposta. Use when you need to receive real-time notifications for subscriber events like subscriptions, modifications, or deactivations." }, { "slug": "LAPOSTA_WEBHOOK_DELETE", "name": "Delete Webhook", "description": "Tool to permanently remove a webhook. Use when you need to delete a webhook from a list. Pending webhook requests are completed before deletion." }, { "slug": "LAPOSTA_WEBHOOK_GET", "name": "Get Webhook Details", "description": "Tool to retrieve specific webhook details by webhook_id. Use when you need to inspect webhook configuration including event type, URL, and status." }, { "slug": "LAPOSTA_WEBHOOK_GET_ALL", "name": "Get All Webhooks", "description": "Tool to retrieve all webhooks for a specific list. Use when you need to view all webhooks configured for a particular list." }, { "slug": "LAPOSTA_WEBHOOK_UPDATE", "name": "Update Webhook", "description": "Tool to modify webhook configuration including URL, event type, or blocked status. Use when you need to update an existing webhook's settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "laposta_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Laposta API key. Navigate to Toegang & Abonnement > Koppelingen > API sleutels in your Laposta account to retrieve it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lark", "name": "Lark", "logo": "https://logos.composio.dev/api/lark", "description": "Enterprise collaboration platform with messaging, video conferencing, calendar, and document management", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "lark_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "contact:contact.base:readonly,im:message:send_as_bot,calendar:calendar:readonly,docx:document:readonly,bitable:app:readonly,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "leadboxer", "name": "LeadBoxer", "logo": "https://logos.composio.dev/api/leadboxer", "description": "Lead generation platform that gives you real-time info about companies and people that visit your website. Turning anonymous web traffic into actionable data.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEADBOXER_ADD_OR_UPDATE_LEAD_TAGS", "name": "Add or Update Lead Tags", "description": "Tool to add or update lead tags in LeadBoxer. Use when you need to manage lead tags by adding new tags, removing specific tags, or overwriting all existing tags for a specified user." }, { "slug": "LEADBOXER_DELETE_CTD", "name": "Delete Custom Tracking Domain", "description": "Tool to delete a custom tracking domain entry for a dataset. Use when you need to remove a specific custom tracking domain (CTD) associated with a dataset in LeadBoxer." }, { "slug": "LEADBOXER_GET_EVENTS", "name": "Get Events", "description": "Tool to fetch events for specified sessions from LeadBoxer. Use when you need to retrieve behavioral data including pageviews, clicks, form submissions, email interactions, and custom events. Events can be filtered by session ID, email, user ID, or segment/smartlist IDs." }, { "slug": "LEADBOXER_GET_LEAD_SCORE_FORMULA", "name": "Get Lead Score Formula", "description": "Tool to fetch the lead score formula for a specific dataset. Use when you need to understand how lead scores are calculated for records in a dataset. The formula defines scoring based on criteria types: Range (number ranges), Match (exact values), Exists (presence of values), and Boost (event-based scoring)." }, { "slug": "LEADBOXER_GET_SESSIONS", "name": "Get Sessions", "description": "Tool to fetch sessions for a specified lead ID from LeadBoxer. Use when you need to retrieve session data for a user, with optional filtering by email, user ID, Smartlist ID, or segment ID. A session represents a single visit to the site, and users can have multiple sessions over time." }, { "slug": "LEADBOXER_LOG_EVENT", "name": "Log Server-Side Event", "description": "Tool to track server-side events in LeadBoxer. Use when tracking backend events, page views, or custom activities from your server. This endpoint supports tracking user interactions, conversions, and other activities that occur on the server-side." }, { "slug": "LEADBOXER_MANAGEMENT_CTD", "name": "Get Custom Tracking Domains", "description": "Tool to fetch custom tracking domain entries for a dataset. Use when you need to retrieve all custom tracking domains that are created or in progress for a specific datasetId." }, { "slug": "LEADBOXER_POST_EVENT", "name": "Post Event Data", "description": "Tool to send event data for tracking user activities via POST request. Use when tracking events by sending data in the request body with application/x-www-form-urlencoded format." }, { "slug": "LEADBOXER_VIEWS_LEAD_DETAIL", "name": "Get Lead Detail", "description": "Tool to fetch detailed information about a lead based on filters. Use when you need comprehensive lead data for a specific lead ID. The default view type is B2B. Note: On initial pageview, there may be a few seconds overhead before data is populated; consider implementing a 3-second delay after lead creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leadboxer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Integrations → data → API Key in your LeadBoxer dashboard", "required": true, "default": null }, { "name": "generic_id", "displayName": "Dataset ID", "type": "string", "description": "Copy your Dataset ID from the LeadBoxer dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leadfeeder", "name": "Leadfeeder", "logo": "https://logos.composio.dev/api/leadfeeder", "description": "Leadfeeder identifies companies visiting your website and converts them into high-value leads.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEADFEEDER_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve the details of a specific account by ID. Use when you need to get information about a particular Leadfeeder account." }, { "slug": "LEADFEEDER_GET_ACCOUNTS", "name": "Get Accounts", "description": "Tool to retrieve a list of accounts the user has access to. Use when you need to discover all available Leadfeeder accounts after authentication." }, { "slug": "LEADFEEDER_GET_ALL_VISITS", "name": "Get All Visits", "description": "Tool to retrieve all visits for a specific lead. Use when you need detailed visit history for a lead, optionally filtered by date range." }, { "slug": "LEADFEEDER_GET_COMPANY_INFO_BY_IP", "name": "Get Company Info by IP", "description": "Tool to retrieve company information based on an IP address. Use when you need to enrich an IP and obtain its company profile. Returns 404 if no match is found." }, { "slug": "LEADFEEDER_GET_CUSTOM_FEEDS", "name": "Get Custom Feeds", "description": "Retrieve all custom feeds configured for a Leadfeeder account. Custom feeds are saved filter configurations that help organize and segment company visits. Returns an empty list for accounts without premium features (402), non-existent accounts (404), or accounts with no custom feeds. Use LEADFEEDER_GET_ACCOUNTS first to obtain valid account IDs." }, { "slug": "LEADFEEDER_GET_TRACKING_SCRIPT", "name": "Get Tracking Script", "description": "Tool to retrieve the website tracking script for a given account. Use when you need to obtain the JavaScript tracking code to be inserted on webpages for visitor tracking." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leadfeeder_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "Your unique API token for authenticating requests to the Leadfeeder API.", "required": true, "default": null }, { "name": "user_agent", "displayName": "User Agent", "type": "string", "description": "The name of your application, to be included in the 'User-Agent' header of API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leadiq", "name": "LeadIQ", "logo": "https://logos.composio.dev/api/leadiq", "description": "The Smart B2B Prospecting Platform. Query professional information about people and companies, find leads, and enrich contact data.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEADIQ_ABANDON_BATCH", "name": "Abandon Import Batch", "description": "Abandon a contact tracking import batch that is no longer needed. Use when you need to cancel or stop an ongoing import batch operation." }, { "slug": "LEADIQ_GET_ACCOUNT", "name": "Get Account Details", "description": "Retrieve current user's account information including plans, billing cycles, and credit usage. Use to check available API credits, billing status, and data visibility settings before making data queries." }, { "slug": "LEADIQ_GET_CONTACT_TRACKING_BALANCE", "name": "Get Contact Tracking Balance", "description": "Tool to check the remaining balance of contact tracking credits available for the account. Use when you need to verify how many contact tracking credits are left." }, { "slug": "LEADIQ_GET_USAGE", "name": "Get Usage Statistics", "description": "Tool to retrieve API usage statistics and credit consumption for the current LeadIQ account. Use when you need to check credit usage, remaining capacity, or billing information." }, { "slug": "LEADIQ_SEARCH_COMPANY", "name": "Search Company", "description": "Tool to search for companies by name, domain, LinkedIn URL, or other identifying information. Use when you need to find companies matching specific criteria. Returns detailed company information including employee count, industry, location, and social profiles." }, { "slug": "LEADIQ_SEARCH_GROUPED_ADVANCED", "name": "Search Grouped Advanced", "description": "Tool to search for people by job title, seniority, role, company size, and location with results grouped by company. Returns companies with matching people nested under each company for account-based prospecting. Use when you need to find contacts at companies matching specific criteria." }, { "slug": "LEADIQ_SEARCH_PEOPLE", "name": "Search People", "description": "Search for individual contacts by name, company (past and present), LinkedIn profile, email, or phone number. Use when you need to find people based on identifying information. Returns comprehensive contact data including work/personal emails, phones, employment history, education, and social profiles." }, { "slug": "LEADIQ_SEARCH_PEOPLE_FLAT", "name": "Flat Advanced Search", "description": "Tool to search for people using advanced filters by job title, seniority, role, company size, location, and more. Returns a flat list of individual contacts unorganized by company." }, { "slug": "LEADIQ_SUBMIT_PERSON_FEEDBACK", "name": "Submit Person Feedback", "description": "Tool to submit data correction feedback for person contact information to improve LeadIQ data accuracy. Use when you need to report contact info status, invalid reasons, or update profile details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leadiq_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and go to Settings > System Settings > API Keys (https://account.leadiq.com/app/settings/api-keys). Use the Secret Base64 API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leadoku", "name": "Leadoku", "logo": "https://logos.composio.dev/api/leadoku", "description": "Leadoku is a platform designed to streamline lead management and sales processes.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEADOKU_GET_NEW_CONNECTIONS", "name": "Get New Connections", "description": "Retrieves a list of new connections from Growth-X (formerly Leadoku). The 'tsField' for this action is 'connection_date' (mapped from 'creation_date' in the API response)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leadoku_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key provided by Leadoku for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leap", "name": "Leap", "logo": "https://logos.composio.dev/api/leap", "description": "Add AI features to your app in minutes. Generate images, fine tune models, and more with our easy-to-use API.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Leap API key. Get it from: Leap Dashboard > Select Project (top left) > API Keys (bottom left)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leexi", "name": "Leexi", "logo": "https://logos.composio.dev/api/leexi", "description": "AI notetaker - Transcribe, analyse and summarize your calls and meetings.", "category": "ai meeting assistants", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEEXI_CREATE_MEETING_EVENT", "name": "Create Meeting Event", "description": "Tool to create a new meeting event in Leexi with timing, participants, and recording preferences. Use when scheduling a meeting that needs to be tracked and potentially recorded in the Leexi system." }, { "slug": "LEEXI_DELETE_MEETING_EVENT", "name": "Delete Meeting Event", "description": "Tool to delete a specific meeting event by UUID. Use when you need to permanently remove a meeting event record from the Leexi system. This is a destructive operation that cannot be undone." }, { "slug": "LEEXI_GET_CALL", "name": "Get Call", "description": "Tool to get details of a specific call or meeting by UUID from Leexi. Use when you need to retrieve call details including topics and transcripts. The simple_transcript provides paragraph-level timestamps, while the transcript includes word-level timestamps." }, { "slug": "LEEXI_GET_MEETING_EVENT", "name": "Get Meeting Event", "description": "Tool to retrieve a specific meeting event by UUID from Leexi. Use when you need to fetch details of a particular meeting event including timing, participants, and recording preferences." }, { "slug": "LEEXI_LIST_CALLS", "name": "List Calls", "description": "Tool to list all calls and meetings in your Leexi workspace with pagination support. Use when you need to retrieve call records. Note: AI-generated content like summaries and chapters may not be immediately available for newly created calls." }, { "slug": "LEEXI_LIST_MEETING_EVENTS", "name": "List Meeting Events", "description": "Tool to list all meeting events in your Leexi workspace with pagination support. Use when you need to retrieve meeting events from the workspace." }, { "slug": "LEEXI_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams in your Leexi workspace with pagination support. Use when you need to retrieve team information or iterate through all teams in the organization." }, { "slug": "LEEXI_LIST_USERS", "name": "List Users", "description": "Tool to list all users in your Leexi workspace. Use when you need to retrieve information about workspace members. Supports pagination with configurable page size (1-100 items per page, default 10)." }, { "slug": "LEEXI_REQUEST_PRESIGNED_URL", "name": "Request Presigned URL", "description": "Tool to request a presigned URL for uploading a call recording before creating the call. Use when you need to upload a call recording file. After receiving the presigned URL, send a PUT request to the returned URL with the provided headers to upload the file (single-part upload). The uploaded file automatically expires after 3 days unless used to create a call." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leexi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key ID", "type": "string", "description": "Navigate to Leexi → Settings → Company Settings → API Keys to generate your API Key ID", "required": true, "default": null }, { "name": "password", "displayName": "API Key Secret", "type": "string", "description": "Navigate to Leexi → Settings → Company Settings → API Keys to generate your API Key Secret", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leiga", "name": "Leiga", "logo": "https://logos.composio.dev/api/leiga", "description": "Leiga is an AI-powered project management tool that automates tasks and enhances team collaboration.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEIGA_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Leiga. Use after gathering project details and authenticating." }, { "slug": "LEIGA_GET_FILE_LIST", "name": "Get File List", "description": "Tool to retrieve a paginated list of files in a specified directory. Use after obtaining the directory ID to view files." }, { "slug": "LEIGA_GET_ISSUE_DETAIL_BY_ISSUE_NUMBER", "name": "Get Issue Detail by Number", "description": "Tool to fetch detailed information about a specific issue using its issue number. Use when you have an issue number and need complete issue details." }, { "slug": "LEIGA_GET_ISSUE_SCHEMA", "name": "Get Issue Schema", "description": "Tool to retrieve the issue custom-field schema. Use when you need the full list of field configurations after selecting an issue type." }, { "slug": "LEIGA_GET_PROJECT_INFORMATION", "name": "Get Project Information", "description": "Tool to fetch detailed information about a specific project by its ID. Use when you need complete project metadata, including owner and members." }, { "slug": "LEIGA_GET_PROJECT_OVERVIEW_TEMPLATE", "name": "Get Project Overview Template", "description": "Tool to retrieve the project overview template. Use when you need the structured overview template for a project after confirming its ID." }, { "slug": "LEIGA_GET_PROJECT_TEMPLATE_LIST", "name": "Get Project Template List", "description": "Tool to retrieve a list of project templates. Use when browsing available templates before creating a new project." }, { "slug": "LEIGA_GET_VERSION_LIST", "name": "Get Version List", "description": "Tool to fetch list of versions for a specific platform. Use when you need to view all available versions before deployment." }, { "slug": "LEIGA_GET_WEBHOOK_TYPE_LIST", "name": "Get Webhook Type List", "description": "Tool to retrieve the list of available webhook types. Use when configuring webhooks and you need to know valid event types." }, { "slug": "LEIGA_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects available to the authenticated user. Use when you need to retrieve your projects in paginated form (e.g., page 1 with 10 per page)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leiga_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Leiga API Key", "type": "string", "description": "The API key used for authentication with Leiga. Manage your key in Leiga account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lemlist", "name": "Lemlist", "logo": "https://logos.composio.dev/api/lemlist", "description": "lemlist is a prospecting tool that automates multichannel outreach, enabling users to find leads with valid contact information and reach them across email, LinkedIn, or calls with personalized messages.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEMLIST_CREATE_COMPANY_NOTE", "name": "Create Company Note", "description": "Tool to create a note attached to a specific company. Use when you need to add annotations or notes to a company record for tracking purposes." }, { "slug": "LEMLIST_DELETE_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Tool to delete a specific schedule by scheduleId. Use when you need to remove a schedule permanently after confirming its ID." }, { "slug": "LEMLIST_DELETE_DELETE_UNSUBSCRIBE_EMAIL", "name": "Delete Unsubscribed Email", "description": "Tool to delete an email from the unsubscribed list. Use when restoring a subscriber who has opted back in and you need to remove them from the suppressed contacts." }, { "slug": "LEMLIST_DELETE_UNSUBSCRIBE_LEAD_FROM_CAMPAIGN", "name": "Unsubscribe Lead From Campaign", "description": "Tool to unsubscribe a lead from a campaign. Use when you need to stop further outreach by removing a lead from the specified campaign." }, { "slug": "LEMLIST_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to retrieve the list of all webhooks configured for the team. Use when you need to sync or audit active webhooks." }, { "slug": "LEMLIST_GET_CAMPAIGN_BY_ID", "name": "Get Campaign By ID", "description": "Tool to retrieve a specific campaign by campaignId. Use when you need detailed campaign information by ID." }, { "slug": "LEMLIST_GET_CAMPAIGN_EXPORT_START", "name": "Start Campaign Export", "description": "Tool to start an asynchronous export of all campaign statistics (CSV). Use when you need to initiate a CSV export for a given campaign and track its progress." }, { "slug": "LEMLIST_GET_CAMPAIGN_EXPORT_STATUS", "name": "Get Campaign Export Status", "description": "Tool to check the status of an asynchronous campaign export. Use after starting an export to poll until done or error." }, { "slug": "LEMLIST_GET_CAMPAIGN_SEQUENCES", "name": "Get Campaign Sequences", "description": "Tool to retrieve a list of all sequences for a campaign with steps and conditions. Use after fetching campaign to inspect its nested sequences and branching rules." }, { "slug": "LEMLIST_GET_CAMPAIGN_STATS", "name": "Get Campaign Stats", "description": "Tool to retrieve performance statistics for a specific campaign within a date range. Use when you need campaign analytics including lead engagement, message delivery, and step-by-step performance metrics." }, { "slug": "LEMLIST_GET_COMPANIES_SCHEMA", "name": "Get Companies Schema", "description": "Tool to retrieve the schema definition for companies in the people database. Use when you need to understand the structure, fields, and data types available for company records." }, { "slug": "LEMLIST_GET_CONTACT_MESSAGES", "name": "Get Contact Messages", "description": "Tool to retrieve all messages exchanged with a specific contact. Use when you need to fetch conversation history for a contact by their contactId." }, { "slug": "LEMLIST_GET_DATABASE_FILTERS", "name": "Get Database Filters", "description": "Tool to retrieve available filters for searching the people and companies database. Use when you need to discover what search criteria are available before querying the database." }, { "slug": "LEMLIST_GET_EXPORT_CAMPAIGN_LEADS", "name": "Export Campaign Leads", "description": "Tool to export campaign leads with state filtering and choose between JSON or CSV output. Use when you need to download leads and their statuses for reporting or analysis." }, { "slug": "LEMLIST_GET_EXPORT_UNSUBSCRIBES", "name": "Export Unsubscribes", "description": "Tool to download a CSV file containing all unsubscribed email addresses. Use when you need to export the full unsubscribes list for analysis or archival." }, { "slug": "LEMLIST_GET_GET_UNSUBSCRIBE_EMAIL", "name": "Get Unsubscribed Email", "description": "Tool to retrieve a single unsubscribed email record. Use when you need to verify if a specific email has opted out of campaigns before re-subscribing them." }, { "slug": "LEMLIST_GET_LABEL", "name": "Get Label", "description": "Tool to retrieve information about a specific label by its ID. Use when you need details about an inbox label." }, { "slug": "LEMLIST_GET_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve a list of campaigns for the team. Use when you need to discover campaign IDs, names, or statuses before performing operations like auditing or pausing campaigns." }, { "slug": "LEMLIST_GET_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve all pending tasks assigned to team members. Use when you need to view tasks by campaign, assignee, or other filters. Completed tasks are automatically excluded from results." }, { "slug": "LEMLIST_GET_LIST_TEAM_SENDERS", "name": "List Team Senders", "description": "Tool to retrieve all team members and their associated campaigns. Use when you need to discover which team members are managing which campaigns or to understand campaign distribution across the team." }, { "slug": "LEMLIST_GET_LIST_WATCHLIST_SIGNALS", "name": "List Watchlist Signals", "description": "Tool to retrieve paginated watchlist signals with filtering and sorting. Use when you need to fetch signals from watchlists based on type, status, date range, or specific watchlist ID." }, { "slug": "LEMLIST_GET_PEOPLE_SCHEMA", "name": "Get People Schema", "description": "Tool to retrieve the schema definition for people in the people database. Use when you need to understand available fields and their structure before querying or importing people data." }, { "slug": "LEMLIST_GET_RETRIEVE_ACTIVITIES", "name": "Retrieve Activities", "description": "Tool to fetch recent campaign activities. Use after authentication to retrieve activities filtered by campaignId, type, or limit." }, { "slug": "LEMLIST_GET_RETRIEVE_LEAD_BY_EMAIL", "name": "Retrieve Lead By Email", "description": "Tool to retrieve a lead by their email address. Use when you have a lead's email to fetch complete lead details." }, { "slug": "LEMLIST_GET_RETRIEVE_UNSUBSCRIBES", "name": "Retrieve Unsubscribes", "description": "Tool to retrieve the list of all people who are unsubscribed. Use when you need to sync or audit unsubscribed contacts across your campaigns." }, { "slug": "LEMLIST_GET_TEAM_CREDITS", "name": "Get Team Credits", "description": "Tool to retrieve credits left in the team. Use after authenticating your session." }, { "slug": "LEMLIST_GET_TEAM_INFO", "name": "Get Team Info", "description": "Tool to retrieve information about your team. Use after authentication to inspect current team settings, members, webhooks, and enabled features. Verify the returned teamId matches the intended workspace before passing it to campaign-creation or other write operations to avoid creating resources in the wrong account context." }, { "slug": "LEMLIST_GET_USER", "name": "Get User", "description": "Tool to retrieve all information for a specific user by their ID. Use when you have a user ID to fetch complete user details including LinkedIn settings and connected mailboxes." }, { "slug": "LEMLIST_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve all information of the authenticated user. Use after confirming a valid access token." }, { "slug": "LEMLIST_LIST_COMPANIES", "name": "List Companies", "description": "Tool to retrieve a paginated list of all companies in your CRM. Use when you need to discover companies, search by name, or fetch company details for further operations." }, { "slug": "LEMLIST_LIST_COMPANY_NOTES", "name": "List Company Notes", "description": "Tool to retrieve all notes associated with a specific company. Use when you need to view annotations, comments, or activities logged against a company record." }, { "slug": "LEMLIST_LIST_LABELS", "name": "List Labels", "description": "Tool to list all labels available to your team. Use when you need to retrieve the full list of labels for inbox organization or filtering." }, { "slug": "LEMLIST_PATCH_MARK_LEAD_AS_NOT_INTERESTED_IN_CAMPAIGN", "name": "Mark Lead as Not Interested in Campaign", "description": "Tool to mark a lead as not interested in a specific campaign. Use after confirming campaign and lead IDs to set status to not_interested." }, { "slug": "LEMLIST_PATCH_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update settings of a campaign. Use after fetching or creating a campaign to adjust name, stop-on behaviors, and other campaign flags." }, { "slug": "LEMLIST_PATCH_UPDATE_SCHEDULE", "name": "Update Schedule", "description": "Tool to update an existing schedule with new parameters. Use after retrieving schedule details to adjust days, time window, and limits." }, { "slug": "LEMLIST_PATCH_UPDATE_SEQUENCE_STEP", "name": "Update Sequence Step", "description": "Tool to update an existing step in a sequence (edit subject/message/delay/etc.) by sequenceId and stepId. Use after retrieving sequences to modify step content or timing." }, { "slug": "LEMLIST_POST_ADD_STEP_TO_SEQUENCE", "name": "Add Step to Sequence", "description": "Tool to add a new step (email, LinkedIn, conditional, etc.) to an existing sequence. Use when building or editing campaign sequences to add outreach steps." }, { "slug": "LEMLIST_POST_ADD_UNSUBSCRIBE_EMAIL_DOMAIN", "name": "Add Unsubscribe Email/Domain", "description": "Tool to add an email or domain to the unsubscribed list. Use when you need to globally block sending to a specific recipient or domain." }, { "slug": "LEMLIST_POST_ADD_VARIABLES_TO_LEAD", "name": "Add Variables to Lead", "description": "Tool to add one or more variables to a lead. Use when you need to enrich a lead with custom data after its creation or retrieval." }, { "slug": "LEMLIST_POST_ASSOCIATE_SCHEDULE_WITH_CAMPAIGN", "name": "Associate schedule with campaign", "description": "Tool to associate a schedule with a campaign. Use after confirming both campaignId and scheduleId to bind a schedule to its campaign." }, { "slug": "LEMLIST_POST_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign. Use after confirming the team ID. Returns campaign, sequence, and schedule IDs nested under a `data` key (e.g., `result['data']['campaignId']`)." }, { "slug": "LEMLIST_POST_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new label for inbox conversations. Use when you need to organize inbox messages with custom labels." }, { "slug": "LEMLIST_POST_CREATE_LEAD_IN_CAMPAIGN", "name": "Create Lead In Campaign", "description": "Tool to create a lead and add it to a specific campaign. Use when you need to enroll a new lead into an outreach campaign. Supports optional deduplication and enrichment features." }, { "slug": "LEMLIST_POST_CREATE_SCHEDULE", "name": "Create Schedule", "description": "Tool to create a new schedule for the team. Use when you need to define custom active times or delays for outreach operations. Returns a `scheduleId`; store it for association with campaigns or sequences. Avoid creating unused schedules." }, { "slug": "LEMLIST_POST_CREATE_TASK", "name": "Create Task", "description": "Tool to create a manual task (opportunity) associated with a contact, company, or lead. Use when you need to track follow-ups or action items for outreach prospects." }, { "slug": "LEMLIST_POST_IGNORE_TASKS", "name": "Ignore Tasks", "description": "Tool to mark one or more tasks as ignored in Lemlist. Use when you want to dismiss tasks without completing them." }, { "slug": "LEMLIST_POST_MARK_LEAD_AS_INTERESTED", "name": "Mark Lead As Interested", "description": "Tool to mark a lead as interested in all campaigns. Use when a lead responds positively and you want to advance or personalize your outreach." }, { "slug": "LEMLIST_POST_MARK_LEAD_AS_INTERESTED_IN_CAMPAIGN", "name": "Mark Lead As Interested In Campaign", "description": "Tool to mark a lead as interested in a specific campaign. Use after confirming the lead's positive engagement in that campaign." }, { "slug": "LEMLIST_POST_MARK_LEAD_AS_NOT_INTERESTED", "name": "Mark Lead As Not Interested", "description": "Tool to mark a lead as not interested in all campaigns. Use when a lead explicitly declines outreach and should be paused across campaigns." }, { "slug": "LEMLIST_POST_PAUSE_CAMPAIGN", "name": "Pause a running campaign", "description": "Tool to pause a running campaign. Use after confirming you have the correct campaign ID and that the campaign is currently running." }, { "slug": "LEMLIST_POST_PAUSE_LEAD", "name": "Pause Lead", "description": "Tool to pause a lead in all campaigns or a specific campaign. Use when you want to temporarily halt outreach to a lead." }, { "slug": "LEMLIST_SEARCH_COMPANIES_DATABASE", "name": "Search Companies Database", "description": "Tool to search the companies database using filters, keywords, and pagination. Use when you need to find companies based on criteria like industry, size, or keywords. Returns a paginated list of companies matching the specified filters." }, { "slug": "LEMLIST_SEARCH_PEOPLE_DATABASE", "name": "Search People Database", "description": "Tool to search the Lemlist people database using filters, keywords, and pagination. Use when you need to find prospects based on criteria like location, job title, seniority, or company. Supports free-text search and structured filtering." }, { "slug": "LEMLIST_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task including assignment, scheduling, and status. Use when modifying task details such as title, priority, due date, or completion status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lemlist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "lemlist API Key", "type": "string", "description": "Your lemlist API key. In lemlist, click your profile icon (bottom-left), then Settings → Integrations → Generate. Copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lemon_squeezy", "name": "Lemon Squeezy", "logo": "https://logos.composio.dev/api/lemon_squeezy", "description": "Lemon Squeezy is a platform designed to simplify payments, taxes, and subscriptions for software companies, offering a powerful API and webhooks for seamless integration.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEMON_SQUEEZY_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer. Use after verifying the store exists and you need to add a customer to it. Example: \"Create a customer John Doe with email johndoe@example.com in store 1.\"" }, { "slug": "LEMON_SQUEEZY_CREATE_DISCOUNT", "name": "Create Discount", "description": "Tool to create a new discount code in Lemon Squeezy. Use when you need to create promotional discounts for products or subscriptions. Example: \"Create a discount code SUMMER20 with 20% off in store 123.\"" }, { "slug": "LEMON_SQUEEZY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for receiving event notifications. Use when you need to register a webhook endpoint to receive events like order_created, subscription_created, etc. Specify the webhook URL, signing secret, and event types to subscribe to." }, { "slug": "LEMON_SQUEEZY_DELETE_DISCOUNT", "name": "Delete Discount", "description": "Tool to delete a discount by its ID. Use when you need to permanently remove a discount from a store." }, { "slug": "LEMON_SQUEEZY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook. Use when you need to remove a registered webhook endpoint." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_AFFILIATES", "name": "List All Affiliates", "description": "Tool to list all affiliates. Use when you need to retrieve affiliates with optional filters and pagination." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_CHECKOUTS", "name": "List All Checkouts", "description": "Tool to list all checkouts. Use when you need a paginated list of checkouts, optionally filtering by store or variant." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_CUSTOMERS", "name": "List All Customers", "description": "Retrieves a paginated list of all customers from your Lemon Squeezy store(s). Returns customer details including email, name, location, revenue metrics (MRR, total revenue), marketing status, and relationships to orders, subscriptions, and license keys. Use this action to: - Get all customers across stores or filter by specific store_id - Find a customer by email address - List customers with pagination support (default 10 per page, max 100) - Access customer portal URLs and relationship links All parameters are optional. Without filters, returns all customers ordered by creation date (newest first)." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_DISCOUNT_REDEMPTIONS", "name": "List All Discount Redemptions", "description": "Tool to list all discount redemptions. Use when you need a paginated list of discount redemptions, optionally filtering by discount or order." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_DISCOUNTS", "name": "List All Discounts", "description": "Tool to list all discounts. Use when you need a paginated list of discounts after confirming authentication." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_FILES", "name": "List All Files", "description": "Retrieves a paginated list of files from Lemon Squeezy. Use this to get digital goods that can be downloaded by customers after purchase. Each file belongs to a variant and includes download URLs (signed, expiring after 1 hour, rate-limited to 10 downloads/day/IP). Filter by variant ID or control pagination with page number and size." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_LICENSE_KEY_INSTANCES", "name": "List All License Key Instances", "description": "Tool to list all license key instances. Use when you need a paginated list of license key instances, optionally filtering by license key ID." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_LICENSE_KEYS", "name": "List All License Keys", "description": "Tool to list all license keys. Use when you need a paginated list of license keys, optionally filtering by store, order, order item, or product." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_ORDER_ITEMS", "name": "List All Order Items", "description": "Tool to list all order items. Use when you need a paginated list of order items, optionally filtered by order, product, or variant. Note: the `first_order_item` field on an order object returns only one item; use `filter_order_id` here to retrieve all line items for multi-item orders." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_ORDERS", "name": "List All Orders", "description": "Tool to list all orders. Use when you need a paginated list of orders, optionally filtering by store or user email. Monetary fields (e.g., `subtotal`, `tax`, `total`) are integers in the smallest currency unit (e.g., cents); use `*_formatted` variants for display only, not calculations." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_PRICES", "name": "List All Prices", "description": "Tool to list all prices. Use when you need a paginated list of all prices, optionally filtering by variant." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_PRODUCTS", "name": "List All Products", "description": "List all products from your Lemon Squeezy store with pagination and filtering. Returns a paginated list of products ordered by name. Each product includes pricing, status, thumbnails, checkout URLs, and metadata. Useful for browsing your product catalog, checking product details, or filtering by store." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_STORES", "name": "List All Stores", "description": "Retrieves a paginated list of all stores belonging to the authenticated Lemon Squeezy account. This action returns comprehensive store information including store details (name, slug, domain, URL), financial metrics (total sales/revenue, 30-day sales/revenue), configuration (plan, country, currency), and relationship links to associated resources (products, orders, subscriptions, discounts, license keys, webhooks, and affiliates). Returns stores ordered by name in ascending order with pagination metadata. No input parameters required. Use this as a starting point to discover available stores before working with other store-specific resources." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_SUBSCRIPTION_INVOICES", "name": "List All Subscription Invoices", "description": "Tool to list all subscription invoices. Use when you need a paginated list of subscription invoices with optional filters." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_SUBSCRIPTION_ITEMS", "name": "List All Subscription Items", "description": "Tool to list all subscription items. Use when you need a paginated list of items across subscriptions for reporting or auditing." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_SUBSCRIPTIONS", "name": "List All Subscriptions", "description": "Tool to list all subscriptions. Use when you need a paginated list of subscriptions, optionally filtered by store, order, product, or status." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_USAGE_RECORDS", "name": "List All Usage Records", "description": "Retrieves all usage records from Lemon Squeezy, with optional filtering and pagination. Usage records track consumption for usage-based billing on subscription items. Each record represents reported usage with a quantity and action type (increment or set). Records are returned in descending order by creation date (newest first). Use this when you need to: - View all usage records across subscription items - Filter usage records for a specific subscription item - Paginate through large sets of usage records Note: Returns an empty list if no usage records exist or the filter matches nothing." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_VARIANTS", "name": "List All Variants", "description": "Retrieves a paginated list of product variants from Lemon Squeezy. A variant represents a variation of a product with its own pricing options, files, and license key settings. You can filter by product ID and status (pending/draft/published), and control pagination with page number and size." }, { "slug": "LEMON_SQUEEZY_LIST_ALL_WEBHOOKS", "name": "List All Webhooks", "description": "Tool to list all webhooks. Use when you need to retrieve registered webhooks. Supports optional filtering by store ID and pagination parameters for controlling result size and navigation." }, { "slug": "LEMON_SQUEEZY_RETRIEVE_AUTHENTICATED_USER", "name": "Retrieve Authenticated User", "description": "Tool to retrieve the currently authenticated user from Lemon Squeezy. Use when you need to get details about the user associated with the current API key, including their name, email, avatar, and account timestamps." }, { "slug": "LEMON_SQUEEZY_RETRIEVE_CUSTOMER", "name": "Retrieve Customer", "description": "Tool to retrieve a specific customer by their ID. Use when you need detailed information about a single customer including their email, name, location, revenue metrics, and relationships to orders and subscriptions." }, { "slug": "LEMON_SQUEEZY_RETRIEVE_DISCOUNT", "name": "Retrieve Discount", "description": "Tool to retrieve a single discount by ID. Use when you need details about a specific discount." }, { "slug": "LEMON_SQUEEZY_RETRIEVE_STORE", "name": "Retrieve Store", "description": "Tool to retrieve a store by its ID. Use when you need to get detailed information about a specific store. Returns comprehensive store data including financial metrics, configuration, and related resource links." }, { "slug": "LEMON_SQUEEZY_RETRIEVE_WEBHOOK", "name": "Retrieve Webhook", "description": "Tool to retrieve a webhook by its ID. Use when you need to get details of a specific webhook configuration." }, { "slug": "LEMON_SQUEEZY_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer with the given ID. Use when you need to modify customer details like name, email, or address information. At least one attribute field must be provided to update." }, { "slug": "LEMON_SQUEEZY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook. Use when you need to modify the URL, events, or secret for a registered webhook." }, { "slug": "LEMON_SQUEEZY_VALIDATE_LICENSE", "name": "Validate License", "description": "Tool to validate a license key and optionally a specific license key instance. Use when you need to check if a license key is valid and active." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lemon_squeezy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Lemon Squeezy API Key", "type": "string", "description": "The API key generated from your Lemon Squeezy account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lessonspace", "name": "Lessonspace", "logo": "https://logos.composio.dev/api/lessonspace", "description": "Lessonspace is an online collaborative classroom platform that enables educators and students to engage in interactive learning sessions with features like video conferencing, whiteboards, and resource sharing.", "category": "education", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LESSONSPACE_CREATE_DEMO_SPACE", "name": "Create Demo Space", "description": "Tool to create a transient demo space for embedding in an iframe. Use when you need a temporary environment to test Lessonspace features." }, { "slug": "LESSONSPACE_GET_ORGANISATION_DETAILS", "name": "Get Organisation Details", "description": "Tool to retrieve organisation details, including ID, plan, and usage stats. Use after authenticating with your organisation token." }, { "slug": "LESSONSPACE_GET_ORGANISATION_SESSION_LIST", "name": "Get Organisation Session List", "description": "Tool to list sessions of an organisation. Use after you have the organisation ID to fetch paginated session records." }, { "slug": "LESSONSPACE_LAUNCH_SPACE", "name": "Launch Space", "description": "Tool to launch a Lessonspace space. Use after determining user ID, role, and space ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lessonspace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Lessonspace API Key", "type": "string", "description": "Your Lessonspace API Key, found in the developer settings of your Organisation's dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "leverly", "name": "Leverly", "logo": "https://logos.composio.dev/api/leverly", "description": "Leverly is a platform that integrates with various applications to automate workflows and processes.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LEVERLY_CREATE_CALL", "name": "Create Call", "description": "Tool to create a new call/lead in Leverly system. Sends lead information to trigger an instant phone call to your sales team. Use when integrating external systems (CRM, forms, lead providers) with Leverly." }, { "slug": "LEVERLY_LIST_REATTEMPTS", "name": "List Reattempts", "description": "Tool to list all reattempts in Leverly. Use when you need to inspect the history of ingestion reattempts before taking further action." }, { "slug": "LEVERLY_STOP_REATTEMPTS", "name": "Stop Leverly Reattempts", "description": "Tool to stop ongoing reattempts for a lead in Leverly. Use when you need to halt retries for a given reattempt ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "leverly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Leverly API Key", "type": "string", "description": "The API key provided by Leverly for authenticating API requests. Find it in the Leverly dashboard under 'Integrations'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lightfield", "name": "Lightfield", "logo": "https://logos.composio.dev/api/lightfield", "description": "Lightfield is a modern CRM platform for managing accounts, contacts, opportunities, and sales workflows.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lightfield_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Lightfield API key. Create one from the Lightfield dashboard at https://crm.lightfield.app/crm/settings/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lightpanda", "name": "Lightpanda", "logo": "https://logos.composio.dev/api/lightpanda", "description": "Headless Chrome API with an innovative tailor-made browser for unmatched performance and efficiency in browser automation.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lightpanda_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Access Token is sent to your email when you sign up to Lightpanda.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lightspeed_vt", "name": "Lightspeed Vt", "logo": "https://logos.composio.dev/api/lightspeed_vt", "description": "LightSpeed VT is an interactive video-based training platform with APIs for user management, course catalogs, progress tracking, and performance reporting.", "category": "education", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "lightspeed_vt_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your LightSpeed VT API Key. Found in Super User Dashboard > Integration Management > API Settings.", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your LightSpeed VT API Secret. Found in Super User Dashboard > Integration Management > API Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linguapop", "name": "Linguapop", "logo": "https://logos.composio.dev/api/linguapop", "description": "Linguapop is a web-based platform designed for schools and organizations to administer language placement tests in English, German, Spanish, Italian, and French.", "category": "education", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINGUAPOP_FETCH_AVAILABLE_LANGUAGES", "name": "Fetch Available Languages", "description": "Tool to retrieve the list of available languages. Use when you need to verify supported languages before starting a placement test." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "linguapop_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Linguapop API Key", "type": "string", "description": "The API Key of the Integration you're using.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linkedin_ads", "name": "Linkedin Ads", "logo": "https://logos.composio.dev/api/linkedin_ads", "description": "LinkedIn Marketing and Advertising API for managing ad campaigns, analytics, and organization social content", "category": "marketing", "authSchemes": [ "OAUTH2" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINKEDIN_ADS_CREATE_AD_ACCOUNT", "name": "Create Ad Account", "description": "Tool to create a new LinkedIn ad account for campaign management. Use when setting up advertising infrastructure for an organization or person. The account type must be BUSINESS (ENTERPRISE is reserved for LinkedIn internal use). The Ad Account ID is returned in the response on success." }, { "slug": "LINKEDIN_ADS_CREATE_LEAD_FORM", "name": "Create Lead Form", "description": "Tool to create a new LinkedIn lead generation form for ads. Use when you need to create forms to collect leads from LinkedIn ads campaigns." }, { "slug": "LINKEDIN_ADS_GET_AD_ACCOUNT", "name": "Get Ad Account", "description": "Tool to retrieve a specific LinkedIn Ad Account by ID. Returns detailed account information including name, status, currency, notification settings, and serving statuses. Use when you need to fetch details about a specific ad account." }, { "slug": "LINKEDIN_ADS_GET_AD_ANALYTICS", "name": "Get Ad Analytics", "description": "Tool to retrieve LinkedIn ad analytics and reporting metrics for campaigns, creatives, and accounts. Use when you need performance data such as impressions, clicks, costs, conversions, and engagement metrics. Supports filtering by accounts, campaigns, or campaign groups with customizable date ranges and pivot dimensions." }, { "slug": "LINKEDIN_ADS_GET_AUDIENCE_COUNTS", "name": "Get Audience Counts", "description": "Get estimated audience size for given targeting criteria on LinkedIn Ads. Use when you need to forecast how many LinkedIn members match your campaign targeting parameters before creating ads. Minimum audience size of 300 required to run campaigns." }, { "slug": "LINKEDIN_ADS_GET_CAMPAIGN_GROUP", "name": "Get Campaign Group", "description": "Tool to retrieve a specific LinkedIn Ads campaign group by ID. Use when you need detailed information about a campaign group including its budget, schedule, status, and serving conditions." }, { "slug": "LINKEDIN_ADS_GET_LEAD_FORM", "name": "Get lead form by ID", "description": "Tool to retrieve a specific LinkedIn lead form by its ID. Use when you need to fetch details about a lead form including its questions, legal info, and configuration." }, { "slug": "LINKEDIN_ADS_GET_NETWORK_SIZE", "name": "Get organization follower count", "description": "Tool to retrieve follower count for a LinkedIn organization. Use when you need to get the number of followers for a company or organization page." }, { "slug": "LINKEDIN_ADS_GET_ORGANIZATION_ACLS", "name": "Get organization access control list", "description": "Tool to retrieve organization access control list showing who has admin or poster rights for organizations. Use when you need to check which members have specific roles (like ADMINISTRATOR or DIRECT_SPONSORED_CONTENT_POSTER) for an organization, or to find all organizations where the authenticated user has access control roles." }, { "slug": "LINKEDIN_ADS_GET_ORGANIZATION_PAGE_STATISTICS", "name": "Get organization page statistics", "description": "Tool to retrieve page view and click statistics for a LinkedIn organization page. Use when you need to analyze organization page engagement metrics, either for lifetime or specific time periods." }, { "slug": "LINKEDIN_ADS_GET_ORG_FOLLOWER_STATISTICS", "name": "Get organization follower statistics", "description": "Tool to retrieve follower growth statistics for a LinkedIn organization. Use when you need follower demographics (industry, seniority, location, function) or time-bound follower gains. Omit timeIntervals for lifetime demographic statistics; include timeIntervals for time-series follower growth data." }, { "slug": "LINKEDIN_ADS_GET_ORG_SHARE_STATISTICS", "name": "Get organization share statistics", "description": "Tool to retrieve share and engagement statistics for an organization's content on LinkedIn. Use when you need organic metrics like impressions, clicks, likes, comments, and shares for an organization's posts. Returns lifetime statistics by default or time-bound statistics when a time range is specified." }, { "slug": "LINKEDIN_ADS_GET_SUPPLY_FORECASTS", "name": "Get Ad Supply Forecasts", "description": "Retrieve supply forecasts for LinkedIn ad inventory based on targeting criteria, budget, and bid settings. Provides forecasts for impressions, clicks, spending, reach, and other metrics with different time granularities (daily, 7-day, 30-day, custom). Use when planning ad campaigns to estimate performance and budget requirements." }, { "slug": "LINKEDIN_ADS_GET_TARGETING_ENTITIES", "name": "Get Targeting Entities", "description": "Tool to retrieve targeting entities for LinkedIn Ads campaigns. Use when you need to discover available targeting options (industries, locations, job titles, companies, skills, etc.) for ad targeting. Supports multiple query modes: retrieve all entities for a facet, search by text, find similar entities, or get metadata for specific URNs. Returns entity URNs and names that can be used for campaign targeting criteria." }, { "slug": "LINKEDIN_ADS_GET_TARGETING_FACETS", "name": "Get Targeting Facets", "description": "Tool to retrieve available ad targeting facets including industries, locations, seniorities, job functions, skills, and more. Use when you need to discover which targeting categories are available for LinkedIn ad campaigns before fetching specific targeting entities." }, { "slug": "LINKEDIN_ADS_LIST_CONVERSION_RULES", "name": "List Conversion Rules", "description": "Tool to list all conversion rules for a LinkedIn ad account. Use when you need to retrieve conversion tracking rules configured for an ad account." }, { "slug": "LINKEDIN_ADS_LIST_DMP_SEGMENTS", "name": "List DMP Segments", "description": "Tool to list DMP (Data Management Platform) segments for LinkedIn ad accounts. Use to retrieve segments by account, fetch multiple segments by IDs, or search segments with pagination. DMP segments contain audience data for ad targeting." }, { "slug": "LINKEDIN_ADS_LIST_LEAD_FORMS", "name": "List Lead Forms", "description": "Tool to list LinkedIn lead forms for an organization or by specific IDs. Use when you need to retrieve lead forms owned by an organization or sponsored account, or fetch specific forms by their IDs." }, { "slug": "LINKEDIN_ADS_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to search and list LinkedIn organizations by IDs, vanity name, or parent organization. Use when you need to retrieve organization information, company pages, or school profiles from LinkedIn. Supports batch lookup by IDs or search by vanity name (e.g., 'linkedin') or parent organization URN." }, { "slug": "LINKEDIN_ADS_LIST_POSTS", "name": "List LinkedIn posts", "description": "Tool to list LinkedIn posts by author or retrieve multiple posts by IDs. Use when you need to fetch posts for a specific person/organization or retrieve specific posts by their URNs." }, { "slug": "LINKEDIN_ADS_LOOKUP_ORGANIZATIONS", "name": "Lookup organizations", "description": "Tool to batch lookup organization details by IDs without requiring admin access. Use when you need to retrieve basic information about LinkedIn organizations like name, logo, locations, and website." }, { "slug": "LINKEDIN_ADS_REGISTER_UPLOAD", "name": "Register Upload", "description": "Tool to register an upload for media assets (images, videos) on LinkedIn. Use when you need to prepare for uploading media content to LinkedIn before creating posts or ads." }, { "slug": "LINKEDIN_ADS_SEARCH_AD_ACCOUNTS", "name": "Search Ad Accounts", "description": "Tool to search for LinkedIn ad accounts with filtering by status, type, and test mode. Use when you need to find ad accounts based on specific criteria like status, type, or whether they are test accounts. Supports pagination for large result sets." }, { "slug": "LINKEDIN_ADS_SEARCH_CAMPAIGNS", "name": "Search Campaigns", "description": "Tool to search and list campaigns in a LinkedIn Ads account with filtering options. Use when you need to retrieve campaigns with specific criteria such as status, type, or test flag." }, { "slug": "LINKEDIN_ADS_SEARCH_CREATIVES", "name": "Search LinkedIn Ads Creatives", "description": "Tool to search and list LinkedIn Ads creatives with filtering options. Use when you need to retrieve creatives from a LinkedIn Ads account with optional filters by campaign, status, content reference, or lead gen form. Supports cursor-based pagination for large result sets. Returns comprehensive creative details including status, review information, serving hold reasons, and metadata." }, { "slug": "LINKEDIN_ADS_SEARCH_EVENTS", "name": "Search Events", "description": "Tool to search and list LinkedIn events by organizer with filtering options. Use when you need to find events organized by a specific organization or person, with optional filters for lifecycle state, entry criteria, and pagination." }, { "slug": "LINKEDIN_ADS_UPDATE_LEAD_FORM", "name": "Update lead form", "description": "Tool to update an existing LinkedIn lead form. Use when you need to modify form details like name, headline, description, or state. Note: For published forms (linked to active campaigns), only specific fields can be updated. Pre-published forms allow updating all fields." }, { "slug": "LINKEDIN_ADS_UPDATE_ORGANIZATION_ACL", "name": "Update organization access control", "description": "Tool to update organization access control for a user on LinkedIn. Use when requesting the DIRECT_SPONSORED_CONTENT_POSTER role for an organization. The PUT API works only when the user is requesting the role for themselves, not on behalf of others." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "linkedin_ads_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email,r_ads,rw_ads,r_ads_reporting,r_organization_social,w_organization_social,r_organization_admin,rw_organization_admin" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "linkly", "name": "Linkly", "logo": "https://logos.composio.dev/api/linkly", "description": "Easily create tracking links, add retargeting tags, do smart redirects and more.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LINKLY_CREATE_OR_UPDATE_LINK", "name": "Create or Update Link", "description": "Tool to create a new shortened link or update an existing one in Linkly. Use when you need to generate a trackable short URL with custom parameters, UTM tracking, retargeting pixels, or Open Graph metadata. To create a new link, provide url and workspace_id. To update an existing link, provide id and the fields you want to change." }, { "slug": "LINKLY_DELETE_LINK", "name": "Delete Link", "description": "Tool to delete a specific link by ID from a workspace. Use when you need to permanently remove a link. This action is permanent and cannot be undone." }, { "slug": "LINKLY_DELETE_LINKS", "name": "Delete Links", "description": "Tool to delete one or more links by their IDs. This action is permanent and cannot be undone. Use when you need to remove links from a workspace." }, { "slug": "LINKLY_EXPORT_LINKS", "name": "Export Links", "description": "Tool to export all links in a workspace as JSON or CSV. Use when you need to retrieve all links for backup, analysis, or migration purposes." }, { "slug": "LINKLY_GET_CLICK_COUNTERS", "name": "Get Click Counters by Dimension", "description": "Tool to retrieve click analytics grouped by a specific dimension (counter). Returns aggregated counts for each unique value of the selected dimension. Use when you need to analyze click patterns by country, platform, browser, referrer, ISP, link, or URL parameters." }, { "slug": "LINKLY_GET_CLICKS", "name": "Get Click Analytics", "description": "Tool to retrieve click analytics for a workspace. Filter by link, date range, country, and more. Returns time-series data suitable for charting." }, { "slug": "LINKLY_GET_LINK", "name": "Get Link Details", "description": "Tool to retrieve detailed information about a specific link by its ID. Use when you need to fetch link configuration, UTM parameters, or click statistics." }, { "slug": "LINKLY_GET_LINK_BY_ID", "name": "Get Link By ID", "description": "Tool to retrieve details for a specific link by ID. Use when you need to fetch information about a shortened link, including its destination URL, click statistics, and configuration settings." }, { "slug": "LINKLY_LIST_DOMAINS", "name": "List Domains", "description": "Tool to retrieve all custom domains configured for a workspace. Use when you need to see available domains for creating short links." }, { "slug": "LINKLY_LIST_LINKS", "name": "List Links", "description": "Tool to get a paginated list of all links in a workspace. Supports search, sorting, and pagination. Returns link details including click statistics. Use when you need to retrieve or search through links." }, { "slug": "LINKLY_LIST_LINK_WEBHOOKS", "name": "List Link Webhooks", "description": "Tool to retrieve all webhook subscriptions for a specific link. Use when you need to see what webhooks are configured for a link." }, { "slug": "LINKLY_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to retrieve all workspaces the authenticated user has access to. Use this to discover available workspace IDs for other API calls." }, { "slug": "LINKLY_LIST_WORKSPACE_WEBHOOKS", "name": "List workspace webhooks", "description": "Tool to list all webhook subscriptions for a specific workspace. Use when you need to retrieve or view the configured webhooks for a workspace." }, { "slug": "LINKLY_SUBSCRIBE_WEBHOOK_TO_LINK", "name": "Subscribe webhook to link", "description": "Tool to subscribe a webhook URL to receive notifications when a specific link is clicked. Use when you need to track click events for a shortened link." }, { "slug": "LINKLY_SUBSCRIBE_WEBHOOK_TO_WORKSPACE", "name": "Subscribe Webhook to Workspace", "description": "Tool to subscribe a webhook URL to receive click notifications from a Linkly workspace. Use when you need to set up real-time notifications for link clicks. The webhook will receive POST requests containing click data including country, platform, browser, and other analytics information whenever any link in the workspace is clicked." }, { "slug": "LINKLY_UNSUBSCRIBE_WEBHOOK_FROM_LINK", "name": "Unsubscribe Webhook from Link", "description": "Tool to remove a webhook subscription from a link. Use when you need to stop receiving webhook events for a specific link." }, { "slug": "LINKLY_UNSUBSCRIBE_WEBHOOK_FROM_WORKSPACE", "name": "Unsubscribe Webhook From Workspace", "description": "Tool to remove a webhook subscription from a workspace. Use when you need to unsubscribe a webhook URL from receiving events for a specific workspace." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "linkly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from Settings > API Keys at https://app.linklyhq.com/app/user/api", "required": true, "default": null }, { "name": "generic_id", "displayName": "Workspace ID", "type": "string", "description": "Get your Workspace ID from Settings > API Keys at https://app.linklyhq.com/app/user/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "linqs_cc", "name": "Linqs.cc", "logo": "https://logos.composio.dev/api/linqs_cc", "description": "Linqs.cc is one of the best option for small businesses, start ups, personal projects and influencers who want to get the most out of their bio link.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "linqs_cc_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your linqs.cc account, sign in, go to the navigation menu (top-right), and select API to retrieve your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "listclean", "name": "Listclean", "logo": "https://logos.composio.dev/api/listclean", "description": "Listclean is an email verification service that helps users validate and clean their email lists to improve deliverability and maintain sender reputation.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LISTCLEAN_CREATE_BULK_VERIFICATION_LIST", "name": "Create Bulk Verification List", "description": "Tool to create a CSV file with provided email addresses for bulk verification. Use when you need to generate a file for bulk upload through LISTCLEAN_UPLOAD_LIST." }, { "slug": "LISTCLEAN_DELETE_LIST", "name": "Delete List", "description": "Tool to permanently delete a single list from the account. Use when you need to remove a list that is no longer needed." }, { "slug": "LISTCLEAN_DOWNLOAD_CSV", "name": "Download List Results as CSV", "description": "Tool to download list results as a CSV file. Use when you need to retrieve verification results filtered by email type (clean, dirty, or unknown)." }, { "slug": "LISTCLEAN_DOWNLOAD_JSON", "name": "Download List Results as JSON", "description": "Tool to download list results as JSON. Downloads emails filtered by type (clean, dirty, or unknown) in JSON format. Use after list verification is complete to retrieve filtered results." }, { "slug": "LISTCLEAN_GET_ACCOUNT_PROFILE", "name": "Get Account Profile", "description": "Tool to retrieve the authenticated account's profile. Use after obtaining a valid auth token to fetch user account data." }, { "slug": "LISTCLEAN_GET_CREDITS", "name": "Get Remaining Credits", "description": "Tool to retrieve remaining verification credits. Use when you need to check your available account credits before performing more email verifications." }, { "slug": "LISTCLEAN_GET_LIST", "name": "Get List Information", "description": "Tool to retrieve detailed information for a specific list. Returns analytics with clean/dirty breakdown, cost details, and processing status." }, { "slug": "LISTCLEAN_GET_UPLOAD_STATUS", "name": "Get Upload Status", "description": "Tool to retrieve the status of a specific upload. Returns upload status (inprocess, success, error), progress percentage, and chunk details. Use after initiating an upload to track its completion." }, { "slug": "LISTCLEAN_GET_VERIFICATION_LOGS", "name": "Get Verification Logs", "description": "Tool to retrieve logs for all single email verifications. Returns history of email verifications with status, remarks, credits deducted, and timestamps." }, { "slug": "LISTCLEAN_LIST_ALL", "name": "List All Verification Lists", "description": "Tool to retrieve all email verification lists. Returns all processed lists with complete analytics including clean/dirty counts, summary statistics, and cost information." }, { "slug": "LISTCLEAN_LIST_UPLOADS", "name": "List CSV Uploads", "description": "Tool to retrieve the list of CSV uploads. Use when you need to check upload IDs, status, and progress for all CSV file uploads in your account." }, { "slug": "LISTCLEAN_START_UPLOAD", "name": "Start Upload", "description": "Tool to start a CSV upload process for bulk email verification. Initializes chunked file upload and returns an upload_id for subsequent chunk uploads. Use when you need to upload large CSV files containing email addresses." }, { "slug": "LISTCLEAN_UPDATE_PROFILE", "name": "Update Account Profile", "description": "Tool to update account profile details. Use when you need to modify user profile information such as name, address, contact details, company information, or billing details." }, { "slug": "LISTCLEAN_UPLOAD_CHUNK", "name": "Upload Chunk", "description": "Tool to upload a chunk of a CSV file. Use when sending base64-encoded content with sequence number as part of chunked upload process, optionally with MD5 checksum for integrity verification." }, { "slug": "LISTCLEAN_VERIFY_BATCH", "name": "Verify Batch of Emails", "description": "Tool to verify a batch of email addresses (max 3000 emails). Use when you need to verify multiple emails at once and get a list_id for tracking the batch verification request." }, { "slug": "LISTCLEAN_VERIFY_EMAIL", "name": "Verify Email Address", "description": "Tool to verify an email's validity. Use when you need to ensure an address is deliverable and non-disposable, after collecting a user's email." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "listclean_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Listclean API Key", "type": "string", "description": "Your Listclean API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "liveagent", "name": "Liveagent", "logo": "https://logos.composio.dev/api/liveagent", "description": "LiveAgent is a web-based live chat and helpdesk software that covers all support channels including email, live chat, call center, contact forms, feedback forms, knowledge base, and social networks.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "liveagent_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your LiveAgent domain. If your LiveAgent URL is https://12345678.ladesk.com/, enter 12345678", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your LiveAgent API key. Navigate to Configuration > System > API in your LiveAgent account to generate an API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "livekit", "name": "LiveKit", "logo": "https://logos.composio.dev/api/livekit", "description": "Build realtime AI. Instantly transport audio + video between LLMs and your users.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "livekit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Project URL", "type": "string", "description": "Your LiveKit server URL (e.g., your-project.livekit.cloud or https://your-project.livekit.cloud). Find this in Settings > Project in your LiveKit dashboard.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your LiveKit API Key. Find this in Settings > Keys in your LiveKit dashboard.", "required": true, "default": null }, { "name": "generic_token", "displayName": "API Secret", "type": "string", "description": "Your LiveKit API Secret. Find this in Settings > Keys in your LiveKit dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "livesession", "name": "Livesession", "logo": "https://logos.composio.dev/api/livesession", "description": "LiveSession is a session replay and user behavior analytics tool that helps you understand how users interact with your website.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LIVESESSION_LIST_SESSIONS", "name": "List Live Sessions", "description": "Tool to list live sessions. Use when you need paginated session data filtered by criteria after authentication." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "livesession_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "LiveSession Personal Access Token", "type": "string", "description": "The Personal Access Token (PAT) used for authenticating API requests to LiveSession.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "llamaindex", "name": "LlamaIndex", "logo": "https://logos.composio.dev/api/llamaindex", "description": "LlamaIndex is a data framework for LLM applications, providing tools for document parsing, data extraction, indexing, and retrieval for building RAG applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LLAMAINDEX_GET_SUPPORTED_FILE_EXTENSIONS", "name": "Get Supported File Extensions", "description": "Tool to retrieve the list of file extensions supported by the LlamaIndex parsing service. Use when you need to validate file types before upload or to display available format options." }, { "slug": "LLAMAINDEX_UPDATE_FILES_SYNC", "name": "Update Files Sync", "description": "Tool to sync files that have been uploaded via S3 presigned URLs. This is the final step (step 3) of the file upload workflow: 1) Generate presigned URL, 2) Upload to S3, 3) Sync with LlamaCloud. Use when files have been uploaded to S3 and need to be registered in LlamaCloud." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "llamaindex_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for your LlamaIndex instance. For LlamaIndex Cloud, use https://api.cloud.llamaindex.ai. For self-hosted instances, enter your custom URL.", "required": true, "default": "https://api.cloud.llamaindex.ai" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your LlamaIndex API key. Sign in to LlamaIndex dashboard and go to RESOURCES > API Key. For LlamaIndex Cloud, visit https://cloud.llamaindex.ai/api-key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "llmwhisperer", "name": "LLMWhisperer", "logo": "https://logos.composio.dev/api/llmwhisperer", "description": "LLMWhisperer is a technology that presents data from complex documents to LLMs in a way that they can best understand.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LLMWHISPERER_CONVERT_DOCUMENT_TO_TEXT_V2", "name": "Convert Document to Text (v2)", "description": "Tool to convert PDF/scanned documents to text format for LLM consumption. Supports file upload or URL processing with multiple modes (native_text, low_cost, high_quality, form, table). Use when you need to extract text from documents for LLM processing. Returns whisper_hash for status checking and text retrieval." }, { "slug": "LLMWHISPERER_GET_HIGHLIGHTS", "name": "Get Highlights Metadata", "description": "Tool to get line metadata for highlighting extracted text in the original document. Returns bounding box coordinates (x, y, width, height) and page number for each line. Use when you need to create text overlays on document images or highlight specific lines in the source document." }, { "slug": "LLMWHISPERER_REGISTER_WEBHOOK", "name": "Register Webhook", "description": "Tool to register a new webhook endpoint for LLMWhisperer async notifications. Use when you need to set up a callback URL to receive processing results. The webhook URL is validated during registration to ensure it's reachable." }, { "slug": "LLMWHISPERER_USAGE_GET_INFO", "name": "Get Usage Information", "description": "Tool to check usage metrics of your LLMWhisperer account. Use when you need to monitor API consumption, verify quotas, or check remaining page limits." }, { "slug": "LLMWHISPERER_USAGE_GET_STATS", "name": "Get Usage Statistics", "description": "Tool to retrieve usage statistics for your LLMWhisperer account based on a specific tag. Use when you need to check consumption metrics for a given tag and optional date range. Returns usage data for the preceding 30 days when date parameters are omitted." }, { "slug": "LLMWHISPERER_WEBHOOK_DELETE", "name": "Delete Webhook", "description": "Tool to delete a registered webhook from LLMWhisperer system. Use when you need to remove a webhook that is no longer needed." }, { "slug": "LLMWHISPERER_WEBHOOK_GET_DETAILS", "name": "Get Webhook Details", "description": "Tool to retrieve registered webhook details for LLMWhisperer. Use when you need to get the configuration of a specific webhook including its URL and authentication token." }, { "slug": "LLMWHISPERER_WEBHOOK_UPDATE", "name": "Update Webhook Configuration", "description": "Tool to update an existing webhook configuration for document conversion callbacks. Use when you need to modify the callback URL, authentication token, or webhook identifier. The system validates the webhook by sending a test payload and requires a 200 status response." }, { "slug": "LLMWHISPERER_WHISPER_CHECK_STATUS", "name": "Check Whisper Status", "description": "Tool to check the status of a text extraction process in LLMWhisperer. Use when the conversion is done in async mode to poll for completion status." }, { "slug": "LLMWHISPERER_WHISPER_GET_DETAIL", "name": "Get Whisper Detail", "description": "Tool to retrieve comprehensive details about ongoing or completed text extraction process. Use when you need to monitor the status and progress metrics of a text extraction job." }, { "slug": "LLMWHISPERER_WHISPER_RETRIEVE_TEXT", "name": "Retrieve Whisper Text", "description": "Tool to retrieve extracted text from asynchronous whisper processing. Use when the conversion process was initiated in async mode and you need to retrieve the results using the whisper_hash identifier. Note that retrieval is single-use for security - once retrieved, the same whisper_hash cannot be used again." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "llmwhisperer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your API region (US Central or EU West)", "required": true, "default": "us-central" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your Profile page at https://llmwhisperer.unstract.com/profile", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lob", "name": "Lob", "logo": "https://logos.composio.dev/api/lob", "description": "Direct Mail Automation and Address Verification APIs", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOB_CREATE_DOMAIN", "name": "Create Domain", "description": "Tool to add a new custom domain for creating custom links. Use when you need to register a domain for short link customization." }, { "slug": "LOB_CREATE_LINK", "name": "Create Link", "description": "Tool to create a shortened URL from a long URL using Lob's link shortening service. Use when you need to shorten a long URL either by using a custom domain or Lob's own short domain." }, { "slug": "LOB_DELETE_DOMAIN", "name": "Delete Domain", "description": "Tool to delete a registered domain. Use only after confirming all associated links with the domain are deleted." }, { "slug": "LOB_DELETE_LINK", "name": "Delete Link", "description": "Tool to delete a shortened link. Use when you need to remove a previously created short link from the system." }, { "slug": "LOB_DELETE_UPLOAD", "name": "Delete Upload", "description": "Tool to delete an existing upload by its unique identifier. Use when you need to permanently remove an upload and its associated data." }, { "slug": "LOB_GET_DOMAIN", "name": "Get Domain", "description": "Tool to retrieve details for a single domain from Lob. Use when you need to get configuration status, redirect links, or other metadata for a specific domain." }, { "slug": "LOB_GET_LINK", "name": "Get Link", "description": "Tool to retrieve a single shortened link. Use when you need to fetch details about a specific link by its ID." }, { "slug": "LOB_LIST_DOMAINS", "name": "List Domains", "description": "Tool to retrieve a list of all created domains. Use when you need to view or manage custom domains configured for URL shortening. Supports pagination and filtering by configuration status." }, { "slug": "LOB_LIST_LINKS", "name": "List Shortened Links", "description": "Tool to retrieve a list of shortened links. The list is sorted by creation date, with the most recently created appearing first. Use when you need to view all links or filter by campaign or domain." }, { "slug": "LOB_LIST_QR_CODE_ANALYTICS", "name": "List QR Code Analytics", "description": "Tool to retrieve a list of your QR codes and their analytics data. The QR codes are returned sorted by scan date, with the most recently scanned QR codes appearing first." }, { "slug": "LOB_LIST_UPLOADS", "name": "List Uploads", "description": "Tool to list uploads from Lob. Use when you need to retrieve all uploads or filter uploads by campaign ID." }, { "slug": "LOB_UPDATE_LINK", "name": "Update Link", "description": "Tool to update any properties of a shortened link. Use when you need to modify the redirect URL, title, or metadata of an existing Lob shortened link. Requires the link_id and at least the redirect_link to update." }, { "slug": "LOB_VALIDATE_IDENTITY", "name": "Validate Identity", "description": "Tool to validate whether a given name is associated with an address. Use when you need to verify identity information by checking if a recipient name matches address records." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lob_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Lob secret API key. Find this in your account settings at https://dashboard.lob.com/settings/api-keys. Use test_ prefix for testing or live_ prefix for production.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "lodgify", "name": "Lodgify", "logo": "https://logos.composio.dev/api/lodgify", "description": "Lodgify is an all-in-one vacation rental software that enables property owners and managers to create bookable websites, synchronize property data across multiple channels, and manage guest reservations and communications from a single platform.", "category": "scheduling & booking", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LODGIFY_CREATE_CALLMEBACK_REQUEST", "name": "Create Call Me Back Request", "description": "Tool to create a Call Me Back request in Lodgify. Use when scheduling a callback appointment with a guest for property inquiries or booking assistance." }, { "slug": "LODGIFY_CREATE_ENQUIRY", "name": "Create Enquiry", "description": "Tool to create a new general enquiry with guest and reservation details. Use when a potential guest wants to make an enquiry about a property or availability." }, { "slug": "LODGIFY_DECLINE_ENQUIRY", "name": "Decline Enquiry", "description": "Tool to decline an enquiry, changing its status to Declined. Use when you need to reject or decline an enquiry from a potential guest." }, { "slug": "LODGIFY_DELETE_ENQUIRY", "name": "Delete Enquiry", "description": "Tool to delete an enquiry by moving it to the trash. Use when you need to remove an enquiry from active listings without permanently deleting it." }, { "slug": "LODGIFY_DELETE_RESERVATIONS", "name": "Delete Reservations", "description": "Tool to delete multiple bookings or enquiries in a single batch operation. Use when you need to remove several reservations at once instead of deleting them individually." }, { "slug": "LODGIFY_GET_COUNTRIES", "name": "Get Countries", "description": "Tool to retrieve all available countries. Use when you need to populate country selectors with supported ISO codes and names." }, { "slug": "LODGIFY_GET_COUNTRY_BY_CODE", "name": "Get Country by Code", "description": "Tool to retrieve a specific country by its ISO code. Use when you need to validate a country code or get the full country name for a given code." }, { "slug": "LODGIFY_GET_CURRENCY_BY_CODE", "name": "Get Currency By Code", "description": "Tool to retrieve currency details by its code. Use when you need to get information about a specific currency including its exchange rate, decimal places, and symbol." }, { "slug": "LODGIFY_GET_DELETED_PROPERTIES", "name": "Get Deleted Properties", "description": "Retrieves IDs of properties that have been deleted from the Lodgify account. Use this action to: - Get a list of all deleted property IDs - Filter deleted properties by deletion date using the deletedSince parameter - Sync local property databases by identifying which properties no longer exist Returns an array of integer property IDs. Use deletedSince to only retrieve properties deleted after a specific datetime." }, { "slug": "LODGIFY_GET_EXTERNAL_BOOKINGS", "name": "Get External Bookings", "description": "Tool to retrieve external bookings for a specific booking ID. Use when you need to get external booking details associated with a main booking record." }, { "slug": "LODGIFY_GET_MESSAGING_THREAD", "name": "Get Messaging Thread", "description": "Tool to retrieve details of a messaging thread. Use when you need to access thread information including messages, guest details, and thread status. The threadGuid parameter can be obtained from: - Reservation responses (thread_uid field) - Webhook events (guest_message_received) - Other Lodgify API endpoints that return thread identifiers" }, { "slug": "LODGIFY_GET_PROPERTY_AVAILABILITY", "name": "Get Property Availability", "description": "Retrieves availability information for a specific property within a date range. This action queries the Lodgify API to get detailed availability data including: - Property ID, room type ID, and user ID - Availability periods with start and end dates - Number of units available during each period - Booking information and channel calendars - Closed period details if applicable The propertyId is required. Date range defaults to today through 30 days if not specified. Returns empty details array if no availability data exists for the property." }, { "slug": "LODGIFY_GET_ROOMTYPE_AVAILABILITY", "name": "Get Room Type Availability", "description": "Retrieves availability calendar data for a specific room type within a property for a given date range. This action queries the Lodgify API to get detailed availability information for a specific room type, including availability periods, booking status, and rates. Use when you need to check availability for a specific room type within a property, rather than for the entire property." }, { "slug": "LODGIFY_GET_UNREAD_COUNT", "name": "Get Unread Count", "description": "Retrieves the total count of unread bookings and enquiries. Use this to check how many new reservations or enquiries require attention." }, { "slug": "LODGIFY_GET_V1_AVAILABILITY", "name": "Get V1 Availability", "description": "Retrieves availability information for all properties and room types for a given date range. Use when you need to check availability across all properties in the account. Returns empty array if no availability data exists for the specified period." }, { "slug": "LODGIFY_LIST_CHANNEL_CONNECTIONS", "name": "List Channel Connections", "description": "Tool to retrieve a list of all channel connections. Use when you need to display or synchronize channel connections across properties." }, { "slug": "LODGIFY_LIST_CHANNEL_MAPPINGS", "name": "List Channel Mappings", "description": "Tool to list channel mappings. Use when you need to retrieve all channel mappings, optionally filtered by property, channel code, or external ID. Supports pagination." }, { "slug": "LODGIFY_LIST_CHANNEL_RESERVATIONS", "name": "List Channel Reservations", "description": "Tool to list channel reservations. Use when you need to retrieve reservations across channels filtered by property, channel, or date range. Results are paginated; use `limit` and `offset` together across multiple requests to retrieve all reservations, as a single request may not return the full result set." }, { "slug": "LODGIFY_LIST_CHANNELS", "name": "List Channels", "description": "Retrieves a list of all available distribution channels in the Lodgify account. Channels are booking platforms (e.g., Airbnb, Booking.com, Vrbo, Expedia) that can be connected to properties for synchronized availability and reservations. Use this action to: - Get a list of all available channels that can be connected - View channel details including ID, name, description, and active status - Check which channels are currently active in the account Returns an empty list if no channels are available or configured." }, { "slug": "LODGIFY_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to retrieve all available currency codes. Use when you need to display currency options or validate currency codes for pricing and reservations." }, { "slug": "LODGIFY_LIST_PROPERTIES", "name": "List Properties", "description": "Retrieves all properties from the Lodgify account with optional pagination. Use this action to: - Get a list of all properties in the account - Iterate through properties using pagination - Check which properties exist before performing operations on specific properties Returns property IDs, names, and address details including coordinates. Paginate through all pages until results are exhausted — stopping early silently omits remaining properties. No server-side filtering by region or location; filter client-side using returned name or address fields." }, { "slug": "LODGIFY_LIST_RESERVATIONS", "name": "List Reservations", "description": "Tool to retrieve a paginated list of bookings and enquiries from the inbox. Use when you need to fetch reservations with optional filtering by status, property, date range, or trash status." }, { "slug": "LODGIFY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Retrieves a list of all webhooks configured in the Lodgify account. Use this action to: - Get all webhook configurations - View webhook details including ID, event type, and target URL - Check which webhooks are currently set up for receiving notifications Returns an empty list if no webhooks are configured." }, { "slug": "LODGIFY_MARK_RESERVATIONS_NOT_REPLIED", "name": "Mark Reservations Not Replied", "description": "Tool to batch mark bookings and enquiries as not replied. Use when you need to mark multiple reservations (bookings or enquiries) as not replied in a single operation." }, { "slug": "LODGIFY_MARK_RESERVATIONS_REPLIED", "name": "Mark Reservations Replied", "description": "Tool to batch mark bookings or enquiries as replied. Use when you need to mark multiple reservations as replied in a single operation." }, { "slug": "LODGIFY_RECOVER_ENQUIRY", "name": "Recover Enquiry", "description": "Tool to restore an enquiry that was previously moved to the trash. Use when you need to recover a deleted enquiry by its ID." }, { "slug": "LODGIFY_REOPEN_ENQUIRY", "name": "Reopen Enquiry", "description": "Tool to reopen an enquiry, changing its status to Open. Use when you need to reactivate a previously closed or cancelled enquiry." }, { "slug": "LODGIFY_SET_AVAILABILITY", "name": "Set Availability", "description": "Updates the number of available units for a specific room type within a date range. Use this action to set availability for booking periods. The period_start and period_end dates define the range during which the specified number of units will be available." }, { "slug": "LODGIFY_SUBSCRIBE_WEBHOOK", "name": "Subscribe to Webhook", "description": "Subscribes to a Lodgify webhook by providing a target URL and event type. Use this action to: - Register a callback URL to receive real-time notifications from Lodgify - Listen for specific events like new bookings, rate changes, or availability updates - Set up integrations that respond to changes in the Lodgify system The target_url must be unique. Returns a webhook ID for later unsubscription and a secret for signature verification." }, { "slug": "LODGIFY_UNSUBSCRIBE_WEBHOOK", "name": "Unsubscribe Webhook", "description": "Tool to unsubscribe from a Lodgify webhook. Use when you need to remove a webhook subscription by providing the webhook ID that was returned during subscription." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "lodgify_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "lodgify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Lodgify API Key", "type": "string", "description": "The API key obtained from Lodgify's Public API settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "logfire", "name": "Logfire", "logo": "https://logos.composio.dev/api/logfire", "description": "Pydantic Logfire is an observability platform for Python applications with logs, traces, and metrics", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "logfire_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Your Logfire account region: \"us\" (api-us.pydantic.dev) or \"eu\" (api-eu.pydantic.dev).", "required": true, "default": "us" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Logfire API key (Organization, Project, or Personal). Create one in the Logfire dashboard via Settings → API Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "loggly", "name": "Loggly", "logo": "https://logos.composio.dev/api/loggly", "description": "Loggly is a cloud-based log management and analytics service. This integration allows sending log data to Loggly using customer tokens.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "loggly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "Your Loggly subdomain. Find this in Loggly UI > Source Setup > Customer Tokens.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Customer Token", "type": "string", "description": "Your Loggly customer token. Find this in Loggly UI > Source Setup > Customer Tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "logo_dev", "name": "Logo.dev", "logo": "https://logos.composio.dev/api/logo_dev", "description": "Logo.dev provides a high-quality logo API and company brand database, enabling developers to retrieve official high-resolution logos from any domain without scraping or manual effort.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "LOGO_DEV_GET_LOGO_IMAGE", "name": "Get Logo Image", "description": "Tool to retrieve the logo image for a domain. Use when you need the raw image bytes (PNG or SVG) of a specific domain's logo. Use after validating the domain string." }, { "slug": "LOGO_DEV_SEARCH_BRAND", "name": "Search Brand", "description": "Tool to search for brands based on a query string. Returns existing brand metadata only — no logo creation or editing. Use when you need to retrieve a list of matching brands with optional pagination and filters by country or industry. Results may include similar or ambiguous brand matches; verify the returned domain matches the intended brand before using brand IDs or domains in downstream calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "logo_dev_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Logo.dev Secret API Key", "type": "string", "description": "Your Logo.dev secret API key (starts with 'sk_'). Required for all REST API endpoints. Find it in your Logo.dev dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "logoraisr", "name": "Logoraisr", "logo": "https://logos.composio.dev/api/logoraisr", "description": "AI-based graphic design API for logo vectorization, super-resolution enhancement, image segmentation, and color classification", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "logoraisr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Logoraisr account and sign in, then go to \"Profile\" > \"Developer\" to retrieve your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "logrocket", "name": "Logrocket", "logo": "https://logos.composio.dev/api/logrocket", "description": "LogRocket is a frontend application monitoring solution that helps developers identify and fix bugs and performance issues in web and mobile applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOGROCKET_QUERY_SESSIONS", "name": "Query LogRocket Sessions", "description": "Tool to retrieve lists of LogRocket sessions matching specified criteria. Returns user information, location data, session metadata, and pagination cursors. Use when you need to query or filter sessions for analysis or monitoring." }, { "slug": "LOGROCKET_UPDATE_USER", "name": "Update User in LogRocket", "description": "Tool to update or create user information in LogRocket. Sends user demographic, financial, and engagement data to contextualize user behavior. Updates all traits present in the request. Available for Pro and Enterprise plans only." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "logrocket_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your LogRocket API key from Settings > General Settings or Settings > Project Settings", "required": true, "default": null }, { "name": "generic_id", "displayName": "Organization ID", "type": "string", "description": "Your organization ID from your App ID (e.g., for App ID \"foo/bar\", org ID is \"foo\")", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "App ID", "type": "string", "description": "Your app ID from your App ID (e.g., for App ID \"foo/bar\", app ID is \"bar\")", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "logsnag", "name": "LogSnag", "logo": "https://logos.composio.dev/api/logsnag", "description": "Event tracking made easy! Real-time monitoring and tracking of events in your applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOGSNAG_CREATE_INSIGHT", "name": "Create Insight", "description": "Tool to create or update real-time insight metrics for KPIs and performance data. Use when you need to publish periodic metrics that aren't captured as standard events." }, { "slug": "LOGSNAG_IDENTIFY_USER", "name": "Identify User", "description": "Tool to add key-value properties to a user profile in LogSnag. Use when you need to enrich user data with custom properties for filtering and searching within LogSnag." }, { "slug": "LOGSNAG_LOG_EVENT", "name": "Log Event", "description": "Tool to track events in your application by sending log entries to LogSnag. Use when you need to record user actions, system events, errors, or any significant application activity. Supports rich metadata including tags, icons, and markdown descriptions." }, { "slug": "LOGSNAG_MUTATE_INSIGHT", "name": "Mutate Insight", "description": "Tool to update an existing insight value using mutation operations. Use when you need to increment or decrement numerical insight values. Supports both positive and negative increments." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "logsnag_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your LogSnag account > Settings > API to retrieve your API token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "loomio", "name": "Loomio", "logo": "https://logos.composio.dev/api/loomio", "description": "Loomio is a collaborative decision-making platform that enables groups to discuss, propose, and make decisions together.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOOMIO_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all groups accessible to the user. Use when you need to retrieve and paginate user groups." }, { "slug": "LOOMIO_LIST_POLLS", "name": "List Polls", "description": "Tool to list all polls accessible to the user. Use when you need to retrieve poll IDs and basic metadata." }, { "slug": "LOOMIO_SHOW_GROUP", "name": "Show Group", "description": "Tool to retrieve details of a specific group. Use when you have a group_id and need its full metadata." }, { "slug": "LOOMIO_SHOW_POLL", "name": "SHOW_POLL", "description": "Tool to retrieve details of a specific poll. Use when you have a poll ID and need its full metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "loomio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Loomio API Key", "type": "string", "description": "The API key associated with your Loomio user account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "loops_so", "name": "Loops.so", "logo": "https://logos.composio.dev/api/loops_so", "description": "The email platform for modern SaaS. A better way to send product, marketing, and transactional email.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOOPS_SO_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to add a new contact to your Loops audience. Use when you need to create a contact with email and optional properties like name, subscription status, or custom attributes. Returns 409 if contact already exists." }, { "slug": "LOOPS_SO_CREATE_CONTACT_PROPERTY", "name": "Create Contact Property", "description": "Tool to add a custom contact property to your Loops team. Use when you need to store additional contact data beyond default fields. Properties must have unique names in camelCase format and a specified data type (string, number, boolean, or date)." }, { "slug": "LOOPS_SO_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by email address or user ID. Use when you need to remove a contact from Loops. Either email or userId must be provided to identify the contact." }, { "slug": "LOOPS_SO_FIND_CONTACT", "name": "Find Contact", "description": "Tool to search for a contact by email or userId. Use when you need to find a specific contact's details including subscription status and custom properties. Exactly one of email or userId must be provided per request." }, { "slug": "LOOPS_SO_GET_CONTACT_PROPERTIES", "name": "Get Contact Properties", "description": "Tool to retrieve a list of your account's contact properties from Loops.so. Use when you need to view all available contact properties or filter to only custom properties created by your team." }, { "slug": "LOOPS_SO_GET_DEDICATED_SENDING_IPS", "name": "Get Dedicated Sending IPs", "description": "Tool to retrieve a list of Loops' dedicated sending IP addresses. Use when you need to get IP addresses for whitelisting purposes." }, { "slug": "LOOPS_SO_GET_MAILING_LISTS", "name": "Get Mailing Lists", "description": "Tool to retrieve all mailing lists associated with your Loops account. Use when you need to browse or manage mailing list information." }, { "slug": "LOOPS_SO_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to retrieve a list of custom contact properties. Use when you need to view available custom fields for contacts. Note: This endpoint is deprecated in favor of 'List contact properties'." }, { "slug": "LOOPS_SO_LIST_TRANSACTIONAL_EMAILS", "name": "List Transactional Emails", "description": "Tool to retrieve a list of published transactional emails. Use when you need to view all available transactional email templates. Supports pagination with perPage and cursor parameters." }, { "slug": "LOOPS_SO_SEND_EVENT", "name": "Send Event", "description": "Tool to send events to trigger emails in Loops. Use when you need to track user actions and trigger automated email workflows based on those events." }, { "slug": "LOOPS_SO_TEST_API_KEY", "name": "Test API Key", "description": "Tool to test API key validity and retrieve team information. Use to verify API credentials are working correctly." }, { "slug": "LOOPS_SO_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact by email or userId. Use when you need to modify contact properties or re-subscribe contacts. Creates a new contact if no matching record exists." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "loops_so_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from API Settings at https://app.loops.so/settings?page=api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "loqate", "name": "Loqate", "logo": "https://logos.composio.dev/api/loqate", "description": "Address verification, geocoding, and location intelligence API for data enrichment and validation", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "loqate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Service Key", "type": "string", "description": "To retrieve your Service Key, navigate to your Loqate account, sign in, click on the user menu on the top right, and go to \"Your Services\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "loyverse", "name": "Loyverse", "logo": "https://logos.composio.dev/api/loyverse", "description": "Loyverse is a point-of-sale (POS) system designed for small businesses, offering features like sales management, inventory tracking, and customer engagement tools.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 58, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LOYVERSE_CREATE_OR_UPDATE_CATEGORY", "name": "Create or Update Category", "description": "Tool to create a new category or update an existing one. If the ID field is provided, the category will be updated; otherwise, a new category is created." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_CUSTOMER", "name": "Create or Update Customer", "description": "Tool to create a new customer or update an existing one in Loyverse. Use when you need to add customer records or modify customer information. If the 'id' field is provided, it will update the existing customer; otherwise, it creates a new customer." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_DISCOUNT", "name": "Create or Update Discount", "description": "Tool to create or update a single discount. Use when creating new discounts or modifying existing ones. Supports FIXED_PERCENT (percentage-based), FIXED_AMOUNT (fixed amount), and VARIABLE discount types." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_ITEM", "name": "Create or Update Item", "description": "Tool to create a new item or update an existing one in Loyverse inventory. Include the item ID to update an existing item, or omit it to create a new one." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_MODIFIER", "name": "Create or Update Modifier", "description": "Tool to create or update a single modifier with options. If an ID is included in the request, it will update the existing modifier; otherwise, it creates a new one." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_POS_DEVICE", "name": "Create or Update POS Device", "description": "Tool to create a new POS device or update an existing one. If the request includes an ID, it updates the device; otherwise, it creates a new one." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_SUPPLIER", "name": "Create or Update Supplier", "description": "Tool to create a new supplier or update an existing one in Loyverse. Use when you need to register suppliers before purchases or modify supplier information. If the 'id' field is provided, it will update the existing supplier; otherwise, it creates a new supplier." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_TAX", "name": "Create or Update Tax", "description": "Tool to create or update a single tax. If the ID field is provided, the tax will be updated; otherwise, a new tax is created. Use when setting up tax rates for stores." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_VARIANT", "name": "Create or Update Variant", "description": "Tool to create or update a single item variant in Loyverse. Use when you need to add product variations (like size, color) or modify existing variant details. If variant_id is provided, it updates the existing variant; otherwise, it creates a new one. Note: The parent item must have option names defined before variants can be created." }, { "slug": "LOYVERSE_CREATE_OR_UPDATE_WEBHOOK", "name": "Create or Update Webhook", "description": "Tool to create a new webhook subscription or update an existing one in Loyverse. Use when you need to subscribe to events like items.update, inventory.update, receipts.create, customers.update, or shifts.create. If the 'id' field is provided, it will update the existing webhook; otherwise, it creates a new webhook." }, { "slug": "LOYVERSE_CREATE_RECEIPT", "name": "Create Receipt", "description": "Tool to create a sales receipt with line items and payments. Use when you need to record a sale transaction in Loyverse." }, { "slug": "LOYVERSE_CREATE_REFUND", "name": "Create Refund", "description": "Tool to create a refund receipt for a sales receipt. Use when you need to process a refund for items from a previous sale. Only supports refunds for receipts paid by a single payment method (not integrated payments)." }, { "slug": "LOYVERSE_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to delete a single category by ID. Use when you need to remove an unused or deprecated category." }, { "slug": "LOYVERSE_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a single customer by their ID. Use after confirming the customer ID to remove an existing customer." }, { "slug": "LOYVERSE_DELETE_DISCOUNT", "name": "Delete Discount", "description": "Tool to delete a single discount by ID. Use after confirming the discount ID to remove an existing discount." }, { "slug": "LOYVERSE_DELETE_ITEM", "name": "Delete Item", "description": "Tool to delete a single item by ID. Use when you need to remove an item from the inventory." }, { "slug": "LOYVERSE_DELETE_ITEM_IMAGE", "name": "Delete Item Image", "description": "Tool to delete a single image from an item. Use when you need to remove the image associated with a specific item." }, { "slug": "LOYVERSE_DELETE_MODIFIER", "name": "Delete Modifier", "description": "Tool to delete a single modifier by its ID. Use when you need to remove an existing modifier." }, { "slug": "LOYVERSE_DELETE_POS_DEVICE", "name": "Delete POS Device", "description": "Tool to delete a single POS device by its ID. Use when you need to remove a POS device from the system." }, { "slug": "LOYVERSE_DELETE_SUPPLIER", "name": "Delete Supplier", "description": "Tool to delete a specific supplier by ID. Use after confirming the supplier ID to remove an existing supplier." }, { "slug": "LOYVERSE_DELETE_TAX", "name": "Delete Tax", "description": "Tool to delete a single tax by its ID. Use when you need to remove an existing tax configuration." }, { "slug": "LOYVERSE_DELETE_VARIANT", "name": "Delete Variant", "description": "Tool to delete a single item variant by its ID. Use after confirming the variant ID to remove an existing variant." }, { "slug": "LOYVERSE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a single webhook by its ID. Use when you need to remove a webhook configuration." }, { "slug": "LOYVERSE_GET_CATEGORY", "name": "Get Category", "description": "Tool to get a single category by ID. Use when you need to fetch details of an existing category in Loyverse." }, { "slug": "LOYVERSE_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to get a single customer by their ID. Use when you need to fetch details of a specific customer." }, { "slug": "LOYVERSE_GET_DISCOUNT", "name": "Get Discount", "description": "Tool to get a single discount by ID. Use after confirming the discount ID to retrieve its details." }, { "slug": "LOYVERSE_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to get a single employee by ID. Use after confirming the employee ID to fetch its details." }, { "slug": "LOYVERSE_GET_ITEM", "name": "Get Item", "description": "Tool to get a single item by ID including all its variants. Use when you need detailed information about a specific item from the Loyverse inventory." }, { "slug": "LOYVERSE_GET_JWKS", "name": "Get JWKS", "description": "Tool to fetch JSON Web Key Set for OpenID Connect. Use when verifying Loyverse ID token signatures." }, { "slug": "LOYVERSE_GET_MERCHANT_INFO", "name": "Get Merchant Info", "description": "Tool to get merchant information. Use after authenticating to retrieve merchant account details." }, { "slug": "LOYVERSE_GET_MODIFIER", "name": "Get Modifier", "description": "Tool to get a single modifier by ID. Use when you need to fetch details of an existing modifier in Loyverse." }, { "slug": "LOYVERSE_GET_OPEN_ID_CONFIGURATION", "name": "Get OpenID Connect Discovery Document", "description": "Tool to retrieve the OpenID Connect discovery document. Use when integrating authentication and need endpoints and supported features." }, { "slug": "LOYVERSE_GET_PAYMENT_TYPE", "name": "Get Payment Type", "description": "Tool to get a single payment type by its ID. Use when you need to fetch full details of a specific payment method before processing a transaction." }, { "slug": "LOYVERSE_GET_POS_DEVICE", "name": "Get POS Device", "description": "Tool to retrieve details of a specific POS device by its ID. Use when you need POS device metadata after obtaining the device ID." }, { "slug": "LOYVERSE_GET_RECEIPT", "name": "Get Receipt", "description": "Tool to retrieve a single receipt by its receipt number. Use when you need detailed information about a specific receipt including line items, payments, and totals." }, { "slug": "LOYVERSE_GET_STORE", "name": "Get Store", "description": "Tool to retrieve details of a specific store by its ID. Use when you need store metadata (address, contact) after obtaining the store ID." }, { "slug": "LOYVERSE_GET_SUPPLIER", "name": "Get Supplier", "description": "Tool to get a single supplier by their ID. Use when you need to fetch details of a specific supplier in Loyverse." }, { "slug": "LOYVERSE_GET_TAX", "name": "Get Tax", "description": "Tool to get a single tax by ID. Use when you need to retrieve details of a specific tax configuration in Loyverse." }, { "slug": "LOYVERSE_GET_VARIANT", "name": "Get Variant", "description": "Tool to get a single item variant by its ID. Use when you need detailed information about a specific variant from the Loyverse inventory." }, { "slug": "LOYVERSE_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to get a single webhook by its ID. Use when you need to retrieve details of a specific webhook configuration." }, { "slug": "LOYVERSE_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to list categories with optional filtering and pagination." }, { "slug": "LOYVERSE_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to get a list of customers. Use when you need paginated customer lists with optional filters." }, { "slug": "LOYVERSE_LIST_DISCOUNTS", "name": "List Discounts", "description": "Tool to list discounts. Use when fetching a paginated set of discounts for display or sync." }, { "slug": "LOYVERSE_LIST_EMPLOYEES2", "name": "List Employees (Advanced)", "description": "Tool to get a list of employees with advanced filtering options. Use when you need to filter employees by creation/update dates or view deleted employees." }, { "slug": "LOYVERSE_LIST_INVENTORY", "name": "List Inventory", "description": "Retrieves inventory levels for item variants across stores in the Loyverse system. Use this to track stock quantities for specific variants at different store locations. Filter by store IDs, variant IDs, or date range to narrow results." }, { "slug": "LOYVERSE_LIST_ITEMS", "name": "List Items", "description": "Retrieves a paginated list of items (products) from the Loyverse inventory. Items are sorted by creation date in descending order (newest first). Use filters to narrow results by category, date range, or specific item IDs." }, { "slug": "LOYVERSE_LIST_MODIFIERS2", "name": "List Modifiers (Enhanced)", "description": "Tool to get a list of modifiers sorted by created_at in descending order. Use when you need to retrieve modifiers with advanced filtering options including creation/update dates and deleted items." }, { "slug": "LOYVERSE_LIST_PAYMENT_TYPES", "name": "List Payment Types", "description": "Tool to list payment types. Use when you need to fetch available payment methods with optional filters and pagination." }, { "slug": "LOYVERSE_LIST_POS_DEVICES", "name": "List POS Devices", "description": "Tool to get a list of POS devices sorted by creation date in descending order. Use when you need to retrieve POS device information for store management or reporting." }, { "slug": "LOYVERSE_LIST_RECEIPTS", "name": "List Receipts", "description": "Tool to retrieve a list of receipts. Use when you need to fetch receipts with optional filters and handle pagination." }, { "slug": "LOYVERSE_LIST_SHIFTS", "name": "List Shifts", "description": "Tool to list shifts. Use when you need to retrieve shift records for reporting or auditing with optional filters." }, { "slug": "LOYVERSE_LIST_STORES", "name": "List Stores", "description": "Tool to get a list of stores sorted by creation date (newest first). Use when you need to retrieve store information across multiple locations." }, { "slug": "LOYVERSE_LIST_SUPPLIERS", "name": "List Suppliers", "description": "Tool to retrieve a list of suppliers. Use when you need a paginated supplier directory with optional filters." }, { "slug": "LOYVERSE_LIST_TAXES2", "name": "List Taxes", "description": "Tool to get a list of taxes sorted by creation date (newest first). Use when you need to retrieve tax records with optional filtering by IDs or date ranges." }, { "slug": "LOYVERSE_LIST_VARIANTS2", "name": "List Variants", "description": "Tool to get a list of item variants sorted by creation date (newest first). Use when you need comprehensive filtering by variant IDs, item IDs, SKU, or date ranges, including deleted variants." }, { "slug": "LOYVERSE_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list webhooks. Use when you need to retrieve all configured webhooks." }, { "slug": "LOYVERSE_UPDATE_INVENTORY", "name": "Update Inventory", "description": "Tool to batch update inventory levels for item variants at specific stores. Use when you need to set absolute stock quantities (not deltas) for one or more variant-store combinations." }, { "slug": "LOYVERSE_UPLOAD_ITEM_IMAGE", "name": "Upload Item Image", "description": "Tool to upload a single image for an item. Accepts image/png or image/jpeg content types. Use after confirming the item ID to upload product images." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "loyverse_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Loyverse Access Token", "type": "string", "description": "The access token generated in the Loyverse Back Office, providing unrestricted access to all API resources.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "luma_fb_c6b6d66a_7902_4210_ac12_4df037365084", "name": "Luma Fb C6B6D66A 7902 4210 Ac12 4Df037365084", "logo": "https://logos.composio.dev/api/luma_fb_c6b6d66a-7902-4210-ac12-4df037365084", "description": "Luma is an event management and calendar platform for creating, managing, and promoting events with seamless registration and attendee management.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "luma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Luma API key. Generate from Luma Dashboard → Settings → Developer → API Keys. Requires Luma Plus subscription.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "luno", "name": "Luno", "logo": "https://logos.composio.dev/api/luno", "description": "Luno is a cryptocurrency platform that makes it safe and easy to buy, sell, store and learn about cryptocurrencies like Bitcoin and Ethereum.", "category": "payment processing", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [] }, { "slug": "lusha", "name": "Lusha", "logo": "https://logos.composio.dev/api/lusha", "description": "B2B contact enrichment and prospecting platform providing verified email addresses, phone numbers, and company information", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "LUSHA_CREATE_SUBSCRIPTION", "name": "Create Subscription", "description": "Tool to create one or more webhook subscriptions for real-time signal notifications. Use when you want to subscribe to Lusha signals (job changes, company updates, etc.) and receive real-time webhook notifications. Maximum 25 subscriptions per request. Example use case: Set up a webhook to notify your system whenever a contact gets a job title promotion or a company has a funding event." }, { "slug": "LUSHA_DELETE_SUBSCRIPTIONS", "name": "Delete Subscriptions", "description": "Delete one or more webhook subscriptions by their IDs. Use this action to remove webhook subscriptions from your Lusha account. The action supports batch deletion of up to 25 subscriptions per request. Returns a summary with success and failure counts for each subscription." }, { "slug": "LUSHA_GET_AUDIT_LOGS", "name": "Get Audit Logs", "description": "Retrieve audit logs for your account including API calls and webhook deliveries. Use when you need to review delivery status, errors, and performance metrics for webhooks and API requests in your Lusha account." }, { "slug": "LUSHA_GET_AUDIT_LOG_STATS", "name": "Get Audit Log Stats", "description": "Retrieve aggregated statistics for audit logs. Returns total count, successful count, failed count, and success rate percentage. Use this to monitor audit log activity and delivery success rates." }, { "slug": "LUSHA_GET_SUBSCRIPTION", "name": "Get Subscription", "description": "Tool to get details of a specific webhook subscription by ID. Use when you need to retrieve information about an existing webhook subscription including its status, configuration, and entity details." }, { "slug": "LUSHA_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "List all webhook subscriptions for your account with pagination support. Use when you want to retrieve all configured webhook subscriptions to review their settings, check active status, or manage your webhook integrations. Example use case: Get a paginated list of all your webhook subscriptions to review which contacts or companies you're tracking." }, { "slug": "LUSHA_UPDATE_SUBSCRIPTION", "name": "Update Subscription", "description": "Update an existing webhook subscription configuration. Use this action to modify an existing webhook subscription's settings such as name, webhook URL, active status, and signal types. Optionally, you can regenerate the webhook secret for enhanced security." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "lusha_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Lusha API key - generate at https://dashboard.lusha.com/enrich/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "magnetic", "name": "Magnetic", "logo": "https://logos.composio.dev/api/magnetic", "description": "Magnetic is an all-in-one platform designed to help professional services firms manage projects, resources, and finances efficiently.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAGNETIC_CLIENTS_GET_CURRENT_FOLLOWUPS", "name": "Get Current Follow-ups", "description": "Tool to retrieve upcoming follow-ups assigned to the authenticated user. Use after authentication to view scheduled tasks." }, { "slug": "MAGNETIC_CLIENTS_SEARCH_CONTACTS", "name": "Search Client Contacts", "description": "Tool to search contacts by field or client ID. Use when you need to retrieve client contacts matching given criteria after authentication." }, { "slug": "MAGNETIC_CREATE_GROUPING", "name": "Create Magnetic Grouping", "description": "Tool to create a new opportunity or job (grouping) in Magnetic HQ. Use when you need to organize tasks and track project progress for a new opportunity or job." }, { "slug": "MAGNETIC_CREATE_TASK", "name": "Create Magnetic Task", "description": "Tool to create a new task in Magnetic HQ. Use when you need to add tasks to the system, optionally assigning them to users or linking to opportunities." }, { "slug": "MAGNETIC_GET_CONTACT_TAGS", "name": "Get Contact Tags", "description": "Tool to get all tags associated with a contact. Use after confirming the contactId to list contact tags." }, { "slug": "MAGNETIC_GET_GROUPING_BY_ID", "name": "Get Magnetic Grouping by ID", "description": "Tool to retrieve details for a specific grouping (opportunity/job) by its ID. Use when you need detailed information about a specific grouping." }, { "slug": "MAGNETIC_GET_GROUPING_STATUSES", "name": "Get Grouping Statuses", "description": "Tool to retrieve the list of statuses for signed groupings. Use after authentication when you need available grouping status options for tasks or jobs." }, { "slug": "MAGNETIC_GET_GROUPING_TAGS", "name": "Get Grouping Tags", "description": "Tool to retrieve tags associated with any groupings owned by the company. Use after authentication when grouping tags are needed." }, { "slug": "MAGNETIC_GET_OPPORTUNITY_STATUSES", "name": "Get Magnetic Opportunity Statuses", "description": "Tool to retrieve opportunity statuses. Use when you need current status options for unsigned groupings (opportunities)." }, { "slug": "MAGNETIC_GET_TASK", "name": "Get Magnetic Task", "description": "Tool to retrieve a task by its ID. Use after confirming you have the taskId." }, { "slug": "MAGNETIC_GET_USER_BY_ID", "name": "Get User by ID", "description": "Tool to retrieve details for a specific Magnetic user by their ID. Use when you need to fetch a user's profile information." }, { "slug": "MAGNETIC_GET_USERS", "name": "Get Users", "description": "Tool to retrieve the list of all users in the authenticated user's company. Use after authentication to audit or manage user accounts." }, { "slug": "MAGNETIC_LIST_COMPANIES", "name": "List Companies", "description": "Tool to retrieve all companies from the Magnetic HQ account. Use after authentication to view all client companies." }, { "slug": "MAGNETIC_TASKS_GET_GROUPING_CUSTOM_FIELD_DEFINITIONS", "name": "Get Grouping Custom Field Definitions", "description": "Tool to retrieve all custom field definitions for groupings. Use after authentication when you need to fetch available grouping custom field definitions for tasks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "magnetic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Magnetic API Token", "type": "string", "description": "Your unique API token for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailbluster", "name": "MailBluster", "logo": "https://logos.composio.dev/api/mailbluster", "description": "MailBluster is an advanced, reliable, and cost-effective email marketing software that enables sending personalized promotional emails to millions.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILBLUSTER_CREATE_LEAD", "name": "Create MailBluster Lead", "description": "Tool to create a new lead in MailBluster. Use after gathering the lead's email and optional data." }, { "slug": "MAILBLUSTER_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order in MailBluster." }, { "slug": "MAILBLUSTER_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new product in MailBluster. Use when you have all product details ready to add it to your MailBluster catalog. Requires a unique product ID and name." }, { "slug": "MAILBLUSTER_DELETE_LEAD", "name": "Delete MailBluster Lead", "description": "Tool to delete a lead by lead email hash. Use after confirming the lead hash (MD5 encrypted email address)." }, { "slug": "MAILBLUSTER_DELETE_ORDER", "name": "Delete Order", "description": "Tool to delete a specific order. Use after confirming the order ID to remove an order from Mailbluster." }, { "slug": "MAILBLUSTER_DELETE_PRODUCT", "name": "Delete Mailbluster Product", "description": "Tool to delete a product. Use after confirming product existence." }, { "slug": "MAILBLUSTER_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve a specific lead's information using their lead hash (MD5 encrypted email address). Use when you need to fetch lead details by their email hash." }, { "slug": "MAILBLUSTER_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve details of a specific order. Use when you have the order's ID." }, { "slug": "MAILBLUSTER_GET_PRODUCT", "name": "Get Product", "description": "Tool to retrieve details of a specific product. Use when you have a valid product ID and need full product information." }, { "slug": "MAILBLUSTER_LIST_FIELDS", "name": "List Fields", "description": "Tool to list all custom fields. Use when you need to retrieve all defined custom fields after authenticating with MailBluster." }, { "slug": "MAILBLUSTER_LIST_ORDERS", "name": "List Orders", "description": "Tool to list all orders. Use when you need to retrieve orders with optional pagination, sorting, or searching after authenticating with Mailbluster." }, { "slug": "MAILBLUSTER_LIST_PRODUCTS", "name": "List Products", "description": "Tool to list all products. Use when you need to retrieve products with optional pagination, sorting, or filtering." }, { "slug": "MAILBLUSTER_UPDATE_LEAD", "name": "Update MailBluster Lead", "description": "Tool to update an existing lead's information in MailBluster. Use when you need to modify lead details, subscription status, or manage tags." }, { "slug": "MAILBLUSTER_UPDATE_ORDER", "name": "Update Order", "description": "Tool to update an existing order's customer details, currency, price, and items in MailBluster. Use when you need to modify an order." }, { "slug": "MAILBLUSTER_UPDATE_PRODUCT", "name": "MailBluster Update Product", "description": "Tool to update a product in MailBluster by its ID. Use after confirming the product ID to modify attributes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailbluster_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MailBluster API Key", "type": "string", "description": "The API key generated from your MailBluster account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailboxlayer", "name": "Mailboxlayer", "logo": "https://logos.composio.dev/api/mailboxlayer", "description": "A simple REST-based JSON API for email address validation and verification.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILBOXLAYER_CHECK_EMAIL", "name": "Check Email Validity", "description": "Tool to validate a single email address. Use when you need to check syntax, domain, SMTP, and meta-flags." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailboxlayer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Access Key", "type": "string", "description": "Your personal API Access Key assigned upon signing up, used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailcheck", "name": "Mailcheck", "logo": "https://logos.composio.dev/api/mailcheck", "description": "Mailcheck is an email verification service that helps businesses validate email addresses to ensure deliverability and reduce bounce rates.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILCHECK_VALIDATE_DOMAIN", "name": "Validate Domain", "description": "Tool to validate a domain for disposability, MX records, domain age, and spam indicators. Use when checking if a domain is associated with temporary email services, public email providers, or forwarding services." }, { "slug": "MAILCHECK_VERIFY_EMAIL", "name": "Verify Email Address", "description": "Tool to verify provided email address. Use after obtaining user email input." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailcheck_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mailcheck API Key", "type": "string", "description": "The API key used for authenticating requests to the Mailcheck/UserCheck API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailcoach", "name": "Mailcoach", "logo": "https://logos.composio.dev/api/mailcoach", "description": "Mailcoach is an email marketing platform that allows users to manage email campaigns and subscriber lists efficiently.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILCOACH_ADD_CAMPAIGN", "name": "Add Mailcoach Campaign", "description": "Tool to create a new Mailcoach campaign. Use when you need to send or schedule an email campaign to a specific list or segment." }, { "slug": "MAILCOACH_ADD_EMAIL_LIST", "name": "Add Email List", "description": "Tool to create a new email list. Use when you need to manage and organize subscribers before sending campaigns. Use after authentication." }, { "slug": "MAILCOACH_ADD_SUPPRESSION", "name": "Add suppression", "description": "Tool to add a suppression entry. Use after detecting a bounce, spam complaint, or manual block." }, { "slug": "MAILCOACH_ADD_TAG", "name": "Add Tag to Email List", "description": "Tool to create a new tag within a specific email list. Use after confirming the email list exists." }, { "slug": "MAILCOACH_ADD_TAGS_TO_SUBSCRIBER", "name": "Add Tags to Subscriber", "description": "Add tags to a subscriber for segmentation and targeting. Tags are appended to existing tags. Use after obtaining a subscriber UUID from listing subscribers or creating a new subscription." }, { "slug": "MAILCOACH_ADD_TRANSACTIONAL_EMAIL_TEMPLATE", "name": "Add Transactional Email Template", "description": "Creates a new email template in Mailcoach via POST /api/templates. Use this action to create reusable HTML templates that can be referenced when sending transactional emails. Returns the created template with its UUID, which can be used to reference, update, or delete the template later." }, { "slug": "MAILCOACH_APPEND_TO_SUBSCRIBER_IMPORT", "name": "Append to Subscriber Import", "description": "Tool to append CSV data to an existing subscriber import. Use after retrieving a subscriber import when additional subscriber data needs to be added." }, { "slug": "MAILCOACH_CONFIRM_SUBSCRIBER", "name": "Confirm Subscriber", "description": "Confirm a subscriber's subscription to an email list (double opt-in confirmation). Use this action to finalize a subscriber's subscription after they have been added to an email list with confirmation required. This is typically called after the subscriber clicks a confirmation link in their email. Prerequisites: - A subscriber must exist (created via MAILCOACH_SUBSCRIBE_TO_EMAIL_LIST action) - The subscriber must be in 'unconfirmed' status (skip_confirmation was false or not set) Returns 204 No Content on success. If the subscriber is already confirmed or does not exist, appropriate error messages are returned." }, { "slug": "MAILCOACH_CREATE_SEGMENT", "name": "Create Segment for Email List", "description": "Tool to create a new segment within an email list. Use when you need to target specific groups of subscribers based on tags." }, { "slug": "MAILCOACH_CREATE_SUBSCRIBER_IMPORT", "name": "Create Subscriber Import", "description": "Creates a new subscriber import in Mailcoach. Use this to bulk import subscribers from CSV data into an email list. The import is created in 'draft' status and must be started separately using the start_subscriber_import action. The CSV must include a header row with at least an 'email' column. Optional columns include 'first_name', 'last_name', 'tags', and custom attributes. Requires a valid email_list_uuid from an existing email list." }, { "slug": "MAILCOACH_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a campaign by UUID. Use when you need to permanently remove a campaign after confirming its identifier." }, { "slug": "MAILCOACH_DELETE_EMAIL_LIST", "name": "Delete Email List", "description": "Tool to delete an email list by UUID. Use when you need to permanently remove an email list after confirming its identifier." }, { "slug": "MAILCOACH_DELETE_SEGMENT", "name": "Delete Segment from Email List", "description": "Tool to delete a segment from an email list. Use when you need to permanently remove a segment after confirming its identifiers." }, { "slug": "MAILCOACH_DELETE_SUBSCRIBER", "name": "Delete Subscriber", "description": "Permanently delete a subscriber by UUID from Mailcoach. Use this tool when you need to completely remove a subscriber and all their data. After deletion, the email address can be re-subscribed in the future. This action is irreversible - consider using unsubscribe instead if you want to preserve subscriber history." }, { "slug": "MAILCOACH_DELETE_SUBSCRIBER_IMPORT", "name": "Delete Subscriber Import", "description": "Tool to delete a subscriber import by its UUID. Use when you need to permanently remove a subscriber import after confirming its identifier." }, { "slug": "MAILCOACH_DELETE_SUPPRESSION", "name": "Delete Suppression", "description": "Tool to delete a suppression entry by UUID. Use when you need to permanently remove a suppression after confirming its identifier." }, { "slug": "MAILCOACH_DELETE_TAG", "name": "Delete Tag from Email List", "description": "Tool to delete a tag from an email list. Use when you need to permanently remove a tag after confirming its identifiers." }, { "slug": "MAILCOACH_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template by UUID. Use when you need to permanently remove a template after confirming its UUID." }, { "slug": "MAILCOACH_DELETE_TRANSACTIONAL_MAIL", "name": "Delete Transactional Mail", "description": "Tool to delete a transactional mail send record by its UUID. This removes the logged send entry for a transactional email from the /api/sends endpoint. Use when you need to permanently remove a transactional mail log item. Note: This is idempotent - deleting a non-existent UUID returns success." }, { "slug": "MAILCOACH_GET_ALL_CAMPAIGNS", "name": "Get All Campaigns", "description": "Tool to retrieve all campaigns. Use when you need a paginated, sortable list of campaigns matching criteria." }, { "slug": "MAILCOACH_GET_ALL_SENT_ITEMS", "name": "Get All Sent Items", "description": "Tool to retrieve all sent items. Use when you need to list and filter sent items after delivery." }, { "slug": "MAILCOACH_GET_ALL_SUBSCRIBER_IMPORTS", "name": "Get All Subscriber Imports", "description": "Tool to retrieve all subscriber imports. Use when you need a paginated list of import jobs." }, { "slug": "MAILCOACH_GET_ALL_SUPPRESSIONS", "name": "Get All Suppressions", "description": "Retrieve a paginated list of all email suppression entries from Mailcoach. Suppressions are email addresses that will never receive emails. They can be created due to hard bounces, spam complaints, or manual blocking. Use this tool to: - View all suppressed email addresses - Search for specific suppressed emails - Filter by suppression reason (hard_bounce, spam_complaint, manual) - Get suppression UUIDs for use with get_specific_suppression or delete_suppression" }, { "slug": "MAILCOACH_GET_ALL_TAGS", "name": "Get All Tags", "description": "Tool to retrieve all tags for a specific email list. Use after confirming the email list exists." }, { "slug": "MAILCOACH_GET_ALL_TEMPLATES", "name": "Get All Templates", "description": "Tool to retrieve all templates. Use when you need a paginated list of templates with optional search and sorting." }, { "slug": "MAILCOACH_GET_ALL_TRANSACTIONAL_EMAIL_TEMPLATES", "name": "Get All Transactional Email Templates", "description": "Tool to retrieve all transactional email templates. Use when you need a paginated list of transactional templates matching your criteria." }, { "slug": "MAILCOACH_GET_CAMPAIGN_BOUNCES", "name": "Get Campaign Bounces", "description": "Tool to retrieve bounced subscribers of a sent campaign with pagination support. Use when you need to analyze or manage email bounces for campaign delivery tracking." }, { "slug": "MAILCOACH_GET_CAMPAIGN_CLICKS", "name": "Get Campaign Clicks", "description": "Tool to retrieve clicks from a sent campaign with pagination support. Use when you need to analyze link engagement and click-through data for a specific campaign." }, { "slug": "MAILCOACH_GET_CAMPAIGN_OPENS", "name": "Get Campaign Opens", "description": "Tool to retrieve all opens for a sent campaign with pagination support. Use when you need to see who opened a campaign and how many times." }, { "slug": "MAILCOACH_GET_CAMPAIGN_UNSUBSCRIBES", "name": "Get Campaign Unsubscribes", "description": "Tool to retrieve unsubscribes from a sent campaign with pagination support. Use when you need to see who unsubscribed from a specific campaign." }, { "slug": "MAILCOACH_GET_EMAIL_LISTS", "name": "Get Email Lists", "description": "Tool to retrieve all email lists. Use when you need to fetch a paginated list of email lists with optional filters." }, { "slug": "MAILCOACH_GET_SEGMENT", "name": "Get Segment", "description": "Tool to retrieve details of a specific segment. Use when you need to fetch segment metadata after confirming the email list and segment UUIDs." }, { "slug": "MAILCOACH_GET_SPECIFIC_CAMPAIGN", "name": "Get Specific Campaign", "description": "Tool to retrieve details of a specific Mailcoach campaign. Use when you need the full campaign resource by its UUID." }, { "slug": "MAILCOACH_GET_SPECIFIC_EMAIL_LIST", "name": "Get Specific Email List", "description": "Retrieve detailed information about a specific Mailcoach email list by its UUID. Returns comprehensive list details including: - Basic info: name, UUID, subscriber count - Email settings: default from/reply-to addresses and names - Subscription settings: form subscriptions, confirmation requirements, redirect URLs - Mailer configurations: campaign, automation, and transactional mailers - Reporting settings: report recipients and enabled report types - Timestamps: creation and last update dates Use this action when you need complete details about a specific email list. The UUID can be obtained from the Get Email Lists action." }, { "slug": "MAILCOACH_GET_SPECIFIC_SUBSCRIBER", "name": "Get Specific Subscriber", "description": "Tool to retrieve a specific subscriber. Use when you need to fetch subscriber details by UUID." }, { "slug": "MAILCOACH_GET_SPECIFIC_SUPPRESSION", "name": "Get Specific Suppression", "description": "Tool to retrieve a specific suppression entry. Use when you need to fetch suppression details by UUID or email." }, { "slug": "MAILCOACH_GET_SPECIFIC_TAG", "name": "Get Specific Tag", "description": "Tool to retrieve details of a specific tag. Use when you need to fetch tag metadata after confirming the email list and tag UUIDs." }, { "slug": "MAILCOACH_GET_SPECIFIC_TEMPLATE", "name": "Get Specific Template", "description": "Retrieves the full details of a specific Mailcoach email template by its UUID. Use this to fetch template content (HTML), metadata, and timestamps for a known template. The UUID can be obtained from the 'Get All Templates' action or from template creation responses. Returns template name, HTML content, structured HTML (if present), and timestamps." }, { "slug": "MAILCOACH_GET_SUBSCRIBER_IMPORT", "name": "Get Subscriber Import", "description": "Tool to retrieve details of a specific subscriber import by UUID. Use when you need to check the status or details of a particular import job." }, { "slug": "MAILCOACH_GET_TRANSACTIONAL_MAIL", "name": "Get Transactional Mail", "description": "Tool to retrieve details of a specific transactional email by its UUID. Use when you need to fetch the full details (subject, HTML content, recipients, settings) of a known transactional email template." }, { "slug": "MAILCOACH_GET_USER", "name": "Get User", "description": "Tool to retrieve details of the currently authenticated user. Use when you need to get information about the user associated with the API token." }, { "slug": "MAILCOACH_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to retrieve all segments for a specific email list. Use when you need to fetch segments that filter subscribers by tags." }, { "slug": "MAILCOACH_LIST_SUBSCRIBERS", "name": "List Subscribers", "description": "Tool to list all subscribers from a specific email list with pagination support. Use when you need to fetch subscribers from an email list, with optional filtering by email, search terms, or subscription status." }, { "slug": "MAILCOACH_LIST_TRANSACTIONAL_MAILS", "name": "List Transactional Mails", "description": "Tool to retrieve all transactional email records. Use when you need a paginated list of sent transactional mails." }, { "slug": "MAILCOACH_REMOVE_TAGS_FROM_SUBSCRIBER", "name": "Remove Tags from Subscriber", "description": "Tool to remove tags from a subscriber. Use after retrieving a subscriber's UUID to adjust their segments." }, { "slug": "MAILCOACH_RESEND_CONFIRMATION", "name": "Resend Subscriber Confirmation", "description": "Tool to resend confirmation email to a subscriber. Use when a subscriber hasn't confirmed and you need to resend the confirmation." }, { "slug": "MAILCOACH_START_SUBSCRIBER_IMPORT", "name": "Start Subscriber Import", "description": "Starts processing a subscriber import that is in 'draft' status. Use this action after creating a subscriber import with 'Create Subscriber Import' and optionally appending data with 'Append to Subscriber Import'. The import must be in 'draft' status to be started. Once started, the import will process the CSV data and add/update subscribers in the associated email list. Returns 204 No Content on success." }, { "slug": "MAILCOACH_SUBSCRIBE_TO_EMAIL_LIST", "name": "Subscribe To Email List", "description": "Subscribe (or update) a subscriber to an email list. By default, this upserts: if the email already exists in the list, it updates the subscriber; otherwise, it creates a new one. Use strict=true to prevent updates and fail if the email already exists. Tags are synced/replaced when provided. Use skip_confirmation=true to bypass double opt-in." }, { "slug": "MAILCOACH_UNSUBSCRIBE_SUBSCRIBER", "name": "Unsubscribe Subscriber", "description": "Unsubscribe a subscriber from their email list in Mailcoach. This changes the subscriber's status to 'unsubscribed' without deleting them. Use when a user requests to stop receiving emails. The subscriber can be resubscribed later if needed. Requires the subscriber's UUID (obtained from subscribe or get subscriber actions)." }, { "slug": "MAILCOACH_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update an existing Mailcoach campaign. Use after identifying the campaign UUID when you need to modify campaign attributes such as name, schedule, or content." }, { "slug": "MAILCOACH_UPDATE_EMAIL_LIST", "name": "Update Email List", "description": "Tool to update an existing email list. Use when you need to modify a list's configuration after verifying its UUID." }, { "slug": "MAILCOACH_UPDATE_SEGMENT", "name": "Update Segment", "description": "Tool to update an existing segment within an email list. Use when you need to modify segment criteria, name, or tag rules after verifying its existence." }, { "slug": "MAILCOACH_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update a subscriber. Use when you need to modify subscriber details after creation." }, { "slug": "MAILCOACH_UPDATE_SUBSCRIBER_IMPORT", "name": "Update Subscriber Import", "description": "Tool to update an existing subscriber import. Use when you need to modify a draft import before execution. Import must be in draft status." }, { "slug": "MAILCOACH_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag within an email list. Use when you need to modify the name or visibility of a tag after verifying its existence." }, { "slug": "MAILCOACH_UPDATE_TEMPLATE", "name": "Update Template", "description": "Updates an existing email template in Mailcoach. Use this to modify a template's name, HTML content, or structured HTML. The template UUID is required - get it from the Get All Templates action. Only the name is required; other fields are optional. Returns the updated template with its ID, content, and timestamps." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailcoach_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Mailcoach Domain", "type": "string", "description": "The specific domain of your Mailcoach instance (e.g., 'yourcompany.mailcoach.app' without the 'https://' prefix).", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Mailcoach API Token", "type": "string", "description": "The API token used for authenticating requests to the Mailcoach API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailercloud", "name": "Mailercloud", "logo": "https://logos.composio.dev/api/mailercloud", "description": "Powerful and simple all-in-one email marketing platform providing effective solutions for rapid business growth.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILERCLOUD_CREATE_LIST", "name": "Create List", "description": "Tool to create a new recipient list in Mailercloud for storing and managing contacts. Use when you need to create a new mailing list for organizing contacts." }, { "slug": "MAILERCLOUD_CREATE_PROPERTY", "name": "Create custom property", "description": "Create a custom property for contacts in Mailercloud. Custom properties store specific information for contact records. Maximum of 100 properties allowed per account." }, { "slug": "MAILERCLOUD_DELETE_PROPERTY", "name": "Delete Contact Property", "description": "Tool to delete a custom contact property by ID. Use when removing unused custom fields from contacts. Cannot delete properties used in webforms." }, { "slug": "MAILERCLOUD_GET_CLIENT_PLAN", "name": "Get Client Plan", "description": "Tool to retrieve client plan information from Mailercloud. Use when you need to check the current subscription status, plan details, or verify API connectivity." }, { "slug": "MAILERCLOUD_SEARCH_CONTACTS", "name": "Search Contacts in List", "description": "Tool to retrieve contacts in a specific list with pagination. Use when you need to list or search contacts within a known list ID." }, { "slug": "MAILERCLOUD_UPDATE_PROPERTY", "name": "Update Contact Property", "description": "Tool to update a custom property of contacts in Mailercloud. Use when you need to modify the name or description of an existing custom property. Note: Editing custom property type using this API is not possible - you can only edit the name and description." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailercloud_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in, and open up the User menu on the bottom-left, and navigate to \"Account\" > \"Integrations\" > \"API Integrations\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailersend", "name": "MailerSend", "logo": "https://logos.composio.dev/api/mailersend", "description": "MailerSend is a transactional email service designed for developers to integrate email sending capabilities into their applications.", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILERSEND_CREATE_DOMAIN", "name": "Create Sending Domain", "description": "Tool to add a new sending domain to MailerSend. Use when you need to register and configure a domain before sending emails." }, { "slug": "MAILERSEND_CREATE_SMTP_USER", "name": "Create SMTP User", "description": "Tool to create a new SMTP user. Use after domain setup to obtain SMTP credentials." }, { "slug": "MAILERSEND_CREATE_TOKEN", "name": "Create API Token", "description": "Creates a new API token with specified scopes (permissions) for a domain. The token allows programmatic access to MailerSend API endpoints based on granted scopes. WARNING: The token value is only displayed once upon creation and cannot be retrieved later." }, { "slug": "MAILERSEND_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for a MailerSend domain. Use after you have a domain ID and need to receive event notifications like sent, delivered, opened, etc." }, { "slug": "MAILERSEND_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook. Use when the webhook is no longer needed. Returns empty response on successful deletion (HTTP 204)." }, { "slug": "MAILERSEND_GET_API_QUOTA", "name": "Get API Quota", "description": "Tool to retrieve current API usage quota. Use when monitoring API rate limits to avoid exceeding allowed calls." }, { "slug": "MAILERSEND_GET_DOMAIN", "name": "Get Domain", "description": "Tool to retrieve detailed information about a specific sending domain in MailerSend. Returns domain verification status (DKIM, SPF, MX, tracking), settings (click/open tracking, paused status), and metadata (creation/update timestamps). Use this when you need to check if a domain is properly verified and configured for sending emails, or to review domain-specific tracking settings. Note: For detailed DNS record values, use the Get Domain DNS Records action." }, { "slug": "MAILERSEND_GET_DOMAIN_RECIPIENTS", "name": "List Domain Recipients", "description": "Tool to list recipients for a domain. Use after obtaining the domain ID to view recipients with optional pagination." }, { "slug": "MAILERSEND_GET_DOMAINS", "name": "Get sending domains", "description": "Retrieve a paginated list of all sending domains configured in your MailerSend account. Use this to: - View all domains available for sending emails - Check domain verification and DNS status - Filter by verification status to find verified or unverified domains - Review domain settings like tracking and sending preferences Returns domain details including verification status, DNS configuration, and tracking settings." }, { "slug": "MAILERSEND_GET_GENERAL_RESOURCES", "name": "Get general API resources", "description": "Tool to retrieve general API resources and information. Use when you need an overview of all MailerSend endpoints before constructing specific calls." }, { "slug": "MAILERSEND_GET_IDENTITIES", "name": "List Sender Identities", "description": "Retrieves a paginated list of sender identities configured in your MailerSend account. Sender identities are the email addresses or domains authorized to send emails through MailerSend. Each identity includes verification status, reply-to configuration, domain association, and optional personal notes. Use this tool to discover available sender identities before sending emails or to verify which identities are ready for use. Returns: Paginated list of identity objects with metadata including verification status, domain details, and navigation links for pagination." }, { "slug": "MAILERSEND_GET_MESSAGES", "name": "Get sent messages", "description": "Tool to retrieve a paginated list of sent messages. Use after sending emails to view message logs." }, { "slug": "MAILERSEND_GET_RECIPIENTS", "name": "Get email recipients", "description": "Tool to retrieve a list of email recipients. Use when you need to list and filter recipients by list ID or search term." }, { "slug": "MAILERSEND_GET_SMS_ACTIVITY", "name": "Get SMS Activity", "description": "Tool to retrieve SMS activity logs. Use when you need to fetch delivery status and logs of sent SMS messages." }, { "slug": "MAILERSEND_GET_SMS_INBOUNDS", "name": "Get SMS Inbounds", "description": "Retrieve inbound SMS route configurations. Inbound routes define rules for forwarding incoming SMS messages to webhook URLs based on message content filters. Use this action when you need to: - List all configured SMS inbound routes - Filter routes by SMS number or enabled status - Review webhook forwarding configurations and filter rules" }, { "slug": "MAILERSEND_GET_SMS_MESSAGES", "name": "List SMS Messages", "description": "Retrieves a paginated list of SMS messages sent through the MailerSend API. Returns message details including sender, recipients, content, status, and timestamps. Use this to review sent SMS messages and track their delivery status. Note: For detailed activity tracking with filters (date ranges, status, phone numbers), use the SMS Activity endpoint instead." }, { "slug": "MAILERSEND_GET_SMS_NUMBERS", "name": "Get SMS Numbers", "description": "Tool to retrieve a paginated list of SMS phone numbers. Use after purchasing numbers to fetch available SMS numbers." }, { "slug": "MAILERSEND_GET_SMS_RECIPIENTS", "name": "Get SMS recipients", "description": "Tool to retrieve a list of SMS recipients. Use when you need to list and paginate SMS recipients, optionally filtering by SMS number ID and/or recipient status." }, { "slug": "MAILERSEND_GET_SMTP_USERS", "name": "Get SMTP users", "description": "Tool to retrieve a list of SMTP users. Use when you need to list and paginate SMTP users." }, { "slug": "MAILERSEND_GET_TEMPLATES", "name": "Get email templates", "description": "Retrieves a paginated list of email templates from your MailerSend account. Use this tool when you need to: - List all available email templates - Filter templates by domain ID - Browse templates with pagination - Check template details like name, type, and creation date Returns template metadata including IDs, names, types, and timestamps. For full template content, use a separate get single template endpoint." }, { "slug": "MAILERSEND_GET_TOKENS", "name": "Get API Tokens", "description": "Retrieves a paginated list of API tokens associated with your MailerSend account. Returns token details including ID, name, status, creation date, and assigned scopes/permissions. Requires 'tokens_full' scope." }, { "slug": "MAILERSEND_GET_USERS", "name": "Get users", "description": "Tool to retrieve a list of users associated with your account. Use after authenticating with a valid API token." }, { "slug": "MAILERSEND_GET_WEBHOOKS", "name": "List webhooks", "description": "Tool to retrieve a list of webhooks. Use when you need to list and paginate all configured webhooks, optionally filtering by domain." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailersend_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MailerSend API Token", "type": "string", "description": "Your MailerSend API token used for authentication. You can generate or find this in your MailerSend dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailjet", "name": "Mailjet", "logo": "https://logos.composio.dev/api/mailjet", "description": "Mailjet is an all-in-one email platform for transactional and marketing email delivery with powerful APIs and SMTP relay.", "category": "transactional email", "authSchemes": [ "BASIC", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "mailjet_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key (Public)", "type": "string", "description": "Your Mailjet Public API Key. Get it from https://app.mailjet.com/account/api_keys", "required": true, "default": null }, { "name": "password", "displayName": "Secret Key (Private)", "type": "string", "description": "Your Mailjet Private Secret Key. Get it from https://app.mailjet.com/account/api_keys", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your Mailjet account region. Use \"global\" for default region or \"us\" if your account is on US infrastructure.", "required": false, "default": "global" } ] } } }, { "mode": "API_KEY", "name": "mailjet_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key for Mailjet SMS API v4 or Email API token. For SMS: Generate in SMS Dashboard. For Email: Create via /v1/REST/tokens endpoint.", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your Mailjet account region. Use \"global\" for default region or \"us\" if your account is on US infrastructure.", "required": false, "default": "global" } ] } } } ] }, { "slug": "mails_so", "name": "Mails.so", "logo": "https://logos.composio.dev/api/mails_so", "description": "Mails is an API service that provides powerful email validation capabilities to help maintain a clean and effective email list.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILS_SO_RETRIEVE_BATCH_RESULTS", "name": "Retrieve Batch Results", "description": "Tool to retrieve results of a bulk validation job. Use after submitting a batch and you have its ID." }, { "slug": "MAILS_SO_VALIDATE_BULK_EMAILS", "name": "Validate Bulk Emails", "description": "Tool to validate multiple email addresses in bulk. Use when you need to confirm deliverability of a list of emails at once." }, { "slug": "MAILS_SO_VALIDATE_SINGLE_EMAIL", "name": "Validate Single Email", "description": "Tool to validate a single email address. Use when you need to check deliverability and quality details before sending an email." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mails_so_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mails API Key", "type": "string", "description": "Your Mails API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailsoftly", "name": "Mailsoftly", "logo": "https://logos.composio.dev/api/mailsoftly", "description": "Mailsoftly is an intuitive email marketing platform designed to simplify and enhance how businesses communicate with their audiences. Built with user-friendly features and advanced automation tools, Mailsoftly helps organizations to create, schedule, and manage email campaigns easily.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILSOFTLY_ADD_CONTACT_TO_CONTACT_LIST", "name": "Add Contact to Contact List", "description": "Tool to add an existing contact to a specific contact list. Use when you need to add a contact to a contact list in Mailsoftly." }, { "slug": "MAILSOFTLY_ADD_CUSTOM_FIELD_TO_CONTACT", "name": "Add Custom Field to Contact", "description": "Tool to add a custom field value to an existing contact. Use when you need to store additional custom data on a contact record." }, { "slug": "MAILSOFTLY_ASSIGN_TAGS_TO_CONTACT", "name": "Assign Tags to Contact", "description": "Tool to assign multiple tags to an existing contact at once. Skips tags if they are already assigned to the contact. Use when you need to categorize or label a contact with one or more tags in Mailsoftly." }, { "slug": "MAILSOFTLY_AUTHENTICATE_FIRM", "name": "Authenticate Firm", "description": "Tool to validate the API key and retrieve firm details. Use when confirming credentials before making other Mailsoftly API calls." }, { "slug": "MAILSOFTLY_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact for the authenticated firm with email, first name, and last name. Use when adding new contacts to the firm's contact list." }, { "slug": "MAILSOFTLY_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Tool to create a new contact list for the authenticated firm. Use when organizing contacts into separate lists for targeted campaigns." }, { "slug": "MAILSOFTLY_CREATE_EMAILS", "name": "Create Email Drafts", "description": "Tool to create one or more email drafts in Mailsoftly. Use when drafting emails for campaigns or communications. If contact_list_id is not provided, the system automatically creates a contact list from the provided recipients." }, { "slug": "MAILSOFTLY_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Tool to create a new contact or update an existing contact in Mailsoftly. Use when you need to add a new contact to the system or update an existing contact's information. If contact_id is provided, the existing contact will be updated; otherwise, a new contact will be created." }, { "slug": "MAILSOFTLY_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID from Mailsoftly. Use when you need to fetch details about a specific contact. You can choose between basic or detailed view using the type parameter." }, { "slug": "MAILSOFTLY_GET_CONTACT_FIELDS", "name": "Get Contact Fields", "description": "Tool to fetch all contact fields available for a firm, excluding hidden columns. Use when you need to retrieve the list of available contact field names and their data types." }, { "slug": "MAILSOFTLY_GET_CONTACT_LIST", "name": "Get Contact List", "description": "Tool to retrieve details of a specific contact list by ID. Use when you need to fetch information about a contact list including its name and contact count." }, { "slug": "MAILSOFTLY_GET_CONTACT_LIST_CONTACTS", "name": "Get Contact List Contacts", "description": "Tool to retrieve all contacts within a specific contact list. Use when you need to fetch the members of a particular contact list." }, { "slug": "MAILSOFTLY_GET_CONTACT_LISTS", "name": "Get Contact Lists", "description": "Tool to retrieve all contact lists for the authenticated firm. Use when you need to view all available contact lists and their details." }, { "slug": "MAILSOFTLY_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve all contacts associated with a firm. Use when you need to fetch the complete list of contacts from Mailsoftly." }, { "slug": "MAILSOFTLY_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Tool to retrieve all custom fields defined for the authenticated firm. Use when you need to understand what custom field options are available for contacts in Mailsoftly." }, { "slug": "MAILSOFTLY_GET_EMAIL_STATUS", "name": "Get Email Status", "description": "Tool to fetch the status of a specific email draft by its ID. Use when checking if a draft is ready to send or to get its current status." }, { "slug": "MAILSOFTLY_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve all tags associated with the authenticated firm. Use when you need to list available tags for organizing contacts or campaigns." }, { "slug": "MAILSOFTLY_SEARCH_CONTACTS", "name": "Search Contacts", "description": "Tool to search for contacts matching specified criteria in Mailsoftly. Use when you need to find contacts by email, first name, or last name. At least one search parameter should be provided for meaningful results." }, { "slug": "MAILSOFTLY_SEND_EMAIL", "name": "Send Email", "description": "Tool to send an existing email draft that is marked as ready. Use when you need to send a prepared email draft via Mailsoftly." }, { "slug": "MAILSOFTLY_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's information in Mailsoftly. Use when you need to modify contact details such as name or email address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mailsoftly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mailsoftly API Key", "type": "string", "description": "The API key generated from your Mailsoftly account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mailtrap", "name": "Mailtrap", "logo": "https://logos.composio.dev/api/mailtrap", "description": "Email Delivery Platform for testing and sending transactional emails", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 49, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAILTRAP_CLEAN_INBOX", "name": "Clean Inbox", "description": "Tool to clean an inbox in Mailtrap by deleting all messages. Use when you need to remove all emails from an inbox while keeping the inbox itself." }, { "slug": "MAILTRAP_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Mailtrap. Use when you need to add a contact with an email address to a Mailtrap account. Optionally include custom fields and assign to contact lists." }, { "slug": "MAILTRAP_CREATE_CONTACT_EVENT", "name": "Create Contact Event", "description": "Tool to create a contact event in Mailtrap. Use when you need to track custom events associated with a contact for segmentation or automation triggers." }, { "slug": "MAILTRAP_CREATE_CONTACT_EXPORT", "name": "Create Contact Export", "description": "Tool to create a contact export job for a Mailtrap account. Use when you need to export contacts with filters. The export is processed asynchronously - the response includes a job ID and status. Check the status field; when it becomes 'finished', the url field will contain the download link for the exported contacts file. Filters are required - you must specify at least one filter such as subscription_status (subscribed/unsubscribed) or list_id (array of list IDs)." }, { "slug": "MAILTRAP_CREATE_CONTACT_FIELD", "name": "Create Contact Field", "description": "Tool to create a custom contact field in Mailtrap. Use when you need to add new contact attributes for personalization and segmentation in email campaigns." }, { "slug": "MAILTRAP_CREATE_CONTACT_LIST", "name": "Create Contact List", "description": "Tool to create a new contact list in Mailtrap. Use when you need to organize contacts into groups or segments. Each contact list has a unique ID and name that can be used to add contacts to it later." }, { "slug": "MAILTRAP_CREATE_EMAIL_TEMPLATE", "name": "Create Email Template", "description": "Tool to create a new email template in Mailtrap account. Use when you need to create a reusable email template with HTML/text content, subject, and category. The template can be used for sending promotional, transactional, or newsletter emails." }, { "slug": "MAILTRAP_CREATE_SENDING_DOMAIN", "name": "Create Sending Domain", "description": "Tool to create a new sending domain in Mailtrap. Use when you need to register a domain for sending transactional emails. After creation, DNS records must be configured before the domain can be used for sending." }, { "slug": "MAILTRAP_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact from a Mailtrap account. Use when you need to permanently remove a contact by their UUID or email address. The deletion is permanent and cannot be undone." }, { "slug": "MAILTRAP_DELETE_CONTACT_FIELD", "name": "Delete Contact Field", "description": "Tool to delete a contact field by its ID. Use when you need to remove a custom contact field from an account." }, { "slug": "MAILTRAP_DELETE_CONTACT_LIST", "name": "Delete Contact List", "description": "Tool to delete a contact list by its ID. Use when you need to remove a contact list from an account." }, { "slug": "MAILTRAP_DELETE_EMAIL_TEMPLATE", "name": "Delete Email Template", "description": "Tool to delete an email template from a Mailtrap account. Use when you need to remove an existing email template." }, { "slug": "MAILTRAP_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from Mailtrap. Use when you need to permanently remove a project and its associated resources. Returns the ID of the deleted project." }, { "slug": "MAILTRAP_DELETE_SENDING_DOMAIN", "name": "Delete Sending Domain", "description": "Tool to delete a sending domain from a Mailtrap account. Use when you need to remove a domain permanently." }, { "slug": "MAILTRAP_GET_BILLING_USAGE", "name": "Get Billing Usage", "description": "Tool to retrieve current billing cycle usage for an account. Use when you need to check billing information, usage limits, or consumption for Email Sandbox and Email Sending services." }, { "slug": "MAILTRAP_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a contact by UUID or email address from Mailtrap. Use when you need to fetch details of a specific contact including their subscription status, lists, and custom fields." }, { "slug": "MAILTRAP_GET_CONTACT_EXPORT", "name": "Get Contact Export", "description": "Tool to retrieve the status of a contact export. Use when you need to check the progress of an export or download the exported contacts file." }, { "slug": "MAILTRAP_GET_CONTACT_FIELD", "name": "Get Contact Field", "description": "Tool to retrieve contact field details by field ID. Use when you need to get information about a specific custom field in your contacts." }, { "slug": "MAILTRAP_GET_CONTACT_IMPORT", "name": "Get Contact Import Status", "description": "Tool to retrieve the status of a contact import operation. Use when you need to check the progress or completion status of a contact import. Use after initiating a contact import to monitor its status and retrieve statistics once finished." }, { "slug": "MAILTRAP_GET_CONTACT_LIST", "name": "Get Contact List", "description": "Tool to retrieve a specific contact list by its ID. Use when you need to fetch details about a contact list in a Mailtrap account." }, { "slug": "MAILTRAP_GET_EMAIL_TEMPLATE", "name": "Get Email Template", "description": "Tool to retrieve details of a specific email template by ID. Use when you need to fetch template content, metadata, or configuration for an existing email template." }, { "slug": "MAILTRAP_GET_INBOX", "name": "Get Inbox Attributes", "description": "Tool to retrieve inbox attributes from Mailtrap. Use when you need to get details about a specific inbox including its configuration, statistics, and permissions." }, { "slug": "MAILTRAP_GET_MESSAGE_HTML", "name": "Get Message HTML Body", "description": "Tool to retrieve the HTML body of a message from Mailtrap. Use when you need to get the formatted HTML content of a specific email message." }, { "slug": "MAILTRAP_GET_PERMISSION_RESOURCES", "name": "Get Permission Resources", "description": "Tool to retrieve all resources in account for permission management. Use when you need to see the hierarchical structure of projects, inboxes, and other resources with their access levels for the current authentication token." }, { "slug": "MAILTRAP_GET_PROJECT", "name": "Get Project by ID", "description": "Tool to retrieve project details from Mailtrap by project ID. Use when you need to get information about a specific project including its inboxes, permissions, and share links." }, { "slug": "MAILTRAP_GET_SENDING_DOMAIN", "name": "Get Sending Domain", "description": "Tool to retrieve sending domain details from Mailtrap. Use when you need to check domain configuration, DNS verification status, or tracking settings." }, { "slug": "MAILTRAP_GET_SENDING_STATS", "name": "Get Sending Stats", "description": "Tool to retrieve email sending statistics from Mailtrap for a specific account. Use when you need metrics like delivery rate, bounce rate, open rate, click rate, and spam rate for a date range." }, { "slug": "MAILTRAP_GET_SENDING_STATS_BY_CATEGORIES", "name": "Get Sending Stats by Categories", "description": "Tool to retrieve email sending statistics grouped by categories. Use when you need to analyze email performance metrics (delivery, bounce, open, click, spam rates) segmented by email categories within a date range." }, { "slug": "MAILTRAP_GET_SENDING_STATS_BY_DATE", "name": "Get Sending Stats by Date", "description": "Tool to retrieve email sending statistics aggregated by date. Use when you need to analyze email delivery performance, bounce rates, open rates, click rates, and spam rates for a specific date range." }, { "slug": "MAILTRAP_GET_SENDING_STATS_BY_DOMAINS", "name": "Get Sending Stats by Domains", "description": "Tool to retrieve sending statistics grouped by domains for a Mailtrap account. Use when you need email delivery, bounce, open, click, and spam metrics broken down by sending domain for a specific date range. Supports filtering by domain IDs, sending streams, categories, and email service providers." }, { "slug": "MAILTRAP_GET_SENDING_STATS_BY_ESP", "name": "Get Sending Stats by ESP", "description": "Tool to retrieve email sending statistics grouped by email service providers (ESPs) for a specified date range. Returns delivery, bounce, open, click, and spam metrics for each ESP. Use when you need to analyze email performance across different email providers like Google, Yahoo, Microsoft, etc." }, { "slug": "MAILTRAP_IMPORT_CONTACTS", "name": "Import Contacts", "description": "Tool to import contacts in bulk to Mailtrap. Use when you need to add or update multiple contacts at once. The import operation is asynchronous and returns a job ID that can be used to check the status later." }, { "slug": "MAILTRAP_LIST_ACCOUNTS", "name": "List Accounts", "description": "Tool to list all Mailtrap accounts you have access to. Use when you need to retrieve account information or get account IDs for other operations. Returns account ID, name, and access levels (1000=owner, 100=admin, 10=viewer)." }, { "slug": "MAILTRAP_LIST_CONTACT_FIELDS", "name": "List Contact Fields", "description": "Tool to get all contact fields for a Mailtrap account. Use when you need to retrieve custom field definitions for contacts." }, { "slug": "MAILTRAP_LIST_CONTACT_LISTS", "name": "List Contact Lists", "description": "Tool to retrieve all contact lists for a Mailtrap account. Use when you need to view available contact lists or obtain contact list IDs for other operations." }, { "slug": "MAILTRAP_LIST_EMAIL_TEMPLATES", "name": "List Email Templates", "description": "Tool to retrieve all email templates for a Mailtrap account. Use when you need to list available templates, browse template configurations, or find a specific template by name or attributes." }, { "slug": "MAILTRAP_LIST_INBOXES", "name": "List Inboxes", "description": "Tool to get a list of inboxes for a Mailtrap account. Use when you need to retrieve all inboxes associated with an account ID. Returns the list of inboxes with their configuration, permissions, and statistics." }, { "slug": "MAILTRAP_LIST_MESSAGES", "name": "List Messages in Inbox", "description": "Tool to get messages from a Mailtrap inbox. Use when you need to retrieve emails from a specific inbox, with support for search filtering and pagination. Returns up to 30 messages per request." }, { "slug": "MAILTRAP_LIST_PROJECTS", "name": "List Projects", "description": "Tool to get a list of projects for a Mailtrap account. Use when you need to retrieve all projects and their associated inboxes for a specific account. Returns project attributes, permissions, and nested inbox information." }, { "slug": "MAILTRAP_LIST_SENDING_DOMAINS", "name": "List Sending Domains", "description": "Tool to list all sending domains for a Mailtrap account. Use when you need to retrieve configured domains for email sending." }, { "slug": "MAILTRAP_LIST_SUPPRESSIONS", "name": "List Email Suppressions", "description": "Tool to list suppressed email addresses for a Mailtrap account. Use when you need to view which emails are blocked from receiving messages due to bounces, complaints, unsubscribes, or manual suppression." }, { "slug": "MAILTRAP_MARK_INBOX_AS_READ", "name": "Mark Inbox as Read", "description": "Tool to mark all messages in a Mailtrap inbox as read. Use when you need to mark all unread messages as read in a specific inbox." }, { "slug": "MAILTRAP_RESET_INBOX_CREDENTIALS", "name": "Reset Inbox Credentials", "description": "Tool to reset SMTP credentials for a Mailtrap inbox. Use when you need to regenerate the username and password for inbox access." }, { "slug": "MAILTRAP_UPDATE_CONTACT", "name": "Update contact", "description": "Tool to update an existing contact in Mailtrap. Use when you need to modify contact details such as email, custom fields, list memberships, or subscription status. If the contact doesn't exist, it will be created." }, { "slug": "MAILTRAP_UPDATE_CONTACT_FIELD", "name": "Update Contact Field", "description": "Tool to update a contact field in Mailtrap. Use when you need to modify the name or merge tag of an existing contact field." }, { "slug": "MAILTRAP_UPDATE_CONTACT_LIST", "name": "Update Contact List", "description": "Tool to update a contact list's name in Mailtrap. Use when you need to rename an existing contact list." }, { "slug": "MAILTRAP_UPDATE_EMAIL_TEMPLATE", "name": "Update Email Template", "description": "Tool to update an existing email template in Mailtrap account. Use when you need to modify template properties such as name, subject, category, HTML body, or plain text body. All fields in the email_template object are optional - only provide the fields you want to update." }, { "slug": "MAILTRAP_UPDATE_INBOX", "name": "Update inbox", "description": "Tool to update an inbox's settings in Mailtrap. Use when you need to change the inbox name or email username." }, { "slug": "MAILTRAP_UPDATE_PROJECT", "name": "Update project", "description": "Tool to update a project's name in Mailtrap. Use when you need to rename an existing project." } ], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "mailtrap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Sign in and copy your API Token directly from your dashboard under Settings > API Tokens (https://mailtrap.io/api-tokens)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "make", "name": "Make", "logo": "https://logos.composio.dev/api/make", "description": "Make is a platform that allows users to automate workflows by connecting various apps and services.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAKE_CREATE_ORGANIZATIONS", "name": "Create Organization", "description": "Tool to create a new organization in Make. Use when you need to set up a new organization with specific region, timezone, and country settings." }, { "slug": "MAKE_CREATE_USERS_PASSWORD_RESET_DEMAND", "name": "Create Password Reset Demand", "description": "Tool to create a password reset demand for a user by their email address. Use when a user needs to reset their password and you want to trigger a password reset email." }, { "slug": "MAKE_GET_CASHIER_PRICES", "name": "Get Cashier Prices", "description": "Tool to retrieve a specific cashier price by its identifier. Returns pricing details including product ID, price value, currency, billing period, and configuration limits (operations, data store, transfers)." }, { "slug": "MAKE_GET_CASHIER_PRODUCTS", "name": "Get Cashier Products", "description": "Tool to retrieve available cashier products from Make. Use when you need to discover available subscription plans, add-ons, or pricing options for organizations." }, { "slug": "MAKE_GET_CURRENT_AUTHORIZATION", "name": "Get Current Authorization", "description": "Tool to retrieve current authorization details for the authenticated user. Returns permission scopes and authentication method used. Use after authentication to verify token capabilities." }, { "slug": "MAKE_GET_ENUMS_APPS_REVIEW_STATUSES", "name": "Get Enums Apps Review Statuses", "description": "Tool to retrieve available app review statuses in Make. Use when you need to understand valid status values for app review workflows." }, { "slug": "MAKE_GET_ENUMS_IMT_REGIONS", "name": "Get Enums IMT Regions", "description": "Tool to retrieve the list of Make regions and their regionId values. Use when you need to get valid region identifiers for creating organizations." }, { "slug": "MAKE_GET_ENUMS_IMT_ZONES", "name": "Get Enums IMT Zones", "description": "Tool to retrieve available IMT zones in Make. Use when you need to get valid zone IDs for creating organizations via POST /organizations." }, { "slug": "MAKE_GET_ENUMS_LLM_MODELS", "name": "Get Enums LLM Models", "description": "Tool to retrieve available Large Language Models from Make. Use when you need to get the list of supported LLM models for AI mapping or toolkit configurations." }, { "slug": "MAKE_GET_ENUMS_MODULE_TYPES", "name": "Get Enums Module Types", "description": "Tool to retrieve available module types in Make. Use when you need to get valid module type values for scenarios or filtering modules." }, { "slug": "MAKE_GET_ENUMS_ORGANIZATION_FEATURES", "name": "Get Enums Organization Features", "description": "Tool to retrieve available organization features in Make. Use when you need to get valid feature values for managing organizations." }, { "slug": "MAKE_GET_ENUMS_USER_API_TOKEN_SCOPES", "name": "Get Enums User API Token Scopes", "description": "Tool to retrieve all available API token scopes in Make. Use when you need to get valid scope options for creating or managing API tokens." }, { "slug": "MAKE_GET_ENUMS_USER_EMAIL_NOTIFICATIONS", "name": "Get Enums User Email Notifications", "description": "Tool to retrieve available email notification types for Make users. Use when you need to get valid notification settings or populate notification preference selectors." }, { "slug": "MAKE_GET_ENUMS_USER_FEATURES", "name": "Get Enums User Features", "description": "Retrieve the list of all existing user features and their descriptions. Returns an array of user features, each containing a human-readable title and a feature identifier. Use this to discover available user features in Make." }, { "slug": "MAKE_GET_ENUMS_VARIABLE_TYPES", "name": "Get Enums Variable Types", "description": "Tool to retrieve available variable types in Make. Use when you need to get valid variable type options for creating or managing data stores and variables." }, { "slug": "MAKE_GET_OPERATIONS", "name": "Get Operations", "description": "Retrieve daily operations usage for an organization over the past 30 days. Returns operations count, data transfer (bytes), and centicredits consumption per day. Use List Organizations first to get the organization_id." }, { "slug": "MAKE_GET_TEAM", "name": "Get Team", "description": "Retrieve detailed information about a specific team by its ID. Returns comprehensive team data including member counts, resource usage, and license details. Use this action when you need to get full details about a specific team (distinct from listing all teams in an organization)." }, { "slug": "MAKE_GET_USERS_ME", "name": "Get Current User", "description": "Tool to retrieve information about the current authenticated user. Use when you need to get user details such as ID, name, email, timezone, and support eligibility." }, { "slug": "MAKE_LIST_ENUMS_COUNTRIES", "name": "List Enums Countries", "description": "Retrieve all supported countries in Make. Returns a list of countries with their IDs, full names, 3-letter ISO codes, and 2-letter ISO codes. Use this to get valid country values for creating or updating organizations, users, or any other resources that require country selection." }, { "slug": "MAKE_LIST_ENUMS_LANGUAGES", "name": "List Enums Languages", "description": "Tool to retrieve a list of language codes and names. Use when you need to populate language selectors after authentication. Response may be large; filter to only needed language codes before passing downstream." }, { "slug": "MAKE_LIST_ENUMS_LLM_BUILTIN_TIERS", "name": "List Enums LLM Builtin Tiers", "description": "Retrieve all predefined LLM tiers (small, medium, large) with their associated models, providers, and pricing coefficients. Use when configuring AI mapping or AI toolkit settings with builtin tier information." }, { "slug": "MAKE_LIST_ENUMS_LOCALES", "name": "List Enums Locales", "description": "Retrieve all supported locales in Make. Returns a list of locales with their IDs, display names, standard locale codes, and Angular-compatible codes. Use this to get valid locale values for configuring user preferences and internationalization settings across the Make platform." }, { "slug": "MAKE_LIST_ENUMS_TIMEZONES", "name": "List Enums Timezones", "description": "Retrieve all supported timezones in Make. Returns a list of timezones with their IDs, display names (including GMT offset), IANA timezone codes, and UTC offsets. Use this to get valid timezone values for creating or updating organizations, users, or scenarios that require timezone settings." }, { "slug": "MAKE_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list organizations the authenticated user belongs to (including organizationId, name, and timezoneId). Use when you need to discover organizations immediately after authentication to establish correct org context for subsequent scenario listing and management." }, { "slug": "MAKE_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams within an organization. Use when you need to discover teams for managing scenarios and resources within an organization context." }, { "slug": "MAKE_PING_API", "name": "Ping API", "description": "Tool to ping the Make API to verify connectivity and service availability. Use when you need to check if the Make API is accessible and operational before performing other operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "make_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Make instance base URL (e.g., https://us2.make.com, https://eu1.make.com, https://us1.make.celonis.com). Find this in your browser when logged into Make.", "required": true, "default": "https://us2.make.com" }, { "name": "bearer_token", "displayName": "Make API Token", "type": "string", "description": "The API token used for authenticating requests to the Make API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "manus", "name": "Manus", "logo": "https://logos.composio.dev/api/manus", "description": "AI-powered task automation and workflow management platform", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MANUS_CREATE_FILE", "name": "Create File", "description": "Tool to create a file record and obtain a presigned URL for uploading file content to S3. Use when you need to upload a file to Manus. After calling this action, use the returned upload_url with a PUT request to upload the actual file content. The upload URL expires at the timestamp specified in upload_expires_at." }, { "slug": "MANUS_CREATE_PROJECT", "name": "Create New Project", "description": "Tool to create a new project with default instructions. Projects organize tasks and apply consistent instructions across multiple task creations via the project_id parameter. Use when you need to set up a new project workspace for organizing related tasks." }, { "slug": "MANUS_CREATE_TASK", "name": "Create New Task", "description": "Creates a new AI task with custom parameters, attachments, and optional connectors. Supports multi-turn conversations by specifying taskId for continuation. Use when you want to create a new task for the Manus agent to execute." }, { "slug": "MANUS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to register a webhook to receive real-time task notifications. Use when you need to set up real-time notifications for task events such as task_created, task_progress, and task_stopped. The webhook URL must be accessible over HTTPS and will receive POST requests with task event data in JSON format." }, { "slug": "MANUS_DELETE_FILE", "name": "Delete a file", "description": "Deletes a file by ID. This removes both the file record and the file from S3 storage. Use when you need to remove a previously uploaded file from the Manus platform." }, { "slug": "MANUS_DELETE_TASK", "name": "Delete task", "description": "Permanently delete a task by its ID. This action cannot be undone. Use this action when you want to permanently remove a task from the system." }, { "slug": "MANUS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Removes a webhook subscription. This is a destructive operation that permanently removes the webhook. Use when you need to delete an existing webhook that is no longer needed." }, { "slug": "MANUS_GET_FILE", "name": "Get file details", "description": "Retrieves details of a specific file by ID, including its status and metadata. Use this to get information about a previously uploaded file such as its name, current status (pending, uploaded, or deleted), and creation timestamp." }, { "slug": "MANUS_GET_TASK", "name": "Get Task", "description": "Retrieves details of a specific task by ID, including status, output messages, credit usage, and metadata. Use this action to check the current status of a task and retrieve its results after it has been submitted. Example: Get the details of task with ID \"Y7BNH7rfCVjxMQjU98R2wq\"." }, { "slug": "MANUS_GET_WEBHOOK_PUBLIC_KEY", "name": "Get Webhook Public Key", "description": "Retrieves the RSA public key used for verifying webhook signatures. Use this key to validate that webhook requests genuinely came from Manus. This is essential for security - always verify webhook signatures before processing the payload." }, { "slug": "MANUS_LIST_FILES", "name": "List uploaded files", "description": "Retrieves a list of the 10 most recently uploaded files. Use this action to get information about files that have been uploaded to the Manus platform, including their IDs, filenames, creation timestamps, and status." }, { "slug": "MANUS_LIST_PROJECTS", "name": "List Projects", "description": "Retrieve a list of all projects in your account with optional pagination. Use this action when you need to get all projects to find a specific project ID or to see all available projects." }, { "slug": "MANUS_LIST_TASKS", "name": "List tasks", "description": "Retrieves a list of tasks with optional filtering and pagination. Allows searching, filtering by status, and sorting by creation or update time. Use this action to fetch multiple tasks at once, optionally filtered by status, project, search query, or time range. Supports pagination via 'after' cursor and sorting via 'order' and 'order_by' parameters." }, { "slug": "MANUS_UPDATE_TASK", "name": "Update Task", "description": "Updates a task's metadata such as title, sharing settings, and visibility in the task list. Use when you need to modify an existing task's properties like its title, enable or disable public sharing, or change its visibility in the task list." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "manus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API key from https://manus.im/app?show_settings=integrations&app_name=api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "many_chat", "name": "ManyChat", "logo": "https://logos.composio.dev/api/many_chat", "description": "ManyChat is a platform that enables businesses to automate interactive conversations across various messaging channels, including Instagram Direct Messages, Facebook Messenger, and SMS, to enhance customer engagement and drive growth.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "manychat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ManyChat API Key", "type": "string", "description": "The API Key used for authenticating requests to the ManyChat API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mapbox", "name": "Mapbox", "logo": "https://logos.composio.dev/api/mapbox", "description": "Mapbox is a platform that provides mapping, navigation, and location data services for developers to integrate into their applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "MAPBOX_GEOCODE_BATCH_V6", "name": "Batch Geocode V6", "description": "Tool to perform batch geocoding with up to 1000 queries in a single request. Use when you need to geocode multiple locations efficiently (forward, reverse, or structured). Supports mixing query types in the same batch." }, { "slug": "MAPBOX_GEOCODE_FORWARD_V5", "name": "Forward Geocode V5", "description": "Tool to search for places by name or address using Mapbox Geocoding v5 API (forward geocoding). Use when you need to convert place names or addresses to geographic coordinates using the v5 endpoint." }, { "slug": "MAPBOX_GEOCODING_BATCH", "name": "Batch Geocoding", "description": "Tool to perform batch forward or reverse geocoding for multiple locations. Use when you need consistent geocoding of up to 50 queries in one call." }, { "slug": "MAPBOX_GEOCODING_FORWARD", "name": "Forward Geocoding", "description": "Tool to convert free-form or structured address into geographic coordinates and place features. Use when you need forward geocoding from text or address components." }, { "slug": "MAPBOX_GEOCODING_PERMANENT_FORWARD", "name": "Permanent Forward Geocoding", "description": "Tool to perform permanent forward geocoding. Use when you need enterprise-grade permanent geocoding after confirming account privileges." }, { "slug": "MAPBOX_GEOCODING_PERMANENT_REVERSE", "name": "Permanent Reverse Geocoding", "description": "Tool to perform permanent reverse geocoding. Use after obtaining coordinates to get cacheable place data. Example: lon=-73.989, lat=40.733" }, { "slug": "MAPBOX_GEOCODING_REVERSE", "name": "Reverse Geocoding", "description": "Tool to reverse geocode coordinates into place names. Use after obtaining coordinates." }, { "slug": "MAPBOX_GET_ACCESS_TOKEN", "name": "Get Access Token", "description": "Tool to extract and validate Mapbox access token from connection metadata. Use when you need a valid token for downstream actions." }, { "slug": "MAPBOX_GET_ISOCHRONE", "name": "Get Isochrone", "description": "Tool to calculate areas reachable within a specified amount of time or distance from a location. Use when you need to visualize travel time or distance zones for routing analysis." }, { "slug": "MAPBOX_GET_MAP_MATCHING", "name": "Get Map Matching", "description": "Tool to snap fuzzy GPS traces to roads on the road network. Use when you need to clean up inaccurate location traces for display or analysis." }, { "slug": "MAPBOX_GET_OPTIMIZATION_V1", "name": "Get Optimization V1", "description": "Tool to calculate optimal driving routes and trips that visit a set of waypoints. Use when you need to find the best order to visit multiple locations with optimized routing." }, { "slug": "MAPBOX_GET_SPRITE", "name": "Get Sprite", "description": "Tool to retrieve a sprite image or its JSON document from a Mapbox style. Use when you need sprite assets for rendering map icons. Sprites are collections of small icons used in map styles. The JSON format returns metadata about icon positions and dimensions within the sprite sheet, while the PNG format returns the actual image. Sprite sheets optimize performance by combining multiple icons into a single image." }, { "slug": "MAPBOX_GET_STATIC_IMAGE", "name": "Get Static Image", "description": "Request a static map image from a Mapbox Studio style. Returns a PNG or JPEG image of the specified map area with customizable parameters including location, zoom level, camera angle, and optional overlays like markers or GeoJSON features. Use when you need to generate static map images for embedding in documents, emails, or web pages without interactive map functionality." }, { "slug": "MAPBOX_GET_STATIC_TILES", "name": "Get Static Tiles", "description": "Tool to retrieve raster tiles from a Mapbox Studio style. Use when you need map tiles for specific coordinates and zoom levels. Returns PNG or JPG raster tiles that can be assembled to create map visualizations. Tiles follow the XYZ tiling scheme where the world is divided into a grid at each zoom level. Supports retina/high-DPI displays via the @2x suffix." }, { "slug": "MAPBOX_GET_TOKEN", "name": "Get Token Information", "description": "Tool to retrieve information about a Mapbox access token and validate its status. Use when you need to check token validity or retrieve token metadata." }, { "slug": "MAPBOX_GET_VECTOR_TILES", "name": "Get Vector Tiles", "description": "Tool to retrieve vector tiles from Mapbox-hosted vector tilesets. Use when you need tile data for mapping applications at specific zoom levels and coordinates." }, { "slug": "MAPBOX_POST_MAP_MATCHING", "name": "Map Matching (POST)", "description": "Tool to snap GPS coordinates to the road network using POST method for longer coordinate lists. Use when you have GPS traces to match to roads (2-100 coordinates)." }, { "slug": "MAPBOX_QUERY_TILE_FEATURES", "name": "Query Tile Features", "description": "Tool to retrieve data about specific features from vector tilesets based on a location. Use when you need to query tileset features at a geographic point, such as finding buildings, roads, or points of interest near coordinates." }, { "slug": "MAPBOX_REQUEST_STYLE_EMBED_HTML", "name": "Request Style Embed HTML", "description": "Retrieve embeddable HTML for a Mapbox style that can be embedded in an iframe. Returns a complete HTML document with Mapbox GL JS code that renders an interactive map with the specified style. Useful for quickly embedding Mapbox maps into web pages without custom JavaScript code." }, { "slug": "MAPBOX_RETRIEVE_DIRECTIONS", "name": "Retrieve Directions", "description": "Tool to retrieve directions between waypoints. Use when you need navigation routes with optional turn-by-turn instructions after confirming origin and destination." }, { "slug": "MAPBOX_RETRIEVE_FONT_GLYPH_RANGES", "name": "Retrieve Font Glyph Ranges", "description": "Tool to retrieve font glyph ranges as PBF tiles. Use when you have confirmed the font name, codepoint range, and valid token." }, { "slug": "MAPBOX_RETRIEVE_MARKER", "name": "Retrieve Marker", "description": "Tool to retrieve a standalone marker image without any background map. Returns a PNG image file of the specified marker type. Use when you need to obtain marker icons for display or reference purposes." }, { "slug": "MAPBOX_RETRIEVE_MATRIX", "name": "Retrieve Matrix", "description": "Retrieve a travel time and distance matrix between multiple locations. Use this tool when you need to calculate travel times and/or distances between many origin-destination pairs efficiently (e.g., comparing routes from multiple starting points to multiple destinations, finding the nearest location from a set, or optimizing multi-stop routing). Returns matrices showing durations (in seconds) and distances (in meters) between all coordinate pairs." }, { "slug": "MAPBOX_RETRIEVE_SEARCHBOX_PLACE", "name": "Retrieve Searchbox Place Details", "description": "Tool to retrieve full details for a specific place by its Mapbox ID. Use when you have a mapbox_id from a search suggestion and need complete place information." }, { "slug": "MAPBOX_RETRIEVE_STYLE", "name": "Retrieve Style", "description": "Retrieves the complete Mapbox style specification as JSON, including all layers, sources, sprites, and configuration. A Mapbox style defines how a map is rendered, including data sources, layer styling, fonts, and sprites. This action returns the full style specification conforming to the Mapbox Style Specification, which can be used with Mapbox GL JS, mobile SDKs, or for analyzing map configurations. Use this action when you need to: - Inspect or analyze a map style's configuration - Retrieve style definitions for programmatic rendering - Examine layers, sources, and styling rules - Get complete style specifications for custom map implementations" }, { "slug": "MAPBOX_RETRIEVE_STYLE_WMTS", "name": "Retrieve Style WMTS", "description": "Retrieve a WMTS (Web Map Tile Service) capabilities document for a Mapbox style. This action returns an OGC-compliant WMTS XML document that describes how to access map tiles for the specified style. The document includes tile matrix sets, supported coordinate systems (EPSG:3857), and tile URL templates. Use this when integrating Mapbox styles with desktop GIS applications (ArcGIS, QGIS, CARTO, Tableau) or any WMTS-compliant mapping client. The WMTS endpoint works with both Mapbox's official styles (e.g., streets-v12, satellite-v9) and custom styles created in Mapbox Studio." }, { "slug": "MAPBOX_RETRIEVE_TILESET_METADATA", "name": "Retrieve Tileset Metadata", "description": "Tool to retrieve metadata for a Mapbox tileset. Use when you need TileJSON details including bounds, zooms, and layer info." }, { "slug": "MAPBOX_REVERSE_GEOCODE_V6", "name": "Reverse Geocoding V6", "description": "Tool to convert geographic coordinates to place names using Geocoding v6 API. Use when you need to perform reverse geocoding from latitude/longitude coordinates." }, { "slug": "MAPBOX_REVERSE_SEARCHBOX", "name": "Search Box Reverse Geocoding", "description": "Tool to convert coordinates to places using the Search Box API (reverse geocoding). Use when you need to find place names, addresses, or points of interest for given coordinates." }, { "slug": "MAPBOX_SEARCH_BOX_FORWARD", "name": "Search Box Forward", "description": "Tool to search for places by name or address using the Search Box API. Use when you need to find locations, addresses, or points of interest based on a text query." }, { "slug": "MAPBOX_SEARCH_CATEGORY", "name": "Search by Category", "description": "Tool to search for places by category (e.g., restaurants, hotels, coffee shops). Use when you need to find POIs in a specific category, optionally filtered by location, bounding box, or proximity." }, { "slug": "MAPBOX_SUGGEST_SEARCHBOX", "name": "Search Box Suggest", "description": "Tool to get autocomplete suggestions for a partial search query. Use when you need address or place suggestions as users type, before retrieving full details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mapbox_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Mapbox Access Token", "type": "string", "description": "Your Mapbox access token used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mapulus", "name": "Mapulus", "logo": "https://logos.composio.dev/api/mapulus", "description": "Mapulus is a platform that enables users to create, manage, and analyze interactive maps, integrating with various applications to automate tasks and leverage location insights.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAPULUS_FIND_LOCATION_WITH_EXTERNAL_ID", "name": "Find Location by External ID", "description": "Find locations by their external identifier. Returns a list of locations that match the provided external_id. External IDs are unique identifiers used for integrating Mapulus with external systems (CRM, databases, etc.). Returns an empty list if no matching locations are found." }, { "slug": "MAPULUS_GET_MAP_DETAILS", "name": "Get Map Details", "description": "Tool to retrieve detailed information about a map. Use when you have a map_id and need full map metadata." }, { "slug": "MAPULUS_LIST_MAPS", "name": "List Maps", "description": "Retrieves a paginated list of all maps accessible to the authenticated user. Supports filtering by name/tag and sorting by various fields. Returns map metadata including IDs, titles, and timestamps. Use this to discover available maps before fetching detailed information or locations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mapulus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mapulus API Key", "type": "string", "description": "The API key generated from your Mapulus account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "marketing_master_io", "name": "Marketing Master Io", "logo": "https://logos.composio.dev/api/marketing_master_io", "description": "Essential Digital Marketing Tools - For Less", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "marketing_master_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your Marketing Master IO account, go to My Account > API Access Token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "marketstack", "name": "Marketstack", "logo": "https://logos.composio.dev/api/marketstack", "description": "Stock Data Real-Time, Intraday & Historical Market Data API providing access to 125,000+ tickers across 72+ stock exchanges worldwide", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MARKETSTACK_GET_DIVIDENDS", "name": "Get Dividends", "description": "Tool to retrieve stock dividend data for one or more ticker symbols from Marketstack API. Use when you need historical dividend payment information for stocks, including dividend amounts and payment dates." }, { "slug": "MARKETSTACK_GET_EOD", "name": "Get End-of-Day Data", "description": "Tool to retrieve end-of-day (EOD) stock data for one or multiple ticker symbols. Returns OHLCV data (open, high, low, close, volume) along with adjusted prices, dividends, and split factors. Use when you need historical daily stock prices or market data analysis." }, { "slug": "MARKETSTACK_GET_EXCHANGE", "name": "Get Exchange Info", "description": "Tool to retrieve detailed information for a specific stock exchange by its MIC (Market Identifier Code). Use when you need comprehensive information about an exchange including its location, status, and operational details." }, { "slug": "MARKETSTACK_GET_EXCHANGE_INTRADAY", "name": "Get Exchange Intraday Data", "description": "Tool to retrieve intraday stock data for symbols on a specific stock exchange (by MIC) at a chosen interval. Use when you need intraday prices scoped to a particular exchange." }, { "slug": "MARKETSTACK_GET_EXCHANGE_INTRADAY_DATE", "name": "Get Exchange Intraday Data for Date", "description": "Tool to retrieve intraday stock data for symbols on a specific stock exchange (by MIC) for a specific date. Use when you need the intraday series for a particular exchange and trading day." }, { "slug": "MARKETSTACK_GET_EXCHANGE_INTRADAY_LATEST", "name": "Get Exchange Intraday Latest", "description": "Tool to retrieve the latest available intraday data for symbols on a specific stock exchange (by MIC). Use when you need the most recent live price snapshot scoped to a particular exchange." }, { "slug": "MARKETSTACK_GET_INTRADAY", "name": "Get Intraday Data", "description": "Tool to retrieve intraday (real-time and historical) stock data for one or multiple ticker symbols at a chosen interval (1min/5min/10min/15min/30min/1hour). Use when you need live prices or to build an intraday (e.g. 1D) chart." }, { "slug": "MARKETSTACK_GET_INTRADAY_DATE", "name": "Get Intraday Data for Date", "description": "Tool to retrieve intraday stock data for one or multiple ticker symbols on a specific date. Use when you need the intraday series for a particular trading day." }, { "slug": "MARKETSTACK_GET_INTRADAY_LATEST", "name": "Get Intraday Latest Data", "description": "Tool to retrieve the latest available intraday data point(s) for one or multiple ticker symbols. Use when you need the most recent live price snapshot rather than a full intraday series." }, { "slug": "MARKETSTACK_GET_SPLITS", "name": "Get Stock Splits", "description": "Tool to retrieve stock split data for one or more stock symbols from Marketstack. Use when you need historical split information including split factors and dates." }, { "slug": "MARKETSTACK_GET_STOCK_PRICE", "name": "Get Real-Time Stock Price", "description": "Tool to retrieve the real-time (last known) stock price for a ticker symbol. Use when you need an up-to-the-minute price quote, for example to display a live price in a stock widget." }, { "slug": "MARKETSTACK_GET_TICKER_EOD", "name": "Get Ticker EOD Data", "description": "Tool to retrieve end-of-day stock price data for a specific ticker symbol. Use when you need historical daily price information including open, high, low, close, volume, and adjusted values." }, { "slug": "MARKETSTACK_GET_TICKER_EOD_LATEST", "name": "Get Ticker EOD Latest", "description": "Tool to retrieve end-of-day (EOD) stock data for the latest available date for a specific ticker. Use when you need the most recent trading day data for a stock symbol." }, { "slug": "MARKETSTACK_GET_TICKER_INFO", "name": "Get Ticker Info", "description": "Tool to retrieve detailed information about stock tickers including exchange, sector, and industry data. Use when you need comprehensive company information for a ticker symbol." }, { "slug": "MARKETSTACK_GET_TICKER_INTRADAY", "name": "Get Ticker Intraday Data", "description": "Tool to retrieve intraday stock data for a single ticker symbol at a chosen interval (1min/5min/10min/15min/30min/1hour). Use when you need a live price series for one stock, e.g. to render a 1D chart." }, { "slug": "MARKETSTACK_GET_TICKER_INTRADAY_LATEST", "name": "Get Ticker Intraday Latest", "description": "Tool to retrieve the latest available intraday bar for a single ticker symbol, including real-time bid/ask quote fields. Use when you need the most recent live price snapshot for one stock." }, { "slug": "MARKETSTACK_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to retrieve a list of all supported currencies from the Marketstack API. Use when you need to get information about available currencies for stock market data." }, { "slug": "MARKETSTACK_LIST_EXCHANGES", "name": "List Stock Exchanges", "description": "Tool to retrieve information about supported stock exchanges. Use when you need to list or search for stock exchanges from the 2700+ exchanges available in Marketstack." }, { "slug": "MARKETSTACK_LIST_TICKERS", "name": "List Tickers", "description": "Tool to get a list of all supported stock tickers. Use when you need to obtain the full list of tickers supported by Marketstack or search for specific tickers." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "marketstack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Access Key", "type": "string", "description": "Sign in to your Marketstack dashboard and copy your API key. Free plan uses HTTP only; paid plans support HTTPS.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mastodon", "name": "Mastodon", "logo": "https://logos.composio.dev/api/mastodon", "description": "Mastodon is a decentralized, open-source social network with APIs for posting, following, and managing accounts across federated instances.", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "mastodon_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write,follow,push,profile,read:accounts,read:statuses,write:statuses,read:notifications,write:notifications" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Instance Domain", "type": "string", "description": "Your Mastodon instance domain (e.g., mastodon.social, hachyderm.io). Do not include https://.", "required": true, "default": "mastodon.social" } ], "optional": [] } } } ] }, { "slug": "matterport", "name": "Matterport", "logo": "https://logos.composio.dev/api/matterport", "description": "Capture, share, and collaborate the built world in immersive 3D", "category": "developer tools", "authSchemes": [ "BASIC", "OAUTH2" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MATTERPORT_DELETE_MODEL", "name": "Delete Matterport Model", "description": "Tool to permanently delete a Matterport model. Use when you need to remove a model entirely from the Matterport platform. This operation is irreversible." }, { "slug": "MATTERPORT_MODEL", "name": "Get Model by ID", "description": "Tool to retrieve detailed information about a single Matterport 3D model by its ID. Use when you need to fetch model metadata, publication details, spatial information, or other properties of a specific Matterport model." }, { "slug": "MATTERPORT_MODEL_EVENT_WEBHOOK_CALLBACKS", "name": "Get Model Event Webhook Callbacks", "description": "Tool to retrieve a list of registered webhook callback configurations for model events. Use when you need to view all configured webhooks that receive notifications when model events occur (e.g., created, deleted, updated, processed, transferred)." }, { "slug": "MATTERPORT_MODELS", "name": "Query Matterport Models", "description": "Tool to retrieve a page of Matterport models with optional search and filtering. Use when you need to list, search, or filter models within an organization." }, { "slug": "MATTERPORT_ROOM_CLASSIFICATIONS", "name": "List Room Classifications", "description": "Tool to list all room classifications defined for Matterport room classification models. Use when you need to retrieve the available room types and their associated keywords." }, { "slug": "MATTERPORT_UPDATE_MODEL_STATE", "name": "Update Model State", "description": "Tool to change a Matterport model between active and inactive (archived) states. Use when you need to archive an inactive model or unarchive an active model. This operation is idempotent." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "matterport_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ViewDetails" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "BASIC", "name": "matterport_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Token ID", "type": "string", "description": "Navigate to Settings > Developer Tools > API Token Management in your Matterport account to generate an API token", "required": true, "default": null }, { "name": "password", "displayName": "Token Secret", "type": "string", "description": "The Token Secret generated with your API token. Save it immediately as Matterport does not store it", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "maxio", "name": "Maxio", "logo": "https://logos.composio.dev/api/maxio", "description": "Subscription billing and revenue management platform (formerly Chargify)", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 177, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MAXIO_ALLOCATE_COMPONENT", "name": "Allocate Component", "description": "Creates an allocation for a component on a subscription. Use when you need to allocate quantities of a metered, quantity-based, or on/off component to a subscription. This action is commonly used to: - Add a new component to a subscription (initial allocation) - Upgrade or downgrade the quantity of an existing component - Reactivate a previously cancelled component - Record usage for metered components Note: For metered components, allocating a quantity records usage. For on/off components, use quantity=1 to turn it on or quantity=0 to turn it off." }, { "slug": "MAXIO_APPLY_COUPONS_TO_SUBSCRIPTION", "name": "Apply Coupons to Subscription", "description": "Applies one or more coupons to a subscription. Use when you need to apply promotional discounts or coupon codes to an existing subscription. The coupon must be valid and not expired for the operation to succeed." }, { "slug": "MAXIO_ARCHIVE_COMPONENT", "name": "Archive Component", "description": "Archives a component to prevent new allocations. Use this action when you need to stop allowing new component allocations while keeping existing allocations active. This action is irreversible — once archived, the component cannot be used for new subscriptions, but existing subscriptions with the component will continue to work." }, { "slug": "MAXIO_ARCHIVE_COMPONENT_PRICE_POINT", "name": "Archive Component Price Point", "description": "Archives a component price point, making it inactive. Use when you need to deactivate a price point that is no longer needed but should not be permanently deleted. Archived price points are no longer available for new subscriptions but remain accessible for historical reference. This action is irreversible — once archived, a price point cannot be directly unarchived to its original state (use the unarchive action instead)." }, { "slug": "MAXIO_ARCHIVE_COUPON", "name": "Archive Coupon", "description": "Archives a coupon to prevent new uses. Use this action when you need to deactivate a coupon while preserving its redemption history. This action is irreversible — once archived, the coupon cannot be used for new subscriptions, but existing redemptions remain valid." }, { "slug": "MAXIO_ARCHIVE_OFFER", "name": "Archive Offer", "description": "Archives an offer to prevent new subscriptions from using it. Use this action when you need to deactivate an offer while preserving existing subscriptions. This action is irreversible — once archived, the offer cannot be used for new subscriptions, but existing subscriptions using this offer will continue to function normally." }, { "slug": "MAXIO_ARCHIVE_PRODUCT", "name": "Archive Product", "description": "Archives a product to prevent new subscriptions from being created. Use this action when you need to stop accepting new subscriptions for a product while keeping existing subscriptions active. This action is irreversible - once archived, the product cannot be unarchived." }, { "slug": "MAXIO_ARCHIVE_PRODUCT_PRICE_POINT", "name": "Archive product price point", "description": "Archives a product price point by its ID. Use when you need to deactivate and archive a price point that is no longer needed. Archived price points cannot be used for new subscriptions but existing subscriptions will continue to use them. This action is irreversible once completed." }, { "slug": "MAXIO_CANCEL_DELAYED_CANCELLATION", "name": "Cancel Delayed Cancellation", "description": "Cancels a scheduled cancellation on a subscription. Use when a user wants to undo a previously scheduled cancellation before it takes effect. This action is reversible only before the scheduled cancellation time passes." }, { "slug": "MAXIO_CLONE_COMPONENT_PRICE_POINT", "name": "Clone Component Price Point", "description": "Clones an existing component price point to create a new one. Use this action when you need to duplicate a price point with all its pricing configuration, optionally providing a new name for the cloned version. The cloned price point will inherit all pricing settings from the source price point including the pricing scheme, prices, and currency configuration." }, { "slug": "MAXIO_CREATE_BULK_PRODUCT_PRICE_POINTS", "name": "Bulk Create Product Price Points", "description": "Creates multiple product price points in a single API call. Use when you need to set up several pricing options for a product at once, such as creating tiered pricing plans (e.g., Basic, Standard, Premium) with different prices, intervals, and trial periods. This is more efficient than creating price points individually. The price_points array accepts price point objects with fields like name, price_in_cents, interval_unit, interval_length, trial configuration, and initial fees." }, { "slug": "MAXIO_CREATE_COMPONENT", "name": "Create Component", "description": "Creates a new component within a product family in Chargify. Use when you need to add billing components like metered usage, quantity-based pricing, on/off toggles, prepaid usage, or event-based components to a product family. Supports five component types: metered_components (usage-based with unit pricing), quantity_based_components (per-unit pricing), on_off_components (binary add-ons), prepaid_usage_components (credit-based), and event_based_components (event-triggered billing)." }, { "slug": "MAXIO_CREATE_COMPONENT_PRICE_POINT", "name": "Create Component Price Point", "description": "Creates a price point for a component in Maxio Advanced Billing. Use this action when you need to define a new pricing configuration (such as per-unit, tiered, volume, or stair-step pricing) for a component. This action is irreversible — once created, a price point cannot be deleted via API; it can only be archived." }, { "slug": "MAXIO_CREATE_COUPON_SUBCODES", "name": "Create Coupon Subcodes", "description": "Creates multiple subcodes for an existing coupon in Maxio Advanced Billing. Use when you need to add additional coupon codes for tracking, segmentation, or allowing multiple uses of a coupon. Subcodes are tied to the parent coupon and inherit the coupon's discount rules. Note: Subcodes must be unique across the entire site - they cannot duplicate codes used by other coupons." }, { "slug": "MAXIO_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer in Maxio/Chargify with the required fields: first_name, last_name, and email. Use this action when you need to add a new customer to your billing system. Optional fields like organization, reference, phone, and address can be included to provide additional customer information." }, { "slug": "MAXIO_CREATE_ENDPOINT", "name": "Create Webhook Endpoint", "description": "Creates a new webhook endpoint in Maxio Advanced Billing. Use when you need to register a new webhook endpoint to receive event notifications." }, { "slug": "MAXIO_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a one-time invoice for a subscription with custom line items. Use when you need to bill a customer for a one-time charge or custom amount that is not part of their regular subscription. The invoice can include multiple line items with titles, descriptions, quantities, and prices." }, { "slug": "MAXIO_CREATE_METADATA", "name": "Create Metadata", "description": "Creates metadata values for a resource in Maxio/Chargify Advanced Billing. Use this action when you need to attach custom key-value metadata to customers, subscriptions, or sites to store additional information. Note: If metadata with the same name already exists for the resource, this action will update the existing value." }, { "slug": "MAXIO_CREATE_METAFIELDS", "name": "Create Metafields", "description": "Creates metafield definitions for a resource type. Use this action when you need to define custom fields that can be attached to resources like customers, subscriptions, or products. After creating a metafield definition, you can set values for that field on individual resources. The resource_type determines which entity type the metafield applies to. Valid values are: customers, subscriptions, products, or product_families. Use this action when setting up custom data structures for your billing data." }, { "slug": "MAXIO_CREATE_OR_UPDATE_COUPON_CURRENCY_PRICES", "name": "Create or Update Coupon Currency Prices", "description": "Tool to create or update currency prices for a coupon in Maxio. Use when you need to set or modify the pricing of a coupon across different currencies. This action is idempotent - calling it will replace all existing currency prices for the coupon with the new values provided." }, { "slug": "MAXIO_CREATE_PAYMENT_PROFILE", "name": "Create Payment Profile", "description": "Creates a new payment profile for a customer in Maxio (Chargify). Use when you need to add a new credit card or payment method to a customer's account. The payment profile stores card details securely and returns a vault token for future use." }, { "slug": "MAXIO_CREATE_PREPAID_USAGE_COMPONENT", "name": "Create Prepaid Usage Component", "description": "Creates a prepaid usage component for pre-purchased units. Use when you need to create a component that allows customers to prepay for usage-based charges such as SMS credits, API calls, or storage units. The component supports various pricing schemes (per_unit, volume, tiered, stairstep) and optional overage pricing for charges when usage exceeds prepaid amounts. Note: This action creates the component within a product family. Ensure the product_family_id is valid and corresponds to an existing product family in your Chargify/Maxio account." }, { "slug": "MAXIO_CREATE_PREPAYMENT", "name": "Create Prepayment", "description": "Creates a prepayment for a subscription. Prepayments allow customers to add funds to their account in advance, which are then applied to future invoices. Use this action when a customer wants to prepay for services, make an advance payment, or add funds to their account balance." }, { "slug": "MAXIO_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new product within a product family in Maxio. Use when you need to add a new subscription product to an existing product family for billing purposes. This action is useful for setting up subscription billing products with various pricing configurations including trial periods, initial charges, and billing intervals." }, { "slug": "MAXIO_CREATE_PRODUCT_FAMILY", "name": "Create Product Family", "description": "Creates a new product family in Maxio/Chargify. Product families are top-level containers used to organize products and related components. Use this action when you need to create a new product category or family grouping to organize your subscription products." }, { "slug": "MAXIO_CREATE_PRODUCT_PRICE_POINT", "name": "Create Product Price Point", "description": "Creates a price point for a product in Maxio Advanced Billing. Use this action when you need to define a new pricing configuration (such as monthly, annual, or trial pricing) for a product. Price points determine the billing amount, interval, and optional trial periods for subscriptions. The price point must include a name and can optionally include pricing scheme, interval settings, trial configuration, and initial fees." }, { "slug": "MAXIO_CREATE_PROFORMA_INVOICE", "name": "Create Proforma Invoice", "description": "Creates a proforma invoice for a subscription. A proforma invoice is a preliminary invoice that shows the expected charges before a final invoice is generated. Use when you need to preview or share expected billing amounts with a customer before finalizing the invoice. Note: This action creates a proforma invoice with an empty body. The response contains the complete proforma invoice details including line items, amounts, and due dates." }, { "slug": "MAXIO_CREATE_QUANTITY_BASED_COMPONENT", "name": "Create Quantity Based Component", "description": "Creates a quantity-based component for recurring units within a product family. Use when you need to add billing components that charge per unit based on quantity, such as user licenses, team seats, or device slots. Quantity-based components allow customers to purchase a variable number of units (e.g., 5 user licenses) with per-unit pricing that can be tiered." }, { "slug": "MAXIO_CREATE_REASON_CODE", "name": "Create Reason Code", "description": "Creates a new churn reason code in Maxio/Chargify Advanced Billing. Use this action when you need to define a new reason code to categorize why customers cancel or churn from your subscription service. Reason codes are used for reporting and analytics on churn, allowing you to track and understand why customers are leaving." }, { "slug": "MAXIO_CREATE_SIGNUP_PROFORMA_INVOICE", "name": "Create Signup Proforma Invoice", "description": "Creates a proforma invoice for signup preview. A proforma invoice shows the expected charges for a new subscription before it is actually created. Use this action when you need to preview billing amounts for a potential new customer or to share expected costs before finalizing a subscription signup. This action requires a product_id and customer_attributes (first_name, last_name, and email are required). The response contains the complete proforma invoice details including line items, amounts, and due dates." }, { "slug": "MAXIO_CREATE_SUBSCRIPTION", "name": "Create Subscription", "description": "Creates a new subscription in Maxio (Chargify) with specified product, customer, and payment details. Use this action when you need to create a new subscription for an existing or new customer. At minimum, either product_handle or product_id is required. Either customer_id or customer attributes (first_name, last_name, email) are required. Payment can be provided via payment_profile_id or direct card entry (card_number, expiration_month, expiration_year)." }, { "slug": "MAXIO_CREATE_SUBSCRIPTION_GROUP_WITH_SIGNUP", "name": "Create Subscription Group With Signup", "description": "Creates a subscription group with subscriptions and a shared payer in a single operation. Use this action when you need to create a subscription group that includes multiple subscriptions and a single payer who is responsible for all payments. This is ideal for family plans, corporate accounts, or bundled product offerings where billing should be consolidated under one customer. The action requires a payer (customer who pays) and at least one subscription. Each subscription can have its own product and customer information, but payment is handled by the shared payer." }, { "slug": "MAXIO_CREATE_SUBSCRIPTION_NOTE", "name": "Create Subscription Note", "description": "Creates a note on a subscription in Maxio/Chargify Advanced Billing. Use this action when you need to add a note or comment to a subscription, such as tracking customer communication, recording support interactions, or documenting billing-related information." }, { "slug": "MAXIO_CREATE_USAGE", "name": "Create Usage", "description": "Records usage for a metered component on a subscription. Use this action when you need to track and bill for usage-based consumption such as API calls, storage GB, emails sent, or any other metered usage. This action creates a usage record that will appear on the customer's invoice. The quantity can be a decimal value for proration purposes. Usage records are useful for: - Tracking overage charges beyond included quantities - Recording metered usage in real-time - Billing for consumption-based services" }, { "slug": "MAXIO_DEACTIVATE_EVENT_BASED_COMPONENT", "name": "Deactivate Event Based Component", "description": "Deactivates an event-based component on a subscription. Use when you need to disable event-based billing on a subscription, such as pausing usage tracking or stopping billing for a specific component. This action is commonly used to: - Pause event-based billing temporarily - Stop collecting events for a specific component - Deactivate a component before removing it from a subscription The endpoint requires both the subscription ID and component ID as path parameters. This action is reversible — the component can be reactivated using the corresponding activate action." }, { "slug": "MAXIO_DEDUCT_SERVICE_CREDIT", "name": "Deduct Service Credit", "description": "Deducts from a subscription's service credit balance. Use this action when you need to reduce or correct a customer's service credit balance, such as for refunds, billing corrections, or adjusting for erroneous credits. Note: The amount will be deducted from the subscription's available service credit balance. Ensure the subscription has sufficient credit before deducting." }, { "slug": "MAXIO_DELETE_COUPON_SUBCODE", "name": "Delete Coupon Subcode", "description": "Deletes a specific subcode from an existing coupon in Maxio Advanced Billing. Use this action when you need to remove a single subcode from a coupon. This action is irreversible — the subcode will be permanently deleted and cannot be recovered once removed." }, { "slug": "MAXIO_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Deletes a customer from Maxio/Chargify. Use this action when you need to permanently remove a customer record. This action is irreversible — once deleted, the customer cannot be recovered. Note: A customer can only be deleted if they have no associated subscriptions. Attempting to delete a customer with active subscriptions will result in an error." }, { "slug": "MAXIO_DELETE_PREPAID_USAGE_ALLOCATION", "name": "Delete Prepaid Usage Allocation", "description": "Deletes a prepaid usage allocation from a subscription component. Use this action when you need to remove a specific prepaid allocation that was previously created. This action is irreversible — once deleted, the allocation cannot be recovered. This action is commonly used to: - Remove incorrect or duplicate allocations - Clean up allocations that are no longer needed - Adjust prepaid usage when customers request refunds Note: Deleting an allocation will not automatically adjust billing. You may need to issue a credit or adjust subsequent invoices separately." }, { "slug": "MAXIO_DELETE_REASON_CODE", "name": "Delete Reason Code", "description": "Deletes a churn reason code from Maxio/Chargify Advanced Billing. Use this action when you need to permanently remove a reason code from your account. This action is irreversible — once deleted, the reason code cannot be recovered, and any associated reporting data will be affected. Note: This endpoint returns a 404 error if the reason code does not exist." }, { "slug": "MAXIO_DELETE_SUBSCRIPTION_GROUP", "name": "Delete Subscription Group", "description": "Deletes a subscription group and all its associated data. Use this action when you need to permanently remove a subscription group from the system. This action is irreversible — once deleted, the subscription group and all its subscriptions cannot be recovered." }, { "slug": "MAXIO_DELETE_SUBSCRIPTION_NOTE", "name": "Delete Subscription Note", "description": "Deletes a specific note from a subscription in Maxio Advanced Billing. Use this action when you need to remove a single note from a subscription. This action is irreversible — the note will be permanently deleted and cannot be recovered once removed." }, { "slug": "MAXIO_DELETE_SUBSCRIPTION_PAYMENT_PROFILE", "name": "Delete Subscription Payment Profile", "description": "Removes a payment profile from a subscription in Maxio Advanced Billing. Use when you need to unlink a credit card or payment method from a subscription, for example, when cleaning up obsolete payment profiles or replacing them with new ones. This action is irreversible — once the payment profile is removed from the subscription, it cannot be recovered through this endpoint." }, { "slug": "MAXIO_DELETE_UNUSED_PAYMENT_PROFILE", "name": "Delete Unused Payment Profile", "description": "Permanently deletes an unused payment profile from Maxio/Chargify. Use when you need to remove a payment profile that is no longer associated with any active subscriptions or payment references. This action is irreversible — once deleted, the payment profile cannot be recovered. Note: Only unused payment profiles can be deleted. Attempting to delete a profile that is currently in use (e.g., associated with an active subscription) will result in an error (422 Unprocessable Entity)." }, { "slug": "MAXIO_DELIVER_PROFORMA_INVOICE", "name": "Deliver Proforma Invoice", "description": "Delivers a proforma invoice to the customer via email. Use when you need to email a proforma invoice to the customer. By default, the invoice will be sent to the customer on the subscription. Optionally, you can specify custom recipient email addresses to override the defaults. This action sends the proforma invoice immediately and does not wait for payment or create any billing records." }, { "slug": "MAXIO_ENABLE_WEBHOOKS", "name": "Enable Webhooks", "description": "Enables or disables webhooks for the Maxio/Chargify site. Use this action when you need to turn webhook notifications on or off. This can be useful during maintenance windows, troubleshooting, or when temporarily pausing webhook deliveries. Note: This action is idempotent — calling it with the same enabled value will not produce any side effects beyond the initial state change." }, { "slug": "MAXIO_EXPORT_INVOICES", "name": "Export Invoices", "description": "Initiates an invoices export job. Use when you need to start an asynchronous export of invoice data from Maxio/Chargify. The export runs as a background job and returns a batch job object that can be used to track the export status and retrieve the exported data. The export job creates a batch that can be queried using the returned batch ID. Check the batch job status by polling until 'completed' is 'true'." }, { "slug": "MAXIO_EXPORT_PROFORMA_INVOICES", "name": "Export Proforma Invoices", "description": "Initiates an asynchronous export of proforma invoices data. Use when you need to export a large set of proforma invoices for analysis, reporting, or backup purposes. The export job runs in the background and returns immediately with a batch job ID. Note: This is a batch export endpoint that creates an async job. The response indicates the job was created (status 201) but does not contain the actual exported data. Poll the batch job status or use a separate download endpoint to retrieve the exported data once the job completes." }, { "slug": "MAXIO_EXPORT_SUBSCRIPTIONS", "name": "Export Subscriptions", "description": "Initiates an asynchronous export of subscription data from Maxio/Chargify. Use this action when you need to export bulk subscription data for analysis, backup, or integration with external systems. The export runs asynchronously and returns a download URL when complete. Note: Export processing may take several minutes for large datasets." }, { "slug": "MAXIO_GET_MRR", "name": "Get MRR", "description": "Returns monthly recurring revenue data for the site. Use this action when you need to retrieve the current MRR (Monthly Recurring Revenue) for your Chargify site, including plan and usage breakouts. This is useful for financial reporting, revenue tracking, and understanding overall subscription revenue metrics. Supports retrieving historical MRR data using the at_time parameter. Note: This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_INITIATE_DELAYED_CANCELLATION", "name": "Initiate Delayed Cancellation", "description": "Schedules a subscription for cancellation at the end of its current billing period. Use when a customer requests to cancel their subscription but you want to allow them to continue using the service until the end of the current billing period. This action is reversible — the scheduled cancellation can be cancelled before it takes effect using the Cancel Delayed Cancellation action. Once the scheduled cancellation time passes, the subscription will be cancelled and cannot be automatically reactivated." }, { "slug": "MAXIO_ISSUE_ADVANCE_INVOICE", "name": "Issue Advance Invoice", "description": "Issues an advance invoice for a subscription. An advance invoice allows billing for upcoming charges in advance of the normal billing cycle. Use this action when you need to immediately bill a customer for expected charges before the regular billing date arrives. Note: This action requires a valid subscription_id. The response contains the complete advance invoice details including line items, amounts, and due dates." }, { "slug": "MAXIO_ISSUE_INVOICE", "name": "Issue Invoice", "description": "Issues a draft invoice for payment collection. Once issued, the invoice transitions from 'draft' to 'open' state and is ready to collect payment. Use when you need to finalize a draft invoice and initiate the payment process. After issuing, the customer can pay the invoice using the payment URL provided in the response. This action is irreversible - once issued, the invoice cannot be returned to draft state. Note: You can optionally capture prepayments automatically or force issue despite validation warnings." }, { "slug": "MAXIO_ISSUE_SERVICE_CREDIT", "name": "Issue Service Credit", "description": "Issues a service credit to a subscription. Service credits are amounts that are added to a subscription's service credit balance and can be applied toward future invoices. Use this action when you need to compensate a customer, apply promotional credits, or add funds to a subscription's service credit balance. The credit will increase the subscription's available service credit balance." }, { "slug": "MAXIO_LIST_ALL_COMPONENT_PRICE_POINTS", "name": "List All Component Price Points", "description": "Lists all component price points across the site. Use this action when you need to retrieve all price points for billing components, with optional filtering by type, date range, or archived status. Supports pagination via the page and per_page parameters, with a default page size of 25 and maximum of 200. Price points can be filtered by type (catalog, custom, default), date created/updated, specific IDs, or archived status." }, { "slug": "MAXIO_LIST_ALLOCATIONS", "name": "List Allocations", "description": "Lists all allocations for a component on a subscription. Use this action when you need to retrieve the allocation history for a specific component attached to a subscription. This is useful for auditing usage, tracking upgrades/downgrades, or understanding the current state of a component. The response includes details such as quantity allocated, allocation type, timestamps, and remaining unit balance for each allocation record." }, { "slug": "MAXIO_LIST_ALL_PRODUCT_PRICE_POINTS", "name": "List All Product Price Points", "description": "Lists all product price points across the site in Maxio Advanced Billing. Use when you need to retrieve all pricing configurations for products, including their billing intervals, trial periods, and initial fees. Supports pagination, sorting, date filtering, and filtering by archived status or product. This action is read-only and returns a paginated list of price points that can be filtered by date ranges, archived status, or specific product." }, { "slug": "MAXIO_LIST_CHARGIFY_JS_PUBLIC_KEYS", "name": "List Chargify.js Public Keys", "description": "Lists all public keys for Chargify.js integration in Maxio Advanced Billing. Use when you need to retrieve available public keys for Chargify.js to securely tokenize payment information on the client side. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_COMPONENT_PRICE_POINTS", "name": "List Component Price Points", "description": "Lists all price points for a component in Maxio Advanced Billing. Use this action when you need to retrieve all available pricing configurations (such as per-unit, tiered, volume, or stair-step pricing) defined for a component. This is helpful for exploring available price points before creating subscriptions, or for auditing pricing configurations across components." }, { "slug": "MAXIO_LIST_COMPONENTS", "name": "List Components", "description": "Returns a list of all components across product families in Chargify. Use this action when you need to retrieve all billing components (metered, quantity-based, on/off, prepaid usage, or event-based) from your Chargify site. Supports pagination and filtering by date, IDs, handles, and archival state. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_COMPONENTS_FOR_PRODUCT_FAMILY", "name": "List Components for Product Family", "description": "Lists all components within a product family in Maxio/Chargify. Use when you need to retrieve all billing components (metered, quantity-based, on/off, prepaid usage, or event-based) associated with a specific product family. Supports pagination with optional page and per_page parameters to handle large numbers of components efficiently." }, { "slug": "MAXIO_LIST_CONSOLIDATED_INVOICE_SEGMENTS", "name": "List Consolidated Invoice Segments", "description": "Lists segments of a consolidated invoice. A consolidated invoice combines charges from multiple subscriptions or components into a single invoice. Use when you need to retrieve the individual segments that make up a consolidated invoice, such as to see the breakdown of charges by subscription, component, or product. This is useful for analyzing billing details when customers have multiple subscriptions or services consolidated into one invoice. Note: Not all invoices are consolidated. Only invoices that combine charges from multiple sources will have segments. A regular invoice may have an empty or single-element segments array." }, { "slug": "MAXIO_LIST_COUPONS_FOR_PRODUCT_FAMILY", "name": "List Coupons for Product Family", "description": "Lists all coupons within a product family. Use when you need to retrieve all available coupons for a specific product family, such as for displaying coupon options to customers or auditing coupon usage within a product family." }, { "slug": "MAXIO_LIST_COUPON_SUBCODES", "name": "List Coupon Subcodes", "description": "Lists all subcodes for an existing coupon in Maxio Advanced Billing. Use when you need to retrieve the subcodes associated with a coupon for verification, reporting, or administrative purposes. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_CREDIT_NOTES", "name": "List Credit Notes", "description": "Returns a list of credit notes from Maxio/Chargify. Use this action when you need to retrieve credit notes for a subscription or across your entire site. Credit notes represent credits issued to customers that can be applied to future invoices or refunded. This action supports filtering by subscription, date range, status, and credit note number. Results are paginated using page and per_page parameters. By default, 25 records are returned per page. Note: Credit notes can be in 'open' (available to apply), 'closed' (fully applied), or 'voided' status." }, { "slug": "MAXIO_LIST_CUSTOMERS", "name": "List Customers", "description": "Returns a list of customers with optional filtering and pagination. Use this action when you need to retrieve customers from your Chargify/Maxio billing system. Supports pagination and filtering by date range, IDs, state, organization, reference, and zip code. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_CUSTOMER_SUBSCRIPTIONS", "name": "List Customer Subscriptions", "description": "Lists all subscriptions for a specific customer in Maxio Advanced Billing. Use this action when you need to retrieve all subscriptions associated with a customer, such as for displaying subscription history, auditing purposes, or administrative management. This is a read-only operation that does not modify any data. Results can be filtered by subscription state and paginated using the page and per_page parameters." }, { "slug": "MAXIO_LIST_ENDPOINTS", "name": "List Webhook Endpoints", "description": "Returns a list of webhook endpoints configured in Maxio Advanced Billing. Use when you need to retrieve all registered webhook endpoints to check their current configuration, monitor which endpoints are active, or verify endpoint IDs. Supports pagination with optional page and per_page parameters to handle large numbers of endpoints efficiently." }, { "slug": "MAXIO_LIST_EVENTS", "name": "List Events", "description": "Returns a list of events for the site in Maxio Advanced Billing. Use this action when you need to retrieve events for audit purposes, monitoring activity, tracking subscription changes, or analyzing payment events. Supports filtering by date range (since/until), event type, and custom filters. Results are paginated using page and per_page parameters for efficient data retrieval." }, { "slug": "MAXIO_LIST_EXPORTED_INVOICES", "name": "List Exported Invoices", "description": "Retrieves a list of exported invoices for a specific invoice export batch. Use this action when you need to fetch the rows (invoice data) from a previously initiated invoice export. The batch_id should be obtained from the export initiation response or from the list of invoice exports. This action supports pagination through the page and per_page parameters. Note: The response is a list of invoice objects containing all invoice details including line items, payments, credits, taxes, and custom fields." }, { "slug": "MAXIO_LIST_EXPORTED_PROFORMA_INVOICES", "name": "List Exported Proforma Invoices", "description": "Lists exported proforma invoice rows from a previously initiated export batch. Use when you need to retrieve the actual data from a proforma invoices export, such as for analysis, reporting, or importing into another system. Note: The batch_id parameter should be the ID returned when the export was initiated using the Export Proforma Invoices action." }, { "slug": "MAXIO_LIST_EXPORTED_SUBSCRIPTIONS", "name": "List Exported Subscriptions", "description": "Lists exported subscriptions from a subscription export batch in Maxio/Chargify. Use this action when you need to retrieve the results of a previously initiated subscription export. The batch_id should be obtained from the export job response. Supports pagination via the page and per_page parameters. Note: This action requires a completed export batch. The batch must have been created using the Export Subscriptions action first." }, { "slug": "MAXIO_LIST_INVOICE_EVENTS", "name": "List Invoice Events", "description": "Lists all invoice events from Maxio/Chargify with optional filtering. Use this action when you need to retrieve invoice event history, such as tracking invoice status changes (created, paid, voided), monitoring payment activity, or auditing billing events for a specific time period. This action supports date range filtering via start_date and end_date parameters. Results are paginated with a default of 25 events per page." }, { "slug": "MAXIO_LIST_INVOICES", "name": "List Invoices", "description": "Returns a list of invoices with optional filtering and pagination. Use this action when you need to retrieve invoices from Maxio/Chargify, such as for displaying invoice history, generating reports, or processing refunds. Supports filtering by status, date range, customer, subscription, and product. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_METADATA_FOR_RESOURCE_TYPE", "name": "List Metadata for Resource Type", "description": "Lists all metadata definitions for a resource type in Maxio/Chargify Advanced Billing. Use this action when you need to retrieve all custom metadata field definitions available for a specific resource type (customers, subscriptions, or sites). This is useful for discovering what metadata fields exist before reading or updating their values on specific resources. Note: This endpoint lists the metadata field definitions, not the actual values stored on individual resources. To get values for a specific resource, use the Read Metadata action with the resource_id." }, { "slug": "MAXIO_LIST_METAFIELDS", "name": "List Metafields", "description": "Lists all metafield definitions for a resource type in Maxio/Chargify Advanced Billing. Use this action when you need to retrieve all custom field (metafield) definitions configured for a specific resource type such as customers, subscriptions, products, or product families. This helps you understand what custom data fields are available for data entry or reporting purposes. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_MRR_MOVEMENTS", "name": "List MRR Movements", "description": "Returns MRR movement history showing changes in Monthly Recurring Revenue. Use this action when you need to retrieve the history of MRR changes for your Chargify site, such as for financial reporting, churn analysis, revenue tracking, or understanding subscription lifecycle metrics. This action supports date range filtering, pagination, sorting, and filtering by subscription, customer, or movement type." }, { "slug": "MAXIO_LIST_MRR_PER_SUBSCRIPTION", "name": "List MRR Per Subscription", "description": "Returns MRR broken down by subscription. Use this action when you need to retrieve MRR (Monthly Recurring Revenue) data for your Chargify site, including plan and usage breakouts split per subscription. This is useful for revenue analysis, reporting, and understanding subscription-level revenue metrics. Supports filtering by subscription IDs, retrieving historical MRR data using the at_time parameter, pagination, and sorting direction. Note: This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_OFFERS", "name": "List Offers", "description": "Returns a list of all offers in Chargify. Use this action when you need to retrieve all offers from your Chargify site for reporting, analysis, or administrative purposes. Supports pagination and filtering by date, IDs, handles, product ID, subscription ID, offer type, and archival state. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_PAYMENT_PROFILES", "name": "List Payment Profiles", "description": "Returns a list of payment profiles in Maxio Advanced Billing. Use this action when you need to retrieve all payment profiles (credit cards, bank accounts, or other payment methods) for verification, reporting, or administrative purposes. Results can be filtered by customer ID, vault type, and can be paginated for large result sets. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_PREPAYMENTS", "name": "List Prepayments", "description": "Lists all prepayments for a subscription in Maxio Advanced Billing. Use this action when you need to retrieve all prepayments associated with a subscription, including their amounts, payment methods, remaining balances, and application status. This is useful for auditing prepayment history, tracking advance payments, or checking available prepayment balances. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_PRODUCT_FAMILIES", "name": "List Product Families", "description": "Returns a list of all product families in Maxio/Chargify. Use this action when you need to retrieve product families from your Chargify/Maxio billing system. Product families are top-level containers used to organize products and related components. Supports pagination and filtering by date range, IDs, and handles. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_PRODUCT_PRICE_POINTS", "name": "List Product Price Points", "description": "Lists all price points for a product in Maxio Advanced Billing. Use this action when you need to retrieve all available pricing configurations (such as monthly, annual, or trial pricing) defined for a product. This is helpful for exploring available price points before creating subscriptions, or for auditing pricing configurations across products. Supports pagination and optional filtering by price point status." }, { "slug": "MAXIO_LIST_PRODUCTS", "name": "List Products", "description": "Returns a list of all products from Maxio (Chargify). Use this action when you need to retrieve all subscription products from your Chargify site. Supports pagination and filtering by date, IDs, handles, state, and product family. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_PRODUCTS_FOR_PRODUCT_FAMILY", "name": "List Products for Product Family", "description": "Lists all products within a product family in Maxio/Chargify. Use when you need to retrieve all subscription products associated with a specific product family, such as for displaying available plans to customers or auditing product offerings. Supports pagination with optional page and per_page parameters to handle large numbers of products efficiently." }, { "slug": "MAXIO_LIST_PROFORMA_INVOICES", "name": "List Proforma Invoices", "description": "Lists all proforma invoices for a specific subscription in Maxio Advanced Billing. Use this action when you need to retrieve the proforma invoice history for a subscription, such as for reviewing billing previews, auditing purposes, or administrative management. This is a read-only operation that does not modify any data. Results can be paginated using the page and per_page parameters." }, { "slug": "MAXIO_LIST_REASON_CODES", "name": "List Reason Codes", "description": "Returns a list of all churn reason codes in Maxio/Chargify Advanced Billing. Use this action when you need to retrieve all reason codes for churn reporting and analytics, such as auditing existing codes, displaying available reasons for cancellation surveys, or managing your churn categorization scheme. Supports pagination to handle accounts with many reason codes. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_SERVICE_CREDITS", "name": "List Service Credits", "description": "Lists all service credits for a subscription in Maxio Advanced Billing. Use this action when you need to retrieve all service credits associated with a subscription, including their amounts, memos, and creation timestamps. This is useful for auditing service credit history, tracking promotional credits, or checking the available service credit balance. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_SUBSCRIPTION_COMPONENTS", "name": "List Subscription Components", "description": "Lists all components attached to a subscription in Maxio (Chargify). Use this action when you need to retrieve all billing components (metered, quantity-based, on/off, prepaid usage, or event-based) associated with a specific subscription. This is useful for auditing subscription components, checking quantities allocated, or understanding the component configuration of a subscription. This is a read-only operation that does not modify any data. Results can be paginated using the page and per_page parameters, and filtered by component ID or price point ID." }, { "slug": "MAXIO_LIST_SUBSCRIPTION_COMPONENTS_FOR_SITE", "name": "List Subscription Components For Site", "description": "Lists all subscription components for a site. Use this action when you need to retrieve all subscription components across all subscriptions in your Chargify/Maxio site. Supports pagination, sorting, and filtering by date range, subscription IDs, price point IDs, product family IDs, and subscription states. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_SUBSCRIPTION_EVENTS", "name": "List Subscription Events", "description": "Returns a list of events for a specific subscription in Maxio Advanced Billing. Use this action when you need to retrieve all events related to a subscription, such as for audit purposes, tracking subscription changes over time, monitoring payment events, or investigating subscription issues. Supports filtering by event ID range (since_id/until_id) and sorting direction. Results are paginated using page and per_page parameters for efficient data retrieval." }, { "slug": "MAXIO_LIST_SUBSCRIPTION_GROUPS", "name": "List Subscription Groups", "description": "Returns a list of subscription groups with optional filtering and pagination. Use this action when you need to retrieve subscription groups from your Chargify/Maxio billing system. Supports pagination and filtering by date range, IDs, state, customer ID, and subscription ID. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_SUBSCRIPTION_NOTES", "name": "List Subscription Notes", "description": "Lists all notes attached to a subscription in Maxio/Chargify Advanced Billing. Use this action when you need to retrieve all notes for a specific subscription, such as viewing customer communication history, auditing support interactions, or retrieving billing-related information stored on a subscription. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Returns a list of subscriptions with optional filtering and pagination. Use this action when you need to retrieve all subscriptions from your Chargify/Maxio billing system. Supports pagination and filtering by date range, subscription state, customer IDs, product IDs, coupon codes, offer ID, trial status, billing interval, and subscription group. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_LIST_USAGES", "name": "List Usages", "description": "Lists all usage records for a component on a subscription. Use this action when you need to retrieve the usage history for a metered or prepaid component attached to a subscription. This is useful for auditing usage, reviewing overage charges, or understanding consumption patterns. The response includes details such as quantity recorded, memo, timestamps, and remaining unit balance for each usage record." }, { "slug": "MAXIO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Returns a list of webhooks configured in Maxio Advanced Billing. Use this action when you need to retrieve all webhooks to check their current configuration, monitor which webhooks are active, or verify webhook IDs. Supports pagination and optional filtering by active status. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_MIGRATE_SUBSCRIPTION_PRODUCT", "name": "Migrate Subscription Product", "description": "Migrates a subscription to a different product in Maxio/Chargify Advanced Billing. Use when you need to change a subscription's product (e.g., upgrade, downgrade, or change the subscription plan). This action will update the subscription to point to the new product and adjust billing accordingly based on the product configuration. Note: The migration takes effect immediately and may result in prorated charges or credits depending on the price difference between the products and the current billing cycle." }, { "slug": "MAXIO_OVERRIDE_SUBSCRIPTION", "name": "Override Subscription", "description": "Overrides cancellation settings of a subscription. Use when you need to update cancellation-related attributes on an existing subscription, such as adding a cancellation message to explain why the subscription was overridden. This action sends an override request to update the subscription's cancellation settings. The API returns HTTP 204 No Content on success." }, { "slug": "MAXIO_PATCH_PRODUCT_PRICE_POINT_TO_DEFAULT", "name": "Promote Product Price Point to Default", "description": "Promotes a product price point to be the default price point for a product. Use when you need to change which price point is automatically selected for new subscriptions to a product. This action sets the specified price point as the default, meaning it will be automatically selected when creating new subscriptions unless another price point is explicitly specified. This is an idempotent operation - calling it multiple times with the same price point will always result in the same state. Note: Only one price point per product can be the default at a time. Promoting a new price point will automatically demote any existing default price point for that product." }, { "slug": "MAXIO_PAUSE_SUBSCRIPTION", "name": "Pause Subscription", "description": "Pauses an active subscription in Maxio (Chargify) Advanced Billing. Use when you need to temporarily suspend a subscription without canceling it, such as when a customer requests a pause in service or when there are payment issues that need to be resolved before billing can continue. When paused, the subscription will not be billed and the customer will not have access to the service. The subscription can be resumed using the Resume Subscription action. This action is reversible — resuming the subscription will restore the subscription to its previous state (typically 'active')." }, { "slug": "MAXIO_PREVIEW_ALLOCATIONS", "name": "Preview Allocations", "description": "Previews allocation charges before creating them for subscription components. Use this action when you need to calculate the cost impact of adding, upgrading, downgrading, or removing components from a subscription without actually creating the allocations. This is useful for: - Showing customers a price estimate before confirming changes - Verifying proration calculations - Testing allocation scenarios without affecting actual billing The preview returns estimated charges, including any applicable prorations and taxes. Note: This is a read-only operation that does not create actual allocations." }, { "slug": "MAXIO_PREVIEW_CUSTOMER_INFORMATION_CHANGES", "name": "Preview Customer Information Changes", "description": "Previews customer information changes for an invoice. This endpoint shows what the invoice would look like with updated customer information before the changes are actually applied. Use when you need to preview how changes to customer details (such as billing address, shipping address, or organization name) would appear on an invoice. This allows you to verify the changes before committing them. Note: This action does not modify any data. It only returns a preview of what the customer information would look like if updated." }, { "slug": "MAXIO_PREVIEW_PROFORMA_INVOICE", "name": "Preview Proforma Invoice", "description": "Previews a proforma invoice for a subscription without actually creating it. Use when you need to preview the expected charges and invoice details before committing to create the actual proforma invoice. This is useful for showing customers what they will be charged before finalizing billing. This action does not modify any data - it only generates a preview of what the proforma invoice would look like based on the current subscription state." }, { "slug": "MAXIO_PREVIEW_RENEWAL", "name": "Preview Renewal", "description": "Previews the next renewal charges for a subscription in Maxio (Chargify). Use this action when you need to show customers what their next billing amount will be at renewal, including any component charges, discounts, and taxes. This is useful for: - Displaying upcoming charges to customers before they occur - Verifying renewal calculations - Showing breakdown of renewal costs - Testing pricing scenarios without affecting actual billing This is a read-only operation that does not modify any data or create charges. The preview is calculated based on the current subscription state and applied coupons." }, { "slug": "MAXIO_PREVIEW_SIGNUP_PROFORMA_INVOICE", "name": "Preview Signup Proforma Invoice", "description": "Previews a proforma invoice for signup. A proforma invoice shows the expected charges for a new subscription before it is actually created. Use this action when you need to preview billing amounts for a potential new customer or to share expected costs before finalizing a subscription signup. This action requires a product_handle and customer_attributes (first_name, last_name, and email are required). The response contains the complete proforma invoice details including line items, amounts, and due dates." }, { "slug": "MAXIO_PREVIEW_SUBSCRIPTION", "name": "Preview Subscription", "description": "Previews a subscription in Maxio (Chargify) before actual creation to see pricing and details. Use this action when you want to validate subscription parameters, preview costs, or show users what a subscription will look like before confirming the creation. At minimum, either product_handle or product_id is required. Either customer_id or customer_attributes (first_name, last_name, email) are required. Payment can be provided via payment_profile_id, payment_token, or credit_card_attributes. This is a preview-only operation that does not create an actual subscription." }, { "slug": "MAXIO_PREVIEW_SUBSCRIPTION_PRODUCT_MIGRATION", "name": "Preview Subscription Product Migration", "description": "Previews a product migration before executing it. Use this action when you need to see what will happen when migrating a subscription to a different product without actually making the change. This allows you to review the price differences, credits, charges, and other migration details before committing to the migration. This is a read-only preview action that does not modify the subscription." }, { "slug": "MAXIO_PROMOTE_COMPONENT_PRICE_POINT_TO_DEFAULT", "name": "Promote Component Price Point to Default", "description": "Promotes a component price point to be the default price point for its component. Use this action when you need to change which price point is used as the default for new subscriptions. This endpoint switches the default price point for the component. The previously default price point will no longer be the default, but it remains available for existing subscriptions and can be promoted back to default if needed." }, { "slug": "MAXIO_REACTIVATE_SUBSCRIPTION", "name": "Reactivate Subscription", "description": "Reactivates a canceled subscription in Maxio (Chargify) Advanced Billing. Use when you need to restore a previously canceled subscription and resume billing for the customer. This action is reversible — you can cancel the subscription again if needed. The subscription will transition from 'canceled' state back to 'active' state and billing will resume according to the subscription's billing cycle." }, { "slug": "MAXIO_REACTIVATE_SUBSCRIPTION_GROUP", "name": "Reactivate Subscription Group", "description": "Reactivates a canceled subscription group in Maxio/Chargify. Use this action when you need to restore a previously canceled subscription group and resume billing for all its associated subscriptions. This action is reversible — you can cancel the group again if needed." }, { "slug": "MAXIO_READ_ACCOUNT_BALANCES", "name": "Read Account Balances", "description": "Retrieves the account balances for a subscription in Maxio Advanced Billing. Use this action when you need to check the current financial status of a subscription, including any outstanding invoice amounts, service credit balances, and prepayment balances. This is useful for determining if a subscription has sufficient credit for transactions, checking payment status, or auditing account balances. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_ADVANCE_INVOICE", "name": "Read Advance Invoice", "description": "Retrieves an advance invoice for a subscription. An advance invoice shows the charges that will be billed in advance of the normal billing cycle. Use this action when you need to preview or retrieve the advance billing details for a subscription. This is a read-only operation that does not modify any data. Use the IssueAdvanceInvoice action if you need to issue/generate the advance invoice. Note: This action requires a valid subscription_id. The response contains the complete advance invoice details including line items, amounts, and due dates." }, { "slug": "MAXIO_READ_COMPONENT", "name": "Read Component", "description": "Retrieves details of a specific component within a product family in Maxio/Chargify. Use this action when you need to fetch detailed information about a single billing component (metered, quantity-based, on/off, prepaid usage, or event-based) including its pricing, configuration, and metadata. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_COMPONENT_BY_HANDLE", "name": "Read Component by Handle", "description": "Finds a component by its unique handle in Maxio/Chargify. Use this action when you need to retrieve a specific billing component using its handle identifier. The handle is a unique string that identifies the component across your Chargify site. Returns the component details including pricing, type, and configuration. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_COMPONENT_PRICE_POINT", "name": "Read Component Price Point", "description": "Retrieves a specific component price point in Maxio Advanced Billing. Use this action when you need to fetch the details of a single price point, including its pricing scheme, price tiers, and configuration settings. This is helpful when you need to inspect a specific price point's configuration, verify pricing details before creating subscriptions, or retrieve metadata about a price point." }, { "slug": "MAXIO_READ_COUPON", "name": "Read Coupon", "description": "Retrieves details of a specific coupon within a product family. Use this action when you need to fetch the full details of a coupon, such as its discount configuration, redemption status, or to verify coupon properties before applying it to a subscription." }, { "slug": "MAXIO_READ_COUPON_BY_CODE", "name": "Find Coupon by Code", "description": "Finds and retrieves a coupon by its unique code in Maxio Advanced Billing. Use when you need to look up coupon details using the coupon code, such as validating a coupon before applying it, displaying coupon information to customers, or checking coupon status for administrative purposes. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_COUPON_USAGE", "name": "Read Coupon Usage", "description": "Retrieves usage statistics for a coupon. Use when you need to view how many times a coupon has been redeemed, the total discount given, and other usage metrics for a specific coupon within a product family. This is a read-only action that retrieves current statistics from the API." }, { "slug": "MAXIO_READ_CREDIT_NOTE", "name": "Read Credit Note", "description": "Retrieves details of a specific credit note from Maxio/Chargify. Use this action when you need to retrieve detailed information about a specific credit note by its unique identifier (UID). This is a read-only operation that returns the credit note's line items, taxes, discounts, applications, and refund information. This action is useful for: - Checking the status and remaining balance of a credit note - Viewing line item details of a credit note - Finding which invoices a credit note has been applied to - Examining taxes and discounts on a credit note" }, { "slug": "MAXIO_READ_CUSTOMER", "name": "Read Customer", "description": "Retrieves details of a specific customer by their Chargify ID. Use this action when you need to fetch the full details of a customer, such as their contact information, address, tax status, or billing portal status. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_CUSTOMER_BY_REFERENCE", "name": "Read Customer By Reference", "description": "Looks up a customer by their external reference value. Use this action when you have an external reference identifier for a customer and need to retrieve the full customer details from Maxio/Chargify. Returns the customer object if found, or an error if no customer matches the reference. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_EVENTS_COUNT", "name": "Read Events Count", "description": "Returns a count of events for the site in Maxio Advanced Billing. Use this action when you need to quickly determine the number of events matching specific criteria without retrieving full event details. This is useful for checking event volume, validating data existence, or preparing for paginated queries. Supports filtering by date range (since/until), event type, and custom filters." }, { "slug": "MAXIO_READ_INVOICE", "name": "Read Invoice", "description": "Retrieves details of a specific invoice by its unique identifier (UID). Use this action when you need to fetch complete information about a single invoice, such as for displaying invoice details, processing refunds, or verifying payment status. The response includes all line items, taxes, discounts, payments, credits, and customer/seller information associated with the invoice. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_INVOICES_EXPORT", "name": "Read Invoices Export Status", "description": "Retrieves the status and details of an invoices export batch job. Use when you need to check whether a previously initiated invoice export has completed and how many rows were exported. This endpoint returns the batch job object including its completion status, creation time, finish time, and the total number of exported invoice rows. The batch_id should be obtained from the response when initiating an invoice export using the Export Invoices action. Note: Once the export is complete (completed='true'), you can retrieve the exported invoice data using the List Exported Invoices action with the same batch_id." }, { "slug": "MAXIO_READ_OFFER", "name": "Read Offer", "description": "Retrieves details of a specific offer by its ID from Maxio (Chargify). Use this action when you need to fetch full details of a single offer, including product information, discounts, items, and signup pages. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_PAYMENT_PROFILE", "name": "Read Payment Profile", "description": "Retrieves details of a specific payment profile in Maxio Advanced Billing. Use this action when you need to fetch details of a payment profile by its ID, such as verifying card information, retrieving vault tokens for payment gateway integrations, or checking the status of a stored payment method. This is a read-only operation that does not modify any data. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_PRODUCT", "name": "Read Product", "description": "Retrieves details of a specific product by its ID from Maxio (Chargify). Use this action when you need to fetch full details of a single product, including pricing, billing intervals, trial settings, and product family information. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_PRODUCT_BY_HANDLE", "name": "Read Product By Handle", "description": "Retrieves a single product from Maxio (Chargify) by its unique handle. Use this action when you need to fetch a specific product's details using its handle identifier rather than its numeric ID. This is useful for looking up products when the handle is more readily available or for verifying product details before operations. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_PRODUCT_FAMILY", "name": "Read Product Family", "description": "Retrieves details of a specific product family in Maxio/Chargify. Use this action when you need to fetch the full details of a product family, such as its name, description, handle, accounting code, or associated signup pages. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_PRODUCT_PRICE_POINT", "name": "Read Product Price Point", "description": "Retrieves a specific product price point in Maxio Advanced Billing. Use this action when you need to fetch the details of a single price point, including its pricing configuration, interval settings, and trial options. This is helpful when you need to inspect a specific price point's configuration, verify pricing details before creating subscriptions, or retrieve detailed metadata about a price point. Optionally include multi-currency pricing by passing the currency_prices parameter." }, { "slug": "MAXIO_READ_PROFORMA_INVOICE", "name": "Read Proforma Invoice", "description": "Retrieves a specific proforma invoice by its unique identifier. Use this action when you need to fetch detailed information about a single proforma invoice, including line items, amounts, taxes, discounts, customer and seller details, and payment information. This is a read-only operation that does not modify any data. Provide the proforma_invoice_uid to identify the specific invoice to retrieve." }, { "slug": "MAXIO_READ_PROFORMA_INVOICES_EXPORT", "name": "Read Proforma Invoices Export", "description": "Retrieves the status and details of a proforma invoices export batch job. Use when you need to check the status of a previously initiated proforma invoices export, such as to verify completion before fetching the exported rows. Note: This endpoint returns the batch job metadata (status, row count, etc.) but not the actual exported data. Use the List Exported Proforma Invoices action to retrieve the actual rows once the export completes." }, { "slug": "MAXIO_READ_REASON_CODE", "name": "Read Reason Code", "description": "Retrieves a specific churn reason code by its ID from Maxio/Chargify Advanced Billing. Use this action when you need to fetch details of a single reason code, such as when viewing specific churn categorization information, auditing individual reason codes, or retrieving metadata for a known reason code ID. This is a read-only operation that does not modify any data. Note: Returns a 404 error if the reason code does not exist." }, { "slug": "MAXIO_READ_SITE", "name": "Read Site", "description": "Retrieves details about the current Chargify/Maxio site. Use this action when you need to retrieve information about your Chargify site, including site configuration, address, tax settings, and gateway information. This is a read-only operation that does not modify any data. Note: This endpoint returns the site details for the authenticated site based on the credentials provided in the auth configuration." }, { "slug": "MAXIO_READ_SITE_STATS", "name": "Read Site Stats", "description": "Returns site-wide statistics for the Chargify site. Use this action when you need to retrieve aggregate statistics about your Chargify site, including subscription counts by status, Monthly Recurring Revenue (MRR) metrics, and customer statistics. This is useful for dashboard displays, executive reporting, and understanding overall business health at a glance. Note: This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_SUBSCRIPTION", "name": "Read Subscription", "description": "Retrieves details of a specific subscription by its unique identifier (ID). Use this action when you need to fetch complete information about a single subscription, such as for displaying subscription details, checking status, verifying billing information, or managing subscription-related operations. This is a read-only operation that does not modify any data. You can optionally include additional related data like customer, product, or payment_profile using the include parameter." }, { "slug": "MAXIO_READ_SUBSCRIPTION_BY_REFERENCE", "name": "Read Subscription By Reference", "description": "Finds a subscription by its external reference identifier in Maxio Advanced Billing. Use this action when you need to retrieve a specific subscription using its reference field rather than the internal Chargify subscription ID. This is a read-only operation that does not modify any data. Returns a single subscription object if found, or raises an error if no subscription matches the provided reference." }, { "slug": "MAXIO_READ_SUBSCRIPTION_COMPONENT", "name": "Read Subscription Component", "description": "Retrieves details of a component attached to a subscription in Maxio (Chargify). Use this action when you need to fetch detailed information about a specific billing component (metered, quantity-based, on/off, prepaid usage, or event-based) that is associated with a particular subscription. This is useful for checking the current state of a component, including quantity allocated, unit balance, pricing, and configuration details. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_SUBSCRIPTION_NOTE", "name": "Read Subscription Note", "description": "Retrieves a specific note attached to a subscription in Maxio/Chargify Advanced Billing. Use this action when you need to fetch a single note from a subscription, such as retrieving details about a specific customer interaction, viewing a particular support note, or accessing billing-related annotations. This is a read-only operation that does not modify any data." }, { "slug": "MAXIO_READ_SUBSCRIPTIONS_EXPORT", "name": "Read Subscriptions Export Status", "description": "Retrieves the status and details of a subscriptions export batch job. Use this action when you need to check whether a previously initiated subscription export has completed and how many rows were exported. This is useful for monitoring the progress of bulk subscription data exports. This endpoint returns the batch job object including its completion status, creation time, finish time, and the total number of exported subscription rows. The batch_id should be obtained from the response when initiating a subscription export using the Export Subscriptions action. Note: Once the export is complete (completed='true'), you can retrieve the exported subscription data using the List Exported Subscriptions action with the same batch_id." }, { "slug": "MAXIO_RECORD_BULK_EVENTS", "name": "Bulk Record Events", "description": "Tool to record multiple billable events in bulk for a subscription component. Use when you need to log several usage events at once, such as batch processing usage data or recording multiple overage events. Each event can specify its own quantity and memo. Maximum 1000 events per request." }, { "slug": "MAXIO_RECORD_PAYMENT_FOR_INVOICE", "name": "Record Payment for Invoice", "description": "Records a payment for an invoice. This action can be used to record both full and partial payments against an invoice. Use this action when you need to record a customer payment for an existing invoice. The payment will be applied to the invoice, updating its paid_amount and potentially changing its status to 'paid' if the full amount is received. Note: You can specify a payment method explicitly or let the system use the subscription's default payment profile." }, { "slug": "MAXIO_REFUND_INVOICE", "name": "Refund Invoice", "description": "Creates a refund for a paid invoice. Use this action when you need to process a refund for a customer whose invoice has already been paid. The refund will be recorded against the invoice and a credit note may be generated depending on your settings. This action is irreversible — once a refund is processed, it cannot be automatically reversed. Ensure you have verified the refund amount and reason before executing. Note: The invoice must be in a 'paid' state to process a refund." }, { "slug": "MAXIO_REFUND_PREPAYMENT", "name": "Refund Prepayment", "description": "Refunds a prepayment made on a subscription. This action is irreversible — once a prepayment is refunded, the refund cannot be undone. Use this action when a customer requests a refund for a prepayment, or when you need to reverse an incorrectly applied prepayment. The refund amount will be returned to the customer according to your refund policy. Note: You must provide either `amount` (decimal string) or `amount_in_cents` (integer), but not both. If the prepayment was made through a payment profile (non-external), the `external` flag should be set appropriately." }, { "slug": "MAXIO_REMOVE_COUPON_FROM_SUBSCRIPTION", "name": "Remove Coupon from Subscription", "description": "Removes an applied coupon from a subscription in Maxio (Chargify) Advanced Billing. Use when you need to remove a promotional discount from an existing subscription and restore regular pricing. This action is irreversible — the coupon will be permanently removed from the subscription and cannot be recovered without reapplying it. Note: If multiple coupons are applied to the subscription, all coupons will be removed. The subscription will then be billed at its regular product price." }, { "slug": "MAXIO_REMOVE_SUBSCRIPTION_FROM_GROUP", "name": "Remove Subscription from Group", "description": "Removes a subscription from its subscription group in Maxio Advanced Billing. Use this action when you need to unlink a subscription from its group, such as when migrating a subscription to operate independently or reorganizing group membership. This action is irreversible — once the subscription is removed from the group, it cannot be recovered through this endpoint." }, { "slug": "MAXIO_REOPEN_INVOICE", "name": "Reopen Invoice", "description": "Reopens a voided or canceled invoice, changing its status back to open. Use when you need to reinstate an invoice that was previously voided or canceled. This action allows the invoice to be paid or modified again. Only invoices with 'voided' or 'canceled' status can be reopened. Note: If the invoice had payments applied before being voided/canceled, those payments may need to be reallocated. This action is reversible by voiding or canceling the invoice again." }, { "slug": "MAXIO_REPLAY_WEBHOOKS", "name": "Replay Webhooks", "description": "Replays specified webhook deliveries in Maxio Advanced Billing. Use this action when you need to resend webhooks that may have failed, were not delivered, or need to be resent for any reason. Provide a list of webhook IDs to replay their corresponding events. This action is idempotent — calling it with the same webhook IDs will resend the same webhooks again." }, { "slug": "MAXIO_RESET_SUBSCRIPTION_COMPONENTS_PRICE_POINTS", "name": "Bulk Reset Subscription Components Price Points", "description": "Resets subscription component price points to their default values. Use when you need to reset custom or overridden price points for subscription components back to their original default configuration. This action can reset all component price points at once, or selectively reset specific components by providing a list of component IDs. If no component IDs are provided, all components will be reset. Note: This action modifies the subscription's pricing configuration. Once reset, any custom price overrides will be lost." }, { "slug": "MAXIO_RESUME_SUBSCRIPTION", "name": "Resume Subscription", "description": "Resumes a paused subscription in Maxio (Chargify) Advanced Billing. Use when you need to restore a previously paused subscription and resume billing and service delivery. This action is reversible — you can pause the subscription again if needed. The subscription will transition from 'paused' state back to 'active' state and billing will resume according to the subscription's billing cycle." }, { "slug": "MAXIO_RETRY_SUBSCRIPTION", "name": "Retry Subscription", "description": "Retries payment for a past due subscription in Maxio (Chargify) Advanced Billing. Use when a subscription has failed payments and you need to manually trigger a retry of the billing attempt. This is useful when the automatic retry attempts have been exhausted or when you want to manually retry outside the standard retry schedule. The subscription should be in a 'past_due' state for this action to succeed. If payment succeeds, the subscription will return to an 'active' state. If payment fails again, the subscription will remain in 'past_due' state." }, { "slug": "MAXIO_REVOKE_BILLING_PORTAL_ACCESS", "name": "Revoke Billing Portal Access", "description": "Revokes billing portal access for a customer. This action invalidates the customer's current billing portal invitation, preventing them from accessing the self-service portal to view invoices, update payment methods, or manage their subscription. Use this action when a customer requests to have their billing portal access removed, or when access needs to be terminated for security or billing reasons. This action is irreversible — once revoked, the customer will need to be re-invited to regain portal access. Note: The customer must already have portal access enabled. If the customer does not have an active portal invitation, the API may return an appropriate error." }, { "slug": "MAXIO_SEND_INVOICE", "name": "Send Invoice", "description": "Sends an invoice to the customer via email. Use when you need to email an invoice to the customer. By default, the invoice will be sent to the customer on the subscription. Optionally, you can specify custom recipient email addresses to override the defaults. This action sends the invoice immediately and triggers the delivery process to all specified recipients." }, { "slug": "MAXIO_SEND_REQUEST_UPDATE_PAYMENT_EMAIL", "name": "Send Request Update Payment Email", "description": "Sends an email to the customer requesting they update their payment method. Use when you need to prompt a customer to update their credit card or payment method on file. This is typically used when their current payment method is expiring, has been declined, or needs to be refreshed for any reason. The email will be sent to the billing email address associated with the subscription's customer account. The customer will receive a link to securely update their payment information through the billing portal. This action does not modify any subscription or payment data directly — it only triggers an email notification to the customer." }, { "slug": "MAXIO_UNARCHIVE_COMPONENT_PRICE_POINT", "name": "Unarchive Component Price Point", "description": "Unarchives a component price point, restoring it to active status. Use this action when you need to reactivate an archived price point that was previously deactivated. Once unarchived, the price point becomes available for new subscriptions again. This action is idempotent — unarchiving an already active price point has no effect." }, { "slug": "MAXIO_UNARCHIVE_OFFER", "name": "Unarchive Offer", "description": "Unarchives a previously archived offer, making it available for new subscriptions again. Use this action when you need to restore an archived offer that was previously deactivated. This action is idempotent — unarchiving an already active offer has no effect." }, { "slug": "MAXIO_UNARCHIVE_PRODUCT_PRICE_POINT", "name": "Unarchive product price point", "description": "Unarchives a product price point by its ID. Use when you need to restore an archived price point that was previously deactivated. Once unarchived, the price point becomes available for new subscriptions again. This action is idempotent — unarchiving an already active price point has no effect." }, { "slug": "MAXIO_UPDATE_AUTOMATIC_SUBSCRIPTION_RESUMPTION", "name": "Update Automatic Subscription Resumption", "description": "Updates automatic resumption settings for a paused subscription in Maxio (Chargify) Advanced Billing. Use when you need to enable or disable automatic resumption for a subscription that is in a paused (hold) state. This controls whether the subscription will automatically resume billing at the end of the paused period, or remain paused until manually resumed. Note: The subscription must already be in a paused/hold state for this action to take effect." }, { "slug": "MAXIO_UPDATE_COMPONENT", "name": "Update Component", "description": "Updates a component's details in Chargify. Use when you need to modify the name, description, pricing scheme, or other attributes of an existing billing component. Only the fields you provide in the request will be updated — fields not included retain their current values. The component_id is required to identify which component to update. This action is idempotent — calling it with the same parameters will produce the same result without side effects." }, { "slug": "MAXIO_UPDATE_COMPONENT_PRICE_POINT", "name": "Update Component Price Point", "description": "Updates a price point for a component in Maxio Advanced Billing. Use this action when you need to modify the pricing configuration (name, handle, exchange rate settings, or other attributes) of an existing component price point. Only the fields provided in the price_point object will be updated. Fields not included in the request will retain their current values." }, { "slug": "MAXIO_UPDATE_COUPON", "name": "Update Coupon", "description": "Updates an existing coupon within a product family in Maxio. Use when you need to modify coupon details such as name, description, code, discount settings, expiration date, or redemption limits. This action supports updating any writable coupon field. All fields are optional; only provided fields will be updated on the existing coupon." }, { "slug": "MAXIO_UPDATE_COUPON_SUBCODES", "name": "Update Coupon Subcodes", "description": "Updates all subcodes for an existing coupon in Maxio Advanced Billing. Use when you need to replace the entire set of subcodes for a coupon with a new set of codes for tracking, segmentation, or managing coupon usage. This operation overwrites all existing subcodes with the new codes provided. Note: Subcodes must be unique across the entire site - they cannot duplicate codes used by other coupons." }, { "slug": "MAXIO_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Updates an existing customer in Maxio/Chargify. Use this action when you need to modify customer information such as name, email, address, or other attributes. Only the fields provided in the customer object will be updated. Fields not included in the request will retain their current values." }, { "slug": "MAXIO_UPDATE_CUSTOMER_INFORMATION", "name": "Update Invoice Customer Information", "description": "Updates customer information on an invoice in Maxio/Chargify. Use this action when you need to modify customer details (such as name, email, organization) associated with a specific invoice. Only the fields provided in the customer object will be updated. Note: This action modifies the customer information displayed on the invoice. It does not update the master customer record. For updating the master customer record, use the UpdateCustomer action instead." }, { "slug": "MAXIO_UPDATE_ENDPOINT", "name": "Update Webhook Endpoint", "description": "Updates an existing webhook endpoint in Maxio Advanced Billing. Use when you need to modify an endpoint's URL or description. This action is idempotent - updating an endpoint with the same values will not change the endpoint. Only the fields provided in the endpoint object will be updated. Fields not included in the request will retain their current values." }, { "slug": "MAXIO_UPDATE_PAYMENT_PROFILE", "name": "Update Payment Profile", "description": "Updates an existing payment profile in Maxio (Chargify). Use when you need to modify an existing payment profile's details such as card information, billing address, or contact details. At least one field must be provided to update. Note: This action uses PUT which replaces the entire payment profile with the provided data. Only the fields you include in the request will be updated." }, { "slug": "MAXIO_UPDATE_PREPAID_EXPIRATION", "name": "Update Prepaid Expiration", "description": "Updates the expiration date of a prepaid usage allocation. Use this action when you need to extend or change the expiration date of a prepaid allocation on a subscription component. This action is commonly used to: - Extend the validity period of a prepaid allocation - Correct an incorrect expiration date - Adjust expiration dates for promotional or trial periods Note: This action only modifies the expiration date. It does not affect the quantity or unit balance of the allocation." }, { "slug": "MAXIO_UPDATE_PRODUCT", "name": "Update Product", "description": "Updates an existing product in Maxio/Chargify. Use this action when you need to modify product information such as name, description, pricing, billing intervals, or other attributes. Only the fields provided in the product object will be updated. Fields not included in the request will retain their current values." }, { "slug": "MAXIO_UPDATE_PRODUCT_FAMILY_COMPONENT", "name": "Update Product Family Component", "description": "Updates a component within its product family in Maxio/Chargify. Use this action when you need to modify the configuration of an existing billing component (metered, quantity-based, on/off, prepaid usage, or event-based) within a product family. Only the fields provided in the component object will be updated. Fields not included in the request will retain their current values. The response returns the full updated component object. This is an idempotent operation — calling it multiple times with the same parameters will produce the same result." }, { "slug": "MAXIO_UPDATE_PRODUCT_PRICE_POINT", "name": "Update Product Price Point", "description": "Updates a product price point in Maxio Advanced Billing. Use when you need to modify an existing pricing configuration for a product, such as changing the name, price, billing interval, trial period, or any other price point attribute. Only include the fields you want to change - all fields in the price_point object are optional for updates." }, { "slug": "MAXIO_UPDATE_REASON_CODE", "name": "Update Reason Code", "description": "Updates an existing churn reason code in Maxio/Chargify Advanced Billing. Use this action when you need to modify an existing reason code to update its code identifier, description, or position in lists. This is commonly used to keep reason codes up-to-date as your churn categorization scheme evolves. Only the fields provided in the reason_code object will be updated. Fields not included in the request will retain their current values." }, { "slug": "MAXIO_UPDATE_SUBSCRIPTION", "name": "Update Subscription", "description": "Updates an existing subscription's details in Maxio/Chargify. Use this action when you need to modify subscription attributes such as product, payment method, billing settings, or apply coupons. Only the fields provided in the subscription object will be updated. Fields not included in the request will retain their current values. This action is commonly used to change products, update payment profiles, modify billing settings, or apply promotional codes." }, { "slug": "MAXIO_UPDATE_SUBSCRIPTION_COMPONENTS_PRICE_POINTS", "name": "Bulk Update Subscription Component Price Points", "description": "Bulk updates component price points for a subscription. Use when you need to update multiple component price points for a subscription. Each component is updated via a separate API call sequentially, so the operation is NOT atomic - individual updates may succeed or fail independently. If a failure occurs partway through, earlier updates will NOT be rolled back. This action is idempotent - running it multiple times with the same parameters will produce the same result." }, { "slug": "MAXIO_UPDATE_SUBSCRIPTION_NOTE", "name": "Update Subscription Note", "description": "Updates an existing note on a subscription in Maxio/Chargify Advanced Billing. Use this action when you need to modify the content or sticky status of an existing subscription note, such as updating customer communication records, revising support notes, or changing the visibility of a note. Note: At least one of body or sticky must be provided to update the note." }, { "slug": "MAXIO_VALIDATE_COUPON", "name": "Validate Coupon", "description": "Validates a coupon code for a product. Use when you need to verify that a coupon code exists, is active, not expired, and hasn't exceeded its redemption limit before applying it to a subscription. This is a read-only operation that does not redeem the coupon." }, { "slug": "MAXIO_VOID_ADVANCE_INVOICE", "name": "Void Advance Invoice", "description": "Voids an advance invoice for a subscription. This cancels the advance billing charges and prevents them from being processed. Use this action when you need to cancel or reverse an advance invoice before it is paid. This action is irreversible once executed — the advance invoice will be marked as voided and cannot be reinstated. Use with caution and ensure you have verified the correct invoice_uid before proceeding. Note: The invoice_uid is required to specify which advance invoice to void. Only advance invoices in 'open' or 'pending' state can be voided." }, { "slug": "MAXIO_VOID_INVOICE", "name": "Void Invoice", "description": "Voids an open invoice to stop future collection. Once voided, the invoice transitions from 'open' (or 'draft') to 'voided' state and will not be collected. Use when you need to cancel an invoice before payment is processed, such as when a customer cancels before payment is due, there's a billing error, or the service was not provided. This action is irreversible — once voided, the invoice cannot be restored to its previous state. Note: Only invoices in 'draft' or 'open' state can be voided. Voiding stops all future collection attempts and marks the invoice as permanently canceled." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "maxio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "Your Maxio subdomain (e.g., \"mycompany\" from mycompany.chargify.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Maxio API key. Generate from Config > Integrations > API Keys in the Maxio dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "meetgeek", "name": "Meetgeek", "logo": "https://logos.composio.dev/api/meetgeek", "description": "AI-powered meeting recording, transcription, and insights platform", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "meetgeek_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "API region: eu for Europe, us for United States", "required": true, "default": "eu" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your MeetGeek API key from https://app.meetgeek.ai/integrations", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "melo", "name": "Melo", "logo": "https://logos.composio.dev/api/melo", "description": "Melo provides a comprehensive API for accessing real-time, deduplicated real estate listings and market analytics across France.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MELO_GET_CITIES", "name": "Get Cities", "description": "Tool to retrieve a list of cities with optional filters. Use when you need to fetch available cities before processing location-specific data." }, { "slug": "MELO_LIST_SEARCHES", "name": "List Searches", "description": "Retrieves all property searches saved by the authenticated user from the Melo API. Use this tool to: - View all saved property searches with their filtering criteria - Check notification settings for each search - Paginate through large lists of searches - Filter searches by title or notification status - Sort searches alphabetically by title Returns search details including location filters, budget ranges, property types, and notification configurations. The API uses Hydra collection format for pagination." }, { "slug": "MELO_SIMULATE_WEBHOOK", "name": "Simulate Webhook", "description": "Simulates sending a Melo webhook event to a specified endpoint for testing webhook integrations. This tool triggers the Melo API to send a sample webhook payload (either a property match or event notification) to your specified HTTPS endpoint. Useful for testing webhook handlers before going live. The API will send realistic property data including advert details, contact information, and geographic data to your endpoint. Use this when you need to test how your webhook endpoint handles Melo notifications." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "melo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Melo API Key", "type": "string", "description": "Your unique API key for accessing the Melo API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mem", "name": "Mem", "logo": "https://logos.composio.dev/api/mem", "description": "Mem is a note-taking and knowledge management application that helps users capture, organize, and retrieve information efficiently.", "category": "notes", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEM_CREATE_COLLECTION", "name": "Create Collection", "description": "Creates a new collection in Mem for organizing and grouping related notes. Collections are containers that help categorize notes by topic, project, or any organizational scheme. Each collection has a title and optional description. Use this action when you need to: - Create a new organizational container for notes - Set up a project workspace with a descriptive title - Organize notes by category or theme Returns the created collection's details including its unique ID." }, { "slug": "MEM_CREATE_NOTE_V2", "name": "Create Note V2", "description": "Tool to create a new note with markdown content and optional collection associations. The first line of content is automatically interpreted as the title. Use when you need to create a note and optionally add it to one or more collections by ID or title." }, { "slug": "MEM_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to permanently delete a Mem collection. Deletion is irreversible — only invoke after explicit user confirmation and verification of the correct collection_id." }, { "slug": "MEM_DELETE_NOTE", "name": "Delete Note", "description": "Tool to permanently delete a specific note. Deletion is irreversible — obtain explicit user confirmation before calling. Use when you need to remove a note by its unique identifier after confirming the note_id." }, { "slug": "MEM_GET_COLLECTION", "name": "Get Collection", "description": "Retrieve the details of a Mem collection by its UUID. Returns the collection's title, description, and timestamps. Use this when you need to fetch metadata for a specific collection." }, { "slug": "MEM_LIST_COLLECTIONS", "name": "List Collections", "description": "List collections with pagination support. Returns collections sorted by updated_at or created_at. Use this action to retrieve all collections or browse through collections page by page." }, { "slug": "MEM_LIST_NOTES", "name": "List Notes", "description": "Tool to list notes with pagination and filtering options. Supports filtering by collection, task presence, image presence, and file presence. Use when you need to retrieve multiple notes or search for notes matching specific criteria." }, { "slug": "MEM_READ_NOTE", "name": "Read Note", "description": "Retrieve the content and metadata of a Mem note by its UUID. Returns the note's title, markdown content, timestamps, and collection membership. Use this when you need to read or display an existing note's content." }, { "slug": "MEM_SAVE_CONTENT", "name": "Save Content", "description": "Tool to process and remember any raw content using AI. Accepts web pages, emails, transcripts, articles, or simple text. Use when you want to save and process content with optional instructions on how to process it and context about how it relates to existing knowledge." }, { "slug": "MEM_SEARCH_COLLECTIONS", "name": "Search Collections", "description": "Tool to search collections using an optional query string. Use when you need to find or list collections by title or description." }, { "slug": "MEM_SEARCH_NOTES", "name": "Search Notes", "description": "Tool to search notes in Mem using a query string with optional filtering. Supports filtering by collection IDs, task presence, image presence, and file presence." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mem_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mem API Key", "type": "string", "description": "Your Mem API key, obtainable from the API section in your Mem settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "memberspot", "name": "Memberspot", "logo": "https://logos.composio.dev/api/memberspot", "description": "Memberspot is an online course and video-hosting platform designed to facilitate knowledge management and community engagement for businesses.", "category": "online courses", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEMBERSPOT_CREATE_LOGIN_TOKEN", "name": "Create Login Token", "description": "Tool to generate a one-hour login token for a user. Use when you need to auto-login a user by their UID (token expires after one hour)." }, { "slug": "MEMBERSPOT_DELETE_USERS", "name": "Delete Users", "description": "Tool to delete one or more users from the platform. Use when you need to remove specified users by their email addresses. Only existing school users are removed; invalid or out-of-school emails are ignored." }, { "slug": "MEMBERSPOT_DELETE_USERS_POST", "name": "Delete Users (POST)", "description": "Tool to delete multiple users by email using POST method. Use this if your client does not support DELETE with body. Only existing school users are removed; invalid or out-of-school emails are ignored." }, { "slug": "MEMBERSPOT_FIND_USER_BY_MAIL", "name": "Find user by email", "description": "Tool to retrieve a user's details by their email address. Use when you need to look up a user after obtaining their email." }, { "slug": "MEMBERSPOT_GET_USER_COURSE_PROGRESS", "name": "Get user course progress", "description": "Tool to retrieve user course progress for a specific course and email. Use when you need to check how far a user has progressed through a particular course. Returns details including active posts, completed posts, and user information. Rate limited to 4 requests per second." }, { "slug": "MEMBERSPOT_GRANT_USER_OFFER_BY_MAIL", "name": "Grant user offer by email", "description": "Tool to grant a user access to an offer by email. If the user does not exist, a new user is created automatically." }, { "slug": "MEMBERSPOT_LIST_CUSTOM_USER_PROPERTIES", "name": "List custom user properties", "description": "Tool to list all defined custom user properties. Use when you need to retrieve metadata of custom user properties after authentication." }, { "slug": "MEMBERSPOT_LIST_OFFERS", "name": "List all offers", "description": "Retrieves all available offers (products/course bundles) from the Memberspot school. Use this to discover offer IDs before granting or revoking user access. Each offer contains course IDs it grants access to and metadata like priority and update time. No parameters required - returns all offers in the school." }, { "slug": "MEMBERSPOT_LIST_USER_COURSE_PROGRESS", "name": "List user course progress", "description": "Retrieves paginated list of all course progress for a specific user by email. Use to track user progress across all enrolled courses, including active and completed posts. Rate limited to 4 requests per second." }, { "slug": "MEMBERSPOT_LIST_USERS", "name": "List Users", "description": "List all users in your Memberspot school with optional filtering and pagination. Use this tool to: - Retrieve all users in your membership platform - Filter users by offer access, course enrollment, or active status - Paginate through large user lists using the nextPage token Returns user details including email, name, creation date, progress, and custom properties. Note: API rate limit is 4 requests per second." }, { "slug": "MEMBERSPOT_SET_OFFER_EXPIRES", "name": "Set offer expiration", "description": "Tool to set or remove the expiration date for an offer for a user. Use when you need to grant time-limited access to an offer or remove time limits from an existing offer. When no value is provided for expiresAt, the offer expiration will be removed." }, { "slug": "MEMBERSPOT_SET_ORDER_STATE", "name": "Set order state", "description": "Manages order-based offer access for a user in Memberspot. Use this to activate (grant access), deactivate (revoke access), or delete an order-based offer association. Order IDs typically come from payment providers (Stripe, Copecart, Digistore) after a purchase." }, { "slug": "MEMBERSPOT_SET_USER_OFFER_STATE", "name": "Set user offer state", "description": "Tool to revoke or set the state of a specific offer for a user. Use after confirming whether the user should gain or lose access." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "memberspot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Memberspot API Key", "type": "string", "description": "The API key for authenticating requests to the Memberspot API. Obtain it from your Memberspot account settings under 'Integrations' > 'API Keys'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "memberstack", "name": "Memberstack", "logo": "https://logos.composio.dev/api/memberstack", "description": "Memberstack is a platform that enables developers to add user authentication, payments, and member management to their websites without writing backend code.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEMBERSTACK_CREATE_MEMBER", "name": "Create Member", "description": "Tool to create a new member in your application. Use after gathering email, password, optional plans, custom fields, metadata, and redirect." }, { "slug": "MEMBERSTACK_DELETE_MEMBER", "name": "Delete Member", "description": "Tool to permanently delete a member from your application. Use after confirming you no longer need the member's data and have the member ID." }, { "slug": "MEMBERSTACK_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve a specific member by ID or email. Use when you need to fetch member profile details for a given identifier (ID or email). Example: \"Get member mem_sb_12345\"." }, { "slug": "MEMBERSTACK_LIST_DATA_TABLES", "name": "List Data Tables", "description": "Tool to retrieve all data tables in your Memberstack application. Returns table metadata including keys, field definitions, and access control rules." }, { "slug": "MEMBERSTACK_LIST_MEMBERS", "name": "List Members", "description": "Tool to retrieve a paginated list of all members in your application. Use when you need to iterate through members with cursor-based pagination." }, { "slug": "MEMBERSTACK_LIST_PLANS", "name": "List Plans", "description": "Tool to list all available membership plans. Use when you need to retrieve plan IDs and details before assigning or comparing plans." }, { "slug": "MEMBERSTACK_REMOVE_FREE_PLAN", "name": "Remove Free Plan", "description": "Tool to remove a free plan from an existing member. Use after confirming the member's subscription status. Example: \"Remove free plan pln_sb_67890 from member mem_sb_12345\"." }, { "slug": "MEMBERSTACK_UPDATE_MEMBER", "name": "Update Member", "description": "Tool to update an existing member's information. Use when you have a member ID and need to modify their email, customFields, metaData, JSON data, or loginRedirect." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "memberstack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Memberstack Secret API Key", "type": "string", "description": "Your Memberstack secret API key, used for authenticating API requests. Secret keys carry administrative privileges and should be kept secure and used only in server-side environments.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "membervault", "name": "Membervault", "logo": "https://logos.composio.dev/api/membervault", "description": "MemberVault is a Relationship Marketing Platform that allows users to host courses, memberships, and other digital products in one place.", "category": "online courses", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEMBERVAULT_ADD_USER", "name": "Add User to Course", "description": "Tool to add a user to a specified product. Use when enrolling a user into a course without duplication." }, { "slug": "MEMBERVAULT_DELETE_USER", "name": "Delete User", "description": "Tool to completely delete a user from the account, including all data, progress, and quiz answers (irreversible). Use when you need to permanently remove a user. Example: \"Delete user with email user@example.com\"" }, { "slug": "MEMBERVAULT_GET_COURSES", "name": "Get Courses", "description": "Tool to retrieve all courses (products) in the MemberVault account. Use when you need to list available courses after setting up authentication." }, { "slug": "MEMBERVAULT_REMOVE_USER", "name": "Remove User from Course", "description": "Tool to remove a user's access to a product (course). This simply removes access to the product without deleting the user from the account. Use when revoking course access." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "membervault_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "MemberVault Subdomain", "type": "string", "description": "The subdomain of your MemberVault account, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "MemberVault API Key", "type": "string", "description": "The API key for authenticating requests to the MemberVault API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "metabase", "name": "Metabase", "logo": "https://logos.composio.dev/api/metabase", "description": "Metabase is an open-source business intelligence tool that lets you ask questions about your data and visualize answers as charts, graphs, and dashboards.", "category": "business intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 194, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "METABASE_CREATE_BOOKMARK", "name": "Create Bookmark", "description": "Tool to create a new bookmark for a Metabase item (card, dashboard, collection, or dataset). Use when the user wants to bookmark a specific item for quick access." }, { "slug": "METABASE_CREATE_CARD_PIVOT_QUERY", "name": "Run Card Pivot Query", "description": "Tool to run a pivot table query on a Metabase card (question). Use when you need to execute the query associated with a specific card and get results formatted for pivot table visualization. The response includes data rows, column metadata, query status, and execution timing." }, { "slug": "METABASE_CREATE_CARD_QUERY1", "name": "Run Card Query", "description": "Tool to run the query associated with a Card and return its results. Use when you need to execute a card's query with optional parameters and cache control." }, { "slug": "METABASE_CREATE_DASHBOARD_COPY", "name": "Copy Dashboard", "description": "Tool to create a copy of an existing Metabase dashboard. Use when you need to duplicate a dashboard with optional customization of name, description, and collection placement. Supports both shallow copy (references same cards) and deep copy (duplicates all cards)." }, { "slug": "METABASE_CREATE_DASHBOARD_PIVOT_DASHCARD_CARD", "name": "Run Dashboard Pivot DashCard Query", "description": "Tool to run a pivot table query for a specific DashCard. Use when you need to execute a pivot table query on a dashboard card with optional parameter filters." }, { "slug": "METABASE_CREATE_DASHBOARD_SAVE_COLLECTION", "name": "Save Dashboard to Collection", "description": "Tool to save a denormalized dashboard description into a collection. Use when you need to create a new dashboard directly in a specific collection with full configuration including cards, tabs, and parameters." }, { "slug": "METABASE_CREATE_DATABASE_DISCARD_VALUES", "name": "Discard Database Field Values", "description": "Tool to discard all saved field values for a specific database. Use when you need to clear cached field value data for all fields in a database. Requires superuser privileges." }, { "slug": "METABASE_CREATE_DATABASE_DISMISS_SPINNER", "name": "Dismiss Database Sync Spinner", "description": "Tool to manually set the initial sync status of a Database and corresponding tables to complete. Use when you need to dismiss the synchronization spinner for a database after initial setup." }, { "slug": "METABASE_CREATE_DATABASE_RESCAN_VALUES", "name": "Trigger Database Field Values Rescan", "description": "Tool to trigger a manual scan of field values for a Database. Use when you need to refresh field values for filter dropdowns after data changes. Requires superuser permissions." }, { "slug": "METABASE_CREATE_DATABASE_SYNC_SCHEMA", "name": "Trigger Database Schema Sync", "description": "Tool to trigger a manual update of the schema metadata for a Database. Use when you need to refresh the database schema metadata in Metabase after structural changes." }, { "slug": "METABASE_CREATE_DATASET_PARAMETER_SEARCH", "name": "Search Dataset Parameter Values", "description": "Tool to search for parameter values in datasets when editing cards or dashboards. Use when you need to provide autocomplete functionality for parameters. Expects a query string and returns matching values." }, { "slug": "METABASE_CREATE_FIELD_DIMENSION", "name": "Create Field Dimension", "description": "Tool to set the dimension for a field at the specified ID in Metabase. Use when you need to configure field remapping or display values for better data presentation." }, { "slug": "METABASE_CREATE_FIELD_DISCARD_VALUES", "name": "Discard Field Values", "description": "Tool to discard the FieldValues belonging to a Metabase field. Use when you need to clear cached field values. Only applies to fields that have FieldValues. If the Field's Database is set up to automatically sync FieldValues, they will be recreated during the next sync." }, { "slug": "METABASE_CREATE_FIELD_VALUES", "name": "Update Field Values", "description": "Tool to update field values and human-readable values for a Field whose semantic type is category/city/state/country or whose base type is type/Boolean. Use when you need to set or update the distinct values for a field along with optional human-readable remappings." }, { "slug": "METABASE_CREATE_PERSIST_CARD_UNPERSIST", "name": "Unpersist Card", "description": "Tool to unpersist a Metabase card/model. Deletes the persisted table backing the model and all queries after this will use the card's query rather than the saved version. Use when you need to remove persistence from a model." }, { "slug": "METABASE_CREATE_PERSIST_DATABASE_UNPERSIST", "name": "Disable Database Model Persistence", "description": "Tool to disable model persistence for a Metabase database. Use when you need to turn off caching of model results. Returns success whether persistence was already disabled or not (idempotent operation)." }, { "slug": "METABASE_CREATE_TABLE_DISCARD_VALUES", "name": "Discard Table Field Values", "description": "Tool to discard the FieldValues belonging to the Fields in a Metabase Table. Use when you need to clear cached field values for all fields in a table. Only applies to fields that have FieldValues. If this Table's Database is set up to automatically sync FieldValues, they will be recreated during the next sync." }, { "slug": "METABASE_CREATE_TABLE_RESCAN_VALUES", "name": "Rescan Table Field Values", "description": "Tool to manually trigger an update for FieldValues for Fields belonging to a specific Table. Use when you need to refresh field value caches after table data changes. Only applies to Fields that are eligible for FieldValues." }, { "slug": "METABASE_CREATE_TABLE_SYNC_SCHEMA", "name": "Sync Table Schema", "description": "Tool to trigger a manual update of the schema metadata for a specific Table. Use when you need to refresh table schema information after database changes. This synchronizes columns, data types, and other metadata from the underlying database." }, { "slug": "METABASE_DELETE_API_ACTION_ACTION_ID", "name": "Delete Action", "description": "Tool to delete a Metabase action by its ID. Use when you need to permanently remove an action from the system." }, { "slug": "METABASE_DELETE_API_CACHE", "name": "Delete API Cache", "description": "Tool to delete/clear cached data in Metabase for specific entities. Use when you need to invalidate cache for a database, dashboard, question, or clear all cache (root)." }, { "slug": "METABASE_DELETE_API_TIMELINE_ID", "name": "Delete Timeline", "description": "Tool to delete a timeline by ID. Use when you need to permanently remove a timeline. Returns success status on completion." }, { "slug": "METABASE_DELETE_BOOKMARK", "name": "Delete Bookmark", "description": "Tool to delete a bookmark by model and ID. Use when you need to remove a bookmark assigned to the user making the request. The operation returns HTTP 204 No Content on successful deletion." }, { "slug": "METABASE_DELETE_CARD", "name": "Delete Card", "description": "Tool to hard delete a Metabase card. Use when you need to permanently remove a card from the system. For soft deletion, use PUT /api/card/:id instead." }, { "slug": "METABASE_DELETE_DASHBOARD", "name": "Delete Dashboard", "description": "Tool to hard delete a Metabase dashboard by its ID. Use when you need to permanently remove a dashboard. This will also remove any questions/models/segments/metrics that use this database. For soft delete, use the update dashboard action instead." }, { "slug": "METABASE_DELETE_EE_AUDIT_APP_USER_SUBSCRIPTIONS", "name": "Delete User Subscriptions", "description": "Tool to delete all Alert and DashboardSubscription subscriptions for a User. Use when you need to remove all subscriptions for a specific user and archive alerts/dashboards they created. This is an enterprise feature requiring admin privileges or current user access." }, { "slug": "METABASE_DELETE_FIELD_DIMENSION", "name": "Delete Field Dimension", "description": "Tool to remove the dimension associated with a field at the specified ID. Use when you need to disassociate a dimension from a field in Metabase." }, { "slug": "METABASE_DELETE_GLOSSARY", "name": "Delete Glossary Entry", "description": "Tool to delete a glossary entry from Metabase. Use when you need to permanently remove a glossary entry by its ID." }, { "slug": "METABASE_DELETE_MODEL_INDEX", "name": "Delete Model Index", "description": "Tool to delete a ModelIndex by ID from Metabase. Use when you need to remove a model index from the system." }, { "slug": "METABASE_DELETE_TIMELINE_EVENT", "name": "Delete Timeline Event", "description": "Tool to delete a Metabase timeline event. Use when you need to permanently remove a timeline event from the system." }, { "slug": "METABASE_DELETE_USER_KEY_VALUE_NAMESPACE_KEY", "name": "Delete User Key-Value Pair", "description": "Tool to delete a user key-value pair by namespace and key. Use when you need to remove a specific key-value entry from a user's namespace." }, { "slug": "METABASE_GET_ACTION", "name": "Get Action", "description": "Tool to retrieve a Metabase action by ID. Use when you need to fetch details about a specific action including its configuration, parameters, and metadata." }, { "slug": "METABASE_GET_ACTION_EXECUTE", "name": "Get Action Execute Parameters", "description": "Tool to fetch values for filling in action execution parameters. Use when you need to get parameter values for executing an action by providing PK parameters and values to select." }, { "slug": "METABASE_GET_API_ACTION", "name": "Get all Metabase actions", "description": "Tool to retrieve all actions available in the Metabase instance. Actions are entities that let you build custom forms and business logic with parameterized SQL that writes back to your database. Returns an array of action objects including query, http, and implicit action types." }, { "slug": "METABASE_GET_API_ACTIVITY_POPULAR_ITEMS", "name": "Get Popular Items", "description": "Tool to get the list of 5 popular items on the Metabase instance. Use when you need to discover frequently accessed dashboards or cards. Returns both dashboards and cards with their metadata including name, description, parent collection, and timestamps." }, { "slug": "METABASE_GET_API_ACTIVITY_RECENT_VIEWS", "name": "Get Recent Activity Views", "description": "Tool to retrieve recently viewed items in Metabase. Use when you need to get a list of cards, dashboards, collections, tables, or documents that the authenticated user has recently accessed. Returns metadata including timestamps and permissions for each viewed item." }, { "slug": "METABASE_GET_API_ALERT", "name": "Get All Alerts", "description": "Tool to retrieve all alerts in Metabase. Use when you need to get a list of all configured alerts with their settings and notification channels." }, { "slug": "METABASE_GET_API_AUTO_DASHBOARDS_DATABASE_ID_CANDIDATES", "name": "Get Automagic Dashboard Candidates", "description": "Tool to retrieve automagic dashboard candidates for a specific database. Use when you need to discover interesting tables and schemas for automatic dashboard generation. Returns an array of schema candidates with their tables, ordered by interestingness score." }, { "slug": "METABASE_GET_API_BOOKMARK", "name": "Get User Bookmarks", "description": "Tool to retrieve all bookmarks for the authenticated user. Use when you need to fetch bookmarked cards, dashboards, or collections." }, { "slug": "METABASE_GET_API_CARD", "name": "Get API Card", "description": "Tool to list all cards (questions) available to the authenticated user in Metabase. Use when you need to retrieve all saved questions, queries, or visualizations." }, { "slug": "METABASE_GET_API_CARD_CARD_ID_PARAMS_PARAM_KEY_SEARCH_QUERY", "name": "Search Card Parameter Values", "description": "Tool to search for values of a specific parameter in a Metabase card. Use when you need to provide autocomplete/search functionality for card parameters (template tags). The card must have parameters defined with dimension/field filter type." }, { "slug": "METABASE_GET_API_CARD_ID", "name": "Get Card by ID", "description": "Tool to retrieve a specific card (question) by its ID. Use when you need to get detailed information about a card including its query, visualization settings, and metadata." }, { "slug": "METABASE_GET_API_COLLECTION", "name": "Get all collections", "description": "Tool to retrieve all collections that the current user has read permissions for. Returns collections with can_write property indicating write permissions. Use when you need to list available collections or check collection permissions." }, { "slug": "METABASE_GET_API_COLLECTION_ID", "name": "Get Collection by ID", "description": "Tool to retrieve detailed information about a Metabase collection by its ID. Use when you need to get collection metadata, permissions, and hierarchy information. Accepts either a numeric collection ID or the string 'root' for the root collection." }, { "slug": "METABASE_GET_API_COLLECTION_ID_ITEMS", "name": "Get Collection Items", "description": "Tool to retrieve items from a specific Metabase collection. Use when you need to list cards (questions), dashboards, nested collections, or pulses within a collection. Supports filtering by item type and archived status." }, { "slug": "METABASE_GET_API_COLLECTION_ROOT", "name": "Get Root Collection", "description": "Tool to fetch the Root Collection and its top-level objects. Use when you need to list items at the root level that the current user can access. Shows objects with no collection_id for users with Root Collection permissions, or objects with effective location of / for others." }, { "slug": "METABASE_GET_API_COLLECTION_TREE", "name": "Get Collection Tree", "description": "Tool to retrieve the collection tree structure from Metabase. Use when you need to view the hierarchical organization of collections. Official collections are returned first in the response. Supports filtering by archived status, user ownership, depth, and specific collection ID." }, { "slug": "METABASE_GET_API_DATABASE", "name": "Get All Databases", "description": "DEPRECATED: Use METABASE_LIST_DATABASES instead for a concise, LLM-friendly response. Retrieves all Database instances configured in Metabase with full detail including connection info." }, { "slug": "METABASE_GET_API_DATABASE_ID_AUTOCOMPLETE_SUGGESTIONS", "name": "Get Database Autocomplete Suggestions", "description": "Tool to retrieve autocomplete suggestions for table and field names in a database. Use when you need to find tables or columns that match a specific prefix for query building in the SQL editor." }, { "slug": "METABASE_GET_API_DATABASE_ID_METADATA", "name": "Get Database Metadata", "description": "Tool to retrieve complete metadata for a specific database including all tables and fields. Use when you need detailed information about database structure, table schemas, and field properties." }, { "slug": "METABASE_GET_API_DATABASE_VIRTUAL_DB_DATASETS", "name": "Get Virtual Database Datasets", "description": "Tool to retrieve all datasets from a Metabase virtual database. Use when you need to list available dataset collections for a virtual database (commonly the Saved Questions virtual database with ID -1337)." }, { "slug": "METABASE_GET_API_EE_AUDIT_APP_USER_AUDIT_INFO", "name": "Get User Audit Info", "description": "Tool to get audit info for the current authenticated user. Returns audit collection info if the user has permissions to access the audit collection, otherwise returns empty map. Requires enterprise audit-app feature." }, { "slug": "METABASE_GET_API_EE_BILLING", "name": "Get Billing API Version", "description": "Tool to retrieve the billing API version information for the Metabase Enterprise Edition instance. Use when you need to check the billing API version." }, { "slug": "METABASE_GET_API_EE_DEPENDENCIES_GRAPH_DEPENDENTS", "name": "Get Resource Dependents", "description": "Tool to get dependents of a resource in Metabase's dependency graph. Use when you need to find which resources depend on a specific resource (e.g., which dashboards use a particular card). This is an Enterprise Edition feature that helps track dependencies between different Metabase objects." }, { "slug": "METABASE_GET_API_EE_EMBEDDING_HUB_CHECKLIST", "name": "Get Embedding Hub Checklist", "description": "Tool to retrieve the embedding hub checklist status for Metabase Enterprise Edition. Use when you need to check the progress of embedding setup steps." }, { "slug": "METABASE_GET_API_EE_REMOTE_SYNC_CURRENT_TASK", "name": "Get Current Remote Sync Task", "description": "Tool to retrieve the current remote sync task status in Metabase. Use when you need to check if a remote sync operation is currently running. Returns HTTP 204 when no task is active, or task details when a sync is in progress." }, { "slug": "METABASE_GET_API_EE_STALE_ID", "name": "Get Stale Data By ID", "description": "Tool to retrieve stale data information by ID from Metabase Enterprise Edition. Use when you need to fetch details about stale resources." }, { "slug": "METABASE_GET_API_EE_UPLOAD_MANAGEMENT_TABLES", "name": "Get Uploaded Tables", "description": "Tool to retrieve all uploaded tables in Metabase Enterprise Edition. Use when you need to list all tables that were created from CSV or file uploads." }, { "slug": "METABASE_GET_API_FIELD_ID_RELATED", "name": "Get Field Related Entities", "description": "Tool to retrieve related entities for a Metabase field. Use when you need to get the parent table, related segments, metrics, and other fields from the same table for a specific field ID." }, { "slug": "METABASE_GET_API_FIELD_ID_SEARCH_SEARCH_ID", "name": "Search Field Values", "description": "Tool to search for field values in Metabase that start with a given string. Use when you need autocomplete or type-ahead functionality for field values. Returns paired values from both the primary field and search field where the search field value starts with the provided string." }, { "slug": "METABASE_GET_API_FIELD_ID_VALUES", "name": "Get Field Values", "description": "Tool to retrieve distinct values for a Metabase field. Use when you need to get all distinct values of a field that has has_field_values set to 'list', including any human-readable remapped values. Returns empty response for Saved Questions virtual database fields." }, { "slug": "METABASE_GET_API_GLOSSARY", "name": "Get API Glossary", "description": "Tool to retrieve all glossary items from Metabase. Use when you need to list all glossary terms and their definitions available in the Metabase instance." }, { "slug": "METABASE_GET_API_LOGIN_HISTORY_CURRENT", "name": "Get Current User Login History", "description": "Tool to retrieve login history for the currently authenticated user. Use when you need to audit or review login activity." }, { "slug": "METABASE_GET_API_MODEL_INDEX", "name": "Get Model Index Values", "description": "Tool to retrieve indexed field values for a specific Metabase model. Use when you need to get searchable text values that have been indexed for a model. Metabase indexes text/string fields from models to make them searchable." }, { "slug": "METABASE_GET_API_MODEL_INDEX_ID", "name": "Get Model Index Details", "description": "Tool to retrieve details of a specific model index by its ID. Use when you need to get information about model indexing status, schedule, or configuration." }, { "slug": "METABASE_GET_API_NATIVE_QUERY_SNIPPET", "name": "Get all native query snippets", "description": "Tool to retrieve all native query snippets available in the Metabase instance. Native query snippets are reusable SQL fragments that can be included in native queries. Returns an array of snippet objects with their content and metadata." }, { "slug": "METABASE_GET_API_NATIVE_QUERY_SNIPPET_ID", "name": "Get Native Query Snippet by ID", "description": "Tool to retrieve a specific native query snippet by its ID. Use when you need to get details about a saved SQL snippet including its content, metadata, and template tags." }, { "slug": "METABASE_GET_API_NOTIFICATION", "name": "Get Notifications", "description": "Tool to retrieve notifications from Metabase with optional filtering. Use when you need to list notifications by creator, card, recipient, or include inactive ones. Returns an array of notification objects with their payloads, handlers, and creator information." }, { "slug": "METABASE_GET_API_PUBLIC_CARD_UUID", "name": "Get Public Card by UUID", "description": "Tool to fetch a publicly-accessible card by its public UUID and return card information including query definition, visualization settings, and parameters. Use when you need to retrieve card details that have been shared publicly. Does not require authentication when accessing via public UUID." }, { "slug": "METABASE_GET_API_PUBLIC_OEMBED", "name": "Get Public oEmbed Metadata", "description": "Tool to get oEmbed metadata for public Metabase resources. Use when you need to generate embeddable content for public dashboards or questions following the oEmbed protocol." }, { "slug": "METABASE_GET_API_PUBLIC_PIVOT_CARD_UUID_QUERY", "name": "Get Public Pivot Card Query", "description": "Tool to fetch a publicly-accessible pivot card and return query results including data rows, column metadata, and query status. Use when you need to retrieve pivot table data for cards that have been shared publicly via a public UUID. Does not require authentication when accessing via public UUID." }, { "slug": "METABASE_GET_API_PULSE", "name": "Get All Pulses", "description": "Tool to retrieve all pulses (scheduled reports/subscriptions) in Metabase. Use when you need to get a list of configured pulses with their settings and delivery channels." }, { "slug": "METABASE_GET_API_PULSE_FORM_INPUT", "name": "Get Pulse Form Input Configuration", "description": "Tool to retrieve configuration information for creating or updating Pulses (scheduled email reports). Returns available notification channels and user choices. Use when setting up or modifying pulse subscriptions." }, { "slug": "METABASE_GET_API_PULSE_ID", "name": "Get Pulse by ID", "description": "Tool to retrieve a specific pulse (subscription) by its ID. Use when you need to get detailed information about a pulse including its channels, cards, schedule, and recipients." }, { "slug": "METABASE_GET_API_PULSE_PREVIEW_CARD_ID", "name": "Get Pulse Preview Card", "description": "Tool to retrieve the HTML preview of a Metabase card formatted for pulse emails. Use when you need to get the rendered HTML representation of a card for email delivery." }, { "slug": "METABASE_GET_API_PULSE_PREVIEW_CARD_INFO_ID", "name": "Get Pulse Preview Card Info", "description": "Tool to retrieve preview information for a Metabase card formatted for pulse emails. Use when you need both the HTML rendering and metadata about a card for pulse delivery. Returns a JSON object with the card ID, type, and HTML content." }, { "slug": "METABASE_GET_API_REVISION", "name": "Get Revision by ID and Entity", "description": "Tool to retrieve a specific revision by ID and entity type. Use when you need to get details about a particular revision of a Metabase entity (card, dashboard, document, or segment)." }, { "slug": "METABASE_GET_API_REVISION_ENTITY_ID", "name": "Get Entity Revision History", "description": "Tool to retrieve the revision history for a Metabase entity (dashboard, card, metric, or segment). Use when you need to see the complete change history, who made changes, and what was modified. Returns an array of revision objects ordered from most recent to oldest." }, { "slug": "METABASE_GET_API_SEARCH", "name": "Search Metabase objects", "description": "Tool to search Cards, Dashboards, Collections, Tables, Databases, and Pulses for a substring. Use when you need to find Metabase objects by name or search across multiple object types." }, { "slug": "METABASE_GET_API_SEARCH_WEIGHTS", "name": "Get Search Weights", "description": "Tool to retrieve the current search weight configuration for the Metabase instance. Use when you need to understand how search results are ranked based on factors like recency, bookmarks, view count, and other scoring factors." }, { "slug": "METABASE_GET_API_SEGMENT", "name": "Get All Segments", "description": "Tool to retrieve all segments from Metabase. Use when you need to list all available segments or filter definitions for tables." }, { "slug": "METABASE_GET_API_SESSION_PASSWORD_RESET_TOKEN_VALID", "name": "Validate Password Reset Token", "description": "Tool to validate a password reset token in Metabase. Use when you need to check if a password reset token is still valid and can be used to reset a user's password." }, { "slug": "METABASE_GET_API_SESSION_PROPERTIES", "name": "Get Session Properties", "description": "Tool to retrieve all global session properties and their values that are public. Use when you need to access configuration settings visible to the current user." }, { "slug": "METABASE_GET_API_TABLE_CARD_ID_FKS", "name": "Get Card Table Foreign Keys", "description": "Tool to retrieve foreign key relationships for a card-based virtual table. Use when you need to get FK information for a saved question (card). Note that virtual tables typically return an empty array as they don't have traditional database foreign key relationships." }, { "slug": "METABASE_GET_API_TABLE_CARD_ID_QUERY_METADATA", "name": "Get Card Virtual Table Query Metadata", "description": "Tool to retrieve metadata for a virtual table created from a card (saved question). Use when you need comprehensive information about a card's virtual table including database details, fields with their types and properties, field foreign keys, segments, and metrics." }, { "slug": "METABASE_GET_API_TIMELINE", "name": "Get All Timelines", "description": "Tool to retrieve all timelines in Metabase. Use when you need to get a list of all timelines with their settings, events, and associated metadata." }, { "slug": "METABASE_GET_API_TIMELINE_COLLECTION_ID", "name": "Get Collection Timelines", "description": "Tool to retrieve timelines associated with a specific Metabase collection. Use when you need to get all timelines and their events for a collection. Returns an empty array if the collection has no timelines." }, { "slug": "METABASE_GET_API_TIMELINE_COLLECTION_ROOT", "name": "Get Root Collection Timelines", "description": "Tool to retrieve all timelines associated with the root collection. Use when you need to get timelines where items have no collection_id. The root collection is a virtual collection for items without a specific collection assignment." }, { "slug": "METABASE_GET_API_TIMELINE_EVENT_ID", "name": "Get Timeline Event", "description": "Tool to retrieve a timeline event by ID. Use when you need to fetch details about a specific timeline event including its name, description, timestamp, and metadata." }, { "slug": "METABASE_GET_API_TIMELINE_ID", "name": "Get Timeline by ID", "description": "Tool to fetch a timeline by its ID from Metabase. Use when you need to retrieve timeline details including optional events. Add include='events' to get unarchived events, and archived=true to return all events." }, { "slug": "METABASE_GET_API_USER_CURRENT", "name": "Get Current User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to get the current user's profile, permissions, and account details." }, { "slug": "METABASE_GET_API_USER_ID", "name": "Get User by ID", "description": "Tool to retrieve a specific user by their ID. Use when you need to get detailed information about a user including their profile, permissions, and status." }, { "slug": "METABASE_GET_API_USER_KEY_VALUE_NAMESPACE_NAMESPACE", "name": "Get User Key-Value by Namespace", "description": "Tool to retrieve all user key-value pairs for a specified namespace. Use when you need to fetch user-specific settings or preferences stored within a namespace. Returns HTTP 204 (No Content) when the namespace exists but contains no data." }, { "slug": "METABASE_GET_API_USER_RECIPIENTS", "name": "Get User Recipients", "description": "Tool to retrieve users for recipient selection. Returns only active users with permissions-based filtering applied. Use when you need to get a list of users that can be selected as recipients for notifications, alerts, or subscriptions." }, { "slug": "METABASE_GET_API_UTIL_RANDOM_TOKEN", "name": "Generate Random Security Token", "description": "Tool to generate a cryptographically secure random token for Metabase. Use when you need to generate a secure token for embedding-secret-key or other security purposes." }, { "slug": "METABASE_GET_AUTOMAGIC_DASHBOARDS", "name": "Get Automagic Dashboard", "description": "Tool to retrieve an automagic dashboard for a specified entity with its ID. Use when you need to get auto-generated analytics and visualizations for tables, databases, cards, segments, or adhoc queries." }, { "slug": "METABASE_GET_AUTOMAGIC_DASHBOARDS_CELL", "name": "Get Automagic Dashboard Cell Analysis", "description": "Tool to return an automagic dashboard analyzing a specific cell in an entity's data. Use when you need to generate automated insights and visualizations for a cell query within a table, database, or other Metabase entity. The cell-query must be a base64-encoded JSON object in MBQL format." }, { "slug": "METABASE_GET_AUTOMAGIC_DASHBOARDS_COMPARE", "name": "Get Automagic Dashboards Compare", "description": "Tool to return an automagic comparison dashboard for entity with id compared with comparison-entity with comparison-entity-id-or-query. Use when you need to generate a visual comparison dashboard between two entities (tables, segments, or adhoc queries)." }, { "slug": "METABASE_GET_AUTOMAGIC_DASHBOARDS_RULE", "name": "Get automagic dashboard by rule", "description": "Tool to return an automagic dashboard for a specific entity using a dashboard template with rule prefix. Use when you need to generate an auto-generated analytical dashboard for a table, segment, or adhoc query with specific visualization patterns." }, { "slug": "METABASE_GET_AUTOMAGIC_DASH_ENTITY_CELL_QUERY_RULE", "name": "Get Automagic Dashboard Cell Rule Analysis", "description": "Tool to fetch an automagic dashboard analyzing a specific cell using a template rule. Use when you need to generate automated insights and visualizations for a cell query with a specific dashboard template (e.g., correlations analysis, overview). Returns a dashboard with cards analyzing the specified cell using the given template from the prefix directory." }, { "slug": "METABASE_GET_AUTOMAGIC_DASH_ENTITY_QUERY_METADATA", "name": "Get Automagic Dashboard Query Metadata", "description": "Tool to retrieve all metadata for an automagic dashboard for the specified entity type and ID. Use when you need databases, tables, fields, segments, metrics, cards, dashboards, or snippets metadata. Returns comprehensive metadata used to build automagic dashboards that automatically analyze data patterns." }, { "slug": "METABASE_GET_CARD_DASHBOARDS", "name": "Get Card Dashboards", "description": "Tool to get a list of dashboards that a specific card appears in. Use when you need to find which dashboards contain a particular card. Returns an array of dashboard objects with id and name for each dashboard." }, { "slug": "METABASE_GET_CARD_QUERY_METADATA", "name": "Get Card Query Metadata", "description": "Tool to get comprehensive query metadata for a Metabase card (saved question). Use when you need detailed information about the database structure, tables, fields, segments, and metrics associated with a card. This endpoint consolidates metadata that would otherwise require multiple API calls to /api/field/:id, /api/database/:id, and /api/table/:id/query_metadata." }, { "slug": "METABASE_GET_CARD_SERIES", "name": "Get Card Series", "description": "Tool to fetch a list of cards compatible as series with a specified card. Only cards with display types 'bar', 'scalar', 'line', or 'area' are compatible with series functionality. Use when you need to find cards that can be combined into multi-series visualizations. Returns 400 error for incompatible card types like 'smartscalar'." }, { "slug": "METABASE_GET_COMPARE_AUTOMAGIC_DASHBOARDS", "name": "Get Automagic Comparison Dashboard", "description": "Tool to retrieve an automagic comparison dashboard comparing a cell in one entity with another entity. Use when you need to generate comparative analytics and visualizations between two tables, segments, or adhoc queries based on a specific cell query." }, { "slug": "METABASE_GET_DASHBOARD_BY_ID", "name": "Get Dashboard by ID", "description": "Tool to retrieve a dashboard by its ID from Metabase. Use when you need to fetch dashboard details including name, description, cards, parameters, and metadata." }, { "slug": "METABASE_GET_DASHBOARD_PARAMS_SEARCH", "name": "Search Dashboard Parameter Values", "description": "Tool to fetch possible values of a dashboard parameter that contain the search query. Use when you need to search or filter parameter values for a specific dashboard parameter. The parameter must be linked to a text field (not DateTime or other non-text types)." }, { "slug": "METABASE_GET_DASHBOARD_QUERY_METADATA", "name": "Get Dashboard Query Metadata", "description": "Tool to get all of the required query metadata for the cards on a dashboard. Use when you need to understand what databases, tables, fields, snippets, and cards are used by a specific dashboard." }, { "slug": "METABASE_GET_DASHBOARD_RELATED", "name": "Get Dashboard Related Entities", "description": "Tool to retrieve related entities for a Metabase dashboard. Use when you need to find questions/cards that are related to a specific dashboard." }, { "slug": "METABASE_GET_DATABASE_BY_ID", "name": "Get Database By ID", "description": "Tool to retrieve a single database by ID from Metabase. Use when you need to get detailed information about a specific database, optionally including its tables and fields." }, { "slug": "METABASE_GET_DATABASE_CARD_AUTOCOMPLETE_SUGGESTIONS", "name": "Get Database Card Autocomplete Suggestions", "description": "Tool to return a list of Card autocomplete suggestions for a given query in a given Database. Use when the user needs to search for cards (questions or models) in a specific database, typically for autocomplete functionality." }, { "slug": "METABASE_GET_DATABASE_DATASETS", "name": "Get Database Datasets", "description": "Tool to retrieve tables (models and metrics) from a virtual database schema in Metabase. Use when you need to discover available datasets in the Saved Questions virtual database. The virtual database ID -1337 represents the Saved Questions database where models and metrics are stored." }, { "slug": "METABASE_GET_DATABASE_FIELDS", "name": "Get Database Fields", "description": "Tool to retrieve all field metadata from a Metabase database. Use when you need to explore available fields across all tables in a database. Returns field names, types, display names, and table associations for building queries or understanding database structure." }, { "slug": "METABASE_GET_DATABASE_HEALTHCHECK", "name": "Get Database Healthcheck", "description": "Tool to check if a Metabase database can currently connect. Use when you need to verify database connectivity status. Returns the connection health status for the specified database ID." }, { "slug": "METABASE_GET_DATABASE_SCHEMAS", "name": "Get Database Schemas", "description": "Tool to retrieve all schemas with tables for a specific database in Metabase. Use when you need to discover available database schemas. Returns only schemas that contain tables, excluding empty schemas." }, { "slug": "METABASE_GET_DATABASE_SETTINGS_AVAILABLE", "name": "Get Database Settings Available", "description": "Tool to get all database-local settings and their availability for a given database. Use when you need to check which settings are available or enabled for a specific database. Returns a map of setting names to their availability status (enabled/disabled)." }, { "slug": "METABASE_GET_DATABASE_SYNCABLE_SCHEMAS", "name": "Get Database Syncable Schemas", "description": "Tool to retrieve all syncable schemas for a specific database in Metabase. Use when you need to discover schemas available for syncing or CSV uploads. Returns all schemas that can be synced, unlike the regular schemas endpoint which excludes empty schemas." }, { "slug": "METABASE_GET_FIELD_REMAPPING", "name": "Get Field Remapping", "description": "Tool to fetch remapped field values for a specific field in Metabase. Use when you need to retrieve human-readable display values that correspond to field values. Returns an array of value pairs where each pair contains the original field value and its remapped display text." }, { "slug": "METABASE_GET_FIELD_SUMMARY", "name": "Get Field Summary", "description": "Tool to get summary statistics for a Metabase field by its ID. Use when you need count and distinct count information for a specific field. Returns count (total values) and distincts (distinct unique values) for the specified field." }, { "slug": "METABASE_GET_MOST_RECENTLY_VIEWED_DASHBOARD", "name": "Get Most Recently Viewed Dashboard", "description": "Tool to retrieve the most recently viewed dashboard for the authenticated user. Use when you need to check what dashboard the user last accessed." }, { "slug": "METABASE_GET_PULSE_PREVIEW_DASHBOARD", "name": "Get Dashboard HTML Preview", "description": "Tool to retrieve an HTML preview rendering of a dashboard. Use when you need to get the HTML representation of a dashboard for rendering or pulse notifications." }, { "slug": "METABASE_GET_TABLE_BY_ID", "name": "Get Table By ID", "description": "Tool to retrieve basic table information by ID from Metabase. Use when you need table details including name, schema, entity type, and associated database information. For comprehensive table metadata with fields and query information, use the query_metadata endpoint instead." }, { "slug": "METABASE_GET_TABLE_DATA", "name": "Get Table Data", "description": "Tool to retrieve data from a specific table in Metabase. Use when you need to fetch the actual data rows and column metadata for a table. Returns table data including rows, column metadata, and optional statistics." }, { "slug": "METABASE_GET_TABLE_FKS", "name": "Get Table Foreign Keys", "description": "Tool to get all foreign keys whose destination is a field that belongs to a specific table. Use when you need to retrieve foreign key relationships for a table." }, { "slug": "METABASE_GET_TABLE_QUERY_METADATA", "name": "Get Table Query Metadata", "description": "Tool to get metadata about a Table useful for running queries. Returns DB, fields, field FKs, and field values. Deprecated: Use METABASE_GET_TABLE_SCHEMA instead — it provides a more concise, LLM-friendly output with FK resolution and supports lookup by table name." }, { "slug": "METABASE_GET_TABLE_SCHEMA", "name": "Get Table Schema", "description": "Gets column names, types, and foreign key relationships for a Metabase table. Use this before writing queries to know exact column names and types. Accepts either a table_id directly, or database_id + table_name to look up the table. Discovery chain: METABASE_LIST_DATABASES → METABASE_LIST_TABLES → METABASE_GET_TABLE_SCHEMA → METABASE_POST_API_DATASET." }, { "slug": "METABASE_GET_USER_KEY_VALUE", "name": "Get User Key-Value Setting", "description": "Tool to retrieve a user-specific key-value pair from Metabase storage. Use when you need to fetch user preferences, settings, or stored values organized by namespace and key. Returns the stored value if it exists, or None for unset keys (HTTP 204 response)." }, { "slug": "METABASE_LIST_DATABASES", "name": "List Databases", "description": "Lists all databases configured in Metabase with essential info: ID, name, and engine. Use this first to discover available database IDs before running queries or listing tables." }, { "slug": "METABASE_LIST_TABLES", "name": "List Tables", "description": "Lists all tables in a Metabase database with their IDs, names, and schemas. Use this after METABASE_LIST_DATABASES to discover available tables before querying. For detailed column information, use METABASE_GET_TABLE_SCHEMA next." }, { "slug": "METABASE_METABASE_GET_API_DASH_ID_PARAMS_PARAM_KEY_REMAPPING", "name": "Get Dashboard Parameter Remapping", "description": "Tool to get parameter remapping for a dashboard parameter value. Use when you need to retrieve remapped values or human-readable representations for a specific parameter value in a Metabase dashboard." }, { "slug": "METABASE_METABASE_GET_API_DASH_ID_PARAMS_PARAM_KEY_VALUES", "name": "Get Dashboard Parameter Values", "description": "Tool to fetch available values for a specific dashboard parameter. Use when you need to get the list of possible values that can be used to filter a dashboard parameter." }, { "slug": "METABASE_METABASE_POST_API_EE_METABOT_TOOLS_CREATE_DASH_SUB", "name": "Create Dashboard Subscription", "description": "Tool to create a dashboard subscription using Metabot tools. Use when you need to set up automated delivery of a dashboard to an email address on a scheduled basis." }, { "slug": "METABASE_METABASE_POST_API_EE_METABOT_TOOLS_GET_DASH_DETAILS", "name": "Get Dashboard Details", "description": "Tool to retrieve dashboard details for a Metabase metabot conversation. Use when you need to get information about a specific dashboard including its name, description, type, and verification status within a conversation context." }, { "slug": "METABASE_METABASE_POST_API_EE_METABOT_TOOLS_GET_DOC_DETAILS", "name": "Get Document Details via Metabot", "description": "Tool to retrieve document details using Metabase metabot tools. Use when you need to fetch specific document information by document ID within a conversation context." }, { "slug": "METABASE_POST_API_ACTIVITY_RECENTS", "name": "Record Recent Activity", "description": "Tool to record recent activity for a Metabase item. Use when tracking user interactions with cards, dashboards, tables, or other Metabase objects. This helps maintain the user's recent activity history for quick access to frequently used items." }, { "slug": "METABASE_POST_API_CARD", "name": "Create Card", "description": "Tool to create a new Metabase card (question or model). Use when you need to create a new query, report, or visualization in Metabase." }, { "slug": "METABASE_POST_API_CARD_CARD_ID_QUERY", "name": "Execute Card Query (Deprecated)", "description": "DEPRECATED: Use METABASE_METABASE_CREATE_CARD_QUERY1 instead. Tool to execute a query for a saved Metabase card/question and retrieve results. Use when you need to run a saved question and get the data rows, columns, and metadata. Optionally accepts parameters for filtering results using template tag variables." }, { "slug": "METABASE_POST_API_CARD_COLLECTIONS", "name": "Bulk Move Cards to Collection", "description": "Tool to bulk move multiple Metabase cards into a target collection or remove them from collections. Use when you need to organize multiple cards by moving them to a specific collection, or pass null as collection_id to remove cards from all collections." }, { "slug": "METABASE_POST_API_CARD_ID_COPY", "name": "Copy Card", "description": "Tool to create a copy of an existing Metabase card (question) by its ID. Use when you need to duplicate a card with all its query, visualization, and configuration settings." }, { "slug": "METABASE_POST_API_CARDS_DASHBOARDS", "name": "Get Card Dashboard Associations", "description": "Tool to retrieve dashboard associations for given card IDs. Returns an array with card_id and associated dashboards for each card. Use when you need to find which dashboards contain specific cards." }, { "slug": "METABASE_POST_API_CARDS_MOVE", "name": "Bulk Move Cards", "description": "Tool to bulk move cards to a collection or remove them from collections. Use when you need to organize multiple cards by moving them to a specific collection or removing them from all collections." }, { "slug": "METABASE_POST_API_COLLECTION", "name": "Create Collection", "description": "Tool to create a new Metabase collection for organizing content. Use when you need to create a collection with name and color. Collections are used to organize dashboards, questions, and models in Metabase." }, { "slug": "METABASE_POST_API_DASHBOARD", "name": "Create Dashboard", "description": "Tool to create a new Metabase dashboard. Use when you need to create a new dashboard for organizing and displaying visualizations and reports." }, { "slug": "METABASE_POST_API_DATASET", "name": "Execute Dataset Query", "description": "Tool to execute a query against a Metabase database and retrieve results. Use when you need to run native SQL or MBQL queries. Supports both raw SQL queries (type='native') and structured MBQL queries (type='query')." }, { "slug": "METABASE_POST_API_DATASET_NATIVE", "name": "Convert Query to Native SQL", "description": "Tool to convert a Metabase query to native SQL format. Use when you need to get the formatted native SQL representation of a query." }, { "slug": "METABASE_POST_API_DATASET_PARAMETER_REMAPPING", "name": "Remap Dataset Parameter Value", "description": "Tool to remap dataset parameter values in Metabase. Use when you need to transform or map parameter values for dataset queries. Returns an array of remapped values based on the parameter configuration." }, { "slug": "METABASE_POST_API_DATASET_PARAMETER_VALUES", "name": "Get Dataset Parameter Values", "description": "Tool to fetch parameter values for dataset fields in Metabase. Use when you need to retrieve possible values for a parameter based on specific field IDs. Returns a list of value pairs and indicates if more values exist." }, { "slug": "METABASE_POST_API_DATASET_PIVOT", "name": "Execute Pivot Table Query", "description": "Tool to execute a pivot table query and retrieve results. Use when you need to run an MBQL query with aggregation and breakout fields to generate pivot table data." }, { "slug": "METABASE_POST_API_DATASET_QUERY_METADATA", "name": "Get Dataset Query Metadata", "description": "Tool to retrieve query metadata for a dataset query including databases, tables, fields, and snippets. Use when you need metadata about what's available for constructing or analyzing a query." }, { "slug": "METABASE_POST_API_EE_DEPENDENCIES_CHECK_SNIPPET", "name": "Check Snippet Dependencies", "description": "Tool to check dependencies for a native query snippet in Metabase Enterprise Edition. Use when you need to verify which cards or transforms depend on a specific snippet before modifying or deleting it." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_FILTER_RECORDS", "name": "Filter Records", "description": "Tool to filter records from a Metabase data source using metabot tools. Use when you need to apply filters to a table, query, or report to narrow down the data set. Returns an MBQL query object with the applied filters." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GENERATE_INSIGHTS", "name": "Generate Insights", "description": "Tool to generate insights for a table using Metabot tools. Use when you need to automatically generate analytical insights or dashboard for a specific table." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve information about the current authenticated user in a Metabase metabot conversation. Use when you need to get details about the user making queries within a conversation context." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GET_QUERY_DETAILS", "name": "Get Query Details", "description": "Tool to get query details using Metabot tools API. Use when you need to retrieve detailed information about a query including its structure, ID, and result columns. Returns either structured output with query metadata or plain text output." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GET_SNIPPET_DETAILS", "name": "Get Snippet Details", "description": "Tool to retrieve SQL snippet details via Metabase metabot tools. Use when you need to get the full details of a specific snippet including its ID, name, content, and description within a metabot conversation context." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GET_SNIPPETS", "name": "Get Metabot Snippets", "description": "Tool to retrieve SQL snippets for a Metabase metabot conversation. Use when you need to get available snippets that can be used in SQL queries within a conversation context." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_GET_TABLE_DETAILS", "name": "Get Table Details", "description": "Tool to retrieve comprehensive table details via Metabase metabot tools. Use when you need to get complete information about a specific table including its fields, metrics, and related tables within a metabot conversation context." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_QUERY_DATASOURCE", "name": "Query Datasource via Metabot", "description": "Tool to query a Metabase datasource using Metabot tools. Use when you need to execute queries against tables or models within a conversation context. Requires either a table_id or model_id in the arguments." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_SEARCH", "name": "Metabot Search", "description": "Tool to search Metabase entities using the metabot search API. Use when you need to search for tables, models, questions, dashboards, metrics, databases, or transforms within a metabot conversation context." }, { "slug": "METABASE_POST_API_EE_METABOT_TOOLS_SEARCH_V2", "name": "Search Metabase Items (Metabot V2)", "description": "Tool to search Metabase items using the Metabot search v2 endpoint. Use when you need to find dashboards, questions, tables, models, metrics, or other Metabase entities using keyword or semantic search. Supports filtering by entity type, database, and dates." }, { "slug": "METABASE_POST_API_EE_REMOTE_SYNC_CURRENT_TASK_CANCEL", "name": "Cancel Current Remote Sync Task", "description": "Tool to cancel the current active Remote Sync task in Metabase Enterprise Edition. Use when you need to stop an ongoing remote sync operation. Returns 'No active task to cancel' when there is no active task running." }, { "slug": "METABASE_POST_API_EID_TRANSLATION_TRANSLATE", "name": "Translate Entity IDs", "description": "Tool to translate Metabase entity IDs (21-character strings) to their numeric IDs. Use when you need to convert entity ID strings to numeric IDs for API operations." }, { "slug": "METABASE_POST_API_FIELD_ID_RESCAN_VALUES", "name": "Rescan Field Values", "description": "Tool to manually trigger an update for the FieldValues for a specific field. Use when you need to refresh the cached values for a field that is eligible for FieldValues. Only works with fields that have has_field_values set to 'list'." }, { "slug": "METABASE_POST_API_GLOSSARY", "name": "Create Glossary Entry", "description": "Tool to create a new glossary entry in Metabase. Use when you need to add a new term and its definition to the glossary." }, { "slug": "METABASE_POST_API_MODEL_INDEX", "name": "Create Model Index", "description": "Tool to create a new model index in Metabase. Use when you need to enable search functionality on a model by indexing specific fields." }, { "slug": "METABASE_POST_API_NATIVE_QUERY_SNIPPET", "name": "Create native query snippet", "description": "Tool to create a new native query snippet in Metabase. Native query snippets are reusable SQL fragments that can be included in native queries. Use when you need to create a new SQL snippet for reuse across multiple queries." }, { "slug": "METABASE_POST_API_NOTIFICATION", "name": "Create Notification", "description": "Tool to create a new notification in Metabase. Use when you need to create notifications for cards or other resources." }, { "slug": "METABASE_POST_API_NOTIFICATION_SEND", "name": "Send Notification", "description": "Tool to trigger sending an unsaved notification in Metabase. Use when you need to send a one-time notification for a card with custom handlers and templates. Returns success status when notification is sent (HTTP 204)." }, { "slug": "METABASE_POST_API_PRODUCT_FEEDBACK", "name": "Submit Product Feedback", "description": "Tool to submit product feedback to Metabase. Use when you need to send feedback about the product from various sources." }, { "slug": "METABASE_POST_API_PULSE", "name": "Create Pulse", "description": "Tool to create a new pulse (scheduled report/subscription) in Metabase. Use when you need to set up automated delivery of card or dashboard results via email or Slack." }, { "slug": "METABASE_POST_API_REVISION_REVERT", "name": "Revert Entity to Previous Revision", "description": "Tool to revert a Metabase entity (card, dashboard, document, or segment) to a previous revision. Use when you need to undo changes and restore an entity to an earlier state." }, { "slug": "METABASE_POST_API_SESSION_FORGOT_PASSWORD", "name": "Send Password Reset Email", "description": "Tool to send a password reset email when user has forgotten their password. Use when you need to initiate a password reset for a user. Returns 204 status code on success regardless of whether the email exists (security measure)." }, { "slug": "METABASE_POST_API_SESSION_PASSWORD_CHECK", "name": "Check Password Complexity", "description": "Tool to check if a password meets Metabase's configured password complexity rules. Use when you need to validate a password against current complexity requirements. The endpoint was previously at /api/util/password_check but was moved to /api/session/password-check." }, { "slug": "METABASE_POST_API_SLACK_BUG_REPORT", "name": "Submit Bug Report to Slack", "description": "Tool to submit a bug report to Slack via Metabase's bug reporting endpoint. Use when you need to send diagnostic information about a bug to the configured Slack channel. Requires Slack integration with 'metabase-bugs' channel to be properly configured." }, { "slug": "METABASE_POST_API_TIMELINE", "name": "Create Timeline", "description": "Tool to create a new timeline in Metabase. Use when you need to create a timeline for organizing events." }, { "slug": "METABASE_POST_DASHBOARD_QUERY", "name": "Execute Dashboard Card Query", "description": "Tool to execute a query for a specific card within a dashcard on a dashboard. Use when you need to retrieve query results for dashboard visualizations. Returns data rows, column metadata, and execution statistics." }, { "slug": "METABASE_PUT_API_ACTION_ID", "name": "Update Action by ID", "description": "Tool to update an existing Metabase action by its ID. Use when you need to modify the name, description, query, or settings of an action. Returns the updated action object with the new updated_at timestamp." }, { "slug": "METABASE_PUT_API_BOOKMARK_ORDERING", "name": "Update Bookmark Ordering", "description": "Tool to update the order of bookmarks for the authenticated user. Use when you need to reorder bookmarked cards, dashboards, or collections." }, { "slug": "METABASE_PUT_API_CARD_ID", "name": "Update Card by ID", "description": "Tool to update a specific card (question) by its ID. Use when you need to modify card properties like name, description, visualization settings, or query definition." }, { "slug": "METABASE_PUT_API_COLLECTION_ID", "name": "Update Collection by ID", "description": "Tool to update an existing Metabase collection by its ID. Use when you need to modify collection properties like name, description, color, archive status, or move it to a different parent. All parameters except id are optional - only include the fields you want to update." }, { "slug": "METABASE_PUT_API_DASHBOARD_ID_CARDS", "name": "Update Dashboard Cards", "description": "Tool to update dashboard cards and tabs. DEPRECATED: This endpoint is marked for removal in v48 - use PUT /api/dashboard/:id instead to update dashcards along with other dashboard data. Use when you need to update card positions, sizes, or tab ordering on a dashboard." }, { "slug": "METABASE_PUT_API_DATABASE_ID", "name": "Update Database Configuration", "description": "Tool to update a database configuration in Metabase. Use when you need to modify database settings such as name, description, connection details, or sync preferences. Requires superuser permissions." }, { "slug": "METABASE_PUT_API_FIELD_ID", "name": "Update Field Metadata", "description": "Tool to update a Metabase field by its ID. Use when you need to modify field metadata such as description, display_name, semantic_type, or visibility_type. Only fields included in the request will be updated; others remain unchanged." }, { "slug": "METABASE_PUT_API_GLOSSARY_ID", "name": "Update Glossary Entry by ID", "description": "Tool to update an existing glossary entry in Metabase by its ID. Use when you need to modify the term name or definition of an existing glossary entry." }, { "slug": "METABASE_PUT_API_NATIVE_QUERY_SNIPPET_ID", "name": "Update Native Query Snippet by ID", "description": "Tool to update an existing native query snippet by its ID. Use when you need to modify the name, description, or SQL content of a saved snippet. At least one field (name, description, or content) should be provided to update." }, { "slug": "METABASE_PUT_API_PULSE_ID", "name": "Update Pulse by ID", "description": "Tool to update an existing pulse (scheduled report/subscription) by ID. Use when you need to modify pulse settings like name, cards, channels, or skip_if_empty behavior." }, { "slug": "METABASE_PUT_API_SEARCH_WEIGHTS", "name": "Update Search Weights", "description": "Tool to update search weights configuration in Metabase. Use when you need to customize how search results are ranked by adjusting scorer weights. Returns the current search weights configuration after update." }, { "slug": "METABASE_PUT_API_TABLE", "name": "Update Table Metadata", "description": "Tool to update a Metabase table by its ID. Use when you need to modify table metadata such as display_name, description, visibility_type, caveats, or points_of_interest. Only fields included in the request will be updated; others remain unchanged." }, { "slug": "METABASE_PUT_API_TABLE_ID_FIELDS_ORDER", "name": "Update Table Field Display Order", "description": "Tool to update the display order of fields in a Metabase table. Use when you need to reorder how fields appear in a table's schema or query results." }, { "slug": "METABASE_PUT_API_TIMELINE_EVENT_ID", "name": "Update Timeline Event by ID", "description": "Tool to update an existing timeline event by its ID. Use when you need to modify the name, description, timestamp, or other properties of a timeline event. Returns the updated event object." }, { "slug": "METABASE_PUT_API_TIMELINE_ID", "name": "Update Timeline by ID", "description": "Tool to update an existing timeline by its ID. Use when you need to modify the name, description, icon, or other properties of a timeline. Returns the updated timeline object." }, { "slug": "METABASE_PUT_API_USER_ID", "name": "Update User by ID", "description": "Tool to update an existing Metabase user by their ID. Use when you need to modify user information such as email, name, group memberships, or superuser status. All update fields are optional; only provided fields will be updated." }, { "slug": "METABASE_UPDATE_DASHBOARD", "name": "Update Dashboard", "description": "Tool to update a Metabase dashboard by ID. Use when you need to modify dashboard properties like name, description, parameters, cards, or tabs. The request body accepts the same structure as the response from GET /api/dashboard/:id. When setting archived to true, the dashboard is moved to Trash; when false, you may provide a collection_id." }, { "slug": "METABASE_UPDATE_DASHBOARD_CARDS", "name": "Update Dashboard Cards (Deprecated)", "description": "Tool to bulk update dashboard cards and tabs. DEPRECATED - use PUT /api/dashboard/:id instead for new implementations. Use when you need to create, update, or delete multiple dashboard cards at once. Cards with negative IDs are created, existing IDs are updated, and omitted cards are deleted." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "metabase_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The web address where you open Metabase, e.g. https://metabase.yourcompany.com — copy it from your browser address bar, with no trailing slash or extra path.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "An API key created by a Metabase admin: go to Admin settings → Authentication → API Keys → Create API Key, then copy it right away — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "metaphor", "name": "Metaphor", "logo": "https://logos.composio.dev/api/metaphor", "description": "Metaphor is a neural search engine that enables developers to perform contextually relevant searches by understanding how people describe and share content online.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "METAPHOR_GET_CONTENTS", "name": "Get document contents by IDs", "description": "Tool to retrieve parsed HTML/text contents and metadata for documents by their IDs.\" Use when you need to fetch the full text and metadata of multiple documents at once." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "metaphor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Metaphor API Key", "type": "string", "description": "Your Metaphor API key, obtainable from your Metaphor account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mezmo", "name": "Mezmo", "logo": "https://logos.composio.dev/api/mezmo", "description": "Mezmo provides a comprehensive platform for log management and telemetry data processing, enabling organizations to collect, analyze, and manage their log data efficiently.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MEZMO_CREATE_CATEGORY", "name": "Create Category", "description": "Tool to create a new category for views, boards, or screens in Mezmo. Use when organizing Mezmo resources into categories." }, { "slug": "MEZMO_CREATE_INGESTION_EXCLUSION", "name": "Create Ingestion Exclusion Rule", "description": "Tool to create an exclusion rule for log ingestion to control costs. Use this when you need to prevent specific logs from being ingested or stored based on query patterns. Exclusion rules help reduce ingestion costs by filtering out debug logs, test environment logs, or other non-essential log data." }, { "slug": "MEZMO_CREATE_KEY", "name": "Create API Key", "description": "Tool to create a new API key (ingestion or service key) in Mezmo. The API auto-generates a unique name for the key. Use when you need to provision a new key for log ingestion or API access." }, { "slug": "MEZMO_CREATE_MEMBER", "name": "Create Member Invitation", "description": "Tool to invite a new member to the Mezmo organization with a specified role. Use this to send invitations to team members and optionally assign them to specific groups." }, { "slug": "MEZMO_CREATE_PRESET_ALERT", "name": "Create Preset Alert", "description": "Tool to create a new preset alert in Mezmo with specified name and notification channels. Use this to configure alerts that can be triggered based on log conditions. Supports email, PagerDuty, and webhook notification channels." }, { "slug": "MEZMO_CREATE_VIEW", "name": "Create View", "description": "Tool to create a new Mezmo view with filtering and alert configuration. Use when you need to set up custom log views with specific filters (query, hosts, apps, levels, tags) and optional alert channels (email, PagerDuty, webhook). At least one filter parameter must be provided in addition to the view name." }, { "slug": "MEZMO_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to delete a category by its type and ID. Use when you need to remove a view, board, or screen category from Mezmo configuration." }, { "slug": "MEZMO_DELETE_INGESTION_EXCLUSION", "name": "Delete Ingestion Exclusion", "description": "Tool to remove an ingestion exclusion rule by its ID. Use when you need to delete a specific exclusion rule from Mezmo's ingestion configuration." }, { "slug": "MEZMO_DELETE_KEY", "name": "Delete API Key", "description": "Tool to delete an API key by its unique identifier. Use when you need to remove an ingestion key from Mezmo to revoke access." }, { "slug": "MEZMO_DELETE_MEMBER", "name": "Delete Organization Member", "description": "Tool to remove a member from the organization by their email address. Use when you need to revoke a user's access to the organization." }, { "slug": "MEZMO_DELETE_PIPELINE_ALERT", "name": "Delete Pipeline Alert", "description": "Tool to delete an alert for a specific component within a pipeline. Use after confirming pipeline ID, component kind, component ID, and alert ID." }, { "slug": "MEZMO_DELETE_PRESET_ALERT", "name": "Delete Preset Alert", "description": "Tool to delete a preset alert by its ID. Use after confirming the preset alert ID exists." }, { "slug": "MEZMO_DELETE_VIEW", "name": "Delete View", "description": "Tool to delete a view by its ID. Use when you need to remove a specific view from Mezmo." }, { "slug": "MEZMO_GET_ALERT", "name": "Get Preset Alert", "description": "Tool to retrieve details of a specific preset alert by its ID. Use when you need to view the configuration of an existing alert." }, { "slug": "MEZMO_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve a category configuration by its type and ID. Use when you need to fetch details about a specific Mezmo category (view, board, or screen)." }, { "slug": "MEZMO_GET_INDEX_RATE_ALERT", "name": "Get Index Rate Alert Configuration", "description": "Tool to retrieve current index rate alert settings for the Mezmo account. Use this to check if index rate alerting is enabled and view configured thresholds and notification channels." }, { "slug": "MEZMO_GET_INGESTION_EXCLUSION", "name": "Get Ingestion Exclusion Rule", "description": "Tool to retrieve an ingestion exclusion rule by its ID. Use when you need to fetch details of a specific exclusion rule." }, { "slug": "MEZMO_GET_INGESTION_STATUS", "name": "Get Ingestion Status", "description": "Tool to get the current ingestion status for the Mezmo account. Use when you need to check whether log ingestion is currently active or paused." }, { "slug": "MEZMO_GET_KEY", "name": "Get API Key", "description": "Tool to retrieve an API key configuration by its ID. Use when you need to fetch details about a specific Mezmo API key." }, { "slug": "MEZMO_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve member information by their ID. Use when you need to fetch details about a specific member in your Mezmo account." }, { "slug": "MEZMO_GET_STREAM_CONFIG", "name": "Get Stream Configuration", "description": "Tool to retrieve the current event streaming configuration for the Mezmo account. Use when you need to check if streaming is enabled and get streaming settings. Returns error details if streaming is unavailable on the account/plan." }, { "slug": "MEZMO_GET_VIEW", "name": "Get View Details", "description": "Tool to retrieve details of a specific view by its ID. Use when you need to fetch view configuration including name, query, filters, and other attributes." }, { "slug": "MEZMO_INGEST_LOGS", "name": "Ingest Logs to Mezmo", "description": "Ingest log lines into Mezmo Log Analysis. Use this tool to send structured log data from hosts, applications, or services to Mezmo for centralized logging, analysis, and alerting. Logs are sent to the Mezmo ingestion endpoint and will appear in the Mezmo dashboard." }, { "slug": "MEZMO_LIST_ALERTS", "name": "List Preset Alerts", "description": "Tool to list all preset alerts configured for the Mezmo account. Use when you need to retrieve notification rules that trigger based on log patterns. Returns preset alert configurations including their channels (email, PagerDuty, webhook)." }, { "slug": "MEZMO_LIST_KEYS", "name": "List API Keys", "description": "Tool to list all API keys and ingestion keys configured for the account. Use when you need to retrieve all keys for viewing or management purposes." }, { "slug": "MEZMO_LIST_MEMBERS", "name": "List Members", "description": "Tool to list all team members in the Mezmo account configuration. Use when you need to retrieve information about all members in the organization." }, { "slug": "MEZMO_LIST_PIPELINES", "name": "List Telemetry Pipelines", "description": "Tool to list all telemetry pipelines configured for the account. Use when you need to view or retrieve information about existing pipelines that manage the flow and transformation of telemetry data." }, { "slug": "MEZMO_LIST_VIEWS", "name": "List Views", "description": "Tool to list all views configured for the account. Views are saved search queries and filters for quick access to specific log data." }, { "slug": "MEZMO_RESUME_INGESTION", "name": "Resume Log Ingestion", "description": "Tool to resume log ingestion for the account after it has been stopped. Use when you need to re-enable log collection after a pause." }, { "slug": "MEZMO_UPDATE_CATEGORY", "name": "Update Category", "description": "Tool to update a category name by its type and ID. Use when you need to rename an existing category in Mezmo." }, { "slug": "MEZMO_UPDATE_INDEX_RATE_ALERT", "name": "Update Index Rate Alert Configuration", "description": "Tool to configure index rate alerting settings including thresholds and notification channels. Use this when you need to set up or modify alerts for unusual log ingestion rates based on absolute line counts or statistical deviations." }, { "slug": "MEZMO_UPDATE_INGESTION_EXCLUSION", "name": "Update Ingestion Exclusion Rule", "description": "Tool to update an existing exclusion rule by its ID. Use when you need to modify the query, active status, indexonly behavior, or title of an existing exclusion rule. At least one field (query, active, indexonly, or title) must be provided for update." }, { "slug": "MEZMO_UPDATE_KEY", "name": "Update API Key", "description": "Tool to update an API key name by its ID. Use when you need to rename an existing Mezmo API key." }, { "slug": "MEZMO_UPDATE_MEMBER", "name": "Update Member Role and Groups", "description": "Tool to update a member's role and group assignments by their email address. Use when you need to change a member's permissions or group memberships." }, { "slug": "MEZMO_UPDATE_PRESET_ALERT", "name": "Update Preset Alert", "description": "Tool to update an existing preset alert by ID. Allows modifying the alert's name and notification channels. Use when you need to change alert configuration after creation. Requires full resource representation with both name and channels." }, { "slug": "MEZMO_UPDATE_VIEW", "name": "Update Mezmo View", "description": "Tool to update an existing Mezmo view by its ID. Use when you need to modify a view's name or search query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mezmo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mezmo Access Token", "type": "string", "description": "Your Mezmo Access Token used for all API requests except ingest. Obtain it from your Mezmo account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "microsoft_dynamics365_business_central", "name": "Microsoft Dynamics365 Business Central", "logo": "https://logos.composio.dev/api/microsoft_dynamics_365_business_central", "description": "Microsoft Dynamics 365 Business Central is a cloud-based ERP solution for small to medium-sized businesses, managing financials, operations, sales, and customer service", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft_dynamics_365_business_central_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://api.businesscentral.dynamics.com/user_impersonation,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "subdomain", "displayName": "Environment", "type": "string", "description": "The Business Central environment (e.g., \"production\" or \"sandbox\"). Defaults to \"production\".", "required": false, "default": "production" } ] } } } ] }, { "slug": "onenote", "name": "Microsoft OneNote", "logo": "https://logos.composio.dev/api/onenote", "description": "Digital notebook for capturing and organizing notes, drawings, and information", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 71, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ONENOTE_COPY_ONENOTE_GROUP_NOTEBOOK", "name": "Copy notebook in group", "description": "Copies a OneNote notebook to the Notebooks folder in the destination Documents library. The notebook is copied asynchronously. This action initiates the copy operation and returns a 202 Accepted response with an Operation-Location header. Use the OnenoteOperationGet action to poll the Operation-Location endpoint to check the status of the copy operation until it completes. Use this action when you need to duplicate a notebook within a Microsoft 365 group, or copy it to a different group's documents library. The copied notebook's folder is created in the destination Documents library if it doesn't exist." }, { "slug": "ONENOTE_COPY_ONENOTE_SITE_NOTEBOOK", "name": "Copy notebook in site", "description": "Copies a OneNote notebook to the destination site in the SharePoint documents library. Use this action when you need to duplicate a notebook within a SharePoint site, or copy it to a different site's documents library. The copied notebook's folder is created in the destination documents library if it doesn't exist. This is an asynchronous operation — the API returns a 202 Accepted response with an Operation-Location header. Poll the provided URL to check whether the copy has completed. The copied notebook becomes available at the destination site once the operation succeeds." }, { "slug": "ONENOTE_COPY_SECTION_TO_NOTEBOOK2", "name": "Copy section to notebook (site context)", "description": "Copies a OneNote section to a specific notebook within a SharePoint site. Use this action when you need to duplicate an existing OneNote section into a different notebook within the same SharePoint site. The operation is asynchronous and returns an Operation-Location header that should be polled to get the final result. This action is irreversible once the copy operation is initiated." }, { "slug": "ONENOTE_COPY_SECTION_TO_NOTEBOOK_FOR_USER2", "name": "Copy section to notebook (user)", "description": "Copies a OneNote section to a specific notebook for a specified user. Use this action when you need to duplicate an existing OneNote section into a different notebook under a specific user's account. The operation is asynchronous and returns an Operation-Location header that should be polled to get the final result. This action is irreversible once the copy operation is initiated." }, { "slug": "ONENOTE_COPY_SECTION_TO_SECTION_GROUP", "name": "Copy group section to section group", "description": "Copies a OneNote section from a Microsoft 365 group's notebook into another section group. Use this action when you need to duplicate an existing OneNote section that lives in a Microsoft 365 group's notebook into a different section group. The operation is asynchronous and returns an Operation-Location header that should be polled to get the final result. This action is irreversible once the copy operation is initiated." }, { "slug": "ONENOTE_COPY_SECTION_TO_SECTION_GROUP_FOR_USER", "name": "Copy section to section group (user)", "description": "Copies a OneNote section to a specific section group for a specified user. Use this action when you need to duplicate an existing OneNote section into a different section group under a specific user's account. The operation is asynchronous and returns an Operation-Location header that should be polled to get the final result. This action is irreversible once the copy operation is initiated." }, { "slug": "ONENOTE_COPY_SITE_PAGE_TO_SECTION3", "name": "Copy site page to section", "description": "Copies a OneNote page from a SharePoint site to a destination section. Use this action when you need to duplicate a OneNote page into a different section within the same or a different SharePoint site's notebook. The operation is asynchronous and returns a 202 Accepted response with an Operation-Location header. Poll that endpoint to determine when the copy completes and get the result of the operation. This is an asynchronous operation — the API returns a 202 Accepted response with an Operation-Location header. Poll the provided URL to check whether the copy has completed." }, { "slug": "ONENOTE_COPY_USER_PAGE_TO_SECTION", "name": "Copy user page to section", "description": "Copy a OneNote page from a user's notebook to a specified section. Use this action when you need to duplicate a OneNote page into a different section within a user's Microsoft 365 account. This is an asynchronous operation that returns a 202 Accepted response with an Operation-Location header. Poll that endpoint to determine when the copy completes and get the result of the operation. The page is identified by its full path through the notebook's hierarchy." }, { "slug": "ONENOTE_COUNT_NOTEBOOKS_SECTION_GROUPS_SECTIONS", "name": "Count notebook section group sections", "description": "Gets the count of OneNote sections within a section group in a user's notebook. Use this action when you need to quickly determine the number of sections in a section group without retrieving the full list of section objects. This is a read-only operation." }, { "slug": "ONENOTE_COUNT_SITE_NOTEBOOK_SECTION_GROUPS_SECTIONS", "name": "Count site notebook section group sections", "description": "Gets the count of sections within a OneNote section group in a SharePoint site notebook. Use this action when you need to quickly determine the number of sections in a section group without retrieving the full list of section objects. Microsoft Graph requires the `ConsistencyLevel: eventual` header when using the `$count=true` query parameter on OneNote endpoints." }, { "slug": "ONENOTE_CREATE_GROUP_NOTEBOOK", "name": "Create group notebook", "description": "Creates a new OneNote notebook within a Microsoft 365 group. Use this action when you need to create a new notebook for storing notes within a specific Microsoft 365 group. The notebook will be owned by the specified group and accessible to all members of that group with appropriate permissions. Required permissions: Notes.Create (least privileged), Notes.ReadWrite, or Notes.ReadWrite.All for the group." }, { "slug": "ONENOTE_CREATE_GROUP_PAGES", "name": "Create group OneNote page", "description": "Creates a new OneNote page in the default section of the default notebook for a Microsoft 365 group. Use this action when you need to programmatically create a new page in a group's OneNote notebook. The page content must be provided as HTML. The page will be created in the default section of the default notebook unless a specific section name is provided via the sectionName query parameter." }, { "slug": "ONENOTE_CREATE_GROUP_SECTION_GROUPS_SECTIONS", "name": "Create section in section group", "description": "Creates a new OneNote section within a specified section group of a Microsoft 365 group. Use this action when you need to add a new section to organize OneNote pages within a section group's hierarchy within a group. The section name must be unique within the same hierarchy level, cannot exceed 50 characters, and cannot contain the characters: ?*/:<>|&#''%~. This action is idempotent — calling it multiple times with the same display name may create duplicate sections depending on the API's handling of unique-name constraints." }, { "slug": "ONENOTE_CREATE_ME_NOTEBOOKS", "name": "Create user notebook", "description": "Creates a new OneNote notebook for the signed-in user. Use this action when you need to create a new personal notebook to organize notes. The notebook will be created in the user's default OneDrive for Business location. Notebook names must be unique and cannot exceed 128 characters or contain special characters (?*\\/:<>|&'\"\"). Returns the full created notebook object including the server-assigned ID and URLs for accessing sections." }, { "slug": "ONENOTE_CREATE_ME_SECTION_GROUPS_SECTIONS", "name": "Create section in user's section group", "description": "Creates a new OneNote section within a specified section group of a notebook for the signed-in user. Use this action when you need to add a new section to organize OneNote pages within a user's section group hierarchy. The section name must be unique within the same hierarchy level, cannot exceed 50 characters, and cannot contain the characters: ?*/:<>|&#''%~. This action is idempotent — calling it multiple times with the same display name may create duplicate sections depending on the API's handling of unique-name constraints." }, { "slug": "ONENOTE_CREATE_ME_SECTIONS_PAGES", "name": "Create OneNote page in section", "description": "Creates a new OneNote page in a specific section for the signed-in user. Use this action when you need to create a new page within a specific section of the user's OneNote notebook. The page content must be provided as HTML. The action constructs a complete HTML document including the title and optional creation timestamp in the meta tag. To include images or attachments, provide the full HTML with external image URLs, or use a multipart request approach. This action is idempotent - creating multiple pages with the same title creates separate pages." }, { "slug": "ONENOTE_CREATE_ONENOTE_GROUP_NOTEBOOKS_SECTION_GROUPS", "name": "Create section group in group notebook", "description": "Creates a new section group within a OneNote notebook that belongs to a Microsoft 365 group. Use this action when you need to organize sections inside a group notebook by creating a new top-level section group to hold related sections together. The displayName must be 50 characters or fewer and cannot contain the characters ? * / : < > | & # ' % ~. Section group names must be unique within the same hierarchy level in the notebook." }, { "slug": "ONENOTE_CREATE_SITE_NOTEBOOKS_SECTIONS", "name": "Create section in site notebook", "description": "Creates a new OneNote section within a specified notebook in a SharePoint site. Use this action when you need to add a new section to organize OneNote pages within a notebook that belongs to a SharePoint site. The section name must be unique within the same hierarchy level, cannot exceed 50 characters, and cannot contain the characters: ?*/:<>|&#''%~. This action is available in the following national cloud deployments: Global service only. Required permissions: Notes.Create (delegated/personal account), Notes.ReadWrite.All (application)." }, { "slug": "ONENOTE_CREATE_USER_NOTEBOOKS_SECTIONS", "name": "Create section in user notebook", "description": "Creates a new OneNote section within a specified notebook for a specific user. Use this action when you need to add a new section to organize OneNote pages within a notebook that belongs to a specific user. The section name must be unique within the same hierarchy level, cannot exceed 50 characters, and cannot contain the characters: ?*/:<>|&#''%~. Returns the full created section object including the server-assigned ID." }, { "slug": "ONENOTE_CREATE_USER_PAGES", "name": "Create user OneNote page", "description": "Creates a new OneNote page in the default section of the default notebook for a specific user. Use this action when you need to programmatically create a new page in a user's OneNote notebook. The page content must be provided as HTML. The page will be created in the default section of the default notebook unless a specific section name is provided via the sectionName query parameter." }, { "slug": "ONENOTE_CREATE_USER_SECTION_GROUPS_SECTIONS", "name": "Create section in user section group", "description": "Creates a new OneNote section within a specified section group for a specific user. Use this action when you need to add a new section to organize OneNote pages within a section group's hierarchy for a specific user's notebook. The section name must be unique within the same hierarchy level, cannot exceed 50 characters, and cannot contain the characters: ?*/:<>|&#''%~. This action is idempotent — calling it multiple times with the same display name may create duplicate sections depending on the API's handling of unique-name constraints." }, { "slug": "ONENOTE_CREATE_USER_SECTIONS_PAGES4", "name": "Create user section page", "description": "Creates a new OneNote page in a specific section of a user's notebook. Use this action when you need to create a new page directly in a section within a user's OneNote notebook. The page content must be provided as valid HTML with proper structure (html, head, and body tags). This action requires the Content-Type header to be set to text/html for the request body. This action is idempotent — calling it multiple times creates separate pages." }, { "slug": "ONENOTE_DELETE_ONENOTE_GROUP_SECTION_GROUP_PAGE_CONTENT", "name": "Delete page content from section group section", "description": "Deletes the HTML content of a OneNote page within a section in a section group in a Microsoft 365 group's OneNote workspace. This action is irreversible — the page content will be permanently deleted once removed. Use this action when you need to clear the content of a specific OneNote page within a section group hierarchy in a Microsoft 365 group." }, { "slug": "ONENOTE_DELETE_ONENOTE_GROUP_SECTIONS_PAGES2", "name": "Delete OneNote page from section", "description": "Delete a specific OneNote page from a section within a notebook in a group. Use this action when you need to remove a OneNote page permanently from a group's notebook section. This action is irreversible - once deleted, the page cannot be recovered." }, { "slug": "ONENOTE_DELETE_SITE_PAGES", "name": "Delete OneNote page from site", "description": "Deletes a OneNote page from a SharePoint site. Use this action when you need to remove a OneNote page permanently from a SharePoint site's OneNote workspace. This action is irreversible - once deleted, the page and all its content cannot be recovered." }, { "slug": "ONENOTE_DELETE_USER_ONENOTE_SECTIONS_PAGES", "name": "Delete user OneNote page from section", "description": "Deletes a OneNote page from a section within a section group in a user's notebook. This action is irreversible — the page and all its content will be permanently deleted once removed. Use this action when you need to remove an unwanted page from a section in a user's OneNote notebook." }, { "slug": "ONENOTE_DELETE_USER_PAGES", "name": "Delete OneNote page for user", "description": "Deletes a OneNote page from a user's OneNote workspace. This action is irreversible — the page and all its content will be permanently deleted once removed. Use this action when you need to remove an unwanted OneNote page from a user's notebook that has been shared with the current user." }, { "slug": "ONENOTE_GET_GROUP_SECTIONS", "name": "Get a OneNote section from a group", "description": "Retrieves a specific OneNote section from a Microsoft 365 group. Use this action when you need to fetch metadata or details for a single OneNote section by specifying the group ID and section ID. This action supports OData query parameters for selecting specific properties and expanding relationships like parentNotebook or parentSectionGroup." }, { "slug": "ONENOTE_GET_ME_ONENOTE_RESOURCES_VALUE", "name": "Get OneNote resource content by ID", "description": "Retrieves the binary content of a specific OneNote resource using its ID. Use this action when you need to fetch the raw binary content of an image, file attachment, or other embedded resource from a OneNote page in the signed-in user's notebooks. The resource is identified by its unique resource_id, which can be obtained from page content URLs. Note: Binary content is returned as-is; images and files may need additional processing (e.g., base64 decoding or writing to a file) depending on your use case." }, { "slug": "ONENOTE_GET_ME_SECTION_PAGE_CONTENT", "name": "Get OneNote page content from section", "description": "Retrieves the HTML content of a specific OneNote page from a section for the signed-in user. Use this action when you need to fetch the full HTML content of a OneNote page within a specific section. This endpoint provides access to page content for processing, rendering, or exporting page data. The returned HTML includes text, images, and other embedded content references. This action is read-only and does not modify any data." }, { "slug": "ONENOTE_GET_NOTEBOOK_FROM_WEB_URL", "name": "Get notebook from web URL", "description": "Retrieves a OneNote notebook by using its web URL path. Use this action when you have the SharePoint or OneDrive URL of a notebook and need to retrieve its properties and metadata. The webUrl parameter accepts both standard HTTPS URLs and OneNote protocol URLs with the 'onenote:' prefix. This API is available in the following national cloud deployments: Global service only. Required permissions: Notes.Create (delegated) or Notes.Read.All (application)." }, { "slug": "ONENOTE_GET_NOTEBOOK_SECTION_GROUP", "name": "Get notebook section group", "description": "Retrieves a specific section group from a OneNote notebook within a Microsoft 365 group. Use this action when you need to get details about a specific section group, including its name, creation/modification timestamps, and links to its sections and nested section groups." }, { "slug": "ONENOTE_GET_ONENOTE_GROUP_OPERATIONS", "name": "Get group OneNote operation status", "description": "Retrieves the status of a long-running OneNote operation for a group. Use this action when you need to check whether a copy or sync operation (e.g., CopyNotebook, CopyToNotebook, CopyToSectionGroup, CopyToSection) has completed, failed, or is still in progress." }, { "slug": "ONENOTE_GET_ONENOTE_GROUP_SECTIONS_PAGES", "name": "Get a OneNote page from a section group section", "description": "Retrieves a specific OneNote page from a section within a section group in a Microsoft 365 group's notebook. Use this action when you need to fetch metadata or details for a single OneNote page by navigating through its parent group, notebook, section group, and section hierarchy." }, { "slug": "ONENOTE_GET_ONENOTE_SITE_OPERATIONS", "name": "Get site OneNote operation status", "description": "Retrieves the status of a long-running OneNote operation for a SharePoint site. Use this action when you need to check whether a copy or sync operation (e.g., CopyNotebook, CopyToNotebook, CopyToSectionGroup, CopyToSection) has completed, failed, or is still in progress for a site." }, { "slug": "ONENOTE_GET_ONENOTE_USER_PAGE_CONTENT", "name": "Get OneNote page content for user", "description": "Gets the HTML content of a specific OneNote page for a user. Use this action when you need to retrieve the actual HTML content of a specific OneNote page for reading, processing, or displaying page content. The action supports the includeIDs query parameter to include element IDs in the HTML, which is useful when preparing content for page updates via the PATCH endpoint." }, { "slug": "ONENOTE_GET_PAGE", "name": "Get a OneNote page", "description": "Retrieves metadata and properties of a specific OneNote page from the authenticated user's notebooks. Use this action when you need to fetch details about a OneNote page by its ID without navigating the full notebook/section hierarchy. This returns page metadata including title, creation date, modification date, and optional expanded parent relationships. For retrieving the HTML content of a page, use the dedicated page content endpoint instead." }, { "slug": "ONENOTE_GET_RECENT_NOTEBOOKS", "name": "Get recent notebooks", "description": "Retrieves a list of recently accessed OneNote notebooks for the signed-in user. Use this action when you need to display recently accessed notebooks, provide quick access to notebooks the user has been working with, or build a recent notebooks feature. The notebooks are returned in order of most recent access. Set includePersonalNotebooks to true to include notebooks owned by the user, or false to exclude them." }, { "slug": "ONENOTE_GET_SECTION", "name": "Get a OneNote section by ID", "description": "Retrieves a specific OneNote section by its ID from the current user's OneNote. Use this action when you need to fetch metadata or details for a single OneNote section by specifying only the section ID, without requiring additional context like group, user, or site IDs. This action supports OData query parameters for selecting specific properties and expanding relationships like parentNotebook or parentSectionGroup." }, { "slug": "ONENOTE_GET_SITE_ONENOTE_PAGES", "name": "Get OneNote page from site", "description": "Retrieves a specific OneNote page from a SharePoint site. Use this action when you need to fetch metadata or details for a single OneNote page by its page identifier within a SharePoint site. This action supports optional OData query parameters to select specific properties or expand related entities like parentSection and parentNotebook. Note: This action is read-only and does not modify any data." }, { "slug": "ONENOTE_GET_SITE_PAGES_PREVIEW", "name": "Get site notebook page preview", "description": "Retrieves a text preview of a specific OneNote page from a section within a section group in a SharePoint site-hosted notebook. Use this action when you need to quickly get the content preview of a OneNote page from a site-hosted notebook without fetching the full page content. The preview returns a text snippet of the page's content. This action is read-only and does not modify any data." }, { "slug": "ONENOTE_GET_SITE_SECTIONS", "name": "Get a OneNote section from a site", "description": "Retrieves a specific OneNote section from a SharePoint site. Use this action when you need to fetch metadata or details for a single OneNote section by specifying the site ID and section ID. This action supports OData query parameters for selecting specific properties and expanding relationships like parentNotebook or parentSectionGroup." }, { "slug": "ONENOTE_GET_SITE_SECTIONS_PAGES", "name": "Get OneNote page from site section group section", "description": "Retrieves a specific OneNote page from a section within a section group in a SharePoint site notebook. Use this action when you need to fetch metadata or details for a single OneNote page by navigating through its parent site, notebook, section group, and section hierarchy. This is useful for retrieving page information from deeply nested notebook structures within SharePoint sites." }, { "slug": "ONENOTE_GET_USER_NOTEBOOK", "name": "Get user notebook", "description": "Retrieves the properties and relationships of a OneNote notebook by ID for a specific user. Use this action when you need to fetch details about a specific notebook belonging to a user, including its display name, sharing status, section URLs, and the user's role on the notebook. Supports OData $select and $expand query parameters to customize the response." }, { "slug": "ONENOTE_GET_USER_PAGES", "name": "Get a OneNote page from user", "description": "Retrieves a specific OneNote page from a user's OneNote notebooks. Use this action when you need to fetch metadata or details for a single OneNote page directly by page ID and user ID. This is useful for retrieving page information without navigating through the full notebook/section hierarchy. The default response expands the parentSection relationship and selects its id, name, and self properties." }, { "slug": "ONENOTE_GET_USER_PARENT_SECTION_GROUP2", "name": "Get parent section group from user section", "description": "Retrieves the parent section group of a OneNote section within a user's notebook. Use this action when you need to navigate up the OneNote hierarchy from a section to its parent section group, for example to determine which section group contains a specific section." }, { "slug": "ONENOTE_LIST_GROUP_NOTEBOOKS", "name": "List group notebooks", "description": "List OneNote notebooks owned by a Microsoft 365 group or Teams team. Use this with a group or team ID, including IDs returned by List joined teams." }, { "slug": "ONENOTE_LIST_GROUP_NOTEBOOK_SECTION_GROUPS", "name": "List notebook section groups", "description": "Retrieves a list of section groups from the specified notebook within a Microsoft 365 group. Use this action when you need to list all section groups in a group-owned OneNote notebook to understand its structure or to find a specific section group." }, { "slug": "ONENOTE_LIST_GROUP_NOTEBOOK_SECTION_PAGES", "name": "List pages from a group notebook section", "description": "Lists all OneNote pages from a specific section within a notebook in a Microsoft 365 group. Use this action when you need to retrieve all pages from a known section in a group notebook. This action accesses pages directly through the section path without going through section groups." }, { "slug": "ONENOTE_LIST_GROUP_SECTION_GROUPS_SECTIONS", "name": "List section group sections", "description": "Lists all OneNote sections from a specific section group within a Microsoft 365 group's OneNote. Use this action when you need to retrieve the sections contained within a section group in a group-owned OneNote notebook. Supports pagination and filtering via OData query parameters. This is a read-only operation that retrieves existing sections without modifying any data." }, { "slug": "ONENOTE_LIST_JOINED_TEAMS", "name": "List joined teams", "description": "List Microsoft Teams that a user is a direct member of. Use this to get team IDs, which are also Microsoft 365 group IDs, before listing group-owned OneNote notebooks." }, { "slug": "ONENOTE_LIST_ME_ONENOTE_SECTIONS_PAGES4", "name": "List pages in section", "description": "Retrieves a list of OneNote pages from a specific section for the current user. Use this action when you need to retrieve all pages from a specific section in the current user's OneNote notebook. This action supports pagination, filtering, sorting, and relationship expansion via OData query parameters. The default query returns the top 20 pages ordered by lastModifiedTime descending. Note: This action is read-only and does not modify any data." }, { "slug": "ONENOTE_LIST_ONENOTE_GROUP_PAGES", "name": "List group OneNote pages", "description": "Lists all OneNote pages from a Microsoft 365 group. Use this action when you need to retrieve all OneNote pages within a Microsoft 365 group. Supports pagination via the page_size parameter. The default page size is 25, and the maximum is 100. Results are ordered by lastModifiedDateTime descending by default." }, { "slug": "ONENOTE_LIST_ONENOTE_GROUP_SECTION_GROUPS_SECTION_GROUPS2", "name": "List group section group section groups", "description": "Lists all section groups from a specified parent section group within a Microsoft 365 group's OneNote notebook. Use this action when you need to retrieve the nested section groups within a section group in a group context to navigate the OneNote notebook hierarchy. This action supports OData query parameters for filtering, sorting, pagination, and expanding related entities." }, { "slug": "ONENOTE_LIST_ONENOTE_GROUP_SECTIONS_PAGES4", "name": "List pages from a group section", "description": "Lists all OneNote pages from a specific section in a Microsoft 365 group. Use this action when you need to retrieve all pages from a known section in a group notebook without specifying the notebook ID. This action supports pagination, filtering, sorting, and relationship expansion via OData query parameters. Note: This action is read-only and does not modify any data." }, { "slug": "ONENOTE_LIST_SITE_NOTEBOOKS", "name": "List site notebooks", "description": "List OneNote notebooks stored in a SharePoint site. Use this after resolving a SharePoint site ID from a site name or URL when the user asks for notebooks in a SharePoint site." }, { "slug": "ONENOTE_LIST_SITE_NOTEBOOK_SECTION_GROUPS", "name": "List site notebook section groups", "description": "Retrieves a list of section groups from the specified notebook within a SharePoint site. Use this action when you need to list all section groups in a SharePoint site-owned OneNote notebook to understand its structure or to find a specific section group. The default sort order is name ascending. The default query expands parentNotebook and selects its id, displayName, and self properties." }, { "slug": "ONENOTE_LIST_SITE_PAGES_CONTENT", "name": "Get OneNote page content from SharePoint site", "description": "Retrieves the HTML content of a specific OneNote page within a SharePoint site. Use this action when you need to fetch the full HTML content of a OneNote page from a SharePoint site for processing, rendering, or exporting page data. This endpoint provides direct access to page content without requiring notebook or section context. Returns the raw HTML content of the page, including text, images, and other embedded content references. Note: This action is read-only and does not modify any data." }, { "slug": "ONENOTE_LIST_SITE_SECTIONS", "name": "List site sections", "description": "Retrieves a list of OneNote sections from a SharePoint site. Use this action when you need to list all OneNote sections within a SharePoint site's OneNote notebook to understand its structure or to find a specific section. This is a read-only operation that retrieves existing sections without modifying any data. Supports OData query parameters for filtering, sorting, pagination, and property expansion. The default sort order is name ascending. The default query expands parentNotebook and selects its id, displayName, and self properties." }, { "slug": "ONENOTE_LIST_USER_NOTEBOOKS", "name": "List user notebooks", "description": "Lists all OneNote notebooks accessible by a specific user. Use this action when you need to retrieve the available notebooks for a user, display notebook listings, or browse notebooks that are owned by or shared with a specific user. Supports OData query parameters for filtering, sorting, and pagination. Note: The user_id can be a GUID or a user principal name (UPN). Use 'me' to reference the signed-in user." }, { "slug": "ONENOTE_LIST_USER_NOTEBOOK_SECTIONS", "name": "List user notebook sections", "description": "Lists all OneNote sections from a specified notebook belonging to a user. Use this action when you need to retrieve all sections within a notebook that is owned by or accessible to a specific user. Supports OData query parameters for filtering, sorting, and pagination. Note: The user_id can be a GUID or user principal name (UPN). Use 'me' to reference the signed-in user. The default sort order is by display name ascending. This is a read-only operation." }, { "slug": "ONENOTE_RESOLVE_SITE_BY_URL", "name": "Resolve SharePoint site by URL", "description": "Resolve a SharePoint site URL or hostname and path to a Microsoft Graph site resource. Use this when the user provides a SharePoint URL and a site ID is needed for OneNote notebook discovery." }, { "slug": "ONENOTE_SITES_SEARCH", "name": "Search SharePoint sites", "description": "Search SharePoint sites available through Microsoft Graph. Use this to find a site ID from a site name or keyword before listing site-hosted OneNote notebooks. Microsoft Graph site search does not support $count; page only with returned @odata.nextLink URLs." }, { "slug": "ONENOTE_UPDATE_ME_PAGE_CONTENT", "name": "Update my OneNote page content", "description": "Update the content of a OneNote page for the signed-in user. Sends a PATCH request with patch content commands to modify the HTML structure of a OneNote page. Supports appending children, inserting siblings, replacing elements, prepending content, and deleting elements. Use this action when you need to update or modify the content of an existing OneNote page owned by the signed-in user, such as adding new paragraphs, inserting images, modifying lists, or replacing/removing existing elements. This action is idempotent for replace, append, prepend, and insert operations, but delete operations are irreversible — deleted elements cannot be recovered once removed." }, { "slug": "ONENOTE_UPDATE_ME_SECTIONS", "name": "Update my OneNote section", "description": "Updates the navigation property sections in me. Use when you need to modify properties of an existing OneNote section, such as renaming it, within the current user's notebooks. This action uses a PATCH request to update the section entity at the specified path. Use this action when you need to update a specific OneNote section owned by the authenticated user, such as changing its display name. This is an idempotent operation that modifies the specified properties while preserving all other existing values. Note: Only the displayName property can be updated via this endpoint. Other properties like isDefault, createdDateTime, etc. are read-only." }, { "slug": "ONENOTE_UPDATE_ONENOTE_PAGE_CONTENT", "name": "Update OneNote page content", "description": "Update the content of a OneNote page within a Microsoft 365 group using HTML patch commands. Use this action when you need to modify the content of an existing OneNote page, such as replacing text, inserting new content, or appending elements. The action supports multiple patch commands in a single request. The API returns 204 No Content on success, meaning no JSON response body is returned." }, { "slug": "ONENOTE_UPDATE_SITE_NOTEBOOKS_SECTIONS", "name": "Update section in site notebook", "description": "Updates a OneNote section within a notebook in a SharePoint site. Use this action when you need to modify properties of an existing section, such as renaming it. This action uses a PATCH request to update the section entity at the specified path within the site's notebook hierarchy. Note: Only the displayName property of a section can be updated via this endpoint. Other properties like createdDateTime, isDefault, etc. are read-only." }, { "slug": "ONENOTE_UPDATE_SITE_PAGES_CONTENT", "name": "Update site OneNote page content", "description": "Update the content of a OneNote page within a SharePoint site. Sends a PATCH request with patch content commands to modify the HTML structure of a OneNote page. Supports appending children, inserting siblings, replacing elements, prepending content, and deleting elements. Use this action when you need to update or modify the content of an existing OneNote page within a SharePoint site, such as adding new paragraphs, inserting images, modifying lists, or replacing/removing existing elements. This action is idempotent for replace, append, prepend, and insert operations, but delete operations are irreversible — deleted elements cannot be recovered once removed." }, { "slug": "ONENOTE_UPDATE_SITE_SECTION_GROUPS_SECTIONS", "name": "Update site section group section", "description": "Updates a OneNote section within a section group in a SharePoint site notebook. Use this action when you need to modify properties of an existing OneNote section, such as updating its display name. This action uses a PATCH request to update the section entity at the specified path within the SharePoint site's notebook hierarchy. Note: Only the displayName property can be updated via this endpoint. Other properties are read-only." }, { "slug": "ONENOTE_UPDATE_USER_NOTEBOOKS_SECTIONS", "name": "Update section in user notebook", "description": "Updates a OneNote section within a user's notebook. Use this action when you need to modify properties of an existing OneNote section, such as renaming it, for a specific user identified by their Microsoft Graph user ID. This action uses a PATCH request to update the section entity at the specified path within the user's notebook hierarchy. Note: Only the displayName property can be updated via this endpoint. Other properties like isDefault, createdDateTime, etc. are read-only." }, { "slug": "ONENOTE_VALIDATE_CREDENTIAL", "name": "Validate OneNote credentials", "description": "Validates OneNote API credentials by attempting to access the user's notebooks. Use this action when you need to verify that the provided authentication token has valid permissions to access Microsoft OneNote. This action makes a lightweight API call to confirm the credentials work before performing other operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "onenote_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Notes.Read,Notes.ReadWrite,Notes.Create,Notes.Read.All,Notes.ReadWrite.All,Sites.Read.All,Team.ReadBasic.All,offline_access,User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "microsoft_power_bi", "name": "Microsoft Power Bi", "logo": "https://logos.composio.dev/api/microsoft_power_bi", "description": "Microsoft Power BI is a business analytics service that provides interactive visualizations and business intelligence capabilities with an interface simple enough for end users to create their own reports and dashboards.", "category": "business intelligence", "authSchemes": [ "OAUTH2" ], "toolCount": 116, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "MICROSOFT_POWER_BI_ADD_DASHBOARD2", "name": "Add Dashboard to Workspace", "description": "Creates a new empty dashboard in the specified workspace. Use this action when you need to create a new dashboard in a Power BI workspace. The API call can be called by a service principal profile. Requires the Workspace.ReadWrite.All scope. Note: The created dashboard will be empty and can be populated with tiles afterward using other APIs." }, { "slug": "MICROSOFT_POWER_BI_APPS_GET_REPORTS", "name": "Get Reports From App", "description": "Returns a list of reports from the specified app. Use this action when you need to retrieve all reports that belong to a specific Power BI app. This is useful for exploring app contents, finding specific reports within apps, or managing app resources. Required Scope: Report.ReadWrite.All or Report.Read.All Limitations: Service principal authentication isn't supported." }, { "slug": "MICROSOFT_POWER_BI_ASSIGN_WORKSPACE_TO_CAPACITY", "name": "Assign Workspace to Capacity", "description": "Assigns the specified workspace to the specified capacity. Use this action when you need to assign a Power BI workspace to a dedicated capacity or unassign My workspace from a capacity by providing an empty GUID (00000000-0000-0000-0000-000000000000). This operation is typically performed by Fabric administrators to manage workspace capacity assignments. Note: The user must have appropriate permissions (Capacity.ReadWrite.All or workspace admin rights)." }, { "slug": "MICROSOFT_POWER_BI_CANCEL_REFRESH2", "name": "Cancel Dataset Refresh in Workspace", "description": "Cancels the specified refresh operation for the specified dataset from the specified workspace. Use this action when you need to cancel an in-progress dataset refresh operation within a specific Power BI workspace. This is useful for stopping long-running refreshes that are no longer needed or that appear to be stuck. Note that only refresh operations with status of Unknown or Queued can be canceled. Once a refresh has started processing, it cannot be cancelled. This action is irreversible - once a refresh is successfully cancelled, it cannot be resumed and must be triggered again manually. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_CLONE_REPORT2", "name": "Clone Report", "description": "Clones the specified report from My workspace. If the dataset for a cloned report resides in two different workspaces or in My workspace, then a shared dataset is created. Use when you need to duplicate a report within My workspace or to another workspace. This is useful for creating backup copies of reports, testing modifications without affecting the original, or preparing reports for different audiences. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_CLONE_REPORT_IN_GROUP", "name": "Clone Report in Workspace", "description": "Clones the specified report from the specified workspace. Use this action when you need to duplicate a Power BI report within the same workspace or to a different workspace. If the dataset for a cloned report resides in two different workspaces or in My workspace, then a share is required. The API returns the cloned report with a new ID. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_CREATE_GOAL_VALUE", "name": "Create Goal Value Check-in", "description": "Creates a new goal value check-in for a Power BI scorecard goal. Use this action when you need to record a new value check-in for a specific goal within a Power BI scorecard. This action allows you to update the current value, target, status, trend, and forecast of a goal. The timestamp is required and represents the UTC time of the check-in. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_CREATE_GROUP", "name": "Create Workspace", "description": "Creates a new workspace in Power BI. Use this action when you need to create a new Power BI workspace to organize reports, dashboards, datasets, and other Power BI content. This API call can be called by a service principal profile. Requires the Workspace.ReadWrite.All scope. Note: The created workspace will be empty and may require additional configuration such as assigning capacity or adding members." }, { "slug": "MICROSOFT_POWER_BI_CREATE_PUSH_DATASET", "name": "Create Push Dataset", "description": "Creates a new dataset on My workspace in Power BI. Use this action when you need to create a new push dataset to store and manage data that can be pushed programmatically via the Power BI REST API. This API call only supports push datasets (Push, Streaming, or PushStreaming mode). This action is irreversible once the dataset is created. The dataset name must be unique within the workspace." }, { "slug": "MICROSOFT_POWER_BI_CREATE_SCORECARD", "name": "Create Scorecard", "description": "Creates a new scorecard in the specified Power BI workspace. Use this action when you need to create a new scorecard to track business objectives and key results in a specific Power BI workspace. Scorecards help organizations monitor progress toward goals with customizable metrics, status rules, and reporting. Requires the Dataset.ReadWrite.All scope. This action is irreversible once the scorecard is created. The scorecard name must be unique within the workspace." }, { "slug": "MICROSOFT_POWER_BI_CREATE_TEMPORARY_UPLOAD_LOCATION", "name": "Create Temporary Upload Location", "description": "Creates a temporary blob storage upload location for importing large Power BI .pbix files that are between 1 GB and 10 GB in size. Use this action when you need to upload a large Power BI .pbix file (between 1 GB and 10 GB) to the organization. The temporary upload location provides a shared access signature (SAS) URL where the file can be uploaded before being imported into Power BI. After uploading to the temporary location, you would use the regular import API to complete the import process. This action creates an upload location at the organization level (myorg), not a specific workspace. To upload to a specific workspace, use CreateTemporaryUploadLocationInGroup instead. Required Scope: Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_CREATE_TEMPORARY_UPLOAD_LOCATION_IN_GROUP", "name": "Create Temporary Upload Location", "description": "Creates a temporary blob storage upload location for importing large Power BI .pbix files that are between 1 GB and 10 GB in size. Use this action when you need to upload a large Power BI .pbix file (between 1 GB and 10 GB) to a workspace. The temporary upload location provides a shared access signature (SAS) URL where the file can be uploaded before being imported into Power BI. After uploading to the temporary location, you would use the regular import API to complete the import process. Required Scope: Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_DASHBOARD", "name": "Delete Dashboard", "description": "Deletes the specified dashboard from My workspace. Use this action when you need to permanently remove a dashboard from a user's Power BI workspace. This action is irreversible — once deleted, the dashboard and all its content cannot be recovered. Required Scope: Dashboard.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_DATAFLOW", "name": "Delete Dataflow", "description": "Deletes the specified dataflow from Power BI data prep storage, including its definition file and model. Use this action when you need to permanently remove a dataflow from a Power BI workspace. This action is irreversible — once deleted, the dataflow and all its associated data cannot be recovered. Permissions: The user must have administrator rights or the caller must be a service principal." }, { "slug": "MICROSOFT_POWER_BI_DELETE_DATASET", "name": "Delete Dataset", "description": "Deletes the specified dataset from My workspace. Use this action when you need to permanently remove a dataset from a user's Power BI workspace. This action is irreversible — once deleted, the dataset and all its associated data cannot be recovered. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_DATASET2", "name": "Delete Dataset from Workspace", "description": "Deletes the specified dataset from the specified workspace. Use this action when you need to permanently remove a dataset from a specific Power BI workspace. This action is irreversible — once deleted, the dataset and all its associated data cannot be recovered. This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_GOAL", "name": "Delete Goal", "description": "Deletes a goal from a scorecard by goal ID. Use this action when you need to permanently remove a goal from a Power BI scorecard. This action is irreversible — once deleted, the goal and its associated data cannot be recovered. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_GOAL_NOTE_BY_ID", "name": "Delete Goal Note by ID", "description": "Deletes a goal value check-in note by its unique identifier. Use this action when you need to remove a specific check-in note from a goal value in Power BI goals. This action is irreversible — once deleted, the note cannot be recovered. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_GOAL_STATUS_RULES", "name": "Delete Goal Status Rules", "description": "Removes status rule definitions from a goal. Use this action when you need to remove all status rules from a specific goal within a Power BI scorecard. This action is irreversible — once deleted, the status rules and their configuration cannot be recovered. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_PIPELINE_USER", "name": "Delete Pipeline User", "description": "Removes user permissions from the specified deployment pipeline. Use this action when you need to revoke a user's access to a deployment pipeline. This action is irreversible — once removed, the user loses access to the pipeline. Required Scope: Pipeline.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_REPORT_IN_GROUP", "name": "Delete Report from Workspace", "description": "Deletes the specified report from the specified workspace. Use this action when you need to permanently remove a report from a specific Power BI workspace. This action is irreversible — once deleted, the report and all its content cannot be recovered. This API call can be called by a service principal profile. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_ROWS", "name": "Delete Rows from Dataset Table", "description": "Deletes all rows from the specified table within the specified dataset from My workspace. Use this action when you need to clear all data from a specific table within a Power BI push dataset. This action is irreversible — once deleted, the rows cannot be recovered. This operation is commonly used to reset test data or prepare a table for fresh data ingestion. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_ROWS_IN_GROUP", "name": "Delete Rows from Dataset Table in Workspace", "description": "Deletes all rows from the specified table within the specified dataset from the specified workspace. Use this action when you need to clear all data from a specific table within a Power BI push dataset in a specific workspace. This action is irreversible — once deleted, the rows cannot be recovered. This operation is commonly used to reset test data or prepare a table for fresh data ingestion in a workspace context. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_SCORECARD_BY_ID", "name": "Delete Scorecard By ID", "description": "Deletes a scorecard by its ID from the specified workspace. Use this action when you need to permanently remove a scorecard from a Power BI workspace. This action is irreversible — once deleted, the scorecard and all its data cannot be recovered. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DELETE_WORKSPACE", "name": "Delete Workspace", "description": "Deletes the specified workspace. Use this action when you need to permanently remove a Power BI workspace. This action is irreversible — once deleted, the workspace and all its content (reports, dashboards, datasets) cannot be recovered. Required Scope: Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_DISCOVER_GATEWAYS", "name": "Discover Gateways for Dataset", "description": "Returns a list of gateways that the specified dataset from the specified workspace can be bound to. Use this action when you need to discover which on-premises data gateways are available to bind a dataset to for refresh and data source connections. This API call is only relevant for datasets that have at least one binding to an on-premises data source. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_EXECUTE_DAX_QUERIES", "name": "Execute DAX Queries", "description": "Executes Data Analysis Expressions (DAX) queries against the provided dataset in My workspace. Use this action when you need to run DAX queries to retrieve or analyze data from a Power BI dataset. This endpoint supports complex DAX queries with multiple EVALUATE statements and includes features for Row-Level Security (RLS), culture-specific formatting, and custom data injection. The response is returned in Apache Arrow format and contains the query results in a columnar format. Use pyarrow or similar libraries to parse the response. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All Important: This API is only available for datasets hosted on a capacity. Datasets with live connections to Azure Analysis Services or on-premises models are not supported. There's a limit of 120 query requests per minute per user." }, { "slug": "MICROSOFT_POWER_BI_EXECUTE_QUERIES_2", "name": "Execute DAX Queries on Dataset", "description": "Executes Data Analysis Expressions (DAX) queries against the specified Power BI dataset. Use this action when you need to run DAX queries to retrieve data, perform calculations, or analyze data directly from a Power BI dataset. DAX query errors (such as syntax errors or invalid references) will result in an error response. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_EXECUTE_SUBSCRIPTION", "name": "Execute Subscription", "description": "Executes the Subscription specified by the Id. Use this action when you need to manually trigger a Power BI email subscription to run immediately instead of waiting for its scheduled frequency. This is useful for testing subscriptions, generating reports on-demand, or forcing an unscheduled distribution of a report. Note: The API returns 204 No Content on success with an empty body." }, { "slug": "MICROSOFT_POWER_BI_GENERATE_DASHBOARD_EMBED_TOKEN", "name": "Generate Dashboard Embed Token", "description": "Generates an embed token to view or edit the specified dashboard from the specified workspace. Use this action when you need to generate an embed token to embed a Power BI dashboard in your application. The token allows you to embed the dashboard with the specified access level. You can also configure row-level security (RLS) by providing identities. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GENERATE_EMBED_TOKEN", "name": "Generate Embed Token for Power BI", "description": "Generates an embed token for multiple reports, datasets, and target workspaces. Use this action when you need to generate an embed token to embed Power BI reports, dashboards, or visuals in your application. Reports and datasets do not have to be related. The token can include identities for row-level security (RLS) and single sign-on (SSO) data sources." }, { "slug": "MICROSOFT_POWER_BI_GENERATE_REPORT_TOKEN_IN_GROUP", "name": "Generate Report Embed Token in Group", "description": "Generates an embed token to view or edit the specified report from the specified workspace. Use this action when you need to generate an embed token to embed a Power BI report in your application. The token allows you to control the access level (View, Edit, or Create) for the embedded report. You can also configure row-level security (RLS) by providing identities, customize the token lifetime, and enable the allowSaveAs option for saving embedded reports as new reports. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GENERATE_TOKEN_IN_GROUP", "name": "Generate Dataset Embed Token in Group", "description": "Generates an embed token based on the specified dataset from the specified workspace. Use this action when you need to generate an embed token to embed Power BI reports or dashboards using a specific dataset from a workspace in your application. The token allows you to control the access level (View, Edit, or Create) for the embedded content. You can also configure row-level security (RLS) by providing identities, and customize the token lifetime. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_AVAILABLE_FEATURE_BY_NAME", "name": "Get Available Feature By Name", "description": "Returns the specified available feature for the user by name. Use this action when you need to check the availability and status of a specific Power BI feature, such as embedTrial. This API call doesn't require any scopes. Note: The featureName path parameter should be URL-encoded if it contains special characters." }, { "slug": "MICROSOFT_POWER_BI_GET_CAPACITIES", "name": "Get Capacities", "description": "Returns a list of Power BI capacities that the authenticated user has access to. Use this action to retrieve information about all available capacities in the organization, including their state, SKU, region, and access permissions. This is useful for admin operations and capacity management tasks. Permissions: Requires one of the following scopes: Capacity.Read.All or Capacity.ReadWrite.All. This API call can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_DASHBOARD2", "name": "Get Dashboard from My Workspace", "description": "Returns the specified dashboard from My workspace. Use when you need to retrieve details about a specific dashboard from the current user's personal workspace in Power BI. This is useful for getting dashboard metadata, embed URLs, or user permissions. Required Scope: Dashboard.ReadWrite.All or Dashboard.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DASHBOARDS", "name": "Get Dashboards", "description": "Returns a list of dashboards from the specified workspace. Use this action when you need to retrieve all dashboards within a Power BI workspace. This is useful for exploring workspace contents, finding specific dashboard IDs, or managing dashboard resources. Permissions: This API call can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_DATAFLOWS", "name": "Get Dataflows", "description": "Returns a list of all dataflows from the specified workspace. Use this action when you need to retrieve all dataflows within a specific Power BI workspace. This is useful for inventory, monitoring, or managing dataflows within a workspace. This API call can be called by a service principal profile. Required Scope: Dataflow.Read.All or Dataflow.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATASET", "name": "Get Dataset", "description": "Returns the specified dataset from My workspace. Use this action when you need to retrieve details about a specific Power BI dataset in your workspace, including its configuration, permissions, and relationships to other artifacts like dataflows and tables. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATASET2", "name": "Get Dataset in Workspace", "description": "Returns the specified dataset from the specified workspace. Use this action when you need to retrieve details about a specific Power BI dataset in a workspace, including its configuration, permissions, and relationships to other artifacts like dataflows and tables. Permissions: This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATA_SET_DATA", "name": "Get DataSet Data", "description": "Gets the query results for the specified DataSet. Use when you need to retrieve the actual data values from a Power BI DataSet, such as for exporting data, generating reports outside of Power BI, or performing data analysis on dataset contents. This action executes a query against the dataset and returns the column definitions and row data. Use the optional parameters to filter or customize the query results." }, { "slug": "MICROSOFT_POWER_BI_GET_DATASETS", "name": "Get Datasets from My Workspace", "description": "Returns a list of datasets from My workspace. Use when you need to retrieve all datasets available in the authenticated user's personal workspace, including their configuration and metadata. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATA_SETS", "name": "Get DataSets from Power BI", "description": "Gets an array of DataSet CatalogItems from Power BI. Use when you need to retrieve all available datasets from the Power BI service, including their metadata such as creation date, modified date, owner, and dataset-specific properties like query timeout and parameters. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATASET_TO_DATAFLOWS_LINKS", "name": "Get Dataset to Dataflows Links", "description": "Returns a list of upstream dataflows for datasets from the specified workspace. Use this action when you need to retrieve the relationships between datasets and their upstream dataflows in a Power BI workspace for dependency analysis or lineage tracking. This API call can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_DATASET_USERS", "name": "Get Dataset Users", "description": "Returns a list of principals that have access to the specified dataset. Use this action when you need to retrieve the list of users or service principals who have been granted access to a specific Power BI dataset. This is useful for auditing dataset permissions, managing access control, or understanding who can view or modify the dataset. Note: When user permissions to a dataset have been recently updated, the new permissions might not be immediately available." }, { "slug": "MICROSOFT_POWER_BI_GET_DATASET_USERS_IN_GROUP", "name": "Get Dataset Users In Group", "description": "Returns a list of principals that have access to the specified dataset within a workspace. Use this action when you need to retrieve the list of users or service principals who have been granted access to a specific Power BI dataset within a workspace. This is useful for auditing dataset permissions, managing access control, or understanding who can view or modify the dataset in a group context. Note: When user permissions to a dataset have been recently updated, the new permissions might not be immediately available." }, { "slug": "MICROSOFT_POWER_BI_GET_DATASOURCES", "name": "Get Datasources for Dataset", "description": "Returns a list of data sources for the specified dataset from My workspace. Use when you need to retrieve all data source connections configured for a specific Power BI dataset, such as when auditing data sources, troubleshooting refresh issues, or understanding dataset dependencies. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_DATASOURCES_IN_GROUP3", "name": "Get Datasources for Dataset in Workspace", "description": "Returns a list of data sources for the specified dataset from the specified workspace. Use when you need to retrieve all data source connections configured for a specific Power BI dataset within a workspace, such as when auditing data sources, troubleshooting refresh issues, or understanding dataset dependencies. This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GATEWAY", "name": "Get Gateway", "description": "Returns the specified gateway. Use this action when you need to retrieve details about a specific Power BI gateway, including its status, type, and public key for encryption. Permissions: The user must have gateway admin permissions. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GATEWAY_DATASOURCES_IN_GROUP", "name": "Get Gateway Datasources in Group", "description": "Returns a list of gateway data sources for the specified dataset from the specified workspace. Use this action when you need to retrieve all gateway data source connections configured for a specific Power BI dataset within a workspace. This is useful for auditing data source configurations, troubleshooting refresh issues, or understanding dataset dependencies. This API is deprecated - use Get Datasources In Group instead." }, { "slug": "MICROSOFT_POWER_BI_GET_GATEWAYS", "name": "Get Gateways", "description": "Returns a list of gateways for which the user is an admin. Use this action when you need to retrieve all Power BI gateways that you have administrative permissions for. This is useful for monitoring gateway status, managing data sources, or administering on-premises data gateway configurations. Gateway admin permissions are required to access this endpoint." }, { "slug": "MICROSOFT_POWER_BI_GET_GOALS", "name": "Get Goals from Scorecard", "description": "Returns a list of goals from a scorecard. Use this action when you need to retrieve all goals defined within a Power BI scorecard. This is useful for understanding the organizational objectives and key results (OKRs) tracked in Power BI, finding specific goal IDs, or monitoring progress against targets. This API call can be called by a service principal profile. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GOALS_REFRESH_HISTORY", "name": "Get Goals Refresh History", "description": "Reads refresh history of a connected goal. Use this action when you need to retrieve the refresh history for a specific Power BI goal to monitor refresh performance, identify failed refreshes, or audit refresh operations on goals. This endpoint is part of the Power BI Goals (Preview) API. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All Note: This is a preview API and may be subject to changes." }, { "slug": "MICROSOFT_POWER_BI_GET_GOALS_STATUS_RULES", "name": "Get Goals Status Rules", "description": "Returns status rules of a goal. Use this action when you need to retrieve the status rules configuration for a specific Power BI goal within a scorecard. Status rules determine how goal status is calculated based on conditions (e.g., if actual value > 50% of target, status is \"On track\"). This action supports reading both simple expression-based conditions and complex field comparison conditions. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GOAL_VALUE_BY_ID", "name": "Get Goal Value By ID", "description": "Reads a goal value check-in by a UTC date timestamp. Use this action when you need to retrieve a specific goal value check-in from a Power BI scorecard. This is useful for tracking historical goal values, reviewing notes on goal progress, or analyzing trends. The timestamp must be provided in UTC format (e.g., 2024-05-12T00:00:00Z). Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GROUPS", "name": "Get Groups", "description": "Returns a list of workspaces the user has access to. Use this action when you need to retrieve all Power BI workspaces (groups) that the authenticated user has access to. This is useful for listing available workspaces, finding specific workspace IDs, or managing workspace resources. This API call can be called by a service principal profile. Required Scope: Workspace.Read.All or Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GROUPS_CAPACITY_ASSIGNMENT_STATUS", "name": "Get Groups Capacity Assignment Status", "description": "Gets the status of the assignment-to-capacity operation for the specified workspace. Use this action when you need to check the current status of a workspace assignment operation to a capacity. This is useful for monitoring long-running workspace migrations or diagnosing failed assignments. Required Scope: Workspace.Read.All or Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_GROUP_USERS", "name": "Get Group Users", "description": "Returns a list of users that have access to the specified workspace. Use this action when you need to retrieve the list of users or service principals who have been granted access to a specific Power BI workspace. This is useful for auditing workspace permissions, managing access control, or understanding who can view or modify the workspace contents. Permissions: This API call can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_IMPORT", "name": "Get Import", "description": "Returns the specified import from My workspace. Use this action when you need to retrieve details about a specific import in your Power BI workspace, including its status, associated datasets, and reports. This is useful for tracking import operations, checking whether an import succeeded or failed, and identifying related artifacts. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_IMPORTS2", "name": "Get Imports from My Workspace", "description": "Returns a list of imports from My workspace. Use this action when you need to retrieve all imports in the authenticated user's personal workspace, including their status, associated datasets, and reports. This is useful for monitoring import operations, checking import completion status, or listing imported content in your workspace. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_IMPORTS_IN_GROUP", "name": "Get Imports in Workspace", "description": "Returns a list of imports from the specified workspace. Use this action when you need to retrieve all imports in a Power BI workspace to monitor import status, list imported datasets and reports, or check for failed imports. This API can be called by a service principal profile with appropriate workspace permissions." }, { "slug": "MICROSOFT_POWER_BI_GET_LINKED_REPORT_HISTORY_SNAPSHOT", "name": "Get Linked Report History Snapshot", "description": "Gets requested HistorySnapshot item specified by HistoryId of the LinkedReport specified by Id. Use this action when you need to retrieve a specific history snapshot for a Power BI LinkedReport. History snapshots capture the state of a report at a particular point in time and can be used for auditing, versioning, or recovery purposes. This is a read-only operation that returns snapshot metadata including creation date, snapshot ID, and size information." }, { "slug": "MICROSOFT_POWER_BI_GET_PAGE", "name": "Get Report Page", "description": "Returns the specified page within the specified report from the specified workspace. Use this action when you need to retrieve details about a specific page within a Power BI report. This is useful for exploring report structure, getting page metadata, or identifying the order of pages in a report. Permissions: This API call can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_PAGES", "name": "Get Pages from Report", "description": "Returns a list of pages within the specified report from the specified workspace. Use this action when you need to retrieve all pages in a Power BI report to understand the report structure, navigate between pages, or manage report content. This API call can be called by a service principal profile. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_PAGES_IN_MY_WORKSPACE", "name": "Get Pages from Report in My Workspace", "description": "Returns a list of pages within the specified report from My workspace. Use this action when you need to retrieve all pages in a Power BI report that belongs to your personal workspace. This is useful for understanding the report structure, navigating between pages, or managing report content. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_PARAMETERS", "name": "Get Dataset Parameters", "description": "Returns a list of parameters for the specified dataset from **My workspace**. Use this action when you need to retrieve all parameter definitions and their current values for a Power BI dataset, including whether each parameter is required, its data type, and any suggested values. This is useful for auditing dataset configuration, understanding data source connections, or preparing to update parameter values. Required Scope: Dataset.Read" }, { "slug": "MICROSOFT_POWER_BI_GET_PARAMETERS_IN_GROUP2", "name": "Get Dataset Parameters in Workspace", "description": "Returns a list of parameters for the specified dataset from the specified workspace. Use this action when you need to retrieve all parameter definitions and their current values for a Power BI dataset within a specific workspace, including whether each parameter is required, its data type, and any suggested values. This is useful for auditing dataset configuration, understanding data source connections, or preparing to update parameter values in a workspace context. This API call can be called by a service principal profile with appropriate workspace permissions. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_QUERY_SCALE_OUT_SYNC_STATUS_2", "name": "Get Query Scale Out Sync Status", "description": "Returns the query scale-out sync status for the specified dataset from the specified workspace. Use this action when you need to check the synchronization status of read-only replicas for a dataset that supports query scale-out. This includes information about commit versions, active read timestamps, and the current sync status. This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESHABLE_CAPACITY_2", "name": "Get Refreshable For Capacity", "description": "Returns the specified refreshable for the specified capacity that the user has access to. Use this action when you need to retrieve details about a specific refreshable item (dataset) within a capacity, including refresh history, schedules, and status. Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes. Required Scope: Capacity.Read.All or Capacity.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESHABLES", "name": "Get refreshables for all capacities", "description": "Returns a list of refreshables for all capacities that the user has access to. Use when you need to retrieve information about datasets and dataflows that have refresh schedules or refresh history across all Power BI capacities. Power BI retains a seven-day refresh history for each dataset, up to a maximum of sixty refreshes. This action is useful for monitoring refresh performance, identifying failed refreshes, and auditing refresh schedules across the organization." }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESH_EXECUTION_DETAILS_IN_GROUP", "name": "Get Refresh Execution Details In Group", "description": "Returns execution details of a refresh operation for the specified dataset from the specified workspace. Use this action when you need to retrieve detailed information about a dataset refresh operation within a workspace, including timing, status, errors, and any retry attempts. This is useful for monitoring refresh operations, troubleshooting failed refreshes, and auditing refresh history. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESH_HISTORY", "name": "Get Refresh History for Dataset", "description": "Returns the refresh history for the specified dataset from My workspace. Use when you need to retrieve the refresh history of a specific Power BI dataset to monitor refresh performance, identify failed refreshes, or audit refresh operations. Power BI retains between 20-60 available refresh history entries depending on the number of refreshes in the last 3 days. The most recent 60 entries are kept if they are all less than 3 days old. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All Note: OneDrive refresh history isn't returned by this endpoint." }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESH_SCHEDULE", "name": "Get Dataset Refresh Schedule", "description": "Returns the refresh schedule for the specified dataset from My workspace. Use when you need to retrieve the current refresh schedule configuration for a dataset, including the days, times, and notification settings. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REFRESH_SCHEDULE_IN_GROUP2", "name": "Get Refresh Schedule In Group 2", "description": "Returns the refresh schedule for the specified dataset from the specified workspace. Use this action when you need to retrieve the current refresh schedule configuration for a dataset within a specific Power BI workspace, including the days, times, and notification settings. This action is read-only and idempotent. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All Note: This API can be called by a service principal profile." }, { "slug": "MICROSOFT_POWER_BI_GET_REPORT3", "name": "Get Report from My Workspace", "description": "Returns the specified report from My workspace. Use this action when you need to retrieve details about a specific Power BI report from your personal workspace, including its metadata, embed URL, ownership information, and associated dataset. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REPORT_PAGE2", "name": "Get Report Page From My Workspace", "description": "Returns the specified page within the specified report from My workspace. Use this action when you need to retrieve details about a specific page within a Power BI report in your personal workspace. This is useful for exploring report structure, getting page metadata, or identifying the order of pages in a report. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_REPORTS", "name": "Get Reports", "description": "Gets an array of Report CatalogItems from Power BI. Use this action when you need to retrieve all reports available in the Power BI service. This is useful for browsing the report catalog, finding specific reports, or auditing available resources. The endpoint supports OData query parameters for filtering, sorting, and pagination. Required Scope: Report.Read.All or Report.ReadWrite.All Note: This endpoint uses the v2.0 Power BI Report Server API path." }, { "slug": "MICROSOFT_POWER_BI_GET_REPORTS3", "name": "Get Reports From My Workspace", "description": "Returns a list of reports from My workspace. Use this action when you need to retrieve all reports from your personal Power BI workspace. This also returns shared reports and reports from shared apps. This is useful for exploring your personal workspace contents, finding specific report IDs, or managing report resources. Required Scope: Report.ReadWrite.All or Report.Read.All Note: Service principal authentication isn't supported." }, { "slug": "MICROSOFT_POWER_BI_GET_RESOURCES", "name": "Get Resources", "description": "Gets an array of Resource catalog items. Use this action when you need to retrieve all Power BI resources from the catalog. This is useful for exploring available resources, finding specific resource IDs, or managing resource content. Note: This endpoint uses the Power BI REST API (cloud service)." }, { "slug": "MICROSOFT_POWER_BI_GET_SCORECARD_BY_ID", "name": "Get Scorecard By ID", "description": "Returns a scorecard with the specified ID. Use this action when you need to retrieve details about a specific Power BI scorecard within a workspace, including its goals, metrics, and configuration. This action supports optional OData expansion for including related data like goals, goal values, aggregations, and notes in the response. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_SCORECARDS", "name": "Get Scorecards", "description": "Returns a list of scorecards from a workspace. Use this action when you need to retrieve all scorecards within a Power BI workspace. This is useful for exploring workspace goals, finding specific scorecard IDs, or managing scorecard resources. Required Scope: Dataset.Read.All or Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_TABLES", "name": "Get Tables in Dataset", "description": "Returns a list of tables within the specified dataset from My workspace. Use this action when you need to retrieve the schema, columns, measures, and other structural metadata of tables within a Power BI dataset. This is useful for understanding the data model, exploring available fields, or preparing to write DAX expressions. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All" }, { "slug": "MICROSOFT_POWER_BI_GET_TABLES_IN_GROUP", "name": "Get Tables in Dataset within Workspace", "description": "Returns a list of tables within the specified dataset from the specified workspace. Use when you need to retrieve the schema, columns, measures, and other structural metadata of tables within a Power BI dataset in a specific workspace. This is useful for understanding the data model, exploring available fields, or preparing to write DAX expressions. Required Scope: Dataset.ReadWrite.All or Dataset.Read.All Note: This API only supports push datasets." }, { "slug": "MICROSOFT_POWER_BI_GET_TILES2", "name": "Get Tiles from My Workspace Dashboard", "description": "Returns a list of tiles within the specified dashboard from My workspace. Use this action when you need to retrieve all tiles (visualizations) from a specific dashboard in My workspace. Supported tiles include datasets and live tiles that contain an entire report page. This is useful for understanding what content exists in a dashboard or for enumerating dashboard elements. Required Scope: Dashboard.Read.All or Dashboard.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_TILES3", "name": "Get Tiles from Workspace Dashboard", "description": "Returns a list of tiles within the specified dashboard from the specified workspace. Use this action when you need to retrieve all tiles (visualizations) from a specific dashboard within a Power BI workspace. Supported tiles include datasets and live tiles that contain an entire report page. This is useful for understanding what content exists in a dashboard or for enumerating dashboard elements. Required Scope: Dashboard.Read.All or Dashboard.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_GET_WORKSPACE", "name": "Get Workspace", "description": "Returns a specified workspace (group). Use this action when you need to retrieve details about a specific Power BI workspace, including its name, capacity configuration, storage settings, and Log Analytics workspace integration. Permissions: This API call can be called by a service principal profile. Required Scope: Workspace.Read.All or Workspace.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_MICROSOFT_POWER_BI_DATASETS_TRIGGER_QUERY_SCALE_OUT_SYNC_IN_GROUP", "name": "Trigger Query Scale Out Sync in Workspace", "description": "Triggers a query scale-out sync of read-only replicas for the specified dataset from the specified workspace. Use this action when you need to manually synchronize read-only replicas for a dataset in a specific Power BI workspace. This is typically used for maintenance or to ensure all replicas are synchronized before performing administrative operations. The sync operation ensures that read-only replicas have the latest data from the primary dataset. This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_MOVE_GOALS", "name": "Move Power BI Scorecard Goals", "description": "Moves goals within the scorecard. Changes their ranks and parents. Use when you need to reorganize the goal hierarchy in a Power BI scorecard, such as reordering goals within the same parent, moving a goal to a different parent, or repositioning a goal among its siblings. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_PATCH_GOAL_NOTE", "name": "Patch Goal Note", "description": "Updates a goal value check-in note by ID. Use this action when you need to update the content of an existing goal check-in note in Power BI goals. This action modifies the note body while preserving other note metadata like timestamps and IDs. This is useful for correcting errors, adding additional context, or updating progress notes on goals. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_PATCH_GOAL_VALUE_BY_ID", "name": "Patch Goal Value By ID", "description": "Updates a goal value check-in by a UTC date timestamp. Use this action when you need to update the value, status, target, or other properties of a specific goal value check-in within a Power BI scorecard. This allows you to record progress updates for goals at specific timestamps. Requires the Dataset.ReadWrite.All scope. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_PATCH_SCORECARD_BY_ID", "name": "Patch Scorecard By ID", "description": "Updates a scorecard by its ID. Use this action when you need to modify properties of an existing Power BI scorecard, such as updating its name, description, permissions, or associated settings. This action requires the Dataset.ReadWrite.All scope. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_POST_DATASET_IN_GROUP", "name": "Create Push Dataset in Workspace", "description": "Creates a new push dataset in the specified Power BI workspace. Use this action when you need to create a new push dataset in a specific workspace to store and manage data that can be pushed programmatically via the Power BI REST API. This API call only supports push datasets (Push, Streaming, or PushStreaming mode). This action is irreversible once the dataset is created. The dataset name must be unique within the workspace." }, { "slug": "MICROSOFT_POWER_BI_POST_DATASET_USER", "name": "Grant Dataset User Permissions", "description": "Grants the specified user's permissions to the specified dataset. Use this action when you need to assign access rights to a Power BI dataset for a specific user, group, or app. This is useful for managing dataset permissions and controlling who can access or interact with the dataset. Note: When user permissions to a dataset have been recently updated, the new permissions might not be immediately available." }, { "slug": "MICROSOFT_POWER_BI_POST_DATASET_USER_IN_GROUP", "name": "Grant Dataset User Permissions In Group", "description": "Grants the specified user's permissions to the specified dataset in a workspace. Use this action when you need to assign access rights to a Power BI dataset for a specific user, group, or app within a workspace context. This is useful for managing dataset permissions and controlling who can access or interact with the dataset. Note: When user permissions to a dataset have been recently updated, the new permissions might not be immediately available. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_POST_GOAL", "name": "Post Goal", "description": "Adds a new goal to a Power BI scorecard. Use this action when you need to create a new goal within an existing scorecard to track objectives, KPIs, or other metrics. Goals can be organized in a parent-child hierarchy and support various formatting options for dates and values. Requires the Dataset.ReadWrite.All scope. Note: The goal will be created with default values that may need to be updated via additional API calls for detailed configuration." }, { "slug": "MICROSOFT_POWER_BI_POST_GOAL_NOTE", "name": "Post Goal Note", "description": "Adds a new note to a goal value check-in for a Power BI scorecard goal. Use this action when you need to add a note or comment to a specific goal value check-in within a Power BI scorecard. This allows you to provide additional context or explanations for goal progress updates. The timestamp parameter identifies the specific goal value check-in to attach the note to. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_POST_ROWS_IN_GROUP", "name": "Add Rows to Dataset Table in Workspace", "description": "Adds new data rows to the specified table within the specified dataset from the specified workspace. Use this action when you need to push new data rows into a Power BI push dataset table. This action is idempotent — pushing the same rows multiple times will add duplicate data. The dataset must be a push dataset (Push, Streaming, or PushStreaming mode) with the Add Rows API enabled. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_POST_STATUS_RULES", "name": "Post Goal Status Rules", "description": "Creates or updates status rules of a goal in Power BI. Use this action when you need to define custom status rules that automatically set a goal's status based on conditions such as current value, threshold comparisons, or state values. The defaultOutput is used when no rule conditions are met. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_PUT_TABLE", "name": "Update Table Schema", "description": "Updates the metadata and schema for the specified table within the specified dataset from My workspace. Use this action when you need to modify the schema or metadata of an existing table in a Power BI push dataset. This includes updating columns, adding measures, or changing table properties. The table must already exist in the dataset. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_PUT_TABLE_IN_GROUP", "name": "Update Table Schema in Workspace", "description": "Updates the metadata and schema for the specified table within the specified dataset from the specified workspace. Use this action when you need to modify the schema or metadata of an existing table in a Power BI push dataset within a workspace. This includes updating columns, adding measures, or changing table properties. The table must already exist in the dataset. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_REBIND_REPORT", "name": "Rebind Report to Dataset", "description": "Rebinds the specified report from the specified workspace to the specified dataset. Use this action when you need to change which dataset a Power BI report uses. This is useful for migrating reports to different datasets, connecting reports to updated data sources, or consolidating multiple reports under a single dataset. If the target dataset resides in a different workspace than the report, a shared dataset will be automatically created in the report's workspace. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_REFRESH_DATASET_IN_GROUP", "name": "Trigger Dataset Refresh in Workspace", "description": "Triggers a refresh for the specified dataset from the specified workspace. Use this action when you need to manually trigger a dataset refresh in a Power BI workspace. An enhanced refresh is triggered only if a request payload other than notifyOption is set (e.g., when specifying specific tables, commit mode, or timeout). Note: This action is asynchronous - it initiates the refresh and returns immediately. Use GetRefreshHistory or GetRefreshExecutionDetails to monitor the refresh status. Required Scope: Dataset.ReadWrite.All This action is not destructive - it initiates a refresh operation that can be monitored and cancelled if needed." }, { "slug": "MICROSOFT_POWER_BI_REPORTS_GENERATE_TOKEN_CREATE_IN_GROUP", "name": "Generate Report Embed Token for Create in Group", "description": "Generates an embed token to allow report creation in the specified workspace based on the specified dataset. Use this action when you need to generate an embed token to create a new Power BI report within a specific workspace. The token is based on a dataset and allows programmatic report creation through the Power BI API. You can configure row-level security (RLS) by providing identities, and customize the token lifetime. Required Scope: Report.ReadWrite.All or Report.Read.All" }, { "slug": "MICROSOFT_POWER_BI_SET_LINKED_REPORT_CACHE_OPTIONS", "name": "Set Linked Report Cache Options", "description": "Replaces the CacheOption's content for a given LinkedReport using the provided definition. Use this action when you need to configure or update the cache settings for a Power BI linked report. This includes setting the execution type (Live, Cache, or Snapshot) and optionally configuring cache expiration. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_TAKE_OVER_DATASET", "name": "Take Over Dataset", "description": "Transfers ownership over the specified dataset to the current authorized user. Use this action when you need to take over ownership of a dataset in a Power BI workspace. This is useful when the original owner has left the organization or is unavailable, and another user needs to manage the dataset. This API call can be called by a service principal profile. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_TAKE_OVER_REPORT_IN_GROUP", "name": "Take Over Paginated Report Ownership", "description": "Transfers ownership of the data sources for the specified paginated report (RDL) to the current authorized user. Use this action when you need to take ownership of a paginated report's data sources in a Power BI workspace. This is useful when the previous owner is no longer available or you need administrative control over the report's data connections. This operation affects all data sources associated with the report. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_TRIGGER_QUERY_SCALE_OUT_SYNC", "name": "Trigger Query Scale Out Sync", "description": "Triggers a query scale-out sync of read-only replicas for the specified dataset from My workspace. Use this action when you need to manually synchronize read-only replicas for a dataset that supports query scale-out. This is typically used for maintenance or to ensure all replicas are synchronized before performing administrative operations. The sync operation ensures that read-only replicas have the latest data from the primary dataset. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_DATASET", "name": "Update Dataset", "description": "Updates the properties for the specified dataset from My workspace. Use this action when you need to modify dataset settings such as query scale-out configuration or storage mode. The user must be the dataset owner to perform this operation. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_DATASET_IN_GROUP", "name": "Update Dataset In Workspace", "description": "Updates the properties for the specified dataset from the specified workspace. Use this action when you need to modify dataset settings in a workspace, such as configuring query scale-out settings or changing the storage mode. The user must be the dataset owner to perform this operation. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_DATASOURCES3", "name": "Update Paginated Report Data Sources", "description": "Updates the data sources of the specified paginated report (RDL) from the specified workspace. Use this action when you need to update the connection details (server, database) for one or more data sources in a Power BI paginated report within a specific workspace. This is useful for migrating paginated reports between environments (e.g., from development to production) or updating connection strings without republishing the report. [!IMPORTANT] Both the original data source and the new data source must have the exact same schema. Important notes: - Only supports paginated reports (RDL). - Both the original and new data sources must have the exact same schema. - Changing the data source type is not supported. - Open Database Connectivity (ODBC) data sources are not supported. - The user must be the data source owner. Required scope: Reports.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_GOAL_BY_ID", "name": "Patch Goal By ID", "description": "Updates a goal by its ID within a Power BI scorecard. Use this action when you need to modify properties of an existing goal in a Power BI scorecard, such as updating its name, description, dates, permissions, or associated settings. This action requires the Dataset.ReadWrite.All scope. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_PARAMETERS_IN_GROUP2", "name": "Update Dataset Parameters in Workspace", "description": "Updates the parameters values for the specified dataset from the specified workspace. Use this action when you need to change one or more parameter values in a Power BI dataset that resides in a specific workspace. This is commonly used after updating underlying data sources or to modify dataset configuration without redeploying. [!NOTE] We recommend using enhanced dataset metadata with this API call." }, { "slug": "MICROSOFT_POWER_BI_UPDATE_REFRESH_SCHEDULE", "name": "Update Refresh Schedule", "description": "Updates the refresh schedule for the specified dataset from My workspace. Use this action when you need to configure or modify the automatic refresh schedule for a Power BI dataset, such as enabling/disabling scheduled refresh, setting refresh days and times, or configuring failure notifications. A request that disables the refresh schedule should contain no other changes. This action is idempotent. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_REFRESH_SCHEDULE_IN_GROUP3", "name": "Update Refresh Schedule In Group", "description": "Updates the refresh schedule for the specified dataset from the specified workspace. Use this action when you need to configure or modify the automatic refresh schedule for a Power BI dataset within a workspace, such as enabling/disabling scheduled refresh, setting refresh days and times, or configuring failure notifications. A request that disables the refresh schedule should contain no other changes. This action is idempotent. Required Scope: Dataset.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_REPORT_CONTENT", "name": "Update Report Content", "description": "Updates the content of the specified report from **My workspace** with the content of a specified source report. Use this action when you need to replace the content of a report in My workspace with content from another report. The target report must be in My workspace. The source report can be from My workspace or another workspace (in which case a share is required). This operation overwrites the target report's content while keeping its ID, name, and other properties. Required Scope: Report.ReadWrite.All" }, { "slug": "MICROSOFT_POWER_BI_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Updates the properties for the specified workspace. Use this action when you need to modify workspace settings such as renaming the workspace or changing the default dataset storage format. This action can be called by a service principal profile with appropriate permissions. This action is idempotent - calling it multiple times with the same parameters will have the same effect. Required Scope: Workspace.ReadWrite.All" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft_power_bi_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://analysis.windows.net/powerbi/api/Dataset.Read.All,https://analysis.windows.net/powerbi/api/Report.Read.All,https://analysis.windows.net/powerbi/api/Dashboard.Read.All,https://analysis.windows.net/powerbi/api/Workspace.Read.All,https://analysis.windows.net/powerbi/api/Content.Create,https://analysis.windows.net/powerbi/api/Dataflow.Read.All,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "microsoft_sharepoint_graph", "name": "Microsoft SharePoint Graph", "logo": "https://logos.composio.dev/api/share_point", "description": "Microsoft SharePoint Graph uses Microsoft Graph to access SharePoint sites, lists, list items, document libraries, files, folders, and sharing capabilities.", "category": "documents", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "toolCount": 99, "triggerCount": 0, "version": "00000000_00", "tools": [ { "slug": "MICROSOFT_SHAREPOINT_GRAPH_ADD_CONTENT_TYPE_COPY_TO_LIST", "name": "Add Content Type Copy To SharePoint List", "description": "Copy a site content type into a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_ADD_WORKBOOK_TABLE", "name": "Add SharePoint Workbook Table", "description": "Add a table to an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_ADD_WORKBOOK_TABLE_ROW", "name": "Add SharePoint Workbook Table Row", "description": "Add rows to an Excel workbook table stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_ADD_WORKBOOK_WORKSHEET", "name": "Add SharePoint Workbook Worksheet", "description": "Add a worksheet to an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CHECKIN_DRIVE_ITEM", "name": "Check In SharePoint Drive Item", "description": "Check in a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CHECKOUT_DRIVE_ITEM", "name": "Checkout SharePoint Drive Item", "description": "Checkout SharePoint Drive Item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CLOSE_WORKBOOK_SESSION", "name": "Close SharePoint Workbook Session", "description": "Close an Excel workbook session." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_COPY_DRIVE_ITEM", "name": "Copy SharePoint Drive Item", "description": "Start an asynchronous copy of a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_FOLDER", "name": "Create SharePoint Folder", "description": "Create a folder inside a SharePoint drive folder." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_LIST", "name": "Create SharePoint List", "description": "Create a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_LIST_COLUMN", "name": "Create SharePoint List Column", "description": "Create a SharePoint list column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_LIST_ITEM", "name": "Create SharePoint List Item", "description": "Create a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_SHARING_LINK", "name": "Create SharePoint Sharing Link", "description": "Create a sharing link for a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_SITE_COLUMN", "name": "Create SharePoint Site Column", "description": "Create a SharePoint site column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_SITE_CONTENT_TYPE", "name": "Create SharePoint Site Content Type", "description": "Create a SharePoint site content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_SITE_PAGE", "name": "Create SharePoint Site Page", "description": "Create a modern SharePoint site page." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_SUBSCRIPTION", "name": "Create Microsoft Graph Subscription", "description": "Create a Microsoft Graph webhook subscription." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_UPLOAD_SESSION", "name": "Create SharePoint Upload Session", "description": "Create an upload session for large SharePoint file uploads." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_CREATE_WORKBOOK_SESSION", "name": "Create SharePoint Workbook Session", "description": "Create an Excel workbook session for a workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM", "name": "Delete SharePoint Drive Item", "description": "Delete a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM_PERMISSION", "name": "Delete SharePoint Drive Item Permission", "description": "Delete a sharing permission from a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM_VERSION", "name": "Delete SharePoint Drive Item Version", "description": "Delete a SharePoint drive item version." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_LIST", "name": "Delete SharePoint List", "description": "Delete a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_LIST_COLUMN", "name": "Delete SharePoint List Column", "description": "Delete a SharePoint list column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_LIST_CONTENT_TYPE", "name": "Delete SharePoint List Content Type", "description": "Delete a SharePoint list content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_LIST_ITEM", "name": "Delete SharePoint List Item", "description": "Delete a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_SITE_COLUMN", "name": "Delete SharePoint Site Column", "description": "Delete a SharePoint site column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_SITE_CONTENT_TYPE", "name": "Delete SharePoint Site Content Type", "description": "Delete a SharePoint site content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_SITE_PAGE", "name": "Delete SharePoint Site Page", "description": "Delete a SharePoint site page." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_SUBSCRIPTION", "name": "Delete Microsoft Graph Subscription", "description": "Delete a Microsoft Graph webhook subscription." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DELETE_WORKBOOK_WORKSHEET", "name": "Delete SharePoint Workbook Worksheet", "description": "Delete a worksheet in an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DISCARD_CHECKOUT_DRIVE_ITEM", "name": "Discard SharePoint Drive Item Checkout", "description": "Discard SharePoint Drive Item Checkout." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DOWNLOAD_DRIVE_ITEM", "name": "Download SharePoint Drive Item", "description": "Download a SharePoint drive item and return base64 content." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_DOWNLOAD_DRIVE_ITEM_BY_PATH", "name": "Download SharePoint Drive Item By Path", "description": "Download a SharePoint drive item by path and return base64 content." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_EXECUTE_BATCH", "name": "Execute Microsoft Graph Batch", "description": "Execute a Microsoft Graph JSON batch request." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_CURRENT_USER", "name": "Get Current Microsoft Graph User", "description": "Get the current Microsoft Graph user for delegated SharePoint Graph connections." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DEFAULT_DRIVE", "name": "Get SharePoint Default Drive", "description": "Get the default document library drive for a SharePoint site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DRIVE", "name": "Get SharePoint Drive", "description": "Get a SharePoint document library drive by drive ID." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DRIVE_ITEM", "name": "Get SharePoint Drive Item", "description": "Get a SharePoint drive item by ID." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DRIVE_ITEM_ANALYTICS", "name": "Get SharePoint Drive Item Analytics", "description": "Get item analytics for a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DRIVE_ITEM_BY_PATH", "name": "Get SharePoint Drive Item By Path", "description": "Get a SharePoint drive item by path." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_DRIVE_ITEM_VERSION", "name": "Get SharePoint Drive Item Version", "description": "Get a specific SharePoint drive item version." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST", "name": "Get SharePoint List", "description": "Get a SharePoint list by ID or display name." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST_COLUMN", "name": "Get SharePoint List Column", "description": "Get a SharePoint list column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST_CONTENT_TYPE", "name": "Get SharePoint List Content Type", "description": "Get a SharePoint list content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST_ITEM", "name": "Get SharePoint List Item", "description": "Get a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST_ITEM_FIELDS", "name": "Get SharePoint List Item Fields", "description": "Get field values for a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_LIST_ITEM_VERSION", "name": "Get SharePoint List Item Version", "description": "Get a specific SharePoint list item version." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_SITE", "name": "Get SharePoint Site", "description": "Get a SharePoint site by Microsoft Graph site ID." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_SITE_COLUMN", "name": "Get SharePoint Site Column", "description": "Get a SharePoint site column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_SITE_CONTENT_TYPE", "name": "Get SharePoint Site Content Type", "description": "Get a SharePoint site content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_SITE_PAGE", "name": "Get SharePoint Site Page", "description": "Get a SharePoint site page as a Microsoft Graph sitePage resource." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_SUBSCRIPTION", "name": "Get Microsoft Graph Subscription", "description": "Get a Microsoft Graph webhook subscription." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_GET_WORKBOOK_WORKSHEET", "name": "Get SharePoint Workbook Worksheet", "description": "Get an Excel worksheet in a SharePoint workbook." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_INVITE_DRIVE_ITEM", "name": "Invite Users To SharePoint Drive Item", "description": "Invite recipients to a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_DRIVE_DELTA", "name": "List SharePoint Drive Delta", "description": "Track changes in a SharePoint drive using Microsoft Graph delta." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_CHILDREN", "name": "List SharePoint Drive Item Children", "description": "List children under a folder drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_PERMISSIONS", "name": "List SharePoint Drive Item Permissions", "description": "List sharing permissions on a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_VERSIONS", "name": "List SharePoint Drive Item Versions", "description": "List versions for a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_DRIVE_ROOT_CHILDREN", "name": "List SharePoint Drive Root Children", "description": "List children in the root of a SharePoint drive." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LIST_COLUMNS", "name": "List SharePoint List Columns", "description": "List column definitions for a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LIST_CONTENT_TYPES", "name": "List SharePoint List Content Types", "description": "List content types for a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LIST_ITEM_DELTA", "name": "List SharePoint List Item Delta", "description": "Track changes to SharePoint list items using Microsoft Graph delta." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LIST_ITEMS", "name": "List SharePoint List Items", "description": "List items in a SharePoint list." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LIST_ITEM_VERSIONS", "name": "List SharePoint List Item Versions", "description": "List versions for a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_LISTS", "name": "List SharePoint Lists", "description": "List SharePoint lists in a site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_RECENT_DRIVE_ITEMS", "name": "List Recent Drive Items", "description": "List recent drive items for the delegated user." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITE_COLUMNS", "name": "List SharePoint Site Columns", "description": "List column definitions for a SharePoint site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITE_CONTENT_TYPES", "name": "List SharePoint Site Content Types", "description": "List content types for a SharePoint site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITE_DRIVES", "name": "List SharePoint Site Drives", "description": "List document library drives for a SharePoint site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITE_PAGES", "name": "List SharePoint Site Pages", "description": "List modern SharePoint site pages as Microsoft Graph sitePage resources." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITE_PAGE_WEB_PARTS", "name": "List SharePoint Site Page Web Parts", "description": "List web parts on a SharePoint site page." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SITES", "name": "List SharePoint Sites", "description": "Search for SharePoint sites available through Microsoft Graph." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SUBSCRIPTIONS", "name": "List Microsoft Graph Subscriptions", "description": "List Microsoft Graph webhook subscriptions." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_SUBSITES", "name": "List SharePoint Subsites", "description": "List subsites for a SharePoint site." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_WORKBOOK_TABLE_ROWS", "name": "List SharePoint Workbook Table Rows", "description": "List rows in an Excel workbook table stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_WORKBOOK_TABLES", "name": "List SharePoint Workbook Tables", "description": "List tables in an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_LIST_WORKBOOK_WORKSHEETS", "name": "List SharePoint Workbook Worksheets", "description": "List worksheets in an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_MOVE_DRIVE_ITEM", "name": "Move SharePoint Drive Item", "description": "Move a SharePoint drive item by updating its parentReference." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_PUBLISH_SITE_PAGE", "name": "Publish SharePoint Site Page", "description": "Publish a SharePoint site page." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_RESOLVE_SITE_BY_PATH", "name": "Resolve SharePoint Site By Path", "description": "Resolve a SharePoint site from its hostname and server-relative path." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_RESTORE_DRIVE_ITEM_VERSION", "name": "Restore SharePoint Drive Item Version", "description": "Restore a previous version of a SharePoint drive item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_SEARCH_DRIVE_ITEMS", "name": "Search SharePoint Drive Items", "description": "Search items in a SharePoint drive." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_SEARCH_QUERY", "name": "Run Microsoft Graph Search Query", "description": "Run Microsoft Graph search across SharePoint-supported entities." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_DRIVE_ITEM", "name": "Update SharePoint Drive Item", "description": "Update drive item metadata such as name or description." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_LIST", "name": "Update SharePoint List", "description": "Update SharePoint list metadata." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_LIST_COLUMN", "name": "Update SharePoint List Column", "description": "Update a SharePoint list column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_LIST_CONTENT_TYPE", "name": "Update SharePoint List Content Type", "description": "Update a SharePoint list content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_LIST_ITEM_FIELDS", "name": "Update SharePoint List Item Fields", "description": "Update field values for a SharePoint list item." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_SITE_COLUMN", "name": "Update SharePoint Site Column", "description": "Update a SharePoint site column definition." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_SITE_CONTENT_TYPE", "name": "Update SharePoint Site Content Type", "description": "Update a SharePoint site content type." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_SITE_PAGE", "name": "Update SharePoint Site Page", "description": "Update editable metadata and layout for a SharePoint site page." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_SUBSCRIPTION", "name": "Update Microsoft Graph Subscription", "description": "Update a Microsoft Graph webhook subscription." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPDATE_WORKBOOK_WORKSHEET", "name": "Update SharePoint Workbook Worksheet", "description": "Update worksheet metadata in an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_UPLOAD_SMALL_FILE", "name": "Upload Small SharePoint File", "description": "Upload a small file to SharePoint using Microsoft Graph PUT content." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_WORKBOOK_FUNCTION", "name": "Run SharePoint Workbook Function", "description": "Run an Excel workbook function for a workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_WORKBOOK_READ_RANGE", "name": "Read SharePoint Workbook Range", "description": "Read a cell or range from an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_WORKBOOK_UPDATE_RANGE", "name": "Update SharePoint Workbook Range", "description": "Update a cell or range in an Excel workbook stored in SharePoint." }, { "slug": "MICROSOFT_SHAREPOINT_GRAPH_WORKBOOK_USED_RANGE", "name": "Get SharePoint Workbook Used Range", "description": "Get the used range of an Excel worksheet stored in SharePoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "microsoft_sharepoint_graph_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Sites.ReadWrite.All,Sites.Manage.All,Files.ReadWrite.All,offline_access,User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "microsoft_sharepoint_graph_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Microsoft Entra tenant ID in GUID format, used in the client-credentials token URL.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "mindbody", "name": "Mindbody", "logo": "https://logos.composio.dev/api/mindbody", "description": "MindBody provides business management software for fitness, wellness, and beauty businesses, offering scheduling, client management, and payment processing.", "category": "fitness", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "mindbody_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,profile,email,Mindbody.Api.Public.v6,offline_access" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "mindbody_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your MindBody API key. Create one in the developer portal at developers.mindbodyonline.com under Account > API Credentials.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Site ID", "type": "string", "description": "The MindBody site ID of your business location. Required for all Public API v6 requests. Use -99 for sandbox testing.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "minerstat", "name": "Minerstat", "logo": "https://logos.composio.dev/api/minerstat", "description": "minerstat is a comprehensive crypto mining monitoring and management platform offering tools for mining operations, including APIs for coins, hardware, pools, management, and monitoring.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MINERSTAT_GET_COINS_DATA", "name": "Get Coins Data", "description": "Retrieves mining coin data from minerstat API including hashrates, difficulty, rewards, and prices. Use this tool to get current mining statistics for cryptocurrencies. You can filter results by specific coin tickers (e.g., 'BTC,ETH') or by mining algorithms (e.g., 'SHA-256,Ethash'). Returns data such as network hashrate, difficulty, estimated mining rewards, current price, and trading volume for each coin. Note: `difficulty` and network hashrate fields may be null for some coins; validate their presence before using in calculations." }, { "slug": "MINERSTAT_GET_HARDWARE_DATA", "name": "Get Hardware Data", "description": "Retrieve mining hardware data from minerstat including hashrates, power consumption, and specifications. Use this tool to get benchmark data for GPUs and ASIC miners to compare mining performance across different hardware. Filter by type (gpu/asic) or brand to narrow results. Combine both filters together to avoid mixed variants with differing hashrate and power draw values." }, { "slug": "MINERSTAT_GET_POOLS_DATA", "name": "Get Pools Data", "description": "Retrieve mining pool data from minerstat. Requires an authenticated minerstat connection. Returns a list of mining pools with their supported coins, fees, payout thresholds, and other details. Use to discover pools for a specific coin or explore all available mining pools." }, { "slug": "MINERSTAT_GET_WORKER_ACTIVITY", "name": "Get Worker Activity", "description": "Retrieve activity logs for a specific worker for the last 3 days. Returns online/offline events, errors, and other activity for troubleshooting worker uptime issues or auditing worker behavior. The API key is automatically extracted from the Authorization header." }, { "slug": "MINERSTAT_GET_WORKER_DATA", "name": "Get Worker Data", "description": "Retrieve detailed real-time data for a specific mining worker. This tool fetches comprehensive information about a worker including: - Current status (online/offline/idle) - Hardware info (GPUs/ASICs with temperatures, fans, power) - Mining info (coin, pool, client software) - Hashrate data (current hashrates for main/dual/CPU mining) - Share statistics (accepted, rejected, stale) - Revenue estimates Use this when you need detailed metrics for a specific worker. The worker name must exactly match a worker configured in the minerstat dashboard. Returns found=False if the worker doesn't exist." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "minerstat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Minerstat API Token", "type": "string", "description": "The API token obtained from your minerstat dashboard, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mintlify", "name": "Mintlify", "logo": "https://logos.composio.dev/api/mintlify", "description": "Documentation platform with AI-powered assistant and analytics. Supports two API key types: Admin (mint_, required — deployment, jobs, analytics) and Assistant (mint_dsc_, optional — search, AI assistant, page content).", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mintlify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Admin API Key", "type": "string", "description": "Your Mintlify Admin API key (prefix: mint_). Used for deployment triggers, agent jobs, and all analytics endpoints (page views, visitors, feedback, searches, conversations, caller stats). Generate at dashboard.mintlify.com/settings/organization/api-keys.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Project ID", "type": "string", "description": "Your Mintlify project ID. Stored once on the connection and reused for all project-scoped endpoints (analytics, agent jobs, assistant caller stats, feedback) — you do not need to pass it on every action call. Find it in your Mintlify dashboard under project settings.", "required": true, "default": null } ], "optional": [ { "name": "generic_secret", "displayName": "Assistant API Key", "type": "string", "description": "Your Mintlify Assistant API key (prefix: mint_dsc_). Required only for AI assistant, documentation search, and page content endpoints. Leave blank if you only use deployment/analytics endpoints. Generate alongside the Admin key at dashboard.mintlify.com/settings/organization/api-keys.", "required": false, "default": null } ] } } } ] }, { "slug": "missive", "name": "Missive", "logo": "https://logos.composio.dev/api/missive", "description": "Missive is a collaborative email and chat application designed to streamline team communication and task management.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MISSIVE_CREATE_ANALYTICS_REPORT", "name": "Create Analytics Report", "description": "Tool to create an analytics report. Use when you need to generate a report over a specific time range with optional filters. Returns a report ID for later retrieval." }, { "slug": "MISSIVE_CREATE_CONTACTS", "name": "Create Missive Contacts", "description": "Tool to create one or more contacts in a Missive contact book. Use when you need to add new contacts with detailed information including name, email, phone, addresses, and organization memberships." }, { "slug": "MISSIVE_CREATE_DRAFT", "name": "Create Draft", "description": "Tool to create a new draft in Missive. Use after preparing message details to save a draft (email, SMS, WhatsApp, or Live Chat) for later editing or scheduling." }, { "slug": "MISSIVE_CREATE_POST", "name": "Create Missive Post", "description": "Tool to create a post in a Missive conversation. Posts can add comments, close conversations, assign users, apply labels, and trigger other actions. Recommended approach for managing conversations from integrations and automations." }, { "slug": "MISSIVE_CREATE_RESPONSE", "name": "Create Canned Response", "description": "Tool to create one or more canned responses (templates) in Missive. Use when you need to save reusable message templates for the organization or user." }, { "slug": "MISSIVE_CREATE_SHARED_LABEL", "name": "Create Shared Label", "description": "Tool to create one or more shared labels at the organization level. Use when you need to create new labels that can be shared across the organization." }, { "slug": "MISSIVE_CREATE_TASK", "name": "Create Missive Task", "description": "Tool to create a task in Missive. Use when you need to create standalone tasks, conversation-linked subtasks, or team tasks. You can find or create parent conversations using message references (like email Message-IDs)." }, { "slug": "MISSIVE_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in an organization. Use when you need to set up a new team with active members and optional observers. The API token must belong to an organization admin." }, { "slug": "MISSIVE_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook subscription. Use after choosing event type and target URL." }, { "slug": "MISSIVE_DELETE_DRAFT", "name": "Delete Draft", "description": "Tool to delete a draft from a conversation by draft ID. Use after confirming the draft ID; this operation cannot be undone." }, { "slug": "MISSIVE_DELETE_POST", "name": "Delete Post", "description": "Tool to delete a post from a conversation by post ID. Use when you need to remove a specific post; this operation cannot be undone." }, { "slug": "MISSIVE_DELETE_RESPONSES", "name": "Delete Saved Responses", "description": "Tool to delete one or more saved responses by ID. For organization responses, the API token must belong to an admin. Use after confirming the response ID(s); this operation cannot be undone." }, { "slug": "MISSIVE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription by webhook ID. Use after confirming the webhook ID; this operation cannot be undone." }, { "slug": "MISSIVE_GET_ANALYTICS_REPORT", "name": "Get Analytics Report", "description": "Tool to fetch a completed analytics report using its ID. Use when you need to retrieve analytics data after creating a report. Reports typically complete within 2-3 seconds but may take up to 30 seconds. Reports expire 60 seconds after completion and return 404 if incomplete, expired, or non-existent." }, { "slug": "MISSIVE_GET_CONTACT", "name": "Get Missive Contact", "description": "Tool to fetch a specific contact using the contact ID. Use when you need detailed contact information including names, contact info, and organizational memberships. Returns 404 for deleted contacts." }, { "slug": "MISSIVE_GET_CONVERSATION", "name": "Get Missive Conversation", "description": "Tool to fetch full conversation metadata (assignees/users/labels/team/org) for a specific conversation ID. Use when you need conversation-level details for assignment, labeling, or workflow purposes." }, { "slug": "MISSIVE_GET_CONVERSATION_MESSAGES", "name": "List Conversation Messages", "description": "Tool to list messages belonging to a Missive conversation (newest first). Use when you need to retrieve message metadata including participants and attachments references for a specific conversation." }, { "slug": "MISSIVE_GET_MESSAGE", "name": "Get Missive Message", "description": "Tool to fetch full message details including headers, HTML body, and attachments. Use when you need complete message content with download URLs for attachments." }, { "slug": "MISSIVE_GET_RESPONSE", "name": "Get Missive Response", "description": "Tool to fetch a specific saved response using the response ID. Use when you need to retrieve the full content and metadata of a saved response template." }, { "slug": "MISSIVE_GET_TASK", "name": "Get Missive Task", "description": "Tool to get a single task by ID with full details including assignees, team, and conversation info. Use when you need to retrieve complete information about a specific task." }, { "slug": "MISSIVE_LIST_CONTACT_BOOKS", "name": "List Missive Contact Books", "description": "Tool to list contact books the authenticated user has access to. Use when you need contact book IDs for creating contacts programmatically." }, { "slug": "MISSIVE_LIST_CONTACT_GROUPS", "name": "List Missive Contact Groups", "description": "Tool to list contact groups or organizations linked to a contact book. Use when you need to retrieve groups for organizing contacts or organizations for linking contacts to businesses." }, { "slug": "MISSIVE_LIST_CONTACTS", "name": "List Missive Contacts", "description": "Tool to list contacts from a contact book. Use when syncing Missive contacts to another service or finding contacts based on search terms. Supports pagination via offset and filtering by modification date." }, { "slug": "MISSIVE_LIST_CONVERSATION_COMMENTS", "name": "List Conversation Comments", "description": "Tool to list comments in a Missive conversation ordered from newest to oldest. Use when you need to retrieve comments with author info, attachments, and task data for a specific conversation." }, { "slug": "MISSIVE_LIST_CONVERSATION_DRAFTS", "name": "List Conversation Drafts", "description": "Tool to list draft messages in a Missive conversation (newest first). Use when you need to retrieve unsent drafts for a specific conversation including author and recipient details." }, { "slug": "MISSIVE_LIST_CONVERSATION_POSTS", "name": "List Conversation Posts", "description": "Tool to list posts in a Missive conversation ordered by newest first. Use when you need to view automation traces or post history for a specific conversation. Posts are the recommended approach for automations as they leave a visible trace." }, { "slug": "MISSIVE_LIST_CONVERSATIONS", "name": "List Missive Conversations", "description": "Tool to list conversations visible to the authenticated user ordered by newest activity first. Use when you need to retrieve inbox, all, assigned, closed, or other mailbox conversations. Must filter by at least one of: mailbox flag, shared label, or team parameter." }, { "slug": "MISSIVE_LIST_MESSAGES", "name": "List Messages by Message-ID", "description": "Tool to fetch messages matching an email Message-ID header. Use when you need to find a specific message by its Message-ID. Most of the time, only one message matches a given Message-ID." }, { "slug": "MISSIVE_LIST_ORGANIZATIONS", "name": "List Missive Organizations", "description": "Tool to list organizations the authenticated user is part of. Use when you need to retrieve all organizations accessible to the current user." }, { "slug": "MISSIVE_LIST_RESPONSES", "name": "List Missive Saved Responses", "description": "Tool to list saved responses (canned responses/templates) for the authenticated user. Use when you need to retrieve available response templates for composing messages." }, { "slug": "MISSIVE_LIST_SHARED_LABELS", "name": "List Missive Shared Labels", "description": "Tool to list shared labels (organization-level labels) available to the authenticated user. Use when you need to retrieve labels for filtering conversations or understanding label structure." }, { "slug": "MISSIVE_LIST_TASKS", "name": "List Missive Tasks", "description": "Tool to list tasks accessible to the authenticated user. Use when you need to retrieve tasks by state, organization, or team. Tasks can be standalone, conversation-linked, or team tasks." }, { "slug": "MISSIVE_LIST_TEAMS", "name": "List Missive Teams", "description": "Tool to list all teams. Use when you need to retrieve and enumerate all teams available in Missive. Returns an empty array for accounts with no teams configured; this is a valid response, not an error." }, { "slug": "MISSIVE_LIST_USERS", "name": "List Missive Users", "description": "Tool to list all users. Use after authentication when you need to retrieve all users in the organization." }, { "slug": "MISSIVE_MERGE_CONVERSATIONS", "name": "Merge Missive Conversations", "description": "Tool to merge multiple conversations into one. Combines messages, posts, and other content from the source conversation into the target conversation. Use when you need to consolidate related conversations." }, { "slug": "MISSIVE_UPDATE_CONTACT", "name": "Update Missive Contact", "description": "Tool to update one or more contacts in Missive. Use when you need to modify contact attributes. Only pass fields you want to update. CRITICAL: infos and memberships arrays must include ALL items when passed - omitted entries will be permanently deleted." }, { "slug": "MISSIVE_UPDATE_RESPONSE", "name": "Update Saved Response", "description": "Tool to update one or more saved responses in Missive. Use when you need to modify existing response templates by changing title, body, subject, or other attributes. Returns the updated responses." }, { "slug": "MISSIVE_UPDATE_SHARED_LABELS", "name": "Update Shared Labels", "description": "Tool to update one or more shared labels in Missive. Use when you need to modify label names or colors. Returns the updated shared labels." }, { "slug": "MISSIVE_UPDATE_TASK", "name": "Update Missive Task", "description": "Tool to update an existing task's attributes in Missive. Use when you need to modify a task's description, change its state, update the due date, or reassign it to different users." }, { "slug": "MISSIVE_UPDATE_TEAM", "name": "Update Missive Team", "description": "Tool to update one or more teams in Missive. Use when you need to modify team attributes like name, color, or initials. The API token must belong to an organization admin." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "missive_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "Your personal Missive API token. Create one in Missive under Settings → API → 'Create a new token' (your org must be on the Productive plan).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mistral_ai", "name": "Mistral AI", "logo": "https://logos.composio.dev/api/mistral_ai", "description": "Mistral AI is a research lab building state-of-the-art open-source language models and providing APIs for developers and enterprises to integrate these models into their applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 54, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MISTRAL_AI_APPEND_TO_CONVERSATION", "name": "Append to conversation", "description": "Tool to append new entries to an existing conversation in Mistral AI. Use when you need to continue a conversation by adding new messages or inputs. This is a beta endpoint." }, { "slug": "MISTRAL_AI_CREATE_AGENT", "name": "Create Agent", "description": "Tool to create a new AI agent with custom configuration (Beta). Use when you need to create an agent with specific model, name, instructions, and tools." }, { "slug": "MISTRAL_AI_CREATE_AGENTS_COMPLETION", "name": "Create Agents Completion", "description": "Tool to generate completions using a Mistral AI agent with specific instructions and tools. Use when you need an agent to process messages and generate responses. Agents can use tools, follow instructions, and maintain conversation context." }, { "slug": "MISTRAL_AI_CREATE_AUDIO_TRANSCRIPTION", "name": "Create Audio Transcription", "description": "Transcribe audio files to text using Mistral AI's Voxtral models. Use this action to convert speech in audio files to written text. Supports multiple input methods: file upload, file_id from previously uploaded files, or file_url for publicly accessible audio. The transcription supports 13 languages with automatic language detection, speaker diarization, and configurable timestamp granularities (segment or word level). Key features: - Multi-language support (English, Chinese, Hindi, Spanish, Arabic, French, Portuguese, Russian, German, Japanese, Korean, Italian, Dutch) - Speaker diarization to identify different speakers - Word and segment-level timestamps - Context biasing for domain-specific terminology - Supports common audio formats (mp3, wav, m4a, etc.) Note: Exactly one of file, file_id, or file_url must be provided. The action does not support streaming mode." }, { "slug": "MISTRAL_AI_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Generate conversational responses from Mistral AI models. Supports streaming, function calling, and various model parameters. Use when you need to create chat completions with Mistral AI models for conversation, question answering, or function calling scenarios." }, { "slug": "MISTRAL_AI_CREATE_CHAT_MODERATION", "name": "Create Chat Moderation", "description": "Tool to classify chat content for moderation purposes across 9 categories. Use when you need to detect harmful content, inappropriate messages, or policy violations in chat conversations." }, { "slug": "MISTRAL_AI_CREATE_EMBEDDINGS", "name": "Create Embeddings", "description": "Tool to generate vector embeddings for input text using Mistral AI embedding models. Use when you need to convert text into numerical vectors for semantic search, similarity comparison, or RAG applications." }, { "slug": "MISTRAL_AI_CREATE_FIM_COMPLETION", "name": "Create FIM Completion", "description": "Generate code completions using fill-in-the-middle functionality. Use when you need to complete code between a prefix and suffix, or continue code from a prompt. Ideal for code completion, function implementation, and context-aware code generation." }, { "slug": "MISTRAL_AI_CREATE_LIBRARY", "name": "Create library", "description": "Tool to create a new document library. Use when you need to group documents into a new library. Use after confirming authentication." }, { "slug": "MISTRAL_AI_CREATE_LIBRARY_SHARE", "name": "Create library share", "description": "Create or update sharing permissions for a library. Use to grant access to users, workspaces, or organizations. Specify the access level (Viewer or Editor) and the entity to share with. This is a beta endpoint." }, { "slug": "MISTRAL_AI_CREATE_MODERATION", "name": "Create Moderation", "description": "Tool to classify text content for moderation purposes across 9 categories. Use when you need to detect harmful content, inappropriate text, or policy violations in raw text inputs." }, { "slug": "MISTRAL_AI_CREATE_OCR", "name": "Create OCR", "description": "Extract text and structured data from images and documents using Mistral AI's OCR capabilities. Supports PDFs, images, tables, headers, footers, and custom structured extraction. Use when you need to digitize documents, extract invoice data, parse forms, or convert scanned documents to text." }, { "slug": "MISTRAL_AI_CREATE_OR_UPDATE_AGENT_ALIAS", "name": "Create or Update Agent Alias", "description": "Tool to create or update an agent version alias. Use when you need to assign a version alias (like 'production' or 'staging') to a specific agent version." }, { "slug": "MISTRAL_AI_DELETE_AGENT", "name": "Delete agent", "description": "Permanently deletes an agent by its ID (Beta feature). Use this tool when you need to remove an agent that is no longer needed. This operation is irreversible - the agent will be permanently removed from the system." }, { "slug": "MISTRAL_AI_DELETE_CONVERSATION", "name": "Delete Conversation", "description": "Tool to delete a conversation by its ID (Beta). Use when you need to permanently remove a conversation. This is a beta feature." }, { "slug": "MISTRAL_AI_DELETE_FILE", "name": "Delete File", "description": "Delete a file by its ID from Mistral AI. Permanently removes the file and its metadata. Use List Files action first to obtain valid file IDs." }, { "slug": "MISTRAL_AI_DELETE_LIBRARY", "name": "Delete library", "description": "Permanently deletes a library and all of its documents from Mistral AI. Use this tool when you need to remove an entire library including all its documents. This operation is irreversible - the library and all its documents will be permanently removed. Returns the deleted library details on success. Common errors: - 404: Library not found (already deleted or invalid library_id) - 422: Invalid UUID format for library_id" }, { "slug": "MISTRAL_AI_DELETE_LIBRARY_DOCUMENT", "name": "Delete library document", "description": "Permanently deletes a document from a Mistral AI library. Use this tool when you need to remove a specific document from a library. Both library_id and document_id must be valid UUIDs. This operation is irreversible - the document will be permanently removed. Returns an empty response on success (HTTP 204). Common errors: - 404: Document not found (already deleted or invalid document_id) - 422: Invalid UUID format for library_id or document_id" }, { "slug": "MISTRAL_AI_DELETE_LIBRARY_SHARE", "name": "Delete library share", "description": "Remove sharing permissions for a library from a user, workspace, or organization. Use when you need to revoke access to a library that was previously shared. This is a beta feature." }, { "slug": "MISTRAL_AI_DOWNLOAD_FILE", "name": "Download File", "description": "Download the content of a previously uploaded file from Mistral AI. Returns the raw binary content of the file. Use this when you need to retrieve file data for processing, such as training data files (.jsonl) for fine-tuning. Requires a valid file_id which can be obtained from the list_files or upload_file actions." }, { "slug": "MISTRAL_AI_GET_AGENT", "name": "Get Agent", "description": "Tool to retrieve details of a specific Mistral AI agent by its ID. Returns comprehensive agent information including model, instructions, tools, and configuration. Use when you need to inspect or verify an agent's settings." }, { "slug": "MISTRAL_AI_GET_AGENT_VERSION", "name": "Get Agent Version", "description": "Retrieve a specific version of an agent (Beta). Use when you need to get details about a particular agent version, including its configuration, tools, and metadata." }, { "slug": "MISTRAL_AI_GET_CONVERSATION", "name": "Get Conversation", "description": "Tool to retrieve details of a specific conversation. Use when you need to fetch conversation metadata including timestamps, configuration, and associated model or agent information." }, { "slug": "MISTRAL_AI_GET_CONVERSATION_HISTORY", "name": "Get Conversation History", "description": "Retrieve the full history of a conversation in Mistral AI. Returns all entries including messages, tool calls, function results, and agent handoffs. Use this to review conversation context or export conversation data. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_GET_CONVERSATION_MESSAGES", "name": "Get Conversation Messages", "description": "Retrieve all messages from a Mistral AI conversation. Use when you need to fetch the complete message history for a specific conversation." }, { "slug": "MISTRAL_AI_GET_DOCUMENT_EXTRACTED_TEXT_URL", "name": "Get document extracted text URL", "description": "Retrieve a signed URL to download the extracted text from a document in a Mistral AI library. This is a beta endpoint. Note: Only documents that undergo OCR processing (such as PDFs) will have extracted text available; plain text files that don't require OCR will return a 404 error." }, { "slug": "MISTRAL_AI_GET_DOCUMENT_SIGNED_URL", "name": "Get document signed URL", "description": "Get a signed URL to download a document from a Mistral AI library. Returns a temporary URL that provides direct access to download the document content. Use this when you need to retrieve document files from a library. The signed URL is typically valid for 30 minutes." }, { "slug": "MISTRAL_AI_GET_DOCUMENT_STATUS", "name": "Get Document Status", "description": "Retrieve the processing status of a document in a Mistral AI library. Use this to check if a document has finished processing after upload. Returns the document ID and its current processing status." }, { "slug": "MISTRAL_AI_GET_DOCUMENT_TEXT_CONTENT", "name": "Get Document Text Content", "description": "Retrieve the extracted text content of a specific document from a Mistral AI library (Beta). Returns the full text content extracted from the document. Use the List Libraries action first to obtain valid library IDs, then use List Library Documents to get document IDs." }, { "slug": "MISTRAL_AI_GET_FILE_SIGNED_URL", "name": "Get File Signed URL", "description": "Get a time-limited signed URL for downloading a file from Mistral AI. Use when you need a temporary download link that can be shared or used externally. The URL expires after the specified number of hours (default 24)." }, { "slug": "MISTRAL_AI_GET_FINE_TUNING_JOBS", "name": "List Fine Tuning Jobs", "description": "List fine-tuning jobs with optional filtering and pagination. Use this tool to retrieve all fine-tuning jobs for your organization. Supports filtering by model, status, creation time, and W&B integration. Results are paginated; use 'page' and 'page_size' to navigate large result sets." }, { "slug": "MISTRAL_AI_GET_LIBRARY", "name": "Get library", "description": "Retrieve detailed information about a specific library. Returns complete library metadata including name, description, document counts, size, timestamps, and ownership details. Use List Libraries action first to obtain valid library IDs." }, { "slug": "MISTRAL_AI_GET_LIBRARY_DOCUMENT", "name": "Get Library Document", "description": "Retrieve metadata for a specific document in a Mistral AI library. Returns detailed information including processing status, size, summary, token counts, and timestamps. Use this to check document status after upload or to retrieve details for a known document." }, { "slug": "MISTRAL_AI_GET_MODEL", "name": "Get Model", "description": "Tool to retrieve detailed information about a specific Mistral AI model by its ID. Returns model metadata including capabilities, context length, and ownership. Use when you need to inspect model specifications before using it." }, { "slug": "MISTRAL_AI_LIST_AGENT_ALIASES", "name": "List agent aliases", "description": "Retrieve all aliases for an agent version. Use to view and manage version aliases for an agent. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_LIST_AGENTS", "name": "List Agents", "description": "Tool to list all configured agents (Beta). Use when you need to retrieve a list of agents available in your organization." }, { "slug": "MISTRAL_AI_LIST_AGENT_VERSIONS", "name": "List Agent Versions", "description": "List all versions of a specific agent. Use when you need to view the version history of an agent. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_LIST_BATCH_JOBS", "name": "List Batch Jobs", "description": "Tool to retrieve a list of all batch jobs with optional filtering and pagination. Use when you need to view or manage batch processing jobs." }, { "slug": "MISTRAL_AI_LIST_CONVERSATIONS", "name": "List Conversations", "description": "List all created conversations (Beta). Use to retrieve conversation history or manage existing conversations. Supports pagination and metadata filtering." }, { "slug": "MISTRAL_AI_LIST_FILES", "name": "List Files", "description": "Tool to list all files available to the user. Use when you need to view or manage uploaded files, supports pagination." }, { "slug": "MISTRAL_AI_LIST_LIBRARIES", "name": "List libraries", "description": "List all document libraries accessible to your organization. Returns library metadata including id, name, description, document counts, and timestamps. Use to discover available libraries before listing or uploading documents. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_LIST_LIBRARY_DOCUMENTS", "name": "List Library Documents", "description": "List all documents in a Mistral AI document library. Returns document metadata including name, processing status, size, summary, and timestamps. Use the List Libraries action first to obtain valid library IDs. Supports pagination for large libraries." }, { "slug": "MISTRAL_AI_LIST_LIBRARY_SHARES", "name": "List library shares", "description": "List all sharing permissions for a document library. Returns details about who has access to the library, including role, share type, and user/organization identifiers. Use the List Libraries action first to obtain valid library IDs. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_LIST_MODELS", "name": "List Models", "description": "Tool to retrieve all available Mistral AI models including base models and fine-tuned models. Use when you need to see what models are available for chat completions, embeddings, or fine-tuning." }, { "slug": "MISTRAL_AI_REPROCESS_DOCUMENT", "name": "Reprocess document", "description": "Reprocess a document in a Mistral AI library (Beta). Use when you need to trigger reprocessing of a document, such as after updating library settings or to refresh document embeddings. Both library_id and document_id must be valid UUIDs. Returns an empty response on success (HTTP 204)." }, { "slug": "MISTRAL_AI_RESTART_CONVERSATION", "name": "Restart Conversation", "description": "Tool to restart a conversation from a specific point (Beta). Use when you need to branch a conversation or replay it from a particular message. Creates a new conversation starting from the specified entry." }, { "slug": "MISTRAL_AI_RETRIEVE_FILE", "name": "Retrieve File", "description": "Retrieve metadata of a file uploaded to Mistral AI. Returns file details including size, filename, purpose, and creation time. Use List Files action first to obtain valid file IDs." }, { "slug": "MISTRAL_AI_START_CONVERSATION", "name": "Start Conversation", "description": "Tool to start a new conversation with a Mistral AI agent or base model. Use when initiating a conversational interaction that requires context tracking. Either 'model' or 'agent_id' must be provided. Returns a conversation_id for continuing the conversation." }, { "slug": "MISTRAL_AI_UPDATE_AGENT", "name": "Update Agent", "description": "Tool to update an existing agent's configuration. Use when you need to modify an agent's name, description, model, instructions, tools, or other settings." }, { "slug": "MISTRAL_AI_UPDATE_AGENT_VERSION", "name": "Update agent version", "description": "Tool to update the current version of an agent (Beta). Use when you need to switch an agent to a different version from its available versions." }, { "slug": "MISTRAL_AI_UPDATE_LIBRARY", "name": "Update library", "description": "Tool to update an existing document library's properties. Use when you need to modify a library's name or description. Note: This is a beta endpoint." }, { "slug": "MISTRAL_AI_UPDATE_LIBRARY_DOCUMENT", "name": "Update library document", "description": "Update the metadata of a document in a Mistral AI library. Use this to modify a document's name or add/update custom attributes without re-uploading the file content. This is a beta endpoint." }, { "slug": "MISTRAL_AI_UPLOAD_FILE", "name": "Upload File", "description": "Upload a file to Mistral AI for use in fine-tuning, batch processing, or OCR. Use this tool to: - Upload .jsonl files for fine-tuning models - Upload files for batch processing requests - Upload documents for OCR processing Maximum file size: 512 MB. For fine-tuning, only .jsonl files are supported." }, { "slug": "MISTRAL_AI_UPLOAD_LIBRARY_DOCUMENT", "name": "Upload Library Document", "description": "Upload a document to a Mistral AI library for use with RAG-enabled agents. Use this action to add documents to a library that can be accessed by Mistral AI agents. The uploaded document will be processed and indexed for retrieval-augmented generation. Prerequisites: - First obtain a valid library_id using MISTRAL_AI_LIST_LIBRARIES or MISTRAL_AI_CREATE_LIBRARY. - Supported file formats include PDF, TXT, DOC, DOCX, and other common document types. - Maximum file size is 100 MB per document." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mistral_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Mistral AI API Key", "type": "string", "description": "Your API key for authenticating requests to Mistral AI's API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mixmax", "name": "Mixmax", "logo": "https://logos.composio.dev/api/mixmax", "description": "The #1 Sales Engagement Platform for Gmail. Mixmax provides email tracking, scheduling, sequences, and productivity tools for sales teams.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 94, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MIXMAX_ADD_CONTACT_TO_GROUP", "name": "Add Contact to Group", "description": "Tool to add a contact to a contact group. Use when you need to add a single contact or bulk add multiple contacts (up to 100) to a specific group. Either email or contactId must be provided for each contact." }, { "slug": "MIXMAX_ADD_EMAIL_TO_UNSUBSCRIBE_LIST", "name": "Add Email to Unsubscribe List", "description": "Tool to add an email address to the Mixmax unsubscribe list. Use when you need to prevent sending emails to a specific address." }, { "slug": "MIXMAX_ADD_SNIPPET_TO_TAG", "name": "Add Snippet to Tag", "description": "Tool to add a snippet to a snippet tag in Mixmax. Use when you need to organize snippets by adding them to specific tags or folders." }, { "slug": "MIXMAX_ADD_TEAM_MEMBERS", "name": "Add Team Members", "description": "Tool to add one or more members to a Mixmax team by email. Use when you need to invite new members to a team. Returns the complete list of all team members after the addition." }, { "slug": "MIXMAX_CANCEL_SEQUENCES", "name": "Cancel Sequence Recipients", "description": "Tool to cancel specific recipients across all sequences. Use when you need to remove recipients from all active sequences. If emails parameter is provided, only those recipients are canceled; otherwise all active recipients are canceled." }, { "slug": "MIXMAX_CREATE_CODE_SNIPPET", "name": "Create Code Snippet", "description": "Tool to create a new Formatted Code enhancement in Mixmax. Use when you need to save a code snippet that can be recalled using /code command in the UI." }, { "slug": "MIXMAX_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Mixmax. Use when you need to add a new contact with an email address and optional metadata. If a contact with the same email already exists, it will be merged." }, { "slug": "MIXMAX_CREATE_CONTACT_GROUP", "name": "Create Contact Group", "description": "Tool to create a new contact group in Mixmax. Use when you need to organize contacts into a new group for better contact management. Note: This endpoint is deprecated but still functional." }, { "slug": "MIXMAX_CREATE_CONTACT_NOTE", "name": "Create Contact Note", "description": "Tool to create a note for a contact. Use when you need to add a new note to a contact by their ID." }, { "slug": "MIXMAX_CREATE_INSIGHTS_REPORT", "name": "Create insights report", "description": "Tool to create a new insights report in Mixmax. Use when you need to generate analytics reports for messages, meetings, groups, users, sequences, templates, delegators, or customers." }, { "slug": "MIXMAX_CREATE_INTEGRATION_ENHANCEMENT", "name": "Create Integration Enhancement", "description": "Tool to create a new enhancement integration in Mixmax. Use when you need to add a custom enhancement that will appear in the Enhance menu for your account only." }, { "slug": "MIXMAX_CREATE_INTEGRATIONS_COMMAND", "name": "Create Integrations Command", "description": "Tool to create a new slash command that will be visible to only your account. Use when you need to add a custom slash command integration to Mixmax." }, { "slug": "MIXMAX_CREATE_INTEGRATIONS_SIDEBARS", "name": "Create Integrations Sidebars", "description": "Tool to create a new sidebar integration in Mixmax. Use when you need to register a custom sidebar that will appear in the Mixmax interface. Note: The sidebar will be visible only to your account unless shared with support@mixmax.com." }, { "slug": "MIXMAX_CREATE_LINK_RESOLVER", "name": "Create Link Resolver", "description": "Tool to create a new link resolver integration in Mixmax. Use when you need to set up automatic URL resolution for specific URL patterns. Note that 'shared' link resolvers cannot be created using this endpoint - the enhancement will be visible only to your account." }, { "slug": "MIXMAX_CREATE_LIVEFEED_SEARCH", "name": "Create Livefeed Search", "description": "Tool to create a new saved search in the Mixmax livefeed. Use when you need to save a frequently-used livefeed query for quick access later." }, { "slug": "MIXMAX_CREATE_MESSAGE", "name": "Create Message", "description": "Tool to create a draft Mixmax message (email). Use when you need to compose a new email draft in Mixmax." }, { "slug": "MIXMAX_CREATE_RULE", "name": "Create Rule", "description": "Tool to create a new Mixmax rule/webhook. Use when you need to set up event-based automation that triggers on specific events like message sent, opened, or clicked." }, { "slug": "MIXMAX_CREATE_RULE_ACTION", "name": "Create Rule Action", "description": "Tool to create a new action for a Mixmax rule. Use when you need to add an action (such as a webhook) to an existing rule." }, { "slug": "MIXMAX_CREATE_SEQUENCE_FOLDER", "name": "Create Sequence Folder", "description": "Tool to create a new sequence folder in Mixmax. Use when you need to organize sequences by creating a new folder to group related sequences together." }, { "slug": "MIXMAX_CREATE_SNIPPET_TAG", "name": "Create Snippet Tag", "description": "Tool to create a new snippet tag (folder) in Mixmax. Use when you need to organize snippets by creating a new tag or folder." }, { "slug": "MIXMAX_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in Mixmax. Use when you need to create a team with a specific name. The authenticated user is automatically added as an admin member of the newly created team." }, { "slug": "MIXMAX_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by ID. Use when you need to remove a contact from Mixmax." }, { "slug": "MIXMAX_DELETE_CONTACT_GROUP", "name": "Delete Contact Group", "description": "Tool to delete a contact group by ID. Use when you need to remove a contact group after confirming its ID. Note: This endpoint is deprecated and returns 204 with no content on success." }, { "slug": "MIXMAX_DELETE_CONTACT_NOTE", "name": "Delete Contact Note", "description": "Tool to delete a note from a contact by its ID. Only the creator of the note can delete it. Use when removing a note after confirming both the contact ID and note ID." }, { "slug": "MIXMAX_DELETE_INTEGRATION_ENHANCEMENT", "name": "Delete Integration Enhancement", "description": "Tool to delete an integration enhancement by its ID. Use when you need to remove an enhancement from the Mixmax platform." }, { "slug": "MIXMAX_DELETE_INTEGRATIONS_COMMANDS_ID", "name": "Delete slash command", "description": "Tool to delete a slash command by its unique ID from Mixmax integrations. Use when you need to permanently remove a slash command." }, { "slug": "MIXMAX_DELETE_INTEGRATIONS_SIDEBARS", "name": "Delete Integrations Sidebars", "description": "Tool to delete a sidebar integration by its ID. Use when removing an integration sidebar from Mixmax." }, { "slug": "MIXMAX_DELETE_LINK_RESOLVER", "name": "Delete Link Resolver", "description": "Tool to permanently delete a link resolver by its ID. Use when removing unwanted or obsolete link resolvers. Returns empty response on success (204 No Content)." }, { "slug": "MIXMAX_DELETE_RULE", "name": "Delete Rule", "description": "Tool to delete a Mixmax rule by its ID. Rules are used to intercept events and route them to webhooks. Use when you need to remove a rule after confirming its ID." }, { "slug": "MIXMAX_DELETE_RULE_ACTION", "name": "Delete Rule Action", "description": "Tool to delete an action from a Mixmax rule. Use when you need to remove a specific action from an existing rule." }, { "slug": "MIXMAX_DELETE_SEQUENCE_FOLDER", "name": "Delete Sequence Folder", "description": "Tool to permanently delete a sequence folder by its ID. Use when removing unwanted or obsolete sequence folders. Note: This endpoint returns 204 with no content on success." }, { "slug": "MIXMAX_DELETE_SNIPPET", "name": "Delete Snippet", "description": "Tool to delete a snippet by moving it to trash. The snippet remains accessible via API with deletedOnly=true query parameter for 28 days before automatic purging. Recovery is possible by moving deleted snippets back into a folder using POST /snippettags/:id/snippets." }, { "slug": "MIXMAX_DELETE_SNIPPET_TAG", "name": "Delete Snippet Tag", "description": "Tool to delete a snippet tag by its unique ID. Use when you need to remove a snippet tag from Mixmax." }, { "slug": "MIXMAX_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete a team by its ID. Disbands the team permanently. Use only when confirmed by an admin, as this action is irreversible." }, { "slug": "MIXMAX_DELETE_UNSUBSCRIBE", "name": "Delete Unsubscribe", "description": "Tool to remove an email address from the Mixmax unsubscribe list. Use when you need to re-enable email sending to a previously unsubscribed address." }, { "slug": "MIXMAX_GET_CODE_SNIPPET", "name": "Get Code Snippet", "description": "Tool to fetch a single Formatted Code enhancement by its unique ID. Use when you need to retrieve detailed information about a specific code snippet." }, { "slug": "MIXMAX_GET_CONTACT", "name": "Get contact by ID", "description": "Tool to retrieve a single contact by ID from Mixmax. Use when you need to fetch detailed information about a specific contact." }, { "slug": "MIXMAX_GET_CONTACT_GROUP", "name": "Get Contact Group", "description": "Tool to retrieve a single contact group by ID. Use when you need to fetch details of a specific contact group. Note: This endpoint is deprecated but still functional." }, { "slug": "MIXMAX_GET_CONTACTGROUP_CONTACTS", "name": "Get Contactgroup Contacts", "description": "Tool to retrieve membership for a contact group in Mixmax. Returns a list of contacts belonging to the specified group with their email addresses, user IDs, and optionally analytics data. Use when you need to see which contacts are part of a specific group or analyze engagement metrics for group members." }, { "slug": "MIXMAX_GET_CONTACT_NOTES", "name": "Get Contact Notes", "description": "Tool to retrieve notes associated with a specific contact. Use when you need to fetch notes for a contact by their ID. Note: This endpoint is deprecated and may be removed in future API versions." }, { "slug": "MIXMAX_GET_FILEREQUESTS", "name": "Get File Requests", "description": "Tool to retrieve all file requests that you've sent out through Mixmax. Use when you need to see which file requests have been sent and track received uploads." }, { "slug": "MIXMAX_GET_INSIGHTS_REPORT_BY_ID", "name": "Get insights report by ID", "description": "Tool to retrieve a single insights report by ID from Mixmax. Use when you need to fetch detailed information about a specific report including its title, query, and metadata." }, { "slug": "MIXMAX_GET_INTEGRATIONS_COMMANDS", "name": "Get Integrations Commands", "description": "Tool to retrieve a list of Slash Commands that you have access to in Mixmax. Use when you need to view or list all available slash command integrations." }, { "slug": "MIXMAX_GET_INTEGRATIONS_ENHANCEMENTS", "name": "Get Integrations Enhancements", "description": "Tool to retrieve a list of enhancements that you have access to in Mixmax. Use when you need to view available integrations enhancements." }, { "slug": "MIXMAX_GET_INTEGRATIONS_LINKRESOLVERS", "name": "Get Link Resolver Integrations", "description": "Tool to retrieve all link resolver integrations configured in Mixmax. Use when you need to list or view the link resolver integrations that transform URLs in emails." }, { "slug": "MIXMAX_GET_INTEGRATIONS_SIDEBARS", "name": "Get Integrations Sidebars", "description": "Tool to retrieve a list of sidebar integrations that you have access to in Mixmax. Use when you need to view or list all available sidebar integrations." }, { "slug": "MIXMAX_GET_LIVEFEED", "name": "Get live feed activity data", "description": "Tool to retrieve live feed activity data from Mixmax. Use when you need to get email engagement metrics, track message activity, or analyze send performance." }, { "slug": "MIXMAX_GET_LIVEFEED_EVENTS", "name": "Get Livefeed Events", "description": "Tool to retrieve events for a specific message in the live feed. Use when you need to fetch interaction events (opens, clicks, replies) for a message sent through Mixmax or for all interactions with a specific contact." }, { "slug": "MIXMAX_GET_MEETING_INVITES", "name": "Get Meeting Invites", "description": "Tool to retrieve a paginated list of meeting invites from Mixmax. Use when you need to access meeting scheduling information including timeslots, locations, and guest details." }, { "slug": "MIXMAX_GET_MESSAGE", "name": "Get Message by ID", "description": "Tool to retrieve a single message by its unique ID. Use when you need to fetch detailed information about a specific message." }, { "slug": "MIXMAX_GET_MESSAGES", "name": "Get Messages", "description": "Tool to retrieve messages (emails) from Mixmax. Returns messages that are in draft, have been scheduled to send, or have been sent. Use when you need to list or search through emails managed by Mixmax." }, { "slug": "MIXMAX_GET_POLLS", "name": "Get Polls", "description": "Tool to retrieve polls created in Mixmax along with voting information. Use when you need to view polls you've sent and see who has voted on them." }, { "slug": "MIXMAX_GET_QA", "name": "Get Q&A Surveys", "description": "Tool to retrieve Question & Answer surveys data from Mixmax. Use when you need to fetch Q&A survey information including questions, responses, and respondent details. Results are returned with newest surveys first." }, { "slug": "MIXMAX_GET_REPORTS_DATA_TABLE", "name": "Get Reports Data Table", "description": "Tool to query analytics data for messages and meetings from Mixmax reports. Returns metrics like opens, clicks, replies, deliverability rates, and percentages. Use when you need to retrieve analytics or performance data for email campaigns or meeting activity." }, { "slug": "MIXMAX_GET_RULES", "name": "Get all rules", "description": "Tool to retrieve all Mixmax rules for the authenticated user. Rules are used to intercept events and route them to webhooks or other destinations. Use when you need to list all configured rules." }, { "slug": "MIXMAX_GET_RULES_ID", "name": "Get Rule by ID", "description": "Tool to fetch a single rule by its unique ID from Mixmax. Use when you need to retrieve detailed information about a specific rule." }, { "slug": "MIXMAX_GET_SALESFORCE_ACCOUNT", "name": "Get Salesforce account information", "description": "Tool to retrieve Salesforce account information for the authenticated user. Use when you need to check if a user is connected to Salesforce or fetch their Salesforce account details." }, { "slug": "MIXMAX_GET_SEQUENCE_FOLDER", "name": "Get Sequence Folder by ID", "description": "Tool to retrieve a single sequence folder by its ID from Mixmax. Use when you need to fetch details about a specific sequence folder." }, { "slug": "MIXMAX_GET_SNIPPETS_ID", "name": "Get Snippet by ID", "description": "Tool to fetch a single snippet by its unique ID from Mixmax. Use when you need to retrieve detailed information about a specific snippet including its content, metadata, and sharing settings." }, { "slug": "MIXMAX_GET_SNIPPET_TAG", "name": "Get Snippet Tag", "description": "Tool to retrieve a single snippet tag (folder) by its unique ID. Use when you need to fetch details about a specific snippet tag." }, { "slug": "MIXMAX_GET_SNIPPET_TAGS", "name": "Get Snippet Tags", "description": "Tool to retrieve a list of snippet tags (folders) from Mixmax. Use when you need to view or organize snippet tags in your Mixmax account." }, { "slug": "MIXMAX_GET_TEAM_MEMBERS", "name": "Get Team Members", "description": "Tool to retrieve all members of a Mixmax team. Use when you need to list team memberships, including member details, roles, and invitation status." }, { "slug": "MIXMAX_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve all teams that the authenticated user is a member of. Use when you need to list or view teams in Mixmax." }, { "slug": "MIXMAX_GET_UNSUBSCRIBES", "name": "Get Unsubscribes", "description": "Tool to retrieve a list of unsubscribed email addresses from Mixmax. Use when you need to view contacts who have unsubscribed from sequences." }, { "slug": "MIXMAX_GET_USER_PREFERENCES_ME", "name": "Get Current User Preferences", "description": "Tool to retrieve preferences for the currently authenticated user. Use when you need to fetch user-specific settings and configuration options." }, { "slug": "MIXMAX_GET_USERS_ME", "name": "Get Current User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to fetch the current user's ID and profile details." }, { "slug": "MIXMAX_GET_YES_NO", "name": "Get Yes/No Questions", "description": "Tool to retrieve Yes/No questions created in Mixmax. Use when you need to view Yes/No questions you've sent and see who has responded to them." }, { "slug": "MIXMAX_LIST_CODE_SNIPPETS", "name": "List Code Snippets", "description": "Tool to list all Formatted Code enhancements you've created. Use when you need to retrieve code snippets available in your Mixmax account." }, { "slug": "MIXMAX_LIST_CONTACT_GROUPS", "name": "List Contact Groups", "description": "Tool to retrieve a list of contact groups from Mixmax. Use when you need to view, search, or sort contact groups. Supports filtering by name and sorting options." }, { "slug": "MIXMAX_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve all Mixmax contacts (people you've emailed using Mixmax). Use when you need to list, search, or analyze contacts with optional analytics data. Note: Endpoint is deprecated but remains functional. Does not return contacts shared via contact groups unless search parameter is provided." }, { "slug": "MIXMAX_LIST_RULE_ACTIONS", "name": "List Rule Actions", "description": "Tool to list all actions for a given Mixmax rule. Actions represent the \"Then\" part of the rules UI - what happens when a rule is triggered. Use when you need to view all actions configured for a specific rule." }, { "slug": "MIXMAX_LIST_SEQUENCE_FOLDERS", "name": "List Sequence Folders", "description": "Tool to retrieve a list of all sequence folders from Mixmax. Use when you need to view or enumerate available sequence folders for organizing sequences." }, { "slug": "MIXMAX_LIST_SEQUENCES", "name": "List Sequences", "description": "Tool to retrieve a list of sequences from Mixmax. Use when you need to view sequences (email campaigns) that you have access to. Supports limiting results and expanding nested fields like stages and userId." }, { "slug": "MIXMAX_LIST_SNIPPETS", "name": "List Snippets", "description": "Tool to list templates or snippets that you have access to (including those shared with you). Use when you need to retrieve available snippets in your Mixmax account." }, { "slug": "MIXMAX_PATCH_RULES_ID", "name": "Update Rule by ID", "description": "Tool to update a rule by its unique ID in Mixmax. Use when you need to modify an existing rule's name, trigger, or filter. At least one field should be provided to update." }, { "slug": "MIXMAX_PATCH_RULES_ID_ACTIONS_ID", "name": "Update Rule Action", "description": "Tool to update an action within a Mixmax rule. Use when you need to modify action properties like webhook URL or action type." }, { "slug": "MIXMAX_PATCH_SNIPPETS_ID", "name": "Update Snippet by ID", "description": "Tool to update a snippet by its unique ID in Mixmax. Use when you need to modify an existing snippet's name, title, content, or inline status. At least one field should be provided to update." }, { "slug": "MIXMAX_QUERY_CONTACTS", "name": "Query Contacts", "description": "Tool to search for matching contacts across multiple sources including Mixmax, Google Directory, and Salesforce (contacts, leads, accounts, and opportunities). Use when you need to find contacts by name, email, or other search criteria." }, { "slug": "MIXMAX_REMOVE_CONTACT_FROM_GROUP", "name": "Remove Contact from Group", "description": "Tool to remove a contact from a contact group. Use when you need to disassociate a contact from a specific group after confirming both the group ID and contact ID." }, { "slug": "MIXMAX_REMOVE_TEAM_MEMBER", "name": "Remove Team Member", "description": "Tool to remove a member from a Mixmax team. Use when you need to revoke a user's team membership. Can only be called by the admin or a user trying to leave a team." }, { "slug": "MIXMAX_SEARCH_SEQUENCES", "name": "Search Sequences", "description": "Tool to search sequence recipients by email and sequenceId from Mixmax. Use when you need to find sequences and recipients based on specific criteria. Returns both sequences and recipients matching the search parameters." }, { "slug": "MIXMAX_SEND_MESSAGE", "name": "Send Message Draft", "description": "Tool to send a message draft by its unique ID. Use when you need to send an existing draft message that was created via POST /v1/messages. Messages are sent within 3 seconds after calling this action." }, { "slug": "MIXMAX_SEND_SNIPPET", "name": "Send Snippet as Email", "description": "Tool to send a snippet as an email to specified recipients. Use when you need to send a saved snippet/template to one or more email addresses." }, { "slug": "MIXMAX_SEND_TEST_MESSAGE", "name": "Send Test Message", "description": "Tool to send a test Mixmax message to the authenticated user, resolving any variables. Use when you need to test message templates or verify that the Mixmax API integration is working correctly." }, { "slug": "MIXMAX_UPDATE_APPOINTMENT_LINK_CALENDAR_NAME", "name": "Update Appointment Link Calendar Name", "description": "Tool to update your custom \"Mixmax Calendar\" vanity URL name. Use when you need to change the calendar name that appears in your personalized calendar link (e.g., https://cal.mixmax.com/). This setting is available in the Calendar settings from the Mixmax dashboard." }, { "slug": "MIXMAX_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update a specific contact by ID. Use when you need to modify contact details such as name, email, or custom metadata fields." }, { "slug": "MIXMAX_UPDATE_CONTACT_GROUP", "name": "Update Contact Group", "description": "Tool to update a contact group by ID. Use when you need to modify a contact group's name, sharing settings, or team associations. Note: This endpoint is deprecated but still functional." }, { "slug": "MIXMAX_UPDATE_CONTACT_NOTE", "name": "Update Contact Note", "description": "Tool to update a note on a contact by its ID. Only the creator of the note can edit it. The contact note will show \"(edited)\" in the UI after update." }, { "slug": "MIXMAX_UPDATE_INSIGHTS_REPORT", "name": "Update insights report", "description": "Tool to update an existing insights report in Mixmax. Use when you need to modify a report's title, type, or query. All fields are optional - only provide the fields you want to update." }, { "slug": "MIXMAX_UPDATE_MESSAGE", "name": "Update Message by ID", "description": "Tool to update a message by its unique ID. Use when you need to modify message content, recipients, or tracking settings for an existing message." }, { "slug": "MIXMAX_UPDATE_SEQUENCE_FOLDER", "name": "Update Sequence Folder by ID", "description": "Tool to update a sequence folder by its unique ID in Mixmax. Use when you need to modify an existing sequence folder's name or other properties." }, { "slug": "MIXMAX_UPDATE_SNIPPET_TAG", "name": "Update Snippet Tag", "description": "Tool to update a snippet tag (folder) by its unique ID. Use when you need to modify a snippet tag's name, sharing settings, or inline status." }, { "slug": "MIXMAX_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update a team's information by ID. Use when you need to modify a team's name or other properties. Only admins can perform this operation." }, { "slug": "MIXMAX_UPDATE_USER_PREFERENCES_ME", "name": "Update Current User Preferences", "description": "Tool to update preferences for the currently authenticated user. Use when you need to modify user-specific settings like tracking preferences, UI features, hotkeys, or calendar settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mixmax_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Mixmax API token. Create one at Settings > Integrations > API (https://app.mixmax.com/dashboard/settings/personal/integrations). Note: API access is restricted to Mixmax annual plans (Growth+ or Enterprise tier).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "miyn", "name": "Miyn", "logo": "https://logos.composio.dev/api/miyn", "description": "Best Appointment Scheduling Software For Small Business", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MIYN_GET_BOOKINGS", "name": "Get Bookings", "description": "Tool to retrieve booking and appointment information from Miyn calendar. Returns bookings with client details, scheduling info, staff assignments, and booking status. Use when you need to fetch or poll booking data from Miyn." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "miyn_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key sign in to Miyn and go to \"Settings\" > \"API Keys\" (https://app.miyn.app/app/settings/apikey).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moaform", "name": "Moaform", "logo": "https://logos.composio.dev/api/moaform", "description": "Online survey platform with unlimited responses.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moaform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in to Moaform, click the User menu on the top right, scroll down and click on \"API\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mobile_text_alerts", "name": "Mobile Text Alerts", "logo": "https://logos.composio.dev/api/mobile_text_alerts", "description": "SMS, MMS, iMessage, and RCS messaging platform for business communications", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mobile_text_alerts_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Mobile Text Alerts API key (Bearer token)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moco", "name": "Moco", "logo": "https://logos.composio.dev/api/moco", "description": "MOCO is a business management software offering project management, time tracking, and invoicing solutions.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 218, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOCO_ACTIVATE_OFFER_CUSTOMER_APPROVAL", "name": "Activate Offer Customer Approval", "description": "Tool to activate customer approval on an offer to generate the offer_document_url. Use when you need to create a shareable PDF link for customer approval." }, { "slug": "MOCO_ACTIVITIES_LIST", "name": "List Activities", "description": "Retrieves a list of activities (time entries) from MOCO. Activities are time tracking records that log hours worked on projects and tasks. Use this tool to: - Get all time entries within a date range - Find activities by user, project, task, or company - Filter by billing status (billable/non-billable, billed/unbilled) - Search for activities by description, tag, or external reference - Sort results by any field (date, hours, etc.) Returns paginated results with detailed information about each activity including the associated project, task, customer, and user." }, { "slug": "MOCO_ACTIVITY_GET", "name": "Get Activity", "description": "Tool to retrieve a single activity by ID. Use when you need to fetch details for a specific activity after confirming the activity ID." }, { "slug": "MOCO_ACTIVITY_UPDATE", "name": "Update Activity", "description": "Tool to update an existing activity. Use when you need to adjust details of a recorded time entry after confirming the activity exists." }, { "slug": "MOCO_ASSIGN_OFFER", "name": "Assign Offer", "description": "Tool to assign an offer to a project, company, or deal. Use when you need to link an existing offer with a project (creating project from offer), associate it with a company, or link it to a deal." }, { "slug": "MOCO_ASSIGN_PURCHASE_TO_PROJECT", "name": "Assign Purchase to Project", "description": "Tool to assign a purchase item to a project by creating or linking to an expense. Use when you need to associate a purchase line item with a specific project for billing and budget tracking." }, { "slug": "MOCO_COMMENTS_LIST", "name": "List comments", "description": "Tool to retrieve a list of comments. Use after confirming the resource type and ID." }, { "slug": "MOCO_COMPANY_CREATE", "name": "Create Company", "description": "Creates a new company in MOCO (customer, supplier, or organization). Required fields: - name: Company name - type: Must be 'customer', 'supplier', or 'organization' - currency: Required only for 'customer' type (e.g., 'USD', 'EUR', 'CHF') Common optional fields: website, email, phone, address, tags, user_id, country_code" }, { "slug": "MOCO_COMPANY_DELETE", "name": "Delete a company", "description": "Tool to delete a company. Use when you need to remove a company from MOCO after confirming no active dependencies." }, { "slug": "MOCO_CONTACTS_LIST", "name": "List Contacts", "description": "Tool to retrieve a list of contacts. Use when you need to list contacts optionally filtered by tags, term, or phone after confirming criteria." }, { "slug": "MOCO_CREATE_ACCOUNT_CATALOG_SERVICES", "name": "Create Account Catalog Service", "description": "Tool to create a catalog service including its items. Use when you need to create a catalog service with pricing items. Note: Items cannot be updated through this endpoint - use separate item-specific endpoints for modifications." }, { "slug": "MOCO_CREATE_ACCOUNT_CATALOG_SERVICES_ITEMS", "name": "Create Catalog Service Item", "description": "Tool to create a new item within a catalog service in MOCO. Use when you need to add items like consulting services, products, or other billable items to a service catalog." }, { "slug": "MOCO_CREATE_ACCOUNT_CUSTOM_PROPERTIES", "name": "Create Account Custom Property", "description": "Tool to create a new custom property in MOCO. Use when you need to define a new custom field for entities like Deals, Projects, or Customers. Custom properties can be of various types (String, Textarea, Link, Boolean, Select, MultiSelect, Date) and can be configured to appear on documents or trigger notifications." }, { "slug": "MOCO_CREATE_ACTIVITIES_BULK", "name": "Create Activities Bulk", "description": "Tool to bulk create multiple activities (time entries) at once in MOCO. Activities are time tracking records that log hours worked on projects and tasks. Use this tool to: - Create multiple time entries in a single API call for efficiency - Import time logs from external systems in bulk - Backfill historical time tracking data - Log multiple activities for the same or different projects/tasks at once More efficient than calling activity create endpoint multiple times. All activities must have valid date, project_id, and task_id. Returns all created activities with their generated IDs." }, { "slug": "MOCO_CREATE_ACTIVITY", "name": "Create Activity", "description": "Tool to create a new activity (time tracking entry) in MOCO. Use when you need to record time spent on a project task. Activities are created for the user that the API key belongs to." }, { "slug": "MOCO_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment on a MOCO resource. Use when you need to add a comment to a project, deal, contact, or other supported entity." }, { "slug": "MOCO_CREATE_COMMENTS_BULK", "name": "Create Comments Bulk", "description": "Tool to create multiple comments in bulk for MOCO objects. Use when you need to add the same comment to multiple objects of the same type efficiently." }, { "slug": "MOCO_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact person in MOCO. Use when you need to add a new contact with their personal and professional information. Requires lastname and gender; optionally accepts contact details, company association, and tags." }, { "slug": "MOCO_CREATE_DEAL", "name": "Create Deal", "description": "Tool to create a new deal in MOCO. Use when you need to add a deal with specified parameters." }, { "slug": "MOCO_CREATE_DEAL_CATEGORY", "name": "Create Deal Category", "description": "Creates a new deal category in MOCO with a name and probability percentage. Deal categories represent stages in a sales pipeline (e.g., \"Contact\", \"Negotiation\", \"Closed Won\") and include probability percentages (0-100) indicating the likelihood of winning at each stage. Use this action to add new stages to your sales pipeline." }, { "slug": "MOCO_CREATE_EMPLOYMENT", "name": "Create Employment", "description": "Create a new employment (weekly work model) for a user in MOCO. Define work hours distribution across weekdays using 'am' and 'pm' arrays." }, { "slug": "MOCO_CREATE_EXPENSE_TEMPLATE", "name": "Create Expense Template", "description": "Tool to create a new expense template in MOCO. Use when you need to set up reusable expense items with predefined pricing and cost information." }, { "slug": "MOCO_CREATE_HOLIDAY", "name": "Create Holiday", "description": "Create a new holiday entry for a user in MOCO. Use this to allocate annual leave days, vacation allowances, or other holiday entitlements for specific users and years." }, { "slug": "MOCO_CREATE_INVOICE_ATTACHMENT", "name": "Add Invoice Attachment", "description": "Tool to add a PDF attachment to an existing invoice. Use when you need to attach supporting documents or files to an invoice record." }, { "slug": "MOCO_CREATE_INVOICE_BOOKKEEPING_EXPORT", "name": "Create Invoice Bookkeeping Export", "description": "Tool to create a new invoice bookkeeping export. Use when you need to export invoice data for accounting purposes." }, { "slug": "MOCO_CREATE_INVOICE_PAYMENT", "name": "Create Invoice Payment", "description": "Tool to create a new invoice payment. Use when recording a payment received for an invoice." }, { "slug": "MOCO_CREATE_INVOICE_REMINDER", "name": "Create Invoice Reminder", "description": "Tool to create a new invoice reminder for an existing invoice. Use when you need to send a payment reminder to a customer for an overdue invoice." }, { "slug": "MOCO_CREATE_INVOICES_PAYMENTS_BULK", "name": "Create Invoice Payments Bulk", "description": "Tool to create multiple invoice payments in bulk. Use when you need to record multiple payments at once across different invoices." }, { "slug": "MOCO_CREATE_OFFER", "name": "Create Offer", "description": "Tool to create a new offer/proposal. Use after gathering complete offer data (company, dates, items, etc.)." }, { "slug": "MOCO_CREATE_OFFER_ATTACHMENT", "name": "Create Offer Attachment", "description": "Tool to upload an attachment to an offer. Use when you need to attach a document to an existing offer after obtaining the offer ID and file content." }, { "slug": "MOCO_CREATE_PROJECT_CONTRACT", "name": "Create Project Contract", "description": "Tool to create a new contract (assign staff) for a project in MOCO. Use when you need to assign a staff member to a project with specific billing parameters." }, { "slug": "MOCO_CREATE_PROJECTS_EXPENSES", "name": "Create Project Expense", "description": "Tool to create an additional service entry (expense) on a project. Use when you need to log project expenses like hosting costs, external services, or materials." }, { "slug": "MOCO_CREATE_PROJECTS_EXPENSES_BULK", "name": "Create Project Expenses Bulk", "description": "Tool to create multiple project expense entries in bulk. Use when you need to add several additional services or expense items to a project at once." }, { "slug": "MOCO_CREATE_PROJECTS_PAYMENT_SCHEDULES", "name": "Create Project Payment Schedule", "description": "Tool to create a payment schedule entry for a project. Use when you need to add a scheduled payment milestone to an existing project." }, { "slug": "MOCO_CREATE_PROJECTS_RECURRING_EXPENSES", "name": "Create Recurring Expense on Project", "description": "Tool to create a recurring additional services entry on a project in MOCO. Use when you need to set up periodic billing for services like hosting, maintenance, or support contracts." }, { "slug": "MOCO_CREATE_PROJECTS_RECURRING_EXPENSES_RECUR", "name": "Trigger Recurring Expense", "description": "Tool to manually trigger the creation of an expense entry for an active recurring expense ahead of its automatic schedule. Use when you need to create the next expense entry immediately rather than waiting for the scheduled recurrence date." }, { "slug": "MOCO_CREATE_PROJECT_TASK", "name": "Create Project Task", "description": "Tool to create a new task (service) for a project in MOCO. Use when you need to add a billable or non-billable task to an existing project." }, { "slug": "MOCO_CREATE_PURCHASE_BOOKKEEPING_EXPORT", "name": "Create Purchase Bookkeeping Export", "description": "Tool to create a new purchase bookkeeping export. Use when you need to export purchases for bookkeeping or DATEV submission." }, { "slug": "MOCO_CREATE_PURCHASE_PAYMENT", "name": "Create Purchase Payment", "description": "Tool to create a new purchase payment. Use when you need to record a payment made for a purchase or create a standalone payment entry with a description." }, { "slug": "MOCO_CREATE_PURCHASE_PAYMENTS_BULK", "name": "Create Purchase Payments Bulk", "description": "Tool to create multiple purchase payments in bulk. Use when you need to record multiple payments at once for efficiency." }, { "slug": "MOCO_CREATE_RECEIPT", "name": "Create Receipt", "description": "Tool to create a new receipt. Use when you need to record an expense receipt after gathering date, title, currency, and items." }, { "slug": "MOCO_CREATE_SCHEDULE", "name": "Create Schedule", "description": "Tool to create a planning entry (absence/schedule). Use when you need to record absences such as holidays, sick days, or other time off. If user_id is not supplied, the entry is created for the authenticated user." }, { "slug": "MOCO_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in MOCO. Use when you need to create a reusable label for categorizing entities like projects, deals, companies, etc." }, { "slug": "MOCO_CREATE_TASK_TEMPLATE", "name": "Create Task Template", "description": "Tool to create a new task template in MOCO. Use when you need to define a reusable task template for projects." }, { "slug": "MOCO_CREATE_UNIT", "name": "Create Unit", "description": "Tool to create a new unit/team in MOCO. Use when you need to provision a new organizational unit." }, { "slug": "MOCO_CREATE_USERS", "name": "Create User", "description": "Tool to create a new staff member/user in MOCO. Use when you need to add a new employee or team member to the system. Requires firstname, lastname, email, and unit_id (team assignment). Optionally set password, role permissions, language preference, contact details, and whether to send a welcome email." }, { "slug": "MOCO_CREATE_USERS_PRESENCES", "name": "Create Users Presences", "description": "Tool to create a presence entry (work time tracking) in MOCO. Use when you need to record work hours or home office days. The presence is created for the user that the API key belongs to." }, { "slug": "MOCO_CREATE_USERS_PRESENCES_TOUCH", "name": "Toggle User Presence", "description": "Tool to toggle user presence (clock in/out) in MOCO. First call creates a new presence starting from current time, second call closes the previous open presence. Use when implementing a clock system or time tracking system." }, { "slug": "MOCO_CREATE_WORK_TIME_ADJUSTMENT", "name": "Create Work Time Adjustment", "description": "Tool to create a new work time adjustment in MOCO. Use when you need to add or subtract hours from a user's work time balance (e.g., overtime compensation, vacation corrections)." }, { "slug": "MOCO_DEACTIVATE_OFFER_CUSTOMER_APPROVAL", "name": "Deactivate Offer Customer Approval", "description": "Tool to deactivate a customer approval on an offer to prevent access and signing. Use when you need to revoke customer approval access for an offer." }, { "slug": "MOCO_DEAL_CATEGORIES_LIST", "name": "List Deal Categories", "description": "Retrieves all deal categories configured in MOCO with their IDs, names, probabilities, and timestamps. Deal categories represent stages in a sales pipeline (e.g., \"Contact\", \"Create quote\", \"Negotiation\") and include probability percentages (0-100) indicating the likelihood of winning at each stage. Use this action to: - Get available category IDs for creating or updating deals - Understand the sales pipeline stages configured in the system - View probability percentages associated with each stage No parameters required - returns all categories in the system." }, { "slug": "MOCO_DEAL_DELETE", "name": "Delete Deal", "description": "Tool to delete a deal. Use when you have identified an obsolete or unwanted deal and confirmed its deletion. Example: \"Delete the deal with id 123.\"" }, { "slug": "MOCO_DEAL_GET", "name": "Get Deal", "description": "Retrieves detailed information for a specific deal/lead by its ID from MOCO. Returns complete deal data including status, monetary value, associated company/person, category, and timestamps. Use this when you need to get full details about a specific deal that you already have the ID for." }, { "slug": "MOCO_DEALS_LIST", "name": "List Deals", "description": "Tool to retrieve a list of all deals (leads). Use when you need an overview of deals filtered by status, tags, date range, or associated company." }, { "slug": "MOCO_DEAL_UPDATE", "name": "Update Deal", "description": "Tool to update an existing deal. Use when you need to modify one or more fields of a deal after retrieving its details." }, { "slug": "MOCO_DELETE_ACCOUNT_CATALOG_SERVICES", "name": "Delete Catalog Service", "description": "Tool to delete a catalog service. Use when you need to remove a catalog service from MOCO after confirming it is no longer needed." }, { "slug": "MOCO_DELETE_ACCOUNT_CUSTOM_PROPERTIES", "name": "Delete Account Custom Property", "description": "Tool to delete a custom property in MOCO. Use when you need to permanently remove a custom field definition from an entity type." }, { "slug": "MOCO_DELETE_ACCOUNT_EXPENSE_TEMPLATES", "name": "Delete Expense Template", "description": "Tool to delete an expense template. Use when you need to remove an expense template from MOCO after confirming it is no longer needed." }, { "slug": "MOCO_DELETE_CATALOG_SERVICE_ITEM", "name": "Delete Catalog Service Item", "description": "Tool to delete an item from a catalog service. Use when you need to remove a specific item from a catalog service by providing both the service ID and item ID." }, { "slug": "MOCO_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a manually created comment. Use when you need to remove a comment that was created by a user (not system-generated)." }, { "slug": "MOCO_DELETE_CONTACTS_PEOPLE", "name": "Delete Contact Person", "description": "Tool to delete a contact person in MOCO. Use when you need to remove a contact person from the system after confirming they are no longer needed." }, { "slug": "MOCO_DELETE_DEAL_CATEGORY", "name": "Delete Deal Category", "description": "Tool to delete a deal category. Use when you need to remove an unused or obsolete deal category from MOCO. Note: deletion will fail with 403 Forbidden if the category is still in use by any deals." }, { "slug": "MOCO_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete a single invoice. Use when you need to remove an invoice from MOCO. Note: 'reason' is mandatory for non-draft invoices but optional for draft invoices." }, { "slug": "MOCO_DELETE_INVOICES_PAYMENTS", "name": "Delete Invoice Payment", "description": "Tool to delete an invoice payment. Use when you need to remove an invoice payment record from MOCO." }, { "slug": "MOCO_DELETE_OFFERS_ATTACHMENTS", "name": "Delete Offers Attachments", "description": "Tool to remove an attachment from an offer. Use when you need to delete a specific attachment by its ID from a given offer." }, { "slug": "MOCO_DELETE_PRESENCE", "name": "Delete Presence", "description": "Tool to delete a presence entry. Use when you need to remove a specific presence record from the system. Example: \"Delete the presence entry with id 22018495.\"" }, { "slug": "MOCO_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project. Use when you need to permanently remove a project from MOCO. Deletion is only possible if the project has no associated activities, invoices, offers, or expenses." }, { "slug": "MOCO_DELETE_PROJECTS_CONTRACTS", "name": "Delete Project Staff Assignment", "description": "Tool to delete a staff assignment (contract) from a project. Use when removing a staff member from a project. Note: deletion is only possible if no hours have been tracked by this person." }, { "slug": "MOCO_DELETE_PROJECTS_EXPENSES", "name": "Delete Project Expense", "description": "Tool to delete an additional services entry on a project. Use when you need to remove an expense that has not yet been billed. Deletion is only possible for unbilled expenses." }, { "slug": "MOCO_DELETE_PROJECTS_PAYMENT_SCHEDULES", "name": "Delete Project Payment Schedule", "description": "Tool to delete a payment schedule from a project. Use when you need to remove a scheduled payment milestone from an existing project." }, { "slug": "MOCO_DELETE_PROJECTS_RECURRING_EXPENSES", "name": "Delete Project Recurring Expense", "description": "Tool to delete a recurring expense from a project. Use when you need to remove a periodic billing entry for services like hosting or maintenance contracts." }, { "slug": "MOCO_DELETE_PROJECTS_TASKS", "name": "Delete Project Task", "description": "Tool to delete a specific task from a project. Deletion is only possible if no hours were tracked on the task. Use when you need to remove a single task that has no time entries." }, { "slug": "MOCO_DELETE_PROJECTS_TASKS_DESTROY_ALL", "name": "Delete All Project Tasks", "description": "Tool to bulk delete all deletable tasks on a project. Tasks with tracked hours cannot be deleted and will be automatically skipped without causing errors. Use when you need to clear all removable tasks from a project." }, { "slug": "MOCO_DELETE_PURCHASE", "name": "Delete Purchase", "description": "Tool to delete a purchase. Use when you need to remove a purchase record that is in 'pending' status and has no registered payments." }, { "slug": "MOCO_DELETE_PURCHASE_PAYMENT", "name": "Delete Purchase Payment", "description": "Tool to delete a purchase payment. Use when you need to remove a payment record from a purchase." }, { "slug": "MOCO_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Tool to delete a schedule entry (absence). Use when you need to remove a scheduled absence such as holidays, sick days, or other time off entries that are no longer needed." }, { "slug": "MOCO_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag in MOCO. Use when you need to remove a tag and optionally merge it with another tag." }, { "slug": "MOCO_DELETE_TAGGINGS", "name": "Delete Taggings", "description": "Tool to selectively remove tags from an entity. Use when you need to remove specific tags from a Company, Contact, Project, Deal, Purchase, Invoice, Offer, or User." }, { "slug": "MOCO_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user from MOCO. Use when you need to permanently remove a user account that has no billed hours. Users with billed hours cannot be deleted and must be archived instead by updating them with active=false." }, { "slug": "MOCO_DELETE_USERS_EMPLOYMENTS", "name": "Delete Employment", "description": "Tool to delete an employment (weekly work model) for a user. Use when you need to remove an employment record after confirming it is no longer needed." }, { "slug": "MOCO_DISABLE_PROJECT_SHARE", "name": "Disable Project Share", "description": "Tool to deactivate project report sharing. Use when you need to disable public access to a project's report by removing the sharing URL." }, { "slug": "MOCO_DISREGARD_PROJECT_EXPENSES", "name": "Mark Project Expenses as Billed", "description": "Tool to mark project expense entries as already billed. Use when you need to disregard specific expenses from billing because they were courtesy services or handled outside the normal billing process." }, { "slug": "MOCO_GET_ACCOUNT_CATALOG_SERVICES_ITEMS", "name": "Get Catalog Service Item", "description": "Tool to retrieve a specific item within a catalog service in MOCO. Use when you need to get details about a specific catalog service item by its ID." }, { "slug": "MOCO_GET_ACCOUNT_FIXED_COSTS", "name": "Get Account Fixed Costs", "description": "Tool to retrieve all fixed costs from the account. Use when you need to view recurring monthly costs like rent, subscriptions, or other fixed expenses. Fixed costs show historical and planned monthly cost data organized by year and month." }, { "slug": "MOCO_GET_CASHFLOW", "name": "Get Cashflow Report", "description": "Tool to retrieve the cashflow report from MOCO. Use when you need to view cash inflows and outflows over a specific period. This report provides a chronological view of all financial transactions including invoices created, payments received, expenses, and other cashflow events. Each entry shows the amount, date, associated company, user, and transaction type. Useful for financial analysis, cash position tracking, and understanding the timing of revenue and expenses." }, { "slug": "MOCO_GET_COMMENT", "name": "Get Comment", "description": "Tool to retrieve a single comment by ID. Use when you need to fetch details for a specific comment after confirming the comment ID." }, { "slug": "MOCO_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve a single company by ID from MOCO. Use when you need to get complete details about a specific company including contact information, billing settings, and associated projects." }, { "slug": "MOCO_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve detailed information for a specific contact person by ID from MOCO. Use when you need to get full details about a specific contact that you already have the ID for." }, { "slug": "MOCO_GET_CUSTOM_PROPERTY", "name": "Get Custom Property", "description": "Tool to retrieve a single custom property by ID from MOCO. Use when you need to fetch details about a specific custom property after obtaining its ID." }, { "slug": "MOCO_GET_DEAL_CATEGORY", "name": "Get Deal Category", "description": "Tool to retrieve a single deal category by ID. Use when you need detailed information about a specific deal category in the MOCO sales pipeline." }, { "slug": "MOCO_GET_EMPLOYMENT", "name": "Get Employment", "description": "Tool to retrieve a single employment (weekly work model) by ID. Use when you need to fetch details for a specific employment after confirming the employment ID." }, { "slug": "MOCO_GET_HOLIDAY", "name": "Get Holiday", "description": "Tool to retrieve a single holiday entry by ID. Use when you need to fetch details for a specific holiday allocation after confirming the holiday ID." }, { "slug": "MOCO_GET_INTERNAL_HOURLY_RATES", "name": "Get Internal Hourly Rates", "description": "Tool to retrieve all internal hourly rates from the account. Use when you need to view staff costs, budget planning, or analyze team rates over time. Returns user IDs, names, and their hourly rates organized by year." }, { "slug": "MOCO_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve a single invoice by ID with full details including items, payments, and reminders. Use when you have an invoice ID and need complete invoice information." }, { "slug": "MOCO_GET_INVOICE_BOOKKEEPING_EXPORT", "name": "Get Invoice Bookkeeping Export", "description": "Tool to retrieve a single invoice bookkeeping export by ID. Use when you need to get details about a specific bookkeeping export that you already have the ID for." }, { "slug": "MOCO_GET_INVOICE_PAYMENT", "name": "Get Invoice Payment", "description": "Tool to retrieve a single invoice payment by ID. Use when you need to fetch details for a specific payment record after confirming the payment ID." }, { "slug": "MOCO_GET_INVOICE_REMINDER", "name": "Get Invoice Reminder", "description": "Tool to retrieve a single invoice reminder by ID. Use when you need to fetch details for a specific invoice reminder after confirming the reminder ID." }, { "slug": "MOCO_GET_INVOICE_REMINDERS", "name": "Get Invoice Reminders", "description": "Tool to retrieve all invoice reminders. Use when you need to view reminders, optionally filtered by invoice ID or date range." }, { "slug": "MOCO_GET_INVOICES_BOOKKEEPING_EXPORTS", "name": "Get Invoice Bookkeeping Exports", "description": "Tool to retrieve all invoice bookkeeping exports. Use when you need to view existing invoice bookkeeping exports for accounting purposes." }, { "slug": "MOCO_GET_INVOICES_EXPENSES", "name": "Get Invoice Expenses", "description": "Tool to retrieve all expenses that were invoiced in a particular invoice. Use when you need to see which expense items are associated with a specific invoice." }, { "slug": "MOCO_GET_INVOICES_LOCKED", "name": "Get Locked Invoices", "description": "Tool to retrieve all locked invoices. Use when you need to access invoices that have been finalized and locked for editing, optionally filtered by status, date range, or identifier." }, { "slug": "MOCO_GET_INVOICES_PAYMENTS", "name": "Get Invoice Payments", "description": "Tool to retrieve all invoice payments. Use when you need to view payment records, optionally filtered by invoice or date range." }, { "slug": "MOCO_GET_INVOICE_TIMESHEET", "name": "Get Invoice Timesheet", "description": "Tool to retrieve a time sheet for a particular invoice, i.e. all activities that were invoiced. Use when you need to see the detailed list of activities billed in a specific invoice." }, { "slug": "MOCO_GET_OFFER_CUSTOMER_APPROVAL", "name": "Get Offer Customer Approval", "description": "Tool to retrieve customer approval status and URL for an offer. Use when you need to check if customer approval is activated and get approval URLs for an offer." }, { "slug": "MOCO_GET_OFFER_PDF", "name": "Get Offer PDF", "description": "Tool to retrieve a single offer document as PDF. Use when you need to download an offer in PDF format for sharing or archiving." }, { "slug": "MOCO_GET_PRESENCE", "name": "Get Presence", "description": "Tool to retrieve a single presence entry by ID. Use when you need to fetch details for a specific work time tracking record after confirming the presence ID." }, { "slug": "MOCO_GET_PROFILE", "name": "Get Profile", "description": "Tool to retrieve the current authenticated user's profile. Use when you need to get information about the API key owner or impersonated user." }, { "slug": "MOCO_GET_PROJECT_CONTRACT", "name": "Get Project Contract", "description": "Tool to retrieve a single staff assignment (contract) on a project. Use when you need details about a specific person's assignment to a project, including their billable status, budget, and hourly rate." }, { "slug": "MOCO_GET_PROJECT_EXPENSE", "name": "Get Single Project Expense", "description": "Tool to retrieve a single additional service (expense) for a project. Use when you need detailed information about a specific project expense entry." }, { "slug": "MOCO_GET_PROJECT_PAYMENT_SCHEDULES_BY_ID", "name": "Get Project Payment Schedules By ID", "description": "Tool to retrieve all payment schedules for a specific project by its ID. Use when you need to view scheduled payment milestones for a particular project, optionally filtered by date range or checked status." }, { "slug": "MOCO_GET_PROJECT_REPORT", "name": "Get Project Report", "description": "Tool to retrieve a project report with budget, hours, costs, and business indicators. Use when you need financial and time tracking metrics for a specific project after confirming the project ID." }, { "slug": "MOCO_GET_PROJECTS_EXPENSES", "name": "Get Project Expenses", "description": "Tool to retrieve all additional services (expenses) for a project. Use when you need to view project costs, track billable expenses, or analyze project spending." }, { "slug": "MOCO_GET_PROJECTS_PAYMENT_SCHEDULES", "name": "Get Projects Payment Schedules", "description": "Tool to retrieve all payment schedules for fixed price projects. Use when you need an overview of payment schedules, optionally filtered by date range, project, or company." }, { "slug": "MOCO_GET_PROJECTS_PAYMENT_SCHEDULES3", "name": "Get Project Payment Schedule", "description": "Tool to retrieve a single payment schedule entry for a project by its ID. Use when you need detailed information about a specific payment schedule milestone." }, { "slug": "MOCO_GET_PROJECTS_RECURRING_EXPENSES", "name": "Get Project Recurring Expenses", "description": "Tool to retrieve all recurring expenses for a specific project. Use when you need to view periodic billing items like hosting, maintenance contracts, or support services associated with a project." }, { "slug": "MOCO_GET_PROJECTS_TASKS", "name": "Get Project Task", "description": "Tool to retrieve a single task on a project by project ID and task ID. Use when you need detailed information about a specific task within a project, including billing rates, budget allocation, and revenue categorization." }, { "slug": "MOCO_GET_PURCHASE", "name": "Get Purchase", "description": "Tool to retrieve a single purchase by ID. Use when you need to get detailed information about a specific purchase including items, payments, and supplier details." }, { "slug": "MOCO_GET_PURCHASE_BOOKKEEPING_EXPORT", "name": "Get Purchase Bookkeeping Export", "description": "Tool to retrieve a single purchase bookkeeping export by ID. Use when you need to fetch details for a specific bookkeeping export after confirming the export ID." }, { "slug": "MOCO_GET_PURCHASE_PAYMENT", "name": "Get Purchase Payment", "description": "Tool to retrieve a single purchase payment by ID. Use when you need to fetch details for a specific purchase payment after confirming the payment ID." }, { "slug": "MOCO_GET_PURCHASES_BOOKKEEPING_EXPORTS", "name": "Get Purchase Bookkeeping Exports", "description": "Tool to retrieve all purchase bookkeeping exports. Use when you need to view existing purchase bookkeeping exports for accounting purposes." }, { "slug": "MOCO_GET_PURCHASES_BUDGETS", "name": "Get Purchase Budgets", "description": "Tool to retrieve purchase budgets for a given fiscal year. Use when you need to check budget allocations, spending status, or remaining funds for purchases." }, { "slug": "MOCO_GET_PURCHASES_PAYMENTS", "name": "Get Purchase Payments", "description": "Tool to retrieve all purchase payments. Use when you need an overview of payments made for purchases, optionally filtered by purchase ID or date range." }, { "slug": "MOCO_GET_RECEIPT", "name": "Get Receipt", "description": "Tool to retrieve a single receipt by ID from MOCO. Use when you need to fetch complete details for a specific receipt including items, VAT information, project association, and refund status." }, { "slug": "MOCO_GET_RECEIPTS", "name": "Get Receipts", "description": "Retrieves a list of receipts (expense receipts) from MOCO. Receipts are records of expenses that can be allocated to projects and submitted for refund requests. Use this tool to: - Get all receipts within a date range - Find receipts by user, project, or purchase category - Filter by refund request submission status - Search for receipts by refund request ID Returns a list with detailed information about each receipt including the associated project, items with VAT details, refund request status, and user information." }, { "slug": "MOCO_GET_RECURRING_EXPENSES", "name": "Get All Recurring Expenses", "description": "Tool to retrieve all recurring additional services entries across all projects in MOCO. Use when you need to view all periodic billing items like hosting, maintenance contracts, or support services globally across the account." }, { "slug": "MOCO_GET_REPORT_ABSENCES", "name": "Get Report Absences", "description": "Tool to retrieve absence report showing employee absences by type and date range. Returns vacation days (total, used, planned) and sick days per user for the specified period." }, { "slug": "MOCO_GET_REPORT_FINANCE", "name": "Get Finance Report", "description": "Tool to retrieve the finance report from MOCO. Use when you need financial data including income and expenses with associated companies and users. Returns an array of financial records that can be filtered by date range (from/to) or text search term. Each record includes transaction details, amounts in account currency, and associated company/user information." }, { "slug": "MOCO_GET_REPORT_UTILIZATION", "name": "Get Utilization Report", "description": "Tool to retrieve the utilization report from MOCO. The utilization report shows how employees spend their time, breaking down billable versus unbillable hours for each user across a date range. Use this tool to: - Analyze team utilization and productivity over a period - Calculate billable vs. unbillable time ratios for employees - Identify under-utilized or over-worked team members - Generate reports for resource planning and capacity management - Track how much time is being charged to clients versus internal work Both from_date and to_date parameters are required to define the reporting period." }, { "slug": "MOCO_GET_SCHEDULE", "name": "Get Schedule", "description": "Tool to retrieve a single planning entry (schedule) by ID. Use when you need to fetch details for a specific schedule entry." }, { "slug": "MOCO_GET_TAG", "name": "Get Tag", "description": "Tool to retrieve a single tag by ID. Use when you need to fetch details for a specific tag after confirming the tag ID." }, { "slug": "MOCO_GET_TAGGINGS", "name": "Get Taggings", "description": "Tool to retrieve the list of tags associated with an entity. Use when you need to fetch tags for a Company, Contact, Project, Deal, Purchase, Invoice, Offer, or User." }, { "slug": "MOCO_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve the list of tags from MOCO. Tags are reusable labels for categorizing entities like projects, deals, companies, contacts, invoices, offers, purchases, and users. Use this tool to: - Get all available tags across all entity types - Filter tags by specific entity context (e.g., only Project tags) - Find tags for tagging/categorizing records" }, { "slug": "MOCO_GET_TASK_TEMPLATE", "name": "Get Task Template", "description": "Tool to retrieve a single task template by ID. Use when you need to fetch details for a specific task template after confirming the template ID." }, { "slug": "MOCO_GET_UNIT", "name": "Get Unit", "description": "Tool to retrieve a single unit/team by ID from MOCO. Use when you need to fetch details for a specific team/organizational unit including its name and assigned staff members." }, { "slug": "MOCO_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information for a specific user/staff member by ID. Returns complete user profile including contact info, status, role, unit, tags, and custom properties. Use when you need details about a specific team member after obtaining their ID (e.g., from MOCO_USERS_LIST)." }, { "slug": "MOCO_GET_USERS_PERFORMANCE_REPORT", "name": "Get User Performance Report", "description": "Tool to retrieve a user's performance report comparing tracked hours vs target hours. Returns annual summary and monthly breakdown showing variations between actual tracked hours and expected target hours. Use when you need to analyze work performance, track hour completion, or identify under/over-worked periods." }, { "slug": "MOCO_GET_VAT_CODE_PURCHASE", "name": "Get VAT Code Purchase", "description": "Tool to retrieve a single VAT code for purchases by ID from MOCO. Use when you need to fetch details about a specific VAT code purchase configuration, including tax rate, reverse charge settings, and intra-EU status." }, { "slug": "MOCO_GET_VAT_CODE_PURCHASES", "name": "Get VAT Code Purchases", "description": "Tool to retrieve the list of purchase VAT codes. Use when you need to fetch available VAT codes for purchases, check tax rates, or filter by reverse charge or intra-EU status." }, { "slug": "MOCO_GET_VAT_CODE_SALE", "name": "Get VAT Code Sale", "description": "Tool to retrieve a single VAT code for sales by ID from MOCO. Use when you need to fetch details about a specific VAT code sales configuration, including tax rate, reverse charge settings, intra-EU status, and tax exemption notices." }, { "slug": "MOCO_GET_VAT_CODE_SALES", "name": "Get VAT Code Sales", "description": "Tool to retrieve the list of sale VAT codes from MOCO. Use when you need VAT/tax code information for sales transactions, including tax rates, active status, and exemption notices." }, { "slug": "MOCO_GET_WORK_TIME_ADJUSTMENT", "name": "Get Work Time Adjustment", "description": "Tool to retrieve a single work time adjustment by ID. Use when you need to fetch details for a specific work time adjustment after confirming the adjustment ID." }, { "slug": "MOCO_INVOICE_CREATE", "name": "Create Invoice", "description": "Tool to create a new invoice. Use after gathering complete invoice data (customer, dates, items, etc.)." }, { "slug": "MOCO_INVOICES_LIST", "name": "List Invoices", "description": "Tool to retrieve a list of all invoices. Use when you need an overview of invoices, optionally filtered by status, date range, or client." }, { "slug": "MOCO_LIST_ALL_PROJECT_EXPENSES", "name": "List All Project Expenses", "description": "Tool to retrieve all project expenses across all projects. Use when you need to analyze expenses company-wide, generate expense reports, or track spending across multiple projects." }, { "slug": "MOCO_LIST_ASSIGNED_PROJECTS", "name": "List Assigned Projects", "description": "Tool to retrieve all projects assigned to the authenticated user. Use when you need to see which projects the current user is assigned to, optionally filtered by active status." }, { "slug": "MOCO_LIST_CATALOG_SERVICES", "name": "List Catalog Services", "description": "List all catalog services (Leistungskatalog) from the account. Returns an array of services with nested items including pricing, quantities, and revenue categories. Use when you need to retrieve predefined service templates or catalog offerings." }, { "slug": "MOCO_LIST_COMPANIES", "name": "List Companies", "description": "Tool to retrieve all companies (customers and suppliers). Use when you need to list companies optionally filtered by type, search term, or archived status." }, { "slug": "MOCO_LIST_CUSTOM_PROPERTIES", "name": "List Custom Properties", "description": "Tool to retrieve all custom properties from MOCO. Use when you need to get the list of available custom fields configured for different entity types (e.g., Projects, Deals, Companies)." }, { "slug": "MOCO_LIST_EMPLOYMENTS", "name": "List Employments", "description": "Retrieve all user employments from MOCO. Employments define weekly work models (target hours and work patterns) for users. Use to get employment schedules, check user availability, or filter by date range to find active employments during specific periods." }, { "slug": "MOCO_LIST_EXPENSE_TEMPLATES", "name": "List Expense Templates", "description": "Tool to retrieve all expense templates from MOCO. Use when you need to view available expense templates for creating project expenses or generating invoices." }, { "slug": "MOCO_LIST_HOLIDAYS", "name": "List Holidays", "description": "Tool to retrieve all user holidays/vacation entries from MOCO. Use when you need to list holiday allocations, check vacation entitlements, or filter holidays by year or user." }, { "slug": "MOCO_LIST_HOURLY_RATES", "name": "List Hourly Rates", "description": "Tool to retrieve all hourly rates from MOCO. Use when you need to get default rates, task-specific rates, or user-specific rates. Can optionally filter by company to get customer-specific rates." }, { "slug": "MOCO_LIST_INVOICE_ATTACHMENTS", "name": "List Invoice Attachments", "description": "Tool to retrieve all attachments for an invoice. Use when you need to see files attached to a specific invoice." }, { "slug": "MOCO_LIST_OFFER_ATTACHMENTS", "name": "List Offer Attachments", "description": "Tool to retrieve all attachments for a specific offer. Use when you need to view or list all files attached to an offer." }, { "slug": "MOCO_LIST_PRESENCES", "name": "List Presences", "description": "Tool to retrieve all user presences (attendance entries) from MOCO. Use when you need to get work attendance records, track office vs home office days, or filter presence entries by date range or user." }, { "slug": "MOCO_LIST_PROJECT_CONTRACTS", "name": "List Project Contracts", "description": "Tool to retrieve all contracts (assigned staff) for a project. Use when you need to see which staff members are assigned to a specific project and their billing details." }, { "slug": "MOCO_LIST_PROJECT_GROUPS", "name": "List Project Groups", "description": "Retrieve all project groups from MOCO. Use when you need to view grouped projects, analyze project portfolios by company or user, or get aggregated budget information across multiple projects." }, { "slug": "MOCO_LIST_PROJECT_TASKS", "name": "List Project Tasks", "description": "Tool to retrieve all tasks (services) for a project by project ID. Use when you need to see all available tasks within a project for activity tracking, budgeting, or billing purposes." }, { "slug": "MOCO_LIST_PURCHASE_CATEGORIES", "name": "List Purchase Categories", "description": "Retrieves all purchase categories configured in MOCO with their IDs, names, account codes, and status. Purchase categories are used to classify expenses and purchases in the system (e.g., \"Travel expenses\", \"Office supplies\"). Each category includes an associated credit account code for bookkeeping. Use this action to: - Get available category IDs for creating or categorizing purchases - View all expense categories configured in the system - Check which categories are active or inactive" }, { "slug": "MOCO_LIST_PURCHASE_DRAFTS", "name": "List Purchase Drafts", "description": "Tool to retrieve all purchase drafts (German: Ausgaben – Entwürfe). Use when you need to view all draft purchases that have been created but not yet finalized." }, { "slug": "MOCO_LIST_PURCHASES", "name": "List Purchases", "description": "Tool to retrieve all purchases (supplier invoices). Use when you need an overview of expenses, optionally filtered by status, date range, or supplier." }, { "slug": "MOCO_LIST_SCHEDULES", "name": "List Schedules", "description": "Tool to retrieve all absences (schedules) from MOCO. Schedules track employee time off including holidays, sick days, and other absences. Use when you need to view team availability, check planned absences, or track vacation days." }, { "slug": "MOCO_LIST_TASK_TEMPLATES", "name": "List Task Templates", "description": "Tool to retrieve all task templates from MOCO. Use when you need to get available task templates for creating project tasks or understanding task categories." }, { "slug": "MOCO_LIST_UNITS", "name": "List Units", "description": "Tool to retrieve all units/teams in MOCO. Use when you need to list organizational units/teams or find unit IDs for assignments." }, { "slug": "MOCO_LIST_USER_ROLES", "name": "List User Roles", "description": "Tool to retrieve all user permission roles in MOCO. Returns role IDs, names, and permission settings for various modules. Use when you need to check available roles for user assignment or review permission configurations." }, { "slug": "MOCO_LIST_WORK_TIME_ADJUSTMENTS", "name": "List Work Time Adjustments", "description": "Tool to retrieve all user work time adjustments from MOCO. Use when you need to view hours added or subtracted from users' work time balances (e.g., overtime compensation, vacation corrections)." }, { "slug": "MOCO_OFFER_GET", "name": "Get Offer", "description": "Tool to retrieve a single offer by ID. Use when you have an offer ID and need detailed offer information. Use after confirming the offer ID." }, { "slug": "MOCO_OFFERS_LIST", "name": "List Offers", "description": "Tool to retrieve a list of all offers. Use when you need an overview of offers filtered by status, date range, or identifiers." }, { "slug": "MOCO_PATCH_TAGGINGS", "name": "Patch Taggings", "description": "Tool to partially update taggings by adding new tags to an entity without removing existing tags. Use when you need to append tags to a Company, Contact, Project, Deal, Purchase, Invoice, Offer, or User while preserving existing tags." }, { "slug": "MOCO_PLANNING_ENTRIES_LIST", "name": "List Planning Entries", "description": "Tool to retrieve a list of all planning entries. Use when you need an overview of planned hours filtered by period, user, or project." }, { "slug": "MOCO_PLANNING_ENTRY_CREATE", "name": "Create Planning Entry", "description": "Tool to create a new planning entry. Use when you need to allocate working hours to a project or deal." }, { "slug": "MOCO_PLANNING_ENTRY_GET", "name": "Get Planning Entry", "description": "Tool to retrieve a single planning entry by ID. Use when you need detailed information for a specific planning entry after confirming its ID." }, { "slug": "MOCO_PROJECT_CREATE", "name": "Create Project", "description": "Tool to create a new project in MOCO. Use when you need to provision a project with validated parameters." }, { "slug": "MOCO_PROJECT_GET", "name": "Get Project", "description": "Retrieves comprehensive details for a specific project by its ID. Returns complete project information including budget, billing details, dates, assigned tasks, team members, and customer information. Use this action when you need detailed information about a specific project after obtaining its ID (e.g., from MOCO_PROJECTS_LIST)." }, { "slug": "MOCO_PROJECTS_LIST", "name": "List Projects", "description": "Tool to retrieve a list of all projects. Use when you need an overview of projects optionally filtered by company, leader, date range, or tags after confirming criteria." }, { "slug": "MOCO_PROJECT_UPDATE", "name": "Update Project", "description": "Tool to update an existing project. Use when you need to modify project details after confirming the project ID." }, { "slug": "MOCO_PURCHASE_CREATE", "name": "Create Purchase", "description": "Tool to create a new purchase. Use when you need to log an expense record after gathering date, items, and payment info." }, { "slug": "MOCO_SEND_INVOICE_EMAIL", "name": "Send Invoice by Email", "description": "Tool to send an invoice by email. Use when you need to email an invoice to a customer with custom subject and message." }, { "slug": "MOCO_SEND_INVOICE_REMINDER_EMAIL", "name": "Send Invoice Reminder Email", "description": "Tool to send an invoice reminder by email. Use when you need to email a payment reminder to a customer for an overdue invoice." }, { "slug": "MOCO_SEND_OFFER_EMAIL", "name": "Send Offer Email", "description": "Tool to send an offer by email to specified recipients. Use when you need to email an offer to clients or contacts with custom subject and message." }, { "slug": "MOCO_SHARE_PROJECT", "name": "Share Project", "description": "Tool to activate project report sharing and get a shareable URL. Use when you need to enable public access to a project's report." }, { "slug": "MOCO_START_TIMER", "name": "Start Activity Timer", "description": "Tool to start or continue a timer on an activity. Use when you need to track time on a specific activity in real-time. The activity must be from the current day, and only one timer can be running at a time per user." }, { "slug": "MOCO_STOP_ACTIVITY_TIMER", "name": "Stop Activity Timer", "description": "Tool to stop a timer running on an activity. Use when you need to end time tracking for a currently running activity timer." }, { "slug": "MOCO_UNASSIGN_PROJECT_GROUP", "name": "Unassign Project from Project Group", "description": "Tool to unassign a project from its project group. Use when you need to remove a project's association with its current project group." }, { "slug": "MOCO_UPDATE_ACCOUNT_CATALOG_SERVICE", "name": "Update Account Catalog Service", "description": "Tool to update a catalog service. Use when you need to modify the title of an existing catalog service entry. Note: Items cannot be updated via this endpoint; use separate item endpoints." }, { "slug": "MOCO_UPDATE_ACCOUNT_CATALOG_SERVICES_ITEMS", "name": "Update Catalog Service Item", "description": "Tool to update an existing item within a catalog service in MOCO. Use when you need to modify details of a catalog service item such as title, quantity, or pricing." }, { "slug": "MOCO_UPDATE_ACCOUNT_CUSTOM_PROPERTIES", "name": "Update Account Custom Properties", "description": "Tool to update a custom property in MOCO. Use when you need to modify name, placeholder, print settings, or notification options for an existing custom property. Note: kind and entity fields cannot be changed." }, { "slug": "MOCO_UPDATE_ACCOUNT_EXPENSE_TEMPLATES", "name": "Update Expense Template", "description": "Tool to update an existing expense template in MOCO. Use when you need to modify pricing, description, or other details of a reusable expense item." }, { "slug": "MOCO_UPDATE_ACCOUNT_INTERNAL_HOURLY_RATES", "name": "Update Account Internal Hourly Rates", "description": "Tool to update internal hourly rates for one or more users for a specific year. Use when you need to set or modify staff cost rates for budgeting and financial planning purposes." }, { "slug": "MOCO_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment on a MOCO resource. Use when you need to modify the text or attachment of a manually created comment." }, { "slug": "MOCO_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company. Use when you need to modify one or more fields of a company after retrieving its details." }, { "slug": "MOCO_UPDATE_CONTACTS_PEOPLE", "name": "Update Contact Person", "description": "Tool to update an existing contact person in MOCO. Use when you need to modify one or more fields of a contact after retrieving its details." }, { "slug": "MOCO_UPDATE_DEAL_CATEGORY", "name": "Update Deal Category", "description": "Tool to update an existing deal category in MOCO. Use when you need to modify the name or probability of a deal category." }, { "slug": "MOCO_UPDATE_HOLIDAY", "name": "Update Holiday", "description": "Tool to update an existing holiday entry in MOCO. Use this to modify annual leave days, vacation allowances, or other holiday entitlements for specific users and years." }, { "slug": "MOCO_UPDATE_INVOICE_STATUS", "name": "Update Invoice Status", "description": "Tool to update an invoice status. Use when you need to change the status of an existing invoice. Only works for actual invoices, not invoice drafts." }, { "slug": "MOCO_UPDATE_OFFER_STATUS", "name": "Update Offer Status", "description": "Tool to update the status of an offer. Use when you need to change an offer's status (e.g., from created to sent, or sent to accepted)." }, { "slug": "MOCO_UPDATE_PLANNING_ENTRY", "name": "Update Planning Entry", "description": "Tool to update an existing planning entry. Use when you need to modify hours, dates, or other details of a planning allocation after confirming the entry exists." }, { "slug": "MOCO_UPDATE_PRESENCE", "name": "Update Presence", "description": "Tool to update a presence entry (work time tracking) in MOCO. Use when you need to modify existing work hours, dates, or home office status for a specific presence record." }, { "slug": "MOCO_UPDATE_PROJECTS_ARCHIVE", "name": "Archive Project", "description": "Tool to archive a project in MOCO. Use when you need to archive a project without deleting it." }, { "slug": "MOCO_UPDATE_PROJECTS_CONTRACTS", "name": "Update Project Contract", "description": "Tool to update a staff assignment to a project. Use when you need to modify budget, hourly rate, or active/billable status of an existing assignment." }, { "slug": "MOCO_UPDATE_PROJECTS_EXPENSES", "name": "Update Project Expense", "description": "Tool to update an additional services entry (expense) on a project. Use when you need to modify existing project expenses like hosting costs or external services. Updates are only possible for expenses that have not yet been billed." }, { "slug": "MOCO_UPDATE_PROJECTS_PAYMENT_SCHEDULES", "name": "Update Project Payment Schedule", "description": "Tool to update a payment schedule entry for a project. Use when you need to modify an existing scheduled payment milestone for a project." }, { "slug": "MOCO_UPDATE_PROJECTS_RECURRING_EXPENSES", "name": "Update Project Recurring Expense", "description": "Tool to update a recurring additional services entry on a project. Use when you need to modify details of an existing recurring expense after confirming both the project ID and recurring expense ID. Note: start_date and period cannot be modified after creation." }, { "slug": "MOCO_UPDATE_PROJECTS_TASKS", "name": "Update Project Task", "description": "Tool to update an existing task on a project in MOCO. Use when you need to modify task details such as budget, hourly rate, billability, or description after the task has been created." }, { "slug": "MOCO_UPDATE_PROJECTS_UNARCHIVE", "name": "Unarchive Project", "description": "Tool to reactivate an archived project. Use when you need to restore a previously archived project to active status." }, { "slug": "MOCO_UPDATE_PURCHASE", "name": "Update Purchase", "description": "Tool to update an existing purchase. Use when you need to modify purchase details after confirming the purchase ID." }, { "slug": "MOCO_UPDATE_PURCHASES_STORE_DOCUMENT", "name": "Update Purchase Document", "description": "Tool to update or store a purchase document. Use when you need to attach a document file to an existing purchase or replace an existing document. The file is uploaded using multipart/form-data format." }, { "slug": "MOCO_UPDATE_PURCHASE_STATUS", "name": "Update Purchase Status", "description": "Tool to update the status of a purchase. Use when you need to change a purchase status between pending and archived." }, { "slug": "MOCO_UPDATE_RECEIPT", "name": "Update Receipt", "description": "Tool to update an existing receipt. Use when you need to modify receipt details such as title, currency, or line items after confirming the receipt exists." }, { "slug": "MOCO_UPDATE_SCHEDULE", "name": "Update Schedule", "description": "Tool to update a planning entry (absence/schedule). Use when you need to modify existing absences such as holidays, sick days, or other time off." }, { "slug": "MOCO_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag in MOCO. Use when you need to change a tag's name or color." }, { "slug": "MOCO_UPDATE_TAGGINGS", "name": "Update Taggings", "description": "Tool to replace all tags associated with an entity. Use when you need to set the complete tag list for a Company, Contact, Project, Deal, Purchase, Invoice, Offer, or User. This operation replaces all existing tags with the provided list." }, { "slug": "MOCO_UPDATE_TASK_TEMPLATE", "name": "Update Task Template", "description": "Tool to update an existing task template in MOCO. Use when you need to modify the properties of an existing task template." }, { "slug": "MOCO_UPDATE_UNIT", "name": "Update Unit", "description": "Tool to update an existing unit/team. Use when you need to modify unit details after confirming the unit ID." }, { "slug": "MOCO_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing staff member/user in MOCO. Use when you need to modify user information such as contact details, role, status, or team assignment. Note that a related employment must be terminated separately through the employment endpoint." }, { "slug": "MOCO_UPDATE_USERS_EMPLOYMENTS", "name": "Update User Employment", "description": "Tool to update a user employment record. Use when you need to modify work hours patterns, employment dates, or user assignment for an existing employment." }, { "slug": "MOCO_UPDATE_USERS_WORK_TIME_ADJUSTMENTS", "name": "Update Work Time Adjustment", "description": "Tool to update an existing work time adjustment in MOCO. Use when you need to modify details of a previously created work time adjustment (e.g., changing hours, description, or date)." }, { "slug": "MOCO_USERS_LIST", "name": "List Users", "description": "List all users in MOCO with optional filters. Returns user IDs, names, contact info, tags, and status. Useful for getting user/staff IDs for assignments, finding team members by tags, or checking user availability." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moco_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "MOCO Account Subdomain", "type": "string", "description": "The subdomain of your MOCO account, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "MOCO API Key", "type": "string", "description": "The API key used for authenticating requests to the MOCO API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "modelry", "name": "Modelry", "logo": "https://logos.composio.dev/api/modelry", "description": "Modelry is a 3D visualization platform for eCommerce that creates custom 3D product models, AR experiences, and digital asset management.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MODELRY_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Create a new workspace or return an existing one with the same name. Workspaces are used to organize products and embeds in Modelry. If workspace creation is not supported by the API, this tool will return an existing workspace matching the requested name." }, { "slug": "MODELRY_DELETE_EMBED", "name": "Delete Modelry Embed", "description": "Tool to delete an embed. Tries multiple common endpoint patterns and treats 404 as idempotent success after exhausting candidates (embed already deleted or not found)." }, { "slug": "MODELRY_DELETE_PRODUCT", "name": "Delete Modelry Product", "description": "Permanently deletes a product from Modelry by its ID. Use this action to remove a product that is no longer needed. This operation is idempotent - deleting an already-deleted product will succeed without error. Prerequisites: - Obtain the product ID using MODELRY_LIST_PRODUCTS first - Ensure you have delete permissions for the product WARNING: This action is destructive and cannot be undone." }, { "slug": "MODELRY_DELETE_PRODUCT_REPOSITORY", "name": "Delete Product Repository", "description": "Permanently delete a product repository from Modelry. This action is idempotent - deleting a non-existent repository returns success. Use the list product repositories action first to get valid repository IDs." }, { "slug": "MODELRY_DELETE_WORKSPACE", "name": "Delete Modelry Workspace", "description": "Permanently deletes a Modelry workspace. This action is idempotent - deleting a non-existent workspace will return success. Use the list workspaces action first to get valid workspace IDs. WARNING: This is a destructive action that cannot be undone." }, { "slug": "MODELRY_GET_EMBED", "name": "Get Embed", "description": "Retrieve details of a specific Modelry embed (3D viewer or AR experience for eCommerce). Use MODELRY_LIST_EMBEDS first to obtain valid embed IDs. Returns embed metadata including status, workspace, and configuration details." }, { "slug": "MODELRY_GET_WORKSPACE", "name": "Get Workspace", "description": "Retrieves details for a specific Modelry workspace by its ID or name. The workspace ID can be obtained from the List Workspaces action. This action fetches all workspaces and returns the matching one." }, { "slug": "MODELRY_LIST_EMBEDS", "name": "List Embeds", "description": "List embeds in Modelry. Embeds are 3D viewer/AR embed codes for products. Use to retrieve embed IDs for downstream actions (e.g., MODELRY_GET_EMBED, MODELRY_DELETE_EMBED). Returns empty list if no embeds exist. Supports pagination and optional workspace filtering." }, { "slug": "MODELRY_LIST_MODELING_REQUESTS", "name": "List Modeling Requests", "description": "List all 3D modeling requests in a workspace. Requires workspace_id to scope the request. Returns modeling requests with their status and metadata." }, { "slug": "MODELRY_LIST_PRODUCT_REPOSITORIES", "name": "List Product Repositories", "description": "Tool to list all product repositories in a workspace. Use after confirming the workspace ID." }, { "slug": "MODELRY_LIST_PRODUCTS", "name": "List Modelry Products", "description": "List all products in Modelry. Returns paginated product data including IDs, names, and metadata. Use this to retrieve product IDs needed for other product-related actions like delete or get details. Optionally scope to a specific workspace using workspace_id parameter." }, { "slug": "MODELRY_LIST_WORKSPACES", "name": "List Modelry Workspaces", "description": "Tool to list all workspaces in Modelry. Use when you need to retrieve available workspaces after authenticating." }, { "slug": "MODELRY_ORDER_MODELING_SERVICE", "name": "Order Modeling Service", "description": "Tool to place an order for 3D modeling services. Use when workspace and product IDs are known and modeling specifications are ready." }, { "slug": "MODELRY_TRACK_MODELING_PROGRESS", "name": "Track Modeling Progress", "description": "Tool to track the progress of a 3D modeling request. Use after initiating a modeling job to poll current status and completion percentage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "modelry_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Modelry API Token", "type": "string", "description": "The API token used for authenticating requests to the Modelry API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "modern_treasury", "name": "Modern Treasury", "logo": "https://logos.composio.dev/api/modern_treasury", "description": "Payment operations software for managing payments, banking, and reconciliation", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "modern_treasury_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Organization ID", "type": "string", "description": "Your Modern Treasury organization ID. You can retrieve this from the API keys page at https://app.moderntreasury.com/developers/api_keys", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your Modern Treasury API key (production or sandbox). You can retrieve your API keys from https://app.moderntreasury.com/developers/api_keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mojo_helpdesk", "name": "Mojo Helpdesk", "logo": "https://logos.composio.dev/api/mojo_helpdesk", "description": "Cloud-based help desk and ticketing system for customer support and IT service management", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mojo_helpdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Access Key", "type": "string", "description": "Get your access key from Account administration > Agent & teams > Agent list > Dev Settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moneybird", "name": "Moneybird", "logo": "https://logos.composio.dev/api/moneybird", "description": "Moneybird is an online invoicing and accounting platform designed for small businesses and freelancers, offering features like invoicing, expense tracking, and financial reporting.", "category": "accounting", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MONEYBIRD_ADD_NOTE_TO_CONTACT", "name": "Add Note to Contact", "description": "Tool to add a note or to-do to a contact. Use when you need to record a comment or assign a task to a contact." }, { "slug": "MONEYBIRD_ARCHIVE_CONTACT", "name": "Archive Contact", "description": "Tool to archive a contact. Use when a contact is no longer needed and should be hidden permanently." }, { "slug": "MONEYBIRD_CREATE_CONTACT", "name": "Create Moneybird Contact", "description": "Tool to create a new contact in Moneybird. Use after you have an administration ID and need to onboard a new company/person. Provide either company_name or both firstname and lastname." }, { "slug": "MONEYBIRD_CREATE_CONTACT_PERSON", "name": "Create Contact Person", "description": "Tool to create a new contact person. Use when you have the contact ID and need to add a person after confirming their firstname and lastname." }, { "slug": "MONEYBIRD_CREATE_SALES_INVOICE", "name": "Create Sales Invoice", "description": "Tool to create a new sales invoice. Use when you need to bill a contact with specified line items." }, { "slug": "MONEYBIRD_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact. Use after confirming that contact should be removed." }, { "slug": "MONEYBIRD_DELETE_CONTACT_NOTE", "name": "Delete Contact Note", "description": "Tool to delete a note from a contact. Use when a note is no longer needed and should be removed permanently." }, { "slug": "MONEYBIRD_DELETE_CONTACT_PERSON", "name": "Delete Contact Person", "description": "Tool to delete a contact person from a contact. Use after confirming the administration_id, contact_id, and contact_person_id." }, { "slug": "MONEYBIRD_FILTER_CONTACTS", "name": "Filter Contacts", "description": "Tool to filter contacts. Use when you need to retrieve contacts matching specific criteria like created_after or first_name." }, { "slug": "MONEYBIRD_GET_ADDITIONAL_CHARGES", "name": "Get Additional Charges", "description": "Tool to get additional charges for a contact. Use when you need to view pending (or optionally billed) usage or recurring charges." }, { "slug": "MONEYBIRD_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve all information about a specific contact by ID. Use when you need the full details of a contact, for example before generating invoices." }, { "slug": "MONEYBIRD_GET_CONTACT_BY_CUSTOMER_ID", "name": "Get Contact by Customer ID", "description": "Tool to retrieve full contact details by customer ID. Use when you need all fields of a contact given its customer_id." }, { "slug": "MONEYBIRD_GET_CONTACT_PERSON", "name": "Get Contact Person", "description": "Tool to get all information about a contact person. Use when you have the administration, contact, and contact person IDs and need full details before updating." }, { "slug": "MONEYBIRD_GET_SALES_INVOICE", "name": "Get Sales Invoice", "description": "Tool to get a single sales invoice by ID. Use when you need detailed invoice data for a known invoice ID." }, { "slug": "MONEYBIRD_LIST_ADMINISTRATIONS", "name": "List Administrations", "description": "Tool to list all administrations accessible by the authenticated user. Use when you need to obtain administration_id for subsequent operations like create_contact." }, { "slug": "MONEYBIRD_LIST_CONTACTS_SYNCHRONIZATION", "name": "List Contacts Synchronization", "description": "Tool to list all contact IDs and versions for synchronization. Use when you need to detect which contacts have changed and update local data accordingly." }, { "slug": "MONEYBIRD_LIST_SALES_INVOICES", "name": "List Sales Invoices", "description": "Tool to list all sales invoices in an administration. Use when you need an overview of invoices for a given administration." }, { "slug": "MONEYBIRD_REQUEST_CONTACT_PAYMENTS_MANDATE_URL", "name": "Request Payments Mandate URL", "description": "Tool to request a URL for setting up a Payments mandate. Use when you need to generate a direct-debit authorization link for a contact (valid for 14 days)." }, { "slug": "MONEYBIRD_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update a contact. Use when you need to modify existing contact details by ID. Only provided fields will be changed." }, { "slug": "MONEYBIRD_UPDATE_CONTACT_PERSON", "name": "Update Contact Person", "description": "Tool to update a contact person. Use after selecting a specific contact person when you need to change their details." }, { "slug": "MONEYBIRD_UPDATE_SALES_INVOICE", "name": "Update Sales Invoice", "description": "Tool to update an existing sales invoice by ID. Use when modifying invoice header or line items." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "moneybird_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "sales_invoices" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "moneybird_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "The personal API token generated for authenticating API requests.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Administration ID", "type": "string", "description": "The unique identifier for the administration to access.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moonclerk", "name": "Moonclerk", "logo": "https://logos.composio.dev/api/moonclerk", "description": "MoonClerk is a platform that enables businesses to accept recurring and one-time online payments.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOONCLERK_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list customers (plans) from MoonClerk. Use when you need to retrieve customer data with optional filters. Use after authenticating API credentials." }, { "slug": "MOONCLERK_LIST_FORMS", "name": "List Payment Forms", "description": "Tool to retrieve a list of all payment forms. Use after authenticating to inspect available payment forms." }, { "slug": "MOONCLERK_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list payments. Use when you need to retrieve all payments or filter by form, customer, date range, or status after authenticating." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moonclerk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MoonClerk API Key", "type": "string", "description": "The API key used for authenticating requests to the MoonClerk API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "moosend", "name": "Moosend", "logo": "https://logos.composio.dev/api/moosend", "description": "Moosend is a cloud-based, AI-powered email marketing solution that allows you to target your audience at scale.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOOSEND_ADD_SEGMENT_CRITERIA", "name": "Add Segment Criteria", "description": "Tool to add a new criterion (rule) to a segment. Use after obtaining the mailing list ID and segment ID to define filtering criteria." }, { "slug": "MOOSEND_ADD_SUBSCRIBER", "name": "Add or Update Subscriber", "description": "Tool to add or update a subscriber in a mailing list. Use after obtaining the mailing list ID to manage subscribers." }, { "slug": "MOOSEND_CLONE_CAMPAIGN", "name": "Clone Campaign", "description": "Tool to clone an existing campaign, creating an exact copy with the same content and settings. Use when you want to reuse a campaign template or create variations of an existing campaign. The cloned campaign is created as a new draft that can be modified independently." }, { "slug": "MOOSEND_CREATE_CUSTOM_FIELD", "name": "Create custom field", "description": "Tool to create a custom field in a mailing list. Use when you need to define a new custom field for subscriber data." }, { "slug": "MOOSEND_CREATE_MAILING_LIST", "name": "Create Mailing List", "description": "Tool to create a new empty mailing list in Moosend. Use after obtaining API key." }, { "slug": "MOOSEND_CREATE_SEGMENT", "name": "Create Segment", "description": "Tool to create a new segment for a mailing list. Use to organize subscribers based on criteria or create empty segments for future use." }, { "slug": "MOOSEND_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Permanently deletes a campaign from your Moosend account by its ID. This action removes draft or sent campaigns irreversibly. Use this when you need to clean up campaigns that are no longer needed. The campaign ID can be obtained from listing campaigns or retrieved when a campaign is created. Always verify the campaign ID before deletion as this operation cannot be undone." }, { "slug": "MOOSEND_DELETE_CUSTOM_FIELD", "name": "Delete custom field", "description": "Tool to remove a custom field definition from a mailing list. Use when you have confirmed the custom field ID to delete." }, { "slug": "MOOSEND_DELETE_MAILING_LIST", "name": "Delete Mailing List", "description": "Tool to delete a mailing list. Use when you need to permanently remove a mailing list from your Moosend account after confirming its ID. Deletion is irreversible." }, { "slug": "MOOSEND_GET_ALL_CAMPAIGNS", "name": "Get all campaigns", "description": "Tool to retrieve a list of all campaigns in your account. Use after acquiring valid API credentials to explore campaign data." }, { "slug": "MOOSEND_GET_ALL_SUBSCRIBERS", "name": "Get All Subscribers", "description": "Retrieves all subscribers from a specified mailing list, filtered by their subscription status (Subscribed, Unsubscribed, Bounced, or Removed). Returns paginated results with subscriber details including email, name, custom fields, and subscription timestamps." }, { "slug": "MOOSEND_GET_CAMPAIGN_DETAILS", "name": "Get Campaign Details", "description": "Retrieves comprehensive details about a specific campaign by its ID. Returns complete campaign information including configuration, status, content, and settings. Use this when you need to inspect or verify campaign properties." }, { "slug": "MOOSEND_GET_CAMPAIGN_STATS_BY_LOCATION", "name": "Get Campaign Stats by Location", "description": "Retrieves a detailed report of campaign opens (unique and total) by country. Use this when you need to analyze the geographic distribution of email campaign engagement." }, { "slug": "MOOSEND_GET_MAILING_LIST_DETAILS", "name": "Get Mailing List Details", "description": "Gets details for a given mailing list including name, member counts, status, and custom field definitions. Optionally include subscriber statistics. Use this when you need to inspect mailing list properties or verify list configuration." }, { "slug": "MOOSEND_GET_SUBSCRIBER_BY_EMAIL", "name": "Get Subscriber By Email", "description": "Retrieves detailed subscriber information by email address from a specific mailing list. Returns comprehensive subscriber data including ID, name, subscription status, custom fields, tags, preferences, and timestamps for creation, updates, and unsubscribe events. Use this when you need to: - Look up a subscriber's details using their email address - Check if an email is already subscribed to a list - Retrieve custom field values for a subscriber - Check subscription status and history Example: \"Get subscriber details for jane.doe@example.com in list 04fad8e2-...\"" }, { "slug": "MOOSEND_LIST_ALL_MAILING_LISTS", "name": "List all mailing lists", "description": "Tool to get a list of your active mailing lists in your account. Use after acquiring valid API credentials to explore mailing list data. Optionally include statistics and sort results by various fields." }, { "slug": "MOOSEND_LIST_ALL_SENDERS", "name": "List all senders", "description": "Tool to retrieve a list of all active senders in your account. Use when you need to view available sender email addresses for campaigns." }, { "slug": "MOOSEND_LIST_CAMPAIGNS_WITH_PAGING", "name": "List campaigns with paging", "description": "Tool to retrieve a paginated list of all campaigns in your account with detailed information. Use when you need to fetch campaigns with specific page size and sorting options. Paging information is required as input." }, { "slug": "MOOSEND_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to get a list of all segments with their criteria for a specified mailing list. Use when you need to retrieve segment definitions for targeting specific subscriber groups." }, { "slug": "MOOSEND_REMOVE_MULTIPLE_SUBSCRIBERS", "name": "Remove Multiple Subscribers", "description": "Tool to permanently remove multiple subscribers from a mailing list. Use when you need to delete multiple subscribers permanently without adding them to the suppression list. Invalid email addresses are automatically ignored." }, { "slug": "MOOSEND_SCHEDULE_CAMPAIGN", "name": "Schedule Campaign", "description": "Tool to schedule a campaign. Use when you want to set a specific date and time for campaign delivery after confirming its ID." }, { "slug": "MOOSEND_SEND_CAMPAIGN", "name": "Send Campaign", "description": "Tool to send an existing draft campaign immediately. Use when you want to dispatch a campaign to all recipients after final review." }, { "slug": "MOOSEND_UNSCHEDULE_CAMPAIGN", "name": "Unschedule Campaign", "description": "Tool to unschedule a campaign. Removes a previously defined scheduled date and time from a campaign, so that it will be delivered immediately if already queued or when sent." }, { "slug": "MOOSEND_UNSUBSCRIBE_FROM_ACCOUNT", "name": "Unsubscribe From Account", "description": "Tool to unsubscribe a subscriber from the account. Use when you need to remove a subscriber from all mailing lists. Note: Rate limit is 20 requests per 10 seconds per API key." }, { "slug": "MOOSEND_UNSUBSCRIBE_FROM_MAILING_LIST", "name": "Unsubscribe from Mailing List", "description": "Tool to unsubscribe a subscriber from a specified mailing list. Use when you need to remove a subscriber's active subscription. Rate limit: 20 requests per 10 seconds per API key." }, { "slug": "MOOSEND_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update a draft campaign. Use when you want to modify properties of an existing draft campaign before sending." }, { "slug": "MOOSEND_UPDATE_CUSTOM_FIELD", "name": "Update custom field", "description": "Tool to update properties of an existing custom field in a mailing list. Use after confirming mailing list and custom field IDs." }, { "slug": "MOOSEND_UPDATE_MAILING_LIST", "name": "Update Mailing List", "description": "Tool to update the properties of an existing mailing list. Use when you need to change list metadata after confirming the list ID." }, { "slug": "MOOSEND_UPDATE_SEGMENT", "name": "Update Segment", "description": "Tool to update properties and criteria of an existing segment. Use when you need to modify segment name, match type, or filtering criteria." }, { "slug": "MOOSEND_UPDATE_SEGMENT_CRITERIA", "name": "Update Segment Criteria", "description": "Tool to update an existing criterion in a segment. Use when you need to modify filtering rules for a mailing list segment." }, { "slug": "MOOSEND_UPDATE_SUBSCRIBER", "name": "Update Subscriber", "description": "Tool to update a subscriber in the specified mailing list. Use when you need to modify subscriber information like email, name, or custom fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "moosend_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Moosend API Key", "type": "string", "description": "Your Moosend API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "motion", "name": "Motion", "logo": "https://logos.composio.dev/api/motion", "description": "Motion is an intelligent calendar and project management tool that automatically plans your day, schedules meetings, and helps teams collaborate efficiently.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MOTION_ADD_CUSTOM_FIELD_TO_PROJECT", "name": "Add Custom Field to Project", "description": "Tool to add a custom field value to a project in Motion. Use when you need to set or update custom field data on an existing project." }, { "slug": "MOTION_ADD_CUSTOM_FIELD_TO_TASK", "name": "Add Custom Field to Task", "description": "Tool to add a custom field value to a task in Motion. Use when you need to set or update custom field data on an existing task." }, { "slug": "MOTION_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a new comment on a Motion task. Use when you need to add a comment to an existing task." }, { "slug": "MOTION_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a new custom field in a Motion workspace. Use when you need to add custom fields like text, select options, dates, or other field types to customize your workspace. For select/multiSelect types, provide options in metadata." }, { "slug": "MOTION_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in Motion. Use when you need to create a project within a specific workspace. Projects can have optional due dates, descriptions (HTML supported), labels, and priority levels." }, { "slug": "MOTION_CREATE_RECURRING_TASK", "name": "Create Recurring Task", "description": "Tool to create a new recurring task in Motion. Use when you need to set up tasks that repeat on a schedule (daily, weekly, monthly, etc.). Recurring tasks automatically generate task instances based on the specified frequency pattern." }, { "slug": "MOTION_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Motion. Use when you need to add a task to a workspace with specified properties like name, priority, due date, and assignee." }, { "slug": "MOTION_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field from Motion workspace. Use when you need to remove a custom field that is no longer needed. This operation is permanent and cannot be undone." }, { "slug": "MOTION_DELETE_CUSTOM_FIELD_FROM_PROJECT", "name": "Delete Custom Field From Project", "description": "Tool to delete a custom field value from a project in Motion. Use when you need to remove a custom field value from a specific project." }, { "slug": "MOTION_DELETE_CUSTOM_FIELD_FROM_TASK", "name": "Delete Custom Field From Task", "description": "Tool to delete a custom field value from a task in Motion. Use when you need to remove a custom field value from a specific task by providing the task ID and custom field value ID." }, { "slug": "MOTION_DELETE_RECURRING_TASK", "name": "Delete Recurring Task", "description": "Tool to delete a recurring task from Motion based on the ID supplied. Use when you need to remove a recurring task permanently from the system." }, { "slug": "MOTION_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task from Motion based on task ID. Use when you need to permanently remove a task from the Motion workspace." }, { "slug": "MOTION_GET_MY_USER", "name": "Get My User Information", "description": "Tool to get information on the owner of the API key. Use when you need to retrieve the current user's profile details including their ID, name, and email address." }, { "slug": "MOTION_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a single project by its ID. Use when you need to get detailed information about a specific project including its name, description, status, and custom field values." }, { "slug": "MOTION_GET_TASK", "name": "Get Task by ID", "description": "Tool to retrieve a task by its ID from Motion. Returns complete task details including title, description, due date, priority, assignees, scheduling information, and custom fields." }, { "slug": "MOTION_LIST_COMMENTS", "name": "List comments on task", "description": "Tool to get all comments on a specific task. Use when you need to retrieve comment history for a task. Supports cursor-based pagination for tasks with many comments." }, { "slug": "MOTION_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to retrieve all custom fields for a given Motion workspace. Use when you need to see what custom fields are available in a workspace." }, { "slug": "MOTION_LIST_PROJECTS", "name": "List Projects", "description": "Tool to get all projects for a workspace. Use when you need to retrieve all projects accessible to the API key, optionally filtered by workspace." }, { "slug": "MOTION_LIST_RECURRING_TASKS", "name": "List Recurring Tasks", "description": "Tool to get all recurring tasks for a workspace. Use when you need to retrieve recurring task information from Motion." }, { "slug": "MOTION_LIST_SCHEDULES", "name": "List Schedules", "description": "Tool to get a list of schedules for your user. Use when you need to retrieve the user's scheduling configuration including work hours and timezone settings." }, { "slug": "MOTION_LIST_STATUSES", "name": "List Statuses", "description": "Tool to get a list of statuses for a Motion workspace. Use when you need to retrieve available task statuses for a workspace." }, { "slug": "MOTION_LIST_TASKS", "name": "List Tasks", "description": "Tool to get all tasks for a given query with optional filtering. Use when you need to retrieve tasks from Motion, optionally filtered by assignee, project, workspace, status, label, or name." }, { "slug": "MOTION_LIST_USERS", "name": "List users", "description": "Tool to get a list of users for a given workspace or team. Use when you need to retrieve user information from Motion. Supports pagination via cursor and filtering by workspaceId or teamId." }, { "slug": "MOTION_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to retrieve all workspaces a user has access to. Use when you need to discover available workspaces, filter for specific workspace IDs, or paginate through workspace results. Returns workspace details including type, team, labels, and statuses." }, { "slug": "MOTION_MOVE_TASK", "name": "Move Task to Workspace", "description": "Tool to move a task to a different workspace in Motion. Use when you need to relocate a task from one workspace to another." }, { "slug": "MOTION_UNASSIGN_TASK", "name": "Unassign Task", "description": "Tool to unassign a task from its current assignee. Use when you need to remove the assignee from a task, leaving the task unassigned." }, { "slug": "MOTION_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in Motion. Use when you need to modify task properties like name, priority, due date, status, or assignee. Only provide the fields you want to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "motion_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Motion API key. Create one from Motion Settings > API tab. The key is shown only once during creation.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "msg91", "name": "Msg91", "logo": "https://logos.composio.dev/api/msg91", "description": "MSG91 is a cloud communication platform offering secure and robust APIs for SMS, WhatsApp, Email, Voice, and more, enabling businesses to connect with their customers across multiple channels.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MSG91_CREATE_USER_EVENTS", "name": "Create User Events", "description": "Create and track user events in MSG91 Segmento for customer behavior analysis and segmentation. Use this tool to record user actions and behaviors such as logins, purchases, page views, button clicks, or any custom events. These events help build user profiles and enable targeted campaigns based on user behavior. Examples: - Track user login events for engagement analysis - Record purchase events with product details for sales tracking - Log page views and clicks for behavior analytics - Capture custom events with properties for detailed segmentation" }, { "slug": "MSG91_GET_EVENT_TYPES", "name": "Get Event Types", "description": "Retrieves all event types configured in MSG91 Segmento. Event types represent different user actions and behaviors that can be tracked (e.g., purchases, signups, page views). Use this action to discover what events are available for tracking user behavior in your Segmento account. No parameters required - returns all event types." }, { "slug": "MSG91_GET_FAILED_EVENTS", "name": "Get Failed Events", "description": "Retrieve failed user events from a MSG91 Segmento campaign. This tool fetches events that failed to process during campaign execution, helping you identify and debug issues such as validation errors, invalid recipients, or missing required data. Use this when you need to: - Investigate why certain events didn't process successfully - Get detailed failure reasons for troubleshooting - Monitor campaign health and identify patterns in failures - Retrieve failed events within a specific date range Results are paginated for large datasets. Requires a valid campaign_id from a Segmento campaign." }, { "slug": "MSG91_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list all campaigns in Segmento. Use when you need to retrieve campaigns with pagination support." }, { "slug": "MSG91_RESEND_OTP", "name": "Resend OTP", "description": "Resend OTP to the same mobile number via text message or voice call. Use when the original OTP was not received or expired, and the user needs a new code sent to the same number." }, { "slug": "MSG91_SEND_OTP", "name": "Send OTP", "description": "Tool to send OTP (One-Time Password) to a mobile number using a pre-configured MSG91 template. Use when you need to verify user phone numbers for authentication, account registration, password reset, or transaction confirmation." }, { "slug": "MSG91_SEND_SMS_V5", "name": "Send SMS via Flow (V5)", "description": "Send SMS messages using pre-defined templates via MSG91 Flow API v5. Use when you need to send template-based SMS with dynamic variable substitution to single or multiple recipients. Templates must be created and approved in MSG91 dashboard before use." }, { "slug": "MSG91_VERIFY_OTP", "name": "Verify OTP", "description": "Tool to verify an OTP (One-Time Password) sent to a mobile number. Use when you need to confirm that the OTP code entered by the user matches the one sent via Send OTP API." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "msg91_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MSG91 Authkey", "type": "string", "description": "The authentication key (Authkey) used to authenticate API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "murlist", "name": "Murlist", "logo": "https://logos.composio.dev/api/murlist", "description": "Murlist works on autopilot to generate, score, verify and convert leads", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "murlist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your MurList account, select workspace, go to Settings → API Key to generate or retrieve your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mux", "name": "Mux", "logo": "https://logos.composio.dev/api/mux", "description": "Build better video: Stream beautiful video to any device and monitor your video performance with APIs.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "mux_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Access Token ID", "type": "string", "description": "Your Mux Access Token ID (created at https://dashboard.mux.com/settings/access-tokens)", "required": true, "default": null }, { "name": "password", "displayName": "Access Token Secret", "type": "string", "description": "Your Mux Access Token Secret (shown only once when created)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mx_technologies", "name": "MX Technologies", "logo": "https://logos.composio.dev/api/mx_technologies", "description": "MX Technologies provides a comprehensive API platform for aggregating and enhancing financial data, enabling seamless connections to numerous financial institutions.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MX_TECHNOLOGIES_CANCEL_PARTNER_ACCOUNT", "name": "Disable MX User Account", "description": "Disables an MX user account, preventing background updates to accounts and transactions and restricting data access. The user can be re-enabled later via the update user endpoint. Uses MX Platform API: PUT /users/{user_guid} with is_disabled=true." }, { "slug": "MX_TECHNOLOGIES_CREATE_ACCOUNT", "name": "Create account", "description": "Creates a manual account for a specified user in MX Platform. Use this tool when you need to: - Add an external/off-platform account that isn't aggregated through MX - Create a test account for development purposes - Track accounts from institutions not supported by MX aggregation Note: Manual accounts do not aggregate data from financial institutions. They are created under the special 'Manual Institution' member and require manual updates for balance and transaction information. Requires: A valid user_guid (obtained from List Users or Create User)." }, { "slug": "MX_TECHNOLOGIES_CREATE_AUDIENCE_API_CREDENTIALS", "name": "Retrieve Audience API Credentials", "description": "Tool to retrieve Audience API credentials. Use when obtaining client_id and client_secret for Audience Service authentication before generating an access token. Credentials must be created in the Partner Dashboard (Partner Administrator → Authentication → Audience API Key). The tool prefers explicitly provided values, then falls back to environment variables." }, { "slug": "MX_TECHNOLOGIES_CREATE_MEMBER", "name": "Create member", "description": "Create a member to connect a user to a financial institution. A member represents the relationship between an MX user and a financial institution. For non-OAuth institutions, provide credentials obtained from List Institution Credentials. For OAuth institutions, set is_oauth=true and use the returned oauth_window_uri. Prerequisites: - user_guid from List Users or Create User - institution_code from List Institutions - credentials from List Institution Credentials (for non-OAuth) Test credentials for MX Bank (mxbank): username='mxuser', password='password'" }, { "slug": "MX_TECHNOLOGIES_CREATE_PARTNER_ACCOUNT", "name": "Create Partner Account", "description": "Create a new user (partner account) in the MX Platform. Users represent end-users in your application and are required before creating members, accounts, or accessing financial data. Use this tool to provision a new user record in MX." }, { "slug": "MX_TECHNOLOGIES_FETCH_REWARDS", "name": "Fetch rewards", "description": "Initiate rewards aggregation for a specific member. This triggers an async job to gather rewards data (points, miles, etc.) from the member's financial institution. Use List Rewards to retrieve the results after aggregation completes." }, { "slug": "MX_TECHNOLOGIES_GET_CONFIGURABLE_WIDGET_URL", "name": "Get configurable widget URL", "description": "Retrieve a configurable widget URL for embedding MX widgets (Connect, Transactions, Pulse, etc.). Use this tool to generate a single-use URL for displaying MX widgets to end users. The URL expires after 10 minutes or immediately upon first use, so always request a fresh URL when loading the widget. Requires a valid user_guid (obtained from list_users or create_user actions)." }, { "slug": "MX_TECHNOLOGIES_LIST_ACCOUNT_NUMBERS_BY_MEMBER", "name": "List Account Numbers by Member", "description": "Tool to list account numbers for a specific member. Use after obtaining user and member GUIDs." }, { "slug": "MX_TECHNOLOGIES_LIST_ACCOUNT_OWNERS", "name": "List account owners", "description": "Tool to list account owners for a specific member. Returns identity information (name, address, contact details) for all account owners associated with the member's accounts. Requires user_guid and member_guid. Use this to retrieve account holder identity data for verification or compliance purposes." }, { "slug": "MX_TECHNOLOGIES_LIST_ACCOUNTS", "name": "List accounts", "description": "Tool to list all accounts for a user. Use after confirming the user GUID." }, { "slug": "MX_TECHNOLOGIES_LIST_BUDGETS", "name": "List budgets", "description": "List all budgets for a specific MX user. Budgets track spending limits for categories. Prerequisites: Obtain a valid user_guid from the List Users endpoint first. Note: Budgets are automatically generated based on transaction history or can be manually created. If a user has no budgets, an empty list is returned." }, { "slug": "MX_TECHNOLOGIES_LIST_CATEGORIES", "name": "List categories", "description": "Tool to list all categories for a user. Use when you need to fetch both default and custom categories for a given user GUID." }, { "slug": "MX_TECHNOLOGIES_LIST_CHALLENGES", "name": "List challenges", "description": "Tool to list MFA challenges for a member. Use when the member is in CHALLENGED state to retrieve prompts to answer." }, { "slug": "MX_TECHNOLOGIES_LIST_FAVORITE_INSTITUTIONS", "name": "List favorite institutions", "description": "List the partner's favorite financial institutions, sorted by popularity. Use this tool to retrieve institutions that have been pre-configured as favorites for the partner account. Results are paginated and can be filtered by country. Note: Favorite institutions must be configured by MX - contact MX support to set up favorites." }, { "slug": "MX_TECHNOLOGIES_LIST_GOALS", "name": "List goals", "description": "List all financial goals for a specific MX user. Use this to retrieve a paginated list of the user's savings goals, including target amounts, progress, and completion dates. Requires a valid user GUID obtained from the LIST_USERS action." }, { "slug": "MX_TECHNOLOGIES_LIST_INSTITUTION_CREDENTIALS", "name": "List institution credentials", "description": "Tool to list credential fields required by a given institution. Use after selecting the institution code; supports optional pagination." }, { "slug": "MX_TECHNOLOGIES_LIST_INSTITUTIONS", "name": "List institutions", "description": "Tool to list financial institutions supported by MX. Use when you need to retrieve available institutions with optional filters like name, country code, or products; supports pagination." }, { "slug": "MX_TECHNOLOGIES_LIST_MEMBER_ACCOUNTS", "name": "List member accounts", "description": "Tool to list accounts for a specific member. Use when you need to retrieve all accounts associated with a given user and member GUID." }, { "slug": "MX_TECHNOLOGIES_LIST_MEMBERS", "name": "List members", "description": "List all members (financial institution connections) for a specific user. A member represents a connection between a user and a financial institution. Use this tool to retrieve all members linked to a user, including their connection status, aggregation state, and institution details. Useful for checking which accounts are connected, identifying connection issues, or finding member GUIDs for other operations. Returns paginated results with member details and pagination info." }, { "slug": "MX_TECHNOLOGIES_LIST_REWARDS", "name": "List rewards", "description": "Lists rewards and loyalty program data for a specific member. Returns information about points, miles, and other rewards balances from connected financial institutions. Requires valid user_guid (from List Users) and member_guid (from List Members). Supports pagination for large result sets." }, { "slug": "MX_TECHNOLOGIES_LIST_STATEMENTS_BY_MEMBER", "name": "List statements by member", "description": "Retrieve a paginated list of monthly account statements (PDF) for a specific member. Use this tool after obtaining valid user_guid (via LIST_USERS) and member_guid (via LIST_MEMBERS). Statements include bank/credit statements in PDF format. The uri field in each statement can be used to download the actual PDF." }, { "slug": "MX_TECHNOLOGIES_LIST_TAGGINGS", "name": "List taggings", "description": "List all taggings for a specific MX user. Taggings are links between custom tags and transactions - they show which labels have been applied to which transactions. Use this when you need to: - See all tag-transaction associations for a user - Find which transactions have been labeled with custom tags - Audit or review a user's transaction categorization Prerequisites: Obtain a valid user_guid from LIST_USERS first." }, { "slug": "MX_TECHNOLOGIES_LIST_TAGS", "name": "List tags", "description": "List all custom tags associated with a specific MX user. Tags are labels that can be applied to transactions for organization. Every user has a default 'Business' tag. Returns paginated results. Use this to retrieve tag GUIDs needed for tagging transactions." }, { "slug": "MX_TECHNOLOGIES_LIST_TRANSACTIONS", "name": "List transactions", "description": "Retrieve all financial transactions for an MX user across all their connected accounts and members. Use this tool to get a user's complete transaction history. Supports pagination, date filtering, and optional enhanced data (merchants, geolocations, classifications, repeating transactions). Prerequisites: You need a valid MX user GUID (starts with 'USR-'). Get this from the List Users action." }, { "slug": "MX_TECHNOLOGIES_LIST_TRANSACTIONS_BY_MEMBER", "name": "List transactions by member", "description": "Tool to list transactions for a member. Use when you have valid user and member GUIDs and need their transactions." }, { "slug": "MX_TECHNOLOGIES_LIST_USERS", "name": "List users", "description": "List all users in the MX Platform. Use this to retrieve a paginated list of user accounts with optional filters by ID, email, or disabled status. Each user represents an end user accessing MX Platform through your application. Returns user details including guid (MX identifier), id (partner-defined identifier), email, and account status flags." }, { "slug": "MX_TECHNOLOGIES_READ_ACCOUNT", "name": "Read account", "description": "Tool to retrieve details for a specific account. Use after obtaining valid user and account GUIDs to fetch up-to-date account information." }, { "slug": "MX_TECHNOLOGIES_READ_CATEGORY", "name": "Read category", "description": "Tool to retrieve a default category by GUID. Use after confirming the default category GUID." }, { "slug": "MX_TECHNOLOGIES_READ_FDX_ACCOUNT", "name": "Read FDX account", "description": "Retrieve details for a specific account using the FDX 4.6 standard API. This action fetches comprehensive account information including balances, status, and account attributes. It requires an FDX account identifier. AUTHENTICATION: This endpoint requires OAuth Bearer token authentication obtained from the MX Data Access OAuth flow. Basic Auth credentials for the MX Platform API will not work with FDX endpoints. FALLBACK: If FDX endpoints fail and the account_id looks like an MX Platform GUID (starts with 'ACC-' or 'ACT-'), the action will attempt to use the MX Platform API to retrieve the account instead." }, { "slug": "MX_TECHNOLOGIES_READ_INSTITUTION", "name": "Read institution", "description": "Tool to retrieve details for a specific institution by code. Use when you need to get information about a particular financial institution using its unique code." }, { "slug": "MX_TECHNOLOGIES_READ_TRANSACTION", "name": "Read transaction", "description": "Tool to retrieve details for a specific transaction by its GUID. Use when you need to fetch information about a particular transaction for a user." }, { "slug": "MX_TECHNOLOGIES_READ_TRANSACTION_BY_ACCOUNT", "name": "Read transaction by account", "description": "Tool to retrieve details for a specific transaction by account. Use when you need to fetch information about a particular transaction using user, member, account, and transaction identifiers. Supports optional enhancements like merchant details, geolocations, classifications, and repeating transaction patterns." }, { "slug": "MX_TECHNOLOGIES_READ_TRANSACTION_RULE", "name": "Read transaction rule", "description": "Tool to retrieve details for a specific transaction rule by its GUID. Use when you need to fetch information about a particular transaction rule for a user." }, { "slug": "MX_TECHNOLOGIES_UPDATE_TRANSACTION", "name": "Update transaction", "description": "Tool to update a specific transaction's description. Use when you need to modify the description of an existing transaction." }, { "slug": "MX_TECHNOLOGIES_UPDATE_TRANSACTION_RULES", "name": "Update transaction rules", "description": "Tool to update an existing transaction rule. Use when you need to modify how transactions are categorized or described based on pattern matching. Note: Changes to match_description will only be applied to future transactions." }, { "slug": "MX_TECHNOLOGIES_UPDATE_USERS_TAGGINGS", "name": "Update user tagging", "description": "Tool to update a tagging for an MX user. Use when you need to change which tag is associated with a specific transaction. A tagging represents the link between a custom tag and a transaction." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "mx_technologies_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Client ID", "type": "string", "description": "Your MX Client ID from the Client Dashboard (https://dashboard.mx.com).", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your MX API Key from the Client Dashboard (https://dashboard.mx.com).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "mx_toolbox", "name": "MXToolbox", "logo": "https://logos.composio.dev/api/mx_toolbox", "description": "MxToolbox provides a suite of network diagnostic and monitoring tools, including DNS lookups, blacklist checks, and email health analysis.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "MX_TOOLBOX_LOOKUP_BIMI_RECORD", "name": "Lookup BIMI Record", "description": "Retrieves BIMI (Brand Indicators for Message Identification) record and diagnostic information for a domain. BIMI allows organizations to display verified logos in email clients. This tool checks: - Whether a BIMI record exists at default._bimi.{domain} - DMARC policy requirements (quarantine or reject needed for BIMI) - DNS resolution details and nameserver information - Related diagnostic checks and recommendations Returns comprehensive lookup data including passed/failed checks, DMARC records, DNS transcript, and related lookups. Use when verifying email branding configuration or troubleshooting BIMI implementation." }, { "slug": "MX_TOOLBOX_LOOKUP_BLACKLIST", "name": "Lookup Blacklist", "description": "Tool to perform a blacklist check on a domain or IP. Use when you need to verify whether a domain or IP is listed in common blacklists." }, { "slug": "MX_TOOLBOX_LOOKUP_DKIM", "name": "Lookup DKIM Record", "description": "Tool to retrieve DKIM (DomainKeys Identified Mail) records for a domain. DKIM is an email authentication method that helps prevent email spoofing by allowing the receiver to verify that an email was actually sent and authorized by the owner of that domain. Use this tool to verify DKIM configuration and troubleshoot email authentication issues." }, { "slug": "MX_TOOLBOX_LOOKUP_DMARC", "name": "Lookup DMARC Record", "description": "Retrieves DMARC (Domain-based Message Authentication, Reporting & Conformance) records for a domain and performs validation checks. Returns detailed information about the DMARC record including policy settings (reject/quarantine/none), reporting addresses, alignment modes, and diagnostic check results. Useful for verifying email authentication configuration and troubleshooting email delivery issues." }, { "slug": "MX_TOOLBOX_LOOKUP_DNS", "name": "Lookup DNS Records", "description": "Performs comprehensive DNS health check and retrieves name server records for a domain. Returns detailed diagnostics including: - Name server (NS) records with IP addresses, TTL, and status - DNS configuration health checks (warnings, errors, passed tests) - Query transcripts showing DNS resolution path - Related lookup suggestions (A, MX, SPF records) Use this to diagnose DNS issues, verify name server configurations, or check DNS propagation status." }, { "slug": "MX_TOOLBOX_LOOKUP_HTTP", "name": "HTTP Lookup", "description": "Tool to perform an HTTP test on a domain. Use when you need to assess HTTP connectivity and status for a given domain." }, { "slug": "MX_TOOLBOX_LOOKUP_MTA_STS_RECORD", "name": "Lookup MTA-STS Record", "description": "Tool to lookup MTA-STS record for a domain. Use when validating mail transport security policy." }, { "slug": "MX_TOOLBOX_LOOKUP_MX", "name": "Lookup MX Records", "description": "Retrieves MX (Mail Exchange) records for a domain. Returns the mail servers responsible for receiving email for the domain, including their priority, hostname, IP address, and TTL. Use this to discover and verify email infrastructure for any domain." }, { "slug": "MX_TOOLBOX_LOOKUP_PING", "name": "Ping Lookup", "description": "Performs a ping test to check network connectivity and measure round-trip time to a domain or IP address. Returns detailed ping statistics including response time, TTL (Time-To-Live), packet size, and ASN (Autonomous System Number) information. Useful for diagnosing network connectivity issues, measuring latency, and verifying host availability." }, { "slug": "MX_TOOLBOX_LOOKUP_SMTP", "name": "SMTP Lookup", "description": "Tool to perform an SMTP connectivity test on a domain. Returns diagnostic results including connection status, DNS checks, TLS support, and other email deliverability indicators. Use when verifying SMTP server configuration or troubleshooting email delivery issues for a domain." }, { "slug": "MX_TOOLBOX_LOOKUP_SPF", "name": "Lookup SPF Record", "description": "Tool to retrieve SPF records for a specified domain. Use when confirming email sender authorization policies." }, { "slug": "MX_TOOLBOX_MONITOR_STATUS", "name": "Monitor Status", "description": "Retrieves the current status of all monitors configured in the MX Toolbox account. This action returns a list of all monitors with their health status, last check time, reputation scores, and any failing checks or warnings. Use this when you need to: - Check the overall health of all configured monitors - Get a comprehensive view of monitoring status across all services - Identify which monitors are failing or have warnings - Review when monitors were last checked No parameters are required - this action retrieves all monitors for the authenticated account. Returns an empty list if no monitors are configured." }, { "slug": "MX_TOOLBOX_USAGE_CHECK", "name": "Check Usage", "description": "Retrieve API usage statistics for DNS and network lookups. Returns current request counts, maximum allowed requests, and any overage errors for both DNS lookups and network operations (HTTP, SMTP, Ping)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "mx_toolbox_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "MxToolbox API Key", "type": "string", "description": "The API key provided by MxToolbox for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "n8n", "name": "N8N", "logo": "https://logos.composio.dev/api/n8n", "description": "Workflow automation platform with API access for managing workflows, executions, and credentials programmatically", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "n8n_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your full n8n instance URL (e.g., https://your-instance.app.n8n.cloud or https://n8n.example.com for self-hosted)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your n8n API key. Get it from Settings > API in your n8n instance. Note: API access requires a paid plan.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "namecheap", "name": "Namecheap", "logo": "https://logos.composio.dev/api/namecheap", "description": "Domain registration and web hosting platform with API for domain management, DNS configuration, and SSL certificates", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "namecheap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Base URL", "type": "string", "description": "Production: https://api.namecheap.com/xml.response or Sandbox: https://api.sandbox.namecheap.com/xml.response", "required": true, "default": "https://api.namecheap.com/xml.response" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Namecheap API key (max 50 chars). Enable API access in Profile > Tools > Business & Dev Tools > Namecheap API Access", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "The username on which commands are executed. Generally same as API User (max 20 chars)", "required": true, "default": null }, { "name": "generic_id", "displayName": "API User", "type": "string", "description": "Your Namecheap username for API access (max 20 chars)", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "Client IP", "type": "string", "description": "IPv4 address of the server making API calls. Must be whitelisted in your Namecheap account (max 15 chars)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nango", "name": "Nango", "logo": "https://logos.composio.dev/api/nango", "description": "Nango provides a unified API to integrate with over 250 external APIs, offering pre-built and customizable integrations for various categories such as CRM, HR, and accounting systems.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NANGO_ACTION_TRIGGER_POST", "name": "Trigger Nango Action", "description": "Trigger a Nango action to execute a workflow or operation. Use this to run pre-defined actions in your Nango integrations, such as creating issues, sending messages, or fetching data from external APIs. All three of `connection_id`, `provider_config_key`, and `action_name` must simultaneously match a pre-configured integration and connection in Nango — a valid `connection_id` alone is insufficient if the other two don't correspond to an existing setup. Actions may have real upstream side effects (e.g., creating records, sending messages); confirm intent before triggering non-read-only operations." }, { "slug": "NANGO_ADD_CONNECTION", "name": "Add Connection", "description": "Tool to add a connection with existing credentials to Nango. Use when you want to bulk import existing access tokens into Nango." }, { "slug": "NANGO_CONNECTION_GET", "name": "List Connections", "description": "List all Nango connections without credentials. Use this to discover available connections, check connection status, and find connection IDs. Omitting all filters returns every connection across all integrations; use `connection_id`, `end_user_id`, or `end_user_organization_id` to narrow results. To retrieve credentials for a specific connection, use the 'Get Connection Details' action." }, { "slug": "NANGO_CREATE_CONNECT_SESSION", "name": "Create Connect Session", "description": "Tool to create a new connect session with a 30-minute lifespan for enabling connection creation via Connect UI. Use when you need to generate a session token for users to authorize integrations through Nango's Connect interface." }, { "slug": "NANGO_CREATE_INTEGRATION", "name": "Create Integration", "description": "Tool to create a new integration in Nango. Use when setting up a new provider connection configuration. Creates an integration with specified credentials (OAuth2, App-based, or Hybrid authentication). The unique_key will be used to reference this integration in subsequent API calls. Returns the created integration details including timestamps and provider information." }, { "slug": "NANGO_DELETE_CONNECTION", "name": "Delete Connection", "description": "Tool to delete a specific Nango connection. Use when you need to remove an existing connection permanently." }, { "slug": "NANGO_DELETE_INTEGRATION", "name": "Delete Integration", "description": "Tool to delete a specific integration by its unique key. Use when you need to remove an integration configuration from Nango." }, { "slug": "NANGO_EDIT_CONNECTION", "name": "Edit Connection", "description": "Tool to edit a connection's tags and metadata. Use when you need to update connection attributes like environment tags, team assignments, or end user information." }, { "slug": "NANGO_GET_CONNECTION", "name": "Get Connection with Credentials", "description": "Retrieve a specific connection with its credentials. Automatically checks if the access token has expired and refreshes it if needed. Use this action when you need to access the authentication credentials for a connection to make API calls to the provider. The credentials returned depend on the auth type (OAuth2, API Key, Basic Auth, etc.). Returns 404 if the connection does not exist, 424 if token refresh is exhausted." }, { "slug": "NANGO_GET_ENVIRONMENT_VARIABLES", "name": "Get Environment Variables", "description": "Tool to retrieve environment variables from the Nango dashboard. Use when you need to access or list environment variables configured in Nango." }, { "slug": "NANGO_GET_INTEGRATION", "name": "Get Integration", "description": "Retrieve detailed configuration for a specific Nango integration by its unique key. Returns integration details including provider, display name, creation/update timestamps, and optionally sensitive data like credentials or webhook URLs if requested via the 'include' parameter. Use this to inspect integration configuration, verify setup, or retrieve credentials for a specific integration. Returns 404 error if the integration unique key does not exist." }, { "slug": "NANGO_GET_PROXY", "name": "Proxy GET Request", "description": "Tool to make a GET request with Nango's Proxy to forward requests to external APIs while managing authentication. Use when you need to make authenticated API calls to external services through Nango's proxy infrastructure." }, { "slug": "NANGO_GET_SYNC_STATUS", "name": "Get Sync Status", "description": "Tool to get the status of specified sync(s) for a connection or all connections. Use when you need to monitor sync execution state, check completion times, or view sync frequency." }, { "slug": "NANGO_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to list all connections without credentials. Use when you need to retrieve connection metadata across your account." }, { "slug": "NANGO_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to retrieve a list of all configured integrations. Use when you need to display or iterate through integrations in your account." }, { "slug": "NANGO_PROVIDERS_GET_GET", "name": "Get Provider Details", "description": "Retrieve detailed configuration for a specific Nango provider by its unique key. Returns provider authentication details (auth_mode, OAuth URLs), proxy configuration, required credentials schema, and connection configuration requirements. Use this to understand how to set up a connection with a specific provider or to get its documentation links. Provider keys can be obtained from the List Providers action. Returns 404 error if provider key does not exist." }, { "slug": "NANGO_PROVIDERS_LIST_GET", "name": "List Providers", "description": "Tool to retrieve a list of all available providers. Use when you need to display or iterate through every provider before creating connections. The provider_config_key values returned must be used verbatim when referencing providers in other actions; any mismatch will cause those actions to fail." }, { "slug": "NANGO_PUT_PROXY", "name": "Proxy PUT Request", "description": "Tool to make a PUT request with the Nango Proxy to forward requests to external APIs while managing authentication. Use when you need to update resources via external APIs through Nango's proxy." }, { "slug": "NANGO_RECONNECT_SESSION_POST", "name": "Reconnect Session", "description": "Create a new connect session to reconnect to a specific integration. Use this when a user needs to input new credentials or to manually refresh a token. Only connections created with a connect session are compatible with this endpoint." }, { "slug": "NANGO_SCRIPTS_CONFIG_GET", "name": "Get Integration Functions Configuration", "description": "Retrieve all integration functions configuration from Nango. Returns the configuration for all integrations including their sync scripts, action scripts, and event handlers. Use this to discover available integrations and their capabilities before triggering syncs or actions." }, { "slug": "NANGO_SET_CONNECTION_METADATA", "name": "Set Connection Metadata", "description": "Tool to set custom metadata for one or more Nango connections. Use when you need to attach custom data (tags, labels, context) to connections for filtering, organization, or application-specific purposes." }, { "slug": "NANGO_SYNC_TRIGGER_POST", "name": "Trigger Sync", "description": "Tool to trigger sync process(es) manually. Use after establishing a connection and defining syncs. This triggers an additional, one-off execution of the specified sync(s) for a given connection or all applicable connections. Useful when you changed metadata for a connection and want to re-import data." }, { "slug": "NANGO_UPDATE_CONNECTION_METADATA", "name": "Update Connection Metadata", "description": "Tool to edit custom metadata for one or multiple connections. Use when you need to update specific metadata properties without overwriting the entire metadata object." }, { "slug": "NANGO_UPDATE_INTEGRATION", "name": "Update Integration", "description": "Tool to update an existing integration's configuration. Use when you need to modify an integration's display name, unique key, or credentials." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nango_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Nango Secret Key", "type": "string", "description": "The secret key for authenticating API requests to Nango.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nano_banana_gemini", "name": "Nano Banana Gemini", "logo": "https://logos.composio.dev/api/nano_banana_gemini", "description": "Google Gemini 2.5 Flash Image model for text-to-image and image-to-image generation with support for up to 14 reference images", "category": "artificial intelligence", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "nano_banana_gemini_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "https://www.googleapis.com/auth/cloud-platform,https://www.googleapis.com/auth/generative-language.retriever,openid,https://www.googleapis.com/auth/userinfo.email,https://www.googleapis.com/auth/userinfo.profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "nano_banana_gemini_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API key from Google AI Studio at https://aistudio.google.com/apikey", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nano_nets", "name": "Nanonets", "logo": "https://logos.composio.dev/api/nano_nets", "description": "Nanonets provides an AI-driven Intelligent Document Processing API that transforms unstructured documents into structured data, enabling efficient data extraction and workflow automation.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NANO_NETS_CREATE_MODEL", "name": "Create Model", "description": "Tool to create a new image classification or OCR model. Use when you need to initialize a model before uploading training images. Provide a list of categories/classes that the model should learn to identify or extract." }, { "slug": "NANO_NETS_DELETE_MODEL", "name": "Delete OCR Model", "description": "Permanently deletes an OCR model from Nanonets. Use this action when you need to remove a trained model that is no longer needed. This action is irreversible - once deleted, the model and all its training data cannot be recovered. Prerequisites: Obtain the model_id from the 'Get all OCR models' action first." }, { "slug": "NANO_NETS_GET_ALL_MODELS", "name": "Get All Models", "description": "Retrieves all models (OCR and Image Classification) in the user's NanoNets account. Returns model details including ID, type, status, accuracy, and extractable fields/categories. Use to discover available models before performing predictions or training operations." }, { "slug": "NANO_NETS_GET_ALL_PREDICTION_FILES", "name": "Get All Prediction Files", "description": "Retrieve all prediction files (OCR results) for a NanoNets model. Use this tool to: - List all documents/images that have been processed by an OCR model - Get prediction results including extracted text and field values - Access file URLs and processing status for each prediction The response includes prediction labels with extracted text, confidence scores, and bounding box coordinates for each processed file." }, { "slug": "NANO_NETS_GET_MODEL_DETAILS", "name": "Get OCR Model Details", "description": "Tool to retrieve details of an OCR model. Use when you need full metadata of a model by its ID." }, { "slug": "NANO_NETS_GET_TRAINING_IMAGES", "name": "Get OCR Training Images", "description": "Tool to retrieve training images for an OCR model. Use when you need to page through images associated with a model before training or analysis." }, { "slug": "NANO_NETS_GET_WORKFLOWS", "name": "Get Workflows", "description": "Tool to retrieve a list of all workflows in your Nanonets account. Use when you need to inventory or inspect all configured workflows." }, { "slug": "NANO_NETS_LIST_DOCUMENTS", "name": "List Workflow Documents", "description": "Retrieve a paginated list of documents processed by a NanoNets workflow. Returns document metadata including processing status, upload timestamp, verification status, and page details. Use this to monitor document processing progress or access extracted data from previously uploaded documents." }, { "slug": "NANO_NETS_UPDATE_MODEL", "name": "Update Model AI Guidelines", "description": "Update AI Agent guidelines for an OCR model. Sets instructions for how the AI should handle field and table predictions. Only works for Instant Learning models. Use this to customize extraction behavior for specific document types." }, { "slug": "NANO_NETS_UPLOAD_TRAINING_IMAGES_BY_FILE", "name": "Upload Training Images by File", "description": "Tool to upload a training image file to a specified OCR model. Use when adding a local image file to train the model. Supported file formats include PNG, JPEG, and PDF." }, { "slug": "NANO_NETS_UPLOAD_TRAINING_IMAGES_BY_URL", "name": "Upload Training Images by URL", "description": "Tool to upload training images by URL to a specified OCR model. Use when adding URLs of images to a model for training purposes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nanonets_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Nanonets API key. Found at Account Info > API Keys in the Nanonets dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "napkin_ai", "name": "Napkin Ai", "logo": "https://logos.composio.dev/api/napkin_ai", "description": "Transform text into visuals with AI-powered diagram generation. Supports multiple formats (SVG, PNG, PPT) and 15+ visual styles.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "napkin_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API token from Account Settings > Developers tab at app.napkin.ai", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nasa", "name": "Nasa", "logo": "https://logos.composio.dev/api/nasa", "description": "NASA offers a suite of APIs providing access to a wide range of data, including Earth science, planetary imagery, and technology transfer information.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 136, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NASA_BROWSE_NEO", "name": "Browse Near Earth Objects", "description": "Browse the complete NASA near-Earth object (asteroid) dataset with pagination support. Returns comprehensive asteroid data including orbital parameters, estimated diameters, close approach events, and hazard classifications. Use this when you need to explore the entire NEO catalog or retrieve multiple asteroids across pages." }, { "slug": "NASA_CREATE_GRAPH_REQUEST", "name": "Create Graph Request", "description": "Tool to create orbital and position graphs for NASA satellites using the Satellite Situation Center (SSC) web service. Use when you need to visualize satellite trajectories, orbits, or positions over a specific time period in various coordinate systems. The service generates graph files accessible via URLs in the response." }, { "slug": "NASA_DELETE_ASSOCIATION", "name": "Delete CMR Association", "description": "Tool to delete an existing association between concepts in NASA's Common Metadata Repository. Use when you need to remove relationships between collections, services, tools, or other CMR resources. Requires appropriate permissions to delete associations." }, { "slug": "NASA_DELETE_CMR_ACL", "name": "Delete CMR ACL", "description": "Tool to delete an Access Control List (ACL) from NASA's Common Metadata Repository. Use when you need to remove access controls for a specific CMR resource. Requires appropriate permissions to delete ACLs." }, { "slug": "NASA_DOWNLOAD_CITATION_DOCUMENT", "name": "Download Citation Document", "description": "Downloads a document file from a NASA NTRS (NASA Technical Reports Server) citation. Use this when you need to retrieve PDF or other document files associated with a specific citation ID. Supports partial content downloads via byte range specification." }, { "slug": "NASA_GET_AGAGE_DATA", "name": "Get AGAGE Data Files", "description": "Tool to retrieve information about AGAGE (Advanced Global Atmospheric Gases Experiment) data files. Returns paginated results (40 files per page) with detailed metadata including compound names, stations, dates, instruments, and file locations. Use when you need to search or browse AGAGE atmospheric data files. Supports filtering by recommendation status, compounds, stations, date ranges, and other criteria." }, { "slug": "NASA_GET_AGAGE_DATA_BY_FILE_NAME", "name": "Get AGAGE Data by File Name", "description": "Search for AGAGE (Advanced Global Atmospheric Gases Experiment) data files by file name. Returns detailed metadata about matching files including compound information, station details, temporal coverage, geographic coordinates, and file properties. Use this when you need to find specific AGAGE data files or retrieve metadata about atmospheric gas measurements." }, { "slug": "NASA_GET_AGAGE_DATA_JSON_FOR_GRAPH", "name": "Get AGAGE Data JSON for Graph", "description": "Retrieve AGAGE atmospheric composition data in JSON format optimized for graphing. Returns time series data including O3_Number_Density and other trace gas measurements with start/stop dates. Use this when you need to visualize or analyze atmospheric composition trends from NASA's Advanced Global Atmospheric Gases Experiment (AGAGE) network." }, { "slug": "NASA_GET_AGAGE_DATA_VERSIONS", "name": "Get AGAGE Data Versions", "description": "Tool to retrieve information on all AGAGE (Advanced Global Atmospheric Gases Experiment) data versions. Use when you need version details, DOIs, citations, or descriptions for the NASA AGAGE dataset archive." }, { "slug": "NASA_GET_APOD", "name": "Get Astronomy Picture of the Day", "description": "Retrieves NASA's Astronomy Picture of the Day (APOD) for a specified date or today. Returns image/video URL, title, explanation, and metadata including copyright and high-resolution URLs when available. Use this when you need to access NASA's daily astronomy images or their descriptions. Valid for dates from June 16, 1995 to present." }, { "slug": "NASA_GET_CITATION", "name": "Get Citation by ID", "description": "Tool to retrieve detailed citation information from NASA Technical Reports Server (NTRS) by citation ID. Use when you need complete metadata for a specific NASA scientific or technical document, including abstract, authors, publication details, copyright information, export control status, and download links." }, { "slug": "NASA_GET_CITATION_DOWNLOADS", "name": "Get Citation Downloads", "description": "Tool to retrieve all available download links for a NASA technical report or publication by citation ID. Use this when you need to access PDFs, abstracts, or other documents associated with a NASA citation." }, { "slug": "NASA_GET_CITATION_REVISION_ID", "name": "Get Citation Revision ID", "description": "Tool to retrieve citation revision IDs from NASA Common Metadata Repository (CMR) GraphQL API. Use when you need to track version/revision numbers of citation records in the CMR system. Returns citation metadata including revisionId field which tracks the revision history." }, { "slug": "NASA_GET_CITATIONS_AUTOCOMPLETE", "name": "Get Citations Autocomplete", "description": "Tool to get autocomplete suggestions from NASA NTRS (Technical Reports Server) citations. Use when you need to search for partial matches in citation fields like author names, titles, subjects, or abstracts to help users complete their searches." }, { "slug": "NASA_GET_CITATIONS_REDISTRIBUTIONS", "name": "Get Citations Redistributions", "description": "Tool to retrieve redistributed citations from NASA's Technical Reports Server (NTRS). Use when you need to access information about citations that have been redistributed, including dates and distribution details." }, { "slug": "NASA_GET_CMR_COLLECTIONS", "name": "Get CMR Collections", "description": "Tool to retrieve collections from the Common Metadata Repository (CMR). Use when you need to search NASA science data collections by spatial, temporal, or metadata filters. Call after confirming search criteria." }, { "slug": "NASA_GET_CMR_GRANULES", "name": "Get CMR Granules", "description": "Search for data granules in NASA's Common Metadata Repository (CMR). Granules are individual data files within a collection. REQUIRED: Specify at least one collection identifier (concept_id, provider, short_name, or version). OPTIONAL: Add spatial (bounding_box), temporal, or pagination filters to refine results. Omitting or broadening spatial/temporal filters can return extremely large datasets; always constrain both when possible. Returns metadata including download links, temporal coverage, spatial extent, and file size for each granule." }, { "slug": "NASA_GET_COMPOUNDS", "name": "Get AGAGE Compounds", "description": "Tool to retrieve information on all data compounds available in NASA's AGAGE (Advanced Global Atmospheric Gases Experiment) API. Use when you need to discover available chemical compounds, their identifiers, and descriptions." }, { "slug": "NASA_GET_DATA_BY_FILE_NAME", "name": "Get Data by File Name", "description": "Get information about specific TOLNet (Tropospheric Ozone Lidar Network) data files by file name. This tool searches the TOLNet database for lidar data files and returns detailed metadata including temporal coverage, geographic location, instrument details, and access permissions. Supports exact match, prefix match (begins_with), or suffix match (ends_with) search strategies. Use this when you need to retrieve metadata about TOLNet lidar observation files, verify file existence, check data collection periods, or obtain download locations." }, { "slug": "NASA_GET_DATA_DOWNLOAD", "name": "Get AGAGE Data Download", "description": "Download AGAGE (Advanced Global Atmospheric Gases Experiment) data files by ID. Accepts up to 35 comma-separated data IDs in a single request. Returns the requested data file(s) as a downloadable binary file. Use this when you need to retrieve specific AGAGE atmospheric measurement datasets." }, { "slug": "NASA_GET_DATA_FREQUENCIES", "name": "Get Data Frequencies", "description": "Retrieves all available data frequency options from NASA's AGAGE (Advanced Global Atmospheric Gases Experiment) mission. Data frequencies define the measurement intervals for atmospheric data collection (e.g., hourly, daily). Use this tool to: - Discover available measurement frequencies for AGAGE data - Get frequency IDs for filtering atmospheric gas data by sampling rate - Understand what each frequency option represents No parameters required - returns all available data frequencies." }, { "slug": "NASA_GET_DATA_JSON", "name": "Get TOLNet Data JSON", "description": "Tool to retrieve JSON versions of TOLNet (Tropospheric Ozone Lidar Network) data by ID. Use when you need to access hi-res TOLNet measurement data in JSON format." }, { "slug": "NASA_GET_DATA_JSON_FOR_GRAPH", "name": "Get TOLNet Data JSON for Graph", "description": "Tool to retrieve JSON versions of TOLNet data including O3_Number_Density (ozone mixing ratio) and temporal boundaries. Use when you need TOLNet lidar ozone measurements with altitude profiles, start/stop dates, and instrument metadata for a specific data ID." }, { "slug": "NASA_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve metadata for a single TOLNet (Tropospheric Ozone Lidar Network) document by ID. Use when you need information about a document such as its name, author, type, dates, and access visibility." }, { "slug": "NASA_GET_DOCUMENT_DOWNLOAD", "name": "Get Document Download", "description": "Download a single TOLNet (Tropospheric Ozone Lidar Network) document by ID. Returns the document as a PDF file. Use when you need to retrieve a specific TOLNet document for analysis or storage." }, { "slug": "NASA_GET_DOCUMENTS", "name": "Get TOLNet Documents", "description": "Tool to retrieve document information from NASA's TOLNet (Tropospheric Ozone Lidar Network) archive. Use when you need to search or browse TOLNet documents with filtering by type, keywords, or sorting options. Supports pagination for large result sets." }, { "slug": "NASA_GET_DONKI_CME", "name": "Get DONKI CME Data", "description": "Tool to retrieve Coronal Mass Ejection (CME) data from NASA's DONKI database. Use when you need detailed information about solar CME events including their speed, direction, source location, instrument detections, and impact predictions. Returns comprehensive CME analysis with ENLIL model simulations for space weather forecasting." }, { "slug": "NASA_GET_DONKI_CME_ANALYSIS", "name": "Get DONKI CME Analysis", "description": "Tool to retrieve Coronal Mass Ejection (CME) analysis data from NASA's DONKI (Database Of Notifications, Knowledge, Information) system. Use when you need detailed CME analysis including speed, trajectory, half-angle measurements, and catalog information. Supports filtering by date range, speed threshold, half-angle, accuracy level, and catalog source." }, { "slug": "NASA_GET_DONKI_GST", "name": "Get DONKI Geomagnetic Storms", "description": "Tool to retrieve Geomagnetic Storm (GST) data from NASA's Space Weather Database Of Notifications, Knowledge, Information (DONKI). Returns detailed storm events including Kp index time-series data, start times, and linked space weather events. Use when you need historical or recent geomagnetic storm information for space weather analysis or forecasting." }, { "slug": "NASA_GET_DONKI_HSS", "name": "Get DONKI HSS Data", "description": "Tool to retrieve High Speed Stream (HSS) data from NASA's DONKI space weather database. Use when you need information about solar wind high-speed streams that can cause geomagnetic activity. Returns HSS events with detection times, instruments, and linked space weather events." }, { "slug": "NASA_GET_DONKI_IPS", "name": "Get DONKI IPS Data", "description": "Tool to retrieve Interplanetary Shock (IPS) data from NASA's DONKI space weather database. Use when you need information about shock waves traveling through interplanetary space, typically caused by CMEs or high-speed solar wind streams. Returns detailed IPS event data including location, timing, instruments, and linked space weather events." }, { "slug": "NASA_GET_DONKI_MPC", "name": "Get DONKI Magnetopause Crossing Data", "description": "Tool to retrieve Magnetopause Crossing (MPC) events from NASA's DONKI space weather database. Use when you need data about spacecraft crossings of Earth's magnetopause boundary, including detection instruments and linked space weather events. Supports filtering by date range (defaults to last 30 days if no dates specified)." }, { "slug": "NASA_GET_DONKI_NOTIFICATIONS", "name": "Get DONKI Space Weather Notifications", "description": "Tool to retrieve space weather notifications from NASA's DONKI (Space Weather Database Of Notifications, Knowledge, Information). Returns alerts, watches, and advisories for various space weather events including solar flares, CMEs, geomagnetic storms, and more. Use when you need comprehensive space weather notifications and forecasts for mission planning or space weather analysis." }, { "slug": "NASA_GET_DONKI_RBE", "name": "Get DONKI Radiation Belt Enhancement Events", "description": "Retrieves Radiation Belt Enhancement (RBE) events from NASA's DONKI Space Weather Database. Returns event details including detection instruments, timestamps, related activities, and notification alerts. Use this when you need to track radiation belt enhancements affecting Earth's magnetosphere within a specific date range." }, { "slug": "NASA_GET_DONKI_SEP", "name": "Get DONKI SEP Events", "description": "Get Solar Energetic Particle (SEP) events from NASA's DONKI space weather database. Returns detailed information about SEP events including detection instruments, linked solar events (flares, CMEs), notification alerts, and event metadata. Use this when you need space weather data about solar energetic particles detected by instruments like GOES, SOHO, and STEREO." }, { "slug": "NASA_GET_DONKI_SOLAR_FLARES", "name": "Get DONKI Solar Flares", "description": "Tool to retrieve Solar Flare (FLR) events from NASA's DONKI (Space Weather Database Of Notifications, Knowledge, Information). Use when you need data about solar flares including their classification (B, C, M, X-class), timing (begin/peak/end), source location, and associated instruments. Returns events within the specified date range, defaulting to the last 30 days if no dates provided." }, { "slug": "NASA_GET_DONKI_WSA_ENLIL", "name": "Get DONKI WSA-ENLIL Simulations", "description": "Retrieve WSA-ENLIL solar wind model simulation data from NASA's DONKI system. Returns simulations modeling interplanetary CME propagation with predicted Earth impacts, shock arrival times, and Kp indices. Use when forecasting space weather effects from coronal mass ejections or researching CME propagation patterns." }, { "slug": "NASA_GET_EONET_CATEGORIES", "name": "Get EONET Categories", "description": "Tool to retrieve a list of all event categories from EONET. Use when you need current category IDs, titles, descriptions, and info links. Note: category IDs are EONET-specific and do not map to CMR (Common Metadata Repository) IDs; use them only for EONET-internal filtering, not cross-system lookups." }, { "slug": "NASA_GET_EONET_CATEGORY_EVENTS", "name": "Get EONET Category Events", "description": "Tool to retrieve natural events filtered by a specific category from NASA's EONET. Use when you need events for a specific category like wildfires, volcanoes, or severe storms." }, { "slug": "NASA_GET_EONET_EVENT", "name": "Get EONET Event by ID", "description": "Tool to retrieve a specific natural event by its unique ID from NASA's Earth Observatory Natural Event Tracker (EONET). Use when you need detailed information about a particular wildfire, storm, flood, volcano, earthquake, or other natural phenomenon." }, { "slug": "NASA_GET_EONET_EVENTS", "name": "Get EONET Events", "description": "Tool to retrieve natural events from NASA's Earth Observatory Natural Event Tracker (EONET). Use when you need structured JSON data about wildfires, storms, floods, volcanoes, earthquakes, and other natural phenomena. Supports filtering by source, category, status, date range, magnitude, and geographic bounding box." }, { "slug": "NASA_GET_EONET_EVENTS_ATOM", "name": "Get EONET Events (ATOM)", "description": "Tool to retrieve a list of natural events in ATOM format. Use when you need a machine-readable XML feed of recent natural events from EONET." }, { "slug": "NASA_GET_EONET_EVENTS_GEOJSON", "name": "Get EONET Events GeoJSON", "description": "Tool to retrieve natural events from NASA's Earth Observatory Natural Event Tracker (EONET) in GeoJSON format. Use when you need geographic event data in GeoJSON format for mapping applications or GIS integration. Supports filtering by source, category, status, date range, and geographic bounding box." }, { "slug": "NASA_GET_EONET_EVENTS_RSS", "name": "Get EONET Events RSS", "description": "Retrieve natural events from NASA's Earth Observatory Natural Event Tracker (EONET) in RSS/GeoRSS XML format. This tool provides a standardized RSS 2.0 feed with GeoRSS extensions, ideal for RSS readers, mapping applications, or systems that need spatial event data in XML format. The feed includes wildfires, storms, floods, volcanoes, icebergs, and other natural phenomena with geographical coordinates, magnitudes, and source references. Use this when you need RSS/XML format specifically. For programmatic access with structured data, consider using the JSON events endpoint instead." }, { "slug": "NASA_GET_EONET_LAYERS", "name": "Get EONET Layers", "description": "Retrieves NASA EONET imagery layers for visualizing natural events. Returns web map service (WMS/WMTS) layer definitions that can be used to display satellite imagery related to events like wildfires, volcanoes, severe storms, etc. Each layer includes service URLs and parameters needed to fetch imagery tiles. Use the optional category parameter to get layers specific to an event type (recommended to avoid empty results)." }, { "slug": "NASA_GET_EONET_MAGNITUDES", "name": "GET EONET Magnitudes", "description": "Tool to retrieve a list of available event magnitudes and their descriptions. Use after determining you need valid magnitude filters before querying events data." }, { "slug": "NASA_GET_EONET_SOURCES", "name": "Get EONET Sources", "description": "Retrieves the complete list of event data sources available in NASA's EONET (Earth Observatory Natural Event Tracker) system. Each source provides natural event data such as wildfires, volcanoes, hurricanes, floods, and earthquakes. Use this tool to: - Discover which organizations provide event data to EONET - Get source IDs for filtering events by specific data providers - Access homepage URLs and filtered event endpoints for each source No parameters required - returns all available sources." }, { "slug": "NASA_GET_EPIC_AEROSOL", "name": "Get EPIC Aerosol Imagery Metadata", "description": "Tool to retrieve metadata for the most recent aerosol index imagery from NASA's DSCOVR EPIC camera. Returns detailed metadata including image identifiers, capture dates, spacecraft positions, and geographic coordinates. Use when you need information about Earth's aerosol measurements from the EPIC instrument." }, { "slug": "NASA_GET_EPIC_AEROSOL_DATE", "name": "Get EPIC Aerosol Imagery by Date", "description": "Retrieves metadata for aerosol index imagery from NASA's EPIC camera for a specific date. Returns a list of images with detailed positional data including satellite, lunar, and solar positions in J2000 coordinates, geographical centroid, and attitude quaternions. Use this when you need aerosol index data from EPIC for analysis or visualization of atmospheric aerosol distribution." }, { "slug": "NASA_GET_EPIC_CLOUD", "name": "Get EPIC Cloud Fraction Imagery", "description": "Retrieve metadata for the most recent cloud fraction imagery from NASA's DSCOVR EPIC camera. Returns an array of image metadata including capture timestamps, geographical coordinates, spacecraft positioning data, and image identifiers. Use this when you need information about recent cloud fraction observations from the EPIC instrument." }, { "slug": "NASA_GET_EPIC_CLOUD_DATE", "name": "Get EPIC Cloud Imagery by Date", "description": "Get metadata for cloud fraction imagery from DSCOVR EPIC camera for a specific date. Returns satellite position, Earth coordinates, attitude data, and image identifiers for cloud fraction observations on the requested date." }, { "slug": "NASA_GET_EPIC_ENHANCED", "name": "Get EPIC Enhanced Color Imagery", "description": "Retrieves metadata for the most recent enhanced color Earth imagery from the DSCOVR EPIC camera. Returns satellite position data, coordinates, timestamps, and image identifiers. Use this when you need to access the latest full-disk Earth images with enhanced color processing." }, { "slug": "NASA_GET_EPIC_ENHANCED_DATE", "name": "Get EPIC Enhanced Color Imagery by Date", "description": "Retrieves metadata for enhanced color Earth imagery from DSCOVR EPIC for a specific date. Returns satellite position data, coordinates, timestamps, and image identifiers for all images captured on the given date. Use this when you need to access enhanced color Earth images for a particular historical date." }, { "slug": "NASA_GET_EPIC_NATURAL", "name": "Get EPIC Natural Color Imagery", "description": "Retrieve metadata for the most recent natural color Earth imagery from NASA's DSCOVR EPIC camera. Returns an array of image metadata including capture timestamps, geographical coordinates, spacecraft positioning data, and image identifiers. Use this when you need information about recent Earth imagery from the EPIC instrument, which captures full-disc images of Earth from the L1 Lagrange point." }, { "slug": "NASA_GET_EPIC_NATURAL_DATE", "name": "Get EPIC Natural Color Images by Date", "description": "Retrieves metadata for natural color Earth imagery from DSCOVR EPIC for a specific date. Returns image identifiers, capture times, satellite positions, and geographical coordinates for all images captured on the specified date. Use this when you need to access Earth observation data from the EPIC camera, including satellite positioning and viewing angles." }, { "slug": "NASA_GET_FILE_TYPES", "name": "Get File Types", "description": "Tool to retrieve information on all data file types from NASA's TOLNET API. Use when you need to discover available file type identifiers, names, and descriptions." }, { "slug": "NASA_GET_GLDS_FILES", "name": "Get GeneLab Data System Files", "description": "Retrieves file metadata from NASA's GeneLab Data System (GLDS) for specified dataset IDs. Returns file listings with download URLs, sizes, categories, and metadata for space biology datasets. Use this when you need to access GeneLab study files or list available data files for OSD datasets. Supports pagination and filtering of hidden files." }, { "slug": "NASA_GET_ICESAT2_TRACKS", "name": "Get ICESat-2 Tracks", "description": "Retrieves a list of ICESat-2 satellite tracks (Reference Ground Tracks - RGTs) within a specified geographic bounding box. Use this when you need to identify which ICESat-2 tracks pass through a particular region of interest. The returned track identifiers can be used to query detailed altimetry data for those specific tracks. Supports optional date filtering to find tracks from a specific collection date." }, { "slug": "NASA_GET_IMAGE_ASSET", "name": "Get Image Asset Manifest", "description": "Retrieve a media asset's manifest from the NASA Image and Video Library, including links to all available sizes and formats. Returns URLs for different image sizes (original, large, medium, small, thumbnail) and metadata. Use when you need to access specific media files after finding them through search." }, { "slug": "NASA_GET_IMAGE_METADATA", "name": "Get Image Metadata Location", "description": "Retrieve the location URL of a media asset's metadata manifest from the NASA Image and Video Library. Returns the URL to the metadata JSON file containing detailed information including EXIF/camera data. Use when you need to access comprehensive metadata for NASA images or videos." }, { "slug": "NASA_GET_INSIGHT_WEATHER", "name": "Get InSight Mars Weather Data", "description": "Retrieves Mars weather data from NASA's InSight lander at Elysium Planitia. Returns temperature, wind, and pressure measurements for the last seven available Sols (Martian days). Use this when you need Mars surface weather data including atmospheric conditions. Note: InSight mission ended in December 2022, so this returns historical data." }, { "slug": "NASA_GET_INSTRUMENTS_GROUPS", "name": "Get Instruments Groups", "description": "Tool to retrieve information on all instrument groups from NASA's TOLNET API. Use when you need to get instrument group details including IDs, names, descriptions, and Principal Investigators." }, { "slug": "NASA_GET_LANDING_PAGE", "name": "Get Landing Page", "description": "Tool to retrieve the NASA STAC API landing page (root endpoint). Use when you need to discover API capabilities, available endpoints, conformance classes, or STAC version information. The landing page provides links to the API definition (OpenAPI spec) and feature collections endpoint." }, { "slug": "NASA_GET_LEVEL3_DATA", "name": "Get ICESat-2 Level-3A Data", "description": "Tool to access ICESat-2 Level-3A product data from OpenAltimetry. Use when you need satellite altimetry measurements for land ice, sea ice, vegetation, ocean surface, or inland water surface heights. Requests are limited to 5x5 degree spatial bounding box selection and up to 1 year of data. Note: This endpoint is marked as COMING SOON in documentation but is functionally operational." }, { "slug": "NASA_GET_MARS_ROVER_PHOTOS", "name": "Get Mars Rover Photos", "description": "Retrieves photos taken by NASA Mars rovers (Perseverance, Curiosity, Opportunity, Spirit) on a specific Martian sol (day). Returns photo metadata including image URLs, camera info, Earth dates, and rover details. Use this when you need to access Mars rover imagery for a particular sol number. Sol 0 represents the landing date for each rover." }, { "slug": "NASA_GET_NEO_LOOKUP", "name": "Get NEO Lookup", "description": "Lookup a specific asteroid by its NASA SPK-ID. Returns detailed orbital and physical data including estimated diameter, close approach history, and hazard classification. Use when you need comprehensive information about a specific known asteroid." }, { "slug": "NASA_GET_OSDR_BIOSPECIMEN", "name": "Get OSDR Biospecimen", "description": "Tool to retrieve detailed information about a specific biospecimen from NASA's Open Science Data Repository (OSDR). Returns comprehensive metadata including specimen type, anatomical section, preservation method, storage conditions, experimental group, protocol details, and parent subject references. Use when you need information about a specific biological specimen from space biology research studies." }, { "slug": "NASA_GET_OSDR_EXPERIMENT", "name": "Get OSDR Experiment", "description": "Retrieve detailed information about a specific OSDR (Open Science Data Repository) experiment by its identifier. Returns comprehensive metadata including title, objectives, approach, results, sponsoring agency, research areas, NASA programs, publications, and related studies. Use this when you need detailed scientific information about a specific NASA OSDR experiment." }, { "slug": "NASA_GET_OSDR_HARDWARE", "name": "Get OSDR Hardware", "description": "Retrieve detailed information about specific hardware from NASA's Open Science Data Repository (OSDR). Returns comprehensive hardware details including components, version history, and parent relationships. Use when you need technical specifications, subsystem information, or configuration details for space flight hardware used in OSDR experiments." }, { "slug": "NASA_GET_OSDR_METADATA", "name": "Get OSDR Study Metadata", "description": "Retrieve complete metadata for an OSDR (Open Science Data Repository) study dataset. Returns experimental design, assays, sample characteristics, ontology references, and publication information for NASA space biology research. Use when you need comprehensive metadata about a specific OSD study including organism details, experimental conditions, assay types, and data files." }, { "slug": "NASA_GET_OSDR_MISSION", "name": "Get OSDR Mission Details", "description": "Retrieve detailed information about a specific space mission from NASA's Open Science Data Repository (OSDR). Returns mission metadata including start/end dates, personnel, vehicle information, and links to related payloads, experiments, and studies. Use this when you need comprehensive information about a specific NASA space mission." }, { "slug": "NASA_GET_OSDR_PAYLOAD", "name": "Get OSDR Payload Details", "description": "Retrieve detailed metadata for a specific OSDR payload by its identifier. Returns comprehensive information including payload name, description, associated missions, subject groups, personnel, experiments, and version information. Use this when you need to access detailed information about NASA OSDR payloads and their associated space biology experiments." }, { "slug": "NASA_GET_OSDR_SUBJECT", "name": "Get OSDR Subject Information", "description": "Retrieve detailed information about a specific subject (biospecimen) from NASA's Open Science Data Repository (OSDR). Returns metadata including scientific name, common name, description, experimental conditions, and references to related payloads and experiments. Use this when you need information about biological samples used in space life sciences research." }, { "slug": "NASA_GET_OSDR_VEHICLE", "name": "Get OSDR Vehicle Information", "description": "Retrieve detailed information about a specific vehicle from NASA's Open Science Data Repository (OSDR). Returns vehicle metadata including associated files, missions, and version information. Use this when you need to access information about spacecraft vehicles like Dragon, Cygnus, or Progress that have been used in NASA missions." }, { "slug": "NASA_GET_POWER_CLIMATOLOGY", "name": "Get POWER Climatology Data", "description": "Retrieves long-term climatology data for a specific location from NASA POWER (Prediction Of Worldwide Energy Resources). Returns average values over a climate period, including monthly and annual climate statistics for parameters like temperature, solar radiation, wind speed, and precipitation. Use this when you need long-term climate averages for renewable energy planning, sustainable building design, or agricultural applications." }, { "slug": "NASA_GET_POWER_DAILY", "name": "Get POWER Daily Data", "description": "Retrieves daily average solar and meteorological data from NASA POWER (Prediction Of Worldwide Energy Resources). Returns time-series data for parameters like temperature, solar radiation, wind speed, humidity, and precipitation from 1981 to near real-time. Use this when you need historical or recent climate data for a specific location to support renewable energy planning, building design, or agricultural applications." }, { "slug": "NASA_GET_POWER_DAILY_REGIONAL", "name": "Get POWER Daily Regional Data", "description": "Tool to retrieve daily average solar and meteorological data for a regional bounding box from NASA POWER (Prediction Of Worldwide Energy Resources). Use when you need historical or recent climate data for a geographic region (not just a single point). Returns time-series data on a 0.5 x 0.5 degree grid for parameters like temperature, solar radiation, wind speed, humidity, and precipitation from 1981 to near real-time. Regional requests require at least a 2-degree range in both latitude and longitude, and are limited to ONE parameter per request." }, { "slug": "NASA_GET_POWER_MONTHLY", "name": "Get POWER Monthly Data", "description": "Retrieves monthly average solar and meteorological data for a specific location from NASA POWER (Prediction Of Worldwide Energy Resources). Returns time series data with monthly averages organized by year-month for parameters like temperature, precipitation, solar irradiance, and humidity. Use this when you need long-term climate analysis, renewable energy assessments, or agricultural planning data for a specific geographic location. Data availability generally ranges from 1981 to near real-time depending on the parameter." }, { "slug": "NASA_GET_POWER_TEMPORAL_HOURLY", "name": "Get POWER Hourly Temporal Data", "description": "Retrieves hourly climate and meteorological data from NASA POWER (Prediction of Worldwide Energy Resources) API for a specific location and date range. Returns high-resolution temporal data including temperature, humidity, precipitation, and other parameters. Use this when you need detailed hourly weather/climate data for renewable energy, sustainable buildings, or agroclimatology applications. Data available from 2001 to near real-time." }, { "slug": "NASA_GET_PROCESSING_TYPES", "name": "Get Processing Types", "description": "Tool to retrieve information on all data instruments from NASA's AGAGE mission. Use when you need to list available instruments with their IDs, names, and descriptions." }, { "slug": "NASA_GET_PRODUCT_TYPES", "name": "Get Product Types", "description": "Tool to retrieve all data product types from NASA's TOLNET (TOLNet Ozone Lidar Network) API. Use when you need to discover available product types or get product type metadata including names, descriptions, and display ordering." }, { "slug": "NASA_GET_SATELLITE_LOCATIONS", "name": "Get Satellite Locations", "description": "Retrieves satellite location data from NASA's Satellite Situation Center (SSC). Returns position coordinates for specified satellites over a time interval using configurable coordinate systems and magnetic field models. Use this when you need to track satellite positions, analyze orbital trajectories, or retrieve historical satellite location data." }, { "slug": "NASA_GET_STATIONS", "name": "Get AGAGE Data Stations", "description": "Tool to retrieve information on all AGAGE (Advanced Global Atmospheric Gases Experiment) data stations. Use when you need station names, locations, coordinates, elevation, or other metadata about monitoring sites." }, { "slug": "NASA_GET_TECHPORT_PROJECT", "name": "Get TechPort Project", "description": "Retrieves detailed information about a specific NASA technology project from TechPort. Returns comprehensive project data including title, description, benefits, status, program details, contacts, organizations, and technology readiness levels. Use this when you need information about a specific NASA technology project by its TechPort ID." }, { "slug": "NASA_GET_TOLNET_DATA", "name": "Get TOLNet Data", "description": "Tool to retrieve information about TOLNet (Tropospheric Ozone Lidar Network) data files. Use when you need to search or browse available TOLNet atmospheric data with filtering by instrument, product type, date ranges, or geographic location. Returns metadata including file details, temporal coverage, spatial location, and access information. Data is paginated with 40 items per page." }, { "slug": "NASA_GET_TOLNET_DATA_CALENDAR", "name": "Get TOLNet Data Calendar", "description": "Tool to retrieve a date-driven list of all available TOLNet (Tropospheric Ozone Lidar Network) data. Use when you need to query available TOLNet data files filtered by instrument group and file type, with optional filters for product type and processing type. Returns metadata including file names, locations, dates, geographical coordinates, and accessibility status." }, { "slug": "NASA_GET_VIDEO_CAPTIONS", "name": "Get Video Captions", "description": "Retrieves the location URL of caption files for NASA video assets from the NASA Image and Video Library. Returns the URL to the captions file (typically in SRT format) for the specified video NASA ID. Use this when you need to access subtitles or captions for NASA video content." }, { "slug": "NASA_LIST_EPIC_AEROSOL_DATES", "name": "List EPIC Aerosol Dates", "description": "Tool to retrieve a list of all dates with available aerosol index EPIC imagery. Use when you need to know which dates have aerosol data available from NASA's EPIC camera." }, { "slug": "NASA_LIST_EPIC_CLOUD_DATES", "name": "List EPIC Cloud Fraction Dates", "description": "Retrieve a listing of all dates with available cloud fraction Earth imagery from DSCOVR EPIC. Returns a list of dates in YYYY-MM-DD format for which cloud fraction imagery is available. Use this when you need to know which dates have EPIC cloud fraction imagery available before fetching specific date images." }, { "slug": "NASA_LIST_EPIC_ENHANCED_DATES", "name": "List EPIC Enhanced Color Dates", "description": "Retrieves a listing of all dates with available enhanced color Earth imagery from NASA's DSCOVR EPIC (Earth Polychromatic Imaging Camera). Use this when you need to discover which dates have enhanced color imagery available for viewing or further retrieval. Enhanced color imagery shows Earth with vegetation highlighted in red, making it useful for environmental monitoring." }, { "slug": "NASA_LIST_EPIC_NATURAL_DATES", "name": "List EPIC Natural Color Dates", "description": "Retrieve a listing of all dates with available natural color Earth imagery from DSCOVR EPIC. Returns a list of dates in YYYY-MM-DD format for which natural color imagery is available. Use this when you need to know which dates have EPIC natural color imagery available before fetching specific date images." }, { "slug": "NASA_LIST_GROUND_STATIONS", "name": "List Ground Stations", "description": "Retrieves the complete list of ground stations available from NASA's Satellite Situation Center (SSC). Returns metadata for each ground station including unique identifier, name, and geographic coordinates (latitude/longitude). Use this tool when you need information about SSC ground station locations for satellite tracking or geophysical research." }, { "slug": "NASA_LIST_LOCATIONS_GSE_GEO", "name": "List Satellite Locations (GSE/GEO)", "description": "Retrieves satellite/observatory location data in GSE and GEO coordinate systems from NASA's SSC (Satellite Situation Center). Returns time-series coordinate data including X, Y, Z positions, latitude, longitude, and local time for specified satellites over a time range. Use this when you need spacecraft position data for trajectory analysis or orbital tracking. Minimum time interval is 24 hours." }, { "slug": "NASA_LIST_OBSERVATORIES", "name": "List Observatories", "description": "Tool to retrieve descriptions of all observatories available from NASA's Satellite Situation Center (SSC). Use when you need to discover available satellites, their identifiers, data availability periods, and trajectory resolutions. Returns comprehensive metadata for each observatory including time ranges and resource identifiers." }, { "slug": "NASA_LIST_OSDR_BIOSPECIMENS", "name": "List OSDR Biospecimens", "description": "Tool to retrieve a list of all biospecimens from the NASA Open Science Data Repository (OSDR). Use when you need to discover available biospecimen data from space biology experiments. Returns URLs that can be used to fetch detailed information for each biospecimen." }, { "slug": "NASA_LIST_OSDR_EXPERIMENTS", "name": "List OSDR Experiments", "description": "Tool to retrieve a list of all experiments from NASA's Open Science Data Repository (OSDR). Returns a catalog of experiment URLs that can be used to fetch detailed information about individual experiments. Use when you need to discover available space biology experiments or get a complete inventory of OSDR experiments." }, { "slug": "NASA_LIST_OSDR_HARDWARE", "name": "List OSDR Hardware", "description": "Tool to retrieve a list of all hardware from NASA's Open Science Data Repository (OSDR). Returns a catalog of hardware URLs that can be used to fetch detailed information about individual hardware items. Use when you need to discover available space flight hardware or get a complete inventory of OSDR hardware." }, { "slug": "NASA_LIST_OSDR_MISSIONS", "name": "List OSDR Missions", "description": "Tool to retrieve a list of all space missions from the NASA Open Science Data Repository (OSDR). Use when you need to discover available mission data from space biology and physical science experiments. Returns URLs that can be used to fetch detailed information for each mission including dates, vehicles, personnel, and related studies." }, { "slug": "NASA_LIST_OSDR_PAYLOADS", "name": "List OSDR Payloads", "description": "Tool to retrieve a list of all payloads from the NASA Open Science Data Repository (OSDR). Use when you need to discover available payload data from space biology and physical science experiments. Returns URLs that can be used to fetch detailed information for each payload including related missions, vehicles, and experiments." }, { "slug": "NASA_LIST_OSDR_SUBJECTS", "name": "List OSDR Subjects", "description": "Tool to retrieve a list of all subjects from the NASA Open Science Data Repository (OSDR). Use when you need to discover available subject data from space biology experiments. Returns URLs that can be used to fetch detailed information for each subject." }, { "slug": "NASA_LIST_OSDR_VEHICLES", "name": "List OSDR Vehicles", "description": "Tool to retrieve a list of all vehicles from the NASA Open Science Data Repository (OSDR). Returns vehicle names and URLs to their detailed information endpoints. Use when you need to discover available spacecraft, rockets, or other vehicles used in NASA missions." }, { "slug": "NASA_QUERY_CITATION", "name": "Query Citation", "description": "Tool to query citation metadata from NASA's GraphQL Earthdata API. Use when you need to retrieve detailed citation information for a specific concept ID. Returns comprehensive metadata including DOI, abstract, provider, and revision information." }, { "slug": "NASA_QUERY_CITATIONS", "name": "Query Citations via GraphQL", "description": "Tool to query NASA Common Metadata Repository (CMR) GraphQL API for collection citations. Use when you need to retrieve citation information for NASA science data collections. The GraphQL endpoint supports flexible queries for collections and their associated citation metadata including DOIs, publication details, and relationships." }, { "slug": "NASA_QUERY_CMR_COLLECTION", "name": "Query CMR Collection", "description": "Tool to query a single collection from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific NASA collection including description, spatial/temporal coverage, data center, and related information." }, { "slug": "NASA_QUERY_CMR_COLLECTIONS", "name": "Query CMR Collections", "description": "Tool to query multiple collections from NASA's Common Metadata Repository via GraphQL. Use when you need to search NASA science data collections by provider, short name, concept ID, DOI, temporal ranges, spatial coordinates, science keywords, cloud hosting status, or granule availability. Returns collection metadata including identifiers, descriptions, temporal/spatial coverage, and access information." }, { "slug": "NASA_QUERY_CMR_GRANULE", "name": "Query CMR Granule by Concept ID", "description": "Query for a single granule (individual data file) from NASA's Common Metadata Repository using its unique concept ID. Returns comprehensive granule metadata including cloud cover, parent collection reference, spatial/temporal information, and download links. Use when you need detailed information about a specific NASA Earth science data granule file." }, { "slug": "NASA_QUERY_CMR_GRANULES", "name": "Query CMR Granules", "description": "Tool to query for multiple granules (individual data files) from NASA's Common Metadata Repository via GraphQL. Use when searching for specific data files within a collection. REQUIRED: Must specify at least one collection identifier (collectionConceptId, provider, shortName, or conceptId) per CMR requirements. OPTIONAL: Add spatial filters (bounding box, circle, point, polygon, line), temporal range, cloud cover, day/night flag, or pagination parameters. Returns granule metadata including concept IDs, titles, temporal coverage, access links, and file sizes." }, { "slug": "NASA_QUERY_CMR_GRIDS", "name": "Query CMR Grids", "description": "Query for multiple grids from NASA's Common Metadata Repository (CMR) via GraphQL. Grids describe spatial data organization and coordinate systems used in NASA Earth observation datasets. Use when you need to retrieve grid metadata including spatial extent, resolution, and organization information." }, { "slug": "NASA_QUERY_CMR_SERVICE", "name": "Query CMR Service", "description": "Tool to query a single service from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific NASA service including description, type, URL, supported reformattings, and related information." }, { "slug": "NASA_QUERY_CMR_SERVICES", "name": "Query CMR Services", "description": "Tool to query for multiple services from NASA's Common Metadata Repository via GraphQL. Services describe data access methods and tools that act on data files. Use when you need to search for NASA services by type, provider, keyword, or other metadata filters." }, { "slug": "NASA_QUERY_CMR_SUBSCRIPTION", "name": "Query CMR Subscription", "description": "Tool to query a single subscription from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific CMR subscription including name, native ID, associated collection, and query parameters." }, { "slug": "NASA_QUERY_CMR_SUBSCRIPTIONS", "name": "Query CMR Subscriptions", "description": "Query for multiple subscriptions from NASA's Common Metadata Repository (CMR). Use when you need to retrieve user subscriptions for receiving notifications when new data matching specified criteria becomes available. Returns subscription details including concept IDs, names, query criteria, and notification email addresses." }, { "slug": "NASA_QUERY_CMR_TOOL", "name": "Query CMR Tool", "description": "Tool to query a single tool from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific NASA tool including long name, description, and URL. Call this when you have a tool concept ID and need to fetch its full metadata." }, { "slug": "NASA_QUERY_CMR_TOOLS", "name": "Query CMR Tools", "description": "Tool to query multiple tools from NASA's Common Metadata Repository using GraphQL. Use when you need to search for software applications and utilities that process or visualize Earth science data. Supports filtering by keyword, provider, and pagination." }, { "slug": "NASA_QUERY_CMR_VARIABLE", "name": "Query CMR Variable", "description": "Tool to query a single variable from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific CMR variable including its name, long name, and definition." }, { "slug": "NASA_QUERY_COLLECTION_DRAFT", "name": "Query Collection Draft", "description": "Tool to query a NASA Earthdata collection draft by ID using the GraphQL API. Returns detailed metadata including title, abstract, version, DOI, platforms, and spatial/temporal extents. Use when you need to retrieve information about a specific collection draft from NASA's Earthdata system." }, { "slug": "NASA_QUERY_DATA_QUALITY_SUMMARIES", "name": "Query Data Quality Summaries", "description": "Query data quality summaries from NASA's Common Metadata Repository (CMR) GraphQL API. Use when you need to retrieve metadata about data quality assessments for NASA datasets. Returns summary information including concept IDs, names, and HTML-formatted quality descriptions." }, { "slug": "NASA_QUERY_DATA_QUALITY_SUMMARY", "name": "Query Data Quality Summary", "description": "Query for a single Data Quality Summary from NASA's Common Metadata Repository (CMR) using GraphQL. Use when you need to retrieve detailed quality information about a specific NASA dataset by its concept ID. Returns metadata including name, summary, and association details." }, { "slug": "NASA_QUERY_EXOPLANET_ARCHIVE", "name": "Query Exoplanet Archive", "description": "Tool to query NASA's Exoplanet Archive NSTED API for exoplanet and related astronomical data. Use when you need to search, filter, or retrieve data about confirmed exoplanets, Kepler Objects of Interest (KOIs), planetary systems, or composite planet parameters. Supports SQL-like filtering, column selection, sorting, and multiple output formats (JSON, CSV, ASCII, IPAC)." }, { "slug": "NASA_QUERY_ORDER_OPTION", "name": "Query Order Option", "description": "Tool to query a single order option from NASA Earthdata GraphQL API. Use when you need to retrieve detailed metadata about a specific order option by its concept ID." }, { "slug": "NASA_QUERY_ORDER_OPTIONS", "name": "Query Order Options", "description": "Tool to query order options for a NASA Earthdata collection using the GraphQL API. Use when you need to retrieve available ordering options for a specific collection concept ID." }, { "slug": "NASA_QUERY_PERMISSIONS", "name": "Query Permissions", "description": "Tool to query permissions from NASA's Common Metadata Repository (CMR) GraphQL API. Returns a list of permissions with concept IDs, system objects, targets, and permission strings. Use when you need to retrieve access control information for NASA Earthdata resources." }, { "slug": "NASA_QUERY_PROVIDERS", "name": "Query CMR Providers", "description": "Tool to query for a list of data providers from NASA's Common Metadata Repository via GraphQL. Use when you need to discover available data providers or get provider metadata. Returns all available providers with their IDs, short names, and metadata flags (cmrOnly, small, consortiums)." }, { "slug": "NASA_QUERY_TAG_DEFINITIONS", "name": "Query Tag Definitions", "description": "Tool to query tag definitions from NASA's Common Metadata Repository (CMR) GraphQL API. Use when you need to retrieve metadata about tag definitions including concept IDs, tag keys, descriptions, and originator information. Optionally filter by tag key or originator ID." }, { "slug": "NASA_QUERY_TOOL_DRAFT", "name": "Query Tool Draft", "description": "Tool to query a tool draft from NASA's Common Metadata Repository (CMR) GraphQL API. Use when you need to retrieve information about a specific tool draft by its ID." }, { "slug": "NASA_QUERY_VISUALIZATION", "name": "Query Visualization", "description": "Tool to query a single visualization from NASA's Common Metadata Repository using its unique concept ID. Use when you need to retrieve detailed metadata about a specific NASA visualization including name, title, description, type, and related information." }, { "slug": "NASA_QUERY_VISUALIZATIONS", "name": "Query Visualizations", "description": "Tool to query for visualizations from NASA's Common Metadata Repository via GraphQL. Use when searching for graphical representations of Earth Science data like maps, charts, or animations." }, { "slug": "NASA_RESTORE_CITATION_REVISION", "name": "Restore Citation Revision", "description": "Tool to restore a previous version of a citation record within NASA's Common Metadata Repository. Use when you need to revert a citation to an earlier revision by specifying both the concept ID and the target revision number." }, { "slug": "NASA_RESTORE_COLLECTION_REVISION", "name": "Restore Collection Revision", "description": "Tool to restore a collection to a previous revision in NASA's Common Metadata Repository. Use when you need to revert a collection back to a specific historical version. Requires appropriate permissions to modify collections." }, { "slug": "NASA_RESTORE_VISUALIZATION_REVISION", "name": "Restore Visualization Revision", "description": "Tool to restore a previous revision of a visualization in NASA's Common Metadata Repository. Use when you need to revert a visualization to a specific historical revision. Requires appropriate permissions to modify visualizations." }, { "slug": "NASA_SEARCH_CITATIONS", "name": "Search NTRS Citations", "description": "Tool to search NASA Technical Reports Server (NTRS) citations database. Use when you need to find NASA scientific and technical documents, research papers, reports, or publications. Supports filtering by document type, author, center, keywords, and more. Returns detailed metadata including abstracts, authors, publication info, and download links." }, { "slug": "NASA_SEARCH_NEAR_EARTH_OBJECTS", "name": "Search Near Earth Objects", "description": "Search for near-Earth objects (asteroids) by their closest approach date to Earth. Returns detailed information about asteroids including: - Estimated diameter in multiple units (kilometers, meters, miles, feet) - Close approach data with velocity and miss distance - Hazard classification (potentially hazardous or not) - NASA JPL reference URLs for detailed information Use this tool when you need to find asteroids approaching Earth within a specific date range (max 7 days). Useful for tracking asteroid activity, identifying potentially hazardous objects, or researching specific time periods." }, { "slug": "NASA_SEARCH_OSDR", "name": "Search OSDR", "description": "Tool to search NASA Open Science Data Repository (OSDR) for space biology experiments and studies. Use when searching for GeneLab datasets, space biology research, microgravity experiments, or federated biological databases. Supports keyword search, filtering by organism/program/technology, and pagination. Returns detailed study metadata including descriptions, protocols, publications, and mission information." }, { "slug": "NASA_SEARCH_PUBSPACE_DOCUMENTS", "name": "Search Public Space Documents", "description": "Search NASA public space technical documents in the NTRS (NASA Technical Reports Server) repository. Use when you need to find NASA publications, technical reports, conference papers, or other scientific documents. Supports full-text search, field-specific queries, filtering by author/center/type, date ranges, and pagination. Returns comprehensive document metadata including titles, abstracts, authors, download links, and classifications." }, { "slug": "NASA_SEARCH_SVS_VISUALIZATIONS", "name": "Search SVS Visualizations", "description": "Tool to search for visualizations in the Scientific Visualization Studio (SVS). Use when you need to query SVS visualizations by keywords or mission filters." }, { "slug": "NASA_SEARCH_TECHTRANSFER_SOFTWARE", "name": "Search Technology Transfer Software", "description": "Search NASA's Technology Transfer software catalog for available tools and applications. Returns software entries with titles, descriptions, NASA case numbers, and licensing information. Use this when searching for NASA software tools available for public use, licensing, or download." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nasa_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NASA API Key", "type": "string", "description": "Your unique NASA API key obtained from https://api.nasa.gov.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nasdaq", "name": "Nasdaq", "logo": "https://logos.composio.dev/api/nasdaq", "description": "Nasdaq Data Link is a cloud-based financial data platform providing access to curated premium and free datasets including equity prices, company fundamentals, earnings estimates, options data, forex rates, and economic indicators through REST and Streaming APIs, with integrations for Python, R, Excel, and SQL.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NASDAQ_GET_ANALYST_RATINGS", "name": "Get Analyst Ratings and Target Prices", "description": "Retrieves comprehensive analyst ratings and target price data for a stock symbol from Zacks Investment Research. Returns current and historical (1-3 months ago) rating counts across all rating categories (Strong Buy, Buy, Hold, Sell, Strong Sell), mean rating scores, and consensus target price estimates including mean, median, high, low, standard deviation, and revision counts. Also provides historical target price data with observation dates showing how analyst estimates have changed over time. Data sources: ZACKS/AR (analyst ratings) and ZACKS/TP (target prices historical data)." }, { "slug": "NASDAQ_GET_DATATABLE", "name": "Get Datatable Bulk Export", "description": "Tool to request a bulk export of a NASDAQ Data Link datatable. Returns a download link for a zipped CSV file containing the entire table data, bypassing the standard 10,000 row limit. Use this when you need to download large datasets in full. Check the response status: if 'fresh', the file is ready for download; if 'creating' or 'regenerating', wait and retry the request. The download link is valid for 30 minutes only." }, { "slug": "NASDAQ_GET_DATATABLE_METADATA", "name": "Get Datatable Metadata", "description": "Tool to retrieve metadata for a NASDAQ Data Link datatable. Returns complete schema information including column definitions, data types, filterable columns, primary keys, premium status, and refresh schedule. Use when you need to understand the structure and availability of a datatable before querying its data." }, { "slug": "NASDAQ_GET_DIVIDEND_HISTORY", "name": "Get Dividend Fundamentals", "description": "Retrieves quarterly dividend-related fundamentals for a specific stock ticker from SHARADAR SF1 database. Returns dividend metrics including DPS (dividend per share), dividend yield, payout ratio, and cash flow from dividends. Data is quarterly (dimension=ARQ) and sourced from company financial statements. Note: This endpoint accesses the premium SHARADAR SF1 database which may require subscription access." }, { "slug": "NASDAQ_GET_REAL_TIME_QUOTE", "name": "Get Stock Price Data", "description": "Retrieves end-of-day historical stock price data for a specific ticker symbol from the QUOTEMEDIA database. Returns OHLC (Open, High, Low, Close) prices, volume, and dividend/split information. Note: This provides historical end-of-day data, not live real-time quotes." }, { "slug": "NASDAQ_GET_TABLE_ROW", "name": "Get Table Row By Filter", "description": "Retrieves rows from a NASDAQ Data Link datatable by filtering on a specified column and value. This action queries NASDAQ Data Link datatables (e.g., SHARADAR/SF1 for fundamental data, SHARADAR/TICKERS for ticker metadata) and returns rows matching the filter criteria. The API may return multiple rows if the filter isn't unique (e.g., filtering ticker='AAPL' in SF1 returns multiple fiscal periods). Use the 'columns' parameter to limit returned fields. Common use cases: - Get fundamental data for a stock: datacode='SHARADAR', datatable_code='SF1', filter_column_name='ticker' - Get ticker metadata: datacode='SHARADAR', datatable_code='TICKERS', filter_column_name='ticker' - Get price data: datacode='SHARADAR', datatable_code='SEP', filter_column_name='ticker'" }, { "slug": "NASDAQ_GET_TABLES_BY_DATE", "name": "Get Datatables Updated on Specific Date", "description": "Retrieves Nasdaq Data Link datatables (databases) that were last updated on a specific date. This action fetches all available datatables from Nasdaq Data Link's catalog and filters them by their last update timestamp to return only those updated on the target date. Useful for discovering recently updated data sources." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nasdaq_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Nasdaq Data Link API Key", "type": "string", "description": "Your Nasdaq Data Link API key. You can find this key by logging into your Nasdaq Data Link account and going to your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "needle", "name": "Needle", "logo": "https://logos.composio.dev/api/needle", "description": "Needle provides retrieval-augmented generation (RAG) tools that enable semantic search across your data, facilitating the development of AI agents and applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEEDLE_ADD_FILES_TO_COLLECTION", "name": "Add files to a collection", "description": "Tool to add files to a collection by providing file URLs. Use when you need to add one or more files to an existing collection. URLs can be public or private (generated via the Files API)." }, { "slug": "NEEDLE_ADD_FILES_TO_LOCAL_CONNECTOR", "name": "Add Files to Local Connector", "description": "Tool to add files to a local connector by providing file metadata. Use when you need to add external files to a connector using their URLs." }, { "slug": "NEEDLE_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection. Use after confirming the collection name." }, { "slug": "NEEDLE_CREATE_LOCAL_CONNECTOR", "name": "Create Local Connector", "description": "Tool to create a local connector that monitors specified folders on a device. Use when setting up file indexing from a local machine into Needle collections." }, { "slug": "NEEDLE_DELETE_FILES_FROM_COLLECTION", "name": "Delete files from a collection", "description": "Tool to delete files from a specific collection by providing file IDs. Use after confirming valid file IDs to remove from the collection." }, { "slug": "NEEDLE_DELETE_FILES_FROM_LOCAL_CONNECTOR", "name": "Delete files from local connector", "description": "Tool to delete files from a local connector by filename or file IDs. Use when you need to remove files from a connector's local storage." }, { "slug": "NEEDLE_GET_COLLECTION", "name": "Get Collection", "description": "Tool to retrieve details for a specific collection by its ID. Use when you need to get collection metadata including name, creation date, and search query count." }, { "slug": "NEEDLE_GET_COLLECTION_STATS", "name": "Get collection stats", "description": "Tool to retrieve statistics for a specific collection by its ID. Use when you need document count, index size, and timestamps after confirming the collection exists. Zero document count is a valid response for empty collections, not an error." }, { "slug": "NEEDLE_GET_FILE_DOWNLOAD_URL", "name": "Get File Download URL", "description": "Tool to get a short-lived signed private download URL for a Needle file. Use when you need to retrieve file content but the public storage URL requires authentication. The returned URL should be used immediately as it expires quickly." }, { "slug": "NEEDLE_GET_FILE_UPLOAD_URL", "name": "Get File Upload URL", "description": "Tool to get signed URLs for uploading local files to Needle. Use when you need to upload files to a collection. The upload URLs are valid for a short time, so upload files immediately after receiving the URLs. Multiple content types can be specified to generate multiple upload URLs in a single request." }, { "slug": "NEEDLE_GET_LOCAL_CONNECTOR", "name": "Get local connector", "description": "Tool to retrieve details of a local connector by its ID. Use when you need information about a specific local connector's configuration, device details, and associated folders." }, { "slug": "NEEDLE_LIST_COLLECTION_FILES", "name": "List Collection Files", "description": "Tool to list all files within a specific collection by its ID. Returns file metadata (including file URLs) only — not document text content; fetch file URLs separately to access content. Use when you have a collection ID and need to retrieve its files. Supports pagination." }, { "slug": "NEEDLE_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list collections. Use after authenticating with your API key to page through collections. Similar collection names can exist; always verify the correct `collection_id` from results before performing subsequent operations." }, { "slug": "NEEDLE_LIST_CONNECTORS", "name": "List Connectors", "description": "Tool to list connectors. Use to retrieve all configured connectors in your account." }, { "slug": "NEEDLE_LIST_LOCAL_CONNECTORS", "name": "List Local Connectors", "description": "Tool to list local connectors. Use to retrieve all local connectors configured in your Needle account." }, { "slug": "NEEDLE_SEARCH_COLLECTION", "name": "Search Collection", "description": "Tool to perform semantic search within a specific Needle collection and return ranked results with source references. Use when you need to retrieve relevant content from a known collection using natural language queries." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "needle_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Needle API Key", "type": "string", "description": "Your Needle API key, obtainable from the Needle settings page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neetoinvoice", "name": "Neetoinvoice", "logo": "https://logos.composio.dev/api/neetoinvoice", "description": "Simple invoicing and time tracking tool. Forever free invoicing solution for businesses.", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neetoinvoice_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization Name", "type": "string", "description": "Your Organization Name is \"acme\" if your neetoinvoice URL is https://acme.neetoinvoice.com/", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from \"Settings\" > \"Integrations\" > \"Zapier\" or from \"Admin Panel\" > \"API Keys\" > \"Add API key\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neetokb", "name": "Neetokb", "logo": "https://logos.composio.dev/api/neetokb", "description": "Simple knowledge base(KB) to reduce support requests", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neetokb_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization Name", "type": "string", "description": "Your Organization Name is `1234` if your neetoKB URL is `https://1234.neetokb.com/admin`", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and go to \"Settings\" > \"Integrations\" > \"API Key\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neo4j", "name": "Neo4J", "logo": "https://logos.composio.dev/api/neo4j", "description": "Graph database platform for connected data and real-time analytics", "category": "developer tools", "authSchemes": [ "OAUTH2", "BASIC", "API_KEY", "S2S_OAUTH2" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEO4J_AGGREGATE_DIRECTORS", "name": "Aggregate Directors Count", "description": "Executes a directorsAggregate GraphQL query to count directors in Neo4j. Use when you need to get the total count of director records in the database. The GraphQL query returns the count of all directors regardless of pagination." }, { "slug": "NEO4J_CREATE_INSTANCE_BETA", "name": "Create Neo4j Aura Instance", "description": "Creates a new Neo4j Aura instance with the specified configuration. Use this action when you need to provision a new Neo4j Aura database instance. The operation is asynchronous - the API returns 202 Accepted while the instance is being created in the background. Use this action when you need to create a new Neo4j Aura database instance for your project. The returned credentials (username and password) should be stored securely as they cannot be retrieved again." }, { "slug": "NEO4J_CREATE_SNAPSHOT", "name": "Create Neo4j Aura Snapshot", "description": "Create an on-demand snapshot of a Neo4j Aura instance. Triggers asynchronous backup creation and returns a snapshot ID that can be used to monitor progress. Use this action when you need to manually create a backup point before major changes or to preserve the current state of your database. Use this action when you want to create an on-demand backup snapshot of your Neo4j Aura instance before performing risky operations like data migrations, schema changes, or bulk updates." }, { "slug": "NEO4J_ESTIMATE_GDS_SESSION_SIZE", "name": "Estimate GDS Session Size", "description": "Estimate the size of a new GDS (Graph Data Science) session based on node/relationship counts and algorithm categories. Use this action when you need to determine the appropriate GDS session size before creating a new graph analytics session. This helps ensure you provision sufficient memory for your graph workloads, particularly useful when planning memory allocation for large-scale graph operations like community detection, pathfinding, or similarity algorithms. The estimation considers the number of nodes, relationships, properties, and intended algorithm categories to provide accurate memory recommendations." }, { "slug": "NEO4J_GET_INSTANCE_BETA", "name": "Get Neo4j Aura Instance Details", "description": "Retrieves details for a specific Neo4j Aura instance using its unique instance ID. Returns comprehensive information including instance name, status, cloud provider, region, memory allocation, connection URL, and other configuration details. Use this action when you need to check the status, configuration, or connection details of a specific Neo4j Aura instance. This is a read-only operation that does not modify any instance state." }, { "slug": "NEO4J_GET_ORGANIZATION_USER", "name": "Get Neo4j Aura Organization User", "description": "Retrieves details of a specific user in a Neo4j Aura organization. Returns user information including email, organization roles, MFA status, last activity, and project-level access permissions. Use this action when you need to inspect user details, verify organization membership, or check user permissions and access levels within an Aura organization." }, { "slug": "NEO4J_GET_PROJECT", "name": "Get Neo4j Aura Project Details", "description": "Retrieve details of a specific Neo4j Aura project (tenant). Returns project information including its ID, name, and available instance configurations with regions, types, memory, storage options, and cloud providers. Use this action when you need to inspect project details or discover available instance configurations before creating a new Aura instance." }, { "slug": "NEO4J_GET_PROJECT_BETA", "name": "Get Neo4j Aura Project Details (v1beta5)", "description": "Retrieve details of a specific Neo4j Aura project (tenant) using the v1beta5 API. Returns project information including its ID, name, and available instance configurations with regions, types, memory, storage options, and cloud providers. Use this action when you need to inspect project details or discover available instance configurations before creating a new Aura instance. This uses the v1beta5 API version which may have additional features compared to v1." }, { "slug": "NEO4J_GET_SNAPSHOT", "name": "Get Neo4j Aura Snapshot Details", "description": "Retrieves details of a specific snapshot for a Neo4j Aura instance. Returns the snapshot profile, current status, and creation timestamp. Use this action when you need to check the status or details of a particular backup snapshot." }, { "slug": "NEO4J_LIST_AGENTS", "name": "List Neo4j Aura Agents", "description": "List all agents belonging to a specific Neo4j Aura project. Returns agent information including ID, name, description, database ID, privacy settings, endpoint links, MCP status, and attached tools. Use this action when you need to retrieve all agents for a specific project to identify available agents or to select a specific agent for subsequent operations." }, { "slug": "NEO4J_LIST_GDS_SESSIONS", "name": "List GDS Sessions", "description": "List all Graph Data Science (GDS) sessions for the authenticated Neo4j Aura account. Returns a summary of each GDS session including status, memory allocation, host information, and expiry date. Use optional filters (instanceId, tenantId, organizationId) to narrow down the results to specific instances or organizational units. Use this action when you need to: - Monitor active GDS sessions and their resource usage - Check session expiry dates to plan for renewals - View host connectivity information for GDS sessions - Audit GDS session creation and status across the organization This action is read-only and does not modify any resources." }, { "slug": "NEO4J_LIST_INSTANCES_BETA", "name": "List Neo4j Aura Instances", "description": "Returns a list of Neo4j Aura instances. Use when you need to retrieve all available Neo4j Aura instances in your account, optionally filtered by tenant." }, { "slug": "NEO4J_LIST_IP_FILTERS", "name": "List IP Filters", "description": "Returns a list of IP filters configured for a Neo4j Aura organization. Use this action when you need to retrieve all IP filters to check which CIDR blocks are allowed or blocked, or to determine which resources are protected by IP filtering." }, { "slug": "NEO4J_LIST_PROJECTS", "name": "List Aura Projects", "description": "List all Aura projects (tenants) available to the authenticated user. Returns a summary of each project including its unique ID and name. Use this action when you need to retrieve all Aura projects to identify which projects are accessible or to select a specific project for subsequent operations." }, { "slug": "NEO4J_LIST_PROJECT_USERS", "name": "List Project Users", "description": "List all users in a specific Neo4j Aura project. Returns user information including email, user ID, and project roles for each user. Use this action when you need to retrieve all users associated with a project to identify team members or verify user access levels." }, { "slug": "NEO4J_LIST_SNAPSHOTS", "name": "List Neo4j Aura Snapshots", "description": "Lists available snapshots for a Neo4j Aura instance. Returns both scheduled and ad-hoc snapshots with their status and creation timestamps. Use when you need to retrieve information about available database backups or recovery points for a specific Aura instance. The date parameter can filter results to a specific day." }, { "slug": "NEO4J_PAUSE_INSTANCE_BETA", "name": "Pause Neo4j Aura Instance", "description": "Pauses a Neo4j Aura instance. Use when you need to temporarily stop an instance to reduce costs or perform maintenance. The instance can be resumed later using the ResumeInstance action. This action is asynchronous - the instance will be in a 'pausing' state until the operation completes. Note: this action cannot be performed if an ongoing operation (such as cloning) is in progress on the instance." }, { "slug": "NEO4J_RESTORE_SNAPSHOT", "name": "Restore Neo4j Aura Instance from Snapshot", "description": "Restore a Neo4j Aura instance from a snapshot. Replaces all current data with the snapshot data. This action is irreversible — all data since the snapshot was taken will be permanently lost. Use this action when you need to recover an Aura instance to a previous state from a specific snapshot. This operation cannot be undone once initiated." }, { "slug": "NEO4J_UPDATE_INSTANCE", "name": "Update Neo4j Aura Instance", "description": "Updates a Neo4j Aura instance configuration. Allows modifying instance properties such as name, memory allocation, storage size, vector optimization, and graph analytics plugin. Use this action when you need to modify an existing Aura instance's settings or resource allocation. Note: Some operations like memory or storage resizing may trigger an asynchronous update process where the instance status changes to 'updating'. Check the instance status after making changes." }, { "slug": "NEO4J_UPDATE_INSTANCE_BETA", "name": "Update Neo4j Aura Instance", "description": "Edits the configuration of a Neo4j Aura instance. Allows updating the instance name, memory allocation, storage size, and plugin configurations. Use this action when you need to modify an existing Neo4j Aura instance's settings such as renaming the instance, adjusting memory/storage resources, or enabling/disabling the graph analytics plugin or vector optimization features. Note: Some operations like resizing memory or storage may result in a 202 Accepted response indicating the resize request was accepted for async processing." }, { "slug": "NEO4J_UPDATE_IP_FILTER", "name": "Update IP Filter", "description": "Updates an existing IP filter for a Neo4j Aura organization. Use this action when you need to modify an existing IP filter's settings, such as updating its name, description, allow list entries, or enabling/disabling the filter. The request body accepts partial updates - only include the fields you want to modify. This is an idempotent operation that updates the specified properties while preserving all other existing values." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "neo4j_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "neo4j_bearer", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bearer Token", "type": "string", "description": "SSO-generated bearer token for Neo4j database authentication", "required": true, "default": null } ], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "neo4j_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Neo4j Aura API Client ID from Neo4j Aura Console → Account → API Keys (https://console.neo4j.io/).", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Neo4j Aura API Client Secret paired with the Client ID above. Shown only once at creation time.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "nethunt_crm", "name": "NetHunt CRM", "logo": "https://logos.composio.dev/api/nethunt_crm", "description": "NetHunt is a Gmail CRM that brings sales automation and drip campaigns straight to your inbox", "category": "crm", "authSchemes": [ "BASIC" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NETHUNT_CRM_DELETE_RECORD", "name": "Delete Record", "description": "Tool to delete a NetHunt CRM record by ID. Use when you need to permanently remove a record from the system." }, { "slug": "NETHUNT_CRM_FIND_RECORDS", "name": "Find Records", "description": "Tool to find records by ID or text query in NetHunt CRM. Search for records within a folder using record ID or search query. Use when you need to locate specific records in a folder." }, { "slug": "NETHUNT_CRM_GET_NEW_CALL_LOGS", "name": "Get New Call Logs", "description": "Find recently created call logs in NetHunt CRM. Returns call logs created after a specified time. Use when you need to retrieve new call activity from a specific folder." }, { "slug": "NETHUNT_CRM_GET_NEW_COMMENTS", "name": "Get New Comments", "description": "Tool to find recently created record comments in a NetHunt CRM folder. Returns comments created after a specified time (defaults to last 24 hours)." }, { "slug": "NETHUNT_CRM_GET_NEW_GDRIVE_FILES", "name": "Get New Google Drive Files", "description": "Tool to find recently created Google Drive files linked to NetHunt CRM records. Use when you need to retrieve files created after a specific time in a NetHunt folder. Returns file metadata including Google Drive links, MIME types, and associated record IDs. Useful for tracking new document uploads and file attachments." }, { "slug": "NETHUNT_CRM_GET_NEW_RECORDS", "name": "Get New Records", "description": "Tool to find recently created records in NetHunt CRM. Use when you need to retrieve records that were created after a specific time in a given folder. Returns record details including ID, creation time, and field values. If no 'since' time is specified, returns records from the last 24 hours." }, { "slug": "NETHUNT_CRM_GET_RECORD_CHANGES", "name": "Get Record Changes", "description": "Tool to find recent record changes in a NetHunt CRM folder. Returns change history including CREATE, UPDATE, DELETE actions with field-level diffs. Use when you need to track modifications to records, audit changes, or sync data based on recent updates." }, { "slug": "NETHUNT_CRM_GET_UPDATED_RECORDS", "name": "Get Updated Records", "description": "Tool to find recently updated records in NetHunt CRM. Returns records updated after a specified time, optionally filtered by field names. Use when you need to track changes or sync records that have been modified." }, { "slug": "NETHUNT_CRM_LIST_FOLDER_FIELDS", "name": "List Folder Fields", "description": "Tool to list folder fields in NetHunt CRM. Returns the field definitions for a specific folder. Use when you need to retrieve all field metadata for a given folder ID." }, { "slug": "NETHUNT_CRM_LIST_READABLE_FOLDERS", "name": "List Readable Folders", "description": "Tool to list all accessible folders in NetHunt CRM. Returns folders the user has read access to. Use when you need to retrieve available folders for organizing or accessing records." }, { "slug": "NETHUNT_CRM_LIST_WRITABLE_FOLDERS", "name": "List Writable Folders", "description": "Tool to list folders the user can create records in. Returns folders the user has write access to. Use when you need to retrieve writable folders for creating new records." }, { "slug": "NETHUNT_CRM_TEST_AUTH", "name": "Test NetHunt CRM Authentication", "description": "Tool to verify request credentials and test authentication. Returns information about the authenticated user including name and email. Use this action to confirm API credentials are valid before making other requests." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "nethunt_crm_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Email Address", "type": "string", "description": "Your Gmail email address with NetHunt enabled", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your NetHunt API key. To obtain it, log into NetHunt with your Gmail account and find the API key under the NetHunt CRM tab in Settings (click on \"Generate\" if necessary).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "netlify", "name": "Netlify", "logo": "https://logos.composio.dev/api/netlify", "description": "Cloud platform for web development with continuous deployment and serverless functions", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "netlify_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "netlify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Create at Applications > Personal access tokens in Netlify UI", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neuronwriter", "name": "Neuronwriter", "logo": "https://logos.composio.dev/api/neuronwriter", "description": "NeuronWriter is a content optimization tool that leverages semantic SEO and AI to enhance content creation and improve search engine rankings.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEURONWRITER_IMPORT_CONTENT", "name": "Import Content", "description": "Tool to import content into the editor. Use when updating editor content via HTML or URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neuronwriter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NeuronWriter API Key", "type": "string", "description": "Your NeuronWriter API key, obtainable from your profile under the 'Neuron API access' tab.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neutrino", "name": "Neutrino", "logo": "https://logos.composio.dev/api/neutrino", "description": "Neutrino API provides a suite of general-purpose APIs for various tasks, including data validation, geolocation, and security.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "NEUTRINO_ADD_WATERMARK_TO_IMAGE", "name": "Add Watermark to Image", "description": "Add a watermark to an image with customizable position, opacity, and output format. Use when you need to overlay a logo, text image, or branding on photos or graphics. Supports resizing the output and multiple positioning options." }, { "slug": "NEUTRINO_BAD_WORD_FILTER", "name": "Bad Word Filter", "description": "Tool to detect bad words and profanity in text. Use when scanning content for swear words." }, { "slug": "NEUTRINO_BIN_LOOKUP", "name": "BIN Lookup", "description": "Perform a BIN (Bank Identification Number) lookup to retrieve comprehensive card issuer information. This tool identifies the card brand (VISA, MASTERCARD, AMEX, etc.), card type (debit/credit), issuer details, and issuer country from the first 6-8 digits of a card number. Optionally performs fraud detection by comparing the customer's IP geolocation with the card issuer country. Use cases: - Payment fraud detection and prevention - Card validation before processing transactions - Geographic risk assessment for e-commerce - Card type identification for routing payments The database contains ~2.5 million BIN records covering all major card issuers globally and is updated weekly." }, { "slug": "NEUTRINO_CHECK_IP_BLOCKLIST", "name": "IP Blocklist", "description": "Check if an IP address is on a blocklist. Detect IPs associated with malware, anonymous proxies, TOR exit nodes, botnets, spam sources and malicious servers. Use when you need to verify if an IP address is known to be malicious or part of a threat network." }, { "slug": "NEUTRINO_CONVERT", "name": "Convert Value", "description": "Tool to perform unit and currency conversions. Use when you need to convert a value from one unit or currency to another. Example: convert 100 USD to EUR." }, { "slug": "NEUTRINO_EMAIL_VALIDATE", "name": "Validate and analyze an email address", "description": "Validates and analyzes email addresses for syntax, domain validity, DNS/MX records, and detects freemail/disposable providers. This tool performs comprehensive email validation including: - RFC822/RFC2822 syntax compliance checking - Domain existence and DNS verification - Mail exchange (MX) record validation - Detection of free email providers (Gmail, Yahoo, etc.) - Identification of disposable/temporary email services - Optional automatic typo correction for common domain mistakes Important: This does NOT verify if a specific email address/mailbox actually exists with the provider. For mailbox verification, use the EMAIL_VERIFY action instead. Use this tool when you need to validate email addresses before sending, check email quality, or filter out disposable addresses." }, { "slug": "NEUTRINO_EMAIL_VERIFY", "name": "Verify Email Address", "description": "Tool to verify and analyze the deliverability of an email address. Use when you need SMTP-based validation before sending emails." }, { "slug": "NEUTRINO_GEOCODE_ADDRESS", "name": "Geocode Address", "description": "Tool to geocode an address. Use when you need geographic coordinates for an address or place name." }, { "slug": "NEUTRINO_GEOCODE_REVERSE", "name": "Reverse Geocode", "description": "Convert geographic coordinates (latitude/longitude) into real-world address information. Returns comprehensive location data including formatted addresses, administrative boundaries, timezone information, and location metadata. Useful for translating GPS coordinates into human-readable locations or enriching location data with regional details. The zoom parameter controls detail level: 'address' returns building-level precision, while 'city' or 'country' returns broader geographic information." }, { "slug": "NEUTRINO_HLR_LOOKUP", "name": "HLR Lookup", "description": "Perform real-time HLR (Home Location Register) lookup to validate mobile numbers and retrieve detailed network information. This tool connects to the global mobile cellular network to check if a mobile number is active, registered, and reachable. It provides comprehensive details including carrier information, porting status, roaming status, and network identifiers (MCC, MNC, IMSI). Use this tool to: - Validate that a mobile number is currently active and registered on a network - Determine the current carrier and check if a number has been ported - Check device reachability and roaming status in real-time - Retrieve mobile network identifiers (MCC, MNC, IMSI) for telecom operations Note: Numbers must be in international format (e.g., +447911123456) or provide a country-code parameter." }, { "slug": "NEUTRINO_HOST_REPUTATION", "name": "Host Reputation", "description": "Check if an IP address, domain, or URL is listed on DNS-based Blackhole Lists (DNSBLs). DNSBLs track IPs and domains associated with spam, malware, proxies, and other malicious activity. This action queries 150+ DNSBLs to determine if a host has a bad reputation. Useful for: - Email spam filtering and sender reputation checks - Security threat assessment - Identifying compromised or malicious hosts Note: This performs realtime DNS lookups and may take 5-20 seconds to complete." }, { "slug": "NEUTRINO_HTML_CLEAN", "name": "HTML Clean", "description": "Tool to clean and sanitize untrusted HTML. Use when you need to strip or neutralize unwanted tags and attributes before rendering." }, { "slug": "NEUTRINO_HTML_RENDER", "name": "HTML Render", "description": "Render HTML content to PDF, PNG, or JPG format. Converts HTML strings or URLs into downloadable files with extensive customization options including page size, margins, headers/footers, and JavaScript execution." }, { "slug": "NEUTRINO_IMAGE_RESIZE", "name": "Resize Image", "description": "Resize, crop, and convert images to PNG or JPG format. Supports multiple resize modes (scale to preserve aspect ratio, pad with background color, or crop). Use when you need to adjust image dimensions, change format, or prepare images for specific size requirements. Supports GIF, ICO, JPEG, PNG, and TIFF input formats." }, { "slug": "NEUTRINO_IP_INFO", "name": "IP Info", "description": "Get comprehensive geolocation and network information for an IPv4 or IPv6 address. Returns location data (country, region, city, coordinates), timezone information, and optionally reverse DNS hostname. Does NOT include VPN/proxy detection or user-agent parsing. For VPN detection, use the IP Probe action instead." }, { "slug": "NEUTRINO_IP_PROBE", "name": "IP Probe", "description": "Analyzes an IPv4 or IPv6 address to extract detailed network intelligence including geolocation, ISP/hosting provider information, ASN details, and security flags (VPN, proxy, TOR detection). Performs live network scanning and service probes. Use when you need comprehensive IP address analysis beyond basic geolocation." }, { "slug": "NEUTRINO_LOOKUP_DOMAIN", "name": "Domain Lookup", "description": "Tool to perform a domain lookup to retrieve WHOIS, DNS records, domain registration information and detect potentially malicious or dangerous domains. Use when you need to assess domain reputation, check for security threats, or gather comprehensive domain intelligence." }, { "slug": "NEUTRINO_PHONE_VALIDATE", "name": "Phone Validate", "description": "Tool to validate and lookup phone numbers. Use when you need to confirm number format and fetch location, carrier, and type details." }, { "slug": "NEUTRINO_QR_CODE", "name": "QR Code", "description": "Generate a QR code or Code 128 barcode as a PNG image. Use when you need to encode URLs, text, phone numbers, or other data into a scannable code. Examples: Create QR code for a website URL, encode contact information, generate barcode for product tracking." }, { "slug": "NEUTRINO_RUN_BROWSER_BOT", "name": "Browser Bot", "description": "Tool to automate browser interactions using a real Chromium browser. Use when you need to extract content, fill forms, capture screenshots, or navigate complex JavaScript-heavy websites." }, { "slug": "NEUTRINO_SMS_VERIFY", "name": "SMS Verify", "description": "Tool to send a unique security code via SMS. Use when verifying a user's phone number after collection." }, { "slug": "NEUTRINO_UA_LOOKUP", "name": "UA Lookup", "description": "Parse and analyze User-Agent strings to extract detailed browser, device, and operating system information. Returns device type (desktop/phone/tablet/robot), browser name and version, OS details, device specifications (brand, model, screen resolution, price), and indicators for mobile devices, webviews, and frozen User-Agents. Supports both traditional UA strings and modern User-Agent Client Hints." }, { "slug": "NEUTRINO_URL_INFO", "name": "URL Info", "description": "Tool to parse, analyze, and retrieve content from the supplied URL. Use when you need detailed URL metadata or to fetch page content." }, { "slug": "NEUTRINO_VERIFY_SECURITY_CODE", "name": "Verify Security Code", "description": "Verify a security code generated by SMS Verify or Phone Verify APIs. Use this after sending a security code via SMS or phone call to validate that the user provided the correct code. Codes expire after 15 minutes. The verification must use the same API credentials that generated the code." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neutrino_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Neutrino API Key", "type": "string", "description": "Your Neutrino API key, which can be generated from your account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Neutrino User ID", "type": "string", "description": "Your user ID, a static identifier for your Neutrino API account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "neverbounce", "name": "NeverBounce", "logo": "https://logos.composio.dev/api/neverbounce", "description": "NeverBounce provides email verification services to ensure the validity of email addresses, enhancing deliverability and reducing bounce rates.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEVERBOUNCE_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to get account information including credits, job counts, and usage statistics. Use when retrieving NeverBounce account summary after authentication." }, { "slug": "NEVERBOUNCE_CONFIRM_POE", "name": "Confirm Proof of Email", "description": "Tool to confirm proof of email ownership (POE) from the JavaScript widget. Use when verifying server-side that a user confirmed their email through the widget." }, { "slug": "NEVERBOUNCE_JOBS_CREATE", "name": "Create NeverBounce Bulk Verification Job", "description": "Tool to create a new bulk verification job with parsing, sampling, and callback options. Use for asynchronous list verification with advanced control." }, { "slug": "NEVERBOUNCE_JOBS_DELETE", "name": "Delete NeverBounce Job", "description": "Tool to permanently delete a job and its results. Use when you need to irreversibly remove a bulk verification job. This delete is irreversible." }, { "slug": "NEVERBOUNCE_JOBS_DOWNLOAD_GET", "name": "Download Job Results (GET)", "description": "Tool to download job results as a CSV file via GET. Use after job completion to retrieve segmented or enriched CSV output." }, { "slug": "NEVERBOUNCE_JOBS_RESULTS", "name": "Retrieve Job Results", "description": "Tool to retrieve paginated results for a completed job, including original data and verification outcomes. Use after confirming job completion; avoid aggressive polling as repeated calls before completion risk rate limit errors." }, { "slug": "NEVERBOUNCE_JOBS_START", "name": "Start NeverBounce Job", "description": "Tool to start a parsed job when auto_start is disabled. Use when you need to manually initiate a job that was created with auto_start=false." }, { "slug": "NEVERBOUNCE_JOBS_STATUS", "name": "Get bulk job status", "description": "Tool to get the status and progress of a bulk verification job. Use when" }, { "slug": "NEVERBOUNCE_PARSE_JOB", "name": "Parse NeverBounce Job", "description": "Tool to parse a job created with auto_parse disabled. Use when you need to manually parse a job. Cannot reparse once parsed." }, { "slug": "NEVERBOUNCE_SEARCH_JOBS", "name": "Search bulk verification jobs", "description": "Tool to search and list bulk verification jobs in your account with pagination and filtering. Use when retrieving jobs by id, filename, or status, or when listing all jobs with pagination." }, { "slug": "NEVERBOUNCE_SINGLE_CHECK", "name": "NeverBounce Single Check", "description": "Tool to verify a single email address and gather additional information. Use when you need real-time validation at the point of entry." }, { "slug": "NEVERBOUNCE_WIDGET_SEND_EVENT", "name": "JS Widget Send Event", "description": "Tool to send widget form events via the JS widget API. Use when reporting form.load or form.completion events after user interactions with your form." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "neverbounce_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NeverBounce API Key", "type": "string", "description": "The API key used to authenticate requests to the NeverBounce API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "new_relic", "name": "New Relic", "logo": "https://logos.composio.dev/api/new_relic", "description": "New Relic is a comprehensive observability platform that helps developers and operations teams monitor, debug, and improve their entire stack, including applications, infrastructure, and customer experience.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 159, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEW_RELIC_ADD_NOTIFICATION_CHANNELS_TO_POLICY", "name": "Add Notification Channels to Policy", "description": "Tool to add notification channels to an alert policy using the NerdGraph GraphQL API. Use when you need to associate existing notification channels with an alert policy to receive notifications when alerts trigger." }, { "slug": "NEW_RELIC_ADD_TAGS_TO_ENTITY", "name": "Add Tags to Entity", "description": "Tool to add tags with values to a specific New Relic entity via NerdGraph GraphQL API. Use when you need to organize and categorize entities for filtering and organization. Note: For APM agents, a restart may be required after adding new tags." }, { "slug": "NEW_RELIC_ADD_WIDGETS_TO_DASHBOARD_PAGE", "name": "Add Widgets to Dashboard Page", "description": "Tool to add widgets to an existing New Relic dashboard page via NerdGraph GraphQL API. Use when you need to programmatically add visualizations (line charts, area charts, bar charts, tables, etc.) to a dashboard page. Requires the dashboard page GUID and widget configurations including NRQL queries, layout, and visualization settings." }, { "slug": "NEW_RELIC_CONFIGURE_CLOUD_INTEGRATION", "name": "Configure Cloud Integration", "description": "Tool to enable and configure cloud integrations for monitoring in New Relic. Use this to set up monitoring for AWS, Azure, or GCP services. The cloud account must be linked to New Relic before configuring integrations." }, { "slug": "NEW_RELIC_CREATE_AI_NOTIFICATIONS_CHANNEL", "name": "Create AI Notifications Channel", "description": "Tool to create a New Relic AI Notifications channel via NerdGraph GraphQL API. Use when setting up notification channels for Applied Intelligence alerts. Requires a pre-existing destination (created via aiNotificationsCreateDestination)." }, { "slug": "NEW_RELIC_CREATE_AI_NOTIFICATIONS_DESTINATION", "name": "Create AI Notifications Destination", "description": "Tool to create an AI notifications destination in New Relic for services like Jira or ServiceNow. Use when you need to configure a new notification endpoint for AI-powered alerts." }, { "slug": "NEW_RELIC_CREATE_AI_WORKFLOW", "name": "Create AI Workflow", "description": "Tool to create an AI workflow for automated incident response in New Relic. Use when you need to set up automated notifications and enrichments for specific types of issues based on filtering rules. Workflows connect issue filters to notification channels and can include NRQL query enrichments for additional context." }, { "slug": "NEW_RELIC_CREATE_ALERT_CHANNEL", "name": "Create Alert Notification Channel", "description": "Tool to create an alert notification channel. Use when you need to register a new endpoint (email, webhook, etc.) for alert notifications." }, { "slug": "NEW_RELIC_CREATE_ALERT_POLICY", "name": "Create Alert Policy", "description": "Creates a new alert policy in New Relic. Alert policies are containers for alert conditions and define how incidents are grouped. Use this to set up monitoring thresholds and notification rules for your applications." }, { "slug": "NEW_RELIC_CREATE_ALERTS_NRQL_CONDITION_STATIC", "name": "Create Static NRQL Alert Condition", "description": "Tool to create a static NRQL alert condition using New Relic's NerdGraph GraphQL API. Use when you need to set up monitoring for specific NRQL query results with threshold-based alerting. Supports signal loss detection and gap filling configuration." }, { "slug": "NEW_RELIC_CREATE_ALERTS_POLICY_GRAPHQL", "name": "Create Alert Policy (GraphQL)", "description": "Tool to create a new alert policy using New Relic's NerdGraph GraphQL API. Use when you need to create a container for grouping alert conditions. Alert policies define how incidents are grouped and managed." }, { "slug": "NEW_RELIC_CREATE_API_ACCESS_KEYS", "name": "Create API Access Keys", "description": "Tool to create New Relic API access keys using NerdGraph. Use when you need to generate user API keys or ingest keys (BROWSER or LICENSE types). Maximum 1,000 keys per ingest key type allowed." }, { "slug": "NEW_RELIC_CREATE_BROKEN_LINKS_MONITOR", "name": "Create Broken Links Monitor", "description": "Tool to create a broken links monitor that scans a webpage for broken links. Use when you need to set up automated monitoring to detect broken links on a website. The monitor will periodically check the specified URL and report any broken links found." }, { "slug": "NEW_RELIC_CREATE_DASHBOARD", "name": "Create Dashboard", "description": "Tool to create a New Relic dashboard using NerdGraph GraphQL API. Use when you need to create custom dashboards with widgets, pages, and visualizations. Supports markdown, NRQL queries, and various chart types." }, { "slug": "NEW_RELIC_CREATE_DASHBOARD_SNAPSHOT_URL", "name": "Create Dashboard Snapshot URL", "description": "Tool to create a snapshot URL for sharing a New Relic dashboard at a specific point in time. Use when you need to generate a shareable link to a dashboard's current state for distribution or archiving." }, { "slug": "NEW_RELIC_CREATE_DEPLOYMENT_MARKER", "name": "Create Deployment Marker", "description": "Tool to record a deployment marker in New Relic to track changes and their effects on your systems. Deployment markers appear in New Relic UI charts and help correlate changes with system performance. Use this after deploying new code or configuration changes." }, { "slug": "NEW_RELIC_CREATE_ENTITY_RELATIONSHIP", "name": "Create Entity Relationship", "description": "Tool to create or replace a user-defined relationship between two New Relic entities via NerdGraph GraphQL API. Use when you need to establish custom relationships like BUILT_FROM, CALLS, CONTAINS, etc. If the relationship already exists, it will be updated with new creation time and creator info." }, { "slug": "NEW_RELIC_CREATE_EXAMPLE_BROWSER_APPLICATION", "name": "Create Example Browser Application", "description": "Tool to create a new browser application in New Relic via NerdGraph GraphQL API. Use when you need to set up browser monitoring for a web application." }, { "slug": "NEW_RELIC_CREATE_EXAMPLE_MOBILE_APPLICATION", "name": "Create Example Mobile Application", "description": "Tool to create a new example mobile application in New Relic via NerdGraph GraphQL API. Use when you need to set up mobile application monitoring for iOS or Android apps." }, { "slug": "NEW_RELIC_CREATE_EXTERNAL_SERVICE_CONDITION", "name": "Create External Service Alert Condition", "description": "Tool to create an external service alert condition in New Relic. Use when you need to monitor external service calls from your APM applications and alert on metrics like response time, throughput, or error rate." }, { "slug": "NEW_RELIC_CREATE_INFRA_CONDITION", "name": "Create Infrastructure Alert Condition", "description": "Tool to create an infrastructure alert condition in New Relic. Use when you need to monitor infrastructure metrics (CPU, memory, disk), detect when processes stop running, or alert when hosts stop reporting. Supports critical and warning thresholds." }, { "slug": "NEW_RELIC_CREATE_LOCATION_FAILURE_CONDITION", "name": "Create Location Failure Alert Condition", "description": "Tool to create a location failure alert condition in New Relic. Use when you need to monitor synthetic monitors and trigger alerts when multiple locations fail simultaneously." }, { "slug": "NEW_RELIC_CREATE_LOG_DATA_PARTITION_RULE", "name": "Create Log Data Partition Rule", "description": "Tool to create a log data partition rule using New Relic's NerdGraph GraphQL API. Use when you need to route logs to specific partitions based on matching criteria for better organization and retention management." }, { "slug": "NEW_RELIC_CREATE_LOOKUP_TABLE", "name": "Create Lookup Table", "description": "Tool to upload a new lookup table to your New Relic account. Lookup tables allow you to enrich telemetry data by joining additional context during NRQL queries. Use this when you need to add supplemental data like user mappings, product catalogs, or reference data that can be queried alongside your telemetry." }, { "slug": "NEW_RELIC_CREATE_METRIC_NORMALIZATION_RULE", "name": "Create Metric Normalization Rule", "description": "Tool to create a metric normalization rule using New Relic's NerdGraph GraphQL API. Use when you need to normalize metric names by replacing patterns, ignoring specific metrics, or preventing new metrics. Rules help consolidate similar metrics and reduce cardinality." }, { "slug": "NEW_RELIC_CREATE_MONITOR", "name": "Create Synthetic Monitor", "description": "Tool to create a new synthetic monitor in New Relic for monitoring website or API availability. Note: Only supports legacy synthetics runtime versions. Use when you need to set up uptime monitoring, performance checks, or automated testing for your web services." }, { "slug": "NEW_RELIC_CREATE_NRQL_BASELINE_CONDITION", "name": "Create NRQL Baseline Alert Condition", "description": "Tool to create a NRQL baseline alert condition in New Relic via NerdGraph GraphQL API. Baseline conditions use machine learning to detect anomalies when metrics deviate from historical baselines. Use when you need anomaly detection rather than static thresholds." }, { "slug": "NEW_RELIC_CREATE_NRQL_CONDITION", "name": "Create NRQL Condition", "description": "Creates a new NRQL alert condition for a specified policy. NRQL conditions allow you to define alerts based on custom NRQL queries. Use this to set up advanced monitoring that triggers alerts when query results exceed defined thresholds." }, { "slug": "NEW_RELIC_CREATE_SCRIPTED_MONITOR", "name": "Create Scripted Monitor", "description": "Tool to create a scripted monitor in New Relic Synthetics using NerdGraph GraphQL API. Use when you need to create automated browser tests or API endpoint checks. Supports both scripted browser monitors (simulate user interactions) and scripted API monitors (test API endpoints)." }, { "slug": "NEW_RELIC_CREATE_SECURE_CREDENTIAL", "name": "Create Secure Credential", "description": "Tool to add a secure credential to New Relic for use in synthetic monitors. Use when you need to store sensitive data like API keys, passwords, or tokens that will be referenced in synthetic monitor scripts." }, { "slug": "NEW_RELIC_CREATE_SERVICE_LEVEL", "name": "Create Service Level", "description": "Tool to create a service level indicator (SLI) and optional objectives (SLO) using New Relic's NerdGraph GraphQL API. Use when you need to define and track service quality metrics like latency, error rates, or availability." }, { "slug": "NEW_RELIC_CREATE_SYNTHETICS_ALERT_CONDITION", "name": "Create Synthetics Alert Condition", "description": "Tool to create a synthetics alert condition for monitoring synthetic checks. Use when you need to set up alerts for synthetic monitor failures or performance issues." }, { "slug": "NEW_RELIC_CREATE_SYNTHETICS_PRIVATE_LOCATION", "name": "Create Synthetics Private Location", "description": "Tool to create a Synthetics private location via New Relic's NerdGraph GraphQL API. Use when you need to set up a new private location for running synthetic monitors from your own infrastructure." }, { "slug": "NEW_RELIC_CREATE_SYNTHETICS_SECURE_CREDENTIAL", "name": "Create Synthetics Secure Credential", "description": "Tool to create a secure credential in New Relic Synthetics using NerdGraph GraphQL API. Use when you need to store sensitive data like API keys, passwords, or tokens for use in synthetic monitors." }, { "slug": "NEW_RELIC_CREATE_SYNTHETICS_SIMPLE_MONITOR", "name": "Create Synthetics Simple Monitor", "description": "Tool to create a New Relic Synthetics simple (ping) monitor to check URL/endpoint accessibility. Use when you need to monitor website or API endpoint availability from multiple geographic locations. The monitor performs HTTP/HTTPS requests at configured intervals and alerts on failures." }, { "slug": "NEW_RELIC_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in New Relic account via NerdGraph GraphQL API. Use when you need to add a new user to an authentication domain with specific access tier. Requires authentication domain ID, user email, name, and user type tier." }, { "slug": "NEW_RELIC_DELETE_AGENT_APPLICATION", "name": "Delete Agent Application", "description": "Tool to delete an APM application entity via NerdGraph GraphQL API. Use when you need to remove an application that has not reported data for at least 12 hours." }, { "slug": "NEW_RELIC_DELETE_AI_NOTIFICATIONS_CHANNEL", "name": "Delete AI notifications channel", "description": "Tool to delete an AI notifications channel via NerdGraph GraphQL API. Use when you need to remove a notification channel from your New Relic account." }, { "slug": "NEW_RELIC_DELETE_AI_NOTIFICATIONS_DESTINATION", "name": "Delete AI Notifications Destination", "description": "Tool to delete an AI notifications destination via NerdGraph GraphQL API. Use when you need to remove a notification destination by its ID." }, { "slug": "NEW_RELIC_DELETE_ALERT_CHANNEL", "name": "Delete Alert Channel", "description": "Tool to delete an alert notification channel via REST API. Use when you have the channel ID and want to remove it via New Relic's REST API." }, { "slug": "NEW_RELIC_DELETE_ALERT_POLICY", "name": "Delete alert policy", "description": "Tool to delete an existing alert policy via REST API. Use when you have the policy ID and want to remove it via New Relic's REST API. Use after confirming the policy ID exists." }, { "slug": "NEW_RELIC_DELETE_ALERTS_CONDITION", "name": "Delete alerts condition", "description": "Tool to delete an alert condition via NerdGraph GraphQL API. Use when you have the account ID and condition ID to remove an alert condition." }, { "slug": "NEW_RELIC_DELETE_ALERTS_NOTIFICATION_CHANNEL", "name": "Delete Alert Notification Channel", "description": "Tool to delete an alert notification channel via NerdGraph GraphQL API. Use when you need to remove a notification channel using the channel ID and account ID. Note: This API is deprecated - consider using the new notification platform." }, { "slug": "NEW_RELIC_DELETE_ALERTS_POLICY_VIA_GRAPHQL", "name": "Delete Alert Policy via GraphQL", "description": "Tool to delete an alert policy using New Relic's NerdGraph GraphQL API. Use when you need to delete an alert policy via GraphQL instead of the REST API." }, { "slug": "NEW_RELIC_DELETE_API_ACCESS_KEYS", "name": "Delete API Access Keys", "description": "Tool to delete API access keys (ingest/license keys or user keys) via New Relic's NerdGraph GraphQL API. Use when you need to permanently remove API keys. Deleted keys will no longer grant access to New Relic systems." }, { "slug": "NEW_RELIC_DELETE_DASHBOARD", "name": "Delete Dashboard", "description": "Tool to delete a New Relic dashboard using its entity GUID via NerdGraph GraphQL API. Use when you need to permanently remove a dashboard from a New Relic account." }, { "slug": "NEW_RELIC_DELETE_DATA_PARTITION_RULE", "name": "Delete Data Partition Rule", "description": "Tool to delete a data partition rule via New Relic's NerdGraph GraphQL API. Use when you need to remove a log data partition rule. Note that deleting a rule doesn't delete data already partitioned - that data is retained according to the retention policy." }, { "slug": "NEW_RELIC_DELETE_ENTITY", "name": "Delete Entity", "description": "Tool to delete entities via New Relic's NerdGraph GraphQL API. Use when you need to remove APM-APPLICATION, EXT-SERVICE, or REF-REPOSITORY entities. Returns both successful deletions and failures with error messages." }, { "slug": "NEW_RELIC_DELETE_ENTITY_RELATIONSHIP_USER_DEFINED", "name": "Delete Entity Relationship (User-Defined)", "description": "Tool to delete user-defined relationships between entities via New Relic's NerdGraph GraphQL API. Use when you need to remove custom relationships between entities. If type is not specified, all relationships between the two entities are removed." }, { "slug": "NEW_RELIC_DELETE_EXTERNAL_SERVICE_CONDITION", "name": "Delete External Service Condition", "description": "Tool to delete an external service alert condition in New Relic. Use when you have the condition ID and want to remove an external service alert condition." }, { "slug": "NEW_RELIC_DELETE_INFRA_CONDITION", "name": "Delete Infrastructure Alert Condition", "description": "Tool to delete an infrastructure alert condition. Use when you have the condition ID and want to remove an infrastructure monitoring alert." }, { "slug": "NEW_RELIC_DELETE_LOCATION_FAILURE_CONDITION", "name": "Delete Location Failure Alert Condition", "description": "Tool to delete a location failure alert condition via REST API. Use when you have the condition ID and want to remove a multi-location failure condition from New Relic." }, { "slug": "NEW_RELIC_DELETE_LOOKUP_TABLE", "name": "Delete Lookup Table", "description": "Tool to delete a lookup table from New Relic. Use when you need to remove an existing lookup table from your account." }, { "slug": "NEW_RELIC_DELETE_MONITOR", "name": "Delete synthetic monitor", "description": "Tool to delete an existing synthetic monitor. Use when you have the monitor ID and want to permanently remove a synthetic monitoring check. Deletion is immediate and irreversible." }, { "slug": "NEW_RELIC_DELETE_NRQL_CONDITION", "name": "Delete NRQL Condition", "description": "Tool to delete a NRQL alert condition via REST API. Use when you have the condition ID and want to remove a NRQL alert condition from New Relic." }, { "slug": "NEW_RELIC_DELETE_POLICY_CHANNEL", "name": "Remove channel from policy", "description": "Tool to remove a notification channel from an alert policy. Use when you need to disassociate a channel from a policy without deleting either resource." }, { "slug": "NEW_RELIC_DELETE_SECURE_CREDENTIAL", "name": "Delete Secure Credential", "description": "Tool to delete an existing secure credential from New Relic Synthetics. Use when you need to remove a stored credential that is no longer needed or needs to be replaced." }, { "slug": "NEW_RELIC_DELETE_SYNTHETICS_CONDITION", "name": "Delete Synthetics Alert Condition", "description": "Tool to delete a synthetics alert condition. Use when you have the condition ID and want to remove a synthetics alert condition from New Relic." }, { "slug": "NEW_RELIC_DELETE_SYNTHETICS_MONITOR_GRAPHQL", "name": "Delete Synthetics Monitor (GraphQL)", "description": "Tool to delete a synthetic monitor using its GUID via New Relic's NerdGraph GraphQL API. Use when you need to permanently remove a synthetic monitor by its entity GUID." }, { "slug": "NEW_RELIC_DELETE_SYNTHETICS_PRIVATE_LOCATION", "name": "Delete Synthetics Private Location", "description": "Tool to delete a synthetics private location via New Relic's NerdGraph GraphQL API. Use when you need to remove a private location from your New Relic Synthetics monitoring setup. Deleting a private location will remove it permanently." }, { "slug": "NEW_RELIC_DELETE_SYNTHETICS_SECURE_CREDENTIAL", "name": "Delete Synthetics Secure Credential", "description": "Tool to delete a secure credential used in synthetic monitors via NerdGraph GraphQL API. Use when you need to permanently remove a stored credential that is no longer needed." }, { "slug": "NEW_RELIC_DELETE_TAG_VALUES_FROM_ENTITY", "name": "Delete Tag Values From Entity", "description": "Tool to delete specific tag values from a New Relic entity via NerdGraph GraphQL API. Use when you need to remove individual tag values without deleting the entire tag key. Allows selective removal of values while preserving other values under the same tag." }, { "slug": "NEW_RELIC_DELETE_USER_MANAGEMENT_USER", "name": "Delete User Management User", "description": "Tool to delete a user via New Relic's NerdGraph User Management API. Use when you need to remove a user from your New Relic account." }, { "slug": "NEW_RELIC_DELETE_WORKLOAD", "name": "Delete Workload", "description": "Tool to delete a workload from New Relic by its GUID using NerdGraph GraphQL API. Use when you need to remove a workload that is no longer needed. The workload will be permanently deleted and cannot be recovered." }, { "slug": "NEW_RELIC_DISABLE_CLOUD_INTEGRATION", "name": "Disable Cloud Integration", "description": "Tool to disable (remove) a cloud integration in New Relic. Use when you need to stop monitoring a specific cloud service integration for a linked account." }, { "slug": "NEW_RELIC_DISABLE_METRIC_NORMALIZATION_RULE", "name": "Disable Metric Normalization Rule", "description": "Tool to disable a metric normalization rule using New Relic's NerdGraph GraphQL API. Use when you need to deactivate a rule that normalizes metric names without deleting it permanently." }, { "slug": "NEW_RELIC_DUPLICATE_WORKLOAD", "name": "Duplicate Workload", "description": "Tool to duplicate an existing workload using New Relic's NerdGraph GraphQL API. Use when you need to create a copy of an existing workload with optionally a new name. The duplicated workload will inherit all configuration from the source workload." }, { "slug": "NEW_RELIC_EDIT_METRIC_NORMALIZATION_RULE", "name": "Edit Metric Normalization Rule", "description": "Tool to edit an existing metric normalization rule using New Relic's NerdGraph GraphQL API. Use when you need to update rule parameters like match expression, action, enabled state, or replacement pattern for normalizing metric names." }, { "slug": "NEW_RELIC_ENABLE_METRIC_NORMALIZATION_RULE", "name": "Enable Metric Normalization Rule", "description": "Tool to enable a previously disabled metric normalization rule using New Relic's NerdGraph GraphQL API. Use when you need to reactivate a metric normalization rule that was previously disabled." }, { "slug": "NEW_RELIC_EXECUTE_NRQL_QUERY", "name": "Execute NRQL Query", "description": "Tool to execute NRQL queries to retrieve data from New Relic via NerdGraph GraphQL API. Use when you need to query telemetry data, analyze transactions, logs, metrics, or events. Supports both synchronous queries (returns results immediately) and asynchronous queries (returns queryId for long-running queries). For queries that may take longer than 5 seconds, use async_execution mode or increase timeout." }, { "slug": "NEW_RELIC_FETCH_BROWSER_CONFIGURATION", "name": "Fetch Browser Configuration", "description": "Tool to fetch browser application configuration via New Relic's NerdGraph GraphQL API. Use when you need to retrieve JavaScript configuration (jsConfig) and script snippet (jsConfigScript) for a browser application. The jsConfig can be used in application source code, while jsConfigScript provides a ready-to-inject script tag for web pages." }, { "slug": "NEW_RELIC_FETCH_BROWSER_JAVA_SCRIPT_SNIPPET", "name": "Fetch Browser JavaScript Snippet", "description": "Tool to fetch the JavaScript loader script snippet for a New Relic browser application. Use when you need to retrieve the JS snippet to embed in a web application for browser monitoring." }, { "slug": "NEW_RELIC_FETCH_MOBILE_APPLICATION_TOKEN", "name": "Fetch Mobile Application Token", "description": "Tool to fetch mobile application token for a given mobile app entity GUID via New Relic's NerdGraph GraphQL API. Use when you need to retrieve the application token for mobile app authentication and monitoring setup." }, { "slug": "NEW_RELIC_FETCH_RULES_COLLECTION", "name": "Fetch Rules Collection", "description": "Tool to fetch rules from a New Relic collection (Scorecard) via NerdGraph GraphQL API. Use when you need to retrieve all rules/elements associated with a scorecard collection. Supports pagination via cursor." }, { "slug": "NEW_RELIC_FETCH_YOUR_ORG_ID", "name": "Fetch Your Organization ID", "description": "Tool to fetch your organization ID and name via New Relic's NerdGraph GraphQL API. Use when you need to retrieve the organization details for the authenticated user. This action requires no input parameters and returns the organization ID and name associated with the API key." }, { "slug": "NEW_RELIC_GET_ALERT_CHANNELS", "name": "Get Alert Channels", "description": "Retrieves a paginated list of alert notification channels configured in your New Relic account. Use this to discover available alert channels (email, Slack, webhook, PagerDuty, etc.) that can be linked to alert policies. Returns channel IDs, names, types, configurations, and associated policy IDs." }, { "slug": "NEW_RELIC_GET_ALERT_CONDITIONS", "name": "Get Alert Conditions", "description": "Tool to retrieve alert conditions for a specified policy. Use after you have the policy ID." }, { "slug": "NEW_RELIC_GET_ALERT_POLICIES", "name": "Get Alert Policies", "description": "Tool to retrieve a list of alert policies. Use when you need to list existing alert policies with optional filtering and pagination." }, { "slug": "NEW_RELIC_GET_ALERTS_VIOLATIONS_JSON", "name": "Get Alerts Violations", "description": "Tool to retrieve a list of alert violations from New Relic. Use when you need to query historical or current alert violations with optional filtering by date range and open status." }, { "slug": "NEW_RELIC_GET_APPLICATIONS", "name": "Get Applications", "description": "Tool to retrieve a list of New Relic applications. Use when you need to list all applications or filter by name, host, or IDs after authenticating your API key." }, { "slug": "NEW_RELIC_GET_APP_METRIC_DATA", "name": "Get App Metric Data", "description": "Tool to retrieve metric timeslice data for a New Relic application. Returns values like call_count, average_response_time, and other performance metrics. Use when you need to fetch specific metric data for an application." }, { "slug": "NEW_RELIC_GET_APP_METRICS_NAMES", "name": "Get Application Metrics Names", "description": "Tool to retrieve a list of available metric names for a New Relic application. Use when you need to discover what metrics are available before querying metric data." }, { "slug": "NEW_RELIC_GET_BROWSER_APPLICATIONS", "name": "Get Browser Applications", "description": "Tool to list New Relic browser applications. Use when you need to retrieve all browser applications or filter by name after authenticating your API key." }, { "slug": "NEW_RELIC_GET_DASHBOARD_ENTITY_QUERY", "name": "Get Dashboard Entity Query", "description": "Tool to query detailed information about a New Relic dashboard entity using its GUID via NerdGraph GraphQL API. Use when you need to retrieve dashboard configuration, pages, widgets, owner information, and metadata." }, { "slug": "NEW_RELIC_GET_INFRA_CONDITION", "name": "Get Infrastructure Alert Condition", "description": "Tool to retrieve details for a specific infrastructure alert condition. Use when you have the condition ID and need to view its configuration, thresholds, or status." }, { "slug": "NEW_RELIC_GET_LOOKUP_TABLE", "name": "Get Lookup Table", "description": "Tool to download a lookup table that was previously uploaded to New Relic. Use when you need to retrieve lookup table data including metadata and optionally the table contents." }, { "slug": "NEW_RELIC_GET_MOBILE_APPLICATION", "name": "Get Mobile Application", "description": "Tool to retrieve details for a specific New Relic mobile application including crash count and crash rate. Use when you need to get performance metrics, crash analytics, and health status for a mobile app." }, { "slug": "NEW_RELIC_GET_MOBILE_APPLICATION_METRICS", "name": "Get Mobile Application Metrics", "description": "Tool to retrieve metric names for a New Relic mobile application. Use when you need to discover available metrics and their value names before querying metric data." }, { "slug": "NEW_RELIC_GET_MOBILE_METRIC_DATA", "name": "Get Mobile Metric Data", "description": "Tool to retrieve metric data for a mobile application including crash count and crash rate. Use when you need to analyze mobile app performance metrics or crash statistics over a specific time period." }, { "slug": "NEW_RELIC_GET_SECURE_CREDENTIAL", "name": "Get Secure Credential", "description": "Tool to retrieve a specific secure credential by key from New Relic Synthetics. Use when you need to verify a credential exists or check its metadata. Note: For security reasons, the actual credential value is never returned by the API." }, { "slug": "NEW_RELIC_GET_SYNTH_MONITOR", "name": "Get Synthetic Monitor", "description": "Tool to retrieve details for a specific synthetic monitor by its ID. Use when you need to get configuration, status, and settings of a single synthetic monitor." }, { "slug": "NEW_RELIC_LINK_CLOUD_ACCOUNT", "name": "Link Cloud Account", "description": "Tool to link cloud provider accounts (AWS, Azure, GCP) to your New Relic account for monitoring. Use when you need to add cloud integrations to track infrastructure and services. Requires appropriate IAM roles/permissions in the cloud provider." }, { "slug": "NEW_RELIC_LIST_DEPLOYMENTS", "name": "List Deployments", "description": "Tool to retrieve a list of all past deployments for a New Relic application. Use when you need to view deployment history, track changes over time, or correlate deployments with performance metrics." }, { "slug": "NEW_RELIC_LIST_EXTERNAL_SERVICE_CONDITIONS", "name": "List External Service Alert Conditions", "description": "Tool to retrieve a list of external service alert conditions for a specified policy. Use when you need to view existing external service monitoring configurations." }, { "slug": "NEW_RELIC_LIST_INFRA_CONDITIONS", "name": "List Infrastructure Alert Conditions", "description": "Tool to list infrastructure alert conditions for a specific policy. Use when you need to retrieve all infrastructure conditions associated with an alert policy, with optional pagination support." }, { "slug": "NEW_RELIC_LIST_KEY_TRANSACTIONS", "name": "List Key Transactions", "description": "Tool to retrieve a list of New Relic key transactions. Use when you need to list all key transactions or filter by name or IDs." }, { "slug": "NEW_RELIC_LIST_LOCATION_FAILURE_CONDITIONS", "name": "List Location Failure Alert Conditions", "description": "Tool to retrieve a list of location failure alert conditions for a specific policy. Use when you need to view all multi-location failure conditions configured for a policy." }, { "slug": "NEW_RELIC_LIST_LOCATIONS", "name": "List Synthetic Monitor Locations", "description": "Tool to retrieve the list of valid locations for synthetic monitors. Use when you need to see all available public and private locations where monitors can run." }, { "slug": "NEW_RELIC_LIST_LOOKUP_TABLES", "name": "List Lookup Tables", "description": "Tool to list all lookup tables previously uploaded for an account. Use when you need to retrieve summary information about existing lookup tables including their names, GUIDs, sizes, and last update details." }, { "slug": "NEW_RELIC_LIST_MOBILE_APPLICATIONS", "name": "List Mobile Applications", "description": "Tool to list all mobile applications in your New Relic account. Use when you need to retrieve mobile apps or filter by name." }, { "slug": "NEW_RELIC_LIST_MONITORS", "name": "List Synthetic Monitors", "description": "Tool to retrieve a list of all synthetic monitors in your New Relic account. Use when you need to view all configured monitors with optional pagination support." }, { "slug": "NEW_RELIC_LIST_NRQL_CONDITIONS", "name": "List NRQL Alert Conditions", "description": "Tool to retrieve NRQL alert conditions for a specified policy. Use when you need to list existing NRQL conditions with their configurations, thresholds, and queries." }, { "slug": "NEW_RELIC_LIST_SECURE_CREDENTIALS", "name": "List Secure Credentials", "description": "Tool to retrieve a list of all secure credentials in your New Relic account. Use when you need to view available credentials or audit what credentials exist. Note: For security reasons, the actual credential values are never returned by the API, only metadata." }, { "slug": "NEW_RELIC_LIST_SYNTHETICS_CONDITIONS", "name": "List Synthetics Alert Conditions", "description": "Tool to retrieve a list of synthetics alert conditions for a policy. Use when you need to list existing synthetics conditions with their configuration." }, { "slug": "NEW_RELIC_OVERRIDE_ENTITY_GOLDEN_METRICS", "name": "Override Entity Golden Metrics", "description": "Tool to override golden metrics or golden tags for a specific entity type in a New Relic account or workload. Use when you need to customize the primary metrics displayed for entity types in the New Relic UI. Pass an empty metrics array to reset to default golden metrics." }, { "slug": "NEW_RELIC_OVERRIDE_ENTITY_GOLDEN_TAGS", "name": "Override Entity Golden Tags", "description": "Tool to override golden tags for entity types via New Relic's NerdGraph GraphQL API. Use when you need to configure which tags appear prominently in the New Relic UI for specific entity types. Golden tags help organize and filter entities efficiently." }, { "slug": "NEW_RELIC_PATCH_MONITOR", "name": "Patch Synthetic Monitor", "description": "Tool to partially update individual attributes of an existing synthetic monitor in New Relic. Use when you need to modify specific properties of a monitor without replacing the entire configuration. Only provide the fields you want to update." }, { "slug": "NEW_RELIC_QUERY_CLOUD_PROVIDERS", "name": "Query Cloud Providers", "description": "Tool to query available cloud providers for a New Relic account. Use when you need to list cloud integration providers (AWS, GCP, Azure, etc.) configured for an account." }, { "slug": "NEW_RELIC_QUERY_ERROR", "name": "Query Error", "description": "Tool to query error data from New Relic using NRQL (New Relic Query Language) via the NerdGraph GraphQL API. Use when you need to retrieve error metrics, transaction errors, or analyze error patterns using custom NRQL queries." }, { "slug": "NEW_RELIC_QUERY_EXAMPLE_READ_QUERY", "name": "Query Example Read Query", "description": "Tool to execute GraphQL read queries against New Relic's NerdGraph API. Use when you need to query New Relic data using GraphQL syntax." }, { "slug": "NEW_RELIC_REMOVE_ENTITY_CONDITION", "name": "Remove Entity from Alert Condition", "description": "Tool to remove an entity from an alert condition in New Relic. Use when you need to disassociate a specific entity from an alert condition. Note: conditions must have at least one entity - you cannot remove the last entity." }, { "slug": "NEW_RELIC_REMOVE_NOTIFICATION_CHANNELS_FROM_POLICY", "name": "Remove Notification Channels From Policy", "description": "Tool to remove notification channels from an alert policy via NerdGraph GraphQL API. Use when you need to detach specific notification channels from a policy without deleting the channels themselves." }, { "slug": "NEW_RELIC_RENAME_CLOUD_ACCOUNT", "name": "Rename Cloud Account", "description": "Tool to rename linked cloud provider accounts in New Relic via the NerdGraph GraphQL API. Use when you need to update the display name of AWS, Azure, or GCP integrations." }, { "slug": "NEW_RELIC_REPLACE_TAGS_ON_ENTITY", "name": "Replace Tags On Entity", "description": "Tool to replace the entire set of tags on a New Relic entity with a new tag set via NerdGraph GraphQL API. Use when you need to completely replace an entity's tags rather than adding or removing individual tags. All existing tags will be removed and replaced with the provided tags." }, { "slug": "NEW_RELIC_RESET_ENTITY_GOLDEN_METRICS", "name": "Reset Entity Golden Metrics", "description": "Tool to reset custom golden metrics and golden tags to New Relic defaults for an entity. Use when custom metrics are no longer relevant and you want to restore the default metrics defined by New Relic." }, { "slug": "NEW_RELIC_RESET_ENTITY_GOLDEN_TAGS", "name": "Reset Entity Golden Tags", "description": "Tool to reset golden tags for entities to their default values using New Relic's NerdGraph GraphQL API. Use when you need to restore default golden metrics tags for a specific entity domain and type. Golden tags are the default set of tags that define key metrics for different entity types." }, { "slug": "NEW_RELIC_REVOKE_AUTHORIZATION_ACCESS", "name": "Revoke Authorization Access", "description": "Tool to revoke access grants with a data access policy in New Relic. Use when you need to remove specific role assignments from a group for one or more accounts." }, { "slug": "NEW_RELIC_SEARCH_ENTITIES", "name": "Search Entities", "description": "Tool to search for New Relic entities by attributes including name, type, domain, and other values using NerdGraph GraphQL API. Use when you need to find entities matching specific criteria. Returns basic entity data including GUID, tags, and metadata. Supports pagination for large result sets (200 entities per page)." }, { "slug": "NEW_RELIC_SEND_EVENTS", "name": "Send Events", "description": "Tool to send custom event data to New Relic's Event API. Events can then be queried and charted using NRQL (New Relic Query Language). Use this to track custom application events, business metrics, or any other time-series data you want to analyze in New Relic." }, { "slug": "NEW_RELIC_SEND_TRACES", "name": "Send Traces", "description": "Tool to send distributed tracing data to New Relic in New Relic format. Use this to report trace spans for monitoring distributed system performance and debugging latency issues." }, { "slug": "NEW_RELIC_TEST_AI_NOTIFICATION_DESTINATION_BY_ID", "name": "Test AI Notification Destination By ID", "description": "Tool to test an AI notification destination configuration by ID using New Relic NerdGraph API. Use when you need to verify that a notification destination (webhook, email, etc.) is properly configured and can receive test messages." }, { "slug": "NEW_RELIC_TEST_AI_NOTIFICATIONS_CHANNEL", "name": "Test AI Notifications Channel", "description": "Tool to test an AI notifications channel via NerdGraph GraphQL API. Use when you need to verify that a notification channel configuration is working correctly before saving it." }, { "slug": "NEW_RELIC_TEST_AI_NOTIFICATIONS_DESTINATION", "name": "Test AI Notifications Destination", "description": "Tool to test AI notifications destinations via NerdGraph GraphQL API. Use when you need to validate a destination configuration before or after creating it. Supports testing EMAIL, WEBHOOK, and other notification destination types." }, { "slug": "NEW_RELIC_TEST_NOTIFICATION_CHANNEL", "name": "Test Notification Channel", "description": "Tool to test a New Relic AI notification channel by sending a test notification. Use when you need to verify that a notification channel is configured correctly and can send notifications." }, { "slug": "NEW_RELIC_UNDELETE_DASHBOARD", "name": "Undelete Dashboard", "description": "Tool to undelete a previously deleted dashboard via NerdGraph GraphQL API. Use when you need to recover a dashboard that was logically deleted. Note that custom tags cannot be recovered." }, { "slug": "NEW_RELIC_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update a New Relic account name via the NerdGraph GraphQL API. Use when you need to rename an existing managed account in your organization." }, { "slug": "NEW_RELIC_UPDATE_AGENT_APPLICATION_SETTINGS", "name": "Update Agent Application Settings", "description": "Tool to update APM agent application settings using New Relic's NerdGraph GraphQL API. Use when you need to modify server-side configuration settings for an APM application, such as enabling or disabling server-side config." }, { "slug": "NEW_RELIC_UPDATE_AI_NOTIFICATIONS_CHANNEL", "name": "Update AI Notification Channel", "description": "Tool to update an AI notification channel via NerdGraph GraphQL API. Use when you need to modify channel settings such as name or active status." }, { "slug": "NEW_RELIC_UPDATE_AI_NOTIFICATIONS_DESTINATION", "name": "Update AI Notifications Destination", "description": "Tool to update an AI notifications destination via NerdGraph GraphQL API. Use when you need to modify destination properties like name. Supports partial updates - only include fields you want to change." }, { "slug": "NEW_RELIC_UPDATE_ALERT_CHANNEL", "name": "Update Alert Notification Channel", "description": "Tool to update an existing New Relic alert notification channel. Use when you need to modify channel settings after verifying its ID." }, { "slug": "NEW_RELIC_UPDATE_ALERT_POLICY", "name": "Update Alert Policy", "description": "Tool to update an existing alert policy via New Relic's NerdGraph GraphQL API. Use when you need to modify policy configuration such as name or incident preference settings." }, { "slug": "NEW_RELIC_UPDATE_ALERT_POLICY_REST", "name": "Update Alert Policy (REST)", "description": "Tool to update an existing alert policy via New Relic's REST API v2. Use when you need to modify policy configuration such as name or incident preference. At least one field (name or incident_preference) must be provided." }, { "slug": "NEW_RELIC_UPDATE_API_ACCESS_KEYS", "name": "Update API Access Keys", "description": "Tool to update API access keys (ingest/license keys or user keys) via New Relic's NerdGraph GraphQL API. Use when you need to modify the name or notes of existing API keys. Requires the key ID (not the actual key value)." }, { "slug": "NEW_RELIC_UPDATE_BROWSER_SETTINGS", "name": "Update Browser Settings", "description": "Tool to update browser monitoring settings for a New Relic browser application via NerdGraph GraphQL mutation. Use when you need to configure browser agent settings such as pinning a specific agent version or changing the loader type." }, { "slug": "NEW_RELIC_UPDATE_CROSS_ACCOUNT_ELECTIONS", "name": "Update Cross-Account Elections", "description": "Tool to update cross-account alerting elections via New Relic's NerdGraph GraphQL API. Use when you need to enable or disable cross-account alerting for specific New Relic accounts, allowing alerts to be viewed across account boundaries." }, { "slug": "NEW_RELIC_UPDATE_DASHBOARD", "name": "Update Dashboard", "description": "Tool to update an existing New Relic dashboard using its entity GUID via NerdGraph GraphQL API. Use when you need to modify dashboard properties, add/remove pages, or update widgets. IMPORTANT: When updating pages or widgets, include their GUIDs/IDs to preserve them; otherwise they will be removed." }, { "slug": "NEW_RELIC_UPDATE_DASHBOARD_LIVE_URL_CREATION_POLICIES", "name": "Update Dashboard Live URL Creation Policies", "description": "Tool to update dashboard live URL creation policies using New Relic's NerdGraph GraphQL API. Use when you need to enable or disable the ability for users to create publicly accessible live URLs for dashboards in specific accounts. Only accessible by Authentication Domain Managers. Each successful update triggers an audit event for the corresponding account ID." }, { "slug": "NEW_RELIC_UPDATE_DASHBOARD_PAGE", "name": "Update Dashboard Page", "description": "Tool to update a dashboard page in New Relic via NerdGraph GraphQL API. Use when you need to modify page properties like name, description, or update the complete widgets configuration. Important: All existing widgets must be included in the widgets array with their IDs to preserve them." }, { "slug": "NEW_RELIC_UPDATE_DASHBOARD_WIDGETS_IN_PAGE", "name": "Update Dashboard Widgets In Page", "description": "Tool to update widgets in a New Relic dashboard page via NerdGraph GraphQL API. Use when you need to modify existing widget configurations, positions, or content within a dashboard page." }, { "slug": "NEW_RELIC_UPDATE_DATA_PARTITION_RULE", "name": "Update Data Partition Rule", "description": "Tool to update an existing log data partition rule in New Relic via NerdGraph GraphQL API. Use when you need to modify the description, NRQL matching criteria, or enabled state of a data partition rule. All update fields are optional, allowing partial updates." }, { "slug": "NEW_RELIC_UPDATE_EXTERNAL_SERVICE_CONDITION", "name": "Update External Service Condition", "description": "Tool to update an external service alert condition in New Relic. Use when you need to modify an existing external service condition's thresholds, monitored entities, or other settings." }, { "slug": "NEW_RELIC_UPDATE_INFRA_CONDITION", "name": "Update Infrastructure Alert Condition", "description": "Tool to update an infrastructure alert condition in New Relic. Use when you need to modify settings for infrastructure monitoring conditions. Only include fields you want to change; unchanged fields can be omitted." }, { "slug": "NEW_RELIC_UPDATE_LOCATION_FAILURE_CONDITION", "name": "Update Location Failure Alert Condition", "description": "Tool to update a location failure alert condition in New Relic. Use when you need to modify an existing synthetic monitor location failure condition by changing its name, enabled status, monitored entities, threshold terms, or violation time limits." }, { "slug": "NEW_RELIC_UPDATE_LOOKUP_TABLE", "name": "Update Lookup Table", "description": "Tool to replace an existing lookup table in your New Relic account. This completely replaces the table structure and data. Use when you need to update supplemental reference data used in NRQL queries." }, { "slug": "NEW_RELIC_UPDATE_MOBILE_SETTINGS_EXAMPLE", "name": "Update Mobile Settings Example", "description": "Tool to update mobile application settings using New Relic's NerdGraph GraphQL API. Use when you need to modify crash reporting or network monitoring settings for a mobile application." }, { "slug": "NEW_RELIC_UPDATE_MONITOR_SCRIPT", "name": "Update Monitor Script", "description": "Tool to update the script for a SCRIPT_BROWSER or SCRIPT_API synthetic monitor in New Relic. Use when you need to modify the monitoring script logic without changing other monitor properties. The script must be base64-encoded." }, { "slug": "NEW_RELIC_UPDATE_NRQL_BASELINE_CONDITION", "name": "Update NRQL Baseline Alert Condition", "description": "Tool to update a NRQL baseline alert condition in New Relic via the NerdGraph GraphQL API. Use when you need to modify an existing baseline-type NRQL alert condition's configuration, such as changing its name, baseline direction, thresholds, or query. This action is specifically for baseline conditions; use different actions for static or outlier NRQL conditions." }, { "slug": "NEW_RELIC_UPDATE_NRQL_CONDITION", "name": "Update NRQL Condition", "description": "Tool to update an existing NRQL alert condition in New Relic. Use when you need to modify the name, query, thresholds, or other settings of an existing NRQL condition." }, { "slug": "NEW_RELIC_UPDATE_NRQL_STATIC_CONDITION", "name": "Update NRQL Static Alert Condition", "description": "Tool to update a NRQL static alert condition via New Relic's NerdGraph GraphQL API. Use when you need to modify an existing static threshold alert condition." }, { "slug": "NEW_RELIC_UPDATE_POLICY_CHANNELS", "name": "Update Policy Channels", "description": "Tool to associate notification channels with an alert policy using the REST API v2. Use when you need to update which channels receive notifications for a specific policy. This replaces any existing channel associations." }, { "slug": "NEW_RELIC_UPDATE_SCRIPTED_MONITOR", "name": "Update Scripted Monitor", "description": "Tool to update a scripted synthetic monitor (browser or API) in New Relic using the NerdGraph GraphQL API. Use when you need to modify configuration of existing scripted monitors including name, frequency, locations, script content, or status." }, { "slug": "NEW_RELIC_UPDATE_SECURE_CREDENTIAL", "name": "Update Secure Credential", "description": "Tool to update an existing secure credential in New Relic Synthetics. Use when you need to change the value or description of a stored credential like API keys, passwords, or tokens." }, { "slug": "NEW_RELIC_UPDATE_SERVICE_LEVEL", "name": "Update Service Level Indicator", "description": "Tool to update a Service Level Indicator (SLI) and its objectives via New Relic's NerdGraph GraphQL API. Use when you need to modify SLO targets, time windows, event definitions, or metadata for an existing SLI. Include only the fields you want to update." }, { "slug": "NEW_RELIC_UPDATE_SYNTHETICS_ALERT_CONDITION", "name": "Update Synthetics Alert Condition", "description": "Tool to update an existing synthetics alert condition. Use when you need to modify settings for synthetic monitor alerts such as name, enabled status, or runbook URL." }, { "slug": "NEW_RELIC_UPDATE_SYNTHETICS_SIMPLE_MONITOR", "name": "Update Synthetics Simple Monitor", "description": "Tool to update an existing ping monitor configuration in New Relic Synthetics using NerdGraph GraphQL API. Use when you need to modify monitor settings like name, status, period, URI, locations, or advanced options." }, { "slug": "NEW_RELIC_UPDATE_SYNTH_MONITOR", "name": "Update Synthetic Monitor", "description": "Tool to fully update an existing synthetic monitor in New Relic using PUT method. Use when you need to replace the entire monitor configuration with new values. All fields are required as this performs a complete replacement." }, { "slug": "NEW_RELIC_UPDATE_USER", "name": "Update User", "description": "Tool to update user information in New Relic account via NerdGraph GraphQL API. Use when you need to modify a user's email address or change their access tier (user type). Requires the user ID and at least one field to update (email or user type)." }, { "slug": "NEW_RELIC_UPDATE_WORKFLOW", "name": "Update AI Workflow", "description": "Tool to update an existing New Relic AI workflow via NerdGraph GraphQL API. Use when you need to modify workflow settings like name, enabled status, destinations, enrichments, or filters. Only the workflow ID is required; include only the fields you want to update." }, { "slug": "NEW_RELIC_UPDATE_WORKLOAD", "name": "Update Workload", "description": "Tool to update an existing workload configuration via New Relic's NerdGraph GraphQL API. Use when you need to modify workload settings such as name, entity membership (via GUIDs or dynamic queries), or scope accounts." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "new_relic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Account Region", "type": "string", "description": "The region of the New Relic account, either 'US' or 'EU'. This determines the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "New Relic User API Key", "type": "string", "description": "The User API key for authenticating requests to New Relic's APIs.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "news_api", "name": "NewsAPI", "logo": "https://logos.composio.dev/api/news_api", "description": "News API is a simple HTTP REST API for searching and retrieving live articles from all over the web.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEWS_API_GET_EVERYTHING", "name": "Get Everything", "description": "Tool to search through every article published by over 150,000 sources. At least one of q, sources, language, or domains must be set or the API returns a parametersMissing error. Historical date range depends on your News API plan tier (free plans limited to ~1 month). No country parameter exists; target geography via sources, domains, or country-specific terms in q. Burst requests may trigger HTTP 429; apply backoff on throttling errors." }, { "slug": "NEWS_API_GET_SOURCES", "name": "Get Sources", "description": "Tool to fetch available news sources. Use when you need to retrieve a list of publishers by optional filters like category, language, or country. Source IDs returned here are the only valid IDs for filtering in NEWS_API_GET_EVERYTHING or NEWS_API_GET_TOP_HEADLINES — unrecognized IDs cause silently empty results." }, { "slug": "NEWS_API_GET_TOP_HEADLINES", "name": "Get Top Headlines", "description": "Tool to retrieve live top and breaking headlines; does not support historical or date-bounded queries (use NEWS_API_GET_EVERYTHING for past date ranges). Results favor major outlets; use NEWS_API_GET_EVERYTHING or COMPOSIO_SEARCH_WEB for niche publications. Use when you need current headlines filtered by country, category, source(s), or keywords." }, { "slug": "NEWS_API_GET_V1_ARTICLES", "name": "Get V1 Articles", "description": "Tool to fetch live article metadata from a news source using the legacy v1 API. Use when you need headlines from a specific source identifier. This v1 endpoint has been superseded by /v2/top-headlines." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "news_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "News API Key", "type": "string", "description": "Your unique API key for authenticating requests to News API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "newscatcher", "name": "Newscatcher", "logo": "https://logos.composio.dev/api/newscatcher", "description": "Search multi-language worldwide news articles published online with NewsCatcher News API.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "newscatcher_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to app.newscatcherapi.com and copy your API key from the dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "newsman", "name": "Newsman", "logo": "https://logos.composio.dev/api/newsman", "description": "Smart Email Service Provider for creating, sending, and tracking beautiful emails with automation features.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "newsman_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Newsman API Key. Generate this in your account under Integrations > API at https://newsman.app/manager/account?tab=api", "required": true, "default": null }, { "name": "generic_id", "displayName": "User ID", "type": "string", "description": "Your Newsman User ID. Find this in your Newsman account under Integrations > API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nextdns", "name": "Nextdns", "logo": "https://logos.composio.dev/api/nextdns", "description": "NextDNS is a DNS service that enhances internet security and privacy by blocking malicious websites, tracking scripts, and ads before they reach your device.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 68, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NEXTDNS_ADD_ALLOWLIST_ENTRY", "name": "Add Allowlist Entry", "description": "Tool to add a domain to the allowlist of a NextDNS profile. Use when allowing specific domains under a profile after obtaining its ID." }, { "slug": "NEXTDNS_ADD_BLOCKED_TLD", "name": "Add Blocked TLD", "description": "Tool to add a top-level domain to the security blocklist for a NextDNS profile. Use after listing current security settings to ensure the TLD is not already blocked." }, { "slug": "NEXTDNS_ADD_DENYLIST_DOMAIN", "name": "Add Denylist Domain", "description": "Tool to add a domain to the denylist of a NextDNS profile. Use when blocking specific domains under a profile after obtaining its ID." }, { "slug": "NEXTDNS_ADD_PARENTAL_CONTROL_CATEGORY", "name": "Add Parental Control Category", "description": "Tool to add a content category to the parental control categories list. Use when you need to add a new category to block or allow specific content types like pornography, gambling, or social networks." }, { "slug": "NEXTDNS_ADD_PARENTAL_CONTROL_SERVICE", "name": "Add Parental Control Service", "description": "Tool to add a service to the parental control services list of a NextDNS profile. Use when blocking specific services (like social media platforms) under a profile." }, { "slug": "NEXTDNS_ADD_PRIVACY_BLOCKLIST", "name": "Add Privacy Blocklist", "description": "Tool to add a blocklist to the privacy blocklists for a NextDNS profile. Use when enabling additional privacy blocklists for a profile." }, { "slug": "NEXTDNS_ADD_PRIVACY_NATIVE", "name": "Add Privacy Native Tracker", "description": "Tool to add a native tracking service to the blocked list for a NextDNS profile. Use when blocking native trackers from specific vendors." }, { "slug": "NEXTDNS_ADD_REWRITE", "name": "Add DNS Rewrite Rule", "description": "Tool to add a DNS rewrite rule to a NextDNS profile. Use when you need to configure custom DNS resolution for specific domains." }, { "slug": "NEXTDNS_CLEAR_LOGS", "name": "Clear Logs", "description": "Tool to clear DNS logs for a NextDNS profile. Use when you want to remove all existing query logs for a given profile. Note: this operation cannot be undone." }, { "slug": "NEXTDNS_CREATE_PROFILE", "name": "Create Profile", "description": "This tool allows users to create a new NextDNS profile. It uses the POST method at the endpoint https://api.nextdns.io/profiles. A profile is a distinct configuration set for DNS filtering and security settings." }, { "slug": "NEXTDNS_DELETE_ALLOWLIST_ENTRY", "name": "Delete Allowlist Entry", "description": "Tool to remove a domain from a NextDNS profile's allowlist. Use when you need to stop allowing a previously whitelisted domain." }, { "slug": "NEXTDNS_DELETE_CONFIG", "name": "Delete NextDNS Configuration", "description": "Tool to delete a NextDNS configuration profile. Use when you need to remove an existing profile by its ID. Use after confirming the profile exists." }, { "slug": "NEXTDNS_DELETE_PARENTAL_CONTROL_CATEGORY", "name": "Delete Parental Control Category", "description": "Tool to remove a category from parental control blocked categories. Use when you need to unblock a content category that was previously blocked. Use 'Get Parental Control Categories' first to verify the category is currently blocked." }, { "slug": "NEXTDNS_DELETE_PARENTAL_CONTROL_SERVICE", "name": "Delete Parental Control Service", "description": "Tool to remove a service from parental control blocked services. Use when you need to unblock a service (like TikTok, Instagram, or other apps) that was previously blocked." }, { "slug": "NEXTDNS_DELETE_PRIVACY_BLOCKLIST", "name": "Delete Privacy Blocklist", "description": "Tool to remove a blocklist from the privacy blocklists for a NextDNS profile. Use when disabling or removing privacy blocklists from a profile." }, { "slug": "NEXTDNS_DELETE_PRIVACY_NATIVE", "name": "Delete Privacy Native Tracker", "description": "Tool to remove a native tracking entry from a NextDNS profile's privacy settings. Use when you need to stop blocking a specific native app tracker (like Apple, Samsung, Huawei, etc.)." }, { "slug": "NEXTDNS_DELETE_REWRITE", "name": "Delete DNS Rewrite Rule", "description": "Tool to delete a DNS rewrite rule from a NextDNS profile. Use when you need to remove an existing DNS rewrite rule by its ID." }, { "slug": "NEXTDNS_DOWNLOAD_LOGS", "name": "Download Logs", "description": "Retrieves the download URL for exported DNS query logs from a NextDNS profile. Returns a time-limited URL pointing to a CSV file containing the profile's DNS logs. Use this to export log data for analysis, backup, or compliance purposes. The profile_id can be obtained from the list_configurations action." }, { "slug": "NEXTDNS_GET_ALLOWLIST", "name": "Get Allowlist", "description": "Tool to retrieve the list of allowed domains for a NextDNS profile. Use when you need to view all domains currently whitelisted in a profile." }, { "slug": "NEXTDNS_GET_ANALYTICS_DESTINATIONS", "name": "Get Analytics Destinations", "description": "Tool to retrieve destination analytics for a profile showing query destinations by country or GAFAM company. Use when you need to understand geographic distribution or big tech company query patterns." }, { "slug": "NEXTDNS_GET_ANALYTICS_DEVICES2", "name": "Get Analytics Devices", "description": "Tool to retrieve device analytics for a profile showing identified devices with names, models, and query counts. Use when you need per-device query metrics within a specific time frame." }, { "slug": "NEXTDNS_GET_ANALYTICS_DNSSEC", "name": "Get Analytics DNSSEC", "description": "Tool to retrieve DNSSEC validation analytics for a profile showing validated vs non-validated query counts. Use after selecting a profile to analyze DNSSEC validation statistics." }, { "slug": "NEXTDNS_GET_ANALYTICS_DOMAINS", "name": "Get Analytics Domains", "description": "Tool to retrieve analytics data for domains within a specific profile. Use after confirming the profile ID to get per-domain query stats." }, { "slug": "NEXTDNS_GET_ANALYTICS_ENCRYPTION", "name": "Get Analytics Encryption", "description": "Tool to retrieve encryption analytics for a profile showing encrypted vs unencrypted query counts. Use when you need to understand the breakdown of DNS queries by encryption status (DoH/DoT vs plain DNS)." }, { "slug": "NEXTDNS_GET_ANALYTICS_IPS", "name": "Get Analytics IPs", "description": "Tool to retrieve analytics aggregated by client IP addresses. Use when you need to analyze DNS query distribution per client IP for a given profile." }, { "slug": "NEXTDNS_GET_ANALYTICS_IP_VERSIONS", "name": "Get Analytics IP Versions", "description": "Tool to retrieve analytics grouped by IP version within a specific profile. Use after you have a profile ID to see IPv4 vs IPv6 query counts." }, { "slug": "NEXTDNS_GET_ANALYTICS_PROTOCOLS", "name": "Get Analytics Protocols", "description": "Tool to retrieve protocol analytics for a specific profile showing DNS protocol distribution (DNS-over-HTTPS, DNS-over-TLS, UDP). Use after confirming the profile ID to analyze protocol usage patterns." }, { "slug": "NEXTDNS_GET_ANALYTICS_QUERY_TYPES", "name": "Get Analytics Query Types", "description": "Tool to retrieve DNS query counts broken down by query type. Use after selecting a profile and specifying date filters to analyze distribution by type." }, { "slug": "NEXTDNS_GET_ANALYTICS_REASONS2", "name": "Get Analytics Blocking Reasons", "description": "Tool to retrieve blocking reasons analytics showing blocklists, native tracking protection, and other reasons for blocked queries. Use after selecting a profile to understand what categories are blocking queries." }, { "slug": "NEXTDNS_GET_ANALYTICS_STATUS", "name": "Get Analytics Status", "description": "Tool to retrieve analytics status for a specific profile. Use when you need counts of DNS queries broken down by status categories." }, { "slug": "NEXTDNS_GET_LOGS", "name": "Get Logs", "description": "Tool to retrieve logs for a specific NextDNS profile with optional filters. Use after confirming the profile ID to fetch raw or filtered DNS logs." }, { "slug": "NEXTDNS_GET_PARENTAL_CONTROL", "name": "Get Parental Control Settings", "description": "Tool to get parental control settings for a profile. Returns services, categories, safe search, YouTube restricted mode, and bypass blocking status." }, { "slug": "NEXTDNS_GET_PARENTAL_CONTROL_CATEGORIES", "name": "Get Parental Control Categories", "description": "Tool to get the list of blocked/allowed content categories for parental control. Use when you need to check which content categories are currently blocked or allowed for a specific profile." }, { "slug": "NEXTDNS_GET_PARENTAL_CONTROL_SERVICES", "name": "Get Parental Control Services", "description": "Tool to get the list of blocked/allowed services for parental control. Use when you need to review which services (like TikTok, Facebook, Netflix) are currently blocked or allowed in a profile's parental control settings." }, { "slug": "NEXTDNS_GET_PERFORMANCE_SETTINGS", "name": "Get Performance Settings", "description": "Tool to get performance settings for a profile including ECS, cache boost, and CNAME flattening configuration. Use when you need to check current performance optimization settings before making changes." }, { "slug": "NEXTDNS_GET_PRIVACY_SETTINGS", "name": "Get Privacy Settings", "description": "Tool to get privacy settings for a profile including blocklists, native tracking settings, disguised trackers, and affiliate settings. Use when you need to check the current privacy configuration before making changes." }, { "slug": "NEXTDNS_GET_PROFILE", "name": "Get Profile Details", "description": "Retrieves the details of a specific NextDNS profile. It requires a 'profileId' as a path parameter and returns the profile details including name, security, privacy, parental control, denylist, allowlist, and general settings." }, { "slug": "NEXTDNS_GET_REWRITES", "name": "Get DNS Rewrites", "description": "Tool to retrieve the list of DNS rewrites for a NextDNS profile. Use when you need to view all custom DNS rewrite rules configured in a profile." }, { "slug": "NEXTDNS_GET_SECURITY_TLDS", "name": "Get Security TLDs", "description": "Tool to get the list of blocked TLDs (top-level domains) for a profile's security settings. Use when you need to retrieve only the blocked TLDs without fetching all security settings." }, { "slug": "NEXTDNS_GET_SETTINGS", "name": "Get Profile Settings", "description": "Tool to get all settings for a NextDNS profile including logs, block page, performance, and web3 settings. Use when you need to retrieve the current configuration settings of a profile." }, { "slug": "NEXTDNS_GET_SETTINGS_BLOCKPAGE", "name": "Get Block Page Settings", "description": "Tool to retrieve the block page settings for a NextDNS profile. Use when you need to check if the block page is currently enabled or disabled for a specific profile." }, { "slug": "NEXTDNS_GET_SETTINGS_LOGS", "name": "Get Logging Settings", "description": "Tool to retrieve the logging settings for a NextDNS profile. Use when you need to check logging status, data retention period, storage location, or privacy options." }, { "slug": "NEXTDNS_LIST_DENYLIST_DOMAINS", "name": "List Denylist Domains", "description": "Tool to list domains in the denylist for a profile. Use after confirming the profile ID to review all blocked domains. Example: \"List denylist domains for profile abc123.\"" }, { "slug": "NEXTDNS_LIST_PROFILES", "name": "List Profiles", "description": "List all NextDNS profiles for the authenticated user, returning profile IDs and configurations. Returns all profiles with their IDs, names, fingerprints, and user roles. Profile IDs returned by this action are used as the 'profileId' or 'config_id' parameter for other NextDNS actions (e.g., get profile details, update profile, etc.)." }, { "slug": "NEXTDNS_LIST_SECURITY_SETTINGS", "name": "List Security Settings", "description": "Tool to list current security options for a NextDNS configuration. Use after obtaining the configuration ID to review active security settings." }, { "slug": "NEXTDNS_LOG_CLIENT_IPS", "name": "Log Client IPs", "description": "Tool to enable or disable logging of client IPs for a NextDNS configuration. Use when you need to toggle whether client IPs are recorded in DNS logs." }, { "slug": "NEXTDNS_LOG_DOMAINS", "name": "Toggle Domain Logging", "description": "Tool to enable or disable logging of domains for a NextDNS profile. Use after retrieving profile settings when you need to adjust domain logging. Example: \"Enable domain logging for profile abc123.\"" }, { "slug": "NEXTDNS_REMOVE_BLOCKED_TLD", "name": "Remove Blocked TLD", "description": "Tool to remove a top-level domain from the security blocklist for a NextDNS profile. Use after listing current security settings to confirm the TLD is currently blocked." }, { "slug": "NEXTDNS_REMOVE_DENYLIST_DOMAIN", "name": "Remove Denylist Domain", "description": "Removes a domain from a NextDNS profile's denylist (blocklist). The domain will no longer be blocked by the DNS filter after removal. Use 'List Denylist Domains' first to verify the domain exists in the denylist before attempting removal." }, { "slug": "NEXTDNS_RENAME_CONFIG", "name": "Rename Configuration", "description": "Tool to rename a NextDNS configuration (profile). Use when you need to update a profile's name after obtaining its ID. Example: RenameConfig(name=\"Home Profile\", config_id=\"d46a5b\")" }, { "slug": "NEXTDNS_REPLACE_ALLOWLIST", "name": "Replace Allowlist", "description": "Tool to replace the entire allowlist for a NextDNS profile. Use when you need to set a complete list of allowed domains, replacing all existing entries." }, { "slug": "NEXTDNS_REPLACE_DENYLIST", "name": "Replace Denylist", "description": "Tool to replace the entire denylist (blocked domains) for a NextDNS profile. This operation completely replaces all existing denylist entries with the provided list. Use when you need to bulk update the denylist or clear all blocked domains. To add/remove individual domains, use NEXTDNS_ADD_DENYLIST_DOMAIN or NEXTDNS_REMOVE_DENYLIST_DOMAIN instead." }, { "slug": "NEXTDNS_REPLACE_PARENTAL_CONTROL_CATEGORIES", "name": "Replace Parental Control Categories", "description": "Tool to replace the entire list of blocked/allowed content categories for parental control. Use this to set which content categories should be blocked or allowed for a profile." }, { "slug": "NEXTDNS_REPLACE_PARENTAL_CONTROL_SERVICES", "name": "Replace Parental Control Services", "description": "Tool to replace the entire list of blocked/allowed services for parental control. Use when you need to set all service restrictions at once, replacing existing settings." }, { "slug": "NEXTDNS_REPLACE_PRIVACY_BLOCKLISTS", "name": "Replace Privacy Blocklists", "description": "Tool to replace the entire list of privacy blocklists for a NextDNS profile. This operation completely replaces all existing blocklists with the provided list. Use when you need to bulk update privacy blocklists or clear all blocklists." }, { "slug": "NEXTDNS_REPLACE_PRIVACY_NATIVES", "name": "Replace Privacy Native Tracking Services", "description": "Tool to replace the entire list of blocked native tracking services for a NextDNS profile. This operation completely replaces all existing native tracking service blocks with the provided list. Use when you need to bulk update blocked native trackers or clear all blocks." }, { "slug": "NEXTDNS_REPLACE_SECURITY_TLDS", "name": "Replace Security TLDs", "description": "Tool to replace the entire list of blocked TLDs (top-level domains) for a NextDNS profile's security settings. This operation completely replaces all existing blocked TLDs with the provided list. Use when you need to bulk update blocked TLDs or clear all TLD blocks. To add/remove individual TLDs, use NEXTDNS_ADD_BLOCKED_TLD or NEXTDNS_REMOVE_BLOCKED_TLD instead." }, { "slug": "NEXTDNS_UPDATE_ALLOWLIST_ENTRY", "name": "Update Allowlist Entry", "description": "Tool to update a specific allowlist entry in a NextDNS profile. Use when toggling the active status of a domain in the allowlist." }, { "slug": "NEXTDNS_UPDATE_DENYLIST_ENTRY", "name": "Update Denylist Entry", "description": "Updates a specific denylist entry in a NextDNS profile, typically to toggle its active status. Use when you need to temporarily enable or disable blocking for a domain without removing it from the denylist." }, { "slug": "NEXTDNS_UPDATE_LINKED_IP", "name": "Update linked IP", "description": "Updates the linked IP address for a NextDNS profile to the current caller's public IP. This is used for dynamic DNS setups where the profile needs to recognize the user's current IP address for DNS filtering to work properly." }, { "slug": "NEXTDNS_UPDATE_PARENTAL_CONTROL", "name": "Update Parental Control Settings", "description": "Tool to update parental control settings for a NextDNS profile. Use when you need to change safe search, YouTube restricted mode, or bypass blocking settings." }, { "slug": "NEXTDNS_UPDATE_PARENTAL_CONTROL_CATEGORY", "name": "Update Parental Control Category", "description": "Tool to update a specific category entry in parental control settings. Use when you need to enable or disable blocking for a specific content category like pornography, gambling, or social networks." }, { "slug": "NEXTDNS_UPDATE_PARENTAL_CONTROL_SERVICE", "name": "Update Parental Control Service", "description": "Tool to update a specific service entry in parental control settings. Use when toggling individual service blocks (e.g., blocking TikTok, Instagram, or other social media/gaming services)." }, { "slug": "NEXTDNS_UPDATE_PERFORMANCE_SETTINGS", "name": "Update Performance Settings", "description": "Tool to update performance settings of a NextDNS profile. Use when adjusting performance optimizations after reviewing current settings." }, { "slug": "NEXTDNS_UPDATE_PRIVACY_SETTINGS", "name": "Update Privacy Settings", "description": "Tool to update privacy settings for a profile. Use when you need to change blocklists, native trackers, disguisedTrackers, or allowAffiliate in one call." }, { "slug": "NEXTDNS_UPDATE_SECURITY_SETTINGS", "name": "Update Security Settings", "description": "Tool to update security settings for a profile. Use when you need to change multiple security settings like threat intelligence, AI detection, safe browsing, and other protections in one call." }, { "slug": "NEXTDNS_UPDATE_SETTINGS", "name": "Update Settings", "description": "Tool to update settings for a NextDNS profile including logs, block page, performance, and web3 settings. Use when you need to modify multiple settings categories in one operation. Only provide the specific settings you want to change - all fields are optional except profile ID." }, { "slug": "NEXTDNS_UPDATE_SETTINGS_BLOCKPAGE", "name": "Update Block Page Settings", "description": "Tool to update block page settings for a NextDNS profile. Use when you need to enable or disable the branded block page that users see when accessing blocked domains." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nextdns_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NextDNS API Key", "type": "string", "description": "Your NextDNS API key, found at the bottom of your account page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nicereply", "name": "Nicereply", "logo": "https://logos.composio.dev/api/nicereply", "description": "Customer satisfaction survey platform for measuring CSAT, NPS, and CES scores", "category": "customer support", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "nicereply_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Private API Key", "type": "string", "description": "Your Nicereply private API key. Get it from: Settings > API > Private Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "niftyimages", "name": "Niftyimages", "logo": "https://logos.composio.dev/api/niftyimages", "description": "Allowing marketers to create dynamic and personalized content for your email campaigns.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NIFTYIMAGES_GET_IMAGES_STATS", "name": "Get Images Stats", "description": "Tool to get aggregated stats for all images. Use when you need to retrieve statistical data and performance metrics for all images in the account." }, { "slug": "NIFTYIMAGES_GET_WIDGET_USER_IMAGES", "name": "Get Widget User Images", "description": "Tool to list widget images for a specific user. Use when you need to retrieve all images associated with a particular user and widget combination." }, { "slug": "NIFTYIMAGES_GET_WIDGET_USER_STATS", "name": "Get Widget User Stats", "description": "Tool to get aggregated stats for a specific user on a widget. Use when you need to retrieve performance metrics for a particular user's interaction with a widget." }, { "slug": "NIFTYIMAGES_LIST_IMAGES", "name": "List Images", "description": "Tool to page through images in your NiftyImages account. Use when you need to retrieve a list of all available images." }, { "slug": "NIFTYIMAGES_LIST_MAPS", "name": "List Maps", "description": "Tool to retrieve all maps in your NiftyImages account. Use when you need to view all available maps for geo-targeting or location-based email content." }, { "slug": "NIFTYIMAGES_LIST_WIDGET_IMAGES", "name": "List Widget Images", "description": "Tool to list widget images for a time frame. Use when you need to retrieve images generated by a specific widget within an optional date range." }, { "slug": "NIFTYIMAGES_LIST_WIDGETS", "name": "List Widgets", "description": "Tool to list all widgets in your NiftyImages account. Use when you need to retrieve all available widgets." }, { "slug": "NIFTYIMAGES_LIST_WIDGET_STATS", "name": "List widget stats", "description": "Tool to retrieve widget statistics for a specified time frame from NiftyImages. Use when you need to view performance metrics such as impressions and clicks for your widgets." }, { "slug": "NIFTYIMAGES_LIST_WIDGET_USERS", "name": "List Widget Users", "description": "Tool to list widget users for a specified time frame from NiftyImages. Use when you need to retrieve users who interacted with a specific widget during a date range." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "niftyimages_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your NiftyImages account and sign in. Go to Settings > Integrations/Plugins > API to retrieve your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ninox", "name": "Ninox", "logo": "https://logos.composio.dev/api/ninox", "description": "Ninox is a low-code platform that enables users to create custom database applications tailored to their specific needs.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NINOX_DELETE_RECORD", "name": "Delete Record", "description": "Tool to delete a record from a specified table. Use after confirming workspace, database, table, and record IDs." }, { "slug": "NINOX_GET_DATABASES", "name": "Get Databases", "description": "Retrieves all databases within a specific Ninox team. This action lists all databases (workspaces) that belong to a given team in Ninox. Each database contains tables, fields, and records for organizing data. Use this action when you need to: - List all available databases in a team - Find a specific database by name - Get database IDs for further operations Note: You must have a valid team_id. Use the GET /teams endpoint to retrieve team IDs first." }, { "slug": "NINOX_GET_TEAM", "name": "Get Team", "description": "Retrieves data from a single team (workspace) by its ID. Use when you need to get workspace details including the workspace ID and name." }, { "slug": "NINOX_LIST_TEAMS", "name": "List Teams", "description": "Retrieves all workspaces (teams) accessible to the authenticated user. This action lists all Ninox teams (workspaces) that the user has access to. Each team contains databases, which in turn contain tables and records. Use this action when you need to: - List all available workspaces - Find a specific workspace by name - Get workspace IDs for further operations (databases, tables, records) Note: The team_id from this response is required for most other Ninox API operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ninox_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Ninox Personal Access Token", "type": "string", "description": "The Personal Access Token used for authenticating API requests. Generate it from the Ninox web app under the 'Integrations' section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nioleads", "name": "Nioleads", "logo": "https://logos.composio.dev/api/nioleads", "description": "Simplify your LinkedIn outreach with NioLeads Email Finder. Find and verify business email addresses.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NIOLEADS_FIND_EMAIL", "name": "Find Email", "description": "Tool to find business email addresses using a person's name and company domain. Use when you need to locate a professional email address. Consumes one finder credit upon successful verification." }, { "slug": "NIOLEADS_GET_CREDITS", "name": "Get Credits", "description": "Tool to retrieve current credit balance for your account. Use when you need to check available credits. This endpoint does not consume any credits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nioleads_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from Integrations > API Tokens at https://nioleads.com/dashboard/integrations/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nocodb", "name": "NocoDB", "logo": "https://logos.composio.dev/api/nocodb", "description": "Free & open source Airtable alternative. NocoDB turns any database into a smart spreadsheet with REST APIs.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 28, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NOCODB_AUTH_ME", "name": "Get User Info", "description": "Tool to get authenticated user information including email, name, roles, and profile details. Use when you need to verify user authentication or retrieve the current user's profile information." }, { "slug": "NOCODB_AUTH_PASSWORD_FORGOT", "name": "Forgot Password", "description": "Tool to initiate password reset process by sending a reset email to the user. Use when a user has forgotten their password and needs to receive a password reset link via email." }, { "slug": "NOCODB_AUTH_SIGNOUT", "name": "Sign Out User", "description": "Tool to sign out the authenticated user and clear their refresh token from the database and cookie. Use when you need to invalidate a user's authentication session and log them out of the NocoDB application." }, { "slug": "NOCODB_DB_TABLE_SORT_GET", "name": "Get Sort Metadata", "description": "Tool to retrieve sort configuration by ID from NocoDB. Use when you need to get details about how data is ordered in a specific view." }, { "slug": "NOCODB_DB_VIEW_COLUMN_UPDATE", "name": "Update View Column", "description": "Tool to update a column configuration in a view. Use when you need to change column visibility, order, or width in a specific view." }, { "slug": "NOCODB_DB_VIEW_DELETE", "name": "Delete View", "description": "Tool to delete a view from a NocoDB table. Use when you need to permanently remove a view. This action cannot be undone." }, { "slug": "NOCODB_DB_VIEW_ROW_DELETE", "name": "Delete Table View Row", "description": "Tool to delete a specific row from a table view in NocoDB. Use when you need to remove a single record from a view." }, { "slug": "NOCODB_INTEGRATIONS_INFO", "name": "Get Integration Info", "description": "Tool to retrieve metadata for a specific NocoDB integration by type and subtype. Use when you need to get integration configuration schema, display information, or available capabilities for an integration." }, { "slug": "NOCODB_INTEGRATIONS_LIST", "name": "List Integrations", "description": "Tool to retrieve all available integrations in NocoDB. Use when you need to list all integrations including AI, authentication, sync, and workflow-node types." }, { "slug": "NOCODB_INTEGRATION_STORE", "name": "Store Integration Configuration", "description": "Tool to store configuration for a NocoDB integration. Use when you need to save or update integration settings like API keys, models, or other configuration parameters." }, { "slug": "NOCODB_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to list all workspaces accessible to the authenticated user. Use when you need to discover workspace_id before base operations, primarily relevant for NocoDB Cloud or multi-workspace deployments." }, { "slug": "NOCODB_NOTIFICATION_DELETE", "name": "Delete Notification", "description": "Tool to delete a notification for the authenticated user. Use when you need to remove a notification. This performs a soft-delete operation." }, { "slug": "NOCODB_NOTIFICATION_LIST", "name": "List Notifications", "description": "Tool to retrieve paginated notification records for the authenticated user. Use when you need to list notifications with optional filtering by read status and pagination support. Only returns notifications that haven't been soft-deleted." }, { "slug": "NOCODB_NOTIFICATION_POLL", "name": "Poll Notifications", "description": "Tool to poll for notifications using long-polling mechanism. Use when you need to check for new notifications for the authenticated user. The connection is maintained for up to 30 seconds; if no notification arrives, returns status 'refresh' and the client should poll again." }, { "slug": "NOCODB_PLUGIN_STATUS", "name": "Get Plugin Status", "description": "Tool to check if a NocoDB plugin is active or not. Use when you need to verify the operational status of a specific plugin by its identifier." }, { "slug": "NOCODB_PUBLIC_GROUPED_DATA_LIST", "name": "List Public Shared View Grouped Data", "description": "Tool to retrieve grouped data from a publicly shared NocoDB view. Use when you need to access grouped records from a public shared view without authentication." }, { "slug": "NOCODB_STORAGE_UPLOAD_BY_URL", "name": "Upload Attachments by URL", "description": "Tool to upload attachments from remote URLs to NocoDB storage. Use when you need to import files from external URLs or migrate attachments from other platforms like Airtable. The server fetches files from provided URLs and stores them in configured storage." }, { "slug": "NOCODB_TABLE_READ", "name": "Get Table Schema", "description": "Tool to retrieve complete schema information for a specific table. Use when you need to understand table structure, field definitions, or available views." }, { "slug": "NOCODB_USER_PROFILE_UPDATE", "name": "Update User Profile", "description": "Tool to update authenticated user's profile information including display name, first name, and last name. Use when you need to modify the current user's profile details in NocoDB." }, { "slug": "NOCODB_UTILS_AGGREGATED_META_INFO", "name": "Get Aggregated Meta Info", "description": "Tool to get aggregated meta information such as tableCount, dbViewCount, viewCount and other statistics about the NocoDB instance. Use when you need an overview of the system's data structure and usage metrics." }, { "slug": "NOCODB_UTILS_APP_HEALTH", "name": "Get Application Health Status", "description": "Tool to get the NocoDB application health status. Use when you need to check if the application is running and responsive, typically for load balancers or monitoring systems." }, { "slug": "NOCODB_UTILS_APP_INFO", "name": "Get Application Info", "description": "Tool to get comprehensive NocoDB application information including authentication settings, version, limits, and deployment configuration. Use when you need to discover application capabilities, feature flags, or system configuration." }, { "slug": "NOCODB_UTILS_CLOUD_FEATURES", "name": "Get Cloud Features", "description": "Tool to get NocoDB Cloud features. Use when you need to retrieve available cloud-specific features and capabilities, including their availability status and highlight information." }, { "slug": "NOCODB_UTILS_COMMAND_PALETTE", "name": "Get Command Palette Suggestions", "description": "Tool to get dynamic command palette suggestions based on scope. Use when you need to retrieve available commands and actions for the NocoDB interface." }, { "slug": "NOCODB_UTILS_ERROR_REPORT", "name": "Report Error", "description": "Tool to report errors to NocoDB's error tracking system. Use when you need to submit error reports including error type, message, stack trace, and timestamp for monitoring and debugging purposes." }, { "slug": "NOCODB_UTILS_FEED", "name": "Get Product Feed", "description": "Tool to get NocoDB product feed from social media sources including GitHub, YouTube, Twitter, and Cloud. Use when you need to retrieve social media updates and content from NocoDB's various channels. Supports filtering by feed source and pagination." }, { "slug": "NOCODB_UTILS_URL_TO_CONFIG", "name": "Convert URL to Database Config", "description": "Tool to convert JDBC URL or database connection URL to connection configuration object. Use when you need to parse and extract database connection parameters from a URL string for configuration purposes." }, { "slug": "NOCODB_WORKSPACE_BASE_LIST", "name": "List Workspace Bases", "description": "Tool to list all bases in a NocoDB workspace. Use when you need to retrieve bases associated with a specific workspace. Supports pagination via page and pageSize parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nocodb_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your NocoDB instance domain (e.g., app.nocodb.com or mytable.com). Defaults to app.nocodb.com.", "required": true, "default": "app.nocodb.com" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your NocoDB API token. Create one in Account Settings > Tokens tab. Token is a 40-character Nano ID that does not expire.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nocrm_io", "name": "NoCRM.io", "logo": "https://logos.composio.dev/api/nocrm_io", "description": "noCRM.io is a lead management software designed to help sales teams track and close deals efficiently.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NOCRM_IO_ADD_A_TAG_TO_A_LEAD", "name": "Add a tag to a lead", "description": "Tool to add a tag to a lead. Use when you need to assign one or more tags to a specified lead via noCRM.io." }, { "slug": "NOCRM_IO_APPEND_TO_LEADS_DESCRIPTION", "name": "Append to lead's description", "description": "Tool to append text to the lead's description. Use when you need to add context incrementally without overwriting. Example: Append 'Left voicemail' to lead 1234." }, { "slug": "NOCRM_IO_ASSIGN_LEAD_TO_USER", "name": "Assign Lead to User", "description": "Tool to assign a lead to a user. Use when reassigning a lead to the correct owner to trigger assignment notification." }, { "slug": "NOCRM_IO_CHANGE_LEAD_STATUS_CANCELLED", "name": "Change Lead Status to Cancelled", "description": "Tool to change a lead's status to 'Cancelled'. Use after confirming no further follow-up is needed and the lead should be marked as cancelled." }, { "slug": "NOCRM_IO_CHANGE_LEAD_STATUS_STANDBY", "name": "Change lead status standby", "description": "Tool to change a lead's status to 'StandBy'. Use when scheduling follow-up after determining the next contact should occur in a set number of days." }, { "slug": "NOCRM_IO_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a new lead. Use when adding a fresh prospect to your pipeline via noCRM.io. Example: Create a lead titled 'ACME Corp' assigned to a user." }, { "slug": "NOCRM_IO_DELETE_LEAD", "name": "Delete Lead", "description": "Tool to delete a lead. Use when you need to permanently remove a specific lead after verifying it is no longer needed." }, { "slug": "NOCRM_IO_DUPLICATE_LEAD", "name": "Duplicate Lead", "description": "Tool to duplicate a lead. Use when cloning an existing lead into a new step without overwriting original." }, { "slug": "NOCRM_IO_LIST_ALL_TEAMS", "name": "List All Teams", "description": "Tool to retrieve all teams. Use when you need to fetch every team and its members from noCRM.io." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nocrm_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "The subdomain of the user's noCRM.io account, used to construct the base URL. Example: For https://yourcompany.nocrm.io, use 'yourcompany'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key generated from the noCRM.io Admin Panel under the 'API Keys' section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "northflank", "name": "Northflank", "logo": "https://logos.composio.dev/api/northflank", "description": "The self-service developer platform that automates and unifies deployment of any workload, on any cloud, at any scale.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NORTHFLANK_CREATE_OR_UPDATE_PROJECT", "name": "Create or Update Project", "description": "Tool to create a new project or update an existing project in Northflank (upsert operation). Use when you need to ensure a project exists with specific configuration, regardless of whether it's already created." }, { "slug": "NORTHFLANK_CREATE_OR_UPDATE_SECRET", "name": "Create or Update Secret", "description": "Tool to create or update a secret group in a Northflank project. Use when you need to store encrypted runtime variables or build arguments that can be inherited by services and jobs." }, { "slug": "NORTHFLANK_CREATE_SECRET", "name": "Create Secret", "description": "Tool to create a secret group in a Northflank project. Use when you need to store encrypted environment variables that can be inherited by services and jobs." }, { "slug": "NORTHFLANK_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to permanently delete a Northflank project and all associated resources. Use when you need to remove a project including all builds, deployments, jobs, addons, secret groups, and configurations." }, { "slug": "NORTHFLANK_GET_DNS_ID", "name": "Get DNS ID", "description": "Tool to retrieve the DNS identifier for the authenticated account. Use when you need to get the DNS ID used for generating DNS entries for services and domains." }, { "slug": "NORTHFLANK_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve detailed information about a specific Northflank project. Use when you need to get project configuration, region, networking settings, or metadata." }, { "slug": "NORTHFLANK_GET_SECRET", "name": "Get Secret", "description": "Tool to retrieve a secret from a Northflank project including its contents. Use when you need to view the actual secret values and metadata for a specific secret." }, { "slug": "NORTHFLANK_GET_SECRET_DETAILS", "name": "Get Secret Details", "description": "Tool to view a secret with details about its linked addons from a Northflank project. Use when you need to understand addon dependencies and detailed metadata for a specific secret." }, { "slug": "NORTHFLANK_LIST_ADDON_TYPES", "name": "List Addon Types", "description": "Tool to retrieve information about available addon types in Northflank. Use when you need to understand what addon types are supported and their features." }, { "slug": "NORTHFLANK_LIST_CLOUD_PROVIDER_NODE_TYPES", "name": "List Cloud Provider Node Types", "description": "Tool to retrieve supported cloud provider node types available on Northflank. Use when you need to see available node types across various cloud providers including AWS, GCP, Azure, Civo, Oracle Cloud, and CoreWeave." }, { "slug": "NORTHFLANK_LIST_CLOUD_PROVIDER_REGIONS", "name": "List Cloud Provider Regions", "description": "Tool to retrieve supported cloud provider regions available on Northflank. Use when you need to see available regions across various cloud providers including AWS, GCP, Azure, Civo, Oracle Cloud, and CoreWeave." }, { "slug": "NORTHFLANK_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list all pipelines for a Northflank project. Use when you need to retrieve all pipelines configured in a project." }, { "slug": "NORTHFLANK_LIST_PLANS", "name": "List Plans", "description": "Tool to retrieve available billing/resource plans in Northflank. Use when you need to see available plan options and their specifications." }, { "slug": "NORTHFLANK_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects in your Northflank team with pagination support. Use when you need to retrieve projects for the authenticated user or team." }, { "slug": "NORTHFLANK_LIST_REGIONS", "name": "List Regions", "description": "Tool to retrieve available project regions in Northflank. Use when you need to see which geographic regions are available for deploying projects and resources." }, { "slug": "NORTHFLANK_LIST_SECRETS", "name": "List Secrets", "description": "Tool to list all secrets belonging to a Northflank project. Use when you need to retrieve secret groups configured in a project. Supports cursor-based pagination with default 50 results per page." }, { "slug": "NORTHFLANK_LIST_SERVICES", "name": "List Services", "description": "Tool to list all services belonging to a Northflank project. Use when you need to retrieve services configured in a project. Supports cursor-based pagination with 50 results per page." }, { "slug": "NORTHFLANK_PATCH_SECRET", "name": "Patch Secret", "description": "Tool to partially update a secret group in a Northflank project. Use when you need to modify specific properties of an existing secret without providing all fields." }, { "slug": "NORTHFLANK_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update a project in Northflank. Use when you need to modify project settings such as description, color, or advanced networking configuration." }, { "slug": "NORTHFLANK_UPDATE_SECRET", "name": "Update Secret", "description": "Tool to update a secret in a Northflank project. Use when you need to modify existing secret variables or add new variables to an existing secret." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "northflank_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Sign in to Northflank and copy your API Token from the left menu under \"API\" > \"Tokens\". You must first create an API role with appropriate permissions.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nozbe_teams", "name": "Nozbe Teams", "logo": "https://logos.composio.dev/api/nozbe_teams", "description": "Cloud-based task management tool helping individuals and teams get organized.", "category": "task management", "authSchemes": [ "API_KEY" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NOZBE_TEAMS_CREATE_ATTACHMENT", "name": "Create Attachment", "description": "Tool to add attachment metadata to a comment. Use when you need to create attachment metadata for a file associated with a comment. This creates the metadata record; actual file upload may be a separate step depending on the workflow." }, { "slug": "NOZBE_TEAMS_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to add a comment to a task in Nozbe Teams. Use when you need to add feedback, notes, or updates to a specific task." }, { "slug": "NOZBE_TEAMS_CREATE_PROJECT_SECTION", "name": "Create Project Section", "description": "Tool to create a new project section in Nozbe Teams. Use when you need to add a section to organize tasks within a project." }, { "slug": "NOZBE_TEAMS_CREATE_REMINDER", "name": "Create Reminder", "description": "Tool to add a reminder to a task in Nozbe Teams. Use when you need to set up a notification for a specific task at a given time." }, { "slug": "NOZBE_TEAMS_CREATE_TAG_ASSIGNMENT", "name": "Create Tag Assignment", "description": "Tool to add a tag assignment to a task. Use when you need to tag or label a task for organization or categorization purposes." }, { "slug": "NOZBE_TEAMS_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Nozbe Teams. Use when you need to add a task to a project or personal task list. Only the task name is required; all other fields are optional." }, { "slug": "NOZBE_TEAMS_CREATE_TEAM_MEMBER", "name": "Create Team Member", "description": "Tool to add a team member in Nozbe Teams. Use when you need to add an existing user to a team with a specific role and status. The user must already exist in the system before they can be added to a team." }, { "slug": "NOZBE_TEAMS_CREATE_USER", "name": "Create User", "description": "Tool to create a new placeholder user in Nozbe Teams. Use when you need to add a placeholder user to the system. Note: Only placeholder users can be created via API - attempting to create non-placeholder users will fail with a 400 error." }, { "slug": "NOZBE_TEAMS_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to permanently delete a comment by its ID. Use when you need to remove a comment from a task. Returns the deleted comment object with all its properties." }, { "slug": "NOZBE_TEAMS_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project in Nozbe Teams by its ID. Use when you need to permanently remove a project from the workspace." }, { "slug": "NOZBE_TEAMS_DELETE_REMINDER", "name": "Delete Reminder", "description": "Tool to delete a reminder by its unique ID. Use when you need to remove a reminder from Nozbe Teams." }, { "slug": "NOZBE_TEAMS_DELETE_TAG_ASSIGNMENT", "name": "Delete Tag Assignment", "description": "Tool to delete a tag assignment by its ID. Use when you need to remove a tag from a task or project." }, { "slug": "NOZBE_TEAMS_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task in Nozbe Teams by its ID. Use when you need to permanently remove a task from the workspace." }, { "slug": "NOZBE_TEAMS_GET_ATTACHMENT", "name": "Get Attachment", "description": "Tool to get attachment metadata by its ID. Use when you need to retrieve details about a specific file attached to a comment." }, { "slug": "NOZBE_TEAMS_GET_COMMENT", "name": "Get Comment by ID", "description": "Tool to retrieve a comment by its ID from Nozbe Teams. Use when you need to fetch details of a specific comment on a task." }, { "slug": "NOZBE_TEAMS_GET_PROJECT", "name": "Get Project by ID", "description": "Tool to retrieve a project by its ID from Nozbe Teams. Use when you need to fetch details about a specific project." }, { "slug": "NOZBE_TEAMS_GET_PROJECT_ACCESS", "name": "Get Project Access", "description": "Tool to retrieve project access details by ID. Use when you need to check a team member's access permissions and manager status for a specific project." }, { "slug": "NOZBE_TEAMS_GET_PROJECT_SECTION", "name": "Get Project Section", "description": "Tool to retrieve a project section by ID from Nozbe Teams. Use when you need to fetch details of a specific section within a project, including its name, position, and timestamps." }, { "slug": "NOZBE_TEAMS_GET_REMINDER", "name": "Get Reminder", "description": "Tool to get a reminder by ID from Nozbe Teams. Use when you need to retrieve details about a specific reminder." }, { "slug": "NOZBE_TEAMS_GET_TAG", "name": "Get Tag", "description": "Tool to get a tag by ID from Nozbe Teams. Use when you need to retrieve details about a specific tag." }, { "slug": "NOZBE_TEAMS_GET_TAG_ASSIGNMENT", "name": "Get Tag Assignment", "description": "Tool to retrieve a tag assignment by its ID. Use when you need to fetch details about a specific tag-task relationship in Nozbe Teams." }, { "slug": "NOZBE_TEAMS_GET_TASK", "name": "Get Task by ID", "description": "Tool to retrieve a task by its ID from Nozbe Teams. Use when you need to fetch details about a specific task." }, { "slug": "NOZBE_TEAMS_GET_TASK_EVENT", "name": "Get Task Event", "description": "Tool to get a task event by ID. Use when you need to retrieve details about a specific task event." }, { "slug": "NOZBE_TEAMS_GET_TEAM", "name": "Get Team by ID", "description": "Tool to retrieve a team by its ID from Nozbe Teams. Use when you need to fetch details about a specific team." }, { "slug": "NOZBE_TEAMS_GET_TEAM_MEMBER", "name": "Get Team Member by ID", "description": "Tool to retrieve a team member by ID from Nozbe Teams. Use when you need to fetch details about a specific team member." }, { "slug": "NOZBE_TEAMS_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a user by their ID from Nozbe Teams. Use when you need to fetch details about a specific user." }, { "slug": "NOZBE_TEAMS_LIST_ATTACHMENTS", "name": "List Comment Attachments", "description": "Tool to get all attachments related to a specific comment in Nozbe Teams. Use when you need to retrieve attachment metadata (ID, name, size, MIME type, etc.) for a comment. Returns an array of attachment objects with their properties." }, { "slug": "NOZBE_TEAMS_LIST_COMMENTS", "name": "List Comments", "description": "Tool to get accessible comments with optional filtering by task_id and pagination support. Use when you need to retrieve comments, optionally filtered by task, with control over pagination and field selection." }, { "slug": "NOZBE_TEAMS_LIST_GROUP_ASSIGNMENTS", "name": "List Group Assignments", "description": "Tool to get accessible group assignments from Nozbe Teams. Use when you need to retrieve assignments between groups and projects/members, with optional filtering by group_id, object_id, or group_type." }, { "slug": "NOZBE_TEAMS_LIST_PROJECT_ACCESSES", "name": "List Project Accesses", "description": "Tool to get accessible project accesses in Nozbe Teams. Use when you need to retrieve project access records, optionally filtered by sorting or field selection. Returns a list of project access objects showing which team members have access to which projects and their manager status." }, { "slug": "NOZBE_TEAMS_LIST_PROJECT_GROUPS", "name": "List Project Groups", "description": "Tool to get accessible project groups from Nozbe Teams. Use when you need to list or search for project groups with optional filtering by name, team, or other criteria." }, { "slug": "NOZBE_TEAMS_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve accessible projects with optional filtering. Use when you need to list projects, optionally filtered by team_id or is_open status." }, { "slug": "NOZBE_TEAMS_LIST_PROJECT_SECTIONS", "name": "List Project Sections", "description": "Tool to retrieve accessible project sections with optional filtering. Use when you need to list sections within projects, optionally filtered by project_id." }, { "slug": "NOZBE_TEAMS_LIST_REMINDERS", "name": "List Reminders", "description": "Tool to get accessible reminders from Nozbe Teams. Use when you need to retrieve reminders, optionally filtered by task ID, all-day status, or other parameters." }, { "slug": "NOZBE_TEAMS_LIST_TAG_ASSIGNMENTS", "name": "List Tag Assignments", "description": "Tool to get accessible tag assignments with optional filtering by tag_id or task_id. Use when you need to retrieve associations between tags and tasks, optionally filtered by specific tag or task identifiers." }, { "slug": "NOZBE_TEAMS_LIST_TAGS", "name": "List Tags", "description": "Tool to get accessible tags from Nozbe Teams. Use when you need to retrieve tags, optionally filtered by name, favorite status, or task association." }, { "slug": "NOZBE_TEAMS_LIST_TASK_EVENTS", "name": "List Task Events", "description": "Tool to get accessible task events from Nozbe Teams. Use when you need to retrieve task activity history or audit trail. Filter by task_id to get events for a specific task." }, { "slug": "NOZBE_TEAMS_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve accessible tasks from Nozbe Teams. Use when you need to query tasks with optional filters like project_id or review_reason. Supports pagination and sorting of results." }, { "slug": "NOZBE_TEAMS_LIST_USERS", "name": "List Users", "description": "Tool to retrieve accessible users from Nozbe Teams. Use when you need to query users with optional filters like name. Supports pagination and sorting of results." }, { "slug": "NOZBE_TEAMS_POLL_NEW_TASKS", "name": "Poll for new tasks", "description": "Tool to poll for new tasks created since the last call. Use when you need to retrieve recently created tasks in Nozbe Teams. Optionally filter by project or responsible user, and specify which fields to return." }, { "slug": "NOZBE_TEAMS_POLL_UPDATED_TASKS", "name": "Poll Updated Tasks", "description": "Tool to poll for tasks that have been updated since the last call. Use when you need to retrieve recently modified tasks from Nozbe Teams." }, { "slug": "NOZBE_TEAMS_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update an existing comment in Nozbe Teams. Use when you need to modify a comment's text, pin status, deletion status, or extra metadata." }, { "slug": "NOZBE_TEAMS_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update a project in Nozbe Teams. Use when you need to modify project properties such as name, status, color, or description. All fields except the project ID are optional - only provide fields you want to update." }, { "slug": "NOZBE_TEAMS_UPDATE_PROJECT_ACCESS", "name": "Update Project Access", "description": "Tool to update project access permissions in Nozbe Teams. Use when modifying member privileges for a specific project." }, { "slug": "NOZBE_TEAMS_UPDATE_TASK", "name": "Update Task", "description": "Tool to update a task in Nozbe Teams. Use when you need to modify task properties such as name, project, responsible user, due date, or other attributes. All fields except the task ID are optional - only provide fields you want to update." }, { "slug": "NOZBE_TEAMS_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update a team in Nozbe Teams. Use when you need to modify team properties such as name, color, or sidebar position. All fields except the team ID are optional - only provide fields you want to update." }, { "slug": "NOZBE_TEAMS_UPDATE_TEAM_MEMBER", "name": "Update Team Member", "description": "Tool to update a team member in Nozbe Teams. Use when you need to modify team member properties such as role, status, alias, or description. All fields except the team member ID are optional - only provide fields you want to update." }, { "slug": "NOZBE_TEAMS_UPDATE_USER", "name": "Update User", "description": "Tool to update a user in Nozbe Teams. Use when you need to modify user properties such as name, avatar color, placeholder status, or contact information. All fields except the user ID are optional - only provide fields you want to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nozbe_teams_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to Settings → Integrations → API tokens in your Nozbe Teams account and create a new token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "npm", "name": "Npm", "logo": "https://logos.composio.dev/api/npm", "description": "npm is the default package manager for JavaScript and Node.js, facilitating the sharing and reuse of code, managing dependencies, and streamlining project workflows.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NPM_DELETE_USER_TOKEN_LEGACY", "name": "Delete User Token (Legacy)", "description": "Tool to delete a user authentication token using the legacy endpoint. Use when you need to revoke or remove a specific token from the npm registry." }, { "slug": "NPM_GET_ALL_PACKAGES_DOWNLOAD_POINT", "name": "Get All Packages Download Count Point", "description": "Get total npm registry download statistics for all packages for a specified time period. Returns aggregate download counts across the entire npm registry with start/end dates. Supports preset periods (last-day, last-week, last-month, last-year) or custom date ranges (YYYY-MM-DD:YYYY-MM-DD)." }, { "slug": "NPM_GET_DOWNLOAD_COUNTS_POINT", "name": "Get NPM Download Counts Point", "description": "Get npm package download statistics for a specified time period. Returns total download counts with start/end dates for single packages, scoped packages, or bulk queries (up to 128 packages). Supports preset periods (last-day, last-week, last-month, last-year) or custom date ranges (YYYY-MM-DD:YYYY-MM-DD)." }, { "slug": "NPM_GET_DOWNLOAD_COUNTS_RANGE_PACKAGE", "name": "Get NPM Package Download Counts Over Date Range", "description": "Tool to get download counts for an npm package over a specified date range. Use when you need historical daily download data." }, { "slug": "NPM_GET_DOWNLOAD_RANGE_ALL", "name": "Get All NPM Packages Download Counts by Period", "description": "Tool to get daily download counts for all npm packages over a specified period. Use when you need aggregate download statistics across the entire npm registry." }, { "slug": "NPM_GET_REGISTRY_CHANGES", "name": "Get Registry Changes Feed", "description": "Tool to get a stream of registry changes for replication purposes. Returns CouchDB-style change feed for following registry updates." }, { "slug": "NPM_GET_REGISTRY_META", "name": "Get NPM Registry Meta", "description": "Retrieves npm registry metadata via meta endpoints. Use 'ping' to verify registry connectivity or 'whoami' to get the authenticated username." }, { "slug": "NPM_GET_VERSION_DOWNLOADS", "name": "Get NPM Package Version Downloads (Last 7 Days)", "description": "Tool to get download counts for specific versions of a package over the last 7 days. Use when you need to understand which versions are most popular." }, { "slug": "NPM_QUERY_BULK_SECURITY_ADVISORIES", "name": "Query Bulk Security Advisories", "description": "Tool to bulk query security advisories for multiple npm packages. Use when you need to check vulnerability information for multiple packages and versions at once." }, { "slug": "NPM_REGISTRY_GET_PACKAGE", "name": "Get NPM Package Metadata", "description": "Tool to fetch metadata for a specified npm package. Use after confirming the exact package name, including scope. Responses can be large; prefer reading top-level fields like 'dist-tags', 'description', and 'license' rather than scanning the entire object." }, { "slug": "NPM_REGISTRY_GET_ROOT", "name": "Get NPM Registry Root Metadata", "description": "Fetches npm registry root metadata including total package count and update sequence. Returns database statistics from the npm replication service. No parameters required. Use this to get current registry statistics like the total number of packages available." }, { "slug": "NPM_REGISTRY_SEARCH_PACKAGES", "name": "Search NPM Packages", "description": "Tool to search for packages in the npm registry. Use when you need to find packages matching a search term. Results are returned in an 'objects' array; each element contains package metadata under a 'package' field and weekly download estimates under 'downloads.weekly'." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "npm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "NPM Access Token", "type": "string", "description": "The access token generated from your npm account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ntfy", "name": "Ntfy", "logo": "https://logos.composio.dev/api/ntfy", "description": "Send push notifications to your phone or desktop via PUT/POST", "category": "notifications", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NTFY_CREATE_ACCOUNT", "name": "Create NTFY Account", "description": "Tool to register a new user account on ntfy. Use when you need to create a new user account on the ntfy.sh hosted service. Note: This endpoint is not available on self-hosted instances unless signup is explicitly enabled in the server configuration." }, { "slug": "NTFY_CREATE_WEBPUSH_SUBSCRIPTION", "name": "Create Web Push Subscription", "description": "Tool to register a web push subscription for browser notifications. Use when you need to enable push notifications from ntfy topics through a browser's native push notification system." }, { "slug": "NTFY_DELETE_WEBPUSH_SUBSCRIPTION", "name": "Delete Web Push Subscription", "description": "Tool to unregister a web push subscription from the ntfy server. Use when you need to remove browser push notifications for a previously registered endpoint." }, { "slug": "NTFY_FETCH_SCHEDULED_MESSAGES", "name": "Fetch Scheduled Messages", "description": "Tool to fetch messages scheduled for later delivery from a topic. Use when you need to retrieve messages that are set to be delivered at a future date. The poll=1 and scheduled=1 parameters are automatically set to retrieve cached scheduled messages in a single request." }, { "slug": "NTFY_GET_ACCOUNT", "name": "Get Account Information", "description": "Tool to retrieve account data for authenticated user or anonymous user. Use when you need to get account information, limits, statistics, or tier details." }, { "slug": "NTFY_GET_STATS", "name": "Get Server Statistics", "description": "Tool to retrieve server statistics including message counts and publishing rates. Use when you need to monitor ntfy server activity and get metrics about message volume." }, { "slug": "NTFY_GET_TIERS", "name": "Get Service Tiers", "description": "Tool to list all available ntfy service tiers with their limits and features. Use when you need to retrieve subscription tier information including pricing and usage limits. Requires that payments are enabled on the server." }, { "slug": "NTFY_HEAD_FILE", "name": "Get File Attachment Metadata", "description": "Tool to get file attachment metadata from a message without downloading the file content. Use when you need to check file size, content type, or verify file existence in the ntfy attachment cache." }, { "slug": "NTFY_HEALTH_CHECK", "name": "Check NTFY Service Health", "description": "Tool to check the health status of the ntfy service. Use when you need to verify if the ntfy service is operational and responding correctly." }, { "slug": "NTFY_PUBLISH_MESSAGE", "name": "Publish Message to Topic", "description": "Tool to publish a message to a ntfy topic. Use when you need to send notifications or alerts to a topic. Topics are created dynamically if they don't exist." }, { "slug": "NTFY_PUBLISH_VIA_GET", "name": "Publish Message via GET", "description": "Tool to publish messages to ntfy via GET request with URL parameters. Use when PUT/POST methods are unavailable or for simple webhook integration. Supports all message parameters as query strings. Without parameters, sends 'triggered' as message." }, { "slug": "NTFY_SUBSCRIBE_RAW_STREAM", "name": "Subscribe to Topic (Raw Stream)", "description": "Tool to subscribe to a topic and receive message bodies as raw text stream. Use when you need to retrieve messages without metadata like priority, tags, or titles. Each line in the response contains only the message body. Empty lines represent keepalive messages. In streaming mode, the connection remains open to receive new messages. With poll=1, cached messages are returned and the connection closes." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "ntfy_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Server URL", "type": "string", "description": "Your ntfy server URL (default: https://ntfy.sh for public service, or your self-hosted instance URL)", "required": true, "default": "https://ntfy.sh" }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your ntfy username for authentication", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your ntfy password for authentication", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "ntfy_no_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Server URL", "type": "string", "description": "Your ntfy server URL (default: https://ntfy.sh for public service, or your self-hosted instance URL)", "required": true, "default": "https://ntfy.sh" } ], "optional": [] } } } ] }, { "slug": "nudgify", "name": "Nudgify", "logo": "https://logos.composio.dev/api/nudgify", "description": "Nudgify is the Social Proof, FOMO and UX app that adds real-world context to your website in realtime.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nudgify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Nudgify API Key. Find it on your Sites page at https://app.nudgify.com/sites", "required": true, "default": null }, { "name": "generic_id", "displayName": "Site Key", "type": "string", "description": "Your Nudgify Site Key (UUID). Find it on your Sites page at https://app.nudgify.com/sites", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "numverify", "name": "Numverify", "logo": "https://logos.composio.dev/api/numverify", "description": "Global Phone Number Validation & Lookup JSON API", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "numverify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://numverify.com/dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nusii_proposals", "name": "Nusii proposals", "logo": "https://logos.composio.dev/api/nusii_proposals", "description": "Proposal software that both you and your clients will love. Stop fighting with Word, InDesign and PDF's. Create beautiful proposals in less time, every time with Nusii.", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NUSII_PROPOSALS_ARCHIVE_PROPOSAL", "name": "Archive Proposal", "description": "Tool to archive a specific proposal in Nusii. Use when you need to archive a proposal that is no longer active." }, { "slug": "NUSII_PROPOSALS_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client in Nusii Proposals. Use when you need to add a client with their contact and business details. Returns the created client's information including unique identifier." }, { "slug": "NUSII_PROPOSALS_CREATE_LINE_ITEM", "name": "Create Line Item", "description": "Tool to create a line item within a proposal section. Use when you need to add a cost item to a specific section of a proposal." }, { "slug": "NUSII_PROPOSALS_CREATE_PROPOSAL", "name": "Create Proposal", "description": "Tool to create a new proposal in Nusii. Use when you need to initialize a proposal with title, client information, and optional configuration settings." }, { "slug": "NUSII_PROPOSALS_CREATE_SECTION", "name": "Create Section", "description": "Tool to create a section for a proposal or template in Nusii Proposals. Use when you need to add a new section to a proposal or template." }, { "slug": "NUSII_PROPOSALS_CREATE_WEBHOOK_ENDPOINT", "name": "Create Webhook Endpoint", "description": "Tool to create a webhook endpoint to subscribe to Nusii events. Use when you need to register a new webhook for receiving event notifications." }, { "slug": "NUSII_PROPOSALS_DELETE_CLIENT", "name": "Delete a client", "description": "Tool to delete a specific client from Nusii account. Use when you need to permanently remove a client record." }, { "slug": "NUSII_PROPOSALS_DELETE_LINE_ITEM", "name": "Delete Line Item", "description": "Tool to delete a line item from Nusii. Use when you need to remove a specific line item by its ID." }, { "slug": "NUSII_PROPOSALS_DELETE_PROPOSAL", "name": "Delete a proposal", "description": "Tool to delete a proposal from the system. Use when you need to permanently remove a proposal by its ID." }, { "slug": "NUSII_PROPOSALS_DELETE_SECTION", "name": "Delete a section", "description": "Tool to delete a specific section from Nusii. Use when you need to remove a section from a proposal. Returns the deleted section data for confirmation purposes." }, { "slug": "NUSII_PROPOSALS_DELETE_WEBHOOK_ENDPOINT", "name": "Delete Webhook Endpoint", "description": "Tool to delete a specific webhook endpoint from the system. Use when you need to remove a webhook endpoint." }, { "slug": "NUSII_PROPOSALS_GET_ACCOUNT_ME", "name": "Get Account Me", "description": "Tool to retrieve authenticated user's personal account information and settings. Use to get current account details including company info, currency, locale, and contact information." }, { "slug": "NUSII_PROPOSALS_GET_CLIENT", "name": "Get Client", "description": "Tool to retrieve a single client from Nusii using their unique identifier. Use when you need to fetch detailed information about a specific client including contact details, business information, and preferences." }, { "slug": "NUSII_PROPOSALS_GET_PROPOSAL", "name": "Get Proposal", "description": "Tool to retrieve a single proposal with complete details and sections. Use when you need to fetch detailed information about a specific proposal." }, { "slug": "NUSII_PROPOSALS_GET_SECTION", "name": "Get Section", "description": "Tool to retrieve a single section from a proposal or template in Nusii. Use when you need detailed information about a specific section including title, content, pricing, and metadata." }, { "slug": "NUSII_PROPOSALS_GET_WEBHOOK_ENDPOINT", "name": "Get Webhook Endpoint", "description": "Tool to retrieve a single webhook endpoint configuration. Use when you need to get details about a specific webhook endpoint including its target URL and subscribed events." }, { "slug": "NUSII_PROPOSALS_LIST_CLIENTS", "name": "List Clients", "description": "Tool to retrieve all clients associated with the account. Use when you need to list or browse clients with pagination support." }, { "slug": "NUSII_PROPOSALS_LIST_LINE_ITEMS", "name": "List Line Items", "description": "Tool to retrieve all line items from Nusii Proposals with pagination support. Use when you need to list or browse line items in proposals." }, { "slug": "NUSII_PROPOSALS_LIST_PROPOSAL_ACTIVITIES", "name": "List Proposal Activities", "description": "Tool to retrieve all proposal activities with optional filtering by proposal or client ID. Use when you need to track interactions with proposals such as views, sends, or acceptances. Supports pagination via page and per parameters." }, { "slug": "NUSII_PROPOSALS_LIST_PROPOSALS", "name": "List Proposals", "description": "Tool to retrieve all proposals from your Nusii account with pagination and filtering options. Use when you need to browse proposals or filter by status." }, { "slug": "NUSII_PROPOSALS_LIST_SECTION_LINE_ITEMS", "name": "List Section Line Items", "description": "Tool to retrieve all line items from a specific section. Use when you need to get details about line items including pricing, quantities, and cost types within a section. Note: This endpoint does not support pagination." }, { "slug": "NUSII_PROPOSALS_LIST_SECTIONS", "name": "List Sections", "description": "Tool to retrieve all sections with optional filtering for proposals or templates. Use when you need to list sections or filter by proposal_id or template_id." }, { "slug": "NUSII_PROPOSALS_LIST_THEMES", "name": "List Themes", "description": "Tool to retrieve all available themes for proposals in Nusii. Use when you need to browse available theme options or select a theme for a proposal." }, { "slug": "NUSII_PROPOSALS_LIST_USERS", "name": "List Users", "description": "Tool to retrieve all users in paginated format. Use when you need to list users in the Nusii system. Supports pagination via page and per parameters." }, { "slug": "NUSII_PROPOSALS_LIST_WEBHOOK_ENDPOINTS", "name": "List Webhook Endpoints", "description": "Tool to retrieve all webhook endpoints configured for your Nusii account. Use when you need to view all configured webhook subscriptions. Supports pagination via page and per parameters." }, { "slug": "NUSII_PROPOSALS_UPDATE_CLIENT", "name": "Update Client", "description": "Tool to update an existing client's information in Nusii. Use when you need to modify client details such as contact information, business details, or preferences." }, { "slug": "NUSII_PROPOSALS_UPDATE_LINE_ITEM", "name": "Update Line Item", "description": "Tool to update an existing line item in Nusii proposals. Use when modifying line item details such as name, amount, cost type, or position. All update parameters are optional - only include the fields you want to change." }, { "slug": "NUSII_PROPOSALS_UPDATE_PROPOSAL", "name": "Update Proposal", "description": "Tool to update an existing proposal in Nusii. Use when you need to modify proposal details like title, client, expiration date, or display settings." }, { "slug": "NUSII_PROPOSALS_UPDATE_SECTION", "name": "Update Section", "description": "Tool to update an existing section in a proposal or template. Use when you need to modify section content, settings, or display properties." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nusii_proposals_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your Nusii Proposals account and sign in. Go to \"Settings\" > \"Integrations & API\" to retrieve your API token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nutrient_document_web_services_api", "name": "Nutrient document web services api", "logo": "https://logos.composio.dev/api/nutrient_document_web_services_api", "description": "PDF API Tools: Fast Setup with 25+ PDF Tools for document processing, conversion, OCR, and manipulation.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NUTRIENT_DOCUMENT_WEB_SERVICES_API_ANALYZE_BUILD", "name": "Analyze Build Request", "description": "Tool to analyze a Build API request and calculate credit consumption without execution. Use when you need to estimate costs before processing documents." }, { "slug": "NUTRIENT_DOCUMENT_WEB_SERVICES_API_CREATE_JWT_TOKEN", "name": "Create JWT Token", "description": "Tool to create a JWT token for authenticating requests to the Nutrient Document Web Services API. Use when you need to generate a new authentication token with optional restrictions on operations, origins, and expiration time." }, { "slug": "NUTRIENT_DOCUMENT_WEB_SERVICES_API_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Tool to get account information including credits remaining and usage details. Use when you need to check account status or available credits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "nutrient_document_web_services_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://dashboard.nutrient.io/api/api_keys/. API keys start with pdf_live for production or pdf_test for test mode.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "nutshell", "name": "Nutshell", "logo": "https://logos.composio.dev/api/nutshell", "description": "Nutshell is a flexible CRM and email marketing platform that helps small businesses manage contacts, sales pipelines, and customer relationships.", "category": "crm", "authSchemes": [ "BASIC" ], "toolCount": 78, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "NUTSHELL_CREATE_ACCOUNTS", "name": "Create Accounts", "description": "Tool to create one or more accounts in Nutshell. Use when you need to add new company accounts. Each account must have at least one of: name, phone, email, address, or url." }, { "slug": "NUTSHELL_CREATE_ACCOUNTS_CUSTOMFIELDS", "name": "Create Custom Field for Accounts", "description": "Tool to create a custom field for accounts in Nutshell. Use when you need to add new custom fields to track additional information on company accounts. Supports Text, LongText, Currency, Date, and Decision field types." }, { "slug": "NUTSHELL_CREATE_ACTIVITIES", "name": "Create Activities", "description": "Tool to create one or more activities in Nutshell CRM. Use when you need to log a completed activity or schedule a future activity such as phone calls, meetings, emails, or notes. All activity fields are optional except the activities array itself. At minimum, provide a name or activityType for meaningful activities." }, { "slug": "NUTSHELL_CREATE_CONTACTS", "name": "Create Contacts", "description": "Tool to create one or more contacts in Nutshell CRM. Use when you need to add new contacts to the system. Each contact must have at least one identifier field (name, phone, email, address, or url)." }, { "slug": "NUTSHELL_CREATE_LEADS", "name": "Create Lead", "description": "Tool to create a lead in Nutshell CRM using the JSON-RPC API. Use when you need to add a new lead to the system. The description field is required, while other fields like manualValue, dueTime, customFields, and links are optional." }, { "slug": "NUTSHELL_CREATE_LEADS_CUSTOMFIELD", "name": "Create Custom Field for Leads", "description": "Tool to create a custom field for leads in Nutshell. Use when you need to add new custom fields to track additional information on leads. Supports Text, Email, Currency, and Date field types." }, { "slug": "NUTSHELL_CREATE_NOTES", "name": "Create Notes", "description": "Tool to create a note in Nutshell. Use when you need to add notes to contacts, leads, accounts, or other entities in Nutshell CRM. The note will be attached to the specified parent entity." }, { "slug": "NUTSHELL_CREATE_SOURCES", "name": "Create Sources", "description": "Tool to create new sources in Nutshell CRM. Use when you need to add source tracking for leads or contacts. Sources help categorize where leads originate (e.g., organic search, paid ads)." }, { "slug": "NUTSHELL_CREATE_TAGS", "name": "Create Tags", "description": "Tool to create one or more tags in Nutshell. Use when you need to create new tags for categorizing leads, contacts, or accounts. Each tag requires a name and tagType (1=leads, 2=contacts, 3=accounts)." }, { "slug": "NUTSHELL_DELETE_ACCOUNT", "name": "Delete Account", "description": "Tool to delete an account from Nutshell. Use when you need to permanently remove an account. Deletion is permanent and cannot be undone." }, { "slug": "NUTSHELL_DELETE_CONTACTS", "name": "Delete Contact", "description": "Tool to delete a contact by ID. Use when you need to remove a contact from Nutshell. Returns success confirmation upon deletion." }, { "slug": "NUTSHELL_DELETE_LEADS", "name": "Delete Lead", "description": "Tool to delete a lead from Nutshell CRM. Use when you need to remove a lead. Note: Nutshell soft-deletes leads by default, allowing for potential recovery." }, { "slug": "NUTSHELL_DELETE_NOTES", "name": "Delete Note", "description": "Tool to delete a note from Nutshell CRM. Use when you need to permanently remove a note. Returns the deleted note information including deletion timestamp." }, { "slug": "NUTSHELL_DELETE_PRODUCTMAPS", "name": "Delete Product Map", "description": "Tool to delete a product on a lead. Use when you need to remove a product mapping from a lead. The deletion is permanent and returns the details of the deleted product map." }, { "slug": "NUTSHELL_DELETE_TASKS", "name": "Delete Task", "description": "Tool to delete a task from Nutshell CRM. Use when you need to remove a task. Note: Nutshell soft-deletes tasks by default, allowing for potential recovery." }, { "slug": "NUTSHELL_EDIT_ACCOUNT", "name": "Edit Nutshell Account", "description": "Tool to edit an existing account in Nutshell CRM. Updates specified fields of an account using the account ID and revision identifier. Supports file uploads via two-step process: specify file in request, receive upload URI in response, POST file to URI. Use when you need to modify account details like name, description, tags, contact information, or associations." }, { "slug": "NUTSHELL_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve an account from Nutshell. Use when you need to get details about a specific account. Supports retrieving multiple accounts by providing comma-separated IDs." }, { "slug": "NUTSHELL_GET_ACCOUNTS_CUSTOMFIELDS", "name": "Get Account Custom Fields", "description": "Tool to retrieve custom fields for a specific account in Nutshell. Use when you need to view custom field definitions and values associated with an account." }, { "slug": "NUTSHELL_GET_ACTIVITIES", "name": "Get Activity", "description": "Tool to retrieve a single activity by ID from Nutshell CRM. Use when you need to get details about a specific activity. The activity ID must be in the format '{integer}-activities' (e.g., '7-activities')." }, { "slug": "NUTSHELL_GET_CONTACTS", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID from Nutshell CRM. Use when you need to get detailed information about a contact." }, { "slug": "NUTSHELL_GET_CONTACTS_CUSTOMFIELDS", "name": "Get Contact Custom Fields", "description": "Tool to retrieve custom fields for a specific contact in Nutshell. Use when you need to view custom field definitions and values associated with a contact." }, { "slug": "NUTSHELL_GET_LEADS", "name": "Get Lead", "description": "Tool to retrieve a specific lead by ID from Nutshell CRM. Use when you need to get detailed information about a lead." }, { "slug": "NUTSHELL_GET_LEADS_CUSTOMFIELDS", "name": "Get Lead's Custom Fields", "description": "Tool to retrieve custom fields for a specific lead in Nutshell CRM. Use when you need to get all custom field data associated with a lead. The lead ID must be in the format '{integer}-leads' (e.g., '1003-leads')." }, { "slug": "NUTSHELL_GET_NOTES", "name": "Get Note", "description": "Tool to retrieve a single note by ID from Nutshell CRM. Use when you need to get details about a specific note. The note ID must be in the format '{integer}-notes' (e.g., '3-notes')." }, { "slug": "NUTSHELL_GET_PRODUCTCATEGORIES", "name": "Get Product Category", "description": "Tool to retrieve a single product category by ID from Nutshell CRM. Use when you need to get details about a specific product category. The product category ID must be in the format '{integer}-productCategories' (e.g., '3-productCategories')." }, { "slug": "NUTSHELL_GET_TASKS", "name": "Get Task", "description": "Tool to retrieve a single task by ID from Nutshell CRM. Use when you need to get details about a specific task. The task ID must be in the format '{integer}-tasks' (e.g., '7-tasks')." }, { "slug": "NUTSHELL_LIST_ACCOUNTS_CUSTOMFIELD_ATTRIBUTES", "name": "List Account Custom Field Attributes", "description": "Tool to retrieve all account custom field attributes from Nutshell CRM. Use when you need to discover what custom fields are available for account records and their metadata." }, { "slug": "NUTSHELL_LIST_ACCOUNTS_FIELDS", "name": "List Account Fields", "description": "Tool to retrieve all available fields for accounts in Nutshell. Use when you need to discover what fields are available for account records, their types, and capabilities." }, { "slug": "NUTSHELL_LIST_ACCOUNTS_LIST_ITEMS", "name": "List Accounts", "description": "Tool to retrieve list items for all accounts in Nutshell CRM. Use when you need to get a list of accounts with optional filtering and sorting." }, { "slug": "NUTSHELL_LIST_ACCOUNTTYPES", "name": "List Account Types", "description": "Tool to retrieve a list of all account types from Nutshell CRM. Use when you need to see available account type options or get account type IDs." }, { "slug": "NUTSHELL_LIST_ACTIVITIES", "name": "List Activities", "description": "Tool to retrieve a list of activities from Nutshell CRM. Use when you need to get multiple activities with optional filtering by participants, status, date range, or other criteria." }, { "slug": "NUTSHELL_LIST_ACTIVITYTYPES", "name": "List Activity Types", "description": "Tool to retrieve a list of all activity types from Nutshell CRM. Use when you need to see available activity type options or get activity type IDs." }, { "slug": "NUTSHELL_LIST_COMPETITORMAPS", "name": "List Competitor Maps", "description": "Tool to get a list of lead-competitor relationships from Nutshell CRM. Use when you need to retrieve competitor mapping information for leads." }, { "slug": "NUTSHELL_LIST_COMPETITORS", "name": "List Competitors", "description": "Tool to get a list of competitors from Nutshell CRM. Use when you need to retrieve all competitors or search for specific competitors by name." }, { "slug": "NUTSHELL_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to get a list of contacts from Nutshell CRM. Use when you need to retrieve multiple contacts with optional filtering, searching, sorting, and pagination." }, { "slug": "NUTSHELL_LIST_CONTACTS_CUSTOMFIELD_ATTRIBUTES", "name": "List Contact Custom Field Attributes", "description": "Tool to retrieve all available custom field attributes for contacts in Nutshell. Use when you need to discover which custom fields can be used with contacts." }, { "slug": "NUTSHELL_LIST_CONTACTS_FIELDS", "name": "List Contact Fields", "description": "Tool to retrieve all available fields for contacts in Nutshell. Use when you need to discover what fields are available for contact records, their types, and capabilities." }, { "slug": "NUTSHELL_LIST_CONTACTS_LIST_ITEMS", "name": "List Contacts", "description": "Tool to retrieve list items for all contacts in Nutshell CRM. Use when you need to get a list of contacts with optional filtering and sorting." }, { "slug": "NUTSHELL_LIST_DELETED_EVENTS", "name": "List Deleted Events", "description": "Tool to get a feed of deletion events from Nutshell CRM. Use when you need to track which entities have been deleted and when." }, { "slug": "NUTSHELL_LIST_EDITIONS", "name": "List Editions", "description": "Tool to retrieve a list of all editions from Nutshell CRM. Use when you need to see available edition options or get edition IDs." }, { "slug": "NUTSHELL_LIST_EVENTS", "name": "List Events", "description": "Tool to get a list of events from Nutshell CRM. Use when you need to retrieve activity feed events with optional filtering by time range, entity, event types, or creator." }, { "slug": "NUTSHELL_LIST_FILTERS", "name": "List Filters", "description": "Tool to get saved filters from Nutshell CRM. Use when you need to retrieve saved filters for reports or entity lists (leads, contacts, accounts)." }, { "slug": "NUTSHELL_LIST_FORMS", "name": "List Forms", "description": "Tool to get all forms from Nutshell. Use when you need to retrieve the complete list of available forms in the Nutshell instance." }, { "slug": "NUTSHELL_LIST_INDUSTRIES", "name": "List Industries", "description": "Tool to retrieve a list of all industries from Nutshell CRM. Use when you need to see available industry options or get industry IDs." }, { "slug": "NUTSHELL_LIST_INVOICES", "name": "List Invoices", "description": "Tool to get a list of invoices from Nutshell CRM. Use when you need to retrieve invoices with optional filtering by lead, date range, and pagination." }, { "slug": "NUTSHELL_LIST_LEADS", "name": "List Leads", "description": "Tool to get a list of leads from Nutshell CRM. Use when you need to retrieve multiple leads with optional filtering, searching, sorting, and pagination." }, { "slug": "NUTSHELL_LIST_LEADS_CUSTOMFIELD_ATTRIBUTES", "name": "List Lead Custom Field Attributes", "description": "Tool to retrieve all applicable custom field attributes for leads in Nutshell CRM. Use when you need to see available custom field definitions, types, and configuration for leads." }, { "slug": "NUTSHELL_LIST_LEADS_FIELDS", "name": "List Lead Fields", "description": "Tool to retrieve all available fields for leads in Nutshell. Use when you need to discover what fields are available for lead records, their types, and capabilities." }, { "slug": "NUTSHELL_LIST_LEADS_LIST_ITEMS", "name": "List Leads", "description": "Tool to retrieve list items for all leads in Nutshell CRM. Use when you need to get a list of leads with optional filtering and sorting." }, { "slug": "NUTSHELL_LIST_LEADS_REPORT", "name": "Get Leads Report", "description": "Tool to get reports for leads from Nutshell CRM. Use when you need to generate analytics or reporting data about leads, such as sales reports, losses, new leads, forecasts, or attribution reports with optional segmentation and time bucketing." }, { "slug": "NUTSHELL_LIST_LEADS_STAGES", "name": "List Lead Stages", "description": "Tool to retrieve all stages associated with a specific lead in Nutshell CRM. Use when you need to get the stage progression or workflow stages for a lead." }, { "slug": "NUTSHELL_LIST_MARKETS", "name": "List Markets", "description": "Tool to retrieve a list of all markets from Nutshell CRM. Use when you need to see available markets or get market IDs and currency information." }, { "slug": "NUTSHELL_LIST_NOTES", "name": "List Notes", "description": "Tool to get a list of notes from Nutshell CRM. Use when you need to retrieve multiple notes with optional pagination." }, { "slug": "NUTSHELL_LIST_OUTCOMES", "name": "List Lead Outcomes", "description": "Tool to retrieve a list of lead outcomes from Nutshell CRM. Use when you need to see available outcome options for leads or get outcome IDs." }, { "slug": "NUTSHELL_LIST_PRODUCTCATEGORIES", "name": "List Product Categories", "description": "Tool to get a list of all product categories from Nutshell CRM. Use when you need to retrieve all available product categories." }, { "slug": "NUTSHELL_LIST_PRODUCTMAPS", "name": "List Product Maps", "description": "Tool to get a list of lead products from Nutshell CRM. Use when you need to retrieve product mapping information for leads." }, { "slug": "NUTSHELL_LIST_PRODUCTS", "name": "List Products", "description": "Tool to get a list of products from Nutshell CRM. Use when you need to retrieve multiple products with optional filtering by name/SKU and sorting." }, { "slug": "NUTSHELL_LIST_QUOTES", "name": "List Quotes", "description": "Tool to get a list of quotes from Nutshell CRM. Use when you need to retrieve quotes with optional filtering by lead, date range, and pagination." }, { "slug": "NUTSHELL_LIST_SOURCES", "name": "List Sources", "description": "Tool to retrieve a list of sources from Nutshell CRM. Use when you need to get all possible sources for leads in your Nutshell instance, with optional filtering by name." }, { "slug": "NUTSHELL_LIST_STAGES", "name": "List Stages", "description": "Tool to retrieve a list of all stages from Nutshell CRM. Use when you need to see available pipeline stages or get stage IDs for lead management." }, { "slug": "NUTSHELL_LIST_STAGESETS", "name": "List Pipelines", "description": "Tool to retrieve a list of all pipelines (stagesets) from Nutshell CRM. Use when you need to see available pipelines or get pipeline IDs for lead management." }, { "slug": "NUTSHELL_LIST_TAGS", "name": "List Tags", "description": "Tool to retrieve a list of tags from Nutshell CRM. Use when you need to get tags with optional filtering by name or type (leads, contacts, accounts)." }, { "slug": "NUTSHELL_LIST_TERRITORIES", "name": "List Territories", "description": "Tool to retrieve a list of all territories from Nutshell CRM. Use when you need to see available territories or get territory IDs for assignment or filtering purposes." }, { "slug": "NUTSHELL_LIST_USERS", "name": "List Users", "description": "Tool to get a list of all users from Nutshell CRM. Use when you need to retrieve all users in the account." }, { "slug": "NUTSHELL_REOPEN_LEADS", "name": "Reopen Lead", "description": "Tool to reopen a lead in Nutshell CRM. Use when you need to reopen a previously closed or won lead." }, { "slug": "NUTSHELL_SET_PIPELINE_LEADS", "name": "Set Lead Pipeline", "description": "Tool to set the pipeline (stageset) for a lead in Nutshell CRM. Use when you need to assign a lead to a specific pipeline. Requires the lead ID and stageset ID to update the lead's pipeline assignment." }, { "slug": "NUTSHELL_UNDELETE_ACCOUNTS", "name": "Undelete Account", "description": "Tool to undelete a previously deleted account in Nutshell. Use when you need to restore a deleted account. Returns the restored account object with deletedTime set to null." }, { "slug": "NUTSHELL_UNDELETE_CONTACTS", "name": "Undelete Contact", "description": "Tool to undelete a previously deleted contact in Nutshell CRM. Use when you need to restore a contact that was deleted." }, { "slug": "NUTSHELL_UNDELETE_LEADS", "name": "Undelete Lead", "description": "Tool to undelete a previously deleted lead from Nutshell CRM. Use when you need to restore a soft-deleted lead." }, { "slug": "NUTSHELL_UNDELETE_NOTES", "name": "Undelete Note", "description": "Tool to undelete a previously deleted note in Nutshell CRM. Use when you need to restore a note that was deleted. The note ID must be in the format '{integer}-notes' (e.g., '75-notes')." }, { "slug": "NUTSHELL_UNDELETE_SOURCES", "name": "Undelete Source", "description": "Tool to undelete a source by ID. Use when you need to restore a previously deleted source in Nutshell." }, { "slug": "NUTSHELL_UNDELETE_TAGS", "name": "Undelete Tag", "description": "Tool to undelete a previously deleted tag in Nutshell. Use when you need to restore a deleted tag." }, { "slug": "NUTSHELL_UPDATE_ACCOUNTS", "name": "Update Account with JSON Patch", "description": "Tool to update an account in Nutshell using JSON Patch operations. Use when you need to modify specific account fields like description, name, or relationships. Supports RFC 6902 JSON Patch format with operations: add, remove, replace, move, copy." }, { "slug": "NUTSHELL_UPDATE_CONTACTS", "name": "Update Nutshell Contact", "description": "Tool to update a contact using JSON Patch operations. Use when you need to modify specific fields of an existing contact such as name, description, or links to other entities. Supports updating custom fields and standard fields." }, { "slug": "NUTSHELL_UPDATE_LEADS", "name": "Update Lead", "description": "Tool to update a lead in Nutshell CRM using JSON Patch operations. Use when you need to modify specific fields of a lead without replacing the entire resource. Supports standard JSON Patch operations (add, remove, replace, move, copy) and can update custom fields." }, { "slug": "NUTSHELL_UPDATE_STATUS_LEADS", "name": "Update Lead Status", "description": "Tool to update the status of a lead in Nutshell CRM. Use when you need to change the outcome status of a lead (e.g., mark as won, lost, or other custom outcomes). Optionally associate competitor maps and product maps when updating the status." }, { "slug": "NUTSHELL_UPDATE_TASKS", "name": "Update Task with JSON Patch", "description": "Tool to update a task in Nutshell using JSON Patch operations. Use when you need to modify task fields like title, description, or due time. Supports RFC 6902 JSON Patch format with operations: add, remove, replace, move, copy." }, { "slug": "NUTSHELL_WATCH_LEADS", "name": "Watch Lead", "description": "Tool to watch a lead in Nutshell CRM. Use when you need to start watching a lead for updates and notifications." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "nutshell_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username (Email or Domain)", "type": "string", "description": "Your Nutshell email address (e.g., user@example.com) or company domain (e.g., example.com)", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your Nutshell API key. Create one at: Settings > API keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ocr_web_service", "name": "OCR Web Service", "logo": "https://logos.composio.dev/api/ocr_web_service", "description": "OCR Web Service provides SOAP and REST APIs for integrating Optical Character Recognition (OCR) technology into software products, mobile devices, or other web services.", "category": "ai document extraction", "authSchemes": [ "BASIC" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OCR_WEB_SERVICE_GET_ACCOUNT_CREDENTIALS", "name": "Get Account Credentials", "description": "Tool to extract OCRWebService credentials (user_name, license_code) from connection metadata. Always call this before invoking OCR_WEB_SERVICE_RECOGNIZE or OCR_WEB_SERVICE_GET_ACCOUNT_INFORMATION rather than reusing cached values, as credentials may become stale. Use OCR_WEB_SERVICE_GET_ACCOUNT_INFORMATION to verify account status and quota before submitting large jobs." }, { "slug": "OCR_WEB_SERVICE_GET_ACCOUNT_INFORMATION", "name": "Get Account Information", "description": "Retrieve OCRWebService account information including remaining pages, subscription plan, and expiration date. Use this tool to check your account status before large OCR jobs — exhausted page quotas will cause OCR_WEB_SERVICE_RECOGNIZE to fail mid-run. Returns details about your subscription including pages remaining and plan expiration. If credentials are invalid or stale, retrieve fresh user_name and license_code via OCR_WEB_SERVICE_GET_ACCOUNT_CREDENTIALS before retrying. Requires valid OCRWebService credentials (username and license code)." }, { "slug": "OCR_WEB_SERVICE_LOG", "name": "OCR Web Service Log", "description": "Tool to retrieve OCR processing logs for a date range on your account. Invalid credentials or bad date ranges return empty data rather than an error, so an empty result may indicate incorrect inputs rather than no logs." }, { "slug": "OCR_WEB_SERVICE_RECOGNIZE", "name": "OCRWebService Recognize", "description": "Tool to call SOAP Recognize operation. Use when performing OCR on an image to retrieve text, output document, word coordinates, and errors. Consumes page quota per call; returns HTTP 429 when limits exceeded. Check quota via OCR_WEB_SERVICE_GET_ACCOUNT_INFORMATION before large jobs; batch large PDFs in ~25–50 page chunks." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "ocr_web_service_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ocrspace", "name": "OCR.space", "logo": "https://logos.composio.dev/api/ocrspace", "description": "OCR.space provides a free and paid OCR API for extracting text from images and PDFs, returning results in JSON format.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OCRSPACE_GET_CONVERSIONS", "name": "Get Conversion Statistics", "description": "Retrieve OCR API conversion statistics and usage data (PRO accounts only). Returns the number of conversions for Engine1, Engine2, and total conversions. Data is updated once daily and shows conversions from start of month to end of yesterday. Free API keys will return 0 conversions." }, { "slug": "OCRSPACE_OCR_PARSE_IMAGE_POST", "name": "Extract Text from Image/PDF (OCR)", "description": "Extract text from images and PDF documents using OCR (Optical Character Recognition). Supports 27 languages, table recognition, orientation detection, and word-level coordinate extraction. Provide exactly one of `file`, `url`, or `base64Image`; providing multiple or none triggers E301/OCRExitCode 99. Input can be provided as file upload, public URL, or base64-encoded data URI. Response is nested JSON; extract text from `ParsedResults[*].ParsedText`. Returns extracted text with optional overlay coordinates and searchable PDF generation. For poor-quality scans, enable both `detectOrientation` and `scale` and ensure `language` matches the document." }, { "slug": "OCRSPACE_PARSE_IMAGE_URL", "name": "Extract Text from Image URL (GET)", "description": "Extract text from images via URL using simplified GET endpoint. Only supports URL-based submissions - no file uploads or base64 encoding. Faster and simpler than POST endpoint for basic use cases." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ocrspace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "API Subdomain", "type": "string", "description": "Choose your OCR.space API subdomain. Use \"api\" if you are on the free tier (default). PRO customers: use \"apipro1\" to call Datacenter #1 (apipro1.ocr.space) or \"apipro2\" to call Datacenter #2 (apipro2.ocr.space). Both PRO endpoints accept the same API key — OCR.space recommends using the one fastest from your location as primary and switching to the other if you experience issues.", "required": true, "default": "api" }, { "name": "generic_api_key", "displayName": "OCR.space API Key", "type": "string", "description": "Your personal API key for accessing the OCR.space API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "octopus_deploy", "name": "Octopus Deploy", "logo": "https://logos.composio.dev/api/octopus_deploy", "description": "Reliable, repeatable, traceable deployments across clouds and on-prem", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "octopus_deploy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your Octopus Deploy instance domain (e.g., if your URL is https://1234.octopus.app, enter 1234)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Octopus Deploy account, go to Profile > My API Keys to generate an API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "odoo", "name": "Odoo", "logo": "https://logos.composio.dev/api/odoo", "description": "Open-source ERP and CRM platform for business management, including sales, accounting, inventory, and project management", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ODOO_CALL_ODOO_JSONRPC", "name": "Odoo JSON-RPC Call", "description": "JSON-RPC endpoint for Odoo external API calls. Provides the same functionality as XML-RPC but with JSON encoding. DEPRECATED in v19.0 and scheduled for removal in v20.0 (Fall 2026). Use JSON-2 API at POST /json/2/{model}/{method} instead." }, { "slug": "ODOO_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact (customer, supplier, or generic partner) in Odoo's res.partner model. Use this action when you need to add a new person or company to the Odoo database. Set customer_rank > 0 to mark as a customer, supplier_rank > 0 to mark as a supplier, or leave both unset for a generic contact." }, { "slug": "ODOO_GET_APPLICANT_RESULT", "name": "Get Applicant Parsing Result", "description": "Tool to retrieve parsing results for a previously submitted resume/applicant document. Use when you need to check the status and get extracted fields (name, email, phone, mobile) from a resume that was previously submitted for parsing." }, { "slug": "ODOO_GET_BANK_STATEMENT_RESULT", "name": "Get Bank Statement Result", "description": "Tool to retrieve parsing results for a previously submitted bank statement. Returns extracted fields including balance_start, balance_end, date, and bank_statement_lines. Use when you need to check the status and get extracted data from a bank statement document using Odoo's Extract API." }, { "slug": "ODOO_GET_EXPENSE_RESULT", "name": "Get Expense Extraction Result", "description": "Retrieve parsing results for a previously submitted expense document. Returns extracted fields including description, country, date, total, and currency. Use this after submitting an expense document to get the OCR/extraction results." }, { "slug": "ODOO_GET_INVOICE_RESULT", "name": "Get Invoice Parsing Result", "description": "Tool to retrieve parsing results for a previously submitted invoice from Odoo Extract API. Use when you need to check the status and get extracted data from an invoice. Poll this endpoint until the status field is 'success' - processing may take time depending on document complexity." }, { "slug": "ODOO_LIST_DATABASES", "name": "List Databases", "description": "Tool to list all available Odoo databases on the server. Use when you need to see which databases are available on the Odoo instance." }, { "slug": "ODOO_PARSE_APPLICANT", "name": "Parse Applicant Resume", "description": "Tool to submit a resume/CV document for OCR parsing and data extraction via Odoo Extract API. Extracts name, email, phone, and mobile from applicant resumes. Returns a document_token to poll for results. Cost: 1 IAP credit per successful parse." }, { "slug": "ODOO_PARSE_BANK_STATEMENT", "name": "Parse Bank Statement Document", "description": "Tool to submit a bank statement document for OCR parsing and data extraction via Odoo Extract API. Extracts balance_start, balance_end, date, and bank_statement_lines. Returns a document_token to poll for results. Cost: 1 IAP credit per successful parse." }, { "slug": "ODOO_PARSE_EXPENSE", "name": "Parse Expense Document", "description": "Tool to submit an expense document for OCR parsing and data extraction. Extracts description, country, date, total, and currency from expense receipts. Returns a document_token to poll for results. Use when you need to process expense documents using Odoo's Extract API." }, { "slug": "ODOO_PARSE_INVOICE", "name": "Parse Invoice Document", "description": "Tool to submit an invoice document for OCR parsing and data extraction via Odoo Extract API. Uses AI-based algorithms to extract fields like total, due date, invoice lines, VAT numbers, IBAN, supplier, client, and currency. Returns a document_token to poll for results. Cost: 1 IAP credit per successful parse." }, { "slug": "ODOO_UPDATE_RECORD", "name": "Update Odoo Record", "description": "Generic tool to update records across any Odoo model via the JSON-2 API write endpoint. Updates one or more records with the specified field values. Supports all Odoo field types including relational fields with command tuples. Use this action when you need to modify existing records in any Odoo model (contacts, leads, orders, invoices, products, etc.)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "odoo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your Odoo instance URL (e.g., https://mycompany.odoo.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate from User Profile → Preferences → Account Security → New API Key", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Database Name", "type": "string", "description": "Your Odoo database name (usually matches subdomain for SaaS instances)", "required": false, "default": null } ] } } } ] }, { "slug": "oksign", "name": "Oksign", "logo": "https://logos.composio.dev/api/oksign", "description": "Sign online contracts, purchase orders, forms, you name it. Simple and legal.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OKSIGN_BRIEFCASE_REMOVE", "name": "Remove Briefcase", "description": "Tool to remove a previously created briefcase from OKSign platform. Use when you need to delete a briefcase that is no longer needed. The briefcase is identified by the token received when it was created." }, { "slug": "OKSIGN_BRIEFCASE_RETRIEVE", "name": "Retrieve Briefcase Information", "description": "Tool to retrieve a previously uploaded briefcase tokeninfo for consultation. Use when you need to examine bundled document properties and signer requirements without re-creating the briefcase." }, { "slug": "OKSIGN_CONTACTS_REMOVE", "name": "Remove Contacts", "description": "Tool to remove specified contacts from the account's contact list. Use when you need to delete one or more contacts by providing their name and email." }, { "slug": "OKSIGN_CONTACTS_RETRIEVE", "name": "Retrieve Contacts", "description": "Tool to retrieve the list of contacts stored in the account. Use when you need to access all contacts with their details including name, email, mobile number, and role." }, { "slug": "OKSIGN_CONTACTS_UPLOAD", "name": "Upload Contacts", "description": "Tool to insert or update contact information in the account's contact list. Use when you need to add new contacts or update existing ones with details like name, email, phone, mobile, address, company, or identifier." }, { "slug": "OKSIGN_CREDITS_RETRIEVE", "name": "Retrieve Account Credits", "description": "Tool to retrieve account credit balance and storage information. Use when you need to check available credits or storage capacity." }, { "slug": "OKSIGN_DOCUMENT_EXISTS", "name": "Check Document Exists", "description": "Tool to check if a signed or unsigned document still exists on the OKSign platform. Use when you need to verify document availability before performing operations." }, { "slug": "OKSIGN_DOCUMENT_REMOVE", "name": "Remove Document", "description": "Tool to remove a signed or unsigned document from the OKSign platform. Use when you need to delete a document and its signed copies from storage. Note: If document is removed immediately after signing while platform processes notifications, service may return FAILED status with retry message." }, { "slug": "OKSIGN_DOCUMENT_UPLOAD", "name": "Upload Document", "description": "Tool to upload a PDF or Word document to OKSign platform for completion and/or signing. Use when you need to add a new document that requires signatures. Maximum file size is 10 MB. Supported formats: PDF, DOC, DOCX." }, { "slug": "OKSIGN_EDITOREXPRESS_CREATE", "name": "Create Editor Express Session", "description": "Tool to invoke the OKSign Editor Express for modifying documents and form descriptors. Use when you need to open documents in an interactive editor where users can add signature fields, form fields, and configure signing workflows. The editor URL returned can be embedded or redirected to within your application." }, { "slug": "OKSIGN_FORMDESC_UPLOAD", "name": "Upload Form Descriptor", "description": "Tool to upload form descriptor defining signature fields and other field types to a document. Use when you need to add form fields, signature areas, and configure signing workflows for a document." }, { "slug": "OKSIGN_GET_ACTIVE_DOCUMENTS", "name": "Get Active Documents", "description": "Tool to retrieve all active document IDs and properties from OKsign account. Use when you need to list documents visible in the Active Documents tab. Note: Rate limited to 1 request per 3 minutes." }, { "slug": "OKSIGN_LINKED_LIST_RETRIEVE", "name": "Retrieve Linked Document List", "description": "Tool to retrieve the list of linked signed or source document IDs related to a specific document. Use when you need to find linked documents (either the signed version of a source document, or the source of a signed document)." }, { "slug": "OKSIGN_NOTIFICATIONS_UPLOAD", "name": "Upload Notifications", "description": "Tool to upload notifications defining email(s) and/or SMS(es) to be sent to signer(s) with signing links. Use when you need to send notification emails or SMS messages to document signers." }, { "slug": "OKSIGN_ORG_TOKEN_INFO_UPDATE", "name": "Update Organization Token Info", "description": "Tool to update organizational token information and settings for the account. Use when you need to configure or modify callback URL, webhook URL, or return URL for the organization's token." }, { "slug": "OKSIGN_SIGNEXPRESS_REMOVE", "name": "Remove SignExpress Token", "description": "Tool to remove a previously uploaded SignExpress tokeninfo JSONObject from the OKSign platform. Use when you need to clean up or invalidate a SignExpress token that was created for sign button integration." }, { "slug": "OKSIGN_USERS_RETRIEVE", "name": "Retrieve Users", "description": "Tool to retrieve the list of users associated with the OkSign account. Use when you need to get all users in an account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "oksign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your OKSign API authorization key in the format: account_number;authentication_token;organizational_token. Find this in REST API > API Console in your OKSign account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ollama", "name": "Ollama", "logo": "https://logos.composio.dev/api/ollama", "description": "Run large language models locally or in the cloud with Ollama", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OLLAMA_CHAT", "name": "Chat with Ollama model", "description": "Tool to send a chat message with conversation history to Ollama. Use when you need to have a multi-turn conversation with an LLM model." }, { "slug": "OLLAMA_GENERATE", "name": "Generate Text with Ollama", "description": "Tool to generate text responses from Ollama models with optional raw mode. Use raw=true to bypass prompt templating when you need full control over the prompt for debugging or custom processing. Note that raw mode will not return a context." }, { "slug": "OLLAMA_LIST_MODELS", "name": "List Models", "description": "Tool to list all available Ollama models and their details. Use when you need to fetch installed models with metadata including name, size, last modified timestamp, digest, and format information." }, { "slug": "OLLAMA_OPEN_AI_CHAT_COMPLETIONS", "name": "OpenAI-Compatible Chat Completion", "description": "Tool to create OpenAI-compatible chat completions using Ollama models. Use when you need conversational AI responses with OpenAI API format compatibility." }, { "slug": "OLLAMA_OPEN_AI_COMPLETIONS", "name": "OpenAI-Compatible Text Completion", "description": "Tool to create OpenAI-compatible text completions using Ollama models. Use when you need text generation with OpenAI API format compatibility beyond chat-based interactions." }, { "slug": "OLLAMA_OPEN_AI_LIST_MODELS", "name": "List Models (OpenAI Compatible)", "description": "Tool to list available models using OpenAI-compatible API format. Use when you need to retrieve locally available Ollama models with metadata following OpenAI's model list format." }, { "slug": "OLLAMA_SHOW", "name": "Show Model Information", "description": "Tool to show comprehensive information about an Ollama model. Use when you need to retrieve model details, parameters, template, license, or system prompt." }, { "slug": "OLLAMA_VERSION", "name": "Get Ollama Version", "description": "Tool to get the version of Ollama running locally. Use to check which version of Ollama is currently installed." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ollama_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Ollama Instance URL", "type": "string", "description": "The base URL of your Ollama instance (e.g., http://localhost:11434 for local or https://ollama.com/api for cloud)", "required": true, "default": null } ], "optional": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Optional API key for Ollama Cloud (get from https://ollama.com/settings/keys) or for reverse proxy authentication on self-hosted instances", "required": false, "default": null } ] } } } ] }, { "slug": "omise", "name": "Omise", "logo": "https://logos.composio.dev/api/omise", "description": "OPN (formerly Omise) provides payment processing services across Southeast Asia, supporting multiple payment methods including credit cards, mobile banking, and digital wallets.", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "omise_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Your OPN/Omise secret key (starts with skey_test_ or skey_live_). Find it in your OPN dashboard under API > Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "omnisend", "name": "Omnisend", "logo": "https://logos.composio.dev/api/omnisend", "description": "Omnisend is a marketing automation platform for ecommerce businesses, focusing on email and SMS marketing.", "category": "marketing automation", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 43, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OMNISEND_ADD_CART_PRODUCT", "name": "Add Cart Product", "description": "Tool to add a product to a cart in Omnisend (v3 API). Use when updating cart contents or tracking abandoned carts." }, { "slug": "OMNISEND_CREATE_BATCH", "name": "Create Batch", "description": "Tool to create a new batch operation for multiple items. Use when you need to process many records asynchronously in one call, e.g., bulk contacts, products, orders, or events. Use after preparing the items list to avoid rate limits." }, { "slug": "OMNISEND_CREATE_CART", "name": "Create Cart", "description": "Tool to create a new shopping cart in Omnisend. Use when tracking customer cart activity for abandoned cart campaigns." }, { "slug": "OMNISEND_CREATE_CATEGORY", "name": "Create Category", "description": "Tool to create a new category in Omnisend. Use when organizing products into categories." }, { "slug": "OMNISEND_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order in Omnisend v3 API. Use when recording a customer purchase or order transaction." }, { "slug": "OMNISEND_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Tool to create or update a contact in Omnisend. Use after collecting subscriber details." }, { "slug": "OMNISEND_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new product in the Omnisend product catalog. Use when adding products for email campaigns or syncing inventory." }, { "slug": "OMNISEND_CREATE_PRODUCT_CATEGORY", "name": "Create Product Category", "description": "Tool to create a new product category in the Omnisend catalog. Use when organizing products into categories." }, { "slug": "OMNISEND_DELETE_CART", "name": "Delete Cart", "description": "Tool to delete a cart from Omnisend by its ID (v3 API). Use when you need to remove an abandoned or expired cart from the system." }, { "slug": "OMNISEND_DELETE_CATEGORY", "name": "Delete Category", "description": "Tool to remove a category from Omnisend by its ID. Use when you need to delete a category and ensure it is no longer available in your catalog." }, { "slug": "OMNISEND_DELETE_ORDER", "name": "Delete Order", "description": "Tool to delete an order from Omnisend by its ID. Use when you need to remove an order from the system." }, { "slug": "OMNISEND_DELETE_PRODUCT", "name": "Delete Product", "description": "Tool to remove a product from Omnisend by its ID. Use when you need to delete a product and ensure it is no longer available in your catalog." }, { "slug": "OMNISEND_DELETE_PRODUCT_CATEGORY", "name": "Delete Product Category", "description": "Tool to remove a product category from Omnisend by its ID. Use when you need to delete a product category from your catalog." }, { "slug": "OMNISEND_GET_BATCHES", "name": "Get Batches", "description": "Tool to retrieve a list of batch operations. Use after initiating a batch job to monitor its progress and results." }, { "slug": "OMNISEND_GET_BATCH_INFORMATION", "name": "Get Batch Information", "description": "Tool to retrieve information about a specific batch by ID. Use after submitting a batch when you need a detailed status and counts." }, { "slug": "OMNISEND_GET_BATCH_ITEM", "name": "Get Batch Item", "description": "Tool to retrieve a specific item within a batch by batchID and itemID. Use when you need to inspect the result of a single batch operation." }, { "slug": "OMNISEND_GET_BATCH_ITEMS", "name": "Get Batch Items", "description": "Tool to retrieve processed items of a specific batch by ID. Use when you need to inspect individual results of a batch operation after fetching batch details." }, { "slug": "OMNISEND_GET_BRAND", "name": "Get Brand", "description": "Tool to retrieve information about the current authenticated brand. Use when you need brand details like currency, platform, or website." }, { "slug": "OMNISEND_GET_CART", "name": "Get Cart", "description": "Tool to retrieve a specific cart by ID from Omnisend v3 API. Use when you need detailed cart information including products and customer contact details." }, { "slug": "OMNISEND_GET_CATEGORY", "name": "Get Category", "description": "Tool to retrieve details of a specific category by ID. Use when you need to fetch information about a category." }, { "slug": "OMNISEND_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a single contact by ID. Use when you already have a contactId and need the full profile." }, { "slug": "OMNISEND_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve details of a specific order by ID. Use when you need order information including products, addresses, and payment details." }, { "slug": "OMNISEND_GET_PRODUCT", "name": "Get Product", "description": "Tool to retrieve details of a specific product by ID from Omnisend. Use when you need full product information including variants, pricing, and stock status." }, { "slug": "OMNISEND_GET_PRODUCT_CATEGORY", "name": "Get Product Category", "description": "Tool to retrieve a specific product category by ID. Use when you need details about a particular product category." }, { "slug": "OMNISEND_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve a paginated list of campaigns with optional filtering by status and type. Use when you need to view or analyze campaign performance across multiple campaigns." }, { "slug": "OMNISEND_LIST_CARTS", "name": "List Carts", "description": "Tool to retrieve a paginated list of carts with optional filtering. Use when you need to fetch carts by date range, contact, or segment." }, { "slug": "OMNISEND_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to retrieve a paginated list of product categories. Use when you need category IDs for product management or catalog organization." }, { "slug": "OMNISEND_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a paginated list of contacts with optional filtering. Use when you need to fetch contacts in batches and handle cursor pagination." }, { "slug": "OMNISEND_LIST_EVENTS", "name": "List Events", "description": "Tool to retrieve all custom events created in Omnisend app. Use when you need to view available event types for automation workflows or event tracking." }, { "slug": "OMNISEND_LIST_PRODUCT_CATEGORIES", "name": "List Product Categories", "description": "Tool to retrieve a paginated list of product categories from the Omnisend catalog. Use when fetching category data for product organization." }, { "slug": "OMNISEND_LIST_PRODUCTS", "name": "List Products", "description": "Tool to retrieve a paginated list of products. Use when syncing product catalog before campaign creation." }, { "slug": "OMNISEND_REMOVE_CART_PRODUCT", "name": "Remove Cart Product", "description": "Tool to remove a product from a cart in Omnisend. Use when you need to delete a specific product from a cart." }, { "slug": "OMNISEND_REPLACE_CART", "name": "Replace Cart", "description": "Tool to replace an existing cart in Omnisend using the v3 API. Use when you need to completely replace all cart data including products, pricing, and recovery URL." }, { "slug": "OMNISEND_REPLACE_CART_PRODUCT", "name": "Replace Cart Product", "description": "Tool to replace a product in a cart using Omnisend v3 API. Use when you need to update all details of a specific product in a cart." }, { "slug": "OMNISEND_REPLACE_CATEGORY", "name": "Replace Category", "description": "Tool to replace a category's title by ID. Use when you need to update an entire category resource." }, { "slug": "OMNISEND_REPLACE_ORDER", "name": "Replace Order", "description": "Tool to completely replace an existing order in Omnisend. Use when you need to update all order details at once, replacing the entire order record." }, { "slug": "OMNISEND_REPLACE_PRODUCT", "name": "Replace Product", "description": "Tool to replace an existing product in the Omnisend catalog. Use when you need to completely replace all product data with new information." }, { "slug": "OMNISEND_SEND_EVENT", "name": "Send Event", "description": "Tool to send a customer event to Omnisend. Events can trigger automations and track customer behavior. Use when you need to record customer interactions such as product views, cart actions, or custom events." }, { "slug": "OMNISEND_UPDATE_CART", "name": "Update Cart", "description": "Tool to partially update a cart in Omnisend (v3 API). Use when you need to modify cart details such as currency, total amount, recovery URL, or products." }, { "slug": "OMNISEND_UPDATE_CART_PRODUCT", "name": "Update Cart Product", "description": "Tool to update a product in a cart (v3 API). Use when you need to modify product details such as quantity, price, or other attributes for an existing cart item." }, { "slug": "OMNISEND_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update fields of an existing contact by ID. Use after retrieving contact ID. PATCH https://api.omnisend.com/v3/contacts/{contactId} Example: UpdateContact(contactId=\"..., body={firstName: 'John'})" }, { "slug": "OMNISEND_UPDATE_ORDER_STATUS", "name": "Update Order Status", "description": "Tool to partially update an order status in Omnisend (v3 API). Use when you need to update shipping details, payment status, or fulfillment status of an existing order." }, { "slug": "OMNISEND_UPDATE_PRODUCT_CATEGORY", "name": "Update Product Category", "description": "Tool to update an existing product category title in Omnisend. Use when you need to modify a category's name." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "omnisend_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "brands.read,brands.write,contacts.read,contacts.write,events.read,events.write,products.read,products.write,campaigns.read,automations.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "omnisend_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Omnisend API Key", "type": "string", "description": "The API key generated from your Omnisend account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "onbee_app", "name": "Onbee App", "logo": "https://logos.composio.dev/api/onbee_app", "description": "Onbee.app: Onboarding & Offboarding; digital employee card, HRIS", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onbee_app_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Workspace Name", "type": "string", "description": "Your Workspace Name is 1234 if your Onbee.app workspace URL is https://1234.onbee.app/", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Tokens can be created after logging into Onbee.app: Settings > API tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "onbeeapp", "name": "Onbeeapp", "logo": "https://logos.composio.dev/api/onbeeapp", "description": "Onbee is an employee onboarding and management platform that helps streamline HR processes", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onbeeapp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Workspace Name", "type": "string", "description": "Your Onbee workspace name (e.g., if your URL is company.onbee.app, enter \"company\")", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "API token created in Onbee.app UI: Settings > API tokens. Choose RO (Read only) or RW (Read write) token type.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Developer Email", "type": "string", "description": "Optional email - you will be notified of any changes to API calls if provided", "required": false, "default": null } ] } } } ] }, { "slug": "onedesk", "name": "Onedesk", "logo": "https://logos.composio.dev/api/onedesk", "description": "OneDesk is an all-in-one platform combining help desk and project management functionalities, enabling teams to manage customer support and project tasks seamlessly.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ONEDESK_CREATE_WORKLOG", "name": "Create Worklog Entry", "description": "Create a worklog entry to track time spent on a work item (task, ticket, project, etc.). Records the start and finish time, work hours, completion percentage, and billability. Use this after obtaining a valid item_id from actions like GET_TASK_DETAILS." }, { "slug": "ONEDESK_DELETE_ATTACHMENT", "name": "Delete Attachment", "description": "Delete a specific attachment from OneDesk by its ID. To use this tool, provide the attachment_id. Note that the OneDesk Public API has limited attachment management capabilities. Attachments are typically associated with items (tickets/tasks) and can be viewed via GET_ATTACHMENTS when fetching item details. Returns deleted=True if the attachment was successfully deleted (200/202/204). Returns deleted=False if the attachment was not found (404)." }, { "slug": "ONEDESK_DELETE_COMMENT", "name": "Delete Comment", "description": "Deletes a comment from OneDesk by its ID. Use this tool to permanently remove a comment when it's no longer needed. Note: OneDesk's Public API has limited DELETE support for comments. This action tries multiple possible endpoints to maximize compatibility. Comments may be referred to as \"conversations\" in the API. Example: {'comment_id': 12345} Returns: Deletion status with context about success/failure (e.g., comment not found, permission denied)" }, { "slug": "ONEDESK_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Deletes a customer from OneDesk using the DELETE /customers/{id} endpoint. This action permanently removes the customer record from the OneDesk account. Returns: - success=true: Customer was successfully deleted (HTTP 200/202/204) - success=false: Customer not found or already deleted (HTTP 404) Example usage: {'customer_id': '12345'}" }, { "slug": "ONEDESK_DELETE_MESSAGE", "name": "Delete Message", "description": "Deletes a message from OneDesk by its unique message ID. Returns success if the message is deleted or doesn't exist (idempotent operation). Use this when you need to permanently remove a message from the system." }, { "slug": "ONEDESK_DELETE_PROJECT", "name": "Delete Project", "description": "Delete a project in OneDesk by its ID. **API LIMITATION**: The OneDesk Public API does not support DELETE operations. DELETE requests return 405 Method Not Allowed on /rest/public/items endpoints. The public API only supports: - POST /items/ (create) - GET /items/id/{id} (retrieve by ID) - GET /items/externalId/{externalId} (retrieve by external ID) - GET /organization/profileAndPolicy (organization info) **Alternatives**: - Use OneDesk web application to delete projects manually - Contact OneDesk support for private API access - Use ONEDESK_GET_ISSUE_DETAILS if you need to check item status This action will fail with a clear error explaining the limitation." }, { "slug": "ONEDESK_DELETE_REQUIREMENT", "name": "Delete Requirement", "description": "Delete a requirement from OneDesk. Requirements in OneDesk are work items used for product development, feature requests, and specifications. They are one of the core work item types (tickets, tasks, requirements, issues). IMPORTANT: This operation may not be supported by all OneDesk Public API versions. If deletion fails, the API may only support soft-delete or archiving through status updates. Use when you need to permanently remove a requirement by its internal numeric ID. Example: {'requirement_id': 12345}" }, { "slug": "ONEDESK_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a specific task. Use when you need to remove an existing task by its ID after confirming its details." }, { "slug": "ONEDESK_DELETE_TICKET", "name": "Delete Ticket", "description": "Deletes a ticket from OneDesk by its internal ID. Use this tool to permanently remove a ticket when it's no longer needed. The ticket will be moved to the 'Deleted Items' project and scheduled for permanent deletion after 7 days. Note: OneDesk's Public API has limited DELETE support. This action tries multiple possible endpoints to maximize compatibility. Example: {'ticket_id': 123} Returns: Deletion status with context about success/failure (e.g., ticket not found, rate limited, permission denied)" }, { "slug": "ONEDESK_DELETE_TIMESHEET", "name": "Delete Timesheet", "description": "Tool to delete a timesheet by its ID. Use when you need to remove a specific timesheet after confirming it's no longer needed. Example: {'timesheet_id': 123}" }, { "slug": "ONEDESK_DELETE_USER", "name": "Delete User", "description": "Deletes a user from OneDesk by their unique user ID. This action permanently removes the specified user from the OneDesk account. Use this only after confirming the user should be removed from the system. **Important Notes:** - The OneDesk Public API has limited user management capabilities - There is no public API endpoint to list or create users - User IDs must be obtained through other means (e.g., OneDesk web application, internal systems) **Returns:** - success=True with status_code 200/204 if user was successfully deleted - success=False with status_code 404 if user was not found - success=False with appropriate status_code for other errors (403 for permission denied, 429 for rate limited, etc.) Example: {'user_id': '12345'}" }, { "slug": "ONEDESK_GET_ATTACHMENTS", "name": "Get Attachments", "description": "Retrieve attachments for a specific item by its external ID. IMPORTANT: The OneDesk Public API (/rest/public) has limited functionality and does NOT provide: - A dedicated attachments list endpoint - Ability to list all attachments across items - Endpoints to retrieve items by internal ID This action retrieves attachments by fetching an item via its external ID and extracting attachment data from the item response. You must know the external ID of the item in advance. Supported endpoints: 1. GET /rest/public/items/externalId/{externalId} - Fetch item by external ID 2. POST /rest/public/items/ - Create new items (not used here) 3. GET /rest/public/organization/profileAndPolicy - Get organization info (not used here)" }, { "slug": "ONEDESK_GET_COMMENT_DETAILS", "name": "Get Comment Details", "description": "Retrieve detailed information for a specific comment by its ID. This action attempts to fetch comment details from OneDesk using the comment ID. It tries multiple endpoint patterns to maximize compatibility with different API versions. Note: The OneDesk Public REST API has limited support for retrieving comments. If the comment ID doesn't exist or the endpoint is not available, this action will fail." }, { "slug": "ONEDESK_GET_COMMENTS", "name": "Get Comments", "description": "Attempts to retrieve comments (discussion posts) from OneDesk. **IMPORTANT LIMITATION**: The OneDesk Public REST API does not provide an endpoint to list or retrieve comments. According to OneDesk's API documentation, the public API only supports: - Creating items: POST /rest/public/items/ - Retrieving items by external ID: GET /rest/public/items/externalId/{externalId} - Getting organization info: GET /rest/public/organization/profileAndPolicy Comments can be created via the API but cannot be retrieved or listed through the public API. This action documents this limitation clearly. **Alternative approaches**: 1. Use the OneDesk web application directly to view comments 2. Request access to OneDesk's private/internal API from OneDesk support 3. Use OneDesk's webhook system to receive comment events in real-time 4. If you have a comment ID, try ONEDESK_GET_COMMENT_DETAILS For more information, visit: https://onedesk.com/dev/" }, { "slug": "ONEDESK_GET_FEEDBACK", "name": "Get Feedback Items", "description": "Retrieve all feedback items from OneDesk. **IMPORTANT LIMITATION**: The OneDesk Public API does not provide a GET endpoint to list feedback items. The public API only supports: - Creating items via POST /rest/public/items/ - Retrieving specific items by external ID via GET /rest/public/items/externalId/{externalId} - Getting organization info This action will always fail with an informative error message explaining this API limitation. **Alternative approaches:** - Use the OneDesk web application for viewing feedback - Retrieve feedback by external ID if you have it - Use OneDesk webhooks to receive feedback data as events - Contact OneDesk for private/internal API access" }, { "slug": "ONEDESK_GET_FEEDBACK_DETAILS", "name": "Get Feedback Details", "description": "Retrieve detailed information about a specific item in OneDesk by its internal ID. This endpoint retrieves ANY type of item (Tickets, Tasks, Feedback, etc.), not just feedback items. Use this action when you have an item's internal ID and need comprehensive details including: - Basic info (title, description, status, priority) - Creator and assignee information - Project association - Timestamps and lifecycle state - Direct web URL to view the item The internal ID is the numeric ID shown in the OneDesk application." }, { "slug": "ONEDESK_GET_ISSUE_DETAILS", "name": "Get Issue Details", "description": "Retrieve comprehensive details of a specific issue by its ID. This action fetches full information about an issue including its title, description, status, priority, creation/update timestamps, and other metadata. Use this when you need detailed information about a specific issue that you have the ID for. Returns essential issue information that can be used for reporting, tracking, or further processing. The response includes both basic fields (title, description) and advanced tracking information (status, priority, timestamps)." }, { "slug": "ONEDESK_GET_ISSUES", "name": "Get Issues", "description": "Retrieve a list of issues from OneDesk. **API LIMITATION**: The OneDesk Public API does not provide an endpoint to list or retrieve issues. The public API only supports: 1. Creating items via POST /rest/public/items/ 2. Retrieving specific items by external ID via GET /rest/public/items/externalId/{externalId} 3. Getting organization info via GET /rest/public/organization/profileAndPolicy **Alternatives**: - Use the OneDesk web application directly to view and manage issues - Request access to OneDesk's private API (contact OneDesk support) - Use OneDesk's webhook system for issue event notifications - Use ONEDESK_GET_ISSUE_DETAILS action if you have a specific issue's external ID This action will raise an ExecutionFailed error to document this limitation." }, { "slug": "ONEDESK_GET_MESSAGES", "name": "Get Messages", "description": "Tool to retrieve a list of messages from OneDesk. **IMPORTANT LIMITATION**: The OneDesk Public API does not provide an endpoint to list or retrieve messages. The public API only supports: 1. Creating items via POST /rest/public/items/ 2. Retrieving specific items by ID via GET /rest/public/items/id/{id} 3. Retrieving specific items by external ID via GET /rest/public/items/externalId/{externalId} 4. Getting organization info via GET /rest/public/organization/profileAndPolicy **Alternatives**: - Use the OneDesk web application directly to view messages - Request access to OneDesk's private API (contact OneDesk support) - Use OneDesk's webhook system for message event notifications - Retrieve specific messages by ID if you have the message ID This action will raise an ExecutionFailed error to document this API limitation." }, { "slug": "ONEDESK_GET_REQUIREMENTS", "name": "Get Requirements", "description": "Retrieve a list of requirements from OneDesk. **IMPORTANT LIMITATION**: This action cannot function as intended because the OneDesk Public API does not provide an endpoint to list or retrieve requirements. The OneDesk Public API (/rest/public) only supports: - Creating items: POST /rest/public/items/ - Get by external ID: GET /rest/public/items/externalId/{externalId} - Organization info: GET /rest/public/organization/profileAndPolicy There is no endpoint to: - List all requirements - Search for requirements - Query requirements by criteria - Get requirements by any identifier other than external ID Alternative approaches: 1. Use OneDesk web application for requirement management 2. Contact OneDesk support for private API access 3. Use webhooks to receive requirement data as events occur 4. Use ONEDESK_GET_REQUIREMENT_DETAILS if you have a specific requirement's external ID This action will always fail with a clear error message explaining the limitation." }, { "slug": "ONEDESK_GET_TASK_DETAILS", "name": "Get Task Details", "description": "Retrieves comprehensive details of a specific task/item in OneDesk by its ID. Use this tool when you need complete information about a task including its title, description, status, assignee, priority, due date, and project association. OneDesk uses 'items' to represent various work units including tasks, tickets, issues, and requirements. Returns detailed task information if found, or raises an error if the task doesn't exist or you don't have permission to access it." }, { "slug": "ONEDESK_GET_TICKETS", "name": "Get Tickets", "description": "Retrieve tickets from OneDesk by querying a range of item IDs. **API LIMITATION WORKAROUND**: The OneDesk Public API does not provide a direct endpoint to list all tickets. This action works around this by: 1. Querying individual items by ID within the specified range (start_id to end_id) 2. Filtering results to return only items with type='Ticket' 3. Limiting results to the max_tickets parameter **How it works**: - The action queries items sequentially from start_id to end_id - Only items with type='Ticket' are included in the results - Stops after collecting max_tickets tickets or reaching end_id - Non-existent IDs and non-ticket items (tasks, folders, etc.) are skipped **Best practices**: - Use smaller ranges (e.g., 1-50) for faster responses - Adjust start_id based on your known ticket ID ranges - Use max_tickets to limit the number of results The OneDesk Public API endpoint used: GET /rest/public/items/id/{id}" }, { "slug": "ONEDESK_GET_TIMESHEET_DETAILS", "name": "Get Timesheet Details", "description": "Tool to retrieve details of a specific timesheet entry. Use when you have the `timesheet_id` and need full metadata (user, project, hours, dates). Tries multiple endpoint/header variants and gracefully falls back in restricted environments." }, { "slug": "ONEDESK_GET_WORKLOGS", "name": "Get Worklogs", "description": "Retrieve a list of worklogs from OneDesk with optional filtering and pagination. This action attempts to list worklogs by trying multiple candidate endpoints and parameter formats. Note: The OneDesk Public API has limited endpoint support. If no worklogs endpoint is available, this action will return an empty list. Consider using the OneDesk web interface or private API endpoints for full worklog access. Use this action to: - List all worklogs in your OneDesk organization - Filter worklogs by object (ticket/task/project), user, or date range - Paginate through large worklog lists using limit and offset parameters" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onedesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OneDesk API Key", "type": "string", "description": "The API key used for authenticating requests to the OneDesk API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "onesaas", "name": "Onesaas", "logo": "https://logos.composio.dev/api/onesaas", "description": "1SaaS (now 0CodeKit) brings you the tool platform for all your projects when working with low-code, no-code, APIs and automation", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onesaas_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API key, navigate to your 0CodeKit account, go to Account > Your API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "onesignal_rest_api", "name": "OneSignal REST API", "logo": "https://logos.composio.dev/api/onesignal_rest_api", "description": "The OneSignal REST API enables developers to programmatically send push notifications, emails, and SMS, manage users and subscriptions, and configure apps.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ONESIGNAL_REST_API_BEGIN_LIVE_ACTIVITY", "name": "Begin Live Activity", "description": "Tool to start a Live Activity on OneSignal. Use when you need to initiate a Live Activity session with a push token and subscription ID." }, { "slug": "ONESIGNAL_REST_API_CREATE_NOTIFICATION", "name": "Create Notification", "description": "Tool to create and send a OneSignal push notification. Use when you have your message and target audience ready to dispatch notifications." }, { "slug": "ONESIGNAL_REST_API_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create reusable message templates for push, email, and SMS channels. Use when you need to create a template that can be accessed through both the dashboard and API using a template_id." }, { "slug": "ONESIGNAL_REST_API_CREATE_USER", "name": "Create User", "description": "Tool to create a OneSignal user with optional subscriptions and aliases. Aliases provided in the payload will be used to look up an existing user." }, { "slug": "ONESIGNAL_REST_API_DELETE_ALIAS", "name": "Delete Alias", "description": "Tool to delete an alias by alias label from a OneSignal user. Use when you need to remove a specific alias identity from a user's profile." }, { "slug": "ONESIGNAL_REST_API_DELETE_DEVICE", "name": "Delete Device", "description": "Tool to delete a device (player) from a OneSignal app. Use when you need to remove a specific device by its player ID." }, { "slug": "ONESIGNAL_REST_API_FETCH_USER_IDENTITY", "name": "Fetch User Identity", "description": "Tool to retrieve all aliases for a user identified by a specific alias. Use when you need to fetch the complete identity mapping for a OneSignal user." }, { "slug": "ONESIGNAL_REST_API_GET_ELIGIBLE_IAMS", "name": "Get Eligible In-App Messages", "description": "Tool to retrieve the manifest of In-App Messages that a subscription is eligible to display. Use when you need to fetch eligible IAMs for a specific subscription." }, { "slug": "ONESIGNAL_REST_API_UPDATE_DEVICE", "name": "Update Device", "description": "Tool to update properties of an existing device. Use when you need to modify device attributes after registration." }, { "slug": "ONESIGNAL_REST_API_UPDATE_SUBSCRIPTION", "name": "Update Subscription", "description": "Tool to update an existing subscription's properties. Use when you need to modify subscription attributes like token, enabled status, or device information." }, { "slug": "ONESIGNAL_REST_API_VIEW_AN_APP", "name": "View OneSignal App", "description": "Tool to retrieve metadata for a single OneSignal app. Use when you need to fetch app details by its ID." }, { "slug": "ONESIGNAL_REST_API_VIEW_DEVICE", "name": "View Device", "description": "Tool to retrieve details of a specific device (player). Use when you have a OneSignal player_id and need current device info." }, { "slug": "ONESIGNAL_REST_API_VIEW_DEVICES", "name": "View Devices", "description": "Tool to retrieve a paginated list of devices (players) for a OneSignal app. Use when you need to list or audit all registered devices for a given app." }, { "slug": "ONESIGNAL_REST_API_VIEW_NOTIFICATIONS", "name": "View Notifications", "description": "Tool to retrieve details of multiple notifications. Use when you need to list notifications for a specific app." }, { "slug": "ONESIGNAL_REST_API_VIEW_SEGMENTS", "name": "View Segments", "description": "Tool to view segments for a OneSignal app. Use when you need to list all segments associated with an app." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onesignal_rest_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OneSignal App API Key", "type": "string", "description": "The App API Key is a private key used for most REST API requests related to a specific app. Find it in the OneSignal Dashboard under Settings > Keys & IDs.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "onesignal_user_auth", "name": "OneSignal User Auth", "logo": "https://logos.composio.dev/api/onesignal_user_auth", "description": "OneSignal is a customer engagement platform offering push notifications, email, SMS, and in-app messaging services.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ONESIGNAL_USER_AUTH_CREATE_USER", "name": "Create or Update OneSignal User", "description": "Tool to create a new user or modify the subscriptions associated with an existing user. Use when you need to register a user with OneSignal or update their subscriptions." }, { "slug": "ONESIGNAL_USER_AUTH_DELETE_ALIAS", "name": "Delete User Alias", "description": "Tool to remove an alias from a OneSignal user. Use when you need to delete a specific alias identifier from a user while preserving other aliases. The user is identified by one alias (alias_label/alias_id) and a different alias (alias_label_to_delete) is removed." }, { "slug": "ONESIGNAL_USER_AUTH_EDIT_DEVICE", "name": "Edit OneSignal Device", "description": "Tool to update an existing OneSignal device (player) record. Use when you have the player_id and need to modify device attributes." }, { "slug": "ONESIGNAL_USER_AUTH_ONESIGNAL_VIEW_SEGMENT", "name": "View OneSignal Segment", "description": "Tool to retrieve the subscriber count for a specific OneSignal segment. Use when you need to know how many subscribers are in a segment." }, { "slug": "ONESIGNAL_USER_AUTH_UPDATE_SUBSCRIPTION_BY_TOKEN", "name": "Update Subscription By Token", "description": "Tool to update properties on an existing subscription using its token. Use when you need to enable or disable subscription status when managing outside of the OneSignal SDK." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_APP", "name": "View App", "description": "Tool to retrieve details for a specific OneSignal app. Use after authenticating to inspect app settings." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_BROADCASTS", "name": "View Broadcasts", "description": "Tool to view inbox broadcasts for a OneSignal app. Returns broadcasts in descending order of creation. Use when retrieving in-app messages or inbox content for an app." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_DEVICE", "name": "View OneSignal Device", "description": "Tool to retrieve details for a specific device/player. Use when you have a player_id and optional app_id." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_OUTCOMES", "name": "View Outcomes", "description": "Tool to view all outcomes associated with a OneSignal app. Use to retrieve outcome metrics filtered by time range, platforms, and attribution type." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_SEGMENTS", "name": "View Segments", "description": "Tool to list all segments for an app. Use after obtaining the app_id to retrieve a paginated list of segments." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_USER", "name": "View OneSignal User", "description": "Tool to retrieve user details by alias label and ID. Use when you need to fetch user data including tags, subscriptions, and identity information." }, { "slug": "ONESIGNAL_USER_AUTH_VIEW_USER_UNREAD_MESSAGE_COUNT", "name": "View User Unread Message Count", "description": "Tool to retrieve the unread message count for a specific user. Use when you need to check how many unread inbox messages a user has." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "onesignal_user_auth_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OneSignal App API Key", "type": "string", "description": "The App API Key used for authenticating API requests related to a specific OneSignal app. Found in your OneSignal Dashboard under Settings > Keys & IDs.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "openai", "name": "OpenAI", "logo": "https://logos.composio.dev/api/openai", "description": "Toolkit for OpenAI APIs: manage Assistants, Threads/Messages; upload/list/delete Files; list/retrieve Models (including vision/multimodal); and view fine-tune listings and events.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 126, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPENAI_ADD_UPLOAD_PART", "name": "Add Upload Part", "description": "Tool to add a part (chunk of bytes) to an Upload object. Use when uploading large files in chunks, with each part up to 64 MB." }, { "slug": "OPENAI_CANCEL_BATCH", "name": "Cancel batch", "description": "Tool to cancel an in-progress batch. Use when you need to stop a batch that is currently processing. The batch will be in status 'cancelling' for up to 10 minutes before changing to 'cancelled', where partial results (if any) will be available." }, { "slug": "OPENAI_CANCEL_EVAL_RUN", "name": "Cancel evaluation run", "description": "Tool to cancel an ongoing evaluation run. Use when you need to stop an evaluation run that is currently in progress." }, { "slug": "OPENAI_CANCEL_RESPONSE", "name": "Cancel Response", "description": "Tool to cancel a background model response by its ID. Use when you need to stop a response that was created with the 'background' parameter set to true. Only background responses can be cancelled; attempting to cancel a non-background response will fail." }, { "slug": "OPENAI_CANCEL_RUN", "name": "Cancel Run", "description": "Tool to cancel a run that is currently in progress. Use when you need to stop an assistant run that is taking too long or is no longer needed. The run's status will transition to 'cancelling' and then 'cancelled'." }, { "slug": "OPENAI_CANCEL_UPLOAD", "name": "Cancel upload", "description": "Tool to cancel an upload. Use when you need to stop an upload that is in progress. No parts may be added after cancellation." }, { "slug": "OPENAI_COMPACT_RESPONSE", "name": "Compact Response", "description": "Tool to compact a conversation or response to reduce token usage. Use when you need to reduce the size of long conversations while preserving important context. Either provide an array of input messages or reference a previous response ID to compact." }, { "slug": "OPENAI_CREATE_AUDIO_TRANSCRIPTION", "name": "Create Audio Transcription", "description": "Tool to transcribe audio files to text via OpenAI Audio Transcriptions API. Use when you need to convert speech in audio files to written text, optionally with timestamps or speaker diarization." }, { "slug": "OPENAI_CREATE_AUDIO_TRANSLATION", "name": "Create Audio Translation", "description": "Tool to translate audio files to English text via OpenAI Audio Translations API. Use when you need to convert speech in audio files (any language) to English text." }, { "slug": "OPENAI_CREATE_BATCH", "name": "Create Batch", "description": "Tool to create and execute a batch from an uploaded file of requests. Use after uploading a JSONL file with purpose 'batch' to process multiple API requests in a single batch operation." }, { "slug": "OPENAI_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Tool to create a chat completion response from OpenAI models. Use for conversational AI, text generation, function calling, multimodal tasks with vision/audio, and structured JSON outputs. Supports advanced features like reasoning models, tool use, and streaming responses." }, { "slug": "OPENAI_CREATE_COMPLETION", "name": "Create Completion (Legacy)", "description": "Tool to generate text completions using OpenAI's legacy Completions API. Use for single-turn text generation with models like gpt-3.5-turbo-instruct. Note: This endpoint is legacy; prefer Chat Completions for newer models." }, { "slug": "OPENAI_CREATE_CONTAINER", "name": "Create Container", "description": "Tool to create a new container with configurable memory, expiration, file access, and network policies. Use when you need to provision an isolated execution environment." }, { "slug": "OPENAI_CREATE_CONTAINER_FILE", "name": "Create Container File", "description": "Tool to create a file in a container. Use when adding files to an existing container either by referencing an uploaded file ID or by uploading raw file content directly." }, { "slug": "OPENAI_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation for multi-turn interactions. Use when initializing a persistent conversation with optional starter messages." }, { "slug": "OPENAI_CREATE_CONVERSATION_ITEMS", "name": "Create Conversation Items", "description": "Tool to create items in a conversation with the given ID. Use when adding messages or other items to an existing conversation." }, { "slug": "OPENAI_CREATE_EMBEDDINGS", "name": "Create Embeddings", "description": "Tool to generate text embeddings via the OpenAI embeddings endpoint. Use for search, clustering, recommendations, and vector database storage workflows." }, { "slug": "OPENAI_CREATE_EVAL", "name": "Create Eval", "description": "Tool to create an evaluation structure for testing a model's performance. An evaluation is a set of testing criteria and data source config that dictates the schema of data used in the evaluation. Use when setting up automated testing for model outputs with graders like label_model, string_check, or text_similarity." }, { "slug": "OPENAI_CREATE_EVAL_RUN", "name": "Create Evaluation Run", "description": "Tool to create a new evaluation run for testing model configurations. Use when you need to kick off an evaluation with a specific data source and model configuration to test." }, { "slug": "OPENAI_CREATE_FINE_TUNING_JOB", "name": "Create fine-tuning job", "description": "Tool to create a fine-tuning job which begins the process of creating a new model from a given dataset. Use when you need to start fine-tuning a model with your training data. Response includes details of the enqueued job including job status and the name of the fine-tuned models once complete." }, { "slug": "OPENAI_CREATE_IMAGE", "name": "Generate Image", "description": "Tool to generate an image via the OpenAI Images API and return hosted image asset URL and metadata. Use when you need to create images from text descriptions for single-shot image generation." }, { "slug": "OPENAI_CREATE_IMAGE_EDIT", "name": "Edit Image", "description": "Tool to create edited or extended images via OpenAI Images Edit API. Use when you need to modify existing images based on a text prompt, with optional mask support for targeted edits." }, { "slug": "OPENAI_CREATE_IMAGE_VARIATION", "name": "Create Image Variation", "description": "Tool to create a variation of a given image using the OpenAI Images API. Use when you need to generate alternative versions of an existing image. Only supports dall-e-2 model." }, { "slug": "OPENAI_CREATE_MESSAGE", "name": "Create Message", "description": "Tool to create a new message in a specific thread. Appends the message only — does not trigger a model response; create a separate run to obtain assistant replies. Use when adding messages to an existing conversation after confirming the thread ID." }, { "slug": "OPENAI_CREATE_MODERATION", "name": "Create Moderation", "description": "Tool to classify text and/or image inputs for potentially harmful content via the OpenAI Moderation API. Use for content safety checks, filtering user-generated content, or monitoring for policy violations across 13 harm categories including harassment, hate, violence, sexual content, self-harm, and illicit activities." }, { "slug": "OPENAI_CREATE_REALTIME_CALL", "name": "Create Realtime Call", "description": "Tool to create a Realtime API call over WebRTC and receive the SDP answer needed to complete the peer connection. Use when initiating a bidirectional audio/data WebRTC session with OpenAI's Realtime API. Returns the SDP answer and call ID for connection establishment." }, { "slug": "OPENAI_CREATE_REALTIME_CLIENT_SECRET", "name": "Create Realtime Client Secret", "description": "Tool to create an ephemeral client secret for authenticating Realtime API connections. Use when you need to establish a WebSocket connection to OpenAI's Realtime API for voice or streaming interactions." }, { "slug": "OPENAI_CREATE_REALTIME_SESSION", "name": "Create Realtime Session", "description": "Tool to create an ephemeral API token for client-side Realtime API applications. Use when setting up browser-based real-time audio/text interactions." }, { "slug": "OPENAI_CREATE_REALTIME_TRANSCRIPTION_SESSION", "name": "Create Realtime Transcription Session", "description": "Tool to create an ephemeral API token for realtime transcriptions via the Realtime API. Use when you need to authenticate browser clients for realtime audio transcription sessions. Returns a session object with a client_secret containing a usable ephemeral API token." }, { "slug": "OPENAI_CREATE_RESPONSE", "name": "Create Response", "description": "Tool to generate a one-shot model response via the Responses API. Use for multimodal analysis (image + text), OCR/text extraction from images, or structured JSON outputs. For structured outputs, configure text.format with type='json_schema' and your schema. Returns the full Response object including id, output array, and aggregated output_text for parsing structured data." }, { "slug": "OPENAI_CREATE_RUN", "name": "Create Run", "description": "Tool to create a run on a thread with an assistant. Use when you need to execute an assistant to generate responses. Creating a message alone does not cause the assistant to respond; a run is the execution primitive. After creating the run, typically poll the run status until it reaches a terminal state (completed, failed, cancelled, expired), then read the assistant's messages from the thread." }, { "slug": "OPENAI_CREATE_SKILL", "name": "Create Skill", "description": "Tool to create a skill from uploaded files. Use when you need to create a new skill with SKILL.md and supporting files." }, { "slug": "OPENAI_CREATE_SPEECH", "name": "Create Speech (TTS)", "description": "Tool to generate text-to-speech audio using OpenAI's Audio API. Use when you need to convert text to natural-sounding speech with a choice of voices and models. Returns a hosted audio file URL with metadata, not raw bytes." }, { "slug": "OPENAI_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread. Use when initializing a conversation with optional starter messages. Returns a thread_id that must be persisted and passed to all subsequent calls (e.g., OPENAI_CREATE_MESSAGE, OPENAI_RETRIEVE_THREAD). Create a fresh thread for each independent conversation or unrelated task." }, { "slug": "OPENAI_CREATE_THREAD_AND_RUN", "name": "Create Thread And Run", "description": "Tool to create a thread and run it in one request. Use when you need to start a new conversation and immediately execute the assistant to generate a response. This is more efficient than calling create_thread and create_run separately." }, { "slug": "OPENAI_CREATE_UPLOAD", "name": "Create Upload", "description": "Tool to create an intermediate Upload object for large file uploads. Use when uploading files larger than the direct upload limit by adding Parts to the Upload. The Upload accepts up to 8 GB total and expires after one hour if not completed." }, { "slug": "OPENAI_CREATE_VECTOR_STORE", "name": "Create Vector Store", "description": "Tool to create a new vector store. Use when you need to create a collection of processed files for file_search tools." }, { "slug": "OPENAI_CREATE_VECTOR_STORE_FILE", "name": "Create Vector Store File", "description": "Tool to create a vector store file by attaching a File to a vector store. Use when you need to add files to a vector store for file search capabilities." }, { "slug": "OPENAI_CREATE_VECTOR_STORE_FILE_BATCH", "name": "Create vector store file batch", "description": "Tool to create a vector store file batch. Use when attaching multiple files to a vector store for file search capabilities." }, { "slug": "OPENAI_CREATE_VIDEO", "name": "Create Video", "description": "Tool to create a video using Sora models via the OpenAI Videos API. Use when you need to generate videos from text descriptions. The response includes a job ID and status for tracking the asynchronous video generation process." }, { "slug": "OPENAI_CREATE_VIDEO_REMIX", "name": "Create Video Remix", "description": "Tool to create a video remix from an existing generated video using OpenAI's Video API. Use when you need to transform or modify a previously generated video based on a new prompt. The remix operation creates a new video job that applies the new prompt to the original video content." }, { "slug": "OPENAI_DELETE_ASSISTANT", "name": "Delete assistant", "description": "Tool to delete a specific assistant by its ID. Use when you need to remove an assistant after confirming its ID. Deletion is irreversible and permanently removes all assistant configuration." }, { "slug": "OPENAI_DELETE_CHAT_COMPLETION", "name": "Delete chat completion", "description": "Tool to delete a stored chat completion by its ID. Use when you need to remove a chat completion that was created with store=true." }, { "slug": "OPENAI_DELETE_CONTAINER", "name": "Delete container", "description": "Tool to delete a specific container by its ID. Use when you need to remove a container after confirming its ID." }, { "slug": "OPENAI_DELETE_CONTAINER_FILE", "name": "Delete container file", "description": "Tool to delete a file from a container. Use when you need to remove a file from a specific container by providing both container ID and file ID." }, { "slug": "OPENAI_DELETE_CONVERSATION", "name": "Delete conversation", "description": "Tool to delete a conversation by its ID. Items in the conversation will not be deleted. Use when you need to remove a conversation." }, { "slug": "OPENAI_DELETE_CONVERSATION_ITEM", "name": "Delete conversation item", "description": "Tool to delete an item from a conversation with the given IDs. Use when you need to remove a specific message or item from a conversation." }, { "slug": "OPENAI_DELETE_EVAL", "name": "Delete evaluation", "description": "Tool to delete a specific evaluation by its ID. Use when you need to remove an evaluation after confirming its ID." }, { "slug": "OPENAI_DELETE_EVAL_RUN", "name": "Delete evaluation run", "description": "Tool to delete an evaluation run. Use when you need to permanently remove a specific run from an evaluation." }, { "slug": "OPENAI_DELETE_FILE", "name": "Delete file", "description": "Tool to delete a file by its ID after confirming the target. Files persist indefinitely and count against storage quotas; periodically list and remove unneeded files to avoid hitting file-count or size caps." }, { "slug": "OPENAI_DELETE_MESSAGE", "name": "Delete message", "description": "Tool to delete a message from a thread. Use when you need to remove a specific message by its ID after confirming both the thread and message IDs." }, { "slug": "OPENAI_DELETE_RESPONSE", "name": "Delete response", "description": "Tool to delete a model response with the given ID. Use when you need to remove a stored response from the Responses API." }, { "slug": "OPENAI_DELETE_SKILL", "name": "Delete skill", "description": "Tool to delete a specific skill by its ID. Use when you need to remove a skill after confirming its ID." }, { "slug": "OPENAI_DELETE_THREAD", "name": "Delete thread", "description": "Tool to delete a thread by its ID. Use when you need to remove a conversation thread after confirming the target ID." }, { "slug": "OPENAI_DELETE_VECTOR_STORE", "name": "Delete Vector Store", "description": "Tool to delete a vector store. Use when you need to permanently remove a vector store by its ID." }, { "slug": "OPENAI_DELETE_VECTOR_STORE_FILE", "name": "Delete Vector Store File", "description": "Tool to delete a vector store file. This removes the file from the vector store but does not delete the file itself. Use when you need to remove a file from a vector store's search index." }, { "slug": "OPENAI_DELETE_VIDEO", "name": "Delete video", "description": "Tool to delete a video by its ID. Use when you need to remove a video after confirming its identifier." }, { "slug": "OPENAI_DOWNLOAD_FILE", "name": "Download file", "description": "Tool to download the contents of a specified file by its ID. Use when you need to retrieve file content from OpenAI." }, { "slug": "OPENAI_DOWNLOAD_VIDEO", "name": "Download Video Content", "description": "Tool to download video content (MP4) or preview assets from OpenAI Videos API. Use when you need to retrieve the actual video file, thumbnail, or spritesheet for a generated video." }, { "slug": "OPENAI_GET_CHAT_COMPLETION", "name": "Get Chat Completion", "description": "Tool to retrieve a stored chat completion. Use when you need to fetch a previously created chat completion that was stored with store=true." }, { "slug": "OPENAI_GET_CHAT_COMPLETION_MESSAGES", "name": "Get Chat Completion Messages", "description": "Tool to retrieve messages from a stored chat completion. Use when you need to fetch the conversation history of a previously created chat completion. Only works with completions that were created with the store parameter set to true." }, { "slug": "OPENAI_GET_CHATKIT_THREAD", "name": "Get ChatKit thread", "description": "Tool to retrieve a ChatKit thread by its ID. Use when you need to fetch details about a specific ChatKit thread including its status, title, and owner." }, { "slug": "OPENAI_GET_CONVERSATION_ITEM", "name": "Get Conversation Item", "description": "Tool to retrieve a single item from a conversation. Use when you need to fetch details of a specific message or item within a conversation." }, { "slug": "OPENAI_GET_EVAL", "name": "Get Eval", "description": "Tool to retrieve an evaluation by ID. Use when you need to inspect an existing evaluation's configuration, data source settings, or testing criteria." }, { "slug": "OPENAI_GET_EVAL_RUN", "name": "Get Evaluation Run", "description": "Tool to retrieve an evaluation run by ID to check status and results. Use when you need to monitor an evaluation run's progress or retrieve its final results after creation." }, { "slug": "OPENAI_GET_EVAL_RUN_OUTPUT_ITEM", "name": "Get Eval Run Output Item", "description": "Tool to retrieve a specific output item from an evaluation run by its ID. Use when you need detailed results for a particular test case within an evaluation run." }, { "slug": "OPENAI_GET_EVAL_RUN_OUTPUT_ITEMS", "name": "Get eval run output items", "description": "Tool to get a list of output items for an evaluation run. Use when you need to retrieve the detailed results of an eval run, including grading outcomes, input/output samples, and token usage." }, { "slug": "OPENAI_GET_EVAL_RUNS", "name": "Get Evaluation Runs", "description": "Tool to get a paginated list of runs for an evaluation. Use when you need to retrieve all runs or check the status of multiple runs for a specific evaluation." }, { "slug": "OPENAI_GET_INPUT_TOKEN_COUNTS", "name": "Get Input Token Counts", "description": "Tool to calculate input token counts for OpenAI API requests. Use when you need to estimate token usage before making an API call, validate content fits within model limits, or optimize prompts for token efficiency." }, { "slug": "OPENAI_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve a specific message from a thread by its ID. Use when you need to fetch details of a particular message in an Assistants thread." }, { "slug": "OPENAI_GET_RESPONSE", "name": "Get Response", "description": "Tool to retrieve a model response by ID. Use when you need to check the status, output, or metadata of a previously created response." }, { "slug": "OPENAI_GET_RUN_STEP", "name": "Get Run Step", "description": "Tool to retrieve a specific run step from an Assistants API run to inspect detailed execution progress, view tool calls, or check message creation. Use when you need details about a specific step in a run's execution." }, { "slug": "OPENAI_GET_VECTOR_STORE", "name": "Get Vector Store", "description": "Tool to retrieve a vector store by its ID. Use when you need to get details of an existing vector store for file_search operations." }, { "slug": "OPENAI_GET_VECTOR_STORE_FILE", "name": "Get Vector Store File", "description": "Tool to retrieve a file from a vector store. Use when you need to check the status or details of a file attached to a vector store." }, { "slug": "OPENAI_GET_VECTOR_STORE_FILE_BATCH", "name": "Get Vector Store File Batch", "description": "Tool to retrieve a vector store file batch. Use when you need to check the status of a batch file processing operation." }, { "slug": "OPENAI_GET_VIDEO", "name": "Get Video", "description": "Tool to retrieve a video generation job by its unique identifier. Use when you need to check the status, progress, or details of a video generation task." }, { "slug": "OPENAI_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to list assistants to discover the correct assistant_id by name or metadata. Use when assistant_id is unknown to avoid 404 errors." }, { "slug": "OPENAI_LIST_BATCHES", "name": "List Batches", "description": "Tool to list your organization's batches. Use when you need to view all batches, check batch statuses, or find a specific batch by listing them." }, { "slug": "OPENAI_LIST_CHAT_COMPLETIONS", "name": "List Chat Completions", "description": "Tool to list stored chat completions that were created with the `store` parameter set to true. Use to retrieve previously stored completions for review, analysis, or audit purposes." }, { "slug": "OPENAI_LIST_CHATKIT_THREAD_ITEMS", "name": "List ChatKit thread items", "description": "Tool to list ChatKit thread items. Use when you need to retrieve all items from a ChatKit thread, including messages, tool calls, and tasks." }, { "slug": "OPENAI_LIST_CONTAINER_FILES", "name": "List container files", "description": "Tool to list files in a container. Use when you need to view all files uploaded to a specific container." }, { "slug": "OPENAI_LIST_CONTAINERS", "name": "List Containers", "description": "Tool to list containers. Use when you need to view all containers in your organization or filter by name." }, { "slug": "OPENAI_LIST_CONVERSATION_ITEMS", "name": "List Conversation Items", "description": "Tool to list all items for a conversation with the given ID. Use when you need to retrieve the items in a conversation for review or processing." }, { "slug": "OPENAI_LIST_ENGINES", "name": "List engines", "description": "Tool to list available engines and their basic information. Use when you need to discover which engines are available." }, { "slug": "OPENAI_LIST_EVALS", "name": "List Evals", "description": "Tool to list evaluations for a project. Use when you need to view all evaluations, check their configurations, or find a specific evaluation by listing them." }, { "slug": "OPENAI_LIST_FILES", "name": "List files", "description": "Tool to retrieve a list of files uploaded to your organization/project context. Cursor-paginated: continue requesting pages until next_cursor is null to retrieve all files. Files from other project environments are not visible. Cached file_ids may become stale if files are deleted; re-query before referencing file_ids in downstream workflows." }, { "slug": "OPENAI_LIST_FILES_IN_VECTOR_STORE_BATCH", "name": "List Files in Vector Store Batch", "description": "Tool to list vector store files in a batch. Use when you need to retrieve all files that were added to a vector store as part of a specific batch operation." }, { "slug": "OPENAI_LIST_FINE_TUNES", "name": "List fine-tunes", "description": "Tool to list your organization's fine-tuning jobs. Use when you need to review all fine-tune runs. Results are scoped to the authenticated organization; an empty list means no fine-tunes exist for that org specifically." }, { "slug": "OPENAI_LIST_FINE_TUNING_EVENTS", "name": "List fine-tuning job events", "description": "Tool to get status updates for a fine-tuning job. Use when you need to monitor the progress of a fine-tuning job or retrieve event logs." }, { "slug": "OPENAI_LIST_FINE_TUNING_JOB_CHECKPOINTS", "name": "List fine-tuning job checkpoints", "description": "Tool to list checkpoints for a fine-tuning job. Use when you need to retrieve model checkpoints created during the fine-tuning process. Checkpoints are created at various steps during training and can be used to evaluate model performance at different stages." }, { "slug": "OPENAI_LIST_INPUT_ITEMS", "name": "List Input Items", "description": "Tool to retrieve input items for a given response from the OpenAI Responses API. Use when you need to inspect the inputs that were used to generate a specific response." }, { "slug": "OPENAI_LIST_MESSAGES", "name": "List Messages", "description": "Tool to list messages in an Assistants thread to fetch the assistant's generated outputs after a run completes. Use after polling a run to completion to retrieve assistant responses." }, { "slug": "OPENAI_LIST_MODELS", "name": "List models", "description": "Tool to list available models scoped to the current account/organization — some public models may be absent due to permissions. Use when you need to discover which models you can call. Results may include deprecated or assistant-incompatible models; confirm a specific model's status via OPENAI_RETRIEVE_MODEL before using it in OPENAI_CREATE_ASSISTANT or other calls. Use model IDs exactly as returned — misspelled or unsupported IDs cause validation errors. Models vary in capability (vision, file-based features, context size); inspect metadata before assuming support. Filter results by id, owned_by, or status to handle large result sets efficiently." }, { "slug": "OPENAI_LIST_RUNS", "name": "List Runs", "description": "Tool to list runs belonging to a thread. Use when you need to view all runs that have been executed on a specific thread, for example to find a run by status or to track execution history." }, { "slug": "OPENAI_LIST_RUN_STEPS", "name": "List Run Steps", "description": "Tool to list run steps for an Assistants API run to track detailed execution progress, inspect tool calls, and view message creation events. Use after creating a run to monitor its step-by-step execution or to retrieve tool call details after completion. When polling to monitor active runs, use reasonable intervals to avoid rate-limit errors." }, { "slug": "OPENAI_LIST_SKILLS", "name": "List Skills", "description": "Tool to list skills. Use when you need to discover available skills or retrieve skill IDs by name or description." }, { "slug": "OPENAI_LIST_THREADS", "name": "List ChatKit Threads", "description": "Tool to list ChatKit threads with pagination and filtering. Use when you need to retrieve threads for a specific user or browse all available threads." }, { "slug": "OPENAI_LIST_VECTOR_STORE_FILES", "name": "List Vector Store Files", "description": "Tool to list files in a vector store. Use when you need to retrieve all files attached to a specific vector store." }, { "slug": "OPENAI_LIST_VECTOR_STORES", "name": "List Vector Stores", "description": "Tool to list vector stores to discover available vector stores by name or metadata. Use when you need to view all vector stores in your organization." }, { "slug": "OPENAI_LIST_VIDEOS", "name": "List Videos", "description": "Tool to list all video generation jobs. Use when you need to view all videos that have been created or check the status of multiple video generation tasks." }, { "slug": "OPENAI_MODIFY_ASSISTANT", "name": "Modify Assistant", "description": "Tool to modify an existing assistant. Use when you need to update an assistant's configuration, model, instructions, tools, or metadata." }, { "slug": "OPENAI_MODIFY_MESSAGE", "name": "Modify Message", "description": "Tool to modify an existing message's metadata in a thread. Use when you need to update metadata associated with a specific message." }, { "slug": "OPENAI_MODIFY_RUN", "name": "Modify Run", "description": "Tool to modify a run's metadata. Use when you need to update metadata information for a specific run." }, { "slug": "OPENAI_MODIFY_THREAD", "name": "Modify thread", "description": "Tool to modify an existing thread's metadata. Use after obtaining the thread ID when you need to update metadata." }, { "slug": "OPENAI_MODIFY_VECTOR_STORE", "name": "Modify Vector Store", "description": "Tool to modify an existing vector store. Use when you need to update the name, expiration policy, or metadata of a vector store." }, { "slug": "OPENAI_RETRIEVE_ASSISTANT", "name": "Retrieve assistant", "description": "Tool to retrieve details of a specific assistant. Use when you need to confirm assistant metadata before performing further operations. Prefer this over repeated OPENAI_CREATE_ASSISTANT calls to avoid cluttering assistant configurations." }, { "slug": "OPENAI_RETRIEVE_BATCH", "name": "Retrieve Batch", "description": "Tool to retrieve a batch by ID to check its status, progress, and results. Use when you need to check the current state of a batch job, view completion statistics, or access output file IDs." }, { "slug": "OPENAI_RETRIEVE_CONTAINER", "name": "Retrieve container", "description": "Tool to retrieve details of a specific container by its ID. Use when you need to fetch container configuration, status, or metadata." }, { "slug": "OPENAI_RETRIEVE_CONTAINER_FILE", "name": "Retrieve container file", "description": "Tool to retrieve metadata for a specific file in a container. Use when you need to get details about a container file including its size, path, and creation timestamp." }, { "slug": "OPENAI_RETRIEVE_CONTAINER_FILE_CONTENT", "name": "Retrieve container file content", "description": "Tool to retrieve the content of a file within a container. Use when you need to download or access the actual file data from a container." }, { "slug": "OPENAI_RETRIEVE_ENGINE", "name": "Retrieve engine", "description": "Tool to retrieve details of a specific engine. Use when you need to confirm engine availability and metadata before using it." }, { "slug": "OPENAI_RETRIEVE_FILE", "name": "Retrieve file", "description": "Tool to retrieve information about a specific file. Use when you need to check the details, status, or metadata of a file by its ID." }, { "slug": "OPENAI_RETRIEVE_FINE_TUNING_JOB", "name": "Retrieve fine-tuning job", "description": "Tool to retrieve information about a fine-tuning job. Use when you need to check the status, progress, or details of an existing fine-tuning job." }, { "slug": "OPENAI_RETRIEVE_MODEL", "name": "Retrieve model", "description": "Tool to retrieve details of a specific model, confirming its metadata (ownership, created date) and verifying access under your org — a model appearing in OPENAI_LIST_MODELS does not guarantee access. Use before depending on a model ID in downstream calls." }, { "slug": "OPENAI_RETRIEVE_RUN", "name": "Retrieve run", "description": "Tool to retrieve an Assistants run by ID to check status, errors, and usage. Use when polling run status until it reaches a terminal state (completed, failed, cancelled, incomplete, expired) before reading thread messages." }, { "slug": "OPENAI_RETRIEVE_THREAD", "name": "Retrieve thread", "description": "Tool to retrieve metadata of a specific thread by its ID — does not include message bodies or assistant replies (those require a completed run and separate message listing). Use before listing messages. After thread creation or message appending, wait 2–3 seconds before polling; use exponential backoff (1s, 2s, 4s) for HTTP 429 responses. Avoid concurrent OPENAI_CREATE_MESSAGE writes during retrieval to prevent inconsistent message states." }, { "slug": "OPENAI_RETRIEVE_VECTOR_STORE_FILE_CONTENT", "name": "Retrieve Vector Store File Content", "description": "Tool to retrieve the parsed contents of a vector store file. Use when you need to access the actual text content that has been processed and chunked for a file in a vector store." }, { "slug": "OPENAI_RUN_GRADER", "name": "Run grader", "description": "Tool to run a grader to evaluate model performance on a given sample. Use when you need to evaluate model outputs against expected results using various grading strategies like string matching, text similarity, custom Python code, or model-based scoring." }, { "slug": "OPENAI_SEARCH_VECTOR_STORE", "name": "Search Vector Store", "description": "Tool to search a vector store for relevant chunks based on a query and file attributes filter. Use when you need to find specific content within a vector store for retrieval-augmented generation (RAG) or custom search workflows." }, { "slug": "OPENAI_SUBMIT_TOOL_OUTPUTS_TO_RUN", "name": "Submit Tool Outputs to Run", "description": "Tool to submit tool call outputs to continue a run that requires action. Use when a run has status 'requires_action' and required_action.type is 'submit_tool_outputs'. All tool outputs must be submitted together in a single request." }, { "slug": "OPENAI_UPDATE_CHAT_COMPLETION", "name": "Update Chat Completion", "description": "Tool to update metadata for a stored chat completion. Use when you need to modify tags or metadata for a completion that was created with store=true." }, { "slug": "OPENAI_UPDATE_CONVERSATION", "name": "Update Conversation", "description": "Tool to update a conversation's metadata. Use when you need to modify metadata for an existing conversation." }, { "slug": "OPENAI_UPDATE_EVAL", "name": "Update Eval", "description": "Tool to update certain properties of an evaluation (name and metadata). Use when you need to rename an evaluation or update its metadata without changing the data source configuration or testing criteria." }, { "slug": "OPENAI_UPDATE_VECTOR_STORE_FILE_ATTRIBUTES", "name": "Update Vector Store File Attributes", "description": "Tool to update custom attributes on a vector store file. Use when you need to add or modify metadata associated with files in a vector store." }, { "slug": "OPENAI_UPLOAD_FILE", "name": "Upload file", "description": "Tool to upload a file for use across OpenAI endpoints. Use before referencing the file in tasks like fine-tuning. Returns a `file_id` that must be explicitly passed to endpoints like OPENAI_CREATE_ASSISTANT or OPENAI_CREATE_MESSAGE — uploaded files are not auto-discovered. Files exceeding size limits return HTTP 413; split or compress oversized content before retrying. Verify uploads via OPENAI_LIST_FILES before referencing `file_id`, as unsupported formats may be silently rejected. Repeated uploads accumulate against storage quotas; delete unused files with OPENAI_DELETE_FILE." }, { "slug": "OPENAI_VALIDATE_GRADER", "name": "Validate grader configuration", "description": "Tool to validate a grader configuration for fine-tuning jobs. Use when you need to verify that a grader is correctly configured before using it in a fine-tuning job." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "openai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OpenAI API Key", "type": "string", "description": "Your secret OpenAI API key, starting with 'sk-' or 'sk-proj-'. Create or copy one at platform.openai.com/api-keys and keep it private.", "required": true, "default": null } ], "optional": [ { "name": "organization_id", "displayName": "OpenAI Organization ID (optional)", "type": "string", "description": "Only needed if you're in multiple OpenAI organizations. Looks like 'org-AbC123xyz' — find it under Settings → Organization → General. Most users can leave this blank.", "required": false, "default": null } ] } } } ] }, { "slug": "opencage", "name": "Opencage", "logo": "https://logos.composio.dev/api/opencage", "description": "OpenCage Geocoder provides a simple API for forward and reverse geocoding using open data sources.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPENCAGE_GEOCODE_FORWARD", "name": "Forward Geocode Address", "description": "Tool to convert a human-readable address into geographic coordinates. Use when you need to retrieve latitude and longitude from an address." }, { "slug": "OPENCAGE_GEOCODE_GEOJSON", "name": "Geocode to GeoJSON", "description": "Geocode addresses or coordinates and return results in GeoJSON FeatureCollection format. Use this tool when you need: - Geographic data in standard GeoJSON format for mapping applications - Forward geocoding: convert addresses to coordinates - Reverse geocoding: convert coordinates to addresses The response includes coordinates, formatted addresses, and optional annotations like timezone, currency, and sun times for each location." }, { "slug": "OPENCAGE_GEOCODE_GEOJSONP", "name": "Geocode with JSONP", "description": "Geocode an address and return results wrapped in a JavaScript callback function (JSONP format). Use this tool when you need geocoding results that can be directly consumed by JavaScript through a callback function, typically for cross-domain AJAX requests in browser environments. The response wraps standard geocoding JSON with your specified callback function name. Example response: myCallback({\"results\":[{\"geometry\":{\"lat\":52.5,\"lng\":13.4},\"formatted\":\"Berlin, Germany\",...}],...})" }, { "slug": "OPENCAGE_GEOCODE_GOOGLE_V3_JSON", "name": "Geocode Google v3 JSON", "description": "Tool to perform forward geocoding and return results in Google Geocoding API v3 compatible JSON format. Use when you need Google v3 compatible output for legacy integrations. Note: This is a legacy format that may be discontinued; using the standard JSON format is recommended." }, { "slug": "OPENCAGE_GEOCODE_REVERSE", "name": "Reverse Geocode Coordinates", "description": "Tool to convert coordinates to a human-readable address. Use when you have latitude and longitude and need a readable location." }, { "slug": "OPENCAGE_GEOCODE_XML", "name": "Geocode XML", "description": "Geocode a location query and return results in XML format. Supports both forward geocoding (address to coordinates) and reverse geocoding (coordinates to address). Use this when you need XML-formatted output instead of JSON." }, { "slug": "OPENCAGE_PING_OPENCAGE", "name": "Check API Health", "description": "Tool to check API health and connectivity. Returns 'pong' if the API is reachable. Use when you need to verify that the OpenCage API is accessible and operational." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "opencage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "OpenCage API Key", "type": "string", "description": "Your OpenCage Geocoding API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "opengraph_io", "name": "OpenGraph.io", "logo": "https://logos.composio.dev/api/opengraph_io", "description": "OpenGraph.io provides a simple API to retrieve Open Graph data from websites, even those without properly defined Open Graph tags.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPENGRAPH_IO_CAPTURE_SCREENSHOT", "name": "Capture Screenshot", "description": "Tool to capture high-quality screenshots of any webpage programmatically. Supports full-page captures, custom dimensions, device presets, element-specific screenshots, and quality settings. Screenshots are available for 24 hours after generation. Use when you need to capture visual snapshots of websites with specific rendering requirements or device simulations." }, { "slug": "OPENGRAPH_IO_EXTRACT_SITE", "name": "Extract Site Metadata", "description": "Tool to extract site metadata. Use when you need to retrieve Open Graph and other meta signals from a website." }, { "slug": "OPENGRAPH_IO_SCRAPE_SITE", "name": "Scrape Site", "description": "Tool to scrape a site for its raw HTML and social/OpenGraph metadata. Use when you need the full page content and metadata. Use after confirming the URL." }, { "slug": "OPENGRAPH_IO_SCRAPE_URL", "name": "Scrape URL for HTML", "description": "Tool to scrape raw HTML content from a website with anti-bot protection and optional JavaScript rendering. Use when you need the full HTML source code of a page, especially for sites with bot detection or dynamic content." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "opengraph_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OpenGraph.io App ID", "type": "string", "description": "Your OpenGraph.io app_id for API authentication. You can obtain this after registering an account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "opennutrition", "name": "Opennutrition", "logo": "https://logos.composio.dev/api/opennutrition", "description": "Open Food Facts API provides access to a free, open, and crowdsourced database of food products from around the world, including ingredients, nutritional information, and product images.", "category": "databases", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "opennutrition_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "user_agent", "displayName": "User Agent", "type": "string", "description": "Required: Your application name, version, and contact email in format: AppName/Version (email@example.com)", "required": true, "default": "ComposioApp/1.0 (support@composio.dev)" }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your Open Food Facts username (not email)", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Your Open Food Facts password", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "opennutrition_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "user_agent", "displayName": "User Agent", "type": "string", "description": "Required: Your application name, version, and contact email in format: AppName/Version (email@example.com)", "required": true, "default": "ComposioApp/1.0 (support@composio.dev)" } ], "optional": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Optional: API key for authentication (Note: Open Food Facts primarily uses User-Agent for identification)", "required": false, "default": null } ] } } } ] }, { "slug": "openperplex", "name": "Openperplex", "logo": "https://logos.composio.dev/api/openperplex", "description": "Openperplex API provides powerful, global search capabilities and web content analysis for AI applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPENPERPLEX_CUSTOM_SEARCH", "name": "Custom Search", "description": "Tool to perform a custom search with optional filtering and field selection. Use when you need tailored results based on query, filters, size, or fields." }, { "slug": "OPENPERPLEX_CUSTOM_SEARCH_STREAM", "name": "Custom Search Stream", "description": "Tool to perform custom streaming search with custom prompts. Use when you need AI-powered search responses with custom system and user prompts for more specific or tailored queries. Returns aggregated text response along with optional sources and images." }, { "slug": "OPENPERPLEX_GET_WEBSITE_MARKDOWN", "name": "Get Website Markdown", "description": "Tool to retrieve the markdown content of a specified website. Use after confirming the URL. Supports optional formats like 'gfm' or 'commonmark'." }, { "slug": "OPENPERPLEX_GET_WEBSITE_SCREENSHOT", "name": "Get Website Screenshot", "description": "Tool to capture a screenshot of a website. Use after confirming the target URL is reachable." }, { "slug": "OPENPERPLEX_GET_WEBSITE_TEXT", "name": "Get Website Text", "description": "Tool to retrieve the main text content of a specified website URL. Use when you need content extraction from online articles or pages. Use after confirming the URL is publicly accessible." }, { "slug": "OPENPERPLEX_QUERY_FROM_URL", "name": "Query from URL", "description": "Tool to query documents from a URL. Use when you need to fetch and interrogate web-hosted content with a natural language question." }, { "slug": "OPENPERPLEX_SEARCH", "name": "Search Documents", "description": "Tool to search documents using query parameters. Use when you have a search query and optional filters ready." }, { "slug": "OPENPERPLEX_SEARCH_STREAM", "name": "Search Stream", "description": "Tool to stream search results from OpenPerplex. Use when real-time AI-powered search responses are needed. Returns aggregated text response along with optional sources, images, and citations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "openperplex_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Openperplex API Key", "type": "string", "description": "Your Openperplex API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "openrouter", "name": "Openrouter", "logo": "https://logos.composio.dev/api/openrouter", "description": "OpenRouter is a platform that provides a unified API for accessing various large language models (LLMs) from different providers, allowing developers to integrate multiple AI models seamlessly.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPENROUTER_CREATE_CHAT_COMPLETION", "name": "Create Chat Completion", "description": "Tool to generate a chat-style completion. Use after assembling messages and selecting a model. Supports streaming and function calls. Response format varies across models; use explicit prompt instructions to standardize output. Provider-level rate limits and moderation policies differ per model." }, { "slug": "OPENROUTER_CREATE_COINBASE_CHARGE", "name": "Create Coinbase Charge", "description": "Tool to create a Coinbase charge for crypto payment to add credits to your OpenRouter account. Use when you need to purchase credits using cryptocurrency. Returns calldata needed to fulfill the transaction on the specified blockchain." }, { "slug": "OPENROUTER_CREATE_MESSAGE", "name": "Create Message (Anthropic Format)", "description": "Tool to create a message using Anthropic Messages API format via OpenRouter. Use when you need Claude-compatible chat completion with support for text, images, PDFs, tools, and extended thinking." }, { "slug": "OPENROUTER_GET_CREDITS", "name": "Get Credits", "description": "Tool to get the current API credit balance for the authenticated user. Use before large or batch jobs to verify sufficient balance. A successful response may return total_credits=0, which confirms authentication but will cause all paid model generations to fail. Avoid polling this endpoint; call only as needed." }, { "slug": "OPENROUTER_GET_CURRENT_KEY", "name": "Get Current Key", "description": "Tool to get information about the currently authenticated API key. Use to check usage limits, spending, and key metadata." }, { "slug": "OPENROUTER_GET_GENERATION", "name": "Get Generation", "description": "Tool to retrieve a generation result by its unique ID. Use after a generation completes to fetch metadata like token counts, cost, and latency." }, { "slug": "OPENROUTER_GET_MODELS_COUNT", "name": "Get Models Count", "description": "Tool to get the total count of available models on OpenRouter. Use when you need to know how many models are available without fetching the full list." }, { "slug": "OPENROUTER_LIST_AVAILABLE_MODELS", "name": "List Available Models", "description": "Tool to list available models via OpenRouter API. Use after confirming authentication to fetch the model catalog. Use exact model IDs returned here in OPENROUTER_CREATE_CHAT_COMPLETION or OPENROUTER_CREATE_COMPLETION calls — hard-coded IDs may break when the catalog changes. Use exact author and slug values from this response as inputs to OPENROUTER_LIST_MODEL_ENDPOINTS. Models have varying capabilities (e.g., tools, reasoning); verify individual model capabilities before downstream use. Pricing and latency metadata may be null or approximate — handle missing values in routing logic." }, { "slug": "OPENROUTER_LIST_EMBEDDING_MODELS", "name": "List Embedding Models", "description": "Tool to list all available embeddings models via OpenRouter API. Returns a list of embeddings models with their properties including architecture, pricing, and capabilities." }, { "slug": "OPENROUTER_LIST_MODEL_ENDPOINTS", "name": "OpenRouter List Model Endpoints", "description": "Tool to list endpoints for a specific model. Use after specifying model author and slug to get endpoint details including pricing, context length, and supported parameters. Some metadata fields (e.g., latency, pricing) may be null or approximate; handle missing values in routing logic." }, { "slug": "OPENROUTER_LIST_PROVIDERS", "name": "OpenRouter List Providers", "description": "Tool to list all AI model providers available through the OpenRouter API. Use after authentication to retrieve available provider options for routing configuration. Providers differ in latency, context window sizes, and rate limits — switching providers affects these constraints. Newly added providers may not appear immediately due to catalog propagation delays." }, { "slug": "OPENROUTER_LIST_USER_MODELS", "name": "List User Models", "description": "Tool to list models filtered by user provider preferences, privacy settings, and guardrails. Use after authenticating to get models tailored to the user's configuration." }, { "slug": "OPENROUTER_LIST_ZDR_ENDPOINTS", "name": "OpenRouter List ZDR Endpoints", "description": "Tool to preview the impact of Zero Data Retention (ZDR) on the available endpoints. Use to see which model endpoints remain accessible when ZDR is enabled." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "openrouter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OpenRouter API Key", "type": "string", "description": "Your OpenRouter API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "opensearch", "name": "Opensearch", "logo": "https://logos.composio.dev/api/opensearch", "description": "Open-source search and analytics engine for log analytics, real-time application monitoring, and website search", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "opensearch_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "full", "displayName": "OpenSearch URL", "type": "string", "description": "Full URL to your OpenSearch cluster (e.g., https://localhost:9200 or https://your-domain.com:9200)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "openweather_api", "name": "OpenWeather API", "logo": "https://logos.composio.dev/api/openweather_api", "description": "Provides access to current weather data, forecasts, and historical weather data for any location worldwide.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "OPENWEATHER_API_DELETE_WEATHER_STATION", "name": "Delete Weather Station", "description": "Tool to delete a registered weather station. Use after identifying a station to remove. Returns confirmation message upon success." }, { "slug": "OPENWEATHER_API_GET5_DAY_FORECAST", "name": "Get 5 Day Forecast", "description": "Tool to get a 5-day forecast every 3 hours (up to 40 UTC timestamps). Exactly one location identifier required per call: `q`, `id`, `zip`, or `lat`+`lon` pair. Use `city.timezone` offset to convert timestamps to local time before grouping into daily summaries." }, { "slug": "OPENWEATHER_API_GET_AIR_POLLUTION_CURRENT", "name": "Get Current Air Pollution Data", "description": "Tool to fetch current air pollution data for a location. Use when you need real-time air quality details by latitude and longitude." }, { "slug": "OPENWEATHER_API_GET_AIR_POLLUTION_FORECAST", "name": "Get Air Pollution Forecast", "description": "Tool to get forecasted air pollution data for a specific location. Use after confirming latitude and longitude. Forecast availability may be limited for remote or oceanic coordinates; verify response timestamps to confirm returned data represents a true forecast rather than a current snapshot." }, { "slug": "OPENWEATHER_API_GET_AIR_POLLUTION_HISTORY", "name": "Get Air Pollution History", "description": "Tool to retrieve historical air pollution data. Use when you need past air quality levels for a specific latitude/longitude and time range." }, { "slug": "OPENWEATHER_API_GET_CIRCLE_CITY_WEATHER", "name": "Get Circle City Weather", "description": "Tool to search for current weather data in cities around a geographic point. Use when you need to fetch weather within a radius circle after confirming latitude and longitude." }, { "slug": "OPENWEATHER_API_GET_CURRENT_WEATHER", "name": "Get Current Weather", "description": "Tool to retrieve current weather data for a location. Use when you need up-to-the-minute weather info. Exactly one location identifier must be provided per call: either `q`, `id`, `zip`, or the pair `lat`+`lon`. Passing multiple identifiers causes errors or ambiguous matches." }, { "slug": "OPENWEATHER_API_GET_GEOCODING_BY_ZIP", "name": "Get Geocoding by Zip Code", "description": "Tool to convert zip/post code into geographic coordinates. Use when you need latitude and longitude for a specific postal code." }, { "slug": "OPENWEATHER_API_GET_GEOCODING_DIRECT", "name": "Get Direct Geocoding", "description": "Tool to convert a location name into geographic coordinates. Use when you need latitude and longitude for a given location after confirming the precise name." }, { "slug": "OPENWEATHER_API_GET_GEOCODING_REVERSE", "name": "Get Reverse Geocoding", "description": "Tool to convert geographic coordinates into a location name. Use when you need city, state, and country info from latitude and longitude." }, { "slug": "OPENWEATHER_API_GET_STATION_MEASUREMENTS", "name": "Get Station Measurements", "description": "Tool to retrieve aggregated measurements from a weather station with minute, hour, or day granularity. Use when you need historical weather data from a specific registered station." }, { "slug": "OPENWEATHER_API_GET_UV_INDEX", "name": "Get Current UV Index", "description": "Tool to retrieve current UV index for a location. Use when you need up-to-the-minute UV index by latitude and longitude." }, { "slug": "OPENWEATHER_API_GET_UV_INDEX_FORECAST", "name": "Get UV Index Forecast", "description": "Tool to retrieve UV index forecast for a specific location. Use when you need upcoming UV index values after confirming latitude and longitude. Returns up to 8 days of data. Data may be sparse or absent for ocean and remote locations; an empty response means no data available, not safe UV conditions." }, { "slug": "OPENWEATHER_API_GET_UV_INDEX_HISTORY", "name": "Get UV Index History", "description": "Tool to retrieve historical UV index data for a specified location and time range. Use when you need to analyze past UV exposure trends after confirming coordinates and time period." }, { "slug": "OPENWEATHER_API_GET_WEATHER_MAP_TILE", "name": "Get Weather Map Tile (2.0)", "description": "Tool to fetch Weather Maps 2.0 tile images. Use when you need dynamic weather layers at specific zoom and coordinates with advanced styling options." }, { "slug": "OPENWEATHER_API_GET_WEATHER_STATION", "name": "Get Weather Station", "description": "Tool to get information about a specific weather station by its ID. Use when you need details about a particular station." }, { "slug": "OPENWEATHER_API_GET_WEATHER_STATIONS", "name": "Get Weather Stations", "description": "Tool to list all weather stations added to your account. Use after setting up your OpenWeather API key." }, { "slug": "OPENWEATHER_API_GET_WEATHER_TRIGGERS", "name": "Get Weather Triggers", "description": "Tool to retrieve weather triggers for specific conditions. Use after defining trigger criteria." }, { "slug": "OPENWEATHER_API_POST_ADD_WEATHER_STATION", "name": "Add Weather Station", "description": "Tool to add a new weather station to your account. Use when you need to register a station before sending custom data." }, { "slug": "OPENWEATHER_API_POST_SUBMIT_STATION_MEASUREMENTS", "name": "Submit Station Measurements", "description": "Tool to submit weather measurements from a registered station. Use when you need to send temperature, wind, pressure, humidity, or precipitation data for a station." }, { "slug": "OPENWEATHER_API_UPDATE_WEATHER_STATION", "name": "Update Weather Station", "description": "Tool to update weather station details. Use when you need to modify the name, location, or external ID of an existing station." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "openweather_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OpenWeather API Key", "type": "string", "description": "Your 32-character OpenWeather API key. Find it under the 'API keys' tab at https://home.openweathermap.org/api_keys. New keys can take a few hours to activate.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "optimoroute", "name": "OptimoRoute", "logo": "https://logos.composio.dev/api/optimoroute", "description": "OptimoRoute is an online route optimization and planning solution for delivery, logistics, and field service companies.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OPTIMOROUTE_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order or update an existing order in OptimoRoute. Use when you need to add delivery, pickup, or task orders to the system with location, time windows, and other constraints." }, { "slug": "OPTIMOROUTE_CREATE_OR_UPDATE_ORDERS", "name": "Create or Update Orders", "description": "Tool to bulk create, update, or replace multiple orders at once without geocoding. Use when you need to add new orders or modify existing ones efficiently. Supports up to 500 orders per request." }, { "slug": "OPTIMOROUTE_DELETE_ALL_ORDERS", "name": "Delete All Orders", "description": "Tool to remove all orders and planned routes for a specified date. Use when you need to clear orders for a specific date or delete all orders system-wide if no date is provided." }, { "slug": "OPTIMOROUTE_DELETE_ORDER", "name": "Delete Order", "description": "Tool to remove a single order from the OptimoRoute system. Use when you need to delete a specific order by its orderNo." }, { "slug": "OPTIMOROUTE_DELETE_ORDERS", "name": "Delete Orders", "description": "Tool to delete one or more orders from the system in bulk (max 500 per request). Use when you need to remove orders, either individually or in batch operations." }, { "slug": "OPTIMOROUTE_GET_COMPLETION_DETAILS", "name": "Get Order Completion Details", "description": "Tool to retrieve completion details for one or more orders including proof of delivery data. Use when you need to check order completion status, timing details, and form data." }, { "slug": "OPTIMOROUTE_GET_DRIVERS", "name": "Get Drivers", "description": "Tool to retrieve all drivers in the system. Use when you need up-to-date driver data including status and contact information." }, { "slug": "OPTIMOROUTE_GET_EVENTS", "name": "Get Mobile Events", "description": "Tool to retrieve mobile events from drivers' field operations. Use when you need to track order completions, status changes (success, failed, on_duty, off_duty), and other field events for the currently active plan." }, { "slug": "OPTIMOROUTE_GET_ORDERS", "name": "Get Orders", "description": "Tool to retrieve one or more orders from OptimoRoute. Use when you need detailed order information including location, time windows, and assignment details." }, { "slug": "OPTIMOROUTE_GET_PLANNING_STATUS", "name": "Get Planning Status", "description": "Tool to retrieve the status of an active planning/optimization process. Use when you need to check the progress of a planning job by providing its ID." }, { "slug": "OPTIMOROUTE_GET_ROUTES", "name": "Get Planned Routes", "description": "Tool to retrieve all planned routes for a given date. Use when you need a detailed view of routes including optional stops, route parameters, and unassigned orders." }, { "slug": "OPTIMOROUTE_GET_SCHEDULING_INFO", "name": "Get Order Scheduling Info", "description": "Tool to retrieve scheduling information for a specific order. Use when you need to check if an order is scheduled and get details like driver assignment, timing, and position." }, { "slug": "OPTIMOROUTE_SEARCH_ORDERS", "name": "Search Orders", "description": "Tool to search for orders in OptimoRoute based on criteria. Use when you need to find orders by date range, order identifiers, or order status. At least one of 'orders' or 'date_range' must be provided." }, { "slug": "OPTIMOROUTE_START_PLANNING", "name": "Start Planning", "description": "Tool to start the planning/optimization process for a specified date or date range. Use when you need to generate optimized routes for orders and drivers. Requires orders to be created before planning can begin." }, { "slug": "OPTIMOROUTE_STOP_PLANNING", "name": "Stop Planning", "description": "Tool to stop an active planning/optimization process. Use when you need to halt a running planning job by providing its ID." }, { "slug": "OPTIMOROUTE_UPDATE_DRIVER_PARAMETERS", "name": "Update Driver Parameters", "description": "Tool to update driver parameters for a specific date including work times, vehicle assignment, and start/end locations. Use when you need to modify driver availability or routing constraints. Note that this unschedules existing routes for the driver on the specified date." }, { "slug": "OPTIMOROUTE_UPDATE_DRIVERS_PARAMETERS", "name": "Update Drivers Parameters", "description": "Tool to update parameters of multiple drivers for specified dates in bulk (max 500 per request). Use when you need to modify driver configuration including work hours, vehicle assignments, and location settings. Note: Existing routes for the specified drivers and dates will be unscheduled." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "optimoroute_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "OptimoRoute API Key", "type": "string", "description": "The API key required for authenticating requests to the OptimoRoute API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "orimon", "name": "Orimon", "logo": "https://logos.composio.dev/api/orimon", "description": "Orimon is a conversational AI platform that helps businesses deploy ChatGPT-like sales chatbots to close deals 24/7", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "orimon_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key for authentication. Navigate to Profile in the user dropdown (top right) to generate your secret key.", "required": true, "default": null } ], "optional": [ { "name": "tenant_id", "displayName": "Tenant ID", "type": "string", "description": "Your bot identifier. Navigate to bot configuration page and copy the value after \"tenant/\" in the URL (e.g., if URL is tenant/3eea0304-5e9d-437e-82a3-9e77af6f15ea, enter 3eea0304-5e9d-437e-82a3-9e77af6f15ea). This is used in the request body for API calls.", "required": false, "default": null } ] } } } ] }, { "slug": "ory", "name": "Ory", "logo": "https://logos.composio.dev/api/ory", "description": "Identity and access management platform providing authentication, authorization, and user management solutions", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ory_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Project Slug", "type": "string", "description": "Your Ory Network project slug (e.g., \"playground\" for playground.projects.oryapis.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Project API Key (ory_apikey_* or ory_pat_*) from Ory Console → Project Settings → API Keys. Used for admin operations within a specific project.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "outline", "name": "Outline", "logo": "https://logos.composio.dev/api/outline", "description": "Team knowledge base and wiki for managing documentation and collaboration", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 101, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OUTLINE_ACTIVATE_USER", "name": "Activate User", "description": "Tool to activate a previously suspended user in Outline. Activating a user allows them to sign in again and will cause billing totals to be re-calculated in the hosted version. Use when you need to restore access for a suspended user." }, { "slug": "OUTLINE_ADD_COLLECTION_GROUP", "name": "Add Group to Collection", "description": "Tool to add a group to a collection in Outline. Use when you need to grant all members of a group access to a specific collection with read or write permissions." }, { "slug": "OUTLINE_ADD_DOCUMENT_USER", "name": "Add Document User", "description": "Tool to add a user membership to a document. Use when you need to grant a user access to a specific document." }, { "slug": "OUTLINE_ADD_GROUP_TO_DOCUMENT", "name": "Add Group to Document", "description": "Tool to give all members in a group access to a document. Use when you need to grant document-level access permissions to an entire group at once, rather than adding individual users one by one." }, { "slug": "OUTLINE_ADD_GROUP_USER", "name": "Add User to Group", "description": "Tool to add a user to a group. Use when you need to grant a user membership in a specific group." }, { "slug": "OUTLINE_ADD_USER_TO_COLLECTION", "name": "Add User to Collection", "description": "Tool to add a user to a collection with specified permissions. Use when you need to grant a user access to a specific collection." }, { "slug": "OUTLINE_ARCHIVE_DOCUMENT", "name": "Archive Document", "description": "Tool to archive a document in Outline. Use when you need to move outdated information out of sight while retaining the ability to search and restore it later." }, { "slug": "OUTLINE_CREATE_ATTACHMENT", "name": "Create Attachment", "description": "Tool to create an attachment in Outline. This creates a database record and returns the inputs needed to generate a signed URL and upload the file from the client to cloud storage. Use when you need to prepare an attachment for upload to associate with a document." }, { "slug": "OUTLINE_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection in Outline. Use when you need to organize documents by creating a new collection with a specific name, description, icon, color, and permission settings." }, { "slug": "OUTLINE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on an Outline document. Use when you need to add a comment or reply to a document. Either text or data field is required for the comment body." }, { "slug": "OUTLINE_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to create a new document in Outline. Use when you need to create a new document with specified title, content, and metadata. Documents can be created as drafts or immediately published to a collection. At least one of collectionId or parentDocumentId is required if publish is true." }, { "slug": "OUTLINE_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in Outline. Use when you need to organize users into logical groups for easier permission management across collections." }, { "slug": "OUTLINE_CREATE_O_AUTH_CLIENT", "name": "Create OAuth Client", "description": "Tool to create a new OAuth client in Outline. Use when you need to create an OAuth client application that can be used to authenticate users and access the API on their behalf." }, { "slug": "OUTLINE_CREATE_SHARE", "name": "Create Share", "description": "Tool to create a public share link for an Outline document. Use when you need to generate a shareable URL that allows access without workspace membership. If you request multiple shares for the same document with the same API key, the same share object will be returned." }, { "slug": "OUTLINE_CREATE_STAR", "name": "Create Star", "description": "Tool to create a star for a document or collection in Outline. Use when you need to star (favorite) a document or collection so it appears in the user's sidebar. One of either documentId or collectionId must be provided." }, { "slug": "OUTLINE_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template in Outline. Use when you need to create a reusable template that can be used as a starting point for new documents. Templates can optionally be scoped to a specific collection." }, { "slug": "OUTLINE_CREATE_VIEW", "name": "Create View", "description": "Tool to create a view for a document. Use when you need to record that a document has been viewed. Note: It is recommended that views are not created from outside of the Outline UI." }, { "slug": "OUTLINE_DELETE_ATTACHMENT", "name": "Delete Attachment", "description": "Tool to delete an attachment from Outline. Deleting an attachment is permanent. It will not delete references or links to the attachment that may exist in your documents." }, { "slug": "OUTLINE_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to delete a collection and all of its documents from Outline. Use when you need to permanently remove a collection. This action cannot be undone, so use with caution." }, { "slug": "OUTLINE_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment in Outline. Use when you need to remove a comment from a document. If the comment is a top-level comment, all its children will be deleted as well." }, { "slug": "OUTLINE_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document in Outline. Deleting a document moves it to the trash by default. If not restored within 30 days it is permanently deleted. Use permanent=true to destroy the document immediately with no way to recover." }, { "slug": "OUTLINE_DELETE_FILE_OPERATION", "name": "Delete File Operation", "description": "Tool to delete a file operation and its associated files from Outline. Use when you need to clean up completed or failed import/export operations." }, { "slug": "OUTLINE_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group from Outline. Deleting a group will cause all of its members to lose access to any collections the group has previously been added to. This action cannot be undone, so use with caution." }, { "slug": "OUTLINE_DELETE_OAUTH_AUTHENTICATION", "name": "Delete OAuth Authentication", "description": "Tool to delete an OAuth authentication in Outline. Use when you need to revoke a third-party application's access to a user's account. This action removes the OAuth authentication connection between Outline and the third-party application." }, { "slug": "OUTLINE_DELETE_OAUTH_CLIENT", "name": "Delete OAuth Client", "description": "Tool to delete an OAuth client from Outline. Permanently delete an OAuth client and revoke all associated access tokens. This action cannot be undone, so use with caution." }, { "slug": "OUTLINE_DELETE_STAR", "name": "Delete Star", "description": "Tool to delete a star from a document in Outline. Use when you need to remove a star from a user's starred documents list." }, { "slug": "OUTLINE_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template in Outline. This will soft-delete the template, it can be restored later. Use when you need to remove a template from the workspace." }, { "slug": "OUTLINE_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user in Outline. Deleting a user removes the object entirely. In almost every circumstance it is preferable to suspend a user, as a deleted user can be recreated by signing in with SSO again. Use when you need to permanently remove a user from the workspace." }, { "slug": "OUTLINE_DUPLICATE_DOCUMENT", "name": "Duplicate Document", "description": "Tool to duplicate an Outline document. Use when you need to create a copy of an existing document, optionally including all child documents in the hierarchy." }, { "slug": "OUTLINE_DUPLICATE_TEMPLATE", "name": "Duplicate Template", "description": "Tool to duplicate an Outline template. Use when you need to create a copy of an existing template, optionally with a new title or in a different collection." }, { "slug": "OUTLINE_EMPTY_DOCUMENTS_TRASH", "name": "Empty Documents Trash", "description": "Tool to permanently delete all documents in the trash. Use when you need to empty the trash and remove all trashed documents permanently. WARNING: This action is irreversible and only available to admin users." }, { "slug": "OUTLINE_EXPORT_ALL_COLLECTIONS", "name": "Export All Collections", "description": "Tool to export all collections and their documents in bulk. Use when you need to create a backup or export of all workspace collections. Returns a FileOperation object for tracking export progress." }, { "slug": "OUTLINE_EXPORT_COLLECTION", "name": "Export Collection", "description": "Tool to export a collection in markdown, JSON, or HTML format. Triggers a bulk export that includes all documents and attachments. If documents are nested, they will be organized in folders within the zip file. Returns a fileOperation object to track progress." }, { "slug": "OUTLINE_EXPORT_DOCUMENT", "name": "Export Document", "description": "Tool to export a document from Outline in Markdown, HTML, or PDF format. The response format is determined by the Accept header (text/markdown, text/html, or application/pdf). Use when you need to download or extract document content for external processing, archiving, or sharing." }, { "slug": "OUTLINE_GET_ATTACHMENT_REDIRECT", "name": "Get Attachment Redirect URL", "description": "Tool to retrieve an attachment redirect URL from Outline. Loads an attachment from where it is stored based on the id. If the attachment is private, a temporary signed URL with embedded credentials is generated on demand. Use when you need to access or download an attachment." }, { "slug": "OUTLINE_GET_AUTH_CONFIG", "name": "Get authentication config", "description": "Tool to retrieve authentication configuration options for an Outline workspace. Use when you need to discover the workspace name, hostname, or available SSO/OAuth authentication services before user login." }, { "slug": "OUTLINE_GET_COLLECTION", "name": "Get Collection Info", "description": "Tool to retrieve a collection by its unique identifier. Use when you need to fetch detailed information about a specific collection including its name, description, settings, and permissions." }, { "slug": "OUTLINE_GET_COLLECTION_DOCUMENTS", "name": "Get Collection Documents", "description": "Tool to retrieve a collection's document structure as a tree of navigation nodes. Use when you need to explore the document hierarchy within a collection." }, { "slug": "OUTLINE_GET_COMMENT", "name": "Get Comment", "description": "Tool to retrieve a comment by its ID from Outline. Use when you need to fetch detailed information about a specific comment including its content, author, timestamps, and resolution status." }, { "slug": "OUTLINE_GET_DOCUMENT_INFO", "name": "Get Document Info", "description": "Tool to retrieve a document from Outline by its UUID, urlId, or shareId. Returns complete document information including title, content, metadata, timestamps, and access policies. Use when you need to fetch document details or content." }, { "slug": "OUTLINE_GET_DOCUMENTS_DOCUMENTS", "name": "Get Document Children Structure", "description": "Tool to retrieve a document's child structure. Returns the nested document tree (hierarchy) for the children of the specified document. Use when you need to explore document organization or navigate the document hierarchy." }, { "slug": "OUTLINE_GET_FILE_OPERATION_INFO", "name": "Get File Operation Info", "description": "Tool to retrieve the details and current status of a file operation by its unique identifier. Use when you need to check the progress of import or export operations." }, { "slug": "OUTLINE_GET_GROUP_INFO", "name": "Get Group Info", "description": "Tool to retrieve a group by its unique identifier. Returns group details including name and member count. Use when you need to fetch information about a specific group." }, { "slug": "OUTLINE_GET_OAUTH_CLIENT_INFO", "name": "Get OAuth Client Info", "description": "Tool to retrieve an OAuth client from Outline by its id or clientId. Returns complete OAuth client configuration including name, scopes, and redirect URIs. Use when you need to fetch OAuth client details." }, { "slug": "OUTLINE_GET_REVISION_INFO", "name": "Get Revision Info", "description": "Tool to retrieve a revision by its ID from Outline. A revision is a snapshot of a document at a specific point in time. Use when you need to fetch historical document content or view editing history." }, { "slug": "OUTLINE_GET_SHARE_INFO", "name": "Get Share Info", "description": "Tool to retrieve a share object by its unique identifier or by the associated document ID. Returns complete share information including URL, visibility settings, access permissions, and view statistics. Use when you need to fetch details about a shared document." }, { "slug": "OUTLINE_GET_TEMPLATE_INFO", "name": "Get Template Info", "description": "Tool to retrieve a template by its unique identifier. Use when you need to fetch detailed information about a specific template including its title, content, and metadata." }, { "slug": "OUTLINE_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve a user by their unique identifier. Returns user details including name, email, avatar, role, and status. Use when you need to fetch information about a specific user." }, { "slug": "OUTLINE_INVITE_USERS", "name": "Invite Users", "description": "Tool to invite users to the Outline workspace. Use when you need to send email invitations to one or more users to join the workspace." }, { "slug": "OUTLINE_LIST_ARCHIVED_DOCUMENTS", "name": "List Archived Documents", "description": "List all archived documents in the Outline workspace. Returns paginated archived documents that the current user has access to, with metadata and authorization policies. Use limit and offset for pagination through large result sets." }, { "slug": "OUTLINE_LIST_COLLECTION_GROUP_MEMBERSHIPS", "name": "List Collection Group Memberships", "description": "Tool to list all group memberships for a specific collection in Outline. Use when you need to see which groups have access to a collection and their permission levels. Returns both group details and membership relationships with permissions." }, { "slug": "OUTLINE_LIST_COLLECTION_MEMBERSHIPS", "name": "List collection memberships", "description": "Tool to list all individual user memberships for a collection. Use when you need to see who has access to a specific collection and their permission levels. Note: This only returns individual user memberships, not group memberships." }, { "slug": "OUTLINE_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all collections that the authenticated user has access to. Use when you need to retrieve all collections, optionally filtered by name or status, with pagination and sorting support." }, { "slug": "OUTLINE_LIST_COMMENTS", "name": "List Comments", "description": "Tool to retrieve all comments with optional filtering by document or collection. Use when you need to list comments, view comment threads, or monitor discussions. Supports pagination and sorting for large result sets. Returns comment data including content, authors, timestamps, and resolution status." }, { "slug": "OUTLINE_LIST_DATA_ATTRIBUTES", "name": "List Data Attributes", "description": "Tool to list all data attributes in Outline. Use when you need to retrieve custom data attributes that can be attached to documents for structured metadata." }, { "slug": "OUTLINE_LIST_DELETED_DOCUMENTS", "name": "List Deleted Documents", "description": "Tool to list all deleted documents in the workspace that the current user has access to. Use when you need to retrieve, review, or restore documents that have been deleted. Supports pagination and sorting to efficiently navigate through large numbers of deleted documents." }, { "slug": "OUTLINE_LIST_DOCUMENT_GROUP_MEMBERSHIPS", "name": "List Document Group Memberships", "description": "Tool to list a document's group memberships. Use when you need to see which groups have access to a specific document and their permission levels." }, { "slug": "OUTLINE_LIST_DOCUMENT_MEMBERSHIPS", "name": "List document memberships", "description": "Tool to list users with direct membership to a document. Use when you need to see who has direct access to a specific document and their permission levels. Note: This returns only users with direct memberships. To list all users with access to a document (including through group memberships), use documents.users instead." }, { "slug": "OUTLINE_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to list all documents in your Outline workspace. Returns published documents and draft documents belonging to the current user. Use filters to narrow results by collection, creator, status, or document relationships. Supports pagination for large document sets." }, { "slug": "OUTLINE_LIST_DOCUMENT_USERS", "name": "List Document Users", "description": "Tool to list all users with access to a document. Returns all users who have any level of access to the specified document. Use when you need to see who can view or edit a document." }, { "slug": "OUTLINE_LIST_DRAFT_DOCUMENTS", "name": "List Draft Documents", "description": "Tool to list all draft documents belonging to the current user. Use when you need to retrieve unpublished documents. Supports filtering by collection, date recency, pagination, and sorting." }, { "slug": "OUTLINE_LIST_EVENTS", "name": "List Events", "description": "Tool to list all events from the audit trail. Use when you need to track actions taken in the knowledge base, such as document creation, permission changes, or user activity. Events provide a comprehensive audit trail for compliance and monitoring." }, { "slug": "OUTLINE_LIST_FILE_OPERATIONS", "name": "List File Operations", "description": "Tool to list all file operations for the workspace. Returns background jobs for importing or exporting files, filtered by type. Use to monitor export/import progress and retrieve download URLs for completed operations." }, { "slug": "OUTLINE_LIST_GROUP_MEMBERSHIPS", "name": "List Group Memberships", "description": "Tool to list all members of a specific group in Outline. Use when you need to see which users belong to a group. Returns user details and membership relationships." }, { "slug": "OUTLINE_LIST_GROUPS", "name": "List Groups", "description": "Tool to list all groups in the workspace. Groups organize users and manage permissions for collections. Use when you need to retrieve all groups, optionally filtered by name, with pagination and sorting support." }, { "slug": "OUTLINE_LIST_O_AUTH_AUTHENTICATIONS", "name": "List OAuth Authentications", "description": "Tool to list all OAuth authentications for the current user. Use when you need to see which third-party applications have been authorized to access the user's account." }, { "slug": "OUTLINE_LIST_OAUTH_CLIENTS", "name": "List OAuth Clients", "description": "Tool to list all OAuth clients accessible to the authenticated user. Use when you need to retrieve OAuth clients for third-party integrations. Returns both clients created by the user and published clients available to the workspace." }, { "slug": "OUTLINE_LIST_RECENTLY_VIEWED_DOCUMENTS", "name": "List Recently Viewed Documents", "description": "Tool to list all recently viewed documents by the current user. Returns documents ordered by when they were last viewed. Supports pagination and sorting for large result sets." }, { "slug": "OUTLINE_LIST_REVISIONS", "name": "List Revisions", "description": "Tool to list all revisions for a specific document. Revisions represent historical snapshots of document content and are useful for tracking changes over time. Use when you need to view a document's editing history or restore to a previous version." }, { "slug": "OUTLINE_LIST_SHARES", "name": "List Shares", "description": "Tool to list all share links in the workspace. Use when you need to retrieve all public document shares, optionally filtered by search query, with pagination and sorting support." }, { "slug": "OUTLINE_LIST_STARS", "name": "List Stars", "description": "Tool to list all starred documents and collections for the authenticated user. Use when you need to retrieve bookmarked items that users have marked for quick access in their sidebar." }, { "slug": "OUTLINE_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all templates available to the current user. Use when you need to retrieve all templates, optionally filtered by collection or name, with pagination and sorting support. Templates not associated with a collection are workspace-wide." }, { "slug": "OUTLINE_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the workspace. Use when you need to retrieve all users, optionally filtered by name, email, or status, with pagination and sorting support." }, { "slug": "OUTLINE_LIST_VIEWS", "name": "List Views", "description": "Tool to list all users that have viewed a specific document and the overall view count. Use when you need to see who has accessed a document and how many times they've viewed it. Returns view records including first/last view timestamps and total view counts per user." }, { "slug": "OUTLINE_MOVE_DOCUMENT", "name": "Move Document", "description": "Tool to move a document to a new location or collection in Outline. Use when you need to reorganize documents by moving them to a different collection or nesting them under a different parent document." }, { "slug": "OUTLINE_REDIRECT_FILE_OPERATION", "name": "Redirect File Operation", "description": "Tool to retrieve a file from Outline by file operation ID. Loads the resulting file from where it is stored based on the id. A temporary signed URL with embedded credentials is generated on demand. Use when you need to access or download an exported file." }, { "slug": "OUTLINE_REMOVE_COLLECTION_GROUP", "name": "Remove Collection Group", "description": "Tool to remove a group from a collection, revoking access for all group members. Use when you need to remove group-level access to a collection. Note that members may retain access through other groups or individual memberships." }, { "slug": "OUTLINE_REMOVE_COLLECTION_USER", "name": "Remove Collection User", "description": "Tool to remove a user from a collection. Use when you need to revoke a user's access to a specific collection in Outline." }, { "slug": "OUTLINE_REMOVE_DOCUMENT_USER", "name": "Remove Document User", "description": "Tool to remove a user membership from a document. Use when you need to revoke a user's access to a specific document." }, { "slug": "OUTLINE_REMOVE_GROUP_FROM_DOCUMENT", "name": "Remove Group from Document", "description": "Tool to remove a group from a document, revoking access for all group members. Use when you need to revoke document-level access for an entire group at once." }, { "slug": "OUTLINE_REMOVE_GROUP_USER", "name": "Remove Group User", "description": "Tool to remove a user from a group. Use when you need to revoke a user's group membership in Outline." }, { "slug": "OUTLINE_RESTORE_DOCUMENT", "name": "Restore Document", "description": "Tool to restore a document in Outline. If a document has been archived or deleted, it can be restored. Optionally a revision can be passed to restore the document to a previous point in time." }, { "slug": "OUTLINE_RESTORE_TEMPLATE", "name": "Restore Template", "description": "Tool to restore a previously deleted template in Outline. Use when you need to recover a template that was soft-deleted." }, { "slug": "OUTLINE_RETRIEVE_AUTH_INFO", "name": "Retrieve Auth Info", "description": "Tool to retrieve authentication details for the current API key. Use when you need to verify that an API token is valid or obtain identifying information for the authenticated user and workspace." }, { "slug": "OUTLINE_REVOKE_SHARE", "name": "Revoke Share", "description": "Tool to revoke a share in Outline, making the share link inactive so it can no longer be used to access the document. Use when you need to disable public access to a shared document." }, { "slug": "OUTLINE_ROTATE_OAUTH_CLIENT_SECRET", "name": "Rotate OAuth Client Secret", "description": "Tool to rotate the secret for an OAuth client in Outline. Use when you need to generate a new client secret for an OAuth client. The old secret will be invalidated immediately." }, { "slug": "OUTLINE_SEARCH_DOCUMENTS", "name": "Search Documents", "description": "Tool to search all documents in your Outline workspace using keywords. Results are restricted to documents accessible by the current access token. Use filters to narrow results by collection, user, status, or timeframe. Supports sorting by relevance, date, or title." }, { "slug": "OUTLINE_SEARCH_DOCUMENT_TITLES", "name": "Search Document Titles", "description": "Tool to search document titles in Outline workspace using keywords. Unlike full document search, this searches only titles and returns faster results. Use when you need to quickly find documents by their title. Supports filters for collection, creator, status, and date range." }, { "slug": "OUTLINE_SUSPEND_USER", "name": "Suspend User", "description": "Tool to suspend a user in Outline. Suspending a user prevents them from signing in and they are not counted against billing totals. Use when you need to temporarily disable a user's access without deleting their account." }, { "slug": "OUTLINE_TEMPLATIZE_DOCUMENT", "name": "Create Template from Document", "description": "Tool to create a template from an existing Outline document. Use when you need to convert a document into a reusable template for your workspace." }, { "slug": "OUTLINE_UNPUBLISH_DOCUMENT", "name": "Unpublish Document", "description": "Tool to unpublish a document in Outline. Unpublishing moves the document back to draft status and removes it from the collection. Use when you need to make a published document private again." }, { "slug": "OUTLINE_UPDATE_COLLECTION", "name": "Update Collection", "description": "Tool to update an existing collection's properties in Outline. Use when you need to modify collection settings such as name, description, icon, color, sharing settings, or permission level." }, { "slug": "OUTLINE_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update a comment in Outline. Use when you need to modify the content of an existing comment. The comment body should be provided in ProseMirror document format with type and content fields." }, { "slug": "OUTLINE_UPDATE_DOCUMENT", "name": "Update Document", "description": "Tool to update a document in Outline. Use when you need to modify an existing document's title, content, or metadata. At least the document ID is required." }, { "slug": "OUTLINE_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update an existing group's name in Outline. Use when you need to rename a group." }, { "slug": "OUTLINE_UPDATE_O_AUTH_CLIENT", "name": "Update OAuth Client", "description": "Tool to update an existing OAuth client in Outline. Use when you need to modify an OAuth client's properties such as name, description, redirect URIs, or published status." }, { "slug": "OUTLINE_UPDATE_SHARE", "name": "Update Share", "description": "Tool to update a share in Outline. Use when you need to change a share's published status, which controls whether authentication is required to access the shared link." }, { "slug": "OUTLINE_UPDATE_STAR", "name": "Update Star", "description": "Tool to update a star's position in the Outline sidebar. Use when you need to reorder a user's starred documents or collections by changing the display index." }, { "slug": "OUTLINE_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing template in Outline. Use when you need to modify a template's title, content, icon, color, or other properties. At least the template ID is required." }, { "slug": "OUTLINE_UPDATE_USER", "name": "Update User", "description": "Tool to update a user's name, avatar, or language preference in Outline. If no ID is provided, updates the authenticated user. Use when you need to modify user profile information." }, { "slug": "OUTLINE_UPDATE_USER_ROLE", "name": "Update User Role", "description": "Tool to change a user's role in Outline workspace. Use when you need to promote a user to admin, demote an admin to member, or change a user to viewer role. Only available to admin users." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "outline_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your Outline workspace's web address, e.g. https://app.getoutline.com or your own domain if self-hosted. Copy it from your browser's address bar — no trailing slash.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Outline API key, a secret token starting with 'ol_api_'. Create one in Outline under Settings → API Keys and copy it when shown.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "outreach", "name": "Outreach", "logo": "https://logos.composio.dev/api/outreach", "description": "Sales engagement platform for automating and optimizing outreach workflows", "category": "sales & crm", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "outreach_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "accounts.read,accounts.write,accounts.all,prospects.read,prospects.write,prospects.all,users.read,sequences.read,opportunities.read,mailings.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "outscraper", "name": "Outscraper", "logo": "https://logos.composio.dev/api/outscraper", "description": "Cutting-edge technologies for data scraping and lead generation from Google Maps, Google Search, and other services.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OUTSCRAPER_GET_REQUEST_ARCHIVE", "name": "Get Request Archive", "description": "Tool to fetch request data from the archive by request ID. Use when you need to retrieve the status and results of an asynchronous scraping task. Results are available for 2 hours after request completion." }, { "slug": "OUTSCRAPER_GET_REQUESTS_HISTORY", "name": "Get Requests History", "description": "Tool to fetch recent request history with pagination support (up to 100 requests per page). Use when you need to retrieve a list of all API requests made by the user, including their status, timestamps, and metadata." }, { "slug": "OUTSCRAPER_GET_TASKS", "name": "Get Tasks", "description": "Tool to fetch user UI tasks with pagination support. Use when you need to retrieve task history or check active tasks. Tasks are available for 2 hours after completion." }, { "slug": "OUTSCRAPER_PROFILE_BALANCE", "name": "Get Profile Balance", "description": "Tool to retrieve current account balance and usage information for the Outscraper profile. Use when you need to check available credits or monitor API usage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "outscraper_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Sign in and copy your API Token from your Profile at https://app.outscraper.com/profile", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "owl_protocol", "name": "Owl Protocol", "logo": "https://logos.composio.dev/api/owl_protocol", "description": "Owl Protocol empowers developers to build feature-rich, user-friendly Web3 applications for mainstream adoption through modular infrastructure that simplifies blockchain development.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "OWL_PROTOCOL_DEPLOY_COLLECTION", "name": "Deploy ERC721 Collection", "description": "Tool to deploy a new ERC721 collection contract. Use after creating a project to programmatically deploy the collection on a specified blockchain." }, { "slug": "OWL_PROTOCOL_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to retrieve details of a specific project. Use when you need metadata about a project after authenticating with your API key." }, { "slug": "OWL_PROTOCOL_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects. Use when you need to retrieve all projects accessible by the authenticated user." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "owl_protocol_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Owl Protocol API Key", "type": "string", "description": "Your Owl Protocol API Key for authentication (add from your Owl Protocol dashboard)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "oysterhr", "name": "Oysterhr", "logo": "https://logos.composio.dev/api/oysterhr", "description": "Global employment platform for hiring, onboarding, and managing international teams with compliant payroll and benefits.", "category": "hr talent & recruitment", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "oysterhr_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read" } ] }, "connected_account_initiation": { "required": [ { "name": "generic_id", "displayName": "App ID", "type": "string", "description": "The OysterHR application ID that must be embedded in the OAuth authorize URL path.", "required": true, "default": null } ], "optional": [ { "name": "generic_id_2", "displayName": "Customer ID", "type": "string", "description": "Customer ID for resellers interacting with customer accounts (X-Oyster-Customer-Id header)", "required": false, "default": null } ] } } } ] }, { "slug": "page_x", "name": "Page X", "logo": "https://logos.composio.dev/api/page_x", "description": "PageX is an all-in-one platform combining CRM, page builder, and online course builder to help businesses manage leads, build websites, and create courses.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAGE_X_CREATE_LEAD", "name": "Create Lead", "description": "Tool to create a lead in PageXCRM. Use when you need to send lead data from websites or other systems to PageXCRM." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "page_x_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your PageXCRM API key. Get it from https://pagexcrm.com/plugins/api.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pamela", "name": "Pamela", "logo": "https://logos.composio.dev/api/pamela", "description": "Pamela API integration for managing conversations and communications", "category": "communication", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pamela_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "pamela_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Pamela API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "paperform", "name": "Paperform", "logo": "https://logos.composio.dev/api/paperform", "description": "Paperform is a flexible online form builder that combines beautiful design with serious digital smarts", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAPERFORM_GET_SPACE", "name": "Get Space", "description": "Tool to retrieve a space by ID from Paperform. Use when you need to get detailed information about a specific space." }, { "slug": "PAPERFORM_GET_SPACE_FORMS", "name": "Get Space Forms", "description": "Tool to retrieve forms in a space from Paperform. Use when you need to list all forms accessible by the authorized user within a specific space. This is a Business API only feature." }, { "slug": "PAPERFORM_LIST_FORMS", "name": "List Forms", "description": "Tool to list all forms accessible by the authorized user. Use when you need to retrieve available forms from Paperform." }, { "slug": "PAPERFORM_LIST_SPACES", "name": "List Spaces", "description": "Tool to list all spaces accessible by the authorized user. Use when you need to retrieve available spaces from Paperform." }, { "slug": "PAPERFORM_LIST_TRANSLATIONS", "name": "List Translations", "description": "Tool to list all translations accessible by the authorized user. Use when you need to retrieve available translations from Paperform." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "paperform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Paperform account and sign in. Go to \"Account Settings\" > \"Developer\" to generate your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "papersign", "name": "Papersign", "logo": "https://logos.composio.dev/api/papersign", "description": "Simplify document signing with Papersign, so you can spend less time in email chains and more time on the important stuff.", "category": "signatures", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "papersign_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "forms:read,forms:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "papersign_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Sign in and get your Access Token from \"Account Settings\" > \"Developer\" at https://paperform.co/account/developer", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "papyrs", "name": "Papyrs", "logo": "https://logos.composio.dev/api/papyrs", "description": "Dream up your own intranet site or internal wiki with simple drag & drop. Easily share and collect information, files, discussions, online forms and much more.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "papyrs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Site Name", "type": "string", "description": "Your Papyrs site name from the URL: https://{site_name}.papyrs.com", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Go to Site Settings > Integrations & SSO > API to request API access. Once enabled, Site Owners can click \"Generate Token\" to create a new unique API token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "paradym", "name": "Paradym", "logo": "https://logos.composio.dev/api/paradym", "description": "Paradym is an API-first platform that simplifies the issuance, verification, and management of verifiable credentials, supporting standards like SD-JWT VCs over OpenID4VC and AnonCreds over DIDComm.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 69, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARADYM_ACTIVATE_CERTIFICATE", "name": "Activate Certificate", "description": "Tool to activate a certificate for use in a project. Use when you need to enable a certificate that is in pending activation status." }, { "slug": "PARADYM_ARCHIVE_ANONCREDS_CREDENTIAL_TEMPLATE", "name": "Archive AnonCreds Credential Template", "description": "Tool to archive an AnonCreds credential template in a project. Use when you need to remove or deactivate a credential template. Returns success status upon archival." }, { "slug": "PARADYM_ARCHIVE_MDOC_CREDENTIAL_TEMPLATE", "name": "Archive mDoc Credential Template", "description": "Tool to archive an mDoc credential template. Use when you need to archive a template that is no longer needed." }, { "slug": "PARADYM_ARCHIVE_PRESENTATION_TEMPLATE", "name": "Archive Presentation Template", "description": "Tool to archive a presentation template in a project. Use when you need to remove or deactivate a presentation template. Returns success status upon archival." }, { "slug": "PARADYM_ARCHIVE_SD_JWT_VC_CREDENTIAL_TEMPLATE", "name": "Archive SD-JWT VC Credential Template", "description": "Tool to archive an SD-JWT VC credential template in a project. Use when you need to remove or deactivate an SD-JWT VC credential template." }, { "slug": "PARADYM_CREATE_ANONCREDS_CREDENTIAL_TEMPLATE", "name": "Create AnonCreds Credential Template", "description": "Tool to create a new AnonCreds credential template. Use when you have a project ID and want to define a credential schema with specific attributes." }, { "slug": "PARADYM_CREATE_CERTIFICATE", "name": "Create Certificate", "description": "Tool to create a new self-signed X.509 certificate for a project. Use when you need to create a root certificate for verifying or issuing credentials." }, { "slug": "PARADYM_CREATE_DIDCOMM_CONNECTION_INVITATION", "name": "Create DIDComm Connection Invitation", "description": "Tool to create a DIDComm connection invitation. Use when you need to establish a new DIDComm connection for a project." }, { "slug": "PARADYM_CREATE_DIDCOMM_ISSUANCE_OFFER", "name": "Create DIDComm Issuance Offer", "description": "Tool to create a DIDComm credential issuance offer. Use when you need to offer credentials via DIDComm protocol after obtaining a project ID and credential template." }, { "slug": "PARADYM_CREATE_OPENID4VC_CREDENTIAL_OFFER", "name": "Create OpenID4VC Credential Offer", "description": "Tool to create an OpenID4VC credential offer. Use when you need to issue verifiable credentials using OpenID4VC protocol. Note: Only works with SD-JWT VC and mDoc credential templates." }, { "slug": "PARADYM_CREATE_OPENID4VC_VERIFICATION_REQUEST", "name": "Create OpenID4VC Verification Request", "description": "Tool to create an OpenID4VC verification request. Use when you need to initiate a credential verification flow with a presentation template." }, { "slug": "PARADYM_CREATE_PRESENTATION_TEMPLATE", "name": "Create Presentation Template", "description": "Tool to create a new presentation template. Use when you have a project ID and template definition ready." }, { "slug": "PARADYM_CREATE_PROJECT_WEBHOOK", "name": "Create Project Webhook", "description": "Tool to create a new webhook for a project. Use after obtaining the project ID to subscribe to specific project events." }, { "slug": "PARADYM_CREATE_SD_JWT_VC_CREDENTIAL_TEMPLATE", "name": "Create SD-JWT VC Credential Template", "description": "Tool to create a new SD-JWT VC credential template with selective disclosure capabilities. Use when you have a project ID and want to define a credential with attributes that can be selectively disclosed." }, { "slug": "PARADYM_CREATE_TRUSTED_ENTITY", "name": "Create Trusted Entity", "description": "Tool to create a new trusted entity for a project. Use when you need to add trusted DIDs or X509 certificates to establish trust relationships." }, { "slug": "PARADYM_DEACTIVATE_CERTIFICATE", "name": "Deactivate Certificate", "description": "Tool to deactivate a certificate in a project. Use when you need to deactivate an active certificate, changing its status to inactive." }, { "slug": "PARADYM_DELETE_DID_COMM_CONNECTION", "name": "Delete DIDComm Connection", "description": "Tool to delete a DIDComm connection from a project. Use when removing a connection that is no longer needed." }, { "slug": "PARADYM_DELETE_DIDCOMM_INVITATION", "name": "Delete DIDComm Invitation", "description": "Tool to delete a DIDComm invitation from a project. Use when removing an invitation that is no longer needed." }, { "slug": "PARADYM_DELETE_TRUSTED_ENTITY", "name": "Delete Trusted Entity", "description": "Tool to delete a trusted entity from a project. Use when you need to remove a trusted entity that is no longer needed." }, { "slug": "PARADYM_DELETE_WEBHOOK", "name": "Delete Project Webhook", "description": "Tool to delete a webhook endpoint from a project. Use when removing a webhook no longer needed. Returns the deletion status." }, { "slug": "PARADYM_GET_ANONCREDS_CREDENTIAL_TEMPLATE", "name": "Get AnonCreds Credential Template", "description": "Tool to retrieve a specific AnonCreds credential template by ID. Use when you need to view details of a specific credential template after obtaining the project ID and template ID." }, { "slug": "PARADYM_GET_ANONCREDS_CREDENTIAL_TEMPLATE_JSON_SCHEMA", "name": "Get AnonCreds Credential Template JSON Schema", "description": "Tool to retrieve the JSON schema for an AnonCreds credential template. Use when you need to understand the structure and validation rules of a credential template." }, { "slug": "PARADYM_GET_DID_COMM_CONNECTION", "name": "Get DIDComm Connection", "description": "Tool to retrieve a specific DIDComm connection by ID. Use when you need to fetch details of a particular connection." }, { "slug": "PARADYM_GET_DID_COMM_CONNECTIONS", "name": "Get DIDComm Connections", "description": "Tool to retrieve a list of DIDComm connections for a project. Use when you need to fetch connections after obtaining the project ID." }, { "slug": "PARADYM_GET_DIDCOMM_INVITATION", "name": "Get DIDComm Invitation", "description": "Tool to retrieve a specific DIDComm invitation by ID. Use when you need to get details of an existing invitation after obtaining the project ID and invitation ID." }, { "slug": "PARADYM_GET_DIDCOMM_ISSUANCE_SESSION", "name": "Get DIDComm Issuance Session", "description": "Tool to retrieve a specific DIDComm issuance session by ID. Use when you need to check the status or details of a credential issuance session." }, { "slug": "PARADYM_GET_DI_DS", "name": "Get DIDs", "description": "Tool to retrieve a list of Decentralized Identifiers (DIDs) for a specific project. Use after project creation when you need to list or paginate through DIDs." }, { "slug": "PARADYM_GET_MDOC_CREDENTIAL_TEMPLATE", "name": "Get mDoc Credential Template", "description": "Tool to retrieve a specific mDoc credential template by ID. Use when you need to fetch details of an existing mDoc credential template for a project." }, { "slug": "PARADYM_GET_MDOC_CREDENTIAL_TEMPLATE_JSON_SCHEMA", "name": "Get mDoc Credential Template JSON Schema", "description": "Tool to retrieve the JSON schema for an mDoc credential template. Use when you need to understand the structure and validation rules of an mDoc credential template." }, { "slug": "PARADYM_GET_OPENID4VC_ISSUANCE_SESSION", "name": "Get OpenID4VC Issuance Session", "description": "Tool to retrieve a specific OpenID4VC issuance session by ID. Use when you need to check the status or details of an issuance session." }, { "slug": "PARADYM_GET_OPENID4VC_VERIFICATION_SESSION", "name": "Get OpenID4VC Verification Session", "description": "Tool to retrieve a specific OpenID4VC verification session by ID. Use when you need to check the status or details of an existing verification session." }, { "slug": "PARADYM_GET_PRESENTATION_TEMPLATE", "name": "Get Presentation Template", "description": "Tool to retrieve a specific presentation template by ID. Use when you need to fetch details of an existing presentation template for a project." }, { "slug": "PARADYM_GET_PRESENTATION_TEMPLATES", "name": "Get Presentation Templates", "description": "Tool to retrieve a list of presentation templates for a project. Use when you need to list presentation templates after obtaining the project ID." }, { "slug": "PARADYM_GET_PROJECT_MEMBERS", "name": "Get Project Members", "description": "Tool to retrieve a list of project members. Use after confirming the project ID exists." }, { "slug": "PARADYM_GET_PROJECT_PROFILE", "name": "Get Project Profile", "description": "Tool to retrieve the default profile for a project. Use after confirming the project ID exists when you need to get profile details such as DID, display name, logo, and wallet configuration." }, { "slug": "PARADYM_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a list of all projects accessible to the authenticated user. Use after authentication when you need to list available projects." }, { "slug": "PARADYM_GET_PROJECT_WEBHOOKS", "name": "Get Project Webhooks", "description": "Tool to retrieve a list of webhooks configured for a specific project. Use when you need to list configured webhooks before managing or auditing them." }, { "slug": "PARADYM_GET_SD_JWT_VC_CREDENTIAL_TEMPLATE", "name": "Get SD-JWT VC Credential Template", "description": "Tool to retrieve a specific SD-JWT VC credential template by ID. Use when you need to fetch details of an existing SD-JWT VC credential template for a project." }, { "slug": "PARADYM_GET_SD_JWT_VC_CREDENTIAL_TEMPLATE_JSON_SCHEMA", "name": "Get SD-JWT VC Credential Template JSON Schema", "description": "Tool to retrieve the JSON schema for an SD-JWT VC credential template. Use when you need to understand the structure and validation rules of an SD-JWT VC credential template." }, { "slug": "PARADYM_GET_TRUSTED_ENTITIES", "name": "Get Trusted Entities", "description": "Tool to retrieve trusted entities for a specific project. Use when you need to list all trusted entities associated with a Paradym project after authentication." }, { "slug": "PARADYM_GET_TRUSTED_ENTITY", "name": "Get Trusted Entity", "description": "Tool to retrieve a specific trusted entity by ID. Use when you need to get detailed information about a particular trusted entity including its certificates and DIDs." }, { "slug": "PARADYM_ISSUE_DIRECT_SD_JWT_VC", "name": "Issue Direct SD-JWT VC", "description": "Tool to directly issue an SD-JWT VC credential without exchange protocol. Use when you need to create a verifiable credential with selective disclosure capabilities for a specific credential template." }, { "slug": "PARADYM_LIST_ANON_CREDS_CREDENTIAL_TEMPLATES", "name": "List AnonCreds Credential Templates", "description": "Tool to retrieve all AnonCreds credential templates for a project. Use when you need to list available credential templates for issuing AnonCreds verifiable credentials." }, { "slug": "PARADYM_LIST_CERTIFICATES", "name": "List Certificates", "description": "Tool to retrieve all X.509 certificates for a project. Use when you need to list certificates with optional filtering by type, key type, status, or other attributes." }, { "slug": "PARADYM_LIST_CERTIFICATE_SIGNING_REQUESTS", "name": "List Certificate Signing Requests", "description": "Tool to retrieve all certificate signing requests for a project. Use when you need to list or audit CSRs for certificate management." }, { "slug": "PARADYM_LIST_DIDCOMM_INVITATIONS", "name": "List DIDComm Invitations", "description": "Tool to retrieve all DIDComm invitations for a project. Use when you need to inspect or paginate through connection invitations after obtaining the project ID." }, { "slug": "PARADYM_LIST_DIDCOMM_ISSUANCE_OFFERS", "name": "List DIDComm Issuance Offers", "description": "Tool to list all DIDComm issuance offers within a project. Use when you need to retrieve or paginate issuance offers after obtaining a project ID." }, { "slug": "PARADYM_LIST_DIDCOMM_MEDIATOR_CONNECTIONS", "name": "List DIDComm Mediator Connections", "description": "Tool to retrieve connections for a DIDComm mediator. Use when you need to list all connections associated with a specific mediator in a project." }, { "slug": "PARADYM_LIST_DIDCOMM_MEDIATORS", "name": "List DIDComm Mediators", "description": "Tool to retrieve all DIDComm mediators for a project. Use when you need to list available mediators for routing DIDComm messages." }, { "slug": "PARADYM_LIST_DIDCOMM_VERIFICATION_REQUESTS", "name": "List DIDComm Verification Requests", "description": "Tool to list all DIDComm verification sessions for a project. Use when you need to fetch DIDComm verification requests after obtaining the project ID." }, { "slug": "PARADYM_LIST_ISSUED_CREDENTIALS", "name": "List Issued Credentials", "description": "Tool to list metadata for all issued credentials within a project. Use after confirming a valid project ID to fetch credentials, optionally filtering by status." }, { "slug": "PARADYM_LIST_MDOC_CREDENTIAL_TEMPLATES", "name": "List mDoc Credential Templates", "description": "Tool to retrieve all mDoc credential templates for a project. Use when you need to list mDoc format credential templates after obtaining the project ID." }, { "slug": "PARADYM_LIST_OPENID4VC_ISSUANCE_SESSIONS", "name": "List OpenID4VC Issuance Sessions", "description": "Tool to retrieve all OpenID4VC issuance sessions for a project. Use when you need to list credential issuance sessions, optionally filtering by ID or status." }, { "slug": "PARADYM_LIST_OPENID4VC_VERIFICATION_SESSIONS", "name": "List OpenID4VC Verification Sessions", "description": "Tool to retrieve all OpenID4VC verification sessions for a project. Use when you need to list OpenID4VC verification sessions after obtaining the project ID." }, { "slug": "PARADYM_LIST_SD_JWT_VC_CREDENTIAL_TEMPLATES", "name": "List SD-JWT VC Credential Templates", "description": "Tool to retrieve all SD-JWT VC credential templates for a project. Use when you need to list credential templates in SD-JWT VC format, with optional filtering by ID, type, revocable status, or archived status." }, { "slug": "PARADYM_RECEIVE_DIDCOMM_INVITATION", "name": "Receive DIDComm Invitation", "description": "Tool to receive and process an external DIDComm invitation. Use when you need to accept a connection invitation from another party." }, { "slug": "PARADYM_REVOKE_CERTIFICATE", "name": "Revoke Certificate", "description": "Tool to revoke a certificate in a project. Use when you need to invalidate a certificate. Returns the updated certificate details with revoked status." }, { "slug": "PARADYM_SEND_DIDCOMM_BASIC_MESSAGE", "name": "Send DIDComm Basic Message", "description": "Tool to send a basic DIDComm message to a connection. Use when you need to send a text message through an established DIDComm connection." }, { "slug": "PARADYM_SEND_DID_COMM_CUSTOM_MESSAGE", "name": "Send Custom DIDComm Message", "description": "Tool to send a custom DIDComm message to a connection. Use when you need to send custom protocol messages over an established DIDComm connection." }, { "slug": "PARADYM_UNARCHIVE_ANONCREDS_CREDENTIAL_TEMPLATE", "name": "Unarchive AnonCreds Credential Template", "description": "Tool to unarchive an archived AnonCreds credential template. Use when you need to restore an archived credential template to active status." }, { "slug": "PARADYM_UNARCHIVE_MDOC_CREDENTIAL_TEMPLATE", "name": "Unarchive mDoc Credential Template", "description": "Tool to unarchive an archived mDoc credential template. Use when you need to restore an archived credential template to active status." }, { "slug": "PARADYM_UNARCHIVE_SD_JWT_VC_CREDENTIAL_TEMPLATE", "name": "Unarchive SD-JWT VC Credential Template", "description": "Tool to unarchive an archived SD-JWT VC credential template. Use when you need to restore an archived credential template to active status." }, { "slug": "PARADYM_UPDATE_DID_COMM_CONNECTION", "name": "Update DIDComm Connection", "description": "Tool to update a DIDComm connection. Use when you need to modify connection details like display name." }, { "slug": "PARADYM_UPDATE_MDOC_CREDENTIAL_TEMPLATE", "name": "Update mDoc Credential Template", "description": "Tool to update an existing mDoc credential template. Use when you need to modify template name, attributes, validity period, or styling for an mDoc credential." }, { "slug": "PARADYM_UPDATE_PRESENTATION_TEMPLATE", "name": "Update Presentation Template", "description": "Tool to update an existing presentation template. Use when you need to modify template name, description, credentials, or verifier configuration." }, { "slug": "PARADYM_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project's name and verification data access settings. Use when you need to modify project details." }, { "slug": "PARADYM_UPDATE_PROJECT_PROFILE", "name": "Update Project Profile", "description": "Tool to update the default profile for a project. Use when you need to modify profile display settings, logo, OpenID4VC version, or wallet configuration." }, { "slug": "PARADYM_UPDATE_SD_JWT_VC_CREDENTIAL_TEMPLATE", "name": "Update SD-JWT VC Credential Template", "description": "Tool to update an existing SD-JWT VC credential template. Use when you need to modify template name, attributes, validity periods, or styling for an SD-JWT VC credential." }, { "slug": "PARADYM_UPDATE_TRUSTED_ENTITY", "name": "Update Trusted Entity", "description": "Tool to update an existing trusted entity in a project. Use when you need to modify the name, certificates, or DIDs of a trusted entity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "paradym_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Paradym API Key", "type": "string", "description": "The API key used for authenticating requests to the Paradym API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parallel", "name": "Parallel", "logo": "https://logos.composio.dev/api/parallel", "description": "Parallel offers a Task API for automated, structured web research, transforming natural language queries into precise, schema-compliant outputs.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARALLEL_ADD_ENRICHMENT_TO_FIND_ALL_RUN", "name": "Add Enrichment to FindAll Run", "description": "Tool to add an enrichment to a FindAll run. Use when you need to enrich existing FindAll run results with additional structured data fields. Enrichments define what information to extract from matched entities using a JSON schema." }, { "slug": "PARALLEL_ADD_RUNS_TO_TASK_GROUP", "name": "Add Runs to Task Group", "description": "Tool to initiate multiple task runs within a TaskGroup. Use when you need to execute multiple tasks in parallel within an existing task group." }, { "slug": "PARALLEL_CANCEL_FIND_ALL_RUN", "name": "Cancel FindAll Run", "description": "Tool to cancel an active FindAll run by findall_id. Use when you need to stop a running FindAll operation before it completes. Cannot cancel runs that have already terminated." }, { "slug": "PARALLEL_CREATE_CHAT_COMPLETIONS", "name": "Create Chat Completions", "description": "Tool to get realtime chat completions from Parallel AI. Use when you need conversational AI responses or structured outputs via chat interface. Can be combined with Task API processors for research-grade structured outputs with citations and reasoning." }, { "slug": "PARALLEL_CREATE_MONITOR", "name": "Create Monitor", "description": "Tool to create a web monitor that periodically runs the specified query. The monitor runs once at creation and then continues according to the specified cadence (hourly, daily, weekly, or every two weeks). Use when you need to track changes or developments for a specific search query over time." }, { "slug": "PARALLEL_CREATE_TASK_GROUP", "name": "Create Task Group", "description": "Tool to create a new task group. Use when batching multiple tasks for parallel execution. Task Groups enable grouping and tracking of multiple task runs within a single manageable unit." }, { "slug": "PARALLEL_CREATE_TASK_RUN", "name": "Create Task Run", "description": "Tool to create and initiate a task run. Returns immediately with a run object in status 'queued'. Use when you need to execute tasks asynchronously with Parallel AI processors." }, { "slug": "PARALLEL_DELETE_MONITOR", "name": "Delete Monitor", "description": "Tool to delete a monitor, stopping all future executions. Use when you need to permanently remove a monitor. Deleted monitors can no longer be updated or retrieved." }, { "slug": "PARALLEL_EXTEND_FIND_ALL_RUN", "name": "Extend FindAll Run", "description": "Tool to extend a FindAll run by adding additional matches to the current match limit. Use when you need to increase the number of matches for an existing FindAll run that is still active or has completed." }, { "slug": "PARALLEL_EXTRACT", "name": "Extract Content from URLs", "description": "Tool to extract relevant content from specific web URLs. Use when you need to fetch and extract content from known URLs with optional focusing on specific objectives or search queries." }, { "slug": "PARALLEL_FETCH_TASK_GROUP_RUNS", "name": "Fetch Task Group Runs", "description": "Tool to retrieve task runs from a Task Group as a resumable stream. Use when you need to fetch all runs within a group, optionally including their inputs and outputs. The stream can be resumed using the event_id as a cursor." }, { "slug": "PARALLEL_FIND_ALL", "name": "Start FindAll Run", "description": "Tool to start a FindAll run. Use when you need to discover and match entities based on natural-language objectives. Supports custom conditions, exclusion lists, and webhook callbacks." }, { "slug": "PARALLEL_GET_FIND_ALL_RUN_RESULT", "name": "Get FindAll Run Result", "description": "Tool to fetch the final (or latest available) FindAll candidates and result payload for a run. Use when you need to retrieve matched/unmatched candidates after a FindAll run has progressed or completed." }, { "slug": "PARALLEL_GET_FIND_ALL_RUN_SCHEMA", "name": "Get FindAll Run Schema", "description": "Tool to retrieve the schema configuration of a FindAll run by findall_id. Use when you need to inspect the objective, entity type, match conditions, and other schema details for a previously created FindAll run." }, { "slug": "PARALLEL_INGEST_FIND_ALL_RUN", "name": "Ingest FindAll Run", "description": "Tool to transform a natural language search objective into a structured FindAll specification. Use when you need to generate a FindAll run spec from a user's natural language description. The generated specification serves as a suggested starting point and can be further customized." }, { "slug": "PARALLEL_LIST_MONITOR_EVENTS", "name": "List Monitor Events", "description": "Tool to list events for a monitor from up to the last 300 event groups. Retrieves events including errors and material changes in reverse chronological order." }, { "slug": "PARALLEL_LIST_MONITORS", "name": "List Monitors", "description": "Tool to list active monitors for the user. Returns all monitors regardless of status with their configuration and current state. Supports cursor-based pagination using monitor_id and limit parameters." }, { "slug": "PARALLEL_RETRIEVE_EVENT_GROUP", "name": "Retrieve Event Group", "description": "Tool to retrieve an event group for a monitor. Use when you have a valid monitor ID and event group ID and want to view the execution history." }, { "slug": "PARALLEL_RETRIEVE_FIND_ALL_RUN_STATUS", "name": "Retrieve FindAll Run Status", "description": "Tool to retrieve status and metadata for a FindAll run by findall_id. Use when you need to poll or check the progress of a FindAll run that was previously created." }, { "slug": "PARALLEL_RETRIEVE_MONITOR", "name": "Retrieve Monitor", "description": "Tool to retrieve a specific monitor by ID. Returns the monitor configuration including status, cadence, query, and webhook settings." }, { "slug": "PARALLEL_RETRIEVE_TASK_GROUP", "name": "Retrieve Task Group", "description": "Tool to retrieve details of a specific task group. Use when you have a valid task group ID and want to view its details." }, { "slug": "PARALLEL_RETRIEVE_TASK_GROUP_RUN", "name": "Retrieve Task Group Run", "description": "Tool to retrieve run status by run_id for a task group. Use when you need to check the status of a specific task group run or poll for completion." }, { "slug": "PARALLEL_RETRIEVE_TASK_RUN", "name": "Retrieve Task Run", "description": "Tool to retrieve run status by run_id. Use when you need to check the status or details of a specific task run. The run result is available from the /result endpoint." }, { "slug": "PARALLEL_RETRIEVE_TASK_RUN_INPUT", "name": "Retrieve Task Run Input", "description": "Tool to retrieve the input data of a specific task run by run_id. Use when you need to view the original input parameters that were provided to a task run." }, { "slug": "PARALLEL_RETRIEVE_TASK_RUN_RESULT", "name": "Retrieve Task Run Result", "description": "Tool to retrieve the result of a task run by run_id, blocking until the run completes. Use when you need to wait for and fetch the final output of a previously initiated task run. The request will block until the run completes or the timeout is reached." }, { "slug": "PARALLEL_SEARCH", "name": "Parallel Search", "description": "Tool to perform parallel semantic search. Use when you need to retrieve top matching documents for multiple queries in a single call." }, { "slug": "PARALLEL_SIMULATE_EVENT", "name": "Simulate Event", "description": "Tool to simulate sending an event for a monitor. Use when testing monitor webhooks or validating monitor configurations. Simulates sending an event of the specified type (defaults to monitor.event.detected)." }, { "slug": "PARALLEL_STREAM_FIND_ALL_EVENTS", "name": "Stream FindAll Events", "description": "Tool to stream events from a FindAll run. Use when you need real-time updates on candidate discovery, matching progress, and run status." }, { "slug": "PARALLEL_STREAM_TASK_GROUP_EVENTS", "name": "Stream Task Group Events", "description": "Tool to stream events for a Task Group. Use when you want real-time updates of group status and run completions." }, { "slug": "PARALLEL_STREAM_TASK_RUN_EVENTS", "name": "Stream Task Run Events", "description": "Tool to stream events for a Task Run. Returns progress updates and state changes for the task run. For runs without enable_events=true, event frequency is reduced." }, { "slug": "PARALLEL_SUGGEST_TASK", "name": "Suggest Task", "description": "Tool to suggest tasks based on user intent. Use when you need task specifications generated from a natural language description of what you want to accomplish." }, { "slug": "PARALLEL_UPDATE_MONITOR", "name": "Update Monitor", "description": "Tool to update a monitor's configuration. Use when you need to modify an existing monitor's cadence, query, metadata, or webhook settings. At least one field must be non-null to apply an update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parallel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Parallel API Key", "type": "string", "description": "Your Parallel API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parma", "name": "Parma", "logo": "https://logos.composio.dev/api/parma", "description": "Parma CRM is a relationship management app designed to help you accelerate growth by deepening and nurturing your business relationships.", "category": "crm", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARMA_ADD_RELATIONSHIP_TO_GROUP", "name": "Add Relationship to Group", "description": "Tool to add a relationship to a group in Parma. Use when you need to associate an existing relationship with a group." }, { "slug": "PARMA_CREATE_NOTE", "name": "Create Note", "description": "Tool to create a new note in the Parma account. Use when you need to add a note linked to specific relationships." }, { "slug": "PARMA_CREATE_RELATIONSHIP", "name": "Create Relationship", "description": "Tool to create a new relationship in Parma. Use when you need to add a new person or company to your Parma account." }, { "slug": "PARMA_DATA_JSON", "name": "Get data.json metadata", "description": "Tool to retrieve DCAT-US 1.1 compliant metadata of all datasets. Use when you need the complete catalog JSON (data.json) from Parma’s open data portal." }, { "slug": "PARMA_DELETE_RELATIONSHIP", "name": "Delete Relationship", "description": "Tool to delete a relationship from Parma by its ID. Use when you need to remove an existing relationship between entities. Returns success confirmation after deletion (HTTP 204)." }, { "slug": "PARMA_GET_PIPELINE", "name": "Get Pipeline", "description": "Tool to retrieve a pipeline by its ID. Use when you need to fetch details about a specific pipeline." }, { "slug": "PARMA_GET_RELATIONSHIP", "name": "Get Relationship", "description": "Tool to retrieve a relationship by its unique ID. Use when you need to get detailed information about a specific relationship." }, { "slug": "PARMA_GET_STAGE", "name": "Get Stage", "description": "Tool to retrieve a stage by its unique identifier. Use when you need to fetch details about a specific stage in a pipeline." }, { "slug": "PARMA_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a user by their unique ID. Use when you need to fetch details for a specific user." }, { "slug": "PARMA_GET_USER_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve the authenticated user's profile. Use after obtaining a valid auth token to fetch current user account details." }, { "slug": "PARMA_LIST_DEALS", "name": "List Deals", "description": "Tool to retrieve all deals from the Parma account. Use when you need to list deals, filter by pagination, or get an overview of all deals in the system." }, { "slug": "PARMA_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve all groups in the Parma account. Use when you need to list groups, optionally filtered by a search query." }, { "slug": "PARMA_LIST_NOTES", "name": "List Notes", "description": "Tool to retrieve all notes from the Parma account. Use when you need to list or search through notes associated with relationships." }, { "slug": "PARMA_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list all pipelines in the Parma account. Use when you need to retrieve available pipelines and their details." }, { "slug": "PARMA_LIST_RELATIONSHIP_GROUPS", "name": "List Relationship Groups", "description": "Tool to retrieve all groups linked to a specific relationship. Use when you need to see which groups are associated with a given relationship ID." }, { "slug": "PARMA_LIST_RELATIONSHIP_NOTES", "name": "List Relationship Notes", "description": "Tool to list all notes linked to a relationship. Use when you need to retrieve all notes associated with a specific relationship ID." }, { "slug": "PARMA_LIST_RELATIONSHIPS", "name": "List Relationships", "description": "Tool to list all relationships in the Parma account. Use when you need to retrieve and filter relationships by various criteria such as name, type, or contact details." }, { "slug": "PARMA_LIST_STAGES", "name": "List Stages", "description": "Tool to retrieve all stages in the Parma account. Use when you need to list pipeline stages or check available stage configurations." }, { "slug": "PARMA_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the Parma account. Use when you need to retrieve the complete list of users with their IDs, names, and email addresses." }, { "slug": "PARMA_PACKAGE_LIST", "name": "List Parma CKAN datasets", "description": "Tool to retrieve all dataset identifiers from the Parma CKAN instance. Use when you need to list every available dataset ID." }, { "slug": "PARMA_REMOVE_RELATIONSHIP_FROM_GROUP", "name": "Remove Relationship From Group", "description": "Tool to remove a relationship from a group. Use when you need to dissociate a relationship from a specific relationship group. Returns success status on completion (HTTP 204)." }, { "slug": "PARMA_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note in the Parma account. Use when you need to modify the content, datetime, or relationships of a specific note." }, { "slug": "PARMA_UPDATE_RELATIONSHIP", "name": "Update Relationship", "description": "Tool to update an existing relationship in the Parma account. Use when you need to modify relationship details such as name, description, type, or associated groups." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "parma_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "full" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "parma_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Parma API token. You can find it at https://app.parma.ai/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parsehub", "name": "Parsehub", "logo": "https://logos.composio.dev/api/parsehub", "description": "ParseHub is a web scraping tool that allows users to extract data from websites without coding.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARSEHUB_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve all projects for the authenticated user. Use after confirming account's API key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parsehub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ParseHub API Key", "type": "string", "description": "Your ParseHub API key, found in your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parsera", "name": "Parsera", "logo": "https://logos.composio.dev/api/parsera", "description": "Parsera is a lightweight Python library for scraping websites using large language models (LLMs).", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARSERA_CREATE_SCRAPER", "name": "Create Scraper", "description": "Tool to create a new empty scraper for your account. Returns a scraper_id that can be used with the generate endpoint to generate scraping code." }, { "slug": "PARSERA_DELETE_SCRAPER", "name": "Delete Scraper", "description": "Tool to delete an existing scraper by its ID. Use when you need to remove a scraper that was created through the /v1/scrapers/new endpoint." }, { "slug": "PARSERA_EXTRACT_DATA", "name": "Extract Data from Webpage", "description": "Tool to perform LLM-powered data extraction from a live webpage URL with specified attributes. Use when you need to extract structured data from web pages based on field descriptions." }, { "slug": "PARSERA_EXTRACT_MARKDOWN", "name": "Extract Markdown", "description": "Tool to extract markdown content from a file or URL." }, { "slug": "PARSERA_GET_LLM_SPECS", "name": "Get LLM Specifications", "description": "Tool to retrieve standardized LLM capabilities and pricing specifications. Use to get up-to-date information about models from various providers." }, { "slug": "PARSERA_GET_PROXY_COUNTRIES", "name": "Get Proxy Countries", "description": "Tool to retrieve the list of available proxy countries for web scraping requests. Use when you need to know which countries are supported for proxy-based scraping." }, { "slug": "PARSERA_HEALTH_CHECK", "name": "Health Check", "description": "Tool to verify API availability and operational status. Use to check if the Parsera service is accessible before making other API calls." }, { "slug": "PARSERA_LIST_AGENTS", "name": "List Agents", "description": "Tool to retrieve all available agents for the authenticated user. Use when you need to list agents that can be used for scraping tasks." }, { "slug": "PARSERA_LIST_SCRAPERS", "name": "List Scrapers", "description": "Tool to list all templates and old scrapers for the authenticated user. Use when you need to retrieve available scraper configurations." }, { "slug": "PARSERA_PARSE_CONTENT2", "name": "Parse Content (Enhanced)", "description": "Tool to extract structured data from raw HTML or text content using AI with advanced options. Use when you have content already loaded and need to extract specific fields with pagination or different extraction modes." }, { "slug": "PARSERA_REMOVE_AGENT", "name": "Remove Agent", "description": "Tool to delete an existing agent by name. Use when you need to remove a previously created agent from the Parsera platform." }, { "slug": "PARSERA_RUN_SCRAPER_TEMPLATE", "name": "Run Scraper Template", "description": "Tool to run a scraper template on a specified URL with optional proxy and cookies. Use when you need to execute a pre-defined scraper template to extract structured data from web pages." }, { "slug": "PARSERA_SCRAPE_WITH_AGENT", "name": "Scrape With Agent", "description": "Tool to run a previously generated scraper agent on a specific URL to extract structured data. Use when you need to apply an existing scraper to a webpage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parsera_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Parsera API Key", "type": "string", "description": "Your Parsera API key, obtainable from the 'API' tab on the Parsera web page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parseur", "name": "Parseur", "logo": "https://logos.composio.dev/api/parseur", "description": "Parseur is an AI-powered data extraction tool that automates the parsing of emails, PDFs, and other documents into structured data.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARSEUR_COPY_DOCUMENT", "name": "Copy Document", "description": "Tool to copy a document to another mailbox. Use when you need to duplicate a document from one mailbox to another mailbox within Parseur." }, { "slug": "PARSEUR_COPY_MAILBOX", "name": "Copy Mailbox", "description": "Tool to copy a mailbox (parser) in Parseur. Creates a duplicate of the mailbox with all its configuration. Use when you need to duplicate an existing parser setup." }, { "slug": "PARSEUR_CREATE_CUSTOM_DOWNLOAD", "name": "Create custom download", "description": "Tool to create a custom download (export configuration) for a mailbox. Use when you need to define which fields should be exported to CSV or XLS format." }, { "slug": "PARSEUR_CREATE_MAILBOX", "name": "Create mailbox", "description": "Tool to create a new mailbox (parser) in Parseur. Use when you need to set up a new parser for document parsing with custom configuration." }, { "slug": "PARSEUR_DELETE_CUSTOM_DOWNLOAD", "name": "Delete custom download", "description": "Tool to delete a custom download (export configuration) from a mailbox. Use when permanently removing an export configuration after confirming its ID." }, { "slug": "PARSEUR_DELETE_DOCUMENT", "name": "Delete document", "description": "Tool to delete a specific document by ID. Use when permanently removing a document after confirming its ID." }, { "slug": "PARSEUR_DELETE_MAILBOX", "name": "Delete mailbox", "description": "Tool to delete a mailbox (parser) by ID. Use when permanently removing a mailbox after confirming its ID." }, { "slug": "PARSEUR_DELETE_WEBHOOK", "name": "Delete webhook", "description": "Tool to delete a specific webhook. Use when permanently removing a webhook after confirming its ID." }, { "slug": "PARSEUR_DISABLE_WEBHOOK", "name": "Disable webhook", "description": "Tool to disable a webhook for a mailbox. Removes the webhook association from the specified mailbox. Use when you need to stop an active webhook from sending parsed data." }, { "slug": "PARSEUR_ENABLE_WEBHOOK", "name": "Enable webhook", "description": "Enables a paused webhook for a specified mailbox, allowing it to receive and forward parsed document events. Use this action to re-enable a webhook that was previously paused. Only webhooks listed in 'available_webhook_set' (paused webhooks) can be enabled. After enabling, the webhook will appear in 'webhook_set' (active webhooks) and begin sending HTTP POST requests to its target URL when the configured event occurs (e.g., document.processed)." }, { "slug": "PARSEUR_GET_BOOTSTRAP_CONFIG", "name": "Get Bootstrap Config", "description": "Tool to retrieve bootstrap configuration data. Use when you need system-wide configuration choices, field format mappings, maximum field lengths, or master parser definitions." }, { "slug": "PARSEUR_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve full details of a specific document by ID. Returns document status, processing info, parsed results, and download URLs for JSON, CSV, and XLS formats." }, { "slug": "PARSEUR_GET_DOCUMENT_LOGS", "name": "Get Document Logs", "description": "Tool to get document logs for a specific document. Returns paginated list of logs with status, source, and message details. Use when you need to troubleshoot or audit document processing history." }, { "slug": "PARSEUR_GET_MAILBOX", "name": "Get Mailbox by ID", "description": "Tool to retrieve full mailbox (parser) configuration by ID. Use when you need complete details about a specific mailbox including fields, webhooks, and settings." }, { "slug": "PARSEUR_GET_MAILBOX_SCHEMA", "name": "Get Mailbox Schema", "description": "Tool to retrieve the JSON schema for a mailbox's parsed fields. Use when you need to understand the structure and types of data fields extracted by a specific parser." }, { "slug": "PARSEUR_LIST_CUSTOM_DOWNLOADS", "name": "List Custom Downloads", "description": "Tool to retrieve custom downloads (export configurations) for a mailbox. Use when you need to list available export formats and their download URLs." }, { "slug": "PARSEUR_LIST_DOCUMENTS_IN_MAILBOX", "name": "List Documents in Mailbox", "description": "Tool to list documents within a specific mailbox. Use when you need to paginate, search, or sort the documents of a given mailbox after obtaining its ID." }, { "slug": "PARSEUR_LIST_MAILBOXES2", "name": "List Mailboxes (Full Details)", "description": "Tool to list mailboxes (parsers) with full configuration details. Returns paginated list of all mailboxes with document counts, processing statistics, and complete configuration settings. Use when you need comprehensive mailbox information including field configurations, processing options, and webhook settings." }, { "slug": "PARSEUR_LIST_TEMPLATES", "name": "List Templates for Mailbox", "description": "Tool to list all templates in a given mailbox. Use after fetching mailbox details when you need to page through and inspect available templates for further actions." }, { "slug": "PARSEUR_REPROCESS_DOCUMENT", "name": "Reprocess a document", "description": "Tool to reprocess a document. Triggers re-parsing of the document with the current template configuration. Use when you need to re-parse a document after template updates or to retry failed parsing." }, { "slug": "PARSEUR_RETRIEVE_WEBHOOK", "name": "Retrieve a webhook", "description": "Tool to retrieve details of a specific webhook. Use after creating or listing webhooks." }, { "slug": "PARSEUR_SKIP_DOCUMENT", "name": "Skip a document", "description": "Tool to skip a document. Marks the document as skipped and returns the updated document with status 'SKIPPED'." }, { "slug": "PARSEUR_UPDATE_CUSTOM_DOWNLOAD", "name": "Update custom download", "description": "Tool to update a custom download (export configuration) for a mailbox. Use when you need to modify the field list, name, or export settings for an existing download configuration." }, { "slug": "PARSEUR_UPDATE_MAILBOX", "name": "Update Mailbox", "description": "Tool to update a mailbox (parser) configuration. Use when you need to modify mailbox settings such as name, AI engine, processing options, or document handling rules." }, { "slug": "PARSEUR_UPDATE_WEBHOOK", "name": "Update webhook", "description": "Tool to update an existing webhook’s settings. Use when you need to change the webhook’s target URL, event type, headers, or name after creation." }, { "slug": "PARSEUR_UPLOAD_EMAIL_DOCUMENT", "name": "Upload Email Document", "description": "Tool to upload an email or text document to Parseur for parsing. Use when you need to programmatically send documents to a Parseur mailbox." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parseur_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Parseur API Key", "type": "string", "description": "Your Parseur API token key, found in your Account Overview.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parsio_io", "name": "Parsio.io", "logo": "https://logos.composio.dev/api/parsio_io", "description": "No-code email parser to extract and export valuable data from emails, PDFs and documents", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PARSIO_IO_CREATE_HTML_TEXT_DOCUMENT", "name": "Create HTML/Text Document", "description": "Tool to create and parse HTML or text documents via API. Use when you need to submit HTML or text content to a Parsio mailbox for data extraction. At least one of html or text must be provided." }, { "slug": "PARSIO_IO_CREATE_MAILBOX", "name": "Create Mailbox", "description": "Tool to create a new mailbox with a specified name. Use when you need to set up a new mailbox for email parsing in Parsio." }, { "slug": "PARSIO_IO_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for a mailbox with specified URL, event trigger, and settings. Use when you need to register a webhook endpoint to receive automated notifications for mailbox events." }, { "slug": "PARSIO_IO_DELETE_MAILBOX", "name": "Delete Mailbox", "description": "Tool to delete a specific mailbox from your Parsio account. Use when you need to permanently remove a mailbox." }, { "slug": "PARSIO_IO_DELETE_TEMPLATES", "name": "Delete Templates", "description": "Tool to delete multiple templates by providing an array of template IDs. Use when you need to remove one or more templates from a mailbox." }, { "slug": "PARSIO_IO_DELETE_WEBHOOKS", "name": "Delete Webhooks", "description": "Tool to delete multiple webhooks from a mailbox. Use when you need to remove one or more webhook configurations by providing their IDs." }, { "slug": "PARSIO_IO_DISABLE_TEMPLATES", "name": "Disable Templates", "description": "Tool to disable multiple templates by providing an array of template IDs. Use when you need to deactivate multiple templates in a mailbox." }, { "slug": "PARSIO_IO_ENABLE_TEMPLATES", "name": "Enable Templates", "description": "Tool to enable multiple templates by providing an array of template IDs. Use when you need to activate multiple templates for use in a mailbox." }, { "slug": "PARSIO_IO_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve a specific document with parsed data as JSON. Use when you need to fetch details of a document by its ID." }, { "slug": "PARSIO_IO_GET_MAILBOX", "name": "Get Mailbox Details", "description": "Tool to retrieve details of a specific mailbox. Use when you need to fetch configuration and settings for a particular mailbox." }, { "slug": "PARSIO_IO_GET_PARSED_DATA", "name": "Get Parsed Data", "description": "Tool to get parsed data from a mailbox with optional date range filters and pagination. Use when you need to retrieve extracted information from documents that have been processed through Parsio's parsing system." }, { "slug": "PARSIO_IO_GET_TEMPLATE", "name": "Get Template Details", "description": "Tool to retrieve details of a specific parsing template by its ID. Use when you need to inspect a template's configuration, fields, or status." }, { "slug": "PARSIO_IO_GET_WEBHOOK", "name": "Get Webhook Details", "description": "Tool to retrieve details of a specific webhook by its ID. Use when you need to inspect a webhook's configuration, status, or event type." }, { "slug": "PARSIO_IO_LIST_COLLECTED_EMAILS", "name": "List Collected Emails", "description": "Tool to list all collected email addresses from a specific mailbox. Use when you need to retrieve email addresses that have been automatically collected during document parsing. The mailbox must have the 'collect_emails' setting enabled." }, { "slug": "PARSIO_IO_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to retrieve a list of documents from a specific mailbox. Use when you need to list documents with optional filtering by date range, search query, or processing status. Supports pagination for large result sets." }, { "slug": "PARSIO_IO_LIST_MAILBOXES", "name": "List Mailboxes", "description": "Tool to retrieve all mailboxes in the account. Use when you need to list all available mailboxes and their configurations." }, { "slug": "PARSIO_IO_LIST_TABLE_FIELDS", "name": "List Table Fields", "description": "Tool to list all table fields in a specific mailbox. Use when you need to view the structure of data fields available for a mailbox." }, { "slug": "PARSIO_IO_LIST_TEMPLATES", "name": "List Templates in Mailbox", "description": "Tool to list all parsing templates associated with a specific mailbox. Use when you need to retrieve all template configurations for a mailbox, including their enabled status and metadata. Supports pagination for mailboxes with many templates." }, { "slug": "PARSIO_IO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all webhooks configured for a specific mailbox. Use when you need to list webhooks associated with a mailbox." }, { "slug": "PARSIO_IO_PARSE_DOCUMENT", "name": "Parse Document", "description": "Tool to trigger parsing of a specific document. Use when you need to initiate parsing for a document that has already been uploaded or created in Parsio." }, { "slug": "PARSIO_IO_SKIP_DOCUMENTS", "name": "Skip Documents", "description": "Tool to skip multiple documents in a mailbox by providing document IDs. Use when you need to mark documents as skipped rather than parsing them." }, { "slug": "PARSIO_IO_UPDATE_MAILBOX", "name": "Update Mailbox Settings", "description": "Tool to update mailbox settings including name, email prefix, and processing options. Use when you need to modify configuration settings for an existing mailbox." }, { "slug": "PARSIO_IO_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook's configuration. Use when you need to modify webhook settings like URL, event type, or activation status." }, { "slug": "PARSIO_IO_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload and parse PDF, HTML, CSV, TXT, DOCX, RTF or XML files (max 20MB) to a mailbox. Use when you need to submit a file to Parsio for automated data extraction." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parsio_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API key, navigate to your Parsio.io account settings at https://app.parsio.io/account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "parsioio", "name": "Parsioio", "logo": "https://logos.composio.dev/api/parsioio", "description": "Document parsing and data extraction platform that converts PDFs, emails, and other documents into structured data", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "parsioio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Parsio.io API key from https://app.parsio.io/account", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "passcreator", "name": "Passcreator", "logo": "https://logos.composio.dev/api/passcreator", "description": "Passcreator is a SaaS platform that enables businesses to create, distribute, and manage digital Wallet passes for Apple Wallet and Google Wallet, including store cards, event tickets, coupons, and membership cards.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PASSCREATOR_CHECK_PASS_EXISTENCE", "name": "Check Pass Existence", "description": "Tool to check if a pass exists for a given ID. Use when verifying pass existence before subsequent operations like updates or deletions. The ID can be a generatedId (unique ID created for every pass, usually encoded in the barcode), userProvidedId (optional custom ID), or any other identifier associated with a pass." }, { "slug": "PASSCREATOR_CREATE_APP_SCAN", "name": "Create App Scan", "description": "Tool to create a new App Scan in PassCreator. Use when recording pass validation or attendance scanning events. Supports tracking scan status, device information, and optional pass voiding." }, { "slug": "PASSCREATOR_GET_APP_CONFIGURATION", "name": "Get App Configuration", "description": "Retrieves detailed information about an App Configuration by its identifier. Use when you need to get scan settings, UI customization, or validation rules for a specific App Configuration." }, { "slug": "PASSCREATOR_GET_PROCESS_STATUS", "name": "Get Process Status", "description": "Get the current status and progress of a bulk operation including any errors. Use this to monitor long-running bulk operations like batch pass updates or creations. The identifier is returned when initiating a bulk operation." }, { "slug": "PASSCREATOR_GET_SIGNING_PUBLIC_KEY", "name": "Get Signing Public Key", "description": "Tool to obtain the public key needed to verify signatures from the placeholder sign() function. Use when you need to verify cryptographic signatures generated by Passcreator's sign placeholder." }, { "slug": "PASSCREATOR_LIST_APP_CONFIGURATIONS", "name": "List App Configurations", "description": "Retrieves all App Configurations for your Passcreator account. Use this action to get a list of validation configurations that control how passes are scanned and validated. Each configuration can be linked to specific pass templates or validate all passes." }, { "slug": "PASSCREATOR_LIST_APP_SCANS", "name": "List App Scans", "description": "Retrieves a paginated list of scans for a given app configuration. Use this tool to view scan history, track attendance, and analyze scan data ordered by creation date." }, { "slug": "PASSCREATOR_LIST_PASSES", "name": "List/Search Passes", "description": "List and search wallet passes from Passcreator using the v3 API. Use this tool to: - Retrieve all passes in your account - Filter passes by template ID or project ID - Search passes using a search phrase across all data fields - Paginate through large result sets Returns passes with metadata including identifiers, serial numbers, template info, and voided/redeemed status." }, { "slug": "PASSCREATOR_LIST_PASS_TEMPLATES", "name": "List Pass Templates", "description": "Retrieves all pass templates for your Passcreator account. Use this action to get a list of available templates (each with its unique identifier and name) which are needed to create new passes. Templates must be created via the Passcreator web app." }, { "slug": "PASSCREATOR_SEND_BULK_PUSH_NOTIFICATIONS", "name": "Send Bulk Push Notifications", "description": "Tool to send push notifications to multiple wallet passes simultaneously (up to 500 passes). Use when you need to notify pass holders about updates, events, or important information. The notification text can include personalization placeholders like {Firstname}." }, { "slug": "PASSCREATOR_UPDATE_PASSES_BULK", "name": "Bulk Update Passes", "description": "Tool to bulk update multiple wallet passes using filter criteria. Returns immediately with a tracking URL to monitor the asynchronous bulk operation progress. Use when updating many passes at once with the same data changes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "passcreator_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Passcreator API Key", "type": "string", "description": "The API key obtained from Passcreator for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "passslot", "name": "Passslot", "logo": "https://logos.composio.dev/api/passslot", "description": "PassSlot is a service that simplifies the creation, design, and distribution of Apple Wallet passes, including coupons, store cards, event tickets, membership cards, and boarding passes.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PASSSLOT_CREATE_SCANNER", "name": "Create Scanner", "description": "Tool to create a new scanner in Passslot. Use when you need to create a PassVerifier or Browser type scanner. Your app key must have full access to manage scanners. If fullAccess is false, provide allowedTemplates array." }, { "slug": "PASSSLOT_DELETE_SCANNER", "name": "Delete Scanner", "description": "Tool to delete a scanner by ID. Use when you need to remove a scanner from the system. Requires full access app key to manage scanners." }, { "slug": "PASSSLOT_GET_PASSES_BY_PASS_TYPE", "name": "Get Passes by Pass Type", "description": "Tool to list Wallet passes, optionally filtered by a Pass Type ID. If passtype_id is provided, returns passes for that specific pass type. If passtype_id is not provided, returns all passes." }, { "slug": "PASSSLOT_GET_PASS_TYPES", "name": "Get Pass Types", "description": "Tool to list all available pass types. Use when you need to retrieve supported pass-type identifiers before creating passes." }, { "slug": "PASSSLOT_GET_SCANNER", "name": "Get Scanner", "description": "Tool to retrieve details of a specific scanner. Use when you need to get information about a scanner by its ID. Requires app key with full access to manage scanners." }, { "slug": "PASSSLOT_LIST_SCANNERS", "name": "List Scanners", "description": "Tool to retrieve a list of all scanners. Use when you need to list all configured scanners. Your app key must have full access to manage scanners." }, { "slug": "PASSSLOT_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of all pass templates. Use when you need to see available templates for creating passes." }, { "slug": "PASSSLOT_UPDATE_SCANNER", "name": "Update Scanner", "description": "Tool to update a scanner's configuration. Only name, fullAccess, and allowedTemplates can be updated. Use when you need to modify scanner permissions or rename a scanner. Your app key must have full access to manage scanners." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "passslot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PassSlot App Key", "type": "string", "description": "The App Key used for authenticating API requests. Enter your PassSlot App Key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "patreon", "name": "Patreon", "logo": "https://logos.composio.dev/api/patreon", "description": "Membership platform that provides tools for creators to run a subscription content service and build relationships with their patrons", "category": "fundraising", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "patreon_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identity,identity[email],identity.memberships,campaigns,campaigns.members,w:campaigns.webhook" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "paved", "name": "Paved", "logo": "https://logos.composio.dev/api/paved", "description": "All-in-one platform for newsletter sponsorships", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAVED_LIST_AD_NETWORK_CAMPAIGNS", "name": "List Ad Network Campaigns", "description": "Tool to list all Ad Network campaigns with impressions, clicks and cost. Use when you need to retrieve campaign performance data. Supports optional date range filtering via from_date and to_date parameters, and pagination via page and per_page." }, { "slug": "PAVED_LIST_NEWSLETTERS", "name": "List Newsletters", "description": "Tool to retrieve information about all your newsletters. Use when you need to get details about available newsletters including their slug, name, URL, and status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "paved_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key in your account settings (Company page - requires Admin permissions). See https://www.paved.com/users/edit", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "paychex", "name": "Paychex", "logo": "https://logos.composio.dev/api/paychex", "description": "Paychex provides integrated human capital management solutions for payroll, benefits, HR, and insurance services.", "category": "human resources", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "paychex_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "payhere", "name": "Payhere", "logo": "https://logos.composio.dev/api/payhere", "description": "Easy payment links for accepting online payments", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAYHERE_CREATE_HOOK", "name": "Create Hook", "description": "Tool to subscribe to a REST hook for receiving webhook events. Use when you need to register a webhook endpoint to receive real-time notifications for payment_received, subscription_cancelled, or subscription_created events." }, { "slug": "PAYHERE_CREATE_PLAN", "name": "Create Plan", "description": "Tool to create a new payment plan in PayHere. Use when you need to set up either a recurring subscription or one-off payment plan for accepting payments." }, { "slug": "PAYHERE_DELETE_HOOK", "name": "Delete Hook", "description": "Tool to remove a REST hook listener subscription. Use when you need to stop receiving webhook events for a specific hook." }, { "slug": "PAYHERE_GET_CURRENT_COMPANY", "name": "Get Current Company", "description": "Tool to fetch company information for the currently authenticated user. Use when you need to retrieve comprehensive company details including identity, configuration, integration status, and associated users." }, { "slug": "PAYHERE_GET_CURRENT_COMPANY_STATS", "name": "Get Current Company Stats", "description": "Tool to fetch payment statistics for the last 30 days with comparison data from the preceding 30-day period (30-60 days ago). Use when you need to analyze recent payment trends, subscriber growth, or compare current performance against the previous month." }, { "slug": "PAYHERE_GET_USER", "name": "Get User", "description": "Tool to fetch information on the currently authenticated user. Use when you need to retrieve details about the logged-in user." }, { "slug": "PAYHERE_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list all customers from Payhere, ordered chronologically with most recent first. Use when you need to retrieve customer records, browse customers, or access customer information. Supports pagination via page and per_page parameters." }, { "slug": "PAYHERE_LIST_HOOKS", "name": "List REST Hooks", "description": "Tool to list all active REST hooks subscriptions for the authenticated company. Use when you need to view all currently registered webhook listeners for your PayHere account." }, { "slug": "PAYHERE_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list all payments ordered chronologically, most recent first. Use when you need to retrieve payment history or check payment statuses. Supports pagination with page and per_page parameters." }, { "slug": "PAYHERE_LIST_PLANS", "name": "List Plans", "description": "Tool to list all plans in your PayHere account. Use when you need to retrieve and paginate through available plans." }, { "slug": "PAYHERE_LIST_SUBSCRIPTIONS", "name": "List subscriptions", "description": "Tool to list all subscriptions ordered chronologically by most recent payment first. Use when you need to retrieve subscription data with customer and plan details." }, { "slug": "PAYHERE_UPDATE_CURRENT_COMPANY", "name": "Update Current Company", "description": "Tool to update the company information for the currently authenticated user. Use when modifying company details such as name, legal name, address, logo, support email, website, or branding preferences (button color and text color)." }, { "slug": "PAYHERE_UPDATE_PLAN", "name": "Update Plan", "description": "Tool to update an existing plan's configuration and settings. Use when you need to modify plan properties like name, description, pricing, or other settings for both one-off and subscription plans." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "payhere_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Environment", "type": "string", "description": "Select \"api\" for production or \"sandbox\" for testing", "required": true, "default": "api" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Payhere API key. Find it in the integrations section of the merchants admin (https://app.payhere.co/merchants/integrations for production, https://sandbox.payhere.co/merchants/integrations for sandbox)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "payhip", "name": "Payhip", "logo": "https://logos.composio.dev/api/payhip", "description": "Payhip is an e-commerce platform that enables individuals and businesses to sell digital products, memberships, and physical goods directly to their audience.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAYHIP_CREATE_COUPON", "name": "Create Coupon", "description": "Tool to create a coupon for discounts in Payhip. Use when you need to create a new coupon code with either percentage or fixed amount discounts. Coupons can apply to single products, all products, or collections." }, { "slug": "PAYHIP_DELETE_COUPON", "name": "Delete Coupon", "description": "Tool to delete a coupon by ID. Use when you need to remove a coupon from the Payhip account. Only available in v1 API." }, { "slug": "PAYHIP_GET_COUPON", "name": "Get Coupon", "description": "Tool to retrieve a coupon with the given ID. Use when you need to fetch details about a specific coupon from Payhip." }, { "slug": "PAYHIP_UPDATE_COUPON", "name": "Update Coupon", "description": "Tool to edit an existing coupon in Payhip. Use when you need to modify coupon details like code, percentage, expiry, or usage limit. Only available in v1 API." }, { "slug": "PAYHIP_VERIFY_COUPON", "name": "Verify Coupon", "description": "Tool to verify a Payhip coupon code. Use when you need to check if a coupon code is valid and retrieve its details. Only available in v1 API." }, { "slug": "PAYHIP_WEBHOOK_EVENT_PAID", "name": "Webhook Event - Paid", "description": "Tool to process Payhip's paid webhook event. Use when handling a purchase completion webhook from Payhip." }, { "slug": "PAYHIP_WEBHOOK_EVENT_REFUNDED", "name": "Webhook Event - Refunded Payment", "description": "Tool to process Payhip's refunded webhook event. Use when handling a payment refund event from Payhip." }, { "slug": "PAYHIP_WEBHOOK_EVENT_SUBSCRIPTION_CREATED", "name": "Webhook Event - Subscription Created", "description": "Tool to process Payhip's subscription.created webhook event. Use when handling a subscription start event from Payhip." }, { "slug": "PAYHIP_WEBHOOK_EVENT_SUBSCRIPTION_DELETED", "name": "Webhook Event - Subscription Deleted", "description": "Tool to process Payhip's 'subscription.deleted' webhook event. Use when handling a subscription cancellation event from Payhip." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "payhip_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Payhip API Key", "type": "string", "description": "Your Payhip API key, found in your account's Developer settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "paypal", "name": "Paypal", "logo": "https://logos.composio.dev/api/paypal", "description": "Online payment system that allows money transfers and serves as an electronic alternative to traditional payment methods", "category": "payment processing", "authSchemes": [ "S2S_OAUTH2" ], "toolCount": 78, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAYPAL_ACTIVATE_PLAN", "name": "Activate billing plan", "description": "Activates a billing plan in PayPal, making it available for subscription signups. Use this action when you have a billing plan in inactive state that you want to make available for new subscriptions. A successful activation returns HTTP 204 No Content with no response body. This action is idempotent - activating an already active plan returns success." }, { "slug": "PAYPAL_ADD_BATCH_TRACKERS", "name": "Add Batch Tracking Information", "description": "Add tracking information for multiple PayPal transactions in a single request. Use this action when you need to add or update tracking information for one or more PayPal transactions. This is particularly useful for batch processing shipping updates when fulfilling multiple orders. The action supports up to 20 trackers per request. The response includes tracker identifiers for successfully processed entries and any errors for entries that failed validation or processing. **Required fields:** - trackers: An array containing at least one tracker object **Each tracker requires:** - transaction_id: The PayPal transaction ID - status: The shipment status (CLICKED, SHIPPED, DELIVERED, etc.)" }, { "slug": "PAYPAL_AUTHORIZE_ORDER", "name": "Authorize order payment", "description": "Authorizes payment for an order. Use this action when you need to authorize funds from a payer's payment source but delay capturing the payment until a later time, such as when goods are shipped or services are delivered. The authorization creates a hold on the payer's funds and returns authorization details including an authorization ID that can be used later to capture or void the payment. Authorizations are typically valid for 3 days for most payment sources, though this may vary. Use this action after an order has been created and approved by the payer, when you want to authorize but not immediately capture the payment." }, { "slug": "PAYPAL_CANCEL_INVOICE", "name": "Cancel Invoice", "description": "Cancels a sent PayPal invoice and optionally notifies relevant parties. Use this action when you need to cancel an invoice that has already been sent to a payer. The action allows you to provide a cancellation reason and control who receives email notifications about the cancellation (recipient, invoicer, and additional CC recipients). This action is irreversible — once canceled, the invoice cannot be reinstated and the payer will no longer be able to pay it through PayPal. Note: Only invoices in SENT or SCHEDULED status can be canceled. Draft invoices should be deleted instead, and paid invoices must be refunded." }, { "slug": "PAYPAL_CANCEL_REMINDERS", "name": "Cancel Invoice Reminders", "description": "Cancels the automatic payment reminders for a PayPal invoice. Use this action when you need to stop the automatic reminder emails from being sent to the payer for a particular invoice. This is useful when the invoice has been paid, is no longer relevant, or when you want to handle payment follow-ups manually. Note: This action only cancels future scheduled reminders. It does not affect reminders that have already been sent." }, { "slug": "PAYPAL_CAPTURE_SUBSCRIPTION_PAYMENT", "name": "Capture subscription payment", "description": "Captures an authorized payment on a PayPal subscription. Use this action when you need to charge a subscriber for an outstanding balance or capture an authorized payment that was previously approved. This action captures payments for subscriptions that have an outstanding balance to be charged. The capture type must be OUTSTANDING_BALANCE, and you must provide the amount to capture along with a note explaining the reason for the charge." }, { "slug": "PAYPAL_CHARGE_PAYMENT_METHOD", "name": "Charge Payment Method", "description": "Charges a payment method and captures funds immediately using Braintree GraphQL API. Use this action when you need to charge a customer's stored payment method (credit card, PayPal account, Venmo account, etc.) and immediately capture the funds into your merchant account. This creates a Braintree transaction and begins the settlement process. The payment method ID should be obtained from a previous tokenization operation using the Braintree client SDK (e.g., `hostedFields.tokenize()` or PayPal button). Note: This action is irreversible once the transaction is successfully captured." }, { "slug": "PAYPAL_CREATE_INVOICE", "name": "Create invoice", "description": "Creates a PayPal draft invoice. Use this action when you need to create a new invoice that can be customized and sent to recipients. The invoice is created in DRAFT status and can be modified before being sent. **Required fields:** - detail.currency_code: The three-character currency code (e.g., \"USD\") **Optional fields:** - detail.invoice_number: Custom invoice number - detail.invoice_date: Date when invoice was issued - detail.note: Note to the payer - detail.terms_and_conditions: Payment terms - items: List of line items (name, quantity, unit_amount required) - primary_recipients: Billing information for recipients - amount: Invoice amount breakdown The created invoice can be modified, scheduled, or sent using other PayPal invoicing actions." }, { "slug": "PAYPAL_CREATE_PAYMENT", "name": "Create PayPal payment", "description": "Creates a PayPal payment using the v1 Payments API. Use this action when you need to create a payment to be processed through PayPal. This action is for the deprecated v1 API - consider using the v2 Payments API for new integrations. The action returns the created payment object including approval URLs for the buyer to complete the payment. After the buyer approves the payment, execute it to complete the transaction. Note: This is an irreversible operation once the payment is executed." }, { "slug": "PAYPAL_CREATE_PAYMENTS_BILLING_PLANS", "name": "Create billing plan (legacy)", "description": "Creates a PayPal billing plan using the legacy payments API (POST /v1/payments/billing-plans). Use this action when setting up a new billing plan for PayPal billing agreements, including plans with trial periods, regular billing cycles, and custom payment preferences. After creation, the plan must be activated via the activate_plan action before it can be used in billing agreements. Note: This uses the legacy /v1/payments/billing-plans endpoint. For newer integrations, consider using the /v1/billing/plans endpoint instead." }, { "slug": "PAYPAL_CREATE_PLAN", "name": "Create a billing plan", "description": "Creates a PayPal billing plan for subscription billing. Use this action when setting up new subscription pricing plans in PayPal, including plans with trial periods, regular billing cycles, and custom payment preferences. The plan must be associated with an existing product. The action returns the created plan object with its unique ID and status." }, { "slug": "PAYPAL_CREATE_PRODUCT", "name": "Create Product", "description": "Creates a new product in PayPal's catalog. Use when you need to set up a product that can be used with PayPal's subscription or payment services. The product can be physical goods, digital goods, or a service. Once created, you can associate plans and pricing with this product. Use this action when you want to create a new product entry in PayPal's catalog system for selling physical items, digital products, or services through PayPal's payment infrastructure." }, { "slug": "PAYPAL_CREATE_SUBSCRIPTION", "name": "Create Subscription", "description": "Creates a new PayPal subscription based on a billing plan. Use this action when you need to set up a recurring billing subscription for a customer. The action returns a subscription ID and an approval URL where the subscriber must complete the subscription by logging into their PayPal account and confirming the payment. This action is irreversible once the subscriber approves the subscription. **Required fields:** - plan_id: The PayPal billing plan ID **Important:** - The subscriber will be redirected to PayPal to approve the subscription - Use the 'approve' link from the response to redirect the subscriber - The subscription status will be 'PENDING' until the subscriber approves it" }, { "slug": "PAYPAL_CREATE_TEMPLATE", "name": "Create template", "description": "Creates a PayPal invoice template. Use this action when you need to create a reusable invoice template that can be used to generate invoices with consistent settings. Templates are useful for businesses that regularly send similar invoices. **Required fields:** - name: The template name (must be unique) - template_info.detail.currency_code: The three-character ISO-4217 currency code **Optional fields:** - default_template: Set as the default template (only one allowed per account) - standard_template: Indicates if this is a custom template - template_info: Full template configuration - invoicer: Business information (email, tax_id, logo_url, etc.) - primary_recipients: Billing/shipping information for recipients - items: Line item presets - configuration: Tax settings, partial payment options - settings: Display preferences - unit_of_measure: QUANTITY, HOURS, or AMOUNT The created template can be used with the Generate Invoice action to quickly create invoices from pre-configured templates." }, { "slug": "PAYPAL_CREATE_WEBHOOK", "name": "Create a webhook", "description": "Creates a PayPal webhook endpoint to receive notifications about events. Use this action when you need to set up a webhook to receive real-time notifications about PayPal events such as payment completions, refunds, disputes, or subscription changes. The webhook URL must be publicly accessible and support HTTPS. The action returns the created webhook object including its unique ID for later reference." }, { "slug": "PAYPAL_CREATE_WEBHOOK_LOOKUP", "name": "Create a webhook lookup", "description": "Creates a new PayPal webhook lookup to verify a webhook signature. Use this action when you need to initiate a webhook lookup to validate that a webhook endpoint is correctly receiving and processing PayPal event notifications. This is useful for testing webhook configurations or verifying webhook authenticity before enabling it in production. This is a create operation that returns the newly created webhook lookup details, including the lookup ID, client ID, and related HATEOAS links. The action requires no input parameters." }, { "slug": "PAYPAL_CREATE_WEB_PROFILE", "name": "Create a web experience profile", "description": "Creates a PayPal web experience profile for customizing checkout. Use this action when you need to set up a branded, customized checkout experience for PayPal payments. This includes configuring the landing page, branding elements like logo and brand name, input field customization, and checkout flow behavior. The profile can be set as temporary (persists for three hours) or permanent. To use this profile, pass its ID when creating a payment." }, { "slug": "PAYPAL_DEACTIVATE_PLAN", "name": "Deactivate Plan", "description": "Deactivates a PayPal billing plan, making it unavailable for new subscriptions while preserving existing subscriptions. Use this action when you need to stop offering a particular billing plan without deleting it. Existing subscriptions will continue to work, but no new subscriptions can be created with this plan. Note: Only plans in an ACTIVE state can be deactivated. Deactivated plans cannot be reactivated." }, { "slug": "PAYPAL_DELETE_EXTERNAL_PAYMENT", "name": "Delete Invoice External Payment", "description": "Permanently deletes an external payment from a specified PayPal invoice. Use when you need to remove a specific external payment transaction that was incorrectly recorded on an invoice. This action is irreversible — once deleted, the payment record cannot be recovered. A successful deletion returns HTTP 204 No Content with no JSON response body. This action is idempotent — attempting to delete a non-existent payment record also returns success." }, { "slug": "PAYPAL_DELETE_INVOICE", "name": "Delete Invoice", "description": "Deletes a PayPal invoice by its ID. Use this action when you need to permanently remove an invoice that is no longer needed. This action is irreversible — once deleted, the invoice cannot be recovered and any associated payment records will be lost. Note: Only draft invoices can be deleted. Attempting to delete an invoice that has been sent or paid will return an error." }, { "slug": "PAYPAL_DELETE_INVOICE_PAYMENT_RECORD", "name": "Delete invoice payment record", "description": "Deletes a payment record from a PayPal invoice. Use this action when you need to remove a specific payment transaction record that was incorrectly applied to an invoice. This action permanently removes the payment record from the invoice. This action is irreversible — once deleted, the payment record cannot be recovered. A successful deletion returns HTTP 204 No Content with no response body. This action is idempotent — attempting to delete a non-existent payment record also returns success." }, { "slug": "PAYPAL_DELETE_INVOICE_REFUND_RECORD", "name": "Delete Invoice Refund Record", "description": "Permanently deletes a refund record from a specified PayPal invoice. This action is irreversible - once deleted, the refund record cannot be recovered. Use when correcting invoice payment records, removing erroneous refunds, or cleaning up invoice payment history. Note: This action only deletes the refund record reference from the invoice. It does not reverse or refund the actual payment through PayPal." }, { "slug": "PAYPAL_DELETE_PAYMENT_RESOURCE", "name": "Delete Payment Resource", "description": "Deletes a PayPal payment resource. Use when you need to permanently remove a payment resource that is no longer needed. This action is irreversible — the payment resource cannot be recovered once deleted. Note: Only payment resources in a valid state can be deleted. Attempting to delete a resource that is already deleted or does not exist will return an error." }, { "slug": "PAYPAL_DELETE_TEMPLATE", "name": "Delete Template", "description": "Deletes a PayPal invoice template by its ID. Use this action when you need to permanently remove an invoice template that is no longer needed. This action is irreversible — once deleted, the template cannot be recovered and will need to be recreated if needed again. Note: Only templates that are not currently in use can be deleted. Attempting to delete a template that is associated with active invoices may return an error." }, { "slug": "PAYPAL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a PayPal webhook by its ID. Use this action when you need to permanently remove a webhook endpoint that is no longer needed. This action is irreversible — once deleted, the webhook cannot be recovered and will stop receiving event notifications immediately. Note: Deleting a webhook does not affect any events that were already processed by that webhook. Only future events will be affected." }, { "slug": "PAYPAL_DELETE_WEB_PROFILE", "name": "Delete Web Experience Profile", "description": "Deletes a PayPal web experience profile by its ID. Use this action when you need to permanently remove a web experience profile that is no longer needed. This action is irreversible — the web experience profile cannot be recovered once deleted. Note: Only web profiles that are not currently in use can be deleted. Attempting to delete a profile that is associated with an active resource will return an error." }, { "slug": "PAYPAL_FETCH_NODE", "name": "Fetch Braintree Node", "description": "Fetches any object that extends the Node interface using its ID. Use this action when you need to retrieve details about a specific Braintree resource (transaction, customer, payment method, etc.) by its global ID. This action performs a GraphQL query against the Braintree API to fetch the node and its associated data. Note: This action uses the Braintree GraphQL API endpoint at /graphql. The node ID should be the base64-encoded global ID from Braintree. Different node types return different fields in the response." }, { "slug": "PAYPAL_FINALIZE_PAY_PAL_BRAINTREE_DISPUTE", "name": "Finalize Braintree Dispute", "description": "Finalizes a Braintree dispute after adding evidence, submitting it to the cardholder's bank for review. Use this action when you have finished adding evidence to an OPEN dispute and want to formally submit it for review. Only disputes with a status of OPEN can be finalized. This action must be performed before the reply-by date deadline. Once finalized, the dispute cannot be modified or additional evidence added. Note: This action uses the Braintree GraphQL API endpoint, which is separate from the standard PayPal REST API." }, { "slug": "PAYPAL_FIND_ELIGIBLE_METHODS", "name": "Find eligible PayPal payment methods", "description": "Find a list of eligible payment methods for a customer. Use this action when you need to determine which payment methods (such as PayPal, PayPal Credit, Pay Later, or Venmo) are available for a customer based on their country and purchase details. This is useful for displaying appropriate payment options during checkout or determining payment eligibility before creating an order. The response includes available payment methods and optionally vaulted tokens if the customer has saved payment instruments. **Common use cases:** - Pre-checkout payment method availability - Display appropriate payment options to customers - Determine eligible funding sources for a transaction" }, { "slug": "PAYPAL_GENERATE_CLIENT_TOKEN", "name": "Generate PayPal Client Token", "description": "Generate a client token for PayPal JavaScript SDK integration. Use this action when you need to obtain a client token for accepting PayPal payments on the client side. The client token is required when initializing the PayPal JS SDK (paypal.Buttons() or paypal.Messages()) in your web application. This action requires no request body parameters - the token is generated based on your authenticated credentials (Bearer token in Authorization header). Note: Client tokens are short-lived and should be fetched fresh before each checkout session. Do not cache or reuse client tokens across multiple sessions." }, { "slug": "PAYPAL_GENERATE_NEXT_INVOICE_NUMBER", "name": "Generate Next Invoice Number", "description": "Generates the next invoice number from PayPal's invoicing service. Use this action when you need to retrieve the next sequential invoice number in your customized format before creating an invoice. This ensures consistent invoice numbering across your PayPal invoices. Note: This action queries PayPal for the next available invoice number in your sequence. The format is configured in your PayPal account settings." }, { "slug": "PAYPAL_GENERATE_NEXT_INVOICE_NUMBER_V2", "name": "Generate Next Invoice Number (v2)", "description": "Generates the next invoice number from PayPal's invoicing service using the v2 API. Use this action when you need to retrieve the next sequential invoice number in your customized format before creating an invoice. This ensures consistent invoice numbering across your PayPal invoices. Note: This action queries PayPal for the next available invoice number in your sequence. The format is configured in your PayPal account settings." }, { "slug": "PAYPAL_GENERATE_QR_CODE", "name": "Generate Invoice QR Code", "description": "Generates a QR code image for a PayPal invoice using the v2 invoicing API. Use this action when you need to display a scannable QR code that customers can use to pay an invoice or view its details via the PayPal mobile app. The QR code contains encoded payment information that redirects users to PayPal to complete the transaction. **Customization options:** - Adjust dimensions using the `width` and `height` parameters (150-500 pixels) - Choose between payment URL (`action='pay'`) or details URL (`action='details'`) Note: This action uses the PayPal Invoicing API v2, which is the recommended version for new integrations." }, { "slug": "PAYPAL_GET_BILLING_SUBSCRIPTIONS", "name": "List Billing Subscriptions", "description": "Lists PayPal billing subscriptions for the merchant account. Use when you need to retrieve a paginated list of subscriptions, optionally filtered by creation date range, status, or plan ID. This action supports pagination via page and page_size parameters. Set total_required=true to include total item and page counts in the response." }, { "slug": "PAYPAL_GET_INVOICE", "name": "Get Invoice", "description": "Retrieves detailed information about a specific PayPal invoice by its ID. Use this action when you need to get details about an existing invoice, such as its status, amount, line items, payment history, or refund information. This is useful for verifying invoice details, tracking payment status, or auditing invoice information. This is a read-only operation that returns the complete invoice details including invoicer information, recipient details, items, amounts, payments, refunds, and HATEOAS links for related actions. Note: The invoice ID is a path parameter, not a query parameter." }, { "slug": "PAYPAL_GET_INVOICING_INVOICES_QR_CODE", "name": "Get Invoice QR Code", "description": "Generates a QR code image for a PayPal invoice. Use this action when you need to display a scannable QR code that customers can use to pay an invoice. The QR code contains encoded payment information that redirects customers to PayPal to complete the payment. You can customize the QR code dimensions using the width and height parameters. Note: The PayPal Invoicing v1 API is deprecated. Consider migrating to the v2 API for new integrations." }, { "slug": "PAYPAL_GET_INVOICING_TEMPLATE", "name": "Get Invoice Template", "description": "Retrieves detailed information about a specific PayPal invoice template by its ID. Use this action when you need to get details about an existing invoice template, such as its name, settings, template info (invoicer details, recipients, line items, amounts), or whether it is the default template. This is useful for verifying template configuration before creating invoices, auditing template settings, or retrieving template details for display purposes. This is a read-only operation that returns the complete template details including the template name, settings, template_info (invoicer business info, recipients, items, amounts, configuration), HATEOAS links, and whether it is a default or standard template. Note: The template_id is a path parameter, not a query parameter." }, { "slug": "PAYPAL_GET_ORDER", "name": "Get Order Details", "description": "Retrieves detailed information about a specific PayPal order by its ID. Use this action when you need to check the status, payment details, purchase units, payer information, or other properties of an existing order. The order details include the order status, intent (capture or authorize), purchase unit details (items, amounts, shipping), payer information, and HATEOAS links for available actions. You can optionally request the payment_source field using the fields parameter." }, { "slug": "PAYPAL_GET_PAYMENT", "name": "Get Payment Details", "description": "Retrieves details for a PayPal payment by its ID using the deprecated v1 Payments API. Use when you need to check the status, payer information, transaction details, or related resources of an existing payment. This action is useful for verifying payment details, checking if a payment was approved, viewing transaction amounts, or accessing related sale/authorization/capture resources. Note that this is a deprecated v1 API endpoint — consider using the v2 Payments API for new integrations." }, { "slug": "PAYPAL_GET_PAYMENTS_REFUND", "name": "Get Refund Details", "description": "Retrieves details for a PayPal refund by its ID. Use when you need to check the status, amount, or details of an existing refund. This action is useful for verifying refund details, checking refund status, or monitoring refund progress. Note that this is a deprecated v1 API endpoint." }, { "slug": "PAYPAL_GET_PLAN", "name": "Get Plan", "description": "Retrieves details for a specific PayPal billing plan by its ID. Use when you need to fetch information about an existing subscription plan, such as its pricing, billing cycles, status, or payment preferences." }, { "slug": "PAYPAL_GET_PRODUCT", "name": "Get Product", "description": "Retrieves detailed information about a specific PayPal product by its ID. Use when you need to get details about a product, such as its name, description, category, or type. This action is useful for verifying product details before creating plans or subscriptions." }, { "slug": "PAYPAL_GET_SUBSCRIPTION", "name": "Get Subscription Details", "description": "Retrieves the details of a PayPal subscription by its ID. Use this action when you need to check the status, billing information, subscriber details, or other properties of an existing subscription. Optionally, you can request additional fields like 'last_failed_payment' or 'plan' details using the fields parameter." }, { "slug": "PAYPAL_GET_USERINFO", "name": "Get PayPal User Info", "description": "Retrieves user claims from PayPal using OpenID Connect. Use when you need to obtain authenticated user's profile information such as email, name, and address based on an access token. This endpoint returns user identity information associated with the OAuth access token provided in the Authorization header. The access token must have been obtained via OpenID Connect authentication flow. This action requires an access token with the 'openid' scope. The token is passed via the Authorization header (Bearer token), which is automatically injected from the auth_metadata." }, { "slug": "PAYPAL_GET_USER_INFO", "name": "Get User Info", "description": "Retrieves user profile information from PayPal. Use when you need to get the authenticated user's profile details including name, email, address, and account verification status. The response is filtered by the specified schema. The only supported schema value is 'paypalv1.1', which returns the user information in a structured format." }, { "slug": "PAYPAL_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves detailed information about a specific PayPal webhook by its ID. Use this action when you need to get details about an existing webhook configuration, such as the webhook URL, subscribed event types, or webhook status. This is useful for auditing webhook settings, verifying webhook subscriptions, or checking webhook configuration. This is a read-only operation that returns the webhook details including its ID, URL, subscribed event types, and HATEOAS links for related actions." }, { "slug": "PAYPAL_GET_WEBHOOK_LOOKUP", "name": "Get Webhook Lookup", "description": "Retrieves detailed information about a specific PayPal webhook lookup by its ID. Use this action when you need to get details about a webhook lookup, such as its associated client ID and related HATEOAS links. This is useful for verifying webhook lookup information or auditing webhook lookup records. This is a read-only operation that returns the webhook lookup details including the lookup ID, client ID, and related links for navigation." }, { "slug": "PAYPAL_GET_WEB_PROFILE", "name": "Get Web Profile", "description": "Retrieves detailed information about a PayPal web experience profile by its ID. Use when you need to get details about an existing web experience profile, such as its name, flow configuration, input field settings, or presentation style. This is useful for auditing profile settings, verifying configurations, or retrieving profile information before updating. This is a read-only operation that returns the web profile details including its ID, name, flow config, input fields, presentation settings, and temporary status." }, { "slug": "PAYPAL_LIST_DISPUTES", "name": "List PayPal Disputes", "description": "List PayPal customer disputes with optional filtering by date, transaction, or state. Use when you need to retrieve a paginated list of PayPal disputes. You can filter by creation date, transaction ID, dispute state, or update time range. Results are sorted by creation time (newest first). Use the next_page_token from response links to paginate through additional results." }, { "slug": "PAYPAL_LIST_INVOICES", "name": "List PayPal Invoices", "description": "List invoices from PayPal with pagination support. Use when you need to retrieve a paginated list of PayPal invoices. You can control the number of results per page using page_size, navigate through pages using page, and optionally include total counts in the response by setting total_required=true. This action supports filtering fields to return either all invoice details (fields='all') or only the essential information like name, ID, and defaults (fields='none')." }, { "slug": "PAYPAL_LIST_LEGACY_BILLING_PLANS", "name": "List Legacy Billing Plans", "description": "Lists billing plans using the legacy PayPal payments API (v1/payments/billing-plans). Use when you need to retrieve billing plans created with the legacy PayPal billing agreements API. This is a read-only operation that returns plan details including payment definitions, merchant preferences, and status. Note: This action uses the legacy API endpoint. For newer integrations, consider using the /v1/billing/plans endpoint instead." }, { "slug": "PAYPAL_LIST_PAYMENTS", "name": "List Payments", "description": "Lists payment information for authorized payments. Use when you need to retrieve a list of PayPal payments with optional filtering by time, payer, or status. This action is useful for reconciling transactions, monitoring payment states, and building payment dashboards. Results are paginated and can be filtered by various criteria including creation time, payer ID, and payment status. NOTE: This endpoint is deprecated. For new integrations, use /v1/payments/captures and /v1/payments/authorizations instead." }, { "slug": "PAYPAL_LIST_PLANS", "name": "List billing plans", "description": "Lists billing plans from PayPal with optional filtering and pagination. Use this action when you need to retrieve available billing plans for subscription products. This is a read-only operation that returns plan details including pricing, billing cycles, and status. Results can be filtered by product_id and paginated using page and page_size parameters. The response includes HATEOAS links for navigating between pages and performing related actions (e.g., activate, deactivate, update plan)." }, { "slug": "PAYPAL_LIST_PRODUCTS", "name": "List PayPal Products", "description": "List products from the PayPal product catalog. Use when you need to retrieve a paginated list of products with their details, such as product IDs, names, and descriptions. This action supports pagination via page_size and page parameters. Set total_required=true to include total item and page counts in the response." }, { "slug": "PAYPAL_LIST_TEMPLATES", "name": "List PayPal Invoice Templates", "description": "List invoice templates from PayPal. Use when you need to retrieve a paginated list of PayPal invoice templates with their details. This is a read-only operation that returns template information including names, IDs, settings, and default status. The action supports pagination via page and page_size parameters, and you can control which fields are returned using the fields parameter (set to 'none' for minimal template info)." }, { "slug": "PAYPAL_LIST_WEBHOOK_EVENT_TYPES", "name": "List webhook event types", "description": "Lists all available PayPal webhook event types to which you can subscribe. Use this action when you need to discover all webhook events available in the PayPal API before creating or configuring webhooks. This is useful for initial setup or when you need to display available webhook options to users. The endpoint requires no parameters and returns the full list of supported event types with their descriptions and statuses. This is a read-only operation that queries available events without modifying anything." }, { "slug": "PAYPAL_LIST_WEBHOOK_EVENT_TYPE_SUBSCRIPTIONS", "name": "List webhook event type subscriptions", "description": "Lists event type subscriptions for a specific PayPal webhook. Use this action when you need to retrieve the list of event types to which a specific webhook is subscribed. This is useful for auditing webhook configurations, verifying which events a webhook is set up to receive, or checking the status of event subscriptions. Unlike the ListWebhookEventTypes action which lists all available event types, this action returns only the event types that a specific webhook is subscribed to. This is a read-only operation that does not modify any webhook configuration." }, { "slug": "PAYPAL_LIST_WEBHOOK_LOOKUPS", "name": "List webhook lookups", "description": "Lists all webhook lookups associated with your PayPal application. Use this action when you need to retrieve webhook lookups that have been configured for your application. This is useful for auditing webhook configurations, verifying lookup status, or checking which client IDs have registered webhooks. This is a read-only operation that returns webhook lookup details including IDs, client IDs, and HATEOAS links for related actions. The action requires no input parameters." }, { "slug": "PAYPAL_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Lists webhooks configured for an application or PayPal account. Use this action when you need to retrieve all webhooks that have been created and configured in your PayPal integration. This is useful for auditing existing webhook configurations, verifying webhook subscriptions, or checking webhook status. The results can be filtered by anchor_type to show webhooks for the application (APPLICATION) or a specific account (ACCOUNT). This is a read-only operation that returns webhook details including URLs, subscribed event types, and HATEOAS links for related actions." }, { "slug": "PAYPAL_LIST_WEB_PROFILES", "name": "List web experience profiles", "description": "Lists web experience profiles from PayPal with optional pagination. Use this action when you need to retrieve available web experience profiles for customizing the checkout experience. This is a read-only operation that returns profile details including flow configuration, input field settings, and branding options. Results can be paginated using page and page_size parameters. The response includes up to 20 profiles by default (configurable via page_size), with HATEOAS links for pagination if more results exist." }, { "slug": "PAYPAL_PATCH_ORDERS", "name": "Update checkout order (partial)", "description": "Partially updates a PayPal checkout order using JSON Patch (RFC 6902) operations. Use this action when you need to update specific fields of an existing checkout order without replacing the entire resource. This action accepts an array of patch operations (add, remove, replace, move, copy, test) and applies them to the checkout order. Common use cases include updating the order description, custom fields, or other patchable properties. A successful update returns HTTP 204 No Content with no JSON response body. This action is idempotent - applying the same patch multiple times produces the same result." }, { "slug": "PAYPAL_PATCH_PLAN", "name": "Update billing plan (partial)", "description": "Partially updates a PayPal billing plan using JSON Patch (RFC 6902) operations. Use this action when you need to update specific fields of a billing plan without replacing the entire resource. This action accepts an array of patch operations (add, remove, replace, move, copy, test) and applies them to the billing plan. Common use cases include updating the plan name, description, payment definitions, or other fields. A successful update returns HTTP 204 No Content with no JSON response body. This action is idempotent - applying the same patch multiple times produces the same result." }, { "slug": "PAYPAL_PATCH_SUBSCRIPTION", "name": "Update Subscription", "description": "Update a PayPal subscription using JSON Patch operations. Use when you need to modify specific fields of an existing subscription such as custom_id, billing_token, shipping_address, or other patchable properties. This action applies partial updates to the subscription using RFC 6902 JSON Patch format. Multiple operations can be provided and will be applied in order." }, { "slug": "PAYPAL_PATCH_WEB_PROFILE", "name": "Update web experience profile (partial)", "description": "Partially updates a PayPal web experience profile using JSON Patch (RFC 6902) operations. Use this action when you need to update specific fields of a web experience profile without replacing the entire resource. This action accepts an array of patch operations (add, remove, replace, move, copy, test) and applies them to the web experience profile. Common use cases include updating the profile name, presentation settings, flow configuration, or other fields. A successful update returns HTTP 204 No Content with no JSON response body. This action is idempotent - applying the same patch multiple times produces the same result." }, { "slug": "PAYPAL_PING_BRAINTREE", "name": "Braintree Ping", "description": "Sends a ping query to the PayPal Braintree GraphQL API. Use when you need to verify connectivity and authentication status with the Braintree GraphQL endpoint. Returns the literal string 'pong' on successful connection. This is a simple health check endpoint for verifying API connectivity. The ping operation does not modify any data and is idempotent." }, { "slug": "PAYPAL_QUERY_BRAINTREE_REPORT", "name": "Query Braintree Report", "description": "Queries Braintree reports via GraphQL API. Use this action when you need to retrieve reports from Braintree's GraphQL API, such as transaction reports, dispute reports, merchant funds availability, or transaction settlement outcomes. Each report type returns different data structures based on the specified report type and filter parameters. The report query provides access to various report types that can be queried with their own input parameters. This is a read-only operation that retrieves report data without modifying any records. Note: This action uses the Braintree GraphQL API endpoint at /graphql." }, { "slug": "PAYPAL_RETRIEVE_PAYMENT_RESOURCE", "name": "Retrieve Payment Resource", "description": "Retrieve a PayPal payment resource by its ID. Use this action when you need to fetch details about an existing payment resource created through the Payment Links and Buttons API. This action is useful for checking payment resource status, viewing line items, or retrieving associated links after creating a payment resource. Note: Payment resources are shareable payment links used for simple payment flows." }, { "slug": "PAYPAL_SEARCH_INVOICES", "name": "Search PayPal Invoices", "description": "Search for PayPal invoices based on various filter criteria. Use when you need to find invoices matching specific criteria such as status, date ranges, recipient information, amount ranges, or invoice numbers. This action supports pagination and can return total counts when total_required=true. **Common use cases:** - Find all invoices with a specific status (e.g., all DRAFT or SENT invoices) - Find invoices created within a date range - Find invoices for a specific customer by email or business name - Find invoices within a monetary amount range - Combine multiple filters for precise invoice searches **Pagination:** Results are paginated using page and page_size parameters. Set total_required=true to include total_counts in the response." }, { "slug": "PAYPAL_SEND_INVOICE", "name": "Send Invoice", "description": "Sends a PayPal invoice to the recipient via email. Use this action when you need to send a draft invoice to the recipient. The invoice must be in DRAFT status before it can be sent. Once sent, the invoice status changes to SENT and the recipient will receive an email notification with a link to view and pay the invoice. You can optionally customize the email subject and note, specify whether to send a copy to the invoicer, and add additional CC recipients." }, { "slug": "PAYPAL_SIMULATE_WEBHOOK_EVENT", "name": "Simulate Webhook Event", "description": "Simulates a webhook event to test your webhook integration. Use this action when you need to verify that your webhook endpoint is correctly configured and receiving events from PayPal. This is particularly useful during development and testing to ensure webhook handlers process events correctly without requiring real transaction data. Note: Either `url` or `webhook_id` must be provided in the request." }, { "slug": "PAYPAL_UPDATE_DISPUTE", "name": "Update Dispute", "description": "Partially update a PayPal dispute using JSON Patch operations. Use when you need to modify specific fields of an existing dispute such as notes, status, or other patchable properties. This action applies partial updates to the dispute using RFC 6902 JSON Patch format. Multiple operations can be provided and will be applied in order. The API returns HTTP 202 (Accepted) on success." }, { "slug": "PAYPAL_UPDATE_INVOICE", "name": "Update Invoice (Full)", "description": "Fully updates a PayPal invoice by replacing the entire invoice with the provided data. Use this action when you need to completely replace an invoice with new data. The invoice must be in DRAFT status to be fully updated. Note: This action sends optional notifications to both the recipient and the merchant by default. You can control this behavior using the send_to_recipient and send_to_invoicer parameters. This action is useful when you want to replace the entire invoice rather than making partial updates. For partial updates, use the UpdateInvoice action with PATCH semantics." }, { "slug": "PAYPAL_UPDATE_PAY_PAL_PRODUCT", "name": "Update product (partial)", "description": "Partially updates a PayPal product using JSON Patch (RFC 6902) operations. Use this action when you need to update specific fields of a product without replacing the entire resource. This action accepts an array of patch operations (add, remove, replace, move, copy, test) and applies them to the product. Common use cases include updating the product name, description, or other fields. A successful update returns HTTP 204 No Content with no JSON response body. This action is idempotent - applying the same patch multiple times produces the same result." }, { "slug": "PAYPAL_UPDATE_PAY_PAL_WEBHOOK", "name": "Update Webhook", "description": "Updates a PayPal webhook using JSON Patch (RFC 6902) operations. Use this action when you need to modify specific fields of a webhook such as the URL or event types without replacing the entire resource. This action accepts an array of patch operations (add, remove, replace, move, copy, test) and applies them to the webhook. Common use cases include updating the webhook URL, adding or removing event type subscriptions, or modifying other webhook configuration. A successful update returns HTTP 200 OK with the updated webhook object. This action is idempotent - applying the same patch multiple times produces the same result." }, { "slug": "PAYPAL_UPDATE_TEMPLATES", "name": "Update template", "description": "Fully updates a PayPal invoice template. Use this action when you need to completely replace an existing template with new values. Unlike partial updates, this replaces all fields of the template. The template_id path parameter must match the id in the request body. **Note:** This action replaces the entire template. Any fields not included in the request will be reset to their default values. **Required fields:** - template_id (path parameter): The ID of the template to update - id (request body): The template ID (must match the path parameter) - name (request body): The template name (must be unique) A successful update returns HTTP 200 OK with the updated template object. This action is idempotent - updating a template with the same values produces the same result without side effects." }, { "slug": "PAYPAL_UPDATE_WEB_PROFILE", "name": "Update web experience profile", "description": "Updates a PayPal web experience profile. Use this action when you need to modify an existing web experience profile that controls the checkout flow appearance, branding, shipping options, and customer experience for PayPal payments. This action replaces the entire profile configuration with the provided values. A successful update returns HTTP 204 No Content with no JSON response body. This action is idempotent - updating a profile with the same values produces the same result without side effects." }, { "slug": "PAYPAL_VERIFY_PAYMENT_METHOD", "name": "Verify Payment Method via Braintree", "description": "Verifies a multi-use payment method to ensure it has passed fraud rules and is associated with a valid account. Use this action when you need to verify that a vaulted (multi-use) payment method is valid before using it for transactions. The verification runs the payment method through your configured Braintree fraud rules and confirms with the card issuer that the card is associated with a valid account. This action is commonly used when a customer adds a new payment method and you want to validate it, when checking if a stored payment method is still valid before a scheduled transaction, or as part of a risk management workflow to pre-validate payment methods. The response includes a verification status (VERIFIED, FAILED, GATEWAY_REJECTED, or PROCESSOR_DECLINED) along with processor response codes. Note: This action uses the Braintree GraphQL API endpoint at /graphql. The payment method must be a multi-use token that has been stored in the Braintree vault." }, { "slug": "PAYPAL_VERIFY_WEBHOOK_SIGNATURE", "name": "Verify Webhook Signature", "description": "Verifies the signature of a PayPal webhook notification to confirm its authenticity. Use this action when you receive a webhook notification from PayPal and need to verify that it was actually sent by PayPal and not tampered with during transmission. This is essential for security when processing webhook events like payments, disputes, or subscription changes. The required parameters (auth_algo, cert_url, transmission_id, transmission_sig, transmission_time, webhook_id, and webhook_event) are extracted from the webhook notification headers and body that PayPal sends to your endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "S2S_OAUTH2", "name": "paypal_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "PayPal REST API Client ID from your PayPal Developer Dashboard (https://developer.paypal.com/dashboard/applications). Must match the selected Environment (Live or Sandbox credentials are not interchangeable).", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "PayPal REST API Client Secret from your PayPal Developer Dashboard.", "required": true, "default": null } ], "optional": [ { "name": "region", "displayName": "Environment", "type": "string", "description": "PayPal environment to use. Must be exactly \"live\" (default) or \"sandbox\". Sandbox credentials will fail against Live and vice versa.", "required": false, "default": "live" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "paystack", "name": "Paystack", "logo": "https://logos.composio.dev/api/paystack", "description": "Nigerian financial technology company that offers payment processing services to businesses in Africa.", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 112, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PAYSTACK_ADD_PRODUCTS_TO_PAGE", "name": "Add Products to Page", "description": "Tool to add products to a Paystack payment page. Use when you need to add products to an existing page that was created with 'product' type. This action adds the specified products to the page, allowing customers to select from multiple products when making a payment." }, { "slug": "PAYSTACK_ADD_PRODUCTS_TO_STOREFRONT", "name": "Add Products to Storefront", "description": "Tool to add previously created products to a Storefront. Use when you need to associate existing products with a specific storefront." }, { "slug": "PAYSTACK_ADD_SPLIT_CODE_TO_VIRTUAL_TERMINAL", "name": "Add Split Code to Virtual Terminal", "description": "Tool to add a split code to a virtual terminal. Use when you need to assign payment splitting configuration to a virtual terminal." }, { "slug": "PAYSTACK_ADD_SUBACCOUNT_TO_SPLIT", "name": "Add Subaccount to Split", "description": "Tool to add a subaccount to a split configuration, or update the share of an existing subaccount. Use this when you need to modify the payment distribution by adding new partners/customers to a split or adjusting their allocation. The split must already exist before adding subaccounts to it." }, { "slug": "PAYSTACK_ARCHIVE_PAYMENT_REQUEST", "name": "Archive Payment Request", "description": "Tool to archive a payment request to clean up records. Use when you need to remove a payment request from active listings. An archived payment request cannot be verified and will not appear when listing payment requests." }, { "slug": "PAYSTACK_ASSIGN_DESTINATION_TO_VIRTUAL_TERMINAL", "name": "Assign Destination to Virtual Terminal", "description": "Tool to assign WhatsApp destinations to a Virtual Terminal for payment notifications. Use when you need to add recipients who will receive notifications for payments made through a specific Virtual Terminal." }, { "slug": "PAYSTACK_CHECK_PENDING_CHARGE", "name": "Check Pending Charge", "description": "Tool to check the status of a pending charge transaction. Use when you receive a 'pending' status from a charge endpoint or need to verify if a charge status has changed. Wait at least 10 seconds after initiating a charge before calling this endpoint." }, { "slug": "PAYSTACK_CHECK_SLUG_AVAILABILITY", "name": "Check Slug Availability", "description": "Tool to check if a custom slug is available for use when creating a payment page. Use when you need to verify a slug is not already taken before creating a new payment page." }, { "slug": "PAYSTACK_CREATE_BULK_TRANSFER_RECIPIENT", "name": "Bulk Create Transfer Recipients", "description": "Create multiple transfer recipients in batches. Use when you need to add multiple recipients at once for transfers. Duplicate account numbers automatically return existing recipient records instead of creating duplicates." }, { "slug": "PAYSTACK_CREATE_CHARGE", "name": "Create Charge", "description": "Tool to initiate a payment by integrating the payment channel of your choice. Use when you need to charge a customer using authorization code, bank account, mobile money, or USSD." }, { "slug": "PAYSTACK_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a customer on your Paystack integration. Use when you need to add a new customer with their email address and optional details like name and phone number." }, { "slug": "PAYSTACK_CREATE_PAYMENT_PAGE", "name": "Create Payment Page", "description": "Tool to create a payment page on your Paystack integration. Use when you need to create a payment page that customers can visit to make payments." }, { "slug": "PAYSTACK_CREATE_PAYMENT_REQUEST", "name": "Create Payment Request", "description": "Create a new payment request by issuing an invoice to a customer. Use this when you need to request payment from a customer for goods or services." }, { "slug": "PAYSTACK_CREATE_PLAN", "name": "Create Plan", "description": "Tool to create a plan for recurring payments on Paystack. Use when you need to set up subscription billing or recurring payment schedules. The plan defines the amount, interval, and other settings for recurring charges to customers." }, { "slug": "PAYSTACK_CREATE_REFUND", "name": "Create Refund", "description": "Tool to initiate a refund for a previously completed transaction on Paystack. Use when a customer requests a refund or when you need to reverse a payment. The refund can be for the full transaction amount or a partial amount." }, { "slug": "PAYSTACK_CREATE_SPLIT", "name": "Create Split Configuration", "description": "Tool to create a split configuration for transaction revenue sharing. Use when you need to configure how transaction revenue should be split between multiple subaccounts (e.g., for marketplace platforms, revenue sharing, or commission distribution)." }, { "slug": "PAYSTACK_CREATE_STOREFRONT", "name": "Create Storefront", "description": "Create a digital storefront on Paystack to manage and display products. Use this when you need to set up a new online shop for selling digital or physical products." }, { "slug": "PAYSTACK_CREATE_SUBACCOUNT", "name": "Create Subaccount", "description": "Tool to create a subaccount on your Paystack integration. Use when you need to set up a new subaccount with bank details and settlement information." }, { "slug": "PAYSTACK_CREATE_TRANSFER_RECIPIENT", "name": "Create Transfer Recipient", "description": "Tool to create a new recipient for transfers. Use when you need to set up a recipient before initiating a transfer. Note: A duplicate account number will lead to retrieval of the existing record rather than creating a new one." }, { "slug": "PAYSTACK_CREATE_VIRTUAL_TERMINAL", "name": "Create Virtual Terminal", "description": "Create a Virtual Terminal on your Paystack integration to accept payments. Use this when you need to set up a new payment terminal for in-person or remote transactions with custom notification settings." }, { "slug": "PAYSTACK_DEACTIVATE_AUTHORIZATION", "name": "Deactivate Authorization", "description": "Tool to deactivate an authorization when a card or payment method needs to be forgotten. Use when customers want to remove saved payment methods from their account." }, { "slug": "PAYSTACK_DEACTIVATE_VIRTUAL_TERMINAL", "name": "Deactivate Virtual Terminal", "description": "Tool to deactivate a Virtual Terminal on your integration. Use when you need to disable a terminal and prevent it from accepting further payments." }, { "slug": "PAYSTACK_DELETE_PRODUCT", "name": "Delete Product", "description": "Delete a previously created product from Paystack by its ID. Use this when you need to remove a product from your catalog. The deletion is permanent and cannot be undone." }, { "slug": "PAYSTACK_DELETE_STOREFRONT", "name": "Delete Storefront", "description": "Delete a previously created storefront from Paystack by its ID. Use this when you need to remove a storefront. The deletion is permanent and cannot be undone." }, { "slug": "PAYSTACK_DELETE_TRANSFER_RECIPIENT", "name": "Delete Transfer Recipient", "description": "Tool to delete a transfer recipient by setting it to inactive status. Use when you need to remove a recipient from the active transfer list." }, { "slug": "PAYSTACK_DISABLE_OTP_FOR_TRANSFERS", "name": "Disable OTP for Transfers", "description": "Tool to disable OTP requirement for programmatic transfers. Use when you want to complete transfers without OTP verification. Returns an OTP needed to finalize the request." }, { "slug": "PAYSTACK_DISABLE_SUBSCRIPTION", "name": "Disable Subscription", "description": "Tool to disable a subscription on your Paystack integration. Use when you need to stop recurring charges for a customer subscription. Requires the subscription code and email verification token sent to the customer." }, { "slug": "PAYSTACK_DUPLICATE_STOREFRONT", "name": "Duplicate Storefront", "description": "Tool to duplicate a previously created Storefront. Use when you need to create a copy of an existing storefront with the same configuration." }, { "slug": "PAYSTACK_ENABLE_OTP_REQUIREMENT_FOR_TRANSFERS", "name": "Enable OTP for Transfers", "description": "Tool to enable OTP requirement for transfers. Use when a customer wants to stop being able to complete transfers programmatically and require OTP verification instead." }, { "slug": "PAYSTACK_EXPORT_TRANSACTIONS", "name": "Export Transactions", "description": "Tool to export transactions from Paystack for a specific timeframe. Use when you need to download transaction data for reporting, analysis, or record-keeping purposes. The API returns a download link that expires after a certain time." }, { "slug": "PAYSTACK_FETCH_BALANCE", "name": "Fetch Balance", "description": "Tool to fetch the available balance on your Paystack integration. Use when you need to check account balance across different currencies." }, { "slug": "PAYSTACK_FETCH_BALANCE_LEDGER", "name": "Fetch balance ledger", "description": "Tool to fetch all pay-ins and pay-outs that went into your Paystack balance. Use when you need to view transaction history and balance changes over time." }, { "slug": "PAYSTACK_FETCH_BULK_CHARGE_BATCH", "name": "Fetch Bulk Charge Batch", "description": "Tool to retrieve a specific bulk charge batch by code. Use when you need to check the progress of a bulk charge batch via its total_charges and pending_charges attributes." }, { "slug": "PAYSTACK_FETCH_CUSTOMER", "name": "Fetch Customer", "description": "Tool to get details of a customer on your integration. Use when you need to retrieve customer information using their customer code." }, { "slug": "PAYSTACK_FETCH_MANDATE_AUTHORIZATIONS", "name": "Fetch Mandate Authorizations", "description": "Tool to fetch the list of direct debit mandate authorizations associated with a customer. Use when you need to retrieve all mandate authorizations for a specific customer ID." }, { "slug": "PAYSTACK_FETCH_PAYMENT_PAGE", "name": "Fetch Payment Page", "description": "Tool to fetch details of a payment page on your Paystack integration. Use when you need to retrieve information about a specific payment page by its ID." }, { "slug": "PAYSTACK_FETCH_PAYMENT_REQUEST", "name": "Fetch Payment Request Details", "description": "Tool to fetch details of a payment request from Paystack. Use when you need to retrieve comprehensive information about a previously created payment request, including customer details, payment status, line items, and associated metadata." }, { "slug": "PAYSTACK_FETCH_PAYMENT_SESSION_TIMEOUT", "name": "Fetch Payment Session Timeout", "description": "Tool to fetch the payment session timeout configured on your Paystack integration. Use when you need to check the current timeout duration for payment sessions." }, { "slug": "PAYSTACK_FETCH_PLAN", "name": "Fetch Plan", "description": "Tool to get details of a plan on your integration. Use when you need to retrieve plan information using the plan code or ID." }, { "slug": "PAYSTACK_FETCH_PRODUCT", "name": "Fetch Product", "description": "Tool to get details of a product on your integration. Use when you need to retrieve product information by its ID." }, { "slug": "PAYSTACK_FETCH_PRODUCT_ORDERS", "name": "Fetch Product Orders", "description": "Tool to fetch all orders for a particular product on your Paystack integration. Use when you need to retrieve order history and details for a specific product by its ID." }, { "slug": "PAYSTACK_FETCH_REFUND", "name": "Fetch Refund", "description": "Tool to get details of a refund on your integration. Use when you need to retrieve comprehensive information about a specific refund, including status, amount, customer details, and timestamps." }, { "slug": "PAYSTACK_FETCH_SPLIT", "name": "Fetch Split", "description": "Tool to get details of a split configuration for a transaction. Use when you need to retrieve split payment configuration information by its ID." }, { "slug": "PAYSTACK_FETCH_STOREFRONT", "name": "Fetch Storefront", "description": "Tool to get the details of a previously created Storefront. Use when you need to retrieve information about a specific storefront including its products, contacts, and configuration." }, { "slug": "PAYSTACK_FETCH_STOREFRONT_ORDERS", "name": "Fetch Storefront Orders", "description": "Tool to fetch all orders in a Paystack storefront. Use when you need to retrieve order information for a specific storefront using its ID." }, { "slug": "PAYSTACK_FETCH_SUBACCOUNT", "name": "Fetch Subaccount", "description": "Tool to get details of a subaccount on your integration. Use when you need to retrieve subaccount information using the subaccount code." }, { "slug": "PAYSTACK_FETCH_SUBSCRIPTION", "name": "Fetch Subscription", "description": "Tool to get details of a subscription on your integration. Use when you need to retrieve subscription information using the subscription code." }, { "slug": "PAYSTACK_FETCH_TRANSACTION", "name": "Fetch Transaction", "description": "Tool to get details of a transaction carried out on your integration. Use when you need to retrieve comprehensive information about a specific transaction, including payment status, customer details, authorization info, and timestamps." }, { "slug": "PAYSTACK_FETCH_TRANSACTION_TIMELINE", "name": "Fetch Transaction Timeline", "description": "Tool to fetch the timeline of a transaction showing the steps taken from initiation to completion. Use when you need to debug payment flows or understand where customers encountered issues during the payment process." }, { "slug": "PAYSTACK_FETCH_TRANSFER_RECIPIENT", "name": "Fetch Transfer Recipient", "description": "Tool to fetch details of a transfer recipient. Use when you need to retrieve information about an existing recipient using their recipient code." }, { "slug": "PAYSTACK_FETCH_VIRTUAL_TERMINAL", "name": "Fetch Virtual Terminal", "description": "Tool to fetch a Virtual Terminal on your Paystack integration. Use when you need to retrieve details about an existing virtual terminal, including its configuration, payment methods, and active status." }, { "slug": "PAYSTACK_FINALIZE_PAYMENT_REQUEST", "name": "Finalize Payment Request", "description": "Tool to finalize the creation of a draft payment request for a customer. Use when you need to convert a draft payment request into an active one that can be paid by the customer." }, { "slug": "PAYSTACK_GENERATE_UPDATE_SUBSCRIPTION_LINK", "name": "Generate Update Subscription Link", "description": "Tool to generate a link for updating the card on a subscription. Use when you need to allow a customer to update their payment card for an active subscription." }, { "slug": "PAYSTACK_GET_PAYMENT_REQUEST_TOTALS", "name": "Get Payment Request Totals", "description": "Tool to retrieve metrics for all pending and successful payment requests. Use when you need an overview of payment request amounts grouped by currency and status." }, { "slug": "PAYSTACK_GET_TRANSACTION_TOTALS", "name": "Get Transaction Totals", "description": "Tool to get the total amount received on your Paystack account. Use when you need to retrieve transaction totals and pending transfers, optionally filtered by date range." }, { "slug": "PAYSTACK_INITIALIZE_AUTHORIZATION", "name": "Initialize Authorization", "description": "Tool to initialize a reusable authorization for recurring transactions. Use when you need to create a direct debit mandate that allows charging a customer's account repeatedly without requiring them to provide payment details each time." }, { "slug": "PAYSTACK_INITIALIZE_TRANSACTION", "name": "Initialize Transaction", "description": "Tool to initialize a transaction from your backend. Returns an authorization URL to redirect the customer to for payment. Use when you need to start a payment flow and get a checkout URL for the customer." }, { "slug": "PAYSTACK_INITIATE_BULK_CHARGE", "name": "Initiate Bulk Charge", "description": "Tool to initiate a bulk charge on your integration. Use when you need to charge multiple customers at once using their authorization codes." }, { "slug": "PAYSTACK_LIST_BANKS", "name": "List Banks", "description": "Tool to get a list of all supported banks and their properties on Paystack. Use when you need to retrieve available banks for payments, transfers, or account verification." }, { "slug": "PAYSTACK_LIST_BULK_CHARGE_BATCHES", "name": "List Bulk Charge Batches", "description": "Tool to list bulk charge batches created on your integration. Use when you need to view all bulk charge batches, optionally filtering by status (active, paused, or complete) and paginating through results." }, { "slug": "PAYSTACK_LIST_CHARGES_IN_BATCH", "name": "List Charges in Batch", "description": "Tool to retrieve the charges associated with a specified bulk charge batch. Use when you need to inspect individual charge details within a batch to monitor charge statuses or retrieve charge-level information." }, { "slug": "PAYSTACK_LIST_COUNTRIES", "name": "List countries", "description": "Tool to retrieve a list of countries that Paystack currently supports. Use when you need to know which countries are available for Paystack operations." }, { "slug": "PAYSTACK_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list customers available on your integration. Use when you need to retrieve all customers with optional filtering by date range and pagination support." }, { "slug": "PAYSTACK_LIST_DISPUTES", "name": "List Disputes", "description": "Tool to list transaction disputes filed by customers on your Paystack integration. Use when you need to retrieve disputes with optional filtering by status, transaction, or date range." }, { "slug": "PAYSTACK_LIST_DOMAINS", "name": "List Apple Pay Domains", "description": "Tool to list all registered Apple Pay domains on your integration. Use when you need to retrieve domains configured for Apple Pay payments." }, { "slug": "PAYSTACK_LIST_MANDATE_AUTHORIZATIONS", "name": "List Mandate Authorizations", "description": "Tool to get a list of all direct debit mandates on your integration. Use when you need to retrieve mandate authorizations with optional filtering by status and pagination support." }, { "slug": "PAYSTACK_LIST_ORDERS", "name": "List Orders", "description": "Tool to list orders available on your integration. Use when you need to retrieve all orders with optional filtering by date range and pagination support." }, { "slug": "PAYSTACK_LIST_PAYMENT_PAGES", "name": "List Payment Pages", "description": "Tool to list payment pages available on your Paystack integration. Use when you need to retrieve all payment pages with optional filtering by date range and pagination." }, { "slug": "PAYSTACK_LIST_PAYMENT_REQUESTS", "name": "List Payment Requests", "description": "Tool to list all previously created payment requests to your customers. Use when you need to retrieve a list of payment requests with optional filters for customer, status, currency, or date range." }, { "slug": "PAYSTACK_LIST_PLANS", "name": "List Plans", "description": "Tool to list all subscription plans available on your integration. Use when you need to retrieve plans, optionally filtering by interval, amount, or date range." }, { "slug": "PAYSTACK_LIST_PRODUCTS", "name": "List Products", "description": "Tool to list products available on your integration. Use when you need to retrieve all products with optional filtering by date range, active status, and pagination support." }, { "slug": "PAYSTACK_LIST_REFUNDS", "name": "List Refunds", "description": "Tool to list refunds available on your integration. Use when you need to retrieve a list of refunds with optional filters for date range and pagination." }, { "slug": "PAYSTACK_LIST_SETTLEMENTS", "name": "List Settlements", "description": "Tool to list settlements made to your settlement accounts. Use when you need to retrieve settlement information with optional pagination support." }, { "slug": "PAYSTACK_LIST_SPLITS", "name": "List Splits", "description": "Tool to list the transaction splits available on your integration. Use when you need to retrieve all split configurations with optional filtering by name, status, subaccount, or date range." }, { "slug": "PAYSTACK_LIST_STATES_AVS", "name": "List states for address verification", "description": "Tool to retrieve a list of states for a country for address verification. Use when you need to get available states/provinces for a specific country code." }, { "slug": "PAYSTACK_LIST_STOREFRONT_PRODUCTS", "name": "List Storefront Products", "description": "Tool to list all products in a Paystack storefront. Use when you need to retrieve product information for a specific storefront using its ID." }, { "slug": "PAYSTACK_LIST_STOREFRONTS", "name": "List Storefronts", "description": "Tool to list storefronts available on your integration. Use when you need to retrieve all storefronts with optional filtering by status and pagination support." }, { "slug": "PAYSTACK_LIST_SUBACCOUNTS", "name": "List Subaccounts", "description": "Tool to list subaccounts available on your integration. Use when you need to retrieve all subaccounts with optional filtering by active status and pagination support." }, { "slug": "PAYSTACK_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Tool to list all subscriptions available on your integration. Use when you need to retrieve subscriptions, optionally filtering by plan, customer, or date range." }, { "slug": "PAYSTACK_LIST_TRANSACTIONS", "name": "List Transactions", "description": "Tool to list transactions that have occurred on your integration. Use when you need to retrieve all transactions with optional filtering by date range, status, source, channel, customer, and other criteria. Supports both cursor-based and page-based pagination." }, { "slug": "PAYSTACK_LIST_TRANSFER_RECIPIENTS", "name": "List Transfer Recipients", "description": "Tool to list transfer recipients available on your integration. Use when you need to retrieve all recipients with optional pagination support." }, { "slug": "PAYSTACK_LIST_TRANSFERS", "name": "List Transfers", "description": "Tool to list all transfers carried out on your integration. Use when you need to retrieve transfer history with optional filtering by status, recipient, or date range." }, { "slug": "PAYSTACK_LIST_VIRTUAL_TERMINALS", "name": "List Virtual Terminals", "description": "Tool to list virtual terminals available on your integration. Use when you need to retrieve all virtual terminals with pagination support." }, { "slug": "PAYSTACK_PAUSE_BULK_CHARGE", "name": "Pause Bulk Charge", "description": "Tool to pause processing of a bulk charge batch. Use when you need to temporarily stop a bulk charge batch from processing further charges." }, { "slug": "PAYSTACK_PUBLISH_STOREFRONT", "name": "Publish Storefront", "description": "Tool to make a Storefront publicly available on Paystack. Use this when you need to publish a previously created storefront so that customers can access and purchase from it." }, { "slug": "PAYSTACK_REMOVE_SUBACCOUNT_FROM_SPLIT", "name": "Remove Subaccount from Split", "description": "Tool to remove a subaccount from a split configuration. Use this when you need to stop payment distribution to a specific partner or customer in an existing split. The share parameter must match the subaccount's current allocation." }, { "slug": "PAYSTACK_RESEND_OTP_FOR_TRANSFER", "name": "Resend OTP for Transfer", "description": "Tool to resend OTP for a transfer. Use when a customer is having trouble receiving their OTP and needs a new one sent to complete their transfer." }, { "slug": "PAYSTACK_RESOLVE_CARD_BIN", "name": "Resolve Card BIN", "description": "Tool to get basic information about a card BIN (Bank Identification Number). Use when you need to retrieve card details such as brand, issuing bank, country, and card type from the first 6 digits of a card." }, { "slug": "PAYSTACK_RESUME_BULK_CHARGE_BATCH", "name": "Resume Bulk Charge Batch", "description": "Tool to resume processing of a previously paused bulk charge batch. Use when you need to restart a paused bulk charge batch using its batch code." }, { "slug": "PAYSTACK_SEND_PAYMENT_REQUEST_NOTIFICATION", "name": "Send Payment Request Notification", "description": "Tool to send an email notification to a customer for a previously created payment request. Use when you need to remind a customer about an unpaid invoice or payment request." }, { "slug": "PAYSTACK_SEND_SUBSCRIPTION_UPDATE_LINK", "name": "Send Subscription Update Link", "description": "Tool to send an email to the customer with a link to update the card on their subscription. Use when a customer needs to update their payment card for an active subscription and you want to notify them via email." }, { "slug": "PAYSTACK_SET_RISK_ACTION", "name": "Set Risk Action", "description": "Tool to set a customer's risk action by whitelisting or blacklisting them. Use when you need to apply fraud prevention rules to a specific customer by setting their risk action to 'allow' (whitelist), 'deny' (blacklist), or 'default' (no special action)." }, { "slug": "PAYSTACK_SUBMIT_PHONE", "name": "Submit Phone", "description": "Tool to submit phone number when requested during a charge transaction. Use this when a charge requires phone number submission for verification or authentication purposes." }, { "slug": "PAYSTACK_TRIGGER_DIRECT_DEBIT_ACTIVATION_CHARGE", "name": "Trigger direct debit activation charge", "description": "Tool to trigger an activation charge on an inactive direct debit mandate for a customer. Use when a mandate needs to be reactivated or retried." }, { "slug": "PAYSTACK_UNASSIGN_DESTINATION_FROM_VIRTUAL_TERMINAL", "name": "Unassign Destination from Virtual Terminal", "description": "Tool to unassign WhatsApp destinations from a Virtual Terminal. Use when you need to remove recipients who should no longer receive payment notifications for a specific Virtual Terminal." }, { "slug": "PAYSTACK_UNREGISTER_APPLE_PAY_DOMAIN", "name": "Unregister Apple Pay Domain", "description": "Tool to unregister a top-level domain or subdomain previously used for Apple Pay integration. Use when you need to remove a domain from your Apple Pay configuration." }, { "slug": "PAYSTACK_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update a customer's details on your Paystack integration. Use when you need to modify existing customer information such as name, phone number, or metadata." }, { "slug": "PAYSTACK_UPDATE_PAYMENT_PAGE", "name": "Update Payment Page", "description": "Tool to update a payment page on your Paystack integration. Use when you need to modify details of an existing payment page such as name, description, amount, or active status." }, { "slug": "PAYSTACK_UPDATE_PAYMENT_REQUEST", "name": "Update Payment Request", "description": "Tool to update a payment request on your Paystack integration. Use when you need to modify details of an existing payment request such as amount, description, due date, or other attributes." }, { "slug": "PAYSTACK_UPDATE_PAYMENT_SESSION_TIMEOUT", "name": "Update Payment Session Timeout", "description": "Tool to update the payment session timeout on your Paystack integration. Use when you need to change the duration before a payment session expires." }, { "slug": "PAYSTACK_UPDATE_PLAN", "name": "Update Plan", "description": "Tool to update a plan's details on your Paystack integration. Use when you need to modify an existing plan's name, amount, interval, or other settings. Only the fields you provide will be updated; other fields remain unchanged." }, { "slug": "PAYSTACK_UPDATE_PRODUCT", "name": "Update Product", "description": "Tool to update a product on your integration. Use when you need to modify product details like name, description, price, or currency." }, { "slug": "PAYSTACK_UPDATE_SPLIT", "name": "Update Split Configuration", "description": "Tool to update a split configuration for transactions. Use when you need to modify split settings such as name, active status, or bearer type." }, { "slug": "PAYSTACK_UPDATE_STOREFRONT", "name": "Update Storefront", "description": "Tool to update the details of a previously created Storefront. Use when you need to modify storefront information such as name, description, or slug." }, { "slug": "PAYSTACK_UPDATE_SUBACCOUNT", "name": "Update Subaccount", "description": "Tool to update a subaccount's details on your Paystack integration. Use when you need to modify existing subaccount information such as business name, bank details, contact information, or activation status." }, { "slug": "PAYSTACK_UPDATE_TRANSFER_RECIPIENT", "name": "Update Transfer Recipient", "description": "Tool to update the details of a transfer recipient. Use when you need to modify an existing recipient's name or email address." }, { "slug": "PAYSTACK_VALIDATE_BANK_ACCOUNT", "name": "Validate Bank Account", "description": "Tool to validate the authenticity of a customer's bank account before sending money. Use when you need to confirm account details are correct and the account is active and can receive funds." }, { "slug": "PAYSTACK_VALIDATE_CUSTOMER", "name": "Validate Customer", "description": "Tool to validate a customer's identity on your Paystack integration. Use when you need to verify customer identification details such as BVN and bank account information. The verification happens asynchronously, and Paystack sends a webhook event when verification is complete." }, { "slug": "PAYSTACK_VALIDATE_ORDER", "name": "Validate Order", "description": "Tool to validate a pay for me order on Paystack. Use when you need to verify the details and status of a previously created order using its unique order code." }, { "slug": "PAYSTACK_VERIFY_PAYMENT_REQUEST", "name": "Verify Payment Request", "description": "Tool to verify the status of a previously created payment request on Paystack. Use when you need to check if a payment request has been paid or to retrieve details about a specific payment request using its request code." }, { "slug": "PAYSTACK_VERIFY_STOREFRONT_SLUG", "name": "Verify Storefront Slug", "description": "Tool to verify the availability of a slug before using it for a Storefront. Use when you need to check if a slug is available before creating a new storefront." }, { "slug": "PAYSTACK_VERIFY_TRANSACTION", "name": "Verify Transaction", "description": "Tool to confirm the status of a transaction using its reference. Use when you need to verify a payment was successful or check the current state of a transaction after customer completes checkout." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "paystack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Your Paystack secret key (starts with sk_test_ for test mode or sk_live_ for live mode). Find this in your Paystack Dashboard under Settings > API Keys & Webhooks.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdf_app_net", "name": "Pdf App Net", "logo": "https://logos.composio.dev/api/pdf_app_net", "description": "Effortless PDF Management: Your Go-To for Creating and Modifying PDFs", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdf_app_net_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://pdf-app.net/admin?q=dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdf_api_io", "name": "PDF-API.io", "logo": "https://logos.composio.dev/api/pdf_api_io", "description": "PDF-API.io offers a dynamic PDF generation API with a drag-and-drop template designer, allowing developers to create customizable PDFs using HTML and CSS.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PDF_API_IO_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all available templates. Use after authentication to retrieve user's templates. Returns template metadata only; populating or rendering a template requires additional tool calls. Verify returned templates include required fields and variants before proceeding." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdf_api_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PDF-API.io API Token", "type": "string", "description": "The API token used for authenticating requests to the PDF-API.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdf_co", "name": "PDF.co", "logo": "https://logos.composio.dev/api/pdf_co", "description": "PDF.co is a REST API platform for PDF automation including PDF extraction, generation, editing, splitting, merging, form filling, barcode processing, OCR, document parsing, file conversion (PDF to Excel/CSV/JSON/XML/HTML/Image and vice versa), and AI-powered invoice parsing.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 35, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PDF_CO_ACCOUNT_BALANCE_INFO", "name": "Get Account Balance Info", "description": "Tool to get account balance info. Use after authenticating to check remaining credits." }, { "slug": "PDF_CO_BARCODE_GENERATE", "name": "Generate Barcode (Deprecated)", "description": "DEPRECATED: Use PDFCOPostBarcodeGenerate instead. Tool to generate barcode images (QR, Code128, Code39, PDF417, etc.). Use when you need to encode data into barcodes on the fly." }, { "slug": "PDF_CO_CONVERT_EXCEL_TO_CSV", "name": "Convert Excel to CSV", "description": "Tool to convert an Excel file (XLS/XLSX) to CSV. Use when you have a public Excel file URL and need CSV output. Inline option returns data inline; otherwise provides download URL." }, { "slug": "PDF_CO_CONVERT_EXCEL_TO_HTML", "name": "Convert Excel to HTML", "description": "Tool to convert an Excel file to HTML. Use when you have an Excel URL and need HTML output." }, { "slug": "PDF_CO_CONVERT_EXCEL_TO_JSON", "name": "Convert Excel to JSON", "description": "Tool to convert an online Excel or CSV file to JSON format. Use when you have a public file URL and need structured data extraction." }, { "slug": "PDF_CO_CONVERT_EXCEL_TO_TEXT", "name": "Convert Excel to Text", "description": "Tool to convert Excel files to plain text. Use after providing an Excel file URL to extract spreadsheet content." }, { "slug": "PDF_CO_CONVERT_EXCEL_TO_XML", "name": "Convert Excel to XML", "description": "Tool to convert an Excel file to XML. Use when needing XML output from xls/xlsx/csv synchronously or asynchronously." }, { "slug": "PDF_CO_DOCUMENT_PARSER", "name": "Document Parser", "description": "Tool to parse documents based on predefined templates to extract structured data. Use when you need to extract structured fields from a PDF by supplying a custom template." }, { "slug": "PDF_CO_FILE_UPLOAD", "name": "Upload File", "description": "Tool to upload a local file or remote URL to PDF.co, returning a hosted URL for downstream processing. Use when a PDF.co tool (e.g., PDF_CO_PDF_FROM_HTML) requires a remote URL but you have a local file." }, { "slug": "PDF_CO_JOB_CHECK", "name": "Check Job Status", "description": "Tool to check status and result of an asynchronous job. Use after submitting a job to poll for completion." }, { "slug": "PDF_CO_PDF_ADD", "name": "Add Content to PDF", "description": "Tool to add content to an existing PDF. Use when you need to overlay text, images, barcodes, or links before distributing the file." }, { "slug": "PDF_CO_PDF_CHANGE_TEXT_SEARCHABLE", "name": "Change PDF Text Searchable", "description": "Tool to make PDF text searchable using OCR. Use when you need to add a searchable text layer to scanned or image-only PDF documents." }, { "slug": "PDF_CO_PDFCO_POST_BARCODE_GENERATE", "name": "Generate Barcode", "description": "Tool to generate high quality barcode images in 45+ formats including QR Code, Code 128, Code 39, and more. Use when you need to create barcodes with customization options like rotation, decoration images for QR codes, or async processing." }, { "slug": "PDF_CO_PDFCO_POST_FILE_UPLOAD_BASE64", "name": "Upload File from Base64", "description": "Tool to create a temporary file using base64-encoded source data. Use when you need to upload file content as base64 to PDF.co for downstream processing. Temporary files are automatically deleted after 1 hour (or custom expiration time)." }, { "slug": "PDF_CO_PDF_DELETE_PAGES", "name": "Delete PDF Pages", "description": "Tool to delete specific pages from a PDF file. Use when you need to remove unwanted pages before further processing." }, { "slug": "PDF_CO_PDF_EXTRACT_ATTACHMENTS", "name": "Extract PDF Attachments", "description": "Tool to extract embedded attachments from a PDF. Use when you need to retrieve embedded files from a PDF after uploading." }, { "slug": "PDF_CO_PDF_FIND", "name": "Find Text in PDF", "description": "Tool to find text in a PDF document. Use when you need to locate keywords or regex patterns and get their page positions." }, { "slug": "PDF_CO_PDF_FORMS_INFO_READER", "name": "PDF Forms Info Reader", "description": "Tool to extract form field information from a PDF. Use when you need to retrieve names, types, and values of form fields. Returns field names, types (CheckBox, EditBox, RadioButton, ComboBox), values, and position coordinates." }, { "slug": "PDF_CO_PDF_FROM_DOCUMENT_TXT", "name": "Convert Text to PDF", "description": "Tool to convert a plain text (.txt) file to PDF. Use when you have a public URL to a text file; raw inline text is not accepted by the endpoint." }, { "slug": "PDF_CO_PDF_FROM_EMAIL", "name": "Convert Email to PDF", "description": "Tool to convert email files (.eml/.msg) to PDF. Use when you need to transform standalone email messages into PDF documents." }, { "slug": "PDF_CO_PDF_FROM_HTML", "name": "Convert HTML to PDF", "description": "Tool to convert HTML code or webpage URL into a PDF document. Use when you need to capture a webpage or HTML snippet as a PDF file." }, { "slug": "PDF_CO_PDF_INFO_READER", "name": "PDF Info Reader", "description": "Tool to retrieve detailed information and metadata of a PDF. Use when you need page count, author, encryption details, and other document properties." }, { "slug": "PDF_CO_PDF_MERGE", "name": "Merge PDFs", "description": "Tool to merge multiple PDF files into one document. Use when you need to combine several PDF URLs into a single PDF file." }, { "slug": "PDF_CO_PDF_ROTATE", "name": "Rotate PDF Pages", "description": "Tool to rotate selected pages in a PDF. Use when you need to adjust the orientation of specific pages in an online PDF file before further processing." }, { "slug": "PDF_CO_PDF_SEARCH_AND_DELETE_TEXT", "name": "Search and Delete Text in PDF", "description": "Tool to search for and delete text in a PDF by keyword or regex. Use when you need to remove sensitive or unwanted text from a PDF document." }, { "slug": "PDF_CO_PDF_SEARCH_AND_REPLACE_TEXT", "name": "Search and Replace Text in PDF", "description": "Tool to search for and replace text in a PDF document. Use when you need to update specific text instances within an existing PDF file (e.g., changing invoice numbers)." }, { "slug": "PDF_CO_PDF_SPLIT", "name": "Split PDF", "description": "Tool to split a PDF into multiple files by page ranges. Use when you need to extract specific pages or page ranges from a PDF." }, { "slug": "PDF_CO_PDF_TO_CSV", "name": "Convert PDF to CSV", "description": "Tool to convert PDF or scanned images to CSV format. Use when you need to extract tabular data from a PDF into CSV format." }, { "slug": "PDF_CO_PDF_TO_HTML", "name": "Convert PDF to HTML", "description": "Tool to convert PDF documents to HTML. Use when you need an HTML rendition of a PDF or scanned image." }, { "slug": "PDF_CO_PDF_TO_IMAGE", "name": "Convert PDF to Image", "description": "Tool to convert PDF pages to images (PNG, JPG, TIFF). Use when you need image previews of PDF content." }, { "slug": "PDF_CO_PDF_TO_JSON", "name": "Convert PDF to JSON", "description": "Tool to convert PDF or scanned images to JSON format. Use when you need a structured JSON representation of PDF content." }, { "slug": "PDF_CO_PDF_TO_TEXT", "name": "Convert PDF to Text", "description": "Tool to convert PDF or scanned images to plain text. Use when you need raw text output preserving layout." }, { "slug": "PDF_CO_PDF_TO_XLS", "name": "Convert PDF to XLS", "description": "Tool to convert PDF or scanned images to XLS format. Use when you need to extract tabular data into an Excel spreadsheet." }, { "slug": "PDF_CO_PDF_TO_XLSX", "name": "Convert PDF to XLSX", "description": "Tool to convert PDF or scanned images to XLSX (Excel) format. Use when you need structured spreadsheet output from a PDF." }, { "slug": "PDF_CO_PDF_TO_XML", "name": "Convert PDF to XML", "description": "Tool to convert PDF or scanned images to XML format. Use when you need to extract structured data from PDF into XML." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdf_co_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PDF.co API Key", "type": "string", "description": "Your PDF.co API Key, obtainable from your PDF.co Dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdf4me", "name": "Pdf4me", "logo": "https://logos.composio.dev/api/pdf4me", "description": "PDF4me provides robust, secure, and scalable APIs for document generation, manipulation, and management, enabling easy integration and automation across various applications.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "PDF4ME_CONVERT_TO_PDF", "name": "Convert to PDF", "description": "Tool to convert various document and image formats to PDF. Handles one file per call; multi-file PDFs require multiple calls followed by a separate merge step. Conversion permanently removes interactive form field editability — retain the original file as backup, and ensure all form fields are populated before converting. Use when you need to transform base64-encoded files into PDFs before further processing." }, { "slug": "PDF4ME_EXTRACT_TEXT", "name": "Extract Text from PDF", "description": "Tool to extract embedded text from text-based PDFs using PDF4me's ExtractResources endpoint. Use when you need to retrieve searchable text content from PDFs for analysis or processing. This tool does not perform OCR; for scanned or image-only PDFs, use OCR endpoints instead." }, { "slug": "PDF4ME_FILL_PDF_FORM", "name": "Fill PDF Form", "description": "Tool to fill PDF form fields programmatically using JSON or XML data. Use when you need to generate reports or populate forms from various data sources with mail merge functionality. Supports filling multiple documents from a list of data collection items." }, { "slug": "PDF4ME_READ_BARCODES_FROM_IMAGE", "name": "Read Barcodes from Image", "description": "Tool to read and extract barcode or QR code data from image files (JPG/PNG). Use when you need to decode barcodes from images for data extraction or verification. Supports various barcode types including QR codes, Code128, DataMatrix, and more." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdf4me_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "basic_encoded", "displayName": "PDF4me API Key", "type": "string", "description": "The API key used for authenticating requests to the PDF4me API. This will be encoded in the Authorization header as Basic.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdfless", "name": "Pdfless", "logo": "https://logos.composio.dev/api/pdfless", "description": "Pdfless is a document factory that enables developers to create high-quality PDF documents using HTML/CSS templates and data integration.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PDFLESS_GET_WORKSPACE", "name": "Get Workspace", "description": "Get workspace details and information. Use this to check if a workspace exists or is available based on the API key. Retrieves metadata about the current workspace including its active status, creation date, and name." }, { "slug": "PDFLESS_LIST_DOCUMENT_TEMPLATES", "name": "List Document Templates", "description": "List all document templates in your PDFLess workspace with pagination support. Use this action to discover available templates before generating PDFs. Templates must be created in the PDFLess dashboard before they appear in this list. The response includes template IDs which are required for PDF generation operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdfless_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key for authenticating requests to the Pdfless API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pdfmonkey", "name": "PDFMonkey", "logo": "https://logos.composio.dev/api/pdfmonkey", "description": "PDFMonkey is a service that automates the generation of PDF documents from templates, allowing users to create professional PDFs programmatically.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PDFMONKEY_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to create a Document. Use when you need to instantiate a PDF from a template; set status='pending' to queue immediate generation. Ensure valid `document_template_id` is provided." }, { "slug": "PDFMONKEY_CREATE_DOCUMENT_SYNC", "name": "Create Document Sync", "description": "Tool to create a document and wait for generation to finish. Use when immediate PDF is needed." }, { "slug": "PDFMONKEY_CREATE_TEMPLATE", "name": "Create Template", "description": "Creates a new PDF document template in PDFMonkey. Use this to define reusable templates with HTML/Liquid content and CSS styles for generating PDF documents. Typical workflow: Create template → Preview with draft content → Publish → Generate documents. The template supports Liquid templating syntax (e.g., {{variable_name}}) for dynamic content injection. Only 'identifier' is required; all other fields have sensible defaults." }, { "slug": "PDFMONKEY_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a Document by its ID. Use when you need to permanently remove a document after confirming its ID. Returns 204 No Content on success." }, { "slug": "PDFMONKEY_DELETE_TEMPLATE", "name": "Delete PDFMonkey Document Template", "description": "Tool to delete a document template by ID. Use when you need to remove obsolete templates after validation." }, { "slug": "PDFMONKEY_DOWNLOAD_DOCUMENT_FILE", "name": "Download Document File", "description": "Tool to download a generated PDF file via a presigned URL. Use after obtaining a valid download_url from the Document details endpoint. Verify document status is 'success' (not 'draft' or 'pending') via PDFMONKEY_GET_DOCUMENT before downloading to avoid incomplete files. The URL expires after 1 hour; fetch a new URL upon expiry (403 Forbidden)." }, { "slug": "PDFMONKEY_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve details about the currently authenticated user. Use when you need account info (quota, plan, email, locale) after authentication." }, { "slug": "PDFMONKEY_GET_DOCUMENT", "name": "Get Document", "description": "Tool to fetch a Document by its ID. Returns the full document record including payload, meta, logs, and download URL. Note: download_url is time-limited; if a download attempt fails, call GetDocument again to obtain a fresh URL. Check the status field for a finalized (non-draft) state before passing the record to downstream processing tools." }, { "slug": "PDFMONKEY_GET_DOCUMENT_CARD", "name": "Get DocumentCard", "description": "Tool to fetch a DocumentCard by ID. Use when you have a DocumentCard ID and need its download URLs, status, and metadata. Use after generating or updating a DocumentCard." }, { "slug": "PDFMONKEY_GET_TEMPLATE", "name": "Get Template by ID", "description": "Tool to fetch a Document Template by ID. Use when you need the template's content, styles, settings, and preview URL." }, { "slug": "PDFMONKEY_LIST_DOCUMENT_CARDS", "name": "List DocumentCards", "description": "Tool to list DocumentCards. Use when you need to retrieve multiple DocumentCards with optional pagination and filtering by template, status, workspace, or update time." }, { "slug": "PDFMONKEY_LIST_PDF_ENGINES", "name": "List PDF Engines", "description": "Lists all available PDF rendering engines in PDFMonkey. Returns engine IDs, version names, numeric versions, and deprecation status. Use this to select a PDF engine when creating templates or generating documents. Recommended: Use the latest non-deprecated engine (e.g., v5 or highest version)." }, { "slug": "PDFMONKEY_LIST_TEMPLATES", "name": "List Template Cards", "description": "List all document template cards for a workspace. Use this action to: - Retrieve all templates available in a workspace - Filter templates by folder (or get only root folder templates with folders='none') - Paginate through large template lists - Sort templates by identifier, creation date, or last update date Returns template cards with metadata including IDs, names, auth tokens, and timestamps." }, { "slug": "PDFMONKEY_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to list workspaces (applications). Use when you need all available workspaces for the authenticated user after login." }, { "slug": "PDFMONKEY_PREVIEW_TEMPLATE", "name": "Preview Template", "description": "Fetches the template preview viewer page from PDFMonkey's preview_url. Returns an HTML viewer page that displays the rendered template draft. Use this after obtaining a template's preview_url via Get Template or List Templates." }, { "slug": "PDFMONKEY_UPDATE_DOCUMENT", "name": "Update Document", "description": "Updates an existing PDFMonkey document's payload, metadata, template, or status. Common use cases: - Modify document data (payload) before generation - Change the template used for the document - Add or update custom metadata - Trigger PDF regeneration by setting status to 'pending' Note: To regenerate a document with updated data, update the payload and set status='pending'." }, { "slug": "PDFMONKEY_UPDATE_TEMPLATE", "name": "Update Document Template", "description": "Tool to update a document template’s properties. Use when you need to modify an existing template’s content, styles, settings, engine, folder, or TTL." }, { "slug": "PDFMONKEY_VIEW_PUBLIC_SHARE_LINK", "name": "View Public Share Link", "description": "Tool to download a publicly shared PDF via its permanent share link. Use when the document's public_share_link is enabled to fetch the PDF file directly." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pdfmonkey_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PDFMonkey API Secret Key", "type": "string", "description": "Your API Secret Key obtained from the PDFMonkey dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pendo", "name": "Pendo", "logo": "https://logos.composio.dev/api/pendo", "description": "Product analytics and digital adoption platform for understanding user behavior", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pendo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Integration Key", "type": "string", "description": "Your Pendo Integration Key from Settings > Integrations", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "penpot", "name": "Penpot", "logo": "https://logos.composio.dev/api/penpot", "description": "Open-source design and prototyping platform for collaborative design workflows", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 90, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PENPOT_CREATE_ACCESS_TOKEN", "name": "Create Access Token", "description": "Tool to create a personal access token for API authentication in Penpot. Use when you need to generate a new token for authenticating API requests. The token will only be shown once during creation, so it should be stored securely." }, { "slug": "PENPOT_CREATE_COMMENT_THREAD", "name": "Create Comment Thread", "description": "Tool to create a new comment thread on a Penpot file at a specific position. Use when you need to add collaborative feedback or discussion points on design elements within a Penpot project." }, { "slug": "PENPOT_CREATE_FILE", "name": "Create File", "description": "Tool to create a new design file in a Penpot project. Use when you need to create a new file for design work within a specific project." }, { "slug": "PENPOT_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project within a team in Penpot. Use when you need to organize design files into a new project space." }, { "slug": "PENPOT_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in Penpot. Use when you need to set up a new team for organizing projects and collaborating with team members." }, { "slug": "PENPOT_CREATE_TEAM_ACCESS_REQUEST", "name": "Create Team Access Request", "description": "Tool to request an invitation to join a Penpot team. Use when a user needs to request access to a team for collaboration." }, { "slug": "PENPOT_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Create a webhook for a team to receive event notifications. Use when you need to register a new webhook endpoint that will be notified of events happening in a Penpot team." }, { "slug": "PENPOT_DELETE_ACCESS_TOKEN", "name": "Delete Access Token", "description": "Tool to delete a personal access token from Penpot. Use when you need to revoke or remove an existing access token by its UUID." }, { "slug": "PENPOT_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment from a Penpot design file. Use when you need to permanently remove a specific comment from a design discussion." }, { "slug": "PENPOT_DELETE_FILE_SNAPSHOT", "name": "Delete File Snapshot", "description": "Tool to delete a file snapshot in Penpot. Use when you need to remove a previously created snapshot from a file." }, { "slug": "PENPOT_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from Penpot. Use when you need to permanently remove a project and all its contents." }, { "slug": "PENPOT_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete a team from Penpot. Use when you need to permanently remove a team. This operation is irreversible." }, { "slug": "PENPOT_DELETE_TEAM_FILES_PERMANENTLY", "name": "Permanently Delete Team Files", "description": "Tool to permanently delete specified files from a Penpot team. Use when you need to immediately and irreversibly remove files from a team. The team ID is used to filter files and verify write permissions." }, { "slug": "PENPOT_DELETE_TEAM_INVITATION", "name": "Delete Team Invitation", "description": "Tool to delete a pending team invitation in Penpot. Use when you need to cancel an invitation that hasn't been accepted yet." }, { "slug": "PENPOT_DELETE_TEAM_MEMBER", "name": "Delete Team Member", "description": "Tool to remove a member from a team in Penpot. Use when you need to revoke a user's access to a team." }, { "slug": "PENPOT_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its UUID. Use when you need to remove a webhook from Penpot." }, { "slug": "PENPOT_DUPLICATE_FILE", "name": "Duplicate File", "description": "Tool to duplicate a single file within the same team in Penpot. Use when you need to create a copy of an existing design file." }, { "slug": "PENPOT_DUPLICATE_PROJECT", "name": "Duplicate Project", "description": "Tool to duplicate an entire Penpot project with all its files. Use when you need to create a copy of an existing project." }, { "slug": "PENPOT_GET_ACCESS_TOKENS", "name": "Get Access Tokens", "description": "Tool to list all personal access tokens for the authenticated user. Use when you need to view, audit, or manage existing access tokens." }, { "slug": "PENPOT_GET_ALL_PROJECTS", "name": "Get All Projects", "description": "Tool to retrieve all projects across all teams in Penpot. Use when you need a complete list of projects regardless of team membership." }, { "slug": "PENPOT_GET_BUILTIN_TEMPLATES", "name": "Get Builtin Templates", "description": "Tool to get the list of builtin templates available in Penpot. Use when you need to see which templates are available for creating new projects." }, { "slug": "PENPOT_GET_COMMENTS", "name": "Get Comments", "description": "Tool to retrieve all comments in a comment thread. Use when you need to fetch all comments from a specific thread." }, { "slug": "PENPOT_GET_COMMENT_THREAD", "name": "Get Comment Thread", "description": "Tool to retrieve a specific comment thread from a Penpot file. Use when you need to fetch details about a comment thread including its comments, participants, and metadata." }, { "slug": "PENPOT_GET_COMMENT_THREADS", "name": "Get Comment Threads", "description": "Tool to retrieve all comment threads for a Penpot file. Use when you need to fetch comments and discussions associated with a specific file." }, { "slug": "PENPOT_GET_FILE", "name": "Get File", "description": "Tool to retrieve a Penpot file by its ID. Returns file details including metadata, structure, and permissions. Use when you need to access file information or check file properties." }, { "slug": "PENPOT_GET_FILE_INFO", "name": "Get File Info", "description": "Tool to retrieve basic information about a Penpot file by its ID. Use when you need to get file metadata such as name, project, creation date, modification date, version, and sharing status." }, { "slug": "PENPOT_GET_FILE_LIBRARIES", "name": "Get File Libraries", "description": "Tool to retrieve libraries linked to a Penpot file. Use when you need to get all library references associated with a specific file by its UUID." }, { "slug": "PENPOT_GET_FILE_OBJECT_THUMBNAILS", "name": "Get File Object Thumbnails", "description": "Tool to retrieve thumbnails for objects in a Penpot file. Use when you need to get thumbnail URLs for file objects." }, { "slug": "PENPOT_GET_FILE_SNAPSHOTS", "name": "Get File Snapshots", "description": "Retrieves all snapshots for a specific Penpot file. Use this action to list all saved versions (snapshots) of a file, which allows viewing version history and understanding how the file has evolved over time. Snapshots capture the state of a file at specific points in time." }, { "slug": "PENPOT_GET_FILE_SUMMARY", "name": "Get File Summary", "description": "Tool to retrieve a summary of file contents and statistics from Penpot. Use when you need high-level information about a file including page count, components, graphics, and other metadata without fetching the entire file content." }, { "slug": "PENPOT_GET_FONT_VARIANTS", "name": "Get Font Variants", "description": "Tool to retrieve font variants for a team, file, project, or share in Penpot. Use when you need to get a list of available font variants. Provide at least one of team_id, file_id, project_id, or share_id to scope the query." }, { "slug": "PENPOT_GET_LIBRARY_FILE_REFERENCES", "name": "Get Library File References", "description": "Tool to get files that reference a shared library. Use when you need to find which files are using a specific library file in Penpot." }, { "slug": "PENPOT_GET_LIBRARY_USAGE", "name": "Get Library Usage", "description": "Tool to get usage statistics for a library. Returns the number of files that use the specified library. Use when you need to understand how widely a library is being used across projects." }, { "slug": "PENPOT_GET_OWNED_TEAMS", "name": "Get Owned Teams", "description": "Tool to list teams owned by the current user. Use when you need to retrieve teams that the authenticated user owns in Penpot." }, { "slug": "PENPOT_GET_PAGE", "name": "Get Page", "description": "Tool to retrieve page data from a Penpot file. Use when you need to get page content including objects and metadata for rendering or export purposes. If no page ID is specified, returns the first page. Can filter to a specific object and its children by providing an object ID." }, { "slug": "PENPOT_GET_PROFILES_FOR_FILE_COMMENTS", "name": "Get Profiles for File Comments", "description": "Tool to retrieve profiles of users who have commented on a Penpot file. Use when you need to get information about comment participants for collaboration or user management purposes." }, { "slug": "PENPOT_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve detailed information about a specific Penpot project by its ID. Use when you need to get project details such as name, team ownership, and timestamps." }, { "slug": "PENPOT_GET_PROJECT_FILES", "name": "Get Project Files", "description": "Tool to retrieve all files in a Penpot project. Use when you need to list all files for a specific project by its UUID." }, { "slug": "PENPOT_GET_SSO_PROVIDER", "name": "Get SSO Provider", "description": "Tool to retrieve SSO provider information for an email address. Use when you need to determine which SSO provider is configured for a specific email domain." }, { "slug": "PENPOT_GET_SUBSCRIPTION_USAGE", "name": "Get Subscription Usage", "description": "Tool to get subscription usage information for the current user. Returns details about seats and storage usage. Use when you need to check subscription limits or current usage statistics." }, { "slug": "PENPOT_GET_TEAM", "name": "Get Team", "description": "Tool to retrieve team details by ID. Use when you need to fetch information about a specific team in Penpot." }, { "slug": "PENPOT_GET_TEAM_DELETED_FILES", "name": "Get Team Deleted Files", "description": "Tool to retrieve deleted files from a team's trash in Penpot. Use when you need to view files that have been deleted from a specific team and are in the trash." }, { "slug": "PENPOT_GET_TEAM_INFO", "name": "Get Team Info", "description": "Tool to retrieve detailed information about a specific Penpot team by its ID. Use when you need to get team details such as name, creation date, and permissions." }, { "slug": "PENPOT_GET_TEAM_INVITATIONS", "name": "Get Team Invitations", "description": "Tool to list pending invitations for a team in Penpot. Use when you need to retrieve all pending team invitations that haven't been accepted yet." }, { "slug": "PENPOT_GET_TEAM_MEMBERS", "name": "Get Team Members", "description": "Tool to list all members of a team in Penpot. Use when you need to retrieve team membership information and member details." }, { "slug": "PENPOT_GET_TEAMS", "name": "Get Teams", "description": "Tool to list all teams the authenticated user is a member of. Use when you need to retrieve teams where the user has membership in Penpot." }, { "slug": "PENPOT_GET_TEAM_SHARED_FILES", "name": "Get Team Shared Files", "description": "Tool to retrieve shared library files for a Penpot team. Use when you need to list all shared library files for a specific team by its UUID." }, { "slug": "PENPOT_GET_TEAM_STATS", "name": "Get Team Stats", "description": "Tool to retrieve statistics for a specific Penpot team by its ID. Use when you need to get team metrics such as project count, file count, and member count." }, { "slug": "PENPOT_GET_TEAM_USERS", "name": "Get Team Users", "description": "Tool to retrieve users in a team by team ID or file ID. Use when you need to list team members associated with a specific team or file." }, { "slug": "PENPOT_GET_UNREAD_COMMENT_THREADS", "name": "Get Unread Comment Threads", "description": "Tool to retrieve comment threads with unread comments for a specific team. Use when you need to check for new comments or discussions requiring attention." }, { "slug": "PENPOT_GET_VIEW_ONLY_BUNDLE", "name": "Get View Only Bundle", "description": "Tool to retrieve data bundle for view-only file access in Penpot. Use when you need to access read-only file data through a share link or for preview purposes." }, { "slug": "PENPOT_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve all webhooks configured for a team. Use when you need to list existing webhook endpoints registered for a Penpot team." }, { "slug": "PENPOT_HAS_FILE_LIBRARIES", "name": "Has File Libraries", "description": "Tool to check if a Penpot file has linked libraries. Use when you need to determine whether a specific file references any external libraries." }, { "slug": "PENPOT_IGNORE_FILE_LIBRARY_SYNC_STATUS", "name": "Ignore File Library Sync Status", "description": "Tool to ignore library sync status updates for a file. Use when you need to mark library updates as ignored for a specific file, preventing sync notifications from appearing." }, { "slug": "PENPOT_LINK_FILE_TO_LIBRARY", "name": "Link File to Library", "description": "Tool to link a file to a library in Penpot. Returns the recursive list of libraries used by that library. Use when you need to establish a library reference relationship between a file and a library." }, { "slug": "PENPOT_LOCK_FILE_SNAPSHOT", "name": "Lock File Snapshot", "description": "Tool to lock a file snapshot in Penpot to prevent deletion. Use when you need to protect a snapshot from being removed." }, { "slug": "PENPOT_LOGOUT", "name": "Logout", "description": "Tool to clear the authentication cookie and logout the current session. Use when the authenticated user wants to end their Penpot session and invalidate their authentication." }, { "slug": "PENPOT_MARK_ALL_THREADS_AS_READ", "name": "Mark All Threads As Read", "description": "Tool to mark all comment threads as read in Penpot. Use when you need to clear unread status for comment threads." }, { "slug": "PENPOT_MOVE_FILES", "name": "Move Files", "description": "Tool to move files from one project to another in Penpot. Use when you need to reorganize files by transferring them between projects." }, { "slug": "PENPOT_MOVE_PROJECT", "name": "Move Project", "description": "Tool to move a project to a different team in Penpot. Use when you need to transfer a project from one team to another." }, { "slug": "PENPOT_PREPARE_REGISTER_PROFILE", "name": "Prepare Register Profile", "description": "Tool to prepare user registration by validating email and sending verification in Penpot. Use when you need to initiate the registration process for a new user. This endpoint validates the provided information and typically sends a verification email to complete the registration." }, { "slug": "PENPOT_PUSH_AUDIT_EVENTS", "name": "Push Audit Events", "description": "Tool to push audit events to Penpot for tracking system behavior and user actions. Use when you need to log important events like user actions, file changes, or team modifications for auditing purposes." }, { "slug": "PENPOT_REGISTER_PROFILE", "name": "Register Profile", "description": "Tool to complete user registration with profile details using a verification token. Use when you have a registration token from the prepare-register-profile endpoint and need to finalize the user account creation." }, { "slug": "PENPOT_RENAME_FILE", "name": "Rename File", "description": "Tool to rename a design file in Penpot. Use when you need to change the name of an existing file." }, { "slug": "PENPOT_RENAME_PROJECT", "name": "Rename Project", "description": "Tool to rename an existing project in Penpot. Use when you need to update a project's name." }, { "slug": "PENPOT_REQUEST_PROFILE_RECOVERY", "name": "Request Profile Recovery", "description": "Tool to request a password/profile recovery email. Use when a user has forgotten their password and needs to initiate the account recovery process. An email with a recovery token will be sent to the specified address." }, { "slug": "PENPOT_RESTORE_DELETED_TEAM_FILES", "name": "Restore Deleted Team Files", "description": "Tool to restore deleted files in a Penpot team. Use when you need to remove the deletion mark from files and projects that are in the team's trash." }, { "slug": "PENPOT_RESTORE_FILE_SNAPSHOT", "name": "Restore File Snapshot", "description": "Tool to restore a Penpot file to a previous snapshot. Use when you need to revert a file to a previously saved version from its history." }, { "slug": "PENPOT_SEARCH_FILES", "name": "Search Files", "description": "Tool to search for files by name or content in a Penpot team. Use when you need to find specific files within a team using a search term." }, { "slug": "PENPOT_SEND_USER_FEEDBACK", "name": "Send User Feedback", "description": "Tool to send user feedback to Penpot. Use when you need to submit feedback, bug reports, feature requests, or error reports to the Penpot team." }, { "slug": "PENPOT_SET_FILE_SHARED", "name": "Set File Shared", "description": "Tool to set file sharing status in Penpot (enable/disable shared library). Use when you need to make a file available as a shared library or revoke its shared status." }, { "slug": "PENPOT_UNLINK_FILE_FROM_LIBRARY", "name": "Unlink File from Library", "description": "Tool to unlink a file from a shared library in Penpot. Use when you need to remove the library reference relationship between a file and a library." }, { "slug": "PENPOT_UNLOCK_FILE_SNAPSHOT", "name": "Unlock File Snapshot", "description": "Tool to unlock a locked file snapshot in Penpot. Use when you need to unlock a previously locked snapshot." }, { "slug": "PENPOT_UPDATE_COMMENT", "name": "Update Comment", "description": "Tool to update the content of an existing comment in a Penpot design file. Use when you need to modify comment text or update mentioned users in a design discussion." }, { "slug": "PENPOT_UPDATE_COMMENT_THREAD", "name": "Update Comment Thread", "description": "Tool to update the resolution status of a comment thread in Penpot. Use when you need to mark a comment thread as resolved or unresolved to track discussion progress." }, { "slug": "PENPOT_UPDATE_COMMENT_THREAD_FRAME", "name": "Update Comment Thread Frame", "description": "Tool to update the frame associated with a comment thread in Penpot. Use when you need to move a comment thread to a different frame or reposition it within the design hierarchy." }, { "slug": "PENPOT_UPDATE_COMMENT_THREAD_POSITION", "name": "Update Comment Thread Position", "description": "Tool to update the position of a comment thread in Penpot. Use when you need to move or reposition an existing comment thread to a different location on the design canvas." }, { "slug": "PENPOT_UPDATE_COMMENT_THREAD_STATUS", "name": "Update Comment Thread Status", "description": "Tool to update the status of a comment thread in Penpot (e.g., toggle resolved/unresolved). Use when you need to mark a comment thread as resolved or reopen a resolved thread." }, { "slug": "PENPOT_UPDATE_FILE", "name": "Update File", "description": "Tool to update a Penpot file with changes. Use when you need to apply modifications to a file such as adding/modifying/deleting objects, pages, colors, components, or other design elements. Requires file ID, session ID, revision number, and version number for optimistic locking." }, { "slug": "PENPOT_UPDATE_FILE_LIBRARY_SYNC_STATUS", "name": "Update File Library Sync Status", "description": "Tool to update the synchronization status of a file->library link. Use when you need to refresh or update the sync status between a file and its linked library." }, { "slug": "PENPOT_UPDATE_FILE_SNAPSHOT", "name": "Update File Snapshot", "description": "Tool to update a file snapshot metadata in Penpot. Use when you need to modify the label of an existing snapshot." }, { "slug": "PENPOT_UPDATE_FONT", "name": "Update Font", "description": "Tool to update a font's metadata in Penpot. Use when you need to modify the name or other properties of an existing font in a team." }, { "slug": "PENPOT_UPDATE_PROFILE", "name": "Update Profile", "description": "Tool to update the current authenticated user's profile information. Use when you need to change the user's full name, language preference, or theme settings." }, { "slug": "PENPOT_UPDATE_PROFILE_NOTIFICATIONS", "name": "Update Profile Notifications", "description": "Tool to update notification settings for the authenticated user's profile. Use when you need to configure how the user receives notifications about comments and invitations." }, { "slug": "PENPOT_UPDATE_PROFILE_PROPS", "name": "Update Profile Props", "description": "Tool to update custom properties for the authenticated user's profile. Use when you need to modify user preferences such as onboarding status, notification settings, newsletter subscriptions, or plugin configurations." }, { "slug": "PENPOT_UPDATE_PROJECT_PIN", "name": "Update Project Pin", "description": "Tool to update the pin status of a project in Penpot. Use when you need to pin or unpin a project for quick access." }, { "slug": "PENPOT_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update team settings in Penpot. Use when you need to modify team name or other team properties." }, { "slug": "PENPOT_UPDATE_TEAM_INVITATION_ROLE", "name": "Update Team Invitation Role", "description": "Tool to update the role of a pending team invitation in Penpot. Use when you need to change the role of an invitation that hasn't been accepted yet." }, { "slug": "PENPOT_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify the URI, MIME type, or active status of a webhook." }, { "slug": "PENPOT_VERIFY_TOKEN", "name": "Verify Token", "description": "Tool to verify an authentication or registration token in Penpot. Use when you need to validate a token received from registration, email verification, or other authentication flows." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "penpot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Penpot API Base URL", "type": "string", "description": "Your Penpot instance API base URL. Example: https://design.penpot.app/api (for cloud) or https://your-domain.com/api (for self-hosted)", "required": true, "default": "https://design.penpot.app/api" }, { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Access token from Your account → Access tokens in Penpot profile settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "perigon", "name": "Perigon", "logo": "https://logos.composio.dev/api/perigon", "description": "Perigon provides an HTTP REST API for retrieving news and web content data, offering structured data suitable for various applications.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PERIGON_GET_ARTICLES", "name": "Get News Articles", "description": "Tool to retrieve a list of news articles based on filters. Use when keywords, sources, or date ranges are specified." }, { "slug": "PERIGON_GET_COMPANIES", "name": "Get Companies", "description": "Tool to retrieve information on companies in Perigon’s entity database. Use when you need a full list of companies. Use after confirming a valid API key is present." }, { "slug": "PERIGON_GET_JOURNALISTS", "name": "Get Journalists", "description": "Tool to retrieve journalist profiles including title, Twitter handle, bio, and location. Use when you need detailed journalist info to enrich content with author metadata." }, { "slug": "PERIGON_GET_SOURCES", "name": "Get Media Sources", "description": "Tool to retrieve a list of media sources with filtering options. Use when you need to list sources by domain, country, category, or traffic metrics." }, { "slug": "PERIGON_GET_STORIES", "name": "Get Stories", "description": "Tool to retrieve clusters of related articles covering the same event or topic with aggregate metrics. Use when you need to fetch filtered and sorted story clusters after configuring query parameters." }, { "slug": "PERIGON_GET_TOPICS", "name": "Get Topics", "description": "Tool to retrieve all available Perigon news topics. Returns a list of topics that can be used to filter articles or stories. Each topic includes an ID, name, and labels (category/subcategory)." }, { "slug": "PERIGON_GET_WIKIPEDIA", "name": "Get Wikipedia Articles", "description": "Tool to search and filter Wikipedia pages. Use when you have a search query ready and want to retrieve relevant Wikipedia articles." }, { "slug": "PERIGON_VECTOR_SEARCH_ARTICLES", "name": "Vector Search Articles", "description": "Tool to perform a vector search on Perigon’s real-time news database. Use when you need to retrieve semantically similar news articles given a natural language query." }, { "slug": "PERIGON_VECTOR_SEARCH_WIKIPEDIA", "name": "Vector Search Wikipedia", "description": "Tool to perform semantic retrieval of Wikipedia pages using vector search. Use after obtaining a search query to find relevant Wikipedia articles." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "perigon_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Perigon API Key", "type": "string", "description": "Your Perigon API key obtained from your account dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "persanaai", "name": "Persanaai", "logo": "https://logos.composio.dev/api/persanaai", "description": "10x Your Sales Prospecting with AI - search, enrich, and discover contacts and companies", "category": "ai sales tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "persanaai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in to Persana AI and go to Settings > API Keys at https://www.platform.persana.ai/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "persistiq", "name": "Persistiq", "logo": "https://logos.composio.dev/api/persistiq", "description": "PersistIQ is a sales automation platform that streamlines outbound sales processes with personalized email campaigns and task management.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PERSISTIQ_ADD_LEAD_TO_CAMPAIGN", "name": "Add Lead To Campaign", "description": "Tool to add a lead to a specified campaign. Use when you have lead details and a campaign ID to enroll the lead into the campaign." }, { "slug": "PERSISTIQ_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign in PersistIQ. Use when you need to set up a new outreach campaign with a specific owner." }, { "slug": "PERSISTIQ_CREATE_DNC_DOMAIN", "name": "Create Do Not Contact Domain", "description": "Tool to create a Do Not Contact domain. Use when you need to block emails from being sent to addresses at a specific domain without manual approval." }, { "slug": "PERSISTIQ_CREATE_LEADS", "name": "Create Leads", "description": "Tool to bulk create up to 10 leads. Use when you have multiple new contacts and need optional duplicate-handling." }, { "slug": "PERSISTIQ_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list campaigns. Use when you need to fetch multiple campaigns with optional filters and pagination after setting up your filter criteria." }, { "slug": "PERSISTIQ_LIST_DNC_DOMAINS", "name": "List Do Not Contact Domains", "description": "Tool to list Do Not Contact domains. Use when you need to retrieve all domains marked as DNC." }, { "slug": "PERSISTIQ_LIST_EVENTS", "name": "List Events", "description": "Tool to retrieve a list of PersistIQ events. Use when you need to fetch events filtered by group, campaign, lead, user, or time range." }, { "slug": "PERSISTIQ_LIST_LEAD_FIELDS", "name": "List Lead Fields", "description": "Tool to list all lead fields for your company. Use when you need to retrieve available custom lead fields." }, { "slug": "PERSISTIQ_LIST_LEADS", "name": "List Leads", "description": "Tool to list leads from PersistIQ. Use when you need to fetch a paginated list of leads, optionally filtering by status or updated_after." }, { "slug": "PERSISTIQ_LIST_LEAD_STATUSES", "name": "List lead statuses", "description": "Tool to retrieve all lead statuses for your company. Use when you need to list available lead statuses after confirming authentication with PersistIQ." }, { "slug": "PERSISTIQ_LIST_USERS", "name": "List Users", "description": "Tool to list all non-archived users in your company. Use when you need to retrieve user information including id, name, email, activated status, default_mailbox_id, and salesforce_id." }, { "slug": "PERSISTIQ_REMOVE_LEAD_FROM_CAMPAIGN", "name": "Remove Lead From Campaign", "description": "Tool to remove a lead from a specified campaign. Use when you need to detach a lead from an existing campaign after confirming both IDs." }, { "slug": "PERSISTIQ_UPDATE_LEAD", "name": "Update Lead", "description": "Tool to update a lead's information. Use when you need to modify fields (status, tags, or custom attributes) of an existing lead. Call after confirming the lead_id." }, { "slug": "PERSISTIQ_VIEW_LEAD", "name": "View Lead", "description": "Tool to retrieve a lead by its ID. Use when you have the lead ID and need its detailed information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "persistiq_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PersistIQ API Key", "type": "string", "description": "Your PersistIQ API key, which grants access to read and write into your account database. This key is company-wide and grants access to all users' data within the company.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "persona", "name": "Persona", "logo": "https://logos.composio.dev/api/persona", "description": "Persona offers identity infrastructure that allows you to craft personalized and automated verification solutions so you can better understand & protect users.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 69, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PERSONA_ADD_TAG_TO_ACCOUNT", "name": "Add Tag to Account", "description": "Tool to add a tag to an Account in Persona. Use when you need to categorize or label an account with a specific tag. Either tag_id or tag_name must be provided in the request meta." }, { "slug": "PERSONA_ARCHIVE_A_BROWSER_FINGERPRINT_LIST_ITEM", "name": "Archive Browser Fingerprint List Item", "description": "Tool to archive a browser fingerprint list item in Persona. Use when you need to mark a browser fingerprint list item as archived without permanently deleting it." }, { "slug": "PERSONA_ARCHIVE_A_COUNTRY_LIST_ITEM", "name": "Archive Country List Item", "description": "Tool to archive a Country List Item by ID. Use when you need to mark a country list item as archived. This action is idempotent - archiving an already archived item is safe." }, { "slug": "PERSONA_ARCHIVE_A_GEOLOCATION_LIST_ITEM", "name": "Archive a Geolocation List Item", "description": "Tool to archive a geolocation list item from Persona. Use when you need to archive a specific geolocation list item by its ID. This operation marks the item as archived without permanently deleting it." }, { "slug": "PERSONA_ARCHIVE_A_GOVERNMENT_ID_NUMBER_LIST_ITEM", "name": "Archive Government ID Number List Item", "description": "Tool to archive a Government ID Number List Item. Use when you need to remove a government ID number from the active list." }, { "slug": "PERSONA_ARCHIVE_A_NAME_LIST_ITEM", "name": "Archive a Name List Item", "description": "Tool to archive a name list item in Persona. Use when you need to archive a specific name list item by its ID." }, { "slug": "PERSONA_ARCHIVE_A_WEBHOOK", "name": "Archive a webhook", "description": "Tool to archive a Persona webhook by its ID. Use when you need to deactivate a webhook without deleting it. Archived webhooks will no longer receive events but can be referenced for historical purposes." }, { "slug": "PERSONA_ARCHIVE_EMAIL_ADDRESS_LIST_ITEM", "name": "Archive Email Address List Item", "description": "Tool to archive an Email Address List Item in Persona. Use when you need to archive an email address or domain from a list. The archived item will be marked with an archived timestamp in the response." }, { "slug": "PERSONA_ARCHIVE_IP_ADDRESS_LIST_ITEM", "name": "Archive IP Address List Item", "description": "Tool to archive an IP address list item in Persona. Use when you need to remove an IP address from active monitoring." }, { "slug": "PERSONA_ARCHIVE_PHONE_NUMBER_LIST_ITEM", "name": "Archive Phone Number List Item", "description": "Tool to archive a phone number list item in Persona. Use when you need to mark a phone number list item as archived without permanently deleting it." }, { "slug": "PERSONA_ARCHIVE_STRING_LIST_ITEM", "name": "Archive String List Item", "description": "Tool to archive a String List Item in Persona. Use when you need to mark a string list item as archived without permanently deleting it. The item will be marked with an archived timestamp and its status will be updated accordingly." }, { "slug": "PERSONA_CLONE_WEBHOOK", "name": "Clone Webhook", "description": "Tool to clone an existing Persona webhook. Use when you need to duplicate a webhook configuration with all its settings." }, { "slug": "PERSONA_CONSOLIDATE_INTO_ACCOUNT", "name": "Consolidate Accounts", "description": "Tool to consolidate multiple source accounts into a single destination account. Use when merging duplicate accounts or combining account data from multiple sources into one primary account." }, { "slug": "PERSONA_CREATE_AN_ACCOUNT", "name": "Create an Account", "description": "Tool to create an account in Persona. Use when you need to create a new account with personal information such as name, email, phone, address, and custom fields." }, { "slug": "PERSONA_CREATE_AN_IP_ADDRESS_LIST_ITEM", "name": "Create IP Address List Item", "description": "Tool to create an IP Address List Item in Persona. Use when you need to add an IP address to a watchlist or allowlist for identity verification purposes. The list ID must be obtained first using a list retrieval action." }, { "slug": "PERSONA_CREATE_COUNTRY_LIST_ITEM", "name": "Create Country List Item", "description": "Tool to create a country list item in Persona. Use when you need to add a country to a country list for identity verification or compliance purposes." }, { "slug": "PERSONA_CREATE_DOCUMENT_GENERIC", "name": "Create Generic Document", "description": "Tool to create a generic document in Persona. Use when you need to create a document record of a specific kind/type for an account or inquiry." }, { "slug": "PERSONA_CREATE_EMAIL_ADDRESS_LIST_ITEM", "name": "Create Email Address List Item", "description": "Tool to create an email address list item in Persona. Use when you need to add an email address to a watchlist or blocklist." }, { "slug": "PERSONA_CREATE_GOVERNMENT_ID_NUMBER_LIST_ITEM", "name": "Create Government ID Number List Item", "description": "Tool to create a new government ID number list item in Persona. Use when you need to add a government ID number (such as SSN, passport, or driver's license) to a watchlist or monitoring list." }, { "slug": "PERSONA_CREATE_NAME_LIST_ITEM", "name": "Create Name List Item", "description": "Tool to create a new name list item in Persona. Use when you need to add a person's name to a specific list for verification or monitoring purposes." }, { "slug": "PERSONA_CREATE_PHONE_NUMBER_LIST_ITEM", "name": "Create Phone Number List Item", "description": "Tool to create a phone number list item in Persona. Use when you need to add a phone number to a specific list for tracking or verification purposes." }, { "slug": "PERSONA_CREATE_STRING_LIST_ITEM", "name": "Create String List Item", "description": "Tool to create a String List Item in Persona. Use when adding a new string value to an existing list for matching or filtering purposes." }, { "slug": "PERSONA_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook in Persona. Use when you need to set up real-time notifications for specific events in your Persona account. The webhook will send POST requests to your URL when enabled events occur." }, { "slug": "PERSONA_DISABLE_WEBHOOK", "name": "Disable Webhook", "description": "Tool to disable a webhook in Persona. Use when you need to stop a webhook from receiving events without deleting it." }, { "slug": "PERSONA_ENABLE_WEBHOOK", "name": "Enable Webhook", "description": "Tool to enable a webhook in Persona. Use when you need to activate a previously disabled webhook." }, { "slug": "PERSONA_EXPIRE_INQUIRY_SESSIONS", "name": "Expire Inquiry Sessions", "description": "Tool to expire all inquiry sessions for specified inquiry IDs. Use when you need to expire multiple inquiry sessions at once by providing a list of inquiry IDs." }, { "slug": "PERSONA_IMPORT_EMAIL_ADDRESS_LISTS", "name": "Import Email Address Lists", "description": "Tool to import email addresses into a list from a CSV file. Use when you need to bulk import email addresses for identity verification or list management." }, { "slug": "PERSONA_IMPORT_IP_ADDRESS_LISTS", "name": "Import IP Address Lists", "description": "Tool to import IP address lists into Persona. Use when you need to bulk upload IPv4 or IPv6 addresses to an existing list." }, { "slug": "PERSONA_IMPORT_NAME_LISTS", "name": "Import Name Lists", "description": "Tool to import name lists to Persona. Use when you need to bulk import first and last names to an existing name list for identity verification purposes." }, { "slug": "PERSONA_IMPORT_PHONE_NUMBER_LISTS", "name": "Import Phone Number Lists", "description": "Tool to import phone number lists into Persona. Use when you need to bulk upload phone numbers in E.164 format to an existing list." }, { "slug": "PERSONA_LIST_ALL_ACCOUNTS", "name": "List All Accounts", "description": "Tool to list all accounts in Persona. Use when you need to retrieve a paginated list of accounts with optional filtering by reference ID or account type." }, { "slug": "PERSONA_LIST_ALL_API_LOGS", "name": "List All API Logs", "description": "Tool to list all API logs in Persona. Use when you need to retrieve a paginated history of API requests made to your organization, including request details, response status, and timing information." }, { "slug": "PERSONA_LIST_ALL_CASES", "name": "List All Cases", "description": "Tool to list all cases in Persona. Use when you need to retrieve a collection of cases with optional filtering and pagination." }, { "slug": "PERSONA_LIST_ALL_DEVICES", "name": "List All Devices", "description": "Tool to list all devices filtered by inquiry session ID. Use when you need to retrieve devices associated with a specific inquiry session." }, { "slug": "PERSONA_LIST_ALL_EVENTS", "name": "List all Events", "description": "Tool to list all events from Persona. Use when you need to retrieve events for your organization. Supports pagination and filtering by creation date. Events up to 3 months old can be viewed." }, { "slug": "PERSONA_LIST_ALL_IMPORTERS", "name": "List all Importers", "description": "Tool to list all importers in Persona. Use when you need to retrieve a list of all import operations, including account importers, email address list importers, and other types." }, { "slug": "PERSONA_LIST_ALL_INQUIRIES", "name": "List All Inquiries", "description": "Tool to list all inquiries in Persona. Use when you need to retrieve a paginated collection of inquiries with optional filtering by reference ID, account ID, status, or inquiry template ID." }, { "slug": "PERSONA_LIST_ALL_INQUIRY_SESSIONS", "name": "List All Inquiry Sessions", "description": "Tool to list all inquiry sessions in Persona. Use when you need to retrieve a collection of inquiry sessions with optional filtering." }, { "slug": "PERSONA_LIST_ALL_LISTS", "name": "List All Lists", "description": "Tool to list all lists in Persona. Use when you need to retrieve a paginated collection of lists with optional filtering and field selection." }, { "slug": "PERSONA_LIST_ALL_RATE_LIMITS", "name": "List All Rate Limits", "description": "Tool to list all rate limits in Persona. Use when you need to retrieve current rate limit information for your API usage." }, { "slug": "PERSONA_LIST_ALL_REPORTS", "name": "List All Reports", "description": "Tool to list all reports in Persona. Use when you need to retrieve a collection of reports with optional filtering and pagination. Reports can include various types such as adverse media, watchlist, profile, and verification reports." }, { "slug": "PERSONA_LIST_ALL_TRANSACTIONS", "name": "List All Transactions", "description": "Tool to list all transactions in Persona. Use when you need to retrieve a paginated collection of transactions with optional filtering." }, { "slug": "PERSONA_LIST_ALL_WEBHOOKS", "name": "List All Webhooks", "description": "Tool to list all webhooks in Persona. Use when you need to retrieve a paginated list of webhooks configured for the account." }, { "slug": "PERSONA_LIST_ALL_WORKFLOW_RUNS", "name": "List all Workflow Runs", "description": "Tool to list all workflow runs in Persona. Use when you need to retrieve workflow runs with optional filtering by workflow ID, inquiry ID, account ID, or session token. Supports pagination for large result sets." }, { "slug": "PERSONA_REDACT_AN_ACCOUNT", "name": "Redact an Account", "description": "Tool to permanently redact an account in Persona. Use when you need to delete sensitive personal information from an account to comply with privacy regulations or user requests. This operation is irreversible." }, { "slug": "PERSONA_REMOVE_ACCOUNT_TAG", "name": "Remove Account Tag", "description": "Tool to remove a tag from a Persona Account. Use when you need to remove a tag association from an account by providing either the tag ID or tag name." }, { "slug": "PERSONA_RETRIEVE_A_COUNTRY_LIST_ITEM", "name": "Retrieve a Country List Item", "description": "Tool to retrieve a country list item by ID in Persona. Use when you need to fetch details of a specific country list item." }, { "slug": "PERSONA_RETRIEVE_A_GEOLOCATION_LIST_ITEM", "name": "Retrieve a Geolocation List Item", "description": "Tool to retrieve a geolocation list item from Persona. Use when you need to fetch details of a specific geolocation list item by its ID." }, { "slug": "PERSONA_RETRIEVE_AN_ACCOUNT", "name": "Retrieve an Account", "description": "Tool to retrieve an account in Persona. Use when you need to fetch details of a specific account by its ID." }, { "slug": "PERSONA_RETRIEVE_A_NAME_LIST_ITEM", "name": "Retrieve a Name List Item", "description": "Tool to retrieve a Name List Item in Persona. Use when you need to get details about a specific name list item, including first name, last name, status, match count, and timestamps." }, { "slug": "PERSONA_RETRIEVE_AN_EVENT", "name": "Retrieve an Event", "description": "Tool to retrieve an event in Persona. Use when you need to fetch details of a specific event that was logged by Persona." }, { "slug": "PERSONA_RETRIEVE_AN_IMPORTER", "name": "Retrieve an Importer", "description": "Tool to retrieve a specific importer in Persona. Use when you need to get details about a specific import operation by its ID." }, { "slug": "PERSONA_RETRIEVE_AN_IP_ADDRESS_LIST_ITEM", "name": "Retrieve IP Address List Item", "description": "Tool to retrieve an IP Address List Item in Persona. Use when you need to get details about a specific IP address list item, including its value, status, match count, and timestamps." }, { "slug": "PERSONA_RETRIEVE_API_LOG", "name": "Retrieve an API Log", "description": "Tool to retrieve an API log in Persona. Use when you need to fetch details of a specific API request/response that was logged by Persona." }, { "slug": "PERSONA_RETRIEVE_A_STRING_LIST_ITEM", "name": "Retrieve a String List Item", "description": "Tool to retrieve a string list item by ID in Persona. Use when you need to fetch details of a specific string list item." }, { "slug": "PERSONA_RETRIEVE_A_WEBHOOK", "name": "Retrieve a Webhook", "description": "Tool to retrieve a webhook by its ID. Use when you need to fetch details about a specific webhook configuration." }, { "slug": "PERSONA_RETRIEVE_BROWSER_FINGERPRINT_LIST_ITEM", "name": "Retrieve Browser Fingerprint List Item", "description": "Tool to retrieve a browser fingerprint list item in Persona. Use when you need to fetch details of a specific browser fingerprint from a list for identity verification or fraud prevention purposes." }, { "slug": "PERSONA_RETRIEVE_DOCUMENT", "name": "Retrieve a Document", "description": "Tool to retrieve a document from Persona. Use when you need to fetch details of a specific document by its ID." }, { "slug": "PERSONA_RETRIEVE_DOCUMENT_GENERIC", "name": "Retrieve Generic Document", "description": "Tool to retrieve a generic document in Persona. Use when you need to fetch details of a specific document by its ID." }, { "slug": "PERSONA_RETRIEVE_EMAIL_ADDRESS_LIST_ITEM", "name": "Retrieve Email Address List Item", "description": "Tool to retrieve an Email Address List Item in Persona. Use when you need to get details about a specific email address list item, including its value, status, match count, and timestamps." }, { "slug": "PERSONA_RETRIEVE_GOVERNMENT_ID_NUMBER_LIST_ITEM", "name": "Retrieve Government ID Number List Item", "description": "Tool to retrieve a Government ID Number List Item in Persona. Use when you need to get details about a specific government ID number list item, including its ID number, ID class, status, match count, and timestamps." }, { "slug": "PERSONA_RETRIEVE_PHONE_NUMBER_LIST_ITEM", "name": "Retrieve Phone Number List Item", "description": "Tool to retrieve a phone number list item in Persona. Use when you need to fetch details of a specific phone number from a list for identity verification or fraud prevention purposes." }, { "slug": "PERSONA_ROTATE_WEBHOOK_SECRET", "name": "Rotate Webhook Secret", "description": "Tool to rotate a webhook's secret in Persona. Use when you need to generate a new secret key for webhook signature verification while optionally keeping the old secret active for a grace period." }, { "slug": "PERSONA_SEARCH_ACCOUNTS", "name": "Search Accounts", "description": "Tool to search accounts in Persona using flexible query criteria. Use when you need to find accounts based on specific attributes, tags, or status. Supports boolean logic (AND/OR/NOT) and comparison operators." }, { "slug": "PERSONA_SEARCH_CASES", "name": "Search Cases", "description": "Tool to search cases in Persona using advanced query filters with boolean logic. Use when you need to find cases matching specific criteria using operators like eq, gt, gte, lt, lte combined with AND/OR/NOT logic." }, { "slug": "PERSONA_SET_TAGS", "name": "Set Tags on Account", "description": "Tool to set tags on a Persona Account. Use when you need to assign or update tags for an account using either tag IDs or tag names. This operation replaces all existing tags with the provided ones." }, { "slug": "PERSONA_UPDATE_AN_ACCOUNT", "name": "Update an Account", "description": "Tool to update an account in Persona. Use when you need to modify account information such as name, email, phone, address, reference ID, or custom fields." }, { "slug": "PERSONA_UPDATE_A_WEBHOOK", "name": "Update a Webhook", "description": "Tool to update a webhook in Persona. Use when you need to modify webhook configuration such as name, description, URL, or enabled events." }, { "slug": "PERSONA_UPDATE_DOCUMENT_GENERIC", "name": "Update Generic Document", "description": "Tool to update a generic document in Persona. Use when you need to modify fields, files, or kind of an existing document by its ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "persona_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Persona API key. Navigate to Developers > API in your Persona account to retrieve it. Keys are prefixed with persona_sandbox_* or persona_production_*", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pexels", "name": "Pexels", "logo": "https://logos.composio.dev/api/pexels", "description": "Pexels offers a free API that provides access to a vast library of high-quality photos and videos, enabling seamless integration into applications and websites.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PEXELS_COLLECTION_MEDIA", "name": "Get Collection Media", "description": "Tool to get all media within a collection by its ID. Use when you need to fetch paginated media from a specific collection." }, { "slug": "PEXELS_CURATED_PHOTOS", "name": "Get Curated Photos", "description": "Tool to get real-time curated photos. Use when you need to fetch curated photos with pagination support." }, { "slug": "PEXELS_FEATURED_COLLECTIONS", "name": "Featured Collections", "description": "Tool to get featured collections. Use when you need curated collections of photos and videos with pagination support." }, { "slug": "PEXELS_GET_PHOTO", "name": "Get Photo", "description": "Tool to retrieve detailed information about a specific photo. Use when you have a valid photo ID to fetch metadata including dimensions, photographer details, and image URLs. Use after confirming the photo ID from search or curated endpoints." }, { "slug": "PEXELS_GET_VIDEO_BY_ID", "name": "Get Video by ID", "description": "Tool to retrieve detailed information about a specific video from Pexels. Use when you have a valid video ID to fetch metadata including dimensions, duration, videographer details, and available video file versions." }, { "slug": "PEXELS_MY_COLLECTIONS", "name": "Get My Collections", "description": "Tool to get all of the user's collections on Pexels. Use when you need to list a user's collections with pagination support." }, { "slug": "PEXELS_POPULAR_VIDEOS", "name": "Get Popular Videos", "description": "Tool to retrieve current popular Pexels videos. Use when you want to fetch trending videos from Pexels." }, { "slug": "PEXELS_SEARCH_PHOTOS", "name": "Search Photos", "description": "Tool to search for photos on Pexels. Use when you need to retrieve photos by a search term and optional filters. Call after confirming you have a valid Pexels API key. Response image URLs are nested under `photo.src.` (e.g., `photo.src.original`, `photo.src.landscape`, `photo.src.medium`); the top-level `url` field is not sufficient for accessing specific image sizes." }, { "slug": "PEXELS_SEARCH_VIDEOS", "name": "Search Videos", "description": "Tool to search for videos on Pexels by query and optional filters. Use when you need to find relevant video assets. Combining multiple filters with a narrow query may return few or no results; only apply strict filter combinations when explicitly required." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pexels_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Pexels API Key", "type": "string", "description": "Your unique Pexels API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "phantombuster", "name": "PhantomBuster", "logo": "https://logos.composio.dev/api/phantombuster", "description": "PhantomBuster is a cloud-based data extraction and automation platform that enables users to automate actions on the web, such as scraping data, generating leads, and automating social media tasks.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 53, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PHANTOMBUSTER_ABORT_AGENT_V1", "name": "Abort Agent (v1)", "description": "Tool to abort all running instances of an agent using the legacy v1 API. Use when you need to immediately stop an agent's execution. Supports soft abort for graceful shutdown." }, { "slug": "PHANTOMBUSTER_DELETE_AGENT", "name": "Delete Agent", "description": "Tool to delete an agent by id. Use when you need to remove a PhantomBuster agent. Ensure the agent is not currently running before deletion." }, { "slug": "PHANTOMBUSTER_DELETE_LEAD_OBJECTS", "name": "Delete Lead Objects", "description": "Tool to delete one or more lead objects from organization storage. Use when you need to remove lead data. Provide either leadObjectId, or both slug and type parameters." }, { "slug": "PHANTOMBUSTER_DELETE_LEADS_MANY", "name": "Delete Many Leads", "description": "Tool to delete multiple leads from organization storage. Use when you need to bulk delete leads by their IDs." }, { "slug": "PHANTOMBUSTER_DELETE_LIST", "name": "Delete List", "description": "Tool to delete a storage list by id (Beta). Use when you need to remove a list from organization storage." }, { "slug": "PHANTOMBUSTER_DELETE_SCRIPT", "name": "Delete Script", "description": "Tool to delete a script by id. Use when you need to remove a specific script from PhantomBuster. Optionally specify a branch and environment to delete a specific version." }, { "slug": "PHANTOMBUSTER_GET_AGENT", "name": "Get Agent", "description": "Tool to get an agent by its ID. Use when you need to retrieve detailed information about a specific Phantombuster agent, including its configuration, schedule, and execution settings." }, { "slug": "PHANTOMBUSTER_GET_AGENT_CONTAINERS", "name": "Get Agent Containers (v1)", "description": "Tool to get a list of ended containers for an agent, ordered by date. Use when you need to retrieve the last available output logs from an agent. This is a legacy v1 API endpoint." }, { "slug": "PHANTOMBUSTER_GET_AGENT_OUTPUT", "name": "Get Agent Output (v1)", "description": "Tool to get incremental data from an agent including console output, status, progress and messages. This is a legacy v1 API endpoint designed for easy incremental data retrieval. Use outputPos to track position." }, { "slug": "PHANTOMBUSTER_GET_AGENTS_FETCH_ALL", "name": "Get All Agents", "description": "Tool to fetch all agents associated with the current user or organization. Use after validating your Phantombuster API key to list available agents." }, { "slug": "PHANTOMBUSTER_GET_AGENTS_FETCH_DELETED", "name": "Get Deleted Agents", "description": "Tool to get deleted agents for the current user or organization. Use when you need to audit recently removed agents." }, { "slug": "PHANTOMBUSTER_GET_BRANCHES_DIFF", "name": "Get Branches Diff", "description": "Tool to get the length difference between the staging and release branch of all scripts. Use when assessing branch changes before deployment." }, { "slug": "PHANTOMBUSTER_GET_BRANCHES_FETCH_ALL", "name": "Get All Branches", "description": "Tool to fetch all branches associated with the current organization. Use when you need to enumerate every branch across your scripts." }, { "slug": "PHANTOMBUSTER_GET_CONTAINERS_FETCH_ALL", "name": "Get Containers Fetch All", "description": "Tool to get all containers associated with a specified agent. Use when you need to retrieve every container for a given agent, for monitoring or reporting." }, { "slug": "PHANTOMBUSTER_GET_LEADS_BY_LIST", "name": "Get Leads By List", "description": "Tool to fetch leads by their list ID. Use when you need to retrieve leads from a specific list with optional pagination and filtering." }, { "slug": "PHANTOMBUSTER_GET_LOCATION_IP", "name": "Get IP Location", "description": "Tool to retrieve the country of a given or environment IP address. Use when you need to geolocate an IP endpoint. Example: get_location_ip(ip=\"8.8.8.8\")" }, { "slug": "PHANTOMBUSTER_GET_ORGS_EXPORT_AGENT_USAGE", "name": "Export Agent Usage CSV", "description": "Tool to export agent usage CSV for current organization. Use when you need a downloadable report of all agents' run statistics in CSV format." }, { "slug": "PHANTOMBUSTER_GET_ORGS_EXPORT_CONTAINER_USAGE", "name": "Export Container Usage CSV", "description": "Tool to export container usage CSV for current organization. Use when you need a downloadable CSV report of container execution history up to 6 months; URL expires in 30 days." }, { "slug": "PHANTOMBUSTER_GET_ORGS_FETCH", "name": "Get Organization", "description": "Tool to fetch current organization details. Use when you need to retrieve the organization associated with the provided API key." }, { "slug": "PHANTOMBUSTER_GET_ORGS_FETCH_AGENT_GROUPS", "name": "Get Agent Groups", "description": "Tool to get agent groups and order for the current organization. Use when you need to review how agents are grouped and ordered." }, { "slug": "PHANTOMBUSTER_GET_ORGS_FETCH_RESOURCES", "name": "Get Organization Resources", "description": "Tool to get current organization's resources and usage. Use when you need to monitor quotas." }, { "slug": "PHANTOMBUSTER_GET_ORGS_FETCH_RUNNING_CONTAINERS", "name": "Get Org Running Containers", "description": "Tool to get the current organization's running containers. Use after listing agents to identify active containers across the organization." }, { "slug": "PHANTOMBUSTER_GET_ORG_STORAGE_LISTS_FETCH_ALL", "name": "Get Org Storage Lists Fetch All", "description": "Tool to fetch all storage lists for the authenticated organization. Use when you need to enumerate every storage list available (Beta)." }, { "slug": "PHANTOMBUSTER_GET_SCRIPT", "name": "Get Script", "description": "Tool to fetch a script by its unique ID. Use when you need to retrieve detailed metadata about a specific script, including its branches, visibility, and optionally its source code." }, { "slug": "PHANTOMBUSTER_GET_SCRIPT_BY_NAME", "name": "Get Script by Name", "description": "Tool to retrieve a script by its name from Phantombuster (Legacy v1 API). Use when you need to fetch script metadata or content by name. Supports both JSON (structured) and raw (plain text) response formats." }, { "slug": "PHANTOMBUSTER_GET_SCRIPTS_CODE", "name": "Get Script Code", "description": "Tool to get the code of a script. Use when you need to retrieve the source code content of a specific script." }, { "slug": "PHANTOMBUSTER_GET_SCRIPTS_FETCH_ALL", "name": "Get All Scripts", "description": "Tool to fetch all scripts for the current user. Use after authenticating your Phantombuster API key to list scripts without their code bodies." }, { "slug": "PHANTOMBUSTER_GET_USER", "name": "Get User Information", "description": "Tool to get information about your PhantomBuster account and your agents using the legacy v1 API. Use when you need to check account quotas, remaining resources, or list associated agents." }, { "slug": "PHANTOMBUSTER_POST_AGENTS_UNSCHEDULE_ALL", "name": "Unschedule All Agent Launches", "description": "Tool to unschedule all scheduled launches for agents. Use when you need to disable every automated agent run organization-wide after verifying your API key." }, { "slug": "PHANTOMBUSTER_POST_AI_COMPLETIONS", "name": "Request AI Completion", "description": "Tool to request a text completion from the AI module. Use when you need to generate text based on a prompt." }, { "slug": "PHANTOMBUSTER_POST_BRANCHES_CREATE", "name": "Create Branch", "description": "Tool to create a new branch. Use when you need to isolate updates by creating a separate branch. Use after authenticating with your Phantombuster API key and optionally specifying an organization." }, { "slug": "PHANTOMBUSTER_POST_BRANCHES_DELETE", "name": "Delete Branch", "description": "Tool to delete a branch by id. Use when you need to remove obsolete or incorrect script branches; ensure the branch exists before calling." }, { "slug": "PHANTOMBUSTER_POST_HCAPTCHA", "name": "Solve hCaptcha", "description": "Tool to solve an hCaptcha challenge. Use when you need a valid hCaptcha token for form submissions or automation flows." }, { "slug": "PHANTOMBUSTER_POST_IDENTITIES_GENERATE_TOKEN", "name": "Generate Identity Token", "description": "Tool to generate an identity token for PhantomBuster. Use when you need to create a new identity token for authentication or session management." }, { "slug": "PHANTOMBUSTER_POST_ORG_STORAGE_LEADS_SAVE_MANY", "name": "Save Many Leads", "description": "Tool to save multiple leads (1-20) to organization storage in a single batch operation (Beta). Use when you need to create or update leads with LinkedIn profile data and optional enrichment fields." }, { "slug": "PHANTOMBUSTER_POST_RECAPTCHA", "name": "Solve reCAPTCHA", "description": "Tool to solve a reCAPTCHA challenge (v2 or v3). Use when you need a valid reCAPTCHA response token for form submissions or automation. Note: API returns 200 status even on errors; check the error field in the response." }, { "slug": "PHANTOMBUSTER_POST_SCRIPTS_VISIBILITY", "name": "Update Script Visibility", "description": "Tool to update the visibility of a script. Use when you need to change whether a script is private, public, or open source." }, { "slug": "PHANTOMBUSTER_RELEASE_BRANCH", "name": "Release Branch", "description": "Tool to release a script branch. Use when you need to deploy a branch to production or release changes to specified scripts." }, { "slug": "PHANTOMBUSTER_SAVE_AGENT", "name": "Save Agent", "description": "Tool to create a new agent or update an existing one. Use when you need to configure an agent's launch schedule, settings, or behavior. If an agent ID is provided, the existing agent will be updated; otherwise, a new agent is created." }, { "slug": "PHANTOMBUSTER_SAVE_AGENT_GROUPS", "name": "Save Agent Groups", "description": "Tool to update agent groups and order for the current user's organization. Use when you need to reorganize agents into groups or change their display order." }, { "slug": "PHANTOMBUSTER_SAVE_COMPANY_OBJECT", "name": "Save Company Object", "description": "Tool to save one company object to the organization storage. Use when you need to create or update a company object with LinkedIn company data and custom properties." }, { "slug": "PHANTOMBUSTER_SAVE_COMPANY_OBJECTS_MANY", "name": "Save Many Company Objects", "description": "Tool to save many company objects to organization storage. Use when you need to bulk insert or update company data with a minimum of 1 and maximum of 20 objects per request." }, { "slug": "PHANTOMBUSTER_SAVE_IDENTITY_EVENT", "name": "Save Identity Event", "description": "Tool to save an identity event to Phantombuster. Use when you need to record user interactions or activities associated with specific social media profiles." }, { "slug": "PHANTOMBUSTER_SAVE_LEAD", "name": "Save Lead", "description": "Tool to save or update a lead in Phantombuster org storage. Use when you need to store LinkedIn profile data or other lead information." }, { "slug": "PHANTOMBUSTER_SAVE_LEAD_OBJECT", "name": "Save Lead Object", "description": "Tool to save a lead object to organization storage. Use when you need to store or update lead information with custom properties." }, { "slug": "PHANTOMBUSTER_SAVE_LEADS_OBJECTS_MANY", "name": "Save Many Lead Objects", "description": "Tool to save multiple lead objects to Phantombuster's organization storage. Use when you need to create or update multiple lead objects in a single API call." }, { "slug": "PHANTOMBUSTER_SAVE_LIST", "name": "Save List", "description": "Tool to save (create or update) a list with filter criteria. Use when you need to create a new list or update an existing one by providing a filter configuration. This is a Beta feature." }, { "slug": "PHANTOMBUSTER_SAVE_SCRIPT", "name": "Save Script", "description": "Tool to create a new script or update an existing one. Provide an id to update; otherwise creates new script. Use when you need to save JavaScript automation code to Phantombuster." }, { "slug": "PHANTOMBUSTER_SEARCH_COMPANY_OBJECTS", "name": "Search Company Objects", "description": "Tool to search company objects in Phantombuster's organizational storage. Use when you need to find companies by specific criteria or perform a global search." }, { "slug": "PHANTOMBUSTER_SEARCH_LEAD_OBJECTS", "name": "Search Lead Objects", "description": "Tool to search lead objects in Phantombuster org storage. Use when you need to find leads based on search criteria or filter conditions." }, { "slug": "PHANTOMBUSTER_STOP_AGENT", "name": "Stop Agent", "description": "Tool to stop a running agent. Use when you need to halt agent execution, optionally cascading to slave agents or switching to manual launch mode." }, { "slug": "PHANTOMBUSTER_UPDATE_SCRIPT", "name": "Update Script (v1 API)", "description": "Tool to update an existing script or create a new one if it does not exist (Legacy v1 API). Use when you need to save script code to Phantombuster. If insertOnly is true, the operation will fail if a script with the same name already exists." }, { "slug": "PHANTOMBUSTER_UPDATE_SCRIPTS_ACCESS_LIST", "name": "Update Script Access List", "description": "Tool to update the access list of a script. Use when you need to add or remove users/orgs from a script's access list in a specific branch." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "phantombuster_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PhantomBuster API Key", "type": "string", "description": "Your PhantomBuster API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "phaxio", "name": "Phaxio", "logo": "https://logos.composio.dev/api/phaxio", "description": "Build apps that talk fax. Send and receive fax through advanced API.", "category": "fax", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [] }, { "slug": "piloterr", "name": "Piloterr", "logo": "https://logos.composio.dev/api/piloterr", "description": "Piloterr is a developer-first platform offering over 50 ready-to-use APIs for web scraping and data extraction, enabling businesses to efficiently gather and integrate web data into their systems.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PILOTERR_AUCHAN_PRODUCT", "name": "Auchan Product", "description": "Tool to retrieve detailed Auchan product information. Use when you have an Auchan product URL." }, { "slug": "PILOTERR_AUCHAN_SEARCH", "name": "Auchan Product Search", "description": "Tool to search for products on Auchan by query or search URL. Use when you need product listings and details from Auchan." }, { "slug": "PILOTERR_GET_PRODUCT_INFO", "name": "Piloterr Get Product Info", "description": "Tool to retrieve detailed product information from G2. Use when you need full product details including ratings, reviews, pricing, and company info. Accepts a product name or G2 URL as query." }, { "slug": "PILOTERR_LIST_CHEWY_PRODUCTS", "name": "List Chewy Products", "description": "Tool to find Chewy product categories by search query. Use when you need to retrieve Chewy product URLs and details based on product ID or title." }, { "slug": "PILOTERR_LIST_ELECLERC_STORES", "name": "List E.Leclerc Stores", "description": "Tool to find E.Leclerc store locations by search query. Use when you need to locate E.Leclerc stores in a specific area or city." }, { "slug": "PILOTERR_LIST_GOOGLE_COUNTRIES", "name": "List Google Countries", "description": "Tool to list available Google search countries. Use when you need to find country codes for Google search localization." }, { "slug": "PILOTERR_LIST_GOOGLE_LANGUAGES", "name": "List Google Languages", "description": "Tool to list available Google search languages filtered by query. Use when you need to find specific language codes for Google searches." }, { "slug": "PILOTERR_LIST_GOOGLE_LOCATIONS", "name": "List Google Locations", "description": "Tool to list available Google search locations via Piloterr API. Use when you need to find location identifiers for geographically-targeted searches." }, { "slug": "PILOTERR_LIST_LEROY_MERLIN_PRODUCTS", "name": "List Leroy Merlin Products", "description": "Tool to list Leroy Merlin product categories. Use when you need to search for Leroy Merlin products by name or identifier." }, { "slug": "PILOTERR_LIST_LINKED_IN_INDUSTRIES", "name": "List LinkedIn Industries", "description": "Tool to list LinkedIn industry codes from Piloterr API. Use when you need to find LinkedIn industry identifiers for targeting or classification." }, { "slug": "PILOTERR_SEARCH", "name": "Piloterr Google Search", "description": "Tool to perform Google web search via Piloterr API. Use when you need to search the web for information using Google." }, { "slug": "PILOTERR_USAGE_GET", "name": "Get Usage", "description": "Tool to get usage information and remaining credits for your Piloterr account. Use when you need to check account usage and credit details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "piloterr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Piloterr API Key", "type": "string", "description": "The API key required for authenticating requests to the Piloterr API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pilvio", "name": "Pilvio", "logo": "https://logos.composio.dev/api/pilvio", "description": "Pilvio is a cloud service provider offering virtual machines, object storage, and full API support for resource management and automation.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PILVIO_CHECK_ACTIVE_CAMPAIGNS", "name": "Check Active Campaigns", "description": "Tool to check for active campaigns. Use when you need to verify whether any campaigns are currently active." }, { "slug": "PILVIO_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve information about the authenticated user. Use when you need to fetch the current user's profile after authentication." }, { "slug": "PILVIO_LIST_BILLING_ACCOUNTS", "name": "List billing accounts", "description": "Tool to list billing accounts. Use when you need to fetch all billing accounts for management or reporting. Use after authenticating your Pilvio API key." }, { "slug": "PILVIO_LIST_CREDIT_CARDS", "name": "List Credit Cards", "description": "Tool to list credit cards attached to a billing account. Use after confirming the billing account ID. Example: \"Retrieve cards for billing_account_id 'ba_1234567890abcdef'.\"" }, { "slug": "PILVIO_LIST_INVOICES", "name": "List Invoices", "description": "Tool to retrieve a list of invoices. Use after authentication to fetch and filter invoices for a billing account." }, { "slug": "PILVIO_LIST_LOCATIONS", "name": "List Pilvio data center locations", "description": "Tool to retrieve the list of available data center locations. Use after authentication to see where you can deploy resources." }, { "slug": "PILVIO_LIST_VM_RESOURCE_POOLS", "name": "List VM Resource Pools", "description": "Tool to retrieve the list of available VM resource pools. Use after authentication to determine where you can provision VMs." }, { "slug": "PILVIO_LIST_VMS", "name": "List Virtual Machines", "description": "Tool to retrieve a list of all virtual machines. Use after authenticating to fetch your VMs." }, { "slug": "PILVIO_LIST_VM_SNAPSHOTS", "name": "List VM Snapshots", "description": "Tool to list snapshots (replicas) of a specific VM. Use this to get all point-in-time snapshots or backups for a virtual machine." }, { "slug": "PILVIO_UPDATE_USER_PROFILE", "name": "Update User Profile", "description": "Tool to update the authenticated user's profile. Use after obtaining a valid API key when you need to modify profile details (e.g., change email or name)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pilvio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Pilvio API Key", "type": "string", "description": "Your personal API key for authenticating requests to the Pilvio API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pinecone", "name": "Pinecone", "logo": "https://logos.composio.dev/api/pinecone", "description": "Long-term Memory for AI. The Pinecone vector database makes it easy to build high-performance vector search applications. Developer-friendly, fully managed, and easily scalable without infrastructure hassles.", "category": "artificial intelligence", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 48, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PINECONE_CANCEL_BULK_IMPORT", "name": "Cancel Bulk Import", "description": "Tool to cancel a bulk import operation in Pinecone. Use when you need to stop an ongoing import operation that is not yet finished." }, { "slug": "PINECONE_CHAT_ASSISTANT", "name": "Chat with Assistant", "description": "Tool to chat with a Pinecone assistant and get structured responses with citations. Use when you need to query an assistant that has access to your knowledge base and want to get back answers with document references and citations." }, { "slug": "PINECONE_CHAT_COMPLETION_ASSISTANT", "name": "Chat with Assistant", "description": "Tool to chat with a Pinecone assistant through an OpenAI-compatible interface. Use when you need to interact with a Pinecone assistant that has access to indexed documents and can answer questions based on retrieved context." }, { "slug": "PINECONE_CONFIGURE_INDEX", "name": "Configure Index", "description": "Tool to configure an existing Pinecone index, including pod type, replicas, deletion protection, and tags. Use when you need to scale an index vertically or horizontally, enable/disable deletion protection, or update tags. The change is asynchronous; check index status for completion." }, { "slug": "PINECONE_CREATE_ASSISTANT", "name": "Create Assistant", "description": "Tool to create a new Pinecone assistant for RAG (Retrieval-Augmented Generation) applications. Use when you need to initialize a new assistant that can have files uploaded and support chat interactions." }, { "slug": "PINECONE_CREATE_BACKUP", "name": "Create Backup", "description": "Tool to create a backup of a Pinecone index for disaster recovery and version control. Use when you need to preserve the current state of an index including vectors, metadata, and configuration." }, { "slug": "PINECONE_CREATE_INDEX", "name": "Create Index", "description": "Tool to create a Pinecone index with specified configuration. Use when you need to initialize a new vector database index for storing and querying embeddings." }, { "slug": "PINECONE_CREATE_INDEX_FOR_MODEL", "name": "Create Index with Embedding Model", "description": "Tool to create a Pinecone index with integrated embedding model for automatic vectorization. Use when you need to set up a new index that automatically converts text to vectors using a pre-configured embedding model." }, { "slug": "PINECONE_CREATE_INDEX_FROM_BACKUP", "name": "Create Index from Backup", "description": "Tool to create an index from a backup. Use when you need to restore or duplicate index data from a previously saved backup." }, { "slug": "PINECONE_CREATE_NAMESPACE", "name": "Create Namespace", "description": "Tool to create a namespace within a serverless Pinecone index. Use when you need to organize vectors into isolated partitions." }, { "slug": "PINECONE_DELETE_ASSISTANT", "name": "Delete Assistant", "description": "Tool to permanently delete a Pinecone assistant. Use when you need to remove an assistant from your project." }, { "slug": "PINECONE_DELETE_BACKUP", "name": "Delete Backup", "description": "Tool to delete a backup. Use when you need to permanently remove a backup from your project." }, { "slug": "PINECONE_DELETE_FILE", "name": "Delete File", "description": "Tool to delete an uploaded file from a Pinecone assistant. Use when you need to remove a file that was previously uploaded to an assistant." }, { "slug": "PINECONE_DELETE_INDEX", "name": "Delete Index", "description": "Tool to permanently delete a Pinecone index. Use when you need to remove an index from your project. Note: Deletion protection and pending collections can prevent deletion." }, { "slug": "PINECONE_DELETE_NAMESPACE", "name": "Delete Namespace", "description": "Tool to permanently delete a namespace from a serverless index. Use when you need to remove an entire namespace and all its data. This operation is irreversible and only supported on serverless indexes." }, { "slug": "PINECONE_DELETE_VECTORS", "name": "Delete Vectors", "description": "Tool to delete vectors by ID from a Pinecone index. Use when you need to remove specific vectors from a namespace. Supports deletion by IDs, metadata filter, or entire namespace deletion." }, { "slug": "PINECONE_DESCRIBE_BACKUP", "name": "Describe Backup", "description": "Tool to retrieve detailed information about a specific backup. Use when you need to check backup status, configuration, or metadata." }, { "slug": "PINECONE_DESCRIBE_BULK_IMPORT", "name": "Describe Bulk Import", "description": "Tool to describe a specific bulk import operation in Pinecone. Use when you need to retrieve detailed information about an import's status, progress, timing, and any errors." }, { "slug": "PINECONE_DESCRIBE_FILE", "name": "Describe File", "description": "Tool to get the status and metadata of a file uploaded to a Pinecone assistant. Use when you need to check file processing status, retrieve file metadata, or get a temporary signed URL for accessing the file contents." }, { "slug": "PINECONE_DESCRIBE_INDEX", "name": "Describe Index", "description": "Tool to retrieve full Pinecone index configuration including host and integrated embedding settings. Use when you need to check if an index has integrated inference (embed config) to avoid 'Integrated inference is not configured' errors by choosing the appropriate search method." }, { "slug": "PINECONE_DESCRIBE_INDEX_STATS", "name": "Describe Index Stats", "description": "Tool to get index statistics including vector count per namespace, dimensions, and fullness. Use when you need to understand the contents and status of an index." }, { "slug": "PINECONE_DESCRIBE_NAMESPACE", "name": "Describe Namespace", "description": "Tool to describe a namespace in a serverless index, including the total number of vectors. Use when you need to get metadata about a namespace such as record count and indexed fields." }, { "slug": "PINECONE_DESCRIBE_RESTORE_JOB", "name": "Describe Restore Job", "description": "Tool to get detailed information about a specific restore job in Pinecone. Use when you need to check the status, progress, or metadata of a restore operation." }, { "slug": "PINECONE_EMBED", "name": "Generate Embeddings", "description": "Tool to generate vector embeddings for input text using Pinecone's hosted embedding models. Use when you need to convert text into vector representations for semantic search or similarity matching." }, { "slug": "PINECONE_FETCH_VECTORS", "name": "Fetch Vectors", "description": "Tool to fetch vectors by ID from a Pinecone index. Use when you need to retrieve vector data and metadata for specific vector IDs from a single namespace." }, { "slug": "PINECONE_GET_ASSISTANT", "name": "Get Assistant Status", "description": "Tool to retrieve the status and details of a Pinecone assistant. Use when you need to check assistant configuration, deployment status, or metadata." }, { "slug": "PINECONE_GET_MODEL", "name": "Get Model Information", "description": "Tool to retrieve detailed information about a specific model hosted by Pinecone. Use when you need to understand model capabilities for embedding and reranking operations." }, { "slug": "PINECONE_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to list all assistants in a Pinecone project. Use when you need to retrieve all assistants with their configurations and status information." }, { "slug": "PINECONE_LIST_BULK_IMPORTS", "name": "List Bulk Imports", "description": "Tool to list all recent and ongoing bulk import operations in Pinecone. Use when you need to monitor or track the status of data import jobs. Supports pagination with a default limit of 100 imports per page." }, { "slug": "PINECONE_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to list all collections in a Pinecone project (pod-based indexes only). Use when you need to view available collections." }, { "slug": "PINECONE_LIST_FILES", "name": "List Files", "description": "Tool to list all files in a Pinecone assistant with optional metadata filtering. Use when you need to retrieve files uploaded to a specific assistant or filter files by metadata properties." }, { "slug": "PINECONE_LIST_INDEX_BACKUPS", "name": "List Index Backups", "description": "Tool to list all backups for a specific Pinecone index. Use when you need to view available backups for an index. Supports pagination via limit and paginationToken parameters." }, { "slug": "PINECONE_LIST_INDEXES", "name": "List Indexes", "description": "Tool to list all indexes in a Pinecone project. Use when you need to retrieve all indexes with their configurations and status information." }, { "slug": "PINECONE_LIST_MODELS", "name": "List Available Models", "description": "Tool to list all available embedding and reranking models hosted by Pinecone. Use when you need to discover available models or filter by model type (embed/rerank) or vector type (dense/sparse)." }, { "slug": "PINECONE_LIST_NAMESPACES_OPERATION", "name": "List Namespaces", "description": "Tool to list all namespaces in a serverless Pinecone index. Use when you need to discover available namespaces for data organization. Returns up to 100 namespaces by default with pagination support." }, { "slug": "PINECONE_LIST_PROJECT_BACKUPS", "name": "List Project Backups", "description": "Tool to list all backups for indexes in a Pinecone project. Use when you need to retrieve backup information across all project indexes. Supports pagination with limit and paginationToken parameters." }, { "slug": "PINECONE_LIST_RESTORE_JOBS", "name": "List Restore Jobs", "description": "Tool to list all restore jobs for a project with pagination support. Use when you need to view the status of restore operations or track restore progress." }, { "slug": "PINECONE_LIST_VECTORS", "name": "List Vectors", "description": "Tool to list vector IDs in a Pinecone serverless index. Use when you need to browse or retrieve vector identifiers from a namespace. Supports filtering by prefix and pagination for large result sets." }, { "slug": "PINECONE_QUERY_VECTORS", "name": "Query Vectors", "description": "Tool to perform semantic search within a Pinecone index using a query vector. Retrieves IDs and similarity scores of the most similar items, ordered from most to least similar. Either vector or id parameter must be provided." }, { "slug": "PINECONE_RERANK", "name": "Rerank Documents", "description": "Tool to rerank documents by semantic relevance to a query. Use when you need to order retrieved documents by their semantic relevance to a user's search query using Pinecone's hosted reranking models." }, { "slug": "PINECONE_RETRIEVE_CONTEXT_ASSISTANT", "name": "Retrieve Assistant Context", "description": "Tool to retrieve context snippets from a Pinecone assistant for RAG or agentic workflows. Use when you need to fetch relevant document snippets based on a query or conversation messages to provide context for language model responses." }, { "slug": "PINECONE_SEARCH_RECORDS_NAMESPACE", "name": "Search Records in Namespace", "description": "Tool to search records within a Pinecone namespace using text, vector, or ID query. Use when you need to find similar records based on embeddings or record IDs. Results can optionally be reranked for relevance." }, { "slug": "PINECONE_START_BULK_IMPORT", "name": "Start Bulk Import", "description": "Tool to start an asynchronous bulk import of vectors from object storage (S3, GCS, or Azure Blob Storage) into a Pinecone index. Use when you need to import large volumes of vectors from external storage. Returns an import ID to track the operation status." }, { "slug": "PINECONE_UPDATE_ASSISTANT", "name": "Update Assistant", "description": "Tool to update an assistant's instructions and configuration in Pinecone. Use when you need to modify an existing assistant's behavior by changing its instructions or metadata. Updates are applied immediately." }, { "slug": "PINECONE_UPDATE_VECTOR", "name": "Update Vector", "description": "Tool to update a vector in Pinecone by ID. Use to overwrite vector values and/or metadata. Supports bulk updates via metadata filters." }, { "slug": "PINECONE_UPLOAD_FILE", "name": "Upload File to Assistant", "description": "Tool to upload a file to a Pinecone assistant for processing. Use when you need to add documents, PDFs, or other files to an assistant for knowledge retrieval or multimodal processing." }, { "slug": "PINECONE_UPSERT_RECORDS_NAMESPACE", "name": "Upsert Records to Namespace", "description": "Tool to upsert text records into a Pinecone namespace. Use when you need to add or update records with automatic text-to-vector conversion." }, { "slug": "PINECONE_UPSERT_VECTORS", "name": "Upsert Vectors", "description": "Tool to upsert vectors into a Pinecone namespace, overwriting existing vector IDs. Use when you need to add or update vectors with their dense and/or sparse values and metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pinecone_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "pinecone_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Pinecone API key from the Pinecone console", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pingbell", "name": "Pingbell", "logo": "https://logos.composio.dev/api/pingbell", "description": "Instantly notify your entire team each time a conversion happens on your website or app", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PINGBELL_GET_USER_PINGBELLS", "name": "Get User PingBells", "description": "Tool to retrieve the complete list of available PingBells associated with a user account. Use when you need to get PingBell names and IDs for the authenticated user." }, { "slug": "PINGBELL_POST_NOTIFICATION", "name": "Post Notification", "description": "Tool to send a notification to a specific PingBell using the PingBell ID. Use when you need to log or send a notification message to a PingBell webhook endpoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pingbell_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from \"Account\" > \"Settings\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pingdom", "name": "Pingdom", "logo": "https://logos.composio.dev/api/pingdom", "description": "Pingdom is a web performance monitoring service that allows users to monitor the uptime and performance of websites, servers, and applications.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PINGDOM_GET_ACTIONS_ALERTS", "name": "Get Pingdom Alert Actions", "description": "Retrieves configured alert actions (notifications) from your Pingdom account. Alert actions define how and where notifications are sent when checks trigger alerts (e.g., email, SMS, webhooks, integrations like Slack/PagerDuty). Use this to list all actions or filter by specific checks, users, delivery channels, or time ranges. Supports pagination for large result sets." }, { "slug": "PINGDOM_GET_CHECKS_LIST", "name": "Get Checks List", "description": "Retrieves a list of all uptime/monitoring checks configured in Pingdom with optional filtering and pagination. Use this to: view all monitoring checks, filter by status/type/tags, search by name, or paginate through large check lists. Returns check details including ID, name, hostname, status, type, resolution, and optional tags." }, { "slug": "PINGDOM_GET_CONTACT_DETAILS", "name": "Get Contact Details", "description": "Retrieves comprehensive details of a specific Pingdom alerting contact by ID, including all configured notification methods (email, SMS), team memberships, contact type, and pause status. Use this when you need complete information about a contact's notification configuration." }, { "slug": "PINGDOM_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve all alerting contacts. Use when you need to list every contact along with their notification targets after establishing a Pingdom session." }, { "slug": "PINGDOM_GET_CREDITS", "name": "Get Credits", "description": "Retrieves comprehensive account information including check limits, SMS credits, and resource usage. Use this to monitor available checks (uptime and transaction), SMS credits, RUM sites, and alerting user capacity. Returns current usage counts and available slots for all resource types." }, { "slug": "PINGDOM_GET_LIST_MAINTENANCE_OCCURRENCES", "name": "List Maintenance Occurrences", "description": "Tool to list maintenance occurrences. Use when you need occurrences filtered by time range or a specific maintenance window ID." }, { "slug": "PINGDOM_GET_MAINTENANCE_WINDOWS", "name": "Get Maintenance Windows", "description": "Tool to retrieve a list of maintenance windows. Use when you need to list user's maintenance windows with optional pagination and time range filters." }, { "slug": "PINGDOM_GET_PROBES", "name": "Get Probes", "description": "Retrieves the complete list of Pingdom probe servers worldwide. This action returns all available probe servers that can be used for monitoring checks. Probes are distributed globally across regions (NA, EU, APAC, LATAM) and provide information about their location, IP addresses (IPv4 and IPv6), and availability status. Use this when you need to: - List all available monitoring locations - Select probes for creating uptime or transaction checks - Identify probe servers by region or country - Get IP addresses of probe servers for allowlisting" }, { "slug": "PINGDOM_GET_REFERENCE_DATA", "name": "Get Reference Data", "description": "Retrieves Pingdom reference data including regions, timezones, datetime formats, number formats, and countries. This data is used for configuring Pingdom account settings, checks, and understanding available formatting options. Use this when you need to know valid timezone IDs, region configurations, or country codes for Pingdom operations." }, { "slug": "PINGDOM_GET_SINGLE_CHECK", "name": "Get Single Check", "description": "Perform a single on-demand Pingdom check against a target host. This executes an immediate test from a specified probe (or random probe if not specified) and returns the result. Use this when you need a quick connectivity or performance test of a website, server, or service. Example uses: \"Test if google.com is reachable\", \"Check response time for example.com from a specific region\", \"Verify HTTP status of api.mysite.com\"." }, { "slug": "PINGDOM_GET_TEAM_DETAILS", "name": "Get Team Details", "description": "Tool to fetch detailed information for a specific alerting team. Use after listing teams to get full members and integrations details." }, { "slug": "PINGDOM_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve all alerting teams and their members. Use after authenticating to Pingdom to manage team configurations." }, { "slug": "PINGDOM_GET_TMS_TRANSACTION_CHECKS_LIST", "name": "Get TMS Transaction Checks List", "description": "Retrieves a paginated list of all transaction (TMS) checks configured in Pingdom. Transaction checks (also called TMS checks) are synthetic monitoring tests that simulate user interactions with web applications by executing scripted sequences of actions. Use this action to: - Get an overview of all configured transaction checks - Retrieve check IDs, names, types, and current status - Paginate through large lists of transaction checks Returns an empty list if no transaction checks are configured." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pingdom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Pingdom API Token", "type": "string", "description": "Your Pingdom API token used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pinterest", "name": "Pinterest", "logo": "https://logos.composio.dev/api/pinterest", "description": "Pinterest is a visual discovery platform for finding ideas like recipes, home and style inspiration, and more.", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pinterest_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ads:read,ads:write,boards:read,boards:read_secret,boards:write,catalogs:read,catalogs:write,pins:read,pins:read_secret,pins:write,pins:write_secret,user_accounts:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "pipeline_crm", "name": "Pipeline CRM", "logo": "https://logos.composio.dev/api/pipeline_crm", "description": "Pipeline CRM is a sales-focused customer relationship management tool designed to help teams track leads, manage deals, and streamline workflows.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PIPELINE_CRM_CREATE_COMPANY", "name": "Create Pipeline CRM Company", "description": "Creates a new company record in Pipeline CRM with contact details, address, and social media information. Use this tool when you need to add a new company to the CRM system. The only required field is the company name. You can optionally include contact information (email, phone, fax), address details, social media links, and assign owners or tags. Set check_for_duplicates=true to prevent creating companies with duplicate names." }, { "slug": "PIPELINE_CRM_CREATE_DEAL", "name": "Create Deal", "description": "Tool to create a new deal in Pipeline CRM. Use after gathering all details. Example: Create a deal named 'Big Partnership' worth 50000 USD in stage 2." }, { "slug": "PIPELINE_CRM_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company by ID in Pipeline CRM. Use after confirming the company ID is correct. Example: \"Delete company with ID 123\"." }, { "slug": "PIPELINE_CRM_DELETE_DEAL", "name": "Delete Deal", "description": "Tool to delete a deal by ID. Use when you need to remove a deal from Pipeline CRM." }, { "slug": "PIPELINE_CRM_DELETE_TASK", "name": "Delete calendar task", "description": "Tool to delete a calendar task by ID. Use after confirming the task exists in Pipeline CRM." }, { "slug": "PIPELINE_CRM_GET_COMPANY", "name": "Get Company by ID", "description": "Retrieves comprehensive details for a specific company by ID from Pipeline CRM. Returns complete company information including contact details (multiple phones, email, social media), full address breakdown, owner details, financial metrics (pipeline/won deals totals), custom fields, tags, and next scheduled tasks. Use this when you need detailed information about a company after obtaining its ID from LIST_COMPANIES or CREATE_COMPANY actions." }, { "slug": "PIPELINE_CRM_GET_DEAL", "name": "Get Deal by ID", "description": "Tool to retrieve details for a specific deal by ID in Pipeline CRM. Use after confirming the deal ID." }, { "slug": "PIPELINE_CRM_GET_STAGE", "name": "Get Deal Stage by ID", "description": "Tool to retrieve details for a specific stage by ID in Pipeline CRM. Use after confirming the stage ID." }, { "slug": "PIPELINE_CRM_GET_TASK", "name": "Get calendar task by ID", "description": "Tool to retrieve details for a specific task by ID in Pipeline CRM. Use after confirming the task ID." }, { "slug": "PIPELINE_CRM_LIST_COMPANIES", "name": "List Companies", "description": "List companies in Pipeline CRM with optional filtering, sorting, and pagination. Returns a paginated list of companies with comprehensive details including contact information, address, owner, custom fields, and tags. Supports search filtering and sorting by any field. Use this to retrieve multiple companies or search for specific companies by name or other attributes." }, { "slug": "PIPELINE_CRM_LIST_LEADS", "name": "List Leads", "description": "Tool to list leads in Pipeline CRM. Use when you need to fetch multiple leads with optional filtering and pagination. For large datasets, iterate through pages using `page` and `per_page` together; a single `per_page` value does not return all leads." }, { "slug": "PIPELINE_CRM_LIST_STAGES", "name": "List Deal Stages", "description": "Tool to list deal stages. Use when you need to enumerate all stages for deals in Pipeline CRM." }, { "slug": "PIPELINE_CRM_LIST_TASKS", "name": "List calendar tasks", "description": "Tool to list calendar tasks. Use when retrieving tasks for a deal, company, or person with optional date filters and pagination." }, { "slug": "PIPELINE_CRM_LIST_USERS", "name": "List Users", "description": "List users in Pipeline CRM account with optional pagination. Returns a paginated list of users with their details including email, name, role, status, and admin privileges. Use this to retrieve user information for assignment, reporting, or user management purposes. For large accounts, iterate through pages using `page` and `per_page` parameters. Requires admin access to the API." }, { "slug": "PIPELINE_CRM_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company by ID in Pipeline CRM. Use after confirming the company ID and fields to change." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pipelinecrm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API Key associated with your Pipeline CRM account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "App Key", "type": "string", "description": "The App Key associated with your Pipeline CRM application.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pirate_weather", "name": "Pirate Weather", "logo": "https://logos.composio.dev/api/pirate_weather", "description": "A Free, Open, and Documented Forecast API. A weather forecast API built as a compatible alternative to the Dark Sky API, serving NOAA weather model data.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PIRATE_WEATHER_GET_FORECAST", "name": "Get Weather Forecast", "description": "Tool to fetch current and forecasted weather data for a specified location. Use when you need detailed weather information including current conditions, hourly forecasts, daily forecasts, and severe weather alerts." }, { "slug": "PIRATE_WEATHER_GET_FORECAST_WITH_PARAMS", "name": "Get Weather Forecast with Parameters", "description": "Tool to get weather forecast with optional parameters like units, exclude blocks, extended hourly data, language, and extra variables. Use when you need detailed weather forecasts with specific customization options." }, { "slug": "PIRATE_WEATHER_GET_TIMEMACHINE_WITH_EXTRA", "name": "Get Historical Weather with Extra Variables", "description": "Tool to get historical weather data with extended variables using tmextra parameter. Use when you need detailed past weather information including all forecast-compatible variables for a specific date and location." }, { "slug": "PIRATE_WEATHER_WEATHER", "name": "Get Weather Forecast", "description": "Tool to fetch weather forecast or historical weather data for a location. Use when you need current conditions, hourly/daily forecasts, or past weather data based on latitude and longitude." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pirate_weather_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key directly from the Pirate Weather Dashboard page at https://pirateweather.net/dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pixelbin", "name": "Pixelbin", "logo": "https://logos.composio.dev/api/pixelbin", "description": "Simplifying digital asset management with AI-powered image optimization.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pixelbin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your Pixelbin account > Settings menu (gear icon) > Settings > Tokens to retrieve your API Token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "placid", "name": "Placid", "logo": "https://logos.composio.dev/api/placid", "description": "Placid is a creative automation toolkit that enables users to generate images, PDFs, and videos from custom templates via REST or URL APIs.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLACID_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new template collection to group multiple templates. Use when organizing templates into collections with custom metadata." }, { "slug": "PLACID_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new Placid template. Use when you need a template with specific dimensions and optional tags or custom metadata. Example: \"Create a social-media banner.\"" }, { "slug": "PLACID_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to delete a template collection by its ID. Use after confirming the collection is no longer needed. Note: This does not delete the templates within the collection." }, { "slug": "PLACID_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a specific template identified by UUID. Use after confirming the template is no longer needed." }, { "slug": "PLACID_GET_COLLECTION", "name": "Get Collection", "description": "Tool to retrieve a single collection by its ID. Use when you need details about a specific collection including its title, custom data, and associated template UUIDs." }, { "slug": "PLACID_GET_COLLECTIONS", "name": "Get Collections", "description": "Tool to retrieve a list of all template collections. Use after authentication to paginate through your Placid collections." }, { "slug": "PLACID_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve a template by UUID. Returns template details including title, thumbnail, tags, and layers." }, { "slug": "PLACID_LIST_NL_TEMPLATES", "name": "List NL Templates", "description": "Tool to list all available templates via the Natural Language API. Use when you need to discover available templates for generating images." }, { "slug": "PLACID_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of templates from your project. Returns 20 items per page with cursor pagination. Use to browse templates, optionally filtered by collection or title." }, { "slug": "PLACID_UPDATE_COLLECTION", "name": "Update Collection", "description": "Tool to update an existing template collection. Use to modify title, custom_data, or manage templates (replace all, or incrementally add/remove specific templates)." }, { "slug": "PLACID_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing Placid template. Use when you need to modify the title, tags, or custom_data of a template." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "placid_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Placid API Token", "type": "string", "description": "Your API token for authenticating requests to the Placid API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plaid", "name": "Plaid", "logo": "https://logos.composio.dev/api/plaid", "description": "Plaid provides financial data aggregation and banking APIs for applications to connect with users' bank accounts", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plaid_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Environment", "type": "string", "description": "Plaid environment: sandbox, development, or production", "required": true, "default": "sandbox" }, { "name": "generic_api_key", "displayName": "Client ID", "type": "string", "description": "Your Plaid Client ID from the Plaid Dashboard", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Secret", "type": "string", "description": "Your Plaid Secret from the Plaid Dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plain", "name": "Plain", "logo": "https://logos.composio.dev/api/plain", "description": "Plain is a collaborative support platform for B2B support teams, offering a modern, AI-powered interface to consolidate support channels and assist customers efficiently.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLAIN_ADD_CUSTOMER_TO_GROUP", "name": "Add Customer To Group", "description": "Tool to add a customer to one or more customer groups. Use when you have a customer and groups ready." }, { "slug": "PLAIN_CREATE_CUSTOMER_GROUP", "name": "Create Customer Group", "description": "Creates a new customer group in Plain for organizing and segmenting customers. Customer groups allow you to categorize customers (e.g., by pricing tier, feature access, or support level) and manage them more effectively in your support workflow. Each group has a unique key, display name, and visual color for easy identification. Use this when you need to create a new customer segment for organization or filtering purposes." }, { "slug": "PLAIN_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread. Use after obtaining valid customer identifier." }, { "slug": "PLAIN_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a customer from the system. Use when you need to remove a customer by their ID." }, { "slug": "PLAIN_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user from the system. Use when you need to remove a user by their ID after confirming existence." }, { "slug": "PLAIN_FETCH_COMPANY", "name": "Fetch Company", "description": "Tool to fetch company details by ID. Use when you need the full profile of a company, including name, domain, contract value, owner info, and timestamps." }, { "slug": "PLAIN_FETCH_ISSUES", "name": "Fetch Issues", "description": "Fetches external issue tracker links (Jira, Linear, GitHub, etc.) associated with a customer's threads. Returns a flattened list of all issue links across the customer's threads, including the thread context for each issue. Useful for getting a complete view of all external issues related to a customer. With defaults, returns up to threadFirst×linkFirst (2,500) total issue links; results are truncated if limits are exceeded, so reduce threadFirst or linkFirst for large datasets." }, { "slug": "PLAIN_FETCH_TIER", "name": "Fetch Tier", "description": "Tool to fetch a tier by its ID. Use when you have a tier ID and need its metadata before proceeding. Example: \"Fetch tier with ID tier_123\"." }, { "slug": "PLAIN_GET_CUSTOMER_BY_EMAIL", "name": "Get Customer By Email", "description": "Fetch customer details by email address. Returns customer information if found, or null if no customer exists with that email." }, { "slug": "PLAIN_GET_CUSTOMER_BY_ID", "name": "Get Customer By ID", "description": "Tool to retrieve details of a specific customer by their unique ID. Use after obtaining the customer's ID to fetch their complete record." }, { "slug": "PLAIN_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to fetch a list of customers. Use when retrieving multiple customer records with pagination, filtering, or sorting." }, { "slug": "PLAIN_GET_THREAD_BY_ID", "name": "Get Thread By ID", "description": "Fetches comprehensive details of a specific thread by ID, including customer info, status, priority, labels, and assignments. Returns null if thread not found." }, { "slug": "PLAIN_GET_USER_BY_ID", "name": "Get User By ID", "description": "Fetch workspace user/team member by ID. Returns detailed information about a workspace team member including their name, email, status, and avatar. Note: This fetches workspace users (team members), not customers. Use GET_CUSTOMER_BY_ID for customer data." }, { "slug": "PLAIN_LIST_CUSTOMER_GROUPS", "name": "List Customer Groups", "description": "Tool to list all customer groups. Use when you need to retrieve group metadata with optional pagination or filters." }, { "slug": "PLAIN_LIST_THREADS", "name": "List Threads (Deprecated)", "description": "DEPRECATED: Use PLAIN_PLAIN_QUERY_THREADS instead. Lists all threads (support conversations) in Plain. Returns thread summaries including ID, reference, title, status, and priority. Use this action to: - Get an overview of all threads in the system - Fetch threads with pagination for large datasets - Find threads by browsing through the list Pagination: Use 'first' for forward pagination (newest first) or 'last' for backward pagination (oldest last). For paginated results, use the cursors from pageInfo (endCursor/startCursor) with 'after'/'before' parameters. If no pagination parameters are provided, returns all threads." }, { "slug": "PLAIN_LIST_TIERS", "name": "List Tiers", "description": "Tool to retrieve a list of tiers with pagination. Use when you need to browse available tiers after determining pagination cursors. Example: 'List tiers with first=25'." }, { "slug": "PLAIN_QUERY_THREADS", "name": "List Threads", "description": "Tool to retrieve a paginated list of threads. Use when you need to list threads with optional status filtering." }, { "slug": "PLAIN_REMOVE_CUSTOMER_FROM_GROUP", "name": "Remove Customer From Group", "description": "Removes a customer from one or more customer groups in Plain. Use this action to revoke customer group memberships. The customer must be a member of the specified group(s) - attempting to remove a customer from a group they're not in will result in an error. Groups can be identified by either their Plain internal ID (customerGroupId) or their unique key (customerGroupKey). Common use cases: - Downgrade customer tier (e.g., remove from premium_tier group) - Remove customer from beta access groups - Clean up group memberships after customer status changes" }, { "slug": "PLAIN_RUN_GRAPHQL_QUERY", "name": "Run GraphQL Query", "description": "Execute any GraphQL query or mutation against Plain API. Use when no specific action exists or for complex operations like thread timelines, advanced filtering, and custom data retrieval. Supports queries, mutations, fragments, and variables." }, { "slug": "PLAIN_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a new message within a thread. Use after identifying the thread and preparing message content." }, { "slug": "PLAIN_UPDATE_COMPANY", "name": "Update Company", "description": "Upserts (creates or updates) a company in Plain. Provide either companyId (for updating an existing company by ID) or companyDomainName (for upserting by domain). Use this to create new companies, update existing company details (name, domain, contract value), or assign account owners." }, { "slug": "PLAIN_UPDATE_THREAD", "name": "Update Thread", "description": "Tool to update a thread's title. Use when renaming a thread after confirming its ID." }, { "slug": "PLAIN_UPSERT_CUSTOMER", "name": "Upsert Customer", "description": "Tool to upsert (create or update) a customer. Use when syncing or ensuring a customer record exists before subsequent actions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plain_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Plain API Key", "type": "string", "description": "Your Plain API key, starting 'plainApiKey_'. Create it in Settings → Machine Users → Add API Key with the permissions you need; copy it now — it's shown only once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plaky", "name": "Plaky", "logo": "https://logos.composio.dev/api/plaky", "description": "Plaky is a project management and collaboration tool for teams to organize tasks, workflows, and projects.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plaky_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate API key in Plaky: Profile → Preferences → Advanced → Manage API keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plane", "name": "Plane", "logo": "https://logos.composio.dev/api/plane", "description": "Open-source project management tool for modern software teams", "category": "productivity", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "plane_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,write,agent:run:read,agent:run:write" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Plane instance URL (e.g., https://api.plane.so or https://your-domain.com for self-hosted)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "plane_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Plane instance URL (e.g., https://api.plane.so or https://your-domain.com for self-hosted)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Plane API key from workspace settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "planly", "name": "Planly", "logo": "https://logos.composio.dev/api/planly", "description": "All-in-one social media management tool for scheduling and managing content across multiple platforms", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLANLY_COMPLETE_AI_PROMPT", "name": "Complete AI Prompt", "description": "Tool to complete a text prompt using AI. Generates AI-powered text completions based on the provided prompt. Use when you need to generate creative content, complete text, or get AI suggestions for writing tasks." }, { "slug": "PLANLY_CREATE_TEAM", "name": "Create Team", "description": "Tool to create a new team in Planly. Use when you need to create a team organization." }, { "slug": "PLANLY_DELETE_MEDIA", "name": "Delete Media", "description": "Tool to delete one or more media files by their IDs. Use when you need to remove media files from Planly storage." }, { "slug": "PLANLY_DELETE_TEAM", "name": "Delete Team", "description": "Tool to delete a team by its ID. Use when you need to permanently remove a team from Planly." }, { "slug": "PLANLY_EDIT_TEAM", "name": "Edit Team", "description": "Tool to edit team details such as name in Planly. Use when you need to update an existing team's information." }, { "slug": "PLANLY_GET_AI_CREDITS", "name": "Get AI Credits", "description": "Tool to retrieve available AI credits left in a team. Use when you need to check the remaining AI credits for a specific team." }, { "slug": "PLANLY_GET_TEAM", "name": "Get Team", "description": "Tool to retrieve detailed information about a specific team including permissions, limits, and integrations. Use when you need to access team configuration, member counts, channel status, or integration details." }, { "slug": "PLANLY_IMPORT_MEDIA_FROM_URL", "name": "Import Media From URL", "description": "Tool to import media from a URL to your team. Use when you need to add external media (video/mp4, image/png, image/jpeg, image/webp) to a team's media library." }, { "slug": "PLANLY_LIST_CHANNELS", "name": "List Channels", "description": "Tool to list all social media channels connected to a team. Use when you need to retrieve channel details including name, picture, social network type, status, and scopes." }, { "slug": "PLANLY_LIST_MEDIA", "name": "List media files", "description": "Tool to retrieve a paginated list of media files in a team. Use when you need to fetch media assets, browse uploaded files, or implement media management features with cursor-based pagination." }, { "slug": "PLANLY_LIST_SCHEDULE_GROUPS", "name": "List Schedule Groups", "description": "Tool to retrieve a list of schedule groups for a team with comprehensive filtering and pagination. Use when you need to view scheduled posts, filter by channels, status, social networks, media type, or date range. Returns detailed information about each schedule group including individual schedules and their status." }, { "slug": "PLANLY_LIST_SCHEDULES", "name": "List Schedules", "description": "Tool to retrieve a paginated list of schedules in a specified team. Use when you need to fetch schedules with support for pagination, custom ordering, and configurable page size. Returns schedule data with a cursor for fetching additional pages." }, { "slug": "PLANLY_LIST_TEAMS", "name": "List Teams", "description": "Tool to retrieve all teams that the authenticated user belongs to. Use when you need to get team details including id, name, picture, role, number of users, and number of channels." }, { "slug": "PLANLY_LIST_TEAM_USERS", "name": "List Team Users", "description": "Tool to list all users that belong to a specific team. Returns user details including id, fullname, picture, email, and role. Use when you need to retrieve the complete roster of team members." }, { "slug": "PLANLY_START_MEDIA_UPLOAD", "name": "Start Media Upload", "description": "Tool to start the upload process for a media file. Returns a pre-signed upload URL where the file should be uploaded using a PUT request. Use when you need to prepare for uploading images or videos to Planly." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "planly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Planly API key. Obtain it from Settings > Account Settings > Security at https://app.planly.com/settings/account/security", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "planyo_online_booking", "name": "Planyo Online Booking", "logo": "https://logos.composio.dev/api/planyo_online_booking", "description": "Planyo is an online reservation system which can be used by any business taking bookings: for days, nights, hours or minutes, or scheduled events.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLANYO_ONLINE_BOOKING_ADD_RESERVATION", "name": "Add Reservation", "description": "Tool to create a new reservation. Use after gathering resource, timing, and customer details." }, { "slug": "PLANYO_ONLINE_BOOKING_ADD_USER", "name": "Add User", "description": "Tool to add a new user in Planyo. Use when you need to create a user account after gathering user details." }, { "slug": "PLANYO_ONLINE_BOOKING_GET_ADDON_LIST", "name": "Get Add-on List", "description": "Tool to retrieve a list of add-ons. Use when you need to inspect or manage add-ons for a specific resource or across the entire site after setting up credentials." }, { "slug": "PLANYO_ONLINE_BOOKING_GET_COUPON_LIST", "name": "Get Coupon List", "description": "Tool to retrieve a list of coupons. Use when you need to fetch all coupons for a specific resource or the entire site (if no resource_id provided)." }, { "slug": "PLANYO_ONLINE_BOOKING_GET_RESOURCE_AVAILABILITY", "name": "Get Resource Availability", "description": "Tool to check resource availability within a specified date/time range. Use when validating if a resource can be reserved before creating a reservation." }, { "slug": "PLANYO_ONLINE_BOOKING_GET_RESOURCE_BLACKOUTS", "name": "Get Resource Blackouts", "description": "Tool to fetch blackout periods for a resource. Use when determining unavailable timeslots before booking." }, { "slug": "PLANYO_ONLINE_BOOKING_GET_RESOURCE_REVIEWS", "name": "Get Resource Reviews", "description": "Tool to fetch reviews and ratings for a specific resource. Use when you have a resource_id and need to display customer feedback." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "planyo_online_booking_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Go to the API - Planyo Web Services page and under the Authentication and security section click the API Key button", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plasmic", "name": "Plasmic", "logo": "https://logos.composio.dev/api/plasmic", "description": "Plasmic is a visual builder for the web, enabling teams to create and manage web pages and components without code.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLASMIC_GLOBAL_ACTIONS_PROVIDER", "name": "Plasmic Global Actions Provider", "description": "Tool to generate the globalContexts configuration snippet for Plasmic loader. Use when you need to configure global contexts after defining your React providers." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plasmic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Plasmic Project API Token", "type": "string", "description": "The API token associated with your Plasmic project, used for authentication.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Plasmic Project ID", "type": "string", "description": "The unique identifier for your Plasmic project.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plasticlist", "name": "Plasticlist", "logo": "https://logos.composio.dev/api/plasticlist", "description": "PlasticList is a comprehensive database of plastic products powered by Spice.ai, providing access to plastic product data via SQL queries", "category": "analytics", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "plasticlist_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Spice.ai API key for Apache Arrow Flight API authentication", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "plasticlist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Spice.ai API key. Get one at https://spice.ai", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "platerecognizer", "name": "Plate Recognizer", "logo": "https://logos.composio.dev/api/platerecognizer", "description": "Plate Recognizer offers Automatic License Plate Recognition (ALPR) solutions for processing images and videos to detect and decode vehicle license plates.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLATERECOGNIZER_READ_LICENSE_PLATE", "name": "Read License Plate", "description": "Tool to read license plates from images with confidence scores and optional vehicle details. Use when you need to extract license plate text, region information, or analyze vehicle attributes from images." }, { "slug": "PLATERECOGNIZER_SNAPSHOT_GET_STATISTICS", "name": "Snapshot Get Statistics", "description": "Tool to retrieve usage statistics for the current month's Snapshot API recognition calls. Use after making Snapshot API calls to monitor monthly usage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "platerecognizer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Plate Recognizer API Token", "type": "string", "description": "The API Token provided by Plate Recognizer for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plausible_analytics", "name": "Plausible Analytics", "logo": "https://logos.composio.dev/api/plausible_analytics", "description": "Privacy-focused web analytics platform that provides simple, lightweight, and GDPR-compliant website statistics", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLAUSIBLE_ANALYTICS_CHECK_HEALTH", "name": "Check API Health", "description": "Tool to check the health status of the Plausible Analytics API. Use when verifying API connectivity and service availability before making other API calls." }, { "slug": "PLAUSIBLE_ANALYTICS_GET_BREAKDOWN_STATS", "name": "Get Breakdown Stats", "description": "Tool to retrieve breakdown statistics for a specific property (dimension) from Plausible Analytics. Use when you need to analyze top sources, top pages, device breakdown, geographic distribution, or any other dimensional breakdown of your site traffic. This is a legacy Stats API v1 endpoint used for Top Sources, Top Pages and similar reports." }, { "slug": "PLAUSIBLE_ANALYTICS_GET_PLUGIN_CAPABILITIES", "name": "Get Plugin Capabilities", "description": "Tool to retrieve available capabilities for the Plausible Analytics Plugins API. Use this to check which features are enabled for the authenticated account, such as Goals, Funnels, Stats API, and more." }, { "slug": "PLAUSIBLE_ANALYTICS_GET_REALTIME_VISITORS", "name": "Get Realtime Visitors", "description": "Tool to retrieve the number of current visitors on your site in the last 5 minutes. Use this to get real-time visitor counts from the Plausible Analytics Stats API v1." }, { "slug": "PLAUSIBLE_ANALYTICS_GET_SITE", "name": "Get Site Details", "description": "Tool to retrieve details for a specific Plausible Analytics site. Use when you need site configuration including domain, timezone, custom properties, and tracker script settings." }, { "slug": "PLAUSIBLE_ANALYTICS_GET_TIMESERIES_STATS", "name": "Get Timeseries Stats", "description": "Tool to retrieve timeseries visitor data from Plausible Analytics over a specified time period. Use this to get historical trends for metrics like visitors, pageviews, bounce rate, and visit duration. This is the legacy Stats API v1 endpoint typically used for the main visitor graph." }, { "slug": "PLAUSIBLE_ANALYTICS_LIST_CUSTOM_PROPS", "name": "List Custom Properties", "description": "Tool to list all custom properties configured for a site. Use when you need to retrieve custom property configurations for a Plausible Analytics site. Enterprise feature only." }, { "slug": "PLAUSIBLE_ANALYTICS_LIST_GOALS", "name": "List Goals", "description": "Tool to list all goals configured for a site. Use when you need to retrieve conversion goals and custom action tracking configured for a Plausible Analytics site." }, { "slug": "PLAUSIBLE_ANALYTICS_LIST_GUESTS", "name": "List Site Guests", "description": "Tool to list all guest users who have access to a site's dashboard in Plausible Analytics. Use when you need to see which guests have been granted access to view a specific site's analytics. This is an Enterprise feature." }, { "slug": "PLAUSIBLE_ANALYTICS_LIST_SITES", "name": "List Sites", "description": "Tool to list all sites the API key owner's Plausible account can access. Returns domain, timezone, and creation info with pagination support. Use when you need to retrieve all sites or paginate through large site lists." }, { "slug": "PLAUSIBLE_ANALYTICS_LIST_TEAMS", "name": "List Teams", "description": "Tool to list all teams available for the API key owner. Use when you need to retrieve teams for site provisioning to a specific team." }, { "slug": "PLAUSIBLE_ANALYTICS_QUERY_STATS", "name": "Query Analytics Stats", "description": "Tool to query analytics stats for a site using the Stats API v2. Use when you need to retrieve historical or real-time statistics such as visitors, pageviews, bounce rate, visit duration, and more. Supports filtering, grouping by dimensions, and custom date ranges." }, { "slug": "PLAUSIBLE_ANALYTICS_RECORD_EVENT", "name": "Record Event", "description": "Tool to record a pageview or custom event via the Plausible Events API. Use when tracking Android/iOS mobile apps or server-side tracking. Requires proper User-Agent and optionally X-Forwarded-For headers for unique visitor counting." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plausible_analytics_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your Plausible instance URL (e.g., https://plausible.io for cloud or https://analytics.yourdomain.com for self-hosted)", "required": true, "default": "https://plausible.io" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Plausible Analytics API key. Generate it from your account settings under \"API Keys\" section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "plisio", "name": "Plisio", "logo": "https://logos.composio.dev/api/plisio", "description": "Plisio is a cryptocurrency payment gateway that enables businesses to accept payments in over 15 cryptocurrencies, including Bitcoin, Ethereum, and Litecoin.", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PLISIO_CREATE_INVOICE", "name": "Create Plisio Invoice", "description": "Tool to create a new cryptocurrency payment invoice with Plisio. Returns transaction ID and invoice URL for payment. For white-label accounts, includes additional fields like wallet hash, QR code, and commission details. Use when you need to generate a payment request for cryptocurrency transactions." }, { "slug": "PLISIO_ESTIMATE_FEE", "name": "Estimate Fee", "description": "Tool to estimate network fee for a withdrawal transaction to specific address(es). Use when calculating transaction costs before creating a withdrawal." }, { "slug": "PLISIO_GET_BALANCE_BY_CURRENCY", "name": "Get Balance By Currency", "description": "Tool to get the balance for a specific cryptocurrency in your Plisio account. Use when you need to retrieve the balance of a particular crypto asset." }, { "slug": "PLISIO_GET_COMMISSION", "name": "Get Commission", "description": "Tool to estimate the total cost including network fee and Plisio commission for a transaction. Returns detailed breakdown of commission, fee, and fee plan options for the specified cryptocurrency and amounts." }, { "slug": "PLISIO_GET_CURRENCY_RATE", "name": "Get Currency Rate", "description": "Tool to retrieve list of supported cryptocurrencies with current rates filtered by fiat currency. Use when you need exchange rate information for cryptocurrencies in a specific fiat currency." }, { "slug": "PLISIO_GET_FEE_PLANS", "name": "Get Fee Plans", "description": "Tool to retrieve available fee plans for a given cryptocurrency. Specify a currency symbol like 'BTC', 'ETH' to get fee plan details." }, { "slug": "PLISIO_GET_FEE_PLANS2", "name": "Get Fee Plans", "description": "Tool to get available fee plans for a specific cryptocurrency. Returns fee values and configuration like gas limits for Ethereum-based coins or confirmation targets for Bitcoin. Use when you need to determine transaction fee options before creating or sending a transaction." }, { "slug": "PLISIO_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve detailed information about a specific invoice by its ID. Use when you need to check invoice status, payment details, or transaction information." }, { "slug": "PLISIO_GET_INVOICE_EMAIL", "name": "Get Invoice by Email", "description": "Tool to retrieve invoice details by email ID. Use when you need to fetch detailed information about a specific invoice using the invoice ID and payer's email address." }, { "slug": "PLISIO_GET_SHOP", "name": "Get Shop Information", "description": "Tool to retrieve shop information by API key. Returns details about the shop associated with the current API credentials." }, { "slug": "PLISIO_GET_TRANSACTIONS", "name": "Get Plisio Transactions", "description": "Tool to retrieve a list of transactions and invoices. Use after authenticating with your API key to fetch historical operations with optional filters and pagination. Example: GetTransactions(status='paid', limit=20)." }, { "slug": "PLISIO_LIST_CURRENCIES", "name": "List Supported Currencies", "description": "Tool to retrieve a list of supported cryptocurrencies with their rates and information. Use after API credentials are configured to get current exchange rates, commission percentages, and operational status for all available coins." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "plisio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Plisio API Key", "type": "string", "description": "Your personal secret key used for API authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pointagram", "name": "Pointagram", "logo": "https://logos.composio.dev/api/pointagram", "description": "Pointagram is a gamification tool that increases motivation and team achievements. Keep your team goal-oriented and celebrate great performance together.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POINTAGRAM_ADD_SCORE", "name": "Add Score", "description": "Tool to add points to Pointagram players in a score series. Use when you need to award points with optional tags, descriptions, and automatic player creation." }, { "slug": "POINTAGRAM_LIST_COMPETITION_PLAYERS", "name": "List Competition Players", "description": "Tool to fetch competition players and standings in Pointagram. Returns detailed player rankings, scores, and competition participation data. Use when you need to retrieve player standings, competition leaderboards, or analyze player performance across competitions." }, { "slug": "POINTAGRAM_LIST_COMPETITIONS", "name": "List Competitions", "description": "Tool to fetch competitions in Pointagram with optional filtering. Use when you need to retrieve competition information including rankings and scores. Supports filtering by player (email, name, external ID), competition ID, or access key." }, { "slug": "POINTAGRAM_LIST_PLAYERS", "name": "List Players", "description": "Tool to fetch and list players in Pointagram with optional filtering. Use when you need to retrieve player information including name, email, external ID, and status. Supports filtering by email, name, or external ID." }, { "slug": "POINTAGRAM_LIST_SCORE_SERIES", "name": "List Score Series", "description": "Tool to list all score series in Pointagram. Use when you need to retrieve all configured score series collections that track and measure different point types." }, { "slug": "POINTAGRAM_LIST_SCORE_SERIES_HISTORY", "name": "List Score Series History", "description": "Tool to fetch historical point data for a score series. Returns time-series data of points awarded over time with optional filtering by tags, teams, players, and time range. Use when you need to retrieve historical transaction data for a specific score series." }, { "slug": "POINTAGRAM_LIST_SCORE_SERIES_POINT_TYPES", "name": "List Score Series Point Types", "description": "Tool to fetch point types for a specific score series in Pointagram. Use when you need to retrieve the different types of points that can be awarded within a score series." }, { "slug": "POINTAGRAM_LIST_TEAMS", "name": "List Teams", "description": "Tool to fetch and list all teams in Pointagram. Returns team information including ID, name, and icon. Use when you need to retrieve all available teams." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pointagram_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Pointagram API key. Go to Profile > Settings > Integrations, add a Custom Integration, click Create Credentials, name your integration, and click Show Key to reveal your API key.", "required": true, "default": null }, { "name": "generic_id", "displayName": "API User", "type": "string", "description": "Your Pointagram login email address", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "poku_labs", "name": "Poku Labs", "logo": "https://logos.composio.dev/api/poku_labs", "description": "Human-in-the-Loop (HITL) MCP server for AI agents, enabling real-time human assistance via SMS, WhatsApp, and phone calls", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "poku_labs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Poku Labs API key from https://dashboard.pokulabs.com", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "polygon", "name": "Polygon", "logo": "https://logos.composio.dev/api/polygon", "description": "Polygon.io provides real-time and historical market data APIs for stocks, options, forex, and cryptocurrencies.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 90, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POLYGON_GET10_K_SECTIONS", "name": "Get 10-K Filing Sections", "description": "Tool to retrieve 10-K filing sections from the SEC. Use when you need to access specific sections of 10-K filings such as business descriptions, risk factors, or financial statements." }, { "slug": "POLYGON_GET_AGGREGATES", "name": "Get Aggregates", "description": "Tool to fetch custom aggregate OHLCV bars for a stock. Use when you need historical price and volume data aggregated by custom intervals over a date range." }, { "slug": "POLYGON_GET_ALL_TICKERS", "name": "Get All Tickers", "description": "Tool to retrieve all ticker symbols across asset classes. Use when you need to filter by market or exchange and paginate through results. Without filters, result sets can be extremely large — always narrow queries using `market`, `search`, `ticker`, or `exchange`." }, { "slug": "POLYGON_GET_CONDITION_CODES", "name": "Get Condition Codes", "description": "Tool to retrieve a unified list of trade and quote condition codes and their definitions. Use when needing to decode condition identifiers after fetching market data." }, { "slug": "POLYGON_GET_CRYPTO_AGGREGATES", "name": "Get Crypto Aggregates", "description": "Tool to retrieve aggregate bars for a cryptocurrency over a time range. Use when you need to fetch historical bars aggregated by specific time intervals." }, { "slug": "POLYGON_GET_CRYPTO_ALL_TICKERS", "name": "Get Crypto All Tickers Snapshot", "description": "Tool to retrieve snapshots for all cryptocurrency tickers. Use when you need a full-market crypto snapshot of the latest values." }, { "slug": "POLYGON_GET_CRYPTO_EMA", "name": "Get Crypto EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for a crypto ticker. Use when you need trend analysis or moving average calculations for cryptocurrency pairs." }, { "slug": "POLYGON_GET_CRYPTO_GROUPED_DAILY", "name": "Get Crypto Grouped Daily", "description": "Tool to retrieve daily grouped bars for all cryptocurrencies on a specified date. Use when you need a comprehensive end-of-day summary across all crypto tickers." }, { "slug": "POLYGON_GET_CRYPTO_LAST_TRADE", "name": "Get Crypto Last Trade", "description": "Tool to retrieve the last trade for a specified cryptocurrency pair. Use when you need the most recent trade details after specifying both symbols." }, { "slug": "POLYGON_GET_CRYPTO_MACD", "name": "Get Crypto MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for a crypto ticker. Use when you need momentum analysis, trend identification, or trading signal generation for cryptocurrency pairs." }, { "slug": "POLYGON_GET_CRYPTO_OPEN_CLOSE", "name": "Get Crypto Open/Close", "description": "Tool to fetch daily open and close prices for a given crypto pair on a specified date. Use after specifying both currency symbols and the date." }, { "slug": "POLYGON_GET_CRYPTO_PREV_CLOSE", "name": "Get Crypto Previous Close", "description": "Tool to retrieve previous day’s close for a crypto ticker. Use when you need the last closing price of a cryptocurrency before analysis or trading." }, { "slug": "POLYGON_GET_CRYPTO_RSI", "name": "Get Crypto RSI", "description": "Tool to calculate the Relative Strength Index (RSI) for a cryptocurrency ticker. Use when you need to analyze momentum or identify overbought/oversold conditions for crypto assets." }, { "slug": "POLYGON_GET_CRYPTO_SMA", "name": "Get Crypto SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for a cryptocurrency ticker. Use when you need trend analysis, support/resistance levels, or trading signal generation for crypto pairs." }, { "slug": "POLYGON_GET_CRYPTO_TICKER_BOOK", "name": "Get Crypto Ticker Book", "description": "Tool to retrieve the full L2 order book for a crypto ticker. Use when you need a snapshot of combined bids and asks for market depth analysis." }, { "slug": "POLYGON_GET_CRYPTO_TRADES", "name": "Get Crypto Trades", "description": "Tool to fetch historical trade data for a cryptocurrency ticker. Use when you need tick-level trades within a time range." }, { "slug": "POLYGON_GET_DIVIDENDS", "name": "Get Dividends", "description": "Tool to retrieve dividend data for stocks. Use when you need corporate dividend information for specific tickers." }, { "slug": "POLYGON_GET_ECONOMY_INFLATION", "name": "Get Economy Inflation Indicators", "description": "Tool to retrieve key indicators of realized inflation including CPI and PCE price indexes. Use when analyzing inflation trends, economic conditions, or historical price changes in the U.S. economy." }, { "slug": "POLYGON_GET_EMA", "name": "Get Exponential Moving Average", "description": "Tool to retrieve the Exponential Moving Average for a stock ticker. Use when you need EMA values across a specific timespan with optional underlying data." }, { "slug": "POLYGON_GET_FILING", "name": "Get SEC Filing", "description": "Tool to retrieve SEC filing details by filing ID. Use when you need detailed information about a specific SEC filing." }, { "slug": "POLYGON_GET_FILING_FILE", "name": "Get SEC Filing File", "description": "Tool to retrieve information about a specific SEC filing file. Use when you need to get metadata and download URL for a particular file within an SEC filing." }, { "slug": "POLYGON_GET_FOREX_AGGREGATES", "name": "Get Forex Aggregates", "description": "Tool to retrieve aggregate bars for a forex pair over a date range. Use when you need custom OHLC bars for forex currency pairs within specified time span." }, { "slug": "POLYGON_GET_FOREX_EMA", "name": "Get Forex EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for a forex pair. Use when you need trend analysis or moving average calculations for currency pairs." }, { "slug": "POLYGON_GET_FOREX_GROUPED_DAILY", "name": "Get Forex Grouped Daily Bars", "description": "Tool to retrieve daily grouped OHLC bars for all forex currency pairs on a specified date. Use when you need aggregated forex data after confirming the date parameter." }, { "slug": "POLYGON_GET_FOREX_HISTORICAL_QUOTES", "name": "Get Forex Historical Quotes", "description": "Tool to retrieve historical forex quotes for a currency pair over a time range. Use when you need bid/ask quotes for an FX ticker between timestamps or dates. Use after confirming the forex ticker symbol." }, { "slug": "POLYGON_GET_FOREX_LOCALES", "name": "Get Forex Locales", "description": "Tool to list locales supported by Polygon's forex asset class. Use when you need available locale codes for regional filtering in FX endpoints." }, { "slug": "POLYGON_GET_FOREX_MACD", "name": "Get Forex MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for a forex pair. Use when you need momentum analysis, trend identification, or trading signal generation for currency pairs." }, { "slug": "POLYGON_GET_FOREX_PREV_CLOSE", "name": "Get Forex Previous Close", "description": "Tool to retrieve previous day's close for a forex ticker. Use when you need the last closing price of a forex currency pair before analysis or trading." }, { "slug": "POLYGON_GET_FOREX_REAL_TIME_CURRENCY_CONVERSION", "name": "Get Forex Real-Time Currency Conversion", "description": "Tool to convert amounts between currency pairs using real-time forex rates. Use when you need to perform currency conversions with the latest market rates." }, { "slug": "POLYGON_GET_FOREX_RSI", "name": "Get Forex RSI", "description": "Tool to calculate the Relative Strength Index (RSI) technical indicator for a forex pair. Use when you need momentum analysis or want to identify overbought/oversold conditions for currency pairs." }, { "slug": "POLYGON_GET_FOREX_SMA", "name": "Get Forex SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for a forex pair. Use when you need trend analysis or moving average calculations for currency pairs." }, { "slug": "POLYGON_GET_FOREX_SNAPSHOT_LOSERS", "name": "Get Forex Snapshot Losers", "description": "Tool to retrieve the current snapshot of the top losers in the forex market. Use when you need up-to-date information on the worst-performing forex pairs." }, { "slug": "POLYGON_GET_FUTURES_AGGREGATES", "name": "Get Futures Aggregates", "description": "Tool to retrieve historical OHLCV aggregates for a futures contract. Use when you need aggregated price and volume data for a futures contract over specified time windows." }, { "slug": "POLYGON_GET_FUTURES_PRODUCTS", "name": "Get Futures Products", "description": "Tool to retrieve a comprehensive list of futures products with advanced filtering. Use when you need to filter futures listings by date, sector, exchange, or type." }, { "slug": "POLYGON_GET_FUTURES_PRODUCT_SCHEDULES", "name": "Get Futures Product Schedules", "description": "Tool to retrieve trading schedules for a futures product. Use when you need daily trading session schedules for a given product code." }, { "slug": "POLYGON_GET_FUTURES_QUOTES", "name": "Get Futures Quotes", "description": "Tool to retrieve real-time quote data for a specified futures contract ticker. Use after confirming the exact futures ticker identifier (e.g., 'GCJ5')." }, { "slug": "POLYGON_GET_FUTURES_SCHEDULES", "name": "Get Futures Schedules", "description": "Tool to retrieve futures trading schedules. Use when you need trading schedules for all futures contracts on a specific date." }, { "slug": "POLYGON_GET_FUTURES_TRADES", "name": "Get Futures Trades", "description": "Tool to retrieve tick-level trade data for a specified futures contract. Use when you need detailed trade data over a time range." }, { "slug": "POLYGON_GET_HISTORIC_FOREX_TICKS", "name": "Get Historic Forex Ticks", "description": "Tool to get historic ticks for a currency pair on a specific date. Use when you need historical forex tick-level data (ask/bid prices with timestamps) for a given day." }, { "slug": "POLYGON_GET_INFLATION_EXPECTATIONS", "name": "Get Inflation Expectations", "description": "Tool to retrieve inflation expectations data from the Federal Reserve based on Treasury yields and Cleveland Fed models. Use when analyzing expected future inflation rates across multiple time horizons (1-year, 5-year, 10-year, 30-year)." }, { "slug": "POLYGON_GET_IPO_DATA", "name": "Get IPO Data", "description": "Tool to retrieve comprehensive information on Initial Public Offerings (IPOs), including upcoming and historical events. Use when analyzing IPO listing data by date range, ticker, or identifier." }, { "slug": "POLYGON_GET_MACD", "name": "Get MACD", "description": "Tool to retrieve the Moving Average Convergence/Divergence (MACD) for a stock ticker. Use when you need momentum analysis or signal generation over a specified timeframe." }, { "slug": "POLYGON_GET_MARKET_HOLIDAYS", "name": "Get Upcoming Market Holidays", "description": "Tool to retrieve upcoming market holidays and half-day closures. Use when you need to look up upcoming exchange holidays and early closures." }, { "slug": "POLYGON_GET_MARKET_STATUS", "name": "Get Market Status", "description": "Tool to retrieve current market status. Use when you need to know if U.S. exchanges are open, closed, or on holiday." }, { "slug": "POLYGON_GET_META_CONDITIONS_BY_TICKTYPE", "name": "Get Meta Conditions By Ticktype", "description": "Tool to retrieve condition code mappings for a specific tick type (trades or quotes). Use when you need to decode numeric condition codes into human-readable labels for market data interpretation." }, { "slug": "POLYGON_GET_NEWS", "name": "Get News", "description": "Tool to retrieve recent news articles related to a ticker. Use when you need to fetch financial news after identifying a ticker symbol." }, { "slug": "POLYGON_GET_OPEN_CLOSE", "name": "Get Stock Open/Close", "description": "Tool to fetch daily open and close prices for a stock on a specific date. Use when you need daily OHLC with pre/post-market prices." }, { "slug": "POLYGON_GET_OPTION_CHAIN_SNAPSHOT", "name": "Get Option Chain Snapshot", "description": "Tool to fetch a real-time snapshot of all option contracts for an underlying asset. Use after selecting the underlying ticker to retrieve live option chain data." }, { "slug": "POLYGON_GET_OPTIONS_CONTRACT_OVERVIEW", "name": "Get Options Contract Overview", "description": "Tool to retrieve comprehensive details about a specific options contract including contract type, exercise style, expiration date, strike price, and underlying ticker. Use when you need specifications for options contract analysis or strategy development." }, { "slug": "POLYGON_GET_OPTIONS_CUSTOM_BARS", "name": "Get Options Custom Bars", "description": "Tool to retrieve historical OHLC and volume data for options contracts over custom date ranges with configurable time windows. Use when you need aggregate bars for options price analysis or strategy development." }, { "slug": "POLYGON_GET_OPTIONS_EMA", "name": "Get Options EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for an options ticker. Use when you need trend analysis or moving average calculations for options contracts." }, { "slug": "POLYGON_GET_OPTIONS_MACD", "name": "Get Options MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for an options ticker. Use when you need momentum analysis, trend identification, or trading signal generation for options contracts." }, { "slug": "POLYGON_GET_OPTION_SNAPSHOT", "name": "Get Option Snapshot", "description": "Tool to retrieve a real-time snapshot for a single option contract. Use when you need up-to-the-minute quotes, trades, greeks, and metrics for a specified option contract." }, { "slug": "POLYGON_GET_OPTIONS_RSI", "name": "Get Options RSI", "description": "Tool to calculate Relative Strength Index (RSI) technical indicator for an options ticker. Use when you need momentum analysis or want to identify overbought/oversold conditions for options contracts." }, { "slug": "POLYGON_GET_OPTIONS_SMA", "name": "Get Options SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for an options ticker. Use when you need trend analysis or smoothed price data for options contracts." }, { "slug": "POLYGON_GET_PREVIOUS_CLOSE", "name": "Get Previous Close", "description": "Tool to get previous trading day’s OHLC and volume for a stock. Use when you need the last day’s open, high, low, close, and volume for a given ticker." }, { "slug": "POLYGON_GET_REFERENCE_EXCHANGES", "name": "Get reference exchanges", "description": "Tool to retrieve supported exchanges and their details. Use when you need a list of exchanges filtered by asset class or locale." }, { "slug": "POLYGON_GET_REFERENCE_MARKETS", "name": "Get reference markets", "description": "Tool to retrieve all supported markets from Polygon.io. Use when you need a list of available market types." }, { "slug": "POLYGON_GET_REFERENCE_TYPES", "name": "Get Reference Ticker Types", "description": "Tool to retrieve all ticker types supported by Polygon. Use when you need to understand the different ticker classifications available across asset classes and markets." }, { "slug": "POLYGON_GET_RELATED_COMPANIES", "name": "Get Related Companies", "description": "Tool to get a list of related companies for a ticker symbol based on various similarity metrics. Use when you need to find companies related to a specific ticker." }, { "slug": "POLYGON_GET_RISK_CATEGORIES", "name": "Get Risk Categories", "description": "Tool to retrieve risk factor taxonomy categories from SEC 10-K filings. Use when you need to explore or filter risk classifications by taxonomy version or category level." }, { "slug": "POLYGON_GET_RSI", "name": "Get RSI", "description": "Tool to retrieve the Relative Strength Index (RSI) for a stock ticker. Use after confirming ticker symbol and timespan to analyze momentum over a period." }, { "slug": "POLYGON_GET_SHORT_INTEREST", "name": "Get Short Interest", "description": "Tool to retrieve bi-monthly aggregated short interest data for stocks reported to FINRA. Use when analyzing sentiment, identifying potential short squeezes, or researching short positions." }, { "slug": "POLYGON_GET_SHORT_VOLUME", "name": "Get Short Volume", "description": "Tool to retrieve short volume data for stocks. Use when analyzing short selling activity, market sentiment, or detecting abnormal short-selling patterns." }, { "slug": "POLYGON_GET_SMA", "name": "Get Simple Moving Average", "description": "Tool to retrieve the Simple Moving Average (SMA) for any ticker (stocks, forex, crypto). Use when you need SMA values over a specified timespan with optional underlying data." }, { "slug": "POLYGON_GET_SNAPSHOT_ALL_TICKERS", "name": "Get All Stock Tickers Snapshot", "description": "Tool to retrieve the current market snapshot for all stock tickers. Use when you need real-time OHLCV, trades, and quotes across the entire US stock market in one call." }, { "slug": "POLYGON_GET_SNAPSHOT_LOSERS", "name": "Get Stock Snapshot Losers", "description": "Tool to retrieve the current snapshot of the top losers in the U.S. stock market. Use when you need up-to-date information on the worst-performing stocks." }, { "slug": "POLYGON_GET_SNAPSHOT_SINGLE_TICKER", "name": "Get Stock Snapshot Ticker", "description": "Tool to retrieve the current snapshot of a specific stock ticker. Use when you need the most recent market snapshot after specifying the ticker symbol." }, { "slug": "POLYGON_GET_SPLITS", "name": "Get Stock Splits", "description": "Tool to retrieve stock split events. Use when you need corporate stock split data filtered by ticker or date range. Example: \"Get splits for AAPL between 2021-01-01 and 2021-12-31\"." }, { "slug": "POLYGON_GET_STOCK_FINANCIALS", "name": "Get Stock Financials", "description": "Tool to retrieve historical financial data for a stock ticker from SEC filings. Use when analyzing company financials, comparing quarters, or examining financial trends." }, { "slug": "POLYGON_GET_STOCK_FLOAT", "name": "Get Stock Float", "description": "Tool to retrieve stock float data showing the number and percentage of publicly tradable shares. Use when you need information about the free float of stocks." }, { "slug": "POLYGON_GET_STOCKS_BALANCE_SHEETS", "name": "Get Stocks Balance Sheets", "description": "Tool to retrieve point-in-time balance sheet data including assets, liabilities, and equity from company SEC filings. Use when analyzing financial position with quarterly and annual history." }, { "slug": "POLYGON_GET_STOCKS_CASH_FLOW_STATEMENTS", "name": "Get Stocks Cash Flow Statements", "description": "Tool to retrieve historical cash flow statement data from company SEC filings across quarterly, annual, and TTM frequencies. Use when analyzing cash generation, operating activities, investing activities, or financing activities." }, { "slug": "POLYGON_GET_STOCKS_CUSTOM_BARS", "name": "Get Stocks Custom Bars", "description": "Tool to retrieve aggregated historical OHLC and volume data for a stock over custom date ranges with configurable time windows. Use when you need aggregate bars for stock price analysis, backtesting, or charting." }, { "slug": "POLYGON_GET_STOCKS_DAILY_MARKET_SUMMARY", "name": "Get Stocks Daily Market Summary", "description": "Tool to retrieve daily OHLC, volume, and VWAP data for all U.S. stocks on a specified trading date. Use when you need to get grouped daily aggregate bars for all US stocks for a specific date." }, { "slug": "POLYGON_GET_STOCK_SPLITS_BY_TICKER", "name": "Get Stock Splits by Ticker", "description": "Tool to retrieve historical stock splits for a specific ticker symbol. Use when you need split history including ex-dates, payment dates, and split ratios for a particular stock." }, { "slug": "POLYGON_GET_TECHNICAL_INDICATOR_EMA", "name": "Get Exponential Moving Average (EMA) (Deprecated)", "description": "DEPRECATED: Use POLYGON_GET_EMA instead. Tool to fetch Exponential Moving Average (EMA) for a given stock ticker. Use when you need historical EMA data after confirming ticker, timespan, and window size." }, { "slug": "POLYGON_GET_TECHNICAL_INDICATOR_SMA", "name": "Get Simple Moving Average (SMA)", "description": "Tool to fetch Simple Moving Average (SMA) for a given stock ticker. Use when you need historical SMA data after confirming ticker, timespan, and window size." }, { "slug": "POLYGON_GET_TICKER_COMPANY_DETAILS", "name": "Get Ticker Company Details", "description": "Tool to retrieve detailed company information for a stock ticker. Use when you need company fundamentals like CEO, industry, sector, market cap, and headquarters information." }, { "slug": "POLYGON_GET_TICKER_DETAILS", "name": "Get Ticker Details", "description": "Tool to retrieve detailed information for a ticker. Use when you need an overview of a ticker including company info, market data, and identifiers." }, { "slug": "POLYGON_GET_TICKER_DETAILS_VX", "name": "Get Ticker Details (vX)", "description": "Tool to retrieve comprehensive details for a specific ticker symbol using Polygon's vX API. Use when you need detailed information about a company including identifiers, market data, and corporate details." }, { "slug": "POLYGON_GET_TICKER_EVENTS", "name": "Get Ticker Events", "description": "Tool to retrieve corporate events for a specific ticker. Use when you need the timeline of corporate actions for a given ticker." }, { "slug": "POLYGON_GET_TICKER_TYPES", "name": "Get Ticker Types", "description": "Tool to retrieve all ticker types supported by Polygon.io. Use after authenticating to explore ticker categories." }, { "slug": "POLYGON_GET_TREASURY_YIELDS", "name": "Get Treasury Yields", "description": "Tool to retrieve historical U.S. Treasury yield data for standard timeframes from 1-month to 30-year maturities. Use when analyzing interest rates, yield curves, or economic indicators. Data available daily back to 1962." }, { "slug": "POLYGON_GET_V1_META_CRYPTO_EXCHANGES", "name": "Get V1 Meta Crypto Exchanges", "description": "Tool to retrieve a list of cryptocurrency exchanges using the legacy v1 API. Use when you need the complete list of crypto exchanges supported." }, { "slug": "POLYGON_LAST_QUOTE_FOR_A_SYMBOL", "name": "Last Quote for a Symbol", "description": "Tool to retrieve the last quote tick for a given stock symbol. Use when you need the most recent bid/ask prices, sizes, and exchange information for a stock." }, { "slug": "POLYGON_LAST_TRADE_FOR_A_CURRENCY_PAIR", "name": "Last Trade for a Currency Pair", "description": "Tool to retrieve the last trade tick for a currency pair in the forex market. Use when you need the most recent trade price, exchange, and timestamp for a specific currency pair." }, { "slug": "POLYGON_LIST_FILING_FILES", "name": "List SEC Filing Files", "description": "Tool to retrieve files associated with an SEC filing. Use when you need to list all files (documents, exhibits, etc.) attached to a specific SEC filing by its filing ID." }, { "slug": "POLYGON_LIST_OPTIONS_CONTRACTS", "name": "List Options Contracts", "description": "Tool to list and filter options contracts by underlying ticker, type, expiration, strike, and more. Use when you need to enumerate an options chain or find specific contracts matching criteria." }, { "slug": "POLYGON_LIST_SEC_FILINGS", "name": "List SEC Filings", "description": "Tool to retrieve SEC filings from Polygon. Use when you need to query 10-K or 10-Q filings by company, date range, or other criteria." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "polygon_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Polygon API Key", "type": "string", "description": "Your Polygon.io API key, used to authorize every market data request. Sign in and copy it from Dashboard → API Keys: polygon.io/dashboard/keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "polygon_io", "name": "Polygon.io", "logo": "https://logos.composio.dev/api/polygon_io", "description": "Polygon.io provides real-time and historical market data APIs for stocks, options, forex, and cryptocurrencies, enabling developers to build financial applications with ease.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POLYGON_IO_GET_ALL_TICKERS", "name": "Get All Tickers", "description": "Tool to retrieve a comprehensive list of supported ticker symbols across all asset classes. Use when you need to list all tickers with details like symbol, name, market, and status." }, { "slug": "POLYGON_IO_GET_CONDITION_CODES", "name": "Get Condition Codes", "description": "Tool to retrieve a unified list of trade and quote condition codes and their definitions. Use when needing to decode condition identifiers after fetching market data." }, { "slug": "POLYGON_IO_GET_CRYPTO_EMA", "name": "Get Crypto EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for a crypto ticker. Use when you need trend analysis or moving average calculations for cryptocurrency pairs." }, { "slug": "POLYGON_IO_GET_CRYPTO_MACD", "name": "Get Crypto MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for a crypto ticker. Use when you need momentum analysis, trend identification, or trading signal generation for cryptocurrency pairs." }, { "slug": "POLYGON_IO_GET_CRYPTO_OPEN_CLOSE", "name": "Get Crypto Open/Close", "description": "Tool to get the open, close, high, low, and volume for a cryptocurrency pair on a specific date. Use when you need historical daily OHLC data for crypto pairs." }, { "slug": "POLYGON_IO_GET_CRYPTO_RSI", "name": "Get Crypto RSI", "description": "Tool to calculate the Relative Strength Index (RSI) for a cryptocurrency ticker. Use when you need to analyze momentum or identify overbought/oversold conditions for crypto assets." }, { "slug": "POLYGON_IO_GET_CRYPTO_SMA", "name": "Get Crypto SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for a cryptocurrency ticker. Use when you need trend analysis, support/resistance levels, or trading signal generation for crypto pairs." }, { "slug": "POLYGON_IO_GET_DAILY_OPEN_CLOSE", "name": "Get Daily Open/Close", "description": "Tool to get the daily open, close, after-hours, and pre-market prices for a stock on a specific date. Use when you need historical OHLC data for a specific trading day, including pre-market and after-hours information." }, { "slug": "POLYGON_IO_GET_DIVIDENDS", "name": "Get Dividends", "description": "Tool to retrieve a historical record of cash dividend distributions for a given ticker. Use when analyzing dividend payments by date, amount, and frequency." }, { "slug": "POLYGON_IO_GET_ECONOMY_INFLATION2", "name": "Get Economy Inflation Indicators (Enhanced)", "description": "Tool to retrieve key indicators of realized inflation including CPI and PCE price indexes with comprehensive date filtering. Use when analyzing inflation trends with specific date ranges, economic conditions, or historical price changes going back to 1947." }, { "slug": "POLYGON_IO_GET_EMA", "name": "Get Exponential Moving Average", "description": "Tool to retrieve the Exponential Moving Average for a stock ticker. Use when you need EMA values across a specific timespan with optional underlying data." }, { "slug": "POLYGON_IO_GET_FILING", "name": "Get SEC Filing", "description": "Tool to retrieve detailed information about a specific SEC filing by filing ID. Use when you need to access full filing details including accession number, filing type, dates, source URLs, and associated entities." }, { "slug": "POLYGON_IO_GET_FILING_FILE", "name": "Get SEC Filing File", "description": "Tool to download a specific file from an SEC filing. Use when you need to access individual documents from a company's SEC filings, such as 10-Q, 10-K, or other submission files. Returns the raw file content (HTML, XML, XBRL, etc.)." }, { "slug": "POLYGON_IO_GET_FOREX_EMA", "name": "Get Forex EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for a forex pair. Use when you need trend analysis or moving average calculations for currency pairs." }, { "slug": "POLYGON_IO_GET_FOREX_MACD", "name": "Get Forex MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for a forex pair. Use when you need momentum analysis, trend identification, or trading signal generation for currency pairs." }, { "slug": "POLYGON_IO_GET_FOREX_REAL_TIME_CURRENCY_CONVERSION", "name": "Get Forex Real-Time Currency Conversion", "description": "Tool to convert amounts between currency pairs using real-time forex rates. Use when you need to perform currency conversions with the latest market rates." }, { "slug": "POLYGON_IO_GET_FOREX_RSI", "name": "Get Forex RSI", "description": "Tool to calculate the Relative Strength Index (RSI) technical indicator for a forex pair. Use when you need momentum analysis or want to identify overbought/oversold conditions for currency pairs." }, { "slug": "POLYGON_IO_GET_FOREX_SMA", "name": "Get Forex SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for a forex pair. Use when you need trend analysis or moving average calculations for currency pairs." }, { "slug": "POLYGON_IO_GET_FUTURES_QUOTES", "name": "Get Futures Quotes", "description": "Tool to get real-time quote information for futures contracts with bid/ask prices, sizes, and timestamps. Use when you need to analyze current or historical quote data for futures trading decisions." }, { "slug": "POLYGON_IO_GET_GROUPED_DAILY", "name": "Get Grouped Daily Market Summary", "description": "Tool to retrieve daily OHLCV data for the entire market for a given date. Use when you need grouped daily aggregate bars for all tickers in a specific market (stocks, crypto, or fx) and locale." }, { "slug": "POLYGON_IO_GET_HISTORIC_FOREX_TICKS", "name": "Get Historic Forex Ticks", "description": "Tool to get historic ticks for a currency pair on a specific date. Use when you need historical forex tick-level data (ask/bid prices with timestamps) for a given day." }, { "slug": "POLYGON_IO_GET_INFLATION_EXPECTATIONS", "name": "Get Inflation Expectations", "description": "Tool to retrieve inflation expectations data from the Federal Reserve, including market-based rates and Cleveland Fed model estimates. Use when analyzing inflation forecasts across different time horizons (1, 5, 10, and 30 years)." }, { "slug": "POLYGON_IO_GET_IPO_DATA", "name": "Get IPO Data", "description": "Tool to retrieve comprehensive information on Initial Public Offerings (IPOs), including upcoming and historical events. Use when analyzing IPO listing data by date range, ticker, or identifier." }, { "slug": "POLYGON_IO_GET_LABOR_MARKET", "name": "Get Labor Market Data", "description": "Tool to retrieve labor market data including unemployment rate, labor force participation rate, average hourly earnings, and job openings. Use when analyzing employment trends, economic conditions, or workforce statistics." }, { "slug": "POLYGON_IO_GET_MACD", "name": "Get MACD", "description": "Tool to retrieve the Moving Average Convergence/Divergence (MACD) for a stock ticker. Use when you need momentum analysis or signal generation over a specified timeframe." }, { "slug": "POLYGON_IO_GET_MARKET_HOLIDAYS", "name": "Get Market Holidays", "description": "Tool to retrieve upcoming market holidays and their corresponding open/close times. Use when planning around market schedules before trading." }, { "slug": "POLYGON_IO_GET_MARKET_STATUS", "name": "Get Market Status", "description": "Tool to retrieve the current trading status across major exchanges and currency markets. Use for real-time monitoring, scheduling, or UI updates." }, { "slug": "POLYGON_IO_GET_NEWS", "name": "Get News", "description": "Tool to retrieve the most recent news articles for a specified ticker. Use when you need summaries, source details, and sentiment analysis for market news." }, { "slug": "POLYGON_IO_GET_OPTIONS_CONTRACT_OVERVIEW", "name": "Get Options Contract Overview", "description": "Tool to retrieve comprehensive details about a specific options contract including contract type, exercise style, expiration date, strike price, and underlying ticker. Use when you need specifications for options contract analysis or strategy development." }, { "slug": "POLYGON_IO_GET_OPTIONS_EMA", "name": "Get Options EMA", "description": "Tool to calculate Exponential Moving Average (EMA) technical indicator for an options ticker. Use when you need trend analysis or moving average calculations for options contracts." }, { "slug": "POLYGON_IO_GET_OPTIONS_MACD", "name": "Get Options MACD", "description": "Tool to calculate Moving Average Convergence/Divergence (MACD) technical indicator for an options ticker. Use when you need momentum analysis, trend identification, or trading signal generation for options contracts." }, { "slug": "POLYGON_IO_GET_OPTIONS_RSI", "name": "Get Options RSI", "description": "Tool to calculate Relative Strength Index (RSI) technical indicator for an options ticker. Use when you need momentum analysis or want to identify overbought/oversold conditions for options contracts." }, { "slug": "POLYGON_IO_GET_OPTIONS_SMA", "name": "Get Options SMA", "description": "Tool to calculate Simple Moving Average (SMA) technical indicator for an options ticker. Use when you need trend analysis or smoothed price data for options contracts." }, { "slug": "POLYGON_IO_GET_RELATED_COMPANIES", "name": "Get Related Companies", "description": "Tool to retrieve tickers related to a given ticker based on similar business or market characteristics. Use when you need to find companies similar to a specific ticker." }, { "slug": "POLYGON_IO_GET_RSI", "name": "Get RSI", "description": "Tool to retrieve the Relative Strength Index (RSI) for a stock ticker. Use after confirming ticker symbol and timespan to analyze momentum over a period." }, { "slug": "POLYGON_IO_GET_SMA", "name": "Get Simple Moving Average", "description": "Tool to retrieve the Simple Moving Average (SMA) for any ticker (stocks, forex, crypto). Use when you need SMA values over a specified timespan with optional underlying data." }, { "slug": "POLYGON_IO_GET_SPLITS", "name": "Get Splits", "description": "Tool to retrieve historical stock split events for a given ticker. Use after identifying the ticker to fetch split history including ratio, ex-date, and record dates." }, { "slug": "POLYGON_IO_GET_STOCKS_CUSTOM_BARS", "name": "Get Stocks Custom Bars", "description": "Tool to retrieve aggregated historical OHLC and volume data for a stock over custom date ranges with configurable time windows. Use when you need aggregate bars for stock price analysis, backtesting, or charting." }, { "slug": "POLYGON_IO_GET_STOCKS_DAILY_MARKET_SUMMARY", "name": "Get Stocks Daily Market Summary", "description": "Tool to retrieve daily OHLC, volume, and VWAP data for all U.S. stocks on a specified trading date. Use when you need to get grouped daily aggregate bars for all US stocks for a specific date." }, { "slug": "POLYGON_IO_GET_STOCKS_FILINGS_RISK_FACTORS", "name": "Get Stocks Filings Risk Factors", "description": "Tool to retrieve risk factors identified in companies' 10K filings. Use when analyzing company risks, regulatory disclosures, or compliance requirements." }, { "slug": "POLYGON_IO_GET_STOCKS_FILINGS_SECTIONS", "name": "Get Stocks Filings Sections", "description": "Tool to retrieve raw text content from specific sections of SEC filings (10-K, 10-Q, etc.). Use when you need detailed textual information from SEC documents like business descriptions or risk factors." }, { "slug": "POLYGON_IO_GET_STOCKS_FREE_FLOAT", "name": "Get Stocks Free Float", "description": "Tool to retrieve free float data for US-listed securities showing the most recent available number of shares available for public trading and the percentage of total shares outstanding. Use when analyzing stock liquidity, ownership structure, or available trading shares." }, { "slug": "POLYGON_IO_GET_STOCKS_FULL_MARKET_SNAPSHOT", "name": "Get Stocks Full Market Snapshot", "description": "Tool to retrieve a comprehensive snapshot of the entire U.S. stock market covering 10,000+ actively traded tickers. Use when you need current market-wide data including pricing, volume, and trade activity. Data is cleared daily at 3:30 AM EST and repopulates as exchanges report new data starting around 4:00 AM EST." }, { "slug": "POLYGON_IO_GET_STOCKS_INCOME_STATEMENTS", "name": "Get Stocks Income Statements", "description": "Tool to retrieve comprehensive income statement data including revenue, expenses, and net income from company SEC filings. Use when analyzing profitability, revenue trends, or operational performance." }, { "slug": "POLYGON_IO_GET_STOCKS_PREVIOUS_DAY_BAR", "name": "Get Stocks Previous Day Bar", "description": "Tool to retrieve the previous trading day's open, high, low, close (OHLC), and volume data for a stock ticker. Use when you need the most recent completed trading day's aggregate data." }, { "slug": "POLYGON_IO_GET_STOCKS_RISK_FACTOR_TAXONOMIES", "name": "Get Stocks Risk Factor Taxonomies", "description": "Tool to retrieve the complete list of risk factor classifications used in the risk factors endpoint. Use when you need to understand available risk categories or filter by specific risk classifications." }, { "slug": "POLYGON_IO_GET_STOCKS_V1_DIVIDENDS", "name": "Get Stocks V1 Dividends", "description": "Tool to retrieve historical dividend payment records for US stocks with split-adjusted amounts and historical adjustment factors. Use when analyzing dividend history with price normalization data." }, { "slug": "POLYGON_IO_GET_STOCKS_V1_SHORT_INTEREST", "name": "Get Short Interest Data", "description": "Tool to retrieve comprehensive FINRA short interest data that tracks the short selling metrics for securities on a specific settlement date. Use when analyzing short positions, days to cover, and average daily volume for stocks." }, { "slug": "POLYGON_IO_GET_STOCKS_V1_SHORT_VOLUME", "name": "Get Short Volume Data", "description": "Tool to retrieve short selling volume data for stock tickers. Use when analyzing short sale activity including total trading volume, short sale details, and breakdown by different trading platforms." }, { "slug": "POLYGON_IO_GET_STOCKS_V1_SPLITS", "name": "Get Stocks V1 Splits", "description": "Tool to retrieve historical stock split and reverse split events for US equities with historical adjustment factors for price normalization. Use when analyzing stock split history including forward splits, reverse splits, and stock dividends." }, { "slug": "POLYGON_IO_GET_TICKER_EVENTS", "name": "Get Ticker Events", "description": "Tool to retrieve timeline of ticker change events such as symbol renaming or rebranding. Use when tracking ticker history to maintain continuity in records and analyses. This is an experimental endpoint." }, { "slug": "POLYGON_IO_GET_TICKER_OVERVIEW", "name": "Get Ticker Overview", "description": "Tool to retrieve comprehensive details for a single ticker, including identifiers, industry, and branding assets. Use after confirming the exact ticker symbol." }, { "slug": "POLYGON_IO_GET_TICKER_TYPES", "name": "Get Ticker Types", "description": "Tool to retrieve a list of all ticker types supported by Polygon.io. Use when you need to enumerate valid ticker types for filtering or validation." }, { "slug": "POLYGON_IO_GET_TREASURY_YIELDS", "name": "Get Treasury Yields", "description": "Tool to retrieve daily market yields for US Treasury securities across standard maturities (1-month to 30-year). Use when analyzing interest rate trends, yield curve analysis, or economic indicators." }, { "slug": "POLYGON_IO_LIST_EXCHANGES", "name": "List Exchanges", "description": "Tool to retrieve all exchanges supported by Polygon.io with details about asset class and locale. Use when you need to list available exchanges for filtering market data or understanding trading venues." }, { "slug": "POLYGON_IO_LIST_FILING_FILES", "name": "List Filing Files", "description": "Tool to retrieve files associated with an SEC filing by filing ID. Use when you need to list all documents, exhibits, and data files included in a specific SEC filing." }, { "slug": "POLYGON_IO_LIST_FILINGS", "name": "List SEC Filings", "description": "Tool to retrieve SEC filings from the Polygon.io reference data API. Use when you need to search for 10-K, 10-Q, and other SEC filings by date, company, or filing type." }, { "slug": "POLYGON_IO_LIST_OPTIONS_CONTRACTS", "name": "List Options Contracts", "description": "Tool to list and filter options contracts by underlying ticker, type, expiration, strike, and more. Use when you need to enumerate an options chain or find specific contracts matching criteria." }, { "slug": "POLYGON_IO_POLYGON_LAST_QUOTE_FOR_A_SYMBOL", "name": "Last Quote for a Symbol", "description": "Tool to retrieve the last quote tick for a given stock symbol. Use when you need the most recent bid/ask prices, sizes, and exchange information for a stock." }, { "slug": "POLYGON_IO_POLYGON_LAST_TRADE_FOR_A_CURRENCY_PAIR", "name": "Last Trade for a Currency Pair", "description": "Tool to retrieve the last trade tick for a currency pair in the forex market. Use when you need the most recent trade price, exchange, and timestamp for a specific currency pair." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "polygon_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Polygon.io API Key", "type": "string", "description": "Your Polygon.io API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "polymarket", "name": "Polymarket US", "logo": "https://logos.composio.dev/api/polymarket", "description": "Polymarket US only. This toolkit connects to the CFTC-compliant Polymarket US product for United States users, not the global Polymarket app. API credentials are created at https://polymarket.us/developers after Polymarket US account verification.", "category": "commerce", "authSchemes": [ "API_KEY" ], "toolCount": 44, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POLYMARKET_CANCEL_ALL_OPEN_ORDERS", "name": "Cancel All Open Orders", "description": "Cancel all authenticated Polymarket US open orders, optionally scoped to specific market slugs. This is broad and destructive for remaining open quantities; omit slugs only when the user clearly asks to cancel every open order. Already executed fills and positions remain, so verify open orders afterward when confirmation matters." }, { "slug": "POLYMARKET_CANCEL_MULTIPLE_ORDERS", "name": "Cancel Multiple Orders", "description": "Cancel up to 20 Polymarket US open orders in one request. Use only when the user explicitly asks to cancel the batch. Cancellation removes remaining open quantity but does not undo fills or positions, and batch responses can require per-order follow-up reads to verify final state." }, { "slug": "POLYMARKET_CANCEL_ORDER", "name": "Cancel Order", "description": "Cancel one Polymarket US open order by exchange-assigned order ID. This is a destructive mutation of the remaining open quantity and should only be used when the user explicitly asks to cancel. Already executed fills and resulting positions remain; confirm order state afterward when precision matters." }, { "slug": "POLYMARKET_CLOSE_POSITION_ORDER", "name": "Close Position Order", "description": "Create a live Polymarket US order intended to close an existing position in one market. Use only when the user explicitly asks to close that position. This can trade immediately, leave residual exposure if not fully filled, or be rejected for market, liquidity, risk, or funding checks; inspect the returned order state before confirming the position is closed." }, { "slug": "POLYMARKET_CREATE_MULTIPLE_ORDERS", "name": "Create Multiple Orders", "description": "Submit up to 20 live Polymarket US orders in one request. Use only after the user explicitly asks to place the batch and, when practical, after previewing the same orders. This mutating action can consume buying power and create exposure across multiple markets; read per-order statuses because a batch can contain accepted, filled, and rejected orders." }, { "slug": "POLYMARKET_CREATE_ORDER", "name": "Create Order", "description": "Submit one live Polymarket US order. Use Preview Order first unless the user has already reviewed the exact order details. This mutating action can reserve buying power, fill immediately, or create real market exposure; the API may also reject the order for funding, price, market, or risk checks, so inspect the returned status before confirming placement." }, { "slug": "POLYMARKET_GET_ACCOUNT_BALANCES", "name": "Get Account Balances", "description": "Get the authenticated user's Polymarket US account balances. Use this read-only action to inspect buying power, balances, pending credits, and funds reserved by open orders before previewing or placing orders. Requires Polymarket US signed authentication and returns only the signed-in account's balances." }, { "slug": "POLYMARKET_GET_ACTIVITIES", "name": "Get Activities", "description": "Get authenticated Polymarket US portfolio activities such as trades, resolutions, deposits, withdrawals, referral bonuses, and transfers. Requires Polymarket US signed authentication and returns activity only for that account. Use type filters and sortOrder carefully when paging through history." }, { "slug": "POLYMARKET_GET_EVENT_BY_ID", "name": "Get Event By ID", "description": "Get one Polymarket US event by numeric ID from the public gateway API. Use this after discovery when the caller already has the integer event ID and needs full event details or associated market references. Do not pass slugs here; use Get Event By Slug for slugs. This read-only action does not require API key authentication." }, { "slug": "POLYMARKET_GET_EVENT_BY_SLUG", "name": "Get Event By Slug", "description": "Get one Polymarket US event by slug from the public gateway API. Use this after search/list discovery or when parsing a Polymarket event URL. Do not pass numeric IDs here; use Get Event By ID for integer IDs. This read-only action does not require API key authentication." }, { "slug": "POLYMARKET_GET_LEAGUE_BY_SLUG", "name": "Get League By Slug", "description": "Get a current Polymarket US v2 league by slug. Use List Leagues or Get Sport By Slug first if the slug is unknown. This is useful for confirming league metadata before listing events for a league such as \"nba\" or \"nfl\". This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKET_BBO", "name": "Get Market BBO", "description": "Get the best bid and offer for one Polymarket US market by slug. Use this lightweight top-of-book read before quoting, previewing, or explaining an order. If the agent needs depth or slippage context, use Get Market Book instead. The response is market data, not an order placement or order preview. This endpoint requires the market slug, not the numeric market ID, and does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKET_BOOK", "name": "Get Market Book", "description": "Get the public order book for one Polymarket US market by slug. Use this before quoting, previewing, or explaining an order when the agent needs depth beyond the top of book. The response is market data, not an order placement or order preview. This endpoint requires the market slug, not the numeric market ID, and does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKET_BY_ID", "name": "Get Market By ID", "description": "Get one Polymarket US market by numeric ID from the public gateway API. Use this after market discovery when the caller already has the integer market ID and needs full market metadata. Do not pass slugs here; use Get Market By Slug for slugs. For current pricing before an order, follow with Get Market BBO or Get Market Book. This read-only action does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKET_BY_SLUG", "name": "Get Market By Slug", "description": "Get one Polymarket US market by slug from the public gateway API. Use this after search/list discovery or when parsing a Polymarket market URL. Do not pass numeric IDs here; use Get Market By ID for integer IDs. For current pricing before quoting, previewing, or placing an order, follow with Get Market BBO or Get Market Book. This read-only action does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKET_SETTLEMENT", "name": "Get Market Settlement", "description": "Get settlement information for one Polymarket US market by slug. Use this only for resolved, closed, or historical market workflows where the caller needs public resolution or settlement details. It is not useful for discovering current markets or preparing trades on active markets. This endpoint requires the market slug, not the numeric market ID, and does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKETS_FOR_SUBJECT", "name": "Get Markets For Subject", "description": "Discover Polymarket US markets associated with a subject ID. Use this action after List Subjects or Get Subject By ID identifies the team, person, candidate, player, nominee, or other entity the user cares about. This is a market discovery tool, not a subject metadata lookup. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_MARKETS_FOR_SUBJECT_BY_SLUG", "name": "Get Markets For Subject By Slug", "description": "Discover Polymarket US markets associated with a subject slug. Use this action after List Subjects, Get Subject By Slug, or a Polymarket URL identifies the team, person, candidate, player, nominee, or other entity the user cares about. This is a market discovery tool, not a subject metadata lookup. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_OPEN_ORDERS", "name": "Get Open Orders", "description": "Get all open orders for the authenticated Polymarket US user. Use this read-only action before modifying or canceling orders, or to inspect live order exposure. Requires signed authentication, supports optional market slug filters, and does not place, modify, or cancel orders." }, { "slug": "POLYMARKET_GET_ORDER", "name": "Get Order", "description": "Get an authenticated user's Polymarket US order by exchange-assigned order ID. Requires signed authentication and returns order details available to that account. Use this read-only action to inspect order state after creating, modifying, or canceling an order." }, { "slug": "POLYMARKET_GET_SERIES_BY_ID", "name": "Get Series By ID", "description": "Get a Polymarket US series by numeric ID. Series are recurring or grouped event collections. Use this action when an agent has a series ID and needs the slug, active status, recurrence, or other public metadata before fetching related events or markets. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_SPORT_BY_SLUG", "name": "Get Sport By Slug", "description": "Get a current Polymarket US v2 sport by slug. Use List Sports first if the slug is unknown. The response includes the sport metadata and leagues attached to that sport, which helps agents move from broad sport browsing to league-specific event discovery. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_SUBJECT_BY_ID", "name": "Get Subject By ID", "description": "Get a Polymarket US subject entity by numeric ID. Subjects represent teams, people, candidates, players, nominees, and other named entities attached to markets. Use this action when an agent already has a subject ID and needs its slug, type, or display metadata. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_SUBJECT_BY_SLUG", "name": "Get Subject By Slug", "description": "Get a Polymarket US subject entity by slug. Subjects represent teams, people, candidates, players, nominees, and other named entities attached to markets. Use this action when an agent has a subject slug from a URL or search result and needs the subject ID or display metadata. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_TAG_BY_ID", "name": "Get Tag By ID", "description": "Get a Polymarket US topic, sport, or league tag by numeric ID. Use this action after List Tags or a market/event response returns a tag ID and the agent needs the tag label, slug, hierarchy, or sport/league metadata for filtering or display. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_TAG_BY_SLUG", "name": "Get Tag By Slug", "description": "Get a Polymarket US topic, sport, or league tag by slug. Use this action when an agent has a URL-safe tag slug, such as nba or sports, and needs the tag ID, label, hierarchy, or sport/league metadata for filtering or display. This action does not require API key authentication." }, { "slug": "POLYMARKET_GET_USER_POSITIONS", "name": "Get User Positions", "description": "Get the authenticated user's Polymarket US trading positions across all markets or filtered by a specific market slug. Requires Polymarket US signed authentication and only returns positions for that account. Use this read-only action to verify API credentials and inspect current exposure." }, { "slug": "POLYMARKET_LIST_EVENTS", "name": "List Events", "description": "Discover Polymarket US events from the public gateway API. Use this action before event-specific lookups when starting from a topic, category, tag, or broad filter set. Practical guidance for agents: - For currently relevant events, start with active=true, closed=false, and archived=false, then paginate with limit and offset. - Pass numeric event IDs in id and event slugs in slug; do not mix the two identifier types. - Events may contain related markets, but use market-specific actions for market details, order books, BBO, settlement, or order preparation. - This read-only discovery action does not require Polymarket API key auth." }, { "slug": "POLYMARKET_LIST_EVENTS_FOR_LEAGUE", "name": "List Events For League", "description": "List Polymarket US events for a current v2 league slug such as \"nba\" or \"nfl\". Use List Leagues or Get Sport By Slug first if the slug is unknown. Supports limit/offset pagination, excludeEventId for de-duplicating already-seen events, and optional type/section filters. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_EVENTS_FOR_SERIES", "name": "List Events For Series", "description": "List Polymarket US sports events for a legacy v1 series ID. Prefer List Events For Sport or List Events For League for current v2 browsing. Use this action when an agent already has a series ID from a legacy sports workflow and needs related events. Supports limit/offset pagination, excludeEventId for de-duplicating already-seen events, and optional type/section filters. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_EVENTS_FOR_SPORT", "name": "List Events For Sport", "description": "List Polymarket US events for a current v2 sport slug such as \"football\" or \"basketball\". Use List Sports first if the slug is unknown. Supports limit/offset pagination, excludeEventId for de-duplicating already-seen events, and optional type/section filters. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_FEATURED_TAGS", "name": "List Featured Tags", "description": "List featured Polymarket US tag sections from the public gateway API. Featured tags are curated browse sections, often with subtags, intended for discovery UI and recommendation flows rather than exhaustive filtering. Use List Tags when the agent needs the full searchable tag set. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_LEAGUES", "name": "List Leagues", "description": "List current Polymarket US sports leagues from the v2 public gateway API. This is the preferred action for discovering league slugs such as \"nfl\" or \"nba\" before calling Get League By Slug or List Events For League. Supports limit/offset pagination with a maximum page size of 50. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_MARKETS", "name": "List Markets", "description": "Discover Polymarket US markets from the public gateway API. Use this action when an agent needs candidate market slugs or IDs before reading market details, order books, best bid/offer, or preparing orders. Practical guidance for agents: - For currently tradable candidates, start with active=true, closed=false, and archived=false, then paginate with limit and offset. - Pass numeric market IDs in id and market slugs in slug; do not mix the two identifier types. - Discovery results are not a substitute for live pricing. Before quoting, previewing, or placing an order, read Get Market BBO for top-of-book or Get Market Book for depth. - This read-only discovery action does not require Polymarket API key auth." }, { "slug": "POLYMARKET_LIST_SERIES", "name": "List Series", "description": "List Polymarket US series from the public gateway API. Series are recurring or grouped event collections, such as seasonal or repeated sports event groupings. Use this action to discover a series ID or slug before fetching related events or markets with series-aware tools. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_SPORTS", "name": "List Sports", "description": "List Polymarket US sports from the current v2 public gateway API. Use this for sports browsing and for discovering sport slugs such as \"football\" or \"basketball\" before calling Get Sport By Slug or List Events For Sport. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_SPORTS_TEAMS", "name": "List Sports Teams", "description": "List Polymarket US sports teams from the legacy v1 public gateway API. Use this action when an agent needs team metadata for sports events or needs to filter teams by league, name, abbreviation, or Polymarket team ID. The Pydantic filter fields named filters_* are translated to the dotted API query names filters.league, filters.name, filters.abbreviation, and filters.id. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_SPORTS_TEAMS_FOR_PROVIDER", "name": "List Sports Teams For Provider", "description": "List Polymarket US legacy v1 sports team mappings for a data provider. Use this action when an agent needs provider-specific team IDs for SportsDataIO or Sportradar integrations. Pass provider as the enum value \"PROVIDER_SPORTSDATAIO\" or \"PROVIDER_SPORTRADAR\"; optionally narrow by Polymarket teamIds and league slug. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_SUBJECTS", "name": "List Subjects", "description": "List Polymarket US subject entities from the public gateway API. Subjects are teams, people, candidates, players, nominees, or other named entities that markets can be about. Use this action to discover the subject ID or slug before calling the subject market lookup tools. This action does not require API key authentication." }, { "slug": "POLYMARKET_LIST_TAGS", "name": "List Tags", "description": "List ranked Polymarket US tags from the public gateway API. Tags are topic, sport, league, and browse filters that agents can use to narrow event or market discovery before calling event and market listing tools. Use parentSlug=\"sports\" to discover sports and league tags. This action does not require API key authentication." }, { "slug": "POLYMARKET_MODIFY_MULTIPLE_ORDERS", "name": "Modify Multiple Orders", "description": "Modify up to 20 Polymarket US open orders in one request. Use only when the user explicitly asks to change the batch. These live cancel-replace style mutations can change funding requirements, exposure, maker-only behavior, queue priority, and fill risk; the response can be partial, so confirm per-order state after modification when accuracy matters." }, { "slug": "POLYMARKET_MODIFY_ORDER", "name": "Modify Order", "description": "Modify one existing Polymarket US open order. This is a live cancel-replace style mutation and should only be used when the user explicitly asks to change an order. It can alter exposure, required funds, queue priority, and fill behavior; verify the updated order state after the request when confirmation matters." }, { "slug": "POLYMARKET_PREVIEW_ORDER", "name": "Preview Order", "description": "Preview a Polymarket US order without submitting it to the market. Use this signed, read-only action before live order creation to validate parameters and inspect the calculated order response. It requires Polymarket US signed authentication but does not create, modify, cancel, or reserve funds for an order." }, { "slug": "POLYMARKET_SEARCH_MARKETS_AND_EVENTS", "name": "Search Markets And Events", "description": "Search public Polymarket US markets and events for discovery. Use this for natural-language discovery when an agent needs candidate market or event slugs/IDs before calling specific market/event endpoints. Search results should not be treated as live pricing or trading readiness: after selecting a market, read the market details and then Get Market BBO or Get Market Book before quoting, previewing, or placing an order. Use page and limit to paginate. This read-only action does not require API key authentication." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "polymarket_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "secret_key", "displayName": "Secret Key", "type": "string", "description": "Ed25519 secret key for Polymarket US only. Get it from https://polymarket.us/developers after signing in to a verified Polymarket US account. It is shown once when creating an API key; save it before leaving the page. This key signs each request locally and is stored encrypted by Composio.", "required": true, "default": null }, { "name": "key_id", "displayName": "Key ID", "type": "string", "description": "Public key ID for the same Polymarket US API key as the Secret Key. Get it from https://polymarket.us/developers; it is shown next to the Secret Key when the API key is created. This is the X-PM-Access-Key value and is not a secret.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "polymer_co", "name": "Polymer.co", "logo": "https://logos.composio.dev/api/polymer_co", "description": "Polymer gives you a beautiful site to display your job openings and powerful applicant tracking software for candidate relationship management.", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POLYMER_CO_GET_ALL_JOBS", "name": "Get All Jobs", "description": "Tool to retrieve all jobs available for a specified organization. Use when you need to list or browse available job openings for a given organization by its slug identifier." }, { "slug": "POLYMER_CO_GET_JOB", "name": "Get Job", "description": "Tool to retrieve detailed information about a specific job posting. Use when you need to fetch comprehensive job details including title, description, location, and application requirements." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "polymer_co_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization Slug", "type": "string", "description": "Your organization slug is ABCD if your Job Board URL is https://jobs.polymer.co/ABCD. Find it in Job board navigation settings at https://app.polymer.co/hire/settings/jobboard/navigation", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "poof", "name": "Poof", "logo": "https://logos.composio.dev/api/poof", "description": "Empowering millions of digital businesses & creators with payments from crypto to fiat", "category": "payment processing", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POOF_CHECK_BALANCE", "name": "Check Balance", "description": "Tool to check the balance of a cryptocurrency wallet. Use when you need to retrieve the current balance for a specified blockchain wallet address." }, { "slug": "POOF_CREATE_CHECKOUT", "name": "Create Checkout Session", "description": "Tool to create a checkout session for fiat payments. Use when you need to generate a payment link for customers to complete their purchase through the Poof payment infrastructure." }, { "slug": "POOF_CREATE_DEPOSIT_ADDRESS", "name": "Create Deposit Address", "description": "Tool to create a deposit address for receiving cryptocurrency payments. Generates a unique blockchain address to accept incoming crypto deposits. Use when you need to create a payment address for a customer to send cryptocurrency to." }, { "slug": "POOF_CREATE_FIAT_CHARGE", "name": "Create Fiat Charge", "description": "Tool to create a fiat currency charge through Poof's payment gateway integration. Use when initiating a one-time fiat payment collection via PayPal, Stripe, Square, or other supported gateways." }, { "slug": "POOF_CREATE_FIAT_INVOICE", "name": "Create Fiat Invoice", "description": "Create a fiat currency invoice for payment collection. Generates an invoice for collecting payments in traditional currencies via payment processors like PayPal, Stripe, Square, Cash App, etc. Returns a checkout URL for customer payment." }, { "slug": "POOF_CREATE_PAYMENT_LINK", "name": "Create Payment Link", "description": "Tool to create a payment link (invoice) for cryptocurrency payments. Use when you need to generate a shareable payment URL for collecting crypto payments from customers." }, { "slug": "POOF_CREATE_WEBHOOK", "name": "Create Poof Webhook", "description": "Tool to create a webhook subscription for receiving payment event notifications. Use when you need to set up real-time notifications for transaction status changes and other payment events." }, { "slug": "POOF_FETCH_GAS_PRICE", "name": "Fetch Gas Price", "description": "Tool to fetch current gas prices for blockchain transactions. Returns gas price estimates for Ethereum, Avalanche, Polygon, and other supported EVM chains across different priority levels (slow, standard, fast, instant)." }, { "slug": "POOF_FETCH_PRICE", "name": "Fetch Cryptocurrency Price", "description": "Tool to fetch current cryptocurrency prices for supported tokens. Use when you need real-time price data for cryptocurrencies and tokens." }, { "slug": "POOF_FETCH_SMART_CONTRACTS", "name": "Fetch Smart Contracts", "description": "Tool to fetch all supported ERC-20 smart contracts across Ethereum, Avalanche, and Polygon networks. Use when you need to retrieve available token contracts and their details for blockchain operations." }, { "slug": "POOF_SEND_PAYOUT", "name": "Send Cryptocurrency Payout", "description": "Tool to send a cryptocurrency payout transaction from your wallet to an external address. Use when you need to transfer crypto on supported blockchains." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "poof_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and manage your API Keys from the Developers settings at https://www.poof.io/developers", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "poptin", "name": "Poptin", "logo": "https://logos.composio.dev/api/poptin", "description": "Poptin is a conversion optimization toolkit that enables users to create engaging pop-ups and forms to convert website visitors into subscribers, leads, and customers.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "poptin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Poptin API Key", "type": "string", "description": "Your Poptin API key, obtainable from your Poptin dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "postalytics", "name": "Postalytics", "logo": "https://logos.composio.dev/api/postalytics", "description": "Direct Mail Automation software in the cloud with deep integration to CRM and workflows, making direct mail look, act and feel like a digital marketing channel", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POSTALYTICS_ADD_ACCOUNT", "name": "Add Account", "description": "Tool to create a new sub-account in the Postalytics system. Use when you need to create a new account with a unique ID associated with the requester's user ID as parent. The response includes the API key and user ID for the new account, which should be stored for future API calls." }, { "slug": "POSTALYTICS_ADD_CONTACT", "name": "Add Contact", "description": "Tool to add a contact to a specified contact list with their information. Use when you need to create a new contact or update an existing one on a contact list." }, { "slug": "POSTALYTICS_CREATE_NEW_CAMPAIGN", "name": "Create New Campaign", "description": "Tool to create a new direct mail campaign in Postalytics. Use when you need to start a new campaign with specified sender details and template. Important: A template must be created and proofed before creating the campaign." }, { "slug": "POSTALYTICS_CREATE_SUPPRESSION_LIST", "name": "Create Suppression List", "description": "Tool to create a new suppression list that can be used in campaigns to suppress contacts from being sent mail. Use when you need to create an empty suppression list. Note that contacts must be added separately using the SuppressionListContact API after the list is created." }, { "slug": "POSTALYTICS_CREATE_SUPPRESSION_LIST_CONTACT", "name": "Create Suppression List Contact", "description": "Tool to create a new suppression contact on a specified suppression list. Use when you need to add a contact to a suppression list to prevent them from receiving mailings." }, { "slug": "POSTALYTICS_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template with full HTML for postcard or letter. Use when you need to create a template by providing complete HTML markup or image URLs for front/back. The template can be used for various mail types including postcards, letters, and bifolds." }, { "slug": "POSTALYTICS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook to receive campaign event notifications from Postalytics. Use when you need to set up a webhook endpoint that will be notified about campaign events like sent, delivered, opened, or clicked." }, { "slug": "POSTALYTICS_DELETE_ACCOUNT", "name": "Delete Account", "description": "Tool to delete a Postalytics account and all associated campaigns, templates, and lists. Use when you need to permanently remove a sub account or sub user account. Cannot delete parent accounts." }, { "slug": "POSTALYTICS_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a campaign from the system. Use when you need to remove a campaign that is no longer needed." }, { "slug": "POSTALYTICS_DELETE_SUPPRESSION_LIST", "name": "Delete Suppression List", "description": "Tool to delete a specified suppression list. Use when you need to remove a suppression list that is no longer needed." }, { "slug": "POSTALYTICS_DELETE_SUPPRESSION_LIST_CONTACT", "name": "Delete Suppression List Contact", "description": "Tool to delete a specific contact from a suppression list. Use when you need to remove a contact from a suppression list in Postalytics." }, { "slug": "POSTALYTICS_GET_ALL_CONTACT_LISTS", "name": "Get All Contact Lists", "description": "Tool to retrieve all contact lists for an account. Use when you need to get a complete list of contact lists including their IDs, names, item counts, and creation dates." }, { "slug": "POSTALYTICS_GET_ALL_CONTACTS_ON_A_LIST", "name": "Get All Contacts on a List", "description": "Tool to retrieve all contacts from a specified contact list with pagination support. Use when you need to get contacts from a list, with optional pagination using start offset and limit parameters." }, { "slug": "POSTALYTICS_GET_ALL_DRIP_CAMPAIGNS", "name": "Get All Drip Campaigns", "description": "Tool to retrieve all triggered drip campaign names and endpoint IDs in the account. Use when you need to list all available drip campaigns for the authenticated user." }, { "slug": "POSTALYTICS_GET_ALL_FLOWS", "name": "Get All Flows", "description": "Tool to retrieve all flows for the requester's account. Use when you need to list or browse available flows." }, { "slug": "POSTALYTICS_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to retrieve all webhooks configured for the authenticated account. Use when you need to view webhook configurations for campaigns." }, { "slug": "POSTALYTICS_GET_INTEGRATIONS", "name": "Get Integrations", "description": "Tool to retrieve all Connect integrations configured for the authenticated user's account. Use when you need to view CRM or data source integrations." }, { "slug": "POSTALYTICS_GET_MY_ACCOUNT", "name": "Get My Account", "description": "Tool to retrieve basic account information for the authenticated user. Use when you need to get account details such as contact information, address, or API key." }, { "slug": "POSTALYTICS_GET_SUPPRESSION_LIST", "name": "Get Suppression List", "description": "Tool to get the details of a suppression list based on the id supplied. Use when you need to retrieve information about a specific suppression list." }, { "slug": "POSTALYTICS_GET_SUPPRESSION_LIST_CONTACT", "name": "Get Suppression List Contact", "description": "Tool to retrieve a specific contact from a suppression list. Use when you need to get details about a contact on a specific suppression list by their list ID and contact ID." }, { "slug": "POSTALYTICS_GET_SUPPRESSION_LIST_CONTACTS", "name": "Get Suppression List Contacts", "description": "Tool to get all contacts on a specified suppression list. Use when you need to retrieve contacts that are suppressed for a particular list." }, { "slug": "POSTALYTICS_GET_SUPPRESSION_LISTS", "name": "Get Suppression Lists", "description": "Tool to retrieve all suppression lists for the authenticated user. Use when you need to view or manage suppression lists. Returns all lists or a specific list when ID is provided." }, { "slug": "POSTALYTICS_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update an existing account in the Postalytics system. Use when you need to modify account information such as contact details, address, or credentials for an existing account." }, { "slug": "POSTALYTICS_UPDATE_SUPPRESSION_LIST_CONTACT", "name": "Update Suppression List Contact", "description": "Tool to update a suppression contact on the specified suppression list. Use when you need to modify contact information for a specific contact on a suppression list." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "postalytics_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API Key, navigate to your Postalytics account and sign in. Click the dropdown with your Email on the top right, then go to Profile > Connect > API Key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "postgrid", "name": "Postgrid", "logo": "https://logos.composio.dev/api/postgrid", "description": "PostGrid provides APIs for automating direct mail and address verification services, enabling businesses to send letters, postcards, and checks, as well as verify and standardize addresses in real-time.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 60, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POSTGRID_CANCEL_BOX", "name": "Cancel Box", "description": "Tool to cancel a box order by its ID. Use when you need to cancel a pending box shipment." }, { "slug": "POSTGRID_CANCEL_CHEQUE", "name": "Cancel Cheque", "description": "Tool to cancel a cheque order by its ID. Only works when the cheque has 'ready' status. Use when you need to cancel a pending cheque before it is mailed." }, { "slug": "POSTGRID_CANCEL_CHEQUE_WITH_NOTE", "name": "Cancel Cheque with Note", "description": "Tool to cancel a cheque order with a cancellation note. Use when you need to cancel a cheque and provide a reason for the cancellation." }, { "slug": "POSTGRID_CANCEL_POSTCARD", "name": "Cancel Postcard", "description": "Tool to cancel a postcard order. Use when you need to cancel a postcard that has status 'ready'." }, { "slug": "POSTGRID_CANCEL_POSTCARD_WITH_NOTE", "name": "Cancel Postcard With Note", "description": "Tool to cancel a postcard order with an optional cancellation note. Use when you need to cancel a postcard that is in 'ready' status. Once cancelled, the status changes to 'cancelled' and the response includes cancellation details." }, { "slug": "POSTGRID_CANCEL_RETURN_ENVELOPE_ORDER", "name": "Cancel Return Envelope Order", "description": "Tool to cancel a return envelope order. Use when you need to cancel a pending return envelope order using the return envelope ID and order ID." }, { "slug": "POSTGRID_CREATE_BANK_ACCOUNT", "name": "CREATE_BANK_ACCOUNT", "description": "Tool to create a new bank account for print & mail service." }, { "slug": "POSTGRID_CREATE_BOX", "name": "Create Box", "description": "Tool to create a box mailing order for letters with plastic cards or cheques. Use when you need to send multiple cheques in a secure box." }, { "slug": "POSTGRID_CREATE_CHEQUE", "name": "Create Cheque", "description": "Tool to create a cheque order for physical cheque mailing. Use when you need to send a payment via printed cheque. Requires a valid bank account ID and recipient contact details." }, { "slug": "POSTGRID_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in PostGrid. Use after collecting contact's name, address, and optional metadata." }, { "slug": "POSTGRID_CREATE_LETTER", "name": "Create Letter", "description": "Tool to create and send a letter via PostGrid. Use when recipient, sender, and content details are ready." }, { "slug": "POSTGRID_CREATE_POSTCARD", "name": "Create Postcard", "description": "Tool to create and send a postcard via PostGrid. Use when recipient, sender, and content (HTML, template, or PDF) are ready." }, { "slug": "POSTGRID_CREATE_RETURN_ENVELOPE", "name": "Create Return Envelope", "description": "Tool to create a return envelope for mail recipients to respond. Use when you need to include a prepaid return envelope for recipients to send back responses." }, { "slug": "POSTGRID_CREATE_RETURN_ENVELOPE_ORDER", "name": "Create Return Envelope Order", "description": "Tool to create a batch order of return envelopes to be printed and delivered. Use when you need to order return envelopes in bulk (minimum 5000 units)." }, { "slug": "POSTGRID_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new mail template in PostGrid. Use when you need to define reusable HTML content with dynamic placeholders. Use after confirming required template details." }, { "slug": "POSTGRID_CREATE_TEMPLATE_EDITOR_SESSION", "name": "Create Template Editor Session", "description": "Tool to create a template editor session for interactive template editing. Use when you need to generate an embeddable URL for editing a template. The session URL allows users to modify template HTML content in a visual editor." }, { "slug": "POSTGRID_CREATE_TRACKER", "name": "Create Tracker", "description": "Tool to create a tracker for monitoring mail delivery status via URL tracking. Use when you need to track recipient engagement with personalized URLs." }, { "slug": "POSTGRID_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook to receive order event notifications. Use after configuring your endpoint to handle webhook payloads." }, { "slug": "POSTGRID_DELETE_BANK_ACCOUNT", "name": "Delete Bank Account", "description": "Tool to delete a bank account by its ID. Use when you need to remove a bank account after confirming its identifier." }, { "slug": "POSTGRID_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by its ID. Use when you need to remove obsolete contacts after confirming their identifier." }, { "slug": "POSTGRID_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template by its ID. Use when you need to remove an existing template after confirming its identifier." }, { "slug": "POSTGRID_DELETE_TEMPLATE_EDITOR_SESSION", "name": "Delete Template Editor Session", "description": "Tool to delete a template editor session by its ID. Use when you need to remove an existing template editor session." }, { "slug": "POSTGRID_DELETE_TRACKER", "name": "Delete Tracker", "description": "Tool to delete a tracker by its ID. Use when you need to remove an existing tracker after confirming its identifier." }, { "slug": "POSTGRID_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription. Use when you need to remove an existing webhook by its ID." }, { "slug": "POSTGRID_FILL_TEST_RETURN_ENVELOPE_ORDER", "name": "Fill Test Return Envelope Order", "description": "Tool to fill a test return envelope order for testing purposes. This simulates filling a return envelope order in test mode, changing the status from 'placed' to 'filled'. Only works in test mode." }, { "slug": "POSTGRID_GET_BANK_ACCOUNT", "name": "Get Bank Account", "description": "Tool to retrieve a bank account. Use after obtaining the bank account ID to fetch its details." }, { "slug": "POSTGRID_GET_BOX", "name": "Get Box", "description": "Tool to retrieve a specific box order by ID. Use after obtaining the box ID to fetch its details." }, { "slug": "POSTGRID_GET_CHEQUE", "name": "Get Cheque", "description": "Tool to retrieve a specific cheque by ID. Use when you need to fetch details of a specific cheque order." }, { "slug": "POSTGRID_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a contact. Use after obtaining the contact ID to fetch its details." }, { "slug": "POSTGRID_GET_LETTER", "name": "Get Letter", "description": "Tool to retrieve a letter. Use after you have the letter ID to fetch its details." }, { "slug": "POSTGRID_GET_POSTCARD", "name": "Get Postcard", "description": "Tool to retrieve a specific postcard by ID. Use when you have a postcard ID and need to fetch its details." }, { "slug": "POSTGRID_GET_RETURN_ENVELOPE", "name": "Get Return Envelope", "description": "Tool to retrieve a return envelope. Use after obtaining the return envelope ID to fetch its details." }, { "slug": "POSTGRID_GET_RETURN_ENVELOPE_ORDER", "name": "Get Return Envelope Order", "description": "Tool to retrieve a specific return envelope order. Use when you need to get details about an order by its return envelope ID and order ID." }, { "slug": "POSTGRID_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve a template. Use when you have the template ID and need its details." }, { "slug": "POSTGRID_GET_TRACKER", "name": "Get Tracker", "description": "Tool to retrieve a tracker. Use when you have the tracker ID and need its details." }, { "slug": "POSTGRID_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by its ID. Use after creating a webhook to fetch its configuration and status." }, { "slug": "POSTGRID_LIST_BANK_ACCOUNTS", "name": "List Bank Accounts", "description": "Tool to list bank accounts. Use when retrieving bank accounts with optional status filter and pagination." }, { "slug": "POSTGRID_LIST_BOXES", "name": "List Box Orders", "description": "Tool to list box orders. Use when you need to retrieve a paginated list of box orders from PostGrid." }, { "slug": "POSTGRID_LIST_CHEQUES", "name": "List Cheques", "description": "Tool to list cheques with optional filters and pagination. Use when you need to retrieve batches of cheque records for processing or reporting." }, { "slug": "POSTGRID_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts. Use when you need to retrieve a paginated list of contacts with optional filters like date range, metadata, name, or email." }, { "slug": "POSTGRID_LIST_EVENTS", "name": "List Webhook Events", "description": "Tool to retrieve a list of webhook events with optional pagination. Use when you need to view all webhook events that have occurred." }, { "slug": "POSTGRID_LIST_LETTERS", "name": "List Letters", "description": "Tool to list letters. Use when retrieving letters with optional filters and pagination." }, { "slug": "POSTGRID_LIST_POSTAL_STATEMENTS", "name": "List Postal Statements", "description": "Tool to list all postal statements for billing and tracking purposes. Use when you need to retrieve statements for accounting or audit purposes." }, { "slug": "POSTGRID_LIST_POSTCARDS", "name": "List Postcards", "description": "Tool to retrieve a list of postcards with optional filtering and pagination. Use when you need to browse or filter postcards list." }, { "slug": "POSTGRID_LIST_RETURN_ENVELOPE_ORDERS", "name": "List Return Envelope Orders", "description": "Tool to list all return envelope orders for a specific return envelope. Use when retrieving orders associated with a return envelope ID." }, { "slug": "POSTGRID_LIST_RETURN_ENVELOPES", "name": "List Return Envelopes", "description": "Tool to list return envelopes. Use when you need to retrieve a paginated list of business reply envelopes (BREs) with optional pagination." }, { "slug": "POSTGRID_LIST_SELF_MAILERS", "name": "List Self-Mailers", "description": "Tool to list self-mailers. Use when you need to fetch self-mailers with filters and pagination." }, { "slug": "POSTGRID_LIST_SUB_ORGANIZATIONS", "name": "List Sub-Organizations", "description": "Tool to list sub-organizations. Use when you need to retrieve a paginated list of sub-organizations with optional search filter." }, { "slug": "POSTGRID_LIST_TEMPLATE_EDITOR_SESSIONS", "name": "List Template Editor Sessions", "description": "Tool to list template editor sessions. Use when you need to retrieve a paginated list of template editor sessions." }, { "slug": "POSTGRID_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list templates. Use when you need to retrieve a paginated list of templates with optional type filtering." }, { "slug": "POSTGRID_LIST_TRACKERS", "name": "List Trackers", "description": "Tool to list all trackers. Use when you need to retrieve a paginated list of trackers for tracking mail interactions." }, { "slug": "POSTGRID_LIST_TRACKER_VISITS", "name": "List Tracker Visits", "description": "Tool to list all visits for a tracker. Use when you need to retrieve visit information including device, IP address, and referred tracker/order ID for each visit." }, { "slug": "POSTGRID_LIST_WEBHOOK_INVOCATIONS", "name": "List Webhook Invocations", "description": "Tool to list previous invocations of a webhook with response status codes. Use when you need to view the history of webhook delivery attempts and their outcomes." }, { "slug": "POSTGRID_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a list of configured webhooks with optional filtering and pagination. Use when you need to view your webhooks." }, { "slug": "POSTGRID_PROGRESS_TEST_BOX", "name": "Progress Test Box", "description": "Tool to progress a test box through processing stages for webhook testing. Use when testing webhook integration by advancing box status." }, { "slug": "POSTGRID_PROGRESS_TEST_CHEQUE", "name": "Progress Test Cheque", "description": "Tool to progress a test cheque through processing stages for webhook testing. Use when you need to simulate cheque status changes (ready -> printing -> processed_for_delivery -> completed) to test webhook integrations." }, { "slug": "POSTGRID_PROGRESS_TEST_POSTCARD", "name": "Progress Test Postcard", "description": "Tool to progress a test postcard through processing stages for webhook testing. Use when testing webhook integration by advancing postcard status." }, { "slug": "POSTGRID_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing mail template in PostGrid. Use when you need to modify the HTML content, description, or metadata of a template." }, { "slug": "POSTGRID_UPDATE_TRACKER", "name": "Update Tracker", "description": "Tool to update an existing tracker's redirect URL template and/or expiration settings. Use when you need to modify tracker configuration after obtaining its identifier." }, { "slug": "POSTGRID_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify webhook URL, events, or other settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "postgrid_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PostGrid API Key", "type": "string", "description": "The API key used to authenticate requests to the PostGrid API. You can find this in your PostGrid dashboard under \"Settings\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "postgrid_verify", "name": "PostGrid Verify", "logo": "https://logos.composio.dev/api/postgrid_verify", "description": "PostGrid Verify is an API that allows you to autocomplete, verify, and standardize addresses in real-time, supporting both individual and batch address verification.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POSTGRID_VERIFY_AUTOCOMPLETE_ADDRESS", "name": "Autocomplete Address", "description": "Tool to autocomplete a partially specified US or Canada address. Retrieves complete verified address including full postal code. Uses 1 lookup per request." }, { "slug": "POSTGRID_VERIFY_AUTOCOMPLETE_INTL_ADDRESS", "name": "Autocomplete International Address", "description": "Tool to retrieve complete verified international address data using an ID from the preview endpoint. Use when you have an address ID from the preview step and need the full address details." }, { "slug": "POSTGRID_VERIFY_GET_AUTOCOMPLETE_PREVIEWS", "name": "Get Autocomplete Previews", "description": "Tool to get previews of autocompleted US and Canadian addresses. Returns partial address data (line1, city, first 3 digits of postal code) without using any lookups. Use when you need quick autocomplete suggestions for address input." }, { "slug": "POSTGRID_VERIFY_GET_INTL_AUTOCOMPLETE_PREVIEWS", "name": "Get International Autocomplete Previews", "description": "Tool to get previews of autocompleted international addresses. Results are biased based on your current IP address unless disabled. Returns both 'Address' and 'BuildingNumber' types - if type is 'Address', its id can be used in POST /completions; if 'BuildingNumber', use the container id with advanced previews." }, { "slug": "POSTGRID_VERIFY_GET_LOOKUP_INFO", "name": "Get Lookup Info", "description": "Tool to retrieve lookup usage information for your PostGrid account. Use when you need to check how many lookups you have used and your free lookup limit." }, { "slug": "POSTGRID_VERIFY_LOOKUP_CITY_STATE_FROM_POSTAL", "name": "Lookup City and State from Postal Code", "description": "Tool to lookup city and state for a given postal or ZIP code. Use when you need valid city/state combinations for a postal code." }, { "slug": "POSTGRID_VERIFY_PARSE_ADDRESS", "name": "Parse Address", "description": "Tool to break an address apart into its components. Use when you need to extract individual address parts like street number, road, city, state, and postal code from a single-line address string." }, { "slug": "POSTGRID_VERIFY_SUGGEST_ADDRESSES", "name": "Suggest Addresses", "description": "Tool to find addresses similar to the given address. If the address can be verified or corrected, the first element will contain the verified address. Returns unit number ranges in line1 of suggested addresses. Use when you need address suggestions or corrections for US or Canadian addresses." }, { "slug": "POSTGRID_VERIFY_VERIFY_ADDRESS", "name": "Verify Address", "description": "Tool to verify and standardize a US or Canadian address. Supports both freeform addresses (single-line) and structured addresses (with separate line1, city, etc.). Use includeDetails=true for additional metadata or geocode=true for latitude/longitude." }, { "slug": "POSTGRID_VERIFY_VERIFY_BATCH_ADDRESSES", "name": "Batch Verify Addresses with Mixed Format", "description": "Tool to verify up to 2000 US and Canada addresses in a single API call. Accepts both freeform address strings and structured address objects. Each address uses 1 lookup credit." }, { "slug": "POSTGRID_VERIFY_VERIFY_INTERNATIONAL_ADDRESS", "name": "Verify International Address", "description": "Tool to verify and standardize international addresses from 245+ countries. Supports both structured and freeform address inputs. Use includeDetails=true for match levels and geoData=true for coordinates." }, { "slug": "POSTGRID_VERIFY_VERIFY_INTL_ADDRESSES_BATCH", "name": "Batch Verify International Addresses", "description": "Tool to verify up to 2000 international addresses in a single API call. Accepts both freeform address strings and structured address objects. Uses 1 lookup per address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "postgrid_verify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "PostGrid API Key", "type": "string", "description": "Your PostGrid API key, which can be obtained from the Developers section of the PostGrid dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "postman", "name": "Postman", "logo": "https://logos.composio.dev/api/postman", "description": "Postman is an API platform for building, testing, and managing APIs with powerful collaboration features.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 135, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POSTMAN_CREATE_A_COLLECTION", "name": "Create a Collection", "description": "Tool to create a new Postman collection in a specific workspace or the default workspace. Use when you need to create a collection with workspace specification. For complete collection format details, refer to the Postman Collection Format documentation." }, { "slug": "POSTMAN_CREATE_A_COLLECTION_COMMENT", "name": "Create a Collection Comment", "description": "Tool to create a comment on an API's collection. Use when you need to add a comment to a specific collection within an API. To create a reply on an existing comment, include the thread_id in the request." }, { "slug": "POSTMAN_CREATE_A_COLLECTION_FROM_A_SCHEMA", "name": "Create Collection from Schema", "description": "Tool to create a collection from a schema and link it to an API with specified relations. Note: This endpoint is deprecated in Postman v10 and higher. Use when you need to generate a collection from an API schema and establish relations like contract tests or documentation." }, { "slug": "POSTMAN_CREATE_A_FOLDER", "name": "Create a Folder", "description": "Tool to create a folder in a Postman collection. Use when you need to organize requests by creating a new folder within a collection. For complete details, see the Postman Collection Format documentation." }, { "slug": "POSTMAN_CREATE_A_FOLDER_COMMENT", "name": "Create a Folder Comment", "description": "Tool to create a comment on a folder. Use when you need to add a comment to a specific folder in a collection." }, { "slug": "POSTMAN_CREATE_A_FORK2", "name": "Create Environment Fork", "description": "Tool to create a fork from an existing environment into a workspace. Use when you need to fork an environment to a specified workspace." }, { "slug": "POSTMAN_CREATE_A_MOCK_SERVER", "name": "Create a Mock Server", "description": "Tool to create a new mock server in a Postman collection. Use when you need to create a mock server to simulate API endpoints for testing or development. Returns the created mock server's details including the mockUrl which can be used to make requests." }, { "slug": "POSTMAN_CREATE_A_MONITOR", "name": "Create a Monitor", "description": "Tool to create a new monitor in a specific workspace to run a collection on a schedule. Use when you need to set up automated collection runs at specified intervals using cron expressions within a workspace." }, { "slug": "POSTMAN_CREATE_AN_API", "name": "Create an API", "description": "Tool to create a new API in Postman. Use when you need to create an API with a name, summary, and description in your Postman workspace." }, { "slug": "POSTMAN_CREATE_AN_ENVIRONMENT", "name": "Create an Environment", "description": "Tool to create a new environment in a Postman workspace. Use when you need to create a new environment with variables for different settings (development, production, testing, etc.). Returns the created environment's ID, name, and UID upon successful creation." }, { "slug": "POSTMAN_CREATE_A_PULL_REQUEST", "name": "Create a Pull Request", "description": "Tool to create a pull request for a forked collection into its parent collection. Use when you need to propose changes from a forked collection to be merged into the parent collection. The forked collection must exist before creating a pull request." }, { "slug": "POSTMAN_CREATE_A_REQUEST", "name": "Create Request in Collection", "description": "Tool to create a new request in a Postman collection. Use when you need to add a request to an existing collection with specified method, URL, headers, and body." }, { "slug": "POSTMAN_CREATE_A_REQUEST_COMMENT", "name": "Create a Request Comment", "description": "Tool to create a comment on a request. Use when you need to add a comment to a specific request within a collection or reply to an existing comment thread." }, { "slug": "POSTMAN_CREATE_A_RESPONSE", "name": "Create a Response", "description": "Tool to create a request response in a Postman collection. Use when you need to add a saved response example to a specific request in a collection." }, { "slug": "POSTMAN_CREATE_A_RESPONSE_COMMENT", "name": "Create a Response Comment", "description": "Tool to create a comment on a response. Use when you need to add a comment to a specific response within a collection or reply to an existing comment thread." }, { "slug": "POSTMAN_CREATE_A_SCHEMA", "name": "Create API Schema", "description": "Tool to create a schema for an API in Postman. Use when you need to add a schema definition (such as OpenAPI, GraphQL, or Protocol Buffers) to an existing API. The schema can consist of single or multiple files. Returns the created schema's ID and metadata upon successful creation." }, { "slug": "POSTMAN_CREATE_A_SERVER_RESPONSE", "name": "Create Mock Server Response", "description": "Tool to create a server response on a Postman mock server. Use when you need to simulate 5xx server-level responses (500, 503, etc.) for testing error conditions." }, { "slug": "POSTMAN_CREATE_A_SPEC", "name": "Create a Spec", "description": "Tool to create an API specification in Postman's Spec Hub. Use when you need to create single or multi-file specifications in a workspace. Supports various spec types including OpenAPI 3.0, OpenAPI 3.1, and AsyncAPI 2.0." }, { "slug": "POSTMAN_CREATE_A_SPEC_FILE", "name": "Create Spec File", "description": "Tool to create a new file in an API specification. Use when you need to add a new file (such as schema definitions, path configurations, or components) to an existing spec." }, { "slug": "POSTMAN_CREATE_A_WEBHOOK", "name": "Create a Webhook", "description": "Tool to create a webhook that triggers a collection with a custom payload. Use when you need to set up a webhook endpoint that can trigger a Postman collection run. The webhook URL is available in the webhookUrl property of the response." }, { "slug": "POSTMAN_CREATE_A_WORKSPACE", "name": "Create a Workspace", "description": "Tool to create a new workspace in Postman. Use when you need to create a workspace with a specified name, type (personal, team, private, or public), and optional description. Returns the created workspace's ID, name, and type upon successful creation." }, { "slug": "POSTMAN_CREATE_OR_UPDATE_A_SCHEMA_FILE", "name": "Create or Update a Schema File", "description": "Tool to create or update an API schema file in Postman. Use when you need to add a new schema file or modify an existing one within an API schema. Requires API ID, schema ID, file path, and stringified JSON content." }, { "slug": "POSTMAN_CREATE_RELATIONS", "name": "Create API Version Relations", "description": "Tool to create new relations for an API version. Use when you need to link collections or mock servers to an API version as contract tests, test suites, documentation, or mocks." }, { "slug": "POSTMAN_DELETE_A_COLLECTION", "name": "Delete a Collection", "description": "Tool to permanently delete a collection from Postman. Use when you need to remove a collection that is no longer needed." }, { "slug": "POSTMAN_DELETE_A_COLLECTIONS_COMMENT", "name": "Delete a collection's comment", "description": "Tool to delete a comment from an API's collection. Use when you need to remove a specific comment from a collection. On success, returns HTTP 204 No Content." }, { "slug": "POSTMAN_DELETE_A_FOLDER", "name": "Delete a Folder", "description": "Tool to delete a folder in a Postman collection. Use when you need to remove a folder and all its contents from a collection. The folder ID should not contain spaces to avoid 404 errors." }, { "slug": "POSTMAN_DELETE_A_FOLDERS_COMMENT", "name": "Delete a Folder's Comment", "description": "Tool to delete a comment from a folder. Use when you need to remove a specific comment from a folder. Returns HTTP 204 No Content on successful deletion." }, { "slug": "POSTMAN_DELETE_AN_API", "name": "Delete an API", "description": "Tool to delete an API from Postman. Use when you need to permanently remove an API. On success, returns HTTP 204 No Content response." }, { "slug": "POSTMAN_DELETE_AN_APIS_COMMENT", "name": "Delete an API's Comment", "description": "Tool to delete a comment from an API. Use when you need to remove a comment from a specific API. On success, this returns an HTTP 204 No Content response indicating the comment was successfully deleted." }, { "slug": "POSTMAN_DELETE_AN_ENVIRONMENT", "name": "Delete an environment", "description": "Tool to delete an environment permanently in Postman. Use when you need to remove an environment that is no longer needed." }, { "slug": "POSTMAN_DELETE_A_REQUESTS_COMMENT", "name": "Delete a Request's Comment", "description": "Tool to delete a comment from a request. Use when you need to remove a specific comment from a request. On success, this returns an HTTP 204 No Content response." }, { "slug": "POSTMAN_DELETE_A_RESPONSE", "name": "Delete a Response", "description": "Tool to delete a response in a Postman collection. Use when you need to remove a saved response from a collection." }, { "slug": "POSTMAN_DELETE_A_RESPONSES_COMMENT", "name": "Delete a Response's Comment", "description": "Tool to delete a comment from a response. Use when you need to remove a specific comment from a collection response. On successful deletion, this returns HTTP 204 No Content." }, { "slug": "POSTMAN_DELETE_A_SCHEMA_FILE", "name": "Delete a Schema File", "description": "Tool to delete a file in an API schema. Use when you need to remove a specific file from a schema. On success, returns HTTP 204 No Content response." }, { "slug": "POSTMAN_DELETE_A_SERVER_RESPONSE", "name": "Delete Mock Server Response", "description": "Tool to delete a mock server's server response. Use when you need to remove a specific response from a Postman mock server." }, { "slug": "POSTMAN_DELETE_A_SPEC", "name": "Delete a Spec", "description": "Tool to delete an API specification from Postman. Use when you need to permanently remove a specification. On success, returns HTTP 204 No Content response." }, { "slug": "POSTMAN_DELETE_A_SPEC_FILE", "name": "Delete Spec File", "description": "Tool to delete a file from an API specification. Use when you need to remove a specific file from a multi-file specification." }, { "slug": "POSTMAN_DELETE_A_WORKSPACE", "name": "Delete a Workspace", "description": "Tool to delete a Postman workspace permanently. Use when you need to remove a workspace and all its contents. Deletion is permanent and cannot be undone." }, { "slug": "POSTMAN_DELETE_MONITOR", "name": "Delete Monitor", "description": "Tool to delete a monitor by its ID. Use when you need to permanently remove a monitor from Postman. The monitor ID must be provided to identify which monitor to delete." }, { "slug": "POSTMAN_DUPLICATE_A_COLLECTION", "name": "Duplicate a Collection", "description": "Tool to create a duplicate of a collection in another workspace. Use when you need to copy an existing collection to a different workspace. Returns an asynchronous task that can be tracked using the duplication task status endpoint." }, { "slug": "POSTMAN_FORK_COLLECTION", "name": "Fork Collection", "description": "Tool to create a fork of a collection in a specified workspace. Use when you need to fork an existing collection to a workspace." }, { "slug": "POSTMAN_GENERATE_A_COLLECTION_FROM_SPEC", "name": "Generate Collection from Spec", "description": "Tool to generate a Postman collection from an OpenAPI 2.0, 3.0, or 3.1 specification. Use when you need to create a collection from an existing API spec. The operation is asynchronous and returns a task ID and polling URL to check the generation status." }, { "slug": "POSTMAN_GENERATE_SPEC_FROM_COLLECTION", "name": "Generate Spec from Collection", "description": "Tool to generate an API specification from a Postman collection. Use when you need to create an OpenAPI 3.0 specification from an existing collection. The operation is asynchronous and returns a task ID and polling URL to check the generation status." }, { "slug": "POSTMAN_GET_ACCOUNTS", "name": "Get Billing Account Details", "description": "Tool to retrieve Postman billing account details for the authenticated team. Use when you need to access account information such as account ID, team ID, account state, billing slots, sales channel, or billing email." }, { "slug": "POSTMAN_GET_A_COLLECTIONS_COMMENTS", "name": "Get Collection Comments", "description": "Tool to retrieve all comments left by users in an API's collection. Use when you need to fetch all comments associated with a specific collection within an API." }, { "slug": "POSTMAN_GET_A_COLLECTIONS_FORKS", "name": "Get Collection's Forks", "description": "Tool to get all forks of a specific collection. Use when you need to retrieve information about who has forked a collection, including fork IDs, users, and creation dates." }, { "slug": "POSTMAN_GET_A_COLLECTIONS_PULL_REQUESTS", "name": "Get Collection Pull Requests", "description": "Tool to get information about a collection's pull requests including source and destination IDs, status, and URLs. Use when you need to retrieve pull request details for a specific collection." }, { "slug": "POSTMAN_GET_A_COLLECTIONS_ROLES", "name": "Get Collection Roles", "description": "Tool to get information about all roles in a collection. Use when you need to retrieve the IDs of all users, teams, and groups with access to view or edit a collection." }, { "slug": "POSTMAN_GET_A_FOLDER", "name": "Get Folder Information", "description": "Tool to retrieve information about a folder in a Postman collection. Use when you need to fetch details about a specific folder including its name, description, owner, and timestamps." }, { "slug": "POSTMAN_GET_A_FOLDERS_COMMENTS", "name": "Get Folder Comments", "description": "Tool to retrieve all comments left by users in a folder. Use when you need to fetch all comments associated with a specific folder within a collection." }, { "slug": "POSTMAN_GET_ALL_API_RELEASES", "name": "Get All API Releases", "description": "Tool to get all releases for a specific API version in Postman. Use when you need to list releases for an API version. Note: This endpoint is deprecated in Postman v10 and higher." }, { "slug": "POSTMAN_GET_ALL_APIS", "name": "Get All APIs", "description": "Tool to get all APIs accessible to the authenticated user with optional workspace filtering. Use when you need to list or retrieve APIs from Postman. Returns an array of API objects with their IDs, names, summaries, and other metadata." }, { "slug": "POSTMAN_GET_ALL_COLLECTIONS2", "name": "Get All Collections", "description": "Tool to get all collections accessible to the authenticated user. Use when you need to retrieve all your collections including subscribed collections. Returns detailed information for each collection including owner, creation/update timestamps, and visibility." }, { "slug": "POSTMAN_GET_ALL_ENVIRONMENTS", "name": "Get All Environments", "description": "Tool to get all environments accessible to the authenticated user with optional workspace filtering. Use when you need to list or retrieve environments from Postman. Returns an array of environment objects with their IDs, names, and UIDs." }, { "slug": "POSTMAN_GET_ALL_FORKED_COLLECTIONS", "name": "Get All Forked Collections", "description": "Tool to retrieve all forked collections for the authenticated user. Use when you need to list or access all collections that the user has forked." }, { "slug": "POSTMAN_GET_ALL_GROUPS", "name": "Get All Groups", "description": "Tool to get all user groups in a Postman team. Use when you need to list all groups and their details including member counts and timestamps. Returns an array of group objects with their IDs, names, team IDs, user counts, and creation/update timestamps." }, { "slug": "POSTMAN_GET_ALL_LINKED_RELATIONS", "name": "Get All Linked Relations", "description": "Tool to retrieve all linked relations for a specific API version in Postman. Use when you need to discover what collections, documentation, mocks, or monitors are linked to an API version." }, { "slug": "POSTMAN_GET_ALL_MOCK_SERVERS", "name": "Get All Mock Servers", "description": "Tool to get all active mock servers accessible to the authenticated user. Use when you need to list or retrieve mock servers from Postman. By default, returns only mock servers you created across all workspaces. Can be filtered by workspace ID to get mock servers specific to a workspace." }, { "slug": "POSTMAN_GET_ALL_MONITORS", "name": "Get All Monitors", "description": "Tool to get all monitors accessible to the authenticated user with optional workspace filtering. Use when you need to list or retrieve monitors from Postman. Returns an array of monitor objects with their IDs, names, and UIDs." }, { "slug": "POSTMAN_GET_ALL_SPECS", "name": "Get All API Specifications", "description": "Tool to get all API specifications in a workspace. Use when you need to list or retrieve API specs from a specific Postman workspace. Returns an array of spec objects with their IDs, names, types, and timestamps, along with pagination metadata." }, { "slug": "POSTMAN_GET_ALL_TEAM_USERS", "name": "Get All Team Users", "description": "Tool to get information about all users on the Postman team. Use when you need to list all team members and their details including roles and join dates. Returns an array of user objects with their IDs, names, usernames, emails, roles, and join timestamps." }, { "slug": "POSTMAN_GET_ALL_TEST_RELATIONS", "name": "Get All Test Relations", "description": "Tool to retrieve all test relations for a specific API version. Use when you need to get test relations associated with an API version. Note: This endpoint is deprecated in Postman v10 and higher." }, { "slug": "POSTMAN_GET_ALL_VERSIONS", "name": "Get All API Versions", "description": "Tool to get all published versions of a specific API in Postman. Use when you need to list or retrieve version information for an API. Returns an array of version objects with their IDs and names." }, { "slug": "POSTMAN_GET_ALL_WORKSPACES", "name": "Get All Workspaces", "description": "Tool to get all workspaces accessible to the authenticated user with optional type filtering. Use when you need to list or retrieve workspaces from Postman. Returns an array of workspace objects with their IDs, names, and types." }, { "slug": "POSTMAN_GET_A_MONITOR", "name": "Get Monitor Information", "description": "Tool to retrieve information about a specific monitor in Postman. Use when you need to fetch monitor details including schedule, collection, environment, and run status." }, { "slug": "POSTMAN_GET_AN_API", "name": "Get API Information", "description": "Tool to retrieve information about a specific API in Postman. Use when you need to fetch API details including name, description, versions, and schemas." }, { "slug": "POSTMAN_GET_AN_APIS_COMMENTS", "name": "Get API Comments", "description": "Tool to retrieve all comments left by users in an API. Use when you need to fetch all comments associated with a specific API." }, { "slug": "POSTMAN_GET_AN_API_VERSION", "name": "Get API Version", "description": "Tool to get information about a specific API version in Postman. Use when you need to retrieve details about a particular version of an API. Returns version details including ID, name, creation date, and associated schemas." }, { "slug": "POSTMAN_GET_AN_ENVIRONMENT", "name": "Get an Environment", "description": "Tool to retrieve detailed information about a specific environment in Postman. Use when you need to fetch environment details including name, ID, owner, and all environment variables." }, { "slug": "POSTMAN_GET_AN_ENVIRONMENTS_FORKS", "name": "Get Environment Forks", "description": "Tool to retrieve all forked environments for a specific environment. Use when you need to list all environments that have been forked from a particular environment." }, { "slug": "POSTMAN_GET_A_REQUEST", "name": "Get Request Information", "description": "Tool to retrieve information about a specific request in a Postman collection. Use when you need to fetch details about a request including its method, URL, headers, body, authentication, and associated scripts." }, { "slug": "POSTMAN_GET_A_REQUESTS_COMMENTS", "name": "Get Request Comments", "description": "Tool to retrieve all comments left by users in a request. Use when you need to fetch all comments associated with a specific request within a collection." }, { "slug": "POSTMAN_GET_A_RESPONSE", "name": "Get Response Information", "description": "Tool to retrieve information about a saved response in a Postman collection. Use when you need to fetch details about a specific response including status, headers, body, and metadata." }, { "slug": "POSTMAN_GET_A_RESPONSES_COMMENTS", "name": "Get Response Comments", "description": "Tool to retrieve all comments left by users in a response. Use when you need to fetch all comments associated with a specific response within a collection." }, { "slug": "POSTMAN_GET_A_SCHEMA", "name": "Get API Schema", "description": "Tool to retrieve information about an API schema from Postman. Use when you need to fetch schema details for a specific API. Optionally specify a version ID to get a schema published in a specific API version." }, { "slug": "POSTMAN_GET_A_SPEC", "name": "Get API Specification", "description": "Tool to retrieve information about an API specification in Postman. Use when you need to fetch spec details including name, type, and timestamps." }, { "slug": "POSTMAN_GET_A_SPEC_FILE", "name": "Get Spec File Contents", "description": "Tool to get the contents of an API specification's file. Use when you need to retrieve the actual content and metadata of a specific file within a spec." }, { "slug": "POSTMAN_GET_A_SPECS_DEFINITION", "name": "Get Spec Definition", "description": "Tool to get the complete contents of an API specification's definition. Use when you need to retrieve the full OpenAPI/Swagger specification content for a spec. Returns the raw definition content as a string." }, { "slug": "POSTMAN_GET_A_SPECS_FILES", "name": "Get Specification Files", "description": "Tool to retrieve all files in an API specification from Postman. Use when you need to list or view specification files for a specific spec ID. Returns file metadata including IDs, names, paths, types, and timestamps." }, { "slug": "POSTMAN_GET_A_SPECS_GENERATED_COLLECTIONS", "name": "Get Spec's Generated Collections", "description": "Tool to retrieve all collections generated from an API specification in Postman. Use when you need to fetch collections that have been auto-generated from a spec. Returns metadata and an array of generated collections." }, { "slug": "POSTMAN_GET_ASYNC_COLLECTION_UPDATE_STATUS", "name": "Get Async Collection Update Status", "description": "Tool to get the status of an asynchronous collection update task. Use when you need to check whether a previously initiated async collection update is still processing, has completed successfully, or has failed. The task ID is obtained from PUT /collections/{collectionId} endpoint when using the Prefer: respond-async header." }, { "slug": "POSTMAN_GET_A_TEAM_USER", "name": "Get Team User", "description": "Tool to get information about a user on the Postman team. Use when you need to retrieve details about a specific team member including their ID, name, email, roles, and join date." }, { "slug": "POSTMAN_GET_AUTHENTICATED_USER", "name": "Get Authenticated User", "description": "Tool to get information about the authenticated user. Use when you need to retrieve details about the current authenticated user, including their user ID, username, and email address." }, { "slug": "POSTMAN_GET_A_WORKSPACE", "name": "Get Workspace Details", "description": "Tool to get detailed information about a specific workspace by its ID. Use when you need to retrieve the complete structure of a workspace including all collections, environments, APIs, mocks, and monitors." }, { "slug": "POSTMAN_GET_A_WORKSPACES_ACTIVITY_FEED", "name": "Get Workspace Activity Feed", "description": "Tool to get a workspace's activity feed showing who added or removed collections, environments, or elements, and users joining or leaving. Use when you need to track workspace changes and user activity." }, { "slug": "POSTMAN_GET_A_WORKSPACES_ROLES", "name": "Get Workspace Roles", "description": "Tool to get the roles of users, user groups, and partners in a workspace. Use when you need to retrieve role assignments and understand who has what level of access to a specific workspace." }, { "slug": "POSTMAN_GET_COLLECTION_ACCESS_KEYS", "name": "Get Collection Access Keys", "description": "Tool to retrieve all personal and team collection access keys for the authenticated user. Use when you need to list or manage collection access keys. Returns an array of access key objects with their IDs, tokens, status, and associated collection information." }, { "slug": "POSTMAN_GET_CONTRACT_TEST_RELATIONS", "name": "Get Contract Test Relations", "description": "Tool to retrieve contract test relations for a specific API version. Use when you need to check contract test associations. Note: This endpoint is deprecated and may return limited or no data." }, { "slug": "POSTMAN_GET_DOCUMENTATION_RELATIONS", "name": "Get documentation relations", "description": "Tool to get documentation relations for a specific API version. This endpoint is deprecated in Postman v10 and higher." }, { "slug": "POSTMAN_GET_DUPLICATION_TASK_STATUS", "name": "Get Duplication Task Status", "description": "Tool to get the status of a collection duplication task. Use when you need to check whether a previously initiated collection duplication is still processing or has completed. The task ID must first be obtained from the POST /collections/{collectionId}/duplicates endpoint." }, { "slug": "POSTMAN_GET_ENVIRONMENT_RELATIONS", "name": "Get Environment Relations", "description": "Tool to get environment relations for a specific API version. This endpoint is deprecated in Postman v10 and higher." }, { "slug": "POSTMAN_GET_GENERATED_SPEC", "name": "Get Generated Specification", "description": "Tool to retrieve the API specification generated for a Postman collection. Use when you need to fetch OpenAPI/Swagger specs that have been auto-generated from a collection. Returns metadata and an array of generated specifications." }, { "slug": "POSTMAN_GET_GLOBAL_VARIABLES", "name": "Get Workspace Global Variables", "description": "Tool to get a workspace's global variables. Use when you need to retrieve global variables that are available throughout a workspace for access between collections, requests, scripts, and environments. Note that this endpoint only works with personal or team workspaces, not public workspaces." }, { "slug": "POSTMAN_GET_INTEGRATION_TEST_RELATIONS", "name": "Get Integration Test Relations", "description": "Tool to get integration test relations for a specific API version. This endpoint is deprecated and may not return active data." }, { "slug": "POSTMAN_GET_RESOURCE_TYPES", "name": "Get Resource Types", "description": "Tool to get all resource types supported by Postman's SCIM API. Use when you need to discover what resource types (e.g., User, Group) are available in the SCIM API and their corresponding endpoints and schemas." }, { "slug": "POSTMAN_GET_SCHEMA_FILE_CONTENTS", "name": "Get Schema File Contents", "description": "Tool to get the contents of an API schema file at a specified path. Use when you need to retrieve the actual content of a schema file. Optionally specify a version ID to get file contents from a specific API version." }, { "slug": "POSTMAN_GET_SCHEMA_FILES", "name": "Get Schema Files", "description": "Tool to retrieve files in an API schema from Postman. Use when you need to list or view schema files for a specific API and schema ID. Optionally filter by version ID to get files from a particular API version." }, { "slug": "POSTMAN_GET_SERVICE_PROVIDER_CONFIGURATION", "name": "Get Service Provider Configuration", "description": "Tool to get Postman's SCIM API service provider configuration information. Use when you need to discover supported SCIM operations, capabilities, and authentication schemes. This endpoint returns configuration details including support for PATCH, bulk operations, filtering, sorting, and ETag handling." }, { "slug": "POSTMAN_GET_SOURCE_COLLECTIONS_STATUS", "name": "Get Source Collection Status", "description": "Tool to check whether there is a change between a forked collection and its parent (source) collection. Use when you need to determine if the source collection has updates that are not yet in the forked collection. This endpoint only works with forked collections; attempting to use it with regular collections will result in an error." }, { "slug": "POSTMAN_GET_TEST_SUITE_RELATIONS", "name": "Get Test Suite Relations", "description": "Tool to get test suite relations for a specific API version. Use when you need to retrieve the test suites associated with an API version. Note: This endpoint is deprecated and only works with legacy v9 APIs. For v10+ APIs, this returns an empty array." }, { "slug": "POSTMAN_GET_UNCLASSIFIED_RELATIONS", "name": "Get Unclassified Relations", "description": "Tool to get unclassified relations for an API version in Postman. Use when you need to retrieve unclassified relations for a specific API version. This endpoint is for Postman v10 and higher." }, { "slug": "POSTMAN_IMPORT_OPENAPI", "name": "Import OpenAPI Specification", "description": "Tool to import an OpenAPI specification into Postman as a new collection. Use when you need to convert an OpenAPI 3.0+ specification into a Postman collection within a specific workspace. The imported specification will be automatically converted to a Postman collection with all endpoints, request parameters, and documentation." }, { "slug": "POSTMAN_LIST_ACCOUNT_INVOICES", "name": "List Account Invoices", "description": "Tool to get all invoices for a Postman billing account filtered by status. Use when you need to retrieve invoice history for an account. The account ID must first be obtained from the GET /accounts endpoint." }, { "slug": "POSTMAN_MERGE_A_FORK", "name": "Merge a Fork", "description": "Tool to merge a forked collection back into its parent collection. This endpoint is deprecated. Use when you need to merge changes from a forked collection into the parent collection." }, { "slug": "POSTMAN_MERGE_A_FORK2", "name": "Merge a forked environment", "description": "Tool to merge a forked environment back into its parent environment. Use when you need to merge changes from a forked environment into the parent." }, { "slug": "POSTMAN_PUBLISH_A_MOCK_SERVER", "name": "Publish a Mock Server", "description": "Tool to publish a mock server in Postman. Use when you need to make a mock server publicly accessible. Publishing sets the mock server's Access Control configuration to public." }, { "slug": "POSTMAN_PULL_SOURCE_CHANGES2", "name": "Pull Source Changes into Fork", "description": "Tool to pull changes from a parent (source) collection into a forked collection. Use when you need to sync a forked collection with its parent." }, { "slug": "POSTMAN_REPLACE_AN_ENVIRONMENTS_DATA", "name": "Replace an Environment's Data", "description": "Tool to completely replace an environment's data with new variables and values. Use when you need to update an entire environment by replacing all its contents. This operation replaces ALL existing variables with the ones provided in the request." }, { "slug": "POSTMAN_REPLACE_COLLECTIONS_DATA_ASYNCHRONOUSLY", "name": "Replace Collection Data Asynchronously", "description": "Tool to replace the entire contents of a collection asynchronously. Use when you need to completely replace a collection with new data. IMPORTANT: Include the collection's ID values in item, variable, and other nested objects to preserve them. If you do not include IDs, existing items will be removed and new items will be created." }, { "slug": "POSTMAN_RESOLVE_A_COMMENT_THREAD", "name": "Resolve a Comment Thread", "description": "Tool to resolve a comment thread and any associated replies. Use when you need to mark a comment thread as resolved. On success, this returns an HTTP 204 No Content response." }, { "slug": "POSTMAN_REVIEW_A_PULL_REQUEST", "name": "Review a Pull Request", "description": "Tool to update the review status of a pull request by approving, declining, or unapproving it. Use when you need to perform a review action on a Postman pull request." }, { "slug": "POSTMAN_RUN_A_MONITOR", "name": "Run a Monitor", "description": "Tool to trigger an immediate run of a monitor and retrieve its execution results. Use when you need to manually execute a monitor outside of its scheduled runs." }, { "slug": "POSTMAN_SYNC_COLLECTION_WITH_SCHEMA", "name": "Sync Collection with API Schema", "description": "Tool to sync a collection attached to an API with the API schema. This is an asynchronous endpoint that returns HTTP 202 Accepted. Use when you need to synchronize a collection with changes made to the API schema. The collection must already be attached to the API. Returns a task ID that can be used to check the status of the sync operation." }, { "slug": "POSTMAN_SYNC_COLLECTION_WITH_SPEC", "name": "Sync Collection with Specification", "description": "Tool to sync a collection generated from an API specification. This is an asynchronous operation that returns HTTP 202 Accepted. Use when you need to update a collection to match the latest version of its source API specification. The collection must have been generated from a spec." }, { "slug": "POSTMAN_SYNC_SPEC_WITH_COLLECTION", "name": "Sync Spec with Collection", "description": "Tool to sync an API specification with a linked collection. This is an asynchronous operation that returns HTTP 202 Accepted with task tracking information. Use when you need to synchronize changes from a spec to its generated collection. Prerequisites: the collection must be generated from the spec, and the spec must be single-file." }, { "slug": "POSTMAN_TRANSFER_FOLDERS", "name": "Transfer Folders", "description": "Tool to copy or move folders into a collection or folder. Use when you need to reorganize collections by transferring folders between collections or into other folders." }, { "slug": "POSTMAN_TRANSFORM_COLLECTION_TO_OPENAPI", "name": "Transform Collection to OpenAPI", "description": "Tool to transform an existing Postman Collection into a stringified OpenAPI 3.0.3 definition. Use when you need to convert a collection to OpenAPI format for API documentation or interoperability with other tools." }, { "slug": "POSTMAN_UPDATE_A_FOLDER", "name": "Update a Folder", "description": "Tool to update a folder in a Postman collection. Use when you need to modify the name or description of an existing folder. For complete properties and information, see the Postman Collection Format documentation." }, { "slug": "POSTMAN_UPDATE_A_FOLDERS_COMMENT", "name": "Update a Folder's Comment", "description": "Tool to update a comment on a folder. Use when you need to modify the text content of an existing comment on a specific folder in a collection." }, { "slug": "POSTMAN_UPDATE_A_MOCK_SERVER", "name": "Update a Mock Server", "description": "Tool to update an existing mock server. Use when you need to change a mock server's name, collection, environment, or privacy settings. The collection UID is required for all updates." }, { "slug": "POSTMAN_UPDATE_A_MONITOR", "name": "Update a Monitor", "description": "Tool to update an existing monitor in Postman. Use when you need to modify monitor properties like name, active status, collection, environment, options, notifications, or distribution settings." }, { "slug": "POSTMAN_UPDATE_AN_API", "name": "Update an API", "description": "Tool to update an existing API in Postman. Use when you need to modify the name, summary, or description of an API." }, { "slug": "POSTMAN_UPDATE_AN_APIS_COMMENT", "name": "Update an API's Comment", "description": "Tool to update a comment on an API. Use when you need to modify the text content of an existing comment on a specific API." }, { "slug": "POSTMAN_UPDATE_AN_ENVIRONMENT", "name": "Update an Environment", "description": "Tool to update specific environment properties using JSON Patch operations (RFC 6902). Use when you need to modify environment name or variables without replacing the entire environment." }, { "slug": "POSTMAN_UPDATE_A_PULL_REQUEST", "name": "Update a Pull Request", "description": "Tool to update an open pull request in Postman. Use when you need to modify the title, description, source, destination, or reviewers of an existing pull request. All fields must be provided in the request." }, { "slug": "POSTMAN_UPDATE_A_REQUEST", "name": "Update Request in Collection", "description": "Tool to update a request in a Postman collection. Use when you need to modify an existing request's name, method, URL, headers, or body following the Postman Collection Format." }, { "slug": "POSTMAN_UPDATE_A_REQUESTS_COMMENT", "name": "Update a Request's Comment", "description": "Tool to update a comment on a request. Use when you need to modify the text content of an existing comment on a specific request within a collection." }, { "slug": "POSTMAN_UPDATE_A_RESPONSE", "name": "Update a Response", "description": "Tool to update a response in a Postman collection. Use when you need to modify properties of an existing saved response example such as name, status, code, headers, cookies, or body." }, { "slug": "POSTMAN_UPDATE_A_RESPONSES_COMMENT", "name": "Update a Response's Comment", "description": "Tool to update a comment on a response. Use when you need to modify the text content of an existing comment on a specific response within a collection." }, { "slug": "POSTMAN_UPDATE_A_SERVER_RESPONSE", "name": "Update a Server Response", "description": "Tool to update a mock server's server response. Use when you need to modify properties of an existing server response such as name, status code, language, body, or headers. At least one property must be included in the update request." }, { "slug": "POSTMAN_UPDATE_A_SPEC_FILE", "name": "Update Spec File", "description": "Tool to update an API specification file's content. Use when you need to modify the contents of a specific file within a spec." }, { "slug": "POSTMAN_UPDATE_A_SPECS_PROPERTIES", "name": "Update Spec Properties", "description": "Tool to update an API specification's properties such as its name. Use when you need to modify metadata of an existing spec." }, { "slug": "POSTMAN_UPDATE_A_WORKSPACE", "name": "Update a Workspace", "description": "Tool to update an existing workspace in Postman. Use when you need to modify the name, type, or description of a workspace. The 'type' field is required for all updates." }, { "slug": "POSTMAN_UPDATE_GLOBAL_VARIABLES", "name": "Update Workspace Global Variables", "description": "Tool to update and replace a workspace's global variables. Use when you need to set or replace all global variables in a workspace. Note: This endpoint replaces all existing global variables with the provided list." }, { "slug": "POSTMAN_UPDATE_PART_OF_A_COLLECTION", "name": "Update Collection Properties", "description": "Tool to update specific collection properties like name, description, authentication, variables, or events. Use when you need to partially update a collection without replacing the entire collection structure. Returns the updated collection information after the changes are applied." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "postman_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Postman API key. Generate one from Settings > API keys in your Postman account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "postmark", "name": "Postmark", "logo": "https://logos.composio.dev/api/postmark", "description": "Postmark is an email delivery service that enables developers to send transactional emails with high deliverability and detailed analytics.", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 46, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "POSTMARK_ARCHIVE_MESSAGE_STREAM", "name": "Archive Message Stream", "description": "Tool to archive a message stream (soft delete). Use when you need to remove a message stream that will be permanently deleted after 45 days." }, { "slug": "POSTMARK_CHECK_SPAM_SCORE", "name": "Check Spam Score", "description": "Tool to assess the spam score of a raw email via the SpamCheck API. Use when you have full email source and need spam scoring before sending. Returns spam score and detailed report." }, { "slug": "POSTMARK_CREATE_INBOUND_RULE", "name": "Create Inbound Rule", "description": "Tool to create a new inbound rule trigger to block email from a specific sender or domain. Use when you need to prevent emails from specific addresses or domains from being processed." }, { "slug": "POSTMARK_CREATE_MESSAGE_STREAM", "name": "Create Message Stream", "description": "Tool to create a new message stream. Use when you need to set up separate streams for transactional or broadcast emails." }, { "slug": "POSTMARK_CREATE_SUPPRESSIONS", "name": "Create Suppressions", "description": "Tool to add email addresses to the suppression list for a message stream. Use when you need to prevent emails from being sent to specific addresses." }, { "slug": "POSTMARK_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new email template. Use when you need reusable templates before sending emails." }, { "slug": "POSTMARK_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook configuration for Postmark. Use when you need to set up a webhook to receive event notifications for email tracking (opens, clicks, bounces, deliveries, etc.)." }, { "slug": "POSTMARK_DELETE_INBOUND_RULE", "name": "Delete Inbound Rule", "description": "Tool to delete a specific inbound rule trigger. Use when you need to remove an inbound rule by its ID after confirming it's no longer needed." }, { "slug": "POSTMARK_DELETE_SUPPRESSIONS", "name": "Delete Suppressions", "description": "Tool to remove email addresses from the suppression list for a message stream. Use when you need to reactivate previously suppressed email addresses. Note that only HardBounce and ManualSuppression types can be deleted; SpamComplaint suppressions cannot be removed." }, { "slug": "POSTMARK_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template by its ID or alias. Use when you need to permanently remove a template after confirming it's no longer needed." }, { "slug": "POSTMARK_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use when you need to remove a webhook by its ID after confirming it's no longer needed." }, { "slug": "POSTMARK_EDIT_SERVER", "name": "Edit Server", "description": "Tool to update settings for the current Postmark server. Use when you need to modify server configuration." }, { "slug": "POSTMARK_EDIT_TEMPLATE", "name": "Edit Template", "description": "Tool to update an existing Postmark template by its ID. Use when you need to modify a template's name, subject, HTML or text body, alias, type, layout, or active status." }, { "slug": "POSTMARK_EDIT_WEBHOOK", "name": "Edit Webhook", "description": "Tool to update an existing webhook’s URL or triggers. Use when you need to modify webhook settings after confirming the webhookID." }, { "slug": "POSTMARK_GET_BOUNCE_COUNTS", "name": "Get Bounce Counts", "description": "Tool to get total counts of emails that have been returned as bounced. Use when you need aggregate bounce statistics and per-day breakdown by bounce type (hard bounce, soft bounce, transient, SMTP API errors)." }, { "slug": "POSTMARK_GET_BOUNCES", "name": "Get Bounces", "description": "Tool to retrieve a list of bounces for a server with optional filters. Use when you need to page through bounce data after applying filters." }, { "slug": "POSTMARK_GET_BROWSER_PLATFORM_USAGE", "name": "Get Browser Platform Usage", "description": "Tool to retrieve browser platform usage statistics for clicked links. Use after sending outbound emails with tracked links to analyze engagement by browser." }, { "slug": "POSTMARK_GET_BROWSER_USAGE", "name": "Get Browser Usage", "description": "Tool to retrieve browser usage statistics for clicked links. Use after sending tracked outbound emails to analyze which browsers and platforms were used to click links." }, { "slug": "POSTMARK_GET_CLICK_COUNTS", "name": "Get Click Counts", "description": "Tool to retrieve total click counts across all links in emails. Use when you need aggregated click metrics for a given date range." }, { "slug": "POSTMARK_GET_CLICKS_BY_BROWSER_FAMILY", "name": "Get Clicks By Browser Family", "description": "Tool to retrieve click statistics grouped by browser family. Use after sending outbound emails with tracked links to analyze which browser families recipients used to click links. Requires link tracking to be enabled for emails." }, { "slug": "POSTMARK_GET_CLICKS_BY_LOCATION", "name": "Get Clicks by Location", "description": "Tool to get an overview of which part of the email links were clicked from (HTML or Text). Use when you need to analyze click patterns by content type." }, { "slug": "POSTMARK_GET_DELIVERY_STATS", "name": "Get Delivery Stats", "description": "Tool to retrieve delivery statistics. Use after sending emails to get aggregated counts of deliveries, bounces, and spam complaints." }, { "slug": "POSTMARK_GET_EMAIL_CLIENT_USAGE", "name": "Get Email Client Usage", "description": "Tool to retrieve statistics on email clients used to open emails. Use when you need to analyze which clients recipients open your outbound emails." }, { "slug": "POSTMARK_GET_EMAIL_OPEN_COUNTS", "name": "Get Email Open Counts", "description": "Tool to retrieve counts of opened emails. Use when you need per-day and total open stats for a specified period." }, { "slug": "POSTMARK_GET_MESSAGE_STREAM", "name": "Get Message Stream", "description": "Tool to retrieve details of a specific message stream by its ID. Use when you need to inspect stream configuration such as type, description, or subscription settings." }, { "slug": "POSTMARK_GET_OPENS_BY_PLATFORM", "name": "Get Opens by Platform", "description": "Tool to retrieve email open statistics by platform type. Use when you need to understand which platforms recipients use to open emails." }, { "slug": "POSTMARK_GET_OUTBOUND_OVERVIEW", "name": "Get Outbound Overview", "description": "Tool to retrieve outbound email statistics overview. Use when you need aggregated outbound metrics after sending emails." }, { "slug": "POSTMARK_GET_SENT_COUNTS", "name": "Get Sent Counts", "description": "Tool to retrieve total count of emails sent out. Use when you need per-day and total sent statistics for a specified period." }, { "slug": "POSTMARK_GET_SERVER", "name": "Get Server", "description": "Tool to retrieve details of the current Postmark server. Use when you need to inspect server configuration (webhooks, tracking, tokens, etc.) before other operations." }, { "slug": "POSTMARK_GET_SPAM_COMPLAINTS", "name": "Get Spam Complaints", "description": "Tool to retrieve counts of spam complaints. Use when analyzing spam feedback trends after sending campaigns." }, { "slug": "POSTMARK_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve details of a specific template by its ID. Use after obtaining a template ID to inspect its configuration." }, { "slug": "POSTMARK_GET_TRACKED_EMAIL_COUNTS", "name": "Get Tracked Email Counts", "description": "Tool to retrieve counts of emails with tracking enabled. Use after specifying a date range to analyze open and click metrics." }, { "slug": "POSTMARK_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by its ID. Use when you need to inspect webhook configuration including URL, triggers, and message stream settings." }, { "slug": "POSTMARK_LIST_INBOUND_RULES", "name": "List Inbound Rules", "description": "Tool to list all inbound rules (triggers) configured for blocking senders. Use when you need to retrieve configured inbound rules with pagination support." }, { "slug": "POSTMARK_LIST_MESSAGE_STREAMS", "name": "List Message Streams", "description": "Tool to list all message streams for a Postmark server with optional type and archive filtering. Use when you need to retrieve available message streams. A server may have up to 10 streams including defaults." }, { "slug": "POSTMARK_LIST_OUTBOUND_MESSAGE_CLICKS", "name": "List Outbound Message Clicks", "description": "Tool to list clicks for outbound messages with filtering options. Use when you need to retrieve click events with pagination and optional filters like recipient, tag, client, OS, platform, or geographic location." }, { "slug": "POSTMARK_LIST_OUTBOUND_MESSAGE_OPENS", "name": "List Outbound Message Opens", "description": "Tool to retrieve opens for outbound messages with filtering options. Use when you need to analyze email open events with detailed client, OS, and geographic data." }, { "slug": "POSTMARK_LIST_SUPPRESSIONS", "name": "List Suppressions", "description": "Tool to retrieve the suppression list for a message stream with optional filtering. Use when you need to view all suppressed email addresses for a stream." }, { "slug": "POSTMARK_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all templates for a Postmark server. Use when you need to retrieve available templates with optional pagination and filters." }, { "slug": "POSTMARK_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured for your Postmark account. Use after authenticating your server token to retrieve current webhook configurations." }, { "slug": "POSTMARK_SEARCH_INBOUND_MESSAGES", "name": "Search Inbound Messages", "description": "Tool to search inbound messages received with optional filtering. Use when you need to retrieve inbound emails with pagination and various filters." }, { "slug": "POSTMARK_SEARCH_OUTBOUND_MESSAGES", "name": "Search Outbound Messages", "description": "Tool to search outbound messages with filtering by recipient, tag, status, and date range. Use when you need to query sent messages with specific filters or pagination." }, { "slug": "POSTMARK_SEND_BATCH_WITH_TEMPLATES", "name": "Send Batch Templated Emails", "description": "Tool to send multiple templated emails in a single batch API call. Use when you need to send up to 500 templated messages at once." }, { "slug": "POSTMARK_UNARCHIVE_MESSAGE_STREAM", "name": "Unarchive Message Stream", "description": "Tool to unarchive a previously archived message stream. Use when you need to restore an archived stream (within 45 days of archiving)." }, { "slug": "POSTMARK_UPDATE_MESSAGE_STREAM", "name": "Update Message Stream", "description": "Tool to update a message stream configuration in Postmark. Use when you need to modify a stream's name or description. Note that stream type and ID cannot be changed after creation." }, { "slug": "POSTMARK_VALIDATE_TEMPLATE", "name": "Validate Template", "description": "Tool to validate a Postmark template. Use when checking that a template's subject and body render correctly against sample data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "postmark_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Postmark Server API Token", "type": "string", "description": "The Server API Token used for authenticating Postmark API requests. This token is unique to each server and can be found in the API Tokens tab under your Postmark server.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "practitest", "name": "Practitest", "logo": "https://logos.composio.dev/api/practitest", "description": "PractiTest is a test management tool that facilitates the organization, tracking, and planning of software testing processes. It provides comprehensive features for test case management, test execution, bug tracking, and reporting.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "practitest_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "password", "displayName": "API Token", "type": "string", "description": "Your PractiTest API token. Create a Personal API Token in User Settings > Personal Tab, or an Account API Token in Account Settings > API Tokens. Visit https://www.practitest.com/help/account/account-api-tokens/ for more information.", "required": true, "default": null } ], "optional": [ { "name": "username", "displayName": "Username (Email or \"any\")", "type": "string", "description": "Your email address or the word \"any\". The API does not authenticate this field - only the API token matters.", "required": false, "default": "any" } ] } } } ] }, { "slug": "prereason_fb300e7158_a74f493d879c_d010b41d4a6b", "name": "Prereason Fb300E7158 A74F493D879C D010B41D4A6B", "logo": "https://logos.composio.dev/api/prereason", "description": "PreReason provides real-time crypto intelligence briefings with comprehensive market analysis and metrics via API", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "prereason_x_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your PreReason API key (format: pr_live_...)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "prerender", "name": "Prerender", "logo": "https://logos.composio.dev/api/prerender", "description": "Prerender.io is a service that pre-renders JavaScript-heavy websites to improve SEO by serving static HTML versions to search engine crawlers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRERENDER_CHANGE_RECACHE_SPEED", "name": "Change Recache Speed", "description": "Tool to adjust the rendering speed of Manual/API and Automatic rendering queues. Use when you need to control how fast Prerender processes URLs in the recache queue." }, { "slug": "PRERENDER_CHECK_HEALTH", "name": "Check Health", "description": "Tool to check the health status of the Prerender API service. Use when you need to verify service availability or monitor system health." }, { "slug": "PRERENDER_CLEAR_CACHE", "name": "Clear Cache", "description": "Tool to clear Prerender cache using SQL-like wildcard patterns. Schedules a cache clear job. Only one cache clear job can be scheduled per user at a time. Use when you need to invalidate cached pages for a URL pattern." }, { "slug": "PRERENDER_CREATE_SEO_AUDIT_REPORT", "name": "Create SEO Audit Report", "description": "Tool to generate SEO audit reports for a specific URL. Use when you need to analyze SEO performance metrics for a web page. The report will be sent to the provided email address." }, { "slug": "PRERENDER_GET_CACHE_CLEAR_STATUS", "name": "Get Cache Clear Status", "description": "Tool to check the status of a cache clear job. Use when you need to verify if a cache clearing operation is still in progress or has completed." }, { "slug": "PRERENDER_GET_PRERENDERED_PAGE", "name": "Get Prerendered Page", "description": "Tool to fetch a prerendered HTML page. Use when you need a static snapshot of a page before dynamic rendering." }, { "slug": "PRERENDER_LIST_HEALTHZ", "name": "List Healthz", "description": "Tool to check Prerender API health and availability. Use when you need to verify the API is operational before making requests." }, { "slug": "PRERENDER_LIST_V3", "name": "List V3", "description": "Tool to get a greeting message from the Prerender API. Use when you need to verify basic API connectivity or retrieve the hello message." }, { "slug": "PRERENDER_RECACHE_URL", "name": "Recache URL", "description": "Tool to cache or recache URLs in Prerender. Use when you need to refresh cached pages or cache new URLs. Supports single URL or batch operations (up to 1000 URLs)." }, { "slug": "PRERENDER_SEARCH_CACHED_URLS", "name": "Search Cached URLs", "description": "Tool to search for cached URLs in your Prerender account and view their cache status. Supports pagination (200 URLs per page) and filtering by desktop/mobile adaptive type. Use when you need to find specific cached pages or check cache status across your account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "prerender_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Prerender.io API Token", "type": "string", "description": "Your Prerender.io API token, found in the Prerender.io dashboard (Security and Access menu).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "printautopilot", "name": "Printautopilot", "logo": "https://logos.composio.dev/api/printautopilot", "description": "Print Autopilot enables seamless automation of printing tasks by connecting your applications directly to your printers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRINTAUTOPILOT_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to upload a base64 formatted PDF document to PrintAutopilot queue. Use when you need to add a PDF document to the print queue. Warning: Validates base64 encoding before submission." }, { "slug": "PRINTAUTOPILOT_LIST_QUEUES", "name": "List Queues", "description": "Tool to list available PrintAutoPilot queues. Use when you need to retrieve all queues before choosing one." }, { "slug": "PRINTAUTOPILOT_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to a temporary R2 bucket. Use when you need to stage files for later PrintAutoPilot operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "printautopilot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Print Autopilot API Key", "type": "string", "description": "The API key provided by Print Autopilot for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "prisma", "name": "Prisma", "logo": "https://logos.composio.dev/api/prisma", "description": "Prisma Data Platform provides database tools including Accelerate (global database cache), Optimize (AI-driven query analysis), and Prisma Postgres (managed PostgreSQL). Manage workspaces, projects, environments, and API keys programmatically.", "category": "databases", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRISMA_CREATE_CONNECTION", "name": "Create Database Connection", "description": "Create new API key connection for database access. Creates connection string with embedded credentials for application database access. Returns complete connection details ready for immediate use." }, { "slug": "PRISMA_CREATE_DATABASE", "name": "Create Project Database", "description": "Create new postgres database in an existing Prisma project. Creates database in specified region with connection strings and API keys. Returns complete database details ready for immediate use." }, { "slug": "PRISMA_CREATE_PROJECT", "name": "Create Prisma Project", "description": "Create new Prisma project with managed postgres database. Creates project in authenticated user's workspace with postgres database in specified region. Returns complete project details including connection strings and API keys." }, { "slug": "PRISMA_DELETE_CONNECTION", "name": "Delete Database Connection", "description": "Permanently delete database connection and revoke API key access. WARNING: This immediately revokes database access for any applications using this connection string. Ensure no critical systems depend on this connection." }, { "slug": "PRISMA_DELETE_DATABASE", "name": "Delete Prisma Database", "description": "Permanently delete Prisma database and all stored data. WARNING: This action cannot be undone. All data in the database will be permanently destroyed. Default databases typically cannot be deleted." }, { "slug": "PRISMA_DELETE_PROJECT", "name": "Delete Prisma Project", "description": "Permanently delete Prisma project and all associated resources. WARNING: This action cannot be undone. All databases, environments, and project data will be permanently destroyed. Use with extreme caution in production environments." }, { "slug": "PRISMA_EXECUTE_SQL_COMMAND", "name": "Execute SQL Command", "description": "Execute SQL commands that modify database data or structure. Runs INSERT, UPDATE, DELETE, CREATE TABLE, and other data modification commands safely through PostgreSQL driver with parameterized query support." }, { "slug": "PRISMA_EXECUTE_SQL_QUERY", "name": "Execute SQL Query", "description": "Execute SQL SELECT queries against Prisma Postgres databases. Runs read-only queries safely through direct PostgreSQL connection with SSL. Uses credentials from create_connection action (host, user, pass fields). Perfect for data analysis, schema inspection, and reporting operations." }, { "slug": "PRISMA_GET_DATABASE", "name": "Get Prisma Database", "description": "Retrieve specific Prisma database by ID. Returns database details including status, project context, and regional deployment. Use for database monitoring, validation, and administrative operations." }, { "slug": "PRISMA_GET_DATABASE_USAGE", "name": "Get Database Usage Metrics", "description": "Retrieve usage metrics for a specific Prisma database. Returns metrics including storage usage and operation counts (reads/writes) for the specified time period. Use for monitoring resource consumption, cost analysis, and capacity planning." }, { "slug": "PRISMA_GET_PROJECT", "name": "Get Prisma Project", "description": "Retrieve specific Prisma project by ID. Returns project details including name, creation timestamp, and workspace information. Use for project detail views, validation, and administrative operations." }, { "slug": "PRISMA_INSPECT_DATABASE_SCHEMA", "name": "Inspect Database Schema", "description": "Inspect database schema structure and table information. Returns comprehensive schema details including tables, columns, data types, constraints, and relationships. Essential for understanding database structure before executing queries." }, { "slug": "PRISMA_LIST_ACCELERATE_REGIONS", "name": "List Prisma Accelerate Regions", "description": "Retrieve all available regions for Prisma Accelerate. Returns regions where Accelerate global database cache can be deployed. Use for cache region selection to minimize latency for your users." }, { "slug": "PRISMA_LIST_BACKUPS", "name": "List Database Backups", "description": "Retrieve list of available backups for a specific database. Returns backup details including status, size, type, and restoration readiness. Use for backup monitoring, restoration planning, and compliance auditing." }, { "slug": "PRISMA_LIST_CONNECTIONS", "name": "List Database Connections", "description": "Retrieve paginated list of connections for a specific database. Returns connection details including names, creation dates, and database context. Use for API key management, security audits, and access control." }, { "slug": "PRISMA_LIST_DATABASES", "name": "List Project Databases", "description": "Retrieve paginated list of databases for a specific Prisma project. Returns database details including status, region, and project context. Use for database discovery, monitoring, and project administration." }, { "slug": "PRISMA_LIST_POSTGRES_REGIONS", "name": "List Prisma Postgres Regions", "description": "Retrieve all available regions for Prisma Postgres. Returns regions where Prisma Postgres databases can be deployed with current availability status. Use for region selection during database creation and capacity planning." }, { "slug": "PRISMA_LIST_PROJECTS", "name": "List Prisma Projects", "description": "Retrieve paginated list of Prisma projects accessible to authenticated user. Returns project IDs, names, workspace info, and timestamps with cursor-based pagination. Use for project discovery, UI selection flows, and administrative operations." }, { "slug": "PRISMA_LIST_WORKSPACE_INTEGRATIONS", "name": "List Workspace Integrations", "description": "Retrieve paginated list of integrations for a specific Prisma workspace. Returns integration details including OAuth client info, granted scopes, and creator. Use for security audits, integration management, and workspace administration." }, { "slug": "PRISMA_LIST_WORKSPACES", "name": "List Prisma Workspaces", "description": "Retrieve paginated list of Prisma workspaces accessible to authenticated user. Returns workspace IDs, names, creation timestamps with cursor-based pagination. Use for workspace discovery, UI selection flows, and administrative operations." }, { "slug": "PRISMA_RESTORE_BACKUP", "name": "Restore Database Backup", "description": "Restore database backup to new database instance. Creates new database from existing backup with specified name. Operation is asynchronous - monitor the returned database status for completion. Restoration may take several minutes." }, { "slug": "PRISMA_TRANSFER_PROJECT", "name": "Transfer Prisma Project", "description": "Transfer Prisma project ownership to another user's workspace. Transfers project ownership from the current authenticated user to the recipient specified by their OAuth2 access token. This is typically used in partner integrations where databases are provisioned on the partner's workspace and later transferred to end users. The project and all its databases are moved to the recipient's workspace. The current owner loses access unless the new owner explicitly grants it. Requirements: - Valid project ID owned by the current user - Valid OAuth2 access token for the recipient user - Recipient workspace must have sufficient quota for the project" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "prisma_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "workspace:admin" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "prisma_service_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Service Token", "type": "string", "description": "Your Prisma service token. Create one in Prisma Console > Settings > Service Tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "prismic", "name": "Prismic", "logo": "https://logos.composio.dev/api/prismic", "description": "Prismic is a headless CMS that enables developers and content teams to manage and deliver content seamlessly across various platforms.", "category": "website builders", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRISMIC_CONTENT_API_GET_DOCUMENTS_WITH_FULLTEXT_SEARCH", "name": "Get Prismic Documents with Fulltext Search", "description": "Search Prismic documents using full-text search. Searches across all text fields in documents for the specified terms. The search is case-insensitive and matches based on root words. Automatically retrieves the current master ref. Returns paginated results ordered by relevance." }, { "slug": "PRISMIC_CONTENT_API_QUERY_DOCUMENTS", "name": "Prismic: Query Documents", "description": "Tool to query Prismic documents using predicates and pagination. Use when you need to fetch multiple documents from a repository after obtaining a ref." }, { "slug": "PRISMIC_REPOSITORY_API_GET_INFO", "name": "Get Prismic Repository Info", "description": "Retrieves comprehensive metadata about a Prismic repository including available refs (content versions), custom types, languages, tags, bookmarks, and API forms. This is typically the first API call made after authentication to discover repository configuration and available content endpoints. The 'refs' field is particularly important as refs are required for querying documents via the Content API." }, { "slug": "PRISMIC_TAGS_API_GET_ALL_TAGS", "name": "Get Prismic Tags", "description": "Tool to retrieve all tags from Prismic repository. Use when you need the full list of tags for filtering or categorization." }, { "slug": "PRISMIC_TYPES_API_GET_TYPES", "name": "Prismic: Get Custom Types", "description": "Retrieves all custom types (content models) defined in the Prismic repository. Custom types define the structure of content in Prismic. This action returns metadata about each custom type including its ID, label, structure definition (JSON schema), and whether it's repeatable. Use this to discover available content types before querying documents, or to understand the content model of a repository. Returns an empty list if no custom types are defined in the repository." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "prismic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Repository Name", "type": "string", "description": "The unique name of your Prismic repository.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Prismic Access Token", "type": "string", "description": "The access token for authenticating API requests to your Prismic repository.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "proabono", "name": "Proabono", "logo": "https://logos.composio.dev/api/proabono", "description": "ProAbono is the smart subscription management software that automates your daily routine.", "category": "ecommerce", "authSchemes": [ "BASIC" ], "toolCount": 64, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROABONO_ANONYMIZE_CUSTOMER", "name": "Anonymize Customer", "description": "Tool to anonymize a customer for GDPR compliance. Use when you need to permanently remove personal data from a customer record while maintaining the account structure. The customer must have no active subscriptions, all invoices must be settled, and the balance must be empty before anonymization." }, { "slug": "PROABONO_BILL_CUSTOMER", "name": "Bill Customer", "description": "Tool to trigger billing for a customer. Use when you need to create invoices for pending charges for a specific customer." }, { "slug": "PROABONO_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create or declare a customer in ProAbono via the Backoffice API. Use when you need to register a new customer with billing and subscription management capabilities." }, { "slug": "PROABONO_CREATE_FEATURE", "name": "Create Feature", "description": "Tool to create a new feature in ProAbono via the Backoffice API. Features define capabilities or usage limits that can be attached to offers. Use when you need to define a new feature (OnOff, Limitation, or Consumption type) for your subscription plans." }, { "slug": "PROABONO_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a customer from ProAbono by ID. Use when you need to remove a customer record from the system." }, { "slug": "PROABONO_DELETE_OFFER", "name": "Delete Offer", "description": "Tool to delete an offer from ProAbono by ID. Use when you need to permanently remove an offer from the system." }, { "slug": "PROABONO_DELETE_PRICING_TABLE", "name": "Delete Pricing Table", "description": "Tool to delete a pricing table from ProAbono by its ID. Use when you need to remove a pricing table from the system." }, { "slug": "PROABONO_DELETE_PRICING_TABLE_OFFER", "name": "Delete Pricing Table Offer", "description": "Tool to delete a pricing table offer via the ProAbono Backoffice API. Use when you need to remove an existing pricing table offer by its ID." }, { "slug": "PROABONO_DELETE_SUBSCRIPTION_DISCOUNT", "name": "Delete Subscription Discount", "description": "Tool to delete a subscription discount via the Backoffice API. Use when you need to remove a discount from a subscription after confirming its ID." }, { "slug": "PROABONO_ENABLE_WEBHOOK", "name": "Enable Webhook", "description": "Tool to enable a webhook in ProAbono via the Notification API. Use when you need to activate a previously disabled webhook for receiving event notifications." }, { "slug": "PROABONO_GET_CUSTOMER", "name": "Get Customer by ID", "description": "Tool to retrieve a single customer by ID from ProAbono Backoffice API. Use when you need to fetch detailed information about a specific customer including their billing details, status, and related resource links." }, { "slug": "PROABONO_GET_CUSTOMER_BILLING", "name": "Get Customer Billing Address", "description": "Tool to retrieve a customer's billing address via the Backoffice API. Use when you need to fetch billing information including company name, contact details, address lines, and tax information for a specific customer." }, { "slug": "PROABONO_GET_CUSTOMER_BILLING_ADDRESS", "name": "Get Customer Billing Address by Reference", "description": "Tool to retrieve the billing address for a customer by reference from ProAbono API. Use when you need to fetch billing address details including company, contact information, address lines, and tax information using the customer's reference identifier." }, { "slug": "PROABONO_GET_CUSTOMER_BY_REFERENCE", "name": "Get Customer by Reference", "description": "Tool to retrieve a customer by their reference identifier from ProAbono API. Use when you need to fetch customer details using the unique reference identifier from your own application rather than the ProAbono internal ID." }, { "slug": "PROABONO_GET_CUSTOMER_PAYMENT_SETTINGS", "name": "Get Customer Payment Settings", "description": "Tool to retrieve customer payment settings via the Backoffice API. Use when you need to check a customer's payment configuration, billing schedule, or payment method type." }, { "slug": "PROABONO_GET_DISCOUNT", "name": "Get Discount", "description": "Tool to retrieve a discount by ID via the Backoffice API. Use when you need to fetch details of a specific discount including its amount, type, target fees, and state." }, { "slug": "PROABONO_GET_FEATURE", "name": "Get Feature by ID", "description": "Tool to retrieve a feature by ID from ProAbono Backoffice API. Use when you need to fetch details about a specific feature." }, { "slug": "PROABONO_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve a specific invoice or credit note by ID from ProAbono. Use when you need to fetch detailed information about an invoice." }, { "slug": "PROABONO_GET_OFFER", "name": "Get Offer by ID", "description": "Tool to retrieve a single offer by its ID from ProAbono Backoffice API. Use when you need to fetch detailed information about a specific offer." }, { "slug": "PROABONO_GET_SUBSCRIPTION_BY_CUSTOMER", "name": "Get Subscription by Customer Reference", "description": "Tool to retrieve a subscription by customer reference from ProAbono. Use when you need to fetch subscription details for a specific customer using their reference key." }, { "slug": "PROABONO_GET_SUBSCRIPTION_CREATION_QUOTE", "name": "Get Subscription Creation Quote", "description": "Tool to get a pricing quote for creating a new subscription without actually creating it. Use when you need to calculate the cost of a subscription before committing to its creation." }, { "slug": "PROABONO_GET_USAGE", "name": "Get Usage Record", "description": "Tool to retrieve a single usage record for a specific feature and customer combination from ProAbono. Use when you need to check current usage status, remaining quota, or feature availability for a customer. The response varies based on feature type: OnOff features return IsIncluded/IsEnabled, while Limitation and Consumption features return quantity information." }, { "slug": "PROABONO_GET_USAGES_FOR_CUSTOMER", "name": "Get Usages for Customer", "description": "Tool to retrieve usage data for customers from ProAbono. Use when you need to fetch feature usage information including OnOff, Limitation, and Consumption features. Parameters can be combined to filter results by customer reference, customer ID, or subscription ID." }, { "slug": "PROABONO_INVALIDATE_CUSTOMER", "name": "Invalidate Customer", "description": "Tool to invalidate a customer by their reference. Use when you need to revoke a customer's access to subscribed services while keeping the account record." }, { "slug": "PROABONO_INVALIDATE_CUSTOMER_BY_ID", "name": "Invalidate Customer by ID", "description": "Tool to invalidate a customer by their ProAbono internal ID. Use when you need to free up a customer reference for reuse. This operation replaces the customer's ReferenceCustomer with a new value and regenerates all encrypted portal links." }, { "slug": "PROABONO_LIST_BALANCE_LINES", "name": "List Balance Lines", "description": "Tool to list all balance lines from ProAbono. Use when you need to retrieve one-time charges or credits associated with a customer or subscription. Either ReferenceCustomer or IdSubscription parameter is required." }, { "slug": "PROABONO_LIST_BUSINESSES", "name": "List Businesses", "description": "Tool to list all businesses from ProAbono via the Backoffice API. Use when you need to retrieve business information with optional filtering by state or update date." }, { "slug": "PROABONO_LIST_BUSINESS_LOCALIZATION", "name": "List Business Localization", "description": "Tool to list localization entries by business from ProAbono via the HostedPages API. Use when you need to retrieve customizable text, HTML, or URL content for hosted pages with optional filtering by language, customization status, content, or code keywords. Returns paginated results with localization details." }, { "slug": "PROABONO_LIST_CUSTOMER_MOVES", "name": "List Customer Moves", "description": "Tool to list all customer balance moves via the ProAbono Backoffice API. Use when you need to retrieve balance transactions, credits, debits, or billing movements for customers. Supports filtering by customer, billing status, and date range with pagination." }, { "slug": "PROABONO_LIST_CUSTOMERS", "name": "List Customers", "description": "Tool to list all customers from ProAbono via the Backoffice API. Use when you need to retrieve customer information with optional filtering by business, state, language, or creation date. Returns paginated results with customer details including ID, name, email, and status." }, { "slug": "PROABONO_LIST_CUSTOMERS_BY_FEATURE", "name": "List Customers by Feature", "description": "Tool to list customers that have access to a specific feature via the ProAbono API. Use when you need to identify which customers have subscriptions containing a particular feature. Returns feature-specific details including quota usage and billing period information. Note: Returns HTTP 204 (No Content) when no customers match the feature filter." }, { "slug": "PROABONO_LIST_DISCOUNTS", "name": "List Discounts", "description": "Tool to list all discounts from ProAbono's Backoffice API. Use when you need to retrieve discounts for a business, optionally filtering by state (Enabled/Draft)." }, { "slug": "PROABONO_LIST_FEATURES", "name": "List Features", "description": "Tool to list all features via the ProAbono Backoffice API. Use when you need to retrieve features with optional filtering by business ID, lifecycle state, visibility, or creation date. Returns a paginated collection of feature objects." }, { "slug": "PROABONO_LIST_GATEWAY_ACCOUNTS", "name": "List Gateway Accounts", "description": "Tool to list payment gateway accounts from ProAbono Backoffice API. Use when you need to retrieve gateway account information with optional filtering by business, currency, real money mode, or creation date. Returns paginated results with account details including ID, name, type, and state." }, { "slug": "PROABONO_LIST_GATEWAY_PERMISSIONS", "name": "List Gateway Permissions", "description": "Tool to list gateway permissions from ProAbono API. Use when you need to retrieve payment permissions with optional filtering by business, customer, or creation date." }, { "slug": "PROABONO_LIST_GATEWAY_REQUESTS", "name": "List Gateway Requests", "description": "Tool to list gateway requests from ProAbono. Use when you need to retrieve payment gateway request history with optional filtering by account, permission, transaction, dates, or request state. Returns paginated results with detailed information about each gateway request including status, amount, and timing." }, { "slug": "PROABONO_LIST_GATEWAY_TRANSACTIONS", "name": "List Gateway Transactions", "description": "Tool to list gateway transactions from ProAbono. Use when you need to retrieve payment gateway transaction records with optional filtering by business, customer, or update date. Returns paginated results with transaction details including status, amount, and payment type." }, { "slug": "PROABONO_LIST_INVOICE_LINES", "name": "List Invoice Lines", "description": "Tool to list all invoice lines from ProAbono via the Backoffice API. Use when you need to retrieve invoice line items with optional filtering by business, invoice, or minimum amount." }, { "slug": "PROABONO_LIST_INVOICES", "name": "List Invoices and Credit Notes", "description": "Tool to list all invoices and credit notes from ProAbono Backoffice API. Use when you need to retrieve invoice data with optional filtering by business, payment state, or date range. Supports pagination for large result sets." }, { "slug": "PROABONO_LIST_INVOICES_BY_CUSTOMER", "name": "List Invoices by Customer Reference", "description": "Tool to list invoices for a specific customer by their reference identifier from ProAbono API. Use when you need to retrieve all invoices associated with a particular customer using their unique reference from your application." }, { "slug": "PROABONO_LIST_OFFERS", "name": "List Offers", "description": "Tool to list all subscription offers (plans) from ProAbono Backoffice API. Use when you need to retrieve available offers with optional filtering by business, state, visibility, or update date." }, { "slug": "PROABONO_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to list all payments from ProAbono Backoffice API. Use when you need to retrieve payments with optional filters by business, customer, or update date." }, { "slug": "PROABONO_LIST_PRICING_TABLE_OFFERS", "name": "List Pricing Table Offers", "description": "Tool to list all pricing table offers via the ProAbono Backoffice API. Use when you need to retrieve all offers configured in pricing tables for a specific business." }, { "slug": "PROABONO_LIST_PRICING_TABLES", "name": "List Pricing Tables", "description": "Tool to list all pricing tables from ProAbono Backoffice API. Use when you need to retrieve pricing tables with optional filtering by business ID, visibility, or creation date." }, { "slug": "PROABONO_LIST_SEGMENT_LOCALIZATIONS", "name": "List Segment Localizations", "description": "Tool to list localization entries by segment from ProAbono Backoffice API. Use when you need to retrieve hosted page localizations for a specific segment with optional filtering by language, custom status, content, or code." }, { "slug": "PROABONO_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to list all segments from ProAbono via the Backoffice API. Use when you need to retrieve segments with optional filtering by business ID or currency. Returns a paginated collection of segment objects including configuration details, hosts, and navigation links." }, { "slug": "PROABONO_LIST_SUBSCRIPTION_DISCOUNTS", "name": "List Subscription Discounts", "description": "Tool to list all subscription discounts via the ProAbono Backoffice API. Use when you need to retrieve discounts applied to subscriptions for a specific business. Returns paginated results with discount details including IDs, creation/update timestamps, and associated subscription and discount references." }, { "slug": "PROABONO_LIST_SUBSCRIPTION_FEATURES", "name": "List Subscription Features", "description": "Tool to list all subscription features via the ProAbono Backoffice API. Use when you need to retrieve subscription features with optional filtering by Business ID, Feature ID, or minimum update date." }, { "slug": "PROABONO_LIST_SUBSCRIPTION_PERIODS", "name": "List Subscription Periods", "description": "Tool to list all subscription periods (billing cycles) from ProAbono Backoffice API. Use when you need to retrieve subscription period information with optional filtering by business ID, subscription ID, or start date. Supports pagination for large result sets." }, { "slug": "PROABONO_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Tool to list all subscriptions from ProAbono via the Backoffice API. Use when you need to retrieve subscription information with optional filtering by business, state, or start date. Returns paginated results with subscription details including customer, offer, dates, and status." }, { "slug": "PROABONO_LIST_TAX_PROFILE_EXCEPTIONS", "name": "List Tax Profile Exceptions", "description": "Tool to list tax profile exceptions from ProAbono Organization API. Use when you need to retrieve tax exceptions with optional filtering by business, tax profile, country, or region. Returns a paginated collection of tax exception records including rates, geographic scope, and applicability." }, { "slug": "PROABONO_LIST_TAX_PROFILES", "name": "List Tax Profiles", "description": "Tool to list all tax profiles from ProAbono via the Backoffice API. Use when you need to retrieve tax configurations with optional filtering by business ID. Returns a paginated collection of tax profile objects with rates and settings." }, { "slug": "PROABONO_LIST_UPGRADE_OFFERS", "name": "List Upgrade Offers", "description": "Tool to retrieve offers available to upgrade an existing customer subscription. Use when you need to show upgrade options to a customer based on their current subscription status." }, { "slug": "PROABONO_LIST_WEBHOOK_NOTIFICATIONS", "name": "List Webhook Notifications", "description": "Tool to list webhook notifications from ProAbono via the Notification API. Use when you need to retrieve webhook notification history with optional filtering by business, segment, date range, state, or webhook ID. Returns paginated results with notification details including sending status and related resources." }, { "slug": "PROABONO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list webhooks from ProAbono Notification API. Use when you need to retrieve configured webhooks with optional filtering by creation date, update date, or state." }, { "slug": "PROABONO_QUOTE_BALANCE_LINE", "name": "Quote Balance Line Creation", "description": "Tool to get a pricing quote for creating a balance line (one-time charge or credit). Use when you need to calculate the total amount including taxes before creating a balance line for a customer." }, { "slug": "PROABONO_REVOKE_CUSTOMER_LINKS", "name": "Revoke Customer Portal Links", "description": "Tool to revoke encrypted customer portal links and generate new ones in ProAbono. Use when you need to invalidate previously generated customer portal links for security purposes (e.g., after a potential link compromise or as part of security best practices)." }, { "slug": "PROABONO_UPDATE_BUSINESSES_BILLING_ADDRESS", "name": "Update Business Billing Address", "description": "Tool to update business billing address via the Backoffice API. Use when you need to modify billing information including company name, contact details, address lines, and tax information for a specific business." }, { "slug": "PROABONO_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer in ProAbono via the Backoffice API. Use when you need to modify customer properties such as name, email, or language preferences. Allows partial updates." }, { "slug": "PROABONO_UPDATE_CUSTOMER_BILLING_ADDRESS", "name": "Update Customer Billing Address", "description": "Tool to update the billing address for a customer in ProAbono via the API. Use when you need to modify billing address information including company name, contact details, address lines, and tax information. Once updated, ProAbono will use this information for future invoices." }, { "slug": "PROABONO_UPDATE_CUSTOMER_PAYMENT_SETTINGS", "name": "Update Customer Payment Settings", "description": "Tool to update payment settings for a specific customer in ProAbono. Use when you need to set a customer's payment method preference or update their billing configuration." }, { "slug": "PROABONO_UPDATE_CUSTOMER_SHIPPING", "name": "Update Customer Shipping Address", "description": "Tool to update customer shipping address via the Backoffice API. Use when you need to modify shipping information including company name, contact details, address lines, and tax information for a specific customer." }, { "slug": "PROABONO_UPDATE_FEATURE", "name": "Update Feature", "description": "Tool to update an existing feature in ProAbono via the Backoffice API. Use when you need to modify feature properties such as name, visibility, type, or display order." }, { "slug": "PROABONO_UPDATE_TAX_PROFILES", "name": "Update Tax Profiles", "description": "Tool to update an existing tax profile in ProAbono via the Backoffice API. Use when you need to modify tax profile properties such as name, description, label, or tax rates." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "proabono_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Endpoint", "type": "string", "description": "Your ProAbono API endpoint from BackOffice > Integration > API (e.g., https://api-42.proabono.com)", "required": true, "default": null }, { "name": "username", "displayName": "Agent Key", "type": "string", "description": "Your ProAbono agent key from BackOffice > Integration > API", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your ProAbono API key from BackOffice > Integration > API", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "ID Business", "type": "string", "description": "Business identifier. Only required when using https://via.proabono.com endpoint", "required": false, "default": null } ] } } } ] }, { "slug": "processplan", "name": "Processplan", "logo": "https://logos.composio.dev/api/processplan", "description": "Visually track, manage and automate your business processes.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "processplan_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Regional Subdomain", "type": "string", "description": "Your ProcessPlan regional subdomain. This is sent to your email when you request it from ProcessPlan support.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your ProcessPlan API token. Navigate to your ProcessPlan account, click the dropdown on the top right, click on \"Preferences\", and scroll down to \"API Token\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "procfu", "name": "Procfu", "logo": "https://logos.composio.dev/api/procfu", "description": "ProcFu enhances Podio's capabilities by providing a suite of automation tools and functions, enabling users to create scripts, mini apps, and integrate with various services to streamline workflows.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "PROCFU_ARRAY_DIFF_DEL", "name": "Array Difference Deletions", "description": "Tool to return items removed when comparing two JSON arrays. Use when you have two arrays and need to know which elements were deleted." }, { "slug": "PROCFU_ARRAY_DIFF_NEW", "name": "Array Diff New", "description": "Tool to return items added in the second JSON array. Use when you need to identify new elements between two list versions. Example: Compare [1,3,4] vs [1,3,6] to get [6]." }, { "slug": "PROCFU_ARRAY_DIFF_SAME", "name": "Array Diff Same", "description": "Tool to get items present in both JSON arrays. Computes the intersection locally to avoid external API dependency. Rules: - Two items are considered equal if their JSON representations match (with sorted keys for objects). - The result contains unique items present in both arrays, preserving the order they appear in json_array_b." }, { "slug": "PROCFU_ARRAY_SORT", "name": "Array Sort", "description": "Tool to sort a JSON array of values. Use when you need to order elements ascending or descending." }, { "slug": "PROCFU_COPY_PODIO_FILES_TO_FTP", "name": "Copy Podio files to FTP", "description": "Tool to copy files matching a pattern from a Podio item to an FTP server. Use when you need to transfer specific files from Podio to an external FTP/SFTP location based on file name patterns." }, { "slug": "PROCFU_DUMMY_DATA", "name": "Generate dummy data", "description": "Tool to generate dummy data. Use when you need random emails, text, numbers, dates, people, addresses, or images for testing or placeholder data." }, { "slug": "PROCFU_GOOGLE_DRIVE_DELETE", "name": "Google Drive Delete", "description": "Tool to delete a Google Drive file or folder. Use after obtaining a valid Google Drive ID." }, { "slug": "PROCFU_OPEN_AI_GPT", "name": "Ask question to OpenAI GPT", "description": "Tool to ask a question to OpenAI GPT. Use when you need a conversational answer from GPT." }, { "slug": "PROCFU_OPEN_AI_IMAGE", "name": "Generate Image with OpenAI", "description": "Tool to generate an image via OpenAI API. Use when you need programmatic image creation from a text prompt." }, { "slug": "PROCFU_SHEETS_GET", "name": "Get Google Sheet contents as array", "description": "Tool to get sheet contents as array. Use when you need to retrieve Google Sheet data as an associative array." }, { "slug": "PROCFU_SHEETS_GET_METADATA", "name": "Get Google Sheets Metadata", "description": "Tool to retrieve metadata of a Google Sheets spreadsheet, including sheet names, IDs, and properties. Use when you need sheet-level details for a given spreadsheet ID." }, { "slug": "PROCFU_UPLOAD_PODIO_ITEM_IMAGE", "name": "Upload image to Podio item field", "description": "Tool to upload a remote image file by URL to a Podio item image field. Use when you need to attach an image from a web URL to a specific field in a Podio item." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "procfu_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "basic_encoded", "displayName": "ProcFu API Auth Token", "type": "string", "description": "Your ProcFu API Auth Token, required for running scripts or code from outside systems. This token is included as a Basic authorization header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "productlane", "name": "Productlane", "logo": "https://logos.composio.dev/api/productlane", "description": "Productlane is a customer support and feedback system designed for modern companies, built on Linear.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 39, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PRODUCTLANE_CREATE_CHANGELOG", "name": "Create Changelog Entry", "description": "Tool to create a new changelog entry in Productlane. Use when you need to document product updates, new features, or bug fixes. The content supports markdown format including headings, bulleted lists, and other markdown features." }, { "slug": "PRODUCTLANE_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company in Productlane. Use when you need to add a company record with optional domain-based contact auto-linking. Authentication required via Bearer token." }, { "slug": "PRODUCTLANE_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in your Productlane workspace with optional company linking. Use when adding new contacts to track customer interactions and feedback." }, { "slug": "PRODUCTLANE_CREATE_FEEDBACK", "name": "Create Feedback", "description": "Tool to create new feedback in Productlane. Use when submitting user feedback, feature requests, or bug reports through the API. This is equivalent to adding feedback through the Productlane widget or portal. Requires email, feedback text, and pain level." }, { "slug": "PRODUCTLANE_CREATE_INSIGHT", "name": "Create Insight", "description": "Tool to create a new insight/thread in Productlane workspace. Use when you need to capture customer feedback, feature requests, or bug reports." }, { "slug": "PRODUCTLANE_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread in Productlane. Use when you need to create feedback, feature requests, or bug reports from users." }, { "slug": "PRODUCTLANE_CREATE_UPVOTE", "name": "Create Upvote", "description": "Tool to create an upvote for a project or issue. Use when you need to record user support for a project or issue. Either projectId or issueId must be provided." }, { "slug": "PRODUCTLANE_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company by its unique ID. Use when you need to permanently remove a company and all associated data from Productlane." }, { "slug": "PRODUCTLANE_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by ID. Use when you need to permanently remove a contact from Productlane. Authentication is required and you can only delete your own contacts." }, { "slug": "PRODUCTLANE_DELETE_UPVOTE", "name": "Delete Upvote", "description": "Tool to delete an upvote by its unique ID. Use when removing a previously cast upvote on an issue or project." }, { "slug": "PRODUCTLANE_ENABLE_WIDGET", "name": "Enable Productlane Widget", "description": "Tool to enable the Productlane widget. Use after confirming the widget is currently disabled." }, { "slug": "PRODUCTLANE_GET_CHANGELOG", "name": "Get Changelog", "description": "Tool to retrieve a published changelog by ID from Productlane. Use when you need to fetch details about a specific changelog entry. No authorization is required for published changelogs." }, { "slug": "PRODUCTLANE_GET_COMPANY", "name": "Get Company by ID", "description": "Tool to retrieve a company by its unique ID. Use when you need detailed information about a specific company including its metadata, integrations, and associated data." }, { "slug": "PRODUCTLANE_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a contact by ID or email from Productlane. Use when you need to fetch details about a specific contact in your workspace. Authentication is required and you can only access contacts that belong to your workspace." }, { "slug": "PRODUCTLANE_GET_HELP_CENTER_ARTICLE", "name": "Get Help Center Article", "description": "Tool to retrieve a help center article by its ID. Use when you need to fetch details, content, and metadata for a specific help center article." }, { "slug": "PRODUCTLANE_GET_INSIGHT", "name": "Get Insight", "description": "Tool to retrieve an insight/thread by its ID. Use when you need to fetch details about a specific piece of feedback or customer insight." }, { "slug": "PRODUCTLANE_GET_ISSUE", "name": "Get Issue by ID", "description": "Tool to retrieve a specific issue by its ID from a workspace. Use when you need to fetch detailed information about an issue including its title, description, status, priority, and metadata." }, { "slug": "PRODUCTLANE_GET_LINEAR_OPTIONS", "name": "Get Linear Customer Options", "description": "Tool to retrieve available Linear customer statuses and tiers for your workspace. Use when you need to know the valid Linear options before creating or updating companies. Returns null for both statuses and tiers if Linear is not connected." }, { "slug": "PRODUCTLANE_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve a project by its ID from a workspace. Use when you need to fetch details about a specific project including its name, description, progress, and associated metadata." }, { "slug": "PRODUCTLANE_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to fetch workspace details by ID. Use when you need to retrieve workspace configuration, branding, or latest changelog information." }, { "slug": "PRODUCTLANE_INVITE_USER", "name": "Invite User to Workspace", "description": "Tool to invite a new user to your Productlane workspace. An invitation email with a join link will be sent to the user. Only admins can invite users." }, { "slug": "PRODUCTLANE_LIST_CHANGELOGS", "name": "List Changelogs", "description": "Tool to list all published changelogs for a workspace by ID. Use when you need to retrieve changelog entries for a specific Productlane workspace." }, { "slug": "PRODUCTLANE_LIST_COMPANIES", "name": "List Companies", "description": "Tool to list all companies in Productlane. Use 'take' and 'skip' parameters to paginate through results. Supports filtering by domain or name." }, { "slug": "PRODUCTLANE_LIST_CONTACTS", "name": "List contacts", "description": "Tool to retrieve all contacts for your workspace. Use when you need to list contacts with optional pagination support." }, { "slug": "PRODUCTLANE_LIST_HELP_CENTER_ARTICLES", "name": "List Help Center Articles", "description": "Tool to list all help center articles for a specific workspace. Use when you need to retrieve documentation or support articles from a workspace's help center." }, { "slug": "PRODUCTLANE_LIST_INSIGHTS", "name": "List Insights", "description": "Tool to list all threads/insights for your workspace with optional filtering. Use when you need to retrieve insights filtered by state, issue, or project, with support for pagination via 'take' and 'skip' parameters." }, { "slug": "PRODUCTLANE_LIST_ISSUES", "name": "List Productlane Issues", "description": "Tool to retrieve all issues from a Productlane workspace. Use when you need to fetch issues from a workspace that has their portal/roadmap published." }, { "slug": "PRODUCTLANE_LIST_MEMBERS", "name": "List Workspace Members", "description": "Tool to retrieve all members of your workspace with their roles and user information. Returns memberships sorted by role (admins first)." }, { "slug": "PRODUCTLANE_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve all projects within a workspace. Use when you need to list available projects from a published Productlane workspace portal or roadmap." }, { "slug": "PRODUCTLANE_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company record in Productlane by its unique identifier. Use when you need to modify company details such as name, domains, revenue, size, status, tier, or external IDs. All fields except the company ID are optional." }, { "slug": "PRODUCTLANE_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Productlane. Use when you need to modify contact details such as name, email, or company associations. Users can only update their own contacts." }, { "slug": "PRODUCTLANE_UPDATE_INSIGHT", "name": "Update Insight", "description": "Tool to update an existing insight (thread) by ID. Use when you need to modify insight properties such as title, state, pain level, or associations with projects, companies, or contacts." }, { "slug": "PRODUCTLANE_WIDGET_CLOSE", "name": "Close Productlane Widget", "description": "Tool to close the Productlane widget. Use when you need to hide the widget after completing an interaction." }, { "slug": "PRODUCTLANE_WIDGET_DISABLE", "name": "Disable Productlane Widget", "description": "Tool to disable the Productlane widget across the entire page. Use when needing to turn off the widget programmatically." }, { "slug": "PRODUCTLANE_WIDGET_OFF_EVENT", "name": "Widget off event", "description": "Tool to remove a previously registered widget event listener. Use after widget setup to deregister callbacks." }, { "slug": "PRODUCTLANE_WIDGET_ON_EVENT", "name": "Register Widget Event Listener", "description": "Tool to register a listener for Productlane widget events. Use after widget initialization to run custom logic on 'open', 'close', 'submit', or 'widgetLoaded' events." }, { "slug": "PRODUCTLANE_WIDGET_OPEN", "name": "Open Productlane Widget", "description": "Tool to generate a JavaScript snippet that opens the Productlane widget. Use when you need to programmatically display the widget on your front-end after page load." }, { "slug": "PRODUCTLANE_WIDGET_OPEN_DOCS", "name": "Open Productlane Docs Article in Widget", "description": "Tool to open a specific docs article in the Productlane widget. Use after widget initialization and load." }, { "slug": "PRODUCTLANE_WIDGET_TOGGLE", "name": "Toggle Productlane Widget", "description": "Tool to toggle the Productlane widget between open and closed states. Use after widget initialization." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "productlane_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Productlane API Key", "type": "string", "description": "Your Productlane API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "profitwell", "name": "Profitwell", "logo": "https://logos.composio.dev/api/profitwell", "description": "Subscription analytics and revenue reporting platform", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "profitwell_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "To retrieve your API token, navigate to Account Settings > Integrations > ProfitWell API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "project_broadcast", "name": "Project Broadcast", "logo": "https://logos.composio.dev/api/project_broadcast", "description": "SMS marketing platform for broadcast messaging, contact management, and campaign automation", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "project_broadcast_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API Key from Project Broadcast app: More tab (three stacked bars) -> Get API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "project_bubble", "name": "Project Bubble", "logo": "https://logos.composio.dev/api/project_bubble", "description": "ProProfs Project is a project management tool that helps teams plan, collaborate, and deliver projects efficiently.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROJECT_BUBBLE_DATA_API_GET_DATA_TYPE_FIELDS", "name": "Data API Get Data Type Fields", "description": "Retrieves the field schema for a specific Bubble data type, returning metadata about each field including its name, data type, and whether it's required. Use this after discovering available data types to understand their structure before querying or manipulating records." }, { "slug": "PROJECT_BUBBLE_DATA_API_GET_OBJECTS", "name": "Data API Get Objects", "description": "Tool to retrieve a list of objects for a specified data type. Use when you need to list items with optional filters, sorting, and pagination." }, { "slug": "PROJECT_BUBBLE_DATA_API_GET_RECORD", "name": "Get Record By ID", "description": "Retrieves a single record by its unique ID from a specified data type (table/collection). Use this when you need to fetch detailed information about a specific record and you already know its ID. The response includes all fields defined for that record, plus metadata like creation and modification dates. Common use cases: - Fetching full details of a specific team, user, or project by ID - Retrieving a record after getting its ID from a list/search operation - Accessing individual record properties for further processing Note: Returns an error if the record doesn't exist or you don't have permission to access it." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "project_bubble_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your unique API key, available on the 'My Account' page of ProProfs Project.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account Domain", "type": "string", "description": "Your ProProfs Project domain, e.g., 'mydomain.projectbubble.com'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "promptmate_io", "name": "Promptmate.io", "logo": "https://logos.composio.dev/api/promptmate_io", "description": "Promptmate.io enables users to build AI-powered applications by integrating various AI systems like ChatGPT, Google Gemini, and Stability AI, offering features such as multi-step AI workflows, bulk processing, and automation through Zapier.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROMPTMATE_IO_CREATE_WEBHOOK", "name": "Create webhook", "description": "Tool to create a new webhook. Use when you need to subscribe an endpoint URL to job or row events." }, { "slug": "PROMPTMATE_IO_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook by its unique ID. Use after confirming the webhookId to remove." }, { "slug": "PROMPTMATE_IO_GET_APP_JOB", "name": "Get App Job Status", "description": "Tool to get the status and result of a specific app job by its ID. Use when you need to check the status or retrieve results of a previously submitted job." }, { "slug": "PROMPTMATE_IO_GET_USER_INFO", "name": "Get User Info", "description": "Tool to get user information for the authenticated API key owner. Use when you need to retrieve details about the current user." }, { "slug": "PROMPTMATE_IO_LIST_APPS", "name": "List PromptMate Apps", "description": "Tool to list all available apps. Use when you need to retrieve the catalogue of PromptMate apps." }, { "slug": "PROMPTMATE_IO_LIST_COUNTRIES", "name": "List Countries", "description": "Tool to list available countries for app configuration. Use when you need to retrieve the list of supported countries." }, { "slug": "PROMPTMATE_IO_LIST_LANGUAGES", "name": "List Available Languages", "description": "Tool to list available languages for app configuration. Use when you need to retrieve supported language options." }, { "slug": "PROMPTMATE_IO_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all available projects. Use when you need to retrieve the list of PromptMate projects." }, { "slug": "PROMPTMATE_IO_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all available templates. Use when you need to retrieve the catalogue of PromptMate templates." }, { "slug": "PROMPTMATE_IO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all configured webhooks. Use when you need to inspect current webhook subscriptions." }, { "slug": "PROMPTMATE_IO_USE_TEMPLATE", "name": "Use Template", "description": "Tool to use a specific template to process data. Use when you need to apply a template with optional data parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "promptmate_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Promptmate.io API Key", "type": "string", "description": "Your API key for authenticating requests to the promptmate.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "proofly", "name": "Proofly", "logo": "https://logos.composio.dev/api/proofly", "description": "Proofly is a social proof toolkit that helps boost website conversions by displaying real-time notifications of customer activities.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROOFLY_GET_ACTIVITY_LOGS", "name": "Get Activity Logs", "description": "Tool to retrieve activity logs of the user. Use when needing recent actions; call after confirming authentication." }, { "slug": "PROOFLY_GET_CAMPAIGNS", "name": "Get Proofly Campaigns", "description": "Tool to retrieve all Proofly campaigns. Use after authenticating to list your campaigns." }, { "slug": "PROOFLY_GET_USER", "name": "Get Proofly User Info", "description": "Tool to retrieve general information of the authenticated user. Use after authentication to fetch user profile details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "proofly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Proofly API Key", "type": "string", "description": "The API key required for authenticating requests to the Proofly API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "proxiedmail", "name": "Proxiedmail", "logo": "https://logos.composio.dev/api/proxiedmail", "description": "ProxiedMail offers privacy-focused email services, including automatic creation of proxy emails and receiving emails via webhooks.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PROXIEDMAIL_CREATE_WEBHOOK_RECEIVER", "name": "Create webhook receiver", "description": "Tool to create a webhook receiver for incoming email callbacks. Use when you need a unique endpoint to capture proxiedmail webhook events." }, { "slug": "PROXIEDMAIL_GET_API_TOKEN", "name": "Get API Token", "description": "Tool to retrieve a permanent API token. Use after obtaining a Bearer token from the auth endpoint (POST /api/v1/auth)." }, { "slug": "PROXIEDMAIL_GET_WEBHOOK_DATA", "name": "Get webhook data", "description": "Tool to retrieve data from a webhook receiver. Returns the payload sent to the webhook's call_url, status info about whether a callback was received, and the HTTP method used." }, { "slug": "PROXIEDMAIL_LIST_PROXY_BINDINGS", "name": "List proxy bindings", "description": "Tool to fetch a list of proxy bindings. Use after authentication to list all proxy bindings associated with the user." }, { "slug": "PROXIEDMAIL_UPDATE_PROXY_BINDING", "name": "Update Proxy Binding", "description": "Tool to update an existing proxy binding. Use after obtaining the binding ID to modify its addresses or settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "proxiedmail_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ProxiedMail API Key", "type": "string", "description": "The API key used for authenticating requests to the ProxiedMail API. This should be provided in the \"Token\" header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "push_by_techulus", "name": "Push by Techulus", "logo": "https://logos.composio.dev/api/push_by_techulus", "description": "Push by Techulus offers a cross-platform solution for sending push notifications via code and no-code to deliver transactional information in real-time.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PUSH_BY_TECHULUS_DELETE_TEAM_MEMBER_OR_INVITE", "name": "Delete Team Member or Invite", "description": "Tool to remove a user from the team or revoke a pending invitation. Use when you need to revoke team access or cancel an invite for a specific email address." }, { "slug": "PUSH_BY_TECHULUS_INVITE_USER_TO_TEAM", "name": "Invite User to Team", "description": "Tool to invite a user to a team by sending an email invitation. Use when you need to add a new member to an existing team." }, { "slug": "PUSH_BY_TECHULUS_SEND_NOTIFICATION_ASYNC", "name": "Send Push Notification Async", "description": "Tool to send push notification asynchronously to all devices in an account or team. Use when you have more than 10 devices for better performance." }, { "slug": "PUSH_BY_TECHULUS_SEND_NOTIFICATION_SYNC", "name": "Send Notification Sync", "description": "Tool to send push notifications synchronously to all linked devices. Use when you need immediate confirmation of notification delivery to all devices or teams." }, { "slug": "PUSH_BY_TECHULUS_SEND_NOTIFICATION_TO_GROUP", "name": "Send Notification to Device Group", "description": "Tool to send push notification to a specific device group. Use when you need to notify multiple devices in a group with customizable title, body, sound, and media options." }, { "slug": "PUSH_BY_TECHULUS_SEND_NOTIFICATION_WEBHOOK_POST", "name": "Send Notification via Webhook POST", "description": "Tool to send push notifications to all devices associated with a specific API key via POST request. Use when you need to deliver notifications through webhook integrations or team-based distribution." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "push_by_techulus_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Push by Techulus API key. Navigate to your Push by Techulus account, sign in, and go to Integrations > API Key to retrieve it.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pushbullet", "name": "Pushbullet", "logo": "https://logos.composio.dev/api/pushbullet", "description": "Pushbullet enables seamless sharing of notifications and files across devices.", "category": "notifications", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PUSHBULLET_CREATE_CHAT", "name": "Create Chat", "description": "Tool to create a new chat with the specified email address. Use when you need to initiate a conversation thread by email." }, { "slug": "PUSHBULLET_CREATE_DEVICE", "name": "Register Device", "description": "Tool to register a new device under the current user's account. Use when adding a new hardware or app device to Pushbullet." }, { "slug": "PUSHBULLET_CREATE_PUSH", "name": "Create Push", "description": "Tool to send a new push (note, link, or file) to a device, user, channel, or client. Use when you need to share content to a specific target. Example: \"Send a link to https://example.com to device abc123\"." }, { "slug": "PUSHBULLET_DELETE_ALL_PUSHES", "name": "Delete All Pushes", "description": "Tool to delete all pushes for the current user asynchronously. Use when you need to bulk-clear all existing pushes in one call." }, { "slug": "PUSHBULLET_DELETE_CHAT", "name": "Delete Chat", "description": "Tool to delete a chat by its identifier. Use when you need to remove a chat from your Pushbullet account after confirming its identifier." }, { "slug": "PUSHBULLET_DELETE_DEVICE", "name": "Delete Pushbullet Device", "description": "Tool to remove a device by its identifier. Use when you need to delete a device from your Pushbullet account after confirming its identifier." }, { "slug": "PUSHBULLET_DELETE_PUSH", "name": "Delete Push", "description": "Tool to delete a specific push by its identifier. Use when you need to remove a push after confirming its identifier." }, { "slug": "PUSHBULLET_GET_USER", "name": "Get current user", "description": "Tool to retrieve the currently authenticated user's profile. Use when you need to verify the access token or display the current user's details." }, { "slug": "PUSHBULLET_LIST_CHATS", "name": "List Chats", "description": "Tool to list all chat objects for the current user. Use when you need the full set of chat threads before sending or muting messages." }, { "slug": "PUSHBULLET_LIST_DEVICES", "name": "List Devices", "description": "Tool to list all registered devices for the current user. Use after obtaining a valid access token." }, { "slug": "PUSHBULLET_LIST_PUSHES", "name": "List Pushes", "description": "Tool to list pushes with optional filtering and pagination. Use when retrieving or syncing pushes after a certain time." }, { "slug": "PUSHBULLET_UPDATE_CHAT", "name": "Mute or Unmute Chat", "description": "Tool to mute or unmute an existing chat. Use when adjusting notification settings for a specific chat by its identifier." }, { "slug": "PUSHBULLET_UPDATE_DEVICE", "name": "Update Device", "description": "Tool to update metadata for a device by its identifier. Use when changing a device's nickname, model, or other settings." }, { "slug": "PUSHBULLET_UPDATE_PUSH", "name": "Update Push", "description": "Tool to update a push (dismiss or modify list items) by its identifier. Use when marking a push as dismissed or updating list push items." }, { "slug": "PUSHBULLET_UPLOAD_REQUEST", "name": "Upload Request", "description": "Tool to obtain a signed upload URL for a file before pushing. Use when you need to upload file content via the signed S3 form data." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "pushbullet_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "everything" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "pushbullet_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Pushbullet Access Token", "type": "string", "description": "The access token used to authenticate API requests. Obtain this token from your Pushbullet Account Settings page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pusher", "name": "Pusher", "logo": "https://logos.composio.dev/api/pusher", "description": "Pusher provides hosted APIs for real-time communication, enabling instant data delivery through WebSockets and HTTP API", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pusher_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Key", "type": "string", "description": "Your Pusher application key from the App Keys section", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Secret", "type": "string", "description": "Your Pusher application secret for HMAC signature generation", "required": true, "default": null }, { "name": "generic_id", "displayName": "App ID", "type": "string", "description": "Your Pusher application ID", "required": true, "default": null }, { "name": "generic_id_2", "displayName": "Cluster", "type": "string", "description": "Your Pusher cluster (e.g., mt1, us2, eu, ap1)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "pushover", "name": "Pushover", "logo": "https://logos.composio.dev/api/pushover", "description": "Pushover is a service that enables real-time notifications to your devices through simple API integration.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "PUSHOVER_CANCEL_RECEIPT_RETRIES", "name": "Cancel Receipt Retries", "description": "Tool to cancel further retries for an emergency-priority message before its expiry. Use when you no longer want Pushover to keep attempting delivery of an urgent notification." }, { "slug": "PUSHOVER_CANCEL_RETRIES_BY_TAG", "name": "Cancel Retries by Tag", "description": "Tool to cancel retries for all active emergency-priority Pushover messages matching a specific tag. Use after sending emergency messages when you want to stop further retries for a given tag." }, { "slug": "PUSHOVER_CLIENT_ACK_DELETE_UP_TO_ID", "name": "Client Acknowledge Delete Up To ID", "description": "Tool to delete/acknowledge device messages up to a specific message ID. Use when you want to clear all messages up to a known ID; call after retrieving the latest message ID." }, { "slug": "PUSHOVER_CLIENT_FETCH_MESSAGES", "name": "Fetch Pending Messages", "description": "Tool to download pending messages for a registered device. Use after device registration to retrieve messages queued server-side." }, { "slug": "PUSHOVER_CLIENT_LOGIN", "name": "Pushover Client Login", "description": "Tool to authenticate a Pushover user by email and password. Use when you need to obtain a user key and session secret. Include twofa code if prompted by a prior HTTP 412 response." }, { "slug": "PUSHOVER_CLIENT_REALTIME_WEBSOCKET", "name": "Client Realtime WebSocket Connection", "description": "Tool to establish a secure WebSocket connection for real-time message notifications. Use after obtaining device ID and secret to receive instant push events." }, { "slug": "PUSHOVER_CLIENT_REGISTER_DEVICE", "name": "Register Open Client Device", "description": "Tool to register an Open Client desktop device. Use when you have a session secret from users/login to obtain a device ID." }, { "slug": "PUSHOVER_GET_APP_ICON_IMAGE", "name": "Get Application Icon Image", "description": "Tool to fetch an application icon PNG by icon identifier. Use when you need to retrieve and cache the Pushover app icon image." }, { "slug": "PUSHOVER_GET_APP_LIMITS", "name": "Get App Limits", "description": "Tool to retrieve the current monthly message limit, remaining messages, and reset time for a Pushover application. Use when monitoring your monthly quota before sending messages." }, { "slug": "PUSHOVER_GET_APP_TOKEN", "name": "Get Application Token", "description": "Tool to fetch stored Pushover application API token. Use when supplying credentials to other Pushover actions securely." }, { "slug": "PUSHOVER_GET_RECEIPT_STATUS", "name": "Get Receipt Status", "description": "Tool to poll the status of an emergency-priority notification receipt. Use after sending an emergency notification to check its delivery and acknowledgment. Use when you have the `receipt` from an emergency-priority message and need to track its retries and acknowledgment status." }, { "slug": "PUSHOVER_GET_TEAM_API_TOKEN", "name": "Get Team API Token", "description": "Tool to fetch stored Pushover for Teams API token. Use when supplying team credentials to other Pushover Teams actions securely." }, { "slug": "PUSHOVER_GLANCES_UPDATE", "name": "Glances Update", "description": "Tool to update a user's Glances widget data without sending a notification. Use after preparing glance data fields: title, text, subtext, count, or percent." }, { "slug": "PUSHOVER_GROUP_ADD_USER", "name": "Add User to Group", "description": "Tool to add an existing Pushover user to a delivery group. Use when you need to include a user in a group by their user key." }, { "slug": "PUSHOVER_GROUP_CREATE", "name": "Create Group", "description": "Tool to create a new Delivery Group. Use when you need to group multiple recipients under one group key before sending notifications." }, { "slug": "PUSHOVER_GROUP_DISABLE_USER", "name": "Disable Group User", "description": "Tool to temporarily disable deliveries to a user or specific device within a Pushover group. Use when suspending notifications for a user (or device) in an active group." }, { "slug": "PUSHOVER_GROUP_ENABLE_USER", "name": "Group Enable User", "description": "Tool to re-enable deliveries to a previously disabled user (or specific device) within a Pushover group. Use after disabling a user's or device's notifications to restore delivery." }, { "slug": "PUSHOVER_GROUP_GET", "name": "Get Group Details", "description": "Tool to retrieve details for a Delivery Group. Use when you need to fetch a group's name and member list." }, { "slug": "PUSHOVER_GROUP_LIST", "name": "List Delivery Groups", "description": "Tool to list all Delivery Groups. Use when you need to retrieve your account's delivery groups after obtaining a valid API token." }, { "slug": "PUSHOVER_GROUP_REMOVE_USER", "name": "Remove User from Group", "description": "Tool to remove a user (or optionally a specific device) from a Pushover delivery group. Use when you need to revoke a user's membership so they stop receiving group notifications." }, { "slug": "PUSHOVER_GROUP_RENAME", "name": "Rename Delivery Group", "description": "Tool to rename an existing Delivery Group. Use after confirming the group_key to update a group's name." }, { "slug": "PUSHOVER_LICENSE_ASSIGN", "name": "Assign License", "description": "Tool to assign a pre-paid license credit to a Pushover user by key or email. Use when you need to allocate a license and optionally restrict to a specific platform." }, { "slug": "PUSHOVER_LICENSE_CHECK_CREDITS", "name": "Check License Credits", "description": "Tool to retrieve remaining license credits for a Pushover application. Use when monitoring your licensing quota before assigning new licenses." }, { "slug": "PUSHOVER_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a push notification with optional title, URL, priority, sound, attachments, and filters." }, { "slug": "PUSHOVER_STORE_TEAM_API_TOKEN", "name": "Store Team API Token", "description": "Tool to securely store a Pushover for Teams API token. Use after obtaining a team API token to enable subsequent Teams actions." }, { "slug": "PUSHOVER_SUBSCRIPTION_FLOW", "name": "Subscription Flow", "description": "Tool to validate and return a Pushover subscription code. Use when Pushover does not support programmatic subscription creation and you need to confirm your code before redirecting users." }, { "slug": "PUSHOVER_TEAMS_ADD_USER", "name": "Add Team User", "description": "Tool to add a user to a Pushover for Teams organization. Use when inviting a user with optional admin rights, instant login link, or custom delivery group." }, { "slug": "PUSHOVER_TEAMS_REMOVE_USER", "name": "Remove User from Team", "description": "Tool to remove a user from a Pushover for Teams organization. Use when you need to revoke a user's access after confirming their email should be removed from the team." }, { "slug": "PUSHOVER_VALIDATE_USER_OR_GROUP", "name": "Validate User or Group", "description": "Tool to validate a Pushover user or group key for deliverability. Use before sending notifications to ensure the key (and optional device) is valid and has active devices." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "pushover_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Pushover Application API Token", "type": "string", "description": "Your application's API token, obtained after registering your application on Pushover.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Pushover User Key", "type": "string", "description": "The user key of the recipient, found on your Pushover dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "qdrant", "name": "Qdrant", "logo": "https://logos.composio.dev/api/qdrant", "description": "Vector database for AI applications with built-in filtering and payload support", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "qdrant_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Cluster URL", "type": "string", "description": "Full Qdrant cluster URL including port (e.g., https://xyz-example.eu-central.aws.cloud.qdrant.io:6333)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Qdrant API key from Cloud Console or self-hosted configuration", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "qstash", "name": "Qstash", "logo": "https://logos.composio.dev/api/qstash", "description": "QStash is an HTTP based messaging and scheduling solution for the serverless and edge runtimes.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "qstash_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "QStash Token", "type": "string", "description": "Your QStash token from the Upstash Console (https://console.upstash.com/qstash)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "quaderno", "name": "Quaderno", "logo": "https://logos.composio.dev/api/quaderno", "description": "Quaderno is a tax compliance platform that automates tax calculations, invoicing, and reporting for businesses worldwide.", "category": "taxes", "authSchemes": [ "API_KEY" ], "toolCount": 76, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "QUADERNO_ADD_EXPENSE_PAYMENT", "name": "Add Expense Payment", "description": "Adds a payment to an existing expense in Quaderno. Use when you need to record a payment received for an expense. Returns the payment record with ID, amount in cents, and payment method details." }, { "slug": "QUADERNO_CALCULATE_TAX_RATE", "name": "Calculate Tax Rate", "description": "Tool to calculate applicable tax rate for given address and transaction type. Use when you need tax details before invoicing." }, { "slug": "QUADERNO_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact (customer or vendor). Use when you need to add a person or company contact in Quaderno." }, { "slug": "QUADERNO_CREATE_COUPON", "name": "Create Coupon", "description": "Tool to create a new discount coupon in Quaderno. Use when you need to create either a percentage-based or fixed-amount discount coupon. Either percent_off or amount_off must be provided (but not both). For amount_off coupons, currency is required." }, { "slug": "QUADERNO_CREATE_ESTIMATE", "name": "Create Estimate", "description": "Creates a new estimate/quote in Quaderno for a customer with line items. Returns estimate with ID, number, permalink, and total amounts in cents. Use this when you need to create a cost estimate or quote for a project or service." }, { "slug": "QUADERNO_CREATE_EVIDENCE", "name": "Create Evidence", "description": "Tool to create a new location evidence for tax compliance. Use when you need to create evidence records with billing country, IP address, or bank country information for verifying customer location." }, { "slug": "QUADERNO_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a business expense in Quaderno. Use when you need to record an expense from a supplier or vendor with line items and optional attachments." }, { "slug": "QUADERNO_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new invoice in Quaderno for a customer with line items. Returns invoice with ID, number, permalink, PDF URL, and total amounts in cents. Use this when you need to bill a customer for products or services." }, { "slug": "QUADERNO_CREATE_PRODUCT", "name": "Create Product", "description": "Creates a new product that can be used as a line item in invoices, credit notes, and expenses. Use this to register products with their SKU, pricing, tax classification, and other details in your Quaderno account." }, { "slug": "QUADERNO_CREATE_RECEIPT", "name": "Create Receipt", "description": "Creates a new receipt in Quaderno documenting payment for goods or services. Returns receipt with ID, number, permalink, PDF URL, and total amounts. Use when you need to create a receipt for a completed transaction." }, { "slug": "QUADERNO_CREATE_RECURRING", "name": "Create Recurring", "description": "Tool to create a recurring document in Quaderno that automatically generates invoices on a schedule. Use when setting up subscription billing or periodic invoices for a customer." }, { "slug": "QUADERNO_CREATE_REPORT_REQUEST", "name": "Create Report Request", "description": "Tool to request a new report generation in Quaderno. Use when you need to generate tax summaries, invoice lists, or credit note lists for a specific date range. Reports are generated asynchronously - this action returns immediately with a 'pending' state. Use the List Reporting Requests action to poll for completion status and retrieve the download URL when the report is ready." }, { "slug": "QUADERNO_CREATE_TAX_ID", "name": "Create Tax ID", "description": "Tool to create a tax ID in a specific jurisdiction. Use when you need to register your business's tax identification number (such as VAT) in a tax jurisdiction." }, { "slug": "QUADERNO_CREATE_TRANSACTION", "name": "Create Transaction", "description": "Tool to create a sale or refund transaction in Quaderno. Use when you need to record revenue or refunds - the API automatically generates invoices/credit notes when autosend is enabled. Preferred API for automated invoice generation." }, { "slug": "QUADERNO_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook in Quaderno to receive event notifications. Use when you need to subscribe to real-time events like invoice.created or contact.created. Quaderno signs all webhook events with X-Quaderno-Signature header using HMAC-SHA1. Retry logic: 1 attempt/hour for up to 72 hours." }, { "slug": "QUADERNO_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to permanently delete a contact by ID. Use when you have confirmed the contact ID is correct and no longer need the contact." }, { "slug": "QUADERNO_DELETE_COUPON", "name": "Delete Coupon", "description": "Tool to permanently delete a coupon. Use when you have confirmed the coupon ID is correct and need to remove it permanently (cannot be undone)." }, { "slug": "QUADERNO_DELETE_ESTIMATE", "name": "Delete Estimate", "description": "Permanently deletes an estimate from Quaderno by its ID. This action removes the estimate record from your Quaderno account. Use this when you need to delete an estimate that was created in error or is no longer needed. The deletion is permanent and cannot be undone. Returns an empty response on success (HTTP 204 No Content)." }, { "slug": "QUADERNO_DELETE_EXPENSE", "name": "Delete Expense", "description": "Permanently deletes an expense from Quaderno by its ID. This action removes the expense record from your Quaderno account. Use this when you need to delete an expense that was created in error or is no longer needed. The deletion is permanent and cannot be undone. Returns an empty response on success (HTTP 204 No Content)." }, { "slug": "QUADERNO_DELETE_PRODUCT", "name": "Delete Product", "description": "Tool to permanently delete a product by ID. Use when you have confirmed the product ID is correct and no longer need the product." }, { "slug": "QUADERNO_DELETE_RECURRING", "name": "Delete Recurring", "description": "Tool to permanently delete a recurring by ID. Use when you need to remove a recurring document from Quaderno. This action is irreversible." }, { "slug": "QUADERNO_DELETE_TAX_ID", "name": "Delete Tax ID", "description": "Permanently deletes a registered tax ID from your Quaderno account. Use this when you need to remove a tax jurisdiction registration that is no longer needed." }, { "slug": "QUADERNO_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to permanently delete a webhook by ID. Use when you have confirmed the webhook ID is correct and no longer need the webhook." }, { "slug": "QUADERNO_DELIVER_CREDIT_NOTE", "name": "Deliver Credit Note", "description": "Sends a credit note to the customer via email. The contact associated with the credit note must have a valid email address. Returns the credit note details including the delivery email and PDF link." }, { "slug": "QUADERNO_DELIVER_ESTIMATE", "name": "Deliver Estimate", "description": "Delivers an estimate to the customer via email. The estimate's contact must have a valid email address. Use this after creating or finalizing an estimate to send it to the customer." }, { "slug": "QUADERNO_DELIVER_INVOICE", "name": "Deliver Invoice", "description": "Delivers an invoice to the customer via email. The invoice's contact must have a valid email address. Use this after creating or finalizing an invoice to send it to the customer." }, { "slug": "QUADERNO_DELIVER_RECEIPT", "name": "Deliver Receipt", "description": "Sends a receipt to the customer via email. The contact associated with the receipt must have a valid email address. Returns the receipt details including the delivery email and PDF link." }, { "slug": "QUADERNO_GET_AUTHORIZATION", "name": "Get Authorization", "description": "Tool to retrieve account credentials and verify API access. Use to validate authentication and get account details." }, { "slug": "QUADERNO_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to retrieve the details of an existing estimate by ID. Use when you need full estimate information for review or conversion to invoice." }, { "slug": "QUADERNO_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts, paginated and filterable by name, email, or tax ID. Use when you need to retrieve subsets of your contacts." }, { "slug": "QUADERNO_LIST_COUPONS", "name": "List Coupons", "description": "Tool to list all coupons. Use when you need to retrieve available coupons sorted by creation date (newest first)." }, { "slug": "QUADERNO_LIST_CREDITS", "name": "List Credits", "description": "Tool to list all credit notes from Quaderno. Use when you need to retrieve credit notes with optional filtering by search query, date range, state, or processor ID." }, { "slug": "QUADERNO_LIST_ESTIMATES", "name": "List Estimates", "description": "Tool to list all estimates in the account, paginated and sorted by creation date (newest first). Use when you need to retrieve estimates, optionally filtered by contact name, state, or date range." }, { "slug": "QUADERNO_LIST_EVIDENCE", "name": "List Evidence", "description": "Tool to list all evidence objects. Use when you need to retrieve location evidences, optionally filtered by state or document ID." }, { "slug": "QUADERNO_LIST_EXPENSES", "name": "List Expenses", "description": "List all expenses from Quaderno with pagination support. Returns expenses in reverse chronological order (newest first). Each expense includes complete details: contact information, line items, payments, taxes, and custom metadata. Use the 'limit' parameter to control page size (1-100, default 25). Use 'created_before' with an expense ID to paginate through results. Example: List first 50 expenses: ListExpenses(limit=50) Example: Get next page: ListExpenses(limit=50, created_before=168878750)" }, { "slug": "QUADERNO_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list all invoices from Quaderno with filtering support. Use when you need to retrieve invoices by various criteria such as number, customer name, date range, or payment status." }, { "slug": "QUADERNO_LIST_JURISDICTIONS", "name": "List Tax Jurisdictions", "description": "Tool to list all tax jurisdictions. Use when you need supported jurisdictions for tax calculations." }, { "slug": "QUADERNO_LIST_PRODUCTS", "name": "List Products", "description": "List all products (goods and services) from your Quaderno account. Supports filtering by name or SKU code using the 'q' parameter. Returns product details including pricing, tax settings, and subscription information." }, { "slug": "QUADERNO_LIST_RECEIPTS", "name": "List Receipts", "description": "Tool to list all receipts from Quaderno with optional filtering by search query, date range, payment state, processor ID, or customer ID. Use when you need to retrieve receipts for reporting, reconciliation, or customer queries." }, { "slug": "QUADERNO_LIST_RECURRINGS", "name": "List Recurrings", "description": "List all recurring documents (invoices, expenses, or estimates) from your Quaderno account. Recurring documents automatically generate new documents at specified intervals. Returns documents in reverse chronological order with support for pagination using the 'created_before' parameter." }, { "slug": "QUADERNO_LIST_REGISTERED_TAX_I_DS", "name": "List Registered Tax IDs", "description": "Tool to list all registered tax IDs. Use when retrieving jurisdictions where your business has registered tax IDs. Supports optional cursor-based pagination." }, { "slug": "QUADERNO_LIST_REPORTING_REQUESTS", "name": "List Reporting Requests", "description": "Retrieves all reporting requests for the account with their current status and download URLs. Use this tool to check the status of previously created reporting requests and obtain download URLs for completed reports. Reports are generated asynchronously, so use this endpoint to poll for completion status. When a report's state is 'succeeded', the report_url field will contain a temporary download link for the generated CSV file. Common use cases: - Check if a report generation request has completed - Retrieve download URLs for completed reports - Monitor all pending report requests - View historical report generations with their parameters (date ranges, report types)" }, { "slug": "QUADERNO_LIST_SESSIONS", "name": "List Sessions", "description": "List Quaderno Checkout sessions with optional filtering and pagination. Supports cursor-based pagination using 'created_before' and 'limit' parameters, and filtering by session status. Use this to retrieve checkout sessions from your Quaderno account." }, { "slug": "QUADERNO_LIST_TAX_CODES", "name": "List Tax Codes", "description": "Tool to list all supported tax codes. Use when you need to retrieve the full set of tax codes for classifying items." }, { "slug": "QUADERNO_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks. Use when you need to retrieve webhook configurations." }, { "slug": "QUADERNO_MARK_INVOICE_UNCOLLECTIBLE", "name": "Mark Invoice Uncollectible", "description": "Tool to mark an invoice as uncollectible (bad debt). Use when an invoice cannot be collected and should be written off as a loss." }, { "slug": "QUADERNO_PING", "name": "Ping API Service", "description": "Tool to check if the Quaderno API service is up and verify credentials. Use when testing API connectivity or checking service status before making actual requests." }, { "slug": "QUADERNO_RECORD_INVOICE_PAYMENT", "name": "Record Invoice Payment", "description": "Tool to record a payment on an existing invoice. Use when a customer has paid an invoice and you need to record the payment details in Quaderno." }, { "slug": "QUADERNO_REMOVE_INVOICE_PAYMENT", "name": "Remove Invoice Payment", "description": "Tool to remove a payment from an invoice. Use when you need to delete a payment record that was applied to an invoice in error or needs to be adjusted." }, { "slug": "QUADERNO_RETRIEVE_CONTACT", "name": "Retrieve Contact", "description": "Tool to retrieve details of an existing contact by ID. Use after confirming contact ID." }, { "slug": "QUADERNO_RETRIEVE_CONTACT_BY_PROCESSOR_ID", "name": "Retrieve Contact by Processor ID", "description": "Tool to retrieve a contact by external payment processor customer ID and gateway name. Use when you have the processor's customer ID instead of Quaderno's internal contact ID." }, { "slug": "QUADERNO_RETRIEVE_COUPON", "name": "Retrieve Coupon", "description": "Retrieve detailed information about a specific coupon by its ID. Use this action when you need to fetch coupon details like discount percentage, redemption limits, or expiration dates. You must first obtain a valid coupon ID from the List Coupons action or from a coupon creation operation. Returns coupon code, discount amount/percentage, redemption statistics, and validity information." }, { "slug": "QUADERNO_RETRIEVE_CREDIT", "name": "Retrieve Credit Note", "description": "Tool to retrieve details of an existing credit note by ID. Use when you need full credit note details for refund processing or reporting." }, { "slug": "QUADERNO_RETRIEVE_EVIDENCE", "name": "Retrieve Evidence", "description": "Retrieves a specific evidence object by its ID. Evidence objects contain location proofs (billing country, IP address, bank country) used for tax compliance. Use this when you need detailed information about a specific evidence record, typically after obtaining the evidence ID from the LIST_EVIDENCE action." }, { "slug": "QUADERNO_RETRIEVE_EXPENSE", "name": "Retrieve Expense", "description": "Tool to retrieve details of an existing expense by ID. Use after confirming expense ID." }, { "slug": "QUADERNO_RETRIEVE_INVOICE", "name": "Retrieve Invoice", "description": "Tool to retrieve details of an existing invoice by ID. Use when you need full invoice details for reporting or reconciliation." }, { "slug": "QUADERNO_RETRIEVE_JURISDICTION", "name": "Retrieve Tax Jurisdiction", "description": "Tool to retrieve a tax jurisdiction by ID. Use when you need the name, country, and region of a specific jurisdiction after confirming its ID. Example: \"Retrieve jurisdiction 94\"." }, { "slug": "QUADERNO_RETRIEVE_PRODUCT", "name": "Retrieve Product", "description": "Tool to retrieve details of an existing product by ID. Use after confirming the product ID exists." }, { "slug": "QUADERNO_RETRIEVE_RECEIPT", "name": "Retrieve Receipt", "description": "Tool to retrieve details of an existing receipt by ID. Use when you need full receipt details for reporting or reconciliation." }, { "slug": "QUADERNO_RETRIEVE_RECURRING", "name": "Retrieve Recurring", "description": "Tool to retrieve details of an existing recurring document by ID. Use when you need information about a recurring invoice or expense subscription." }, { "slug": "QUADERNO_RETRIEVE_REPORTING_REQUEST", "name": "Retrieve Reporting Request", "description": "Tool to retrieve the status and download URL of a specific report request by ID. Use when you need to check if a report is ready and get the report_url to download it." }, { "slug": "QUADERNO_RETRIEVE_TAX_CODE", "name": "Retrieve Tax Code", "description": "Tool to retrieve a specific tax code by ID. Use when you need details about a particular tax code classification." }, { "slug": "QUADERNO_RETRIEVE_TAX_ID", "name": "Retrieve Tax ID", "description": "Tool to retrieve details of a specific tax ID by its ID. Use when you need to get information about a registered tax identification number." }, { "slug": "QUADERNO_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Quaderno. Use when you need to modify contact details such as name, address, email, or tax information." }, { "slug": "QUADERNO_UPDATE_COUPON", "name": "Update Coupon", "description": "Tool to update an existing coupon. Use when you need to modify coupon properties like discount amount, name, or redemption limits. Note: Coupons linked to Stripe cannot be edited and will return an error. Only fields provided in the request will be updated; omitted fields remain unchanged." }, { "slug": "QUADERNO_UPDATE_CREDIT_NOTE", "name": "Update Credit Note", "description": "Tool to update a credit note. Use when you need to modify metadata, tags, notes, billing address, or attach files to an existing credit note. Only limited fields can be updated if it has already been paid or delivered." }, { "slug": "QUADERNO_UPDATE_ESTIMATE", "name": "Update Estimate", "description": "Updates an existing estimate in Quaderno by modifying allowed fields. Use when you need to change estimate details like notes, purchase order number, tags, payment details, billing address, contact information, or line items. Fields not specified remain unchanged." }, { "slug": "QUADERNO_UPDATE_EVIDENCE", "name": "Update Evidence", "description": "Tool to update an evidence object. Use when you need to modify location proofs (billing country, IP address, bank country, notes) for tax compliance records." }, { "slug": "QUADERNO_UPDATE_EXPENSE", "name": "Update Expense", "description": "Updates an existing expense in Quaderno by modifying allowed fields. This action sends a PUT request to /expenses/{id}.json and returns the complete updated expense. Only specific fields can be modified: purchase order number (po_number), tags (tag_list), payment details (payment_details), notes, billing address (street_line_1, street_line_2), and custom metadata. Use this when you need to add or modify administrative information on an expense. Fields not specified in the request remain unchanged." }, { "slug": "QUADERNO_UPDATE_INVOICE", "name": "Update Invoice", "description": "Updates an existing invoice in Quaderno by modifying allowed fields. This action sends a PUT request to /invoices/{id} and returns the complete updated invoice. Only specific fields can be modified after invoice creation: purchase order number (po_number), tags (tag_list), payment details (payment_details), notes, billing address (street_line_1, street_line_2), custom metadata, and file attachments. Use this when you need to add or modify administrative information on an invoice that hasn't been finalized or paid. Fields not specified in the request remain unchanged." }, { "slug": "QUADERNO_UPDATE_PRODUCT", "name": "Update product", "description": "Tool to update a product; unspecified fields remain unchanged. Use after fetching the product to apply partial updates." }, { "slug": "QUADERNO_UPDATE_RECURRING", "name": "Update Recurring", "description": "Tool to update a recurring document in Quaderno. Use when you need to modify subscription details, billing information, line items, or recurring schedule. Only specified fields are updated; unspecified fields remain unchanged." }, { "slug": "QUADERNO_UPDATE_TAX_ID", "name": "Update Tax ID", "description": "Tool to update an existing tax ID in Quaderno. Use when you need to modify tax ID details such as validity dates, value, or establishment settings." }, { "slug": "QUADERNO_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify webhook URL or event subscriptions." }, { "slug": "QUADERNO_VALIDATE_TAX_ID", "name": "Validate Tax ID", "description": "Tool to validate a tax ID. Use when confirming whether a given country-specific tax ID is valid. Example: validate tax ID 'DE303954554' for Germany." }, { "slug": "QUADERNO_VOID_CREDIT_NOTE", "name": "Void Credit Note", "description": "Tool to void a credit note. Use when you need to cancel an existing credit note." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "quaderno_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Quaderno Account Subdomain", "type": "string", "description": "Your Quaderno account subdomain, derived from your Quaderno account URL. For example, if your Quaderno account URL is 'https://acmeinc.quadernoapp.com', then the subdomain is 'acmeinc'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Quaderno API Key", "type": "string", "description": "Your Quaderno API Key, found under 'DEVELOPERS' > 'API Keys' > 'Private Key'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "quickbooks", "name": "QuickBooks", "logo": "https://logos.composio.dev/api/quickbooks", "description": "Quickbooks is a cloud-based accounting software that helps you manage your finances, track your income and expenses, and get insights into your business", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 114, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "QUICKBOOKS_CAPTURE_CHARGE", "name": "Capture Charge", "description": "Tool to capture funds for an existing charge that was authorized but not captured. Use when you need to complete a previously authorized payment transaction in QuickBooks Payments API. This action finalizes the charge and transfers the funds from the customer's payment method." }, { "slug": "QUICKBOOKS_CREATE_ACCOUNT", "name": "Create Account", "description": "Create a new account in QuickBooks with the given parameters." }, { "slug": "QUICKBOOKS_CREATE_BANK_ACCOUNT", "name": "Create Bank Account", "description": "Create a new bank account on file for a customer in QuickBooks Payments API. Use this when you need to add ACH/eCheck payment capabilities for a customer." }, { "slug": "QUICKBOOKS_CREATE_BILL", "name": "Create Bill", "description": "Create a new bill in QuickBooks Online. A Bill is an AP transaction representing a request-for-payment from a third party for goods or services. Use this action when recording vendor bills for purchases, expenses, or services received." }, { "slug": "QUICKBOOKS_CREATE_BILL_PAYMENT", "name": "Create Bill Payment", "description": "Create a bill payment in QuickBooks to record payment against one or more bills. Use when paying vendor bills via check or credit card." }, { "slug": "QUICKBOOKS_CREATE_CLASS", "name": "Create Class", "description": "Create a new class in QuickBooks Online. Use when you need to categorize transactions by department, location, or other business segments." }, { "slug": "QUICKBOOKS_CREATE_CREDIT_MEMO", "name": "Create Credit Memo", "description": "Tool to create a new credit memo in QuickBooks Online. Use when issuing credit to a customer for returns, refunds, or adjustments." }, { "slug": "QUICKBOOKS_CREATE_CUSTOMER", "name": "Create Customer", "description": "Create a new customer in QuickBooks with the given parameters." }, { "slug": "QUICKBOOKS_CREATE_DEPOSIT", "name": "Create Deposit", "description": "Creates a new deposit in QuickBooks Online. A deposit represents funds received and deposited to an asset account (typically a bank account). Use this action to record deposits of customer payments, refunds, or other funds into your bank accounts. Each deposit must specify the destination account and at least one line item showing the source and amount of funds." }, { "slug": "QUICKBOOKS_CREATE_ECHECK_PAYMENT", "name": "Create eCheck Payment", "description": "Tool to create an eCheck payment using ACH bank transfer in QuickBooks Payments API. Use when processing payments from customer bank accounts via electronic check. The payment is debited directly from the customer's bank account using the provided routing and account numbers." }, { "slug": "QUICKBOOKS_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Create a new employee in QuickBooks." }, { "slug": "QUICKBOOKS_CREATE_ESTIMATE", "name": "Create Estimate", "description": "Creates a new estimate in QuickBooks Online. An estimate represents a proposal for goods or services that a customer may purchase. Use this to provide pricing quotes to customers before they commit to a purchase. This action requires a valid customer ID and at least one line item with item details and amount. The created estimate can later be converted to an invoice when the customer accepts the proposal." }, { "slug": "QUICKBOOKS_CREATE_INVOICE", "name": "Create Invoice", "description": "Creates a new invoice in QuickBooks for a customer. An invoice represents a sales transaction where goods or services are sold to a customer on credit or for immediate payment. This action requires: - A valid customer ID (obtain from QUICKBOOKS_CREATE_CUSTOMER or QUICKBOOKS_READ_CUSTOMER) - At least one line item with a valid item/service ID and amount The created invoice will have a unique ID, document number, due date, total amount, and balance. Use this to bill customers for products or services rendered. To update the invoice later, re-read it first to obtain the current SyncToken; stale tokens cause update rejections." }, { "slug": "QUICKBOOKS_CREATE_ITEM", "name": "Create Item", "description": "Create a new item in QuickBooks Online. Items represent the products or services that a company buys, sells, or resells. Use when adding new inventory items, services, or non-inventory products to the QuickBooks catalog." }, { "slug": "QUICKBOOKS_CREATE_JOURNAL_ENTRY", "name": "Create Journal Entry", "description": "Tool to create a new journal entry in QuickBooks Online. Use when you need to make adjusting or correcting entries that directly affect account balances. Journal entries require at least two lines with total debits equaling total credits." }, { "slug": "QUICKBOOKS_CREATE_PAYMENT", "name": "Create Payment", "description": "Creates a payment record in QuickBooks Online. The Payment entity records payment from customers against single or multiple invoices and credit memos. Use this action when recording customer payments, whether full payment of an invoice or partial payment across multiple invoices." }, { "slug": "QUICKBOOKS_CREATE_PURCHASE", "name": "Create Purchase", "description": "Tool to create a new purchase transaction in QuickBooks Online. A purchase represents an expense such as a cash payment, check, or credit card purchase. Use when recording business expenses or making payments to vendors." }, { "slug": "QUICKBOOKS_CREATE_PURCHASE_ORDER", "name": "Create Purchase Order", "description": "Create a new purchase order in QuickBooks. Use when you need to send a request to a vendor to deliver goods or services." }, { "slug": "QUICKBOOKS_CREATE_REFUND_RECEIPT", "name": "Create Refund Receipt", "description": "Tool to create a new refund receipt in QuickBooks Online. Use when a customer receives a refund for returned goods or services." }, { "slug": "QUICKBOOKS_CREATE_SALES_RECEIPT", "name": "Create Sales Receipt", "description": "Tool to create a new sales receipt in QuickBooks Online. Use when recording a sale where the customer pays immediately (cash, check, credit card)." }, { "slug": "QUICKBOOKS_CREATE_TAX_AGENCY", "name": "Create Tax Agency", "description": "Create a new tax agency in QuickBooks Online. Use when you need to set up a new tax authority or agency for tax reporting purposes." }, { "slug": "QUICKBOOKS_CREATE_TAXSERVICE_TAXCODE", "name": "Create Tax Code via TaxService", "description": "Create a new tax code with associated tax rates using the TaxService endpoint. Use when you need to set up new tax codes for sales or purchase transactions with specific tax rates." }, { "slug": "QUICKBOOKS_CREATE_TIME_ACTIVITY", "name": "Create Time Activity", "description": "Create a new time activity record in QuickBooks Online. TimeActivity tracks employee or vendor time worked on jobs or projects. Use when recording billable or non-billable hours for employees or vendors." }, { "slug": "QUICKBOOKS_CREATE_VENDOR", "name": "Create Vendor", "description": "Create a new vendor in QuickBooks with the given details." }, { "slug": "QUICKBOOKS_CREATE_VENDOR_CREDIT", "name": "Create Vendor Credit", "description": "Tool to create a new vendor credit in QuickBooks Online. Use when recording a credit from a vendor that reduces what you owe." }, { "slug": "QUICKBOOKS_CUSTOMER_BALANCE_DETAIL", "name": "Customer Balance Detail", "description": "Generate a balance detail report for a customer in QuickBooks with the given customer ID." }, { "slug": "QUICKBOOKS_CUSTOMER_BALANCE_REPORT", "name": "Customer Balance Report", "description": "Generate a customer balance report in QuickBooks showing outstanding balances for customers. Can filter by specific customers, date ranges, payment status, and accounting method. Returns a hierarchical report with customer names, IDs, and their current balance amounts." }, { "slug": "QUICKBOOKS_DELETE_BANK_ACCOUNT", "name": "Delete Bank Account", "description": "Tool to delete a bank account on file for a customer in QuickBooks Payments API. Use when removing a customer's payment method. Returns 204 No Content on success with an empty response body from the API." }, { "slug": "QUICKBOOKS_DELETE_ITEM", "name": "Delete Item", "description": "Delete an item in QuickBooks Online by marking it as inactive (soft delete). Items cannot be permanently deleted if they have been used in transactions. Use this action when removing items from active catalogs while preserving historical transaction data. The item will be hidden from dropdowns but remain accessible in historical records. This action is irreversible through the API — the item can only be reactivated manually through the QuickBooks UI or by using an update action." }, { "slug": "QUICKBOOKS_EXECUTE_BATCH_OPERATION", "name": "Execute Batch Operation", "description": "Execute multiple QuickBooks operations in a single request. Operations are performed serially. Supports create, update, delete, and query operations on QuickBooks entities. Use this action to reduce network latency when performing multiple operations. Each operation is executed in order, and each response is correlated to its request via the bId field. Maximum 30 operations per batch. Ideal for bulk data operations or related entity updates." }, { "slug": "QUICKBOOKS_GET_AGED_RECEIVABLES_REPORT", "name": "Aged Receivables Report", "description": "Generate an aged receivables report showing outstanding customer balances by age. Use when tracking overdue invoices and managing accounts receivable aging." }, { "slug": "QUICKBOOKS_GET_ATTACHABLE", "name": "Get Attachable", "description": "Tool to read details of a specific attachable by ID in QuickBooks Online. Attachables represent file attachments linked to entities like invoices, customers, or bills." }, { "slug": "QUICKBOOKS_GET_BALANCE_SHEET_REPORT", "name": "Get Balance Sheet Report", "description": "Generate a Balance Sheet report showing company assets, liabilities, and equity at a point in time. Use when you need to understand the financial position with what the company owns versus what it owes." }, { "slug": "QUICKBOOKS_GET_BANK_ACCOUNT", "name": "Get Bank Account", "description": "Tool to retrieve a specific bank account by ID from QuickBooks Payments API. Use when you need to get details about a specific payment method for a customer." }, { "slug": "QUICKBOOKS_GET_BILL", "name": "Get Bill", "description": "Tool to fetch a QuickBooks bill by ID. Use when needing to retrieve bill details including vendor reference, line items, amounts, and payment status." }, { "slug": "QUICKBOOKS_GET_BILL_PAYMENT", "name": "Get Bill Payment", "description": "Tool to retrieve details of a specific bill payment by ID in QuickBooks Online. Use when you need to view information about an existing bill payment." }, { "slug": "QUICKBOOKS_GET_CHANGED_ENTITIES", "name": "Get Changed Entities", "description": "Tool to retrieve entities that changed since a specified timestamp using QuickBooks Change Data Capture (CDC) API. Use when you need to sync or refresh local data periodically by fetching only entities modified within the last 30 days. Returns full entity payloads (not just changed attributes) grouped by entity type with up to 1000 entities per response." }, { "slug": "QUICKBOOKS_GET_COMPANY_INFO", "name": "Get Company Info", "description": "Tool to read company information from QuickBooks Online. Returns basic company info including name, addresses, fiscal year settings, and subscription status." }, { "slug": "QUICKBOOKS_GET_CREDIT_MEMO", "name": "Get Credit Memo", "description": "Tool to fetch a QuickBooks credit memo by ID. Use when needing full credit memo details including metadata, customer info, line items, and remaining credit amount." }, { "slug": "QUICKBOOKS_GET_CREDIT_MEMO_PDF", "name": "Get Credit Memo PDF", "description": "Tool to download a QuickBooks credit memo as a PDF file. Use when you need to retrieve the printable PDF version of a credit memo." }, { "slug": "QUICKBOOKS_GET_DEPARTMENT", "name": "Get Department", "description": "Read details of a specific department by ID in QuickBooks Online. Use when you need to retrieve information about a department." }, { "slug": "QUICKBOOKS_GET_DEPOSIT", "name": "Get Deposit", "description": "Tool to read details of a specific deposit by ID in QuickBooks Online. Use when you need complete deposit information including line items, amounts, and metadata." }, { "slug": "QUICKBOOKS_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to fetch a QuickBooks estimate by ID. Use when needing full estimate details including metadata, line items, and sync token." }, { "slug": "QUICKBOOKS_GET_ESTIMATE_PDF", "name": "Get Estimate PDF", "description": "Tool to download a QuickBooks estimate as a PDF file. Use when you need to retrieve the printable PDF version of an estimate." }, { "slug": "QUICKBOOKS_GET_EXCHANGE_RATE", "name": "Get Exchange Rate", "description": "Tool to get exchange rate for a specific currency code and date in QuickBooks Online. Use when needing to retrieve the current or historical exchange rate between a foreign currency and the company's home currency." }, { "slug": "QUICKBOOKS_GET_GENERAL_LEDGER_REPORT", "name": "Get General Ledger Report", "description": "Generate a General Ledger report showing all transactions with debits, credits, and running balances. Use when you need a detailed view of all accounting transactions posted to each account." }, { "slug": "QUICKBOOKS_GET_INVENTORY_VALUATION_SUMMARY", "name": "Get Inventory Valuation Summary", "description": "Generate an Inventory Valuation Summary report showing inventory quantities and their current values. Use when you need to understand inventory asset values, track stock levels, or analyze inventory costs by item." }, { "slug": "QUICKBOOKS_GET_INVOICE_PDF", "name": "Get Invoice PDF", "description": "Tool to download a QuickBooks invoice as a PDF file. Use when you need to retrieve the printable PDF version of an invoice." }, { "slug": "QUICKBOOKS_GET_ITEM", "name": "Get Item", "description": "Tool to retrieve a specific item by its ID from QuickBooks Online. Use when you need full details of a product or service item." }, { "slug": "QUICKBOOKS_GET_JOURNAL_ENTRY", "name": "Get Journal Entry", "description": "Tool to read details of a specific QuickBooks journal entry by ID. Use when you need complete journal entry information including transaction date, line items, posting types, and account references." }, { "slug": "QUICKBOOKS_GET_PAYMENT", "name": "Get Payment", "description": "Tool to fetch details of a specific payment by ID in QuickBooks Online. Use when needing payment information including customer, amounts, and linked transactions." }, { "slug": "QUICKBOOKS_GET_PAYMENT_METHOD", "name": "Get Payment Method", "description": "Read details of a specific payment method by ID in QuickBooks Online. Use when you need to retrieve information about a payment method entity." }, { "slug": "QUICKBOOKS_GET_PAYMENT_PDF", "name": "Get Payment PDF", "description": "Tool to download a QuickBooks payment record as a PDF file. Use when you need to retrieve the printable PDF version of a payment." }, { "slug": "QUICKBOOKS_GET_PREFERENCES", "name": "Get Company Preferences", "description": "Tool to read company preferences that control application behavior in QuickBooks Online. Use when needing to retrieve accounting settings, sales form configurations, tax preferences, time tracking settings, or other company-wide preference data." }, { "slug": "QUICKBOOKS_GET_PROFIT_AND_LOSS_DETAIL_REPORT", "name": "Get Profit and Loss Detail Report", "description": "Generate a detailed Profit and Loss report showing company income and expenses with transaction-level details. Use when you need to analyze profitability with individual transaction details, customer/vendor breakdowns, and account-level activity." }, { "slug": "QUICKBOOKS_GET_PROFIT_AND_LOSS_REPORT", "name": "Get Profit and Loss Report", "description": "Generate a Profit and Loss report showing company income and expenses over a period. Use when you need to analyze profitability, revenue, costs, and net income for a specific date range." }, { "slug": "QUICKBOOKS_GET_PURCHASE", "name": "Get Purchase", "description": "Tool to fetch details of a specific purchase by ID in QuickBooks Online. Use when you need to retrieve complete purchase information including line items, payment details, and metadata." }, { "slug": "QUICKBOOKS_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Tool to fetch a QuickBooks purchase order by ID. Use when needing full purchase order details including line items, vendor information, and metadata." }, { "slug": "QUICKBOOKS_GET_PURCHASE_ORDER_PDF", "name": "Get Purchase Order PDF", "description": "Tool to download a QuickBooks purchase order as a PDF file. Use when you need to retrieve the printable PDF version of a purchase order." }, { "slug": "QUICKBOOKS_GET_REFUND_RECEIPT", "name": "Get Refund Receipt", "description": "Tool to fetch a QuickBooks refund receipt by ID. Use when needing details of a specific refund issued to a customer." }, { "slug": "QUICKBOOKS_GET_REFUND_RECEIPT_PDF", "name": "Get Refund Receipt PDF", "description": "Tool to download a QuickBooks refund receipt as a PDF file. Use when you need to retrieve the printable PDF version of a refund receipt." }, { "slug": "QUICKBOOKS_GET_REPORT_ACCOUNT_LIST", "name": "Get Report - Account List", "description": "Retrieve the AccountList report from QuickBooks showing a list of all accounts. This report displays all account details including name, type, and balance information." }, { "slug": "QUICKBOOKS_GET_REPORT_AGED_PAYABLE_DETAIL", "name": "Get Report - Aged Payable Detail", "description": "Generate an aged payable detail report showing aging detail for accounts payable. Use when you need to analyze outstanding vendor bills grouped by aging periods." }, { "slug": "QUICKBOOKS_GET_REPORT_AGED_PAYABLES", "name": "Get Report - Aged Payables", "description": "Retrieve an Aged Payables aging summary report from QuickBooks showing outstanding vendor balances grouped by age. Shows amounts owed to vendors categorized by aging periods (e.g., current, 1-30 days, 31-60 days overdue)." }, { "slug": "QUICKBOOKS_GET_REPORT_AGED_RECEIVABLE_DETAIL", "name": "Get Report - Aged Receivable Detail", "description": "Generate an aged receivable detail report showing aging detail for accounts receivable. Use when you need to analyze outstanding customer invoices grouped by aging periods." }, { "slug": "QUICKBOOKS_GET_REPORT_CASH_FLOW", "name": "Get Report - Cash Flow", "description": "Generate a cash flow report in QuickBooks showing cash inflows and outflows categorized by operating, investing, and financing activities. Use when you need to analyze cash movement and liquidity over a specified period." }, { "slug": "QUICKBOOKS_GET_REPORT_CLASS_SALES", "name": "Get Report - Class Sales", "description": "Generate a ClassSales report in QuickBooks showing sales amounts grouped by class. Use when you need to analyze sales performance by class tracking categories." }, { "slug": "QUICKBOOKS_GET_REPORT_CUSTOMER_INCOME", "name": "Get Report - Customer Income", "description": "Generate a customer income report in QuickBooks showing revenue by customer. Use when you need to analyze income generated from each customer over a specified period." }, { "slug": "QUICKBOOKS_GET_REPORT_CUSTOMER_SALES", "name": "Get Report - Customer Sales", "description": "Generate a customer sales report in QuickBooks showing sales transactions and totals for customers. Can filter by specific customers, date ranges, and accounting method. Returns a hierarchical report with customer names, IDs, and their sales amounts." }, { "slug": "QUICKBOOKS_GET_REPORT_DEPARTMENT_SALES", "name": "Get Report - Department Sales", "description": "Generate a department sales report in QuickBooks showing sales data broken down by department. Use when you need to analyze sales performance across different departments within a date range. Note: Department tracking must be enabled in the QuickBooks company file for this report to return data." }, { "slug": "QUICKBOOKS_GET_REPORT_ITEM_SALES", "name": "Get Report - Item Sales", "description": "Generate an ItemSales report showing sales data for products and services. Use when you need to analyze sales performance by item including quantity sold, revenue, COGS, and gross margin." }, { "slug": "QUICKBOOKS_GET_REPORTS", "name": "Get Reports", "description": "Retrieve QuickBooks reports such as TransactionList, BalanceSheet, ProfitAndLoss, and others. Use when you need to access standardized financial or transaction reports with flexible filtering options." }, { "slug": "QUICKBOOKS_GET_REPORT_TRIAL_BALANCE", "name": "Get Report - Trial Balance", "description": "Generate a Trial Balance report showing account debits, credits, and balances for a specified period. Use when you need to verify that total debits equal total credits across all accounts for accounting reconciliation." }, { "slug": "QUICKBOOKS_GET_SALES_RECEIPT", "name": "Get Sales Receipt", "description": "Tool to fetch a QuickBooks sales receipt by ID. Use when needing full sales receipt details including customer info, line items, payment details, and metadata." }, { "slug": "QUICKBOOKS_GET_SALESRECEIPT_PDF", "name": "Get Sales Receipt PDF", "description": "Tool to download a QuickBooks sales receipt as a PDF file. Use when you need to retrieve the printable PDF version of a sales receipt." }, { "slug": "QUICKBOOKS_GET_TAX_RATE", "name": "Get Tax Rate", "description": "Tool to read details of a specific tax rate by ID in QuickBooks Online. Use when you need to retrieve information about a tax rate." }, { "slug": "QUICKBOOKS_GET_TERM", "name": "Get Term", "description": "Read details of a specific payment term by ID in QuickBooks Online. Terms define payment conditions like Net 30 or Due on Receipt." }, { "slug": "QUICKBOOKS_GET_TIME_ACTIVITY", "name": "Get Time Activity", "description": "Tool to read details of a specific time activity by ID in QuickBooks Online. Returns complete time tracking information including employee/vendor reference, hours worked, billing rate, and associated customer." }, { "slug": "QUICKBOOKS_GET_TRANSACTION_LIST_REPORT", "name": "Get Transaction List Report", "description": "Get the Transaction List report showing all transactions in the company. Use when you need a comprehensive view of all transactions with flexible filtering by date, customer, vendor, account, or other criteria." }, { "slug": "QUICKBOOKS_GET_TRANSFER", "name": "Get Transfer", "description": "Tool to fetch a QuickBooks transfer by ID. Use when needing to retrieve transfer details including from/to account references and transfer amount." }, { "slug": "QUICKBOOKS_GET_VENDOR_CREDIT", "name": "Get Vendor Credit", "description": "Tool to fetch a QuickBooks vendor credit by ID. Use when needing to retrieve vendor credit details including vendor reference, line items, amounts, and balance status." }, { "slug": "QUICKBOOKS_GET_VENDOR_EXPENSES_REPORT", "name": "Get Vendor Expenses Report", "description": "Retrieve a vendor expenses report from QuickBooks showing expense transactions by vendor. This report displays the total expenses incurred for each vendor, providing a detailed view of vendor-related spending. Filter by specific vendors, date ranges, payment status, and customize with various grouping and sorting options." }, { "slug": "QUICKBOOKS_LIST_CARDS", "name": "List Cards", "description": "Tool to retrieve all payment cards on file for a customer in QuickBooks Payments API. Use when needing to list saved payment methods for a customer." }, { "slug": "QUICKBOOKS_LIST_DEPARTMENTS", "name": "List Departments", "description": "Query Department entities in QuickBooks using SQL-like syntax. Use when you need to list departments or filter departments by criteria like active status, name patterns, or parent relationships. Supports WHERE clauses, pattern matching (LIKE with %), ORDERBY, and pagination." }, { "slug": "QUICKBOOKS_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices via QuickBooks Query endpoint. Use when retrieving invoices with optional pagination and custom fields." }, { "slug": "QUICKBOOKS_QUERY_ACCOUNT", "name": "Query Account Entities", "description": "Query Account entities in QuickBooks using SQL-like syntax. IMPORTANT: Queries the Account entity ONLY (chart of accounts). For other entities (Purchase, Invoice, Bill, Payment, etc.), use their respective query actions. NOTE: API returns ALL fields with values regardless of SELECT clause (projections not supported). CRITICAL RESTRICTIONS: Parentheses and OR operator are NOT supported. Use IN operator for multiple values: WHERE AccountType IN ('Bank', 'Credit Card') Supports: WHERE clauses (=, <, >, LIKE, IN), AND operator, pattern matching (%), ORDER BY, pagination (MAXRESULTS up to 1000, STARTPOSITION), COUNT. Common fields: Id, Name, AccountType, AccountSubType, Classification, Active, FullyQualifiedName, CurrentBalance, AcctNum, Description, SubAccount. Examples: - SELECT * FROM Account WHERE AccountType = 'Expense' MAXRESULTS 100 - SELECT * FROM Account WHERE Active = true ORDER BY Name - SELECT * FROM Account WHERE AccountType IN ('Bank', 'Credit Card')" }, { "slug": "QUICKBOOKS_QUERY_ACCOUNTS", "name": "Query Account Entities", "description": "Query Account entities in QuickBooks using SQL-like syntax. Use this action when you need to retrieve multiple accounts from the chart of accounts with filtering, sorting, or pagination. IMPORTANT: Queries the Account entity ONLY (chart of accounts). For other entities (Purchase, Invoice, Bill, Payment, etc.), use their respective query actions. NOTE: API returns ALL fields with values regardless of SELECT clause (projections not supported). CRITICAL RESTRICTIONS: Parentheses and OR operator are NOT supported. Use IN operator for multiple values: WHERE AccountType IN ('Bank', 'Credit Card'). Supports: WHERE clauses (=, <, >, LIKE, IN), AND operator, pattern matching (%), ORDER BY, pagination (MAXRESULTS up to 1000, STARTPOSITION), COUNT." }, { "slug": "QUICKBOOKS_QUERY_ATTACHABLE", "name": "Query Attachable Entities", "description": "Query Attachable entities in QuickBooks using SQL-like syntax. Use when you need to retrieve multiple attachables or search for specific file attachments." }, { "slug": "QUICKBOOKS_QUERY_BILLS", "name": "Query Bills", "description": "Query Bill entities in QuickBooks using SQL-like syntax. Returns bills with vendor information, line items, amounts, due dates, and payment status. Use this action when you need to search or filter bills by criteria such as vendor, date range, balance, or total amount. IMPORTANT: Queries the Bill entity ONLY (vendor bills/payables). For other entities (Invoice, Payment, Account, etc.), use their respective query actions. NOTE: API returns ALL fields with values regardless of SELECT clause (projections not supported). CRITICAL RESTRICTIONS: Parentheses and OR operator are NOT supported. Use IN operator for multiple values: WHERE VendorRef IN ('1', '2', '3') Common queryable fields: Id, TxnDate, DueDate, VendorRef, TotalAmt, Balance, DocNumber. NON-QUERYABLE fields: PrivateNote, AccountRef, CurrencyRef, DepartmentRef, ClassRef." }, { "slug": "QUICKBOOKS_QUERY_CUSTOMERS", "name": "Query Customer Entities", "description": "Query Customer entities in QuickBooks using SQL-like syntax. Use this action when you need to find customers by name, email, balance, active status, or other criteria with pagination support. IMPORTANT: Queries the Customer entity ONLY. For other entities use their respective query actions. CRITICAL RESTRICTIONS: Parentheses and OR operator are NOT supported. Use IN for multiple values. Supports: WHERE (=, <, >, LIKE, IN), AND, pattern matching (%), ORDER BY, pagination (MAXRESULTS up to 1000), COUNT." }, { "slug": "QUICKBOOKS_QUERY_ENTITIES", "name": "Query QuickBooks Entities", "description": "Execute SQL-like queries on QuickBooks Online entities. Supports all entity types (Customer, Invoice, Bill, Payment, Purchase, Account, etc.) with WHERE clauses, pattern matching, ordering, and pagination. IMPORTANT: Many fields are NOT queryable in WHERE clauses including PrivateNote, AccountRef, CurrencyRef, DepartmentRef, ClassRef, etc. Use queryable fields like Id, TxnDate, PaymentType, DisplayName instead. For non-queryable field filtering, query by date range and filter client-side. See parameter description for full list of queryable vs non-queryable fields. Use entity-specific query tools when available for typed responses." }, { "slug": "QUICKBOOKS_QUERY_ESTIMATES", "name": "Query Estimate Entities", "description": "Query Estimate entities in QuickBooks using SQL-like syntax. Returns estimates matching specified criteria such as status, customer, date range, or amount. Use this action when you need to search for, filter, or list QuickBooks estimates based on specific conditions. The query syntax supports WHERE clauses, pattern matching with LIKE, ordering, and pagination. IMPORTANT: Queries the Estimate entity ONLY. For other entities (Invoice, Bill, Payment, Account, etc.), use their respective query actions. NOTE: API returns ALL fields with values regardless of SELECT clause (field projections not supported). CRITICAL RESTRICTIONS: Parentheses and OR operator are NOT supported. Use IN operator for multiple values: WHERE CustomerRef IN ('1', '2') Common queryable fields: Id, TxnDate, TotalAmt, CustomerRef, DocNumber, TxnStatus, ExpirationDate, EmailStatus, PrintStatus. NON-QUERYABLE fields: PrivateNote, DepartmentRef, ClassRef, CurrencyRef cause QueryValidationError." }, { "slug": "QUICKBOOKS_QUERY_INVOICES", "name": "Query Invoices", "description": "Query QuickBooks invoices with flexible filtering and pagination support. Use this action when you need to search for invoices based on specific criteria like customer, date range, amount, or payment status. Use when retrieving invoices with custom filters, date ranges, or payment status. Supports SQL-like queries for advanced filtering on queryable fields. For simple listing without filters, consider using ListInvoices instead. IMPORTANT: The query parameter uses QuickBooks Query Language which does NOT support the OR operator. Use IN operator for multiple values or query without WHERE clause and filter client-side." }, { "slug": "QUICKBOOKS_QUERY_ITEMS", "name": "Query Item Entities", "description": "Query Item entities in QuickBooks using SQL-like syntax. Use this action to search, filter, and retrieve products and services from the QuickBooks catalog. IMPORTANT: Queries Item entity ONLY. For other entities use their respective query actions. Parentheses and OR operator NOT supported - use IN instead. Reference fields NOT queryable - filter client-side if needed." }, { "slug": "QUICKBOOKS_QUERY_PAYMENTS", "name": "Query Payment Entities", "description": "Query Payment entities in QuickBooks using SQL-like syntax. Use when searching, filtering, or listing payments by date, customer, amount, or other attributes. For a single payment by ID, use GetPayment instead." }, { "slug": "QUICKBOOKS_QUERY_VENDORS", "name": "Query Vendor Entities", "description": "Query Vendor entities in QuickBooks using SQL-like syntax. Returns vendors matching the specified criteria with full details. Use this action when you need to search, filter, or list vendors based on conditions such as active status, display name, balance, or 1099 eligibility. Supports pagination for large result sets. IMPORTANT: Queries the Vendor entity ONLY. For other entities use their respective query actions. Parentheses and OR operator are NOT supported - use IN operator instead." }, { "slug": "QUICKBOOKS_READ_ACCOUNT", "name": "Read Account", "description": "Read an account in QuickBooks with the given account ID." }, { "slug": "QUICKBOOKS_READ_CLASS", "name": "Read Class", "description": "Read details of a specific class by ID in QuickBooks Online. Classes allow categorization of transactions." }, { "slug": "QUICKBOOKS_READ_CUSTOMER", "name": "Read Customer", "description": "Read a customer in QuickBooks with the given customer ID." }, { "slug": "QUICKBOOKS_READ_EMPLOYEE", "name": "Read Employee", "description": "Read an employee's details in QuickBooks with the given employee ID." }, { "slug": "QUICKBOOKS_READ_INVOICE", "name": "Read Invoice", "description": "Tool to fetch a QuickBooks invoice by ID or the most recent if no ID provided. Use when needing full invoice details including metadata and sync token." }, { "slug": "QUICKBOOKS_READ_VENDOR", "name": "Read Vendor", "description": "Read a vendor in QuickBooks with the given vendor ID." }, { "slug": "QUICKBOOKS_SEND_CREDIT_MEMO", "name": "Send Credit Memo", "description": "Tool to send a credit memo to a specified email address. Use when you need to email a credit memo to a customer." }, { "slug": "QUICKBOOKS_UPDATE_ATTACHABLE", "name": "Update Attachable", "description": "Tool to update an existing attachable in QuickBooks Online. Use when you need to modify attachable properties like note text or entity references. Requires the attachable Id and current SyncToken for optimistic locking." }, { "slug": "QUICKBOOKS_UPDATE_COMPANY_INFO", "name": "Update Company Info", "description": "Tool to update company information in QuickBooks Online. Use when you need to update company details like name, address, or contact information. Requires Id and SyncToken from a previous read operation." }, { "slug": "QUICKBOOKS_UPDATE_DEPARTMENT", "name": "Update Department", "description": "Tool to update an existing department in QuickBooks Online. Use when you need to modify department details. Requires the department Id and current SyncToken to prevent concurrent update conflicts." }, { "slug": "QUICKBOOKS_UPDATE_FULL_INVOICE", "name": "Update Full Invoice", "description": "Tool to fully replace an Invoice. Use when you need to update all aspects of an existing invoice in a single operation." }, { "slug": "QUICKBOOKS_UPDATE_PAYMENT_METHOD", "name": "Update Payment Method", "description": "Tool to update an existing payment method in QuickBooks Online. Use when you need to modify the name, status, or type of a payment method. Requires the payment method Id and current SyncToken." }, { "slug": "QUICKBOOKS_UPDATE_PREFERENCES", "name": "Update Preferences", "description": "Update company preferences in QuickBooks Online. Requires Id and SyncToken from a previous read. Use sparse=true for partial updates (only specified fields are changed) or sparse=false/omitted for full replacement." }, { "slug": "QUICKBOOKS_UPDATE_SPARSE_INVOICE", "name": "Update Sparse Invoice", "description": "Tool to perform a sparse update of an existing invoice. Use when you need to update only specific invoice fields without overwriting other data." }, { "slug": "QUICKBOOKS_UPDATE_TERM", "name": "Update Term", "description": "Tool to update an existing payment term in QuickBooks Online. Use when you need to modify the name, status, type, or payment conditions of a payment term. Requires the payment term Id and current SyncToken." }, { "slug": "QUICKBOOKS_UPDATE_TRANSFER", "name": "Update Transfer", "description": "Tool to update an existing transfer in QuickBooks Online. Use when you need to modify a transfer between accounts. Requires the transfer Id and current SyncToken to prevent concurrent update conflicts." }, { "slug": "QUICKBOOKS_VENDOR_BALANCE_DETAIL", "name": "Vendor Balance Detail", "description": "Generate a balance detail report for a vendor in QuickBooks with the given vendor ID." }, { "slug": "QUICKBOOKS_VENDOR_BALANCE_REPORT", "name": "Vendor Balance Report", "description": "Retrieve a vendor balance report from QuickBooks showing outstanding balances for vendors. This report displays the total amount owed to each vendor, providing a summary of accounts payable. You can filter by specific vendors, date ranges, payment status, and customize the report with various grouping and sorting options." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "quickbooks_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "com.intuit.quickbooks.accounting,openid,profile,email,phone,address" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The QuickBooks server to use. Keep the default https://quickbooks.api.intuit.com for real company data; use https://sandbox-quickbooks.api.intuit.com only for testing.", "required": true, "default": "https://quickbooks.api.intuit.com" }, { "name": "authorizationUrl", "displayName": "Authorization URL", "type": "string", "description": "The Intuit page where you sign in and approve access to your QuickBooks company. Same for every account — keep the default https://appcenter.intuit.com/connect/oauth2.", "required": true, "default": "https://appcenter.intuit.com/connect/oauth2" }, { "name": "tokenUrl", "displayName": "Token URL", "type": "string", "description": "Intuit's address for issuing and refreshing your access tokens. Same for every account — keep the default https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer.", "required": true, "default": "https://oauth.platform.intuit.com/oauth2/v1/tokens/bearer" } ], "optional": [ { "name": "generic_id", "displayName": "Minor Version", "type": "string", "description": "The QuickBooks API revision sent with each request. Keep the default 75 — Intuit retired versions 1-74 in August 2025, so 75 is the only supported value.", "required": false, "default": "75" } ] } } } ] }, { "slug": "quickemailverification", "name": "QuickEmailVerification", "logo": "https://logos.composio.dev/api/quickemailverification", "description": "Email validation and verification service with 99% accuracy that helps marketers improve email data quality and reduce hard bounces", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "quickemailverification_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your QuickEmailVerification account, sign in, and go to API Settings to generate your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "qwilr", "name": "Qwilr", "logo": "https://logos.composio.dev/api/qwilr", "description": "Save time and win more work with smart sales documents. Great for proposals, quotes and more!", "category": "proposal & invoice management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "qwilr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your Qwilr API access token. Get it from ACCOUNT DETAILS > QWILR API at https://app.qwilr.com/#/settings/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "radar", "name": "Radar", "logo": "https://logos.composio.dev/api/radar", "description": "Radar is a full-stack location infrastructure platform offering SDKs and APIs for geofencing, location tracking, geocoding, search, routing, and maps.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RADAR_AUTOCOMPLETE_ADDRESS_OR_PLACE", "name": "Autocomplete Address or Place", "description": "Tool to autocomplete partial addresses and place names based on relevance and proximity. Use after a user inputs a partial address/place to get suggestions, optionally biased by location." }, { "slug": "RADAR_CREATE_BEACON", "name": "Create Beacon", "description": "Tool to create a new beacon in Radar. Use when you need to register a physical beacon device (iBeacon or Eddystone) for location tracking." }, { "slug": "RADAR_CREATE_TRIP", "name": "Create Trip", "description": "Tool to create a new trip. Use after gathering origin and destination details to start tracking a trip." }, { "slug": "RADAR_DELETE_BEACON", "name": "Delete Beacon", "description": "Tool to delete a beacon by its Radar ID. Use when supplying a beacon's unique identifier to remove it." }, { "slug": "RADAR_DELETE_GEOFENCE", "name": "Delete Geofence", "description": "Tool to delete a geofence by ID. Use when supplying a geofence’s unique identifier to remove it." }, { "slug": "RADAR_DELETE_GEOFENCE_BY_TAG", "name": "Delete Geofence By Tag", "description": "Tool to delete a geofence by tag and external ID. Use when you have both the tag and external identifier to remove a specific geofence." }, { "slug": "RADAR_DELETE_TRIP", "name": "Delete Trip", "description": "Tool to delete a trip by its Radar ID or external ID. Use after confirming the trip exists." }, { "slug": "RADAR_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user by Radar _id, userId, or deviceId. Use after confirming the user identifier exists." }, { "slug": "RADAR_FORWARD_GEOCODE", "name": "Forward Geocode", "description": "Tool to convert an address into geographic coordinates. Use when you have a full address string and need precise latitude/longitude before further location analysis." }, { "slug": "RADAR_GET_BEACON", "name": "Get Beacon", "description": "Tool to retrieve a beacon by Radar _id. Use when you need to fetch full details of an existing beacon." }, { "slug": "RADAR_GET_BEACON_BY_TAG", "name": "Get Beacon By Tag", "description": "Tool to get a specific beacon by tag and external ID. Use when you need to retrieve details of a beacon identified by its tag group and external ID." }, { "slug": "RADAR_GET_CONTEXT_FOR_LOCATION", "name": "Get Context for Location", "description": "Tool to retrieve context for a given location. Use when you need geofences, place, and region information based on coordinates. Use after obtaining valid latitude and longitude." }, { "slug": "RADAR_GET_GEOFENCE", "name": "Get Geofence", "description": "Tool to retrieve a geofence by Radar _id or tag/externalId. Use when you need to fetch full details of an existing geofence." }, { "slug": "RADAR_GET_PLACES_SETTINGS", "name": "Get Places Settings", "description": "Tool to retrieve current Places settings for your Radar project. Use when you need to inspect chain detection, supported countries, external ID requirements, and other Places metadata." }, { "slug": "RADAR_GET_ROUTE_DIRECTIONS", "name": "Get Route Directions", "description": "Tool to get turn-by-turn directions between multiple locations. Use when you need detailed navigation instructions with steps, distances, and durations for routing." }, { "slug": "RADAR_GET_ROUTE_MATRIX", "name": "Get Route Matrix", "description": "Tool to calculate travel distance and duration between multiple origins and destinations for up to 625 routes. Use when you need to compute route metrics for multiple origin-destination pairs efficiently." }, { "slug": "RADAR_GET_TRIP", "name": "Get Trip", "description": "Tool to retrieve a trip by ID or externalId. Use when you have a trip ID or externalId to fetch its details." }, { "slug": "RADAR_GET_USER", "name": "Get User", "description": "Tool to get a user by Radar _id, userId, or deviceId. Returns the user with all location and context data including geofences, places, beacons, and trip information." }, { "slug": "RADAR_GET_USERS_IN_GEOFENCE", "name": "Get Users in Geofence", "description": "Tool to retrieve users currently within a specific geofence. Use when you need to list all users inside a geofence by its tag and external ID." }, { "slug": "RADAR_IP_GEOCODE", "name": "IP Geocode", "description": "Tool to geocode an IP address to city, state, and country. Use when you need location details based on an IP address." }, { "slug": "RADAR_LIST_EVENTS", "name": "List Events", "description": "Tool to list events. Use when you need to retrieve a paginated list of events with optional filtering." }, { "slug": "RADAR_LIST_GEOFENCES", "name": "List Geofences", "description": "Tool to list all geofences sorted by updated time. Use when you need an overview of all configured geofences." }, { "slug": "RADAR_LIST_TRIPS", "name": "List Trips", "description": "Tool to list all trips, sorted by updated time. Use when you need to page through the latest trips." }, { "slug": "RADAR_LIST_USERS", "name": "List Users", "description": "Tool to list Radar users sorted by update time. Use when you need to page through users in your project." }, { "slug": "RADAR_REVERSE_GEOCODE", "name": "Reverse Geocode", "description": "Tool to convert geographic coordinates to structured addresses. Use when you have latitude/longitude and need a human-readable address." }, { "slug": "RADAR_ROUTE_DISTANCE", "name": "Route Distance", "description": "Tool to compute distance and travel time between origins and destinations. Use when you need route metrics before optimizing or timing routes." }, { "slug": "RADAR_SEARCH_GEOFENCES_NEAR_LOCATION", "name": "Search Geofences", "description": "Tool to search for geofences near a given location. Use when you need to find geofences within a radius of specified coordinates." }, { "slug": "RADAR_SEARCH_PLACES_NEAR_LOCATION", "name": "Search Places Near Location", "description": "Tool to search for places near given coordinates. Use when you need to find points of interest around a location." }, { "slug": "RADAR_SEARCH_USERS_NEAR_LOCATION", "name": "Search Users Near Location", "description": "Tool to search for users near a location. Use after obtaining coordinates when you need to retrieve users within a given radius." }, { "slug": "RADAR_TRACK_LOCATION_UPDATE", "name": "Track Location Update", "description": "Tool to track a user's location update. Use when sending a location update for a user, creating or updating user and event data." }, { "slug": "RADAR_UPDATE_PLACES_SETTINGS", "name": "Update Places Settings", "description": "Tool to update Places settings for your Radar project including chain metadata preferences. Use when you need to configure chain detection or other Places settings." }, { "slug": "RADAR_UPDATE_TRIP", "name": "Update Trip", "description": "Tool to update a trip. Use when you need to modify mode, destination, schedule, or active status." }, { "slug": "RADAR_UPDATE_TRIP_BY_ID", "name": "Update Trip By ID", "description": "Tool to update a trip status by Radar _id or external ID. Use when you need to change trip status to started, approaching, arrived, completed, or canceled." }, { "slug": "RADAR_UPSERT_BEACON_BY_ID", "name": "Upsert Beacon by ID", "description": "Tool to create or update a beacon by Radar _id. Use when you need to ensure a beacon with a specific ID exists with updated properties." }, { "slug": "RADAR_UPSERT_BEACON_BY_TAG", "name": "Upsert Beacon by Tag", "description": "Tool to create or update a beacon by tag and externalId. Use when you need to ensure a beacon exists or is updated with specific identifiers." }, { "slug": "RADAR_UPSERT_GEOFENCE", "name": "Upsert Geofence", "description": "Tool to create or update a geofence by tag and externalId. Use when ensuring a geofence exists or is updated based on identifiers." }, { "slug": "RADAR_UPSERT_GEOFENCE_BY_ID", "name": "Upsert Geofence By ID", "description": "Tool to create or update a geofence by Radar _id. Use when you need to upsert a geofence using its internal Radar identifier." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "radar_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Radar API Key", "type": "string", "description": "Your Radar API key, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ragic", "name": "Ragic", "logo": "https://logos.composio.dev/api/ragic", "description": "Ragic is a web-based database builder that allows users to create and manage databases as easily as creating a spreadsheet.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAGIC_DELETE_ENTRY", "name": "Delete Entry", "description": "Tool to delete an entry from a Ragic sheet. Use when you need to remove a specific record from a sheet by its record ID." }, { "slug": "RAGIC_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download uploaded files, images, or email attachments from Ragic. Use the file reference returned from API responses (e.g., from record fields)." }, { "slug": "RAGIC_GET_ACTION_BUTTONS", "name": "Get Action Buttons", "description": "Tool to retrieve the list of available action buttons on a Ragic sheet. Returns action button IDs and names. Use category=massOperation to get buttons available for mass operations." }, { "slug": "RAGIC_GET_CUSTOM_PRINT_REPORT", "name": "Get Custom Print Report", "description": "Tool to retrieve a custom print report for a Ragic record in various formats (pdf, png, docx). Use when you need to generate and download a formatted report using a specific template." }, { "slug": "RAGIC_GET_ENTRY", "name": "Get Entry", "description": "Tool to retrieve a single entry from a Ragic sheet by its record ID. Use when you need to fetch specific record data including field values and optional subtable data." }, { "slug": "RAGIC_GET_RECORD_AS_PDF", "name": "Get Record as PDF", "description": "Tool to retrieve a PDF version of a Ragic record. Use when you need to export or download a record in PDF format. The PDF will contain the full record data in a formatted document." }, { "slug": "RAGIC_SEARCH_RECORDS", "name": "Search Records", "description": "Search Records" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ragic_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Server Location", "type": "string", "description": "The server location for your Ragic account, such as 'na3', 'ap5', or 'eu2'.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Ragic API Key", "type": "string", "description": "Your Ragic API key, obtainable from Personal Settings > Profile.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ragie", "name": "Ragie", "logo": "https://logos.composio.dev/api/ragie", "description": "Fully managed RAG-as-a-Service for developers", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAGIE_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to upload and process a document file in Ragie. Use when you need to create a new document with support for various formats including text, images, and documents. The endpoint accepts multipart/form-data and returns a Document object with processing status and metadata." }, { "slug": "RAGIE_CREATE_DOCUMENT_FROM_URL", "name": "Create Document From URL", "description": "Tool to ingest a document from a publicly accessible URL. Use when you need to add documents to Ragie from external sources. The document undergoes processing steps (pending, partitioning, indexed, ready) before becoming available for retrieval." }, { "slug": "RAGIE_CREATE_DOCUMENT_RAW", "name": "Create Document Raw", "description": "Tool to ingest a document as raw text or JSON. Use when creating a new document from text or JSON data. The document goes through processing steps and becomes available for retrieval once in the ready state." }, { "slug": "RAGIE_CREATE_INSTRUCTION", "name": "Create Instruction", "description": "Tool to create a new instruction that applies natural language directives to documents as they're ingested or updated. Use when you need to define structured data extraction or analysis rules for documents in Ragie." }, { "slug": "RAGIE_CREATE_OAUTH_REDIRECT_URL", "name": "Create OAuth Redirect URL", "description": "Tool to create an OAuth redirect URL for initializing embedded connector OAuth flows. Use when you need to set up OAuth authentication for connectors like Google Drive, Notion, or HubSpot." }, { "slug": "RAGIE_CREATE_PARTITION_PARTITIONS_POST", "name": "Create Partition", "description": "Tool to create a new partition for scoping documents and connections in Ragie. Use when you need to organize documents and set resource limits for different workspaces or tenants." }, { "slug": "RAGIE_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document from Ragie. Use when you need to remove a document permanently from the system. Supports both synchronous and asynchronous deletion modes." }, { "slug": "RAGIE_DELETE_INSTRUCTION", "name": "Delete Instruction", "description": "Tool to delete an instruction and all associated entities. Use when you need to permanently remove an instruction (irreversible operation). Requires the instruction ID (UUID format)." }, { "slug": "RAGIE_DELETE_PARTITION", "name": "Delete Partition", "description": "Tool to delete a partition and all associated data irreversibly. Use when you need to permanently remove a partition. Returns status 200 for synchronous deletion or 202 for asynchronous deletion." }, { "slug": "RAGIE_GET_DOCUMENT", "name": "Get Document", "description": "Tool to retrieve a specific document by its unique identifier. Use when you need to get document details, metadata, processing status, or check for errors. Returns comprehensive document information including chunk count, page count, and any processing errors." }, { "slug": "RAGIE_GET_DOCUMENT_CHUNK", "name": "Get Document Chunk", "description": "Tool to retrieve a specific document chunk by its document and chunk ID. Use when you need detailed information about a specific chunk within a document, including its content, metadata, position index, and optional modality data for audio/video chunks." }, { "slug": "RAGIE_GET_DOCUMENT_CHUNK_CONTENT", "name": "Get Document Chunk Content", "description": "Tool to retrieve document chunk content in requested format with streaming support for media. Use when you need to get the actual content of a specific chunk from a document." }, { "slug": "RAGIE_GET_DOCUMENT_CHUNKS", "name": "Get Document Chunks", "description": "Tool to retrieve document chunks with pagination support. Lists all document chunks sorted by index in ascending order (max 100 items per page). Documents created prior to 9/18/2024 that have not been updated since have chunks sorted by ID instead of index." }, { "slug": "RAGIE_GET_DOCUMENT_CONTENT", "name": "Get Document Content", "description": "Tool to retrieve the content of a document by its ID. Use when you need to access the full content of a specific document. The media_type parameter can be used to request content in different formats." }, { "slug": "RAGIE_GET_DOCUMENT_SUMMARY", "name": "Get Document Summary", "description": "Tool to retrieve an LLM-generated summary of a document by its ID. Use when you need to get a concise summary of a document's content." }, { "slug": "RAGIE_GET_PARTITION", "name": "Get Partition", "description": "Tool to retrieve a partition by ID with usage statistics and resource limits. Use when you need to get detailed information about a specific partition." }, { "slug": "RAGIE_GET_RESPONSE", "name": "Get Response", "description": "Tool to retrieve a response by its unique identifier. Use when you need to check the status or details of a previously created response." }, { "slug": "RAGIE_LIST_CONNECTIONS_CONNECTIONS_GET", "name": "List Connections", "description": "Tool to list all connections sorted by creation date descending with pagination support. Use when you need to retrieve connections, optionally filtered by metadata." }, { "slug": "RAGIE_LIST_CONNECTION_SOURCE_TYPES", "name": "List Connection Source Types", "description": "Tool to list available connection source types like 'google_drive' and 'notion' along with their metadata. Use when you need to discover what connector types are available in Ragie." }, { "slug": "RAGIE_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to list all documents sorted by creation date (descending) with pagination support. Use when you need to browse or retrieve document metadata. Supports filtering and pagination up to 100 items per page." }, { "slug": "RAGIE_LIST_ENTITIES_BY_DOCUMENT", "name": "List Entities By Document", "description": "Tool to retrieve all extracted entities from a specific document with pagination support. Use when you need to access structured data that has been extracted from a document by Ragie's entity extraction instructions." }, { "slug": "RAGIE_LIST_ENTITIES_BY_INSTRUCTION", "name": "List Entities by Instruction", "description": "Tool to retrieve entities generated by a specific instruction. Use when you need to fetch entities extracted from documents based on a specific instruction's processing." }, { "slug": "RAGIE_LIST_INSTRUCTIONS", "name": "List Instructions", "description": "Tool to retrieve all instruction records from the Ragie system. Use when you need to view all available instructions that define natural language prompts and entity schemas applied to documents." }, { "slug": "RAGIE_LIST_PARTITIONS", "name": "List Partitions", "description": "Tool to retrieve a paginated list of all partitions sorted by name in ascending order. Use when you need to list available partitions with their configurations and limits." }, { "slug": "RAGIE_PATCH_DOCUMENT_METADATA", "name": "Patch Document Metadata", "description": "Tool to update metadata for a specific document with partial update support. Use when you need to modify document metadata fields without replacing the entire metadata object. Supports both synchronous and asynchronous updates." }, { "slug": "RAGIE_RETRIEVE", "name": "Retrieve Document Chunks", "description": "Tool to retrieve relevant document chunks based on a query. Use when you need to search and retrieve document content that matches a specific query, with optional filtering and reranking capabilities." }, { "slug": "RAGIE_SET_PARTITION_LIMITS", "name": "Set Partition Limits", "description": "Tool to set usage limits on partition pages and media. Use when you need to configure monthly or maximum limits for pages processed/hosted, video/audio processing, or media streaming/hosting for a specific partition." }, { "slug": "RAGIE_UPDATE_DOCUMENT_FROM_URL", "name": "Update Document From URL", "description": "Tool to update an existing document by fetching content from a publicly accessible URL. Use when you need to refresh or replace a document's content with data from a web URL. The document goes through processing steps before it is ready for retrieval." }, { "slug": "RAGIE_UPDATE_DOCUMENT_RAW", "name": "Update Document Raw", "description": "Tool to update a document's content from raw text or JSON data. Use when modifying existing document content. The document undergoes processing and becomes available for retrieval once it reaches the ready state." }, { "slug": "RAGIE_UPDATE_INSTRUCTION", "name": "Update Instruction", "description": "Tool to update an instruction's active status. Use when you need to activate or deactivate an existing instruction." }, { "slug": "RAGIE_UPDATE_PARTITION", "name": "Update Partition", "description": "Tool to update a partition's configuration including description, context-aware settings, and metadata schema. Use when you need to modify an existing partition's settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ragie_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard under API Keys (https://secure.ragie.ai/api-keys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "railway", "name": "Railway", "logo": "https://logos.composio.dev/api/railway", "description": "Railway is a deployment platform for building and shipping applications with instant deployments, automatic scaling, and managed infrastructure.", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAILWAY_CREATE_PLUGIN", "name": "Create Plugin", "description": "Creates a new plugin in Railway for the specified project. Use this action when you need to add a custom plugin to a Railway project, such as for integrating external services or extending project functionality. The action requires a valid project ID (found in the Railway dashboard URL) and a descriptive name for the plugin. The plugin will be created with default settings and can be further configured after creation." }, { "slug": "RAILWAY_DELETE_VARIABLE", "name": "Delete Variable", "description": "Delete a Railway environment variable. This action uses the `variableDelete` GraphQL mutation to permanently remove an environment variable from a project, environment, or service. This action is irreversible — once deleted, the variable cannot be recovered." }, { "slug": "RAILWAY_DELETE_VOLUME", "name": "Delete Volume", "description": "Permanently delete a persistent volume and all its associated data from Railway. Use when you need to remove a volume that is no longer needed. This action is irreversible — the volume and all its data will be permanently deleted and cannot be recovered once removed. Use this action when: - Cleaning up unused volumes to reduce storage costs - Removing volumes associated with deprecated environments - Deleting volumes before removing a project" }, { "slug": "RAILWAY_DELETE_WORKSPACE", "name": "Delete workspace", "description": "Delete a Railway workspace and all data associated with it. This action uses the `workspaceDelete` GraphQL mutation to permanently remove a workspace. Use this action when you need to permanently delete a workspace that is no longer needed. This action is irreversible — once deleted, the workspace and all its associated projects, environments, and data cannot be recovered." }, { "slug": "RAILWAY_DISCONNECT_USER_DISCORD", "name": "Disconnect Discord account", "description": "Disconnects the authenticated user's Railway account from Discord. Use when you need to unlink a Discord account that was previously connected to Railway for notifications, authentication, or team management. This action is irreversible for the disconnect operation — the user must manually reconnect through the Railway dashboard or Discord OAuth flow if needed." }, { "slug": "RAILWAY_GET_DEPLOYMENT_LOGS", "name": "Get Deployment Logs", "description": "Retrieve runtime logs for a deployment. Use when you need to view the runtime application logs for troubleshooting runtime issues, monitoring application behavior, or debugging errors that occur during deployment execution. This action queries the Railway GraphQL API for runtime log entries associated with the specified deployment ID. The logs are returned in reverse chronological order (most recent first)." }, { "slug": "RAILWAY_GET_ENVIRONMENT", "name": "Get Environment", "description": "Get details of a specific Railway environment by its ID, including service instances and deployment information. Use this action when you need to retrieve detailed information about an environment, such as its name, creation timestamp, and the service instances deployed within it, along with their latest deployment statuses. This is a read-only action that queries the Railway GraphQL API." }, { "slug": "RAILWAY_GET_GIT_HUB_PR_INFO", "name": "Get GitHub PR Info", "description": "Get information for a GitHub pull request associated with a Railway service. Use this action when you need to retrieve details about a specific pull request, such as its title, state, URL, or author information, for monitoring PR status or integrating with CI/CD workflows. This is a read-only action that queries the Railway GraphQL API for pull request information linked to the specified service." }, { "slug": "RAILWAY_GET_USER_KICKBACK_EARNINGS", "name": "Get User Kickback Earnings", "description": "Get the total kickback earnings for the authenticated Railway user. Use this action when you need to retrieve the kickback earnings information for the authenticated user, including the total amount earned and the currency. This is a read-only operation that queries the Railway GraphQL API. Kickback earnings are rewards earned through the Railway referral program when users you refer upgrade their Railway projects." }, { "slug": "RAILWAY_LIST_API_TOKENS", "name": "List API Tokens", "description": "Retrieve all API tokens for the authenticated user from Railway. Use this action when you need to fetch the list of API tokens associated with the currently authenticated user. This is a read-only operation that returns token metadata including the ID, name, and creation timestamp for each token. The action queries the Railway GraphQL API and returns the complete list of tokens." }, { "slug": "RAILWAY_LIST_ENVIRONMENT_PATCHES", "name": "List Environment Patches", "description": "Retrieve all patches for a Railway environment using the GraphQL API. Use this action when you need to fetch the list of configuration patches applied to an environment. This is useful for auditing environment history, tracking configuration changes, or reviewing past deployments to an environment. The action queries the Railway GraphQL API for all patches associated with the specified environment ID and returns their metadata including identifiers and timestamps." }, { "slug": "RAILWAY_LIST_GIT_HUB_REPOS", "name": "List GitHub Repos", "description": "Retrieve a list of GitHub repositories that Railway has access to. Use this action when you need to fetch the list of GitHub repositories associated with the authenticated user's GitHub account through Railway. This is a read-only operation that returns the id, name, and owner for each repository. The action queries the Railway GraphQL API githubRepos endpoint and returns the complete list of accessible GitHub repositories." }, { "slug": "RAILWAY_LIST_GIT_HUB_WRITABLE_SCOPES", "name": "List GitHub Writable Scopes", "description": "Retrieve the list of GitHub scopes the user has installed the installation to. Use this action when you need to fetch the list of GitHub scope names that the authenticated user has granted to the Railway GitHub application. This is a read-only operation that returns an array of GitHub permission scope strings such as 'repo', 'workflow', or 'read:user'. Note: This endpoint requires account-level authentication, not workspace/project tokens." }, { "slug": "RAILWAY_LIST_INTEGRATION_AUTHS", "name": "List Integration Auths", "description": "Retrieve all integration auths for the authenticated user from Railway. Use this action when you need to fetch the list of integration auths (such as GitHub, GitLab, Vercel, or other connected integrations) associated with the currently authenticated user. This is a read-only operation that returns auth metadata including the ID, name, type, and creation timestamp for each integration. The action queries the Railway GraphQL API and returns the complete list of integration auths." }, { "slug": "RAILWAY_LIST_NOTIFICATION_DELIVERIES", "name": "List Notification Deliveries", "description": "Retrieve notification deliveries for the authenticated user. Use this action when you need to fetch a list of notification deliveries, such as tracking which notifications have been sent (e.g., EMAIL, WEBHOOK, SLACK) and when they were created. This is a read-only operation that queries the Railway GraphQL API. The action supports pagination through the GraphQL edges/node pattern and returns basic notification delivery information including ID, type, and creation timestamp for each delivery." }, { "slug": "RAILWAY_LIST_TRUSTED_DOMAINS", "name": "List Railway Trusted Domains", "description": "Fetch all trusted domains for the authenticated Railway workspace. Use this action when you need to retrieve all trusted domains configured for workspace membership invitations. Trusted domains allow users with emails from those domains to be invited to the workspace without individual invitations. This is useful for auditing existing domain configurations or obtaining domain IDs for deletion operations. This action requires authentication and will return domains from the workspace associated with the provided credentials." }, { "slug": "RAILWAY_UPDATE_PROJECT", "name": "Update Project", "description": "Update project settings and configuration on Railway. Use this action when you need to modify project properties such as description, visibility settings, or PR deploy preferences. The following fields can be updated: - description: A brief description of the project - isPublic: Whether the project is publicly visible - prDeploys: Whether pull request preview deployments are enabled This is an idempotent operation — updating a project with the same settings multiple times will not change the result after the first update." }, { "slug": "RAILWAY_UPDATE_SERVICE_INSTANCE", "name": "Update Service Instance", "description": "Update build/deploy settings for a service in a specific environment on Railway. Use this action when you need to modify service configuration including commands, healthcheck, replicas, region, and cron schedule. This is an idempotent operation. The following fields can be updated: - startCommand: Custom start command for the service - buildCommand: Custom build command - rootDirectory: Root directory for monorepo setups - healthcheckPath: Health check endpoint path - healthcheckTimeout: Health check timeout in seconds - region: Deployment region - numReplicas: Number of service replicas - restartPolicyType: Restart policy (ON_FAILURE, ALWAYS, NEVER) - restartPolicyMaxRetries: Maximum restart retries - cronSchedule: Cron expression for scheduled deployments - sleepApplication: Enable/disable sleep when idle - dockerfilePath: Custom Dockerfile path - watchPatterns: File patterns for automatic redeployment" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "railway_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "openid,email,profile,offline_access,workspace:viewer,project:viewer" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "railway_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Account Token", "type": "string", "description": "Railway account tokens provide broad API access to resources your account can access. Create one at https://railway.com/account/tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "raisely", "name": "Raisely", "logo": "https://logos.composio.dev/api/raisely", "description": "Raisely is a fundraising platform that enables organizations to create and manage online fundraising campaigns.", "category": "fundraising", "authSchemes": [ "API_KEY" ], "toolCount": 61, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAISELY_CHECK_PROFILE_URL", "name": "Check Profile URL Availability", "description": "Tool to verify if a profile URL is available for a given campaign and get suggestions if unavailable. Use when creating a new profile to ensure the desired URL path is not already taken, or to get alternative path suggestions." }, { "slug": "RAISELY_CHECK_USER", "name": "Check User Registration", "description": "Tool to check if a user is already registered to a campaign with a specific email address. Use when validating sign-up forms to prompt existing users to log in instead of creating duplicate accounts." }, { "slug": "RAISELY_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign in Raisely. Use when you need to create a new fundraising campaign or clone an existing one." }, { "slug": "RAISELY_CREATE_DONATION", "name": "Create Offline Donation", "description": "Tool to record an offline donation in Raisely. Use when recording donations that were processed externally (outside of Raisely's payment flow). These donations are marked with type=OFFLINE to indicate they were processed elsewhere." }, { "slug": "RAISELY_CREATE_EXERCISE_LOG", "name": "Create Exercise Log", "description": "Tool to create a new exercise log in Raisely. Use when you need to record physical activity data for a user, such as running, cycling, or swimming. Requires userUuid and profileUuid." }, { "slug": "RAISELY_CREATE_INTERACTION", "name": "Create Interaction", "description": "Tool to create a new interaction in Raisely. Use when you need to record an interaction event. Either categoryUuid or categoryPath must be provided." }, { "slug": "RAISELY_CREATE_POST", "name": "Create Post", "description": "Create a new post in Raisely. Use when you need to add a blog post or update to a profile or campaign." }, { "slug": "RAISELY_CREATE_PROMO_CODE", "name": "Create Promo Code", "description": "Tool to create a new promo code in Raisely. Use when you need to add discount codes for campaigns, create promotional offers, or set up limited-time discounts." }, { "slug": "RAISELY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to add a new webhook to your Raisely account. Use when you need to subscribe to event notifications. By default, webhooks trigger for events across all campaigns unless a specific campaignUuid is provided." }, { "slug": "RAISELY_DELETE_EXERCISE_LOG", "name": "Delete Exercise Log", "description": "Tool to delete an exercise log from Raisely. Use when you need to remove a specific exercise log record by its UUID. Returns the deleted exercise log data for confirmation." }, { "slug": "RAISELY_DELETE_INTERACTION", "name": "Delete Interaction", "description": "Tool to delete an existing custom interaction from Raisely. Use when you need to remove a custom interaction by its UUID. Cannot delete system-generated or read-only interactions." }, { "slug": "RAISELY_DELETE_POST", "name": "Delete Raisely Post", "description": "Tool to delete a post from the Raisely platform. Use when you need to permanently remove a blog post by its path or UUID. Returns the deleted post record upon successful deletion." }, { "slug": "RAISELY_DELETE_PROFILE", "name": "Delete Profile", "description": "Tool to archive a profile in Raisely. Archived profiles are hidden from the campaign but not permanently deleted. Use when a fundraiser wants to remove their profile from public view or when cleaning up campaign profiles." }, { "slug": "RAISELY_DELETE_WEBHOOK", "name": "Delete Raisely Webhook", "description": "Tool to delete a webhook from the Raisely platform. Use when you need to permanently remove a webhook subscription by its UUID. Returns the deleted webhook record upon successful deletion." }, { "slug": "RAISELY_GET_API_DOCS", "name": "Retrieve Raisely API Documentation Summary", "description": "Retrieve a summary of the Raisely API documentation including metadata and sample endpoints. Returns the OpenAPI version, API info (title, version, description, contact), and a sample of available paths. Use this to understand the general structure of the Raisely API." }, { "slug": "RAISELY_GET_AUTHENTICATE", "name": "Authenticate Token", "description": "Authenticate a token to confirm it's valid and check the logged-in user. Use to verify token validity, get the authenticated user's details, and find the organisation UUID for future requests." }, { "slug": "RAISELY_GET_AVAILABLE_EVENTS", "name": "Get Available Events", "description": "Tool to retrieve a list of available Raisely webhook events. Use when you need to know all event types Raisely can send via webhooks." }, { "slug": "RAISELY_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve a specific campaign from Raisely. Use when you need to get details for a single campaign by UUID, path, or domain." }, { "slug": "RAISELY_GET_CAMPAIGN_PROFILE", "name": "Get Campaign Profile", "description": "Tool to retrieve the campaign profile for a Raisely campaign. The campaign profile is the top-level profile for all profiles in the campaign. It is hidden from the fundraising website, but will have the same name, path, and goal as your campaign." }, { "slug": "RAISELY_GET_CAMPAIGNS", "name": "Get campaigns", "description": "Tool to retrieve a paginated list of campaigns from Raisely. Use when you need to list campaigns after obtaining a valid API token." }, { "slug": "RAISELY_GET_CAMPAIGNS_PROFILES", "name": "List Campaign Profiles", "description": "List all fundraising profiles in a Raisely campaign. Profiles represent individuals, teams, or organizations participating in a fundraising campaign. Returns profile details including name, fundraising goal, amount raised, and associated user information. Supports search, pagination, and sorting. Use 'limit' and 'offset' for paging through large result sets." }, { "slug": "RAISELY_GET_EXERCISE_LOG", "name": "Get Exercise Log", "description": "Retrieve a specific exercise log by UUID from the Raisely platform. Use when you need to fetch detailed information about a particular exercise activity." }, { "slug": "RAISELY_GET_INTERACTION", "name": "Get Interaction", "description": "Tool to retrieve a specific interaction from Raisely by its UUID. Use when you need to fetch details about a particular interaction record." }, { "slug": "RAISELY_GET_POST", "name": "Get Post", "description": "Tool to retrieve a specific post from the Raisely fundraising platform. Use when you need to fetch details of a single post by its UUID or path." }, { "slug": "RAISELY_GET_PROFILE", "name": "Get Profile", "description": "Retrieves a specific fundraising profile from Raisely by UUID or path. Use this tool to get detailed information about an individual, team, or organisation profile including fundraising totals, activity metrics, goals, and associated user information. Set private=true to access private custom fields when authenticated with proper permissions." }, { "slug": "RAISELY_GET_PROFILES", "name": "Raisely Get Profiles", "description": "Retrieves a paginated list of fundraising profiles for a Raisely campaign. Use this tool to: - List all fundraisers (profiles) in a campaign - Search for specific profiles by name or description - Filter profiles by user or organisation - Rank profiles by amount raised, donor count, or activity metrics - Paginate through large result sets The 'campaign' parameter is required and accepts a campaign UUID, path, or domain." }, { "slug": "RAISELY_GET_USER", "name": "Get User", "description": "Tool to retrieve a specific user from Raisely by UUID. Use when you need detailed information about a single user including their contact details, admin status, and custom fields." }, { "slug": "RAISELY_GET_USER_PROFILES", "name": "Get User Profiles", "description": "Tool to retrieve all profiles associated with a specific user. Use when you have a user UUID and need to list both public and optionally private profiles." }, { "slug": "RAISELY_GET_USERS", "name": "Get Users", "description": "Retrieve a paginated list of users from the Raisely platform. Returns all users in the organisation with optional pagination, sorting, and private data. Use the 'private' parameter to include sensitive user details like email, address, and phone number. Default limit is 100 records. Use 'offset' for pagination through large result sets." }, { "slug": "RAISELY_LIST_CAMPAIGN_DONATIONS", "name": "List Campaign Donations", "description": "Tool to retrieve donations from a specific campaign in Raisely. Returns a paginated list of donations in descending order by creation date (most recent first) unless otherwise specified. Use this when you need to view donation history, track fundraising progress, or analyze donor patterns for a campaign." }, { "slug": "RAISELY_LIST_CAMPAIGN_PRODUCTS", "name": "List Campaign Products", "description": "Retrieves all products available in a Raisely campaign. Use this to list tickets, merchandise, or other items configured for sale in a specific campaign. Products include details such as price, availability, and stock information." }, { "slug": "RAISELY_LIST_CAMPAIGN_SUBSCRIPTIONS", "name": "List Campaign Subscriptions", "description": "List all subscriptions for a specific Raisely campaign. Returns a paginated list of recurring donation subscriptions with detailed payment and subscriber information. Use when you need to retrieve subscriptions for a specific campaign by campaign UUID, path, or domain. Supports filtering by status, mode, source, user, and search queries, with sorting and pagination options." }, { "slug": "RAISELY_LIST_DONATIONS", "name": "Raisely List Donations", "description": "Retrieve donations from Raisely. Returns a paginated list of all donations in descending order of creation time (unless specified otherwise). Use this to view donation history, analyze giving patterns, or track specific donations by status, campaign, or user. Supports extensive filtering and sorting options." }, { "slug": "RAISELY_LIST_EXERCISE_LOGS", "name": "Raisely List Exercise Logs", "description": "Retrieve exercise logs from Raisely. Returns a paginated list of exercise logs you've previously created, in descending order of when they were created unless specified otherwise. Use this to view exercise activities, track fitness progress, or analyze activity data for fundraising campaigns." }, { "slug": "RAISELY_LIST_INTERACTION_CATEGORIES", "name": "List Interaction Categories", "description": "Tool to retrieve all interaction categories in the organisation from Raisely. Use when you need to list available interaction categories for categorizing supporter interactions, such as phone calls, emails, or meetings. Supports search, filtering, sorting, and pagination." }, { "slug": "RAISELY_LIST_INTERACTIONS", "name": "List Interactions", "description": "Tool to retrieve all interactions from Raisely. Use when you need to list user interactions, track engagement history, or audit activity records. Supports filtering by user, category, and text search with pagination and sorting options." }, { "slug": "RAISELY_LIST_ORDERS", "name": "List Orders", "description": "Tool to retrieve all orders in a campaign from Raisely. Use when you need to list orders, view order details, or analyze purchase data. Supports filtering, sorting, and pagination." }, { "slug": "RAISELY_LIST_POSTS", "name": "List Posts", "description": "Tool to retrieve a list of posts you've previously created on Raisely. Posts are returned in descending order of creation date by default, unless you specify otherwise using the 'sort' and 'order' parameters." }, { "slug": "RAISELY_LIST_PROFILE_DONATIONS", "name": "List Profile Donations", "description": "Retrieves a paginated list of donations for a specific fundraising profile from Raisely. Returns donations in descending order of creation date by default (most recent first). Use this tool to: - View all donations received by a specific fundraiser profile - Track donation history for reporting and analysis - Search for specific donations by donor information - Filter donations by status, type, currency, or other criteria - Monitor suspicious or fraudulent donations for a profile" }, { "slug": "RAISELY_LIST_PROFILE_MEMBERS", "name": "List Profile Members", "description": "Retrieves a paginated list of all members belonging to a team profile in Raisely. Use this tool when you need to list all individual fundraisers who are members of a specific team. The 'path' parameter is required and accepts either the team profile's UUID or its path/slug." }, { "slug": "RAISELY_LIST_PROFILE_POSTS", "name": "List Profile Posts", "description": "List all posts created by a specific profile in Raisely. Returns posts in descending order of creation date by default (newest first). Use when you need to retrieve a profile's activity feed or blog posts." }, { "slug": "RAISELY_LIST_PROMO_CODES", "name": "List Promo Codes", "description": "Tool to retrieve all promo codes in a campaign from Raisely. Use when you need to list available discount codes, view promo code details, or check usage statistics for promotional campaigns." }, { "slug": "RAISELY_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to retrieve all segments from Raisely. Use when you need to list previously created segments, view segment definitions, or filter segments by sharing status. Results are returned in descending order of creation time unless specified otherwise." }, { "slug": "RAISELY_LIST_SUBSCRIPTIONS2", "name": "Raisely List Subscriptions 2", "description": "Tool to retrieve subscriptions from Raisely. Returns a list of subscriptions you've previously created in descending order of creation time. Use when you need to view subscription history, analyze recurring donation patterns, or filter subscriptions by status, campaign, user, or other criteria." }, { "slug": "RAISELY_LIST_TAGS", "name": "List Tags", "description": "Tool to retrieve the list of tags from Raisely. Use when you need to fetch all available tags for categorization or filtering purposes. Note that tags flagged as private will not be included unless the 'private' parameter is set to true (requires authentication)." }, { "slug": "RAISELY_LIST_USER_DONATIONS", "name": "List User Donations", "description": "Retrieves a paginated list of donations for a specific user from Raisely. Returns donations in descending order of creation date by default (most recent first). Use this to view all donations created by or associated with a specific user." }, { "slug": "RAISELY_LIST_USER_INTERACTIONS", "name": "List User Interactions", "description": "Retrieves all interactions for a given user from Raisely. Returns a paginated list of user activities including donations, profile updates, comments, and other events. Use this to track user engagement and activity history. Supports filtering by category, search queries, and pagination options." }, { "slug": "RAISELY_LIST_USER_SUBSCRIPTIONS", "name": "Raisely List User Subscriptions", "description": "Retrieve subscriptions for a specific user from Raisely. Returns a paginated list of subscriptions in descending order of creation time (unless specified otherwise). Use this to view recurring donation patterns for a specific user, identify their active subscriptions, or track subscription history." }, { "slug": "RAISELY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve the list of webhooks configured for a campaign. Use when you need to list all webhook subscriptions for a specific campaign after authenticating." }, { "slug": "RAISELY_MOVE_DONATION", "name": "Move Donation", "description": "Tool to move a donation to a different profile in Raisely. Use when you need to reassign a donation from one fundraiser or campaign profile to another. The target profile may be in a different campaign." }, { "slug": "RAISELY_POST_LOGOUT", "name": "Logout from Raisely", "description": "Tool to invalidate the current user's token and log out. Use when ending an authenticated Raisely session to ensure the token is invalidated." }, { "slug": "RAISELY_POST_USERS", "name": "Create User", "description": "Create a new user in Raisely. Fails if a user with the same email already exists. Use for adding new users to your organization's user database." }, { "slug": "RAISELY_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update an existing campaign in Raisely. Use when you need to modify campaign settings like name, goal, mode, or custom fields. The campaign can be identified by its UUID, path, or domain. Only provide the fields you want to update." }, { "slug": "RAISELY_UPDATE_CAMPAIGN_CONFIG", "name": "Update Campaign Config", "description": "Tool to update a specific configuration attribute for a campaign in Raisely. Use when you need to modify campaign settings or custom configuration values." }, { "slug": "RAISELY_UPDATE_EXERCISE_LOG", "name": "Update Exercise Log", "description": "Update an existing exercise log in Raisely. Use when you need to modify distance, time, activity type, or other details of a logged exercise." }, { "slug": "RAISELY_UPDATE_POST", "name": "Update Post", "description": "Tool to update a specified post in Raisely. Use when you need to modify an existing post's title, body, date, path, or photo URL. Requires the post's UUID or path identifier." }, { "slug": "RAISELY_UPDATE_PROFILE", "name": "Update Profile", "description": "Updates a specific profile in Raisely. Use when you need to modify profile details like description, goal, name, photo, or custom fields." }, { "slug": "RAISELY_UPDATE_USER", "name": "Update User", "description": "Tool to update a specified user in Raisely. Use when you need to modify an existing user's profile information, contact details, or custom fields." }, { "slug": "RAISELY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a specified webhook in Raisely. Use when you need to modify an existing webhook's URL, events, or secret. Requires the webhook's UUID identifier." }, { "slug": "RAISELY_UPLOAD_CAMPAIGN_MEDIA", "name": "Upload Campaign Media", "description": "Tool to upload one or more files to a campaign's media library in Raisely. Use when you need to add images, documents, or other media files to a specific campaign folder." }, { "slug": "RAISELY_UPSERT_USER", "name": "Upsert User", "description": "Tool to upsert a user record in Raisely, optionally tagging and creating an interaction. Use when accepting form submissions or creating/updating user records. Creates a new user if the email doesn't exist, or updates the existing user if it does." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "raisely_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Raisely Campaign Private Key", "type": "string", "description": "The private key for your Raisely campaign, providing admin access.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rakuten", "name": "Rakuten", "logo": "https://logos.composio.dev/api/rakuten", "description": "Rakuten Web Service API provides access to product search, books, travel, recipe, and other Rakuten services data. Supports both simple API key authentication for public data and OAuth2 for private user data.", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "rakuten_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "rakuten_favoritebookmark_read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "rakuten_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Application ID", "type": "string", "description": "Your Rakuten Web Service Application ID", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Affiliate ID", "type": "string", "description": "Optional affiliate ID for commission tracking (format: xxxxx.xxxxxxxx.xxxxx.xxxxxxxx)", "required": false, "default": null } ] } } } ] }, { "slug": "ramp", "name": "Ramp", "logo": "https://logos.composio.dev/api/ramp", "description": "Ramp is a platform that helps you manage your finances, track your income and expenses, and get insights into your business", "category": "accounting", "authSchemes": [ "OAUTH2" ], "toolCount": 88, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAMP_CREATE_DEPARTMENT", "name": "Create Department", "description": "Tool for creating a new department in your Ramp organization. Perfect for setting up organizational structure and expense categorization." }, { "slug": "RAMP_CREATE_INVENTORY_ITEM_ACCOUNTING_FIELD", "name": "Create Inventory Item Accounting Field", "description": "Tool to create a new inventory item accounting field for tracking inventory categories. Use when setting up inventory tracking for an accounting connection. Note: There can only be one active inventory item accounting field per accounting connection." }, { "slug": "RAMP_CREATE_MEMO", "name": "Create Transaction Memo", "description": "Tool for uploading a new memo for a transaction in Ramp. Use when you need to add notes or context to existing transactions." }, { "slug": "RAMP_CREATE_MILEAGE_REIMBURSEMENT", "name": "Create Mileage Reimbursement", "description": "Tool to create a mileage reimbursement in Ramp. Use when a user needs to submit a reimbursement for business-related travel distance. Requires distance, reimbursee_id, and trip_date as mandatory fields." }, { "slug": "RAMP_CREATE_NEW_CUSTOM_ACCOUNTING_FIELD", "name": "Create New Custom Accounting Field", "description": "Tool for creating a new custom accounting field. Note: This operation requires elevated permissions not available in the demo API." }, { "slug": "RAMP_CREATE_TAX_CODE_ACCOUNTING_FIELD", "name": "Create Tax Code Accounting Field", "description": "Tool to create a new tax code accounting field in Ramp. There can only be one active tax code accounting field per accounting connection. Use when you need to set up tax code tracking for an accounting integration." }, { "slug": "RAMP_CREATE_USER_INVITE", "name": "Create User Invite", "description": "Tool to create a user invite for onboarding new employees to Ramp. Triggers an async task to send an invite email. Users must accept the invite to be onboarded. Assign users to specific entities using location_id." }, { "slug": "RAMP_CREATE_WEBHOOK_SUBSCRIPTION", "name": "Create Webhook Subscription", "description": "Tool to create a new webhook subscription for receiving event notifications from Ramp. Use when you need to set up real-time notifications for events like transactions, bills, or reimbursements. The newly registered subscription will be in pending verification state and requires endpoint verification with the provided challenge." }, { "slug": "RAMP_DEACTIVATE_USER", "name": "Deactivate User", "description": "Tool to deactivate a user in your Ramp organization. Use when you need to prevent a user from logging in, spending on cards, or receiving notifications. Once deactivated, users cannot access their Ramp account or perform any actions." }, { "slug": "RAMP_DELETE_ACCOUNTING_ACCOUNT", "name": "Delete Accounting GL Account", "description": "Tool to delete a general ledger account from Ramp. Use when you need to remove a GL account from the accounting system." }, { "slug": "RAMP_DELETE_ACCOUNTING_CONNECTION", "name": "Delete Accounting Connection", "description": "Tool to disconnect the current active API-based accounting connection. Use when you need to disable the accounting integration. This action will clear associated accounting settings including Custom Fields, GL Accounts, and Vendors. Only API-based connections can be disconnected via this endpoint." }, { "slug": "RAMP_DELETE_ACCOUNTING_FIELDS", "name": "Delete Custom Accounting Field", "description": "Tool to delete a custom accounting field from Ramp. Use when you need to remove a custom accounting field from the system. Note: Fields are read-only and cannot be deleted when a direct accounting connection is enabled." }, { "slug": "RAMP_DELETE_ACCOUNTING_INVENTORY_ITEM_OPTIONS", "name": "Delete Accounting Inventory Item Option", "description": "Tool to delete an accounting inventory item option from Ramp. Use when you need to remove an inventory item option from the accounting system." }, { "slug": "RAMP_DELETE_ACCOUNTING_TAX_CODE", "name": "Delete Tax Code Accounting Field", "description": "Tool to delete the tax code accounting field from Ramp. Use when you need to remove the tax code field configuration. Note: The tax code field must exist before deletion." }, { "slug": "RAMP_DELETE_ACCOUNTING_TAX_CODE_OPTIONS", "name": "Delete Accounting Tax Code Option", "description": "Tool to delete a tax code option from Ramp. Use when you need to remove a tax code option from the accounting system." }, { "slug": "RAMP_DELETE_ACCOUNTING_TAX_RATES", "name": "Delete Accounting Tax Rate", "description": "Tool to delete an accounting tax rate from Ramp. Use when you need to remove a tax rate from the accounting system." }, { "slug": "RAMP_DELETE_ACCOUNTING_VENDORS", "name": "Delete Accounting Vendor", "description": "Tool to delete an accounting vendor from Ramp. Use when you need to remove a vendor from the accounting system." }, { "slug": "RAMP_DELETE_CUSTOM_FIELD_OPTION", "name": "Delete Custom Field Option", "description": "Tool to delete a custom accounting field option from Ramp. Use when you need to remove a specific option from a custom accounting field." }, { "slug": "RAMP_DELETE_INVENTORY_ITEM_FIELD", "name": "Delete Inventory Item Field", "description": "Tool to delete the inventory item accounting field from Ramp. Use when you need to remove the inventory item field from the accounting connection. This uses the authenticated connection's context to identify which inventory item field to delete." }, { "slug": "RAMP_DELETE_SPEND_ALLOCATION_DELETE_USERS", "name": "Remove Users from Shared Limit", "description": "Tool to remove users from a shared spend limit in Ramp. Use when you need to revoke a user's access to a shared spending allocation." }, { "slug": "RAMP_DELETE_WEBHOOK", "name": "Delete Webhook Subscription", "description": "Tool to delete a webhook subscription by ID. Use when you need to remove a webhook subscription from Ramp. The operation is irreversible and returns no content on success." }, { "slug": "RAMP_FETCH_ACCOUNTING_ACCOUNT", "name": "Fetch General Ledger Account", "description": "Tool to fetch a specific general ledger account by ID from Ramp. Use when you need to retrieve detailed information about a single GL account." }, { "slug": "RAMP_FETCH_ACCOUNTING_VENDOR", "name": "Fetch Accounting Vendor", "description": "Tool to fetch a specific accounting vendor by ID from Ramp. Use when you need to retrieve detailed information about a single accounting vendor for coding transactions, reimbursements, bills, or purchase orders." }, { "slug": "RAMP_FETCH_CUSTOM_ACCOUNTING_FIELD", "name": "Fetch Custom Accounting Field", "description": "Tool for fetching a custom accounting field." }, { "slug": "RAMP_GET_ACCOUNTING_ACCOUNTS", "name": "List General Ledger Accounts", "description": "Tool to list general ledger accounts from Ramp. Use when you need to retrieve GL accounts for accounting integration or transaction categorization." }, { "slug": "RAMP_GET_ACCOUNTING_ALL_CONNECTIONS", "name": "Fetch All Accounting Connections", "description": "Tool to fetch all accounting connections for the current Ramp business. Use when you need to view all accounting integrations, including both active and inactive connections." }, { "slug": "RAMP_GET_ACCOUNTING_CONNECTION", "name": "Get Accounting Connection", "description": "Tool to fetch the current active accounting connection for a Ramp account. Use when you need to check the status, type, or configuration of the active accounting integration with providers like QuickBooks or NetSuite." }, { "slug": "RAMP_GET_ACCOUNTING_CONNECTION_BY_ID", "name": "Fetch Accounting Connection By ID", "description": "Tool to fetch a specific accounting connection by ID from Ramp. Use when you need to retrieve detailed information about a particular accounting integration." }, { "slug": "RAMP_GET_ACCOUNTING_FIELDS", "name": "List Custom Accounting Fields", "description": "Tool to list custom accounting fields for coding transactions. Use when you need to retrieve custom accounting fields that can be leveraged to code transactions, reimbursements, and bills." }, { "slug": "RAMP_GET_ACCOUNTING_VENDORS", "name": "List Accounting Vendors", "description": "Tool to list accounting vendors from Ramp. Use when you need to retrieve vendor data for transaction coding, reimbursements, bills, or purchase orders in the accounting system." }, { "slug": "RAMP_GET_ALL_TRANSACTIONS", "name": "Get All Transactions", "description": "Get all the transactions." }, { "slug": "RAMP_GET_CARD", "name": "Get Card", "description": "Tool for retrieving detailed information about a specific card. Returns comprehensive card details including spending limits, cardholder info, and fulfillment status. Use this to get complete card profile for analysis or troubleshooting." }, { "slug": "RAMP_GET_CARD_VAULT_RESOURCE", "name": "Get Card Vault Resource", "description": "Tool to fetch a card's sensitive details from the vault. Requires vault API access. Use when you need to retrieve PAN or CVV for a specific card. This endpoint uses a separate vault base URL." }, { "slug": "RAMP_GET_CUSTOM_FIELD_OPTION", "name": "Get Custom Field Option", "description": "Tool to fetch a custom accounting field option by its ID. Use when you need to retrieve details about a specific custom accounting field option from Ramp's accounting integration." }, { "slug": "RAMP_GET_DEPARTMENT", "name": "Get Department", "description": "Tool for retrieving detailed information about a specific department. Returns comprehensive department details including hierarchy information. Use this to get complete department profile for organizational analysis." }, { "slug": "RAMP_GET_INVENTORY_ITEM_FIELD", "name": "Get Inventory Item Field", "description": "Tool to fetch inventory item accounting field for the current accounting connection. Use when you need to retrieve the inventory item field configuration from the connected ERP system." }, { "slug": "RAMP_GET_MEMO", "name": "Get Memo", "description": "Tool to fetch a transaction memo. Use when you need to retrieve the memo text associated with a specific transaction." }, { "slug": "RAMP_GET_REIMBURSEMENT", "name": "Get Reimbursement Details", "description": "Tool for retrieving complete details of a specific reimbursement. Includes amount, status, user information, accounting details, receipts, and sync status. Use this to get comprehensive reimbursement information for approval workflows or detailed analysis." }, { "slug": "RAMP_GET_SPEND_LIMIT", "name": "Get Spend Limit", "description": "Tool to fetch detailed information about a specific spend limit. Use when you need to retrieve comprehensive limit details including balance, restrictions, linked cards, and users." }, { "slug": "RAMP_GET_STATEMENT", "name": "Get Statement", "description": "Tool for retrieving statement details or downloading statements. Supports JSON, PDF, and CSV formats for financial reporting." }, { "slug": "RAMP_GET_TRANSACTION", "name": "Get Transaction Details", "description": "Tool for retrieving complete details of a specific transaction. Includes merchant details, receipts, accounting codes, and dispute information." }, { "slug": "RAMP_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information about a specific Ramp user by their ID. Use when you need complete user profile information including role, status, department, and custom fields." }, { "slug": "RAMP_GET_USERS_DEFERRED_STATUS", "name": "Get Users Deferred Status", "description": "Tool for fetching the status of a deferred user task. Use when you need to check the progress or outcome of asynchronous user operations like user creation." }, { "slug": "RAMP_GET_VENDOR", "name": "Get Vendor Details", "description": "Tool for retrieving detailed information about a specific vendor. Returns comprehensive vendor details including spending totals, category, and contact information. Use this to get complete vendor profile for analysis or updates." }, { "slug": "RAMP_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve detailed information about a specific webhook subscription by ID. Use when you need to check webhook configuration, status, or event types." }, { "slug": "RAMP_ISSUE_VIRTUAL_CARD", "name": "Issue Virtual Card", "description": "Tool for issuing virtual cards to users instantly. Creates cards with customizable spending limits and restrictions. Returns full card details including card number and CVV." }, { "slug": "RAMP_LIST_ACCOUNTING_INVENTORY_ITEM_OPTIONS", "name": "List Accounting Inventory Item Options", "description": "Tool to list accounting inventory item options from Ramp. Use when you need to retrieve inventory items for accounting integration or transaction categorization." }, { "slug": "RAMP_LIST_ACCOUNTING_TAX_RATES", "name": "List Accounting Tax Rates", "description": "Tool to list tax rates from Ramp's accounting integration. Use when you need to retrieve tax rate information for transaction categorization or tax compliance." }, { "slug": "RAMP_LIST_CARDS", "name": "List All Cards", "description": "Tool for listing all cards across the organization with optional filters. Returns card details including spending limits, cardholder info, and state. Use this to analyze card distribution, monitor card states, or find specific cards." }, { "slug": "RAMP_LIST_DEPARTMENTS", "name": "List Departments", "description": "Tool for listing all departments in the organization. Returns department details including names, codes, and hierarchy information. Use this to analyze organizational structure and department relationships." }, { "slug": "RAMP_LIST_MEMOS", "name": "List Memos", "description": "Tool for listing memos associated with transactions in your Ramp organization. Returns memo details with support for filtering by card, user, department, location, manager, merchant, and date range." }, { "slug": "RAMP_LIST_REIMBURSEMENTS", "name": "List Reimbursements", "description": "Tool for listing reimbursements with comprehensive filtering options. Returns reimbursement details including amounts, status, sync information, and associated entities. Use this to analyze reimbursement patterns, track approval workflows, and manage expense reimbursements." }, { "slug": "RAMP_LIST_STATEMENTS", "name": "List Statements", "description": "Tool for listing all statements with filtering options. Perfect for financial reporting and reconciliation workflows." }, { "slug": "RAMP_LIST_USERS", "name": "List Users", "description": "Tool for listing users in your Ramp organization with flexible filtering. Perfect for user audits, access management, and organizational analysis. Helps identify inactive users, role distribution, and departmental structures." }, { "slug": "RAMP_LIST_VENDORS", "name": "List Vendors", "description": "Tool for listing vendors with their spending information. Returns vendor details including spending totals, categories, and activity status. Use this to analyze vendor relationships and procurement patterns." }, { "slug": "RAMP_LIST_VENDORS_ACCOUNTS", "name": "List Vendor Bank Accounts", "description": "Tool for listing bank accounts associated with a specific vendor. Returns account details including currency, payment method, and default status. Use this to retrieve payment account information for vendor transactions." }, { "slug": "RAMP_LIST_VENDORS_CONTACTS", "name": "List Vendor Contacts", "description": "Tool for listing contacts associated with a specific vendor. Returns contact information including names, emails, and phone numbers. Use this to find vendor contact details for communication or relationship management." }, { "slug": "RAMP_LIST_VENDORS_CREDITS", "name": "List Vendor Credits", "description": "Tool to list all vendor credits for all vendors of a business. Use when you need to track vendor credits, analyze credit usage across vendors, or reconcile vendor accounts." }, { "slug": "RAMP_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool for listing all webhook subscriptions for the organization. Returns webhook details including endpoint URLs, event types, and status. Use this to audit webhook configurations and monitor active subscriptions." }, { "slug": "RAMP_OPTIONS_FOR_CUSTOM_ACCOUNTING_FIELD", "name": "Options for Custom Accounting Field", "description": "Tool for listing options for a given accounting field." }, { "slug": "RAMP_PATCH_ACCOUNTING_CONNECTION", "name": "Update Accounting Connection", "description": "Tool to update an accounting connection's settings. Use when you need to modify configuration for API-based accounting connections. This endpoint is restricted to Accounting API based connections only." }, { "slug": "RAMP_PATCH_CARD_RESOURCE", "name": "Update Card", "description": "Tool to update a card's properties including owner, display name, and spending restrictions. Use when you need to modify card settings or reassign card ownership." }, { "slug": "RAMP_PATCH_CUSTOM_FIELD_OPTION", "name": "Update Custom Field Option", "description": "Tool to update a custom accounting field option. Use when you need to modify display name, code, value, or visibility of an existing field option." }, { "slug": "RAMP_PATCH_GL_ACCOUNT_RESOURCE", "name": "Update General Ledger Account", "description": "Tool to update a general ledger account in Ramp. Use when you need to modify the name, code, or reactivate a deleted GL account." }, { "slug": "RAMP_PATCH_INVENTORY_ITEM_FIELD", "name": "Update Inventory Item Field", "description": "Tool to update the inventory item accounting field for a Ramp connection. Use when you need to modify the name or display name of the inventory item field." }, { "slug": "RAMP_POST_ACCOUNTING_ACCOUNTS", "name": "Upload Accounting GL Accounts", "description": "Tool to batch upload general ledger accounts to Ramp. Supports up to 500 accounts per call with all-or-nothing validation. Use when you need to create GL accounts in Ramp's accounting system." }, { "slug": "RAMP_POST_ACCOUNTING_CONNECTION", "name": "Create Accounting Connection", "description": "Tool to register a new API-based accounting connection between Ramp and an accounting provider. Use when establishing a new connection to accounting systems like QuickBooks, NetSuite, or Xero. If a Universal CSV connection exists, it will be upgraded to an API-based connection." }, { "slug": "RAMP_POST_ACCOUNTING_VENDORS", "name": "Upload Accounting Vendors", "description": "Tool to batch upload vendors to Ramp for coding transactions, bills, and purchase orders. Supports up to 500 vendors per call with all-or-nothing validation. Use when you need to create vendors in Ramp's accounting system." }, { "slug": "RAMP_POST_INVENTORY_ITEM_OPTIONS", "name": "Upload Inventory Item Options", "description": "Tool to upload inventory item options for an active inventory item accounting field. Use when you need to create inventory items in Ramp's accounting system." }, { "slug": "RAMP_POST_PHYSICAL_CARD", "name": "Create Physical Card", "description": "Tool to create a physical card asynchronously. Returns a task ID which can be used to track the card creation status. Physical cards require fulfillment details with a shipping address. Use when a user needs a physical card for in-person transactions." }, { "slug": "RAMP_REACTIVATE_ACCOUNTING_CONNECTION", "name": "Reactivate Accounting Connection", "description": "Tool to reactivate a previously unlinked accounting connection by changing its status back to linked. This preserves all previous accounting field configurations and settings. Use when you need to restore a disconnected accounting integration. The business must not have any other active accounting connections." }, { "slug": "RAMP_REACTIVATE_USER", "name": "Reactivate User", "description": "Tool to reactivate a suspended user in your Ramp organization. Use when you need to restore a user's access. Upon reactivation, users can log in to Ramp again, spend on their previously issued cards, and resume receiving Ramp notifications." }, { "slug": "RAMP_SUBMIT_REIMBURSEMENT_RECEIPT", "name": "Submit Reimbursement Receipt", "description": "Tool to upload a receipt for a reimbursement. Use when submitting receipts for out-of-pocket expenses. If reimbursement_id is provided, attaches the receipt to an existing reimbursement; otherwise creates a new draft reimbursement via OCR." }, { "slug": "RAMP_SUSPEND_CARD", "name": "Suspend Card", "description": "Tool to suspend a card by creating an async task that locks the card from use. Use when you need to temporarily disable a card. The suspension is revertable." }, { "slug": "RAMP_TERMINATE_CARD", "name": "Terminate Card", "description": "Tool to permanently terminate a Ramp card. This action creates an async task to terminate the card and is irreversible. Use when you need to permanently deactivate a card. The response contains a task ID that can be used to check the termination status." }, { "slug": "RAMP_UPDATE_ACCOUNTING_FIELD", "name": "Update Custom Accounting Field", "description": "Tool to update a custom accounting field. Use when you need to modify the display name, name, or splittable setting of an existing custom accounting field." }, { "slug": "RAMP_UPDATE_ACCOUNTING_INVENTORY_ITEM_OPTIONS", "name": "Update Accounting Inventory Item Option", "description": "Tool to update an inventory item option in Ramp's accounting system. Use when you need to modify an existing inventory item option's details." }, { "slug": "RAMP_UPDATE_ACCOUNTING_TAX_CODE", "name": "Update Accounting Tax Code", "description": "Tool to update tax code accounting field. Use when you need to modify the name or display name of the tax code field in Ramp's accounting system." }, { "slug": "RAMP_UPDATE_ACCOUNTING_TAX_CODE_OPTIONS", "name": "Update Accounting Tax Code Option", "description": "Tool to update a tax code option in Ramp. Use when you need to modify the name or associated tax rates of an existing tax code option." }, { "slug": "RAMP_UPDATE_ACCOUNTING_TAX_RATE", "name": "Update Accounting Tax Rate", "description": "Tool to update an accounting tax rate in Ramp. Use when you need to modify the name, rate percentage, or associated GL account for an existing tax rate." }, { "slug": "RAMP_UPDATE_ACCOUNTING_VENDOR", "name": "Update Accounting Vendor", "description": "Tool to update an accounting vendor in Ramp. Use when you need to modify vendor details such as name or code, or reactivate a deleted vendor." }, { "slug": "RAMP_UPDATE_CARD_LIMIT", "name": "Update Card Spending Limit", "description": "Tool for updating spending limits on a card. Note: This returns the limits associated with the card. The actual update might require using the limit ID directly via PATCH /limits/{limit_id}." }, { "slug": "RAMP_UPDATE_DEPARTMENT", "name": "Update Department", "description": "Tool for updating an existing department in your Ramp organization. Useful for reorganizing departmental structure or renaming departments." }, { "slug": "RAMP_UPDATE_LIMITS", "name": "Update Spending Limit", "description": "Tool to update a spending limit in Ramp. Use when you need to modify limit settings such as display name, spending restrictions, permitted spend types, or user assignments." }, { "slug": "RAMP_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user in your Ramp organization. Use when modifying user information such as name, department, role, or manager assignments." }, { "slug": "RAMP_UPLOAD_NEW_OPTIONS", "name": "Upload New Options for Custom Accounting Field", "description": "Tool for uploading new options for a given accounting field." }, { "slug": "RAMP_UPLOAD_TAX_CODE_OPTIONS", "name": "Upload Tax Code Options", "description": "Tool to upload tax code options to Ramp. Use when you need to create or update tax codes in the accounting system. Requires an active tax code accounting field for the accounting connection." }, { "slug": "RAMP_UPLOAD_TAX_RATES", "name": "Upload Accounting Tax Rates", "description": "Tool to batch upload tax rates to Ramp. Supports up to 500 tax rates per call with all-or-nothing validation. Use when you need to create tax rates in Ramp's accounting system. Ensure data is sanitized and tax rates do not already exist before uploading." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "ramp_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for Ramp", "required": true, "default": "https://api.ramp.com/developer/v1" }, { "name": "authorizationUrl", "displayName": "Authorization URL", "type": "string", "description": "The authorization URL for Ramp OAuth2 authentication", "required": true, "default": "https://app.ramp.com/v1/authorize" } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "accounting:read,accounting:write,bank_accounts:read,bills:read,bills:write,business:read,cards:read,cards:read_vault,cards:write,cashbacks:read,custom_records:read,custom_records:write,departments:read,departments:write,entities:read,item_receipts:read,leads:read,leads:write,limits:read,limits:write,locations:read,locations:write,memos:read,memos:write,merchants:read,purchase_orders:read,receipt_integrations:read,receipt_integrations:write,receipts:read,receipts:write,reimbursements:read,spend_programs:read,spend_programs:write,statements:read,transactions:read,transfers:read,users:read,users:write,vendors:read,vendors:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "rawg_video_games_database", "name": "RAWG Video Games Database", "logo": "https://logos.composio.dev/api/rawg_video_games_database", "description": "The largest video game database and video game discovery service with comprehensive game information, ratings, platforms, and release dates.", "category": "gaming", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAWG_VIDEO_GAMES_DATABASE_CREATOR_ROLES_LIST", "name": "Get Creator Roles List", "description": "Tool to get a list of creator positions (jobs) in the gaming industry. Use when you need to browse available creator roles or positions." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_CREATORS_LIST", "name": "List Game Creators", "description": "Tool to get a list of game creators from the RAWG database. Use when you need to browse available creators or find specific game developers, designers, or other gaming industry professionals. Supports pagination via page and page_size parameters." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_CREATORS_READ", "name": "Get Creator Details", "description": "Tool to get details of a specific creator. Use when you need detailed information about a game creator or person from the RAWG database." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_DEVELOPERS_LIST", "name": "List Game Developers", "description": "Tool to get a list of game developers from the RAWG database. Use when you need to browse game developers or filter games by developer. Supports pagination via page and page_size parameters." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_DEVELOPERS_READ", "name": "Get Developer Details", "description": "Tool to get details of a specific developer from the RAWG database. Use when you need to retrieve information about a game developer by their unique ID." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_ACHIEVEMENTS_READ", "name": "Get Game Achievements", "description": "Tool to get a list of achievements for a specific game. Use when you need to retrieve game achievements with names, descriptions, images, and completion percentages." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_ADDITIONS_LIST", "name": "Get Game Additions List", "description": "Tool to get a list of DLCs, GOTY editions, companion apps, and other additions for a game. Use when you need to find downloadable content or special editions for a specific game." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_DEVELOPMENT_TEAM_LIST", "name": "Get Game Development Team List", "description": "Tool to get a list of individual creators from the development team of a specific game. Use when you need to find out who worked on developing a particular game." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_GAME_SERIES_LIST", "name": "Get Game Series List", "description": "Tool to get a list of games that are part of the same series. Use when you need to find all games in a franchise or series related to a specific game." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_LIST", "name": "List Games", "description": "Tool to get a list of games from RAWG database. Use when you need to browse, search, or filter games with extensive options including platforms, genres, release dates, ratings, and more. Supports pagination and custom ordering." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_MOVIES_READ", "name": "Get Game Trailers", "description": "Tool to get a list of game trailers and gameplay clips from the RAWG database. Use when you need to retrieve video content for a specific game including preview thumbnails and video URLs at different quality levels. Note that not all games have associated trailer data." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_PARENT_GAMES_LIST", "name": "Get Parent Games List", "description": "Tool to get a list of parent games for DLCs and editions. Use when you need to identify the main or base game for a DLC, expansion, or special edition." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_READ", "name": "Get Game Details", "description": "Tool to get comprehensive details of a specific game. Use when you need detailed information about a game including ratings, platforms, descriptions, and metadata." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_REDDIT_READ", "name": "Get Game Reddit Posts", "description": "Tool to get a list of most recent posts from a game's subreddit. Use when you need to retrieve Reddit discussions, community posts, and social media content related to a specific game." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_SCREENSHOTS_LIST", "name": "Get Game Screenshots", "description": "Tool to get screenshots for a specific game from the RAWG database. Use when you need to retrieve game screenshots with image URLs, dimensions, and visibility status. Supports pagination and custom ordering." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GAMES_STORES_LIST", "name": "Get Game Store Links", "description": "Tool to get links to stores that sell a specific game. Use when you need to find where to purchase a game from digital storefronts." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GENRES_LIST", "name": "List Video Game Genres", "description": "Tool to get a list of video game genres from RAWG database. Use when you need to browse available genres or filter games by genre. Supports pagination and custom ordering." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_GENRES_READ", "name": "Get Genre Details", "description": "Tool to get details of a specific video game genre. Use when you need information about a particular genre including its name, description, and game count." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_PLATFORMS_LIST", "name": "List Video Game Platforms", "description": "Tool to get a list of video game platforms from RAWG database. Use when you need to browse available gaming platforms from PC to mobile. Supports pagination and custom ordering." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_PLATFORMS_LISTS_PARENTS_LIST", "name": "List Parent Platforms", "description": "Tool to get a list of parent platforms from RAWG database. Use when you need to browse platform families like PlayStation, Xbox, or PC that group related gaming platforms together. For instance, PlayStation groups PS1, PS2, PS3, PS4, and PS5." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_PLATFORMS_READ", "name": "Get Platform Details", "description": "Tool to get details of a specific gaming platform from the RAWG database. Use when you need information about a particular platform including its name, launch year, and game count." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_PUBLISHERS_LIST", "name": "List Video Game Publishers", "description": "Tool to get a list of video game publishers from the RAWG database. Use when you need to browse game publishers or filter games by publisher. Supports pagination via page and page_size parameters." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_PUBLISHERS_READ", "name": "Get Publisher Details", "description": "Tool to get details of a specific publisher from the RAWG database. Use when you need to retrieve information about a game publisher by their unique ID." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_STORES_LIST", "name": "List Video Game Stores", "description": "Tool to get a list of video game storefronts. Use when you need to browse digital distribution services where games can be purchased. Supports pagination and ordering options." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_STORES_READ", "name": "Get Store Details", "description": "Tool to get details of a specific video game store. Use when you need information about a particular storefront including its name, domain, and game count." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_TAGS_LIST", "name": "List Tags", "description": "Tool to get a list of tags from the RAWG database. Use when you need to browse tags that categorize games by specific characteristics. Supports pagination via page and page_size parameters." }, { "slug": "RAWG_VIDEO_GAMES_DATABASE_TAGS_READ", "name": "Get Tag Details", "description": "Tool to get details of a specific tag from the RAWG database. Use when you need detailed information about a particular tag including its name, games count, and description." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rawg_video_games_database_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the RAWG developer page at https://rawg.io/login/?forward=developer", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "razorpay", "name": "Razorpay", "logo": "https://logos.composio.dev/api/razorpay", "description": "Payment gateway and financial services platform for businesses in India", "category": "payment processing", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 42, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RAZORPAY_CANCEL_INVOICE", "name": "Cancel Invoice", "description": "Tool to cancel an existing Razorpay invoice. Use this when you need to cancel an invoice that has been issued but not yet paid. Only invoices in 'issued' status can be cancelled." }, { "slug": "RAZORPAY_CANCEL_PAYMENT_LINK", "name": "Cancel Payment Link", "description": "Tool to cancel a specific payment link. Use when you need to cancel an active payment link before it expires. The payment link cannot be used after cancellation." }, { "slug": "RAZORPAY_CREATE_AN_ORDER", "name": "Create an Order", "description": "Tool to create a Razorpay order with specified amount and currency. Use when you need to initiate a payment order before collecting payment from a customer. Amount and currency are mandatory parameters; receipt and notes are optional for internal tracking." }, { "slug": "RAZORPAY_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a contact for payouts in RazorpayX. Use when you need to add a new contact (employee, vendor, or customer) for making payouts." }, { "slug": "RAZORPAY_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer in Razorpay. Use when you need to register a customer for recurring payments or saved cards. Returns a customer_id that can be used for future transactions." }, { "slug": "RAZORPAY_CREATE_INVOICE", "name": "Create an Invoice", "description": "Tool to create an invoice for billing customers. Use when you need to generate an invoice with customer details and line items. You can create a blank invoice in draft state, update it later, and issue it when ready." }, { "slug": "RAZORPAY_CREATE_ITEM", "name": "Create Item", "description": "Tool to create an item that can be used in Razorpay invoices. Use when you need to create a new product or service entry for invoicing purposes." }, { "slug": "RAZORPAY_CREATE_PAYMENT_LINK", "name": "Create Payment Link", "description": "Tool to create a payment link for collecting payments via a shareable URL. Use when you need to generate a payment link for a customer to complete payment online." }, { "slug": "RAZORPAY_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an invoice in Razorpay. Use when you need to permanently remove an invoice from the system. Note: Only invoices in 'draft' status can be deleted. Invoices in other statuses (issued, paid, cancelled) cannot be deleted." }, { "slug": "RAZORPAY_DELETE_ITEM", "name": "Delete item", "description": "Tool to delete an existing item from Razorpay. Use when you need to permanently remove an item from the system. Items can only be deleted if they are not associated with any invoices." }, { "slug": "RAZORPAY_FETCH_ALL_CUSTOMERS", "name": "Fetch All Customers", "description": "Tool to retrieve a paginated list of all customers from Razorpay. Use when you need to get customer details for multiple customers or iterate through the customer base." }, { "slug": "RAZORPAY_FETCH_ALL_INVOICES", "name": "Fetch All Invoices", "description": "Tool to fetch all invoices with pagination and filtering support. Use when you need to retrieve a list of invoices, optionally filtered by payment ID, customer ID, receipt, or date range." }, { "slug": "RAZORPAY_FETCH_ALL_PAYMENT_LINKS", "name": "Fetch All Payment Links", "description": "Tool to fetch all payment links with pagination and filtering support. Use when you need to retrieve a list of payment links, optionally filtered by payment ID, reference ID, or date range." }, { "slug": "RAZORPAY_FETCH_ALL_PAYMENTS", "name": "Fetch All Payments", "description": "Tool to retrieve all payments from your Razorpay account with pagination and time filtering support. Use when you need to list payments, audit transactions, or analyze payment history. Returns payments in descending order by creation time (newest first)." }, { "slug": "RAZORPAY_FETCH_ALL_REFUNDS_FOR_A_PAYMENT", "name": "Fetch all refunds for a payment", "description": "Tool to retrieve all refunds for a specific payment using the Razorpay API. Use when you need to check refund status, track refund history, or list all refunds associated with a particular payment." }, { "slug": "RAZORPAY_FETCH_A_PAYMENT_LINK", "name": "Fetch a Payment Link", "description": "Tool to retrieve details of a specific payment link by its ID. Use when you need to check the status, amount, customer details, or other attributes of an existing payment link." }, { "slug": "RAZORPAY_FETCH_INVOICE_BY_ID", "name": "Fetch Invoice by ID", "description": "Tool to fetch a specific invoice by its ID from Razorpay. Use when you need to retrieve complete details of an invoice including customer information, line items, amounts, and payment status." }, { "slug": "RAZORPAY_FETCH_ORDERS", "name": "Fetch All Orders", "description": "Tool to retrieve a paginated list of all orders from Razorpay. Use when you need to fetch multiple orders, filter by date range, receipt, or authorization status." }, { "slug": "RAZORPAY_FETCH_ORDERS_BY_ID", "name": "Fetch Order by ID", "description": "Tool to fetch details of a specific Razorpay order using its order ID. Use when you need to retrieve order information, check order status, or verify payment details." }, { "slug": "RAZORPAY_FETCH_PAYMENTS_BY_ORDER", "name": "Fetch payments by order", "description": "Tool to fetch all payments made for a particular order. Use when you need to retrieve payment details associated with a specific order ID." }, { "slug": "RAZORPAY_FETCH_REFUNDS", "name": "Fetch All Refunds", "description": "Tool to retrieve all refunds created by you using the Razorpay API. Use when you need to list refunds, track refund status, or analyze refund history with pagination support." }, { "slug": "RAZORPAY_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact by ID in RazorpayX. Use when you need to fetch information about an existing contact including their name, email, contact details, and metadata." }, { "slug": "RAZORPAY_GET_CUSTOMER", "name": "Retrieve Customer", "description": "Tool to retrieve details of a specific customer by their ID. Use when you need to fetch customer information including name, email, contact details, and custom notes." }, { "slug": "RAZORPAY_GET_FUND_ACCOUNT", "name": "Get Fund Account", "description": "Tool to retrieve details of a specific fund account by its ID. Use when you need to fetch fund account information including associated contact, account type, and payment details." }, { "slug": "RAZORPAY_GET_ITEM", "name": "Get Item", "description": "Tool to retrieve complete details of a specific Razorpay item by its ID. Use when you need to fetch information about an item including its name, description, amount, tax details, and other metadata." }, { "slug": "RAZORPAY_GET_SETTLEMENT_RECON", "name": "Get Settlement Reconciliation Report", "description": "Tool to fetch settlement reconciliation report for a specific date or month from Razorpay. Use when you need to retrieve detailed settlement transaction data for accounting and reconciliation purposes." }, { "slug": "RAZORPAY_GET_TRANSFER_REVERSALS", "name": "Get Transfer Reversals", "description": "Tool to fetch all reversals for a specific transfer using the Razorpay Route API. Use when you need to check reversal status, track reversal history, or list all reversals associated with a particular transfer." }, { "slug": "RAZORPAY_ISSUE_AN_INVOICE", "name": "Issue an Invoice", "description": "Tool to issue a draft Razorpay invoice to send it to the customer. Use when you need to issue an invoice that has been created in draft status. Only invoices in 'draft' status can be issued." }, { "slug": "RAZORPAY_LIST_CUSTOMER_TOKENS", "name": "List Customer Tokens", "description": "Tool to retrieve all tokens (saved payment methods) for a customer. Use when you need to fetch the list of saved payment methods associated with a specific customer ID." }, { "slug": "RAZORPAY_LIST_DISPUTES", "name": "List Disputes", "description": "Tool to retrieve a list of all disputes with pagination support. Use when you need to view chargebacks, fraud claims, or other payment disputes. Supports filtering by date range and pagination for efficient retrieval of dispute records." }, { "slug": "RAZORPAY_LIST_FUND_ACCOUNTS", "name": "List Fund Accounts", "description": "Tool to retrieve a list of all fund accounts from RazorpayX with pagination support. Use when you need to fetch payout destinations, view beneficiary accounts, or manage fund account records. Supports filtering by contact and account type for efficient retrieval." }, { "slug": "RAZORPAY_LIST_FUND_VALIDATIONS", "name": "List Fund Validations", "description": "Tool to fetch all fund account validation transactions from RazorpayX with pagination support. Use when you need to retrieve validation records, check account verification status, or monitor validation transactions." }, { "slug": "RAZORPAY_LIST_ITEMS", "name": "List Items", "description": "Tool to retrieve a list of all items from Razorpay with pagination support. Use when you need to fetch invoice items, view available products, or manage item catalog. Supports filtering by active status and date range for efficient retrieval." }, { "slug": "RAZORPAY_LIST_PAYMENT_DOWNTIMES", "name": "List Payment Downtimes", "description": "Tool to fetch all active payment method downtimes from Razorpay. Use when you need to check the current status of payment methods and identify any ongoing or scheduled downtimes." }, { "slug": "RAZORPAY_NOTIFY_PAYMENT_LINK", "name": "Notify Payment Link", "description": "Tool to send or resend notification for a payment link via SMS or email. Use when you need to notify a customer about a payment link." }, { "slug": "RAZORPAY_SEND_OR_RESEND_NOTIFICATION", "name": "Send/Resend Invoice Notification", "description": "Tool to send or resend an invoice notification via email or SMS. Use when you need to notify customers about an invoice through their preferred communication channel." }, { "slug": "RAZORPAY_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's details in RazorpayX. Use when you need to modify contact information such as name, email, phone number, type, reference ID, or notes." }, { "slug": "RAZORPAY_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer's details in Razorpay. Use when you need to modify customer information such as name, email, or contact number." }, { "slug": "RAZORPAY_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update an existing draft invoice in Razorpay. Use when you need to modify invoice details such as customer information, line items, description, notes, or other fields. Only invoices in draft state can be updated." }, { "slug": "RAZORPAY_UPDATE_ITEM", "name": "Update Item", "description": "Tool to update an existing item's details in Razorpay. Use when you need to modify the name, description, or amount of an item. Only the fields provided in the request will be updated; other fields remain unchanged." }, { "slug": "RAZORPAY_UPDATE_ORDER", "name": "Update Order", "description": "Tool to update an existing order in Razorpay. Use when you need to modify the notes field of an order to store or update additional metadata." }, { "slug": "RAZORPAY_UPDATE_PAYMENT_LINK", "name": "Update payment link", "description": "Tool to update an existing payment link in Razorpay. Use when you need to modify payment link details such as reference ID, expiry time, partial payment settings, notes, or reminder preferences." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "razorpay_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "razorpay_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Key Secret", "type": "string", "description": "Your Razorpay Key Secret from the dashboard", "required": true, "default": null }, { "name": "generic_id", "displayName": "Key ID", "type": "string", "description": "Your Razorpay Key ID from the dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "re_amaze", "name": "Re:amaze", "logo": "https://logos.composio.dev/api/re_amaze", "description": "Re:amaze is a multi-channel customer support platform offering live chat, email, social messaging, and automated workflows.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RE_AMAZE_GET_REPORTS_TAGS", "name": "Get report tags", "description": "Tool to retrieve a list of tags used in reports. Use when analyzing tag usage metrics across conversations." }, { "slug": "RE_AMAZE_GET_RESPONSE_TEMPLATES", "name": "Get Response Templates", "description": "Tool to retrieve response templates for the brand. Use when you need canned responses to streamline replies." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "re_amaze_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Brand Subdomain", "type": "string", "description": "The subdomain of your Re:amaze account (used to identify your brand scope). For example, if your account URL is https://mybrand.reamaze.io, enter \"mybrand\".", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Re:amaze API token. Generate it from Settings > Developer > API Token in your Re:amaze account.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Login Email", "type": "string", "description": "Your Re:amaze login email address used for API authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "realphonevalidation", "name": "Realphonevalidation", "logo": "https://logos.composio.dev/api/realphonevalidation", "description": "RealPhoneValidation offers real-time phone number validation services, providing information on connectivity, phone type, carrier, and more.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REALPHONEVALIDATION_CHECK_FRAUD", "name": "Check Phone Fraud Risk", "description": "Tool to check phone number for fraud risk using Fraud Check API. Provides a phone risk score and many actionable data points including phone type, carrier, location, and recommendation (block, flag, allow). Use when you need to identify possible fraudulent phone numbers. US numbers only." }, { "slug": "REALPHONEVALIDATION_EMAIL_VERIFY", "name": "Email Verification", "description": "Tool to validate an email address and check connectivity and disposability. Use after gathering an email to ensure it's deliverable and not disposable." }, { "slug": "REALPHONEVALIDATION_LOOKUP_DNC", "name": "DNC Lookup", "description": "Tool to check Do Not Call list status for US phone numbers. Determines if number is on National, State, or DMA Do Not Call lists, identifies cell vs landline, and checks for known TCPA litigators. Requires SAN number from FTC." }, { "slug": "REALPHONEVALIDATION_RPV_ACTIVE", "name": "Check Phone Active Status", "description": "Tool to determine if a phone number is active on a valid phone service provider. Use after collecting the user's phone number for real-time verification." }, { "slug": "REALPHONEVALIDATION_RPV_REASSIGNED_NUMBER_LOOKUP", "name": "Reassigned Number Lookup", "description": "Tool to check if a phone number has been reassigned since a given consent date. Use when verifying number ownership status after obtaining user consent." }, { "slug": "REALPHONEVALIDATION_RPV_SCRUB_PLUS", "name": "Scrub Plus Phone Numbers", "description": "Tool to scrub a phone number for connection status and type. Use to validate a US phone number's status and line type." }, { "slug": "REALPHONEVALIDATION_RPV_WIRELESS_ID", "name": "Wireless ID", "description": "Tool to identify whether a US phone number is landline or wireless. Use when conducting TCPA compliance checks." }, { "slug": "REALPHONEVALIDATION_VALIDATE_PHONE_SCRUB", "name": "Validate Phone Number (Scrub)", "description": "Tool to validate US phone numbers using budget-friendly Scrub API. Determines connectivity status quickly (under 2 seconds). Best for organizations with large lists/databases on tight budgets that only need connection status. Optional Iscell and Carrier fields available for additional charge." }, { "slug": "REALPHONEVALIDATION_VALIDATE_PHONE_TURBO_STANDARD", "name": "Validate Phone Turbo Standard", "description": "Tool to perform real-time US phone validation using Turbo Standard API. Provides connection status and phone type (Mobile, Landline, VoIP). Optimized for web forms and apps when only connection status and phone type are needed. Faster than Turbo V3 when only basic validation is required. Returns results in about 2 seconds." }, { "slug": "REALPHONEVALIDATION_VALIDATE_PHONE_TURBO_V3", "name": "Validate Phone Turbo V3", "description": "Tool to perform comprehensive real-time phone validation using Turbo V3 API. Returns connection status, phone type (landline, cell, VoIP), carrier ID, caller name (when available), and caller type (consumer, business). Use when complete phone data overview is required in web forms. US numbers only." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "realphonevalidation_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Unique API token provided by RealPhoneValidation. Find it in your account under Validation > Real-time API Validation.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "recruit_crm", "name": "Recruit CRM", "logo": "https://logos.composio.dev/api/recruit_crm", "description": "Cloud-based recruitment software trusted by recruitment agencies in 100+ countries. Manage candidates, clients, jobs, and streamline your entire recruitment workflow.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "recruit_crm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Recruit CRM API token. Navigate to Admin Settings > API & Integrations to generate your token. Note: API access requires Business Plan or higher, and only Account Owners can generate tokens.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "recruitee", "name": "Recruitee", "logo": "https://logos.composio.dev/api/recruitee", "description": "Recruitee is a collaborative hiring software that streamlines recruitment processes, enabling teams to source, interview, and hire candidates efficiently.", "category": "hr talent & recruitment", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RECRUITEE_CREATE_CANDIDATE", "name": "Create Candidate", "description": "Tool to create a new candidate profile. Use after gathering all candidate details. Example: \"Create a new candidate named Jane Doe with email jane.doe@example.com.\"" }, { "slug": "RECRUITEE_CREATE_NOTE", "name": "Create Note", "description": "Creates a new note for a candidate in Recruitee. Notes can be used to record interview feedback, assessments, or any observations about the candidate. Use this when you need to add commentary or documentation to a candidate's profile." }, { "slug": "RECRUITEE_CREATE_OFFER", "name": "Create Offer", "description": "Creates a new job offer or talent pool in Recruitee. Required fields include title, location IDs, and description. Use Get Locations action to retrieve valid location IDs before creating an offer. The offer status can be set to draft, internal, published, closed, or archived." }, { "slug": "RECRUITEE_DELETE_CANDIDATE", "name": "Delete Candidate", "description": "Tool to delete a candidate profile. Use when you need to permanently remove a candidate from your Recruitee account. Returns no content on success." }, { "slug": "RECRUITEE_DELETE_TAG", "name": "Delete Tag", "description": "Permanently deletes a tag from Recruitee by its ID. This action requires appropriate API permissions to delete tags. Use this when you need to remove unused or obsolete tags. Note: Deleting a tag removes it from all associated candidates and offers." }, { "slug": "RECRUITEE_GET_CANDIDATE", "name": "Get Candidate", "description": "Tool to retrieve detailed information about a specific candidate. Use when you need the candidate's full profile before proceeding." }, { "slug": "RECRUITEE_GET_CANDIDATES", "name": "Get Candidates", "description": "Tool to retrieve a list of all candidates in the company. Use when you need to fetch or filter candidates before proceeding." }, { "slug": "RECRUITEE_GET_COMPANY_ID", "name": "Get Company ID", "description": "Tool to retrieve the company ID of the authenticated account. Use when you need to confirm your company identity before other operations." }, { "slug": "RECRUITEE_GET_COMPANY_OFFER_PUBLIC", "name": "Get Company Offer Public", "description": "Tool to retrieve a specific published job offer by ID or slug from the public Careers Site API. Use after you have the offer identifier." }, { "slug": "RECRUITEE_GET_DEPARTMENTS", "name": "Get Departments", "description": "Tool to retrieve a list of company departments. Use when you need to reference or assign offers or candidates to departments." }, { "slug": "RECRUITEE_GET_LOCATIONS", "name": "Get Locations", "description": "Tool to retrieve a list of company locations. Use when you need to see all location options before assigning them to offers." }, { "slug": "RECRUITEE_GET_NOTES", "name": "Get Notes", "description": "Tool to retrieve a list of notes for a specific candidate. Use after confirming the candidate exists when you need to review their notes." }, { "slug": "RECRUITEE_GET_OFFERS", "name": "Get Offers", "description": "Tool to retrieve a list of all job offers. Use after authentication to browse or paginate your company's complete set of offers." }, { "slug": "RECRUITEE_GET_PIPELINE_STAGES", "name": "Get Pipeline Stages", "description": "Tool to retrieve pipeline stages of a job offer. Use when you have the offer ID and need its stages to track candidate progression. Example: \"Get pipeline stages for offer ID 456.\"" }, { "slug": "RECRUITEE_GET_TAGS", "name": "Get Tags", "description": "Retrieve all tags with optional filtering and pagination. Search by name, sort by name or usage count, and paginate through results." }, { "slug": "RECRUITEE_LIST_EEO_JOB_CATEGORIES", "name": "List EEO Job Categories", "description": "Tool to retrieve available EEO (Equal Employment Opportunity) job categories. Use when you need to see standard EEO job classification options." }, { "slug": "RECRUITEE_LIST_INVOICES", "name": "List Invoices", "description": "Tool to list invoices for a company. Use to retrieve billing invoice records." }, { "slug": "RECRUITEE_LIST_LOCALIZATION_SETTINGS", "name": "List Localization Settings", "description": "Tool to retrieve localization settings including proposed time format and start day of the week. Use when you need to check regional or time display preferences." }, { "slug": "RECRUITEE_LIST_SHARE_COUNTRIES", "name": "List Share Countries", "description": "Tool to retrieve all countries with region codes and phone codes per locale. Use when you need comprehensive country reference data including internationalization details." }, { "slug": "RECRUITEE_LIST_SHARE_EEO_ANSWERS", "name": "List Share EEO Answers", "description": "Tool to retrieve available EEO (Equal Employment Opportunity) answers. Use when you need to see available answer options for EEO compliance questions." }, { "slug": "RECRUITEE_UPDATE_CANDIDATE", "name": "Update Candidate", "description": "Updates an existing candidate's information in Recruitee. Use this to modify candidate details such as name, contact info, cover letter, tags, and social links. All fields except candidate_id are optional - only provide the fields you want to update. The API performs a partial update (PATCH), preserving any fields you don't specify." }, { "slug": "RECRUITEE_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update an existing note for a candidate. Use when you need to modify note text or pin status after creation." }, { "slug": "RECRUITEE_UPDATE_OFFER", "name": "Update Offer", "description": "Updates an existing job offer or talent pool in Recruitee. Allows modification of offer details including title, description, requirements, status, locations, department assignment, work type (remote/hybrid/on-site), visibility settings, and application form field requirements. Only specified fields are updated; omitted fields remain unchanged. Requires the offer ID - use Get Offers or Get Offer actions to retrieve existing offer IDs." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "recruitee_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Business Subdomain", "type": "string", "description": "The unique identifier for the company's account on Recruitee, used to personalize the base, authorization, and token URLs.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "recruitee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Company ID", "type": "string", "description": "The unique identifier for your company in Recruitee, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Recruitee API Token", "type": "string", "description": "The personal API token generated in Recruitee for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "redcircle_api", "name": "RedCircle API", "logo": "https://logos.composio.dev/api/redcircle_api", "description": "RedCircle API is the real-time Target product data API for accessing Target product catalog, reviews, and category data.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REDCIRCLE_API_ADD_ZIPCODES", "name": "Add Zipcodes", "description": "Tool to add zipcodes to your RedCircle API account for geolocation targeting. Use when you need to localize product searches by specific postal codes. New zipcodes take approximately 2 minutes to become available after being added." }, { "slug": "REDCIRCLE_API_CLEAR_COLLECTION_REQUESTS", "name": "Clear Collection Requests", "description": "Tool to remove all requests from a specified collection. Collections can only be cleared when not actively running. Use when you need to empty a collection of all its requests." }, { "slug": "REDCIRCLE_API_CREATE_COLLECTION", "name": "Create Collection", "description": "Tool to create a new collection for running up to 15,000 requests on a schedule. Use when you need to organize and schedule batch requests with various scheduling patterns, priority levels, and notification methods." }, { "slug": "REDCIRCLE_API_CREATE_DESTINATION", "name": "Create Destination", "description": "Tool to create a new destination for uploading Collection Result Sets to cloud storage. Use when you need to configure a storage destination for result sets with providers like S3, GCS, Azure, OSS, or S3-compatible storage." }, { "slug": "REDCIRCLE_API_CREATE_REQUESTS", "name": "Create Requests", "description": "Tool to add up to 1,000 requests to an existing collection. Use when you need to populate a collection with product requests. Collections have a maximum of 15,000 requests (100 if include_html=true). Sequential calls required; parallel requests trigger HTTP 429 errors." }, { "slug": "REDCIRCLE_API_DELETE_COLLECTION", "name": "Delete Collection", "description": "Tool to remove a collection from the system by ID. Use when you need to delete a collection that is not currently running." }, { "slug": "REDCIRCLE_API_DELETE_DESTINATION", "name": "Delete Destination", "description": "Tool to remove a destination from your RedCircle API account. Use when you need to permanently delete a specific destination by its ID." }, { "slug": "REDCIRCLE_API_DELETE_REQUEST", "name": "Delete Request from Collection", "description": "Tool to remove an individual request from a collection. Use when you need to delete a specific request from a collection by providing both collection_id and request_id. Collections must not be running during deletion." }, { "slug": "REDCIRCLE_API_DELETE_REQUESTS_BULK", "name": "Delete Requests In Bulk", "description": "Tool to delete multiple requests from a collection in bulk. Use when you need to remove multiple requests efficiently. Note: Requests can only be deleted when the collection is not running." }, { "slug": "REDCIRCLE_API_DELETE_ZIPCODES", "name": "Delete Zipcodes", "description": "Tool to remove zipcodes from your RedCircle API account. Use when you need to delete specific zipcode/domain pairs from your account." }, { "slug": "REDCIRCLE_API_GET_ACCOUNT", "name": "Get Account Information", "description": "Tool to retrieve account information, usage metrics, and platform status. Use when you need to check account credits, limits, plan details, or platform component status." }, { "slug": "REDCIRCLE_API_GET_COLLECTION", "name": "Get Collection", "description": "Tool to retrieve complete information about a specific collection. Use when you need detailed collection metadata including status, schedule, and configuration." }, { "slug": "REDCIRCLE_API_GET_REQUESTS_CSV_LINKS", "name": "Get Requests CSV Links", "description": "Tool to retrieve CSV download links for all requests in a collection. Use when you need to export request data in CSV format. Each CSV file contains up to 1000 requests." }, { "slug": "REDCIRCLE_API_GET_REQUESTS_JSON_LINKS", "name": "Get Requests JSON Links", "description": "Tool to retrieve download links for all requests in a collection in JSON format. Use when you need to access request data from a specific collection. Returns paginated URLs for downloading request information." }, { "slug": "REDCIRCLE_API_GET_RESULT_SET_CSV", "name": "Get Result Set CSV", "description": "Tool to retrieve a result set in CSV format with optional field filtering. Use when you need to export processed results from a collection as CSV files. Supports field selection using dot notation for nested fields. Results maintain 14-day retention." }, { "slug": "REDCIRCLE_API_GET_RESULT_SET_JSON", "name": "Get Result Set JSON", "description": "Tool to retrieve a result set in JSON format with download links. Use when you need to access processed results from a specific collection and result set. Returns detailed result information including download URLs for data files." }, { "slug": "REDCIRCLE_API_GET_RESULT_SET_JSONLINES", "name": "Get Result Set JSON Lines", "description": "Tool to retrieve a result set in JSON Lines format with download links. Use when you need to access processed results as newline-delimited JSON files. JSON Lines format provides one valid JSON object per line, ideal for streaming and processing large datasets." }, { "slug": "REDCIRCLE_API_GET_TARGET_PRODUCT_DATA", "name": "Get Target Product Data", "description": "Tool to retrieve Target data in real-time including search results, product information, reviews, or category listings. Use when you need to access Target.com product data such as searching for products, getting specific product details, retrieving reviews, or listing categories." }, { "slug": "REDCIRCLE_API_LIST_CATEGORIES", "name": "List Categories", "description": "Tool to retrieve all top-level (root) categories or filter results using optional parameters. Use when you need to browse the category hierarchy, search for specific categories, or retrieve category details. Parameters id, parent_id, and search_term are mutually exclusive." }, { "slug": "REDCIRCLE_API_LIST_COLLECTIONS", "name": "List Collections", "description": "Tool to retrieve all collections configured on your RedCircle API account with filtering and pagination. Use when you need to browse collections, filter by status or search term, or manage collection metadata." }, { "slug": "REDCIRCLE_API_LIST_DESTINATIONS", "name": "List Destinations", "description": "Tool to retrieve all destinations configured on your RedCircle API account with pagination and filtering. Use when you need to browse or manage destination configurations. Returns 10 destinations per page." }, { "slug": "REDCIRCLE_API_LIST_ERROR_LOGS", "name": "List Error Logs", "description": "Tool to list all error logs on your RedCircle API account. Use when you need to retrieve failed API request logs with error details. Results are paginated with 10 error logs per page. Supports filtering by search term and sorting by date or count." }, { "slug": "REDCIRCLE_API_LIST_REQUESTS_BY_PAGE", "name": "List Requests by Page", "description": "Tool to retrieve requests for a collection in paginated format. Use when you need to access collection requests with pagination support (max 1000 requests per page)." }, { "slug": "REDCIRCLE_API_LIST_RESULT_SETS", "name": "List Result Sets", "description": "Tool to list all result sets for a collection. Use when you need to retrieve execution history and results for a specific collection. Note: result sets have 14-day retention." }, { "slug": "REDCIRCLE_API_LIST_ZIPCODES", "name": "List Zipcodes", "description": "Tool to retrieve all zipcodes associated with your account with optional filtering. Use when you need to list zipcodes, optionally filtered by search term or domain. Supports pagination with max 10 results per page." }, { "slug": "REDCIRCLE_API_RESEND_WEBHOOK", "name": "Resend Webhook", "description": "Tool to resend a previously configured webhook POST request for a result set. Use when you need to debug webhook connectivity issues without re-executing the collection." }, { "slug": "REDCIRCLE_API_START_COLLECTION", "name": "Start Collection", "description": "Tool to initiate execution of a RedCircle API collection. Use when you need to start processing requests for a collection. Requires sufficient request credits and the collection must not be currently running." }, { "slug": "REDCIRCLE_API_STOP_ALL_COLLECTIONS", "name": "Stop All Collections", "description": "Tool to halt all currently active collections on your account. Use when you need to terminate all collection operations across your account. Collections in queued or running states are affected, resetting status to idle. Note: Queued collections receive credit refunds; running collections stop without reimbursement." }, { "slug": "REDCIRCLE_API_STOP_COLLECTION", "name": "Stop Collection", "description": "Tool to halt an active collection in queued or running state. Use when you need to stop a collection that is currently processing. Collections in queued status receive full credit refunds, while running collections are stopped without refunds." }, { "slug": "REDCIRCLE_API_UPDATE_COLLECTION", "name": "Update Collection", "description": "Tool to update an existing collection's configuration and settings. Use when you need to modify collection settings including name, schedule, priority, and destination assignments. Note: A collection can only be updated when it is not running." }, { "slug": "REDCIRCLE_API_UPDATE_DESTINATION", "name": "Update Destination", "description": "Tool to modify an existing destination configuration on your RedCircle API account. Use when you need to update destination settings such as name, credentials, storage paths, or enable/disable status. When enabling a previously disabled destination or updating credentials, a connectivity test will be performed automatically." }, { "slug": "REDCIRCLE_API_UPDATE_REQUEST", "name": "Update Request", "description": "Tool to modify a request within a collection. Use only when the collection is not running. Updates request parameters like type, tcin, or other Target Product Data API fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "redcircle_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://app.redcircleapi.com/playground", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "reddit_ads", "name": "Reddit Ads", "logo": "https://logos.composio.dev/api/reddit_ads", "description": "Reddit Ads API for managing advertising campaigns, conversions, and account data on Reddit.", "category": "marketing", "authSchemes": [ "OAUTH2" ], "toolCount": 83, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REDDIT_ADS_CREATE_AD_GROUP", "name": "Create Ad Group", "description": "Tool to create a new ad group within a Reddit Ads campaign. Use when setting up ad groups with specific bidding strategies, budget goals, and targeting criteria. Note that optimization_goal is required for conversion, video views, catalog sales, and app install campaign objectives." }, { "slug": "REDDIT_ADS_CREATE_BATCH_PRODUCTS", "name": "Create Batch Products", "description": "Tool to create or update multiple products in a catalog in a single batch operation. Use when you need to add up to 1000 products at once. Note: If using a schedule feed, update your feed to ensure your catalog is up to date." }, { "slug": "REDDIT_ADS_CREATE_CAMPAIGN", "name": "Create Reddit Ads Campaign", "description": "Tool to create a new Reddit Ads campaign for the specified ad account. Use when you need to set up a new advertising campaign with specific objective, budget, and targeting settings. Note: Max campaigns creation isn't currently supported - set up Max campaigns in the Ads Manager instead." }, { "slug": "REDDIT_ADS_CREATE_CUSTOM_AUDIENCE", "name": "Create Custom Audience", "description": "Tool to create a new Custom Audience in Reddit Ads. Use when you need to create a custom audience for targeted advertising campaigns. Note: This endpoint has rate limits - Custom Audiences Ingestion: 3000 requests per 900 seconds with burst limit of 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_CREATE_LEAD_GEN_FORM", "name": "Create Lead Gen Form", "description": "Tool to create a new lead generation form in Reddit Ads. Use when you need to set up a lead gen form to collect user information such as emails, names, phone numbers, etc. Rate limit: 20 requests per 60 seconds (Leads)." }, { "slug": "REDDIT_ADS_CREATE_POST", "name": "Create Reddit Post", "description": "Tool to create a new Reddit post for a specified profile. Use when you need to create promotional content including text, images, videos, or carousel posts. Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_CREATE_PRODUCT_CATALOG", "name": "Create Product Catalog", "description": "Tool to create a new product catalog. Use when you need to set up a product catalog for Reddit Ads. After creation, finish setup by manually creating products or linking a product feed." }, { "slug": "REDDIT_ADS_CREATE_PRODUCT_FEED", "name": "Create Product Feed", "description": "Tool to create a new feed for a product catalog. Use when setting up product feeds for Reddit catalog sales campaigns. Each catalog can contain up to 2 feeds, but they must be of different types (REPLACE or UPDATE)." }, { "slug": "REDDIT_ADS_CREATE_PRODUCT_SET", "name": "Create Product Set", "description": "Tool to create a new product set in a product catalog. Use when you need to define a subset of products from a catalog using filter rules for targeted advertising." }, { "slug": "REDDIT_ADS_CREATE_SAVED_AUDIENCE", "name": "Create Saved Audience", "description": "Tool to create a saved audience for a Reddit Ads ad account with targeting criteria. Use when you need to define and save audience segments for ad campaigns. Rate limit: 200 requests per 60 seconds (Campaign Management Write)." }, { "slug": "REDDIT_ADS_CREATE_STRUCTURED_POST_CREATION_JOB", "name": "Create Structured Post Creation Job", "description": "Tool to create a structured post creation job on Reddit Ads. Use when creating promoted posts with specific creative content (text, image, video, or carousel). Returns a job with status tracking information. Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_DELETE_CUSTOM_AUDIENCE", "name": "Delete Custom Audience", "description": "Tool to delete a Custom Audience by ID from Reddit Ads. Use when you need to permanently remove a custom audience. This operation is subject to rate limits: Custom Audiences Ingestion allows 3000 requests per 900 seconds with burst capacity of 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_DELETE_PRODUCT_CATALOG", "name": "Delete Product Catalog", "description": "Tool to delete a product catalog by ID from Reddit Ads. Use when you need to permanently remove a catalog. Important: This action cannot be undone." }, { "slug": "REDDIT_ADS_DELETE_PRODUCT_FEED", "name": "Delete Product Feed", "description": "Tool to delete a feed in a catalog by ID from Reddit Ads. Use when you need to permanently remove a product feed. Important: This action cannot be undone." }, { "slug": "REDDIT_ADS_DELETE_PRODUCTS", "name": "Batch Delete Products", "description": "Tool to delete multiple products from a Reddit Ads product catalog in a single request. Use when you need to remove products from a catalog. Important: This action cannot be undone, and deleted products will be permanently removed from the catalog. If using a scheduled feed, update your feed to keep the catalog synchronized." }, { "slug": "REDDIT_ADS_DELETE_PRODUCT_SET", "name": "Delete Product Set", "description": "Tool to delete a product set by ID from Reddit Ads. Use when you need to permanently remove a product set. Important: This action cannot be undone." }, { "slug": "REDDIT_ADS_DO_GEOLOCATION_VALIDATIONS", "name": "Validate Geolocations", "description": "Tool to validate a list of geolocations for use in Reddit Ads targeting. Use when you need to check if geolocation IDs or cities are valid for ad targeting before creating or updating campaigns. Rate limit: Targeting Taxonomy - 100 requests per 60 seconds." }, { "slug": "REDDIT_ADS_DO_KEYWORD_VALIDATIONS", "name": "Do Keyword Validations", "description": "Tool to validate a list of keywords for targeting and check their brand safety status. Use when you need to verify if keywords are safe and valid for ad targeting campaigns. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_GENERATE_INSPIRATION_CREATIVE_SUMMARY", "name": "Generate Inspiration Creative Summary", "description": "Tool to get AI-generated summary of best practices followed by an inspiration creative ad. Use when you need to analyze what makes a Reddit ad successful." }, { "slug": "REDDIT_ADS_GET_AD_ACCOUNT", "name": "Get Ad Account by ID", "description": "Tool to retrieve details for a specific Reddit ad account by ID. Use when you need to get account information including admin approval status, attribution settings, currency, excluded communities/keywords, and other account configuration. Rate limit: 400 requests per 60 seconds (Campaign Management Read)." }, { "slug": "REDDIT_ADS_GET_AD_ACCOUNT_HISTORY", "name": "Get ad account history", "description": "Get changelog history for a Reddit ad account with filtering options. Use when you need to track changes made to ads, campaigns, or ad groups within an account, including who made changes and when." }, { "slug": "REDDIT_ADS_GET_AD_GROUP", "name": "Get Ad Group", "description": "Tool to get an ad group by its ID from Reddit Ads API. Use when you need to retrieve details about a specific ad group. Note: Rate limit of 400 requests per 60 seconds applies (Campaign Management Read)." }, { "slug": "REDDIT_ADS_GET_APP_LAST_FIRED_AT", "name": "Get App Last Fired At Report", "description": "Tool to retrieve the last time mobile conversion events were fired for a specific app ID. Use when you need to check conversion tracking status or verify that mobile events are being received. Rate limit: 30 requests per 60 seconds (Conversion Signals)." }, { "slug": "REDDIT_ADS_GET_A_REPORT", "name": "Get A Report", "description": "Tool to generate a metrics report for ad performance based on specified fields and breakdowns. Use when you need detailed insights and analytics on ad performance, audience engagement, impressions, clicks, spend, and other advertising metrics. Supports up to 3 breakdowns (4 with COUNTRY and REGION combination) and provides paginated results." }, { "slug": "REDDIT_ADS_GET_BUSINESS", "name": "Get Business by ID", "description": "Tool to get business details by ID from the Reddit Ads API. Use when you need to retrieve information about a specific business entity including its name, industry, contact details, and metadata. The member must have memberships to the business to access this endpoint." }, { "slug": "REDDIT_ADS_GET_CAMPAIGN", "name": "Get Campaign by ID", "description": "Retrieve a specific Reddit Ads campaign by its ID. Returns comprehensive campaign information including objective, status, budget, targeting, and optimization settings. Rate limited to 400 requests per 60 seconds." }, { "slug": "REDDIT_ADS_GET_CHANNEL_PLANNING_REACH", "name": "Get Channel Planning Reach", "description": "Tool to retrieve estimated reach data for a given set of targeting parameters. Returns a series of 10 data points representing the reach curve by impressions. Use when planning ad campaigns and estimating potential audience reach based on duration, location, age, and gender targeting." }, { "slug": "REDDIT_ADS_GET_CHILD_FUNDING_INSTRUMENTS", "name": "Get Child Funding Instruments", "description": "Tool to retrieve a list of Funding Instrument Allocations for a parent funding instrument. Use when you need to view child allocations, check billing amounts, or verify servability status. Note: This endpoint is rate-limited to 30 requests per 60 seconds under the Billing rate limit category." }, { "slug": "REDDIT_ADS_GET_CUSTOM_AUDIENCE", "name": "Get Custom Audience", "description": "Tool to retrieve a custom audience by ID from Reddit Ads API. Use when you need to fetch detailed information about a specific custom audience including its configuration, status, and size estimates. Rate limit: 500 requests per 60 seconds (Targeting Taxonomy)." }, { "slug": "REDDIT_ADS_GET_LEAD_GEN_FORM", "name": "Get Lead Gen Form by ID", "description": "Tool to retrieve details for a specific lead generation form by ID from Reddit Ads. Use when you need to get form information including name, prompt, privacy link, questions, and timestamps. Rate limit: 20 requests per 60 seconds (Leads category)." }, { "slug": "REDDIT_ADS_GET_ME", "name": "Get Authenticated Member", "description": "Tool to get the authenticated member's information from the Reddit Ads API. Use when you need to retrieve details about the currently authenticated user including their Reddit username, email, name, and phone number. Rate limit: 100 requests per 60 seconds (Business Manager)." }, { "slug": "REDDIT_ADS_GET_PIXEL_LAST_FIRED_AT", "name": "Get Pixel Last Fired At Report", "description": "Tool to retrieve the last time conversion events were fired for a specific conversion pixel. Use when you need to check conversion tracking status or verify that pixel events are being received. Rate limit: 30 requests per 60 seconds (Conversion Signals)." }, { "slug": "REDDIT_ADS_GET_POST", "name": "Get Post by ID", "description": "Tool to retrieve a promoted or organic Reddit post by its ID. Returns post details including type, content, headline, and metadata. Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_GET_PRODUCT_CATALOG", "name": "Get Product Catalog", "description": "Tool to retrieve a specific product catalog by ID from the Reddit Ads API. Use when you need to fetch details about a particular product catalog including its name, language, currency, attached pixels, and product statistics. Rate limit: 7000 requests/300s (burst: 3000 requests/60s)." }, { "slug": "REDDIT_ADS_GET_PRODUCT_FEED", "name": "Get Product Feed", "description": "Tool to retrieve metadata for a specific product feed by ID. Use when you need to fetch details about a particular feed including its URL, schedule, authentication credentials, and update mode." }, { "slug": "REDDIT_ADS_GET_PRODUCT_SET", "name": "Get Product Set", "description": "Tool to retrieve metadata for a specific product set by ID from the Reddit Ads API. Use when you need to fetch details about a particular product set including its name, filter rules, and product statistics. Rate limit: 7000 requests/300s (burst: 3000 requests/60s)." }, { "slug": "REDDIT_ADS_GET_PROFILE", "name": "Get Profile by ID", "description": "Tool to retrieve details for a specific profile by ID from the Reddit Ads API. Use when you need to get profile information including business ID, Reddit username, and modification timestamp. Rate limit: 100 requests per 60 seconds (Business Manager)." }, { "slug": "REDDIT_ADS_GET_SAVED_AUDIENCE", "name": "Get Saved Audience", "description": "Tool to retrieve a saved audience by ID from Reddit Ads API. Use when you need to fetch detailed information about a specific saved audience including its targeting criteria and status. Rate limit: 400 requests per 60 seconds (Campaign Management Read)." }, { "slug": "REDDIT_ADS_GET_SK_AD_NETWORK_AVAILABILITY", "name": "Get SKAdNetwork Availability", "description": "Tool to get SKAdNetwork IDs availability quota for an iOS app. Use when you need to check how many SKAdNetwork IDs are available for campaigns, ad groups, or ads." }, { "slug": "REDDIT_ADS_GET_STRUCTURED_POST", "name": "Get Structured Post by ID", "description": "Tool to retrieve a structured post by its ID from the Reddit Ads API. Returns post details including creative content which can be image, text, video, or carousel type. Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_LIST3RD_PARTY_AUDIENCES", "name": "List 3rd Party Audiences", "description": "Tool to retrieve all available 3rd party audiences from Reddit Ads API for targeting purposes. Use when you need to get a list of third-party data audiences for ad targeting. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_AD_ACCOUNTS_BY_BUSINESS", "name": "List Ad Accounts By Business", "description": "Tool to get a list of ad accounts under a business on Reddit Ads. Use when you need to retrieve ad accounts associated with a specific business ID. Supports filtering by specific ad account IDs and pagination for large result sets. Rate limit: Campaign Management Read (400 requests/60s)." }, { "slug": "REDDIT_ADS_LIST_AD_GROUPS", "name": "List Ad Groups", "description": "Tool to list ad groups for a Reddit ad account. Use when you need to retrieve ad groups for campaign management. Rate limit: Campaign Management Read - 400 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_ADS", "name": "List Ads", "description": "Tool to list ads by ad account on Reddit Ads platform. Use when you need to retrieve advertising campaigns for a specific ad account. Note: Only 1 ad will appear for each Max campaign. Supports filtering by specific ad IDs and pagination for large result sets." }, { "slug": "REDDIT_ADS_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list campaigns by ad account with pagination support. Use when you need to retrieve campaigns for a specific Reddit Ads account. Rate limit: Campaign Management Read - 400 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_CARRIERS", "name": "List Carriers", "description": "Tool to retrieve all available carriers from Reddit Ads API for targeting purposes. Use when you need to get a list of mobile carriers for ad targeting. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_CATALOG_IMPORTS", "name": "List Catalog Imports", "description": "Tool to retrieve all imports for a catalog. Use when you need to list import history and status for a specific product catalog. Rate limit: 7000 requests/300s (burst: 3000 requests/60s)." }, { "slug": "REDDIT_ADS_LIST_COMMUNITIES", "name": "List Communities", "description": "Tool to list targetable communities matched by their names. Use when you need to find Reddit communities (subreddits) available for ad targeting. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_COMMUNITIES_SUGGESTIONS", "name": "List Communities Suggestions", "description": "Tool to fetch suggested communities for given community names from Reddit Ads API. Use when you need to discover relevant communities for ad targeting based on community names or website URLs. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_DEVICES", "name": "List Devices", "description": "Tool to retrieve all available devices from Reddit Ads API for targeting purposes. Use when you need to get a list of devices (by make and model) for ad targeting. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_FUNDING_INSTRUMENTS", "name": "List Funding Instruments", "description": "Tool to list funding instruments (payment methods) for a Reddit Ads ad account. Use when you need to retrieve billing information or check available payment methods. Rate limit: 30 requests per 60 seconds (Billing category)." }, { "slug": "REDDIT_ADS_LIST_GEOLOCATIONS", "name": "List Geolocations", "description": "Tool to fetch a list of geolocations from Reddit Ads API. Use when you need geographic targeting options. Postal code and City geolocations are excluded by default unless postal_code or cities_search parameters are provided." }, { "slug": "REDDIT_ADS_LIST_INDUSTRIES", "name": "List Industries", "description": "Tool to retrieve all available industries from Reddit Ads API. Use when you need to get a complete list of industries for targeting or classification purposes. Returns industry IDs and display names." }, { "slug": "REDDIT_ADS_LIST_INTERESTS", "name": "List Interests", "description": "Tool to retrieve all available interests from Reddit Ads API for targeting purposes. Use when you need to get a list of interests for ad targeting. Rate limit: Targeting Taxonomy - 500 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_LEAD_GEN_FORMS", "name": "List Lead Gen Forms", "description": "Tool to list lead generation forms for a Reddit Ads ad account. Use when you need to retrieve all lead gen forms associated with a specific ad account. Rate limit: 20 requests per 60 seconds (Leads category)." }, { "slug": "REDDIT_ADS_LIST_MY_BUSINESSES", "name": "List My Businesses", "description": "Tool to retrieve details of businesses associated with the provided access token. Use when you need to get a list of businesses the user has access to, with optional filters for ad account ID or user role (BUSINESS_ADMIN or CATALOG_ADMIN)." }, { "slug": "REDDIT_ADS_LIST_PIXELS_BY_AD_ACCOUNT", "name": "List Pixels By Ad Account", "description": "Tool to list pixels by ad account. Use when you need to retrieve conversion pixels for a specific Reddit Ads account. Note: Rate limited to 30 requests per 60 seconds (Conversion Signals)." }, { "slug": "REDDIT_ADS_LIST_PIXELS_BY_BUSINESS", "name": "List Pixels by Business", "description": "Tool to list all pixels associated with a specific business. Use when you need to retrieve conversion tracking pixels for a business. Rate limited to 30 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_POSTS", "name": "List Posts by Profile", "description": "Tool to list up to 1,000 of the most recent posts for a specified profile. Use when you need to retrieve posts from a Reddit profile. Supports filtering by post type (CAROUSEL, IMAGE, TEXT, VIDEO) and source (ORGANIC, PROMOTED). Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_LIST_PRODUCT_CATALOGS", "name": "List Product Catalogs", "description": "Tool to retrieve details for all product catalogs belonging to a business. Use when you need to list all catalogs for a specific business ID. Rate limit: 7000 requests/300s (burst: 3000 requests/60s)." }, { "slug": "REDDIT_ADS_LIST_PRODUCT_FEEDS", "name": "List Product Feeds", "description": "Tool to retrieve metadata for all feeds in a product catalog. Use when you need to list all feeds for a specific catalog ID to view feed configurations, URLs, and schedules." }, { "slug": "REDDIT_ADS_LIST_PRODUCT_SETS", "name": "List Product Sets", "description": "Tool to retrieve all product sets in a catalog. Use when you need to list product sets for a specific catalog ID. Rate limit: 7000 requests/300s (burst: 3000 requests/60s)." }, { "slug": "REDDIT_ADS_LIST_PRODUCTS_IN_PRODUCT_CATALOG", "name": "List Products In Product Catalog", "description": "Tool to retrieve all products in a Reddit Ads product catalog. Use when you need to list products for advertising campaigns, with optional filtering by approval status, search terms, or specific product IDs." }, { "slug": "REDDIT_ADS_LIST_PRODUCTS_IN_PRODUCT_SET", "name": "List Products In Product Set", "description": "Tool to retrieve all products in a Reddit Ads product set. Use when you need to list products within a specific product set, with optional filtering by approval status, issue codes, search terms, or specific product IDs." }, { "slug": "REDDIT_ADS_LIST_PROFILES_BY_AD_ACCOUNT", "name": "List Profiles By Ad Account", "description": "Tool to list profiles by ad account from Reddit Ads API. Use when you need to retrieve all profiles associated with a specific ad account. Rate limit: 100 requests per 60 seconds (Business Manager tier)." }, { "slug": "REDDIT_ADS_LIST_PROFILES_BY_BUSINESS", "name": "List Profiles By Business", "description": "Tool to list profiles by business. Use when you need to retrieve all profiles associated with a specific business. Rate limit: Business Manager allows 100 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_SAVED_AUDIENCES", "name": "List Saved Audiences", "description": "Tool to list saved audiences for a Reddit ad account. Use when you need to retrieve saved audience configurations with their targeting details. Rate limit: 400 requests per 60 seconds (Campaign Management Read)." }, { "slug": "REDDIT_ADS_LIST_STRUCTURED_POSTS", "name": "List Structured Posts", "description": "Tool to list structured posts for a profile or retrieve up to 10 specific structured posts by ID. Use when you need to retrieve structured posts owned by a Reddit Ads profile. Rate limit: Creative Management Read - 200 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_TIME_ZONES", "name": "List Time Zones", "description": "Tool to retrieve all available time zones from Reddit Ads API for campaign scheduling. Use when you need to get a list of time zones for setting campaign schedules or display times. Rate limit: Campaign Management Read - 400 requests per 60 seconds." }, { "slug": "REDDIT_ADS_LIST_USER_CUSTOM_AUDIENCES", "name": "List User Custom Audiences", "description": "Tool to list all Custom Audiences under an ad account. Use when you need to retrieve custom audiences for targeting in Reddit Ads campaigns. Rate limit: 500 requests per 60 seconds (Targeting Taxonomy)." }, { "slug": "REDDIT_ADS_QUERY_AD_ACCOUNTS", "name": "Query Ad Accounts", "description": "Tool to query ad accounts by business with optional filtering by actors, assets, roles, or custom filter string. Use when you need to retrieve ad accounts for a specific business with filtering capabilities. Rate Limit: Business Manager - 100 requests per 60 seconds." }, { "slug": "REDDIT_ADS_QUERY_FUNDING_INSTRUMENTS_BY_BUSINESS", "name": "Query funding instruments by business", "description": "Query funding instruments (credit lines) by business with pagination support. Use when you need to retrieve or filter funding instruments for a Reddit Ads business account. Requires adsread OAuth scope. Rate limit: 30 requests per 60 seconds (Billing category)." }, { "slug": "REDDIT_ADS_SEARCH_COMMUNITIES", "name": "Search Communities", "description": "Tool to search for Reddit communities based on their name or topic. Use when you need to find subreddits for ad targeting purposes. Returns all communities if no query is provided." }, { "slug": "REDDIT_ADS_UPDATE_AD_ACCOUNT", "name": "Update Ad Account", "description": "Tool to update a Reddit ad account configuration. Use when you need to modify account settings like name, attribution windows, excluded communities/keywords, or account approval state. Subject to Campaign Management Write rate limit: 200 requests per 60 seconds." }, { "slug": "REDDIT_ADS_UPDATE_BUSINESS", "name": "Update Business", "description": "Tool to update a business by ID in Reddit Ads. Use when you need to modify business settings such as name, industry, country, or contact information. Rate limit: 100 requests per 60 seconds for Business Manager operations." }, { "slug": "REDDIT_ADS_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update a campaign by ID in Reddit Ads. Use when you need to modify campaign settings such as name, status, budget, or targeting parameters. Rate limit: 200 requests per 60 seconds (Campaign Management Write)." }, { "slug": "REDDIT_ADS_UPDATE_CUSTOM_AUDIENCE_USERS", "name": "Update Custom Audience Users", "description": "Tool to update users in a Reddit Ads Custom Audience by adding or removing user identifiers. Use when you need to modify audience membership based on hashed user data like emails or mobile advertising IDs. Limited to 2,500 user entries per request." }, { "slug": "REDDIT_ADS_UPDATE_POST", "name": "Update Post", "description": "Tool to update a Reddit post by ID. Use when you need to modify post settings like enabling/disabling comments. Rate limit: 200 requests per 60 seconds (Creative Management)." }, { "slug": "REDDIT_ADS_UPDATE_PRODUCT_CATALOG", "name": "Update Product Catalog", "description": "Tool to update a product catalog's name or attached Pixel IDs in Reddit Ads. Use when you need to modify catalog settings such as name or event sources." }, { "slug": "REDDIT_ADS_UPDATE_PRODUCT_FEED", "name": "Update Product Feed", "description": "Tool to update a product feed's metadata in Reddit Ads. Use when you need to modify feed properties such as name, URL, mode, authentication credentials, or schedule configuration." }, { "slug": "REDDIT_ADS_UPDATE_PRODUCT_SET", "name": "Update Product Set", "description": "Tool to update a product set's name and filter rules in Reddit Ads. Use when you need to modify the name or filter conditions of an existing product set." }, { "slug": "REDDIT_ADS_UPDATE_SAVED_AUDIENCE", "name": "Update Saved Audience", "description": "Tool to update a saved audience by ID in Reddit Ads. Use when you need to modify saved audience settings such as name, targeting criteria, or status. Rate limit: 200 requests per 60 seconds (Campaign Management Write)." }, { "slug": "REDDIT_ADS_UPDATE_STRUCTURED_POST", "name": "Update Structured Post", "description": "Tool to update a structured post by ID. Only allow_comments can be updated on an existing structured post. To change the headline, link, or media assets, create a new structured post instead. Rate limit: 200 requests per 60 seconds (Creative Management)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "reddit_ads_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null }, { "name": "user_agent", "displayName": "User-Agent", "type": "string", "description": "Unique descriptor in format: {{platform}}:{{app_id}}:{{version}} (by /u/{{username}}). Required by Reddit Ads API.", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "identity,adsread,adsedit,adsconversions,history,read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "reducto", "name": "Reducto", "logo": "https://logos.composio.dev/api/reducto", "description": "Document parsing and extraction API that converts documents into structured data", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "reducto_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API key from Reducto Studio at https://studio.reducto.ai/ under API Keys section", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "referralrock", "name": "ReferralRock", "logo": "https://logos.composio.dev/api/referralrock", "description": "ReferralRock is a referral marketing platform that helps businesses create and manage referral programs to drive word-of-mouth growth and customer acquisition", "category": "marketing automation", "authSchemes": [ "BASIC" ], "toolCount": 33, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REFERRALROCK_DELETE_EMAIL_REMOVEUNSUBSCRIBE", "name": "Remove Email from Unsubscribe List", "description": "Tool to remove an email address from the unsubscribe list. Use when you need to resubscribe an email address that was previously unsubscribed." }, { "slug": "REFERRALROCK_DELETE_HOOKS", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription. Use when you need to cancel and stop data transmission to a registered webhook URL." }, { "slug": "REFERRALROCK_DELETE_MEMBERS_REMOVE", "name": "Delete Members from Program", "description": "Tool to delete members from a referral program. Use when you need to remove one or more members. Each member requires either valid primaryInfo (memberId or referralCode) OR both secondaryInfo (externalIdentifier or email) and tertiaryInfo (program details) to be uniquely identified." }, { "slug": "REFERRALROCK_DELETE_REFERRAL_REMOVE", "name": "Delete Referral", "description": "Tool to delete one or more referrals from a referral program. Use when you need to remove referrals by their unique ID or other identifying information. Each referral is deleted only when it can be uniquely identified." }, { "slug": "REFERRALROCK_DELETE_REWARDS_REMOVE", "name": "Delete Rewards", "description": "Tool to delete rewards from members or referrals in a referral program. Use when you need to remove one or more rewards from the system." }, { "slug": "REFERRALROCK_GET_EMAIL_GETUNSUBSCRIBED", "name": "Get Email Unsubscribed Status", "description": "Tool to check if an email address is unsubscribed from communications. Use when you need to verify unsubscribe status before sending emails." }, { "slug": "REFERRALROCK_GET_HOOKS_HISTORY_EVENTNAME", "name": "Get Webhook History for Event", "description": "Tool to retrieve webhook history for a specific event. Use when you need to check the delivery status and details of webhooks for a particular event type." }, { "slug": "REFERRALROCK_GET_MEMBERS", "name": "List Program Members", "description": "Tool to list program members with filtering and pagination. Use when you need to retrieve member information, optionally filtering by program, search query, status, or date range. Supports sorting and pagination for large datasets." }, { "slug": "REFERRALROCK_GET_MEMBER_STATS_GET_SINGLE", "name": "Get Member Statistics", "description": "Tool to retrieve comprehensive statistics for a single member from ReferralRock. Use when you need to analyze a member's sharing, referral, and reward activities over a specified time period." }, { "slug": "REFERRALROCK_GET_PAYOUTS_ID", "name": "Get Payout Details by ID", "description": "Tool to get payout details by ID. Use when you need to retrieve specific payout information using a payout identifier." }, { "slug": "REFERRALROCK_GET_PAYOUTS_PENDING", "name": "Get Pending Payouts", "description": "Tool to get pending payouts for a member or recipient. Use when you need to retrieve pending payout information, optionally filtering by recipient and including ineligible rewards." }, { "slug": "REFERRALROCK_GET_PAYOUTS_TRANSACTIONS", "name": "Get Payout Transactions", "description": "Tool to get payout transaction history for referral program participants. Use when you need to retrieve payout transaction information, optionally filtering by recipient ID or specific transaction ID." }, { "slug": "REFERRALROCK_GET_PROGRAM_GETSINGLE", "name": "Get Single Program", "description": "Tool to retrieve a single referral program by name. Use when you need details about a specific program." }, { "slug": "REFERRALROCK_GET_PROGRAMS", "name": "List Referral Programs", "description": "List all referral programs in ReferralRock. Use this to retrieve details about available referral programs with pagination support." }, { "slug": "REFERRALROCK_GET_REFERRALS", "name": "Get Referrals", "description": "Tool to list referrals with filtering and pagination options. Use when you need to retrieve referrals from ReferralRock, optionally filtered by program, member, date range, status, or search query. Supports sorting and pagination." }, { "slug": "REFERRALROCK_GET_REFERRAL_SINGLE", "name": "Get Single Referral", "description": "Tool to retrieve a single referral by email, ID, or external ID. Use when you need to fetch detailed information about a specific referral from ReferralRock." }, { "slug": "REFERRALROCK_GET_REWARDRULES", "name": "Get Reward Rules", "description": "Tool to get reward rules for a program. Use when you need to retrieve member rewards rules configuration including triggers, payouts, and delivery settings for a specific program." }, { "slug": "REFERRALROCK_GET_REWARDS", "name": "Get Rewards", "description": "Tool to list rewards with optional filtering and pagination. Use when you need to retrieve rewards filtered by program, member, status, date ranges, or specific search queries. Supports sorting and pagination via offset/count parameters." }, { "slug": "REFERRALROCK_POST_EMAIL_REMOVEUNSUBSCRIBE", "name": "Remove Email from Unsubscribe List", "description": "Tool to remove an email address from the unsubscribe list. Use when you need to resubscribe a previously unsubscribed email address to allow them to receive emails again." }, { "slug": "REFERRALROCK_POST_EMAIL_UNSUBSCRIBE", "name": "Unsubscribe Email Address", "description": "Tool to unsubscribe an email address from the ReferralRock mailing list. Use when a user wants to opt out of email communications." }, { "slug": "REFERRALROCK_POST_HOOKS", "name": "Create Webhook Subscription", "description": "Tool to create or update a webhook subscription for event notifications. Use when you need to register a callback URL to receive POST requests with JSON data when specified events occur." }, { "slug": "REFERRALROCK_POST_INVITEFEED", "name": "Create Invite Feed Entry", "description": "Tool to create an invite feed entry for automatic invitations. Use when you need to add a contact to the referral program's invite queue." }, { "slug": "REFERRALROCK_POST_INVITEFEEDS", "name": "Create Invite Feed Entries", "description": "Tool to create multiple invite feed entries for automatic invites in ReferralRock. Use when you need to send a set of contacts to be used with automatic member invitations." }, { "slug": "REFERRALROCK_POST_MEMBER_ACCESS_URLS", "name": "Generate Member Access URLs", "description": "Tool to generate member access URLs for custom share experience or secure portal embedding. Use when you need to create unique access and share links for members with optional expiration time." }, { "slug": "REFERRALROCK_POST_MEMBERS", "name": "Add new member to program", "description": "Tool to create a new member and add them to a referral program. Use when you need to add a new member with their program ID, name, and email. Returns HTTP 201 (Created) on success with member confirmation details." }, { "slug": "REFERRALROCK_POST_MEMBERS_REMOVE", "name": "Remove Members from Program", "description": "Tool to remove members from a referral program. Use when you need to delete members from the system. A member is removed when uniquely identified by either primaryInfo (memberId or referralCode) OR both secondaryInfo and tertiaryInfo." }, { "slug": "REFERRALROCK_POST_REFERRALACTION", "name": "Create Referral Action", "description": "Tool to create a referral action for processing recurring rewards. Use when you need to record a referral action with an amount value for calculating percentage-based recurring rewards. The action can be linked to referrals via email, ID, or external identifier." }, { "slug": "REFERRALROCK_POST_REFERRAL_REMOVE", "name": "Remove Referral", "description": "Tool to remove referrals from a referral program. Use when you need to delete referrals using their referral ID or alternative identifiers." }, { "slug": "REFERRALROCK_POST_REFERRALS", "name": "Create New Referral", "description": "Tool to create a new referral in ReferralRock based on a member's referral code. Use when you need to add a referral to a program, providing details like contact information, transaction amount, and custom fields." }, { "slug": "REFERRALROCK_POST_REFERRALS_STATUS", "name": "Update Referral Status", "description": "Tool to update referral status in ReferralRock. Use when you need to change a referral's status to pending, qualified, approved, or denied. Note: This endpoint is deprecated; use POST /api/referral/update instead." }, { "slug": "REFERRALROCK_POST_REFERRAL_UPDATE", "name": "Update Referral Details", "description": "Tool to update referral details in a referral program. Use when you need to modify existing referral information such as contact details, status, notes, or custom fields. Requires either a referralId OR both secondaryInfo and tertiaryInfo to identify referrals. Supports bulk updates by providing multiple update items." }, { "slug": "REFERRALROCK_POST_REWARDS_ISSUE", "name": "Issue Reward to Member", "description": "Tool to issue a reward to a member in the Referral Rock system. Use when you need to issue a specific reward to a recipient, with the option to override eligibility date rules." }, { "slug": "REFERRALROCK_POST_REWARDS_REMOVE", "name": "Remove Rewards", "description": "Tool to remove rewards from members or referrals of a referral program. Use when you need to delete one or more rewards by their IDs. The endpoint returns a result for each reward ID indicating whether the removal was successful." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "referralrock_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Public Key", "type": "string", "description": "Your ReferralRock API public key. Get it from Settings > Integrations > Manage API Keys.", "required": true, "default": null }, { "name": "password", "displayName": "Private Key", "type": "string", "description": "Your ReferralRock API private key. Note: The private key is only shown once during creation - save it immediately.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "refiner", "name": "Refiner", "logo": "https://logos.composio.dev/api/refiner", "description": "Refiner is a customer feedback and survey tool designed to help businesses collect and analyze user insights.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REFINER_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a specific contact by its identifier. Provide either the user ID or email address to identify and delete the contact." }, { "slug": "REFINER_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Retrieves Refiner account information including subscription plan, usage limits, and environment statistics. This action provides: - Current subscription plan and usage limits (MTU, MTE, MPV, MSR) - Usage counters for monthly tracked users, events, page views, and survey responses - Per-environment breakdown of usage statistics - Last updated timestamps for all usage metrics Use this when you need to check account status, monitor usage against limits, or audit environment statistics." }, { "slug": "REFINER_GET_CONTACT", "name": "Get Contact", "description": "Retrieve detailed information about a specific contact using their ID, email, or UUID. Returns all stored attributes, segments, and account information." }, { "slug": "REFINER_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts from your Refiner account. Use when you need to filter or paginate through contacts." }, { "slug": "REFINER_GET_FORMS", "name": "Get Forms", "description": "Tool to retrieve a list of forms (surveys) from your Refiner account with optional filtering and pagination. Use when you need to list surveys by state, page, or include extra info/config." }, { "slug": "REFINER_GET_REPORTING", "name": "Get Reporting", "description": "Tool to retrieve aggregated reporting data for surveys including metrics and analytics. Use when you need survey analytics over a time range filtered by type, question identifiers, tags, forms, or segments." }, { "slug": "REFINER_GET_RESPONSES", "name": "Get Survey Responses", "description": "Tool to retrieve all survey responses from your Refiner account with optional filtering and pagination. Use after confirming survey creation to pull response data." }, { "slug": "REFINER_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a list of user segments from your Refiner account. Use when you need to view or paginate segments." }, { "slug": "REFINER_TRACK_EVENT", "name": "Track Event", "description": "Tool to record a user event by name for a user identified via user ID or email. Use after confirming the identifier and event name." }, { "slug": "REFINER_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to create or update a contact's attributes or account. Identifies a contact by `id` or `email` and updates their traits or account grouping. If the contact doesn't exist, it will be created automatically." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "refiner_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Refiner API Key", "type": "string", "description": "Your personal API key obtained from your Refiner dashboard under 'Integrations > Rest API'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "relevance_ai", "name": "Relevance AI", "logo": "https://logos.composio.dev/api/relevance_ai", "description": "The fastest platform to build and deploy AI apps & agents. Home of the AI Workforce.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "relevance_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select the region where your Relevance AI organization is hosted. Eg: AU, EU, US", "required": true, "default": "US" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Relevance AI account > Account > Integrations > Relevance API keys to generate an API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "remarkety", "name": "Remarkety", "logo": "https://logos.composio.dev/api/remarkety", "description": "Remarkety is an AI-powered marketing automation platform designed for eCommerce, enabling personalized email, SMS, and social campaigns based on customer behavior.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REMARKETY_GET_CAMPAIGNS", "name": "Get Remarkety Campaigns", "description": "Tool to retrieve a list of marketing campaigns. Use when you need to page through campaigns with optional limit and skip." }, { "slug": "REMARKETY_GET_CUSTOMERS", "name": "Get Remarkety Customers", "description": "Tool to retrieve customers. Use when you need to fetch a paginated list of customers from a Remarkety store." }, { "slug": "REMARKETY_GET_PRODUCTS", "name": "Get Remarkety Products", "description": "Tool to retrieve products. Use when you need to fetch a paginated list of products from a Remarkety store." }, { "slug": "REMARKETY_TRACK_CART", "name": "Track Remarkety Cart", "description": "Tool to track cart events in Remarkety. Use after a customer updates their cart to sync cart data for remarketing." }, { "slug": "REMARKETY_UPLOAD_CONTACTS_BATCH", "name": "Upload Contacts Batch", "description": "Tool to upload or update multiple contacts in batch. Use when you need to import or synchronize many contacts at once." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "remarkety_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Store ID", "type": "string", "description": "Your Remarkety Store ID. Found in your Remarkety dashboard under Settings.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Remarkety API Key", "type": "string", "description": "The API key for authenticating requests to Remarkety's API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "remote_retrieval", "name": "Remote Retrieval", "logo": "https://logos.composio.dev/api/remote_retrieval", "description": "Remote Retrieval automates the logistics of managing equipment returns, providing efficient tracking and management of laptop and monitor returns.", "category": "it operations", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REMOTE_RETRIEVAL_CREATE_ORDER", "name": "Create Order", "description": "Tool to create IT asset retrieval orders for remote employees. Use when you need to schedule pickup of laptops, monitors, cell phones, or tablets from employees. Supports both return-to-company and recycle-with-data-destruction workflows." }, { "slug": "REMOTE_RETRIEVAL_GET_ALL_ORDERS", "name": "Get All Orders", "description": "Tool to retrieve a paginated list of all orders. Use when you need to list orders with optional filters like status or dates. Call after authentication." }, { "slug": "REMOTE_RETRIEVAL_GET_COMPANY_DETAILS", "name": "Get Company Details", "description": "Tool to retrieve detailed information for a company. Use after confirming a valid company_id." }, { "slug": "REMOTE_RETRIEVAL_GET_DEVICE_PRICES", "name": "Get Device Prices", "description": "Tool to retrieve real-time pricing data for all supported devices. Use when you need current prices for Laptop, Monitor (17-23 inch), Monitor_27 (24-27 inch), Tablet, or Cell Phone." }, { "slug": "REMOTE_RETRIEVAL_GET_ORDER_DETAILS", "name": "Get Order Details", "description": "Tool to retrieve specific order details by order ID. Use when you need detailed information about an order including employee info, company info, and shipment status (device_type, send_status, return_status)." }, { "slug": "REMOTE_RETRIEVAL_LIST_PENDING_ORDERS", "name": "List Pending Orders", "description": "Tool to retrieve list of all pending orders. Use when you need to check orders awaiting payment completion. Results are paginated up to 25 per page." }, { "slug": "REMOTE_RETRIEVAL_VALIDATE_USER", "name": "RemoteRetrieval: Validate User", "description": "Tool to validate the provided API key. Use when you need to confirm the API key's validity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "remote_retrieval_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Remote Retrieval API Key", "type": "string", "description": "The API key obtained from the Enterprise Remote Retrieval portal.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "remove_bg", "name": "Remove.bg", "logo": "https://logos.composio.dev/api/remove_bg", "description": "remove_bg is an API that allows developers to automatically remove backgrounds from images using AI technology.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "REMOVE_BG", "name": "Remove Background", "description": "Tool to remove background from an image. Use when you need a transparent or custom background for product or profile photos." }, { "slug": "REMOVE_BG_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve account information, including current credit balance. Use when you need to know your remove.bg account's credit and usage details." }, { "slug": "REMOVE_BG_SUBMIT_IMPROVEMENT", "name": "Submit Improvement", "description": "Tool to submit an image to the remove.bg Improvement program. Use when you want to contribute images that remove.bg cannot process properly to help improve the AI. By submitting images you agree to the Improvement Program Conditions. Limited to 100 files per day, max 22MB file size, up to 50 megapixels resolution." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "remove_bg_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Remove.bg API Key", "type": "string", "description": "Your unique API key for authenticating requests to the remove.bg API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "render", "name": "Render", "logo": "https://logos.composio.dev/api/render", "description": "Render is a unified cloud platform that enables developers to build and run applications and websites with ease.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 95, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RENDER_ADD_HEADERS", "name": "Add Header Rule", "description": "Tool to add a custom HTTP header rule to a Render service. Use when you need to configure headers like Cache-Control, security headers, or CORS headers for specific request paths." }, { "slug": "RENDER_ADD_OR_UPDATE_SECRET_FILE", "name": "Add or Update Secret File", "description": "Tool to add or update a secret file for a Render service. Use when you need to create a new secret file or update the content of an existing secret file." }, { "slug": "RENDER_ADD_RESOURCES_TO_ENVIRONMENT", "name": "Add Resources to Environment", "description": "Tool to add resources to a Render environment. Use when you need to associate services, databases, Redis instances, or environment groups with an existing environment." }, { "slug": "RENDER_ADD_ROUTE", "name": "Add Route", "description": "Tool to add redirect or rewrite rules to a Render service. Use when you need to configure URL routing, redirects, or rewrites for a service. Redirect rules send HTTP redirects to clients, while rewrite rules modify the request path internally." }, { "slug": "RENDER_CREATE_CUSTOM_DOMAIN", "name": "Create Custom Domain", "description": "Tool to add a custom domain to a Render service. Use when you need to configure a custom domain for a service." }, { "slug": "RENDER_CREATE_ENV_GROUP", "name": "Create Environment Group", "description": "Tool to create a new environment group. Use when you need to create a shared collection of environment variables and secret files that can be used across multiple services." }, { "slug": "RENDER_CREATE_ENVIRONMENT", "name": "Create Environment", "description": "Tool to create a new environment within a Render project. Use when you need to set up a new environment for organizing services, databases, and other resources." }, { "slug": "RENDER_CREATE_POSTGRES", "name": "Create Postgres Instance", "description": "Tool to create a new Postgres instance on Render. Use when you need to provision a new PostgreSQL database with configurable plan, version, and region." }, { "slug": "RENDER_CREATE_REGISTRY_CREDENTIAL", "name": "Create Registry Credential", "description": "Tool to create a registry credential. Use when you need to add a new container registry credential to your Render account for authenticating with Docker Hub, GitHub, GitLab, Google Artifact Registry, or AWS ECR." }, { "slug": "RENDER_DELETE_ENV_GROUP_ENV_VAR", "name": "Delete Environment Group Variable", "description": "Tool to remove an environment variable from an environment group. Use when you need to delete a specific environment variable by its key from a given environment group." }, { "slug": "RENDER_DELETE_ENV_GROUP_SECRET_FILE", "name": "Delete Environment Group Secret File", "description": "Tool to remove a secret file from an environment group. Use when you need to delete a specific secret file by its name from a given environment group." }, { "slug": "RENDER_DELETE_ENVIRONMENT", "name": "Delete Environment", "description": "Tool to delete a specified environment. Use when you need to remove an environment from Render. Returns success confirmation." }, { "slug": "RENDER_DELETE_KEY_VALUE", "name": "Delete Key Value", "description": "Tool to delete a Key Value instance. Use when you need to remove a specific Key Value store from your Render account." }, { "slug": "RENDER_DELETE_OWNER_LOG_STREAM", "name": "Delete Owner Log Stream", "description": "Tool to delete a log stream for an owner. Use when you need to remove log stream configuration for a specific workspace." }, { "slug": "RENDER_DELETE_OWNER_METRICS_STREAM", "name": "Delete Owner Metrics Stream", "description": "Tool to delete a metrics stream for a workspace. Use when removing metrics integration for a specific owner." }, { "slug": "RENDER_DELETE_REGISTRY_CREDENTIAL", "name": "Delete Registry Credential", "description": "Tool to delete a registry credential. Use when you need to remove a Docker registry credential from your Render account." }, { "slug": "RENDER_DELETE_SECRET_FILE", "name": "Delete Secret File", "description": "Tool to delete a secret file from a Render service. Use when you need to remove a secret file that is no longer needed." }, { "slug": "RENDER_DELETE_SERVICE", "name": "Delete Service", "description": "Tool to delete a service. Use when you need to permanently remove a service from your Render account." }, { "slug": "RENDER_DISCONNECT_BLUEPRINT", "name": "Disconnect Blueprint", "description": "Tool to disconnect a blueprint from your Render account. Use when you need to remove a blueprint connection." }, { "slug": "RENDER_GET_ACTIVE_CONNECTIONS", "name": "Get Active Connections", "description": "Tool to get active connection count metrics for Render resources. Use when you need to retrieve time-series data of active connections for Postgres or Redis instances over a specified time range." }, { "slug": "RENDER_GET_BANDWIDTH_SOURCES", "name": "Get Bandwidth Sources", "description": "Tool to get bandwidth usage breakdown by traffic source. Use when you need to retrieve bandwidth usage statistics segmented by different traffic sources for a Render service." }, { "slug": "RENDER_GET_CPU", "name": "Get CPU Usage", "description": "Tool to retrieve CPU usage metrics for Render resources. Use when you need to monitor CPU utilization for services, Postgres databases, or Redis instances. At least one filter (resource, service, or instance) must be provided." }, { "slug": "RENDER_GET_CPU_LIMIT", "name": "Get CPU Limit", "description": "Tool to retrieve CPU limit metrics for Render resources. Use when you need to get the CPU limit time series data for services, Postgres databases, or Redis instances. Returns metrics over a specified time range with configurable resolution." }, { "slug": "RENDER_GET_DISK_CAPACITY", "name": "Get Disk Capacity", "description": "Tool to get disk capacity metrics for Render resources. Use when you need to retrieve disk capacity time series data for services, Postgres databases, or Redis instances. At least one filter parameter (resource or service) must be specified." }, { "slug": "RENDER_GET_DISK_USAGE", "name": "Get Disk Usage", "description": "Tool to retrieve disk usage metrics for Render resources. Use when you need to monitor persistent disk utilization for services, Postgres databases, or Redis instances. It is recommended to specify at least one resource filter." }, { "slug": "RENDER_GET_INSTANCE_COUNT", "name": "Get Instance Count", "description": "Tool to get instance count metrics for Render resources. Use when you need to retrieve instance count time series data for services, Postgres databases, or Redis instances. The resource parameter is required." }, { "slug": "RENDER_GET_MEMORY", "name": "Get Memory Usage", "description": "Tool to get memory usage metrics for one or more resources. Use when you need to retrieve memory usage data for services, Postgres databases, or Redis instances over a specified time range." }, { "slug": "RENDER_GET_MEMORY_LIMIT", "name": "Get Memory Limit", "description": "Tool to get memory limit metrics for Render resources over a specified time range. Use when you need to retrieve memory limit data for services, Postgres databases, or Redis instances. At least one filter (resource, service, or instance) must be provided." }, { "slug": "RENDER_GET_MEMORY_TARGET", "name": "Get Memory Target", "description": "Tool to get memory target metrics for Render resources. Use when you need to retrieve memory target data for services, Postgres databases, or Redis instances over a specified time range. At least one resource identifier (resource, service, or instance) is required." }, { "slug": "RENDER_GET_USER", "name": "Get User", "description": "Tool to get the authenticated user. Use when you need to retrieve information about the currently authenticated account owner." }, { "slug": "RENDER_LINK_SERVICE_TO_ENV_GROUP", "name": "Link Service to Environment Group", "description": "Tool to link a service to an environment group. Use when you need to associate a service with an environment group so that the service can access the environment variables and secret files defined in that group." }, { "slug": "RENDER_LIST_APPLICATION_FILTER_VALUES", "name": "List Application Filter Values", "description": "Tool to list queryable instance values for application metrics. Use when you need to discover available filter values for metrics queries." }, { "slug": "RENDER_LIST_BLUEPRINTS", "name": "List Blueprints", "description": "Tool to list all blueprints. Use when you need to retrieve the definitions of all blueprints in your account." }, { "slug": "RENDER_LIST_DEPLOYS", "name": "List Deploys", "description": "Tool to list recent deploys for a Render service with pagination and filtering. Use when you need to fetch deploy history, inspect deploy statuses, or find a specific deployId to pass to other deploy operations." }, { "slug": "RENDER_LIST_DISKS", "name": "List Disks", "description": "Tool to list all disks. Use when you need to retrieve all disks associated with your account." }, { "slug": "RENDER_LIST_ENV_GROUPS", "name": "List Environment Groups", "description": "Tool to list environment groups. Use when you need to retrieve environment groups to view shared environment variables across services." }, { "slug": "RENDER_LIST_ENVIRONMENTS", "name": "List Environments", "description": "Tool to list environments for a project. Use when you need to retrieve environments within a specific project. Requires at least one project ID." }, { "slug": "RENDER_LIST_ENV_VARS_FOR_SERVICE", "name": "List Environment Variables for Service", "description": "Tool to list all environment variables configured directly on a Render service (with pagination). Use when you need to enumerate env vars without knowing individual keys." }, { "slug": "RENDER_LIST_INSTANCES", "name": "List Instances", "description": "Tool to list instances of a service. Use when you need to retrieve all instances for a specific Render service." }, { "slug": "RENDER_LIST_KEY_VALUE", "name": "List Key Value Instances", "description": "Tool to list all Key Value instances. Use when you need to retrieve Key Value instances associated with your account, optionally filtering by name, region, owner, environment, or timestamps." }, { "slug": "RENDER_LIST_LOGS", "name": "List Logs", "description": "Tool to list logs for a specific workspace and resource. Use when you need to retrieve logs for services, databases, or other resources, with support for filtering by time range, log type, severity level, and text content. Wildcards and regex patterns are supported for most text filters." }, { "slug": "RENDER_LIST_LOGS_VALUES", "name": "List Log Label Values", "description": "Tool to list log label values for a workspace. Use when you need to discover possible values for a specific log label (instance, host, statusCode, method, level, or type) within a time range." }, { "slug": "RENDER_LIST_MAINTENANCE", "name": "List Maintenance Runs", "description": "Tool to list maintenance runs. Use when you need to retrieve scheduled or past maintenance activities for services and database instances." }, { "slug": "RENDER_LIST_NOTIFICATION_OVERRIDES", "name": "List Notification Overrides", "description": "Tool to list notification overrides for services. Use when you need to retrieve notification settings that override default notification behavior for specific services." }, { "slug": "RENDER_LIST_OWNER_MEMBERS", "name": "List Workspace Members", "description": "Tool to list workspace members. Use when you need to retrieve all members of a specific workspace or team." }, { "slug": "RENDER_LIST_OWNERS", "name": "List Owners", "description": "Tool to list owners (users and teams). Use after authenticating to fetch available owner IDs for resource creation." }, { "slug": "RENDER_LIST_POSTGRES", "name": "List Postgres Instances", "description": "Tool to list Postgres instances. Use when you need to retrieve all Postgres databases associated with your account, optionally filtering by name, region, or other criteria." }, { "slug": "RENDER_LIST_POSTGRES_EXPORT", "name": "List Postgres Exports", "description": "Tool to list all exports for a Postgres instance. Use when you need to retrieve the history of exports for a specific Postgres database." }, { "slug": "RENDER_LIST_POSTGRES_USERS", "name": "List PostgreSQL Users", "description": "Tool to list PostgreSQL user credentials for a Render PostgreSQL database instance. Use when you need to view all users with access to a specific PostgreSQL database." }, { "slug": "RENDER_LIST_PROJECTS", "name": "List Projects", "description": "List Projects" }, { "slug": "RENDER_LIST_REGISTRY_CREDENTIALS", "name": "List Registry Credentials", "description": "Tool to list registry credentials. Use when you need to retrieve container registry credentials associated with your account, optionally filtering by name, username, or registry type." }, { "slug": "RENDER_LIST_RESOURCE_LOG_STREAMS", "name": "List Resource Log Streams", "description": "Tool to list resource log stream overrides. Use when you need to retrieve log stream configurations for resources in your account." }, { "slug": "RENDER_LIST_ROUTES", "name": "List Routes", "description": "Tool to list redirect/rewrite rules for a service. Use when you need to retrieve routing configuration for a Render service." }, { "slug": "RENDER_LIST_SECRET_FILES", "name": "List Secret Files", "description": "Tool to list secret files for a Render service. Use when you need to retrieve all secret files associated with a specific service." }, { "slug": "RENDER_LIST_SERVICES", "name": "List Services", "description": "Tool to list all services. Use when you need to retrieve services accessible by your account, optionally filtering by name or type. Use after authentication." }, { "slug": "RENDER_LIST_TASK_RUNS", "name": "List Task Runs", "description": "Tool to list task runs. Use when you need to retrieve task execution history for workflows, optionally filtering by task ID, workflow, owner, or root task run." }, { "slug": "RENDER_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks. Use when you need to retrieve tasks from workflows, optionally filtering by owner, task ID, workflow ID, or workflow version ID." }, { "slug": "RENDER_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks. Use when you need to retrieve configured webhooks for your account." }, { "slug": "RENDER_LIST_WORKFLOWS", "name": "List Workflows", "description": "Tool to list workflows. Use when you need to retrieve workflows accessible by your account, optionally filtering by name, owner, environment, or workflow ID." }, { "slug": "RENDER_LIST_WORKFLOW_VERSIONS", "name": "List Workflow Versions", "description": "Tool to list workflow versions. Use when you need to retrieve workflow versions, optionally filtering by owner, workflow, or version ID." }, { "slug": "RENDER_RESTART_SERVICE", "name": "Restart Service", "description": "Tool to restart a service. Use when you need to restart a running service, such as after configuration changes or to resolve issues." }, { "slug": "RENDER_RESUME_SERVICE", "name": "Resume Service", "description": "Tool to resume a suspended service. Use when you need to restart a service that was previously suspended." }, { "slug": "RENDER_RETRIEVE_CUSTOM_DOMAIN", "name": "Retrieve Custom Domain", "description": "Tool to retrieve a specific custom domain for a service. Use when you need to get details about a custom domain associated with a Render service." }, { "slug": "RENDER_RETRIEVE_DEPLOY", "name": "Retrieve deploy", "description": "Retrieve deploy" }, { "slug": "RENDER_RETRIEVE_ENV_GROUP", "name": "Retrieve Environment Group", "description": "Tool to retrieve a specific environment group by ID. Use when you need to fetch detailed information about a specific environment group including its environment variables, secret files, and linked services." }, { "slug": "RENDER_RETRIEVE_ENV_GROUP_ENV_VAR", "name": "Retrieve Environment Variable", "description": "Tool to retrieve a specific environment variable from a Render environment group. Use when you need to fetch the value of a particular environment variable by its key." }, { "slug": "RENDER_RETRIEVE_ENV_GROUP_SECRET_FILE", "name": "Retrieve Environment Group Secret File", "description": "Tool to retrieve secret file from an environment group. Use when you need to get the content of a specific secret file within an environment group." }, { "slug": "RENDER_RETRIEVE_ENV_VAR", "name": "Retrieve Environment Variable", "description": "Tool to retrieve a specific environment variable from a Render service. Use when you need to fetch the value of a particular environment variable by its key." }, { "slug": "RENDER_RETRIEVE_OWNER", "name": "Retrieve Owner", "description": "Tool to retrieve a specific owner (workspace) by ID. Use when you need details about a user or team workspace." }, { "slug": "RENDER_RETRIEVE_OWNER_NOTIFICATION_SETTINGS", "name": "Retrieve Owner Notification Settings", "description": "Tool to retrieve notification settings for a specific owner (workspace). Use when you need to check current notification configuration for Slack, email, and preview notifications." }, { "slug": "RENDER_RETRIEVE_POSTGRES", "name": "Retrieve Postgres Instance", "description": "Tool to retrieve a specific Postgres instance. Use when you need to get details about a Postgres database in your Render account." }, { "slug": "RENDER_RETRIEVE_PROJECT", "name": "Retrieve Project", "description": "Tool to retrieve a specific project by ID. Use when you need to fetch detailed information about a Render project including its name, owner, and associated environments." }, { "slug": "RENDER_RETRIEVE_REGISTRY_CREDENTIAL", "name": "Retrieve Registry Credential", "description": "Tool to retrieve a registry credential by ID. Use when you need to get details about a Docker registry credential in your Render account." }, { "slug": "RENDER_RETRIEVE_SECRET_FILE", "name": "Retrieve Secret File", "description": "Tool to retrieve a secret file from a Render service. Use when you need to get the content of a specific secret file within a service." }, { "slug": "RENDER_RETRIEVE_SERVICE", "name": "Retrieve Service", "description": "Tool to retrieve a specific service by ID. Use when you need detailed information about a service including its configuration, status, and deployment settings." }, { "slug": "RENDER_STREAM_TASK_RUNS_EVENTS", "name": "Stream Task Runs Events", "description": "Tool to stream real-time task run events via Server-Sent Events (SSE). Use when you need to monitor task execution status and receive live updates as tasks progress. Requires maintaining an open HTTP connection to receive the event stream." }, { "slug": "RENDER_SUBSCRIBE_LOGS", "name": "Subscribe to Logs", "description": "Tool to subscribe to real-time logs via WebSocket connection. Use when you need to stream logs as they are generated for services, databases, or other resources. Note: This endpoint requires HTTP/1.1 WebSocket upgrade (HTTP 101 Switching Protocols). For retrieving historical logs without streaming, use the List Logs action instead." }, { "slug": "RENDER_SUSPEND_SERVICE", "name": "Suspend Service", "description": "Tool to suspend a service. Use when you need to temporarily stop a service without deleting it." }, { "slug": "RENDER_TRIGGER_DEPLOY", "name": "Trigger Deploy", "description": "Tool to trigger a new deploy for a specified service. Requires the service to already exist on Render and be linked to a Git repo — initial setup and repo linking must be done in the Render UI. Use when you need to manually start a new build and deployment process, such as after updating service configuration or pushing code changes that Render does not auto-apply." }, { "slug": "RENDER_UPDATE_ENV_GROUP", "name": "Update Environment Group", "description": "Tool to update an environment group's name. Use when you need to rename an existing environment group." }, { "slug": "RENDER_UPDATE_ENV_GROUP_ENV_VAR", "name": "Update Environment Group Variable", "description": "Tool to add or update an environment variable in an environment group. Use when you need to set a new value for an environment variable or create a new one if it doesn't exist. You can either provide a specific value or request a randomly generated value." }, { "slug": "RENDER_UPDATE_ENV_GROUP_SECRET_FILE", "name": "Update Environment Group Secret File", "description": "Tool to add or update a secret file in an environment group. Use when you need to create a new secret file or modify the content of an existing secret file within an environment group." }, { "slug": "RENDER_UPDATE_ENV_VAR", "name": "Update Environment Variable", "description": "Tool to add or update an environment variable for a Render service. Use when you need to set a new environment variable or modify an existing one's value. You can either provide a specific value or have Render auto-generate a secure random value." }, { "slug": "RENDER_UPDATE_ENV_VARS_FOR_SERVICE", "name": "Update Environment Variables for Service", "description": "Tool to update environment variables for a Render service. Use when you need to add, modify, or set environment variables for a service. This replaces all environment variables with the provided list." }, { "slug": "RENDER_UPDATE_HEADERS", "name": "Update Header Rules", "description": "Tool to replace all header rules for a Render service. Use when you need to completely replace the existing set of custom HTTP headers with a new set. This operation removes all existing header rules and replaces them with the provided ones." }, { "slug": "RENDER_UPDATE_OWNER_LOG_STREAM", "name": "Update Owner Log Stream", "description": "Tool to update log stream configuration for an owner. Use when you need to modify log stream settings for a specific workspace." }, { "slug": "RENDER_UPDATE_OWNER_NOTIFICATION_SETTINGS", "name": "Update Owner Notification Settings", "description": "Tool to update notification settings for a specific owner (workspace). Use when you need to modify email, preview, or notification type settings." }, { "slug": "RENDER_UPDATE_POSTGRES", "name": "Update Postgres Instance", "description": "Tool to update a Postgres instance configuration. Use when you need to modify settings like name, plan, disk size, high availability, or IP allowlist for an existing Render Postgres database." }, { "slug": "RENDER_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update a project's name. Use when you need to rename an existing Render project." }, { "slug": "RENDER_UPDATE_REGISTRY_CREDENTIAL", "name": "Update Registry Credential", "description": "Tool to update a registry credential. Use when you need to modify the name, username, authentication token, or registry type for an existing Docker registry credential in your Render account." }, { "slug": "RENDER_UPDATE_RESOURCE_LOG_STREAM", "name": "Update Resource Log Stream", "description": "Tool to update log stream override for a resource. Use when you need to configure whether logs should be sent to a custom endpoint or dropped for a specific resource (server, cron job, postgres, or redis)." }, { "slug": "RENDER_UPDATE_ROUTES", "name": "Update Routes", "description": "Tool to update redirect/rewrite rules for a service. Use when you need to set or replace the routing configuration for a Render service. This operation replaces all existing routes with the provided list." }, { "slug": "RENDER_UPDATE_SECRET_FILES_FOR_SERVICE", "name": "Update Secret Files for Service", "description": "Tool to update secret files for a Render service. Use when you need to create or update multiple secret files at once for a specific service." }, { "slug": "RENDER_UPDATE_SERVICE", "name": "Update Service", "description": "Tool to update a service configuration. Use when you need to modify service settings such as auto-deploy, branch, build filters, Docker image, name, repository, or service-specific details." }, { "slug": "RENDER_VERIFY_CUSTOM_DOMAIN", "name": "Verify Custom Domain", "description": "Tool to verify DNS configuration for a custom domain. Use when you need to trigger DNS verification for a custom domain associated with a Render service." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "render_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Render API Key", "type": "string", "description": "Your secret Render API key (starts with 'rnd_'). Create one in the Render Dashboard under Account Settings → API Keys — it's shown only once, so copy it right away.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "renderform", "name": "Renderform", "logo": "https://logos.composio.dev/api/renderform", "description": "RenderForm is a user-friendly automation and design tool that enables the creation of templates and images with custom content such as images, texts, and QR codes.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RENDERFORM_CREATE_PDF_FROM_URL", "name": "Create PDF from URL", "description": "Tool to create a PDF from any website URL with customizable page format and auto-expiration. Use when you need to generate a PDF snapshot of a webpage." }, { "slug": "RENDERFORM_DELETE_RESULT", "name": "Delete Result", "description": "Tool to delete a render result (image/PDF) by its identifier. Use when you need to remove a previously generated image or PDF from the system." }, { "slug": "RENDERFORM_GET_RESULT", "name": "Get Result", "description": "Tool to retrieve detailed information about a specific render result by its identifier. Use when you need to check the status or get the full details of a previously generated image or PDF." }, { "slug": "RENDERFORM_LIST_FONTS", "name": "List Fonts", "description": "Tool to retrieve all available fonts including Google Fonts and custom uploaded fonts. Use when you need to list fonts for text rendering." }, { "slug": "RENDERFORM_LIST_RESULTS_V2", "name": "List Results (v2)", "description": "Tool to list all rendered images and PDFs with pagination support. Use when retrieving results from the v2 API with filtering by template or batch." }, { "slug": "RENDERFORM_LIST_TEMPLATES_V2", "name": "List Templates V2", "description": "Tool to get a list of all your templates with metadata and preview links. Supports pagination and filtering by name and tags." }, { "slug": "RENDERFORM_TAKE_SCREENSHOT", "name": "Take Website Screenshot", "description": "Tool to capture a screenshot of a website with given dimensions. Use when you need a visual snapshot of a page with optional wait time before capture." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "renderform_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "RenderForm API Key", "type": "string", "description": "Your RenderForm API Key for authentication. Generate one from your RenderForm dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rentcast", "name": "Rentcast", "logo": "https://logos.composio.dev/api/rentcast", "description": "Rental property rates and market trends API providing access to 140+ million property records in the United States", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rentcast_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate and copy your API Key from the API Dashboard at https://app.rentcast.io/app/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rentman", "name": "Rentman", "logo": "https://logos.composio.dev/api/rentman", "description": "Efficiently manage your crew and equipment from one place and ensure nothing falls through the cracks.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 130, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RENTMAN_DELETE_APPOINTMENT", "name": "Delete Appointment", "description": "Tool to delete an appointment by its unique ID. Use when you need to remove an appointment from Rentman." }, { "slug": "RENTMAN_DELETE_APPOINTMENTCREW", "name": "Delete Appointmentcrew Item", "description": "Tool to delete an appointmentcrew item by its numeric ID. Use when removing an appointment crew assignment." }, { "slug": "RENTMAN_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by its ID. Use when you need to remove a contact from Rentman." }, { "slug": "RENTMAN_DELETE_CONTACT_PERSON", "name": "Delete contact person", "description": "Tool to delete a contact person from Rentman by their numeric ID. Use when you need to permanently remove a contact person from the system." }, { "slug": "RENTMAN_DELETE_COST_ITEM", "name": "Delete Cost Item", "description": "Tool to delete a cost item in Rentman by its numeric ID. Use when you need to remove a cost record from the system." }, { "slug": "RENTMAN_DELETE_CREW_AVAILABILITY", "name": "Delete Crew Availability", "description": "Tool to delete a crew availability item by its ID. Use when you need to remove a specific crew availability entry after confirming its ID." }, { "slug": "RENTMAN_DELETE_PROJECT_REQUEST", "name": "Delete Project Request", "description": "Tool to delete a project request by its ID. Use when you need to remove a project request from Rentman." }, { "slug": "RENTMAN_DELETE_PROJECT_REQUEST_EQUIPMENT_ITEM", "name": "Delete Project Request Equipment Item", "description": "Tool to delete a project request equipment item by its ID. Use when you need to remove a project request equipment item from Rentman." }, { "slug": "RENTMAN_DELETE_TIMEREGISTRATION", "name": "Delete Time Registration", "description": "Tool to delete a time registration item in Rentman by its numeric ID. Use when you need to remove a time registration record from the system." }, { "slug": "RENTMAN_GET_ACCESSORIES_COLLECTION", "name": "Get Accessories Collection", "description": "Tool to retrieve a collection of accessories from Rentman. Use when you need to list or search accessories with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_APPOINTMENT_CREW", "name": "Get Appointment Crew", "description": "Tool to retrieve the linked crew members for a specific appointment. Use when you need to get the list of crew assigned to an appointment." }, { "slug": "RENTMAN_GET_APPOINTMENTCREW_COLLECTION", "name": "Get Appointmentcrew Collection", "description": "Tool to retrieve appointmentcrew collection from Rentman. Use when you need to list appointment crew assignments with optional pagination, sorting, and field filtering. Results are limited to 300 items per request." }, { "slug": "RENTMAN_GET_APPOINTMENTS_COLLECTION", "name": "Get Appointments Collection", "description": "Tool to retrieve a collection of appointments from Rentman. Use when you need to list or search appointments with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_CONTACT_CONTACTPERSONS", "name": "Get Contact Contactpersons", "description": "Tool to retrieve all contactpersons linked to a specific contact in Rentman. Use when you need to get a list of people associated with a contact organization or entity. Returns comprehensive contact person details including names, contact information, and custom fields." }, { "slug": "RENTMAN_GET_CONTACT_FILE_FOLDERS", "name": "Get Contact File Folders", "description": "Tool to get file folders linked to a contact. Use when you need to retrieve all file folders associated with a specific contact by their ID." }, { "slug": "RENTMAN_GET_CONTACT_FILES", "name": "Get Contact Files", "description": "Tool to get files linked to a contact. Use when you need to retrieve all files associated with a specific contact by their ID." }, { "slug": "RENTMAN_GET_CONTACTPERSON_FILE_FOLDERS", "name": "Get Contact Person File Folders", "description": "Tool to retrieve file folders linked to a contact person in Rentman. Use when you need to get all file folders associated with a specific contact person by their ID." }, { "slug": "RENTMAN_GET_CONTACT_PERSON_FILES", "name": "Get Contact Person Files", "description": "Tool to retrieve files linked to a contact person in Rentman. Use when you need to get all files associated with a specific contact person by their ID." }, { "slug": "RENTMAN_GET_CONTACT_PERSONS", "name": "Get Contact Persons", "description": "Tool to retrieve the collection of contact persons from Rentman. Use this when you need to list or search contact persons with optional filtering, pagination, and field selection." }, { "slug": "RENTMAN_GET_CONTACTS_COLLECTION", "name": "Get Contacts Collection", "description": "Tool to retrieve a collection of contacts from Rentman. Use when you need to fetch contact information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_CONTRACT_INVOICELINES", "name": "Get contract invoicelines", "description": "Retrieves invoicelines linked to a specific contract. Use when you need to get billing information including VAT amounts (BTW bedrag) for a contract." }, { "slug": "RENTMAN_GET_CONTRACT_ITEM_FILES", "name": "Get Contract Files", "description": "Tool to retrieve files linked to a specific contract. Use when you need to get all files associated with a contract ID." }, { "slug": "RENTMAN_GET_CONTRACTS_COLLECTION", "name": "Get Contracts Collection", "description": "Tool to retrieve a collection of contracts from Rentman. Use when you need to list contracts with optional filtering, pagination, and sorting. Returns contract details including pricing, dates, and associated entities." }, { "slug": "RENTMAN_GET_COSTS_COLLECTION", "name": "Get Costs Collection", "description": "Tool to retrieve costs collection from Rentman. Use when you need to fetch a list of costs with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_CREW_APPOINTMENTS", "name": "Get Crew Member Appointments", "description": "Tool to retrieve appointments for a specific crew member. Use when you need to get the schedule or appointments linked to a crew member by their ID." }, { "slug": "RENTMAN_GET_CREW_AVAILABILITY", "name": "Get Crew Availability", "description": "Tool to retrieve crew availability records for a specific crew member in Rentman. Use when you need to check availability periods, unavailability, or scheduling information for a crew member." }, { "slug": "RENTMAN_GET_CREW_AVAILABILITY_COLLECTION", "name": "Get Crew Availability Collection", "description": "Tool to retrieve crew availability collection from Rentman. Use when you need to get information about crew members' availability periods, including their availability status, time periods, and related details. Supports pagination, field selection, and sorting." }, { "slug": "RENTMAN_GET_CREW_COLLECTION", "name": "Get Crew Collection", "description": "Tool to retrieve crew collection from Rentman. Use when you need to list crew members with optional filtering, pagination, and field selection." }, { "slug": "RENTMAN_GET_CREW_FILE_FOLDERS", "name": "Get Crew File Folders", "description": "Tool to retrieve file folders linked to a crew member. Use when you need to get the folder structure for organizing files associated with a specific crew member by their ID." }, { "slug": "RENTMAN_GET_CREW_FILES", "name": "Get Crew Files", "description": "Tool to retrieve files linked to a crew member. Use when you need to get all files associated with a specific crew member by their ID." }, { "slug": "RENTMAN_GET_CREW_MEMBER", "name": "Get Crew Member", "description": "Tool to retrieve a crew member item by ID from Rentman. Use when you need to fetch detailed information about a specific crew member including contact details, address, and custom fields." }, { "slug": "RENTMAN_GET_CREWRATES", "name": "Get Crewrates Collection", "description": "Tool to retrieve crewrates collection from Rentman. Use when you need to fetch crew member rate information with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_CREW_RATES", "name": "Get Crew Rates", "description": "Tool to get crew rates linked collection for a specific crew member. Use when you need to retrieve rate information associated with a crew member by their ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_ACCESSORIES", "name": "Get Equipment Accessories", "description": "Tool to get accessories linked to a specific equipment item. Use when you need to retrieve the list of accessories associated with an equipment itemtype by its ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_COLLECTION", "name": "Get equipment collection", "description": "Tool to get the equipment collection from Rentman. Use when you need to retrieve a list of equipment items with optional filtering and pagination." }, { "slug": "RENTMAN_GET_EQUIPMENT_FILE_FOLDERS", "name": "Get Equipment File Folders", "description": "Tool to get file folders linked to equipment. Use when you need to retrieve all file folders associated with a specific equipment item by its ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_FILES", "name": "Get Equipment Files", "description": "Tool to get files linked to equipment. Use when you need to retrieve all files associated with a specific equipment item by its ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_REPAIRS", "name": "Get Equipment Repairs", "description": "Tool to retrieve repairs linked to a specific equipment item. Use when you need to fetch repair history or current repairs for equipment by its ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_SERIALNUMBERS", "name": "Get Equipment Serial Numbers", "description": "Tool to retrieve serial numbers linked to a specific equipment item. Use when you need to get all serial numbers associated with an equipment/itemtype ID." }, { "slug": "RENTMAN_GET_EQUIPMENT_SET_CONTENT_COLLECTION", "name": "Get Equipment Sets Content Collection", "description": "Tool to retrieve the equipment sets content collection from Rentman. Use when you need to list or query equipment items that belong to sets, including their quantities and relationships." }, { "slug": "RENTMAN_GET_EQUIPMENT_SETS_CONTENT", "name": "Get Equipment Sets Content", "description": "Tool to get equipment sets content linked collection for a specific equipment item. Use when you need to retrieve the list of equipment items that are part of a set." }, { "slug": "RENTMAN_GET_EQUIPMENT_STOCKMOVEMENTS", "name": "Get Equipment Stockmovements", "description": "Tool to get stockmovements linked collection for a specific equipment item. Use when you need to retrieve stock movement history for equipment." }, { "slug": "RENTMAN_GET_FILES_COLLECTION", "name": "Get Files Collection", "description": "Tool to retrieve files collection from Rentman. Use when you need to list or search for files with optional pagination using limit and offset parameters." }, { "slug": "RENTMAN_GET_FOLDER_ITEM", "name": "Get Folder Item", "description": "Tool to retrieve a folder item by ID from Rentman. Use when you need to get details about a specific folder." }, { "slug": "RENTMAN_GET_FOLDERS_COLLECTION", "name": "Get Folders Collection", "description": "Tool to retrieve folders collection from Rentman. Use when you need to list all folders or search for specific folders using filters and sorting. Supports pagination with limit and offset parameters." }, { "slug": "RENTMAN_GET_INVOICE_FILES", "name": "Get Invoice Files", "description": "Tool to retrieve files linked to an invoice in Rentman. Use when you need to get all files associated with a specific invoice by its ID." }, { "slug": "RENTMAN_GET_INVOICE_INVOICELINES", "name": "Get Invoice Invoicelines", "description": "Tool to retrieve invoicelines linked to a specific invoice. Use when you need to get line item details including VAT amounts (BTW bedrag), prices, and ledger codes for a particular invoice." }, { "slug": "RENTMAN_GET_INVOICELINES", "name": "Get Invoice Lines", "description": "Tool to retrieve invoicelines collection from Rentman. Use when you need to access invoice line items with details like VAT amounts, prices, and ledger codes. Supports pagination (up to 300 items per request), field selection, and sorting." }, { "slug": "RENTMAN_GET_INVOICE_PAYMENTS", "name": "Get Invoice Payments", "description": "Tool to retrieve payments linked to a specific invoice. Use when you need to get payment records associated with an invoice." }, { "slug": "RENTMAN_GET_INVOICES", "name": "Get Invoices Collection", "description": "Tool to retrieve a collection of invoices from Rentman. Use when you need to fetch invoice records with optional pagination, filtering, and field selection." }, { "slug": "RENTMAN_GET_LEDGERCODES_COLLECTION", "name": "Get Ledgercodes Collection", "description": "Tool to retrieve ledger codes collection from Rentman. Use when you need to fetch ledger code information that defines the type of trade for invoice lines." }, { "slug": "RENTMAN_GET_PAYMENTS_COLLECTION", "name": "Get Payments Collection", "description": "Tool to retrieve a collection of payments from Rentman. Use when you need to fetch payment records with optional pagination, sorting, and field selection." }, { "slug": "RENTMAN_GET_PROJECT_CONTRACTS", "name": "Get Project Contracts", "description": "Tool to retrieve contracts linked to a specific project from Rentman. Use when you need to fetch all contracts associated with a project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_COSTS", "name": "Get Project Costs", "description": "Tool to retrieve costs linked to a specific project from Rentman. Use when you need to fetch all cost items associated with a particular project by its ID." }, { "slug": "RENTMAN_GET_PROJECTCREW_COLLECTION", "name": "Get Projectcrew Collection", "description": "Tool to retrieve projectcrew collection from Rentman. Use when you need to list project crew assignments with optional filtering, pagination, and field selection." }, { "slug": "RENTMAN_GET_PROJECT_EQUIPMENT_COLLECTION", "name": "Get Project Equipment Collection", "description": "Tool to retrieve a collection of project equipment from Rentman. Use when you need to list or search project equipment items with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_PROJECTEQUIPMENTGROUP_COLLECTION", "name": "Get Projectequipmentgroup Collection", "description": "Tool to retrieve projectequipmentgroup collection from Rentman. Use when you need to list project equipment groups with optional pagination, sorting, and field filtering. Results are limited to 300 items per request." }, { "slug": "RENTMAN_GET_PROJECTEQUIPMENTGROUP_PROJECTEQUIPMENT", "name": "Get project equipment group project equipment", "description": "Tool to get projectequipment linked collection for a specific projectequipmentgroup. Use when you need to retrieve project equipment items associated with a project equipment group by its ID." }, { "slug": "RENTMAN_GET_PROJECT_FILE_FOLDERS", "name": "Get Project File Folders", "description": "Tool to retrieve file folders linked to a specific project. Use when you need to get all file folder structures associated with a project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_FILES", "name": "Get Project Files", "description": "Tool to retrieve files linked to a project. Use when you need to get all files associated with a specific project by its ID." }, { "slug": "RENTMAN_GET_PROJECTFUNCTIONGROUP_PROJECTFUNCTIONS", "name": "Get Project Function Group Project Functions", "description": "Tool to get project functions linked to a specific project function group in Rentman. Use when you need to retrieve the custom linked collection of project functions for a given project function group ID." }, { "slug": "RENTMAN_GET_PROJECTFUNCTIONGROUPS_COLLECTION", "name": "Get Project Function Groups Collection", "description": "Tool to retrieve a collection of project function groups from Rentman. Use when you need to fetch project function group information with optional filtering, pagination, and field selection." }, { "slug": "RENTMAN_GET_PROJECTFUNCTION_PROJECTCREW", "name": "Get Project Function Crew", "description": "Tool to get project crew linked to a specific project function. Use when you need to retrieve crew members assigned to a project function by its ID." }, { "slug": "RENTMAN_GET_PROJECTFUNCTION_PROJECTVEHICLES", "name": "Get Projectfunction Projectvehicles", "description": "Tool to retrieve project vehicles linked to a project function. Use when you need to get all vehicles associated with a specific project function by its ID." }, { "slug": "RENTMAN_GET_PROJECTFUNCTIONS_COLLECTION", "name": "Get Projectfunctions Collection", "description": "Tool to retrieve a collection of projectfunctions from Rentman. Use when you need to fetch projectfunction information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTCREW", "name": "Get Project Crew", "description": "Tool to get project crew custom linked collection for a specific project. Use when you need to retrieve crew members assigned to a project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTEQUIPMENT", "name": "Get Project Equipment", "description": "Tool to retrieve all equipment items linked to a specific project in Rentman. Use when you need to get the equipment planning details for a particular project, including quantities, pricing, and planning periods." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTEQUIPMENTGROUP", "name": "Get project projectequipmentgroup", "description": "Tool to get projectequipmentgroup linked collection for a specific project. Use when you need to retrieve project equipment groups associated with a project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTFUNCTIONGROUPS", "name": "Get Project Function Groups For Project", "description": "Tool to retrieve project function groups linked to a specific project in Rentman. Use when you need to fetch project function groups associated with a particular project ID." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTFUNCTIONS", "name": "Get Project Projectfunctions", "description": "Tool to retrieve projectfunctions linked to a specific project. Use when you need to fetch project function information for a given project ID." }, { "slug": "RENTMAN_GET_PROJECT_PROJECTVEHICLES", "name": "Get Project Projectvehicles", "description": "Tool to retrieve project vehicles linked to a project. Use when you need to get all vehicles associated with a specific project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_QUOTES", "name": "Get Project Quotes", "description": "Tool to retrieve quotes linked to a project. Use when you need to get all quotes associated with a specific project by its ID." }, { "slug": "RENTMAN_GET_PROJECT_REQUEST_EQUIPMENT", "name": "Get Project Request Equipment", "description": "Tool to retrieve projectrequestequipment linked to a specific project request in Rentman. Use when you need to get equipment items associated with a project request." }, { "slug": "RENTMAN_GET_PROJECT_REQUEST_EQUIPMENT_COLLECTION", "name": "Get Project Request Equipment Collection", "description": "Tool to retrieve project request equipment collection from Rentman. Use when you need to list project request equipment items with optional pagination, sorting, and field filtering. Results are limited to 300 items per request." }, { "slug": "RENTMAN_GET_PROJECTREQUESTS_COLLECTION", "name": "Get Project Requests Collection", "description": "Tool to retrieve a collection of project requests from Rentman. Use when you need to fetch project request information with optional pagination." }, { "slug": "RENTMAN_GET_PROJECTS_COLLECTION", "name": "Get Projects Collection", "description": "Tool to retrieve a collection of projects from Rentman. Use when you need to fetch project information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_PROJECT_SUBPROJECTS", "name": "Get Project Subprojects", "description": "Tool to retrieve subprojects linked to a specific project from Rentman. Use when you need to fetch all subproject items associated with a project by its ID." }, { "slug": "RENTMAN_GET_PROJECTTYPES_COLLECTION", "name": "Get Projecttypes Collection", "description": "Tool to retrieve a collection of project types from Rentman. Use when you need to fetch project type information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_PROJECTVEHICLES_COLLECTION", "name": "Get Projectvehicles Collection", "description": "Tool to retrieve projectvehicles collection from Rentman. Use when you need to list project vehicles with optional filtering, pagination, and field selection." }, { "slug": "RENTMAN_GET_QUOTE_FILES", "name": "Get Quote Files", "description": "Tool to get files linked to a quote. Use when you need to retrieve all files associated with a specific quote by its ID." }, { "slug": "RENTMAN_GET_QUOTE_INVOICELINES", "name": "Get quote invoicelines", "description": "Retrieves invoicelines linked to a specific quote. Use when you need to get billing information including VAT amounts (BTW bedrag) for a quote." }, { "slug": "RENTMAN_GET_QUOTES_COLLECTION", "name": "Get Quotes Collection", "description": "Tool to retrieve a collection of quotes from Rentman. Use when you need to fetch quote information with optional pagination." }, { "slug": "RENTMAN_GET_RATEFACTORS_COLLECTION", "name": "Get Ratefactors Collection", "description": "Tool to retrieve a collection of ratefactors from Rentman. Use when you need to fetch ratefactor information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_RATE_RATEFACTORS", "name": "Get Rate Ratefactors", "description": "Tool to retrieve the ratefactors custom linked collection for a specific rate. Use when you need to get the list of ratefactors associated with a rate." }, { "slug": "RENTMAN_GET_RATES_COLLECTION", "name": "Get Rates Collection", "description": "Tool to retrieve rates collection from Rentman. Use when you need to fetch rate information with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_REPAIR_FILE_FOLDERS", "name": "Get Repair File Folders", "description": "Tool to get file folders linked to a repair. Use when you need to retrieve all file folders associated with a specific repair by its ID." }, { "slug": "RENTMAN_GET_REPAIR_FILES", "name": "Get Repair Files", "description": "Tool to get files linked to a repair. Use when you need to retrieve all files associated with a specific repair item by its ID." }, { "slug": "RENTMAN_GET_REPAIRS_COLLECTION", "name": "Get Repairs Collection", "description": "Tool to retrieve a collection of repairs from Rentman. Use when you need to fetch repair records with optional filtering and pagination." }, { "slug": "RENTMAN_GET_SERIALNUMBER_FILE_FOLDERS", "name": "Get Serial Number File Folders", "description": "Tool to get file folders linked to a serial number. Use when you need to retrieve all file folders associated with a specific serial number by its ID." }, { "slug": "RENTMAN_GET_SERIAL_NUMBER_FILES", "name": "Get Serial Number Files", "description": "Tool to get files linked to a serial number. Use when you need to retrieve all files associated with a specific serial number item by its ID." }, { "slug": "RENTMAN_GET_SERIALNUMBERS_COLLECTION", "name": "Get Serialnumbers Collection", "description": "Tool to retrieve a collection of serialnumbers from Rentman. Use when you need to fetch serialnumber information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_STATUSES_COLLECTION", "name": "Get Statuses Collection", "description": "Tool to retrieve a collection of statuses from Rentman. Use when you need to fetch status information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_STOCKLOCATIONS_COLLECTION", "name": "Get Stocklocations Collection", "description": "Tool to retrieve stock locations collection from Rentman. Use when you need to fetch information about warehouse or storage locations with optional filtering and pagination." }, { "slug": "RENTMAN_GET_STOCKMOVEMENTS_COLLECTION", "name": "Get Stockmovements Collection", "description": "Tool to retrieve the stock movements collection from Rentman. Use when you need to fetch a list of stock movements with optional filtering, sorting, and pagination." }, { "slug": "RENTMAN_GET_SUBPROJECT_FILE_FOLDERS", "name": "Get Subproject File Folders", "description": "Tool to get file folders linked to a subproject. Use when you need to retrieve all file folders associated with a specific subproject by its ID." }, { "slug": "RENTMAN_GET_SUBPROJECT_PROJECTCREW", "name": "Get Subproject Project Crew", "description": "Tool to get project crew custom linked collection for a specific subproject. Use when you need to retrieve crew members assigned to a subproject by its ID." }, { "slug": "RENTMAN_GET_SUBPROJECT_PROJECTEQUIPMENT", "name": "Get Subproject Project Equipment", "description": "Tool to retrieve project equipment collection from a specific subproject in Rentman. Use when you need to list all equipment items or search for specific equipment associated with a subproject. Supports pagination with limit and offset parameters." }, { "slug": "RENTMAN_GET_SUBPROJECT_PROJECTEQUIPMENTGROUP", "name": "Get subproject projectequipmentgroup", "description": "Tool to get projectequipmentgroup linked collection for a specific subproject. Use when you need to retrieve project equipment groups associated with a subproject by its ID." }, { "slug": "RENTMAN_GET_SUBPROJECT_PROJECTFUNCTIONGROUPS", "name": "Get Project Function Groups For Subproject", "description": "Tool to retrieve project function groups linked to a specific subproject in Rentman. Use when you need to fetch project function groups associated with a particular subproject ID." }, { "slug": "RENTMAN_GET_SUBPROJECT_PROJECTVEHICLES", "name": "Get Subproject Projectvehicles", "description": "Tool to retrieve project vehicles linked to a subproject. Use when you need to get all vehicles associated with a specific subproject by its ID." }, { "slug": "RENTMAN_GET_SUBPROJECTS_COLLECTION", "name": "Get Subprojects Collection", "description": "Tool to retrieve subprojects collection from Rentman. Use when you need to list all subprojects or search for specific subprojects using filters and sorting. Supports pagination with limit and offset parameters." }, { "slug": "RENTMAN_GET_SUBRENTAL_EQUIPMENT_COLLECTION", "name": "Get Subrental Equipment Collection", "description": "Tool to retrieve a collection of subrental equipment items from Rentman. Use when you need to fetch subrental equipment information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_SUBRENTAL_EQUIPMENT_GROUP", "name": "Get Subrental Equipment Group", "description": "Tool to get subrental equipment group custom linked collection from Rentman. Use when you need to retrieve equipment groups associated with a specific subrental item." }, { "slug": "RENTMAN_GET_SUBRENTAL_EQUIPMENT_GROUP_COLLECTION", "name": "Get Subrental Equipment Group Collection", "description": "Tool to retrieve the complete collection of subrental equipment groups from Rentman. Use when you need to fetch all subrental equipment groups with optional filtering and pagination." }, { "slug": "RENTMAN_GET_SUBRENTALEQUIPMENTGROUP_SUBRENTALEQUIPMENT", "name": "Get subrental equipment group subrental equipment", "description": "Tool to get subrentalequipment custom linked collection for a specific subrentalequipmentgroup. Use when you need to retrieve subrental equipment items associated with a subrental equipment group by its ID." }, { "slug": "RENTMAN_GET_SUBRENTAL_FILE_FOLDERS", "name": "Get Subrental File Folders", "description": "Tool to get file folders linked to a subrental. Use when you need to retrieve the collection of file folders associated with a specific subrental by its ID." }, { "slug": "RENTMAN_GET_SUBRENTAL_FILES", "name": "Get Subrental Files", "description": "Tool to get files linked to a subrental. Use when you need to retrieve all files associated with a specific subrental item by its ID." }, { "slug": "RENTMAN_GET_SUBRENTALS_COLLECTION", "name": "Get Subrentals Collection", "description": "Tool to get subrentals collection from Rentman. Use when you need to retrieve a list of subrentals with optional pagination." }, { "slug": "RENTMAN_GET_SUBRENTAL_SUBRENTALEQUIPMENT", "name": "Get Subrental Subrentalequipment", "description": "Tool to retrieve subrentalequipment linked to a specific subrental in Rentman. Use when you need to get a list of equipment items associated with a subrental." }, { "slug": "RENTMAN_GET_TAXCLASSES_COLLECTION", "name": "Get Tax Classes Collection", "description": "Tool to retrieve a collection of tax classes from Rentman. Use when you need to fetch tax class information with optional filtering and pagination." }, { "slug": "RENTMAN_GET_TIMEREGISTRATION_ACTIVITIES", "name": "Get Timeregistration Activities", "description": "Tool to retrieve all timeregistrationactivities linked to a specific timeregistration in Rentman. Use when you need to get details about activities associated with a time registration entry. Returns comprehensive activity details including duration, description, and project function references." }, { "slug": "RENTMAN_GET_TIMEREGISTRATION_ACTIVITIES_COLLECTION", "name": "Get Timeregistration Activities Collection", "description": "Tool to retrieve a collection of timeregistration activities from Rentman. Use when you need to fetch time registration activity records with optional pagination and filtering." }, { "slug": "RENTMAN_GET_TIMEREGISTRATION_COLLECTION", "name": "Get Timeregistration Collection", "description": "Tool to retrieve a collection of timeregistrations from Rentman. Use when you need to fetch time registration records with optional pagination." }, { "slug": "RENTMAN_GET_TIMEREGISTRATION_FILES", "name": "Get Time Registration Files", "description": "Tool to get files linked to a time registration. Use when you need to retrieve all files associated with a specific time registration entry by its ID." }, { "slug": "RENTMAN_GET_VEHICLE_FILE_FOLDERS", "name": "Get Vehicle File Folders", "description": "Tool to get file folders linked to a vehicle. Use when you need to retrieve all file folders associated with a specific vehicle by their ID." }, { "slug": "RENTMAN_GET_VEHICLE_FILES", "name": "Get Vehicle Files", "description": "Tool to get files linked to a vehicle. Use when you need to retrieve all files associated with a specific vehicle by its ID." }, { "slug": "RENTMAN_GET_VEHICLES_COLLECTION", "name": "Get Vehicles Collection", "description": "Tool to retrieve a collection of vehicles from Rentman. Use when you need to fetch vehicle information with optional filtering and pagination." }, { "slug": "RENTMAN_LIST_ACTUALCONTENT", "name": "List Actualcontent", "description": "Tool to get actualcontent collection from Rentman. Use when you need to retrieve the actual content of serialized physical combinations with pagination support." }, { "slug": "RENTMAN_LIST_EQUIPMENTASSIGNEDSERIALS_COLLECTION", "name": "List Equipmentassignedserials Collection", "description": "Tool to retrieve serial numbers assigned to serialized physical combinations from Rentman. Use when you need to fetch manually assigned serial numbers (not actual content) from the serial numbers tab." }, { "slug": "RENTMAN_LIST_FACTORGROUPS", "name": "List Factorgroups", "description": "Tool to retrieve factorgroups collection from Rentman. Use when you need to fetch all factor groups with optional filtering and pagination." }, { "slug": "RENTMAN_LIST_FACTORGROUPS_FACTORS", "name": "List Factorgroups Factors", "description": "Tool to retrieve the factors collection for a specific factorgroup. Use when you need to get the list of factors associated with a factorgroup." }, { "slug": "RENTMAN_LIST_FACTORS", "name": "List Factors", "description": "Tool to retrieve a collection of factors from Rentman. Use when you need to fetch factor information with optional filtering and pagination." }, { "slug": "RENTMAN_LIST_FILE_FOLDERS", "name": "List File Folders", "description": "Tool to retrieve file folders collection from Rentman. Use when you need to list folders that files can be organized into, with optional pagination." }, { "slug": "RENTMAN_LIST_LEAVEMUTATION", "name": "List Leave Mutations", "description": "Tool to retrieve leave mutations collection from Rentman. Use when you need to list leave mutations and their information. Leave mutations are immutable records, so any mistakes should be corrected by creating a new opposite mutation." }, { "slug": "RENTMAN_LIST_LEAVE_REQUESTS", "name": "List Leave Requests", "description": "Tool to retrieve leave requests collection from Rentman. Use when you need to work with leave requests and their information such as approval status, reviewer, and requested dates." }, { "slug": "RENTMAN_LIST_LEAVEREQUEST_TIMEREGISTRATION", "name": "List Leave Request Timeregistration", "description": "Tool to get timeregistration collection for a specific leave request. Use when you need to retrieve time registrations linked to a leave request." }, { "slug": "RENTMAN_LIST_LEAVETYPES", "name": "List Leave Types", "description": "Tool to retrieve leave types collection from Rentman. Use when you need to work with leave types and their information, including properties like availability impact and approval requirements." }, { "slug": "RENTMAN_LIST_SERIALNUMBER_ACTUALCONTENT", "name": "List Serialnumber Actualcontent", "description": "Tool to retrieve the actualcontent collection for a specific serialnumber item. Use when you need to get all actualcontent entries associated with a serialnumber ID." }, { "slug": "RENTMAN_LIST_SERIALNUMBERS_EQUIPMENTASSIGNEDSERIALS", "name": "List Serialnumber Equipment Assigned Serials", "description": "Tool to retrieve equipmentassignedserials collection for a specific serialnumber item. Use when you need to get all equipment assigned serials associated with a serialnumber ID." }, { "slug": "RENTMAN_LIST_STOCKLOCATIONS_VEHICLES", "name": "List Stocklocations Vehicles", "description": "Tool to retrieve vehicles collection for a stocklocation. Use when you need to get all vehicles associated with a specific stocklocation by its ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rentman_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to Configuration > Account > Integrations in Rentman, click \"Connect\" in the API field, then click \"Show token\" to reveal your API token. Tokens are valid for 10 years.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "repairshopr", "name": "RepairShopr", "logo": "https://logos.composio.dev/api/repairshopr", "description": "RepairShopr is a comprehensive repair shop management software designed to streamline operations, manage customer relationships, and enhance business efficiency.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 147, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REPAIRSHOPR_ADD_ESTIMATE_LINE_ITEM", "name": "Add Estimate Line Item", "description": "Tool to add a line item to an existing estimate. Use when you need to add products or services to an estimate in RepairShopr." }, { "slug": "REPAIRSHOPR_ADD_PURCHASE_ORDER_LINE_ITEM", "name": "Add Purchase Order Line Item", "description": "Tool to add a product line item to an existing purchase order. Use when you need to add inventory items to a purchase order. The product must have stock tracking enabled (maintain_stock=true)." }, { "slug": "REPAIRSHOPR_ADD_SCHEDULE_LINE_ITEM", "name": "Add Schedule Line Item", "description": "Tool to add a line item to an invoice schedule. Use when adding recurring charges or one-time items to an existing schedule. Required permission: Recurring Invoices - Edit." }, { "slug": "REPAIRSHOPR_ADD_TICKET_COMMENT", "name": "Add Ticket Comment", "description": "Tool to add a comment to an existing ticket in RepairShopr. Use when you need to add notes, updates, or responses to a ticket. Requires Tickets - Edit permission. Single-Customer Users can only access their own tickets." }, { "slug": "REPAIRSHOPR_ADD_TICKET_LINE_ITEM", "name": "Add Ticket Line Item", "description": "Tool to add a line item to an existing ticket in RepairShopr. Use when you need to add products, services, or charges to a ticket. Requires Tickets - Edit permission. Single-customer users can only access their own tickets." }, { "slug": "REPAIRSHOPR_CHARGE_TICKET_TIMER", "name": "Charge Ticket Timer", "description": "Tool to charge a timer entry for a specific ticket. Use when a timer entry needs to be converted to a billable line item on the ticket. Requires 'Ticket Timers - Overview' permission. The timer entry must exist and be associated with the specified ticket." }, { "slug": "REPAIRSHOPR_CONVERT_ESTIMATE_TO_INVOICE", "name": "Convert Estimate to Invoice", "description": "Tool to convert an existing estimate to an invoice in RepairShopr. Use when you have an approved estimate that needs to be billed. Requires the estimate ID and appropriate permissions (\"Estimates - View Details\" and \"Invoices - Create\"). Returns the created invoice with all line items copied from the estimate." }, { "slug": "REPAIRSHOPR_CREATE_APPOINTMENT_TYPE", "name": "Create Appointment Type", "description": "Tool to create a new appointment type in RepairShopr. Use when defining appointment categories with specific location settings. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_CREATE_CANNED_RESPONSE", "name": "Create Canned Response", "description": "Tool to create a new Canned Response. Use when you need to add a pre-formatted response template for tickets. Requires 'Ticket Canned Responses - Manage' permission." }, { "slug": "REPAIRSHOPR_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact associated with a customer. Use when you need to add a contact record to a customer account. Requires 'Customers - Edit' permission." }, { "slug": "REPAIRSHOPR_CREATE_CONTRACT", "name": "Create Contract", "description": "Tool to create a new contract for a customer. Use when you need to establish a service contract with specified terms and conditions. Requires Contracts - Edit permission." }, { "slug": "REPAIRSHOPR_CREATE_INVOICE_LINE_ITEM", "name": "Create Invoice Line Item", "description": "Tool to create a new line item on an existing invoice in RepairShopr. Use when adding products or services to an invoice that already exists. Required permission: Invoices - Edit." }, { "slug": "REPAIRSHOPR_CREATE_PHONE", "name": "Create Phone", "description": "Tool to create a phone number for a customer. Use when you need to add a new phone number record to a customer's profile. Requires Customers - Edit permission. Single-Customer Users can only access their own records." }, { "slug": "REPAIRSHOPR_CREATE_PORTAL_USER", "name": "Create Portal User", "description": "Tool to create a portal user in RepairShopr. Use when you need to give a customer or contact access to the customer portal. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_CREATE_PRODUCT_SERIAL", "name": "Create Product Serial", "description": "Tool to create a product serial for a specific product. Use when you need to add a serial number to track individual product instances." }, { "slug": "REPAIRSHOPR_CREATE_RMM_ALERT", "name": "Create RMM Alert", "description": "Tool to create an RMM Alert. Use when you need to register a new monitoring alert for an asset or customer. Requires 'RMM Alerts - Create' permission. Single-customer users can only create alerts for their own resources." }, { "slug": "REPAIRSHOPR_CREATE_SCHEDULE", "name": "Create Invoice Schedule", "description": "Tool to create a recurring invoice schedule. Use when setting up automated invoicing for a customer at regular intervals. Requires Recurring Invoices - New permission." }, { "slug": "REPAIRSHOPR_CREATE_TICKET", "name": "Create Ticket", "description": "Tool to create a new ticket in RepairShopr. Use when you need to create a support ticket for a customer. Requires customer_id. Single-customer users can only access their own tickets." }, { "slug": "REPAIRSHOPR_CREATE_TICKET_TIMER", "name": "Create Ticket Timer", "description": "Tool to create a ticket timer entry for a specific ticket in RepairShopr. Use when you need to log time spent on a ticket. Requires Ticket Timers - Overview permission." }, { "slug": "REPAIRSHOPR_CREATE_VENDOR", "name": "Create Vendor", "description": "Tool to create a new vendor. Use when you need to add a vendor record with contact details and information. Required permission: Vendors - New." }, { "slug": "REPAIRSHOPR_CREATE_WIKI_PAGE", "name": "Create Wiki Page", "description": "Tool to create a Wiki Page in RepairShopr. Use when you need to add documentation or knowledge base content. Requires Documentation - Create permission." }, { "slug": "REPAIRSHOPR_DELETE_APPOINTMENT", "name": "Delete Appointment", "description": "Tool to delete a specific appointment by its ID. Use when an appointment is canceled and needs removal permanently." }, { "slug": "REPAIRSHOPR_DELETE_APPOINTMENT_TYPE", "name": "Delete Appointment Type", "description": "Tool to delete an Appointment Type by ID. Use when an appointment type is no longer needed and requires permanent removal. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_DELETE_CANNED_RESPONSE", "name": "Delete Canned Response", "description": "Tool to delete a specific canned response by ID. Use when a canned response template is no longer needed and should be permanently removed. Required permission: Ticket Canned Responses - Manage." }, { "slug": "REPAIRSHOPR_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a specific contact by ID. Use when you need to permanently remove a contact record. Requires permission: Customers - Edit. Single-Customer Users can only access own contacts." }, { "slug": "REPAIRSHOPR_DELETE_CONTRACT", "name": "Delete Contract", "description": "Tool to delete a contract by its unique ID. Use when a contract needs to be permanently removed from the system. Required permission: Contracts - Delete." }, { "slug": "REPAIRSHOPR_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete a specific customer by ID. Use after confirming the customer ID when you need to remove a customer record permanently." }, { "slug": "REPAIRSHOPR_DELETE_ESTIMATE", "name": "Delete Estimate", "description": "Permanently deletes an estimate from RepairShopr by its unique ID. Use this action when you need to remove an estimate that is no longer needed, was created in error, or has been replaced. The deletion is permanent and cannot be undone. The API will return a confirmation message indicating successful deletion, or notify if the estimate was not found or already deleted." }, { "slug": "REPAIRSHOPR_DELETE_ESTIMATE_LINE_ITEM", "name": "Delete Estimate Line Item", "description": "Tool to delete a line item from an estimate in RepairShopr. Use when you need to remove a specific product or service entry from an estimate. Required permission: Estimates - Edit. The API returns the updated estimate object with recalculated totals after deletion." }, { "slug": "REPAIRSHOPR_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete a specific invoice by ID. Use when you need to remove an invoice permanently after confirming it's no longer needed. Ensure no dependent records require it before running." }, { "slug": "REPAIRSHOPR_DELETE_INVOICE_LINE_ITEM", "name": "Delete Invoice Line Item", "description": "Tool to delete a specific line item from an invoice by invoice ID and line item ID. Use when you need to remove an individual line item from an existing invoice." }, { "slug": "REPAIRSHOPR_DELETE_PHONE", "name": "Delete Phone", "description": "Tool to delete a specific phone by ID for a given customer. Use when you need to remove a phone number record permanently. Requires Customers - Edit permission." }, { "slug": "REPAIRSHOPR_DELETE_PORTAL_USER", "name": "Delete Portal User", "description": "Tool to permanently delete a portal user by ID. Use when removing portal user access. Requires Global Admin permission to execute successfully." }, { "slug": "REPAIRSHOPR_DELETE_RMM_ALERT", "name": "Delete RMM Alert", "description": "Tool to delete/clear an RMM alert by its ID. Use when an RMM alert needs to be cleared or removed. Requires 'RMM Alerts - Delete' permission. Single-customer users can only delete their own alerts." }, { "slug": "REPAIRSHOPR_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Tool to delete a specific schedule by its ID. Use when a recurring invoice schedule needs to be permanently removed. Required permission: Recurring Invoices - Delete." }, { "slug": "REPAIRSHOPR_DELETE_TICKET", "name": "Delete Ticket", "description": "Tool to delete a specific ticket by its ID. Use when a ticket needs to be permanently removed. Requires 'Tickets - Delete' permission. Single-Customer Users can only delete their own tickets." }, { "slug": "REPAIRSHOPR_DELETE_TICKET_TIMER", "name": "Delete Ticket Timer", "description": "Tool to delete a specific ticket timer entry by its ID. Use when a timer entry needs to be removed from a ticket. Required permission: Ticket Timers - Overview." }, { "slug": "REPAIRSHOPR_DELETE_WIKI_PAGE", "name": "Delete Wiki Page", "description": "Tool to delete a Wiki Page by its ID. Use when a wiki page needs to be permanently removed. Required permission: Documentation - Delete." }, { "slug": "REPAIRSHOPR_EMAIL_ESTIMATE", "name": "Email Estimate", "description": "Tool to send an estimate to a customer via email. Use when you need to email an existing estimate to the associated customer." }, { "slug": "REPAIRSHOPR_EMAIL_INVOICE", "name": "Email Invoice", "description": "Tool to send an invoice to a customer via email. Use when you need to email an existing invoice to the associated customer. Requires the invoice ID." }, { "slug": "REPAIRSHOPR_GET_APPOINTMENT", "name": "Get Appointment", "description": "Tool to retrieve details of a specific appointment by its ID. Use when you need exact details of an appointment by ID." }, { "slug": "REPAIRSHOPR_GET_APPOINTMENTS", "name": "Get Appointments", "description": "Retrieves a list of appointments from RepairShopr. Supports filtering by date range and user assignment, with pagination for large result sets. Each appointment includes full details such as summary, description, start/end times, location, and associated customer information when available. Returns up to 25 appointments per page." }, { "slug": "REPAIRSHOPR_GET_APPOINTMENT_TYPE", "name": "Get Appointment Type", "description": "Tool to retrieve details of a specific appointment type by ID. Use when you need to fetch appointment type configuration including name, location settings, and email instructions. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_GET_ASSET", "name": "Get Asset", "description": "Tool to retrieve details of a specific asset by its ID. Use when you need to confirm asset details after obtaining its ID. Requires Assets - View Details permission." }, { "slug": "REPAIRSHOPR_GET_ASSETS", "name": "Get Assets", "description": "Tool to retrieve a paginated list of assets. Use when you need to list or search assets by SNMP status, customer, asset type, or query after authenticating. Returns 25 items per page." }, { "slug": "REPAIRSHOPR_GET_CALLER_ID", "name": "Get Caller ID", "description": "Tool to retrieve caller identification information based on a phone number. Use when you need to identify a caller by their phone number and check associated ticket status." }, { "slug": "REPAIRSHOPR_GET_CANNED_RESPONSE_SETTING", "name": "Get Canned Response Settings", "description": "Tool to retrieve settings for Canned Responses. Use when you need to get available categories and subjects for canned responses. Requires 'Ticket Canned Responses - Manage' permission. Single-Customer Users can only access their own canned responses." }, { "slug": "REPAIRSHOPR_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a specific contact by ID. Use when you need to fetch detailed information about a single contact. Requires 'Customers - View Detail' permission." }, { "slug": "REPAIRSHOPR_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a paginated list of contacts. Use when you need to fetch contacts optionally filtered by customer. Returns up to 50 contacts per page." }, { "slug": "REPAIRSHOPR_GET_CONTRACT", "name": "Get Contract", "description": "Tool to retrieve details of a specific contract by ID. Use when you need contract information including terms, dates, and status. Requires Contracts - Edit permission." }, { "slug": "REPAIRSHOPR_GET_CUSTOMER", "name": "Get Customer", "description": "Tool to retrieve details of a specific customer by ID. Use after confirming the customer exists. Example: \"Get customer details for ID 123\"." }, { "slug": "REPAIRSHOPR_GET_CUSTOMER_PAYMENT_PROFILES", "name": "Get Customer Payment Profiles", "description": "Tool to retrieve a paginated list of payment profiles for a specific customer. Use when you need to view saved payment methods for a customer." }, { "slug": "REPAIRSHOPR_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to retrieve a list of customers. Use when you need to search or filter customers with pagination. Returns up to 25 results per page." }, { "slug": "REPAIRSHOPR_GET_CUSTOMERS_AUTOCOMPLETE", "name": "Get Customers Autocomplete", "description": "Tool to retrieve a list of customers for autocomplete query. Use when you need to search for customers to populate autocomplete suggestions or dropdown menus. Returns customers matching the search query." }, { "slug": "REPAIRSHOPR_GET_EMPLOYEE_TIME_CLOCK", "name": "Get Employee Time Clock", "description": "Tool to retrieve the last time clock entry for a specific user. Use when needing the most recent clock-in/out. Example: \"Get the latest time clock entry for user 5\"." }, { "slug": "REPAIRSHOPR_GET_ESTIMATE", "name": "Get Estimate", "description": "Tool to retrieve details of a specific estimate by ID. Use when you need exact details of an estimate by ID." }, { "slug": "REPAIRSHOPR_GET_ESTIMATES", "name": "Get Estimates", "description": "Retrieves a paginated list of estimates from RepairShopr. Returns estimate details including ID, number, customer information, status, amounts (subtotal, tax, total), and timestamps. Use this action to: - List all estimates in the system - Filter estimates by customer_id - Paginate through large result sets using page and per_page parameters The response includes pagination metadata showing total pages and current page number." }, { "slug": "REPAIRSHOPR_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve details of a specific invoice by ID. Use after confirming the invoice exists. Example: \"Get invoice details for ID 456\"." }, { "slug": "REPAIRSHOPR_GET_INVOICES", "name": "Get Invoices", "description": "Tool to retrieve a paginated list of invoices. Use when you need to list invoices, optionally filtered by payment status, ticket association, or update date. Returns up to 25 invoices per page." }, { "slug": "REPAIRSHOPR_GET_INVOICE_TICKET", "name": "Get Invoice Ticket", "description": "Tool to retrieve the associated ticket for a specific invoice. Use when you need ticket details linked to an invoice. Requires \"Invoices - View Details\" and \"Tickets - View Details\" permissions." }, { "slug": "REPAIRSHOPR_GET_LATEST_CUSTOMER", "name": "Get Latest Customer", "description": "Tool to retrieve the most recently created customer. Use when you need to access the latest customer record without knowing their ID. Requires Customers - Edit permission." }, { "slug": "REPAIRSHOPR_GET_LEAD", "name": "Get Lead", "description": "Tool to retrieve details of a specific lead by its ID. Use when you need to inspect a single lead after obtaining its ID. Example: \"Get lead details for ID 123\"." }, { "slug": "REPAIRSHOPR_GET_LEADS", "name": "Get Leads", "description": "Tool to retrieve a paginated list of leads. Use when you need to browse or filter potential customers. Returns up to 25 leads per page." }, { "slug": "REPAIRSHOPR_GET_ME", "name": "Get Current User", "description": "Tool to retrieve information about the currently authenticated user. Use when you need to verify authentication, get the current user's details, or check their permissions across different modules." }, { "slug": "REPAIRSHOPR_GET_PAYMENT", "name": "Get Payment", "description": "Tool to retrieve details of a specific payment by ID. Use after obtaining the payment ID. Example: \"Get payment details for ID 123\"." }, { "slug": "REPAIRSHOPR_GET_PAYMENTS", "name": "Get Payments", "description": "Tool to retrieve a paginated list of payments. Use when you need to view or search payment records, with optional filtering by query or pagination." }, { "slug": "REPAIRSHOPR_GET_PRODUCT", "name": "Get Product", "description": "Retrieves comprehensive details for a specific product by its unique ID. Use this action when you need detailed product information including pricing, inventory levels, category, and other metadata. Requires a valid product ID (obtain via Get Products action if needed). Returns: Complete product details including retail/cost/wholesale pricing, current stock quantity, category information, tax status, and various product attributes. Example use cases: - \"Get details for product ID 12345\" - \"What's the price and stock level for product 98765?\" - \"Retrieve full information about product 54321\"" }, { "slug": "REPAIRSHOPR_GET_PRODUCT_BY_BARCODE", "name": "Get Product by Barcode", "description": "Retrieves product details by searching for a specific barcode (UPC code). Use this action when you have a product's barcode and need to look up its full details including pricing, inventory, and metadata." }, { "slug": "REPAIRSHOPR_GET_PRODUCTS", "name": "Get Products", "description": "Retrieve a list of products from RepairShopr with optional filtering, searching, and sorting. All filters are optional - call without parameters to get all products. Results are paginated; use the 'meta' field in the response to determine if there are more pages." }, { "slug": "REPAIRSHOPR_GET_PRODUCTS_CATEGORIES", "name": "Get Product Categories", "description": "Retrieve all product categories from RepairShopr. Returns a list of categories with their IDs, names, descriptions, and hierarchical relationships. Use this to discover available categories for organizing products, filtering product queries, or creating new products with proper categorization." }, { "slug": "REPAIRSHOPR_GET_PRODUCT_SERIALS", "name": "Get Product Serials", "description": "Tool to retrieve all serial numbers for a specific product. Use when you need to list serials by product ID after confirming the product exists." }, { "slug": "REPAIRSHOPR_GET_PURCHASE_ORDER", "name": "Get Purchase Order", "description": "Tool to retrieve details of a specific purchase order by ID. Use when you need to view purchase order details. Requires Purchase Orders - View Details permission." }, { "slug": "REPAIRSHOPR_GET_RMM_ALERT", "name": "Get RMM Alert", "description": "Tool to retrieve details of an RMM Alert by its ID. Use when you need to check the status or details of a specific RMM alert. Requires 'RMM Alerts - List' permission. Single-customer users can only access their own RMM alerts." }, { "slug": "REPAIRSHOPR_GET_SCHEDULE", "name": "Get Schedule", "description": "Tool to retrieve a specific schedule by ID. Use when you need to fetch detailed information about a recurring invoice schedule. Requires Recurring Invoices - List permission." }, { "slug": "REPAIRSHOPR_GET_SETTINGS", "name": "Get Settings", "description": "Tool to retrieve account settings for the RepairShopr instance. Use when you need to access system configuration, preferences, or account-level settings." }, { "slug": "REPAIRSHOPR_GET_SETTINGS_PRINTING", "name": "Get Printing Settings", "description": "Tool to retrieve printing settings configuration. Use when you need to get the messaging channel ID or registered printers for the account." }, { "slug": "REPAIRSHOPR_GET_SETTINGS_TABS", "name": "Get Settings Tabs", "description": "Tool to retrieve the tabs settings configuration. Use when you need to determine which tabs (features) are enabled in the RepairShopr system. Returns boolean flags for each available tab, indicating whether it's enabled or disabled." }, { "slug": "REPAIRSHOPR_GET_TICKET", "name": "Get Ticket", "description": "Tool to retrieve details of a specific ticket by its ID. Use when you need full ticket information after obtaining its ID." }, { "slug": "REPAIRSHOPR_GET_TICKETS_SETTINGS", "name": "Get Tickets Settings", "description": "Tool to retrieve tickets settings and configuration. Use when you need to obtain available ticket statuses, appointment types, users for assignment, worksheet templates, or other ticket-related configuration metadata." }, { "slug": "REPAIRSHOPR_GET_USER", "name": "Get User", "description": "Retrieve detailed information about a specific user (staff/technician) by their unique ID. Returns user details including full name, email, group membership, admin status, and timestamps. Use this when you need to look up a specific user's information or verify a user exists in the system. Example: \"Get details for user ID 223535\"" }, { "slug": "REPAIRSHOPR_GET_USER_DEVICE", "name": "Get User Device", "description": "Tool to retrieve details of a specific user device by its UUID. Use when you need to fetch information about a user's device." }, { "slug": "REPAIRSHOPR_GET_USERS", "name": "Get Users", "description": "Retrieves a list of all users (staff members and technicians) in the RepairShopr system. Use this action when you need to: - List all available staff members and technicians - Map user IDs to names for assignment or display purposes - Get a complete roster of team members This endpoint requires no parameters and returns all active users in the system." }, { "slug": "REPAIRSHOPR_GET_VENDOR", "name": "Get Vendor", "description": "Tool to retrieve details of a specific vendor by ID. Use after confirming the vendor exists. Required permission: Vendors - View Details." }, { "slug": "REPAIRSHOPR_GET_WIKI_PAGE", "name": "Get Wiki Page", "description": "Tool to retrieve a Wiki Page by its ID. Use when you need to view documentation or knowledge base content. Required permission: Documentation - Allow Usage." }, { "slug": "REPAIRSHOPR_LIST_APPOINTMENT_TYPES", "name": "List Appointment Types", "description": "Tool to retrieve a paginated list of all appointment types. Use when you need to view available appointment type configurations. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_LIST_CANNED_RESPONSES", "name": "List Canned Responses", "description": "Tool to retrieve a list of Canned Responses with optional search query. Use when you need to find pre-formatted response templates for tickets. Requires 'Ticket Canned Responses - Manage' permission." }, { "slug": "REPAIRSHOPR_LIST_CONTRACTS", "name": "List Contracts", "description": "Tool to retrieve a paginated list of contracts. Use when you need to list contracts with details including terms, dates, and status. Returns up to 50 contracts per page. Requires Contracts - List/Search permission." }, { "slug": "REPAIRSHOPR_LIST_ITEMS", "name": "List Items", "description": "Tool to retrieve a paginated list of Part Orders. Use when you need to list part orders, optionally filtered by completion status or search query. Returns up to 50 items per page. Requires Parts Orders - List/Search permission." }, { "slug": "REPAIRSHOPR_LIST_LINE_ITEMS", "name": "List Line Items", "description": "Tool to retrieve a paginated list of Line Items from RepairShopr. Use when you need to list line items across invoices or estimates, with optional filtering by specific invoice/estimate ID or to get all line items associated with any invoice or estimate. Required permission: Global Admin." }, { "slug": "REPAIRSHOPR_LIST_NEW_TICKET_FORMS", "name": "List New Ticket Forms", "description": "Tool to retrieve a paginated list of Ticket Forms. Use when you need to view available ticket form configurations for ticket workflows. Requires permission: Ticket Workflows - Manage." }, { "slug": "REPAIRSHOPR_LIST_PAYMENT_METHODS", "name": "List Payment Methods", "description": "Tool to retrieve a paginated list of payment methods. Use when you need to view available payment methods in the system. All users except Single Customer Users may use this action." }, { "slug": "REPAIRSHOPR_LIST_PHONES", "name": "List Phones", "description": "Tool to retrieve a paginated list of phone numbers for a specific customer. Use when you need to view all phone contacts for a customer. Requires Customers - View Detail permission. Single-Customer Users can only access their own records." }, { "slug": "REPAIRSHOPR_LIST_PORTAL_USERS", "name": "List Portal Users", "description": "Tool to retrieve a paginated list of Portal Users. Use when you need to search or filter portal users by customer or email. Returns up to 100 results per page. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_LIST_PURCHASE_ORDERS", "name": "List Purchase Orders", "description": "Tool to retrieve a paginated list of purchase orders. Use when you need to list all purchase orders in the system. Returns up to 20 purchase orders per page. Requires Purchase Orders - List/Search permission." }, { "slug": "REPAIRSHOPR_LIST_RMM_ALERTS", "name": "List RMM Alerts", "description": "Tool to retrieve a paginated list of RMM Alerts. Use when you need to browse or filter RMM alerts by status. Returns up to 25 alerts per page. Requires 'RMM Alerts - List' permission. Single-customer users can only access their own RMM alerts." }, { "slug": "REPAIRSHOPR_LIST_SCHEDULES", "name": "List Schedules", "description": "Tool to retrieve a paginated list of invoice schedules. Use when you need to list recurring invoice schedules, optionally filtered by customer. Returns up to 25 schedules per page. Requires Recurring Invoices - List permission." }, { "slug": "REPAIRSHOPR_LIST_TICKET_COMMENTS", "name": "List Ticket Comments", "description": "Tool to retrieve comments for a specific ticket by its ID. Use when you need to view all comments or filter comments by date. Requires Tickets - View Details or Tickets - View 'Their Ticket' Details permission. Single-Customer Users can only access comments for their own tickets." }, { "slug": "REPAIRSHOPR_LIST_TICKETS", "name": "List Tickets", "description": "Tool to retrieve a paginated list of tickets. Use when you need to list or search tickets with optional filtering by customer, status, date ranges, or assigned user. Returns up to 25 tickets per page. Single-customer users can only access their own tickets." }, { "slug": "REPAIRSHOPR_LIST_TICKET_TIMERS", "name": "List Ticket Timers", "description": "Tool to retrieve a paginated list of Ticket Timers from RepairShopr. Use when you need to list timer entries, optionally filtered by creation date range. Returns up to 25 timer entries per page. Requires 'Ticket Timers - Overview' permission." }, { "slug": "REPAIRSHOPR_LIST_TIMELOGS", "name": "List Timelogs", "description": "Tool to retrieve a paginated list of timelogs. Returns timelogs for any/all users if you have 'Timelogs - Manage' permission, otherwise results are scoped to the current user. Use when you need to view time tracking records." }, { "slug": "REPAIRSHOPR_LIST_VENDORS", "name": "List Vendors", "description": "Tool to retrieve a paginated list of vendors. Use when you need to browse or search through vendors. Returns up to 100 results per page. Required permission: Vendors - List." }, { "slug": "REPAIRSHOPR_LIST_WIKI_PAGES", "name": "List Wiki Pages", "description": "Tool to retrieve a paginated list of Wiki Pages. Use when you need to browse or search documentation. Returns 100 results per page. Required permission: Documentation - Allow Usage." }, { "slug": "REPAIRSHOPR_LIST_WORKSHEET_RESULTS", "name": "List Worksheet Results", "description": "Tool to retrieve a paginated list of Worksheet Results for a specific ticket. Use when you need to view worksheets/checklists completed on a ticket. Required permissions: \"Tickets - View Details\" or \"Tickets - View 'Their Ticket' Details (assigned to them)\". Single-Customer Users can only access their own tickets." }, { "slug": "REPAIRSHOPR_MUTE_RMM_ALERT", "name": "Mute RMM Alert", "description": "Tool to mute an RMM Alert by ID for a specified duration. Use when you need to temporarily silence an alert. Requires RMM Alerts - Clear/Manage permission. Single-Customer Users can only access their own RMM Alerts." }, { "slug": "REPAIRSHOPR_POST_APPOINTMENT", "name": "Create Appointment", "description": "Tool to create a new appointment. Use after gathering summary and date range." }, { "slug": "REPAIRSHOPR_POST_ASSET", "name": "Create Asset", "description": "Tool to create a new asset. Use when you need to register a device under a customer with either an existing or new asset type." }, { "slug": "REPAIRSHOPR_POST_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer. Use when you need to add a customer record with contact details." }, { "slug": "REPAIRSHOPR_POST_ESTIMATE", "name": "Create Estimate", "description": "Tool to create a new estimate. Use when you have final customer details and line items ready to generate an estimate in RepairShopr." }, { "slug": "REPAIRSHOPR_POST_INVOICE", "name": "Create Invoice", "description": "Create a new invoice for a customer in RepairShopr. Requires a valid customer_id, invoice date, and due date. Optionally include line items with SKU/item codes, quantities, prices, and tax settings. Supports custom invoice numbers, purchase orders, notes, and hardware costs. Returns the created invoice with auto-generated invoice number if not provided." }, { "slug": "REPAIRSHOPR_POST_LEAD", "name": "Create Lead", "description": "Tool to create a new lead. Use when you need to add a potential customer to the system." }, { "slug": "REPAIRSHOPR_POST_PAYMENT", "name": "Create Payment", "description": "Create a payment record in RepairShopr. Records a payment against an invoice for a customer. Requires customer_id and amount_cents. Either invoice_id or invoice_number must be provided to link the payment to an invoice." }, { "slug": "REPAIRSHOPR_POST_PRODUCT", "name": "Create Product", "description": "Tool to create a new product in inventory. Use when you need to add an item with price and details to your RepairShopr catalog." }, { "slug": "REPAIRSHOPR_POST_PRODUCT_PHOTO", "name": "Add Product Photo", "description": "Tool to add photo(s) to a specific product. Use when you need to attach one or more images to a product after confirming the product ID." }, { "slug": "REPAIRSHOPR_POST_PURCHASE_ORDER", "name": "Create Purchase Order", "description": "Tool to create a new purchase order for a vendor. Use when you need to order inventory or supplies from a vendor in RepairShopr. Requires Purchase Orders - Edit permission." }, { "slug": "REPAIRSHOPR_POST_USER_DEVICE", "name": "Create User Device", "description": "Tool to create a new user device. Use when you need to register a device for a user in RepairShopr." }, { "slug": "REPAIRSHOPR_PRINT_ESTIMATE", "name": "Print Estimate", "description": "Tool to queue a print job for an estimate. Use when you need to send an existing estimate to the printer queue." }, { "slug": "REPAIRSHOPR_PRINT_INVOICE", "name": "Print Invoice", "description": "Tool to queue a print job for an invoice in RepairShopr. Use when you need to send an invoice to the print queue. Requires Invoices - View Details permission." }, { "slug": "REPAIRSHOPR_PRINT_TICKET", "name": "Print Ticket", "description": "Tool to print a ticket by its ID. Use when you need to generate a printable version of a ticket. Requires 'Tickets - View Details' permission. Single-Customer Users can only print their own tickets." }, { "slug": "REPAIRSHOPR_PROCESS_TICKET_FORM", "name": "Process Ticket Form", "description": "Tool to process a ticket form submission and create a new ticket in RepairShopr. Use when you have a ticket form ID and need to submit customer details, ticket information, and optionally schedule an appointment. Required permission: Tickets - Create." }, { "slug": "REPAIRSHOPR_RECEIVE_PURCHASE_ORDER", "name": "Receive Purchase Order", "description": "Tool to mark a purchase order as received in RepairShopr. Use when inventory has been delivered and needs to be received into stock. Can receive all items or a specific line item. Note: Products marked as serialized will require serial numbers to be provided. Requires Purchase Orders - Edit permission." }, { "slug": "REPAIRSHOPR_REMOVE_TICKET_LINE_ITEM", "name": "Remove Ticket Line Item", "description": "Tool to delete a line item from an existing ticket in RepairShopr. Use when you need to remove a product, service, or charge from a ticket. Requires Tickets - Edit permission. Single-customer users can only access their own tickets." }, { "slug": "REPAIRSHOPR_SEARCH_ALL", "name": "Search All", "description": "Tool to search across all RepairShopr entities including customers, contacts, assets, leads, invoices, estimates, tickets, products, purchase orders, vendors, reports, and wiki pages. Use when you need to find entities without knowing the specific type. Note: Requires appropriate permissions for each entity type returned in results (e.g., 'Customers - List/Search' for customer results, 'Leads - List/Search' for lead results)." }, { "slug": "REPAIRSHOPR_UPDATE_APPOINTMENT", "name": "Update Appointment", "description": "Tool to update an existing appointment by ID. Use when you need to modify appointment details like time, description, or attendees." }, { "slug": "REPAIRSHOPR_UPDATE_APPOINTMENT_TYPE", "name": "Update Appointment Type", "description": "Tool to update an existing appointment type by ID. Use when modifying appointment type configuration including name, location settings, and email instructions. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_UPDATE_ASSET", "name": "Update Asset", "description": "Tool to update an existing asset by its ID. Use when you need to modify asset details such as name, serial number, type, or custom properties. Requires Assets - Edit permission." }, { "slug": "REPAIRSHOPR_UPDATE_CANNED_RESPONSE", "name": "Update Canned Response", "description": "Tool to update an existing Canned Response by ID. Use when you need to modify the title, body, subject, or category of a pre-formatted response template. Required permission: Ticket Canned Responses - Manage." }, { "slug": "REPAIRSHOPR_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact. Use when you need to modify contact information for an existing contact record. Requires 'Customers - Edit' permission. Single-Customer Users can only access their own contacts." }, { "slug": "REPAIRSHOPR_UPDATE_CONTRACT", "name": "Update Contract", "description": "Tool to update an existing contract by ID. Use when you need to modify contract terms, status, or other details. Requires Contracts - Edit permission." }, { "slug": "REPAIRSHOPR_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer by ID. Use when you need to modify customer details such as contact information, address, or preferences. Single-customer users can only access their own customer record." }, { "slug": "REPAIRSHOPR_UPDATE_ESTIMATE", "name": "Update Estimate", "description": "Tool to update an existing estimate by ID. Use when you need to modify estimate details such as status, notes, customer, or other fields. Requires Estimates - Edit permission." }, { "slug": "REPAIRSHOPR_UPDATE_ESTIMATE_LINE_ITEM", "name": "Update Estimate Line Item", "description": "Tool to update an existing line item on an estimate in RepairShopr. Use when you need to modify products or services on an estimate. Required permission: Estimates - Edit." }, { "slug": "REPAIRSHOPR_UPDATE_INVOICE", "name": "Update Invoice", "description": "Tool to update an existing invoice by ID. All provided parameters overwrite existing values. Use when you need to modify invoice details such as notes, dates, amounts, or customer information." }, { "slug": "REPAIRSHOPR_UPDATE_INVOICE_LINE_ITEM", "name": "Update Invoice Line Item", "description": "Tool to update an existing line item on an invoice in RepairShopr. Use when modifying the properties of a line item that already exists on an invoice. All parameters overwrite existing values." }, { "slug": "REPAIRSHOPR_UPDATE_LEAD", "name": "Update Lead", "description": "Tool to update an existing lead by ID. Use when you need to modify lead details such as status, contact information, or notes." }, { "slug": "REPAIRSHOPR_UPDATE_PHONE", "name": "Update Phone", "description": "Tool to update an existing phone number by ID. Use when you need to modify phone details for a customer's existing phone record. Requires Customers - Edit permission. Single-Customer Users can only access their own records." }, { "slug": "REPAIRSHOPR_UPDATE_PORTAL_USER", "name": "Update Portal User", "description": "Tool to update an existing Portal User by ID. Use when you need to modify portal user details such as email, password, or associated customer/contact. Requires Global Admin permission." }, { "slug": "REPAIRSHOPR_UPDATE_PRODUCT", "name": "Update Product", "description": "Tool to update an existing product by ID. Use when you need to modify product details such as name, description, pricing, inventory levels, or other attributes." }, { "slug": "REPAIRSHOPR_UPDATE_PRODUCT_SERIAL", "name": "Update Product Serial", "description": "Tool to update an existing product serial by ID. Use when you need to modify serial number details, pricing, or condition for a product. Required permission: Products - Edit." }, { "slug": "REPAIRSHOPR_UPDATE_SCHEDULE", "name": "Update Invoice Schedule", "description": "Tool to update an existing invoice schedule by ID. Use when modifying recurring invoice settings such as frequency, name, or payment options. Requires Recurring Invoices - Edit permission." }, { "slug": "REPAIRSHOPR_UPDATE_SCHEDULE_LINE_ITEM", "name": "Update Schedule Line Item", "description": "Tool to update a line item in an invoice schedule. Use when modifying existing recurring charges or one-time items in a schedule. Required permission: Recurring Invoices - Edit." }, { "slug": "REPAIRSHOPR_UPDATE_TICKET", "name": "Update Ticket", "description": "Tool to update an existing ticket by ID in RepairShopr. Use when you need to modify ticket details such as status, priority, subject, or other fields. Requires 'Tickets - Edit' permission. Single-Customer Users can only update their own tickets." }, { "slug": "REPAIRSHOPR_UPDATE_TICKET_LINE_ITEM", "name": "Update Ticket Line Item", "description": "Tool to update an existing line item on a ticket in RepairShopr. Use when you need to modify products, services, or charges already added to a ticket. Requires Tickets - Edit permission. Single-customer users can only access their own tickets." }, { "slug": "REPAIRSHOPR_UPDATE_TICKET_TIMER", "name": "Update Ticket Timer", "description": "Tool to update an existing ticket timer entry in RepairShopr. Use when you need to modify time logged on a ticket. Requires Ticket Timers - Overview permission." }, { "slug": "REPAIRSHOPR_UPDATE_TIMELOG", "name": "Update Timelog", "description": "Tool to update an existing timelog entry in RepairShopr. Use when you need to modify clock-in/out times, add or update notes, or record lunch breaks. Users with 'Timelogs - Manage' permission may update any user's timelogs, otherwise updates are scoped to the current user's timelogs only." }, { "slug": "REPAIRSHOPR_UPDATE_USER_DEVICE", "name": "Update User Device", "description": "Tool to update an existing user device by UUID. Use when you need to modify device information such as the GCM registration token." }, { "slug": "REPAIRSHOPR_UPDATE_VENDOR", "name": "Update Vendor", "description": "Tool to update an existing vendor by ID. Use when you need to modify vendor details such as contact information, address, or notes. Required permission: Vendors - Edit." }, { "slug": "REPAIRSHOPR_UPDATE_WIKI_PAGE", "name": "Update Wiki Page", "description": "Tool to update an existing Wiki Page by ID. Use when you need to modify documentation or knowledge base content. Required permission: Documentation - Edit." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "repairshopr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account Subdomain", "type": "string", "description": "The subdomain of the user's RepairShopr account, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "RepairShopr API Key", "type": "string", "description": "The API key used for authenticating requests to the RepairShopr API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "replicate", "name": "Replicate", "logo": "https://logos.composio.dev/api/replicate", "description": "Replicate allows users to run AI models via a cloud API without managing infrastructure.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REPLICATE_ACCOUNT_GET", "name": "Get Account Information", "description": "Tool to get authenticated account information. Use when you need to retrieve details about the account associated with the API token." }, { "slug": "REPLICATE_CANCEL_PREDICTION", "name": "Cancel Prediction", "description": "Tool to cancel a prediction that is still running. Use when you need to stop an in-progress prediction to free up resources or halt execution." }, { "slug": "REPLICATE_COLLECTIONS_GET", "name": "Get model collection", "description": "Tool to get a specific collection of models by its slug. Use when you need detailed information about a collection and its models." }, { "slug": "REPLICATE_COLLECTIONS_LIST", "name": "List model collections", "description": "Tool to list all collections of models. Use when you need to retrieve available model collections. Collections are curated groupings of related models. Response includes only collection metadata (name, slug, description), not individual models within each collection; use REPLICATE_MODELS_GET for per-model details. Response may include a non-null `next` field indicating additional pages; follow it to enumerate all collections." }, { "slug": "REPLICATE_CREATE_MODEL", "name": "Create Model", "description": "Tool to create a new Replicate model with specified owner, name, visibility, and hardware. Use when you need to create a destination model before launching LoRA/fine-tune training." }, { "slug": "REPLICATE_CREATE_PREDICTION", "name": "Create Prediction", "description": "Tool to create a prediction for a Replicate Deployment. IMPORTANT: This action ONLY works with Replicate Deployments (persistent instances you create and manage), NOT public models. Deployments are created via REPLICATE_DEPLOYMENTS_CREATE. To run public models (e.g., 'meta/llama-2-70b-chat', 'stability-ai/sdxl'), use REPLICATE_MODELS_PREDICTIONS_CREATE instead. Use 'wait_for' to wait until the prediction completes." }, { "slug": "REPLICATE_DEPLOYMENTS_CREATE", "name": "Create Deployment", "description": "Tool to create a new deployment with specified model, version, hardware, and scaling parameters. Use when you need to deploy a model for production use with auto-scaling." }, { "slug": "REPLICATE_DEPLOYMENTS_DELETE", "name": "Delete Deployment", "description": "Tool to delete a deployment from your account. Use when you need to remove a deployment. Deployments must be offline and unused for at least 15 minutes before deletion." }, { "slug": "REPLICATE_DEPLOYMENTS_GET", "name": "Get Deployment Details", "description": "Tool to get deployment details by owner and name. Use when you need information about a specific deployment including its release configuration and hardware settings." }, { "slug": "REPLICATE_DEPLOYMENTS_LIST", "name": "List deployments", "description": "Tool to list all deployments associated with the account. Use when you need to retrieve deployment configurations and their latest releases." }, { "slug": "REPLICATE_FILES_CREATE", "name": "Create File", "description": "Tool to create or upload a file to Replicate. Use when you need to upload file content with optional metadata." }, { "slug": "REPLICATE_FILES_DELETE", "name": "Delete File", "description": "Tool to delete a file by its ID. Use when you need to remove a file from storage. Returns 204 No Content on success." }, { "slug": "REPLICATE_FILES_GET", "name": "Get File Details", "description": "Tool to get details of a file by its ID. Use when you need to inspect uploaded file information before further operations. Returned URLs may be short-lived; download or persist needed files promptly after retrieval." }, { "slug": "REPLICATE_FILES_LIST", "name": "List Files", "description": "Tool to retrieve a paginated list of uploaded files. Use to view all files created by the authenticated user or organization. Files are sorted with most recent first. Pagination is cursor-based: follow the next cursor until empty to retrieve all files. Limit requests to 1–2/second to avoid 429 Too Many Requests errors. Use to validate current file_ids before passing to prediction tools, as stale file_ids cause runtime errors." }, { "slug": "REPLICATE_GET_PREDICTION", "name": "Get Prediction", "description": "Tool to get the status and output of a prediction by its ID. Use when you need to check on a running prediction or retrieve the results of a completed prediction." }, { "slug": "REPLICATE_HARDWARE_LIST", "name": "List Available Hardware", "description": "Tool to list available hardware SKUs for models and deployments. Use when you need to see what hardware options are available on the Replicate platform." }, { "slug": "REPLICATE_MODELS_EXAMPLES_LIST", "name": "List model examples", "description": "Tool to list example predictions for a specific model. Use when you want to retrieve author-provided illustrative examples after identifying the model. Returned examples are minimal working payloads; cross-reference with REPLICATE_MODELS_README_GET before calling REPLICATE_CREATE_PREDICTION to satisfy strict input validation." }, { "slug": "REPLICATE_MODELS_GET", "name": "Get Model Details", "description": "Tool to get details of a specific model by owner and name. Consult the returned input schema before constructing any prediction request — each model defines its own required/optional fields (e.g., `prompt`, `aspect_ratio`, `version`); missing or unknown keys cause validation errors. Model schemas and available versions may change over time; recheck before production use." }, { "slug": "REPLICATE_MODELS_LIST", "name": "List Public Models", "description": "Tool to list public models with pagination and sorting. Use when you need to browse available models or find models sorted by creation date." }, { "slug": "REPLICATE_MODELS_PREDICTIONS_CREATE", "name": "Create Model Prediction", "description": "Tool to create a prediction using an official Replicate model. Use when you need to run inference with a specific model using its owner and name. Supports synchronous waiting (up to 60 seconds) and webhooks for async notifications." }, { "slug": "REPLICATE_MODELS_README_GET", "name": "Get Model README", "description": "Tool to get the README content for a model in Markdown format. Consult alongside REPLICATE_MODELS_EXAMPLES_LIST before calling REPLICATE_CREATE_PREDICTION — Replicate enforces strict JSON schemas on model inputs and returns 422 errors for incorrect keys or types. Use after retrieving model details when you want to view its documentation." }, { "slug": "REPLICATE_MODELS_VERSIONS_GET", "name": "Get Model Version", "description": "Tool to get a specific version of a model. Use when you need details about a particular model version including its schema and metadata." }, { "slug": "REPLICATE_MODELS_VERSIONS_LIST", "name": "List Model Versions", "description": "Tool to list all versions of a specific model. Use when you need to see all available versions of a model, sorted by newest first." }, { "slug": "REPLICATE_PREDICTIONS_CREATE", "name": "Create Prediction", "description": "Tool to create a prediction to run a model by version ID. Use when you have a specific model version identifier and need to run inference with provided inputs. Supports synchronous waiting and webhook notifications." }, { "slug": "REPLICATE_PREDICTIONS_LIST", "name": "List All Predictions", "description": "Tool to list all predictions for the authenticated user or organization with pagination. Use when you need to retrieve prediction history or filter predictions by creation date." }, { "slug": "REPLICATE_SEARCH", "name": "Search Models and Collections", "description": "Tool to search for models, collections, and docs using text queries (beta). Use when you need to find relevant models or collections based on keywords or descriptions." }, { "slug": "REPLICATE_TRAININGS_CANCEL", "name": "Cancel Training", "description": "Tool to cancel an ongoing training operation in Replicate. Use when you need to stop a training job that is in progress." }, { "slug": "REPLICATE_TRAININGS_CREATE", "name": "Create Training Job", "description": "Tool to create a training job for a specific model version. Use when you need to fine-tune a model with custom training data. Supports webhook notifications for training status updates." }, { "slug": "REPLICATE_TRAININGS_LIST", "name": "List Training Jobs", "description": "Tool to list all training jobs for the authenticated user or organization with pagination. Use when you need to retrieve training history or check the status of training jobs." }, { "slug": "REPLICATE_UPDATE_MODELS", "name": "Update Model Metadata", "description": "Tool to update metadata for a model including description, URLs, and README. Use when you need to modify a model's visibility, documentation, or associated links." }, { "slug": "REPLICATE_WEBHOOKS_SECRET_GET", "name": "Get Webhook Signing Secret", "description": "Tool to get the signing secret for the default webhook. Use when you need to retrieve the secret key used to verify webhook authenticity." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "replicate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Replicate API Token", "type": "string", "description": "Your Replicate API token, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "reply", "name": "Reply", "logo": "https://logos.composio.dev/api/reply", "description": "Reply.io is a sales engagement platform that automates multichannel outreach, enabling users to create and manage email campaigns, track replies, and monitor performance directly within their platform.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REPLY_CREATE_LIST", "name": "Create Personal List", "description": "Tool to add a new personal list on the People page. Use when you need to organize contacts into a custom list." }, { "slug": "REPLY_DELETE_EMAIL_ACCOUNT", "name": "Delete Email Account", "description": "Tool to delete a specific email account. Use when you need to remove an existing email account identified by its ID." }, { "slug": "REPLY_DELETE_LIST_BY_ID", "name": "Delete List By ID", "description": "Tool to delete a list by its ID. Use when you need to remove a personal list you own." }, { "slug": "REPLY_DELETE_SEQUENCE", "name": "Delete Sequence", "description": "Tool to delete a sequence. Use after confirming the sequence exists to remove it permanently." }, { "slug": "REPLY_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user. Use after confirming the user exists to remove them permanently." }, { "slug": "REPLY_GENERATE_ULID", "name": "Generate ULID", "description": "Generate ULID" }, { "slug": "REPLY_GET_ALL_LISTS", "name": "Get All Lists", "description": "Tool to retrieve all available people lists. Use when you need to list all lists in your Reply account." }, { "slug": "REPLY_GET_BLACKLIST_ALL", "name": "Get full blacklist of domains and emails", "description": "Tool to retrieve the full list of blacklisted domains and emails. Use after confirming updates to the blacklist when you need a complete view." }, { "slug": "REPLY_GET_CAMPAIGN_SCHEDULES_ALL", "name": "Get all campaign schedules", "description": "Retrieves all campaign schedules from Reply.io, including the default schedule and any user-created schedules. Each schedule contains timezone settings, daily timing configurations (mainTimings), and follow-up timings. Use this to view available schedules before assigning one to a campaign or to audit existing schedule configurations." }, { "slug": "REPLY_GET_CAMPAIGNS_FOR_CONTACT", "name": "Get Campaigns For Contact", "description": "Tool to retrieve campaigns a contact belongs to by contact ID. Use when you need to list all sequences (campaigns) associated with a specific contact." }, { "slug": "REPLY_GET_CONTACTS_IN_LIST_BY_ID", "name": "Get Contacts in List by ID", "description": "Tool to retrieve contacts in a specific personal list. Use after obtaining the list ID when you need a paginated set of contacts for that list." }, { "slug": "REPLY_GET_LIST_BY_ID", "name": "Get List by ID", "description": "Tool to return a specific people list by its ID. Use after you know the list ID and need its details." }, { "slug": "REPLY_GET_TEMPLATES_LIST", "name": "Get templates list", "description": "Retrieves all email templates from Reply.io, including user-created, team-shared, organization-wide, and community templates. Use this to browse available templates before sending emails or creating campaigns. No parameters required - returns all accessible templates for the authenticated user." }, { "slug": "REPLY_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list all campaigns (sequences). Use when you need a paginated list of campaigns." }, { "slug": "REPLY_LIST_CONTACTS_BASIC", "name": "List Contacts Basic", "description": "Tool to list contacts. Use when verifying API access and gathering contact IDs." }, { "slug": "REPLY_LIST_EMAIL_ACCOUNTS", "name": "Reply.io List Email Accounts", "description": "Tool to list all email accounts. Use when you need to retrieve email accounts page by page." }, { "slug": "REPLY_MARK_CONTACT_AS_FINISHED", "name": "Mark Contact As Finished", "description": "Marks a contact (by email) or all contacts under a domain as finished in all Reply.io campaigns. Use this tool to stop outreach for contacts who have been successfully engaged or should no longer receive campaign messages. - When using 'email': The specific contact must exist and be enrolled in at least one campaign. - When using 'domain': Marks all contacts with that email domain as finished (succeeds even if no contacts match). Note: Provide exactly one of 'email' or 'domain', not both." }, { "slug": "REPLY_MARK_CONTACT_AS_REPLIED", "name": "Mark Contact as Replied", "description": "Tool to mark a contact as replied in all campaigns by email or domain. Use after confirming the contact has responded." }, { "slug": "REPLY_MOVE_CONTACTS_TO_LISTS", "name": "Move Contacts to Lists", "description": "Tool to move one or more contacts to specified lists. Use when reorganizing contacts across lists after verifying contact and list IDs." }, { "slug": "REPLY_REMOVE_DOMAIN_FROM_BLACKLIST", "name": "Remove Domain from Blacklist", "description": "Tool to remove the specified domain from the blacklist. Use when you need to allow sending to that domain again." }, { "slug": "REPLY_SEARCH_CONTACTS", "name": "Search Contacts by Email", "description": "Tool to search contacts by email. Use when you need to find existing contact IDs for update tests." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "replyio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Reply.io API Key", "type": "string", "description": "The API key used for authenticating requests to the Reply.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "reply_io", "name": "Reply.io", "logo": "https://logos.composio.dev/api/reply_io", "description": "Reply.io is an AI-powered sales engagement platform that automates and optimizes sales outreach across multiple channels, integrating with various business tools to enhance lead conversion rates and overall sales productivity.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 33, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REPLY_IO_ADD_CONTACT_TO_SEQUENCE", "name": "Add Contact to Sequence", "description": "Move an existing contact to a sequence in Reply.io. Use this action to enroll contacts in email sequences for automated outreach campaigns. This action allows you to specify where in the sequence to start, whether to remove the contact from their current sequence, and when to begin processing." }, { "slug": "REPLY_IO_ARCHIVE_SEQUENCE", "name": "Archive Sequence", "description": "Tool to archive a sequence. Use when you need to archive an existing sequence without permanently deleting it." }, { "slug": "REPLY_IO_CLEAR_CONTACT_STATUS", "name": "Clear Contact Status", "description": "Tool to clear statuses from contacts. Use when you need to remove specific or all clearable statuses from contacts." }, { "slug": "REPLY_IO_CONNECT_EXCHANGE_ACCOUNT", "name": "Connect Exchange Account via OAuth", "description": "Tool to initiate OAuth connection for an Exchange email account. Use when you need to connect an Exchange account to Reply.io via OAuth flow. Returns the Microsoft OAuth consent page URL where the user should be redirected." }, { "slug": "REPLY_IO_CONNECT_GMAIL_ACCOUNT", "name": "Connect Gmail Account", "description": "Tool to initiate Gmail account connection via OAuth. Returns the OAuth authorization URL where the user should be redirected to grant permissions." }, { "slug": "REPLY_IO_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in Reply.io. Use when adding contacts to your outreach database." }, { "slug": "REPLY_IO_CREATE_SEQUENCE_STEP", "name": "Create Sequence Step", "description": "Tool to add a new step to an existing sequence. Use when you need to build or modify sequence workflows with Email, Call, Task, SMS, WhatsApp, LinkedIn, Condition, or Zapier steps." }, { "slug": "REPLY_IO_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact. Use after confirming the contact exists to remove it permanently." }, { "slug": "REPLY_IO_DELETE_EMAIL_ACCOUNT", "name": "Delete Email Account", "description": "Tool to delete a specific email account. Use when you need to remove an existing email account identified by its ID." }, { "slug": "REPLY_IO_DELETE_SCHEDULE", "name": "Delete Schedule", "description": "Tool to delete a schedule. Use after confirming the schedule exists to remove it permanently." }, { "slug": "REPLY_IO_DELETE_SEQUENCE", "name": "Delete Sequence", "description": "Tool to delete a sequence. Use after confirming the sequence exists to remove it permanently." }, { "slug": "REPLY_IO_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user. Use after confirming the user exists to remove them permanently." }, { "slug": "REPLY_IO_GENERATE_ULID", "name": "Generate ULID", "description": "Generate ULID" }, { "slug": "REPLY_IO_GET_CONTACT_BY_ID", "name": "Get Contact by ID", "description": "Tool to retrieve a contact by ID. Use when you have a contact ID and need detailed contact information." }, { "slug": "REPLY_IO_GET_CONTACT_STATUS", "name": "Get Contact Status", "description": "Tool to get contact status. Use when you need to retrieve all current statuses for a contact." }, { "slug": "REPLY_IO_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get the current authenticated user's ID. Use when you need to verify API key validity or identify the current user." }, { "slug": "REPLY_IO_GET_DISCONNECTED_EMAIL_ACCOUNTS", "name": "Reply.io Get Disconnected Email Accounts", "description": "Tool to list email accounts that are currently disconnected due to authentication or connection errors. Use when you need to identify and troubleshoot problematic email accounts." }, { "slug": "REPLY_IO_GET_SEQUENCE_BY_ID", "name": "Get Sequence By ID", "description": "Tool to retrieve detailed information about a sequence by its ID. Use when you need to get comprehensive sequence details including settings, email accounts, and workflow steps." }, { "slug": "REPLY_IO_GET_SEQUENCE_CONTACTS_EXTENDED", "name": "Get Sequence Contacts Extended", "description": "Tool to retrieve all contacts enrolled in a sequence with additional details. Use when you need to see contact engagement status, current step, or completion timestamps within a sequence." }, { "slug": "REPLY_IO_GET_SEQUENCE_STEP_BY_ID", "name": "Get Sequence Step by ID", "description": "Tool to retrieve details of a specific sequence step. Use when you need to inspect step configuration including type, delays, execution mode, and type-specific settings." }, { "slug": "REPLY_IO_LIST_CONTACTS_BASIC", "name": "List Contacts Basic", "description": "Tool to list contacts. Use when verifying API access and gathering contact IDs." }, { "slug": "REPLY_IO_LIST_EMAIL_ACCOUNTS", "name": "Reply.io List Email Accounts", "description": "Tool to list all email accounts. Use when you need to retrieve email accounts page by page." }, { "slug": "REPLY_IO_LIST_LISTS", "name": "Reply.io List Lists", "description": "Tool to list all contact lists. Use when you need to retrieve all available lists in your Reply.io account." }, { "slug": "REPLY_IO_LIST_SEQUENCES", "name": "List Sequences", "description": "Tool to retrieve a paginated list of sequences. Use when you need to browse sequences with optional filtering by name." }, { "slug": "REPLY_IO_LIST_SEQUENCE_STEPS", "name": "List Sequence Steps", "description": "Tool to retrieve all steps in a sequence. Use when you need to get the complete list of steps configured for a specific sequence." }, { "slug": "REPLY_IO_PAUSE_SEQUENCE", "name": "Pause Sequence", "description": "Tool to pause a running sequence. Use when you need to temporarily stop a sequence from sending emails or executing steps." }, { "slug": "REPLY_IO_REMOVE_CONTACT_FROM_SEQUENCE", "name": "Remove Contact From Sequence", "description": "Tool to remove a contact from a sequence. Use when you need to stop a contact from receiving further steps in a specific sequence." }, { "slug": "REPLY_IO_REMOVE_CONTACTS_FROM_SEQUENCE", "name": "Bulk Remove Contacts from Sequence", "description": "Tool to bulk remove multiple contacts from a sequence at once. Use when you need to remove several contacts from a sequence efficiently in a single operation." }, { "slug": "REPLY_IO_SEARCH_CONTACTS", "name": "Search Contacts by Email", "description": "Tool to search contacts by email. Use when you need to find existing contact IDs for update tests." }, { "slug": "REPLY_IO_SET_CONTACT_STATUS", "name": "Set Contact Status", "description": "Tool to set the status of one or more contacts. Use when you need to update contact statuses in bulk." }, { "slug": "REPLY_IO_START_SEQUENCE", "name": "Start Sequence", "description": "Tool to start a sequence. Use when you need to activate a sequence that is in New or Paused status." }, { "slug": "REPLY_IO_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's information. Use when you need to modify contact details." }, { "slug": "REPLY_IO_UPDATE_EMAIL_ACCOUNT", "name": "Update Email Account", "description": "Tool to update an existing email account with custom SMTP/IMAP settings. Use when you need to modify email account configuration such as sender name, signature, server settings, or daily limits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "reply_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Reply.io API Key", "type": "string", "description": "The API key used for authenticating requests to the Reply.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "reputation_lyncs", "name": "Reputation Lyncs", "logo": "https://logos.composio.dev/api/reputation_lyncs", "description": "Automate collecting reviews from customers, making it simple to rank above your competitors on Google and increase your business revenue.", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "reputation_lyncs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and go to \"Integrations\" on the left menu, then under \"Ready Reviews Direct API\" hit \"View API Info\" at https://reputationlync.com/app/settings/integrations?hash=direct_api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "resend", "name": "Resend", "logo": "https://logos.composio.dev/api/resend", "description": "The universal API for sending emails.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 62, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RESEND_ADD_CONTACT_TO_SEGMENT", "name": "Add Contact To Segment", "description": "Add an existing contact to a segment in Resend. Use when you need to organize contacts into specific segments for targeted communication." }, { "slug": "RESEND_CANCEL_EMAIL", "name": "Cancel Email", "description": "Cancel a scheduled email." }, { "slug": "RESEND_CREATE_API_KEY", "name": "Create API Key", "description": "Create a new API key to authenticate communications with Resend. Use when you need to generate a new authentication token for API access." }, { "slug": "RESEND_CREATE_AUDIENCE", "name": "Create Audience", "description": "Create a list of contacts." }, { "slug": "RESEND_CREATE_CONTACT", "name": "Create Contact", "description": "Create a contact in Resend." }, { "slug": "RESEND_CREATE_CONTACT_PROPERTY", "name": "Create Contact Property", "description": "Tool to create a new contact property in Resend. Use when you need to define custom fields for contacts." }, { "slug": "RESEND_CREATE_CONTACT_V2", "name": "Create Contact V2", "description": "Tool to create a new contact in Resend. Use when you need to add a contact to Resend without specifying an audience." }, { "slug": "RESEND_CREATE_DOMAIN", "name": "Create Domain", "description": "Create a domain through the Resend Email API. The domain is created in a pending/unverified state and cannot be used for sending emails until DNS verification is completed." }, { "slug": "RESEND_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new email template in Resend. Use when you need to define reusable email templates with optional variables." }, { "slug": "RESEND_CREATE_TOPIC", "name": "Create Topic", "description": "Tool to create a new topic to segment your audience. Use when you need to create a topic for organizing contacts by interests or preferences." }, { "slug": "RESEND_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook to receive real-time notifications about email events. Use when you need to set up automated notifications for email status changes." }, { "slug": "RESEND_DELETE_API_KEY", "name": "Delete API Key", "description": "Remove an existing API key from Resend. Use when you need to revoke or delete an API key." }, { "slug": "RESEND_DELETE_AUDIENCE", "name": "Delete Audience", "description": "Remove an existing audience." }, { "slug": "RESEND_DELETE_CONTACT", "name": "Delete Contact", "description": "Delete a contact in Resend." }, { "slug": "RESEND_DELETE_CONTACT_BY_ID", "name": "Delete Contact By ID", "description": "Tool to remove an existing contact by its ID. Use when you need to delete a contact directly without specifying an audience." }, { "slug": "RESEND_DELETE_CONTACT_PROPERTY", "name": "Delete Contact Property", "description": "Remove an existing contact property from Resend." }, { "slug": "RESEND_DELETE_DOMAIN", "name": "Delete Domain", "description": "Delete a domain through the Resend Email API. Deletion is irreversible; ensure no active email traffic or DNS configurations depend on the domain before calling." }, { "slug": "RESEND_DELETE_SEGMENT", "name": "Delete Segment", "description": "Remove an existing segment. Use when you need to permanently delete a segment by its ID." }, { "slug": "RESEND_DELETE_TEMPLATE", "name": "Delete Template", "description": "Remove an existing template. Use this action when you need to delete a template from Resend." }, { "slug": "RESEND_DELETE_TOPIC", "name": "Delete Topic", "description": "Tool to remove an existing topic in Resend. Use when you need to delete a topic." }, { "slug": "RESEND_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Remove an existing webhook. Use this to delete a webhook configuration when you no longer need to receive event notifications at that endpoint." }, { "slug": "RESEND_DUPLICATE_TEMPLATE", "name": "Duplicate Template", "description": "Duplicate an existing template through the Resend Email API. Use when you need to create a copy of an existing template." }, { "slug": "RESEND_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve a single contact from Resend by ID or email. Use when you need to get details of a specific contact using the global contacts endpoint." }, { "slug": "RESEND_GET_CONTACT_PROPERTY", "name": "Get Contact Property", "description": "Tool to retrieve a single contact property from Resend. Use when you need to get details about a specific contact property by its ID." }, { "slug": "RESEND_GET_EMAIL_ATTACHMENT", "name": "Get Email Attachment", "description": "Retrieve a single attachment from a sent email. Use when you need to access attachment metadata and download URL." }, { "slug": "RESEND_GET_SEGMENT", "name": "Get Segment", "description": "Retrieve a single segment by its ID. Use when you need to get detailed information about a specific segment." }, { "slug": "RESEND_GET_TEMPLATE", "name": "Get Template", "description": "Retrieve a single template by ID or alias from Resend. Use when you need to view template details." }, { "slug": "RESEND_GET_TOPIC", "name": "Get Topic", "description": "Tool to retrieve a single topic by its ID in Resend. Use when you need to fetch details of a specific topic." }, { "slug": "RESEND_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieve a single webhook for the authenticated user. Use this to get details about a specific webhook configuration including its endpoint, subscribed events, and signing secret." }, { "slug": "RESEND_LIST_ALL_CONTACTS", "name": "List All Contacts", "description": "Tool to retrieve a list of all contacts from Resend. Use when you need to fetch contacts across all audiences with optional pagination." }, { "slug": "RESEND_LIST_API_KEYS", "name": "List API Keys", "description": "Tool to retrieve a list of API keys for the authenticated user. Use when you need to view all API keys associated with the account, including pagination support for large result sets." }, { "slug": "RESEND_LIST_AUDIENCES", "name": "List Audiences", "description": "List all audiences." }, { "slug": "RESEND_LIST_BROADCASTS", "name": "List Broadcasts", "description": "Tool to retrieve a list of broadcasts. Use when you need to fetch all broadcasts or paginate through them." }, { "slug": "RESEND_LIST_CONTACT_PROPERTIES", "name": "List Contact Properties", "description": "Tool to retrieve a list of contact properties from Resend. Use when you need to view available contact property definitions." }, { "slug": "RESEND_LIST_CONTACTS", "name": "List Contacts", "description": "List contacts in Resend." }, { "slug": "RESEND_LIST_CONTACT_SEGMENTS", "name": "List Contact Segments", "description": "Retrieve a list of segments that a contact is part of. Use when you need to determine which segments a specific contact belongs to." }, { "slug": "RESEND_LIST_CONTACT_TOPICS", "name": "List Contact Topics", "description": "Retrieve a list of topic subscriptions for a contact in Resend. Use when you need to check which topics a specific contact is subscribed to." }, { "slug": "RESEND_LIST_DOMAINS", "name": "List Domains", "description": "List all domains. Use the returned domain IDs as inputs for tools like RESEND_VERIFY_DOMAIN that require a domain_id." }, { "slug": "RESEND_LIST_EMAIL_ATTACHMENTS", "name": "List Email Attachments", "description": "Tool to retrieve a list of attachments from a sent email. Use when you need to get information about files attached to an email sent via Resend." }, { "slug": "RESEND_LIST_EMAILS", "name": "List Emails", "description": "Tool to retrieve a list of emails sent by your team. Use when you need to fetch outbound emails from your account. Supports pagination with limit, after, and before parameters." }, { "slug": "RESEND_LIST_RECEIVED_EMAILS", "name": "List Received Emails", "description": "Tool to retrieve a list of received emails for the authenticated user. Use when you need to fetch incoming emails from the receiving endpoint." }, { "slug": "RESEND_LIST_SEGMENTS", "name": "List Segments", "description": "Tool to retrieve a list of segments from Resend. Use when you need to view all available segments for audience management." }, { "slug": "RESEND_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve a list of templates from Resend. Use when you need to get all available templates with optional pagination support." }, { "slug": "RESEND_LIST_TOPICS", "name": "List Topics", "description": "Tool to retrieve a list of topics for the authenticated user. Use when you need to fetch available topics with optional pagination support." }, { "slug": "RESEND_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Retrieve a list of webhooks for the authenticated user. Use this to view all configured webhooks with their endpoints, event types, and status." }, { "slug": "RESEND_PUBLISH_TEMPLATE", "name": "Publish Template", "description": "Publish a template through the Resend Email API. Use when you need to make a template publicly available." }, { "slug": "RESEND_REMOVE_CONTACT_FROM_SEGMENT", "name": "Remove Contact From Segment", "description": "Remove an existing contact from a segment. Use when you need to disassociate a contact from a specific segment." }, { "slug": "RESEND_RETRIEVE_AUDIENCE", "name": "Retrieve Audience", "description": "Retrieve a single audience." }, { "slug": "RESEND_RETRIEVE_CONTACT", "name": "Retrieve Contact", "description": "Retrieve a contact in Resend." }, { "slug": "RESEND_RETRIEVE_DOMAIN", "name": "Retrieve Domain", "description": "Retrieve a single domain." }, { "slug": "RESEND_RETRIEVE_EMAIL", "name": "Retrieve Email", "description": "Retrieve a single email." }, { "slug": "RESEND_SEND_BATCH_EMAILS", "name": "Send Batch Emails", "description": "Trigger up to 100 batch emails at once. Use when you need to send multiple emails in a single API request." }, { "slug": "RESEND_SEND_EMAIL", "name": "Send Email", "description": "Send an email using Resend. Confirm recipients and content with the user before invoking — sends are irreversible. All recipients must be listed explicitly via `to`, `cc`, or `bcc`; audience-based sending is unsupported. Render HTML or plain text externally before passing via `html` or `text`." }, { "slug": "RESEND_UPDATE_BROADCAST", "name": "Update Broadcast", "description": "Update an existing broadcast in Resend. Use when you need to modify broadcast details like name, subject, content, or recipients." }, { "slug": "RESEND_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Resend by ID or email. Use when you need to modify contact details such as name or subscription status." }, { "slug": "RESEND_UPDATE_CONTACT_PROPERTY", "name": "Update Contact Property", "description": "Update an existing contact property in Resend. Only the fallback_value can be updated; the key and type fields cannot be changed after creation." }, { "slug": "RESEND_UPDATE_DOMAIN", "name": "Update Domain", "description": "Update an existing domain." }, { "slug": "RESEND_UPDATE_EMAIL", "name": "Update Email", "description": "Update a scheduled email." }, { "slug": "RESEND_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing email template in Resend. Use when you need to modify template properties such as name, subject, HTML content, or variables." }, { "slug": "RESEND_UPDATE_TOPIC", "name": "Update Topic", "description": "Tool to update an existing topic in Resend. Use when you need to modify the name of a topic." }, { "slug": "RESEND_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify the endpoint URL, change event subscriptions, or enable/disable a webhook." }, { "slug": "RESEND_VERIFY_DOMAIN", "name": "Verify Domain", "description": "Verify a domain through the Resend Email API. DNS records must fully propagate before verification succeeds; avoid immediate retries after DNS setup." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "resend_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret Resend API key (starts with 're_'). Create one at resend.com/api-keys and pick Full access; it's shown only once, so copy it right away.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "respond_io", "name": "Respond.io", "logo": "https://logos.composio.dev/api/respond_io", "description": "AI-powered customer conversation management software.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RESPOND_IO_CREATE_COMMENT", "name": "Add internal comment to conversation", "description": "Tool to add a comment (internal note) to a contact's conversation. Use after verifying the contact identifier." }, { "slug": "RESPOND_IO_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact in the respond.io workspace with the specified details. The contact is identified by email, phone number, or contact ID. Supports adding profile information, language preferences, and custom fields that have been pre-configured in the workspace." }, { "slug": "RESPOND_IO_CREATE_SPACE_TAG", "name": "Create Space Tag", "description": "Creates a new tag in the Respond.io workspace for organizing and categorizing contacts and conversations. Tags help with segmentation, filtering, and workflow automation. Each tag must have a unique name within the workspace." }, { "slug": "RESPOND_IO_GET_MESSAGE", "name": "Get Message", "description": "Tool to retrieve a specific message. Use when you need the details of a message sent to or received from a contact." }, { "slug": "RESPOND_IO_LIST_CHANNELS", "name": "List channels", "description": "Tool to retrieve a list of channels connected to the workspace. Use when you need to enumerate all messaging channels with pagination support." }, { "slug": "RESPOND_IO_LIST_USERS", "name": "List users", "description": "Tool to retrieve a list of users in the workspace. Use when you need to fetch all workspace users for auditing or assignment." }, { "slug": "RESPOND_IO_UPDATE_SPACE_TAG", "name": "Update Space Tag", "description": "Updates an existing workspace tag by its current name. You can modify the tag's name, description, or emoji. Note: Color codes are not currently supported by the API and will be rejected if provided. At least one field besides currentName must be provided to update." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "respondio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key required to authenticate requests to the respond.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "retailed", "name": "Retailed", "logo": "https://logos.composio.dev/api/retailed", "description": "Retailed is a global developer-first platform providing retail and resale marketplace APIs with access to product data, pricing information, and inventory management from major platforms like StockX, GOAT, Chrono24, and 50+ retail websites including sneakers, streetwear, watches, and luxury goods.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RETAILED_GET_GOAT_PRICES", "name": "Get GOAT Product Prices", "description": "Tool to retrieve pricing information for a specific product on GOAT. Use when you need up-to-date size-based pricing. Call after confirming product_id." }, { "slug": "RETAILED_GET_STOCK_X_PRODUCT", "name": "Get StockX Product", "description": "Tool to retrieve detailed StockX product information, including variant-level data. Use when you need comprehensive metadata from StockX by SKU or URL. Response is structured per variant; aggregate price or inventory metrics across variants only after grouping by variant to avoid distortion." }, { "slug": "RETAILED_GET_STOCKX_SEARCH", "name": "StockX Search", "description": "Tool to search StockX marketplace for products and pricing information. Use when you have a search term and need up-to-date listings on StockX. Note: SKU identifiers and size labels in results may differ from other marketplaces (e.g., GOAT); normalize these fields before cross-platform price comparisons." }, { "slug": "RETAILED_GET_STOCKX_TRENDS", "name": "StockX Trends", "description": "Tool to get the latest trending products from StockX. Use when you want to discover current trending items." }, { "slug": "RETAILED_GET_USAGE", "name": "Get API Usage", "description": "Tool to retrieve current API usage statistics. The only mechanism to check remaining API credits; call proactively before long-running analyses to prevent mid-run quota exhaustion." }, { "slug": "RETAILED_SEARCH_PRODUCTS", "name": "Search Products", "description": "Search for products in Retailed database matching query criteria. Uses Retailed's granular querying language with support for filtering by name, SKU, brand. SKUs and size labels are not standardized across sources; normalize product IDs and size labels before comparing results across marketplaces." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "retailed_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Retailed API Key", "type": "string", "description": "The API key used for authenticating requests to the Retailed API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "retently", "name": "Retently", "logo": "https://logos.composio.dev/api/retently", "description": "Retently is a customer experience management platform that enables businesses to collect, analyze, and act on customer feedback through surveys and integrations.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RETENTLY_ADD_FEEDBACK_TAGS", "name": "Add Feedback Tags", "description": "Add tags to feedback items by providing feedback IDs and corresponding tags." }, { "slug": "RETENTLY_ADD_FEEDBACK_TOPICS", "name": "Add Feedback Topics", "description": "Add topics to feedback items by providing feedback IDs and corresponding topics." }, { "slug": "RETENTLY_CREATE_OR_UPDATE_CUSTOMERS", "name": "Create or Update Customers", "description": "Tool to create new customers or update existing ones by providing their details, including email, name, company, tags, and properties. Use this to manage your customer base in Retently." }, { "slug": "RETENTLY_DELETE_CUSTOMERS", "name": "Delete Customers", "description": "Delete customers from the workspace by providing their unique IDs." }, { "slug": "RETENTLY_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve a list of campaigns associated with the account. Use when you need to get details about all campaigns." }, { "slug": "RETENTLY_GET_CUSTOMER_BY_ID", "name": "Get Customer By ID", "description": "Tool to retrieve detailed information about a specific customer by their unique ID. Use when you need to get all the details of a customer." }, { "slug": "RETENTLY_GET_CUSTOMERS", "name": "Get Customers", "description": "Retrieve a list of customers with optional parameters for pagination, sorting, and filtering by email or date range." }, { "slug": "RETENTLY_GET_FEEDBACK", "name": "Get Feedback", "description": "Tool to retrieve feedback received from customers. Use when you need to get a list of feedback, with optional parameters for pagination and sorting." }, { "slug": "RETENTLY_GET_FEEDBACK_BY_ID", "name": "Get Feedback by ID", "description": "Tool to retrieve detailed information about specific feedback by its unique ID. Use when you need to get the details of a single feedback entry." }, { "slug": "RETENTLY_GET_LATEST_SCORE", "name": "Get Latest Score", "description": "Tool to retrieve the latest NPS score for the account. Use when you need to get the most up-to-date NPS score." }, { "slug": "RETENTLY_GET_OUTBOX", "name": "Get Outbox", "description": "Retrieve the outbox of surveys that are scheduled to be sent." }, { "slug": "RETENTLY_GET_REPORTS", "name": "Get Reports", "description": "Tool to retrieve reports related to NPS surveys, including scores and trends. Use when you need to get campaign performance data." }, { "slug": "RETENTLY_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve a list of survey templates available in the account. Use when you need to get the available survey templates." }, { "slug": "RETENTLY_SEND_TRANSACTIONAL_SURVEY", "name": "Send Transactional Survey", "description": "Tool to send a transactional survey to customers. Use when you need to send a survey to a customer after a specific event, with an optional delay." }, { "slug": "RETENTLY_UNSUBSCRIBE_CUSTOMERS", "name": "Unsubscribe Customers", "description": "Unsubscribe customers from receiving surveys by providing their email addresses." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "retently_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Retently API Key", "type": "string", "description": "The API key for authenticating requests to the Retently API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rev_ai", "name": "Rev AI", "logo": "https://logos.composio.dev/api/rev_ai", "description": "Rev AI provides advanced machine learning and speech recognition services for converting audio and video to text.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REV_AI_DELETE_CUSTOM_VOCABULARY", "name": "Delete Custom Vocabulary", "description": "Tool to delete a completed custom vocabulary and its data. Use when you need to remove an unused vocabulary after confirming it's no longer needed." }, { "slug": "REV_AI_DELETE_JOB_BY_ID", "name": "Delete Job By ID", "description": "Tool to delete a completed transcription job and its data. Use when you need to permanently remove a finished job after confirming it's no longer needed." }, { "slug": "REV_AI_GET_ACCOUNT", "name": "Get Account", "description": "Tool to retrieve developer account details. Use after authenticating with Rev AI." }, { "slug": "REV_AI_GET_CAPTIONS", "name": "Get Captions", "description": "Tool to retrieve captions (SRT or VTT) for a completed Rev.ai transcription job. Use after confirming the job status is 'completed'." }, { "slug": "REV_AI_GET_CUSTOM_VOCABULARY_DETAILS", "name": "Get Custom Vocabulary Details", "description": "Tool to retrieve custom vocabulary processing details. Use when needing to fetch the status and submitted phrases for a specific custom vocabulary after creation." }, { "slug": "REV_AI_GET_JOB_BY_ID", "name": "Get Job by ID", "description": "Tool to fetch details of a transcription job by its ID. Use when confirming job status and metadata are accurate." }, { "slug": "REV_AI_GET_LIST_OF_JOBS", "name": "Get List of Jobs", "description": "Tool to get list of transcription jobs from the past 30 days. Use when you need to retrieve and paginate through recent transcription tasks." }, { "slug": "REV_AI_GET_TRANSCRIPT_BY_ID", "name": "Get Transcript by ID", "description": "Tool to retrieve the transcript of a completed Rev.ai job. Use after confirming job is complete. Supports JSON format (with timestamps and speaker info) or plain text format." }, { "slug": "REV_AI_START_STREAM_TRANSCRIPTION", "name": "Start Stream Transcription", "description": "Tool to start a WebSocket transcription stream. Use when you need real-time speech-to-text streaming via Rev.ai." }, { "slug": "REV_AI_SUBMIT_CUSTOM_VOCABULARY", "name": "Submit Custom Vocabulary", "description": "Tool to submit a custom vocabulary for improved speech recognition. Use when you want to process domain-specific terms asynchronously." }, { "slug": "REV_AI_SUBMIT_TRANSCRIPTION_JOB", "name": "Submit Transcription Job", "description": "Tool to submit a new transcription job. Use when you have a media URL or file bytes ready for async processing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rev_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Rev AI Access Token", "type": "string", "description": "The access token generated from the Rev AI account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rev", "name": "Rev AI", "logo": "https://logos.composio.dev/api/rev", "description": "Affordable, accurate, easy-to-use speech-to-text solutions powered by people and A.I working together. Rev offers transcripts, captions, subtitles, and more.", "category": "transcription", "authSchemes": [ "API_KEY" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REV_CREATE_RTMP_STREAM", "name": "Create RTMP Stream", "description": "Tool to create an RTMP live stream session for real-time transcription of live audio/video streams. Use when you need to set up streaming transcription via RTMP protocol." }, { "slug": "REV_DELETE_ALIGNMENT_JOB", "name": "Delete Alignment Job", "description": "Tool to delete a forced alignment job and its associated data. Use when you need to permanently remove an alignment job after confirming it's no longer needed." }, { "slug": "REV_DELETE_CUSTOM_VOCABULARY", "name": "Delete Custom Vocabulary", "description": "Tool to delete a completed custom vocabulary and its data. Use when you need to remove an unused vocabulary after confirming it's no longer needed." }, { "slug": "REV_DELETE_JOB_BY_ID", "name": "Delete Job By ID", "description": "Tool to delete a completed transcription job and its data. Use when you need to permanently remove a finished job after confirming it's no longer needed." }, { "slug": "REV_DELETE_LANGUAGE_ID_JOB", "name": "Delete Language ID Job", "description": "Tool to delete a language identification job and its associated data. Use when you need to permanently remove a language ID job that is no longer needed." }, { "slug": "REV_DELETE_SENTIMENT_JOB", "name": "Delete Sentiment Analysis Job", "description": "Tool to delete a specific sentiment analysis job and its associated data. Use when you need to permanently remove a sentiment analysis job after confirming it's no longer needed." }, { "slug": "REV_DELETE_TOPIC_EXTRACTION_JOB", "name": "Delete Topic Extraction Job", "description": "Tool to delete a topic extraction job and its associated data. Use when you need to permanently remove a topic extraction job after confirming it's no longer needed." }, { "slug": "REV_GET_ACCOUNT", "name": "Get Account", "description": "Retrieves Rev AI account information including email, credit balance (in hours), and HIPAA status. Returns current free, purchased, and total balance available for transcription services. No parameters required - uses authenticated credentials." }, { "slug": "REV_GET_ALIGNMENT_JOB", "name": "Get Alignment Job", "description": "Tool to get details of a specific forced alignment job including its status. Use when checking the progress of alignment job processing." }, { "slug": "REV_GET_ALIGNMENT_TRANSCRIPT", "name": "Get Alignment Transcript", "description": "Tool to retrieve the aligned transcript with timestamps for a completed alignment job. Use after confirming the alignment job status is 'completed'." }, { "slug": "REV_GET_CAPTIONS", "name": "Get Captions", "description": "Tool to retrieve captions (SRT or VTT) for a completed Rev.ai transcription job. Use after confirming the job status is 'completed'." }, { "slug": "REV_GET_CAPTIONS_TRANSLATION", "name": "Get Captions Translation", "description": "Tool to retrieve translated captions for a completed Rev.ai transcription job. Use after confirming the job has translation enabled and is complete." }, { "slug": "REV_GET_CUSTOM_VOCABULARY_DETAILS", "name": "Get Custom Vocabulary Details", "description": "Tool to retrieve custom vocabulary processing details. Use when needing to fetch the status and submitted phrases for a specific custom vocabulary after creation." }, { "slug": "REV_GET_JOB_BY_ID", "name": "Get Job by ID", "description": "Tool to fetch details of a transcription job by its ID. Use when confirming job status and metadata are accurate." }, { "slug": "REV_GET_LANGUAGE_ID_JOB", "name": "Get Language ID Job", "description": "Tool to fetch details of a language identification job by its ID. Use when checking job status and retrieving language identification results." }, { "slug": "REV_GET_LANGUAGE_ID_RESULT", "name": "Get Language Identification Result", "description": "Tool to retrieve language identification results for a completed job. Use when you need to get detected language and confidence scores for an audio file." }, { "slug": "REV_GET_LIST_OF_JOBS", "name": "Get List of Jobs", "description": "Retrieves a list of transcription jobs from the past 30 days in reverse chronological order (newest first). Use this tool to: - View recent transcription jobs and their statuses - Monitor job progress (in_progress, transcribed, failed) - Check job details like duration, language, and submission options - Paginate through large result sets using cursor-based pagination - Find specific jobs for further operations (get transcript, get captions, delete) Note: Jobs older than 30 days are not returned. Supports pagination up to 1000 jobs per request." }, { "slug": "REV_GET_SENTIMENT_JOB", "name": "Get Sentiment Job", "description": "Tool to fetch details of a sentiment analysis job by its ID. Use when checking sentiment analysis job status and metadata." }, { "slug": "REV_GET_SENTIMENT_RESULT", "name": "Get Sentiment Analysis Result", "description": "Tool to retrieve sentiment analysis results for a completed Rev.ai sentiment job. Use when you need to get sentiment scores and labels for transcribed content. The job must be in 'completed' status before results can be retrieved." }, { "slug": "REV_GET_TOPIC_EXTRACTION_RESULT", "name": "Get Topic Extraction Result", "description": "Tool to retrieve topic extraction results for a completed job. Use after confirming the topic extraction job is complete. Returns identified topics with relevance scores and supporting evidence from the content." }, { "slug": "REV_GET_TOPIC_JOB", "name": "Get Topic Job", "description": "Tool to fetch details of a topic extraction job by its ID. Use when you need to check the status of a topic extraction job or retrieve its metadata." }, { "slug": "REV_GET_TRANSCRIPT_BY_ID", "name": "Get Transcript by ID", "description": "Tool to retrieve the transcript of a completed Rev.ai job. Use after confirming job is complete. Supports JSON format (with timestamps and speaker info) or plain text format." }, { "slug": "REV_GET_TRANSCRIPT_SUMMARY", "name": "Get Transcript Summary", "description": "Tool to retrieve a summary of the transcript for a completed transcription job. Use after confirming the job is complete and was submitted with summarization_config enabled." }, { "slug": "REV_GET_TRANSCRIPT_TRANSLATION", "name": "Get Transcript Translation", "description": "Tool to retrieve a translated version of the transcript for a completed Rev.ai job. Use after confirming job is complete and translation was requested when submitting the job." }, { "slug": "REV_LIST_ALIGNMENT_JOBS", "name": "List Alignment Jobs", "description": "Tool to retrieve a list of all forced alignment jobs for the account. Use when you need to view and monitor forced alignment job statuses, check job details, or paginate through alignment job results." }, { "slug": "REV_LIST_CUSTOM_VOCABULARIES", "name": "List Custom Vocabularies", "description": "Tool to retrieve a list of all custom vocabularies for the account. Use when needing to view available custom vocabularies that can be used to improve transcription accuracy on domain-specific terminology." }, { "slug": "REV_LIST_LANGUAGE_ID_JOBS", "name": "List Language Identification Jobs", "description": "Tool to retrieve a list of language identification jobs for the account. Use when you need to check the status of language identification jobs or monitor their progress." }, { "slug": "REV_LIST_SENTIMENT_JOBS", "name": "List Sentiment Analysis Jobs", "description": "Tool to retrieve a list of all sentiment analysis jobs for the account. Use when you need to view sentiment analysis job history, monitor job statuses, or find specific jobs for further operations." }, { "slug": "REV_LIST_TOPIC_JOBS", "name": "List Topic Extraction Jobs", "description": "Tool to retrieve a list of all topic extraction jobs for the account. Use when you need to view topic extraction job history, monitor job statuses, or find specific jobs for further operations." }, { "slug": "REV_START_STREAM_TRANSCRIPTION", "name": "Start Stream Transcription", "description": "Tool to start a WebSocket transcription stream. Use when you need real-time speech-to-text streaming via Rev.ai." }, { "slug": "REV_SUBMIT_ALIGNMENT_JOB", "name": "Submit Alignment Job", "description": "Tool to submit an audio file with existing transcript for forced alignment. Use when you need to add accurate timestamps to transcript text by aligning it with the corresponding audio file. Forced alignment is useful when you already have a transcript but need precise word-level or phrase-level timestamps. Both the audio file and transcript must be publicly accessible via HTTP(S) URLs." }, { "slug": "REV_SUBMIT_CUSTOM_VOCABULARY", "name": "Submit Custom Vocabulary", "description": "Submits a custom vocabulary to Rev.ai for improved speech recognition accuracy on domain-specific terms. The vocabulary is processed asynchronously and returns immediately with an 'in_progress' status. Use the returned vocabulary ID in transcription jobs to boost recognition of your custom phrases. Common use cases: brand names, technical jargon, medical terms, product names, industry acronyms. Rate limit: 150 requests per 2 minutes." }, { "slug": "REV_SUBMIT_LANGUAGE_ID_JOB", "name": "Submit Language ID Job", "description": "Tool to submit an audio file for language identification to detect the spoken language. Use when you need to identify which language is spoken in an audio recording." }, { "slug": "REV_SUBMIT_SENTIMENT_ANALYSIS_JOB", "name": "Submit Sentiment Analysis Job", "description": "Submit text for sentiment analysis to detect positive, negative, or neutral sentiments. Use when analyzing customer feedback, reviews, support tickets, or transcribed audio for emotional tone. Provide either plain text (text parameter) or a Rev AI transcript JSON (transcript_json parameter). The job processes asynchronously; use the returned job ID to retrieve results when complete." }, { "slug": "REV_SUBMIT_TOPIC_EXTRACTION_JOB", "name": "Submit Topic Extraction Job", "description": "Tool to submit text or transcripts for topic extraction to identify key topics and themes. Use when analyzing conversation content, meeting transcripts, or text to extract main discussion points. Supports both plain text input (up to 14000 words) and structured JSON transcripts from Rev.ai's Speech-to-Text API. Results are processed asynchronously; use the returned job ID to check status and retrieve extracted topics when complete." }, { "slug": "REV_SUBMIT_TRANSCRIPTION_JOB", "name": "Submit Transcription Job", "description": "Submit an audio or video file for asynchronous transcription using Rev.ai. Use this action to convert speech to text from media files. Provide either a publicly accessible URL (media_url) or upload file bytes directly. The job processes asynchronously; use the returned job ID to check status and retrieve the transcript when complete. Supports speaker diarization, punctuation, profanity filtering, custom vocabularies, and multiple languages." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rev_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Client API Key", "type": "string", "description": "Get your Client API Key by contacting Rev or checking Step 1 in the Rev API Quickguide", "required": true, "default": null }, { "name": "generic_token", "displayName": "User API Key", "type": "string", "description": "Get your User API Key from your Rev account settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "revenuecat3", "name": "Revenuecat3", "logo": "https://logos.composio.dev/api/revenuecat3", "description": "In-app subscription infrastructure and analytics platform for mobile apps", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "revenuecat3_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "RevenueCat v2 secret API key with required permissions. Get it from https://app.revenuecat.com/settings/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "revolt", "name": "Revolt", "logo": "https://logos.composio.dev/api/revolt", "description": "Revolt is a free and open-source chat platform offering secure and customizable communication.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "REVOLT_ACKNOWLEDGE_POLICY_CHANGES", "name": "Acknowledge Policy Changes", "description": "Tool to acknowledge platform policy changes. Use when accepting or confirming policy updates for your bot account." }, { "slug": "REVOLT_ADD_CHANNELS_MESSAGES_REACTIONS", "name": "Add Reaction to Message", "description": "Tool to add a reaction to a message in a channel. Use when you want to react with an emoji to a specific message. Returns success on completion." }, { "slug": "REVOLT_BLOCK_USER", "name": "Block User", "description": "Tool to block another user by their ID. Use when you need to prevent interactions with a specific user." }, { "slug": "REVOLT_CREATE_SYNC_SETTINGS_SET", "name": "Create Sync Settings", "description": "Tool to upload and save settings data to Revolt's sync storage. Use when you need to persist user settings or preferences." }, { "slug": "REVOLT_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a message you've sent or one you have permission to delete. Use when you need to remove a message from a channel." }, { "slug": "REVOLT_DELETE_MESSAGES_BULK", "name": "Bulk Delete Messages", "description": "Tool to bulk delete multiple messages from a channel. Use when you need to delete multiple messages at once. Requires ManageMessages permission regardless of message ownership. Messages must have been sent within the past 1 week." }, { "slug": "REVOLT_FETCH_OWNED_BOTS", "name": "Fetch Owned Bots", "description": "Tool to fetch all bots that you have control over. Use when you need to retrieve information about bots owned by the authenticated user account." }, { "slug": "REVOLT_FETCH_SYNC_SETTINGS", "name": "Fetch Sync Settings", "description": "Tool to fetch settings from server filtered by keys. Returns an object with the requested keys where each value is a tuple of (timestamp, value). Only settings that exist on the server will be included in the response." }, { "slug": "REVOLT_FETCH_USER", "name": "Fetch user", "description": "Tool to fetch detailed information about a user. Use when you have a valid user ID and need full account details. Call after authenticating with bot token." }, { "slug": "REVOLT_FETCH_USER_FLAGS", "name": "Fetch User Flags", "description": "Tool to fetch flags associated with a specific user. Use after obtaining the user ID to inspect their special statuses or roles." }, { "slug": "REVOLT_GET_API_INFO", "name": "Get API Info", "description": "Tool to fetch the server configuration for this Revolt instance. Use when you need to discover API version, feature availability, WebSocket endpoints, or service URLs." }, { "slug": "REVOLT_GET_CHANNEL", "name": "Get Channel", "description": "Tool to fetch a channel by its ID. Use when you need to retrieve detailed information about a specific channel." }, { "slug": "REVOLT_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve your own user information. Use when you need to fetch details about the authenticated user account." }, { "slug": "REVOLT_GET_INVITE", "name": "Get Invite", "description": "Tool to fetch detailed information about an invite by its code. Use when you have a valid invite code and need to retrieve invite details including server info, channel info, and member count." }, { "slug": "REVOLT_GET_SYNC_UNREADS", "name": "Get Sync Unreads", "description": "Tool to fetch information about unread state on channels. Use when you need to check which channels have unread messages or mentions." }, { "slug": "REVOLT_GET_USER_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve a user's profile data including bio and background. Use when you need profile-specific information beyond basic user data. Will fail if you do not have permission to access the target user's profile." }, { "slug": "REVOLT_GET_USERS_DEFAULT_AVATAR", "name": "Get User's Default Avatar", "description": "Tool to fetch a user's default avatar image based on their ID. Use when you need to retrieve the default avatar picture for a specific user." }, { "slug": "REVOLT_GET_USERS_DM", "name": "Open DM with User", "description": "Tool to open a DM with another user. Use when you need to start or access a direct message conversation. If the target is oneself, returns a saved messages channel." }, { "slug": "REVOLT_GET_USERS_DMS", "name": "Get User DMs", "description": "Tool to fetch all direct message conversations for the authenticated user. Use when you need to list all DM and group DM channels." }, { "slug": "REVOLT_PIN_MESSAGE", "name": "Pin Message", "description": "Tool to pin a message in a channel by its ID. Use when you need to highlight important messages for channel members." }, { "slug": "REVOLT_REMOVE_MESSAGE_REACTION", "name": "Remove Message Reaction", "description": "Tool to remove a reaction from a message. Use when you need to remove your own, someone else's, or all reactions of a given emoji from a message. Requires ManageMessages permission if removing others' reactions." }, { "slug": "REVOLT_SEND_CHANNELS_MESSAGES", "name": "Send Channel Message", "description": "Tool to send a message to a Revolt channel. Use when you need to post a text message, embed, or attachment to a specific channel. Call after authenticating with bot token." }, { "slug": "REVOLT_UNBLOCK_USER", "name": "Unblock User", "description": "Tool to unblock another user by their ID. Use when you need to remove a block on a specific user. The relationship status will change from 'Blocked' to 'None' after successful execution." }, { "slug": "REVOLT_UNPIN_MESSAGE", "name": "Unpin Message", "description": "Tool to unpin a message in a channel. Use when you need to remove a pinned message from the channel's pinned messages list." }, { "slug": "REVOLT_UPDATE_CHANNELS_MESSAGES", "name": "Update Channel Message", "description": "Tool to edit a message that you've previously sent in a channel. Use when you need to update the content or embeds of an existing message. At least one of content or embeds must be provided." }, { "slug": "REVOLT_UPDATE_USER", "name": "Update User", "description": "Tool to update user information. Use when you need to modify user profile or status fields. Call after authenticating with bot token." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "revolt_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Revolt Bot Token", "type": "string", "description": "The token used to authenticate your bot with the Revolt API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "riddle_quiz_maker", "name": "Riddle Quiz Maker", "logo": "https://logos.composio.dev/api/riddle_quiz_maker", "description": "Create quizzes, personality tests, polls and surveys with Riddle Quiz Maker", "category": "marketing", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "riddle_quiz_maker_api_key_v3", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key from Riddle. Go to Teams > Edit > Enable API or Account > API > Enable API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ritekit", "name": "Ritekit", "logo": "https://logos.composio.dev/api/ritekit", "description": "RiteKit offers a suite of APIs designed to enhance social media engagement by providing tools for hashtag generation, link shortening, and content analysis.", "category": "social media marketing", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RITEKIT_AUTO_HASHTAG", "name": "Auto Hashtag", "description": "Tool to automatically add relevant hashtags to a given post. Use when you have plain text and need suggested hashtags appended or inserted in context." }, { "slug": "RITEKIT_BANNED_INSTAGRAM_HASHTAGS", "name": "Check Banned Instagram Hashtags", "description": "Tool to identify which hashtags are banned on Instagram. Use when preparing content and need to filter out banned hashtags before posting." }, { "slug": "RITEKIT_DETECT_DISPOSABLE_EMAIL", "name": "Detect Disposable Email", "description": "Tool to detect if an email address is disposable. Use when validating email addresses to filter out temporary or fake email services." }, { "slug": "RITEKIT_DETECT_EMAIL_TYPO", "name": "Detect Email Typo", "description": "Tool to detect common typos in email addresses and suggest corrections. Use when validating email input to help users correct mistakes like gml.com -> gmail.com." }, { "slug": "RITEKIT_FREEMAIL_DETECTION", "name": "Free Email Detection", "description": "Tool to detect whether an email address belongs to a free email provider. Use when validating lead quality before ingestion." }, { "slug": "RITEKIT_GET_ACCESS_TOKEN", "name": "Get Access Token", "description": "Tool to obtain a RiteKit access token. Prefer using a stored token from connection metadata or request. Falls back to OAuth2 client credentials if both client_id and client_secret are provided and no token is otherwise available." }, { "slug": "RITEKIT_GET_CLIENT_ID", "name": "RiteKit Get Client ID", "description": "Tool to retrieve stored RiteKit client_id. Use when child actions require the client_id query parameter." }, { "slug": "RITEKIT_GET_CLIENT_SECRET", "name": "RiteKit Get Client Secret", "description": "Tool to retrieve stored RiteKit client_secret. Use when child actions require the client_secret parameter." }, { "slug": "RITEKIT_GET_FULL_EMAIL_INSIGHTS", "name": "Get Full Email Insights", "description": "Tool to retrieve comprehensive email address insights including full name, free mail detection, business email detection, and typo suggestions. Use when you need detailed analysis of an email address for lead qualification or email validation." }, { "slug": "RITEKIT_HASHTAG_SUGGESTIONS", "name": "RiteKit Hashtag Suggestions", "description": "Tool to get hashtag suggestions for a given text. Use when you need relevant hashtags for social media posts." }, { "slug": "RITEKIT_LINK_AD_DELETE", "name": "Delete Link Ad", "description": "Tool to delete a link ad. Use when you need to permanently remove a link ad by its ID." }, { "slug": "RITEKIT_LIST_LINK_ADS", "name": "List Link Ads", "description": "Tool to retrieve a list of link ads. Use after authenticating to fetch all link ads for the user." }, { "slug": "RITEKIT_SHORTEN_LINK", "name": "Shorten Link", "description": "Tool to shorten a URL with a specified CTA. Use when you need to generate a call-to-action-enabled short link." }, { "slug": "RITEKIT_TEXT_TO_IMAGE", "name": "Convert Text to Image", "description": "Tool to convert a quote into a styled image. Use after preparing quote text and style options." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "ritekit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "RiteKit Client ID", "type": "string", "description": "The Client ID obtained from the RiteKit Developer Dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rize", "name": "Rize", "logo": "https://logos.composio.dev/api/rize", "description": "Rize is an AI-powered time tracking and productivity tool that automatically tracks your work time and provides insights.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RIZE_CREATE_API_KEY", "name": "Create API Key", "description": "Create a new API key for the partner. Use this action when you need to generate a new API key for authentication with the Rize API. The API key is created server-side and returned in the response. Note: This action does not require any input parameters. Simply call execute with an empty request body to generate a new API key." }, { "slug": "RIZE_CREATE_CARD", "name": "Create Card", "description": "Creates a new card in the Rize system. Use this action when you need to create a new card for a cardholder. The card will be associated with the specified partner financial account. Card creation is irreversible once processed — ensure all parameters are correct before execution." }, { "slug": "RIZE_CREATE_CARDHOLDER", "name": "Create Cardholder", "description": "Creates a new cardholder in the Rize system. Use this action when you need to register a new cardholder with their personal information, addresses, and tax identification. This action is irreversible once processed." }, { "slug": "RIZE_CREATE_COUNTERPARTY", "name": "Create a Rize counterparty", "description": "Creates a new Counterparty in the Rize system. A counterparty represents an external party (such as a vendor, supplier, or business partner) that can receive transfers from your account. Use when setting up external payment recipients or business transfer partners. This action is idempotent based on the external_uid. If a counterparty with the same external_uid already exists, the existing record may be returned." }, { "slug": "RIZE_CREATE_PARTNER_FINANCIAL_ACCOUNT", "name": "Create Partner Financial Account", "description": "Create a new financial account for an existing partner in the Rize admin API. Use this action when you need to provision a new financial account (such as a bank account) for a partner organization that already exists in the Rize platform. This action creates the financial account on the partner record. The account will be associated with the specified financial provider." }, { "slug": "RIZE_CREATE_USER", "name": "Create User", "description": "Creates a new user in the Rize system. Use this action when you need to register a new user with their email, name, and role. Optionally, cardholder information can be provided to associate a cardholder profile with the user." }, { "slug": "RIZE_GET_CARDHOLDER", "name": "Get Cardholder", "description": "Retrieve detailed information about a specific cardholder using their unique identifier. Use this action when you need to fetch cardholder profile data including name, contact information, addresses, and demographic details." }, { "slug": "RIZE_GET_VIRTUAL_CARD_IMAGE", "name": "Get Virtual Card Image", "description": "Retrieves the virtual card image asset. Returns the image representation of a virtual debit card which can be displayed in mobile or web applications. Use this action when you need to fetch the visual representation of a virtual debit card for display purposes. This action is read-only and does not modify any card data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rize_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Rize API key. Generate one in Settings > API section of your Rize dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rkvst", "name": "Rkvst", "logo": "https://logos.composio.dev/api/rkvst", "description": "DataTrails provides an evidence management platform that delivers a reliable chain of custody for supply chain data, ensuring data authenticity and transparency.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RKVST_DOWNLOAD_EVENT_ATTACHMENT", "name": "Download Event Attachment", "description": "Tool to download an attachment from a specified Event on an Asset. Use when you have asset_uuid, event_uuid, and attachment uuid, and want the raw binary content." }, { "slug": "RKVST_GET_APP_REGISTRATION", "name": "Get App Registration", "description": "Tool to retrieve details for a given App Registration ID. Use after obtaining the application's UUID to inspect its configuration and credentials." }, { "slug": "RKVST_GET_ASSET", "name": "Get Asset", "description": "Tool to retrieve details for a given Asset. Use after you have its UUID; set `at_time` to get historical state." }, { "slug": "RKVST_GET_BLOB", "name": "Get Blob", "description": "Tool to retrieve details of a Blob by ID. Use after confirming the Blob ID." }, { "slug": "RKVST_GET_EVENT", "name": "Get Event", "description": "Tool to retrieve details of a specified Event. Use when you need full metadata, attributes, and associated trails of an existing event in DataTrails." }, { "slug": "RKVST_GET_IAM_SUBJECT", "name": "Get IAM Subject", "description": "Tool to retrieve IAM subject details. Use when you need to fetch details for a specific IAM subject by its ID." }, { "slug": "RKVST_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve details for a given Member ID. Use after obtaining a valid member UUID." }, { "slug": "RKVST_GET_PUBLIC_ASSET", "name": "Get Public Asset", "description": "Tool to retrieve details for a public asset. Use when you have a public asset UUID." }, { "slug": "RKVST_GET_PUBLIC_ASSET_EVENT", "name": "Get Public Asset Event", "description": "Tool to retrieve a specific public asset event. Use when you have public asset and event UUIDs." }, { "slug": "RKVST_GET_TENANCY", "name": "Get Tenancy", "description": "Tool to retrieve details for a specific tenancy. Use after you have a tenancy ID." }, { "slug": "RKVST_LIST_APP_REGISTRATIONS", "name": "List App Registrations", "description": "Tool to list all App Registrations. Use after acquiring a valid auth token to retrieve the applications registered under the tenant." }, { "slug": "RKVST_LIST_ASSET_EVENTS", "name": "List Asset Events", "description": "Tool to list events for a specified asset. Use after confirming you have the asset UUID." }, { "slug": "RKVST_LIST_ASSETS", "name": "List Assets", "description": "Tool to list all Assets with optional pagination and filters. Use when you need to retrieve asset metadata in batches via page_size and next_page_token." }, { "slug": "RKVST_LIST_IAM_SUBJECTS", "name": "List IAM Subjects", "description": "Tool to list IAM subjects. Use when you need to retrieve provider-managed subjects, optionally filtering by display name. Use after authenticating the tenant." }, { "slug": "RKVST_LIST_MEMBERS", "name": "List Members", "description": "Tool to list all tenant Members. Use when you need an overview of all users in your tenant." }, { "slug": "RKVST_LIST_PUBLIC_ASSET_EVENTS", "name": "List Public Asset Events", "description": "Tool to list events for a specific public asset. Use when you need to retrieve the event history of a public asset after confirming its public availability." }, { "slug": "RKVST_LIST_PUBLIC_ASSETS", "name": "List Public Assets", "description": "Tool to list all Public Assets. Use when you need to retrieve all assets made public." }, { "slug": "RKVST_LIST_TENANCIES", "name": "List Tenancies", "description": "Tool to list all tenancies. Use after authenticating to retrieve the tenancy records available to the current tenant." }, { "slug": "RKVST_PROMOTE_MEMBER", "name": "Promote Member", "description": "Tool to promote a tenant member to OWNER role. Use when you need to elevate permissions after verifying the member identity." }, { "slug": "RKVST_RETRIEVE_ASSET_ATTACHMENT_METADATA", "name": "Retrieve asset attachment metadata", "description": "Tool to retrieve metadata for an attachment on a specified Asset. Use after obtaining asset and attachment UUIDs." }, { "slug": "RKVST_RETRIEVE_CAPS", "name": "Retrieve Caps", "description": "Tool to retrieve resource limit quotas for a specified service. Use when checking quota availability before provisioning resources." }, { "slug": "RKVST_RETRIEVE_EVENT_ATTACHMENT_METADATA", "name": "Retrieve Event Attachment Metadata", "description": "Tool to retrieve metadata for an attachment on a specified Event. Use when you have asset_uuid, event_uuid, and attachment uuid and need details like size, hash, and scan status." }, { "slug": "RKVST_SEARCH_EVENTS", "name": "Search Events", "description": "Tool to search events matching filter criteria with pagination. Use when retrieving events by OData filter and paging through large result sets." }, { "slug": "RKVST_UPDATE_APP_REGISTRATION", "name": "Update App Registration", "description": "Tool to update an application's display name or custom claims. Use after retrieving an App Registration to apply partial updates to its configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rkvst_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "DataTrails Access Token", "type": "string", "description": "Access token obtained by exchanging your Client ID and Client Secret using the OAuth2 Client Credentials flow.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "roam", "name": "Roam", "logo": "https://logos.composio.dev/api/roam", "description": "Roam HQ provides APIs for secure messaging, chat, file sharing, and collaboration with enterprise-grade security and compliance features.", "category": "communication", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 39, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROAM_ADD_GROUP_MEMBERS", "name": "Add group members", "description": "Add one or more group members and/or admins to an existing Roam group. Use this tool when: - You need to add new members to an existing group - You need to promote existing members to admin status - You want to bulk add multiple users to a group Access conditions: - For adding members: The group must be public in the user's Roam, or the app must be a member - For adding admins: The app must be an admin of the group Returns empty response on success (HTTP 204)." }, { "slug": "ROAM_ADD_REACTION", "name": "Add Reaction to Message", "description": "Add an emoji reaction to a message in a chat. Use this action when you want to react to a message with an emoji in a Roam chat. The action requires the message ID, chat ID, reaction name, and timestamp. Required scope: chat:send_message or chat:write Response codes: 200=success, 400=bad request, 401=invalid credentials, 405=unsupported method, 500=internal error" }, { "slug": "ROAM_CREATE_GROUP", "name": "Create Group", "description": "Create a group address that can be used for chat. Groups which specify an admin will operate in an \"Admin only\" management mode, where only admins may change settings. Otherwise, all members have that capability. Groups require at least one member or admin." }, { "slug": "ROAM_CREATE_ROAM_SCIM_GROUP", "name": "Create Roam SCIM Group", "description": "Tool to create a new group in your Roam organization using SCIM 2.0. Use when you need to provision a new group for managing user access and permissions via the SCIM 2.0 protocol. The displayName is required and must be 64 characters or less." }, { "slug": "ROAM_CREATE_USER", "name": "Create Roam User", "description": "Create a new user in Roam via SCIM 2.0 protocol for automated user provisioning. Use when you need to add a new user to your Roam organization. The userName must match the primary email address exactly. The role defaults to 'User' but can be set to 'Admin' for administrative access. Note: Password attributes are not supported and will be ignored." }, { "slug": "ROAM_DELETE_GROUP", "name": "Delete Roam Group", "description": "Archive a group in Roam using SCIM 2.0 protocol. This is a soft delete operation that archives the group. Use when you need to archive a group that is no longer needed while preserving data for audit purposes. Returns 204 No Content on successful deletion." }, { "slug": "ROAM_DELETE_USER", "name": "Delete Roam User", "description": "Archive a user in Roam using SCIM 2.0 protocol. This is a soft delete operation that deprovisions the user. Use when you need to remove a user from the organization while preserving their data for audit purposes. Returns 204 No Content on successful deletion." }, { "slug": "ROAM_GET_ADDRESS_INFO", "name": "Get Address Info", "description": "Get information about a chat address, which is the name for any entity that may participate in a chat, such as a user, visitor, or bot. Use this action to retrieve details like display name, email, profile image, and other information about a specific chat address. Required scope: chat:read" }, { "slug": "ROAM_GET_CHAT_HISTORY", "name": "Get chat history", "description": "Lists messages in a chat, filtered by date range (after/before). The ordering of results depends on the filter specified: - If no parameters provided: returns most recent messages, sorted in reverse chronological order. - If 'after' is specified: results sorted in forward chronological order. In Personal mode, only chats where the authenticated user is a participant are accessible. Use this action to retrieve message history from a specific chat." }, { "slug": "ROAM_GET_MEETING_LINK", "name": "Get meeting link", "description": "Tool to get a meeting link. Use when you need to retrieve information about a specific meeting link by its ID. Requires the 'meetinglink:read' scope." }, { "slug": "ROAM_GET_RESOURCE_TYPES", "name": "Get Roam SCIM Resource Types", "description": "Returns the list of SCIM 2.0 resource types supported by Roam. Use this action to discover what resource types are available in the Roam SCIM API. Currently returns User and Group resource types. This endpoint requires no parameters." }, { "slug": "ROAM_GET_ROAM_SCIM_CONFIG", "name": "Get SCIM service provider config", "description": "Tool to retrieve Roam's SCIM service provider configuration. Use when you need to discover Roam's SCIM API capabilities including supported authentication schemes, bulk operations, filtering, and other service provider features. This endpoint returns the SCIM 2.0 ServiceProviderConfig resource which describes the supported features." }, { "slug": "ROAM_GET_SCIM_SCHEMA", "name": "Get SCIM schema", "description": "Retrieves the definition of a specific SCIM 2.0 schema by its unique identifier (URN). This endpoint returns the complete schema definition including all attributes, their types, mutability, and other properties. Common schemas include: - urn:ietf:params:scim:schemas:core:2.0:User (User resource schema) - urn:ietf:params:scim:schemas:core:2.0:Group (Group resource schema) - urn:ietf:params:scim:schemas:extension:enterprise:2.0:User (Enterprise User extension) Use this to understand the structure of SCIM resources and what attributes are available." }, { "slug": "ROAM_GET_SCIM_USER", "name": "Get user by ID (SCIM)", "description": "Tool to retrieve a single user by their Roam Person ID using SCIM 2.0 protocol. Use when you need to get detailed information about a specific user including their name, email, active status, and role in Roam. The user ID is the SCIM user ID (Person ID) that can be obtained from user list or user creation operations. Endpoint: GET /scim/v2/Users/{id}" }, { "slug": "ROAM_GET_TEST", "name": "Test API Connectivity", "description": "Test endpoint for API connectivity. Use this endpoint to verify that the Roam API is accessible and authentication is working correctly. Returns a confirmation message on successful connection." }, { "slug": "ROAM_GET_TOKEN_INFO", "name": "Get token info", "description": "Retrieves information about the current Roam access token. Use this tool to: - Get the bot's chat address - Check the OAuth scopes granted to the current token - Retrieve information about the associated Roam workspace Returns the chat address, granted scopes, and Roam workspace information." }, { "slug": "ROAM_GET_USER_INFO", "name": "Get user info", "description": "Get detailed information about a single user in your Roam workspace. Requires user:read scope. Additional scopes (user:read.email, user:read.status) needed for expanded fields." }, { "slug": "ROAM_LIST_CHATS", "name": "List Roam Chats", "description": "Lists all accessible chats, which consist of all DMs, MultiDMs, and Channels that your bot has been added to, in addition to all public channels. Supports pagination via cursor and limiting the number of results. Use this action to discover available chats before performing operations on them." }, { "slug": "ROAM_LIST_GROUP_MEMBERS", "name": "List group members", "description": "List members in a group in your Roam workspace. Use this tool when: - You need to see all members of a specific group - You want to check who has access to a group - You need to paginate through large groups Access conditions: - The group must be public in the user's Roam, OR - The app must be a member of the group Required scope: groups:read Returns a list of user IDs with pagination support via nextCursor." }, { "slug": "ROAM_LIST_GROUPS", "name": "List SCIM Groups", "description": "Returns a paginated list of groups in your Roam organization via SCIM 2.0. Use when you need to retrieve all groups in your Roam organization using the SCIM protocol. Supports pagination using startIndex and count parameters. Note: The filter parameter is currently ignored for the Groups endpoint." }, { "slug": "ROAM_LIST_LOBBIES", "name": "List Roam Lobbies", "description": "Lists active lobbies in your Roam account. Returns all lobby configurations with their IDs, display names, URLs, and active status. Use this action to discover available lobbies before performing operations on them." }, { "slug": "ROAM_LIST_MEETINGS", "name": "List Roam Meetings", "description": "Lists all meetings in your home Roam, filtered by date range. Supports pagination via cursor and limiting the number of results. Returns meeting details including meeting ID, room, time, and participants. Use this action to discover available meetings in your Roam workspace." }, { "slug": "ROAM_LIST_RECORDINGS", "name": "List Roam Recordings", "description": "Tool to list all recordings in your home Roam. Use when you need to retrieve recordings with optional date range filtering (after/before) or pagination. Supports filtering by date range and paginating through large result sets." }, { "slug": "ROAM_LIST_ROAM_SCIM_USERS", "name": "List users (SCIM)", "description": "Tool to list users in your Roam organization using SCIM 2.0 protocol. Use when you need to retrieve a paginated list of users in your Roam workspace via the SCIM 2.0 API for identity provider integration. Supports pagination via startIndex and count parameters, as well as filtering by user attributes using SCIM filter expressions. Endpoint: GET /scim/v2/Users" }, { "slug": "ROAM_LIST_SCHEMAS", "name": "List SCIM Schemas", "description": "Tool to list all SCIM 2.0 schemas supported by Roam. Use when you need to discover available SCIM resource schemas. Returns the core User and Group schemas plus Roam's custom role extension schemas." }, { "slug": "ROAM_LIST_TRANSCRIPTS", "name": "List Roam Transcripts", "description": "Lists all transcripts in your Roam workspace, filtered by date range. Supports pagination via cursor and limiting the number of results. Returns transcript metadata (id, meetingId, start, end, participants) without full content. Use this action to discover available transcripts before retrieving detailed content." }, { "slug": "ROAM_LIST_USER_AUDIT_LOG", "name": "List User Audit Log", "description": "Tool to get a list of user audit log entries for the account. Use when you need to retrieve audit logs for compliance and security monitoring purposes. This action requires the 'userauditlog:read' scope and organization-level access. Required parameter: date (format: YYYY-MM-DD) Optional: limit for pagination, cursor for paginating through results." }, { "slug": "ROAM_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the Roam workspace. Use when you need to retrieve a list of users with optional pagination and expanded fields like status. Required scope: user:read (add user:read.email for emails, user:read.status for presence status)." }, { "slug": "ROAM_LOOKUP_USER", "name": "Lookup user by email", "description": "Look up a user in your Roam workspace by their email address. Use when you need to find a user's details including their ID, name, and profile information. Required scopes: user:read and user:read.email." }, { "slug": "ROAM_PATCH_GROUP", "name": "Patch a group", "description": "Partially updates a group using SCIM 2.0 protocol. Use this action to add or remove members from a group, or replace the group's display name. The PATCH operation supports 'add', 'remove', and 'replace' operations on group attributes. Example usage: - Add members: op='add', path='members', value=[{'value': '686562', 'ref': 'Users/686562'}] - Remove members: op='remove', path='members', value=[{'value': '686562'}] - Replace displayName: op='replace', path='displayName', value='New Group Name'" }, { "slug": "ROAM_PATCH_USER", "name": "Patch user (SCIM)", "description": "Partially updates a user using SCIM 2.0 protocol. Use when you need to modify specific attributes of an existing user without replacing the entire resource. Currently, Roam only supports the 'replace' operation on the 'active' attribute, which allows archiving or reactivating a user. Other operations like 'add' or account 'remove' are not supported, and 'replace' on attributes other than 'active' will fail. Example usage: - Deactivate/archive user: op='replace', path='active', value=false - Reactivate user: op='replace', path='active', value=true Endpoint: PATCH /scim/v2/Users/{id}" }, { "slug": "ROAM_POST_CHAT", "name": "Post message to chat", "description": "Post a message to a chat. Messages can be plain markdown text or rich Block Kit layouts with headers, sections, buttons, and more. Messages may be posted to a chat, a group, or addresses such as users or bots. Use syntax <@USER_ID> for mentions." }, { "slug": "ROAM_REMOVE_GROUP_MEMBERS", "name": "Remove group members", "description": "Tool to remove one or more members from a group in your Roam workspace. Use when you need to remove users from a specific group. Note: The group must be public in the user's Roam, or the app must be a member of the group to remove members. Admin role members cannot be removed yet." }, { "slug": "ROAM_REPLACE_GROUP", "name": "Replace Roam SCIM Group", "description": "Fully replaces a group's attributes using SCIM 2.0 protocol. Use when you need to completely replace all attributes of an existing group, including its display name and member list. This is a full update (PUT), not a partial update (PATCH). Note: Unlike PATCH which only modifies specified attributes, PUT requires sending all desired attributes. Any attributes not included will be reset to default values (e.g., members list will be replaced entirely)." }, { "slug": "ROAM_REPLACE_USER", "name": "Replace Roam User", "description": "Fully replaces (updates) a user's attributes in Roam via SCIM 2.0 protocol. Use when you need to update all user attributes at once. This is a full replacement operation - all required fields must be provided. Note: This is a PUT operation that completely replaces the user. For partial updates, use the patch user operation. Password attributes are not supported and will be ignored." }, { "slug": "ROAM_SEND_MESSAGE", "name": "Send message to group", "description": "Sends the given message to the specified recipients. At this time, we only support sending to a single group recipient. You can obtain the group ID on the Group Settings page." }, { "slug": "ROAM_SEND_TYPING", "name": "Send Typing Indicator", "description": "Tool to notify other chat participants that you are typing. Use when you want to show a typing indicator to one or more users in a chat conversation. This is typically used before sending a message to let recipients know you're composing a response." }, { "slug": "ROAM_UPDATE_MEETING_LINK", "name": "Update a meeting link", "description": "Update settings for an existing meeting link in Roam. Use this action when you need to modify the name, start time, or end time of an existing meeting link. The meeting link ID is required to identify which meeting to update. Note: The host field cannot be updated; if provided, it must match the existing value. Returns 204 No Content on success." }, { "slug": "ROAM_UPLOAD_ITEM", "name": "Upload File to Roam", "description": "Upload a file to Roam so it can be sent as a chat attachment. Use when you need to upload a file, image, or document to Roam before sending it in a chat message. Returns an item ID that can be used with the chat.post endpoint. Supported file types: - Images (image/png, image/jpeg, image/gif, image/webp): Displayed inline with preview thumbnail - Other files (application/octet-stream): Download link only Maximum file size: 10 MB" } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "roam_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "groups:read,chat:read,chat:write,chat:send_message,recordings:read,transcript:read,admin:compliance:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "roam_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Roam API Key for server-to-server organization access. Create in Roam Administration > Developer section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "roboflow", "name": "Roboflow", "logo": "https://logos.composio.dev/api/roboflow", "description": "Build and use computer vision models fast with Roboflow. Train, deploy, and run inference on object detection, classification, and segmentation models.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROBOFLOW_DESCRIBE_WORKFLOW_INTERFACE", "name": "Describe Workflow Interface", "description": "Tool to describe the interface of a workflow specification. Use when you need to understand the inputs, outputs, and types for a Roboflow workflow definition." }, { "slug": "ROBOFLOW_GET_EXECUTION_ENGINE_VERSIONS", "name": "Get Execution Engine Versions", "description": "Tool to retrieve available Execution Engine versions from Roboflow workflows API. Use when you need to check which execution engine versions are supported for workflow processing." }, { "slug": "ROBOFLOW_GET_SERVER_INFO", "name": "Get Server Info", "description": "Tool to retrieve information about the Roboflow inference server. Use when you need to check the server version, name, or unique identifier." }, { "slug": "ROBOFLOW_GET_SERVER_METRICS", "name": "Get Server Metrics", "description": "Tool to retrieve Prometheus metrics from the Roboflow inference server. Use when monitoring server performance, tracking inference statistics, or debugging server health issues." }, { "slug": "ROBOFLOW_GET_WORKFLOW_SCHEMA", "name": "Get Workflow Schema", "description": "Tool to fetch the workflows block schema from Roboflow. Use when you need to retrieve the complete schema definition for workflow blocks." }, { "slug": "ROBOFLOW_RUN_WORKFLOW", "name": "Run Workflow", "description": "Tool to run a workflow specification with provided inputs. Use when you need to execute a custom Roboflow workflow pipeline for image processing, model inference, or other computer vision tasks." }, { "slug": "ROBOFLOW_VALIDATE_WORKFLOW", "name": "Validate Workflow", "description": "Tool to validate a Roboflow workflow specification before execution. Use this to check if your workflow definition is syntactically correct and properly structured." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "roboflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Private API Key from Roboflow Settings > API Keys. Get it by navigating to your workspace, then clicking \"Roboflow API\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rocketadmin", "name": "Rocketadmin", "logo": "https://logos.composio.dev/api/rocketadmin", "description": "Save months of work developing custom admin panels with our secure solution for your MySQL, PostgreSQL, MSSQL, Oracle DB or MongoDB project.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROCKETADMIN_CHECK_API_KEY", "name": "Check API Key", "description": "Tool to validate whether an API key is legitimate and active. Use when you need to verify that the current API key is valid before performing other operations." }, { "slug": "ROCKETADMIN_DELETE_TABLE_ROW", "name": "Delete Table Row by Primary Key", "description": "Tool to delete a single row from a database table by primary key. Use when you need to remove a specific row identified by its ID. This is an API+ feature." }, { "slug": "ROCKETADMIN_GET_COMPANY_INVITE_VERIFY", "name": "Verify Company Invitation Link", "description": "Tool to check if a company invitation verification link is available and valid. Use when you need to verify a company invitation token before accepting the invitation." }, { "slug": "ROCKETADMIN_GET_CONNECTIONS", "name": "Get All Connections", "description": "Tool to retrieve all database connections where the user has access. Use when you need to discover available connections in the user's workspace." }, { "slug": "ROCKETADMIN_GET_CONNECTION_TABLES_V2", "name": "Get Connection Tables V2", "description": "Tool to retrieve all tables in a database connection organized with category information. Use when you need to discover available tables in a specific connection." }, { "slug": "ROCKETADMIN_GET_CONNECTION_TOKEN", "name": "Validate Connection Token", "description": "Tool to validate if connection agent token is valid. Use when you need to check if the current connection token is still authorized and active." }, { "slug": "ROCKETADMIN_GET_HELLO", "name": "Get Hello", "description": "Tool to retrieve a hello greeting message from the Rocketadmin API. Use when testing API connectivity or getting a simple greeting response." }, { "slug": "ROCKETADMIN_GET_SAAS_USERS_EMAIL", "name": "Get SaaS Users by Email", "description": "Tool to retrieve user information by email address. Use when you need to get details about a specific user by their email." }, { "slug": "ROCKETADMIN_GET_TABLE_ROW", "name": "Get Table Row by Primary Key", "description": "Tool to retrieve a single row from a database table using its primary key. Use when you need to fetch specific row data by its ID from a RocketAdmin connection." }, { "slug": "ROCKETADMIN_GET_TABLE_STRUCTURE", "name": "Get Table Structure", "description": "Tool to retrieve the structural information of a database table including columns, data types, constraints, and relationships. Use when you need to understand the schema of a specific table in a RocketAdmin connection." }, { "slug": "ROCKETADMIN_GET_USER_EMAIL_VERIFY", "name": "Verify User Email", "description": "Tool to verify a user's email address using a verification token. Use when you need to confirm a user's email address after registration or email change." }, { "slug": "ROCKETADMIN_POST_TABLE_CSV_EXPORT", "name": "Export Table as CSV", "description": "Tool to export table data as a CSV file from RocketAdmin. Use when you need to download table data in CSV format. This is an API+ feature that exports the specified table with optional filtering, pagination, and sorting." }, { "slug": "ROCKETADMIN_POST_TABLE_ROW", "name": "Add Row to Table", "description": "Tool to add a new row to a database table in RocketAdmin. Use when you need to insert data into a specific table. This is an API+ feature that creates a new row with the provided field values." }, { "slug": "ROCKETADMIN_POST_TABLE_ROWS_FIND", "name": "Find Table Rows with Filters", "description": "Tool to retrieve all rows from a database table with filter parameters in the request body. Use when you need to fetch rows with complex filtering conditions. This is an API+ feature that supports advanced filtering with operators like equals, greater than, less than, like, in, etc." }, { "slug": "ROCKETADMIN_PUT_TABLE_ROW", "name": "Update Table Row by Primary Key", "description": "Tool to update a row in a database table by its primary key. Use when you need to modify existing row data in a RocketAdmin connection. This is an API+ feature." }, { "slug": "ROCKETADMIN_PUT_TABLE_ROWS_DELETE", "name": "Delete Multiple Table Rows", "description": "Tool to delete multiple rows from a table by primary key. Use when you need to batch delete rows identified by their primary keys. This is an API+ feature." }, { "slug": "ROCKETADMIN_PUT_TABLE_ROWS_UPDATE", "name": "Update Multiple Table Rows", "description": "Tool to update multiple rows in a table by primary key. Use when you need to batch update rows identified by their primary keys with the same new values. This is an API+ feature." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rocketadmin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your secret RocketAdmin API key. Sign in, then create or copy it in your account settings: https://app.rocketadmin.com/user-settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rockset", "name": "Rockset", "logo": "https://logos.composio.dev/api/rockset", "description": "Rockset is a serverless search and analytics engine for real-time data APIs on DynamoDB, Kafka, S3 and more. Note: Service was shut down on September 30, 2024 after OpenAI acquisition.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rockset_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Rockset API base URL (Oregon: https://api.rs2.usw2.rockset.com, N. Virginia: https://api.use1a1.rockset.com, Frankfurt: https://api.euc1a1.rockset.com)", "required": true, "default": "https://api.use1a1.rockset.com" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API Keys can be created via the Rockset console at https://console.rockset.com/apikeys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rollbar", "name": "Rollbar", "logo": "https://logos.composio.dev/api/rollbar", "description": "Error tracking and monitoring platform for developers", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROLLBAR_CHECK_TEAM_PROJECT_ASSIGNMENT", "name": "Check Team Project Assignment", "description": "Tool to check if a team is assigned to a project in Rollbar. Use when you need to verify team-project relationships or validate access permissions. Returns 404 if the project is not assigned to the team." }, { "slug": "ROLLBAR_CHECK_USER_TEAM_ASSIGNMENT", "name": "Check User Team Assignment", "description": "Tool to check if a user is assigned to a team in Rollbar. Use when you need to verify team membership for a specific user." }, { "slug": "ROLLBAR_GET_OCCURRENCES_METRICS", "name": "Get Occurrences Metrics", "description": "Get occurrence counts over a span of time with flexible grouping, filtering, and aggregation. Use this to analyze error patterns, track occurrence metrics across time periods, and generate custom reports by grouping on fields like environment, platform, or user attributes." }, { "slug": "ROLLBAR_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details of a specific Rollbar project by its ID. Use when you need to get project information including name, status, settings, and timestamps." }, { "slug": "ROLLBAR_GET_TEAM", "name": "Get Team by ID", "description": "Tool to retrieve details of a specific team by ID. Use when you need to fetch information about a team including its name, account ID, and access level." }, { "slug": "ROLLBAR_GET_TTR_METRICS", "name": "Get TTR metrics", "description": "Get resolution time metrics for a list of projects. Use when you need to analyze how long it takes to resolve issues in Rollbar projects." }, { "slug": "ROLLBAR_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a specific user from Rollbar by their user ID. Use when you need to fetch user details including username, email, and notification settings." }, { "slug": "ROLLBAR_LIST_ALL_PROJECTS", "name": "List All Projects", "description": "Tool to list all projects in the Rollbar account. Use when you need to retrieve all projects associated with the account." }, { "slug": "ROLLBAR_LIST_ALL_TEAMS", "name": "List All Teams", "description": "Tool to list all teams in a Rollbar account. Use when you need to retrieve all teams for an account." }, { "slug": "ROLLBAR_LIST_ALL_USERS", "name": "List All Users", "description": "Tool to list all users in the Rollbar account. Use when you need to retrieve user information or filter users by email address." }, { "slug": "ROLLBAR_LIST_PROJECT_TEAMS", "name": "List Project Teams", "description": "Tool to list all teams with access to a Rollbar project. Use when you need to retrieve teams associated with a specific project." }, { "slug": "ROLLBAR_LIST_RQL_JOBS", "name": "List RQL Jobs", "description": "Tool to list all RQL (Rollbar Query Language) jobs. Use when you need to retrieve all RQL jobs and their statuses." }, { "slug": "ROLLBAR_LIST_TEAM_INVITATIONS", "name": "List Team Invitations", "description": "Tool to list pending invitations to a Rollbar team. Use when you need to view all outstanding team invitations." }, { "slug": "ROLLBAR_LIST_TEAM_PROJECTS", "name": "List Team Projects", "description": "Tool to list all projects a team has access to in Rollbar. Use when you need to see which projects are associated with a specific team." }, { "slug": "ROLLBAR_LIST_TEAM_USERS", "name": "List Team Users", "description": "Tool to list all users in a Rollbar team. Use when you need to retrieve team membership information." }, { "slug": "ROLLBAR_LIST_USER_PROJECTS", "name": "List User Projects", "description": "Tool to list all projects a user has access to. Use when you need to retrieve projects for a specific user by their user ID." }, { "slug": "ROLLBAR_LIST_USER_TEAMS", "name": "List User Teams", "description": "Tool to list all teams a user belongs to in Rollbar. Use when you need to retrieve team memberships for a specific user." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rollbar_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Account or Project access token from Rollbar Settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rootly", "name": "Rootly", "logo": "https://logos.composio.dev/api/rootly", "description": "Rootly is an AI-native incident management platform that automates workflows and collaboration, integrating with Slack, PagerDuty, and other tools to streamline incident response.", "category": "it operations", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROOTLY_DELETE_ACTION_ITEM", "name": "Delete Action Item", "description": "This tool allows for the deletion of a specific action item in Rootly. It complements the existing ROOTLY_LIST_ACTION_ITEMS functionality by providing the ability to remove individual action items from the system." }, { "slug": "ROOTLY_DELETE_INCIDENT", "name": "Delete Incident", "description": "Tool to delete an incident in Rootly by ID. Use when performing administrative cleanup. This is a destructive operation and depends on appropriate Rootly permissions." }, { "slug": "ROOTLY_GET_ACTION_ITEM", "name": "Get Action Item Details", "description": "Retrieves detailed information about a specific action item by its ID from Rootly. Action items are tasks or follow-up items created during incident management to track work that needs to be completed. This tool returns comprehensive details including: - Core info: summary, description, kind (task/follow_up), priority, status, due_date - Assignment: assigned user and group IDs - Integration links: Jira, GitHub, GitLab, Linear, Asana, Trello, ClickUp, and other connected tools - Metadata: creation and update timestamps, direct URL to the action item Use ROOTLY_LIST_ACTION_ITEMS first to discover available action item IDs if you don't already have one." }, { "slug": "ROOTLY_GET_INCIDENT", "name": "Get Incident Details", "description": "Tool to retrieve full details for a single Rootly incident by ID. Use when you need complete incident information for drill-down after listing or searching incidents. Supports optional include parameter to fetch related resources like environments, services, action_items, and events in a single request." }, { "slug": "ROOTLY_LIST_ACTION_ITEMS", "name": "List Action Items", "description": "This tool retrieves a list of all action items for an organization in Rootly. Action items are tasks or follow-up items that need to be completed during or after an incident, helping to track and manage incident-related tasks effectively." }, { "slug": "ROOTLY_UPDATE_INCIDENT", "name": "Update Incident", "description": "Tool to update fields on an existing Rootly incident by ID. Use when you need to modify incident status, severity, metadata, or other attributes. Supports updating title, status, summary, severity_id, service_ids, environment_ids, and more." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rootly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Rootly API Key", "type": "string", "description": "The API key used for authenticating requests to the Rootly API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rosette_text_analytics", "name": "Rosette Text Analytics", "logo": "https://logos.composio.dev/api/rosette_text_analytics", "description": "Rosette Text Analytics is a platform that uses natural language processing, statistical modeling, and machine learning to analyze unstructured and semi-structured text across 364 language-encoding-script combinations, revealing valuable information and actionable data.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROSETTE_TEXT_ANALYTICS_ADDRESS_SIMILARITY", "name": "Address Similarity", "description": "Compares two addresses and returns a similarity score. Addresses can be provided as single strings or as structured objects. The tool is optimized for English, Simplified Chinese, and Traditional Chinese addresses." }, { "slug": "ROSETTE_TEXT_ANALYTICS_LANGUAGE_IDENTIFICATION", "name": "Identify Language", "description": "This tool identifies the natural language of a given text. It takes a string of text as input and returns the detected language along with a confidence score. Optional parameters include specifying a genre (e.g., \"social-media\"), providing a list of language codes to constrain the identification, and indicating whether to include user-defined languages." }, { "slug": "ROSETTE_TEXT_ANALYTICS_NAME_SIMILARITY", "name": "Compare Name Similarity", "description": "The 'Name Similarity' tool compares two entity names (Person, Location, or Organization) and returns a similarity score between 0 and 1 to indicate if the names are similar. It is useful for tasks such as record linkage, identity resolution, and data deduplication." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "rosette_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Rosette API Key", "type": "string", "description": "Your Rosette API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "route4me", "name": "Route4me", "logo": "https://logos.composio.dev/api/route4me", "description": "Route4Me provides a Last Mile Routing API offering automated solutions for route planning and optimization, tailored for logistics-intensive businesses.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 97, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ROUTE4ME_ADD_ORDER_CUSTOM_FIELD", "name": "Add Order Custom Field", "description": "Tool to add a new custom field definition for orders. Use when you need to create additional data fields to capture order-specific information beyond the standard order properties." }, { "slug": "ROUTE4ME_ADD_ROUTE_NOTE", "name": "Add Route Note", "description": "Tool to add a note to a route or address destination. Use when recording delivery status, customer feedback, or activity logs at specific stops." }, { "slug": "ROUTE4ME_CREATE_ADDRESS", "name": "Create Address", "description": "Tool to add a new address to the address book. Use when you need to create a new contact location for route planning or delivery management." }, { "slug": "ROUTE4ME_CREATE_AVOIDANCE_ZONE", "name": "Create Avoidance Zone", "description": "Tool to create an avoidance zone with circular, rectangular, or polygon shape. Use when you need to define geographic regions that routes should avoid, such as construction areas, restricted zones, or traffic-prone regions." }, { "slug": "ROUTE4ME_CREATE_LOCATION_TYPE", "name": "Create Location Type", "description": "Tool to create a new location type in the address book. Use when you need to categorize locations with custom types before adding them to routes." }, { "slug": "ROUTE4ME_CREATE_MASTER_ROUTE", "name": "Create Master Route", "description": "Tool to create a new master route in Route4Me. Use when you need to create a route with waypoints, optimization settings, and delivery details." }, { "slug": "ROUTE4ME_CREATE_NOTE", "name": "Create Custom Note Type", "description": "Tool to create a new custom note type in Route4me. Use when you need to define a new category of notes with predefined selectable values for route destinations or activities." }, { "slug": "ROUTE4ME_CREATE_OPTIMIZATION", "name": "Create Route Optimization", "description": "Tool to create a new route optimization in Route4Me. Use when you need to optimize delivery routes, plan multi-stop trips, or generate efficient vehicle routing solutions." }, { "slug": "ROUTE4ME_CREATE_OPTIMIZATION_PROFILE", "name": "Create Optimization Profile", "description": "Tool to create a new optimization profile in Route4Me. Use when you need to store reusable optimization settings for route planning with specific configurations like driver assignment, vehicle settings, constraints, and preferences." }, { "slug": "ROUTE4ME_CREATE_ORDER_CUSTOM_FIELD", "name": "Create Order Custom Field", "description": "Tool to create a new custom field definition for orders. Use when you need to define new custom data fields that can be attached to orders for tracking additional information beyond standard order fields." }, { "slug": "ROUTE4ME_CREATE_ORDERS_FROM_CONTACTS", "name": "Create Orders from Contacts", "description": "Tool to create orders from address book contacts. Use when you need to generate new orders from existing contacts for a specific delivery date." }, { "slug": "ROUTE4ME_CREATE_TERRITORY", "name": "Create Territory", "description": "Tool to create a new territory with circular, rectangular, or polygon shape. Use when you need to define geographic regions for route planning, service areas, or operational zones." }, { "slug": "ROUTE4ME_CREATE_VEHICLE_CAPACITY_PROFILE", "name": "Create Vehicle Capacity Profile", "description": "Tool to create a vehicle capacity profile with weight, volume, item count, and revenue limits. Use when you need to define operational constraints for vehicles in route planning and fleet management." }, { "slug": "ROUTE4ME_DELETE_ADDRESS", "name": "Delete Address from Route", "description": "Tool to delete an address from a route. Use when you need to remove a specific destination from an optimization problem or route." }, { "slug": "ROUTE4ME_DELETE_ADDRESSES", "name": "Delete Addresses", "description": "Tool to delete addresses from the Route4Me address book. Use when you need to remove one or more addresses permanently from the address book." }, { "slug": "ROUTE4ME_DELETE_AVOIDANCE", "name": "Delete Avoidance Zone", "description": "Tool to delete an avoidance zone by territory_id. Use when you need to remove a specific avoidance zone from the routing system." }, { "slug": "ROUTE4ME_DELETE_CONFIGURATION_SETTING", "name": "Delete Configuration Setting", "description": "Tool to delete a member configuration setting by config_key. Use when you need to remove a specific configuration setting from the account." }, { "slug": "ROUTE4ME_DELETE_CURRENT_USER", "name": "Delete Current User", "description": "Tool to delete the current authenticated user account. Use when you need to permanently remove the current user's account including contact information, preferences, and account status. This action is irreversible." }, { "slug": "ROUTE4ME_DELETE_LOCATION_TYPE", "name": "Delete Location Type", "description": "Tool to delete a location type from the address book. Use when you need to remove a location type record with its associated details such as coordinates, address, and metadata." }, { "slug": "ROUTE4ME_DELETE_OPTIMIZATION", "name": "Delete Optimization", "description": "Tool to remove optimization problems from the Route4Me database. Use when you need to clean up or delete optimization records that are no longer needed." }, { "slug": "ROUTE4ME_DELETE_OPTIMIZATION_PROFILE", "name": "Delete Optimization Profile", "description": "Tool to delete an optimization profile by ID. Use when you need to remove a specific optimization profile record from the system." }, { "slug": "ROUTE4ME_DELETE_ORDER_CUSTOM_FIELD", "name": "Delete Order Custom Field", "description": "Tool to delete an order custom field by ID. Use when you need to remove a custom field definition from order records." }, { "slug": "ROUTE4ME_DELETE_ROUTE_V4", "name": "Delete Route V4", "description": "Tool to delete one or more routes by route_id. Use when you need to permanently remove routes from the system. Supports single or multiple route deletion via comma-separated route_ids." }, { "slug": "ROUTE4ME_DELETE_TERRITORY", "name": "Delete Territory", "description": "Tool to delete a territory by territory_id. Use when you need to remove a specific territory from the system." }, { "slug": "ROUTE4ME_DELETE_VEHICLE_CAPACITY_PROFILE_BY_ID", "name": "Delete Vehicle Capacity Profile by ID", "description": "Tool to delete a vehicle capacity profile by ID. Use when you need to remove a specific vehicle capacity profile from the system." }, { "slug": "ROUTE4ME_DISPATCH_ROUTES", "name": "Dispatch Routes", "description": "Tool to approve or revoke routes for execution in Route4Me. Use when you need to set approval status for routes based on filters like route ID, vehicle ID, member ID, route status, or schedule date." }, { "slug": "ROUTE4ME_DISPLAY_DATATABLE_CONFIG", "name": "Display Datatable Config", "description": "Tool to retrieve datatable configuration for vehicle capacity profiles. Use when you need to display vehicle capacity profiles in a datatable UI component with column definitions, filters, and action configurations." }, { "slug": "ROUTE4ME_DUPLICATE_ROUTES", "name": "Duplicate Routes", "description": "Tool to duplicate one or more existing routes. Use when you need to create copies of routes for similar deliveries or to use an existing route as a template." }, { "slug": "ROUTE4ME_FIND_ADDRESS", "name": "Find Address", "description": "Tool to retrieve detailed information about a specific address from the Route4Me address book. Use when you need to look up address details, contact information, or service requirements by address ID." }, { "slug": "ROUTE4ME_GEOCODE_ADDRESS", "name": "Geocode Address", "description": "Tool to geocode an address and obtain its coordinates. Use when you need latitude/longitude for an address string before creating routes or destinations." }, { "slug": "ROUTE4ME_GEOCODE_ADDRESS_BODY", "name": "Geocode Address (Body)", "description": "Tool to geocode an address by sending a body payload with the address and options. Use when you need to convert an address string into geographic coordinates (latitude/longitude)." }, { "slug": "ROUTE4ME_GEOCODE_ADDRESSES", "name": "Bulk Geocode Addresses", "description": "Tool to geocode multiple addresses in a single request. Use when you need latitude/longitude coordinates for multiple addresses at once before creating routes or destinations." }, { "slug": "ROUTE4ME_GEOCODE_ADDRESS_FORWARD", "name": "Geocode Address Forward", "description": "Tool to convert an address to geographic coordinates using forward geocoding. Use when you need latitude/longitude from an address string for route planning or location-based services." }, { "slug": "ROUTE4ME_GET_ACTIVITY", "name": "Get Activity Feed", "description": "Tool to retrieve activities from the Route4Me activity feed with optional filtering and pagination. Use when you need to track changes, monitor team actions, or audit route modifications." }, { "slug": "ROUTE4ME_GET_ADDRESS", "name": "Get Address", "description": "Tool to get address/destination information from a route. Use when you need details about a specific stop including coordinates, status, contact information, and delivery data." }, { "slug": "ROUTE4ME_GET_ADDRESS_BOOK_GROUPS", "name": "Get Address Book Groups", "description": "Tool to retrieve address book groups from Route4Me. Use when you need to list all address book groups for filtering or organizing contacts." }, { "slug": "ROUTE4ME_GET_ADDRESSES_FROM_ADDRESSBOOK", "name": "Get Addresses from Address Book", "description": "Tool to retrieve addresses from the Route4Me address book. Use when you need to list contacts, search for specific addresses, or paginate through the address book. Supports filtering by address IDs and pagination with limit/offset." }, { "slug": "ROUTE4ME_GET_ASYNC_EXPORT", "name": "Get Async Export Tracking History", "description": "Tool to save tracking history file via async export. Use when you need to export device tracking data in CSV, JSON, or XML format. The operation is asynchronous and returns a job ID for tracking the export progress." }, { "slug": "ROUTE4ME_GET_AVOIDANCE2", "name": "Get All Territories (Avoidance Zones v5)", "description": "Tool to retrieve all avoidance zones (territories) using API v5.0. Use when you need to view existing territories for route planning, optionally filtered by geographic location and distance." }, { "slug": "ROUTE4ME_GET_AVOIDANCE_BY_ID", "name": "Get Avoidance Zone By ID", "description": "Tool to retrieve a specific avoidance zone by its territory ID. Use when you need detailed information about a particular avoidance zone for route planning or validation." }, { "slug": "ROUTE4ME_GET_CLUSTERED_LOCATIONS", "name": "Get Clustered Locations", "description": "Tool to retrieve locations grouped by geographic proximity using geohash clustering. Use when you need to view locations organized by area or analyze spatial distribution of address book entries." }, { "slug": "ROUTE4ME_GET_CURRENT_MEMBER_INFORMATION", "name": "Get Current Member Information", "description": "Tool to retrieve the current authenticated member's information. Use when you need to get details about the logged-in user including contact information, preferences, permissions, and account status." }, { "slug": "ROUTE4ME_GET_FEED", "name": "Get Activity Feed", "description": "Tool to retrieve all activities from the Route4Me activity feed. Use when you need to view activity history, track changes to routes, or monitor team member actions." }, { "slug": "ROUTE4ME_GET_LAST_SCHEDULED_ROUTE_MEMBER", "name": "Get Last Scheduled Route for Member", "description": "Tool to retrieve the most recently scheduled route for a specific member as of today. Use when you need route details including waypoints, optimization settings, and delivery metrics for a team member." }, { "slug": "ROUTE4ME_GET_LOCATION_HEATMAP", "name": "Get Location Heatmap", "description": "Tool to retrieve a heat map of location clusters from the address book. Use when visualizing location density or analyzing geographic distribution of stops." }, { "slug": "ROUTE4ME_GET_LOCATION_SERVICETIME_HEATMAP", "name": "Get Location Service-Time Heatmap", "description": "Tool to retrieve location service-time heatmap data for address book locations. Use when analyzing historical service times and performance metrics for specific locations over a trailing 30-day period." }, { "slug": "ROUTE4ME_GET_LOCATION_TYPE", "name": "Get Location Type", "description": "Tool to get location type details by ID. Use when you need to retrieve specific information about a location type in the address book." }, { "slug": "ROUTE4ME_GET_MEMBER_CONFIGURATION_SETTINGS", "name": "Get Member Configuration Settings", "description": "Tool to get member configuration settings with optional filtering. Use when you need to retrieve specific configuration settings by mcs or config_key parameters." }, { "slug": "ROUTE4ME_GET_NOTE_CUSTOM_TYPES", "name": "Get Note Custom Types", "description": "Tool to retrieve all custom note types configured for the account. Use when you need to view available note classification options before adding notes to routes or addresses." }, { "slug": "ROUTE4ME_GET_OPTIMIZATION_PROFILE", "name": "Get Optimization Profile", "description": "Tool to retrieve detailed information about an optimization profile by its unique identifier. Use when you need to view the configuration settings, constraints, and optimization parameters of a specific profile before creating or planning routes." }, { "slug": "ROUTE4ME_GET_ROUTE_DESTINATION_BY_ID", "name": "Get Route Destination By ID", "description": "Tool to get a route address/destination by its ID. Use when you need detailed information about a specific route stop including location, status, customer details, and delivery data." }, { "slug": "ROUTE4ME_GET_ROUTE_INFO", "name": "Get Route Info", "description": "Tool to get detailed route information by route ID. Use when you need comprehensive details about a specific route including waypoints, optimization settings, delivery details, and turn-by-turn directions." }, { "slug": "ROUTE4ME_GET_ROUTE_LIST", "name": "Get Route List", "description": "Tool to retrieve a list of routes with filtering and pagination. Returns detailed route information including status, assignments, destinations, distances, and delivery metrics. Use when you need to query routes by various criteria such as date, vehicle, driver, or status." }, { "slug": "ROUTE4ME_GET_ROUTE_SETTINGS", "name": "Get Route Settings", "description": "Tool to get route settings with detailed information including waypoints, optimization settings, and delivery details. Use when you need comprehensive configuration data for a specific route including all stops, delivery parameters, and optimization settings." }, { "slug": "ROUTE4ME_GET_TERRITORIES_WITH_LOCATION_COUNTS", "name": "Get Territories with Location Counts", "description": "Tool to retrieve territories with location counts for geographic analysis. Use when you need to analyze address distribution across territories or understand coverage areas." }, { "slug": "ROUTE4ME_GET_TERRITORY", "name": "Get Territory", "description": "Tool to retrieve territory information by ID or get all territories. Use when you need details about geographic zones and their boundaries." }, { "slug": "ROUTE4ME_GET_TRACKING", "name": "Submit Device Tracking Data", "description": "Tool to submit device GPS tracking information to Route4Me. Use when you need to send location updates from a mobile device or tracking unit to the Route4Me platform." }, { "slug": "ROUTE4ME_GET_TRACKING_HISTORY_EXPORT", "name": "Get Tracking History Export", "description": "Tool to export tracking history file from Route4Me. Use when you need to retrieve device location history for analysis, reporting, or compliance purposes. Supports filtering by device, member, route, and time range." }, { "slug": "ROUTE4ME_GET_USER_BY_ID", "name": "Get User By ID", "description": "Tool to retrieve a sub-user by their unique ID. Use when you need detailed information about a specific team member including their permissions, settings, and profile data." }, { "slug": "ROUTE4ME_GET_USER_LOCATIONS", "name": "Get User Locations", "description": "Tool to view locations of all users/drivers in real-time. Use when you need to track where drivers are currently located or monitor their movement." }, { "slug": "ROUTE4ME_GET_USER_MODIFICATION_HISTORY", "name": "Get User Modification History", "description": "Tool to get user modification history from Route4Me. Returns detailed audit trail of changes made to a user's account including field modifications, timestamps, and who initiated the changes. Use when you need to track user account changes or audit user information updates." }, { "slug": "ROUTE4ME_GET_USER_TEMPLATE", "name": "Get User Template", "description": "Tool to retrieve the template of a sub-user with detailed information including contact information, preferences, and account status. Use when you need to get the user template structure or default user configuration." }, { "slug": "ROUTE4ME_GET_USER_V4", "name": "Get User Information (v4)", "description": "Tool to retrieve authenticated user information in v4 format. Use when you need to get details about the currently authenticated user including member ID, email, name, account type, and preferences." }, { "slug": "ROUTE4ME_GET_VEHICLE", "name": "Get Vehicles", "description": "Tool to retrieve details of vehicles in the organization. Use when you need the full list of vehicles before planning routes or auditing vehicle capacities." }, { "slug": "ROUTE4ME_GET_VEHICLE_CAPACITY_PROFILE_AS_DATATABLE", "name": "Get Vehicle Capacity Profile As Datatable", "description": "Tool to retrieve vehicle capacity profiles in datatable format with pagination. Use when you need to view capacity profiles for vehicles including weight, volume, revenue, and items limits." }, { "slug": "ROUTE4ME_GET_VEHICLE_CAPACITY_PROFILE_BY_ID", "name": "Get Vehicle Capacity Profile by ID", "description": "Tool to retrieve a specific vehicle capacity profile by its ID. Use when you need details of a particular capacity profile for route planning or vehicle configuration." }, { "slug": "ROUTE4ME_GET_VEHICLE_CAPACITY_PROFILE_PAGE_CONFIG", "name": "Get Vehicle Capacity Profile Page Config", "description": "Tool to retrieve vehicle capacity profile page configuration including unit settings. Use when you need to understand available units for volume, weight, and revenue in vehicle capacity profiles." }, { "slug": "ROUTE4ME_GET_VEHICLE_CAPACITY_PROFILES", "name": "Get Vehicle Capacity Profiles", "description": "Tool to retrieve vehicle capacity profiles with weight, volume, and item constraints. Use when you need to view available capacity profiles for route planning or vehicle assignment." }, { "slug": "ROUTE4ME_LIST_LOCATION_TYPES", "name": "List Location Types", "description": "Tool to retrieve location type definitions used in the address book system. Use when categorizing addresses or locations in Route4Me." }, { "slug": "ROUTE4ME_LIST_OPTIMIZATION_PROFILES", "name": "List Optimization Profiles", "description": "Tool to retrieve optimization profiles with settings and configuration details. Use when you need to view available optimization profiles, check profile settings, or select a profile for route optimization." }, { "slug": "ROUTE4ME_LIST_OPTIMIZATIONS", "name": "List Optimizations", "description": "Tool to get a list of all optimizations or retrieve a single optimization by ID. Use when you need to view optimization details, check optimization status, or filter optimizations by state or date range." }, { "slug": "ROUTE4ME_LIST_ORDER_CUSTOM_FIELDS", "name": "List Order Custom Fields", "description": "Tool to retrieve all order custom field definitions from Route4Me v5.0 API. Use when you need to understand what custom fields are available for orders, including their types, labels, and configuration details." }, { "slug": "ROUTE4ME_LIST_ROUTE_DIRECTIONS", "name": "List Route Directions", "description": "Tool to get detailed route directions including turn-by-turn navigation information for each stop. Use when you need comprehensive direction details for a specific route including stop sequences, addresses, coordinates, and status information." }, { "slug": "ROUTE4ME_LIST_TEAM_USERS", "name": "List Team Users", "description": "Tool to get the list of team members/users in the account. Use when you need to view all members, their roles, permissions, and contact information." }, { "slug": "ROUTE4ME_LIST_USERS_BY_IDS", "name": "List Users By IDs", "description": "Tool to retrieve detailed information about team members by their member IDs. Use when you need to get specific user details for one or more members by their IDs." }, { "slug": "ROUTE4ME_LIST_USERS_PAGINATED", "name": "List Team Users (Paginated)", "description": "Tool to get a paginated list of team members/users in the account. Use when you need to retrieve team members with pagination support, search filtering, or when dealing with large teams where retrieving all users at once is not practical." }, { "slug": "ROUTE4ME_LOOKUP_FOR_NEW_DESTINATION", "name": "Lookup For New Destination", "description": "Tool to lookup optimal routes for inserting a new destination. Use when you need to find the best existing route(s) to add a new stop to, based on distance or time optimization." }, { "slug": "ROUTE4ME_MERGE_ROUTES", "name": "Merge Routes", "description": "Tool to merge multiple routes into a single target route. Use when consolidating routes to optimize delivery operations or reduce the number of active routes." }, { "slug": "ROUTE4ME_MOVE_ROUTE", "name": "Move Route Destination", "description": "Tool to move a destination from one route to another. Use when reorganizing routes or reassigning stops between different routes." }, { "slug": "ROUTE4ME_PREVIEW_ROUTE_ASSIGNMENT", "name": "Preview Route Assignment", "description": "Tool to generate a preview of route assignments based on filters, grouping, sorting, and assignment strategy without applying changes. Returns grouped results and subtotals for review before actual assignment." }, { "slug": "ROUTE4ME_RERUN_OPTIMIZATION", "name": "Re-run Optimization", "description": "Tool to re-optimize an existing optimization problem by updating route parameters and/or addresses. Use when you need to modify an existing route optimization with new parameters or address changes." }, { "slug": "ROUTE4ME_REVERSE_GEOCODE_ADDRESS", "name": "Reverse Geocode Address", "description": "Tool to reverse geocode coordinates to obtain an address. Use when you need to convert latitude/longitude coordinates into a human-readable street address." }, { "slug": "ROUTE4ME_SET_DESTINATION_STATUS", "name": "Set Destination Status", "description": "Tool to set or update the status of a route destination. Use after confirming deliveries to mark stops as visited or departed." }, { "slug": "ROUTE4ME_SET_ROUTE_RATING", "name": "Set Route Rating", "description": "Tool to set a rating for a route. Use when you need to record user feedback or satisfaction level for a completed route." }, { "slug": "ROUTE4ME_SET_TRACKING", "name": "Set Route Tracking Data", "description": "Tool to insert tracking data for a route. Use when you need to update the real-time location and status of a vehicle or driver on a route." }, { "slug": "ROUTE4ME_UPDATE_ADDRESS", "name": "Update Address", "description": "Tool to update an existing address in the Route4Me address book. Use when you need to modify contact details, location information, or time windows for an address." }, { "slug": "ROUTE4ME_UPDATE_AVOIDANCE", "name": "Update Avoidance Zone", "description": "Tool to update an existing avoidance zone. Use when you need to modify the name, color, or geographic boundaries of an avoidance zone for route planning." }, { "slug": "ROUTE4ME_UPDATE_LOCATION_TYPE", "name": "Update Location Type", "description": "Tool to update an existing location type in the address book. Use when you need to modify location type details such as name, parent/child type status, or description." }, { "slug": "ROUTE4ME_UPDATE_MEMBER_CONFIGURATION_SETTING", "name": "Update Member Configuration Setting", "description": "Tool to update a member configuration setting. Use when you need to modify account-level configuration values such as notification preferences, feature flags, or service provider settings." }, { "slug": "ROUTE4ME_UPDATE_NOTE_CUSTOM_TYPE", "name": "Update Custom Note Type", "description": "Tool to update an existing custom note type in Route4Me. Use when you need to modify the name or values of a custom note type." }, { "slug": "ROUTE4ME_UPDATE_OPTIMIZATION_PROFILE", "name": "Update Optimization Profile", "description": "Tool to update an existing optimization profile. Use when you need to modify routing preferences, constraints, or settings for route optimization." }, { "slug": "ROUTE4ME_UPDATE_ORDER_CUSTOM_FIELD", "name": "Update Order Custom Field", "description": "Tool to update an existing order custom field in Route4Me. Use when you need to modify the label, type, or configuration of a custom field for orders." }, { "slug": "ROUTE4ME_UPDATE_ROUTES", "name": "Update Routes", "description": "Tool to bulk update multiple routes in a single operation. Use when you need to update route names, optimization settings, duration constraints, or reassign multiple routes to team members efficiently." }, { "slug": "ROUTE4ME_UPDATE_ROUTE_SETTINGS", "name": "Update Route Settings", "description": "Tool to update route settings including optimization parameters, distance units, and device types. Use when you need to modify route configuration such as optimization criteria, distance measurement units, or device-specific settings." }, { "slug": "ROUTE4ME_UPDATE_ROUTE_V4", "name": "Update Route V4", "description": "Tool to update route parameters and addresses in Route4Me. Use when you need to modify route name, optimization settings, duration constraints, or reassign routes to team members." }, { "slug": "ROUTE4ME_UPDATE_TERRITORY", "name": "Update Territory", "description": "Tool to update an existing territory. Use when you need to modify the name, color, or geographic boundaries of a territory for route planning and organization." }, { "slug": "ROUTE4ME_UPDATE_VEHICLE_CAPACITY_PROFILE_BY_ID", "name": "Update Vehicle Capacity Profile By ID", "description": "Tool to update an existing vehicle capacity profile by ID. Use when you need to modify capacity constraints such as weight, volume, item count, or revenue limits for a specific vehicle profile." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "route4me_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Route4Me API Key", "type": "string", "description": "Your unique Route4Me API key, required for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "rudderstack_transformation", "name": "RudderStack Transformation", "logo": "https://logos.composio.dev/api/rudderstack_transformation", "description": "RudderStack Transformation API allows you to manage transformations and libraries for customer data pipelines. Use it to create, update, and delete transformations programmatically.", "category": "analytics", "authSchemes": [ "BASIC" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RUDDERSTACK_TRANSFORMATION_CREATE_LIBRARY", "name": "Create Library", "description": "Tool to create a library in RudderStack Transformation. Use when you need to create reusable JavaScript or Python code that can be imported in transformations. Libraries enable code reusability and version maintenance." }, { "slug": "RUDDERSTACK_TRANSFORMATION_CREATE_TRANSFORMATION", "name": "Create Transformation", "description": "Tool to create a RudderStack transformation. When publish=false (default), creates an unpublished transformation not available to event traffic. When publish=true, publishes the transformation making it live for incoming events and connectable to destinations." }, { "slug": "RUDDERSTACK_TRANSFORMATION_DELETE_TRANSFORMATION", "name": "Delete Transformation", "description": "Delete a published transformation by ID. Note that RudderStack never deletes a transformation revision. Use this when you need to remove a transformation from the system." }, { "slug": "RUDDERSTACK_TRANSFORMATION_GET_LIBRARY", "name": "Get library by ID", "description": "Retrieves a single published library by its unique identifier. Use when you need to fetch details of a specific library." }, { "slug": "RUDDERSTACK_TRANSFORMATION_GET_LIBRARY_VERSION", "name": "Get Library Version", "description": "Tool to retrieve a single library version by library ID and version ID. Use when you need to fetch details of a specific library revision in RudderStack transformations." }, { "slug": "RUDDERSTACK_TRANSFORMATION_GET_TRANSFORMATION", "name": "Get Transformation", "description": "Tool to retrieve a published transformation by its ID from RudderStack. Use when you need to fetch details about a specific transformation including its code, version, and associated destinations." }, { "slug": "RUDDERSTACK_TRANSFORMATION_GET_TRANSFORMATION_VERSION", "name": "Get Transformation Version", "description": "Retrieve a single transformation revision by transformation ID and version ID. Use when you need to get details about a specific version of a RudderStack transformation." }, { "slug": "RUDDERSTACK_TRANSFORMATION_LIST_LIBRARIES", "name": "List All Libraries", "description": "Tool to retrieve all published libraries for a workspace. Use when you need to list available libraries for transformations." }, { "slug": "RUDDERSTACK_TRANSFORMATION_LIST_LIBRARY_VERSIONS", "name": "List Library Versions", "description": "Tool to get all library revisions for a library ID. Use when you need to retrieve all versions of a specific library in RudderStack Transformation." }, { "slug": "RUDDERSTACK_TRANSFORMATION_LIST_TRANSFORMATIONS", "name": "List All Transformations", "description": "Tool to retrieve all published transformations for a workspace. Use when you need to list available transformations or find a specific transformation by name." }, { "slug": "RUDDERSTACK_TRANSFORMATION_LIST_TRANSFORMATION_VERSIONS", "name": "List Transformation Versions", "description": "Tool to list all transformation versions (revisions) for a given transformation ID. Use when you need to retrieve the version history of a specific transformation." }, { "slug": "RUDDERSTACK_TRANSFORMATION_UPDATE_TRANSFORMATION", "name": "Update Transformation", "description": "Tool to update and optionally publish a RudderStack transformation. Use when you need to modify a transformation's name, description, or code. Updating creates a new revision and sets it as published if the publish flag is true." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "rudderstack_transformation_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your RudderStack region: US (api.rudderstack.com) or EU (api.eu.rudderstack.com)", "required": true, "default": "us" }, { "name": "username", "displayName": "Email Address", "type": "string", "description": "Your RudderStack account email address (e.g., name@surname.com)", "required": true, "default": null }, { "name": "password", "displayName": "Personal Access Token", "type": "string", "description": "Your RudderStack Personal Access Token or Service Access Token. Generate from Settings > Your Profile > Account > Personal access tokens", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "runpod", "name": "RunPod", "logo": "https://logos.composio.dev/api/runpod", "description": "The Cloud Built for AI - GPU cloud computing platform for AI and machine learning workloads", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "RUNPOD_CREATE_CLUSTER", "name": "Create RunPod Cluster", "description": "Tool to create a new GPU cluster for multi-node distributed computing workloads on RunPod. Use when you need to deploy multiple pods with shared configuration for parallel processing, ML training, or HPC workloads." }, { "slug": "RUNPOD_CREATE_SECRET", "name": "Create Secret", "description": "Tool to create a new secure secret in RunPod for credential management. Use when you need to store sensitive values like API keys, passwords, or tokens that will be accessible in pods and endpoints via environment variables (RUNPOD_SECRET_)." }, { "slug": "RUNPOD_DELETE_REGISTRY_AUTH", "name": "Delete Container Registry Authentication", "description": "Tool to delete container registry authentication from RunPod. Use when you need to remove stored registry credentials." }, { "slug": "RUNPOD_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to remove a RunPod template via GraphQL mutation. Use when you need to delete a template that is no longer needed. The template must not be in use by any pods or assigned to any serverless endpoints, otherwise the operation will fail." }, { "slug": "RUNPOD_GET_GPU_TYPES", "name": "Get GPU Types", "description": "Tool to retrieve available GPU types and their specifications, pricing, and availability from RunPod. Use when you need to find GPU options for deployment." }, { "slug": "RUNPOD_GET_MYSELF", "name": "Get authenticated user info", "description": "Retrieve basic information about the authenticated user including ID, email, and security settings. Use this to get the current user's ID, email address, terms of service status, and MFA settings. Note: Access to financial fields (balance, spending, etc.) requires elevated API key permissions." }, { "slug": "RUNPOD_GET_POD", "name": "Get Pod Details", "description": "Retrieve details of a specific RunPod pod by its unique pod ID. Returns pod configuration including GPU count, memory, cost, and status. Use when you need to check the current state or configuration of an existing pod." }, { "slug": "RUNPOD_LIST_CPU_TYPES", "name": "List CPU Types", "description": "Tool to retrieve available CPU types and their specifications from RunPod. Use when you need to view CPU options for provisioning pods or selecting hardware configurations." }, { "slug": "RUNPOD_SAVE_ENDPOINT", "name": "Save Serverless Endpoint", "description": "Tool to create or update a RunPod serverless endpoint with GPU configuration and scaling settings. Use when configuring new GPU-accelerated serverless endpoints or modifying existing endpoint parameters. Include 'id' parameter to update an existing endpoint, omit it to create a new one." }, { "slug": "RUNPOD_SAVE_REGISTRY_AUTH", "name": "Save Container Registry Authentication", "description": "Tool to save container registry authentication credentials for accessing private Docker images in RunPod. Use when you need to store credentials for a private container registry." }, { "slug": "RUNPOD_SAVE_TEMPLATE", "name": "Save Template", "description": "Tool to create a new RunPod template or update an existing one with container configuration. Use when you need to define reusable pod/serverless configurations with specific images, environment variables, and resource allocations. For serverless templates, always set volumeInGb to 0." }, { "slug": "RUNPOD_UPDATE_REGISTRY_AUTH", "name": "Update Registry Auth", "description": "Tool to update existing container registry authentication credentials in RunPod. Use when you need to modify the username or password for an existing registry authentication." }, { "slug": "RUNPOD_UPDATE_USER_SETTINGS", "name": "Update User Settings", "description": "Tool to update current user settings (e.g., SSH public key) in RunPod. Use when you need to configure SSH access to pods by setting the user's SSH public key." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "runpod_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from \"Account\" > \"Settings\" > \"API Keys\" at https://www.console.runpod.io/user/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "runware", "name": "Runware", "logo": "https://logos.composio.dev/api/runware", "description": "Low Cost, Ultra-Fast Stable Diffusion API for image generation, editing, and AI-powered image processing", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "runware_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from \"Manage\" > \"API Keys\" at https://my.runware.ai/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "safetyculture", "name": "SafetyCulture", "logo": "https://logos.composio.dev/api/safetyculture", "description": "SafetyCulture (formerly iAuditor) is a workplace operations platform that enables teams to conduct digital inspections, manage audits, track issues, schedule tasks, and maintain compliance through mobile and web applications.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 255, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SAFETYCULTURE_ADD_FILE_OWNERS_BULK", "name": "Bulk Add File Owners", "description": "Tool to bulk add file owners to multiple files in Documents. Adds owners (users or groups) to files without removing existing owners. Use when you need to grant ownership access to multiple files at once for users or groups." }, { "slug": "SAFETYCULTURE_ADD_INCIDENT_COLLABORATORS", "name": "Add Incident Collaborators", "description": "Tool to add collaborators (assignees) to an incident in SafetyCulture. Use when you need to assign users, groups, or external users to an existing incident for tracking responsibility and collaboration." }, { "slug": "SAFETYCULTURE_ARCHIVE_ASSET", "name": "Archive Asset", "description": "Archives an asset in your SafetyCulture organization. Use when you need to archive an asset without permanently deleting it. Archived assets can typically be restored later if needed." }, { "slug": "SAFETYCULTURE_ARCHIVE_DOCUMENT_ITEM", "name": "Archive Document Item", "description": "Tool to archive a document item (file or folder) in SafetyCulture. Use when you need to archive a document or folder without permanently deleting it. Archived items can be restored later if needed." }, { "slug": "SAFETYCULTURE_ASSIGN_PERMISSION_SET", "name": "Assign Permission Set", "description": "Tool to assign users to a permission set. Use when you need to grant a group of permissions to one or more users at once. Either provide the permission set ID (recommended) or name. The assignment takes effect immediately." }, { "slug": "SAFETYCULTURE_CANCEL_CREATE_OR_UPDATE_USERS_JOB", "name": "Cancel Create or Update Users Job", "description": "Tool to cancel a create-or-update users job. Use when you need to stop a previously initiated job for creating or updating users. This prevents the job from executing if it hasn't started yet." }, { "slug": "SAFETYCULTURE_CLONE_INCIDENTS_CATEGORY", "name": "Clone Incidents Category", "description": "Tool to clone an existing incident category in SafetyCulture. Use when you need to duplicate a category with its configuration for use in different contexts or as a template." }, { "slug": "SAFETYCULTURE_CREATE_ACTION", "name": "Create Action", "description": "Tool to create a new action in SafetyCulture. Use when you need to create tasks, action items, or corrective actions that need to be tracked and completed." }, { "slug": "SAFETYCULTURE_CREATE_ACTION_SCHEDULE", "name": "Create Action Schedule", "description": "Tool to create a recurring action schedule in SafetyCulture. Use when you need to set up actions that repeat on a regular basis (daily, weekly, monthly, etc.). The schedule immediately creates the first action and then generates subsequent actions based on the recurrence rule." }, { "slug": "SAFETYCULTURE_CREATE_ASSET", "name": "Create Asset", "description": "Creates a new asset in your SafetyCulture organization with the specified asset type, field values, and optional site assignment. Use when you need to add physical or logical assets to your organization for tracking and management purposes." }, { "slug": "SAFETYCULTURE_CREATE_ASSET_FIELD", "name": "Create Asset Field", "description": "Creates a custom field for assets in your SafetyCulture organization. Use when you need to add custom metadata fields to track additional information about your assets like serial numbers, locations, priority levels, or any other custom attributes." }, { "slug": "SAFETYCULTURE_CREATE_ASSETS_BULK", "name": "Bulk Create Assets", "description": "Creates multiple assets in a single request. Use when you need to efficiently create multiple assets at once rather than making individual API calls for each asset. Returns separate lists of successfully created assets and failed assets with error details for troubleshooting." }, { "slug": "SAFETYCULTURE_CREATE_ASSET_TYPE", "name": "Create Asset Type", "description": "Creates a new asset type for your SafetyCulture organization. Asset types are used to categorize and organize assets (such as equipment, vehicles, or facilities) for better tracking and management. Returns the newly created asset type's unique identifier." }, { "slug": "SAFETYCULTURE_CREATE_CREDENTIALS_CREDENTIAL_TYPE", "name": "Create Credential Type", "description": "Creates a new credential type in SafetyCulture. Credential types are used to categorize and track licenses, certifications, and other credentials for users in your organization. Returns the unique identifier of the newly created credential type." }, { "slug": "SAFETYCULTURE_CREATE_DIRECTORY_FOLDER", "name": "Create Directory Folder", "description": "Creates a new folder in the SafetyCulture directory hierarchy. Use when you need to organize sites, locations, or other hierarchical structures within your organization." }, { "slug": "SAFETYCULTURE_CREATE_DIRECTORY_USERS_FOLDERS_MEMBERSHIP", "name": "Create Directory Users Folders Membership", "description": "Tool to associate users to folders in the SafetyCulture directory. Use when you need to add one or more users to one or more folders, establishing membership associations between users and organizational folders." }, { "slug": "SAFETYCULTURE_CREATE_DOCUMENTS", "name": "Create Documents", "description": "Tool to create a new file in SafetyCulture Documents and get an upload URL. Use when you need to create a file placeholder in a specific folder and obtain a temporary upload URL to upload the file's binary content. The upload URL is valid for 20 minutes." }, { "slug": "SAFETYCULTURE_CREATE_GROUP", "name": "Create Group", "description": "Creates a new group in the SafetyCulture organization. Groups are used to organize users by roles, departments, or functions for easier management of permissions and access control. Returns the newly created group's ID and name." }, { "slug": "SAFETYCULTURE_CREATE_HEADS_UP_ANNOUNCEMENT", "name": "Create Heads Up Announcement", "description": "Creates a new Heads Up announcement in SafetyCulture. Heads Up announcements are used to communicate important information, safety alerts, or updates to specific users in your organization. Use this when you need to send targeted communications that require user acknowledgement." }, { "slug": "SAFETYCULTURE_CREATE_INCIDENTS_CATEGORIES", "name": "Create Incidents Category", "description": "Tool to create a new incident category in SafetyCulture. Use when you need to add a new category for organizing and classifying incidents within your organization." }, { "slug": "SAFETYCULTURE_CREATE_INCIDENTS_DETAIL_FIELD", "name": "Create Incidents Detail Field", "description": "Tool to create a new incident detail field in SafetyCulture. Use when you need to add custom fields to incident forms for capturing additional information like severity levels, root causes, affected areas, or any other incident-specific data." }, { "slug": "SAFETYCULTURE_CREATE_INCIDENTS_INVESTIGATIONS", "name": "Create Incidents Investigation", "description": "Tool to create a new investigation in SafetyCulture. Use when you need to create an investigation from a category template for incident tracking and management." }, { "slug": "SAFETYCULTURE_CREATE_INCIDENTS_OSHA_CASE", "name": "Create OSHA Case", "description": "Tool to create an OSHA case record in SafetyCulture. Use when you need to document workplace injuries, illnesses, or incidents that require OSHA reporting." }, { "slug": "SAFETYCULTURE_CREATE_INCIDENTS_OSHA_ESTABLISHMENTS", "name": "Create OSHA Establishment", "description": "Tool to create a new OSHA establishment record in SafetyCulture. Use when you need to register a new workplace establishment for OSHA compliance tracking and incident reporting." }, { "slug": "SAFETYCULTURE_CREATE_INTEGRATION_CONFIGURATION", "name": "Create Integration Configuration", "description": "Creates a configuration for an existing application installation in your organization. Use when you need to configure an installed integration app with external web experience settings like iframe URLs and display locations." }, { "slug": "SAFETYCULTURE_CREATE_INTEGRATIONS_APPS_INSTALLATIONS", "name": "Create Integration App Installation", "description": "Creates an installation of an existing application in your organization. Use when you need to install an application to enable integration functionality." }, { "slug": "SAFETYCULTURE_CREATE_SCHEDULES_SCHEDULE_ITEMS", "name": "Create Schedule Item", "description": "Tool to create a schedule item in SafetyCulture. Use when you need to set up recurring inspections or tasks that should be completed on a regular schedule. The schedule will automatically generate inspection instances based on the recurrence rule and assign them to the specified users or groups." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_ACTIONS_SHARED_LINK", "name": "Create Action Shared Link", "description": "Tool to create a shared link for an action in SafetyCulture. Use when you need to generate a URL that can be shared with unauthenticated users to give them access to view the action." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_CUSTOM_FIELD", "name": "Create Tasks Custom Field", "description": "Tool to create a custom field and map it to a specific action type in SafetyCulture. Use when you need to add custom metadata fields to task types for tracking additional information." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_INCIDENTS", "name": "Create Incident (Legacy)", "description": "Tool to create an incident (legacy issue) in SafetyCulture. Use when you need to report and track an incident or issue in your organization. Note: This is a legacy endpoint marked for deprecation." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_SHARED_LINK_WEB_REPORT", "name": "Create Issue Web Report Link", "description": "Tool to create a shared link for an issue's web report in SafetyCulture. Use when you need to generate a shareable URL that points to the issue's public web report for external access." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_TASK_TYPE", "name": "Create Tasks Task Type", "description": "Tool to create a new task type in SafetyCulture. Use when you need to define a new category or classification for tasks in your organization. Task types help organize and categorize actions for better tracking and management." }, { "slug": "SAFETYCULTURE_CREATE_TASKS_TIMELINE_COMMENTS", "name": "Create Task Timeline Comment", "description": "Tool to add a comment to a task timeline in SafetyCulture. Use when you need to document updates, notes, or communication on a specific task." }, { "slug": "SAFETYCULTURE_CREATE_USER_FIELD", "name": "Create User Field", "description": "Tool to create a custom user field in SafetyCulture. Use when you need to add custom metadata fields to user profiles for tracking additional information like department, employee ID, office location, or any other custom user attributes." }, { "slug": "SAFETYCULTURE_CREATE_WEBHOOKS_WEBHOOKS", "name": "Create Webhook", "description": "Tool to create a webhook in SafetyCulture. Use when you need to register a webhook that will be triggered by specific events such as inspection completion, action creation, or incident updates." }, { "slug": "SAFETYCULTURE_DELETE_ACTIONS", "name": "Delete Actions", "description": "Tool to bulk delete multiple actions from SafetyCulture. Use when you need to permanently remove one or more actions. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_ASSET", "name": "Delete Asset", "description": "Permanently deletes an asset from your SafetyCulture organization. Use when you need to remove an asset that is no longer needed or was created in error. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_ASSET_FIELD", "name": "Delete Asset Field", "description": "Permanently deletes a custom asset field from your SafetyCulture organization. Use when you need to remove a custom field that is no longer needed or was created in error. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_ASSET_TYPE", "name": "Delete Asset Type", "description": "Permanently deletes a custom asset type from your SafetyCulture organization. Use when you need to remove a custom asset type that is no longer needed or was created in error. Note: Asset types cannot be deleted if they have assets associated with them." }, { "slug": "SAFETYCULTURE_DELETE_CREDENTIALS_CREDENTIAL_TYPE", "name": "Delete Credential Type", "description": "Permanently deletes a credential type from your SafetyCulture organization. Use when you need to remove a credential type that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_CUSTOMER_CONFIGURATION_ACTION_LABELS", "name": "Delete Action Labels", "description": "Tool to delete action labels from your SafetyCulture organization. Use when you need to permanently remove one or more action labels. The label IDs must be valid UUIDs and must exist in your organization." }, { "slug": "SAFETYCULTURE_DELETE_DIRECTORY_FOLDERS", "name": "Delete Directory Folders", "description": "Tool to bulk delete directory folders. Use when you need to delete one or more folders. When deleting folders that have children, those children will also be deleted (cascade down). This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_DIRECTORY_FOLDER_USERS", "name": "Delete Directory Folder Users", "description": "Remove association for multiple users from a specific folder. Use when you need to disassociate member users from a directory folder in your SafetyCulture organization." }, { "slug": "SAFETYCULTURE_DELETE_DIRECTORY_USER_FOLDERS", "name": "Delete Directory User Folders", "description": "Remove association for a specific user to multiple folders. Use when you need to disassociate a user from one or more directory folders in your SafetyCulture organization." }, { "slug": "SAFETYCULTURE_DELETE_GROUPS", "name": "Bulk Delete Groups", "description": "Tool to bulk delete multiple groups from the SafetyCulture organization. Use when you need to delete multiple groups at once. Accepts a list of group UUIDs and returns the results of each deletion operation, including both successful and unsuccessful attempts." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS", "name": "Delete Incidents", "description": "Tool to bulk delete multiple incidents (issues) from your SafetyCulture organization. Use when you need to permanently remove incidents that are no longer needed or were created in error. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS_CATEGORIES", "name": "Delete Incident Category", "description": "Permanently deletes an incident category from your SafetyCulture organization. Use when you need to remove a category that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS_DETAIL_FIELDS", "name": "Delete Incident Detail Field", "description": "Permanently deletes an incident detail field from your SafetyCulture organization. Use when you need to remove a detail field that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS_INVESTIGATIONS", "name": "Delete Investigation", "description": "Permanently deletes an investigation from your SafetyCulture organization. Use when you need to remove an investigation that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS_OSHA_CASES", "name": "Delete Incidents OSHA Case", "description": "Tool to permanently delete an OSHA case from SafetyCulture. Use when you need to remove an OSHA case that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_INCIDENTS_OSHA_ESTABLISHMENTS", "name": "Delete OSHA Establishment", "description": "Permanently deletes an OSHA establishment from your SafetyCulture organization. Use when you need to remove an OSHA establishment that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_INTEGRATIONS_APPS_INSTALLATI_CONFIGURAT", "name": "Delete Integration Configuration", "description": "Deletes a configuration for an existing application installation in SafetyCulture. Use when you need to remove a specific configuration from an integration installation by providing the application ID, installation ID, and configuration ID." }, { "slug": "SAFETYCULTURE_DELETE_INTEGRATIONS_APPS_INSTALLATIONS", "name": "Delete Integration App Installation", "description": "Deletes an existing application installation from SafetyCulture. Use when you need to remove an integration installation by providing both the application and installation unique IDs." }, { "slug": "SAFETYCULTURE_DELETE_TASKS_ACTIONS_SHARED_LINK", "name": "Delete Action Shared Link", "description": "Tool to delete (revoke) an action shared link in SafetyCulture. Use when you need to remove access to an action link that was previously created via the API or the SafetyCulture app. This prevents further access via the shared link." }, { "slug": "SAFETYCULTURE_DELETE_TASKS_CUSTOM_FIELD", "name": "Delete Tasks Custom Field", "description": "Permanently deletes a custom field from your SafetyCulture tasks configuration. Use when you need to remove a custom field that is no longer needed or was created in error. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_TASKS_TASK_TYPE", "name": "Delete Action Type", "description": "Tool to delete an action type in SafetyCulture. Use when you need to permanently remove an action type that is no longer needed or was created in error. This operation cannot be undone." }, { "slug": "SAFETYCULTURE_DELETE_USERS_FIELDS", "name": "Delete User Field", "description": "Tool to permanently delete a user field from your SafetyCulture organization. Use when you need to remove a custom user field that is no longer needed or was created in error." }, { "slug": "SAFETYCULTURE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Permanently deletes a webhook from your SafetyCulture organization. Use when you need to remove a webhook subscription that is no longer needed or was configured incorrectly." }, { "slug": "SAFETYCULTURE_DEPROVISION_SENSOR", "name": "Deprovision Sensor", "description": "De-provisions a sensor from SafetyCulture. Use when you need to remove a sensor that is no longer in use or needs to be disconnected from the system." }, { "slug": "SAFETYCULTURE_DISABLE_USER_FIELD", "name": "Disable User Field", "description": "Tool to archive a user field in SafetyCulture. Use when you need to disable or archive a user field without permanently deleting it." }, { "slug": "SAFETYCULTURE_GET_ACTION_ASSIGNEES_FEED", "name": "Get Action Assignees Feed", "description": "Tool to retrieve the data feed for action assignees. Use when you need to fetch or sync action assignee information from SafetyCulture." }, { "slug": "SAFETYCULTURE_GET_ACTIONS", "name": "Get Actions", "description": "Tool to list actions from SafetyCulture tasks API. Use when you need to retrieve actions with filtering, sorting, and pagination options." }, { "slug": "SAFETYCULTURE_GET_ASSET", "name": "Get Asset", "description": "Tool to retrieve full details of an asset from SafetyCulture. Use when you need complete information about a specific asset including its identifiers, timestamps, type, associated site, media, and custom fields." }, { "slug": "SAFETYCULTURE_GET_ASSET_BY_CODE", "name": "Get Asset By Code", "description": "Tool to retrieve an asset's full details using its code. Use when you need to look up a specific asset by its user-defined code identifier rather than the system-generated ID." }, { "slug": "SAFETYCULTURE_GET_ASSETS_FEED", "name": "Get Assets Feed", "description": "Tool to retrieve a data feed of all assets in your SafetyCulture organization. Use when you need to export or synchronize asset data, or when you need to access all assets without complex filtering." }, { "slug": "SAFETYCULTURE_GET_ASSET_TYPE", "name": "Get Asset Type", "description": "Retrieves details of a specific asset type by ID. Use when you need to get information about an asset type including its name and category (predefined or custom)." }, { "slug": "SAFETYCULTURE_GET_CREDENTIALS_SETTINGS", "name": "Get Credential Settings", "description": "Tool to retrieve credential settings for your SafetyCulture organization. Use when you need to check if approvals are enabled for credentials or if media is optional when creating credentials." }, { "slug": "SAFETYCULTURE_GET_CREDENTIAL_TYPE", "name": "Get Credential Type", "description": "Tool to retrieve details of a specific credential type by ID. Use when you need to get information about a credential type including its name, description, domain, category, and associated statistics." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_FOLDER", "name": "Get Directory Folder", "description": "Retrieves details of a specific directory folder by ID. Use when you need to get information about a folder including its name, creation details, and optionally its ancestors or total children count." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_FOLDER_USERS", "name": "Get Directory Folder Users", "description": "Retrieves users associated with a directory folder, including both directly and indirectly (inherited) associated users. Use when you need to find all users who have access to a specific folder." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_FOLDER_USERS_ASSOCIATED", "name": "Get Directory Folder Users Associated", "description": "Tool to retrieve users directly associated to a folder. Use when you need to get the list of users who have been granted a \"MEMBER\" association with a specific folder in the SafetyCulture directory." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_FOLDER_USERS_INHERITED", "name": "Get Directory Folder Users Inherited", "description": "Retrieves users indirectly associated (inherited) to a folder. Use when you need to get all users who have inherited access to a folder through parent folder memberships." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_ORGANIZATION_LABELS", "name": "Get Directory Organization Labels", "description": "Tool to retrieve custom labels mapping for your SafetyCulture organization. Use when you need to get the mapping of meta-labels to their custom label counterparts for display purposes." }, { "slug": "SAFETYCULTURE_GET_DIRECTORY_PARENT_FOLDERS", "name": "Get Folders By Parent", "description": "Retrieves child folders for a specific parent folder by ID. Use when you need to list all folders that belong to a parent folder in the directory hierarchy." }, { "slug": "SAFETYCULTURE_GET_DOCUMENTS", "name": "Get Documents", "description": "Tool to retrieve a paginated list of credentials from SafetyCulture. Lists the latest version of credentials based on applied filters such as approval status, companies, document types, expiry status, groups, sites, users, and user status. Use when you need to query credentials with specific criteria or fetch all credentials with pagination." }, { "slug": "SAFETYCULTURE_GET_INCIDENT_QUESTIONS_AND_ANSWERS", "name": "Get Incident Questions And Answers", "description": "Tool to retrieve questions and answers for a specific incident (issue) in SafetyCulture. Use when you need to access the questions asked and answers provided for an incident." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_CATEGORIES_DETAIL_FIELDS", "name": "Get Category Detail Fields", "description": "Tool to retrieve detail fields for a specific incident category. Use when you need to understand what fields are available for a category or when building forms for incident data collection." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_COUNT", "name": "Get Incidents Count", "description": "Tool to get the total count of incidents (issues) in SafetyCulture. Returns the total number of incidents in the system. For filtered counts, use the List Tasks Incidents action which provides count along with incident details." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_INVESTIGATION", "name": "Get Incidents Investigation", "description": "Tool to retrieve a specific investigation from SafetyCulture. Use when you need to get complete details of an investigation including its title, description, status, owner, category, and all associated fields." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_OSHA_ESTABLISHMENT_EMPLOYEES", "name": "Get Incidents OSHA Establishment Employees", "description": "Tool to retrieve establishment employee records from SafetyCulture OSHA. Use when you need to get the average number of employees for a specific establishment across different years." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_OSHA_ESTABLISHMENTS", "name": "Get OSHA Establishment", "description": "Tool to retrieve an OSHA establishment record from SafetyCulture. Use when you need to get details about a specific OSHA establishment including company information, location, industry classification, and size." }, { "slug": "SAFETYCULTURE_GET_INCIDENTS_OSHA_ESTABLISHM_HOURS", "name": "Get Establishment Hours", "description": "Tool to retrieve establishment hours from SafetyCulture OSHA service. Use when you need to get the hours worked by an establishment for OSHA reporting purposes, including monthly and yearly filing information." }, { "slug": "SAFETYCULTURE_GET_INTEGRATIONS_APPS_INSTALLATION", "name": "Get Integrations Apps Installation", "description": "Tool to retrieve details of a specific app installation by its app ID and installation ID. Use when you need to view an existing application installation's configuration and details." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_ACCESS", "name": "Get Investigation Access", "description": "Tool to retrieve access information for a specific investigation. Use when you need to see which users have access to an investigation and their permission levels." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_ACTIONS_COUNT", "name": "Get Investigation Actions Count", "description": "Tool to retrieve the count of actions linked to a specific investigation in SafetyCulture. Use when you need to know how many actions are associated with an investigation, optionally filtered by search criteria." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_INSPECTION_COUNT", "name": "Get Investigation Inspection Count", "description": "Tool to retrieve the count of inspections linked to a specific investigation. Use when you need to know how many inspections are associated with an investigation or when filtering inspections by search criteria." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_ISSUE_COUNT", "name": "Get Investigation Issue Count", "description": "Tool to get the count of issues linked to an investigation. Use when you need to know how many issues are associated with a specific investigation, optionally filtered by search text." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_MEDIA_COUNT", "name": "Get Investigation Media Count", "description": "Tool to retrieve the count of media linked to an investigation in SafetyCulture. Use when you need to know how many media files (images, videos, documents) are associated with a specific investigation." }, { "slug": "SAFETYCULTURE_GET_INVESTIGATION_PDF_REPORT", "name": "Get Investigation PDF Report", "description": "Tool to retrieve the PDF report for a specific investigation. Use when you need to download the complete investigation report as a PDF file." }, { "slug": "SAFETYCULTURE_GET_LESSON_ATTEMPTS", "name": "Get Lesson Attempts", "description": "Tool to retrieve all lesson attempts for users in your organization. Use when you need to analyze training progress, track user performance, or generate reports on lesson completion." }, { "slug": "SAFETYCULTURE_GET_LESSON_PROGRESS_EVENTS", "name": "Get Lesson Progress Events", "description": "Tool to retrieve all lesson progress events for users in your organization. Use when you need to track learning activity, monitor training engagement, or generate reports on lesson interactions." }, { "slug": "SAFETYCULTURE_GET_LESSON_STATISTICS", "name": "Get Lesson Statistics", "description": "Tool to retrieve lesson statistics for all lessons in your organization. Use when you need analytics on lesson engagement and completion rates." }, { "slug": "SAFETYCULTURE_GET_LONEWORKER_JOBS", "name": "Get Loneworker Jobs", "description": "Tool to retrieve all loneworker jobs in your organization. Use when you need to monitor active jobs, track worker safety, filter by status (active, overtime, panic, finished), or search for specific jobs by user, group, or time range." }, { "slug": "SAFETYCULTURE_GET_PERMISSION_SET", "name": "Get Permission Set", "description": "Tool to retrieve a permission set from SafetyCulture. Use when you need to get details about a specific permission set including its configuration, assigned permissions, and optionally a preview of associated users." }, { "slug": "SAFETYCULTURE_GET_RAPID_REFRESH_ANSWERS", "name": "Get Rapid Refresh Answers", "description": "Tool to retrieve rapid refresh answers from your organization's training analytics. Use when you need to analyze user performance on rapid refresh questions, track answer patterns, or generate reports on training engagement." }, { "slug": "SAFETYCULTURE_GET_SENSORS_SENSORS_SENSOR_ID", "name": "Get Sensor ID", "description": "Tool to retrieve a sensor ID from SafetyCulture. Use when you need to get sensor identification details including the source_name and source_id that uniquely identify a sensor in your SafetyCulture organization." }, { "slug": "SAFETYCULTURE_GET_SIGNATURE_SECRET", "name": "Get Signature Secret", "description": "Retrieves the current webhook signature secret token from SafetyCulture. This token is essential for verifying the authenticity of incoming webhook payloads using HMAC-SHA256 signatures. After receiving a webhook, compare the signature you generate with this token against the 'x-safetyculture-signature' header value. Use this action when: - Setting up webhook verification for the first time - Validating webhook authenticity in your application - Checking if the signature secret has been rotated No parameters required - simply call to retrieve the current active token." }, { "slug": "SAFETYCULTURE_GET_SURVEY_ANSWERS", "name": "Get Survey Answers", "description": "Tool to retrieve survey answers from training analytics. Use when you need to analyze user responses to training surveys and assessments. This action returns detailed survey answer data including question content, answer content, timestamps, and user information. Apply filters to narrow down results by course, lesson, user, or date range. Use pagination to handle large result sets efficiently." }, { "slug": "SAFETYCULTURE_GET_SURVEY_QUESTION_DEFINITIONS", "name": "Get Survey Question Definitions", "description": "Tool to retrieve survey question definitions from training courses in your organization. Use when you need to analyze survey questions, build reporting, or understand the structure of course assessments." }, { "slug": "SAFETYCULTURE_GET_TASKS_ACTION_LABELS", "name": "Get Tasks Action Labels", "description": "Tool to retrieve all action labels configured in your SafetyCulture organization. Use when you need to list available action labels that can be assigned to actions." }, { "slug": "SAFETYCULTURE_GET_TASKS_ACTIONS", "name": "Get Tasks Actions", "description": "Tool to retrieve a specific action from SafetyCulture. Use when you need complete information about a task action including its details, status, associated task data, custom fields, and type information." }, { "slug": "SAFETYCULTURE_GET_TASKS_ACTIONS_SHARED_LINK", "name": "Get Action Shared Link", "description": "Tool to retrieve an existing action shared link. Use when you need to get the URL for unauthenticated access to a specific action that was previously created via the Create an action link endpoint or the SafetyCulture app." }, { "slug": "SAFETYCULTURE_GET_TASKS_CUSTOM_FIELDS_UNMAPPED", "name": "Get Tasks Custom Fields Unmapped", "description": "Tool to retrieve custom fields not mapped to a specific action type. Use when you need to identify available custom fields that can be added to an action type." }, { "slug": "SAFETYCULTURE_GET_TASKS_INCIDENT", "name": "Get Tasks Incident", "description": "Tool to retrieve a specific incident (issue) from SafetyCulture. Use when you need to get complete details of an incident including its category, task information, location, media, and linked inspections." }, { "slug": "SAFETYCULTURE_GET_TASKS_INCIDENTS_PDF_REPORT", "name": "Get Tasks Incidents PDF Report", "description": "Tool to export an incident (issue) to PDF from SafetyCulture. Use when you need to generate and retrieve a PDF report for a specific incident." }, { "slug": "SAFETYCULTURE_GET_TIMELINE", "name": "Get Timeline", "description": "Tool to retrieve timeline events for a SafetyCulture task. Use when you need to view the history of changes and activities associated with a specific task." }, { "slug": "SAFETYCULTURE_GET_TRAINING_COLLECTIONS", "name": "Get Training Collections", "description": "Tool to retrieve all training collections in your organization. Use when you need to list or browse available training collections with optional pagination and filtering by modified date." }, { "slug": "SAFETYCULTURE_GET_TRAINING_COURSES", "name": "Get Training Courses", "description": "Tool to retrieve all training courses in your organization. Use when you need to list, search, or filter courses by various criteria like publication status, locale, assigned groups/sites, or user enrollment." }, { "slug": "SAFETYCULTURE_GET_TRAINING_COURSES_LESSONS", "name": "Get Training Course Lessons", "description": "Tool to retrieve all lessons for a given training course. Use when you need to get the list of lessons that belong to a specific course, including lesson details like title, description, status, and minimum passing score." }, { "slug": "SAFETYCULTURE_GET_TRAINING_COURSES_STATISTICS", "name": "Get Training Courses Statistics", "description": "Tool to retrieve course statistics for all courses in your organization. Use when you need analytics on course enrollment, engagement, and completion rates." }, { "slug": "SAFETYCULTURE_GET_TRAINING_INDIVIDUAL_LEADERBOARDS", "name": "Get Training Individual Leaderboards", "description": "Tool to retrieve all individual leaderboards in your organization. Use when you need to view training leaderboard configurations and their associated participant groups." }, { "slug": "SAFETYCULTURE_GET_TRAINING_PATHS", "name": "Get Training Paths", "description": "Tool to retrieve learning paths from your SafetyCulture organization. Use when you need to list available training paths, check their publication status, or get path IDs for other operations." }, { "slug": "SAFETYCULTURE_GET_TRAINING_RAPID_REFRESH", "name": "Get Training Rapid Refresh", "description": "Tool to retrieve all rapid refreshes in your organization. Use when you need to list, filter, or search training rapid refreshes by various criteria like status, schedule, or date range." }, { "slug": "SAFETYCULTURE_GET_TRAINING_SLIDES_STATISTICS", "name": "Get Training Slides Statistics", "description": "Tool to retrieve all slide statistics for training slides in your organization. Use when you need analytics on training course slides, including attempt counts, success rates, and engagement metrics." }, { "slug": "SAFETYCULTURE_GET_TRAINING_USERS_LESSONS_PROGRESS", "name": "Get Training User Lesson Progress", "description": "Tool to retrieve lesson progress for a specific user in SafetyCulture Training. Use when you need to track a user's training progress, check lesson completion status, or audit training records." }, { "slug": "SAFETYCULTURE_GET_TRAINING_USERS_SLIDES_STATISTICS", "name": "Get Slide User Statistics", "description": "Tool to retrieve all slide statistics for a specific user in your organization. Use when you need analytics on how a particular user has interacted with training slides, including their attempts, answers, and time spent." }, { "slug": "SAFETYCULTURE_GET_USER_GROUPS", "name": "Get User Groups", "description": "Retrieves the list of groups that a specific user belongs to. Use when you need to check a user's group memberships or understand their organizational roles and permissions." }, { "slug": "SAFETYCULTURE_GET_USER_LESSON_PROGRESS_EVENTS", "name": "Get User Lesson Progress Events", "description": "Tool to retrieve lesson progress events for a specific user. Use when you need to track an individual user's learning activity, monitor their training engagement, or generate progress reports." }, { "slug": "SAFETYCULTURE_GET_USERS_UPSERT_JOB", "name": "Get Users Upsert Job", "description": "Tool to retrieve details of a create-or-update users job. Use when you need to check the status and results of a bulk user creation or update operation, including validation results and any errors encountered." }, { "slug": "SAFETYCULTURE_GET_USERS_USERS_ATTRIBUTES", "name": "Get User Attributes", "description": "Tool to retrieve user attributes from SafetyCulture. Use when you need to get the value of a user's custom fields or profile attributes with optional filtering by visibility settings or specific field IDs." }, { "slug": "SAFETYCULTURE_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook from SafetyCulture. Use when you need to view a webhook's configuration, check its enabled status, URL, or trigger events." }, { "slug": "SAFETYCULTURE_INGEST_SENSOR_READINGS", "name": "Ingest Sensor Readings", "description": "Tool to ingest sensor readings into SafetyCulture. Use when you need to push sensor measurement data from your own sensors to SafetyCulture for monitoring and tracking." }, { "slug": "SAFETYCULTURE_INITIALIZE_CREATE_OR_UPDATE_USERS_JOB", "name": "Initialize Create or Update Users Job", "description": "Tool to initialize a create-or-update users job in SafetyCulture. Use when you need to create new users or update existing users in bulk. This endpoint creates a job and returns a job_id that can be used to add more users or to execute the job. You can add up to 2000 users per request." }, { "slug": "SAFETYCULTURE_LINK_DOCUMENTS_TO_ENTITIES", "name": "Link Documents to Entities", "description": "Tool to link files/documents to other areas of the SafetyCulture platform such as assets. Use when you need to associate existing files with entities like assets for better organization and tracking." }, { "slug": "SAFETYCULTURE_LIST_ACTION_FIELDS", "name": "List Action Fields", "description": "Tool to retrieve action fields data feed from SafetyCulture. Use when you need to access field-level information for actions in your organization." }, { "slug": "SAFETYCULTURE_LIST_ACTIONS", "name": "List Actions", "description": "Tool to retrieve actions from the SafetyCulture data feed. Use when you need to list actions with optional filtering by modification time or pagination offset." }, { "slug": "SAFETYCULTURE_LIST_ACTIVITY_LOG_EVENTS", "name": "List Activity Log Events", "description": "Tool to retrieve activity log events from SafetyCulture. Use when you need to track or audit organizational activities, user actions, or system events." }, { "slug": "SAFETYCULTURE_LIST_ASSETS", "name": "List Assets", "description": "Tool to retrieve assets from your SafetyCulture organization with optional filtering and sorting. Use when you need to list, search, or filter assets by various criteria like site, type, state, or custom fields." }, { "slug": "SAFETYCULTURE_LIST_ASSET_TYPE_FIELDS", "name": "List Asset Type Fields", "description": "Retrieves all fields and their association status for a specific asset type. Use this to understand which fields are available and visible for a given asset type in your SafetyCulture organization." }, { "slug": "SAFETYCULTURE_LIST_COMPANIES_COMPANIES", "name": "List Companies Feed", "description": "Tool to retrieve the data feed for contractor companies. Use when you need to fetch or sync contractor company information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_COMPANIES_COMPANIES_DOCUMENTS", "name": "List Company Documents Feed", "description": "Tool to retrieve the data feed for contractor company documents. Use when you need to fetch or sync contractor company document information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_COMPANIES_COMPANIES_MEMBERS", "name": "List Company Members Feed", "description": "Tool to retrieve the data feed for contractor company user memberships. Use when you need to fetch or sync contractor company user membership information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_COMPANY_DOCUMENT_TYPES", "name": "List Company Document Types", "description": "Tool to retrieve a paginated list of company document types from SafetyCulture. Use when you need to fetch document type definitions or filter document types by their IDs." }, { "slug": "SAFETYCULTURE_LIST_COMPANY_TYPES", "name": "List Company Types", "description": "Tool to list company types in your SafetyCulture organization. Use when you need to retrieve available company types, search for specific types, or paginate through large result sets." }, { "slug": "SAFETYCULTURE_LIST_COMPANY_TYPES_METRICS", "name": "List Company Types with Metrics", "description": "Tool to list company types with associated metrics and statistics. Use when you need to retrieve all company types in the organization along with their usage metrics." }, { "slug": "SAFETYCULTURE_LIST_CONTRACTOR_COMPANIES", "name": "List Contractor Companies", "description": "Tool to list contractor companies based on applied filters. Use when you need to retrieve companies with specific criteria like status, compliance issues, location, or type. Supports pagination for large result sets." }, { "slug": "SAFETYCULTURE_LIST_CREATE_UPDATE_USERS_JOBS", "name": "List Create-or-Update Users Jobs", "description": "Tool to retrieve a list of create-or-update users jobs. Use when you need to check the status of bulk user operations or audit user import jobs." }, { "slug": "SAFETYCULTURE_LIST_CREDENTIALS_CREDENTIAL_VERSIONS", "name": "List Credential Versions", "description": "Tool to list all versions of a credential document. Use when you need to retrieve version history including media attachments with download tokens." }, { "slug": "SAFETYCULTURE_LIST_DIRECTORY_FOLDERS", "name": "List Directory Folders", "description": "Tool to retrieve all folders from your SafetyCulture organization directory. Use when you need to list, filter, or paginate through organizational folders with optional sorting and ancestor information." }, { "slug": "SAFETYCULTURE_LIST_DIRECTORY_USER_FOLDER_IDS", "name": "List Directory User Folder IDs", "description": "Tool to list folders the requesting user is associated with. Use when you need to retrieve all folder IDs and folder paths that the current authenticated user has access to in the SafetyCulture directory." }, { "slug": "SAFETYCULTURE_LIST_DOCUMENT_TYPES", "name": "List Credential Types", "description": "Tool to list credential types (licenses and credentials) in your SafetyCulture organization. Use when you need to retrieve available credential types for user licenses, certifications, or other credential documents. Supports filtering, searching, sorting, and pagination." }, { "slug": "SAFETYCULTURE_LIST_FIELDS", "name": "List Fields", "description": "Tool to retrieve all asset fields in your SafetyCulture organization. Use when you need to discover available fields for asset management or find field IDs for use in other operations." }, { "slug": "SAFETYCULTURE_LIST_GROUPS", "name": "List Groups", "description": "Retrieves all groups in the organization. This action returns a list of all groups configured in your SafetyCulture organization, including their unique identifiers and names. Groups are used to organize users by roles, teams, or functions within your organization. Requirements: - \"Platform management: Groups\" permission must be granted Use this action to: - Get an overview of all organizational groups - Find group IDs for use with other group-related operations - Audit or manage group structures" }, { "slug": "SAFETYCULTURE_LIST_GROUPS2", "name": "List Groups (Feed)", "description": "Tool to retrieve groups via the feed endpoint. Use when you need to access groups data from the SafetyCulture feed API with pagination support." }, { "slug": "SAFETYCULTURE_LIST_GROUP_USERS", "name": "List Group Users", "description": "Tool to retrieve the data feed for group users. Use when you need to fetch or sync group membership information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_HEADS_UP_MANAGE", "name": "List Heads Ups (Management)", "description": "Tool to retrieve a list of heads ups (announcements) in management view. Use when you need to view, filter, or search heads ups with detailed metadata including engagement metrics." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_CATEGORIES", "name": "List Incidents Categories", "description": "Tool to retrieve all incident categories from SafetyCulture. Use when you need to list available categories for organizing and classifying incidents or investigations." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_FIELD_LIBRARY", "name": "List Incidents Field Library", "description": "Tool to retrieve the detail field library from SafetyCulture. Use when you need to list available fields for incidents/investigations, including system fields and custom fields with their types and options." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_FIELDS", "name": "List Incidents Fields", "description": "Tool to list all fields for a specific incident category in SafetyCulture. Use when you need to retrieve field definitions for organizing and capturing information within a specific incident category." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_INVESTIGATION_DETAIL_FIELDS", "name": "List Incidents Investigation Detail Fields", "description": "Tool to retrieve investigation detail fields from SafetyCulture incidents data feed. Use when you need to access custom field data associated with investigations, including field types, content, and metadata." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_INVESTIGATION_FIELDS", "name": "List Incidents Investigation Fields", "description": "Tool to retrieve investigation fields from the SafetyCulture data feed. Use when you need to list investigation fields with optional pagination." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_INVESTIGATION_RELATIONSHIPS", "name": "List Investigation Relationships", "description": "Tool to retrieve investigation relationships from the SafetyCulture data feed. Use when you need to list relationships between investigations and other resources with optional pagination." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_INVESTIGATIONS", "name": "List Incidents Investigations", "description": "Tool to retrieve investigations from the SafetyCulture incidents feed. Use when you need to list investigations, iterate through all investigations, or access investigation data for reporting and analysis." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_INVESTIGATIONS2", "name": "List Investigations (Advanced)", "description": "Tool to list investigations from SafetyCulture with advanced filtering and sorting capabilities. Use when you need to search, filter, or sort investigations by specific criteria like investigation IDs, status, sites, dates, owners, or linked entities." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_LOG", "name": "List Incidents Settings Log", "description": "Tool to retrieve settings log events for incidents from SafetyCulture. Use when you need to audit configuration changes, track administrative actions, or review incident settings modifications." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_OSHA_CASES", "name": "List Incidents OSHA Cases", "description": "Tool to retrieve OSHA cases from SafetyCulture. Use when you need to list, search, or filter OSHA incident cases by establishment, year, or search terms." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_OSHA_ESTABLISHMENTS", "name": "List OSHA Establishments", "description": "Tool to retrieve OSHA establishments from SafetyCulture. Use when you need to list, search, or filter OSHA establishment records by name, company, city, or industry." }, { "slug": "SAFETYCULTURE_LIST_INCIDENTS_STATUSES", "name": "List Incidents Statuses", "description": "Tool to retrieve all incident statuses from SafetyCulture. Use when you need to list available statuses for organizing and tracking incidents or investigations." }, { "slug": "SAFETYCULTURE_LIST_INTEGRATIONS_APPS", "name": "List Integration Applications", "description": "Tool to retrieve all integration applications available for installation in your SafetyCulture organization. Use when you need to discover what applications can be integrated with your organization." }, { "slug": "SAFETYCULTURE_LIST_INTEGRATIONS_APPS_INSTALLATIONS", "name": "List Integrations Apps Installations", "description": "Tool to list all existing app installations in the organization. Use when you need to retrieve information about installed integrations or filter by specific app ID." }, { "slug": "SAFETYCULTURE_LIST_INVESTIGATION_ACTIONS", "name": "List Investigation Actions", "description": "Tool to list actions linked to a SafetyCulture investigation. Use when you need to retrieve all actions associated with a specific investigation for tracking, reporting, or management purposes." }, { "slug": "SAFETYCULTURE_LIST_INVESTIGATION_INSPECTIONS", "name": "List Investigation Inspections", "description": "Tool to retrieve inspections linked to a specific investigation. Use when you need to list all inspections associated with an investigation, with support for pagination and filtering by link mode." }, { "slug": "SAFETYCULTURE_LIST_INVESTIGATION_ISSUES", "name": "List Investigation Issues", "description": "Tool to list issues linked to a SafetyCulture investigation. Use when you need to retrieve all issues associated with a specific investigation, including issue details, link timestamps, and access status." }, { "slug": "SAFETYCULTURE_LIST_INVESTIGATION_LOG", "name": "List Investigation Activity Log", "description": "Tool to retrieve activity log entries for a specific investigation in SafetyCulture. Use when you need to track investigation history, audit trail, or see what actions were performed on an investigation." }, { "slug": "SAFETYCULTURE_LIST_INVESTIGATION_MEDIA", "name": "List Investigation Media", "description": "Tool to retrieve media (images and videos) associated with a SafetyCulture investigation. Use when you need to access, list, or download media files linked to an investigation." }, { "slug": "SAFETYCULTURE_LIST_ISSUE_ASSIGNEES", "name": "List Issue Assignees", "description": "Tool to retrieve issue assignees data feed from SafetyCulture. Use when you need to access information about who is assigned to issues in your organization." }, { "slug": "SAFETYCULTURE_LIST_ISSUE_RELATIONS", "name": "List Issue Relations", "description": "Tool to retrieve a feed of issue relations items. Use when you need to fetch relationships between issues and other entities in your SafetyCulture organization, such as inspections, assets, or actions." }, { "slug": "SAFETYCULTURE_LIST_ISSUES", "name": "List Issues", "description": "Tool to retrieve issues from the SafetyCulture data feed. Use when you need to list issues with optional filtering by modification time, status, or pagination." }, { "slug": "SAFETYCULTURE_LIST_ISSUE_TIMELINE_ITEMS", "name": "List Issue Timeline Items", "description": "Tool to retrieve issue timeline items from the SafetyCulture data feed. Use when you need to fetch timeline events and history for issues." }, { "slug": "SAFETYCULTURE_LIST_PERMISSION_SETS", "name": "List Permission Sets", "description": "Tool to list permission sets in your SafetyCulture organization. Use when you need to view available permission sets, their details, and optionally the users assigned to each set. Supports filtering, searching, sorting, and pagination." }, { "slug": "SAFETYCULTURE_LIST_SCHEDULE_ASSIGNEES", "name": "List Schedule Assignees", "description": "Tool to retrieve schedule assignees data feed (v2). Use when you need to get a list of assignees for scheduled inspections or tasks across your organization." }, { "slug": "SAFETYCULTURE_LIST_SCHEDULES_SCHEDULE_ITEMS", "name": "List Schedule Items", "description": "Tool to list schedule items from SafetyCulture. Use when you need to retrieve schedule item rules for recurring schedule events with optional filtering by status. For organizations on the new Schedules experience, consider using Schedules (v2) - List schedule items for new builds. Supports pagination through page_size and page_token parameters." }, { "slug": "SAFETYCULTURE_LIST_SCHEDULING_LIST_SCHEDULE_ITEMS", "name": "List Schedule Items", "description": "Tool to list schedule items from SafetyCulture. Use when you need to retrieve scheduled inspections with filtering by title, schedule IDs, site IDs, statuses, template IDs, assignees, asset IDs, or schedule type. Results are paginated." }, { "slug": "SAFETYCULTURE_LIST_SCHEDULING_SCHEDULE_OCCURRENCES", "name": "List Scheduling Schedule Occurrences", "description": "Tool to retrieve the data feed for schedule occurrences (v2). Use when you need to fetch or sync schedule occurrence information from SafetyCulture. Note: New Schedules experience is currently in Early Access and may not be available for all organizations." }, { "slug": "SAFETYCULTURE_LIST_SCHEDULING_SCHEDULES", "name": "List Scheduling Schedules", "description": "Tool to retrieve the data feed for schedules (v2). Use when you need to fetch or sync schedule information from SafetyCulture's new Schedules experience. This action retrieves schedules with optional filtering by status (active, finished, paused) and template IDs. Supports cursor-based pagination through next_page_token. Note: New Schedules experience is currently in Early Access and may not be available for all organizations." }, { "slug": "SAFETYCULTURE_LIST_SENSORS", "name": "List Sensors", "description": "Tool to retrieve all hardware sensors in your SafetyCulture organization. Use when you need to list sensors with their metadata including asset information, location, and source details." }, { "slug": "SAFETYCULTURE_LIST_SITE_MEMBERS", "name": "List Site Members", "description": "Tool to retrieve the data feed for site members. Use when you need to fetch or sync site membership information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_SITES", "name": "List Sites", "description": "Tool to retrieve sites data feed from your SafetyCulture organization. Use when you need to list sites with optional filtering by deletion status and hierarchy level." }, { "slug": "SAFETYCULTURE_LIST_TASKS_ACTION_FIELDS", "name": "List Tasks Action Fields", "description": "Tool to retrieve tasks action fields data feed from SafetyCulture. Use when you need to access field-level information for task actions in your organization." }, { "slug": "SAFETYCULTURE_LIST_TASKS_CATEGORIES", "name": "List Tasks Categories", "description": "Tool to list task categories in SafetyCulture. Use when you need to retrieve categories for classifying tasks or issues." }, { "slug": "SAFETYCULTURE_LIST_TASKS_INCIDENTS_LIST", "name": "List Tasks Incidents", "description": "Tool to list issues (incidents) from SafetyCulture. Use when you need to retrieve, search, or filter incidents by various criteria such as groups, users, status, or completion state." }, { "slug": "SAFETYCULTURE_LIST_TEMPLATE_PERMISSIONS", "name": "List Template Permissions", "description": "Tool to retrieve the data feed for template permissions. Use when you need to fetch or sync template permission information from SafetyCulture." }, { "slug": "SAFETYCULTURE_LIST_TEMPLATES", "name": "List Templates", "description": "Retrieves all templates (also known as inspection forms or checklists) available in your SafetyCulture organization. Templates are the building blocks for conducting inspections and audits. Use this action to: - Browse available inspection templates in your organization - Get template IDs needed for creating inspections - Retrieve template metadata like names and modification dates Returns a list of templates with their IDs, names, and timestamps. The response includes pagination metadata (count and total) to help you understand the full dataset size." }, { "slug": "SAFETYCULTURE_LIST_TRAINING_TRAINING_COURSE_PROGRESS", "name": "List Training Course Progress", "description": "Tool to retrieve the data feed for training course progress. Use when you need to access course completion data for users across your organization. Note: Results are sourced from the analytics data warehouse, which refreshes every 30 minutes to 2 hours, so data may not be real-time." }, { "slug": "SAFETYCULTURE_LIST_TYPES", "name": "List Asset Types", "description": "Tool to list asset types in your SafetyCulture organization with pagination and filtering. Use when you need to retrieve available asset types, search for specific types by name, or paginate through large result sets." }, { "slug": "SAFETYCULTURE_LIST_USER_FIELDS", "name": "List User Fields", "description": "Tool to retrieve user fields in your SafetyCulture organization. Use when you need to discover available user profile fields or get field IDs for use in other user management operations." }, { "slug": "SAFETYCULTURE_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a data feed of all users in your SafetyCulture organization. Use when you need to export or synchronize user data, or when you need to access all users without complex filtering." }, { "slug": "SAFETYCULTURE_LIST_WEBHOOKS_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve all webhooks configured in your SafetyCulture organization. Use when you need to view webhook configurations, check webhook status, or get webhook IDs for management operations." }, { "slug": "SAFETYCULTURE_LOOKUP_ASSETS_BY_FIELD", "name": "Lookup Assets By Field", "description": "Tool to search for assets by matching a specific field name and value. Use when you need to find assets with a particular field value, such as finding all assets with a specific name, serial number, or location." }, { "slug": "SAFETYCULTURE_MAP_FIELD_TO_TASK_TYPE", "name": "Map Field to Task Type", "description": "Maps a custom field to a task type in SafetyCulture. Use when you need to associate a custom field with a specific action type to capture additional information for tasks of that type." }, { "slug": "SAFETYCULTURE_MOVE_DOCUMENTS_ITEM", "name": "Move Documents Item", "description": "Tool to move a file or folder to a different location in Documents. Use when you need to reorganize files or folders by moving them to a different parent folder or to the root level." }, { "slug": "SAFETYCULTURE_MOVE_FOLDERS", "name": "Move Folders", "description": "Tool to move one or more folders to a new parent folder or to the root level. Use when you need to reorganize the folder hierarchy by moving folders under a different parent or to the top level of the organization." }, { "slug": "SAFETYCULTURE_PROVISION_SENSOR", "name": "Provision Sensor", "description": "Tool to provision a new sensor in SafetyCulture. Use when you need to register a hardware sensor device with specific location and timezone settings for tracking environmental or operational data." }, { "slug": "SAFETYCULTURE_REGENERATE_SIGNATURE_SECRET", "name": "Regenerate Signature Secret", "description": "Regenerates the webhook signature secret for your SafetyCulture organization. This creates a new secret token used for HMAC-SHA256 verification of webhook payloads. The new secret will not be applied retroactively to webhooks already dispatched. Use this when rotating webhook signing credentials for security purposes." }, { "slug": "SAFETYCULTURE_REGISTER_INTEGRATION_APP", "name": "Register Integration App", "description": "Registers a new custom application in SafetyCulture for integration purposes. Use this when you need to create a web-based integration that will be embedded within SafetyCulture's interface via iframe. Returns the unique app_id for the registered application." }, { "slug": "SAFETYCULTURE_REMOVE_FILE_OWNERS", "name": "Bulk Remove File Owners", "description": "Tool to bulk remove owners (users or groups) from files in SafetyCulture Documents. Use when you need to revoke ownership permissions from multiple users or groups across one or more files. The operation removes the specified users/groups as owners from all specified files." }, { "slug": "SAFETYCULTURE_REMOVE_INCIDENT_COLLABORATORS", "name": "Remove Incident Collaborators", "description": "Tool to remove collaborators (assignees) from an incident (issue) in SafetyCulture. Use when you need to unassign users or remove their assignment from a specific incident." }, { "slug": "SAFETYCULTURE_RESTORE_ARCHIVED_ASSET", "name": "Restore Archived Asset", "description": "Restores an archived asset in your SafetyCulture organization. Use when you need to unarchive an asset that was previously archived. This makes the asset active and accessible again." }, { "slug": "SAFETYCULTURE_RESTORE_FIELD", "name": "Restore Field", "description": "Tool to restore an archived field in SafetyCulture. Use when you need to unarchive a field that was previously archived, making it active and accessible again." }, { "slug": "SAFETYCULTURE_SEARCH_DIRECTORY_FOLDERS", "name": "Search Directory Folders", "description": "Tool to search for folders in the directory hierarchy. Use when you need to find folders by name or retrieve all folders in the organization. Supports filtering by leaf nodes (locations only) and pagination for large result sets." }, { "slug": "SAFETYCULTURE_SEARCH_DOCUMENTS_ITEMS", "name": "Search Documents Items", "description": "Tool to search files and folders in SafetyCulture documents. Use when you need to find documents by name, retrieve specific items by ID, filter by archived status, or paginate through document lists with optional download URLs." }, { "slug": "SAFETYCULTURE_SEARCH_MODIFIED_INSPECTIONS", "name": "Search Modified Inspections", "description": "Tool to retrieve inspections modified since a given timestamp. Use when polling for new or updated inspections after your last sync." }, { "slug": "SAFETYCULTURE_SET_CATEGORY_DETAIL_FIELDS", "name": "Set Category Detail Fields", "description": "Tool to set detail fields for an incident category in SafetyCulture. Use when you need to associate specific fields with a category or update the field associations. Fields not included in the list will be dissociated from the category." }, { "slug": "SAFETYCULTURE_SET_INCIDENTS_DETAIL_FIELD_OPTIONS", "name": "Set Incidents Detail Field Options", "description": "Tool to set the options for a select-type detail field in SafetyCulture incidents. Use when you need to define or update the available choices for a dropdown field in incident details." }, { "slug": "SAFETYCULTURE_SET_USER_ATTRIBUTES", "name": "Set User Attributes", "description": "Tool to set or update user attributes for a specific user in SafetyCulture. Use when you need to assign custom field values to users such as department, employee ID, or other organization-specific metadata." }, { "slug": "SAFETYCULTURE_SET_USER_FIELD_SETTINGS", "name": "Set User Field Settings", "description": "Tool to update field settings for a user field in SafetyCulture. Use when you need to configure whether users can self-update a field or whether the field is visible on user profiles." }, { "slug": "SAFETYCULTURE_START_USERS_UPSERT_JOB", "name": "Start Users Upsert Job", "description": "Tool to start an initialized create-or-update users job. Use this after initializing a users upsert job to begin processing the user creation or update operations. The job must be initialized first with user data before calling this action." }, { "slug": "SAFETYCULTURE_UNMAP_FIELD_FROM_TASK_TYPE", "name": "Unmap Field From Task Type", "description": "Tool to unmap a custom field from a task type in SafetyCulture. Use when you need to remove the association between a custom field and a specific task type without deleting the field itself." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_ASSET", "name": "Update Action Asset", "description": "Updates the asset associated with an action in SafetyCulture. Use when you need to link or change the asset associated with a specific action (task)." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_ASSIGNEES", "name": "Update Action Assignees", "description": "Updates the assignees of an action in SafetyCulture. Use when you need to assign or reassign collaborators (users, groups, external users) to an action, or remove all assignees by passing an empty array." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_DUE_AT", "name": "Update Action Due Date", "description": "Tool to update the due date of an action in SafetyCulture. Use when you need to set or clear the due date for a specific action/task." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_LABELS", "name": "Update Action Labels", "description": "Tool to update the labels associated with an action in SafetyCulture. Use when you need to add, replace, or remove labels from an action. Send an empty list to remove all labels." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_PRIORITY", "name": "Update Action Priority", "description": "Tool to update the priority of an action in SafetyCulture. Use when you need to change the priority level of an existing action." }, { "slug": "SAFETYCULTURE_UPDATE_ACTION_STATUS", "name": "Update Action Status", "description": "Tool to update the status of an action in SafetyCulture. Use when you need to change an action's status to 'To do', 'In progress', 'Complete', or 'Can't do'." }, { "slug": "SAFETYCULTURE_UPDATE_ASSET", "name": "Update Asset", "description": "Updates an existing asset in SafetyCulture. Modifies all attributes of an asset including code, state, site, type, fields, media, and profile image. Use when you need to change asset properties or update asset information." }, { "slug": "SAFETYCULTURE_UPDATE_ASSET_LOCATION", "name": "Update Asset Location", "description": "Tool to update an asset's geographic location in your SafetyCulture organization. Use when you need to record or update where an asset is physically located." }, { "slug": "SAFETYCULTURE_UPDATE_ASSETS_BULK", "name": "Bulk Update Assets", "description": "Tool to update multiple assets in a single operation. Use when you need to modify multiple assets at once, specifying exactly which fields to update via the update_mask parameter. This is more efficient than updating assets individually." }, { "slug": "SAFETYCULTURE_UPDATE_ASSETS_TYPES_FIELDS", "name": "Update Asset Type Fields", "description": "Tool to update asset type field associations. Use when you need to associate or remove fields from an asset type. Specify replace_all=true to replace all existing associations, or false to merge with existing ones." }, { "slug": "SAFETYCULTURE_UPDATE_CREDENTIALS_CREDENTIAL_TYPE", "name": "Update Credential Type", "description": "Tool to update a credential type in SafetyCulture. Use when you need to modify properties like name, description, or domain of an existing credential type. The update_mask parameter controls which attributes are updated." }, { "slug": "SAFETYCULTURE_UPDATE_CREDENTIALS_SETTINGS", "name": "Update Credentials Settings", "description": "Updates the credential settings for your organization. Use this to enable or disable approvals for credentials or to make media optional when creating credentials." }, { "slug": "SAFETYCULTURE_UPDATE_DOCUMENTS", "name": "Update Documents", "description": "Tool to update a file in SafetyCulture Documents by modifying its metadata such as name or description. Use when you need to rename a file or update its description. Specify which fields to update using the update_mask parameter." }, { "slug": "SAFETYCULTURE_UPDATE_ESTABLISHMENT", "name": "Update OSHA Establishment", "description": "Tool to update an OSHA establishment in SafetyCulture. Use when you need to modify establishment details such as name, address, company information, or classification. Supports both full updates (PUT) and partial updates (PATCH) via field_mask." }, { "slug": "SAFETYCULTURE_UPDATE_FIELD", "name": "Update Field", "description": "Tool to update an existing asset field in SafetyCulture. Use when you need to modify field properties like name, value type, or select options. The update_mask parameter controls which attributes are updated." }, { "slug": "SAFETYCULTURE_UPDATE_FILE_OWNERS_BULK", "name": "Bulk Update File Owners", "description": "Tool to bulk replace file owners (users or groups) in SafetyCulture Documents. Use when you need to update ownership permissions across multiple files at once. This operation replaces existing owners with the specified users and/or groups." }, { "slug": "SAFETYCULTURE_UPDATE_FOLDER_PROPERTIES", "name": "Update Folder Properties", "description": "Tool to update a folder's properties in SafetyCulture. Use when you need to change the name or other properties of an existing folder. The folder is identified by its UUID." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENT_DUE_AT", "name": "Update Incident Due Date", "description": "Tool to update the due date of an incident in SafetyCulture. Use when you need to set or clear the due date for a specific incident/issue." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_CATEGORIES", "name": "Update Incident Category", "description": "Updates an existing incident category in SafetyCulture. Use when you need to modify the title or description of a category." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_DETAIL_FIELDS", "name": "Rename Incident Detail Field", "description": "Tool to rename a detail field in SafetyCulture incidents. Use when you need to update the name of a custom field used for incident reporting." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_FIELDS", "name": "Update Incidents Fields", "description": "Tool to update fields for a specific incident category in SafetyCulture. Use when you need to modify field definitions such as titles or default text for fields within an incident category." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_INVESTIGATIONS", "name": "Update Investigation", "description": "Updates an investigation in SafetyCulture by performing operations such as changing the title, description, status, or managing related entities. Use when you need to modify investigation details, link/unlink actions, inspections, or issues, or manage investigation media." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_OSHA_CASE", "name": "Update OSHA Case", "description": "Tool to update an existing OSHA case in SafetyCulture. Use when you need to modify case details such as incident description, employee information, facility details, or any other OSHA case attributes." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_OSHA_ESTABLISHMENT_EMPLOYEES", "name": "Update OSHA Establishment Employees", "description": "Tool to update the average employee count for an OSHA establishment. Use when you need to record or update the number of employees working at an establishment for OSHA reporting purposes." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_OSHA_ESTABLISHMENT_HOURS", "name": "Update OSHA Establishment Hours", "description": "Tool to update the hours worked for an OSHA establishment. Use when you need to record or update employee work hours for OSHA reporting purposes, typically for monthly hour tracking requirements." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_PRIORITY", "name": "Update Incident Priority", "description": "Tool to update the priority of an incident in SafetyCulture. Use when you need to change the priority level of an existing incident." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENTS_STATUSES", "name": "Update Incident Statuses", "description": "Tool to update the complete set of incident statuses for your SafetyCulture organization. Use when you need to add, modify, or reorganize status options for incident management. This endpoint replaces all existing statuses with the provided list." }, { "slug": "SAFETYCULTURE_UPDATE_INCIDENT_STATUS", "name": "Update Incident Status", "description": "Tool to update the status of an incident/issue in SafetyCulture. Use when you need to change an issue's status to 'Open' or 'Resolved'." }, { "slug": "SAFETYCULTURE_UPDATE_INTEGRATION_APP_INSTALL_CONFIG", "name": "Update Integration App Installation Configuration", "description": "Tool to update a configuration for an existing application installation in SafetyCulture. Use when you need to modify the external web experience settings such as the iframe URL or display label for an app installation." }, { "slug": "SAFETYCULTURE_UPDATE_INTEGRATIONS_APPS", "name": "Update Integrations Apps", "description": "Tool to update an existing custom application in SafetyCulture. Use when you need to modify application properties such as name or external web experience configuration including iframe allowlist hosts." }, { "slug": "SAFETYCULTURE_UPDATE_INVESTIGATIONS", "name": "Update Investigations", "description": "Tool to update investigations in bulk. Use when you need to modify investigation properties such as title, description, status, site, owner, or manage linked entities (actions, issues, inspections) and media. Supports optimistic locking via updated_at timestamp to prevent conflicting updates." }, { "slug": "SAFETYCULTURE_UPDATE_PERMISSIONS_PERMISSION_SET", "name": "Update Permission Set", "description": "Updates a custom permission set in SafetyCulture. Modifies the name and/or description of an existing permission set. Use when you need to rename or update the description of a custom permission set. Note: Only custom permission sets can be updated; default permission sets cannot be modified." }, { "slug": "SAFETYCULTURE_UPDATE_TASK_ACTION_DESCRIPTION", "name": "Update Task Action Description", "description": "Tool to update the description of a task action in SafetyCulture. Use when you need to modify or update the description text of an existing action." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_ACTIONS_SITE", "name": "Update Action Site", "description": "Tool to update the site (folder) of an action in SafetyCulture. Use when you need to move an action to a different site or assign it to a specific organizational folder." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_ACTIONS_TITLE", "name": "Update Action Title", "description": "Updates the title of an action in SafetyCulture. Use when you need to change the title text of an existing action task." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_CUSTOM_FIELD", "name": "Update Tasks Custom Field", "description": "Tool to rename a custom field in SafetyCulture tasks configuration. Use when you need to update the name of an existing custom field to better reflect its purpose or maintain consistency." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_INCIDENTS_CATEGORY", "name": "Update Task Incident Category", "description": "Tool to update the category of an incident/task in SafetyCulture. Use when you need to reassign an incident to a different category for better organization or classification." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_INCIDENTS_DESCRIPTION", "name": "Update Tasks Incidents Description", "description": "Tool to update the description of a task incident in SafetyCulture. Use when you need to modify or update the description text of an existing incident." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_INCIDENTS_OCCURRED_AT", "name": "Update Incident Occurred At", "description": "Tool to update the occurred_at timestamp for an incident (issue) in SafetyCulture. Use when you need to set or change when an incident occurred. Pass an empty occurred_at value to unset the timestamp." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_INCIDENTS_SITE", "name": "Update Incident Site", "description": "Tool to update the site (folder) associated with an incident in SafetyCulture. Use when you need to move an incident to a different site or assign a site to an incident." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_INCIDENTS_TITLE", "name": "Update Incident Title", "description": "Tool to update the title of an incident (legacy issue) in SafetyCulture. Use when you need to rename or change the title of an existing incident." }, { "slug": "SAFETYCULTURE_UPDATE_TASKS_TASK_TYPE", "name": "Update Tasks Task Type", "description": "Tool to rename a task type (action type) in SafetyCulture. Use when you need to change the name of an existing task type configuration." }, { "slug": "SAFETYCULTURE_UPDATE_TYPE", "name": "Update Type", "description": "Tool to update an asset type in SafetyCulture. Use when you need to modify the name or category of an existing asset type. The update_mask parameter controls which fields are updated." }, { "slug": "SAFETYCULTURE_UPDATE_USER_FIELD", "name": "Update User Field", "description": "Tool to update a user field in SafetyCulture. Use when you need to modify field properties like name, description, or select options for user-related fields. The update_mask parameter controls which attributes are updated." }, { "slug": "SAFETYCULTURE_UPDATE_WEBHOOKS_WEBHOOKS", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration in SafetyCulture. Use when you need to modify webhook URL, change trigger events, or enable/disable a webhook." }, { "slug": "SAFETYCULTURE_UPSERT_ACTION_LABEL", "name": "Upsert Action Label", "description": "Create or update an action label for categorizing actions in your SafetyCulture organization. Action labels help you manage actions at scale by grouping them into meaningful categories. Provide a label_id to update an existing label, or omit it to create a new one." }, { "slug": "SAFETYCULTURE_UPSERT_USERS", "name": "Create or Update Users", "description": "Tool to create or update users synchronously in bulk. Performs bulk user creation or updates synchronously and returns the results in real time. Use when you need to add new users to your SafetyCulture organization or update existing user information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "safetyculture_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SafetyCulture API Token", "type": "string", "description": "The API token generated from your SafetyCulture account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "salesflare", "name": "Salesflare", "logo": "https://logos.composio.dev/api/salesflare", "description": "Salesflare is a CRM platform that helps small and medium-sized B2B businesses track and manage their sales pipelines, contacts, and customer relationships with automated data entry and smart insights.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 63, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SALESFLARE_ADD_ACCOUNT_CONTACTS", "name": "Add Account Contacts", "description": "Tool to add contacts to a specific account in Salesflare. Use when you need to link existing contacts to an account." }, { "slug": "SALESFLARE_CREATE_ACCOUNT", "name": "Create Account", "description": "Tool to create a new account in Salesflare. Use when you need to add a new company or organization to your CRM. If update_if_exists is true and an account with matching domain exists, it will be updated instead of creating a duplicate." }, { "slug": "SALESFLARE_CREATE_CALL", "name": "Create call", "description": "Tool to create one or more call records in Salesflare. Use when logging calls with contacts or accounts. Each call requires a date and participants list (can be empty for call log sync)." }, { "slug": "SALESFLARE_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create new contacts in Salesflare. Use when you need to add contact records to the system. Accepts single or multiple contacts. If creating one contact, response contains a single object; if multiple, an array is returned." }, { "slug": "SALESFLARE_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Creates a new custom field for accounts, contacts, or opportunities in Salesflare. Use when you need to add custom data fields to track specific information." }, { "slug": "SALESFLARE_CREATE_INTERNAL_NOTE", "name": "Create Internal Note", "description": "Tool to create an internal note in Salesflare associated with an account. Use when you need to add notes for tracking interactions or important information about an account." }, { "slug": "SALESFLARE_CREATE_MEETING", "name": "Create Meeting", "description": "Create a new meeting record in Salesflare. Use when scheduling meetings with contacts or logging past meetings/calls. Supports both live meetings and phone calls with customizable details." }, { "slug": "SALESFLARE_CREATE_OPPORTUNITY", "name": "Create Opportunity", "description": "Tool to create a new opportunity in Salesflare. Use when you need to add a sales opportunity or deal to the system. An opportunity represents a potential sale associated with an account (company)." }, { "slug": "SALESFLARE_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in Salesflare. Use when you need to add a new tag for categorizing accounts, contacts, or opportunities." }, { "slug": "SALESFLARE_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in Salesflare. Use when you need to add a task or to-do item to the system. Tasks help track follow-ups, calls, meetings, and other action items." }, { "slug": "SALESFLARE_CREATE_WORKFLOW", "name": "Create Workflow", "description": "Tool to create a new workflow (email automation sequence) in Salesflare. Use when you need to set up automated email sequences or campaigns for contacts. Only the workflow name is required; all other fields are optional for configuration." }, { "slug": "SALESFLARE_DELETE_ACCOUNT", "name": "Delete Account", "description": "Tool to permanently delete an account from Salesflare. Use when you need to remove an account from the system. WARNING: This action cannot be undone and permanently removes the account." }, { "slug": "SALESFLARE_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact from Salesflare. Use when you need to remove a contact by their unique identifier after confirming this detail." }, { "slug": "SALESFLARE_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field from Salesflare. Use this to permanently remove a custom field from accounts, contacts, or opportunities. The custom field and all its data will be deleted." }, { "slug": "SALESFLARE_DELETE_INTERNAL_NOTE", "name": "Delete Internal Note", "description": "Tool to delete an internal note from Salesflare by its message ID. Use when you need to permanently remove an internal note from the system." }, { "slug": "SALESFLARE_DELETE_MEETING", "name": "Delete Meeting", "description": "Tool to delete a meeting from Salesflare. Use when you need to remove a meeting from the system." }, { "slug": "SALESFLARE_DELETE_OPPORTUNITY", "name": "Delete Opportunity", "description": "Tool to permanently delete an opportunity from Salesflare. Use when you need to remove an opportunity from the system. WARNING: This action cannot be undone and permanently removes the opportunity." }, { "slug": "SALESFLARE_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag from Salesflare. Use when you need to remove a tag from the system." }, { "slug": "SALESFLARE_DELETE_TASK", "name": "Delete Task", "description": "Tool to delete a task from Salesflare. Use when you need to remove a task from the system." }, { "slug": "SALESFLARE_GET_ACCOUNT", "name": "Get Account", "description": "Get detailed information about a specific account by ID. Tool to retrieve complete account details including contact information, addresses, social profiles, tags, and custom fields. Use when you need to fetch information about a specific account in Salesflare." }, { "slug": "SALESFLARE_GET_AI_SETTINGS", "name": "Get AI Settings", "description": "Tool to retrieve AI settings for the Salesflare team. Use when you need to check the current AI configuration for company and user profiles." }, { "slug": "SALESFLARE_GET_CONTACT", "name": "Get Contact by ID", "description": "Retrieves detailed information for a specific contact by ID. Use when you need complete contact details including personal info, tags, addresses, and account associations." }, { "slug": "SALESFLARE_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve the details of the currently authenticated user. Use when you need to get information about the current user's profile, settings, permissions, or team configuration." }, { "slug": "SALESFLARE_GET_CUSTOM_FIELD", "name": "Get Custom Field Details", "description": "Tool to retrieve details of a specific custom field. Use when you need to fetch information about a custom field configuration for accounts, contacts, or opportunities." }, { "slug": "SALESFLARE_GET_MEETING", "name": "Get Meeting Details", "description": "Tool to retrieve detailed information about a specific meeting by its ID. Use when you need to fetch meeting details such as subject, date, participants, notes, and other metadata." }, { "slug": "SALESFLARE_GET_OPPORTUNITY", "name": "Get Opportunity", "description": "Get detailed information about a specific opportunity by ID. Tool to retrieve complete opportunity details including account, contacts, pipeline stage, value, dates, and other metadata. Use when you need to fetch information about a specific opportunity in Salesflare." }, { "slug": "SALESFLARE_GET_STAGE", "name": "Get Stage", "description": "Get detailed information about a specific pipeline stage by ID. Tool to retrieve complete stage details including name, order, probability, and pipeline association. Use when you need to fetch information about a specific stage in Salesflare." }, { "slug": "SALESFLARE_GET_TAG_USAGE", "name": "Get Tag Usage", "description": "Get tag usage details including workflows, saved filters, and reports. Tool to retrieve information about where a specific tag is being used across workflows, saved filters, and reports in Salesflare. Use when you need to understand tag dependencies before deletion or to audit tag usage." }, { "slug": "SALESFLARE_GET_USER", "name": "Get User", "description": "Tool to retrieve details of a specific user by their ID. Use when you need to get information about a user's profile, settings, or permissions in Salesflare." }, { "slug": "SALESFLARE_GET_WORKFLOW", "name": "Get Workflow", "description": "Get detailed information about a specific workflow by ID. Tool to retrieve complete workflow details including steps, analytics, filters, scheduling, and status information. Use when you need to fetch information about a specific workflow in Salesflare." }, { "slug": "SALESFLARE_GET_WORKFLOW_MERGE_FIELDS", "name": "Get Workflow Merge Fields", "description": "Tool to retrieve available merge fields for workflows in Salesflare. Use when you need to get the list of fields that can be inserted into workflow templates or email campaigns." }, { "slug": "SALESFLARE_LIST_ACCOUNT_MESSAGES", "name": "List Account Messages", "description": "Tool to retrieve a list of messages associated with a specific account in Salesflare. Use when you need to view communication history, emails, or notes linked to an account. Supports filtering by date range and pagination with limit parameter." }, { "slug": "SALESFLARE_LIST_ACCOUNTS", "name": "List accounts", "description": "Tool to list accounts with various filtering options including search, name, creation dates, size, domain, tags, address, and hotness level. Use when you need to retrieve multiple accounts with specific criteria or browse all accounts in Salesflare." }, { "slug": "SALESFLARE_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list contacts with filtering options. Use when you need to retrieve, search, or filter contacts from Salesflare. Supports extensive filtering by name, email, phone, domain, dates, account, tags, position, and address fields." }, { "slug": "SALESFLARE_LIST_CURRENCIES", "name": "List Supported Currencies", "description": "Tool to retrieve a list of supported currencies in Salesflare. Use when you need to know which currencies are available for use in accounts, opportunities, or other financial data." }, { "slug": "SALESFLARE_LIST_CUSTOM_FIELD_OPTIONS", "name": "List Custom Field Options", "description": "Tool to list available options for a specific custom field in Salesflare. Use when you need to retrieve the available values for select or multi-select custom fields. Supports filtering options by search string." }, { "slug": "SALESFLARE_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to list custom fields for a specified item class (accounts, contacts, or opportunities). Use when you need to retrieve available custom fields for an item type to understand what custom data can be stored or queried." }, { "slug": "SALESFLARE_LIST_CUSTOM_FIELD_TYPES", "name": "List Custom Field Types", "description": "Tool to retrieve a list of available custom field types in Salesflare. Use when you need to know which field types are supported for creating custom fields." }, { "slug": "SALESFLARE_LIST_EMAIL_DATASOURCES", "name": "List Email Data Sources", "description": "Tool to list email data sources. Use when you need to retrieve all email data sources associated with the user." }, { "slug": "SALESFLARE_LIST_FILTER_FIELDS", "name": "List Filter Fields", "description": "Tool to list available filter fields for a specific entity type in Salesflare. Use when you need to retrieve the available filter fields for accounts, contacts, opportunities, or other entities." }, { "slug": "SALESFLARE_LIST_GROUPS", "name": "List Groups", "description": "Tool to list groups in Salesflare. Use when you need to retrieve all groups in the team." }, { "slug": "SALESFLARE_LIST_MY_CONTACTS", "name": "List My Contacts", "description": "Tool to list contacts belonging to the current user. Use when you need to retrieve, search, or filter contacts from Salesflare. Supports extensive filtering options including by name, email, phone, date ranges, tags, and custom fields." }, { "slug": "SALESFLARE_LIST_OPPORTUNITIES", "name": "List Opportunities", "description": "Tool to list opportunities with extensive filtering options. Use when you need to retrieve opportunities filtered by pipeline, stage, dates, value, tags, owner, account, or other criteria." }, { "slug": "SALESFLARE_LIST_PERSONS", "name": "List Persons", "description": "Tool to list persons (non-contact people found in communications) from Salesflare. Use when you need to retrieve or search persons by name, email, ID, or keyword." }, { "slug": "SALESFLARE_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list pipelines in the Salesflare system with filtering and sorting options. Use when you need to retrieve available pipelines for organizing opportunities and sales processes." }, { "slug": "SALESFLARE_LIST_STAGES", "name": "List Stages", "description": "Tool to list pipeline stages in the Salesflare system with filtering and sorting options. Use when you need to retrieve available stages for organizing opportunities in pipelines." }, { "slug": "SALESFLARE_LIST_TAGS", "name": "List tags", "description": "Tool to list tags in the Salesflare system. Use when you need to retrieve tags with optional filtering by ID, name, or search query. Supports pagination and sorting for efficient tag retrieval." }, { "slug": "SALESFLARE_LIST_TASKS", "name": "List Tasks", "description": "Tool to list tasks with filtering options. Use when you need to retrieve tasks filtered by type, assignee, dates, completion status, or associated accounts." }, { "slug": "SALESFLARE_LIST_USERS", "name": "List Users", "description": "Tool to list users (team members) in the Salesflare team. Use when you need to retrieve team members, search for specific users, or filter users by various criteria." }, { "slug": "SALESFLARE_LIST_WORKFLOWS", "name": "List Workflows", "description": "Tool to list workflows (email automation sequences) in Salesflare. Use when you need to retrieve or search for email automation workflows." }, { "slug": "SALESFLARE_UPDATE_ACCOUNT", "name": "Update Account", "description": "Tool to update an existing account in Salesflare. Use when you need to modify account details such as name, contact information, address, or custom fields." }, { "slug": "SALESFLARE_UPDATE_ACCOUNT_CONTACTS", "name": "Update Account Contacts", "description": "Tool to update the contacts associated with a specific Salesflare account. Use when you need to add, modify, or remove contact associations for an account." }, { "slug": "SALESFLARE_UPDATE_ACCOUNT_USERS", "name": "Update Account Users", "description": "Tool to update the users associated with a specific Salesflare account. Use when you need to add, modify, or remove user associations for an account." }, { "slug": "SALESFLARE_UPDATE_AI_SETTINGS", "name": "Update AI Settings", "description": "Tool to update AI settings for the Salesflare team. Use when you need to configure AI context information for company or user profiles." }, { "slug": "SALESFLARE_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Salesflare. Use when you need to modify contact details such as name, email, phone, tags, or custom fields." }, { "slug": "SALESFLARE_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Updates an existing custom field for accounts, contacts, or opportunities in Salesflare. Use when you need to modify the properties or settings of a custom field." }, { "slug": "SALESFLARE_UPDATE_EMAIL_DATASOURCE", "name": "Update Email Data Source", "description": "Tool to update the settings of an email data source in Salesflare. Use when you need to modify email sending limits, signature settings, or signature content for a specific email data source." }, { "slug": "SALESFLARE_UPDATE_INTERNAL_NOTE", "name": "Update Internal Note", "description": "Tool to update an existing internal note in Salesflare. Use when modifying the content or properties of an existing note." }, { "slug": "SALESFLARE_UPDATE_OPPORTUNITY", "name": "Update Opportunity", "description": "Tool to update an existing opportunity in Salesflare. Use when you need to modify opportunity details such as name, value, stage, or other attributes." }, { "slug": "SALESFLARE_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update the name of an existing tag in Salesflare. Use when you need to rename a tag." }, { "slug": "SALESFLARE_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task in Salesflare. Use when you need to modify task details such as description, completion status, assignees, or reminder date." }, { "slug": "SALESFLARE_UPDATE_WORKFLOW", "name": "Update Workflow", "description": "Tool to update an existing workflow in Salesflare. Use when you need to modify workflow details such as name, status, steps, filters, or scheduling." }, { "slug": "SALESFLARE_UPDATE_WORKFLOW_AUDIENCE", "name": "Update Workflow Audience", "description": "Tool to re-enter or exit an entity from a workflow in Salesflare. Use when you need to manage an entity's participation in a specific workflow, such as removing a contact from an automated email sequence or re-adding them after they exited." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "salesflare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "API key generated from Settings > API Keys in Salesflare (https://app.salesflare.com/#/settings/apikeys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "salesforce_marketing_cloud", "name": "Salesforce Marketing Cloud", "logo": "https://logos.composio.dev/api/salesforce_marketing_cloud", "description": "Salesforce Marketing Cloud is a digital marketing platform providing email marketing, journey builder, audience segmentation, and marketing automation to create personalized customer experiences across channels", "category": "marketing automation", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "salesforcemarketingcloud_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "email_read,email_write,email_send,journeys_read,journeys_write,list_and_subscribers_read,list_and_subscribers_write,data_extensions_read,data_extensions_write,offline_access" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Marketing Cloud Subdomain", "type": "string", "description": "Your Marketing Cloud subdomain (e.g., 'mc123456789' in https://mc123456789.rest.marketingcloudapis.com/)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "salesforce_service_cloud", "name": "Salesforce Service Cloud", "logo": "https://logos.composio.dev/api/salesforce_service_cloud", "description": "Salesforce Service Cloud is a customer service platform providing case management, knowledge base, omnichannel support, and service automation to deliver exceptional customer experiences", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SALESFORCE_SERVICE_CLOUD_AGENT_SENSITIVE_DATA_RULE_TRIGGERED", "name": "Agent Sensitive Data Rule Triggered", "description": "Notifies Salesforce Live Agent that sensitive data rules were triggered in agent messages. **Purpose**: When an agent's outgoing message contains sensitive data (SSN, credit card, email, etc.), call this action to apply configured masking or handling rules to protect customer privacy. **Prerequisites**: - Active Live Agent chat session with valid chat_id - Sensitive data rules configured in Salesforce Setup - Live Agent feature must be enabled in your Salesforce org **Note**: Salesforce Live Agent Chat is deprecated and retiring February 14, 2026. Migrate to Messaging for In-App and Web for continued support. **Typical Flow**: 1. Agent sends message containing sensitive data 2. System detects sensitive content matches a rule 3. Call this action with the chat_id and triggered rules 4. Salesforce applies masking/filtering per rule configuration" }, { "slug": "SALESFORCE_SERVICE_CLOUD_CHASITOR_SNEAK_PEEK", "name": "Chasitor Sneak Peek", "description": "Send real-time typing indicator (sneak peek) to Live Agent during active chat session. Allows agents to see what visitors are typing before the message is sent. Requires an active Live Agent chat session with valid session_key and affinity token. The sequence number must increment with each request." }, { "slug": "SALESFORCE_SERVICE_CLOUD_COMPOSITE_BATCH", "name": "Composite Batch", "description": "Tool to execute multiple independent REST subrequests in one batch call. Use when bundling up to 25 independent operations to minimize round trips. Subrequests cannot reference each other." }, { "slug": "SALESFORCE_SERVICE_CLOUD_COMPOSITE_REQUEST", "name": "Composite Request", "description": "Execute up to 25 dependent Salesforce REST subrequests in a single API call. Subrequests execute sequentially and can reference results from earlier requests using '@{referenceId.field}' syntax. Use this when operations depend on each other (e.g., create Account then create related Contact). For independent operations, use Composite Batch instead." }, { "slug": "SALESFORCE_SERVICE_CLOUD_COMPOSITE_SOBJECT_TREE", "name": "Composite SObject Tree", "description": "Create one or more nested sObject record trees in a single API call. Supports parent-child relationships up to 5 levels deep, with a maximum of 200 total records across all trees. Use this for bulk insertion of related records (e.g., Account with Contacts, or Orders with Line Items). Relationships must be Master-Detail or Lookup. Only supports INSERT operations, not upserts." }, { "slug": "SALESFORCE_SERVICE_CLOUD_CREATE_CASE_RECORD", "name": "Create Case Record", "description": "Tool to create or upsert a Salesforce Case record. Use when you need to add a new Case or update via external ID." }, { "slug": "SALESFORCE_SERVICE_CLOUD_DELETE_CASE_RECORD", "name": "Delete Case Record", "description": "Tool to delete a Salesforce Case record. Use when you need to remove a case by its record ID." }, { "slug": "SALESFORCE_SERVICE_CLOUD_DESCRIBE_S_OBJECT", "name": "Describe SObject", "description": "Tool to retrieve metadata of any sObject. Use when you need to inspect field definitions, relationships, and supported features for objects like Account, Contact, Case, etc." }, { "slug": "SALESFORCE_SERVICE_CLOUD_END_CHAT_SESSION", "name": "End Chat Session", "description": "Ends a Salesforce Live Agent chat session using the DELETE SessionId endpoint. Prerequisites: - Active Live Agent chat session (obtained via SessionId GET + ChasitorInit POST) - Valid session_key from the session creation - Valid affinity token for routing to the correct server Behavior: - Returns success for 2xx responses (session ended) - Returns success for 404 (session not found/already ended - idempotent) - Returns failure for 401/403 (authentication/authorization errors) - Returns failure for 405 (method not allowed - endpoint may not be configured) Note: Live Agent (legacy chat) is deprecated and scheduled for retirement on Feb 14, 2026. Salesforce recommends migrating to Messaging for In-App and Web." }, { "slug": "SALESFORCE_SERVICE_CLOUD_GENERATE_REQUEST_ID", "name": "Generate Request ID", "description": "Generate a UUIDv4 string to use as an Idempotency-Key header in Salesforce User Interface API requests. This prevents duplicate record creation when POST, PATCH, or DELETE requests are retried due to network failures or timeouts. The same key returns cached responses for 30 days, avoiding duplicate operations and saving server resources. Use this tool whenever you need to ensure idempotent behavior for Salesforce UI API operations." }, { "slug": "SALESFORCE_SERVICE_CLOUD_GENERATE_SIGNED_JWT_ASSERTION", "name": "Generate Signed JWT Assertion", "description": "Tool to generate a signed JWT assertion for Salesforce JWT bearer OAuth flow. Use when you need to perform server-to-server authentication using a connected app’s certificate. Use before exchanging the assertion for an access token." }, { "slug": "SALESFORCE_SERVICE_CLOUD_GET_CASE_RECORD", "name": "Get Case Record", "description": "Retrieve a Salesforce Case record by its ID. Returns Case details including status, priority, subject, description, owner, and timestamps. Useful for: - Looking up Case details by ID - Checking Case status and priority - Getting customer issue information - Retrieving Case metadata and relationships Requires a valid 15 or 18-character Salesforce Case ID. Optionally specify which fields to retrieve using the fields parameter; otherwise all accessible fields are returned." }, { "slug": "SALESFORCE_SERVICE_CLOUD_GET_CHAT_MESSAGES", "name": "Get Chat Messages", "description": "Tool to long-poll for chat messages/events. Use after CreateChatSession to retrieve incoming chat events. Returns empty messages list when no new messages (HTTP 204). Call with ack from prior response to maintain sequence." }, { "slug": "SALESFORCE_SERVICE_CLOUD_GET_LIVE_AGENT_API_VERSION", "name": "Get Live Agent API Version", "description": "Tool to retrieve current Live Agent API version. Use when initializing chat sessions to ensure subsequent calls target the correct REST API version." }, { "slug": "SALESFORCE_SERVICE_CLOUD_LIST_EINSTEIN_BOTS", "name": "List Einstein Bots", "description": "Lists all Einstein Bot definitions in the Salesforce organization. This action queries the BotDefinition object using the Salesforce Tooling API to retrieve metadata about all Einstein Bots, including their IDs, labels, developer names, and language settings. Use this action when you need to: - Get a list of available Einstein Bots in the org - Find valid bot IDs for use with other Einstein Bots API operations - Retrieve bot metadata such as names and language settings Returns an empty list if no bots exist or if Tooling API access is unavailable." }, { "slug": "SALESFORCE_SERVICE_CLOUD_QUERY_ALL_SOQL", "name": "Query All SOQL", "description": "Tool to execute a SOQL query including deleted and archived records. Use when you need to fetch all rows including soft-deleted data in Salesforce." }, { "slug": "SALESFORCE_SERVICE_CLOUD_QUERY_SOQL", "name": "Query SOQL", "description": "Tool to execute a SOQL query. Use when you need to retrieve records from Salesforce via SOQL." }, { "slug": "SALESFORCE_SERVICE_CLOUD_RECONNECT_CHAT_SESSION", "name": "Reconnect Chat Session", "description": "Tool to reconnect a Live Agent chat session after the affinity token changes. Use this when you receive a 503 (Service Unavailable) response during chat operations, indicating the affinity token has changed and the session needs to be reestablished on a new server. After reconnecting, you must call ResyncChasitorState to restore the visitor's chat context. Note: Requires valid session_key and affinity tokens from an active Live Agent chat session." }, { "slug": "SALESFORCE_SERVICE_CLOUD_RESYNC_CHASITOR_STATE", "name": "Resync Chasitor State", "description": "Resynchronizes the chat visitor's state after a session reconnection. This action is part of the Salesforce Live Agent chat session recovery workflow: 1. First, call ReconnectChatSession with the session_key and affinity_token 2. Then, call this action to restore the visitor's chat state 3. Finally, resume normal chat operations (sending messages, getting messages, etc.) Prerequisites: - An active or recently disconnected Live Agent chat session - Valid session_key and affinity_token from the original session - Live Agent must be properly configured in the Salesforce org Note: The legacy Live Agent product is being phased out in favor of Messaging for In-App and Web. This action sends a POST request to /chat/rest/Chasitor/ChasitorResyncState with required Live Agent headers but no request body." }, { "slug": "SALESFORCE_SERVICE_CLOUD_RETRIEVE_SALESFORCE_USERNAME", "name": "Retrieve Salesforce Username", "description": "Tool to retrieve the Salesforce username. Use when you need the current authenticated user's username. Use after completing OAuth2 authentication." }, { "slug": "SALESFORCE_SERVICE_CLOUD_SEND_CUSTOM_EVENT", "name": "Send Custom Event", "description": "Send a custom event from a chat visitor to a Live Agent during an active chat session. Use this tool to trigger custom event handlers on the agent's side, enabling custom interactions beyond standard chat messages. Custom events can be used for actions like form submissions, button clicks, page navigation, or any application-specific events that need to be communicated to the agent. Prerequisites: - An active Live Agent chat session must be established - Live Agent REST API must be configured and enabled in your Salesforce org - Valid session_key and affinity_token from session initialization Note: This endpoint requires Live Agent to be properly configured. The API typically returns 204 No Content on success." }, { "slug": "SALESFORCE_SERVICE_CLOUD_SET_BREADCRUMB", "name": "Set Breadcrumb", "description": "Tool to set a breadcrumb URL for the visitor's current page. Use after a visitor navigates to a new page during an active chat session." }, { "slug": "SALESFORCE_SERVICE_CLOUD_UPLOAD_FILE_TO_S3", "name": "Upload File to S3", "description": "Tool to upload a file to managed S3 storage. Use when you need to persist files externally." }, { "slug": "SALESFORCE_SERVICE_CLOUD_VISITOR_SENSITIVE_DATA_RULE", "name": "Visitor Sensitive Data Rule Triggered", "description": "Tool to trigger sensitive data rules for the chat visitor. Use after detecting sensitive content to apply visitor masking or handling rules." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "salesforceservicecloud_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "full,refresh_token" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Salesforce Subdomain", "type": "string", "description": "Your Salesforce My Domain subdomain (e.g., 'your-company.my' in https://your-company.my.salesforce.com/...)", "required": true, "default": "login" }, { "name": "suffix.one", "displayName": "Instance endpoint", "type": "string", "description": "The service endpoint for your Salesforce instance eg /services/data/v61.0, used for API requests.", "required": true, "default": "/services/data/v61.0" } ], "optional": [] } } } ] }, { "slug": "salesmate", "name": "Salesmate", "logo": "https://logos.composio.dev/api/salesmate", "description": "Salesmate is an AI-powered CRM platform designed to help businesses engage leads, close deals faster, nurture relationships, and provide seamless support through a unified, intuitive interface.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SALESMATE_ADD_PRODUCT", "name": "Add Product", "description": "Tool to add a new product. Use when you need to create a new product in Salesmate before referencing it (e.g., in deals or orders). Example: \"Add a product named 'Widget Pro' (SKU WPRO1) priced at 199.99 USD.\"" }, { "slug": "SALESMATE_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company in the Salesmate CRM. Use when you need to register a new organization." }, { "slug": "SALESMATE_DELETE_PRODUCT", "name": "Delete Product", "description": "Tool to delete a product by ProductId. Use when you need to remove a product from the catalog after confirming the correct ProductId." }, { "slug": "SALESMATE_GET_ACTIVE_USERS", "name": "Get Active Users", "description": "Tool to retrieve all active users. Use when you need to fetch only users currently marked active for tasks, assignments, or user management audits." }, { "slug": "SALESMATE_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve details of a specific company by ID. Use when you have a company ID and need its full record. Example: \"Get company 42\"." }, { "slug": "SALESMATE_LIST_MODULES", "name": "List Modules", "description": "Tool to list all available Salesmate modules. Returns the core CRM modules including Contacts, Companies, Deals, Activities, Products, and Tickets. Use this to discover which modules are available for API operations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "salesmate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Salesmate Subdomain", "type": "string", "description": "The subdomain of your Salesmate account (e.g., 'demo' from 'demo.salesmate.io').", "required": true, "default": null }, { "name": "bearer_token", "displayName": "Session Token", "type": "string", "description": "Your Salesmate Session Token. Generate it from your Salesmate account: Profile Icon → Setup → API & Integrations → Session Tokens → Create.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sales_simplify", "name": "SalesSimplify", "logo": "https://logos.composio.dev/api/sales_simplify", "description": "The ultimate shopping cart and affiliate management platform, empowering online Entrepreneurs and digital publishers.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sales_simplify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Sales Simplify account and sign in, then go to Profile > Admin Settings > Api Keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sanity", "name": "Sanity", "logo": "https://logos.composio.dev/api/sanity", "description": "Sanity is a headless CMS platform that provides structured content storage and APIs for modern applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SANITY_ADD_DEFAULT_ROLE_TO_USERS", "name": "Add Default Role to Users", "description": "Apply organization default role to all users. Use when you need to assign the organization's default role to all existing users in the organization. Requires the resource ID of the organization." }, { "slug": "SANITY_CREATE_ATTR_DEFINITION", "name": "Create Attribute Definition", "description": "Tool to create a new user attribute definition in Sanity. Use when you need to define a custom attribute (like 'customer-tier' or 'subscription-level') that can be attached to resources. The key must be unique within the resource. The attribute can have a type of 'string', 'number', or 'boolean' and can optionally be a list of values or read-only." }, { "slug": "SANITY_CREATE_PROMPT_POST", "name": "Create Prompt Post", "description": "Send a one-shot prompt to the Sanity Content Agent. Stateless one-shot prompt endpoint. No thread management or message persistence. Ideal for simple, single-turn interactions. Use when you need to send a single prompt and receive a response without maintaining conversation context." }, { "slug": "SANITY_DELETE_ATTR_DEFINITION", "name": "Delete User Attribute Definition", "description": "Delete a user attribute definition. Use when you need to remove a custom attribute definition from an organization or project in Sanity. The attribute definition controls how user attributes are structured and validated for a given resource. Deleting a definition does not delete existing user attribute values, but users will no longer be able to set values for that attribute." }, { "slug": "SANITY_DELETE_DOCUMENT", "name": "Delete Document", "description": "Delete a document from Sanity by ID or query. This action is irreversible when purge is true — the document cannot be recovered once permanently deleted. Use when you need to remove a specific document by ID or bulk delete documents matching a GROQ query (limited to 10,000 documents per operation). For large deletions, paginate by document ID. Set dry_run to true to test the operation without modifying data." }, { "slug": "SANITY_DELETE_USER_ATTRIBUTES", "name": "Delete User Attributes", "description": "Delete custom attributes from a Sanity user within an organization. Use this tool when you need to remove specific custom attributes from a user account. The action deletes the attributes specified in the request and returns the updated attribute list for the user. Example use case: Removing outdated metadata like 'location' or 'year_started' from a user profile." }, { "slug": "SANITY_GET_DOCUMENT", "name": "Get Document by ID", "description": "Fetch a single document by its ID from Sanity. Use this action when you need to retrieve a specific document using its unique identifier rather than running a GROQ query. Returns the complete document with all system fields including _id, _type, _rev, _createdAt, and _updatedAt." }, { "slug": "SANITY_GET_INVITE_BY_TOKEN", "name": "Get Invite By Token", "description": "Retrieve an invite by its public token. Use this action when you need to fetch details about an invite using the invite token that was shared with the invitee. Returns invite information including status, role, and inviter details." }, { "slug": "SANITY_GET_ORG_ROLE", "name": "Get Organization Role", "description": "Retrieve a specific organization role by its ID. Use this action when you need to fetch details about an organization role including its permissions, title, description, and whether it applies to users or robots. The role must exist for the specified organization." }, { "slug": "SANITY_GET_PERMISSION", "name": "Get Permission", "description": "Get a permission for a specific resource. Use when you need to retrieve details about a particular permission including its actions, parameters, and scope. The action retrieves permission information based on the resource type, resource ID, and permission name provided in the path parameters." }, { "slug": "SANITY_GET_PROJECT", "name": "Get Project", "description": "Retrieve full details for a specific Sanity project by its ID. Returns comprehensive project information including display name, organization, studio host, and timestamps. Use this action when you need to fetch complete project details or verify project configuration. Optional parameters allow including member lists and feature flags in the response." }, { "slug": "SANITY_GET_ROBOTS", "name": "Get Robots", "description": "Tool to get robots with access to a resource. Use when you need to retrieve a list of robots (service accounts) that have been granted access to a specific resource along with their assigned roles. This action supports pagination through the next_cursor parameter." }, { "slug": "SANITY_GET_ROLE", "name": "Get Role", "description": "Retrieve a specific role for a given resource type and resource ID. Use this action when you need to fetch details about a role including its permissions, title, description, and whether it applies to users or robots. The role must exist for the specified resource." }, { "slug": "SANITY_GET_USERS", "name": "List Resource Users", "description": "List all users of a resource and their assigned roles. Use when you need to retrieve user information and role assignments for a specific project or organization. Supports pagination via cursor." }, { "slug": "SANITY_LIST_ORG_ROLES", "name": "List Organization Roles", "description": "List all roles available for an organization. Use this action to retrieve all available roles that can be assigned to users within a specific Sanity organization. The organization_id is required to identify which organization's roles to list." }, { "slug": "SANITY_LIST_USER_ATTRIBUTES", "name": "List User Attributes", "description": "Tool to retrieve user attributes from a Sanity organization. Use when you need to get the attributes (such as roles, permissions, or custom properties) associated with a specific user in a Sanity organization. Supports pagination via the cursor parameter." }, { "slug": "SANITY_QUERY_ALL_SCREENING", "name": "Query All Screening", "description": "Execute a GROQ query to fetch all screening documents from Sanity. Uses the Sanity HTTP query API endpoint. Default query retrieves all documents of type 'screening'. Supports optional query parameters for dynamic queries." }, { "slug": "SANITY_QUERY_DOCUMENTS", "name": "Query Documents", "description": "Execute an arbitrary GROQ query against a Sanity dataset. GROQ is Sanity's query language for fetching and transforming content. This is a general-purpose query action distinct from any screening-specific tools. Use this action when you need to query documents from a Sanity dataset using custom GROQ queries. Supports optional parameters, perspective control, and CDN optimization." }, { "slug": "SANITY_UPDATE_ORG_ACL", "name": "Update Organization ACL", "description": "Tool to assign a role to a member in a Sanity organization. Use when adding or modifying user roles within an organization." }, { "slug": "SANITY_UPDATE_USER_ATTRIBUTES_VALUES", "name": "Update User Attributes Values", "description": "Update user attribute values for a resource. Use this action to set or update custom attributes for a user within an organization or project. When setting a value for an attribute key that also exists in SAML, the Sanity value will take precedence and shadow the SAML value." }, { "slug": "SANITY_VALIDATE_CREDENTIAL", "name": "Validate Credential", "description": "Validate Sanity API credentials by fetching the authenticated user's information. Use this action when you need to verify that an API token is valid and has proper authentication. This action returns user information and accessible projects if the token is valid." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sanity_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Project ID", "type": "string", "description": "Your Sanity project ID (found in project settings or from sanity.json)", "required": true, "default": null }, { "name": "version", "displayName": "API Version", "type": "string", "description": "API version in YYYY-MM-DD format (e.g., 2021-06-07)", "required": true, "default": "2021-06-07" }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Sanity API token (personal token, robot token, or project token). Create one at: Manage > API > Tokens in your Sanity project settings, or use \"sanity debug --secrets\" CLI command", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sap", "name": "Sap", "logo": "https://logos.composio.dev/api/sap", "description": "SAP Business One Service Layer API integration for ERP operations", "category": "commerce", "authSchemes": [ "BASIC", "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "sap_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "SAP Server URL", "type": "string", "description": "Full SAP server URL including port (e.g., https://server:50000/b1s/v2)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "BASIC", "name": "sap_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "full", "displayName": "SAP Server URL", "type": "string", "description": "Full SAP server URL including port (e.g., https://server:50000/b1s/v2)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "sap_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "SAP Server URL", "type": "string", "description": "Full SAP server URL including port (e.g., https://server:50000/b1s/v2)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Username", "type": "string", "description": "SAP username for authentication", "required": true, "default": null }, { "name": "generic_token", "displayName": "Password", "type": "string", "description": "SAP password for authentication", "required": true, "default": null }, { "name": "generic_id", "displayName": "Company Database", "type": "string", "description": "SAP Company Database name (CompanyDB)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sap_successfactors", "name": "SAP SuccessFactors", "logo": "https://logos.composio.dev/api/sap_successfactors", "description": "Cloud-based human capital management software covering Employee Central, Recruiting, Performance & Goals, Learning, Compensation, and more.", "category": "human resources", "authSchemes": [ "SAML" ], "toolCount": 64, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SAP_SUCCESSFACTORS_APPROVE_CALIBRATION_SESSION", "name": "Approve Calibration Session", "description": "Finalize a calibration session that is in the In Progress or Approving status." }, { "slug": "SAP_SUCCESSFACTORS_CREATE_A_FEEDBACK_REQUEST", "name": "Create a Feedback Request", "description": "Create a feedback request in SAP SuccessFactors Continuous Feedback. Use when you need to request performance feedback from one employee about another. At least one question must be provided." }, { "slug": "SAP_SUCCESSFACTORS_CREATE_LEARNING_ACTIVITIES_BULK", "name": "Create Learning Activities Bulk", "description": "Create learning activities and associate them with development goals in bulk (requires third-party LMS integration)." }, { "slug": "SAP_SUCCESSFACTORS_CREATE_ONBOARDEE", "name": "Create Onboardee", "description": "Creates a new onboardee in SAP SuccessFactors Onboarding 2.0 system. Use when initiating the onboarding process for a new hire or rehire. Requires admin create user permissions." }, { "slug": "SAP_SUCCESSFACTORS_CREATE_UPDATE_SUCCESSOR_NOMINATION", "name": "Create or Update Successor Nomination", "description": "Create or update a successor nomination for a position or talent pool in succession planning. Use when you need to nominate or update a successor for a specific position or talent pool." }, { "slug": "SAP_SUCCESSFACTORS_DELETE_NOMINATION_POSITION_TALENT_POOL", "name": "Delete Nomination", "description": "Delete a nomination for a position or talent pool in succession planning. Use when you need to remove a nominee from a position or talent pool nomination." }, { "slug": "SAP_SUCCESSFACTORS_GET_APPLICATION_INTERVIEW", "name": "Get Application Interview", "description": "Retrieves interview information related to job applications from Interview Central. Use when you need to query interview schedules, statuses, or details for applicants. Note: This entity checks only the first 1000 records, so filtering by applicationId is recommended." }, { "slug": "SAP_SUCCESSFACTORS_GET_BACKGROUND_EDUCATION", "name": "Get Background Education", "description": "Tool to retrieve background education records for employees from SAP SuccessFactors. Use when you need to query education history with support for filtering, field selection, and pagination via OData query options. Background entities use backgroundElementId as the unique key field." }, { "slug": "SAP_SUCCESSFACTORS_GET_BACKGROUND_MOBILITY", "name": "Get Background Mobility", "description": "Retrieves mobility background records showing employee willingness to relocate. Use when you need to query employee geographic mobility preferences and location data. Results can be filtered and ordered by bgOrderPos to maintain screen display order." }, { "slug": "SAP_SUCCESSFACTORS_GET_CALIBRATION_SESSION_BY_ID", "name": "Get Calibration Session By ID", "description": "Get a specific calibration session by session ID." }, { "slug": "SAP_SUCCESSFACTORS_GET_CALIBRATION_SESSIONS", "name": "Get Calibration Sessions", "description": "Query all the calibration sessions that a user can access." }, { "slug": "SAP_SUCCESSFACTORS_GET_CALIBRATION_SUBJECT_BY_ID", "name": "Get Calibration Subject By ID", "description": "Query a specific subject's competency ratings and ratings within a calibration session." }, { "slug": "SAP_SUCCESSFACTORS_GET_CALIBRATION_SUBJECT_RATINGS", "name": "Get Calibration Subject Ratings", "description": "Query a subject's ratings, competency ratings, and comments by using session ID." }, { "slug": "SAP_SUCCESSFACTORS_GET_CDP_LEARNING_METADATA", "name": "Get CDP Learning Metadata", "description": "Get metadata for Career Development Planning Learning service." }, { "slug": "SAP_SUCCESSFACTORS_GET_CURRENT_USER", "name": "Get Current User", "description": "Retrieves the currently authenticated user's information from SAP SuccessFactors." }, { "slug": "SAP_SUCCESSFACTORS_GET_CUSTOM_MDF_OBJECT", "name": "Get Custom MDF Object", "description": "Tool to retrieve custom MDF (Metadata Framework) objects from SAP SuccessFactors. Custom object names begin with cust_ prefix in the API. Use when you need to query custom business objects defined in the MDF framework." }, { "slug": "SAP_SUCCESSFACTORS_GET_EMP_EMPLOYMENT_TERMINATION", "name": "Get Employee Employment Termination", "description": "Retrieves employee termination information records from SAP SuccessFactors. Contains details about employment terminations including termination date and reason. Use when you need to query termination records with support for filtering, field selection, expansion of related entities, and pagination via OData query options." }, { "slug": "SAP_SUCCESSFACTORS_GET_EMPLOYEE_TIME", "name": "Get Employee Time", "description": "Retrieves employee time entries including time off records from SAP SuccessFactors. Use when you need to query approved leaves, time-off requests, or employee time tracking data. Supports filtering by userId, approvalStatus, timeType, and date ranges." }, { "slug": "SAP_SUCCESSFACTORS_GET_EMPLOYEE_TIMESHEET", "name": "Get Employee Timesheet", "description": "Retrieves employee timesheet records for attendances, overtime, on-call times, and allowances. Use when you need to query employee timesheet data from SAP SuccessFactors." }, { "slug": "SAP_SUCCESSFACTORS_GET_EMP_PAY_COMP_NON_RECURRING", "name": "Get Non-Recurring Pay Components", "description": "Tool to retrieve non-recurring pay component information including bonuses and one-time payments from SAP SuccessFactors. Use when you need data about employee bonuses, commissions, or other non-recurring compensation components." }, { "slug": "SAP_SUCCESSFACTORS_GET_EMP_PAY_COMP_RECURRING", "name": "Get Recurring Pay Components", "description": "Tool to retrieve recurring pay component information including salary and benefits data from SAP SuccessFactors. Use when you need to query employee compensation data with recurring payments such as salary, allowances, or benefits. Supports filtering by userId and payComponent code." }, { "slug": "SAP_SUCCESSFACTORS_GET_FEEDBACK_RECORDS_SERVICE_AVAILABLE", "name": "Get Feedback Records", "description": "Tool to retrieve continuous feedback records from SAP SuccessFactors Performance and Goals module using OData V4 protocol. Use when you need to query and retrieve feedback data with filtering, sorting, pagination, and field selection capabilities. Supports standard OData v4 query operations for flexible data retrieval." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_BUSINESS_UNIT", "name": "Get FOBusinessUnit", "description": "Retrieves foundation object business unit records for organizational structure hierarchy. Use when querying business unit information with support for filtering, sorting, and pagination." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_COMPANY", "name": "Get FOCompany Records", "description": "Retrieves foundation object company records from SAP SuccessFactors. Returns company information including display_name, legal_name, and entityOID for One Domain Model integration." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_COST_CENTER", "name": "Get Foundation Object Cost Centers", "description": "Retrieves foundation object cost center records for organizational structure. Contains cost center information with entityOID for One Domain Model integration. Use standard OData query parameters to filter, sort, and paginate results." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_DEPARTMENT", "name": "Get FODepartment Records", "description": "Tool to retrieve foundation object department records from SAP SuccessFactors. Use when you need to access organizational department structure information including team and group details." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_JOB_CODE", "name": "Get Foundation Object Job Codes", "description": "Retrieves foundation object job code records containing job classification information. Use when you need to fetch job codes with their associated metadata for positions." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_JOB_FUNCTION", "name": "Get Job Functions", "description": "Tool to retrieve foundation object job function records for categorizing job roles. Use when you need to query job function data with support for filtering, field selection, and pagination via OData query options." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_LOCATION", "name": "Get Foundation Object Location", "description": "Tool to retrieve foundation object location records for work locations. Use when you need to query organizational location data including names, status, timezones, and address details." }, { "slug": "SAP_SUCCESSFACTORS_GET_FO_PAY_GROUP", "name": "Get FOPayGroup", "description": "Retrieves foundation object pay group records for compensation and payroll groupings. Use when querying pay group data from SAP SuccessFactors." }, { "slug": "SAP_SUCCESSFACTORS_GET_FORM_CONTENT", "name": "Get Form Content", "description": "Retrieves performance form content from SAP SuccessFactors. Use to query forms with filters like form template ID or modification date." }, { "slug": "SAP_SUCCESSFACTORS_GET_GOAL_PLAN_TEMPLATE", "name": "Get Goal Plan Template", "description": "Retrieves goal plan template information from SAP SuccessFactors. Use when you need to fetch goal plan template configurations that define the structure of goals via DTD file." }, { "slug": "SAP_SUCCESSFACTORS_GET_GOALS_BY_PLAN", "name": "Get Goals By Plan", "description": "Retrieves performance goals data using the goal plan ID. Use this to query goals for a specific plan (e.g., Goal_11) with optional filtering by userId or other fields." }, { "slug": "SAP_SUCCESSFACTORS_GET_INTERVIEW_OVERALL_ASSESSMENT", "name": "Get Interview Overall Assessment", "description": "Tool to retrieve overall interview ratings and navigation for assessments from Interview Central. Use when you need to fetch overall interview assessment data including ratings, recommendations, and comments." }, { "slug": "SAP_SUCCESSFACTORS_GET_JOB_APPLICATION", "name": "Get Job Application", "description": "Retrieves job application records linking candidates to job requisitions. Use when you need to query application data, filter by status, or retrieve candidate application information." }, { "slug": "SAP_SUCCESSFACTORS_GET_JOB_REQ_SCREENING_QUESTION", "name": "Get Job Requisition Screening Questions", "description": "Tool to retrieve screening questions related to job requisitions from SAP SuccessFactors Recruiting. Use when you need to access screening questions for candidate assessment in the recruitment process." }, { "slug": "SAP_SUCCESSFACTORS_GET_JOB_REQUISITION", "name": "Get Job Requisition", "description": "Tool to retrieve job requisition records from SAP SuccessFactors Recruiting Management. Use when you need to read job requisitions, send them to third-party systems, or manage the recruiting workflow." }, { "slug": "SAP_SUCCESSFACTORS_GET_ODATA_METADATA_CALIB_SESSION_SERVICE", "name": "Get Calibration Session Metadata", "description": "Get OData metadata for Calibration Session service. Returns the service metadata including available entity sets. Use this to discover available entities in the CalSession.svc service." }, { "slug": "SAP_SUCCESSFACTORS_GET_ODATA_METADATA_CLOCK_INCLOCK_OUT", "name": "Get Clock In/Out Integration Metadata", "description": "Get OData metadata for Clock In/Clock Out Integration service. Returns the complete service schema including entity types, enum types, complex types, and entity container definitions." }, { "slug": "SAP_SUCCESSFACTORS_GET_ODATA_METADATA_FOR_NOMINATION_SERVICE", "name": "Get Nomination Service Metadata", "description": "Get OData metadata for Nomination service. Returns the service metadata including available entity sets for successor and talent pool nominations. Use this to discover available entities in the NominationService.svc service." }, { "slug": "SAP_SUCCESSFACTORS_GET_ODATA_METADATA_ONBOARDING_ADDL", "name": "Get Onboarding Additional Services Metadata", "description": "Get OData metadata for Onboarding Additional Services. Returns the complete service schema including available operations like updateUserNamePostHiring and getUserNameOfNewlyHiredEmployee." }, { "slug": "SAP_SUCCESSFACTORS_GET_ODATA_USER_METADATA", "name": "Get User Entity Metadata", "description": "Retrieves the OData metadata document for the User entity describing its properties and operations. Use this to discover available fields, data types, and navigation properties for the User entity." }, { "slug": "SAP_SUCCESSFACTORS_GET_ONB2_PROCESS", "name": "Get Onboarding 2.0 Processes", "description": "Tool to retrieve Onboarding 2.0 process records for new hires from SAP SuccessFactors using OData V2 protocol. Use when you need to query onboarding workflow information with filtering, sorting, and field selection capabilities." }, { "slug": "SAP_SUCCESSFACTORS_GET_PENDING_FEEDBACK_REQUESTS_FEEDBACK", "name": "Get Pending Feedback Requests", "description": "Tool to retrieve pending feedback requests or feedback request records from SAP SuccessFactors Continuous Feedback. Use when you need to query feedback requests with filtering, sorting, pagination, and field selection capabilities. Supports standard OData v4 query operations for flexible data retrieval." }, { "slug": "SAP_SUCCESSFACTORS_GET_PER_PERSONAL", "name": "Get Personal Information Records", "description": "Tool to retrieve personal information records from SAP SuccessFactors Employee Central. The PerPersonal entity contains non-effective-dated biographical information, emergency contacts, social media accounts, and email addresses. Use when you need to access personal information data." }, { "slug": "SAP_SUCCESSFACTORS_GET_PER_PERSON_BY_ID", "name": "Get Person by ID", "description": "Tool to retrieve person information for an employee by their external person ID. Use when you need to access core personal information data from SAP SuccessFactors Employee Central PerPerson entity." }, { "slug": "SAP_SUCCESSFACTORS_GET_PICKLIST", "name": "Get Picklist", "description": "Tool to retrieve picklist definitions from SAP SuccessFactors. Use when you need to fetch selectable value lists (picklists) that are used across various SuccessFactors entities." }, { "slug": "SAP_SUCCESSFACTORS_GET_PICKLIST_OPTION", "name": "Get Picklist Option", "description": "Retrieves picklist option values with localized labels from SAP SuccessFactors. Use the localeLabel property to get text in the locale of the logged-in user. Supports OData query parameters for filtering, selection, and pagination." }, { "slug": "SAP_SUCCESSFACTORS_GET_POSITION", "name": "Get Position", "description": "Retrieves position management records from SAP SuccessFactors Employee Central. Use when you need to query position structure and hierarchy information." }, { "slug": "SAP_SUCCESSFACTORS_GET_TALENT_POOL", "name": "Get Talent Pool", "description": "Retrieves talent pool records including members and nomination details. Use when you need to access talent pool information for succession planning." }, { "slug": "SAP_SUCCESSFACTORS_GET_TEMPORARY_TIME_INFORMATION", "name": "Get Temporary Time Information", "description": "Retrieves temporary time information records from Time Management module. Use when you need to query temporary work schedules assigned to employees." }, { "slug": "SAP_SUCCESSFACTORS_GET_TIME_ACCOUNT_SNAPSHOT", "name": "Get Time Account Snapshot", "description": "Retrieves time account snapshot data for leave liability calculation and payroll. Use when you need balance information for employee time accounts as of a specific point in time." }, { "slug": "SAP_SUCCESSFACTORS_GET_WORK_ORDER", "name": "Get Work Order", "description": "Tool to retrieve work order records for contingent worker management from SAP SuccessFactors. Use when you need to query work order information with support for filtering, field selection, and pagination via OData query options." }, { "slug": "SAP_SUCCESSFACTORS_GIVE_OR_RESPOND_FEEDBACK", "name": "Give Feedback or Respond to Feedback Request", "description": "Tool to give performance feedback or respond to a feedback request in SAP SuccessFactors Continuous Performance Management. Use when you need to provide feedback on employee performance, strengths, development areas, or respond to existing feedback requests. Supports up to 3 question-answer pairs with extended field lengths (4000 characters per answer)." }, { "slug": "SAP_SUCCESSFACTORS_LIST_CANDIDATES", "name": "List Candidates", "description": "Tool to retrieve a list of candidates from SAP SuccessFactors. Use when you need to query candidate data with OData filtering and pagination options." }, { "slug": "SAP_SUCCESSFACTORS_LIST_EMP_EMPLOYMENT", "name": "List Employee Employment Records", "description": "Tool to retrieve a list of all employment records from SAP SuccessFactors. Use when you need to query employment data including start dates, employment types, and assignment classes. Supports filtering by custom string fields (custom-string1, custom-string2, custom-string3) and userId." }, { "slug": "SAP_SUCCESSFACTORS_LIST_PER_PERSON", "name": "List Person Records", "description": "Tool to retrieve a list of person records from SAP SuccessFactors Employee Central. Use when you need to query employee personal information. The PerPerson entity is the foundation for all employee data in Employee Central and always returns the latest active record for each person." }, { "slug": "SAP_SUCCESSFACTORS_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a list of all employee users from SAP SuccessFactors. Use when you need to query user information with support for filtering, field selection, and pagination via OData query options." }, { "slug": "SAP_SUCCESSFACTORS_QUERY_ALL_AVAILABLE_CLOCK_CLOCK_OUT", "name": "Query All Available Clock In/Clock Out Groups", "description": "Query all available clock in/clock out groups. Use when you need to retrieve a list of all clock in/clock out groups configured in SAP SuccessFactors." }, { "slug": "SAP_SUCCESSFACTORS_QUERY_CLOCK_CLOCK_OUT_GROUP_CODE_TIME", "name": "Query Clock In/Clock Out Group By Code", "description": "Query a clock in/clock out group by code with time event types. Use when you need to retrieve details of a specific Clock In Clock Out Group including its configuration and optionally related Time Event Types." }, { "slug": "SAP_SUCCESSFACTORS_REFRESH_CDP_LEARNING_METADATA", "name": "Refresh CDP Learning Metadata", "description": "Refresh metadata for Career Development Planning Learning service." }, { "slug": "SAP_SUCCESSFACTORS_REFRESH_METADATA_CONT_FEEDBACK_SERVICE", "name": "Refresh Metadata for Continuous Feedback", "description": "Refresh metadata cache for Continuous Feedback service. Use when metadata changes need to be applied without service interruption." }, { "slug": "SAP_SUCCESSFACTORS_UPDATE_CALIBRATION_SUBJECT_RATINGS", "name": "Update Calibration Subject Ratings", "description": "Update a subject's competency ratings in a calibration session." }, { "slug": "SAP_SUCCESSFACTORS_UPDATE_INTERNAL_USERNAME_NEW_HIRES_AFTER", "name": "Update Username Post Hiring", "description": "Update the internal username of new hires after hiring process is completed from Active Directory. Use after Manage Pending Hire (MPH) submit and before day 1 (pre-conversion). Requires 'Manage Onboarding 2.0 or Offboarding 2.0 Update New Hire Data for External HRIS' permission." } ], "triggers": [], "authConfigDetails": [ { "mode": "SAML", "name": "sap_successfactors_saml", "fields": { "auth_config_creation": { "required": [ { "name": "full", "displayName": "API Base URL", "type": "string", "description": "SAP SuccessFactors API Base URL (e.g., https://apisalesdemo8.successfactors.com)", "required": true, "default": null }, { "name": "authorizationUrl", "displayName": "Auth Base URL", "type": "string", "description": "SAP SuccessFactors Authentication Base URL (e.g., https://hcm-us10-sales.hr.cloud.sap)", "required": true, "default": null }, { "name": "company_id", "displayName": "Company ID", "type": "string", "description": "Your SAP SuccessFactors company ID (e.g., SFCPART002341)", "required": true, "default": null }, { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth2 Client ID for SAML authentication", "required": true, "default": null }, { "name": "private_key", "displayName": "Private Key", "type": "string", "description": "Private key for SAML assertion signing (Base64 encoded)", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "user_id", "displayName": "User ID", "type": "string", "description": "Integration System User ID for SAML assertion (e.g., sfadmin)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sapling_ai", "name": "Sapling Ai", "logo": "https://logos.composio.dev/api/sapling_ai", "description": "Language models for enterprise applications including grammar checking, spell checking, and AI-powered writing assistance", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sapling_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Sapling.AI account and sign in. Go to \"User\" > \"Settings\" > \"API\" to retrieve your API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "satismeter", "name": "Satismeter", "logo": "https://logos.composio.dev/api/satismeter", "description": "SatisMeter is a customer feedback platform that enables businesses to collect and analyze user feedback through targeted surveys.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SATISMETER_EMBED_SURVEY", "name": "Embed Survey", "description": "Tool to generate a JavaScript snippet to embed a SatisMeter survey. Use after configuring your project and obtaining your write key." }, { "slug": "SATISMETER_GET_UNSUBSCRIBED_EMAILS", "name": "Get Unsubscribed Emails", "description": "Tool to retrieve list of unsubscribed emails for a project. Use when you need to fetch emails that have opted out of surveys." }, { "slug": "SATISMETER_LIST_SURVEYS", "name": "List Surveys", "description": "Tool to list surveys (campaigns) in a project. Use when you have a valid project ID and need to retrieve its surveys." }, { "slug": "SATISMETER_LIST_USERS", "name": "List Users", "description": "Tool to list users in a project. Use when you have a valid project ID and need to retrieve its users. Optionally filter by a specific user ID." }, { "slug": "SATISMETER_UPDATE_UNSUBSCRIBED_EMAILS", "name": "Update Unsubscribed Emails", "description": "Tool to update the list of unsubscribed emails for a project. Use when you need to bulk unsubscribe user emails from surveys." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "satismeter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SatisMeter API Key", "type": "string", "description": "The API key used for authenticating requests to the SatisMeter API.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Project ID", "type": "string", "description": "The unique identifier for the SatisMeter project.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "saucelabs", "name": "Saucelabs", "logo": "https://logos.composio.dev/api/saucelabs", "description": "Sauce Labs provides a comprehensive continuous testing cloud for web and mobile app testing across browsers and devices.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SAUCELABS_GET_API_DEFINITION", "name": "Get Performance API Definition", "description": "Tool to retrieve the OpenAPI/Swagger JSON documentation for the Sauce Labs Performance API. Use when you need to understand the API specification, endpoints, or schemas available in the Performance API." }, { "slug": "SAUCELABS_GET_API_STATUS", "name": "Get API Status", "description": "Tool to retrieve the current operational status of Sauce Labs services. Use when you need to check if Sauce Labs is up and running or to get current wait times." }, { "slug": "SAUCELABS_GET_APPIUM_EOL", "name": "Get Appium EOL", "description": "Tool to retrieve end-of-life information for Appium versions. Returns Unix timestamps indicating when Sauce Labs support for each Appium version will be discontinued. Use when checking version compatibility or planning Appium upgrades." }, { "slug": "SAUCELABS_GET_PLATFORMS", "name": "Get Supported Platforms", "description": "Tool to get supported platforms for an automation API. Use when you need to retrieve available platforms for Appium, WebDriver, or all automation APIs on Sauce Labs." }, { "slug": "SAUCELABS_GET_TUNNEL_VERSIONS", "name": "Get Tunnel Versions", "description": "Tool to retrieve information about available Sauce Connect tunnel versions. Use when checking for the latest version, downloading specific platform binaries, or listing all available versions." }, { "slug": "SAUCELABS_LIST_JOBS", "name": "List Jobs", "description": "Tool to retrieve all jobs for a SauceLabs user. Use when you need to list test execution jobs with optional filters for time range, job type, or owner." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "saucelabs_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your Sauce Labs data center region. Free-trial and self-service users can only access one data center selected at signup. Enterprise users can access multiple data centers based on their contract.", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your Sauce Labs username (found in User Settings)", "required": true, "default": null }, { "name": "password", "displayName": "Access Key", "type": "string", "description": "Your Sauce Labs access key (found in User Settings under Account menu)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scale_ai", "name": "Scale ai", "logo": "https://logos.composio.dev/api/scale_ai", "description": "Scale AI provides data labeling and annotation services for machine learning, offering access to a global workforce and sophisticated tools for training AI models with high-quality labeled data", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCALE_AI_ADD_STUDIO_ASSIGNMENTS", "name": "Add Studio Assignments", "description": "Tool to add project assignments to team members in Scale AI Studio. Use when you need to assign specific projects to team members by their email addresses. This action creates new assignments for the specified team members and projects." }, { "slug": "SCALE_AI_ADD_TASK_TAGS", "name": "Add Task Tags", "description": "Tool to add tags to an existing task. Use when you need to tag or categorize tasks for organization and filtering. Automatically avoids duplicate tags." }, { "slug": "SCALE_AI_CREATE_BATCH", "name": "Create Batch", "description": "Tool to create a new batch within a project. Use when you need to group multiple tasks together for organizational and processing purposes." }, { "slug": "SCALE_AI_CREATE_DOCUMENT_TRANSCRIPTION_TASK", "name": "Create Document Transcription Task", "description": "Tool to create a document transcription task where workers transcribe and annotate information from single or multi-page documents. Use when you need to extract structured data from documents like invoices, forms, or screenshots." }, { "slug": "SCALE_AI_CREATE_IMAGE_ANNOTATION_TASK", "name": "Create Image Annotation Task", "description": "Tool to create an image annotation task where annotators label images with vector geometric shapes (box, polygon, line, point, cuboid, ellipse). Use when you need to annotate objects in images with bounding boxes, polygons, or other geometric annotations." }, { "slug": "SCALE_AI_CREATE_LIDAR_ANNOTATION_TASK", "name": "Create Lidar Annotation Task", "description": "Tool to create a lidar annotation task where annotators mark objects with 3D cuboids in 3D space. Use when you need to annotate LIDAR frame sequences with 3D object detection." }, { "slug": "SCALE_AI_CREATE_LIDAR_SEGMENTATION_TASK", "name": "Create LiDAR Segmentation Task", "description": "Tool to create a LiDAR segmentation task where annotators assign semantic class labels to individual LiDAR points. Use when you need to annotate point cloud data with object classes such as vehicles, pedestrians, roads, buildings, etc. Either 'project' or 'batch' must be provided in the request." }, { "slug": "SCALE_AI_CREATE_NAMED_ENTITY_RECOGNITION_TASK", "name": "Create Named Entity Recognition Task", "description": "Tool to create a named entity recognition task for labelers to highlight text entity mentions. Use when you need to extract and label entities such as people, organizations, or locations from text." }, { "slug": "SCALE_AI_CREATE_SEGMENTATION_ANNOTATION_TASK", "name": "Create Segmentation Annotation Task", "description": "Tool to create a segmentation task where annotators classify pixels in an image according to provided labels. Use when you need pixel-wise semantic segmentation of images." }, { "slug": "SCALE_AI_CREATE_TEXT_COLLECTION_TASK", "name": "Create Text Collection Task", "description": "Tool to create a textcollection task for collecting information from attachments and/or web sources. Use when you need to gather structured data from documents, websites, images, or other content by having taskers fill out defined fields." }, { "slug": "SCALE_AI_CREATE_VIDEO_ANNOTATION_TASK", "name": "Create Video Annotation Task", "description": "Tool to create a video annotation task where annotators draw geometric shapes around specified objects across video frames. Use when you need to annotate video content with bounding boxes, polygons, lines, points, cuboids, or ellipses. Accepts either individual image frames or video files." }, { "slug": "SCALE_AI_CREATE_VIDEO_PLAYBACK_ANNOTATION_TASK", "name": "Create Video Playback Annotation Task", "description": "Tool to create a video playback annotation task where annotators draw shapes around specified objects in video files. Use when you need to annotate videos with bounding boxes, polygons, lines, points, cuboids, or ellipses for object detection and tracking." }, { "slug": "SCALE_AI_DELETE_TASK_TAGS", "name": "Delete Task Tags", "description": "Tool to remove specified tags from a Scale AI task. Use when you need to clean up or modify task tags." }, { "slug": "SCALE_AI_DELETE_TASK_UNIQUE_ID", "name": "Delete Task Unique ID", "description": "Tool to remove the unique identifier from a task. Use when you need to remove a task's unique identifier for enhanced data management control." }, { "slug": "SCALE_AI_FINALIZE_BATCH", "name": "Finalize Batch", "description": "Tool to finalize a batch so its tasks can be worked on. Use when you need to finalize a batch for Scale Rapid and Studio customers. For other customer types, this endpoint returns success without performing any action." }, { "slug": "SCALE_AI_GET_ASSETS", "name": "Get Assets", "description": "Tool to retrieve file assets with filtering capabilities by project and metadata. Use when you need to list or search for files uploaded to Scale AI, filtered by project and optionally by metadata. Supports cursor-based pagination for large result sets." }, { "slug": "SCALE_AI_GET_BATCH", "name": "Get Batch", "description": "Tool to retrieve the details of a batch with the specified name. Use when you need to check the status or configuration of an existing batch." }, { "slug": "SCALE_AI_GET_BATCH_STATUS", "name": "Get Batch Status", "description": "Tool to retrieve the current status of a batch and task completion counts. Use when you need to monitor batch progress or check how many tasks are pending or completed." }, { "slug": "SCALE_AI_GET_FIXLESS_AUDITS", "name": "Get Fixless Audits", "description": "Tool to retrieve fixless audits by task ID or audit ID. Use when you need to fetch audit information for quality assessment. At least one of task_id or id must be provided." }, { "slug": "SCALE_AI_GET_PROJECT", "name": "Get Project", "description": "Tool to retrieve details about a specific Scale AI project using its unique identifier. Use when you need to get project metadata including type, name, parameter history, and creation timestamp." }, { "slug": "SCALE_AI_GET_QUALITY_LABELERS", "name": "Get Quality Labelers", "description": "Tool to retrieve training attempts matching provided filter parameters. Use when you need to assess labeler performance and understanding of task instructions. At least one of quality_task_ids or labeler_emails must be provided." }, { "slug": "SCALE_AI_GET_STUDIO_ASSIGNMENTS", "name": "Get Studio Assignments", "description": "Tool to retrieve current project assignments of all active team users in Scale AI Studio. Use when you need to view team member assignments and workload distribution. Excludes invited or disabled team members." }, { "slug": "SCALE_AI_GET_STUDIO_BATCHES", "name": "Get Studio Batches", "description": "Tool to retrieve basic information about all pending batches in Studio. Use when you need to list batches organized by priority level." }, { "slug": "SCALE_AI_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve basic information about all team members associated with the account. Use when you need to list team members, check roles, or view notification preferences." }, { "slug": "SCALE_AI_GET_V1_TASK", "name": "Get Task by ID", "description": "Tool to retrieve detailed information about a specific task using its task ID. Use when you need to check task status, retrieve results, or analyze task metadata." }, { "slug": "SCALE_AI_GET_V1_TASK_RESPONSE_URL", "name": "Get Secure Task Response URL", "description": "Tool to retrieve secure authenticated task response data. Use when you need to access stored response data for 2D segmentation, video, and lidar tasks that cannot be included in the task JSON." }, { "slug": "SCALE_AI_IMPORT_FILE", "name": "Import File", "description": "Tool to import files from an external URL endpoint into Scale's system rather than uploading directly from local storage. Use when you need to import files from remote URLs for Scale AI projects or data labeling tasks." }, { "slug": "SCALE_AI_INVITE_TEAM_MEMBER", "name": "Invite Team Member", "description": "Tool to invite users by email to team with specified role. Use when you need to add new team members with roles like labeler, member, or manager." }, { "slug": "SCALE_AI_LIST_BATCHES", "name": "List Batches", "description": "Tool to retrieve all batches in descending order by creation date. Use when you need to list batches with optional filtering by project, status, or time range. Supports pagination via limit and offset parameters." }, { "slug": "SCALE_AI_LIST_PROJECTS", "name": "List Projects", "description": "Tool to retrieve information for all projects in the Scale AI account with optional archived filtering. Use when you need to browse or manage project metadata. Returns project details including type, name, parameter history, and creation timestamps." }, { "slug": "SCALE_AI_LIST_TASKS", "name": "List Tasks", "description": "Tool to retrieve a paginated list of tasks in descending order by creation time. Use when you need to browse tasks with optional filtering by status, type, project, batch, tags, timestamps, or unique identifiers. Supports pagination via limit and next_token." }, { "slug": "SCALE_AI_POST_V1_TASK_SEND_CALLBACK", "name": "Re-send Task Callback", "description": "Tool to re-send a callback for a completed or errored task to the callback_url. Use when you need to manually trigger a callback resend for a task that has already been processed." }, { "slug": "SCALE_AI_REMOVE_STUDIO_ASSIGNMENTS", "name": "Remove Studio Assignments", "description": "Tool to unassign projects from specified team members in Scale AI Studio. Use when you need to remove project assignments from one or more team members." }, { "slug": "SCALE_AI_RESET_BATCH_PRIORITIES", "name": "Reset Batch Priorities", "description": "Tool to restore batch priority order to default order (calibration batches first, then sorted by creation date). Use when you need to reset custom batch priorities back to the default ordering." }, { "slug": "SCALE_AI_SET_BATCH_PRIORITIES", "name": "Set Batch Priorities", "description": "Tool to modify batch priority order in Scale AI Studio. Use when you need to adjust the priority order of pending batches. You must include all pending studio batches in the request." }, { "slug": "SCALE_AI_SET_PROJECT_ONTOLOGY", "name": "Set Project Ontology", "description": "Tool to set ontologies on a Scale AI project. Ontologies define the labels or classes that tasks will reference, and projects maintain complete history of ontology versions. Use when you need to configure or update the classification labels for a project." }, { "slug": "SCALE_AI_SET_PROJECT_PARAMS", "name": "Set Project Parameters", "description": "Tool to set default parameters for tasks created under a project. Use when you need to establish or update default parameters that apply to future tasks unless overridden." }, { "slug": "SCALE_AI_SET_TASK_METADATA", "name": "Set Task Metadata", "description": "Tool to set key-value metadata on an existing Scale AI task. Use when you need to attach custom metadata to track or organize tasks. This operation is idempotent." }, { "slug": "SCALE_AI_UPDATE_TASK_UNIQUE_ID", "name": "Update Task Unique ID", "description": "Tool to update or assign a unique identifier to a task. Use when you need to set a custom identifier for task tracking in your system." }, { "slug": "SCALE_AI_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a local file to Scale's servers with a maximum size limit of 80 MB per file. Use when you need to upload files for Scale AI projects or data labeling tasks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scale_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Scale AI API Key from https://dashboard.scale.com/studio/settings/apikey. Test keys return dummy responses, live keys process real tasks.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scheduleonce", "name": "Scheduleonce", "logo": "https://logos.composio.dev/api/scheduleonce", "description": "Scheduling platform for capturing, qualifying, and engaging with inbound leads", "category": "scheduling & booking", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCHEDULEONCE_BOOK_TIME_SLOT", "name": "Book Time Slot", "description": "Tool to book a time slot on a booking calendar in OnceHub. Use when you need to schedule a meeting by booking one of the available time slots. First retrieve available time slots using 'Get available time slots', then use this tool to book one of those slots with guest information." }, { "slug": "SCHEDULEONCE_CANCEL_BOOKING", "name": "Cancel Booking", "description": "Tool to cancel a booking by ID in OnceHub. Use when you need to cancel an existing booking, optionally providing a cancellation reason and controlling whether to send cancellation email notifications." }, { "slug": "SCHEDULEONCE_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in ScheduleOnce. Use when you need to add a contact with email, first name, and last name. Additional fields like company, phone, and address details can be optionally provided." }, { "slug": "SCHEDULEONCE_CREATE_ONE_TIME_LINK_FOR_BOOKING_CALENDAR", "name": "Create One-Time Link for Booking Calendar", "description": "Tool to create a one-time booking link for a booking calendar in OnceHub. Use when you need to generate a unique, single-use booking link for a customer. One-time links are good for one booking only and automatically expire after one year if not used. The booking calendar must be published to create one-time links." }, { "slug": "SCHEDULEONCE_CREATE_USER", "name": "Create User", "description": "Tool to create a new user account in OnceHub. Use when you need to add a new user with first name, last name, and email. Optional role can be specified." }, { "slug": "SCHEDULEONCE_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a contact by ID from OnceHub. Use when you need to permanently remove a contact from the system." }, { "slug": "SCHEDULEONCE_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user account from OnceHub. Use when you need to permanently remove a user from the system." }, { "slug": "SCHEDULEONCE_GET_AVAILABLE_TIME_SLOTS", "name": "Get Available Time Slots", "description": "Tool to retrieve available time slots for a booking calendar from OnceHub. Use when you need to check availability for scheduling appointments within a specific date range (maximum 30 days). Returns real-time availability based on booking rules and participant calendars." }, { "slug": "SCHEDULEONCE_GET_SINGLE_BOOKING", "name": "Get Single Booking", "description": "Tool to retrieve a single booking by ID from OnceHub. Use when you need to fetch complete booking details including timing, customer information, location, status, and form submission data." }, { "slug": "SCHEDULEONCE_GET_SINGLE_BOOKING_CALENDAR", "name": "Get Single Booking Calendar", "description": "Tool to retrieve a single booking calendar by ID from OnceHub. Use when you need to fetch detailed information about a specific booking calendar including its subject, name, URL, host, published status, and duration." }, { "slug": "SCHEDULEONCE_GET_SINGLE_CONTACT", "name": "Get Single Contact", "description": "Tool to retrieve a single contact by ID from OnceHub. Use when you need to fetch complete contact details including personal information, location data, and custom fields." }, { "slug": "SCHEDULEONCE_GET_SINGLE_MASTER_PAGE", "name": "Get Single Master Page", "description": "Tool to retrieve a single master page by ID from OnceHub. Use when you need to fetch complete master page details including name, label, URL, and active status." }, { "slug": "SCHEDULEONCE_GET_SINGLE_USER", "name": "Get Single User", "description": "Tool to retrieve a single user by ID from OnceHub. Use when you need to fetch detailed information about a specific user including their name, email, status, role, timezone, and team associations." }, { "slug": "SCHEDULEONCE_GET_USER_SCHEDULING_AVAILABILITY", "name": "Get User Scheduling Availability", "description": "Tool to get user scheduling availability from OnceHub. Use when you need to retrieve a user's weekly schedule, working hours, and any date-specific overrides." }, { "slug": "SCHEDULEONCE_LIST_ALL_BOOKING_CALENDARS", "name": "List All Booking Calendars", "description": "Tool to list all booking calendars in the account. Use when you need to retrieve all booking calendars with optional cursor-based pagination." }, { "slug": "SCHEDULEONCE_LIST_ALL_BOOKING_PAGES", "name": "List All Booking Pages", "description": "Tool to list all booking pages in the account. Use when you need to retrieve all booking pages with optional cursor-based pagination." }, { "slug": "SCHEDULEONCE_LIST_ALL_BOOKINGS", "name": "List All Bookings", "description": "Tool to list all bookings in the account. Use when you need to retrieve bookings with optional filtering by time ranges, pagination, or expansion of related objects." }, { "slug": "SCHEDULEONCE_LIST_ALL_CONTACTS", "name": "List All Contacts", "description": "Tool to list all contacts in the OnceHub account. Use when you need to retrieve contact information with optional filtering by creation time, update time, owner, or cursor-based pagination." }, { "slug": "SCHEDULEONCE_LIST_ALL_EVENT_TYPES", "name": "List All Event Types", "description": "Tool to list all event types in the account. Use when you need to retrieve all event types with optional cursor-based pagination to understand available event type options." }, { "slug": "SCHEDULEONCE_LIST_ALL_MASTER_PAGES", "name": "List All Master Pages", "description": "Tool to list all master pages in the account. Use when you need to retrieve all master pages with optional cursor-based pagination." }, { "slug": "SCHEDULEONCE_LIST_ALL_TEAMS", "name": "List All Teams", "description": "Tool to list all teams in the OnceHub account. Use when you need to retrieve team information with optional cursor-based pagination." }, { "slug": "SCHEDULEONCE_LIST_ALL_USERS", "name": "List All Users", "description": "Tool to list all users in the OnceHub account. Use when you need to retrieve user information with optional cursor-based pagination." }, { "slug": "SCHEDULEONCE_MARK_BOOKING_AS_NO_SHOW", "name": "Mark Booking as No-Show", "description": "Tool to mark a completed booking as no-show in OnceHub. Use when the customer did not attend the scheduled meeting and you need to update the booking status to reflect the no-show." }, { "slug": "SCHEDULEONCE_TEST_API_KEY", "name": "Test API Key", "description": "Tool to validate API key authentication for OnceHub. Use when you need to verify that your API key is valid and active before making other API calls to the platform." }, { "slug": "SCHEDULEONCE_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in ScheduleOnce. Use when you need to modify contact information such as name, email, company, or phone number." }, { "slug": "SCHEDULEONCE_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user in OnceHub. Use when you need to modify user information such as name, email, role, or timezone." }, { "slug": "SCHEDULEONCE_UPDATE_USER_SCHEDULING_AVAILABILITY", "name": "Update User Scheduling Availability", "description": "Tool to update user scheduling availability in OnceHub. Use when you need to modify a user's weekly schedule, set working hours for specific days, or add date-specific overrides for holidays or special events." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "scheduleonce_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "id,profile,email" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "scheduleonce_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your OnceHub API key from ScheduleOnce > Setup > Integrations > API Integration", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scholar_sidekick", "name": "Scholar Sidekick", "logo": "https://logos.composio.dev/api/scholar_sidekick", "description": "Academic reference formatting API for DOI, PMID, ISBN, arXiv IDs, and more. Supports multiple citation styles.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCHOLAR_SIDEKICK_EXPORT_CITATIONS", "name": "Export Citations", "description": "Tool to export scholarly identifiers to bibliography file formats. Supports multiple formats including BibTeX, RIS, CSL JSON, EndNote, RefWorks, MEDLINE, CSV, and Zotero RDF. Use when you need to generate citation files from DOIs, PMIDs, or other scholarly identifiers." }, { "slug": "SCHOLAR_SIDEKICK_FORMAT_IDENTIFIERS", "name": "Format Scholarly Identifiers", "description": "Tool to resolve and format scholarly identifiers into formatted citations. Accepts DOI, PMID, PMCID, ISBN, ISSN/eISSN, arXiv, ADS bibcode, or WHO IRIS URLs. Use when you need to convert academic identifiers to properly formatted citations in a specific style (APA, Vancouver, Chicago, etc.)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scholar_sidekick_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "RapidAPI Key", "type": "string", "description": "Your RapidAPI key for Scholar Sidekick. Get it from https://rapidapi.com/scholar-sidekick-scholar-sidekick-api/api/scholar-sidekick", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrape_do", "name": "Scrape Do", "logo": "https://logos.composio.dev/api/scrape_do", "description": "Scrape.do is a web scraping API offering rotating residential, data-center, and mobile proxies with headless browser support and session management to bypass anti-bot protections (e.g., Cloudflare, Akamai) and extract data at scale in formats like JSON and HTML.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPE_DO_CANCEL_ASYNC_JOB", "name": "Cancel Async Job", "description": "Tool to cancel an asynchronous scraping job. Use when you need to stop processing of pending tasks in a job. Completed tasks remain available." }, { "slug": "SCRAPE_DO_CREATE_ASYNC_JOB", "name": "Create Async Scraping Job", "description": "Tool to create an asynchronous scraping job with specified targets and options. Use when you need to scrape multiple URLs in parallel without waiting for results. Returns a job ID immediately for polling results later via the get job status action." }, { "slug": "SCRAPE_DO_GET_ACCOUNT_INFO", "name": "Get Account Information", "description": "Retrieves account information and usage statistics from Scrape.do. This action makes a GET request to the Scrape.do info endpoint to fetch: - Subscription status - Concurrent request limits and usage - Monthly request limits and remaining requests - Real-time usage statistics Rate limit: Maximum 10 requests per minute. Use remaining request counts to monitor credits proactively, as different scraping operations (e.g., rendered-page requests) consume varying credit amounts and exhaustion mid-run causes failures." }, { "slug": "SCRAPE_DO_GET_AMAZON_OFFERS", "name": "Get Amazon Product Offers", "description": "Get all seller offers for any Amazon product. Retrieves every seller listing including pricing, shipping costs, seller information, and Buy Box status in structured JSON format. Use when you need to compare prices across multiple sellers or find the best deal for a specific product." }, { "slug": "SCRAPE_DO_GET_AMAZON_PRODUCT", "name": "Get Amazon product details", "description": "Extract structured product data from Amazon product detail pages (PDP). Returns comprehensive product information including title, pricing, ratings, images, best seller rankings, and technical specifications in JSON format." }, { "slug": "SCRAPE_DO_GET_AMAZON_RAW_HTML", "name": "Get Amazon raw HTML", "description": "Tool to get raw HTML from any Amazon page with ZIP code geo-targeting. Use when you need complete unprocessed HTML source from Amazon URLs with location-based targeting. Ideal for scraping pages not covered by other structured endpoints." }, { "slug": "SCRAPE_DO_GET_ASYNC_ACCOUNT_INFO", "name": "Get Async API Account Information", "description": "Tool to get account information for the Async API including concurrency limits and usage statistics. Use when you need to check available concurrency slots, active jobs, or remaining credits for Async API operations." }, { "slug": "SCRAPE_DO_GET_ASYNC_JOB", "name": "Get Async Job Details", "description": "Tool to retrieve details and status of a specific asynchronous scraping job. Use when you need to check the progress, status, or results of a previously created async job. Returns job metadata including creation time, completion time, task counts, and detailed task list." }, { "slug": "SCRAPE_DO_GET_ASYNC_TASK", "name": "Get Async Task Result", "description": "Tool to retrieve the result of a specific task within an asynchronous job. Returns the scraped content for that particular URL. Use when you need to check the status and result of a previously submitted async scraping task." }, { "slug": "SCRAPE_DO_GET_PAGE", "name": "Scrape webpage using scrape.do", "description": "A tool to scrape web pages using scrape.do's API service. Makes a basic GET request to fetch webpage content while handling anti-bot protections and proxy rotation automatically. Does not execute JavaScript by default — pages requiring client-side rendering (SPAs, dynamically loaded content) will return incomplete HTML; use SCRAPE_DO_GET_RENDER_PAGE or set render=true for those cases." }, { "slug": "SCRAPE_DO_LIST_ASYNC_JOBS", "name": "List Asynchronous Scraping Jobs", "description": "Tool to list all asynchronous scraping jobs. Returns paginated list of jobs with their status and metadata. Use when you need to retrieve job history or monitor job statuses. Supports pagination with up to 100 jobs per page." }, { "slug": "SCRAPE_DO_PROXY_MODE", "name": "Use Scrape.do Proxy Mode", "description": "This tool implements the Proxy Mode functionality of scrape.do, which allows routing requests through their proxy server. It provides an alternative way to access web scraping capabilities by handling complex JavaScript-rendered pages, geolocation-based routing, device simulation, and built-in anti-bot and retry mechanisms." }, { "slug": "SCRAPE_DO_SCRAPE_URL_POST", "name": "Scrape URL using POST method", "description": "Tool to scrape web pages using POST method via scrape.do API. Use when you need to send POST requests to target websites with custom request body data. Supports all parameters from GET endpoint plus request body customization for POST/PUT/PATCH methods." }, { "slug": "SCRAPE_DO_SEARCH_AMAZON", "name": "Search Amazon products", "description": "Tool to search Amazon and scrape product listings with structured results. Performs keyword searches and returns structured product data including titles, prices, ratings, Prime status, sponsored flags, and position rankings in JSON format. Use when you need to search for products on Amazon marketplace or gather product information from search results." }, { "slug": "SCRAPE_DO_SET_BLOCK_URLS", "name": "Block specific URLs during scraping", "description": "This tool allows users to block specific URLs during the scraping process. It's particularly useful for blocking unwanted resources like analytics scripts, advertisements, or any other URLs that might interfere with the scraping process or slow it down. It provides granular control by allowing users to specify URL patterns to block, thereby improving scraping performance and maintaining privacy." }, { "slug": "SCRAPE_DO_SET_REGIONAL_GEO_CODE", "name": "Set Regional Geolocation for Scraping", "description": "This tool allows users to set a broader geographical targeting by specifying a region code instead of a specific country code. This is useful when you want to scrape content from an entire region rather than a specific country. Note that this feature requires super mode to be enabled and is only available for Business Plan or higher subscriptions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrape_do_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Scrape.do API Token", "type": "string", "description": "Enter your Scrape.do API token, which you can find in your Scrape.do dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrapegraph_ai", "name": "Scrapegraph Ai", "logo": "https://logos.composio.dev/api/scrapegraph_ai", "description": "ScrapeGraphAI is an AI-powered web scraping API that enables developers to extract structured data from any website using natural language prompts. Website https://scrapegraphai.com", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPEGRAPH_AI_CONVERT_WEBPAGE_TO_MARKDOWN_V2", "name": "Convert Webpage to Markdown (V2)", "description": "Tool to convert any webpage into clean, well-formatted Markdown with full parameter control. Use when you need advanced options like stealth mode, custom headers, or webhook notifications. Supports all Markdownify API parameters." }, { "slug": "SCRAPEGRAPH_AI_GENERATE_SCHEMA", "name": "Generate Schema", "description": "Generate or modify a JSON schema based on a search query for structured data extraction. Use when you need a schema template for scraping specific data fields." }, { "slug": "SCRAPEGRAPH_AI_GET_AGENTIC_SCRAPER_HISTORY", "name": "Get Agentic Scraper History", "description": "Retrieve paginated history of agentic scraper jobs. Use to view past scraping requests, their status, and results." }, { "slug": "SCRAPEGRAPH_AI_GET_CRAWLER_HISTORY", "name": "Get Crawler History", "description": "Retrieve the history of crawler jobs for your account. Returns paginated list of past crawler requests with their status, results, and metadata." }, { "slug": "SCRAPEGRAPH_AI_GET_CREDITS", "name": "Get Credits", "description": "Retrieve remaining and used credits for your ScrapeGraphAI account. Useful for checking credit availability before bulk scraping operations to avoid mid-run failures." }, { "slug": "SCRAPEGRAPH_AI_GET_ENDPOINT_SUGGESTIONS", "name": "Get Endpoint Suggestions", "description": "Tool to get AI-powered suggestions for creating scraping endpoints. Use when you need to identify what data can be extracted from a website and how to structure the scraping logic." }, { "slug": "SCRAPEGRAPH_AI_GET_LIVE_SESSION_URL", "name": "Get Live Session URL", "description": "Tool to get a URL for a live browser session. Use when you need to interact with a webpage in real-time through a controlled browser environment." }, { "slug": "SCRAPEGRAPH_AI_GET_MARKDOWNIFY_HISTORY", "name": "Get Markdownify History", "description": "Tool to retrieve the history of markdownify webpage-to-Markdown conversion jobs. Use when you need to view past markdownify requests and their statuses." }, { "slug": "SCRAPEGRAPH_AI_GET_SCRAPE_HISTORY", "name": "Get Scrape History", "description": "Retrieve the history of scrape jobs from your ScrapeGraphAI account. Use this to check the status of past scrapes, view results, and track credit usage." }, { "slug": "SCRAPEGRAPH_AI_GET_SEARCHSCRAPER_HISTORY", "name": "Get Searchscraper History", "description": "Get the history of searchscraper jobs with pagination support. Use this to retrieve past searchscraper requests, their status, and results." }, { "slug": "SCRAPEGRAPH_AI_GET_SITEMAP_HISTORY", "name": "Get Sitemap History", "description": "Tool to retrieve the history of sitemap extraction jobs. Use when you need to view past sitemap extraction requests, their status, and results." }, { "slug": "SCRAPEGRAPH_AI_GET_SMARTSCRAPER_HISTORY", "name": "Get Smartscraper History", "description": "Tool to retrieve the history of smartscraper jobs. Use when you need to view past scraping requests and their results." }, { "slug": "SCRAPEGRAPH_AI_GET_USAGE_TIMELINE", "name": "Get Usage Timeline", "description": "Tool to retrieve usage timeline statistics for your ScrapeGraphAI account. Use when you need to visualize or analyze service usage patterns over time." }, { "slug": "SCRAPEGRAPH_AI_GET_WEBHOOK_LOGS", "name": "Get Webhook Logs", "description": "Tool to retrieve webhook delivery logs for a crawler job. Use when you need to check the status and history of webhook notifications sent for a specific crawler execution." }, { "slug": "SCRAPEGRAPH_AI_LIST_SCHEDULED_JOBS", "name": "List Scheduled Jobs", "description": "Retrieve a paginated list of all scheduled scraping jobs for your account. Use this action to view and manage your scheduled jobs, including their configuration, cron schedules, and active status. Supports filtering by service type and active status." }, { "slug": "SCRAPEGRAPH_AI_MARKDOWNIFY_STATUS", "name": "Markdownify Status", "description": "Check the status and retrieve results of a Markdownify webpage-to-Markdown conversion job. Use this action to poll for the status of an async Markdownify request started via SCRAPEGRAPH_AI_MARKDOWNIFY. Note: The ScrapeGraph AI API typically returns completed results synchronously, so this status endpoint is primarily useful for long-running conversions of large or complex webpages." }, { "slug": "SCRAPEGRAPH_AI_SAVE_ENDPOINT", "name": "Save Endpoint Configuration", "description": "Tool to save custom scraping endpoint configurations to ScrapeGraphAI. Use when you need to create reusable scraping endpoints with specific parameters and extraction logic." }, { "slug": "SCRAPEGRAPH_AI_SEARCH_SCRAPER", "name": "Search Scraper", "description": "Perform AI-powered web searches with structured, parsed results. Some sites block scrapers and return empty bodies; treat these as unrecoverable for that URL. JS-rendered pages may yield incomplete content." }, { "slug": "SCRAPEGRAPH_AI_SEARCH_SCRAPER_STATUS", "name": "Check SearchScraper Status", "description": "Check the status and results of an asynchronous SearchScraper job." }, { "slug": "SCRAPEGRAPH_AI_SMART_CRAWLER_STATUS", "name": "SmartCrawler Status", "description": "Check the status and retrieve results of a SmartCrawler web crawling job. Use this action to poll for completion and get the extracted content from a previously started SmartCrawler job. Returns the job status, crawled URLs, page content in markdown/HTML format, and LLM extraction results (if enabled). Implement a polling timeout (e.g., max retries or elapsed time cap) to avoid indefinite loops when waiting for long-running jobs." }, { "slug": "SCRAPEGRAPH_AI_SMART_SCRAPER_START", "name": "Start Smart Scraper", "description": "Start AI-powered web scraping with natural language extraction prompts. When `wait` is false (default), returns a `request_id`; poll for results using SCRAPEGRAPH_AI_SMART_SCRAPER_STATUS. Check `error` and `job_status` fields in the response before using extracted data." }, { "slug": "SCRAPEGRAPH_AI_SMART_SCRAPER_STATUS", "name": "SmartScraper Status", "description": "Check the status and retrieve results of a SmartScraper web scraping job. Use this action to poll for completion after starting a SmartScraper job with wait=false. The request_id is returned by the Start SmartScraper action. Typical workflow: 1. Start a scraping job with SCRAPEGRAPH_AI_SMART_SCRAPER_START (wait=false) 2. Use the returned request_id to check status with this action 3. Poll until status is 'completed' or 'failed' 4. When completed, the 'result' field contains the extracted data. When completed, also check the 'error' field before consuming 'result', as 'failed' status populates 'error' instead of 'result'." }, { "slug": "SCRAPEGRAPH_AI_START_SMART_CRAWLER", "name": "Start Smart Crawler (Async)", "description": "Tool to start a multi-page web crawl using SmartCrawler for AI-powered data extraction. Use when you need to extract structured data from multiple pages of a website. Returns immediately with a task_id - use the status check action to monitor progress and retrieve results." }, { "slug": "SCRAPEGRAPH_AI_SUBMIT_FEEDBACK", "name": "Submit Feedback", "description": "Submit feedback and ratings for completed ScrapeGraphAI requests." }, { "slug": "SCRAPEGRAPH_AI_SUBMIT_PRODUCT_FEEDBACK", "name": "Submit Product Feedback", "description": "Submit product feedback for ScrapeGraphAI. Use to provide ratings, comments, suggestions, and other feedback about the product itself." }, { "slug": "SCRAPEGRAPH_AI_TOONIFY", "name": "Convert JSON to TOON Format", "description": "Tool to convert JSON data to TOON (Token-Oriented Object Notation) format. Use when you need to reduce token usage for LLM processing while maintaining data structure." }, { "slug": "SCRAPEGRAPH_AI_VALIDATE_API_KEY", "name": "Validate API Key", "description": "Validate your ScrapeGraphAI API key to ensure it is active and authorized. Use this action to check API key validity before making other API calls." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrapegraphai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ScrapeGraphAI API Key", "type": "string", "description": "Your ScrapeGraphAI API key (from https://dashboard.scrapegraphai.com)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrapfly", "name": "Scrapfly", "logo": "https://logos.composio.dev/api/scrapfly", "description": "Scrapfly is a web scraping API that enables developers to extract data from websites efficiently, offering features like JavaScript rendering, anti-bot protection bypass, and proxy rotation.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPFLY_CAPTURE_SCREENSHOT", "name": "Capture Website Screenshot", "description": "Tool to capture a full-page or viewport screenshot of a website. Use when you need to take a screenshot with options like JS rendering, custom resolution, or accessibility testing. Returns the screenshot image directly. Supports vision deficiency simulations and dark mode." }, { "slug": "SCRAPFLY_CAPTURE_SCREENSHOT_HEAD", "name": "Capture Screenshot Metadata (HEAD)", "description": "Tool to capture screenshot metadata without downloading the image body. Use this for async screenshot workflows where you need the URL to retrieve the image later. Returns the screenshot URL in response, saving bandwidth compared to full screenshot retrieval." }, { "slug": "SCRAPFLY_CREATE_CRAWLER", "name": "Create Scrapfly Crawler", "description": "Tool to create a new web crawler to recursively crawl an entire website. Returns a crawler UUID for tracking progress. Use when you need to crawl multiple pages from a website with configurable limits and extraction rules." }, { "slug": "SCRAPFLY_EXTRACT_DATA", "name": "Extract Structured Data", "description": "Tool to extract structured data from HTML or other content using AI models, LLM prompts, or custom templates. Use when you need to parse web pages or documents into structured JSON data. Supports predefined extraction models for common types (articles, products, events) or custom extraction via prompts/templates." }, { "slug": "SCRAPFLY_GET_ACCOUNT_INFO", "name": "Get Scrapfly Account Information", "description": "Tool to retrieve Scrapfly account information. Use after authenticating to get API credit balance and usage stats. Returns comprehensive account data including subscription plan, usage statistics, billing info, and project settings." }, { "slug": "SCRAPFLY_GET_CRAWLER_ARTIFACT", "name": "Get Crawler Artifact", "description": "Tool to download crawler artifact files in WARC or HAR format. Use when you need to retrieve the complete crawl results as an archive file. WARC format is recommended for large crawls as it includes gzip compression." }, { "slug": "SCRAPFLY_GET_CRAWLER_CONTENTS", "name": "Get Crawler Contents", "description": "Tool to retrieve extracted content from crawled pages. Supports multiple output formats including markdown, text, HTML, and JSON. Use when you need to access the actual content extracted during a crawl, with optional filtering by URL and format selection." }, { "slug": "SCRAPFLY_GET_CRAWLER_STATUS", "name": "Get Crawler Status", "description": "Tool to get the current status of a crawler including progress, pages crawled, and completion state. Use for polling workflow to monitor crawl progress." }, { "slug": "SCRAPFLY_GET_CRAWLER_URLS", "name": "Get Crawler URLs", "description": "Tool to retrieve the list of discovered and crawled URLs from a crawler. Use when you need to get all URLs found during a crawl or filter by status to analyze failed URLs with error codes. Supports pagination for large result sets." }, { "slug": "SCRAPFLY_SCRAPE", "name": "Scrapfly Scrape", "description": "Tool to perform a web scraping request. Use when you need to fetch a page with custom configuration like JS rendering, proxies, and extraction." }, { "slug": "SCRAPFLY_SCRAPE_POST", "name": "Scrapfly Scrape POST", "description": "Tool to scrape web pages using POST method to send data in the request body. Use when you need to scrape endpoints that require POST requests, such as form submissions or APIs that expect data payload." }, { "slug": "SCRAPFLY_SCRAPE_WITH_PUT", "name": "Scrape With PUT", "description": "Tool to scrape web pages using PUT method with body payload. Use when the target API requires PUT requests with data in the request body. Forwards PUT request with custom body to the target URL. If not specified, content-type defaults to application/x-www-form-urlencoded." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrapfly_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Scrapfly API Key", "type": "string", "description": "Your Scrapfly API key for authentication. Find your key on the Scrapfly dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrapingant", "name": "Scrapingant", "logo": "https://logos.composio.dev/api/scrapingant", "description": "ScrapingAnt is a web scraping API service that enables data extraction from websites through headless Chrome browsers, rotating proxies, CAPTCHA/Cloudflare bypass, LLM-ready markdown output, and AI-powered structured data extraction.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPINGANT_EXTRACT_CONTENT_AS_MARKDOWN", "name": "Extract Content as Markdown", "description": "This tool extracts content from a given URL and converts it into Markdown format. It is particularly useful for preparing text for Language Learning Models (LLMs) and Retrieval-Augmented Generation (RAG) systems. It supports GET, POST, PUT, and DELETE methods." }, { "slug": "SCRAPINGANT_EXTRACT_DATA_WITH_AI", "name": "Extract Data with AI", "description": "This tool allows you to extract structured data from a web page using ScrapingAnt's AI-powered extraction capabilities. You provide a URL and an AI query (prompt) describing what data you want to extract, and the tool returns the extracted data in a structured format. It supports additional parameters for browser rendering, proxies, and cookies to handle dynamic content and localization." }, { "slug": "SCRAPINGANT_GET_API_CREDITS_USAGE", "name": "Get API Credits Usage", "description": "This tool retrieves the current API credit usage status for the authenticated ScrapingAnt account. It enables users to monitor their consumption of API credits, check their current usage against the subscription limits, and manage their API credits effectively." }, { "slug": "SCRAPINGANT_GET_V1_USAGE", "name": "Get V1 Usage (Deprecated)", "description": "[DEPRECATED - Use v2] Tool to get the current subscription status and API credits usage information. This is the legacy v1 endpoint which is no longer actively maintained." }, { "slug": "SCRAPINGANT_SCRAPE_WEB_PAGE", "name": "Scrape Web Page", "description": "This tool scrapes a web page using the ScrapingAnt API. It fetches the HTML content of the specified URL. Users can customize the scraping behavior by enabling a headless browser, using proxies, waiting for specific elements, executing JavaScript, passing cookies, and blocking certain resources." }, { "slug": "SCRAPINGANT_SCRAPE_WEBPAGE_POST", "name": "Scrape Webpage via POST", "description": "Tool to perform a POST request through ScrapingAnt's proxy to scrape a webpage. Use when you need to scrape pages that require POST method, such as form submissions or APIs that only accept POST requests. Data is forwarded transparently to the target web page." }, { "slug": "SCRAPINGANT_SCRAPE_WEBPAGE_PUT", "name": "Scrape Webpage with PUT", "description": "Tool to perform a PUT request through ScrapingAnt's proxy to scrape a webpage that requires PUT method. Use when the target webpage requires PUT method for data submission. Data is forwarded transparently to the target web page." }, { "slug": "SCRAPINGANT_SCRAPE_WEBPAGE_V1_POST", "name": "Scrape Webpage (v1 POST - Deprecated)", "description": "[DEPRECATED - Use v2] Tool to scrape a webpage using POST method with ScrapingAnt's v1 API. Returns JSON with content, cookies, and status_code. This is the legacy v1 endpoint which is no longer actively maintained. Use the v2 endpoints for new implementations." }, { "slug": "SCRAPINGANT_SCRAPE_WITH_EXTENDED_JSON_OUTPUT", "name": "Scrape with Extended JSON Output", "description": "Scrapes a web page and returns comprehensive data including HTML content, plain text, cookies, HTTP headers, XHR/Fetch requests, and iframe content. This tool uses ScrapingAnt's extended endpoint which provides much richer data than standard scraping: - Full HTML and extracted plain text content - All cookies and HTTP response headers from the target page - Captured XHR/Fetch API requests made by the page (useful for finding hidden APIs) - Content from embedded iframes Best used when you need more than just the HTML - such as analyzing cookies, headers, or JavaScript API calls made by a page. For simple HTML scraping, consider using the basic scrape tool instead for lower API credit usage." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrapingant_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ScrapingAnt API Key", "type": "string", "description": "Your ScrapingAnt API key, obtainable from your user dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrapingbee", "name": "Scrapingbee", "logo": "https://logos.composio.dev/api/scrapingbee", "description": "ScrapingBee is a web scraping API that handles headless browsers and proxy rotation, allowing developers to extract HTML from any website in a single API call.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPINGBEE_DATA_EXTRACTION", "name": "ScrapingBee Data Extraction", "description": "Tool to extract structured data from a webpage using CSS or XPath selectors. Use ScrapingBee's extract_rules feature." }, { "slug": "SCRAPINGBEE_HTML_FETCH", "name": "ScrapingBee HTML Fetch", "description": "Tool to fetch HTML or screenshot via ScrapingBee HTML API. Use when you need page markup or image after optional JS rendering and resource controls. For anti-bot or CAPTCHA-protected sites (e.g., Cloudflare), combine render_js=true with premium_proxy=true or stealth_proxy=true to avoid blocks." }, { "slug": "SCRAPINGBEE_SCRAPING_BEE_PROXY_MODE", "name": "ScrapingBee Proxy Mode", "description": "Tool to fetch web content via ScrapingBee's Proxy Mode. Use when you need to route requests through ScrapingBee proxies with optional JS rendering and resource blocking." }, { "slug": "SCRAPINGBEE_STEALTH_PROXY", "name": "ScrapingBee Stealth Proxy", "description": "Tool to perform stealth scraping via ScrapingBee's Stealth Proxy mode. Use when you encounter anti-bot measures requiring undetectable requests." }, { "slug": "SCRAPINGBEE_USAGE_STATS", "name": "ScrapingBee Usage Stats", "description": "Tool to retrieve usage statistics for your ScrapingBee account. Use when you need to monitor remaining credits and request count." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrapingbee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ScrapingBee API Key", "type": "string", "description": "Your ScrapingBee API key for authentication. You can find your key in your ScrapingBee dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scrapingdog", "name": "Scrapingdog", "logo": "https://logos.composio.dev/api/scrapingdog", "description": "Scrapingdog provides powerful web scraping APIs including general scraping, Google Search, Google Maps, Amazon, Walmart, LinkedIn, and social media scraping. Get structured data with automatic proxy rotation and JavaScript rendering.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCRAPINGDOG_SCRAPE_URL", "name": "Scrape URL", "description": "Tool to scrape a webpage and retrieve its HTML content. Use when you need to extract HTML from any URL with automatic proxy rotation and optional JavaScript rendering." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scrapingdog_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Scrapingdog API Key", "type": "string", "description": "Your Scrapingdog API key. Available on your dashboard at scrapingdog.com.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "scraptio", "name": "Scraptio", "logo": "https://logos.composio.dev/api/scraptio", "description": "Scrape made easy - Web scraping service with REST API", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "scraptio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate and copy your API Key from directly your dashboard at scraptio.com", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "screenshot_fyi", "name": "Screenshot.fyi", "logo": "https://logos.composio.dev/api/screenshot_fyi", "description": "Take stunning, premium quality screenshots of any website with one API call.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SCREENSHOT_FYI_TAKE_SCREENSHOT", "name": "Take Screenshot", "description": "Tool to capture a webpage screenshot. Use after specifying the target URL and options. JavaScript-heavy pages may capture before full render; ensure the page is fully loaded prior to capture." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "screenshot_fyi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Screenshot.fyi API Key", "type": "string", "description": "Your API key for authenticating requests to the screenshot.fyi API. Passed as the `accessKey` query parameter.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "search_api", "name": "Search api", "logo": "https://logos.composio.dev/api/search_api", "description": "Your real-time SERP API solution. Mastering proxy management, CAPTCHAs, and JSON parsing for seamless web data extraction.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEARCH_API_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve account usage statistics including monthly usage, remaining credits, hourly limits, and subscription period information. Use when you need to check current account status or usage limits." }, { "slug": "SEARCH_API_GET_CACHED_SEARCH_BY_ID", "name": "Get Cached Search by ID", "description": "Tool to retrieve cached search results by search ID in JSON format. Use when you need to access previously executed search results without re-running the query. The search ID is found in the search_metadata.id or search_metadata.json_url field from initial search responses. Cached results are available for 90 days." }, { "slug": "SEARCH_API_GET_CACHED_SEARCH_HTML_BY_ID", "name": "Get Cached Search HTML by ID", "description": "Tool to retrieve cached search results by search ID in HTML format. Use when you need to access the raw HTML snapshot of a previous search execution. The search ID is available in the search_metadata.id or search_metadata.html_url field from initial search responses." }, { "slug": "SEARCH_API_GET_LOCATIONS", "name": "Get Locations", "description": "Tool to get available locations for geo-localized search queries. Use when you need to find location identifiers for targeting Google searches to specific geographic areas. Returns location metadata including identifiers, names, coordinates, and population reach." }, { "slug": "SEARCH_API_SEARCH", "name": "Search", "description": "Tool to perform unified search across 40+ search engines including Google, Bing, Yahoo, DuckDuckGo, YouTube, Amazon, and more. Use when you need to retrieve search results with rich structured data including organic results, ads, knowledge graphs, local listings, images, videos, and related searches. Supports advanced filtering by location, language, date, device type, and SafeSearch settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "search_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://www.searchapi.io/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "seat_geek", "name": "Seat Geek", "logo": "https://seatgeek.com/favicon.ico", "description": "SeatGeek Platform API provides access to events, venues, and performers data for concerts, sports, theater, and other live entertainment", "category": "event management", "authSchemes": [ "NO_AUTH" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEAT_GEEK_GET_EVENT_DETAILS", "name": "Get Event Details", "description": "Get comprehensive details about a specific event including venue, performers, date/time (in local venue time), ticket information, and a SeatGeek event URL. Performer and venue fields are basic summaries; use SEAT_GEEK_GET_PERFORMER_DETAILS or SEAT_GEEK_GET_VENUE_DETAILS for additional depth. For similarly named or recurring events, cross-check date, venue, league, and competition fields to confirm the correct event." }, { "slug": "SEAT_GEEK_GET_EVENT_RECOMMENDATIONS", "name": "Get Event Recommendations", "description": "Get personalized event recommendations based on your favorite performers, events, or location. Discover new events you might enjoy." }, { "slug": "SEAT_GEEK_GET_EVENT_SEATING", "name": "Get Event Seating Information", "description": "Get section and row layout information for a specific event's venue. Returns available sections (e.g., '101', 'floor', 'suite-14') mapped to their row identifiers. IMPORTANT: Only works for events at major venues with seating maps (stadiums, arenas). Small venue concerts or general admission events will return a 404 error. Use SEAT_GEEK_SEARCH_EVENTS with taxonomies_name='sports' to find events that have seating data." }, { "slug": "SEAT_GEEK_GET_PERFORMER_DETAILS", "name": "Get Performer Details", "description": "Retrieves detailed information about a specific performer (artist, sports team, or theatrical production) from SeatGeek by their unique ID. Returns comprehensive data including performer name, type, images, popularity scores, upcoming event counts, genre/taxonomy classifications, and ticket URLs. Does not include box scores, match statistics, or performance stats. Use this action when you need fields beyond the basic performer info already embedded in event details (e.g., popularity scores, full taxonomy, upcoming event counts). To find performer IDs, first use the search_performers action to search by name." }, { "slug": "SEAT_GEEK_GET_PERFORMER_RECOMMENDATIONS", "name": "Get Performer Recommendations", "description": "Get recommendations for similar performers based on your interests. Discover new artists, bands, teams, or entertainers you might enjoy." }, { "slug": "SEAT_GEEK_GET_TAXONOMIES", "name": "Get Event Categories", "description": "Get a list of all available event categories and types (taxonomies) used on SeatGeek. Useful for understanding event classification and filtering options." }, { "slug": "SEAT_GEEK_GET_VENUE_DETAILS", "name": "Get Venue Details", "description": "Get detailed venue-specific information (location, address, metadata) beyond what SEAT_GEEK_GET_EVENT_DETAILS already returns. Only call this tool when additional venue fields are needed that are absent from the event details response." }, { "slug": "SEAT_GEEK_SEARCH_EVENTS", "name": "Search Events", "description": "Search for ticketed events on SeatGeek by performers, venues, dates, or general queries. Covers concerts, sports games, theater shows, and other live entertainment. Only indexes ticketed events; empty results may indicate coverage gaps. Avoid over-filtering — start broad and progressively narrow. lat and lon parameters must be supplied together for location-based filtering." }, { "slug": "SEAT_GEEK_SEARCH_PERFORMERS", "name": "Search Performers", "description": "Search for performers including artists, bands, sports teams, comedians, and more. Find your favorite entertainers and see their upcoming events." }, { "slug": "SEAT_GEEK_SEARCH_VENUES", "name": "Search Venues", "description": "Search for venues by location, name, or other criteria. Find stadiums, theaters, concert halls, and other entertainment venues. Supports lat/lon coordinate filtering (both must be provided together)." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "SeatGeek", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "securitytrails", "name": "Securitytrails", "logo": "https://logos.composio.dev/api/securitytrails", "description": "SecurityTrails is a cybersecurity platform providing comprehensive domain, IP, DNS, and WHOIS intelligence data. It offers historical DNS records, subdomain discovery, WHOIS history, associated domains, passive DNS datasets, and website technology detection to support threat hunting, brand protection, cyber forensics, and attack surface management.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SECURITYTRAILS_BULK_STATIC_ASSET_RULES", "name": "Bulk Static Asset Rules", "description": "Bulk add or remove static asset rules for a SecurityTrails ASI project. Static asset rules define which domains/IPs are included or excluded from the project's monitoring scope. This operation processes up to 1000 rules (combined add + remove) per request. The API processes rules asynchronously, waiting up to 2 seconds for completion. If processing takes longer, task_ids are returned for status polling. Note: Requires a valid project_id from the List Projects endpoint. Use the Get Static Assets endpoint to verify changes after bulk operations complete." }, { "slug": "SECURITYTRAILS_GET_COMPANY_ASSOCIATED_IPS", "name": "Get Company Associated IPs", "description": "Tool to retrieve IPs associated with a company domain. Use when you need to find all IP addresses linked to an organization's domain name." }, { "slug": "SECURITYTRAILS_GET_DOMAIN", "name": "Get Domain Details", "description": "Retrieves comprehensive domain information from SecurityTrails including current DNS records, infrastructure details, and statistics. This tool fetches detailed DNS data (A, AAAA, MX, NS, SOA, TXT records) along with metadata about when records were first seen, which organizations own the infrastructure, and how many other domains share the same servers. Useful for domain reconnaissance, infrastructure mapping, security analysis, and understanding domain configurations. Returns structured data with typed fields for easy programmatic access by AI agents." }, { "slug": "SECURITYTRAILS_GET_DOMAIN_SSL", "name": "Get Domain SSL", "description": "Tool to fetch current and historical SSL certificate details for a hostname. Use when you need to retrieve SSL data after identifying the domain. Coverage limited to certificates indexed by SecurityTrails; private, internally-issued, or very recently issued certificates may be absent." }, { "slug": "SECURITYTRAILS_IP_SEARCH_STATISTICS", "name": "IP Search Statistics", "description": "Fetch aggregated statistics for IP addresses matching a DSL query. Returns top open ports by frequency, common reverse DNS patterns, and total count. Useful for analyzing IP infrastructure patterns, port distributions, and PTR records across specific IP ranges or reverse DNS domains." }, { "slug": "SECURITYTRAILS_LIST_PROJECTS", "name": "List ASI Projects", "description": "Tool to list ASI projects available to the account. Use when you need project IDs for subsequent ASI operations." }, { "slug": "SECURITYTRAILS_PING", "name": "Ping", "description": "Tool to test authentication and connectivity with the SecurityTrails API. Use after configuring API key." }, { "slug": "SECURITYTRAILS_SCROLL", "name": "Scroll Results", "description": "Tool to continue scrolling through DSL search results. Use after receiving a scroll_id from SECURITYTRAILS_SEARCH_IPS or SECURITYTRAILS_SQL_API_EXECUTE_QUERY to fetch the next batch of data. Call iteratively until no scroll_id is returned to retrieve all pages." }, { "slug": "SECURITYTRAILS_SEARCH_IPS", "name": "Search IPs", "description": "Tool to search IP addresses via SecurityTrails DSL. Use when you need to filter IPs with custom DSL queries. Results are paginated; use SecurityTrails scroll mechanisms for large result sets to avoid missing assets." }, { "slug": "SECURITYTRAILS_SQL_API_EXECUTE_QUERY", "name": "SQL API Execute Query", "description": "Execute SQL-like queries against SecurityTrails data. Query the 'hosts' table for domain/DNS information or the 'ips' table for IP address/ASN/port data. Returns up to 100 records per request with a scroll ID for pagination. Supports standard SQL syntax (SELECT, WHERE, AND, OR, IN, IS NULL) but does NOT support LIMIT clause." }, { "slug": "SECURITYTRAILS_SQL_API_SCROLL_RESULTS", "name": "SQL API Scroll Results", "description": "Tool to fetch next page of SQL query results. Use after obtaining scroll_id from initial SQL API response." }, { "slug": "SECURITYTRAILS_TEMP_SCRAPE_SECURITYTRAILS_USAGE", "name": "Temp Scrape Securitytrails Usage", "description": "Retrieve account usage information from the SecurityTrails API. This action fetches the current monthly usage and allowed monthly usage limits for your SecurityTrails API account. Use this to monitor your API quota consumption. Returns: On success (200): - current_monthly_usage: Your current API usage for the month - allowed_monthly_usage: Your total allowed monthly API quota On error: - status_code: HTTP status code - response_text: Error message from API" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "securitytrails_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SecurityTrails API Key", "type": "string", "description": "Your SecurityTrails API key, obtainable from your SecurityTrails account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "segment", "name": "Segment", "logo": "https://logos.composio.dev/api/segment", "description": "Twilio Segment is a customer data platform that helps businesses collect, clean, and control their customer data.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEGMENT_ADD_LABELS_TO_SOURCE", "name": "Add Labels to Source", "description": "Tool to add existing labels to a Source. Use when you have the source ID and want to tag it with metadata labels." }, { "slug": "SEGMENT_ALIAS", "name": "Segment Alias", "description": "Tool to alias a previous user ID to a new user ID. Use when merging anonymous and known identities." }, { "slug": "SEGMENT_BATCH", "name": "Batch Segment Analytics Events", "description": "Tool to send multiple analytics calls in a single batch request. Use when you want to reduce HTTP overhead by batching Identify/Track/Page/Screen/Group calls into one request." }, { "slug": "SEGMENT_DELETE_SOURCE", "name": "Delete Source", "description": "Tool to delete a Segment Source. Use when you need to permanently remove a Source by its ID after confirmation." }, { "slug": "SEGMENT_GET_DAILY_PER_SOURCE_API_CALLS_USAGE", "name": "Get Daily Per Source API Calls Usage", "description": "Tool to fetch daily API call counts per source for a given period. Use when you need daily breakdown of API usage by source after determining the reporting period." }, { "slug": "SEGMENT_GET_DESTINATION", "name": "Get Destination", "description": "Tool to retrieve a Destination by ID. Use when you need to fetch the full configuration of a Segment Destination instance by its unique identifier. Falls back US→EU public API and legacy app endpoint; returns minimal envelope on legacy HTML or parse errors." }, { "slug": "SEGMENT_GROUP", "name": "Segment Group", "description": "Tool to associate an identified user with a group via Segment HTTP Tracking API. Use when grouping users with traits." }, { "slug": "SEGMENT_IDENTIFY", "name": "Segment Identify", "description": "Tool to identify a user and set/update traits via Segment HTTP Tracking API." }, { "slug": "SEGMENT_IMPORT_HISTORICAL_DATA", "name": "Import Historical Data", "description": "Tool to import historical data in bulk with support for historical timestamps. Use when you need to backfill or import past events with their original timestamps into Segment." }, { "slug": "SEGMENT_LIST_CONNECTED_WAREHOUSES_FROM_SOURCE", "name": "List Connected Warehouses From Source", "description": "Tool to list warehouses connected to a Source. Use when you need to retrieve warehouses for a given source ID." }, { "slug": "SEGMENT_LIST_DELIVERY_METRICS_SUMMARY_FROM_DESTINATION", "name": "List Delivery Metrics Summary from Destination", "description": "Get an event delivery metrics summary from a Destination. Primary attempt uses Segment Public API; fallback to legacy app host if needed. On HTML fallback responses, returns a minimal valid envelope to maintain contract." }, { "slug": "SEGMENT_LIST_SCHEMA_SETTINGS_IN_SOURCE", "name": "List Schema Settings in Source", "description": "Retrieve schema configuration settings for a Source." }, { "slug": "SEGMENT_PAGE", "name": "Segment Page View", "description": "Tool to record a page view via Segment HTTP Tracking API. Use when sending page views with optional page name and properties." }, { "slug": "SEGMENT_REMOVE_SOURCE_WRITE_KEY", "name": "Remove Source Write Key", "description": "Tool to remove a write key from a Source. Use when you need to revoke an existing write key for security or rotation." }, { "slug": "SEGMENT_SCREEN", "name": "Segment Screen Event", "description": "Tool to record a mobile app screen view. Use when tracking screen views in a mobile app via Segment HTTP Tracking API." }, { "slug": "SEGMENT_TRACK", "name": "Segment Track Event", "description": "Tool to record a custom user event via Segment HTTP Tracking API. Use when sending events to Segment with valid identity." }, { "slug": "SEGMENT_UPDATE_SOURCE", "name": "Update Source", "description": "Tool to update a Source's metadata and settings. Use when you need to modify an existing Source after confirming its ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "segment_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Workspace Region", "type": "string", "description": "The region of the Segment Workspace, either 'api' for US-based Workspaces or 'eu1' for EU-based Workspaces.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Segment API Token", "type": "string", "description": "The API token used for authenticating requests to the Segment Public API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "segmetrics", "name": "Segmetrics", "logo": "https://logos.composio.dev/api/segmetrics", "description": "SegMetrics is a marketing analytics platform that provides detailed insights into customer journeys, helping businesses optimize their marketing strategies.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEGMETRICS_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new product in SegMetrics. Use after confirming product details." }, { "slug": "SEGMETRICS_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to permanently delete a specific contact by ID or email from SegMetrics. Use after confirming the contact exists. This action is irreversible. Note: Associated invoices and purchases remain in the system." }, { "slug": "SEGMETRICS_V1_ADD_OR_UPDATE_CONTACT", "name": "Add or Update Contact", "description": "Tool to add or update a contact in SegMetrics. Use when you need to upsert the contact record during data import." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "segmetrics_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your SegMetrics API Key. Find it in Account Settings at https://app.segmetrics.io/a/account/edit", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account ID", "type": "string", "description": "Your SegMetrics Account ID. Find it in Account Settings at https://app.segmetrics.io/a/account/edit", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "semaphore", "name": "Semaphore", "logo": "https://logos.composio.dev/api/semaphore", "description": "Extend your messaging reach with the fastest SMS API. Semaphore lets you send SMS blast with a single line of code.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "semaphore_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from your Semaphore dashboard at https://www.semaphore.co/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendbird", "name": "Sendbird", "logo": "https://logos.composio.dev/api/sendbird", "description": "Sendbird is a platform that provides chat, voice, and video APIs to help businesses build in-app communication features.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDBIRD_ADD_MEMBERS_GROUP_CHANNEL", "name": "Add Members To Group Channel", "description": "Tool to add members to a group channel. Use when you need to invite one or more users into an existing group channel." }, { "slug": "SENDBIRD_BAN_USER_FROM_GROUP_CHANNEL", "name": "Ban User from Group Channel", "description": "Tool to ban a user from a group channel. Use when moderating group channels to restrict member access. Execute after confirming channel_url and user_id." }, { "slug": "SENDBIRD_CREATE_CHANNEL", "name": "Create Group Channel", "description": "Tool to create a new group channel. Use when you need to start a conversation with specific users. Execute after specifying users and optional settings." }, { "slug": "SENDBIRD_CREATE_USER", "name": "Create Sendbird User", "description": "Creates a new user in Sendbird. Use this to register user accounts before they can join channels or send messages. The user_id must be unique across the application." }, { "slug": "SENDBIRD_DELETE_CHANNEL", "name": "Delete Group Channel", "description": "Permanently deletes a Sendbird group channel. Use this tool when you need to remove a group channel and all its associated data (messages, members, etc.). WARNING: This action is irreversible. Requires the channel_url identifier of the channel to delete." }, { "slug": "SENDBIRD_DELETE_MESSAGE", "name": "Delete Message", "description": "Permanently deletes a specific message from a Sendbird group channel. This action cannot be undone. Use this when you need to remove a message that was sent by mistake or contains inappropriate content. Requires both channel_url and message_id, which can be obtained from channel/message listing endpoints." }, { "slug": "SENDBIRD_DELETE_USER", "name": "Delete Sendbird User", "description": "Tool to delete a Sendbird user. Use when you need to remove a user from your Sendbird application, optionally permanently." }, { "slug": "SENDBIRD_GET_COUNT_PREFERENCE_OF_CHANNEL", "name": "Get Count Preference Of Channel", "description": "Tool to retrieve a user's count preference for a specific group channel. Use after confirming the user and channel exist to determine whether to display all, unread-only, or mention-only counts." }, { "slug": "SENDBIRD_GET_NUMBER_OF_CHANNELS_BY_JOIN_STATUS", "name": "Get User Group Channel Count by Join Status", "description": "Retrieves the number of group channels for a user, categorized by join status (joined, invited, etc.). Use this tool to get channel count statistics for a specific user, optionally filtered by channel properties like visibility (public/private), distinctness, or super mode. Returns counts of joined channels, invited channels (with friend/non-friend breakdown), and total count." }, { "slug": "SENDBIRD_GET_NUMBER_OF_UNREAD_ITEMS", "name": "Sendbird Get Unread Item Count", "description": "Tool to retrieve a user's unread item counts including unread messages, mentions, and pending invitations across group channels. Use this to display unread counts in the UI for a specific user." }, { "slug": "SENDBIRD_ISSUE_SESSION_TOKEN", "name": "Issue Session Token", "description": "Issues a session token for authenticating a Sendbird user. Use this tool when you need to: - Generate a new session token for SDK authentication - Refresh an expiring or expired session token - Provide secure access for a user to connect to Sendbird chat The session token has a default expiration of 7 days if expires_at is not specified." }, { "slug": "SENDBIRD_LEAVE_GROUP_CHANNELS", "name": "Leave Group Channels", "description": "Tool to leave group channels for a user. Use when you need to make a user exit one or more joined group channels." }, { "slug": "SENDBIRD_LIST_BANNED_MEMBERS", "name": "List Banned Members", "description": "Tool to list banned members in a group channel. Use when you need to see which users are banned from a specific group channel." }, { "slug": "SENDBIRD_LIST_GROUP_CHANNEL_MESSAGES", "name": "Sendbird List Group Channel Messages", "description": "Tool to list (paginate) messages in a group channel when you only know the channel_url. Requires either message_ts (Unix ms timestamp) or message_id as an anchor. Use with SENDBIRD_VIEW_GROUP_CHANNEL (show_read_receipt=true) to fetch unread messages: get last-read timestamp, then call this with message_ts=, prev_limit=0, next_limit=, include=false." }, { "slug": "SENDBIRD_LIST_GROUP_CHANNELS", "name": "List Group Channels", "description": "Tool to list group channels. Use when you need to fetch paginated group channels with optional filters." }, { "slug": "SENDBIRD_LIST_MEMBERS_GROUP_CHANNEL", "name": "List Group Channel Members", "description": "Tool to list members of a group channel. Use when you need to paginate through members of a specified group channel." }, { "slug": "SENDBIRD_LIST_OPERATORS_CUSTOM_CHANNEL_TYPE", "name": "List Operators by Custom Channel Type", "description": "Tool to list operators of a channel by custom channel type. Use when you need to fetch operators for a specific custom channel type with pagination." }, { "slug": "SENDBIRD_LIST_OPERATORS_GROUP_CHANNEL", "name": "List Group Channel Operators", "description": "Tool to list operators of a group channel. Use after specifying the channel_url when needing to paginate through operators." }, { "slug": "SENDBIRD_LIST_OPERATORS_OPEN_CHANNEL", "name": "List Open Channel Operators", "description": "Tool to list operators of an open channel. Use when you have the open channel URL and need to fetch its operators. Supports pagination via token and limit." }, { "slug": "SENDBIRD_LIST_USERS", "name": "List Sendbird Users", "description": "Retrieves a paginated list of users from your Sendbird application. Use this tool to: - Browse all users in your application - Search for users by nickname or user IDs - Filter users by metadata, custom type, or activity status - Paginate through large user lists using the 'next' token Returns user details including profile info, connection status, and metadata. Results are paginated; use the 'next' token from the response to fetch additional pages." }, { "slug": "SENDBIRD_MARK_ALL_USER_MESSAGES_AS_READ", "name": "Mark All User Messages As Read", "description": "Tool to mark all of a user's messages as read in group channels. Use when resetting unread message counts after a user has viewed all messages." }, { "slug": "SENDBIRD_MUTE_USER", "name": "Mute User", "description": "Tool to mute a user in a group channel. Use when you need to prevent a user from sending messages for a specified duration." }, { "slug": "SENDBIRD_REGISTER_OPERATORS_CUSTOM_CHANNEL_TYPE", "name": "Register Operators by Custom Channel Type", "description": "Registers one or more users as operators for all channels with a specified custom channel type. Use this tool when you need to grant operator privileges to users across all channels that share the same custom_type. Operators have elevated permissions including: - Muting and banning users from channels - Deleting messages in channels - Freezing/unfreezing channels - Managing channel settings Prerequisites: - The user IDs must belong to existing Sendbird users - The custom_type should match channels you want to manage Note: This affects all channels with the specified custom_type, not just a single channel." }, { "slug": "SENDBIRD_REGISTER_OPERATORS_GROUP_CHANNEL", "name": "Register Group Channel Operators", "description": "Tool to register one or more users as operators in a Sendbird group channel. Use when elevating permissions of existing channel members." }, { "slug": "SENDBIRD_REGISTER_OPERATORS_OPEN_CHANNEL", "name": "Register Operators to Open Channel", "description": "Tool to register operators to an open channel. Use after creating or updating an open channel when you need to assign operator roles." }, { "slug": "SENDBIRD_REVOKE_ALL_SESSION_TOKENS", "name": "Revoke All Session Tokens", "description": "Tool to revoke all session tokens for a user. Use when you need to invalidate all active sessions for security." }, { "slug": "SENDBIRD_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a message to a group channel. Use when you need to post a text, file, or admin message to an existing group channel." }, { "slug": "SENDBIRD_UNBAN_USER", "name": "Unban User from Group Channel", "description": "Tool to unban a user from a group channel. Use when reinstating a previously banned user. Execute after confirming the user is currently banned." }, { "slug": "SENDBIRD_UNMUTE_USER", "name": "Unmute User", "description": "Tool to unmute a user in a group channel. Use when you want to restore a muted user's ability to send messages after confirming they are muted." }, { "slug": "SENDBIRD_UNREGISTER_OPERATORS_CUSTOM_CHANNEL_TYPE", "name": "Unregister Operators Custom Channel Type", "description": "Tool to unregister operators from channels by custom channel type. Use when you need to remove operator roles from users across channels of a specific custom type." }, { "slug": "SENDBIRD_UPDATE_COUNT_PREFERENCE_OF_CHANNEL", "name": "Update Count Preference Of Channel", "description": "Tool to update a user's unread count preference for a specific group channel. Use when you want to include or suppress a channel in the user's unread counts." }, { "slug": "SENDBIRD_UPDATE_GROUP_CHANNEL", "name": "Update Group Channel", "description": "Tool to update group channel information. Use when you need to modify channel attributes such as name, cover image, privacy settings, or operator list after channel creation." }, { "slug": "SENDBIRD_UPDATE_MESSAGE", "name": "Sendbird Update Message", "description": "Tool to update an existing group channel message in Sendbird. Use after you need to modify content or metadata of a sent message." }, { "slug": "SENDBIRD_UPDATE_USER", "name": "Update Sendbird User", "description": "Tool to update a user's information. Use when modifying nickname, profile image URL, activation status, or metadata." }, { "slug": "SENDBIRD_VIEW_GROUP_CHANNEL", "name": "Sendbird View Group Channel", "description": "Tool to view information about a specific group channel. Use when you need channel details after confirming the channel_url." }, { "slug": "SENDBIRD_VIEW_MESSAGE", "name": "Sendbird View Message", "description": "Tool to view a specific message in a group channel. Use after confirming channel_url and message_id." }, { "slug": "SENDBIRD_VIEW_USER", "name": "View User", "description": "Tool to retrieve information about a specific Sendbird user. Use when you need to fetch detailed user data by their user ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sendbird_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Sendbird Application ID", "type": "string", "description": "The unique identifier for your Sendbird application, used to construct the base URL for API requests.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Sendbird API Token", "type": "string", "description": "The API token used for authenticating requests to the Sendbird API. This should be added to the Api-Token header.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendbird_ai_chabot", "name": "Sendbird AI Chatbot", "logo": "https://logos.composio.dev/api/sendbird_ai_chabot", "description": "Sendbird's AI Chatbot enables businesses to integrate intelligent, automated conversational agents into their applications, enhancing customer engagement and support.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDBIRD_AI_CHABOT_CREATE_BOT", "name": "Create Bot", "description": "Tool to create a new bot. Use when you need to add an AI or default bot to your Sendbird app." }, { "slug": "SENDBIRD_AI_CHABOT_GET_BOT", "name": "Get Bot", "description": "Tool to retrieve information on a specific bot by its user ID. Use when you need to fetch bot details before performing subsequent operations." }, { "slug": "SENDBIRD_AI_CHABOT_LIST_BOTS", "name": "List Bots", "description": "Tool to list all bots in the Sendbird application. Use when you need to fetch bot details with optional filters and pagination." }, { "slug": "SENDBIRD_AI_CHABOT_LIST_GROUP_CHANNELS", "name": "List Group Channels", "description": "Tool to list group channels. Use when you need to fetch available group channels with filters and pagination." }, { "slug": "SENDBIRD_AI_CHABOT_UNREGISTER_BOT_WEBHOOK", "name": "Unregister Bot Webhook", "description": "Tool to unregister the webhook URL for a bot. Use when you need to remove webhook configuration for a specific bot." }, { "slug": "SENDBIRD_AI_CHABOT_UPDATE_BOT", "name": "Update Bot", "description": "Tool to update information on an existing bot. Use when you need to change a bot's user ID, nickname, profile image URL, or toggle read-receipt or privacy settings after creation. Run after confirming the bot ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sendbird_ai_chabot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Application ID", "type": "string", "description": "The unique identifier for your Sendbird application.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Sendbird API Token", "type": "string", "description": "The API token for authenticating requests to the Sendbird AI Chatbot API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sender", "name": "Sender", "logo": "https://logos.composio.dev/api/sender", "description": "Email marketing platform for creating campaigns, automating workflows, and tracking results", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDER_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a new custom subscriber field in Sender.net. Use when you need to add custom fields for email personalization, segmentation, or storing additional subscriber information like company name, birthday, job title, or other custom attributes." }, { "slug": "SENDER_CREATE_OR_UPDATE_SUBSCRIBER", "name": "Create Or Update Subscriber", "description": "Tool to create a new subscriber or update an existing one in Sender.net. Use when you need to add new subscribers to your email list or update existing subscriber information. This performs an upsert operation - creates if the email doesn't exist, updates if it does." }, { "slug": "SENDER_GET_ALL_FIELDS", "name": "Get All Fields", "description": "Tool to retrieve a list of all custom subscriber fields configured in the Sender.net account. Use when you need to view available fields for email personalization, segmentation, or managing subscriber data." }, { "slug": "SENDER_GET_ALL_WORKFLOWS", "name": "Get All Workflows", "description": "Tool to retrieve a list of all automation workflows in the Sender account. Use when you need to view or manage automation workflows." }, { "slug": "SENDER_GET_CAMPAIGN_BY_ID", "name": "Get Campaign By ID", "description": "Tool to retrieve a specific campaign by its unique ID from Sender. Use when you need detailed information about a campaign including delivery metrics and engagement statistics." }, { "slug": "SENDER_GET_GROUP_BY_ID", "name": "Get Group By ID", "description": "Tool to retrieve a specific subscriber group by its unique ID from Sender. Use when you need detailed information about a single group including subscriber counts." }, { "slug": "SENDER_GET_SUBSCRIBER_BY_ID", "name": "Get Subscriber By ID", "description": "Tool to retrieve a specific subscriber by their unique ID from Sender. Use when you need to fetch detailed information about a single subscriber including their status, groups, and custom fields." }, { "slug": "SENDER_UPDATE_SUBSCRIBER_FIELDS", "name": "Update Subscriber Fields", "description": "Tool to update custom fields and information for an existing subscriber in Sender.net. Use when you need to modify subscriber details such as email, first name, last name, groups, or custom fields for email personalization and segmentation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sender_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to Settings > API access tokens in your Sender account to create a token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendfox", "name": "Sendfox", "logo": "https://logos.composio.dev/api/sendfox", "description": "Sendfox is an affordable email marketing platform for content creators. Manage contacts, create email campaigns, automate sequences, and grow your audience.", "category": "email newsletters", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDFOX_DELETE_CONTACT_FROM_LIST", "name": "Delete Contact from List", "description": "Tool to remove a contact from a specific list in SendFox. Use when you need to disassociate a contact from a list without deleting the contact entirely. The contact will remain in your account but will no longer be a member of the specified list." }, { "slug": "SENDFOX_GET_AUTOMATIONS", "name": "Get Automations", "description": "Tool to retrieve a list of automations. Use when you need to list all automations for your SendFox account." }, { "slug": "SENDFOX_GET_CAMPAIGN_BY_ID", "name": "Get Campaign by ID", "description": "Retrieve details for a specific campaign by its ID from SendFox. Use this when you need to fetch information about a particular campaign. Returns campaign details including title, subject, HTML content, sender info, and scheduling details." }, { "slug": "SENDFOX_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Retrieve a paginated list of email campaigns from SendFox. Use this to fetch all campaigns or navigate through pages of results. Returns campaign details including status, subject, content, and timestamps." }, { "slug": "SENDFOX_GET_CONTACT_BY_ID", "name": "Get Contact by ID", "description": "Retrieves a contact's details by their unique ID from SendFox. Use this tool when you need to look up a specific contact's information after obtaining their ID from a contact list or other API response. Returns contact details including email, name, subscription status, and list memberships." }, { "slug": "SENDFOX_GET_CONTACT_FIELDS", "name": "Get Contact Fields", "description": "Retrieves all contact fields available in the SendFox account. Use this to discover available fields before creating or updating contacts. Returns standard fields (email, first_name, last_name) and any custom fields configured in the account." }, { "slug": "SENDFOX_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a paginated list of contacts. Use when you need to fetch contacts in pages, optionally filtering by email." }, { "slug": "SENDFOX_GET_CONTACTS_IN_LIST", "name": "Get Contacts in List", "description": "Tool to retrieve contacts in a specific list. Use when you need to fetch all contacts belonging to a particular list, optionally filtering by search query." }, { "slug": "SENDFOX_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve information about the authenticated user from SendFox. Returns user details including name, email, contact count, and contact limit. Use this tool when you need to check account information or verify authentication status." }, { "slug": "SENDFOX_GET_FORMS", "name": "Get Forms", "description": "Tool to retrieve a paginated list of forms from SendFox. Use when you need to fetch all forms or search for specific forms by query." }, { "slug": "SENDFOX_GET_LIST_BY_ID", "name": "Get List by ID", "description": "Retrieves details of a specific contact list by its ID from SendFox. Use this tool when you need information about a particular list (name, contact count, timestamps). Requires a valid list_id which can be obtained from the 'Get Lists' action." }, { "slug": "SENDFOX_GET_LISTS", "name": "Get Lists", "description": "Retrieve all contact lists from your SendFox account with pagination support. Use this tool when you need to: - Fetch all available contact lists for your account - Get list IDs to use with other SendFox actions (e.g., adding contacts to lists) - Check list names and browse through paginated results Returns a list of contact lists with their IDs and names, along with pagination metadata." }, { "slug": "SENDFOX_LIST_CONTACT_FIELDS", "name": "List Contact Fields", "description": "Tool to list all custom contact fields defined by the user. Returns a paginated list of contact fields with their IDs, names, and timestamps." }, { "slug": "SENDFOX_LIST_UNSUBSCRIBED_CONTACTS", "name": "List Unsubscribed Contacts", "description": "Tool to retrieve a paginated list of contacts who have unsubscribed. Use when you need to fetch unsubscribed contacts, optionally filtering by search query." }, { "slug": "SENDFOX_PATCH_UNSUBSCRIBE_CONTACT", "name": "Unsubscribe Contact", "description": "Unsubscribe a contact from all email communications in your SendFox account. Use this tool when you need to: - Globally unsubscribe a contact from all future emails - Honor unsubscribe requests from subscribers - Mark a contact as opted-out The contact will be marked as unsubscribed but remains in your contacts database. This is a permanent action - the contact will not receive any future campaigns." }, { "slug": "SENDFOX_POST_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact (subscriber) in your SendFox account. Use this tool when you need to: - Add a new subscriber to your email list - Create a contact with optional first/last name - Add a contact to one or more specific lists If the contact already exists, their information will be updated with the provided data." }, { "slug": "SENDFOX_POST_CREATE_LIST", "name": "Create List", "description": "Create a new contact list in your SendFox account. Use this tool when you need to: - Create a new mailing list for organizing contacts - Set up a list before adding subscribers to it - Segment your audience by creating topic-specific lists The list will be created with 0 contacts initially. After creation, use other SendFox actions to add contacts to this list. Returns the created list's ID, name, and metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Your Sendfox Personal Access Token. Create one at https://sendfox.com/account/oauth", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendlane", "name": "Sendlane", "logo": "https://logos.composio.dev/api/sendlane", "description": "Sendlane is a cloud-based marketing automation platform that helps eCommerce businesses engage customers through personalized email and SMS campaigns.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDLANE_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve a list of email campaigns. Use when you need to fetch all campaigns with optional pagination." }, { "slug": "SENDLANE_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Retrieve a list of all custom fields in your Sendlane account. Custom fields allow you to store additional contact information beyond the standard fields. Use this tool to discover available custom fields, their IDs, names, tags, and types before creating or updating contacts with custom field data. Supports optional pagination via page and per_page parameters." }, { "slug": "SENDLANE_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve all mailing lists. Use when you need to fetch or display all available contact lists with optional pagination." }, { "slug": "SENDLANE_LIST_DELETE", "name": "Delete List", "description": "Tool to delete a mailing list. Use when you need to remove an unwanted list after confirming its list_id." }, { "slug": "SENDLANE_POST_LIST", "name": "Create List", "description": "Tool to create a new list. Use when you need to add a brand-new mailing list before sending campaigns." }, { "slug": "SENDLANE_TAG_CREATE", "name": "Create Tag", "description": "Tool to create a new tag. Use when you need to segment subscribers using labels." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sendlane_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sendlane API Token", "type": "string", "description": "The API access token from your Sendlane dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendloop", "name": "Sendloop", "logo": "https://logos.composio.dev/api/sendloop", "description": "Sendloop is an all-in-one email marketing solution for SaaS, e-commerce, application, and small business owners.", "category": "email newsletters", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDLOOP_GET_ACCOUNT_INFO", "name": "Get Sendloop Account Information", "description": "Tool to retrieve account information. Use when you need details about the current Sendloop account." }, { "slug": "SENDLOOP_GET_OVERALL_LIST_REPORT", "name": "Get Overall List Report", "description": "Tool to retrieve overall report for a subscriber list. Use after sending campaigns to get summary metrics." }, { "slug": "SENDLOOP_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list campaigns. Use when you need to filter by campaign status and handle pagination for campaign retrieval." }, { "slug": "SENDLOOP_LIST_LISTS", "name": "List SendLoop Lists", "description": "Tool to retrieve subscriber lists. Use when you need to get all mailing lists." }, { "slug": "SENDLOOP_LIST_SUBSCRIBERS", "name": "List SendLoop Subscribers", "description": "Tool to list subscribers in a specified SendLoop list with pagination. Use when you need to retrieve subscribers for a given list ID, optionally filtering by segment and using start index for pagination." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "sendloop_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "account.read,list.read,subscriber.read,campaign.read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "sendloop_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sendloop API Key", "type": "string", "description": "The API key used for authenticating requests to the Sendloop API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sendspark", "name": "Sendspark", "logo": "https://logos.composio.dev/api/sendspark", "description": "Sendspark is a video messaging platform that empowers businesses to create, send, and track personalized video content, simplifying communication by allowing users to quickly record or upload videos and share them via email, social media, or other digital channels.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENDSPARK_ADD_MULTIPLE_PROSPECTS_TO_DYNAMIC_CAMPAIGN", "name": "Add Multiple Prospects to Dynamic Campaign", "description": "Tool to add multiple prospects to a dynamic campaign in bulk. Use when you need to add many prospects to your dynamic video campaign at once after confirming associated charges." }, { "slug": "SENDSPARK_ADD_PROSPECT_TO_DYNAMIC_VIDEO_CAMPAIGN", "name": "Add Prospect to Dynamic Video Campaign", "description": "Tool to add a prospect to a dynamic video campaign. Use after confirming workspace and campaign IDs. Example: Add new prospect with name/contact details to dynamic \"dyn12345\" under a known workspace." }, { "slug": "SENDSPARK_API_HEALTH_STATUS", "name": "API Health Status", "description": "Tool to check the health status of the Sendspark API. Use before making other API calls to ensure the service is up." }, { "slug": "SENDSPARK_CREATE_DYNAMIC_VIDEO_CAMPAIGN2", "name": "Create Dynamic Video Campaign V2", "description": "Tool to create a dynamic video campaign in a workspace. Use when you need to create a container for AI-personalized dynamic videos that can be sent to prospects." }, { "slug": "SENDSPARK_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Delete a webhook by its unique ID. Returns a structured response with status code and message. This action is idempotent: deleting a non-existent webhook (404) with workspaceId provided returns success. Invalid webhook IDs return 400 with error details. Best practice: Always provide workspaceId to use the reliable workspace-scoped endpoint." }, { "slug": "SENDSPARK_GET_DYNAMIC_CAMPAIGN_BY_ID", "name": "Get Dynamic Campaign by ID", "description": "Tool to retrieve details of a specific dynamic video campaign. Use after confirming workspace and campaign IDs." }, { "slug": "SENDSPARK_GET_WORKSPACE_PROSPECT_DATA_BY_EMAIL", "name": "Get Workspace Prospect Data by Email", "description": "Tool to retrieve prospect data by email in a dynamic campaign. Use after adding a prospect to a campaign to fetch its details." }, { "slug": "SENDSPARK_LIST_DYNAMIC_VIDEO_CAMPAIGNS", "name": "List Dynamic Video Campaigns", "description": "Tool to list all dynamic video campaigns in a workspace. Use when retrieving campaigns with optional pagination, filtering, or search." }, { "slug": "SENDSPARK_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Retrieves all configured webhooks for a Sendspark workspace. Webhooks are automated notifications sent when specific events occur in dynamic video campaigns (e.g., video created, video played, CTA clicked, video opened). Use this action to audit active webhook configurations, verify webhook URLs, or check which events are being monitored. Returns an empty list if no webhooks are configured." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sendspark_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sendspark API Key", "type": "string", "description": "The API Key specific to your Sendspark workspace.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Sendspark API Secret", "type": "string", "description": "The API Secret specific to your Sendspark user profile.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sensibo", "name": "Sensibo", "logo": "https://logos.composio.dev/api/sensibo", "description": "Sensibo offers smart controllers that connect air conditioners and heat pumps to the internet, enabling remote control and automation.", "category": "internet of things", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SENSIBO_GET_ALL_DEVICES", "name": "Get All Sensibo Devices", "description": "Tool to retrieve all Sensibo pods for the authenticated user. Use when you need an up-to-date list of all devices linked to your Sensibo account." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sensibo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sensibo API Key", "type": "string", "description": "The API key generated from your Sensibo account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "seqera", "name": "Seqera", "logo": "https://logos.composio.dev/api/seqera", "description": "Seqera Platform is an intuitive, centralized command post that enables data analysis at scale, allowing users to launch, manage, and monitor scalable Nextflow pipelines and compute environments on-premises or across cloud providers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SEQERA_CREATE_WAVE_CONTAINER", "name": "Create Wave Container", "description": "Tool to submit a request to Wave for accessing a private container registry or building a container image on-the-fly. Use when you need to provision containers via Wave with Dockerfile, Conda recipe, or package specifications. Returns the name of the container made available by Wave." }, { "slug": "SEQERA_GET_ORGANIZATION_DETAILS", "name": "Get Organization Details", "description": "Tool to retrieve detailed information about a specific organization." }, { "slug": "SEQERA_GET_SERVICE_INFO", "name": "Get Service Info", "description": "Tool to retrieve information about the Seqera API service. Use when you need to check the service version and commit ID for troubleshooting." }, { "slug": "SEQERA_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve information about the authenticated user. Use when you need to fetch details of the current user after authentication." }, { "slug": "SEQERA_GET_WAVE_BUILD_LOGS", "name": "Get Wave Build Logs", "description": "Tool to get logs for a container build by build ID. Use when you need to troubleshoot or inspect the build process of a Wave container." }, { "slug": "SEQERA_GET_WAVE_BUILD_STATUS", "name": "Get Wave Build Status", "description": "Tool to retrieve the status of a Wave container build by build ID. Use when you need to check if a container build is completed and whether it succeeded." }, { "slug": "SEQERA_INSPECT_WAVE_CONTAINER", "name": "Inspect Wave Container", "description": "Tool to inspect container image metadata via Wave. Use when you need registry, manifest, digest, configuration, and OCI compatibility information about a container image." }, { "slug": "SEQERA_LIST_ACTION_EVENT_TYPES", "name": "List Action Event Types", "description": "Tool to list supported action event types. Use when you need to discover available triggers for pipelines, optionally filtered by workspace." }, { "slug": "SEQERA_LIST_COMPUTE_ENVIRONMENTS", "name": "List Compute Environments", "description": "Tool to retrieve a list of compute environments. Use when you need to page, sort, or filter compute environments accessible to your account." }, { "slug": "SEQERA_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations. Use after authentication to retrieve accessible Seqera organizations." }, { "slug": "SEQERA_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list all pipelines accessible to the authenticated user. Use when you need to browse pipelines with optional pagination, sorting, or search filters." }, { "slug": "SEQERA_LIST_WORKFLOWS", "name": "List Workflows", "description": "Tool to list workflows. Use when you need to retrieve workflows filtered by workspace and paginated." }, { "slug": "SEQERA_VALIDATE_ACTION_NAME", "name": "Validate Action Name", "description": "Tool to validate action name. Use when you need to confirm if an action name is valid and available before creating an action. Returns validation status with details." }, { "slug": "SEQERA_VALIDATE_PIPELINE_NAME", "name": "Validate Pipeline Name", "description": "Tool to validate a pipeline name. Use when you need to check if a given pipeline name is valid and available before creating or updating one." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "seqera_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Seqera Platform Access Token", "type": "string", "description": "The access token used for authenticating API requests to Seqera Platform.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "serpdog", "name": "Serpdog", "logo": "https://logos.composio.dev/api/serpdog", "description": "Serpdog provides APIs for scraping Google search results and related services, enabling developers to access real-time data from Google Search, Maps, Scholar, and more. Note: Serpdog has merged with Scrapingdog but continues to operate independently at api.serpdog.io.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SERPDOG_SCREENSHOT_API", "name": "Screenshot API", "description": "Tool to capture a screenshot of a webpage. Use when you need a visual snapshot of a page; supports full-page, device emulation, delays, and dark mode." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "serpdog_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Serpdog API Key", "type": "string", "description": "This is your API key for Serpdog. You can find it in your Serpdog dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "serphouse", "name": "Serphouse", "logo": "https://logos.composio.dev/api/serphouse", "description": "High Volume API for SEO companies, data mining services, and SEO Tool Suite as a SaaS.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERPHOUSE_ACCOUNT_INFO", "name": "Get Account Information", "description": "Tool to retrieve account information including active plan, credit usage, and account details. Use when you need to check account status, remaining credits, or active subscription plans." }, { "slug": "SERPHOUSE_DOMAIN_LIST", "name": "Get Domain List", "description": "Tool to retrieve comprehensive list of search engine domains supported by the SERP API including Google, Bing, and Yahoo. Use when you need to know which domains are available for search queries." }, { "slug": "SERPHOUSE_GOOGLE_JOBS_SEARCH", "name": "Google Jobs Search", "description": "Tool to perform real-time Google Jobs search to retrieve job listings. Use when you need to search for job postings on Google with specific query terms, location, and filters." }, { "slug": "SERPHOUSE_GOOGLE_SERP_ADVANCED_SCHEDULED", "name": "Schedule Google SERP Advanced Search", "description": "Tool to schedule Google SERP scraping tasks that fetch up to 100 results by iterating through multiple result pages. Use when you need comprehensive search results beyond Google's 10-result limit. Credits are reserved upfront based on max_pages (1 page = 1 credit), with automatic refunds for unused pages." }, { "slug": "SERPHOUSE_LANGUAGE_LIST", "name": "Get Language List", "description": "Tool to retrieve full list of languages supported by Google, Bing, and Yahoo for SERP requests. Use when you need language codes for making SERP API requests or when configuring language-specific searches." }, { "slug": "SERPHOUSE_LOCATION_SEARCH", "name": "Search Locations", "description": "Tool to search and retrieve available locations for SERP API from Google or Bing geographical targeting data. Use when you need to find valid location targets before making SERP API requests." }, { "slug": "SERPHOUSE_SERP_CHECK", "name": "Check SERP Task Status", "description": "Tool to check the status of a previously submitted SERP task. Use when monitoring task completion progress or verifying whether a SERP task has finished processing." }, { "slug": "SERPHOUSE_SERP_LIVE_GET", "name": "SERP Live Search (GET)", "description": "Tool to execute real-time search requests and retrieve search engine results immediately via HTTP GET. Use when you need to perform searches on Google, Bing, or Yahoo and get instant SERP data." }, { "slug": "SERPHOUSE_SERP_LIVE_POST", "name": "Execute SERP Live POST Search", "description": "Tool to execute real-time search requests and retrieve search engine results immediately using HTTP POST method. Use when you need to get fresh SERP data from Google, Bing, or Yahoo with specific location and device targeting. Supports web, news, image, and shopping search types with advanced filtering options." }, { "slug": "SERPHOUSE_SERP_SCHEDULE", "name": "Schedule SERP Tasks", "description": "Tool to schedule SERP search tasks for asynchronous processing. Use when you need to queue multiple search tasks (up to 100 at once) for later execution. Results can be retrieved via webhook or polling." }, { "slug": "SERPHOUSE_TRENDS_CATEGORIES_LIST", "name": "Get Trends Categories List", "description": "Tool to retrieve the full list of categories and subcategories for Google Trends searches. Use when you need category IDs for filtering trends analysis." }, { "slug": "SERPHOUSE_TRENDS_CHECK", "name": "Check Trend Search Status", "description": "Tool to check the status of a previously submitted trend search task. Use when you need to monitor completion progress of a trend search." }, { "slug": "SERPHOUSE_TRENDS_COUNTRY_LIST", "name": "Get Trends Country List", "description": "Tool to retrieve the full list of countries and states for Google Trends searches. Use when you need geographic targeting options for trends analysis." }, { "slug": "SERPHOUSE_TRENDS_GET", "name": "Get Trend Search Results", "description": "Tool to retrieve the results of a completed trend search query. Use when you need to fetch trend data for a specific task ID that was previously submitted. The task must be completed before results are available." }, { "slug": "SERPHOUSE_TRENDS_LANGUAGE_LIST", "name": "Get Trends Language List", "description": "Tool to retrieve the full list of supported languages for Google Trends searches. Use when you need to identify valid language codes for trend search requests." }, { "slug": "SERPHOUSE_TRENDS_SCHEDULE", "name": "Schedule Google Trends Search", "description": "Tool to schedule Google Trends search tasks with configuration for keywords, time ranges, and geographic locations. Use when you need to collect Google Trends data for specific keywords, time periods, or regions. Supports batch processing of up to 100 tasks." }, { "slug": "SERPHOUSE_TRENDS_SEARCH", "name": "Perform Google Trends Search", "description": "Tool to perform real-time Google Trends search to retrieve trend data for specified keywords. Use when you need to analyze keyword popularity across time periods and geographic locations." }, { "slug": "SERPHOUSE_TRENDS_TIMEZONE_LIST", "name": "Get Trends Timezone List", "description": "Tool to retrieve full list of timezones and offset values for use in Google Trend search requests. Use when you need timezone information for trend analysis or when configuring timezone-specific trend searches." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "serphouse_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from your dashboard at https://app.serphouse.com/home", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "serply", "name": "Serply", "logo": "https://logos.composio.dev/api/serply", "description": "Serply is a fast and accurate search API that provides real-time Google search results, SERP data, and web scraping capabilities. Access Google Search, Bing Search, Google Jobs, Google Scholar, Google News, and more via simple API calls.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERPLY_PERFORM_IMAGE_SEARCH", "name": "Perform Image Search", "description": "Performs an image search using the Serply API to find images matching a text query. This tool searches for images on the web and returns results with image URLs, thumbnails, dimensions, titles, and source information. Ideal for finding visual content, gathering image references, or discovering images related to specific topics or keywords. Use this when you need to: - Find images matching specific descriptions or keywords - Gather visual references for a topic - Retrieve image URLs for display or download - Search for images with specific characteristics Supports pagination, localization (language/country), and safe search filtering." }, { "slug": "SERPLY_PERFORM_MAPS_SEARCH", "name": "Perform Maps Search", "description": "Tool to perform a maps search. Use when you need to find geographic locations for a given query." }, { "slug": "SERPLY_PERFORM_SCHOLAR_SEARCH", "name": "Perform Scholar Search", "description": "Tool to perform an academic scholar search via Serply. Use when you need scholarly literature search results for a specific query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "serply_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Serply API Key", "type": "string", "description": "The API key provided by Serply for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "serveravatar", "name": "Serveravatar", "logo": "https://logos.composio.dev/api/serveravatar", "description": "ServerAvatar is a server management system that helps you manage servers, applications, databases, and deployments through an intuitive API.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SERVERAVATAR_DESTROY_BACKUPS", "name": "Destroy Backups", "description": "Tool to delete one or more backups from the cloud storage provider. Use when you need to remove specific backups by their IDs from an organization." }, { "slug": "SERVERAVATAR_GET_ORGANIZATION", "name": "Get organization details", "description": "Tool to retrieve details of a specific organization by ID. Use when you need to fetch information about an organization." }, { "slug": "SERVERAVATAR_LIST_APPLICATIONS", "name": "List Applications", "description": "Tool to list applications for a specific organization in ServerAvatar. Use when you need to retrieve all applications associated with an organization ID." }, { "slug": "SERVERAVATAR_LIST_BACKUPS", "name": "List Backups", "description": "Tool to list all backups in a ServerAvatar organization. Use when you need to retrieve backup information including status, size, and expiration dates." }, { "slug": "SERVERAVATAR_LIST_BACKUPS_ARCHIVE", "name": "List Archived Backups", "description": "Tool to list archived backups for an organization by type. Use when you need to retrieve archived backups filtered by type (filesystem, database, or application)." }, { "slug": "SERVERAVATAR_LIST_BACKUPS_DELETED_SERVER", "name": "List Backups for Deleted Servers", "description": "Tool to get list of deleted servers with available backups. Use when you need to retrieve information about servers that have been deleted but still have backup data in the archive." }, { "slug": "SERVERAVATAR_LIST_BACKUPS_PRESETS", "name": "List Backup Presets", "description": "Tool to retrieve backup preset schedules and retention periods for a server. Use when you need to view available backup scheduling options and retention period configurations." }, { "slug": "SERVERAVATAR_LIST_CLOUD_SERVER_PROVIDERS", "name": "List Cloud Server Providers", "description": "Tool to list connected cloud server provider accounts for an organization. Use when you need to retrieve all connected provider accounts like DigitalOcean, Vultr, Linode, Hetzner, or AWS Lightsail." }, { "slug": "SERVERAVATAR_LIST_CLOUD_STORAGE_PROVIDERS", "name": "List Cloud Storage Providers", "description": "Tool to list all configured cloud storage providers for an organization. Use when you need to retrieve available storage provider configurations for backups or file storage." }, { "slug": "SERVERAVATAR_LIST_CRONJOBS_PRESETS", "name": "List Cronjobs Presets", "description": "Tool to retrieve available cronjob presets for a server. Use when you need to get standard cron expressions for scheduling tasks at various intervals." }, { "slug": "SERVERAVATAR_LIST_DATABASES", "name": "List Databases", "description": "Tool to list databases for a given organization. Use when you need to retrieve all databases or filter by name." }, { "slug": "SERVERAVATAR_LIST_GIT_PROVIDERS", "name": "List Git Providers", "description": "Tool to list git providers for a specific organization. Use when you need to retrieve all git providers configured for an organization." }, { "slug": "SERVERAVATAR_LIST_MEMBERS", "name": "List Organization Members", "description": "Tool to list members of a specific organization in ServerAvatar. Use when you need to retrieve all members associated with an organization ID, including their roles and user details." }, { "slug": "SERVERAVATAR_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to list all organizations associated with the authenticated user account. Use when you need to retrieve all organizations the user has access to." }, { "slug": "SERVERAVATAR_LIST_SERVERS", "name": "List Servers", "description": "Tool to list all servers in an organization with pagination support. Use when you need to retrieve servers for a specific organization." }, { "slug": "SERVERAVATAR_LIST_TIMEZONES", "name": "List Timezones", "description": "Tool to retrieve the list of available timezones with their UTC offsets. Use when you need to get timezone options for creating or configuring applications." }, { "slug": "SERVERAVATAR_LIST_WORDPRESS_LANGUAGES", "name": "List WordPress Languages", "description": "Tool to retrieve all available WordPress languages. Use when you need to get the list of supported languages for WordPress installation or configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "serveravatar_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your ServerAvatar API token. Generate it from Account -> API Access in your ServerAvatar dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sevdesk", "name": "Sevdesk", "logo": "https://logos.composio.dev/api/sevdesk", "description": "sevDesk is an online accounting software designed for small businesses and freelancers, offering features like invoicing, expense management, and financial reporting.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 115, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SEVDESK_BOOK_INVOICE_AMOUNT", "name": "Book Invoice Amount", "description": "Tool to book an invoice amount in SevDesk. Use when you need to record a payment for an invoice, either full or partial. This creates an invoice log entry and updates the invoice status accordingly." }, { "slug": "SEVDESK_CHECK_CUSTOMER_NUMBER_AVAILABILITY", "name": "Check Customer Number Availability", "description": "Tool to check if a customer number is available in sevDesk. Use when you need to verify that a customer number can be assigned without conflicts." }, { "slug": "SEVDESK_CREATE_ACCOUNTING_CONTACT", "name": "Create Accounting Contact", "description": "Tool to create a new accounting contact in sevDesk. Use when you need to assign debitor or creditor numbers to existing contacts for accounting purposes." }, { "slug": "SEVDESK_CREATE_CHECK_ACCOUNT_TRANSACTION", "name": "Create Check Account Transaction", "description": "Tool to create a new check account transaction in SevDesk. Use when you need to manually record a transaction for a payment account, such as bank transfers, cash movements, or other financial transactions that need to be tracked in the accounting system." }, { "slug": "SEVDESK_CREATE_CLEARING_ACCOUNT", "name": "Create Clearing Account", "description": "Tool to create a new clearing account in sevDesk. Use when you need to set up accounts for tracking intermediate transactions like coupons, gift cards, or prepayments. Clearing accounts are offline accounts used for booking purposes." }, { "slug": "SEVDESK_CREATE_COMMUNICATION_WAY", "name": "Create Communication Way", "description": "Tool to create a new contact communication way (email, phone, website, etc.) in SevDesk. Use when you need to add contact information like email addresses, phone numbers, or website URLs to an existing contact." }, { "slug": "SEVDESK_CREATE_CONTACT", "name": "Create Contact", "description": "Creates a new contact (person or company) in SevDesk accounting system. Required fields: - type: Must be 'PERSON' or 'COMPANY' - familyname: Required for PERSON type (last name) - name: Required for COMPANY type (company name) - category: Contact category reference (e.g., id=3 for Customer, id=2 for Supplier) Automatically generates customerNumber if not provided. Supports optional fields like email, phone, address, bank details, tax information, and more." }, { "slug": "SEVDESK_CREATE_CONTACT2", "name": "Create Contact (REST API)", "description": "Tool to create a new contact in sevDesk using the standard REST API endpoint. Use when you need to create a person or organization contact with category assignment." }, { "slug": "SEVDESK_CREATE_CONTACT_ADDRESS", "name": "Create Contact Address", "description": "Tool to create a new contact address in SevDesk. Use when you need to add a new address for an existing contact with street, city, postal code, and country information." }, { "slug": "SEVDESK_CREATE_CONTACT_CUSTOM_FIELD", "name": "Create Contact Custom Field", "description": "Tool to create a custom field for a contact in sevDesk. Use when you need to add custom field values to a contact. Requires references to both the contact and the custom field setting that defines the field type." }, { "slug": "SEVDESK_CREATE_CONTACT_CUSTOM_FIELD_SETTING", "name": "Create Contact Custom Field Setting", "description": "Creates a new contact custom field setting in sevDesk for tracking additional contact information. Use this tool when you need to add custom fields to contacts to store information beyond the standard fields provided by sevDesk (e.g., customer type, lead source, industry classification, or other custom attributes). Once created, these custom fields can be used when managing contacts." }, { "slug": "SEVDESK_CREATE_CREDIT_NOTE_FROM_INVOICE", "name": "Create Credit Note from Invoice", "description": "Tool to create a new credit note from an existing invoice in SevDesk. Use when you need to issue a credit note based on an already created invoice." }, { "slug": "SEVDESK_CREATE_FILE_IMPORT_ACCOUNT", "name": "Create File Import Account", "description": "Tool to create a new file import account (check account) in sevDesk. Use when you need to set up a new bank account that will receive transaction imports via CSV or MT940 files. The account will be created with type 'online' to support file imports." }, { "slug": "SEVDESK_CREATE_PART", "name": "Create Part", "description": "Tool to create a new part (product or service) in SevDesk. Use when you need to add inventory items, products, or services to the system for use in invoices and orders." }, { "slug": "SEVDESK_CREATE_PAYMENT_METHOD", "name": "Create Payment Method", "description": "Creates a new payment method in sevDesk for tracking different payment types. Use this tool when you need to add custom payment options (e.g., specific credit cards, digital wallets, or regional payment methods) that aren't already available in the system. The created payment method can then be used when creating invoices or recording payments." }, { "slug": "SEVDESK_CREATE_PRIVATE_TRANSACTION_RULE", "name": "Create Private Transaction Rule", "description": "Tool to create a new private transaction rule in SevDesk. Use when you need to define rules that automatically mark transactions as private based on counterpart name or payment purpose. This is useful for separating personal transactions from business ones." }, { "slug": "SEVDESK_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag and attach it to an object (Invoice, Order, Voucher, or CreditNote) in sevDesk. Use when you need to categorize or label objects for organization and filtering. If a tag with the same name already exists, it will be linked to the object instead of creating a duplicate." }, { "slug": "SEVDESK_DELETE_ACCOUNTING_CONTACT_BY_ID", "name": "Delete Accounting Contact By ID", "description": "Permanently deletes an accounting contact from sevDesk by its unique identifier. This action removes the accounting contact and cannot be undone. Use this when you need to: - Remove outdated or duplicate accounting contacts - Clean up test data - Delete accounting contacts that are no longer needed The accounting contact ID must be valid and the contact must exist, otherwise a 404 error will be raised. Example: \"Delete accounting contact with ID 90804710\"" }, { "slug": "SEVDESK_DELETE_CHECK_ACCOUNT_BY_ID", "name": "Delete Check Account By ID", "description": "Permanently deletes a check account from sevDesk by its unique identifier. This action removes the check account (bank account) and cannot be undone. Use this when you need to: - Remove outdated or unused bank accounts - Clean up test data - Delete check accounts that are no longer needed The check account ID must be valid and the account must exist, otherwise a 404 error will be raised. Example: \"Delete check account with ID 6158594\"" }, { "slug": "SEVDESK_DELETE_CHECK_ACCOUNT_TRANSACTION_BY_ID", "name": "Delete Check Account Transaction", "description": "Permanently deletes a check account transaction from sevDesk by its unique identifier. Use when you need to remove a transaction that was created in error or is no longer needed." }, { "slug": "SEVDESK_DELETE_COMMUNICATION_WAY_BY_ID", "name": "Delete Communication Way By ID", "description": "Permanently deletes a communication way from sevDesk by its unique identifier. Use when you need to remove phone numbers, email addresses, or other contact methods from contacts. The communication way ID must be valid and exist, otherwise a 404 error will be raised." }, { "slug": "SEVDESK_DELETE_CONTACT", "name": "Delete Contact", "description": "Permanently deletes a contact from sevDesk by its unique identifier. This action removes the contact and cannot be undone. Use this when you need to: - Remove outdated or duplicate contacts - Clean up test data - Delete contacts that are no longer needed The contact ID must be valid and the contact must exist, otherwise a 404 error will be raised. Example: \"Delete contact with ID 12345\"" }, { "slug": "SEVDESK_DELETE_CONTACT_ADDRESS_BY_ID", "name": "Delete Contact Address By ID", "description": "Tool to delete a contact address from sevDesk by its unique identifier. Use when you need to permanently remove a contact address that is no longer needed or is outdated." }, { "slug": "SEVDESK_DELETE_CONTACT_CUSTOM_FIELD_BY_ID", "name": "Delete Contact Custom Field By ID", "description": "Tool to permanently delete a contact custom field by its ID. Use when you need to remove a custom field value from a contact." }, { "slug": "SEVDESK_DELETE_CONTACT_CUSTOM_FIELD_SETTING_BY_ID", "name": "Delete Contact Custom Field Setting By ID", "description": "Tool to permanently delete a contact custom field setting by its ID. Use when you need to remove a custom field configuration from contacts." }, { "slug": "SEVDESK_DELETE_CREDIT_NOTE_BY_ID", "name": "Delete Credit Note By ID", "description": "Permanently deletes a credit note from sevDesk by its unique identifier. This action removes the credit note and cannot be undone. Use this when you need to: - Remove outdated or incorrect credit notes - Clean up draft credit notes that are no longer needed - Delete test data Note: The credit note must be in draft status to be deleted. Attempting to delete a non-draft credit note will result in a 409 Conflict error. The credit note ID must be valid and exist, otherwise a 404 error will be raised. Example: \"Delete credit note with ID 2569269\"" }, { "slug": "SEVDESK_DELETE_ORDER_BY_ID", "name": "Delete Order By ID", "description": "Permanently deletes an order from sevDesk by its unique identifier. Use this when you need to remove orders from the system. Note that only draft orders can be deleted - attempting to delete orders in other states will result in a 409 conflict error." }, { "slug": "SEVDESK_DELETE_ORDER_POS_BY_ID", "name": "Delete Order Position By ID", "description": "Permanently deletes an order position from sevDesk by its unique identifier. Use this when you need to remove line items or positions from orders. Note that deletion may fail with a 409 conflict error if the order is not in draft status." }, { "slug": "SEVDESK_DELETE_PAYMENT_METHOD", "name": "Delete Payment Method", "description": "Deletes a payment method in sevDesk by its ID. Use this when you need to permanently remove a payment method from the system. Requires the payment method ID which can be obtained from the Get Payment Methods or Create Payment Method actions." }, { "slug": "SEVDESK_DELETE_PRIVATE_TRANSACTION_RULE_BY_ID", "name": "Delete Private Transaction Rule By ID", "description": "Permanently deletes a private transaction rule from sevDesk by its unique identifier. Use when you need to remove a rule that is no longer needed." }, { "slug": "SEVDESK_DELETE_TAG_BY_ID", "name": "Delete Tag By ID", "description": "Permanently deletes a tag from sevDesk by its unique identifier. Use this when you need to remove tags that are no longer needed or to clean up tag data. The tag ID must be valid and the tag must exist, otherwise a 404 error will be raised." }, { "slug": "SEVDESK_ENSHRINE_CHECK_ACCOUNT_TRANSACTION", "name": "Enshrine Check Account Transaction", "description": "Tool to enshrine a check account transaction by its ID. Use when you need to permanently lock or finalize a transaction to prevent further modifications." }, { "slug": "SEVDESK_EXPORT_CREDIT_NOTE_CSV", "name": "Export Credit Note CSV", "description": "Tool to export credit notes as CSV from SevDesk. Use when you need to retrieve credit note data in CSV format for reporting or data analysis. The export returns CSV content (either base64-encoded or plain text) along with file metadata." }, { "slug": "SEVDESK_FETCH_DICTIONARY_ENTRIES_BY_TYPE", "name": "Fetch Dictionary Entries By Type", "description": "Tool to retrieve placeholders (dictionary entries) for a specific object type in sevDesk. Use when you need to get available template placeholders for documents like invoices, emails, or letters." }, { "slug": "SEVDESK_FIND_CONTACTS_BY_CUSTOM_FIELD_VALUE", "name": "Find Contacts By Custom Field Value", "description": "Tool to find contacts by custom field value. Use when you need to search for contacts that have a specific value in a custom field." }, { "slug": "SEVDESK_GENERATE_PROGRESS_DOWNLOAD_HASH", "name": "Generate Progress Download Hash", "description": "Tool to generate a download hash for an export job progress. Use when you need to retrieve the progress status and download hash for an export job initiated through sevDesk's Export API." }, { "slug": "SEVDESK_GET_ACCOUNTING_CONTACT_BY_ID", "name": "Get Accounting Contact By ID", "description": "Tool to retrieve accounting contact details by ID. Use when you need accounting information (debitor/creditor numbers) for a specific contact." }, { "slug": "SEVDESK_GET_ACCOUNTING_CONTACTS", "name": "Get Accounting Contacts", "description": "Tool to retrieve accounting contacts from sevDesk. Use when you need to fetch accounting contact information including debitor and creditor numbers." }, { "slug": "SEVDESK_GET_ACCOUNT_INVOICES", "name": "Get SevClient Account Invoices", "description": "Retrieves all sevDesk account invoices for the authenticated client. Returns a list of invoice objects or null if no invoices exist in the account." }, { "slug": "SEVDESK_GET_CHECK_ACCOUNT_BALANCE_AT_DATE", "name": "Get Check Account Balance At Date", "description": "Tool to get the balance of a check account at a specific date. Use when you need to retrieve the historical balance of a bank account, considering only transactions up to the specified date at 23:59:59." }, { "slug": "SEVDESK_GET_CHECK_ACCOUNT_BY_ID", "name": "Get Check Account By ID", "description": "Tool to retrieve details of a specific check account by ID. Use when you have a check account's ID and need its detailed information including balance, IBAN, currency, and status." }, { "slug": "SEVDESK_GET_CHECK_ACCOUNTS", "name": "Get Check Accounts", "description": "Tool to retrieve a list of all check accounts. Use when you need to view or select available bank accounts in sevDesk." }, { "slug": "SEVDESK_GET_CHECK_ACCOUNT_TRANSACTION_BY_ID", "name": "Get Check Account Transaction By ID", "description": "Tool to retrieve a specific check account transaction by its ID. Use when you need detailed information about a specific transaction." }, { "slug": "SEVDESK_GET_CHECK_ACCOUNT_TRANSACTIONS", "name": "Get Check Account Transactions", "description": "Tool to retrieve list of check account transactions. Use when you need to fetch transactions with optional filters (e.g., account ID, date, status) after verifying the check account exists." }, { "slug": "SEVDESK_GET_COMMUNICATIONWAY_BY_ID", "name": "Get CommunicationWay By ID", "description": "Tool to retrieve details of a specific communication way by ID. Use when you have a communication way's ID and need its detailed information." }, { "slug": "SEVDESK_GET_COMMUNICATION_WAY_KEYS", "name": "Get Communication Way Keys", "description": "Retrieve a list of communication way keys from sevDesk. Communication way keys define the available types for contact communication methods (e.g., ID 1: Private, ID 2: Work, ID 3: Fax, ID 4: Mobile, ID 5: Empty, ID 6: Autobox, ID 7: Newsletter, ID 8: Invoicing). Use this to get the valid key IDs and names for creating or updating communication ways." }, { "slug": "SEVDESK_GET_COMMUNICATION_WAYS", "name": "Get Communication Ways", "description": "Tool to retrieve communication ways from sevDesk. Use when you need to fetch contact information like phone numbers, emails, or web addresses for a contact." }, { "slug": "SEVDESK_GET_CONTACT_ADDRESS_BY_ID", "name": "Get Contact Address By ID", "description": "Tool to retrieve details of a specific contact address by ID. Use when you have a contact address ID and need its detailed information." }, { "slug": "SEVDESK_GET_CONTACT_ADDRESSES", "name": "Get Contact Addresses", "description": "Tool to retrieve contact addresses from sevdesk. Use when you need to fetch address information for contacts with optional pagination and embedded related objects." }, { "slug": "SEVDESK_GET_CONTACT_BY_ID", "name": "Get Contact By ID", "description": "Tool to retrieve details of a specific contact by ID. Use when you have a contact's UUID and need its detailed information." }, { "slug": "SEVDESK_GET_CONTACT_CUSTOM_FIELD_BY_ID", "name": "Get Contact Custom Field By ID", "description": "Tool to retrieve a contact custom field by its ID. Use when you need to fetch details about a specific custom field associated with a contact." }, { "slug": "SEVDESK_GET_CONTACT_CUSTOM_FIELDS", "name": "Get Contact Custom Fields", "description": "Tool to retrieve contact custom fields from sevDesk. Contact custom fields store additional user-defined information about contacts beyond standard fields. Use this when you need to fetch custom field values for contacts or list all custom field data." }, { "slug": "SEVDESK_GET_CONTACT_CUSTOM_FIELD_SETTING_BY_ID", "name": "Get Contact Custom Field Setting By ID", "description": "Tool to retrieve details of a specific contact custom field setting by ID. Use when you need information about a contact custom field configuration." }, { "slug": "SEVDESK_GET_CONTACT_CUSTOM_FIELD_SETTING_REFERENCE_COUNT", "name": "Get Contact Custom Field Setting Reference Count", "description": "Tool to receive the count of references for a contact custom field setting. Use when you need to check how many times a contact custom field is referenced before deleting it." }, { "slug": "SEVDESK_GET_CONTACT_CUSTOM_FIELD_SETTINGS", "name": "Get Contact Custom Field Settings", "description": "Tool to retrieve contact custom field settings from sevDesk. Contact custom field settings define the structure and configuration of custom fields that can be added to contacts. Use this when you need to fetch the list of available custom field configurations or understand what custom fields are defined for contacts." }, { "slug": "SEVDESK_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts. Use when you need to fetch contacts from sevdesk with optional filters." }, { "slug": "SEVDESK_GET_CONTACT_TABS_ITEM_COUNT", "name": "Get Contact Tabs Item Count", "description": "Tool to get the count of items across all tabs for a specific contact. Use when you need to retrieve statistics about documents, invoices, orders, and other items related to a contact." }, { "slug": "SEVDESK_GET_CREDIT_NOTE_POSITIONS", "name": "Get Credit Note Positions", "description": "Tool to retrieve credit note positions from SevDesk. Use when you need to fetch line items or positions associated with credit notes." }, { "slug": "SEVDESK_GET_CREDIT_NOTES", "name": "Get Credit Notes", "description": "Tool to retrieve a list of credit notes. Use when you need to fetch multiple or filtered credit note records after confirming filters." }, { "slug": "SEVDESK_GET_EXPORT_INVOICECSV", "name": "Get Export Invoice CSV", "description": "Tool to export invoices as CSV from sevDesk. Use when you need to get invoice data in CSV format. The response contains base64-encoded CSV content when download parameter is false." }, { "slug": "SEVDESK_GET_EXPORT_TRANSACTIONS_CSV", "name": "Get Export Transactions CSV", "description": "Tool to export check account transactions as CSV file. Use when you need to download or retrieve transaction data in CSV format for reporting or analysis." }, { "slug": "SEVDESK_GET_INVOICE_IS_PARTIALLY_PAID", "name": "Get Invoice Is Partially Paid", "description": "Tool to check if an invoice is already partially paid. Use when you need to determine the partial payment status of a specific invoice." }, { "slug": "SEVDESK_GET_INVOICE_POSITIONS", "name": "Get Invoice Positions", "description": "Tool to retrieve all line items (positions) for a specific invoice. Use when you need detailed information about products, services, quantities, and prices on an invoice." }, { "slug": "SEVDESK_GET_INVOICE_POSS", "name": "Get Invoice Positions", "description": "Tool to retrieve invoice positions from sevDesk. Use when you need to fetch line items or positions associated with invoices." }, { "slug": "SEVDESK_GET_INVOICES", "name": "Get Invoices", "description": "Retrieves a list of invoices from sevDesk with optional filtering and pagination. Use this tool to: - Get all invoices or filter by status (DRAFT, CONFIRMED, PAID, CANCELLED) - Search invoices by contact, date range, or invoice number - Paginate through large invoice lists using limit and offset - Include related objects (contact, sevClient) using the embed parameter - Sort results by invoice date or other fields" }, { "slug": "SEVDESK_GET_LETTERPAPERS_WITH_THUMB", "name": "Get Letterpapers With Thumbnails", "description": "Tool to retrieve all available letterpapers with thumbnails from sevDesk. Use when you need to view or select letterpapers for documents." }, { "slug": "SEVDESK_GET_NEXT_CUSTOMER_NUMBER", "name": "Get Next Customer Number", "description": "Tool to retrieve the next free customer number from sevDesk. Use when you need to get the next available customer number for creating a new contact." }, { "slug": "SEVDESK_GET_ORDER_BY_ID", "name": "Get Order By ID", "description": "Tool to retrieve details of a specific order by ID. Use when you have an order's ID and need its detailed information including customer, amounts, status, and line items." }, { "slug": "SEVDESK_GET_ORDER_DISCOUNTS", "name": "Get Order Discounts", "description": "Tool to retrieve discounts applied to a specific order in sevDesk. Use when you need to find all discount entries associated with an order." }, { "slug": "SEVDESK_GET_ORDER_POS_BY_ID", "name": "Get Order Position By ID", "description": "Tool to retrieve details of a specific order position by ID. Use when you have an order position's ID and need its detailed information including quantity, price, tax rate, and discounts." }, { "slug": "SEVDESK_GET_ORDER_POSITIONS", "name": "Get Order Positions", "description": "Tool to retrieve order positions from SevDesk. Use when you need to fetch line items or positions associated with orders." }, { "slug": "SEVDESK_GET_ORDERS", "name": "Get Orders", "description": "Retrieve a paginated list of orders from sevDesk. This action fetches orders with support for filtering by status, customer, search text, and pagination. All parameters are optional - calling without parameters returns all orders. Use 'embed' to include related data like contact information or addresses in a single request." }, { "slug": "SEVDESK_GET_PART_BY_ID", "name": "Get Part By ID", "description": "Tool to retrieve details of a specific part by ID. Use when you have a part's ID and need its detailed information including pricing, stock levels, and metadata." }, { "slug": "SEVDESK_GET_PART_CONTACT_PRICES", "name": "Get Part Contact Prices", "description": "Tool to retrieve a list of part contact prices. Use when you need to fetch pricing details for parts linked to contacts, with optional filters, pagination, and embedding of related objects." }, { "slug": "SEVDESK_GET_PARTS", "name": "Get Parts", "description": "Tool to retrieve a list of all parts. Use when you need to list available products or services for selection." }, { "slug": "SEVDESK_GET_PART_STOCK", "name": "Get Part Stock", "description": "Tool to retrieve the current stock level of a specific part. Use when you need to check inventory availability for a product or service." }, { "slug": "SEVDESK_GET_PART_UNITIES", "name": "Get Part Unities", "description": "Retrieves a list of part unities (units of measurement) from SevDesk. Part unities represent units of measurement used for products/parts in the system (e.g., pieces, meters, kilograms, hours). Use this action to list all available units, with optional pagination and filtering for deleted entries." }, { "slug": "SEVDESK_GET_PAYMENT_METHODS", "name": "Get Payment Methods", "description": "Retrieves all available payment methods from sevDesk. Payment methods define how customers pay invoices (e.g., SEPA bank transfer, cash, check, online payment like PayPal). Use this to list payment methods before creating invoices or to display payment options. Supports pagination via limit and offset parameters." }, { "slug": "SEVDESK_GET_PLACES", "name": "Get Places", "description": "Retrieve a list of places (cities/locations with geographic data) from sevDesk. Places contain location information including city names, coordinates (latitude/longitude), postal codes, and location IDs. Useful for address validation, geographic lookups, or populating location dropdowns in your application. Use pagination (limit/offset) to handle the large dataset efficiently (45,000+ places)." }, { "slug": "SEVDESK_GET_PRIVATE_TRANSACTION_RULES", "name": "Get Private Transaction Rules", "description": "Tool to list existing private transaction rules in SevDesk. Use when you need to retrieve all rules that automatically mark transactions as private based on counterpart name or payment purpose. This is useful for reviewing configured rules for separating personal transactions from business ones." }, { "slug": "SEVDESK_GET_PROGRESS", "name": "Get Export Progress", "description": "Tool to retrieve the progress of an export operation. Use when you need to check the status of a running export by its hash identifier." }, { "slug": "SEVDESK_GET_RECEIPT_GUIDANCE_FOR_ACCOUNT_NUMBER", "name": "Get Receipt Guidance For Account Number", "description": "Tool to retrieve receipt guidance for a specific Datev account number. Use when you need to understand what receipt types and tax rules are allowed for a particular account in the accounting system." }, { "slug": "SEVDESK_GET_RECEIPT_GUIDANCE_FOR_ALL_ACCOUNTS", "name": "Get Receipt Guidance For All Accounts", "description": "Tool to retrieve receipt guidance for all accounts. Provides guidance on which booking accounts can be used with which tax rules and receipt types. Use when you need to determine compatible tax rates and tax rules for specific booking accounts in voucher processing." }, { "slug": "SEVDESK_GET_RECEIPT_GUIDANCE_FOR_EXPENSE", "name": "Get Receipt Guidance For Expense", "description": "Tool to retrieve guidance for expense accounts from sevDesk. Use when you need to determine which expense accounts are available and which tax rules and receipt types are compatible with them. This helps ensure correct account selection based on client settings and tax requirements." }, { "slug": "SEVDESK_GET_RECEIPT_GUIDANCE_FOR_REVENUE", "name": "Get Receipt Guidance For Revenue", "description": "Tool to retrieve guidance for revenue accounts from sevDesk. Use when you need to determine which revenue accounts are available and which tax rules and receipt types are compatible with them. This helps ensure correct account selection based on client settings and tax requirements." }, { "slug": "SEVDESK_GET_RECEIPT_GUIDANCE_FOR_TAX_RULE", "name": "Get Receipt Guidance For Tax Rule", "description": "Tool to get guidance by tax rule from sevDesk. Use when you need to determine which booking accounts are compatible with a specific tax rule. This helps ensure proper account selection for vouchers and invoices, preventing validation errors. Returns a list of accounts with allowed receipt types and tax rules." }, { "slug": "SEVDESK_GET_REPORT_INVOICELIST", "name": "Get Report Invoice List", "description": "Tool to export invoice list report from sevDesk. Use when you need to get an invoice list report, typically as a PDF. The response contains base64-encoded content when download parameter is false." }, { "slug": "SEVDESK_GET_REPORT_ORDERLIST", "name": "Get Report Orderlist", "description": "Tool to export the order list report from sevDesk. Use when you need to generate a report of orders. The report is typically returned as a base64-encoded PDF file that can be decoded and saved." }, { "slug": "SEVDESK_GET_SEV_CLIENT_CONFIG", "name": "Get SevClient Config", "description": "Retrieves the sevClient configuration settings from sevDesk. This endpoint returns comprehensive configuration information including taxation settings, decimal precision for prices/quantities, payment integrations (PayPal, Stripe), document printing preferences, and various system settings. Use this to understand the current configuration state of the sevDesk client. No parameters are required, but you can optionally use the 'embed' parameter to get additional embedded information like full sevClient details." }, { "slug": "SEVDESK_GET_TAG_BY_ID", "name": "Get Tag By ID", "description": "Tool to retrieve details of a specific tag by ID. Use when you have a tag's ID and need its detailed information." }, { "slug": "SEVDESK_GET_TAG_RELATIONS", "name": "Get Tag Relations", "description": "Tool to retrieve tag relations from sevDesk. Use when you need to fetch associations between tags and other objects like contacts, invoices, or orders." }, { "slug": "SEVDESK_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve tags from sevdesk. Use when you need to fetch tags for categorization or filtering purposes." }, { "slug": "SEVDESK_GET_TAX_RULES", "name": "Get Tax Rules", "description": "Retrieves tax rules from SevDesk. Tax rules define the tax treatment for different types of transactions (e.g., domestic sales, EU sales, reverse charge, exports). Each rule includes a name, description, code, and country information. Use this action to: - Get available tax rules for invoice line items - Understand tax treatment codes (e.g., 'USTPFL_UMS_EINN', 'AUSFUHREN', 'INNERGEM_LIEF') - Determine applicable tax rules based on country and transaction type - Support pagination with limit/offset for large result sets" }, { "slug": "SEVDESK_GET_TOOLS_BOOKKEEPING_SYSTEM_VERSION", "name": "Get Bookkeeping System Version", "description": "Tool to retrieve the bookkeeping system version from sevDesk. Use when you need to check which bookkeeping system version (1.0 or 2.0) is currently configured for the sevDesk client. This is useful for determining which features and endpoints are available based on the accounting system in use." }, { "slug": "SEVDESK_RENDER_INVOICE", "name": "Render Invoice", "description": "Tool to render the PDF document of an invoice by its ID. Use when you need to generate or regenerate the PDF representation of an invoice." }, { "slug": "SEVDESK_RESET_CREDIT_NOTE_TO_OPEN", "name": "Reset Credit Note To Open", "description": "Tool to reset a credit note status to open. Use when you need to revert a credit note from a higher status back to open status." }, { "slug": "SEVDESK_SAVE_INVOICE", "name": "Save Invoice", "description": "Tool to create a new invoice in SevDesk using the Factory endpoint. Use when you need to create an invoice for a customer with line items, tax information, and optional discounts. This is the main endpoint for invoice creation in SevDesk API." }, { "slug": "SEVDESK_SEND_CREDIT_NOTE_BY", "name": "Send Credit Note By", "description": "Tool to mark a credit note as sent by updating its send status and type. Use when you need to record that a credit note has been sent to the customer via print, postal, mail, or PDF download. Set sendDraft to false to actually mark it as sent." }, { "slug": "SEVDESK_SEND_CREDIT_NOTE_BY_WITH_RENDER", "name": "Send Credit Note By Printing", "description": "Tool to send a credit note by printing and render it. Use when you need to print a credit note and get render information including document ID and page count." }, { "slug": "SEVDESK_SEND_INVOICE_BY", "name": "Send Invoice By", "description": "Tool to mark an invoice as sent by specifying how it was sent to the customer. Use when you need to update an invoice's send status after it has been delivered via print, postal mail, email, or PDF download." }, { "slug": "SEVDESK_SEND_ORDER_BY", "name": "Mark Order as Sent", "description": "Tool to mark an order as sent in sevDesk. Use when you need to update an order's send status after delivering it to the customer. Specify the send type (print, postal, mail, or PDF download) and whether to create a draft." }, { "slug": "SEVDESK_UPDATE_ACCOUNTING_CONTACT_BY_ID", "name": "Update Accounting Contact", "description": "Tool to update an existing accounting contact in SevDesk. Use when you need to modify creditor or debitor numbers for a contact." }, { "slug": "SEVDESK_UPDATE_CHECK_ACCOUNT", "name": "Update Check Account", "description": "Updates an existing check account (bank account) in sevDesk by ID. Use this tool to modify bank account details such as bank name, IBAN, BIC, account holder, account number, or status flags (active/default). All fields except 'id' are optional - only provide the fields you want to update. Returns the complete updated check account object. Common use cases: - Update banking information (IBAN, BIC, bank name) - Change account holder details - Set account as active/inactive or default/non-default - Add or modify account description" }, { "slug": "SEVDESK_UPDATE_CHECK_ACCOUNT_TRANSACTION_BY_ID", "name": "Update Check Account Transaction By ID", "description": "Tool to update an existing check account transaction in sevDesk. Use when you need to modify transaction details such as amount, payment purpose, payee/payer name, or status. Only provide the fields you want to update - all fields except checkAccountTransactionId are optional. Common use cases include correcting transaction amounts, updating payment descriptions, or changing transaction status. Returns the complete updated transaction object." }, { "slug": "SEVDESK_UPDATE_COMMUNICATION_WAY_BY_ID", "name": "Update Communication Way By ID", "description": "Tool to update an existing communication way by ID in sevDesk. Use when you need to modify contact information such as email addresses, phone numbers, or websites. Only provide the fields you want to update." }, { "slug": "SEVDESK_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact's details. Use after confirming the contact ID. Example: \"Update contact with ID 123e4567-e89b-12d3-a456-426614174000\"." }, { "slug": "SEVDESK_UPDATE_CONTACT_ADDRESS_BY_ID", "name": "Update Contact Address By ID", "description": "Tool to update an existing contact address by its unique identifier. Use when you need to modify street, city, zip code, name, or other address details of an existing contact address." }, { "slug": "SEVDESK_UPDATE_CONTACT_CUSTOM_FIELD_BY_ID", "name": "Update Contact Custom Field", "description": "Tool to update a contact custom field in SevDesk. Use when you need to modify the value of an existing custom field for a contact." }, { "slug": "SEVDESK_UPDATE_CONTACT_CUSTOM_FIELD_SETTING_BY_ID", "name": "Update Contact Custom Field Setting", "description": "Tool to update an existing contact custom field setting in SevDesk. Use when you need to modify the name or description of a custom field configuration for contacts." }, { "slug": "SEVDESK_UPDATE_INVOICE_PARAMETER", "name": "Update Invoice Parameter", "description": "Tool to update an invoice parameter such as template, language, letterpaper, or PayPal settings. Use when you need to change the layout or configuration of an existing invoice." }, { "slug": "SEVDESK_UPDATE_ORDER_BY_ID", "name": "Update Order By ID", "description": "Tool to update an existing order in sevDesk by ID. Use when you need to modify order details like header, customer notes, or text fields." }, { "slug": "SEVDESK_UPDATE_ORDER_TEMPLATE", "name": "Update Order Template", "description": "Tool to update an order parameter such as template, language, letterpaper, or PayPal settings. Use when you need to change the layout or configuration of an existing order." }, { "slug": "SEVDESK_UPDATE_PART_BY_ID", "name": "Update Part By ID", "description": "Tool to update an existing part (product/service) in sevDesk. Use when you need to modify part details like name, stock, price, tax rate, or status." }, { "slug": "SEVDESK_UPDATE_SEV_CLIENT_EXPORT_CONFIG", "name": "Update SevClient Export Config", "description": "Tool to update the export configuration for a SevClient in sevDesk. Use when you need to configure export settings including accountant number, accountant client number, and accounting year begin timestamp. This endpoint requires the SevClient ID and all three configuration parameters." }, { "slug": "SEVDESK_UPDATE_TAG_BY_ID", "name": "Update Tag By ID", "description": "Tool to update a tag's name in sevDesk by its ID. Use when you need to rename or modify an existing tag." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sevdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "sevDesk API Token", "type": "string", "description": "The API token used for authenticating requests to the sevDesk API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sharepoint_graph", "name": "SharePoint Graph", "logo": "https://logos.composio.dev/api/share_point", "description": "SharePoint Graph uses Microsoft Graph to access SharePoint sites, lists, list items, document libraries, files, folders, and sharing capabilities.", "category": "documents", "authSchemes": [ "OAUTH2", "S2S_OAUTH2" ], "toolCount": 162, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SHAREPOINT_GRAPH_ADD_CONTENT_TYPE_COLUMN", "name": "Add Column To SharePoint Content Type", "description": "Add a column (column link) to a SharePoint site or list content type." }, { "slug": "SHAREPOINT_GRAPH_ADD_CONTENT_TYPE_COPY_FROM_HUB", "name": "Add Content Type Copy From Hub", "description": "Add a copy of a content type from the tenant content type hub to a SharePoint site or list." }, { "slug": "SHAREPOINT_GRAPH_ADD_CONTENT_TYPE_COPY_TO_LIST", "name": "Add Content Type Copy To SharePoint List", "description": "Copy a site content type into a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_ADD_WORKBOOK_CHART", "name": "Add SharePoint Workbook Chart", "description": "Add a chart to a worksheet in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_ADD_WORKBOOK_NAME", "name": "Add SharePoint Workbook Named Item", "description": "Add a named item at the workbook scope in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_ADD_WORKBOOK_TABLE", "name": "Add SharePoint Workbook Table", "description": "Add a table to an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_ADD_WORKBOOK_TABLE_ROW", "name": "Add SharePoint Workbook Table Row", "description": "Add rows to an Excel workbook table stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_ADD_WORKBOOK_WORKSHEET", "name": "Add SharePoint Workbook Worksheet", "description": "Add a worksheet to an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_APPLY_WORKBOOK_TABLE_COLUMN_FILTER", "name": "Apply SharePoint Workbook Table Column Filter", "description": "Apply a filter to a column of an Excel workbook table stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_ASSIGN_SENSITIVITY_LABEL", "name": "Assign Sensitivity Label To SharePoint Drive Item", "description": "Assign a Microsoft Purview sensitivity label to a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_CHECKIN_DRIVE_ITEM", "name": "Check In SharePoint Drive Item", "description": "Check in a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_CHECKOUT_DRIVE_ITEM", "name": "Checkout SharePoint Drive Item", "description": "Checkout SharePoint Drive Item." }, { "slug": "SHAREPOINT_GRAPH_CLOSE_WORKBOOK_SESSION", "name": "Close SharePoint Workbook Session", "description": "Close an Excel workbook session." }, { "slug": "SHAREPOINT_GRAPH_COPY_DRIVE_ITEM", "name": "Copy SharePoint Drive Item", "description": "Start an asynchronous copy of a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_CREATE_FOLDER", "name": "Create SharePoint Folder", "description": "Create a folder inside a SharePoint drive folder." }, { "slug": "SHAREPOINT_GRAPH_CREATE_LIST", "name": "Create SharePoint List", "description": "Create a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_CREATE_LIST_COLUMN", "name": "Create SharePoint List Column", "description": "Create a SharePoint list column definition." }, { "slug": "SHAREPOINT_GRAPH_CREATE_LIST_ITEM", "name": "Create SharePoint List Item", "description": "Create a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SHARING_LINK", "name": "Create SharePoint Sharing Link", "description": "Create a sharing link for a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SITE_COLUMN", "name": "Create SharePoint Site Column", "description": "Create a SharePoint site column definition." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SITE_CONTENT_TYPE", "name": "Create SharePoint Site Content Type", "description": "Create a SharePoint site content type." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SITE_PAGE", "name": "Create SharePoint Site Page", "description": "Create a modern SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SITE_PERMISSION", "name": "Create SharePoint Site Permission", "description": "Grant an application (Sites.Selected) permission on a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_CREATE_SUBSCRIPTION", "name": "Create Microsoft Graph Subscription", "description": "Create a Microsoft Graph webhook subscription." }, { "slug": "SHAREPOINT_GRAPH_CREATE_UPLOAD_SESSION", "name": "Create SharePoint Upload Session", "description": "Create an upload session for large SharePoint file uploads." }, { "slug": "SHAREPOINT_GRAPH_CREATE_WORKBOOK_SESSION", "name": "Create SharePoint Workbook Session", "description": "Create an Excel workbook session for a workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM", "name": "Delete SharePoint Drive Item", "description": "Delete a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM_PERMISSION", "name": "Delete SharePoint Drive Item Permission", "description": "Delete a sharing permission from a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_DELETE_DRIVE_ITEM_VERSION", "name": "Delete SharePoint Drive Item Version", "description": "Delete a SharePoint drive item version." }, { "slug": "SHAREPOINT_GRAPH_DELETE_LIST", "name": "Delete SharePoint List", "description": "Delete a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_DELETE_LIST_COLUMN", "name": "Delete SharePoint List Column", "description": "Delete a SharePoint list column definition." }, { "slug": "SHAREPOINT_GRAPH_DELETE_LIST_CONTENT_TYPE", "name": "Delete SharePoint List Content Type", "description": "Delete a SharePoint list content type." }, { "slug": "SHAREPOINT_GRAPH_DELETE_LIST_ITEM", "name": "Delete SharePoint List Item", "description": "Delete a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SHARE_PERMISSION", "name": "Delete SharePoint Share Permission", "description": "Revoke the sharing-link permission for a shared SharePoint or OneDrive item." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SITE_COLUMN", "name": "Delete SharePoint Site Column", "description": "Delete a SharePoint site column definition." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SITE_CONTENT_TYPE", "name": "Delete SharePoint Site Content Type", "description": "Delete a SharePoint site content type." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SITE_PAGE", "name": "Delete SharePoint Site Page", "description": "Delete a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SITE_PERMISSION", "name": "Delete SharePoint Site Permission", "description": "Revoke an application (Sites.Selected) permission from a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_DELETE_SUBSCRIPTION", "name": "Delete Microsoft Graph Subscription", "description": "Delete a Microsoft Graph webhook subscription." }, { "slug": "SHAREPOINT_GRAPH_DELETE_WORKBOOK_TABLE", "name": "Delete SharePoint Workbook Table", "description": "Delete a table from an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_DELETE_WORKBOOK_WORKSHEET", "name": "Delete SharePoint Workbook Worksheet", "description": "Delete a worksheet in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_DISCARD_CHECKOUT_DRIVE_ITEM", "name": "Discard SharePoint Drive Item Checkout", "description": "Discard SharePoint Drive Item Checkout." }, { "slug": "SHAREPOINT_GRAPH_DOWNLOAD_DRIVE_ITEM", "name": "Download SharePoint Drive Item", "description": "Download a SharePoint drive item. The file is streamed to the file backend and the response returns a downloadable file, so large files are handled without exhausting memory." }, { "slug": "SHAREPOINT_GRAPH_DOWNLOAD_DRIVE_ITEM_BY_PATH", "name": "Download SharePoint Drive Item By Path", "description": "Download a SharePoint drive item by path. The file is streamed to the file backend and the response returns a downloadable file, so large files are handled without exhausting memory." }, { "slug": "SHAREPOINT_GRAPH_DOWNLOAD_DRIVE_ITEM_VERSION", "name": "Download SharePoint Drive Item Version", "description": "Download the binary content of an earlier (non-current) version of a file in a SharePoint document library. The version's bytes are streamed to the file backend and returned as a downloadable file, so large files are handled without exhausting memory. To download the current version's content use the download drive item action; to read a version's metadata (without its content) use the get drive item version action." }, { "slug": "SHAREPOINT_GRAPH_EXECUTE_BATCH", "name": "Execute Microsoft Graph Batch", "description": "Execute a Microsoft Graph JSON batch request." }, { "slug": "SHAREPOINT_GRAPH_EXTRACT_SENSITIVITY_LABELS", "name": "Extract SharePoint Drive Item Sensitivity Labels", "description": "Extract the Microsoft Purview sensitivity labels currently applied to a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_FOLLOW_SITE", "name": "Follow SharePoint Sites", "description": "Follow one or more SharePoint sites for a user." }, { "slug": "SHAREPOINT_GRAPH_GET_ALL_SITES", "name": "Get All SharePoint Sites", "description": "Enumerate all SharePoint sites across geographies in the organization." }, { "slug": "SHAREPOINT_GRAPH_GET_CONTENT_TYPE_COLUMN", "name": "Get SharePoint Content Type Column", "description": "Get a single column of a SharePoint site or list content type." }, { "slug": "SHAREPOINT_GRAPH_GET_CONTENT_TYPE_IS_PUBLISHED", "name": "Get SharePoint Content Type Published Status", "description": "Check whether a SharePoint content type is published to the content type hub." }, { "slug": "SHAREPOINT_GRAPH_GET_CURRENT_USER", "name": "Get Current Microsoft Graph User", "description": "Get the current Microsoft Graph user for delegated SharePoint Graph connections." }, { "slug": "SHAREPOINT_GRAPH_GET_DEFAULT_DRIVE", "name": "Get SharePoint Default Drive", "description": "Get the default document library drive for a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_GET_DOCUMENT_COMMENTS", "name": "Get SharePoint Document Comments", "description": "Extract comments from a SharePoint Word .docx drive item." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE", "name": "Get SharePoint Drive", "description": "Get a SharePoint document library drive by drive ID." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE_ITEM", "name": "Get SharePoint Drive Item", "description": "Get a SharePoint drive item by ID." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE_ITEM_ANALYTICS", "name": "Get SharePoint Drive Item Analytics", "description": "Get item analytics for a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE_ITEM_BY_PATH", "name": "Get SharePoint Drive Item By Path", "description": "Get a SharePoint drive item by path." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE_ITEM_PERMISSION", "name": "Get SharePoint Drive Item Permission", "description": "Get a single sharing permission on a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_GET_DRIVE_ITEM_VERSION", "name": "Get SharePoint Drive Item Version", "description": "Get a specific SharePoint drive item version." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST", "name": "Get SharePoint List", "description": "Get a SharePoint list by ID or display name." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST_COLUMN", "name": "Get SharePoint List Column", "description": "Get a SharePoint list column definition." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST_CONTENT_TYPE", "name": "Get SharePoint List Content Type", "description": "Get a SharePoint list content type." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST_ITEM", "name": "Get SharePoint List Item", "description": "Get a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST_ITEM_FIELDS", "name": "Get SharePoint List Item Fields", "description": "Get field values for a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_GET_LIST_ITEM_VERSION", "name": "Get SharePoint List Item Version", "description": "Get a specific SharePoint list item version." }, { "slug": "SHAREPOINT_GRAPH_GET_MY_SITE", "name": "Get Signed-In User SharePoint My Site", "description": "Resolve the signed-in user's SharePoint hostname from OneDrive mySite." }, { "slug": "SHAREPOINT_GRAPH_GET_ROOT_SITE", "name": "Get Root SharePoint Site", "description": "Get the tenant's root SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_GET_SENSITIVITY_LABEL", "name": "Get Sensitivity Label", "description": "Get a Microsoft Purview sensitivity label by its ID. Available in the global Microsoft Graph service only (not US Government or China national clouds)." }, { "slug": "SHAREPOINT_GRAPH_GET_SHARES", "name": "Get SharePoint Shared Item", "description": "Access a shared SharePoint or OneDrive item by share ID or encoded sharing URL." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE", "name": "Get SharePoint Site", "description": "Get a SharePoint site by Microsoft Graph site ID." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE_COLUMN", "name": "Get SharePoint Site Column", "description": "Get a SharePoint site column definition." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE_CONTENT_TYPE", "name": "Get SharePoint Site Content Type", "description": "Get a SharePoint site content type." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE_PAGE", "name": "Get SharePoint Site Page", "description": "Get a SharePoint site page as a Microsoft Graph sitePage resource." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE_PAGE_WEB_PART", "name": "Get SharePoint Site Page Web Part", "description": "Get a single web part on a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_GET_SITE_PERMISSION", "name": "Get SharePoint Site Permission", "description": "Get a single application (Sites.Selected) permission on a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_GET_SPECIAL_FOLDER", "name": "Get SharePoint Special Folder", "description": "Get a SharePoint special folder by name." }, { "slug": "SHAREPOINT_GRAPH_GET_SUBSCRIPTION", "name": "Get Microsoft Graph Subscription", "description": "Get a Microsoft Graph webhook subscription." }, { "slug": "SHAREPOINT_GRAPH_GET_WORKBOOK_CHART_IMAGE", "name": "Get SharePoint Workbook Chart Image", "description": "Render an Excel worksheet chart stored in SharePoint as a base64-encoded image." }, { "slug": "SHAREPOINT_GRAPH_GET_WORKBOOK_NAME", "name": "Get SharePoint Workbook Named Item", "description": "Get a named item defined at the workbook scope in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_GET_WORKBOOK_WORKSHEET", "name": "Get SharePoint Workbook Worksheet", "description": "Get an Excel worksheet in a SharePoint workbook." }, { "slug": "SHAREPOINT_GRAPH_GRANT_SHARE_PERMISSION", "name": "Grant SharePoint Share Permission", "description": "Grant users access to a shared SharePoint or OneDrive link via an encoded sharing URL." }, { "slug": "SHAREPOINT_GRAPH_INVITE_DRIVE_ITEM", "name": "Invite Users To SharePoint Drive Item", "description": "Invite recipients to a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_CONTENT_TYPE_COLUMNS", "name": "List SharePoint Content Type Columns", "description": "List the columns of a SharePoint site or list content type." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_DELTA", "name": "List SharePoint Drive Delta", "description": "Track changes in a SharePoint drive using Microsoft Graph delta." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_CHILDREN", "name": "List SharePoint Drive Item Children", "description": "List children under a folder drive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_CHILDREN_BY_PATH", "name": "List SharePoint Drive Item Children By Path", "description": "List the children of a SharePoint folder addressed by its path under the drive root." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_PERMISSIONS", "name": "List SharePoint Drive Item Permissions", "description": "List sharing permissions on a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_THUMBNAILS", "name": "List SharePoint Drive Item Thumbnails", "description": "Retrieve the available thumbnail sets (small, medium, large) for a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ITEM_VERSIONS", "name": "List SharePoint Drive Item Versions", "description": "List versions for a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_DRIVE_ROOT_CHILDREN", "name": "List SharePoint Drive Root Children", "description": "List children in the root of a SharePoint drive." }, { "slug": "SHAREPOINT_GRAPH_LIST_FOLLOWED_SITES", "name": "List Followed SharePoint Sites", "description": "List the SharePoint sites followed by the signed-in user." }, { "slug": "SHAREPOINT_GRAPH_LIST_LIST_COLUMNS", "name": "List SharePoint List Columns", "description": "List column definitions for a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_LIST_LIST_CONTENT_TYPES", "name": "List SharePoint List Content Types", "description": "List content types for a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_LIST_LIST_ITEM_DELTA", "name": "List SharePoint List Item Delta", "description": "Track changes to SharePoint list items using Microsoft Graph delta." }, { "slug": "SHAREPOINT_GRAPH_LIST_LIST_ITEMS", "name": "List SharePoint List Items", "description": "List items in a SharePoint list." }, { "slug": "SHAREPOINT_GRAPH_LIST_LIST_ITEM_VERSIONS", "name": "List SharePoint List Item Versions", "description": "List versions for a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_LIST_LISTS", "name": "List SharePoint Lists", "description": "List SharePoint lists in a site." }, { "slug": "SHAREPOINT_GRAPH_LIST_RECENT_DRIVE_ITEMS", "name": "List Recent Drive Items", "description": "List recent drive items for the delegated (signed-in) user. Targets the signed-in user's OneDrive (/me/drive), NOT a SharePoint document library. DEPRECATED by Microsoft: this recent API operates in a degraded state until November 2026, after which it stops returning data; prefer change-tracking (delta) or search for durable scenarios. Application permissions are not supported." }, { "slug": "SHAREPOINT_GRAPH_LIST_SENSITIVITY_LABELS", "name": "List Sensitivity Labels", "description": "List the Microsoft Purview sensitivity labels available to the tenant." }, { "slug": "SHAREPOINT_GRAPH_LIST_SHARE_PERMISSIONS", "name": "List SharePoint Share Permission", "description": "Get the sharing-link permission details for a shared SharePoint or OneDrive item." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_COLUMNS", "name": "List SharePoint Site Columns", "description": "List column definitions for a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_CONTENT_TYPES", "name": "List SharePoint Site Content Types", "description": "List content types for a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_DELTA", "name": "List SharePoint Site Changes", "description": "Get newly created, updated, or deleted SharePoint sites using delta tracking." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_DRIVES", "name": "List SharePoint Site Drives", "description": "List document library drives for a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_PAGES", "name": "List SharePoint Site Pages", "description": "List modern SharePoint site pages as Microsoft Graph sitePage resources." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_PAGE_WEB_PARTS", "name": "List SharePoint Site Page Web Parts", "description": "List web parts on a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITE_PERMISSIONS", "name": "List SharePoint Site Permissions", "description": "List the application (Sites.Selected) permissions granted on a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_LIST_SITES", "name": "List SharePoint Sites", "description": "Search for SharePoint sites available through Microsoft Graph." }, { "slug": "SHAREPOINT_GRAPH_LIST_SUBSCRIPTIONS", "name": "List Microsoft Graph Subscriptions", "description": "List Microsoft Graph webhook subscriptions." }, { "slug": "SHAREPOINT_GRAPH_LIST_SUBSITES", "name": "List SharePoint Subsites", "description": "List subsites for a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_CHARTS", "name": "List SharePoint Workbook Charts", "description": "List charts on a worksheet in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_NAMES", "name": "List SharePoint Workbook Named Items", "description": "List named items defined at the workbook scope in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_TABLE_COLUMNS", "name": "List SharePoint Workbook Table Columns", "description": "List columns in an Excel workbook table stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_TABLE_ROWS", "name": "List SharePoint Workbook Table Rows", "description": "List rows in an Excel workbook table stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_TABLES", "name": "List SharePoint Workbook Tables", "description": "List tables in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_LIST_WORKBOOK_WORKSHEETS", "name": "List SharePoint Workbook Worksheets", "description": "List worksheets in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_MOVE_DRIVE_ITEM", "name": "Move SharePoint Drive Item", "description": "Move a SharePoint drive item by updating its parentReference." }, { "slug": "SHAREPOINT_GRAPH_PREVIEW_DRIVE_ITEM", "name": "Preview SharePoint Drive Item", "description": "Get a short-lived embeddable preview URL for a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_PUBLISH_CONTENT_TYPE", "name": "Publish SharePoint Content Type", "description": "Publish a SharePoint content type from the content type hub site." }, { "slug": "SHAREPOINT_GRAPH_PUBLISH_SITE_PAGE", "name": "Publish SharePoint Site Page", "description": "Publish a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_REAUTHORIZE_SUBSCRIPTION", "name": "Reauthorize Microsoft Graph Subscription", "description": "Reauthorize a Microsoft Graph webhook subscription." }, { "slug": "SHAREPOINT_GRAPH_RESOLVE_SITE_BY_PATH", "name": "Resolve SharePoint Site By Path", "description": "Resolve a SharePoint site from its hostname and server-relative path." }, { "slug": "SHAREPOINT_GRAPH_RESTORE_DRIVE_ITEM_VERSION", "name": "Restore SharePoint Drive Item Version", "description": "Restore a previous version of a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_RESTORE_LIST_ITEM_VERSION", "name": "Restore SharePoint List Item Version", "description": "Restore a previous version of a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_SEARCH_DRIVE_ITEMS", "name": "Search SharePoint Drive Items", "description": "Search items in a SharePoint drive." }, { "slug": "SHAREPOINT_GRAPH_SEARCH_QUERY", "name": "Run Microsoft Graph Search Query", "description": "Run Microsoft Graph search across SharePoint-supported entities." }, { "slug": "SHAREPOINT_GRAPH_UNFOLLOW_SITE", "name": "Unfollow SharePoint Sites", "description": "Unfollow one or more SharePoint sites for a user." }, { "slug": "SHAREPOINT_GRAPH_UNPUBLISH_CONTENT_TYPE", "name": "Unpublish SharePoint Content Type", "description": "Unpublish a SharePoint content type from the content type hub site." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_DRIVE_ITEM", "name": "Update SharePoint Drive Item", "description": "Update drive item metadata such as name or description." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_DRIVE_ITEM_PERMISSION", "name": "Update SharePoint Drive Item Permission", "description": "Update the roles of a direct sharing permission on a SharePoint drive item." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_LIST", "name": "Update SharePoint List", "description": "Update SharePoint list metadata." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_LIST_COLUMN", "name": "Update SharePoint List Column", "description": "Update a SharePoint list column definition." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_LIST_CONTENT_TYPE", "name": "Update SharePoint List Content Type", "description": "Update a SharePoint list content type." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_LIST_ITEM", "name": "Update SharePoint List Item", "description": "Update a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_LIST_ITEM_FIELDS", "name": "Update SharePoint List Item Fields", "description": "Update field values for a SharePoint list item." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE", "name": "Update SharePoint Site", "description": "Update editable SharePoint site metadata (description)." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE_COLUMN", "name": "Update SharePoint Site Column", "description": "Update a SharePoint site column definition." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE_CONTENT_TYPE", "name": "Update SharePoint Site Content Type", "description": "Update a SharePoint site content type." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE_PAGE", "name": "Update SharePoint Site Page", "description": "Update editable metadata and layout for a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE_PAGE_WEB_PART", "name": "Update SharePoint Site Page Web Part", "description": "Update the properties of a web part on a SharePoint site page." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SITE_PERMISSION", "name": "Update SharePoint Site Permission", "description": "Update the roles of an application (Sites.Selected) permission on a SharePoint site." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_SUBSCRIPTION", "name": "Update Microsoft Graph Subscription", "description": "Update a Microsoft Graph webhook subscription." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_WORKBOOK_TABLE", "name": "Update SharePoint Workbook Table", "description": "Update properties of a table in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_UPDATE_WORKBOOK_WORKSHEET", "name": "Update SharePoint Workbook Worksheet", "description": "Update worksheet metadata in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_UPLOAD_BYTES_TO_SESSION", "name": "Upload Bytes To SharePoint Upload Session", "description": "Upload one byte range (chunk) of a file to an existing SharePoint upload session, or get the session status or cancel it." }, { "slug": "SHAREPOINT_GRAPH_UPLOAD_FILE", "name": "Upload SharePoint File", "description": "Upload a file of any size to SharePoint via a chunked Microsoft Graph upload session, creating the destination folder path if needed." }, { "slug": "SHAREPOINT_GRAPH_UPLOAD_SMALL_FILE", "name": "Upload Small SharePoint File", "description": "DEPRECATED: Use SHAREPOINT_GRAPH_UPLOAD_FILE instead. Upload a small file to SharePoint using Microsoft Graph PUT content." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_CALCULATE", "name": "Calculate SharePoint Workbook", "description": "Recalculate an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_CLEAR_RANGE", "name": "Clear SharePoint Workbook Range", "description": "Clear the contents and/or formatting of a range in a SharePoint Excel workbook." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_DELETE_RANGE", "name": "Delete SharePoint Workbook Range", "description": "Delete a range from a SharePoint Excel workbook and shift the remaining cells." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_FUNCTION", "name": "Run SharePoint Workbook Function", "description": "Run an Excel workbook function for a workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_INSERT_RANGE", "name": "Insert SharePoint Workbook Range", "description": "Insert a cell or range in an Excel workbook stored in SharePoint, shifting existing cells." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_MERGE_RANGE", "name": "Merge SharePoint Workbook Range", "description": "Merge the cells of a range in a SharePoint Excel workbook into a single cell." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_READ_RANGE", "name": "Read SharePoint Workbook Range", "description": "Read a cell or range from an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_SORT_RANGE", "name": "Sort SharePoint Workbook Range", "description": "Sort a cell range in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_UNMERGE_RANGE", "name": "Unmerge SharePoint Workbook Range", "description": "Unmerge previously merged cells of a range in a SharePoint Excel workbook." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_UPDATE_RANGE", "name": "Update SharePoint Workbook Range", "description": "Update a cell or range in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_UPDATE_RANGE_FILL", "name": "Update SharePoint Workbook Range Fill", "description": "Update the fill of a cell or range in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_UPDATE_RANGE_FONT", "name": "Update SharePoint Workbook Range Font", "description": "Update the font of a cell or range in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_UPDATE_RANGE_FORMAT", "name": "Update SharePoint Workbook Range Format", "description": "Update the format of a cell or range in an Excel workbook stored in SharePoint." }, { "slug": "SHAREPOINT_GRAPH_WORKBOOK_USED_RANGE", "name": "Get SharePoint Workbook Used Range", "description": "Get the used range of an Excel worksheet stored in SharePoint." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "sharepoint_graph_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "Sites.ReadWrite.All,Sites.Manage.All,Sites.FullControl.All,Files.ReadWrite.All,SensitivityLabels.Read.All,offline_access,User.Read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "sharepoint_graph_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Application (client) ID from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Overview.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Client secret value from your Microsoft Entra app registration. Found in Azure Portal > App registrations > your app > Certificates & secrets > Client secrets.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Tenant ID", "type": "string", "description": "Microsoft Entra tenant ID in GUID format, used in the client-credentials token URL.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "shipday", "name": "Shipday", "logo": "https://logos.composio.dev/api/shipday", "description": "Making Local Deliveries Easy Globally - Powering Local E-commerce", "category": "ecommerce", "authSchemes": [ "BASIC", "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHIPDAY_ADD_A_CARRIER", "name": "Add a Carrier", "description": "Tool to add a new carrier/driver to the Shipday system with credentials. Use when you need to create a new carrier account with name, email, and phone number." }, { "slug": "SHIPDAY_CHECK_ON_DEMAND_AVAILABILITY", "name": "Check On-Demand Delivery Availability", "description": "Tool to check on-demand delivery availability from third-party service providers. Use when you need to verify service availability, pricing estimates, and delivery times for a route without creating an order." }, { "slug": "SHIPDAY_EDIT_DELIVERY_ORDER", "name": "Edit Delivery Order", "description": "Tool to edit an existing delivery order in Shipday. Use when you need to update order details such as customer information, restaurant details, order items, delivery fees, or tips." }, { "slug": "SHIPDAY_GET_ON_DEMAND_ESTIMATE", "name": "Get On-Demand Delivery Estimate", "description": "Tool to get on-demand delivery estimates from third-party service providers for a specific order. Use when you need to retrieve pricing, pickup/delivery times, and durations for a delivery order." }, { "slug": "SHIPDAY_GET_ON_DEMAND_SERVICES", "name": "Get On-Demand Delivery Services", "description": "Tool to retrieve available third-party on-demand delivery service providers. Use when you need to check which delivery services are available or enabled for the account." }, { "slug": "SHIPDAY_INSERT_ORDER", "name": "Insert Order", "description": "Tool to create a new delivery order in Shipday. Use when you need to insert a delivery order with customer details, restaurant information, order items, and delivery schedule." }, { "slug": "SHIPDAY_ORDER_READY_TO_PICKUP", "name": "Order Ready to Pickup", "description": "Tool to mark a delivery order as ready for pickup. Use when you need to notify Shipday that an order is prepared and ready for driver pickup at a specific time." }, { "slug": "SHIPDAY_QUERY_DELIVERY_ORDERS", "name": "Query Delivery Orders", "description": "Tool to query delivery orders with time-based filters and cursor pagination. Use when you need to retrieve multiple orders within a specific time range or paginate through order results." }, { "slug": "SHIPDAY_RETRIEVE_ACTIVE_ORDERS", "name": "Retrieve Active Orders", "description": "Tool to retrieve all active delivery orders from Shipday system. Use when you need to get currently active orders (excludes ALREADY_DELIVERED, FAILED_DELIVERY, and INCOMPLETE orders). Returns at most 100 orders at a time." }, { "slug": "SHIPDAY_RETRIEVE_CARRIERS", "name": "Retrieve Carriers", "description": "Tool to retrieve all carriers/drivers with profile and status details. Use when you need to get a list of all carriers in the system." }, { "slug": "SHIPDAY_RETRIEVE_ORDER_DETAILS", "name": "Retrieve Order Details", "description": "Tool to retrieve detailed information for a specific delivery order by order number. Use when you need to get comprehensive order details including customer info, restaurant info, carrier assignment, cost breakdown, order items, status, and tracking information." }, { "slug": "SHIPDAY_UNASSIGN_ORDER_FROM_DRIVER", "name": "Unassign Order from Driver", "description": "Tool to remove driver assignment from a delivery order. Use when you need to unassign a driver from an order to make it available for reassignment to a different driver." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "shipday_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the Dispatch Dashboard under Integrations", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "shipday_partner_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Partner API Key", "type": "string", "description": "Partner-level API key for accessing partner endpoints (typically 64 characters long)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shipengine", "name": "Shipengine", "logo": "https://logos.composio.dev/api/shipengine", "description": "ShipEngine is a REST API that simplifies shipping processes by integrating with multiple carriers, allowing users to manage shipping labels, track packages, and validate addresses efficiently.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 66, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHIPENGINE_ADD_TAG_TO_SHIPMENT", "name": "Add Tag to Shipment", "description": "Tool to add a tag to a shipment for organization and filtering. Use when you need to categorize or label a shipment." }, { "slug": "SHIPENGINE_ADD_TO_BATCH", "name": "Add to Batch", "description": "Tool to add shipments or rate IDs to an existing batch. Use when you need to add items to a batch after the batch has been created. At least one of shipment_ids or rate_ids must be provided." }, { "slug": "SHIPENGINE_CANCEL_SHIPMENT", "name": "Cancel Shipment", "description": "Tool to cancel a shipment by ID. Use when you need to cancel a shipment that has been created but not yet shipped. Note that once a shipment is in transit, it may not be cancellable depending on carrier policies." }, { "slug": "SHIPENGINE_CONNECT_LTL_CARRIER", "name": "Connect LTL Carrier", "description": "Tool to connect an LTL carrier account to ShipEngine. Use when you need to add an LTL carrier connection for freight shipping. For sandbox testing, use carrier codes TEST, WARN, or FAIL with empty credentials {}." }, { "slug": "SHIPENGINE_CONNECT_SHIPSURANCE", "name": "Connect Shipsurance Account", "description": "Tool to connect a Shipsurance insurance account to ShipEngine. Use when you need to integrate a Shipsurance policy for insurance coverage on shipments." }, { "slug": "SHIPENGINE_CREATE_ACCOUNT_IMAGE", "name": "Create Account Image", "description": "Tool to create a new account image in ShipEngine. Use when uploading a logo or image for use on shipping labels." }, { "slug": "SHIPENGINE_CREATE_PACKAGE_TYPE", "name": "Create Package Type", "description": "Tool to create a custom package type definition in ShipEngine. Use when defining new package types with specific codes and optional dimensions." }, { "slug": "SHIPENGINE_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in ShipEngine. Use after determining the desired tag name for shipments." }, { "slug": "SHIPENGINE_CREATE_TAG2", "name": "Create Tag 2", "description": "Tool to create a new tag for organizing shipments. Use when you need to create a tag by specifying the tag name in the URL path." }, { "slug": "SHIPENGINE_CREATE_WAREHOUSE", "name": "Create Warehouse", "description": "Tool to create a new warehouse. Use when adding a new inventory location after verifying its full address details." }, { "slug": "SHIPENGINE_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a ShipEngine webhook. Use when you need to register a webhook for specific events. Use after confirming your event-handling endpoint is ready." }, { "slug": "SHIPENGINE_DELETE_ACCOUNT_IMAGE_BY_ID", "name": "Delete Account Image by ID", "description": "Tool to delete a ShipEngine account image by its ID. Use when you need to remove an image from account settings. The image will be permanently removed from the account." }, { "slug": "SHIPENGINE_DELETE_BATCH", "name": "Delete Batch", "description": "Tool to delete a batch by ID. Use when you need to remove a batch from ShipEngine. Note that this operation is destructive and cannot be undone." }, { "slug": "SHIPENGINE_DELETE_PACKAGE", "name": "Delete Package", "description": "Tool to delete a custom package type by ID. Use when removing package types that are no longer needed." }, { "slug": "SHIPENGINE_DELETE_WAREHOUSE", "name": "Delete Warehouse", "description": "Tool to delete a warehouse from your ShipEngine account. Use when you need to remove a warehouse that is no longer needed. The warehouse will be permanently removed from your account." }, { "slug": "SHIPENGINE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a ShipEngine webhook subscription. Use when you need to remove a webhook that is no longer needed. The webhook will be permanently removed and will no longer receive event notifications." }, { "slug": "SHIPENGINE_DISCONNECT_CARRIER", "name": "Disconnect Carrier", "description": "Tool to disconnect a carrier account from ShipEngine. Use when you need to remove a carrier connection from your ShipEngine account." }, { "slug": "SHIPENGINE_DISCONNECT_SHIPSURANCE", "name": "Disconnect Shipsurance", "description": "Tool to disconnect a Shipsurance insurance account from ShipEngine. Use when you need to remove the Shipsurance integration." }, { "slug": "SHIPENGINE_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download a file from ShipEngine. Use when you need to retrieve a label PDF or other document from the ShipEngine downloads endpoint." }, { "slug": "SHIPENGINE_GET_ACCOUNT_IMAGE_BY_ID", "name": "Get Account Image by ID", "description": "Tool to retrieve account image settings by label image ID. Use when you need to fetch image data for labels or display account branding information." }, { "slug": "SHIPENGINE_GET_BATCH_BY_EXTERNAL_ID", "name": "Get Batch by External ID", "description": "Tool to retrieve batch details using an external batch ID. Use when you need to look up a batch by its client-assigned external identifier rather than ShipEngine's internal batch ID." }, { "slug": "SHIPENGINE_GET_BATCH_BY_ID", "name": "Get Batch by ID", "description": "Tool to retrieve detailed information about a specific batch by its ID. Use when you need to check batch status, download labels, or view errors." }, { "slug": "SHIPENGINE_GET_BATCH_ERRORS", "name": "Get Batch Errors", "description": "Tool to retrieve errors that occurred during batch processing. Use when you need to investigate or troubleshoot issues with a specific batch." }, { "slug": "SHIPENGINE_GET_BULK_RATES", "name": "Get Bulk Rates", "description": "Tool to get shipping rates for multiple shipments in a single request. Use when you need to compare rates across multiple carriers or shipments efficiently. The request is processed asynchronously - use the returned rate_request_id to retrieve the actual rates once processing is complete." }, { "slug": "SHIPENGINE_GET_INSURANCE_BALANCE", "name": "Get Insurance Balance", "description": "Tool to retrieve the current Shipsurance insurance funds balance. Use when you need to check available insurance balance before purchasing shipment insurance." }, { "slug": "SHIPENGINE_GET_LTL_CARRIER_CREDENTIAL_REQUIREMENTS", "name": "Get LTL Carrier Credential Requirements", "description": "Tool to retrieve credential requirements for connecting an LTL carrier. Use when you need to discover what credentials (e.g., account number, username, password) are required before connecting a specific LTL carrier." }, { "slug": "SHIPENGINE_GET_LTL_CARRIER_FEATURES", "name": "Get LTL Carrier Features", "description": "Tool to retrieve features supported by an LTL carrier. Use when you need to discover what capabilities (e.g., tracking, quotes, scheduled pickups) are available for a specific LTL carrier before creating shipments." }, { "slug": "SHIPENGINE_GET_LTL_CARRIER_OPTIONS", "name": "Get LTL Carrier Options", "description": "Tool to list available options/accessorials for an LTL carrier. Use when you need to discover what accessorial services (e.g., hazardous material, inside pickup, lift gate) are available for a specific LTL carrier connection." }, { "slug": "SHIPENGINE_GET_LTL_CARRIER_PACKAGES", "name": "Get LTL Carrier Packages", "description": "Tool to list available package/handling unit types for an LTL (Less Than Truckload) carrier. Use when you need to find valid package codes for LTL freight shipments." }, { "slug": "SHIPENGINE_GET_LTL_CARRIER_SERVICES", "name": "Get LTL Carrier Services", "description": "Tool to list available services for an LTL carrier. Use when you need to discover what shipping services (e.g., standard, guaranteed morning/noon) are available for a specific LTL carrier connection." }, { "slug": "SHIPENGINE_GET_PACKAGE_BY_ID", "name": "Get Package by ID", "description": "Tool to get details of a specific custom package type by ID. Use when you need to retrieve package specifications." }, { "slug": "SHIPENGINE_GET_SHIPMENT_BY_EXTERNAL_ID", "name": "Get Shipment by External ID", "description": "Tool to retrieve shipment details using an external shipment ID. Use when you need to look up a shipment by its client-assigned external identifier rather than ShipEngine's internal shipment ID." }, { "slug": "SHIPENGINE_GET_SHIPMENT_BY_ID", "name": "Get Shipment by ID", "description": "Tool to retrieve a shipment by ID. Use when you need detailed shipment information after creation." }, { "slug": "SHIPENGINE_GET_SHIPMENT_RATES", "name": "Get Shipment Rates", "description": "Tool to retrieve shipping rates for an existing shipment. Use when you need to get rate quotes for a shipment that has already been created." }, { "slug": "SHIPENGINE_GET_TRACKING_INFO", "name": "Get Tracking Information", "description": "Tool to retrieve tracking information for a shipment. Use when you need to track the status and location of a package using its tracking number and carrier code." }, { "slug": "SHIPENGINE_GET_WAREHOUSE_BY_ID", "name": "Get Warehouse by ID", "description": "Tool to retrieve details of a specific warehouse by ID. Use when you need warehouse information including addresses and default status." }, { "slug": "SHIPENGINE_GET_WEBHOOK_BY_ID", "name": "Get Webhook by ID", "description": "Tool to retrieve details of a specific webhook by ID. Use when you need to view the configuration of an existing webhook." }, { "slug": "SHIPENGINE_LIST_ACCOUNT_IMAGES", "name": "List Account Images", "description": "Tool to list all account images. Use when you need to retrieve all images configured for the ShipEngine account, such as logos or branding images used on shipping labels." }, { "slug": "SHIPENGINE_LIST_ACCOUNT_SETTINGS", "name": "List Account Settings", "description": "Tool to list all account settings for the ShipEngine account. Use when you need to retrieve account configuration, preferences, or settings information." }, { "slug": "SHIPENGINE_LIST_BATCHES2", "name": "List Batches (v2)", "description": "Tool to list all batches with comprehensive filtering options. Use when you need to retrieve batches with filters for status, creation/processing dates, batch number, or pagination." }, { "slug": "SHIPENGINE_LIST_CARRIER_PACKAGE_TYPES", "name": "List Carrier Package Types", "description": "Tool to list all available package types for a specific carrier. Use when you need to find valid package_code values before creating shipments." }, { "slug": "SHIPENGINE_LIST_LABELS2", "name": "List Labels (Extended)", "description": "Tool to list all shipping labels with comprehensive filtering options. Use when you need to retrieve labels with filters like status, carrier, tracking number, batch, or date ranges. Supports sorting and pagination." }, { "slug": "SHIPENGINE_LIST_LTL_CARRIERS", "name": "List LTL Carriers", "description": "Tool to list all LTL (Less-Than-Truckload) carrier accounts connected to your ShipEngine account. Use when you need to discover available LTL carriers, their services, container types, and accessorial services before creating LTL shipments." }, { "slug": "SHIPENGINE_LIST_MANIFESTS2", "name": "List Manifests (Advanced)", "description": "Tool to list all manifests with optional filtering by warehouse and carrier. Use when you need to retrieve manifests with advanced filtering options." }, { "slug": "SHIPENGINE_LIST_PACKAGES", "name": "List Packages", "description": "Tool to list all package types. Use when selecting package options before shipment creation." }, { "slug": "SHIPENGINE_LIST_PICKUPS", "name": "List Scheduled Pickups", "description": "Tool to list all scheduled pickups with optional filters. Use when you need to retrieve scheduled pickups with pagination support." }, { "slug": "SHIPENGINE_LIST_SHIPMENTS2", "name": "List Shipments (v2)", "description": "Tool to list all shipments with optional filtering parameters. Use when you need to retrieve shipments with filters like status, batch, tags, or date ranges." }, { "slug": "SHIPENGINE_LIST_TAGS2", "name": "List Tags (v2)", "description": "Tool to list all tags in your account. Use when you need to retrieve all available tags for display or selection purposes." }, { "slug": "SHIPENGINE_LIST_WAREHOUSES", "name": "List Warehouses", "description": "Tool to list all warehouses. Use when you need to retrieve warehouse locations with pagination. Call after creating or updating warehouses." }, { "slug": "SHIPENGINE_LIST_WEBHOOK_EVENTS", "name": "List Webhook Events", "description": "Retrieve a list of available webhook event types supported by ShipEngine. Returns static documentation of all supported webhook events that can be used when creating webhooks. Always call this before SHIPENGINE_CREATE_WEBHOOK to obtain valid event type names — unsupported or mistyped event names result in no callbacks being received. Note: This is based on ShipEngine's documented event types as there is no API endpoint for listing events." }, { "slug": "SHIPENGINE_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured on your account. Use when you need to view all registered webhooks." }, { "slug": "SHIPENGINE_PARSE_ADDRESS", "name": "Parse Address", "description": "Tool to parse unstructured address text and extract structured address components. Use when you have raw address text and need to extract individual fields like street, city, state, and postal code." }, { "slug": "SHIPENGINE_PROCESS_BATCH_LABELS", "name": "Process Batch Labels", "description": "Tool to process a batch to create and purchase shipping labels for all shipments in the batch. Use after creating a batch with shipments. The API returns HTTP 204 on success." }, { "slug": "SHIPENGINE_REMOVE_FROM_BATCH", "name": "Remove From Batch", "description": "Tool to remove shipments or rate IDs from a batch. Use when you need to modify batch contents by removing specific shipments or rates. At least one of shipment_ids or rate_ids must be provided." }, { "slug": "SHIPENGINE_REMOVE_TAG_FROM_SHIPMENT", "name": "Remove Tag from Shipment", "description": "Tool to remove a tag from a shipment. Use when you need to un-categorize or remove a specific tag from an existing shipment." }, { "slug": "SHIPENGINE_START_TRACKING", "name": "Start Tracking Package", "description": "Tool to subscribe to tracking updates for a package via webhooks. Use when you need to start monitoring a shipment's status. The package tracking information will be sent to configured webhooks when updates occur." }, { "slug": "SHIPENGINE_STOP_TRACKING", "name": "Stop Tracking Package", "description": "Tool to unsubscribe from tracking updates for a package. Use when you no longer need to receive tracking notifications for a specific shipment. Once stopped, you will not receive further tracking updates for this package." }, { "slug": "SHIPENGINE_TRACK_LTL_SHIPMENT", "name": "Track LTL Shipment", "description": "Tool to track an LTL shipment using carrier code and PRO number. Use when you need to retrieve real-time tracking information for an LTL shipment, including current status, delivery dates, and event history." }, { "slug": "SHIPENGINE_UPDATE_ACCOUNT_IMAGE_BY_ID", "name": "Update Account Image By ID", "description": "Tool to update an account image by ID in ShipEngine. Use when modifying image properties like name or default status." }, { "slug": "SHIPENGINE_UPDATE_LTL_CONNECTION", "name": "Update LTL Connection", "description": "Tool to update LTL carrier connection credentials in ShipEngine. Use when you need to modify authentication credentials for an existing LTL carrier connection without disconnecting and reconnecting. You must provide all credential properties for the carrier, not just the property you wish to update." }, { "slug": "SHIPENGINE_UPDATE_PACKAGE", "name": "Update Package Type", "description": "Tool to update an existing custom package type definition. Use when modifying package details such as name, code, description, or dimensions." }, { "slug": "SHIPENGINE_UPDATE_SHIPMENT", "name": "Update Shipment", "description": "Tool to update an existing shipment's details. Use when you need to modify shipment information such as addresses, packages, weight, or carrier options before creating a label." }, { "slug": "SHIPENGINE_UPDATE_SHIPMENTS_TAGS", "name": "Update Shipments Tags", "description": "Tool to update tags on one or more shipments in bulk. Use when you need to assign existing tags to shipments. Tags must be created before assignment using the Create Tag action." }, { "slug": "SHIPENGINE_UPDATE_WAREHOUSE", "name": "Update Warehouse", "description": "Tool to update an existing warehouse's details and address. Use when modifying warehouse information such as name, origin address, return address, or default status." }, { "slug": "SHIPENGINE_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update a ShipEngine webhook. Use when you need to modify webhook URL, name, headers, or store association. Returns success on 204 status code." }, { "slug": "SHIPENGINE_VALIDATE_ADDRESS", "name": "Validate Address", "description": "Tool to validate and normalize shipping addresses. Use after collecting raw addresses to ensure they are correct and standardized before shipping." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shipengine_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "ShipEngine API Key", "type": "string", "description": "Your ShipEngine API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shippo", "name": "Shippo", "logo": "https://logos.composio.dev/api/shippo", "description": "Shipping API for e-commerce merchants to create labels, track packages, and manage shipping operations.", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 95, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHIPPO_CREATE_ADDRESS", "name": "Create Shippo Address", "description": "Tool to create a new address in Shippo. Use when you need to store sender or recipient addresses for shipping labels and transactions. Addresses can be validated against carrier databases before creation by setting validate=true." }, { "slug": "SHIPPO_CREATE_BATCH", "name": "Create Batch", "description": "Tool to create a batch of shipments for bulk label purchasing. Use when you need to process multiple shipments at once with the same carrier and service level. Requires a valid carrier account ID from your Shippo account." }, { "slug": "SHIPPO_CREATE_CARRIER_ACCOUNT", "name": "Create Carrier Account", "description": "Tool to create a new carrier account in Shippo. Use when you need to register carrier credentials for shipping operations. This action requires detailed billing and contact information, and for UPS accounts specifically, the user must agree to UPS terms and conditions." }, { "slug": "SHIPPO_CREATE_CUSTOMS_ITEM", "name": "Create Customs Item", "description": "Create a new customs item for international shipments. Customs items are required for customs declarations when shipping internationally. Use this action to define the contents, value, and origin of items being shipped across international borders." }, { "slug": "SHIPPO_CREATE_LIVE_RATE", "name": "Create Live Rate", "description": "Tool to generate live shipping rates from multiple carriers for a given shipment. Use when you need real-time pricing for shipping from origin to destination with specific items. Returns available rates with costs and delivery estimates." }, { "slug": "SHIPPO_CREATE_MANIFEST", "name": "Create Manifest", "description": "Tool to create a new shipping manifest with Shippo. Use when you need to generate a manifest document for a carrier with multiple shipments that need to be scanned at pickup." }, { "slug": "SHIPPO_CREATE_MERCHANT_ADDRESS", "name": "Create Merchant Address", "description": "Tool to create a new address for a merchant using Shippo's Platform API. Use when you need to add an address to a merchant's account for shipping operations. This endpoint is part of the Platform API and requires a merchant ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_BATCH", "name": "Create Merchant Batch", "description": "Tool to create a batch for a merchant using the Shippo Platform API. Use when you need to create bulk shipment batches for a specific merchant account. Requires valid merchant ID, carrier account, and shipment IDs." }, { "slug": "SHIPPO_CREATE_MERCHANT_CARRIER_ACCOUNT", "name": "Create Merchant Carrier Account", "description": "Tool to create a carrier account for a merchant using the Shippo Platform API. Use when you need to register carrier credentials for a specific merchant in a platform integration scenario." }, { "slug": "SHIPPO_CREATE_MERCHANT_CUSTOMS_DECLARATION", "name": "Create Merchant Customs Declaration", "description": "Tool to create a new customs declaration for a merchant using Shippo's Platform API. Use when you need to create a customs declaration for international shipments on behalf of a merchant. This endpoint is part of the Platform API and requires a merchant ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_CUSTOMS_ITEM", "name": "Create Merchant Customs Item", "description": "Tool to create a new customs item for a merchant using Shippo's Platform API. Use when you need to create customs items for a merchant's international shipments. This endpoint is part of the Platform API and requires a merchant ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_ORDER", "name": "Create Merchant Order", "description": "Tool to create an order for a merchant using the Shippo Platform API. Use when you need to create an order on behalf of a merchant account with recipient address and order details." }, { "slug": "SHIPPO_CREATE_MERCHANT_PARCEL", "name": "Create Merchant Parcel", "description": "Tool to create a new parcel for a merchant using Shippo's Platform API. Use when you need to define package dimensions for a merchant's shipping operations. This endpoint is part of the Platform API and requires a merchant ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_REFUND", "name": "Create Merchant Refund", "description": "Tool to create a refund for a merchant using the Shippo Platform API. Use when you need to refund a transaction for a specific merchant account. Requires valid merchant ID and transaction ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_SHIPMENT", "name": "Create Merchant Shipment", "description": "Tool to create a new shipment for a merchant using Shippo's Platform API. Use when you need to create a shipment with origin/destination addresses and parcel details to get shipping rates. This endpoint is part of the Platform API and requires a merchant ID." }, { "slug": "SHIPPO_CREATE_MERCHANT_TRANSACTION", "name": "Create Merchant Transaction", "description": "Tool to create a shipping label transaction for a merchant using the Shippo Platform API. Use when you need to purchase a shipping label for a specific merchant account using an existing rate ID." }, { "slug": "SHIPPO_CREATE_ORDER", "name": "Create Order", "description": "Tool to create a new order in Shippo. Use when you need to register an order for shipment processing. The order must include a recipient address and placement timestamp. Line items can be provided for detailed tracking, or a total weight can be specified." }, { "slug": "SHIPPO_CREATE_PARCEL", "name": "Create Parcel", "description": "Tool to create a new parcel in Shippo with dimensions and weight specifications. Use when you need to define package dimensions for shipping rate calculations or label generation. The parcel object is required to create shipments and obtain shipping rates." }, { "slug": "SHIPPO_CREATE_REFUND", "name": "Create Refund", "description": "Tool to create a refund for a Shippo transaction. Use when you need to refund a previously created shipping label or transaction." }, { "slug": "SHIPPO_CREATE_SERVICE_GROUP", "name": "Create Service Group", "description": "Tool to create a new Shippo service group with specified pricing model and carrier service levels. Use when you need to configure a custom shipping rate group for checkout display." }, { "slug": "SHIPPO_CREATE_SHIPMENT", "name": "Create Shipment", "description": "Tool to create a new shipment with Shippo. Use when you need to generate shipping rates for a package by providing origin and destination addresses and parcel details." }, { "slug": "SHIPPO_CREATE_TRACK", "name": "Register Tracking Webhook", "description": "Tool to register a tracking webhook for a shipment. Use when you need to start tracking a shipment using its carrier and tracking number. This creates a tracking object that will receive updates about the shipment's status and location." }, { "slug": "SHIPPO_CREATE_TRANSACTION", "name": "Create Transaction", "description": "Tool to create a shipping label transaction with Shippo. Use when you need to purchase a shipping label either from an existing rate ID or by specifying shipment details directly." }, { "slug": "SHIPPO_CREATE_USER_PARCEL_TEMPLATE", "name": "Create User Parcel Template", "description": "Tool to create a new user parcel template in Shippo with preset dimensions and weight specifications. Use when you need to define reusable package configurations for shipping rate calculations or label generation. User parcel templates can be based on carrier templates with custom weights." }, { "slug": "SHIPPO_CREATE_WEBHOOK", "name": "Create Shippo Webhook", "description": "Tool to create a new webhook subscription in Shippo. Use when you need to register an endpoint to receive real-time notifications for shipping events such as tracking updates, transaction creation, or batch processing. Webhooks enable automated workflows by pushing event data to your application as events occur." }, { "slug": "SHIPPO_DELETE_DEFAULT_PARCEL_TEMPLATE", "name": "Delete Default Parcel Template", "description": "Tool to clear the current default parcel template. Use when you need to remove the default parcel template configuration for live rates at checkout." }, { "slug": "SHIPPO_DELETE_USER_PARCEL_TEMPLATE", "name": "Delete User Parcel Template", "description": "Tool to delete a user-created parcel template. Use when you need to remove a custom parcel template that is no longer needed." }, { "slug": "SHIPPO_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook from Shippo. Use when you need to remove a webhook that is no longer needed or needs to be reconfigured." }, { "slug": "SHIPPO_GET_ADDRESS", "name": "Get Address", "description": "Tool to retrieve a previously created address from Shippo. Use when you need to get the details of an existing address using its object ID." }, { "slug": "SHIPPO_GET_CARRIER_ACCOUNT", "name": "Get Carrier Account", "description": "Tool to retrieve a carrier account by its ID. Use when you need to get details about a specific carrier account configuration." }, { "slug": "SHIPPO_GET_CARRIER_PARCEL_TEMPLATE", "name": "Get Carrier Parcel Template", "description": "Tool to retrieve a specific carrier parcel template by its token. Use when you need to get detailed dimensions and specifications for a standardized carrier package type." }, { "slug": "SHIPPO_GET_CARRIER_REGISTRATION_STATUS", "name": "Get Carrier Registration Status", "description": "Tool to retrieve carrier registration status from Shippo. Use when you need to check the registration or authentication status of a carrier account." }, { "slug": "SHIPPO_GET_CUSTOMS_DECLARATION", "name": "Get Customs Declaration", "description": "Tool to retrieve a customs declaration by its ID. Use when you need to fetch details about a specific customs declaration including items, certifications, and shipping information." }, { "slug": "SHIPPO_GET_CUSTOMS_ITEM", "name": "Get customs item", "description": "Tool to retrieve a customs item from Shippo. Use when you need to fetch details about a previously created customs declaration for international shipments." }, { "slug": "SHIPPO_GET_DEFAULT_PARCEL_TEMPLATE", "name": "Get Default Parcel Template", "description": "Tool to retrieve the current default parcel template for live rates at checkout. Use when you need to view the default parcel dimensions and weight settings." }, { "slug": "SHIPPO_GET_MERCHANT", "name": "Get Merchant", "description": "Tool to retrieve a merchant from the Shippo Platform API. Use when you need to get the details of an existing merchant using their object ID." }, { "slug": "SHIPPO_GET_MERCHANT_ADDRESS", "name": "Get Merchant Address", "description": "Tool to retrieve a merchant address from Shippo Platform API. Use when you need to get the details of an existing merchant address using merchant ID and address ID." }, { "slug": "SHIPPO_GET_MERCHANT_BATCH", "name": "Get Merchant Batch", "description": "Tool to retrieve a batch for a merchant from the Shippo Platform API. Use when you need to get details of an existing batch using merchant and batch IDs." }, { "slug": "SHIPPO_GET_MERCHANT_CARRIER_ACCOUNT", "name": "Get Merchant Carrier Account", "description": "Tool to retrieve a carrier account for a merchant using the Shippo Platform API. Use when you need to get details about a specific carrier account associated with a merchant on the platform." }, { "slug": "SHIPPO_GET_MERCHANT_CARRIER_REGISTRATION_STATUS", "name": "Get Merchant Carrier Registration Status", "description": "Tool to retrieve carrier registration status for a specific merchant using Shippo's Platform API. Use when you need to check if a merchant has registered or connected a carrier account." }, { "slug": "SHIPPO_GET_MERCHANT_CUSTOMS_DECLARATION", "name": "Get Merchant Customs Declaration", "description": "Tool to retrieve a specific customs declaration for a merchant using Shippo's Platform API. Use when you need to fetch details about a merchant's customs declaration for international shipments." }, { "slug": "SHIPPO_GET_MERCHANT_CUSTOMS_ITEM", "name": "Get Merchant Customs Item", "description": "Tool to retrieve a customs item for a merchant using the Shippo Platform API. Use when you need to fetch details about a specific customs item for a merchant's international shipments." }, { "slug": "SHIPPO_GET_MERCHANT_MANIFEST", "name": "Get Merchant Manifest", "description": "Tool to retrieve a manifest for a merchant from the Shippo Platform API. Use when you need to get details of an existing manifest using merchant and manifest IDs." }, { "slug": "SHIPPO_GET_MERCHANT_ORDER", "name": "Get Merchant Order", "description": "Tool to retrieve an order for a merchant from the Shippo Platform API. Use when you need to get details of an existing order using merchant and order IDs." }, { "slug": "SHIPPO_GET_MERCHANT_PARCEL", "name": "Get Merchant Parcel", "description": "Tool to retrieve a parcel for a merchant from the Shippo Platform API. Use when you need to fetch details of a parcel that belongs to a specific merchant." }, { "slug": "SHIPPO_GET_MERCHANT_RATE", "name": "Get Merchant Rate", "description": "Tool to retrieve a specific shipping rate for a merchant using the Shippo Platform API. Use when you need to fetch detailed rate information for a merchant's shipment, including pricing, carrier details, and service level." }, { "slug": "SHIPPO_GET_MERCHANT_REFUND", "name": "Get Merchant Refund", "description": "Tool to retrieve a merchant refund from Shippo Platform API. Use when you need to get the details or status of a specific refund for a merchant." }, { "slug": "SHIPPO_GET_MERCHANT_SHIPMENT", "name": "Get Merchant Shipment", "description": "Tool to retrieve a shipment for a merchant from the Shippo Platform API. Use when you need to fetch details of a shipment that belongs to a specific merchant." }, { "slug": "SHIPPO_GET_MERCHANT_TRACK", "name": "Get Merchant Tracking Status", "description": "Tool to retrieve tracking status for a merchant from Shippo Platform API. Use when you need to get the current status, location, and history of a package for a specific merchant using carrier and tracking number." }, { "slug": "SHIPPO_GET_MERCHANT_TRANSACTION", "name": "Get Merchant Transaction", "description": "Tool to retrieve a shipping label transaction for a merchant from the Shippo Platform API. Use when you need to get the details of an existing transaction for a merchant including tracking information, label URLs, and transaction status." }, { "slug": "SHIPPO_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve an order from Shippo. Use when you need to fetch details about a specific order including shipping addresses, line items, and transactions." }, { "slug": "SHIPPO_GET_PARCEL", "name": "Get Parcel", "description": "Tool to retrieve a parcel by its ID. Use when you need to fetch details of an existing parcel object including dimensions, weight, and metadata." }, { "slug": "SHIPPO_GET_RATE", "name": "Get Rate", "description": "Tool to retrieve a specific shipping rate by its ID. Use when you need to fetch detailed rate information including pricing, carrier details, and service level." }, { "slug": "SHIPPO_GET_REFUND", "name": "Get Refund", "description": "Tool to retrieve a refund by its ID from Shippo. Use when you need to check the status or details of a specific refund transaction. Requires the refund_id which is obtained when creating a refund." }, { "slug": "SHIPPO_GET_SHIPMENT", "name": "Get Shipment", "description": "Tool to retrieve a shipment by its ID. Use when you need to fetch details about a specific shipment including addresses, parcels, rates, and status." }, { "slug": "SHIPPO_GET_SHIPPO_ACCOUNT", "name": "Get Shippo Account", "description": "Tool to retrieve a Shippo Account from the Shippo Platform API. Use when you need to get the details of an existing Shippo Account using its object ID." }, { "slug": "SHIPPO_GET_TRACK", "name": "Get Tracking Status", "description": "Tool to retrieve tracking status for a shipment from Shippo. Use when you need to get the current status, location, and history of a package using its carrier and tracking number." }, { "slug": "SHIPPO_GET_TRANSACTION", "name": "Get Transaction", "description": "Tool to retrieve a shipping label transaction by its ID. Use when you need to get the details of an existing transaction including tracking information, label URLs, and transaction status." }, { "slug": "SHIPPO_GET_USER_PARCEL_TEMPLATE", "name": "Get User Parcel Template", "description": "Tool to retrieve a specific user-created parcel template by its object ID. Use when you need to get dimensions and specifications for a custom parcel template." }, { "slug": "SHIPPO_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a specific webhook subscription from Shippo. Use when you need to get the details of an existing webhook using its object ID." }, { "slug": "SHIPPO_LIST_ADDRESSES", "name": "List Addresses", "description": "Tool to list all addresses in the Shippo account with pagination support. Use when you need to retrieve stored addresses for shipment creation or management." }, { "slug": "SHIPPO_LIST_CARRIER_ACCOUNTS", "name": "List Carrier Accounts", "description": "Tool to list all carrier accounts configured in the Shippo account with pagination support. Use when you need to retrieve carrier accounts for shipment creation or management." }, { "slug": "SHIPPO_LIST_CARRIER_PARCEL_TEMPLATES", "name": "List Carrier Parcel Templates", "description": "Tool to list all carrier parcel templates available for creating shipments. Use when you need to retrieve standardized parcel dimensions provided by carriers like FedEx, USPS, UPS, etc." }, { "slug": "SHIPPO_LIST_CUSTOMS_DECLARATIONS", "name": "List Customs Declarations", "description": "Tool to list all customs declarations in the Shippo account with pagination support. Use when you need to retrieve customs declarations for international shipments." }, { "slug": "SHIPPO_LIST_CUSTOMS_ITEMS", "name": "List Customs Items", "description": "Tool to list all customs items with pagination support. Use when you need to retrieve customs declarations for international shipments." }, { "slug": "SHIPPO_LIST_MANIFESTS", "name": "List Manifests", "description": "Tool to list all shipping manifests from Shippo. Use when you need to retrieve a paginated list of manifests with optional filtering by page number and results per page." }, { "slug": "SHIPPO_LIST_MERCHANT_ADDRESSES", "name": "List Merchant Addresses", "description": "Tool to list all addresses for a specific merchant using the Shippo Platform API. Use when you need to retrieve merchant addresses with pagination support." }, { "slug": "SHIPPO_LIST_MERCHANT_CARRIER_ACCOUNTS", "name": "List Merchant Carrier Accounts", "description": "Tool to list all carrier accounts for a specific merchant using the Shippo Platform API. Use when you need to retrieve carrier accounts configured for a merchant in a platform context." }, { "slug": "SHIPPO_LIST_MERCHANT_CUSTOMS_DECLARATIONS", "name": "List Merchant Customs Declarations", "description": "Tool to list all customs declarations for a specific merchant using the Shippo Platform API. Use when you need to retrieve merchant customs declarations for international shipments." }, { "slug": "SHIPPO_LIST_MERCHANT_CUSTOMS_ITEMS", "name": "List Merchant Customs Items", "description": "Tool to list all customs items for a specific merchant using the Shippo Platform API. Use when you need to retrieve merchant customs items for international shipments." }, { "slug": "SHIPPO_LIST_MERCHANT_MANIFESTS", "name": "List Merchant Manifests", "description": "Tool to list all manifests for a specific merchant using Shippo's Platform API. Use when you need to retrieve manifests for a merchant account with optional pagination." }, { "slug": "SHIPPO_LIST_MERCHANT_PARCELS", "name": "List Merchant Parcels", "description": "Tool to list all parcels for a specific merchant using the Shippo Platform API. Use when you need to retrieve merchant parcels with pagination support." }, { "slug": "SHIPPO_LIST_MERCHANTS", "name": "List Merchants", "description": "Tool to list all merchants using the Shippo Platform API with pagination support. Use when you need to retrieve merchant accounts in a platform context." }, { "slug": "SHIPPO_LIST_MERCHANT_SHIPMENT_RATES_BY_CURRENCY", "name": "List Merchant Shipment Rates by Currency", "description": "Tool to retrieve available shipping rates for a merchant's shipment filtered by currency code using the Shippo Platform API. Use when you need to compare carrier pricing in a specific currency for a merchant's shipment." }, { "slug": "SHIPPO_LIST_MERCHANT_SHIPMENTS", "name": "List Merchant Shipments", "description": "Tool to list all shipments for a specific merchant using Shippo's Platform API. Use when you need to retrieve shipments for a merchant account with optional pagination." }, { "slug": "SHIPPO_LIST_MERCHANT_TRANSACTIONS", "name": "List Merchant Transactions", "description": "Tool to list all shipping label transactions for a merchant using the Shippo Platform API. Use when you need to retrieve shipping labels created for a specific merchant with pagination support." }, { "slug": "SHIPPO_LIST_ORDERS", "name": "List Orders", "description": "Tool to list all orders in the Shippo account with pagination support. Use when you need to retrieve customer orders for creating shipments or managing order fulfillment." }, { "slug": "SHIPPO_LIST_REFUNDS", "name": "List Refunds", "description": "Tool to retrieve a list of all refunds from Shippo. Use when you need to view refund history, check refund statuses, or audit reimbursements for unused shipping labels. Supports pagination for large result sets." }, { "slug": "SHIPPO_LIST_SERVICE_GROUPS", "name": "List Service Groups", "description": "Tool to retrieve all service groups configured in Shippo. Use when you need to view available shipping service groups, their configurations, rates, and service levels." }, { "slug": "SHIPPO_LIST_SHIPMENT_RATES", "name": "List Shipment Rates", "description": "Tool to retrieve available shipping rates for a specific shipment. Use when you need to compare carrier pricing and service options for a shipment." }, { "slug": "SHIPPO_LIST_SHIPMENT_RATES_BY_CURRENCY", "name": "List Shipment Rates by Currency", "description": "Tool to retrieve available shipping rates for a specific shipment filtered by currency code. Use when you need to compare carrier pricing in a specific currency (e.g., USD, EUR, GBP)." }, { "slug": "SHIPPO_LIST_SHIPMENTS", "name": "List Shipments", "description": "Tool to list all shipments in the Shippo account with pagination support. Use when you need to retrieve shipment records, check shipment status, or manage shipping operations." }, { "slug": "SHIPPO_LIST_SHIPPO_ACCOUNTS", "name": "List Shippo Accounts", "description": "Tool to list all Managed Shippo Accounts. Use when you need to retrieve all Shippo Accounts associated with your platform account. Supports pagination for large result sets." }, { "slug": "SHIPPO_LIST_USER_PARCEL_TEMPLATES", "name": "List User Parcel Templates", "description": "Tool to list all user-created parcel templates. Use when you need to retrieve custom parcel dimensions and configurations that were created by the user." }, { "slug": "SHIPPO_PURCHASE_MERCHANT_BATCH", "name": "Purchase Merchant Batch", "description": "Tool to purchase a batch for a merchant via the Shippo Platform API. Use when you need to purchase a previously created batch of shipments. The batch must be in VALID status before it can be purchased." }, { "slug": "SHIPPO_REMOVE_SHIPMENTS_FROM_BATCH", "name": "Remove Shipments From Batch", "description": "Tool to remove shipments from a batch for a merchant using the Shippo Platform API. Use when you need to remove one or more shipments from an existing batch before purchase or during batch management." }, { "slug": "SHIPPO_UPDATE_CARRIER_ACCOUNT", "name": "Update Carrier Account", "description": "Tool to update an existing carrier account in Shippo. Use when you need to modify carrier account settings such as activation status, account credentials, or carrier-specific parameters." }, { "slug": "SHIPPO_UPDATE_DEFAULT_PARCEL_TEMPLATE", "name": "Update Default Parcel Template", "description": "Tool to update the default parcel template for live rates at checkout in Shippo. Use when you need to set a specific parcel template as the default for calculating shipping rates." }, { "slug": "SHIPPO_UPDATE_MERCHANT", "name": "Update Merchant", "description": "Tool to update an existing merchant in Shippo Platform API. Use when you need to modify merchant details such as name, email, or business information. This action requires Platform API authentication." }, { "slug": "SHIPPO_UPDATE_MERCHANT_CARRIER_ACCOUNT", "name": "Update Merchant Carrier Account", "description": "Tool to update a carrier account for a merchant in Shippo Platform API. Use when you need to modify merchant carrier account settings such as activation status, billing address, or UPS-specific parameters. Requires Platform API authentication with merchant context." }, { "slug": "SHIPPO_UPDATE_SERVICE_GROUP", "name": "Update Service Group", "description": "Tool to update an existing Shippo service group. Use when you need to modify service group details such as name, description, rate adjustment, or service levels." }, { "slug": "SHIPPO_UPDATE_USER_PARCEL_TEMPLATE", "name": "Update User Parcel Template", "description": "Tool to update an existing user parcel template with new weight and carrier template settings. Use when you need to modify the dimensions or weight of a previously created custom parcel template." }, { "slug": "SHIPPO_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook in Shippo. Use when you need to modify webhook settings such as the event type, URL endpoint, activation status, or test mode flag." }, { "slug": "SHIPPO_VALIDATE_ADDRESS", "name": "Validate Address", "description": "Tool to validate an address using the Shippo API. Use when you need to verify that a shipping address is valid and complete before creating a shipment." }, { "slug": "SHIPPO_VALIDATE_MERCHANT_ADDRESS", "name": "Validate Merchant Address", "description": "Tool to validate a merchant address using the Shippo Platform API. Use when you need to verify that a merchant's shipping address is valid and complete." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "shippo_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "*" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "shippo_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Shippo API token (live tokens begin with shippo_live_, test tokens begin with shippo_test_). Find it at https://portal.goshippo.com/api-config/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "short_io", "name": "Short Io", "logo": "https://logos.composio.dev/api/short_io", "description": "Short.io is a URL shortening service that allows users to create branded short links, manage them, and track their performance.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 41, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SHORT_IO_ADD_TAG_TO_LINKS_BULK", "name": "Add Tag to Links in Bulk", "description": "Tool to append a single tag to multiple short links in one call. Use when you need to add the same tag to multiple links efficiently." }, { "slug": "SHORT_IO_ARCHIVE_LINK", "name": "Archive Link", "description": "Archive a short link, hiding it from the dashboard while keeping it accessible. Archived links remain functional but are hidden from the dashboard view. Use this to organize or hide links without deleting them." }, { "slug": "SHORT_IO_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new folder for organizing links within a domain. Use when you need to organize links into categories or groups." }, { "slug": "SHORT_IO_CREATE_LINK", "name": "Create Short Link", "description": "Tool to create a new short link from a long URL on your branded domain. Use when you need to shorten a single URL." }, { "slug": "SHORT_IO_DELETE_LINK", "name": "Delete Link", "description": "Tool to permanently delete a short link by its unique ID. Use when you need to remove a short link from the system. The deletion is immediate and irreversible." }, { "slug": "SHORT_IO_DELETE_LINK_PERMISSION", "name": "Delete Link Permission", "description": "Revokes a specific user's access permission for a short link. Use this to remove a user's ability to view or manage a particular link within a domain. Requires Team plan." }, { "slug": "SHORT_IO_DELETE_LINKS_BULK", "name": "Delete Links in Bulk", "description": "Delete multiple short links in a single API call (up to 150 links). Rate limit: 1 request per second. Use this to permanently remove links - deleted links cannot be recovered." }, { "slug": "SHORT_IO_DUPLICATE_LINK", "name": "Duplicate Link", "description": "Tool to duplicate an existing short link by its ID. Creates a new link with the same properties as the original. Use when you need to clone a link configuration." }, { "slug": "SHORT_IO_GENERATE_QR_CODE", "name": "Generate QR Code for Link", "description": "Tool to generate a QR code for a short link. Use when you need to create a QR code image for a specific short link by its ID." }, { "slug": "SHORT_IO_GET_BUNDLE_TEMPLATES", "name": "Get Bundle Templates", "description": "Tool to retrieve all available bundle templates. Use when you need to list or select from predefined bundle templates for creating link bundles." }, { "slug": "SHORT_IO_GET_DOMAIN_BY_ID", "name": "Get Domain Details by ID", "description": "Tool to retrieve detailed information for a specific domain by its ID. Use when you need to fetch configuration details, settings, or metadata for a domain." }, { "slug": "SHORT_IO_GET_DOMAINS_LINK_CLICKS", "name": "Get Domain Link Clicks", "description": "Tool to get click statistics for specific links in a domain. Use when you need click counts for particular link IDs within a domain. Retrieves the number of clicks each specified link has received. Example: \"Get click counts for links with IDs ['lnk_5YOn_turb6oFhe1NAosVTgOpq6', 'lnk_5YOn_WziFZJY3qcd1YDqVdRWg9'] in domain 1425403\"." }, { "slug": "SHORT_IO_GET_DOMAINS_PATHS", "name": "Get Domain Paths", "description": "Tool to list the most popular paths in a domain over time. Use after confirming a valid domain ID to analyze which short URL paths under that domain have received the most clicks in the given interval." }, { "slug": "SHORT_IO_GET_DOMAIN_STATISTICS", "name": "Get Domain Statistics", "description": "Tool to get comprehensive statistics for a domain over a specified period. Returns click metrics, link counts, and analytics breakdowns by referrer, social media, browser, country, city, and OS. Use when you need domain-level analytics." }, { "slug": "SHORT_IO_GET_FOLDER", "name": "Get Folder", "description": "Tool to retrieve folder details by ID. Use when you need to get information about a specific folder within a domain." }, { "slug": "SHORT_IO_GET_LINK_BY_ORIGINAL_URL", "name": "Get Link by Original URL", "description": "Tool to get link info by original URL. Use when you need to find all short links created from a specific original URL within a domain." }, { "slug": "SHORT_IO_GET_LINK_COUNTRIES", "name": "Get Link Countries", "description": "Tool to get country targeting rules for a short link. Use when you need to retrieve all country-based redirect configurations for a specific link." }, { "slug": "SHORT_IO_GET_LINK_INFO_BY_LINK_ID", "name": "Get Link Info by Link ID", "description": "Retrieves comprehensive metadata for a short link using its unique ID. Returns original URL, short URL, domain, tags, click count, UTM parameters, timestamps, and more. Use this when you have a link ID and need its full details." }, { "slug": "SHORT_IO_GET_LINK_INFO_BY_PATH", "name": "Get Link Info by Path", "description": "Tool to get link info by its path and domain. Use when you need to look up a branded short link by its path within a specific domain." }, { "slug": "SHORT_IO_GET_LINK_OPEN_GRAPH_PROPERTIES", "name": "Get Link OpenGraph Properties", "description": "Tool to retrieve OpenGraph settings for a link. Use after creating or updating a link to verify its social metadata." }, { "slug": "SHORT_IO_GET_LINK_PERMISSIONS", "name": "Get Link Permissions", "description": "Retrieves all user access permissions for a specific short link within a domain. Use this to check which users have been granted access to view or manage a particular link. Returns an empty list if no special permissions have been configured. Example: \"Show me who has access to link 'lnk_5YOn_lR5wxdiv88Qo9ZRF6akPi' in domain '1425403'\"." }, { "slug": "SHORT_IO_GET_LINK_REGION_LIST_COUNTRY", "name": "Get Link Regions by Country", "description": "Tool to list all regions available for a country. Use when targeting links by region within a specific country." }, { "slug": "SHORT_IO_GET_LINK_REGIONS", "name": "Get Link Regions", "description": "Retrieves all region-based targeting rules configured for a specific short link. Region targeting allows you to redirect users to different URLs based on their geographic region (e.g., California, Texas) within a country. This provides more granular control than country-level targeting. Returns an empty list if no region targeting rules are configured for the link." }, { "slug": "SHORT_IO_GET_LINKS_BY_ORIGINAL_URL", "name": "Get Links by Original URL", "description": "Tool to get multiple links info by original URL. Use when you need to find all short links created from the same original URL within a domain, such as comparing campaign performance across different platforms." }, { "slug": "SHORT_IO_GET_LINKS_LIST", "name": "Get Links List", "description": "Tool to list short links on a domain with optional filters. Use after confirming the domain to retrieve or search links by criteria." }, { "slug": "SHORT_IO_GET_LINK_STATISTICS", "name": "Get Link Statistics", "description": "Tool to get click statistics for a specific link. Use when you need detailed click metrics over a specified interval." }, { "slug": "SHORT_IO_GET_LINK_TWEETBOT", "name": "Get Link (Tweetbot)", "description": "Create a short link using the simplified Tweetbot GET endpoint. This is a lightweight alternative to the standard POST link creation endpoint, designed for scenarios where GET requests are preferred (e.g., browser-based integrations, simple HTTP clients). Returns the shortened URL immediately upon success." }, { "slug": "SHORT_IO_LIST_DOMAINS", "name": "List Domains", "description": "Tool to retrieve all domains associated with the Short.io account. Use when you need to list available domains for creating short links or managing domain settings." }, { "slug": "SHORT_IO_LIST_FOLDERS", "name": "List Folders", "description": "Tool to list all folders for a specific domain. Use when you need to view all folder names and IDs to organize or filter links by folder." }, { "slug": "SHORT_IO_POST_DOMAIN_LINK_CLICKS", "name": "Post Domain Link Clicks", "description": "Tool to get click statistics for specific links in a domain using POST method. Use when you need click counts for multiple link paths with their creation dates. This POST version allows batch retrieval of link click statistics by providing an array of paths and their creation timestamps." }, { "slug": "SHORT_IO_POST_DOMAINS_BY_INTERVAL", "name": "Get Domain Statistics by Interval", "description": "Tool to retrieve domain statistics over a custom interval. Use when you need time-series click data for a specific domain over a defined time window." }, { "slug": "SHORT_IO_POST_DOMAINS_LAST_CLICKS", "name": "Post Domains Last Clicks", "description": "Tool to retrieve the latest raw click events for a domain. Use when detailed clickstream data is needed." }, { "slug": "SHORT_IO_POST_DOMAIN_STATS", "name": "Get Domain Statistics", "description": "Tool to get detailed statistics for a domain over a specified period. Use when you need comprehensive domain metrics including clicks, links, referrers, geographic data, and browser/OS breakdowns." }, { "slug": "SHORT_IO_POST_DOMAINS_TOP", "name": "Get Domain Top Values", "description": "Retrieves top values for a specified analytics column ranked by click count for a domain. Use to analyze which paths, countries, or other dimensions have the most traffic. Returns an ordered list of values with their click counts." }, { "slug": "SHORT_IO_POST_LINKS_ARCHIVE_BULK", "name": "Archive Links in Bulk", "description": "Archive multiple short links in a single API call (up to 150 links). Archived links are hidden from the dashboard but remain functional and accessible. Use this to organize or hide links without deleting them. Requires link IDs from previously created links." }, { "slug": "SHORT_IO_POST_LINKS_BULK", "name": "Create Links in Bulk", "description": "Tool to create up to 1000 short links in one call. Use when bulk shortening multiple URLs." }, { "slug": "SHORT_IO_POST_LINKS_QR_BULK", "name": "Generate QR Codes in Bulk", "description": "Tool to generate QR codes for multiple links in bulk. Use when you need to retrieve QR codes for several short links at once." }, { "slug": "SHORT_IO_POST_LINKS_UNARCHIVE_BULK", "name": "Unarchive Links in Bulk", "description": "Unarchive multiple short links in bulk (up to 150 links per request). This operation restores previously archived links to active status, making them functional and visible again. Use this when you need to restore visibility of a set of archived short links at once. The operation is idempotent - unarchiving already unarchived links succeeds without error." }, { "slug": "SHORT_IO_UNARCHIVE_LINK", "name": "Unarchive Link", "description": "Unarchive a previously archived short link to restore it to active status. Use this when you need to make an archived link visible and functional again. The operation is idempotent - unarchiving an already active link succeeds without error." }, { "slug": "SHORT_IO_UPDATE_DOMAIN_SETTINGS", "name": "Update Domain Settings", "description": "Tool to update domain settings for a Short.io domain. Use when you need to modify domain configuration such as the root redirect URL." }, { "slug": "SHORT_IO_UPDATE_LINK", "name": "Update Link", "description": "Tool to update an existing short link by its ID. Allows modifying destination URL, title, UTM parameters, password protection, expiration, tags, and various other link settings. Only specified fields are updated; omitted fields remain unchanged. Use when you need to edit any aspect of a previously created short link." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shortio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Short.io API Key", "type": "string", "description": "The secret API key for authenticating requests to the Short.io API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "short_menu", "name": "Short Menu", "logo": "https://logos.composio.dev/api/short_menu", "description": "Short Menu is a URL shortening application that allows users to create and manage short links efficiently.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHORT_MENU_CREATE_LINK", "name": "Create Short Link", "description": "Tool to create a new shortened link. Use when you need to generate a short URL with optional custom parameters like domain, tags, slug, etc. Use after gathering the target URL and any metadata." }, { "slug": "SHORT_MENU_DELETE_LINK", "name": "Delete Short Link", "description": "Tool to delete an existing short link by its ID. Use when you need to remove a shortened URL from the system." }, { "slug": "SHORT_MENU_GET_DOMAINS", "name": "Get Custom Domains", "description": "Tool to retrieve available custom domains. Use when you need to display or select a domain for shortening links." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "short_menu_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Short Menu API Key", "type": "string", "description": "Your Short Menu API Key. Create one at https://shm.to/create-api-key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shorten_rest", "name": "Shorten.REST", "logo": "https://logos.composio.dev/api/shorten_rest", "description": "Shorten.REST is a link shortening and management app that allows you to generate unique, branded URLs with advanced tracking capabilities.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHORTEN_REST_CREATE_ALIAS", "name": "Create Alias", "description": "Tool to create a new alias (short URL) under a specified domain. Use when you need to shorten a URL. If no domain is specified, the alias will be attached to the default domain Short.fyi. You can override domain-level Meta Tags and Tracking Snippets by specifying them for each URL." }, { "slug": "SHORTEN_REST_DELETE_ALIAS", "name": "Delete Alias", "description": "Tool to delete a single alias by providing alias and domain. Use when you need to remove an existing shortened URL. If no domain is provided, the API searches for the matching alias within the Short.fyi domain." }, { "slug": "SHORTEN_REST_GET_ALIASES", "name": "Get Aliases", "description": "Tool to retrieve all URL aliases of the authenticated user. Use when you need to list existing aliases (supports pagination)." }, { "slug": "SHORTEN_REST_GET_CLICKS", "name": "Get click data for aliases", "description": "Tool to retrieve click data for shortened URLs. Use to check click analytics for your aliases. Returns a list of click records which may be empty if no clicks have occurred yet. Returned records may represent a limited window or subset of historical clicks rather than complete per-click logs." }, { "slug": "SHORTEN_REST_LIST_ALIASES_BY_DOMAIN", "name": "List aliases by domain", "description": "Tool to retrieve all alias names associated with your account and a given domain. Results are in descending order by creation date. Use when you need to list alias names (not full details) for a specific domain with pagination support." }, { "slug": "SHORTEN_REST_UPDATE_ALIAS", "name": "Update Alias", "description": "Tool to update an existing short URL alias by providing its alias name and domain. Use when you need to modify destinations, metatags, or snippets for an existing alias. IMPORTANT: When updating array properties (like destinations), the entire array is replaced, so you must include all existing records you want to keep." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shorten_rest_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Shorten.REST API Key", "type": "string", "description": "The API key required for authenticating requests to the Shorten.REST API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shortpixel", "name": "Shortpixel", "logo": "https://logos.composio.dev/api/shortpixel", "description": "ShortPixel is an image optimization and compression service that offers APIs and plugins to enhance website performance by reducing image sizes without compromising quality.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHORTPIXEL_ADD_CDN_DOMAIN", "name": "Add CDN Domain", "description": "Tool to add a new domain to the ShortPixel CDN system and associate it with your API key. Use when you need to register a domain for CDN services. If the domain already exists without a user, it will be associated with your API key." }, { "slug": "SHORTPIXEL_BULK_PURGE_STORAGE", "name": "Bulk Purge ShortPixel Storage", "description": "Tool to purge all files stored on ShortPixel storage servers for a domain. Use when you need to remove all stored files for a site in bulk." }, { "slug": "SHORTPIXEL_CHECK_IMAGE_STATUS", "name": "Check Image Status", "description": "Tool to check the optimization status of an image being processed by ShortPixel. Returns current status of queued images including URLs and size information." }, { "slug": "SHORTPIXEL_CLEAN_UP_IMAGE", "name": "Clean Up Image", "description": "Tool to remove images from the processing queue. Use when you need to optimize another image with the same URL but different contents within the next hour." }, { "slug": "SHORTPIXEL_GET_ADAPTIVE_IMAGE_CDN", "name": "Get Adaptive Image via CDN", "description": "Tool to optimize images on-the-fly via ShortPixel CDN. Transform images by URL with parameters for width, height, cropping, quality, and format conversion. Returns the optimized image directly without CDN caching." }, { "slug": "SHORTPIXEL_GET_API_STATUS", "name": "Get API Status", "description": "Tool to retrieve the current status of your API key, including available credits. Use when you need to monitor your account usage before making additional API calls." }, { "slug": "SHORTPIXEL_GET_CDN_USAGE", "name": "Get CDN Usage Statistics", "description": "Tool to retrieve detailed CDN usage statistics for a domain including traffic, API calls, monthly quota, remaining credits, and historical usage breakdown by date. Use when you need to monitor CDN consumption or check quota status." }, { "slug": "SHORTPIXEL_OPTIMIZE_IMAGES_BY_URL", "name": "Optimize Images by URL", "description": "Tool to optimize images by providing their URLs. Supports batch processing of up to 100 URLs per request with options for lossy, glossy, or lossless compression, resizing, format conversion (WebP/AVIF), and background removal. Use when you need to compress and optimize images accessible online." }, { "slug": "SHORTPIXEL_READ_CDN_DOMAIN", "name": "Read CDN Domain Status", "description": "Tool to check the status of a domain and its CDN quota on ShortPixel. Returns a status code indicating credit availability. Use when you need to verify domain accessibility and quota status." }, { "slug": "SHORTPIXEL_REVOKE_CDN_DOMAIN", "name": "Revoke CDN Domain", "description": "Tool to revoke a domain association from ShortPixel CDN. Only works if the API key belongs to the current domain owner. Use when you need to remove the association between a domain and the user account." }, { "slug": "SHORTPIXEL_SET_CDN_DOMAIN", "name": "Set CDN Domain", "description": "Tool to associate an API key with an existing domain. Unlike add-domain, this does not create a new domain - it only associates a user ID if not already associated. Use when you need to claim unassociated domains." }, { "slug": "SHORTPIXEL_UPLOAD_AND_OPTIMIZE_IMAGES", "name": "Upload and Optimize Images", "description": "Tool to upload and optimize images that are not accessible online. Uses multipart form data to upload files directly and applies optimization parameters like compression type, resize options, and format conversion." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shortpixel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "ShortPixel API Key", "type": "string", "description": "The API Key provided by ShortPixel upon account registration.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "shotstack", "name": "Shotstack", "logo": "https://logos.composio.dev/api/shotstack", "description": "Shotstack is a cloud-based platform that enables developers, marketers, and designers to automate the generation of videos, images, and audio at scale using a RESTful API.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SHOTSTACK_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template for video editing. Use when you want to save a reusable timeline configuration as a template. Template changes do not retroactively affect past renders." }, { "slug": "SHOTSTACK_CREATE_TEMPLATE2", "name": "Create Template (v2)", "description": "Tool to save an Edit as a re-usable template. Templates can be retrieved and modified before rendering. Use when you want to create a template with merge fields for dynamic content." }, { "slug": "SHOTSTACK_DELETE_INGESTED_MEDIA", "name": "Delete Ingested Media", "description": "Tool to delete an ingested media asset. Use when you've confirmed the ingest ID and need to remove the file from Shotstack storage." }, { "slug": "SHOTSTACK_DELETE_TEMPLATE2", "name": "Delete Template", "description": "Tool to delete a specific Shotstack template by its ID. Use when you need to remove a template permanently." }, { "slug": "SHOTSTACK_DELETE_WORKFLOW", "name": "Delete Shotstack Workflow", "description": "Tool to delete a specific Shotstack workflow. Use when you need to permanently remove a workflow after confirming its ID." }, { "slug": "SHOTSTACK_FETCH_SOURCE", "name": "Fetch Source", "description": "Tool to fetch a remote media file and store it as a source asset. Operation is asynchronous — poll SHOTSTACK_GET_INGEST_STATUS or SHOTSTACK_INSPECT_MEDIA until the asset is ready before passing it to SHOTSTACK_RENDER_VIDEO or other downstream tools. Use when you need to ingest a file before rendering." }, { "slug": "SHOTSTACK_GET_ASSETS", "name": "Get Asset", "description": "Tool to fetch details of a hosted asset by its unique identifier. Use when you need to retrieve information about videos, images, audio files, thumbnails, or poster images hosted on Shotstack's CDN." }, { "slug": "SHOTSTACK_GET_ASSETS_RENDER", "name": "Get Assets by Render ID", "description": "Tool to retrieve hosted assets by render ID. Use when you need to fetch one or more files (video, thumbnail, poster image) generated by a specific render job." }, { "slug": "SHOTSTACK_GET_INGEST_STATUS", "name": "Get Ingest Status (Deprecated)", "description": "DEPRECATED: Use SHOTSTACK_GET_SOURCE instead. Tool to retrieve the status and details of an ingested media asset. Poll until the asset status is 'ready' before using it in SHOTSTACK_RENDER_VIDEO; rendering against an unprocessed asset causes missing clips or failed renders." }, { "slug": "SHOTSTACK_GET_RENDER_CALLBACK", "name": "Get Render Callback", "description": "Tool to retrieve the webhook/callback URL configuration for a specific render job. Returns only callback settings (URL, method, headers), not render status or output URLs — use a separate render-status check to obtain final results." }, { "slug": "SHOTSTACK_GET_RENDER_STATUS", "name": "Get Render Status", "description": "Tool to retrieve the current status and details of a Shotstack render job by render ID. Use when polling a render until done or failed, typically after creating a render with SHOTSTACK_RENDER_VIDEO." }, { "slug": "SHOTSTACK_GET_SOURCE", "name": "Get Source Details", "description": "Tool to fetch the details of a specific source asset. Use when you need to inspect a source after uploading, check its status, or diagnose ingest/render failures—such as unsupported codecs, corrupt files, or bad URLs—before retrying." }, { "slug": "SHOTSTACK_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve details of a specific template. Use when you have the ID of an existing template and need its metadata." }, { "slug": "SHOTSTACK_GET_TEMPLATE_BY_VERSION", "name": "Get Template By Version", "description": "Tool to retrieve a template by template id and API version. Use when you need to fetch template details from a specific Edit API version." }, { "slug": "SHOTSTACK_GET_UPLOAD_URL", "name": "Get Upload URL", "description": "Tool to request a signed URL for direct file upload to Shotstack. Use when you need to upload a file to Shotstack storage. The response returns a signed URL that you use to upload the file using a PUT request with the binary file." }, { "slug": "SHOTSTACK_INSPECT_MEDIA", "name": "Inspect Media", "description": "Tool to inspect media metadata. Use before rendering to retrieve duration, resolution, frame rate, and format of an online media file — clip timecodes, trim points, and audio sync calculations depend on these values. Mixing assets without prior inspection can cause letterboxing, jitter, or audio sync issues in the final output." }, { "slug": "SHOTSTACK_LIST_SOURCES", "name": "List Sources", "description": "Tool to list all source assets. Use when you need to retrieve source entries with optional pagination." }, { "slug": "SHOTSTACK_LIST_SOURCES2", "name": "List Sources (with Environment)", "description": "Tool to list all ingested source files with environment selection. Use when you need to retrieve sources from stage (sandbox) or v1 (production) environment with optional pagination." }, { "slug": "SHOTSTACK_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all Shotstack templates for the account. Use after creating or updating templates to view your available templates." }, { "slug": "SHOTSTACK_LIST_TEMPLATES2", "name": "List Templates with Environment", "description": "Tool to list all Shotstack templates for the specified environment. Use when you need to retrieve templates from a specific environment (stage or production)." }, { "slug": "SHOTSTACK_POST_UPLOAD", "name": "Request Upload URL", "description": "Tool to request a signed URL for direct file upload. Use when you need to upload a file to Shotstack storage. The response returns a signed URL that expires in one hour." }, { "slug": "SHOTSTACK_RENDER_VIDEO", "name": "Render Video", "description": "Tool to initiate a new video render job. Use when you have defined a timeline and output settings and want to start rendering." }, { "slug": "SHOTSTACK_TRANSFER_ASSET", "name": "Transfer Asset", "description": "Tool to transfer a file from any publicly available URL to one or more Serve API destinations. Use when you need to copy a file from an external source to Shotstack's hosting service or other configured destinations." }, { "slug": "SHOTSTACK_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing template by its ID. Use when you need to modify a template's name or edit configuration. Both name and complete template definition must be provided." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "shotstack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "version", "displayName": "API Environment", "type": "string", "description": "The environment to use for the API request, either 'stage' for the staging environment or 'v1' for the production environment.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Shotstack API Key", "type": "string", "description": "The API key provided by Shotstack for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sidetracker", "name": "Sidetracker", "logo": "https://logos.composio.dev/api/sidetracker", "description": "Sidetracker is a cookie-free web analytics platform that tracks website visitors, sales funnels, and customer journeys. It provides real-time session tracking, lead management, conversion tracking, and marketing campaign analytics without relying on cookies.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIDETRACKER_GENERATE_QRCODE", "name": "Generate QR Code", "description": "Tool to generate a QR code for a given URL. Use when you need to create trackable QR codes." }, { "slug": "SIDETRACKER_GET_LIST_DETAILS", "name": "Get List Details", "description": "Tool to retrieve details of a specific list by its ID. Use after confirming the list ID is correct." }, { "slug": "SIDETRACKER_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve lists from Sidetracker. Use when you need to paginate through available lists." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sidetracker_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sidetracker API Key", "type": "string", "description": "Your Sidetracker API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "signable", "name": "Signable", "logo": "https://logos.composio.dev/api/signable", "description": "Get documents sent and signed securely, stay organised and reduce costs with Signable.", "category": "signatures", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "signable_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from API & Webhooks in Company Settings (https://signable.app/company-settings/developer)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "signaturely", "name": "Signaturely", "logo": "https://logos.composio.dev/api/signaturely", "description": "Signaturely is an electronic signature platform that allows users to sign documents online, offering features like automated signature requests, templates, and integrations with other platforms.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIGNATURELY_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new folder for organizing documents. Use when you need to create a folder structure for document management." }, { "slug": "SIGNATURELY_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get the current authenticated user information. Use this to retrieve account details including email, name, role, status, and avatar URL." }, { "slug": "SIGNATURELY_GET_FOLDER", "name": "Get Folder", "description": "Tool to get folder information by ID. Use when you need to retrieve details about a specific folder including its subfolders and documents count." }, { "slug": "SIGNATURELY_GET_RECENT_DOCUMENT", "name": "Get Recent Document", "description": "Tool to retrieve the most recent sent or completed document. Use when you need to fetch the latest document of a specific type (sent or completed)." }, { "slug": "SIGNATURELY_LIST_DOCUMENTS", "name": "List Documents", "description": "Tool to list all documents. Use after authenticating to retrieve documents with optional filters and pagination." }, { "slug": "SIGNATURELY_LIST_FOLDERS", "name": "List Folders", "description": "Tool to get list of folders for documents. Use to retrieve all folders for organizing documents." }, { "slug": "SIGNATURELY_LIST_TEAM_MEMBERS", "name": "List Team Members", "description": "Tool to list all team members in the Signaturely account. Returns team users with their account types and roles (Owner, Admin, User)." }, { "slug": "SIGNATURELY_RENAME_FOLDER", "name": "Rename Folder", "description": "Tool to rename a folder via API call. Use when you need to update the title of an existing folder." }, { "slug": "SIGNATURELY_SEARCH_TEMPLATES_DOCUMENTS", "name": "Search Templates or Documents", "description": "Tool to search for templates or documents by matching text. Use when you need to find specific templates or documents by name or text content." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "signaturely_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Signaturely API Key", "type": "string", "description": "Your Signaturely API key, obtainable from your Signaturely account under 'Settings' > 'API'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "signpath", "name": "Signpath", "logo": "https://logos.composio.dev/api/signpath", "description": "SignPath is a code signing service that integrates with your build system to automate the signing of your software artifacts, ensuring their authenticity and integrity.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIGNPATH_GET_HEALTH_CHECK", "name": "Get Health Check", "description": "Tool to check if the SignPath API is healthy and operational. Use this to verify API availability before performing other operations." }, { "slug": "SIGNPATH_LIST_CERTIFICATES", "name": "List Certificates", "description": "Retrieve all certificates available in a SignPath organization. Use this to discover certificate IDs needed for signing operations. Requires a valid organization_id which can be obtained from your SignPath account settings." }, { "slug": "SIGNPATH_LIST_PROJECTS", "name": "List Projects", "description": "Tool to list all projects for an organization. Use after confirming the organization ID to retrieve and paginate project records." }, { "slug": "SIGNPATH_RETRIEVE_SIGNING_POLICY_DETAILS", "name": "Retrieve Signing Policy Details", "description": "Retrieve signing policy details for code signing operations. Returns certificate info, RSA key parameters, and policy metadata for the authenticated user's accessible signing policies. Without filters, returns all policies where the user is assigned as Submitter." }, { "slug": "SIGNPATH_RETRIEVE_SYSTEM_INFO", "name": "Retrieve System Info", "description": "Retrieves SignPath system information including the application version and the web UI base URL. Use this tool to verify the SignPath installation version or to obtain the web interface URL." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "signpath_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Organization ID", "type": "string", "description": "Your SignPath organization ID. This can be found in the SignPath web application URL or in your signing policy details.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "SignPath API Token", "type": "string", "description": "The API token used for authenticating requests to SignPath's API. Generate this from your user profile or CI user settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "signwell", "name": "Signwell", "logo": "https://logos.composio.dev/api/signwell", "description": "SignWell is an electronic signature tool for legally binding e-signatures and faster document signing.", "category": "signatures", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIGNWELL_CREATE_DOCUMENT", "name": "Create Document", "description": "Tool to create and optionally send a new document for signing. Use when you have files and recipients defined and want to programmatically submit a signature request in one call." }, { "slug": "SIGNWELL_CREATE_DOCUMENT_FROM_TEMPLATE", "name": "Create Document from Template", "description": "Tool to create and optionally send a new document for signing from a template. Use when you need to generate a document using a pre-configured template with placeholders. If draft is set to true the document will not be sent." }, { "slug": "SIGNWELL_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to register a webhook callback URL. Use when you need to receive document event notifications." }, { "slug": "SIGNWELL_DELETE_DOCUMENT", "name": "Delete Document", "description": "Tool to delete a document (and cancel signing if in progress). Use when you need to remove a document by ID after confirming it." }, { "slug": "SIGNWELL_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Deletes a registered webhook by its ID. Use this to remove webhooks that are no longer needed. Returns no content on success." }, { "slug": "SIGNWELL_GET_CREDENTIALS", "name": "Get Credentials", "description": "Retrieve account information for the authenticated API key. Returns comprehensive details including user profile, account settings, workspace configuration, and contact information. Use this to validate API credentials, check account capabilities (like template creation limits), or get user/account IDs for other API calls." }, { "slug": "SIGNWELL_GET_DOCUMENT", "name": "Get Document", "description": "Tool to return a document and all associated document data. Use when you need to fetch document details by ID." }, { "slug": "SIGNWELL_LIST_BULK_SENDS", "name": "List Bulk Sends", "description": "Tool to list all Bulk Sends. Use after setting up API credentials to retrieve paginated records." }, { "slug": "SIGNWELL_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all registered webhooks. Use when you need to retrieve the active webhooks for your SignWell account after setup." }, { "slug": "SIGNWELL_SEND_REMINDER", "name": "Send Reminder", "description": "Tool to send a reminder email to recipients that have not signed yet. Use when you need to prompt unsigned recipients to complete their signature." }, { "slug": "SIGNWELL_UPDATE_AND_SEND_DOCUMENT", "name": "Update and Send Document", "description": "Tool to update a draft document and send it to recipients for signing. Use when you need to modify document settings and initiate the signing process." }, { "slug": "SIGNWELL_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing template in SignWell. Use when you need to modify template properties such as name, subject, message, reminders, expiration, or other settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "signwell_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SignWell API Key", "type": "string", "description": "The API key used for authenticating requests to the SignWell API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "similarweb_digitalrank_api", "name": "SimilarWeb Digital Rank API", "logo": "https://logos.composio.dev/api/similarweb_digitalrank_api", "description": "Provides free access to global website ranking data for benchmarking and competitive analysis.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMILARWEB_DIGITALRANK_API_GET_RANK_TRACKER_DESCRIBE", "name": "Get Rank Tracker Campaign Metadata", "description": "Tool to retrieve campaign metadata for rank tracking. Returns Campaign IDs and Scraping Configurations needed to query other Rank Tracker APIs." }, { "slug": "SIMILARWEB_DIGITALRANK_API_GET_SIMILAR_RANK_TOP_SITES", "name": "Get Similar Rank Top Sites", "description": "Tool to retrieve a list of top-ranking websites globally or filtered by country and category. Use when you need to discover popular websites based on SimilarWeb's traffic data." }, { "slug": "SIMILARWEB_DIGITALRANK_API_GET_SUBSCRIPTION_STATUS", "name": "Get Subscription Status", "description": "Tool to check the remaining subscription usage for the user." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "similarweb_digitalrank_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Similarweb API Key", "type": "string", "description": "Your personalized Similarweb API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "simla_com", "name": "Simla.com", "logo": "https://logos.composio.dev/api/simla_com", "description": "Simla.com is an omnichannel CRM platform with AI for automating communications, measuring team performance, managing customer data, and integrating delivery services and order management.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 141, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMLA_COM_ADD_CUSTOMER_INTERACTION_FAVORITE", "name": "Add Customer Interaction Favorite", "description": "Tool to add a product offer to a customer's list of favorites. Use when you need to save a specific product to a customer's favorites on a particular site." }, { "slug": "SIMLA_COM_COMBINE_CUSTOMERS", "name": "Combine Customers", "description": "Tool to combine multiple customers into one. The specified customers will be merged into the result customer and then deleted. Use when you need to consolidate multiple customer records. Note: This operation is performed asynchronously - use /api/v5/customers/history to track the result." }, { "slug": "SIMLA_COM_COMBINE_CUSTOMERS_CORPORATE", "name": "Combine Corporate Customers", "description": "Tool to combine multiple corporate customers into one. The specified customers will be merged into the result customer and then deleted. Use when you need to consolidate multiple corporate customer records. Note: This operation is performed asynchronously - use /api/v5/customers-corporate/history to track the result." }, { "slug": "SIMLA_COM_COMBINE_ORDERS", "name": "Combine Orders", "description": "Tool to combine two orders into one. The source order will be merged into the result order using the specified technique. Use when you need to consolidate order data from one order into another." }, { "slug": "SIMLA_COM_CREATE_COST", "name": "Create Cost", "description": "Create a new cost record in Simla CRM. Use this to track business expenses with period dates, amounts, and cost categories. Required fields: dateFrom (start date), dateTo (end date), summ (amount), and costItem (category code). The cost amount must be positive and costItem must match an existing cost item in the system. Optionally associate the cost with specific stores or users." }, { "slug": "SIMLA_COM_CREATE_CUSTOMER", "name": "Create Customer", "description": "Creates a new customer in Simla.com. All customer fields are optional - provide at least one field (e.g., firstName, email, or phone) to create a customer. Returns the customer ID upon successful creation." }, { "slug": "SIMLA_COM_CREATE_CUSTOMER_CORPORATE", "name": "Create Corporate Customer", "description": "Creates a new corporate customer in Simla.com. Use when you need to add a new business or organization as a customer. At least one field (typically nickName or externalId) should be provided. Returns the corporate customer ID upon successful creation." }, { "slug": "SIMLA_COM_CREATE_CUSTOMER_INTERACTION_CART_SET", "name": "Create Customer Interaction Cart Set", "description": "Tool to create or overwrite shopping cart data for a customer. Use when you need to set cart contents for customer interaction tracking. This overwrites any existing cart data for the specified customer." }, { "slug": "SIMLA_COM_CREATE_CUSTOMERS_CORPORATE_ADDRESSES", "name": "Create Corporate Customer Address", "description": "Creates a new address for a corporate customer in Simla.com. Use when adding a delivery or billing address to an existing corporate customer account. The address can be specified as simple text or with detailed components (street, city, region, etc.)." }, { "slug": "SIMLA_COM_CREATE_CUSTOMERS_CORPORATE_COMPANIES", "name": "Create Corporate Customer Company", "description": "Tool to create a company for a corporate customer in Simla.com. Use when you need to add a new company to an existing corporate customer record. Returns the newly created company ID on success." }, { "slug": "SIMLA_COM_CREATE_CUSTOMERS_CORPORATE_CONTACTS", "name": "Create Corporate Customer Contact", "description": "Tool to create a link between a corporate customer and a contact person. Use when you need to associate an existing customer as a contact for a corporate customer entity." }, { "slug": "SIMLA_COM_CREATE_CUSTOMERS_CORPORATE_NOTES", "name": "Create Corporate Customer Note", "description": "Tool to create a note for a corporate customer. Use when you need to add notes or comments to corporate customer records. Requires either customer ID or external ID to identify the corporate customer." }, { "slug": "SIMLA_COM_CREATE_CUSTOMERS_NOTES", "name": "Create Customer Note", "description": "Tool to create a note for a customer. Use when you need to add notes or comments to customer records. Requires either customer ID or external ID to identify the customer." }, { "slug": "SIMLA_COM_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a custom field for a specified entity in Simla. Use when you need to extend orders, customers, corporate customers, or companies with custom metadata fields." }, { "slug": "SIMLA_COM_CREATE_CUSTOM_FIELDS_DICTIONARIES", "name": "Create Custom Fields Dictionary", "description": "Tool to create a custom fields dictionary with elements. Use when you need to create a new directory for dictionary-type or multiselect_dictionary-type custom fields." }, { "slug": "SIMLA_COM_CREATE_LOYALTY_CALCULATE", "name": "Calculate Loyalty Discount", "description": "Tool to calculate maximum loyalty discount and bonuses for an order. Use when you need to preview loyalty benefits before order creation or show customers potential savings based on their loyalty status." }, { "slug": "SIMLA_COM_CREATE_ORDER", "name": "Create Order", "description": "Create a new order in Simla with customer details and line items. This action registers an order with customer information, items (with offer IDs), delivery address, and optional metadata. The API automatically creates customers and offers if they don't exist. Returns complete order details including assigned order ID and number. Key requirements: - At least one item with a valid offer identifier (id, externalId, or xmlId) - Quantity must be greater than 0 - Customer contact info (name/phone/email) is optional but recommended" }, { "slug": "SIMLA_COM_CREATE_ORDERS_LINK", "name": "Create Orders Link", "description": "Tool to create a link between multiple orders in Simla. Use when you need to associate two or more orders together with an optional comment." }, { "slug": "SIMLA_COM_CREATE_ORDERS_PACKS", "name": "Create Order Pack", "description": "Tool to create a new order pack in Simla. Use when you need to register pack shipment details for an order item, including store location, quantity, shipment date, and invoice/delivery note numbers." }, { "slug": "SIMLA_COM_CREATE_ORDERS_PAYMENTS_CREATE", "name": "Create Order Payment", "description": "Create a new payment record for an order in Simla CRM. Use when recording payments received for orders. Required fields: type (payment type code), amount (must be positive), and order reference (id or externalId). The payment type must match an existing payment type in the system (e.g., 'cash', 'bank-card'). Use this to track payment transactions against specific orders." }, { "slug": "SIMLA_COM_CREATE_REFERENCE_COURIER", "name": "Create Reference Courier", "description": "Tool to create a new courier in Simla.com. Use when you need to add a new courier to the system for delivery management. Returns the courier ID upon successful creation." }, { "slug": "SIMLA_COM_CREATE_REFERENCE_CURRENCIES", "name": "Create Reference Currency", "description": "Tool to create a new currency in Simla.com. Use when you need to add a new currency to the system for financial operations and multi-currency support." }, { "slug": "SIMLA_COM_CREATE_STORE_INVENTORIES_UPLOAD", "name": "Create Store Inventories Upload", "description": "Tool to batch update inventory quantities and purchase prices across warehouses/stores. Use when you need to sync stock levels and cost pricing for offers. Updates leftover stocks (available quantity) and purchasing prices for existing offers in the system." }, { "slug": "SIMLA_COM_CREATE_STORE_PRODUCT_GROUPS", "name": "Create Store Product Groups", "description": "Tool to create a new product group in Simla.com store. Use when you need to add a new product group for organizing products. Returns the product group ID upon successful creation." }, { "slug": "SIMLA_COM_CREATE_STORE_PRODUCTS_BATCH_CREATE", "name": "Batch Create Store Products", "description": "Tool to batch create products and services in the store catalog. Use when you need to create multiple products at once. Each product requires a name, article (SKU), and catalogId that matches the catalog parameter." }, { "slug": "SIMLA_COM_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task. Use after gathering task details and assignees." }, { "slug": "SIMLA_COM_CREATE_WEB_ANALYTICS_VISITS_UPLOAD", "name": "Create Web Analytics Visits Upload", "description": "Tool to batch upload web analytics visit records to Simla CRM. Use when tracking customer visits with traffic source attribution. Each visit must include site code, customer identifier, timestamp, and traffic source/medium information." }, { "slug": "SIMLA_COM_DELETE_COST", "name": "Delete Cost", "description": "Tool to delete a cost by ID. Use when you need to remove a cost record from the system." }, { "slug": "SIMLA_COM_DELETE_CUSTOMERS_CORPORATE_NOTE", "name": "Delete Corporate Customer Note", "description": "Tool to delete a corporate customer note by ID. Use when you need to remove a note record from a corporate customer." }, { "slug": "SIMLA_COM_DELETE_CUSTOMERS_NOTE", "name": "Delete Customer Note", "description": "Tool to delete a customer note by ID. Use when you need to remove a note record from a customer." }, { "slug": "SIMLA_COM_DELETE_ORDER_PAYMENT", "name": "Delete Order Payment", "description": "Tool to delete an order payment by ID. Use when you need to remove a payment record from an order." }, { "slug": "SIMLA_COM_EDIT_COST", "name": "Edit Cost", "description": "Tool to edit an existing cost record by ID. Use when you need to update cost details such as amount, dates, cost item, or attribution information for expense tracking and analysis." }, { "slug": "SIMLA_COM_EDIT_CUSTOMER", "name": "Edit Customer", "description": "Tool to edit an existing customer. Use when you need to update customer details by external ID." }, { "slug": "SIMLA_COM_EDIT_CUSTOMER_CORPORATE", "name": "Edit Corporate Customer", "description": "Tool to edit an existing corporate customer. Use when you need to update corporate customer details such as nickname, discount, VIP status, or custom fields by external ID." }, { "slug": "SIMLA_COM_EDIT_CUSTOMERS_CORPORATE_ADDRESS", "name": "Edit Corporate Customer Address", "description": "Tool to edit an address for a corporate customer. Use when you need to update address details (name, city, street, building, etc.) for a specific corporate customer address by its external ID." }, { "slug": "SIMLA_COM_EDIT_CUSTOMERS_CORPORATE_COMPANY", "name": "Edit Corporate Customer Company", "description": "Tool to edit a company associated with a corporate customer. Use when you need to update company details such as name or main status for a corporate customer's company entity." }, { "slug": "SIMLA_COM_EDIT_CUSTOMERS_CORPORATE_CONTACTS", "name": "Edit Corporate Customer Contact", "description": "Tool to edit the link between a corporate customer and a contact person. Use when you need to update contact properties such as marking a contact as the main contact person for a corporate customer." }, { "slug": "SIMLA_COM_EDIT_CUSTOM_FIELD", "name": "Edit Custom Field", "description": "Edit an existing custom field's properties by entity type and field code. Use this to modify custom field settings such as display name, description, type, visibility flags, sort order, default values, or settings (for dictionary-type fields). At least one property besides entity and code must be provided. The field must already exist." }, { "slug": "SIMLA_COM_EDIT_CUSTOM_FIELDS_DICTIONARY", "name": "Edit Custom Fields Dictionary", "description": "Tool to edit an existing custom fields directory by code. Use when you need to update the directory name or modify its elements (add, remove, or reorder entries)." }, { "slug": "SIMLA_COM_EDIT_DELIVERY_GENERIC_SETTING", "name": "Edit Delivery Generic Setting", "description": "Tool to register or edit a delivery service integration configuration. Use when you need to create a new delivery service integration or update existing delivery settings including API endpoints, statuses, custom fields, and integration metadata." }, { "slug": "SIMLA_COM_EDIT_FILE", "name": "Edit File", "description": "Tool to edit an existing file by ID. Use when you need to update file properties such as filename." }, { "slug": "SIMLA_COM_EDIT_INTEGRATION_MODULE", "name": "Edit Integration Module", "description": "Tool to create or edit an integration module configuration. Use when you need to register or update an integration module with its base URL, client ID, and display settings." }, { "slug": "SIMLA_COM_EDIT_ORDER", "name": "Edit Order", "description": "Tool to edit an existing order by external ID. Use when you need to update order details by external ID." }, { "slug": "SIMLA_COM_EDIT_ORDERS_PAYMENT", "name": "Edit Orders Payment", "description": "Tool to edit an existing order payment. Use when you need to update payment details such as amount, status, or type." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_COST_GROUP", "name": "Edit Reference Cost Group", "description": "Tool to edit an existing cost group by code. Use when you need to update cost group properties such as name, color, active status, or display ordering." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_COST_ITEM", "name": "Edit Reference Cost Item", "description": "Tool to edit an existing cost item reference by code. Use when you need to update cost item properties such as name, group, type, or activation status in the system's cost item directory." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_COURIER", "name": "Edit Reference Courier", "description": "Tool to edit an existing courier by ID. Use when you need to update courier details such as name, email, phone, or active status." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_CURRENCY", "name": "Edit Reference Currency", "description": "Tool to edit an existing currency configuration by ID. Use when you need to update currency properties such as base currency status, auto-conversion settings, or conversion rates." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_DELIVERY_SERVICE", "name": "Edit Reference Delivery Service", "description": "Tool to edit an existing delivery service by code. Use when you need to update delivery service properties such as name, code, or active status." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_DELIVERY_TYPES", "name": "Edit Reference Delivery Type", "description": "Tool to create or edit a delivery type in Simla.com. Use when you need to add a new delivery type or modify an existing one. This endpoint handles both creation (if the code doesn't exist) and updates (if it does). Provide at least the name and active status." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_ORDER_METHOD", "name": "Edit Reference Order Method", "description": "Tool to edit an existing order method reference by code. Use when you need to update order method properties such as name, active status, or default settings in the system's order method directory." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_ORDER_TYPE", "name": "Edit Reference Order Type", "description": "Tool to create or edit an order type by code. Use when you need to create a new order type or update properties of an existing one such as name, active status, or default settings." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_PAYMENT_STATUS", "name": "Edit Reference Payment Status", "description": "Tool to edit an existing payment status reference by code. Use when you need to update payment status properties such as name, active status, or default settings in the system's payment status directory." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_PAYMENT_TYPE", "name": "Edit Reference Payment Type", "description": "Tool to edit an existing payment type or create a new one by code. Use when you need to update payment type properties such as name, code, active status, description, ordering, or default settings." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_PRICE_TYPE", "name": "Edit Reference Price Type", "description": "Tool to edit an existing price type in the reference data. Use when you need to update price type properties such as name, active status, default flag, or associated customer groups." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_PRODUCT_STATUS", "name": "Edit Product Status", "description": "Tool to create or edit product status in the reference directory. Use when you need to add a new product status or update an existing one. Set code to 'new' when creating a new status, or use the existing status code to edit." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_STATUSES", "name": "Edit Reference Statuses", "description": "Tool to edit an existing order status reference by code. Use when you need to update order status properties such as name, active status, display ordering, or group classification in the system's status directory." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_STORES", "name": "Edit Reference Stores", "description": "Tool to create or edit a warehouse/store by code. Use when you need to update store information such as name, contact details, address, or active status." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_SUBSCRIPTION", "name": "Edit Reference Subscription", "description": "Tool to create or edit a subscription category in Simla. Use when you need to configure subscription categories for different communication channels (email, sms, waba). Creates a new subscription category if the code doesn't exist, or updates an existing one." }, { "slug": "SIMLA_COM_EDIT_REFERENCE_UNIT", "name": "Edit Reference Unit", "description": "Tool to create or edit a unit of measurement reference by code. Use when you need to add new units or update existing unit properties such as name or symbol in the system's unit directory." }, { "slug": "SIMLA_COM_EDIT_STORE_PRODUCT_GROUP", "name": "Edit Store Product Group", "description": "Tool to edit an existing product group by external ID. Use when you need to update product group details such as name, site, or active status." }, { "slug": "SIMLA_COM_EDIT_STORE_PRODUCTS_BATCH", "name": "Edit Store Products Batch", "description": "Tool to batch edit multiple products and services at once. Use when you need to update multiple products in a single operation. This action allows updating multiple product fields (name, price, quantity, active status, etc.) for multiple products in a single API call. Each product must be identified by its internal ID. Returns the count of successfully processed products and any products that were not found." }, { "slug": "SIMLA_COM_EDIT_STORE_SETTING", "name": "Edit Store Setting", "description": "Tool to register or update warehouse system configuration in Simla. Use when you need to configure a warehouse integration with name, code, and account URL." }, { "slug": "SIMLA_COM_EDIT_TASK", "name": "Edit Task", "description": "Tool to edit an existing task. Use after confirming task ID and fields to update. Updates only provided fields on the task." }, { "slug": "SIMLA_COM_EDIT_TELEPHONY_SETTING", "name": "Edit Telephony Setting", "description": "Tool to create or edit a telephony integration setting in Simla. Use when you need to register or update a telephony integration with its configuration including client ID, name, active status, and optional webhook URLs for call handling." }, { "slug": "SIMLA_COM_FIX_CUSTOMERS_CORPORATE_EXTERNAL_IDS", "name": "Fix Corporate Customers External IDs", "description": "Tool to perform mass recording of corporate customer external IDs in Simla. Use when you need to map internal corporate customer IDs to external system identifiers in bulk. Accepts an array of corporate customer ID mappings and assigns external IDs to the corresponding corporate customers." }, { "slug": "SIMLA_COM_FIX_CUSTOMERS_EXTERNAL_IDS", "name": "Fix Customers External IDs", "description": "Tool to perform mass recording of customer external IDs in Simla. Use when you need to map internal customer IDs to external system identifiers in bulk. Accepts an array of customer ID mappings and assigns external IDs to the corresponding customers." }, { "slug": "SIMLA_COM_FIX_ORDERS_EXTERNAL_IDS", "name": "Fix Orders External IDs", "description": "Tool to perform mass recording of order external IDs in Simla. Use when you need to map internal order IDs to external system identifiers in bulk. Accepts an array of order ID mappings and assigns external IDs to the corresponding orders." }, { "slug": "SIMLA_COM_GET_API_CREDENTIALS", "name": "Get API Credentials", "description": "Tool to retrieve available API methods and stores for the current API key. Use when you need to verify API permissions or discover which endpoints and sites are accessible." }, { "slug": "SIMLA_COM_GET_API_VERSIONS", "name": "Get API Versions", "description": "Tool to retrieve a list of available API versions. Use when you need to discover which API versions are supported by the system." }, { "slug": "SIMLA_COM_GET_COST", "name": "Get Cost", "description": "Retrieves detailed information about a specific cost record by its ID. Use this when you need to fetch cost data including amount, dates, cost item, and attribution details before analyzing or updating cost records." }, { "slug": "SIMLA_COM_GET_CUSTOMER", "name": "Get Customer", "description": "Retrieves detailed information about a specific customer by ID or external ID. Returns comprehensive customer data including contact info, address, subscriptions, order statistics, and custom fields. Use this when you need complete customer details for a known identifier." }, { "slug": "SIMLA_COM_GET_CUSTOMER_CORPORATE", "name": "Get Corporate Customer", "description": "Retrieves detailed information about a corporate customer by external ID. Returns comprehensive corporate customer data including tags, custom fields, order statistics, and discount information. Use this when you need complete corporate customer details for a known external identifier." }, { "slug": "SIMLA_COM_GET_CUSTOMER_INTERACTION_FAVORITES", "name": "Get Customer Interaction Favorites", "description": "Tool to retrieve a list of favorite product offers for a specific customer. Use when you need to fetch customer's saved favorites from a particular site." }, { "slug": "SIMLA_COM_GET_CUSTOMERS", "name": "Get Customers", "description": "Tool to retrieve a list of customers. Use after setting optional filters (IDs, email, custom fields) to fetch paginated customer data." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_CORPORATE", "name": "Get Corporate Customers", "description": "Tool to retrieve a list of corporate customers matching the specified filters. Use after setting optional filters (managers, manager groups, discount card, IDs) to fetch paginated corporate customer data." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_CORPORATE_COMPANIES", "name": "Get Corporate Customer Companies", "description": "Tool to retrieve the list of companies associated with a corporate customer contact person. Use when you need to see which companies are linked to a specific corporate customer." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_CORPORATE_HISTORY", "name": "Get Corporate Customers History", "description": "Tool to retrieve corporate customer change history for synchronization or audit purposes. Use when tracking corporate customer modifications over time or implementing incremental data sync with sinceId." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_CORPORATE_NOTES", "name": "Get Corporate Customers Notes", "description": "Tool to retrieve a list of corporate customer notes. Use when you need to fetch notes with optional filters (note IDs, corporate customer IDs, manager IDs, text search, date range) and pagination." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_HISTORY", "name": "Get Customers History", "description": "Tool to retrieve customer change history for synchronization or audit purposes. Use when tracking customer modifications over time or implementing incremental data sync with sinceId." }, { "slug": "SIMLA_COM_GET_CUSTOMERS_NOTES", "name": "Get Customers Notes", "description": "Tool to retrieve a list of customer notes. Use when you need to fetch notes with optional filters (note IDs, customer IDs, manager IDs, text search, date range) and pagination." }, { "slug": "SIMLA_COM_GET_CUSTOM_FIELD", "name": "Get Custom Field", "description": "Tool to retrieve detailed information about a specific custom field by entity and code. Use when you need to get properties and settings of a particular custom field." }, { "slug": "SIMLA_COM_GET_CUSTOM_FIELDS", "name": "Get Custom Fields", "description": "Tool to list custom fields. Use when retrieving custom field definitions with optional filtering by entity or code." }, { "slug": "SIMLA_COM_GET_CUSTOM_FIELDS_DICTIONARIES", "name": "Get Custom Fields Dictionaries", "description": "Tool to retrieve the list of custom dictionaries. Use when you need to get available custom directory definitions with their elements and codes." }, { "slug": "SIMLA_COM_GET_CUSTOM_FIELDS_DICTIONARY", "name": "Get Custom Fields Dictionary", "description": "Tool to retrieve a custom fields dictionary by its code identifier. Use when you need to get detailed information about a specific dictionary including its name, code, and all elements." }, { "slug": "SIMLA_COM_GET_DELIVERY_GENERIC_SETTING", "name": "Get Delivery Generic Setting", "description": "Tool to retrieve integration configuration for a delivery module instance. Use when you need to fetch delivery service settings including metadata, supported actions, and status mappings." }, { "slug": "SIMLA_COM_GET_DELIVERY_SHIPMENTS", "name": "Get Delivery Shipments", "description": "Tool to retrieve a list of delivery shipments. Use when you need to fetch shipments with optional date filters and pagination." }, { "slug": "SIMLA_COM_GET_FILES", "name": "Get Files", "description": "Tool to retrieve a list of files. Use when you need to fetch files with optional filters like IDs and pagination." }, { "slug": "SIMLA_COM_GET_LOYALTY_ACCOUNTS", "name": "Get Loyalty Accounts", "description": "Tool to retrieve a list of customer loyalty program accounts. Use when you need to fetch loyalty accounts with optional filters (loyalty program IDs, phone number) and pagination." }, { "slug": "SIMLA_COM_GET_LOYALTY_BONUS_OPERATIONS", "name": "Get Loyalty Bonus Operations", "description": "Tool to retrieve the history of bonus account operations for all participations. Use when you need to fetch loyalty bonus transaction history with optional date range and type filters." }, { "slug": "SIMLA_COM_GET_LOYALTY_LOYALTIES", "name": "Get Loyalty Loyalties", "description": "Tool to retrieve a list of loyalty programs. Use when you need to fetch available loyalty programs with optional pagination." }, { "slug": "SIMLA_COM_GET_ORDER", "name": "Get Order", "description": "Tool to retrieve detailed information about a specific order. Use when you need to fetch full order data by external ID before further processing." }, { "slug": "SIMLA_COM_GET_ORDERS", "name": "Get Orders", "description": "Tool to retrieve a list of orders. Use when you need to fetch orders with optional filters (order numbers, custom fields) and pagination." }, { "slug": "SIMLA_COM_GET_ORDERS_HISTORY", "name": "Get Orders History", "description": "Tool to retrieve order change history. Use when you need to track changes to orders over time with optional date filters and pagination via sinceId." }, { "slug": "SIMLA_COM_GET_ORDERS_PACKS_HISTORY", "name": "Get Orders Packs History", "description": "Tool to retrieve the history of order packing changes. Use when you need to track pack status updates, modifications, or apply warehouse system synchronization. Call without parameters initially, then use sinceId for incremental updates." }, { "slug": "SIMLA_COM_GET_PRODUCTS", "name": "Get Products", "description": "Tool to retrieve a list of products. Use when you need to list products with optional filters." }, { "slug": "SIMLA_COM_GET_REFERENCE_COST_GROUPS", "name": "Get Reference Cost Groups", "description": "Tool to retrieve a list of all cost groups configured in the system. Use when you need to discover available cost groups for organizing expenses or costs." }, { "slug": "SIMLA_COM_GET_REFERENCE_COST_ITEMS", "name": "Get Reference Cost Items", "description": "Tool to retrieve a list of all cost items configured in the system. Use when you need to discover available cost item codes for order or operation cost tracking." }, { "slug": "SIMLA_COM_GET_REFERENCE_COUNTRIES", "name": "Get Reference Countries", "description": "Tool to retrieve a list of all available country ISO codes in the system. Use when you need to discover available countries for order or customer creation." }, { "slug": "SIMLA_COM_GET_REFERENCE_COURIERS", "name": "Get Reference Couriers", "description": "Tool to retrieve the list of available couriers. Use when you need to fetch courier information or get courier codes for deliveries." }, { "slug": "SIMLA_COM_GET_REFERENCE_CURRENCIES", "name": "Get Reference Currencies", "description": "Tool to retrieve the list of all configured currencies in the system. Use when you need to discover available currencies for order creation or financial operations." }, { "slug": "SIMLA_COM_GET_REFERENCE_DELIVERY_SERVICES", "name": "Get Reference Delivery Services", "description": "Tool to retrieve a list of all configured delivery services in the system. Use when you need to discover available delivery services for order creation or to get delivery service codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_DELIVERY_TYPES", "name": "Get Reference Delivery Types", "description": "Tool to retrieve the list of delivery types from the system. Use when you need to discover available delivery types for order management or to get delivery type codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_LEGAL_ENTITIES", "name": "Get Reference Legal Entities", "description": "Tool to retrieve a list of all configured legal entities in the system. Use when you need to get available legal entity codes or legal entity details for business operations." }, { "slug": "SIMLA_COM_GET_REFERENCE_MG_CHANNELS", "name": "Get MessageGateway Channels", "description": "Tool to retrieve a list of all MessageGateway channels in the system. Use when you need to discover available messaging channels for communication." }, { "slug": "SIMLA_COM_GET_REFERENCE_ORDER_METHODS", "name": "Get Reference Order Methods", "description": "Tool to retrieve a list of all available order methods in the system. Use when you need to discover available order methods for order creation or to get order method codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_ORDER_TYPES", "name": "Get Reference Order Types", "description": "Tool to retrieve the list of order types from the system. Use when you need to discover available order types for order management or to get order type codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_PAYMENT_STATUSES", "name": "Get Reference Payment Statuses", "description": "Tool to retrieve the list of payment statuses configured in the system. Use when you need to discover available payment statuses or get payment status codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_PAYMENT_TYPES", "name": "Get Reference Payment Types", "description": "Tool to retrieve a list of all configured payment types in the system. Use when you need to discover available payment methods for orders or to get payment type codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_PRICE_TYPES", "name": "Get Reference Price Types", "description": "Tool to retrieve the list of price types from the reference data. Use when you need to discover available price types for order or product pricing." }, { "slug": "SIMLA_COM_GET_REFERENCE_PRODUCT_STATUSES", "name": "Get Product Statuses", "description": "Tool to retrieve the list of all product statuses configured in the system. Use when you need to discover available product statuses for order items or to get status codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_STATUSES", "name": "Get Reference Statuses", "description": "Tool to retrieve the list of order statuses from the system. Use when you need to discover available statuses for order management or to get status codes." }, { "slug": "SIMLA_COM_GET_REFERENCE_STATUS_GROUPS", "name": "Get Reference Status Groups", "description": "Tool to retrieve the list of all order status groups in the system. Use when you need to discover available status groups for order processing or categorization." }, { "slug": "SIMLA_COM_GET_REFERENCE_SUBSCRIPTIONS", "name": "Get Reference Subscriptions", "description": "Tool to retrieve the list of all subscription categories in the system. Use when you need to discover available subscription channels (email, sms, waba) and their configuration." }, { "slug": "SIMLA_COM_GET_REFERENCE_UNITS", "name": "Get Reference Units", "description": "Tool to retrieve the list of units of measurement from the system. Use when you need to discover available units for product management or to get unit codes." }, { "slug": "SIMLA_COM_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a list of customer segments. Use when you need to list segments with optional filters after authentication." }, { "slug": "SIMLA_COM_GET_SETTINGS", "name": "Get Settings", "description": "Tool to retrieve system settings including default currency, language, timezone, and message gateway configuration. Use when you need to discover system-wide configuration or settings for the account." }, { "slug": "SIMLA_COM_GET_SITES", "name": "Get Sites", "description": "Tool to retrieve a list of all configured sites/stores in the system. Use when you need to discover available sites for order creation or to get site codes." }, { "slug": "SIMLA_COM_GET_STATISTIC_UPDATE", "name": "Get Statistic Update", "description": "Tool to trigger an update of CRM basic statistics. Use when you need to refresh statistical data in the system." }, { "slug": "SIMLA_COM_GET_STORE_INVENTORIES", "name": "Get Store Inventories", "description": "Tool to retrieve store inventories with leftover stocks and purchasing prices. Use when you need to check inventory levels across warehouses or get cost pricing information for offers." }, { "slug": "SIMLA_COM_GET_STORE_OFFERS", "name": "Get Store Offers", "description": "Tool to retrieve a list of store offers with pagination support. Use when you need to fetch available offers from the store catalog." }, { "slug": "SIMLA_COM_GET_STORE_PRODUCTS_PROPERTIES", "name": "Get Store Products Properties", "description": "Tool to retrieve a list of product properties from the store. Use when you need to fetch product property definitions with pagination support." }, { "slug": "SIMLA_COM_GET_STORE_PRODUCTS_PROPERTIES_VALUES", "name": "Get Store Products Properties Values", "description": "Tool to retrieve product property values from the store. Use when you need to list property values with optional filters." }, { "slug": "SIMLA_COM_GET_STORES", "name": "Get Stores", "description": "Tool to retrieve a list of all warehouses/stores in the system. Use when you need to discover available stores for inventory management or order fulfillment." }, { "slug": "SIMLA_COM_GET_TASK", "name": "Get Task", "description": "Retrieves detailed information about a specific task by its ID. Use this to view task details including description, deadline, completion status, assigned performer, and related entities (orders, customers) before editing, completing, or analyzing tasks." }, { "slug": "SIMLA_COM_GET_TASKS", "name": "Get Tasks", "description": "Tool to retrieve a list of tasks with optional filters. Use when you need to fetch tasks after specifying filter criteria like IDs, status, or date range." }, { "slug": "SIMLA_COM_GET_TASKS_COMMENTS", "name": "Get Tasks Comments", "description": "Tool to retrieve comments on a specific task by task ID. Use when you need to view all comments associated with a task for context, collaboration, or audit purposes." }, { "slug": "SIMLA_COM_GET_TASKS_HISTORY", "name": "Get Tasks History", "description": "Tool to retrieve task change history. Use when you need to track changes to tasks over time. Use sinceId for incremental synchronization." }, { "slug": "SIMLA_COM_GET_TELEPHONY_SETTING", "name": "Get Telephony Setting", "description": "Tool to retrieve telephony integration settings by code. Use when you need to fetch configuration details for a specific telephony integration." }, { "slug": "SIMLA_COM_GET_USER", "name": "Get User", "description": "Tool to retrieve detailed information about a specific user by ID. Use when you need complete user data for a known user identifier." }, { "slug": "SIMLA_COM_GET_USER_GROUPS", "name": "Get User Groups", "description": "Tool to retrieve a list of user groups with their permissions and configuration. Use when you need to fetch available user groups with optional pagination." }, { "slug": "SIMLA_COM_GET_USERS", "name": "Get Users", "description": "Tool to retrieve a list of users. Use when you need to fetch users with optional pagination, filtering, and sorting." }, { "slug": "SIMLA_COM_UPDATE_CUSTOMER_SUBSCRIPTIONS", "name": "Update Customer Subscriptions", "description": "Tool to subscribe or unsubscribe a customer to mailing channels. Use when you need to manage customer communication preferences across different channels (email, SMS, WhatsApp, etc.)." }, { "slug": "SIMLA_COM_UPDATE_USER_STATUS", "name": "Update User Status", "description": "Tool to change a user's status. Use when you need to update a user's current work status." }, { "slug": "SIMLA_COM_UPLOAD_COSTS", "name": "Upload Costs", "description": "Tool to batch upload cost records to Simla CRM. Use when you need to create multiple cost entries at once for tracking expenses like advertising, salaries, or other operational costs. Maximum 50 costs per request." }, { "slug": "SIMLA_COM_UPLOAD_CUSTOMERS", "name": "Upload Customers", "description": "Tool to batch upload customer records to Simla CRM. Use when you need to create multiple customers at once. Maximum 50 customers per request." }, { "slug": "SIMLA_COM_UPLOAD_CUSTOMERS_CORPORATE", "name": "Upload Corporate Customers", "description": "Tool to batch upload corporate customers to Simla.com CRM. Use when you need to create multiple corporate customer records at once with their companies, contacts, and addresses. Maximum 50 customers per request." }, { "slug": "SIMLA_COM_UPLOAD_ORDERS", "name": "Upload Orders", "description": "Upload multiple orders to Simla in a single batch operation. Use when you need to create multiple orders efficiently (up to 50 per request). Each order requires an externalId and at least one item with an offer identifier. The API processes all orders and returns details for successful uploads along with any errors." }, { "slug": "SIMLA_COM_UPLOAD_STORE_PRICES", "name": "Upload Store Prices", "description": "Tool to batch update SKU prices in Simla store catalog. Use when you need to set or update prices for product offers. Can also remove specific price types using the remove flag." }, { "slug": "SIMLA_COM_UPLOAD_WEB_ANALYTICS_CLIENT_IDS", "name": "Upload Web Analytics Client IDs", "description": "Tool to batch upload web analytics client IDs to Simla CRM for tracking purposes. Use when you need to associate Google Analytics (or other web analytics) client IDs with orders and customers in the system." }, { "slug": "SIMLA_COM_UPLOAD_WEB_ANALYTICS_SOURCES", "name": "Upload Web Analytics Sources", "description": "Tool to batch upload web analytics sources to Simla CRM. Use when tracking traffic sources for orders or customers from marketing campaigns. Each source must include at least one identifier (order, customer, or clientId) along with optional UTM parameters (source, medium, campaign, keyword, content)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "simla_com_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account Subdomain", "type": "string", "description": "Your Simla.com account subdomain.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Simla.com API Key", "type": "string", "description": "The API key provided by Simla.com for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "simple_analytics", "name": "Simple Analytics", "logo": "https://logos.composio.dev/api/simple_analytics", "description": "Simple Analytics is a privacy-friendly and simple alternative to Google Analytics, offering straightforward analytics without cookies or trackers.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMPLE_ANALYTICS_ADMIN_API_LIST_WEBSITES", "name": "List Websites (Admin API)", "description": "Tool to list all websites associated with the authenticated user. Use after authenticating an admin account to retrieve website list." }, { "slug": "SIMPLE_ANALYTICS_EXPORT_API_GET_RAW_DATA", "name": "Export Raw Data Points", "description": "Tool to export raw data points (page views and events) for a specific website. Use when you need to download CSV or JSON exports of site traffic." }, { "slug": "SIMPLE_ANALYTICS_GET_AGGREGATED_STATS", "name": "Get aggregated website stats", "description": "Tool to retrieve aggregated statistics for a specified website. Use when you need an overview of key metrics like visitors, pageviews, bounce rate, and more." }, { "slug": "SIMPLE_ANALYTICS_SEND_EVENT", "name": "Send Server-Side Event", "description": "Tool to submit server-side events or pageviews to Simple Analytics. Use for mobile apps, backend tracking, or scenarios where JavaScript is not available. Supports custom metadata for enriched event data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "simple_analytics_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Simple Analytics API Key", "type": "string", "description": "The API key for authenticating requests to the Simple Analytics API. It starts with 'sa_api_key_' and can be created in your account settings.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Simple Analytics User ID", "type": "string", "description": "The User ID associated with your Simple Analytics account. It starts with 'sa_user_id_' and is shown in your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "simplekpi", "name": "Simplekpi", "logo": "https://logos.composio.dev/api/simplekpi", "description": "Beautifully simple KPI software. Create, manage and analyse your Key Performance Indicators from the cloud.", "category": "analytics", "authSchemes": [ "BASIC" ], "toolCount": 51, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMPLEKPI_ADD_USER_GROUP_ITEM", "name": "Add User Group Item", "description": "Tool to assign a group item to a user in SimpleKPI. Use when you need to add a group item to a specific user's profile." }, { "slug": "SIMPLEKPI_ADD_USER_KPI", "name": "Add User KPI", "description": "Tool to assign a KPI to a user in SimpleKPI. Use when you need to link a KPI to a specific user with optional custom target and display order." }, { "slug": "SIMPLEKPI_CREATE_CATEGORY_KPI", "name": "Create Category KPI", "description": "Tool to create a new KPI within a category in SimpleKPI. Use when you need to add a new performance indicator to track metrics like sales, revenue, or customer satisfaction." }, { "slug": "SIMPLEKPI_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in SimpleKPI. Use when you need to organize KPIs or users into logical groups for better organization and reporting." }, { "slug": "SIMPLEKPI_CREATE_GROUP_ITEM", "name": "Create Group Item", "description": "Tool to create a new item within a group in SimpleKPI. Use when you need to add a new item to an existing group for organizing KPIs or data." }, { "slug": "SIMPLEKPI_CREATE_KPI", "name": "Create KPI", "description": "Tool to create a new KPI with specified configuration. Use when you need to add a new Key Performance Indicator to track metrics." }, { "slug": "SIMPLEKPI_CREATE_KPI_CATEGORY", "name": "Create KPI Category", "description": "Tool to create a new KPI category in SimpleKPI. Use when you need to organize KPIs into logical groups or categories." }, { "slug": "SIMPLEKPI_CREATE_KPI_UNIT", "name": "Create KPI Unit", "description": "Tool to create a new KPI unit in SimpleKPI. Use when you need to define a measurement unit for KPI tracking." }, { "slug": "SIMPLEKPI_CREATE_OR_UPDATE_KPI_ENTRIES", "name": "Batch KPI Entries", "description": "Tool to batch create or update multiple KPI entries at once. Use when you need to load multiple KPI data points efficiently (up to 5000 entries per batch). Each entry must have a kpi_id, entry_date, and either email or user_id." }, { "slug": "SIMPLEKPI_CREATE_USER", "name": "Create User", "description": "Tool to create a new user account in SimpleKPI. Use when you need to add a new user with specific permissions and access levels." }, { "slug": "SIMPLEKPI_DELETE_CATEGORY_KPI", "name": "Delete Category KPI", "description": "Tool to delete a KPI from a category. Use when you need to remove a specific KPI from a category." }, { "slug": "SIMPLEKPI_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group by ID. Use when you need to permanently remove a group from the system." }, { "slug": "SIMPLEKPI_DELETE_GROUP_ITEM", "name": "Delete Group Item", "description": "Tool to delete a group item by ID. Use when you need to remove an item from a specific group." }, { "slug": "SIMPLEKPI_DELETE_KPI", "name": "Delete KPI", "description": "Tool to delete a KPI by ID. Use when you need to permanently remove a specific KPI from the system." }, { "slug": "SIMPLEKPI_DELETE_KPI_CATEGORY", "name": "Delete KPI Category", "description": "Tool to delete a KPI category by its ID. Use when you need to remove a KPI category from the system." }, { "slug": "SIMPLEKPI_DELETE_KPI_ENTRY", "name": "Delete KPI Entry", "description": "Tool to delete a KPI entry by ID. Use when you need to permanently remove a specific KPI entry from the system." }, { "slug": "SIMPLEKPI_DELETE_KPI_UNIT", "name": "Delete KPI Unit", "description": "Tool to delete a KPI unit by its ID. Use when you need to remove a KPI unit from the system." }, { "slug": "SIMPLEKPI_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user account by ID. Use when you need to permanently remove a user from the system." }, { "slug": "SIMPLEKPI_DELETE_USER_GROUP_ITEM", "name": "Delete User Group Item", "description": "Tool to remove a group item assignment from a user. Use when you need to unassign a specific group item from a user." }, { "slug": "SIMPLEKPI_DELETE_USER_KPI", "name": "Delete User KPI", "description": "Tool to remove a KPI assignment from a user. Use when you need to unassign or delete a specific KPI from a user's profile." }, { "slug": "SIMPLEKPI_GET_ALL_DATA_ENTRIES", "name": "Get All Data Entries", "description": "Tool to retrieve processed KPI data entries for reports including calculated KPIs. Use when you need comprehensive report data with KPI metrics, targets, and metadata. Returns up to 10,000 entries with details like kpiId, kpiName, itemName, period, actual, target, and notes." }, { "slug": "SIMPLEKPI_GET_CATEGORY_KPI", "name": "Get Category KPI", "description": "Tool to retrieve a specific KPI within a category. Use when you need detailed information about a particular KPI including its name, description, target values, and configuration settings." }, { "slug": "SIMPLEKPI_GET_GROUP", "name": "Get Group", "description": "Tool to get a specific group by ID from SimplekPI. Use when you need to retrieve detailed information about a particular group." }, { "slug": "SIMPLEKPI_GET_GROUP_ITEM", "name": "Get Group Item", "description": "Tool to retrieve a specific group item by ID. Use when you need to fetch details of a particular item within a group." }, { "slug": "SIMPLEKPI_GET_KPI", "name": "Get KPI by ID", "description": "Tool to retrieve a specific KPI by ID from SimpleKPI. Use when you need detailed information about a particular KPI including its configuration, targets, and metadata." }, { "slug": "SIMPLEKPI_GET_KPI_CATEGORY", "name": "Get KPI Category", "description": "Tool to get a specific KPI category by ID from SimpleKPI. Use when you need to retrieve detailed information about a particular KPI category." }, { "slug": "SIMPLEKPI_GET_KPI_ENTRY", "name": "Get KPI Entry", "description": "Tool to retrieve a specific KPI entry by ID. Use when you need to fetch detailed information about a particular KPI entry including actual values, targets, notes, and timestamps." }, { "slug": "SIMPLEKPI_GET_KPI_FREQUENCY", "name": "Get KPI Frequency", "description": "Tool to get a specific KPI frequency by ID from SimplekPI. Use when you need to retrieve information about a particular frequency setting for KPIs." }, { "slug": "SIMPLEKPI_GET_KPI_ICON", "name": "Get KPI Icon by ID", "description": "Tool to retrieve a specific KPI icon by ID. Use when you need to get icon details including the icon name which can be used to construct the icon URL." }, { "slug": "SIMPLEKPI_GET_KPI_UNIT", "name": "Get KPI Unit", "description": "Tool to get a specific KPI unit by ID from SimpleKPI. Use when you need to retrieve detailed information about a particular KPI unit including its format specifications and metadata." }, { "slug": "SIMPLEKPI_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a specific user by ID. Use when you need to get details about a particular user account." }, { "slug": "SIMPLEKPI_GET_USER_GROUP_ITEM", "name": "Get User Group Item", "description": "Tool to get a specific group item assigned to a user. Use when you need to retrieve details of a particular group item for a user." }, { "slug": "SIMPLEKPI_GET_USER_KPI", "name": "Get User KPI", "description": "Tool to retrieve a specific KPI assigned to a user. Use when you need details about a particular KPI assignment for a user." }, { "slug": "SIMPLEKPI_LIST_CATEGORY_KPIS", "name": "List Category KPIs", "description": "Tool to retrieve all KPIs within a specific category. Use when you need to list or inspect KPIs belonging to a particular category." }, { "slug": "SIMPLEKPI_LIST_GROUP_ITEMS", "name": "List Group Items", "description": "Tool to get all items within a group. Use when you need to retrieve the complete list of items belonging to a specific group." }, { "slug": "SIMPLEKPI_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve all groups from SimpleKPI. Use when you need to list groups for organizing users and company hierarchy." }, { "slug": "SIMPLEKPI_LIST_KPI_CATEGORIES", "name": "List KPI Categories", "description": "Tool to get all KPI categories. Use when you need to retrieve the complete list of KPI categories for organizing KPIs." }, { "slug": "SIMPLEKPI_LIST_KPI_ENTRIES", "name": "List KPI Entries", "description": "Tool to get all KPI entries filtered by date range and optional criteria. Use when you need to retrieve KPI data for analysis or reporting. Returns a maximum of 500 entries per page. Use pagination parameters (rows, page) to retrieve additional entries." }, { "slug": "SIMPLEKPI_LIST_KPI_FREQUENCIES", "name": "List KPI Frequencies", "description": "Tool to get all KPI frequencies. Use when you need to retrieve available data entry frequency options (Daily, Weekly, Monthly, etc.) for KPI configuration." }, { "slug": "SIMPLEKPI_LIST_KPI_ICONS", "name": "List KPI Icons", "description": "Tool to retrieve all KPI icons from SimpleKPI. Use when you need to get available icons for display purposes or to help identify KPIs." }, { "slug": "SIMPLEKPI_LIST_KPIS", "name": "List All KPIs", "description": "Tool to retrieve all KPIs from a SimpleKPI account. Use when you need to list all available KPIs with their configurations, targets, and metadata." }, { "slug": "SIMPLEKPI_LIST_KPI_UNITS", "name": "List All KPI Units", "description": "Tool to retrieve all KPI units from a SimpleKPI account. Use when you need to list available units that describe how KPI values are displayed (currency, percentage, etc.)." }, { "slug": "SIMPLEKPI_LIST_USER_GROUP_ITEMS", "name": "List User Group Items", "description": "Tool to get all group items assigned to a user. Use when you need to retrieve group assignments for a specific user in SimpleKPI." }, { "slug": "SIMPLEKPI_LIST_USER_KPIS", "name": "List User KPIs", "description": "Tool to get all KPIs assigned to a specific user. Use when you need to retrieve what KPIs a user can enter data against and analyze." }, { "slug": "SIMPLEKPI_UPDATE_CATEGORY_KPI", "name": "Update Category KPI", "description": "Tool to update a KPI within a category. Use when you need to modify KPI details such as name, target, frequency, or aggregation method." }, { "slug": "SIMPLEKPI_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update an existing group in SimpleKPI. Use when you need to modify a group's name or display order." }, { "slug": "SIMPLEKPI_UPDATE_GROUP_ITEM", "name": "Update Group Item", "description": "Tool to update an existing item in a SimpleKPI group. Use when you need to modify the name or sort order of a group item. Requires both group_id and item id to identify the item to update. Both name and sort_order must be provided." }, { "slug": "SIMPLEKPI_UPDATE_KPI", "name": "Update KPI", "description": "Tool to update an existing KPI in SimpleKPI. Use when you need to modify KPI properties such as name, description, target values, or settings." }, { "slug": "SIMPLEKPI_UPDATE_KPI_ENTRY", "name": "Update KPI Entry", "description": "Tool to update an existing KPI entry in SimpleKPI. Use when modifying entry values, targets, or notes for a specific KPI entry. At least one of actual, target, or notes must be provided (actual cannot be null if both target and notes are null)." }, { "slug": "SIMPLEKPI_UPDATE_KPI_UNIT", "name": "Update KPI Unit", "description": "Tool to update an existing KPI unit in SimpleKPI. Use when you need to modify unit properties such as name, entry format, display format, or percentage status." }, { "slug": "SIMPLEKPI_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user account in SimpleKPI. Use when you need to modify user details such as type, status, name, or permissions." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "simplekpi_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "subdomain", "displayName": "Subdomain", "type": "string", "description": "Your subdomain is \"1234\" if your SimpleKPI account URL is https://1234.simplekpi.com/KPI", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your SimpleKPI account > Click \"Manage my\" dropdown > Go to Settings > Developer API. Note: API access must be enabled in your account settings.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Email", "type": "string", "description": "Your SimpleKPI login email address", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "simplero", "name": "Simplero", "logo": "https://logos.composio.dev/api/simplero", "description": "All-in-one marketing software for course creators, coaches and online marketers.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SIMPLERO_ADD_TAG_TO_CONTACT", "name": "Add Tag to Contact", "description": "Tool to add a tag to a contact identified by email address. Use when you need to tag a contact for segmentation or tracking purposes." }, { "slug": "SIMPLERO_BULK_SUBSCRIBE_TO_LIST", "name": "Bulk Subscribe to List", "description": "Tool to add multiple subscribers to a list in a single asynchronous request (max 1,000 per request). Use when you need to bulk import subscribers into a list. Returns a token to track the operation status." }, { "slug": "SIMPLERO_CREATE_OR_UPDATE_ADMINISTRATOR", "name": "Create or Update Administrator", "description": "Tool to create a new administratorship or update an existing one with the same email. Use when you need to add a new administrator to Simplero or update their role and permissions." }, { "slug": "SIMPLERO_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Tool to create a new contact or update an existing contact with the same email. Use when you need to add a new contact to Simplero or update their information." }, { "slug": "SIMPLERO_FIND_CONTACT_BY_EMAIL", "name": "Find Contact By Email", "description": "Tool to find and retrieve a contact by email address. Use when you need to look up contact details using an email address." }, { "slug": "SIMPLERO_FIND_SUBSCRIPTION_BY_EMAIL", "name": "Find Subscription By Email", "description": "Tool to find subscriptions for a specific list by email address. Use when you need to search for subscriptions associated with an email in a particular list." }, { "slug": "SIMPLERO_GET_ADMINISTRATOR_BY_ID", "name": "Get Administrator By ID", "description": "Tool to retrieve a single administratorship by internal ID. Use when you need detailed information about a specific administrator including user, account, role, and permission details." }, { "slug": "SIMPLERO_GET_ADMINISTRATORS", "name": "Get Administrators", "description": "Tool to retrieve all administratorships for the account. Use when you need to get information about account administrators, their roles, and permissions." }, { "slug": "SIMPLERO_GET_ADMIN_ROLES", "name": "Get Admin Roles", "description": "Tool to retrieve all available admin roles for the account including custom roles. Use when you need to list all admin roles such as Co-Owner, Admin, Basic admin, Assistant, Support specialist, Affiliate manager, or custom roles saved on Skyrocket plan." }, { "slug": "SIMPLERO_GET_ASYNC_REQUEST_STATUS", "name": "Get Async Request Status", "description": "Tool to check the status of an asynchronous API request. Use when you need to monitor the progress of a previously initiated async operation using its token." }, { "slug": "SIMPLERO_GET_CONTACT_BY_ID", "name": "Get Contact By ID", "description": "Tool to retrieve a JSON representation of a contact by internal ID. Use when you need to fetch detailed information about a specific contact. Returns 404 if no contact exists with the provided ID." }, { "slug": "SIMPLERO_GET_INVOICES", "name": "Get Invoices", "description": "Tool to get invoice information with optional filtering by date and invoice number. Use when you need to retrieve invoices from Simplero. Returns 20 invoices per page ordered by invoice number." }, { "slug": "SIMPLERO_GET_LISTS", "name": "Get All Lists", "description": "Tool to retrieve all mailing lists configured in the account. Use when you need to view all available lists for managing subscriptions and email campaigns." }, { "slug": "SIMPLERO_GET_PRODUCTS", "name": "Get Products", "description": "Tool to list all products in the account. Use when you need to retrieve information about all available products including their pricing." }, { "slug": "SIMPLERO_REMOVE_ADMINISTRATOR", "name": "Remove Administrator", "description": "Tool to delete an administratorship by ID. Use when you need to remove an administrator relationship from the system." }, { "slug": "SIMPLERO_REMOVE_TAG_FROM_CONTACT", "name": "Remove Tag from Contact", "description": "Tool to remove a tag from a contact identified by email address. Use when you need to remove a specific tag from a contact's profile." }, { "slug": "SIMPLERO_SUBSCRIBE_TO_LIST", "name": "Subscribe to List", "description": "Tool to add a new subscriber to a specific mailing list. Use when you need to subscribe a contact with their email address to a list." }, { "slug": "SIMPLERO_UNSUBSCRIBE_FROM_LIST", "name": "Unsubscribe From List", "description": "Tool to unsubscribe a customer from a specific mailing list. Use when you need to remove a contact from a list by their email address." }, { "slug": "SIMPLERO_UPDATE_CONTACT_CREDENTIALS", "name": "Update Contact Credentials", "description": "Tool to update a contact's login credentials including email, first name, and last name. Use only with the consent of the contact. At least one identification parameter (email, id, or token) is required." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "simplero_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Go to Settings > Integrations in your Simplero Dashboard and click \"+ Create new API Key\"", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "siteleaf", "name": "Siteleaf", "logo": "https://logos.composio.dev/api/siteleaf", "description": "A friendly CMS for static sites. Powered by Jekyll, with GitHub sync, and a complete API.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "siteleaf_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Your Siteleaf API Key from https://manage.v2.siteleaf.com/account?section=api", "required": true, "default": null }, { "name": "password", "displayName": "API Secret", "type": "string", "description": "Your Siteleaf API Secret from https://manage.v2.siteleaf.com/account?section=api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sitespeakai", "name": "Sitespeakai", "logo": "https://logos.composio.dev/api/sitespeakai", "description": "SiteSpeakAI enables businesses to automate customer support by creating custom-trained, embeddable GPT chatbots that provide real-time answers about products and services, reducing support tickets.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SITESPEAKAI_GET_LEADS", "name": "Get Leads", "description": "Tool to retrieve all leads for your chatbot. Use when you need to access contact information captured through chatbot interactions." }, { "slug": "SITESPEAKAI_GET_PROMPTS", "name": "Get Smart Prompts", "description": "Tool to retrieve smart prompts available for a chatbot. Use when you need to list prompts before selecting or managing them." }, { "slug": "SITESPEAKAI_GET_USER", "name": "Get Authenticated User", "description": "Tool to retrieve details of the authenticated user account. Use after obtaining a valid bearer token and when you need the current user's profile." }, { "slug": "SITESPEAKAI_LIST_CHATBOTS", "name": "List Chatbots", "description": "Tool to list all chatbots. Use when you need an overview of every chatbot linked to your account. No parameters required." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sitespeakai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SiteSpeakAI API Token", "type": "string", "description": "Your SiteSpeakAI API Token for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "skyciv", "name": "Skyciv", "logo": "https://logos.composio.dev/api/skyciv", "description": "Powerful, intuitive, and cloud-based structural engineering software & API technology. Designed to streamline your design workflow and maximize efficiency.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SKYCIV_S3_D_INFO_SETTINGS", "name": "Get S3D Instance Settings", "description": "Tool to retrieve settings for the current S3D instance. Use when you need to access analysis configuration, display settings, unit systems, or calculation parameters. Must be called within an active S3D session (after S3D.session.start)." }, { "slug": "SKYCIV_S3_D_RESULTS_GET_ANALYSIS_REPORT", "name": "Generate Analysis Report", "description": "Tool to generate a structural analysis report and retrieve download links. Use after S3D.model.solve has been executed in the session. Returns PDF, TXT, or HTML download links for the generated report with customizable sections." }, { "slug": "SKYCIV_S3_DSB_SUBMIT", "name": "Submit Section to S3D Model", "description": "Tool to submit a section to your S3D structural model by assigning a section ID. Use when you need to integrate a calculated section into the structural model for analysis. The section must already be configured via a preceding function like S3D.SB.buildCustomShape before calling submit." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "skyciv_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your SkyCiv API key from Account Settings > API Access at https://platform.skyciv.com/account/api", "required": true, "default": null }, { "name": "generic_id", "displayName": "Username", "type": "string", "description": "Your SkyCiv account email address. Get your credentials from https://platform.skyciv.com/account/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "skyfire", "name": "Skyfire", "logo": "https://logos.composio.dev/api/skyfire", "description": "Skyfire enables AI agents to autonomously transact and pay for services, creating a seamless payment infrastructure for AI applications.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SKYFIRE_CHARGE_TOKEN", "name": "Charge Skyfire Token", "description": "Charge a buyer's token (seller-side operation). REQUIRES SELLER API KEY: This action requires your seller agent API key, not the buyer's key. The buyer creates and sends you a pay/kya+pay token JWT, you provide the service, then call this endpoint to collect payment. Flow: Buyer creates token → Buyer calls your service with token → You validate token → You provide service → You call this to charge. Common errors: - 401: Invalid/expired token OR wrong API key (must use seller key) - 402: Charge amount exceeds token value" }, { "slug": "SKYFIRE_CREATE_KYA_PAY_TOKEN", "name": "Create Skyfire KYA+PAY Token", "description": "Issue a Skyfire KYA+PAY token (POST /api/v1/tokens with type=kya+pay)." }, { "slug": "SKYFIRE_CREATE_KYA_TOKEN", "name": "Create Skyfire KYA Token", "description": "Issue a Skyfire KYA token (POST /api/v1/tokens with type=kya)." }, { "slug": "SKYFIRE_CREATE_PAY_TOKEN", "name": "Create Skyfire PAY Token", "description": "Issue a Skyfire PAY token (POST /api/v1/tokens with type=pay)." }, { "slug": "SKYFIRE_GET_ALL_SERVICE_TAGS", "name": "Get All Service Tags", "description": "Fetch all service tags to discover filtering options. Chain with ListDirectoryServices using tags parameter to find specific types of services (e.g., 'ai', 'mcp', 'scraping')." }, { "slug": "SKYFIRE_GET_BUYER_WALLET_BALANCE", "name": "Get Skyfire Buyer Wallet Balance", "description": "Retrieve buyer wallet balance. Chain before token creation to prevent declines." }, { "slug": "SKYFIRE_GET_DIRECTORY_SERVICE_BY_ID", "name": "Get Directory Service By ID", "description": "Tool to get full details for a specific service in the Skyfire directory by its ID. Use when you need complete information about a service including pricing, requirements, and seller details." }, { "slug": "SKYFIRE_GET_SERVICE", "name": "Get Skyfire Service Details", "description": "Get full details for one service. More detailed than ListDirectoryServices - shows terms of service, API specs, and integration URLs. Use before creating expensive tokens." }, { "slug": "SKYFIRE_GET_SERVICES_BY_AGENT", "name": "Get Services by Agent", "description": "Browse all services from one seller agent. Useful when you trust a seller and want to see their full catalog, or when tracking down who provides a specific type of service." }, { "slug": "SKYFIRE_GET_SERVICES_BY_TAGS", "name": "Get Services by Tags", "description": "Filter services by tags to find exactly what you need. More efficient than browsing all services when you know the category. Chain: GetAllServiceTags → GetServicesByTags → CreatePayToken." }, { "slug": "SKYFIRE_GET_TOKEN_CHARGES", "name": "Get Skyfire Token Charges", "description": "Audit charges for a specific token. Shows exactly what sellers charged against your token and when. Use for reconciliation: \"I authorized $5 max, what did they actually charge?\"" }, { "slug": "SKYFIRE_INTROSPECT_TOKEN", "name": "Introspect Skyfire Token", "description": "Check if a token is still valid before calling a seller service. Prevents wasted API calls with expired tokens. Use after creating tokens if there's a delay before calling the seller, or when debugging payment issues." }, { "slug": "SKYFIRE_LIST_AGENT_SELLER_SERVICES", "name": "List Agent Seller Services", "description": "List all services registered by the authenticated seller agent. Use when you need to view or manage your own services as a seller." }, { "slug": "SKYFIRE_LIST_BUYER_TOKENS", "name": "List Skyfire Buyer Tokens", "description": "Inspect buyer tokens for observability. Chain with transactions to audit usage." }, { "slug": "SKYFIRE_LIST_DIRECTORY_SERVICES", "name": "List Skyfire Directory Services", "description": "Browse Skyfire's service directory to obtain `sellerServiceId` for token creation. Chain this with CreatePayToken or CreateKyaPayToken." }, { "slug": "SKYFIRE_SET_AGENT_SOURCE_IPS", "name": "Set Agent Source IP Addresses", "description": "Register IP addresses as sources for Agent requests (PUT /api/v1/agents/source-ips). Use before creating tokens to whitelist agent IPs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "skyfire_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Skyfire API Key", "type": "string", "description": "Your Skyfire API key for authenticating requests to the Skyfire platform.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sleekplan", "name": "Sleekplan", "logo": "https://logos.composio.dev/api/sleekplan", "description": "Sleekplan is a customer feedback and product roadmap tool", "category": "productivity", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "sleekplan_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Sleekplan API key. Find it in Sleekplan Dashboard under Settings > Developer", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "slite", "name": "Slite", "logo": "https://logos.composio.dev/api/slite", "description": "Your company knowledge base, on autopilot", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SLITE_ASK_QUESTION", "name": "Ask Question", "description": "Tool to ask a question to your Slite notes in natural language. Use when you need to query or search information across your notes. Supports optional filters to narrow results by parent note or specific assistant." }, { "slug": "SLITE_CREATE_NOTE", "name": "Create Note", "description": "Tool to create a note from markdown or HTML content with optional template. Use when you need to create a new note in Slite with specified content and title." }, { "slug": "SLITE_DELETE_NOTE_BY_ID", "name": "Delete Note By ID", "description": "Tool to permanently delete a note and all its children by ID. Use when you need to remove a note irreversibly. This operation cannot be undone." }, { "slug": "SLITE_FLAG_NOTE_AS_OUTDATED", "name": "Flag Note as Outdated", "description": "Tool to set Outdated status on a note with a reason. Use when you need to flag a note as containing outdated information." }, { "slug": "SLITE_GET_AUTHENTICATED_USER", "name": "Get authenticated user", "description": "Retrieves information about the currently authenticated user. Use this to get user details including email, display name, and organization information." }, { "slug": "SLITE_GET_NOTE_BY_ID", "name": "Get Note By ID", "description": "Tool to retrieve a complete note by its ID including content in Markdown or HTML format. Use when you need to fetch the full details and content of a specific note." }, { "slug": "SLITE_GET_NOTE_CHILDREN", "name": "Get Note Children", "description": "Tool to retrieve note children by parent note ID. Use when you need to fetch child notes beneath a specified parent note. Supports pagination for notes with more than 50 children using cursor-based navigation." }, { "slug": "SLITE_LIST_NOTES", "name": "List Notes", "description": "Tool to list notes from Slite with optional filtering by owner. Use when you need to retrieve notes, optionally filtered by a specific user. Supports cursor-based pagination via the cursor parameter." }, { "slug": "SLITE_SEARCH_GROUPS", "name": "Search Groups", "description": "Tool to search for groups by name in Slite. Use when you need to find groups matching a search query. Supports cursor-based pagination via the cursor parameter." }, { "slug": "SLITE_SEARCH_NOTES", "name": "Search Notes", "description": "Tool to search notes based on a query with optional filters. Use when you need to find notes by search term, parent note, review state, or other criteria. Supports pagination and archived note inclusion." }, { "slug": "SLITE_SEARCH_USERS", "name": "Search Users", "description": "Tool to search for users in Slite by email, name, or username. Use when you need to find users in the organization." }, { "slug": "SLITE_UPDATE_NOTE", "name": "Update Note", "description": "Tool to update a note's content with markdown and/or title. Use when you need to modify an existing note's content or metadata." }, { "slug": "SLITE_UPDATE_NOTE_ARCHIVED_STATE", "name": "Update Note Archived State", "description": "Tool to update the archived state of a note in Slite. Use when you need to archive or unarchive a note." }, { "slug": "SLITE_UPDATE_NOTE_OWNER", "name": "Update Note Owner", "description": "Tool to update the owner of a note. Use when you need to transfer note ownership to a user or group. Either userId or groupId must be provided." }, { "slug": "SLITE_UPDATE_TILE", "name": "Update Tile in Note", "description": "Tool to update or create a tile within a Slite note with structured header and markdown content. Use when you need to update tile information including title, status, content, icon, or external URL." }, { "slug": "SLITE_VERIFY_NOTE", "name": "Verify Note", "description": "Tool to set a note's verification status to Verified with optional expiration. Use when you need to mark a note as verified or update its verification expiration date." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "slite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to your Slite account and open your account menu on the top left, then go to Settings > API. Click \"Create a new key\" and save it immediately as it will only be displayed once.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "smartproxy", "name": "Smartproxy", "logo": "https://logos.composio.dev/api/smartproxy", "description": "Smartproxy (now Decodo) offers a comprehensive suite of proxy and web scraping solutions, providing users with access to a vast network of residential, datacenter, ISP, and mobile proxies, along with scraping APIs for efficient data collection.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SMARTPROXY_DELETE_WHITELISTED_IP", "name": "Delete Whitelisted IP", "description": "Tool to delete a specified whitelisted IP by its ID. Use when you need to remove an IP address from the whitelist. Returns success confirmation on completion." }, { "slug": "SMARTPROXY_GENERATE_BACKCONNECT_ENDPOINTS", "name": "Generate Back Connect Endpoints", "description": "Tool to generate custom back connect endpoints for Residential subscription proxies. Use when you need to create proxy connection strings with specific configuration parameters like session type, location, and authentication credentials." }, { "slug": "SMARTPROXY_GENERATE_CUSTOM_ENDPOINTS", "name": "Generate Custom Endpoints", "description": "Tool to generate custom proxy endpoints for Residential and Datacenter Pay per GB subscriptions. Use when you need to create configured proxy endpoints with specific authentication, session, and location parameters." }, { "slug": "SMARTPROXY_GET_API_KEY", "name": "Get API Key", "description": "Tool to instruct how to obtain Smartproxy API key. Use when you need to authenticate API requests but don't have your key (manual dashboard process)." }, { "slug": "SMARTPROXY_GET_ENDPOINTS_BY_TYPE", "name": "Get Endpoints By Type", "description": "Tool to retrieve proxy endpoints by type (random or sticky) for Residential subscription. Returns location, hostname, and port_range for each endpoint. Use when you need specific endpoint configuration for a particular proxy type." }, { "slug": "SMARTPROXY_LIST_ENDPOINTS_AND_PORTS", "name": "List Endpoints and Ports", "description": "Tool to retrieve all available proxy endpoints and corresponding ports. Use when you need to fetch the full inventory of Smartproxy endpoints." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "smartproxy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Smartproxy API Key", "type": "string", "description": "The API key generated from the Smartproxy dashboard, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "smartsuite", "name": "Smartsuite", "logo": "https://logos.composio.dev/api/smartsuite", "description": "Work Management Platform built for businesses, designed for people, and loved by teams. Any company size or industry.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "smartsuite_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your SmartSuite account and sign in. From there, click the User dropdown at the top right, then go to My Profile > API Key.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account ID", "type": "string", "description": "If your SmartSuite workspace URL is https://app.smartsuite.com/1234/home, your Account ID is 1234.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "smarty", "name": "Smarty", "logo": "https://logos.composio.dev/api/smarty", "description": "The leader in location data intelligence. Smarty provides APIs to verify, validate, enrich, standardize, geocode, and auto-complete addresses.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "smarty_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Auth ID", "type": "string", "description": "Your Auth ID from the Smarty API Keys page", "required": true, "default": null }, { "name": "generic_token", "displayName": "Auth Token", "type": "string", "description": "Your Auth Token from the Smarty API Keys page", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sms_alert", "name": "SMS Alert", "logo": "https://logos.composio.dev/api/sms_alert", "description": "SMS Alert is a versatile multi-channel communication platform enabling businesses to engage with customers through SMS, RCS, Telegram, and WhatsApp via a unified REST API.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SMS_ALERT_CHANGE_PASSWORD", "name": "Change User Password", "description": "Tool to change the password for the authenticated user account. Use when the user needs to update their account password." }, { "slug": "SMS_ALERT_GET_BALANCE_CHECK", "name": "Get SMS Alert Balance", "description": "Tool to retrieve the current SMS credit balance. Use when you need an up-to-date credit status before sending messages. If balance is low, gate high-volume sends before proceeding — insufficient credits cause messages to be silently dropped or rejected mid-campaign." }, { "slug": "SMS_ALERT_GET_DELIVERY_REPORT", "name": "Get SMS Delivery Report", "description": "Tool to retrieve delivery report for sent SMS messages by batch ID. Returns message delivery status including mobile numbers, delivery status, and timestamps. Use after sending SMS campaigns to track delivery success." }, { "slug": "SMS_ALERT_GET_GROUP_DETAIL", "name": "Get Group Detail", "description": "Tool to retrieve details of a specific SMS Alert group. Use after confirming the group ID." }, { "slug": "SMS_ALERT_GET_GROUP_LIST", "name": "Get Group List", "description": "Tool to retrieve a list of SMS Alert groups. Use when you need to fetch all groups associated with your account. Call after authenticating your API key." }, { "slug": "SMS_ALERT_GET_SENDER_ID_LIST", "name": "Get Sender ID List", "description": "Tool to fetch the list of available sender IDs. Use when you need to retrieve all sender IDs associated with your account. Use after configuring your API key." }, { "slug": "SMS_ALERT_GET_TEMPLATE_LIST", "name": "Get SMS Template List", "description": "Tool to retrieve list of SMS templates from your SmsAlert account. Use when you need to display or manage your SMSAlert templates." }, { "slug": "SMS_ALERT_GET_USER_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve user login and profile information. Returns account details including balance, sender IDs, and account status. Use after configuring your API key to fetch complete user profile." }, { "slug": "SMS_ALERT_POST_CREATE_CONTACT", "name": "Create New Contact", "description": "Create New Contact" }, { "slug": "SMS_ALERT_POST_CREATE_GROUP", "name": "Create New Group", "description": "Tool to create a new contact group. Use when needing to organize contacts into a new group." }, { "slug": "SMS_ALERT_POST_CREATE_SHORT_URL", "name": "Create Short URL", "description": "Tool to create a short URL for a given long URL. Use when you need to shorten a URL before sharing." }, { "slug": "SMS_ALERT_POST_CREATE_TEMPLATE", "name": "Create SMS Template", "description": "Tool to create a new SMS template. Use when you need to define reusable message content." }, { "slug": "SMS_ALERT_POST_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete a specified contact. Use after confirming the contact's ID." }, { "slug": "SMS_ALERT_POST_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a specified group. Use after confirming the group's ID." }, { "slug": "SMS_ALERT_POST_DELETE_SHORT_URL", "name": "Delete Short URL", "description": "Tool to delete an existing short URL. Use after confirming the short URL's ID." }, { "slug": "SMS_ALERT_POST_DELETE_TEMPLATE", "name": "Delete SMS Template", "description": "Tool to delete an existing SMS template. Use when you have the template ID to remove it." }, { "slug": "SMS_ALERT_POST_EDIT_CONTACT", "name": "Edit Contact", "description": "Tool to edit an existing contact’s details. Use when you need to update a contact’s information after confirming the contact_id." }, { "slug": "SMS_ALERT_POST_EDIT_GROUP", "name": "Edit Group", "description": "Tool to edit an existing group\u0019s name. Use when you need to rename a group after confirming the group id." }, { "slug": "SMS_ALERT_POST_EDIT_PROFILE", "name": "Update User Profile", "description": "Tool to update user account profile details. Use when modifying authenticated user profile after login." }, { "slug": "SMS_ALERT_POST_EDIT_TEMPLATE", "name": "Edit SMS Template", "description": "Tool to edit an existing SMS template. Use when you need to update a template after confirming the template id." }, { "slug": "SMS_ALERT_POST_GENERATE_OTP", "name": "Generate OTP", "description": "Tool to generate a one-time password (OTP). Use when you need to send an OTP to a mobile number using a predefined template." }, { "slug": "SMS_ALERT_POST_SENT_SMS_REPORT", "name": "Get Sent SMS Report", "description": "Tool to retrieve SMS campaign sent report details. Use after campaigns are sent to analyze delivery results. Delivery status data may lag real time; treat results as non-final for time-sensitive workflows." }, { "slug": "SMS_ALERT_SEND_SMS_XML", "name": "Send SMS via XML", "description": "Tool to send SMS messages using XML format for bulk sending. Use when you need to send multiple messages to different recipients with different content in a single API call." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sms_alert_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SMS Alert API Key", "type": "string", "description": "The API key generated from your SMS Alert account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "smtp2go", "name": "Smtp2go", "logo": "https://logos.composio.dev/api/smtp2go", "description": "SMTP2GO is a reliable email delivery service that ensures your emails reach recipients' inboxes efficiently.", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SMTP2GO_ACTIVITY_SEARCH", "name": "Search Email Activity", "description": "Tool to search activity events like sends, opens, clicks, and bounces. Use when you need to filter account email activity by date, event, recipient, or message ID." }, { "slug": "SMTP2GO_ALLOWED_SENDERS_ADD", "name": "Add Allowed Sender", "description": "Tool to add a new allowed sender email address. Use when you need to whitelist a sender before sending email. Example: Add \"user@example.com\" to allowed senders list." }, { "slug": "SMTP2GO_ALLOWED_SENDERS_REMOVE", "name": "Remove Allowed Sender", "description": "Tool to remove a sender email address from the allowed senders list. Use when you need to revoke send permissions for a validated address." }, { "slug": "SMTP2GO_ALLOWED_SENDERS_UPDATE", "name": "Update Allowed Senders", "description": "Tool to update (replace) the entire allowed senders list in your SMTP2GO account. This action overwrites the current list with the provided email addresses and domain names. Use when you need to set or update who can send emails through your account. Example: 'Update allowed senders to include user@example.com and admin@company.com in whitelist mode.'" }, { "slug": "SMTP2GO_ALLOWED_SENDERS_VIEW", "name": "View Allowed Senders", "description": "Tool to view the list of allowed senders configured in your account. Use after setting up SMTP2GO authentication to retrieve your allowed-senders list. Example: 'Show me all verified allowed senders.'" }, { "slug": "SMTP2GO_DOMAIN_ADD", "name": "Add Sender Domain", "description": "Tool to add a new sender domain for SPF/DKIM verification. Use when you need to register a domain and optionally set tracking/return-path subdomains." }, { "slug": "SMTP2GO_EMAIL_SEARCH", "name": "Search SMTP2GO Emails", "description": "Tool to search sent emails. Use when filtering your SMTP2GO account's email activity by criteria like date, sender, or recipient. Call after authentication." }, { "slug": "SMTP2GO_IP_ALLOW_LIST_ADD", "name": "Add IP Allow List", "description": "Tool to add a public IP address to your account's IP allow list. Use when you need to whitelist specific sending sources by IP after confirming accuracy. Note: Only plain IP addresses are supported (no CIDR notation). Private/reserved IP ranges are rejected." }, { "slug": "SMTP2GO_IP_ALLOW_LIST_REMOVE", "name": "Remove IP from Allow List", "description": "Tool to remove an IP address from your account's IP allow list. Use after identifying the IP you wish to revoke." }, { "slug": "SMTP2GO_IP_ALLOW_LIST_VIEW", "name": "View IP Allow List", "description": "Tool to view the list of IP addresses in your IP allow list. Use after confirming your SMTP2GO API key is set." }, { "slug": "SMTP2GO_SMS_VIEW_RECEIVED", "name": "View Received SMS", "description": "Tool to retrieve received SMS replies for your SMTP2GO account. Use when you need to fetch incoming SMS messages for analysis or display. Pagination supported via limit and offset." }, { "slug": "SMTP2GO_STATS_EMAIL_BOUNCES", "name": "Get Email Bounces Stats", "description": "Tool to retrieve email bounces statistics. Use after sending emails to analyze bounce metrics over a time period." }, { "slug": "SMTP2GO_STATS_EMAIL_CYCLE", "name": "Email Cycle Statistics", "description": "Tool to retrieve current email cycle/quota statistics. Use when you need to check the account's monthly email allowance, usage, and remaining quota for the current billing cycle." }, { "slug": "SMTP2GO_STATS_EMAIL_HISTORY", "name": "Email History Statistics", "description": "Tool to retrieve email history statistics. Use when you need detailed delivery metrics within a date range." }, { "slug": "SMTP2GO_STATS_EMAIL_SPAM", "name": "Email Spam Statistics", "description": "Tool to retrieve email spam report statistics. Use when analyzing spam trends for sent emails." }, { "slug": "SMTP2GO_STATS_EMAIL_UNSUBS", "name": "Email Unsubscription Stats", "description": "Tool to retrieve email unsubscribe statistics. Use when you need unsubscribe data for your account over a date range." }, { "slug": "SMTP2GO_SUBACCOUNTS_SEARCH", "name": "Search Subaccounts", "description": "Tool to search subaccounts. Use after authenticating to filter and paginate your subaccounts by name, email, or status." }, { "slug": "SMTP2GO_SUBACCOUNTS_USAGE", "name": "Subaccounts Usage", "description": "Tool to retrieve usage statistics for subaccounts. Use when you need to monitor per-subaccount email usage." }, { "slug": "SMTP2GO_SUPPRESSION_ADD", "name": "Add to Suppression List", "description": "Tool to add email addresses or domains to the suppression list. Use when you need to block sending emails to specific recipients or entire domains after unsubscribes or bounces." }, { "slug": "SMTP2GO_SUPPRESSION_REMOVE", "name": "Remove suppression entry", "description": "Tool to remove an email address or domain from the suppression list. Use when you want to resume sending to the address or domain." }, { "slug": "SMTP2GO_SUPPRESSION_VIEW", "name": "View Suppression List", "description": "Tool to view the suppression list. Use when you need to inspect suppressed email addresses in your account." }, { "slug": "SMTP2GO_TEMPLATE_EDIT", "name": "Edit Email Template", "description": "Tool to edit details of an existing email template. Use when you need to update template properties after confirming its ID." }, { "slug": "SMTP2GO_TEMPLATE_SEARCH", "name": "Search Email Templates", "description": "Tool to search your collection of email templates by ID or name. Use when you need to find templates matching specific criteria after authentication." }, { "slug": "SMTP2GO_TEMPLATE_VIEW", "name": "View Email Template", "description": "Tool to view details of a specific email template. Use after you have the template ID to inspect." }, { "slug": "SMTP2GO_USERS_SMTP_ADD", "name": "Add SMTP User", "description": "Tool to add a new SMTP user. Use when you need to provision a fresh SMTP credential after collecting username and password." }, { "slug": "SMTP2GO_USERS_SMTP_EDIT", "name": "Edit SMTP User", "description": "Tool to edit details of an existing SMTP user. Use when you need to update username, password, sender restrictions, or enable/disable a user after confirming the target username." }, { "slug": "SMTP2GO_USERS_SMTP_REMOVE", "name": "Remove SMTP User", "description": "Tool to remove an SMTP user from your account. Use when you need to revoke SMTP access for a user." }, { "slug": "SMTP2GO_USERS_SMTP_VIEW", "name": "View SMTP Users", "description": "Tool to list all SMTP users configured on your account. Use when you need to retrieve SMTP user configurations." }, { "slug": "SMTP2GO_WEBHOOK_ADD", "name": "Add Webhook", "description": "Tool to create a new webhook. Use when you need real-time notifications of email or SMS events." }, { "slug": "SMTP2GO_WEBHOOK_EDIT", "name": "Edit Webhook", "description": "Tool to edit an existing webhook’s settings. Use when you need to update a webhook's configuration after creation." }, { "slug": "SMTP2GO_WEBHOOK_REMOVE", "name": "Remove webhook", "description": "Tool to remove a webhook. Use when you want to delete a webhook by its ID from your SMTP2GO account." }, { "slug": "SMTP2GO_WEBHOOK_VIEW", "name": "View Webhooks", "description": "Tool to view all webhooks configured in your account. Use when you need to inspect existing webhook configurations after setup." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "smtp2go_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SMTP2GO API Key", "type": "string", "description": "The API key obtained from your SMTP2GO account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "snapchat", "name": "Snapchat", "logo": "https://logos.composio.dev/api/snapchat", "description": "Snapchat Marketing API and Ads Manager integration for creating and managing ad campaigns, analyzing performance metrics, and accessing business accounts.", "category": "marketing", "authSchemes": [ "OAUTH2" ], "toolCount": 139, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "SNAPCHAT_ADD_SEGMENT_USERS", "name": "Add Users to Segment", "description": "Tool to add users to a Snapchat audience segment. Use when you need to populate a segment with user identifiers (email, phone, or mobile ad IDs). All identifiers must be normalized and SHA-256 hashed before submission. Maximum 100,000 identifiers per request." }, { "slug": "SNAPCHAT_COPY_MEDIA", "name": "Copy Media Between Ad Accounts", "description": "Copies media from one Snapchat ad account to another. Use this when you need to duplicate media assets (images, videos) across different ad accounts for campaign management or sharing creative assets." }, { "slug": "SNAPCHAT_CREATE_ACCOUNT_ROLE", "name": "Create Account Role", "description": "Tool to create new roles for members in a Snapchat Ad Account. Use when you need to grant access permissions to members. Note: Member must already have an Organization-level 'member' role before assigning Ad Account roles." }, { "slug": "SNAPCHAT_CREATE_AD_ACCOUNT", "name": "Create Ad Account", "description": "Tool to create a new ad account within a Snapchat organization. Use when setting up a new advertising account for campaign management. Requires organization_id, billing center, and advertiser details. Can create test accounts for development purposes." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_AUDIENCE_SIZE_V2", "name": "Estimate Ad Account Audience Size", "description": "Tool to estimate audience size for Snapchat ad campaigns. Use when you need to determine potential reach for specific targeting criteria before creating ad campaigns." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_CREATIVE_ELEMENTS", "name": "Create ad account creative elements", "description": "Tool to create new creative elements in a Snapchat ad account. Use when you need to create dynamic ad elements like buttons for product catalogs or dynamic collections. Once created, creative elements cannot be updated and are immutable." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_DYNAMIC_TEMPLATES", "name": "Create Ad Account Dynamic Templates", "description": "Tool to create new dynamic templates for product ads in a Snapchat ad account. Use when you need to set up templates that define how product information from a catalog will be displayed in dynamic product ads." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_EVENT_DETAILS", "name": "Create Ad Account Event Details", "description": "Tool to create event details for a Snapchat ad account. Use when scheduling advertising events or campaigns. Event details are immutable after creation and cannot be edited. Ensure the event is not referenced by active Reminder Creatives before deletion." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_INTERACTION_ZONES", "name": "Create Ad Account Interaction Zones", "description": "Create new interaction zones for an ad account in Snapchat Marketing API. Interaction zones are used for dynamic collections ads and contain 2-4 creative elements with matching interaction types." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_OFFER_DISCLAIMERS", "name": "Create Offer Disclaimers", "description": "Tool to create new offer disclaimers for a Snapchat ad account. Use when you need to add legal disclaimers to offers in ads. STATIC disclaimers display custom text directly, while DYNAMIC disclaimers pull content from product catalogs." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_RESERVED_FORECASTING", "name": "Create ad account reserved forecasting", "description": "Tool to create a reserved forecasting for Snapchat ad accounts. Use when you need to forecast reach and frequency for planned campaigns with specific targeting and frequency caps. Requires minimum reach of 500,000 unique users and booking window between 12 hours and 365 days." }, { "slug": "SNAPCHAT_CREATE_ADACCOUNTS_TARGETING_INSIGHTS", "name": "Create Adaccounts Targeting Insights", "description": "Tool to generate targeting insights for a Snapchat ad account. Use when you need to analyze and compare audience demographics, size, and characteristics between a base targeting spec and a target targeting spec. Returns detailed breakdowns including age groups, gender, languages, geographic distribution, and audience size estimates." }, { "slug": "SNAPCHAT_CREATE_AD_SQUAD", "name": "Create Ad Squad", "description": "Tool to create a new ad squad within a campaign. Use when setting up ad delivery targeting, budgets, and placements for a Snapchat campaign." }, { "slug": "SNAPCHAT_CREATE_BILLING_CENTER", "name": "Create Billing Center", "description": "Tool to create one or more billing centers for a Snapchat Ads organization. Use when you need to set up new billing entities for managing ad spend and invoicing. Requires organization ID, billing center name, email address, and complete billing address information." }, { "slug": "SNAPCHAT_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new advertising campaign in Snapchat Marketing API. Use when you need to set up a new campaign with specified budget, timing, and objectives." }, { "slug": "SNAPCHAT_CREATE_CATALOG_ROLE", "name": "Create Catalog Role", "description": "Tool to create new roles for a catalog in Snapchat Marketing API. Use when you need to assign catalog permissions to members. Members must already have the 'member' organizational role before receiving catalog roles." }, { "slug": "SNAPCHAT_CREATE_CATALOGS_FACETS", "name": "Create Catalog Facets", "description": "Tool to create catalog facets for grouping products by attributes like BRAND, COLOR, or AVAILABILITY. Use when you need to analyze product distribution across different attributes in a catalog. Returns grouped counts for specified product properties with optional filtering support." }, { "slug": "SNAPCHAT_CREATE_CATALOGS_FLIGHTS_SEARCH", "name": "Search Catalog Flights", "description": "Tool to search for flights within a Snapchat catalog using optional filters. Use when you need to retrieve and filter flight listings from a dynamic product ads catalog." }, { "slug": "SNAPCHAT_CREATE_CATALOGS_PRODUCT_FEEDS", "name": "Create Catalogs Product Feed", "description": "Tool to create a new product feed under a specified catalog. Use when setting up product data synchronization for dynamic product ads. Note: Currently only one product feed can exist per catalog." }, { "slug": "SNAPCHAT_CREATE_CATALOGS_PRODUCT_SETS", "name": "Create Catalog Product Set", "description": "Tool to create a new product set within a Snapchat catalog. Use when you need to define product groups using filters for dynamic product ads." }, { "slug": "SNAPCHAT_CREATE_MEDIA", "name": "Create Media", "description": "Tool to create a new media file in a Snapchat ad account. Use when you need to register media assets (images, videos, lenses, or playable ads) before uploading content or associating with ad creatives." }, { "slug": "SNAPCHAT_CREATE_ORGANIZATIONS_CATALOGS", "name": "Create Organizations Catalogs", "description": "Tool to create new product catalogs within a Snapchat organization for Dynamic Product Ads. Use when you need to set up catalogs for automated ad generation based on product data feeds. Requires Organization Admin permission. Maximum 200 catalogs per organization, 10 per batch." }, { "slug": "SNAPCHAT_CREATE_ORG_ROLE", "name": "Create Organization Role", "description": "Tool to create a new role for an organization in Snapchat Marketing API. Use when you need to assign roles to organization members after they have been invited. Each member must be assigned one organization-level role type." }, { "slug": "SNAPCHAT_CREATE_SEGMENT", "name": "Create Audience Segment", "description": "Tool to create new audience segments (customer lists or lookalikes) in Snapchat Ads. Use when you need to create targeted audience segments for ad campaigns. Initial status returns as PENDING and transitions occur after processing. Note: An ad account can only have a maximum of 1000 customer list segments." }, { "slug": "SNAPCHAT_DELETE_ADACCOUNTS_OFFER_DISCLAIMERS", "name": "Delete Offer Disclaimer", "description": "Tool to delete an offer disclaimer from a Snapchat ad account. Use when you need to remove an offer disclaimer that is no longer needed or was created in error." }, { "slug": "SNAPCHAT_DELETE_ADSQUADS", "name": "Delete Ad Squad", "description": "Tool to permanently delete an ad squad from Snapchat Marketing API. Use when you need to remove an ad squad that is no longer needed. This operation cannot be undone." }, { "slug": "SNAPCHAT_DELETE_ALL_SEGMENT_USERS", "name": "Delete All Segment Users", "description": "Tool to remove all users from a Snapchat audience segment. Use when you need to clear all users from a Customer List segment. Returns the updated segment with approximate_number_users set to 0." }, { "slug": "SNAPCHAT_DELETE_CAMPAIGN", "name": "Delete Campaign", "description": "Tool to delete a campaign from Snapchat Marketing API. Use when you need to permanently remove a campaign from your Snapchat Ads account." }, { "slug": "SNAPCHAT_DELETE_CATALOGS", "name": "Delete Catalog", "description": "Tool to delete a catalog by ID from Snapchat Marketing API. Use when you need to permanently remove a catalog. This is a destructive operation that cannot be undone." }, { "slug": "SNAPCHAT_DELETE_EVENT_DETAILS", "name": "Delete Event Details", "description": "Tool to delete event details from Snapchat Marketing API. Use when you need to remove an Event Details entity. Use with caution as there is no way to reinstate a deleted entity." }, { "slug": "SNAPCHAT_DELETE_MEMBER", "name": "Delete Member", "description": "Tool to remove a member from an organization in Snapchat Marketing API. Use when you need to revoke access for a member." }, { "slug": "SNAPCHAT_DELETE_PRODUCT_FEEDS", "name": "Delete product feed", "description": "Tool to permanently delete a product feed from Snapchat Ads. Use when you need to remove a product catalog feed. Requires Organization Admin permission. This action is irreversible." }, { "slug": "SNAPCHAT_DELETE_ROLE", "name": "Delete Role", "description": "Tool to delete a role from Snapchat Marketing API. Use when you need to remove a role from an Organisation, Catalog or Ad Account. If deleting all of a Member's roles, consider also deleting the Member entity from the Organization." }, { "slug": "SNAPCHAT_DELETE_SEGMENT", "name": "Delete Audience Segment", "description": "Tool to delete an audience segment from Snapchat. Use when you need to permanently remove an audience segment. WARNING: This operation is irreversible - deleted segments cannot be retrieved." }, { "slug": "SNAPCHAT_DELETE_SEGMENT_USERS", "name": "Delete Users from Segment", "description": "Tool to remove specific users from a Snapchat audience segment. Use when you need to delete certain user identifiers (email, phone, or mobile ad IDs) from a Customer List segment. All identifiers must be normalized and SHA-256 hashed before submission. Maximum 100,000 identifiers per request." }, { "slug": "SNAPCHAT_GET_AD_ACCOUNT", "name": "Get Ad Account", "description": "Tool to retrieve a specific ad account by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing ad account." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_ADSQUADS", "name": "Get Ad Account Ad Squads", "description": "Tool to retrieve all ad squads in an ad account by ID. Use when you need to list or fetch ad squads for a specific Snapchat ad account." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_AD_SQUAD_UI_RENDER_DATA", "name": "Get Ad Account Ad Squad UI Render Data", "description": "Tool to retrieve ad squad UI render data for a Snapchat ad account. Use when you need to fetch UI render data objects that determine available optimization goals together with campaign objectives. The conversion_location field indicates where conversions occur (APP, CALL, LEAD_FORM, PUBLIC_PROFILE, TEXT, or WEB)." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_DYNAMIC_TEMPLATES", "name": "Get Ad Account Dynamic Templates", "description": "Tool to retrieve dynamic templates for a Snapchat ad account. Use when you need to list or fetch dynamic templates used for dynamic product ads in a specific ad account." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_EVENT_DETAILS", "name": "Get Ad Account Event Details", "description": "Tool to retrieve all Event Details entities for a specific ad account. Use when you need to list event details associated with an ad account for reminder creative campaigns." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_INTERACTION_ZONES", "name": "Get Ad Account Interaction Zones", "description": "Tool to retrieve interaction zones for an ad account from Snapchat Marketing API. Use when you need to list all interaction zones configured for a specific ad account." }, { "slug": "SNAPCHAT_GET_AD_ACCOUNTS_LEAD_GENERATION_FORMS", "name": "Get Ad Account Lead Generation Forms", "description": "Tool to retrieve all lead generation forms for a specific ad account from Snapchat Marketing API. Use when you need to list or fetch all lead gen forms associated with an advertising account." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_LEADS_REPORT", "name": "Get Ad Account Leads Report", "description": "Tool to retrieve ad account leads report by ID from Snapchat Marketing API. Use when you need to fetch lead generation data for a specific ad account and report run." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_MOBILE_APPS", "name": "Get Ad Account Mobile Apps", "description": "Tool to retrieve all mobile apps associated with a Snapchat ad account by ID. Use when you need to list or fetch mobile apps for a specific ad account." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_OFFER_DISCLAIMERS", "name": "Get Ad Account Offer Disclaimers", "description": "Tool to retrieve all offer disclaimers for a specific ad account from Snapchat Marketing API. Use when you need to list or fetch legal disclaimers associated with an advertising account's offers." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_SPEND_GUIDANCE", "name": "Get Ad Account Spend Guidance", "description": "Tool to retrieve spend guidance for an ad account from Snapchat Marketing API. Use when you need bid and budget recommendations for specific signal types and optimization goals." }, { "slug": "SNAPCHAT_GET_AD_ACCOUNTS_STATS", "name": "Get Ad Account Stats", "description": "Tool to retrieve ad account statistics from Snapchat Marketing API. Use when you need performance metrics like impressions, swipes, spend, or video views for an ad account over a specified time period." }, { "slug": "SNAPCHAT_GET_ADACCOUNTS_STATS_REPORT", "name": "Get Ad Account Stats Report", "description": "Tool to retrieve ad account stats report by ID from Snapchat Marketing API. Use when you need to check the status of an async stats report or download a completed report." }, { "slug": "SNAPCHAT_GET_AD_SQUAD", "name": "Get Ad Squad", "description": "Tool to retrieve a specific ad squad by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing ad squad including targeting, budget, and placement settings." }, { "slug": "SNAPCHAT_GET_AD_SQUAD_RESTRICTIONS", "name": "Get Ad Squad Restrictions", "description": "Tool to retrieve ad type restrictions for a specific ad squad from Snapchat Marketing API. Use when you need to see which ad types are currently present in an ad squad and their counts." }, { "slug": "SNAPCHAT_GET_ADSQUADS_AUDIENCE_SIZE_V2", "name": "Get Ad Squad Audience Size", "description": "Tool to retrieve estimated audience size for a specific ad squad by ID. Use when you need to check the potential reach of an existing ad squad's targeting configuration." }, { "slug": "SNAPCHAT_GET_ADSQUADS_STATS_REPORT", "name": "Get Ad Squad Stats Report", "description": "Tool to retrieve adsquads stats report by ID from Snapchat Marketing API. Use when checking the status of an async report or getting the download URL for a completed stats report." }, { "slug": "SNAPCHAT_GET_AD_SQUAD_STATS", "name": "Get Ad Squad Stats", "description": "Tool to retrieve performance statistics for a specific ad squad from Snapchat Marketing API. Use when you need to analyze ad squad performance metrics such as impressions, swipes, conversions, and spend." }, { "slug": "SNAPCHAT_GET_AD_SQUAD_TARGETING", "name": "Get Ad Squad Targeting", "description": "Tool to retrieve targeting specifications for a specific ad squad from Snapchat Marketing API. Use when you need to fetch detailed targeting criteria for an existing ad squad." }, { "slug": "SNAPCHAT_GET_AD_STATS", "name": "Get Ad Stats", "description": "Tool to retrieve performance statistics for a specific ad from Snapchat Marketing API. Use when you need to analyze ad performance metrics such as impressions, swipes, conversions, and spend." }, { "slug": "SNAPCHAT_GET_AUTHENTICATED_USER", "name": "Get Authenticated User", "description": "Tool to retrieve information about the authenticated user from Snapchat Marketing API. Use when you need to fetch the current user's ID, email, display name, organization membership, or Snapchat username." }, { "slug": "SNAPCHAT_GET_BILLING_CENTER", "name": "Get Billing Center", "description": "Tool to retrieve a specific billing center by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing billing center." }, { "slug": "SNAPCHAT_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve a specific campaign by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing campaign." }, { "slug": "SNAPCHAT_GET_CAMPAIGN_CHANGELOG", "name": "Get Campaign Changelog", "description": "Tool to retrieve changelog (audit log) for a campaign from Snapchat Marketing API. Use when you need to track changes made to a campaign, including who made the changes and what was modified. Note: changelogs are only available from July 16, 2019 onwards." }, { "slug": "SNAPCHAT_GET_CAMPAIGNS_BY_IDS", "name": "Get Campaigns by IDs", "description": "Tool to fetch multiple campaigns by their IDs from Snapchat Marketing API. Use when you need to retrieve detailed information about specific campaigns in bulk." }, { "slug": "SNAPCHAT_GET_CAMPAIGN_STATS", "name": "Get Campaign Stats", "description": "Tool to retrieve performance statistics for a specific campaign from Snapchat Marketing API. Use when you need to analyze campaign performance metrics such as impressions, swipes, conversions, and spend." }, { "slug": "SNAPCHAT_GET_CATALOGS", "name": "Get Catalog", "description": "Tool to retrieve a specific catalog by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing catalog including its vertical, event sources, and product set details." }, { "slug": "SNAPCHAT_GET_CATALOGS_PRODUCT_SETS", "name": "Get Catalog Product Sets", "description": "Tool to retrieve all product sets from a Snapchat catalog. Use when you need to list or view product sets within a specific catalog for dynamic product ads." }, { "slug": "SNAPCHAT_GET_DYNAMIC_TEMPLATE", "name": "Get Dynamic Template", "description": "Tool to retrieve a specific dynamic template by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing dynamic template used for dynamic product ads." }, { "slug": "SNAPCHAT_GET_DYNAMIC_TEMPLATES_EXTERNAL_CHANGELOGS", "name": "Get Dynamic Templates External Changelogs", "description": "Tool to retrieve external changelogs for a dynamic template from Snapchat Marketing API. Use when you need to track modification history and audit changes made to a dynamic template. Note: changelogs are only available from July 16, 2019 onwards." }, { "slug": "SNAPCHAT_GET_EVENT_DETAILS", "name": "Get Event Details", "description": "Tool to retrieve event details by ID from Snapchat Marketing API. Use when you need to fetch detailed information about a specific event." }, { "slug": "SNAPCHAT_GET_FUNDING_SOURCE", "name": "Get Funding Source", "description": "Tool to retrieve a specific funding source by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about payment methods like credit cards, PayPal accounts, or lines of credit." }, { "slug": "SNAPCHAT_GET_INTERACTION_ZONE", "name": "Get Interaction Zone", "description": "Tool to retrieve a specific interaction zone by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing interaction zone including its creative elements and render type." }, { "slug": "SNAPCHAT_GET_INVOICE", "name": "Get Invoice", "description": "Tool to retrieve a specific invoice by its ID from Snapchat Marketing API. Use when you need to fetch detailed billing information including amounts, due dates, and optionally PDF content for a specific invoice." }, { "slug": "SNAPCHAT_GET_MEDIA", "name": "Get Media", "description": "Tool to retrieve a specific media file by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing media asset." }, { "slug": "SNAPCHAT_GET_MEDIA_BY_IDS", "name": "Get Media by IDs", "description": "Tool to fetch multiple media items by their IDs from Snapchat Marketing API. Use when you need to retrieve detailed information about specific media assets in bulk." }, { "slug": "SNAPCHAT_GET_MEDIA_STATS", "name": "Get Media Stats", "description": "Tool to retrieve performance statistics for a specific media from Snapchat Marketing API. Use when you need to analyze media performance metrics such as impressions, swipes, spend, and video views. Supports VIDEO and IMAGE media types only; reach metrics are not available." }, { "slug": "SNAPCHAT_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve a specific member by ID from a Snapchat organization. Use when you need to fetch detailed information about an existing member." }, { "slug": "SNAPCHAT_GET_ORGANIZATION", "name": "Get Organization", "description": "Tool to retrieve a specific organization by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing organization." }, { "slug": "SNAPCHAT_GET_ORGANIZATIONS_CATALOGS", "name": "Get Organizations Catalogs", "description": "Tool to retrieve all catalogs for a specific organization from Snapchat Marketing API. Use when you need to list all catalogs within an organization for Dynamic Product Ads. Supports pagination for large result sets." }, { "slug": "SNAPCHAT_GET_ORGANIZATIONS_MOBILE_APPS", "name": "Get Organizations Mobile Apps", "description": "Tool to retrieve mobile apps associated with a Snapchat organization by organization ID. Use when you need to list iOS and Android apps registered for tracking and campaigns." }, { "slug": "SNAPCHAT_GET_ORGANIZATIONS_PUBLIC_PROFILES", "name": "Get Organizations Public Profiles", "description": "Tool to retrieve organization public profiles by ID from Snapchat Marketing API. Use when you need to fetch public profile information for a specific organization." }, { "slug": "SNAPCHAT_GET_PIXELS", "name": "Get Ad Account Pixels", "description": "Tool to retrieve all Snap Pixels associated with an ad account. Use when you need to list conversion tracking pixels for a specific Snapchat ad account." }, { "slug": "SNAPCHAT_GET_PRODUCT_FEEDS", "name": "Get Product Feed", "description": "Tool to retrieve a product feed by ID from Snapchat Marketing API. Use when you need to get details about a specific product feed including its configuration, schedule, and metadata for dynamic product ads." }, { "slug": "SNAPCHAT_GET_PRODUCT_FEEDS_FEED_UPLOADS", "name": "Get Product Feed Uploads", "description": "Tool to retrieve product feed upload history for a specific product feed. Use when you need to check the status, metrics, or processing details of product catalog uploads for dynamic product ads." }, { "slug": "SNAPCHAT_GET_PRODUCT_SETS", "name": "Get Product Set", "description": "Tool to retrieve a specific product set by ID from Snapchat Marketing API. Use when you need to fetch details about a particular product set for dynamic product ads." }, { "slug": "SNAPCHAT_GET_SEGMENT", "name": "Get Audience Segment", "description": "Tool to retrieve a specific audience segment by its ID from Snapchat Marketing API. Use when you need to fetch detailed information about an existing segment including its status, size, and targeting availability." }, { "slug": "SNAPCHAT_GET_TARGETING_CARRIERS", "name": "Get Targeting Carriers", "description": "Tool to retrieve available mobile carrier targeting options from Snapchat Marketing API. Use when you need to get the list of carriers that can be used for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_CONNECTION_TYPES", "name": "Get Targeting Connection Types", "description": "Tool to retrieve available connection types for device targeting from Snapchat Marketing API. Use when you need to fetch the list of connection type options (WIFI, CELL) that can be used for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_DEMOGRAPHICS_ADVANCED_DEMOGRAPHICS", "name": "Get Advanced Demographics Targeting Options", "description": "Tool to retrieve all available advanced demographics targeting options from Snapchat Marketing API. Use when you need to fetch the list of demographic segments available for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_DEMOGRAPHICS_AGE_GROUP", "name": "Get Targeting Demographics Age Group", "description": "Tool to retrieve all available age group targeting options from Snapchat Marketing API. Use when you need to fetch the predefined age brackets (13-17, 18-20, 21-24, 25-34, 35+) for demographic targeting in ad campaigns." }, { "slug": "SNAPCHAT_GET_TARGETING_DEMOGRAPHICS_GENDER", "name": "Get Gender Targeting Options", "description": "Tool to retrieve all available gender targeting options from Snapchat Marketing API. Use when you need to fetch the list of gender categories available for ad targeting (MALE, FEMALE, OTHER)." }, { "slug": "SNAPCHAT_GET_TARGETING_DEMOGRAPHICS_LANGUAGES", "name": "Get Targeting Demographics Languages", "description": "Tool to retrieve all available language targeting options from Snapchat Marketing API. Use when you need to fetch language codes and names for demographic targeting in ad campaigns." }, { "slug": "SNAPCHAT_GET_TARGETING_DEVICE_IOS_OS_VERSION", "name": "Get Targeting Device iOS OS Version", "description": "Tool to retrieve all available iOS OS version targeting options from Snapchat Marketing API. Use when you need to get the list of iOS versions that can be used for targeting with os_version_min and os_version_max parameters." }, { "slug": "SNAPCHAT_GET_TARGETING_DEVICE_MARKETING_NAMES", "name": "Get Targeting Device Marketing Names", "description": "Tool to retrieve available device marketing names for targeting from Snapchat Marketing API. Use when you need to get the list of device makes and models that can be used for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_GEO_POSTAL_CODE", "name": "Get Targeting Geo Postal Codes", "description": "Tool to retrieve postal code targeting options by country code from Snapchat Marketing API. Use when you need to get the list of postal codes available for ad targeting in a specific country." }, { "slug": "SNAPCHAT_GET_TARGETING_GEO_REGION", "name": "Get Targeting Geo Region", "description": "Tool to retrieve region targeting options for a specific country from Snapchat Marketing API. Use when you need to get the list of regions (states, provinces, etc.) that can be used for ad targeting within a particular country." }, { "slug": "SNAPCHAT_GET_TARGETING_GEO_US_POSTAL_CODE", "name": "Get Targeting Geo US Postal Codes", "description": "Tool to retrieve all US postal code targeting options from Snapchat Marketing API. Use when you need to get the list of US ZIP codes available for ad targeting with geographic hierarchy data." }, { "slug": "SNAPCHAT_GET_TARGETING_GEO_US_REGION", "name": "Get Targeting Geo US Region", "description": "Tool to retrieve all available US region targeting options from Snapchat Marketing API. Use when you need to fetch the list of US states/regions available for geographic ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_INTERESTS_DLXC", "name": "Get Targeting Interests DLXC", "description": "Tool to retrieve Oracle Datalogix DLXC interest targeting options from Snapchat Marketing API. Use when you need to fetch available DLXC interest categories for ad targeting. Note: This endpoint is deprecated as of September 27, 2024." }, { "slug": "SNAPCHAT_GET_TARGETING_INTERESTS_DLXP", "name": "Get Targeting Interests DLXP", "description": "Tool to retrieve Oracle Datalogix DLXP interest targeting options from Snapchat Marketing API. Use when you need to fetch business dealer and service targeting options for ad campaigns. Note: This endpoint is deprecated." }, { "slug": "SNAPCHAT_GET_TARGETING_INTERESTS_DLXS", "name": "Get Targeting Interests DLXS", "description": "Tool to retrieve all available Oracle Datalogix (DLXS) interest targeting options from Snapchat Marketing API. Use when you need to get the list of DLXS interests that can be used for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_INTERESTS_NLN", "name": "Get Targeting Interests NLN", "description": "Tool to retrieve all available Nielsen interest targeting options from Snapchat Marketing API. Use when you need to get Nielsen-based interest categories for audience targeting in ad campaigns." }, { "slug": "SNAPCHAT_GET_TARGETING_INTERESTS_PLC", "name": "Get Targeting Interests PLC", "description": "Tool to retrieve all available PLC (Placed Visitation Segments) targeting options from Snapchat Marketing API. Use when you need to get location-based interest segments for audience targeting in ad campaigns." }, { "slug": "SNAPCHAT_GET_TARGETING_LOCATION_CATEGORIES_LOI", "name": "Get Location Category LOI Options", "description": "Tool to retrieve all location category (LOI - Locations of Interest) targeting options from Snapchat Marketing API. Use when you need to fetch the list of venue types and business categories available for location-based ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_METROS", "name": "Get Targeting Metros", "description": "Tool to retrieve metro/DMA targeting options by country code from Snapchat Marketing API. Use when you need to get the list of metro areas available for ad targeting in a specific country." }, { "slug": "SNAPCHAT_GET_TARGETING_OS_TYPES", "name": "Get Targeting OS Types", "description": "Tool to retrieve available OS type targeting options from Snapchat Marketing API. Use when you need to get the list of operating system types (e.g., iOS, Android) that can be used for ad targeting." }, { "slug": "SNAPCHAT_GET_TARGETING_OS_VERSIONS", "name": "Get Targeting OS Versions", "description": "Tool to retrieve available OS versions for targeting from Snapchat Marketing API. Use when you need to get the list of iOS or Android versions that can be used for targeting with os_version_min and os_version_max parameters." }, { "slug": "SNAPCHAT_GET_TARGETING_V1_INTERESTS_SC_LS", "name": "Get Targeting V1 Interests SCLS", "description": "Tool to retrieve all Snap Lifestyle Categories V1 targeting options from Snapchat Marketing API. Use when you need to fetch interest-based targeting categories for ad campaigns." }, { "slug": "SNAPCHAT_GET_TARGETING_V1_INTERESTS_SHP", "name": "Get Targeting V1 Interests Shp", "description": "Tool to retrieve first-party shopper segment targeting options from Snapchat Marketing API. Use when you need to get shopper segments for ad targeting based on consumer purchase behavior." }, { "slug": "SNAPCHAT_GET_TARGETING_V1_INTERESTS_VAC", "name": "Get Targeting VAC Interests", "description": "Tool to retrieve First-Party Visitation Segments (VAC interests) for targeting from Snapchat Marketing API. Use when you need to fetch venue categories based on locations users have visited (e.g., restaurants, retail stores)." }, { "slug": "SNAPCHAT_GET_TARGETING_V1_OPTIONS", "name": "Get Targeting V1 Options", "description": "Tool to retrieve all available targeting v1 options from Snapchat Marketing API. Use when you need to get the list of targeting dimensions available for ad targeting in a specific country." }, { "slug": "SNAPCHAT_LIST_ACCOUNT_ROLES", "name": "List Account Roles", "description": "Tool to retrieve all roles for a Snapchat Ad Account. Use when you need to view all member access permissions assigned within an account." }, { "slug": "SNAPCHAT_LIST_AD_ACCOUNTS", "name": "List Ad Accounts", "description": "Tool to retrieve all ad accounts associated with an organization from Snapchat Marketing API. Use when you need to list or fetch all ad accounts for a specific organization." }, { "slug": "SNAPCHAT_LIST_ADS_BY_ACCOUNT", "name": "List Ads by Account", "description": "Tool to retrieve all ads for a specific ad account from Snapchat Marketing API. Use when you need to list all ads associated with an ad account." }, { "slug": "SNAPCHAT_LIST_ADS_BY_AD_SQUAD", "name": "List Ads by Ad Squad", "description": "Tool to retrieve all ads for a specific ad squad from Snapchat Marketing API. Use when you need to list all ads associated with an ad squad." }, { "slug": "SNAPCHAT_LIST_ADS_BY_CAMPAIGN", "name": "List Ads by Campaign", "description": "Tool to retrieve all ads for a specific campaign from Snapchat Marketing API. Use when you need to list or fetch all ads associated with a particular campaign." }, { "slug": "SNAPCHAT_LIST_AD_SQUADS", "name": "List Ad Squads by Campaign", "description": "Tool to retrieve all ad squads for a specific campaign. Use when you need to list or fetch ad squads belonging to a particular Snapchat campaign." }, { "slug": "SNAPCHAT_LIST_BILLING_CENTERS", "name": "List Billing Centers", "description": "Tool to retrieve all billing centers for a Snapchat Ads organization. Use when you need to fetch a complete list of billing centers associated with an organization." }, { "slug": "SNAPCHAT_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to retrieve all campaigns for a specific ad account from Snapchat Marketing API. Use when you need to list all campaigns within an ad account." }, { "slug": "SNAPCHAT_LIST_CATALOG_ROLES", "name": "List Catalog Roles", "description": "Tool to retrieve all roles for a Snapchat catalog. Use when you need to view all member access permissions assigned within a catalog." }, { "slug": "SNAPCHAT_LIST_CREATIVES", "name": "List Creatives", "description": "Tool to retrieve all creatives for a specific ad account from Snapchat Marketing API. Use when you need to list all creative assets within an ad account." }, { "slug": "SNAPCHAT_LIST_FUNDING_SOURCES", "name": "List Funding Sources", "description": "Tool to retrieve all funding sources for a specific organization from Snapchat Marketing API. Use when you need to list all payment methods (credit cards, PayPal, lines of credit, coupons) available for an organization." }, { "slug": "SNAPCHAT_LIST_INVOICES", "name": "List Invoices", "description": "Tool to retrieve all invoices for an ad account from Snapchat Marketing API. Use when you need to fetch billing information for all invoices associated with a specific ad account." }, { "slug": "SNAPCHAT_LIST_MEDIA", "name": "List Media", "description": "Tool to retrieve all media files for a specific Snapchat ad account. Use when you need to list all media assets (images, videos, lenses, or playable ads) available in an ad account." }, { "slug": "SNAPCHAT_LIST_MEMBER_ROLES", "name": "List Member Roles", "description": "Tool to retrieve all roles assigned to a member in Snapchat Marketing API. Use when you need to see all permissions a member has across organizations, ad accounts, and catalogs." }, { "slug": "SNAPCHAT_LIST_MEMBERS", "name": "List Organization Members", "description": "Tool to retrieve all members of a Snapchat organization. Use when you need to view all users who have access to an organization, including their status (INVITED or MEMBER)." }, { "slug": "SNAPCHAT_LIST_ORGANIZATIONS", "name": "List Organizations", "description": "Tool to retrieve all organizations that the authenticated user has access to from Snapchat Marketing API. Use when you need to list all organizations for the current user." }, { "slug": "SNAPCHAT_LIST_ORG_PIXELS", "name": "List Organization Pixels", "description": "Tool to retrieve all Snap Pixels for a specific organization from Snapchat Marketing API. Use when you need to list tracking pixels across all ad accounts within an organization." }, { "slug": "SNAPCHAT_LIST_ORG_ROLES", "name": "List Organization Roles", "description": "Tool to retrieve all roles for a Snapchat organization. Use when you need to view all member access permissions assigned within an organization." }, { "slug": "SNAPCHAT_LIST_PHONE_NUMBERS", "name": "List Phone Numbers", "description": "Tool to retrieve all verified phone numbers associated with a Snapchat ad account. Use when you need to list or fetch phone numbers for calling and texting features." }, { "slug": "SNAPCHAT_LIST_SEGMENTS", "name": "List Audience Segments", "description": "Tool to retrieve all audience segments for an ad account from Snapchat Marketing API. Use when you need to fetch a complete list of segments including customer lists, lookalikes, and engagement audiences." }, { "slug": "SNAPCHAT_LIST_SPONSORED_CONTENT", "name": "List Sponsored Content", "description": "Tool to retrieve organic sponsored content from Snapchat Ads Library. Use when you need to list all available sponsored content from the library with pagination support." }, { "slug": "SNAPCHAT_LIST_TRANSACTIONS", "name": "List Transactions", "description": "Tool to retrieve all transactions for an organization from Snapchat Marketing API. Use when you need to fetch transaction history including payments, refunds, and other billing activities. Supports filtering by time range and ad account." }, { "slug": "SNAPCHAT_SEARCH_ADS_LIBRARY_SPONSORED_CONTENT", "name": "Search Ads Library Sponsored Content", "description": "Tool to search for sponsored content by creator name in Snapchat Ads Library. Use when you need to find ads associated with a specific creator." }, { "slug": "SNAPCHAT_SEARCH_CATALOG_PRODUCTS", "name": "Search Catalog Products", "description": "Tool to search a catalog for products given a provided filter. Use when you need to find specific products in a catalog based on attributes like brand, availability, price, or other properties." }, { "slug": "SNAPCHAT_SEARCH_CATALOGS_HOTELS", "name": "Search Catalogs Hotels", "description": "Tool to search for hotels in a Snapchat catalog using filters and pagination. Use when you need to find specific hotels in a catalog by name, price, rating, location, or other attributes." }, { "slug": "SNAPCHAT_UPDATE_AD_ACCOUNT", "name": "Update Ad Account", "description": "Tool to update an existing ad account within a Snapchat organization. Use when modifying ad account settings such as name, status, billing, or spend caps. Requires the ad account ID and organization ID. All account fields must be provided in the update request." }, { "slug": "SNAPCHAT_UPDATE_AD_SQUAD", "name": "Update Ad Squad", "description": "Tool to update an existing ad squad within a campaign. Use when modifying ad delivery targeting, budgets, placements, or other settings for an existing Snapchat ad squad." }, { "slug": "SNAPCHAT_UPDATE_BILLING_CENTER", "name": "Update Billing Center", "description": "Tool to update one or more existing billing centers for a Snapchat Ads organization. Use when you need to modify billing center details such as name, email address, or billing address information. Requires the billing center ID along with organization ID and updated billing information." }, { "slug": "SNAPCHAT_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update an existing advertising campaign in Snapchat Marketing API. Use when you need to modify campaign properties like name, status, budget, timing, or objectives." }, { "slug": "SNAPCHAT_UPDATE_SEGMENT", "name": "Update Audience Segment", "description": "Tool to update existing audience segments in Snapchat Ads. Use when you need to modify the name, description, or retention period of audience segments. Only these three fields can be updated; other segment properties are read-only." }, { "slug": "SNAPCHAT_UPLOAD_MEDIA_MULTIPART", "name": "Upload Media Multipart", "description": "Tool to upload large media files using multipart upload in Snapchat Marketing API. Use when uploading media files larger than 32MB or when you need to upload in chunks for reliability. Start with INIT action to get upload session details." }, { "slug": "SNAPCHAT_VALIDATE_CONVERSION_EVENT", "name": "Validate Conversion Event", "description": "Tool to validate conversion events before sending them to Snapchat Conversion API. Use when testing pixel implementation or verifying event data format. Checks event structure, required fields, and data types without actually recording the events." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "snapchat_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "snapchat-marketing-api,snapchat-offline-conversions-api,snapchat-profile-api" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "snatchbot", "name": "Snatchbot", "logo": "https://logos.composio.dev/api/snatchbot", "description": "A revolutionary bot builder platform to add multi-channel messaging to your system.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "snatchbot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "App Secret", "type": "string", "description": "Your self-generated App Secret (up to 55 characters, Latin letters and numbers) from Channels > Other > API in bot settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "snipcart", "name": "Snipcart", "logo": "https://logos.composio.dev/api/snipcart", "description": "E-commerce platform for developers to add shopping cart functionality to any website", "category": "ecommerce", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "snipcart_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Secret API Key", "type": "string", "description": "Get your secret API key from your merchant dashboard at https://app.snipcart.com/dashboard/account/credentials", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "snowflake_basic", "name": "Snowflake Basic", "logo": "https://logos.composio.dev/api/snowflake_basic", "description": "Snowflake is a cloud-based data warehouse offering elastic scaling, secure data sharing, and SQL analytics across multiple cloud environments", "category": "databases", "authSchemes": [ "BASIC" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SNOWFLAKE_BASIC_DESCRIBE_TABLE", "name": "Describe table", "description": "Retrieves detailed information for each column (including name, data type, kind, nullability, default value, and key status) in a specified Snowflake table." }, { "slug": "SNOWFLAKE_BASIC_EXPLORE_COLUMNS", "name": "Explore Columns", "description": "Retrieves a sample of distinct values for specified columns from a Snowflake table." }, { "slug": "SNOWFLAKE_BASIC_RUN_QUERY", "name": "Run Query", "description": "Executes the given SQL query in Snowflake within the specified database and schema (which must exist and be accessible), automatically setting context first." }, { "slug": "SNOWFLAKE_BASIC_SHOW_DATABASES", "name": "Show databases", "description": "Retrieves a list of all databases available in the Snowflake account." }, { "slug": "SNOWFLAKE_BASIC_SHOW_SCHEMAS", "name": "Show schemas", "description": "Retrieves a list of all schemas within a specified Snowflake database." }, { "slug": "SNOWFLAKE_BASIC_SHOW_TABLES", "name": "Show Tables", "description": "Retrieves a list of tables, including their row counts and sizes in bytes, from a specified schema within a Snowflake database." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your Snowflake account ID for authentication. Use the format 'myorganization-myaccount'. To find your account ID, click on your account in the bottom left corner of the Snowflake web interface. The account identifier will be displayed in the account details popup.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "softr", "name": "Softr", "logo": "https://logos.composio.dev/api/softr", "description": "Build custom apps and portals from Airtable in minutes with no-code. Softr provides user management and database APIs for building client portals, internal tools, and web applications.", "category": "app builder", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SOFTR_CREATE_DATABASE", "name": "Create Database", "description": "Tool to create a new database in a Softr workspace. Use when you need to set up a new database for storing data within a specific Softr workspace." }, { "slug": "SOFTR_CREATE_RECORD", "name": "Create Record", "description": "Creates a new record in a Softr database table. Use when you need to add new data to a specific table in your Softr database." }, { "slug": "SOFTR_CREATE_TABLE", "name": "Create Table", "description": "Tool to create a new table within a specified Softr database. Use when you need to add a new data structure with custom fields to organize information." }, { "slug": "SOFTR_CREATE_TABLE_FIELD", "name": "Create Table Field", "description": "Tool to add a new field to a Softr table. Use when you need to add a new column to an existing table, such as adding an email field, a text field, or any other field type to store additional data." }, { "slug": "SOFTR_DELETE_DATABASE", "name": "Delete database", "description": "Tool to delete a specific database by its ID from Softr. Use when you need to remove a database. The database must be empty unless the 'force' parameter is set to true. This operation is irreversible." }, { "slug": "SOFTR_DELETE_RECORD", "name": "Delete Record", "description": "Tool to delete a record from a Softr database table. Use when you need to permanently remove a specific record." }, { "slug": "SOFTR_DELETE_TABLE", "name": "Delete Table", "description": "Tool to delete a specific table by its ID from a database. Use when you need to remove a table. The table must be empty unless the force parameter is set to true." }, { "slug": "SOFTR_DELETE_TABLE_FIELD", "name": "Delete Table Field", "description": "Tool to delete a field from a Softr database table. Use when you need to remove a field from a table. Returns success confirmation upon completion." }, { "slug": "SOFTR_GET_DATABASE", "name": "Get Database", "description": "Tool to retrieve details for a specific database by ID. Use when you need to fetch information about a particular database in Softr." }, { "slug": "SOFTR_GET_DATABASES", "name": "Get Databases", "description": "Tool to retrieve all databases available in the workspace. Use when you need to list or discover available databases for further operations." }, { "slug": "SOFTR_GET_RECORD", "name": "Get Record", "description": "Tool to retrieve a single record by its ID from a Softr database table. Use when you need to fetch detailed information about a specific record." }, { "slug": "SOFTR_GET_RECORDS", "name": "Get records from table", "description": "Tool to retrieve a paginated list of records from a Softr table. Use when you need to fetch records from a specific table with optional pagination parameters." }, { "slug": "SOFTR_GET_TABLE", "name": "Get Table", "description": "Tool to retrieve details for a specific table by ID. Use when you need to inspect table structure, fields, or metadata." }, { "slug": "SOFTR_GET_TABLE_FIELD", "name": "Get Table Field", "description": "Tool to retrieve a specific field from a Softr table by field ID. Use when you need detailed configuration information about a table field, including its type, options, and metadata." }, { "slug": "SOFTR_GET_TABLES", "name": "Get Tables", "description": "Retrieves all tables within a specified Softr database. Use when you need to list or explore the tables available in a database." }, { "slug": "SOFTR_GET_TABLE_VIEWS", "name": "Get Table Views", "description": "Tool to retrieve all views for a specified table in a Softr database. Use when you need to list or inspect available views for a table." }, { "slug": "SOFTR_SEARCH_RECORDS", "name": "Search Records", "description": "Tool to search records in a Softr database table with filtering and pagination. Use when you need to retrieve records from a specific table, optionally filtered by field values and paginated for large result sets." }, { "slug": "SOFTR_UPDATE_DATABASE", "name": "Update Database", "description": "Tool to update an existing database's name and/or description. Use when you need to modify database metadata after creation." }, { "slug": "SOFTR_UPDATE_RECORD", "name": "Update a record", "description": "Tool to update an existing record's field values in a Softr table. Use when you need to modify specific fields of a record by providing the database ID, table ID, record ID, and the new field values." }, { "slug": "SOFTR_UPDATE_TABLE", "name": "Update Table", "description": "Tool to update a table's name and/or description in Softr Database. Use when you need to modify table metadata. To modify fields, use the field-specific endpoints instead." }, { "slug": "SOFTR_UPDATE_TABLE_FIELD", "name": "Update table field", "description": "Updates an existing field in a Softr table. Use when you need to modify a field's name, type, or configuration options. Note: The API requires both 'type' and 'options' fields even if only updating the name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "softr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Dashboard → Profile icon → My account → API Settings and click \"Generate API key\". You must be an application owner or workspace collaborator.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Domain", "type": "string", "description": "Your Softr app domain or subdomain (e.g., \"yourdomain.softr.app\" or \"yourdomain.com\"). Access your app on Softr → Publish to find your subdomain. Your app must be published before making API calls.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "solcast", "name": "Solcast", "logo": "https://logos.composio.dev/api/solcast", "description": "Solar resource assessment and forecasting data for irradiance and PV power, globally.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SOLCAST_GET_DATA_HISTORIC_RADIATION_AND_WEATHER", "name": "Get Historic Radiation And Weather", "description": "Tool to get historical irradiance and weather estimated actuals for a requested location. Use when you need historical solar radiation and weather data from 2007-01-01 to 7 days ago, for up to 31 days at a time." }, { "slug": "SOLCAST_GET_RESOURCES_PV_POWER_SITE", "name": "Get PV Power Resource", "description": "Tool to retrieve a specific PV power resource by its unique identifier. Use when you need to fetch complete resource configuration including capacity, orientation, tracking, and derating parameters." }, { "slug": "SOLCAST_GET_RESOURCES_PV_POWER_SITES", "name": "Get Resources PV Power Sites", "description": "Tool to list PV power resources available to authenticated user. Use when you need to retrieve the list of PV power sites with optional filtering by entitlement level." }, { "slug": "SOLCAST_PATCH_RESOURCES_PV_POWER_SITE", "name": "Patch PV Power Resource", "description": "Tool to partially update an existing PV power resource's technical specifications. Use when you need to modify specific resource configuration fields without replacing the entire resource." }, { "slug": "SOLCAST_POST_RESOURCES_PV_POWER_SITE", "name": "Create PV Power Resource", "description": "Tool to create a new PV power resource for Advanced PV Power forecasting. Use when you need to add a new solar installation site with comprehensive technical specifications including capacity, orientation, tracking parameters, and derating factors." }, { "slug": "SOLCAST_PUT_RESOURCES_PV_POWER_SITE", "name": "Update PV Power Resource", "description": "Tool to update an existing PV power resource with comprehensive technical specifications for solar installation site modeling. Use when you need to modify resource configuration including capacity, orientation, tracking parameters, derating factors, and bifacial system settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "solcast_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Solcast account, click the dropdown on the top right, and go to \"Your API Key\" at https://toolkit.solcast.com.au/account/api-key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sonarcloud", "name": "Sonarcloud", "logo": "https://logos.composio.dev/api/sonarcloud", "description": "SonarCloud is the leading online service for Code Quality & Security. Free analysis for open-source projects covering 24 languages.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sonarcloud_bearer", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Token", "type": "string", "description": "To generate your Token, sign in to SonarCloud and click the user menu on the top right. Then, go to \"My Account\" > \"Security\" (https://sonarcloud.io/account/security)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sourceforge", "name": "Sourceforge", "logo": "https://logos.composio.dev/api/sourceforge", "description": "Open source software hosting and collaboration platform for developers", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "sourceforge_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "sourceforge_bearer_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Bearer Token", "type": "string", "description": "Generate your bearer token from https://sourceforge.net/auth/oauth/ under the OAuth tab in Account Settings", "required": true, "default": null }, { "name": "generic_id", "displayName": "Username", "type": "string", "description": "Your Sourceforge username, available from https://sourceforge.net/auth/preferences/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sourcegraph", "name": "Sourcegraph", "logo": "https://logos.composio.dev/api/sourcegraph", "description": "Sourcegraph is a code intelligence platform that enables developers to search, understand, and manage code across large codebases.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SOURCEGRAPH_CHECK_SITE_SETTINGS_EDIT_PERMISSION", "name": "Check Site Settings Edit Permission", "description": "Tool to check whether site settings can be edited through the API. Use when you need to confirm the API allows site settings edits before attempting configuration changes." }, { "slug": "SOURCEGRAPH_COMPARE_COMMITS", "name": "Compare Commits", "description": "Tool to compare two commits in a repository and retrieve their file diffs. Use after confirming the repository name and commit SHAs to inspect differences." }, { "slug": "SOURCEGRAPH_GET_COMMIT_DETAILS", "name": "Get Commit Details", "description": "Get detailed information about a specific commit in a repository." }, { "slug": "SOURCEGRAPH_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve information about the currently authenticated user. Use when needing confirmation of identity via Sourcegraph GraphQL API." }, { "slug": "SOURCEGRAPH_GET_FILE_CONTENTS", "name": "Get File Contents", "description": "Tool to fetch the contents of a specified file on the default branch. Use when you need raw file text without cloning the repo or using a slower code-host API." }, { "slug": "SOURCEGRAPH_LIST_REPOSITORIES", "name": "List Repositories", "description": "Tool to list repositories on the Sourcegraph instance. Use when you need to paginate through all available repositories." }, { "slug": "SOURCEGRAPH_LIST_REPOSITORY_FILES", "name": "List Repository Files", "description": "Tool to list all files and directories in a repository path. Use when you need to enumerate files in a repository without cloning." }, { "slug": "SOURCEGRAPH_LIST_REPOSITORY_LANGUAGES", "name": "List repository languages", "description": "Tool to list languages used in a repository. Use when you need to determine the primary and all languages of a given repository; call after you have the repository name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sourcegraph_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Sourcegraph Instance URL", "type": "string", "description": "The base URL of your Sourcegraph instance (with protocol), e.g., 'https://sourcegraph.example.com' or 'https://sourcegraph.com'.", "required": true, "default": "https://sourcegraph.com" }, { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "The personal access token generated from your Sourcegraph user settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sparkpost", "name": "Sparkpost", "logo": "https://logos.composio.dev/api/sparkpost", "description": "Email delivery and analytics platform for enterprise senders", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPARKPOST_LIST_EVENTS_MESSAGE_DOCUMENTATION", "name": "List Events Message Documentation", "description": "Tool to retrieve documentation for SparkPost event fields. Returns descriptions and types for each event property that can appear in message events. Use when you need to understand available fields in SparkPost event data." }, { "slug": "SPARKPOST_LIST_EVENTS_MESSAGE_SAMPLES", "name": "List Events Message Samples", "description": "Tool to retrieve sample message events for testing purposes. Use when you need example event payloads to understand the structure of SparkPost webhook events." }, { "slug": "SPARKPOST_LIST_WEBHOOKS_EVENTS_DOCUMENTATION", "name": "List Webhooks Events Documentation", "description": "Tool to retrieve documentation for webhook event types. Returns field descriptions, display names, and sample values for each event type. Use when you need to understand webhook event schemas before creating or configuring webhooks." }, { "slug": "SPARKPOST_LIST_WEBHOOKS_EVENTS_SAMPLES", "name": "List Webhook Event Samples", "description": "Tool to retrieve sample webhook events from SparkPost. Use when testing webhook integrations or understanding the structure of event data for specific event types." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sparkpost_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your SparkPost region: SparkPost (US) or SparkPost EU", "required": true, "default": "api" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API Key, navigate to your SparkPost account and sign in, go to Configuration > API Keys (https://app.sparkpost.com/account/api-keys)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "specific", "name": "Specific", "logo": "https://logos.composio.dev/api/specific", "description": "Sales call analytics to drive revenue", "category": "ai sales tools", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPECIFIC_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company record in the Specific platform. Use when you need to add a new company to the workspace with optional ID, name, and custom attributes." }, { "slug": "SPECIFIC_CREATE_CONVERSATION", "name": "Create Conversation", "description": "Tool to create a new conversation (survey response) in the Specific platform. Use when you need to add a new conversation with content, optional contacts, companies, and custom fields. Content can be a simple string or structured ProseMirror document with headings and paragraphs." }, { "slug": "SPECIFIC_CREATE_OR_UPDATE_COMPANY", "name": "Create or Update Company", "description": "Tool to upsert a company record in the Specific platform (create if not exists, update if exists). Use when you need to ensure a company exists with specific data, creating or updating as necessary based on the filter criteria." }, { "slug": "SPECIFIC_CREATE_OR_UPDATE_USER", "name": "Create Or Update User", "description": "Tool to upsert a user record in the Specific platform (creates if not exists, updates if exists). Use when you need to ensure a contact exists with specific data, merging with existing records based on email or ID." }, { "slug": "SPECIFIC_CREATE_USER", "name": "Create User", "description": "Tool to create a new user (contact) record in the Specific platform. Use when you need to add a new contact with email, name, and optional custom attributes or company association." }, { "slug": "SPECIFIC_DELETE_COMPANY", "name": "Delete Company", "description": "Tool to delete a company record from the Specific platform. Use when you need to remove a company by its ID. The operation is permanent and returns the deleted company's details." }, { "slug": "SPECIFIC_DELETE_COMPANY_ATTRIBUTES", "name": "Delete Company Attributes", "description": "Tool to delete specific custom field attributes from a company record. Use when you need to remove custom attributes by their keys from a company. Returns the updated company details." }, { "slug": "SPECIFIC_DELETE_USER", "name": "Delete User", "description": "Tool to remove a user record from the Specific platform. Use when you need to permanently delete a contact from the workspace." }, { "slug": "SPECIFIC_DELETE_USER_ATTRIBUTES", "name": "Delete User Attributes", "description": "Tool to delete specific custom field attributes from a user record in the Specific platform. Use when you need to remove custom field values from a contact without deleting the contact itself." }, { "slug": "SPECIFIC_GET_MY_WORKSPACE", "name": "Get My Workspace", "description": "Tool to get current workspace information for the authenticated user. Use when you need to retrieve the workspace ID and name for the authenticated API key." }, { "slug": "SPECIFIC_LIST_COMPANIES", "name": "List Companies", "description": "Tool to query company records from the Specific platform via GraphQL. Use when you need to retrieve company information, optionally filtering by ID or name." }, { "slug": "SPECIFIC_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Tool to query conversation records (survey responses) from the Specific platform via GraphQL. Use when you need to retrieve customer feedback, survey responses, or conversation history. Returns up to 20 most recent conversations, optionally filtered by source identifiers." }, { "slug": "SPECIFIC_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to query custom field definitions in the Specific platform. Use when you need to retrieve available custom fields that can be associated with companies, contacts, or conversations. Optionally filter by entity type." }, { "slug": "SPECIFIC_LIST_SOURCES", "name": "List Sources", "description": "Tool to retrieve all data sources from the Specific platform. Use when you need to fetch available sources in the workspace." }, { "slug": "SPECIFIC_LIST_SURVEYS", "name": "List Surveys", "description": "Tool to retrieve multiple survey records from the Specific platform via GraphQL. Use when you need to fetch all available surveys with their metadata, including names, contexts, tones, and associated conversation data." }, { "slug": "SPECIFIC_LIST_USERS", "name": "List Users", "description": "Tool to query user accounts from the Specific platform via GraphQL. Use when you need to retrieve user information, optionally filtering by ID, email, or custom attributes." }, { "slug": "SPECIFIC_UPDATE_COMPANY", "name": "Update Company", "description": "Tool to update an existing company record in the Specific platform. Use when modifying company name or custom attributes." }, { "slug": "SPECIFIC_UPDATE_USER", "name": "Update User", "description": "Tool to modify an existing user record in the Specific platform via GraphQL mutation. Use when you need to update contact information such as name, email, company association, or custom attributes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "specific_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Generate your API Key from Preferences → Administration → API in your Specific workspace", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "speechace", "name": "Speechace", "logo": "https://logos.composio.dev/api/speechace", "description": "Speechace provides speech assessment APIs for pronunciation, fluency, and accent evaluation in American and British English.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPEECHACE_SCORE_TEXT_MARKUP_LANGUAGE", "name": "Score Text With Markup Language", "description": "Tool to score text pronunciation using markup language to override the Speechace lexicon and define custom pronunciations with syllable boundaries and phoneme mapping. Use when dealing with heteronyms (words spelled the same but pronounced differently), marking syllable boundaries in complex words, or processing special acronyms and numeric sequences." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "speechace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Product Key", "type": "string", "description": "Sign in and copy your Product Key from the Customer Profile page at https://shop.speechace.com/subscription/profile", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "splitwise", "name": "Splitwise", "logo": "https://logos.composio.dev/api/splitwise", "description": "Splitwise helps you split bills and expenses with friends and family.", "category": "accounting", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 27, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPLITWISE_ADD_FRIEND", "name": "Add Friend", "description": "Tool to add a new friend to Splitwise. Use when you have the friend's email and name details ready." }, { "slug": "SPLITWISE_ADD_USER_TO_GROUP", "name": "Add User to Group", "description": "Tool to add a user to a group. Use when you need to add an existing Splitwise user to a specific group. Note: 200 OK does not indicate success; always check the response 'success' field." }, { "slug": "SPLITWISE_CREATE_COMMENT", "name": "Create Comment", "description": "Tool to create a comment on a specific expense. Use when you need to add a comment or note to an existing expense." }, { "slug": "SPLITWISE_CREATE_EXPENSE", "name": "Create Expense", "description": "Tool to create a new Splitwise expense. Use when you need to record a payment or bill in a group or between users. Provide exactly one of split_equally or users for shares — supplying both or neither causes a validation error and no expense is created." }, { "slug": "SPLITWISE_CREATE_FRIENDS", "name": "Create Friends", "description": "Tool to add multiple friends at once to Splitwise. Use when you need to add several friends in a single operation." }, { "slug": "SPLITWISE_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in Splitwise. Use when you need to create a group for tracking shared expenses. The current user is automatically added to the group. You can optionally add other members during creation." }, { "slug": "SPLITWISE_DELETE_COMMENT", "name": "Delete Comment", "description": "Tool to delete a comment by its ID. Use after confirming you have a valid comment ID." }, { "slug": "SPLITWISE_DELETE_EXPENSE", "name": "Delete Expense", "description": "Tool to delete an existing expense by its ID. Deletion is irreversible — no undelete capability exists. Use after confirming you have the correct expense ID. Inspect the response's `success` and `error` fields to verify deletion succeeded; failures (e.g., user lacks owner/participant permissions) are surfaced there." }, { "slug": "SPLITWISE_DELETE_FRIEND", "name": "Delete Friend", "description": "Tool to delete an existing friend by ID. Use when you need to remove a friend relationship by its user ID. Call after confirming the correct friend ID." }, { "slug": "SPLITWISE_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group and all associated records by its ID. Use when you need to permanently remove a group and its expenses. Call after confirming the correct group ID." }, { "slug": "SPLITWISE_GET_CATEGORIES", "name": "Get Categories", "description": "Tool to retrieve expense categories. Use when you need to list available categories before creating an expense." }, { "slug": "SPLITWISE_GET_COMMENTS", "name": "Get Comments", "description": "Tool to retrieve all comments associated with a specific expense. Use when you need to view comments on an expense, including both system-generated updates and user-authored messages." }, { "slug": "SPLITWISE_GET_CURRENCIES", "name": "Get Currencies", "description": "Tool to retrieve a list of supported currencies. Use when you need to display or validate currency options." }, { "slug": "SPLITWISE_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to retrieve information about the current authenticated user. Use when you need profile details of the logged-in user." }, { "slug": "SPLITWISE_GET_EXPENSE", "name": "Get Expense", "description": "Tool to retrieve detailed information about a specific expense by ID. Use when you need to view expense details including participants, shares, and repayments." }, { "slug": "SPLITWISE_GET_EXPENSES", "name": "Get Expenses", "description": "Tool to list the current user's expenses from Splitwise account. Use when you need to view expenses with optional filters like date ranges, groups, or friends." }, { "slug": "SPLITWISE_GET_FRIEND", "name": "Get Friend Details", "description": "Tool to retrieve detailed information about a specific friend. Use when you need to get profile details and balance information for a friend by their user ID." }, { "slug": "SPLITWISE_GET_FRIENDS", "name": "Get Friends", "description": "Tool to list current user's friends on Splitwise. Use when you need to view all friends, their balances, and shared groups." }, { "slug": "SPLITWISE_GET_GROUP", "name": "Get Group Details", "description": "Tool to retrieve detailed information about a specific group. Returns full group details including members, balances, debts (both original and simplified), avatar URLs, and group settings. Use this when you need comprehensive information about a particular group, such as viewing who owes what to whom. Use group ID of 0 to get non-group expenses." }, { "slug": "SPLITWISE_GET_GROUPS", "name": "Get Groups", "description": "Retrieves all groups the authenticated user belongs to, including group details, members, balances, and debt information. Returns a 'groups' array with no server-side filtering; all name- or ID-based filtering must be done client-side on the full response. Group names may share similar strings or differ in case/whitespace — normalize when matching and prefer group_id once identified. The groups array may be empty if the user belongs to no groups." }, { "slug": "SPLITWISE_GET_NOTIFICATIONS", "name": "Get Notifications", "description": "Tool to retrieve recent activity notifications from the user's Splitwise account. Returns notifications with HTML content suitable for display, with the most recent items first. Use when you need to view recent account activity or updates." }, { "slug": "SPLITWISE_GET_USER", "name": "Get User Information", "description": "Retrieves basic profile information about any Splitwise user by their ID. Returns the user's name, email, registration status, and profile picture. This endpoint only returns public user information. For the authenticated user's full profile (including notifications, currency preferences, and locale settings), use get_current_user instead." }, { "slug": "SPLITWISE_REMOVE_USER_FROM_GROUP", "name": "Remove User from Group", "description": "Tool to remove a user from a group. Use when you need to remove a user from a specific group. Note: User must have a zero balance in the group for removal to succeed. 200 OK does not indicate success; always check the response 'success' field." }, { "slug": "SPLITWISE_UNDELETE_EXPENSE", "name": "Restore Deleted Expense", "description": "Tool to restore a previously deleted expense and its associated records. Use when you need to recover an expense that was deleted. Call after confirming the correct expense ID. Not a guaranteed undo mechanism — treat deletion as high-impact and verify restoration completeness afterward." }, { "slug": "SPLITWISE_UNDELETE_GROUP", "name": "Restore Deleted Group", "description": "Tool to restore a previously deleted group and all its associated records. Use when you need to recover a group that was deleted. Call after confirming the correct group ID." }, { "slug": "SPLITWISE_UPDATE_EXPENSE", "name": "Update Expense", "description": "Tool to update an existing Splitwise expense. Use when you need to modify expense details such as cost, description, or participant shares. Only include fields you want to change. Note that a 200 OK response does not guarantee success - check that the errors object is empty." }, { "slug": "SPLITWISE_UPDATE_USER", "name": "Update User", "description": "Tool to update user account details including name, email, password, and preferences. Use when you need to modify the current user's profile information." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "splitwise_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "splitwise_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key from the Splitwise project detail page at https://secure.splitwise.com/apps", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "spoki", "name": "Spoki", "logo": "https://logos.composio.dev/api/spoki", "description": "Spoki is an Italian platform that integrates WhatsApp's official APIs to automate communication for marketing, sales, customer support, and payments.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPOKI_ADD_CONTACT_OPERATOR", "name": "Add Contact Operator", "description": "Tool to assign an operator to a contact's chat. Use this when you need to assign a team member to handle a specific contact's conversation. The operator must have been invited to the account first. Rate limited to 5 requests per minute." }, { "slug": "SPOKI_ADD_SERVICE_USER", "name": "Add Service User", "description": "Adds a new service user with a specific role to your Spoki account. Use this when you need to create service accounts for automation, API integrations, or specialized operator roles. Rate limit: 10 requests per minute." }, { "slug": "SPOKI_CHECK_ROLE_PRIVATE_KEY", "name": "Check Role Private Key", "description": "Tool to check if a service user role has a private key configured. Use when you need to verify key status for a role. Rate limit: 10 requests per minute." }, { "slug": "SPOKI_CLONE_TEMPLATE", "name": "Clone Template", "description": "Tool to create a duplicate copy of an existing template. Clone starts in DRAFT status. Use when you need to duplicate a template by ID." }, { "slug": "SPOKI_CREATE_ACCOUNT_ONBOARDING_LINK", "name": "Create Account Onboarding Link", "description": "Tool to create an onboarding link for a specific Spoki account. Use when you need to generate a setup link to help users configure their account." }, { "slug": "SPOKI_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Creates a new custom field in Spoki for storing additional contact data. Use this action when you need to define extra data points that can be stored on contacts beyond the standard fields. Custom fields are useful for tracking business-specific information like customer IDs, preferences, subscription dates, or any other structured data. The custom field will be available for use immediately after creation across contact management, automation workflows, and API operations. Ensure the label and code are unique and descriptive for easy identification and usage." }, { "slug": "SPOKI_CREATE_LIST", "name": "Create Contact List", "description": "Creates a new contact list in Spoki for organizing and managing contacts. Use this action when you need to create a new list for grouping contacts by campaigns, segments, or any other organizational criteria. Lists are essential for targeted messaging, automation workflows, and campaign management. Rate limit: 10 requests per minute." }, { "slug": "SPOKI_CREATE_MEDIA", "name": "Create Media File", "description": "Tool to create a new media file entry in Spoki. Use when you need to register external media files (images, videos, documents) that can be used in campaigns, messages, or other Spoki features. Rate limit: 120 requests per minute." }, { "slug": "SPOKI_CREATE_OR_UPDATE_CONTACT", "name": "Create or Update Contact", "description": "Creates a new contact or updates an existing contact in Spoki using the phone number as the unique identifier. This action performs an \"upsert\" operation: - If a contact with the provided phone number exists, it will be updated with the new information - If no contact exists with that phone number, a new contact will be created Use this when you need to: - Add new contacts to your Spoki account - Update existing contact information (name, email, language, custom fields) - Ensure contact records are synchronized with external systems The phone number must be in E.164 format (international format with country code)." }, { "slug": "SPOKI_CREATE_TEMPLATE", "name": "Create Template", "description": "Creates a new WhatsApp message template with localizations, buttons, and media headers. Use when you need to define a reusable template for marketing campaigns, transactional notifications, or authentication messages. Templates must be approved by WhatsApp before use (created in DRAFT status). Rate limit: 10 requests per minute." }, { "slug": "SPOKI_CREATE_TICKET", "name": "Create Ticket", "description": "Tool to create a new support ticket in Spoki. Use when you need to create a ticket for tracking customer support issues or requests. Rate limit: 120 requests per minute." }, { "slug": "SPOKI_DELETE_CONTACT", "name": "Delete contact", "description": "Tool to delete a specific contact. Use after confirming the contact ID. Example prompt: \"Delete contact with ID 1091234.\"" }, { "slug": "SPOKI_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a specific custom field. Cannot delete if the custom field is used in automations. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_DELETE_LIST", "name": "Delete list", "description": "Tool to delete a specific list. Use after confirming the list ID. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_DELETE_MEDIA", "name": "Delete media file", "description": "Tool to delete a specific media file. Use after confirming the media ID. Rate limit: 60 requests per minute." }, { "slug": "SPOKI_DELETE_ROLE", "name": "Delete role", "description": "Tool to delete a specific role. Use after confirming the role ID. Cannot delete the sole admin role. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_DELETE_TEMPLATE", "name": "Delete template", "description": "Tool to delete a WhatsApp template. Use force_delete=true for templates used in automations. Rate limit: 10/min." }, { "slug": "SPOKI_DELETE_TICKET", "name": "Delete ticket", "description": "Tool to delete a specific ticket. Use after confirming the ticket ID. Rate limit: 60 requests per minute." }, { "slug": "SPOKI_GENERATE_ROLE_PRIVATE_KEY", "name": "Generate Role Private Key", "description": "Tool to generate a private key for a service user role. Use when you need to create API credentials for service users. Rate limit: 10 requests per minute." }, { "slug": "SPOKI_GET_ACCOUNT_CURRENT_REPORT", "name": "Get Account Current Report", "description": "Tool to get the current report for a specified account. Use when you need up-to-date metrics on messages and conversations for an account. Note: result is cached for 30 minutes." }, { "slug": "SPOKI_LIST_ACCOUNTS", "name": "List Accounts", "description": "Tool to retrieve a list of Spoki WhatsApp Business accounts with their details. Use when you need to view all accounts accessible to the authenticated user, including their credit balances, status, and language settings. Note: This endpoint has a rate limit of 5 requests per minute." }, { "slug": "SPOKI_LIST_AGENCIES", "name": "List Agencies", "description": "Tool to list all agencies accessible to the user. Use when you need to retrieve all agencies for the authenticated account." }, { "slug": "SPOKI_LIST_AUTOMATIONS", "name": "List Automations", "description": "Tool to list, search, and filter automations. Use after authenticating to retrieve available automations and apply optional search or platform filters." }, { "slug": "SPOKI_LIST_CAMPAIGNS", "name": "List campaigns", "description": "Tool to list, search, and filter campaigns. Use when you need to retrieve campaigns optionally filtered by scheduled datetime." }, { "slug": "SPOKI_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list, search, and filter contacts. Use when you need to retrieve contacts with optional search and filters." }, { "slug": "SPOKI_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to list, search, and filter custom fields. Use when you need to fetch available custom-field definitions by label or code." }, { "slug": "SPOKI_LIST_LISTS", "name": "List Lists", "description": "Tool to list, search, and filter contact lists. Use when you need to retrieve all lists or find specific lists by name. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_LIST_MEDIA", "name": "List media", "description": "Tool to list media files. Returns all media files with their details including title, content type, format, and URLs. Use when you need to retrieve or browse available media files in the account." }, { "slug": "SPOKI_LIST_PARTNERS", "name": "List Partners", "description": "List all partners accessible to the authenticated account. Partners represent business partners or affiliates associated with your Spoki account." }, { "slug": "SPOKI_LIST_REPORTS", "name": "List Reports", "description": "Tool to list, search, and filter usage reports. Use when you need to retrieve historical usage metrics with optional filters. Note: results are cached for 30 minutes." }, { "slug": "SPOKI_LIST_ROLES", "name": "List Roles", "description": "Tool to list user roles in the system. Use when you need to retrieve all role assignments for users in the account." }, { "slug": "SPOKI_LIST_TAGS", "name": "List tags", "description": "Lists all tags in the account. Returns tag details including id, name, color, and order. Use this when you need to view all available tags or find a specific tag by name." }, { "slug": "SPOKI_LIST_TEMPLATES", "name": "List templates", "description": "Tool to list, search, and filter WhatsApp templates. Use when you need to retrieve available templates, optionally filtering by keywords." }, { "slug": "SPOKI_LIST_TICKETS", "name": "List Tickets", "description": "Tool to list, search, and filter tickets. Use when you need to retrieve tickets with optional pagination and filters." }, { "slug": "SPOKI_REMOVE_ALL_LIST_CONTACTS", "name": "Remove All List Contacts", "description": "Tool to remove all contacts from a list. Use when you need to clear all contacts from a specific list. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_REMOVE_CONTACT_OPERATOR", "name": "Remove Contact Operator", "description": "Tool to remove an operator from a contact's chat. Use when you need to unassign an operator from handling a specific contact's conversations. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_REMOVE_LIST_CONTACTS", "name": "Remove Contacts from List", "description": "Tool to remove specific contacts from a list. Use when you need to unsubscribe or remove multiple contacts from a particular list. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_RESEND_INVITATION", "name": "Resend Invitation", "description": "Tool to resend an invitation email. Use when you need to resend an existing invitation. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_RETRIEVE_ACCOUNT", "name": "Retrieve Account", "description": "Retrieves detailed information about a specific Spoki WhatsApp Business account. Returns comprehensive account details including credit balance, verification status, messaging limits, quality metrics, timezone settings, and Facebook integration configuration. Use this action when you need to check account status, credit levels, or configuration details. Note: You must have access permissions for the specified account ID." }, { "slug": "SPOKI_RETRIEVE_AUTOMATION", "name": "Retrieve Automation", "description": "Tool to retrieve details of a specific automation. Use when you need name, first message, webhooks and timestamps of an existing automation." }, { "slug": "SPOKI_RETRIEVE_CONTACT", "name": "Retrieve Contact", "description": "Tool to retrieve details of a specific contact. Use when you have a contact ID and need full profile details." }, { "slug": "SPOKI_RETRIEVE_CUSTOM_FIELD", "name": "Retrieve Custom Field", "description": "Tool to retrieve details of a specific custom field. Use when you have a field ID and need its metadata before using it in automations." }, { "slug": "SPOKI_RETRIEVE_LIST", "name": "Retrieve List", "description": "Tool to retrieve details of a specific list by ID. Use when you need list metadata and contact count. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_RETRIEVE_MEDIA", "name": "Retrieve Media", "description": "Tool to retrieve details of a specific media file by ID. Use when you need media file metadata." }, { "slug": "SPOKI_RETRIEVE_ROLE", "name": "Retrieve Role", "description": "Tool to retrieve details of a specific role by ID. Use when you need role information for a given role ID. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_RETRIEVE_TAG", "name": "Retrieve Tag", "description": "Tool to retrieve details of a specific tag. Use when you need tag metadata by ID." }, { "slug": "SPOKI_RETRIEVE_TEMPLATE", "name": "Retrieve Template", "description": "Tool to retrieve details of a specific template. Use after obtaining a template ID." }, { "slug": "SPOKI_REVERT_TEMPLATE_TO_DRAFT", "name": "Revert Template to Draft", "description": "Tool to revert a WhatsApp template back to DRAFT status, removing it from WhatsApp. Use when you need to unpublish a template and return it to draft mode for editing." }, { "slug": "SPOKI_SYNC_CONTACTS_BULK", "name": "Bulk Sync Contacts", "description": "Tool to bulk sync (create or update) multiple contacts in a single request. Rate limit: 1 request per minute. This action performs bulk \"upsert\" operations: - If a contact with the provided phone number exists, it will be updated with the new information - If no contact exists with that phone number, a new contact will be created Use when you need to: - Import multiple contacts from external systems - Synchronize contact lists in bulk - Efficiently create or update many contacts at once IMPORTANT: Do not use this action to update contacts before initiating an automation. The strict rate limit (1/min) makes it unsuitable for automation workflows." }, { "slug": "SPOKI_SYNC_LIST_CONTACTS", "name": "Sync Contacts to List", "description": "Tool to create or update contacts and add them to a specific list in Spoki. Rate limit: 1 request per minute. This action performs bulk \"upsert\" operations and list assignment: - If a contact with the provided phone number exists, it will be updated with the new information - If no contact exists with that phone number, a new contact will be created - All synced contacts are automatically added to the specified list Use when you need to: - Add multiple contacts to a specific list - Import contacts from external systems directly into a list - Synchronize contact lists with list membership Maximum 500 contacts per request. Phone numbers must be in E.164 format (international format with country code)." }, { "slug": "SPOKI_UPDATE_CAMPAIGN", "name": "Update Campaign", "description": "Tool to update an existing campaign's name, status, or scheduled time. Use when you need to modify campaign details after creation. Rate limited to 5 requests per minute." }, { "slug": "SPOKI_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact in Spoki. Use when you need to modify contact information for a specific contact ID. Only the fields provided will be updated; other fields remain unchanged." }, { "slug": "SPOKI_UPDATE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Tool to update a specific custom field. Use after retrieving a field to change its label." }, { "slug": "SPOKI_UPDATE_INVITATION_ROLE", "name": "Update Invitation Role", "description": "Tool to update the role of a pending invitation. Use when you need to change the role assigned to an existing invitation. Rate limit: 5 requests per minute." }, { "slug": "SPOKI_UPDATE_MEDIA", "name": "Update Media", "description": "Tool to update an existing media file in Spoki. Use when you need to modify media file details like title. Rate limit: 120 requests per minute." }, { "slug": "SPOKI_UPDATE_ROLE", "name": "Update Role", "description": "Tool to update a user's role. Use when you need to change a user's role assignment. Rate limit: 10 requests per minute." }, { "slug": "SPOKI_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing WhatsApp template in Spoki. Use when you need to modify template name, category, subcategory, or localization details. Rate limit: 10 requests per minute." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "spoki_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Spoki API Key", "type": "string", "description": "Your API key from the Spoki dashboard. Each Spoki account has a unique API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "spondyr", "name": "Spondyr", "logo": "https://logos.composio.dev/api/spondyr", "description": "Spondyr is a correspondence template management and distribution platform that enables developers to quickly integrate template-driven content delivery via API, supporting email, SMS, fax, and postal mail.", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPONDYR_CONDITIONS_LIST", "name": "List Conditions", "description": "Tool to list all conditions for a transaction type. Use when you need to discover existing condition rules before creating templates or generating correspondence. Conditions define criteria for selecting specific templates based on transaction data." }, { "slug": "SPONDYR_CREATE_CONDITION", "name": "Create Condition", "description": "Create a condition rule for template selection in Spondyr. Conditions define matching criteria on transaction data fields that determine which document template to use. For example, create a condition on an 'OrderStatus' field to trigger different email templates for 'Pending' vs 'Shipped' orders." }, { "slug": "SPONDYR_CREATE_TRANSACTION_TYPE", "name": "Create Transaction Type", "description": "Tool to create a new transaction type. Use after defining the JSON schema for your data to register it in Spondyr." }, { "slug": "SPONDYR_DELIVER_SPONDYR", "name": "Deliver Spondyr correspondence", "description": "Trigger delivery of previously generated correspondence to recipients. Use this action after generating correspondence (via POST /Spondyr with IsGenerateOnly=true) to actually deliver the documents via email, fax, mail, or text message. The ReferenceID from the generate request is required to identify which correspondence to deliver." }, { "slug": "SPONDYR_EVENT_TYPE_UPDATE", "name": "Update Event Type", "description": "Tool to update an existing event type name within a transaction type. Use when you need to rename an Event Type. Example: Rename the 'OrderShipped' event to 'OrderDelivered' within the 'CustomerOrders' transaction type. Note: This only changes the event type's name - it does not move the event to a different transaction type." }, { "slug": "SPONDYR_GET_EVENT_TYPES", "name": "List Event Types for Transaction Type", "description": "Retrieves all event types associated with a specific transaction type in Spondyr. Event types define the kinds of events that can occur for a transaction type (e.g., \"Created\", \"Updated\", \"Cancelled\" events for an \"Order\" transaction type). Use this action after retrieving transaction types to discover what event types are available for a given transaction type. This is essential for understanding the event-driven workflows and setting up event-based automation in Spondyr. Returns an empty list if the transaction type exists but has no event types configured." }, { "slug": "SPONDYR_GET_SPONDYR_STATUS", "name": "Get Spondyr Status", "description": "Tool to retrieve the status of a previously generated correspondence. Use after generating correspondence to check its processing and delivery status." }, { "slug": "SPONDYR_GET_TRANSACTION_TYPES", "name": "Get Transaction Types", "description": "Tool to retrieve a list of available transaction types. Use after authentication to discover data schemas." }, { "slug": "SPONDYR_RECIPIENT_DELETE", "name": "Delete Recipient", "description": "Deletes a recipient configuration from a transaction type in Spondyr. Recipients are configured delivery endpoints (email addresses, fax numbers, physical addresses) that determine where correspondence will be sent when a transaction is processed. This action permanently removes a recipient configuration from the specified transaction type. Before deletion, use the 'List Recipients' action to verify the recipient name and transaction type. After successful deletion, the recipient will no longer be available for correspondence delivery." }, { "slug": "SPONDYR_RECIPIENT_GET", "name": "Get Recipient", "description": "Tool to retrieve details of a specific recipient. Use when you need to fetch recipient configuration for a given transaction type. Example: \"Retrieve recipient 'Customer' for transaction type 'OrderPlaced'.\"" }, { "slug": "SPONDYR_RECIPIENTS_LIST", "name": "List Recipients", "description": "Tool to list all recipients for a transaction type. Use when you need to discover or verify all configured recipients before sending or managing correspondence." }, { "slug": "SPONDYR_SEARCH_FILTER_CREATE", "name": "Create Search Filter", "description": "Create a new search filter for a transaction type in Spondyr. Search filters enable you to define searchable fields within your transaction data. Once created, these filters allow you to quickly search and retrieve specific transactions based on field values (e.g., search by OrderID, CustomerName, InvoiceNumber). Use this tool when you need to make a specific field searchable within a transaction type." }, { "slug": "SPONDYR_SEARCH_FILTER_DELETE", "name": "Delete Search Filter", "description": "Deletes a specific search filter from the Spondyr system. Use this when you need to remove a search filter that is no longer needed. Both the filter name and transaction type must exactly match the values used when the filter was created. If the filter does not exist, the API will return an error." }, { "slug": "SPONDYR_SEARCH_FILTER_GET", "name": "Get Search Filter", "description": "Retrieves details of a specific search filter in Spondyr by name and transaction type. Returns the filter's name, tag value, and associated transaction type. Use this when you need to look up an existing search filter's configuration, verify its tag format, or confirm which transaction type it belongs to before using it for correspondence searches." }, { "slug": "SPONDYR_SEARCH_FILTERS_LIST", "name": "List Search Filters", "description": "Tool to list all search filters for a transaction type. Use when you need to discover available filters before searching correspondence." }, { "slug": "SPONDYR_SEARCH_SPONDYRS", "name": "Search Correspondence", "description": "Search for generated correspondence (spondyrs) by multiple criteria including batch ID, event type, and custom search filters. Returns paginated results with delivery status, recipient information, and URIs to access generated documents. Use this to find and retrieve previously generated correspondence." }, { "slug": "SPONDYR_SSO_STUB", "name": "Create Spondyr SSO stub", "description": "Tool to create a one-time SSO user stub in Spondyr. Use after application authentication to generate a temporary SSO token for embedding or redirecting users." }, { "slug": "SPONDYR_TEMPLATE_GET", "name": "Get Template", "description": "Retrieve detailed configuration for a specific correspondence template. Returns template content reference ID, event type, recipients, delivery methods, conditions, and search filters. Use this action when you need to: - Inspect template settings and configuration - View recipient delivery methods (Email, Mail, Text, DocuSign, Fax, Destination) - Review template selection conditions and search filters - Get the template content reference ID for correspondence generation Prerequisites: Use 'Get Transaction Types' to discover transaction types, then 'List Templates' to find available template names. Example: Retrieve template 'OrderConfirmationEmail' for transaction type 'CustomerOrder'." }, { "slug": "SPONDYR_TEMPLATES_LIST", "name": "List Templates", "description": "List all templates configured for a transaction type. Use this to discover available templates before generating correspondence or to audit template configurations. Returns template metadata including name, event type, content type, recipients, conditions, and search filters. Use Get Template action to retrieve full template content and detailed configuration." }, { "slug": "SPONDYR_TRANSACTION_TYPE_GET", "name": "Get Transaction Type", "description": "Tool to retrieve details of a specific transaction type. Use when inspecting a transaction type schema. Returns the schema definition including JSON structure and CSV field mappings. Example: \"Get transaction type 'CustomerOrder' to view its JSON schema and available fields.\"" }, { "slug": "SPONDYR_TRANSACTION_TYPE_UPDATE", "name": "Update Transaction Type", "description": "Updates an existing transaction type's name and/or JSON schema in Spondyr. Use this tool to: - Modify the JSON schema/template of a transaction type to add, remove, or change data fields - Rename an existing transaction type - Update sample data values in the template Prerequisites: The transaction type must already exist. Use 'Get Transaction Types' to list available types or 'Get Transaction Type' to retrieve the current schema before updating. Example: Update the 'OrderPlaced' transaction type with a new JSON schema that includes customer address fields." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "spondyr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Spondyr API Key. Get it from your Spondyr dashboard.", "required": true, "default": null }, { "name": "generic_token", "displayName": "Application Token", "type": "string", "description": "Your Spondyr Application Token. Get it from your Spondyr dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "spoonacular", "name": "Spoonacular", "logo": "https://logos.composio.dev/api/spoonacular", "description": "Free meal planner with nutritional info. Save recipes from any site. All Your Food. One Place", "category": "lifestyle & entertainment", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPOONACULAR_VISUALIZE_EQUIPMENT", "name": "Visualize Recipe Equipment", "description": "Tool to generate an HTML widget visualizing equipment needed for a recipe. Extracts equipment from recipe instructions and returns an embeddable HTML visualization. Use when you need to display recipe equipment in a visual format (grid or list)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "spoonacular_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the Spoonacular API Console under the Profile page", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "spotify", "name": "Spotify", "logo": "https://logos.composio.dev/api/spotify", "description": "Spotify is a digital music and podcast streaming service with millions of tracks, personalized playlists, and social sharing features", "category": "news & lifestyle", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 88, "triggerCount": 3, "version": "20260703_00", "tools": [ { "slug": "SPOTIFY_ADD_ITEMS_TO_PLAYLIST", "name": "Add items to playlist", "description": "Add one or more items to a user's playlist." }, { "slug": "SPOTIFY_ADD_ITEM_TO_PLAYBACK_QUEUE", "name": "Add item to playback queue", "description": "Add an item to the end of the user's current playback queue. This API only works for users who have Spotify Premium. The order of execution is not guaranteed when you use this API with other Player API endpoints. Required scope: user-modify-playback-state Note: Only tracks and episodes can be added to the queue. Albums and playlists cannot be added directly." }, { "slug": "SPOTIFY_CHANGE_PLAYLIST_DETAILS", "name": "Change playlist details", "description": "Change a playlist's name and public/private state. The user must own the playlist. This action allows updating the playlist name, description, public/private status, and collaborative mode. At least one of the optional parameters (name, public, collaborative, description) must be provided. Important constraints: - collaborative can only be set to true on non-public playlists (when public is false) - Requires OAuth scope: playlist-modify-public (for public playlists) or playlist-modify-private (for private playlists) - The playlist must be owned by the authenticated user" }, { "slug": "SPOTIFY_CHECK_IF_USER_FOLLOWS_ARTISTS_OR_USERS", "name": "Check if user follows artists or users", "description": "Check to see if the current user is following one or more artists or other Spotify users." }, { "slug": "SPOTIFY_CHECK_IF_USERS_FOLLOW_PLAYLIST", "name": "Check if users follow playlist", "description": "Check if the current authenticated user is following a specified playlist. This endpoint checks whether the authenticated user follows the given playlist. It returns a boolean value indicating whether the user follows the playlist. Important: Despite the parameter being named 'ids', this endpoint only works for checking if the current authenticated user follows a playlist. You cannot check if arbitrary users follow a playlist. Note: The playlist must be public or the requesting user must own the playlist." }, { "slug": "SPOTIFY_CHECK_USER_S_SAVED_ALBUMS", "name": "Check user s saved albums", "description": "Check if one or more albums is already saved in the current Spotify user's 'Your Music' library." }, { "slug": "SPOTIFY_CHECK_USER_S_SAVED_AUDIOBOOKS", "name": "Check user s saved audiobooks", "description": "Check if one or more audiobooks are already saved in the current Spotify user's library. Returns an array of boolean values indicating whether each audiobook (by ID) is saved in the user's library. Requires user-library-read scope." }, { "slug": "SPOTIFY_CHECK_USER_S_SAVED_EPISODES", "name": "Check User's Saved Episodes", "description": "Check if one or more podcast episodes are saved in the current Spotify user's 'Your Episodes' library. Returns an array of boolean values corresponding to each episode ID provided. **Required OAuth Scope:** user-library-read **Note:** This endpoint is currently in beta and may change without notice." }, { "slug": "SPOTIFY_CHECK_USER_S_SAVED_SHOWS", "name": "Check user's saved shows", "description": "Check if one or more shows is already saved in the current Spotify user's library. This endpoint checks whether the specified shows are saved in the authenticated user's library. It returns a list of boolean values, one for each show ID provided, indicating whether that show is saved." }, { "slug": "SPOTIFY_CHECK_USER_S_SAVED_TRACKS", "name": "Check User's Saved Tracks", "description": "Check if one or more tracks is already saved in the current Spotify user's 'Your Music' library. Returns an array of boolean values indicating whether each track is saved (true) or not (false), in the same order as the requested IDs." }, { "slug": "SPOTIFY_CREATE_PLAYLIST", "name": "Create playlist", "description": "Create a playlist for a Spotify user. (The playlist will be empty until you [add tracks](/documentation/web-api/reference/add-tracks-to-playlist).) Each user is generally limited to a maximum of 11000 playlists." }, { "slug": "SPOTIFY_FOLLOW_ARTISTS_OR_USERS", "name": "Follow artists or users", "description": "Follow one or more artists or Spotify users on behalf of the current authenticated user. This action adds the specified artists or users to the current user's \"Following\" list, making their content appear in the user's personalized feed. The operation is idempotent - attempting to follow an already-followed artist/user will succeed without error. Required OAuth scope: user-follow-modify Common use cases: - Follow an artist after liking their music - Follow multiple artists at once (up to 50) - Follow other Spotify users to see their public playlists and activity Note: Artist IDs can be obtained from search results, track objects, or album objects. User IDs can be obtained from user profile endpoints or playlist owner information." }, { "slug": "SPOTIFY_FOLLOW_PLAYLIST", "name": "Follow playlist", "description": "Add the current user as a follower of a playlist. This action adds the current user as a follower of a specified playlist. The 'public' parameter controls whether the playlist will appear in the user's public profile (visible to others) or remain private (only visible to the user). This operation is idempotent - if the user is already following the playlist, the operation will still succeed without error. Required OAuth scopes: - playlist-modify-public: For following playlists publicly - playlist-modify-private: For following playlists privately Note: Following a playlist does not make you its owner. You can follow any playlist (public, private, or collaborative) if you know its Spotify ID." }, { "slug": "SPOTIFY_GET_A_CHAPTER", "name": "Get a chapter", "description": "Get Spotify catalog information for a single audiobook chapter including name, description, duration, release date, narrators, and playback information. Audiobook chapters are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets. Use this action to retrieve detailed metadata about a specific chapter when you have its Spotify ID." }, { "slug": "SPOTIFY_GET_ALBUM", "name": "Get Album Details", "description": "Get Spotify catalog information for a single album. Returns comprehensive album data including metadata, track listing, artist information, cover artwork, popularity score, and availability by market. Use this to fetch details about any album in Spotify's catalog using its unique album ID." }, { "slug": "SPOTIFY_GET_ALBUM_TRACKS", "name": "Get album tracks", "description": "Get Spotify catalog information about an album's tracks. Optional parameters can be used to limit the number of tracks returned." }, { "slug": "SPOTIFY_GET_AN_AUDIOBOOK", "name": "Get an audiobook", "description": "Get Spotify catalog information for a single audiobook. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets." }, { "slug": "SPOTIFY_GET_ARTIST", "name": "Get artist", "description": "Get detailed Spotify catalog information for a single artist. Returns comprehensive artist data including the artist's name, genres, follower count, profile images, popularity score (0-100), and links to their Spotify profile. Use this action to retrieve metadata about any artist in the Spotify catalog." }, { "slug": "SPOTIFY_GET_ARTIST_S_ALBUMS", "name": "Get artist s albums", "description": "Get Spotify catalog information about an artist's albums." }, { "slug": "SPOTIFY_GET_ARTIST_S_RELATED_ARTISTS", "name": "Get artist s related artists", "description": "Get Spotify catalog information about artists similar to a given artist. Similarity is based on analysis of the Spotify community's listening history." }, { "slug": "SPOTIFY_GET_ARTIST_S_TOP_TRACKS", "name": "Get Artist's Top Tracks", "description": "Get Spotify catalog information about an artist's top tracks by country/market. Returns up to 10 of the artist's most popular tracks in the specified market. Each track includes detailed metadata such as album information, duration, popularity score (0-100), explicit content flag, and preview URLs. Use cases: - Display an artist's most popular songs in a specific region - Build artist profile pages with top tracks - Recommend popular content from an artist to users Note: Track popularity varies by market. The same artist may have different top tracks in different countries based on regional streaming patterns." }, { "slug": "SPOTIFY_GET_AUDIOBOOK_CHAPTERS", "name": "Get audiobook chapters", "description": "Get Spotify catalog information about an audiobook's chapters. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets." }, { "slug": "SPOTIFY_GET_AVAILABLE_DEVICES", "name": "Get Available Devices", "description": "Get information about the user's available Spotify Connect devices. Returns a list of devices that can be used for playback, including their names, types (computer, smartphone, speaker), active status, volume levels, and whether they support API control. Useful for checking available playback targets before transferring playback or controlling volume. Requires the 'user-read-playback-state' scope. Note: Some device models are not supported and will not be listed in the API response." }, { "slug": "SPOTIFY_GET_AVAILABLE_GENRE_SEEDS", "name": "Get available genre seeds", "description": "Get available genre seeds for Spotify recommendations. Returns a list of genre strings that can be used as seed_genres parameter when requesting music recommendations. These genres represent the full set of available genre seeds on Spotify. No parameters are required for this endpoint. Note: This endpoint is deprecated but still functional as of the current API version." }, { "slug": "SPOTIFY_GET_AVAILABLE_MARKETS", "name": "Get available markets", "description": "Get the list of markets where Spotify is available. Returns an array of ISO 3166-1 alpha-2 country codes." }, { "slug": "SPOTIFY_GET_CATEGORY_S_PLAYLISTS", "name": "Get Category's Playlists", "description": "Get Spotify playlists tagged with a specific category (e.g., 'workout', 'party', 'dinner'). Returns a paginated list of playlists for the specified category. Use the limit and offset parameters to control pagination. Category IDs can be obtained from the Get Several Browse Categories endpoint. NOTE: This endpoint is deprecated as of November 2024 and may return 403 Forbidden for apps without extended quota access that was approved before November 27, 2024. Consider alternative endpoints for new implementations." }, { "slug": "SPOTIFY_GET_CURRENTLY_PLAYING_TRACK", "name": "Get currently playing track", "description": "Get the object currently being played on the user's Spotify account." }, { "slug": "SPOTIFY_GET_CURRENT_USER_S_PLAYLISTS", "name": "Get current user s playlists", "description": "Get a list of the playlists owned or followed by the current Spotify user. Returns a paginated list of playlists (both public and private) that the current user owns or follows. Each playlist includes basic metadata such as name, description, owner information, track count, images, and collaborative/public status. Use the limit and offset parameters to paginate through results. The response includes pagination links (next/previous) for easier navigation through large result sets." }, { "slug": "SPOTIFY_GET_CURRENT_USER_S_PROFILE", "name": "Get current user s profile", "description": "Get detailed profile information about the current authenticated user. This endpoint returns comprehensive user profile data including display name, email address, country, subscription level (premium/free), explicit content settings, profile images, follower count, and Spotify URIs. Required OAuth scopes: - user-read-private: Required to access country, product (subscription level), and explicit content settings - user-read-email: Required to access the user's email address Returns a private user object with all available profile information for the authenticated user." }, { "slug": "SPOTIFY_GET_EPISODE", "name": "Get episode", "description": "Get Spotify catalog information for a single podcast episode identified by its unique Spotify ID. This endpoint retrieves detailed information about a podcast episode including its name, description, duration, release date, cover art, show information, and playback status. It can also return the user's resume point if the user-read-playback-position scope is authorized. Episodes are podcast content on Spotify. Use this endpoint to get metadata and playback information for a specific episode when you have its Spotify ID." }, { "slug": "SPOTIFY_GET_FEATURED_PLAYLISTS", "name": "Get featured playlists", "description": "Get a list of Spotify's editorially curated featured playlists. These are the playlists shown on a Spotify player's 'Browse' tab and are updated regularly by Spotify's editorial team. The response includes a localized message and a paginated list of simplified playlist objects." }, { "slug": "SPOTIFY_GET_FOLLOWED_ARTISTS", "name": "Get followed artists", "description": "Get all artists followed by the current user. Returns a cursor-paginated list of artist objects with full details including name, genres, popularity, images, and follower counts. Use the 'after' parameter to navigate through pages of results. Requires the 'user-follow-read' authorization scope." }, { "slug": "SPOTIFY_GET_NEW_RELEASES", "name": "Get new releases", "description": "Get a list of new album releases featured in Spotify (shown, for example, on a Spotify player's \"Browse\" tab)." }, { "slug": "SPOTIFY_GET_PLAYBACK_STATE", "name": "Get playback state", "description": "Get information about the user's current playback state, including track or episode, progress, and active device. Returns detailed playback information when content is actively playing, including the current track/episode, playback progress, device details, repeat/shuffle state, and playback context. Returns HTTP 204 (No Content) when nothing is currently playing. Requires OAuth scope: user-read-playback-state" }, { "slug": "SPOTIFY_GET_PLAYLIST", "name": "Get playlist", "description": "Get a playlist owned by a Spotify user. This endpoint retrieves detailed information about a specific Spotify playlist, including its metadata (name, description, public/collaborative status), owner information, cover images, and the tracks/episodes it contains. The response includes a paginated tracks object with full details about each item in the playlist. Required OAuth scope: playlist-read-private (for private playlists) or playlist-read-collaborative (for collaborative playlists). Public playlists can be accessed without special scopes." }, { "slug": "SPOTIFY_GET_PLAYLIST_COVER_IMAGE", "name": "Get playlist cover image", "description": "Get the current image(s) associated with a specific playlist. Returns an array of image objects containing the URL, height, and width of each cover image. The array may be empty if the playlist has no cover image, or contain up to three images returned by size in descending order. Note: The source URL for the image is temporary and will expire in less than a day." }, { "slug": "SPOTIFY_GET_PLAYLIST_ITEMS", "name": "Get playlist items", "description": "Get full details of the items of a playlist owned by a Spotify user. This endpoint retrieves the tracks and/or episodes in a playlist. It supports pagination and allows filtering the response fields for optimization." }, { "slug": "SPOTIFY_GET_RECENTLY_PLAYED_TRACKS", "name": "Get recently played tracks", "description": "Get tracks from the current user's recently played tracks. _**Note**: Currently doesn't support podcast episodes._" }, { "slug": "SPOTIFY_GET_RECOMMENDATIONS", "name": "Get recommendations", "description": "Get track recommendations based on seed artists, genres, and/or tracks. At least one seed is required (up to 5 total). Optionally tune recommendations with audio feature parameters (acousticness, danceability, energy, etc.). IMPORTANT: This endpoint requires Spotify Extended API Access (restricted since Nov 27, 2024). Accounts without extended access will receive a 404 error. See: https://developer.spotify.com/blog/2024-11-27-changes-to-the-web-api Returns a list of recommended tracks with full track metadata including artists, album info, and audio features." }, { "slug": "SPOTIFY_GET_SEVERAL_ALBUMS", "name": "Get several albums", "description": "Get Spotify catalog information for multiple albums identified by their Spotify IDs. Returns detailed album data including name, artists, tracks, release date, images, and more. Maximum 20 album IDs per request." }, { "slug": "SPOTIFY_GET_SEVERAL_ARTISTS", "name": "Get several artists", "description": "Get Spotify catalog information for several artists based on their Spotify IDs." }, { "slug": "SPOTIFY_GET_SEVERAL_AUDIOBOOKS", "name": "Get several audiobooks", "description": "Retrieve Spotify catalog information for multiple audiobooks in a single request. This action fetches detailed metadata for up to 50 audiobooks at once using their Spotify IDs. Each audiobook object includes: - Title, description, and edition information - Authors and narrators - Chapter information and count - Cover images in multiple sizes - Language and market availability - Publisher and copyright details Audiobooks that don't exist or are unavailable in the requested market will appear as null in the response array (not omitted). **Important**: Audiobooks are only available in US, UK, Canada, Ireland, New Zealand, and Australia markets. Specify the market parameter to ensure content availability for your target region. **Use Cases**: - Bulk retrieval of audiobook metadata - Validating audiobook availability across markets - Building audiobook catalogs or collections - Displaying audiobook details in applications" }, { "slug": "SPOTIFY_GET_SEVERAL_BROWSE_CATEGORIES", "name": "Get several browse categories", "description": "Get a list of categories used to tag items in Spotify (on, for example, the Spotify player's \"Browse\" tab)." }, { "slug": "SPOTIFY_GET_SEVERAL_CHAPTERS", "name": "Get several chapters", "description": "Get Spotify catalog information for several audiobook chapters identified by their Spotify IDs. This endpoint allows you to fetch detailed information about up to 50 chapters at once, including chapter metadata, duration, descriptions, images, and parent audiobook information. Chapters are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets." }, { "slug": "SPOTIFY_GET_SEVERAL_EPISODES", "name": "Get several episodes", "description": "Get Spotify catalog information for several episodes based on their Spotify IDs." }, { "slug": "SPOTIFY_GET_SEVERAL_SHOWS", "name": "Get several shows", "description": "Get Spotify catalog information for several shows (podcasts) based on their Spotify IDs. This endpoint allows you to retrieve detailed information about multiple shows in a single request, with a maximum of 50 show IDs per request." }, { "slug": "SPOTIFY_GET_SEVERAL_TRACKS", "name": "Get several tracks", "description": "Get Spotify catalog information for multiple tracks based on their Spotify IDs." }, { "slug": "SPOTIFY_GET_SEVERAL_TRACKS_AUDIO_FEATURES", "name": "Get several tracks audio features", "description": "Get audio features for multiple tracks based on their Spotify IDs. Returns audio feature information for multiple tracks including danceability, energy, loudness, speechiness, acousticness, instrumentalness, liveness, valence, tempo, and other musical attributes. Note: This endpoint was deprecated by Spotify on November 27, 2024. Applications created or approved after this date will receive 403 Forbidden errors. Only applications with existing extended mode Web API access that were relying on this endpoint before the cutoff date remain unaffected." }, { "slug": "SPOTIFY_GET_SHOW", "name": "Get show", "description": "Get Spotify catalog information for a single show (podcast) identified by its unique Spotify ID." }, { "slug": "SPOTIFY_GET_SHOW_EPISODES", "name": "Get show episodes", "description": "Get Spotify catalog information about a show's episodes. Optional parameters can be used to limit the number of episodes returned. This endpoint retrieves a paginated list of episodes for a specific podcast/show." }, { "slug": "SPOTIFY_GET_SINGLE_BROWSE_CATEGORY", "name": "Get single browse category", "description": "Get a single category used to tag items in Spotify (on, for example, the Spotify player's \"Browse\" tab). Returns detailed information about the category including its name, icons, and unique identifier." }, { "slug": "SPOTIFY_GET_THE_USER_S_QUEUE", "name": "Get the user's queue", "description": "Get the list of tracks and episodes in the user's playback queue. Returns the currently playing track/episode and the queue of upcoming items. This is a read-only operation that does not modify the queue. Requirements: - Spotify Premium subscription required - Requires one of these OAuth scopes: - user-read-currently-playing - user-read-playback-state - An active Spotify session (user must be logged in on a device) Returns: - currently_playing: The track or episode currently playing (may be null) - queue: List of tracks/episodes queued for playback (may be empty) Common errors: - 403 Forbidden: Premium subscription required or insufficient OAuth scopes - 204 No Content: No active playback session" }, { "slug": "SPOTIFY_GET_TRACK", "name": "Get track", "description": "Get Spotify catalog information for a single track identified by its unique Spotify ID." }, { "slug": "SPOTIFY_GET_TRACK_S_AUDIO_ANALYSIS", "name": "Get Track's Audio Analysis", "description": "Get a comprehensive audio analysis for a Spotify track. Returns detailed structural and musical characteristics including: - Meta information (analyzer version, timestamp, processing time) - Track properties (tempo, key, mode, time signature, loudness, duration) - Temporal structure (bars, beats, sections, tatums) - Segments with pitch content and timbre characteristics All timing values are in seconds. Confidence scores range from 0.0 to 1.0. Useful for music analysis, visualization, and recommendation systems." }, { "slug": "SPOTIFY_GET_TRACK_S_AUDIO_FEATURES", "name": "Get track's audio features", "description": "Get audio feature information for a single track identified by its unique Spotify ID. Note: This endpoint was deprecated by Spotify on November 27, 2024. Applications created or approved after this date will receive 403 Forbidden errors. Only applications with existing extended mode Web API access that were relying on this endpoint before the cutoff date remain unaffected." }, { "slug": "SPOTIFY_GET_USER_S_PLAYLISTS", "name": "Get user's playlists", "description": "Get a paginated list of playlists owned or followed by a Spotify user. This endpoint retrieves all public playlists for any user. To access private and collaborative playlists, you must have the appropriate OAuth scopes and the user must have authorized your application. Required OAuth scopes for private/collaborative playlists: - playlist-read-private: Required to access user's private playlists - playlist-read-collaborative: Required to access collaborative playlists The response includes playlist metadata such as name, description, owner info, images, track count, and collaboration status. Use the limit and offset parameters to paginate through large playlist collections. Common use cases: - Display a user's public playlist library - Build playlist discovery features - Analyze user's music organization patterns - Enable playlist selection interfaces" }, { "slug": "SPOTIFY_GET_USER_S_PROFILE", "name": "Get user's profile", "description": "Get public profile information about a Spotify user. This endpoint retrieves publicly available information for any Spotify user, including their display name, profile images, follower count, and Spotify URIs. Unlike the 'Get Current User's Profile' endpoint, this only returns public data and does not require specific OAuth scopes. Returns a public user object with the user's ID, display name (if available), external URLs, follower count, profile images, and Spotify URI." }, { "slug": "SPOTIFY_GET_USER_S_SAVED_ALBUMS", "name": "Get user s saved albums", "description": "Get a list of albums saved in the current Spotify user's library ('Your Music'). Returns a paginated list of albums that the user has saved to their library, including when each album was added and full album details (tracks, artists, images, etc.). Supports pagination via limit and offset parameters, and can filter by market availability. Required OAuth scope: user-library-read" }, { "slug": "SPOTIFY_GET_USER_S_SAVED_AUDIOBOOKS", "name": "Get user s saved audiobooks", "description": "Get a list of the audiobooks saved in the current Spotify user's 'Your Music' library." }, { "slug": "SPOTIFY_GET_USER_S_SAVED_EPISODES", "name": "Get user's saved episodes", "description": "Get a list of episodes saved in the current Spotify user's library. This endpoint retrieves a paginated list of podcast episodes that the authenticated user has saved to their Spotify library. Each item in the response includes the full episode details and the timestamp when it was added to the library. **Required OAuth Scopes:** - user-library-read: Access your saved content - user-read-playback-position: Read your position in content you have played (for resume_point) **Note:** This endpoint is currently in beta and may change without warning. Please share feedback or issues in the Spotify developer community forum." }, { "slug": "SPOTIFY_GET_USER_S_SAVED_SHOWS", "name": "Get User's Saved Shows", "description": "Get a list of shows saved in the current Spotify user's library. Optional parameters can be used to limit the number of shows returned." }, { "slug": "SPOTIFY_GET_USER_S_SAVED_TRACKS", "name": "Get User's Saved Tracks", "description": "Get a list of the songs saved in the current Spotify user's 'Your Music' library. Returns paginated results with track details including album info, artists, duration, and when each track was saved." }, { "slug": "SPOTIFY_GET_USER_S_TOP_ARTISTS", "name": "Get User's Top Artists", "description": "Get the current user's top artists based on calculated affinity. This endpoint retrieves the current user's top artists based on their listening history and calculated affinity. The affinity is computed over a specified time frame (short_term, medium_term, or long_term). Required OAuth Scope: user-top-read Returns a paginated list of artist objects including their name, popularity, genres, images, and follower counts. Useful for understanding user preferences and music taste." }, { "slug": "SPOTIFY_GET_USER_S_TOP_TRACKS", "name": "Get User's Top Tracks", "description": "Get the current user's top tracks based on calculated affinity. Returns the user's most-played tracks over different time periods based on their listening history and calculated affinity. Required OAuth Scope: user-top-read Note: The Spotify API limits results to the top 50 tracks per time range. Returns detailed track information including artist names, album details, popularity scores, duration, and preview URLs. Useful for understanding user listening preferences and music taste." }, { "slug": "SPOTIFY_PAUSE_PLAYBACK", "name": "Pause playback", "description": "Pause playback on the user's account. Pauses playback on the currently active device or on a specified device. Returns immediately with success when playback is paused. If no device is specified, the currently active device will be paused. Requirements: - Spotify Premium subscription - OAuth scope: user-modify-playback-state - Active playback session Note: The order of execution is not guaranteed when you use this API with other Player API endpoints. If playback is already paused, this action will still succeed (idempotent). Common scenarios: - Pause current playback: Call with no parameters - Pause specific device: Provide device_id parameter Error scenarios: - 403: User does not have Spotify Premium - 404: No active device found" }, { "slug": "SPOTIFY_REMOVE_PLAYLIST_ITEMS", "name": "Remove playlist items", "description": "Remove one or more items from a user's playlist. This endpoint removes tracks or episodes from a playlist. You can remove items by URI (removes all occurrences) or by URI + positions (removes specific occurrences). Requires 'playlist-modify-public' scope for public playlists or 'playlist-modify-private' scope for private playlists." }, { "slug": "SPOTIFY_REMOVE_USERS_SAVED_ALBUMS", "name": "Remove users saved albums", "description": "Remove one or more albums from the current user's 'Your Music' library. This action removes albums from the user's saved albums collection in 'Your Library'. The operation is idempotent - removing an album that isn't saved will not cause an error. Required OAuth scope: user-library-modify" }, { "slug": "SPOTIFY_REMOVE_USER_S_SAVED_AUDIOBOOKS", "name": "Remove User's Saved Audiobooks", "description": "Remove one or more audiobooks from the current user's Spotify library. This endpoint removes saved audiobooks from the user's library. Audiobook IDs can be specified as a comma-separated string or as a list of IDs. Maximum of 50 IDs per request. Note: Audiobooks are only available in the US, UK, Canada, Ireland, New Zealand, and Australia markets. Required scope: user-library-modify" }, { "slug": "SPOTIFY_REMOVE_USER_S_SAVED_EPISODES", "name": "Remove user's saved episodes", "description": "Remove one or more episodes from the current user's library. This endpoint removes episodes that have been saved to the user's \"Your Episodes\" library. The operation is idempotent - removing an episode that is not saved will return success. Up to 50 episode IDs can be removed in a single request. Required scope: user-library-modify Note: This API endpoint is in beta and may change without notice." }, { "slug": "SPOTIFY_REMOVE_USER_S_SAVED_SHOWS", "name": "Remove user s saved shows", "description": "Delete one or more shows from current Spotify user's library." }, { "slug": "SPOTIFY_REMOVE_USER_S_SAVED_TRACKS", "name": "Remove user s saved tracks", "description": "Remove one or more tracks from the current user's 'Your Music' library." }, { "slug": "SPOTIFY_SAVE_ALBUMS_FOR_CURRENT_USER", "name": "Save albums for current user", "description": "Save one or more albums to the current user's 'Your Music' library. This action adds albums to the user's saved albums collection, which can be accessed later through 'Your Library'. The operation is idempotent - saving an album that is already saved will not cause an error. Required OAuth scope: user-library-modify" }, { "slug": "SPOTIFY_SAVE_AUDIOBOOKS_FOR_CURRENT_USER", "name": "Save audiobooks for current user", "description": "Save one or more audiobooks to the current user's library. This action adds audiobooks to the user's saved audiobooks collection, which can be accessed later through 'Your Library'. The operation is idempotent - saving an audiobook that is already saved will not cause an error. Required OAuth scope: user-library-modify" }, { "slug": "SPOTIFY_SAVE_EPISODES_FOR_CURRENT_USER", "name": "Save episodes for current user", "description": "Save one or more podcast episodes to the current user's library. This endpoint saves episodes to the user's \"Your Episodes\" library, making them easily accessible for later playback. The operation is idempotent - saving an episode that is already saved will return success. Up to 50 episode IDs can be saved in a single request. Required scope: user-library-modify Note: This API endpoint is in beta and may change without notice." }, { "slug": "SPOTIFY_SAVE_SHOWS_FOR_CURRENT_USER", "name": "Save shows for current user", "description": "Save one or more shows to current Spotify user's library. Requires the user-library-modify scope. Maximum of 50 show IDs per request." }, { "slug": "SPOTIFY_SAVE_TRACKS_FOR_CURRENT_USER", "name": "Save tracks for current user", "description": "Save one or more tracks to the current user's 'Your Music' library. This action adds tracks to the user's saved tracks collection. You can provide either: - A simple list of track IDs (up to 50) - A list of timestamped IDs to preserve chronological order Requires the 'user-library-modify' OAuth scope." }, { "slug": "SPOTIFY_SEARCH_FOR_ITEM", "name": "Search for item", "description": "Get Spotify catalog information about albums, artists, playlists, tracks, shows, episodes or audiobooks that match a keyword string. Audiobooks are only available within the US, UK, Canada, Ireland, New Zealand and Australia markets." }, { "slug": "SPOTIFY_SEEK_TO_POSITION", "name": "Seek to position", "description": "Seek to a specific position in the user's currently playing track. This action allows you to skip to any point in the currently playing track by specifying a position in milliseconds. For example, to skip to 1 minute into the track, use position_ms=60000. **Requirements:** - Spotify Premium subscription required - User must have an active playback session with a track playing - Required OAuth scope: user-modify-playback-state **Behavior:** - Returns HTTP 204 No Content on success (no response body) - If position_ms exceeds track duration, playback skips to the next track - If no device_id is specified, targets the currently active device - Execution order is not guaranteed when used with other Player API endpoints **Common Use Cases:** - Skip to a specific timestamp in a podcast or long track - Resume playback from where a user left off - Implement custom seek controls in your application" }, { "slug": "SPOTIFY_SET_PLAYBACK_VOLUME", "name": "Set playback volume", "description": "Set the volume for the user's current playback device. This API only works for users who have Spotify Premium. The order of execution is not guaranteed when you use this API with other Player API endpoints." }, { "slug": "SPOTIFY_SET_REPEAT_MODE", "name": "Set repeat mode", "description": "Set the repeat mode for the user's playback. Controls whether playback should repeat the current track, the current context (playlist, album, etc.), or not repeat at all. The change takes effect immediately on the user's active device. Requirements: - Spotify Premium subscription - OAuth scope: user-modify-playback-state - Active playback session Valid repeat modes: - \"track\": Repeat the current track continuously - \"context\": Repeat the current context (playlist/album/etc.) - \"off\": Turn repeat off Note: The order of execution is not guaranteed when you use this API with other Player API endpoints. This action is idempotent - setting the same repeat mode multiple times has the same effect as setting it once. Common scenarios: - Turn off repeat: {\"state\": \"off\"} - Repeat current track: {\"state\": \"track\"} - Repeat playlist/album: {\"state\": \"context\"} - Target specific device: {\"state\": \"off\", \"device_id\": \"abc123\"} Error scenarios: - 403: User does not have Spotify Premium - 404: No active device found" }, { "slug": "SPOTIFY_SKIP_TO_NEXT", "name": "Skip to next", "description": "Skips to next track in the user's queue. This API only works for users who have Spotify Premium. The order of execution is not guaranteed when you use this API with other Player API endpoints." }, { "slug": "SPOTIFY_SKIP_TO_PREVIOUS", "name": "Skip to previous", "description": "Skips to the previous track in the user's queue. Requirements: - Spotify Premium subscription - Active playback (user must be currently playing music) - Requires 'user-modify-playback-state' scope Note: The order of execution is not guaranteed when you use this API with other Player API endpoints." }, { "slug": "SPOTIFY_START_RESUME_PLAYBACK", "name": "Start resume playback", "description": "Start a new context or resume current playback on the user's active device. Starts playback of a specific context (album, artist, or playlist), a list of tracks, or resumes currently paused playback. Returns immediately with success when playback starts. Requirements: - Spotify Premium subscription - OAuth scope: user-modify-playback-state - At least one active Spotify device (mobile, desktop, web player, or smart speaker) Usage patterns: - Resume paused playback: Call with no parameters - Play an album/playlist: Use 'context_uri' parameter - Play specific tracks: Use 'uris' parameter - Play from a specific track in a context: Use 'context_uri' with 'offset' - Start from a specific position in a track: Use 'position_ms' Note: The order of execution is not guaranteed when you use this API with other Player API endpoints. You cannot use both 'context_uri' and 'uris' parameters together. Common error scenarios: - 403: User does not have Spotify Premium - 404: No active device found" }, { "slug": "SPOTIFY_TOGGLE_PLAYBACK_SHUFFLE", "name": "Toggle playback shuffle", "description": "Toggle shuffle on or off for user's playback. This API only works for users who have Spotify Premium. The order of execution is not guaranteed when you use this API with other Player API endpoints. Required OAuth scope: user-modify-playback-state Note: This endpoint returns 204 No Content on success, 404 if no active device is found, and 403 if the user does not have an active Spotify Premium subscription." }, { "slug": "SPOTIFY_TRANSFER_PLAYBACK", "name": "Transfer playback", "description": "Transfer playback to a new device and optionally begin playback. Requirements: - Spotify Premium subscription is required - Target device must be active and available (use Get Available Devices to retrieve device IDs) - Requires user-modify-playback-state scope Note: The order of execution is not guaranteed when you use this API with other Player API endpoints. Returns 204 No Content on success, 403 Forbidden if user doesn't have Premium." }, { "slug": "SPOTIFY_UNFOLLOW_ARTISTS_OR_USERS", "name": "Unfollow artists or users", "description": "Remove the current user as a follower of one or more artists or other Spotify users. This action removes the specified artists or users from the current user's \"Following\" list, stopping their content from appearing in the user's personalized feed. The operation is idempotent - attempting to unfollow an already-unfollowed artist/user will succeed without error. Required OAuth scope: user-follow-modify Common use cases: - Unfollow an artist you no longer want to track - Unfollow multiple artists at once (up to 50) - Unfollow other Spotify users to stop seeing their public playlists and activity - Clean up your following list by removing inactive or irrelevant accounts Note: Artist IDs can be obtained from search results, track objects, or album objects. User IDs can be obtained from user profile endpoints or playlist owner information." }, { "slug": "SPOTIFY_UNFOLLOW_PLAYLIST", "name": "Unfollow playlist", "description": "Remove the current user as a follower of a playlist. This action removes the current user from following a playlist. The user no longer receives updates from the playlist and it is removed from their followed playlists list. This operation is idempotent - if the user is not currently following the playlist, the operation will still succeed. Required OAuth scopes: - playlist-modify-public: For unfollowing public playlists - playlist-modify-private: For unfollowing private playlists Note: Even if you are the playlist's owner, unfollowing removes it from your library. There is no separate \"delete\" endpoint - unfollowing is the equivalent operation." }, { "slug": "SPOTIFY_UPDATE_PLAYLIST_ITEMS", "name": "Update playlist items", "description": "Either replace all tracks in a playlist OR reorder existing tracks within it. **REPLACE mode**: Use `uris` parameter to completely overwrite all tracks in the playlist. Example: Replace all tracks with 3 specific tracks. **REORDER mode**: Use `range_start`, `insert_before`, and optionally `range_length`/`snapshot_id` to move tracks within the playlist without adding/removing any. Example: Move tracks at positions 5-7 to the beginning of the playlist. These two modes are mutually exclusive - you cannot use both in the same request." } ], "triggers": [ { "slug": "SPOTIFY_NEW_DEVICE_TRIGGER", "name": "New Device Added", "description": "Triggers when a new device is added." }, { "slug": "SPOTIFY_PLAYLIST_ITEM_TRIGGER", "name": "Spotify Playlist Item Change", "description": "Triggers when songs are added to or removed from a Spotify playlist." }, { "slug": "SPOTIFY_PLAYLIST_TRIGGER", "name": "New Playlist Created or Deleted", "description": "Triggers when a new playlist is created or deleted." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "spotify_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user-read-private,user-read-email,app-remote-control,streaming,user-modify-playback-state,user-read-playback-state,user-read-currently-playing" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "spotlightr", "name": "Spotlightr", "logo": "https://logos.composio.dev/api/spotlightr", "description": "Spotlightr is a video hosting and streaming platform that captures leads, updates contacts with engagement data, and provides analytics reporting.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SPOTLIGHTR_ADD_DOMAIN", "name": "Add Domain", "description": "Tool to add a whitelisted domain for embedding Spotlightr videos. Use when you need to whitelist a new domain for video embedding." }, { "slug": "SPOTLIGHTR_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new project (group) in Spotlightr. Use when you need to organize videos into a new project or group." }, { "slug": "SPOTLIGHTR_CREATE_VIDEO", "name": "Create Video", "description": "Tool to create a video in Spotlightr by uploading a file or linking from an external source. Use when you need to add a new video from YouTube, Google Drive, Vimeo, or other sources." }, { "slug": "SPOTLIGHTR_DELETE_VIDEO", "name": "Delete Video", "description": "Tool to delete or remove videos from Spotlightr projects. Use when you need to permanently delete one or more videos by their IDs." }, { "slug": "SPOTLIGHTR_GET_DOMAINS", "name": "Get Domains", "description": "Tool to retrieve whitelisted domains for a Spotlightr account. Use when you need to list all domains approved for embedding videos." }, { "slug": "SPOTLIGHTR_GET_TOP_VIDEOS", "name": "Get Top Videos", "description": "Tool to retrieve the top videos from a Spotlightr account. Use when you need to list the most viewed videos." }, { "slug": "SPOTLIGHTR_GET_VIDEO_METRICS", "name": "Get Video Metrics", "description": "Tool to retrieve analytics metrics for a specified video. Use when you have a video ID and need its metrics (loads, plays, playRate, completionRate, shares, etc.)." }, { "slug": "SPOTLIGHTR_GET_VIDEO_SOURCE", "name": "Get Video Source", "description": "Tool to get or replace the video source for an existing video in Spotlightr. Use when you need to update a video's source URL." }, { "slug": "SPOTLIGHTR_GET_VIDEO_VIEWS", "name": "Get Video Views", "description": "Tool to retrieve video view data with optional filtering by viewer ID and watch status. Use when you need detailed view records for a specific video." }, { "slug": "SPOTLIGHTR_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve all projects (groups) in a Spotlightr account. Use when you need to list all available projects or groups." }, { "slug": "SPOTLIGHTR_LIST_VIDEOS", "name": "List Videos", "description": "Tool to retrieve videos from a Spotlightr account. Use when you need to list all videos or filter by specific video ID or project." }, { "slug": "SPOTLIGHTR_SEARCH_GLOBAL", "name": "Search Global", "description": "Tool to perform account-wide search across all videos and content in Spotlightr. Use when you need to find specific videos, projects, or content by name or keyword." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "spotlightr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Spotlightr API Key", "type": "string", "description": "The API key used for authenticating requests to the Spotlightr API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "squarespace", "name": "Squarespace", "logo": "https://logos.composio.dev/api/squarespace", "description": "Squarespace Commerce API for managing orders, products, inventory, and transactions", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "squarespace_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "website.orders,website.orders.read,website.products,website.products.read,website.inventory,website.inventory.read,website.transactions.read" } ] }, "connected_account_initiation": { "required": [ { "name": "user_agent", "displayName": "User-Agent", "type": "string", "description": "Custom app description to identify your application (e.g., YOUR_PRODUCT / YOUR_PRODUCT_VERSION). Required for all requests.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "squarespace_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Squarespace API key from Settings > Advanced > Developer API Keys. Requires Commerce Advanced plan.", "required": true, "default": null }, { "name": "user_agent", "displayName": "User-Agent", "type": "string", "description": "Custom app description to identify your application (e.g., YOUR_PRODUCT / YOUR_PRODUCT_VERSION). Required for all requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sslmate_cert_spotter_api", "name": "SSLMate Cert Spotter API", "logo": "https://logos.composio.dev/api/sslmate_cert_spotter_api", "description": "Cert Spotter API by SSLMate monitors Certificate Transparency logs to alert users about SSL/TLS certificates issued for their domains, helping detect unauthorized certificates and potential security issues.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SSLMATE_CERT_SPOTTER_API_ADD_MONITORED_DOMAIN", "name": "Add Monitored Domain", "description": "Tool to add or update a monitored domain in Cert Spotter. Use when you need to enable monitoring for a new domain or update an existing one. If the domain already exists, omitted fields retain their existing values." }, { "slug": "SSLMATE_CERT_SPOTTER_API_AUTHORIZE_CERTIFICATE", "name": "Authorize Certificate", "description": "Tool to authorize a certificate in Cert Spotter. Use when you need to prevent future notifications for a known certificate. Once authorized, the certificate will not trigger alerts if discovered in Certificate Transparency logs." }, { "slug": "SSLMATE_CERT_SPOTTER_API_AUTHORIZE_PUBLIC_KEY", "name": "Authorize Public Key", "description": "Tool to authorize a public key in Cert Spotter. Use when you need to prevent notifications for certificates using a specific public key. Authorizing a key before certificate issuance avoids race conditions." }, { "slug": "SSLMATE_CERT_SPOTTER_API_CERTSPOTTER_GET_EVENT", "name": "Get CertSpotter Event", "description": "Tool to retrieve detailed information about a specific CertSpotter certificate issuance. Use when you need to inspect certificate metadata after confirming an issuance ID." }, { "slug": "SSLMATE_CERT_SPOTTER_API_DELETE_MONITORED_DOMAIN", "name": "Delete Monitored Domain", "description": "Tool to delete a monitored domain from Cert Spotter. Use when you need to remove a domain from monitoring. Returns success confirmation on deletion (HTTP 204). Returns 404 if domain not found." }, { "slug": "SSLMATE_CERT_SPOTTER_API_GET_CERTIFICATE_V2", "name": "Get Certificate (API v2)", "description": "Tool to retrieve certificate information by common name (domain). Use when you need to inspect certificate metadata, status, or configuration for a specific domain." }, { "slug": "SSLMATE_CERT_SPOTTER_API_GET_MONITORED_DOMAIN", "name": "Get Monitored Domain", "description": "Tool to retrieve a specific monitored domain by its name. Use when you need to check the monitoring status of a domain." }, { "slug": "SSLMATE_CERT_SPOTTER_API_LIST_CT_ISSUANCES", "name": "List CT Issuances", "description": "Tool to list certificate issuances for a domain from Certificate Transparency logs. Use when you need to discover all unexpired certificates issued for a domain or its subdomains." }, { "slug": "SSLMATE_CERT_SPOTTER_API_LIST_MONITORED_DOMAINS", "name": "List Monitored Domains", "description": "Tool to list all monitored domains. Use when you need to audit or review the domains currently monitored by Cert Spotter." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sslmate_cert_spotter_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "SSLMate API Key", "type": "string", "description": "Your SSLMate API key, which can be found on your account page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stack_ai", "name": "Stack Ai", "logo": "https://logos.composio.dev/api/stack_ai", "description": "No-Code Platform for Enterprise AI. Build, deploy, and scale AI workflows without code.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 22, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STACK_AI_CHECK_HEALTH", "name": "Check Health", "description": "Tool to check the health status of the Stack AI API. Use to verify API availability and service status." }, { "slug": "STACK_AI_GET_ACTION_INPUTS", "name": "Get Action Inputs", "description": "Tool to retrieve the input schema for a specific provider action in Stack AI. Use when you need to understand what parameters are required for a provider action." }, { "slug": "STACK_AI_GET_ACTION_OUTPUTS", "name": "Get Action Output Schema", "description": "Tool to retrieve the output parameters schema for a Stack.ai provider action as JSON schema. Use when you need to understand what data fields an action returns or to validate action outputs." }, { "slug": "STACK_AI_GET_CONNECTOR_TYPE_SCHEMA", "name": "Get Connector Type Schema", "description": "Tool to retrieve the configuration schema for a specific connector type in Stack AI. Use when you need to understand what parameters are required to configure a connector." }, { "slug": "STACK_AI_GET_LICENSE_STATUS", "name": "Get License Status", "description": "Tool to retrieve the current Stack AI license status. Use when you need to check license validity, expiration date, or days remaining." }, { "slug": "STACK_AI_GET_PROVIDER", "name": "Get Provider Details", "description": "Tool to retrieve details of a specific Stack AI tool provider. Use when you need information about available actions, triggers, and configuration for a provider." }, { "slug": "STACK_AI_GET_PROVIDER_ACTION", "name": "Get Provider Action Details", "description": "Tool to get details of a specific action for a provider. Use when you need information about a provider's action including its parameters, description, and API details." }, { "slug": "STACK_AI_GET_PROVIDER_ICON", "name": "Get Provider Icon", "description": "Tool to fetch a provider icon image by provider identifier. Use when you need to retrieve the icon for a tool provider." }, { "slug": "STACK_AI_GET_PROVIDER_TRIGGER", "name": "Get Provider Trigger Details", "description": "Tool to retrieve detailed information about a specific trigger for a provider. Use when you need to understand the configuration, inputs, outputs, or behavior of a specific trigger." }, { "slug": "STACK_AI_GET_ROOT", "name": "Get Root", "description": "Tool to retrieve information from the Stack AI API root endpoint. Use when you need to verify API connectivity or get basic API information." }, { "slug": "STACK_AI_GET_TRIGGER_BY_PROVIDER", "name": "Get Trigger Details From Provider", "description": "Tool to retrieve detailed information about a specific trigger from a provider. Use when you need to get trigger configuration, capabilities, or metadata for a specific provider's trigger." }, { "slug": "STACK_AI_GET_TRIGGER_INPUTS", "name": "Get Trigger Inputs", "description": "Tool to retrieve the input parameters for a trigger as a JSON schema. Use when discovering what data inputs a specific trigger requires before executing it." }, { "slug": "STACK_AI_GET_TRIGGER_OUTPUTS", "name": "Get Trigger Outputs", "description": "Tool to retrieve the output schema for a specific trigger in Stack AI. Use when you need to understand what fields a trigger will produce when it fires. This action helps discover the structure of data that will be available from a trigger event, which is useful for configuring workflows and data processing." }, { "slug": "STACK_AI_LIST_CONNECTOR_TYPES", "name": "List Connector Types", "description": "Tool to list all available connector types from Stack AI. Use when you need to retrieve the available connectors that can be configured." }, { "slug": "STACK_AI_LIST_INTEGRATIONS", "name": "List Stack AI Integrations", "description": "Tool to list all available Stack AI integrations. Use when you need to discover available integrations, actions, and triggers in Stack AI." }, { "slug": "STACK_AI_LIST_PERMISSION_GROUPS", "name": "List Permission Groups", "description": "Tool to list all permission groups with their associated permissions. Use when you need to retrieve available permission groups and their permissions for access control management." }, { "slug": "STACK_AI_LIST_PERMISSIONS", "name": "List Permissions", "description": "Tool to list all available permissions in Stack AI. Use when you need to view or check available permission types." }, { "slug": "STACK_AI_LIST_PROVIDER_TRIGGERS", "name": "List Provider Triggers", "description": "Tool to get all available triggers for a specific provider. Use when you need to discover what trigger types are supported by a provider." }, { "slug": "STACK_AI_LIST_STACKAI_ACTIONS", "name": "List Stack AI Actions", "description": "Tool to list all available Stack AI tool actions. Use when you need to discover available automation capabilities organized by provider." }, { "slug": "STACK_AI_LIST_STACKAI_PROVIDERS", "name": "List Stack AI Providers", "description": "Tool to list all Stack AI tool providers (integrations). Use when you need to discover available integrations and their capabilities. Returns comprehensive information about each provider including available actions, triggers, and metadata." }, { "slug": "STACK_AI_LIST_STACKAI_TOOLS", "name": "List Stack AI Built-in Tools", "description": "Tool to list all Stack AI built-in tools. Use when you need to discover available Stack AI native tools and their capabilities." }, { "slug": "STACK_AI_LIST_STACK_AI_TRIGGERS", "name": "List Stack AI Triggers", "description": "Tool to list all available Stack AI tool triggers. Use when you need to discover what triggers are available in the Stack AI platform." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "stack_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Public Key", "type": "string", "description": "Your Stack AI public API key. Navigate to your Stack AI account, click the \"Profile\" dropdown on the top right, and go to \"Keys\" to generate your public key.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Organization ID", "type": "string", "description": "Your Stack AI organization identifier. Deploy your Stack AI workflow, click on the \"Deployments\" tab, and find the org parameter in the URL.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stackshare_api", "name": "Stackshare Api", "logo": "https://logos.composio.dev/api/stackshare_api", "description": "StackShare enables you to uncover the tech stacks behind 1.5M companies and counting.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "stackshare_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the StackShare API webpage at https://stackshare.io/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stannp", "name": "Stannp", "logo": "https://logos.composio.dev/api/stannp", "description": "Stannp provides a direct mail API enabling users to send postcards and letters programmatically.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STANNP_ADD_RECIPIENTS_TO_GROUP", "name": "Add recipients to group", "description": "Tool to add existing recipients to a mailing list group. Use when you need to add recipients from your account to an existing group for campaign management." }, { "slug": "STANNP_ADD_RECIPIENT_TO_GROUP", "name": "Add Recipient to Group", "description": "Tool to add a recipient to a recipient group. Use when you need to add new mailing list subscribers." }, { "slug": "STANNP_CANCEL_POSTCARD", "name": "Cancel Postcard", "description": "Tool to cancel a postcard if processing has not started yet. Use when you need to cancel a scheduled postcard before it enters production." }, { "slug": "STANNP_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new direct mail campaign on the platform. Use when you need to set up a campaign with recipients and design templates. Requires a valid group_id with recipients." }, { "slug": "STANNP_CREATE_CAMPAIGN_SAMPLE", "name": "Create campaign sample", "description": "Tool to produce a PDF sample of your campaign. The generated link will be valid for 30 minutes. Use when you need to preview a campaign before sending it to recipients." }, { "slug": "STANNP_CREATE_FOLDER", "name": "Create folder", "description": "Tool to create a folder in your secure file transfer area. Use when you need to organize files or prepare a storage location before uploading documents." }, { "slug": "STANNP_CREATE_GROUP", "name": "Create recipient group", "description": "Tool to create a new recipient group in Stannp. Use when you need to organize contacts into a distinct group before sending campaigns." }, { "slug": "STANNP_CREATE_LETTER", "name": "Create Letter", "description": "Tool to create a letter with mail merge to insert address and variable data. Use when you need to send physical mail via Stannp API." }, { "slug": "STANNP_CREATE_POSTCARD", "name": "Create Postcard", "description": "Tool to create a postcard. Use when you need to send a postcard via direct mail." }, { "slug": "STANNP_CREATE_SELECTION", "name": "Create recipient selection", "description": "Tool to create a new recipient selection for targeting in Stannp. Use when you need to create an auto filter selection to target specific recipients within a group based on criteria." }, { "slug": "STANNP_DELETE_GROUP", "name": "Delete recipient group", "description": "Tool to delete a recipient group in Stannp. Recipients remain on your account unless delete_recipients is true. Use when you need to remove a mailing list group." }, { "slug": "STANNP_DELETE_RECIPIENT", "name": "Delete Recipient", "description": "Tool to permanently delete a recipient from your account. Use when you need to remove a recipient from your mailing list." }, { "slug": "STANNP_GET_ACCOUNT_BALANCE", "name": "Get Account Balance", "description": "Tool to retrieve the current account balance. Use when you need to check available account funds." }, { "slug": "STANNP_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve details of a specific campaign. Use when you need to get information about a campaign by its ID." }, { "slug": "STANNP_GET_CAMPAIGN_AVAILABLE_DATES", "name": "Get Campaign Available Dates", "description": "Tool to get available dates for scheduling a campaign (up to 30 days). Use when you need to check which dates are available for campaign dispatch." }, { "slug": "STANNP_GET_CAMPAIGN_COST", "name": "Get Campaign Cost", "description": "Tool to get the estimated cost of booking a campaign. Use when you need to calculate the total cost before booking a direct mail campaign." }, { "slug": "STANNP_GET_CONTACT", "name": "Get Contact", "description": "Tool to retrieve details of a specific contact. Use when you need all stored fields of a contact by its ID." }, { "slug": "STANNP_GET_CURRENT_USER", "name": "Get Current User", "description": "Tool to get information about the currently authenticated user including rate limit status. Use when you need to retrieve the current user's account details or check API rate limit status." }, { "slug": "STANNP_GET_REPORTING_SUMMARY", "name": "Get Reporting Summary", "description": "Tool to get a status summary on individual items within a date range. Use when you need reporting metrics for mailpieces including delivery status, printing status, and counts." }, { "slug": "STANNP_IMPORT_RECIPIENTS", "name": "Import Recipients", "description": "Tool to import recipients from a CSV or XLS file into a Stannp recipient group. Use when you have a mailing list file ready to upload." }, { "slug": "STANNP_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to get a list of all campaigns. Use when you need to retrieve campaigns after authentication." }, { "slug": "STANNP_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to list all contacts. Use when you need to retrieve contacts with optional pagination filters." }, { "slug": "STANNP_LIST_FOLDERS", "name": "List Folders", "description": "Tool to get a list of folders in your secure file transfer area. Use when you need to retrieve available folders for file organization." }, { "slug": "STANNP_LIST_GROUPS", "name": "List Mailing Groups", "description": "Tool to get a list of mailing groups on your account. Use when you need to retrieve all groups with optional pagination." }, { "slug": "STANNP_LIST_MAILPIECES", "name": "List Mailpieces", "description": "Tool to retrieve mailpiece objects sent within a date range. Use when you need to query mailing history with optional status or tag filters." }, { "slug": "STANNP_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all templates associated with the account. Use when you need to retrieve available templates after authentication." }, { "slug": "STANNP_MERGE_PDFS", "name": "Merge PDF files", "description": "Tool to merge multiple PDF files into a single file. Use when you need to consolidate multiple PDFs into one document." }, { "slug": "STANNP_PURGE_GROUP", "name": "Purge Group", "description": "Tool to remove all recipients from a mailing list. Recipients remain on your account if delete_recipients is false." }, { "slug": "STANNP_RECALCULATE_GROUP", "name": "Recalculate group", "description": "Tool to recalculate a group to ensure stats are up to date. Use when you need to refresh group statistics after adding or removing recipients." }, { "slug": "STANNP_REMOVE_RECIPIENTS_FROM_GROUP", "name": "Remove Recipients from Group", "description": "Tool to remove recipients from a group without deleting them. Use when you need to remove contacts from a mailing group while keeping them in your account." }, { "slug": "STANNP_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to your secure file transfer area. Use when you need to upload files for direct mail campaigns. Supports both URL-based imports and binary file uploads." }, { "slug": "STANNP_VALIDATE_ADDRESS", "name": "Validate Address", "description": "Tool to validate a postal address. Currently supports UK and US addresses only. Use when you need to verify if a given address is valid before sending mail." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "stannp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Stannp API Key", "type": "string", "description": "Your unique API key for authenticating requests to the Stannp API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "starton", "name": "Starton", "logo": "https://logos.composio.dev/api/starton", "description": "Starton is an all-in-one Web3 API platform that enables developers to deploy and interact with smart contracts, store files on IPFS, and monitor blockchain events through a unified API and frontend interface.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STARTON_DELETE_SMART_CONTRACT_EVENT", "name": "Delete Smart Contract Event", "description": "Tool to delete a specific smart contract event watcher by its ID. Use after confirming the watcher ID you want to remove." }, { "slug": "STARTON_GET_SMART_CONTRACTS", "name": "Get Smart Contracts", "description": "Tool to retrieve a list of all smart contracts associated with your project. Use after authenticating and optionally filtering by project ID." }, { "slug": "STARTON_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve a list of all smart contract templates. Use when browsing the Starton template library to select a template before deployment." }, { "slug": "STARTON_GET_WATCHER", "name": "Get Watcher", "description": "Tool to retrieve details of a specific watcher by its ID. Use when you need to confirm its configuration before updating or deleting." }, { "slug": "STARTON_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Tool to retrieve a list of all webhook watchers. Use after creating watchers to review existing watchers." }, { "slug": "STARTON_UPLOAD_FILE", "name": "Upload File to IPFS", "description": "Tool to upload a file to your project's IPFS storage. Use after preparing the file you want to host on IPFS." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "starton_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Starton API Key", "type": "string", "description": "The API key used to authenticate requests to the Starton API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "statuscake", "name": "Statuscake", "logo": "https://logos.composio.dev/api/statuscake", "description": "StatusCake is a website monitoring platform that provides observability for applications, offering features like uptime monitoring, page speed monitoring, SSL monitoring, and more.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STATUSCAKE_CREATE_CONTACT_GROUP", "name": "Create Contact Group", "description": "Tool to create a contact group for alert notifications in StatusCake. Use when you need to set up a new group of notification recipients for monitoring alerts. The group can include email addresses, mobile numbers, integrations, and a webhook URL. At minimum, provide a name; other notification methods are optional." }, { "slug": "STATUSCAKE_CREATE_HEARTBEAT_TEST", "name": "Create Heartbeat Test", "description": "Tool to create a heartbeat check in StatusCake. Use when you need to set up monitoring for services that send periodic pings. A heartbeat check monitors whether your service is sending regular \"heartbeat\" pings to StatusCake. If the service fails to send a ping within the specified period, StatusCake will alert you through the configured contact groups. This is ideal for monitoring cron jobs, backup processes, or any scheduled tasks that should run at regular intervals." }, { "slug": "STATUSCAKE_CREATE_PAGESPEED_TEST", "name": "Create PageSpeed Test", "description": "Tool to create a new pagespeed check in StatusCake. Use when you need to set up performance monitoring for a website URL with specific check frequency and region. Returns the ID of the newly created test." }, { "slug": "STATUSCAKE_CREATE_UPTIME_TEST", "name": "Create Uptime Test", "description": "Tool to create a new uptime monitoring check in StatusCake. Use when you need to set up monitoring for a website or server. Supports various check types including HTTP, PING, TCP, DNS, and more. Returns the ID of the newly created test." }, { "slug": "STATUSCAKE_DELETE_CONTACT_GROUP", "name": "Delete Contact Group", "description": "Tool to delete a contact group. Use when you need to remove an existing contact group by its ID after confirming its existence." }, { "slug": "STATUSCAKE_DELETE_HEARTBEAT_TEST", "name": "Delete Heartbeat Test", "description": "Permanently deletes a StatusCake heartbeat check. Use this to remove heartbeat monitoring tests that are no longer needed. This operation is irreversible - the heartbeat check and all its historical data will be removed." }, { "slug": "STATUSCAKE_DELETE_PAGESPEED_TEST", "name": "Delete PageSpeed Test", "description": "Permanently deletes a StatusCake PageSpeed test. Use this to remove PageSpeed tests that are no longer needed. This operation is irreversible - the test and all its historical data will be removed. The operation is idempotent - deleting an already-deleted test will still return success." }, { "slug": "STATUSCAKE_DELETE_SSL_TEST", "name": "Delete SSL Test", "description": "Tool to delete an SSL check with the given ID. Use when you need to permanently remove an SSL monitoring test from StatusCake." }, { "slug": "STATUSCAKE_DELETE_TEST", "name": "Delete Test", "description": "Permanently deletes a StatusCake uptime monitoring test. Use this to remove tests that are no longer needed. This operation is irreversible - the test and all its historical data will be removed. The operation is idempotent - deleting an already-deleted test will still return success." }, { "slug": "STATUSCAKE_GET_ALL_CONTACT_GROUPS", "name": "Get All Contact Groups", "description": "Retrieves a paginated list of contact groups for alert notifications. Contact groups define who receives alerts when monitoring tests fail. Returns group names, email addresses, mobile numbers, and integrations. Use this to find existing contact groups before creating new ones or to verify notification recipients." }, { "slug": "STATUSCAKE_GET_ALL_LOCATIONS", "name": "Get All Monitoring Locations", "description": "Retrieves all available uptime monitoring server locations from StatusCake. Use this tool to: - List all monitoring locations to show users available regions - Get region_code values needed when creating or updating uptime checks - Check the current status of monitoring servers - Get IP addresses of monitoring servers for firewall whitelisting Returns ~150 monitoring locations across 30+ countries with their region codes, IP addresses, and availability status." }, { "slug": "STATUSCAKE_GET_ALL_PAGESPEED_TESTS", "name": "Get All PageSpeed Tests", "description": "Tool to retrieve all PageSpeed tests. Use when you need to list existing PageSpeed performance tests in StatusCake after authenticating." }, { "slug": "STATUSCAKE_GET_ALL_TESTS", "name": "Get All Tests", "description": "Tool to retrieve a list of all tests. Use when you need to list your monitoring tests in StatusCake. Results reflect only pre-configured tests; missing results or stale check data do not indicate real-time downtime." }, { "slug": "STATUSCAKE_GET_CONTACT_GROUP_DETAILS", "name": "Get Contact Group Details", "description": "Tool to retrieve details of a specific contact group. Use when you need group metadata by providing its ID. Example: \"Get details for contact group 12345\"." }, { "slug": "STATUSCAKE_GET_HEARTBEAT_CHECKS", "name": "Get Heartbeat Checks", "description": "Tool to list heartbeat checks. Use when you need to retrieve all heartbeat monitoring tests for your account." }, { "slug": "STATUSCAKE_GET_HEARTBEAT_TEST", "name": "Get Heartbeat Test", "description": "Tool to retrieve details of a specific heartbeat check. Use when you need configuration and status of a heartbeat test by providing its ID. Example: \"Get heartbeat test details for 7884186\"." }, { "slug": "STATUSCAKE_GET_PAGESPEED_TEST", "name": "Get Pagespeed Test", "description": "Tool to retrieve details of a specific pagespeed check. Use when you need configuration and status of a pagespeed test by providing its ID. Example: \"Get pagespeed test details for 122582\"." }, { "slug": "STATUSCAKE_GET_SSL_CHECK_DETAILS", "name": "Get SSL Check Details", "description": "Tool to retrieve details of a specific SSL check. Use when you need configuration and status of an SSL test by providing its ID. Example: \"Get SSL check details for 123\"." }, { "slug": "STATUSCAKE_GET_SSL_CHECKS", "name": "Get SSL Checks", "description": "Retrieve a paginated list of SSL checks configured in your StatusCake account. Use this action to: - List all SSL certificate monitors - Check certificate statuses across your monitored domains - Review SSL check configurations and alert settings - Get pagination metadata for navigating large result sets Returns SSL check details including certificate validity dates, cipher information, security scores, and alert configuration." }, { "slug": "STATUSCAKE_GET_UPTIME_TEST", "name": "Get Uptime Test", "description": "Tool to retrieve details of a specific uptime test. Use when you need configuration and status of an uptime check by providing its ID. Example: \"Get uptime test details for 7884184\"." }, { "slug": "STATUSCAKE_LIST_PAGESPEED_MONITORING_LOCATIONS", "name": "List PageSpeed Monitoring Locations", "description": "Retrieves all available PageSpeed monitoring server locations from StatusCake. Use when you need to list regions for PageSpeed test configuration or check server availability." }, { "slug": "STATUSCAKE_LIST_PAGESPEED_TEST_HISTORY", "name": "List Pagespeed Test History", "description": "Tool to retrieve pagespeed check history for a given test ID. Use when you need to analyze historical performance data for a specific pagespeed test." }, { "slug": "STATUSCAKE_LIST_UPTIME_TEST_ALERTS", "name": "List Uptime Test Alerts", "description": "Tool to retrieve a list of alerts for a specific uptime check. Use when you need to view historical alerts and status changes for an uptime test." }, { "slug": "STATUSCAKE_LIST_UPTIME_TEST_HISTORY", "name": "List Uptime Test History", "description": "Tool to retrieve uptime check history for a given test ID. Use when you need to view historical results of uptime monitoring checks. Supports pagination and time-based filtering." }, { "slug": "STATUSCAKE_LIST_UPTIME_TEST_PERIODS", "name": "List Uptime Test Periods", "description": "Tool to retrieve a list of uptime check periods for a specific test. Use when you need to view the historical up/down periods for an uptime check." }, { "slug": "STATUSCAKE_UPDATE_CONTACT_GROUP", "name": "Update Contact Group", "description": "Updates an existing contact group's configuration in StatusCake. Use this tool when you need to modify the name, email addresses, mobile numbers, or integrations of an existing contact group. At least one field besides contact_group_id should be provided to make meaningful changes. The API uses form-urlencoded data format and returns 204 No Content on success, so the action fetches the updated group details after a successful update." }, { "slug": "STATUSCAKE_UPDATE_HEARTBEAT_TEST", "name": "Update Heartbeat Test", "description": "Tool to update an existing heartbeat check with new parameters. Use when you need to modify the name, monitoring period, tags, contact groups, host, or pause status of a heartbeat check." }, { "slug": "STATUSCAKE_UPDATE_PAGESPEED_TEST", "name": "Update Pagespeed Test", "description": "Updates a pagespeed check with the given parameters. Use when you need to modify the configuration of an existing pagespeed monitoring test in StatusCake. At least one field besides test_id should be provided to make meaningful changes." }, { "slug": "STATUSCAKE_UPDATE_SSL_TEST", "name": "Update SSL Test", "description": "Tool to update an SSL check with new configuration parameters. Use when modifying SSL monitoring settings like check frequency, alert preferences, or contact groups. Example: \"Update SSL check 123 to check every hour\"." }, { "slug": "STATUSCAKE_UPDATE_UPTIME_TEST", "name": "Update Uptime Test", "description": "Updates an uptime check with the given parameters. Use when you need to modify configuration of an existing uptime monitoring test such as check frequency, URL, tags, contact groups, or other settings. At least one field besides test_id should be provided to make meaningful changes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "statuscake_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "StatusCake API Token", "type": "string", "description": "The API token used for authenticating requests to the StatusCake API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "statuspage", "name": "Statuspage", "logo": "https://logos.composio.dev/api/statuspage", "description": "Easily communicate real-time status to your users", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "statuspage_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Statuspage API key. Get it from manage.statuspage.io > User Avatar > API info. Only account owners can create API keys.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Page ID", "type": "string", "description": "Your Statuspage page ID. Found in manage.statuspage.io > User Avatar > API info.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "steam", "name": "Steam", "logo": "https://logos.composio.dev/api/steam", "description": "Steam Web API provides access to Steam user data, game information, player statistics, and more", "category": "gaming", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "steam_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_cloud" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "steam_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Steam Web API Key", "type": "string", "description": "Your Steam Web API Key. Register at https://steamcommunity.com/dev/apikey", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "storeganise", "name": "Storeganise", "logo": "https://logos.composio.dev/api/storeganise", "description": "Storeganise provides modern, cloud-based management software for valet and self-storage businesses, offering features like contactless online bookings, automated billing, and comprehensive APIs for integrations.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STOREGANISE_GET_ADMIN_SITES_BY_ID", "name": "Get Admin Site by ID or Code", "description": "Tool to retrieve a specific site by ID or code. Use when you have the site identifier and need full site details, optionally including related resources like units." }, { "slug": "STOREGANISE_GET_ADMIN_USERS_BY_ID", "name": "Get Admin User By ID or Email", "description": "Tool to retrieve a specific admin user by ID or email. Use when you need detailed information of a single admin user." }, { "slug": "STOREGANISE_GET_ADMIN_USERS_BY_IDS", "name": "Get Admin Users By IDs", "description": "Tool to fetch multiple admin users by their IDs. Use when you need to retrieve details for a specific set of admin accounts in bulk after verifying their IDs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "storeganise_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Business Code", "type": "string", "description": "The unique code assigned to your business, used to construct the base URL for the Storeganise API.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key used for authenticating requests to the Storeganise API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "storerocket", "name": "Storerocket", "logo": "https://logos.composio.dev/api/storerocket", "description": "StoreRocket is a store locator software platform that enables businesses to add customizable, interactive location finders to their websites. It provides location management, real-time opening hours, search filters, custom fields, lead collection, analytics, and a REST API for seamless integration with platforms like WordPress, Shopify, Webflow, and more.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STOREROCKET_GET_USERS", "name": "Get authenticated user", "description": "Tool to retrieve the authenticated user information. Use when you need to get details about the currently authenticated user." }, { "slug": "STOREROCKET_PING", "name": "Ping API health check", "description": "Tool to verify API availability via health check endpoint. Use when you need to check if the StoreRocket API is accessible and responding." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "storerocket_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "StoreRocket API Token", "type": "string", "description": "The API token used for authenticating requests to the StoreRocket API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stormboard", "name": "Stormboard", "logo": "https://logos.composio.dev/api/stormboard", "description": "An online sticky note whiteboard making meetings, brainstorms, and creative projects more productive and effective.", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 41, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STORMBOARD_ACCEPT_A_STORM_INVITE", "name": "Accept a Storm Invite", "description": "Tool to accept a Storm invitation and join the Storm. Use when a user wants to accept an invitation to join a Storm." }, { "slug": "STORMBOARD_ADD_A_FAVORITE_STAR", "name": "Add a Favorite Star", "description": "Tool to add a favorite star to a Storm on the Dashboard. Use when you need to mark a Storm as a favorite." }, { "slug": "STORMBOARD_CHECK_AUTHENTICATION", "name": "Check Authentication", "description": "Tool to verify API key authentication validity. Use when you need to test if the API credentials are valid and properly configured." }, { "slug": "STORMBOARD_CLOSE_A_STORM", "name": "Close a Storm", "description": "Tool to close an open Storm, making it read-only. Use when you need to prevent further changes to a Storm. Only the Storm creator or a Storm administrator can close a storm." }, { "slug": "STORMBOARD_CREATE_A_LINE_CONNECTOR", "name": "Create a Line Connector", "description": "Tool to create a line connector between two ideas. Use when you need to establish a connection between a pair of ideas on the Storm board." }, { "slug": "STORMBOARD_CREATE_A_NEW_CHAT_MESSAGES", "name": "Create a new chat message", "description": "Tool to create a new chat message in a Stormboard storm. Use when you need to post a message to a specific storm's chat." }, { "slug": "STORMBOARD_CREATE_A_NEW_STORM", "name": "Create a New Storm", "description": "Tool to create a new Storm in Stormboard for interactive planning and collaboration. Use when you need to create a digital workspace for brainstorming, planning, or team collaboration." }, { "slug": "STORMBOARD_CREATE_A_NEW_TAG", "name": "Create a New Tag", "description": "Tool to create a new tag in a Storm without any data related to Ideas. Use when you need to add a new tag to a Storm's tag collection." }, { "slug": "STORMBOARD_CREATE_A_NEW_USER", "name": "Create a New User", "description": "Tool to create a new user account in Stormboard. An email will be sent to the newly created user asking them to verify their account. Use when you need to add a new user to the system." }, { "slug": "STORMBOARD_CREATE_AN_IDEA", "name": "Create an idea in Stormboard", "description": "Tool to create a new idea in an existing Stormboard storm. Use when you need to add ideas, notes, or items to a storm with specific content and details." }, { "slug": "STORMBOARD_CREATE_TAG_DATA_FOR_AN_IDEA", "name": "Create Tag Data for an Idea", "description": "Tool to update tag data for an idea. Any tag not in the change list remains unchanged. Tags not found in the Storm are created automatically with the provided tag data applied." }, { "slug": "STORMBOARD_DECLINE_A_STORM_INVITE", "name": "Decline a Storm Invite", "description": "Tool to decline a Storm invitation and remove it from your list. Use when a user wants to reject an invitation to join a Storm." }, { "slug": "STORMBOARD_DELETE_A_CONNECTOR_BETWEEN_IDEAS", "name": "Delete a Connector Between Ideas", "description": "Tool to delete a line connector between two ideas. Use when you need to remove a connection between a pair of ideas on the Storm board." }, { "slug": "STORMBOARD_DELETE_A_SPECIFIC_CONNECTOR", "name": "Delete a Specific Connector", "description": "Tool to delete a line connector using the connector ID. Use when you need to remove a specific connector from the Storm board." }, { "slug": "STORMBOARD_DETAILS", "name": "Get Storm Details", "description": "Tool to retrieve detailed information about a specific Storm. Use when you need to get complete Storm details including metadata, settings, and configuration." }, { "slug": "STORMBOARD_DUPLICATE_A_STORM", "name": "Duplicate a Storm", "description": "Tool to duplicate an existing Storm. Use when you need to create a copy of a Storm with all its content." }, { "slug": "STORMBOARD_GET_A_LIST_OF_CONNECTORS_IN_A_STORM", "name": "Get a list of connectors in a Storm", "description": "Tool to retrieve a list of connectors within a specific Storm. Use when you need to access relationship data between ideas or elements in a Storm." }, { "slug": "STORMBOARD_GET_A_LIST_OF_IDEAS", "name": "Get a List of Ideas", "description": "Tool to retrieve all ideas from a Storm. Returns a list of ideas, but Files, Images, and Whiteboards do not contain their corresponding data at this time. Use when you need to get an overview of all ideas in a Storm." }, { "slug": "STORMBOARD_GET_A_LIST_OF_PARTICIPANTS", "name": "Get A List Of Participants", "description": "Tool to retrieve a list of all participants in a Storm. Use when you need to see who has access to a specific Storm and their roles." }, { "slug": "STORMBOARD_GET_A_LIST_OF_STORMS_INVITES", "name": "Get A List Of Storms Invites", "description": "Tool to retrieve a list of storms that you have been invited to. Use when you need to see pending storm invitations for the authenticated user." }, { "slug": "STORMBOARD_GET_A_LIST_OF_TAGS_IN_THE_STORM", "name": "Get List of Tags in Storm", "description": "Tool to retrieve the list of tags that have been created in a Storm. Use when you need to view all tags available in a specific Storm. Note that tag data for individual ideas is not available through this endpoint." }, { "slug": "STORMBOARD_GET_A_LIST_OF_YOUR_STORMS", "name": "Get A List Of Your Storms", "description": "Tool to retrieve a list of storms from Stormboard. Use when you need to browse or access available storms in the user's account." }, { "slug": "STORMBOARD_GET_AUTHENTICATION_INFO", "name": "Get Authentication Info", "description": "Tool to retrieve authentication information and API token for the authenticated user. Use when you need to get authentication details or verify API access credentials." }, { "slug": "STORMBOARD_GET_CHAT_MESSAGES", "name": "Get Chat Messages", "description": "Tool to retrieve a list of chat messages from a Stormboard storm. Use when you need to view the chat history for a specific storm." }, { "slug": "STORMBOARD_GET_IDEA_DATA", "name": "Get Idea Data", "description": "Tool to retrieve detailed data and metadata for a specific idea. Use when you need to fetch information about an idea including its content, position, creator, votes, comments, and associated task details." }, { "slug": "STORMBOARD_GET_INFO_ABOUT_YOUR_USER", "name": "Get Info About Your User", "description": "Tool to retrieve authenticated user profile information. Use when you need to get the current user's details like name, email, or account metadata." }, { "slug": "STORMBOARD_GET_MY_STORM_ACCESS", "name": "Get My Storm Access", "description": "Tool to check if the authenticated user has access to a Storm and retrieve their permission level. Use when verifying user permissions for a specific Storm. Returns 401 error if user lacks access." }, { "slug": "STORMBOARD_GET_STORM_TEMPLATE", "name": "Get Storm Template", "description": "Tool to retrieve template data for a Storm including all sections and subsections. Use when you need to get the organizational structure and template configuration of a Storm." }, { "slug": "STORMBOARD_GET_TAG_DATA_FOR_AN_IDEA", "name": "Get Tag Data For An Idea", "description": "Tool to retrieve tag data for a specific idea in Stormboard. Use when you need to view all tags associated with a particular idea." }, { "slug": "STORMBOARD_GET_UNREAD_CHAT_MESSAGES", "name": "Get Unread Chat Messages", "description": "Tool to retrieve unread chat messages from a specific Storm. Use when you need to check for new messages in a Storm's chat." }, { "slug": "STORMBOARD_INVITE_PARTICIPANTS", "name": "Invite Participants to Storm", "description": "Tool to invite people to join a Storm by email. Use when you need to add new participants to a Storm." }, { "slug": "STORMBOARD_JOIN_A_STORM", "name": "Join a Storm", "description": "Tool to join a Storm using its ID and access key. Use when a user wants to add themselves to a Storm's participant list." }, { "slug": "STORMBOARD_MARK_CHAT_MESSAGES_AS_READ", "name": "Mark Chat Messages as Read", "description": "Tool to mark all chat messages as read in a Storm. Use when you need to mark all unread chat messages in a specific Storm as read." }, { "slug": "STORMBOARD_REMOVE_A_FAVORITE_STAR", "name": "Remove a Favorite Star", "description": "Tool to remove a favorite star from a Storm on the Dashboard. Use when you need to unmark a Storm as a favorite." }, { "slug": "STORMBOARD_RE_OPEN_A_STORM", "name": "Reopen a Storm", "description": "Tool to reopen a closed Storm. Use when you need to reopen a previously closed Storm. Note: You must be a Storm administrator or the team owner to perform this action." }, { "slug": "STORMBOARD_UPDATE_A_LINE_CONNECTOR", "name": "Update a Line Connector", "description": "Tool to update a specific line connector between two ideas. Use when you need to modify the label or style properties of an existing connector." }, { "slug": "STORMBOARD_UPDATE_NOTIFICATIONS", "name": "Update Notifications", "description": "Tool to update user notification preferences. Use when you need to enable or disable email notifications for the authenticated user." }, { "slug": "STORMBOARD_UPDATE_SECTION_IN_STORM", "name": "Update Section in Storm", "description": "Tool to update a section's title, description, and/or character in a Storm. Use when you need to modify section properties. Note: You must be a Storm administrator to perform this action." }, { "slug": "STORMBOARD_UPDATE_STORM_LEGEND", "name": "Update Storm Legend", "description": "Tool to update the color labels of the legend for a storm. Use when you need to customize the legend labels for storm items. You must be the storm creator or a storm administrator to perform this action." }, { "slug": "STORMBOARD_UPDATE_YOUR_PROFILE", "name": "Update Your Profile", "description": "Tool to update your user profile information. Use when you need to modify the authenticated user's first name or last name." }, { "slug": "STORMBOARD_VERIFY_YOUR_ACCOUNT", "name": "Verify Your Account", "description": "Tool to verify a Stormboard account using a verification code. Use when you need to confirm account ownership or complete the account verification process." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "stormboard_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key can be found on the API tab of your Stormboard account at https://www.stormboard.com/users/account#api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "stormglass_io", "name": "Stormglass Io", "logo": "https://logos.composio.dev/api/stormglass_io", "description": "stormglass.io provides a global weather API offering high-resolution forecasts and historical data from trusted meteorological institutions.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STORMGLASS_IO_GET_ELEVATION_POINT", "name": "Get Elevation for Point", "description": "Tool to fetch elevation data for a single geographic point. Use when you need bathymetry or topography for a specific latitude/longitude." }, { "slug": "STORMGLASS_IO_GET_TIDE_EXTREMES_POINT", "name": "Get tide extremes for a point", "description": "Tool to retrieve high and low tide times with corresponding sea level heights for a coordinate. Returns tide extreme points (high/low) for the specified time interval." }, { "slug": "STORMGLASS_IO_GET_TIDE_STATIONS_AREA", "name": "Get Tide Stations in Area", "description": "Tool to list tide stations within a defined geographic bounding box. Use when you need stations in a specific region defined by coordinates." }, { "slug": "STORMGLASS_IO_GET_TIDE_STATIONS_LIST", "name": "List All Tide Stations", "description": "Tool to list all available tide stations. Use when you need a catalog of stations before querying tide data." }, { "slug": "STORMGLASS_IO_STORMGLASS_GET_SOLAR_POINT", "name": "Get solar data for a point", "description": "Tool to fetch solar irradiation and sun-position data for a specific coordinate. Use after confirming lat/lng, desired parameters, and optional ISO-formatted start/end." }, { "slug": "STORMGLASS_IO_STORMGLASS_GET_WEATHER_POINT", "name": "Get weather data for a point", "description": "Tool to fetch marine and land weather data for a specific coordinate. Use after confirming latitude, longitude, and desired parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "stormglass_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Storm Glass API Key", "type": "string", "description": "The API key provided by Storm Glass for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "storyblok", "name": "Storyblok", "logo": "https://logos.composio.dev/api/storyblok", "description": "Headless CMS with visual editor for content management and delivery across multiple platforms", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STORYBLOK_FETCH_CONTENT_TYPE_ITEMS_GRAPHQL", "name": "Fetch Content Type Items (GraphQL)", "description": "Fetch multiple stories/content items using Storyblok's GraphQL API with filtering and pagination. Use starts_with with language code prefix (e.g., 'es/*', 'hi/*') to retrieve translated content in specific languages." }, { "slug": "STORYBLOK_FETCH_GRAPHQL_CONTENT_ITEM", "name": "Fetch GraphQL Content Item", "description": "Tool to fetch a single story in a specific language using Storyblok GraphQL API with field-level translations. For each content type (e.g., Page), Storyblok generates a ContentTypeItem field (e.g., PageItem). Use when you need to retrieve a specific story by ID or slug with optional language translation." }, { "slug": "STORYBLOK_GET_APP", "name": "Get Extension/App", "description": "Tool to retrieve a Storyblok extension/app by ID using the Management API. Use when you need to fetch details about a specific extension or app installed in Storyblok." }, { "slug": "STORYBLOK_GET_DATASOURCE_ENTRIES", "name": "Get Datasource Entries", "description": "Tool to retrieve datasource entries from Storyblok via GraphQL API. Use when you need to fetch datasource data. Returns datasource entries with fields like id, name, value, and dimension_value." }, { "slug": "STORYBLOK_GET_GRAPHQL_RATE_LIMIT", "name": "Get GraphQL Rate Limit", "description": "Tool to retrieve rate limit information from Storyblok GraphQL API. Use when you need to check the maximum cost per request to calculate safe request rates (100 / maxCost = requests per second)." }, { "slug": "STORYBLOK_GET_PAGE_ITEM", "name": "Get Page Item", "description": "Tool to retrieve a single page item by ID or slug from Storyblok using GraphQL. Use when you need to fetch specific page content with custom field selection. Supports both draft and published versions." }, { "slug": "STORYBLOK_LIST_GRAPHQL_CONTENT_TYPE_ITEMS", "name": "List GraphQL Content Type Items", "description": "Tool to retrieve multiple content items with pagination, filtering, and relation resolution for any Storyblok content type via GraphQL. Content types are dynamically generated as [ContentType]Items (e.g., PageItems, BlogArticleItems). Use when you need to query structured content with flexible field selection and filtering." }, { "slug": "STORYBLOK_QUERY_PAGE_ITEMS", "name": "Query page items via GraphQL", "description": "Execute GraphQL queries to retrieve multiple page items from Storyblok with filtering options. Use when you need to fetch page content with filters like path prefix, publish date, or slug exclusions." }, { "slug": "STORYBLOK_RETRIEVE_LINKS_GRAPHQL", "name": "Retrieve Links via GraphQL", "description": "Tool to retrieve links for navigation using Storyblok's GraphQL API. Use when you need to fetch navigation links with their metadata (id, uuid, slug, name, published status)." }, { "slug": "STORYBLOK_RETRIEVE_TAGS", "name": "Retrieve Tags via GraphQL", "description": "Tool to retrieve tags from Storyblok via GraphQL API. Use when you need to fetch available tags for content organization and filtering." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "storyblok_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read_content,write_content" } ] }, "connected_account_initiation": { "required": [], "optional": [ { "name": "region", "displayName": "Region", "type": "string", "description": "Select your Storyblok region: eu for European spaces or us for American spaces.", "required": false, "default": "eu" } ] } } }, { "mode": "API_KEY", "name": "storyblok_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "API Token", "type": "string", "description": "Public token or Preview token from your Storyblok space dashboard. Public tokens provide read-only access to published content, while Preview tokens allow access to draft content.", "required": true, "default": null } ], "optional": [ { "name": "subdomain", "displayName": "Region", "type": "string", "description": "Select your Storyblok region. EU for European spaces (Space ID < 1,000,000), US for American spaces (Space ID >= 1,000,000), or other regions as configured.", "required": false, "default": "eu" } ] } } } ] }, { "slug": "strava", "name": "Strava", "logo": "https://logos.composio.dev/api/strava", "description": "Strava is a social fitness network and app designed for cyclists and runners.", "category": "fitness", "authSchemes": [ "OAUTH2" ], "composioManagedAuthSchemes": [ "OAUTH2" ], "toolCount": 36, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STRAVA_ADD_ACTIVITY_LAPS", "name": "Get Activity Laps", "description": "Retrieves lap data for a specific Strava activity by its identifier. Laps represent segments of an activity, typically auto-generated during activities like running or cycling based on distance intervals, manual lap button presses, or course segments. Use this action when you need detailed performance metrics for each lap within an activity, including timing, distance, speed, cadence, and elevation data." }, { "slug": "STRAVA_CREATE_AN_ACTIVITY", "name": "Create an Activity", "description": "Creates a manual activity for an athlete. Requires activity:write scope. This endpoint is for manually entered activities only. To upload activity files (FIT, TCX, GPX), use the Upload Activity endpoint instead. Required parameters: name, sport_type, start_date_local, elapsed_time. Optional parameters: type (deprecated), description, distance, trainer, commute." }, { "slug": "STRAVA_EXPLORE_SEGMENTS", "name": "Explore segments", "description": "Explore segments within a geographic bounding box. Returns the top 10 segments matching the specified geographic boundary and optional filters. Segments are sections of roads or trails where Strava athletes can compete for times. The response includes segment details like: - id: Unique segment identifier - name: Segment name - climb_category: Climbing difficulty (0=NC/flat to 5=HC/hardest) - avg_grade: Average gradient percentage - distance: Segment length in meters - elev_difference: Elevation gain in meters - start_latlng/end_latlng: Start and end coordinates - elevation_profile: URL to elevation profile image" }, { "slug": "STRAVA_EXPORT_ROUTE_GPX", "name": "Export Route as GPX", "description": "Exports a Strava route as a GPX (GPS Exchange Format) file. GPX files can be used to import routes into GPS devices, other fitness apps, or mapping software. Requires read_all scope for private routes." }, { "slug": "STRAVA_EXPORT_ROUTE_TCX", "name": "Export Route as TCX", "description": "Exports a Strava route as a TCX (Training Center XML) file. TCX format is widely supported by GPS devices, fitness watches, and training software like Garmin Connect and TrainingPeaks. The exported file contains the route's waypoints, distance, and elevation profile. Requires read_all scope for private routes." }, { "slug": "STRAVA_GET_ACTIVITY", "name": "Get Activity", "description": "Retrieves detailed information about a specific activity by its ID. Returns a DetailedActivity object containing comprehensive data including distance, time, elevation, speed, heart rate, power data (if available), segment efforts, laps, splits, and more. Permissions required: - activity:read scope for activities with visibility set to 'everyone' or 'followers_only' - activity:read_all scope for activities with visibility set to 'only_me' The activity must be owned by the authenticated athlete." }, { "slug": "STRAVA_GET_ACTIVITY_STREAMS", "name": "Get activity streams", "description": "Retrieves time-series stream data for a specific activity. Streams are the raw spatial and sensor data recorded during an activity, including GPS coordinates, speed, heart rate, power, etc. Each stream type returns an array of values that correspond to specific time points during the activity. All requested streams have the same number of data points, aligned by index. Common use cases: - GPS track visualization: request 'latlng', 'altitude', 'time' - Performance analysis: request 'heartrate', 'cadence', 'watts', 'time' - Pace/speed analysis: request 'velocity_smooth', 'distance', 'time' Requires activity:read scope. Requires activity:read_all scope for Only Me (private) activities." }, { "slug": "STRAVA_GET_ACTIVITY_ZONES", "name": "Get Activity Zones", "description": "Returns the heart rate and power zones of a given activity. This is a Summit/Premium feature that provides zone distribution data showing time spent in each training zone. The response includes an array of ActivityZone objects, typically containing: - Heart rate zones: Time distribution across heart rate training zones - Power zones: Time distribution across power training zones (for cycling with power meter) Requirements: - Strava Summit/Premium subscription for the athlete who owns the activity - activity:read scope for Everyone and Followers visibility activities - activity:read_all scope for Only Me (private) activities Common errors: - 404: Activity not found or not accessible - 403: Insufficient permissions to view activity - 402: Summit subscription required" }, { "slug": "STRAVA_GET_ATHLETE_STATS", "name": "Get athlete stats", "description": "Returns the activity stats of an athlete, including ride, run, and swim totals for recent (last 4 weeks), year-to-date, and all-time periods. Only includes data from activities set to 'Everyone' visibility. Use get_authenticated_athlete to obtain the required athlete ID." }, { "slug": "STRAVA_GET_ATHLETE_ZONES", "name": "Get athlete zones", "description": "Retrieves the authenticated athlete's heart rate and power training zones. Use this action when you need to access an athlete's configured training zones for heart rate and power, including zone thresholds and time spent in each zone. This is useful for analyzing training intensity distribution and planning workouts based on the athlete's current zone settings. Requires the 'profile:read_all' OAuth scope for access." }, { "slug": "STRAVA_GET_AUTHENTICATED_ATHLETE", "name": "Get authenticated athlete", "description": "Retrieves the profile of the currently authenticated Strava athlete. Returns athlete information including name, location, account status, profile photos, and social connections. The level of detail depends on the OAuth scope: - With 'profile:read_all' scope: Returns detailed representation (resource_state=3) including follower counts, measurement preferences, FTP, weight, and equipment. - Without 'profile:read_all' scope: Returns summary representation (resource_state=2) with basic profile information only. This is a read-only endpoint that requires no input parameters." }, { "slug": "STRAVA_GET_CLUB", "name": "Get Club", "description": "Retrieves detailed information about a specific Strava club by its ID. Returns comprehensive club details including name, description, location (city/state/country), member count, sport type, activity types, club type (casual, racing team, company, etc.), privacy settings, and the authenticated athlete's membership status. Use STRAVA_LIST_ATHLETE_CLUBS to get club IDs for clubs the authenticated athlete belongs to, or use a known club ID from a Strava club URL. Returns a 404 error if the club does not exist." }, { "slug": "STRAVA_GET_EQUIPMENT", "name": "Get equipment", "description": "Retrieves detailed information about a specific piece of gear/equipment. Returns comprehensive details about bikes or shoes including name, brand, model, total distance, and status (primary/retired). The requesting athlete must own the gear - you cannot view other athletes' equipment. Use Cases: - Get detailed specs and usage statistics for a specific bike or shoe - Check if gear is retired or still in active use - View total distance traveled with specific equipment - Retrieve brand and model information for gear inventory Prerequisites: - Gear ID can be obtained from: 1. Get Authenticated Athlete (bikes/shoes arrays in detailed response) 2. Get Activity (gear_id field shows equipment used for that activity) Note: Gear IDs use prefixes: 'b' for bikes (e.g., 'b12345678'), 'g' for shoes (e.g., 'g12345678')." }, { "slug": "STRAVA_GET_ROUTE", "name": "Get route", "description": "Retrieve detailed information about a specific Strava route. A route is a planned path that athletes can follow, created via the Strava Route Builder. This endpoint returns comprehensive route data including: - Basic info: name, description, activity type (Ride/Run), sub_type - Geographic data: distance (meters), elevation_gain (meters), start/end coordinates - Map data: polyline for rendering the route path, map_urls - Metadata: created_at, updated_at, estimated_moving_time, private status - Segments: list of segments included in the route - Waypoints: custom waypoints added to the route Note: Requires read_all scope to retrieve private routes." }, { "slug": "STRAVA_GET_ROUTE_STREAMS", "name": "Get route streams", "description": "Get detailed stream data for a route. Returns raw GPS coordinates, elevation, and distance data points along a route's path. This data can be used for mapping, elevation profiles, and route analysis. Available stream types for routes: - latlng: Latitude/longitude coordinate pairs for mapping the route - distance: Cumulative distance along the route in meters - altitude: Elevation values in meters for elevation profiles Note: Requires read_all scope for private routes. Use list_athlete_routes to find route IDs for the authenticated athlete." }, { "slug": "STRAVA_GET_SEGMENT", "name": "Get segment", "description": "Retrieve detailed information about a specific Strava segment. A segment is a portion of a road or trail where athletes can compete for times. This endpoint returns comprehensive segment data including: - Basic info: name, activity_type (Ride/Run), city, state, country - Geographic data: distance, average_grade, maximum_grade, elevation_high/low, start/end coordinates - Map data: polyline for rendering the segment path - Statistics: effort_count, athlete_count, star_count - Records: xoms (KOM/QOM times), local_legend info - Athlete-specific stats: personal records (requires read_all scope) Note: read_all scope is required to retrieve athlete-specific segment information or to access private segments." }, { "slug": "STRAVA_GET_SEGMENT_EFFORT", "name": "Get segment effort", "description": "Retrieves detailed information about a specific segment effort by its unique ID. A segment effort represents an athlete's attempt at a particular segment during an activity. This endpoint returns performance metrics including elapsed time, distance, speed, heart rate, power, and cadence data. The segment effort ID can be obtained from: - Activity details (when using include_all_efforts=True with get_activity) - The list_segment_efforts endpoint for a specific segment Note: Requires an active Strava subscription for the authenticated athlete." }, { "slug": "STRAVA_GET_SEGMENT_EFFORT_STREAMS", "name": "Get segment effort streams", "description": "Returns stream data for a segment effort completed by the authenticated athlete. Streams provide the raw time-series data associated with a segment effort, such as GPS coordinates, altitude, speed, heart rate, power, etc. All streams for a given segment effort have the same length, with values at each index corresponding to the same point in time. Requires read_all scope. The segment effort must be from an activity owned by the authenticated athlete. Use get_activity with include_all_efforts=true or list_segment_efforts to find segment effort IDs." }, { "slug": "STRAVA_GET_SEGMENT_STREAMS", "name": "Get segment streams", "description": "Get detailed stream data for a segment. Returns raw GPS, elevation, and distance data points along a segment's route. This data can be used for mapping, elevation profiles, and route analysis. Available stream types: - distance: Distance along the segment in meters - latlng: Latitude/longitude coordinate pairs for mapping - altitude: Elevation values in meters for elevation profiles Note: Only distance, altitude, and latlng stream types are available for segments. Other stream types (like heartrate, watts) are only available for activities. Requires read_all scope for private segments." }, { "slug": "STRAVA_GET_UPLOAD", "name": "Get Upload Status", "description": "Retrieves the status of an upload by its ID. Use this endpoint to poll the processing status of an uploaded activity file. Uploads are processed asynchronously, so you should poll this endpoint (recommended: no more than once per second) until the activity_id is populated or an error is returned. Requires activity:write scope." }, { "slug": "STRAVA_GET_ZONES", "name": "Get zones", "description": "Retrieves the authenticated athlete's heart rate and power zones. This endpoint returns the athlete's configured training zones for both heart rate and power, including zone thresholds and time spent in each zone. Note: Requires the 'profile:read_all' OAuth scope. If you receive a 401 Unauthorized error, ensure your connection has this scope." }, { "slug": "STRAVA_LIST_ACTIVITY_COMMENTS", "name": "List activity comments", "description": "Retrieves comments on a specific Strava activity, sorted oldest first. Returns comment details including the comment text, author information, and timestamps. Supports cursor-based pagination for activities with many comments. Requires OAuth scope: activity:read for Everyone/Followers activities, activity:read_all for Only Me (private) activities. Note: Returns an empty list if the activity has no comments or if you don't have permission to view the activity." }, { "slug": "STRAVA_LIST_ACTIVITY_KUDOERS", "name": "List activity kudoers", "description": "Returns the athletes who kudoed an activity identified by an identifier. Requires activity:read for Everyone and Followers activities. Requires activity:read_all for Only Me activities." }, { "slug": "STRAVA_LIST_ACTIVITY_LAPS", "name": "List activity laps", "description": "Retrieves lap data for a specific Strava activity. Laps represent segments of an activity, typically auto-generated during activities like running or cycling based on distance intervals, manual lap button presses, or course segments. Each lap contains detailed metrics including timing, distance, speed, cadence, and power data. Note: Pace zones in lap data are only populated for running activities and are based on the athlete's configured race times. Authorization: - Requires 'activity:read' scope for public (Everyone) and Followers-only activities. - Requires 'activity:read_all' scope for private (Only Me) activities." }, { "slug": "STRAVA_LIST_ATHLETE_ACTIVITIES", "name": "List athlete activities", "description": "Retrieves a paginated list of activities for the authenticated athlete. Returns activity summaries including name, type, distance, duration, elevation gain, speed, heart rate data, and timestamps. Use 'before' and 'after' parameters to filter activities by date range, and 'page'/'per_page' for pagination. Requires OAuth scope: activity:read for public/followers activities, activity:read_all for private activities. Note: Returns an empty list if no activities match the criteria." }, { "slug": "STRAVA_LIST_ATHLETE_CLUBS", "name": "List athlete clubs", "description": "Retrieves a paginated list of Strava clubs the authenticated athlete is a member of. Returns club details including id, name, location, member count, sport type, and profile images. Use the club id from the response to fetch detailed club information with other club endpoints. Note: Returns an empty list if the athlete is not a member of any clubs." }, { "slug": "STRAVA_LIST_ATHLETE_ROUTES", "name": "List athlete routes", "description": "Lists routes created by a specific athlete. Returns an array of Route summaries including id, name, distance, elevation gain, and type. Private routes are filtered out unless the token has read_all scope. Only the authenticated athlete's routes can be accessed; attempting to list another athlete's routes returns 403 Forbidden." }, { "slug": "STRAVA_LIST_CLUB_ACTIVITIES", "name": "List club activities", "description": "Retrieve recent activities from members of a specific club. IMPORTANT: The authenticated athlete must be a member of the requested club to access this endpoint. Use 'List Athlete Clubs' first to get club IDs the athlete belongs to. Pagination is supported (max 200 activities total). Enhanced Privacy Mode is respected for all activities. Note: Club activities have limited data for privacy - they do not include activity IDs, dates, or full athlete names." }, { "slug": "STRAVA_LIST_CLUB_ADMINISTRATORS", "name": "List club administrators", "description": "Returns a list of the administrators of a given Strava club. The response includes each administrator's first name, last name (possibly abbreviated), and resource state. For public clubs, this endpoint is accessible without membership. For private clubs, the authenticated user may need to be a member to view administrators. Returns an empty list if the club has no visible administrators or access is restricted." }, { "slug": "STRAVA_LIST_CLUB_MEMBERS", "name": "List club members", "description": "Returns a list of the athletes who are members of a given club. The authenticated athlete must belong to the requested club to access this endpoint. Results are paginated and can be controlled using page and per_page parameters. Note: Due to privacy settings, some member information may be limited." }, { "slug": "STRAVA_LIST_SEGMENT_EFFORTS", "name": "List segment efforts", "description": "List the authenticated athlete's efforts on a given segment. Returns all segment efforts for the authenticated athlete on the specified segment, optionally filtered by date range. Segment efforts represent each time an athlete has ridden/run a particular segment. The response includes details like: - id: Unique effort identifier - elapsed_time: Time to complete the segment in seconds - moving_time: Moving time on the segment in seconds - start_date: When the effort started - distance: Distance covered in meters - average_watts: Average power output (if power data available) - average_heartrate: Average heart rate (if HR data available) - pr_rank: Personal record ranking (1=PR, 2=2nd best, 3=3rd best, null otherwise) - kom_rank: King/Queen of Mountain ranking position (if in top 10) Note: This endpoint only returns efforts for segments the authenticated athlete has actually completed. If the athlete hasn't ridden/run a segment, an empty list will be returned." }, { "slug": "STRAVA_LIST_STARRED_SEGMENTS", "name": "List starred segments", "description": "Returns a list of the authenticated athlete's starred segments with summary details including segment name, distance, elevation, grade, and location. Private segments are filtered out unless requested by a token with read_all scope. Use pagination parameters (page, per_page) to navigate through large result sets." }, { "slug": "STRAVA_STAR_SEGMENT", "name": "Star segment", "description": "Stars/Unstars the given segment for the authenticated athlete. Requires profile:write scope." }, { "slug": "STRAVA_UPDATE_ATHLETE", "name": "Update Athlete", "description": "Update the currently authenticated athlete's profile. Currently only supports updating the athlete's weight. Requires profile:write scope." }, { "slug": "STRAVA_UPLOAD_ACTIVITY", "name": "Upload Activity", "description": "Uploads a new activity file (FIT, TCX, or GPX) to create an activity on Strava. The upload is processed asynchronously. This endpoint returns an upload ID immediately, which can be used with the Get Upload endpoint to check processing status and retrieve the created activity ID once processing completes. Typical processing time is under 2 seconds. Files must be 25MB or smaller and contain actual workout data with timestamps for each trackpoint. Requires the activity:write OAuth scope." }, { "slug": "STRAVA_VALIDATE_CREDENTIAL", "name": "Validate credential", "description": "Validates Strava API credentials by fetching the authenticated athlete's profile. Returns basic athlete information to confirm the access token is valid and active. Use this action when you need to verify that Strava API credentials are properly configured and have not been revoked or expired. This is a read-only operation that requires no input parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "strava_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read,activity:read,profile:read_all" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "streamtime", "name": "Streamtime", "logo": "https://logos.composio.dev/api/streamtime", "description": "Streamtime is project management software for creative businesses including design studios, agencies, and architects. It offers job tracking, time tracking, scheduling, quoting, invoicing, and team collaboration tools.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STREAMTIME_LIST_ROLES", "name": "List Roles", "description": "Retrieves all roles in the Streamtime organization. No parameters required. Returns role ID, name, and active status. Use this to discover available roles before assigning them to users or when you need to reference role IDs." }, { "slug": "STREAMTIME_ORGANISATION_GET_ORGANISATION", "name": "Get Organisation Details", "description": "Tool to retrieve your organisation’s details. Use after confirming your authentication to ensure you are operating within the correct organisation context." }, { "slug": "STREAMTIME_ROLES_GET_ROLE", "name": "Get Role", "description": "Tool to retrieve a role by ID. Use when you need to fetch details of a specific role after confirming its ID." }, { "slug": "STREAMTIME_USERS_LIST_SAVED_SEGMENTS", "name": "List Saved Segments for User", "description": "Retrieves all saved segments for a specific user. Saved segments are custom filters or views that a user has created and saved in Streamtime. Use this when you need to see what segment filters a user has saved. Requires the user's numeric ID (e.g., from GET /users endpoint)." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "streamtime_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Streamtime API Key", "type": "string", "description": "Your unique Streamtime API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "studio_by_ai21_labs", "name": "Studio By Ai21 Labs", "logo": "https://logos.composio.dev/api/studio_by_ai21_labs", "description": "AI21 Studio provides API access to Jurassic-1 large-language-models. Our models power text generation and comprehension features in thousands of live applications.", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 57, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "STUDIO_BY_AI21_LABS_CHECK_CAN_IFRAME", "name": "Check Can Iframe", "description": "Tool to check if a URL can be embedded in an iframe. Use when you need to verify iframe compatibility before embedding external content." }, { "slug": "STUDIO_BY_AI21_LABS_COMPARE_TEXT", "name": "Compare Text", "description": "Tool to compare two text strings and identify differences. Use when you need to analyze changes between an original text and its modified version." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_AFTERSALES_PARTS_BATCH", "name": "Create Aftersales Parts Classification Batch", "description": "Tool to create a batch job for Fnac Aftersales parts classification. Use when you need to classify multiple aftersales cases to determine which parts are needed for repairs." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_ASSISTANT_ROUTE", "name": "Create Assistant Route", "description": "Tool to create a new route for an AI21 Studio assistant. Use when you need to define a new conversational path or query pattern for an assistant." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_ASSISTANTS", "name": "Create Assistant", "description": "Tool to create a new AI assistant in AI21 Studio. Use when you need to set up a new assistant with custom configuration, tools, and behavior." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_ASSISTANTS_ASSISTANT_ID_PLANS", "name": "Create Assistant Plan", "description": "Tool to create a new plan for an AI21 Studio assistant. Use when you need to add a new plan with Python code to an assistant." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_DEMO", "name": "Create Demo", "description": "Tool to create a new demo in AI21 Studio. Use when you need to set up a new demo with specified visibility and status." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_GENERATION_REQUIREMENTS", "name": "Generate Requirements", "description": "Tool to generate requirements from a query or task description. Use when you need to break down a high-level task into specific requirements." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_GENERATION_THREAD_NAME", "name": "Generate Thread Name", "description": "Tool to generate a thread name from a query or conversation context. Use when you need to create a descriptive title for a conversation thread." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_KIRSH_GRANT_COMPLIANCE_PREVIEW", "name": "Create Kirsh Grant Compliance Preview", "description": "Tool to preview grant compliance for Kirsh grants. Use when you need to check compliance status for specific grant IDs." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_KIRSH_GRANT_PREVIEW", "name": "Kirsh Grant Metadata Preview", "description": "Tool to retrieve grant metadata from the Kirsh preview endpoint. Use when you need to fetch grant information including grant name and associated organization details." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_MCP_STORAGE", "name": "Create MCP Storage", "description": "Tool to create MCP (Model Context Protocol) storage in AI21 Studio. Use when you need to register and configure an MCP server connection for your workspace." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_SECRET", "name": "Create Secret", "description": "Tool to save a secret in AI21 Studio. Use when you need to securely store sensitive information like API keys or passwords." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_SOLUTIONS_KIRSH_GRANT_COMPLIANCE", "name": "Check Kirsh Grant Compliance", "description": "Tool to check compliance for Kirsh grant IDs. Use when you need to verify compliance status for one or more grants." }, { "slug": "STUDIO_BY_AI21_LABS_CREATE_WEBSITE_CONNECTOR", "name": "Create Website Connector", "description": "Tool to create a website connector in AI21 Studio. Use when you need to index website content via sitemap or specific URLs for RAG or grounding purposes." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_ASSISTANT", "name": "Delete Assistant", "description": "Tool to delete an assistant by its unique ID. Use when you need to permanently remove an assistant from the system." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_ASSISTANT_ROUTE", "name": "Delete Assistant Route", "description": "Tool to delete a route from an AI21 Studio assistant. Use when you need to remove a routing configuration from an assistant." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_DEMO", "name": "Delete Demo", "description": "Tool to delete a demo by its unique ID. Use when removing a specific demo from AI21 Studio." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_MCP_STORAGE", "name": "Delete MCP Storage", "description": "Tool to delete an MCP (Model Context Protocol) storage configuration by its unique ID. Use when you need to permanently remove an MCP server configuration from AI21 Studio." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_SECRET", "name": "Delete Secret", "description": "Tool to delete a secret by its unique ID. Use when you need to permanently remove a secret from AI21 Studio." }, { "slug": "STUDIO_BY_AI21_LABS_DELETE_WEBSITE_CONNECTOR", "name": "Delete Website Connector", "description": "Permanently delete a website connector by its unique identifier. Use when you need to remove a website connector that is no longer needed." }, { "slug": "STUDIO_BY_AI21_LABS_DOWNLOAD_MODIFIED_DOCUMENT", "name": "Download Modified Document", "description": "Tool to download a modified document from AI21 Labs Studio. Use when you need to generate and download a document with specific content and filename." }, { "slug": "STUDIO_BY_AI21_LABS_GET_ASSISTANT", "name": "Get Assistant", "description": "Tool to retrieve an assistant by its unique identifier. Use when you need to get details about a specific assistant including its configuration, tools, and settings." }, { "slug": "STUDIO_BY_AI21_LABS_GET_ASSISTANT_ROUTE", "name": "Get Assistant Route", "description": "Tool to retrieve details of a specific route for an AI21 Studio assistant. Use when you need to get information about a particular route configuration." }, { "slug": "STUDIO_BY_AI21_LABS_GET_ASSISTANTS_BY_MCP", "name": "Get Assistants By MCP", "description": "Tool to retrieve all assistants associated with a specific MCP (Model Context Protocol) storage configuration. Use when you need to list assistants that are connected to a particular MCP server." }, { "slug": "STUDIO_BY_AI21_LABS_GET_BATCH_STATUS", "name": "Get Batch Prediction Status", "description": "Tool to check the status of a Fnac Aftersales parts classification batch prediction job. Use when you need to monitor the progress or retrieve results of a previously submitted batch." }, { "slug": "STUDIO_BY_AI21_LABS_GET_DEMO", "name": "Get Demo", "description": "Tool to retrieve a demo by its unique ID. Use when you need to fetch details about a specific demo including its name, status, visibility, and configuration." }, { "slug": "STUDIO_BY_AI21_LABS_GET_KIRSH_GRANT_METADATA", "name": "Grant Kirsh Metadata", "description": "Tool to retrieve Kirsh grant metadata by grant ID. Use when you need to fetch grant information including grant name and organization details." }, { "slug": "STUDIO_BY_AI21_LABS_GET_LIBRARY_BATCH_STATUS", "name": "Get Library Batch Status", "description": "Tool to get the ingestion status of a library batch. Use when you need to check the processing status of documents in a batch upload." }, { "slug": "STUDIO_BY_AI21_LABS_GET_MCP_STORAGE", "name": "Get MCP Storage", "description": "Tool to retrieve a specific MCP (Model Context Protocol) storage configuration by its unique ID. Use when you need to get details about a particular MCP server including its URL, label, authentication settings, and allowed tools." }, { "slug": "STUDIO_BY_AI21_LABS_GET_OUTPUT_EXPLANATION", "name": "Get Output Explanation", "description": "Tool to get output explanation for an execution (cached or generated). Use when you need to retrieve or regenerate the explanation for a specific execution. Set force_regenerate to true to bypass cache." }, { "slug": "STUDIO_BY_AI21_LABS_GET_PLAN", "name": "Get Plan", "description": "Tool to retrieve a specific plan from an AI21 Studio assistant. Use when you need to fetch details of a plan by its ID." }, { "slug": "STUDIO_BY_AI21_LABS_GET_WEBSITE_CONNECTOR_BY_ID", "name": "Get Website Connector By ID", "description": "Tool to retrieve details of a specific website connector by its ID. Use when you need to fetch information about a website connector in AI21 Studio." }, { "slug": "STUDIO_BY_AI21_LABS_GET_WEBSITE_CONNECTOR_STATUS", "name": "Get Website Connector Status", "description": "Tool to retrieve the status of a website connector ingestion. Use when you need to check the processing status of a website that was added to AI21 Studio." }, { "slug": "STUDIO_BY_AI21_LABS_GET_WEBSITE_CONNECTOR_URL_STATUS", "name": "Get Website Connector URL Status", "description": "Tool to retrieve the status of a specific URL in the website connector. Use when you need to check the processing status of a URL that was previously ingested." }, { "slug": "STUDIO_BY_AI21_LABS_INGEST_WEBSITE_CONNECTOR", "name": "Ingest Website Connector", "description": "Tool to ingest website content via sitemap URL in AI21 Studio. Use when you need to process and index website pages from a sitemap for RAG, grounding, or document analysis purposes." }, { "slug": "STUDIO_BY_AI21_LABS_INGEST_WEBSITE_CONNECTOR_URL", "name": "Ingest Website Connector URL", "description": "Tool to ingest a website URL into AI21 Studio's website connector. Use when you need to add a specific URL to be processed and indexed by the website connector for RAG or grounding." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to retrieve all assistants from AI21 Studio. Use when you need to list available assistants, optionally filtered by workspace IDs." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_CONNECTORS_WEBSITE", "name": "List Website Connectors", "description": "Tool to retrieve website connector information from AI21 Studio. Use when you need to get details about configured website connectors." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_DEMOS", "name": "List Demos", "description": "Tool to retrieve all demos from AI21 Studio. Use when you need to list all available demos including their names, statuses, visibility settings, and configurations." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_LIBRARY_FILES", "name": "List Library Files", "description": "Tool to list files in the workspace library with optional filtering. Use to retrieve file metadata, search by name/path/status/labels, or paginate through library contents." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_MCP_STORAGE", "name": "List MCP Storage", "description": "Tool to retrieve all MCP (Model Context Protocol) storage configurations from AI21 Studio. Use when you need to list available MCP servers and their configurations, optionally filtered by workspace ID." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_MODELS", "name": "List Models", "description": "Tool to retrieve information about all available AI21 models. Use when you need to list models with their specifications, pricing, and capabilities." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_PLANS", "name": "List Plans", "description": "Tool to list all plans for a specific assistant. Use when you need to retrieve the plans associated with an assistant ID." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_SECRETS", "name": "List Secrets", "description": "Tool to retrieve all secrets from AI21 Studio secret storage. Use when you need to list stored secrets and their metadata." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_SETTINGS_MODELS", "name": "List Workspace Models", "description": "Tool to retrieve all workspace models by organization from AI21 Studio. Use when you need to list available models for the workspace." }, { "slug": "STUDIO_BY_AI21_LABS_LIST_SETTINGS_MODELS_AVAILABLE", "name": "List Available Models", "description": "Tool to retrieve all available models from AI21 Studio settings. Use when you need to list models that are available for use in the workspace." }, { "slug": "STUDIO_BY_AI21_LABS_MODIFY_ASSISTANT", "name": "Modify Assistant", "description": "Tool to modify an existing AI21 Studio assistant. Use when you need to update assistant properties like name, description, models, system prompt, or configuration. At least one field must be provided to update. All fields except assistant_id are optional." }, { "slug": "STUDIO_BY_AI21_LABS_MODIFY_ASSISTANT_ROUTE", "name": "Modify Assistant Route", "description": "Tool to modify an existing route within an assistant. Use when you need to update the description or examples of a specific route in an AI21 Studio assistant." }, { "slug": "STUDIO_BY_AI21_LABS_MODIFY_PLAN", "name": "Modify Assistant Plan", "description": "Tool to modify an existing assistant plan in AI21 Studio. Use when you need to update the code or schemas of a plan." }, { "slug": "STUDIO_BY_AI21_LABS_RETRY_INGEST_WEBSITE", "name": "Retry Ingest Website", "description": "Tool to retry ingestion of a website in AI21 Studio. Use when a website ingestion has failed and you need to trigger another attempt to ingest the content." }, { "slug": "STUDIO_BY_AI21_LABS_RUN_ASSISTANT", "name": "Run Assistant", "description": "Tool to run an AI21 Studio assistant with conversational input. Use when you need to interact with a configured AI21 assistant by providing messages and receiving responses. The assistant processes the input messages and returns a result based on its configuration. Supports multiple languages and optional features like dynamic planning and structured RAG." }, { "slug": "STUDIO_BY_AI21_LABS_SYNC_WEBSITE_CONNECTOR", "name": "Sync Website Connector", "description": "Tool to sync a website connector in AI21 Studio. Use when you need to trigger a synchronization of website content for a specific connector." }, { "slug": "STUDIO_BY_AI21_LABS_UPDATE_DEMO", "name": "Update Demo", "description": "Tool to update an existing demo in Studio by AI21 Labs. Use when you need to modify demo properties such as name, status, visibility, or configuration." }, { "slug": "STUDIO_BY_AI21_LABS_UPDATE_MCP_STORAGE", "name": "Update MCP Storage", "description": "Tool to update an existing MCP (Model Context Protocol) storage configuration in AI21 Studio. Use when you need to modify the server label of an MCP storage configuration." }, { "slug": "STUDIO_BY_AI21_LABS_UPDATE_SECRET", "name": "Update Secret", "description": "Tool to update an existing secret in AI21 Studio. Use when you need to modify secret properties such as name or value." }, { "slug": "STUDIO_BY_AI21_LABS_VALIDATE_PLAN", "name": "Validate Plan", "description": "Tool to validate Python code for an AI21 Studio assistant plan. Use when you need to verify that code is syntactically correct and executable before using it in an assistant." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "studio_by_ai21_labs_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To retrieve your API key, navigate to your AI21 Studio account and sign in. Click the dropdown on the top right and go to \"Account\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "suitedash", "name": "Suitedash", "logo": "https://logos.composio.dev/api/suitedash", "description": "All-in-one business software for client management, CRM, project management, and invoicing", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUITEDASH_CREATE_COMPANY", "name": "Create Company", "description": "Tool to create a new company in SuiteDash CRM. Use when you need to add a new Lead, Client, or Prospect company to the system. You can optionally specify primary contact information when creating the company." }, { "slug": "SUITEDASH_CREATE_CONTACT", "name": "Create Contact", "description": "Tool to create a new contact in SuiteDash CRM. Use when you need to add a new Lead, Client, or Prospect contact to the system. Requires first name, last name, role, and email address for all contact types." }, { "slug": "SUITEDASH_GET_COMPANY", "name": "Get Company", "description": "Tool to retrieve a single company by UID or Name from SuiteDash. Use when you need to fetch detailed information about a specific company including contact details, address, tags, and custom fields." }, { "slug": "SUITEDASH_GET_COMPANY_META", "name": "Get Company Meta Attributes", "description": "Tool to retrieve CRM company meta attributes information. Returns a complete schema of all the CRM Company Custom Fields that exist in the account along with all the Meta Attributes including field types, formats, validation rules, and allowed operations." }, { "slug": "SUITEDASH_GET_CONTACT", "name": "Get Contact by UID or Email", "description": "Tool to retrieve a single contact from SuiteDash by their UID or email address. Use when you need to fetch detailed information about a specific contact including their personal details, contact information, address, and custom fields." }, { "slug": "SUITEDASH_GET_CONTACT_META", "name": "Get Contact Meta Attributes", "description": "Tool to retrieve CRM contact meta attributes information. Returns a complete schema of all the CRM Contact Custom Fields that exist in the account along with all the Meta Attributes including field types, formats, validation rules, and allowed operations." }, { "slug": "SUITEDASH_LIST_COMPANIES", "name": "List Companies", "description": "Tool to retrieve all existing companies from SuiteDash. Returns a paginated list with optional filtering by creation date and ordering options. Use this when you need to list, search, or export companies. Note that idle companies are not included in the results." }, { "slug": "SUITEDASH_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to get all existing contacts from SuiteDash. Returns a paginated list of contacts with optional filtering by creation date and custom ordering. Use when you need to retrieve, browse, or export contact lists." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "suitedash_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "One of your Secret Keys created in Integrations > Secure API", "required": true, "default": null }, { "name": "generic_id", "displayName": "Public ID", "type": "string", "description": "Your account's Public ID from Integrations > Secure API", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sumo_logic", "name": "Sumo Logic", "logo": "https://logos.composio.dev/api/sumo_logic", "description": "Cloud-native machine data analytics platform for log management, monitoring, and SIEM", "category": "server monitoring", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "sumo_logic_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "region", "displayName": "Deployment", "type": "string", "description": "Your Sumo Logic deployment region (e.g., us1, us2, eu, au, ca, de, jp, kr, in, fed). Check your Sumo Logic service URL to determine your deployment.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Access ID", "type": "string", "description": "Your Sumo Logic Access ID. See Access Keys in Sumo Logic to generate an access key.", "required": true, "default": null }, { "name": "password", "displayName": "Access Key", "type": "string", "description": "Your Sumo Logic Access Key (secret). Access keys are displayed only once when created.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "supadata", "name": "Supadata", "logo": "https://logos.composio.dev/api/supadata", "description": "Supadata is a web and video-to-text API that extracts transcripts from YouTube, TikTok, Instagram, Facebook, X (Twitter) and video files, retrieves social media metadata, and converts web content to markdown for AI training and content analysis.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUPADATA_GET_ME", "name": "Get Account Information", "description": "Retrieve organization details, plan information, and credit usage for the authenticated account. Use this to check account status, credit balance, and subscription plan." }, { "slug": "SUPADATA_GET_TRANSCRIPT", "name": "Get Video Transcript", "description": "Get transcript from a video on supported platforms or from a file URL. Use this tool when you need to: - Retrieve transcripts from YouTube, TikTok, Twitter, Instagram, or Facebook videos - Extract transcript from video file URLs - Get transcripts in specific languages - Choose between native captions or AI-generated transcripts For large videos, the API returns a job ID. You'll need to poll the /transcript/{jobId} endpoint to get the final result. For smaller videos, the transcript is returned immediately. The response varies based on the 'text' parameter: - text=true: Returns plain text transcript as a string - text=false: Returns structured list of chunks with timestamps and text" }, { "slug": "SUPADATA_GET_TRANSCRIPT_BY_JOB_ID", "name": "Get Transcript by Job ID", "description": "Get results for a transcript job by job ID. Use this to retrieve results of asynchronous transcript processing. Check the status field to determine if the job is complete." }, { "slug": "SUPADATA_GET_WEB_MAP", "name": "Website URL Map", "description": "Crawl a website and extract all URLs/links found on it. Use this to create a sitemap, discover all pages of a website, or prepare for content scraping across multiple pages. Returns a list of all URLs discovered during the crawl." }, { "slug": "SUPADATA_GET_WEB_SCRAPE", "name": "Scrape Web Page", "description": "Extract content from any webpage and convert it to Markdown format. Use this tool when you need to: - Read and extract text content from a web page - Get metadata (title, description) from a webpage - Discover links on a webpage - Get character counts of page content The tool returns the page content in Markdown format, making it easy to process and understand. One API credit is consumed per scrape request." }, { "slug": "SUPADATA_GET_YOUTUBE_CHANNEL", "name": "Get YouTube Channel Metadata", "description": "Fetches metadata for a YouTube channel including name, description, subscriber count, video count, view count, and channel images. Accepts channel IDs, handles, or full YouTube URLs." }, { "slug": "SUPADATA_GET_YOUTUBE_CHANNEL_VIDEOS", "name": "Get YouTube Channel Videos", "description": "Tool to retrieve video IDs from a YouTube channel. Returns lists of regular video IDs, YouTube Shorts IDs, and live stream IDs. Videos are ordered latest first. Use this to get video IDs that can be passed to the Get YouTube Video endpoint for full metadata." }, { "slug": "SUPADATA_GET_YOUTUBE_PLAYLIST", "name": "Get YouTube Playlist Metadata", "description": "Retrieve metadata for a YouTube playlist including title, description, video count, view count, last updated timestamp, and channel information. Use this when you need playlist-level information. For the list of videos in a playlist, use the Get YouTube Playlist Videos action instead." }, { "slug": "SUPADATA_GET_YOUTUBE_PLAYLIST_VIDEOS", "name": "Get YouTube Playlist Videos", "description": "Tool to retrieve video IDs from a YouTube playlist. Returns lists of standard video IDs, YouTube Shorts IDs, and live stream IDs contained in the playlist." }, { "slug": "SUPADATA_GET_YOUTUBE_VIDEO", "name": "Get YouTube Video Metadata", "description": "Retrieve comprehensive metadata for a YouTube video by its ID. Use this tool when you need to get details about a specific YouTube video including: - Title, description, and tags - Channel information - View and like counts - Upload date and duration - Live stream status - Available transcript languages The video_id is the 11-character identifier found in YouTube URLs (e.g., 'dQw4w9WgXcQ' from 'https://youtube.com/watch?v=dQw4w9WgXcQ')." }, { "slug": "SUPADATA_SEARCH_YOUTUBE", "name": "Search YouTube", "description": "Search YouTube for videos, channels, or playlists by keyword. Returns matching content with metadata like titles, thumbnails, view counts, and channel information." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "supadata_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Supadata API Key", "type": "string", "description": "Your Supadata API key for authenticating requests. You can obtain this from your Supadata dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "superchat", "name": "Superchat", "logo": "https://logos.composio.dev/api/superchat", "description": "Superchat is a unified messaging platform that enables businesses to communicate with customers across multiple channels, including WhatsApp, Instagram Direct, Facebook Messenger, Email, and more.", "category": "team chat", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUPERCHAT_CREATE_CONTACT", "name": "Create Contact", "description": "Create a new contact in Superchat with phone or email handles. Use this tool to register contact details before sending messages. You must provide at least one handle (phone or email). Optional fields include first name, last name, gender, and custom attributes (if predefined in your account settings)." }, { "slug": "SUPERCHAT_CREATE_TEMPLATE_FOLDER", "name": "Create Template Folder", "description": "Create a new template folder in SuperChat for organizing message templates. Template folders help organize WhatsApp and other messaging templates into logical groups (e.g., Marketing, Sales, Customer Support). Use this action before creating templates when you want to keep them organized." }, { "slug": "SUPERCHAT_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook by its ID. Use when you need to remove an obsolete or unwanted webhook subscription. First use SUPERCHAT_LIST_WEBHOOKS to retrieve the webhook ID, then use this action to delete it. Example: Delete webhook wh_UPYSN0Etofjl7lhhQ9yhL." }, { "slug": "SUPERCHAT_GET_CONTACT", "name": "Get Contact", "description": "Retrieve a specific contact's details by ID. Returns the contact's name, handles (phone, email, social), custom attributes, and timestamps. Use this to look up contact information before sending messages or updating contact details. Example: \"Get contact details for co_abc123\" or \"Fetch info for contact co_xyz789\"." }, { "slug": "SUPERCHAT_GET_FILE", "name": "Get File", "description": "Retrieve metadata for a specific file by its ID. Returns file details including the file name, MIME type, API resource URL, and a temporary download link with expiration. Use this to get information about uploaded files before downloading or processing them." }, { "slug": "SUPERCHAT_GET_USER", "name": "Get User", "description": "Retrieve details of a specific user in the Superchat workspace by their user ID. Use this tool when you need to fetch profile information for a known user. Note: You can obtain user IDs by first calling the List Users action. Example user_id format: 'us_abc123xyz'" }, { "slug": "SUPERCHAT_LIST_CHANNELS", "name": "List Channels", "description": "Lists all communication channels in your Superchat workspace. Channels represent different messaging mediums (WhatsApp, email, SMS, Telegram, Instagram, Facebook) through which conversations occur. Results are sorted by creation date (newest first) and can be paginated using 'limit', 'after', or 'before' parameters." }, { "slug": "SUPERCHAT_LIST_CONTACTS", "name": "List Contacts", "description": "List all contacts in the Superchat workspace with cursor-based pagination. Use this tool to browse contacts, find contact IDs, or export contact data. Results are sorted by creation date (newest first)." }, { "slug": "SUPERCHAT_LIST_CONVERSATIONS", "name": "List Conversations", "description": "Retrieves a paginated list of all conversations in your Superchat account. Each conversation includes channel info, status (open/snoozed/done), assigned users, contacts, labels, and inbox details. Use this to browse conversations, find specific ones by status or channel, or get conversation IDs for further operations. Supports cursor-based pagination to handle large result sets." }, { "slug": "SUPERCHAT_LIST_CUSTOM_ATTRIBUTES", "name": "List Custom Attributes", "description": "List all custom attributes defined for contacts in your Superchat account. Custom attributes are user-defined fields that extend contact data beyond standard fields like name and email. Use this action to discover available custom attributes before reading or updating contact information. Supports cursor-based pagination for accounts with many custom attributes. Common use cases: - Discover available custom fields before updating contacts - Retrieve custom attribute types (string, number, date, select, etc.) - Get custom attribute IDs for use in other API calls" }, { "slug": "SUPERCHAT_LIST_INBOXES", "name": "List Inboxes", "description": "Tool to list all inboxes. Use when you need to retrieve inbox IDs and metadata before sending or organizing messages." }, { "slug": "SUPERCHAT_LIST_LABELS", "name": "List Labels", "description": "List all labels in the Superchat workspace. Labels are used to categorize and organize conversations. Use this tool to retrieve available labels and their IDs, which can then be used to assign labels to conversations via the update conversation endpoint. Supports cursor-based pagination for workspaces with many labels." }, { "slug": "SUPERCHAT_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list all message templates. Use when you need to fetch available message templates." }, { "slug": "SUPERCHAT_LIST_USERS", "name": "List Users", "description": "Retrieve all users in the workspace. Returns user profiles including names, emails, roles, and contact info. Supports pagination for large workspaces. Use cases: - Get a directory of all workspace members - Find user IDs for other API operations - Audit user roles and permissions" }, { "slug": "SUPERCHAT_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to list all webhooks configured in the workspace. Use this tool to: - Retrieve all active and paused webhooks - Get webhook IDs for use with update or delete operations - Check webhook status and event subscriptions Supports pagination via 'limit', 'after', and 'before' parameters." }, { "slug": "SUPERCHAT_UPDATE_CONTACT", "name": "Update Contact", "description": "Update information for a specific contact in Superchat. Use this tool to modify a contact's name, gender, handles (phone/email), or custom attributes. Requires the contact_id (prefixed with 'ct_') which can be obtained from List Contacts or Create Contact. Examples: - Update first name: {\"contact_id\": \"ct_abc123\", \"first_name\": \"Jane\"} - Update gender: {\"contact_id\": \"ct_abc123\", \"gender\": \"female\"} - Update phone handle: {\"contact_id\": \"ct_abc123\", \"handles\": [{\"type\": \"phone\", \"value\": \"+1234567890\"}]}" }, { "slug": "SUPERCHAT_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Update an existing webhook's target URL and/or event subscriptions. Use this tool to: - Change the webhook delivery URL - Add or remove event subscriptions - Update event types the webhook listens to Note: Webhook status (ACTIVE/PAUSED) is automatically managed by the API and cannot be manually changed. Webhooks become PAUSED after 7 days of consistent delivery failures." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "superchat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Superchat API Key", "type": "string", "description": "The API key used for authenticating requests to the Superchat API. You can find it in Superchat web application under 'Settings > API'.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "supersaas", "name": "Supersaas", "logo": "https://logos.composio.dev/api/supersaas", "description": "Appointment Scheduling for Every Situation", "category": "scheduling & booking", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUPERSAAS_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in SuperSaaS. Use when you need to add a user to the account. The username is required; all other fields are optional. If a foreign_key is provided, SuperSaaS will use it instead of generating its own ID. Set duplicate='raise' to prevent creating duplicate users with the same foreign key." }, { "slug": "SUPERSAAS_DELETE_USER", "name": "Delete User", "description": "Tool to delete a SuperSaaS user by their ID. Use when you need to permanently remove a user from the system." }, { "slug": "SUPERSAAS_GET_USER", "name": "Get User", "description": "Tool to read a single user by ID from SuperSaaS. Use when you need to retrieve detailed information about a specific user." }, { "slug": "SUPERSAAS_LIST_FIELD_LIST", "name": "List Field List", "description": "Tool to retrieve available fields on Schedule or User objects. Use when you need to discover what custom fields are configured for a schedule or user profile." }, { "slug": "SUPERSAAS_LIST_GROUPS", "name": "List User Groups", "description": "Tool to retrieve all user groups defined in a SuperSaaS account. Use when you need to list groups for managing user access or organizing users." }, { "slug": "SUPERSAAS_LIST_PROMOTIONS", "name": "List Promotions", "description": "Tool to list all promotional coupon codes in the account or retrieve a single promotion by code. Use when you need to view available promotions or check details of a specific promotion code." }, { "slug": "SUPERSAAS_LIST_SCHEDULES", "name": "List Schedules", "description": "Tool to retrieve all schedules in a SuperSaaS account with their IDs and names. Use when you need to list available schedules or get schedule IDs for other operations." }, { "slug": "SUPERSAAS_LIST_SUPER_FORMS", "name": "List Form Definitions", "description": "Tool to retrieve all form definitions in a SuperSaaS account with their IDs and names. Use when you need to list available forms or get form IDs for other operations." }, { "slug": "SUPERSAAS_LIST_USERS", "name": "List Users", "description": "Tool to list all users in the SuperSaaS account. Use when you need to retrieve users with optional pagination using limit and offset parameters." }, { "slug": "SUPERSAAS_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing SuperSaaS user by ID. Use when you need to modify user details like name, email, phone, or role." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "supersaas_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Account Name", "type": "string", "description": "Your SuperSaaS account name", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your API key (used as password for Basic Auth)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "supersaas_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key, found in Account Info section of your settings", "required": true, "default": null }, { "name": "generic_id", "displayName": "Account Name", "type": "string", "description": "Your SuperSaaS account name, found in Account Info section of your settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "supportbee", "name": "Supportbee", "logo": "https://logos.composio.dev/api/supportbee", "description": "SupportBee is a web-based email support tool that helps businesses organize their customer support emails efficiently.", "category": "customer support", "authSchemes": [ "API_KEY" ], "toolCount": 41, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUPPORTBEE_ADD_LABEL_TO_TICKET", "name": "Add Label to Ticket", "description": "Tool to add a label to a ticket. Use when you need to categorize or tag a ticket with a specific label. The label must already exist in your SupportBee account before adding it to a ticket." }, { "slug": "SUPPORTBEE_ARCHIVE_TICKET", "name": "Archive SupportBee Ticket", "description": "Tool to archive a SupportBee ticket by its ID. Use when you want to move resolved tickets to the archive." }, { "slug": "SUPPORTBEE_ASSIGN_TICKET_TO_TEAM", "name": "Assign Ticket to Team", "description": "Assigns a ticket to a team in SupportBee. Use when you need to route a support ticket to a specific team for handling. Note: If the ticket is already assigned to a team and a user, reassigning to another team will remove the user assignee." }, { "slug": "SUPPORTBEE_CREATE_COMMENT", "name": "Create Ticket Comment", "description": "Creates an internal comment on a ticket in SupportBee. Comments are private notes visible only to agents, not to customers. Use this to add internal notes, observations, or collaborate with team members on a ticket." }, { "slug": "SUPPORTBEE_CREATE_CONSEQUENCE", "name": "Create Consequence", "description": "Creates a new consequence for rules automation in SupportBee. Use when setting up automated actions that should be triggered by rules (e.g., auto-assign tickets, archive, or mark as spam)." }, { "slug": "SUPPORTBEE_CREATE_EMAIL", "name": "Create Forwarding Email", "description": "Create a new forwarding email address for the company in SupportBee. Use this to add new support email addresses that will forward incoming emails to your SupportBee account as tickets." }, { "slug": "SUPPORTBEE_CREATE_FILTER", "name": "Create Filter", "description": "Creates a filter in SupportBee by linking a rule with a consequence. Use this after creating both a rule (defining match conditions) and a consequence (defining actions to perform)." }, { "slug": "SUPPORTBEE_CREATE_RULE", "name": "Create Rule", "description": "Creates a new automation rule in SupportBee to automatically process tickets based on conditions. Rules allow you to automate ticket workflows by: - Matching tickets based on field conditions (subject, sender, body, etc.) - Automatically applying actions like labeling, archiving, assigning, or setting priority Use this after fetching available labels/teams to get valid IDs for actions. The rule will be evaluated for all new and existing tickets matching the conditions. Returns the created rule's unique ID." }, { "slug": "SUPPORTBEE_CREATE_SNIPPET", "name": "Create Snippet", "description": "Create a reusable snippet (canned response) in SupportBee. Snippets are pre-written text templates that agents can quickly insert into ticket replies. Use this to create standard responses for common customer inquiries like refunds, FAQs, or welcome messages." }, { "slug": "SUPPORTBEE_CREATE_TICKET", "name": "Create SupportBee Ticket", "description": "Creates a new support ticket in SupportBee with a subject, content, and requester details. Use this action to: - Create tickets from customer inquiries or issues - Assign tickets to specific agents or teams during creation - Add tags and labels for better ticket organization - Include CC recipients to keep stakeholders informed The ticket will be created in an unanswered state and will appear in the inbox unless marked as spam." }, { "slug": "SUPPORTBEE_CREATE_TICKET_REPLY", "name": "Create Ticket Reply", "description": "Create a reply to a support ticket in SupportBee. Replies are sent to customers via email and are visible to them. Use this when you need to respond to a customer's ticket with information, updates, or solutions. Provide the ticket ID and HTML-formatted content for your reply." }, { "slug": "SUPPORTBEE_CREATE_USER_OR_CUSTOMER_GROUP", "name": "Create SupportBee User", "description": "Invites a new user to your SupportBee account. The user will receive an email invitation and can be assigned as an agent (handles tickets), admin (full access), or collaborator (view/comment only). Use this when you need to add team members to your helpdesk programmatically." }, { "slug": "SUPPORTBEE_DELETE_SNIPPET", "name": "Delete Snippet", "description": "Permanently delete a snippet by its ID from SupportBee. Use this action when you need to remove an unwanted or outdated snippet (canned response template). This action is destructive and cannot be undone. To find snippet IDs, use the 'Fetch Snippets' action first." }, { "slug": "SUPPORTBEE_DELETE_TICKET", "name": "Delete SupportBee Ticket", "description": "Permanently delete a trashed ticket from SupportBee. The ticket must first be moved to trash using the Trash Ticket action before it can be permanently deleted. Only admins can delete trashed tickets. This action is irreversible." }, { "slug": "SUPPORTBEE_FETCH_EMAILS", "name": "Fetch Forwarding Emails", "description": "Retrieve all forwarding email addresses configured for the company. Use this tool to list the support email addresses that forward emails to SupportBee." }, { "slug": "SUPPORTBEE_FETCH_LABELS", "name": "Fetch SupportBee Labels", "description": "Tool to retrieve all custom labels. Use when you need to list labels for ticket categorization." }, { "slug": "SUPPORTBEE_FETCH_SNIPPETS", "name": "Fetch Snippets", "description": "Fetches saved response snippets (canned responses/templates) from SupportBee. Snippets are reusable text templates that can be inserted into ticket replies. Use this to list available snippets for quick responses." }, { "slug": "SUPPORTBEE_FETCH_TEAMS", "name": "Fetch SupportBee Teams", "description": "Retrieves all teams in the SupportBee account. Use this to list available teams before assigning tickets to teams or filtering tickets by team. Returns team IDs, names, descriptions, and timestamps." }, { "slug": "SUPPORTBEE_GET_AVG_FIRST_RESPONSE_TIME_REPORT", "name": "Get Avg First Response Time Report", "description": "Tool to retrieve average first response time data points over time. Use when analyzing first-response performance metrics for support tickets. Returns time-series data with response times in seconds and Unix timestamps. Reports require admin API token access. Data is limited to a maximum 30-day window per request." }, { "slug": "SUPPORTBEE_GET_REPLIES_COUNT_REPORT", "name": "Get Replies Count Report", "description": "Retrieves replies count report data for the company. Returns time-series data points showing the number of replies over time. The report provides aggregate metrics for the entire company account and includes type information (company/user/team), the entity ID, and the metric name. Requires admin-level API access. Use this to analyze reply volume trends and patterns." }, { "slug": "SUPPORTBEE_GET_TICKET", "name": "Get Ticket", "description": "Tool to retrieve a specific SupportBee ticket by its ID. Returns complete ticket details including subject, content, requester, assignee, labels, and reply/comment counts. Use when you need to fetch full details of a single ticket." }, { "slug": "SUPPORTBEE_GET_TICKETS_COUNT_REPORT", "name": "Get Tickets Count Report", "description": "Tool to get ticket count data points over time. Use when analyzing ticket volume trends within a specific date range. Supports optional filtering by agent, team, or label." }, { "slug": "SUPPORTBEE_LIST_TICKET_COMMENTS", "name": "List Ticket Comments", "description": "Retrieves all internal comments (private agent notes) for a specific ticket. Comments are visible only to agents within the helpdesk, not to customers. Use this to review internal discussion history on a ticket." }, { "slug": "SUPPORTBEE_LIST_TICKET_REPLIES", "name": "List Ticket Replies", "description": "Lists all replies on a specific support ticket in SupportBee. Returns reply content, replier details, timestamps, and attachments. Use this to view the conversation history on a ticket. Returns an empty list if the ticket has no replies yet." }, { "slug": "SUPPORTBEE_LIST_TICKETS", "name": "List Tickets", "description": "Tool to list tickets from SupportBee. Returns a paginated list of tickets with optional filters for spam, trash, archived, assigned user/group, labels, and more. Use when you need to retrieve and browse tickets in the helpdesk." }, { "slug": "SUPPORTBEE_LIST_USERS", "name": "List SupportBee Users", "description": "Retrieves all users and customer groups in your SupportBee company. Use this when you need to list team members, filter by user type (agents/admins vs customer groups), or include invited users who haven't confirmed their accounts yet." }, { "slug": "SUPPORTBEE_MARK_TICKET_AS_ANSWERED", "name": "Mark SupportBee Ticket as Answered", "description": "Marks a SupportBee ticket as answered by adding the 'answered' status. Use this after sending a response to a customer to indicate the ticket has been addressed. This action is idempotent - calling it on an already answered ticket has no adverse effect." }, { "slug": "SUPPORTBEE_MARK_TICKET_AS_SPAM", "name": "Mark SupportBee Ticket as Spam", "description": "Tool to mark a SupportBee ticket as spam. Use when you need to flag unwanted or malicious ticket submissions after obtaining the ticket ID." }, { "slug": "SUPPORTBEE_MARK_TICKET_AS_UNANSWERED", "name": "Mark SupportBee Ticket as Unanswered", "description": "Marks a SupportBee ticket as unanswered by removing its 'answered' status. Use this to revert a ticket's status after it was previously marked as answered, typically when additional follow-up is needed from the support team. This action is idempotent - calling it on an already unanswered ticket has no adverse effect." }, { "slug": "SUPPORTBEE_REMOVE_LABEL_FROM_TICKET", "name": "Remove Label From Ticket", "description": "Tool to remove a label from a ticket. Use when you need to unlabel or uncategorize a ticket by removing an existing label." }, { "slug": "SUPPORTBEE_SEARCH_TICKETS", "name": "Search SupportBee Tickets", "description": "Tool to search SupportBee tickets. Use when you need to find tickets by query with pagination." }, { "slug": "SUPPORTBEE_SHOW_TICKET_REPLY", "name": "Show Ticket Reply", "description": "Tool to fetch a specific reply for a SupportBee ticket. Use when you need details of a single reply by ticket and reply IDs." }, { "slug": "SUPPORTBEE_SHOW_USER_OR_CUSTOMER_GROUP", "name": "Show SupportBee User or Customer Group", "description": "Retrieves details of a SupportBee user (agent/admin) or customer group by their ID. Use this action when you need to fetch profile information like name, email, role, or timestamps for a specific user whose ID you already have (e.g., from a ticket response)." }, { "slug": "SUPPORTBEE_TRASH_TICKET", "name": "Trash SupportBee Ticket", "description": "Tool to trash a SupportBee ticket by its ID. Use when you need to remove a ticket into the trash folder." }, { "slug": "SUPPORTBEE_UNARCHIVE_TICKET", "name": "Unarchive SupportBee Ticket", "description": "Tool to unarchive a SupportBee ticket by its ID. Use when you need to restore an archived ticket back to active status." }, { "slug": "SUPPORTBEE_UNASSIGN_TICKET_FROM_TEAM", "name": "Unassign Ticket from Team", "description": "Tool to un-assign a ticket from its assigned team. Use when you need to remove the current team ownership before reassigning or closing the ticket." }, { "slug": "SUPPORTBEE_UNASSIGN_TICKET_FROM_USER", "name": "Unassign User From Ticket", "description": "Tool to un-assign a ticket from its assigned user/agent. Use when you need to remove the current user ownership before reassigning to a different user or closing the ticket." }, { "slug": "SUPPORTBEE_UNMARK_TICKET_AS_SPAM", "name": "Unmark SupportBee Ticket as Spam", "description": "Tool to unmark a SupportBee ticket as spam. Use when a ticket was incorrectly flagged as spam." }, { "slug": "SUPPORTBEE_UNTRASH_TICKET", "name": "Untrash SupportBee Ticket", "description": "Restores a trashed SupportBee ticket back to active status. Use when you need to recover a ticket that was previously moved to trash." }, { "slug": "SUPPORTBEE_UPDATE_SNIPPET", "name": "Update Snippet", "description": "Update an existing snippet (canned response) in SupportBee. Use this to modify the name, content, or tags of a snippet. To find snippet IDs, use the 'Fetch Snippets' action first." }, { "slug": "SUPPORTBEE_UPDATE_USER", "name": "Update SupportBee User", "description": "Update an existing SupportBee user's profile information including name, email, role, avatar, or signature. This action modifies user account details via the SupportBee API. You can update one or multiple fields in a single request. Commonly used to change user roles (agent/admin), update contact information, or customize user profiles. Requirements: - Valid user ID (obtain from SUPPORTBEE_CREATE_USER_OR_CUSTOMER_GROUP or other user-related actions) - At least one field to update (name, email, role, avatar_url, or signature) Common use cases: - Promote an agent to admin by updating the role field - Update user email addresses when they change - Customize user signatures for support ticket replies" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "supportbee_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account Subdomain", "type": "string", "description": "The account name used as the subdomain for your SupportBee instance (e.g., in https://{account_name}.supportbee.com).", "required": true, "default": null }, { "name": "generic_token", "displayName": "SupportBee API Token", "type": "string", "description": "The API token used for authenticating requests to the SupportBee API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "supportivekoala", "name": "Supportivekoala", "logo": "https://logos.composio.dev/api/supportivekoala", "description": "Supportivekoala is a platform that automates image generation using customizable templates, enabling users to create visual content programmatically through API integration.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 6, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SUPPORTIVEKOALA_CREATE_IMAGE", "name": "Create Image", "description": "Tool to create a new image based on a template. Use when you have selected your template and prepared modifications." }, { "slug": "SUPPORTIVEKOALA_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template for image generation. Use after gathering template details." }, { "slug": "SUPPORTIVEKOALA_LIST_IMAGES", "name": "List Images", "description": "Tool to list images associated with the authenticated user. Use after confirming authentication." }, { "slug": "SUPPORTIVEKOALA_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to retrieve all templates. Use when you need to list all templates for the authenticated user." }, { "slug": "SUPPORTIVEKOALA_REGISTER_USER", "name": "Register User", "description": "Tool to register a new user account. Use after collecting valid user credentials." }, { "slug": "SUPPORTIVEKOALA_RETRIEVE_TEMPLATE", "name": "Retrieve Template by ID", "description": "Tool to retrieve a template by ID. Use when you have a valid template ID and need full template details. Use after confirming this detail." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "supportivekoala_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Supportivekoala API Key", "type": "string", "description": "The API key used for authenticating requests to the Supportivekoala API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "survey2connect", "name": "Survey2Connect", "logo": "https://logos.composio.dev/api/survey2connect", "description": "Your Gateway to Stellar Customer Experience. Survey2Connect is a customer feedback and survey platform.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "survey2connect_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Environment", "type": "string", "description": "Your datacenter environment. Use az1 for India, az2 for KSA (Saudi Arabia), az4 for UAE.", "required": true, "default": "az1" }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and go to \"Settings\" > \"Preferences\" > \"API Key\". Click refresh button to generate a new key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "surveymethods", "name": "Surveymethods", "logo": "https://logos.composio.dev/api/surveymethods", "description": "SurveyMethods provides powerful online survey software tool, advanced data analysis, email newsletters, and a comprehensive survey API.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "surveymethods_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your API key from My Account → API tab. Requires a paid subscription (Advanced, Professional, or Enterprise package).", "required": true, "default": null }, { "name": "generic_id", "displayName": "Login ID", "type": "string", "description": "Your SurveyMethods account email address", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "survicate", "name": "Survicate", "logo": "https://logos.composio.dev/api/survicate", "description": "Survicate is a powerful survey, NPS and feedback management tool that helps businesses capture more customer feedback.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "survicate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Survicate API key. Get it from Settings > Integrations > Data Export API or Surveys Settings > Access Keys.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "survser", "name": "Survser", "logo": "https://logos.composio.dev/api/survser", "description": "Grow your Business with Customer Feedback. Popup-Surveys for E-Commerce and SaaS.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SURVSER_LIST_SURVEYS", "name": "List Surveys", "description": "Tool to retrieve all surveys from your Survser account. Use when you need to list surveys, access survey metadata, check survey status, or retrieve question configurations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "survser_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key from the Settings page at https://www.survser.com/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "svix", "name": "Svix", "logo": "https://logos.composio.dev/api/svix", "description": "Svix is an enterprise-ready webhooks service that enables developers to send webhooks reliably and securely.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SVIX_APP_CREATE", "name": "Create Application", "description": "Tool to create a new Svix application. Use when you need to register an application with specific settings." }, { "slug": "SVIX_APP_DELETE", "name": "Delete Svix Application", "description": "Permanently delete a Svix application by its ID or UID. Use this to remove an application and all its associated endpoints, messages, and webhooks. This action is destructive and cannot be undone." }, { "slug": "SVIX_APP_GET", "name": "Get Application", "description": "Tool to retrieve details of a specific Svix application by its ID. Use when you need application metadata after authenticating with Svix." }, { "slug": "SVIX_APP_LIST", "name": "List Applications", "description": "Tool to list all applications. Use when you need to retrieve or paginate through your Svix applications." }, { "slug": "SVIX_APP_UPDATE", "name": "Update Svix Application", "description": "Tool to update an existing Svix application by ID. Use when you need to modify properties like name, rate limit, UID, or metadata. Call after confirming the correct app_id." }, { "slug": "SVIX_ATTEMPT_GET", "name": "Get Attempt Details", "description": "Tool to retrieve details of a specific message attempt. Use after confirming app_id, msg_id, and attempt_id." }, { "slug": "SVIX_ATTEMPT_LIST", "name": "List Message Attempts", "description": "Tool to list all delivery attempts for a specific message. Use after confirming message ID to debug attempts." }, { "slug": "SVIX_ENDPOINT_CREATE", "name": "Create Endpoint", "description": "Tool to create a new Svix webhook endpoint. Use after obtaining the app ID to register your webhook receiver URL." }, { "slug": "SVIX_ENDPOINT_DELETE", "name": "Delete Endpoint", "description": "Tool to delete an endpoint. Use when you need to remove a specific endpoint after confirming its application and endpoint IDs." }, { "slug": "SVIX_ENDPOINT_GET", "name": "Get Endpoint", "description": "Tool to retrieve details of a specific endpoint. Use after confirming app_id and endpoint_id." }, { "slug": "SVIX_ENDPOINT_LIST", "name": "List Endpoints", "description": "Tool to list all endpoints for a specific application. Use after obtaining the application ID to retrieve its endpoints." }, { "slug": "SVIX_ENDPOINT_PATCH", "name": "Patch Endpoint", "description": "Tool to partially update an endpoint’s configuration. Use when you need to adjust endpoint settings without full replacement." }, { "slug": "SVIX_ENDPOINT_PATCH_HEADERS", "name": "Patch Endpoint Headers", "description": "Tool to partially update headers for a specific endpoint. Use when you need to add, modify, or remove custom headers after endpoint creation." }, { "slug": "SVIX_ENDPOINT_RECOVER_FAILED_WEBHOOKS", "name": "Recover Failed Webhooks", "description": "Tool to recover messages that failed to send to an endpoint. Use when you need to retry webhook delivery for failed events after identifying delivery failures." }, { "slug": "SVIX_ENDPOINT_REPLAY_MISSING", "name": "Replay Missing Webhooks", "description": "Tool to replay missing webhooks for a specific endpoint. Use when some webhooks failed or were lost and need to be resent." }, { "slug": "SVIX_ENDPOINT_SECRET_GET", "name": "Get Endpoint Secret", "description": "Tool to retrieve the secret for a specific endpoint. Use after confirming app_id and endpoint_id." }, { "slug": "SVIX_ENDPOINT_SECRET_ROTATE", "name": "Rotate Endpoint Secret", "description": "Tool to rotate the signing secret key for an endpoint. Use when you need to invalidate the current secret and generate or supply a new one. Call after confirming app_id and endpoint_id." }, { "slug": "SVIX_ENDPOINT_SEND_EXAMPLE_MESSAGE", "name": "Send Example Message", "description": "Tool to send a test message for a specific event type to an endpoint. Use after setting up an endpoint to verify its configuration. Note: the endpoint's filter_types must include the event_type being tested; otherwise real events will not be delivered even if the example message sends successfully." }, { "slug": "SVIX_ENDPOINT_STATS_GET", "name": "Get Endpoint Stats", "description": "Tool to retrieve basic statistics for a specific endpoint. Use after confirming app_id and endpoint_id." }, { "slug": "SVIX_ENDPOINT_TRANSFORMATION_GET", "name": "Get Endpoint Transformation", "description": "Tool to retrieve transformation settings for a specific endpoint. Use after confirming app_id and endpoint_id." }, { "slug": "SVIX_ENDPOINT_TRANSFORMATION_SET", "name": "Set Endpoint Transformation", "description": "Tool to set or update transformation settings for an endpoint. Use when you need to configure or toggle an endpoint's transformation code after creation." }, { "slug": "SVIX_ENDPOINT_UPDATE", "name": "Update Endpoint", "description": "Tool to update an existing endpoint or create it if it doesn't exist (upsert). Use when you need to modify endpoint settings like URL, rate limit, channels, or metadata. If the endpoint doesn't exist, a new one will be created with the specified endpoint_id as its uid." }, { "slug": "SVIX_ENDPOINT_UPDATE_HEADERS", "name": "Update Endpoint Headers", "description": "Tool to completely replace headers for a specific endpoint. Use when you need to set a full new header mapping." }, { "slug": "SVIX_EVENT_TYPE_CREATE", "name": "Create Event Type", "description": "Create a new event type in Svix or unarchive an existing one. Event types are identifiers (like 'order.created', 'user.signup') that categorize the webhooks your application sends. Use period-delimited naming to group related events. Both 'name' and 'description' are required. Returns HTTP 409 if the event type already exists." }, { "slug": "SVIX_EVENT_TYPE_DELETE", "name": "Delete Event Type", "description": "Tool to delete an event type. Use when you need to archive or permanently expunge a specific event type after confirming its name." }, { "slug": "SVIX_EVENT_TYPE_GET", "name": "Get Event Type", "description": "Retrieve details of a specific event type by its name. Use this to inspect an existing event type's configuration, schema, and status. Event types define the categories of events that can be sent through Svix webhooks." }, { "slug": "SVIX_EVENT_TYPE_LIST", "name": "List Event Types", "description": "Tool to retrieve a list of all event types. Use when you need to inspect available event types, optionally including their JSON schemas. Use after authenticating the client." }, { "slug": "SVIX_EVENT_TYPE_UPDATE", "name": "Update Event Type", "description": "Update an existing event type's description, schema, feature flags, or archive status. Use this to modify event type configuration. The event type must already exist - use List Event Types or Get Event Type to find valid event type names." }, { "slug": "SVIX_INTEGRATION_CREATE", "name": "Create Integration", "description": "Tool to create a new integration for a specific application. Use after confirming the application ID." }, { "slug": "SVIX_INTEGRATION_DELETE", "name": "Delete Integration", "description": "Permanently delete an integration from a Svix application. This is a destructive operation that cannot be undone. Use when removing webhook integrations that are no longer needed. Requires both the application ID and the integration ID. Use 'List Integrations' first if you need to find the integration_id." }, { "slug": "SVIX_INTEGRATION_GET", "name": "Get Integration", "description": "Tool to retrieve details of a specific integration. Use after confirming app_id and integration_id." }, { "slug": "SVIX_INTEGRATION_LIST", "name": "List Integrations", "description": "Tool to list all integrations for a specific application. Use after confirming the application ID, supporting pagination via limit and iterator. Use when you need to enumerate integrations." }, { "slug": "SVIX_INTEGRATION_UPDATE", "name": "Update Integration", "description": "Tool to update an existing integration by ID. Use when you need to modify an integration's name or feature flags." }, { "slug": "SVIX_MESSAGE_CREATE", "name": "Create Message", "description": "Tool to create a new message for a specific application in Svix. Use after confirming app ID and event details." }, { "slug": "SVIX_MESSAGE_GET", "name": "Get Message", "description": "Tool to retrieve details of a specific message by its ID. Use when you need message metadata and status after dispatch." }, { "slug": "SVIX_MESSAGE_LIST", "name": "List Messages", "description": "Tool to list all messages for a specific application. Use when you need to fetch or paginate messages after obtaining the application ID." }, { "slug": "SVIX_SOURCE_CREATE", "name": "Create Source", "description": "Creates a new Svix Ingest source for receiving webhooks from external providers. A source generates an ingest URL that you can share with a webhook provider (e.g., GitHub, Stripe) as the destination for their webhooks. Svix will verify signatures based on the source type and forward the webhooks to your configured endpoints. Use 'genericWebhook' type to skip signature verification for providers not natively supported." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "svix_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Svix API Token", "type": "string", "description": "The secret API key used to authenticate requests to the Svix API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "swaggerhub", "name": "Swaggerhub", "logo": "https://logos.composio.dev/api/swaggerhub", "description": "Accelerating API delivery and quality through standards and collaboration, built on OpenAPI", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 44, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SWAGGERHUB_ADD_ACCESS_CONTROL_FOR_TEAMS", "name": "Add Access Control for Teams", "description": "Tool to assign access control roles to teams on a SwaggerHub resource. Use when you need to grant team permissions (OWNER, DESIGNER, CONSUMER) for APIs, domains, projects, or portal products." }, { "slug": "SWAGGERHUB_ADD_ACCESS_CONTROL_FOR_USERS", "name": "Add Access Control for Users", "description": "Tool to assign access control roles to users on a SwaggerHub resource. Use when you need to grant user permissions (owner, designer, consumer) for APIs, domains, projects, organizations, teams, or portal products." }, { "slug": "SWAGGERHUB_DELETE_TABLE_OF_CONTENTS_ENTRY", "name": "Delete Table of Contents Entry", "description": "Tool to delete a table of contents entry from SwaggerHub portal. Use when you need to remove a table of contents entry by its ID. Optionally supports recursive deletion of nested entries." }, { "slug": "SWAGGERHUB_GET_ACCESS_CONTROL_USERS", "name": "Get Access Control Users", "description": "Tool to retrieve the list of users assigned access control on a SwaggerHub resource. Use when you need to check who has access to an API, domain, project, organization, team, or portal product." }, { "slug": "SWAGGERHUB_GET_API_DEFAULT_VERSION", "name": "Get API Default Version", "description": "Tool to get the default version identifier of a SwaggerHub API. Use when you need to know which version is marked as default for an API. This returns only the version identifier; to get the full API definition, use the version with GET /apis/{owner}/{api}/{version}." }, { "slug": "SWAGGERHUB_GET_API_VERSIONS", "name": "Get API Versions", "description": "Tool to retrieve a list of API versions for a specific API in SwaggerHub. Use when you need to get all versions of an API owned by an organization or user. Returns 404 if the specified API is not found or if the authenticated user does not have access to a private API." }, { "slug": "SWAGGERHUB_GET_CONSUMER_PRODUCTS", "name": "Get Consumer Products", "description": "Tool to get a list of products that are visible to the consumer in a SwaggerHub portal. Use when you need to retrieve products from a portal, including both accessible and inaccessible products. This endpoint does not require authentication." }, { "slug": "SWAGGERHUB_GET_DEFINITION", "name": "Get API Definition", "description": "Tool to get the OpenAPI definition of a specified API version from SwaggerHub. Use when you need to retrieve the complete API specification including endpoints, schemas, and documentation for a specific API version." }, { "slug": "SWAGGERHUB_GET_DOMAIN_DEFAULT_VERSION", "name": "Get Domain Default Version", "description": "Tool to retrieve the default version identifier of a SwaggerHub domain. Use when you need to know which version is set as default for a domain before fetching its definition." }, { "slug": "SWAGGERHUB_GET_DOMAIN_DEFINITION", "name": "Get domain definition", "description": "Tool to retrieve the OpenAPI definition of a specified domain version from SwaggerHub. Use when you need to access reusable domain components, schemas, or parameters." }, { "slug": "SWAGGERHUB_GET_DOMAIN_JSON_DEFINITION", "name": "Get Domain JSON Definition", "description": "Tool to retrieve the OpenAPI definition for a specified domain version in JSON format. Use when you need to access the domain definition document from SwaggerHub." }, { "slug": "SWAGGERHUB_GET_DOMAIN_LIFECYCLE_SETTINGS", "name": "Get Domain Lifecycle Settings", "description": "Tool to get the published status for a specific domain and version in SwaggerHub. Use when you need to check if a domain version is published or unpublished." }, { "slug": "SWAGGERHUB_GET_DOMAIN_PRIVATE_SETTINGS", "name": "Get Domain Private Settings", "description": "Tool to retrieve the visibility (public or private) of a domain version in SwaggerHub. Use when you need to check whether a specific domain version is accessible publicly or restricted to private access." }, { "slug": "SWAGGERHUB_GET_DOMAIN_VERSIONS", "name": "Get Domain Versions", "description": "Tool to get a list of domain versions from SwaggerHub. Use when you need to retrieve all versions of a domain definition and see which APIs reference it. The domain must exist and be accessible with the provided authentication. Returns domain information in APIs.json format including referencing APIs." }, { "slug": "SWAGGERHUB_GET_DOMAIN_YAML_DEFINITION", "name": "Get Domain YAML Definition", "description": "Tool to retrieve the OpenAPI definition for a specified domain version in YAML format from SwaggerHub. Use when you need to fetch domain schemas or API specifications in YAML format." }, { "slug": "SWAGGERHUB_GET_LIFECYCLE_SETTINGS", "name": "Get lifecycle settings", "description": "Tool to get the published status for the specified API and version. Use when you need to check if an API version is published or unpublished." }, { "slug": "SWAGGERHUB_GET_ORGANIZATION_MEMBERS", "name": "Get Organization Members", "description": "Tool to retrieve a list of organization members and their roles from SwaggerHub. Use when you need to view member details including email addresses, roles, and last activity. The authenticating user must be the organization owner." }, { "slug": "SWAGGERHUB_GET_ORGANIZATIONS", "name": "Get User Organizations", "description": "Tool to get organizations for a user. Use when you need to retrieve all organizations that the authenticating user is a member of. Results can be filtered by name using the q parameter, sorted by name or email, and paginated using page and pageSize parameters." }, { "slug": "SWAGGERHUB_GET_ORG_PROJECTS_V2", "name": "Get Organization Projects V2", "description": "Tool to get all projects of an organization in SwaggerHub. Use when you need to retrieve projects belonging to a specific organization. Projects organize APIs and domains into logical groups. Returns 403 if projects are not available in the organization's plan, or 404 if the organization is not found." }, { "slug": "SWAGGERHUB_GET_OWNER_APIS", "name": "Get Owner APIs", "description": "Tool to get a list of APIs for a specified owner in SwaggerHub. Use when you need to retrieve all APIs belonging to a specific user or organization. Results are returned in APIs.json format and can be paginated and sorted by various criteria." }, { "slug": "SWAGGERHUB_GET_OWNER_DOMAINS", "name": "Get owner domains", "description": "Tool to retrieve domains owned by a specific SwaggerHub user or organization. Use when you need to list all domains associated with an owner." }, { "slug": "SWAGGERHUB_GET_PORTAL", "name": "Get Portal", "description": "Tool to retrieve information about a portal. Use when you need to fetch details about a specific SwaggerHub portal by its UUID or subdomain." }, { "slug": "SWAGGERHUB_GET_PORTAL_ACCESS_REQUESTS", "name": "Get Portal Access Requests", "description": "Tool to retrieve access requests for a portal in SwaggerHub. Use when you need to list all users who have requested access to a portal's products, with optional filtering by status or search query. Returns paginated results with details about each request including user information, product, status, and timestamps." }, { "slug": "SWAGGERHUB_GET_PORTAL_ATTACHMENT", "name": "Get Portal Attachment", "description": "Tool to get informational attachment metadata from SwaggerHub Portal. Use when you need to retrieve details about a specific attachment by its UUID. This endpoint supports both authenticated and unauthenticated access for branding attachments or public product attachments." }, { "slug": "SWAGGERHUB_GET_PORTAL_PRODUCT", "name": "Get Portal Product", "description": "Tool to retrieve detailed information about a specific product resource. Use when you need to fetch complete details about a product using its UUID or portal-subdomain:product-slug identifier." }, { "slug": "SWAGGERHUB_GET_PORTAL_PRODUCTS", "name": "Get Portal Products", "description": "Tool to get products for a specific portal that match your criteria. Use when you need to retrieve a list of products from a portal, with optional filtering by name or slug and pagination support." }, { "slug": "SWAGGERHUB_GET_PORTALS", "name": "Get Portals", "description": "Tool to search for available portals. Returns portals where you have a designer role, either at the product level or organization level." }, { "slug": "SWAGGERHUB_GET_PORTAL_TEMPLATES", "name": "Get Portal Templates", "description": "Tool to get templates for a specific portal that match your criteria. Use when you need to list or search for templates within a portal by name or other filters. Supports pagination for large result sets." }, { "slug": "SWAGGERHUB_GET_PRIVATE_SETTINGS", "name": "Get API Version Private Settings", "description": "Tool to get the visibility (public or private) of an API version. Use when you need to check whether a specific API version is publicly accessible or private." }, { "slug": "SWAGGERHUB_GET_RESOURCE_TYPES", "name": "List Resource Types and Roles", "description": "Tool to list available resource types and assignable roles for each in a SwaggerHub organization. Use when you need to understand what roles can be assigned to different resource types like APIs, domains, projects, teams, and organizations." }, { "slug": "SWAGGERHUB_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve a list of templates for an owner in SwaggerHub. Use when you need to get available templates for creating new API definitions or domain models." }, { "slug": "SWAGGERHUB_GET_USER_ROLES", "name": "Get User Roles", "description": "Tool to retrieve all roles assigned to a user across organization resources in SwaggerHub. Use when you need to check what permissions a user has across APIs, teams, domains, and other resources in an organization." }, { "slug": "SWAGGERHUB_GET_YAML_DEFINITION", "name": "Get YAML Definition", "description": "Tool to get the OpenAPI definition in YAML format for the specified API version from SwaggerHub. Use when you need to retrieve the API specification as YAML text for parsing, storage, or processing." }, { "slug": "SWAGGERHUB_LIST_ATTACHMENTS", "name": "List Attachments", "description": "Tool to retrieve all attachments for a portal or product. Use when you need to list attachments associated with either a specific portal or product. Provide either productId or portalId, not both." }, { "slug": "SWAGGERHUB_REMOVE_ACCESS_CONTROL_FOR_TEAMS", "name": "Remove Access Control for Teams", "description": "Tool to remove access control for teams from a SwaggerHub resource. Use when you need to revoke team permissions from an API, domain, project, or portal product." }, { "slug": "SWAGGERHUB_REMOVE_ACCESS_CONTROL_FOR_USERS", "name": "Remove Access Control For Users", "description": "Tool to remove access control for users from a SwaggerHub organizational resource. Use when you need to revoke user access to APIs, domains, projects, organizations, teams, or portal products." }, { "slug": "SWAGGERHUB_REMOVE_MEMBERS", "name": "Remove Organization Members", "description": "Tool to remove members from a SwaggerHub organization. Use when you need to revoke membership for one or more users by their email addresses." }, { "slug": "SWAGGERHUB_SEARCH_APIS", "name": "Search APIs", "description": "Tool to search SwaggerHub APIs. Use when you need to find API definitions in SwaggerHub by name, owner, or other criteria. This is a convenience alias for GET /specs?specType=API." }, { "slug": "SWAGGERHUB_SEARCH_APIS_AND_DOMAINS", "name": "Search APIs and Domains", "description": "Tool to search SwaggerHub APIs, domains, and templates. Use when you need to retrieve a list of currently defined APIs, domains, and/or templates in APIs.json format. Supports filtering by spec type, visibility, state, owner, and free text search with pagination and sorting." }, { "slug": "SWAGGERHUB_SEARCH_DOMAINS", "name": "Search Domains", "description": "Tool to search SwaggerHub domains. Use when you need to find domain definitions in SwaggerHub by name, owner, or other criteria. This is a convenience alias for GET /specs?specType=DOMAIN." }, { "slug": "SWAGGERHUB_SEARCH_PUBLISHED_PORTAL", "name": "Search Published Portal", "description": "Tool to search published portal content. Use when you need to search for APIs, operations, schemas, or documents within a specific SwaggerHub portal. This endpoint does not require authentication for public content, but authentication provides access to private products within the API key's access boundary." }, { "slug": "SWAGGERHUB_UPDATE_ACCESS_CONTROL_FOR_TEAMS", "name": "Update Access Control for Teams", "description": "Tool to update access control roles for teams on a SwaggerHub resource. Use when you need to assign or change team permissions (designer or consumer) for APIs, domains, projects, or portal products." }, { "slug": "SWAGGERHUB_UPDATE_ACCESS_CONTROL_FOR_USERS", "name": "Update Access Control for Users", "description": "Tool to update access control roles for users on a SwaggerHub resource. Use when you need to assign or change user permissions (owner, designer, consumer) for APIs, domains, projects, organizations, teams, or portal products." }, { "slug": "SWAGGERHUB_UPDATE_PORTAL", "name": "Update Portal", "description": "Tool to update specific portal information in SwaggerHub. Use when you need to modify portal settings such as name, branding, subdomain, or other configuration options." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "swaggerhub_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your SwaggerHub account settings at https://app.swaggerhub.com/settings/apiKey to retrieve your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "swarmsyncai", "name": "Swarmsyncai", "logo": "https://logos.composio.dev/api/swarmsyncai", "description": "Agent Protocol v2 API for agent-to-agent communication and work negotiation", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 91, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SWARMSYNCAI_ANNOUNCE_AGENT", "name": "Announce Agent to Marketplace", "description": "Announce a new agent to the SwarmSync marketplace (creates DRAFT). Use this action when a new autonomous agent needs to register itself with the SwarmSync platform to become discoverable in the marketplace. The agent will be created in DRAFT status, requiring additional onboarding steps before it can be activated. Rate limit: 5 requests per minute per IP." }, { "slug": "SWARMSYNCAI_CHECK_USERNAME_AVAILABILITY", "name": "Check Username Availability", "description": "Check if an agent username is available for registration on Swarmsyncai. Use when you need to verify that a desired agent username is available before attempting to create an agent. Returns availability status and alternative suggestions if the username is already taken. This action is read-only and idempotent - checking the same username multiple times will always return the same result." }, { "slug": "SWARMSYNCAI_CREATE_A2_A_AUDIT_LOG", "name": "Create A2A Audit Log", "description": "Log discovery query for analytics. Use this action when you need to record discovery query events for analytics, tracking search patterns, monitoring performance metrics, or maintaining audit trails in the SwarmSync platform. This action captures query metadata including hash, parameters, result count, and execution time for analytics and monitoring purposes." }, { "slug": "SWARMSYNCAI_CREATE_A2_A_DISCOVER_BATCH", "name": "Batch A2A Discovery", "description": "Batch discovery for multi-slot workflows in the A2A protocol. Discovers available agents for multiple workflow slots simultaneously, matching each slot's capability requirements and budget constraints. Use this action when you need to find suitable agents for complex multi-step workflows where different slots may require different capabilities. Returns matching agents for each slot with composite scores based on capability match, trust score, price, freshness, and text relevance. Also validates global budget constraints and provides composability information for combining agents across slots. Rate limit: 20 requests per minute for authenticated users." }, { "slug": "SWARMSYNCAI_CREATE_AGENTS_A2_A", "name": "Create Agents A2A Collaboration", "description": "Create an A2A (agent-to-agent) collaboration between two agents in SwarmSync AI. Use this action when you need to establish a connection or handshake between two agents, enabling them to communicate and delegate tasks. This action creates a new collaboration entry that allows the requester agent to interact with the responder agent through the A2A protocol. This action is not idempotent — creating multiple collaborations with the same agent pair may result in duplicate entries or conflict errors depending on the API behavior." }, { "slug": "SWARMSYNCAI_CREATE_AGENTS_A2A_RESPOND", "name": "Respond to A2A Collaboration Request", "description": "Respond to an A2A (agent-to-agent) collaboration request. Use this action when an agent needs to acknowledge, accept, reject, or mark complete a collaboration request received from another agent on the SwarmSync platform. Common status values include ACCEPTED (to accept the collaboration), REJECTED (to decline), PENDING (to acknowledge receipt), and COMPLETED (to signal task finish). This action modifies the state of an existing collaboration request." }, { "slug": "SWARMSYNCAI_CREATE_AUTH_FORGOT_PASSWORD", "name": "Request Password Reset Email", "description": "Request a password reset email for a user account. Use this action when a user needs to reset their password and requires a password reset link sent to their registered email. The endpoint always returns a successful response regardless of whether the email exists in the system, to prevent email enumeration attacks. Check the user's email for the reset link after calling this action. This action is not destructive — it only sends an email, it does not change any account state directly." }, { "slug": "SWARMSYNCAI_CREATE_AUTH_VERIFY_EMAIL", "name": "Verify Email Address", "description": "Verify a user's email address using a token received in a verification email. Use this action when a user has signed up and needs to confirm their email address by submitting the verification token from the email link. The token is typically valid for a limited time and can only be used once. On success (HTTP 200), the email is confirmed and the user can fully access the platform. On failure (HTTP 400), the token is invalid or expired and the user should request a new verification email." }, { "slug": "SWARMSYNCAI_CREATE_BENCHMARKS_CERTIFICATES_VERIFY", "name": "Verify benchmark certificate", "description": "Verify benchmark certificate signature. Use this action when you need to validate the authenticity of a benchmark certificate by checking its digital signature. This verifies that the certificate was issued by an authorized authority and has not been tampered with or forged. This action is useful for third-party verification scenarios where you need to confirm that a certificate presented by an agent is legitimate." }, { "slug": "SWARMSYNCAI_CREATE_BILLING_SUBSCRIPTION_CHECKOUT_PUBLIC", "name": "Create public billing checkout", "description": "Create a public Stripe checkout session for unauthenticated users. Use this action when you need to generate a checkout session for a user who has not yet authenticated, typically in sign-up or guest checkout flows. The user will be redirected to the returned Stripe URL to complete payment." }, { "slug": "SWARMSYNCAI_CREATE_CONDUIT_MCP", "name": "Create Conduit MCP Request", "description": "Invoke a method on the Conduit MCP JSON-RPC endpoint. Use this action when you need to execute JSON-RPC methods against the Conduit MCP server in SwarmSync. Common methods include listing conduits, creating new conduit sessions, retrieving conduit status, or managing conduit resources. This endpoint follows the JSON-RPC 2.0 specification where requests include a method name and optional parameters, and responses return either a result or an error object." }, { "slug": "SWARMSYNCAI_CREATE_MCP", "name": "Send MCP JSON-RPC Request", "description": "Send a JSON-RPC request to the MCP (Model Context Protocol) endpoint. Use this action when you need to interact with the SwarmSync AI platform via the Model Context Protocol (MCP). This includes initializing a client session, listing available tools, calling tools, managing resources, and performing other MCP-compliant operations. Common MCP methods: initialize, ping, tools/list, tools/call, resources/list, resources/read, prompts/list, prompts/get. This endpoint follows the JSON-RPC 2.0 specification where requests include a jsonrpc version, method name, optional parameters, and id, and responses return either a result or an error object." }, { "slug": "SWARMSYNCAI_CREATE_QUALITY_CERTIFICATIONS", "name": "Create Quality Certification", "description": "Create a new quality certification for an agent in the SwarmSync platform. Use this action when you need to create a new quality certification record for an agent. The certification will be associated with the specified agent and can enhance their trust score and credibility in the SwarmSync network. After creation, the certification details including its unique identifier and status will be returned. This action corresponds to the POST /quality/certifications endpoint of the SwarmSync API." }, { "slug": "SWARMSYNCAI_CREATE_QUALITY_EVALUATIONS_RUN", "name": "Create Quality Evaluation Run", "description": "Trigger a quality evaluation run for a specific agent. Use this action when you need to initiate a quality assessment for an agent to evaluate its performance metrics, accuracy, and adherence to quality benchmarks. The evaluation is performed asynchronously — after triggering this action, poll the GetQualityEvaluationsAgent action to retrieve the completed results. Returns a run identifier that can be used to track the evaluation progress." }, { "slug": "SWARMSYNCAI_CREATE_RECRUITMENT_TRACK_SIGNUP", "name": "Track Recruitment Signup", "description": "Track a referral signup by creating an attribution record linking a recruiter to a new user who signed up with their referral code. Use this action when you need to record that a user has signed up using a referral code. This is typically called internally by the AuthService during the registration process. The action creates an attribution record that links the recruiter (referrer) to the recruit (new user). Commission Window: The referral commission is valid for 24 months from the user's first transaction, not from the signup date." }, { "slug": "SWARMSYNCAI_CREATE_SERVICE_ACCOUNTS_AGENTS_SELF_REGISTER", "name": "Self-Register Service Account Agent", "description": "Self-register an agent for service accounts in SwarmSync AI. Use this action when an agent needs to register itself with the SwarmSync platform to become part of the service account network. This creates a new agent registration entry that enables the agent to participate in agent discovery, communication, and marketplace activities. The agent will be assigned a unique identifier and initial status upon successful registration. The name field is required and must be unique within the platform. This action is not idempotent — attempting to register with the same name multiple times may result in a conflict error." }, { "slug": "SWARMSYNCAI_CREATE_SWARMSCORE_RECOMPUTE", "name": "Recompute Agent SwarmScore", "description": "Trigger a recomputation of the SwarmScore for a specific agent. Use this action when you need to force a recalculation of an agent's SwarmScore based on its latest execution history, success rates, and performance metrics. This is useful after an agent has completed new executions and you want to refresh its score and trust tier immediately rather than waiting for the next scheduled recalculation. This action modifies the agent's SwarmScore data — the score is updated on the server as a result of this call." }, { "slug": "SWARMSYNCAI_CREATE_SWARM_SCORE_VERIFY", "name": "Verify SwarmScore", "description": "Verify an agent SwarmScore and trust tier. Use this action when you need to check if an agent has a valid SwarmScore and confirm its trust tier classification in the Swarmsyncai network. This is a public read-only endpoint that does not require authentication and only retrieves verification status without making any modifications. This action is idempotent and read-only - it only verifies score information without making any changes." }, { "slug": "SWARMSYNCAI_CREATE_TRUST_VERIFY", "name": "Create Trust Verification", "description": "Create a new trust verification record between an agent and a reviewer. Use this action when you need to initiate, submit, or update a trust verification request in the SwarmSync platform. This creates a verification record that tracks the trust relationship between the specified agent and reviewer. The verification can be set to PENDING for review, VERIFIED to confirm trust, REJECTED to deny, or EXPIRED to mark as outdated. After creation, the verification record is associated with the agent's trust profile and affects their overall trust tier in the SwarmSync network. This action corresponds to the POST /trust/verify endpoint of the SwarmSync API." }, { "slug": "SWARMSYNCAI_CREATE_WORKFLOWS", "name": "Create Workflow", "description": "Create a new workflow in the SwarmSync platform. Use this action when you need to create a new workflow with a name, creator, budget allocation, and ordered steps. Each step is assigned to an agent that will execute it in the specified order. The workflow will be created and returned with its unique identifier and initial configuration. This action corresponds to the POST /workflows endpoint of the SwarmSync API." }, { "slug": "SWARMSYNCAI_CREATE_X402_VERIFY", "name": "Verify x402 Payment", "description": "Verify an x402 blockchain payment transaction. Use this action when you need to confirm that a cryptocurrency payment has been successfully processed on-chain and credited to the agent's configured wallet address. This action checks the blockchain transaction against the specified agent and wallet to validate the payment. It is commonly used after initiating an x402 payment to confirm receipt of funds. The endpoint returns HTTP 201 (Created) on successful verification." }, { "slug": "SWARMSYNCAI_DISCOVER_AGENTS", "name": "Discover A2A agents", "description": "Multi-criteria agent discovery endpoint for the A2A (Agent-to-Agent) protocol. Discovers available agents in the swarm network with composite scoring based on capability match (35%), trust score (25%), price (20%), freshness (10%), and text relevance (10%). Trust scores decay over a 90-day half-life, and new agents receive a +10 boost. Use this action to find suitable agents for agent-to-agent communication and task delegation. Rate limit: 100 requests per minute per IP." }, { "slug": "SWARMSYNCAI_GET_A2_A_AGENTS_CAPABILITIES", "name": "Get A2A agent capabilities", "description": "Retrieve the capabilities available for a specific agent in the A2A network. Use this action when you need to discover what capabilities an agent supports, such as its supported input/output formats, schema definitions, and taxonomy classification. By default, only active capabilities are returned. Set include_inactive to true to include all capabilities regardless of their active status." }, { "slug": "SWARMSYNCAI_GET_A2_A_AGENTS_CARD", "name": "Get A2A Agent Card", "description": "Get detailed agent card containing agent metadata, capabilities, pricing, and reputation. Use this action when you need to retrieve comprehensive information about a specific agent, including what capabilities it supports, how it is priced, its reputation score, and current availability status. The agent card is essential for making informed decisions about which agent to use for a given task." }, { "slug": "SWARMSYNCAI_GET_AFFILIATES_R", "name": "Affiliate Link Redirect with Tracking", "description": "Track an affiliate link click and redirect to the destination URL. Records UTM parameters (source, medium, campaign) for affiliate analytics. Use when processing affiliate link clicks to track conversions and attribute traffic sources. The action follows the redirect and returns the final destination URL." }, { "slug": "SWARMSYNCAI_GET_AGENT", "name": "Get Agent Details", "description": "Retrieve detailed information about a specific agent by its ID. Use when you need to get the current details of an agent, including its status, configuration, and metadata. The agent ID is a UUID format identifier. This action is read-only - it only retrieves agent information without making any modifications." }, { "slug": "SWARMSYNCAI_GET_AGENTS_BADGE", "name": "Get Agent Trust Score Badge", "description": "Fetches a Shields.io trust-score badge image for a specific agent. Use this action when you need to retrieve or embed a trust score badge for an agent. The response contains the badge as an SVG file." }, { "slug": "SWARMSYNCAI_GET_AGENTS_BUDGET", "name": "Get Agent Budget", "description": "Retrieves the budget information for a specific agent by its ID. Use when you need to check an agent's budget status, remaining credits, or spending limits. This action is read-only and idempotent - fetching the budget for the same agent multiple times will return the current budget status." }, { "slug": "SWARMSYNCAI_GET_AGENTS_DISCOVER", "name": "Discover Marketplace Agents", "description": "Discover agents in the Swarmsyncai marketplace with optional capability filtering. Use when you need to find available agents in the marketplace that match specific capabilities or search criteria. Returns a paginated list of agents with their basic information. This action is read-only and idempotent - querying the same criteria will return the same results." }, { "slug": "SWARMSYNCAI_GET_AGENTS_ECO_RADAR_V1_LATEST_REPORT", "name": "Get EcoRadar Latest Report", "description": "Retrieves the latest EcoRadar report from Swarmsyncai. Use when you need to fetch the most recent EcoRadar market analysis or ecosystem report for an agent. This action is read-only - it only retrieves data without making any changes." }, { "slug": "SWARMSYNCAI_GET_AGENTS_GENESIS_STATUS_V1", "name": "Get Genesis Launch Status", "description": "Retrieves the Genesis launch status from Swarmsyncai. Use this action when you need to check whether the Genesis marketing agent is currently active, its launch timestamp, or its operational status. This is a read-only operation that retrieves status information without modifying any data." }, { "slug": "SWARMSYNCAI_GET_AGENTS_ORACLE_REPUTATION", "name": "Get Agent Oracle Reputation", "description": "Retrieve the oracle public reputation data for a specific agent, including trust score and transaction statistics. Use this action when you need to check an agent's trustworthiness, verify transaction history, or assess reliability before engaging with the agent." }, { "slug": "SWARMSYNCAI_GET_AGENTS_SCHEMA", "name": "Get Agent Schema", "description": "Retrieves the schema definition for a specific agent by its ID. Use when you need to understand the structure and available fields of an agent, such as validating agent configurations or preparing data for agent interactions. This action is read-only and idempotent - fetching the schema for the same agent multiple times will return the same result." }, { "slug": "SWARMSYNCAI_GET_AGENTS_SLUG", "name": "Get Agent by Slug", "description": "Retrieve details of a specific agent by its unique slug identifier. Use when you need to fetch an agent's configuration, tools, or settings using its slug rather than its numeric ID. Returns comprehensive agent information including name, description, model, instructions, and available tools. This action is read-only and idempotent - retrieving the same agent multiple times will always return the same result." }, { "slug": "SWARMSYNCAI_GET_AGENTS_STEALTH_EVALUATE_V1_QUEUE", "name": "Get stealth evaluate queue status", "description": "Retrieves the current status and details of the stealth evaluate latest queue. Use this action when you need to check the status of queued stealth evaluations, retrieve the latest evaluation results, or monitor the evaluation pipeline state. This is a read-only operation that does not modify any data." }, { "slug": "SWARMSYNCAI_GET_AGENTS_STEALTH_SCOUT_V1_TARGETS", "name": "Get Stealth Scout Targets", "description": "Retrieves the latest targets from Stealth Scout agent. Use this action when you need to fetch the current list of targets that Stealth Scout has discovered or is tracking. This is a read-only operation that retrieves data without modifying any resources. The action requires no input parameters and returns a list of target objects with their associated metadata." }, { "slug": "SWARMSYNCAI_GET_AGENTS_STEALTH_TRACKER_V1_METRICS", "name": "Get Stealth Tracker V1 Metrics", "description": "Retrieve the latest metrics from the Stealth Tracker v1 agent. Use this action when you need to fetch current tracking statistics including event counts, active sessions, success rates, and other performance metrics from the stealth tracker. This is a read-only operation that retrieves real-time metrics without modifying any data." }, { "slug": "SWARMSYNCAI_GET_AGENTS_X402_PAYMENT_HISTORY", "name": "Get Agent x402 Payment History", "description": "Retrieves the payment history for a specific agent from the x402 payment system. Use when you need to fetch payment records, track transaction history, or review financial activity for an agent in the SwarmSync platform. This action is read-only and idempotent - retrieving payment history multiple times will return the same records (assuming no new payments were added between requests)." }, { "slug": "SWARMSYNCAI_GET_AUTH_CHECK_USERNAME", "name": "Check Auth Username Availability", "description": "Check if an agent username is available for registration. Use when you need to verify that a desired agent username is available before attempting to create an account. This action uses the auth endpoint for username availability checks. This action is read-only and idempotent - checking the same username multiple times will return the same result." }, { "slug": "SWARMSYNCAI_GET_AUTH_MOLTBOOK_CALLBACK", "name": "Handle Moltbook OAuth Callback", "description": "Handle the Moltbook OAuth callback by receiving the authorization code and state, exchanging the code for tokens server-side, and redirecting to the frontend with a JWT. Use this action when completing the OAuth flow for Moltbook — typically invoked automatically by the browser following a redirect from the Moltbook authorization server. The action validates the state token for CSRF protection and processes the authorization code to complete the authentication. This action is part of the OAuth handshake and is usually called by the frontend application after the user authorizes access." }, { "slug": "SWARMSYNCAI_GET_BENCHMARK_RESULTS", "name": "Get benchmark leaderboard", "description": "Get benchmark leaderboard results for agents in the swarm network. Retrieves ranked benchmark performance data including overall scores, task success rates, latency metrics, and cost efficiency for agents that have been evaluated. Use when you need to compare agent performance, evaluate quality metrics, or identify top-performing agents for specific tasks. The results are sorted by overall score (highest first), and include detailed breakdowns by individual benchmark tasks." }, { "slug": "SWARMSYNCAI_GET_BILLING_PLANS", "name": "Get billing plans", "description": "List all available subscription plans. Use when you need to retrieve the available billing plans and their pricing information. This action requires no parameters." }, { "slug": "SWARMSYNCAI_GET_BILLING_PRICES", "name": "Get billing prices", "description": "Get pricing configuration with Stripe price IDs. Use when you need to retrieve the current billing prices, platform fees, and Stripe price identifiers for all subscription tiers. This action requires no parameters." }, { "slug": "SWARMSYNCAI_GET_DEMO_A2_A_AGENTS", "name": "Get Demo A2A Agents", "description": "Retrieve a list of demo A2A agents for testing the agent-to-agent protocol. Use this action when you need to discover available demo agents for testing A2A communication, protocol verification, or integration testing. This action requires no parameters and returns all demo agents with their basic metadata. Note: This endpoint returns demo agents only; for production agents, use the DiscoverAgents action instead." }, { "slug": "SWARMSYNCAI_GET_DEMO_A2_A_RUN_LOGS", "name": "Get Demo A2A Run Logs", "description": "Retrieve logs for a specific demo A2A run. Use this action when you need to fetch the execution logs, debug information, or history of a demo agent-to-agent run in the SwarmSync platform. This is a read-only operation that retrieves data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_HEALTH_DB", "name": "Get database health status", "description": "Check the health and connectivity status of the Swarmsyncai database. Use when you need to verify that the Swarmsyncai service can reach and communicate with its underlying database. This action performs a read-only health check and requires no parameters. This action is read-only and does not modify any data." }, { "slug": "SWARMSYNCAI_GET_HEALTH_LIVE", "name": "Get health live status", "description": "Check the liveness status of the Swarmsyncai service. Use this action to verify that the Swarmsyncai API service is running and responsive. This is a lightweight health check endpoint suitable for monitoring and orchestration systems. A successful response (HTTP 200) indicates the service is alive and can accept requests. This action is read-only, idempotent, and does not modify any data." }, { "slug": "SWARMSYNCAI_GET_HEALTH_READY", "name": "Get Health Ready Status", "description": "Check the service readiness health status. Use when you need to verify that the Swarmsyncai API service is healthy and ready to process requests. This is typically used for load balancer health checks, container orchestration readiness probes, or monitoring service availability. The endpoint requires no parameters and returns a status indicating whether the service is operational. This action is read-only and idempotent." }, { "slug": "SWARMSYNCAI_GET_MARKET_DEMAND", "name": "Get market demand", "description": "Retrieve the market demand feed containing aggregated demand metrics. Use when you need to understand current market demand patterns, including which agent categories have the most activity, typical contract values, and reputation requirements. This data helps with market analysis and strategic planning for agent services. This is a read-only, idempotent operation that returns the latest aggregated demand data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_NEED_BY_ID", "name": "Get SwarmNeed by ID", "description": "Retrieves a specific SwarmNeed by its unique identifier. Use when you need to fetch detailed information about a particular need, check its status, view its metadata, or verify fulfillment state. This action is read-only and idempotent — calling it multiple times with the same ID returns the same result." }, { "slug": "SWARMSYNCAI_GET_NEEDS_FOR_AGENT", "name": "Get Needs for Agent", "description": "Retrieves open needs that match an agent's capabilities. Use when you need to find available tasks or requirements in the swarm network that a specific agent can fulfill based on its registered capabilities. This is useful for agent-to-agent task delegation and discovering opportunities for an agent to offer its services. This action is read-only and idempotent - querying for matching needs will not modify any data or claim any needs." }, { "slug": "SWARMSYNCAI_GET_NEEDS_RESPONSES", "name": "Get SwarmNeed Responses", "description": "Retrieves all responses to a specific SwarmNeed. Use this action when you need to: - Review agent or user responses to a published need - Evaluate different fulfillment proposals - Track the status of responses to a need - Select an agent or user to fulfill a need This is a read-only operation that retrieves data without modifying resources." }, { "slug": "SWARMSYNCAI_GET_ORGANIZATIONS_ROI", "name": "Get Organization ROI", "description": "Retrieve ROI (Return on Investment) data for a specific organization. Use when you need to get the financial metrics and ROI calculations for an organization identified by its slug. This is a read-only operation that fetches current ROI data without making any modifications. Note: The slug parameter identifies the organization uniquely and is required." }, { "slug": "SWARMSYNCAI_GET_OVERFLOW_FEED", "name": "Get overflow feed", "description": "Retrieve the public overflow feed containing available task slots. Use when you need to fetch the current list of open task slots in the Swarmsyncai overflow system. This is a read-only, idempotent operation that returns all currently available slots along with claim instructions. The feed is publicly accessible and does not require specific parameters to retrieve the current state of available tasks." }, { "slug": "SWARMSYNCAI_GET_QUALITY_ANALYTICS_AGENTS", "name": "Get Agent Quality Analytics", "description": "Retrieve quality analytics for a specific agent. Use this action when you need to fetch performance metrics, reliability scores, and quality grades for an agent in the SwarmSync platform. The response includes task success rates, error counts, response times, and overall quality assessments. This is a read-only operation that retrieves analytics data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_QUALITY_ANALYTICS_AGENTS_TIMESERIES", "name": "Get Quality Analytics Agent Timeseries", "description": "Retrieve quality analytics timeseries data for a specific agent over a given time period. Use this action when you need to analyze an agent's quality metrics over time, including quality scores, task completion rates, success rates, and response/latency metrics. Useful for monitoring agent performance, identifying degradation patterns, or generating quality reports. This is a read-only operation that retrieves analytics data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_QUALITY_CERTIFICATIONS_AGENT", "name": "Get Agent Quality Certifications", "description": "Retrieves quality certifications for a specific agent by its ID. Use this action when you need to verify an agent's quality certifications, check certification status, or obtain compliance and trust information about an agent in the Swarmsyncai network. This is a read-only operation that retrieves certification data without modifying any information." }, { "slug": "SWARMSYNCAI_GET_QUALITY_EVALUATIONS_AGENT", "name": "Get Agent Quality Evaluations", "description": "Retrieve quality evaluation results for a specific agent by its ID. Use this action when you need to assess the quality metrics, scores, and evaluation history of an agent in the SwarmSync platform. This helps evaluate agent reliability and performance quality. This is a read-only operation that retrieves evaluation data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_ROUTING_MODELS", "name": "Get Routing Models", "description": "Lists all available models that can be used for routing tasks through the SwarmSync platform. Use this action when you need to discover which AI models are available for task routing, including their pricing tiers, context windows, and tool-calling capabilities. This action is read-only and idempotent - fetching the model list multiple times will return the same result (though model availability may change over time)." }, { "slug": "SWARMSYNCAI_GET_STEALTH_OUTREACH_HISTORY", "name": "Get Stealth Outreach History", "description": "Retrieves the latest history records for the Stealth Outreach v1 agent. Use this action when you need to fetch recent outreach activity logs, track sent messages, or review outreach performance. This endpoint requires no parameters and returns all available history records for the authenticated user." }, { "slug": "SWARMSYNCAI_GET_SWARM_FULFILLMENT_TYPES_JSON", "name": "Get Swarm Fulfillment Types", "description": "Retrieve the SwarmFulfillmentType taxonomy from the well-known endpoint. Use when you need to discover the canonical fulfillment types supported by the SwarmSync.AI marketplace, including advisory, code-task, data-delivery, API-access, compute-access, and browser-execution types. This endpoint provides the taxonomy used for agent-to-agent marketplace execution, settlement, and verification. This action is read-only and idempotent - fetching the taxonomy multiple times will always return the same result." }, { "slug": "SWARMSYNCAI_GET_SWARM_SCORE_CERTIFICATE", "name": "Get SwarmScore Certificate", "description": "Retrieves a cryptographically signed SwarmScore certificate for a specific agent. Use this action when you need to verify an agent's SwarmScore, obtain a tamper-proof certificate of the agent's trust score, or validate the authenticity of an agent's performance metrics in the Swarmsyncai network. This is a read-only operation that retrieves certificate data without modifying any information." }, { "slug": "SWARMSYNCAI_GET_SWARMSCORE_CERTIFICATE2", "name": "Get SwarmScore Certificate", "description": "Retrieves a cryptographically signed SwarmScore certificate for a specific agent. Use this action when you need to verify an agent's SwarmScore, obtain a tamper-proof certificate of the agent's trust score, or validate the authenticity of an agent's performance metrics in the Swarmsyncai network. This is a read-only operation that retrieves certificate data without modifying any information." }, { "slug": "SWARMSYNCAI_GET_SWARMSCORE_SCORE", "name": "Get Agent SwarmScore", "description": "Retrieve the SwarmScore for a specific agent. Use this action when you need to check an agent's performance metrics, including execution count, score, success rate, and trust tier level. This action is read-only and idempotent - it only retrieves score information without making any modifications." }, { "slug": "SWARMSYNCAI_GET_TOOLS_DISCOVER", "name": "Discover Tools", "description": "Discover available tools in the Swarmsyncai marketplace. Use when you need to find all available tools that can be used within the Swarmsyncai ecosystem. This action returns a list of tools with their basic information including name, description, category, and capabilities. This action is read-only and idempotent - querying will return the same results for the same available tools." }, { "slug": "SWARMSYNCAI_GET_TRUST_AGENTS", "name": "Get Agent Trust Information", "description": "Retrieve trust information for a specific agent by its ID. Use this action when you need to check an agent's trustworthiness, verify their trust tier, or assess reliability before engaging with the agent. This is a read-only operation that retrieves trust data without making any modifications." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_AGENT_CAPABILITIES_JSON", "name": "Get Agent Capabilities Beacon", "description": "Retrieves the agent capability beacon JSON from the SwarmSync.AI platform's well-known URL endpoint. This endpoint provides comprehensive platform metadata including supported protocols, task types, pricing, trust systems, and availability configuration. Use this action when you need to discover the platform's capabilities, supported protocols (AP2, A2A, MCP, OpenAI-compatible), pricing structure, or to verify platform availability and authentication requirements." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_AGENT_CARD_JSON", "name": "Get Well Known Agent Card JSON", "description": "Retrieve the agent card JSON from the .well-known directory. Use when you need to discover information about the Swarmsyncai agent, its capabilities, supported skills, authentication requirements, and provider details. The agent card follows the A2A (Agent-to-Agent) protocol standard for agent self-description. This action is read-only and idempotent — calling it multiple times returns the same result." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_AGENTICWEB_MD", "name": "Get Well Known Agenticweb.md", "description": "Retrieve the agenticweb.md file from the .well-known directory. Use when you need to discover agentic web standards, capabilities, or machine-readable documentation provided by the Swarmsyncai service. The agenticweb.md file follows the standard agenticweb.md specification for AI agent discoverability. This action is read-only and returns markdown content that can be parsed for AI agent context." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_AGENT_JSON", "name": "Get A2A AgentCard", "description": "Retrieves the A2A AgentCard (canonical) from the /.well-known/agent.json endpoint. Use this action when: - Discovering the SwarmSync.AI agent marketplace and its capabilities - Understanding available protocols (AP2, x402, A2A, OpenAI-Compatible) - Learning about payment options (fiat/Stripe and crypto/x402 USDC) - Finding information about escrow, reputation scoring, and trust mechanisms - Checking subscription tiers and pricing for the platform This is a read-only endpoint that requires no authentication." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_AGENTS_JSON", "name": "Get Well-Known Agents JSON", "description": "Retrieves the well-known agents.json manifest from the /.well-known/ endpoint. This endpoint provides agent discovery information for the Swarmsyncai platform. Use this action when: - Discovering available agents in the network - Getting agent metadata for integration purposes - Listing all known agents from the platform No authentication is required for this public endpoint." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_LLMS_TXT", "name": "Get Well Known LLMS.txt", "description": "Retrieve the llms.txt file from the .well-known directory. Use when you need to discover information about available AI models, endpoints, or API capabilities provided by the Swarmsyncai service. The llms.txt file follows the standard llms.txt specification for AI-readable documentation. This action is read-only and returns plain text content that can be parsed for AI agent context." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_SWARM_AUTONOMY_POLICY_JSON", "name": "Get Swarm Autonomy Policy", "description": "Retrieve the SwarmAutonomyPolicy contract document from the well-known endpoint. Use when you need to retrieve the autonomy policy configuration that defines rules and permissions for swarm agents. This is a read-only endpoint that returns the policy document without requiring any parameters. This action is read-only and idempotent - fetching the policy multiple times will always return the same result." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_SWARM_BENCHMARK_SUITES_JSON", "name": "Get Swarm Benchmark Suites", "description": "Retrieves the Swarm SkillProof benchmark suite catalog from the .well-known directory of the Swarmsyncai platform. This endpoint provides a comprehensive catalog of benchmark suites organized by track categories (trust-foundation, market-readiness, commercial-trust, execution-proof, ecosystem-trust, capability-fit, operational-reliability). Use this action when you need to discover available benchmark suites, understand their tracks, proof signals, challenge modes, and public challenge policies. This is a read-only discovery endpoint that helps identify which benchmark suites are available for validating agent capabilities. This action is read-only and idempotent - fetching the catalog multiple times will return the same data." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_SWARM_MARKET_LOOP_JSON", "name": "Get Swarm Market Loop JSON", "description": "Retrieves the swarm market loop JSON configuration and lifecycle information. Use when you need to fetch the current state of a swarm market loop including agents, tasks, and configuration details." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_SWARM_MARKET_OBJECTS_JSON", "name": "Get Swarm Market Objects", "description": "Retrieve the swarm market objects JSON from the .well-known directory. Use when you need to discover available market objects in the SwarmSyncai marketplace, including available agents, services, or other tradable entities. The response includes object listings with their metadata and registry statistics. This action is read-only and idempotent - fetching the market objects multiple times will return the same data (updated at most by server-side changes)." }, { "slug": "SWARMSYNCAI_GET_WELL_KNOWN_SWARM_VAULT_JSON", "name": "Get SwarmVault Contract Configuration", "description": "Retrieves the SwarmVault contract configuration from the well-known endpoint. Use when you need to obtain the SwarmVault contract address, chain ID, ABI, and other metadata for interacting with the swarm coordination vault." }, { "slug": "SWARMSYNCAI_GET_WORKFLOWS_RUNS", "name": "Get Workflow Runs", "description": "Retrieve all runs (executions) for a specific workflow by its ID. Use this action when you need to fetch the execution history of a workflow, check the status of past or current runs, review inputs/outputs of previous executions, or monitor workflow performance over time. This action is read-only and idempotent — it only retrieves data without modifying any resources." }, { "slug": "SWARMSYNCAI_GET_X402_AGENTS_PAYMENT_METHODS", "name": "Get Agent Payment Methods", "description": "Retrieve the payment methods associated with a specific agent. Use when you need to get the payment methods configured for an agent to receive payments or settlements. This action is read-only - it only retrieves payment method information without making any modifications." }, { "slug": "SWARMSYNCAI_GET_X402_CONFIG_STATUS", "name": "Get x402 Config Status", "description": "Retrieve the x402 payment configuration status. Use when you need to check whether the x402 payment configuration is properly set up, enabled, or to view the current configuration details. This is a read-only operation that retrieves configuration status without modifying any data." }, { "slug": "SWARMSYNCAI_GET_X402_TRANSACTIONS_STATUS", "name": "Get x402 Transaction Status", "description": "Retrieves the status and details of an x402 blockchain transaction. Use this action when you need to check if a payment transaction has been confirmed on-chain, track transaction progress, or verify that a blockchain payment was successfully processed. This is a read-only operation that queries blockchain state without modifying any resources." }, { "slug": "SWARMSYNCAI_LIST_AGENTS", "name": "List Marketplace Agents", "description": "List agents from the SwarmSync AI marketplace. Retrieves agents from the marketplace with optional filtering by status, visibility, category, tags, search query, verification status, conduit type, and creator ID. Use when you need to browse or find available agents in the marketplace that match specific criteria. This is a read-only operation that fetches data without modifying any resources." }, { "slug": "SWARMSYNCAI_LIST_CONDUIT_MCP", "name": "List Conduit MCP Server Metadata", "description": "Retrieves metadata about the Conduit MCP server. Use when you need to discover information about the Conduit MCP server, including its version, status, and capabilities. This action requires no parameters. This action is read-only and idempotent - fetching the server metadata multiple times will return the same result." }, { "slug": "SWARMSYNCAI_LIST_HEALTH", "name": "Check API Health", "description": "Check the health status of the Swarmsyncai API. Use when you need to verify that the API service is running and responding correctly. This is a read-only, idempotent operation commonly used for monitoring and readiness probes. The health endpoint confirms connectivity to the API service without requiring specific parameters." }, { "slug": "SWARMSYNCAI_LIST_NEEDS", "name": "List SwarmNeeds", "description": "List SwarmNeed objects from the SwarmSync platform. Retrieves all available SwarmNeed objects with their identification, classification, and status information. Use when you need to discover or browse available needs within the swarm network for task assignment, resource allocation, or fulfillment coordination. This is a read-only operation that fetches data without modifying any resources." }, { "slug": "SWARMSYNCAI_LIST_SWARM_SCORE", "name": "List Agent SwarmScore", "description": "Retrieve the SwarmScore for a specific agent. Use this action when you need to check an agent's performance metrics, including execution count, score, success rate, and trust tier level. This action is read-only and idempotent - it only retrieves score information without making any modifications." }, { "slug": "SWARMSYNCAI_LIST_WORKFLOWS", "name": "List Workflows", "description": "List workflow objects from the SwarmSync platform. Retrieves all available workflows with their identification, status, and configuration information. Use when you need to discover, browse, or manage workflows within the swarm network for automation coordination, process monitoring, or workflow administration. This is a read-only operation that fetches data without modifying any resources." }, { "slug": "SWARMSYNCAI_REGISTER_AGENT", "name": "Register Agent Account", "description": "Register a new AI agent account on Swarmsyncai. Use this action when a new autonomous AI agent needs to create an account on the Swarmsyncai platform to participate in the swarm marketplace. The agent will receive an access token for API requests and an API key for authentication. These credentials are returned only once during registration. This action is irreversible - once registered, the agent account cannot be deleted through this API." }, { "slug": "SWARMSYNCAI_REGISTER_AUTH", "name": "Register New User Account", "description": "Register a new user account on Swarmsyncai with email and password credentials. Use this action when creating a new user account for the Swarmsyncai platform. Upon successful registration, the action returns a JWT access token for immediate authentication and user details including the generated user ID. Agent account registration requires the ENABLE_AGENT_SIGNUP feature flag to be enabled. Note: If registration fails due to an existing email, use a different email address or check if the user already has an account." }, { "slug": "SWARMSYNCAI_RESEND_VERIFICATION", "name": "Resend Email Verification", "description": "Resend email verification link. Use this action when you need to send a new email verification link to a user who has not yet verified their email address. Common scenarios include: the user did not receive the original verification email, the verification link expired, or the user needs to verify a newly registered account. The API always returns a 200 status code to prevent email enumeration attacks - even if the email address is not registered, the response will indicate success. This action is idempotent - requesting multiple verification emails for the same address will simply result in multiple emails being sent." }, { "slug": "SWARMSYNCAI_TRACK_CLICK", "name": "Track Referral Click", "description": "Track a referral click for recruitment analytics. Use this action when a user clicks on a referral link to record the click for affiliate analytics. This updates the affiliate's totalClicks counter. The endpoint is publicly accessible and does not require authentication. The referral code is typically extracted from the 'ref' query parameter in the URL. Note: This action silently fails for invalid or unapproved referral codes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "swarmsyncai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Service Account API Key from SwarmSync dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "sympla", "name": "Sympla", "logo": "https://logos.composio.dev/api/sympla", "description": "Sympla is a platform for managing both in-person and online events, offering tools for ticket sales, registrations, and digital content broadcasting.", "category": "event management", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SYMPLA_LIST_EVENTS", "name": "List Events", "description": "Tool to list all events created by the authenticated organizer. Use this when you need to fetch events from a Sympla account. Supports pagination, filtering by published status, date range, and sorting." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "sympla_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Sympla API Key", "type": "string", "description": "The API key provided by Sympla for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "syntheticnew", "name": "Syntheticnew", "logo": "https://logos.composio.dev/api/syntheticnew", "description": "Synthetic provides OpenAI and Anthropic-compatible APIs for accessing 19+ open-source AI models with flat-rate pricing", "category": "ai models", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "syntheticnew_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API key from https://synthetic.new/user-settings/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "synthflow_ai", "name": "Synthflow AI", "logo": "https://logos.composio.dev/api/synthflow_ai", "description": "Synthflow AI provides AI-powered voice agents to automate both inbound and outbound calls, enhancing customer engagement and operational efficiency.", "category": "ai agents", "authSchemes": [ "API_KEY" ], "toolCount": 79, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "SYNTHFLOW_AI_ADD_KB_SOURCE_DOCUMENT", "name": "Add document to knowledge base source", "description": "Tool to add a document to a knowledge base source. Use when you need to attach PDF files, web pages, or text content to an existing knowledge base." }, { "slug": "SYNTHFLOW_AI_ATTACH_ACTIONS_TO_AGENT", "name": "Attach Actions to Agent", "description": "Tool to attach one or more actions to an agent. Use when you need to configure an agent with specific actions by providing the agent's model_id and an array of action IDs." }, { "slug": "SYNTHFLOW_AI_ATTACH_CONTACT_TO_MEMORY_STORE", "name": "Attach contact to memory store", "description": "Tool to attach a contact to a memory store. Use when you need to associate a specific contact with a memory store for persistent data storage." }, { "slug": "SYNTHFLOW_AI_ATTACH_KNOWLEDGE_BASE_TO_AGENT", "name": "Attach knowledge base to agent", "description": "Tool to attach a knowledge base to an agent. Use when you need to connect a knowledge base to a specific AI assistant by providing both IDs." }, { "slug": "SYNTHFLOW_AI_ATTACH_MEMORY_STORE_TO_AGENT", "name": "Attach memory store to agent", "description": "Tool to attach a memory store to an agent. Use when you need to connect a memory store resource to a specific assistant for knowledge retrieval." }, { "slug": "SYNTHFLOW_AI_CREATE_ACTION", "name": "Create Action", "description": "Tool to create a new action in Synthflow AI. Use when you need to configure an action such as real-time booking, information extraction, live transfer, SMS sending, custom HTTP calls, or custom evaluations. Exactly one action type must be specified in the request." }, { "slug": "SYNTHFLOW_AI_CREATE_ASSISTANT", "name": "Create Assistant", "description": "Tool to create a new assistant. Use when you need to initialize a Synthflow AI assistant by specifying its name, type, and agent configuration." }, { "slug": "SYNTHFLOW_AI_CREATE_CONTACT", "name": "Create a contact", "description": "Tool to create a new contact in Synthflow AI. Use when you need to add a contact with name and phone number." }, { "slug": "SYNTHFLOW_AI_CREATE_KNOWLEDGE_BASE", "name": "Create knowledge base", "description": "Tool to create a new knowledge base and return its ID. Use when you need to set up a knowledge repository for retrieval-augmented generation (RAG) in assistants." }, { "slug": "SYNTHFLOW_AI_CREATE_MEMORY_STORE", "name": "Create memory store", "description": "Tool to create a new memory store. Use when you need to initialize a knowledge repository for storing conversation history, customer data, or other contextual information." }, { "slug": "SYNTHFLOW_AI_CREATE_PHONE_BOOK", "name": "Create Phone Book", "description": "Tool to create a new phone book. Use when you need to create a contact list for organizing phone numbers in Synthflow AI." }, { "slug": "SYNTHFLOW_AI_CREATE_PHONE_BOOK_ENTRY", "name": "Create phone book entry", "description": "Tool to create a phone book entry. Use when you need to add a new phone number with a transfer condition to an existing phone book." }, { "slug": "SYNTHFLOW_AI_CREATE_SIMULATION_CASE", "name": "Create Simulation Case", "description": "Tool to create a new simulation case. Use when you need to set up test scenarios for evaluating assistant behavior against defined success criteria." }, { "slug": "SYNTHFLOW_AI_CREATE_SIMULATION_SCENARIO", "name": "Create a simulation scenario", "description": "Tool to create a new simulation scenario. Use when you need to define a template for generating test cases to ensure coverage of specific situations." }, { "slug": "SYNTHFLOW_AI_CREATE_SIMULATION_SUITE", "name": "Create a new simulation suite", "description": "Tool to create a new simulation suite attached to a specific agent. Use when you need to set up test scenarios for an agent. The suite can only execute on the agent specified by model_id." }, { "slug": "SYNTHFLOW_AI_CREATE_TEAM", "name": "Create a new team", "description": "Tool to create a new team. Use when you need to programmatically set up a Synthflow AI assistant group with routing rules." }, { "slug": "SYNTHFLOW_AI_DELETE_ACTION", "name": "Delete an action", "description": "Tool to delete an existing action. Use after confirming the action ID to permanently remove it." }, { "slug": "SYNTHFLOW_AI_DELETE_ASSISTANT", "name": "Delete an assistant", "description": "Tool to delete an existing AI assistant. Use after confirming the assistant ID. Example: Delete assistant with ID 'assistant_123'." }, { "slug": "SYNTHFLOW_AI_DELETE_CHAT", "name": "Delete a chat session", "description": "Tool to delete a chat session. Use when you need to remove an existing chat by its ID. Confirm the chat ID before calling." }, { "slug": "SYNTHFLOW_AI_DELETE_CONTACT", "name": "Delete a contact", "description": "Tool to delete an existing contact. Use after confirming the contact ID." }, { "slug": "SYNTHFLOW_AI_DELETE_KNOWLEDGE_BASE", "name": "Delete knowledge base", "description": "Tool to delete an existing knowledge base. Use after confirming the knowledge base ID to permanently remove it." }, { "slug": "SYNTHFLOW_AI_DELETE_KNOWLEDGE_BASE_SOURCE", "name": "Delete a knowledge base source", "description": "Tool to delete a source from a knowledge base. Use when you need to remove a specific source from a knowledge base after confirming both IDs." }, { "slug": "SYNTHFLOW_AI_DELETE_MEMORY_STORE", "name": "Delete a memory store", "description": "Tool to delete a memory store. Use when you need to remove a memory store after confirming its ID." }, { "slug": "SYNTHFLOW_AI_DELETE_PHONE_BOOK", "name": "Delete a phone book", "description": "Tool to delete an existing phone book. Use when you need to remove a Synthflow AI phone book after it's no longer needed. Confirm the phone book ID before calling." }, { "slug": "SYNTHFLOW_AI_DELETE_PHONE_BOOK_ENTRY", "name": "Delete a phone book entry", "description": "Tool to delete a phone book entry. Use when you need to remove a specific entry from a phone book. Confirm both phone_book_id and entry_id before calling." }, { "slug": "SYNTHFLOW_AI_DELETE_SIMULATION_CASE", "name": "Delete a simulation case", "description": "Tool to delete a simulation case by ID. Use after confirming the simulation case ID to remove it permanently." }, { "slug": "SYNTHFLOW_AI_DELETE_SIMULATION_SCENARIO", "name": "Delete a simulation scenario", "description": "Tool to delete an existing simulation scenario. Use after confirming the scenario ID. Example: Delete simulation scenario with ID '41fc8c4a-b372-4309-813a-545505b2d0e5'." }, { "slug": "SYNTHFLOW_AI_DELETE_SIMULATION_SUITE", "name": "Delete a simulation suite", "description": "Tool to delete a simulation suite by ID. Use when you need to remove a simulation suite that is no longer needed. Confirm the suite ID before calling." }, { "slug": "SYNTHFLOW_AI_DELETE_SUBACCOUNT", "name": "Delete a subaccount", "description": "Tool to delete an existing subaccount. Use after confirming the subaccount ID. Example: Delete subaccount with ID 'test_subaccount_id_12345'." }, { "slug": "SYNTHFLOW_AI_DELETE_TEAM", "name": "Delete a team", "description": "Tool to delete an existing team. Use when you need to remove a Synthflow AI team after it's no longer needed. Confirm the team ID before calling." }, { "slug": "SYNTHFLOW_AI_DETACH_ACTION", "name": "Detach actions from assistant", "description": "Tool to detach one or more actions from an AI assistant. Use when you need to remove specific actions from an agent's configuration." }, { "slug": "SYNTHFLOW_AI_DETACH_KNOWLEDGE_BASE", "name": "Detach knowledge base", "description": "Tool to detach a knowledge base from an AI assistant. Use when you need to remove a knowledge base association from an agent." }, { "slug": "SYNTHFLOW_AI_DETACH_MEMORY_STORE_CONTACT", "name": "Detach contact from memory store", "description": "Tool to detach a contact from a memory store. Use when you need to remove a contact from a specific memory store." }, { "slug": "SYNTHFLOW_AI_DETACH_MEMORY_STORE_FROM_AGENT", "name": "Detach memory store from agent", "description": "Tool to detach a memory store from an agent. Use when you need to remove a memory store from a specific agent/assistant." }, { "slug": "SYNTHFLOW_AI_EXECUTE_SIMULATION_SUITE", "name": "Execute simulation suite", "description": "Tool to execute all test cases in a simulation suite. The suite runs on the target agent (must match the suite's model_id). Use when you need to validate an agent's performance against pre-configured test scenarios." }, { "slug": "SYNTHFLOW_AI_EXPORT_ANALYTICS", "name": "Export analytics data", "description": "Tool to export analytics data for calls within a specified date range. Use when you need to retrieve call analytics, filter by assistant/agent, call type, or time period. Defaults to past 7 days if no dates specified; maximum date range is 120 days." }, { "slug": "SYNTHFLOW_AI_GET_ACTION", "name": "Get action metadata", "description": "Tool to retrieve metadata about a specific action by its ID. Use when you need to inspect an action's configuration and parameters." }, { "slug": "SYNTHFLOW_AI_GET_ASSISTANT", "name": "Get AI assistant details", "description": "Tool to retrieve details of a specific AI assistant. Use after confirming the assistant's ID to fetch its configuration and metadata." }, { "slug": "SYNTHFLOW_AI_GET_CALL", "name": "Get phone call details", "description": "Tool to retrieve the transcript and detailed metadata for a specific phone call. Use when you need to access call recordings, transcripts, duration, or telephony details for a completed call." }, { "slug": "SYNTHFLOW_AI_GET_CONTACT", "name": "Get contact details", "description": "Tool to retrieve details of a specific contact by its ID. Use when you need to fetch contact information." }, { "slug": "SYNTHFLOW_AI_GET_KNOWLEDGE_BASE", "name": "Get knowledge base", "description": "Tool to retrieve details of a specific knowledge base by its ID. Use after confirming the knowledge base ID to fetch its metadata." }, { "slug": "SYNTHFLOW_AI_GET_MEMORY_STORE", "name": "Get memory store", "description": "Tool to retrieve details of a specific memory store by its ID. Use when you need to fetch metadata and configuration of an existing memory store." }, { "slug": "SYNTHFLOW_AI_GET_MEMORY_STORE_CONTACT_DATA", "name": "Get memory store contact data", "description": "Tool to retrieve memory data for a specific contact in a memory store. Use when you need to fetch stored memory information associated with a particular contact." }, { "slug": "SYNTHFLOW_AI_GET_NUMBERS", "name": "Get phone numbers", "description": "Tool to retrieve a list of phone numbers associated with a workspace. Use when you need to fetch numbers assigned to your account for a given workspace." }, { "slug": "SYNTHFLOW_AI_GET_SIMULATION", "name": "Get simulation details", "description": "Tool to retrieve details of a specific simulation by ID. Use to fetch simulation results including timeline, recording, and success criteria evaluation after a simulation has been executed." }, { "slug": "SYNTHFLOW_AI_GET_SIMULATION_CASE", "name": "Get Simulation Case", "description": "Tool to retrieve a simulation case by ID. Use when you need to fetch details of a specific simulation case including its prompt, success criteria, and metadata." }, { "slug": "SYNTHFLOW_AI_GET_SIMULATION_SCENARIO", "name": "Get simulation scenario", "description": "Tool to retrieve a simulation scenario by ID. Use when you need to fetch details of a specific simulation scenario template." }, { "slug": "SYNTHFLOW_AI_GET_SIMULATION_SUITE", "name": "Get simulation suite by ID", "description": "Tool to retrieve a simulation suite by ID. Use when you need to fetch details about a specific simulation suite including its test cases and associated agent information." }, { "slug": "SYNTHFLOW_AI_GET_SUBACCOUNT", "name": "Get subaccount details", "description": "Tool to retrieve detailed metadata about a specific subaccount by ID. Use when you need to fetch subaccount information including permissions, subscription details, and members." }, { "slug": "SYNTHFLOW_AI_GET_TEAM", "name": "Get team details", "description": "Tool to retrieve details of a specific team by its ID. Use after confirming the team exists to inspect its configuration." }, { "slug": "SYNTHFLOW_AI_INITIALIZE_ACTION", "name": "Initialize Action", "description": "Tool to initialize a custom action with specified variables. Use when you have an action ID and need to initialize it with configuration variables." }, { "slug": "SYNTHFLOW_AI_LIST_ACTIONS", "name": "List actions", "description": "Tool to list all actions in the workspace. Use when you need to retrieve a paginated list of available actions and their configurations." }, { "slug": "SYNTHFLOW_AI_LIST_ASSISTANTS", "name": "List AI assistants", "description": "Tool to list all AI assistants associated with the account. Use when you need to retrieve a paginated list of assistants." }, { "slug": "SYNTHFLOW_AI_LIST_CALLS", "name": "List call history", "description": "Tool to retrieve call history (call logs) with filtering to check outcomes/statuses after placing calls. Use after making voice calls to list recent calls for a model, filter by phone number/time window, and confirm outcomes like completed/no-answer/busy/failed." }, { "slug": "SYNTHFLOW_AI_LIST_CHATS", "name": "List chats", "description": "Tool to retrieve a list of chats, optionally filtered by agent ID. Use when you need to view chat history or check recent conversations." }, { "slug": "SYNTHFLOW_AI_LIST_CONTACTS", "name": "List contacts", "description": "Tool to retrieve a list of contacts with optional search filtering. Use when you need to list all contacts or search for specific contacts by phone number." }, { "slug": "SYNTHFLOW_AI_LIST_MEMORY_STORES", "name": "List memory stores", "description": "Tool to list memory stores with optional filtering by title. Use when you need to retrieve all memory stores in a workspace, optionally filtered by search term." }, { "slug": "SYNTHFLOW_AI_LIST_PHONE_BOOKS", "name": "List Phone Books", "description": "Tool to list all phone books in your workspace. Use when you need to retrieve all phone books for organizing contacts in Synthflow AI." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATION_CASES", "name": "List Simulation Cases", "description": "Tool to list simulation cases with pagination and optional filtering by name or type. Use when you need to retrieve simulation cases for testing agent behavior." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATION_CASES_BY_AGENT", "name": "List simulation cases by agent", "description": "Tool to list all simulation cases created for a specific agent. Use when you need to retrieve test scenarios associated with a particular agent ID." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATIONS", "name": "List simulations", "description": "Tool to list simulations with pagination and optional filters. Use when you need to retrieve simulation records, optionally filtered by session ID, status, date range, or target agent." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATION_SCENARIOS", "name": "List simulation scenarios", "description": "Tool to list simulation scenarios with pagination and optional filtering. Use when you need to retrieve simulation scenario templates with support for search by name and date range filtering." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATION_SESSIONS", "name": "List simulation sessions", "description": "Tool to list simulation sessions with pagination and optional filters. Use when you need to retrieve simulation sessions, optionally filtered by target agent, date range, or paginated results." }, { "slug": "SYNTHFLOW_AI_LIST_SIMULATION_SUITES", "name": "List simulation suites", "description": "Tool to list simulation suites with pagination and optional filtering. Use when you need to retrieve simulation suites, optionally filtered by model IDs, date range, or search term." }, { "slug": "SYNTHFLOW_AI_LIST_SUBACCOUNTS", "name": "List subaccounts", "description": "Tool to list all subaccounts associated with the authenticated account. Use when you need to retrieve all subaccounts and their configurations." }, { "slug": "SYNTHFLOW_AI_LIST_TEAMS", "name": "List teams", "description": "Tool to list assistant teams. Use when you need to retrieve all teams in a workspace." }, { "slug": "SYNTHFLOW_AI_LIST_VOICES", "name": "List voices", "description": "Tool to list all text-to-speech voices in a workspace. Use when you need to retrieve voices available for TTS in a given workspace." }, { "slug": "SYNTHFLOW_AI_LIST_WEBHOOK_LOGS", "name": "List webhook logs", "description": "Tool to retrieve paginated webhook logs with filtering and search capability. Use when you need to audit webhook delivery, check webhook statuses, troubleshoot failed webhooks, or search for specific webhook events by date range, status, type, or associated call/assistant." }, { "slug": "SYNTHFLOW_AI_MAKE_VOICE_CALL", "name": "Make a voice call", "description": "Tool to initiate a real-time voice call via the AI agent. Use when you have the agent ID, customer name, and phone number ready." }, { "slug": "SYNTHFLOW_AI_START_SIMULATION", "name": "Start Simulation", "description": "Tool to start a new simulation using a simulation case. Use when you need to execute a test scenario against an agent to validate its behavior and performance." }, { "slug": "SYNTHFLOW_AI_UPDATE_ACTION", "name": "Update Action", "description": "Tool to update an existing action in Synthflow AI. Use when you need to modify an action's configuration such as real-time booking, information extraction, live transfer, SMS sending, custom HTTP calls, or custom evaluations. Exactly one action type must be specified in the request along with the action_id." }, { "slug": "SYNTHFLOW_AI_UPDATE_ASSISTANT", "name": "Update Assistant", "description": "Tool to update an existing assistant’s settings. Use after confirming the assistant exists. Modify settings like name, phone, recording, webhook, or agent configuration." }, { "slug": "SYNTHFLOW_AI_UPDATE_CONTACT", "name": "Update a contact", "description": "Tool to update an existing contact in Synthflow AI. Use when you need to modify contact details like name, phone, email, or metadata." }, { "slug": "SYNTHFLOW_AI_UPDATE_KNOWLEDGE_BASE", "name": "Update knowledge base", "description": "Tool to update an existing knowledge base's name or usage conditions. Use after confirming the knowledge base exists." }, { "slug": "SYNTHFLOW_AI_UPDATE_MEMORY_STORE", "name": "Update memory store", "description": "Tool to update an existing memory store's title and description. Use when you need to modify metadata of a memory store." }, { "slug": "SYNTHFLOW_AI_UPDATE_SIMULATION_CASE", "name": "Update Simulation Case", "description": "Tool to update an existing simulation case. Use when you need to modify the name, prompt, success criteria, or evaluation method of a simulation case." }, { "slug": "SYNTHFLOW_AI_UPDATE_SIMULATION_SCENARIO", "name": "Update a simulation scenario", "description": "Tool to update an existing simulation scenario. Use when you need to modify the name or description of a scenario template." }, { "slug": "SYNTHFLOW_AI_UPDATE_SIMULATION_SUITE", "name": "Update an existing simulation suite", "description": "Tool to update an existing simulation suite. Use when you need to modify the name or agent model of a simulation suite. At least one of name or model_id must be provided." }, { "slug": "SYNTHFLOW_AI_UPDATE_TEAM", "name": "Update an existing team", "description": "Tool to update an existing team. Use after confirming the team exists and you have new configuration values." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "synthflow_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Synthflow AI API Key", "type": "string", "description": "The API Key used for authenticating requests to the Synthflow AI API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "systeme_io", "name": "Systeme Io", "logo": "https://logos.composio.dev/api/systeme_io", "description": "The world's easiest all-in-one marketing platform", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "systeme_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in to Systeme.io, click the user menu on the top right and go to Settings > Public API Keys. Maximum 2 API keys per account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tableau", "name": "Tableau", "logo": "https://logos.composio.dev/api/tableau", "description": "Tableau is a visual analytics platform transforming the way we use data to solve problems", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TABLEAU_GET_SERVER_INFO", "name": "Get Server Information", "description": "Retrieve version information for the Tableau Server installation. Returns the product version, build number, and compatible REST API version. No authentication required." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tableau_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Server URL", "type": "string", "description": "Base URL of your Tableau Server or Cloud instance. Examples: https://tableau.example.com (Server) or https://10ay.online.tableau.com (Cloud)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Token Name", "type": "string", "description": "Personal Access Token Name from Tableau Server/Cloud. Go to Settings > Personal Access Tokens to create one.", "required": true, "default": null }, { "name": "generic_token", "displayName": "Token Secret", "type": "string", "description": "Personal Access Token Secret from Tableau Server/Cloud. Copy the secret when creating the token.", "required": true, "default": null } ], "optional": [ { "name": "version", "displayName": "API Version", "type": "string", "description": "Tableau REST API version. Use the latest version supported by your server (e.g., 3.28, 3.22).", "required": false, "default": "3.28" }, { "name": "generic_id", "displayName": "Site ID", "type": "string", "description": "Site content URL (subpath) for your Tableau site. Leave empty for default site, or use the site name from your URL.", "required": false, "default": "" } ] } } } ] }, { "slug": "tableau_mcp", "name": "Tableau MCP", "logo": "https://logos.composio.dev/api/tableau_mcp", "description": "Tableau is Salesforce's analytics and business intelligence platform. The hosted Tableau MCP server (mcp.tableau.com) lets agents read published data sources, workbooks and views, download views, query data through the VizQL Data Service, and read Pulse metrics and insights across a Tableau Cloud site.", "category": "analytics", "authSchemes": [ "DCR_OAUTH" ], "toolCount": 0, "triggerCount": 0, "version": "00000000_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "DCR_OAUTH", "name": "tableau_mcp_DCR_OAuth", "fields": { "auth_config_creation": { "required": [], "optional": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": false, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": false, "default": null }, { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "taggun", "name": "Taggun", "logo": "https://logos.composio.dev/api/taggun", "description": "Taggun is an AI-powered receipt OCR API that extracts structured data from receipt and invoice images in real-time. It supports 85+ languages, fraud detection, and automated expense tracking.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TAGGUN_ADD_MERCHANT_NAME", "name": "Add Merchant Name", "description": "Tool to add a merchant name keyword to your account's model for predicting merchant names. Use when you want to improve merchant name recognition by training the model with specific merchant names. Changes to your account's model are updated daily and will affect future receipt processing." }, { "slug": "TAGGUN_EXPORT_KNOWN_MERCHANTS", "name": "Export Known Merchants", "description": "Export the complete list of known merchants used for merchant name normalization in Taggun. Returns CSV data with merchant details including location IDs, names, addresses, and coordinates. Use this when you need to retrieve the full merchant registry for synchronization, auditing, or analysis. No parameters required - this is a read-only GET operation." }, { "slug": "TAGGUN_EXPORT_KNOWN_PRODUCT_CODES", "name": "Export Known Product Codes", "description": "Export the complete list of known product codes used for product normalization and matching in Taggun. Returns CSV data with product code information. Use this when you need to retrieve the full product code registry for synchronization, auditing, or analysis. No parameters required - this is a read-only GET operation." }, { "slug": "TAGGUN_EXPORT_PRODUCT_CATEGORIES", "name": "Export Product Categories", "description": "Export a list of product categories and descriptions used for product categorization in CSV format. Returns CSV data with product category information for analysis or synchronization purposes. Use this when you need to retrieve the complete product category registry." }, { "slug": "TAGGUN_GENERATE_MERCHANTS_CSV", "name": "Generate Merchants CSV", "description": "Generate a CSV file with mock merchant data for testing purposes. Creates a temporary CSV file with the specified number of merchant rows, including fields like name, alias, address, coordinates, contact info, and tags. Use this when you need sample merchant data for bulk import operations or testing merchant-related API endpoints. The generated CSV follows a standard format with 10 columns: name, alias, address, postcode, lat, lng, country, phone, email, tags." }, { "slug": "TAGGUN_IMPORT_KNOWN_MERCHANTS", "name": "Import Known Merchants", "description": "Import a list of merchant names and addresses to normalize and match in CSV or TSV format. Use this when you need to bulk upload merchant data for name normalization and matching. File must be less than 20MB and contain merchant information in CSV or TSV format." }, { "slug": "TAGGUN_IMPORT_KNOWN_PRODUCT_CODES", "name": "Import Known Product Codes", "description": "Tool to import a list of product codes in CSV or TSV format for normalization and matching. Use when you need to upload product code data to Taggun for receipt/invoice processing. The file should contain product codes with descriptions (e.g., code,description columns)." }, { "slug": "TAGGUN_IMPORT_PRODUCT_CATEGORIES", "name": "Import Product Categories", "description": "Import a list of product categories and descriptions for product categorization. Accepts CSV or TSV files (less than 20MB) with category and description columns. Use this when you need to bulk import product category data for matching during receipt processing." }, { "slug": "TAGGUN_TRANSCRIBE_RECEIPT_ENCODED_SIMPLE", "name": "Transcribe Receipt from Base64 Encoded Image", "description": "Extract structured data from a receipt or invoice using base64 encoded image data. Provide a base64 encoded image (JPEG, PNG, PDF, GIF) along with filename and content type to get back extracted fields like total amount, date, merchant name, tax, line items, and confidence scores. Use this when you have receipt/invoice image data already encoded as base64 and need to digitize the data. The API uses machine learning OCR to detect and extract key fields automatically." }, { "slug": "TAGGUN_TRANSCRIBE_RECEIPT_ENCODED_VERBOSE", "name": "Transcribe Receipt Encoded Verbose", "description": "Tool to transcribe a receipt using base64 encoded image in JSON payload and return detailed results. Use when you have a base64 encoded receipt image and require comprehensive output including line items, merchant details, and confidence levels. The image must be larger than 1x1 pixels to avoid validation errors." }, { "slug": "TAGGUN_TRANSCRIBE_RECEIPT_FILE_SIMPLE", "name": "Transcribe Receipt File (Simple)", "description": "Tool to upload a receipt or invoice image file and extract basic data including merchant name, total amount, tax amount, and date. Use when you need to digitize receipt data from a file (PDF, JPG, PNG, GIF, HEIC up to 20MB). The API uses OCR to detect and extract key fields." }, { "slug": "TAGGUN_URL", "name": "Process Receipt via URL", "description": "Extract structured data from a receipt or invoice image using OCR. Provide a public URL to a receipt/invoice image (JPEG, PNG, PDF, GIF) and get back extracted fields like total amount, date, merchant name, tax, line items, and confidence scores. Use this when you need to digitize receipt/invoice data from a publicly accessible image URL. The API uses machine learning OCR to detect and extract key fields automatically." }, { "slug": "TAGGUN_URL_VALIDATION", "name": "URL Validation", "description": "Tool to extract and validate receipt data from a URL. Processes a receipt image from a public URL and returns extracted fields with confidence levels to assess receipt authenticity. Use when you have a receipt URL and need to verify it contains valid receipt data." }, { "slug": "TAGGUN_URL_VERBOSE", "name": "URL Verbose", "description": "Tool to process a receipt or invoice from a URL for detailed data extraction. Use when you have a publicly accessible receipt or invoice URL and require comprehensive output including line items, merchant details, and confidence metrics. Call after verifying the URL is reachable." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "taggun_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Taggun API Key", "type": "string", "description": "The API key provided upon registration, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "talenthr", "name": "Talenthr", "logo": "https://logos.composio.dev/api/talenthr", "description": "TalentHR is an intuitive, all-in-one HR tool designed to streamline HR operations for businesses.", "category": "human resources", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TALENTHR_ASSIGN_PERMISSION", "name": "Assign Permission", "description": "Tool to assign permissions to a specific role. Use when you need to grant or revoke permissions for a role after validating both role and permission IDs." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "talenthr_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "TalentHR Domain", "type": "string", "description": "The subdomain of your organization's TalentHR account (e.g., if your URL is https://mycompany.talenthr.io, enter 'mycompany').", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "TalentHR API Key", "type": "string", "description": "The API key generated from TalentHR Settings > Domain settings > API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "talentlms", "name": "Talentlms", "logo": "https://logos.composio.dev/api/talentlms", "description": "Cloud-based learning management system (LMS) for training and development with course creation, user management, and comprehensive reporting.", "category": "online courses", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "talentlms_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your TalentLMS subdomain. If your URL is https://mycompany.talentlms.com/, enter mycompany", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your TalentLMS account, go to Account & Settings, under the Security section, enable API and copy the API Key that is created.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tally", "name": "Tally", "logo": "https://logos.composio.dev/api/tally", "description": "Tally is a form-building platform that allows users to create forms, collect responses, and integrate with various tools and services.", "category": "forms & surveys", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TALLY_CREATE_FORM", "name": "Create Form", "description": "Tool to create a new form. Use after preparing block definitions and optional settings." }, { "slug": "TALLY_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a new webhook for a form. Use after confirming you have the form ID and the callback URL." }, { "slug": "TALLY_DELETE_FORM", "name": "Delete Form", "description": "Tool to delete a specific form identified by its ID. Use after confirming the form should be permanently removed." }, { "slug": "TALLY_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use after confirming the webhook ID." }, { "slug": "TALLY_GET_FORM_DETAILS", "name": "Get Form Details", "description": "Tool to retrieve details of a specific form. Use when you need comprehensive form metadata by ID. Use after confirming the form ID to fetch its full configuration, blocks, and stats." }, { "slug": "TALLY_GET_FORM_RESPONSES", "name": "Get Form Responses", "description": "Tool to retrieve the responses of a specific form. Use after confirming the form ID and when paginated data is needed." }, { "slug": "TALLY_GET_USER_INFO", "name": "Get User Info", "description": "Tool to retrieve information about the authenticated user. Use when you need to confirm account-level details before proceeding. Returns account/workspace context only — not form-level access; follow up with TALLY_LIST_FORMS to verify form access. Confirm the returned workspace and user context match the intended account before creating or modifying resources, as acting on the wrong context places resources in an unintended account. Do not expose sensitive response fields (e.g., tokens) in user-visible output." }, { "slug": "TALLY_GET_WEBHOOK_EVENTS", "name": "Get Webhook Events", "description": "Tool to list events associated with a specific webhook. Use when you need to inspect delivery history after creating or listing a webhook." }, { "slug": "TALLY_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve a single workspace by its ID with associated members. Use when you need to get detailed information about a specific workspace." }, { "slug": "TALLY_LIST_FORM_QUESTIONS", "name": "List Form Questions", "description": "Tool to retrieve all questions from a specific form. Use when you need to list all questions and their structure after obtaining the form ID." }, { "slug": "TALLY_LIST_FORMS", "name": "List Forms", "description": "Tool to retrieve a paginated list of forms. Use when you need to list all forms accessible to the authenticated user." }, { "slug": "TALLY_LIST_ORGANIZATION_INVITES", "name": "List Organization Invites", "description": "Tool to retrieve all pending invites in your organization. Use when you need to view or manage organization invitation status." }, { "slug": "TALLY_LIST_ORGANIZATION_USERS", "name": "List Organization Users", "description": "Tool to retrieve all users in an organization. Use when you need to list organization members or check user permissions." }, { "slug": "TALLY_LIST_WEBHOOKS", "name": "List Webhooks", "description": "Tool to retrieve a paginated list of configured webhooks. Use when you need a full listing of webhooks across your accessible forms and workspaces." }, { "slug": "TALLY_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to retrieve a paginated list of workspaces. Use when you need to browse workspaces accessible to the authenticated user." }, { "slug": "TALLY_UPDATE_FORM", "name": "Update Form", "description": "Tool to update form details. Use after confirming the form exists and obtaining its ID." }, { "slug": "TALLY_UPDATE_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook configuration. Use when you need to modify webhook settings such as URL, event types, or enable/disable status." }, { "slug": "TALLY_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Tool to update the details of a specific workspace identified by its ID. Use when you need to rename a workspace after confirming the workspace ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "tally_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user,forms" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "tally_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Tally API Key", "type": "string", "description": "The API key used for authenticating requests to the Tally API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tapfiliate", "name": "Tapfiliate", "logo": "https://logo.clearbit.com/tapfiliate.com", "description": "Tapfiliate is an affiliate and referral tracking platform that enables businesses to create, track, and scale their affiliate programs efficiently.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 40, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TAPFILIATE_AFFILIATES_RETRIEVE_AN_AFFILIATE", "name": "Retrieve an Affiliate", "description": "Tool to retrieve details of a specific affiliate. Use when you have the affiliate_id and need full affiliate profile." }, { "slug": "TAPFILIATE_CANCEL_PAYMENT", "name": "Cancel a Payment", "description": "Tool to cancel a specific payment. Use when you need to cancel a payment by its payment_id." }, { "slug": "TAPFILIATE_COMMISSIONS_LIST_ALL_COMMISSIONS", "name": "List all commissions", "description": "Tool to retrieve all commissions. Use when you need to fetch commission records with optional filters and pagination after confirming valid API credentials." }, { "slug": "TAPFILIATE_CREATE_AFFILIATE", "name": "Create an Affiliate", "description": "Tool to create a new affiliate account. Use when you need to register a new affiliate with their contact details." }, { "slug": "TAPFILIATE_CREATE_AFFILIATE_GROUP", "name": "Create Affiliate Group", "description": "Tool to create a new affiliate group. Use when you need to organize affiliates into groups for management purposes." }, { "slug": "TAPFILIATE_CREATE_AFFILIATE_NOTE", "name": "Create Affiliate Note", "description": "Tool to create a note for an affiliate. Use when you need to add a note or comment to an affiliate's profile." }, { "slug": "TAPFILIATE_CREATE_AFFILIATE_PROSPECT", "name": "Create Affiliate Prospect", "description": "Tool to create an affiliate prospect. Use when you need to register a new potential affiliate before they become a full affiliate." }, { "slug": "TAPFILIATE_DELETE_AFFILIATE_META_DATA", "name": "Delete affiliate meta data", "description": "Tool to delete metadata by key for an affiliate. Use when you need to remove a specific metadata field from an affiliate's profile." }, { "slug": "TAPFILIATE_DELETE_AFFILIATE_PROSPECT", "name": "Delete an affiliate prospect", "description": "Tool to delete a specific affiliate prospect. Use when you need to remove an affiliate prospect by their affiliate_prospect_id." }, { "slug": "TAPFILIATE_DELETE_AN_AFFILIATE", "name": "Delete an affiliate", "description": "Tool to delete a specific affiliate. Use when you need to remove an affiliate by their affiliate_id after confirming it exists." }, { "slug": "TAPFILIATE_GET_AFFILIATE_BALANCES", "name": "Get Affiliate Balances", "description": "Tool to retrieve an affiliate's balances across multiple currencies. Use when you need to check an affiliate's current balance state." }, { "slug": "TAPFILIATE_GET_AFFILIATE_META_DATA_BY_KEY", "name": "Get Affiliate Meta Data by Key", "description": "Tool to retrieve specific metadata value by key for an affiliate. Use when you need to fetch a single custom metadata field." }, { "slug": "TAPFILIATE_GET_AFFILIATE_PROSPECT", "name": "Get Affiliate Prospect", "description": "Tool to retrieve details of a specific affiliate prospect. Use when you have the affiliate_prospect_id and need prospect information." }, { "slug": "TAPFILIATE_GET_PROGRAM", "name": "Retrieve a Program", "description": "Tool to retrieve details of a specific program. Use when you have the program_id and need full program information." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_CUSTOM_FIELDS", "name": "List affiliate custom fields", "description": "Tool to get custom fields configured for affiliates. Use to retrieve the list of custom field definitions available for affiliate profiles." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_GROUPS", "name": "List all affiliate groups", "description": "Tool to list all affiliate groups. Use to retrieve all affiliate groups in your Tapfiliate account." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_META_DATA", "name": "List Affiliate Meta Data", "description": "Tool to retrieve metadata for a specific affiliate. Use when you need to fetch custom metadata key-value pairs associated with an affiliate." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_NOTES", "name": "List affiliate notes", "description": "Tool to list notes for a specific affiliate. Use when you need to retrieve all notes associated with an affiliate by their ID." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_PAYMENTS", "name": "List affiliate's payments", "description": "Tool to list all payments for a specific affiliate. Use when you need to retrieve payment records for a particular affiliate by their affiliate_id." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_PROGRAMS", "name": "List Affiliate Programs", "description": "Tool to list all programs (affiliations) associated with a specific affiliate. Use when you need to see which programs an affiliate is enrolled in." }, { "slug": "TAPFILIATE_LIST_AFFILIATE_PROSPECTS", "name": "List Affiliate Prospects", "description": "Tool to list all affiliate prospects. Use when you need to retrieve prospects with optional filters by email, referral_code, program_id, or group_id." }, { "slug": "TAPFILIATE_LIST_ALL_AFFILIATES", "name": "List all affiliates", "description": "Tool to list all affiliates. Use after confirming API access to fetch affiliates with optional filters." }, { "slug": "TAPFILIATE_LIST_BALANCES", "name": "List all balances", "description": "Tool to list all outstanding affiliate balances. Use when you need to retrieve balance records for affiliates, typically before processing payments." }, { "slug": "TAPFILIATE_LIST_CONVERSIONS", "name": "List conversions", "description": "Tool to list all conversions. Use to fetch conversion records with optional filters for program, affiliate, date range, and pending status." }, { "slug": "TAPFILIATE_LIST_CUSTOMERS", "name": "List all customers", "description": "Tool to list all customers with optional filtering by program, customer ID, affiliate, or date range. Use after verifying API credentials to fetch customer records." }, { "slug": "TAPFILIATE_LIST_PROGRAM_AFFILIATES", "name": "List program affiliates", "description": "Tool to list all affiliates in a specific program. Use when you need to fetch affiliates enrolled in a particular program with optional filters for source_id, email, parent_id, or affiliate_group_id." }, { "slug": "TAPFILIATE_LIST_PROGRAM_BONUSES", "name": "List program bonuses", "description": "Tool to list all bonuses for a specific program. Use when you need to retrieve performance bonuses configured for a program." }, { "slug": "TAPFILIATE_LIST_PROGRAM_COMMISSION_TYPES", "name": "List program commission types", "description": "Tool to list commission types for a specific program. Use when you need to retrieve all commission types configured for a program after confirming valid API credentials." }, { "slug": "TAPFILIATE_LIST_PROGRAM_MLM_LEVELS", "name": "List program MLM levels", "description": "Tool to list MLM levels for a program. Use when you need to retrieve the multi-level marketing commission structure for a specific program. Returns empty array if no MLM levels are configured." }, { "slug": "TAPFILIATE_PAYMENTS_CREATE_A_PAYMENT", "name": "Create a Payment", "description": "Tool to create a payment. Use when you need to credit an affiliate after confirming transaction details." }, { "slug": "TAPFILIATE_PAYMENTS_LIST_ALL_PAYMENTS", "name": "List all payments", "description": "Tool to list all payments. Use when you need to retrieve paginated payment records after confirming API credentials." }, { "slug": "TAPFILIATE_PAYMENTS_RETRIEVE_A_PAYMENT", "name": "Retrieve a Payment", "description": "Tool to retrieve details of a specific payment. Use when you have the payment_id and need full payment information." }, { "slug": "TAPFILIATE_PAYOUT_METHODS_LIST_ALL_PAYOUT_METHODS", "name": "List all payout methods", "description": "Tool to retrieve a list of all payout methods for an affiliate. Use when fetching available payment options for an affiliate." }, { "slug": "TAPFILIATE_PROGRAMS_LIST_ALL_PROGRAMS", "name": "List all programs", "description": "Tool to list all programs. Use after confirming API credentials to fetch program list with optional asset filters." }, { "slug": "TAPFILIATE_REMOVE_AFFILIATE_GROUP", "name": "Remove affiliate group from affiliate", "description": "Tool to remove affiliate group from an affiliate. Use when you need to unassign an affiliate from their current group, setting their affiliate_group_id to null." }, { "slug": "TAPFILIATE_SET_AFFILIATE_GROUP", "name": "Set Affiliate Group", "description": "Tool to set the affiliate group for a specific affiliate. Use when you need to assign or change an affiliate's group membership." }, { "slug": "TAPFILIATE_SET_AFFILIATE_META_DATA", "name": "Set Affiliate Meta Data", "description": "Tool to update (replace) metadata for an affiliate. Use when you need to set custom metadata fields for a specific affiliate by their affiliate_id." }, { "slug": "TAPFILIATE_SET_AFFILIATE_META_DATA_BY_KEY", "name": "Set Affiliate Metadata by Key", "description": "Tool to set or update a specific metadata field for an affiliate by key. Use when you need to store custom data associated with an affiliate." }, { "slug": "TAPFILIATE_SET_AFFILIATE_PARENT", "name": "Set Affiliate Parent", "description": "Tool to set a parent affiliate relationship for a child affiliate. Use when you need to create a hierarchical affiliate structure by assigning a parent to a child affiliate." }, { "slug": "TAPFILIATE_UPDATE_AFFILIATE_GROUP", "name": "Update Affiliate Group", "description": "Tool to update an affiliate group's details. Use when you need to change the title or other properties of an existing affiliate group." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tapfiliate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Tapfiliate API key, which can be found and managed in your account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tave", "name": "Tave", "logo": "https://logos.composio.dev/api/tave", "description": "Tave is the best Studio Management Application for Photographers, providing tools for client management, job tracking, and business operations.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 129, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TAVE_APPLY_PAYMENT_TO_ORDER", "name": "Apply Payment to Order", "description": "Tool to apply a payment to a specific order in Tave. Use when you need to allocate a payment amount to an order for a job." }, { "slug": "TAVE_CREATE_BRAND", "name": "Create Brand", "description": "Tool to create a new brand in VSCO Workspace. Use when setting up a new brand identity for client-facing portals and communications." }, { "slug": "TAVE_CREATE_CUSTOM_FIELD", "name": "Create Custom Field", "description": "Tool to create a custom field in Tave for Jobs or Contacts. Use when you need to add custom data fields to capture additional information specific to your business workflow." }, { "slug": "TAVE_CREATE_DISCOUNT_TYPE", "name": "Create Discount Type", "description": "Tool to create a new discount type in Tave. Use when you need to create a new discount category for organizing discounts. The name field is required and must be 255 characters or less." }, { "slug": "TAVE_CREATE_GALLERY", "name": "Create Gallery", "description": "Tool to create a new gallery in Tave (VSCO Workspace). Use when you need to create a gallery with a name, client URL, and admin URL. Note that remoteId and remoteCreated are also required." }, { "slug": "TAVE_CREATE_RESOURCE_ADDRESS_BOOK", "name": "Create Address Book Entry", "description": "Tool to create an entry in the address book. Use when you need to add a new person, company, or location to the address book." }, { "slug": "TAVE_CREATE_RESOURCE_DISCOUNT", "name": "Create Discount", "description": "Tool to create a discount in Tave. Use when you need to add a new discount with a name, price, and type ID." }, { "slug": "TAVE_CREATE_RESOURCE_EVENT", "name": "Create Event", "description": "Tool to create a new event in Tave (VSCO Workspace). Use when scheduling meetings, sessions, or appointments." }, { "slug": "TAVE_CREATE_RESOURCE_EVENT_TYPE", "name": "Create Event Type", "description": "Tool to create a new event type in Tave. Use when you need to define a new type of event for scheduling or tracking purposes." }, { "slug": "TAVE_CREATE_RESOURCE_FILE", "name": "Create File", "description": "Tool to create a file in Tave. Use when you need to upload a new file with binary data or link to a remote file. The file can be attached to entities and include metadata. For image files, you can specify dimensions, crop settings, and GPS coordinates." }, { "slug": "TAVE_CREATE_RESOURCE_JOB", "name": "Create Job", "description": "Tool to create a new job in Tave (VSCO Workspace). Use when creating leads or jobs for tracking client projects and workflows." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_CLOSED_REASON", "name": "Create Job Closed Reason", "description": "Tool to create a job closed reason in Tave. Use when you need to add a new reason for why jobs are closed. Job closed reasons help track why opportunities didn't convert into bookings." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_CONTACT", "name": "Create Job Contact", "description": "Tool to create a job contact in Tave. Use when you need to associate a contact with a job." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_ORDER", "name": "Create Job Order", "description": "Tool to create an order on a job in Tave (VSCO Workspace). Use when creating orders for jobs to track sales, invoices, and payments." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_ROLE", "name": "Create Job Role", "description": "Tool to create a job role in Tave (VSCO Workspace). Use when defining roles for clients, subjects, team members, or vendors in workflows." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_TYPE", "name": "Create Job Type", "description": "Tool to create a new job type in Tave. Use when defining a new category of jobs for organizing different types of client projects." }, { "slug": "TAVE_CREATE_RESOURCE_JOB_WORKSHEET", "name": "Create Job Worksheet", "description": "Tool to create a job using a worksheet in Tave (VSCO Workspace). Use when creating jobs with pre-populated contacts and events." }, { "slug": "TAVE_CREATE_RESOURCE_LEAD_SOURCE", "name": "Create Lead Source", "description": "Tool to create a lead source in Tave. Use when you need to track where leads originate from, such as social media, referrals, or websites." }, { "slug": "TAVE_CREATE_RESOURCE_LEAD_STATUS", "name": "Create Lead Status", "description": "Tool to create a lead status in Tave. Use when you need to define a new status for tracking leads in the sales pipeline." }, { "slug": "TAVE_CREATE_RESOURCE_NOTE", "name": "Create Note", "description": "Tool to create a note in Tave (VSCO Workspace). Use when adding notes about jobs, contacts, or other entities in the system." }, { "slug": "TAVE_CREATE_RESOURCE_PAYMENT", "name": "Create Payment", "description": "Tool to create a payment in Tave. Use when recording a payment received for a job." }, { "slug": "TAVE_CREATE_RESOURCE_PRODUCT", "name": "Create Product", "description": "Tool to create a product in Tave. Use when you need to add a new product with name and price." }, { "slug": "TAVE_CREATE_RESOURCE_PRODUCT_TYPE", "name": "Create Product Type", "description": "Tool to create a product type in Tave. Use when defining a new category of products or services for organizing offerings in your business." }, { "slug": "TAVE_CREATE_RESOURCE_PROFIT_CENTER", "name": "Create Profit Center", "description": "Tool to create a profit center in Tave. Use when you need to organize revenue streams or business units for financial tracking and reporting." }, { "slug": "TAVE_CREATE_RESOURCE_REST_HOOK", "name": "Create RestHook Subscription", "description": "Tool to create a RestHook webhook subscription in Tave. Use when setting up webhook notifications for events like contact creation, job creation, order booking, or payment creation." }, { "slug": "TAVE_CREATE_RESOURCE_TAX_RATE", "name": "Create Tax Rate", "description": "Tool to create a tax rate in Tave. Use when you need to add a new tax rate with a name and rate percentage." }, { "slug": "TAVE_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in Tave. Use when you need to add a new user account associated with an existing contact from the address book." }, { "slug": "TAVE_DELETE_ADDRESS_BOOK_ENTRY", "name": "Delete Address Book Entry", "description": "Tool to delete an entry in the address book. Use when you need to permanently remove an address book entry by its ULID. This operation cannot be undone." }, { "slug": "TAVE_DELETE_BRAND", "name": "Delete Brand", "description": "Tool to delete a brand by its ULID. Use when you need to permanently remove a brand from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_CUSTOM_FIELD", "name": "Delete Custom Field", "description": "Tool to delete a custom field by its ULID identifier. Use when you need to remove a custom field permanently." }, { "slug": "TAVE_DELETE_EVENT_TYPE", "name": "Delete Event Type", "description": "Tool to delete an event type by its ULID identifier. Use when you need to permanently remove an event type from the system." }, { "slug": "TAVE_DELETE_GALLERY", "name": "Delete Gallery", "description": "Tool to permanently delete a gallery by its ULID. Use when you need to remove a gallery. Returns 204 No Content on success." }, { "slug": "TAVE_DELETE_RESOURCE_DISCOUNT", "name": "Delete Discount", "description": "Tool to delete a specific discount by its ULID. Use when you need to permanently remove a discount from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_DISCOUNT_TYPE", "name": "Delete Discount Type", "description": "Tool to delete a specific discount type by its ULID. Use when you need to remove a discount type from the system." }, { "slug": "TAVE_DELETE_RESOURCE_EVENT", "name": "Delete Event", "description": "Tool to delete an event by its ULID identifier. Use when you need to permanently remove an event from the system. This operation cannot be undone." }, { "slug": "TAVE_DELETE_RESOURCE_JOB", "name": "Delete Job", "description": "Tool to delete a job by its ULID identifier. Use when you need to permanently remove a job from the system." }, { "slug": "TAVE_DELETE_RESOURCE_JOB_CLOSED_REASON", "name": "Delete Job Closed Reason", "description": "Tool to delete a job closed reason by its ULID identifier. Use when you need to permanently remove a job closed reason from the system." }, { "slug": "TAVE_DELETE_RESOURCE_JOB_CONTACT", "name": "Delete Job Contact", "description": "Tool to delete a job contact by its ULID. Use when you need to permanently remove a job contact from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_JOB_ROLE", "name": "Delete Job Role", "description": "Tool to delete a job role by its ULID identifier. Use when you need to permanently remove a job role from the system." }, { "slug": "TAVE_DELETE_RESOURCE_JOB_TYPE", "name": "Delete Job Type", "description": "Tool to delete a job type by its ULID. Use when you need to permanently remove a job type from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_LEAD_SOURCE", "name": "Delete Lead Source", "description": "Tool to delete a specific lead source by its ULID. Use when you need to permanently remove a lead source from the system." }, { "slug": "TAVE_DELETE_RESOURCE_LEAD_STATUS", "name": "Delete Lead Status", "description": "Tool to delete a specific lead status by its ULID. Use when you need to permanently remove a lead status from the system." }, { "slug": "TAVE_DELETE_RESOURCE_NOTE", "name": "Delete Note", "description": "Tool to delete a note by its ULID identifier. Use when you need to remove a note from the system. Note that this performs a soft delete by setting the 'hidden' field to true." }, { "slug": "TAVE_DELETE_RESOURCE_PAYMENTS", "name": "Delete Payment", "description": "Tool to delete a specific payment by its ULID. Use when you need to permanently remove a payment from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_PRODUCT", "name": "Delete Product", "description": "Tool to delete a specific product by its ULID. Use when you need to permanently remove a product from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_PRODUCT_TYPE", "name": "Delete Product Type", "description": "Tool to delete a specific product type by its ULID. Use when you need to permanently remove a product type from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_PROFIT_CENTER", "name": "Delete Profit Center", "description": "Tool to delete a profit center by its ULID. Use when you need to permanently remove a profit center from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_REST_HOOK", "name": "Delete RestHook", "description": "Tool to unsubscribe from and delete a RestHook webhook subscription by its ULID. Use when you need to permanently remove a webhook registration from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_TAX_GROUP", "name": "Delete Tax Group", "description": "Tool to delete a specific tax group by its ULID. Use when you need to permanently remove a tax group from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_TAX_RATE", "name": "Delete Tax Rate", "description": "Tool to delete a specific tax rate by its ULID. Use when you need to permanently remove a tax rate from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_DELETE_RESOURCE_USER", "name": "Delete User", "description": "Tool to delete a user by its ULID. Use when you need to remove a user from the system. The API returns a 204 No Content status on successful deletion." }, { "slug": "TAVE_GET_BRAND", "name": "Get Brand", "description": "Tool to retrieve a specific brand from Tave by its ULID. Use when you need detailed information about a brand's configuration, including name, contact details, theme settings, and custom domain information." }, { "slug": "TAVE_GET_EVENT", "name": "Get Event", "description": "Tool to get a specific event by its ID. Use when you need to retrieve detailed information about a single event." }, { "slug": "TAVE_GET_EVENT_TYPE", "name": "Get Event Type", "description": "Tool to retrieve a specific event type by ID. Use when you need to fetch details about a specific event type including its name, color, default settings, and metadata." }, { "slug": "TAVE_GET_GALLERY", "name": "Get Gallery", "description": "Tool to retrieve a specific gallery by ID from Tave/VSCO Workspace. Use when you need to fetch details about a gallery including its photos, status, and metadata." }, { "slug": "TAVE_GET_RESOURCE_ADDRESS_BOOK", "name": "Get Address Book Entity", "description": "Tool to fetch a specific Address Book entity by its ULID. Use when you need to retrieve detailed information about a person, company, or location from the address book." }, { "slug": "TAVE_GET_RESOURCE_ADDRESS_BOOK_CA", "name": "Get Address Book Address", "description": "Tool to fetch the address associated with a given location ID. Use when you need to retrieve detailed address information from the Tave address book." }, { "slug": "TAVE_GET_RESOURCE_CUSTOM_FIELD", "name": "Get Custom Field", "description": "Tool to fetch a specific custom field by ID from Tave. Use when you need to retrieve details about a custom field definition." }, { "slug": "TAVE_GET_RESOURCE_DISCOUNT", "name": "Get Discount", "description": "Tool to retrieve a specific discount by its ID. Use when you need to get detailed information about a discount including its name, price, type, and other attributes." }, { "slug": "TAVE_GET_RESOURCE_DISCOUNT_TYPE", "name": "Get Discount Type", "description": "Tool to get a specific discount type by ID. Use when you need to retrieve details about a particular discount type resource." }, { "slug": "TAVE_GET_RESOURCE_JOB", "name": "Get Job", "description": "Tool to fetch a specific job by ID from Tave. Use when you need to retrieve detailed information about a job including its stage, dates, financial data, and associated metadata." }, { "slug": "TAVE_GET_RESOURCE_JOB_CLOSED_REASON", "name": "Get Job Closed Reason", "description": "Tool to retrieve a specific job closed reason by its ID. Use when you need to get detailed information about a job closed reason including its name, description, and reporting settings." }, { "slug": "TAVE_GET_RESOURCE_JOB_CONTACT", "name": "Get Job Contact", "description": "Tool to fetch a specific job contact by ID from Tave. Use when you need to retrieve details about a contact associated with a job." }, { "slug": "TAVE_GET_RESOURCE_JOB_ROLE", "name": "Get Job Role", "description": "Tool to retrieve a specific job role by its ID. Use when you need to get detailed information about a job role including its name, token prefix, kind, and other properties." }, { "slug": "TAVE_GET_RESOURCE_JOB_TYPE", "name": "Get Job Type", "description": "Tool to retrieve a specific job type by ID. Use when you need detailed information about a job type including its name, default contacts, default events, and configuration settings." }, { "slug": "TAVE_GET_RESOURCE_JOB_WORKSHEET", "name": "Get Job Worksheet", "description": "Tool to fetch a Job Worksheet for a specific job by job ID. Use when you need detailed job information including contacts, events, financial data, and workflow details." }, { "slug": "TAVE_GET_RESOURCE_LEAD_SOURCE", "name": "Get Lead Source", "description": "Tool to retrieve a specific lead source by its ID. Use when you need to get detailed information about where a lead originated from." }, { "slug": "TAVE_GET_RESOURCE_LEAD_STATUS", "name": "Get Lead Status", "description": "Tool to retrieve a specific lead status by its ID. Use when you need to get detailed information about a lead status including its transitions and configuration." }, { "slug": "TAVE_GET_RESOURCE_MY_STUDIO", "name": "Get My Studio", "description": "Tool to retrieve information about your studio from Tave. Use when you need to fetch studio configuration settings, including name, currency, date/time formats, and license plan details." }, { "slug": "TAVE_GET_RESOURCE_NOTE", "name": "Get Note", "description": "Tool to fetch a specific note by ID from Tave. Use when you need to retrieve detailed information about a note including its content, author, associated entities, and timestamps." }, { "slug": "TAVE_GET_RESOURCE_ORDER", "name": "Get Order", "description": "Tool to fetch a specific order by ID from Tave. Use when you need to retrieve detailed information about an order including line items, invoices, payment allocations, tax details, and financial totals." }, { "slug": "TAVE_GET_RESOURCE_PAYMENT", "name": "Get Payment", "description": "Tool to fetch a specific payment by ID from Tave. Use when you need to retrieve detailed information about a payment including amount, status, allocations, and refunds." }, { "slug": "TAVE_GET_RESOURCE_PAYMENT_METHOD", "name": "Get Payment Method", "description": "Tool to retrieve a specific payment method by its ID. Use when you need to get detailed information about a payment method including its name, type, and status." }, { "slug": "TAVE_GET_RESOURCE_PRODUCT", "name": "Get Product", "description": "Tool to retrieve a specific product by its ID. Use when you need to get detailed information about a product including its name, price, SKU, and other attributes." }, { "slug": "TAVE_GET_RESOURCE_PRODUCT_TYPE", "name": "Get Product Type", "description": "Tool to retrieve a specific product type by its ID. Use when you need to get detailed information about a product type including its name, kind, and visibility settings." }, { "slug": "TAVE_GET_RESOURCE_PROFIT_CENTER", "name": "Get Profit Center", "description": "Tool to retrieve a specific profit center by its ID. Use when you need to get detailed information about a profit center for tracking revenue and expenses." }, { "slug": "TAVE_GET_RESOURCE_TAX_RATE", "name": "Get Tax Rate", "description": "Tool to retrieve a specific tax rate by its ULID. Use when you need detailed information about a tax rate including its name, rate percentage, and whether it is inclusive." }, { "slug": "TAVE_GET_RESOURCE_TIMEZONE", "name": "Get Timezone", "description": "Tool to retrieve a specific timezone by its ULID from Tave. Use when you need to fetch timezone details including the timezone name, display name, codes, region, and location information." }, { "slug": "TAVE_GET_RESOURCE_USER", "name": "Get User by ID", "description": "Tool to retrieve a specific user by their ULID identifier. Use when you need to get detailed information about a user including their contact ID, username, permissions, and timestamps." }, { "slug": "TAVE_LIST_ADDRESS_BOOK", "name": "List Address Book Contacts", "description": "Tool to list contacts in the studio's address book. Use when you need to retrieve all contacts or filter by email with pagination support." }, { "slug": "TAVE_LIST_BRANDS", "name": "List Brands", "description": "Tool to list brands of a studio. Use when you need to retrieve all brands configured for the studio account." }, { "slug": "TAVE_LIST_DISCOUNT_TYPES", "name": "List Discount Types", "description": "Tool to get a list of discount types from Tave. Use when you need to retrieve available discount types for your account." }, { "slug": "TAVE_LIST_EVENTS", "name": "List Studio Events", "description": "Tool to list a studio's events from Tave. Use when you need to retrieve events with optional filtering by job, external mapping ID, or visibility status." }, { "slug": "TAVE_LIST_EVENT_TYPES", "name": "List Event Types", "description": "Tool to list a studio's event types. Use when you need to retrieve all available event types for a studio." }, { "slug": "TAVE_LIST_FILES", "name": "List Files", "description": "Tool to list files in Tave. Use when you need to retrieve files associated with jobs or contacts. Supports pagination and filtering by job, contact, or external mapping ID." }, { "slug": "TAVE_LIST_RESOURCE_CUSTOM_FIELD", "name": "List Resource Custom Fields", "description": "Tool to list custom fields configured on a studio. Use when you need to retrieve all custom fields or filter them by resource type (contact/job) or kind." }, { "slug": "TAVE_LIST_RESOURCE_DISCOUNT", "name": "List Resource Discount", "description": "Tool to get a list of discounts from Tave. Use when you need to retrieve all available discounts." }, { "slug": "TAVE_LIST_RESOURCE_GALLERY", "name": "List Galleries", "description": "Tool to list all galleries for a studio. Use when you need to retrieve galleries with optional filtering and pagination." }, { "slug": "TAVE_LIST_RESOURCE_JOB", "name": "List Resource Job", "description": "Tool to list jobs of a studio. Use when you need to retrieve all jobs for the studio account, with optional filtering by closed status or external mapping ID." }, { "slug": "TAVE_LIST_RESOURCE_JOB_CLOSED_REASON", "name": "List Job Closed Reasons", "description": "Tool to list a studio's job closed reasons. Use when you need to retrieve all job closed reasons configured for the studio account." }, { "slug": "TAVE_LIST_RESOURCE_JOB_CONTACT", "name": "List Resource Job Contact", "description": "Tool to list a job's contacts. Use when you need to retrieve contacts associated with jobs, with optional filtering by contact ID, job ID, or external mapping ID." }, { "slug": "TAVE_LIST_RESOURCE_JOB_ORDERS", "name": "List Resource Job Orders", "description": "Tool to list orders on a given job. Use when you need to retrieve all orders associated with a specific job." }, { "slug": "TAVE_LIST_RESOURCE_JOB_PAYMENT", "name": "List Job Payments", "description": "Tool to get a list of payments for a specific job. Use when you need to retrieve payment information associated with a particular job." }, { "slug": "TAVE_LIST_RESOURCE_JOB_ROLE", "name": "List Job Roles", "description": "Tool to list a studio's job roles. Use when you need to retrieve all job roles configured for the studio account." }, { "slug": "TAVE_LIST_RESOURCE_JOB_TYPE", "name": "List Resource Job Type", "description": "Tool to list job types of a studio. Use when you need to retrieve all available job types for the studio account, with optional filtering by hidden status or external mapping ID." }, { "slug": "TAVE_LIST_RESOURCE_LEAD_SOURCE", "name": "List Resource Lead Source", "description": "Tool to list lead sources of a studio. Use when you need to retrieve all lead sources for tracking where leads originated from." }, { "slug": "TAVE_LIST_RESOURCE_LEAD_STATUS", "name": "List Resource Lead Status", "description": "Tool to list lead statuses of a studio. Use when you need to retrieve all lead statuses for tracking the state of leads in the sales pipeline." }, { "slug": "TAVE_LIST_RESOURCE_NOTE", "name": "List Resource Note", "description": "Tool to list notes from Tave. Use when you need to retrieve notes associated with jobs or contacts, with support for pagination and filtering." }, { "slug": "TAVE_LIST_RESOURCE_ORDER", "name": "List Resource Order", "description": "Tool to get a list of all orders. Use when you need to retrieve orders across all jobs with pagination support." }, { "slug": "TAVE_LIST_RESOURCE_PAYMENT", "name": "List Resource Payment", "description": "Tool to get a list of payments from Tave. Use when you need to retrieve all payments with optional pagination and sorting." }, { "slug": "TAVE_LIST_RESOURCE_PAYMENT_METHOD", "name": "List Resource Payment Method", "description": "Tool to get a list of payment methods from Tave. Use when you need to retrieve all available payment methods." }, { "slug": "TAVE_LIST_RESOURCE_PRODUCT", "name": "List Resource Product", "description": "Tool to get a list of products from Tave. Use when you need to retrieve all products with optional sorting." }, { "slug": "TAVE_LIST_RESOURCE_PRODUCT_TYPE", "name": "List Product Types", "description": "Tool to get a list of product types from Tave. Use when you need to retrieve all available product types." }, { "slug": "TAVE_LIST_RESOURCE_PROFIT_CENTER", "name": "List Resource Profit Center", "description": "Tool to list profit centers of a studio. Use when you need to retrieve all available profit centers for tracking business segments or cost centers." }, { "slug": "TAVE_LIST_RESOURCE_REST_HOOK", "name": "List REST Hooks", "description": "Tool to list REST hooks configured in Tave. Use when you need to retrieve webhook registrations that notify external services of events." }, { "slug": "TAVE_LIST_RESOURCE_TAX_GROUPS", "name": "List Resource Tax Groups", "description": "Tool to get a list of Tax Groups from Tave. Use when you need to retrieve available tax groups for tax calculations." }, { "slug": "TAVE_LIST_RESOURCE_TAX_RATES", "name": "List Resource Tax Rates", "description": "Tool to get a list of tax rates from Tave. Use when you need to retrieve all available tax rates for your account." }, { "slug": "TAVE_LIST_RESOURCE_TIMEZONE", "name": "List Resource Timezone", "description": "Tool to get a list of timezones from Tave. Use when you need to retrieve available timezones for scheduling or location-based operations." }, { "slug": "TAVE_LIST_RESOURCE_USER", "name": "List Resource User", "description": "Tool to list users of a studio. Use when you need to retrieve all users for the studio account with optional pagination and sorting." }, { "slug": "TAVE_UPDATE_ADDRESS_BOOK", "name": "Update Address Book Entry", "description": "Tool to update a specific entry in the Tave address book. Use when you need to modify contact information, change entry type, or update any fields for an existing address book entry." }, { "slug": "TAVE_UPDATE_BRAND", "name": "Update Brand", "description": "Tool to update a specific brand in Tave. Use when you need to modify brand settings such as name, alias, contact information, theme, or domain configuration." }, { "slug": "TAVE_UPDATE_EVENT_TYPE", "name": "Update Event Type", "description": "Tool to update an existing event type in Tave. Use when you need to modify event type properties like name, color, duration, or classification. Requires the event type ID and at least the required fields (name and tokenPrefix)." }, { "slug": "TAVE_UPDATE_RESOURCE_CUSTOM_FIELD", "name": "Update Custom Field", "description": "Tool to update a specific custom field in Tave. Use when you need to modify custom field properties like name, kind, client access, or visibility." }, { "slug": "TAVE_UPDATE_RESOURCE_EVENT", "name": "Update Event", "description": "Tool to update a specific event in Tave. Use when modifying event details such as name, date/time, location, channel, or other event attributes." }, { "slug": "TAVE_UPDATE_RESOURCE_GALLERY", "name": "Update Gallery", "description": "Tool to update a specific gallery in Tave (VSCO Workspace). Use when you need to modify gallery properties such as name, URLs, status, or settings." }, { "slug": "TAVE_UPDATE_RESOURCE_JOB", "name": "Update Job", "description": "Tool to update a specific job in Tave (VSCO Workspace). Use when modifying existing job details like name, dates, stage, or other job properties." }, { "slug": "TAVE_UPDATE_RESOURCE_JOB_CLOSED_REASON", "name": "Update Job Closed Reason", "description": "Tool to update a job closed reason in Tave. Use when you need to modify the name, description, visibility, or reporting settings of a job closed reason." }, { "slug": "TAVE_UPDATE_RESOURCE_JOB_CONTACT", "name": "Update Job Contact", "description": "Tool to update a specific job contact in Tave. Use when modifying contact associations with jobs, changing client status, or updating job roles for a contact." }, { "slug": "TAVE_UPDATE_RESOURCE_JOB_ROLE", "name": "Update Job Role", "description": "Tool to update a job role in Tave. Use when you need to modify the name, token prefix, kind, visibility, or sort position of a job role." }, { "slug": "TAVE_UPDATE_RESOURCE_JOB_TYPE", "name": "Update Job Type", "description": "Tool to update an existing job type in Tave. Use when modifying properties of a job category such as name, visibility, or associated defaults." }, { "slug": "TAVE_UPDATE_RESOURCE_LEAD_SOURCE", "name": "Update Lead Source", "description": "Tool to update a specific lead source in Tave. Use when you need to modify lead source properties such as name, parent relationship, or visibility." }, { "slug": "TAVE_UPDATE_RESOURCE_LEAD_STATUS", "name": "Update Lead Status", "description": "Tool to update a specific lead status in Tave. Use when you need to modify lead status properties such as name, color, sort position, or automated transition rules." }, { "slug": "TAVE_UPDATE_RESOURCE_NOTE", "name": "Update Note", "description": "Tool to update a specific note in Tave. Use when you need to modify note content or properties such as associated job, contact, or visibility." }, { "slug": "TAVE_UPDATE_RESOURCE_ORDER", "name": "Update Order", "description": "Tool to update a specific order in Tave (VSCO Workspace). Use when modifying existing order details like name, status, line items, or other order properties." }, { "slug": "TAVE_UPDATE_RESOURCE_PROFIT_CENTER", "name": "Update Profit Center", "description": "Tool to update a specific profit center in Tave. Use when you need to modify an existing profit center's name or visibility settings." }, { "slug": "TAVE_UPDATE_RESOURCE_TAX_GROUP", "name": "Update Tax Group", "description": "Tool to update a specific tax group in Tave. Use when you need to modify tax group properties like name, compounding settings, default status, or associated tax rates." }, { "slug": "TAVE_UPDATE_RESOURCE_TAX_RATE", "name": "Update Tax Rate", "description": "Tool to update a specific tax rate in Tave. Use when you need to modify tax rate properties such as name, rate percentage, or inclusive/exclusive status." }, { "slug": "TAVE_UPDATE_RESOURCE_USER", "name": "Update User", "description": "Tool to update a specific user in Tave. Use when you need to modify user properties such as contact association, beta access, admin status, or visibility." }, { "slug": "TAVE_UPDATE_STUDIO_READONLY_MODE", "name": "Update Studio Readonly Mode", "description": "Tool to set studio readonly mode in Tave. Use when you need to enable or disable readonly mode for the authenticated studio." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tave_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Your API secret key. Navigate to Settings > Advanced > New Lead API to retrieve this value.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tawk_to", "name": "Tawk To", "logo": "https://logos.composio.dev/api/tawk_to", "description": "Monitor and chat with visitors on your website, respond to support tickets, organize contacts and create a help center to empower customers to help themselves.", "category": "customer support", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "tawk_to_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "API Key", "type": "string", "description": "Navigate to your tawk.to account > Profile Image > Edit Profile > REST API Keys. Note: You need to request REST API beta access first at https://www.tawk.to/rest-api-beta-access-request/", "required": true, "default": null } ], "optional": [ { "name": "password", "displayName": "Password", "type": "string", "description": "Always use \"f\" as the password for tawk.to API authentication", "required": false, "default": "f" } ] } } } ] }, { "slug": "taxjar", "name": "Taxjar", "logo": "https://logos.composio.dev/api/taxjar", "description": "TaxJar provides a comprehensive sales tax API for real-time tax calculations, reporting, and filing.", "category": "taxes", "authSchemes": [ "API_KEY" ], "toolCount": 21, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TAXJAR_CALCULATE_SALES_TAX_FOR_AN_ORDER", "name": "Calculate Sales Tax For An Order", "description": "Tool to calculate sales tax for an order. Use when you need an accurate tax calculation including nexus addresses, line items, shipping, and exemptions." }, { "slug": "TAXJAR_CREATE_CUSTOMER", "name": "Create Customer", "description": "Tool to create a new customer with exemption information. Use when you need to add a customer to your TaxJar account for tax exemption management." }, { "slug": "TAXJAR_CREATE_ORDER_TRANSACTION", "name": "Create Order Transaction", "description": "Creates a new order transaction in TaxJar for sales tax reporting and compliance. This action records order transactions that will appear in the TaxJar dashboard for tax filing purposes. The transaction includes customer location, order amounts, shipping costs, and sales tax collected. Important: The 'amount' field must include shipping but exclude sales tax. If line_items are provided, their sum (quantity * unit_price - discount) must equal amount minus shipping." }, { "slug": "TAXJAR_CREATE_REFUND_TRANSACTION", "name": "Create Refund Transaction", "description": "Tool to create a new refund transaction. Use after confirming refund details." }, { "slug": "TAXJAR_DELETE_CUSTOMER", "name": "Delete Customer", "description": "Tool to delete an existing customer. Use when you need to remove a previously created customer by its ID. Example: \"Delete customer cust_12345\"." }, { "slug": "TAXJAR_DELETE_ORDER_TRANSACTION", "name": "Delete Order Transaction", "description": "Tool to delete an existing order transaction. Use when you need to remove a previously created order transaction by its ID. Example: \"Delete transaction abc123\"." }, { "slug": "TAXJAR_DELETE_REFUND_TRANSACTION", "name": "Delete Refund Transaction", "description": "Tool to delete an existing refund transaction. Use when you need to remove a previously created refund transaction by its ID. Example: \"Delete refund 243345\"." }, { "slug": "TAXJAR_LIST_CUSTOMERS", "name": "List Customers", "description": "Lists all customer IDs from your TaxJar account. Returns a paginated list of customer IDs (strings). To get full details for a specific customer (including name, address, exemption type, etc.), use the customer ID with the 'Show Customer' action. Use this action to: - Browse all customers in your TaxJar account - Find customer IDs for further operations - Check which customers have been created" }, { "slug": "TAXJAR_LIST_NEXUS_REGIONS", "name": "List Nexus Regions", "description": "Tool to list existing nexus regions for an account. Use after authenticating your account to discover where you have nexus for sales tax purposes." }, { "slug": "TAXJAR_LIST_ORDER_TRANSACTIONS", "name": "List Order Transactions", "description": "List order transaction IDs within a date range. Returns an array of transaction IDs (strings) for orders created between the specified dates. Use this to discover which orders exist in a date range, then use SHOW_ORDER_TRANSACTION to get details for specific IDs." }, { "slug": "TAXJAR_LIST_REFUND_TRANSACTIONS", "name": "List refund transactions", "description": "Lists refund transaction IDs within a specified date range. Returns an array of transaction IDs only. To get detailed information about a specific refund, use the 'Show refund transaction' action with the ID. Useful for finding refunds created through the TaxJar API within a specific time period." }, { "slug": "TAXJAR_LIST_TAX_CATEGORIES", "name": "List Tax Categories", "description": "Tool to list all product tax categories and their codes. Use when you need to discover available tax categories before assigning them to products." }, { "slug": "TAXJAR_SHOW_CUSTOMER", "name": "Show Customer", "description": "Tool to show an existing customer. Use when you need to retrieve details of a specific customer via TaxJar API." }, { "slug": "TAXJAR_SHOW_ORDER_TRANSACTION", "name": "Show Order Transaction", "description": "Tool to show an existing order transaction by ID. Use when you need to retrieve full details of a specific order transaction after creation or listing." }, { "slug": "TAXJAR_SHOW_REFUND_TRANSACTION", "name": "Show Refund Transaction", "description": "Retrieves detailed information about a specific refund transaction from TaxJar. Use this tool when you need to: - View complete details of a refund transaction including amounts, addresses, and line items - Verify refund transaction data that was previously created - Audit refund information for tax reporting purposes Requires a valid transaction_id that was previously created through TaxJar's API." }, { "slug": "TAXJAR_SHOW_TAX_RATES_FOR_A_LOCATION", "name": "Show Tax Rates for a Location", "description": "Tool to show sales tax rates for a location. Use when you need to retrieve sales tax rates for a specific ZIP code with optional address details (city, state, country, street)." }, { "slug": "TAXJAR_SUMMARIZE_TAX_RATES_FOR_ALL_REGIONS", "name": "Summarize Tax Rates for All Regions", "description": "Tool to retrieve minimum and average sales tax rates by region. Use when you need a backup of regional tax summary rates." }, { "slug": "TAXJAR_UPDATE_CUSTOMER", "name": "Update Customer", "description": "Tool to update an existing customer in TaxJar. Use when you need to modify customer details such as exemption type, name, or address information." }, { "slug": "TAXJAR_UPDATE_ORDER_TRANSACTION", "name": "Update Order Transaction", "description": "Tool to update an existing order transaction. Use when adjusting order details such as amount, shipping, or line items after creation." }, { "slug": "TAXJAR_UPDATE_REFUND_TRANSACTION", "name": "Update Refund Transaction", "description": "Tool to update an existing refund transaction. Use when adjusting refund details such as amount, shipping, or line items after creation." }, { "slug": "TAXJAR_VALIDATE_VAT_NUMBER", "name": "Validate VAT Number", "description": "Validates EU VAT identification numbers against the VIES (VAT Information Exchange System) database. Use this tool to: - Verify VAT number format and validity - Check if a VAT number is registered and active in the EU - Retrieve associated company name and address when available - Confirm tax-exempt eligibility before processing transactions The validation queries the European VIES database when available, returning company details for valid registrations. When VIES is unavailable, it falls back to format-based validation using regex patterns." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "taxjar_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "TaxJar API Token", "type": "string", "description": "The API token generated from the TaxJar account, used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teableai", "name": "Teableai", "logo": "https://logos.composio.dev/api/teableai", "description": "Teable is a no-code database and spreadsheet platform that combines the simplicity of spreadsheets with the power of databases", "category": "productivity", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "teableai_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "table|read,table|create,table|update,table|delete,record|read,record|create,record|update,record|delete,base|read,user|email_read" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Teable instance URL (e.g., https://app.teable.ai or your self-hosted domain)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "teableai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "Your Teable instance URL (e.g., https://app.teable.ai or your self-hosted domain)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Create a Personal Access Token at https://app.teable.ai/setting/personal-access-token", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "team_sms", "name": "Team Sms", "logo": "https://logos.composio.dev/api/team_sms", "description": "Effortlessly share 2FA SMS with your team", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEAM_SMS_GET_CURRENT_USER", "name": "Get current user information", "description": "Tool to retrieve current authenticated user information including profile details and API key. Use when you need to access user data such as id, email, full_name, avatar_url, billing_address, payment_method, created_at, updated_at, last_sign_in_at, and api_key." }, { "slug": "TEAM_SMS_LIST_PHONE_NUMBERS_OWNED", "name": "List Phone Numbers Owned", "description": "Tool to retrieve all phone numbers owned by the authenticated user. Returns subscription status information including phone_number, status (active, trialing, canceled, etc.), created_at, and cancel_at dates." }, { "slug": "TEAM_SMS_LIST_SMS", "name": "List Received SMS Messages", "description": "Tool to list all received SMS messages. Returns SMS objects with message content, sender info, timestamps, and extracted auth codes for 2FA messages." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "team_sms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from Team SMS API Documentation at https://teamsms.io/api-doc", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teamcamp", "name": "Teamcamp", "logo": "https://logos.composio.dev/api/teamcamp", "description": "An all-in-one project management tool designed for teams to efficiently manage projects, collaborate seamlessly, and streamline workflows.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEAMCAMP_CREATE_PROJECT", "name": "Create Project", "description": "Tool to create a new project in the workspace. Use when you need to set up a new project with optional customer association, dates, and template." }, { "slug": "TEAMCAMP_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task within a specified project. Use when you have the project ID and task details ready." }, { "slug": "TEAMCAMP_CREATE_TASK2", "name": "Create Task (V2)", "description": "Tool to create a new task in a TeamCamp project. Requires both 'name' and 'taskName' fields per API requirements." }, { "slug": "TEAMCAMP_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a specific project by its ID. Use when you need to permanently remove a project after confirming it's no longer needed." }, { "slug": "TEAMCAMP_GET_COMPANY_CUSTOMERS", "name": "Get Company Customers", "description": "Tool to retrieve all customers in the company/workspace. Use when you need to get customer information or list all customers." }, { "slug": "TEAMCAMP_GET_COMPANY_USERS", "name": "Get Company Users", "description": "Tool to retrieve all users in the company/workspace. Use when you need to list all team members or check user details." }, { "slug": "TEAMCAMP_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to get comprehensive project details including core fields, configuration, user data, feature toggles, and related resources. Use when you need detailed information about a specific project." }, { "slug": "TEAMCAMP_GET_PROJECT_GROUPS", "name": "Get Project Groups", "description": "Tool to retrieve all groups within a specific project. Use when you need to list project groups for organization or task assignment." }, { "slug": "TEAMCAMP_GET_PROJECT_LIST", "name": "Get Project List", "description": "Tool to retrieve all projects within the workspace. Use when you need an overview of available projects." }, { "slug": "TEAMCAMP_GET_TASK", "name": "Get Task", "description": "Tool to retrieve details of a specific task by its unique identifier. Use when you need complete information about a single task." }, { "slug": "TEAMCAMP_GET_TASK_LIST_FILTERED", "name": "Get Task List (Filtered)", "description": "Tool to retrieve a list of tasks from a project with optional completion status filtering. Use when you need to get all tasks or filter by completed/incomplete status." }, { "slug": "TEAMCAMP_POST_TASK_COMMENT", "name": "Post Task Comment", "description": "Tool to post a new comment on a task. Use when you need to add a comment to an existing task." }, { "slug": "TEAMCAMP_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project's details by its unique identifier. Use when you need to modify project name, dates, description, or settings." }, { "slug": "TEAMCAMP_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task by its unique identifier. Use when you need to modify task properties like name, description, priority, due date, assignees, or status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "teamcamp_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Teamcamp API Key", "type": "string", "description": "Your Teamcamp API Key, obtainable from your Teamcamp Account Settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teamdeck", "name": "Teamdeck", "logo": "https://logos.composio.dev/api/teamdeck", "description": "Teamdeck is an employee-focused complete resource management solution for agencies and software houses. Schedule your teams, track their time and vacations in one tool.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "teamdeck_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Settings > Integrations > API keys in your Teamdeck account to generate an API key. You must be an owner of your Teamdeck organization to access this.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teamdesk", "name": "Teamdesk", "logo": "https://logos.composio.dev/api/teamdesk", "description": "TeamDesk is a cloud-based database management platform that enables teams to build custom applications without coding.", "category": "productivity", "authSchemes": [ "API_KEY", "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "teamdesk_basic_auth", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_id", "displayName": "Database ID", "type": "string", "description": "Your TeamDesk database ID (appid)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "teamdesk_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "API token from Setup > Database > Integration API > REST API Authorization Tokens", "required": true, "default": null }, { "name": "generic_id", "displayName": "Database ID", "type": "string", "description": "Your TeamDesk database ID (appid)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teamleader", "name": "Teamleader", "logo": "https://logos.composio.dev/api/teamleader", "description": "Teamleader Focus is a work management platform that combines CRM, project management, and invoicing for small businesses and freelancers.", "category": "crm", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "teamleader_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "companies,contacts,deals,departments,events,invoices,products,projects,quotations,subscriptions,tickets,todos,users" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "telegram", "name": "Telegram", "logo": "https://logos.composio.dev/api/telegram", "description": "Telegram is a cloud-based messaging app with a focus on security and speed. Build bots to send messages, manage chats, and interact with users.", "category": "team chat", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TELEGRAM_ANSWER_CALLBACK_QUERY", "name": "Answer Callback Query", "description": "Use this method to send answers to callback queries sent from inline keyboards. The answer will be displayed to the user as a notification at the top of the chat screen or as an alert." }, { "slug": "TELEGRAM_CREATE_CHAT_INVITE_LINK", "name": "Export Chat Invite Link", "description": "Generate a new primary invite link for a chat; any previously generated primary link is revoked. The bot must be an administrator in the chat for this to work and must have the appropriate administrator rights." }, { "slug": "TELEGRAM_DELETE_MESSAGE", "name": "Delete Message", "description": "Delete a message, including service messages. Limitations: cannot delete messages older than 48 hours in groups, forwarded messages, or content in protected chats (returns 400 'message can’t be deleted'). Bot must have delete/manage rights in the target chat; works reliably only on bot-authored messages in groups. Verify permissions via TELEGRAM_GET_CHAT or TELEGRAM_GET_CHAT_ADMINISTRATORS before calling. On flood control, Telegram returns HTTP 429 with a retry_after field; honor that backoff value." }, { "slug": "TELEGRAM_EDIT_MESSAGE", "name": "Edit Message", "description": "Edit text messages sent by the bot. Only bot-authored messages can be edited; editing messages from other users will fail. In groups, the bot must have edit permissions." }, { "slug": "TELEGRAM_FORWARD_MESSAGE", "name": "Forward Message", "description": "Forward messages of any kind. Service messages can't be forwarded." }, { "slug": "TELEGRAM_GET_CHAT", "name": "Get Chat Info", "description": "Get up to date information about the chat (current name of the user for one-on-one conversations, current username of a user, group or channel, etc.). The bot must be a member of or have access to the target chat; calls fail if the bot was never added, was removed, or is blocked." }, { "slug": "TELEGRAM_GET_CHAT_ADMINISTRATORS", "name": "Get Chat Administrators", "description": "Get a list of administrators in a chat. On success, returns an Array of ChatMember objects containing information about all chat administrators except other bots. Only meaningful for supergroups and channels; private chats yield no useful data. The bot must be a member of the chat; if the bot has admin rights, its own entry will appear in the result, useful for verifying its permissions before moderation actions." }, { "slug": "TELEGRAM_GET_CHAT_HISTORY", "name": "Get Chat History", "description": "Get chat history messages via the getUpdates polling method, filtered by chat_id. Returns only updates from the specified chat. Bot can only retrieve messages sent after it joined the chat; missing older messages is expected. Requires no active webhook — a webhook causes HTTP 409 conflict; delete it before using this tool. Empty result arrays (ok=true) indicate no accessible messages, not a failure. Returned message dates are Unix timestamps in UTC seconds." }, { "slug": "TELEGRAM_GET_CHAT_MEMBER", "name": "Get Chat Member", "description": "Get a chat member's status/role (including the bot itself) to preflight permissions and troubleshoot 403/empty-history issues. Use before sending messages to verify bot membership and permissions." }, { "slug": "TELEGRAM_GET_CHAT_MEMBERS_COUNT", "name": "Get Chat Members Count", "description": "Get the number of members in a chat. The bot must be an administrator in the chat for this to work. Insufficient admin permissions surface as authorization errors, not as a zero or empty count." }, { "slug": "TELEGRAM_GET_ME", "name": "Get Bot Info", "description": "Get basic information about the bot using the Bot API getMe method. Returns fields like id, username, first_name, and capabilities. If the response returns ok=false, the bot token is invalid or revoked and must be replaced before any other API calls. Bot name, bio, and profile description are read-only via the Bot API; modify them via BotFather." }, { "slug": "TELEGRAM_GET_UPDATES", "name": "Get Updates", "description": "Use this method to receive incoming updates using long polling. An Array of Update objects is returned. IMPORTANT: This method will not work if an outgoing webhook is set up. Webhooks and getUpdates are mutually exclusive — call deleteWebhook first to switch modes (409 Conflict otherwise). Notes: - Only one method (webhook or polling) can be active at a time - Updates available for up to 24 hours if unclaimed - Recalculate offset after each response to avoid duplicates - Empty result array (ok=true) is valid, meaning no new updates - On HTTP 429, honor the retry_after value; keep polling to ~1 request/second - Only chats with updates since the bot joined or last offset appear in results - Update objects vary by type; always check update.message and update.message.text exist before accessing" }, { "slug": "TELEGRAM_SEND_DOCUMENT", "name": "Send Document", "description": "Send general files (documents) to a Telegram chat using the Bot API. Prefer over TELEGRAM_SEND_PHOTO when original file format or image resolution must be preserved. Rapid sends trigger flood control (HTTP 429 with `retry_after` seconds); limit to ~1 message/second per chat and wait the specified `retry_after` duration before retrying." }, { "slug": "TELEGRAM_SEND_LOCATION", "name": "Send Location", "description": "Send point on the map location to a Telegram chat using the Bot API." }, { "slug": "TELEGRAM_SEND_MESSAGE", "name": "Send Message", "description": "Send a text message to a Telegram chat using the Bot API. Bots must be members of target groups/channels with post rights. Rate limit: ~1 msg/sec per chat, ~30 msg/sec globally; exceeding returns 429 with retry_after seconds that must be honored." }, { "slug": "TELEGRAM_SEND_PHOTO", "name": "Send Photo", "description": "Send photos to a Telegram chat using the Bot API. Telegram compresses and re-encodes images; use TELEGRAM_SEND_DOCUMENT to preserve original resolution/format. Each call produces a separate post; no media-group/album support. Returns HTTP 429 with `retry_after` seconds when sending too rapidly." }, { "slug": "TELEGRAM_SEND_POLL", "name": "Send Poll", "description": "Send a native poll to a Telegram chat using the Bot API." }, { "slug": "TELEGRAM_SET_MY_COMMANDS", "name": "Set Bot Commands", "description": "Use this method to change the list of the bot's commands. See https://core.telegram.org/bots#commands for more details about bot commands." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "telegram_bot_token", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Bot Token", "type": "string", "description": "Your bot's token, e.g. 123456:ABC-DEF1234ghIkl. In Telegram, message @BotFather and send /newbot (or /token for existing bots). Connects a bot, not your personal account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "telnyx", "name": "Telnyx", "logo": "https://logos.composio.dev/api/telnyx", "description": "Telnyx is a communications platform offering voice, messaging, and data services through a global private network.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TELNYX_CREATE_NETWORK", "name": "Create Network", "description": "Tool to create a new network. Use when you need to provision a fresh network resource before connecting devices." }, { "slug": "TELNYX_CREATE_NOTIFICATION_CHANNEL", "name": "Create Notification Channel", "description": "Tool to create a notification channel. Use when you need to register a channel (SMS, voice, email, or webhook) to receive notifications. E.g., create a webhook channel for event callbacks." }, { "slug": "TELNYX_CREATE_NOTIFICATION_PROFILE", "name": "Create Notification Profile", "description": "Tool to create a notification profile. Use when you need to register a new profile to group notification channels (SMS and voice) and define notification settings. Must be called before TELNYX_CREATE_NOTIFICATION_CHANNEL, as channel creation requires the notification_profile_id returned by this tool." }, { "slug": "TELNYX_CREATE_NOTIFICATION_SETTING", "name": "Create Notification Setting", "description": "Tool to add a notification setting. Use after creating the event condition, profile, and channel. All three UUID parameters must be fetched dynamically from their respective list/create endpoints; hardcoded IDs are not portable across accounts." }, { "slug": "TELNYX_DELETE_NETWORK", "name": "Delete Network", "description": "Tool to delete a network by ID. Use when you have obtained the network's identifier and need to remove it permanently." }, { "slug": "TELNYX_DELETE_NOTIFICATION_CHANNEL", "name": "Delete Notification Channel", "description": "Tool to delete a notification channel by ID. Use when you have the channel's identifier and need to remove it permanently." }, { "slug": "TELNYX_DELETE_NOTIFICATION_PROFILE", "name": "Delete Notification Profile", "description": "Tool to delete a notification profile by ID. Use when you have the profile's identifier and need to remove it permanently." }, { "slug": "TELNYX_DELETE_NOTIFICATION_SETTING", "name": "Delete Notification Setting", "description": "Tool to delete a notification setting by ID. Use when you need to permanently remove an existing notification setting before reconfiguration." }, { "slug": "TELNYX_GET_BLACK_BOX_TEST_RESULTS", "name": "Get Black Box Test Results", "description": "Tool to retrieve black box test results from Telnyx SETI Observability. Use when you need to check service health and test results, optionally filtering by product." }, { "slug": "TELNYX_GET_USER_BALANCE", "name": "Get User Balance", "description": "Tool to retrieve the current user account balance and credit details. Use after authenticating your account to check available balance." }, { "slug": "TELNYX_LIST_AUDIT_LOGS", "name": "List Audit Logs", "description": "Tool to retrieve a list of audit log entries for your account. Use when you need to review recent resource changes with optional pagination and date filters." }, { "slug": "TELNYX_LIST_CONNECTIONS", "name": "List Connections", "description": "Tool to retrieve all connections in your account. Use when you need to list connections with pagination, filtering, and sorting." }, { "slug": "TELNYX_LIST_DYNAMIC_EMERGENCY_ENDPOINTS", "name": "List Dynamic Emergency Endpoints", "description": "Tool to list dynamic emergency endpoints. Use when you need to retrieve dynamic emergency endpoint records, optionally filtered by status or country. Example: \"List all activated endpoints in US\"." }, { "slug": "TELNYX_LIST_GLOBAL_IP_HEALTH_CHECK_TYPES", "name": "List Global IP Health Check Types", "description": "Tool to list all available global IP health check types. Use when you need to retrieve supported health check types for global IP configurations." }, { "slug": "TELNYX_LIST_MESSAGING_PROFILES", "name": "List Messaging Profiles", "description": "Tool to list messaging profiles. Use when you need to retrieve messaging profiles with optional pagination." }, { "slug": "TELNYX_LIST_MESSAGING_URL_DOMAINS", "name": "List Messaging URL Domains", "description": "Tool to list configured messaging URL domains. Use when you need to retrieve messaging URL domains for a profile." }, { "slug": "TELNYX_LIST_MOBILE_NETWORK_OPERATORS", "name": "List Mobile Network Operators", "description": "Tool to list available mobile network operators. Use when you need to discover operators optionally filtered by country code, operator name, or with pagination." }, { "slug": "TELNYX_LIST_NETWORK_INTERFACES", "name": "List Network Interfaces", "description": "Tool to list all network interfaces for a specified network. Use after retrieving a network's ID to enumerate its interfaces." }, { "slug": "TELNYX_LIST_NETWORKS", "name": "List Networks", "description": "Tool to list all networks in your account. Use when you need to retrieve networks with optional pagination and filtering." }, { "slug": "TELNYX_LIST_NOTIFICATION_CHANNELS", "name": "List Notification Channels", "description": "Tool to list all notification channels. Use when you need to retrieve and paginate existing notification channels, optionally filtering by channel type." }, { "slug": "TELNYX_LIST_NOTIFICATION_EVENT_CONDITIONS", "name": "List Notification Event Conditions", "description": "Tool to list all notification event conditions. Use when you need to retrieve and paginate notification event conditions, optionally filtering by associated record type." }, { "slug": "TELNYX_LIST_NOTIFICATION_EVENTS", "name": "List Notification Events", "description": "Tool to list all notification events with their IDs. Use to dynamically retrieve notification_event_condition_id values before configuring webhook subscriptions — IDs are account-specific and must not be hardcoded, as stale IDs silently prevent events (e.g., call routing, recording) from reaching the webhook." }, { "slug": "TELNYX_LIST_NOTIFICATION_PROFILES", "name": "List Notification Profiles", "description": "Tool to list all notification profiles. Use when you need to retrieve and paginate your notification profiles with optional pagination." }, { "slug": "TELNYX_LIST_PHONE_NUMBERS", "name": "List Phone Numbers", "description": "Tool to list phone numbers associated with your account. Use when you need to retrieve and filter your phone numbers with optional pagination and sorting." }, { "slug": "TELNYX_LIST_SSO_AUTHENTICATION_PROVIDERS", "name": "List SSO Authentication Providers", "description": "Tool to retrieve all configured SSO authentication providers. Use after authenticating to enumerate your organization's SSO providers." }, { "slug": "TELNYX_RETRIEVE_NETWORK", "name": "Retrieve Network", "description": "Tool to retrieve details of a specific network by ID. Use after obtaining the network's identifier to fetch its current attributes before update or delete operations." }, { "slug": "TELNYX_RETRIEVE_NOTIFICATION_CHANNEL", "name": "Retrieve Notification Channel", "description": "Tool to retrieve a notification channel by ID. Use after you have a channel ID and need its details, such as name, type, and status." }, { "slug": "TELNYX_RETRIEVE_NOTIFICATION_PROFILE", "name": "Retrieve Notification Profile", "description": "Tool to retrieve a notification profile by ID. Use after obtaining the profile ID when you need details about its webhook endpoints and subscribed events." }, { "slug": "TELNYX_RETRIEVE_NOTIFICATION_SETTING", "name": "Retrieve Notification Setting", "description": "Tool to retrieve a notification setting by ID. Use after obtaining the notification setting ID to fetch its details, such as status, parameters, and associated channel." }, { "slug": "TELNYX_UPDATE_NETWORK", "name": "Update Network", "description": "Tool to update details of an existing network. Use when you have a network's identifier and need to modify its name or tags." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "telnyx_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Telnyx API Key", "type": "string", "description": "The API Key used to authenticate requests to the Telnyx API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "teltel", "name": "Teltel", "logo": "https://logos.composio.dev/api/teltel", "description": "TelTel is a telecom operator and software provider offering tools for automated voice and SMS communication, including cloud-based contact center software, Voice/SMS API, VoIP/SIP trunking, auto dialer, webphone integration, Click2Call, and webhook-based call event tracking for CRM integration.", "category": "phone & sms", "authSchemes": [ "API_KEY" ], "toolCount": 26, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TELTEL_CREATE_AUTODIALER_CUSTOM_STATUS", "name": "Create Autodialer Custom Status", "description": "Tool to create a custom status for autodialer contacts. Use when you need to add a new status option that agents can use to categorize contacts in the Operator Dashboard." }, { "slug": "TELTEL_CREATE_CALL", "name": "Create Call", "description": "Tool to create a call between two participants. Use when you need to initiate an outbound call connecting a caller to a destination number." }, { "slug": "TELTEL_CREATE_USER_STATUS", "name": "Create User Status", "description": "Tool to create a user status in TelTel. Use when you need to add a new status option for users." }, { "slug": "TELTEL_DELETE_AUTODIALER_CUSTOM_STATUS", "name": "Delete Autodialer Custom Status", "description": "Tool to delete an autodialer custom status by ID. Use when you need to remove a custom status from your autodialer configuration." }, { "slug": "TELTEL_DELETE_USER_STATUS", "name": "Delete User Status", "description": "Tool to delete a user status by ID. Use when you need to remove an existing user status from TelTel." }, { "slug": "TELTEL_GET_ACCOUNT_BALANCE", "name": "Get Account Balance", "description": "Tool to retrieve the account balance for your TelTel account. Use when you need to check available credit or account balance information." }, { "slug": "TELTEL_GET_CALL_LIST", "name": "Get Call List", "description": "Tool to retrieve a list of calls with details (duration, time, status). Use when you need to filter and page through call records." }, { "slug": "TELTEL_GET_COUNTRY", "name": "Get Country", "description": "Tool to retrieve country resource information by ID from TelTel. Use when you need to fetch details about a specific country for DID number provisioning." }, { "slug": "TELTEL_GET_SMS_LIST", "name": "Get SMS List", "description": "Tool to retrieve a list of sent (outbox) or received (inbox) SMS messages from TelTel. Use when you need to filter or paginate through SMS message history. Supports filtering by date, sender, recipient, and message state." }, { "slug": "TELTEL_GET_USER_CID_GROUPS", "name": "Get User Caller ID Groups", "description": "Tool to retrieve caller ID groups for a specific user. Use when you need to fetch the list of CID groups associated with a user account." }, { "slug": "TELTEL_GET_USERS_LIST", "name": "Get Users List", "description": "Tool to retrieve a list of users from your TelTel account. Use when you need to page through or synchronize user records." }, { "slug": "TELTEL_LIST_AUTODIALER_ACTIONS", "name": "List Autodialer Actions", "description": "Tool to retrieve the action history for an autodialer campaign. Use when you need to view the list of actions performed on a specific autodialer campaign." }, { "slug": "TELTEL_LIST_AUTODIALER_CONTACTS", "name": "List Autodialer Contacts", "description": "Tool to retrieve the contact list for an autodialer campaign. Use when you need to view contacts, filter by phone number or start time, or paginate through campaign contacts." }, { "slug": "TELTEL_LIST_AUTODIALER_CUSTOM_STATUSES", "name": "List Autodialer Custom Statuses", "description": "Tool to retrieve list of autodialer custom statuses. Use when you need to view all available custom statuses for autodialer campaigns." }, { "slug": "TELTEL_LIST_AUTO_DIALERS", "name": "List Autodialer Campaigns", "description": "Tool to retrieve a list of autodialer campaigns from TelTel. Use when you need to view all autodialer campaigns and their details." }, { "slug": "TELTEL_LIST_AVAILABLE_COUNTRIES", "name": "List Available Countries", "description": "Tool to get the list of countries where DID numbers are available for purchase. Use when you need to discover which countries support phone number provisioning or filter countries by pricing and features." }, { "slug": "TELTEL_LIST_COUNTRY_PRICE_GROUPS", "name": "List Country Price Groups", "description": "Tool to retrieve phone number price groups available in a specific country. Use when you need to view pricing tiers or filter available phone number groups by country." }, { "slug": "TELTEL_LIST_DEVICES", "name": "List Devices", "description": "Tool to retrieve a list of devices from your TelTel account. Use when you need to view all registered devices and their connection status." }, { "slug": "TELTEL_LIST_MY_NUMBERS", "name": "List My Numbers", "description": "Tool to retrieve a list of phone numbers (DIDs) owned by the account. Use when you need to view all purchased phone numbers or filter by activation status, auto-renew settings, or SMS/voice support." }, { "slug": "TELTEL_LIST_ORDERS", "name": "List DID Orders", "description": "Tool to retrieve a list of DID (phone number) orders from TelTel. Use when you need to check order status, view order history, or filter orders by specific criteria like status or type." }, { "slug": "TELTEL_LIST_USER_STATUSES", "name": "List User Statuses", "description": "Tool to retrieve a list of all user statuses in TelTel. Use when you need to view available status options for users." }, { "slug": "TELTEL_LOOKUP_PHONE_NUMBER", "name": "Lookup Phone Number", "description": "Tool to perform HLR (Home Location Register) lookup for phone numbers via TelTel API. Use when you need to verify phone number validity, check network status, or retrieve carrier information. Supports single or multiple phone numbers in one request." }, { "slug": "TELTEL_RECEIVE_INBOUND_SMS", "name": "Receive Inbound SMS", "description": "Tool to process inbound SMS webhook data from TelTel. Use this to handle incoming SMS notifications that TelTel sends to your configured webhook URL. This action parses and validates the webhook payload, returning the SMS details in a structured format for further processing. Note: TelTel sends inbound SMS data via GET request with query parameters. Configure your webhook URL in TelTel account settings." }, { "slug": "TELTEL_SET_USER_STATUS", "name": "Set User Status", "description": "Tool to set a user's status in TelTel. Use when you need to update a user's availability or activity status." }, { "slug": "TELTEL_UPDATE_AUTODIALER_CUSTOM_STATUS", "name": "Update Autodialer Custom Status", "description": "Tool to update an autodialer custom status value by ID. Use when you need to rename or modify an existing custom status label." }, { "slug": "TELTEL_UPDATE_USER_STATUS", "name": "Update User Status", "description": "Tool to update an existing user status in TelTel. Use when you need to modify the name, enabled state, or offline state of a user status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "teltel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "TelTel API Key", "type": "string", "description": "The API key required for authenticating requests to the TelTel API. Obtain it from the 'Settings' section of your TelTel account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "templated", "name": "Templated", "logo": "https://logos.composio.dev/api/templated", "description": "Templated is a platform that automates the generation of images and PDFs through a simple API, allowing users to design templates and render them multiple times with dynamic content.", "category": "images & design", "authSchemes": [ "API_KEY" ], "toolCount": 30, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "TEMPLATED_ADD_TAGS_TO_TEMPLATE", "name": "Add Tags to Template", "description": "Tool to append new tags to an existing template without overwriting existing tags. Use when you already have the template ID and want to add additional tags." }, { "slug": "TEMPLATED_CLONE_TEMPLATE_ACTION", "name": "Clone Template", "description": "Tool to clone an existing template. Use after you have a template ID and want to duplicate it with a new name. Example: \"Clone template tpl_123 as 'Copy of Template'\"." }, { "slug": "TEMPLATED_COUNT_TEMPLATE_CLONES", "name": "Count Template Clones", "description": "Tool to get the count of cloned templates for a specific source template. Use when you need to know how many clones exist for a particular template without retrieving the full list." }, { "slug": "TEMPLATED_CREATE_FOLDER", "name": "Create Folder", "description": "Tool to create a new folder for organizing templates and renders. Use when you need to organize templates into logical groups." }, { "slug": "TEMPLATED_CREATE_RENDER", "name": "Create Template Render", "description": "Create document renders from templates. Supports single/batch rendering with extensive customization. Returns a list of render objects (one per page for multi-page templates)." }, { "slug": "TEMPLATED_CREATE_TEMPLATE", "name": "Create Template", "description": "Tool to create a new template with specified dimensions and layers. Use when you need to programmatically define a template with background images, text overlays, or shapes." }, { "slug": "TEMPLATED_DELETE_FOLDER", "name": "Delete Folder", "description": "Tool to delete a folder by its ID. The folder must be empty before deletion. Use when you have confirmed the folder ID and need to remove it permanently." }, { "slug": "TEMPLATED_DELETE_RENDER", "name": "Delete Render", "description": "Tool to delete a specific render by its ID. Use when you need to permanently remove a render and its associated output files." }, { "slug": "TEMPLATED_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template by its unique ID. Use when you have confirmed the template ID and need to remove it permanently." }, { "slug": "TEMPLATED_DUPLICATE_RENDER", "name": "Duplicate Template Render", "description": "Tool to duplicate an existing render with the same settings and template. Use when you need to create a copy of a render. The duplicated render will use the same template and payload as the original." }, { "slug": "TEMPLATED_GET_ACCOUNT_INFORMATION", "name": "Get Account Information", "description": "Tool to retrieve account information, including email, name, team name, API usage statistics, and subscription plan. Use to check current API quota usage or verify API token validity." }, { "slug": "TEMPLATED_LIST_ALL_TEMPLATES", "name": "List All Templates", "description": "Tool to list all templates of a user. Use when you need to retrieve available templates with optional pagination." }, { "slug": "TEMPLATED_LIST_FOLDER_RENDERS", "name": "List Folder Renders", "description": "Tool to list all renders in a specific folder. Use when you need to retrieve all renders contained in a folder with optional pagination." }, { "slug": "TEMPLATED_LIST_FOLDERS", "name": "List Folders", "description": "Tool to list all folders in the account. Use when you need to retrieve available folders that help organize templates and renders." }, { "slug": "TEMPLATED_LIST_FOLDER_TEMPLATES", "name": "List Folder Templates", "description": "Tool to list all templates in a specific folder. Use when you need to retrieve templates contained in a folder." }, { "slug": "TEMPLATED_LIST_FONTS", "name": "List Fonts", "description": "Tool to list all available fonts including Google Fonts and user-uploaded custom fonts. Use when you need to retrieve the names and metadata of fonts available in the account." }, { "slug": "TEMPLATED_LIST_GALLERY_TEMPLATES", "name": "List Gallery Templates", "description": "Tool to list templates from the public gallery. Use when you need to browse available templates that can be cloned for use." }, { "slug": "TEMPLATED_LIST_RENDERS", "name": "List All Renders", "description": "Tool to list all renders in the account. Use when you need to retrieve all available renders for the authenticated user." }, { "slug": "TEMPLATED_LIST_TEMPLATE_CLONES", "name": "List Template Clones", "description": "Tool to list all cloned templates in the account. Use when you need to retrieve templates that were cloned from the gallery or other sources, with optional filtering by source template ID or external ID." }, { "slug": "TEMPLATED_LIST_TEMPLATE_RENDERS", "name": "List Template Renders", "description": "Tool to list all renders of a specific template. Use after obtaining a template ID when you need paginated render results." }, { "slug": "TEMPLATED_LIST_UPLOADS", "name": "List Uploads", "description": "Tool to list all uploaded images in the account. Returns upload details including URLs and metadata. Use when you need to retrieve available uploads with optional pagination." }, { "slug": "TEMPLATED_MERGE_RENDERS", "name": "Merge Template Renders", "description": "Tool to merge multiple renders into a single PDF output. Use when combining multiple images or pages into a unified document. When host=true, returns a URL to the hosted file. When host=false, returns the PDF binary for immediate download." }, { "slug": "TEMPLATED_MOVE_RENDER_TO_FOLDER", "name": "Move Render to Folder", "description": "Tool to move a render to a specific folder. Use when you need to organize renders by moving them into folders." }, { "slug": "TEMPLATED_MOVE_TEMPLATE_TO_FOLDER", "name": "Move Template to Folder", "description": "Tool to move a template to a folder. Use when you need to organize templates by moving them into specified folders." }, { "slug": "TEMPLATED_REMOVE_TEMPLATE_TAGS", "name": "Remove Template Tags", "description": "Tool to remove specific tags from a template. Use when you have a template ID and want to untag existing tags." }, { "slug": "TEMPLATED_RETRIEVE_RENDER", "name": "Retrieve Template Render", "description": "Tool to retrieve details of a specific render by its ID. Use after obtaining the render ID when you need details of a render." }, { "slug": "TEMPLATED_RETRIEVE_TEMPLATE", "name": "Retrieve Template", "description": "Tool to retrieve a single Template by its unique ID. Use after obtaining the template ID." }, { "slug": "TEMPLATED_UPDATE_FOLDER", "name": "Update Folder", "description": "Tool to update an existing folder's properties. Use when you need to change a folder's name or other attributes." }, { "slug": "TEMPLATED_UPDATE_TEMPLATE", "name": "Update Template", "description": "Tool to update an existing template including its properties and layers. Use replaceLayers=true to replace all layers (layers not in array will be removed), or false/omit to update existing layers and add new ones." }, { "slug": "TEMPLATED_UPDATE_TEMPLATE_TAGS", "name": "Update Template Tags", "description": "Tool to overwrite all tags on a template. Use when you need to replace the entire tag list for a specific template." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "templated_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Templated API Key", "type": "string", "description": "Your Templated API key, obtainable from your dashboard under the API Integration tab.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "temporal", "name": "Temporal", "logo": "https://logos.composio.dev/api/temporal", "description": "Cloud-native workflow orchestration platform for building reliable distributed applications", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEMPORAL_DESCRIBE_NAMESPACE", "name": "Describe Namespace", "description": "Tool to retrieve information and configuration for a registered Temporal namespace. Use when you need to get details about a specific namespace including its configuration, state, capabilities, and replication settings." }, { "slug": "TEMPORAL_LIST_NAMESPACES", "name": "List Namespaces", "description": "Tool to list all namespaces in Temporal Cloud. Use when you need to retrieve information about available namespaces and their configurations." }, { "slug": "TEMPORAL_REGISTER_NAMESPACE", "name": "Register Namespace", "description": "Tool to register (create) a new Temporal namespace. Use when you need to create a container for workflow executions, task queues, and other Temporal resources. Namespace creation is an asynchronous operation that returns an operation ID for tracking completion status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "temporal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Get your API key from https://cloud.temporal.io/profile/api-keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "testdino", "name": "Testdino", "logo": "https://logos.composio.dev/api/testdino", "description": "TestDino - provides access to test runs, test cases, and manual test management", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "testdino_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Generate from User Settings > Personal Access Tokens at https://app.testdino.com", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "testmonitor", "name": "Testmonitor", "logo": "https://logos.composio.dev/api/testmonitor", "description": "TestMonitor is a modern software tool for functional, user- and acceptance tests of software implementations.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "testmonitor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your TestMonitor domain. If your URL is https://123.testmonitor.com/, enter 123", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your TestMonitor Personal Access Token. Get it from My Account > API > Personal Access Tokens in your TestMonitor account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tettra", "name": "Tettra", "logo": "https://logos.composio.dev/api/tettra", "description": "Knowledge management platform for organizing and sharing team knowledge", "category": "documents", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tettra_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to Settings > My Integrations and generate an API key. Only available on Scaling and Enterprise plans.", "required": true, "default": null }, { "name": "generic_id", "displayName": "Team ID", "type": "string", "description": "Your Team ID found in Settings > My Integrations", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "textcortex", "name": "Textcortex", "logo": "https://logos.composio.dev/api/textcortex", "description": "TextCortex offers an AI-powered text generation API that enables developers to integrate advanced language models into their applications for tasks such as content creation, paraphrasing, and more.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEXTCORTEX_CREATE_PRODUCT_TITLE", "name": "Create Product Title", "description": "Tool to generate catchy product titles for listings. Use when you need to create compelling titles for product listings or descriptions." }, { "slug": "TEXTCORTEX_CREATE_SOCIAL_MEDIA_POST", "name": "Create Social Media Post", "description": "Tool to generate engaging social media posts for Twitter and LinkedIn. Use when you need to create platform-specific content with appropriate tone, length, and formatting." }, { "slug": "TEXTCORTEX_CREATE_VIDEO_DESCRIPTION", "name": "Create Video Description", "description": "Tool to generate compelling video descriptions for YouTube or other platforms. Use when you need to create optimized descriptions that include context, keywords, and target audience information." }, { "slug": "TEXTCORTEX_GENERATE_CODE", "name": "Generate Code", "description": "Tool to generate code for a given programming language. Use when you need to create code snippets, functions, or algorithms in specific programming languages." }, { "slug": "TEXTCORTEX_GENERATE_EMAIL", "name": "Generate Email", "description": "Tool to generate email body and subject based on provided details. Use when you need to compose or personalize an email from a prompt." }, { "slug": "TEXTCORTEX_SUMMARIZE_TEXT", "name": "Summarize Text", "description": "Tool to summarize text. Use when you need a concise summary of longer content. Use after confirming the full input text." }, { "slug": "TEXTCORTEX_TRANSLATE_TEXT", "name": "Translate Text", "description": "Tool to translate text into another language. Use when you need to translate content between different languages. Supports 72+ languages with auto-detection capability." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "textcortex_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "TextCortex API Key", "type": "string", "description": "The API key used for authenticating requests to the TextCortex API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "textit", "name": "Textit", "logo": "https://logos.composio.dev/api/textit", "description": "TextIt is a platform that enables users to build scalable, interactive chatbots across various channels without writing code.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TEXTIT_CREATE_CAMPAIGN", "name": "Create Campaign", "description": "Tool to create a new campaign in TextIt. Use when you need to start a messaging campaign for a specific contact group." }, { "slug": "TEXTIT_CREATE_GROUP", "name": "Create Contact Group", "description": "Tool to create a new contact group. Use when segmenting contacts before sending messages." }, { "slug": "TEXTIT_CREATE_LABEL", "name": "Create Label", "description": "Tool to create a new message label. Use when you need to categorize messages. Example: Create a label 'Important'. Creates a label under your organization using the TextIt Labels API." }, { "slug": "TEXTIT_DELETE_CONTACT", "name": "Delete Contact", "description": "Tool to delete an existing contact. Use when you have the contact's UUID and need to remove it." }, { "slug": "TEXTIT_DELETE_GROUP", "name": "Delete Contact Group", "description": "Tool to delete an existing contact group. Use after ensuring the group has no active triggers or campaigns." }, { "slug": "TEXTIT_DELETE_LABEL", "name": "Delete Label", "description": "Tool to delete a message label by UUID. Use when you need to remove an existing label from your TextIt workspace." }, { "slug": "TEXTIT_GET_CAMPAIGN", "name": "Get Campaign", "description": "Tool to retrieve details about a specific campaign. Use when you have the campaign's UUID and need its full metadata." }, { "slug": "TEXTIT_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve current workspace details including name, country, languages, and timezone. Use when you need workspace configuration information." }, { "slug": "TEXTIT_LIST_ARCHIVES", "name": "List Archives", "description": "Tool to retrieve a list of message and run archives. Use when you need to browse or manage existing archives after authenticating." }, { "slug": "TEXTIT_LIST_BROADCASTS", "name": "List Broadcasts", "description": "Tool to list broadcasts. Use when you need to retrieve broadcasts with optional filters and pagination." }, { "slug": "TEXTIT_LIST_CAMPAIGN_EVENTS2", "name": "List Campaign Events 2", "description": "Tool to retrieve campaign events with optional filtering. Use when you need to list scheduled triggers within campaigns, optionally filtering by event UUID or campaign UUID." }, { "slug": "TEXTIT_LIST_CAMPAIGNS", "name": "List Campaigns", "description": "Tool to list campaigns. Use after authentication to retrieve campaigns, optionally filtering by uuid or date range." }, { "slug": "TEXTIT_LIST_CHANNELS", "name": "List Channels", "description": "Tool to list channels. Use when you need to retrieve a paginated list of your organization's channels after confirming authentication." }, { "slug": "TEXTIT_LIST_CLASSIFIERS", "name": "List Classifiers", "description": "Tool to list NLU classifiers configured for your organization. Use when you need to retrieve natural language understanding classifiers (wit.ai, luis, bothub) after confirming authentication." }, { "slug": "TEXTIT_LIST_CONTACTS", "name": "List Contacts", "description": "Tool to retrieve a list of contacts. Use when you need to fetch contacts with optional filters (UUID, URN, group, or modified date). Use after authenticating your client." }, { "slug": "TEXTIT_LIST_FIELDS", "name": "List custom contact fields", "description": "Tool to retrieve a list of custom contact fields. Use when you need to view or filter all defined contact fields with pagination and optional search." }, { "slug": "TEXTIT_LIST_FLOWS", "name": "List Flows", "description": "Tool to retrieve a list of flows for your organization. Use when you need to fetch automated conversation flows with optional filters (UUID, type, archived status, or modified date)." }, { "slug": "TEXTIT_LIST_FLOW_STARTS", "name": "List Flow Starts", "description": "Tool to retrieve a list of manual flow starts. Use when you need to fetch flow start records with optional filters and pagination." }, { "slug": "TEXTIT_LIST_GLOBALS", "name": "List Globals", "description": "Tool to list global variables. Use when you need to retrieve all workspace-level variables after authenticating." }, { "slug": "TEXTIT_LIST_GROUPS2", "name": "List Groups", "description": "Tool to list contact groups for your organization. Use when you need to fetch groups with optional filtering by uuid or name." }, { "slug": "TEXTIT_LIST_LABELS2", "name": "List Labels 2", "description": "Tool to retrieve a list of message labels for your organization. Use when you need to filter labels by UUID or name." }, { "slug": "TEXTIT_LIST_MESSAGES", "name": "List Messages", "description": "Tool to retrieve a list of messages. Use when you need to fetch messages with optional filters (UUID, folder, contact, broadcast, or date range). Results are paginated." }, { "slug": "TEXTIT_LIST_RESTHOOK_EVENTS", "name": "List Resthook Events", "description": "Tool to retrieve recent resthook events for your organization. Use when you need to inspect webhook events that have been triggered, optionally filtered by resthook slug. Events are returned in reverse chronological order." }, { "slug": "TEXTIT_LIST_RESTHOOKS", "name": "List Resthooks", "description": "Tool to list configured resthooks (webhooks). Use when you need to retrieve the resthooks configured in your TextIt account." }, { "slug": "TEXTIT_LIST_RESTHOOK_SUBSCRIBERS", "name": "List Resthook Subscribers", "description": "Tool to list webhook subscribers for your organization's resthooks. Use when you need to retrieve the target URLs that receive webhook events for specific resthooks." }, { "slug": "TEXTIT_LIST_RUNS", "name": "List Runs", "description": "Tool to retrieve a list of flow runs. Use when you need to filter or browse run history by flow, contact, or status." }, { "slug": "TEXTIT_LIST_TICKETS", "name": "List Tickets", "description": "Tool to retrieve support tickets for your organization. Use when you need to fetch tickets with optional filters (UUID, contact, topic, or assignee). Returns paginated ticket data." }, { "slug": "TEXTIT_LIST_TOPICS2", "name": "List Topics V2", "description": "Tool to list topics in the workspace for categorizing tickets. Use when you need to retrieve topics, optionally filtered by UUID." }, { "slug": "TEXTIT_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a list of user logins in your workspace with their roles and teams. Use when you need to fetch users with optional UUID filter. Results are ordered by newest created first." }, { "slug": "TEXTIT_SEND_BROADCAST", "name": "Send Broadcast", "description": "Tool to send a new broadcast message. Use after composing message translations and selecting recipients (urns, contacts, or groups)." }, { "slug": "TEXTIT_UPDATE_CONTACT", "name": "Update Contact", "description": "Tool to update an existing contact. Use after identifying the contact's UUID or URN and preparing details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "textit_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "TextIt API Token", "type": "string", "description": "The API token used for authenticating requests to the TextIt API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "thanks_io", "name": "Thanks.io", "logo": "https://logos.composio.dev/api/thanks_io", "description": "thanks.io is a direct mail automation platform that enables users to send personalized postcards, letters, and notecards with handwritten fonts.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 29, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "THANKS_IO_ADD_RECIPIENT_TO_MAILING_LIST", "name": "Add Recipient to Mailing List", "description": "Tool to add a new recipient to a mailing list. Use after confirming recipient and list IDs." }, { "slug": "THANKS_IO_CREATE_MAILING_LIST", "name": "Create Mailing List", "description": "Tool to create a new mailing list. Use when you need to group contacts under a fresh list before adding recipients." }, { "slug": "THANKS_IO_DELETE_MAILING_LIST", "name": "Delete Mailing List", "description": "Tool to delete a mailing list. Use when you need to remove an entire mailing list by its ID. Confirm the list ID before calling. Example: \"Delete the mailing list with ID 123e4567-e89b-12d3-a456-426614174000\"." }, { "slug": "THANKS_IO_DELETE_RECIPIENT_FROM_MAILING_LIST", "name": "Delete Recipient from Mailing List", "description": "Tool to remove a recipient from a mailing list. Use after confirming the recipient's ID." }, { "slug": "THANKS_IO_DELETE_SUB_ACCOUNT", "name": "Delete Sub-Account", "description": "Tool to delete a specific sub-account by ID. Use when you need to remove an existing sub-account. Confirm the ID before calling." }, { "slug": "THANKS_IO_EXECUTE_STORED_SEND", "name": "Execute Stored Send", "description": "Tool to execute a previously created stored send. Use after creating a stored send to trigger delivery. The response body is empty; success is indicated by a 200 or 204 status." }, { "slug": "THANKS_IO_LIST_HANDWRITING_STYLES", "name": "List Handwriting Styles", "description": "Tool to retrieve available handwriting styles. Use when selecting a style for handwritten personalization." }, { "slug": "THANKS_IO_LIST_IMAGE_TEMPLATES", "name": "List Image Templates", "description": "Tool to retrieve a list of available image templates. Use when you need to browse or select a template for mailings." }, { "slug": "THANKS_IO_LIST_MAILING_LISTS", "name": "List Mailing Lists", "description": "Tool to list all mailing lists. Use when you need to fetch existing lists before managing recipients." }, { "slug": "THANKS_IO_LIST_MESSAGE_TEMPLATES", "name": "List Message Templates", "description": "Tool to list available message templates. Use when selecting a template for a mailing." }, { "slug": "THANKS_IO_MAILING_LISTS_BUY_RADIUS_SEARCH", "name": "Buy Radius Search Mailing List", "description": "Tool to buy or append a radius search mailing list based on address and radius. Use when you need targeted mailing lists around a specified address." }, { "slug": "THANKS_IO_ORDER_PREVIEW_LETTER", "name": "Preview letter send", "description": "Tool to preview a letter send as PDF. Use when you need to confirm letter content before placing the final order. Returns PDF preview URLs." }, { "slug": "THANKS_IO_ORDER_PREVIEW_NOTECARD", "name": "Preview Notecard", "description": "Tool to preview a notecard send. Use when you need front and back images before placing an actual notecard order." }, { "slug": "THANKS_IO_ORDER_PREVIEW_WINDOWLESS_LETTER", "name": "Preview Windowless Letter", "description": "Tool to preview a windowless letter send. Use when you need a PDF preview of the cover-only letter before placing an order." }, { "slug": "THANKS_IO_ORDERS_LIST", "name": "List Orders", "description": "Tool to list recent orders. Use after placing orders to fetch the latest history, optionally filtering by sub-account or limiting the result count." }, { "slug": "THANKS_IO_ORDERS_SEARCH_BY_ADDRESS", "name": "Search Orders by Recipient Street Address", "description": "Tool to search orders by recipient street address. Use when you need to find all orders sent to a specific street address." }, { "slug": "THANKS_IO_RECIPIENTS_CREATE_MULTI", "name": "Create Multiple Recipients", "description": "Tool to create multiple recipients at once in a mailing list. Use when batching recipient additions for efficiency." }, { "slug": "THANKS_IO_RECIPIENTS_DELETE_BY_ADDRESS", "name": "Delete Recipient by Address", "description": "Tool to delete a recipient by address and postal code. Use when you need to remove a recipient without their ID." }, { "slug": "THANKS_IO_RECIPIENTS_GET_DETAILS", "name": "Get Recipient Details", "description": "Tool to get details for a specific recipient by ID. Use to verify a recipient’s full address and custom fields." }, { "slug": "THANKS_IO_RECIPIENTS_SEARCH_BY_EMAIL", "name": "Search Recipients by Email", "description": "Tool to search recipients by email across mailing lists. Use when you need to find all recipients matching an email in specific lists. Example: \"Find recipients with email test@test.com in lists [1,2,3].\"" }, { "slug": "THANKS_IO_RECIPIENTS_UPDATE", "name": "Update Recipient", "description": "Tool to update existing recipient details by recipient ID. Use when modifying recipient data after confirming the recipient exists." }, { "slug": "THANKS_IO_SEND_POSTCARD", "name": "Send Postcard", "description": "Tool to send a customized postcard. Use when you need to dispatch a physical postcard with a chosen image and handwritten message." }, { "slug": "THANKS_IO_STORED_SEND_NOTECARD", "name": "Stored Send Notecard", "description": "Tool to create a stored send for a notecard. Use when you need to schedule mailing of a personalized notecard at a later time after preparing payload." }, { "slug": "THANKS_IO_STORED_SEND_POSTCARD", "name": "Stored Send Postcard", "description": "Tool to create a stored send for a postcard. Use when you need to prepare and schedule postcard orders for later execution; returns a URL to finalize and send." }, { "slug": "THANKS_IO_STORED_SEND_WINDOWLESS_LETTER", "name": "Stored Send Windowless Letter", "description": "Tool to create a stored send for a windowless letter. Use when you need to prepare a letter order for later execution." }, { "slug": "THANKS_IO_SUB_ACCOUNTS_CREATE", "name": "Create Sub-Account", "description": "Tool to create a new sub-account. Use when you need to manage separate profiles with distinct return addresses and settings." }, { "slug": "THANKS_IO_SUB_ACCOUNTS_LIST", "name": "List Sub Accounts", "description": "Tool to list all available sub-accounts. Use when you need to select a sub-account for operations requiring a sub-account context." }, { "slug": "THANKS_IO_SUB_ACCOUNTS_SHOW", "name": "Get Sub Account Details", "description": "Tool to retrieve details for a specific sub-account by ID. Use when you need full configuration of a sub-account before performing sub-account scoped operations." }, { "slug": "THANKS_IO_SUB_ACCOUNTS_UPDATE", "name": "Update Sub-Account", "description": "Tool to update details for a specific sub-account. Use when modifying title or return address details of a sub-account. Confirm sub-account ID before calling." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "thanksio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Thanks.io API Key", "type": "string", "description": "Your personal access token for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "the_daily_lesson_wordorb_education_api", "name": "The Daily Lesson Wordorb Education Api", "logo": "https://logos.composio.dev/api/the_daily_lesson_wordorb_education_api", "description": "WordOrb provides educational API access to 162,253 words across 47 languages, structured daily lessons, and assessment items for vocabulary learning and language education.", "category": "education", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "the_daily_lesson_wordorb_education_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your WordOrb API key (starts with wo_ prefix). Get it from https://wordorb.ai/docs", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "the_odds_api", "name": "The Odds API", "logo": "https://logos.composio.dev/api/the_odds_api", "description": "The Odds API provides real-time sports betting odds data from various bookmakers worldwide, covering multiple sports and betting markets.", "category": "gaming", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "THE_ODDS_API_GET_EVENT_MARKETS", "name": "Get Event Markets", "description": "Tool to retrieve available market keys for each bookmaker for a specific event. Returns only recently seen markets - not a comprehensive list. More markets become available as the event's commence time approaches." }, { "slug": "THE_ODDS_API_GET_EVENT_ODDS", "name": "Get Event Odds", "description": "Tool to retrieve odds for a specific event. Use after confirming sport key via THE_ODDS_API_GET_SPORTS and event ID via THE_ODDS_API_GET_EVENTS; mismatched values return empty payloads rather than errors." }, { "slug": "THE_ODDS_API_GET_EVENTS", "name": "Get Events", "description": "Tool to fetch live and upcoming events for a specified sport. Use when you need event listings including odds. All timestamps are UTC. Avoid high-frequency polling; batch requests and implement backoff to prevent throttling." }, { "slug": "THE_ODDS_API_GET_ODDS", "name": "Get Odds", "description": "Tool to fetch live and upcoming event odds for a specified sport, including bookmakers, regions, and markets. Use after retrieving sports via GET_SPORTS; filter by region, market, or event IDs. Response is nested bookmakers → markets → outcomes; not all bookmakers expose every market for every event, so handle missing keys and empty arrays defensively. Combining multiple regions, markets, and eventIds produces large payloads — narrow to one region or specific eventIds where possible." }, { "slug": "THE_ODDS_API_GET_PARTICIPANTS", "name": "Get Participants", "description": "Tool to fetch list of participants (teams or players) for a specified sport. Use after confirming you have a valid sport key." }, { "slug": "THE_ODDS_API_GET_SCORES", "name": "Get Scores", "description": "Tool to return live and recently completed event scores for a sport. Use after selecting a sport key to inspect current and recent game scores. Missing results may indicate unsupported competitions, not absent events. When identifying specific fixtures, match by both team names and date to avoid confusion with multi-leg ties or similarly named teams." }, { "slug": "THE_ODDS_API_GET_SPORTS", "name": "Get Sports", "description": "Tool to retrieve a list of in-season sports. Use when you need sports data; set 'all' to true to include out-of-season sports. Sport keys returned here must be passed to downstream tools like THE_ODDS_API_GET_EVENTS and THE_ODDS_API_GET_EVENT_ODDS — mismatched or guessed keys return empty payloads. Similarly named leagues and qualifier competitions appear as distinct entries with unique keys; verify the exact key before use." }, { "slug": "THE_ODDS_API_GET_V3_ODDS", "name": "Get Odds (V3 Legacy)", "description": "Tool to fetch odds using the legacy V3 API endpoint. Returns upcoming and live games with odds for a given sport, region, and market. Use for legacy integrations; V4 API is recommended for new implementations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "the_odds_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key associated with your subscription.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ticket_tailor", "name": "Ticket Tailor", "logo": "https://logos.composio.dev/api/ticket_tailor", "description": "Whether it's your first event ever, or your biggest event yet, we make it simple to sell tickets online.", "category": "event management", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "ticket_tailor_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Ticket Tailor account and sign in. Go to \"Settings\" > \"Manage\" > \"API\" to retrieve your API key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ticketmaster", "name": "Ticketmaster", "logo": "https://logos.composio.dev/api/ticketmaster", "description": "Ticketmaster provides APIs for event discovery, inventory management, and ticketing solutions.", "category": "event management", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TICKETMASTER_EXECUTE_SEASON_TICKETING_COMMAND", "name": "Execute Season Ticketing Command", "description": "Tool to execute Season Ticketing API commands for ticket management operations. Use when you need to interact with Ticketmaster's Archtics Season Ticketing system for administrative tasks, account management, or event discovery. Supports commands: ping (test connectivity), customer_query (get account info), seats_sold (retrieve sold seat details), event_search (search events), event_details (get event attributes), get_attendance (retrieve attendance data). Note: API may return 202 ACCEPTED for asynchronous operations - caller must poll with provided cookies until receiving 200 OK response." }, { "slug": "TICKETMASTER_GET_ATTRACTION_DETAILS2", "name": "Get Attraction Details V2", "description": "Tool to retrieve detailed information about a specific attraction by ID from Ticketmaster Discovery API v2. Use when you need attraction details with optional licensed content filtering." }, { "slug": "TICKETMASTER_GET_ATTRACTIONS", "name": "Get Ticketmaster Attractions", "description": "Tool to retrieve a list of attractions. Use when you need to search for artists, teams, or performers by various criteria such as keyword, classification, or country." }, { "slug": "TICKETMASTER_GET_CLASSIFICATION_DETAILS", "name": "Get Classification Details", "description": "Tool to retrieve detailed information about a specific classification. Use after obtaining a classification ID." }, { "slug": "TICKETMASTER_GET_CLASSIFICATIONS", "name": "Get Classifications", "description": "Retrieves event classifications from Ticketmaster's Discovery API. Classifications provide a hierarchical taxonomy for categorizing events: - Segment: Top-level category (Music, Sports, Arts & Theater, Family, Film, Miscellaneous) - Genre: Secondary category within a segment (e.g., Rock, Baseball, Comedy) - Subgenre: Tertiary category for specific classification (e.g., Alternative Rock, MLB) Use this tool to discover available categories before searching for events, or to understand how events are organized in the Ticketmaster system. The classifications can be filtered by locale, country, or specific classification ID." }, { "slug": "TICKETMASTER_GET_EVENT_DETAILS", "name": "Get Event Details", "description": "Tool to retrieve detailed information about a specific event by ID. Use when you have an event's unique identifier and need its full details." }, { "slug": "TICKETMASTER_GET_EVENT_IMAGES", "name": "Get Event Images", "description": "Tool to retrieve images for a specific event by ID. Use when you need to fetch image URLs and metadata for an event." }, { "slug": "TICKETMASTER_GET_EVENTS", "name": "Search Events", "description": "Search for events on Ticketmaster using various filters including location, date range, keywords, classifications, and more. This action queries the Ticketmaster Discovery API to find events matching your criteria. Results are paginated and can be sorted. Use this when you need to: search for concerts/shows/games, find events in a specific location, filter by date range, or discover events by artist/venue. Key capabilities: - Location search: by city, state, postal code, lat/long, or radius - Time filtering: events within date ranges or on-sale dates - Classification: filter by segment (Music/Sports/Arts), genre, subgenre - Keyword search: find events by name or description - Venue/Attraction: get events at specific venues or by specific artists/teams Note: Deep paging limit - size * page must be < 1000. Maximum 200 results per page." }, { "slug": "TICKETMASTER_GET_GENRE_DETAILS", "name": "Get Genre Details", "description": "Tool to retrieve detailed information about a specific genre. Use when you need metadata for a single genre before filtering events by genre." }, { "slug": "TICKETMASTER_GET_SECTION_MAP_IMAGE", "name": "Get Section Map Image", "description": "Tool to retrieve the section map image for an event showing venue layout. Use when you need a visual representation of a venue's seating sections for a specific event. Optionally highlights specific sections or seats." }, { "slug": "TICKETMASTER_GET_SEGMENT_DETAILS", "name": "Get Segment Details", "description": "Retrieve detailed information about a specific Ticketmaster event segment, including all associated genres and subgenres. Segments are the top-level classification categories for events (e.g., Music, Sports, Arts & Theatre, Family, Film, Miscellaneous). This action returns the segment's metadata along with a complete list of genres and their subgenres that fall under this segment. Use this action after obtaining a segment ID from Get Classifications or from event classification data." }, { "slug": "TICKETMASTER_GET_SUBGENRE_DETAILS", "name": "Get Subgenre Details", "description": "Tool to retrieve detailed information about a specific subgenre. Use when you have a subgenre ID and need its details." }, { "slug": "TICKETMASTER_GET_SUGGESTIONS2", "name": "Get Advanced Suggestions", "description": "Get advanced auto-complete search suggestions from Ticketmaster's Discovery API. Returns matching attractions (artists, teams, performers), venues (concert halls, stadiums, theaters), and events based on search criteria with extensive filtering options. Use this when you need more control over suggestions including location filtering, source filtering, fuzzy matching, and spell checking. Perfect for implementing type-ahead search functionality with advanced filters or helping users discover entertainment options based on location, segment, and other criteria." }, { "slug": "TICKETMASTER_GET_VENUE_DETAILS2", "name": "Get Venue Details (Enhanced)", "description": "Tool to retrieve comprehensive details about a specific venue by ID. Use when you need detailed venue information including location, box office info, images, and social media data." }, { "slug": "TICKETMASTER_GET_VENUES", "name": "Get Venues", "description": "Tool to retrieve a list of venues based on specified criteria. Use when you need venue details by name, location, or ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "ticketmaster_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "ticketmaster_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Ticketmaster API Key", "type": "string", "description": "Your unique API key provided by Ticketmaster. You can generate this from the Ticketmaster Developer Portal.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ticktick", "name": "Ticktick", "logo": "https://ticktick.com/favicon.ico", "description": "TickTick is a cross-platform task management and to-do list application designed to help users organize their tasks and schedules efficiently.", "category": "productivity", "authSchemes": [ "OAUTH2" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TICKTICK_COMPLETE_TASK", "name": "Complete Task", "description": "Marks a TickTick task as complete. Requires both the project_id and task_id, which can be obtained from TICKTICK_LIST_ALL_TASKS or TICKTICK_CREATE_TASK actions. This action is idempotent - completing an already-completed task will succeed without error. Completed tasks are removed from default/active views and appear only in completed task filters." }, { "slug": "TICKTICK_CREATE_PROJECT", "name": "Create Project", "description": "Create a new project (list) in TickTick. Projects organize tasks and notes. Use this to set up a new project with optional customizations like color, view mode, and type. The created project's ID can be used with other actions like TICKTICK_CREATE_TASK." }, { "slug": "TICKTICK_CREATE_TASK", "name": "Create Task", "description": "Tool to create a new task in TickTick. Use after you have task details such as title, dates, and optional reminders or subtasks." }, { "slug": "TICKTICK_CREATE_TASK2", "name": "Create Task (Deprecated)", "description": "DEPRECATED: Use TICKTICK_CREATE_TASK instead. Tool to create a new task in a specified project. Use when you need to create a task with required title and projectId, plus optional dates, priority, reminders, and subtasks." }, { "slug": "TICKTICK_DELETE_PROJECT", "name": "Delete TickTick Project", "description": "Permanently deletes a TickTick project by its ID. All tasks within the project will also be deleted. Note: This operation is idempotent - deleting a non-existent project ID returns success. Use TICKTICK_GET_USER_PROJECT to list available projects and their IDs before deletion." }, { "slug": "TICKTICK_DELETE_TASK", "name": "Delete Task", "description": "Tool to permanently delete a specific task — irreversible, no recovery. Use when you need to remove a task from a project after confirming both project and task IDs. Returns an empty data object on success; check status/success flags rather than response payload. When moving tasks between projects via create+delete, comments and history are lost." }, { "slug": "TICKTICK_GET_PROJECT_BY_ID", "name": "Get Project By ID", "description": "Tool to retrieve a specific TickTick project by its unique ID. Use when you need detailed information about a particular project after obtaining its project ID." }, { "slug": "TICKTICK_GET_PROJECT_WITH_DATA", "name": "Get project with data", "description": "Retrieve a project's associated data (incomplete tasks, columns). IMPORTANT: This endpoint only returns INCOMPLETE tasks. Completed tasks are automatically filtered out by the TickTick API. An empty tasks list means either the project has no tasks at all, or all tasks have been completed. For completed tasks, check the TickTick app or web interface directly. Columns are only present for kanban-style projects; list-view projects return an empty columns array. Join tasks to columns via each task's columnId field. For large projects, results may paginate at ~100 items per page — iterate all pages and deduplicate by taskId. Multiple tasks can share the same title; always use taskId for follow-up create, update, or delete calls. All filtering by name, tag, or other fields must be done client-side. Scope is project-only — Inbox and other projects are excluded." }, { "slug": "TICKTICK_GET_TASK_BY_PROJECT_AND_ID", "name": "Get Task By Project And ID", "description": "Tool to retrieve a specific TickTick task by project ID and task ID. Use when you need detailed information about a particular task within a project." }, { "slug": "TICKTICK_GET_USER_PROJECT", "name": "Get User Projects", "description": "Retrieves all projects accessible to the authenticated user, including personal and shared projects. Use this tool to list available projects before creating tasks or to get project IDs for other operations. Returns project metadata including name, color, view mode, and organization details. Always use returned projectId values (not project names) when calling TICKTICK_CREATE_TASK, TICKTICK_UPDATE_TASK, or TICKTICK_GET_PROJECT_WITH_DATA. The inbox project may not appear in results — omit projectId in TICKTICK_CREATE_TASK to target the inbox. Non-kanban projects return an empty columns array; check viewMode before assuming columns exist." }, { "slug": "TICKTICK_LIST_ALL_TASKS", "name": "List All Tasks", "description": "Tool to list all open/undone tasks across all user projects in one call. This is a composite operation that internally fetches all projects and aggregates their tasks. Use when you need a comprehensive view of pending work across the entire account. Note: Only returns open/undone tasks; completed task history is not available in TickTick OpenAPI v1." }, { "slug": "TICKTICK_OAUTH2_AUTHORIZATION_STEP1", "name": "Generate OAuth2 Authorization URL", "description": "Tool to generate the TickTick OAuth2 authorization URL. Use to redirect the user to obtain the authorization code (step 1). Re-run this tool if downstream TickTick calls return HTTP 401 (expired/invalid token) to obtain a fresh authorization code." }, { "slug": "TICKTICK_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project. Use when you need to modify project details like name, color, sort order, view mode, or kind after selecting a project ID." }, { "slug": "TICKTICK_UPDATE_TASK", "name": "Update Task", "description": "Tool to update an existing task. Use after confirming the taskId and projectId. Omitting optional fields resets them to null — include all existing field values in every payload. Cannot move a task to a different project; use TICKTICK_CREATE_TASK + TICKTICK_DELETE_TASK instead. Fields outside the input schema (e.g., columnId, assignee) are silently ignored." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "ticktick_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "tasks:read,tasks:write" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "tidy", "name": "Tidy", "logo": "https://logos.composio.dev/api/tidy", "description": "TIDY helps to maintain a clean house. A rental. Your employee's workspace. Your home. All automated through TIDY.", "category": "scheduling & booking", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TIDY_CREATE_ADDRESS", "name": "Create Address", "description": "Tool to create a new address record with location data, parking information, and access instructions. Use when you need to add a new property address to Tidy." }, { "slug": "TIDY_CREATE_PRO", "name": "Create Pro", "description": "Tool to add a Pro to the Priority List for all addresses in a customer account. Use when syncing professional service provider information from another application into TIDY." }, { "slug": "TIDY_DELETE_ADDRESS", "name": "Delete Address", "description": "Tool to remove an address from the system by its unique identifier. Use when you need to delete an address that has no active scheduled jobs. Important: Addresses with active jobs cannot be deleted and must have their jobs cancelled first." }, { "slug": "TIDY_LIST_ALL_ADDRESSES", "name": "List All Addresses", "description": "Tool to retrieve all addresses sorted by creation date with most recent first. Use when you need to view all property addresses in the Tidy system." }, { "slug": "TIDY_LIST_ALL_JOBS", "name": "List All Jobs", "description": "Tool to retrieve all jobs associated with an account with optional filtering by address_id, status, or to_do_list_id. Use when you need to view or manage jobs in the Tidy system." }, { "slug": "TIDY_LIST_AVAILABLE_BOOKING_TIME_SLOTS", "name": "List Available Booking Time Slots", "description": "Tool to retrieve available booking time slots from professionals in your network for the next 4 weeks. Use when you need to find instantly available times to book a service." }, { "slug": "TIDY_LIST_GUEST_RESERVATIONS", "name": "List Guest Reservations", "description": "Tool to retrieve all guest reservations sorted by creation date with most recent first. Use when you need to view or manage guest bookings in the Tidy system." }, { "slug": "TIDY_LIST_TO_DO_LISTS", "name": "List To-Do Lists", "description": "Tool to retrieve all active address to-do lists with optional filtering by address_id, sorted by creation date with most recent first. Use when you need to view or manage to-do lists in the Tidy system." }, { "slug": "TIDY_RETRIEVE_ADDRESS", "name": "Retrieve Address", "description": "Tool to retrieve the details of an existing address by its unique identifier. Use when you need to view complete information about a specific address including parking and access notes." }, { "slug": "TIDY_UPDATE_ADDRESS", "name": "Update Address", "description": "Tool to update parking details and access notes for an existing address. Use when you need to modify parking information or property access instructions. Important: Cannot update address, unit, postal_code, or country_code - these fields require creating a new address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tidy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Tidy account and sign in. Go to \"More\" > \"Developers\" > \"API Keys\" and generate an API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tiktok", "name": "Tiktok", "logo": "https://logos.composio.dev/api/tiktok", "description": "TikTok short-form video platform + creation tools + social sharing", "category": "social media accounts", "authSchemes": [ "OAUTH2" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TIKTOK_FETCH_PUBLISH_STATUS", "name": "Fetch publish status", "description": "Check the processing status of a TikTok video or photo post using its publish_id. Use this action to poll the status of content after initiating an upload or post. The API returns detailed information about processing stages (upload, download, moderation) and any errors that occurred. Non-terminal statuses mean processing is still pending — never re-initiate TIKTOK_PUBLISH_VIDEO for the same publish_id. Use exponential backoff when polling (e.g., 5s→10s→20s) to avoid the 30 requests/minute per access token rate limit." }, { "slug": "TIKTOK_GET_ACTION_CATEGORIES", "name": "Get action categories", "description": "Tool to retrieve available action categories from TikTok Marketing API. Use when you need to get the list of conversion event categories for creating or managing TikTok ad campaigns with conversion tracking." }, { "slug": "TIKTOK_GET_TERM", "name": "Get terms", "description": "Tool to retrieve terms from TikTok Business API. Use when you need to fetch advertiser or agency terms for a specific advertiser ID." }, { "slug": "TIKTOK_GET_USER_STATS", "name": "Get user stats", "description": "Fetches TikTok user information and statistics for the authenticated user. Retrieves user stats (follower_count, following_count, likes_count, video_count) and can optionally fetch profile fields (display_name, username, bio_description, etc.) and basic info (open_id, union_id, avatar URLs). Returns only the fields requested in the fields parameter. Only works for the authenticated account; cannot fetch arbitrary public profiles. Stats may be delayed and not reflect the most recent activity." }, { "slug": "TIKTOK_LIST_GMV_MAX_OCCUPIED_CUSTOM_SHOP_ADS", "name": "List GMV Max occupied custom shop ads", "description": "Tool to get GMV Max occupied custom shop ads list for a TikTok advertiser. Use this action when you need to retrieve information about which custom shop ads are currently occupied for GMV Max campaigns. This is part of the TikTok Business API and requires appropriate advertiser access." }, { "slug": "TIKTOK_LIST_VIDEOS", "name": "List videos", "description": "Lists videos for the authenticated user (or specified creator). Does not provide a global TikTok-wide feed." }, { "slug": "TIKTOK_POST_PHOTO", "name": "Post photo", "description": "Create a photo post (1-35 images) on TikTok via Content Posting API. Supports two modes: - MEDIA_UPLOAD: Uploads photos to user's inbox for review/editing before posting - DIRECT_POST: Immediately posts photos to user's TikTok account IMPORTANT: Photo URLs must be from your TikTok-verified domain. Unverified domains will return 403 Forbidden. Unaudited apps can only post with privacy='SELF_ONLY'. Rate limit: 6 requests per minute per user access token. Reference: https://developers.tiktok.com/doc/content-posting-api-reference-photo-post" }, { "slug": "TIKTOK_PUBLISH_VIDEO", "name": "Publish video", "description": "Publishes a video to TikTok by pulling it from a public URL. TikTok downloads the video from the provided URL and publishes it directly to the creator's profile. Publishing is asynchronous — after calling this action, poll TIKTOK_FETCH_PUBLISH_STATUS with the returned publish_id to check completion. For uploading video files instead of URLs, use TIKTOK_UPLOAD_VIDEO." }, { "slug": "TIKTOK_UPLOAD_VIDEO", "name": "Upload video", "description": "Uploads a video to TikTok via the Content Posting API (init + single-part upload). This action initializes an upload session to obtain a presigned upload URL, then uploads the entire file with a single PUT request. Use a subsequent action to publish the post. Ensure the video file is fully generated and available before calling this action." }, { "slug": "TIKTOK_UPLOAD_VIDEOS", "name": "Upload videos (batch)", "description": "Uploads multiple videos to TikTok concurrently (init + single-part upload per file)." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "tiktok_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "user.info.basic,user.info.profile,user.info.stats,video.list,video.upload,video.publish" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "time_tracker_by_ebillity", "name": "Time Tracker By Ebillity", "logo": "https://logos.composio.dev/api/time_tracker_by_ebillity", "description": "Simple time and billing software for tracking employee hours, managing clients, projects, and generating payroll and invoices.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "time_tracker_by_ebillity_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Time Tracker account and sign in. Go to \"More\" > \"API\" to retrieve your API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "timelinesai", "name": "TimelinesAI", "logo": "https://logos.composio.dev/api/timelinesai", "description": "TimelinesAI enables teams to manage and automate WhatsApp communications, integrating with various CRMs and tools to streamline workflows.", "category": "communication", "authSchemes": [ "API_KEY" ], "toolCount": 13, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "TIMELINESAI_DELETE_FILE", "name": "Delete File", "description": "Tool to delete an uploaded file by its UID. Use after confirming the file is no longer needed." }, { "slug": "TIMELINESAI_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook subscription by its ID. Use when you need to remove an existing webhook after confirming the webhook ID. Example: \"Delete the webhook with ID '9f6a8c3d-56b7-4a1e-8f2e-abcdef123456'.\"" }, { "slug": "TIMELINESAI_GET_CHAT_MESSAGES", "name": "Get Chat Messages", "description": "Tool to get messages from a specific chat in TimelinesAI. Use when you need to retrieve message history or recent messages from a chat. Example: \"Get the last 20 messages from chat 'chat_123abc'.\"" }, { "slug": "TIMELINESAI_GET_CHATS", "name": "Get Chats", "description": "Tool to get full or filtered list of all chats. Use when you need to browse or search chats with optional filters. Example: \"List all unread chats assigned to me.\"" }, { "slug": "TIMELINESAI_GET_FILE_DETAILS", "name": "Get File Details", "description": "Tool to retrieve metadata and temporary download URL for an uploaded file. Use after uploading a file or when needing its URL." }, { "slug": "TIMELINESAI_GET_WEBHOOK", "name": "Get Webhook", "description": "Retrieves detailed information about a specific webhook subscription by its ID. Use this action to: - Check webhook configuration (URL, event type, enabled status) - Monitor webhook health (error counter) - Verify webhook existence before updating or deleting Prerequisites: You must have a valid webhook ID. Use the Get Webhooks action to list all available webhooks first." }, { "slug": "TIMELINESAI_GET_WEBHOOKS", "name": "Get Webhooks", "description": "Retrieves all webhook subscriptions configured for the workspace. Webhooks notify external systems about events (e.g., 'message:new', 'chat:new') in real-time. Use this to view existing webhook configurations, check their status, or retrieve webhook IDs for updates/deletion. Supports optional pagination via limit and offset parameters." }, { "slug": "TIMELINESAI_GET_WHATSAPP_ACCOUNTS", "name": "Get WhatsApp Accounts", "description": "Tool to list all WhatsApp accounts connected to the workspace. Use after configuring WhatsApp integration to verify accounts." }, { "slug": "TIMELINESAI_LIST_UPLOADED_FILES", "name": "List Uploaded Files", "description": "Tool to list files uploaded in your TimelinesAI workspace. Use when you need to retrieve all uploaded files." }, { "slug": "TIMELINESAI_POST_MESSAGE", "name": "Send WhatsApp Message to Number", "description": "Tool to send a WhatsApp text message to a phone number via TimelinesAI. Use this to send messages to any recipient phone number using one of your connected WhatsApp accounts as the sender. The message will be delivered immediately if the recipient number is reachable on WhatsApp. Example: Send 'Hello, how can I help you today?' from +15105566777 to +14151231234." }, { "slug": "TIMELINESAI_POST_WEBHOOK", "name": "Create Webhook Subscription", "description": "Tool to create a new webhook subscription. Use when you have the event type and callback URL ready." }, { "slug": "TIMELINESAI_PUT_WEBHOOK", "name": "Update Webhook", "description": "Tool to update an existing webhook subscription. Use after confirming the webhook ID when you need to change the URL, subscribed event types, or enable/disable a webhook." }, { "slug": "TIMELINESAI_SEND_MESSAGE", "name": "Send Message to Chat", "description": "Send a WhatsApp message to an existing chat in TimelinesAI. Use this action when you have a chat ID from the Get Chats action and want to send a message to that conversation. For sending messages to new phone numbers (not existing chats), use the 'Send WhatsApp Message to Number' action instead. Example: \"Send message 'Hello world' to chat with ID 'chat_123abc'.\"" } ], "triggers": [ { "slug": "TIMELINESAI_NEW_MESSAGE_RECEIVED", "name": "New WhatsApp Message Received", "description": "Polling trigger that monitors for new messages received in TimelinesAI WhatsApp chats." } ], "authConfigDetails": [ { "mode": "API_KEY", "name": "timelinesai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "API Token", "type": "string", "description": "The API token generated from the TimelinesAI Integrations section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "timelink", "name": "Timelink", "logo": "https://logos.composio.dev/api/timelink", "description": "Timelink is a time tracking application designed to simplify and enhance the process of recording work hours, offering both software and hardware solutions for efficient time management.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TIMELINK_DELETE_PERSON", "name": "Delete Person", "description": "Tool to delete a person record. Use when you need to remove a person by their unique identifier after confirming this detail." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "timelink_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Timelink API Token", "type": "string", "description": "The API token used for authenticating requests to the Timelink API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tldv", "name": "Tldv", "logo": "https://logos.composio.dev/api/tldv", "description": "Meeting recorder and transcription tool for video conferences", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TLDV_CHECK_HEALTH", "name": "Check API Health", "description": "Tool to verify API availability and health status. Use when you need to check if the tl;dv API is operational before making other API calls." }, { "slug": "TLDV_DOWNLOAD_MEETING_RECORDING", "name": "Download Meeting Recording", "description": "Tool to download a meeting recording file. Returns the recording file by following the API's redirect to a signed download URL (valid for 6 hours). Use when you need to retrieve the actual recording content for a specific meeting." }, { "slug": "TLDV_GET_MEETING", "name": "Get Meeting", "description": "Tool to retrieve a meeting by its unique identifier. Returns detailed meeting metadata including id, name, date, URL, duration, organizer, invitees, template, and extra properties. Use when you need to fetch information about a specific meeting." }, { "slug": "TLDV_GET_MEETING_HIGHLIGHTS", "name": "Get Meeting Highlights", "description": "Tool to retrieve meeting notes (highlights) by meeting ID in human-readable format. Use when you need to fetch notes from a completed meeting. Highlights are only returned if the transcript is complete." }, { "slug": "TLDV_GET_MEETING_TRANSCRIPT", "name": "Get Meeting Transcript", "description": "Tool to retrieve the complete transcript of a meeting by its ID. Returns transcript segments with speaker names, text, and timestamps. The transcript is only returned if it is complete." }, { "slug": "TLDV_IMPORT_MEETING", "name": "Import Meeting", "description": "Tool to import a meeting, recording, or other media from a publicly accessible URL. The URL must point to media in a supported format (mp3, mp4, wav, m4a, mkv, mov, avi, wma, flac). Returns a job ID to track the import progress. Use when you need to add external recordings to tldv." }, { "slug": "TLDV_LIST_MEETINGS", "name": "List Meetings", "description": "Tool to retrieve a paginated list of meetings from tldv. Returns meeting metadata including id, name, occurrence date, URL, duration, organizer details, invitees, and template information. Use when you need to view recorded meetings or search for specific meeting details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tldv_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your tl;dv API key for accessing your meetings and transcripts. Create one in tl;dv under Settings → Personal Settings → API Keys (requires a paid plan).", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "toggl", "name": "Toggl", "logo": "https://logos.composio.dev/api/toggl", "description": "Toggl is a time tracking application that helps users monitor and manage their work hours efficiently.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 56, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TOGGL_CREATE_CLIENT", "name": "Create Client", "description": "Tool to create a new client in a workspace. Use when you need to add a client to a workspace after workspace setup." }, { "slug": "TOGGL_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in a Toggl organization. Use when organizing users into teams and controlling access to workspaces. Groups help manage user permissions and workspace assignments at the organization level." }, { "slug": "TOGGL_CREATE_INVITATION", "name": "Create Invitation", "description": "Tool to send invitations to join a Toggl organization. Use when you need to invite users by email to an organization and its workspaces. At least one email and one workspace (or project_invite) are required." }, { "slug": "TOGGL_CREATE_ORGANIZATION", "name": "Create Organization", "description": "Tool to create a new organization with a default workspace in Toggl Track. Use when initializing a new organization and workspace in one step. The authenticated user becomes the organization owner." }, { "slug": "TOGGL_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new project in a Toggl workspace. Projects are used to organize time entries and track work for specific initiatives. Required parameters: workspace_id (integer) and name (string). Optional parameters include client assignment, privacy settings, billable status, and time estimates. Note: Some features (custom colors, templates, fixed fees, hourly rates) require a premium Toggl plan." }, { "slug": "TOGGL_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag in a workspace. Use when you need to add a tag after confirming workspace ID and desired tag name." }, { "slug": "TOGGL_CREATE_TIME_ENTRY", "name": "Create Time Entry", "description": "Tool to create a new time entry in the specified workspace. Use when you have workspace ID, start time, and client name ready." }, { "slug": "TOGGL_CREATE_WORKSPACES_PROJECT_USERS", "name": "Add User to Workspace Project", "description": "Tool to add a user to workspace project users. Use when you need to assign a user to a project within a workspace with optional manager privileges and custom rates." }, { "slug": "TOGGL_DELETE_CLIENT", "name": "Delete Toggl Client", "description": "Tool to delete a client in Toggl. Use when you have confirmed the workspace and client IDs and want to remove a client permanently." }, { "slug": "TOGGL_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group from a Toggl organization. Use when you need to permanently remove a group and its associated permissions. Requires organization and group IDs." }, { "slug": "TOGGL_DELETE_PROJECT_GROUP", "name": "Delete Project Group", "description": "Tool to delete a project group from a Toggl workspace. Use when you need to remove a project group permanently. Requires workspace and project group IDs." }, { "slug": "TOGGL_DELETE_SUBSCRIPTION", "name": "Delete Subscription", "description": "Tool to delete a webhook subscription in Toggl. Use when you want to remove an existing subscription for a specific workspace." }, { "slug": "TOGGL_DELETE_TAG", "name": "Delete Tag", "description": "Deletes a tag from a Toggl workspace. Requires workspace and tag IDs. Only workspace or organization administrators can delete tags. Returns success status upon deletion." }, { "slug": "TOGGL_DISABLE_WEEKLY_REPORT", "name": "Disable Weekly Report", "description": "Tool to disable weekly report email notifications. Use when you want to unsubscribe from weekly reports using the code provided in report emails." }, { "slug": "TOGGL_EDIT_TIME_ENTRIES", "name": "Bulk Edit Time Entries", "description": "Tool to bulk edit multiple time entries in a workspace using JSON Patch operations. Use when you need to update the same field(s) across multiple time entries at once (e.g., changing descriptions, billable status, or project associations). Maximum 100 time entries per request." }, { "slug": "TOGGL_GET_ALL_PLANS", "name": "Get All Plans", "description": "Tool to retrieve all available Toggl subscription plans and their features. Use when you need to display plan options, compare plans, or check available features for different subscription tiers." }, { "slug": "TOGGL_GET_CLIENT_DETAILS", "name": "Get Client Details", "description": "Retrieves detailed information about a specific client in Toggl Track by its client ID and workspace ID. Use this tool when you need to: - Get complete client details including name, notes, and metadata - Verify if a client exists in a workspace - Check client archive status, timestamps, or external references - Retrieve integration information for JIRA/Salesforce linked clients" }, { "slug": "TOGGL_GET_COUNTRIES", "name": "Get Countries", "description": "Tool to retrieve all countries supported by Toggl. Returns country details including tax information, default currencies, and postal code requirements. Use when you need to validate country data or retrieve country-specific settings for billing." }, { "slug": "TOGGL_GET_COUNTRY_SUBDIVISIONS", "name": "Get Country Subdivisions", "description": "Tool to retrieve all subdivisions (states, provinces, regions) for a specific country in Toggl Track. Use when you need to get geographical subdivision data for a country, such as US states or Canadian provinces." }, { "slug": "TOGGL_GET_CURRENCIES", "name": "Get Currencies", "description": "Tool to retrieve the list of all currencies supported by Toggl Track. Use when you need currency codes and symbols for financial operations or display." }, { "slug": "TOGGL_GET_CURRENT_TIME_ENTRY", "name": "Get Current Time Entry", "description": "Retrieves the currently running time entry for the authenticated user. Returns null if no timer is active. Use this to check timer status or get details about the active time entry." }, { "slug": "TOGGL_GET_EVENT_FILTERS", "name": "Get Event Filters", "description": "Retrieve the list of supported event filters for Toggl webhooks. Use this when you need to know which event types are available for webhook subscriptions (e.g., client created, project updated, time entry deleted)." }, { "slug": "TOGGL_GET_KEYS", "name": "Get JWKS Keys", "description": "Retrieves the current JWKS (JSON Web Key Set) keyset used to sign JWT tokens. Use this to obtain public keys for verifying JWT token signatures issued by Toggl." }, { "slug": "TOGGL_GET_LIST_CLIENTS", "name": "List Clients", "description": "Retrieve a list of clients from a Toggl Track workspace with optional filtering by status and name. Use this tool to: - List all clients in a workspace - Filter clients by active/archived status - Search for clients by name (case-insensitive) - Get client details including IDs, names, timestamps, and permissions By default, only active clients are returned unless specified otherwise." }, { "slug": "TOGGL_GET_MY_LOCATION", "name": "Get My Location", "description": "Retrieves the authenticated user's last known location information including city, state, country, and coordinates. Use this to determine user's geographic location for timezone or region-specific features." }, { "slug": "TOGGL_GET_MY_QUOTA", "name": "Get My Quota", "description": "Tool to retrieve API rate limit quota for the authenticated user. Use when you need to check remaining API calls before making further requests or to monitor rate limit status." }, { "slug": "TOGGL_GET_ORGANIZATION_DETAILS", "name": "Get Organization Details", "description": "Retrieves detailed information about a specific Toggl organization including subscription plan, trial status, user count, and workspace settings. Requires a valid organization ID that the authenticated user has access to." }, { "slug": "TOGGL_GET_ORGANIZATION_GROUPS", "name": "Get Organization Groups", "description": "Retrieves all groups within a Toggl organization, including group members and workspace assignments. Groups are used to organize users and control access to workspaces. Returns an empty list if no groups exist in the organization." }, { "slug": "TOGGL_GET_ORGANIZATION_USERS", "name": "Get Organization Users", "description": "Retrieves a list of users belonging to a Toggl organization. Returns detailed information about each user including their email, name, role, workspace memberships, and group memberships. Supports filtering by name/email, status (active/inactive/invited), admin privileges, and pagination. Use this when you need to list organization members or find specific users within an organization." }, { "slug": "TOGGL_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to retrieve details of a specific project. Use after confirming the workspace ID and project ID." }, { "slug": "TOGGL_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a list of projects from a Toggl workspace. Use after confirming workspace ID. Returns filtered and paginated projects with optional client details." }, { "slug": "TOGGL_GET_PUBLIC_SUBSCRIPTION_PLANS", "name": "Get Public Subscription Plans", "description": "Tool to retrieve all publicly available subscription plans from Toggl. Use when you need to display available pricing tiers or plan options to users." }, { "slug": "TOGGL_GET_STATUS", "name": "Get Webhooks Status", "description": "Tool to retrieve the Toggl Webhooks server status. Use when you need to check if the webhooks service is operational before registering or managing webhook subscriptions." }, { "slug": "TOGGL_GET_TAGS", "name": "Get Tags", "description": "Retrieve all tags in a Toggl workspace. Returns a list of tags with their IDs, names, and metadata. Use this when you need to list available tags for categorizing time entries or when searching for a specific tag by name. Returns an empty list if the workspace has no tags." }, { "slug": "TOGGL_GET_TASKS", "name": "List Tasks", "description": "Tool to list tasks in a workspace or within a specific project." }, { "slug": "TOGGL_GET_TIME_ENTRIES", "name": "Get Time Entries", "description": "Retrieve time entries for the authenticated user with flexible filtering options. Use this tool to: - List all recent time entries (no parameters needed) - Filter entries by date range (start_date + end_date) - Get entries modified since a specific time (since parameter for syncing) - Include project/tag metadata and sharing information Returns comprehensive details including project names, tags, duration, and billable status." }, { "slug": "TOGGL_GET_TIME_ENTRY", "name": "Get Time Entry", "description": "Tool to retrieve a specific time entry by its ID. Use when you have the entry ID and need its full details." }, { "slug": "TOGGL_GET_TIMEZONE_OFFSETS", "name": "Get Timezone Offsets", "description": "Tool to retrieve all available timezone offsets from Toggl. Use when you need to display timezone information or validate timezone selection for time entry operations." }, { "slug": "TOGGL_GET_TIMEZONES", "name": "Get Timezones", "description": "Tool to retrieve all available timezones supported by Toggl Track. Use when you need to validate timezone values or display available timezone options to users." }, { "slug": "TOGGL_GET_USER_CLIENTS", "name": "Get User Clients", "description": "Retrieves all clients accessible to the authenticated user across all their workspaces. Returns a complete list of client details including workspace associations, archive status, notes, and integration information. Use this to view all clients the current user has access to without needing to specify individual workspace IDs." }, { "slug": "TOGGL_GET_USER_PREFERENCES", "name": "Get User Preferences", "description": "Retrieves the authenticated user's preferences including timezone, date/time formats, notification settings, and enabled alpha/experimental features. Useful for understanding user display preferences or checking which optional features are available." }, { "slug": "TOGGL_GET_USER_PROJECTS", "name": "Get User Projects", "description": "Tool to retrieve all projects for the authenticated user. Use after authenticating to list available projects." }, { "slug": "TOGGL_GET_USER_TAGS", "name": "Get User Tags", "description": "Tool to retrieve tags associated with the current user. Use when you need to list all tags visible to your account across all workspaces, or to get tags that have been created/modified/deleted since a specific date for incremental syncing." }, { "slug": "TOGGL_GET_USER_TASKS", "name": "Get User Tasks", "description": "Retrieve all tasks across all workspaces accessible to the authenticated user. Returns tasks from projects the user can access, including task details like name, active status, estimated time, and tracked time. Use this to get a comprehensive list of tasks without needing to specify workspace or project IDs." }, { "slug": "TOGGL_GET_USER_WORKSPACES", "name": "Get User Workspaces", "description": "Tool to retrieve all workspaces the authenticated user belongs to. Use when you need to list accessible workspaces before performing workspace-specific operations. Verify the correct workspace ID from the returned list before use — an incorrect workspace ID will misroute entries and skew reports." }, { "slug": "TOGGL_GET_WORKSPACE_DETAILS", "name": "Get Workspace Details", "description": "Retrieves comprehensive details and settings for a specific Toggl workspace by ID. Returns workspace configuration including premium/business status, admin permissions, default settings for projects/billing, time tracking preferences, and organizational details. Use this when you need to inspect workspace properties or validate access before performing workspace-specific operations." }, { "slug": "TOGGL_GET_WORKSPACE_LOGO", "name": "Get Workspace Logo", "description": "Tool to get workspace logo. Use when you need to retrieve the logo associated with a specific workspace." }, { "slug": "TOGGL_GET_WORKSPACE_PREFERENCES", "name": "Get Workspace Preferences", "description": "Retrieves workspace preferences including the initial pricing plan and whether start/end times are hidden. Use this after obtaining a workspace ID to check workspace-level preference settings." }, { "slug": "TOGGL_GET_WORKSPACE_USERS", "name": "Get Workspace Users", "description": "Retrieves all users who belong to a specific Toggl workspace. Returns user details including their name, email, admin status, and activity status. Use this to list workspace members, check user roles, or verify user access to a workspace." }, { "slug": "TOGGL_PATCH_STOP_TIME_ENTRY", "name": "Stop Time Entry", "description": "Tool to stop a running time entry in a workspace. Use when a time entry needs to be ended." }, { "slug": "TOGGL_POST_ME_DISABLE_PRODUCT_EMAILS", "name": "Disable Product Emails", "description": "Tool to disable product emails for the authenticated user using a disable code. Use when the user wants to unsubscribe from Toggl product emails using a code from an unsubscribe link." }, { "slug": "TOGGL_PUT_UPDATE_TAG", "name": "Update Tag", "description": "Tool to update an existing tag in a specified workspace. Use after confirming the workspace_id and tag_id when renaming a tag. Example: rename tag 'urgent' to 'high_priority'." }, { "slug": "TOGGL_SEND_DEMO_EMAIL", "name": "Send Demo Email", "description": "Tool to send a demo request email through Toggl's system. Use when someone wants to request a product demo." }, { "slug": "TOGGL_SEND_EMAIL_CONTACT", "name": "Send Email to Contact", "description": "Tool to send an email to a contact via Toggl's smail service. Use when you need to send a message to a specific contact by providing their email, name, and message content." }, { "slug": "TOGGL_SEND_SMAIL_MEET", "name": "Send Smail Meet", "description": "Tool to send an email for meet. Use when you need to send a meet invitation email to a specific recipient with a location." }, { "slug": "TOGGL_UPDATE_CLIENT", "name": "Update Client", "description": "Updates an existing client in a Toggl workspace. Use this to modify a client's name or notes. Note: The Toggl API requires the 'name' field when updating any client property." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "toggl_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Toggl API Token", "type": "string", "description": "Your personal API token for Toggl Track, found in your profile settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "token_metrics", "name": "Token Metrics", "logo": "https://logos.composio.dev/api/token_metrics", "description": "Token Metrics provides an API offering real-time, AI-powered cryptocurrency data and insights for developers to build trading bots, dashboards, and portfolio tools.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TOKEN_METRICS_GET_PRICE", "name": "Get Price", "description": "Tool to retrieve real-time price and market metrics for a given cryptocurrency. Use when you need the latest price, volume, and market cap information for trading or analysis. Response fields like `volume24h` or `numberOfHolders` may be absent; treat missing fields as null, not zero." }, { "slug": "TOKEN_METRICS_GET_TECHNICAL_INDICATORS", "name": "Get Technical Indicators", "description": "Tool to retrieve technical indicators for a token. Use when you need technical analysis data for a specific symbol, interval, and indicator." }, { "slug": "TOKEN_METRICS_GET_TOKENS", "name": "Get Tokens", "description": "Tool to retrieve a paginated list of supported tokens with metadata. Use when you need comprehensive token listings across price, market cap, supply, and contract details. Returns token_id values required by TOKEN_METRICS_GET_PRICE and other endpoints — build your token_id mapping here first. Response fields such as volume24h and numberOfHolders may be absent for some tokens; treat missing values as null/unknown, not zero. tokenCreationDate is ISO-8601; convert to UTC for accurate age comparisons." }, { "slug": "TOKEN_METRICS_GET_TOP_MARKET_CAP_TOKENS", "name": "Get Top Market Cap Tokens", "description": "Tool to retrieve a list of tokens ranked by market capitalization. Use when you need an overview of the most valuable cryptocurrencies." }, { "slug": "TOKEN_METRICS_GET_TRADING_SIGNALS", "name": "Get Trading Signals", "description": "Tool to retrieve entry and exit crypto trading signals. Use when optimizing trading strategies with signal-based insights." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "token_metrics_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Token Metrics API Key", "type": "string", "description": "Your unique API key for accessing Token Metrics API endpoints.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tomba", "name": "Tomba", "logo": "https://logos.composio.dev/api/tomba", "description": "Tomba is an Email Finder for B2B sales and email marketing.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TOMBA_ATTRIBUTES_LIST", "name": "List Lead Attributes", "description": "Retrieves all custom lead attributes defined in your Tomba account. Use this action to discover the available attributes that can be used when creating or updating leads. Returns attribute metadata including name, identifier, type, and timestamps. No input parameters required." }, { "slug": "TOMBA_DOMAIN_STATUS", "name": "Domain Status", "description": "Tool to check if a domain is webmail or disposable. Use when validating email deliverability constraints." }, { "slug": "TOMBA_KEYS_DELETE", "name": "Delete API Key by ID", "description": "Tool to delete an API key by its numeric ID. Use when you need to permanently revoke an API key before its expiration. Note: You can get the numeric key ID from the TOMBA_KEYS_LIST action." }, { "slug": "TOMBA_KEYS_LIST", "name": "List API Keys", "description": "Tool to list all API keys. Use when you want to retrieve information about your existing Tomba API keys." }, { "slug": "TOMBA_LEADS_CREATE", "name": "Create Lead", "description": "Create a new lead in Tomba's lead database. Use this to store contact information for a person you want to track. Returns the unique ID of the created lead. Required fields: first_name, email. All other fields are optional." }, { "slug": "TOMBA_LEADS_LIST", "name": "List Leads", "description": "Tool to list all leads. Use when you need to retrieve and paginate your leads list." }, { "slug": "TOMBA_LISTS_DELETE", "name": "Delete Leads List by ID", "description": "Tool to delete a leads list by ID. Use when you need to permanently remove a list after confirming its ID." }, { "slug": "TOMBA_LISTS_LIST", "name": "List Lead Lists", "description": "Tool to list all lead lists. Use when you need to retrieve and paginate your lead lists." }, { "slug": "TOMBA_LISTS_UPDATE", "name": "Update Leads List", "description": "Tool to update a leads list's name by ID. Use when renaming an existing list after obtaining its ID." }, { "slug": "TOMBA_USAGE_STATS", "name": "Get Usage Statistics", "description": "Tool to get API usage statistics. Use when you need to monitor account usage and avoid hitting limits." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tomba_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Tomba API Key", "type": "string", "description": "Your Tomba API key, used for authentication.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Tomba API Secret", "type": "string", "description": "Your Tomba API secret, used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tomtom", "name": "Tomtom", "logo": "https://logos.composio.dev/api/tomtom", "description": "TomTom provides a suite of location-based services and APIs, including mapping, routing, traffic information, and geofencing, enabling developers to integrate advanced navigation and location functionalities into their applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 82, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "TOMTOM_ASSETS_LIST_FONTS", "name": "List Map Fonts", "description": "Tool to list available font asset versions for map rendering. Call after confirming the API key is valid." }, { "slug": "TOMTOM_ASSETS_LIST_SPRITES", "name": "List Assets Sprites", "description": "Tool to list available sprites for a given asset version. Use after determining the assetVersion." }, { "slug": "TOMTOM_ASSETS_LIST_STYLES", "name": "List map styles", "description": "Tool to list available map styles. Use after selecting an asset version to retrieve style options." }, { "slug": "TOMTOM_CALCULATE_LONG_DISTANCE_EV_ROUTE", "name": "Calculate Long Distance EV Route", "description": "Tool to calculate long-distance electric vehicle routes with optimal charging stops. Use when planning EV trips that require charging along the route." }, { "slug": "TOMTOM_CALCULATE_MATRIX_ROUTING_SYNC", "name": "Calculate Matrix Routing Sync", "description": "Tool to calculate route matrix synchronously for multiple origins and destinations (up to 200 cells). Use when you need travel times and distances between multiple location pairs with support for traffic, vehicle parameters, and routing options." }, { "slug": "TOMTOM_CALCULATE_REACHABLE_RANGE", "name": "Calculate Reachable Range", "description": "Tool to calculate the reachable range from a starting point given time, fuel, or energy constraints. Use when you need to determine how far a vehicle can travel from an origin within specified budgets." }, { "slug": "TOMTOM_CALCULATE_ROUTE", "name": "Calculate Route", "description": "Tool to calculate driving routes. Use when you need directions with optional waypoints and traffic consideration." }, { "slug": "TOMTOM_CALCULATE_ROUTE_WITH_BODY", "name": "Calculate Route with Body", "description": "Tool to calculate routes with advanced options via POST request. Use when you need to specify supporting points, avoid specific geographic areas, or configure vignette preferences." }, { "slug": "TOMTOM_CATEGORY_SEARCH", "name": "Category Search", "description": "Tool to search for Points of Interest by category. Use when you need to find POIs within a specific category around a location or area." }, { "slug": "TOMTOM_CREATE_NOTIFICATIONS_GROUPS", "name": "Create Notifications Contact Group", "description": "Tool to create a contact group for TomTom notifications. Use when you need to set up a group of webhooks or emails to receive notification alerts." }, { "slug": "TOMTOM_CREATE_ROUTING_BATCH", "name": "Create Routing Batch", "description": "Tool to submit asynchronous batch routing requests to TomTom API. Use when you need to calculate multiple routes efficiently in a single batch operation. The API returns a batch ID that can be used to retrieve results once processing is complete." }, { "slug": "TOMTOM_CREATE_ROUTING_BATCH_SYNC", "name": "Create Routing Batch Sync", "description": "Tool to execute synchronous batch routing requests for multiple routes or reachable ranges. Use when you need to calculate multiple routes or reachable ranges in a single API call (max 100 items)." }, { "slug": "TOMTOM_CREATE_ROUTING_MATRIX_ASYNC", "name": "Create Routing Matrix Async", "description": "Tool to submit asynchronous matrix routing calculation between multiple origins and destinations. Use when you need to calculate travel times and distances for large matrices (returns immediately with a job ID for later retrieval)." }, { "slug": "TOMTOM_CREATE_ROUTING_WAYPOINTOPTIMIZATION", "name": "Create Waypoint Optimization", "description": "Tool to optimize the sequence of waypoints to find the fastest route. Use when you need to find the optimal order to visit multiple locations (2-12 waypoints) with optional time windows and service time constraints." }, { "slug": "TOMTOM_CREATE_SEARCH_GEOMETRYFILTER", "name": "Geometry Filter", "description": "Tool to filter POIs by geometric boundaries (circles or polygons). Use when you need to check which POIs from a list fall within specific geographic areas. Supports up to 50 POIs per request." }, { "slug": "TOMTOM_CREATE_SNAP_TO_ROADS", "name": "Create Snap to Roads", "description": "Tool to snap GPS track points to the road network, correcting for GPS inaccuracies. Use when you need to match raw GPS coordinates to actual roads for route reconstruction or map matching." }, { "slug": "TOMTOM_CREATE_SNAP_TO_ROADS_BATCH", "name": "Create Snap to Roads Batch", "description": "Tool to submit asynchronous batch snap to roads requests to TomTom API. Use when you need to snap multiple GPS traces to the road network efficiently. The API returns a batch ID that can be used to retrieve results once processing is complete." }, { "slug": "TOMTOM_DELETE_NOTIFICATIONS_HISTORY", "name": "Delete Notifications History", "description": "Tool to clear the entire notifications history for the account. Use when you need to delete all historical notification records. This is an asynchronous operation that returns a PROCESSING status immediately." }, { "slug": "TOMTOM_DOWNLOAD_BATCH_SEARCH_ASYNC", "name": "Download Batch Search Results", "description": "Tool to download results of an asynchronous batch search job. Use when you have a batch ID from a previous batch submission and need to retrieve the search results. Returns HTTP 202 if still processing (with Location header for retry), or HTTP 200 with complete results when finished." }, { "slug": "TOMTOM_DOWNLOAD_MATRIX_ROUTING_ASYNC_RESULT", "name": "Download Matrix Routing Async Result", "description": "Tool to download results of asynchronous matrix routing job. Use when you need to retrieve completed matrix routing results using the job ID from a previous async matrix submission." }, { "slug": "TOMTOM_DOWNLOAD_SNAP_TO_ROADS_ASYNC_RESULT", "name": "Download Snap to Roads Async Result", "description": "Tool to download results of asynchronous snap to roads batch job. Use when you need to retrieve completed snap to roads results using the job ID from a previous async batch submission. Returns batch items with projected GPS points snapped to actual road geometry and detailed road information." }, { "slug": "TOMTOM_EV_CHARGING_STATIONS_AVAILABLE", "name": "EV Charging Stations Availability", "description": "Tool to retrieve EV charging station availability info. Use when you have the chargingAvailability ID (from POI search dataSources) to get live availability." }, { "slug": "TOMTOM_FLOW_SEGMENT_DATA", "name": "Flow Segment Data", "description": "Tool to retrieve traffic flow data for a specific road segment. Use when you need current and free flow speeds for given coordinates." }, { "slug": "TOMTOM_FUZZY_SEARCH", "name": "Fuzzy Search", "description": "Tool to perform a fuzzy search for addresses and points of interest. Use when you need flexible matching on free-form location queries." }, { "slug": "TOMTOM_GEOCODE_QUERY", "name": "Geocode Query", "description": "Tool to convert a free-form address query into geographic coordinates. Use when you need to geocode an address string without structured fields." }, { "slug": "TOMTOM_GET_AUTOCOMPLETE", "name": "Get Autocomplete Suggestions", "description": "Tool to get search suggestions as user types a query. Use when you need autocomplete suggestions for partial search input based on recognized entities like brands, categories, or locations." }, { "slug": "TOMTOM_GET_COPYRIGHTS", "name": "Get Map Tile Copyrights", "description": "Tool to retrieve copyright information for TomTom map tiles. Use when you need to display attribution or copyright notices for map content." }, { "slug": "TOMTOM_GET_GEOMETRY_SEARCH", "name": "Get Geometry Search", "description": "Tool to search for POIs and locations within specified geometric areas (circles or polygons). Use when you need to find places within custom-defined boundaries." }, { "slug": "TOMTOM_GET_HILLSHADE_TILE", "name": "Get Hillshade Tile", "description": "Tool to retrieve hillshade terrain map tiles for specified coordinates and zoom. Use when you need terrain elevation shading overlays for map visualization." }, { "slug": "TOMTOM_GET_INCIDENT_VIEWPORT", "name": "Get Incident Viewport", "description": "Tool to retrieve incident viewport information including Traffic Model ID. Use when you need the current traffic model ID for a map viewport to make subsequent traffic API calls." }, { "slug": "TOMTOM_GET_MAP_COPYRIGHTS_BOUNDING_BOX", "name": "Get Map Copyrights Bounding Box", "description": "Tool to retrieve copyright information for a geographic bounding box. Use when you need attribution for a specific map area defined by coordinates." }, { "slug": "TOMTOM_GET_MAP_COPYRIGHTS_CAPTION", "name": "Get Map Copyrights Caption", "description": "Tool to retrieve the copyright caption text for TomTom maps. Use when you need to display attribution or copyright notices on map displays." }, { "slug": "TOMTOM_GET_MAP_COPYRIGHTS_FORMAT", "name": "Get Map Copyrights (Global)", "description": "Tool to retrieve copyright information for the whole world in the Maps API Raster Tile Service. Use when you need global copyright data for map display attribution." }, { "slug": "TOMTOM_GET_MAPS_ORBIS_MAP_TILE", "name": "Get Orbis Map Tile", "description": "Tool to retrieve Orbis map tiles at specified zoom level and coordinates. Use when you need high-quality map tiles for custom map rendering. Supports both raster (PNG) and vector (PBF) tile formats." }, { "slug": "TOMTOM_GET_MAPS_ORBIS_TRAFFIC_TILE", "name": "Get Orbis Traffic Incident Tile", "description": "Tool to retrieve Orbis Traffic Incident Tiles containing traffic incident data in Protocol Buffer format. Use when you need detailed traffic incident information for a specific tile coordinate at a given zoom level." }, { "slug": "TOMTOM_GET_MAP_STYLE_METADATA", "name": "Get Map Style Metadata", "description": "Tool to retrieve map style metadata. Use to get a list of available map style resources. Returns available style files like flow styles and incident styles." }, { "slug": "TOMTOM_GET_MAP_STYLES", "name": "Get map styles metadata", "description": "Tool to retrieve map style metadata as a Mapbox Style Specification JSON. Use to get a merged style definition combining map, traffic, and POI components for vector map rendering." }, { "slug": "TOMTOM_GET_NOTIFICATIONS_GROUPS_GROUPID", "name": "Get Contact Group", "description": "Tool to retrieve details of a specific contact group by its UUID. Use when you need to get the name, webhook URLs, and email addresses associated with a contact group." }, { "slug": "TOMTOM_GET_NOTIFICATIONS_HISTORY", "name": "Get Notifications History", "description": "Tool to retrieve notifications history from TomTom. Use when you need to list past notifications sent within a specific time range (must be less than 24 hours)." }, { "slug": "TOMTOM_GET_NOTIFICATIONS_SETTINGS", "name": "Get Notifications Settings", "description": "Tool to retrieve current notification settings. Use when you need to check notification configuration options." }, { "slug": "TOMTOM_GET_ORBIS_GEOCODE", "name": "Orbis Geocode", "description": "Tool to geocode addresses using TomTom's Orbis Maps API. Use when converting address queries to geographic coordinates." }, { "slug": "TOMTOM_GET_ORBIS_PLACES_AUTOCOMPLETE", "name": "Orbis Places Autocomplete", "description": "Tool to get autocomplete suggestions for place searches using TomTom Orbis Maps. Use when you need to recognize entities (brands, categories, locations) in a query and offer them as structured search terms." }, { "slug": "TOMTOM_GET_ORBIS_STRUCTURED_GEOCODE", "name": "Orbis Structured Geocode", "description": "Tool to convert structured address fields into geographic coordinates using TomTom Orbis Maps API. Use when you have structured address components and need precise geocoding." }, { "slug": "TOMTOM_GET_ORBIS_TRAFFIC_FLOW_TILE", "name": "Get Orbis Traffic Flow Tile", "description": "Tool to retrieve Orbis traffic flow tile data in Protocol Buffer format. Use when you need traffic flow information for a specific map tile coordinate." }, { "slug": "TOMTOM_GET_ORBIS_TRAFFIC_INCIDENT_DETAILS", "name": "Get Orbis Traffic Incident Details", "description": "Tool to retrieve detailed Orbis traffic incidents by bounding box or IDs. Use when you need comprehensive incident data including events, delays, and geometry." }, { "slug": "TOMTOM_GET_ROUTING_BATCH", "name": "Get Routing Batch Results", "description": "Tool to download asynchronous batch routing results. Use when you need to retrieve the results of a previously submitted batch routing request using its batch ID. Returns HTTP 202 if processing is still ongoing (retry with Location header), or HTTP 200 with completed results." }, { "slug": "TOMTOM_GET_ROUTING_MATRIX_ASYNC_STATUS", "name": "Get Matrix Routing Async Status", "description": "Tool to check the status of an asynchronous matrix routing job. Use when you need to poll the status of a previously submitted matrix routing request to determine if it's still processing, completed successfully, or failed." }, { "slug": "TOMTOM_GET_SATELLITE_TILE", "name": "Get Satellite Tile", "description": "Tool to retrieve satellite imagery map tiles at specified coordinates and zoom. Use when you need high-resolution satellite imagery for mapping applications." }, { "slug": "TOMTOM_GET_SNAP_TO_ROADS_BATCH_STATUS", "name": "Get Snap to Roads Batch Status", "description": "Tool to check the status of an asynchronous Snap to Roads batch job. Use when you need to poll the status of a previously submitted snap to roads batch request to determine if it's still processing or completed." }, { "slug": "TOMTOM_GET_TRAFFIC_FLOW_TILES_RASTER", "name": "Get Traffic Flow Tiles Raster", "description": "Tool to retrieve raster traffic flow map tiles for visualization. Use when you need to display real-time traffic flow conditions on a map." }, { "slug": "TOMTOM_GET_TRAFFIC_INCIDENT_DETAILS", "name": "Get Traffic Incident Details", "description": "Tool to retrieve traffic incident details within a bounding box at a specified zoom level. Use when you need detailed incident information for map rendering or traffic analysis." }, { "slug": "TOMTOM_GET_TRAFFIC_INCIDENT_TILE", "name": "Get Traffic Incident Tile", "description": "Tool to retrieve raster traffic incident map tiles showing traffic incidents at specified coordinates and zoom. Use when you need visual overlay of traffic incidents for custom map rendering." }, { "slug": "TOMTOM_GET_TRAFFIC_INCIDENT_VIEWPORT", "name": "Get Traffic Incident Viewport", "description": "Tool to retrieve traffic incidents within a viewport defined by bounding box and zoom level. Use when you need incident data for a specific map view with overview context." }, { "slug": "TOMTOM_LIST_GEOFENCING_ALERT_RULES", "name": "List Geofencing Alert Rules", "description": "Tool to list geofencing alert rules with optional filtering. Use when you need to retrieve configured alert rules for projects, fences, or objects." }, { "slug": "TOMTOM_LIST_GEOFENCING_ALERTS_HISTORY", "name": "List Geofencing Alerts History", "description": "Tool to retrieve geofencing alert history within a specified time range. Use when you need to query past alerts triggered by geofencing rules." }, { "slug": "TOMTOM_LIST_GEOFENCING_OBJECTS", "name": "List Geofencing Objects", "description": "Tool to list all tracked objects in the TomTom Geofencing system. Use when you need to retrieve all objects currently being tracked for geofencing operations." }, { "slug": "TOMTOM_LIST_LOCATION_HISTORY_OBJECTS", "name": "List Location History Objects", "description": "Tool to list objects with location history. Use when you need to retrieve all objects being tracked for location history." }, { "slug": "TOMTOM_LIST_NOTIFICATION_GROUPS", "name": "List Notification Groups", "description": "Tool to list notification contact groups. Use when you need to retrieve available contact groups for notifications. Note: This service will be decommissioned on January 31, 2027." }, { "slug": "TOMTOM_LIST_POI_CATEGORIES", "name": "List POI Categories", "description": "Tool to retrieve all POI categories supported by TomTom Search API. Use when you need the complete list of category IDs and names for searching POIs." }, { "slug": "TOMTOM_LIST_SPRITE_VERSIONS", "name": "List Sprite Versions", "description": "Tool to list available sprite asset versions. Use when you need to know which sprite versions are available after obtaining a valid API key." }, { "slug": "TOMTOM_MAP_DISPLAY_COPYRIGHTS", "name": "Get Map Copyrights", "description": "Tool to retrieve copyright information for a specific map tile. Use when you need to display or verify attribution for a given tile." }, { "slug": "TOMTOM_MAP_DISPLAY_RASTER_TILE", "name": "MAP_DISPLAY_RASTER_TILE", "description": "Tool to retrieve a raster map tile for specified coordinates and zoom. Use when you need direct tile image data for custom map rendering." }, { "slug": "TOMTOM_MAP_DISPLAY_STATIC_IMAGE", "name": "Map Display Static Image", "description": "Tool to fetch a static map snapshot given center coords and zoom. Use when you need a standalone map image for display." }, { "slug": "TOMTOM_MAP_DISPLAY_WMS_GET_MAP", "name": "Map Display WMS GetMap", "description": "Tool to retrieve a map image via WMS GetMap. Use when you need georeferenced map layers for custom rendering." }, { "slug": "TOMTOM_MATRIX_ROUTING", "name": "Matrix Routing", "description": "Tool to calculate travel time and distance matrix between multiple locations. Use when you require a matrix of travel times and distances between multiple origins and destinations." }, { "slug": "TOMTOM_NEARBY_SEARCH", "name": "Nearby Search", "description": "Tool to find Points of Interest near a specified location. Use after confirming coordinates to discover nearby POIs." }, { "slug": "TOMTOM_PATCH_NOTIFICATIONS_GROUPS_GROUPID", "name": "Edit Contact Group (Partial)", "description": "Tool to partially update a contact group in TomTom Notifications API. Use when you need to edit the name, webhook URLs, or email addresses of an existing contact group." }, { "slug": "TOMTOM_POINTS_OF_INTEREST_SEARCH", "name": "Points of Interest Search", "description": "Tool to search for points of interest by query. Use when you need POI suggestions by name or category." }, { "slug": "TOMTOM_REVERSE_GEOCODE", "name": "Reverse Geocode", "description": "Tool to convert geographic coordinates into a human-readable address. Use when you need to obtain address information from latitude and longitude values." }, { "slug": "TOMTOM_REVERSE_GEOCODE_CROSS_STREET", "name": "Reverse Geocode Cross Street", "description": "Tool to find the nearest cross street or intersection for given geographic coordinates. Use when you need to identify street intersections near a specific latitude/longitude position." }, { "slug": "TOMTOM_REVERSE_GEOCODE_ORBIS", "name": "Reverse Geocode Orbis", "description": "Tool to convert geographic coordinates into a human-readable address using TomTom's Orbis Maps API. Use when you need detailed address information from latitude and longitude values with Orbis data coverage." }, { "slug": "TOMTOM_SEARCH_ALONG_ROUTE", "name": "Search Along Route", "description": "Tool to search for Points of Interest along a specified route with detour time constraints. Use when you need to find POIs (restaurants, gas stations, hotels) accessible from a planned route." }, { "slug": "TOMTOM_SEARCH_ALONG_ROUTE_V2", "name": "Search Along Route (v2)", "description": "Tool to search for Points of Interest along a specified route using Search API v2. Use when you need to find POIs accessible from a planned route with detour constraints." }, { "slug": "TOMTOM_SEARCH_GEOMETRY", "name": "Search Geometry", "description": "Tool to search for POIs within geometric areas (circles or polygons). Use when you need to find points of interest constrained to specific geographic boundaries." }, { "slug": "TOMTOM_SEARCH_ORBIS_CATEGORY", "name": "Orbis Category Search", "description": "Tool to search for Points of Interest by category using TomTom Orbis Maps API. Use when you need to find POIs within specific categories using the Orbis mapping service." }, { "slug": "TOMTOM_SEARCH_ORBIS_PLACES", "name": "Orbis Places Search", "description": "Tool to perform fuzzy search for addresses and points of interest using TomTom Orbis Maps API. Use when you need flexible matching on free-form location queries with the Orbis mapping service." }, { "slug": "TOMTOM_SEARCH_ORBIS_POI", "name": "Orbis POI Search", "description": "Tool to search for points of interest using TomTom Orbis Maps API. Use when you need POI suggestions by name or category from the Orbis dataset." }, { "slug": "TOMTOM_SNAP_TO_ROADS_SYNC", "name": "Snap to Roads (Sync)", "description": "Tool to snap GPS points to the road network synchronously. Maps raw GPS coordinates to actual road geometry, useful for map matching and route reconstruction." }, { "slug": "TOMTOM_STRUCTURED_GEOCODE", "name": "Structured Geocode", "description": "Tool to convert structured address fields into coordinates. Use after collecting street, city, and postal code." }, { "slug": "TOMTOM_TRAFFIC_INCIDENTS", "name": "Traffic Incidents", "description": "Tool to retrieve detailed traffic incidents within a bounding box. Use when you need incident details for a defined map area." }, { "slug": "TOMTOM_UPDATE_GEOFENCING_SECRET", "name": "Update Geofencing Secret", "description": "Tool to change the customer secret for TomTom Geofencing API. Use when you need to update or rotate the authentication secret for geofencing operations." }, { "slug": "TOMTOM_UPDATE_NOTIFICATIONS_GROUP", "name": "Update Notifications Group", "description": "Tool to update an existing contact group in TomTom Notifications API. Use when you need to modify the name, webhook URLs, or email addresses of a contact group." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tomtom_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "TomTom API Key", "type": "string", "description": "Your unique TomTom API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tpscheck", "name": "Tpscheck", "logo": "https://logos.composio.dev/api/tpscheck", "description": "TPSCheck is a service that verifies in real-time if a phone number is registered with the UK's Telephone Preference Service (TPS) or Corporate Telephone Preference Service (CTPS), providing insights on validity, location, type, and provider of the number.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TPSCHECK_CHECK_PHONE_NUMBER", "name": "Check Phone Number (TPS/CTPS)", "description": "Checks if one or more UK phone numbers are registered on the Telephone Preference Service (TPS) and/or Corporate Telephone Preference Service (CTPS) lists using the tpsapi.com API." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tpscheck_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "The API key provided upon signing up for TPSCheck.uk.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "trakt", "name": "Trakt", "logo": "https://logos.composio.dev/api/trakt", "description": "TV and movie tracking platform with social features, watch history, and recommendations", "category": "lifestyle & entertainment", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "trakt_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "transistor_fm", "name": "Transistor fm", "logo": "https://logos.composio.dev/api/transistor_fm", "description": "Podcast hosting and analytics platform. Create unlimited podcasts, manage episodes, track analytics, and distribute to Apple Podcasts, Spotify, Google Podcasts.", "category": "video & audio", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TRANSISTOR_FM_AUTHORIZE_EPISODE_AUDIO_UPLOAD", "name": "Authorize Episode Audio Upload", "description": "Tool to authorize a URL for uploading a local audio file to be used when creating or updating an episode. Use when you need to upload audio from a local file. If you already have a publicly available URL for your audio file, skip this step and use that URL directly in the episode[audio_url] field." }, { "slug": "TRANSISTOR_FM_GET_AUTHENTICATED_USER", "name": "Get Authenticated User", "description": "Tool to retrieve authenticated user account details. Use when you need to access information about the currently authenticated Transistor.fm user." }, { "slug": "TRANSISTOR_FM_LIST_SHOWS", "name": "List Shows", "description": "Tool to retrieve a paginated list of shows in descending order by updated date. Use when you need to browse podcast shows, search by title, or filter by privacy status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "transistor_fm_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Transistor.fm API key. Get it from Your Profile Icon > Your Account in the Transistor Dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "travis_ci", "name": "Travis Ci", "logo": "https://logos.composio.dev/api/travis_ci", "description": "The simplest way to test and deploy your projects. Easily sync your projects with Travis CI and you'll be testing your code in minutes.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "travis_ci_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Find your API token in your account settings (https://travis-ci.com/account/preferences), under the API authentication section", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "trestle", "name": "Trestle", "logo": "https://logos.composio.dev/api/trestle", "description": "Your partner for quality identity data APIs. TrestleIQ provides phone validation, caller identification, reverse phone lookup, and address validation APIs.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "trestle_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your Trestle account and sign in, then click on \"Your API Keys\" at https://portal.trestleiq.com/api-keys to retrieve your API Key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "triggercmd", "name": "Triggercmd", "logo": "https://logos.composio.dev/api/triggercmd", "description": "TRIGGERcmd is a cloud service that allows you to securely and remotely run commands on your computers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TRIGGERCMD_LIST_COMMANDS_V2", "name": "List TriggerCMD Commands V2", "description": "Tool to list all available commands for the authenticated user. Use when you need to retrieve all commands configured on your computers." }, { "slug": "TRIGGERCMD_LIST_COMPUTERS", "name": "List TriggerCMD Computers", "description": "Tool to list all computers associated with your TriggerCMD account. Use after authenticating with your token to retrieve connected machines." }, { "slug": "TRIGGERCMD_LIST_PANEL_BUTTONS", "name": "List TriggerCMD Panel Buttons", "description": "Tool to retrieve all panel buttons configured in your TriggerCMD account. Use when you need to browse available panel buttons before triggering them." }, { "slug": "TRIGGERCMD_TRIGGER_COMMAND", "name": "Trigger Command", "description": "Tool to trigger a specified command on a target computer. Use when you want to remotely execute a pre-configured command after authentication. Values for `computer` and `command` must exactly match identifiers returned by TRIGGERCMD_LIST_COMPUTERS and TRIGGERCMD_LIST_COMMANDS respectively; arbitrary names cause silent failures." }, { "slug": "TRIGGERCMD_TRIGGER_PANEL_BUTTON", "name": "Trigger Panel Button", "description": "Tool to trigger a specific panel button. Panels allow grouping related commands for easier organization and triggering. Use when you want to execute a command that's part of a panel configuration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "triggercmd_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "TRIGGERcmd API Token", "type": "string", "description": "Your API token for authenticating API requests to TRIGGERcmd. You can obtain this from the TRIGGERcmd Instructions page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tripadvisor", "name": "Tripadvisor", "logo": "https://logos.composio.dev/api/tripadvisor", "description": "TripAdvisor Content API provides access to location data, reviews, photos, and search functionality for travel-related content.", "category": "reviews", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TRIPADVISOR_GET_LOCATION_ACTIVITIES", "name": "Get Location Activities", "description": "Tool to retrieve an ordered list of all bookable activities for a destination. Use when you need to get available activities for a specific location by its ID. Returns activity details including pricing, descriptions, images, and availability information." }, { "slug": "TRIPADVISOR_GET_LOCATION_AWARDS", "name": "Get Location Awards", "description": "Tool to retrieve all awards earned by a TripAdvisor location. Use when you need to fetch awards history for a specific destination. Returns Traveler's Choice Awards, Certificates of Excellence, and Green Leader awards with badge images and metadata." }, { "slug": "TRIPADVISOR_GET_LOCATION_DETAILS_V2", "name": "Get Location Details V2", "description": "Tool to retrieve comprehensive information about a TripAdvisor location including name, address, ratings, reviews, and links. Requires an authenticated TripAdvisor API connection. Use when you need detailed information about a hotel, restaurant, attraction, or destination by its location ID." }, { "slug": "TRIPADVISOR_GET_LOCATION_GEOS", "name": "Get Location Geos", "description": "Tool to retrieve immediate children in the geographical location hierarchy for a given destination. Use when exploring location hierarchies or browsing geographical areas within a parent location." }, { "slug": "TRIPADVISOR_GET_LOCATION_HOTELS", "name": "Get Location Hotels", "description": "Retrieves hotels near a specified TripAdvisor location. Returns up to 10 hotels sorted by proximity to the location's geographic center. Use this tool when you need to find hotels in a city, region, or geographic area. Provide a TripAdvisor location ID (e.g., '60745' for Boston, '60763' for New York City, '186338' for London) to get nearby hotels with their names, addresses, and distances from the center point. The tool performs a two-step process: 1. Retrieves location details (coordinates) for the given location_id 2. Searches for hotels near those coordinates Results are limited to 10 hotels per request, sorted by distance from the location center." }, { "slug": "TRIPADVISOR_GET_LOCATION_PHOTOS_V2", "name": "Get Location Photos V2", "description": "Retrieves up to 5 high-quality photos for a specific TripAdvisor location by location ID. Returns photos with multiple size variants (thumbnail, small, medium, large, original), user information, captions, and metadata. The API returns a maximum of 5 photos per request with no pagination options. Use this to display location images for hotels, restaurants, attractions, or destinations." }, { "slug": "TRIPADVISOR_GET_LOCATION_REVIEWS_V2", "name": "Get Location Reviews V2", "description": "Tool to retrieve up to 5 of the most recent reviews for a specific TripAdvisor location. Use when you need to get user reviews, ratings, and feedback for a hotel, restaurant, attraction, or destination by its location ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tripadvisor_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your TripAdvisor Content API key. Get it from tripadvisor.com/developers by creating a free account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "tripadvisor_content_api", "name": "TripAdvisor Content API", "logo": "https://logos.composio.dev/api/tripadvisor_content_api", "description": "The Tripadvisor Content API provides developers with access to extensive travel data including locations, reviews, photos, and ratings.", "category": "reviews", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TRIPADVISOR_CONTENT_API_GET_LOCATION_DETAILS", "name": "Get Location Details", "description": "Tool to get comprehensive information about a location (hotel, restaurant, or attraction) including name, address, rating, and contact details. Use when you need detailed information about a specific TripAdvisor location." }, { "slug": "TRIPADVISOR_CONTENT_API_GET_LOCATION_PHOTOS_V2", "name": "Get Location Photos (Enhanced)", "description": "Tool to retrieve up to 5 high-quality photos for a specific location with complete metadata and pagination support. Use when you need detailed photo information including user details, source filtering, and pagination. Photos are ordered by recency." }, { "slug": "TRIPADVISOR_CONTENT_API_GET_LOCATION_REVIEWS", "name": "Get Location Reviews", "description": "Tool to retrieve up to 5 of the most recent reviews for a specific location. Use when you need customer feedback, ratings, or review content for a TripAdvisor location." }, { "slug": "TRIPADVISOR_CONTENT_API_SEARCH_LOCATIONS2", "name": "Search Locations (Advanced)", "description": "Tool to search for TripAdvisor locations with advanced filtering options. Use when you need to find locations by name, category, phone, address, or coordinates with radius-based filtering." }, { "slug": "TRIPADVISOR_CONTENT_API_SEARCH_NEARBY_LOCATIONS", "name": "Search Nearby Locations", "description": "Tool to search for locations near a specified latitude/longitude. Returns up to 10 locations with optional filtering by category, phone, or address." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "tripadvisor_content_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Tripadvisor API Key", "type": "string", "description": "The API key provided by Tripadvisor for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "truvera", "name": "Truvera", "logo": "https://logos.composio.dev/api/truvera", "description": "Truvera is a platform that enables organizations and developers to issue, manage, and verify verifiable credentials and decentralized identities, making data fraud-proof and instantly verifiable.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TRUVERA_CREATE_API_KEY", "name": "Create API Key", "description": "Tool to create an API key. Use when you need to generate a new API key with optional alias and IP allowlist." }, { "slug": "TRUVERA_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook endpoint. Use when you need Dock.io to push event notifications to your service." }, { "slug": "TRUVERA_DELETE_API_KEY", "name": "Delete API Key", "description": "Tool to delete a specific API key. Use after confirming the API key's ID via list_api_keys." }, { "slug": "TRUVERA_DELETE_CREDENTIAL", "name": "Delete Credential", "description": "Tool to delete a verifiable credential. Use after confirming the credential is no longer needed." }, { "slug": "TRUVERA_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a specific tag. Use when you have a tag ID and want to permanently remove it." }, { "slug": "TRUVERA_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a specific webhook. Use after confirming the webhook's ID via list_webhooks." }, { "slug": "TRUVERA_RETRIEVE_API_KEY", "name": "Retrieve API Key", "description": "Tool to retrieve details of an API key. Tries single-key endpoint first, then falls back to listing and filtering." }, { "slug": "TRUVERA_RETRIEVE_API_KEYS", "name": "Retrieve API Keys", "description": "Tool to list all API keys. Use when you need to retrieve all API keys for the authenticated account." }, { "slug": "TRUVERA_RETRIEVE_CREDENTIAL", "name": "Retrieve Credential", "description": "Tool to retrieve a verifiable credential by its unique ID. If a password was used to persist it, include the same password to decrypt and return the full credential. Otherwise, only metadata is returned." }, { "slug": "TRUVERA_RETRIEVE_CREDENTIALS", "name": "Retrieve Credentials", "description": "Tool to retrieve a list of credential metadata. Use when you need to collect credential details with optional pagination or filtering after authentication." }, { "slug": "TRUVERA_RETRIEVE_DID", "name": "Retrieve DID Document", "description": "Tool to retrieve a DID Document by its DID. Use after you have a valid DID to resolve and inspect its DID Document." }, { "slug": "TRUVERA_RETRIEVE_REGISTRIES", "name": "Retrieve Revocation Registries", "description": "Tool to retrieve a list of revocation registries. Use when you need to list all registries created by the authenticated account with optional pagination and filtering." }, { "slug": "TRUVERA_RETRIEVE_WEBHOOK", "name": "Retrieve Webhook", "description": "Tool to retrieve a specific webhook's details. Use after confirming you have a valid webhook ID." }, { "slug": "TRUVERA_RETRIEVE_WEBHOOKS", "name": "Retrieve Webhooks", "description": "Tool to list configured webhooks. Use when you need to retrieve all webhook endpoints configured for your account." }, { "slug": "TRUVERA_VERIFY", "name": "Verify Credential or Presentation", "description": "Tool to verify a verifiable credential or presentation. Use after receiving a credential or presentation from an issuer." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "truvera_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Truvera API.", "required": true, "default": "https://api.truvera.io" }, { "name": "generic_api_key", "displayName": "Truvera API Key", "type": "string", "description": "Your Truvera API key for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "turbot_pipes", "name": "Turbot Pipes", "logo": "https://logos.composio.dev/api/turbot_pipes", "description": "Turbot Pipes is an intelligence, automation, and security platform built specifically for DevOps, offering hosted Steampipe database instances, shared dashboards, snapshots, and more.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 170, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "TURBOT_PIPES_ACTOR_GET", "name": "Get Authenticated Actor", "description": "Tool to retrieve the authenticated actor. Use when you need details about the currently authenticated actor after obtaining a valid token." }, { "slug": "TURBOT_PIPES_ACTOR_LIST_ACTIVITY", "name": "List Actor Activity", "description": "Tool to list activities for the authenticated actor. Use when you need detailed activity logs with optional filtering and pagination." }, { "slug": "TURBOT_PIPES_ACTOR_LIST_CONNECTIONS", "name": "List actor connections", "description": "Tool to list connections associated with the authenticated actor. Use after confirming authentication to retrieve the actor's connection list." }, { "slug": "TURBOT_PIPES_ACTOR_LIST_ORGS", "name": "List Actor Organizations", "description": "Tool to list organizations associated with the authenticated actor. Use when you have a valid access token." }, { "slug": "TURBOT_PIPES_ACTOR_LIST_WORKSPACES", "name": "List Actor Workspaces", "description": "Tool to list workspaces for the authenticated actor. Use when you need to retrieve all workspaces the actor has access to." }, { "slug": "TURBOT_PIPES_AUTH_LOGIN_TOKEN_EMAIL_CREATE", "name": "Start login via Email", "description": "Tool to start login process by sending a confirmation code to a user's email. Use when initiating a passwordless email login flow." }, { "slug": "TURBOT_PIPES_CREATE_AUTH_SIGNUP", "name": "Create User Signup", "description": "Tool to create a new user account via signup. Use when registering a new user with their email address." }, { "slug": "TURBOT_PIPES_CREATE_ORG_CONNECTION", "name": "Create org connection", "description": "Tool to create a new connection for an organization. Use when you need to establish a new connection with a specific plugin (e.g., AWS, GCP, Azure) in an organization." }, { "slug": "TURBOT_PIPES_CREATE_ORG_CONNECTION_FOLDER", "name": "Create Org Connection Folder", "description": "Tool to create a new connection folder for an organization. Use when you need to create a connection folder in an org to organize connections." }, { "slug": "TURBOT_PIPES_CREATE_ORG_WORKSPACE_AGGREGATOR", "name": "Create Org Workspace Aggregator", "description": "Tool to create an aggregator for a workspace of an organization. Use when you need to add a new aggregator to a specific organization's workspace." }, { "slug": "TURBOT_PIPES_CREATE_ORG_WORKSPACE_CONNECTION", "name": "Create Org Workspace Connection", "description": "Tool to create a connection on an org workspace or associate an existing org connection to the workspace. Use when you need to create or link a connection to an organization's workspace." }, { "slug": "TURBOT_PIPES_CREATE_ORG_WORKSPACE_CONNECTION_FOLDER", "name": "Create Org Workspace Connection Folder", "description": "Tool to create a connection folder in a workspace of an organization. Use when you need to organize connections into folders within an org workspace." }, { "slug": "TURBOT_PIPES_CREATE_ORG_WORKSPACE_QUERY", "name": "Create Org Workspace Query", "description": "Tool to execute a SQL query in an org workspace using POST method. Use when you need to run queries against Turbot Pipes workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_CREATE_ORG_WORKSPACE_SNAPSHOT", "name": "Create Org Workspace Snapshot", "description": "Tool to create a new workspace snapshot for an organization. Use when you need to save a point-in-time capture of dashboard data, layouts, and panels for a workspace." }, { "slug": "TURBOT_PIPES_CREATE_USER_AI_KEY", "name": "Create User AI Key", "description": "Tool to create a new AI provider API key at the user level. Use when you need to configure AI provider credentials for a specific user in Turbot Pipes." }, { "slug": "TURBOT_PIPES_CREATE_USER_CONNECTION", "name": "Create User Connection", "description": "Tool to create a new connection for a user. Use when you need to establish a new connection with a specific plugin (e.g., AWS, GCP, Azure) for a user account." }, { "slug": "TURBOT_PIPES_CREATE_USER_INTEGRATION", "name": "Create User Integration", "description": "Tool to create a new integration for a user. Use when you need to create a new integration for a specific user by providing the user handle, integration handle, and type." }, { "slug": "TURBOT_PIPES_CREATE_USER_NOTIFIER", "name": "Create User Notifier", "description": "Tool to create a new notifier for a user. Use when you need to configure notification endpoints for a specific user in Turbot Pipes." }, { "slug": "TURBOT_PIPES_CREATE_USER_PASSWORD", "name": "Create User Password", "description": "Tool to create or rotate a user password. Use when you need to generate a new password for a user or reset an existing one." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_CONNECTION", "name": "Create User Workspace Connection", "description": "Tool to create a connection on a workspace for a user. Use when you need to create or link a connection to a user's workspace." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_CONNECTION_FOLDER", "name": "Create User Workspace Connection Folder", "description": "Tool to create a connection folder in a workspace of a user. Use when you need to organize connections into folders within a user workspace." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_DATATANK", "name": "Create User Workspace Datatank", "description": "Tool to create a new user workspace Datatank. Use when you need to create a new Datatank for data storage in a user's workspace." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_DATATANK_TABLE", "name": "Create User Workspace Datatank Table", "description": "Tool to create a new user workspace datatank table. Use when you need to create a table within a user's workspace datatank for data storage and querying." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_MOD_VARIABLE_SETTING", "name": "Create User Workspace Mod Variable Setting", "description": "Tool to create a setting for a mod variable in a user workspace. Use when you need to configure a variable for a mod installed in a user's workspace." }, { "slug": "TURBOT_PIPES_CREATE_USER_WORKSPACE_NOTIFIER", "name": "Create User Workspace Notifier", "description": "Tool to create a new notifier for a user workspace. Use when you need to configure a notification endpoint (e.g., Slack, email) for a specific workspace." }, { "slug": "TURBOT_PIPES_DELETE_CONVERSATION_ORG", "name": "Delete Org Workspace Conversation", "description": "Tool to delete a specific org workspace conversation. Use when you need to remove an AI conversation from an organization workspace after confirming the org handle, workspace handle, and conversation ID." }, { "slug": "TURBOT_PIPES_DELETE_ORG", "name": "Delete Organization", "description": "Tool to delete a specified organization if you have appropriate access. Use when you need to permanently remove an organization and have confirmed the org handle." }, { "slug": "TURBOT_PIPES_DELETE_ORG_BILLING_SUBSCRIPTION", "name": "Delete Org Billing Subscription", "description": "Tool to delete an organization billing subscription. Schedules cancellation at the end of the current period. Use when you need to cancel an org subscription after confirming the org handle and subscription ID." }, { "slug": "TURBOT_PIPES_DELETE_ORG_CONNECTION_PERMISSION", "name": "Delete Org Connection Permission", "description": "Tool to delete permission for a connection defined on an org. Use when you need to revoke a specific permission from an org connection." }, { "slug": "TURBOT_PIPES_DELETE_ORG_WORKSPACE", "name": "Delete Organization Workspace", "description": "Tool to delete an organization workspace. Use when you need to permanently remove a workspace from an organization after confirming org and workspace handles." }, { "slug": "TURBOT_PIPES_DELETE_ORG_WORKSPACE_MOD_VARIABLE_SETTING", "name": "Delete Org Workspace Mod Variable Setting", "description": "Tool to delete setting for a mod variable in an organization workspace. Use when you need to remove a custom setting for a mod variable in a specific workspace." }, { "slug": "TURBOT_PIPES_DELETE_USER_AVATAR", "name": "Delete User Avatar", "description": "Tool to delete custom avatar for a user. Use when you need to remove a user's custom avatar and revert to default." }, { "slug": "TURBOT_PIPES_DELETE_USER_CONNECTION_DEPRECATED", "name": "Delete User Connection (Deprecated)", "description": "Tool to delete a connection belonging to a user (deprecated endpoint). Use when you need to remove a user's connection after confirming the user handle and connection handle. Returns the deleted connection details." }, { "slug": "TURBOT_PIPES_DELETE_USER_INTEGRATION", "name": "Delete User Integration", "description": "Tool to delete an integration configured for a user. Use when you need to remove a user's integration by providing the user handle and integration handle." }, { "slug": "TURBOT_PIPES_DELETE_USER_WORKSPACE_MOD_VARIABLE_SETTING", "name": "Delete User Workspace Mod Variable Setting", "description": "Tool to delete a mod variable setting in a user workspace. Use when you need to remove a variable configuration from a mod installed in a user's workspace." }, { "slug": "TURBOT_PIPES_DELETE_USER_WORKSPACE_NOTIFIER", "name": "Delete User Workspace Notifier", "description": "Tool to delete a notifier for a user workspace. Use when you need to remove a notification configuration from a specific workspace." }, { "slug": "TURBOT_PIPES_DELETE_USER_WORKSPACE_PIPELINE", "name": "Delete User Workspace Pipeline", "description": "Tool to delete a pipeline from a user's workspace. Use when you need to remove a specific pipeline by its ID from a workspace." }, { "slug": "TURBOT_PIPES_GET_AUTH_PROVIDER", "name": "Get Auth Provider", "description": "Tool to initiate OAuth authentication flow with a provider. Use when you need to start the OAuth authorization process for GitHub, Google, or SAML authentication." }, { "slug": "TURBOT_PIPES_GET_CONVERSATION_USER", "name": "Get User Workspace Conversation", "description": "Tool to retrieve details for a specific user workspace conversation. Use when you need to get information about an AI conversation in a user workspace." }, { "slug": "TURBOT_PIPES_GET_DATATANK_TABLE", "name": "Get Datatank Table", "description": "Tool to get the details for a workspace Datatank table. Use when you need to retrieve information about a specific datatank table including its state, configuration, and metadata." }, { "slug": "TURBOT_PIPES_GET_ORG", "name": "Get Organization", "description": "Tool to retrieve organization information by handle. Use when you need details about a specific organization." }, { "slug": "TURBOT_PIPES_GET_ORG_BILLING_INVOICE", "name": "Get Organization Billing Invoice", "description": "Tool to get an invoice for an organization. Use when you need to retrieve detailed billing invoice information for a specific organization and invoice ID." }, { "slug": "TURBOT_PIPES_GET_ORG_CONNECTION_PERMISSION", "name": "Get Org Connection Permission", "description": "Tool to retrieve permission details for an org connection. Use when you need to view a specific permission record for a connection within an organization." }, { "slug": "TURBOT_PIPES_GET_ORG_INTEGRATION", "name": "Get Organization Integration", "description": "Tool to get details of an integration configured on an organization. Use when you need to retrieve information about a specific integration by its handle and organization handle." }, { "slug": "TURBOT_PIPES_GET_ORG_MEMBER", "name": "Get Organization Member", "description": "Tool to retrieve a specific organization member by org handle and user handle. Use when you need details about a specific member of an organization." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_CONNECTION", "name": "Get Org Workspace Connection", "description": "Tool to get the details for a workspace and connection association on an organization. Use when you need to retrieve information about how a connection is associated with a specific workspace in an organization." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_CONNECTION_FOLDER", "name": "Get Org Workspace Connection Folder", "description": "Tool to retrieve a connection folder for an organization workspace. Use when you need to get details about a specific connection folder in an org workspace." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_FLOWPIPE_TRIGGER", "name": "Get Org Workspace Flowpipe Trigger", "description": "Tool to get the details of a trigger for a workspace in an organization. Use when you need to retrieve information about a specific Flowpipe trigger." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_INTEGRATION", "name": "Get Org Workspace Integration", "description": "Tool to get details of an integration available for a workspace belonging to an organization. Use when you need to retrieve information about a specific integration configured for a workspace within an organization." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_MOD_VARIABLE_SETTING", "name": "Get Org Workspace Mod Variable Setting", "description": "Tool to get setting for a mod variable in an organization workspace. Use when you need to retrieve the current configuration and value of a specific mod variable in a workspace." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_NOTIFIER", "name": "Get Org Workspace Notifier", "description": "Tool to retrieve a notifier from an org workspace. Use when you need to get details about a specific notification endpoint configured for an organization's workspace." }, { "slug": "TURBOT_PIPES_GET_ORG_WORKSPACE_QUERY_DATA", "name": "Get Org Workspace Query Data", "description": "Tool to execute a SQL query in an org workspace and retrieve results. Use when you need to run queries against Turbot Pipes workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_GET_TENANT", "name": "Get Tenant", "description": "Tool to retrieve tenant information by handle. Use when you need details about a specific tenant." }, { "slug": "TURBOT_PIPES_GET_TENANT_AVATAR", "name": "Get Tenant Avatar", "description": "Tool to retrieve public avatar image for a tenant. Use when you need to display or download the tenant's avatar." }, { "slug": "TURBOT_PIPES_GET_USER", "name": "Get User", "description": "Tool to retrieve user information by handle. Use when you need details about a specific user." }, { "slug": "TURBOT_PIPES_GET_USER_AI_KEY", "name": "Get User AI Key", "description": "Tool to retrieve AI provider API key metadata at the user level. Use when you need to check which AI provider keys are configured for a specific user." }, { "slug": "TURBOT_PIPES_GET_USER_BILLING_PLAN", "name": "Get User Billing Plan", "description": "Tool to get the current user billing plan. Use when you need to retrieve detailed billing plan information for a specific user." }, { "slug": "TURBOT_PIPES_GET_USER_BILLING_UPCOMING_INVOICE", "name": "Get User Billing Upcoming Invoice", "description": "Tool to get the upcoming invoice for a user. Use when you need to retrieve the estimated next invoice for a user's billing cycle. Returns null when no upcoming invoice exists." }, { "slug": "TURBOT_PIPES_GET_USER_CONNECTION", "name": "Get User Connection", "description": "Tool to retrieve details of a connection belonging to a user. Use when you need to fetch information about a specific user connection by user handle and connection handle." }, { "slug": "TURBOT_PIPES_GET_USER_EMAIL", "name": "Get User Email", "description": "Tool to retrieve a specific user email record with metadata. Use when you need details about a user's email verification status and metadata." }, { "slug": "TURBOT_PIPES_GET_USER_INTEGRATION", "name": "Get User Integration", "description": "Tool to get details of an integration configured on a user. Use when you need to retrieve information about a specific user integration by providing the user handle and integration handle." }, { "slug": "TURBOT_PIPES_GET_USER_PASSWORD", "name": "Get User Database Password", "description": "Tool to retrieve user database password. Use when you need to get the database password for a specific user by their handle." }, { "slug": "TURBOT_PIPES_GET_USER_PREFERENCES", "name": "Get User Preferences", "description": "Tool to retrieve user preferences including email subscription settings. Use when you need to check a user's communication preferences." }, { "slug": "TURBOT_PIPES_GET_USER_PROCESS", "name": "Get User Process", "description": "Tool to retrieve process information for a user. Use when you need details about a specific process associated with a user." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE", "name": "Get User Workspace", "description": "Tool to retrieve workspace details for a specific user. Use when you need information about a workspace owned by a user." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_AGGREGATOR", "name": "Get User Workspace Aggregator", "description": "Tool to get the details of an aggregator belonging to a workspace of a user. Use when you need to retrieve information about a specific aggregator in a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_CONNECTION", "name": "Get User Workspace Connection", "description": "Tool to get the details for a workspace and connection association for a user. Use when you need to retrieve information about how a connection is associated with a specific workspace owned by a user." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_CONNECTION_FOLDER", "name": "Get User Workspace Connection Folder", "description": "Tool to retrieve a connection folder for a user workspace. Use when you need to get details about a specific connection folder in a user workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_DATATANK", "name": "Get User Workspace Datatank", "description": "Tool to retrieve user workspace datatank details. Use when you need information about a specific datatank within a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_FLOWPIPE_MOD", "name": "Get User Workspace Flowpipe Mod", "description": "Tool to retrieve details of an installed flowpipe mod in a user workspace. Use when you need information about a specific flowpipe mod installed in a workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_FLOWPIPE_PIPELINE", "name": "Get User Workspace Flowpipe Pipeline", "description": "Tool to retrieve pipeline details for a user workspace. Use when you need detailed information about a specific Flowpipe pipeline in a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_INTEGRATION", "name": "Get User Workspace Integration", "description": "Tool to get details of an integration available for a workspace belonging to a user. Use when you need to retrieve information about a specific integration configured for a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_MOD", "name": "Get User Workspace Mod", "description": "Tool to retrieve details of an installed mod in a user's workspace. Use when you need information about a specific mod installed in a workspace owned by a user." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_MOD_VARIABLE_SETTING", "name": "Get User Workspace Mod Variable Setting", "description": "Tool to get setting for a mod variable in a user workspace. Use when you need to retrieve the current configuration and value of a specific mod variable in a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_NOTIFIER", "name": "Get User Workspace Notifier", "description": "Tool to retrieve a notifier from a user workspace. Use when you need to get details about a specific notification endpoint configured for a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_PIPELINE", "name": "Get User Workspace Pipeline", "description": "Tool to get the details of a pipeline for a workspace of a user. Use when you need information about a specific pipeline in a user workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_PROCESS", "name": "Get User Workspace Process", "description": "Tool to retrieve process details for a user workspace. Use when you need information about a specific process running in a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_PROCESS_LOG", "name": "Get User Workspace Process Log", "description": "Tool to retrieve process logs for a user workspace process. Use when you need to fetch and analyze logs for a specific process running in a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_QUERY", "name": "Get User Workspace Query", "description": "Tool to execute a SQL query in a user workspace and retrieve results. Use when you need to run queries against Turbot Pipes user workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_QUERY_DATA", "name": "Get User Workspace Query Data", "description": "Tool to execute a SQL query in a user workspace and retrieve results. Use when you need to run queries against Turbot Pipes user workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_SCHEMA", "name": "Get User Workspace Schema", "description": "Tool to retrieve workspace schema details for a specific user. Use when you need information about a specific schema within a user's workspace." }, { "slug": "TURBOT_PIPES_GET_USER_WORKSPACE_SCHEMA_TABLE", "name": "Get User Workspace Schema Table", "description": "Tool to get details about a specific table in a user workspace schema. Use when you need information about table structure, columns, and metadata within a user's workspace schema." }, { "slug": "TURBOT_PIPES_IDENTITIES_GET", "name": "Get Identity", "description": "Tool to retrieve a specific identity by handle. Use when you need details of an identity by its handle after authenticating." }, { "slug": "TURBOT_PIPES_IDENTITIES_GET_AVATAR", "name": "Get Identity Avatar", "description": "Tool to retrieve avatar image for an identity. Use when you need to display or download the user's avatar after knowing their identity handle." }, { "slug": "TURBOT_PIPES_IDENTITIES_LIST", "name": "List Identities", "description": "Tool to list all identities. Use when you need to retrieve identities with optional filtering, sorting, and pagination after authentication." }, { "slug": "TURBOT_PIPES_INITIATE_LOGIN", "name": "Initiate User Login", "description": "Tool to initiate user login. Use when starting a login flow for a user with their email address." }, { "slug": "TURBOT_PIPES_INSTALL_USER_INTEGRATION_SLACK", "name": "Install User Slack Integration", "description": "Tool to install a Slack integration for a user identity. Use when you need to initiate the Slack OAuth flow by redirecting to the Slack authorization URL." }, { "slug": "TURBOT_PIPES_INSTALL_USER_WORKSPACE_FLOWPIPE_MOD", "name": "Install User Workspace Flowpipe Mod", "description": "Tool to install a flowpipe mod to a user's workspace. Use when you need to install a flowpipe mod from a repository path into a specific user workspace." }, { "slug": "TURBOT_PIPES_INSTALL_USER_WORKSPACE_MOD", "name": "Install User Workspace Mod", "description": "Tool to install a mod to a user workspace. Use when you need to add a new mod from a repository path to a specific workspace." }, { "slug": "TURBOT_PIPES_LIST_ORG_PROCESS", "name": "List Organization Processes", "description": "Tool to list processes for an organization. Use when you need to retrieve all processes for a specific organization with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_ORG_SERVICE_ACCOUNTS", "name": "List Organization Service Accounts", "description": "Tool to list service accounts at the organization level. Use when you need to retrieve all service accounts for a specific organization." }, { "slug": "TURBOT_PIPES_LIST_ORG_USAGE", "name": "List Organization Usage", "description": "Tool to list all usage metrics for an organization. Use when you need to retrieve usage data for billing, monitoring, or analytics purposes." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACE_DATATANK", "name": "List Org Workspace Datatank", "description": "Tool to list org workspace Datatank with pagination support. Use when you need to retrieve Datatank items for a specific organization and workspace." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACE_FLOWPIPE_MOD_VARIABLE", "name": "List Organization Workspace Flowpipe Mod Variables", "description": "Tool to list all variables for a flowpipe mod in an organization workspace. Use when you need to retrieve mod variables within a specific workspace." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACE_MOD", "name": "List Org Workspace Mods", "description": "Tool to list organization workspace installed mods with pagination support. Use when you need to retrieve installed mods for a specific organization and workspace." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACE_PIPELINE", "name": "List Organization Workspace Pipelines", "description": "Tool to list pipelines for a workspace of an organization. Use when you need to retrieve scheduled tasks for dashboard snapshots or queries within a specific workspace." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACE_PROCESS", "name": "List Org Workspace Processes", "description": "Tool to list processes associated with an org workspace. Use when you need to retrieve all processes for a specific organization workspace with optional filtering and pagination." }, { "slug": "TURBOT_PIPES_LIST_ORG_WORKSPACES", "name": "List Organization Workspaces", "description": "Tool to list workspaces for a specific organization. Use when you need to retrieve all workspaces associated with an organization handle." }, { "slug": "TURBOT_PIPES_LIST_TENANT_GETSETTINGS", "name": "Get Tenant Settings", "description": "Tool to retrieve tenant settings. Use when you need to view the current configuration for the tenant, including login methods, session timeouts, and user provisioning settings." }, { "slug": "TURBOT_PIPES_LIST_TENANTS", "name": "List Tenants", "description": "Tool to list tenants the actor is a member of. Use when you need to retrieve all tenants associated with the authenticated user." }, { "slug": "TURBOT_PIPES_LIST_USER_AI_KEYS", "name": "List User AI Keys", "description": "Tool to list AI provider API keys configured at the user level. Use when you need to retrieve all AI keys for a specific user." }, { "slug": "TURBOT_PIPES_LIST_USER_AUDIT_LOGS", "name": "List User Audit Logs", "description": "Tool to list audit logs for a specific user. Use when you need to retrieve audit trail information with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_BILLING_INVOICES", "name": "List User Billing Invoices", "description": "Tool to list user invoices with pagination support. Use when you need to retrieve billing invoice information for a specific user." }, { "slug": "TURBOT_PIPES_LIST_USER_BILLING_PAYMENT_METHOD", "name": "List User Billing Payment Methods", "description": "Tool to list user billing payment methods. Use when you need to retrieve payment methods configured for a user's billing." }, { "slug": "TURBOT_PIPES_LIST_USER_BILLING_SUBSCRIPTION", "name": "List User Billing Subscriptions", "description": "Tool to list user billing subscriptions. Use when you need to retrieve subscription information for a specific user. Note: Users typically have one active subscription, but this endpoint may also return historical subscriptions." }, { "slug": "TURBOT_PIPES_LIST_USER_CONNECTIONS", "name": "List User Connections", "description": "Tool to list connections for a specific user by user handle. Use when you need to retrieve all connections associated with a user." }, { "slug": "TURBOT_PIPES_LIST_USER_CONSTRAINTS", "name": "List User Constraints", "description": "Tool to list all applicable constraints for a user. Use when you need to retrieve quota, rate, or setting constraints with optional filtering and pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_EMAILS", "name": "List User Emails", "description": "Tool to list emails for a user along with metadata information for each item. Use when you need to retrieve all email addresses associated with a specific user." }, { "slug": "TURBOT_PIPES_LIST_USER_INTEGRATION", "name": "List User Integrations", "description": "Tool to list integrations configured for a user. Use when you need to retrieve all integrations for a specific user with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_PROCESS", "name": "List User Processes", "description": "Tool to list processes for a user. Use when you need to retrieve all processes for a specific user with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_USAGE", "name": "List User Usage", "description": "Tool to list all usage metrics for a user. Use when you need to retrieve usage data for billing, monitoring, or analytics purposes." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_AGGREGATOR", "name": "List User Workspace Aggregators", "description": "Tool to list aggregators for a workspace of a user. Use when you need to retrieve aggregator configurations for a specific user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_AGGREGATOR_CONNECTIONS", "name": "List User Workspace Aggregator Connections", "description": "Tool to list all connections that are part of an aggregator in a user workspace. Use when you need to retrieve connections within a specific aggregator." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_AUDIT_LOGS", "name": "List User Workspace Audit Logs", "description": "Tool to list audit logs for a specific user workspace. Use when you need to retrieve workspace audit trail information with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_CONNECTION", "name": "List User Workspace Connections", "description": "Tool to list connections explicitly defined or associated to a workspace. Use when you need to retrieve all connections available in a user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_CONNECTION_ASSOCIATION", "name": "List User Workspace Connection Associations", "description": "Tool to list connections associated with a workspace for a specific user. Use when you need to retrieve all connection associations for a user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_CONNECTION_FOLDER", "name": "List User Workspace Connection Folders", "description": "Tool to list connection folders for a user workspace. Use when you need to retrieve all connection folders associated with a user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_CONNECTION_TREE", "name": "List User Workspace Connection Tree", "description": "Tool to list connection tree for a user workspace. Use when you need to retrieve the hierarchical connection structure for a specific user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_CONVERSATIONS", "name": "List User Workspace Conversations", "description": "Tool to list AI conversations in a user workspace with optional filtering and pagination. Use when you need to retrieve conversations from a specific user workspace, optionally filtered by title pattern." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_DATATANK", "name": "List User Workspace Datatank", "description": "Tool to list user workspace Datatank with pagination support. Use when you need to retrieve Datatank items for a specific user and workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_DATATANK_PART", "name": "List User Workspace Datatank Partitions", "description": "Tool to list user workspace Datatank partitions with pagination support. Use when you need to retrieve partition details for a specific Datatank table in a user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_DATATANK_TABLE", "name": "List User Workspace Datatank Table", "description": "Tool to list user workspace Datatank tables with pagination support. Use when you need to retrieve datatank tables for a specific user, workspace, and datatank." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_DB_LOGS", "name": "List User Workspace Database Logs", "description": "Tool to list database query logs for a specific user workspace. Use when you need to retrieve workspace database query history with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_FLOWPIPE_INPUT", "name": "List User Workspace Flowpipe Inputs", "description": "Tool to list Flowpipe inputs for a user workspace. Use when you need to retrieve all Flowpipe inputs for a specific workspace with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_FLOWPIPE_MOD_VARIABLE", "name": "List User Workspace Flowpipe Mod Variables", "description": "Tool to list all variables for a flowpipe mod in a user workspace. Use when you need to retrieve mod variables within a specific workspace owned by a user." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_FLOWPIPE_PIPELINE", "name": "List User Workspace Flowpipe Pipelines", "description": "Tool to list Flowpipe pipelines for a user workspace. Use when you need to retrieve pipelines within a specific workspace belonging to a user." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_FLOWPIPE_PIPELINE_TRIGGER", "name": "List User Workspace Pipeline Triggers", "description": "Tool to list Flowpipe triggers associated with a specific pipeline in a user workspace. Use when you need to retrieve all triggers configured for a particular pipeline." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_FLOWPIPE_TRIGGER", "name": "List User Workspace Flowpipe Triggers", "description": "Tool to list Flowpipe triggers for a user workspace. Use when you need to retrieve all triggers configured in a specific user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_INTEGRATION", "name": "List User Workspace Integrations", "description": "Tool to list integrations available for a user workspace. Use when you need to retrieve all integrations configured for a specific user workspace. If run on a custom tenant, this will return integrations configured both on tenant and user level." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_MOD", "name": "List User Workspace Mods", "description": "Tool to list user workspace installed mods with pagination support. Use when you need to retrieve installed mods for a specific user and workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_MOD_VARIABLE", "name": "List User Workspace Mod Variables", "description": "Tool to list all variables applicable for a mod in a workspace specific to a user. Use when you need to retrieve mod variables within a specific user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_NOTIFIER", "name": "List User Workspace Notifiers", "description": "Tool to list all notifiers for a user workspace. Use when you need to view notification endpoints configured for a specific user's workspace with optional pagination and filtering." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_PIPELINE", "name": "List User Workspace Pipelines", "description": "Tool to list pipelines for a workspace of a user. Use when you need to retrieve scheduled tasks for dashboard snapshots or queries within a specific user workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_PROCESS", "name": "List User Workspace Processes", "description": "Tool to list processes associated with a user workspace. Use when you need to retrieve all processes for a specific user workspace with optional filtering and pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACES", "name": "List User Workspaces", "description": "Tool to list workspaces for a specific user. Use when you need to retrieve all workspaces associated with a user handle." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_SCHEMA", "name": "List User Workspace Schemas", "description": "Tool to list schemas for a user workspace. Use when you need to retrieve schemas including aggregators, datatanks, and identity-level connections for a specific user's workspace." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_SCHEMA_TABLE", "name": "List User Workspace Schema Tables", "description": "Tool to list tables for a user workspace schema with pagination support. Use when you need to retrieve tables for a specific user, workspace, and schema." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_SNAPSHOT", "name": "List User Workspace Snapshots", "description": "Tool to list workspace snapshots for a user. Use when you need to retrieve snapshots from a specific user workspace with optional pagination." }, { "slug": "TURBOT_PIPES_LIST_USER_WORKSPACE_USAGE", "name": "List User Workspace Usage", "description": "Tool to list the usage associated with a user workspace. Use when you need to retrieve usage metrics for a specific user's workspace with optional filtering and pagination." }, { "slug": "TURBOT_PIPES_POST_USER_WORKSPACE_NOTIFIER_COMMAND", "name": "Post User Workspace Notifier Command", "description": "Tool to post a command for a notifier in a user's workspace. Use when you need to execute commands on workspace notifiers, such as setting a notifier as the default." }, { "slug": "TURBOT_PIPES_POST_USER_WORKSPACE_QUERY", "name": "Post User Workspace Query", "description": "Tool to perform a SQL query in a user workspace. Use when you need to execute queries against Turbot Pipes user workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_RUN_ORG_WORKSPACE_COMMAND", "name": "Run Organization Workspace Command", "description": "Tool to run a command in an organization workspace. Use when you need to execute workspace operations like rebooting a workspace." }, { "slug": "TURBOT_PIPES_RUN_USER_WORKSPACE_COMMAND", "name": "Run User Workspace Command", "description": "Tool to run a command in a user workspace. Use when you need to execute workspace operations like rebooting a user's workspace." }, { "slug": "TURBOT_PIPES_RUN_USER_WORKSPACE_FLOWPIPE_PIPELINE_COMMAND", "name": "Run User Workspace Flowpipe Pipeline Command", "description": "Tool to run a command on a Flowpipe pipeline in a user workspace. Use when you need to execute a pipeline command such as 'run' to start pipeline execution." }, { "slug": "TURBOT_PIPES_RUN_USER_WORKSPACE_FLOWPIPE_TRIGGER_COMMAND", "name": "Run User Workspace Flowpipe Trigger Command", "description": "Tool to run a command on a trigger in a workspace belonging to a user. Use when you need to execute or reset a Flowpipe trigger." }, { "slug": "TURBOT_PIPES_RUN_USER_WORKSPACE_QUERY", "name": "Run User Workspace Query", "description": "Tool to perform a SQL query in a user workspace using POST method. Use when you need to execute queries against Turbot Pipes user workspaces. Results are limited to 5000 rows or 30 seconds of execution time." }, { "slug": "TURBOT_PIPES_SEND_USER_WORKSPACE_CHAT_MESSAGE", "name": "Send Chat Message to User Workspace AI", "description": "Tool to send a chat message to the AI agent in a user workspace. Creates a new conversation if conversation_id is not provided, or continues an existing conversation if provided." }, { "slug": "TURBOT_PIPES_TEST_USER_AI_KEY", "name": "Test User AI Key", "description": "Tool to test whether an AI provider API key is valid at the user level. Use when you need to verify if a saved or provided API key works correctly with the specified provider." }, { "slug": "TURBOT_PIPES_TEST_USER_CONNECTION", "name": "Test User Connection", "description": "Tool to test a user connection for basic connectivity. Use when you need to verify if a connection's configuration is valid and the credentials work correctly with the specified plugin." }, { "slug": "TURBOT_PIPES_TEST_USER_INTEGRATION", "name": "Test User Integration", "description": "Tool to test the config for a user integration to check for basic connectivity before you create it. Use when you need to validate integration credentials and configuration by providing the user handle, integration handle (or _ for new integrations), integration type, and config." }, { "slug": "TURBOT_PIPES_TEST_USER_WORKSPACE_CONNECTION", "name": "Test User Workspace Connection", "description": "Tool to test the config for a connection configured on a user workspace to check for basic connectivity. Use when you need to verify that a connection is properly configured before creating or using it." }, { "slug": "TURBOT_PIPES_UNINSTALL_FLOWPIPE_MOD", "name": "Uninstall Flowpipe Mod", "description": "Tool to uninstall a flowpipe mod from a user's workspace. Use when you need to remove a flowpipe mod from a specific workspace after confirming the user handle, workspace handle, and mod alias." }, { "slug": "TURBOT_PIPES_UNINSTALL_ORG_WORKSPACE_FLOWPIPE_MOD", "name": "Uninstall Org Workspace Flowpipe Mod", "description": "Tool to uninstall a flowpipe mod from an organization workspace. Use when you need to remove a flowpipe mod from a specific workspace after confirming org handle, workspace handle, and mod alias." }, { "slug": "TURBOT_PIPES_UPDATE_CONVERSATION_USER", "name": "Update User Workspace Conversation", "description": "Tool to update a user workspace conversation (e.g., title). Use when you need to modify properties of an AI conversation in a user workspace." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_BILLING_SUBSCRIPTION", "name": "Update Org Billing Subscription", "description": "Tool to update an organization billing subscription. Use to stop cancellation at the next billing period by passing 'stopcancel' action or to upgrade the subscription. Useful when managing org subscription lifecycle." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_CONNECTION", "name": "Update Org Connection", "description": "Tool to update the details of a connection belonging to an organization. Use when you need to modify connection configuration, change config/credential sources, rename the connection handle, or reassign the connection to a different parent entity." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_CONNECTION_FOLDER", "name": "Update Org Connection Folder", "description": "Tool to update the details of an org connection folder. Use when you need to modify the title or parent location of a connection folder." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_MEMBER", "name": "Update Organization Member Role", "description": "Tool to update the role of an organization member. Use when you need to change a member's role (e.g., promote to owner or demote to member) within an organization." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_SERVICE_ACCOUNT", "name": "Update Organization Service Account", "description": "Tool to update an existing service account at the organization level. Use when you need to modify the title, description, or token_min_issued_at for a service account." }, { "slug": "TURBOT_PIPES_UPDATE_ORG_SERVICE_ACCOUNT_TOKEN", "name": "Update Organization Service Account Token", "description": "Tool to update an existing token for an organization-level service account. Use when you need to modify token properties such as status, title, or description." }, { "slug": "TURBOT_PIPES_UPDATE_USER", "name": "Update User", "description": "Tool to update user information including handle name, display name, or URL. Use when you need to modify user attributes." }, { "slug": "TURBOT_PIPES_UPDATE_USER_AI_KEY", "name": "Update User AI Key", "description": "Tool to update an existing AI provider API key at the user level. Use when you need to update an API key for a specific AI provider (OpenAI or Anthropic) for a user." }, { "slug": "TURBOT_PIPES_UPDATE_USER_CONNECTION", "name": "Update User Connection", "description": "Tool to update the details of a connection belonging to a user. Use when you need to modify configuration, handle, parent_id, config_source, or credential_source of a user's connection. Requires user_handle and connection_handle to identify the target connection." }, { "slug": "TURBOT_PIPES_UPDATE_USER_INTEGRATION", "name": "Update User Integration", "description": "Tool to update details of an integration configured for a user. Use when you need to modify an existing user integration's state, handle, or configuration." }, { "slug": "TURBOT_PIPES_UPDATE_USER_PREFERENCES", "name": "Update User Preferences", "description": "Tool to update user preferences for email communications. Use when you need to change a user's communication preferences such as opting in or out of product updates, community updates, or tips and tricks emails." }, { "slug": "TURBOT_PIPES_UPDATE_USER_TOKEN", "name": "Update User Token", "description": "Tool to update a user token's status between active and inactive. Use when you need to enable or disable a token without deleting it." }, { "slug": "TURBOT_PIPES_UPDATE_USER_WORKSPACE", "name": "Update User Workspace", "description": "Tool to update the workspace for a user. Use when you need to modify workspace settings such as desired state, instance type, database volume size, or search path prefix." }, { "slug": "TURBOT_PIPES_USER_NOTIFIERS_LIST", "name": "List User Notifiers", "description": "Tool to list all notifiers for a user. Use when you need to view a user's configured notification endpoints." }, { "slug": "TURBOT_PIPES_USER_TOKENS_DELETE", "name": "Delete User Token", "description": "Tool to delete a specific user token. Use when you need to revoke a user's token after confirming handle and token ID." }, { "slug": "TURBOT_PIPES_USER_TOKENS_GET", "name": "Get User Token", "description": "Tool to retrieve details of a specific user token. Use when you need to inspect token metadata (e.g., creation time and scopes) after confirming the user handle and token ID." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "turbot_pipes_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Turbot Pipes API Token", "type": "string", "description": "The API token used for authenticating requests to the Turbot Pipes API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "turso", "name": "Turso", "logo": "https://logos.composio.dev/api/turso", "description": "Turso is a fully managed database platform built on libSQL, offering serverless SQLite databases with global replication and low-latency access.", "category": "databases", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TURSO_CLOSEST_REGION", "name": "Closest Region", "description": "Tool to get the closest Turso region based on client location. Use when you need to minimize latency by selecting the nearest deployment region." }, { "slug": "TURSO_LISTEN_TO_CHANGES", "name": "Listen To Changes", "description": "Listen to committed table changes in a Turso database via the /beta/listen endpoint. This tool streams real-time insert/update/delete events for a specific table. IMPORTANT: Requires a database-specific URL (e.g., 'https://mydb-myorg.turso.io'), NOT the platform API URL (api.turso.tech). Note: The /beta/listen endpoint is NOT available on AWS regions for Free, Developer, and Scaler plans. When unavailable, the action falls back to a /v2/pipeline health check." }, { "slug": "TURSO_VALIDATE_API_TOKEN", "name": "Validate API Token", "description": "Validates a Turso API token and retrieves its expiration time. Use this action to verify that an API token is valid and check when it expires. Returns the token's expiration timestamp, or -1 if the token has no expiration." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "turso_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Turso API Token", "type": "string", "description": "The API token used for authenticating requests to the Turso API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twelve_data", "name": "Twelve Data", "logo": "https://logos.composio.dev/api/twelve_data", "description": "Twelve Data provides a comprehensive financial data API offering real-time and historical market data for stocks, forex, cryptocurrencies, ETFs, and indices.", "category": "analytics", "authSchemes": [ "API_KEY" ], "toolCount": 97, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TWELVE_DATA_CASH_FLOW", "name": "Cash Flow", "description": "Tool to get company cash flow statement. Use when you need operating, investing, and financing cash flow details after selecting a company." }, { "slug": "TWELVE_DATA_CASH_FLOW_CONSOLIDATED", "name": "Consolidated Cash Flow", "description": "Tool to get raw consolidated cash flow statements. Use when you need detailed cash flow data for a company." }, { "slug": "TWELVE_DATA_COMMODITIES_LIST", "name": "List Commodities", "description": "Tool to retrieve a list of supported commodities. Use when you need all available commodities after obtaining a valid API key." }, { "slug": "TWELVE_DATA_CORREL", "name": "Correlation Coefficient", "description": "Tool to fetch Pearson correlation coefficient between two series over a period. Use after selecting identifiers and interval." }, { "slug": "TWELVE_DATA_COUNTRIES_LIST", "name": "List Countries", "description": "Tool to retrieve a list of countries with ISO codes, names, capitals, and currencies. Use when you need country metadata after obtaining a valid API key." }, { "slug": "TWELVE_DATA_CROSS_LISTINGS", "name": "Cross Listings", "description": "Tool to retrieve cross-listed symbols for a security across multiple exchanges. Use when you need to list all market listings of a given instrument." }, { "slug": "TWELVE_DATA_CRYPTOCURRENCIES", "name": "List Cryptocurrencies", "description": "Tool to list all supported cryptocurrencies. Use when you need the complete set of crypto symbols. Use after obtaining a valid API key." }, { "slug": "TWELVE_DATA_CRYPTOCURRENCY_EXCHANGES_LIST_GET", "name": "List Cryptocurrency Exchanges", "description": "Tool to list supported cryptocurrency exchanges. Use when you need a list of available crypto trading platforms." }, { "slug": "TWELVE_DATA_CURRENCY_CONVERSION", "name": "Currency Conversion", "description": "Tool to convert an amount from one currency to another. Use after confirming currency codes to retrieve real-time conversion." }, { "slug": "TWELVE_DATA_DIVIDENDS", "name": "Dividends", "description": "Tool to retrieve dividend payout history for a specified symbol. Use when you need historical dividends over multiple years." }, { "slug": "TWELVE_DATA_EARNINGS", "name": "Earnings", "description": "Tool to retrieve earnings data including EPS estimates and actuals. Use when you need detailed earnings history for a selected stock symbol." }, { "slug": "TWELVE_DATA_EPS_REVISIONS", "name": "EPS Revisions", "description": "Tool to provide analysts’ revisions of a company’s future EPS over the last week and month. Use after confirming the stock symbol." }, { "slug": "TWELVE_DATA_EPS_TREND_ACTION", "name": "EPS Trend", "description": "Tool to retrieve EPS trend estimates for a specified company. Use after selecting a stock symbol to view how EPS estimates have changed over time. Returns EPS estimates for next quarter, current year, and next year, showing how estimates have evolved from 7, 30, 60, and 90 days ago." }, { "slug": "TWELVE_DATA_ETFS_DIRECTORY", "name": "ETFS Directory", "description": "Tool to fetch a daily updated list of exchange-traded funds sorted by total assets. Use when you need a directory of ETFs by exchange or country." }, { "slug": "TWELVE_DATA_ETFS_FAMILY", "name": "ETFS Family", "description": "Tool to fetch a comprehensive list of ETFs by family. Use when you need to list ETFs managed by a specific investment company." }, { "slug": "TWELVE_DATA_ETFS_TYPE", "name": "Get ETF Types", "description": "Tool to retrieve ETF categories by market, including types like 'Equity Precious Metals'. Use after confirming API key is set; no parameters are needed. Returns a dictionary mapping country names to lists of ETF types available in that country." }, { "slug": "TWELVE_DATA_ETFS_WORLD", "name": "ETF World", "description": "Tool to fetch comprehensive ETF analytics (summary, performance, risk, composition). Use when you need a detailed overview of an ETF's metrics and holdings." }, { "slug": "TWELVE_DATA_ETFS_WORLD_COMPOSITION", "name": "ETF World Composition", "description": "Tool to fetch global ETF composition details including sector, country, asset allocations, top holdings, and bond metrics. Use after selecting an ETF to analyze its composition." }, { "slug": "TWELVE_DATA_ETFS_WORLD_RISK", "name": "ETF World Risk", "description": "Tool to get global ETF risk metrics. Use when you need to analyze volatility and valuation ratios for an ETF." }, { "slug": "TWELVE_DATA_EXCHANGES", "name": "List supported exchanges", "description": "Tool to retrieve a list of supported exchanges. Use when you need all available stock and forex exchanges." }, { "slug": "TWELVE_DATA_FOREX_PAIRS", "name": "List supported forex pairs", "description": "Tool to retrieve a list of all supported forex currency pairs. Use when exploring available forex pairs before making other forex data requests." }, { "slug": "TWELVE_DATA_GET_AD", "name": "Get AD Indicator", "description": "Tool to retrieve Accumulation/Distribution (AD) indicator data for a financial instrument. The AD line uses closing price, price range, and trading volume to identify buying or selling pressure and assess price movement strength." }, { "slug": "TWELVE_DATA_GET_API_USAGE", "name": "Get API Usage", "description": "Tool to retrieve your current plan and remaining API credits. Use when monitoring your subscription usage in real-time." }, { "slug": "TWELVE_DATA_GET_APO", "name": "Get APO (Absolute Price Oscillator)", "description": "Tool to calculate the Absolute Price Oscillator (APO) for a financial instrument. The APO measures the difference between two moving averages to identify price trends and momentum changes. Use when you need to analyze momentum and potential price reversals." }, { "slug": "TWELVE_DATA_GET_AROON", "name": "Get Aroon Indicator", "description": "Tool to retrieve Aroon Indicator data for identifying market trends. Returns Aroon Up and Aroon Down values showing time elapsed since highest high and lowest low. Use when analyzing trend direction and momentum for a specific symbol." }, { "slug": "TWELVE_DATA_GET_BALANCE_SHEET", "name": "Balance Sheet", "description": "Tool to retrieve a company's balance sheet (assets, liabilities, equity). Use when you need annual or quarterly financial position data for a given symbol or identifier." }, { "slug": "TWELVE_DATA_GET_BALANCE_SHEET_CONSOLIDATED", "name": "Balance Sheet Consolidated", "description": "Tool to get raw consolidated balance sheet data (assets, liabilities, equity) for a company. Use when you need detailed historical balance sheet by period." }, { "slug": "TWELVE_DATA_GET_BBANDS", "name": "Get Bollinger Bands", "description": "Tool to calculate Bollinger Bands (BBANDS) for a financial instrument. Returns upper band, lower band, and simple moving average (SMA) to assess market volatility and identify potential price reversals." }, { "slug": "TWELVE_DATA_GET_BONDS", "name": "Get Bonds", "description": "Tool to retrieve a daily updated list of available bonds (fixed income securities). Use when you need to fetch bonds with optional filtering by symbol, exchange, or country." }, { "slug": "TWELVE_DATA_GET_CCI", "name": "Get CCI", "description": "Tool to retrieve Commodity Channel Index (CCI) values for a specified security. Use when you need to detect potential price reversals by identifying overbought or oversold conditions through momentum analysis." }, { "slug": "TWELVE_DATA_GET_CEIL", "name": "Get Ceiling (CEIL)", "description": "Tool to retrieve the Ceiling (CEIL) transformation for a time series. Rounds each value in the input data series up to the nearest whole number. Use when you need ceiling-adjusted price data for a symbol." }, { "slug": "TWELVE_DATA_GET_CMO", "name": "Get Chande Momentum Oscillator", "description": "Tool to retrieve Chande Momentum Oscillator (CMO) data for a security. Use when you need to analyze momentum and identify overbought or oversold conditions. Requires at least one instrument identifier (symbol, isin, figi, or cusip) and an interval." }, { "slug": "TWELVE_DATA_GET_DPO", "name": "Get Detrended Price Oscillator", "description": "Tool to calculate the Detrended Price Oscillator (DPO) for a specified financial instrument. Use when you need to identify short-term price cycles and potential overbought or oversold conditions without long-term trend influence." }, { "slug": "TWELVE_DATA_GET_EARLIEST_TIMESTAMP", "name": "Get Earliest Timestamp", "description": "Tool to return the first available timestamp for a symbol and interval. Use after selecting instrument identifiers and interval to discover the earliest data point." }, { "slug": "TWELVE_DATA_GET_EOD", "name": "Get End of Day Price", "description": "Tool to retrieve end of day (EOD) closing price and metadata for a financial instrument. Use when you need daily historical data for stocks, ETFs, or other securities to track performance over time." }, { "slug": "TWELVE_DATA_GET_ETFS_WORLD_PERFORMANCE", "name": "Global ETF Performance", "description": "Tool to get global ETF performance metrics (trailing and annual returns). Use when you need detailed performance analytics for an ETF." }, { "slug": "TWELVE_DATA_GET_EXCHANGE_SCHEDULE", "name": "Get exchange schedule", "description": "Tool to get trading sessions and hours for exchanges. Use when you need pre-market, main, and post-market hours for a given exchange and date." }, { "slug": "TWELVE_DATA_GET_FUND_HOLDERS", "name": "Get Fund Holders", "description": "Tool to retrieve mutual fund holders for a company. Use when you need details about mutual fund ownership including shares held and percentage of outstanding shares." }, { "slug": "TWELVE_DATA_GET_FUNDS", "name": "Get Funds", "description": "Tool to fetch a daily updated list of available investment funds. Use when you need a directory of funds with optional filtering by symbol, country, exchange, or other identifiers." }, { "slug": "TWELVE_DATA_GET_HEIKINASHI_CANDLES", "name": "Get Heikin Ashi Candles", "description": "Tool to retrieve Heikin Ashi candlestick data that smooths price action by averaging values. Use when you need to identify trends with reduced market noise for technical analysis." }, { "slug": "TWELVE_DATA_GET_HLC3", "name": "Get HLC3 Average", "description": "Tool to calculate the High, Low, Close Average (HLC3) for a security over a specified period. Use when you need to assess average price trends quickly." }, { "slug": "TWELVE_DATA_GET_HT_SINE", "name": "Get Hilbert Transform Sine Wave", "description": "Tool to fetch Hilbert Transform Sine Wave (HT_SINE) data for an instrument. The HT_SINE provides sine and cosine wave components derived from the dominant market cycle, helping traders pinpoint potential market turning points and assess trend directions by analyzing cyclical patterns. Use when analyzing market cycles for a specific symbol and interval." }, { "slug": "TWELVE_DATA_GET_ICHIMOKU", "name": "Get Ichimoku Cloud Indicator", "description": "Tool to retrieve Ichimoku Kinko Hyo indicator data for analyzing trend direction, support/resistance levels, and trading opportunities. Use when you need to evaluate market trends and identify strategic entry/exit points." }, { "slug": "TWELVE_DATA_GET_INCOME_STATEMENT", "name": "Income Statement", "description": "Tool to retrieve a company's income statement data (annual or quarterly). Use when you need detailed income metrics for a given symbol or identifier." }, { "slug": "TWELVE_DATA_GET_INSIDER_TRANSACTIONS", "name": "Insider Transactions", "description": "REQUIRES PRO, ULTRA, OR ENTERPRISE PLAN. Retrieve insider trading transactions for a company including officer/trader names, transaction types (Buy/Sell), dates, share counts, and amounts. Use when you need detailed insider trading activity data. This endpoint is only available to Pro/Ultra/Enterprise subscribers - requests with lower-tier API keys will fail with a 403 error." }, { "slug": "TWELVE_DATA_GET_INTERVALS", "name": "Get Available Intervals", "description": "Tool to retrieve a list of available time intervals supported by the API. Use when you need to know which interval values are valid for time series queries." }, { "slug": "TWELVE_DATA_GET_KELTNER", "name": "Get Keltner Channel", "description": "Tool to retrieve Keltner Channel indicator data for volatility-based technical analysis. Use when you need to identify potential overbought/oversold conditions, assess trend direction, or analyze price volatility using the combination of Exponential Moving Average (EMA) and Average True Range (ATR)." }, { "slug": "TWELVE_DATA_GET_KEY_EXECUTIVES", "name": "Key Executives", "description": "REQUIRES ULTRA OR ENTERPRISE PLAN. Retrieve company leadership data including executive names, titles, ages, and compensation. Use when you need detailed management info by symbol or other identifier. This endpoint costs 1000 credits per request and is only available to Ultra/Enterprise subscribers - requests with lower-tier API keys will fail." }, { "slug": "TWELVE_DATA_GET_LAST_CHANGE", "name": "Get Last Change", "description": "Tool to retrieve the latest update timestamps for a fundamentals dataset. Use when checking recent changes (e.g., dividends, splits)." }, { "slug": "TWELVE_DATA_GET_LINEARREGANGLE", "name": "Get Linear Regression Angle", "description": "Tool to calculate the linear regression angle for a given time series of stock prices. Returns the slope of the trend line expressed in degrees, which helps identify the direction and steepness of a trend over a specified period. Use when you need to detect upward or downward trends in asset prices." }, { "slug": "TWELVE_DATA_GET_LINEAR_REG_INTERCEPT", "name": "Get Linear Regression Intercept", "description": "Tool to calculate the y-intercept of a linear regression line for a given dataset. Returns the value where the regression line crosses the y-axis over a specified period." }, { "slug": "TWELVE_DATA_GET_LINEAR_REGSLOPE", "name": "Get Linear Regression Slope", "description": "Tool to calculate the linear regression slope for a given dataset over a specified period. Returns the slope of a linear regression line, reflecting the rate of change in the data trend. Use when you need to assess the direction and strength of a trend in financial time series data." }, { "slug": "TWELVE_DATA_GET_LOG10", "name": "Get Base-10 Logarithm (LOG10)", "description": "Tool to compute the base-10 logarithm (LOG10) of a specified input value. Returns the power to which 10 must be raised to obtain the input value. Use when you need to transform data into a logarithmic scale for analyzing exponential growth patterns or compressing large ranges of financial data." }, { "slug": "TWELVE_DATA_GET_LOGO", "name": "Get Logo", "description": "Tool to retrieve official logo URLs for a symbol. Use when displaying company, crypto, or forex pair logos in UIs." }, { "slug": "TWELVE_DATA_GET_MACD", "name": "Get MACD", "description": "Tool to calculate the Moving Average Convergence Divergence (MACD) for a specified financial instrument. Returns the MACD line, signal line, and histogram values to identify potential trend reversals and trading opportunities." }, { "slug": "TWELVE_DATA_GET_MAMA", "name": "Get MAMA", "description": "Tool to fetch MESA Adaptive Moving Average (MAMA) indicator data. Use when you need to calculate an adaptive moving average that adjusts to market cycles for trend identification and reversal analysis." }, { "slug": "TWELVE_DATA_GET_MARKET_MOVERS", "name": "Market Movers", "description": "Tool to retrieve a snapshot of top gainers or losers for a specified market. Use when you need to quickly see market movers after choosing a market type." }, { "slug": "TWELVE_DATA_GET_MARKET_STATE", "name": "Get Market State", "description": "Tool to report current open/closed status for exchanges. Use when you need real-time market status updates after selecting exchanges." }, { "slug": "TWELVE_DATA_GET_MAX", "name": "Get Maximum Value", "description": "Tool to calculate and return the highest value within a specified data series over a given period. Use when identifying potential resistance levels or detecting extreme price movements in financial data." }, { "slug": "TWELVE_DATA_GET_MC_GINLEY_DYNAMIC", "name": "Get McGinley Dynamic Indicator", "description": "Tool to calculate the McGinley Dynamic indicator, which provides a refined moving average that adapts to market volatility. Use when tracking price movements with reduced lag and identifying support or resistance levels." }, { "slug": "TWELVE_DATA_GET_MEDPRICE", "name": "Get Median Price", "description": "Tool to calculate and retrieve the Median Price (MEDPRICE) technical indicator for a security. MEDPRICE represents the average of high and low prices over a specified period, providing a simplified view of price trends. Use when you need to assess price movements by focusing on the midpoint of price action." }, { "slug": "TWELVE_DATA_GET_MINUS_DI", "name": "Get Minus Directional Indicator", "description": "Tool to calculate and return the Minus Directional Indicator (MINUS_DI) for a security. Use when analyzing bearish trends and assessing downward price movement strength." }, { "slug": "TWELVE_DATA_GET_MUTUAL_FUNDS_WORLD_PERFORMANCE", "name": "Global Mutual Fund Performance", "description": "Tool to get global mutual fund performance metrics (trailing, annual, quarterly, load-adjusted returns). Use when you need detailed performance analytics for a mutual fund." }, { "slug": "TWELVE_DATA_GET_MUTUAL_FUNDS_WORLD_RISK", "name": "Mutual Funds World Risk", "description": "Tool to fetch global mutual fund risk metrics. Use when you need detailed risk analytics (standard deviation, beta, Sharpe ratio) for a specific mutual fund identifier." }, { "slug": "TWELVE_DATA_GET_MUTUAL_FUNDS_WORLD_SUMMARY", "name": "Global Mutual Fund Summary", "description": "Tool to retrieve a global mutual fund summary snapshot. Use when you need a high-level overview of a fund’s key identifiers and attributes." }, { "slug": "TWELVE_DATA_GET_MUTUAL_FUNDS_WORLD_SUSTAINABILITY", "name": "Global Mutual Fund Sustainability", "description": "Tool to get global mutual fund sustainability and ESG metrics. Use when you need fund ESG scores and pillar breakdowns." }, { "slug": "TWELVE_DATA_GET_PLUS_DI", "name": "Get Plus Directional Indicator", "description": "Tool to fetch the Plus Directional Indicator (PLUS_DI) time series data for a security. Use when you need to assess the strength and intensity of upward price movements over a specified period." }, { "slug": "TWELVE_DATA_GET_PRICE", "name": "Get Price", "description": "Tool to retrieve the latest market price for a specified financial instrument. Use when you need to get the current price after identifying a symbol." }, { "slug": "TWELVE_DATA_GET_PRICE_TARGET", "name": "Price Target", "description": "Tool to fetch analysts' price target dataset for equities. Use when you need the latest and historical price forecasts for a symbol." }, { "slug": "TWELVE_DATA_GET_PROFILE", "name": "Get Profile", "description": "Tool to retrieve company profile. Use when you need company details like industry, sector, and identifiers after selecting a symbol." }, { "slug": "TWELVE_DATA_GET_RECOMMENDATIONS", "name": "Recommendations", "description": "Retrieve aggregated analyst recommendations for a stock. Returns buy/sell/hold consensus ratings across multiple time periods (current month, previous month, 2 and 3 months ago). Use this to understand Wall Street sentiment and analyst opinions about a company." }, { "slug": "TWELVE_DATA_GET_ROC", "name": "Get Rate of Change (ROC)", "description": "Tool to retrieve Rate of Change (ROC) indicator data for a security. ROC calculates the percentage change in price over a defined period, returning a time series of values that help track momentum. Use after selecting a symbol and interval to identify potential price movements." }, { "slug": "TWELVE_DATA_GET_ROCP", "name": "Get ROCP (Rate of Change Percentage)", "description": "Tool to calculate and return the Rate of Change Percentage (ROCP) for a financial security. Use when you need to identify shifts in price momentum and potential trend reversals." }, { "slug": "TWELVE_DATA_GET_ROCR100", "name": "Get ROCR100", "description": "Tool to calculate the Rate of Change Ratio 100 (ROCR100) for a security. The ROCR100 calculates the percentage change in a security's price over a specified period, expressed as a ratio to 100. Use when you need to assess the momentum and direction of a security's price trend over time." }, { "slug": "TWELVE_DATA_GET_RVOL", "name": "Get Relative Volume", "description": "Tool to fetch relative volume (RVOL) data for a security. RVOL provides a ratio comparing a security's current trading volume to its average volume over a specified period, helping detect unusual trading activity and assess the strength of price movements." }, { "slug": "TWELVE_DATA_GET_SPLITS", "name": "Stock Splits", "description": "Tool to retrieve historical stock split events. Use when you need to fetch split history for a particular instrument." }, { "slug": "TWELVE_DATA_GET_SPLITS_CALENDAR", "name": "Splits Calendar", "description": "Tool to retrieve a calendar of stock split events. Use when you need to fetch split events for instruments over a date range." }, { "slug": "TWELVE_DATA_GET_STATISTICS", "name": "Get Statistics", "description": "Tool to retrieve key company statistics including valuation and financial overview. Use when you need a company financial snapshot after selecting an instrument." }, { "slug": "TWELVE_DATA_GET_STOCHRSI", "name": "Get Stochastic RSI", "description": "Tool to calculate the Stochastic Relative Strength Index (Stochastic RSI) for a specified financial instrument. Returns %K and %D line values to identify overbought or oversold conditions and potential price reversals. Use when you need to refine entry and exit points by analyzing momentum indicators." }, { "slug": "TWELVE_DATA_GET_SUM", "name": "Get Summation (SUM)", "description": "Tool to calculate the cumulative total (Summation) of a specified data series over a defined time period. Returns numerical values representing the sum of financial data such as stock prices or trading volumes. Use when you need to track the aggregate value of a dataset for further analysis." }, { "slug": "TWELVE_DATA_GET_TECHNICAL_INDICATORS_LIST", "name": "Get Technical Indicators List", "description": "Tool to retrieve a comprehensive list of available technical indicators. Use when you need to discover which technical analysis tools are available." }, { "slug": "TWELVE_DATA_GET_TEMA", "name": "Get TEMA (Triple Exponential Moving Average)", "description": "Tool to calculate the Triple Exponential Moving Average (TEMA) for a financial instrument. TEMA applies three layers of exponential smoothing to price data, providing a smoother trend line with reduced lag compared to simple moving averages. Use when you need to identify trends with minimal delay for trading signals." }, { "slug": "TWELVE_DATA_GET_VAR", "name": "Get Variance (VAR)", "description": "Tool to calculate the statistical variance of a financial data series. Use when you need to measure the volatility or dispersion of security prices over a specified period to assess risk." }, { "slug": "TWELVE_DATA_GET_WCLPRICE", "name": "Get Weighted Close Price", "description": "Tool to calculate and retrieve the Weighted Close Price (WCLPRICE) for a security. WCLPRICE gives additional weight to the closing price using the formula (High + Low + Close * 2) / 4. Use when you need to analyze price trends with emphasis on closing values." }, { "slug": "TWELVE_DATA_GET_WMA", "name": "Get Weighted Moving Average (WMA)", "description": "Tool to calculate and retrieve the Weighted Moving Average (WMA) for a security over a specified period. Use when you need to analyze short-term price trends with recent prices having higher influence." }, { "slug": "TWELVE_DATA_INDICES", "name": "List market indices", "description": "Tool to retrieve a list of market indices. Use when you need to fetch available indices filtered by country." }, { "slug": "TWELVE_DATA_INSTITUTIONAL_HOLDERS", "name": "Institutional Holders", "description": "Tool to retrieve institutional holders positions for a company. Use when you need summary ownership metrics and top institutions." }, { "slug": "TWELVE_DATA_MUTUAL_FUNDS_FAMILY", "name": "Mutual Funds Family", "description": "Tool to list all available mutual fund families. Use when you need a comprehensive list of mutual fund families managed by investment companies after obtaining a valid API key." }, { "slug": "TWELVE_DATA_MUTUAL_FUNDS_LIST", "name": "Mutual Funds List", "description": "Tool to retrieve a daily updated list of mutual funds sorted by total assets. Use when you need to enumerate available mutual funds for analysis." }, { "slug": "TWELVE_DATA_MUTUAL_FUNDS_WORLD_COMPOSITION", "name": "Mutual Funds World Composition", "description": "Tool to fetch global mutual fund portfolio composition including sectors, asset allocation, top holdings, and bond metrics. Use after selecting a mutual fund to analyze its composition." }, { "slug": "TWELVE_DATA_OPTIONS_CHAIN_ACTION", "name": "Options Chain", "description": "Tool to retrieve the options chain for a given symbol and optional expiration date. Use when you need detailed option contract data and Greeks. Omitting date returns all expirations." }, { "slug": "TWELVE_DATA_OPTIONS_EXPIRATION", "name": "Options Expiration", "description": "Tool to retrieve available option expiration dates. Use when exploring available expiration dates for a given options symbol." }, { "slug": "TWELVE_DATA_QUOTE", "name": "Quote", "description": "Tool to retrieve the latest market data for a specified symbol. Use when you need a quick real-time quote after selecting a symbol." }, { "slug": "TWELVE_DATA_STOCKS_LIST", "name": "List Stocks", "description": "Tool to retrieve a list of stocks. Use when you need to fetch securities with optional filtering by exchange, country, type, or symbol." }, { "slug": "TWELVE_DATA_SYMBOL_SEARCH", "name": "Symbol Search", "description": "Tool to search for financial instruments by symbol or company name. Use when you need to discover available symbols before making further data requests." }, { "slug": "TWELVE_DATA_TECHNICAL_INDICATORS", "name": "Technical Indicators", "description": "Tool to fetch time-series data for a specific technical indicator. Use when you have a symbol, interval, and indicator name." }, { "slug": "TWELVE_DATA_TIME_SERIES", "name": "Time Series", "description": "Tool to retrieve historical and real-time time series data for a specified symbol. Use when you need to fetch price data over a time range after selecting a symbol. Response data points are not guaranteed to be in chronological or reverse-chronological order; always sort by timestamp before indexing." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "twelve_data_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Twelve Data API Key", "type": "string", "description": "Your personal API key for authenticating requests to the Twelve Data API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twenty", "name": "Twenty", "logo": "https://logos.composio.dev/api/twenty", "description": "The #1 Open-Source CRM. Modern, powerful, affordable platform to manage your customer relationships.", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "twenty_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and get your API Key from \"Settings\" > \"Workspace\" > \"Developers\" (API & Webhooks section)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twilio", "name": "Twilio", "logo": "https://logos.composio.dev/api/twilio", "description": "Twilio allows software developers to programmatically make and receive phone calls, send and receive text messages, and perform other communication functions using its web service APIs.", "category": "communication", "authSchemes": [ "API_KEY", "S2S_OAUTH2" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TWILIO_SEND_SMS", "name": "Send SMS", "description": "An action to send an SMS message via the Twilio API. This action uses the Twilio API to send a text message (SMS) to a specified recipient. he SendSMS action allows sending an SMS message through the Twilio API. It uses the SendSMSRequest model to define the input parameters, which include the Twilio account SID, recipient's phone number, sender's phone number, and the message body. The action utilizes authorization data to authenticate the request to Twilio's API endpoint. The action sends a POST request to the Twilio API endpoint with the provided data. The response from the Twilio API is then returned as the output of the action." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "twilio_auth", "fields": { "auth_config_creation": { "required": [ { "name": "account_sid", "displayName": "Account SID", "type": "string", "description": "Your Twilio Account SID, found on the Twilio Console dashboard", "required": true, "default": null }, { "name": "auth_token", "displayName": "Auth Token", "type": "string", "description": "Your Twilio Auth Token, found on the Twilio Console dashboard", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "S2S_OAUTH2", "name": "twilio_s2s_oauth2", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "OAuth Client ID from your Twilio account credentials", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "OAuth Client Secret from your Twilio account credentials", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "twilio_mcp", "name": "Twilio MCP", "logo": "https://logos.composio.dev/api/twilio_mcp", "description": "Twilio is a customer engagement platform for SMS, voice, email and more. The Twilio MCP server exposes search and retrieval over Twilio's full API surface (1800+ endpoints across 30+ products) so agents can look up and use Twilio APIs.", "category": "developer tools", "authSchemes": [ "NO_AUTH" ], "toolCount": 2, "triggerCount": 0, "version": "20260701_01", "tools": [ { "slug": "TWILIO_MCP_TWILIO__RETRIEVE", "name": "Twilio retrieve", "description": "Fetch full parameter schemas and response details for one or more Twilio API operations or documentation articles. Use this after twilio__search to get the complete request body fields, path/query parameters, response schema, and curator guidance needed to actually call the API. Pass the id values exactly as returned by twilio__search." }, { "slug": "TWILIO_MCP_TWILIO__SEARCH", "name": "Twilio search", "description": "Search Twilio documentation and API operations by natural language query. Use source=\"docs\" for conceptual guides and setup questions, source=\"api\" for finding specific API endpoints and operations, or source=\"all\" (default) when unsure. Returns ranked documentation snippets and/or API operation summaries. Use twilio__retrieve with an id from API results to get full parameter schemas." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "TWILIO_MCP_NO_AUTH", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "twocaptcha", "name": "Twocaptcha", "logo": "https://logos.composio.dev/api/twocaptcha", "description": "2Captcha is a service that provides automated CAPTCHA solving solutions, enabling developers to bypass various types of CAPTCHAs in their applications.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TWOCAPTCHA_CREATE_TASK", "name": "Create CAPTCHA Task", "description": "Creates a new CAPTCHA-solving task and returns a taskId for retrieving results. Supports multiple captcha types: reCAPTCHA v2/v3, hCaptcha, image recognition, and more. After creating a task, use the returned taskId with getTaskResult to retrieve the solution. Requires sufficient account balance to process tasks." }, { "slug": "TWOCAPTCHA_GET_BALANCE", "name": "Get Account Balance", "description": "Tool to retrieve your 2Captcha account balance in USD. Use when you need to check available funds before creating captcha-solving tasks." }, { "slug": "TWOCAPTCHA_REPORT_INCORRECT", "name": "Report Incorrect CAPTCHA", "description": "Report that a CAPTCHA solution was declined by the target website. Use this action to provide feedback when a solved CAPTCHA is rejected, enabling 2Captcha to improve accuracy and potentially issue refunds for incorrectly solved tasks." }, { "slug": "TWOCAPTCHA_REPORT_INCORRECT_IMAGE_CAPTCHA", "name": "Report Incorrect Image Captcha", "description": "Report that an image captcha solution was incorrect. Alias for reportIncorrect method. Use this when you receive an incorrect captcha solution from 2Captcha to report the issue. Made for compatibility with certain software libraries. Successful reports may result in refunds." }, { "slug": "TWOCAPTCHA_TEST_REQUEST", "name": "Test Request Parameters", "description": "Debug method to verify how the API parses request parameters. Use when troubleshooting integration issues or validating parameter formats." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "twocaptcha_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "2Captcha API Key", "type": "string", "description": "Your unique API key for accessing 2Captcha services.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "typecast_ai", "name": "Typecast Ai", "logo": "https://logos.composio.dev/api/typecast_ai", "description": "AI-powered text-to-speech platform for creating realistic voiceovers", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "typecast_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Typecast AI API key. Get it from https://typecast.ai/developers", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "typeform", "name": "Typeform", "logo": "https://logos.composio.dev/api/typeform", "description": "Build beautiful, interactive forms that people love to fill out. Collect data, accept payments, and integrate with your favorite tools.", "category": "forms & surveys", "authSchemes": [ "OAUTH2" ], "toolCount": 35, "triggerCount": 1, "version": "20260703_00", "tools": [ { "slug": "TYPEFORM_CREATE_ACCOUNT_WORKSPACE", "name": "Create Account Workspace", "description": "Tool to create a new workspace in a specific Typeform account. Use when you need to create a workspace within a particular account using the account ID." }, { "slug": "TYPEFORM_CREATE_FORM", "name": "Create Form", "description": "Tool to create a new Typeform form with customizable fields, logic, and settings. Use when you need to programmatically create a form with specific questions, welcome screens, thank you screens, and conditional logic." }, { "slug": "TYPEFORM_CREATE_IMAGE", "name": "Create Image", "description": "Tool to upload a new image to your Typeform account via base64 encoding or URL. Use when you need to add images for forms or presentations. Either 'image' (base64) or 'url' parameter must be provided." }, { "slug": "TYPEFORM_CREATE_OR_UPDATE_WEBHOOK", "name": "Create or Update Webhook", "description": "Tool to create a new webhook or update an existing one for a specified Typeform. Use when you need to configure webhooks to receive form response notifications at a specified URL." }, { "slug": "TYPEFORM_CREATE_THEME", "name": "Create Theme", "description": "Tool to create a new custom theme in Typeform with colors, fonts, background, and layout settings. Use when you need to create a theme for branding and styling Typeform forms." }, { "slug": "TYPEFORM_CREATE_WORKSPACE", "name": "Create Workspace", "description": "Tool to create a new workspace in Typeform. Use when organizing forms into separate workspaces for teams or projects." }, { "slug": "TYPEFORM_DELETE_FORM", "name": "Delete Form", "description": "Tool to permanently delete a Typeform and all of its responses. Use when you need to remove a form completely from the account." }, { "slug": "TYPEFORM_DELETE_IMAGE", "name": "Delete Image", "description": "Tool to delete an image from your Typeform account. Use when you need to remove an image that is no longer needed. Returns a success status once the image has been deleted (204 No Content)." }, { "slug": "TYPEFORM_DELETE_RESPONSES", "name": "Delete Responses", "description": "Tool to delete specific responses from a Typeform by response IDs. Use when you need to remove response data from a form. Deletion is asynchronous - a 200 status means the deletion request was registered, not that deletion is complete. Maximum 1000 response IDs can be deleted per request." }, { "slug": "TYPEFORM_DELETE_THEME", "name": "Delete Theme", "description": "Tool to delete a theme from your Typeform account. Use when you need to permanently remove a theme. This operation cannot be undone." }, { "slug": "TYPEFORM_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook configuration from a Typeform form. Use when you need to remove a webhook from a specific form. The operation returns 204 No Content on success and 404 if the webhook is not found." }, { "slug": "TYPEFORM_DELETE_WORKSPACE", "name": "Delete Workspace", "description": "Tool to delete a workspace from your Typeform account. Use when you need to remove a workspace. Note: The default 'My Workspace' cannot be deleted, and workspaces containing forms cannot be deleted (will return an error)." }, { "slug": "TYPEFORM_GET_ABOUT_ME", "name": "Get About Me", "description": "Get information about the owner account in Typeform." }, { "slug": "TYPEFORM_GET_ALL_RESPONSE_FILES", "name": "Get All Response Files", "description": "Tool to retrieve a compressed archive containing all files that respondents uploaded for a specified form. Use when you need to download all file uploads from a Typeform form as a ZIP archive." }, { "slug": "TYPEFORM_GET_BACKGROUND_BY_SIZE", "name": "Get Background By Size", "description": "Tool to retrieve a background image by size from Typeform. Use when you need to get a background image in a specific size (default, tablet, mobile, or thumbnail). Images are scaled and cropped from top-left alignment to fill the screen properly." }, { "slug": "TYPEFORM_GET_CHOICE_IMAGE_BY_SIZE", "name": "Get Choice Image By Size", "description": "Tool to retrieve a choice image by size from Typeform. Use when you need to download images used in picture_choice question options at specific sizes." }, { "slug": "TYPEFORM_GET_FORM", "name": "Get Form", "description": "Tool to retrieve a specific form's complete configuration including fields, logic, settings, and theme. Use when you need to get detailed information about a Typeform form." }, { "slug": "TYPEFORM_GET_FORM_MESSAGES", "name": "Get Form Messages", "description": "Tool to retrieve custom messages for a Typeform including button labels, error messages, and UI text. Use when you need to get the current message configuration for a form." }, { "slug": "TYPEFORM_GET_FORM_RESPONSES", "name": "Get Form Responses", "description": "Tool to retrieve form responses from Typeform with filtering by date, pagination, search, and response type. Use when you need to get responses for a specific form including timestamps of when users landed on and submitted the form. Note: Recent responses may take up to 30 minutes to appear." }, { "slug": "TYPEFORM_GET_IMAGE_BY_SIZE", "name": "Get Image By Size", "description": "Tool to retrieve an image in a specific size from Typeform. Use when you need to get a Typeform image optimized for different display contexts (default for desktop, mobile for mobile devices, or thumbnail for previews)." }, { "slug": "TYPEFORM_GET_THEME", "name": "Get Theme", "description": "Tool to retrieve a specific theme's configuration including colors, fonts, and layout settings. Use when you need to get the design settings of a Typeform theme." }, { "slug": "TYPEFORM_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve a single webhook by specifying both the form ID and webhook tag. Use when you need to get details about a specific webhook configuration." }, { "slug": "TYPEFORM_GET_WORKSPACE", "name": "Get Workspace", "description": "Tool to retrieve detailed information about a specific workspace including its name, forms, and team members. Use when you need to get workspace details or check member access." }, { "slug": "TYPEFORM_LIST_FORMS", "name": "List Forms", "description": "Tool to retrieve a list of all forms in your Typeform account with filtering, pagination, and sorting options. Use when you need to list, search, or browse forms across workspaces. Supports filtering by search terms, workspace, and sorting by creation or modification date." }, { "slug": "TYPEFORM_LIST_IMAGES", "name": "List Images", "description": "Tool to retrieve all images in your Typeform account in reverse-chronological order. Use when you need to list or browse available images." }, { "slug": "TYPEFORM_LIST_THEMES", "name": "List Typeform Themes", "description": "Tool to retrieve a paginated list of themes in your Typeform account. Use when you need to access available themes for form styling. Returns both public and private themes with their styling configurations." }, { "slug": "TYPEFORM_LIST_WEBHOOKS", "name": "List Form Webhooks", "description": "Tool to retrieve all webhooks associated with a specified typeform. Use when you need to view webhook configurations for a form. Returns webhook IDs, URLs, enabled status, event types, and timestamps." }, { "slug": "TYPEFORM_LIST_WORKSPACES", "name": "List Workspaces", "description": "Tool to retrieve all workspaces in a Typeform account with their IDs, names, form counts, and members. Use when you need to list available workspaces or search for specific workspaces by name." }, { "slug": "TYPEFORM_PATCH_FORM", "name": "Patch Form", "description": "Tool to partially update a Typeform using JSON Patch operations. Use when you need to modify specific fields without replacing the entire form. Supports updating title, settings, theme, workspace, and other form properties." }, { "slug": "TYPEFORM_PATCH_THEME", "name": "Update Theme (Partial)", "description": "Tool to partially update a Typeform theme by ID. Updates only the specified properties while leaving other theme settings unchanged. Each provided field must be complete (e.g., if updating colors, all color subfields must be provided). Cannot modify Typeform's public built-in themes." }, { "slug": "TYPEFORM_UPDATE_FORM", "name": "Update Form", "description": "Tool to update an existing Typeform by completely replacing its configuration. PUT request overwrites the entire form - any fields not included will be deleted along with their response data. Always retrieve the form first using Get Form, modify the desired properties, then send the complete updated form definition." }, { "slug": "TYPEFORM_UPDATE_FORM_MESSAGES", "name": "Update Form Messages", "description": "Tool to update custom messages for form UI elements like buttons, errors, and placeholders in Typeform. Use when you need to customize the text displayed to form respondents." }, { "slug": "TYPEFORM_UPDATE_THEME", "name": "Update Theme", "description": "Tool to update a theme's complete definition in Typeform. Use when you need to update all aspects of a theme including colors, fonts, and visual properties. This is a full update (PUT) operation that requires name, font, and colors to be provided. For partial updates, use PATCH instead." }, { "slug": "TYPEFORM_UPDATE_WORKSPACE", "name": "Update Workspace", "description": "Tool to update a workspace's name or manage team member access (add/remove members) in Typeform. Use when you need to rename a workspace or modify its member list using JSON Patch operations." }, { "slug": "TYPEFORM_UPLOAD_VIDEO", "name": "Upload Video", "description": "Initiate a video upload to Typeform by obtaining a signed upload URL. Use this action to prepare for uploading a video file to a specific form field. After receiving the upload_url, use it to upload the actual video file via a PUT request." } ], "triggers": [ { "slug": "TYPEFORM_NEW_RESPONSE", "name": "New Form Response", "description": "Triggers when a respondent completes and submits the form." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "typeform_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "accounts:read,forms:read,forms:write,images:read,images:write,themes:read,themes:write,responses:read,responses:write,webhooks:read,webhooks:write,workspaces:read,workspaces:write,offline" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "typless", "name": "Typless", "logo": "https://logos.composio.dev/api/typless", "description": "Typless is an AI-powered document extraction platform that automates manual data entry from various documents using a simple API.", "category": "ai document extraction", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "TYPLESS_GET_DOCUMENT_TYPES", "name": "Get Document Types", "description": "Tool to retrieve a list of all document types available in the account. Use when you need to view or select schemas for document processing." }, { "slug": "TYPLESS_GET_PROFILE", "name": "Get User Profile", "description": "Tool to retrieve the authenticated user profile. Use after authentication to confirm account details." }, { "slug": "TYPLESS_UPDATE_PROFILE", "name": "Update User Profile", "description": "Updates the authenticated user's Typless profile information. Use this tool when the user wants to change their full name or newsletter subscription preference. Note: Only full_name and newsletter_subscription can be modified. Other fields like email, company, phone_number are read-only and cannot be changed via this endpoint. Example prompts: \"Update my name to John Smith\", \"Unsubscribe me from the newsletter\"" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "typless_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Typless API Key", "type": "string", "description": "Your Typless API key used for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "u301", "name": "U301", "logo": "https://logos.composio.dev/api/u301", "description": "U301 provides an API to manage all U301 resources, currently under development.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "U301_DELETE_LINK", "name": "Delete a shortened link", "description": "Tool to delete a shortened link by its link identifier. Use when you need to remove a shortened link from the system." }, { "slug": "U301_LIST_SHORTEN_DOMAINS", "name": "List available domains for URL shortening", "description": "Tool to list available domains for URL shortening, including public domains and custom domains. Use when you need to see what domains are available for creating short links. Supports pagination and filtering by visibility type." }, { "slug": "U301_SHORTEN_LINK", "name": "Shorten a long URL", "description": "Tool to shorten a long URL into a compact short link. Use after obtaining the long URL when you need a shareable link." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "u301_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "U301 API Key", "type": "string", "description": "The API key used for authenticating requests to the U301 API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "ultrahuman", "name": "Ultrahuman", "logo": "https://logos.composio.dev/api/ultrahuman", "description": "Ultrahuman is a health and fitness platform providing access to biometric data from wearable devices including Ring (recovery metrics) and CGM (glucose monitoring).", "category": "fitness", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "ultrahuman_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ring_data,cgm_data,profile" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "ultrahuman_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal API Token", "type": "string", "description": "Your Personal API Token from Ultrahuman Vision (vision.ultrahuman.com)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "unione", "name": "Unione", "logo": "https://logos.composio.dev/api/unione", "description": "UniOne is an email delivery service offering a versatile Web API and SMTP API for sending transactional and marketing emails.", "category": "transactional email", "authSchemes": [ "API_KEY" ], "toolCount": 32, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UNIONE_DELETE_EVENT_DUMP", "name": "Delete Event Dump", "description": "Tool to delete an event dump file and remove it from the queue or storage. Use when you need to clean up an existing event dump by its dump_id." }, { "slug": "UNIONE_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to delete a template by ID. Use when you need to permanently remove a template from the account." }, { "slug": "UNIONE_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete a webhook event notification handler by its URL. Use when you need to stop receiving callback notifications for a specific webhook." }, { "slug": "UNIONE_EMAIL_BALANCE", "name": "UniOne Email Balance", "description": "Tool to retrieve current account balance. Use when you need to check your email usage and limits before sending large campaigns." }, { "slug": "UNIONE_EMAIL_CANCEL", "name": "Cancel Scheduled Email", "description": "Tool to cancel a scheduled transactional email by its job ID. Use when you need to stop a pending email send before it's dispatched." }, { "slug": "UNIONE_EMAIL_DOMAIN", "name": "UniOne Email Domain Management", "description": "Tool to manage sender domains in UniOne. Use when you need DNS records for verification, trigger verification or DKIM checks, list domains, or delete a domain." }, { "slug": "UNIONE_EMAIL_EVENT_GET", "name": "Get Email Event", "description": "Tool to retrieve details of a specific email event by its ID. Use when you need event information for auditing or diagnostics." }, { "slug": "UNIONE_EMAIL_GET", "name": "Get Email Send Job", "description": "Tool to retrieve detailed information about a specific email send job. Use when you need its delivery metrics and history." }, { "slug": "UNIONE_EMAIL_LIST", "name": "UniOne Email List (Export)", "description": "Tool to export email events within a specified time frame. It creates an asynchronous event dump which can later be downloaded and parsed using UNIONE_EVENT_DUMP_GET." }, { "slug": "UNIONE_EMAIL_RESEND", "name": "Resend Sent Email", "description": "Tool to resend a previously sent email by its job ID. Use when you need to trigger a resend of an email that has already been sent and you have the original job ID." }, { "slug": "UNIONE_EMAIL_RESUBSCRIBE", "name": "UniOne Email Resubscribe", "description": "Tool to resubscribe a recipient who previously unsubscribed. Use when you need to restore a user's subscription status after they opt in again." }, { "slug": "UNIONE_EMAIL_RESUME", "name": "Resume Paused Email", "description": "Tool to resume a paused transactional email by its job ID. Use when you need to restart a paused pending email send." }, { "slug": "UNIONE_EMAIL_SMTP", "name": "UniOne Email SMTP Configuration", "description": "Tool to retrieve SMTP server details and credentials. Use when you need to configure your mail client or library for SMTP sending." }, { "slug": "UNIONE_EMAIL_STATISTICS", "name": "UniOne Email Statistics", "description": "Tool to retrieve email sending statistics over a specified time range. This action uses UniOne's event-dump aggregate API under the hood to compute daily statistics." }, { "slug": "UNIONE_EMAIL_UNSUBSCRIBE", "name": "UniOne Email Unsubscribe", "description": "Tool to unsubscribe an email from future emails. Use when you need to stop all further transactional emails." }, { "slug": "UNIONE_EMAIL_VALIDATE_BATCH", "name": "Batch Email Validation", "description": "Tool to validate multiple email addresses in a batch. Use when you need to verify deliverability for a list of emails at once." }, { "slug": "UNIONE_EMAIL_VALIDATE_DELETE", "name": "Remove Email from Suppression List", "description": "Tool to remove an email from the suppression list. Use when you need to re-enable sending emails to an address that was previously unsubscribed or suppressed." }, { "slug": "UNIONE_EMAIL_VALIDATE_RETRY", "name": "Retry Email Validation", "description": "Tool to retry an email validation request. Updated to re-run validation via the official single validation endpoint using the provided email address." }, { "slug": "UNIONE_EMAIL_WEBHOOK_TYPES", "name": "UniOne Email Webhook Types", "description": "Tool to retrieve supported email webhook event types. Use when configuring your webhook callbacks." }, { "slug": "UNIONE_EVENT_DUMP_CREATE", "name": "Create Event Dump", "description": "Tool to create an asynchronous CSV event dump. Use when you need to export transactional email events for a specified time window." }, { "slug": "UNIONE_EVENT_DUMP_LIST", "name": "UniOne Event Dump List", "description": "Tool to retrieve the full list of event dumps. Use when you need to view all existing event-dump tasks." }, { "slug": "UNIONE_GET_EVENT_DUMP", "name": "Get Event Dump", "description": "Tool to retrieve the status and download URLs of an event dump. Use when you need to check if a dump is ready and get its files." }, { "slug": "UNIONE_GET_SUPPRESSION", "name": "Get Email Suppression Details", "description": "Tool to check if an email is suppressed and retrieve the reason and date. Use when verifying why an email cannot receive messages." }, { "slug": "UNIONE_GET_TEMPLATE", "name": "Get Template", "description": "Tool to get template properties by ID. Use when you need to retrieve the full template configuration and content for a specific template." }, { "slug": "UNIONE_GET_WEBHOOK", "name": "Get Webhook Configuration", "description": "Tool to retrieve webhook configuration by its URL. Use when you need to check the current settings of an event notification handler." }, { "slug": "UNIONE_SCHEDULE_EMAIL", "name": "Schedule Email", "description": "Tool to schedule a transactional email up to 24 hours ahead. Use when you need to send an email at a specific future time." }, { "slug": "UNIONE_SUPPRESSION_LIST", "name": "Suppression List", "description": "Tool to return the suppression list since a given date. Use when auditing bounced, unsubscribed, or blocked recipients." }, { "slug": "UNIONE_TAG_DELETE", "name": "Delete Tag", "description": "Tool to delete a specific tag. Use when you have confirmed the tag ID you wish to remove." }, { "slug": "UNIONE_TAG_LIST", "name": "UniOne Tag List", "description": "Tool to retrieve all user-defined tags. Use when you need to fetch the full list of tags after authentication." }, { "slug": "UNIONE_TEMPLATE_LIST", "name": "UniOne Template List", "description": "Tool to list email templates. Use when you need to retrieve available templates for transactional emails." }, { "slug": "UNIONE_TEMPLATE_SET", "name": "Set Template", "description": "Tool to set or update an email template. Use when you need to create or modify transactional email templates before sending messages." }, { "slug": "UNIONE_WEBHOOK_SET", "name": "Set Webhook", "description": "Tool to set or edit a webhook event notification handler. Use when you need to configure your webhook for event callbacks." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "unione_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Region", "type": "string", "description": "The region-specific subdomain for the UniOne API, such as 'us1' for the USA or 'eu1' for Europe.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "UniOne API Key", "type": "string", "description": "The API key for authenticating requests to the UniOne API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "unisender", "name": "Unisender", "logo": "https://logos.composio.dev/api/unisender", "description": "UniSender is a simple and easy-to-use service for email and SMS marketing campaigns", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 33, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UNISENDER_CHECK_EMAIL", "name": "Check Email Status", "description": "Tool to check the delivery status of emails sent via sendEmail method. Use when you need to verify email delivery status by email IDs. Statuses are stored for approximately one month. Rate limited to 300 requests per 60 seconds." }, { "slug": "UNISENDER_CREATE_EMAIL_TEMPLATE", "name": "Create Email Template", "description": "Tool to create a new email template for mass campaigns in UniSender. Use when you need to create a reusable email template with customizable title, subject, body content, and sender information." }, { "slug": "UNISENDER_CREATE_FIELD", "name": "Create Field", "description": "Tool to create a new custom field for contact data in UniSender. Use when you need to add a custom field that can store additional contact information and be used in email message substitutions." }, { "slug": "UNISENDER_CREATE_LIST", "name": "Create List", "description": "Tool to create a new contact list for organizing thematic email campaigns in UniSender. Use when you need to create a new mailing list with a unique title. The list title must be unique within the account." }, { "slug": "UNISENDER_CREATE_SUBSCRIBER_NOTE", "name": "Create Subscriber Note", "description": "Tool to create a note for a subscriber contact in UniSender. Use when you need to add a new note to a subscriber's profile. Notes created via API have an 'origin' field set to 'api'." }, { "slug": "UNISENDER_DELETE_FIELD", "name": "Delete Field", "description": "Tool to remove a custom field from the Unisender system. Use when you need to permanently delete a custom field and all its associated contact data." }, { "slug": "UNISENDER_DELETE_LIST", "name": "Delete List", "description": "Tool to permanently delete a contact list from your UniSender account. Use when you need to remove a mailing list by its ID." }, { "slug": "UNISENDER_DELETE_SUBSCRIBER_NOTE", "name": "Delete Subscriber Note", "description": "Tool to delete a subscriber note from UniSender by its ID. Use when you need to remove a note associated with a subscriber/contact from the system." }, { "slug": "UNISENDER_DELETE_TAG", "name": "Delete Tag", "description": "Tool to delete a tag by its ID and remove it from all associated contacts. Use when you need to remove a tag from your UniSender account." }, { "slug": "UNISENDER_DELETE_TEMPLATE", "name": "Delete Template", "description": "Tool to remove a template from the UniSender account. Use when you need to permanently delete a template by its ID." }, { "slug": "UNISENDER_EXCLUDE", "name": "Exclude Contact from Lists", "description": "Tool to remove contacts from specified lists or all lists in UniSender. Use when you need to exclude a contact (email or phone) from mailing lists. Unlike unsubscribe, exclude actually removes the contact from lists, allowing them to be re-added later using the subscribe method. Recommended when subscription management is performed by sender's initiative." }, { "slug": "UNISENDER_EXPORT_CONTACTS", "name": "Export Contacts", "description": "Tool to export contact data from UniSender lists for synchronization. Use when you need to export email addresses, phone numbers, and custom fields from lists. This method works asynchronously - the response contains a task_uuid for tracking export status." }, { "slug": "UNISENDER_GET_CAMPAIGNS", "name": "Get Campaigns", "description": "Tool to retrieve list of campaigns from Unisender within a specified date range. Use when you need to fetch email campaign information with optional filtering by date and pagination support. Returns up to 10,000 campaigns per request." }, { "slug": "UNISENDER_GET_CAMPAIGN_STATUS", "name": "Get Campaign Status", "description": "Tool to check the current status of a campaign in UniSender. Use when you need to verify campaign progress or completion status. Returns detailed status information including creation time and start time." }, { "slug": "UNISENDER_GET_CONTACT", "name": "Get Contact", "description": "Tool to get information about a single contact from UniSender. Use when you need to retrieve detailed contact data including email/phone status, custom fields, list memberships, and engagement statistics. Either email or contact_id must be provided." }, { "slug": "UNISENDER_GET_CONTACT_FIELD_VALUES", "name": "Get Contact Field Values", "description": "Tool to retrieve custom field values for a specific contact identified by email address. Use when you need to get additional field data associated with a contact. You can optionally specify which fields to retrieve by providing field IDs." }, { "slug": "UNISENDER_GET_FIELDS", "name": "Get Fields", "description": "Tool to retrieve all custom user-defined fields for contact personalization and data management. Use when creating integrations to map fields between systems or to retrieve available custom fields for contacts." }, { "slug": "UNISENDER_GET_LISTS", "name": "Get Lists", "description": "Tool to retrieve all existing mailing lists associated with the account. Use when you need to get list IDs and titles before sending emails or SMS to a list, or to display available contact lists." }, { "slug": "UNISENDER_GET_MESSAGES", "name": "Get Messages", "description": "Tool to retrieve list of all messages with body and attachments. Use when you need complete message information including content and attachments, unlike listMessages which returns only metadata." }, { "slug": "UNISENDER_GET_SENDER_DOMAIN_LIST", "name": "Get Sender Domain List", "description": "Tool to retrieve information about sender domains and their DKIM status. Use when you need to check which domains are registered for sending emails and their verification status." }, { "slug": "UNISENDER_GET_TAGS", "name": "Get Tags", "description": "Tool to retrieve all custom tags/labels for contact segmentation. Use when you need to list all available tags in the Unisender account." }, { "slug": "UNISENDER_GET_TEMPLATE", "name": "Get Template", "description": "Tool to retrieve detailed information about a specific email template by its ID. Use when you need to fetch template details including metadata, content, creation details, and formatting information." }, { "slug": "UNISENDER_GET_TEMPLATES", "name": "Get Templates", "description": "Tool to retrieve list of all templates with full content including body. Use when you need complete template information including raw_body and body fields, unlike listTemplates which returns templates without body content." }, { "slug": "UNISENDER_IMPORT_CONTACTS", "name": "Import Contacts (Bulk)", "description": "Tool to bulk import contacts to UniSender with maximum 500 contacts per call. Use when you need to import multiple contacts at once with their fields, list subscriptions, and tags. Supports creating new contacts, updating existing ones, and managing list subscriptions. UniSender automatically validates emails and filters spam-traps." }, { "slug": "UNISENDER_IS_CONTACT_IN_LISTS", "name": "Check if Contact is in Lists", "description": "Tool to check if a contact exists in specified mailing lists based on and/or conditions. Use when you need to verify whether a contact is a member of specific lists. The condition parameter allows checking if the contact is in all lists (and) or at least one list (or)." }, { "slug": "UNISENDER_LIST_MESSAGES", "name": "List Messages", "description": "Tool to list all messages without body and attachments. Use when you need to browse available messages created via API or web interface." }, { "slug": "UNISENDER_LIST_TEMPLATES", "name": "List Templates", "description": "Tool to list email templates without body content. Use when you need to browse available templates created via API or web interface." }, { "slug": "UNISENDER_SUBSCRIBE", "name": "Subscribe Contact to Lists", "description": "Tool to add contacts to one or multiple mailing lists with optional tags and field values. Use when you need to subscribe a contact (email and/or phone) to Unisender lists. This method adds contacts individually and can override existing contact data based on the overwrite parameter. Contacts previously excluded can be re-added using this action." }, { "slug": "UNISENDER_UNSUBSCRIBE", "name": "Unsubscribe Contact", "description": "Tool to unsubscribe contacts from mailing lists in UniSender. Use when a contact initiates opt-out from campaigns. This marks contacts as 'unsubscribed' rather than excluding them - the active status can only be restored by the contact clicking an activation link." }, { "slug": "UNISENDER_UPDATE_EMAIL_TEMPLATE", "name": "Update Email Template", "description": "Tool to update an existing email template for mass campaigns. Use when you need to modify template properties like title, subject, body content, sender information, or language settings. Only the fields you specify will be updated." }, { "slug": "UNISENDER_UPDATE_FIELD", "name": "Update Field", "description": "Tool to modify parameters of an existing custom field in UniSender. Use when you need to change field properties like name, display name, type, visibility, or display position." }, { "slug": "UNISENDER_UPDATE_LIST", "name": "Update List", "description": "Tool to update the parameters of an existing contact list in UniSender. Use when you need to change the title, pre-subscription URL, or post-subscription URL of an existing mailing list." }, { "slug": "UNISENDER_UPDATE_SUBSCRIBER_NOTE", "name": "Update Subscriber Note", "description": "Tool to update the content of an existing subscriber note in UniSender. Use when you need to edit or modify the content of a previously created note attached to a subscriber." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "unisender_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Access your API key in the \"Integration and API\" section of your UniSender account at https://cp.unisender.com/en/v5/user/info/api", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "uniswap_api", "name": "Uniswap Api", "logo": "https://logos.composio.dev/api/uniswap_api", "description": "Uniswap Trading API for executing swaps and managing liquidity across 25+ blockchain networks", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UNISWAP_API_CHECK_APPROVAL", "name": "Check Token Approval", "description": "Tool to check if a wallet has sufficient token approval for a specified transaction amount. Returns an approval transaction if needed, or null if approval already exists. Use this before executing a swap to verify or obtain the necessary token approval." }, { "slug": "UNISWAP_API_CHECK_WALLET_DELEGATION", "name": "Check Wallet Delegation", "description": "Get the current delegation status and message for a smart contract wallet across different chains. Returns delegation information for each chain ID in the request, including whether the wallet is delegated, the delegate address, and delegator information. Use when checking if a smart contract wallet has delegated its swap permissions to another address or if someone has delegated to it." }, { "slug": "UNISWAP_API_ENCODE7702_TRANSACTIONS", "name": "Encode 7702 transactions", "description": "Encode a list of transactions into a single transaction for smart contract wallet execution (EIP-7702). All transactions must have the same chainId. Use when you need to batch multiple transactions into a single smart contract wallet transaction for atomic execution." }, { "slug": "UNISWAP_API_GET_GASLESS_ORDERS", "name": "Get Gasless Orders", "description": "Retrieve one or more gasless orders from Uniswap, optionally filtered by query parameters. Must include at least one of: orderId, orderIds, orderStatus, swapper, or filler. Use when you need to check the status or details of Uniswap gasless orders (UniswapX orders)." }, { "slug": "UNISWAP_API_GET_QUOTE", "name": "Get Quote", "description": "Requests a quote according to the specified swap parameters. This endpoint may be used to get a quote for a swap, a bridge, or a wrap/unwrap. The resulting response includes a quote for the swap and the proposed route by which the quote was achieved, along with estimated gas fees. Use when you need to get a quote for a token swap before executing the transaction." }, { "slug": "UNISWAP_API_GET_SWAPPABLE_TOKENS", "name": "Get swappable tokens", "description": "Returns the list of destination bridge chains for a given token on a given chain. Useful for discovering cross-chain swap/bridge options. Returns tokens that are available for swapping/bridging from the specified source token." }, { "slug": "UNISWAP_API_GET_SWAP_STATUS", "name": "Get Swap Status", "description": "Tool to retrieve the current status of swap or bridge transactions on the Uniswap trading platform. Use when you need to check if a swap transaction has been confirmed, is pending, or has failed. Provide the transaction hash(es) to get the status of one or more swap transactions." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "uniswap_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Uniswap API key from https://developers.uniswap.org/dashboard/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "updown_io", "name": "Updown.io", "logo": "https://logos.composio.dev/api/updown_io", "description": "updown.io is a simple and inexpensive website monitoring service that checks the availability and performance of your websites and APIs.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UPDOWN_IO_LIST_CHECKS", "name": "List All Checks", "description": "Tool to retrieve all monitoring checks on your updown.io account. Use when you need to view all configured checks including their status, uptime, and settings." }, { "slug": "UPDOWN_IO_LIST_NODE_IPS", "name": "List Node IPs", "description": "Tool to retrieve a list of all updown.io server IP addresses. Use when configuring firewalls or IP allowlists to permit updown.io monitoring." }, { "slug": "UPDOWN_IO_LIST_NODE_IPV4", "name": "List node IPv4 addresses", "description": "Tool to list all updown.io server IPv4 addresses. Use when you need to retrieve the current set of updown.io node IPv4 addresses." }, { "slug": "UPDOWN_IO_LIST_NODE_IPV6", "name": "List IPv6 nodes", "description": "Tool to retrieve a list of all updown.io server IPv6 addresses. Use when you need to enumerate available IPv6 monitoring nodes." }, { "slug": "UPDOWN_IO_LIST_NODES", "name": "List Monitoring Nodes", "description": "Tool to retrieve a list of all updown.io monitoring servers. Use when you need to discover available monitoring nodes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "updown_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "updown.io API Key", "type": "string", "description": "Your updown.io API key used for authenticating API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "uploadcare", "name": "Uploadcare", "logo": "https://logos.composio.dev/api/uploadcare", "description": "Uploadcare is a comprehensive file handling service that offers uploading, storage, processing, and delivery solutions for web and mobile applications.", "category": "file management & storage", "authSchemes": [ "API_KEY" ], "toolCount": 34, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UPLOADCARE_CHECK_AWS_REKOGNITION_MODERATION_STATUS", "name": "Check AWS Rekognition Moderation Status", "description": "Tool to check the execution status of AWS Rekognition Moderation labels detection. Use after initiating a moderation check to monitor progress and determine when results are ready." }, { "slug": "UPLOADCARE_CHECK_REMOVE_BG_STATUS", "name": "Check Remove.bg Status", "description": "Tool to check Remove.bg execution status and get the UUID of the file with removed background. Use after requesting background removal to poll for completion and retrieve the processed file UUID." }, { "slug": "UPLOADCARE_COPY_FILE_LOCAL", "name": "Copy Uploadcare File to Local Storage", "description": "Tool to copy a file to local storage within the same Uploadcare project. Use when you need to create a duplicate of an existing file." }, { "slug": "UPLOADCARE_CREATE_FILE_GROUP_UPLOAD", "name": "Create File Group (Upload API)", "description": "Tool to create a file group from already uploaded files using Uploadcare's Upload API. Use after files have been uploaded to group them together." }, { "slug": "UPLOADCARE_CREATE_WEBHOOK", "name": "Create Uploadcare webhook", "description": "Create a new webhook subscription to receive notifications when file events occur. Use this to get real-time callbacks at your URL when files are uploaded, stored, deleted, or flagged. The project is automatically determined by your API credentials. Note: Each target_url must be unique per event type within your project." }, { "slug": "UPLOADCARE_DELETE_FILE_METADATA_KEY", "name": "Delete File Metadata Key", "description": "Tool to delete a specific metadata key from an Uploadcare file. Use when you need to remove obsolete metadata after file processing." }, { "slug": "UPLOADCARE_DELETE_FILES", "name": "Batch Delete Uploadcare Files", "description": "Tool to delete multiple files from Uploadcare storage in a single request. Use when you need to remove up to 100 files at once. Invalid UUIDs or missing files will be reported in the problems field." }, { "slug": "UPLOADCARE_DELETE_GROUP", "name": "Delete Uploadcare Group", "description": "Tool to delete a file group. Use when you need to remove a group from the project. Note that files within the group are not deleted, only the group itself." }, { "slug": "UPLOADCARE_DELETE_SINGLE_FILE", "name": "Delete Uploadcare File", "description": "Tool to delete a single file from Uploadcare storage by UUID. Use when you need to permanently remove a file from storage (note: file may remain in CDN cache)." }, { "slug": "UPLOADCARE_DELETE_WEBHOOK", "name": "Delete Uploadcare Webhook", "description": "Permanently deletes a webhook subscription from your Uploadcare project. Use the List Webhooks action first to obtain the webhook ID. This action is irreversible." }, { "slug": "UPLOADCARE_DELETE_WEBHOOK_BY_URL", "name": "Delete Uploadcare Webhook by URL", "description": "Tool to delete a webhook subscription by its target URL. Use when you know the webhook's target URL but not its ID." }, { "slug": "UPLOADCARE_EXECUTE_CLAMAV_SCAN", "name": "Execute ClamAV virus scan", "description": "Tool to execute ClamAV virus scan on an uploaded file. Use this when you need to check if a file contains viruses or malware. The scan runs asynchronously - you receive a request_id to track the scan status. Results can be retrieved from file info or via webhooks." }, { "slug": "UPLOADCARE_GET_AWS_REKOGNITION_EXECUTION_STATUS", "name": "Get AWS Rekognition Execution Status", "description": "Tool to check AWS Rekognition execution status for label detection. Use after initiating an AWS Rekognition add-on execution to monitor job progress." }, { "slug": "UPLOADCARE_GET_CLAMAV_SCAN_STATUS", "name": "Get ClamAV Scan Status", "description": "Tool to check the execution status of a ClamAV virus scan. Use after initiating a ClamAV scan to monitor its progress and determine when results are available." }, { "slug": "UPLOADCARE_GET_FILE_GROUP_INFO_UPLOAD", "name": "Get File Group Info (Upload API)", "description": "Tool to get information about a file group from the Upload API. Use when you need to retrieve group details including file metadata from the upload endpoint." }, { "slug": "UPLOADCARE_GET_FILE_INFO", "name": "Get Uploadcare File Info", "description": "Tool to get information about a specific file. Use after uploading a file to retrieve detailed metadata and usage information." }, { "slug": "UPLOADCARE_GET_FILE_METADATA", "name": "Get File Metadata", "description": "Tool to retrieve all metadata key-value pairs associated with an Uploadcare file. Use when you need to inspect custom metadata attached to a file." }, { "slug": "UPLOADCARE_GET_FILE_METADATA_KEY", "name": "Get File Metadata Key Value", "description": "Tool to get the value of a specific metadata key for an Uploadcare file. Use when you need to retrieve custom metadata associated with a file." }, { "slug": "UPLOADCARE_GET_GROUP_INFO", "name": "Get Uploadcare Group Info", "description": "Tool to get information about a specific file group. Use when you need to retrieve detailed metadata about a group and its contained files." }, { "slug": "UPLOADCARE_GET_PROJECT_INFO", "name": "Get Uploadcare Project Info", "description": "Tool to get information about the current Uploadcare project. Use when you need to retrieve project configuration details." }, { "slug": "UPLOADCARE_GET_UPLOADED_FILE_INFO", "name": "Get Uploaded File Info", "description": "Tool to get information about an uploaded file using Uploadcare's Upload API. Use this to retrieve file metadata including size, MIME type, and content information immediately after upload." }, { "slug": "UPLOADCARE_GET_URL_UPLOAD_STATUS", "name": "Get URL Upload Status", "description": "Tool to check the status of a URL upload task. Use after initiating a file upload from a URL to monitor progress or verify completion." }, { "slug": "UPLOADCARE_IMAGE_MIRROR", "name": "Mirror Uploadcare Image", "description": "Tool to mirror an image horizontally via Uploadcare CDN. Use when you need the URL of a horizontally flipped image." }, { "slug": "UPLOADCARE_LIST_FILES", "name": "List Uploadcare Files", "description": "List files in an Uploadcare project with pagination and optional filtering. Use this tool to retrieve uploaded files. Supports filtering by storage status, removal status, and date range. Results are paginated with optional ordering." }, { "slug": "UPLOADCARE_LIST_GROUPS", "name": "List Uploadcare Groups", "description": "Tool to list groups in the project. Use when you need to retrieve paginated groups of files." }, { "slug": "UPLOADCARE_LIST_WEBHOOKS", "name": "List Uploadcare Webhooks", "description": "Retrieves all webhook subscriptions for the authenticated Uploadcare project. Use this tool to view configured webhooks that receive notifications for file events (uploads, deletions, storage, etc.). Returns an array of webhook objects with their IDs, target URLs, event types, and active status." }, { "slug": "UPLOADCARE_ROTATE_IMAGE", "name": "Rotate Image", "description": "Tool to rotate an image by specified degrees counterclockwise. Use when you need to rotate an uploaded image by 90, 180, or 270 degrees. Use after confirming the file UUID." }, { "slug": "UPLOADCARE_START_MULTIPART_UPLOAD", "name": "Start Multipart Upload", "description": "Tool to start a multipart upload session for files larger than 100MB. Use when you need to upload large files that exceed the direct upload size limit. Returns presigned URLs for uploading file parts." }, { "slug": "UPLOADCARE_STORE_BATCH_FILES", "name": "Batch Store Files", "description": "Tool to store multiple files in one request. Use when you need to mark up to 100 files as permanently stored in bulk." }, { "slug": "UPLOADCARE_STORE_FILE", "name": "Store Uploadcare File", "description": "Tool to mark an Uploadcare file as permanently stored. Use after uploading a file when you need to store it permanently." }, { "slug": "UPLOADCARE_STORE_SINGLE_FILE", "name": "Store Single Uploadcare File", "description": "Tool to store a single file by UUID permanently. Use when you need to make an uploaded file available permanently (stored files are retained indefinitely)." }, { "slug": "UPLOADCARE_UPDATE_FILE_METADATA_KEY", "name": "Update File Metadata Key", "description": "Tool to update or set the value of a specific metadata key for a file. Use when you need to add or modify file metadata." }, { "slug": "UPLOADCARE_UPDATE_WEBHOOK", "name": "Update Uploadcare webhook", "description": "Update an existing webhook subscription by its ID. Use this to modify the target URL, event type, active status, or signing secret of a webhook. Only provide the fields you want to update - all fields are optional except the webhook ID." }, { "slug": "UPLOADCARE_UPLOAD_FROM_URL", "name": "Upload File from URL", "description": "Tool to upload a file from a publicly available URL to Uploadcare. Use when you need to import files from external URLs into your Uploadcare project." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "uploadcare_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Uploadcare Public API Key", "type": "string", "description": "The public API key identifying your Uploadcare project. Used in Authorization header for requests.", "required": true, "default": null }, { "name": "generic_secret", "displayName": "Uploadcare Secret API Key", "type": "string", "description": "The secret API key used to generate HMAC signature for authenticated Uploadcare API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "uptimerobot", "name": "Uptimerobot", "logo": "https://logos.composio.dev/api/uptimerobot", "description": "UptimeRobot is a service that monitors the uptime and performance of websites, applications, and services, providing real-time alerts and detailed logs.", "category": "server monitoring", "authSchemes": [ "API_KEY" ], "toolCount": 15, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "UPTIMEROBOT_ADD_MONITOR", "name": "Add Monitor", "description": "Tool to create a new monitor. Use when you need to start monitoring a URL or service; call after obtaining a valid API key." }, { "slug": "UPTIMEROBOT_DELETE_MONITOR", "name": "Delete Monitor", "description": "Tool to delete a monitor. Use when you need to remove an existing monitor by its ID; use after confirming the monitor ID." }, { "slug": "UPTIMEROBOT_EDIT_MAINTENANCE_WINDOW", "name": "Edit Maintenance Window", "description": "Tool to edit an existing maintenance window. Use when you need to update its name, timing, recurrence, or duration after confirming the window ID." }, { "slug": "UPTIMEROBOT_EDIT_MONITOR", "name": "Edit Monitor", "description": "Tool to edit an existing monitor. Use after confirming the monitor ID exists." }, { "slug": "UPTIMEROBOT_EDIT_PUBLIC_STATUS_PAGE", "name": "Edit Public Status Page", "description": "Tool to edit an existing public status page. Use after confirming the page ID. Updates friendly name, monitor set, domain, and status options in one call." }, { "slug": "UPTIMEROBOT_GET_ACCOUNT_DETAILS", "name": "Get Account Details", "description": "Tool to retrieve account details. Use after authenticating with a valid API key to fetch account metrics." }, { "slug": "UPTIMEROBOT_GET_ALERT_CONTACTS", "name": "Get Alert Contacts", "description": "Tool to retrieve all alert contacts configured for the account. Use when you need to list available notification channels." }, { "slug": "UPTIMEROBOT_GET_MAINTENANCE_WINDOW", "name": "Get Maintenance Window", "description": "Tool to retrieve a specific maintenance window by ID. Use when you need to get detailed information about a single maintenance window." }, { "slug": "UPTIMEROBOT_GET_MAINTENANCE_WINDOWS", "name": "Get Maintenance Windows", "description": "Tool to retrieve maintenance windows. Use after confirming a valid API key." }, { "slug": "UPTIMEROBOT_GET_MONITORS", "name": "Get Monitors", "description": "Tool to fetch monitor details and status. Use after confirming account connection." }, { "slug": "UPTIMEROBOT_GET_PUBLIC_STATUS_PAGES", "name": "Get Public Status Pages", "description": "Tool to retrieve public status pages. Use after confirming API credentials to list all public status pages for an account. Supports pagination." }, { "slug": "UPTIMEROBOT_LIST_INTEGRATIONS", "name": "List Integrations", "description": "Tool to list all integrations. Use to retrieve configured integrations for the account." }, { "slug": "UPTIMEROBOT_LIST_PSPS", "name": "List Public Status Pages (v3)", "description": "Tool to list public status pages using the v3 API. Use to retrieve all PSPs with cursor-based pagination." }, { "slug": "UPTIMEROBOT_NEW_MAINTENANCE_WINDOW", "name": "New Maintenance Window", "description": "Tool to create a new maintenance window. Use after confirming window parameters." }, { "slug": "UPTIMEROBOT_NEW_PUBLIC_STATUS_PAGE", "name": "New Public Status Page", "description": "Tool to create a new public status page. Use when you want to publish a public status page for selected monitors after specifying a friendly name." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "uptimerobot_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "UptimeRobot API Key", "type": "string", "description": "The API key used for authenticating requests to the UptimeRobot API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "urlboxio", "name": "Urlboxio", "logo": "https://logos.composio.dev/api/urlboxio", "description": "Screenshot and HTML rendering API service for capturing website screenshots, PDFs, and HTML content", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "urlboxio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Your Urlbox secret key from https://urlbox.com/dashboard", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "userflow", "name": "Userflow", "logo": "https://logos.composio.dev/api/userflow", "description": "User onboarding software. Build product tours, checklists and more. No coding needed.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 18, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "USERFLOW_CREATE_OR_UPDATE_A_GROUP", "name": "Create or Update a Group", "description": "Tool to create a new group or update an existing group (also referred to as companies in the Userflow UI). Use when you need to create a new group or update attributes of an existing group by providing the group ID." }, { "slug": "USERFLOW_CREATE_OR_UPDATE_A_USER", "name": "Create or Update a User", "description": "Tool to create a new user or update an existing user in Userflow. Use when you need to synchronize user data from your back-end to Userflow. If the user ID exists, attributes will be merged; otherwise a new user is created." }, { "slug": "USERFLOW_DELETE_A_CONTENT_SESSION", "name": "Delete a Content Session", "description": "Tool to permanently delete a content session including its associated progress and survey answers. Use when you need to remove a content session from the system. This action cannot be undone. This operation is idempotent and will succeed even if the content session already doesn't exist." }, { "slug": "USERFLOW_DELETE_A_GROUP", "name": "Delete a Group", "description": "Tool to permanently delete a group including all their attributes, memberships and events. Use when you need to remove a group from the system. This action cannot be undone, but users who were members of the group will remain intact. This operation is idempotent and will succeed even if the group already doesn't exist." }, { "slug": "USERFLOW_DELETE_A_USER", "name": "Delete a User", "description": "Tool to permanently delete a user including all their attributes, memberships, events and flow history. Use when you need to remove a user from the system. This action cannot be undone, but groups that the user was a member of will remain intact. This operation is idempotent and will succeed even if the user already doesn't exist." }, { "slug": "USERFLOW_GET_A_CONTENT_OBJECT", "name": "Get a Content Object", "description": "Tool to retrieve details of a specific content object (flow, checklist, or launcher) by ID. Use when you need to get information about a single content object, including its draft and published versions." }, { "slug": "USERFLOW_GET_A_CONTENT_VERSION", "name": "Get a Content Version", "description": "Tool to retrieve details of a specific content version by ID. Use when you need to get information about a versioned content object, including its questions (for surveys) or tasks (for checklists)." }, { "slug": "USERFLOW_GET_A_GROUP", "name": "Get a Group", "description": "Tool to retrieve details of a specific group (company) by group_id. Use when you need to get information about a group including their attributes, creation timestamp, and optionally expanded relationships like memberships and users. Note: Groups are called 'Companies' in the Userflow UI, but the API uses 'groups' terminology." }, { "slug": "USERFLOW_GET_A_USER", "name": "Get a User", "description": "Tool to retrieve details of a specific user by user_id. Use when you need to get information about a user including their attributes, creation timestamp, and optionally expanded relationships like memberships and groups." }, { "slug": "USERFLOW_LIST_ATTRIBUTE_DEFINITIONS", "name": "List Attribute Definitions", "description": "Tool to retrieve all attribute definitions for users and groups tracked by Userflow. Use when you need to see what attributes are being tracked. Attribute definitions are automatically created when new attributes are sent." }, { "slug": "USERFLOW_LIST_CONTENT", "name": "List Content", "description": "Tool to retrieve all content (flows, checklists, and launchers) in your Userflow account. Use when you need to check what content is available for users to start in your application." }, { "slug": "USERFLOW_LIST_CONTENT_SESSIONS", "name": "List Content Sessions", "description": "Tool to retrieve all content sessions tracking user interactions with content. Use when you need to see user journeys through flows, checklists, or launchers, including their progress and survey answers." }, { "slug": "USERFLOW_LIST_CONTENT_VERSIONS", "name": "List Content Versions", "description": "Tool to retrieve all versions of content including survey questions and checklist tasks. Use when you need to see the version history of flows, checklists, or launchers to track changes over time." }, { "slug": "USERFLOW_LIST_EVENT_DEFINITIONS", "name": "List Event Definitions", "description": "Tool to retrieve all event definitions tracked in Userflow. Use when you need to see what events are being tracked. Event definitions are automatically created when new events are tracked." }, { "slug": "USERFLOW_LIST_GROUPS", "name": "List Groups", "description": "Tool to retrieve all groups (companies) in your Userflow account with pagination and filtering support. Use when you need to list groups or search for specific groups based on attributes. Note: Groups are called 'Companies' in the Userflow UI." }, { "slug": "USERFLOW_LIST_USERS", "name": "List Users", "description": "Tool to retrieve a paginated list of all users. Use when you need to list users with optional filtering, sorting, and expansion of related objects like memberships and groups." }, { "slug": "USERFLOW_REMOVE_A_USER_FROM_A_GROUP", "name": "Remove a User from a Group", "description": "Tool to remove a user from a group (group membership). Use when you need to revoke a user's membership in a specific group. This operation is idempotent and will succeed even if the user is not already a member of the group." }, { "slug": "USERFLOW_TRACK_AN_EVENT", "name": "Track an Event", "description": "Tool to record a custom event for a user or group for analytics and personalization. Use when you need to track user actions or behaviors. Events can be associated with just a user, just a group, or both a user and a group." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "userflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to Userflow and copy your API Key from \"Settings\" > \"API\". Use Environment API Keys for Users API or Personal API Keys for Accounts API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "userlist", "name": "Userlist", "logo": "https://logos.composio.dev/api/userlist", "description": "Userlist is a full-stack email automation platform designed for SaaS companies, enabling targeted behavior-based campaigns through email and in-app messages.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "USERLIST_DELETE_COMPANY", "name": "Delete Company from Userlist", "description": "Tool to delete a company from Userlist. Use when you need to remove a company by its unique identifier after verifying it." }, { "slug": "USERLIST_PUSH_RELATIONSHIP", "name": "Push User-Company Relationship", "description": "Tool to create or update a relationship between a user and a company in Userlist. Use after confirming valid user and company identifiers." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "userlist_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Userlist Push API Key", "type": "string", "description": "The Push API key used for authenticating requests to the Userlist API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "v0", "name": "V0", "logo": "https://logos.composio.dev/api/v0", "description": "v0 is an AI-powered web development assistant built by Vercel, designed to generate real, production-ready code for modern web applications.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 44, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "V0_ASSIGN_CHAT_TO_PROJECT", "name": "Assign Chat To Project", "description": "Tool to assign a chat to a project. Use when you need to group a conversation under a shared project context for better organization." }, { "slug": "V0_CHAT_COMPLETIONS", "name": "V0 Chat Completions", "description": "Tool to generate a chat model response given a list of messages. Use when you need AI-powered conversational replies via the v0 API. Note: This action uses the POST /chats endpoint which creates a persistent chat session in the user's v0 account. Each call will create a new chat that can be viewed at the returned webUrl or accessed via the apiUrl." }, { "slug": "V0_CREATE_HOOK_V0", "name": "Create Webhook", "description": "Tool to create a new webhook subscription for receiving event notifications. Use when you need to listen for chat or message events from v0." }, { "slug": "V0_CREATE_PROJECT", "name": "Create V0 Project", "description": "Tool to create a new v0 project container for chats and code generation. Use when you need to start a clean project with specific configuration." }, { "slug": "V0_CREATE_PROJECT_ENV_VARS", "name": "Create Project Environment Variables", "description": "Tool to create new environment variables for a v0 project. Use when you need to add environment variables to a project. By default, fails if any keys already exist unless upsert is set to true." }, { "slug": "V0_CREATE_VERCEL_PROJECT", "name": "Create Vercel Project", "description": "Tool to link a Vercel project to an existing v0 project. Use when you need to enable Vercel-related features and deployment integration for a v0 project." }, { "slug": "V0_DELETE_CHAT", "name": "Delete Chat", "description": "Tool to permanently delete a specific chat by ID. Use when you need to remove a chat and all its contents irreversibly." }, { "slug": "V0_DELETE_DEPLOYMENT", "name": "Delete Deployment", "description": "Tool to delete a deployment by ID from Vercel. Use when you need to remove a specific deployment permanently." }, { "slug": "V0_DELETE_HOOK", "name": "Delete Hook", "description": "Tool to delete a webhook by its ID. Use when you need to remove a webhook subscription. This action is irreversible." }, { "slug": "V0_DELETE_PROJECT_ENV_VARS_V0", "name": "Delete Project Environment Variables", "description": "Tool to delete multiple environment variables from a project by their IDs. Use when you need to remove environment variables from a v0 project." }, { "slug": "V0_DELETE_V0_PROJECT", "name": "Delete V0 Project", "description": "Tool to permanently delete a v0 project by its ID. Use when you need to remove a project and optionally all its associated chats. This operation is irreversible." }, { "slug": "V0_DEPLOY_PROJECT", "name": "Deploy Project", "description": "Tool to deploy a specific v0 chat version to Vercel. Use when you need to create a live deployment with public URLs after generating code via v0." }, { "slug": "V0_DOWNLOAD_CHAT_VERSION", "name": "Download Chat Version", "description": "Tool to download all files for a specific chat version as a zip or tarball archive. Use when you need to retrieve a complete downloadable archive of a version's files, optionally including deployment configuration files." }, { "slug": "V0_EXPORT_PROJECT_CODE", "name": "Export Project Code", "description": "Tool to export a deployable snapshot of a v0 chat version by retrieving all files (including default/deployment files). Use when you need to get the complete generated code for a specific version, ready for local deployment or artifact creation." }, { "slug": "V0_FAVORITE_CHAT", "name": "Favorite Chat", "description": "Tool to mark a chat as favorite or remove the favorite status. Use when you need to organize and quickly access important chats." }, { "slug": "V0_FIND_CHATS", "name": "Find Chats", "description": "Tool to retrieve a list of chats. Use when you need to list user chats with pagination and optional favorite filtering after authentication." }, { "slug": "V0_FIND_PROJECTS", "name": "Find Projects", "description": "Tool to retrieve a list of projects associated with the authenticated user. Use after obtaining a valid API key." }, { "slug": "V0_FIND_VERCEL_PROJECTS", "name": "Find Vercel Projects", "description": "Tool to retrieve a list of Vercel projects linked to the user's v0 workspace. Use when you need to discover available Vercel projects for deployment or integration purposes." }, { "slug": "V0_FORK_CHAT", "name": "Fork Chat", "description": "Tool to create a fork (copy) of an existing chat. Use when you need to explore alternative directions without modifying the original conversation." }, { "slug": "V0_GET_CHAT", "name": "Get Chat", "description": "Tool to retrieve the full details of a specific chat using its chatId. Use when you need to access chat messages, metadata, and configuration for a specific chat." }, { "slug": "V0_GET_CHAT_PROJECT", "name": "Get Chat Project", "description": "Tool to retrieve the v0 project associated with a given chat. Use when you need to determine the context or scope of a chat session." }, { "slug": "V0_GET_DEPLOYMENT_ERRORS", "name": "Get Deployment Errors", "description": "Tool to retrieve errors for a specific deployment. Use when diagnosing and debugging deployment issues." }, { "slug": "V0_GET_DEPLOYMENT_LOGS", "name": "Get Deployment Logs", "description": "Tool to retrieve logs for a specific deployment. Use when you need to debug or monitor deployment behavior by fetching log entries, optionally filtered by timestamp." }, { "slug": "V0_GET_HOOK", "name": "Get Hook", "description": "Tool to retrieve detailed information about a specific webhook by its ID. Use when you need to inspect webhook configuration, subscribed events, or target URL." }, { "slug": "V0_GET_MESSAGE", "name": "Get Chat Message", "description": "Tool to retrieve detailed information about a specific message within a chat. Use when you need to access message content, metadata, attachments, or model configuration for a known message ID." }, { "slug": "V0_GET_PROJECT", "name": "Get Project by ID", "description": "Tool to retrieve the details of a specific v0 project by its ID, including associated chats and metadata. Use when you need to inspect project configuration or access related chats." }, { "slug": "V0_GET_PROJECT_ENV_VAR", "name": "Get Project Environment Variable", "description": "Tool to retrieve a specific environment variable for a given project by its ID, including its value. Use when you need to get the details of a particular environment variable for a project." }, { "slug": "V0_GET_RATE_LIMITS", "name": "Get Rate Limits", "description": "Tool to retrieve the current rate limits for the authenticated user. Use when you need to monitor usage limits and avoid throttling." }, { "slug": "V0_GET_USAGE_REPORT_V0", "name": "Get Usage Report", "description": "Tool to retrieve detailed usage events including costs, models used, and metadata. Use when you need to access usage data from the dashboard, filter by chat/user, or analyze costs." }, { "slug": "V0_GET_USER", "name": "Get User", "description": "Tool to retrieve the currently authenticated user's information. Use when you need to get the user's ID, name, email, avatar, or account metadata." }, { "slug": "V0_GET_USER_BILLING", "name": "Get User Billing", "description": "Tool to fetch billing usage and quota information for the authenticated user. Use when you need to check the user's billing details or usage metrics. Can be scoped to a specific project or namespace." }, { "slug": "V0_GET_USER_PLAN_V0", "name": "Get User Plan", "description": "Tool to retrieve the authenticated user's subscription plan details including billing cycle and balance. Use to check plan status and usage limits." }, { "slug": "V0_GET_USER_SCOPES", "name": "Get User Scopes", "description": "Tool to retrieve all accessible scopes for the authenticated user, such as personal workspaces or shared teams. Use when you need to understand which workspaces the user can access." }, { "slug": "V0_INIT_V0_CHAT", "name": "Initialize Chat", "description": "Tool to initialize a new chat from source content such as files, repositories, registries, zip archives, or templates. Use when you need to start a new v0 chat session with pre-populated content. Initialization uses no tokens." }, { "slug": "V0_LIST_CHAT_VERSIONS", "name": "List Chat Versions", "description": "Tool to retrieve all versions (iterations) for a specific chat, ordered by creation date (newest first). Use when you need to view the history of a chat's generated versions with cursor-based pagination support." }, { "slug": "V0_LIST_DEPLOYMENTS", "name": "List Deployments", "description": "Tool to retrieve a list of deployments for a given project, chat, and version. Use when you need to check existing deployments for specific project versions." }, { "slug": "V0_LIST_HOOKS", "name": "List Hooks", "description": "Tool to retrieve all webhooks tied to chat events or deployments. Use when you need to list configured webhooks after authentication." }, { "slug": "V0_LIST_MESSAGES", "name": "List Messages", "description": "Tool to retrieve all messages within a specific chat. Use when you need to list messages with content, role, and type information. Supports pagination for chats with many messages." }, { "slug": "V0_LIST_PROJECT_ENV_VARS", "name": "List Project Environment Variables", "description": "Tool to retrieve all environment variables for a project with optional decryption. Use when you need to view project configuration or secrets." }, { "slug": "V0_UPDATE_CHAT", "name": "Update Chat", "description": "Tool to update metadata of an existing v0 chat. Use when you need to rename a chat or change its privacy setting after creation." }, { "slug": "V0_UPDATE_CHAT_VERSION", "name": "Update Chat Version Files", "description": "Tool to update source files of a specific chat version. Use when you need to manually edit generated files through the API." }, { "slug": "V0_UPDATE_HOOK", "name": "Update V0 Webhook", "description": "Tool to update the configuration of an existing webhook, including its name, event subscriptions, or target URL. Use when you need to modify webhook settings after creation." }, { "slug": "V0_UPDATE_PROJECT", "name": "Update V0 Project", "description": "Tool to update the metadata of an existing v0 project using its projectId. Use when you need to change the project name, description, instructions, or privacy setting." }, { "slug": "V0_UPDATE_PROJECT_ENV_VARS", "name": "Update Project Environment Variables", "description": "Tool to update environment variables for a v0 project. Use when you need to modify the values of existing environment variables." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "v0_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "v0 API Key", "type": "string", "description": "Your v0 API key, obtainable from your v0 account settings at https://v0.dev/chat/settings/keys", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vanta", "name": "Vanta", "logo": "https://logos.composio.dev/api/vanta", "description": "Vanta is a security and compliance automation platform that helps companies achieve and maintain certifications like SOC 2, ISO 27001, and HIPAA.", "category": "security & identity tools", "authSchemes": [ "S2S_OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "S2S_OAUTH2", "name": "vanta_s2s_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client ID", "type": "string", "description": "Vanta API Client ID issued from your Vanta Developer settings. See https://developer.vanta.com/docs/api-access-setup.", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client Secret", "type": "string", "description": "Vanta API Client Secret paired with the Client ID above.", "required": true, "default": null } ], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "vapi", "name": "Vapi", "logo": "https://logos.composio.dev/api/vapi", "description": "Vapi is a voice AI platform that enables developers to build, test, and deploy voice agents with natural conversations, real-time responses, and seamless integration capabilities.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 38, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VAPI_ASSISTANT_CONTROLLER_UPDATE", "name": "Update Assistant", "description": "Tool to update an existing Vapi assistant configuration. Use when you need to modify assistant properties such as name, voice settings, transcriber configuration, model settings, messages, or other behavior parameters. Only include fields you want to update." }, { "slug": "VAPI_CALL_CONTROLLER_FIND_ALL", "name": "List Calls", "description": "Tool to list calls from Vapi. Use when you need to retrieve multiple calls with optional filtering by id, assistantId, phoneNumberId, or date ranges. Returns an array of call objects with details including status, costs, messages, and artifacts." }, { "slug": "VAPI_CHAT_CONTROLLER_DELETE_CHAT", "name": "Delete Chat", "description": "Tool to delete a chat by its ID from Vapi. Use when you need to permanently remove a chat conversation." }, { "slug": "VAPI_CHAT_CONTROLLER_GET_CHAT", "name": "Get Chat", "description": "Tool to fetch chat details by ID. Use when you have a chat ID and need full chat information including messages, costs, and configuration." }, { "slug": "VAPI_CREATE_ANALYTICS_QUERY", "name": "Create Analytics Queries", "description": "Tool to create and execute analytics queries on VAPI data. Use when you need to analyze call or subscription metrics with aggregations like count, sum, average, min, or max. Supports grouping by various dimensions and time-based analysis with custom time ranges." }, { "slug": "VAPI_CREATE_ASSISTANT", "name": "Create Assistant", "description": "Tool to create a new Vapi assistant with specified transcriber, voice, and AI model configurations. Use when setting up a conversational AI assistant for voice interactions. The assistant requires transcription (speech-to-text), voice (text-to-speech), and AI model (conversation logic) configurations at minimum." }, { "slug": "VAPI_CREATE_EVAL", "name": "Create Eval", "description": "Tool to create an eval for testing conversation flows. Use when you need to validate that an AI assistant responds correctly to specific conversation scenarios." }, { "slug": "VAPI_CREATE_OPEN_AI_CHAT", "name": "Create OpenAI Chat", "description": "Tool to create an OpenAI-compatible chat using the Vapi API. Use when you need to send a chat message to an assistant or squad and receive a response. Supports both streaming and non-streaming modes." }, { "slug": "VAPI_CREATE_POLICY", "name": "Create Monitoring Policy", "description": "Tool to create a monitoring policy in VAPI. Use when you need to set up automated monitoring rules based on thresholds and time windows. Policies can trigger alerts based on event counts or percentages over a specified lookback window." }, { "slug": "VAPI_CREATE_PROVIDER_RESOURCE", "name": "Create Provider Resource", "description": "Tool to create an 11Labs pronunciation dictionary resource. Use when you need to define custom pronunciations for specific terms or acronyms in voice synthesis." }, { "slug": "VAPI_CREATE_SCORECARD", "name": "Create Scorecard", "description": "Tool to create a scorecard for observability and evaluation. Use when setting up metrics to evaluate assistant performance based on structured outputs. Scorecards contain metrics with conditions that calculate normalized scores on a 100-point scale." }, { "slug": "VAPI_DELETE_CALL", "name": "Delete Call", "description": "Tool to delete a call by its unique identifier. Use when you need to remove call data from the system. Returns the deleted call object with all its associated data." }, { "slug": "VAPI_DELETE_EVAL", "name": "Delete Eval", "description": "Tool to delete an eval by ID. Use when you need to permanently remove an eval from the system." }, { "slug": "VAPI_DELETE_PHONE_NUMBER", "name": "Delete Phone Number", "description": "Tool to delete a phone number from Vapi. Use when you need to remove a phone number from your Vapi organization. Returns the deleted phone number object." }, { "slug": "VAPI_EVAL_CONTROLLER_GET", "name": "Get Eval", "description": "Tool to retrieve an eval by its ID. Use when you need to fetch details about a specific eval including its mock conversation messages and metadata." }, { "slug": "VAPI_EVAL_CONTROLLER_REMOVE_RUN", "name": "Delete Eval Run", "description": "Tool to delete an eval run by its ID from Vapi. Use when you need to permanently remove an evaluation run." }, { "slug": "VAPI_EVAL_CONTROLLER_UPDATE", "name": "Update Eval", "description": "Tool to update an existing eval in Vapi. Use when you need to modify eval properties like name, description, type, or mock conversation messages." }, { "slug": "VAPI_GET_ASSISTANT", "name": "Get Assistant", "description": "Tool to retrieve a specific assistant by ID from Vapi. Use when you need to fetch details about an existing assistant." }, { "slug": "VAPI_GET_CALL", "name": "Get Call", "description": "Tool to fetch call details by ID. Use when you have a call ID and need full call information including status, duration, costs, messages, and recordings." }, { "slug": "VAPI_GET_FILE", "name": "Get File", "description": "Tool to retrieve a file by its ID from Vapi. Use when you need to get details about a specific file including its status, metadata, storage location, and timestamps." }, { "slug": "VAPI_GET_MONITORING", "name": "List Monitoring Policies", "description": "Tool to retrieve monitoring policies from Vapi. Use when you need to list, filter, or search for monitoring policies configured in the organization. Supports filtering by policy ID, severity level, monitor ID, and date ranges for creation/update timestamps." }, { "slug": "VAPI_GET_STRUCTURED_OUTPUTS", "name": "List Structured Outputs", "description": "Tool to list structured outputs with optional filtering. Use when you need to retrieve structured output configurations with pagination support. Supports filtering by ID, name, timestamps, and includes pagination controls." }, { "slug": "VAPI_INSIGHT_CONTROLLER_FIND_ALL", "name": "Get Insights", "description": "Tool to retrieve insights from VAPI. Use when you need to list insights with optional filtering by ID, creation date, or update date. Supports pagination and sorting." }, { "slug": "VAPI_LIST_ASSISTANTS", "name": "List Assistants", "description": "Tool to list all assistants in your VAPI organization. Use when you need to retrieve information about configured assistants. Supports filtering by creation and update timestamps." }, { "slug": "VAPI_LIST_CHATS", "name": "List Chats", "description": "Tool to retrieve a list of chat conversations from VAPI. Use when you need to view existing chats, optionally filtered by assistant, squad, session, or time range. Supports pagination and sorting for efficient retrieval of large chat histories." }, { "slug": "VAPI_LIST_EVALS", "name": "List Evals", "description": "Tool to retrieve a paginated list of evals from Vapi. Use when you need to list or search evals with optional filtering by creation/update timestamps." }, { "slug": "VAPI_LIST_PHONE_NUMBERS", "name": "List Phone Numbers", "description": "Tool to list phone numbers in the Vapi organization. Use when you need to enumerate available phone numbers for routing or selection workflows. Supports filtering by creation and update timestamps." }, { "slug": "VAPI_LIST_PROVIDER_RESOURCES", "name": "List Provider Resources", "description": "Tool to retrieve provider resources from Vapi (e.g., 11labs pronunciation dictionaries). Use when you need to list or search provider-specific resources with optional filtering by timestamps." }, { "slug": "VAPI_PATCH_INSIGHT_INSIGHT", "name": "Update Insight", "description": "Tool to update an existing insight configuration in VAPI. Use when you need to modify insight properties like name, queries, time range, or visualization settings. Supports all four insight types (bar, pie, line, text) with type-specific configurations." }, { "slug": "VAPI_PHONE_NUMBER_CONTROLLER_CREATE", "name": "Create Phone Number", "description": "Tool to create a phone number with VAPI. Use when you need to provision a new phone number for voice AI applications. Supports multiple providers (VAPI, Twilio, Vonage, Telnyx, BYO). Required parameters vary by provider." }, { "slug": "VAPI_SCORECARD_CONTROLLER_GET_PAGINATED", "name": "List Scorecards", "description": "Tool to retrieve a paginated list of scorecards from Vapi. Use when you need to list or search scorecards with optional filtering by creation/update timestamps." }, { "slug": "VAPI_SESSION_CONTROLLER_CREATE", "name": "Create Session", "description": "Tool to create a new session in Vapi. Use when you need to establish a persistent conversation context that can span multiple chats. Sessions automatically expire after 24 hours." }, { "slug": "VAPI_SESSION_CONTROLLER_FIND_ALL_PAGINATED", "name": "List Sessions", "description": "Tool to retrieve a paginated list of sessions from VAPI. Use when you need to list sessions with optional filtering by session ID, name, assistant, squad, or workflow. Supports pagination, sorting, and timestamp-based filtering." }, { "slug": "VAPI_TOOL_CONTROLLER_FIND_ONE", "name": "Get Tool", "description": "Tool to fetch tool details by ID. Use when you have a tool ID and need full tool configuration including type, messages, function definitions, and server settings." }, { "slug": "VAPI_TOOL_CONTROLLER_TEST_CODE_EXECUTION", "name": "Test Code Tool Execution", "description": "Tool to test TypeScript code execution in Vapi's code tool environment. Use when validating code before deploying it as a tool." }, { "slug": "VAPI_TOOL_CONTROLLER_UPDATE", "name": "Update Tool", "description": "Tool to update an existing Vapi tool configuration. Use when you need to modify tool properties such as function definitions, server settings, messages, or other tool-specific parameters." }, { "slug": "VAPI_UPDATE_PHONE_NUMBER", "name": "Update Phone Number", "description": "Tool to update an existing phone number configuration in VAPI. Use when you need to modify phone number settings such as name, associated assistant/workflow, or provider-specific configurations." }, { "slug": "VAPI_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to Vapi Knowledge Base. Use when you need to add files for AI assistants to reference. Returns file metadata including ID, storage URLs, and processing status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Private API Key", "type": "string", "description": "Your Vapi Private API key, a UUID like 1a2b3c4d-... (not the public pbk_live_ key). In dashboard.vapi.ai, click your profile → Vapi API Keys and copy the Private key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vectorshift", "name": "Vectorshift", "logo": "https://logos.composio.dev/api/vectorshift", "description": "The End-to-End AI Automations Platform for building and deploying AI workflows, pipelines, chatbots, and knowledge bases.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VECTORSHIFT_CREATE_CHATBOT", "name": "Create Chatbot", "description": "Tool to create a new chatbot. Chatbots are conversational AI interfaces built on pipelines. Use when you need to create a new chatbot with a specific pipeline configuration." }, { "slug": "VECTORSHIFT_DELETE_CHATBOT", "name": "Delete Chatbot", "description": "Tool to delete a chatbot by its ID. Permanently removes the chatbot from the account. Use when you need to remove a chatbot that is no longer needed." }, { "slug": "VECTORSHIFT_GET_CHATBOT", "name": "Get Chatbot", "description": "Tool to fetch an existing chatbot by its ID or name. Returns chatbot configuration and metadata. Use when you need to retrieve details about a specific chatbot. Either chatbot ID or name must be provided." }, { "slug": "VECTORSHIFT_GET_KNOWLEDGE_BASE", "name": "Get Knowledge Base", "description": "Tool to fetch an existing knowledge base by its ID or name. Returns knowledge base configuration and metadata. Use when you need to retrieve details about a specific knowledge base." }, { "slug": "VECTORSHIFT_GET_PIPELINE", "name": "Get Pipeline", "description": "Tool to fetch an existing pipeline by its ID or name. Returns pipeline configuration and metadata. Use when you need to retrieve a specific pipeline's details, configuration, or metadata." }, { "slug": "VECTORSHIFT_LIST_CHATBOTS", "name": "List Chatbots", "description": "Tool to list all available chatbots in the account. Use when you need to retrieve chatbot IDs or full chatbot details." }, { "slug": "VECTORSHIFT_LIST_PIPELINES", "name": "List Pipelines", "description": "Tool to list all available pipelines in the VectorShift account. Use when you need to retrieve the catalog of pipelines. Supports filtering for shared pipelines and verbose output with full pipeline details." }, { "slug": "VECTORSHIFT_LIST_TRANSFORMATIONS", "name": "List Transformations", "description": "Tool to list all available transformations in the account. Use when you need to retrieve transformation IDs or complete transformation objects." }, { "slug": "VECTORSHIFT_RUN_PIPELINE", "name": "Run Pipeline", "description": "Tool to run a VectorShift pipeline with the given inputs. Use when you need to execute a pipeline and get its results or run_id for asynchronous execution. Returns the pipeline execution status, run_id, and outputs if execution completed synchronously." }, { "slug": "VECTORSHIFT_RUN_PIPELINE_BULK", "name": "Run Pipeline in Bulk", "description": "Tool to run a VectorShift pipeline in bulk with multiple sets of inputs. Use when you need to batch process multiple pipeline executions in a single API call. Returns the overall status and an array of outputs with run_id for each execution." }, { "slug": "VECTORSHIFT_TERMINATE_PIPELINE", "name": "Terminate Pipeline Execution", "description": "Tool to terminate a running pipeline execution. Use when you need to stop a pipeline run by its run_id." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vectorshift_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in to VectorShift, click the User menu on the top left, and go to \"Profile\" > \"API Keys\".", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vercel", "name": "Vercel", "logo": "https://logos.composio.dev/api/vercel", "description": "Vercel is a platform for frontend frameworks and static sites, enabling developers to host websites and web services that deploy instantly, scale automatically, and require minimal configuration.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 146, "triggerCount": 0, "version": "20260703_01", "tools": [ { "slug": "VERCEL_ADD_ENVIRONMENT_VARIABLE", "name": "Add Environment Variable", "description": "Tool to add an environment variable to a Vercel project. Variables only take effect in subsequent deployments — already-running deployments are not updated. Use after confirming the project exists and you need to configure secrets or configuration values across environments before deployment. Example: \"Add API_KEY=secret to production\"." }, { "slug": "VERCEL_ADD_PROJECT_DOMAIN", "name": "Add Domain to Project", "description": "Tool to attach a custom domain to a Vercel project. Use when you need to add a domain to a project for production or branch-specific deployments. After adding, the domain must be verified by completing the verification challenges returned in the response." }, { "slug": "VERCEL_ASSIGN_ALIAS", "name": "Assign Alias to Deployment", "description": "Tool to assign an alias to a specific Vercel deployment. Use when you need to associate a custom domain or subdomain with a deployment." }, { "slug": "VERCEL_BATCH_REMOVE_PROJECT_ENV", "name": "Batch Remove Project Environment Variables", "description": "Tool to batch remove environment variables from a Vercel project. Use when you need to delete multiple environment variables at once. More efficient than deleting variables one by one when removing multiple variables." }, { "slug": "VERCEL_BUY_DOMAINS", "name": "Buy Domains", "description": "Tool to purchase multiple domains through Vercel's domain registrar. Use when registering new domains after checking availability and price. Important: Always check domain availability and price before attempting purchase. Some TLDs may require additional contact information fields." }, { "slug": "VERCEL_BUY_SINGLE_DOMAIN", "name": "Buy Single Domain", "description": "Tool to purchase a domain through Vercel's domain registrar. Use when you need to register and buy a domain after confirming availability and pricing." }, { "slug": "VERCEL_CHECK_CACHE_ARTIFACT_EXISTS", "name": "Check Artifact Exists", "description": "Tool to check if a cache artifact exists by its hash. Use when verifying whether a cache artifact is already stored before upload or when validating artifact availability." }, { "slug": "VERCEL_CHECK_DOMAIN_AVAILABILITY", "name": "Check Domain Availability", "description": "Tool to check if a domain is available for registration. Read-only: does not reserve or purchase the domain. Use when you need to verify domain availability before purchase. Response field `available=false` means the domain is taken (not an error); actual failures return HTTP 4xx. IMPORTANT: Vercel only supports specific TLDs. Common supported TLDs include: .com, .net, .org, .io, .co, .dev, .app, .ai, .xyz, .me. Some TLDs are NOT supported (e.g., .cam, .berlin, .wales). For the full list, see: https://vercel.com/docs/domains/supported-domains" }, { "slug": "VERCEL_CHECK_DOMAIN_PRICE", "name": "Check Domain Price (Deprecated)", "description": "DEPRECATED: Use VERCEL_CHECK_DOMAIN_PRICE2 instead. Tool to check the price for a domain before purchase. Use when evaluating cost and availability prior to domain registration." }, { "slug": "VERCEL_CHECK_DOMAIN_PRICE2", "name": "Check Domain Price", "description": "Check pricing for a domain including purchase, renewal, and transfer costs. Use this to evaluate the cost of registering, renewing, or transferring a domain via Vercel. Returns pricing for the specified domain and time period." }, { "slug": "VERCEL_CREATE_AUTH_TOKEN", "name": "Create Auth Token", "description": "Tool to create a new authentication token. Use when you need to programmatically generate a new auth token with optional expiration. Returns both token metadata and the bearer token value (only provided once)." }, { "slug": "VERCEL_CREATE_DEPLOYMENT", "name": "Create Deployment", "description": "DEPRECATED: Use VERCEL_CREATE_NEW_DEPLOYMENT instead. Create a new deployment on Vercel. Deploys static files or connects to a Git repository. **File-based deployments**: Provide `name` and `files` array with file content (inline HTML/CSS/JS). **Git-based deployments**: Provide `name` and `gitSource` with repository details. IMPORTANT: Always provide either `slug` (team slug) or `teamId` (team ID starting with 'team_') to specify the team context. Use VERCEL_GET_TEAMS to find the correct team slug. Example minimal file deployment: { \"name\": \"my-project\", \"slug\": \"my-team\", \"files\": [{\"file\": \"index.html\", \"data\": \"Hello World\"}] }" }, { "slug": "VERCEL_CREATE_DNS_RECORD", "name": "Create DNS Record", "description": "Tool to create a new DNS record for a domain. Use when you need to add DNS records such as A, AAAA, CNAME, MX, TXT, SRV, or other record types to a domain managed in Vercel." }, { "slug": "VERCEL_CREATE_EDGE_CONFIG", "name": "Create Edge Config", "description": "Creates a new Edge Config for storing key-value data at the edge. Edge Configs enable ultra-low latency data reads from Vercel's edge network. Use this to store feature flags, A/B test configurations, or other data that needs to be read quickly from edge functions." }, { "slug": "VERCEL_CREATE_EDGE_CONFIG_TOKEN", "name": "Create Edge Config Token", "description": "Create a read access token for a specific Edge Config. The generated token is used to authenticate against the Edge Config's endpoint for high-volume, low-latency read operations. Use this when you need to grant read access to an Edge Config from your application." }, { "slug": "VERCEL_CREATE_NEW_DEPLOYMENT", "name": "Create new deployment", "description": "Tool to create a new deployment. Use when you need to deploy files or a Git commit to a Vercel project. Example for file deployment: { \"name\": \"my-app\", \"files\": [ {\"file\": \"index.html\", \"data\": \"Hello World\"}, {\"file\": \"style.css\", \"data\": \"body { font-family: Arial; }\"} ], \"target\": \"production\" } Example for Git source deployment (deploy from GitHub branch - uses latest commit): { \"name\": \"my-app\", \"gitSource\": { \"type\": \"github\", \"repoId\": \"668449998\", \"ref\": \"main\" } } Example for Git source deployment (deploy specific commit): { \"name\": \"my-app\", \"gitSource\": { \"type\": \"github\", \"repoId\": \"668449998\", \"ref\": \"main\", \"sha\": \"a1b2c3d4e5f6g7h8i9j0\" } } Note: repoId must be the numeric GitHub repository ID (NOT 'owner/repo'). Get it via: GET https://api.github.com/repos/{owner}/{repo} -> use the 'id' field. Example for redeployment: { \"deploymentId\": \"dpl_Br7FSrRXuUkSHj7t7GVVadyuGvFg\", \"target\": \"production\" }" }, { "slug": "VERCEL_CREATE_OR_TRANSFER_DOMAIN", "name": "Create or Transfer Domain", "description": "Tool to add an existing domain to the Vercel platform. Use when you need to add a domain to Vercel for DNS management or transfer a domain. Supports two methods: 'add' for adding existing domains and 'move-in' for transferring domains (requires authorization token)." }, { "slug": "VERCEL_CREATE_PROJECT", "name": "Create Vercel Project (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_CREATE_PROJECT2 instead. Tool to create a new Vercel project. Use when automating project provisioning in CI/CD before deployment. Project names must be unique per team; duplicate names cause 409 conflicts — check for existing projects first." }, { "slug": "VERCEL_CREATE_PROJECT2", "name": "Create Vercel Project (v2)", "description": "Tool to create a new Vercel project with comprehensive configuration options. Use when you need to create a project with specific settings like environment variables, framework selection, Git repository connection, resource configuration, or deployment policies." }, { "slug": "VERCEL_CREATE_PROJECT_ENV", "name": "Create Project Environment Variables (Deprecated)", "description": "DEPRECATED: Use VERCEL_ADD_ENVIRONMENT_VARIABLE instead. Tool to create environment variables in a Vercel project. Use when you need to configure secrets or configuration values across environments." }, { "slug": "VERCEL_CREATE_PROJECT_TRANSFER_REQUEST", "name": "Create Project Transfer Request", "description": "Tool to create a project transfer request. Use when you need to initiate a transfer of a Vercel project to another account or team." }, { "slug": "VERCEL_CREATE_SHARED_ENV_VARIABLE", "name": "Create Shared Environment Variable", "description": "Tool to create one or more shared environment variables in Vercel. Use when you need to create environment variables that can be shared across multiple projects or applied to specific target environments. Supports creating 1-50 variables in a single request." }, { "slug": "VERCEL_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook for receiving notifications about Vercel events. Use when you need to set up automated responses to deployment, domain, project, or other Vercel events." }, { "slug": "VERCEL_DANGEROUSLY_DELETE_BY_SRC_IMAGES", "name": "Dangerously Delete By Source Images", "description": "Tool to dangerously delete edge cache by source image URLs. Use when you need to invalidate cached images from the edge network for a specific project." }, { "slug": "VERCEL_DANGEROUSLY_DELETE_BY_TAGS", "name": "Dangerously Delete Cache By Tags", "description": "Tool to dangerously delete edge cache by tags. Use when you need to purge cached content for specific cache tags in a Vercel project. WARNING: This permanently deletes cached content and cannot be undone." }, { "slug": "VERCEL_DELETE_ALIAS", "name": "Delete Vercel Alias", "description": "Tool to delete an alias from Vercel. Use when you need to remove a deployment alias or custom domain alias after confirming the alias ID." }, { "slug": "VERCEL_DELETE_AUTH_TOKEN", "name": "Delete Auth Token", "description": "Tool to delete an authentication token. Use when you need to revoke a token programmatically after confirming its validity. Example: \"Delete auth token with id abc123\"" }, { "slug": "VERCEL_DELETE_DATA_CACHE_PURGE_ALL", "name": "Purge All Data Cache", "description": "Tool to purge all data cache entries for a specific project. Use when you need to clear the entire data cache for a project." }, { "slug": "VERCEL_DELETE_DEPLOYMENT", "name": "Delete Deployment (V2)", "description": "Permanently delete a Vercel deployment by its ID or URL. Use this action to remove a deployment from Vercel. The deployment can be identified either by its unique deployment ID (e.g., 'dpl_xxx') or by providing the deployment URL as a query parameter. Note: This action is destructive and cannot be undone. The deployment will be permanently removed. Do not target the latest production deployment. When filtering deployments by branch or status before deletion, use `meta.githubCommitRef` for branch and `readyState` for status — misreading these fields can cause unintended deletions." }, { "slug": "VERCEL_DELETE_DNS_RECORD", "name": "Delete DNS Record", "description": "Tool to delete a DNS record from a domain. Use when you need to remove an existing DNS record by its record ID and domain name." }, { "slug": "VERCEL_DELETE_DOMAIN", "name": "Delete Domain", "description": "Tool to remove a domain by name from Vercel. Use when you need to delete a domain that is no longer needed." }, { "slug": "VERCEL_DELETE_EDGE_CONFIG", "name": "Delete Edge Config", "description": "Tool to delete an Edge Config by its unique identifier. Use when you need to permanently remove an Edge Config and all its associated data." }, { "slug": "VERCEL_DELETE_EDGE_CONFIG_TOKENS", "name": "Delete Edge Config Tokens (v2)", "description": "Tool to delete one or more Edge Config tokens. Use when you need to revoke access tokens from an Edge Config. Note: The tokens array must contain the actual token values, not token IDs." }, { "slug": "VERCEL_DELETE_PROJECT", "name": "Delete Vercel Project (v2)", "description": "Tool to delete a Vercel project by ID or name. Use after confirming the correct project identifier to permanently remove the project." }, { "slug": "VERCEL_DELETE_PROJECT_ENV", "name": "Remove Project Environment Variable", "description": "Tool to remove an environment variable from a Vercel project. Use when you need to delete a specific environment variable by its ID." }, { "slug": "VERCEL_DELETE_ROLLING_RELEASE_CONFIG", "name": "Delete Rolling Release Configuration", "description": "Tool to delete rolling release configuration for a project. Use when you need to remove or disable rolling release configuration from a Vercel project." }, { "slug": "VERCEL_DELETE_SHARED_ENV_VARIABLE", "name": "Delete Shared Env Variable", "description": "Tool to delete one or more shared environment variables. Use when you need to remove shared env vars by their IDs (up to 50 at a time)." }, { "slug": "VERCEL_DELETE_WEBHOOK", "name": "Delete Vercel Webhook", "description": "Delete a webhook by its unique ID to stop receiving event notifications. This action permanently removes the webhook configuration. Use VERCEL_GET_WEBHOOKS to find webhook IDs if needed. The deletion is idempotent - deleting an already deleted webhook returns a 404 error." }, { "slug": "VERCEL_DOWNLOAD_ARTIFACT", "name": "Download Cache Artifact", "description": "Download a cache artifact from Vercel's Remote Cache by its hash. Use this to retrieve previously cached build artifacts generated by Turborepo or other build systems. Remote Caching must be enabled for the team. Returns a tar.gz compressed file." }, { "slug": "VERCEL_EDIT_PROJECT_ENV", "name": "Edit Project Environment Variable", "description": "Tool to edit an environment variable in a Vercel project. Use when you need to update an existing environment variable's value, type, target environments, or other properties. Requires both the project identifier and the environment variable ID." }, { "slug": "VERCEL_FILTER_PROJECT_ENVS", "name": "Filter Project Environment Variables", "description": "Tool to retrieve environment variables of a Vercel project by id or name. Use when you need to list and filter environment variables for a specific project." }, { "slug": "VERCEL_GET_ACTIVE_ATTACK_STATUS", "name": "Get Active Attack Status", "description": "Tool to read active attack data from Vercel Firewall for a specific project. Use when you need to check if a project is under attack or retrieve security anomaly information." }, { "slug": "VERCEL_GET_ALIAS", "name": "Get Vercel Alias", "description": "Tool to retrieve information about a Vercel alias by ID or alias name. Use when you need to get details of a specific alias." }, { "slug": "VERCEL_GET_ALL_LOG_DRAINS", "name": "Get All Log Drains", "description": "Tool to retrieve a list of all log drains (deprecated). Use when you need to list all log drains configured for your account, team, or project." }, { "slug": "VERCEL_GET_ARTIFACT_INFO", "name": "Query Artifact Information", "description": "Tool to query information about artifacts by their hashes. Use when you need to retrieve metadata about one or more artifacts, including size, processing duration, and tags." }, { "slug": "VERCEL_GET_AUTH_TOKEN", "name": "Get Auth Token Metadata", "description": "Tool to retrieve metadata for an authentication token. Use when you need to inspect details of a specific token or get information about the current token being used." }, { "slug": "VERCEL_GET_AUTH_USER", "name": "Get Authenticated User", "description": "Tool to get the authenticated user's profile. Use when you need to retrieve details about the currently authenticated user." }, { "slug": "VERCEL_GET_BULK_AVAILABILITY", "name": "Get Bulk Domain Availability", "description": "Tool to check availability for multiple domains at once. Use when you need to verify availability of multiple domain names efficiently in a single request. Supports checking up to 50 domains per request. Only domains with Vercel-supported TLDs can be checked." }, { "slug": "VERCEL_GET_CACHE_STATUS", "name": "Get Remote Caching Status", "description": "Tool to get the status of Remote Caching for the principal. Use when you need to check if Remote Caching is enabled, disabled, over limit, or paused." }, { "slug": "VERCEL_GET_CERTS", "name": "Get SSL/TLS Certificates", "description": "Tool to retrieve SSL/TLS certificates for the authenticated user or team. Use after authentication to list active certificates." }, { "slug": "VERCEL_GET_CONFIGURATIONS", "name": "Get Integration Configurations", "description": "Tool to get configurations for the authenticated user or team. Use when you need to list integration configurations installed on an account or team." }, { "slug": "VERCEL_GET_CONTACT_INFO_SCHEMA", "name": "Get Contact Info Schema", "description": "Tool to retrieve the contact information schema for a domain's top-level domain (TLD). Use when you need to understand what contact information fields are required for a specific domain registration or transfer. Some TLDs require additional contact information beyond standard fields." }, { "slug": "VERCEL_GET_DEPLOYMENT", "name": "Get Deployment by ID or URL", "description": "Tool to get a deployment by ID or URL. Use when you need to retrieve detailed information about a specific deployment." }, { "slug": "VERCEL_GET_DEPLOYMENT_DETAILS", "name": "Get deployment details", "description": "DEPRECATED: Use VERCEL_VERCEL_GET_DEPLOYMENT instead. Retrieves detailed information about a specific deployment. Use after triggering a deployment to inspect status and configuration. Poll with exponential backoff (5–30s) since deployments may remain in QUEUED or BUILDING state for minutes; tight polling triggers HTTP 429. Deployment is live only when readyState=READY and errorCode is absent; other states (QUEUED, BUILDING, CANCELED, ERROR) mean no traffic is served. Build failures surface in readyState=ERROR with errorCode and errorMessage fields — successful creation does not guarantee a successful build. Example: { \"idOrUrl\": \"dpl_Br7FSrRXuUkSHj7t7GVVadyuGvFg\" }" }, { "slug": "VERCEL_GET_DEPLOYMENT_EVENTS", "name": "Get Deployment Events (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_GET_DEPLOYMENT_EVENTS2 instead. Tool to retrieve events related to a specific deployment. Use when monitoring or debugging deployment history or streaming real-time events. Example: \"Get events for deployment dpl_xxx since 1540095775941.\"" }, { "slug": "VERCEL_GET_DEPLOYMENT_EVENTS2", "name": "Get Deployment Events", "description": "Tool to get deployment events for a specific Vercel deployment by ID or URL. Use when you need to retrieve build logs, event streams, or monitor deployment progress." }, { "slug": "VERCEL_GET_DEPLOYMENT_FILE_CONTENTS", "name": "Get Deployment File Contents", "description": "Retrieve the contents of a specific file from a Vercel deployment. Returns the file content as a base64-encoded string. First use 'List Deployment Files' to get the file_id (uid), then use this action to get the actual file contents." }, { "slug": "VERCEL_GET_DEPLOYMENT_LOGS", "name": "Get Deployment Logs (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_GET_DEPLOYMENT_EVENTS2 instead. Tool to retrieve logs for a specific Vercel deployment. Use when monitoring deployment execution, debugging issues, or analyzing deployment performance. Example: \"Get logs for deployment dpl_xxx since 1540095775941.\"" }, { "slug": "VERCEL_GET_DEPLOYMENT_LOGS2", "name": "Get Deployment Runtime Logs", "description": "Tool to retrieve runtime logs for a specific Vercel deployment by project and deployment ID. Use when you need to debug or monitor deployment execution with detailed runtime information." }, { "slug": "VERCEL_GET_DEPLOYMENTS", "name": "Get Deployments", "description": "Tool to list deployments from Vercel. Use when you need to retrieve deployment information for a project or team." }, { "slug": "VERCEL_GET_DOMAIN", "name": "Get Domain Information", "description": "Tool to retrieve complete information for a single domain. Use when you need to check domain details, ownership verification status, nameserver configuration, or domain service type." }, { "slug": "VERCEL_GET_DOMAIN_CONFIG", "name": "Get Domain Configuration", "description": "Tool to get a domain's configuration details from Vercel. Use when you need to check how a domain is configured, what DNS records are recommended, or verify domain setup. Returns configuration status, accepted SSL challenges, and recommended DNS records (CNAME and IPv4)." }, { "slug": "VERCEL_GET_DOMAIN_TRANSFER_INFO", "name": "Get Domain Transfer Info", "description": "Tool to get information required to transfer a domain to Vercel. Use when you need to check transfer availability or current status before initiating a transfer." }, { "slug": "VERCEL_GET_DRAINS", "name": "Get All Drains", "description": "Tool to retrieve a list of all drains. Use this to get all configured drains for an account or team, including their delivery configurations and sources." }, { "slug": "VERCEL_GET_EDGE_CONFIG", "name": "Get Edge Config", "description": "Tool to retrieve detailed information about a specific Edge Config by ID. Use when you need to inspect edge config metadata including transfer status, sync information, and purpose details." }, { "slug": "VERCEL_GET_EDGE_CONFIG_BACKUP", "name": "Get Edge Config Backup", "description": "Tool to retrieve a specific backup version of an Edge Config. Use when you need to inspect or restore a previous version of edge config data." }, { "slug": "VERCEL_GET_EDGE_CONFIG_ITEM", "name": "Get Edge Config Item", "description": "Tool to retrieve a specific item within an Edge Config. Use after obtaining the Edge Config ID and when you need to inspect or validate a particular configuration item by its key." }, { "slug": "VERCEL_GET_EDGE_CONFIG_SCHEMA", "name": "Get Edge Config Schema", "description": "Tool to retrieve the JSON schema of a specific Edge Config. Use when you need to inspect the schema definition of an edge config." }, { "slug": "VERCEL_GET_EDGE_CONFIG_TOKEN", "name": "Get Edge Config Token", "description": "Tool to retrieve details of a specific token associated with an Edge Config. Use when you need metadata for an existing Edge Config token." }, { "slug": "VERCEL_GET_FIREWALL_CONFIG", "name": "Get Firewall Configuration", "description": "Tool to retrieve firewall configuration for a Vercel project. Use when you need to inspect current firewall rules and settings." }, { "slug": "VERCEL_GET_GIT_NAMESPACES", "name": "List Git Namespaces", "description": "Tool to list Git namespaces (organizations/users) by provider. Use this to discover available Git namespaces for integration with projects." }, { "slug": "VERCEL_GET_PROJECT", "name": "Get Vercel Project (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_GET_PROJECT2 instead. Tool to retrieve information about a Vercel project by ID or name. Use when you need project metadata after obtaining its identifier." }, { "slug": "VERCEL_GET_PROJECT2", "name": "Find Project by ID or Name", "description": "Tool to find a project by ID or name with comprehensive details. Use when you need complete project metadata including configuration, deployments, security settings, and analytics." }, { "slug": "VERCEL_GET_PROJECT_DOMAIN", "name": "Get Project Domain", "description": "Tool to retrieve details about a specific domain attached to a Vercel project. Use when you need to check domain configuration, verification status, redirect settings, or git branch associations." }, { "slug": "VERCEL_GET_PROJECT_DOMAINS", "name": "List Project Domains", "description": "Tool to retrieve all domains attached to a Vercel project. Use when you need to verify domain configuration, check verification status, audit redirect/branch bindings, or before performing domain operations." }, { "slug": "VERCEL_GET_PROJECT_ENV", "name": "Get Project Environment Variable", "description": "Tool to retrieve the decrypted value of an environment variable from a Vercel project. Use when you need to access the actual value of a specific environment variable by its ID." }, { "slug": "VERCEL_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a list of projects from Vercel. Use this to get project information with optional filtering by repository, team, or other criteria." }, { "slug": "VERCEL_GET_PROMOTE_ALIASES", "name": "List Promote Aliases", "description": "Tool to get a list of aliases with status for the current promote operation. Use when you need to check the status of aliases during a promotion process for a specific project." }, { "slug": "VERCEL_GET_ROLLING_RELEASE", "name": "Get Rolling Release", "description": "Tool to retrieve active rolling release information for a Vercel project. Use when you need to check the status of a gradual deployment rollout." }, { "slug": "VERCEL_GET_ROLLING_RELEASE_BILLING_STATUS", "name": "Get Rolling Release Billing Status", "description": "Tool to retrieve the rolling release billing status for a Vercel project. Use when you need to check if rolling releases are available for a project based on the team's plan." }, { "slug": "VERCEL_GET_ROLLING_RELEASE_CONFIG", "name": "Get Rolling Release Config", "description": "Tool to get rolling release configuration for a Vercel project. Use when you need to retrieve the project-level rolling release settings that define how deployments are gradually rolled out." }, { "slug": "VERCEL_GET_RUNTIME_LOGS", "name": "Get Runtime Logs (Deprecated)", "description": "DEPRECATED: Use VERCEL_GET_DEPLOYMENT_LOGS2 instead. Tool to retrieve runtime logs for a specific Vercel deployment. Use when monitoring deployment execution, debugging runtime issues, or analyzing deployment performance. Runtime logs show application behavior during execution, including errors and request information." }, { "slug": "VERCEL_GET_SHARED_ENV_VAR", "name": "Get Shared Environment Variable", "description": "Tool to retrieve the decrypted value of a Shared Environment Variable by id. Use when you need to inspect a specific shared environment variable value." }, { "slug": "VERCEL_GET_SHARED_ENV_VARIABLES", "name": "List Shared Environment Variables", "description": "Tool to list all shared environment variables for a team. Use when you need to retrieve or inspect shared environment variables across projects." }, { "slug": "VERCEL_GET_TEAM", "name": "Get Team Details", "description": "Retrieves detailed information about a specific Vercel team by its ID or slug. Returns comprehensive team metadata including billing, membership, resource configuration, and settings. Use this to get team details before performing team-specific operations. The teamId parameter accepts either a team ID (e.g., 'team_xxx') or team slug (e.g., 'my-team')." }, { "slug": "VERCEL_GET_TEAMS", "name": "Get All Teams", "description": "Tool to list all teams accessible to the authenticated user with detailed information. Use when you need comprehensive team data including membership, configuration, and settings." }, { "slug": "VERCEL_GET_TLD_INFO", "name": "Get TLD Info", "description": "Tool to get information about a specific top-level domain (TLD). Use when you need to check supported language codes for domain registration." }, { "slug": "VERCEL_GET_TLD_PRICE", "name": "Get TLD Price", "description": "Tool to get pricing information for a specific top-level domain (TLD). Use when you need to check domain registration, renewal, or transfer costs." }, { "slug": "VERCEL_GET_USER_EVENTS", "name": "List User Events", "description": "Tool to list user events. Use when you need to retrieve events generated by a user or team, such as logins, deployments, and team activities." }, { "slug": "VERCEL_GET_WEBHOOK", "name": "Get Webhook", "description": "Tool to retrieve details of a specific webhook by ID. Use when you need to inspect webhook configuration, events, or metadata." }, { "slug": "VERCEL_INVALIDATE_CACHE_BY_SRC_IMAGES", "name": "Invalidate Cache By Source Images", "description": "Tool to invalidate edge cache by source image URLs. Use when you need to mark cached images as stale for specific source images. Invalidated images are revalidated in the background on the next request, ensuring zero latency impact for users." }, { "slug": "VERCEL_INVALIDATE_CACHE_BY_TAGS", "name": "Invalidate Cache By Tags", "description": "Tool to invalidate edge cache by tags. Use when you need to mark cached content as stale for specific cache tags. Invalidated content is revalidated in the background on the next request, ensuring zero latency impact for users." }, { "slug": "VERCEL_LIST_ALIASES", "name": "List Vercel Aliases", "description": "Tool to list aliases from Vercel API. Use when you need to retrieve aliases with optional filtering by domain, project, or time range. Results are paginated; use `limit` with `since`/`until` to iterate pages. Without filters, results span all projects and the personal account scope." }, { "slug": "VERCEL_LIST_ALL_DEPLOYMENTS", "name": "List All Deployments (Deprecated)", "description": "DEPRECATED: Use VERCEL_GET_DEPLOYMENTS instead. Lists deployments under your user or team context. Results are cursor-paginated; follow `pagination.next` until null to retrieve all pages. In team contexts, omitting `teamId` or `slug` will cause deployments to appear missing. Example: \"List deployments for project QmX...\"." }, { "slug": "VERCEL_LIST_AUTH_TOKENS", "name": "List Auth Tokens", "description": "Tool to list authentication tokens. Use when you need to retrieve all tokens for the current user or an optional team." }, { "slug": "VERCEL_LIST_DEPLOYMENT_ALIASES", "name": "List Deployment Aliases", "description": "Tool to list all aliases assigned to a specific deployment. Use when you need to retrieve the aliases (custom domains or URLs) that point to a particular deployment." }, { "slug": "VERCEL_LIST_DEPLOYMENT_CHECKS", "name": "List Deployment Checks", "description": "Tool to retrieve a list of checks for a specific deployment. Use after a deployment to inspect check statuses and results." }, { "slug": "VERCEL_LIST_DEPLOYMENT_FILES", "name": "List Deployment Files", "description": "Tool to list all files in a specific deployment. Use when you need to inspect the file tree structure of a deployed application." }, { "slug": "VERCEL_LIST_DNS_RECORDS", "name": "List DNS Records", "description": "Tool to list existing DNS records for a domain. Use when you need to retrieve, audit, or verify DNS configuration for a domain managed in Vercel." }, { "slug": "VERCEL_LIST_DOMAINS", "name": "Get Domains", "description": "Tool to list all domains from Vercel. Use this to retrieve domain information including verification status, nameservers, and ownership details." }, { "slug": "VERCEL_LIST_EDGE_CONFIG_BACKUPS", "name": "Get Edge Config Backups", "description": "Tool to retrieve backups for a specific Edge Config. Use when you need to list or inspect available backups for recovery purposes." }, { "slug": "VERCEL_LIST_EDGE_CONFIG_ITEMS", "name": "Get Edge Config Items", "description": "Tool to retrieve all items from a specific Edge Config. Use when you need to inspect all key-value pairs stored in an Edge Config." }, { "slug": "VERCEL_LIST_EDGE_CONFIGS", "name": "Get Edge Configs", "description": "Tool to retrieve all Edge Configs for an account or team. Use when you need to list all Edge Config definitions." }, { "slug": "VERCEL_LIST_EDGE_CONFIG_TOKENS", "name": "Get Edge Config Tokens", "description": "Tool to get all tokens of an Edge Config. Use when you need to retrieve the complete list of tokens associated with a specific Edge Config." }, { "slug": "VERCEL_LIST_ENV_VARIABLES", "name": "List Environment Variables (Deprecated)", "description": "DEPRECATED: Use FilterProjectEnvs instead. Tool to list environment variables for a specific project. Use when you need to inspect or page through the environment settings before deployment. Each returned env var has independent target scopes (production/preview/development); never assume a variable applies to all environments. Env var changes require a new deployment to take effect. Example: { \"projectId\": \"prj_nos3l9LxEmu8dYCFBaUVlox26eRJ\", \"decrypt\": false, \"limit\": 20 }" }, { "slug": "VERCEL_LIST_FIREWALL_EVENTS", "name": "Get Firewall Events by Project", "description": "Retrieve firewall events and security actions for a specific Vercel project. Use this tool when you need to: - Monitor security events and blocked requests for a project - Analyze firewall actions (blocks, challenges, rate limits) over a time period - Investigate suspicious activity or attack patterns - Review which firewall rules are being triggered Note: This endpoint requires appropriate permissions. Enterprise or Pro plans may be required." }, { "slug": "VERCEL_LIST_INTEGRATION_LOG_DRAINS", "name": "Get Integration Log Drains", "description": "Retrieves a list of Integration log drains for a team or account. Log drains forward logs from deployments to external endpoints. When using an OAuth2 token, results are limited to log drains created by the authenticated integration." }, { "slug": "VERCEL_LIST_PROJECT_CUSTOM_ENVIRONMENTS", "name": "Get Project Custom Environments", "description": "Tool to retrieve custom environments for a Vercel project. Use when you need to list all custom environments or filter by git branch." }, { "slug": "VERCEL_LIST_PROJECT_MEMBERS", "name": "Get Project Members", "description": "Tool to list all members of a Vercel project. Use when you need to retrieve member information, check access permissions, or audit project membership." }, { "slug": "VERCEL_LIST_PROJECTS", "name": "List All Projects (Deprecated)", "description": "DEPRECATED: Use GetProjects instead. Tool to list all projects accessible to the authenticated user or team. Use this to retrieve project IDs and metadata for further operations. Results are paginated (max 100 per page); iterate using the `pagination.next` cursor to retrieve all pages — `pagination.count` reflects only the current page, not the total." }, { "slug": "VERCEL_LIST_SUPPORTED_TLDS", "name": "Get Supported TLDs", "description": "Tool to retrieve all TLDs (top-level domains) supported by Vercel for domain registration. Use when you need to verify if a specific TLD is supported or to display available domain extensions." }, { "slug": "VERCEL_LIST_TEAM_MEMBERS", "name": "Get Team Members", "description": "Tool to list all members of a Vercel team. Use when you need to retrieve team member information, check team access permissions, or audit team membership." }, { "slug": "VERCEL_LIST_TEAMS", "name": "List All Teams (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_GET_TEAMS instead. Tool to list all teams accessible to the authenticated user. Use after authentication to retrieve team IDs and slugs; resolve the correct teamId or slug here before passing it to other Vercel tools (e.g., VERCEL_GET_PROJECT, deployment queries) — an incorrect or missing teamId causes 404 or scoping errors." }, { "slug": "VERCEL_LIST_WEBHOOKS", "name": "Get List of Webhooks", "description": "Tool to retrieve a list of all webhooks for the authenticated account or team. Use this to discover configured webhooks and their event subscriptions." }, { "slug": "VERCEL_MOVE_PROJECT_DOMAIN", "name": "Move Project Domain", "description": "Tool to move a domain from one Vercel project to another. Use when you need to transfer domain ownership between projects." }, { "slug": "VERCEL_PAUSE_PROJECT", "name": "Pause Vercel Project", "description": "Tool to pause a Vercel project. Use when you need to temporarily disable a project to prevent new deployments and stop serving traffic." }, { "slug": "VERCEL_READ_FIREWALL_CONFIG", "name": "Read Firewall Configuration", "description": "Tool to read firewall configuration for a Vercel project. Use when you need to inspect current firewall settings, IP rules, or custom security rules for a project." }, { "slug": "VERCEL_RECORD_EVENTS", "name": "Record Artifacts Cache Events", "description": "Tool to record artifacts cache usage events. Use when tracking cache hits and misses for artifact hashes to monitor remote caching performance." }, { "slug": "VERCEL_REMOVE_PROJECT_DOMAIN", "name": "Remove Domain from Project", "description": "Tool to remove a domain from a Vercel project. Use when you need to detach a domain from a project or clean up domain associations." }, { "slug": "VERCEL_REPLACE_FIREWALL_CONFIG", "name": "Update Vercel Firewall Configuration", "description": "Tool to update firewall configuration for a Vercel project. Use when you need to enable/disable firewall, configure CRS rules, or manage custom firewall rules and IP restrictions." }, { "slug": "VERCEL_REQUEST_DELETE_USER", "name": "Request Delete User Account", "description": "Tool to initiate user account deletion on Vercel. Use when a user wants to delete their account. This triggers a verification email to confirm the deletion request." }, { "slug": "VERCEL_REQUEST_PROMOTE", "name": "Promote Deployment to Production", "description": "Tool to promote a deployment to production by pointing all production domains for a project to the given deployment. Use this when you need to make a specific deployment live without rebuilding. The deployment must be in 'STAGED' state (never served production traffic) and the project must have auto-assignment of custom production domains disabled. For deployments that have already been promoted (seen production traffic), use instant rollback instead." }, { "slug": "VERCEL_SEARCH_REPO", "name": "Search Git Repositories", "description": "Tool to search and list Git repositories linked to a namespace by provider. Use this to discover available repositories for integration with Vercel projects." }, { "slug": "VERCEL_TEST_DRAIN", "name": "Test Drain Configuration", "description": "Tool to validate a drain delivery configuration by sending a test request. Use when you need to verify that a drain endpoint is properly configured and can receive events before creating the actual drain." }, { "slug": "VERCEL_TRANSFER_IN_DOMAIN", "name": "Transfer In Domain", "description": "Tool to transfer a domain to Vercel from another registrar. Use when you need to migrate domain registration to Vercel. Before transferring, obtain the authorization code from the current registrar and verify the domain is unlocked and eligible for transfer." }, { "slug": "VERCEL_UNLINK_SHARED_ENV_VARIABLE", "name": "Unlink Shared Environment Variable", "description": "Tool to disconnect a shared environment variable from a Vercel project. Use when you need to remove the linkage between a shared environment variable and a specific project without deleting the variable itself." }, { "slug": "VERCEL_UNPAUSE_PROJECT", "name": "Unpause Vercel Project", "description": "Tool to unpause a specific project by its ID. Use after identifying a paused project to enable auto assigning custom production domains and unblock the active Production Deployment." }, { "slug": "VERCEL_UPDATE_ATTACK_CHALLENGE_MODE", "name": "Update Attack Challenge Mode", "description": "Tool to update Attack Challenge mode for a Vercel project. Use when you need to enable or disable enhanced security protection against potential attacks. Attack Challenge mode adds an extra verification layer to protect deployments." }, { "slug": "VERCEL_UPDATE_DNS_RECORD", "name": "Update DNS Record", "description": "Tool to update an existing DNS record. Use when you need to modify DNS record properties such as value, name, type, TTL, or comment. Ensure you have the record ID before calling this action." }, { "slug": "VERCEL_UPDATE_DOMAIN", "name": "Patch Domain", "description": "Tool to update or move an apex domain on Vercel. Use when you need to modify domain configuration (zone settings) or transfer a domain to another team. For 'update' operation, you can modify the zone configuration. For 'move-out' operation, provide a destination team ID." }, { "slug": "VERCEL_UPDATE_EDGE_CONFIG", "name": "Update Edge Config", "description": "Tool to update an Edge Config by changing its slug. Use when you need to rename an Edge Config to reflect a new purpose or organizational structure." }, { "slug": "VERCEL_UPDATE_EDGE_CONFIG_ITEMS", "name": "Update Edge Config Items", "description": "Tool to update items within a specific Edge Config. Use when you need to batch modify, add, or remove key-value pairs in an existing Edge Config." }, { "slug": "VERCEL_UPDATE_EDGE_CONFIG_SCHEMA", "name": "Update Edge Config Schema", "description": "Tool to update the JSON Schema for an Edge Config. Use when you need to define or modify validation rules for Edge Config items." }, { "slug": "VERCEL_UPDATE_FIREWALL_CONFIG", "name": "Update Firewall Configuration", "description": "Tool to incrementally update Vercel Firewall configuration for a project using PATCH. Use when you need to: enable/disable the firewall ('firewallEnabled'), add/remove IP blocking rules ('ip.insert'/'ip.remove'), manage custom rules ('rules.insert'/'rules.update'/'rules.remove'), or configure OWASP CRS rules ('crs.update'/'crs.disable'). Each call modifies a single aspect of the configuration. For full replacement of firewall config, use VERCEL_PUT_FIREWALL_CONFIG instead." }, { "slug": "VERCEL_UPDATE_PROJECT", "name": "Update Vercel Project (Deprecated)", "description": "DEPRECATED: Use VERCEL_VERCEL_UPDATE_PROJECT2 instead. Tool to update an existing project. Partial-update: omitted fields are preserved, but nullable fields explicitly set to null will be cleared. Changes (including rootDirectory, buildCommand) only take effect on subsequent deployments — trigger a new deployment with VERCEL_CREATE_NEW_DEPLOYMENT after updating. Use after confirming the project ID or name." }, { "slug": "VERCEL_UPDATE_PROJECT2", "name": "Update Vercel Project (v2)", "description": "Tool to update an existing Vercel project configuration. Use when you need to modify project settings such as framework, build commands, environment configuration, or deployment protection settings." }, { "slug": "VERCEL_UPDATE_PROJECT_DATA_CACHE", "name": "Update Project Data Cache", "description": "Tool to update the data cache feature for a Vercel project. Use when you need to enable or disable data caching for a project's deployments." }, { "slug": "VERCEL_UPDATE_PROJECT_DOMAIN", "name": "Update Project Domain", "description": "Tool to update a project domain in Vercel. Use when you need to modify domain settings such as git branch association, redirects, or redirect status codes for an existing project domain." }, { "slug": "VERCEL_UPDATE_PROJECT_PROTECTION_BYPASS", "name": "Update Project Protection Bypass", "description": "Tool to update protection bypass for automation on a Vercel project. Use when you need to generate, revoke, or update automation bypass secrets for deployment protection." }, { "slug": "VERCEL_UPDATE_SHARED_ENV_VARIABLE", "name": "Update Shared Env Variable", "description": "Tool to update one or more shared environment variables. Use when you need to modify shared env var properties like value, target environments, or project linkages using their IDs." }, { "slug": "VERCEL_UPDATE_STATIC_IPS", "name": "Update Project Static IPs", "description": "Tool to configure Static IPs for a Vercel project. Use when you need to enable or configure Static IPs for builds or specific regions. Requires either 'builds' or 'regions' parameter to be provided." }, { "slug": "VERCEL_UPDATE_TEAM", "name": "Update Team", "description": "Tool to update a Vercel team's configuration. Use when you need to modify team settings like name, description, security policies, or deployment settings." }, { "slug": "VERCEL_UPDATE_URL_PROTECTION_BYPASS", "name": "Update URL Protection Bypass", "description": "Tool to update the protection bypass for a URL. Use when you need to configure shareable links with TTL, revoke/regenerate links, set user-scoped access permissions, or manage alias protection overrides." }, { "slug": "VERCEL_UPLOAD_ARTIFACT", "name": "Upload Cache Artifact", "description": "Tool to upload a cache artifact to Vercel. Use when you need to store build artifacts in Vercel's remote cache." }, { "slug": "VERCEL_UPLOAD_FILE", "name": "Upload Deployment File", "description": "Tool to upload deployment files to Vercel. Use when preparing files for a Vercel deployment. The uploaded file is stored and returns CDN URLs for use in deployment creation." }, { "slug": "VERCEL_VERIFY_PROJECT_DOMAIN", "name": "Verify Project Domain", "description": "Attempts to verify a project domain by checking if DNS challenges are correctly configured. Call this after adding a domain to a project and setting up the required DNS TXT records. Returns verified=true if DNS is correctly configured, or an error with the required DNS records if verification fails." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vercel_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "bearer_token", "displayName": "Vercel Access Token", "type": "string", "description": "Your Vercel personal access token. Create one at vercel.com/account/tokens, choose its scope, and copy it immediately — it's shown only once.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Vercel Team ID", "type": "string", "description": "Optional — your Vercel Team ID (starts with 'team_') to act on a team, not your personal account. Find it in Team Settings → General; your token must cover that team.", "required": false, "default": null } ] } } } ] }, { "slug": "verifalia", "name": "Verifalia", "logo": "https://logos.composio.dev/api/verifalia", "description": "Fast and accurate email verification service which identifies deliverable, invalid, or otherwise risky email addresses in real-time", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VERIFALIA_LIST_QUALITY_LEVELS", "name": "List Quality Levels", "description": "Tool to retrieve the list of available quality levels for email validation. Use when you need to see which quality levels (Standard, High, Extreme, or custom) are available for email validations and their associated credit costs." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "verifalia_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "verifiedemail", "name": "Verifiedemail", "logo": "https://logos.composio.dev/api/verifiedemail", "description": "VerifiedEmail offers real-time email verification and bulk email list cleaning services to ensure the accuracy and deliverability of email communications.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 9, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VERIFIEDEMAIL_CHECK_CREDITS", "name": "Check Credits", "description": "Tool to retrieve the remaining verification credits. Call before VERIFIEDEMAIL_VERIFY_EMAIL operations—especially in bulk or repeated workflows—as VERIFIEDEMAIL_VERIFY_EMAIL fails immediately when credits are exhausted. Use after confirming account authentication to ensure sufficient credits before proceeding." }, { "slug": "VERIFIEDEMAIL_CHECK_FILE_STATUS", "name": "Check File Status", "description": "Tool to check the status of a previously uploaded file. Use after uploading a file when polling for verification progress." }, { "slug": "VERIFIEDEMAIL_GET1_CLICK_USER_DATA", "name": "Get 1-Click User Data", "description": "Tool to retrieve data for a user who has completed a 1-Click Signup flow. Use after you have the identityUuid to fetch the verified user's full profile." }, { "slug": "VERIFIEDEMAIL_GET_ENTITLEMENTS", "name": "Get Entitlements", "description": "Tool to retrieve information about available credits across different entitlement types. Use when you need to check credit availability before performing operations that consume credits." }, { "slug": "VERIFIEDEMAIL_GET_SHARED_CREDENTIALS", "name": "Get Shared Credentials", "description": "Tool to retrieve a list of shared credential IDs. Use when you need to fetch all credentials shared to your account after authentication." }, { "slug": "VERIFIEDEMAIL_LIST_DOWNLOADS", "name": "List Downloads", "description": "Tool to get a list of previously created download requests. Use when you need to retrieve information about download requests that have been created for verification results." }, { "slug": "VERIFIEDEMAIL_LIST_LISTS", "name": "List Lists", "description": "Tool to get all email lists in your account. Use when you need to retrieve and view all verification lists with optional pagination and sorting." }, { "slug": "VERIFIEDEMAIL_POST1_CLICK_CREDENTIALS_UPDATE", "name": "Update 1-Click Credentials", "description": "Tool to update 1-Click credentials. Use after obtaining a 1-Click session uuid when you need to update user-provided credential values in a non-hosted or trusted flow." }, { "slug": "VERIFIEDEMAIL_VERIFY_EMAIL", "name": "Verify Email", "description": "Tool to verify the deliverability and validity of an email address. Use when you need to confirm if an email can receive mail by checking server existence, mailbox status, and more. For bulk use, call VERIFIEDEMAIL_CHECK_CREDITS first — this tool fails if verification credits are exhausted." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "verifiedemail_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "VerifiedEmail API Key", "type": "string", "description": "Your VerifiedEmail API key for authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "veriphone", "name": "Veriphone", "logo": "https://logos.composio.dev/api/veriphone", "description": "Veriphone is a REST-based JSON API that provides phone number validation services, allowing developers to verify the validity, type, carrier, and region of phone numbers.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VERIPHONE_GET_EXAMPLE_PHONE_NUMBER", "name": "Get Example Phone Number", "description": "Tool to retrieve an example phone number for a specified country and type. Use after confirming the country code. Example: 'Get an example mobile number for US'." }, { "slug": "VERIPHONE_VERIFY_PHONE_NUMBER", "name": "Verify Phone Number", "description": "Tool to verify if a phone number is valid. Use when you need to confirm formatting, region, and carrier details." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "veriphone_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_key", "displayName": "Veriphone API Key", "type": "string", "description": "Your Veriphone API key provided in the query parameter for authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vestaboard", "name": "Vestaboard", "logo": "https://logos.composio.dev/api/vestaboard", "description": "Vestaboard is a smart messaging display that allows users to send and receive messages through a mechanical split-flap display.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VESTABOARD_LIST_SUBSCRIPTIONS", "name": "List Subscriptions", "description": "Lists all Vestaboard subscriptions accessible with the current credentials. Returns subscription and board information for accessible Vestaboard displays. Use this to discover which boards you can send messages to, then use the subscription ID with the send message action. Example usage: \"Show me my Vestaboard subscriptions\" or \"What Vestaboard boards can I access?\"" }, { "slug": "VESTABOARD_SUBSCRIPTION_API_SEND_MESSAGE", "name": "Send Message to Vestaboard", "description": "Send a message to a Vestaboard board. This action posts text or character codes to your Vestaboard display. You can send either plain text (which will be formatted automatically) or a 6x22 matrix of character codes for precise control. When using token-based authentication, the message is sent to the board associated with your authentication token. Examples: - \"Display 'Hello World' on my Vestaboard\" - \"Send the message 'Meeting in 5 minutes' to my board\"" } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vestaboard_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Vestaboard Read/Write API Key", "type": "string", "description": "Your Vestaboard Read/Write API key. Enable it in the Vestaboard app settings and copy the key.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vies_api", "name": "Vies Api", "logo": "https://logos.composio.dev/api/vies_api", "description": "VAT Information and Exchange System for validating European VAT numbers", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VIES_API_GET_ACCOUNT_STATUS", "name": "Get Account Status", "description": "Tool to retrieve current VIES API account status information. Returns billing plan details, feature availability, request counts, and account validity. Calling this function does not increase the query count." }, { "slug": "VIES_API_GET_VAT_DATA", "name": "Get VAT Data", "description": "Tool to validate an EU VAT number and retrieve company data from the VIES registry. Use when you need to verify a company's VAT status or get official registration details." }, { "slug": "VIES_API_GET_VIES_STATUS", "name": "Get VIES System Status", "description": "Tool to retrieve current EU VIES system status. Returns overall VIES availability and individual EU member country system statuses. This call does not increase your query count." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "vies_api_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "region", "displayName": "Environment", "type": "string", "description": "API environment: \"api\" for production or \"api-test\" for test environment", "required": true, "default": "api" }, { "name": "username", "displayName": "API Key ID", "type": "string", "description": "API Key identifier generated during registration. For test environment use \"test_id\"", "required": true, "default": "test_id" }, { "name": "password", "displayName": "API Key", "type": "string", "description": "The API Key generated during registration. For test environment use \"test_key\"", "required": true, "default": "test_key" } ], "optional": [] } } } ] }, { "slug": "virustotal", "name": "Virustotal", "logo": "https://logos.composio.dev/api/virustotal", "description": "VirusTotal is a free online service that analyzes files and URLs for viruses, worms, trojans, and other kinds of malicious content using multiple antivirus engines and website scanners.", "category": "security & identity tools", "authSchemes": [ "API_KEY" ], "toolCount": 16, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VIRUSTOTAL_ADD_COMMENT", "name": "Add VirusTotal Comment", "description": "Tool to add a comment to a VirusTotal resource (file, URL, domain, or IP address). Use after analyzing a resource to leave contextual feedback. Provide exactly one identifier per call." }, { "slug": "VIRUSTOTAL_ADD_VOTE", "name": "Add Vote", "description": "Tool to add a vote (harmless/malicious) to a VirusTotal resource. Use after reviewing analysis results to submit your verdict." }, { "slug": "VIRUSTOTAL_GET_ANALYSIS", "name": "Get Analysis Report", "description": "Tool to retrieve the analysis report of a file or URL submission. Use after obtaining an analysis ID to fetch its detailed report. Analysis results may be incomplete immediately after submission; poll until the report status is 'completed' before treating results as final." }, { "slug": "VIRUSTOTAL_GET_COMMENTS", "name": "Get comments", "description": "Tool to retrieve the latest comments on a VirusTotal resource. Use when you need to review user-generated comments for a file, URL, domain, or IP after obtaining its identifier." }, { "slug": "VIRUSTOTAL_GET_DOMAIN_RELATIONSHIPS", "name": "Get Domain Relationships", "description": "Tool to retrieve relationship objects for a given domain. Use when you have a domain and need to explore its related entities." }, { "slug": "VIRUSTOTAL_GET_DOMAIN_REPORT", "name": "Get Domain Report", "description": "Tool to retrieve the analysis report of a domain. Use when you need detailed insight on a domain's reputation and analysis stats. No malicious signals on obscure or low-traffic domains may indicate limited analysis history rather than safety — treat sparse results as 'unknown', not 'safe'. Covers external OSINT only (reputation, malware, SSL posture); cannot analyze internal/private assets." }, { "slug": "VIRUSTOTAL_GET_FILE_REPORT", "name": "Get File Report", "description": "Tool to retrieve the analysis report of a file. Use when you have a file's hash and need detailed scan metadata. Recently submitted files may return partial results; retry after a short delay before treating the report as final." }, { "slug": "VIRUSTOTAL_GET_IP_ADDRESS_RELATIONSHIPS", "name": "Get IP Address Relationships", "description": "Tool to retrieve objects related to a specific IP address by relationship type. Use when you have an IP and need to explore connected files, URLs, or other entities." }, { "slug": "VIRUSTOTAL_GET_IP_ADDRESS_REPORT", "name": "Get IP Address Report", "description": "Tool to retrieve the analysis report of an IP address. Use when you need detailed insight on an IP's reputation, ASN, country, and analysis stats. Low or zero detections indicate unknown risk, not safety — treat sparse data accordingly. Provides external OSINT only; insufficient as standalone compliance evidence." }, { "slug": "VIRUSTOTAL_GET_METADATA", "name": "Get VirusTotal Metadata", "description": "Tool to retrieve VirusTotal metadata. Use when you need information about available privileges, relationships between resources (like files, domains, IPs, URLs), and supported antivirus engines." }, { "slug": "VIRUSTOTAL_GET_URL_REPORT", "name": "Get URL Report", "description": "Tool to retrieve the analysis report of a URL. Use when you have a URL identifier (base64-url without padding) and need detailed scan results, reputation, and metadata. Results may be incomplete immediately after submission; retry with short delays if scan engines are still processing before treating the report as final." }, { "slug": "VIRUSTOTAL_GET_VOTES", "name": "Get Votes", "description": "Tool to retrieve votes on files, URLs, domains, or IP addresses. Use when you need to view community votes for a given object." }, { "slug": "VIRUSTOTAL_RESCAN_FILE", "name": "Rescan File", "description": "Tool to re-analyze a previously submitted file. Use when you need updated analysis results after an initial scan." }, { "slug": "VIRUSTOTAL_SCAN_URL", "name": "Scan URL", "description": "Tool to submit a URL for scanning. Use when you have a URL and need to submit it to VirusTotal to obtain an analysis ID for later retrieval. The returned analysis ID is preliminary — scanning engines may not have finished. Poll VIRUSTOTAL_GET_URL_REPORT with the ID using short delays to retrieve complete results." }, { "slug": "VIRUSTOTAL_SEARCH", "name": "Search VirusTotal", "description": "Tool to search for objects in the VirusTotal database. Use when locating files, URLs, domains, IPs, or comments matching a query. Supports pagination with limit and cursor." }, { "slug": "VIRUSTOTAL_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file for scanning. Use when you have binary file content ready to submit for VirusTotal analysis." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "virustotal_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "VirusTotal API Key", "type": "string", "description": "Your personal VirusTotal API key, found in your VirusTotal account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "voice", "name": "Voice", "logo": "https://logos.composio.dev/api/voice", "description": "The collaborative platform to design and build chat or voice assistants.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VOICE_GET_PUBLIC_LLM_EXPECTED_COST_CALCULATION", "name": "Calculate Expected LLM Usage Cost", "description": "Tool to calculate expected LLM usage cost based on prompt length, knowledge base pages, and RAG settings. Use when estimating costs for conversational AI interactions." }, { "slug": "VOICE_GET_VOICE_SETTINGS_DEFAULT", "name": "Get Default Voice Settings", "description": "Tool to retrieve default voice synthesis configuration settings. Use when you need to get the default settings for voice generation, including stability, similarity boost, speaker boost, style, and speed parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "voice_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Dialog Manager API Key", "type": "string", "description": "Navigate to your Voiceflow project > Settings > API keys section and copy the API key (starts with VF.DM.)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "voiceflow", "name": "Voiceflow", "logo": "https://logos.composio.dev/api/voiceflow", "description": "Voiceflow is a conversation design platform for building voice and chat assistants. It provides APIs for managing and interacting with conversational AI projects.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "voiceflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Voiceflow API key for authentication. API keys have format VF.DM.XXXXXXX.XXXXXX and can be obtained from Voiceflow Creator > Settings > API keys section.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "vosfactures", "name": "Vosfactures", "logo": "https://logos.composio.dev/api/vosfactures", "description": "Online invoicing software for businesses and entrepreneurs. Simple, fast and multifunctional. Efficiently create and manage custom invoices and quotes.", "category": "accounting", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "VOSFACTURES_DELETE_INVOICE", "name": "Delete Invoice", "description": "Tool to delete an invoice or billing document by its ID. Permanently removes the document from the system." }, { "slug": "VOSFACTURES_GET_CLIENT", "name": "Get Client by ID", "description": "Tool to retrieve a specific client/contact by ID from VosFactures. Returns full contact details including name, addresses, tax information, and payment terms. Use when you need to fetch complete information about an existing client." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "vosfactures_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your domain is \"1234\" if your Vosfactures URL is https://1234.vosfactures.fr/", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Navigate to your Vosfactures account and sign in. Go to Settings > API > API token to retrieve your API token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wachete", "name": "Wachete", "logo": "https://logos.composio.dev/api/wachete", "description": "Wachete is a web monitoring service that allows users to track changes on web pages and receive notifications based on specified criteria.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WACHETE_CREATE_UPDATE_FOLDER", "name": "Create or update folder", "description": "Create a new folder or update an existing folder in Wachete. Folders help organize watchers into hierarchical structures. Omit the id parameter to create a new folder, or provide an id to update an existing one." }, { "slug": "WACHETE_CREATE_WATCHER", "name": "Create Watcher", "description": "Create or update a Wachete watcher to monitor web page changes. Watchers check pages at specified intervals and send alerts when changes are detected. Use SinglePage mode for monitoring a single page, or Portal mode to crawl and monitor multiple linked pages." }, { "slug": "WACHETE_DELETE_FOLDER", "name": "Delete folder", "description": "Permanently deletes a folder along with all nested subfolders and watchers (monitoring tasks). This is a destructive operation that cannot be undone. Use when you need to remove an entire folder structure. All subfolders and monitoring tasks within the folder will be permanently deleted. Obtain the folder ID from the Get Folder Content action before calling. Example: \"Delete the folder with ID 576b3f7e-e126-4e92-9b95-f72a8d187a18\"" }, { "slug": "WACHETE_DELETE_WATCHER", "name": "Delete watcher", "description": "Deletes a website monitoring watcher (task) by its unique ID. This operation is idempotent - deleting a non-existent or already-deleted watcher will succeed without error. Use when you need to permanently remove a monitoring task. Obtain the watcher ID from List Watchers or Create Watcher actions before calling. Example: \"Delete the watcher with ID 974b65b5-6ccb-4996-812c-5a678c2455e8\"" }, { "slug": "WACHETE_GET_CRAWLER_PAGES", "name": "Get crawler pages", "description": "Retrieves all pages monitored by a crawler watcher (portal monitor). Use this to get detailed information about each page being tracked including URLs, last check timestamps, content changes, and error states. Only works with portal-type watchers that monitor multiple pages." }, { "slug": "WACHETE_GET_DATA_HISTORY", "name": "Get Data History", "description": "Retrieve history for a wachet (monitor). Returns timestamped snapshots of monitored content showing when changes occurred. Supports time range filtering and optional diff with previous value. Use continuationToken for pagination when retrieving large histories." }, { "slug": "WACHETE_GET_FOLDER_CONTENT", "name": "Get folder content", "description": "Retrieves the contents of a Wachete folder, including subfolders and watcher tasks. Use this tool to: - List all subfolders and tasks in the root folder (omit parentId) - List contents of a specific folder (provide parentId) - Navigate the folder hierarchy using the path breadcrumb - Check task statuses and last check data Returns subfolders, tasks with their monitoring details, folder path, and pagination token." }, { "slug": "WACHETE_GET_WATCHER", "name": "Get watcher by ID", "description": "Retrieve complete watcher (monitor) definition by ID. Use this to get detailed configuration and current status of a specific monitoring task including URL, XPath selector, alerts, notification endpoints, and latest check results." }, { "slug": "WACHETE_LIST_NOTIFICATIONS", "name": "List notifications", "description": "Retrieves notifications from Wachete watchers. Returns notifications for all watchers or filtered by specific watcher ID and/or time range. Useful for checking recent changes detected by your web page monitors." }, { "slug": "WACHETE_LIST_WATCHERS", "name": "List watchers", "description": "List all monitoring watchers (tasks) configured in your Wachete account. Optionally filter by search query. Returns up to 500 watchers with details including name, URL, monitoring settings, and notification configuration." }, { "slug": "WACHETE_MOVE_ITEMS_TO_FOLDER", "name": "Move Items to Folder", "description": "Move tasks (watchers) and folders to a specified destination folder. Use this to organize your monitoring structure by relocating items within the folder hierarchy. Provide at least one of folderIds or taskIds to move items. Set folderId to null to move items to root level." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wachete_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_token", "displayName": "Bearer Token", "type": "string", "description": "Your authentication token. Get this by POSTing your User ID and API Key to https://api.wachete.com/thirdparty/v1/user/apilogin (see API docs for details)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wafrow", "name": "Wafrow", "logo": "https://logos.composio.dev/api/wafrow", "description": "Easy personalized marketing. AI Conversion Rate Optimization", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wafrow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "To get your API Token, sign in and go to Settings (http://wafrow.com/dashboard/settings), under the User menu on the top right.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "waiverfile", "name": "Waiverfile", "logo": "https://logos.composio.dev/api/waiverfile", "description": "WaiverFile is an electronic waiver form system that allows customers to sign release waivers from any device, streamlining the waiver management process.", "category": "forms & surveys", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WAIVERFILE_GET_SITE_DETAILS", "name": "Get Site Details", "description": "Retrieve comprehensive configuration and metadata for a WaiverFile site. Returns site settings including name, welcome messages, field requirements, email configuration, age restrictions, and other site-specific configuration data. Use this to understand site setup and display site information." }, { "slug": "WAIVERFILE_PING_EVENT_SERVICE", "name": "Ping Event Service", "description": "Ping test for WaiverFile event service connectivity. Sends a test ping to verify that the event service is reachable and responding. Use this to validate API integration and event service health." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "waiverfile_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "WaiverFile API Key", "type": "string", "description": "The API key provided by WaiverFile for authenticating API requests.", "required": true, "default": null }, { "name": "generic_id", "displayName": "WaiverFile Site ID", "type": "string", "description": "The unique identifier for your WaiverFile site.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "walgreens", "name": "Walgreens", "logo": "https://logos.composio.dev/api/walgreens", "description": "Walgreens provides APIs for photo printing, prescription refills, and store locator services.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "walgreens_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Walgreens API key. Obtain this from the Walgreens Developer Portal at https://developer.walgreens.com/user/me/apps/add", "required": true, "default": null }, { "name": "generic_id", "displayName": "Affiliate ID", "type": "string", "description": "Your Walgreens affiliate ID (partner identifier). Use \"extest1\" only for QA or staging testing.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wasenderapi", "name": "Wasenderapi", "logo": "https://logos.composio.dev/api/wasenderapi", "description": "WhatsApp Business API platform for sending messages, managing contacts, and automating WhatsApp communications", "category": "communication", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "wasenderapi_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your WasenderAPI token. Use a Personal Access Token (from Settings > Personal Access Token) for account-level operations like creating and managing sessions, or a Session API Key (auto-generated when a WhatsApp session is connected) for per-session operations like messaging, contacts, and groups.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wati", "name": "Wati", "logo": "https://logos.composio.dev/api/wati", "description": "Wati is a WhatsApp Business API platform that automates marketing, sales, service, and support.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WATI_ADD_CONTACT", "name": "Add Contact", "description": "Tool to add a new contact in WATI. Use when registering a customer's WhatsApp number before sending messages." }, { "slug": "WATI_GET_TEAMS", "name": "Get Teams", "description": "Tool to retrieve a list of teams from WATI. Use after authenticating when you need to enumerate all available teams." }, { "slug": "WATI_SEND_SESSION_MESSAGE", "name": "Send Session Message", "description": "Tool to send a session message to a specified WhatsApp number. Use when you need to deliver a free-form text within an active 24-hour session window." }, { "slug": "WATI_UPDATE_CHAT_STATUS", "name": "Wati update chat status", "description": "Update the status of a chat/conversation in WATI Team Inbox. This action allows you to change the status of a customer's chat to help manage ongoing conversations. Available statuses: - OPEN: Active, two-way conversation - PENDING: Waiting for customer's response - SOLVED: Issue has been resolved - BLOCK: Prevent further communication with the contact" }, { "slug": "WATI_UPDATE_CONTACT_ATTRIBUTES", "name": "Update Contact Attributes", "description": "Tool to update attributes of an existing contact. Use after confirming the contact exists and you need to modify its custom attributes." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wati_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the Wati API. For paid plans, use this: https://live-mt-server.wati.io and must provide your tenant ID.", "required": true, "default": "https://app-server.wati.io" }, { "name": "bearer_token", "displayName": "Wati Access Token", "type": "string", "description": "The access token required for authenticating API requests. You can obtain it from the Wati UI under the 'API Docs' section. Note: Changing your Wati account password will invalidate the current access token.", "required": true, "default": null } ], "optional": [ { "name": "tenant_id", "displayName": "Tenant ID", "type": "string", "description": "The tenant ID (Client ID) for Wati paid accounts. This is generated when you register for a paid MT account and is used to log in. You can find it in the Wati URL when logged in or in your profile under \"Client ID\".", "required": false, "default": null } ] } } } ] }, { "slug": "webscraper_io", "name": "Webscraper io", "logo": "https://logos.composio.dev/api/webscraper_io", "description": "WebScraper.IO is a web scraping tool that makes web data extraction easy and accessible for everyone through a cloud-based API.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 10, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEBSCRAPER_IO_CREATE_SITEMAP", "name": "Create Sitemap", "description": "Tool to create a new sitemap configuration for web scraping. Use when you need to define a new scraping structure with start URLs and selector rules for data extraction from a website." }, { "slug": "WEBSCRAPER_IO_DELETE_SITEMAP", "name": "Delete Sitemap", "description": "Tool to permanently delete a sitemap configuration from Web Scraper Cloud account. Use when you need to remove a sitemap that is no longer needed." }, { "slug": "WEBSCRAPER_IO_DISABLE_SITEMAP_SCHEDULER", "name": "Disable Sitemap Scheduler", "description": "Tool to disable automatic scheduling for a sitemap. Use when you need to stop automated scraping jobs from running on a schedule." }, { "slug": "WEBSCRAPER_IO_ENABLE_SITEMAP_SCHEDULER", "name": "Enable Sitemap Scheduler", "description": "Tool to enable and configure automatic scheduling for sitemap scraping jobs. Use when you need to automate scraping jobs to run at specific times using cron expressions with customizable request intervals, page load delays, driver types, and proxy settings." }, { "slug": "WEBSCRAPER_IO_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve account information including email and page credits. Use when you need to check account details or available credits." }, { "slug": "WEBSCRAPER_IO_GET_SCRAPING_JOBS", "name": "Get Scraping Jobs", "description": "Tool to retrieve all scraping jobs for the account with optional filtering and pagination. Use when you need to list scraping jobs, check job status, or filter jobs by sitemap or tag." }, { "slug": "WEBSCRAPER_IO_GET_SITEMAP", "name": "Get Sitemap", "description": "Tool to retrieve a specific sitemap configuration by ID. Use when you need to inspect or reference an existing sitemap's configuration." }, { "slug": "WEBSCRAPER_IO_GET_SITEMAPS", "name": "Get Sitemaps", "description": "Tool to retrieve all sitemaps for the authenticated account with pagination support. Use when you need to list available sitemaps or filter them by tag. Supports optional pagination via page parameter and filtering by tag name." }, { "slug": "WEBSCRAPER_IO_GET_SITEMAP_SCHEDULER", "name": "Get Sitemap Scheduler", "description": "Tool to retrieve scheduler configuration for a sitemap. Use when you need to check scheduling settings including cron configuration and proxy settings." }, { "slug": "WEBSCRAPER_IO_UPDATE_SITEMAP", "name": "Update Sitemap", "description": "Tool to update an existing sitemap configuration including structure, URLs, and selectors. Use when you need to modify sitemap settings." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "webscraper_io_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your WebScraper.IO API token. Get it from Account Info > API settings in your Web Scraper Cloud dashboard.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "webscraping_ai", "name": "WebScraping.AI", "logo": "https://logos.composio.dev/api/webscraping_ai", "description": "WebScraping.AI provides an API for web scraping with features like Chrome JS rendering, rotating proxies, and HTML parsing.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEBSCRAPING_AI_ACCOUNT_INFO", "name": "Get account usage and quota", "description": "Tool to retrieve account API call quota and usage. Use when checking remaining requests and subscription details." }, { "slug": "WEBSCRAPING_AI_ASK_QUESTION", "name": "Ask Question About Web Page", "description": "Tool to get an answer to a question about a given web page using LLM. Use when you need AI-powered analysis or extraction from a web page. Proxies and Chromium JavaScript rendering are used for page retrieval." }, { "slug": "WEBSCRAPING_AI_EXTRACT_FIELDS", "name": "Extract Fields with AI", "description": "Tool to extract structured data fields from a web page using AI. Returns extracted fields as JSON. Uses proxies and Chromium JavaScript rendering for page retrieval and processing." }, { "slug": "WEBSCRAPING_AI_GET_RENDERED_HTML", "name": "Get Rendered HTML", "description": "Tool to retrieve fully rendered HTML of a webpage. Use when JS-generated content must be included." }, { "slug": "WEBSCRAPING_AI_GET_SELECTED_HTML", "name": "Get Selected HTML", "description": "Tool to extract HTML from specific page elements using CSS selectors. Use when you need HTML from a particular section rather than the entire page." }, { "slug": "WEBSCRAPING_AI_GET_SELECTED_MULTIPLE", "name": "Get Selected Multiple Elements", "description": "Tool to extract HTML of multiple page areas by URL and CSS selectors. Use when you need to extract multiple elements without HTML parsing on your side." }, { "slug": "WEBSCRAPING_AI_GET_TEXT", "name": "Get Text", "description": "Tool to retrieve raw text content from a specified web page. Returns unstructured plain text — markdown formatting (code fences, lists, headings) is not preserved. Use when you need plain text extraction from a URL. Use FIRECRAWL_EXTRACT instead when formatted markdown output is required." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "webscraping_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "WebScraping.AI API Key", "type": "string", "description": "Your WebScraping.AI API key for query parameter authentication", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "webvizio", "name": "Webvizio", "logo": "https://logos.composio.dev/api/webvizio", "description": "Webvizio is a visual feedback and collaboration tool for web professionals, enabling users to annotate web pages, share feedback, track bugs, and manage tasks efficiently.", "category": "project management", "authSchemes": [ "API_KEY" ], "toolCount": 2, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WEBVIZIO_LIST_PROJECTS", "name": "List Webvizio projects", "description": "Tool to fetch all available Webvizio projects for the authenticated user. Use when you need to retrieve project information or select a project for further operations." }, { "slug": "WEBVIZIO_LIST_WEBHOOKS", "name": "List webhook subscriptions", "description": "Tool to list all configured outgoing webhook subscriptions. Use when you need an overview of active webhooks before managing them." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "webvizio_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Webvizio API Token", "type": "string", "description": "Your personal access token for Webvizio API requests. You can generate this token in your Webvizio account settings.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "whautomate", "name": "Whautomate", "logo": "https://logos.composio.dev/api/whautomate", "description": "Whautomate is a platform that offers seamless integrations for customer engagement, including AI chatbots, appointment scheduling, and broadcast messaging.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WHAUTOMATE_ADD_CONTACT", "name": "Add Contact", "description": "Tool to add a new contact. Use when you need to programmatically create contacts via the API." }, { "slug": "WHAUTOMATE_DELETE_SEGMENT", "name": "Delete Segment", "description": "Tool to delete a specific segment. Use when you need to remove a segment by its ID. Use after confirming you have the correct segmentId." }, { "slug": "WHAUTOMATE_DELETE_SERVICE_CATEGORY", "name": "Delete Service Category", "description": "Tool to delete a service category. Use when you need to remove a specific service category by its ID. Use after confirming you have the correct serviceCategoryId." }, { "slug": "WHAUTOMATE_GET_ACCOUNT_INFO", "name": "Get Account Info", "description": "Tool to retrieve account information for the authenticated user. Use when you need to fetch account details like account name and owner email." }, { "slug": "WHAUTOMATE_GET_ALL_WEBHOOKS", "name": "Get All Webhooks", "description": "Tool to retrieve all registered webhooks. Use after authenticating to audit or inspect existing webhook subscriptions." }, { "slug": "WHAUTOMATE_GET_BROADCAST_BY_ID", "name": "Get Broadcast By ID", "description": "Tool to retrieve a specific broadcast's details. Use when you have a broadcast ID and need its metadata. Use after confirming the broadcastId is valid, as this returns detailed broadcast data." }, { "slug": "WHAUTOMATE_GET_BROADCASTS", "name": "Get Broadcasts", "description": "Tool to retrieve a list of broadcasts. Use when you need to fetch broadcasts with optional filters such as status or date ranges. Example: \"Get all scheduled broadcasts after 2023-01-01T00:00:00Z.\"" }, { "slug": "WHAUTOMATE_GET_CONTACTS", "name": "Get Contacts", "description": "Tool to retrieve a list of contacts. Use when you need to fetch contacts from WhatsApp with optional pagination and filters." }, { "slug": "WHAUTOMATE_GET_MESSAGES_OF_CONTACT", "name": "Get Messages of Contact", "description": "Tool to retrieve chat messages for a specific contact. Use after providing a valid contactId. Supports pagination and optional date filtering." }, { "slug": "WHAUTOMATE_GET_SEGMENTS", "name": "Get Segments", "description": "Tool to retrieve a list of segments. Use when you need to fetch segments with optional name filtering and pagination. Segments can be used to organize clients and contacts into groups based on various criteria." }, { "slug": "WHAUTOMATE_GET_SERVICE_BY_ID", "name": "Get Service By Id", "description": "Tool to retrieve details of a specific service by its unique ID. Use when you need comprehensive service information." }, { "slug": "WHAUTOMATE_GET_SERVICE_CATEGORIES", "name": "Get Service Categories", "description": "Tool to retrieve a list of service categories. Use when you need to list categories with optional pagination." }, { "slug": "WHAUTOMATE_GET_SERVICES", "name": "Get Services", "description": "Tool to retrieve a list of services with optional filters. Use when you need to fetch available services for display or scheduling." }, { "slug": "WHAUTOMATE_GET_STAFF_AVAILABILITY_BLOCKS", "name": "Get Staff Availability Blocks", "description": "Tool to retrieve a staff member's blocked time schedule over a date range. Use when you need to view unavailable slots after confirming staffId and desired date range." }, { "slug": "WHAUTOMATE_GET_STAFF_BY_ID", "name": "Get Staff By ID", "description": "Tool to retrieve detailed information about a specific staff member. Use when you have a valid staff ID and need full profile details. Use after confirming staffId." }, { "slug": "WHAUTOMATE_GET_STAFFS", "name": "Get Staffs", "description": "Tool to retrieve a list of staff members. Use when you need to list staff with optional pagination or search filters." }, { "slug": "WHAUTOMATE_UPDATE_SERVICE", "name": "Update Service", "description": "Tool to update an existing Whautomate service. Use when you need to modify service attributes like name, pricing, duration, or active status." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "whautomate_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "API Host URL", "type": "string", "description": "The API host URL based on your geographical location. For example, 'https://api.whautomate.com' for global access or 'https://api.in.whautomate.com' for India.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Whautomate API Key", "type": "string", "description": "The API key generated from your Whautomate account. This API key is required and must be included in the \"x-api-key\" header for all API requests.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "whoisfreaks", "name": "Whoisfreaks", "logo": "https://logos.composio.dev/api/whoisfreaks", "description": "Best Source For Domain WHOIS Database and API.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 17, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WHOISFREAKS_ASN_WHOIS_LOOKUP", "name": "ASN WHOIS Lookup", "description": "Tool to retrieve comprehensive ASN WHOIS information including ownership, network infrastructure, and IP address ranges. Use when you need to identify ASN ownership, organization details, or associated IP blocks for network administration or security analysis." }, { "slug": "WHOISFREAKS_BULK_DNS_LOOKUP", "name": "Bulk DNS Lookup", "description": "Tool to process multiple domains or IPs simultaneously, returning all DNS records in a single request (max 100). Use when you need to retrieve DNS records for multiple domains at once for efficient batch processing." }, { "slug": "WHOISFREAKS_BULK_DOMAIN_AVAILABILITY_CHECK", "name": "Bulk Domain Availability Check", "description": "Tool to check availability of multiple domains in one request (max 100 domains). Use when you need to verify if domain names are available for registration. Response time ranges from 16 seconds to 1 minute for 100 domains." }, { "slug": "WHOISFREAKS_BULK_WHOIS_LOOKUP", "name": "Bulk WHOIS Lookup", "description": "Tool to query WHOIS information for up to 100 domains in a single request. Use when you need comprehensive registration details, contact information, name servers, and domain status for multiple domains. Response includes normalized and parsed WHOIS data with 1 credit charged per successful query for each domain." }, { "slug": "WHOISFREAKS_DNS_LIVE_LOOKUP", "name": "DNS Live Lookup", "description": "Tool to perform real-time DNS record resolution for network diagnostics and configuration verification. Use when you need to retrieve current DNS records for a domain or perform reverse DNS lookup for an IP address." }, { "slug": "WHOISFREAKS_DOMAIN_AVAILABILITY_CHECK", "name": "Check Domain Availability", "description": "Tool to check if a domain is available for registration with optional suggestions. Use when you need to verify domain availability or get alternative domain suggestions." }, { "slug": "WHOISFREAKS_GET_DOMAINER_FILES_STATUS", "name": "Get Domain Files Status", "description": "Tool to check availability and update status of domain data files including newly registered, expired, and dropped domains. Use when you need to verify that domain data files are prepared and ready for download before accessing file download endpoints." }, { "slug": "WHOISFREAKS_IP_GEOLOCATION_LOOKUP", "name": "IP Geolocation Lookup", "description": "Tool to retrieve geographic location information for an IP address including country, city, coordinates, ISP, and security details. Use when you need to identify the physical location of an IP, detect VPN/proxy usage, or gather network intelligence for security or analytics purposes." }, { "slug": "WHOISFREAKS_IP_WHOIS_LOOKUP", "name": "IP WHOIS Lookup", "description": "Tool to retrieve comprehensive WHOIS information for an IP address including organization, ISP, and network details. Use when you need to identify IP ownership, allocation status, or contact information for network administration or security purposes." }, { "slug": "WHOISFREAKS_SECURITY_THREAT_LOOKUP", "name": "Security Threat Lookup", "description": "Tool to check if an IP address is associated with malicious activity, security threats, or appears on blocklists. Use when you need to assess IP reputation, detect VPN/proxy/Tor usage, identify bots or spam sources, or evaluate security risk for access control and fraud prevention." }, { "slug": "WHOISFREAKS_SSL_CERTIFICATE_LOOKUP", "name": "SSL Certificate Lookup", "description": "Tool to fetch live SSL certificate with full secure cert chain, validity dates, and issuer information. Use when you need to retrieve SSL certificate details for a domain, including certificate validation dates, issuer details, public key information, and certificate extensions." }, { "slug": "WHOISFREAKS_SUBDOMAINS_LOOKUP", "name": "Subdomain Lookup", "description": "Tool to discover all subdomains associated with a domain name. Use when you need to enumerate subdomains for security assessment, asset discovery, or domain reconnaissance. Supports filtering by active/inactive status and date ranges." }, { "slug": "WHOISFREAKS_WHOIS_HISTORICAL_LOOKUP", "name": "WHOIS Historical Lookup", "description": "Tool to access historical domain records from comprehensive database with up to 100 records per page. Use when you need to retrieve historical WHOIS data for a domain dating back to 1986. Database is updated monthly with one-month data latency." }, { "slug": "WHOISFREAKS_WHOIS_LIVE_LOOKUP_V2", "name": "WHOIS Live Lookup V2", "description": "Tool to fetch real-time WHOIS domain data using v2.0 endpoint. Use when you need current domain ownership, registration dates, contact information, or nameserver details via the updated v2.0 API. Note that some fields may show 'REDACTED FOR PRIVACY' due to ICANN privacy regulations." }, { "slug": "WHOISFREAKS_WHOIS_REVERSE_LOOKUP_BY_COMPANY", "name": "WHOIS Reverse Lookup By Company", "description": "Tool to search for domains registered by a specific company or organization using reverse WHOIS lookup. Use when you need to find all domains associated with a particular company name. Performs full-text phrase matching with pagination support. Charges 5 credits per page retrieved." }, { "slug": "WHOISFREAKS_WHOIS_REVERSE_LOOKUP_BY_EMAIL", "name": "WHOIS Reverse Lookup by Email", "description": "Tool to search for domains registered with a specific email address. Use when you need to find all domains associated with an email in WHOIS records. Supports exact or regex email matching. Returns paginated results with domain registration details." }, { "slug": "WHOISFREAKS_WHOIS_REVERSE_LOOKUP_BY_OWNER", "name": "WHOIS Reverse Lookup By Owner", "description": "Tool to search for domains registered by a specific owner name using reverse WHOIS lookup. Use when you need to find all domains associated with a particular registrant or owner name. Performs pattern-based full-text search with pagination support." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "whoisfreaks_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API key directly from your dashboard at https://billing.whoisfreaks.com/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "whoop", "name": "Whoop", "logo": "https://logos.composio.dev/api/whoop", "description": "WHOOP is a wearable fitness tracker that provides insights on recovery, strain, and sleep for optimizing health and performance.", "category": "fitness", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "whoop_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "read:profile,read:recovery,read:cycles,offline" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "whop", "name": "Whop", "logo": "https://logos.composio.dev/api/whop", "description": "Making everyone an internet entrepreneur. Explore a playground for digital products, memberships & communities.", "category": "ecommerce", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 19, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WHOP_CREATE_ACCESS_TOKEN", "name": "Create Access Token", "description": "Tool to create a short-lived access token for authenticating API requests. Use when you need to generate temporary credentials for Whop's web and mobile embedded components." }, { "slug": "WHOP_CREATE_FILE", "name": "Create file", "description": "Tool to create a new file record and receive a presigned URL for uploading content to S3. Use when you need to upload files to Whop." }, { "slug": "WHOP_DELETE_PROMO_CODE", "name": "Delete Promo Code", "description": "Tool to archive a promo code, preventing it from being used in future checkouts. Use when you need to deactivate or remove a promo code from circulation. Existing memberships created with this promo code are not affected by archiving. The operation changes the promo code status from 'active' to 'archived'." }, { "slug": "WHOP_LIST_APPS", "name": "List Apps", "description": "Tool to retrieve a paginated list of apps on the Whop platform. Use when you need to browse or search for apps with optional filtering by company, type, verification status, or view support. Supports cursor-based pagination." }, { "slug": "WHOP_LIST_AUTHORIZED_USERS", "name": "List Authorized Users", "description": "Tool to retrieve a paginated list of authorized team members for a company. Use when you need to view company team members, check user permissions, or audit team access. Supports filtering by company, user, role, and creation date with cursor-based pagination." }, { "slug": "WHOP_LIST_MEMBERS", "name": "List Members", "description": "Tool to retrieve a paginated list of members for a company. Use when you need to view company members with optional filtering by product, plan, status, access level, and more. Supports cursor-based pagination and searching by name, username, or email." }, { "slug": "WHOP_LIST_MEMBERSHIPS", "name": "List memberships", "description": "Tool to retrieve a paginated list of memberships with filtering options. Use when you need to list memberships by product, plan, status, user, or promo code." }, { "slug": "WHOP_LIST_PAYMENT_METHODS", "name": "List Payment Methods", "description": "Tool to retrieve a paginated list of payment methods for a member or company. Use when you need to view stored payment information such as cards, bank accounts, or digital wallets. Either member_id or company_id must be provided." }, { "slug": "WHOP_LIST_PAYMENTS", "name": "List Payments", "description": "Tool to retrieve a paginated list of payments for a company. Use when you need to view payment history with optional filtering by product, plan, status, billing reason, currency, and creation date. Supports cursor-based pagination." }, { "slug": "WHOP_RETRIEVE_APP", "name": "Retrieve App", "description": "Tool to retrieve the details of an existing app. Use when you need to get information about a specific Whop app by its ID." }, { "slug": "WHOP_RETRIEVE_AUTHORIZED_USER", "name": "Retrieve Authorized User", "description": "Tool to retrieve the details of an existing authorized user. Use when you need to get information about a specific authorized user by their ID." }, { "slug": "WHOP_RETRIEVE_COMPANY", "name": "Retrieve Company", "description": "Tool to retrieve the details of an existing company. Use when you need to fetch company information including settings, team details, verification status, and social links." }, { "slug": "WHOP_RETRIEVE_COMPANY_TOKEN_TRANSACTION", "name": "Retrieve company token transaction", "description": "Tool to retrieve the details of an existing company token transaction. Use when you need to view information about a specific token transaction including amount, type, and associated user/member/company details." }, { "slug": "WHOP_RETRIEVE_FILE", "name": "Retrieve File", "description": "Tool to retrieve the details of an existing file from Whop. Use when you need to get information about a specific file by its ID." }, { "slug": "WHOP_RETRIEVE_MEMBER", "name": "Retrieve Member", "description": "Tool to retrieve detailed information about an existing member by ID. Use when you need to get a specific member's details including their status, access level, spending history, and associated user information." }, { "slug": "WHOP_RETRIEVE_PLAN", "name": "Retrieve Plan", "description": "Tool to retrieve information about an existing plan. A plan defines pricing and billing terms for a product." }, { "slug": "WHOP_RETRIEVE_PROMO_CODE", "name": "Retrieve Promo Code", "description": "Tool to retrieve the details of an existing promo code by its unique identifier. Use when you need to fetch information about a specific promo code's discount settings, usage limits, and restrictions." }, { "slug": "WHOP_RETRIEVE_USER", "name": "Retrieve User", "description": "Tool to retrieve the details of an existing user from Whop. Use when you need to get information about a specific user by their ID or username." }, { "slug": "WHOP_UPDATE_PLAN", "name": "Update Plan", "description": "Tool to update a plan's pricing, billing interval, visibility, stock, and other settings. Use when you need to modify an existing plan's configuration such as changing prices, adjusting billing periods, updating visibility status, or managing stock levels." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "whop_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "member:basic:read,payment:basic:read" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "whop_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to the Developers setting panel under your business to find your API Key. Format: whop_xxxxxxxxxxxx", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "windmilldev", "name": "Windmilldev", "logo": "https://logos.composio.dev/api/windmilldev", "description": "Open-source developer platform for building workflows, internal tools, and automations with granular permissions and workspace management.", "category": "developer tools", "authSchemes": [ "BEARER_TOKEN" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BEARER_TOKEN", "name": "windmilldev_bearer", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "token", "displayName": "Bearer Token", "type": "string", "description": "Token for bearer authentication", "required": true, "default": null }, { "name": "full", "displayName": "Instance URL", "type": "string", "description": "For Windmill Cloud use https://app.windmill.dev, for self-hosted use your instance domain (e.g., https://your-instance.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Create a token from Account Settings > New Token in your Windmill instance. Tokens support granular scopes to restrict access to specific resources and actions.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "winston_ai", "name": "Winston AI", "logo": "https://logos.composio.dev/api/winston_ai", "description": "Winston AI provides a comprehensive content verification and management platform, offering tools for AI-generated text detection, plagiarism detection, and AI image detection.", "category": "ai safety compliance detection", "authSchemes": [ "API_KEY" ], "toolCount": 3, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WINSTON_AI_AI_TEXT_DETECTION", "name": "AI Text Detection", "description": "Tool to detect AI-generated text. Use when you need to assess whether a given text is AI-generated. Each call consumes credits based on word count." }, { "slug": "WINSTON_AI_PLAGIARISM_DETECTION", "name": "Plagiarism Detection", "description": "Tool to detect plagiarism. Use after preparing text to verify originality against online sources." }, { "slug": "WINSTON_AI_TEXT_COMPARE", "name": "TEXT_COMPARE", "description": "Tool to compare two texts. Use when you need to measure similarity between two final texts." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "winston_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Winston AI API Key", "type": "string", "description": "The API key used for authenticating requests to Winston AI's API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wisepops", "name": "Wisepops", "logo": "https://logos.composio.dev/api/wisepops", "description": "WisePops helps you design smart pop-ups for your website to increase sign-ups and conversions", "category": "marketing", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WISEPOPS_CREATE_WEBHOOK", "name": "Create Webhook", "description": "Tool to create a webhook to receive real-time data updates when forms are collected in Wisepops. Use when you need to set up automated data synchronization for sign-up, phone, or survey form submissions. Note: Wisepops includes an X-Wisepops-Signature header for verification." }, { "slug": "WISEPOPS_DATA_PRIVACY_DELETE_USER_DATA", "name": "Delete User Data for Privacy Compliance", "description": "Tool to automatically delete and suppress data about end-users for GDPR and CCPA compliance. Use when you need to remove user data from the system. Requires at least one identifier (email or phone). When both are supplied, records matching either field are deleted." }, { "slug": "WISEPOPS_DELETE_WEBHOOK", "name": "Delete Webhook", "description": "Tool to delete an existing webhook by its hook_id. Use when you need to remove a webhook that is no longer needed or should be deactivated." }, { "slug": "WISEPOPS_GET_WISEPOPS_PERFORMANCE_DATA", "name": "Get Wisepops Performance Data", "description": "Tool to retrieve a list of your Wisepops with display and conversion metrics. Use when you need to analyze pop-up performance data including display counts, clicks, and email collections." }, { "slug": "WISEPOPS_RETRIEVE_COLLECTED_CONTACTS", "name": "Retrieve Collected Contacts", "description": "Tool to retrieve contacts collected through Wisepops opt-in forms. Use when you need to fetch contact information with their custom fields and metadata." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wisepops_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Log into your WisePops account, click Profile menu (top right) → Settings → Email API. Note: Each API key is website-specific.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wit_ai", "name": "Wit.ai", "logo": "https://logos.composio.dev/api/wit_ai", "description": "Wit.ai is a natural language processing platform that enables developers to build applications and devices that understand human language.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 31, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WIT_AI_ADD_ENTITY_KEYWORD", "name": "Add Entity Keyword", "description": "Tool to add a keyword with optional synonyms to a Wit.ai entity. Use when extending entity values." }, { "slug": "WIT_AI_ADD_KEYWORD_SYNONYM", "name": "Add Keyword Synonym", "description": "Tool to add a new synonym to a keyword in an entity. Use when expanding entity keyword recognition with additional terms." }, { "slug": "WIT_AI_ADD_TRAIT_VALUE", "name": "Add Value to Trait", "description": "Tool to add a new value to an existing trait in Wit.ai. Use when extending trait vocabulary with additional values." }, { "slug": "WIT_AI_CREATE_APP", "name": "Create Wit.ai App", "description": "Tool to create a new app in Wit.ai. Use when you need to programmatically initialize an application before training or importing data." }, { "slug": "WIT_AI_CREATE_ENTITY", "name": "Create Wit.ai Entity", "description": "Tool to create a new entity in Wit.ai. Use when defining custom entity types for natural language understanding." }, { "slug": "WIT_AI_CREATE_INTENT", "name": "Create Wit.ai Intent", "description": "Tool to create a new intent in Wit.ai. Use when you need to define a new intent for natural language understanding." }, { "slug": "WIT_AI_CREATE_TRAIT", "name": "Create Wit.ai Trait", "description": "Tool to create a new trait in Wit.ai. Use when defining custom entity attribute matching behavior." }, { "slug": "WIT_AI_CREATE_UTTERANCES", "name": "Create Wit.ai Training Utterances", "description": "Tool to add training utterances (samples with annotations) to your Wit.ai app. Use when you need to train your model with labeled examples. Rate limit: 200 samples per minute." }, { "slug": "WIT_AI_DELETE_APP", "name": "Delete App", "description": "Tool to delete a specific app from wit.ai. Use when you need to remove an existing app by its ID after confirming its existence." }, { "slug": "WIT_AI_DELETE_ENTITY", "name": "Delete Entity", "description": "Tool to permanently delete an entity by name. Use when you need to remove an existing entity from the wit.ai app." }, { "slug": "WIT_AI_DELETE_ENTITY_KEYWORD", "name": "Delete Entity Keyword", "description": "Tool to delete a keyword from a keywords entity in wit.ai. Use when you need to remove a specific keyword from an entity." }, { "slug": "WIT_AI_DELETE_ENTITY_ROLE", "name": "Delete Entity Role", "description": "Tool to delete a specific role from an entity in wit.ai. Use when you need to remove a role association from an entity." }, { "slug": "WIT_AI_DELETE_INTENT", "name": "Delete Intent", "description": "Tool to permanently delete an intent by name. Use when you need to remove an intent from the app." }, { "slug": "WIT_AI_DELETE_KEYWORD_SYNONYM", "name": "Delete Keyword Synonym", "description": "Tool to delete a synonym from a keyword in an entity. Use when you need to remove a specific synonym mapping from an entity keyword." }, { "slug": "WIT_AI_DELETE_UTTERANCES", "name": "Delete Utterances", "description": "Tool to delete validated utterances (training samples) from your Wit.ai app. Use when you need to remove specific training data." }, { "slug": "WIT_AI_DETECT_LANGUAGE", "name": "Wit.ai Detect Language", "description": "Tool to detect the language of a given text input. Returns detected locales with confidence scores. Use when you need to identify the language of user-provided text." }, { "slug": "WIT_AI_EXPORT_APP", "name": "Export App Data", "description": "Tool to export Wit.ai app data as a backup ZIP file. Returns a download URL for the backup file containing all app data." }, { "slug": "WIT_AI_GET_APP", "name": "Get App Details", "description": "Tool to retrieve metadata and settings of a Wit.ai app. Use when you need to fetch complete app details by app ID after authenticating." }, { "slug": "WIT_AI_GET_ENTITY", "name": "Get Entity Details", "description": "Tool to retrieve details of a specific entity including keywords and roles. Use when you need entity metadata by ID or name." }, { "slug": "WIT_AI_GET_INTENT", "name": "Get Intent Details", "description": "Tool to retrieve details of a specific intent. Use when you need full intent metadata given its ID." }, { "slug": "WIT_AI_GET_INTENTS", "name": "Get Intents", "description": "Tool to list all intents in a Wit.ai app. Use after authenticating to retrieve defined intents." }, { "slug": "WIT_AI_GET_MESSAGE", "name": "Wit.ai Get Message", "description": "Tool to analyze a text message and extract its intent, entities, and traits. Use when you need structured meaning from user input." }, { "slug": "WIT_AI_GET_TRAIT", "name": "Get Trait Details", "description": "Tool to retrieve details of a specific trait. Use when you have the trait ID and need its full metadata." }, { "slug": "WIT_AI_GET_TRAITS", "name": "List Traits", "description": "Tool to list all traits in a Wit.ai app. Use after authenticating to retrieve defined traits." }, { "slug": "WIT_AI_GET_VOICE", "name": "Get Voice Details", "description": "Tool to retrieve details for a specific text-to-speech voice. Use when you need information about available styles and parameters for a voice." }, { "slug": "WIT_AI_LIST_APPS", "name": "List Wit.ai Apps", "description": "Tool to retrieve the list of all Wit.ai apps for the authenticated user. Use when you need to fetch apps with pagination support." }, { "slug": "WIT_AI_LIST_APP_TAGS", "name": "List App Tags", "description": "Tool to retrieve all tag groups (versions) for a Wit.ai app. Use when you need to list available versions or snapshots of an app's state." }, { "slug": "WIT_AI_LIST_ENTITIES", "name": "List Entities", "description": "Tool to list all entities in a Wit.ai app. Use after authenticating to retrieve defined entities." }, { "slug": "WIT_AI_LIST_UTTERANCES", "name": "List Utterances", "description": "Tool to retrieve training utterances (samples) from a Wit.ai app. Use when you need to view or analyze the app's training data. Supports filtering by intents, entities, and traits." }, { "slug": "WIT_AI_LIST_VOICES", "name": "List Voices", "description": "Tool to retrieve all available text-to-speech voices grouped by locale. Use when you need to discover which voices are available for speech synthesis." }, { "slug": "WIT_AI_PUT_APP", "name": "Update Wit.ai App", "description": "Tool to update an existing Wit.ai app. Use when you need to modify app settings after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wit_ai_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Wit.ai Server Access Token", "type": "string", "description": "The Server Access Token for authenticating API requests to Wit.ai.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wix", "name": "Wix", "logo": "https://logos.composio.dev/api/wix", "description": "Wix is a cloud-based web development platform that allows users to create HTML5 websites and mobile sites through drag-and-drop tools. The Wix API provides programmatic access to manage sites, products, orders, and other resources.", "category": "website builders", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 144, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WIX_ADD_SPECIAL_PERMISSIONS", "name": "Add Special Permissions", "description": "Tool to add special permissions to a Wix data collection for a specific user or role. Use when you need to grant CRUD permissions (insert, update, remove, read) to a user or role for a specific collection." }, { "slug": "WIX_CALCULATE_FIRST_AVAILABLE_TIME_SLOTS_PER_MENU", "name": "Calculate First Available Time Slots Per Menu", "description": "Tool to calculate and retrieve the first available time slot of each fulfillment type for each specified menu. Use when you need to check availability for restaurant operations. Note: Developer Preview status - API is subject to change." }, { "slug": "WIX_CANCEL_EVENT", "name": "Cancel Automation Event", "description": "Tool to cancel any remaining automation actions for a trigger and external entity. Use when you need to stop automation workflows that are no longer relevant (e.g., after an invoice is paid or a form submission is processed)." }, { "slug": "WIX_CANCEL_ORDER", "name": "Cancel Order", "description": "Cancels an existing e-commerce order by marking its status as CANCELED. Use this action when you need to cancel an order due to customer request, inventory issues, or other business reasons. This action is irreversible — once an order is canceled, it cannot be restored to its previous state." }, { "slug": "WIX_CANCEL_TASK", "name": "Cancel Background Task", "description": "Tool to cancel a background task in Wix CMS. Use when you need to stop a running background task that is no longer needed." }, { "slug": "WIX_CHECK_CONTENT", "name": "Check Content", "description": "Tool to check content text against Wix moderation rules. Use when you need to validate user-submitted content for policy violations before publishing or to determine if content requires moderation." }, { "slug": "WIX_CHECK_DOMAIN_AVAILABILITY", "name": "Check Domain Availability", "description": "Tool to check if a domain name is available for purchase. Use when you need to verify domain availability before registration. Returns an availability object with a boolean indicating if the domain can be purchased." }, { "slug": "WIX_COUNT_EXTENDED_BOOKINGS", "name": "Count Extended Bookings", "description": "Tool to count extended bookings matching specified filter criteria. Use when you need to get the total number of bookings without retrieving the full booking data." }, { "slug": "WIX_CREATE_CONTACTS_LABELS", "name": "Add Labels to Contact", "description": "Tool to add labels to a Wix contact using the Labels API. Use when you need to categorize or tag contacts with specific labels like 'contacts.customers' or 'contacts.contacted-me'." }, { "slug": "WIX_CREATE_POINTS_EXPIRATION_ENABLE", "name": "Enable Points Expiration", "description": "Tool to enable points expiration for a Wix loyalty program. Use when you need to activate the points expiration feature, which changes the pointsExpiration status to ENABLED." }, { "slug": "WIX_CREATE_PRODUCTS_WITH_INVENTORY_BULK_CREATE", "name": "Bulk Create Products With Inventory", "description": "Tool to bulk create products with inventory in Wix. Use when you need to create multiple products with pricing and stock information in a single request. Supports up to 100 products per request. Physical products require physical_properties." }, { "slug": "WIX_CREATE_TAX_REGION", "name": "Create Tax Region", "description": "Tool to create a tax region in Wix using the Tax Regions API. Use when you need to define a location-specific tax treatment by country and subdivision with an associated tax calculator." }, { "slug": "WIX_DELETE_ABANDONED_CHECKOUTS_BULK", "name": "Bulk Delete Abandoned Checkouts", "description": "Tool to bulk delete abandoned checkouts from Wix e-commerce. Use when you need to remove multiple abandoned checkouts by their IDs." }, { "slug": "WIX_DELETE_ADD_ON_GROUP", "name": "Delete Add-On Group", "description": "Tool to delete an add-on group from a Wix Bookings service. Use when you need to remove an add-on group from a specific service by providing the service ID and add-on group ID." }, { "slug": "WIX_DELETE_BACK_IN_STOCK_NOTIFICATION", "name": "Delete Back In Stock Notification", "description": "Tool to delete a back in stock notification request from Wix e-commerce. Use when you need to remove a customer's request to be notified when a product comes back in stock." }, { "slug": "WIX_DELETE_BENEFIT_ITEMS", "name": "Bulk Delete Benefit Items", "description": "Tool to bulk delete benefit items from Wix Benefit Programs. Use when you need to remove multiple benefit items at once by providing their IDs." }, { "slug": "WIX_DELETE_BILLABLE_ITEMS_BULK", "name": "Bulk Delete Billable Items", "description": "Tool to bulk delete billable items in Wix. Use when you need to remove multiple billable items at once by providing their IDs. This triggers a Billable Item Deleted event in the Wix system." }, { "slug": "WIX_DELETE_BOOKMARK", "name": "Delete Schedule Bookmark", "description": "Tool to remove a bookmark from a schedule item in Wix Events. Use when you need to delete a user's saved bookmark for a specific event schedule item." }, { "slug": "WIX_DELETE_BRANDS_BULK", "name": "Bulk Delete Brands", "description": "Tool to delete multiple brands from the Wix Stores catalog. When a brand is deleted, it's automatically removed from all products that reference it. Use when you need to remove multiple brands at once." }, { "slug": "WIX_DELETE_BULK_CONTENT", "name": "Bulk Delete Translation Content", "description": "Tool to bulk delete translation content by IDs. Use when you need to delete multiple translation content items in a single operation." }, { "slug": "WIX_DELETE_BULK_VARIANTS", "name": "Bulk Delete Variants", "description": "Tool to bulk delete item variants from Wix Restaurants menus. Use when you need to remove multiple menu item variants at once." }, { "slug": "WIX_DELETE_CATEGORY", "name": "Delete FAQ Category", "description": "Tool to delete an FAQ category from the Wix site. Deleting a category permanently removes it and all associated questions from the FAQ page. Triggers a Category Deleted event." }, { "slug": "WIX_DELETE_CONTACTS_LA", "name": "Unlabel Contact", "description": "Tool to remove labels from a contact in the Wix CRM system. Use when you need to unlabel a contact by removing specific label keys. This triggers a Contact Updated event in the Wix system." }, { "slug": "WIX_DELETE_CUSTOMIZATION", "name": "Delete Customization", "description": "Tool to delete a customization from the Wix Stores catalog. Use when you need to permanently remove a customization option by its ID." }, { "slug": "WIX_DELETE_DATA_COLLECTION_FIELD", "name": "Delete Data Collection Field", "description": "Tool to delete a field from a Wix data collection. Use when you need to remove a field from a collection's structure, which also removes all associated values. The operation is idempotent and succeeds even if the collection or field doesn't exist." }, { "slug": "WIX_DELETE_FORMS", "name": "Bulk Delete Form Schemas", "description": "Tool to bulk delete form schemas from Wix Forms. Use when you need to remove multiple forms by their IDs in a single operation." }, { "slug": "WIX_DELETE_INFO_SECTION", "name": "Delete Info Section", "description": "Tool to delete an info section from the Wix Stores catalog. Use when you need to permanently remove a specific info section by its ID." }, { "slug": "WIX_DELETE_INVENTORY_ITEMS_BULK", "name": "Bulk Delete Inventory Items", "description": "Tool to bulk delete inventory items from the Wix Stores catalog. Accepts non-existent IDs without error. Use when you need to remove multiple inventory items at once." }, { "slug": "WIX_DELETE_ITEMS_BY_FILTER", "name": "Bulk Delete Benefit Items By Filter", "description": "Tool to bulk delete benefit program items by filter criteria. Use when you need to delete multiple items matching specific conditions within a namespace. If no filter is provided, this may delete all items in the namespace." }, { "slug": "WIX_DELETE_LOYALTY_COUPON", "name": "Delete Loyalty Coupon", "description": "Tool to delete a loyalty coupon from the Wix Loyalty Program. Note that deleting a loyalty coupon does not affect the functionality of the corresponding discount coupon itself. Use when you need to remove a loyalty coupon by its unique identifier." }, { "slug": "WIX_DELETE_MENU", "name": "Delete Menu", "description": "Tool to delete a menu from Wix Restaurants. Use when you need to permanently remove a menu by its ID. The endpoint implements idempotent DELETE behavior." }, { "slug": "WIX_DELETE_MODIFIERS_BULK", "name": "Bulk Delete Modifiers", "description": "Tool to bulk delete item modifiers from Wix Restaurants Menus. Use when you need to remove multiple item modifiers at once by providing their IDs." }, { "slug": "WIX_DELETE_POOL_DEFINITIONS_BULK", "name": "Bulk Delete Pool Definitions", "description": "Tool to bulk delete pool definitions from Wix Benefit Programs. Use when you need to remove multiple pool definitions by their IDs in a single operation." }, { "slug": "WIX_DELETE_PRODUCT_OPTIONS", "name": "Delete Product Options", "description": "Tool to delete all options from a Wix product. Use when you need to remove all product options (like Color, Size) and reset the product to a single default variant. Only works when variant management is disabled." }, { "slug": "WIX_DELETE_PRODUCTS", "name": "Bulk Delete Products", "description": "Tool to bulk delete products from the Wix Stores catalog. Use when you need to permanently remove multiple products by their IDs." }, { "slug": "WIX_DELETE_PROGRAM_DEFINITION", "name": "Delete Program Definition", "description": "Tool to delete a program definition from Wix Benefit Programs. Use when you need to permanently remove a benefit program definition by its ID." }, { "slug": "WIX_DELETE_PROJECT", "name": "Delete Project", "description": "Tool to delete a project from Wix Portfolio. Use when you need to remove a specific project by its ID. Note: This operation may return an empty success response when the Portfolio app is not installed." }, { "slug": "WIX_DELETE_PROJECT_ITEM", "name": "Delete Project Item", "description": "Tool to delete a project item from the Wix Portfolio. Use when you need to permanently remove a portfolio project item by its ID." }, { "slug": "WIX_DELETE_QUESTION_ENTRY", "name": "Delete Question Entry", "description": "Tool to delete a question entry from Wix FAQ app. Use when you need to permanently remove a FAQ question entry by its ID." }, { "slug": "WIX_DELETE_RECEIPT_PRESET", "name": "Delete Receipt Preset", "description": "Tool to permanently delete a receipt preset from Wix. Use when you need to remove a receipt preset by its ID. This triggers a Receipt Preset Deleted event in the Wix system." }, { "slug": "WIX_DELETE_RECIPIENTS_BULK", "name": "Bulk Delete Notification Recipients", "description": "Tool to bulk delete notification recipients for Wix Restaurants online orders. Use when you need to remove multiple recipients at once by providing their IDs." }, { "slug": "WIX_DELETE_REPORTS_BY_FILTER", "name": "Bulk Delete Reports By Filter", "description": "Tool to bulk delete reports from the dashboard by filter criteria. Use when you need to remove multiple reports matching specific conditions. Triggers a Report Deleted event for each removed report." }, { "slug": "WIX_DELETE_RSVPS_BY_FILTER", "name": "Bulk Delete RSVPs By Filter", "description": "Tool to bulk delete event RSVPs by filter criteria. Use when you need to remove multiple RSVPs matching specific conditions. If no filter is provided, this may delete all RSVPs." }, { "slug": "WIX_DELETE_RULE", "name": "Delete Service Fee Rule", "description": "Tool to delete a service fee rule from Wix Restaurants Online Orders. Use when you need to remove a specific rule by its ID." }, { "slug": "WIX_DELETE_SCHEDULE_ITEM", "name": "Delete Schedule Item", "description": "Tool to delete schedule items from a Wix event. Use when you need to remove one or more schedule items from an event's draft schedule." }, { "slug": "WIX_DELETE_SECRET", "name": "Delete Secret", "description": "Tool to delete a secret from Wix Secrets Vault. Use when you need to permanently remove a secret by its GUID identifier." }, { "slug": "WIX_DELETE_SENDER_DETAILS", "name": "Delete Sender Details", "description": "Tool to delete sender details from Wix email marketing. Use when you need to remove a sender from the available senders list. Note: You cannot delete a default sender - you must first create a new sender and mark it as default before deleting the original." }, { "slug": "WIX_DELETE_SENDER_EMAIL", "name": "Delete Sender Email", "description": "Tool to delete a sender email from Wix Marketing. Use when you need to remove a specific sender email by its ID." }, { "slug": "WIX_DELETE_SERVICE", "name": "Delete Service", "description": "Tool to delete a service from Wix Bookings. Use when you need to remove a single service by its ID. Triggers a 'Service Deleted' event upon success." }, { "slug": "WIX_DELETE_SERVICES_BY_FILTER", "name": "Bulk Delete Services By Filter", "description": "Tool to bulk delete booking services by filter criteria. The operation succeeds even if individual services can't be deleted, with failure information returned in bulkActionMetadata. Triggers Service Deleted webhook for each successfully deleted service." }, { "slug": "WIX_DELETE_SERVICES_IN_BULK", "name": "Bulk Delete Services", "description": "Tool to bulk delete services from Wix Bookings. Use when you need to remove multiple services at once by providing their IDs." }, { "slug": "WIX_DELETE_TICKET_CHECK_IN", "name": "Delete Ticket Check-In", "description": "Tool to delete ticket check-in records for Wix Events. Use when you need to remove check-in status for one or more tickets at an event." }, { "slug": "WIX_DELETE_TICKET_DEFINITIONS_BULK", "name": "Bulk Delete Ticket Definitions", "description": "Tool to bulk delete ticket definitions by filter criteria for Wix Events. Use when you need to delete multiple ticket definitions matching specific conditions. Requires 'Manage Ticket Definitions' permission." }, { "slug": "WIX_DELETE_TICKET_RESERVATION", "name": "Delete Ticket Reservation", "description": "Tool to delete a ticket reservation from Wix Events. Use when you need to remove a ticket reservation that is no longer needed or valid." }, { "slug": "WIX_DELETE_USER_DEFINED_FIELDS", "name": "Delete User Defined Fields", "description": "Tool to delete user defined fields from a data extension schema in Wix. Use when you need to remove custom fields from a schema by providing the schema ID and field keys." }, { "slug": "WIX_DELETE_USER_FAVORITE", "name": "Delete User Favorite", "description": "Tool to remove a dashboard page from the current user's list of favorite pages. Use when you need to delete a specific favorite from the user's dashboard. The API exhibits idempotent behavior - returns success even if the favorite doesn't exist." }, { "slug": "WIX_DISCARD_DRAFT", "name": "Discard Draft Schedule", "description": "Tool to discard all changes to a draft schedule for a Wix event. Use when you need to revert all unsaved changes and restore the schedule to its published state. Requires 'Manage Events - all permissions' scope." }, { "slug": "WIX_FIND_EVENT", "name": "Find Event", "description": "Tool to find a Wix event by ID or slug. Use when you need to retrieve event details. Note: This endpoint is deprecated and will be replaced by Events V3 Get Event." }, { "slug": "WIX_GENERATE_FILES_DOWNLOAD_URL", "name": "Generate Files Download URL", "description": "Tool to generate download URLs for files in Wix Media Manager. Use when you need to create a permanent download URL for one or multiple files (up to 1000). Returns a download URL for a compressed file containing all requested files." }, { "slug": "WIX_GENERATE_FILE_UPLOAD_URL", "name": "Generate File Upload URL", "description": "Tool to generate an upload URL for uploading files to Wix Media Manager. Use when you need to upload a file to Wix. Note: Files are not immediately available after upload and require processing time. For files larger than 10MB or poor network conditions, use Generate File Resumable Upload URL instead." }, { "slug": "WIX_GET_APP_INSTANCE", "name": "Get App Instance", "description": "Tool to retrieve the current app instance details and associated site information. Use when you need to fetch app configuration, permissions, or site details." }, { "slug": "WIX_GET_COLLECTION_BY_SLUG", "name": "Get Collection By Slug", "description": "Tool to retrieve a Wix Stores collection by its slug. Use when you need to fetch collection details using the collection's URL-friendly identifier instead of its ID." }, { "slug": "WIX_GET_CURRENT_MEMBER_COUPONS", "name": "Get Current Member Coupons", "description": "Tool to retrieve loyalty coupons for the currently authenticated member. Use when you need to fetch loyalty program coupons for the logged-in member. Requires visitor or member authentication." }, { "slug": "WIX_GET_FOLDER_BY_SITE", "name": "Get Folder By Site", "description": "Tool to retrieve folder information for a specific site by site ID. Use when you need to get the parent folder details of a site. Note: If the specified site is at root level, the returned folder object will be empty." }, { "slug": "WIX_GET_MEMBER", "name": "Get Member", "description": "Tool to retrieve a member by ID from Wix Members. Use when you need to fetch detailed information about a specific member. Note: Private members (default privacy status) are not returned for site visitor or member calls." }, { "slug": "WIX_GET_MEMBER_PRIVACY_SETTINGS", "name": "Get Member Privacy Settings", "description": "Tool to retrieve member privacy settings for a Wix site. Use when you need to check what privacy settings are currently configured, including whether members can make their profiles public." }, { "slug": "WIX_GET_MEMBERS_CUSTOM_FIELD_APPLICATIONS", "name": "Get Members Custom Field Applications", "description": "Tool to retrieve custom field applications for specified members. Use when you need to check which custom field applications apply to specific members." }, { "slug": "WIX_GET_OR_CREATE_BRANDS_BULK", "name": "Bulk Get Or Create Brands", "description": "Tool to bulk retrieve or create brands in Wix Stores catalog. Retrieves multiple brands by name, or creates them if they don't exist. Use when you need to ensure specific brands exist in the catalog." }, { "slug": "WIX_GET_PURCHASE_HISTORY", "name": "Get Purchase History", "description": "Tool to retrieve purchase history for your app on a site. Use when you need to view past purchases and verify upgrades. Note: The response does not include cancellation details. Site context is automatically derived from authentication." }, { "slug": "WIX_GET_ROLES_CUSTOM_FIELD_APPLICATIONS", "name": "Get Roles Custom Field Applications", "description": "Tool to retrieve custom field applications for specified roles. Use when you need to check which custom field applications apply to specific member roles." }, { "slug": "WIX_GET_ROLES_INFO", "name": "Get Roles Info", "description": "Tool to retrieve all available roles in the requesting Wix account, including predefined and custom roles. Use when you need to list all roles configured for the account." }, { "slug": "WIX_GET_SENDER_DETAILS", "name": "Get Sender Details", "description": "Tool to retrieve sender details for email marketing campaigns. Use when you need to fetch the sender's name and email address. Note: This endpoint is deprecated and has been superseded by the Get Default Sender Details endpoint." }, { "slug": "WIX_GET_SITE_PLUGINS_PLACEMENT_STATUS", "name": "Get Site Plugins Placement Status", "description": "Tool to get the placement status of your app's site plugins on the user's site. Use when you need to check whether your plugins are currently placed in slots on the user's site." }, { "slug": "WIX_GET_SITE_PROPERTIES", "name": "Get Site Properties", "description": "Tool to retrieve current snapshot of a site's properties including business profile, contact information, and business schedule. Use when you need to fetch site-level business information, contact details, or operating hours." }, { "slug": "WIX_IMPORT_FILE", "name": "Import File to Media Manager", "description": "Tool to import a file to Wix Media Manager using an external URL. Use when you need to add a file from an external source to the Media Manager. Note: imported files take time to process and are not immediately available (state=PENDING initially)." }, { "slug": "WIX_LIST_APP_PERMISSIONS", "name": "List App Permissions", "description": "Tool to retrieve all permissions for a specified Wix app. Use when you need to list the permissions your app requests when users install it on a site." }, { "slug": "WIX_LIST_APP_PLANS_BY_APP_ID", "name": "List App Plans By App ID", "description": "Tool to retrieve app plans by application ID, including pricing, tax settings, and currency details. Use when you need to fetch pricing plans for a specific Wix app. Note: Only returns activated plans; externally managed plans are excluded. For yearly plans, returns monthly payment amount (multiply by 12 for total)." }, { "slug": "WIX_LIST_CAMPAIGNS", "name": "List Email Marketing Campaigns", "description": "Tool to retrieve a list of email marketing campaigns, ordered by date_updated in descending order. Use when you need to get campaigns from Wix Email Marketing with optional filtering by status, visibility, or distribution status." }, { "slug": "WIX_LIST_CATALOGS", "name": "List Restaurant Catalogs", "description": "Tool to retrieve a list of restaurant catalogs from Wix Restaurants. Use when you need to get all catalogs for a restaurant location. Note: This API is deprecated and has been replaced with the Menus API." }, { "slug": "WIX_LIST_CONTACTS_FACETS", "name": "List Contacts Facets", "description": "Tool to list facets from the site's Contact List. Facets include labels, subscription statuses (email and SMS), and membership statuses. Use when you need to retrieve available contact categorization options with their counts." }, { "slug": "WIX_LIST_CURRENCIES", "name": "List Currencies", "description": "Tool to retrieve the list of available currencies from Wix Currency Converter. Use when you need to get all supported currencies with their ISO codes and symbols." }, { "slug": "WIX_LIST_CUSTOM_FIELDS", "name": "List Custom Fields", "description": "Tool to retrieve a list of custom fields and fields provided by the Members Area. Use when you need to fetch available custom field definitions for member profiles. Fields are ordered by section and creation date." }, { "slug": "WIX_LIST_DEFAULT_TAX_GROUPS", "name": "List Default Tax Groups", "description": "Tool to retrieve the list of default tax groups for a Wix site. Use when you need to fetch the default tax groups that are inherited by apps installed on the site." }, { "slug": "WIX_LIST_DEFAULT_TAX_GROUPS_BY_APP_IDS", "name": "List Default Tax Groups By App IDs", "description": "Tool to retrieve default tax groups for specific Wix apps by their app IDs. Use when you need to fetch predefined tax groups that are automatically assigned to products from specific apps." }, { "slug": "WIX_LIST_GROUP_REQUESTS", "name": "List Group Requests", "description": "Tool to list group requests across a Wix site. Use when you need to retrieve pending or processed requests for group creation. Only admins can see create group requests; members can access their own requests." }, { "slug": "WIX_LIST_INVOICES_LIST_BY_IDS", "name": "List Invoices by Order IDs", "description": "Tool to retrieve invoice IDs and external app IDs for multiple orders. Use when you need to get invoice information associated with one or more Wix eCommerce orders." }, { "slug": "WIX_LIST_MANUAL_TAX_MAPPINGS", "name": "List Manual Tax Mappings", "description": "Tool to retrieve up to 1,000 manual tax mappings from Wix. Use when you need to list custom tax rate configurations for specific tax group and region combinations. Results are sorted by createdDate in ascending order." }, { "slug": "WIX_LIST_MEMBER_FOLLOWING", "name": "List Member Following", "description": "Tool to retrieve the list of members followed by a given member in Wix Members. Use when you need to see which members a specific member is following. Note: This API is in Developer Preview and may be subject to change." }, { "slug": "WIX_LIST_MY_MEMBER_FOLLOWERS", "name": "List My Member Followers", "description": "Tool to retrieve the list of members who are following the current authenticated member in Wix Members. Use when you need to see which members follow the current user." }, { "slug": "WIX_LIST_SESSIONS", "name": "List Sessions", "description": "Tool to retrieve calendar sessions from Wix Bookings with filtering, sorting, and pagination. Use when you need to list booking sessions, event instances, or availability slots. Note: This endpoint is deprecated and may be replaced with newer Calendar V3 APIs." }, { "slug": "WIX_LIST_V4_CONTACTS", "name": "List V4 Contacts", "description": "Tool to retrieve a list of up to 1,000 contacts per request from Wix. Use when you need to fetch contact information with support for pagination and field filtering." }, { "slug": "WIX_LOGOUT", "name": "Logout", "description": "Tool to terminate a member's session and clear authentication cookies. Use when you need to log out a user from their Wix session. When postLogoutRedirectUri is provided, returns a 302 redirect response." }, { "slug": "WIX_PUBLISH_DRAFT", "name": "Publish Draft Schedule", "description": "Tool to publish a draft schedule for a Wix event. Use when you need to make all draft changes live and visible to site visitors. Requires 'Manage Events - all permissions' scope." }, { "slug": "WIX_QUERY_CATEGORIES", "name": "Query Bookings Categories", "description": "Tool to retrieve bookings service categories with optional filtering, sorting, and pagination. Use when you need to fetch categories that organize booking services in Wix Bookings." }, { "slug": "WIX_QUERY_CONTACTS", "name": "Query Contacts", "description": "Tool to retrieve up to 1,000 Wix contacts with advanced filtering, sorting, and pagination. Use when you need to search for specific contacts or retrieve contacts with custom field selections." }, { "slug": "WIX_QUERY_COUPONS", "name": "Query Coupons", "description": "Tool to retrieve a list of up to 100 coupons with optional paging, filtering, and sorting. Use when you need to fetch coupons from a Wix store." }, { "slug": "WIX_QUERY_DELETED_FORMS", "name": "Query Deleted Forms", "description": "Tool to retrieve deleted form schemas from the trash bin for a specified namespace. Use when you need to query forms that have been deleted but not permanently removed. Requires namespace filter." }, { "slug": "WIX_QUERY_E_COMMERCE_ORDERS", "name": "Query E-Commerce Orders", "description": "Tool to retrieve e-commerce orders with advanced filtering, sorting, and pagination. Use when you need to search for specific orders or retrieve order lists. Default behavior excludes orders with status 'INITIALIZED'." }, { "slug": "WIX_QUERY_EVENTS_EVENTS", "name": "Query Events (Deprecated GraphQL)", "description": "Tool to query events using the deprecated eventsEvents GraphQL endpoint. Returns event items and pagination info. Note: This endpoint is deprecated and will be replaced with Events V3's Query Events endpoint." }, { "slug": "WIX_QUERY_EXTENDED_BOOKINGS", "name": "Query Extended Bookings", "description": "Tool to retrieve up to 100 extended bookings with advanced filtering, sorting, and pagination. Use when you need to search for specific bookings with attendance details and customer action permissions. Default behavior returns 50 bookings sorted by id in ascending order." }, { "slug": "WIX_QUERY_FACETS_QUERY", "name": "Query Contact Facets", "description": "Tool to retrieve facets from the site's contact list by filter. Facets include labels and subscription statuses with aggregated contact counts. Use when you need to get contact segmentation data." }, { "slug": "WIX_QUERY_FOLDERS", "name": "Query Site Folders", "description": "Tool to retrieve a list of site folders with optional paging, filtering, and sorting. Use when you need to organize and manage Wix sites by folders in an account." }, { "slug": "WIX_QUERY_FORMS_FORM_SUBMISSIONS", "name": "Query Form Submissions by Namespace", "description": "Tool to retrieve form submissions from a specified namespace with optional pagination. Use when you need to query form submissions from Wix Forms or other form apps. The namespace filter is required." }, { "slug": "WIX_QUERY_GROUP_REQUESTS", "name": "Query Group Requests", "description": "Tool to query group creation requests with filtering, sorting, and pagination. Use when you need to retrieve pending, approved, or rejected group requests from site members." }, { "slug": "WIX_QUERY_INVENTORY", "name": "Query Inventory Items", "description": "Tool to retrieve a list of up to 1000 inventory items with optional paging, filtering, and sorting. Manages inventory per variant including stock quantities, availability status, and preorder information. Use when you need to fetch inventory data from a Wix Stores Catalog V3 site." }, { "slug": "WIX_QUERY_LOCATIONS", "name": "Query Locations", "description": "Tool to retrieve business locations with filtering, sorting, and pagination. Use when you need to search for specific locations or list all locations for a site." }, { "slug": "WIX_QUERY_LOYALTY_CHECKOUT_DISCOUNTS", "name": "Query Loyalty Checkout Discounts", "description": "Tool to retrieve loyalty checkout discounts with filtering, sorting, and pagination. Use when you need to query discounts applied at checkout using loyalty points." }, { "slug": "WIX_QUERY_MANUAL_TAX_MAPPINGS", "name": "Query Manual Tax Mappings", "description": "Tool to retrieve a list of up to 100 manual tax mappings with optional paging, filtering, and sorting. Use when you need to query custom tax rate configurations for specific tax group and region combinations from a Wix store." }, { "slug": "WIX_QUERY_MODERATION_RULES", "name": "Query Moderation Rules", "description": "Tool to retrieve moderation rules with optional filtering, sorting, and pagination. Use when you need to fetch rules that manage user-generated content moderation on a Wix site. Returns up to 1000 rules per request." }, { "slug": "WIX_QUERY_SUBMISSIONS_BY_NAMESPACE", "name": "Query Form Submissions by Namespace", "description": "Tool to retrieve form submissions from a specified namespace with advanced filtering, sorting, and pagination. Use when you need to query submissions with specific criteria like status, date ranges, or visibility. Namespace filter is required using $eq operator." }, { "slug": "WIX_QUERY_TAX_GROUPS", "name": "Query Tax Groups", "description": "Tool to retrieve a list of up to 100 tax groups with optional paging, filtering, and sorting. Only returns tax groups created by the site, not default tax groups. Use when you need to fetch custom tax group configurations from a Wix site." }, { "slug": "WIX_REGISTER_V2", "name": "Register V2", "description": "Tool to register a new member account on Wix site. Use when you need to create a new member with email and password authentication. Returns a session token that can be used to obtain access and refresh tokens." }, { "slug": "WIX_REMOVE_DELETED_FIELDS", "name": "Remove Deleted Fields", "description": "Tool to permanently remove deleted fields from a Wix form schema. Use when you need to clean up deleted fields from a form." }, { "slug": "WIX_REMOVE_INFO_SECTIONS_FROM_PRODUCTS_BY_FILTER", "name": "Bulk Remove Info Sections By Filter", "description": "Tool to bulk remove info sections from products matching a filter expression. Use when you need to detach information sections from multiple products based on specific criteria like visibility status, creation date, or other product attributes." }, { "slug": "WIX_REMOVE_TIP_FROM_ORDER", "name": "Remove Tip From Order", "description": "Tool to remove a tip from an existing eCommerce order. Use when you need to remove tip charges that were previously added to an order." }, { "slug": "WIX_RESCHEDULE_DRAFT", "name": "Reschedule Draft Schedule Items", "description": "Tool to reschedule all draft schedule items for an event at once. Use when you need to adjust the time of multiple draft schedule items simultaneously by specifying a new time zone." }, { "slug": "WIX_SEARCH_PRODUCTS", "name": "Search Products", "description": "Tool to search products in the Wix store catalog using text search, filters, and sorting. Returns up to 100 products per request with cursor-based pagination. Use when you need to find specific products or retrieve products matching certain criteria." }, { "slug": "WIX_SEND_RECOVERY_EMAIL", "name": "Send Recovery Email", "description": "Tool to send a password recovery email to a Wix member with a link to reset their password. Use when a member needs to reset their password. The site must be published for this to work. Site owners will reset their Wix account password instead of site-specific password." }, { "slug": "WIX_SET_CUSTOMIZATION_CHOICES", "name": "Set Customization Choices", "description": "Tool to set choices for a customization in Wix stores catalog. Use when you need to replace all existing choices with a new set of choices for a customization. This operation requires a valid GUID customization ID and at least one choice with a name." }, { "slug": "WIX_SET_DEFAULT_RECEIPT_PRESET", "name": "Set Default Receipt Preset", "description": "Tool to set a receipt preset as the default in Wix. Use when you need to designate a specific receipt preset as the default for receipt generation." }, { "slug": "WIX_UNASSIGN_EVENTS_BULK", "name": "Bulk Unassign Events from Categories", "description": "Tool to unassign an event from multiple categories in Wix Events. Use when you need to remove an event from one or more categories by providing the event ID and category IDs." }, { "slug": "WIX_UPDATE_BILLABLE_ITEMS_BULK", "name": "Bulk Update Billable Items", "description": "Tool to bulk update billable items in Wix. Use when you need to modify multiple billable items at once. Each item requires its ID, current revision number, and the fields to update." }, { "slug": "WIX_UPDATE_BULK_CUSTOMIZATIONS", "name": "Bulk Update Customizations", "description": "Tool to bulk update multiple customizations in Wix Stores Catalog V3. Use when you need to update properties of existing customizations such as name, type, choices, or settings. Each update requires the current revision number to prevent conflicts." }, { "slug": "WIX_UPDATE_BULK_STORAGE_ITEM_TAGS_BY_FILTER", "name": "Bulk Update Storage Item Tags By Filter", "description": "Tool to bulk update tags on storage items matching filter criteria. Use when you need to add or remove tags from multiple storage items at once based on filter conditions. If a tag appears in both assign and unassign, it will be assigned. This operation is asynchronous and triggers the Storage Item Tags Modified event." }, { "slug": "WIX_UPDATE_BUSINESS_CONTACT", "name": "Update Business Contact", "description": "Tool to update a site's business contact information including email, phone, fax, and address. Use when you need to modify the public business contact details displayed on a Wix site. Requires Manage Business Contact permission scope." }, { "slug": "WIX_UPDATE_BUSINESS_PROFILE", "name": "Update Business Profile", "description": "Tool to update a site's business profile including display name, description, logo, and business name. Use when you need to modify public business information. Only fields specified in the fields.paths array are updated." }, { "slug": "WIX_UPDATE_BUSINESS_SCHEDULE", "name": "Update Business Schedule", "description": "Tool to update a site's business schedule including regular operating hours and special exceptions. Use when you need to set or modify business hours, add holiday closures, or define special event hours. The update replaces the entire schedule, so include all desired periods in each request." }, { "slug": "WIX_UPDATE_CONTACTS_BULK", "name": "Bulk Update Contacts", "description": "Tool to bulk update multiple contacts with specified field values. Use when you need to update the same field(s) across multiple contacts matching a filter or search criteria. Only fields specified in fieldMask.paths will be updated." }, { "slug": "WIX_UPDATE_CONTENT_BY_KEY_BULK", "name": "Bulk Update Translation Content By Key", "description": "Tool to bulk update translation content by composite key (schemaId, entityId, locale). Use when updating translatable fields for multiple content items identified by their schema, entity, and locale combination. Triggers 'Content Updated' event on success." }, { "slug": "WIX_UPDATE_INVENTORY_ITEMS_BY_FILTER", "name": "Bulk Update Inventory Items By Filter", "description": "Tool to bulk update inventory items by filter criteria. Updates multiple inventory items matching the specified filter (e.g., by productId). Use when you need to change inventory tracking settings, stock status, or quantities for multiple items at once." }, { "slug": "WIX_UPDATE_INVENTORY_VARIANTS", "name": "Update inventory variants", "description": "Tool to update product inventory including quantity, stock status, and tracking settings per variant. Use when you need to modify inventory levels or stock configuration. The revision field must match the current value to prevent conflicts." }, { "slug": "WIX_UPDATE_LABELS", "name": "Update Question Entry Labels", "description": "Tool to set labels for a Wix FAQ question entry. Use when a question entry is updated and you need to modify its labels. This operation replaces all existing labels with the provided list." }, { "slug": "WIX_UPDATE_LOCALE_SETTINGS", "name": "Update Locale Settings", "description": "Tool to update a Wix site's locale configuration settings including auto-redirect behavior. Use when you need to modify locale settings such as enabling or disabling automatic visitor redirection based on language preferences. Note: This action cannot update a site's multilingual mode; use the Set Multilingual Mode action for that." }, { "slug": "WIX_UPDATE_OPERATION_GROUP_TAGS_BY_FILTER", "name": "Update Operation Group Tags By Filter", "description": "Tool to bulk update tags on operation groups using filter criteria. Use when you need to add or remove tags from multiple operation groups matching specific conditions. If a tag appears in both assign and unassign, it will be assigned." }, { "slug": "WIX_UPDATE_ORDERS_BULK", "name": "Bulk Update Orders", "description": "Tool to bulk update properties of up to 100 e-commerce orders. Use when you need to update order fields like archived status, buyer information, billing/shipping addresses, or custom fields. To remove a field, pass null; note that buyerInfo and contactDetails cannot be removed." }, { "slug": "WIX_UPDATE_ORDERS_UPDATE_TAGS", "name": "Bulk Update Order Tags", "description": "Tool to synchronously update tags on multiple orders by list of order IDs. Use when you need to add or remove tags from multiple orders at once. If a tag appears in both assignTags and unassignTags, it will be assigned." }, { "slug": "WIX_UPDATE_PRODUCTS_BY_FILTER", "name": "Bulk Update Products By Filter", "description": "Tool to bulk update multiple products matching filter criteria in Wix Stores. Use when you need to update the same field(s) across multiple products matching specific conditions. Cannot update slug, options, modifiers, or variantsInfo fields." }, { "slug": "WIX_UPDATE_RECEIPT_PRESET", "name": "Update Receipt Preset", "description": "Tool to update a receipt preset in Wix. Use when you need to modify receipt preset settings including name, custom fields, display settings, or extended fields. Requires the current revision number to prevent conflicting changes. Triggers a Receipt Preset Updated event." }, { "slug": "WIX_UPDATE_REFERRAL_PROGRAM", "name": "Update Referral Program", "description": "Tool to update a site's referral program configuration including name, rewards, and email settings. Use when you need to modify an existing referral program. The revision field is required to prevent conflicting updates." }, { "slug": "WIX_UPDATE_REVIEWS_MODERATE", "name": "Update Review Moderation Status", "description": "Tool to update the moderation status of a review. Use when you need to approve, reject, or change the moderation status of a specific review." }, { "slug": "WIX_UPDATE_REVIEWS_MODERATE2", "name": "Bulk Update Review Moderation Status", "description": "Tool to bulk update the moderation status of multiple reviews at once. All filtered reviews are updated to the same moderation status. Use when you need to moderate multiple reviews efficiently instead of updating them one by one." }, { "slug": "WIX_UPDATE_RULE", "name": "Update Moderation Rule", "description": "Tool to update a moderation rule in Wix Community Feedback Moderation. Use when you need to modify an existing rule's settings such as name, enabled status, or configuration. Requires the current revision number to prevent conflicts." }, { "slug": "WIX_UPDATE_STAFF_MEMBER_TAGS_BY_FILTER", "name": "Bulk Update Staff Member Tags By Filter", "description": "Tool to bulk update tags on Wix Bookings staff members by filter criteria. Use when you need to add or remove tags from multiple staff members matching specific conditions. If a tag appears in both assign and unassign, it will be assigned." }, { "slug": "WIX_UPDATE_STORAGE_ITEM_TAGS", "name": "Bulk Update Storage Item Tags", "description": "Tool to bulk update tags on multiple storage items in Wix automations. Use when you need to set public and/or private tags on multiple storage items at once. Requires 'Set Up Automations' permission." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "wix_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "wix_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Wix API key for authentication. You can generate an API key from your Wix account settings at https://www.wix.com/my-account/site-selector/?buttonText=Select%20Site&title=Select%20a%20Site&autoSelectOnSingleSite=true&actionUrl=https:%2F%2Fwww.wix.com%2Fdashboard%2F%7B%7BmetaSiteId%7D%7D%2Fapi-keys. API keys can be account-level or site-level. Site-level API keys only work when created from the site owner's account.", "required": true, "default": null } ], "optional": [ { "name": "generic_id", "displayName": "Account ID", "type": "string", "description": "Optional. Your Wix Account ID for account-level API calls. Do not use together with Site ID.", "required": false, "default": null }, { "name": "generic_id_2", "displayName": "Site ID", "type": "string", "description": "Optional. Your Wix Site ID for site-level API calls. Do not use together with Account ID.", "required": false, "default": null } ] } } } ] }, { "slug": "wiza", "name": "Wiza", "logo": "https://logos.composio.dev/api/wiza", "description": "Wiza helps you find and export accurate contact data for prospects from LinkedIn, providing verified emails, phone numbers, and enriched professional information.", "category": "sales & crm", "authSchemes": [ "API_KEY" ], "toolCount": 5, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WIZA_GET_CREDITS", "name": "Get API Credits", "description": "Tool to get the number of remaining API credits in your account. Returns available credits for emails, phone numbers, and company enrichment. Use when you need to check remaining API credit balance." }, { "slug": "WIZA_GET_INDIVIDUAL_REVEAL", "name": "Get Individual Reveal", "description": "Tool to get the status and results of an individual reveal by ID. Returns enriched contact data including email, phone, job title, and company information when the reveal is completed. Use when you need to check the status or retrieve results of a previously submitted individual reveal request." }, { "slug": "WIZA_GET_LIST", "name": "Get List Details", "description": "Tool to get the status and details of a list by its ID. Returns list metadata, status (queued, processing, completed), and statistics including enrichment level and email preferences. Use when you need to check the processing status or retrieve details of a specific list." }, { "slug": "WIZA_PROSPECT_SEARCH", "name": "Search Prospects", "description": "Tool to search for prospects matching specific filters. Returns count and sample profiles based on job title, location, company, industry, and other criteria. Use when you need to find prospects that match specific professional criteria." }, { "slug": "WIZA_START_INDIVIDUAL_REVEAL", "name": "Start Individual Reveal", "description": "Tool to start an individual reveal for real-time single contact enrichment. Provide name/company, email, or LinkedIn profile URL to get contact details including emails, phone numbers, and firmographic data. Use when you need to enrich a single contact in real-time." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wiza_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and go to Settings > API to generate your key. Contact hello@wiza.co if API access is not enabled.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wolfram_alpha_api", "name": "Wolfram Alpha Api", "logo": "https://logos.composio.dev/api/wolfram_alpha_api", "description": "Integrate computational knowledge into applications via Wolfram|Alpha's APIs.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 11, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WOLFRAM_ALPHA_API_ASYNC_POD_FETCH", "name": "Async Pod Fetch", "description": "Fetch a single asynchronous pod from Wolfram|Alpha Full Results API. Use this tool to retrieve individual pod computations that were marked as async in a Full Results query. When you query the Full Results API with async=true, pods that take longer to compute return async URLs containing 'id' and 's' tokens. Use those tokens with this tool to fetch the computed pod content. Typical workflow: (1) Query Full Results API with async=true parameter, (2) Parse response for async pod URLs, (3) Extract id and s tokens from URLs like 'asyncPod.jsp?id=MSPa...&s=13', (4) Use this tool with those tokens." }, { "slug": "WOLFRAM_ALPHA_API_ESTABLISH_CONNECTION", "name": "Establish Wolfram|Alpha Connection", "description": "Tool to store Wolfram|Alpha AppID into the connection credential store. Use when establishing or updating your AppID so that subsequent actions automatically include this credential." }, { "slug": "WOLFRAM_ALPHA_API_EXTRACT_RECALC_URL_TOKENS", "name": "Extract Recalculate URL & Tokens", "description": "Tool to extract the recalculate URL and id/s tokens from full Wolfram|Alpha results. Use when you need to follow up with recalc.jsp or relatedQueries.jsp calls." }, { "slug": "WOLFRAM_ALPHA_API_FULL_RESULTS_RECALCULATE", "name": "Full Results Recalculate", "description": "Recalculate a prior WolframAlpha Full Results query to retrieve additional computational results (pods). Use this action when: - A previous Full Results API query timed out or returned incomplete results - You have a recalculate URL or ID token from a previous query - You need to fetch more computational pods from the same query The action requires the 'id' token (obtained from EXTRACT_RECALC_URL_TOKENS or from a Full Results response). The 's' parameter is optional and often not needed. Returns raw XML containing the recalculated query results, which may include additional pods or error information." }, { "slug": "WOLFRAM_ALPHA_API_FULL_RESULTS_RELATED_QUERIES", "name": "Full Results Related Queries", "description": "Tool to fetch related query suggestions for a previous Full Results computation. Use after obtaining `id` and `s` from a Full Results API response." }, { "slug": "WOLFRAM_ALPHA_API_GET_APP_ID", "name": "Get Wolfram|Alpha AppID", "description": "Tool to fetch the Wolfram|Alpha AppID from credentials. Use when you need to verify the current AppID before making API calls." }, { "slug": "WOLFRAM_ALPHA_API_QUERY_LLM_API", "name": "Query LLM API", "description": "Tool to query Wolfram|Alpha LLM API for computed knowledge optimized for large language model consumption. Returns plain text results with query interpretations, computed data, and image URLs. Use when you need comprehensive computational knowledge formatted for AI agent processing." }, { "slug": "WOLFRAM_ALPHA_API_QUERY_SUMMARY_BOX", "name": "Query Summary Box", "description": "Tool to query the Summary Boxes API for pre-generated XHTML boxes summarizing Wolfram|Alpha knowledge. Use when you need formatted summary information for subjects like countries, chemicals, dates, or people. Requires a valid summary box path from Query Recognizer API." }, { "slug": "WOLFRAM_ALPHA_API_SHORT_ANSWERS_RESULT", "name": "Short Answers Result", "description": "Tool to fetch a concise textual answer from Wolfram|Alpha. Use when you need a short, direct response." }, { "slug": "WOLFRAM_ALPHA_API_SPOKEN_RESULTS_RESULT", "name": "Get Spoken Result", "description": "Tool to retrieve a spoken-style single-sentence result from Wolfram|Alpha. Use when you need a concise, conversational answer to a natural-language query." }, { "slug": "WOLFRAM_ALPHA_API_VALIDATE_QUERY", "name": "Validate Query", "description": "Tool to validate a Wolfram|Alpha query, returning parsing assumptions and warnings. Use when you need to check query parse before a full computation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wolfram_alpha_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "AppID", "type": "string", "description": "The unique AppID assigned to your application upon registration.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wonderchat", "name": "Wonderchat", "logo": "https://logos.composio.dev/api/wonderchat", "description": "Instantly build AI Chatbots with your knowledge base. Create custom chatbots powered by your content and data.", "category": "ai chatbots", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WONDERCHAT_EXPORT_CHATLOGS", "name": "Export Chatlogs", "description": "Tool to export conversation data from your chatbot(s) for analysis, reporting, or compliance purposes. Use when you need to retrieve historical chat logs with optional filters by chatbot, date range, or export all conversations." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wonderchat_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Keys from your Settings at https://app.wonderchat.io/settings", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "woodpecker_co", "name": "Woodpecker Co", "logo": "https://logos.composio.dev/api/woodpecker_co", "description": "Woodpecker.co is a cold email tool that automates personalized email outreach and follow-ups for sales teams and agencies.", "category": "drip emails", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WOODPECKER_CO_ADD_PROSPECTS_TO_CAMPAIGN_V1", "name": "Add prospects to a campaign (v1)", "description": "Tool to add one or multiple prospects to a campaign. Use when you need to import prospects into a campaign's contact list." }, { "slug": "WOODPECKER_CO_DELETE_CAMPAIGN_STEP", "name": "Delete Campaign Step", "description": "Tool to delete a non-initial campaign step that hasn't processed any prospects. Use when the campaign is in DRAFT or EDITED status and the step is unused." }, { "slug": "WOODPECKER_CO_GET_PROSPECTS_IN_CAMPAIGNS_V1", "name": "Get Prospects in Campaigns (v1)", "description": "Tool to retrieve prospects enrolled in specified campaigns. Use when you need to list prospects for given campaign IDs." }, { "slug": "WOODPECKER_CO_LIST_AVAILABLE_WEBHOOK_EVENTS", "name": "List Available Webhook Events", "description": "Tool to list all webhook event names supported by Woodpecker. Use before subscribing to ensure valid 'event' values (static catalog from docs)." }, { "slug": "WOODPECKER_CO_LIST_CAMPAIGNS_V1", "name": "List Campaigns V1", "description": "Tool to list campaigns. Use when you need to fetch campaigns with optional status or ID filters." }, { "slug": "WOODPECKER_CO_PAUSE_CAMPAIGN", "name": "Pause Campaign", "description": "Tool to pause a campaign. Use when you need to temporarily stop sending prospects until resumed." }, { "slug": "WOODPECKER_CO_RUN_CAMPAIGN", "name": "Run Campaign", "description": "Tool to run a campaign and set its status to RUNNING. Use when you want to activate a configured campaign after final review." }, { "slug": "WOODPECKER_CO_STOP_CAMPAIGN", "name": "Stop Campaign", "description": "Tool to stop a campaign. Use when you need to halt prospect contacts by setting campaign status to STOPPED." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "woodpecker_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Woodpecker API Key", "type": "string", "description": "The API key used for authenticating requests to the Woodpecker API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wordpress", "name": "Wordpress", "logo": "https://logos.composio.dev/api/wordpress", "description": "WordPress.com API for managing posts, media, comments, and sites on WordPress.com hosted blogs", "category": "content & files", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "wordpress_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "posts,media,comments,sites" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "workable", "name": "Workable", "logo": "https://logos.composio.dev/api/workable", "description": "Workable is an all-in-one HR software platform that streamlines hiring, employee data management, time tracking, and payroll.", "category": "human resources", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 37, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WORKABLE_CREATE_EMPLOYEE", "name": "Create Employee", "description": "Tool to create an employee in your Workable account. Use when adding a new hire to employee management system. Employee can be created in draft state (unpublished) or published state (active). Requires w_employees scope." }, { "slug": "WORKABLE_DELETE_DEPARTMENT", "name": "Delete Department", "description": "Tool to delete a department. Use when removing an obsolete or restructured department after confirming dependent resources." }, { "slug": "WORKABLE_DELETE_SUBSCRIPTION", "name": "Delete Subscription", "description": "Tool to unsubscribe from an event by deleting a webhook subscription. Use when you need to stop receiving notifications for a specific event." }, { "slug": "WORKABLE_GET_ACCOUNT", "name": "Get Account", "description": "Tool to return the specified account. Use when you need account metadata by subdomain after listing available accounts." }, { "slug": "WORKABLE_GET_ACCOUNTS", "name": "Get Accounts", "description": "Retrieves all Workable accounts (organizations) accessible to the authenticated user. Returns account details including ID, name, subdomain, description, summary, and website URL. Use this action to discover which Workable accounts you have access to, or to obtain account identifiers needed for other API operations. Requires 'r_jobs' scope." }, { "slug": "WORKABLE_GET_BACKGROUND_CHECK_PACKAGES", "name": "Get Background Check Packages", "description": "Tool to retrieve a list of available background check packages from a specified provider. Use after identifying the provider to view available package options." }, { "slug": "WORKABLE_GET_BACKGROUND_CHECK_PROVIDERS", "name": "Get Background Check Providers", "description": "Retrieves a list of background check providers integrated with your Workable account. Returns provider details including id, name, integration type, connection status, and logo URL. If no providers are configured, returns an empty list." }, { "slug": "WORKABLE_GET_CANDIDATES", "name": "Get Candidates", "description": "Retrieve a list of candidates across all jobs in the organization. Returns candidate details including name, email, job, stage, and status. Use this to: list all candidates, filter by specific job/stage/email, or find candidates created/updated after a certain date. Supports pagination via the 'limit' parameter (max 100 per page). For complete candidate details, use the individual candidate endpoint." }, { "slug": "WORKABLE_GET_EMPLOYEE", "name": "Get Employee", "description": "Tool to retrieve detailed information for a specific employee by ID. Use when you need complete employee data including personal details, contact info, employment history, and more. Requires r_employees scope and may need member_id parameter for account-level tokens." }, { "slug": "WORKABLE_GET_EVENTS", "name": "Get Events", "description": "Retrieve a collection of scheduled events (calls, interviews, meetings) from the Workable account. Supports filtering by event type, date range, candidate, job, or team member. Use pagination parameters (limit, since_id, max_id) for large result sets. By default, cancelled events are excluded unless explicitly included." }, { "slug": "WORKABLE_GET_JOBS", "name": "Get Jobs", "description": "Retrieves a paginated list of jobs from your Workable account. Returns job details including title, state, department, location, and salary information. Use this to search for jobs by state (draft/published/closed/archived), filter by creation/update dates, or fetch additional fields like descriptions and requirements." }, { "slug": "WORKABLE_GET_LEGAL_ENTITIES", "name": "Get Legal Entities", "description": "Tool to retrieve a collection of your account legal entities. Use after confirming valid authentication and enabling Employee Management." }, { "slug": "WORKABLE_GET_MEMBERS", "name": "Get Members", "description": "Retrieve a paginated list of Workable account members with their roles and permissions. This action fetches team members from your Workable account, including admins, standard users, reviewers, and inactive members. You can filter by role, email, name, or status, and paginate through results. Use this to list collaborators, verify member access levels, or find specific team members by email or name." }, { "slug": "WORKABLE_GET_RECRUITERS", "name": "Get recruiters", "description": "Retrieves external recruiters from your Workable account. Returns all external recruiters by default, or filter by job shortcode to get recruiters collaborating on a specific job. Requires r_jobs scope." }, { "slug": "WORKABLE_GET_REQUISITIONS", "name": "Get Requisitions", "description": "Tool to retrieve a collection of requisitions in the account. Use after authentication succeeds." }, { "slug": "WORKABLE_GET_STAGES", "name": "Get Stages", "description": "Tool to retrieve a collection of your recruitment pipeline stages. Use when you need to list all available stages before managing candidates or pipelines." }, { "slug": "WORKABLE_GET_SUBSCRIPTIONS", "name": "Get Subscriptions", "description": "Retrieves all webhook subscriptions configured in your Workable account. Use this tool to: - List all active webhook subscriptions that receive event notifications - Verify which events your webhooks are listening to - Check the target URLs and filters configured for each subscription - Audit your webhook configuration Requires 'r_candidates' or 'r_employees' scope. No parameters needed." }, { "slug": "WORKABLE_LIST_CUSTOM_ATTRIBUTES", "name": "List Custom Attributes", "description": "Tool to retrieve all custom attributes configured in the Workable account. Returns attribute configuration including ID, type, enabled status, labels, and hints. Use this action to discover available custom attributes before creating or updating candidates, jobs, or other entities that support custom fields. Requires 'r_jobs' scope." }, { "slug": "WORKABLE_LIST_DEPARTMENTS", "name": "List Departments", "description": "Tool to retrieve all departments from your Workable account. Use when you need to view the organizational structure or get department identifiers. Requires r_account scope." }, { "slug": "WORKABLE_LIST_DISQUALIFICATION_REASONS", "name": "List Disqualification Reasons", "description": "Tool to retrieve a collection of account's disqualification reasons. Use when you need to list all available disqualification reasons before disqualifying candidates." }, { "slug": "WORKABLE_LIST_EMPLOYEE_FIELDS", "name": "List Employee Fields", "description": "Tool to retrieve a collection of your account's employee field definitions. Use when you need to understand available employee data fields before creating or updating employee records." }, { "slug": "WORKABLE_LIST_EMPLOYEES", "name": "List Employees", "description": "Tool to retrieve a collection of account employees. Use when you need to list, search, or filter employees by name, email, or organizational structure. Supports pagination via limit and offset parameters. Required scope: r_employees." }, { "slug": "WORKABLE_LIST_PERMISSION_SETS", "name": "List Permission Sets", "description": "Tool to retrieve a collection of your account permission sets. Use when you need to list available permission sets before assigning permissions to members. Requires r_account scope." }, { "slug": "WORKABLE_LIST_PUBLIC_JOBS", "name": "List Public Jobs", "description": "Tool to return a collection of public jobs for an account. Use when you need to fetch publicly available job listings by subdomain. No authentication required for this endpoint." }, { "slug": "WORKABLE_LIST_PUBLIC_LOCATIONS", "name": "List Public Locations", "description": "Tool to retrieve a collection of locations where a Workable account has public job postings. Use when you need to discover which geographic locations have available positions for a specific account. No authentication required." }, { "slug": "WORKABLE_LIST_TIMEOFF_BALANCES", "name": "List Time Off Balances", "description": "Retrieves all time off balances for an employee across all time off categories. Returns detailed balance information including available units, used units, carry-over amounts, and tracking units (days/hours). Use this to check remaining vacation days, sick leave, or other time off allowances for an employee. When using account-level token, employee_id must be provided; employee-level tokens automatically use the authenticated employee's balances." }, { "slug": "WORKABLE_LIST_TIMEOFF_CATEGORIES", "name": "List Time Off Categories", "description": "Tool to retrieve all time off categories configured for your account. Use when you need to view available time off types before managing employee time off requests." }, { "slug": "WORKABLE_LIST_WORK_SCHEDULES", "name": "List Work Schedules", "description": "Tool to retrieve a collection of work schedules configured in your Workable account. Use when you need to list all available work schedules, including their weekly hours, work days, and configurations." }, { "slug": "WORKABLE_POST_BACKGROUND_CHECK", "name": "Update Background Check Status", "description": "Updates the status and results of an existing background check in a candidate's timeline. This tool is designed for background check providers to push status updates (pending, consented, completed, declined, expired) and results back to Workable after initiating a background check. Use this action when: - A candidate has consented to or declined a background check request - Background check results are complete and need to be injected into the candidate's timeline - The status of an ongoing background check has changed - Attaching final reports and structured results to a completed check Prerequisites: Requires a valid background_check_id from an existing background check request that was previously created through Workable's background check provider integration. Note: Uses PUT request to /checks/{background_check_id} endpoint (despite the 'Post' naming)." }, { "slug": "WORKABLE_POST_DEPARTMENT_MERGE", "name": "Merge Department", "description": "Tool to merge a department into another. Use after confirming both department IDs and optional force flag." }, { "slug": "WORKABLE_POST_DEPARTMENTS", "name": "Create Department", "description": "Tool to create a department in your account. Use when you need to add a new department for organizing teams under your Workable account." }, { "slug": "WORKABLE_POST_MEMBER_ENABLE", "name": "Enable Member", "description": "Enable (restore) a deactivated Workable account member to active status. This action reactivates a previously deactivated member, restoring their access to the Workable account. The operation is idempotent - enabling an already active member will succeed without error. Requires the 'w_members' scope. Returns HTTP 204 No Content on success." }, { "slug": "WORKABLE_POST_MEMBERS_INVITE", "name": "Invite Member", "description": "Tool to invite a member to your Workable account. Use when sending an invitation email." }, { "slug": "WORKABLE_PUT_DEPARTMENTS", "name": "Update Department", "description": "Tool to update an existing department in your account. Use when renaming a department or changing its parent after confirming its ID." }, { "slug": "WORKABLE_PUT_MEMBERS", "name": "Update Member", "description": "Updates a Workable account member's details including roles, name, headline, email, and collaboration rules. Requires member ID and roles array. Use this to modify existing member information such as changing permissions, updating contact details, or adjusting collaboration settings." }, { "slug": "WORKABLE_UPDATE_EMPLOYEE", "name": "Update Employee", "description": "Tool to update an existing employee in Workable. Use when you need to modify employee details such as job title, contact information, department, or other employee attributes. Requires employee ID and member ID." }, { "slug": "WORKABLE_UPLOAD_EMPLOYEE_DOCUMENTS", "name": "Upload Employee Documents", "description": "Tool to upload a list of documents for a specific employee. Use when you need to attach documents (contracts, forms, etc.) to an employee's record. Required scope: w_employees." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "workable_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "r_account,r_jobs,r_candidates,w_candidates,r_employees" } ] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Workable Account Subdomain", "type": "string", "description": "The subdomain of the Workable account, used to construct the base URL.", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "workable_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Workable Account Subdomain", "type": "string", "description": "The subdomain of the Workable account, used to construct the base URL.", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Workable API Key", "type": "string", "description": "The API key generated from the Workable account.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "workday", "name": "Workday", "logo": "https://logos.composio.dev/api/workday", "description": "Workday is a cloud-based enterprise resource planning (ERP) software that provides comprehensive solutions for human capital management, financial management, and analytics", "category": "human resources", "authSchemes": [ "OAUTH2" ], "toolCount": 497, "triggerCount": 13, "version": "20260703_01", "tools": [ { "slug": "WORKDAY_CANCEL_BUSINESS_PROCESS_EVENT", "name": "Cancel Business Process Event", "description": "Cancels an in-progress business process event. Use this to terminate a business process before it completes. The optional comment is preserved on the event record. The caller must have permission to cancel the event under Workday's security model for the business process type." }, { "slug": "WORKDAY_CLOSE_REQUEST", "name": "Close Request", "description": "Closes a specified request with a given resolution. Security is evaluated based on the request event awaiting the processing person's action. If ``workdayObjectValue`` is provided, ensure the user has View permission on the referenced Workday Object." }, { "slug": "WORKDAY_CREATE_BUSINESS_TITLE_CHANGE", "name": "Create Business Title Change", "description": "Creates a business title change instance for a worker via the Workday Common API v1. Use when you need to initiate a business title change request for an employee, setting the proposed new business title." }, { "slug": "WORKDAY_CREATE_COMPENSATION_SCORECARD", "name": "Create Compensation Scorecard", "description": "Creates a new Compensation Scorecard on Workday's Compensation v3 API. Use this to introduce a new merit-and-bonus evaluation template — for example, when modeling FY-level goals or rolling out a refreshed scoring structure to managers. Secured by: Set Up: Merit and Bonus. Required body fields: scorecardName, effectiveDate, and a non-empty defaultScorecardGoals[] (each entry needs goalName and goalWeight). scorecardProfiles[] is optional but each profile must specify eligibilityRule.id and at least one profileScorecardGoals[] entry when supplied." }, { "slug": "WORKDAY_CREATE_CUSTOM_FIELD_TYPE", "name": "Create Custom Field Type", "description": "Creates a new custom field type in Workday's custom object configuration store. Use this when you need to register a new field type (e.g. a list of custom values, a numeric field with bespoke validation) that custom object definitions can subsequently reference via their ``fields`` collection." }, { "slug": "WORKDAY_CREATE_CUSTOM_FIELD_TYPE_LIST_VALUE", "name": "Create Custom Field Type List Value", "description": "Adds a single list value to a custom list field type used by custom object definitions. Use this when you need to extend the set of selectable values exposed by a custom list field (for example, a \"Region\" field whose options grow over time)." }, { "slug": "WORKDAY_CREATE_CUSTOM_OBJECT", "name": "Create Custom Object", "description": "Creates (or updates) custom object instance(s) attached to a Workday business object. The same endpoint serves both single-instance custom objects (at most one instance per business object, e.g. a worker's Parking Space) and multi-instance custom objects (many instances per business object, e.g. a worker's Stock Grants). The custom object's definition determines the mode; bulk=true accepts an array body and is typically used with multi-instance definitions." }, { "slug": "WORKDAY_CREATE_CUSTOM_OBJECT_DEFINITION_CONDITION_RULE", "name": "Create Custom Object Definition Condition Rule", "description": "Adds a condition rule to an existing custom object definition. Use this when you need to attach a visibility, edit-restriction, or business-logic rule to the custom object before it is activated." }, { "slug": "WORKDAY_CREATE_CUSTOM_OBJECT_DEFINITION_FIELD", "name": "Create Custom Object Definition Field", "description": "Adds a field to an existing custom object definition. Use this once a custom object definition is created and you need to populate its schema with individual data fields (text, numeric, list-of-values, etc.) prior to activation." }, { "slug": "WORKDAY_CREATE_CUSTOM_OBJECT_DEFINITION_VALIDATION", "name": "Create Custom Object Definition Validation", "description": "Adds a validation to an existing custom object definition. Use this to attach data-quality / business-rule validations to a custom object before it is activated (for example, \"Effective Date must be in the future\" or \"Amount must be greater than zero\")." }, { "slug": "WORKDAY_CREATE_EXPENSE_ENTRY", "name": "Create Expense Entry", "description": "Creates a Quick Expense entry in Workday Expense v1. The ``date`` (Transaction Date) and ``expenseItem`` fields are required; merchant, memo, amount and receipt attachments are optional but typically supplied. Use this when an LLM needs to record a fresh expense on behalf of a worker before it is later attached to an expense report." }, { "slug": "WORKDAY_CREATE_EXPENSE_ENTRY_ATTACHMENT", "name": "Create Expense Entry Attachment", "description": "Creates a new attachment (e.g. receipt image) on an existing expense entry in Workday Expense v1. Workday enforces a 32 MB maximum file size; the file content is sent base64-encoded in ``attachmentContent``. Use this when an LLM workflow needs to attach evidence (a scanned receipt, a PDF invoice) to a previously created Quick Expense." }, { "slug": "WORKDAY_CREATE_EXPENSE_REPORT", "name": "Create Expense Report", "description": "Creates a new expense report in Workday Expense v1. A report acts as the container for one or more expense report lines (which can in turn be backed by Quick Expenses, credit card transactions, or travel booking records). Use this as the first step in a \"build → fill → submit\" expense workflow. Use Create Expense Report Line to populate lines, then Submit Expense Report to send it for approval." }, { "slug": "WORKDAY_CREATE_EXPENSE_REPORT_LINE", "name": "Create Expense Report Line", "description": "Creates an expense report line on an existing expense report in Workday Expense v1. Lines can be created directly with date / expense item / amount, or by referencing an existing Quick Expense, credit card transaction, or travel booking record to inherit its values. Use this after Create Expense Report to populate the report's lines before submitting it for approval." }, { "slug": "WORKDAY_CREATE_HOME_CONTACT_CHANGE_ADDRESS", "name": "Create Home Contact Change Address", "description": "Creates a new address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_HOME_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Create Home Contact Change Email Address", "description": "Creates a new email address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Home Email, Self-Service: Home Email. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_HOME_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Create Home Contact Change Instant Messenger", "description": "Creates a new instant messenger staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_HOME_CONTACT_CHANGE_PHONE_NUMBER", "name": "Create Home Contact Change Phone Number", "description": "Creates a new phone number staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_HOME_CONTACT_CHANGE_WEB_ADDRESS", "name": "Create Home Contact Change Web Address", "description": "Creates a new web address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Home Web Address, Self-Service: Home Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_JOB_CHANGE_WORKER", "name": "Create Job Change for Worker", "description": "Creates a job change instance for a worker in Workday with specified data. Use when initiating organizational, supervisory, or job assignments changes for employees. The job change requires a valid effective date and optionally accepts job change reason, supervisory organization, job, location, and template references." }, { "slug": "WORKDAY_CREATE_MENTORSHIP_FOR_ME", "name": "Create Mentorship For Me", "description": "Creates a mentorship for the current processing worker, who is set as the mentee. Use when a worker wants to self-create a mentorship with a chosen mentor and type." }, { "slug": "WORKDAY_CREATE_MENTORSHIP_FOR_WORKER", "name": "Create Mentorship For Worker", "description": "Creates a new mentorship between two workers. Use when a manager or admin needs to set up a mentor / mentee relationship; if Manage Mentorship has an approval step, the mentorship is not created until the mentorship event is approved." }, { "slug": "WORKDAY_CREATE_MESSAGE_TEMPLATE", "name": "Create Message Template", "description": "Creates a new message template. Use when configuring a new notification template (e.g. a hiring email or push notification) that other Workday processes will reference by ID. Workday returns the newly created template including its assigned ID." }, { "slug": "WORKDAY_CREATE_ORGANIZATION_ASSIGNMENT_CHANGE", "name": "Create Organization Assignment Change", "description": "Creates a new change organization assignment event for a specific filled or unfilled position. Returns a new change organization assignment ID that must be supplied in subsequent requests (sub-resource GETs / PATCHes, and POST /submit) that update or fetch information about this event. Use this action to initiate an organization assignment change (move a worker between business units, companies, cost centers, regions, etc.) before submitting it." }, { "slug": "WORKDAY_CREATE_ORGANIZATION_GOAL", "name": "Create Organization Goal", "description": "Secured by: Worker Data: Organization Goals Scope: Performance Enablement. Use when you need to create this Workday resource via the Performance Enablement REST API. The spec's request body schema for this op resolves to no documented properties; pass a free-form JSON object via the `body` field matching Workday's public field names." }, { "slug": "WORKDAY_CREATE_PAYROLL_INPUTS", "name": "Create Payroll Inputs", "description": "Creates a single payroll input instance with the specified data. At minimum, specify worker, payComponent, and startDate. If a position-based payComponent is used, position is required. If ongoing is false, endDate is required. If inputDetails is specified, the type field is required for each detail." }, { "slug": "WORKDAY_CREATE_PROSPECT", "name": "Create Prospect", "description": "Creates a single prospect instance with the specified data. In the request body, specify at least the required field `candidate.name.country.id`. The Recruiting Name Components configuration might require additional fields for `candidate.name`; see the Recruiting Name Components tab on the Maintain Name Components by Country task. Scope: Recruiting. Secured by: Create External Prospects, Set Up: External Career Site Access." }, { "slug": "WORKDAY_CREATE_PROSPECT_EDUCATION", "name": "Create Prospect Education", "description": "Creates an education entry for the specified prospect. Adds a single education (candidateEducationDetails) instance under the prospect. Workday requires `schoolName` at minimum. Scope: Recruiting. Secured by: Create External Prospects." }, { "slug": "WORKDAY_CREATE_PROSPECT_EXPERIENCE", "name": "Create Prospect Experience", "description": "Creates a work experience entry for the specified prospect. Adds a single experience (prospectExperienceDetails) instance under the prospect. Workday requires `companyName`, `title`, and `startYear` at minimum. Scope: Recruiting. Secured by: Create External Prospects." }, { "slug": "WORKDAY_CREATE_PROSPECT_SKILL", "name": "Create Prospect Skill", "description": "Creates a skill entry for the specified prospect. Adds a single skill (candidateSkillItemDetails) instance under the prospect. Workday requires `name` at minimum. Scope: Recruiting. Secured by: Create External Prospects." }, { "slug": "WORKDAY_CREATE_REQUEST", "name": "Create Request", "description": "Creates a new request with the given data. Required fields depend on the request type — use the 'Create Requests' task in Workday or GET /types/{ID} to discover them. Secured by the processing person's Initiate access. Note: the Workday spec advertises multipart/form-data, but this action sends JSON because the schema body's required parts are simple JSON. Use a separate multipart upload action for attachment use cases." }, { "slug": "WORKDAY_CREATE_SCORECARD_RESULT", "name": "Create Scorecard Result", "description": "Creates a new Scorecard Result instance on Workday's Compensation v3 API. Use this when initiating an evaluation cycle against an existing Compensation Scorecard — for example, kicking off merit-and-bonus scoring for an employee or team. Secured by: Set Up: Merit and Bonus. Required body fields: compensationScorecard / scorecardID (the scorecard ID returned by Get Compensation Scorecards) and evaluationDate." }, { "slug": "WORKDAY_CREATE_SUCCESSION_PLAN", "name": "Create Succession Plan", "description": "Creates a new succession plan instance for a position. Specify a valid position ID; the position must not already have an active succession plan." }, { "slug": "WORKDAY_CREATE_TAX_RATE", "name": "Create Tax Rate", "description": "Creates a single company SUI (State Unemployment Insurance) rate. At a minimum, specify companyInstance, stateInstance, startDate, and taxCode; supply applicableRate to override the default authority rate or exempt to mark the company as exempt." }, { "slug": "WORKDAY_CREATE_TIME_OFF_REQUEST", "name": "Create Time Off Request", "description": "Creates a time off request for the specified worker and initiates the business process. Use Get Worker Time Off Details to find valid time off type IDs (e.g., Vacation, Sick Leave) from the worker's existing time off entries, and Get Current User to get the authenticated worker's ID. Note: This endpoint works with time off types, not Leave of Absence types." }, { "slug": "WORKDAY_CREATE_WORK_CONTACT_CHANGE_ADDRESS", "name": "Create Work Contact Change Address", "description": "Creates a new address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_WORK_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Create Work Contact Change Email Address", "description": "Creates a new email address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_WORK_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Create Work Contact Change Instant Messenger", "description": "Creates a new instant messenger staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_WORK_CONTACT_CHANGE_PHONE_NUMBER", "name": "Create Work Contact Change Phone Number", "description": "Creates a new phone number staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_WORK_CONTACT_CHANGE_WEB_ADDRESS", "name": "Create Work Contact Change Web Address", "description": "Creates a new web address staged by the parent business process event. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_CREATE_WORKER_ANYTIME_FEEDBACK_EVENT", "name": "Create Worker Anytime Feedback Event", "description": "Creates a single feedback given event instance about the specified worker. Use when you need to create this Workday resource via the Performance Enablement REST API. The spec's request body schema for this op resolves to no documented properties; pass a free-form JSON object via the `body` field matching Workday's public field names." }, { "slug": "WORKDAY_CREATE_WORKER_EXPLICIT_SKILLS", "name": "Create Worker Explicit Skills", "description": "Saves the skills a worker has, creating explicit-skill usage instances. Secured by: Self-Service: Skills Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_CREATE_WORKER_REQUESTED_FEEDBACK_ON_SELF_EVENT", "name": "Create Worker Requested Feedback On Self Event", "description": "Creates a single self-requested feedback event instance for the specified worker. Use when you need to create this Workday resource via the Performance Enablement REST API. The spec's request body schema for this op resolves to no documented properties; pass a free-form JSON object via the `body` field matching Workday's public field names." }, { "slug": "WORKDAY_CREATE_WORKER_SKILL_ITEMS", "name": "Create Worker Skill Items", "description": "Creates skill items in bulk for the specified worker. Secured by: Person Data: Skills, Self-Service: Skills Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_DELETE_COMPENSATION_SCORECARD", "name": "Delete Compensation Scorecard", "description": "Deletes a Compensation Scorecard with the specified ID from Workday's Compensation v3 API. Use when retiring an obsolete scorecard template or cleaning up duplicates. Workday rejects the call (HTTP 400) if the scorecard is referenced by existing Scorecard Results. Secured by: Set Up: Merit and Bonus. Workday returns no body on success, so the action surfaces a boolean confirmation plus the deleted ID." }, { "slug": "WORKDAY_DELETE_CUSTOM_OBJECT", "name": "Delete Custom Object", "description": "Deletes a custom object instance. Specify either the extended Workday object ID or the custom object's own ID. The same endpoint serves both single-instance and multi-instance custom object definitions." }, { "slug": "WORKDAY_DELETE_CUSTOM_OBJECT_DEFINITION_CONDITION_RULE", "name": "Delete Custom Object Definition Condition Rule", "description": "Removes a condition rule from a custom object definition. Use this when a previously attached visibility or business-logic rule is no longer needed on the custom object." }, { "slug": "WORKDAY_DELETE_CUSTOM_OBJECT_DEFINITION_VALIDATION", "name": "Delete Custom Object Definition Validation", "description": "Removes a validation from a custom object definition. Use this when a previously attached data-quality check is no longer appropriate for the custom object (for example, when relaxing a required-field rule)." }, { "slug": "WORKDAY_DELETE_EXPENSE_ENTRY", "name": "Delete Expense Entry", "description": "Deletes a Quick Expense entry from Workday Expense v1 by its Workday Identifier (WID). The entry is permanently removed and cannot be restored through the REST API. Use this only when an entry was created in error or is no longer needed; for entries already attached to a submitted report, deletion may be blocked by Workday's business rules." }, { "slug": "WORKDAY_DELETE_HOME_CONTACT_CHANGE_ADDRESS", "name": "Delete Home Contact Change Address", "description": "Remove the specified address. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_HOME_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Delete Home Contact Change Instant Messenger", "description": "Remove the specified instant messenger. If this instant messenger existed before the start of the current business process, it won't be removed from the target Person until the parent business process. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_HOME_CONTACT_CHANGE_PHONE_NUMBER", "name": "Delete Home Contact Change Phone Number", "description": "Remove the specified phone number. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_HOME_CONTACT_CHANGE_WEB_ADDRESS", "name": "Delete Home Contact Change Web Address", "description": "Remove the specified web address. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Home Web Address, Self-Service: Home Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_PAYROLL_INPUT", "name": "Delete Payroll Input", "description": "Deletes an existing payroll input instance with the specified Workday ID. Use this action to remove a previously created payroll input. The Pay Component Segment Security configuration applies to this operation — callers must have delete permission for the pay component on the input. Workday returns an empty body on success; the action wraps that into a small confirmation payload." }, { "slug": "WORKDAY_DELETE_SCORECARD_RESULT", "name": "Delete Scorecard Result", "description": "Deletes the Scorecard Result with the specified ID from Workday's Compensation v3 API. Use when an evaluation needs to be retracted before it has been completed or when cleaning up duplicate / mistaken Scorecard Result instances. Secured by: Set Up: Merit and Bonus. Workday returns no body on success, so the action surfaces a boolean confirmation plus the deleted ID." }, { "slug": "WORKDAY_DELETE_WORK_CONTACT_CHANGE_ADDRESS", "name": "Delete Work Contact Change Address", "description": "Remove the specified address. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_WORK_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Delete Work Contact Change Email Address", "description": "Remove the specified email address. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_WORK_CONTACT_CHANGE_PHONE_NUMBER", "name": "Delete Work Contact Change Phone Number", "description": "Remove the specified phone number. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_DELETE_WORK_CONTACT_CHANGE_WEB_ADDRESS", "name": "Delete Work Contact Change Web Address", "description": "Remove the specified web address. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. Use this action when integrating Workday's person v4 API and you need to delete this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_DENY_BUSINESS_PROCESS_EVENT_STEP", "name": "Deny Business Process Event Step", "description": "Denies the specified business process event step (Approval step type). Use this when an approver decides to deny a step — the business process transitions according to the tenant's denial routing. The caller must be in the awaiting-person list for the step." }, { "slug": "WORKDAY_GET_ABSENCE_BALANCE", "name": "Get Absence Balance", "description": "Retrieves balance information for a specific worker's absence plan. This action returns balance details including the quantity of hours/days available, the unit of measurement (hours/days), effective date, and related metadata for a worker's time off or leave of absence plan. Use this to check how much time off a worker has remaining for a specific absence plan at a given point in time." }, { "slug": "WORKDAY_GET_ABSENCE_MANAGEMENT_WORKER", "name": "Get Absence Management Worker", "description": "Retrieves a single worker (with current staffing information) as exposed by absenceManagement. Accepts either a worker Workday ID or the literal 'me' sentinel for the authenticated user. Use as a prerequisite for absence-specific endpoints that need a worker ID." }, { "slug": "WORKDAY_GET_ADDITIONAL_NAMES", "name": "Get Additional Names", "description": "Retrieves a collection of additional names for a person. Use this action when you need to fetch multiple name variations (such as local script names, social names, or alternative name forms) associated with a specific person in Workday. This is a read-only operation - it does not modify any data in Workday." }, { "slug": "WORKDAY_GET_AND_SET_UP_SCORES_ON_SCORECARD_RESULTS", "name": "Get and Set Up Scores on Scorecard Results", "description": "Provides the ability to set up and retrieve Scores on Scorecard Results. Use when you need to fetch scorecard evaluation results including evaluation date, scorecard details, and profile-specific goals results for performance reviews or compensation assessments. This is a read-only action that retrieves existing scorecard results from Workday." }, { "slug": "WORKDAY_GET_ASSIGNMENT_CHANGE_GROUP_COST_CENTERS", "name": "Get Assignment Change Group Cost Centers", "description": "Retrieves cost centers instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ASSIGNMENT_CHANGE_GROUP_JOBS", "name": "Get Assignment Change Group Jobs", "description": "Retrieves jobs instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ASSIGNMENT_TYPES", "name": "Get Assignment Types", "description": "Retrieves assignment types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ATTACHMENT_BUSINESS_PROCESS_EVENT", "name": "Get Business Process Event Attachments", "description": "Retrieves attachments for a business process event. Returns file metadata including uploader info, file name, size, content type, and upload date. Use this action when you need to access or list files attached to a specific business process event in Workday." }, { "slug": "WORKDAY_GET_ATTACHMENT_BY_EXTERNAL_ID", "name": "Get Attachment by External ID", "description": "Retrieves an attachment from Workday using its external identifier. Use this action when you need to fetch attachment details such as file name, size, upload timestamp, and download URL by specifying the external ID assigned to the attachment." }, { "slug": "WORKDAY_GET_AUDIENCE_SELECTION", "name": "Get Audience Selection", "description": "Retrieves the valid audience-selection values for the Audience Prompt Group. Use alongside Get Audience Types when constructing the audience descriptor for a Send Message call: the selection value narrows the chosen audience type to a specific instance." }, { "slug": "WORKDAY_GET_AUDIENCE_TYPES", "name": "Get Audience Types", "description": "Retrieves the valid audience-type values for the Audience Prompt Group. Use when configuring a message's recipient-audience filter — pick an ID from here and pass it through to a Send Message call or audience-aware template." }, { "slug": "WORKDAY_GET_BALANCE_DETAILS", "name": "Get Balance Details", "description": "Retrieves detailed balance information for a specific worker's absence plan. This action returns balance details including the quantity of hours/days available, the unit of measurement (hours/days), effective date, and related metadata for a worker's time off or leave of absence plan. The absencePlan parameter helps identify which plan to retrieve, and the effective parameter allows querying historical balances." }, { "slug": "WORKDAY_GET_BUSINESS_PROCESS", "name": "Get Business Process", "description": "Retrieves a business process event by its ID. Returns the status, current step, workflow steps, initiator, and subject information for the event." }, { "slug": "WORKDAY_GET_BUSINESS_PROCESS_EVENT_STEP", "name": "Get Business Process Event Step", "description": "Retrieves a single business process event step by its ID. Use this for a full per-step view (status, due date, assignees, questionnaire/task references, completion metadata). Returned results are secured by the caller's view access to the parent event; lack of access surfaces as a 404." }, { "slug": "WORKDAY_GET_BUSINESS_PROCESS_TYPE", "name": "Get Business Process Type", "description": "Retrieves a single business process type by its Workday ID. Use this to look up the descriptor and initiation help text for a specific business process definition (e.g., 'Hire', 'Change Job')." }, { "slug": "WORKDAY_GET_BUSINESS_TITLE_CHANGE", "name": "Get Business Title Change", "description": "Retrieves a business title change instance by ID from the Workday Common API v1. Use this action when you need to fetch detailed information about a specific business title change request, including its subject worker, proposed vs current titles, and effective/initiated timestamps." }, { "slug": "WORKDAY_GET_BUSINESS_TITLE_CHANGE_FOR_WORKER", "name": "Get Business Title Change For Worker", "description": "Retrieves a business title change instance for a specific worker from the Workday Common API v1. Use when you need detailed information about a particular business title change event scoped to a worker." }, { "slug": "WORKDAY_GET_COLLECTION_OF_PAYROLL", "name": "Get Collection of Payroll", "description": "Retrieves a collection of payroll inputs. At least 1 query parameter is required to get data. The Pay Component Segment Security configuration doesn't apply to the GET method. Self-service users can view all of their own Payroll Inputs." }, { "slug": "WORKDAY_GET_COMPANIES_VALUES", "name": "Get Companies Values", "description": "Retrieves company instances that can be used as values for other endpoint parameters in the Workday Staffing service (Organization Assignment Changes group)." }, { "slug": "WORKDAY_GET_COMPANY_INSIDER_TYPES", "name": "Get Company Insider Types", "description": "Retrieves company insider types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_COMPENSATION_SCORE_CARD_INFO", "name": "Get Compensation Scorecard Info", "description": "Retrieves Compensation Scorecard information by its ID. Use this action when you need to fetch detailed scorecard data including goals, profiles, eligibility rules, and the scorecard's effective date and status." }, { "slug": "WORKDAY_GET_COMPENSATION_SCORECARDS", "name": "Get Compensation Scorecards", "description": "Retrieves Compensation Scorecard information from Workday. Use when you need to list available compensation scorecards with their metadata including goals, profiles, and effective dates. The response includes scorecard identifiers, names, descriptions, associated goals and profiles, effective dates, and inactive status. Supports pagination via limit and offset parameters." }, { "slug": "WORKDAY_GET_COMPLETED_STEPS_BUSINESS_PROCESS", "name": "Get Completed Steps Business Process", "description": "Retrieves completed steps for a business process event by its ID. Use when you need to fetch the history of completed steps for a specific business process instance, including details such as completion dates, status, completed-by-person, and comments." }, { "slug": "WORKDAY_GET_CONTINGENT_WORKER_TYPES", "name": "Get Contingent Worker Types", "description": "Retrieves contingent worker types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_COUNTRIES", "name": "Get Countries", "description": "Retrieves a collection of information about countries from Workday. Use this action when you need to list all available countries with their metadata including ISO codes and address lookup settings. The response includes country identifiers, human-readable names, ISO codes (alpha-2 and alpha-3 formats), and whether each country is enabled for address lookup functionality." }, { "slug": "WORKDAY_GET_COUNTRY_ADDRESS_COMPONENTS", "name": "Get Country Address Components", "description": "Retrieves the allowed address components and their configuration for the Country and a given Address Configuration Format. The webServiceAlias of the returned address components map to the enterable fields when submitting address data in other POST/PUT/PATCH operations. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_GET_COUNTRY_INFO", "name": "Get Country Info", "description": "Retrieves detailed information about a specific country from Workday. Use this to get country metadata including ISO codes and address lookup settings." }, { "slug": "WORKDAY_GET_CURRENCIES", "name": "Get Currencies", "description": "Retrieves currencies instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_CURRENCY", "name": "Get Currency", "description": "Retrieves the details of a specified currency from Core Accounting (id, descriptor, code, precision). Use to resolve a currency WID into its readable code/precision data." }, { "slug": "WORKDAY_GET_CURRENT_USER", "name": "Get Current User", "description": "Retrieves the current authenticated worker's profile information from Workday." }, { "slug": "WORKDAY_GET_CUSTOM_FIELD_TYPE", "name": "Get Custom Field Type", "description": "Retrieves the detail record of a single custom field type used by custom object definitions. Use this to inspect a field type's metadata (display name, native type, list-value collection if applicable) before referencing it from a custom field on a definition." }, { "slug": "WORKDAY_GET_CUSTOM_FIELD_TYPE_LIST_VALUE", "name": "Get Custom Field Type List Value", "description": "Retrieves a specific list value for a custom list field type used by a custom object definition. Use this when you need to inspect a single option's metadata before updating or deactivating it." }, { "slug": "WORKDAY_GET_CUSTOM_OBJECT", "name": "Get Custom Object", "description": "Retrieves a custom object instance by ID. Specify either the extended Workday object ID or the custom object's own ID. The same endpoint serves both single-instance and multi-instance custom object definitions; the custom object's underlying definition determines the response shape." }, { "slug": "WORKDAY_GET_CUSTOM_OBJECT_DEFINITION", "name": "Get Custom Object Definition", "description": "Retrieves a single custom object definition (either multi-instance or single-instance) by Workday ID. Use this when you need the high-level metadata of a custom object — its name, alias, active state, extended business object, and any optional business-object filter — before drilling into its fields, validations, or condition rules." }, { "slug": "WORKDAY_GET_CUSTOM_OBJECT_DEFINITION_CONDITION_RULE", "name": "Get Custom Object Definition Condition Rule", "description": "Retrieves a single condition rule attached to a custom object definition. Use this to inspect a rule's expression, scope, and metadata before editing or deleting it." }, { "slug": "WORKDAY_GET_CUSTOM_OBJECT_DEFINITION_FIELD", "name": "Get Custom Object Definition Field", "description": "Retrieves a single field belonging to a custom object definition. Use this to inspect an individual field's configuration (alias, type reference, required flag, label) before editing or deleting it." }, { "slug": "WORKDAY_GET_CUSTOM_OBJECT_DEFINITION_VALIDATION", "name": "Get Custom Object Definition Validation", "description": "Retrieves a single validation attached to a custom object definition. Use this to inspect a validation's expression and error message before editing or removing it." }, { "slug": "WORKDAY_GET_EMPLOYEE_COMPENSATION", "name": "Get Employee Compensation", "description": "Retrieves a worker instance from the Workday Compensation v3 API. Returns the worker profile (display name, business title, primary email/phone, primary work address, primary supervisory organization, location, years of service, and manager flag) as exposed by the compensation surface's /workers/{ID} endpoint." }, { "slug": "WORKDAY_GET_EMPLOYEE_TYPES", "name": "Get Employee Types", "description": "Retrieves employee type instances that can be used as values for other endpoint parameters in the Workday Staffing service (Job Changes group)." }, { "slug": "WORKDAY_GET_EXPENSE_ENTRY", "name": "Get Expense Entry", "description": "Retrieves a single Quick Expense entry from Workday Expense v1 by its Workday Identifier (WID), returning merchant, memo, amount, status, and any attached OCR receipt metadata. Use this when an LLM needs to read or summarise a specific expense entry before deciding whether to update, delete, or attach it to a report." }, { "slug": "WORKDAY_GET_EXPENSE_ITEM", "name": "Get Expense Item", "description": "Retrieves details of an Expense Item referenced by its Workday Identifier (WID). Expense items are the spend categories (meals, mileage, lodging, …) that an entry or report line can be charged against. Use this to confirm an expense item's display name before assigning it to a Quick Expense or expense report line." }, { "slug": "WORKDAY_GET_EXPENSE_REPORT", "name": "Get Expense Report", "description": "Retrieves details of a Workday Expense Report by its Workday Identifier (WID). Returns the report's memo, creation date, status reference, and total amount, along with the standard id/descriptor/href instance fields." }, { "slug": "WORKDAY_GET_FEEDBACK_BADGE_BY_ID", "name": "Get Feedback Badge By Id", "description": "Retrieves a Feedback Badge with the specified ID. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_GIFTS", "name": "Get Gifts", "description": "Retrieves gift (organization) instances that can be used as values for other endpoint parameters in the Workday Staffing service (Organization Assignment Changes group)." }, { "slug": "WORKDAY_GET_GRANTS", "name": "Get Grants", "description": "Retrieves grants instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_GRAPH_API_VERSION", "name": "Get Graph API Version", "description": "Retrieves a single supported Workday Graph API version by ID. Use this when you already know a version's Workday ID and need to fetch its details." }, { "slug": "WORKDAY_GET_HEADCOUNT_OPTIONS", "name": "Get Headcount Options", "description": "Retrieves headcount options instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_HISTORY_ITEMS_FOR_WORKER", "name": "Get History Items for Worker", "description": "Retrieves the collection of history items (business processes / employment changes) for a specific worker from the Workday Common API v1. Use when you need to access a worker's staffing history, completed/in-flight business processes, or audit trail of employment events." }, { "slug": "WORKDAY_GET_HOLIDAY_EVENTS", "name": "Get Holiday Events", "description": "Returns the holiday events for the specified workers and time period." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_ADDRESS", "name": "Get Home Contact Change Address", "description": "An address as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_ADDRESSES", "name": "Get Home Contact Change Addresses", "description": "Retrieve all existing addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Get Home Contact Change Email Address", "description": "An email address as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Email, Self-Service: Home Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_EMAIL_ADDRESSES", "name": "Get Home Contact Change Email Addresses", "description": "Retrieve all existing addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Email, Self-Service: Home Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_EVENT_INFORMATION", "name": "Get Home Contact Change Event Information", "description": "Retrieves basic information about a Home Contact Change event by its ID. Use this action when you need to fetch details about a specific Home Contact Change business process event, including the event ID, descriptor, and associated business process parameters. This is a read-only operation that queries existing event data." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Get Home Contact Change Instant Messenger", "description": "An instant messenger as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_INSTANT_MESSENGERS", "name": "Get Home Contact Change Instant Messengers", "description": "Retrieve all existing instant messengers staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_PHONE_NUMBER", "name": "Get Home Contact Change Phone Number", "description": "A phone number as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_PHONE_NUMBERS", "name": "Get Home Contact Change Phone Numbers", "description": "Retrieve all existing phone numbers staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_WEB_ADDRESS", "name": "Get Home Contact Change Web Address", "description": "A web address as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Web Address, Self-Service: Home Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_CHANGE_WEB_ADDRESSES", "name": "Get Home Contact Change Web Addresses", "description": "Retrieve all existing web addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Web Address, Self-Service: Home Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_HOME_CONTACT_INFORMATION_CHANGE", "name": "Get Home Contact Information Change", "description": "Retrieves an existing Home Contact Change event for the worker's Person. Secured by: Change Home Contact Information (REST Service) Scope: Contact Information" }, { "slug": "WORKDAY_GET_HOME_WEB_ADDRESSES", "name": "Get Home Web Addresses", "description": "Retrieves a collection of home web addresses for a person. Use this action when you need to get home web addresses associated with a person in Workday." }, { "slug": "WORKDAY_GET_IN_PROCESS_STEPS_BUSINESS_PROCESS_EVENT", "name": "Get In Process Steps Business Process Event", "description": "Retrieves in-progress steps for a business process event by its ID. Use when you need to fetch the current in-progress steps for a specific business process event, including step names, statuses, assignees, and due dates." }, { "slug": "WORKDAY_GET_INTERVIEW", "name": "Get Interview", "description": "Retrieves a single interview event by ID, including job requisition, job application, interviewers, statuses, and feedback metadata. Scope: Recruiting. Secured by: Interview Feedback Public API." }, { "slug": "WORKDAY_GET_INTERVIEW_FEEDBACK", "name": "Get Interview Feedback", "description": "Retrieves all feedback entries submitted for a specific interview in Workday Recruiting. Returns detailed feedback including overall ratings and comments from interviewers, which can be used to prepare interview debrief notes, assess candidate performance, and make hiring decisions." }, { "slug": "WORKDAY_GET_INTERVIEW_FEEDBACK2", "name": "Get Interview Feedback", "description": "Retrieves interview feedback for the specified interview ID from Workday Recruiting API. Returns raw feedback entries including ratings, comments, and recommendations from interviewers. Use when you need to access detailed interview feedback for hiring decisions or candidate evaluations." }, { "slug": "WORKDAY_GET_JOB_BY_ID", "name": "Get Job By ID", "description": "Tool to retrieve detailed information about a single job instance by its ID. Use when you need to fetch specific job details including business title, job profile, job type, location, supervisory organization, and assigned worker information." }, { "slug": "WORKDAY_GET_JOB_CHANGE_FREQUENCIES", "name": "Get Job Change Frequencies", "description": "Retrieves frequencies instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_CHANGE_LOCATION_INFO", "name": "Get Job Change Location Info", "description": "Tool to retrieve location information for a specific job change in Workday. Use when you need details about the work location, scheduled hours, work shift, or workspace associated with a job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGE_REASON", "name": "Get Job Change Reason", "description": "Retrieves a job change reason instance from the Workday Common API v1. Use when you need to get details about a specific job change reason, such as whether it applies to employees, contingent workers, or can be entered by managers, before using it in job change or business title change operations." }, { "slug": "WORKDAY_GET_JOB_CHANGE_REASON_VALUES", "name": "Get Job Change Reason Values", "description": "Retrieves job change reasons instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_CHANGES_ADMINISTRATIVE", "name": "Get Job Changes Administrative", "description": "Retrieves the administrative options for the specified job change ID. Use when you need to inspect administrative details (FTE, hours, worker type, notification date, end employment date, etc.) associated with a Workday Staffing job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGES_ADMINISTRATIVE_BY_ID", "name": "Get Job Changes Administrative by Subresource ID", "description": "Retrieves the administrative options for the specified job change ID using the subresource path. Use when you need a specific administrative-details record (FTE, hours, worker type, end employment date, etc.) for a Workday Staffing job change. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_BUSINESS_TITLE", "name": "Get Job Changes Business Title", "description": "Retrieves the business title for the specified job change ID. Use when you need to get the business title information associated with a specific job change event in Workday Staffing API." }, { "slug": "WORKDAY_GET_JOB_CHANGES_BUSINESS_TITLE_BY_ID", "name": "Get Job Changes Business Title by Subresource ID", "description": "Retrieves the business title for the specified job change ID using the subresource path. Use when you need to read the business title of an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_BY_ID", "name": "Get Job Changes By ID", "description": "Retrieves a single change job event instance by its ID. Use when you need to fetch detailed information about a specific job change event in Workday, including the worker, position, business title, effective date, and status." }, { "slug": "WORKDAY_GET_JOB_CHANGES_COMMENT_BY_ID", "name": "Get Job Changes Comment By ID", "description": "Returns the comment information for the specified job change ID. Use when you need to retrieve comments associated with a specific job change event in Workday Staffing API. This action is read-only and does not modify any data." }, { "slug": "WORKDAY_GET_JOB_CHANGES_COMMENT_BY_SUBRESOURCE_ID", "name": "Get Job Changes Comment by Subresource ID", "description": "Returns the comment information for the specified job change ID using the subresource path. Use when you need a specific comment for an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_CONTRACT", "name": "Get Job Changes Contract", "description": "Retrieves the contract options for the specified job change ID. Use when you need to inspect contract details (end date, assignment details, pay rate, currency, purchase order, frequency) associated with a Workday Staffing job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGES_CONTRACT_OPTIONS", "name": "Get Job Changes Contract Options", "description": "Retrieves the contract options for a specific job change in Workday Staffing API. Use when you need to get contract information associated with a job change event, including pay rate, currency, frequency, and purchase order details." }, { "slug": "WORKDAY_GET_JOB_CHANGES_GROUP_TEMPLATES", "name": "Get Job Changes Group Templates", "description": "Retrieves templates instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_CHANGES_JOB_CLASSIFICATION", "name": "Get Job Changes Job Classification", "description": "Retrieves the job classification entries for the specified job change ID. Use when you need to inspect additional job classifications proposed by a Workday Staffing job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGES_JOB_CLASSIFICATION_BY_ID", "name": "Get Job Changes Job Classification by Subresource ID", "description": "Retrieves a job classification for the specified job change ID using the subresource path. Use when you need the additional job classifications attached to an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_JOB_PROFILE", "name": "Get Job Changes Job Profile", "description": "Retrieves a job profile for the specified job change ID. Use when you need to get job profile details including job profile data and job titles associated with a job change event in the Workday Staffing API." }, { "slug": "WORKDAY_GET_JOB_CHANGES_JOB_PROFILE_BY_ID", "name": "Get Job Changes Job Profile by Subresource ID", "description": "Retrieves a job profile for the specified job change ID using the subresource path. Use when you need the proposed job profile and job title for an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_JOB_VALUES", "name": "Get Job Changes Job Values", "description": "Retrieves jobs instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_CHANGES_LOCATION_BY_ID", "name": "Get Job Changes Location by Subresource ID", "description": "Returns the location information for the specified job change ID using the subresource path. Use when you need workspace, work shift, location, and scheduled hours for an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_MOVE_TEAM", "name": "Get Job Changes Move Team", "description": "Retrieves the move-team options for the specified job change ID. Use when you need to inspect whether the manager's reporting teams moved as part of a Workday Staffing job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGES_MOVE_TEAM_BY_ID", "name": "Get Job Changes Move Team by Subresource ID", "description": "Retrieves a move-team option from the specified job change ID using the subresource path. Use when you need the move-team flag for an in-progress Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_OPENING_OPTIONS", "name": "Get Job Changes Opening Options", "description": "Retrieves the opening options for the specified job change ID in Workday Staffing API. Use when you need to get available headcount opening options associated with a job change instance, including whether openings are available for overlap." }, { "slug": "WORKDAY_GET_JOB_CHANGES_OPENING_OPTIONS2", "name": "Get Job Changes Opening Option by ID", "description": "Retrieves the opening options for the specified job change ID. Use when you need to get details about specific opening options available within a job change event in the Workday Staffing API. This action retrieves detailed information about an opening subresource within a job change, including whether the opening is available for overlap and associated headcount options." }, { "slug": "WORKDAY_GET_JOB_CHANGES_POSITION_BY_ID", "name": "Get Job Changes Position By ID", "description": "Retrieves positions for a specified job change ID in Workday Staffing API. Use when you need to get position information associated with a job change event, including whether positions are being created, closed, or available for overlap. Supports pagination via limit and offset parameters." }, { "slug": "WORKDAY_GET_JOB_CHANGES_POSITION_BY_SUBRESOURCE_ID", "name": "Get Job Change Position by Subresource ID", "description": "Retrieves a position for the specified job change ID using the Workday Staffing API. Use this action when you need to get position information associated with a job change event, including whether the position is being created, closed, or available for overlap." }, { "slug": "WORKDAY_GET_JOB_CHANGES_START_DETAILS", "name": "Get Job Changes Start Details", "description": "Retrieves the start details for the specified job change ID. Use when you need the effective date, reason, location, supervisory organization, worker, job, and template details associated with a Workday Staffing job change event." }, { "slug": "WORKDAY_GET_JOB_CHANGES_START_DETAILS_BY_ID", "name": "Get Job Changes Start Details by Subresource ID", "description": "Retrieves the start details for the specified job change ID using the subresource path. Use when you need a specific start-details record (effective date, reason, location, supervisory org, worker, job, template) for a Workday Staffing job change event. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_GET_JOB_CHANGES_WORKER_VALUES", "name": "Get Job Changes Worker Values", "description": "Retrieves workers instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_CLASSIFICATIONS", "name": "Get Job Classifications", "description": "Retrieves job classifications instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_FAMILY", "name": "Get Job Family", "description": "Retrieves a single job family instance with the specified Workday ID from the Staffing service." }, { "slug": "WORKDAY_GET_JOB_POSTING", "name": "Get Job Posting", "description": "Retrieves detailed information about a specific job posting including job description." }, { "slug": "WORKDAY_GET_JOB_POSTING_CANDIDATE_AVAILABILITY_TEMPLATE", "name": "Get Job Posting Candidate Availability Template", "description": "Retrieves the candidate availability template versions for the active job posting with the specified ID. Use this when you need to inspect candidate self-scheduling slots that have been associated with a job posting. Scope: Recruiting. Secured by: Job Postings: External." }, { "slug": "WORKDAY_GET_JOB_POSTING_QUESTIONNAIRE", "name": "Get Job Posting Questionnaire", "description": "Retrieves screening questions and questionnaires associated with a specific job posting." }, { "slug": "WORKDAY_GET_JOB_POSTING_QUESTIONNAIRE_BY_ID", "name": "Get Job Posting Questionnaire By ID", "description": "Retrieves a single questionnaire for the specified job posting ID. Resolves the questionnaire subresource by its ID under the given job posting. Scope: Recruiting. Secured by: Job Postings: External." }, { "slug": "WORKDAY_GET_JOB_PROFILE", "name": "Get Job Profile", "description": "Retrieves a single job profile instance with the specified Workday ID from the Staffing service." }, { "slug": "WORKDAY_GET_JOB_PROFILES_VALUES", "name": "Get Job Profiles Values", "description": "Retrieves job profiles instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_REQUISITION_VALUES", "name": "Get Job Requisition Values", "description": "Retrieves job requisitions instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_JOB_WORKSPACE", "name": "Get Job Workspace", "description": "Tool to retrieve a single workspace instance for a specific job. Use when you need detailed workspace information for a job, including location and hierarchy details." }, { "slug": "WORKDAY_GET_JOB_WORKSPACES", "name": "Get Job Workspaces", "description": "Retrieves a collection of workspaces for the specified job ID. Use this action when you need to fetch all workspace assignments associated with a specific job in the Workday staffing system. Supports pagination through limit and offset parameters." }, { "slug": "WORKDAY_GET_LEARNING_CONTENT", "name": "Get Learning Content", "description": "Retrieves a single learning content item by Workday ID, returning the detail-level representation of programs, courses, course offerings, and other content types in the Learning catalog." }, { "slug": "WORKDAY_GET_LEARNING_CONTENT_LESSON", "name": "Get Learning Content Lesson", "description": "Retrieves a single lesson for a learning content item." }, { "slug": "WORKDAY_GET_LEARNING_RECORD", "name": "Get Learning Record", "description": "Retrieves a single learning record with the specified ID." }, { "slug": "WORKDAY_GET_LEAVE_STATUS_VALUES", "name": "Get Leave Status Values", "description": "Get all available leave status values from Workday. Returns reference data for leave statuses such as 'Canceled', 'In Progress', 'Successfully Completed', 'Process Terminated', and 'Rescinded'. These values can be used to filter or query leave of absence requests in other Workday endpoints." }, { "slug": "WORKDAY_GET_LOCATION_VALUES", "name": "Get Location Values", "description": "Retrieves location instances that can be used as values for other endpoint parameters in the Workday Staffing service (Job Changes group)." }, { "slug": "WORKDAY_GET_MENTORSHIP", "name": "Get Mentorship", "description": "Returns the mentorship for the given ID, viewable by the authenticated user. Use to inspect a specific mentorship's lifecycle state, mentor / mentee, and purpose." }, { "slug": "WORKDAY_GET_MESSAGE_TEMPLATE_BY_ID", "name": "Get Message Template By ID", "description": "Retrieves a message template with the specific ID." }, { "slug": "WORKDAY_GET_MINIMUM_WAGE_RATES_COUNTRIES_VALUES", "name": "Get Minimum Wage Rates Countries Values", "description": "Retrieves the list of country instances that are valid as the 'country' filter on the GET /minimumWageRates endpoint. Use this to discover the country Workday IDs available in the tenant before calling List Minimum Wage Rates." }, { "slug": "WORKDAY_GET_MINIMUM_WAGE_RATES_TAX_AUTHORITIES_VALUES", "name": "Get Minimum Wage Rates Tax Authorities Values", "description": "Retrieves the list of payroll tax authority instances that are valid as the 'taxAuthority' filter on the GET /minimumWageRates endpoint. Use this to discover the tax authority Workday IDs available in the tenant before calling List Minimum Wage Rates." }, { "slug": "WORKDAY_GET_MY_JOB_POSTINGS", "name": "Get My Job Postings", "description": "Retrieves job postings assigned to the authenticated user (current recruiter). This action finds job postings by: 1. Identifying interviews where the current user is listed as an interviewer 2. Extracting job requisition IDs from those interviews 3. Fetching all job postings associated with those requisitions Returns empty results if the user has no recruiting permissions or no assigned interviews." }, { "slug": "WORKDAY_GET_NAME_COMPONENTS", "name": "Get Country Name Components", "description": "Retrieves a collection of configuration information about name components for a specific country. Use this action when you need to get the allowed and required name components (e.g., first name, last name) for a country in Workday. This is useful for validating person name inputs or understanding country-specific name format requirements." }, { "slug": "WORKDAY_GET_NAME_PRONUNCIATIONS", "name": "Get Person Name Pronunciations", "description": "Retrieves a collection of audio name pronunciations for a specific person. Use this action when you need to get audio recordings of how a person's name is pronounced in Workday. This is useful for applications that need to play back name pronunciations or verify available audio files for a person." }, { "slug": "WORKDAY_GET_NOTIFICATION_TYPE_BY_ID", "name": "Get Notification Type By ID", "description": "Retrieves the details of a specific notification type by its Workday ID. Use after List Notification Types to inspect a particular category before referencing it from a message template." }, { "slug": "WORKDAY_GET_ONE_TIME_PAYMENT_PLAN_VALUES", "name": "Get One-Time Payment Plan Values", "description": "Returns the set of One-Time Payment Plan instances that can be supplied as the ``oneTimePaymentPlan`` value when calling the Request One-Time Payment action. Use this to discover the IDs your tenant accepts before constructing a oneTimePayments[] entry. Secured by: Request: One-Time Payment. This is a values lookup; it does not modify state." }, { "slug": "WORKDAY_GET_ORGANIZATION", "name": "Get Organization", "description": "Retrieves an organization instance by ID from the Workday Common API v1. Use this action when you need to fetch the basic display details for a specific organization in Workday (id, descriptor, href). The endpoint returns the organization summary representation." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_BUSINESS_UNITS", "name": "Get Organization Assignment Business Units", "description": "Retrieves business units instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGE", "name": "Get Organization Assignment Change", "description": "Retrieves information about an organization assignment change event with the specified ID. Use this action when you need to inspect a single organization assignment change event you previously created or want to verify its current state." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_BUSINESS_UNIT", "name": "Get Organization Assignment Changes Business Unit", "description": "Retrieves the business unit collection for the specified organization assignment change ID. Use when you need to inspect the business unit assignment associated with an in-progress Workday organization assignment change event. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_COMMENT", "name": "Get Organization Assignment Changes Comment", "description": "Retrieves the comment collection for the specified organization assignment change ID. Use when you need to inspect comments staged on an in-progress Workday organization assignment change. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_COMMENT_BY_ID", "name": "Get Organization Assignment Changes Comment By ID", "description": "Retrieves the comment sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value. Use when you need to inspect the comment text staged on the organization assignment change." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_COMPANY", "name": "Get Organization Assignment Changes Company", "description": "Retrieves the company collection for the specified organization assignment change ID. Use when you need to inspect the company assignment associated with an in-progress Workday organization assignment change event. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_COMPANY_BY_ID", "name": "Get Organization Assignment Changes Company By ID", "description": "Retrieves the company sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value. Use when you need to inspect the company assignment staged on the organization assignment change." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_COST_CENTER", "name": "Get Organization Assignment Changes Cost Center", "description": "Retrieves the cost center collection for the specified organization assignment change ID. Use when you need to inspect the cost center assignment associated with an in-progress Workday organization assignment change. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_REGION", "name": "Get Organization Assignment Changes Region", "description": "Retrieves the region collection for the specified organization assignment change ID. Use when you need to inspect the region assignment associated with an in-progress Workday organization assignment change event. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_REGION_BY_ID", "name": "Get Organization Assignment Changes Region By ID", "description": "Retrieves the region sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CHANGES_START_DETAILS", "name": "Get Organization Assignment Changes Start Details", "description": "Retrieves the start details collection for the specified organization assignment change ID. Start details include the effective date, supervisory organization, worker, and position associated with the event. The {subResourceID} path parameter in the item endpoint must equal the {ID} value." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_CUSTOMS", "name": "Get Organization Assignment Customs", "description": "Retrieves custom organizations instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_FUNDS", "name": "Get Organization Assignment Funds", "description": "Retrieves funds instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_REGIONS", "name": "Get Organization Assignment Regions", "description": "Retrieves regions instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ORGANIZATION_ASSIGNMENT_WORKERS", "name": "Get Organization Assignment Workers", "description": "Retrieves workers instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_ORGANIZATION_TYPE", "name": "Get Organization Type", "description": "Retrieves a specific organization type by its ID from Workday Common API. Use when you need to fetch detailed information about a single organization type, such as its name or API reference URL, for filtering or categorizing organization assignments in Workday staffing." }, { "slug": "WORKDAY_GET_ORG_ASSIGN_CHANGES_BUSINESS_UNIT_BY_ID", "name": "Get Organization Assignment Changes Business Unit By ID", "description": "Retrieves the business unit sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value. Use when you need to inspect the business unit assignment currently staged on the organization assignment change." }, { "slug": "WORKDAY_GET_ORG_ASSIGN_CHANGES_COST_CENTER_BY_ID", "name": "Get Organization Assignment Changes Cost Center By ID", "description": "Retrieves the cost center sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value. Use when you need to inspect the cost center assignment staged on the organization assignment change." }, { "slug": "WORKDAY_GET_ORG_ASSIGN_CHANGES_CUSTOM_ORGS", "name": "Get Organization Assignment Changes Custom Organizations", "description": "Retrieves the custom organizations collection for the specified organization assignment change ID. The {subResourceID} path parameter in the item endpoint must equal the {ID} value. Use when you need to inspect the custom organization assignments staged on the event." }, { "slug": "WORKDAY_GET_ORG_ASSIGN_CHANGES_CUSTOM_ORGS_BY_ID", "name": "Get Organization Assignment Changes Custom Organizations By ID", "description": "Retrieves the custom organizations sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value." }, { "slug": "WORKDAY_GET_ORG_ASSIGN_CHANGES_START_DETAILS_BY_ID", "name": "Get Organization Assignment Changes Start Details By ID", "description": "Retrieves the start details sub-resource for the specified organization assignment change ID. The {subResourceID} path parameter must be the same as the {ID} value." }, { "slug": "WORKDAY_GET_ORG_FOR_WORKER", "name": "Get Organizations for Worker", "description": "Retrieves a collection of organizations for a specific worker from the Workday Common API v1. Use when you need to fetch all organizations (supervisory orgs, business units, cost centers, regions, funds, grants, etc.) that a worker is associated with, including their organization type." }, { "slug": "WORKDAY_GET_PAY_GROUP", "name": "Get Pay Group", "description": "Retrieves a single pay group instance by its Workday ID." }, { "slug": "WORKDAY_GET_PAY_GROUP_BY_JOB_ID", "name": "Get Pay Group by Job ID", "description": "Retrieves the pay group for a specified job ID. This method always returns 1 pay group." }, { "slug": "WORKDAY_GET_PAY_GROUP_DETAIL", "name": "Get Pay Group Detail", "description": "Retrieves a single pay group detail instance, exposing the run category, period schedule, processing-window references, and the related pay run groups that share processing." }, { "slug": "WORKDAY_GET_PAY_RATE_TYPES_VALUES", "name": "Get Pay Rate Types Values", "description": "Retrieves pay rate types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_PAYROLL_INPUT_INSTANCE", "name": "Get Payroll Input Instance", "description": "Retrieves a single payroll input instance with the specified Workday ID." }, { "slug": "WORKDAY_GET_PAYROLL_INTERFACE_PAY_GROUP", "name": "Get Payroll Interface Pay Group", "description": "Retrieves a single Payroll Interface pay group by Workday ID from Global Payroll v1. Use to look up pay group metadata before interacting with its periods." }, { "slug": "WORKDAY_GET_PAYROLL_INTERFACE_PAY_GROUP_PERIOD", "name": "Get Payroll Interface Pay Group Period", "description": "Retrieves a single payroll period for the specified Payroll Interface pay group. Use to inspect the dates and status of a specific pay period." }, { "slug": "WORKDAY_GET_PAYROLL_JOB", "name": "Get Payroll Job", "description": "Retrieves a single job instance from the payroll API, including the worker, job profile, location, and supervisory organization references along with the next pay period start date." }, { "slug": "WORKDAY_GET_PAYROLL_JOB_PAY_GROUP", "name": "Get Payroll Job Pay Group", "description": "Retrieves a single pay group instance attached to a job. The job ID is the parent position; the subresource ID picks the specific pay group entry under that job." }, { "slug": "WORKDAY_GET_PAY_SLIP_INSTANCES_FOR_WORKER", "name": "Get Pay Slip Instance for Worker", "description": "Retrieves a specific pay slip instance for a worker from the Workday Common API v1. Use when you need to get the payment date, gross/net amounts, and status of a single pay slip for a worker." }, { "slug": "WORKDAY_GET_PAY_SLIPS_FOR_WORKER", "name": "Get Pay Slips for Worker", "description": "Retrieves a collection of pay slips for a specific worker from the Workday Common API v1. Use when you need to access payroll history (payment date, gross / net amounts, status) for a worker." }, { "slug": "WORKDAY_GET_PERFORMANCE_WORKER_BY_ID", "name": "Get Performance Worker By Id", "description": "Retrieves a collection of workers and current staffing information. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_PERSON", "name": "Get Person", "description": "Retrieves a person in your Workday tenant. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_GET_PERSON_HOME_ADDRESS", "name": "Get Person Home Address", "description": "Retrieves a home address. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_ADDRESSES", "name": "Get Person Home Addresses", "description": "Retrieves a collection of home addresses. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_EMAIL", "name": "Get Person Home Email", "description": "Retrieves a home email address. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Email, Self-Service: Home Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_EMAILS", "name": "Get Person Home Emails", "description": "Retrieves a collection of home email addresses for a person from Workday. Use this action when you need to fetch all home email addresses associated with a specific person in the Workday system. This is useful for looking up personal contact information, retrieving email details for non-work communications, or accessing emergency contact email addresses." }, { "slug": "WORKDAY_GET_PERSON_HOME_INSTANT_MESSENGER", "name": "Get Person Home Instant Messenger", "description": "Retrieves a home instant messenger account username. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_INSTANT_MESSENGERS", "name": "Get Person Home Instant Messengers", "description": "Retrieves a collection of home instant messenger account usernames. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_PHONE", "name": "Get Person Home Phone", "description": "Retrieves a home phone number. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_HOME_PHONES", "name": "Get Person Home Phones", "description": "Retrieves a collection of home phone numbers. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_LEGAL_NAME", "name": "Get Person Legal Name", "description": "Retrieves the legal name instance. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Legal Name, Self-Service: Legal Name. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_LEGAL_NAME_BY_ID", "name": "Get Person Legal Name By Id", "description": "Retrieves the legal name instance. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Legal Name, Self-Service: Legal Name. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_PERSONAL_INFORMATION", "name": "Get Person Personal Information", "description": "Retrieves a collection of personal information for a person from Workday. Use this when you need comprehensive personal data including citizenship status, ethnicity, gender, date of birth, military service information, disability status, and other sensitive personal attributes for a specific person." }, { "slug": "WORKDAY_GET_PERSON_PHOTO", "name": "Get Person Photo", "description": "Retrieves a personal photo. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Personal Photo, Self-Service: Personal Photo. Scope: Personal Data." }, { "slug": "WORKDAY_GET_PERSON_PHOTOS", "name": "Get Person Photos", "description": "Retrieves a collection of personal photos. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Personal Photo, Self-Service: Personal Photo. Scope: Personal Data." }, { "slug": "WORKDAY_GET_PERSON_PREFERRED_NAME", "name": "Get Person Preferred Name", "description": "Retrieves the preferred name instance. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Preferred Name, Self-Service: Preferred Name. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_PREFERRED_NAME_BY_ID", "name": "Get Person Preferred Name By Id", "description": "Retrieves the preferred name instance. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Preferred Name, Self-Service: Preferred Name. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_PUBLIC_CONTACT_INFORMATION", "name": "Get Person Public Contact Information", "description": "Retrieves a collection of public contact information. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_GET_PERSON_WORK_ADDRESS", "name": "Get Person Work Address", "description": "Retrieves a work address. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_ADDRESSES", "name": "Get Person Work Addresses", "description": "Retrieves a collection of work addresses. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_EMAIL", "name": "Get Person Work Email", "description": "Retrieves a work email address. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_EMAILS", "name": "Get Person Work Emails", "description": "Retrieves a collection of work email addresses. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_INSTANT_MESSENGER", "name": "Get Person Work Instant Messenger", "description": "Retrieves a work instant messenger account username. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_INSTANT_MESSENGERS", "name": "Get Person Work Instant Messengers", "description": "Retrieves a collection of work instant messenger accounts usernames. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_PHONE", "name": "Get Person Work Phone", "description": "Retrieves a work phone number. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_PHONES", "name": "Get Person Work Phones", "description": "Retrieves a collection of work phone numbers. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_WEB_ADDRESS", "name": "Get Person Work Web Address", "description": "Retrieves a work web address. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PERSON_WORK_WEB_ADDRESSES", "name": "Get Person Work Web Addresses", "description": "Retrieves a collection of work web addresses. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_PHONE_DEVICE_TYPES", "name": "Get Phone Device Types", "description": "Retrieves available phone device types from Workday. Use when you need to discover valid device types for phone number collection in Workday prompts. Phone device types are used during the collection of phone numbers and include values such as 'Mobile', 'Home', 'Work', etc. This is a reference data endpoint." }, { "slug": "WORKDAY_GET_POSITION_VALUES", "name": "Get Position Values", "description": "Retrieves positions instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_PROGRAMS", "name": "Get Programs", "description": "Retrieves program (organization) instances that can be used as values for other endpoint parameters in the Workday Staffing service (Organization Assignment Changes group)." }, { "slug": "WORKDAY_GET_PROJECT_BY_EXTERNAL_ID", "name": "Get Project by External ID", "description": "Retrieves a project from Workday using its external identifier. Use this action when you need to fetch project details by specifying the external ID assigned to the project. The response includes comprehensive project information such as name, description, status, dates, financials, hierarchy, worktags, and related project data." }, { "slug": "WORKDAY_GET_PROJECT_MILESTONE_REPORT_SCHEMA", "name": "Get Project Milestone Report Schema", "description": "Returns the schema for project milestone reports. Use when you need to understand the structure, field names, data types, and required fields for project milestone reports before fetching actual report data. This action retrieves metadata about what fields are available in project milestone reports, including field IDs, names, data types, and whether fields are required or can have multiple values." }, { "slug": "WORKDAY_GET_PROJECT_TYPE", "name": "Get Project Type By ID", "description": "Retrieves a specific project type from Workday Spend API by its ID. Use when you need to fetch detailed information about a single project type, including its name, description, and associated projects. This action queries the Workday Spend Projects service and returns the project type resource matching the provided ID." }, { "slug": "WORKDAY_GET_PROPOSED_POSITION_VALUES", "name": "Get Proposed Position Values", "description": "Retrieves proposed positions instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_PROSPECT", "name": "Get Prospect", "description": "Retrieves a single prospect instance for talent matching and best-fit analysis." }, { "slug": "WORKDAY_GET_PROSPECT_EDUCATION_BY_ID", "name": "Get Prospect Education By ID", "description": "Retrieves a single education instance for the specified prospect. Resolves the education subresource by its ID under the given prospect. Scope: Recruiting, Talent Pipeline. Secured by: Prospects." }, { "slug": "WORKDAY_GET_PROSPECT_EDUCATIONS", "name": "Get Prospect Educations", "description": "Retrieves the educational background of a prospect from Workday Recruiting API for talent matching and best-fit analysis. This action queries the Workday Recruiting v4 API to fetch education information associated with a specific prospect. Education records include details about schools attended, degrees obtained, fields of study, and dates of attendance. Supports pagination through limit and offset parameters for prospects with multiple education entries. Requires: Workday Recruiting (ATS) API access permissions." }, { "slug": "WORKDAY_GET_PROSPECT_EXPERIENCE_BY_ID", "name": "Get Prospect Experience By ID", "description": "Retrieves a single work experience instance for the specified prospect. Resolves the work experience subresource by its ID under the given prospect. Scope: Recruiting, Talent Pipeline. Secured by: Prospects." }, { "slug": "WORKDAY_GET_PROSPECT_EXPERIENCES", "name": "Get Prospect Experiences", "description": "Retrieves the work experience of a prospect for talent matching and best-fit analysis." }, { "slug": "WORKDAY_GET_PROSPECT_LANGUAGES", "name": "Get Prospect Languages", "description": "Retrieves the languages of the prospect with the specified ID. Returns the candidate language skills associated with this prospect. Scope: Recruiting, Talent Pipeline. Secured by: Prospects." }, { "slug": "WORKDAY_GET_PROSPECT_RESUME_ATTACHMENTS", "name": "Get Prospect Resume Attachments", "description": "Retrieves resume attachments for a specific prospect to help prepare for upcoming interviews." }, { "slug": "WORKDAY_GET_PROSPECT_SKILL_BY_ID", "name": "Get Prospect Skill By ID", "description": "Retrieves a single skill instance for the specified prospect. Resolves the skill subresource by its ID under the given prospect. Scope: Recruiting, Talent Pipeline. Secured by: Prospects." }, { "slug": "WORKDAY_GET_PROSPECT_SKILLS", "name": "Get Prospect Skills", "description": "Retrieves the skills of a prospect from Workday Recruiting API for talent matching and best-fit analysis. This action queries the Workday Recruiting v4 API to fetch skill information associated with a specific prospect. Skills are professional competencies, technical abilities, or expertise areas that the prospect possesses. Supports pagination through limit and offset parameters for prospects with many skills. Requires: Workday Recruiting (ATS) API access permissions." }, { "slug": "WORKDAY_GET_REQUEST", "name": "Get Request", "description": "Retrieves a single request by ID, including its completed questionnaire response. Results are secured based on the processing person's View access to the request." }, { "slug": "WORKDAY_GET_REQUESTED_FEEDBACK_EVENTS_ON_WORKER", "name": "Get Requested Feedback Events on Worker", "description": "Retrieves all requested feedback events for the specified worker. This endpoint is equivalent to the View Feedback task in Workday. Returns each event with its status, due/expiration dates, responders, template and questions." }, { "slug": "WORKDAY_GET_REQUEST_TYPE", "name": "Get Request Type", "description": "Retrieves a single request type by ID, including the associated business object and questionnaire details. Use this to gather the information you need to create a request of this type." }, { "slug": "WORKDAY_GET_REQUISITION_TEMPLATE", "name": "Get Requisition Template", "description": "Retrieves the goods and service line details of a requisition template by Workday ID. Use when you want to inspect the template before constructing a new requisition from it." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGANIZATION", "name": "Get Supervisory Organization", "description": "Retrieves a single supervisory organization instance by its Workday ID. Use when you need to fetch detailed information about a particular supervisory organization including its name, code, inactive status, and the manager(s) associated with it." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGANIZATION_MEMBER", "name": "Get Supervisory Organization Member", "description": "Retrieves a single member instance for the specified supervisory organization ID and member subresource ID from the Staffing service." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGANIZATION_MEMBERS", "name": "Get Supervisory Organization Members", "description": "Retrieves a collection of members for the specified supervisory organization ID. Use this action when you need to list all workers assigned to a particular supervisory organization, including their job profiles, locations, and supervisory organization details." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGANIZATION_ORG_CHART", "name": "Get Supervisory Organization Org Chart", "description": "Retrieves the organization chart (superior and subordinate organizations) for the specified supervisory organization ID from the Staffing service." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGANIZATION_ORG_CHART_INSTANCE", "name": "Get Supervisory Organization Org Chart Instance", "description": "Retrieves a single organization chart instance for the specified supervisory organization ID and org-chart subresource ID from the Staffing service." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORG_MANAGED_BY_WORKER", "name": "Get Supervisory Org Managed by Worker", "description": "Retrieves a supervisory organization managed by a specific worker from the Workday Common API v1. Use when you need details (name, code, manager) about a single supervisory organization that a worker manages." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORGS_MANAGED_BY_WORKER", "name": "Get Supervisory Organizations Managed By Worker", "description": "Retrieves a collection of supervisory organizations managed by a specific worker from the Workday Common API v1. Use when you need to know which supervisory organizations a worker manages and their management scope." }, { "slug": "WORKDAY_GET_SUPERVISORY_ORG_VALUES", "name": "Get Supervisory Organization Values", "description": "Retrieves supervisory organizations instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_TAX_RATES_COMPANY_INSTANCES_VALUES", "name": "Get Tax Rates Company Instances Values", "description": "Retrieves the list of company instances valid as the 'companyInstance' field on the POST /taxRates endpoint and the 'company' filter on the GET /taxRates endpoint. Use this to discover the company Workday IDs available in the tenant before creating or filtering company SUI rates." }, { "slug": "WORKDAY_GET_TAX_RATES_STATE_INSTANCES_VALUES", "name": "Get Tax Rates State Instances Values", "description": "Retrieves the list of payroll state authority instances valid as the 'stateInstance' field on the POST /taxRates endpoint and the 'payrollStateAuthorityTaxCode' filter on the GET /taxRates endpoint. Use this to discover the state authority Workday IDs available in the tenant." }, { "slug": "WORKDAY_GET_TIME_OFF_ENTRIES_FOR_WORKER", "name": "Get Time Off Entries for Worker", "description": "Retrieves a collection of time off entries for a specific worker from the Workday Common API v1. Use this to get time off records (date, units, type, unit-of-time) for a worker identified by their Workday ID." }, { "slug": "WORKDAY_GET_TIME_OFF_ENTRY_FOR_WORKER", "name": "Get Time Off Entry for Worker", "description": "Retrieves a specific time off entry for a worker from the Workday Common API v1. Use when you need detailed information about a particular time off record (date, units, time off type) for a worker identified by their Workday ID." }, { "slug": "WORKDAY_GET_TIME_OFF_PLAN", "name": "Get Time Off Plan", "description": "Retrieves a particular time off plan for a specific worker from the Workday Common API v1. Use this when you need detailed information (including balance and unit of time) about a single absence / time off plan configured for a worker." }, { "slug": "WORKDAY_GET_TIME_OFF_PLANS_FOR_WORKER", "name": "Get Time Off Plans For Worker", "description": "Retrieves a collection of time off plans for a specific worker. Use this to get the list of time off plans (such as vacation plans, sick leave plans, etc.) that are available to or configured for a worker." }, { "slug": "WORKDAY_GET_TIME_OFF_STATUS_VALUES", "name": "Get Time Off Status Values", "description": "Retrieves available time off status values from Workday. Returns a list of status values (e.g., 'Approved', 'Submitted', 'Sent Back', 'Not Submitted') that can be used as parameters when querying or filtering time off requests in other endpoints. This is a reference data endpoint that requires no input parameters." }, { "slug": "WORKDAY_GET_TIME_TYPES", "name": "Get Time Types", "description": "Retrieves time types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE", "name": "Get Work Contact Change", "description": "Retrieves basic information about a Work Contact Change event, including the Alternate Work Location staged by the event, if there is one. Use this when you need to inspect a specific work-contact-information change business process instance." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_ADDRESSES", "name": "Get Work Contact Change Addresses", "description": "Retrieve all existing addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Get Work Contact Change Email Address", "description": "An email address as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_EMAIL_ADDRESSES", "name": "Get Work Contact Change Email Addresses", "description": "Retrieve all existing addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Get Work Contact Change Instant Messenger", "description": "An instant messenger as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_INSTANT_MESSENGERS", "name": "Get Work Contact Change Instant Messengers", "description": "Retrieve all existing instant messengers staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_PHONE_NUMBER", "name": "Get Work Contact Change Phone Number", "description": "A phone number as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_PHONE_NUMBERS", "name": "Get Work Contact Change Phone Numbers", "description": "Retrieve all existing phone numbers staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Phone, Self-Service: Work Phone. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_WEB_ADDRESS", "name": "Get Work Contact Change Web Address", "description": "A web address as it exists staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_CHANGE_WEB_ADDRESSES", "name": "Get Work Contact Change Web Addresses", "description": "Retrieve all existing web addresses staged for update by the parent business process. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_GET_WORK_CONTACT_INFORMATION_CHANGE", "name": "Get Work Contact Information Change", "description": "Retrieves an existing Work Contact Change event for the worker's Person. This is the staffing-v7, worker-scoped variant of the endpoint — distinct from the person-v4 endpoint exposed via the existing ``GetWorkContactChange`` action. Secured by: Change Work Contact Information (REST Service) Scope: Contact Information" }, { "slug": "WORKDAY_GET_WORK_CONTACT_INFORMATION_CHANGES_ADDRESS_AS_STAGED", "name": "Get Address As Staged", "description": "Retrieves an address as it exists staged for update by the parent business process. Use when you need to retrieve the current state of an address that has been staged for modification within a work contact information changes business process. This action is read-only and retrieves the staged address details. To modify the staged address, use the update action instead." }, { "slug": "WORKDAY_GET_WORKER", "name": "Get Worker", "description": "Retrieves staffing details for a specific worker by Workday ID. Use when you need to fetch comprehensive worker profile data including personal data, employment details, job assignments, and organizational assignments for a specific worker. This action returns detailed staffing information suitable for personnel lookups, HR inquiries, or organizational chart navigation." }, { "slug": "WORKDAY_GET_WORKER2", "name": "Get Worker (Time Tracking)", "description": "Retrieves a single worker's current staffing information via the Time Tracking service. Use the literal 'me' for the path ID to retrieve the current processing worker." }, { "slug": "WORKDAY_GET_WORKER_ANYTIME_FEEDBACK_EVENT_BY_ID", "name": "Get Worker Anytime Feedback Event By Id", "description": "Retrieves a feedback given event instance with the specified ID. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_WORKER_BUSINESS_TITLE_CHANGES", "name": "Get Worker Business Title Changes", "description": "Retrieves the collection of business title changes for a specific worker from the Workday Common API v1. Use when you need to track the history of business title changes (current vs proposed titles, effective dates, initiators) for a worker." }, { "slug": "WORKDAY_GET_WORKER_CHECK_IN", "name": "Get Worker Check-In", "description": "Retrieves a single Check-In with the specified ID for the specified worker. Secured by: Self-Service: Check-Ins, Worker Data: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_GET_WORKER_CHECK_INS", "name": "Get Worker Check-Ins", "description": "Retrieves all Check-Ins for the specified worker. Equivalent to the \"View Check-Ins\" task in Workday. Supports pagination via the limit and offset query parameters. Secured by: Self-Service: Check-Ins, Worker Data: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_GET_WORKER_CHECK_IN_TOPIC", "name": "Get Worker Check-In Topic", "description": "Retrieves a single Check-In topic with the specified ID for the specified worker. Secured by: Self-Service: Check-Ins, Worker Data: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_GET_WORKER_CHECK_IN_TOPICS", "name": "Get Worker Check-In Topics", "description": "Retrieves all Check-In topics for the specified worker. Use this action to list every topic associated with a worker's Check-Ins. Supports pagination via the limit and offset query parameters. Secured by: Self-Service: Check-Ins, Worker Data: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_GET_WORKER_DEVELOPMENT_ITEM_BY_ID", "name": "Get Worker Development Item By Id", "description": "Retrieves a single development item for the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_WORKER_ELIGIBLE_ABSENCE_TYPES", "name": "Get Worker Eligible Absence Types", "description": "Retrieves a collection of eligible absence types for the specified worker. This returns the types of absences (leaves, time off, etc.) that a worker is eligible to request. Each absence type includes details like the category (Leave of Absence, Time Off, etc.), unit of time (Days, Hours), and various configuration flags. Note: Due to Workday security permissions, this typically only works for the authenticated user's own worker ID." }, { "slug": "WORKDAY_GET_WORKER_EXPLICIT_SKILL", "name": "Get Worker Explicit Skill", "description": "Retrieves a single explicit-skill usage for the specified worker. Secured by: Person Data: Skills, Self-Service: Skills Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_GET_WORKER_EXPLICIT_SKILLS", "name": "Get Worker Explicit Skills", "description": "Retrieves explicit skills associated with a Skill Enabled worker. Supports filtering by skill name (`skill`) and by skill source (`skillSource`), plus pagination via `limit` and `offset`. Secured by: Person Data: Skills, Self-Service: Skills Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_GET_WORKER_EXTERNAL_SKILL_LEVELS", "name": "Get Worker External Skill Levels", "description": "Retrieves all external skill level information for a worker. Supports filtering by externalSkillId and pagination via limit/offset. Secured by: Self-Service: External Skill Source, Worker Data: External Skill Source Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_GET_WORKER_FOR_SUPERVISORY_ORG", "name": "Get Worker for Supervisory Org", "description": "Retrieves a worker instance for a specific supervisory organization from the Workday Common API v1. Use when you need a worker's summary (business title, email, phone, manager flag) scoped to a supervisory organization." }, { "slug": "WORKDAY_GET_WORKER_GOAL_BY_ID", "name": "Get Worker Goal By Id", "description": "Retrieves a single goal instance for a specific worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_WORKER_HISTORY_ITEM", "name": "Get Worker History Item", "description": "Retrieves a specific history item (business process) for a worker from the Workday Common API v1. Use when you need detailed information about a particular employment change or business process for a worker, including initiator, initiation timestamp, and effective/due dates." }, { "slug": "WORKDAY_GET_WORKER_LEAVE_OF_ABSENCE", "name": "Get Worker Leave Of Absence", "description": "Retrieves the leave-of-absence record for a worker by its subresource ID. Use Get Worker Leaves Of Absence first to find available subresource IDs. Returns the full leave detail including status, reason, dates, and impact fields." }, { "slug": "WORKDAY_GET_WORKER_LEAVES_OF_ABSENCE", "name": "Get Worker Leaves of Absence", "description": "Retrieves the Leaves Of Absence for the specified worker using the working absenceManagement v1 API." }, { "slug": "WORKDAY_GET_WORKER_ORGANIZATION", "name": "Get Worker Organization", "description": "Retrieves a specific organization instance for a worker from the Workday Common API v1. Use when you need details about a single organization association (and its organization type) for a worker." }, { "slug": "WORKDAY_GET_WORKER_REPORTS", "name": "Get Worker Reports", "description": "Retrieves a collection of direct reports for a specific worker from the Workday Common API v1. Use when you need to find all workers who report directly to a given manager. Supports pagination via the limit and offset parameters." }, { "slug": "WORKDAY_GET_WORKER_REQUESTED_FEEDBACK_ON_SELF_EVENT_BY_ID", "name": "Get Worker Requested Feedback On Self Event By Id", "description": "Retrieves a single self-requested feedback event instance for the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_WORKER_REQUESTED_FEEDBACK_ON_WORKER_EVENT_BY_ID", "name": "Get Worker Requested Feedback On Worker Event By Id", "description": "Retrieves a single requested feedback event instance for the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_GET_WORKERS_COMPENSATION_CODE_OVERRIDES", "name": "Get Workers Compensation Code Overrides", "description": "Retrieves workers' compensation code override instances that can be used as values for other endpoint parameters in the Workday Staffing service (Job Changes group)." }, { "slug": "WORKDAY_GET_WORKER_SERVICE_DATE", "name": "Get Worker Service Date", "description": "Retrieves a single service date information instance for a specified worker from Workday Staffing API. Use when you need to get hire date and continuous service date information for a specific service date record. This action retrieves a single service date instance using the worker ID and service date subresource ID." }, { "slug": "WORKDAY_GET_WORKERS_IN_SUPERVISORY_ORG", "name": "Get Workers in Supervisory Organization", "description": "Retrieves a collection of workers for a specific supervisory organization from the Workday Common API v1. Use when you need to list all workers (employees and contingent workers) belonging to a particular supervisory org. Supports pagination via the limit and offset parameters." }, { "slug": "WORKDAY_GET_WORKER_SKILL_ITEM", "name": "Get Worker Skill Item", "description": "Retrieves a single skill item for the specified worker. The collection variant is exposed by ``GetWorkerSkillItems``. Secured by: Person Data: Skills, Self-Service: Skills Scope: Worker Profile and Skills" }, { "slug": "WORKDAY_GET_WORKER_SKILL_ITEMS", "name": "Get Worker Skill Items", "description": "Retrieves a collection of skill items for a specific worker from Workday Staffing API. Use when you need to access a worker's professional skills, competencies, or expertise areas for talent management, team composition analysis, or skills inventory purposes. Requires: Person Data: Skills or Self-Service: Skills permissions." }, { "slug": "WORKDAY_GET_WORKER_TIME_OFF_DETAIL", "name": "Get Worker Time Off Detail", "description": "Retrieves a specific time off detail entry for a worker. Use when you need detailed information about a particular time off record for a worker identified by their Workday ID. This action retrieves individual time off detail records including dates, duration, type, status, and related metadata. Use Get Time Off Entries for Worker to find available detail IDs first." }, { "slug": "WORKDAY_GET_WORKER_TIME_OFF_DETAILS", "name": "Get Worker Time Off Details", "description": "Retrieves a collection of time off details for the specified worker." }, { "slug": "WORKDAY_GET_WORKER_TYPES", "name": "Get Worker Types", "description": "Retrieves worker types instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_WORKER_VALID_TIME_OFF_DATES", "name": "Get Worker Valid Time Off Dates", "description": "Retrieves valid time off dates for a worker, indicating when they are eligible to take time off. This action checks time off eligibility based on the worker's time off plans, position, and organizational rules. Use this to validate dates before creating time off requests or to display available time off dates to workers." }, { "slug": "WORKDAY_GET_WORK_SHIFTS", "name": "Get Work Shifts", "description": "Retrieves work shift instances that can be used as values for other endpoint parameters in the Workday Staffing service (Job Changes group)." }, { "slug": "WORKDAY_GET_WORKSPACE_INSTANCES", "name": "Get Workspace Instances", "description": "Retrieves work spaces instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_WORK_STUDY_AWARDS", "name": "Get Work Study Awards", "description": "Retrieves work study awards instances that can be used as values for other endpoint parameters in the Workday Staffing service." }, { "slug": "WORKDAY_GET_WQL_DATA_SOURCE", "name": "Get WQL Data Source", "description": "Retrieves a single WQL data source by ID, including its primary business object, required and optional parameters, and available data source filters. Use this when building a WQL query and you need full details about a specific data source." }, { "slug": "WORKDAY_GET_WQL_DATA_SOURCE_FIELD", "name": "Get WQL Data Source Field", "description": "Retrieves a single WQL data source field by ID, including the related business object and any required or optional WQL parameters. Use this when you need full field metadata to use that field in a WQL query." }, { "slug": "WORKDAY_GET_WQL_DATA_SOURCE_FILTER", "name": "Get WQL Data Source Filter", "description": "Retrieves a specific WQL data source filter by its ID. Use this when you need full details about a filter — including its required and optional parameters — to apply it correctly in a WQL query." }, { "slug": "WORKDAY_INITIATE_HOME_CONTACT_INFORMATION_CHANGE", "name": "Initiate Home Contact Information Change", "description": "Creates a new Home Contact Change business process event for the parent Person of the specified worker. The returned event ID can be used to manage the change via the related person-v4 / staffing-v7 sub-resource endpoints. Secured by: Change Home Contact Information (REST Service) Scope: Contact Information" }, { "slug": "WORKDAY_INITIATE_WORK_CONTACT_INFORMATION_CHANGE", "name": "Initiate Work Contact Information Change", "description": "Creates a new Work Contact Change business process event for the parent Person of the specified worker. The returned event ID can be used to manage the change via the related person-v4 / staffing-v7 sub-resource endpoints. Secured by: Change Work Contact Information (REST Service) Scope: Contact Information" }, { "slug": "WORKDAY_INITIATE_WORKER_ORGANIZATION_ASSIGNMENT_CHANGE", "name": "Initiate Worker Organization Assignment Change", "description": "Initiates an organization assignment change for a specific worker, returning a new change ID that can be used in subsequent update or submit operations. This is the worker-scoped POST endpoint; the top-level ``/organizationAssignmentChanges`` POST is exposed by ``CreateOrganizationAssignmentChange``. Both are exposed in the Workday spec. Secured by: Change Organization Assignments Scope: Organizations and Roles" }, { "slug": "WORKDAY_LIST_ABSENCE_BALANCES", "name": "List Absence Balances", "description": "Retrieves absence balances for time off plans and leave of absence types. Can be filtered by worker ID, category, and effective date." }, { "slug": "WORKDAY_LIST_ABSENCE_MANAGEMENT_WORKERS", "name": "List Absence Management Workers", "description": "Retrieves a collection of workers and current staffing information from absenceManagement. Use to find a worker Workday ID before calling absence-specific endpoints (eligible absence types, balances, leaves of absence, time off entries). Supports searching by name or worker ID and filtering by organization visibility." }, { "slug": "WORKDAY_LIST_ACTIVE_MARITAL_STATUSES", "name": "List Active Marital Statuses", "description": "Marital Statuses that are Active and configured for the Country or Country Region. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_LIST_ACTIVE_TASKS", "name": "List Active Tasks", "description": "Returns the active tasks running in the Workday system, with pagination support. Use for monitoring task throughput, queue depth, and CPU/memory consumption." }, { "slug": "WORKDAY_LIST_ACTIVE_USER_SESSIONS", "name": "List Active User Sessions", "description": "Retrieves the collection of active user sessions in the Workday tenant with pagination support. Use for auditing concurrent logins, identifying long-running sessions, or investigating sign-on patterns." }, { "slug": "WORKDAY_LIST_ACTIVITY_LOGGING", "name": "List Activity Logging", "description": "Retrieves a collection of user activity log entries in a specified time frame. The 'from' and 'to' parameters are required by Workday. Optional filters: user (systemAccount), task (taskId), pagination, and total-count-only mode (returnUserActivityEntryCount)." }, { "slug": "WORKDAY_LIST_ALLOWED_PERSONAL_INFORMATION_COUNTRIES", "name": "List Allowed Personal Information Countries", "description": "The set of countries a person is allowed to populated with country specific data. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Personal Information, Self-Service: Personal Information. Scope: Personal Data." }, { "slug": "WORKDAY_LIST_ATTENDANCE_STATUS_VALUES", "name": "List Attendance Status Values", "description": "Retrieves attendance status instances usable as values for the attendanceStatus field on lesson tracking and enrollment endpoints." }, { "slug": "WORKDAY_LIST_BALANCES", "name": "List Balances", "description": "Retrieves the balance of all absence plan and leave of absence type for the specified worker ID." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_EVENT_COMMENTS", "name": "List Business Process Event Comments", "description": "Retrieves comments on the specified business process event. Use this when you need to read the audit trail of comments left on a business process event (justifications, approvals, sendback reasons, etc.)." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_EVENT_REMAINING_STEPS", "name": "List Business Process Event Remaining Steps", "description": "Retrieves all remaining (not-yet-completed) steps for the specified business process event. Use this when you need to see what's still pending on an in-progress business process — the assignees, step types, and ordering of the remaining workflow." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_EVENTS", "name": "List Business Process Events", "description": "Retrieves a collection of business process events filtered by worker, initiator, type, status, and initiation/completion date ranges. Use this when you need to enumerate the business processes (job changes, time-off requests, hires, etc.) that belong to a worker. At least one worker filter must be set or the spec returns an empty response." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_EVENT_STEPS", "name": "List Business Process Event Steps", "description": "Retrieves a collection of business process event steps, filterable by business process type, creation date, due date, and step type. Use this for cross-event workload queries — e.g., \"what approvals are due this week\" or \"what steps were created today across all business processes\"." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_TYPE_ATTACHMENT_CATEGORIES", "name": "List Business Process Type Attachment Categories", "description": "Retrieves all attachment categories that the processing user can select for the specified business process type, optionally filtered by event target. Use this before uploading an attachment to a business process event — the returned category IDs are the valid values for the attachment category field." }, { "slug": "WORKDAY_LIST_BUSINESS_PROCESS_TYPES", "name": "List Business Process Types", "description": "Retrieves a collection of business process types defined in the tenant. Use this to enumerate the catalog of business process definitions (Hire, Change Job, Time Off, Termination, etc.) that the tenant supports. The IDs returned can be passed to event-listing filters." }, { "slug": "WORKDAY_LIST_CASCADE_GOAL_TALENT_POOLS", "name": "List Cascade Goal Talent Pools", "description": "Talent Pools the processing user has view and edit access for. Secured by: Talent Pool: View and Edit Scope: Talent Pipeline. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_COMPENSATION_WORKERS", "name": "List Compensation Workers", "description": "Lists workers from the Workday Compensation v3 API with pagination and case-insensitive name search. Use this when you need to look up worker IDs to feed into other compensation actions (Get Employee Compensation, Request One-Time Payment, etc.) and want the results scoped to the compensation service's view of workers. Note: Compensation v3 and Staffing v7 both expose /workers — they are secured under the same Staffing scope but live on separate sub-API paths; this action targets the compensation surface." }, { "slug": "WORKDAY_LIST_COUNTRIES", "name": "List Countries", "description": "Retrieves country instance references that can be used as values for other recruiting endpoint parameters. Prompt Values endpoint under the recruiting service." }, { "slug": "WORKDAY_LIST_COUNTRY_COMPONENTS_COUNTRY", "name": "List Country Components Country", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_LIST_COUNTRY_COMPONENTS_COUNTRY_CITY", "name": "List Country Components Country City", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_LIST_COUNTRY_COMPONENTS_COUNTRY_REGION", "name": "List Country Components Country Region", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_LIST_COUNTRY_PHONE_CODES", "name": "List Country Phone Codes", "description": "Exposes prompting for country phone codes, which are used during the collection of phone numbers. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: REST API Public." }, { "slug": "WORKDAY_LIST_CURRENCIES", "name": "List Currencies", "description": "Retrieves the details on all currencies in your tenant from Core Accounting (id, descriptor, code, precision). Use to populate currency pickers or to map currency codes to Workday WIDs." }, { "slug": "WORKDAY_LIST_CUSTOM_FIELD_TYPE_LIST_VALUES", "name": "List Custom Field Type List Values", "description": "Retrieves the list of selectable values configured for a custom list field type used by a custom object definition. Use this to enumerate the options exposed by a custom list (for example, every option of a \"Department\" picker on a custom object)." }, { "slug": "WORKDAY_LIST_CUSTOM_FIELD_TYPES", "name": "List Custom Field Types", "description": "Retrieves all custom field types configured in Workday's custom object subsystem, optionally filtered by native field type. Use this to discover the field-type catalog (text, numeric, custom list, etc.) available when defining custom object fields." }, { "slug": "WORKDAY_LIST_CUSTOM_OBJECT_DEFINITION_CONDITION_RULES", "name": "List Custom Object Definition Condition Rules", "description": "Retrieves the condition rules attached to a custom object definition. Use this to enumerate every visibility, edit-restriction, or business-logic rule defined on a custom object before editing or auditing them." }, { "slug": "WORKDAY_LIST_CUSTOM_OBJECT_DEFINITION_FIELDS", "name": "List Custom Object Definition Fields", "description": "Retrieves the fields defined on a custom object definition. Use this to inspect the schema of a custom object — its column-level attributes — before reading instance data or editing the definition." }, { "slug": "WORKDAY_LIST_CUSTOM_OBJECT_DEFINITIONS", "name": "List Custom Object Definitions", "description": "Retrieves all custom object definitions configured in Workday (both multi-instance and single-instance custom objects). Use this when you need to discover what custom objects are available, inspect their high-level metadata (name, alias, active flag, extended business object), or determine valid custom object types before querying instances." }, { "slug": "WORKDAY_LIST_CUSTOM_OBJECT_DEFINITION_VALIDATIONS", "name": "List Custom Object Definition Validations", "description": "Retrieves the validations defined on a custom object definition. Use this to enumerate every data-quality / business-rule check on the custom object before editing or auditing them." }, { "slug": "WORKDAY_LIST_CUSTOM_OBJECTS_MULTI_INSTANCE", "name": "List Custom Objects (Multi-Instance)", "description": "Retrieves the multi-instance custom objects attached to a specific Workday business object instance (e.g. all Stock Grants for a worker). Security is dependent on the security domain configured for the custom object." }, { "slug": "WORKDAY_LIST_DURATION_UNIT_VALUES", "name": "List Duration Unit Values", "description": "Retrieves duration unit instances usable as values for the duration field on lesson tracking and enrollment endpoints." }, { "slug": "WORKDAY_LIST_EMPLOYEE_ENROLLMENT_EVENTS", "name": "List Employee Enrollment Events", "description": "Retrieves the latest benefit enrollment events of the processing worker, optionally filtered to a specific enrollment offering type or plan type. Use to display the worker's current/in-progress benefit elections." }, { "slug": "WORKDAY_LIST_EXPENSE_ENTRIES", "name": "List Expense Entries", "description": "Retrieves a paginated collection of Quick Expense entries from Workday Expense v1. Supports filtering by entry type, status, and a date range. Use this when discovering Quick Expenses associated with a tenant or worker before adding them to an expense report or updating/deleting individual entries." }, { "slug": "WORKDAY_LIST_EXPENSE_ITEMS", "name": "List Expense Items", "description": "Retrieves a paginated collection of expense items (spend categories) from Workday Expense v1. Supports filtering by a search string and optionally excluding fixed-amount items. Use this when an LLM needs to pick a valid expense item ID before creating a Quick Expense or expense report line." }, { "slug": "WORKDAY_LIST_EXPENSE_REPORTS", "name": "List Expense Reports", "description": "Retrieves a collection of expense reports from Workday Expense v1. Reports can be filtered by memo, status, and a creation date range. Use this when you need to list, search, or filter expense reports for approval workflows, financial reporting, or audit purposes." }, { "slug": "WORKDAY_LIST_FEEDBACK_BADGES", "name": "List Feedback Badges", "description": "Retrieves a collection of active Feedback Badges. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_FEEDBACK_ON_WORKER_VALUES", "name": "List Feedback On Worker Values", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Worker Data: Role Requested Feedback, Worker Data: Self Requested Feedback Scope: Performance Enablement, Worker Profile and Skills. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_FEEDBACK_RESPONDER_VALUES", "name": "List Feedback Responder Values", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Role Requested Feedback, Self-Service: Self Requested Feedback, Worker Data: Role Requested Feedback, Worker Data: Self Requested Feedback Scope: Performance Enablement, Worker Profile and Skills. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_FEEDBACK_TEMPLATE_VALUES", "name": "List Feedback Template Values", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Role Requested Feedback, Self-Service: Self Requested Feedback, Worker Data: Role Requested Feedback, Worker Data: Self Requested Feedback Scope: Performance Enablement, Worker Profile and Skills. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_GIVE_REQUESTED_FEEDBACK_EVENTS", "name": "List Give Requested Feedback Events", "description": "Retrieves a collection of feedback given events about the user that responded to the feedback request. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_GRADE_VALUES", "name": "List Grade Values", "description": "Retrieves grade instances usable as values for the grade field on lesson tracking and enrollment endpoints." }, { "slug": "WORKDAY_LIST_GRAPH_API_VERSIONS", "name": "List Graph API Versions", "description": "Retrieves all supported Workday Graph API versions. Use this action when you need to discover which Graph API versions a Workday tenant supports before issuing Graph API calls." }, { "slug": "WORKDAY_LIST_HELP_CASE_CONFIGURATIONS", "name": "List Help Case Configurations", "description": "Retrieves tenant setup configurations related to Help Case Management. Configuration details include confidential case message, file configurations, and maximum number of attachments." }, { "slug": "WORKDAY_LIST_INTERVIEWS", "name": "List Interviews", "description": "Retrieves a list of interviews with job requisition and recruiter assignment details. Supports filtering by status for pipeline review and scheduled interviews." }, { "slug": "WORKDAY_LIST_JOB_CHANGE_REASONS", "name": "List Job Change Reasons", "description": "Retrieves the collection of job change reasons from the Workday Common API v1. Use when you need available job change reason reference data (with flags for employee / contingent worker / manager use) for job changes, business title changes, and other staffing operations." }, { "slug": "WORKDAY_LIST_JOB_FAMILIES", "name": "List Job Families", "description": "Retrieves a collection of job families from the Workday Staffing service. Supports filtering by job family group, job profile, and active/inactive state, with pagination via limit/offset." }, { "slug": "WORKDAY_LIST_JOB_POSTINGS", "name": "List Job Postings", "description": "Retrieves a paginated list of job postings from Workday Recruiting system. This action queries the Workday Recruiting API to fetch job postings with optional filtering by job requisition, category, specific posting IDs, or job sites. Supports pagination through limit and offset parameters. Returns structured job posting data including titles, departments, locations, status, and dates. Requires the Recruiting (ATS) API scope to be enabled for the integration user." }, { "slug": "WORKDAY_LIST_JOB_PROFILES", "name": "List Job Profiles", "description": "Retrieves a collection of job profiles from the Workday Staffing service. Supports filtering by active/inactive state and pagination via limit/offset." }, { "slug": "WORKDAY_LIST_JOBS", "name": "List Jobs", "description": "Retrieves a collection of jobs from Workday Staffing system. Use this to get current staffing information including job positions, workers, and organizational details." }, { "slug": "WORKDAY_LIST_LEARNING_CONTENT", "name": "List Learning Content", "description": "Retrieves a collection of learning content items including programs, courses, course offerings, and other content types supported by the Workday Learning catalog." }, { "slug": "WORKDAY_LIST_LEARNING_CONTENT_LESSONS", "name": "List Learning Content Lessons", "description": "Retrieves all lessons for a learning content item." }, { "slug": "WORKDAY_LIST_LEARNING_RECORDS", "name": "List Learning Records", "description": "Retrieves a collection of learning records with filters for completion status, content, expiration window, learner, lifecycle status, and record type." }, { "slug": "WORKDAY_LIST_MANAGE_GOALS_CATEGORIES", "name": "List Manage Goals Categories", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Employee Goals, Worker Data: Employee Goals Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_MANAGE_GOALS_STATUS", "name": "List Manage Goals Status", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Employee Goals, Worker Data: Employee Goals Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_MENTORSHIPS", "name": "List Mentorships", "description": "Returns mentorships viewable by the authenticated user. Supports filtering by mentor, mentee, mentor type, close reason, and lifecycle state (closed / in-progress)." }, { "slug": "WORKDAY_LIST_MESSAGE_TEMPLATES", "name": "List Message Templates", "description": "Retrieves a paginated list of message templates. Supports filtering by active/inactive state, name substring, and notification type. Use when building a template picker or discovering existing templates before creating/updating one." }, { "slug": "WORKDAY_LIST_MINIMUM_WAGE_RATES", "name": "List Minimum Wage Rates", "description": "Retrieves a collection of minimum wage rates. Filter by country, tax authority, and effective date; toggle includeLocalTaxAuthorities to add city/county rates on top of federal and state-level rates." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_ACADEMIC", "name": "List Name Components Academic", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_HEREDITARY", "name": "List Name Components Hereditary", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_HONORARY", "name": "List Name Components Honorary", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_PROFESSIONAL", "name": "List Name Components Professional", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_RELIGIOUS", "name": "List Name Components Religious", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_ROYAL", "name": "List Name Components Royal", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_SALUTATION", "name": "List Name Components Salutation", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_SOCIAL", "name": "List Name Components Social", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NAME_COMPONENTS_TITLE", "name": "List Name Components Title", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Name. Scope: Contact Information." }, { "slug": "WORKDAY_LIST_NOTIFICATION_TYPES", "name": "List Notification Types", "description": "Retrieves the list of notification types (the categories that a message template can target, e.g. recruiting emails or onboarding push notifications). Use when populating the notificationType reference required by Create/Update Message Template." }, { "slug": "WORKDAY_LIST_O_AUTH_CLIENT_DETAILS", "name": "List OAuth Client Details", "description": "Returns OAuth client details for OCFR (OAuth Client Federated Registration) clients. Optionally filter by client_name. Use to look up the OAuth endpoints configured for a Workday OCFR client." }, { "slug": "WORKDAY_LIST_ORGANIZATION_GOAL_GOAL_PERIODS", "name": "List Organization Goal Goal Periods", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Organization Goals, Worker Data: Organization Goals Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_ORGANIZATION_GOAL_ORGANIZATIONS", "name": "List Organization Goal Organizations", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Organization Goals, Worker Data: Organization Goals Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_ORGANIZATION_GOAL_SUPPORTING_INITIATIVES", "name": "List Organization Goal Supporting Initiatives", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Organization Goals, Worker Data: Organization Goals Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_ORGANIZATIONS2", "name": "List Organizations 2", "description": "Retrieves the collection of organizations from the Workday Common API v1. Use when you need to list organizations available in the Workday tenant, optionally filtered by an organization type ID. Supports pagination via the limit and offset parameters." }, { "slug": "WORKDAY_LIST_ORGANIZATION_TYPES", "name": "List Organization Types", "description": "Retrieves all organization types from Workday Common API. Use when you need to get valid organization type values for filtering or categorizing organization assignment changes in the Workday Staffing API." }, { "slug": "WORKDAY_LIST_PAY_GROUP_DETAILS", "name": "List Pay Group Details", "description": "Retrieves a collection of pay group details. Filter by run categories or page through results with limit/offset. Use these IDs as input to the Get Pay Group Detail action for the full payRunGroup / period schedule payload." }, { "slug": "WORKDAY_LIST_PAY_GROUPS", "name": "List Pay Groups", "description": "Retrieves a collection of pay groups. Inactive and External Pay Groups are not supported." }, { "slug": "WORKDAY_LIST_PAYROLL_INTERFACE_PAY_GROUP_PERIODS", "name": "List Payroll Interface Pay Group Periods", "description": "Retrieves a paginated collection of payroll periods for the specified Payroll Interface pay group, sorted in descending order by period end date. Optionally filter to a specific period end date or to the 5 most recent periods." }, { "slug": "WORKDAY_LIST_PAYROLL_INTERFACE_PAY_GROUPS", "name": "List Payroll Interface Pay Groups", "description": "Retrieves a paginated, alphabetically sorted collection of Payroll Interface pay groups from Global Payroll v1. Use to enumerate the pay groups configured in the tenant." }, { "slug": "WORKDAY_LIST_PAYROLL_JOBS", "name": "List Payroll Jobs", "description": "Retrieves a collection of jobs visible to the payroll API. Use this to enumerate jobs whose pay group, location, or worker assignment can then be drilled into with the per-job and job-pay-group endpoints. Pagination is controlled with limit/offset." }, { "slug": "WORKDAY_LIST_PEOPLE", "name": "List People", "description": "Retrieves a list of people in the Workday tenant. Use when you need to find people, search for workers by name or ID, or retrieve a comprehensive list of personnel in the organization. This action supports pagination using limit and offset parameters, search filtering by name or person ID, and optionally includes terminated workers in the results." }, { "slug": "WORKDAY_LIST_PERFORMANCE_WORKERS", "name": "List Performance Workers", "description": "Retrieves a collection of workers and current staffing information. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_POPULATED_PERSONAL_INFORMATION_COUNTRIES", "name": "List Populated Personal Information Countries", "description": "The set of countries a person has populated with country specific data. Use this action when integrating Workday's person v4 API and you need to get this specific resource. Secured by: Person Data: Personal Information, Self-Service: Personal Information. Scope: Personal Data." }, { "slug": "WORKDAY_LIST_RELATES_TO_VALUES", "name": "List Relates To Values", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Role Requested Feedback, Self-Service: Self Requested Feedback, Worker Data: Role Requested Feedback, Worker Data: Self Requested Feedback Scope: Performance Enablement, Worker Profile and Skills. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_REQUESTS", "name": "List Requests", "description": "Retrieves a paginated collection of in-progress requests filtered by the specified parameters. Results are scoped to the processing person's View access. Use ``resolution`` to retrieve closed requests as well." }, { "slug": "WORKDAY_LIST_REQUEST_TYPES", "name": "List Request Types", "description": "Retrieves request types accessible to the processing person, secured by Initiate access. Call GET /types/{ID} to retrieve full questionnaire details for a specific request type." }, { "slug": "WORKDAY_LIST_REQUISITION_TEMPLATES", "name": "List Requisition Templates", "description": "Retrieves a paginated collection of requisition templates. Use to power template pickers or to enumerate reusable requisition starting points." }, { "slug": "WORKDAY_LIST_SCORECARD_RESULTS", "name": "List Scorecard Results", "description": "Returns scorecard results from Workday Compensation. Use this action when you need to retrieve compensation scorecard results including their status and type information. Supports filtering by effective date and pagination via limit and offset parameters. This is a read-only operation that retrieves existing scorecard results without modifying any data." }, { "slug": "WORKDAY_LIST_SEND_BACK_TO_VALUES", "name": "List Send Back To Values", "description": "Retrieves the value instances that can be used as the `to` field when sending back a business process event step. Use this as a lookup before calling the sendBack action — the returned IDs are the valid targets for the step's `to` reference." }, { "slug": "WORKDAY_LIST_SUCCESSION_PLAN_EVENTS", "name": "List Succession Plan Events", "description": "Retrieves all the information for succession plan events. You must specify a succession plan ID via the successionPlan query parameter to retrieve related events; otherwise the response is blank." }, { "slug": "WORKDAY_LIST_SUCCESSION_PLAN_MEMBER_VALUES", "name": "List Succession Plan Member Values", "description": "Retrieves the available succession plan member instances that can be used as values for other Talent Management endpoint parameters. Use this to discover valid member IDs when constructing succession plan or candidate requests." }, { "slug": "WORKDAY_LIST_SUCCESSION_PLAN_READINESS_VALUES", "name": "List Succession Plan Readiness Values", "description": "Retrieves the available succession plan readiness instances that can be used as values for other Talent Management endpoint parameters (for example, when setting the readiness field on a succession plan candidate)." }, { "slug": "WORKDAY_LIST_SUCCESSION_PLANS", "name": "List Succession Plans", "description": "Returns succession plans viewable by the authenticated user. Use this to enumerate active succession plans, optionally filtered by position, when building Talent Management workflows." }, { "slug": "WORKDAY_LIST_SUCCESSION_PLAN_STRATEGY_VALUES", "name": "List Succession Plan Strategy Values", "description": "Retrieves the available succession plan strategy instances that can be used as values for other Talent Management endpoint parameters (for example, when setting the strategy field on a succession plan candidate)." }, { "slug": "WORKDAY_LIST_SUPERVISORY_ORGANIZATIONS", "name": "List Supervisory Organizations", "description": "Retrieves a collection of supervisory organizations from Workday. Use when you need to list all supervisory organizations in the organization hierarchy, optionally paginated with limit and offset parameters, and optionally including inactive organizations." }, { "slug": "WORKDAY_LIST_SYSTEM_METRICS_OVERVIEW", "name": "List System Metrics Overview", "description": "Retrieves a collection of system metrics overview snapshots — queued tasks, running tasks, and active user sessions. Use for monitoring overall Workday system load." }, { "slug": "WORKDAY_LIST_TAX_RATES", "name": "List Tax Rates", "description": "Retrieves a single or a collection of company SUI (State Unemployment Insurance) rates. Filter by company, state authority tax code, and effective date." }, { "slug": "WORKDAY_LIST_TEMPLATE_FOR_MY_PERFORMANCE_REVIEW", "name": "List Template For My Performance Review", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Self-Service: Performance Reviews Scope: Performance Enablement. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKER_ANYTIME_FEEDBACK_EVENTS", "name": "List Worker Anytime Feedback Events", "description": "Retrieves a collection of feedback given events about the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKER_DEVELOPMENT_ITEMS", "name": "List Worker Development Items", "description": "Retrieves a collection of development items for the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKER_GOAL_EVENTS", "name": "List Worker Goal Events", "description": "Get Worker Goal Events. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKER_GOALS", "name": "List Worker Goals", "description": "Retrieves a collection of goals for a specific worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKER_REQUESTED_FEEDBACK_ON_SELF_EVENTS", "name": "List Worker Requested Feedback On Self Events", "description": "Retrieves a collection of self-requested feedback events for the specified worker. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WORKERS", "name": "List Workers", "description": "Retrieves a collection of workers and current staffing information." }, { "slug": "WORKDAY_LIST_WORKERS2", "name": "List Workers (Time Tracking)", "description": "Retrieves a collection of workers and current staffing information from the Time Tracking service. Use to list workers eligible for time-tracking operations." }, { "slug": "WORKDAY_LIST_WORKER_SERVICE_DATES", "name": "List Worker Service Dates", "description": "Retrieves service dates for a specified worker from Workday Staffing API. Use when you need to get hire date and continuous service date information for a worker identified by their Workday ID. This action returns a list of service date records that can be paginated using limit and offset parameters." }, { "slug": "WORKDAY_LIST_WORKERS_TO_NOTIFY_VALUES", "name": "List Workers To Notify Values", "description": "Retrieves instances that can be used as values for other endpoint parameters in this service. Secured by: Worker Data: Anytime Feedback Scope: Performance Enablement, Worker Profile and Skills. Use when you need to read this Workday data via the Performance Enablement REST API." }, { "slug": "WORKDAY_LIST_WQL_DATA_SOURCE_FIELDS", "name": "List WQL Data Source Fields", "description": "Retrieves the fields available on a WQL data source, including each field's related business object. Use this when discovering selectable columns for building a WQL query." }, { "slug": "WORKDAY_LIST_WQL_DATA_SOURCE_FILTERS", "name": "List WQL Data Source Filters", "description": "Retrieves the filters available on a specific WQL data source. Use this to discover which filters you can apply to a data source when building a WQL query." }, { "slug": "WORKDAY_LIST_WQL_DATA_SOURCES", "name": "List WQL Data Sources", "description": "Retrieves a collection of WQL data sources with their primary business objects. Use this when building or discovering data sources to query in Workday Query Language (WQL). You can only see data sources you have security access to." }, { "slug": "WORKDAY_PATCH_EXPENSE_ENTRY", "name": "Patch Expense Entry", "description": "Partially updates an existing Quick Expense entry in Workday Expense v1. Only the fields provided in the request are modified; everything else is left untouched. Use this for targeted edits (e.g. changing just the memo or just the amount) without having to re-submit the full entry as Update Expense Entry (PUT) requires." }, { "slug": "WORKDAY_PATCH_MESSAGE_TEMPLATE_BY_ID", "name": "Patch Message Template By ID", "description": "Partially updates an existing message template. Unlike Update Message Template By ID (PUT), this only modifies the fields you provide and leaves the rest unchanged. Use when toggling inactive, renaming, or tweaking a single subject line." }, { "slug": "WORKDAY_PATCH_ORGANIZATION_GOAL", "name": "Patch Organization Goal", "description": "Partially updates a single organization goal instance with the specified data. Use when you need to partially update this Workday resource via the Performance Enablement REST API. The spec's request body schema for this op resolves to no documented properties; pass a free-form JSON object via the `body` field matching Workday's public field names." }, { "slug": "WORKDAY_PATCH_PAYROLL_INTERFACE_PAY_GROUP_PERIOD", "name": "Patch Payroll Interface Pay Group Period", "description": "Partially updates an existing payroll period for a Payroll Interface pay group with the provided fields. Typical use: flip a pay period's status (e.g., reopen or close it) or adjust its dates." }, { "slug": "WORKDAY_PATCH_WORKER_DEVELOPMENT_ITEM", "name": "Patch Worker Development Item", "description": "Deletes an existing development item. Use when you need to partially update this Workday resource via the Performance Enablement REST API. The spec's request body schema for this op resolves to no documented properties; pass a free-form JSON object via the `body` field matching Workday's public field names." }, { "slug": "WORKDAY_POST_WQL_QUERY", "name": "Post WQL Query", "description": "Runs a WQL query using POST so the query string can exceed 2,048 characters. The request is read-only — POST is used solely so the query can be sent in the request body. You can only view data you have security access to." }, { "slug": "WORKDAY_REASSIGN_BUSINESS_PROCESS_EVENT_STEP", "name": "Reassign Business Process Event Step", "description": "Reassigns the specified business process event step to a different set of awaiting persons and/or roles. Use this to route a step that landed on the wrong assignee — add or remove specific person IDs, or change the awaiting role. The caller must have reassign permission on the step." }, { "slug": "WORKDAY_REMOVE_HOME_CONTACT_INFORMATION_EMAIL_ADDRESS", "name": "Remove Home Contact Information Email Address", "description": "Removes the specified email address from the home contact information changes. Use when you need to remove a specific home email address that was added during a business process. If this address existed before the start of the current business process, it won't be removed from the target Person until the parent business process completes. This action is irreversible once the business process completes. Secured by: Person Data: Home Email, Self-Service: Home Email Scope: Contact Information" }, { "slug": "WORKDAY_REPLACE_HOME_CONTACT_CHANGE_ADDRESS", "name": "Replace Home Contact Change Address", "description": "Update an existing address that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to put this specific resource. Secured by: Person Data: Home Address, Self-Service: Home Address. Scope: Contact Information." }, { "slug": "WORKDAY_RESCIND_BUSINESS_PROCESS_EVENT", "name": "Rescind Business Process Event", "description": "Rescinds a completed business process event, undoing its effect on the Workday system. Use this when a completed business process (e.g., a finalized job change) needs to be reversed. The caller must have permission to rescind events of this type under the tenant's security model." }, { "slug": "WORKDAY_RETRIEVE_ABSENCE_PLAN_BALANCES", "name": "Retrieve Absence Plan Balances", "description": "Retrieves the balance of all absence plans and leave-of-absence types for the specified worker. Returns balances filterable by worker, category (Leave of Absence / Absence Table / Time Off), and effective date. Use List Workers to find a worker Workday ID first." }, { "slug": "WORKDAY_RUN_WQL_QUERY", "name": "Run WQL Query", "description": "Runs a WQL query via GET (query is passed as a URL parameter). Use for short queries under 2,048 characters. For longer queries, use the POST variant. You can only view data you have security access to." }, { "slug": "WORKDAY_SEND_MESSAGE", "name": "Send Message", "description": "Sends an ad-hoc message to one or more recipients using Workday's Connect messaging surface. Unlike Create Message Template (which defines a reusable template), this dispatches an actual message immediately. Use when triggering a one-off notification or announcement." }, { "slug": "WORKDAY_SEND_SUPPLIER_INVOICE_ATTACHMENTS_FOR_SCANNING", "name": "Send Supplier Invoice Attachments For Scanning", "description": "Sends supplier invoice attachments to the OCR scanning queue, where they will be processed by Workday's intake automation and surfaced for review in the Supplier Invoice Work Queue." }, { "slug": "WORKDAY_SUBMIT_JOB_CHANGE", "name": "Submit Job Change", "description": "Submits an in-progress job change for a worker in Workday. Use when you have created a job change event and need to finalize/submit it for processing. This action is irreversible once submitted - the job change will be queued for processing by Workday. Only the person who initiated the Change Job operation can submit it. Must be submitted before the event Initiation step. This action returns 201 Created on successful submission. Review the response status and any validation messages to confirm the submission completed as expected." }, { "slug": "WORKDAY_SUBMIT_ORGANIZATION_ASSIGNMENT_CHANGE", "name": "Submit Organization Assignment Change", "description": "Submits the organization assignment change event for the specified ID, initiating the Change Organization Assignment business process. Submitting with an empty body is equivalent to clicking the Submit button on the Change Organization Assignment task in Workday. To save for later instead, specify businessProcessParameters.action.id = 'd9e41a8c446c11de98360015c5e6daf6'. This action transitions the event from in-progress to submitted state and is generally irreversible once the business process begins." }, { "slug": "WORKDAY_SUBMIT_WORK_CONTACT_CHANGE", "name": "Submit Work Contact Change", "description": "Submit the specified contact change ID. Use this action when integrating Workday's person v4 API and you need to post this specific resource. Secured by: Change Work Contact Information (REST Service). Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_AN_EXISTING_PAYROLL", "name": "Update An Existing Payroll", "description": "Partially updates an existing payroll input instance with the specified ID. Before calling this PATCH method, call GET /payrollInputs/{ID} to retrieve the current payroll input information; the fieldEditability field on the GET response determines which fields can be updated (all, none, or endDateOnly). The worker field cannot be updated." }, { "slug": "WORKDAY_UPDATE_COMPENSATION_SCORECARD", "name": "Update Compensation Scorecard", "description": "Replaces an existing Compensation Scorecard as of the specified effectiveDate via Workday's Compensation v3 API. Use to refresh goal weights, rename a scorecard, or rebuild its profile sections. Workday recommends calling Get Compensation Scorecard Info first to seed the request body and then mutating only the fields you intend to change — omitted optional arrays delete previously-set values. Secured by: Set Up: Merit and Bonus. Required body fields: scorecardName, effectiveDate, and a non-empty defaultScorecardGoals[]." }, { "slug": "WORKDAY_UPDATE_CUSTOM_FIELD_TYPE", "name": "Update Custom Field Type", "description": "Replaces an existing custom field type definition (full update via PUT semantics). Use this to change a field type's configuration in bulk; partial edits should be performed by reading the current instance first and submitting the merged payload here." }, { "slug": "WORKDAY_UPDATE_CUSTOM_FIELD_TYPE_LIST_VALUE", "name": "Update Custom Field Type List Value", "description": "Replaces a single list value on a custom list field type (full update via PUT semantics). Use this to rename or otherwise re-configure an existing list option on a custom list used by custom object definitions." }, { "slug": "WORKDAY_UPDATE_CUSTOM_OBJECT", "name": "Update Custom Object", "description": "Updates an existing custom object instance. Use this to change field values on a custom object attached to a Workday business object (e.g. updating a worker's parking space details, or one entry in a worker's stock grants). The same endpoint serves both single-instance and multi-instance custom object definitions." }, { "slug": "WORKDAY_UPDATE_CUSTOM_OBJECT_DEFINITION_CONDITION_RULE", "name": "Update Custom Object Definition Condition Rule", "description": "Replaces a single condition rule attached to a custom object definition (full update via PUT semantics). Use this when re-configuring a visibility, edit-restriction, or business-logic rule on a custom object." }, { "slug": "WORKDAY_UPDATE_CUSTOM_OBJECT_DEFINITION_FIELD", "name": "Update Custom Object Definition Field", "description": "Replaces an existing field on a custom object definition (full update via PUT semantics). Use this when reconfiguring a single column-level attribute on a custom object — for example, switching field type, toggling the required flag, or renaming the field label." }, { "slug": "WORKDAY_UPDATE_CUSTOM_OBJECT_DEFINITION_VALIDATION", "name": "Update Custom Object Definition Validation", "description": "Replaces a single validation on a custom object definition (full update via PUT semantics). Use this when tightening or relaxing a data-quality / business-rule check attached to a custom object." }, { "slug": "WORKDAY_UPDATE_EXPENSE_ENTRY", "name": "Update Expense Entry", "description": "Updates (replaces) an existing Quick Expense entry in Workday Expense v1. This is a PUT, so the supplied body fully replaces the existing entry — fields omitted in the request will be cleared. Use this for full-rewrite edits to an entry (e.g. re-keying the merchant, date, amount, and expense item at once). For partial updates use Patch Expense Entry instead." }, { "slug": "WORKDAY_UPDATE_HOME_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Update Home Contact Change Email Address", "description": "Partially update an existing email address that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Home Email, Self-Service: Home Email. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_HOME_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Update Home Contact Change Instant Messenger", "description": "Partially update an existing instant messenger that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Home Instant Messenger, Self-Service: Home Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_HOME_CONTACT_CHANGE_PHONE_NUMBER", "name": "Update Home Contact Change Phone Number", "description": "Partially update an existing phone number that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Home Phone, Self-Service: Home Phone. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_HOME_CONTACT_CHANGE_WEB_ADDRESS", "name": "Update Home Contact Change Web Address", "description": "Partially update an existing web address that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Home Web Address, Self-Service: Home Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGE_BUSINESS_TITLE", "name": "Update Job Change Business Title", "description": "Partially updates the business title for a specific job change. Use when modifying the business title field of an in-progress job change event. This operation is only available to the person who initiated the Change Job operation and must be submitted before the event Initiation step." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGE_COMMENT", "name": "Update Job Change Comment", "description": "Partially updates the comment for a specific job change. Use when modifying the comment field of an in-progress job change event. This operation is only available to the person who initiated the Change Job operation and must be submitted before the event Initiation step." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_ADMINISTRATIVE", "name": "Update Job Changes Administrative", "description": "Partially updates the administrative options for the specified job change ID. Use when modifying administrative details (FTE, weekly hours, worker/time type, end employment date, etc.) for an in-progress Workday Staffing job change. Only the person who initiated the Change Job operation can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_CONTRACT", "name": "Update Job Changes Contract", "description": "Partially updates the contract details for the specified job change ID. Use when modifying contract fields (end date, assignment details, pay rate, currency, purchase order, frequency) for an in-progress Workday Staffing job change. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_JOB_PROFILE", "name": "Update Job Changes Job Profile", "description": "Partially updates the jobProfile options for the specified job change ID. Use when changing the proposed job profile or job title for an in-progress Workday Staffing job change. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_LOCATION", "name": "Update Job Changes Location", "description": "Partially updates the location options for the specified job change ID. Use when changing workspace, work shift, location, or scheduled hours for an in-progress Workday Staffing job change. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_MOVE_TEAM", "name": "Update Job Changes Move Team", "description": "Partially updates the moveTeam options for the specified job change ID. Use when toggling whether the manager's reporting teams move with them as part of an in-progress Workday Staffing job change. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_OPENING", "name": "Update Job Changes Opening", "description": "Partially updates the opening options for the specified job change ID. Use when modifying headcount option or job-overlap availability for an in-progress Workday Staffing job change event. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_POSITION_OPTIONS", "name": "Update Job Change Position Options", "description": "Partially updates the position options for a specific job change. Use when modifying position-related fields of an in-progress job change event, such as setting overlap availability, closing a position, or creating a new position. This operation is only available to the person who initiated the Change Job operation and must be submitted before the event Initiation step. Cannot close a position that is currently filled." }, { "slug": "WORKDAY_UPDATE_JOB_CHANGES_START_DETAILS", "name": "Update Job Changes Start Details", "description": "Partially updates the start details for the specified job change ID. Use when modifying effective date, reason, location, supervisory organization, worker, template, or job for an in-progress Workday Staffing job change. Only the initiator can call this, and changes must be submitted via POST /jobChanges/{ID}/submit. Note: the subResourceID must match the job change ID." }, { "slug": "WORKDAY_UPDATE_JOB_CLASSIFICATION_OPTIONS", "name": "Update Job Classification Options", "description": "Partially updates the job classification options for a specific job change. Use when modifying the job classification field of an in-progress job change event. This operation is only available to the person who initiated the Change Job operation and must be submitted before the event Initiation step." }, { "slug": "WORKDAY_UPDATE_MESSAGE_TEMPLATE_BY_ID", "name": "Update Message Template By ID", "description": "Updates an existing message template instance. Replaces the existing instance with the specified data in the request body." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_BUSINESS_UNIT", "name": "Update Organization Assignment Changes Business Unit", "description": "Partially updates the business unit option for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit. The same Workday UI validations apply." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_COMMENT", "name": "Update Organization Assignment Changes Comment", "description": "Partially updates the comment for the organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. The data updates in this PATCH method don't persist until you call POST /organizationAssignmentChanges/{ID}/submit." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_COMPANY", "name": "Update Organization Assignment Changes Company", "description": "Partially updates the company for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit. The same Workday UI validations apply." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_COST_CENTER", "name": "Update Organization Assignment Changes Cost Center", "description": "Partially updates the cost center for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit. The same Workday UI validations apply." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_REGION", "name": "Update Organization Assignment Changes Region", "description": "Partially updates the region for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit." }, { "slug": "WORKDAY_UPDATE_ORGANIZATION_ASSIGNMENT_CHANGES_START_DETAILS", "name": "Update Organization Assignment Changes Start Details", "description": "Partially updates the start details for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. You can only update the date field once the event is initiated; worker, supervisoryOrganization, and position are read-only. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit." }, { "slug": "WORKDAY_UPDATE_ORG_ASSIGN_CHANGES_CUSTOM_ORGS", "name": "Update Organization Assignment Changes Custom Organizations", "description": "Partially updates the custom organizations for the specified organization assignment change ID. The {subResourceID} path parameter must equal the {ID} value. Changes do not persist until you call POST /organizationAssignmentChanges/{ID}/submit. The same Workday UI validations apply." }, { "slug": "WORKDAY_UPDATE_SCORECARD_RESULT_SCORE", "name": "Update Scorecard Result Score", "description": "Sets the achievement value for the specified Score in the specified Scorecard Result on Workday's Compensation v3 API. Use during a compensation review cycle when a manager assigns or revises a goal's achievement percentage on an employee's scorecard. Secured by: Set Up: Merit and Bonus." }, { "slug": "WORKDAY_UPDATE_WORK_CONTACT_CHANGE", "name": "Update Work Contact Change", "description": "Update the Alternate Work Location staged by this business process event. Any Home or Work address for the target Person is valid for use as an Alternate Work Location. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Work Address, Self-Service: Work Address. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_WORK_CONTACT_CHANGE_EMAIL_ADDRESS", "name": "Update Work Contact Change Email Address", "description": "Partially update an existing email address that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Work Email, Self-Service: Work Email. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_WORK_CONTACT_CHANGE_INSTANT_MESSENGER", "name": "Update Work Contact Change Instant Messenger", "description": "Partially update an existing instant messenger that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Work Instant Messenger, Self-Service: Work Instant Messenger. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_WORK_CONTACT_CHANGE_WEB_ADDRESS", "name": "Update Work Contact Change Web Address", "description": "Partially update an existing web address that is staged for update by the parent business process event. Use this action when integrating Workday's person v4 API and you need to patch this specific resource. Secured by: Person Data: Work Web Address, Self-Service: Work Web Address. Scope: Contact Information." }, { "slug": "WORKDAY_UPDATE_WORK_CONTACT_PHONE_NUMBER", "name": "Update Work Contact Phone Number", "description": "Partially updates an existing phone number staged for update by the parent Work Contact Information Change business process event. Only include the fields you want to change. Note: you cannot change a primary phone to additional or vice versa, and you cannot change the Usage Type of an existing phone." }, { "slug": "WORKDAY_UPDATE_WORKER_CHECK_IN", "name": "Update Worker Check-In", "description": "Partially updates an existing Check-In instance. Equivalent to the \"Edit Check-In\" task in Workday. Can only be performed by the creator or participant of the Check-In. Passing ``archive=True`` calls the ``?type=archive`` variant of the PATCH endpoint, which archives the Check-In rather than applying a normal partial update. Secured by: Self-Service: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_UPDATE_WORKER_CHECK_IN_TOPIC", "name": "Update Worker Check-In Topic", "description": "Partially updates an existing Check-In topic instance. Equivalent to the \"Edit Check-In Topic\" task in Workday. Can only be performed by the creator or participant of the Check-In. Passing ``archive=True`` calls the ``?type=archive`` variant of the PATCH endpoint, which archives the topic rather than applying a normal partial update. Secured by: Self-Service: Check-Ins Scope: Performance Enablement" }, { "slug": "WORKDAY_VALIDATE_PHONE_NUMBER", "name": "Validate Phone Number", "description": "Validates phone number data to ensure it is valid for Workday. Returns 201 if the completePhoneNumber is valid, or 400 with a validation error message otherwise. Assumes Allowed Phone Validations are enabled for the country on the Tenant Setup - Global configuration." } ], "triggers": [ { "slug": "WORKDAY_ABSENCE_BALANCE_CHANGED_TRIGGER", "name": "Absence Balance Changed", "description": "Triggers when a worker's absence balance changes.\n\n This trigger monitors a specific worker's absence plan balance and detects any changes\n to the balance details including quantity available, effective date, position, or other\n related fields. Uses snapshot-based diffing to detect meaningful changes." }, { "slug": "WORKDAY_BALANCE_DETAILS_CHANGED_TRIGGER", "name": "Balance Details Changed", "description": "Triggers when details of a specific balance change (quantity, accruals, adjustments, etc.).\n\n This trigger monitors a specific worker's absence plan balance and detects any changes\n to the balance details including quantity available, effective date, position, or other\n related fields. Uses snapshot-based diffing to detect meaningful field changes." }, { "slug": "WORKDAY_INTERVIEW_FEEDBACK_SUBMITTED_TRIGGER", "name": "Interview Feedback Submitted or Updated", "description": "Triggers when interview feedback is submitted or updated for a specific interview.\n This trigger monitors a specific interview and fires when new feedback entries are detected\n or existing feedback is modified." }, { "slug": "WORKDAY_JOB_POSTING_CHANGED_TRIGGER", "name": "Job Posting Changed", "description": "Triggers when a specific job posting's details change (title, status, posting dates, location, etc.).\n This trigger monitors a single job posting and fires when any of its fields are modified." }, { "slug": "WORKDAY_JOB_POSTING_QUESTIONNAIRE_CHANGED_TRIGGER", "name": "Job Posting Questionnaire Changed", "description": "Triggers when a job posting's candidate questionnaire is added or changed.\n\n This trigger monitors a specific job posting's questionnaires and detects any changes\n including additions, removals, or modifications to questionnaires and questions.\n Uses snapshot-based diffing to detect meaningful changes." }, { "slug": "WORKDAY_NEW_ABSENCE_BALANCE_TRIGGER", "name": "New Absence Balance", "description": "Triggers when a new absence balance record becomes available for a worker.\n\n This trigger monitors a specific worker's absence balances and detects when new\n balance records appear (e.g., a new plan/bucket becomes available). Uses snapshot-based\n diffing to compare balance record IDs between polls." }, { "slug": "WORKDAY_NEW_INTERVIEW_SCHEDULED_TRIGGER", "name": "New Interview Scheduled", "description": "Triggers when a new interview is scheduled/created in Workday.\n This trigger monitors interviews and fires when new interview records are detected." }, { "slug": "WORKDAY_NEW_JOB_POSTING_TRIGGER", "name": "New Job Posting", "description": "Triggers when a new job posting appears (newly published/opened) in Workday.\n This trigger monitors job postings and fires when new postings are detected." }, { "slug": "WORKDAY_PROSPECT_PROFILE_CHANGED_TRIGGER", "name": "Prospect Profile Changed", "description": "Triggers when a specific prospect's profile details change (contact info, status, type, source, level, tags, etc.).\n This trigger monitors a single prospect and fires when any of its core profile fields are modified." }, { "slug": "WORKDAY_PROSPECT_RESUME_ATTACHMENT_ADDED_TRIGGER", "name": "New Prospect Resume Attachment Added", "description": "Triggers when a new resume/attachment is added to a specific prospect profile.\n This trigger monitors a prospect's resume attachments and fires when new attachments are detected." }, { "slug": "WORKDAY_WORKER_ELIGIBLE_ABSENCE_TYPE_CHANGED_TRIGGER", "name": "Worker Eligible Absence Type Changed", "description": "Triggers when a worker becomes eligible or ineligible for an absence type.\n\n This trigger monitors the list of eligible absence types for a specific worker\n and detects when new absence types are added (worker becomes eligible) or when\n absence types are removed (worker becomes ineligible). Uses snapshot-based diffing\n to compare the list of absence type IDs between polls.\n\n Note: Due to Workday security permissions, this endpoint typically only allows\n access to the authenticated user's own data." }, { "slug": "WORKDAY_WORKER_LEAVE_OF_ABSENCE_CHANGED_TRIGGER", "name": "Worker Leave of Absence Changed", "description": "Triggers when a worker's leave of absence record changes.\n\n This trigger monitors all leaves of absence for a specific worker and detects:\n - New leave requests created\n - Changes to existing leaves (status, dates, comments, etc.)\n - Deleted or rescinded leaves\n\n Uses snapshot-based diffing to track changes between polling intervals." }, { "slug": "WORKDAY_WORKER_LEAVE_OF_ABSENCE_CREATED_TRIGGER", "name": "Worker Leave of Absence Created", "description": "Triggers when a new leave of absence record is created for a worker.\n\n This trigger monitors a specific worker's leaves of absence and detects when new\n leave records appear (e.g., when a leave is initiated/recorded). Uses snapshot-based\n diffing to compare leave record IDs between polls." } ], "authConfigDetails": [ { "mode": "OAUTH2", "name": "workday_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "System" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Workday REST API Endpoint", "type": "string", "description": "The base URL for Workday REST API requests for your tenant (e.g., https://wd2-impl-services1.workday.com/ccx/api/v1/tenant_name)", "required": true, "default": null }, { "name": "authorizationUrl", "displayName": "Authorization URL", "type": "string", "description": "The authorization URL for Workday OAuth2 authentication (e.g., https://wd2-impl-services1.workday.com/ccx/oauth2/tenant_name/authorize)", "required": true, "default": null }, { "name": "tokenUrl", "displayName": "Token URL", "type": "string", "description": "The token URL for Workday OAuth2 authentication (e.g., https://wd2-impl-services1.workday.com/ccx/oauth2/tenant_name/token)", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "worksnaps", "name": "Worksnaps", "logo": "https://www.worksnaps.com/images/logo.png", "description": "Worksnaps is a time-tracking service designed for remote work that offers detailed project and user activity insights.", "category": "time tracking software", "authSchemes": [ "API_KEY" ], "toolCount": 14, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WORKSNAPS_CREATE_PROJECT", "name": "Create Project", "description": "Creates a new project in Worksnaps for tracking time and tasks. Use this tool when you need to set up a new project for time tracking. Projects serve as containers for tasks and time entries. Each project must have a unique name within the account. Note: Account plan limits may restrict the number of projects that can be created." }, { "slug": "WORKSNAPS_CREATE_TASK", "name": "Create task", "description": "Tool to create a new task in a specified project. Use after confirming project ID exists." }, { "slug": "WORKSNAPS_DELETE_TASK", "name": "Delete Task", "description": "Permanently deletes a task from a Worksnaps project. This action is destructive and cannot be undone. Use GET_TASKS first to find the task_id, and GET_PROJECTS to find the project_id. Returns success=true if the task was deleted. Returns 404 error if project or task does not exist." }, { "slug": "WORKSNAPS_GET_PROJECT_DETAILS", "name": "Get Project Details", "description": "Tool to retrieve details of a specific project. Use when you have a project_id and need its details." }, { "slug": "WORKSNAPS_GET_PROJECT_REPORT", "name": "Get Project Report", "description": "Retrieves time entries for a specific project using the Worksnaps Time Entries API. Returns individual time tracking records showing when users worked on the project. Use this to get detailed time tracking data for a project within a timestamp range. Timestamps must be Unix timestamps at 10-minute interval boundaries." }, { "slug": "WORKSNAPS_GET_PROJECTS", "name": "Get Projects", "description": "Tool to retrieve a paginated list of projects. Use after authenticating to list accessible projects." }, { "slug": "WORKSNAPS_GET_TASK_DETAILS", "name": "Get Task Details", "description": "Tool to retrieve details of a specific task within a project. Use after confirming project_id and task_id." }, { "slug": "WORKSNAPS_GET_TASKS", "name": "Get Project Tasks", "description": "Tool to retrieve tasks for a specific project. Use when you have a project ID and need its tasks. Example: 'Get tasks for project 42'." }, { "slug": "WORKSNAPS_GET_USER_ACCOUNT", "name": "Get User Account", "description": "Tool to retrieve information about a specific user account. Use after confirming the user_id." }, { "slug": "WORKSNAPS_GET_USER_ASSIGNMENTS", "name": "Get User Assignments", "description": "Tool to retrieve a list of all user assignments for a specific project. Returns details about users assigned to the project including their roles, permissions, and contact information." }, { "slug": "WORKSNAPS_GET_USERS", "name": "Get Users", "description": "Retrieves a list of all users in the Worksnaps account. Returns user details including id, login, name, email, time zone, and active status. Use this to get user IDs for other user-related operations." }, { "slug": "WORKSNAPS_PUT_UPDATE_PROJECT", "name": "Update Project", "description": "Tool to update an existing project. Use when you have project_id and fields to modify." }, { "slug": "WORKSNAPS_PUT_UPDATE_TASK", "name": "Update Task", "description": "Tool to update details of an existing task. Use when you have project_id, task_id, and fields to update." }, { "slug": "WORKSNAPS_PUT_UPDATE_USER_ACCOUNT", "name": "Update User Account", "description": "Tool to update information for a specific user account. Use when modifying user details after confirming the user exists. Note: This can only be done by the user himself or by a trusted partner using partner's API token." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "worksnaps_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Worksnaps API Token", "type": "string", "description": "Your Worksnaps API token. This will be used as the username in HTTP Basic Authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "world_news_api", "name": "World news api", "logo": "https://logos.composio.dev/api/world_news_api", "description": "The World News API gives you access to thousands of news sources in over 50 languages from over 150 countries.", "category": "news & lifestyle", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WORLD_NEWS_API_EXTRACT_NEWS", "name": "Extract News", "description": "Tool to extract a news article from a website to a well-structured JSON object. Use when you need to extract structured data from a news article URL, including title, text, images, videos, publish date, authors, language, and sentiment." }, { "slug": "WORLD_NEWS_API_EXTRACT_NEWS_LINKS", "name": "Extract News Links", "description": "Tool to extract news article links from a website or webpage. Use when you need to discover all news article URLs on a page, with optional filtering by URL prefix and subdomain inclusion." }, { "slug": "WORLD_NEWS_API_GET_GEO_COORDINATES", "name": "Get Geo Coordinates", "description": "Tool to retrieve latitude and longitude of a location name. Use when you need geographic coordinates to fill the location-filter parameter in news search operations." }, { "slug": "WORLD_NEWS_API_NEWS_WEBSITE_TO_RSS_FEED", "name": "News Website to RSS Feed", "description": "Tool to convert any news website page into an RSS feed. Provide a URL to a news website page and get back an RSS feed with the latest news from that page. Use when you need to create an RSS feed from a news website that doesn't provide one natively." }, { "slug": "WORLD_NEWS_API_SEARCH_NEWS", "name": "Search News", "description": "Tool to search and filter news articles by keyword/text query with optional filters for language, date range, sentiment, location, and pagination. Use when you need to retrieve news articles matching specific keywords (e.g., 'UEFA Champions League', 'climate change') with optional refinements by country, category, source, or date window. Note: When sorting by publish-time, the API requires either a text query or a bounded publish-date window." }, { "slug": "WORLD_NEWS_API_SEARCH_NEWS_SOURCES", "name": "Search News Sources", "description": "Tool to search whether a news source is being monitored by the World News API. Use when you need to check if a specific news source is available in the system." }, { "slug": "WORLD_NEWS_API_TOP_NEWS", "name": "Get Top News", "description": "Tool to get the top news from a country in a specific language for a given date. The top news are clustered from multiple sources in the specified country. Use when you need to retrieve current or historical top news headlines and articles." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "world_news_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Navigate to your World News API Console account and sign in. Go to \"API Console\" > \"Profile\" to find your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wp_maps", "name": "Wp Maps", "logo": "https://logos.composio.dev/api/wp_maps", "description": "Install WP Maps and gain the ability to highlight your products and stores to increase brand awareness with interactive maps.", "category": "marketing automation", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WP_MAPS_GET_PRODUCT", "name": "Get Product Data", "description": "Tool to retrieve one or more product data from WP Maps in a single GET request by product ID. Use when you need to fetch detailed product information including title, description, price, brand, categories, and store availability." }, { "slug": "WP_MAPS_GET_STORE", "name": "Get Store by ID", "description": "Tool to retrieve store data by store ID from WP Maps API. Use when you need to fetch detailed information about a specific store location." }, { "slug": "WP_MAPS_LIST_PRODUCTS", "name": "List All Products", "description": "Tool to get all product data in a single HTTPS GET request. Returns all products with their headers. Use when you need to retrieve the complete product catalog from WP Maps." }, { "slug": "WP_MAPS_LIST_STORES", "name": "List All Stores", "description": "Tool to retrieve all store data from WP Maps in a single request. Use when you need to get a complete list of stores with their headers and data." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wp_maps_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Access Token", "type": "string", "description": "Your WP Maps Access Token. Navigate to Super Admin > Configuration > Access Token to retrieve this value", "required": true, "default": null }, { "name": "generic_id", "displayName": "Client ID", "type": "string", "description": "Your WP Maps Client ID. Navigate to Super Admin > Configuration > Access Token to retrieve this value", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "writer", "name": "Writer", "logo": "https://logos.composio.dev/api/writer", "description": "Writer is a full-stack generative AI platform for enterprises, offering tools to build and deploy AI applications integrated with their suite of LLMs, graph-based RAG tools, and AI guardrails.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 23, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "WRITER_ADD_FILE_TO_GRAPH", "name": "Add File to Knowledge Graph", "description": "Tool to add a file to a knowledge graph for indexing and retrieval. Use when you need to add an uploaded file to an existing knowledge graph for RAG applications." }, { "slug": "WRITER_ANALYZE_IMAGES", "name": "Analyze Images", "description": "Tool to analyze images using Writer's vision capabilities. Use when you need image understanding, text extraction from images, or visual question answering. Images must be uploaded via POST /v1/files before analysis." }, { "slug": "WRITER_ASK_QUESTION_TO_KNOWLEDGE_GRAPH", "name": "Ask Question to Knowledge Graph", "description": "Tool to send a question to the knowledge graph and retrieve the answer. Use after defining your question and optional context." }, { "slug": "WRITER_CHAT_COMPLETION", "name": "Chat Completion", "description": "Tool to generate chat-based completions. Use when you need conversational AI responses; call after assembling system and user messages." }, { "slug": "WRITER_CREATE_KNOWLEDGE_GRAPH", "name": "Create Knowledge Graph", "description": "Tool to create a new knowledge graph. Use when you need to create an empty graph that files can be added to." }, { "slug": "WRITER_DELETE_FILE", "name": "Delete File", "description": "Tool to delete a file by its ID. Use when you need to permanently remove a file from Writer with no recovery option available." }, { "slug": "WRITER_DELETE_GRAPH", "name": "Delete Graph", "description": "Tool to delete a knowledge graph by its ID. Use when you need to remove a graph after confirming its identifier." }, { "slug": "WRITER_DETECT_AI_CONTENT", "name": "Detect AI Content", "description": "Tool to detect whether content was generated by AI. Returns a classification label and confidence score indicating the likelihood of AI-generated content. Use when you need to verify content authenticity or identify AI-written text." }, { "slug": "WRITER_DOWNLOAD_FILE", "name": "Download File", "description": "Tool to download the binary content of a file. Use when you need to retrieve file data from the Writer platform. The response contains the file in its original format." }, { "slug": "WRITER_GET_FILE", "name": "Get File", "description": "Tool to retrieve detailed information about a specific file by its ID. Use when you need to check a file's metadata, processing status, or associated knowledge graphs." }, { "slug": "WRITER_LIST_APPLICATIONS", "name": "List Applications", "description": "Tool to list all no-code agent applications. Use when you need to retrieve all registered applications." }, { "slug": "WRITER_LIST_FILES", "name": "List Files", "description": "Tool to list all uploaded files. Use when you need to retrieve a paginated set of user files, optionally filtered by status, graph, or type. Use after uploading files to inspect available files." }, { "slug": "WRITER_LIST_GRAPHS", "name": "List Knowledge Graphs", "description": "Tool to retrieve a list of knowledge graphs. Use when you need an overview of existing graphs." }, { "slug": "WRITER_LIST_MODELS", "name": "List Models", "description": "Tool to list all available language models. Use when you need to discover which models can be used for completions." }, { "slug": "WRITER_MEDICAL_COMPREHEND", "name": "Medical Text Comprehension", "description": "Tool to extract medical entities and concepts from unstructured clinical text. Use when you need to label medical text with standardized codes such as SNOMED CT." }, { "slug": "WRITER_PARSE_PDF", "name": "Parse PDF", "description": "Tool to parse and extract text content from a previously uploaded PDF file. Use when you need to convert PDF documents to text or markdown format for further processing." }, { "slug": "WRITER_REMOVE_FILE_FROM_GRAPH", "name": "Remove File From Graph", "description": "Tool to remove a file from a Knowledge Graph. Use when you need to unlink a specific file from a graph by providing both graph and file identifiers." }, { "slug": "WRITER_RETRIEVE_GRAPH", "name": "Retrieve Knowledge Graph", "description": "Tool to retrieve a knowledge graph by its ID. Use when you need details of an existing graph." }, { "slug": "WRITER_TEXT_GENERATION", "name": "Text Generation", "description": "Tool to generate text based on a given prompt. Use when you need model-driven completions after crafting a prompt." }, { "slug": "WRITER_TRANSLATE_TEXT", "name": "Translate Text", "description": "Tool to translate text from one language to another with support for formality, length control, and profanity masking. Use when you need to convert text between different languages." }, { "slug": "WRITER_UPDATE_GRAPH", "name": "Update Knowledge Graph", "description": "Tool to update an existing knowledge graph. Use after confirming the graph_id. Specify at least one of name or description to modify." }, { "slug": "WRITER_UPLOAD_FILE", "name": "Upload File", "description": "Tool to upload a file to Writer. Use when you need to add files for Knowledge Graphs, PDF parsing, or other file-based operations. Files can be associated with Knowledge Graphs for RAG applications." }, { "slug": "WRITER_WEB_SEARCH", "name": "Web Search", "description": "Tool to perform a web search. Use when you need relevant web page results for a given query." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "writer_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Writer API Key", "type": "string", "description": "The API key used for authenticating requests to the Writer API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "wuf", "name": "Wuf", "logo": "https://logos.composio.dev/api/wuf", "description": "Wuf allows you to easily integrate mobile push notifications into your workflow.", "category": "notifications", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "wuf_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "api_key", "displayName": "API Key", "type": "string", "description": "From Wuf web app, go to \"Applications\". The API Key is displayed in an application's details.", "required": true, "default": null }, { "name": "user_key", "displayName": "User Key", "type": "string", "description": "The User Key will appear just after the Sign-in page on the first installation on the mobile app. After that, the User Key will be accessible from the settings page, by clicking on the three dots icon.", "required": true, "default": null } ], "optional": [ { "name": "group_key", "displayName": "Group Key", "type": "string", "description": "From Wuf web app, go to \"User Groups\". The Group Key is displayed in a user group's details. This is optional and used for sending notifications to groups.", "required": false, "default": null } ] } } } ] }, { "slug": "xano", "name": "Xano", "logo": "https://logos.composio.dev/api/xano", "description": "Backend-as-a-Service platform with no-code database, APIs, and authentication", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "xano_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Instance ID", "type": "string", "description": "Your Xano instance ID (e.g., x8d0-doy0-xx99) or app for free tier", "required": true, "default": null }, { "name": "suffix.one", "displayName": "API Group", "type": "string", "description": "Your API group canonical ID", "required": true, "default": null }, { "name": "suffix.two", "displayName": "Region Code", "type": "string", "description": "Your Xano region code (e.g., n7, us-east-1)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Auth Token", "type": "string", "description": "JWE authentication token obtained from /auth/login or /auth/signup endpoint", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "xata", "name": "Xata", "logo": "https://logos.composio.dev/api/xata", "description": "Think data, not databases. The serverless, branchable, scalable, consistent, highly available, and searchable database service focused on the developer experience.", "category": "databases", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "XATA_GET_ORGANIZATION", "name": "Get Organization Details", "description": "Tool to retrieve detailed information about a specific organization by its ID. Use when you need to check organization status, name, billing information, or admin settings." }, { "slug": "XATA_GET_PROJECT_LIMITS", "name": "Get project resource limits", "description": "Tool to retrieve the default resource limits for projects in a specified organization. Use when you need to check maximum instances, storage, allowed regions, or branch limits for a Xata organization." }, { "slug": "XATA_LIST_EXTENSIONS", "name": "List Extensions", "description": "Tool to get available PostgreSQL extensions for a specific image. Use when you need to check which extensions can be enabled for a particular PostgreSQL version in an organization." }, { "slug": "XATA_LIST_IMAGES", "name": "List Available Images", "description": "Tool to retrieve a list of all available postgres images for a specified organization and region. Use when you need to check which database images are available for deployment." }, { "slug": "XATA_LIST_INSTANCE_TYPES", "name": "List Instance Types", "description": "Tool to retrieve a list of all instance types for the specified organization and region. Use when you need to check available instance types and their configurations including CPU, RAM, and pricing." }, { "slug": "XATA_LIST_ORG_API_KEYS", "name": "List Organization API Keys", "description": "Tool to retrieve a list of API keys for a specific Xata organization. Use when you need to view all API keys associated with an organization." }, { "slug": "XATA_LIST_REGIONS", "name": "List Available Regions", "description": "Tool to retrieve a list of all regions where new branches can be deployed for the specified organization. Use when you need to check which regions are available for deploying new branches." }, { "slug": "XATA_UPDATE_ORGANIZATION", "name": "Update Organization", "description": "Tool to update information for an existing organization, such as its name. Use when you need to modify organization details." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "xata_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "admin:all" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "xata_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Create a new API key or retrieve existing keys from your Xata account settings (https://app.xata.io/settings). API keys start with the prefix xau_", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "xendit", "name": "Xendit", "logo": "https://logos.composio.dev/api/xendit", "description": "Xendit helps businesses accept payments and send money - simply, at speed, with great customer service.", "category": "payment processing", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "xendit_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Secret Key", "type": "string", "description": "Navigate to your Xendit account > Settings > Developers > API keys to get your secret key. Test keys start with xnd_development_ and live keys start with xnd_production_", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "xverify", "name": "Xverify", "logo": "https://logos.composio.dev/api/xverify", "description": "Real Time Email and Data Verification Platform", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "xverify_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and go to the \"Implementation\" tab at https://www.xverify.com/users/implementation/", "required": true, "default": null }, { "name": "generic_token", "displayName": "Domain", "type": "string", "description": "Enter one of your domains you have added to your Xverify account. Domains must be pre-configured in your account before API requests will be accepted.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "y_gy", "name": "Y gy", "logo": "https://logos.composio.dev/api/y_gy", "description": "y.gy is a URL shortener and QR code generator that allows users to create short, memorable links from long URLs, customize them with unique endings, and integrate with an API for programmatic link creation.", "category": "url shortener", "authSchemes": [ "API_KEY" ], "toolCount": 8, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "Y_GY_CREATE_LINK", "name": "Create Y.gy Link", "description": "Tool to create a comprehensive Y.gy shortened link with advanced features. Supports custom domains, suffixes, QR codes, password protection, expiration dates, social media previews, device-specific redirects, and webhook integration." }, { "slug": "Y_GY_CREATE_TAG", "name": "Create Tag", "description": "Tool to create a new tag. Use after determining the tag name to categorize links." }, { "slug": "Y_GY_DELETE_SHORT_LINK", "name": "Delete Y.GY Short Link", "description": "Tool to delete a specific short link by its ID. Use when you need to remove a short link after confirming its ID." }, { "slug": "Y_GY_DELETE_TAG", "name": "Delete a tag by ID", "description": "Tool to delete a tag. Use when you need to remove a tag by its ID after confirming it exists." }, { "slug": "Y_GY_GET_ALL_LINKS", "name": "Get all links", "description": "Tool to fetch all short links with optional pagination. Use when you need to list existing links with filters." }, { "slug": "Y_GY_GET_ALL_TAGS", "name": "Get all tags", "description": "Tool to retrieve all tags associated with the organization. Use when you need to list all available tags for categorizing resources." }, { "slug": "Y_GY_GET_LINK", "name": "Get Link Details", "description": "Tool to retrieve a specific short link by its ID. Returns the complete link object including destination URL, QR codes, tags, and all configuration options. Use when you need full details about a short link." }, { "slug": "Y_GY_REGISTER_USER", "name": "Register User", "description": "Tool to register a new user account. Use when onboarding a new user to the y.gy system with their chosen username, password, and email." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "y_gy_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "y.gy API Key", "type": "string", "description": "The API key used for authenticating requests to the y.gy API.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "yay_forms", "name": "Yay Forms", "logo": "https://logos.composio.dev/api/yay_forms", "description": "Form builder and data collection platform with workflow automation capabilities", "category": "productivity", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "yay_forms_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Token", "type": "string", "description": "Your Yay! Forms API token. Generate this from your workspace settings at https://app.yayforms.com", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "yelp", "name": "Yelp", "logo": "https://logos.composio.dev/api/yelp", "description": "Yelp Fusion API provides access to business search, reviews, ratings, and local business information with rich data for location-based services", "category": "reviews", "authSchemes": [ "NO_AUTH" ], "toolCount": 12, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "YELP_GET_AUTOCOMPLETE", "name": "Autocomplete Search", "description": "Get autocomplete suggestions for businesses, categories, and search terms on Yelp based on partial text input. Returns matching businesses with their Yelp IDs, relevant category suggestions, and additional search term recommendations. Use this action when users are typing search queries and need real-time suggestions to refine their search before executing a full business search. Location coordinates (latitude/longitude) are optional but can improve suggestion relevance for geographic searches." }, { "slug": "YELP_GET_BUSINESS_DETAILS", "name": "Get Business Details", "description": "Get detailed information about a specific business on Yelp using its business ID or alias. Returns comprehensive business information including hours (in the business's local timezone), photos, reviews, and location details. The returned `url` field is the Yelp listing page, not the business's own website. Response fields such as `phone` and `website` may be null; handle missing values explicitly. Avoid many parallel calls — HTTP 429 throttling applies; limit concurrency to ~5 parallel requests with exponential backoff." }, { "slug": "YELP_GET_BUSINESS_REVIEWS", "name": "Get Business Reviews", "description": "Get reviews for a specific business on Yelp using its business ID or alias. Returns up to 3 review excerpts for the business." }, { "slug": "YELP_GET_CATEGORY", "name": "Get Category Details", "description": "Get detailed information about a specific Yelp category by its alias. Returns category metadata including the human-readable title, parent categories, and country availability lists. Use this action when you need to understand category hierarchies, check category availability by country, or get the proper display name for a category alias. The alias parameter must be a valid Yelp category identifier — use the list categories endpoint to discover available aliases." }, { "slug": "YELP_GET_EVENT", "name": "Get Event Details", "description": "Get detailed information about a specific Yelp event using its event ID. Returns comprehensive event information including dates, location, cost, attendance counts, and associated business details. Use this action when you need to retrieve full details about a specific event that you already have the ID for. Event IDs can be obtained from the search events or featured events endpoints." }, { "slug": "YELP_GET_FEATURED_EVENT", "name": "Get Featured Event", "description": "Get the featured event for a given location on Yelp. Featured events are chosen by Yelp's community managers and represent notable happenings in the specified area. Use this action when you need to discover the highlighted or recommended event for a specific city, region, or coordinates. The returned `event_site_url` is the Yelp event page, not the event's own external website. Response fields such as `business_id`, `cost`, and `tickets_url` may be null; handle missing values explicitly." }, { "slug": "YELP_GET_REVIEW_HIGHLIGHTS", "name": "Get Review Highlights", "description": "Get review highlights for a specific business on Yelp using its business ID or alias. Returns summarized key points and themes from customer reviews. IMPORTANT: This endpoint requires Yelp Places API Premium Plan access. Without Premium Plan, requests will return a 403 NOT_AUTHORIZED error. For basic review access, consider using the Get Business Reviews action instead, which is available on Enhanced and Premium plans. Note: Get Business Reviews returns at most 3 recent reviews per call, while this action synthesizes themes across the full review history." }, { "slug": "YELP_LIST_CATEGORIES", "name": "List Categories", "description": "List all Yelp business categories across all locales by default. Returns category aliases, titles, parent relationships, and geographic availability. Use this action when you need to discover valid category aliases for filtering business searches or when building category-based navigation. The locale parameter allows filtering to categories available in specific regions while translating category names to the local language." }, { "slug": "YELP_SEARCH_AND_CHAT", "name": "Search and Chat", "description": "Chat with Yelp's AI assistant to search for businesses, get recommendations, and ask questions. This action provides a conversational interface to Yelp's AI that can: - Search for businesses by type, location, and criteria (e.g., \"best Italian restaurants near Times Square\") - Answer questions about specific businesses (e.g., \"what are the hours for The Purple Pig?\") - Provide recommendations based on user preferences - Maintain conversation context when chat_id is provided for follow-up questions The response includes the AI's natural language answer along with detailed business data including ratings, reviews, locations, photos, and attributes for any mentioned businesses." }, { "slug": "YELP_SEARCH_BUSINESSES", "name": "Search Businesses", "description": "Search for businesses on Yelp by location, term, categories, and other filters. Returns at most 50 results per call; use offset to paginate. Overly restrictive filter combinations (categories, price, radius) can yield zero results — loosen iteratively. Results may include businesses from adjacent areas; post-process on location.city or distance for strict boundaries. The returned url field is the Yelp listing page, not the business's own website. Rapid parallel calls can trigger HTTP 429 — apply exponential backoff." }, { "slug": "YELP_SEARCH_BY_PHONE", "name": "Search Business by Phone", "description": "Search for a business by phone number on Yelp. Returns business data including business_id, required by YELP_GET_BUSINESS_DETAILS, YELP_GET_BUSINESS_REVIEWS, and YELP_GET_REVIEW_HIGHLIGHTS. Empty results are inconclusive due to incomplete Yelp coverage." }, { "slug": "YELP_SEARCH_EVENTS", "name": "Search Events", "description": "Search for events on Yelp by location, categories, and other filters. Returns events happening in the specified area with details like time, cost, and attendance. Use this action when you need to find local events, activities, or happenings in a specific geographic area. Events can be filtered by category (music, food, sports), cost (free or paid), and time range. Results are sorted by popularity or start time and can be paginated using limit and offset parameters." } ], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "Yelp", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "yespo", "name": "Yespo", "logo": "https://logos.composio.dev/api/yespo", "description": "Yespo is a Marketing Automation Service for personalized customer engagement through multichannel marketing automation with email, SMS, push, and more.", "category": "marketing automation", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "yespo_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and click the dropdown on the top right and API on the left navigation menu. Navigate to profile settings → API section → Click \"New key\" and select access level.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "yoast_seo", "name": "Yoast Seo", "logo": "https://logos.composio.dev/api/yoast_seo", "description": "Yoast SEO API provides access to SEO metadata and optimization data for WordPress sites", "category": "marketing automation", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "yoast_seo_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "WordPress Site URL", "type": "string", "description": "Your WordPress site domain (e.g., example.com). Do not include https:// or trailing slash", "required": true, "default": null }, { "name": "username", "displayName": "Username", "type": "string", "description": "Your WordPress username", "required": true, "default": null }, { "name": "password", "displayName": "Application Password", "type": "string", "description": "WordPress Application Password (not your regular password). Generate this from WordPress Admin > Users > Edit User > Application Passwords", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "youcanbook_me", "name": "Youcanbook Me", "logo": "https://logos.composio.dev/api/youcanbook_me", "description": "Online scheduling tool for customer bookings with customizable availability and automated meeting management", "category": "scheduling & booking", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "youcanbook_me_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Account ID", "type": "string", "description": "Your YouCanBook.Me Account ID found in Account > Password & Security > Authentication and API section", "required": true, "default": null }, { "name": "username", "displayName": "Email", "type": "string", "description": "Your YouCanBook.Me account email address (Organization Owner account)", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your API Key generated from Account > Password & Security > Authentication and API section", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "youtrack", "name": "Youtrack", "logo": "https://logos.composio.dev/api/youtrack", "description": "YouTrack is a project management and issue tracking tool by JetBrains designed for agile development teams.", "category": "developer tools", "authSchemes": [ "API_KEY", "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "youtrack_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "YouTrack" } ] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your YouTrack instance URL (e.g., https://example.youtrack.cloud or https://youtrack.example.com)", "required": true, "default": null } ], "optional": [] } } }, { "mode": "API_KEY", "name": "youtrack_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Instance URL", "type": "string", "description": "Your YouTrack instance URL (e.g., https://example.youtrack.cloud or https://youtrack.example.com)", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "Permanent Token", "type": "string", "description": "Your YouTrack permanent token. Create one in your profile settings under Authentication.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zamzar", "name": "Zamzar", "logo": "https://logos.composio.dev/api/zamzar", "description": "Online file conversion API supporting over 1,100 different file conversion types including documents, videos, images, audio, CAD files, and eBooks.", "category": "developer tools", "authSchemes": [ "BASIC" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "zamzar_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "username", "displayName": "Username", "type": "string", "description": "Username for basic auth", "required": true, "default": null }, { "name": "password", "displayName": "Password", "type": "string", "description": "Password for basic auth", "required": true, "default": null }, { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in and copy your API Key from Account Details at https://developers.zamzar.com/user", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zenscrape", "name": "Zenscrape", "logo": "https://logos.composio.dev/api/zenscrape", "description": "Unlock the power of data at scale without the hassle of getting blocked with zenscrape's web scraping API.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 1, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZENSCRAPE_SCRAPE_WEB_PAGE", "name": "Scrape Web Page", "description": "Tool to fetch and scrape a web page using proxies with optional JavaScript rendering and premium residential proxies. Use when you need to extract content from websites with automatic IP rotation, handle JavaScript-heavy sites, or avoid detection using premium proxies." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zenscrape_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Sign in to your Zenscrape dashboard and copy your API key", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zep", "name": "Zep", "logo": "https://logos.composio.dev/api/zep", "description": "The Foundational Memory Layer for AI. Equip your agents with the knowledge to complete tasks, from the mundane to monumental.", "category": "artificial intelligence", "authSchemes": [ "API_KEY" ], "toolCount": 41, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZEP_ADD_FACT_TRIPLE", "name": "Add Fact Triple", "description": "Tool to add a manually specified fact triple (subject-predicate-object) to the Zep knowledge graph. Use when you need to add explicit relationships between entities. Returns a task_id to monitor processing status." }, { "slug": "ZEP_ADD_SESSION_MEMORY", "name": "Add Session Memory", "description": "Tool to add memory messages to a specified Zep session. Use when you need to store conversation history or context in a session." }, { "slug": "ZEP_ADD_THREAD_MESSAGES", "name": "Add Thread Messages", "description": "Tool to add chat messages to a thread in Zep and ingest them into the user knowledge graph. Use when you need to add conversation history to a thread - for best results, add messages on every chat turn in the order they were created." }, { "slug": "ZEP_CLONE_GRAPH", "name": "Clone Graph", "description": "Tool to clone a user or group graph with new identifiers in Zep. Use when you need to create test copies of user data, migrate user graphs to new identifiers, or set up template graphs for new users. This is an asynchronous operation that returns a task_id for tracking progress." }, { "slug": "ZEP_CREATE_GRAPH", "name": "Create Graph", "description": "Tool to create a new graph by adding data to Zep. Use when you need to add text, message, or JSON data to a user's graph or a specific graph. The data is processed and an episode node is created in the graph." }, { "slug": "ZEP_CREATE_GROUP", "name": "Create Group", "description": "Tool to create a new group in Zep for multi-user graph management. Use when you need to create a namespace for shared context across multiple users." }, { "slug": "ZEP_CREATE_SESSION", "name": "Create Session", "description": "Tool to create a new session in Zep for storing conversation memory. Use when you need to establish a new conversation context linked to an existing user. The user must be created first before creating a session." }, { "slug": "ZEP_CREATE_THREAD", "name": "Create Thread", "description": "Tool to create a new thread in Zep for a specific user. Use when you need to start a new conversation thread. The user must be created first before creating a thread. Zep automatically warms the cache for that user's graph data in the background to improve query latency." }, { "slug": "ZEP_CREATE_USER", "name": "Create User", "description": "Tool to create a new user in Zep with properties like user_id, email, and metadata. Use when you need to add a new user to the system. It is recommended to provide at least first_name and ideally last_name for better user association." }, { "slug": "ZEP_DELETE_GRAPH", "name": "Delete Graph", "description": "Tool to delete a graph from Zep. Use when you need to permanently remove a graph and all associated data." }, { "slug": "ZEP_DELETE_GROUP", "name": "Delete Group", "description": "Tool to delete a group from Zep. Use when you need to permanently remove a group and its associated data." }, { "slug": "ZEP_DELETE_SESSION", "name": "Delete Session Memory", "description": "Tool to delete a session and its memory from Zep. Use when you need to permanently remove all memory data associated with a specific session." }, { "slug": "ZEP_DELETE_THREAD", "name": "Delete Thread", "description": "Tool to delete a thread and its messages from Zep. Note that deleting a thread removes the thread and its messages from the thread history but does not delete associated data in the user's knowledge graph." }, { "slug": "ZEP_DELETE_USER", "name": "Delete User", "description": "Tool to delete a user and all associated threads and artifacts from Zep. Use when you need to permanently remove a user and handle Right To Be Forgotten requests. Deleting a user will delete all threads and thread artifacts associated with that user." }, { "slug": "ZEP_GET_EDGE", "name": "Get Edge by UUID", "description": "Tool to retrieve a specific edge by its UUID from the Zep knowledge graph. Use when you need to fetch detailed information about a relationship between nodes, including the semantic fact, connected nodes, and temporal metadata." }, { "slug": "ZEP_GET_GRAPH_BY_ID", "name": "Get Graph by ID", "description": "Tool to retrieve a graph by its unique identifier from Zep. Use when you need to fetch details about a specific graph including its name, description, and timestamps." }, { "slug": "ZEP_GET_GROUP", "name": "Get Group by ID", "description": "Tool to retrieve a group by ID from Zep. Use when you need to fetch detailed information about a specific group including its configuration and metadata." }, { "slug": "ZEP_GET_NODE_EDGES", "name": "Get Node Entity Edges", "description": "Tool to retrieve all entity edges for a specific node in the Zep knowledge graph. Use when you need to fetch relationship information, facts, and connections for a given node UUID." }, { "slug": "ZEP_GET_PROJECT_INFO", "name": "Get Project Info", "description": "Tool to retrieve project information based on the provided API key. Use when you need to fetch project details including UUID, name, description, and creation timestamp." }, { "slug": "ZEP_GET_SESSION", "name": "Get Session by ID", "description": "Tool to retrieve a session by its unique identifier from Zep. Use when you need to fetch details about a specific session including user association, timestamps, classifications, and metadata." }, { "slug": "ZEP_GET_SESSION_MEMORY", "name": "Get Session Memory", "description": "Tool to retrieve memory for a given session including relevant facts and entities. Use when you need contextual information and historical data from a session." }, { "slug": "ZEP_GET_SESSION_MESSAGE", "name": "Get Session Message by UUID", "description": "Tool to retrieve a specific message by UUID from a Zep session. Use when you need to fetch a single message's details by its unique identifier from a particular session." }, { "slug": "ZEP_GET_SESSION_MESSAGES", "name": "Get Session Messages", "description": "Tool to retrieve messages for a given session from Zep. Use when you need to fetch the message history for a specific session with optional pagination support." }, { "slug": "ZEP_GET_TASK_STATUS", "name": "Get Task Status", "description": "Tool to check the status of asynchronous operations in Zep. Use when monitoring batch adds, clone operations, or fact triple additions. Returns comprehensive task information including status, progress, timestamps, and error details if applicable." }, { "slug": "ZEP_GET_THREAD_MESSAGES", "name": "Get Thread Messages", "description": "Tool to retrieve conversation history for a specific thread from Zep. Use when you need to fetch the chat message history with optional pagination support via limit, cursor, or lastn parameters." }, { "slug": "ZEP_GET_THREAD_USER_CONTEXT", "name": "Get Thread User Context", "description": "Tool to retrieve the most relevant user context from the user graph based on thread messages. Use when you need to get context including memory from past threads that is most relevant to the current thread." }, { "slug": "ZEP_GET_USER", "name": "Get User by ID", "description": "Tool to retrieve a user by their user ID from Zep. Use when you need to fetch detailed information about a specific user including their profile, metadata, and configuration settings." }, { "slug": "ZEP_GET_USER_NODE", "name": "Get User Node", "description": "Tool to retrieve a user's graph node and summary from Zep. Use when you need to access the user summary generated from instructions, build custom context blocks, or retrieve facts and information associated with a specific user." }, { "slug": "ZEP_GET_USER_NODES", "name": "Get User Nodes", "description": "Tool to retrieve all nodes for a specific user from their graph in Zep. Use when you need to fetch entity information, preferences, and knowledge graph data for a user. Supports pagination via limit and uuid_cursor parameters." }, { "slug": "ZEP_GET_USER_SESSIONS", "name": "Get User Sessions", "description": "Tool to retrieve all sessions for a user from Zep. Use when you need to fetch session history for a specific user ID. Returns an array of session objects with metadata, classifications, and timestamps." }, { "slug": "ZEP_GET_USER_THREADS", "name": "Get User Threads", "description": "Tool to retrieve all threads for a specific user from Zep. Use when you need to fetch thread history for a specific user ID. Returns an array of thread objects with identifiers and timestamps." }, { "slug": "ZEP_GRAPH_SEARCH", "name": "Graph Search", "description": "Tool to perform hybrid graph search combining semantic similarity and BM25 full-text search across the Zep knowledge graph. Use when you need to search for entities, relationships, or episodes within a user, group, or specific graph. Supports various reranking methods and filtering options." }, { "slug": "ZEP_LIST_GROUPS_ORDERED", "name": "List Groups Ordered", "description": "Tool to retrieve all groups from Zep with pagination support. Use when you need to fetch a list of groups with optional pagination via pageNumber and pageSize parameters." }, { "slug": "ZEP_LIST_SESSIONS_ORDERED", "name": "List Sessions Ordered", "description": "Tool to retrieve all sessions from Zep with pagination and ordering support. Use when you need to fetch a list of sessions with optional pagination via page_number and page_size parameters." }, { "slug": "ZEP_LIST_THREADS", "name": "List Threads", "description": "Tool to retrieve all threads from Zep with pagination support. Use when you need to fetch a list of threads with optional pagination and sorting via page_number, page_size, order_by, and asc parameters." }, { "slug": "ZEP_LIST_USERS_ORDERED", "name": "List Users Ordered", "description": "Tool to retrieve all users from Zep with pagination support. Use when you need to fetch a list of users with optional pagination via pageNumber and pageSize parameters." }, { "slug": "ZEP_UPDATE_GRAPH", "name": "Update Graph", "description": "Tool to update graph information in Zep including name and description. Use when you need to modify graph properties after creation." }, { "slug": "ZEP_UPDATE_GROUP", "name": "Update Group", "description": "Tool to update group information in Zep including name, description, and fact rating instructions. Use when you need to modify an existing group's properties." }, { "slug": "ZEP_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to update a message in a Zep thread. Use when you need to modify message content, metadata, role, or other properties of an existing message. Particularly useful for adding or modifying metadata after a message has been created." }, { "slug": "ZEP_UPDATE_SESSION", "name": "Update Session Metadata", "description": "Tool to update session metadata in Zep. Use when you need to modify or add metadata to an existing session. Metadata is merged, so existing keys are preserved unless explicitly overwritten." }, { "slug": "ZEP_UPDATE_USER", "name": "Update User", "description": "Tool to update an existing user's information in Zep including email, metadata, and ontology settings. Use when you need to modify user properties after creation." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zep_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Zep API key. For Zep Cloud, create an API key in Project Settings under Project Keys. Keys starting with \"z_\" use Api-Key format, others use Bearer format.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zeplin", "name": "Zeplin", "logo": "https://logos.composio.dev/api/zeplin", "description": "Zeplin is a design delivery platform that connects designers and developers, enabling access to design resources like projects, screens, components, and assets.", "category": "images & design", "authSchemes": [ "OAUTH2", "API_KEY" ], "toolCount": 24, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZEPLIN_AUTH_O_AUTH_AUTHORIZE", "name": "Start OAuth authorization (PKCE)", "description": "Tool to start OAuth 2.0 authorization code flow for Zeplin apps. Use when initiating user authorization; call before exchanging the code." }, { "slug": "ZEPLIN_CONNECTED_COMPONENTS_PROJECT_LIST", "name": "List Project Connected Components", "description": "Tool to list connected components in a Zeplin project. Use when you have the project_id and need to retrieve connected components in a specific project." }, { "slug": "ZEPLIN_PROJECT_COLORS_LIST", "name": "List Project Colors", "description": "Tool to list colors in a Zeplin project. Use when you need to fetch defined color tokens at the project level after obtaining the project ID." }, { "slug": "ZEPLIN_PROJECT_COLOR_UPDATE", "name": "Update Project Color", "description": "Tool to update a color in a Zeplin project. Use when you need to modify RGBA channels or source ID of an existing color after confirming the project and color IDs." }, { "slug": "ZEPLIN_PROJECTS_GET", "name": "Get Zeplin Project by ID", "description": "Tool to get a Zeplin project by ID. Use when you need detailed info about a specific project after confirming its project_id." }, { "slug": "ZEPLIN_PROJECTS_MEMBERS_INVITE", "name": "Invite Project Member", "description": "Tool to invite a user to a Zeplin project. Use when you need to add a member by email or username to a project after obtaining the project ID." }, { "slug": "ZEPLIN_PROJECT_TEXT_STYLES_LIST", "name": "List Project Text Styles", "description": "Tool to list text styles in a Zeplin project. Use when you need to fetch typography tokens defined at the project level after obtaining the project ID." }, { "slug": "ZEPLIN_PROJECT_TEXT_STYLE_UPDATE", "name": "Update Project Text Style", "description": "Tool to update a text style in a Zeplin project. Use when you need to modify typography settings of an existing text style after confirming the project and text style IDs." }, { "slug": "ZEPLIN_SCREEN_ANNOTATION_DELETE", "name": "Delete Screen Annotation", "description": "Tool to delete a screen annotation in Zeplin. Use when you need to remove a specific annotation from a Zeplin screen given its IDs." }, { "slug": "ZEPLIN_SCREEN_ANNOTATION_GET", "name": "Get Screen Annotation", "description": "Tool to fetch a single screen annotation. Use when you know the screen_id and annotation_id and need the detailed annotation data." }, { "slug": "ZEPLIN_SCREEN_ANNOTATIONS_LIST", "name": "List Screen Annotations", "description": "Tool to list annotations for a Zeplin screen. Use when you have the screen_id and need its annotations." }, { "slug": "ZEPLIN_SCREEN_ANNOTATIONS_UPDATE", "name": "Update Screen Annotation", "description": "Tool to update a screen annotation's content, position, or type. Use after confirming screen_id and annotation_id." }, { "slug": "ZEPLIN_SCREEN_COMPONENTS_LIST", "name": "List Screen Components", "description": "Tool to list components in a Zeplin screen. Use when you have the screen_id and need to retrieve UI components in a specific screen." }, { "slug": "ZEPLIN_SCREEN_SECTION_GET", "name": "Get Screen Section", "description": "Tool to get a single screen section. Use when you need to fetch detailed information of a screen section by its ID after confirming the project and section IDs." }, { "slug": "ZEPLIN_SCREEN_SECTIONS_LIST", "name": "List Screen Sections", "description": "Tool to list screen sections in a Zeplin project. Use when you need a paginated list of screen sections after confirming the project ID." }, { "slug": "ZEPLIN_SCREEN_VERSION_GET", "name": "Get Screen Version", "description": "Tool to retrieve a specific screen version. Use after specifying both screen_id and version_id when you need detailed snapshot metadata." }, { "slug": "ZEPLIN_SCREEN_VERSIONS_CREATE", "name": "Create Screen Version", "description": "Tool to create a new version of a screen. Use when uploading a new design snapshot (PNG or JPEG image) as a screen version. Requires a valid project_id, screen_id, and an image file. Optionally include a commit_message." }, { "slug": "ZEPLIN_SCREEN_VERSIONS_LIST", "name": "List Screen Versions", "description": "Tool to list all versions of a screen. Use when you need to enumerate past screen snapshots after obtaining a screen ID." }, { "slug": "ZEPLIN_STYLEGUIDE_COLOR_CREATE", "name": "Create Styleguide Color", "description": "Tool to create a new styleguide color. Use after obtaining the styleguide ID to define custom color tokens." }, { "slug": "ZEPLIN_STYLEGUIDE_COLORS_LIST", "name": "List Styleguide Colors", "description": "Tool to list colors in a Zeplin styleguide. Use when you need to fetch defined color tokens after obtaining the styleguide ID." }, { "slug": "ZEPLIN_STYLEGUIDE_COLOR_UPDATE", "name": "Update Styleguide Color", "description": "Tool to update a color in a Zeplin styleguide. Use after obtaining the styleguide and color IDs." }, { "slug": "ZEPLIN_STYLEGUIDE_TEXT_STYLES_LIST", "name": "List Styleguide Text Styles", "description": "Tool to list text styles in a Zeplin styleguide. Use when you need to fetch defined typography tokens after obtaining the styleguide ID." }, { "slug": "ZEPLIN_STYLEGUIDE_TEXT_STYLE_UPDATE", "name": "Update Styleguide Text Style", "description": "Tool to update a text style in a Zeplin styleguide. Use when you need to modify typography settings of an existing text style after confirming the styleguide and text style IDs." }, { "slug": "ZEPLIN_USERS_GET_PERSONAL_PROJECTS", "name": "List Personal Projects", "description": "Tool to list personal projects. Use when you need to fetch all projects in the current user's personal workspace after authentication." } ], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zeplin_oauth2", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "" } ] }, "connected_account_initiation": { "required": [], "optional": [] } } }, { "mode": "API_KEY", "name": "zeplin_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Personal Access Token", "type": "string", "description": "Your Zeplin Personal Access Token. Generate it from your Zeplin profile under the Developer tab.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zerion_api_mcp_and_cli", "name": "Zerion Api Mcp And Cli", "logo": "https://logos.composio.dev/api/zerion_api_mcp_and_cli", "description": "Web3 wallet data API supporting 38+ blockchains including EVM chains and Solana. Access portfolio data, token balances, transactions, and NFTs with HTTP Basic Authentication.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zerion_api_mcp_and_cli_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "Your Zerion API key from dashboard.zerion.io", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zerobounce", "name": "Zerobounce", "logo": "https://logos.composio.dev/api/zerobounce", "description": "ZeroBounce is an email validation and deliverability platform that helps businesses improve email marketing performance by identifying and removing invalid or risky email addresses.", "category": "email", "authSchemes": [ "API_KEY" ], "toolCount": 20, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZEROBOUNCE_ACTIVITY_DATA", "name": "Get Activity Data", "description": "Tool to get activity data (opens, clicks, etc.) for a given email. Use after confirming the email address to gauge engagement recency." }, { "slug": "ZEROBOUNCE_AI_SCORING_SINGLE", "name": "AI Scoring Single Email", "description": "Tool to score a single email address using ZeroBounce AI. Use when you need real-time email lead quality feedback before outreach. Example prompt: \"Score the email mark@gmail.com.\"" }, { "slug": "ZEROBOUNCE_ALLOW_BLOCK_LIST", "name": "Allow or Block List", "description": "Tool to manage allowlist and blocklist for email validation. Use when you need to programmatically add or modify custom filters before validating emails." }, { "slug": "ZEROBOUNCE_BATCH_VALIDATE_EMAILS", "name": "Batch Validate Emails", "description": "Tool to validate a batch of email addresses in real time. Use when you need to validate up to 200 emails at once with optional activity data." }, { "slug": "ZEROBOUNCE_DELETE_AI_SCORING_FILE", "name": "Delete AI Scoring File", "description": "Tool to remove a completed AI scoring file from ZeroBounce servers. Use when the file status is 'Complete' and you need to remove it." }, { "slug": "ZEROBOUNCE_DELETE_FILE", "name": "Delete file", "description": "Tool to delete a file that was submitted for bulk validation. Use when file status is 'Complete'." }, { "slug": "ZEROBOUNCE_DOMAIN_SEARCH_FILE_STATUS", "name": "Domain Search File Status", "description": "Tool to get the processing status of a file submitted for bulk domain search. Use after submitting the file to poll status." }, { "slug": "ZEROBOUNCE_DOMAIN_SEARCH_GET_FILE", "name": "Domain Search Get File", "description": "Tool to download the results file for a completed bulk domain search job. Use when you have the file_id and the job is complete." }, { "slug": "ZEROBOUNCE_DOMAIN_SEARCH_SEND_FILE", "name": "Domain Search Send File", "description": "Tool to upload a file for bulk domain search. Use when you have many domains in a CSV/TXT and need to lookup their details in bulk." }, { "slug": "ZEROBOUNCE_DOMAIN_SEARCH_SINGLE", "name": "Domain Search Single", "description": "Tool to identify common email address formats for a given domain. Use when you need to guess email patterns for a company based on its domain." }, { "slug": "ZEROBOUNCE_EMAIL_FINDER_DELETE_FILE", "name": "Delete Email Finder File", "description": "Tool to delete a file that was submitted for bulk email finding. Use when the file processing status is 'Complete' and you need to remove it." }, { "slug": "ZEROBOUNCE_EMAIL_FINDER_FILE_STATUS", "name": "Email Finder File Status", "description": "Tool to get the processing status of a file submitted for bulk email finding. Use when you need to poll the progress of a bulk email-finder file upload." }, { "slug": "ZEROBOUNCE_EMAIL_FINDER_SEND_FILE", "name": "Email Finder Send File", "description": "Tool to upload a file for bulk email finding. Use when you have lists of names and domains to find emails in bulk via CSV/TXT upload." }, { "slug": "ZEROBOUNCE_GET_API_USAGE", "name": "Get API Usage", "description": "Tool to retrieve API usage statistics for a given period. Use when you need usage metrics between two dates." }, { "slug": "ZEROBOUNCE_GET_CREDIT_BALANCE", "name": "Get Credit Balance", "description": "Tool to retrieve your current ZeroBounce email validation credit balance. Use when you need to monitor remaining credits to avoid service interruptions." }, { "slug": "ZEROBOUNCE_GET_EMAIL_FINDER_FILE", "name": "Get Email Finder File", "description": "Tool to download the results file for a completed bulk email finder job. Use when you have the file_id and the job is complete." }, { "slug": "ZEROBOUNCE_LIST_EVALUATOR", "name": "List Evaluator", "description": "Tool to evaluate the quality of an email list. Use when you have a list of emails and need a quick health check before full validation." }, { "slug": "ZEROBOUNCE_LIST_FILTERS", "name": "List Filters", "description": "Tool to retrieve all email addresses and domains in your allowlist and blocklist filters. Use when you need to view or audit current filter rules before validation." }, { "slug": "ZEROBOUNCE_SEND_FILE", "name": "Send File", "description": "Tool to upload a file for bulk email validation. Use when you need to validate large lists of emails via CSV or TXT file." }, { "slug": "ZEROBOUNCE_VALIDATE_EMAIL", "name": "Validate Email", "description": "Tool to validate a single email address in real time. Use when you need to confirm deliverability and domain details before sending emails. Each call consumes API credits; set `credits_info: true` to include remaining balance in the response and monitor before credits are exhausted." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zerobounce_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "full", "displayName": "Base URL", "type": "string", "description": "The base URL for the ZeroBounce API.", "required": true, "default": "https://api.zerobounce.net/v2" }, { "name": "generic_api_key", "displayName": "ZeroBounce API Key", "type": "string", "description": "Your API Key, found in your ZeroBounce account under API Keys & Info.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zip_archive", "name": "Zip Archive", "logo": "https://logos.composio.dev/api/zip_archive", "description": "Compress your files with the ZIP Archive API.", "category": "developer tools", "authSchemes": [ "API_KEY" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zip_archive_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Secret", "type": "string", "description": "Sign in and copy your secret directly from your dashboard at https://archiveapi.com/account/", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zip1_mcp", "name": "Zip MCP", "logo": "https://zip1.io/logo.png", "description": "Zip is a tool for shortening URLs", "category": null, "authSchemes": [ "NO_AUTH" ], "toolCount": 0, "triggerCount": 0, "version": "20260619_02", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "NO_AUTH", "name": "ZIP_NO_AUTH", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [], "optional": [] } } } ] }, { "slug": "zixflow", "name": "Zixflow", "logo": "https://logos.composio.dev/api/zixflow", "description": "AI-CRM and Messaging Across SMS, Email, and WhatsApp", "category": "crm", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZIXFLOW_CREATE_ATTRIBUTE", "name": "Create Attribute", "description": "Tool to create a custom attribute for a Zixflow collection or list. Use when you need to add new fields to track specific data types (text, number, email, etc.). Attributes define the structure of your data. Common use cases: adding custom fields for contacts, creating status trackers, adding reference fields between collections." }, { "slug": "ZIXFLOW_GET_CAMPAIGN_REPORT_WHATSAPP", "name": "Get WhatsApp Campaign Report", "description": "Tool to retrieve WhatsApp campaign message report. Use when you need to check the delivery status and details of a WhatsApp message sent via campaign." }, { "slug": "ZIXFLOW_GET_EMAIL_REPORT", "name": "Get Email Report", "description": "Tool to retrieve email message delivery report from Zixflow. Use when you need to check the delivery status of a sent campaign email. The report includes delivery status (SENT, OPENED, CLICKED, BOUNCE, COMPLAINT, UNSUBSCRIBED), recipient information, and timestamps. Requires the message ID obtained when sending the campaign." }, { "slug": "ZIXFLOW_GET_SMS_REPORT", "name": "Get SMS Report", "description": "Tool to retrieve SMS message delivery report from Zixflow. Use when you need to check the delivery status, destination, and other details of a sent SMS campaign message." }, { "slug": "ZIXFLOW_GET_WHATSAPP_TEMPLATE_VARIABLES", "name": "Get WhatsApp Template Variables", "description": "Tool to retrieve template variable details for a WhatsApp template. Use when you need to understand what variables a specific WhatsApp template expects before sending a message." }, { "slug": "ZIXFLOW_LIST_ATTRIBUTES_OPTIONS", "name": "List Attribute Options", "description": "Tool to retrieve the list of options for select/multiselect attributes. Use when you need to get available options for a specific attribute in a collection or list." }, { "slug": "ZIXFLOW_LIST_ATTRIBUTES_STATUS", "name": "List Attribute Status Options", "description": "Tool to retrieve the list of options for status attributes in Zixflow. Use when you need to fetch available status configurations for a specific attribute within a collection or list." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zixflow_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "API Key", "type": "string", "description": "To get your API Key, sign in and click the workspace drop down on the top right, and go to \"Settings\" > \"Developer\" > \"API Keys\". Click \"Create an API\" to generate your token.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zoho_cliq", "name": "Zoho Cliq", "logo": "https://logos.composio.dev/api/zoho_cliq", "description": "Team communication and collaboration platform by Zoho with channels, bots, and integrations", "category": "communication", "authSchemes": [ "OAUTH2" ], "toolCount": 0, "triggerCount": 0, "version": "20260703_00", "tools": [], "triggers": [], "authConfigDetails": [ { "mode": "OAUTH2", "name": "zoho_cliq_oauth", "fields": { "auth_config_creation": { "required": [ { "name": "client_id", "displayName": "Client id", "type": "string", "description": "Client id of the app", "required": true, "default": null }, { "name": "client_secret", "displayName": "Client secret", "type": "string", "description": "Client secret of the app", "required": true, "default": null } ], "optional": [ { "name": "oauth_redirect_uri", "displayName": "Redirect URI", "type": "string", "description": "Add this Redirect URL to your app's OAuth allow list.", "required": false, "default": "https://staging-backend.composio.dev/api/v1/auth-apps/add" }, { "name": "scopes", "displayName": "Scopes", "type": "string", "description": "Scopes to request from the user, comma separated", "required": false, "default": "ZohoCliq.Channels.READ,ZohoCliq.Channels.CREATE,ZohoCliq.Channels.UPDATE,ZohoCliq.Channels.DELETE,ZohoCliq.Messages.READ,ZohoCliq.Messages.CREATE,ZohoCliq.Users.READ,ZohoCliq.Teams.READ" } ] }, "connected_account_initiation": { "required": [ { "name": "suffix.one", "displayName": "Domain", "type": "string", "description": "Zoho data center domain (e.g., com, eu, in, au, cn, jp, sa, uk, ca)", "required": true, "default": "com" } ], "optional": [] } } } ] }, { "slug": "zulip", "name": "Zulip", "logo": "https://logos.composio.dev/api/zulip", "description": "Chat for distributed teams. Zulip combines the immediacy of real-time chat with an email threading model.", "category": "team chat", "authSchemes": [ "BASIC" ], "toolCount": 111, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZULIP_ADD_ALERT_WORDS", "name": "Add Alert Words", "description": "Tool to add alert words to the current user's configuration. Use when you need to configure words that trigger notifications for the user. Alert words are case insensitive and duplicates are automatically ignored." }, { "slug": "ZULIP_ADD_APNS_TOKEN", "name": "Add APNs Device Token", "description": "Tool to add an APNs (Apple Push Notification service) device token to Zulip. Use when registering an iOS device for push notifications." }, { "slug": "ZULIP_ADD_DEFAULT_STREAM", "name": "Add Default Stream", "description": "Tool to add a channel as a default stream in Zulip. Use when you want to configure a channel to be automatically subscribed for all new users joining the organization." }, { "slug": "ZULIP_ADD_LINKIFIER", "name": "Add Linkifier", "description": "Tool to add a linkifier to a Zulip realm. Use when you need to automatically convert text patterns (like issue numbers or ticket IDs) into clickable links in messages." }, { "slug": "ZULIP_ADD_NAVIGATION_VIEW", "name": "Add Navigation View", "description": "Tool to add a navigation view in Zulip. Use when you need to create a custom navigation view or configure a built-in view for display in the sidebar." }, { "slug": "ZULIP_ADD_REACTION", "name": "Add Reaction", "description": "Tool to add an emoji reaction to a Zulip message. Use when you want to react to a message with an emoji." }, { "slug": "ZULIP_ARCHIVE_STREAM", "name": "Archive Channel", "description": "Tool to archive a channel in Zulip. Use when you need to permanently archive a channel by its ID." }, { "slug": "ZULIP_CHECK_MESSAGES_MATCH_NARROW", "name": "Check Messages Match Narrow", "description": "Tool to check if specific messages match a narrow filter. Use when you need to determine whether messages satisfy complex search criteria that the client cannot evaluate locally." }, { "slug": "ZULIP_CREATE_BIG_BLUE_BUTTON_VIDEO_CALL", "name": "Create BigBlueButton video call", "description": "Tool to create a BigBlueButton video call in Zulip. Use when you need to generate a video conference link for team meetings or discussions." }, { "slug": "ZULIP_CREATE_CHANNEL", "name": "Create Channel", "description": "Tool to create a new channel in Zulip. Use when you need to set up a new communication channel with specified subscribers. Channels organize conversations by topic within Zulip." }, { "slug": "ZULIP_CREATE_CHANNEL_FOLDER", "name": "Create Channel Folder", "description": "Tool to create a new channel folder in Zulip. Use when you need to organize channels into folders for better management." }, { "slug": "ZULIP_CREATE_CUSTOM_PROFILE_FIELD", "name": "Create custom profile field", "description": "Tool to create a custom profile field in Zulip. Use when you need to add custom user profile fields for organization members." }, { "slug": "ZULIP_CREATE_DRAFTS", "name": "Create Drafts", "description": "Tool to create one or more draft messages in Zulip. Use when you need to save message drafts for later editing or sending." }, { "slug": "ZULIP_CREATE_INVITE_LINK", "name": "Create reusable invitation link", "description": "Tool to create a reusable invitation link for the Zulip organization. Use when you need to generate an invite link that can be shared with multiple users to join the organization." }, { "slug": "ZULIP_CREATE_MESSAGE_REMINDER", "name": "Create Message Reminder", "description": "Tool to create a message reminder in Zulip. Use when you need to set up a reminder for a specific message that will be sent at a scheduled time via the Notification Bot." }, { "slug": "ZULIP_CREATE_SAVED_SNIPPET", "name": "Create Saved Snippet", "description": "Tool to create a saved snippet in Zulip. Use when you need to save reusable text content that can be quickly inserted into messages." }, { "slug": "ZULIP_CREATE_SCHEDULED_MESSAGE", "name": "Create Scheduled Message", "description": "Tool to create a scheduled message in Zulip. Use when you need to schedule a message to be sent at a future time to channels or direct messages." }, { "slug": "ZULIP_DELETE_DRAFT", "name": "Delete Draft", "description": "Tool to delete a draft in Zulip. Use when you need to remove a saved draft message." }, { "slug": "ZULIP_DELETE_MESSAGE", "name": "Delete Message", "description": "Tool to delete a message in Zulip. Use when you need to remove a message from a stream or direct message conversation." }, { "slug": "ZULIP_DELETE_QUEUE", "name": "Delete Event Queue", "description": "Tool to delete an event queue previously registered via POST /api/v1/register. Use when you need to clean up a queue that is no longer needed." }, { "slug": "ZULIP_DELETE_REMINDER", "name": "Delete Reminder", "description": "Tool to delete a reminder from Zulip. Use when you need to remove a scheduled reminder by its ID." }, { "slug": "ZULIP_DELETE_SAVED_SNIPPET", "name": "Delete Saved Snippet", "description": "Tool to delete a saved snippet by its ID. Use when you need to remove a snippet from saved snippets." }, { "slug": "ZULIP_DELETE_SCHEDULED_MESSAGE", "name": "Delete Scheduled Message", "description": "Tool to delete a scheduled message in Zulip. Use when you need to cancel a message that was scheduled to be sent later. This is permanent and cannot be undone." }, { "slug": "ZULIP_DELETE_TOPIC", "name": "Delete Topic", "description": "Tool to delete a topic from a Zulip channel/stream. Use when you need to permanently remove a topic and all its messages from a specific stream. Note: This operation is irreversible and will delete all messages in the topic." }, { "slug": "ZULIP_EDIT_DRAFT", "name": "Edit Draft", "description": "Tool to edit an existing draft message in Zulip. Use when you need to update the content, topic, recipients, or other properties of a saved draft." }, { "slug": "ZULIP_EDIT_NAVIGATION_VIEW", "name": "Edit Navigation View", "description": "Tool to update a navigation view in Zulip. Use when you need to pin/unpin a view or rename a custom navigation view." }, { "slug": "ZULIP_EDIT_SAVED_SNIPPET", "name": "Edit Saved Snippet", "description": "Tool to edit a saved snippet by updating its title and/or content. Use when you need to modify an existing snippet." }, { "slug": "ZULIP_EXPORT_REALM", "name": "Export Realm", "description": "Tool to create a Zulip realm data export. Use when you need to export organization data. The export is created asynchronously and can be downloaded later." }, { "slug": "ZULIP_GET_ALERT_WORDS", "name": "Get alert words", "description": "Tool to retrieve all configured alert words for the authenticated user. Use when you need to check which words or phrases trigger notifications." }, { "slug": "ZULIP_GET_ANOTHER_USER_PRESENCE", "name": "Get Another User Presence", "description": "Tool to get the presence status for a specific user in Zulip. Use when you need to check if a user is currently active, idle, or offline. This endpoint is designed for embedding presence data in external applications. If the timestamp is more than a few minutes old, the user should be considered offline." }, { "slug": "ZULIP_GET_ATTACHMENTS", "name": "Get Attachments", "description": "Tool to retrieve metadata on files uploaded by the requesting user. Use when you need to list all attachments with their details including file names, sizes, and associated messages." }, { "slug": "ZULIP_GET_CHANNEL_FOLDERS", "name": "Get Channel Folders", "description": "Tool to retrieve all channel folders in the organization, sorted by display order. Use when you need to list or organize channel folders." }, { "slug": "ZULIP_GET_CUSTOM_EMOJI", "name": "Get custom emoji", "description": "Tool to retrieve all custom emoji configured in the Zulip realm. Use when you need to get the list of available custom emoji including their names, IDs, and source URLs." }, { "slug": "ZULIP_GET_CUSTOM_PROFILE_FIELDS", "name": "Get custom profile fields", "description": "Tool to get all custom profile fields configured for the Zulip realm. Use when you need to retrieve the list of custom profile fields including their types, names, and configuration." }, { "slug": "ZULIP_GET_DRAFTS", "name": "Get drafts", "description": "Tool to fetch all drafts for the authenticated user. Use when you need to retrieve all saved draft messages, which are returned in order of last edit time (most recent first)." }, { "slug": "ZULIP_GET_EVENTS", "name": "Get Events", "description": "Tool to get events from a Zulip event queue. Use when you need to retrieve new events after registering a queue." }, { "slug": "ZULIP_GET_FILE_TEMPORARY_URL", "name": "Get file temporary URL", "description": "Tool to get a public temporary URL for an uploaded file in Zulip. Use when you need to access or share a file that was previously uploaded to the Zulip organization." }, { "slug": "ZULIP_GET_ICON", "name": "Get realm icon", "description": "Tool to retrieve the URL of the Zulip realm's icon. Use when you need to get the organization's icon image URL." }, { "slug": "ZULIP_GET_INVITES", "name": "Get all invitations", "description": "Tool to retrieve all unexpired invitations for the Zulip organization. Use when you need to list all active email invitations and reusable invitation links that can be managed by the user." }, { "slug": "ZULIP_GET_IS_USER_GROUP_MEMBER", "name": "Get user group membership status", "description": "Tool to check if a user is a member of a specific user group. Use when you need to verify user group membership status." }, { "slug": "ZULIP_GET_LINKIFIERS", "name": "Get linkifiers", "description": "Tool to retrieve all configured linkifiers in the Zulip realm. Use when you need to get the list of regex patterns that are automatically converted to links in messages and topics." }, { "slug": "ZULIP_GET_MESSAGE", "name": "Get message", "description": "Tool to fetch a single message by ID from Zulip. Use when you need to retrieve the full details of a specific message including its content, sender, reactions, and edit history." }, { "slug": "ZULIP_GET_MESSAGE_HISTORY", "name": "Get Message History", "description": "Tool to fetch the complete edit history of a Zulip message. Use when you need to see all changes made to a message over time, including content edits, topic changes, and channel moves. Returns snapshots in chronological order from oldest to newest." }, { "slug": "ZULIP_GET_MESSAGES", "name": "Get Messages", "description": "Tool to fetch messages from Zulip. Use when you need to retrieve messages using various filters like anchor position, narrow queries, or specific message IDs. Supports pagination via num_before/num_after parameters." }, { "slug": "ZULIP_GET_NAVIGATION_VIEWS", "name": "Get Navigation Views", "description": "Tool to fetch all navigation views for the authenticated user. Use when you need to retrieve all configured custom navigation views, which are displayed in the sidebar or 'More Views' menu." }, { "slug": "ZULIP_GET_OWN_USER", "name": "Get own user", "description": "Tool to retrieve the profile information for the authenticated user. Use when you need to get details about the current user such as email, full name, role, timezone, or other profile data." }, { "slug": "ZULIP_GET_READ_RECEIPTS", "name": "Get Read Receipts", "description": "Tool to retrieve read receipts for a message in Zulip. Use when you need to see which users have read a specific message." }, { "slug": "ZULIP_GET_REALM_EXPORT_CONSENTS", "name": "Get realm export consents", "description": "Tool to retrieve data export consent state for users in a realm. Use when you need to check which users have consented for their private data to be exported by organization administrators." }, { "slug": "ZULIP_GET_REALM_EXPORTS", "name": "Get all data exports", "description": "Tool to retrieve all data exports for the Zulip organization. Use when you need to list all data exports, including their status (pending, completed, or failed) and download URLs. Requires organization administrator access." }, { "slug": "ZULIP_GET_REALM_PRESENCE", "name": "Get Realm Presence", "description": "Tool to get the presence status for all users in the Zulip realm. Use when you need to check which users are currently active, idle, or offline across the entire organization. If a user's timestamp is more than a few minutes old, they should be considered offline." }, { "slug": "ZULIP_GET_REMINDERS", "name": "Get reminders", "description": "Tool to fetch all undelivered reminders for the authenticated user. Use when you need to retrieve scheduled reminders, which are returned in order of scheduled delivery time. This feature is available in Zulip 11.0+ (feature level 399)." }, { "slug": "ZULIP_GET_SAVED_SNIPPETS", "name": "Get Saved Snippets", "description": "Tool to fetch all saved snippets for the authenticated user. Use when you need to retrieve reusable text content that can be quickly inserted into messages." }, { "slug": "ZULIP_GET_SCHEDULED_MESSAGES", "name": "Get Scheduled Messages", "description": "Tool to fetch all scheduled messages for the authenticated user. Use when you need to retrieve all undelivered scheduled messages, which are returned in order of scheduled delivery time (earliest first)." }, { "slug": "ZULIP_GET_SERVER_SETTINGS", "name": "Get server settings", "description": "Tool to retrieve server configuration and available authentication methods. Use when you need to discover server capabilities, version information, or available login options before authentication." }, { "slug": "ZULIP_GET_STREAM_BY_ID", "name": "Get Channel by ID", "description": "Tool to get detailed information about a Zulip channel by its ID. Use when you need to retrieve complete channel details including permissions, settings, and metadata." }, { "slug": "ZULIP_GET_STREAM_EMAIL_ADDRESS", "name": "Get channel email address", "description": "Tool to retrieve the email address for a Zulip channel. Use when you need to get the email address that can be used to send messages to a specific channel via email." }, { "slug": "ZULIP_GET_STREAM_ID", "name": "Get Channel ID", "description": "Tool to get a channel's unique ID by its name. Use when you need to retrieve the numeric identifier for a channel given its human-readable name." }, { "slug": "ZULIP_GET_STREAMS", "name": "Get All Channels", "description": "Tool to retrieve all channels (streams) in Zulip that match specified filters. Use when you need to list available channels, discover public channels, or find channels the user has access to. Returns detailed metadata for each channel including permissions and settings." }, { "slug": "ZULIP_GET_STREAM_TOPICS", "name": "Get stream topics", "description": "Tool to retrieve all topics in a Zulip channel. Use when you need to get the list of discussion topics within a specific channel, along with the maximum message ID for each topic." }, { "slug": "ZULIP_GET_SUBSCRIBERS", "name": "Get Channel Subscribers", "description": "Tool to get all subscribers of a Zulip channel. Use when you need to retrieve the list of user IDs subscribed to a specific channel." }, { "slug": "ZULIP_GET_SUBSCRIPTIONS", "name": "Get Subscriptions", "description": "Tool to retrieve all channels (streams) the authenticated user is subscribed to. Use when you need to list subscribed channels with their details including names, IDs, and optionally subscriber lists." }, { "slug": "ZULIP_GET_SUBSCRIPTION_STATUS", "name": "Get subscription status", "description": "Tool to check whether a specific user is subscribed to a particular channel (stream). Use when you need to verify subscription status of a user for a given channel." }, { "slug": "ZULIP_GET_USER", "name": "Get user by email", "description": "Tool to fetch a user by email address from Zulip. Use when you need to retrieve detailed information about a specific user including their profile, role, and status." }, { "slug": "ZULIP_GET_USER_CHANNELS", "name": "Get user channels", "description": "Tool to retrieve the list of channel IDs that a specific user is subscribed to. Use when you need to get a user's subscribed channels." }, { "slug": "ZULIP_GET_USER_GROUP_MEMBERS", "name": "Get user group members", "description": "Tool to retrieve all members of a specific user group. Use when you need to get the list of user IDs who are members of a user group." }, { "slug": "ZULIP_GET_USER_GROUPS", "name": "Get user groups", "description": "Tool to retrieve all user groups in the Zulip organization. Use when you need to list user groups with their members, subgroups, and permission settings." }, { "slug": "ZULIP_GET_USER_GROUP_SUBGROUPS", "name": "Get user group subgroups", "description": "Tool to retrieve subgroups of a user group. Use when you need to get the list of subgroup IDs for a specific user group." }, { "slug": "ZULIP_GET_USER_STATUS", "name": "Get user status", "description": "Tool to retrieve the status currently set by a user in the Zulip organization. Use when you need to get a user's custom status message, emoji, or away status. Available in Zulip 9.0+ (feature level 262)." }, { "slug": "ZULIP_MARK_ALL_AS_READ", "name": "Mark All Messages as Read", "description": "Tool to mark all messages as read for the authenticated user. Use when you need to clear all unread message indicators. Note: This endpoint is deprecated." }, { "slug": "ZULIP_MARK_STREAM_AS_READ", "name": "Mark Stream as Read", "description": "Tool to mark all messages in a Zulip channel as read. Use when you need to mark all unread messages in a specific channel as read." }, { "slug": "ZULIP_MARK_TOPIC_AS_READ", "name": "Mark Topic as Read", "description": "Tool to mark all messages in a topic as read. Use when you need to clear unread status for all messages within a specific topic in a channel." }, { "slug": "ZULIP_MUTE_TOPIC", "name": "Mute Topic", "description": "Tool to mute or unmute a topic in a Zulip channel. Use when you want to control topic notifications by muting or unmuting specific topics." }, { "slug": "ZULIP_REACTIVATE_USER", "name": "Reactivate User", "description": "Tool to reactivate a deactivated user in Zulip. Use when you need to restore access for a previously deactivated user account." }, { "slug": "ZULIP_REGISTER_PUSH_DEVICE", "name": "Register Push Device", "description": "Tool to register an E2EE (end-to-end encrypted) push device for mobile notifications. Use when setting up push notifications with encrypted payloads for mobile clients." }, { "slug": "ZULIP_REGISTER_QUEUE", "name": "Register Event Queue", "description": "Tool to register an event queue for receiving Zulip events. Use when you need to set up an event queue to receive real-time updates about messages, subscriptions, and other realm events." }, { "slug": "ZULIP_REMOVE_ALERT_WORDS", "name": "Remove Alert Words", "description": "Tool to remove alert words from the current user's configuration. Use when you need to delete words that trigger notifications for the user. Words not in the user's set are automatically ignored." }, { "slug": "ZULIP_REMOVE_ATTACHMENT", "name": "Remove Attachment", "description": "Tool to delete an attachment in Zulip. Use when you need to remove a file attachment that was previously uploaded." }, { "slug": "ZULIP_REMOVE_CODE_PLAYGROUND", "name": "Remove Code Playground", "description": "Tool to remove a code playground from a Zulip realm. Use when you need to delete an existing code playground configuration." }, { "slug": "ZULIP_REMOVE_DEFAULT_STREAM", "name": "Remove Default Stream", "description": "Tool to remove a channel from default streams in Zulip. Use when you want to stop a channel from being automatically subscribed to all new users joining the organization." }, { "slug": "ZULIP_REMOVE_FCM_TOKEN", "name": "Remove FCM Token", "description": "Tool to remove an FCM registration token for Android push notifications. Use when unregistering a device from push notifications in Zulip. Note: This endpoint is deprecated." }, { "slug": "ZULIP_REMOVE_LINKIFIER", "name": "Remove Linkifier", "description": "Tool to remove a linkifier from a Zulip realm. Use when you need to delete an existing linkifier that automatically converts text patterns into clickable links." }, { "slug": "ZULIP_REMOVE_NAVIGATION_VIEW", "name": "Remove Navigation View", "description": "Tool to remove a navigation view in Zulip. Use when you need to delete a custom navigation view from the sidebar." }, { "slug": "ZULIP_REMOVE_REACTION", "name": "Remove Reaction", "description": "Tool to remove an emoji reaction from a Zulip message. Use when you want to remove a previously added reaction from a message." }, { "slug": "ZULIP_RENDER_MESSAGE", "name": "Render Message", "description": "Tool to render a message to HTML in Zulip. Use when you need to preview how a message will appear when rendered from Markdown to HTML format." }, { "slug": "ZULIP_REORDER_CHANNEL_FOLDERS", "name": "Reorder Channel Folders", "description": "Tool to reorder channel folders in Zulip. Use when you need to change the display order of channel folders. The order list must include all organization channel folder IDs." }, { "slug": "ZULIP_REORDER_CUSTOM_PROFILE_FIELDS", "name": "Reorder Custom Profile Fields", "description": "Tool to reorder custom profile fields in Zulip. Use when you need to change the display order of custom profile fields in user profiles and settings. The order list must include all custom profile field IDs." }, { "slug": "ZULIP_REORDER_LINKIFIERS", "name": "Reorder Linkifiers", "description": "Tool to reorder linkifiers in Zulip. Use when you need to change the processing order of linkifiers in a realm. The order matters when patterns overlap." }, { "slug": "ZULIP_REVOKE_EMAIL_INVITE", "name": "Revoke Email Invitation", "description": "Tool to revoke an email invitation in Zulip. Use when you need to cancel a pending invitation that has not yet been accepted." }, { "slug": "ZULIP_REVOKE_INVITE_LINK", "name": "Revoke reusable invitation link", "description": "Tool to revoke a reusable invitation link for the Zulip organization. Use when you need to invalidate an invite link that was previously created." }, { "slug": "ZULIP_SEND_MESSAGE", "name": "Send Message", "description": "Tool to send a message in Zulip. Use when you need to send a direct message to users or post a message to a channel/stream." }, { "slug": "ZULIP_SEND_TEST_NOTIFICATION", "name": "Send Test Notification", "description": "Tool to send a test notification to mobile device(s). Use when testing push notifications for mobile clients. Note: This endpoint is deprecated." }, { "slug": "ZULIP_SET_TYPING_STATUS", "name": "Set Typing Status", "description": "Tool to set typing status in Zulip. Use when you want to indicate that a user is typing or has stopped typing a message." }, { "slug": "ZULIP_SET_TYPING_STATUS_FOR_MESSAGE_EDIT", "name": "Set Typing Status for Message Edit", "description": "Tool to set typing status when editing a message in Zulip. Use when you want to indicate that a user is editing or has stopped editing a specific message." }, { "slug": "ZULIP_SUBSCRIBE_TO_CHANNEL", "name": "Subscribe to Channel", "description": "Tool to subscribe users to one or more Zulip channels. Use when you need to add users to channels. If a channel doesn't exist, it will be created automatically. By default, subscribes the authenticated user." }, { "slug": "ZULIP_TEST_WELCOME_BOT_CUSTOM_MESSAGE", "name": "Test Welcome Bot Custom Message", "description": "Tool to test welcome bot custom message in Zulip. Use when you need to preview how a custom welcome message will appear before setting it as the default for new users." }, { "slug": "ZULIP_UNSUBSCRIBE_FROM_CHANNEL", "name": "Unsubscribe From Channel", "description": "Tool to unsubscribe from one or more channels (streams) in Zulip. Use when you need to remove users from channels or unsubscribe the authenticated user from channels." }, { "slug": "ZULIP_UPDATE_CHANNEL_FOLDER", "name": "Update Channel Folder", "description": "Tool to update a channel folder in Zulip. Use when you need to modify the name, description, or archive status of an existing channel folder." }, { "slug": "ZULIP_UPDATE_LINKIFIER", "name": "Update Linkifier", "description": "Tool to update a linkifier in a Zulip realm. Use when you need to modify the pattern or URL template of an existing linkifier that automatically converts text patterns into clickable links." }, { "slug": "ZULIP_UPDATE_MESSAGE", "name": "Update Message", "description": "Tool to edit a message in Zulip. Use when you need to update message content, move messages to a different topic or channel, or resolve topics." }, { "slug": "ZULIP_UPDATE_MESSAGE_FLAGS", "name": "Update Message Flags", "description": "Tool to update personal message flags in Zulip. Use when you need to mark messages as read/unread, starred/unstarred, or modify other personal message flags. This allows bulk operations on multiple messages at once." }, { "slug": "ZULIP_UPDATE_MESSAGE_FLAGS_FOR_NARROW", "name": "Update Message Flags for Narrow", "description": "Tool to update personal message flags (e.g., read, starred) for messages matching a narrow filter. Use when you need to mark messages as read/unread or starred/unstarred within a specific conversation, channel, or search criteria." }, { "slug": "ZULIP_UPDATE_REALM_USER_SETTINGS_DEFAULTS", "name": "Update Realm User Settings Defaults", "description": "Tool to update realm-level defaults of user settings in Zulip. Use when you need to configure organization-wide default settings for new users. At least one setting parameter must be provided." }, { "slug": "ZULIP_UPDATE_SCHEDULED_MESSAGE", "name": "Update Scheduled Message", "description": "Tool to edit a scheduled message in Zulip. Use when you need to modify the content, delivery time, or target audience of a message scheduled to be sent later." }, { "slug": "ZULIP_UPDATE_SETTINGS", "name": "Update Settings", "description": "Tool to update user settings in Zulip. Use when you need to modify user preferences including display settings, notification preferences, privacy settings, and web/desktop app behavior. Can update multiple settings in a single request." }, { "slug": "ZULIP_UPDATE_STATUS", "name": "Update Status", "description": "Tool to update your status in Zulip. Use when you need to set or clear your custom status message, emoji, or away status." }, { "slug": "ZULIP_UPDATE_STATUS_FOR_USER", "name": "Update status for user", "description": "Tool to update the status for a specific user in the Zulip organization. Use when you need to set or clear a user's custom status message and emoji." }, { "slug": "ZULIP_UPDATE_STREAM", "name": "Update Channel", "description": "Tool to update a channel in Zulip. Use when you need to modify channel properties such as name, description, permissions, or settings. All parameters are optional - provide only the fields you want to update." }, { "slug": "ZULIP_UPDATE_SUBSCRIPTIONS", "name": "Update Subscriptions", "description": "Tool to update channel subscriptions by subscribing to new channels or unsubscribing from existing ones. Use when you need to add the user to channels (with optional channel creation) or remove them from channels." }, { "slug": "ZULIP_UPDATE_SUBSCRIPTION_SETTINGS", "name": "Update Subscription Settings", "description": "Tool to update the user's personal settings for channels they are subscribed to. Use when you need to modify channel properties like muting, color, pinning, or per-channel notification settings." }, { "slug": "ZULIP_UPDATE_USER", "name": "Update user by email", "description": "Tool to update a user by email address in Zulip. Use when you need to modify user properties such as full name, email, role, or custom profile fields." }, { "slug": "ZULIP_UPDATE_USER_TOPIC", "name": "Update User Topic", "description": "Tool to update personal preferences for a topic in a Zulip channel. Use when you want to control topic visibility by muting, unmuting, or following specific topics." } ], "triggers": [], "authConfigDetails": [ { "mode": "BASIC", "name": "zulip_basic", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "subdomain", "displayName": "Domain", "type": "string", "description": "Your Zulip domain (e.g., \"your-org\" for your-org.zulipchat.com)", "required": true, "default": null }, { "name": "username", "displayName": "Email", "type": "string", "description": "Your Zulip email address", "required": true, "default": null }, { "name": "password", "displayName": "API Key", "type": "string", "description": "Your Zulip API key from Personal Settings > Account & Privacy", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zylvie", "name": "Zylvie", "logo": "https://logos.composio.dev/api/zylvie", "description": "High-converting cart software for solopreneurs to sell digital products and subscriptions.", "category": "ecommerce", "authSchemes": [ "API_KEY" ], "toolCount": 4, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZYLVIE_CREATE_PRODUCT", "name": "Create Product", "description": "Tool to create a new product. Use when you need to add a product with detailed custom options in Zylvie platform." }, { "slug": "ZYLVIE_GET_AUTHENTICATING_USER", "name": "Get Authenticating User", "description": "Tool to retrieve information about the currently authenticated user. Use when you have a valid Bearer token and need to fetch the authenticated user's profile." }, { "slug": "ZYLVIE_SUBSCRIBE_WEBHOOK", "name": "Subscribe Webhook", "description": "Tool to subscribe to a webhook event by creating a workflow object. Use when you need to set up webhook notifications for sale, lead, affiliate, subscription, or cancel events. If a workflow with the same webhook URL already exists, returns the pre-existing workflow object." }, { "slug": "ZYLVIE_UNSUBSCRIBE_WEBHOOK", "name": "Unsubscribe Webhook", "description": "Tool to unsubscribe from a webhook by deleting the workflow object associated with the specified webhook URL. Use after confirming the webhook URL to remove." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zylvie_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Zylvie API Key", "type": "string", "description": "Your Zylvie API key, found under your Settings > API page.", "required": true, "default": null } ], "optional": [] } } } ] }, { "slug": "zyte_api", "name": "Zyte Api", "logo": "https://logos.composio.dev/api/zyte_api", "description": "Zyte API is a web scraping solution that automates data extraction from websites, handling challenges like bans and dynamic content.", "category": "ai web scraping", "authSchemes": [ "API_KEY" ], "toolCount": 7, "triggerCount": 0, "version": "20260703_00", "tools": [ { "slug": "ZYTE_API_ACTIVE_SCHEDULED_MAINTENANCES", "name": "Fetch Active Scheduled Maintenances", "description": "Retrieves currently active scheduled maintenances that are in 'In Progress' or 'Verifying' state. Use this to check for ongoing maintenance events that may affect Zyte API availability. Returns an empty list if no maintenances are currently active." }, { "slug": "ZYTE_API_COMPONENTS", "name": "Zyte API Components", "description": "Retrieves all Zyte service components with their current operational status. Returns component details including status (operational, degraded_performance, partial_outage, major_outage), descriptions, groupings, and metadata. Useful for monitoring service health and identifying issues. No parameters required - provides a real-time snapshot of all Zyte infrastructure components." }, { "slug": "ZYTE_API_EXTRACT_ZYTE_API", "name": "Extract Data from URL", "description": "Tool to extract data from URLs using Zyte API's HTTP, browser, and AI-powered extraction capabilities. Use when you need to scrape web pages, extract structured data (products, articles, jobs, etc.), capture screenshots, or perform browser automation. Supports geolocation targeting and custom extraction schemas." }, { "slug": "ZYTE_API_GET_SCHEDULED_MAINTENANCES", "name": "Get scheduled maintenances", "description": "Tool to get the 50 most recent scheduled maintenances (upcoming and completed) from Zyte status API. Use after confirming you need the latest maintenance schedule for monitoring." }, { "slug": "ZYTE_API_GET_UNRESOLVED_INCIDENTS", "name": "Zyte API: Get Unresolved Incidents", "description": "Tool to retrieve unresolved incidents from Zyte status API. Use when you need to check currently open incidents." }, { "slug": "ZYTE_API_LIST_INCIDENTS", "name": "List Zyte API status incidents", "description": "Retrieves the 50 most recent incidents from the Zyte API status page, including both resolved and unresolved incidents. Use this tool to check current API health, review incident history, or get detailed information about service disruptions affecting Zyte services." }, { "slug": "ZYTE_API_STATUS", "name": "Get Zyte API Status Rollup", "description": "Retrieves comprehensive operational status for all Zyte services. Returns current status of components (Zyte API, Smart Proxy Manager, Scrapy Cloud, etc.), active incidents, and scheduled maintenance windows. Use this to check service health before making API calls or to diagnose issues." } ], "triggers": [], "authConfigDetails": [ { "mode": "API_KEY", "name": "zyte_api_api_key", "fields": { "auth_config_creation": { "required": [], "optional": [] }, "connected_account_initiation": { "required": [ { "name": "generic_api_key", "displayName": "Zyte API Key", "type": "string", "description": "Your Zyte API key used for authentication. Find it at https://app.zyte.com/o/zyte-api/api-access.", "required": true, "default": null } ], "optional": [] } } } ] } ]